@4399ywkf/cli 0.0.22 → 1.0.3
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/cli.js +19 -637
- package/dist/templates/404/index.tsx +5 -0
- package/dist/templates/404/page.tsx +27 -0
- package/dist/templates/404.png +0 -0
- package/dist/templates/404.tsx +5 -0
- package/dist/templates/BaseLayout.tsx +15 -0
- package/dist/templates/ColorScales/ScaleRow.tsx +74 -0
- package/dist/templates/ColorScales/index.md +168 -0
- package/dist/templates/ColorScales/index.tsx +70 -0
- package/dist/templates/ColorScales/style.ts +42 -0
- package/dist/templates/ConfigProvider/index.md +63 -0
- package/dist/templates/ConfigProvider/index.tsx +42 -0
- package/dist/templates/ContentFormWrapper.tsx +11 -0
- package/dist/templates/ContentWrapper.module.less +137 -0
- package/dist/templates/ContentWrapper.tsx +13 -0
- package/dist/templates/ErrorBoundary/index.tsx +506 -0
- package/dist/templates/FontLoader/index.md +12 -0
- package/dist/templates/FontLoader/index.tsx +41 -0
- package/dist/templates/GlobalStyle/antdOverride.ts +89 -0
- package/dist/templates/GlobalStyle/global.ts +61 -0
- package/dist/templates/GlobalStyle/index.ts +10 -0
- package/dist/templates/Loading/__tests__/Loading.test.tsx +23 -0
- package/dist/templates/Loading/index.tsx +21 -0
- package/dist/templates/Loading.test.tsx +23 -0
- package/dist/templates/Locale.tsx +89 -0
- package/dist/templates/MainContentWrap.tsx +68 -0
- package/dist/templates/ManualSlave/ManualSlavePage.module.less +25 -0
- package/dist/templates/ManualSlave/ManualSlavePage.tsx +45 -0
- package/dist/templates/ManualSlave/index.ts +1 -0
- package/dist/templates/ManualSlavePage.module.less +25 -0
- package/dist/templates/ManualSlavePage.tsx +45 -0
- package/dist/templates/Meta.tsx +75 -0
- package/dist/templates/RequireAuth/RequireAuth.tsx +76 -0
- package/dist/templates/RequireAuth/index.ts +1 -0
- package/dist/templates/RequireAuth.tsx +76 -0
- package/dist/templates/RoutesConventionsRspackPlugin.js +100 -0
- package/dist/templates/ScaleRow.tsx +74 -0
- package/dist/templates/ThemeContext.tsx +132 -0
- package/dist/templates/ThemeProvider/GlobalStyle/antdOverride.ts +89 -0
- package/dist/templates/ThemeProvider/GlobalStyle/global.ts +61 -0
- package/dist/templates/ThemeProvider/GlobalStyle/index.ts +10 -0
- package/dist/templates/ThemeProvider/Meta.tsx +75 -0
- package/dist/templates/ThemeProvider/ThemeProvider.tsx +109 -0
- package/dist/templates/ThemeProvider/index.md +69 -0
- package/dist/templates/ThemeProvider/index.ts +3 -0
- package/dist/templates/ThemeProvider/type.ts +28 -0
- package/dist/templates/ThemeProvider.tsx +109 -0
- package/dist/templates/__mocks__/fileMock.js +1 -0
- package/dist/templates/__mocks__/styleMock.ts +1 -0
- package/dist/templates/__tests__/Loading.test.tsx +23 -0
- package/dist/templates/__tests__/example.test.ts +7 -0
- package/dist/templates/actions.ts +23 -0
- package/dist/templates/algorithms/darkAlgorithm.ts +47 -0
- package/dist/templates/algorithms/lightAlgorithm.ts +44 -0
- package/dist/templates/antdOverride.ts +89 -0
- package/dist/templates/antdTheme.ts +62 -0
- package/dist/templates/api.ts +5 -0
- package/dist/templates/app/.browserslistrc +5 -0
- package/dist/templates/app/.gitignore.tpl +30 -0
- package/dist/templates/app/.npmrc.tpl +2 -0
- package/dist/templates/app/.nvmrc +1 -0
- package/dist/templates/app/.vscode/settings.json +88 -0
- package/dist/templates/app/config/env/.env.development +5 -0
- package/dist/templates/app/config/env/.env.production +2 -0
- package/dist/templates/app/config/env/.env.public.tpl +31 -0
- package/dist/templates/app/config/jwt/index.ts +31 -0
- package/dist/templates/app/config/public/404.png +0 -0
- package/dist/templates/app/config/public/favicon.ico +0 -0
- package/dist/templates/app/config/public/images/banner_market_modal.webp +0 -0
- package/dist/templates/app/config/public/images/chatmode_chat_dark.webp +0 -0
- package/dist/templates/app/config/public/images/chatmode_chat_light.webp +0 -0
- package/dist/templates/app/config/public/images/chatmode_docs_dark.webp +0 -0
- package/dist/templates/app/config/public/images/chatmode_docs_light.webp +0 -0
- package/dist/templates/app/config/public/images/empty_topic_dark.webp +0 -0
- package/dist/templates/app/config/public/images/empty_topic_light.webp +0 -0
- package/dist/templates/app/config/public/images/screenshot_background.webp +0 -0
- package/dist/templates/app/config/public/images/theme_auto.webp +0 -0
- package/dist/templates/app/config/public/images/theme_dark.webp +0 -0
- package/dist/templates/app/config/public/images/theme_light.webp +0 -0
- package/dist/templates/app/config/public/index.html +29 -0
- package/dist/templates/app/config/request/index.ts +174 -0
- package/dist/templates/app/config/router/index.tsx +26 -0
- package/dist/templates/app/config/rspack/paths.js +12 -0
- package/dist/templates/app/config/rspack/plugins/RoutesConventionsRspackPlugin.js +100 -0
- package/dist/templates/app/config/rspack/rspack.config.mjs +186 -0
- package/dist/templates/app/config/rspack/rspack.dev.mjs +219 -0
- package/dist/templates/app/config/rspack/rspack.prod.mjs +254 -0
- package/dist/templates/app/config/sentry/sentry.config.ts +188 -0
- package/dist/templates/app/locales/en-US/common.json +74 -0
- package/dist/templates/app/locales/en-US/generate.json +71 -0
- package/dist/templates/app/locales/en-US/nav.json +10 -0
- package/dist/templates/app/locales/en-US/overview.json +6 -0
- package/dist/templates/app/locales/en-US/retopology.json +4 -0
- package/dist/templates/app/locales/en-US/rigging.json +21 -0
- package/dist/templates/app/locales/en-US/segmentation.json +4 -0
- package/dist/templates/app/locales/en-US/stylization.json +11 -0
- package/dist/templates/app/locales/en-US/texture.json +4 -0
- package/dist/templates/app/locales/en-US/threeModel.json +9 -0
- package/dist/templates/app/locales/en-US/toolbox.json +11 -0
- package/dist/templates/app/locales/zh-CN/common.json +74 -0
- package/dist/templates/app/locales/zh-CN/generate.json +71 -0
- package/dist/templates/app/locales/zh-CN/nav.json +10 -0
- package/dist/templates/app/locales/zh-CN/overview.json +6 -0
- package/dist/templates/app/locales/zh-CN/retopology.json +4 -0
- package/dist/templates/app/locales/zh-CN/rigging.json +21 -0
- package/dist/templates/app/locales/zh-CN/segmentation.json +4 -0
- package/dist/templates/app/locales/zh-CN/stylization.json +11 -0
- package/dist/templates/app/locales/zh-CN/texture.json +4 -0
- package/dist/templates/app/locales/zh-CN/threeModel.json +9 -0
- package/dist/templates/app/locales/zh-CN/toolbox.json +11 -0
- package/dist/templates/app/package.json.tpl +145 -0
- package/dist/templates/app/postcss.config.js +6 -0
- package/dist/templates/app/react-app-env.d.ts +14 -0
- package/dist/templates/app/scripts/convert-locales-to-json.js +47 -0
- package/dist/templates/app/src/__mocks__/fileMock.js +1 -0
- package/dist/templates/app/src/__mocks__/styleMock.ts +1 -0
- package/dist/templates/app/src/color/ColorScales/ScaleRow.tsx +74 -0
- package/dist/templates/app/src/color/ColorScales/index.md +168 -0
- package/dist/templates/app/src/color/ColorScales/index.tsx +70 -0
- package/dist/templates/app/src/color/ColorScales/style.ts +42 -0
- package/dist/templates/app/src/color/colors/blue.ts +66 -0
- package/dist/templates/app/src/color/colors/cyan.ts +66 -0
- package/dist/templates/app/src/color/colors/geekblue.ts +66 -0
- package/dist/templates/app/src/color/colors/gold.ts +66 -0
- package/dist/templates/app/src/color/colors/gray.ts +66 -0
- package/dist/templates/app/src/color/colors/green.ts +66 -0
- package/dist/templates/app/src/color/colors/index.ts +66 -0
- package/dist/templates/app/src/color/colors/lime.ts +66 -0
- package/dist/templates/app/src/color/colors/magenta.ts +66 -0
- package/dist/templates/app/src/color/colors/orange.ts +66 -0
- package/dist/templates/app/src/color/colors/primary.ts +66 -0
- package/dist/templates/app/src/color/colors/purple.ts +66 -0
- package/dist/templates/app/src/color/colors/red.ts +66 -0
- package/dist/templates/app/src/color/colors/volcano.ts +66 -0
- package/dist/templates/app/src/color/colors/yellow.ts +66 -0
- package/dist/templates/app/src/color/index.ts +4 -0
- package/dist/templates/app/src/color/neutrals/index.ts +30 -0
- package/dist/templates/app/src/color/neutrals/mauve.ts +66 -0
- package/dist/templates/app/src/color/neutrals/olive.ts +66 -0
- package/dist/templates/app/src/color/neutrals/sage.ts +66 -0
- package/dist/templates/app/src/color/neutrals/sand.ts +66 -0
- package/dist/templates/app/src/color/neutrals/slate.ts +66 -0
- package/dist/templates/app/src/color/types.ts +21 -0
- package/dist/templates/app/src/components/ConfigProvider/index.md +63 -0
- package/dist/templates/app/src/components/ConfigProvider/index.tsx +42 -0
- package/dist/templates/app/src/components/ErrorBoundary/index.tsx +506 -0
- package/dist/templates/app/src/components/FontLoader/index.md +12 -0
- package/dist/templates/app/src/components/FontLoader/index.tsx +41 -0
- package/dist/templates/app/src/components/Loading/__tests__/Loading.test.tsx +23 -0
- package/dist/templates/app/src/components/Loading/index.tsx +21 -0
- package/dist/templates/app/src/components/ManualSlave/ManualSlavePage.module.less +25 -0
- package/dist/templates/app/src/components/ManualSlave/ManualSlavePage.tsx +45 -0
- package/dist/templates/app/src/components/ManualSlave/index.ts +1 -0
- package/dist/templates/app/src/components/RequireAuth/RequireAuth.tsx +76 -0
- package/dist/templates/app/src/components/RequireAuth/index.ts +1 -0
- package/dist/templates/app/src/components/ThemeProvider/GlobalStyle/antdOverride.ts +89 -0
- package/dist/templates/app/src/components/ThemeProvider/GlobalStyle/global.ts +61 -0
- package/dist/templates/app/src/components/ThemeProvider/GlobalStyle/index.ts +10 -0
- package/dist/templates/app/src/components/ThemeProvider/Meta.tsx +75 -0
- package/dist/templates/app/src/components/ThemeProvider/ThemeProvider.tsx +109 -0
- package/dist/templates/app/src/components/ThemeProvider/index.md +69 -0
- package/dist/templates/app/src/components/ThemeProvider/index.ts +3 -0
- package/dist/templates/app/src/components/ThemeProvider/type.ts +28 -0
- package/dist/templates/app/src/const/constants.ts +0 -0
- package/dist/templates/app/src/const/locale.ts +9 -0
- package/dist/templates/app/src/const/system.ts +1 -0
- package/dist/templates/app/src/const/theme.ts +5 -0
- package/dist/templates/app/src/const/url.ts +1 -0
- package/dist/templates/app/src/hooks/useRouteTitle.tsx +36 -0
- package/dist/templates/app/src/hooks/useSentry.ts +92 -0
- package/dist/templates/app/src/index.css +2 -0
- package/dist/templates/app/src/index.tsx +56 -0
- package/dist/templates/app/src/layout/BaseLayout.tsx +15 -0
- package/dist/templates/app/src/layout/ContentFormWrapper.tsx +11 -0
- package/dist/templates/app/src/layout/ContentWrapper.module.less +137 -0
- package/dist/templates/app/src/layout/ContentWrapper.tsx +13 -0
- package/dist/templates/app/src/layout/Locale.tsx +89 -0
- package/dist/templates/app/src/layout/MainContentWrap.tsx +68 -0
- package/dist/templates/app/src/layout/ThemeContext.tsx +132 -0
- package/dist/templates/app/src/loading.tsx +52 -0
- package/dist/templates/app/src/locales/create.ts +56 -0
- package/dist/templates/app/src/locales/default/chat.ts +455 -0
- package/dist/templates/app/src/locales/default/index.ts +7 -0
- package/dist/templates/app/src/locales/resources.ts +104 -0
- package/dist/templates/app/src/pages/404/index.tsx +5 -0
- package/dist/templates/app/src/pages/404/page.tsx +27 -0
- package/dist/templates/app/src/pages/404.tsx +5 -0
- package/dist/templates/app/src/pages/base/index.tsx +32 -0
- package/dist/templates/app/src/pages/base/layout.tsx +6 -0
- package/dist/templates/app/src/pages/base/page.tsx +25 -0
- package/dist/templates/app/src/pages/index.css +282 -0
- package/dist/templates/app/src/pages/index.tsx +5 -0
- package/dist/templates/app/src/routes.tsx +18 -0
- package/dist/templates/app/src/setupTests.ts +39 -0
- package/dist/templates/app/src/styles/antdOverride.ts +24 -0
- package/dist/templates/app/src/styles/customTheme.ts +70 -0
- package/dist/templates/app/src/styles/global.ts +53 -0
- package/dist/templates/app/src/styles/highlighter.ts +34 -0
- package/dist/templates/app/src/styles/index.ts +23 -0
- package/dist/templates/app/src/styles/mermaid.ts +7 -0
- package/dist/templates/app/src/styles/text.ts +10 -0
- package/dist/templates/app/src/styles/theme/algorithms/darkAlgorithm.ts +47 -0
- package/dist/templates/app/src/styles/theme/algorithms/lightAlgorithm.ts +44 -0
- package/dist/templates/app/src/styles/theme/antdTheme.ts +62 -0
- package/dist/templates/app/src/styles/theme/customStylish.ts +189 -0
- package/dist/templates/app/src/styles/theme/customToken.ts +93 -0
- package/dist/templates/app/src/styles/theme/generateColorPalette.ts +59 -0
- package/dist/templates/app/src/styles/theme/token/base.ts +16 -0
- package/dist/templates/app/src/styles/theme/token/dark.ts +60 -0
- package/dist/templates/app/src/styles/theme/token/light.ts +60 -0
- package/dist/templates/app/src/test-utils.tsx +18 -0
- package/dist/templates/app/src/types/customStylish.ts +20 -0
- package/dist/templates/app/src/types/customToken.ts +70 -0
- package/dist/templates/app/src/types/index.ts +21 -0
- package/dist/templates/app/src/types/routes.ts +70 -0
- package/dist/templates/app/src/utils/__tests__/example.test.ts +7 -0
- package/dist/templates/app/src/utils/convert.ts +40 -0
- package/dist/templates/app/src/utils/cookie.ts +25 -0
- package/dist/templates/app/src/utils/copyToClipboard.ts +13 -0
- package/dist/templates/app/src/utils/difference.ts +26 -0
- package/dist/templates/app/src/utils/env.ts +3 -0
- package/dist/templates/app/src/utils/format.ts +21 -0
- package/dist/templates/app/src/utils/genCdnUrl.ts +30 -0
- package/dist/templates/app/src/utils/getMicroApp.ts +39 -0
- package/dist/templates/app/src/utils/index.ts +1 -0
- package/dist/templates/app/src/utils/locale.ts +46 -0
- package/dist/templates/app/src/utils/sentry.ts +187 -0
- package/dist/templates/app/src/utils/sentryDecorators.ts +34 -0
- package/dist/templates/app/src/utils/updateVersion.ts +186 -0
- package/dist/templates/app/store/auth/index.tsx +82 -0
- package/dist/templates/app/store/auth/indexApi.tsx +11 -0
- package/dist/templates/app/store/global/index.tsx +133 -0
- package/dist/templates/app/store/global/indexApi.tsx +19 -0
- package/dist/templates/app/store/global/types.ts +62 -0
- package/dist/templates/app/store/middleware/createDevtools.ts +23 -0
- package/dist/templates/app/store/middleware/createHyperStorage/index.ts +127 -0
- package/dist/templates/app/store/middleware/createHyperStorage/indexedDB.ts +31 -0
- package/dist/templates/app/store/middleware/createHyperStorage/keyMapper.ts +57 -0
- package/dist/templates/app/store/middleware/createHyperStorage/localStorage.ts +23 -0
- package/dist/templates/app/store/middleware/createHyperStorage/type.ts +27 -0
- package/dist/templates/app/store/middleware/createHyperStorage/urlStorage.ts +85 -0
- package/dist/templates/app/store/theme/index.ts +25 -0
- package/dist/templates/app/store/types.ts +83 -0
- package/dist/templates/app/store/user/index.tsx +1 -0
- package/dist/templates/app/store/user/indexApi.tsx +5 -0
- package/dist/templates/app/store/user/initialState.ts +15 -0
- package/dist/templates/app/store/user/slices/profile/actions.ts +20 -0
- package/dist/templates/app/store/user/slices/profile/api.ts +5 -0
- package/dist/templates/app/store/user/slices/profile/initialState.ts +14 -0
- package/dist/templates/app/store/user/slices/settings/actions.ts +23 -0
- package/dist/templates/app/store/user/slices/settings/initialState.ts +32 -0
- package/dist/templates/app/store/user/store.ts +39 -0
- package/dist/templates/app/tailwind.config.js +13 -0
- package/dist/templates/app/tsconfig.json +27 -0
- package/dist/templates/app//347/277/273/350/257/221.md +9 -0
- package/dist/templates/auth/index.tsx +82 -0
- package/dist/templates/auth/indexApi.tsx +11 -0
- package/dist/templates/banner_market_modal.webp +0 -0
- package/dist/templates/base/index.tsx +32 -0
- package/dist/templates/base/layout.tsx +6 -0
- package/dist/templates/base/page.tsx +25 -0
- package/dist/templates/base.ts +16 -0
- package/dist/templates/blue.ts +66 -0
- package/dist/templates/chat.ts +455 -0
- 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/color/ColorScales/ScaleRow.tsx +74 -0
- package/dist/templates/color/ColorScales/index.md +168 -0
- package/dist/templates/color/ColorScales/index.tsx +70 -0
- package/dist/templates/color/ColorScales/style.ts +42 -0
- package/dist/templates/color/colors/blue.ts +66 -0
- package/dist/templates/color/colors/cyan.ts +66 -0
- package/dist/templates/color/colors/geekblue.ts +66 -0
- package/dist/templates/color/colors/gold.ts +66 -0
- package/dist/templates/color/colors/gray.ts +66 -0
- package/dist/templates/color/colors/green.ts +66 -0
- package/dist/templates/color/colors/index.ts +66 -0
- package/dist/templates/color/colors/lime.ts +66 -0
- package/dist/templates/color/colors/magenta.ts +66 -0
- package/dist/templates/color/colors/orange.ts +66 -0
- package/dist/templates/color/colors/primary.ts +66 -0
- package/dist/templates/color/colors/purple.ts +66 -0
- package/dist/templates/color/colors/red.ts +66 -0
- package/dist/templates/color/colors/volcano.ts +66 -0
- package/dist/templates/color/colors/yellow.ts +66 -0
- package/dist/templates/color/index.ts +4 -0
- package/dist/templates/color/neutrals/index.ts +30 -0
- package/dist/templates/color/neutrals/mauve.ts +66 -0
- package/dist/templates/color/neutrals/olive.ts +66 -0
- package/dist/templates/color/neutrals/sage.ts +66 -0
- package/dist/templates/color/neutrals/sand.ts +66 -0
- package/dist/templates/color/neutrals/slate.ts +66 -0
- package/dist/templates/color/types.ts +21 -0
- package/dist/templates/colors/blue.ts +66 -0
- package/dist/templates/colors/cyan.ts +66 -0
- package/dist/templates/colors/geekblue.ts +66 -0
- package/dist/templates/colors/gold.ts +66 -0
- package/dist/templates/colors/gray.ts +66 -0
- package/dist/templates/colors/green.ts +66 -0
- package/dist/templates/colors/index.ts +66 -0
- package/dist/templates/colors/lime.ts +66 -0
- package/dist/templates/colors/magenta.ts +66 -0
- package/dist/templates/colors/orange.ts +66 -0
- package/dist/templates/colors/primary.ts +66 -0
- package/dist/templates/colors/purple.ts +66 -0
- package/dist/templates/colors/red.ts +66 -0
- package/dist/templates/colors/volcano.ts +66 -0
- package/dist/templates/colors/yellow.ts +66 -0
- package/dist/templates/common.json +74 -0
- package/dist/templates/components/ConfigProvider/index.md +63 -0
- package/dist/templates/components/ConfigProvider/index.tsx +42 -0
- package/dist/templates/components/ErrorBoundary/index.tsx +506 -0
- package/dist/templates/components/FontLoader/index.md +12 -0
- package/dist/templates/components/FontLoader/index.tsx +41 -0
- package/dist/templates/components/Loading/__tests__/Loading.test.tsx +23 -0
- package/dist/templates/components/Loading/index.tsx +21 -0
- package/dist/templates/components/ManualSlave/ManualSlavePage.module.less +25 -0
- package/dist/templates/components/ManualSlave/ManualSlavePage.tsx +45 -0
- package/dist/templates/components/ManualSlave/index.ts +1 -0
- package/dist/templates/components/RequireAuth/RequireAuth.tsx +76 -0
- package/dist/templates/components/RequireAuth/index.ts +1 -0
- package/dist/templates/components/ThemeProvider/GlobalStyle/antdOverride.ts +89 -0
- package/dist/templates/components/ThemeProvider/GlobalStyle/global.ts +61 -0
- package/dist/templates/components/ThemeProvider/GlobalStyle/index.ts +10 -0
- package/dist/templates/components/ThemeProvider/Meta.tsx +75 -0
- package/dist/templates/components/ThemeProvider/ThemeProvider.tsx +109 -0
- package/dist/templates/components/ThemeProvider/index.md +69 -0
- package/dist/templates/components/ThemeProvider/index.ts +3 -0
- package/dist/templates/components/ThemeProvider/type.ts +28 -0
- package/dist/templates/config/env/.env.development +5 -0
- package/dist/templates/config/env/.env.production +2 -0
- package/dist/templates/config/env/.env.public.tpl +31 -0
- package/dist/templates/config/jwt/index.ts +31 -0
- package/dist/templates/config/public/404.png +0 -0
- package/dist/templates/config/public/favicon.ico +0 -0
- package/dist/templates/config/public/images/banner_market_modal.webp +0 -0
- package/dist/templates/config/public/images/chatmode_chat_dark.webp +0 -0
- package/dist/templates/config/public/images/chatmode_chat_light.webp +0 -0
- package/dist/templates/config/public/images/chatmode_docs_dark.webp +0 -0
- package/dist/templates/config/public/images/chatmode_docs_light.webp +0 -0
- package/dist/templates/config/public/images/empty_topic_dark.webp +0 -0
- package/dist/templates/config/public/images/empty_topic_light.webp +0 -0
- package/dist/templates/config/public/images/screenshot_background.webp +0 -0
- package/dist/templates/config/public/images/theme_auto.webp +0 -0
- package/dist/templates/config/public/images/theme_dark.webp +0 -0
- package/dist/templates/config/public/images/theme_light.webp +0 -0
- package/dist/templates/config/public/index.html +29 -0
- package/dist/templates/config/request/index.ts +174 -0
- package/dist/templates/config/router/index.tsx +26 -0
- package/dist/templates/config/rspack/paths.js +12 -0
- package/dist/templates/config/rspack/plugins/RoutesConventionsRspackPlugin.js +100 -0
- package/dist/templates/config/rspack/rspack.config.mjs +186 -0
- package/dist/templates/config/rspack/rspack.dev.mjs +219 -0
- package/dist/templates/config/rspack/rspack.prod.mjs +254 -0
- package/dist/templates/config/sentry/sentry.config.ts +188 -0
- package/dist/templates/const/constants.ts +0 -0
- package/dist/templates/const/locale.ts +9 -0
- package/dist/templates/const/system.ts +1 -0
- package/dist/templates/const/theme.ts +5 -0
- package/dist/templates/const/url.ts +1 -0
- package/dist/templates/constants.ts +0 -0
- package/dist/templates/convert-locales-to-json.js +47 -0
- package/dist/templates/convert.ts +40 -0
- package/dist/templates/cookie.ts +25 -0
- package/dist/templates/copyToClipboard.ts +13 -0
- package/dist/templates/create.ts +56 -0
- package/dist/templates/createDevtools.ts +23 -0
- package/dist/templates/createHyperStorage/index.ts +127 -0
- package/dist/templates/createHyperStorage/indexedDB.ts +31 -0
- package/dist/templates/createHyperStorage/keyMapper.ts +57 -0
- package/dist/templates/createHyperStorage/localStorage.ts +23 -0
- package/dist/templates/createHyperStorage/type.ts +27 -0
- package/dist/templates/createHyperStorage/urlStorage.ts +85 -0
- package/dist/templates/customStylish.ts +189 -0
- package/dist/templates/customTheme.ts +70 -0
- package/dist/templates/customToken.ts +93 -0
- package/dist/templates/cyan.ts +66 -0
- package/dist/templates/dark.ts +60 -0
- package/dist/templates/darkAlgorithm.ts +47 -0
- package/dist/templates/default/chat.ts +455 -0
- package/dist/templates/default/index.ts +7 -0
- package/dist/templates/difference.ts +26 -0
- package/dist/templates/empty_topic_dark.webp +0 -0
- package/dist/templates/empty_topic_light.webp +0 -0
- package/dist/templates/en-US/common.json +74 -0
- package/dist/templates/en-US/generate.json +71 -0
- package/dist/templates/en-US/nav.json +10 -0
- package/dist/templates/en-US/overview.json +6 -0
- package/dist/templates/en-US/retopology.json +4 -0
- package/dist/templates/en-US/rigging.json +21 -0
- package/dist/templates/en-US/segmentation.json +4 -0
- package/dist/templates/en-US/stylization.json +11 -0
- package/dist/templates/en-US/texture.json +4 -0
- package/dist/templates/en-US/threeModel.json +9 -0
- package/dist/templates/en-US/toolbox.json +11 -0
- package/dist/templates/env/.env.development +5 -0
- package/dist/templates/env/.env.production +2 -0
- package/dist/templates/env/.env.public.tpl +31 -0
- package/dist/templates/env.ts +3 -0
- package/dist/templates/example.test.ts +7 -0
- package/dist/templates/favicon.ico +0 -0
- package/dist/templates/fileMock.js +1 -0
- package/dist/templates/format.ts +21 -0
- package/dist/templates/geekblue.ts +66 -0
- package/dist/templates/genCdnUrl.ts +30 -0
- package/dist/templates/generate.json +71 -0
- package/dist/templates/generateColorPalette.ts +59 -0
- package/dist/templates/getMicroApp.ts +39 -0
- package/dist/templates/global/index.tsx +133 -0
- package/dist/templates/global/indexApi.tsx +19 -0
- package/dist/templates/global/types.ts +62 -0
- package/dist/templates/global.ts +61 -0
- package/dist/templates/gold.ts +66 -0
- package/dist/templates/gray.ts +66 -0
- package/dist/templates/green.ts +66 -0
- package/dist/templates/highlighter.ts +34 -0
- package/dist/templates/hooks/useRouteTitle.tsx +36 -0
- package/dist/templates/hooks/useSentry.ts +92 -0
- 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 +282 -0
- package/dist/templates/index.html +29 -0
- package/dist/templates/index.md +69 -0
- package/dist/templates/index.ts +10 -0
- package/dist/templates/index.tsx +32 -0
- package/dist/templates/indexApi.tsx +5 -0
- package/dist/templates/indexedDB.ts +31 -0
- package/dist/templates/initialState.ts +32 -0
- package/dist/templates/jwt/index.ts +31 -0
- package/dist/templates/keyMapper.ts +57 -0
- package/dist/templates/layout/BaseLayout.tsx +15 -0
- package/dist/templates/layout/ContentFormWrapper.tsx +11 -0
- package/dist/templates/layout/ContentWrapper.module.less +137 -0
- package/dist/templates/layout/ContentWrapper.tsx +13 -0
- package/dist/templates/layout/Locale.tsx +89 -0
- package/dist/templates/layout/MainContentWrap.tsx +68 -0
- package/dist/templates/layout/ThemeContext.tsx +132 -0
- package/dist/templates/layout.tsx +6 -0
- package/dist/templates/light.ts +60 -0
- package/dist/templates/lightAlgorithm.ts +44 -0
- package/dist/templates/lime.ts +66 -0
- package/dist/templates/loading.tsx +52 -0
- package/dist/templates/localStorage.ts +23 -0
- package/dist/templates/locale.ts +46 -0
- package/dist/templates/locales/create.ts +56 -0
- package/dist/templates/locales/default/chat.ts +455 -0
- package/dist/templates/locales/default/index.ts +7 -0
- package/dist/templates/locales/en-US/common.json +74 -0
- package/dist/templates/locales/en-US/generate.json +71 -0
- package/dist/templates/locales/en-US/nav.json +10 -0
- package/dist/templates/locales/en-US/overview.json +6 -0
- package/dist/templates/locales/en-US/retopology.json +4 -0
- package/dist/templates/locales/en-US/rigging.json +21 -0
- package/dist/templates/locales/en-US/segmentation.json +4 -0
- package/dist/templates/locales/en-US/stylization.json +11 -0
- package/dist/templates/locales/en-US/texture.json +4 -0
- package/dist/templates/locales/en-US/threeModel.json +9 -0
- package/dist/templates/locales/en-US/toolbox.json +11 -0
- package/dist/templates/locales/resources.ts +104 -0
- package/dist/templates/locales/zh-CN/common.json +74 -0
- package/dist/templates/locales/zh-CN/generate.json +71 -0
- package/dist/templates/locales/zh-CN/nav.json +10 -0
- package/dist/templates/locales/zh-CN/overview.json +6 -0
- package/dist/templates/locales/zh-CN/retopology.json +4 -0
- package/dist/templates/locales/zh-CN/rigging.json +21 -0
- package/dist/templates/locales/zh-CN/segmentation.json +4 -0
- package/dist/templates/locales/zh-CN/stylization.json +11 -0
- package/dist/templates/locales/zh-CN/texture.json +4 -0
- package/dist/templates/locales/zh-CN/threeModel.json +9 -0
- package/dist/templates/locales/zh-CN/toolbox.json +11 -0
- package/dist/templates/magenta.ts +66 -0
- package/dist/templates/mauve.ts +66 -0
- package/dist/templates/mermaid.ts +7 -0
- package/dist/templates/middleware/createDevtools.ts +23 -0
- package/dist/templates/middleware/createHyperStorage/index.ts +127 -0
- package/dist/templates/middleware/createHyperStorage/indexedDB.ts +31 -0
- package/dist/templates/middleware/createHyperStorage/keyMapper.ts +57 -0
- package/dist/templates/middleware/createHyperStorage/localStorage.ts +23 -0
- package/dist/templates/middleware/createHyperStorage/type.ts +27 -0
- package/dist/templates/middleware/createHyperStorage/urlStorage.ts +85 -0
- package/dist/templates/nav.json +10 -0
- package/dist/templates/neutrals/index.ts +30 -0
- package/dist/templates/neutrals/mauve.ts +66 -0
- package/dist/templates/neutrals/olive.ts +66 -0
- package/dist/templates/neutrals/sage.ts +66 -0
- package/dist/templates/neutrals/sand.ts +66 -0
- package/dist/templates/neutrals/slate.ts +66 -0
- package/dist/templates/olive.ts +66 -0
- package/dist/templates/orange.ts +66 -0
- package/dist/templates/overview.json +6 -0
- package/dist/templates/package.json.tpl +145 -0
- package/dist/templates/page.tsx +25 -0
- package/dist/templates/pages/404/index.tsx +5 -0
- package/dist/templates/pages/404/page.tsx +27 -0
- package/dist/templates/pages/404.tsx +5 -0
- package/dist/templates/pages/base/index.tsx +32 -0
- package/dist/templates/pages/base/layout.tsx +6 -0
- package/dist/templates/pages/base/page.tsx +25 -0
- package/dist/templates/pages/index.css +282 -0
- package/dist/templates/pages/index.tsx +5 -0
- package/dist/templates/paths.js +12 -0
- package/dist/templates/plugins/RoutesConventionsRspackPlugin.js +100 -0
- package/dist/templates/postcss.config.js +6 -0
- package/dist/templates/primary.ts +66 -0
- package/dist/templates/profile/actions.ts +20 -0
- package/dist/templates/profile/api.ts +5 -0
- package/dist/templates/profile/initialState.ts +14 -0
- package/dist/templates/public/404.png +0 -0
- package/dist/templates/public/favicon.ico +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 +29 -0
- package/dist/templates/purple.ts +66 -0
- package/dist/templates/react-app-env.d.ts +14 -0
- package/dist/templates/red.ts +66 -0
- package/dist/templates/request/index.ts +174 -0
- package/dist/templates/resources.ts +104 -0
- package/dist/templates/retopology.json +4 -0
- package/dist/templates/rigging.json +21 -0
- package/dist/templates/router/index.tsx +26 -0
- package/dist/templates/routes.ts +70 -0
- package/dist/templates/routes.tsx +18 -0
- package/dist/templates/rspack/paths.js +12 -0
- package/dist/templates/rspack/plugins/RoutesConventionsRspackPlugin.js +100 -0
- package/dist/templates/rspack/rspack.config.mjs +186 -0
- package/dist/templates/rspack/rspack.dev.mjs +219 -0
- package/dist/templates/rspack/rspack.prod.mjs +254 -0
- package/dist/templates/rspack.config.mjs +186 -0
- package/dist/templates/rspack.dev.mjs +219 -0
- package/dist/templates/rspack.prod.mjs +254 -0
- package/dist/templates/sage.ts +66 -0
- package/dist/templates/sand.ts +66 -0
- package/dist/templates/screenshot_background.webp +0 -0
- package/dist/templates/scripts/convert-locales-to-json.js +47 -0
- package/dist/templates/segmentation.json +4 -0
- package/dist/templates/sentry/sentry.config.ts +188 -0
- package/dist/templates/sentry.config.ts +188 -0
- package/dist/templates/sentry.ts +187 -0
- package/dist/templates/sentryDecorators.ts +34 -0
- package/dist/templates/settings/actions.ts +23 -0
- package/dist/templates/settings/initialState.ts +32 -0
- package/dist/templates/setupTests.ts +39 -0
- package/dist/templates/slate.ts +66 -0
- package/dist/templates/slices/profile/actions.ts +20 -0
- package/dist/templates/slices/profile/api.ts +5 -0
- package/dist/templates/slices/profile/initialState.ts +14 -0
- package/dist/templates/slices/settings/actions.ts +23 -0
- package/dist/templates/slices/settings/initialState.ts +32 -0
- package/dist/templates/src/__mocks__/fileMock.js +1 -0
- package/dist/templates/src/__mocks__/styleMock.ts +1 -0
- package/dist/templates/src/color/ColorScales/ScaleRow.tsx +74 -0
- package/dist/templates/src/color/ColorScales/index.md +168 -0
- package/dist/templates/src/color/ColorScales/index.tsx +70 -0
- package/dist/templates/src/color/ColorScales/style.ts +42 -0
- package/dist/templates/src/color/colors/blue.ts +66 -0
- package/dist/templates/src/color/colors/cyan.ts +66 -0
- package/dist/templates/src/color/colors/geekblue.ts +66 -0
- package/dist/templates/src/color/colors/gold.ts +66 -0
- package/dist/templates/src/color/colors/gray.ts +66 -0
- package/dist/templates/src/color/colors/green.ts +66 -0
- package/dist/templates/src/color/colors/index.ts +66 -0
- package/dist/templates/src/color/colors/lime.ts +66 -0
- package/dist/templates/src/color/colors/magenta.ts +66 -0
- package/dist/templates/src/color/colors/orange.ts +66 -0
- package/dist/templates/src/color/colors/primary.ts +66 -0
- package/dist/templates/src/color/colors/purple.ts +66 -0
- package/dist/templates/src/color/colors/red.ts +66 -0
- package/dist/templates/src/color/colors/volcano.ts +66 -0
- package/dist/templates/src/color/colors/yellow.ts +66 -0
- package/dist/templates/src/color/index.ts +4 -0
- package/dist/templates/src/color/neutrals/index.ts +30 -0
- package/dist/templates/src/color/neutrals/mauve.ts +66 -0
- package/dist/templates/src/color/neutrals/olive.ts +66 -0
- package/dist/templates/src/color/neutrals/sage.ts +66 -0
- package/dist/templates/src/color/neutrals/sand.ts +66 -0
- package/dist/templates/src/color/neutrals/slate.ts +66 -0
- package/dist/templates/src/color/types.ts +21 -0
- package/dist/templates/src/components/ConfigProvider/index.md +63 -0
- package/dist/templates/src/components/ConfigProvider/index.tsx +42 -0
- package/dist/templates/src/components/ErrorBoundary/index.tsx +506 -0
- package/dist/templates/src/components/FontLoader/index.md +12 -0
- package/dist/templates/src/components/FontLoader/index.tsx +41 -0
- package/dist/templates/src/components/Loading/__tests__/Loading.test.tsx +23 -0
- package/dist/templates/src/components/Loading/index.tsx +21 -0
- package/dist/templates/src/components/ManualSlave/ManualSlavePage.module.less +25 -0
- package/dist/templates/src/components/ManualSlave/ManualSlavePage.tsx +45 -0
- package/dist/templates/src/components/ManualSlave/index.ts +1 -0
- package/dist/templates/src/components/RequireAuth/RequireAuth.tsx +76 -0
- package/dist/templates/src/components/RequireAuth/index.ts +1 -0
- package/dist/templates/src/components/ThemeProvider/GlobalStyle/antdOverride.ts +89 -0
- package/dist/templates/src/components/ThemeProvider/GlobalStyle/global.ts +61 -0
- package/dist/templates/src/components/ThemeProvider/GlobalStyle/index.ts +10 -0
- package/dist/templates/src/components/ThemeProvider/Meta.tsx +75 -0
- package/dist/templates/src/components/ThemeProvider/ThemeProvider.tsx +109 -0
- package/dist/templates/src/components/ThemeProvider/index.md +69 -0
- package/dist/templates/src/components/ThemeProvider/index.ts +3 -0
- package/dist/templates/src/components/ThemeProvider/type.ts +28 -0
- package/dist/templates/src/const/constants.ts +0 -0
- package/dist/templates/src/const/locale.ts +9 -0
- package/dist/templates/src/const/system.ts +1 -0
- package/dist/templates/src/const/theme.ts +5 -0
- package/dist/templates/src/const/url.ts +1 -0
- package/dist/templates/src/hooks/useRouteTitle.tsx +36 -0
- package/dist/templates/src/hooks/useSentry.ts +92 -0
- package/dist/templates/src/index.css +2 -0
- package/dist/templates/src/index.tsx +56 -0
- package/dist/templates/src/layout/BaseLayout.tsx +15 -0
- package/dist/templates/src/layout/ContentFormWrapper.tsx +11 -0
- package/dist/templates/src/layout/ContentWrapper.module.less +137 -0
- package/dist/templates/src/layout/ContentWrapper.tsx +13 -0
- package/dist/templates/src/layout/Locale.tsx +89 -0
- package/dist/templates/src/layout/MainContentWrap.tsx +68 -0
- package/dist/templates/src/layout/ThemeContext.tsx +132 -0
- package/dist/templates/src/loading.tsx +52 -0
- package/dist/templates/src/locales/create.ts +56 -0
- package/dist/templates/src/locales/default/chat.ts +455 -0
- package/dist/templates/src/locales/default/index.ts +7 -0
- package/dist/templates/src/locales/resources.ts +104 -0
- package/dist/templates/src/pages/404/index.tsx +5 -0
- package/dist/templates/src/pages/404/page.tsx +27 -0
- package/dist/templates/src/pages/404.tsx +5 -0
- package/dist/templates/src/pages/base/index.tsx +32 -0
- package/dist/templates/src/pages/base/layout.tsx +6 -0
- package/dist/templates/src/pages/base/page.tsx +25 -0
- package/dist/templates/src/pages/index.css +282 -0
- package/dist/templates/src/pages/index.tsx +5 -0
- package/dist/templates/src/routes.tsx +18 -0
- package/dist/templates/src/setupTests.ts +39 -0
- package/dist/templates/src/styles/antdOverride.ts +24 -0
- package/dist/templates/src/styles/customTheme.ts +70 -0
- package/dist/templates/src/styles/global.ts +53 -0
- package/dist/templates/src/styles/highlighter.ts +34 -0
- package/dist/templates/src/styles/index.ts +23 -0
- package/dist/templates/src/styles/mermaid.ts +7 -0
- package/dist/templates/src/styles/text.ts +10 -0
- package/dist/templates/src/styles/theme/algorithms/darkAlgorithm.ts +47 -0
- package/dist/templates/src/styles/theme/algorithms/lightAlgorithm.ts +44 -0
- package/dist/templates/src/styles/theme/antdTheme.ts +62 -0
- package/dist/templates/src/styles/theme/customStylish.ts +189 -0
- package/dist/templates/src/styles/theme/customToken.ts +93 -0
- package/dist/templates/src/styles/theme/generateColorPalette.ts +59 -0
- package/dist/templates/src/styles/theme/token/base.ts +16 -0
- package/dist/templates/src/styles/theme/token/dark.ts +60 -0
- package/dist/templates/src/styles/theme/token/light.ts +60 -0
- package/dist/templates/src/test-utils.tsx +18 -0
- package/dist/templates/src/types/customStylish.ts +20 -0
- package/dist/templates/src/types/customToken.ts +70 -0
- package/dist/templates/src/types/index.ts +21 -0
- package/dist/templates/src/types/routes.ts +70 -0
- package/dist/templates/src/utils/__tests__/example.test.ts +7 -0
- package/dist/templates/src/utils/convert.ts +40 -0
- package/dist/templates/src/utils/cookie.ts +25 -0
- package/dist/templates/src/utils/copyToClipboard.ts +13 -0
- package/dist/templates/src/utils/difference.ts +26 -0
- package/dist/templates/src/utils/env.ts +3 -0
- package/dist/templates/src/utils/format.ts +21 -0
- package/dist/templates/src/utils/genCdnUrl.ts +30 -0
- package/dist/templates/src/utils/getMicroApp.ts +39 -0
- package/dist/templates/src/utils/index.ts +1 -0
- package/dist/templates/src/utils/locale.ts +46 -0
- package/dist/templates/src/utils/sentry.ts +187 -0
- package/dist/templates/src/utils/sentryDecorators.ts +34 -0
- package/dist/templates/src/utils/updateVersion.ts +186 -0
- package/dist/templates/store/auth/index.tsx +82 -0
- package/dist/templates/store/auth/indexApi.tsx +11 -0
- package/dist/templates/store/global/index.tsx +133 -0
- package/dist/templates/store/global/indexApi.tsx +19 -0
- package/dist/templates/store/global/types.ts +62 -0
- package/dist/templates/store/middleware/createDevtools.ts +23 -0
- package/dist/templates/store/middleware/createHyperStorage/index.ts +127 -0
- package/dist/templates/store/middleware/createHyperStorage/indexedDB.ts +31 -0
- package/dist/templates/store/middleware/createHyperStorage/keyMapper.ts +57 -0
- package/dist/templates/store/middleware/createHyperStorage/localStorage.ts +23 -0
- package/dist/templates/store/middleware/createHyperStorage/type.ts +27 -0
- package/dist/templates/store/middleware/createHyperStorage/urlStorage.ts +85 -0
- package/dist/templates/store/theme/index.ts +25 -0
- package/dist/templates/store/types.ts +83 -0
- package/dist/templates/store/user/index.tsx +1 -0
- package/dist/templates/store/user/indexApi.tsx +5 -0
- package/dist/templates/store/user/initialState.ts +15 -0
- package/dist/templates/store/user/slices/profile/actions.ts +20 -0
- package/dist/templates/store/user/slices/profile/api.ts +5 -0
- package/dist/templates/store/user/slices/profile/initialState.ts +14 -0
- package/dist/templates/store/user/slices/settings/actions.ts +23 -0
- package/dist/templates/store/user/slices/settings/initialState.ts +32 -0
- package/dist/templates/store/user/store.ts +39 -0
- package/dist/templates/store.ts +39 -0
- package/dist/templates/style.ts +42 -0
- package/dist/templates/styleMock.ts +1 -0
- package/dist/templates/styles/antdOverride.ts +24 -0
- package/dist/templates/styles/customTheme.ts +70 -0
- package/dist/templates/styles/global.ts +53 -0
- package/dist/templates/styles/highlighter.ts +34 -0
- package/dist/templates/styles/index.ts +23 -0
- package/dist/templates/styles/mermaid.ts +7 -0
- package/dist/templates/styles/text.ts +10 -0
- package/dist/templates/styles/theme/algorithms/darkAlgorithm.ts +47 -0
- package/dist/templates/styles/theme/algorithms/lightAlgorithm.ts +44 -0
- package/dist/templates/styles/theme/antdTheme.ts +62 -0
- package/dist/templates/styles/theme/customStylish.ts +189 -0
- package/dist/templates/styles/theme/customToken.ts +93 -0
- package/dist/templates/styles/theme/generateColorPalette.ts +59 -0
- package/dist/templates/styles/theme/token/base.ts +16 -0
- package/dist/templates/styles/theme/token/dark.ts +60 -0
- package/dist/templates/styles/theme/token/light.ts +60 -0
- package/dist/templates/stylization.json +11 -0
- package/dist/templates/system.ts +1 -0
- package/dist/templates/tailwind.config.js +13 -0
- package/dist/templates/test-utils.tsx +18 -0
- package/dist/templates/text.ts +10 -0
- package/dist/templates/texture.json +4 -0
- package/dist/templates/theme/algorithms/darkAlgorithm.ts +47 -0
- package/dist/templates/theme/algorithms/lightAlgorithm.ts +44 -0
- package/dist/templates/theme/antdTheme.ts +62 -0
- package/dist/templates/theme/customStylish.ts +189 -0
- package/dist/templates/theme/customToken.ts +93 -0
- package/dist/templates/theme/generateColorPalette.ts +59 -0
- package/dist/templates/theme/index.ts +25 -0
- package/dist/templates/theme/token/base.ts +16 -0
- package/dist/templates/theme/token/dark.ts +60 -0
- package/dist/templates/theme/token/light.ts +60 -0
- package/dist/templates/theme.ts +5 -0
- 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/threeModel.json +9 -0
- package/dist/templates/token/base.ts +16 -0
- package/dist/templates/token/dark.ts +60 -0
- package/dist/templates/token/light.ts +60 -0
- package/dist/templates/toolbox.json +11 -0
- package/dist/templates/tsconfig.json +27 -0
- package/dist/templates/type.ts +28 -0
- package/dist/templates/types/customStylish.ts +20 -0
- package/dist/templates/types/customToken.ts +70 -0
- package/dist/templates/types/index.ts +21 -0
- package/dist/templates/types/routes.ts +70 -0
- package/dist/templates/types.ts +21 -0
- package/dist/templates/updateVersion.ts +186 -0
- package/dist/templates/url.ts +1 -0
- package/dist/templates/urlStorage.ts +85 -0
- package/dist/templates/useRouteTitle.tsx +36 -0
- package/dist/templates/useSentry.ts +92 -0
- package/dist/templates/user/index.tsx +1 -0
- package/dist/templates/user/indexApi.tsx +5 -0
- package/dist/templates/user/initialState.ts +15 -0
- package/dist/templates/user/slices/profile/actions.ts +20 -0
- package/dist/templates/user/slices/profile/api.ts +5 -0
- package/dist/templates/user/slices/profile/initialState.ts +14 -0
- package/dist/templates/user/slices/settings/actions.ts +23 -0
- package/dist/templates/user/slices/settings/initialState.ts +32 -0
- package/dist/templates/user/store.ts +39 -0
- package/dist/templates/utils/__tests__/example.test.ts +7 -0
- package/dist/templates/utils/convert.ts +40 -0
- package/dist/templates/utils/cookie.ts +25 -0
- package/dist/templates/utils/copyToClipboard.ts +13 -0
- package/dist/templates/utils/difference.ts +26 -0
- package/dist/templates/utils/env.ts +3 -0
- package/dist/templates/utils/format.ts +21 -0
- package/dist/templates/utils/genCdnUrl.ts +30 -0
- package/dist/templates/utils/getMicroApp.ts +39 -0
- package/dist/templates/utils/index.ts +1 -0
- package/dist/templates/utils/locale.ts +46 -0
- package/dist/templates/utils/sentry.ts +187 -0
- package/dist/templates/utils/sentryDecorators.ts +34 -0
- package/dist/templates/utils/updateVersion.ts +186 -0
- package/dist/templates/volcano.ts +66 -0
- package/dist/templates/yellow.ts +66 -0
- package/dist/templates/zh-CN/common.json +74 -0
- package/dist/templates/zh-CN/generate.json +71 -0
- package/dist/templates/zh-CN/nav.json +10 -0
- package/dist/templates/zh-CN/overview.json +6 -0
- package/dist/templates/zh-CN/retopology.json +4 -0
- package/dist/templates/zh-CN/rigging.json +21 -0
- package/dist/templates/zh-CN/segmentation.json +4 -0
- package/dist/templates/zh-CN/stylization.json +11 -0
- package/dist/templates/zh-CN/texture.json +4 -0
- package/dist/templates/zh-CN/threeModel.json +9 -0
- package/dist/templates/zh-CN/toolbox.json +11 -0
- package/dist/templates//347/277/273/350/257/221.md +9 -0
- package/package.json +29 -21
- package/README.md +0 -180
- package/dist/api.js +0 -44
- package/dist/templates.js +0 -87
|
@@ -0,0 +1,57 @@
|
|
|
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
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
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
|
+
});
|
|
@@ -0,0 +1,27 @@
|
|
|
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;
|
|
@@ -0,0 +1,85 @@
|
|
|
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
|
+
};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { create } from 'zustand';
|
|
2
|
+
import { createJSONStorage, persist } from 'zustand/middleware';
|
|
3
|
+
|
|
4
|
+
interface ThemeStore {
|
|
5
|
+
theme: string;
|
|
6
|
+
setTheme: (theme: string) => void;
|
|
7
|
+
isDark: () => boolean;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export const useThemeStore = create<ThemeStore, [['zustand/persist', unknown]]>(
|
|
11
|
+
persist(
|
|
12
|
+
(set, get) => ({
|
|
13
|
+
theme: 'light',
|
|
14
|
+
setTheme: theme => set({ theme }),
|
|
15
|
+
isDark: () => get().theme === 'dark',
|
|
16
|
+
}),
|
|
17
|
+
{
|
|
18
|
+
name: 'theme',
|
|
19
|
+
storage: createJSONStorage(() => localStorage),
|
|
20
|
+
version: 1,
|
|
21
|
+
},
|
|
22
|
+
),
|
|
23
|
+
);
|
|
24
|
+
|
|
25
|
+
export default useThemeStore;
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
interface SiderRoutesItem {
|
|
2
|
+
path: string;
|
|
3
|
+
name: string;
|
|
4
|
+
id: string;
|
|
5
|
+
icon: any;
|
|
6
|
+
perarr: string;
|
|
7
|
+
children?: SiderRoutesItem[];
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export interface SiderRoutesProps {
|
|
11
|
+
name?: string;
|
|
12
|
+
routes?: SiderRoutesItem[];
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export interface IBestAFSRoute {
|
|
16
|
+
/**
|
|
17
|
+
* @description 菜单上显示的名称,没有则不展示该菜单。
|
|
18
|
+
*/
|
|
19
|
+
name?: string;
|
|
20
|
+
/**
|
|
21
|
+
* @description icon 图标。
|
|
22
|
+
*/
|
|
23
|
+
icon?: any;
|
|
24
|
+
/**
|
|
25
|
+
* @description 权限位。
|
|
26
|
+
*/
|
|
27
|
+
perarr?: string;
|
|
28
|
+
/**
|
|
29
|
+
* @name false 时不显示顶栏
|
|
30
|
+
*/
|
|
31
|
+
headerRender?: boolean;
|
|
32
|
+
/**
|
|
33
|
+
* @name false 时不显示页脚
|
|
34
|
+
*/
|
|
35
|
+
footerRender?: false;
|
|
36
|
+
/**
|
|
37
|
+
* @name false 时不显示菜单
|
|
38
|
+
*/
|
|
39
|
+
menuRender?: false;
|
|
40
|
+
/**
|
|
41
|
+
* @name false 时不显示菜单的 title 和 logo
|
|
42
|
+
*/
|
|
43
|
+
menuHeaderRender?: false;
|
|
44
|
+
/**
|
|
45
|
+
* @name false 时隐藏子菜单
|
|
46
|
+
*/
|
|
47
|
+
hideChildrenInMenu?: false;
|
|
48
|
+
/**
|
|
49
|
+
* @name false 时隐藏自己和子菜单
|
|
50
|
+
*/
|
|
51
|
+
hideInMenu?: false;
|
|
52
|
+
/**
|
|
53
|
+
* @name false 时不跳过权限认证
|
|
54
|
+
*/
|
|
55
|
+
skipAuth?: boolean;
|
|
56
|
+
/**
|
|
57
|
+
* @name string 归属某个具体的分类
|
|
58
|
+
*/
|
|
59
|
+
category?: string;
|
|
60
|
+
/**
|
|
61
|
+
* @name string 路由的 title
|
|
62
|
+
*/
|
|
63
|
+
title?: string;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
// 定义路由的数据结构
|
|
67
|
+
export interface RoutesTree {
|
|
68
|
+
key?: string;
|
|
69
|
+
path?: string;
|
|
70
|
+
wrappers?: string[];
|
|
71
|
+
component?: string | (() => React.JSX.Element);
|
|
72
|
+
routes?: RoutesTree[];
|
|
73
|
+
microApp?: string;
|
|
74
|
+
entry?: string;
|
|
75
|
+
redirect?: string;
|
|
76
|
+
props?: IBestAFSRoute;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
export interface ApiParams {
|
|
80
|
+
id: string | number[] | string[] | number;
|
|
81
|
+
action: string;
|
|
82
|
+
data: any;
|
|
83
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './store';
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import {
|
|
2
|
+
type UserProfileState,
|
|
3
|
+
initialState as initialProfileState,
|
|
4
|
+
} from './slices/profile/initialState';
|
|
5
|
+
import {
|
|
6
|
+
type UserSettingsState,
|
|
7
|
+
initialState as initialSettingsState,
|
|
8
|
+
} from './slices/settings/initialState';
|
|
9
|
+
|
|
10
|
+
export type UserState = UserProfileState & UserSettingsState;
|
|
11
|
+
|
|
12
|
+
export const initialState: UserState = {
|
|
13
|
+
...initialProfileState,
|
|
14
|
+
...initialSettingsState,
|
|
15
|
+
};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { StateCreator } from 'zustand/vanilla';
|
|
2
|
+
|
|
3
|
+
import type { UserStore } from '../../store';
|
|
4
|
+
import { apiGetV1GatewayProfile } from './api';
|
|
5
|
+
|
|
6
|
+
export interface UserProfileAction {
|
|
7
|
+
getUserProfile: () => Promise<void>;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export const createProfileSlice: StateCreator<
|
|
11
|
+
UserStore,
|
|
12
|
+
[['zustand/devtools', never]],
|
|
13
|
+
[],
|
|
14
|
+
UserProfileAction
|
|
15
|
+
> = (set, get) => ({
|
|
16
|
+
getUserProfile: async () => {
|
|
17
|
+
const { data } = await apiGetV1GatewayProfile();
|
|
18
|
+
set({ user: data });
|
|
19
|
+
},
|
|
20
|
+
});
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { StateCreator } from "zustand/vanilla";
|
|
2
|
+
|
|
3
|
+
import type { UserStore } from "../../store";
|
|
4
|
+
import type { AnimationMode, ThemeMode } from "./initialState";
|
|
5
|
+
|
|
6
|
+
export interface UserSettingsAction {
|
|
7
|
+
setAnimationMode: (animationMode: AnimationMode) => void;
|
|
8
|
+
setThemeMode: (themeMode: ThemeMode) => void;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export const createSettingsSlice: StateCreator<
|
|
12
|
+
UserStore,
|
|
13
|
+
[["zustand/devtools", never]],
|
|
14
|
+
[],
|
|
15
|
+
UserSettingsAction
|
|
16
|
+
> = (set, get) => ({
|
|
17
|
+
setAnimationMode: (animationMode: AnimationMode) => {
|
|
18
|
+
set({ animationMode });
|
|
19
|
+
},
|
|
20
|
+
setThemeMode: (themeMode: ThemeMode) => {
|
|
21
|
+
set({ themeMode });
|
|
22
|
+
},
|
|
23
|
+
});
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export type AnimationMode = "disabled" | "agile" | "elegant";
|
|
2
|
+
export type ResponseAnimationStyle = "smooth" | "fadeIn" | "none";
|
|
3
|
+
export type ThemeMode = "auto" | "dark" | "light";
|
|
4
|
+
import type {
|
|
5
|
+
HighlighterProps,
|
|
6
|
+
MermaidProps,
|
|
7
|
+
NeutralColors,
|
|
8
|
+
PrimaryColors,
|
|
9
|
+
} from "@/styles";
|
|
10
|
+
|
|
11
|
+
export interface UserSettingsState {
|
|
12
|
+
animationMode?: AnimationMode;
|
|
13
|
+
neutralColor?: NeutralColors;
|
|
14
|
+
primaryColor?: PrimaryColors;
|
|
15
|
+
fontSize: number;
|
|
16
|
+
transitionMode?: ResponseAnimationStyle;
|
|
17
|
+
highlighterTheme?: HighlighterProps["theme"];
|
|
18
|
+
mermaidTheme?: MermaidProps["theme"];
|
|
19
|
+
|
|
20
|
+
themeMode?: ThemeMode;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export const initialState: UserSettingsState = {
|
|
24
|
+
animationMode: "agile",
|
|
25
|
+
neutralColor: undefined,
|
|
26
|
+
primaryColor: undefined,
|
|
27
|
+
fontSize: 14,
|
|
28
|
+
transitionMode: "fadeIn",
|
|
29
|
+
highlighterTheme: "lobe-theme",
|
|
30
|
+
mermaidTheme: "lobe-theme",
|
|
31
|
+
themeMode: "auto",
|
|
32
|
+
};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { subscribeWithSelector } from 'zustand/middleware';
|
|
2
|
+
import { shallow } from 'zustand/shallow';
|
|
3
|
+
import { createWithEqualityFn } from 'zustand/traditional';
|
|
4
|
+
import type { StateCreator } from 'zustand/vanilla';
|
|
5
|
+
|
|
6
|
+
import { createDevtools } from '../middleware/createDevtools';
|
|
7
|
+
import { type UserState, initialState } from './initialState';
|
|
8
|
+
|
|
9
|
+
import {
|
|
10
|
+
type UserProfileAction,
|
|
11
|
+
createProfileSlice,
|
|
12
|
+
} from './slices/profile/actions';
|
|
13
|
+
import {
|
|
14
|
+
type UserSettingsAction,
|
|
15
|
+
createSettingsSlice,
|
|
16
|
+
} from './slices/settings/actions';
|
|
17
|
+
|
|
18
|
+
// =============== 聚合 createStoreFn ============ //
|
|
19
|
+
|
|
20
|
+
export type UserStore = UserState & UserProfileAction & UserSettingsAction;
|
|
21
|
+
|
|
22
|
+
const createStore: StateCreator<UserStore, [['zustand/devtools', never]]> = (
|
|
23
|
+
...parameters
|
|
24
|
+
) => ({
|
|
25
|
+
...initialState,
|
|
26
|
+
...createProfileSlice(...parameters),
|
|
27
|
+
...createSettingsSlice(...parameters),
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
// =============== 实装 useStore ============ //
|
|
31
|
+
|
|
32
|
+
const devtools = createDevtools('user');
|
|
33
|
+
|
|
34
|
+
export const useUserStore = createWithEqualityFn<UserStore>()(
|
|
35
|
+
subscribeWithSelector(devtools(createStore)),
|
|
36
|
+
shallow,
|
|
37
|
+
);
|
|
38
|
+
|
|
39
|
+
export const getUserStoreState = () => useUserStore.getState();
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/** @type {import('tailwindcss').Config} */
|
|
2
|
+
module.exports = {
|
|
3
|
+
important: `#${process.env.APP_NAME}`,
|
|
4
|
+
content: ['./src/**/*.{js,ts,jsx,tsx}'],
|
|
5
|
+
darkMode: ['variant', '&:not(.light *)'],
|
|
6
|
+
theme: {
|
|
7
|
+
extend: {},
|
|
8
|
+
},
|
|
9
|
+
corePlugins: {
|
|
10
|
+
preflight: false,
|
|
11
|
+
},
|
|
12
|
+
plugins: [],
|
|
13
|
+
};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"declaration": false, // 生成声明文件
|
|
4
|
+
"esModuleInterop": true, // 允许 export = 导出,由import from 导入
|
|
5
|
+
"module": "commonjs", // 生成代码的模块标准
|
|
6
|
+
"moduleResolution": "node", // 模块解析策略
|
|
7
|
+
"noUnusedLocals": false, // 检查只声明,未使用的局部变量
|
|
8
|
+
"noImplicitAny": false, // 不允许隐式的 any 类型。
|
|
9
|
+
"noUnusedParameters": true, // 检查未使用的函数参数
|
|
10
|
+
"sourceMap": true, // 编译器编译时,生成目标文件的sourceMap文件。
|
|
11
|
+
"strict": true, // 开启所有严格的类型检查
|
|
12
|
+
"skipLibCheck": true, // 用来控制是否在编译时进行库文件检查的
|
|
13
|
+
"target": "es5", // 目标语言的版本
|
|
14
|
+
"jsx": "react", // 控制如何在 JavaScript 文件中发出 JSX 构造。这只影响以.tsx files 开头的 JS 文件的输出
|
|
15
|
+
"lib": ["es5", "dom", "dom.iterable", "esnext"], // TypeScript 包含内置 JS API 的一组默认类型定义(如Math),以及浏览器环境中找到的内容的类型定义(如document)
|
|
16
|
+
"paths": {
|
|
17
|
+
"@/*": ["./src/*"],
|
|
18
|
+
"@shared/*": ["./shared/*"],
|
|
19
|
+
"@config/*": ["./config/*"],
|
|
20
|
+
"@store/*": ["./store/*"],
|
|
21
|
+
"@utils/*": ["./utils/*"]
|
|
22
|
+
}, // 将导入重新映射到相对于baseUrlif 集或 tsconfig 文件本身的查找位置
|
|
23
|
+
"types": ["jest", "node", "@testing-library/jest-dom"]
|
|
24
|
+
},
|
|
25
|
+
"exclude": ["**/node_modules", "**/examples", "**/dist", "**/fixtures", "**/*.test.ts", "**/*.e2e.ts", "**/templates", "ui"], // 指定解析时应跳过的文件名或模式数组include。
|
|
26
|
+
"include": ["./src/**/*", "./store/**/*", "./react-app-env.d.ts", "config/router", "**/*.test.ts", "**/*.test.tsx"] // 指定要包含在程序中的文件名或模式的数组。这些文件名是相对于包含该tsconfig.json文件的目录进行解析的。
|
|
27
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { create } from "zustand";
|
|
2
|
+
const Cookie = require("js-cookie");
|
|
3
|
+
import jwt from "@config/jwt";
|
|
4
|
+
import {
|
|
5
|
+
apiLogin,
|
|
6
|
+
apiLogout
|
|
7
|
+
} from './indexApi';
|
|
8
|
+
|
|
9
|
+
interface BearState {
|
|
10
|
+
showCaptcha: boolean,
|
|
11
|
+
captchaR: string,
|
|
12
|
+
loginStatus: boolean,
|
|
13
|
+
login: (params: LoginProps) => Promise<{loginStatus: boolean}>,
|
|
14
|
+
loginLoading: boolean,
|
|
15
|
+
|
|
16
|
+
logout: () => Promise<void>,
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
interface LoginProps {
|
|
20
|
+
payload: Object,
|
|
21
|
+
redirect?: string,
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
const useStore = create<BearState>()((set) => ({
|
|
25
|
+
showCaptcha: false,
|
|
26
|
+
loginStatus: false,
|
|
27
|
+
captchaR: (Math.random().toString(36).substr(2) + Math.random().toString(36).substr(2))
|
|
28
|
+
.slice(2, 18),
|
|
29
|
+
loginLoading: false,
|
|
30
|
+
login: async (params: LoginProps) => {
|
|
31
|
+
set({ loginLoading: true })
|
|
32
|
+
const { payload, redirect } = params;
|
|
33
|
+
let defaultUrl = ""
|
|
34
|
+
let client = Cookie.get("client");
|
|
35
|
+
if (!client) {
|
|
36
|
+
client = (Math.random().toString(36).substr(2) + Math.random().toString(36).substr(2))
|
|
37
|
+
.slice(2, 18);
|
|
38
|
+
Cookie.set('client', client);
|
|
39
|
+
}
|
|
40
|
+
try {
|
|
41
|
+
const { data } = await apiLogin({ ...payload, _xsrf: client })
|
|
42
|
+
// const { data } = yield call(apiLogin, { ...payload, _xsrf: client });
|
|
43
|
+
// yield put({ type: 'showCaptcha', payload: false });
|
|
44
|
+
set({ showCaptcha: false });
|
|
45
|
+
jwt.setAccessToken(data);
|
|
46
|
+
if (data?.path != "") {
|
|
47
|
+
defaultUrl = data?.path
|
|
48
|
+
}
|
|
49
|
+
if (redirect) {
|
|
50
|
+
defaultUrl = redirect
|
|
51
|
+
}
|
|
52
|
+
set({ loginStatus: true, loginLoading: false, })
|
|
53
|
+
return { loginStatus: true }
|
|
54
|
+
// yield put({ type: "setLoginStatus", payload: true })
|
|
55
|
+
} catch (error) {
|
|
56
|
+
// yield put({ type: 'updateCaptcha' });
|
|
57
|
+
set({
|
|
58
|
+
captchaR: (Math.random().toString(36).substr(2) + Math.random().toString(36).substr(2))
|
|
59
|
+
.slice(2, 18)
|
|
60
|
+
})
|
|
61
|
+
|
|
62
|
+
// yield put({ type: 'global/showMsg', payload: error });
|
|
63
|
+
if ((error as Error).message === '请输入验证码') {
|
|
64
|
+
set({ showCaptcha: true })
|
|
65
|
+
// yield put({ type: 'showCaptcha', payload: true });
|
|
66
|
+
}
|
|
67
|
+
set({ loginStatus: false, loginLoading: false })
|
|
68
|
+
// yield put({ type: "setLoginStatus", payload: false })
|
|
69
|
+
return { loginStatus: false }
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
|
|
73
|
+
logout:async () => {
|
|
74
|
+
await apiLogout({})
|
|
75
|
+
Cookie.remove(jwt.key);
|
|
76
|
+
Cookie.remove('_xsrf');
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
}))
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
export default useStore;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Request } from '@config/request';
|
|
2
|
+
|
|
3
|
+
const request = new Request({});
|
|
4
|
+
|
|
5
|
+
export function apiLogin(params: any) {
|
|
6
|
+
return request.post('/main/gateway/login', params);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export function apiLogout(params: any) {
|
|
10
|
+
return request.put('/main/gateway/logout', params);
|
|
11
|
+
}
|
|
Binary file
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { createStyles } from "antd-style"
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
const useStyles = createStyles(({ token, isDarkMode }) => ({
|
|
6
|
+
button: {
|
|
7
|
+
backgroundColor: token.colorPrimary,
|
|
8
|
+
width: '100px',
|
|
9
|
+
color: isDarkMode ? token.colorText : "#fff",
|
|
10
|
+
padding: `${token.paddingXS}px ${token.paddingSM}px`,
|
|
11
|
+
borderRadius: token.borderRadius,
|
|
12
|
+
cursor: 'pointer',
|
|
13
|
+
transition: 'all 0.3s ease',
|
|
14
|
+
|
|
15
|
+
'&:hover': {
|
|
16
|
+
backgroundColor: token.colorPrimaryHover,
|
|
17
|
+
},
|
|
18
|
+
'&:active': {
|
|
19
|
+
backgroundColor: token.colorPrimaryActive,
|
|
20
|
+
},
|
|
21
|
+
},
|
|
22
|
+
}));
|
|
23
|
+
|
|
24
|
+
export default function Base() {
|
|
25
|
+
const { styles } = useStyles();
|
|
26
|
+
return (
|
|
27
|
+
<div className={styles.button}>
|
|
28
|
+
Base
|
|
29
|
+
{/* <Button type="primary">antd按钮</Button> */}
|
|
30
|
+
</div>
|
|
31
|
+
);
|
|
32
|
+
}
|