diff --git a/package-lock.json b/package-lock.json index eb614f0c..f86a388a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "dependencies": { "@types/sql.js": "^1.4.4", - "chrome-extension-toolkit": "^0.0.48", + "chrome-extension-toolkit": "^0.0.49", "classnames": "^2.3.2", "clean-webpack-plugin": "^4.0.0", "highcharts": "^10.3.3", @@ -4815,9 +4815,9 @@ } }, "node_modules/chrome-extension-toolkit": { - "version": "0.0.48", - "resolved": "https://registry.npmjs.org/chrome-extension-toolkit/-/chrome-extension-toolkit-0.0.48.tgz", - "integrity": "sha512-maShnkzOxMOWcsKaG2dFzpRwabDGBoUrkjHGwEEjYbgnPPmqTYKQAywibUAdGC4gpJL1iJyOJN+sUuha3DsloQ==", + "version": "0.0.49", + "resolved": "https://registry.npmjs.org/chrome-extension-toolkit/-/chrome-extension-toolkit-0.0.49.tgz", + "integrity": "sha512-cXtbYXuGuDdozB3q9xbX/bIsr/z/9LYQbekjkLG6OA647Xn/m39DLNxY/YPN0k+pxPlfUm7bjxav8SC4lJTFUQ==", "dependencies": { "react": "^18.2.0", "react-dom": "^18.2.0" @@ -21249,9 +21249,9 @@ } }, "chrome-extension-toolkit": { - "version": "0.0.48", - "resolved": "https://registry.npmjs.org/chrome-extension-toolkit/-/chrome-extension-toolkit-0.0.48.tgz", - "integrity": "sha512-maShnkzOxMOWcsKaG2dFzpRwabDGBoUrkjHGwEEjYbgnPPmqTYKQAywibUAdGC4gpJL1iJyOJN+sUuha3DsloQ==", + "version": "0.0.49", + "resolved": "https://registry.npmjs.org/chrome-extension-toolkit/-/chrome-extension-toolkit-0.0.49.tgz", + "integrity": "sha512-cXtbYXuGuDdozB3q9xbX/bIsr/z/9LYQbekjkLG6OA647Xn/m39DLNxY/YPN0k+pxPlfUm7bjxav8SC4lJTFUQ==", "requires": { "react": "^18.2.0", "react-dom": "^18.2.0" diff --git a/package.json b/package.json index 09b77943..82b75bba 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,7 @@ }, "dependencies": { "@types/sql.js": "^1.4.4", - "chrome-extension-toolkit": "^0.0.48", + "chrome-extension-toolkit": "^0.0.49", "classnames": "^2.3.2", "clean-webpack-plugin": "^4.0.0", "highcharts": "^10.3.3", diff --git a/src/background/background.ts b/src/background/background.ts index 37e15c63..01a3b006 100644 --- a/src/background/background.ts +++ b/src/background/background.ts @@ -1,11 +1,8 @@ import { MessageListener } from 'chrome-extension-toolkit'; import { BACKGROUND_MESSAGES } from 'src/shared/messages'; -import { generateRandomId } from 'src/shared/util/random'; import onInstall from './events/onInstall'; -import onNewChromeSession from './events/onNewChromeSession'; import onServiceWorkerAlive from './events/onServiceWorkerAlive'; import onUpdate from './events/onUpdate'; -import { sessionStore } from '../shared/storage/SessionStore'; import browserActionHandler from './handler/browserActionHandler'; import hotReloadingHandler from './handler/hotReloadingHandler'; import tabManagementHandler from './handler/tabManagementHandler'; @@ -39,10 +36,3 @@ const messageListener = new MessageListener({ }); messageListener.listen(); - -sessionStore.get('chromeSessionId').then(async chromeSessionId => { - if (!chromeSessionId) { - await sessionStore.set('chromeSessionId', generateRandomId(10)); - onNewChromeSession(); - } -}); diff --git a/src/background/events/onInstall.ts b/src/background/events/onInstall.ts index c8abd92e..788d84ba 100644 --- a/src/background/events/onInstall.ts +++ b/src/background/events/onInstall.ts @@ -1,8 +1,8 @@ -import { extensionStore } from '../../shared/storage/ExtensionStore'; +import { ExtensionStore } from '../../shared/storage/ExtensionStore'; /** * Called when the extension is first installed or synced onto a new machine */ export default async function onInstall() { - await extensionStore.set('version', chrome.runtime.getManifest().version); + await ExtensionStore.set('version', chrome.runtime.getManifest().version); } diff --git a/src/background/events/onNewChromeSession.ts b/src/background/events/onNewChromeSession.ts deleted file mode 100644 index 7a4642a8..00000000 --- a/src/background/events/onNewChromeSession.ts +++ /dev/null @@ -1,4 +0,0 @@ -/** - * This function is called when the user's browser opens for the first time - */ -export default function onNewChromeSession() {} diff --git a/src/background/events/onUpdate.ts b/src/background/events/onUpdate.ts index 62a9cb13..24793b3c 100644 --- a/src/background/events/onUpdate.ts +++ b/src/background/events/onUpdate.ts @@ -1,11 +1,11 @@ import { hotReloadTab } from 'src/background/util/hotReloadTab'; -import { extensionStore } from '../../shared/storage/ExtensionStore'; +import { ExtensionStore } from '../../shared/storage/ExtensionStore'; /** * Called when the extension is updated (or when the extension is reloaded in development mode) */ export default async function onUpdate() { - await extensionStore.set({ + await ExtensionStore.set({ version: chrome.runtime.getManifest().version, lastUpdate: Date.now(), }); diff --git a/src/background/handler/hotReloadingHandler.ts b/src/background/handler/hotReloadingHandler.ts index b71031ee..ce0ecdf1 100644 --- a/src/background/handler/hotReloadingHandler.ts +++ b/src/background/handler/hotReloadingHandler.ts @@ -1,17 +1,17 @@ import HotReloadingMessages from 'src/shared/messages/HotReloadingMessages'; import { MessageHandler } from 'chrome-extension-toolkit'; -import { devStore } from 'src/shared/storage/DevStore'; +import { DevStore } from 'src/shared/storage/DevStore'; const hotReloadingHandler: MessageHandler = { async reloadExtension({ sendResponse }) { - const { isExtensionReloading, isTabReloading } = await devStore.get(['isExtensionReloading', 'isTabReloading']); + const { isExtensionReloading, isTabReloading } = await DevStore.get(['isExtensionReloading', 'isTabReloading']); if (!isExtensionReloading) return sendResponse(); if (isTabReloading) { const tabs = await chrome.tabs.query({ active: true, currentWindow: true }); const tabToReload = tabs[0]; - await devStore.set('reloadTabId', tabToReload?.id); + await DevStore.set('reloadTabId', tabToReload?.id); } chrome.runtime.reload(); }, diff --git a/src/background/util/hotReloadTab.ts b/src/background/util/hotReloadTab.ts index d290accd..35936237 100644 --- a/src/background/util/hotReloadTab.ts +++ b/src/background/util/hotReloadTab.ts @@ -1,4 +1,4 @@ -import { devStore } from 'src/shared/storage/DevStore'; +import { DevStore } from 'src/shared/storage/DevStore'; /** * A list of websites that we don't want to reload when the extension reloads (becuase it'd be hella annoying lmao) @@ -24,7 +24,7 @@ const HOT_RELOADING_WHITELIST = [ * @returns a promise that resolves when the tab is reloaded */ export async function hotReloadTab(): Promise { - const { isTabReloading, reloadTabId } = await devStore.get(['isTabReloading', 'reloadTabId']); + const { isTabReloading, reloadTabId } = await DevStore.get(['isTabReloading', 'reloadTabId']); if (!isTabReloading || !reloadTabId) return; diff --git a/src/background/util/openDebugTab.ts b/src/background/util/openDebugTab.ts index 91f2aefc..a38c6108 100644 --- a/src/background/util/openDebugTab.ts +++ b/src/background/util/openDebugTab.ts @@ -1,11 +1,11 @@ -import { devStore } from 'src/shared/storage/DevStore'; +import { DevStore } from 'src/shared/storage/DevStore'; /** * Open the debug tab as the first tab */ export async function openDebugTab() { if (process.env.NODE_ENV === 'development') { - const { debugTabId, wasDebugTabVisible } = await devStore.get(['debugTabId', 'wasDebugTabVisible']); + const { debugTabId, wasDebugTabVisible } = await DevStore.get(['debugTabId', 'wasDebugTabVisible']); const isAlreadyOpen = await (await chrome.tabs.query({})).some(tab => tab.id === debugTabId); if (isAlreadyOpen) return; @@ -17,6 +17,6 @@ export async function openDebugTab() { index: 0, }); - await devStore.set('debugTabId', tab.id); + await DevStore.set('debugTabId', tab.id); } } diff --git a/src/debug/index.tsx b/src/debug/index.tsx index ea020c29..7865b29c 100644 --- a/src/debug/index.tsx +++ b/src/debug/index.tsx @@ -1,7 +1,7 @@ import './hotReload'; import React, { useEffect } from 'react'; import { render } from 'react-dom'; -import { devStore } from 'src/shared/storage/DevStore'; +import { DevStore } from 'src/shared/storage/DevStore'; const manifest = chrome.runtime.getManifest(); @@ -69,7 +69,7 @@ function DevDashboard() { useEffect(() => { const onVisibilityChange = () => { - devStore.set('wasDebugTabVisible', document.visibilityState === 'visible'); + DevStore.set('wasDebugTabVisible', document.visibilityState === 'visible'); }; document.addEventListener('visibilitychange', onVisibilityChange); return () => { diff --git a/src/shared/storage/DevStore.ts b/src/shared/storage/DevStore.ts index b982d2b6..1927add8 100644 --- a/src/shared/storage/DevStore.ts +++ b/src/shared/storage/DevStore.ts @@ -16,7 +16,7 @@ interface IDevStore { reloadTabId?: number; } -export const devStore = createLocalStore({ +export const DevStore = createLocalStore({ debugTabId: undefined, isTabReloading: true, wasDebugTabVisible: false, @@ -24,4 +24,4 @@ export const devStore = createLocalStore({ reloadTabId: undefined, }); -debugStore({ devStore }); +debugStore({ devStore: DevStore }); diff --git a/src/shared/storage/ExtensionStore.ts b/src/shared/storage/ExtensionStore.ts index 14b8ef8a..cd12660c 100644 --- a/src/shared/storage/ExtensionStore.ts +++ b/src/shared/storage/ExtensionStore.ts @@ -10,9 +10,9 @@ interface IExtensionStore { lastUpdate: number; } -export const extensionStore = createLocalStore({ +export const ExtensionStore = createLocalStore({ version: chrome.runtime.getManifest().version, lastUpdate: Date.now(), }); -debugStore({ extensionStore }); +debugStore({ ExtensionStore }); diff --git a/src/shared/storage/SessionStore.ts b/src/shared/storage/SessionStore.ts deleted file mode 100644 index 97e8a339..00000000 --- a/src/shared/storage/SessionStore.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { createSessionStore, debugStore } from 'chrome-extension-toolkit'; - -interface ISessionStore { - chromeSessionId?: string; -} - -export const sessionStore = createSessionStore({ - chromeSessionId: undefined, -}); - -debugStore({ sessionStore });