mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-02-13 04:48:53 +00:00
61 lines
1.4 KiB
TypeScript
61 lines
1.4 KiB
TypeScript
import getConfig from 'next/config';
|
|
|
|
import { isDev } from './env';
|
|
type Config = {
|
|
BUILD_DATE: string;
|
|
NODE_ENV: string;
|
|
PROJECT_NAME: string;
|
|
EDITOR_VERSION: string;
|
|
VERSION: string;
|
|
CI?: string;
|
|
COMMIT_HASH: string;
|
|
};
|
|
|
|
const nextConfig = getConfig();
|
|
const publicRuntimeConfig: Config = nextConfig.publicRuntimeConfig;
|
|
|
|
const printBuildInfo = () => {
|
|
if (isDev) {
|
|
return;
|
|
}
|
|
console.group('Build info');
|
|
console.log('Project:', publicRuntimeConfig.PROJECT_NAME);
|
|
console.log(
|
|
'Build date:',
|
|
publicRuntimeConfig.BUILD_DATE
|
|
? new Date(publicRuntimeConfig.BUILD_DATE).toLocaleString()
|
|
: 'Unknown'
|
|
);
|
|
console.log(
|
|
'Environment:',
|
|
`${publicRuntimeConfig.NODE_ENV}${publicRuntimeConfig.CI ? '(ci)' : ''}`
|
|
);
|
|
console.log('Editor Version:', publicRuntimeConfig.EDITOR_VERSION);
|
|
|
|
console.log('Version:', publicRuntimeConfig.VERSION);
|
|
console.log(
|
|
'AFFiNE is an open source project, you can view its source code on GitHub!'
|
|
);
|
|
console.log(
|
|
`https://github.com/toeverything/AFFiNE/tree/${publicRuntimeConfig.COMMIT_HASH}`
|
|
);
|
|
console.groupEnd();
|
|
};
|
|
|
|
function setWindowEditorVersion() {
|
|
globalThis.__editoVersion = publicRuntimeConfig.EDITOR_VERSION;
|
|
}
|
|
|
|
declare global {
|
|
// eslint-disable-next-line no-var
|
|
var __affineSetupEnv: boolean | undefined;
|
|
}
|
|
|
|
if (!globalThis.__affineSetupEnv) {
|
|
printBuildInfo();
|
|
setWindowEditorVersion();
|
|
globalThis.__affineSetupEnv = true;
|
|
}
|
|
|
|
export {};
|