23 lines
896 B
TypeScript
23 lines
896 B
TypeScript
// Cloudflare Worker entry point
|
|
// This file contains Worker-specific initialization and polyfills
|
|
|
|
// Initialize request-rewriter (sets up fetch wrapper with proper headers)
|
|
import '@/utils/request-rewriter';
|
|
|
|
// Polyfill MessagePort for undici compatibility
|
|
// undici uses MessagePort for type checking in webidl
|
|
if (globalThis.MessagePort === undefined) {
|
|
// @ts-expect-error Minimal polyfill for undici compatibility
|
|
globalThis.MessagePort = class MessagePort extends EventTarget {
|
|
onmessage: ((event: MessageEvent) => void) | null = null;
|
|
onmessageerror: ((event: MessageEvent) => void) | null = null;
|
|
start() {}
|
|
close() {}
|
|
postMessage(_message: unknown, _transfer?: Transferable[]) {}
|
|
};
|
|
}
|
|
|
|
// Import and re-export the main app
|
|
// Worker-specific module replacements are handled by tsdown aliases
|
|
export { default } from './app.worker';
|