diff --git a/packages/common/env/src/global.ts b/packages/common/env/src/global.ts index 40fbf74ee7..1c0394df20 100644 --- a/packages/common/env/src/global.ts +++ b/packages/common/env/src/global.ts @@ -29,6 +29,7 @@ export const runtimeFlagsSchema = z.object({ enableEnhanceShareMode: z.boolean(), enablePayment: z.boolean(), enablePageHistory: z.boolean(), + enableJournal: z.boolean(), // this is for the electron app serverUrlPrefix: z.string(), enableMoveDatabase: z.boolean(), diff --git a/packages/frontend/core/.webpack/runtime-config.ts b/packages/frontend/core/.webpack/runtime-config.ts index 405996e39f..a6ac29cd59 100644 --- a/packages/frontend/core/.webpack/runtime-config.ts +++ b/packages/frontend/core/.webpack/runtime-config.ts @@ -30,6 +30,7 @@ export function getRuntimeConfig(buildFlags: BuildFlags): RuntimeConfig { enableEnhanceShareMode: false, enablePayment: true, enablePageHistory: true, + enableJournal: false, serverUrlPrefix: 'https://app.affine.pro', editorFlags, appVersion: packageJson.version, @@ -40,6 +41,7 @@ export function getRuntimeConfig(buildFlags: BuildFlags): RuntimeConfig { return { ...this.stable, enablePageHistory: true, + enableJournal: false, serverUrlPrefix: 'https://insider.affine.pro', appBuildType: 'beta' as const, }; @@ -70,6 +72,7 @@ export function getRuntimeConfig(buildFlags: BuildFlags): RuntimeConfig { enableEnhanceShareMode: false, enablePayment: true, enablePageHistory: true, + enableJournal: true, serverUrlPrefix: 'https://affine.fail', editorFlags, appVersion: packageJson.version, @@ -133,6 +136,11 @@ export function getRuntimeConfig(buildFlags: BuildFlags): RuntimeConfig { : buildFlags.mode === 'development' ? true : currentBuildPreset.enablePageHistory, + enableJournal: process.env.ENABLE_JOURNAL + ? process.env.ENABLE_JOURNAL === 'true' + : buildFlags.mode === 'development' + ? true + : currentBuildPreset.enableJournal, }; if (buildFlags.mode === 'development') { diff --git a/packages/frontend/core/src/hooks/use-journal.ts b/packages/frontend/core/src/hooks/use-journal.ts index f864100867..949f8c5dcf 100644 --- a/packages/frontend/core/src/hooks/use-journal.ts +++ b/packages/frontend/core/src/hooks/use-journal.ts @@ -11,6 +11,7 @@ type MaybeDate = Date | string | number; export const JOURNAL_DATE_FORMAT = 'YYYY-MM-DD'; function isPageJournal(pageMeta?: PageMeta) { + if (!runtimeConfig.enableJournal) return false; return !!(pageMeta && pageMeta.title.match(/^\d{4}-\d{2}-\d{2}$/)); }