refactor: environment setup (#2898)

Co-authored-by: Simon He <57086651+Simon-He95@users.noreply.github.com>
This commit is contained in:
Alex Yang
2023-06-28 19:19:19 +08:00
parent be33cfd174
commit bff8ca6178
72 changed files with 255 additions and 242 deletions
@@ -5,7 +5,6 @@ import {
PageList,
PageListTrashView,
} from '@affine/component/page-list';
import { env } from '@affine/env';
import type { View } from '@affine/env/filter';
import { Trans } from '@affine/i18n';
import { useAFFiNEI18N } from '@affine/i18n/hooks';
@@ -56,8 +55,8 @@ const PageListEmpty = (props: {
New Page
</button>
);
if (env.isDesktop) {
const shortcut = env.isMacOs ? '⌘ + N' : 'Ctrl + N';
if (environment.isDesktop) {
const shortcut = environment.isMacOs ? '⌘ + N' : 'Ctrl + N';
return (
<Trans i18nKey="emptyAllPagesClient">
Click on the <CreateNewPageButton /> button Or press
@@ -1,5 +1,5 @@
import { DownloadTips } from '@affine/component/affine-banner';
import { env } from '@affine/env';
import { isDesktop } from '@affine/env/constant';
import { useAtom } from 'jotai';
import { useCallback } from 'react';
@@ -13,7 +13,7 @@ export const DownloadClientTip = () => {
setShowDownloadClientTips(false);
}, [setShowDownloadClientTips]);
if (!showDownloadClientTips || env.isDesktop) {
if (!showDownloadClientTips || isDesktop) {
return <></>;
}
return <DownloadTips onClose={onCloseDownloadClient} />;
@@ -1,5 +1,4 @@
import { ShareMenu } from '@affine/component/share-menu';
import { config } from '@affine/env';
import { Unreachable } from '@affine/env/constant';
import type {
AffineLegacyCloudWorkspace,
@@ -110,7 +109,7 @@ const LocalHeaderShareMenu: React.FC<BaseHeaderProps> = props => {
};
export const HeaderShareMenu: React.FC<BaseHeaderProps> = props => {
if (!config.enableLegacyCloud) {
if (!runtimeConfig.enableLegacyCloud) {
return null;
}
if (props.workspace.flavour === WorkspaceFlavour.AFFINE) {
@@ -1,5 +1,4 @@
import { displayFlex, IconButton, styled, Tooltip } from '@affine/component';
import { config } from '@affine/env';
import type { LocalWorkspace } from '@affine/env/workspace';
import { WorkspaceFlavour } from '@affine/env/workspace';
import { useAFFiNEI18N } from '@affine/i18n/hooks';
@@ -82,7 +81,7 @@ export const SyncUser = () => {
const t = useAFFiNEI18N();
const transformWorkspace = useTransformWorkspace();
if (!config.enableLegacyCloud) {
if (!runtimeConfig.enableLegacyCloud) {
return null;
}
@@ -4,6 +4,7 @@ import {
appSidebarOpenAtom,
} from '@affine/component/app-sidebar';
import { SidebarSwitch } from '@affine/component/app-sidebar/sidebar-header';
import { isBrowser, isDesktop } from '@affine/env/constant';
import { WorkspaceFlavour } from '@affine/env/workspace';
import { CloseIcon, MinusIcon, RoundedRectangleIcon } from '@blocksuite/icons';
import type { Page } from '@blocksuite/store';
@@ -148,7 +149,7 @@ const HeaderRightItems: Record<HeaderRightItemName, HeaderItem> = {
);
},
availableWhen: () => {
return environment.isDesktop && environment.isWindows;
return isDesktop && isBrowser;
},
},
};
@@ -1,4 +1,4 @@
import { env } from '@affine/env';
import { isDesktop } from '@affine/env/constant';
import { Trans } from '@affine/i18n';
import { useAFFiNEI18N } from '@affine/i18n/hooks';
import type React from 'react';
@@ -7,18 +7,18 @@ import { useEffect, useState } from 'react';
const minimumChromeVersion = 102;
export const shouldShowWarning = () => {
if (env.isDesktop) {
if (isDesktop) {
// even though desktop have compatibility issues, we don't want to show the warning
return false;
}
if (!env.isBrowser) {
if (!environment.isBrowser) {
// disable in SSR
return false;
}
if (env.isChrome) {
return env.chromeVersion < minimumChromeVersion;
if (environment.isChrome) {
return environment.chromeVersion < minimumChromeVersion;
} else {
return !env.isMobile;
return !environment.isMobile;
}
};
@@ -27,9 +27,11 @@ export const OSWarningMessage: React.FC = () => {
const [notChrome, setNotChrome] = useState(false);
const [notGoodVersion, setNotGoodVersion] = useState(false);
useEffect(() => {
setNotChrome(env.isBrowser && !env.isChrome);
setNotChrome(environment.isBrowser && !environment.isChrome);
setNotGoodVersion(
env.isBrowser && env.isChrome && env.chromeVersion < minimumChromeVersion
environment.isBrowser &&
environment.isChrome &&
environment.chromeVersion < minimumChromeVersion
);
}, []);