fixing errors
This commit is contained in:
14
package-lock.json
generated
14
package-lock.json
generated
@@ -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"
|
||||||
|
|||||||
@@ -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",
|
||||||
|
|||||||
@@ -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();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|||||||
@@ -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);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +0,0 @@
|
|||||||
/**
|
|
||||||
* This function is called when the user's browser opens for the first time
|
|
||||||
*/
|
|
||||||
export default function onNewChromeSession() {}
|
|
||||||
@@ -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(),
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -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();
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|
||||||
|
|||||||
@@ -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);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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 () => {
|
||||||
|
|||||||
@@ -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 });
|
||||||
|
|||||||
@@ -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 });
|
||||||
|
|||||||
@@ -1,11 +0,0 @@
|
|||||||
import { createSessionStore, debugStore } from 'chrome-extension-toolkit';
|
|
||||||
|
|
||||||
interface ISessionStore {
|
|
||||||
chromeSessionId?: string;
|
|
||||||
}
|
|
||||||
|
|
||||||
export const sessionStore = createSessionStore<ISessionStore>({
|
|
||||||
chromeSessionId: undefined,
|
|
||||||
});
|
|
||||||
|
|
||||||
debugStore({ sessionStore });
|
|
||||||
Reference in New Issue
Block a user