fixing errors

This commit is contained in:
Sriram Hariharan
2023-09-17 14:55:33 -05:00
parent 4ae2966e98
commit e199a0b766
13 changed files with 26 additions and 51 deletions

14
package-lock.json generated
View File

@@ -9,7 +9,7 @@
"version": "0.0.0", "version": "0.0.0",
"dependencies": { "dependencies": {
"@types/sql.js": "^1.4.4", "@types/sql.js": "^1.4.4",
"chrome-extension-toolkit": "^0.0.48", "chrome-extension-toolkit": "^0.0.49",
"classnames": "^2.3.2", "classnames": "^2.3.2",
"clean-webpack-plugin": "^4.0.0", "clean-webpack-plugin": "^4.0.0",
"highcharts": "^10.3.3", "highcharts": "^10.3.3",
@@ -4815,9 +4815,9 @@
} }
}, },
"node_modules/chrome-extension-toolkit": { "node_modules/chrome-extension-toolkit": {
"version": "0.0.48", "version": "0.0.49",
"resolved": "https://registry.npmjs.org/chrome-extension-toolkit/-/chrome-extension-toolkit-0.0.48.tgz", "resolved": "https://registry.npmjs.org/chrome-extension-toolkit/-/chrome-extension-toolkit-0.0.49.tgz",
"integrity": "sha512-maShnkzOxMOWcsKaG2dFzpRwabDGBoUrkjHGwEEjYbgnPPmqTYKQAywibUAdGC4gpJL1iJyOJN+sUuha3DsloQ==", "integrity": "sha512-cXtbYXuGuDdozB3q9xbX/bIsr/z/9LYQbekjkLG6OA647Xn/m39DLNxY/YPN0k+pxPlfUm7bjxav8SC4lJTFUQ==",
"dependencies": { "dependencies": {
"react": "^18.2.0", "react": "^18.2.0",
"react-dom": "^18.2.0" "react-dom": "^18.2.0"
@@ -21249,9 +21249,9 @@
} }
}, },
"chrome-extension-toolkit": { "chrome-extension-toolkit": {
"version": "0.0.48", "version": "0.0.49",
"resolved": "https://registry.npmjs.org/chrome-extension-toolkit/-/chrome-extension-toolkit-0.0.48.tgz", "resolved": "https://registry.npmjs.org/chrome-extension-toolkit/-/chrome-extension-toolkit-0.0.49.tgz",
"integrity": "sha512-maShnkzOxMOWcsKaG2dFzpRwabDGBoUrkjHGwEEjYbgnPPmqTYKQAywibUAdGC4gpJL1iJyOJN+sUuha3DsloQ==", "integrity": "sha512-cXtbYXuGuDdozB3q9xbX/bIsr/z/9LYQbekjkLG6OA647Xn/m39DLNxY/YPN0k+pxPlfUm7bjxav8SC4lJTFUQ==",
"requires": { "requires": {
"react": "^18.2.0", "react": "^18.2.0",
"react-dom": "^18.2.0" "react-dom": "^18.2.0"

View File

@@ -14,7 +14,7 @@
}, },
"dependencies": { "dependencies": {
"@types/sql.js": "^1.4.4", "@types/sql.js": "^1.4.4",
"chrome-extension-toolkit": "^0.0.48", "chrome-extension-toolkit": "^0.0.49",
"classnames": "^2.3.2", "classnames": "^2.3.2",
"clean-webpack-plugin": "^4.0.0", "clean-webpack-plugin": "^4.0.0",
"highcharts": "^10.3.3", "highcharts": "^10.3.3",

View File

@@ -1,11 +1,8 @@
import { MessageListener } from 'chrome-extension-toolkit'; import { MessageListener } from 'chrome-extension-toolkit';
import { BACKGROUND_MESSAGES } from 'src/shared/messages'; import { BACKGROUND_MESSAGES } from 'src/shared/messages';
import { generateRandomId } from 'src/shared/util/random';
import onInstall from './events/onInstall'; import onInstall from './events/onInstall';
import onNewChromeSession from './events/onNewChromeSession';
import onServiceWorkerAlive from './events/onServiceWorkerAlive'; import onServiceWorkerAlive from './events/onServiceWorkerAlive';
import onUpdate from './events/onUpdate'; import onUpdate from './events/onUpdate';
import { sessionStore } from '../shared/storage/SessionStore';
import browserActionHandler from './handler/browserActionHandler'; import browserActionHandler from './handler/browserActionHandler';
import hotReloadingHandler from './handler/hotReloadingHandler'; import hotReloadingHandler from './handler/hotReloadingHandler';
import tabManagementHandler from './handler/tabManagementHandler'; import tabManagementHandler from './handler/tabManagementHandler';
@@ -39,10 +36,3 @@ const messageListener = new MessageListener<BACKGROUND_MESSAGES>({
}); });
messageListener.listen(); messageListener.listen();
sessionStore.get('chromeSessionId').then(async chromeSessionId => {
if (!chromeSessionId) {
await sessionStore.set('chromeSessionId', generateRandomId(10));
onNewChromeSession();
}
});

View File

@@ -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 * Called when the extension is first installed or synced onto a new machine
*/ */
export default async function onInstall() { export default async function onInstall() {
await extensionStore.set('version', chrome.runtime.getManifest().version); await ExtensionStore.set('version', chrome.runtime.getManifest().version);
} }

View File

@@ -1,4 +0,0 @@
/**
* This function is called when the user's browser opens for the first time
*/
export default function onNewChromeSession() {}

View File

@@ -1,11 +1,11 @@
import { hotReloadTab } from 'src/background/util/hotReloadTab'; 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) * Called when the extension is updated (or when the extension is reloaded in development mode)
*/ */
export default async function onUpdate() { export default async function onUpdate() {
await extensionStore.set({ await ExtensionStore.set({
version: chrome.runtime.getManifest().version, version: chrome.runtime.getManifest().version,
lastUpdate: Date.now(), lastUpdate: Date.now(),
}); });

View File

@@ -1,17 +1,17 @@
import HotReloadingMessages from 'src/shared/messages/HotReloadingMessages'; import HotReloadingMessages from 'src/shared/messages/HotReloadingMessages';
import { MessageHandler } from 'chrome-extension-toolkit'; import { MessageHandler } from 'chrome-extension-toolkit';
import { devStore } from 'src/shared/storage/DevStore'; import { DevStore } from 'src/shared/storage/DevStore';
const hotReloadingHandler: MessageHandler<HotReloadingMessages> = { const hotReloadingHandler: MessageHandler<HotReloadingMessages> = {
async reloadExtension({ sendResponse }) { async reloadExtension({ sendResponse }) {
const { isExtensionReloading, isTabReloading } = await devStore.get(['isExtensionReloading', 'isTabReloading']); const { isExtensionReloading, isTabReloading } = await DevStore.get(['isExtensionReloading', 'isTabReloading']);
if (!isExtensionReloading) return sendResponse(); if (!isExtensionReloading) return sendResponse();
if (isTabReloading) { if (isTabReloading) {
const tabs = await chrome.tabs.query({ active: true, currentWindow: true }); const tabs = await chrome.tabs.query({ active: true, currentWindow: true });
const tabToReload = tabs[0]; const tabToReload = tabs[0];
await devStore.set('reloadTabId', tabToReload?.id); await DevStore.set('reloadTabId', tabToReload?.id);
} }
chrome.runtime.reload(); chrome.runtime.reload();
}, },

View File

@@ -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) * 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 * @returns a promise that resolves when the tab is reloaded
*/ */
export async function hotReloadTab(): Promise<void> { export async function hotReloadTab(): Promise<void> {
const { isTabReloading, reloadTabId } = await devStore.get(['isTabReloading', 'reloadTabId']); const { isTabReloading, reloadTabId } = await DevStore.get(['isTabReloading', 'reloadTabId']);
if (!isTabReloading || !reloadTabId) return; if (!isTabReloading || !reloadTabId) return;

View File

@@ -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 * Open the debug tab as the first tab
*/ */
export async function openDebugTab() { export async function openDebugTab() {
if (process.env.NODE_ENV === 'development') { 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); const isAlreadyOpen = await (await chrome.tabs.query({})).some(tab => tab.id === debugTabId);
if (isAlreadyOpen) return; if (isAlreadyOpen) return;
@@ -17,6 +17,6 @@ export async function openDebugTab() {
index: 0, index: 0,
}); });
await devStore.set('debugTabId', tab.id); await DevStore.set('debugTabId', tab.id);
} }
} }

View File

@@ -1,7 +1,7 @@
import './hotReload'; import './hotReload';
import React, { useEffect } from 'react'; import React, { useEffect } from 'react';
import { render } from 'react-dom'; import { render } from 'react-dom';
import { devStore } from 'src/shared/storage/DevStore'; import { DevStore } from 'src/shared/storage/DevStore';
const manifest = chrome.runtime.getManifest(); const manifest = chrome.runtime.getManifest();
@@ -69,7 +69,7 @@ function DevDashboard() {
useEffect(() => { useEffect(() => {
const onVisibilityChange = () => { const onVisibilityChange = () => {
devStore.set('wasDebugTabVisible', document.visibilityState === 'visible'); DevStore.set('wasDebugTabVisible', document.visibilityState === 'visible');
}; };
document.addEventListener('visibilitychange', onVisibilityChange); document.addEventListener('visibilitychange', onVisibilityChange);
return () => { return () => {

View File

@@ -16,7 +16,7 @@ interface IDevStore {
reloadTabId?: number; reloadTabId?: number;
} }
export const devStore = createLocalStore<IDevStore>({ export const DevStore = createLocalStore<IDevStore>({
debugTabId: undefined, debugTabId: undefined,
isTabReloading: true, isTabReloading: true,
wasDebugTabVisible: false, wasDebugTabVisible: false,
@@ -24,4 +24,4 @@ export const devStore = createLocalStore<IDevStore>({
reloadTabId: undefined, reloadTabId: undefined,
}); });
debugStore({ devStore }); debugStore({ devStore: DevStore });

View File

@@ -10,9 +10,9 @@ interface IExtensionStore {
lastUpdate: number; lastUpdate: number;
} }
export const extensionStore = createLocalStore<IExtensionStore>({ export const ExtensionStore = createLocalStore<IExtensionStore>({
version: chrome.runtime.getManifest().version, version: chrome.runtime.getManifest().version,
lastUpdate: Date.now(), lastUpdate: Date.now(),
}); });
debugStore({ extensionStore }); debugStore({ ExtensionStore });

View File

@@ -1,11 +0,0 @@
import { createSessionStore, debugStore } from 'chrome-extension-toolkit';
interface ISessionStore {
chromeSessionId?: string;
}
export const sessionStore = createSessionStore<ISessionStore>({
chromeSessionId: undefined,
});
debugStore({ sessionStore });