mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-07-15 00:56:26 +08:00
refactor(core): add version in worker url (#11614)
Co-authored-by: renovate <29139614+renovate@users.noreply.github.com>
This commit is contained in:
Vendored
+3
-5
@@ -1,7 +1,5 @@
|
||||
export function getWorkerUrl(name: string) {
|
||||
if (BUILD_CONFIG.debug && !name.endsWith('.worker.js')) {
|
||||
throw new Error(`worker should be named with '.worker.js', get ${name}`);
|
||||
}
|
||||
|
||||
return environment.workerPath + name + '?v=' + BUILD_CONFIG.appVersion;
|
||||
return (
|
||||
environment.workerPath + `${name}-${BUILD_CONFIG.appVersion}.worker.js`
|
||||
);
|
||||
}
|
||||
|
||||
@@ -48,7 +48,7 @@ import { AffineTheme } from './plugins/affine-theme';
|
||||
import { AIButton } from './plugins/ai-button';
|
||||
|
||||
const storeManagerClient = new StoreManagerClient(
|
||||
new OpClient(new Worker(getWorkerUrl('nbstore.worker.js')))
|
||||
new OpClient(new Worker(getWorkerUrl('nbstore')))
|
||||
);
|
||||
window.addEventListener('beforeunload', () => {
|
||||
storeManagerClient.dispose();
|
||||
|
||||
@@ -407,7 +407,7 @@ export function App() {
|
||||
}
|
||||
|
||||
function createStoreManagerClient() {
|
||||
const worker = new Worker(getWorkerUrl('nbstore.worker.js'));
|
||||
const worker = new Worker(getWorkerUrl('nbstore'));
|
||||
const { port1: nativeDBApiChannelServer, port2: nativeDBApiChannelClient } =
|
||||
new MessageChannel();
|
||||
AsyncCall<typeof NbStoreNativeDBApis>(NbStoreNativeDBApis, {
|
||||
|
||||
@@ -23,7 +23,7 @@ import { RouterProvider } from 'react-router-dom';
|
||||
|
||||
let storeManagerClient: StoreManagerClient;
|
||||
|
||||
const workerUrl = getWorkerUrl('nbstore.worker.js');
|
||||
const workerUrl = getWorkerUrl('nbstore');
|
||||
if (window.SharedWorker) {
|
||||
const worker = new SharedWorker(workerUrl, { name: 'affine-shared-worker' });
|
||||
storeManagerClient = new StoreManagerClient(new OpClient(worker.port));
|
||||
|
||||
@@ -24,13 +24,15 @@ const cache = createEmotionCache();
|
||||
|
||||
let storeManagerClient: StoreManagerClient;
|
||||
|
||||
const workerUrl = getWorkerUrl('nbstore.worker.js');
|
||||
const workerUrl = getWorkerUrl('nbstore');
|
||||
|
||||
if (
|
||||
window.SharedWorker &&
|
||||
localStorage.getItem('disableSharedWorker') !== 'true'
|
||||
) {
|
||||
const worker = new SharedWorker(workerUrl);
|
||||
const worker = new SharedWorker(workerUrl, {
|
||||
name: 'affine-shared-worker',
|
||||
});
|
||||
storeManagerClient = new StoreManagerClient(new OpClient(worker.port));
|
||||
} else {
|
||||
const worker = new Worker(workerUrl);
|
||||
|
||||
@@ -8,7 +8,7 @@ import {
|
||||
} from '@blocksuite/affine/gfx/turbo-renderer';
|
||||
|
||||
function createPainterWorker() {
|
||||
const worker = new Worker(getWorkerUrl('turbo-painter.worker.js'));
|
||||
const worker = new Worker(getWorkerUrl('turbo-painter'));
|
||||
return worker;
|
||||
}
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@ export class PDFRenderer extends OpClient<ClientOps> {
|
||||
private readonly worker: Worker;
|
||||
|
||||
constructor() {
|
||||
const worker = new Worker(getWorkerUrl('pdf.worker.js'));
|
||||
const worker = new Worker(getWorkerUrl('pdf'));
|
||||
super(worker);
|
||||
|
||||
this.worker = worker;
|
||||
|
||||
@@ -10,7 +10,7 @@ export function getWorkspaceProfileWorker() {
|
||||
return worker;
|
||||
}
|
||||
|
||||
const rawWorker = new Worker(getWorkerUrl('workspace-profile.worker.js'));
|
||||
const rawWorker = new Worker(getWorkerUrl('workspace-profile'));
|
||||
|
||||
worker = new OpClient<WorkerOps>(rawWorker);
|
||||
return worker;
|
||||
|
||||
@@ -405,10 +405,7 @@ export function createWorkerTargetConfig(
|
||||
pkg: Package,
|
||||
entry: string
|
||||
): Omit<webpack.Configuration, 'name'> & { name: string } {
|
||||
const workerName = path.basename(entry).replace(/\.([^.]+)$/, '');
|
||||
if (!workerName.endsWith('.worker')) {
|
||||
throw new Error('Worker name must end with `.worker.[ext]`');
|
||||
}
|
||||
const workerName = path.basename(entry).replace(/\.worker\.ts$/, '');
|
||||
const buildConfig = getBuildConfigFromEnv(pkg);
|
||||
|
||||
return {
|
||||
@@ -423,7 +420,7 @@ export function createWorkerTargetConfig(
|
||||
[workerName]: entry,
|
||||
},
|
||||
output: {
|
||||
filename: 'js/[name].js',
|
||||
filename: `js/${workerName}-${buildConfig.appVersion}.worker.js`,
|
||||
path: pkg.distPath.value,
|
||||
clean: false,
|
||||
globalObject: 'globalThis',
|
||||
|
||||
Reference in New Issue
Block a user