diff --git a/build/prepare.js b/build/prepare.js
index a15453143..913f7efc5 100644
--- a/build/prepare.js
+++ b/build/prepare.js
@@ -8,8 +8,6 @@ if (process.env.npm_execpath?.includes('yarn')) {
}
}
-const dir = path.dirname(path.dirname(require.resolve('@types/node/package.json')));
-const types = fs.readdirSync(dir).filter((i) => !['sharedworker', 'serviceworker'].includes(i));
const withoutTypes = (data) => ({
...data,
compilerOptions: Object.fromEntries(Object.entries(data.compilerOptions).filter(([k]) => k !== 'types')),
@@ -29,7 +27,6 @@ const compilerOptionsBase = {
experimentalDecorators: true,
// emitDecoratorMetadata: true,
incremental: true,
- types,
};
const baseOutDir = path.resolve(__dirname, '../.cache/ts-out');
const config = {
@@ -95,7 +92,6 @@ const UIConfig = {
baseUrl: '.',
outDir: path.join(baseOutDir, 'ui'),
moduleResolution: 'node',
- types,
paths: {
'vj/*': [
'./packages/ui-default/*',
diff --git a/package.json b/package.json
index 90e507c2f..7325eb814 100644
--- a/package.json
+++ b/package.json
@@ -38,7 +38,6 @@
"@types/cross-spawn": "^6.0.6",
"@types/node": "^20.10.6",
"@types/semver": "^7.5.6",
- "@types/supertest": "^6.0.2",
"autocannon": "^7.14.0",
"cac": "^6.7.14",
"chai": "^4.3.10",
diff --git a/packages/hydrooj/src/service/server.ts b/packages/hydrooj/src/service/server.ts
index 30a70b126..d93f50a8d 100644
--- a/packages/hydrooj/src/service/server.ts
+++ b/packages/hydrooj/src/service/server.ts
@@ -243,7 +243,6 @@ async function handle(ctx: KoaContext, HandlerClass, checker) {
args, request, response, user, domain, UiContext,
} = ctx.HydroContext;
Object.assign(args, ctx.params);
- console.log(ctx.HydroContext);
const h = new HandlerClass(ctx, args, request, response, user, domain, UiContext);
ctx.handler = h;
try {
diff --git a/packages/ui-default/components/message/worker.ts b/packages/ui-default/components/message/worker.ts
index 17f80b465..79aef5b34 100644
--- a/packages/ui-default/components/message/worker.ts
+++ b/packages/ui-default/components/message/worker.ts
@@ -1,9 +1,9 @@
/* eslint-disable no-restricted-globals */
///
-///
-///
+///
import ReconnectingWebsocket from 'reconnecting-websocket';
import { FLAG_INFO } from 'vj/constant/message';
+declare const self: SharedWorkerGlobalScope;
console.log('SharedWorker init');
@@ -75,7 +75,7 @@ function initConn(path: string, port: MessagePort, cookie: any) {
};
}
-onconnect = function (e) { // eslint-disable-line no-undef
+self.onconnect = function (e) { // eslint-disable-line no-undef
const port = e.ports[0];
port.addEventListener('message', (msg: { data: RequestPayload }) => {
diff --git a/packages/ui-default/package.json b/packages/ui-default/package.json
index b2be65267..eb9710125 100644
--- a/packages/ui-default/package.json
+++ b/packages/ui-default/package.json
@@ -37,8 +37,6 @@
"@types/react": "^18.2.46",
"@types/react-dom": "^18.2.18",
"@types/redux-logger": "^3.0.12",
- "@types/serviceworker": "^0.0.82",
- "@types/sharedworker": "^0.0.111",
"@types/webpack-env": "^1.18.4",
"@vscode/codicons": "^0.0.35",
"ajv": "^8.12.0",
diff --git a/packages/ui-default/service-worker.ts b/packages/ui-default/service-worker.ts
index 6496556f3..514212c0b 100644
--- a/packages/ui-default/service-worker.ts
+++ b/packages/ui-default/service-worker.ts
@@ -1,8 +1,9 @@
-///
-///
-///
-/* global clients */
/* eslint-disable no-restricted-globals */
+///
+///
+export { }; // make it a module so that declare self works
+declare const self: ServiceWorkerGlobalScope;
+
const map = new Map();
function createStream(port) {
@@ -78,11 +79,11 @@ self.addEventListener('notificationclick', (event) => {
console.log('On notification click: ', event.notification.tag);
event.notification.close();
if (!event.notification.tag.startsWith('message-')) return;
- event.waitUntil(clients.matchAll({ type: 'window' }).then((clientList) => {
+ event.waitUntil(self.clients.matchAll({ type: 'window' }).then((clientList) => {
for (const client of clientList) {
if (client.url === '/home/messages' && 'focus' in client) return client.focus();
}
- if (clients.openWindow) clients.openWindow('/home/messages');
+ if (self.clients.openWindow) self.clients.openWindow('/home/messages');
return null;
}));
});
diff --git a/test/main.ts b/test/main.ts
index 4708c69fe..121719bea 100644
--- a/test/main.ts
+++ b/test/main.ts
@@ -13,7 +13,7 @@ const Root = {
};
describe('App', () => {
- let agent: supertest.SuperAgentTest;
+ let agent;
before(async () => {
const init = Date.now();
await new Promise((resolve) => {