diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 47dbab4b91ba2..15012b969fec1 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -88,6 +88,7 @@ jobs: BUILD_TYPE: ${{ github.event.inputs.flavor }} SHOULD_REPORT_TRACE: false PUBLIC_PATH: '/' + SELF_HOSTED: true - name: Download selfhost fonts run: node ./scripts/download-blocksuite-fonts.mjs - name: Upload core artifact diff --git a/packages/common/env/src/global.ts b/packages/common/env/src/global.ts index 3b829d0173921..68282751b21c0 100644 --- a/packages/common/env/src/global.ts +++ b/packages/common/env/src/global.ts @@ -45,6 +45,7 @@ export const runtimeFlagsSchema = z.object({ z.literal('internal'), z.literal('canary'), ]), + isSelfHosted: z.boolean().optional(), }); export type BlockSuiteFeatureFlags = z.infer; diff --git a/packages/frontend/core/.webpack/runtime-config.ts b/packages/frontend/core/.webpack/runtime-config.ts index 490db3130d8c4..a2f15f168d2cd 100644 --- a/packages/frontend/core/.webpack/runtime-config.ts +++ b/packages/frontend/core/.webpack/runtime-config.ts @@ -145,6 +145,7 @@ export function getRuntimeConfig(buildFlags: BuildFlags): RuntimeConfig { : buildFlags.mode === 'development' ? true : currentBuildPreset.allowLocalWorkspace, + isSelfHosted: process.env.SELF_HOSTED === 'true', }; const testEnvironmentPreset = { diff --git a/packages/frontend/core/src/components/blocksuite/block-suite-editor/specs.ts b/packages/frontend/core/src/components/blocksuite/block-suite-editor/specs.ts index c54b1a1321042..e3e683ec60270 100644 --- a/packages/frontend/core/src/components/blocksuite/block-suite-editor/specs.ts +++ b/packages/frontend/core/src/components/blocksuite/block-suite-editor/specs.ts @@ -21,8 +21,7 @@ class CustomAttachmentService extends AttachmentService { } function customLoadFonts(service: RootService): void { - const officialDomains = new Set(['app.affine.pro', 'affine.fail']); - if (!officialDomains.has(window.location.host)) { + if (runtimeConfig.isSelfHosted) { const fonts = CanvasTextFonts.map(font => ({ ...font, // self-hosted fonts are served from /assets