@4399ywkf/cli 1.0.10 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/templates/app/.gitignore.tpl +5 -26
- package/dist/templates/app/config/env/.env.development +3 -5
- package/dist/templates/app/config/env/.env.production +1 -2
- package/dist/templates/app/config/env/.env.public.tpl +2 -12
- package/dist/templates/app/package.json.tpl +10 -103
- package/dist/templates/app/public/index.html +1 -19
- package/dist/templates/app/src/index.css +1 -2
- package/dist/templates/app/src/pages/$.tsx +19 -0
- package/dist/templates/app/src/pages/dashboard/analytics/page.tsx +16 -0
- package/dist/templates/app/src/pages/dashboard/layout.tsx +29 -0
- package/dist/templates/app/src/pages/dashboard/page.tsx +31 -0
- package/dist/templates/app/src/pages/error.tsx +20 -0
- package/dist/templates/app/src/pages/layout.tsx +36 -0
- package/dist/templates/app/src/pages/loading.tsx +9 -0
- package/dist/templates/app/src/pages/page.tsx +47 -0
- package/dist/templates/app/src/pages/user/[id]/page.tsx +28 -0
- package/dist/templates/app/src/pages/user/page.tsx +42 -0
- package/dist/templates/app/tsconfig.json +24 -35
- package/dist/templates/app/ywkf.config.ts +71 -0
- package/package.json +45 -22
- package/dist/templates/404/index.tsx +0 -5
- package/dist/templates/404/page.tsx +0 -27
- package/dist/templates/404.png +0 -0
- package/dist/templates/404.tsx +0 -5
- package/dist/templates/AntdStaticMethods/index.tsx +0 -20
- package/dist/templates/AppTheme.tsx +0 -136
- package/dist/templates/BaseLayout.tsx +0 -15
- package/dist/templates/ColorScales/ScaleRow.tsx +0 -74
- package/dist/templates/ColorScales/index.md +0 -168
- package/dist/templates/ColorScales/index.tsx +0 -70
- package/dist/templates/ColorScales/style.ts +0 -42
- package/dist/templates/ConfigProvider/index.md +0 -63
- package/dist/templates/ConfigProvider/index.tsx +0 -42
- package/dist/templates/ContentFormWrapper.tsx +0 -11
- package/dist/templates/ContentWrapper.module.less +0 -137
- package/dist/templates/ContentWrapper.tsx +0 -13
- package/dist/templates/DIRECTORY_STRUCTURE.md +0 -141
- package/dist/templates/ErrorBoundary/index.tsx +0 -506
- package/dist/templates/FontLoader/index.md +0 -12
- package/dist/templates/FontLoader/index.tsx +0 -41
- package/dist/templates/GlobalProvider/AppTheme.tsx +0 -136
- package/dist/templates/GlobalProvider/Locale.tsx +0 -84
- package/dist/templates/GlobalProvider/Query.tsx +0 -12
- package/dist/templates/GlobalProvider/StyleRegistry.tsx +0 -9
- package/dist/templates/GlobalProvider/index.tsx +0 -23
- package/dist/templates/GlobalStyle/antdOverride.ts +0 -89
- package/dist/templates/GlobalStyle/global.ts +0 -61
- package/dist/templates/GlobalStyle/index.ts +0 -10
- package/dist/templates/HarmonyOS_Sans_Bold.woff2 +0 -0
- package/dist/templates/HarmonyOS_Sans_Medium.woff2 +0 -0
- package/dist/templates/HarmonyOS_Sans_Regular.woff2 +0 -0
- package/dist/templates/Loading/index.tsx +0 -21
- package/dist/templates/Locale.tsx +0 -84
- package/dist/templates/MainContentWrap.tsx +0 -64
- package/dist/templates/ManualSlave/ManualSlavePage.module.less +0 -25
- package/dist/templates/ManualSlave/ManualSlavePage.tsx +0 -45
- package/dist/templates/ManualSlave/index.ts +0 -1
- package/dist/templates/ManualSlavePage.module.less +0 -25
- package/dist/templates/ManualSlavePage.tsx +0 -45
- package/dist/templates/Meta.tsx +0 -75
- package/dist/templates/Query.tsx +0 -12
- package/dist/templates/RequireAuth/RequireAuth.tsx +0 -76
- package/dist/templates/RequireAuth/index.ts +0 -1
- package/dist/templates/RequireAuth.tsx +0 -76
- package/dist/templates/RoutesConventionsRspackPlugin.js +0 -100
- package/dist/templates/ScaleRow.tsx +0 -74
- package/dist/templates/StyleRegistry.tsx +0 -9
- package/dist/templates/ThemeContext.tsx +0 -135
- package/dist/templates/ThemeProvider/GlobalStyle/antdOverride.ts +0 -89
- package/dist/templates/ThemeProvider/GlobalStyle/global.ts +0 -61
- package/dist/templates/ThemeProvider/GlobalStyle/index.ts +0 -10
- package/dist/templates/ThemeProvider/Meta.tsx +0 -75
- package/dist/templates/ThemeProvider/ThemeProvider.tsx +0 -109
- package/dist/templates/ThemeProvider/index.md +0 -69
- package/dist/templates/ThemeProvider/index.ts +0 -3
- package/dist/templates/ThemeProvider/type.ts +0 -28
- package/dist/templates/ThemeProvider.tsx +0 -109
- package/dist/templates/actions.ts +0 -23
- package/dist/templates/algorithms/darkAlgorithm.ts +0 -47
- package/dist/templates/algorithms/lightAlgorithm.ts +0 -44
- package/dist/templates/analyzeUnusedKeys.ts +0 -506
- package/dist/templates/antdOverride.ts +0 -89
- package/dist/templates/antdTheme.ts +0 -62
- package/dist/templates/api.ts +0 -5
- package/dist/templates/app/.browserslistrc +0 -5
- package/dist/templates/app/.i18nrc.js +0 -57
- package/dist/templates/app/.nvmrc +0 -1
- package/dist/templates/app/.vscode/settings.json +0 -88
- package/dist/templates/app/config/jwt/index.ts +0 -32
- package/dist/templates/app/config/request/error-handler.ts +0 -67
- package/dist/templates/app/config/request/index.ts +0 -172
- package/dist/templates/app/config/request/interceptors.ts +0 -118
- package/dist/templates/app/config/request/token-manager.ts +0 -23
- package/dist/templates/app/config/request/types.ts +0 -63
- package/dist/templates/app/config/router/index.tsx +0 -26
- package/dist/templates/app/config/rspack/paths.js +0 -12
- package/dist/templates/app/config/rspack/plugins/RoutesConventionsRspackPlugin.js +0 -100
- package/dist/templates/app/config/rspack/rspack.config.mjs +0 -187
- package/dist/templates/app/config/rspack/rspack.dev.mjs +0 -219
- package/dist/templates/app/config/rspack/rspack.prod.mjs +0 -233
- package/dist/templates/app/docs/DIRECTORY_STRUCTURE.md +0 -141
- package/dist/templates/app/docs/glossary.md +0 -11
- package/dist/templates/app/locales/zh-CN/common.json +0 -3
- package/dist/templates/app/public/404.png +0 -0
- package/dist/templates/app/public/fonts/HarmonyOS_Sans_Bold.woff2 +0 -0
- package/dist/templates/app/public/fonts/HarmonyOS_Sans_Medium.woff2 +0 -0
- package/dist/templates/app/public/fonts/HarmonyOS_Sans_Regular.woff2 +0 -0
- package/dist/templates/app/public/images/banner_market_modal.webp +0 -0
- package/dist/templates/app/public/images/chatmode_chat_dark.webp +0 -0
- package/dist/templates/app/public/images/chatmode_chat_light.webp +0 -0
- package/dist/templates/app/public/images/chatmode_docs_dark.webp +0 -0
- package/dist/templates/app/public/images/chatmode_docs_light.webp +0 -0
- package/dist/templates/app/public/images/empty_topic_dark.webp +0 -0
- package/dist/templates/app/public/images/empty_topic_light.webp +0 -0
- package/dist/templates/app/public/images/screenshot_background.webp +0 -0
- package/dist/templates/app/public/images/theme_auto.webp +0 -0
- package/dist/templates/app/public/images/theme_dark.webp +0 -0
- package/dist/templates/app/public/images/theme_light.webp +0 -0
- package/dist/templates/app/react-app-env.d.ts +0 -19
- package/dist/templates/app/scripts/convert-locales-to-json.js +0 -47
- package/dist/templates/app/scripts/i18nWorkflow/analyzeUnusedKeys.ts +0 -506
- package/dist/templates/app/scripts/i18nWorkflow/cleanUnusedKeys.ts +0 -344
- package/dist/templates/app/scripts/i18nWorkflow/const.ts +0 -18
- package/dist/templates/app/scripts/i18nWorkflow/flattenLocaleKeys.ts +0 -139
- package/dist/templates/app/scripts/i18nWorkflow/genDefaultLocale.ts +0 -19
- package/dist/templates/app/scripts/i18nWorkflow/genDiff.ts +0 -49
- package/dist/templates/app/scripts/i18nWorkflow/i18nConfig.ts +0 -7
- package/dist/templates/app/scripts/i18nWorkflow/index.ts +0 -11
- package/dist/templates/app/scripts/i18nWorkflow/protectedPatterns.ts +0 -91
- package/dist/templates/app/scripts/i18nWorkflow/utils.ts +0 -76
- package/dist/templates/app/src/bootstrap/index.ts +0 -34
- package/dist/templates/app/src/color/ColorScales/ScaleRow.tsx +0 -74
- package/dist/templates/app/src/color/ColorScales/index.md +0 -168
- package/dist/templates/app/src/color/ColorScales/index.tsx +0 -70
- package/dist/templates/app/src/color/ColorScales/style.ts +0 -42
- package/dist/templates/app/src/color/colors/blue.ts +0 -66
- package/dist/templates/app/src/color/colors/cyan.ts +0 -66
- package/dist/templates/app/src/color/colors/geekblue.ts +0 -66
- package/dist/templates/app/src/color/colors/gold.ts +0 -66
- package/dist/templates/app/src/color/colors/gray.ts +0 -66
- package/dist/templates/app/src/color/colors/green.ts +0 -66
- package/dist/templates/app/src/color/colors/index.ts +0 -66
- package/dist/templates/app/src/color/colors/lime.ts +0 -66
- package/dist/templates/app/src/color/colors/magenta.ts +0 -66
- package/dist/templates/app/src/color/colors/orange.ts +0 -66
- package/dist/templates/app/src/color/colors/primary.ts +0 -66
- package/dist/templates/app/src/color/colors/purple.ts +0 -66
- package/dist/templates/app/src/color/colors/red.ts +0 -66
- package/dist/templates/app/src/color/colors/volcano.ts +0 -66
- package/dist/templates/app/src/color/colors/yellow.ts +0 -66
- package/dist/templates/app/src/color/index.ts +0 -4
- package/dist/templates/app/src/color/neutrals/index.ts +0 -30
- package/dist/templates/app/src/color/neutrals/mauve.ts +0 -66
- package/dist/templates/app/src/color/neutrals/olive.ts +0 -66
- package/dist/templates/app/src/color/neutrals/sage.ts +0 -66
- package/dist/templates/app/src/color/neutrals/sand.ts +0 -66
- package/dist/templates/app/src/color/neutrals/slate.ts +0 -66
- package/dist/templates/app/src/color/types.ts +0 -21
- package/dist/templates/app/src/components/AntdStaticMethods/index.tsx +0 -20
- package/dist/templates/app/src/components/ConfigProvider/index.md +0 -63
- package/dist/templates/app/src/components/ConfigProvider/index.tsx +0 -42
- package/dist/templates/app/src/components/ErrorBoundary/index.tsx +0 -506
- package/dist/templates/app/src/components/FontLoader/index.md +0 -12
- package/dist/templates/app/src/components/FontLoader/index.tsx +0 -41
- package/dist/templates/app/src/components/Loading/index.tsx +0 -21
- package/dist/templates/app/src/components/ManualSlave/ManualSlavePage.module.less +0 -25
- package/dist/templates/app/src/components/ManualSlave/ManualSlavePage.tsx +0 -45
- package/dist/templates/app/src/components/ManualSlave/index.ts +0 -1
- package/dist/templates/app/src/components/RequireAuth/RequireAuth.tsx +0 -76
- package/dist/templates/app/src/components/RequireAuth/index.ts +0 -1
- package/dist/templates/app/src/components/ThemeProvider/GlobalStyle/antdOverride.ts +0 -89
- package/dist/templates/app/src/components/ThemeProvider/GlobalStyle/global.ts +0 -61
- package/dist/templates/app/src/components/ThemeProvider/GlobalStyle/index.ts +0 -10
- package/dist/templates/app/src/components/ThemeProvider/Meta.tsx +0 -75
- package/dist/templates/app/src/components/ThemeProvider/ThemeProvider.tsx +0 -109
- package/dist/templates/app/src/components/ThemeProvider/index.md +0 -69
- package/dist/templates/app/src/components/ThemeProvider/index.ts +0 -3
- package/dist/templates/app/src/components/ThemeProvider/type.ts +0 -28
- package/dist/templates/app/src/config/env.ts +0 -84
- package/dist/templates/app/src/const/constants.ts +0 -0
- package/dist/templates/app/src/const/locale.ts +0 -9
- package/dist/templates/app/src/const/system.ts +0 -1
- package/dist/templates/app/src/const/theme.ts +0 -5
- package/dist/templates/app/src/const/url.ts +0 -1
- package/dist/templates/app/src/index.tsx +0 -15
- package/dist/templates/app/src/layout/BaseLayout.tsx +0 -15
- package/dist/templates/app/src/layout/ContentFormWrapper.tsx +0 -11
- package/dist/templates/app/src/layout/ContentWrapper.module.less +0 -137
- package/dist/templates/app/src/layout/ContentWrapper.tsx +0 -13
- package/dist/templates/app/src/layout/GlobalProvider/AppTheme.tsx +0 -136
- package/dist/templates/app/src/layout/GlobalProvider/Locale.tsx +0 -84
- package/dist/templates/app/src/layout/GlobalProvider/Query.tsx +0 -12
- package/dist/templates/app/src/layout/GlobalProvider/StyleRegistry.tsx +0 -9
- package/dist/templates/app/src/layout/GlobalProvider/index.tsx +0 -23
- package/dist/templates/app/src/layout/Locale.tsx +0 -85
- package/dist/templates/app/src/layout/MainContentWrap.tsx +0 -64
- package/dist/templates/app/src/layout/ThemeContext.tsx +0 -135
- package/dist/templates/app/src/locales/create.ts +0 -56
- package/dist/templates/app/src/locales/default/common.ts +0 -3
- package/dist/templates/app/src/locales/default/index.ts +0 -7
- package/dist/templates/app/src/locales/resources.ts +0 -104
- package/dist/templates/app/src/locales/utils.ts +0 -23
- package/dist/templates/app/src/micro/garfish.ts +0 -53
- package/dist/templates/app/src/pages/404/index.tsx +0 -5
- package/dist/templates/app/src/pages/404/page.tsx +0 -27
- package/dist/templates/app/src/pages/404.tsx +0 -5
- package/dist/templates/app/src/pages/base/index.tsx +0 -287
- package/dist/templates/app/src/pages/index.tsx +0 -5
- package/dist/templates/app/src/routes.tsx +0 -27
- package/dist/templates/app/src/styles/antdOverride.ts +0 -24
- package/dist/templates/app/src/styles/customTheme.ts +0 -70
- package/dist/templates/app/src/styles/global.ts +0 -53
- package/dist/templates/app/src/styles/highlighter.ts +0 -34
- package/dist/templates/app/src/styles/index.ts +0 -23
- package/dist/templates/app/src/styles/mermaid.ts +0 -7
- package/dist/templates/app/src/styles/text.ts +0 -10
- package/dist/templates/app/src/styles/theme/algorithms/darkAlgorithm.ts +0 -47
- package/dist/templates/app/src/styles/theme/algorithms/lightAlgorithm.ts +0 -44
- package/dist/templates/app/src/styles/theme/antdTheme.ts +0 -62
- package/dist/templates/app/src/styles/theme/customStylish.ts +0 -189
- package/dist/templates/app/src/styles/theme/customToken.ts +0 -93
- package/dist/templates/app/src/styles/theme/generateColorPalette.ts +0 -59
- package/dist/templates/app/src/styles/theme/token/base.ts +0 -16
- package/dist/templates/app/src/styles/theme/token/dark.ts +0 -60
- package/dist/templates/app/src/styles/theme/token/light.ts +0 -60
- package/dist/templates/app/src/types/customStylish.ts +0 -20
- package/dist/templates/app/src/types/customToken.ts +0 -70
- package/dist/templates/app/src/types/global.d.ts +0 -19
- package/dist/templates/app/src/types/index.ts +0 -21
- package/dist/templates/app/src/types/routes.ts +0 -70
- package/dist/templates/app/src/utils/convert.ts +0 -40
- package/dist/templates/app/src/utils/cookie.ts +0 -25
- package/dist/templates/app/src/utils/copyToClipboard.ts +0 -13
- package/dist/templates/app/src/utils/difference.ts +0 -26
- package/dist/templates/app/src/utils/genCdnUrl.ts +0 -30
- package/dist/templates/app/src/utils/index.ts +0 -3
- package/dist/templates/app/src/utils/locale.ts +0 -46
- package/dist/templates/app/store/middleware/createDevtools.ts +0 -23
- package/dist/templates/app/store/middleware/createHyperStorage/index.ts +0 -127
- package/dist/templates/app/store/middleware/createHyperStorage/indexedDB.ts +0 -31
- package/dist/templates/app/store/middleware/createHyperStorage/keyMapper.ts +0 -57
- package/dist/templates/app/store/middleware/createHyperStorage/localStorage.ts +0 -23
- package/dist/templates/app/store/middleware/createHyperStorage/type.ts +0 -27
- package/dist/templates/app/store/middleware/createHyperStorage/urlStorage.ts +0 -85
- package/dist/templates/app/store/types.ts +0 -83
- package/dist/templates/app/store/user/index.tsx +0 -1
- package/dist/templates/app/store/user/indexApi.tsx +0 -5
- package/dist/templates/app/store/user/initialState.ts +0 -15
- package/dist/templates/app/store/user/slices/profile/actions.ts +0 -20
- package/dist/templates/app/store/user/slices/profile/api.ts +0 -5
- package/dist/templates/app/store/user/slices/profile/initialState.ts +0 -14
- package/dist/templates/app/store/user/slices/settings/actions.ts +0 -23
- package/dist/templates/app/store/user/slices/settings/initialState.ts +0 -32
- package/dist/templates/app/store/user/store.ts +0 -39
- package/dist/templates/app/tailwind.config.js +0 -13
- package/dist/templates/app//347/277/273/350/257/221.md +0 -9
- package/dist/templates/banner_market_modal.webp +0 -0
- package/dist/templates/base/index.tsx +0 -287
- package/dist/templates/base.ts +0 -16
- package/dist/templates/blue.ts +0 -66
- package/dist/templates/bootstrap/index.ts +0 -34
- package/dist/templates/chatmode_chat_dark.webp +0 -0
- package/dist/templates/chatmode_chat_light.webp +0 -0
- package/dist/templates/chatmode_docs_dark.webp +0 -0
- package/dist/templates/chatmode_docs_light.webp +0 -0
- package/dist/templates/cleanUnusedKeys.ts +0 -344
- package/dist/templates/color/ColorScales/ScaleRow.tsx +0 -74
- package/dist/templates/color/ColorScales/index.md +0 -168
- package/dist/templates/color/ColorScales/index.tsx +0 -70
- package/dist/templates/color/ColorScales/style.ts +0 -42
- package/dist/templates/color/colors/blue.ts +0 -66
- package/dist/templates/color/colors/cyan.ts +0 -66
- package/dist/templates/color/colors/geekblue.ts +0 -66
- package/dist/templates/color/colors/gold.ts +0 -66
- package/dist/templates/color/colors/gray.ts +0 -66
- package/dist/templates/color/colors/green.ts +0 -66
- package/dist/templates/color/colors/index.ts +0 -66
- package/dist/templates/color/colors/lime.ts +0 -66
- package/dist/templates/color/colors/magenta.ts +0 -66
- package/dist/templates/color/colors/orange.ts +0 -66
- package/dist/templates/color/colors/primary.ts +0 -66
- package/dist/templates/color/colors/purple.ts +0 -66
- package/dist/templates/color/colors/red.ts +0 -66
- package/dist/templates/color/colors/volcano.ts +0 -66
- package/dist/templates/color/colors/yellow.ts +0 -66
- package/dist/templates/color/index.ts +0 -4
- package/dist/templates/color/neutrals/index.ts +0 -30
- package/dist/templates/color/neutrals/mauve.ts +0 -66
- package/dist/templates/color/neutrals/olive.ts +0 -66
- package/dist/templates/color/neutrals/sage.ts +0 -66
- package/dist/templates/color/neutrals/sand.ts +0 -66
- package/dist/templates/color/neutrals/slate.ts +0 -66
- package/dist/templates/color/types.ts +0 -21
- package/dist/templates/colors/blue.ts +0 -66
- package/dist/templates/colors/cyan.ts +0 -66
- package/dist/templates/colors/geekblue.ts +0 -66
- package/dist/templates/colors/gold.ts +0 -66
- package/dist/templates/colors/gray.ts +0 -66
- package/dist/templates/colors/green.ts +0 -66
- package/dist/templates/colors/index.ts +0 -66
- package/dist/templates/colors/lime.ts +0 -66
- package/dist/templates/colors/magenta.ts +0 -66
- package/dist/templates/colors/orange.ts +0 -66
- package/dist/templates/colors/primary.ts +0 -66
- package/dist/templates/colors/purple.ts +0 -66
- package/dist/templates/colors/red.ts +0 -66
- package/dist/templates/colors/volcano.ts +0 -66
- package/dist/templates/colors/yellow.ts +0 -66
- package/dist/templates/common.json +0 -3
- package/dist/templates/common.ts +0 -3
- package/dist/templates/components/AntdStaticMethods/index.tsx +0 -20
- package/dist/templates/components/ConfigProvider/index.md +0 -63
- package/dist/templates/components/ConfigProvider/index.tsx +0 -42
- package/dist/templates/components/ErrorBoundary/index.tsx +0 -506
- package/dist/templates/components/FontLoader/index.md +0 -12
- package/dist/templates/components/FontLoader/index.tsx +0 -41
- package/dist/templates/components/Loading/index.tsx +0 -21
- package/dist/templates/components/ManualSlave/ManualSlavePage.module.less +0 -25
- package/dist/templates/components/ManualSlave/ManualSlavePage.tsx +0 -45
- package/dist/templates/components/ManualSlave/index.ts +0 -1
- package/dist/templates/components/RequireAuth/RequireAuth.tsx +0 -76
- package/dist/templates/components/RequireAuth/index.ts +0 -1
- package/dist/templates/components/ThemeProvider/GlobalStyle/antdOverride.ts +0 -89
- package/dist/templates/components/ThemeProvider/GlobalStyle/global.ts +0 -61
- package/dist/templates/components/ThemeProvider/GlobalStyle/index.ts +0 -10
- package/dist/templates/components/ThemeProvider/Meta.tsx +0 -75
- package/dist/templates/components/ThemeProvider/ThemeProvider.tsx +0 -109
- package/dist/templates/components/ThemeProvider/index.md +0 -69
- package/dist/templates/components/ThemeProvider/index.ts +0 -3
- package/dist/templates/components/ThemeProvider/type.ts +0 -28
- package/dist/templates/config/env/.env.development +0 -5
- package/dist/templates/config/env/.env.production +0 -2
- package/dist/templates/config/env/.env.public.tpl +0 -14
- package/dist/templates/config/env.ts +0 -84
- package/dist/templates/config/jwt/index.ts +0 -32
- package/dist/templates/config/request/error-handler.ts +0 -67
- package/dist/templates/config/request/index.ts +0 -172
- package/dist/templates/config/request/interceptors.ts +0 -118
- package/dist/templates/config/request/token-manager.ts +0 -23
- package/dist/templates/config/request/types.ts +0 -63
- package/dist/templates/config/router/index.tsx +0 -26
- package/dist/templates/config/rspack/paths.js +0 -12
- package/dist/templates/config/rspack/plugins/RoutesConventionsRspackPlugin.js +0 -100
- package/dist/templates/config/rspack/rspack.config.mjs +0 -187
- package/dist/templates/config/rspack/rspack.dev.mjs +0 -219
- package/dist/templates/config/rspack/rspack.prod.mjs +0 -233
- package/dist/templates/const/constants.ts +0 -0
- package/dist/templates/const/locale.ts +0 -9
- package/dist/templates/const/system.ts +0 -1
- package/dist/templates/const/theme.ts +0 -5
- package/dist/templates/const/url.ts +0 -1
- package/dist/templates/const.ts +0 -18
- package/dist/templates/constants.ts +0 -0
- package/dist/templates/convert-locales-to-json.js +0 -47
- package/dist/templates/convert.ts +0 -40
- package/dist/templates/cookie.ts +0 -25
- package/dist/templates/copyToClipboard.ts +0 -13
- package/dist/templates/create.ts +0 -56
- package/dist/templates/createDevtools.ts +0 -23
- package/dist/templates/createHyperStorage/index.ts +0 -127
- package/dist/templates/createHyperStorage/indexedDB.ts +0 -31
- package/dist/templates/createHyperStorage/keyMapper.ts +0 -57
- package/dist/templates/createHyperStorage/localStorage.ts +0 -23
- package/dist/templates/createHyperStorage/type.ts +0 -27
- package/dist/templates/createHyperStorage/urlStorage.ts +0 -85
- package/dist/templates/customStylish.ts +0 -189
- package/dist/templates/customTheme.ts +0 -70
- package/dist/templates/customToken.ts +0 -93
- package/dist/templates/cyan.ts +0 -66
- package/dist/templates/dark.ts +0 -60
- package/dist/templates/darkAlgorithm.ts +0 -47
- package/dist/templates/default/common.ts +0 -3
- package/dist/templates/default/index.ts +0 -7
- package/dist/templates/difference.ts +0 -26
- package/dist/templates/docs/DIRECTORY_STRUCTURE.md +0 -141
- package/dist/templates/docs/glossary.md +0 -11
- package/dist/templates/empty_topic_dark.webp +0 -0
- package/dist/templates/empty_topic_light.webp +0 -0
- package/dist/templates/env/.env.development +0 -5
- package/dist/templates/env/.env.production +0 -2
- package/dist/templates/env/.env.public.tpl +0 -14
- package/dist/templates/env.ts +0 -84
- package/dist/templates/error-handler.ts +0 -67
- package/dist/templates/favicon.ico +0 -0
- package/dist/templates/flattenLocaleKeys.ts +0 -139
- package/dist/templates/fonts/HarmonyOS_Sans_Bold.woff2 +0 -0
- package/dist/templates/fonts/HarmonyOS_Sans_Medium.woff2 +0 -0
- package/dist/templates/fonts/HarmonyOS_Sans_Regular.woff2 +0 -0
- package/dist/templates/garfish.ts +0 -53
- package/dist/templates/geekblue.ts +0 -66
- package/dist/templates/genCdnUrl.ts +0 -30
- package/dist/templates/genDefaultLocale.ts +0 -19
- package/dist/templates/genDiff.ts +0 -49
- package/dist/templates/generateColorPalette.ts +0 -59
- package/dist/templates/global.d.ts +0 -19
- package/dist/templates/global.ts +0 -61
- package/dist/templates/glossary.md +0 -11
- package/dist/templates/gold.ts +0 -66
- package/dist/templates/gray.ts +0 -66
- package/dist/templates/green.ts +0 -66
- package/dist/templates/highlighter.ts +0 -34
- package/dist/templates/i18nConfig.ts +0 -7
- package/dist/templates/i18nWorkflow/analyzeUnusedKeys.ts +0 -506
- package/dist/templates/i18nWorkflow/cleanUnusedKeys.ts +0 -344
- package/dist/templates/i18nWorkflow/const.ts +0 -18
- package/dist/templates/i18nWorkflow/flattenLocaleKeys.ts +0 -139
- package/dist/templates/i18nWorkflow/genDefaultLocale.ts +0 -19
- package/dist/templates/i18nWorkflow/genDiff.ts +0 -49
- package/dist/templates/i18nWorkflow/i18nConfig.ts +0 -7
- package/dist/templates/i18nWorkflow/index.ts +0 -11
- package/dist/templates/i18nWorkflow/protectedPatterns.ts +0 -91
- package/dist/templates/i18nWorkflow/utils.ts +0 -76
- package/dist/templates/images/banner_market_modal.webp +0 -0
- package/dist/templates/images/chatmode_chat_dark.webp +0 -0
- package/dist/templates/images/chatmode_chat_light.webp +0 -0
- package/dist/templates/images/chatmode_docs_dark.webp +0 -0
- package/dist/templates/images/chatmode_docs_light.webp +0 -0
- package/dist/templates/images/empty_topic_dark.webp +0 -0
- package/dist/templates/images/empty_topic_light.webp +0 -0
- package/dist/templates/images/screenshot_background.webp +0 -0
- package/dist/templates/images/theme_auto.webp +0 -0
- package/dist/templates/images/theme_dark.webp +0 -0
- package/dist/templates/images/theme_light.webp +0 -0
- package/dist/templates/index.css +0 -2
- package/dist/templates/index.html +0 -29
- package/dist/templates/index.md +0 -69
- package/dist/templates/index.ts +0 -10
- package/dist/templates/index.tsx +0 -287
- package/dist/templates/indexApi.tsx +0 -5
- package/dist/templates/indexedDB.ts +0 -31
- package/dist/templates/initialState.ts +0 -32
- package/dist/templates/interceptors.ts +0 -118
- package/dist/templates/jwt/index.ts +0 -32
- package/dist/templates/keyMapper.ts +0 -57
- package/dist/templates/layout/BaseLayout.tsx +0 -15
- package/dist/templates/layout/ContentFormWrapper.tsx +0 -11
- package/dist/templates/layout/ContentWrapper.module.less +0 -137
- package/dist/templates/layout/ContentWrapper.tsx +0 -13
- package/dist/templates/layout/GlobalProvider/AppTheme.tsx +0 -136
- package/dist/templates/layout/GlobalProvider/Locale.tsx +0 -84
- package/dist/templates/layout/GlobalProvider/Query.tsx +0 -12
- package/dist/templates/layout/GlobalProvider/StyleRegistry.tsx +0 -9
- package/dist/templates/layout/GlobalProvider/index.tsx +0 -23
- package/dist/templates/layout/Locale.tsx +0 -85
- package/dist/templates/layout/MainContentWrap.tsx +0 -64
- package/dist/templates/layout/ThemeContext.tsx +0 -135
- package/dist/templates/light.ts +0 -60
- package/dist/templates/lightAlgorithm.ts +0 -44
- package/dist/templates/lime.ts +0 -66
- package/dist/templates/localStorage.ts +0 -23
- package/dist/templates/locale.ts +0 -46
- package/dist/templates/locales/create.ts +0 -56
- package/dist/templates/locales/default/common.ts +0 -3
- package/dist/templates/locales/default/index.ts +0 -7
- package/dist/templates/locales/resources.ts +0 -104
- package/dist/templates/locales/utils.ts +0 -23
- package/dist/templates/locales/zh-CN/common.json +0 -3
- package/dist/templates/magenta.ts +0 -66
- package/dist/templates/mauve.ts +0 -66
- package/dist/templates/mermaid.ts +0 -7
- package/dist/templates/micro/garfish.ts +0 -53
- package/dist/templates/middleware/createDevtools.ts +0 -23
- package/dist/templates/middleware/createHyperStorage/index.ts +0 -127
- package/dist/templates/middleware/createHyperStorage/indexedDB.ts +0 -31
- package/dist/templates/middleware/createHyperStorage/keyMapper.ts +0 -57
- package/dist/templates/middleware/createHyperStorage/localStorage.ts +0 -23
- package/dist/templates/middleware/createHyperStorage/type.ts +0 -27
- package/dist/templates/middleware/createHyperStorage/urlStorage.ts +0 -85
- package/dist/templates/neutrals/index.ts +0 -30
- package/dist/templates/neutrals/mauve.ts +0 -66
- package/dist/templates/neutrals/olive.ts +0 -66
- package/dist/templates/neutrals/sage.ts +0 -66
- package/dist/templates/neutrals/sand.ts +0 -66
- package/dist/templates/neutrals/slate.ts +0 -66
- package/dist/templates/olive.ts +0 -66
- package/dist/templates/orange.ts +0 -66
- package/dist/templates/package.json.tpl +0 -128
- package/dist/templates/page.tsx +0 -27
- package/dist/templates/pages/404/index.tsx +0 -5
- package/dist/templates/pages/404/page.tsx +0 -27
- package/dist/templates/pages/404.tsx +0 -5
- package/dist/templates/pages/base/index.tsx +0 -287
- package/dist/templates/pages/index.tsx +0 -5
- package/dist/templates/paths.js +0 -12
- package/dist/templates/plugins/RoutesConventionsRspackPlugin.js +0 -100
- package/dist/templates/postcss.config.js +0 -6
- package/dist/templates/primary.ts +0 -66
- package/dist/templates/profile/actions.ts +0 -20
- package/dist/templates/profile/api.ts +0 -5
- package/dist/templates/profile/initialState.ts +0 -14
- package/dist/templates/protectedPatterns.ts +0 -91
- package/dist/templates/public/404.png +0 -0
- package/dist/templates/public/favicon.ico +0 -0
- package/dist/templates/public/fonts/HarmonyOS_Sans_Bold.woff2 +0 -0
- package/dist/templates/public/fonts/HarmonyOS_Sans_Medium.woff2 +0 -0
- package/dist/templates/public/fonts/HarmonyOS_Sans_Regular.woff2 +0 -0
- package/dist/templates/public/images/banner_market_modal.webp +0 -0
- package/dist/templates/public/images/chatmode_chat_dark.webp +0 -0
- package/dist/templates/public/images/chatmode_chat_light.webp +0 -0
- package/dist/templates/public/images/chatmode_docs_dark.webp +0 -0
- package/dist/templates/public/images/chatmode_docs_light.webp +0 -0
- package/dist/templates/public/images/empty_topic_dark.webp +0 -0
- package/dist/templates/public/images/empty_topic_light.webp +0 -0
- package/dist/templates/public/images/screenshot_background.webp +0 -0
- package/dist/templates/public/images/theme_auto.webp +0 -0
- package/dist/templates/public/images/theme_dark.webp +0 -0
- package/dist/templates/public/images/theme_light.webp +0 -0
- package/dist/templates/public/index.html +0 -29
- package/dist/templates/purple.ts +0 -66
- package/dist/templates/react-app-env.d.ts +0 -19
- package/dist/templates/red.ts +0 -66
- package/dist/templates/request/error-handler.ts +0 -67
- package/dist/templates/request/index.ts +0 -172
- package/dist/templates/request/interceptors.ts +0 -118
- package/dist/templates/request/token-manager.ts +0 -23
- package/dist/templates/request/types.ts +0 -63
- package/dist/templates/resources.ts +0 -104
- package/dist/templates/router/index.tsx +0 -26
- package/dist/templates/routes.ts +0 -70
- package/dist/templates/routes.tsx +0 -27
- package/dist/templates/rspack/paths.js +0 -12
- package/dist/templates/rspack/plugins/RoutesConventionsRspackPlugin.js +0 -100
- package/dist/templates/rspack/rspack.config.mjs +0 -187
- package/dist/templates/rspack/rspack.dev.mjs +0 -219
- package/dist/templates/rspack/rspack.prod.mjs +0 -233
- package/dist/templates/rspack.config.mjs +0 -187
- package/dist/templates/rspack.dev.mjs +0 -219
- package/dist/templates/rspack.prod.mjs +0 -233
- package/dist/templates/sage.ts +0 -66
- package/dist/templates/sand.ts +0 -66
- package/dist/templates/screenshot_background.webp +0 -0
- package/dist/templates/scripts/convert-locales-to-json.js +0 -47
- package/dist/templates/scripts/i18nWorkflow/analyzeUnusedKeys.ts +0 -506
- package/dist/templates/scripts/i18nWorkflow/cleanUnusedKeys.ts +0 -344
- package/dist/templates/scripts/i18nWorkflow/const.ts +0 -18
- package/dist/templates/scripts/i18nWorkflow/flattenLocaleKeys.ts +0 -139
- package/dist/templates/scripts/i18nWorkflow/genDefaultLocale.ts +0 -19
- package/dist/templates/scripts/i18nWorkflow/genDiff.ts +0 -49
- package/dist/templates/scripts/i18nWorkflow/i18nConfig.ts +0 -7
- package/dist/templates/scripts/i18nWorkflow/index.ts +0 -11
- package/dist/templates/scripts/i18nWorkflow/protectedPatterns.ts +0 -91
- package/dist/templates/scripts/i18nWorkflow/utils.ts +0 -76
- package/dist/templates/settings/actions.ts +0 -23
- package/dist/templates/settings/initialState.ts +0 -32
- package/dist/templates/slate.ts +0 -66
- package/dist/templates/slices/profile/actions.ts +0 -20
- package/dist/templates/slices/profile/api.ts +0 -5
- package/dist/templates/slices/profile/initialState.ts +0 -14
- package/dist/templates/slices/settings/actions.ts +0 -23
- package/dist/templates/slices/settings/initialState.ts +0 -32
- package/dist/templates/src/bootstrap/index.ts +0 -34
- package/dist/templates/src/color/ColorScales/ScaleRow.tsx +0 -74
- package/dist/templates/src/color/ColorScales/index.md +0 -168
- package/dist/templates/src/color/ColorScales/index.tsx +0 -70
- package/dist/templates/src/color/ColorScales/style.ts +0 -42
- package/dist/templates/src/color/colors/blue.ts +0 -66
- package/dist/templates/src/color/colors/cyan.ts +0 -66
- package/dist/templates/src/color/colors/geekblue.ts +0 -66
- package/dist/templates/src/color/colors/gold.ts +0 -66
- package/dist/templates/src/color/colors/gray.ts +0 -66
- package/dist/templates/src/color/colors/green.ts +0 -66
- package/dist/templates/src/color/colors/index.ts +0 -66
- package/dist/templates/src/color/colors/lime.ts +0 -66
- package/dist/templates/src/color/colors/magenta.ts +0 -66
- package/dist/templates/src/color/colors/orange.ts +0 -66
- package/dist/templates/src/color/colors/primary.ts +0 -66
- package/dist/templates/src/color/colors/purple.ts +0 -66
- package/dist/templates/src/color/colors/red.ts +0 -66
- package/dist/templates/src/color/colors/volcano.ts +0 -66
- package/dist/templates/src/color/colors/yellow.ts +0 -66
- package/dist/templates/src/color/index.ts +0 -4
- package/dist/templates/src/color/neutrals/index.ts +0 -30
- package/dist/templates/src/color/neutrals/mauve.ts +0 -66
- package/dist/templates/src/color/neutrals/olive.ts +0 -66
- package/dist/templates/src/color/neutrals/sage.ts +0 -66
- package/dist/templates/src/color/neutrals/sand.ts +0 -66
- package/dist/templates/src/color/neutrals/slate.ts +0 -66
- package/dist/templates/src/color/types.ts +0 -21
- package/dist/templates/src/components/AntdStaticMethods/index.tsx +0 -20
- package/dist/templates/src/components/ConfigProvider/index.md +0 -63
- package/dist/templates/src/components/ConfigProvider/index.tsx +0 -42
- package/dist/templates/src/components/ErrorBoundary/index.tsx +0 -506
- package/dist/templates/src/components/FontLoader/index.md +0 -12
- package/dist/templates/src/components/FontLoader/index.tsx +0 -41
- package/dist/templates/src/components/Loading/index.tsx +0 -21
- package/dist/templates/src/components/ManualSlave/ManualSlavePage.module.less +0 -25
- package/dist/templates/src/components/ManualSlave/ManualSlavePage.tsx +0 -45
- package/dist/templates/src/components/ManualSlave/index.ts +0 -1
- package/dist/templates/src/components/RequireAuth/RequireAuth.tsx +0 -76
- package/dist/templates/src/components/RequireAuth/index.ts +0 -1
- package/dist/templates/src/components/ThemeProvider/GlobalStyle/antdOverride.ts +0 -89
- package/dist/templates/src/components/ThemeProvider/GlobalStyle/global.ts +0 -61
- package/dist/templates/src/components/ThemeProvider/GlobalStyle/index.ts +0 -10
- package/dist/templates/src/components/ThemeProvider/Meta.tsx +0 -75
- package/dist/templates/src/components/ThemeProvider/ThemeProvider.tsx +0 -109
- package/dist/templates/src/components/ThemeProvider/index.md +0 -69
- package/dist/templates/src/components/ThemeProvider/index.ts +0 -3
- package/dist/templates/src/components/ThemeProvider/type.ts +0 -28
- package/dist/templates/src/config/env.ts +0 -84
- package/dist/templates/src/const/constants.ts +0 -0
- package/dist/templates/src/const/locale.ts +0 -9
- package/dist/templates/src/const/system.ts +0 -1
- package/dist/templates/src/const/theme.ts +0 -5
- package/dist/templates/src/const/url.ts +0 -1
- package/dist/templates/src/index.css +0 -2
- package/dist/templates/src/index.tsx +0 -15
- package/dist/templates/src/layout/BaseLayout.tsx +0 -15
- package/dist/templates/src/layout/ContentFormWrapper.tsx +0 -11
- package/dist/templates/src/layout/ContentWrapper.module.less +0 -137
- package/dist/templates/src/layout/ContentWrapper.tsx +0 -13
- package/dist/templates/src/layout/GlobalProvider/AppTheme.tsx +0 -136
- package/dist/templates/src/layout/GlobalProvider/Locale.tsx +0 -84
- package/dist/templates/src/layout/GlobalProvider/Query.tsx +0 -12
- package/dist/templates/src/layout/GlobalProvider/StyleRegistry.tsx +0 -9
- package/dist/templates/src/layout/GlobalProvider/index.tsx +0 -23
- package/dist/templates/src/layout/Locale.tsx +0 -85
- package/dist/templates/src/layout/MainContentWrap.tsx +0 -64
- package/dist/templates/src/layout/ThemeContext.tsx +0 -135
- package/dist/templates/src/locales/create.ts +0 -56
- package/dist/templates/src/locales/default/common.ts +0 -3
- package/dist/templates/src/locales/default/index.ts +0 -7
- package/dist/templates/src/locales/resources.ts +0 -104
- package/dist/templates/src/locales/utils.ts +0 -23
- package/dist/templates/src/micro/garfish.ts +0 -53
- package/dist/templates/src/pages/404/index.tsx +0 -5
- package/dist/templates/src/pages/404/page.tsx +0 -27
- package/dist/templates/src/pages/404.tsx +0 -5
- package/dist/templates/src/pages/base/index.tsx +0 -287
- package/dist/templates/src/pages/index.tsx +0 -5
- package/dist/templates/src/routes.tsx +0 -27
- package/dist/templates/src/styles/antdOverride.ts +0 -24
- package/dist/templates/src/styles/customTheme.ts +0 -70
- package/dist/templates/src/styles/global.ts +0 -53
- package/dist/templates/src/styles/highlighter.ts +0 -34
- package/dist/templates/src/styles/index.ts +0 -23
- package/dist/templates/src/styles/mermaid.ts +0 -7
- package/dist/templates/src/styles/text.ts +0 -10
- package/dist/templates/src/styles/theme/algorithms/darkAlgorithm.ts +0 -47
- package/dist/templates/src/styles/theme/algorithms/lightAlgorithm.ts +0 -44
- package/dist/templates/src/styles/theme/antdTheme.ts +0 -62
- package/dist/templates/src/styles/theme/customStylish.ts +0 -189
- package/dist/templates/src/styles/theme/customToken.ts +0 -93
- package/dist/templates/src/styles/theme/generateColorPalette.ts +0 -59
- package/dist/templates/src/styles/theme/token/base.ts +0 -16
- package/dist/templates/src/styles/theme/token/dark.ts +0 -60
- package/dist/templates/src/styles/theme/token/light.ts +0 -60
- package/dist/templates/src/types/customStylish.ts +0 -20
- package/dist/templates/src/types/customToken.ts +0 -70
- package/dist/templates/src/types/global.d.ts +0 -19
- package/dist/templates/src/types/index.ts +0 -21
- package/dist/templates/src/types/routes.ts +0 -70
- package/dist/templates/src/utils/convert.ts +0 -40
- package/dist/templates/src/utils/cookie.ts +0 -25
- package/dist/templates/src/utils/copyToClipboard.ts +0 -13
- package/dist/templates/src/utils/difference.ts +0 -26
- package/dist/templates/src/utils/genCdnUrl.ts +0 -30
- package/dist/templates/src/utils/index.ts +0 -3
- package/dist/templates/src/utils/locale.ts +0 -46
- package/dist/templates/store/middleware/createDevtools.ts +0 -23
- package/dist/templates/store/middleware/createHyperStorage/index.ts +0 -127
- package/dist/templates/store/middleware/createHyperStorage/indexedDB.ts +0 -31
- package/dist/templates/store/middleware/createHyperStorage/keyMapper.ts +0 -57
- package/dist/templates/store/middleware/createHyperStorage/localStorage.ts +0 -23
- package/dist/templates/store/middleware/createHyperStorage/type.ts +0 -27
- package/dist/templates/store/middleware/createHyperStorage/urlStorage.ts +0 -85
- package/dist/templates/store/types.ts +0 -83
- package/dist/templates/store/user/index.tsx +0 -1
- package/dist/templates/store/user/indexApi.tsx +0 -5
- package/dist/templates/store/user/initialState.ts +0 -15
- package/dist/templates/store/user/slices/profile/actions.ts +0 -20
- package/dist/templates/store/user/slices/profile/api.ts +0 -5
- package/dist/templates/store/user/slices/profile/initialState.ts +0 -14
- package/dist/templates/store/user/slices/settings/actions.ts +0 -23
- package/dist/templates/store/user/slices/settings/initialState.ts +0 -32
- package/dist/templates/store/user/store.ts +0 -39
- package/dist/templates/store.ts +0 -39
- package/dist/templates/style.ts +0 -42
- package/dist/templates/styles/antdOverride.ts +0 -24
- package/dist/templates/styles/customTheme.ts +0 -70
- package/dist/templates/styles/global.ts +0 -53
- package/dist/templates/styles/highlighter.ts +0 -34
- package/dist/templates/styles/index.ts +0 -23
- package/dist/templates/styles/mermaid.ts +0 -7
- package/dist/templates/styles/text.ts +0 -10
- package/dist/templates/styles/theme/algorithms/darkAlgorithm.ts +0 -47
- package/dist/templates/styles/theme/algorithms/lightAlgorithm.ts +0 -44
- package/dist/templates/styles/theme/antdTheme.ts +0 -62
- package/dist/templates/styles/theme/customStylish.ts +0 -189
- package/dist/templates/styles/theme/customToken.ts +0 -93
- package/dist/templates/styles/theme/generateColorPalette.ts +0 -59
- package/dist/templates/styles/theme/token/base.ts +0 -16
- package/dist/templates/styles/theme/token/dark.ts +0 -60
- package/dist/templates/styles/theme/token/light.ts +0 -60
- package/dist/templates/system.ts +0 -1
- package/dist/templates/tailwind.config.js +0 -13
- package/dist/templates/text.ts +0 -10
- package/dist/templates/theme/algorithms/darkAlgorithm.ts +0 -47
- package/dist/templates/theme/algorithms/lightAlgorithm.ts +0 -44
- package/dist/templates/theme/antdTheme.ts +0 -62
- package/dist/templates/theme/customStylish.ts +0 -189
- package/dist/templates/theme/customToken.ts +0 -93
- package/dist/templates/theme/generateColorPalette.ts +0 -59
- package/dist/templates/theme/token/base.ts +0 -16
- package/dist/templates/theme/token/dark.ts +0 -60
- package/dist/templates/theme/token/light.ts +0 -60
- package/dist/templates/theme.ts +0 -5
- package/dist/templates/theme_auto.webp +0 -0
- package/dist/templates/theme_dark.webp +0 -0
- package/dist/templates/theme_light.webp +0 -0
- package/dist/templates/token/base.ts +0 -16
- package/dist/templates/token/dark.ts +0 -60
- package/dist/templates/token/light.ts +0 -60
- package/dist/templates/token-manager.ts +0 -23
- package/dist/templates/tsconfig.json +0 -43
- package/dist/templates/type.ts +0 -27
- package/dist/templates/types/customStylish.ts +0 -20
- package/dist/templates/types/customToken.ts +0 -70
- package/dist/templates/types/global.d.ts +0 -19
- package/dist/templates/types/index.ts +0 -21
- package/dist/templates/types/routes.ts +0 -70
- package/dist/templates/types.ts +0 -21
- package/dist/templates/url.ts +0 -1
- package/dist/templates/urlStorage.ts +0 -85
- package/dist/templates/user/index.tsx +0 -1
- package/dist/templates/user/indexApi.tsx +0 -5
- package/dist/templates/user/initialState.ts +0 -15
- package/dist/templates/user/slices/profile/actions.ts +0 -20
- package/dist/templates/user/slices/profile/api.ts +0 -5
- package/dist/templates/user/slices/profile/initialState.ts +0 -14
- package/dist/templates/user/slices/settings/actions.ts +0 -23
- package/dist/templates/user/slices/settings/initialState.ts +0 -32
- package/dist/templates/user/store.ts +0 -39
- package/dist/templates/utils/convert.ts +0 -40
- package/dist/templates/utils/cookie.ts +0 -25
- package/dist/templates/utils/copyToClipboard.ts +0 -13
- package/dist/templates/utils/difference.ts +0 -26
- package/dist/templates/utils/genCdnUrl.ts +0 -30
- package/dist/templates/utils/index.ts +0 -3
- package/dist/templates/utils/locale.ts +0 -46
- package/dist/templates/utils.ts +0 -23
- package/dist/templates/volcano.ts +0 -66
- package/dist/templates/yellow.ts +0 -66
- package/dist/templates/zh-CN/common.json +0 -3
- package/dist/templates//347/277/273/350/257/221.md +0 -9
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
export interface RouteItem {
|
|
2
|
-
path?: string;
|
|
3
|
-
wrappers?: string[];
|
|
4
|
-
component?: string | (() => React.JSX.Element);
|
|
5
|
-
redirect?: string;
|
|
6
|
-
routes?: RouteItem[];
|
|
7
|
-
[any: string]: any;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export interface IRouteConventionExportProps {
|
|
11
|
-
routeProps?: Record<string, any>;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
export interface IRoute extends IRouteConventionExportProps {
|
|
15
|
-
id: string;
|
|
16
|
-
path?: string;
|
|
17
|
-
index?: boolean;
|
|
18
|
-
parentId?: string;
|
|
19
|
-
redirect?: string;
|
|
20
|
-
loading?: string | React.ReactNode;
|
|
21
|
-
absPath?: string;
|
|
22
|
-
file?: string;
|
|
23
|
-
name?: string;
|
|
24
|
-
title?: string;
|
|
25
|
-
cname?: string;
|
|
26
|
-
key?: string;
|
|
27
|
-
perarr?: string;
|
|
28
|
-
microApp?: string;
|
|
29
|
-
entry?: string;
|
|
30
|
-
[key: string]: any;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
export interface IClientRoute extends IRoute {
|
|
34
|
-
element: React.ReactNode;
|
|
35
|
-
children?: IClientRoute[];
|
|
36
|
-
routes?: IClientRoute[];
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
export interface IRoutesById {
|
|
40
|
-
[id: string]: IRoute;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
export interface IRouteComponents {
|
|
44
|
-
[id: string]: any;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
export interface RenderClientOpts {
|
|
48
|
-
/**
|
|
49
|
-
* react dom 渲染的的目标 dom
|
|
50
|
-
* @doc 一般不需要改,微前端的时候会变化
|
|
51
|
-
*/
|
|
52
|
-
rootElement?: HTMLElement;
|
|
53
|
-
/**
|
|
54
|
-
* 设置路由 base,部署项目到非根目录下时使用。
|
|
55
|
-
*/
|
|
56
|
-
basename?: string;
|
|
57
|
-
/**
|
|
58
|
-
* loading 中展示的组件 dom (全局加载组件)。
|
|
59
|
-
*/
|
|
60
|
-
loadingComponent?: () => React.ReactNode;
|
|
61
|
-
/**
|
|
62
|
-
* 自定义错误边界组件
|
|
63
|
-
*/
|
|
64
|
-
errorBoundary?: React.ComponentType<{ error: Error; retry: () => void }>;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
export interface IMemo {
|
|
68
|
-
id: number;
|
|
69
|
-
ret: any;
|
|
70
|
-
}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 将文件大小从一个单位转换为另一个单位。
|
|
3
|
-
*
|
|
4
|
-
* @param {number} size 文件大小。
|
|
5
|
-
* @param {string} fromUnit 初始单位('B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB')。
|
|
6
|
-
* @param {string} toUnit 目标单位('B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB')。
|
|
7
|
-
* @param {number} [decimalPoint=2] 结果保留的小数位数,默认为2。
|
|
8
|
-
* @return {string} 转换后的文件大小,带单位。
|
|
9
|
-
*/
|
|
10
|
-
export const convertFileSize = (
|
|
11
|
-
size: number,
|
|
12
|
-
fromUnit: string,
|
|
13
|
-
toUnit: string,
|
|
14
|
-
decimalPoint = 2,
|
|
15
|
-
): string => {
|
|
16
|
-
// 定义单位与字节之间的转换关系
|
|
17
|
-
const units = ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
|
|
18
|
-
// 获取初始单位和目标单位的索引
|
|
19
|
-
const fromIndex = units.indexOf(fromUnit);
|
|
20
|
-
const toIndex = units.indexOf(toUnit);
|
|
21
|
-
|
|
22
|
-
// 如果单位不在列表中,抛出错误
|
|
23
|
-
if (fromIndex === -1 || toIndex === -1) {
|
|
24
|
-
throw new Error('Invalid units');
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
// 计算初始单位与目标单位之间的转换系数
|
|
28
|
-
const exponent = toIndex - fromIndex;
|
|
29
|
-
// 计算结果大小
|
|
30
|
-
const resultSize = size / 1024 ** exponent;
|
|
31
|
-
|
|
32
|
-
// 返回格式化后的结果
|
|
33
|
-
return `${Number.parseFloat(resultSize.toFixed(decimalPoint))} ${toUnit}`;
|
|
34
|
-
};
|
|
35
|
-
|
|
36
|
-
// // 示例使用
|
|
37
|
-
// console.log(convertFileSize(1, 'GB', 'MB')); // 输出: 1024.00 MB
|
|
38
|
-
// console.log(convertFileSize(1, 'MB', 'KB')); // 输出: 1024.00 KB
|
|
39
|
-
// console.log(convertFileSize(1, 'KB', 'B')); // 输出: 1024.00 B
|
|
40
|
-
// console.log(convertFileSize(1, 'MB', 'GB', 5)); // 输出: 0.00098 GB
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import dayjs from 'dayjs';
|
|
2
|
-
|
|
3
|
-
export const COOKIE_CACHE_DAYS = 30;
|
|
4
|
-
|
|
5
|
-
export const setCookie = (
|
|
6
|
-
key: string,
|
|
7
|
-
value: string | undefined,
|
|
8
|
-
expireDays: string | number = COOKIE_CACHE_DAYS,
|
|
9
|
-
) => {
|
|
10
|
-
if (typeof value === 'undefined') {
|
|
11
|
-
// Set the expiration time to yesterday (expire immediately)
|
|
12
|
-
const expiredDate = new Date(0).toUTCString(); // 1970-01-01T00:00:00Z
|
|
13
|
-
|
|
14
|
-
// eslint-disable-next-line unicorn/no-document-cookie
|
|
15
|
-
document.cookie = `${key}=; expires=${expiredDate}; path=/;`;
|
|
16
|
-
} else {
|
|
17
|
-
const expires =
|
|
18
|
-
typeof expireDays === 'string'
|
|
19
|
-
? expireDays
|
|
20
|
-
: dayjs().add(expireDays, 'day').toDate().toUTCString();
|
|
21
|
-
|
|
22
|
-
// eslint-disable-next-line unicorn/no-document-cookie
|
|
23
|
-
document.cookie = `${key}=${value};expires=${expires};path=/;`;
|
|
24
|
-
}
|
|
25
|
-
};
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export const copyToClipboard = async (text: string) => {
|
|
2
|
-
try {
|
|
3
|
-
await navigator.clipboard.writeText(text);
|
|
4
|
-
} catch {
|
|
5
|
-
const textArea = document.createElement('textarea');
|
|
6
|
-
textArea.value = text;
|
|
7
|
-
document.body.append(textArea);
|
|
8
|
-
textArea.focus();
|
|
9
|
-
textArea.select();
|
|
10
|
-
document.execCommand('copy');
|
|
11
|
-
textArea.remove();
|
|
12
|
-
}
|
|
13
|
-
};
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import isEqual from 'fast-deep-equal';
|
|
2
|
-
import { isArray, isObject, transform } from 'lodash-es';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Compare two objects and return the difference.
|
|
6
|
-
* when there are difference in array, just return the new value.
|
|
7
|
-
* it's used mostly in settings
|
|
8
|
-
*/
|
|
9
|
-
export const difference = <T extends object>(object: T, base: T) => {
|
|
10
|
-
const changes = (object: any, base: any) =>
|
|
11
|
-
transform(object, (result: any, value, key) => {
|
|
12
|
-
// First, check if value and base[key] are both arrays.
|
|
13
|
-
// If they are arrays, we directly use isEqual to compare their values.
|
|
14
|
-
if (isArray(value) && isArray(base[key])) {
|
|
15
|
-
if (!isEqual(value, base[key])) {
|
|
16
|
-
result[key] = value;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
// If they are objects, we recursively call changes to compare their values.
|
|
20
|
-
else if (!isEqual(value, base[key])) {
|
|
21
|
-
result[key] = isObject(value) && isObject(base[key]) ? changes(value, base[key]) : value;
|
|
22
|
-
}
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
return changes(object, base);
|
|
26
|
-
};
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import urlJoin from 'url-join';
|
|
2
|
-
|
|
3
|
-
const UNPKG_API = 'https://unpkg.com';
|
|
4
|
-
const ALIYUN_API = 'https://registry.npmmirror.com';
|
|
5
|
-
|
|
6
|
-
export type CDN = 'aliyun' | 'unpkg';
|
|
7
|
-
export interface CdnApi {
|
|
8
|
-
path: string;
|
|
9
|
-
pkg: string;
|
|
10
|
-
proxy?: CDN;
|
|
11
|
-
version?: string;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
export const genCdnUrl = ({
|
|
15
|
-
pkg,
|
|
16
|
-
version = 'latest',
|
|
17
|
-
path,
|
|
18
|
-
proxy,
|
|
19
|
-
}: CdnApi): string => {
|
|
20
|
-
switch (proxy) {
|
|
21
|
-
case 'unpkg': {
|
|
22
|
-
return urlJoin(UNPKG_API, `${pkg}@${version}`, path);
|
|
23
|
-
}
|
|
24
|
-
default: {
|
|
25
|
-
return urlJoin(ALIYUN_API, pkg, version, 'files', path);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
export { ALIYUN_API, UNPKG_API };
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { resolveAcceptLanguage } from 'resolve-accept-language';
|
|
2
|
-
|
|
3
|
-
import { DEFAULT_LANG } from '@/const/locale';
|
|
4
|
-
import { locales, normalizeLocale } from '@/locales/resources';
|
|
5
|
-
|
|
6
|
-
export const getAntdLocale = async (lang?: string) => {
|
|
7
|
-
let normalLang = normalizeLocale(lang);
|
|
8
|
-
|
|
9
|
-
// due to antd only have ar-EG locale, we need to convert ar to ar-EG
|
|
10
|
-
// refs: https://ant.design/docs/react/i18n
|
|
11
|
-
|
|
12
|
-
// And we don't want to handle it in `normalizeLocale` function
|
|
13
|
-
// because of other locale files are all `ar` not `ar-EG`
|
|
14
|
-
if (normalLang === 'ar') normalLang = 'ar-EG';
|
|
15
|
-
|
|
16
|
-
const { default: locale } = await import(`antd/locale/${normalLang.replace('-', '_')}.js`);
|
|
17
|
-
|
|
18
|
-
return locale;
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* Parse the browser language and return the fallback language
|
|
23
|
-
*/
|
|
24
|
-
export const parseBrowserLanguage = (headers: Headers, defaultLang: string = DEFAULT_LANG) => {
|
|
25
|
-
// if the default language is not 'en-US', just return the default language as fallback lang
|
|
26
|
-
if (defaultLang !== 'en-US') return defaultLang;
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* The arguments are as follows:
|
|
30
|
-
*
|
|
31
|
-
* 1) The HTTP accept-language header.
|
|
32
|
-
* 2) The available locales (they must contain the default locale).
|
|
33
|
-
* 3) The default locale.
|
|
34
|
-
*/
|
|
35
|
-
let browserLang: string = resolveAcceptLanguage(
|
|
36
|
-
headers.get('accept-language') || '',
|
|
37
|
-
// Invalid locale identifier 'ar'. A valid locale should follow the BCP 47 'language-country' format.
|
|
38
|
-
locales.map((locale) => (locale === 'ar' ? 'ar-EG' : locale)),
|
|
39
|
-
defaultLang,
|
|
40
|
-
);
|
|
41
|
-
|
|
42
|
-
// if match the ar-EG then fallback to ar
|
|
43
|
-
if (browserLang === 'ar-EG') browserLang = 'ar';
|
|
44
|
-
|
|
45
|
-
return browserLang;
|
|
46
|
-
};
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { optionalDevtools } from "zustand-utils";
|
|
2
|
-
import type { devtools as _devtools } from "zustand/middleware";
|
|
3
|
-
|
|
4
|
-
import { isDev } from "@/config/env";
|
|
5
|
-
|
|
6
|
-
export const createDevtools =
|
|
7
|
-
(name: string): typeof _devtools =>
|
|
8
|
-
(initializer) => {
|
|
9
|
-
let showDevtools = false;
|
|
10
|
-
|
|
11
|
-
// check url to show devtools
|
|
12
|
-
if (typeof window !== "undefined") {
|
|
13
|
-
const url = new URL(window.location.href);
|
|
14
|
-
const debug = url.searchParams.get("debug");
|
|
15
|
-
if (debug?.includes(name)) {
|
|
16
|
-
showDevtools = true;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
return optionalDevtools(showDevtools)(initializer, {
|
|
21
|
-
name: `LobeChat_${name}${isDev ? "_DEV" : ""}`,
|
|
22
|
-
});
|
|
23
|
-
};
|
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
import type { PersistStorage, StorageValue } from 'zustand/middleware';
|
|
2
|
-
|
|
3
|
-
import { createIndexedDB } from './indexedDB';
|
|
4
|
-
import { createKeyMapper } from './keyMapper';
|
|
5
|
-
import { createLocalStorage } from './localStorage';
|
|
6
|
-
import type { HyperStorageOptions } from './type';
|
|
7
|
-
import { creatUrlStorage } from './urlStorage';
|
|
8
|
-
|
|
9
|
-
export const createHyperStorage = <T extends object>(
|
|
10
|
-
options: HyperStorageOptions,
|
|
11
|
-
): PersistStorage<T> => {
|
|
12
|
-
const optionsObj = typeof options === 'function' ? options() : options;
|
|
13
|
-
|
|
14
|
-
const getLocalStorageConfig = () => {
|
|
15
|
-
if (optionsObj.localStorage === false) {
|
|
16
|
-
return { dbName: '', skipLocalStorage: true, useIndexedDB: false };
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
const useIndexedDB = optionsObj.localStorage?.mode === 'indexedDB';
|
|
20
|
-
const dbName = optionsObj.localStorage?.dbName || 'indexedDB';
|
|
21
|
-
|
|
22
|
-
return { dbName, skipLocalStorage: false, useIndexedDB };
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
const hasUrl = !!optionsObj.url;
|
|
26
|
-
|
|
27
|
-
const { skipLocalStorage, useIndexedDB, dbName } = getLocalStorageConfig();
|
|
28
|
-
|
|
29
|
-
const { mapStateKeyToStorageKey, getStateKeyFromStorageKey } =
|
|
30
|
-
createKeyMapper(optionsObj);
|
|
31
|
-
|
|
32
|
-
const indexedDB = createIndexedDB(dbName);
|
|
33
|
-
const localStorage = createLocalStorage();
|
|
34
|
-
const urlStorage = creatUrlStorage(optionsObj.url?.mode);
|
|
35
|
-
return {
|
|
36
|
-
getItem: async (name): Promise<StorageValue<T>> => {
|
|
37
|
-
const state: any = {};
|
|
38
|
-
let version: number | undefined;
|
|
39
|
-
|
|
40
|
-
// ============== 处理 Local Storage ============== //
|
|
41
|
-
if (!skipLocalStorage) {
|
|
42
|
-
let localState: StorageValue<T> | undefined;
|
|
43
|
-
|
|
44
|
-
// 如果使用 indexedDB,优先从 indexedDB 中获取
|
|
45
|
-
if (useIndexedDB) {
|
|
46
|
-
localState = await indexedDB.getItem(name);
|
|
47
|
-
}
|
|
48
|
-
// 如果 indexedDB 中不存在,则再试试 localStorage
|
|
49
|
-
if (!localState) localState = localStorage.getItem(name);
|
|
50
|
-
|
|
51
|
-
if (localState) {
|
|
52
|
-
version = localState.version;
|
|
53
|
-
for (const [k, v] of Object.entries(localState.state)) {
|
|
54
|
-
const key = getStateKeyFromStorageKey(k, 'localStorage');
|
|
55
|
-
if (key) state[key] = v;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
// ============== 处理 URL Storage ============== //
|
|
61
|
-
// 不从 URL 中获取 version,由于 url 状态是临时态 不作为版本控制的依据
|
|
62
|
-
if (hasUrl) {
|
|
63
|
-
const urlState = urlStorage.getItem();
|
|
64
|
-
|
|
65
|
-
if (urlState) {
|
|
66
|
-
for (const [k, v] of Object.entries(urlState.state)) {
|
|
67
|
-
const key = getStateKeyFromStorageKey(k, 'url');
|
|
68
|
-
// 当存在 UrlSelector 逻辑,且 key 有效时,才将状态加入终态 state
|
|
69
|
-
if (hasUrl && key) {
|
|
70
|
-
state[key] = v;
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
return { state, version };
|
|
77
|
-
},
|
|
78
|
-
removeItem: async key => {
|
|
79
|
-
// ============== 处理 Local Storage ============== //
|
|
80
|
-
if (!skipLocalStorage) {
|
|
81
|
-
if (useIndexedDB) {
|
|
82
|
-
await indexedDB.removeItem(key);
|
|
83
|
-
} else {
|
|
84
|
-
localStorage.removeItem(key);
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
// ============== 处理 URL Storage ============== //
|
|
89
|
-
if (hasUrl) {
|
|
90
|
-
const storageKey = getStateKeyFromStorageKey(key, 'url');
|
|
91
|
-
|
|
92
|
-
urlStorage.removeItem(storageKey);
|
|
93
|
-
}
|
|
94
|
-
},
|
|
95
|
-
|
|
96
|
-
setItem: async (name, newValue) => {
|
|
97
|
-
// ============== 处理 Local Storage ============== //
|
|
98
|
-
const localState: Record<string, any> = {};
|
|
99
|
-
for (const [k, v] of Object.entries(newValue.state)) {
|
|
100
|
-
const localKey = mapStateKeyToStorageKey(k, 'localStorage');
|
|
101
|
-
if (localKey) localState[localKey] = v;
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
if (!skipLocalStorage) {
|
|
105
|
-
if (useIndexedDB) {
|
|
106
|
-
await indexedDB.setItem(name, localState, newValue.version);
|
|
107
|
-
} else {
|
|
108
|
-
localStorage.setItem(name, localState, newValue.version);
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
// ============== 处理 URL Storage ============== //
|
|
113
|
-
if (hasUrl) {
|
|
114
|
-
// 转换 key 为目标 key
|
|
115
|
-
const finalEntries = Object.entries(newValue.state)
|
|
116
|
-
.map(([k, v]) => {
|
|
117
|
-
const urlKey = mapStateKeyToStorageKey(k, 'url');
|
|
118
|
-
if (!urlKey) return undefined;
|
|
119
|
-
return [urlKey, v];
|
|
120
|
-
})
|
|
121
|
-
.filter(Boolean) as [string, any][];
|
|
122
|
-
|
|
123
|
-
urlStorage.setItem(name, Object.fromEntries(finalEntries));
|
|
124
|
-
}
|
|
125
|
-
},
|
|
126
|
-
};
|
|
127
|
-
};
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { createStore, delMany, getMany, setMany } from 'idb-keyval';
|
|
2
|
-
import type { StorageValue } from 'zustand/middleware';
|
|
3
|
-
|
|
4
|
-
export const createIndexedDB = <State>(dbName = 'indexedDB') => ({
|
|
5
|
-
getItem: async <T extends State>(
|
|
6
|
-
name: string,
|
|
7
|
-
): Promise<StorageValue<T> | undefined> => {
|
|
8
|
-
const [version, state] = await getMany(
|
|
9
|
-
['version', 'state'],
|
|
10
|
-
createStore(dbName, name),
|
|
11
|
-
);
|
|
12
|
-
|
|
13
|
-
if (!state) return undefined;
|
|
14
|
-
|
|
15
|
-
return { state, version };
|
|
16
|
-
},
|
|
17
|
-
removeItem: async (name: string) => {
|
|
18
|
-
await delMany(['version', 'state'], createStore(dbName, name));
|
|
19
|
-
},
|
|
20
|
-
setItem: async (name: string, state: any, version: number | undefined) => {
|
|
21
|
-
const store = createStore(dbName, name);
|
|
22
|
-
|
|
23
|
-
await setMany(
|
|
24
|
-
[
|
|
25
|
-
['version', version],
|
|
26
|
-
['state', state],
|
|
27
|
-
],
|
|
28
|
-
store,
|
|
29
|
-
);
|
|
30
|
-
},
|
|
31
|
-
});
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import type { HyperStorageOptionsObj } from './type';
|
|
2
|
-
|
|
3
|
-
export const createKeyMapper = (options: HyperStorageOptionsObj) => {
|
|
4
|
-
const mapStateKeyToStorageKey = (
|
|
5
|
-
key: string,
|
|
6
|
-
mode: keyof HyperStorageOptionsObj = 'localStorage',
|
|
7
|
-
) => {
|
|
8
|
-
const media = options[mode];
|
|
9
|
-
if (media === false) return key;
|
|
10
|
-
|
|
11
|
-
const selectors = media?.selectors;
|
|
12
|
-
if (!selectors) return key;
|
|
13
|
-
|
|
14
|
-
let storageKey: string | undefined;
|
|
15
|
-
|
|
16
|
-
for (const selector of selectors) {
|
|
17
|
-
if (typeof selector === 'string') {
|
|
18
|
-
if (selector === key) storageKey = key;
|
|
19
|
-
} else {
|
|
20
|
-
if (selector[key]) storageKey = selector[key];
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
return storageKey;
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
const getStateKeyFromStorageKey = (
|
|
28
|
-
key: string,
|
|
29
|
-
mode: keyof HyperStorageOptionsObj = 'localStorage',
|
|
30
|
-
) => {
|
|
31
|
-
const media = options[mode];
|
|
32
|
-
if (media === false) return key;
|
|
33
|
-
|
|
34
|
-
const selectors = media?.selectors;
|
|
35
|
-
if (!selectors) return key;
|
|
36
|
-
|
|
37
|
-
let stateKey: string | undefined;
|
|
38
|
-
|
|
39
|
-
for (const item of selectors) {
|
|
40
|
-
// 对象如果是 字符串,直接返回该 item key
|
|
41
|
-
if (typeof item === 'string') {
|
|
42
|
-
if (item === key) stateKey = key;
|
|
43
|
-
} else {
|
|
44
|
-
for (const [k, v] of Object.entries(item)) {
|
|
45
|
-
if (v === key) stateKey = k;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
return stateKey;
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
return {
|
|
54
|
-
getStateKeyFromStorageKey,
|
|
55
|
-
mapStateKeyToStorageKey,
|
|
56
|
-
};
|
|
57
|
-
};
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import type { StorageValue } from 'zustand/middleware';
|
|
2
|
-
|
|
3
|
-
export const createLocalStorage = <State>() => ({
|
|
4
|
-
getItem: <T extends State>(name: string): StorageValue<T> | undefined => {
|
|
5
|
-
if (!global.localStorage) return undefined;
|
|
6
|
-
const string = localStorage.getItem(name);
|
|
7
|
-
|
|
8
|
-
if (string) return JSON.parse(string) as StorageValue<T>;
|
|
9
|
-
|
|
10
|
-
return undefined;
|
|
11
|
-
},
|
|
12
|
-
removeItem: (name: string) => {
|
|
13
|
-
if (global.localStorage) localStorage.removeItem(name);
|
|
14
|
-
},
|
|
15
|
-
setItem: <T extends State>(
|
|
16
|
-
name: string,
|
|
17
|
-
state: T,
|
|
18
|
-
version: number | undefined,
|
|
19
|
-
) => {
|
|
20
|
-
if (global.localStorage)
|
|
21
|
-
localStorage.setItem(name, JSON.stringify({ state, version }));
|
|
22
|
-
},
|
|
23
|
-
});
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
export type StorageSelector = string | Record<string, string>;
|
|
2
|
-
|
|
3
|
-
export interface LocalStorageOptions {
|
|
4
|
-
dbName?: string;
|
|
5
|
-
/**
|
|
6
|
-
* @default 'localStorage'
|
|
7
|
-
*/
|
|
8
|
-
mode?: 'indexedDB' | 'localStorage';
|
|
9
|
-
selectors: StorageSelector[];
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
export type HyperStorageOptionsObj = {
|
|
13
|
-
localStorage?: LocalStorageOptions | false;
|
|
14
|
-
url?: {
|
|
15
|
-
/**
|
|
16
|
-
* @default 'hash'
|
|
17
|
-
*/
|
|
18
|
-
mode?: 'hash' | 'search';
|
|
19
|
-
selectors: StorageSelector[];
|
|
20
|
-
};
|
|
21
|
-
};
|
|
22
|
-
|
|
23
|
-
export type HyperStorageOptionsFn = () => HyperStorageOptionsObj;
|
|
24
|
-
|
|
25
|
-
export type HyperStorageOptions =
|
|
26
|
-
| HyperStorageOptionsObj
|
|
27
|
-
| HyperStorageOptionsFn;
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import { isEmpty } from 'lodash-es';
|
|
2
|
-
import type { StorageValue } from 'zustand/middleware';
|
|
3
|
-
|
|
4
|
-
interface UrlSearchHelper {
|
|
5
|
-
getUrlSearch: () => string;
|
|
6
|
-
setUrlSearch: (params: URLSearchParams) => void;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
const createUrlSearch = (mode: 'search' | 'hash' = 'hash'): UrlSearchHelper => {
|
|
10
|
-
if (mode === 'hash')
|
|
11
|
-
return {
|
|
12
|
-
getUrlSearch: () => location.hash.slice(1),
|
|
13
|
-
setUrlSearch: (params: URLSearchParams) => {
|
|
14
|
-
location.hash = params.toString();
|
|
15
|
-
},
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
return {
|
|
19
|
-
getUrlSearch: () => location.search.slice(1),
|
|
20
|
-
setUrlSearch: (params: URLSearchParams) => {
|
|
21
|
-
if (params.size === 0) return;
|
|
22
|
-
|
|
23
|
-
history.replaceState({}, '', `?${params.toString()}`);
|
|
24
|
-
},
|
|
25
|
-
};
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
export const creatUrlStorage = <State extends object>(
|
|
29
|
-
mode: 'hash' | 'search' = 'hash',
|
|
30
|
-
) => {
|
|
31
|
-
const { setUrlSearch, getUrlSearch } = createUrlSearch(mode);
|
|
32
|
-
|
|
33
|
-
return {
|
|
34
|
-
getItem: <T extends State>(): StorageValue<T> | undefined => {
|
|
35
|
-
const searchParameters = new URLSearchParams(getUrlSearch());
|
|
36
|
-
|
|
37
|
-
if (searchParameters.size === 0) return undefined;
|
|
38
|
-
|
|
39
|
-
const state = Object.fromEntries(searchParameters.entries()) as T;
|
|
40
|
-
|
|
41
|
-
return { state };
|
|
42
|
-
},
|
|
43
|
-
removeItem: (key?: string) => {
|
|
44
|
-
const searchParameters = new URLSearchParams(getUrlSearch());
|
|
45
|
-
if (key) searchParameters.delete(key);
|
|
46
|
-
|
|
47
|
-
setUrlSearch(searchParameters);
|
|
48
|
-
},
|
|
49
|
-
setItem: <T extends State>(name: string, state: T) => {
|
|
50
|
-
const searchParameters = new URLSearchParams(getUrlSearch());
|
|
51
|
-
|
|
52
|
-
for (const [urlKey, v] of Object.entries(state)) {
|
|
53
|
-
switch (typeof v) {
|
|
54
|
-
case 'boolean': {
|
|
55
|
-
searchParameters.set(urlKey, (v ? 1 : 0).toString());
|
|
56
|
-
break;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
case 'bigint':
|
|
60
|
-
case 'number': {
|
|
61
|
-
searchParameters.set(urlKey, v.toString());
|
|
62
|
-
break;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
case 'string': {
|
|
66
|
-
searchParameters.set(urlKey, v);
|
|
67
|
-
break;
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
case 'object': {
|
|
71
|
-
if (isEmpty(v)) {
|
|
72
|
-
searchParameters.delete(urlKey);
|
|
73
|
-
continue;
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
searchParameters.set(urlKey, JSON.stringify(v));
|
|
77
|
-
break;
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
setUrlSearch(searchParameters);
|
|
83
|
-
},
|
|
84
|
-
};
|
|
85
|
-
};
|