create-packer 1.48.0 → 1.50.0
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/bin/{index.js → src/index.js} +0 -0
- package/package.json +3 -3
- package/template/docusaurus/package.json +1 -1
- package/template/electron-react/eslint.config.mjs +2 -1
- package/template/electron-react/package.json +97 -97
- package/template/electron-react/tsconfig.json +4 -11
- package/template/electron-vue/eslint.config.mjs +2 -1
- package/template/electron-vue/package.json +87 -87
- package/template/electron-vue/tsconfig.json +10 -8
- package/template/lib/workspace/eslint.config.mjs +2 -1
- package/template/lib/workspace/node_modules/.pnpm/node_modules/react-lib/.gitignore +26 -0
- package/template/lib/workspace/node_modules/.pnpm/node_modules/ts-lib/.gitignore +25 -0
- package/template/lib/workspace/package.json +15 -18
- package/template/lib/workspace/packages/react/package.json +2 -10
- package/template/lib/workspace/packages/react/tsconfig.json +2 -2
- package/template/lib/workspace/packages/ts/package.json +2 -8
- package/template/lib/workspace/packages/ts/tsconfig.json +3 -7
- package/template/lib/workspace/scripts/build.ts +21 -16
- package/template/lib/workspace/tsconfig.json +4 -17
- package/template/web-app/react-rsbuild/eslint.config.js +2 -1
- package/template/web-app/react-rsbuild/package.json +11 -11
- package/template/web-app/react-rsbuild/rsbuild.config.ts +9 -11
- package/template/web-app/react-rsbuild/{domain → src}/components/app-context.tsx +1 -1
- package/template/web-app/react-rsbuild/{domain → src}/components/app.tsx +2 -2
- package/template/web-app/react-rsbuild/{shared → src}/components/index.ts +1 -0
- package/template/web-app/{react-vite/shared → react-rsbuild/src}/hooks/useLazyRender.ts +1 -1
- package/template/web-app/react-rsbuild/{main.tsx → src/main.tsx} +2 -2
- package/template/web-app/{react-vite → react-rsbuild/src}/pages/home/view.tsx +1 -1
- package/template/web-app/react-rsbuild/{pages → src/pages}/index.tsx +1 -1
- package/template/web-app/{react-vite/domain → react-rsbuild/src}/router/components/route-layout.tsx +2 -1
- package/template/web-app/react-rsbuild/{domain → src}/router/components/sub-route-outlet.tsx +2 -1
- package/template/web-app/react-rsbuild/{domain → src}/router/router.tsx +1 -1
- package/template/web-app/react-rsbuild/src/router/router.types.ts +3 -0
- package/template/web-app/react-rsbuild/tsconfig.json +5 -10
- package/template/web-app/react-vite/eslint.config.js +2 -1
- package/template/web-app/react-vite/index.html +2 -2
- package/template/web-app/react-vite/package.json +78 -78
- package/template/web-app/react-vite/scripts/createCodeSplitting.ts +30 -0
- package/template/web-app/react-vite/scripts/index.ts +1 -1
- package/template/web-app/react-vite/{domain → src}/components/app-context.tsx +1 -1
- package/template/web-app/react-vite/{domain → src}/components/app.tsx +3 -3
- package/template/web-app/react-vite/{shared → src}/components/index.ts +1 -0
- package/template/web-app/react-vite/{main.tsx → src/main.tsx} +2 -2
- package/template/web-app/react-vite/{pages → src/pages}/home/view.mock.ts +1 -1
- package/template/web-app/{react-rsbuild → react-vite/src}/pages/home/view.tsx +1 -1
- package/template/web-app/react-vite/{pages → src/pages}/index.tsx +1 -1
- package/template/web-app/{react-rsbuild/domain → react-vite/src}/router/components/route-layout.tsx +1 -1
- package/template/web-app/react-vite/{domain → src}/router/components/sub-route-outlet.tsx +1 -1
- package/template/web-app/react-vite/{domain → src}/router/router.tsx +1 -1
- package/template/web-app/react-vite/src/router/router.types.ts +3 -0
- package/template/web-app/react-vite/tsconfig.json +2 -8
- package/template/web-app/react-vite/tsconfig.node.json +2 -2
- package/template/web-app/react-vite/vite.config.ts +11 -9
- package/template/web-app/vue/eslint.config.js +2 -1
- package/template/web-app/vue/index.html +2 -2
- package/template/web-app/vue/package.json +72 -72
- package/template/web-app/vue/scripts/createCodeSplitting.ts +30 -0
- package/template/web-app/vue/scripts/index.ts +1 -1
- package/template/web-app/{vue-rsbuild/domain → vue/src}/components/app.vue +1 -1
- package/template/web-app/vue/src/main.css +1 -0
- package/template/web-app/vue/{main.ts → src/main.ts} +3 -3
- package/template/web-app/vue/{pages → src/pages}/home/view.mock.ts +1 -1
- package/template/web-app/vue/{pages → src/pages}/home/view.vue +1 -1
- package/template/web-app/vue/tsconfig.json +10 -7
- package/template/web-app/vue/tsconfig.node.json +2 -2
- package/template/web-app/vue/vite.config.ts +11 -6
- package/template/web-app/vue-rsbuild/eslint.config.js +1 -0
- package/template/web-app/vue-rsbuild/package.json +77 -77
- package/template/web-app/vue-rsbuild/rsbuild.config.ts +8 -11
- package/template/web-app/vue-rsbuild/scripts/index.ts +1 -1
- package/template/web-app/{vue/domain → vue-rsbuild/src}/components/app.vue +1 -1
- package/template/web-app/vue-rsbuild/{main.ts → src/main.ts} +3 -3
- package/template/web-app/vue-rsbuild/{pages → src/pages}/home/view.vue +1 -1
- package/template/web-app/vue-rsbuild/tsconfig.json +10 -8
- package/template/web-extension/.wxt/eslint-auto-imports.mjs +57 -56
- package/template/web-extension/.wxt/types/imports-module.d.ts +20 -20
- package/template/web-extension/.wxt/types/imports.d.ts +51 -50
- package/template/web-extension/eslint.config.js +2 -1
- package/template/web-extension/package.json +85 -85
- package/template/web-extension/tsconfig.json +0 -2
- package/template/web-extension/wxt.config.ts +27 -25
- package/template/electron-react/tsconfig.node.json +0 -10
- package/template/electron-vue/tsconfig.node.json +0 -10
- package/template/lib/workspace/packages/react/tsconfig.lint.json +0 -21
- package/template/lib/workspace/packages/ts/.eslintrc +0 -72
- package/template/lib/workspace/packages/ts/src/sum.test.ts +0 -6
- package/template/lib/workspace/packages/ts/tsconfig.lint.json +0 -21
- package/template/lib/workspace/tsconfig.node.json +0 -23
- package/template/web-app/react-rsbuild/domain/components/index.ts +0 -1
- package/template/web-app/react-rsbuild/domain/router/router.types.ts +0 -3
- package/template/web-app/react-rsbuild/tsconfig.node.json +0 -10
- package/template/web-app/react-vite/domain/components/index.ts +0 -1
- package/template/web-app/react-vite/domain/router/router.types.ts +0 -3
- package/template/web-app/react-vite/scripts/createChunks.ts +0 -27
- package/template/web-app/vue/scripts/createChunks.ts +0 -27
- package/template/web-app/vue/shared/constant/index.ts +0 -0
- package/template/web-app/vue/shared/tools/index.ts +0 -0
- package/template/web-app/vue-rsbuild/tsconfig.node.json +0 -10
- /package/bin/{createTemp.d.ts → src/createTemp.d.ts} +0 -0
- /package/bin/{createTemp.js → src/createTemp.js} +0 -0
- /package/bin/{index.d.ts → src/index.d.ts} +0 -0
- /package/bin/{utils → src/utils}/index.d.ts +0 -0
- /package/bin/{utils → src/utils}/index.js +0 -0
- /package/template/web-app/react-rsbuild/{shared → src}/assets/react.svg +0 -0
- /package/template/web-app/react-rsbuild/{shared → src}/components/componentInstance.tsx +0 -0
- /package/template/web-app/react-rsbuild/{shared → src}/constant/index.ts +0 -0
- /package/template/web-app/react-rsbuild/{shared → src}/hooks/defineRouter/defineRouter.types.ts +0 -0
- /package/template/web-app/react-rsbuild/{shared → src}/hooks/defineRouter/deineRouter.tsx +0 -0
- /package/template/web-app/react-rsbuild/{shared → src}/hooks/defineRouter/index.ts +0 -0
- /package/template/web-app/react-rsbuild/{shared → src}/hooks/index.ts +0 -0
- /package/template/web-app/react-rsbuild/{shared → src}/hooks/useDebounceFn.ts +0 -0
- /package/template/web-app/react-rsbuild/{shared → src}/hooks/useInterval.ts +0 -0
- /package/template/web-app/react-rsbuild/{shared → src}/hooks/useLowPriorityState.ts +0 -0
- /package/template/web-app/react-rsbuild/{shared → src}/hooks/useSyncState.ts +0 -0
- /package/template/web-app/react-rsbuild/{shared → src}/hooks/useVisible.ts +0 -0
- /package/template/web-app/react-rsbuild/{domain → src}/models/app.ts +0 -0
- /package/template/web-app/react-rsbuild/{domain → src}/models/index.ts +0 -0
- /package/template/web-app/react-rsbuild/{pages → src/pages}/home/index.ts +0 -0
- /package/template/web-app/react-rsbuild/{pages → src/pages}/home/view.module.css +0 -0
- /package/template/web-app/react-rsbuild/{pages → src/pages}/not-found.tsx +0 -0
- /package/template/web-app/react-rsbuild/{domain → src}/router/components/index.ts +0 -0
- /package/template/web-app/react-rsbuild/{domain → src}/router/home/ids.ts +0 -0
- /package/template/web-app/react-rsbuild/{domain → src}/router/home/index.ts +0 -0
- /package/template/web-app/react-rsbuild/{domain → src}/router/home/routes.tsx +0 -0
- /package/template/web-app/react-rsbuild/{domain → src}/router/ids.ts +0 -0
- /package/template/web-app/react-rsbuild/{domain → src}/router/index.ts +0 -0
- /package/template/web-app/react-rsbuild/{shared → src}/service/api.ts +0 -0
- /package/template/web-app/react-rsbuild/{shared → src}/service/home.ts +0 -0
- /package/template/web-app/react-rsbuild/{shared → src}/service/index.ts +0 -0
- /package/template/web-app/react-rsbuild/{shared → src}/service/request.ts +0 -0
- /package/template/web-app/react-rsbuild/{shared → src}/styles/theme.css +0 -0
- /package/template/web-app/react-rsbuild/{shared → src}/tools/index.ts +0 -0
- /package/template/web-app/react-vite/{shared/assets/react.svg → src/assets/favicon.svg} +0 -0
- /package/template/web-app/react-vite/{shared → src}/components/componentInstance.tsx +0 -0
- /package/template/web-app/react-vite/{shared → src}/constant/index.ts +0 -0
- /package/template/web-app/react-vite/{shared → src}/hooks/defineRouter/defineRouter.types.ts +0 -0
- /package/template/web-app/react-vite/{shared → src}/hooks/defineRouter/deineRouter.tsx +0 -0
- /package/template/web-app/react-vite/{shared → src}/hooks/defineRouter/index.ts +0 -0
- /package/template/web-app/react-vite/{shared → src}/hooks/index.ts +0 -0
- /package/template/web-app/react-vite/{shared → src}/hooks/useDebounceFn.ts +0 -0
- /package/template/web-app/react-vite/{shared → src}/hooks/useInterval.ts +0 -0
- /package/template/web-app/{react-rsbuild/shared → react-vite/src}/hooks/useLazyRender.ts +0 -0
- /package/template/web-app/react-vite/{shared → src}/hooks/useLowPriorityState.ts +0 -0
- /package/template/web-app/react-vite/{shared → src}/hooks/useSyncState.ts +0 -0
- /package/template/web-app/react-vite/{shared → src}/hooks/useVisible.ts +0 -0
- /package/template/web-app/react-vite/{mockUtils.ts → src/mockUtils.ts} +0 -0
- /package/template/web-app/react-vite/{domain → src}/models/app.ts +0 -0
- /package/template/web-app/react-vite/{domain → src}/models/index.ts +0 -0
- /package/template/web-app/react-vite/{pages → src/pages}/home/index.ts +0 -0
- /package/template/web-app/react-vite/{pages → src/pages}/home/view.module.css +0 -0
- /package/template/web-app/react-vite/{pages → src/pages}/not-found.tsx +0 -0
- /package/template/web-app/react-vite/{domain → src}/router/components/index.ts +0 -0
- /package/template/web-app/react-vite/{domain → src}/router/home/ids.ts +0 -0
- /package/template/web-app/react-vite/{domain → src}/router/home/index.ts +0 -0
- /package/template/web-app/react-vite/{domain → src}/router/home/routes.tsx +0 -0
- /package/template/web-app/react-vite/{domain → src}/router/ids.ts +0 -0
- /package/template/web-app/react-vite/{domain → src}/router/index.ts +0 -0
- /package/template/web-app/react-vite/{shared → src}/service/api.ts +0 -0
- /package/template/web-app/react-vite/{shared → src}/service/home.ts +0 -0
- /package/template/web-app/react-vite/{shared → src}/service/index.ts +0 -0
- /package/template/web-app/react-vite/{shared → src}/service/request.ts +0 -0
- /package/template/web-app/react-vite/{shared → src}/styles/theme.css +0 -0
- /package/template/web-app/react-vite/{shared → src}/tools/index.ts +0 -0
- /package/template/web-app/vue/{shared/assets/vue.svg → src/assets/favicon.svg} +0 -0
- /package/template/web-app/vue/{domain → src}/components/createComponentInstance.ts +0 -0
- /package/template/web-app/vue/{domain → src}/components/index.ts +0 -0
- /package/template/web-app/{vue-rsbuild/shared/tools → vue/src/constant}/index.ts +0 -0
- /package/template/web-app/vue/{shared → src}/hooks/index.ts +0 -0
- /package/template/web-app/vue/{shared → src}/hooks/useList.ts +0 -0
- /package/template/web-app/vue/{shared → src}/hooks/useVisible.ts +0 -0
- /package/template/web-app/vue/{mockUtils.ts → src/mockUtils.ts} +0 -0
- /package/template/web-app/vue/{pages → src/pages}/home/index.ts +0 -0
- /package/template/web-app/vue/{pages → src/pages}/index.ts +0 -0
- /package/template/web-app/vue/{pages → src/pages}/index.vue +0 -0
- /package/template/web-app/vue/{pages → src/pages}/not-found.vue +0 -0
- /package/template/web-app/vue/{domain → src}/router/home/index.ts +0 -0
- /package/template/web-app/vue/{domain → src}/router/home/names.ts +0 -0
- /package/template/web-app/vue/{domain → src}/router/home/routes.ts +0 -0
- /package/template/web-app/vue/{domain → src}/router/index.ts +0 -0
- /package/template/web-app/vue/{domain → src}/router/names.ts +0 -0
- /package/template/web-app/vue/{shared → src}/service/api.ts +0 -0
- /package/template/web-app/vue/{shared → src}/service/home.ts +0 -0
- /package/template/web-app/vue/{shared → src}/service/index.ts +0 -0
- /package/template/web-app/vue/{shared → src}/service/request.ts +0 -0
- /package/template/web-app/vue/{shared → src}/styles/theme.css +0 -0
- /package/template/web-app/vue/{shared/components → src/tools}/index.ts +0 -0
- /package/template/web-app/vue-rsbuild/{shared → src}/assets/vue.svg +0 -0
- /package/template/web-app/vue-rsbuild/{domain → src}/components/createComponentInstance.ts +0 -0
- /package/template/web-app/vue-rsbuild/{domain → src}/components/index.ts +0 -0
- /package/template/web-app/vue-rsbuild/{shared/components → src/constant}/index.ts +0 -0
- /package/template/web-app/vue-rsbuild/{shared → src}/hooks/index.ts +0 -0
- /package/template/web-app/vue-rsbuild/{shared → src}/hooks/useList.ts +0 -0
- /package/template/web-app/vue-rsbuild/{shared → src}/hooks/useVisible.ts +0 -0
- /package/template/web-app/vue-rsbuild/{pages → src/pages}/home/index.ts +0 -0
- /package/template/web-app/vue-rsbuild/{pages → src/pages}/index.ts +0 -0
- /package/template/web-app/vue-rsbuild/{pages → src/pages}/index.vue +0 -0
- /package/template/web-app/vue-rsbuild/{pages → src/pages}/not-found.vue +0 -0
- /package/template/web-app/vue-rsbuild/{domain → src}/router/home/index.ts +0 -0
- /package/template/web-app/vue-rsbuild/{domain → src}/router/home/names.ts +0 -0
- /package/template/web-app/vue-rsbuild/{domain → src}/router/home/routes.ts +0 -0
- /package/template/web-app/vue-rsbuild/{domain → src}/router/index.ts +0 -0
- /package/template/web-app/vue-rsbuild/{domain → src}/router/names.ts +0 -0
- /package/template/web-app/vue-rsbuild/{shared → src}/service/api.ts +0 -0
- /package/template/web-app/vue-rsbuild/{shared → src}/service/home.ts +0 -0
- /package/template/web-app/vue-rsbuild/{shared → src}/service/index.ts +0 -0
- /package/template/web-app/vue-rsbuild/{shared → src}/service/request.ts +0 -0
- /package/template/web-app/vue-rsbuild/{shared → src}/styles/theme.css +0 -0
- /package/template/web-app/vue-rsbuild/{shared/constant → src/tools}/index.ts +0 -0
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"*.scss"
|
|
10
10
|
],
|
|
11
11
|
"scripts": {
|
|
12
|
-
"lint": "tsc --noEmit
|
|
12
|
+
"lint": "tsc --noEmit",
|
|
13
13
|
"test": "echo \"Error: no test specified\" && exit 1",
|
|
14
14
|
"storybook": "storybook dev -p 6006",
|
|
15
15
|
"build-storybook": "storybook build",
|
|
@@ -28,18 +28,10 @@
|
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"@types/react": "18.3.3",
|
|
30
30
|
"@types/react-dom": "18.3.0",
|
|
31
|
-
"eslint": "9.17.0",
|
|
32
|
-
"eslint-import-resolver-typescript": "3.7.0",
|
|
33
|
-
"eslint-plugin-import": "2.31.0",
|
|
34
|
-
"eslint-plugin-react": "7.37.2",
|
|
35
|
-
"eslint-plugin-react-hooks": "5.1.0",
|
|
36
|
-
"eslint-plugin-storybook": "0.11.1",
|
|
37
31
|
"globals": "15.12.0",
|
|
38
32
|
"prettier": "3.2.5",
|
|
39
33
|
"react": "18.2.0",
|
|
40
34
|
"react-dom": "18.2.0",
|
|
41
|
-
"
|
|
42
|
-
"stylelint-config-standard": "36.0.1",
|
|
43
|
-
"typescript": "5.8.2"
|
|
35
|
+
"typescript": "6.0.3"
|
|
44
36
|
}
|
|
45
37
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"compilerOptions": {
|
|
3
|
+
"rootDir": "./src",
|
|
3
4
|
"useDefineForClassFields": true,
|
|
4
5
|
"strict": true,
|
|
5
6
|
"forceConsistentCasingInFileNames": true,
|
|
@@ -17,9 +18,8 @@
|
|
|
17
18
|
"sourceMap": false,
|
|
18
19
|
"declaration": true,
|
|
19
20
|
"outDir": "dist",
|
|
20
|
-
"baseUrl": ".",
|
|
21
21
|
"emitDeclarationOnly": true
|
|
22
22
|
},
|
|
23
23
|
"include": ["src", "./global.d.ts"],
|
|
24
|
-
"exclude": ["node_modules/**/*"]
|
|
24
|
+
"exclude": ["node_modules/**/*", "**/*.stories.{ts,tsx}"]
|
|
25
25
|
}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"sideEffects": false,
|
|
8
8
|
"scripts": {
|
|
9
|
-
"lint": "tsc --noEmit
|
|
9
|
+
"lint": "tsc --noEmit",
|
|
10
10
|
"build": "tsc",
|
|
11
11
|
"test": "vitest",
|
|
12
12
|
"coverage": "vitest run --coverage"
|
|
@@ -17,14 +17,8 @@
|
|
|
17
17
|
"license": "ISC",
|
|
18
18
|
"devDependencies": {
|
|
19
19
|
"@vitest/coverage-v8": "3.1.2",
|
|
20
|
-
"eslint": "9.17.0",
|
|
21
|
-
"eslint-import-resolver-typescript": "3.7.0",
|
|
22
|
-
"eslint-plugin-import": "2.31.0",
|
|
23
20
|
"prettier": "3.2.5",
|
|
24
|
-
"
|
|
25
|
-
"stylelint-config-standard-scss": "13.0.0",
|
|
26
|
-
"typescript": "5.8.2",
|
|
27
|
-
"typescript-eslint": "8.15.0",
|
|
21
|
+
"typescript": "6.0.3",
|
|
28
22
|
"vitest": "3.1.2"
|
|
29
23
|
}
|
|
30
24
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"compilerOptions": {
|
|
3
|
+
"rootDir": "./src",
|
|
3
4
|
"useDefineForClassFields": true,
|
|
4
5
|
"strict": true,
|
|
5
6
|
"forceConsistentCasingInFileNames": true,
|
|
@@ -16,13 +17,8 @@
|
|
|
16
17
|
"sourceMap": false,
|
|
17
18
|
"declaration": true,
|
|
18
19
|
"outDir": "dist",
|
|
19
|
-
"baseUrl": ".",
|
|
20
20
|
"emitDeclarationOnly": true
|
|
21
21
|
},
|
|
22
|
-
"include": [
|
|
23
|
-
|
|
24
|
-
],
|
|
25
|
-
"exclude": [
|
|
26
|
-
"src/**/*.test.ts"
|
|
27
|
-
]
|
|
22
|
+
"include": ["src"],
|
|
23
|
+
"exclude": ["**/*.test.ts"]
|
|
28
24
|
}
|
|
@@ -1,21 +1,26 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import path from 'node:path'
|
|
2
|
+
import ora from 'ora'
|
|
3
|
+
import chalk from 'chalk'
|
|
4
|
+
import * as tsdown from 'tsdown'
|
|
3
5
|
|
|
4
6
|
async function build(lib: string) {
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
7
|
+
const task = ora().start(chalk.yellow(`buliding ${lib}...\n`))
|
|
8
|
+
try {
|
|
9
|
+
await tsdown.build({
|
|
10
|
+
cwd: path.join(process.cwd(), 'packages', lib),
|
|
11
|
+
entry: ['src/index.ts'],
|
|
12
|
+
format: ['esm'],
|
|
13
|
+
outDir: 'dist',
|
|
14
|
+
target: ['chrome109', 'edge109', 'firefox114', 'safari16.4'],
|
|
15
|
+
platform: 'browser',
|
|
16
|
+
dts: true,
|
|
17
|
+
unbundle: true,
|
|
18
|
+
logLevel: 'error'
|
|
19
|
+
})
|
|
20
|
+
task.succeed()
|
|
21
|
+
} catch (e: any) {
|
|
22
|
+
task.fail(e.message)
|
|
23
|
+
}
|
|
19
24
|
}
|
|
20
25
|
|
|
21
26
|
build('ts')
|
|
@@ -5,31 +5,18 @@
|
|
|
5
5
|
"forceConsistentCasingInFileNames": true,
|
|
6
6
|
"strictPropertyInitialization": false,
|
|
7
7
|
"resolveJsonModule": true,
|
|
8
|
-
"module": "
|
|
8
|
+
"module": "nodenext",
|
|
9
9
|
"esModuleInterop": true,
|
|
10
|
-
"jsx": "react-jsx",
|
|
11
10
|
"allowSyntheticDefaultImports": true,
|
|
12
11
|
"allowJs": true,
|
|
13
12
|
"target": "ESNext",
|
|
14
13
|
"noImplicitAny": false,
|
|
15
14
|
"skipLibCheck": true,
|
|
16
|
-
"moduleResolution": "
|
|
15
|
+
"moduleResolution": "nodenext",
|
|
17
16
|
"sourceMap": false,
|
|
18
17
|
"declaration": true,
|
|
19
|
-
"outDir": "dist",
|
|
20
|
-
"baseUrl": ".",
|
|
21
18
|
"emitDeclarationOnly": true
|
|
22
19
|
},
|
|
23
|
-
"include": [
|
|
24
|
-
|
|
25
|
-
],
|
|
26
|
-
"exclude": [
|
|
27
|
-
"node_modules/**/*",
|
|
28
|
-
"scripts/**/*"
|
|
29
|
-
],
|
|
30
|
-
"references": [
|
|
31
|
-
{
|
|
32
|
-
"path": "./tsconfig.node.json"
|
|
33
|
-
}
|
|
34
|
-
]
|
|
20
|
+
"include": [".storybook", "scripts/**/*"],
|
|
21
|
+
"exclude": ["node_modules/**/*", "scripts/**/*"]
|
|
35
22
|
}
|
|
@@ -21,9 +21,9 @@
|
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
23
|
"@tanstack/react-query": "5.51.15",
|
|
24
|
-
"axios": "1.
|
|
24
|
+
"axios": "1.16.0",
|
|
25
25
|
"define-zustand": "3.4.0",
|
|
26
|
-
"es-toolkit": "1.
|
|
26
|
+
"es-toolkit": "1.46.1",
|
|
27
27
|
"immer": "10.0.1",
|
|
28
28
|
"qs": "6.11.2",
|
|
29
29
|
"react": "18.3.1",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"react-router": "7.5.0",
|
|
32
32
|
"react-use": "17.5.0",
|
|
33
33
|
"tailwindcss": "4.1.4",
|
|
34
|
-
"type-fest": "
|
|
34
|
+
"type-fest": "5.6.0",
|
|
35
35
|
"zustand": "5.0.3"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
|
@@ -39,12 +39,12 @@
|
|
|
39
39
|
"@commitlint/config-conventional": "17.6.1",
|
|
40
40
|
"@commitlint/cz-commitlint": "17.5.0",
|
|
41
41
|
"@eslint/js": "9.15.0",
|
|
42
|
-
"@rsbuild/core": "
|
|
43
|
-
"@rsbuild/plugin-eslint": "1.
|
|
44
|
-
"@rsbuild/plugin-react": "
|
|
45
|
-
"@rsbuild/plugin-svgr": "
|
|
46
|
-
"@rsbuild/plugin-type-check": "1.3.
|
|
47
|
-
"@rsdoctor/rspack-plugin": "1.
|
|
42
|
+
"@rsbuild/core": "2.0.5",
|
|
43
|
+
"@rsbuild/plugin-eslint": "1.3.0",
|
|
44
|
+
"@rsbuild/plugin-react": "2.0.0",
|
|
45
|
+
"@rsbuild/plugin-svgr": "2.0.2",
|
|
46
|
+
"@rsbuild/plugin-type-check": "1.3.4",
|
|
47
|
+
"@rsdoctor/rspack-plugin": "1.5.10",
|
|
48
48
|
"@tailwindcss/postcss": "4.1.4",
|
|
49
49
|
"@types/node": "18.16.0",
|
|
50
50
|
"@types/qs": "6.9.7",
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
"cross-env": "7.0.3",
|
|
56
56
|
"cssnano": "6.0.0",
|
|
57
57
|
"eslint": "9.17.0",
|
|
58
|
-
"eslint-import-resolver-typescript": "
|
|
58
|
+
"eslint-import-resolver-typescript": "4.4.4",
|
|
59
59
|
"eslint-plugin-import": "2.31.0",
|
|
60
60
|
"eslint-plugin-react": "7.37.2",
|
|
61
61
|
"eslint-plugin-react-hooks": "5.1.0",
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
"stylelint": "16.10.0",
|
|
70
70
|
"stylelint-config-standard": "36.0.1",
|
|
71
71
|
"stylelint-webpack-plugin": "5.0.0",
|
|
72
|
-
"typescript": "
|
|
72
|
+
"typescript": "6.0.3"
|
|
73
73
|
},
|
|
74
74
|
"config": {
|
|
75
75
|
"commitizen": {
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import path from 'path'
|
|
1
2
|
import { defineConfig, loadEnv } from '@rsbuild/core'
|
|
2
3
|
import { pluginReact } from '@rsbuild/plugin-react'
|
|
3
4
|
import { pluginSvgr } from '@rsbuild/plugin-svgr'
|
|
@@ -14,16 +15,16 @@ export default defineConfig(({ envMode, command }) => {
|
|
|
14
15
|
html: {
|
|
15
16
|
template: './index.html',
|
|
16
17
|
title: 'Rsbuild + React + TS',
|
|
17
|
-
favicon: './
|
|
18
|
+
favicon: './src/assets/react.svg'
|
|
18
19
|
},
|
|
19
20
|
source: {
|
|
20
21
|
entry: {
|
|
21
|
-
index: './main.tsx'
|
|
22
|
+
index: './src/main.tsx'
|
|
22
23
|
}
|
|
23
24
|
},
|
|
24
25
|
resolve: {
|
|
25
26
|
alias: {
|
|
26
|
-
'@': __dirname
|
|
27
|
+
'@': path.resolve(__dirname, 'src')
|
|
27
28
|
}
|
|
28
29
|
},
|
|
29
30
|
output: {
|
|
@@ -56,22 +57,19 @@ export default defineConfig(({ envMode, command }) => {
|
|
|
56
57
|
],
|
|
57
58
|
performance: {
|
|
58
59
|
removeConsole: command === 'build' ? ['log'] : false,
|
|
59
|
-
chunkSplit: {
|
|
60
|
-
strategy: 'custom',
|
|
61
|
-
splitChunks: {
|
|
62
|
-
minChunks: 1,
|
|
63
|
-
cacheGroups: createChunks([{ libs: ['react', 'react-dom'], name: 'react' }])
|
|
64
|
-
}
|
|
65
|
-
},
|
|
66
60
|
bundleAnalyze: envMode === 'analyse' ? { openAnalyzer: true } : void 0
|
|
67
61
|
},
|
|
62
|
+
splitChunks: {
|
|
63
|
+
minChunks: 1,
|
|
64
|
+
cacheGroups: createChunks([{ libs: ['react', 'react-dom'], name: 'react' }])
|
|
65
|
+
},
|
|
68
66
|
server: {
|
|
69
67
|
base: env.PUBLIC_BASE_URL,
|
|
70
68
|
host: '0.0.0.0',
|
|
71
69
|
compress: false,
|
|
72
70
|
proxy: [
|
|
73
71
|
{
|
|
74
|
-
|
|
72
|
+
pathFilter: [env.PUBLIC_API_HOST],
|
|
75
73
|
target: 'http://127.0.0.1:3000'
|
|
76
74
|
}
|
|
77
75
|
]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { FunctionComponent, ReactNode } from 'react'
|
|
2
2
|
import { QueryClient, QueryClientProvider } from '@tanstack/react-query'
|
|
3
|
-
import { request } from '@/
|
|
3
|
+
import { request } from '@/service'
|
|
4
4
|
|
|
5
5
|
const queryClient = new QueryClient({
|
|
6
6
|
defaultOptions: {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useLayoutEffect, Suspense } from 'react'
|
|
2
2
|
import { RouterProvider } from 'react-router/dom'
|
|
3
|
-
import { request } from '@/
|
|
4
|
-
import { routerInstance } from '@/
|
|
3
|
+
import { request } from '@/service'
|
|
4
|
+
import { routerInstance } from '@/router'
|
|
5
5
|
import * as AppContext from './app-context'
|
|
6
6
|
|
|
7
7
|
export const Root = () => {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createRoot } from 'react-dom/client'
|
|
2
|
-
import { App } from '@/
|
|
3
|
-
import './
|
|
2
|
+
import { App } from '@/components'
|
|
3
|
+
import './styles/theme.css'
|
|
4
4
|
|
|
5
5
|
createRoot(document.getElementById('root') as HTMLElement).render(<App.Root />)
|
package/template/web-app/{react-vite/domain → react-rsbuild/src}/router/components/route-layout.tsx
RENAMED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { FunctionComponent } from 'react'
|
|
2
2
|
import { Outlet } from 'react-router'
|
|
3
3
|
import { last } from 'es-toolkit'
|
|
4
|
-
import {
|
|
4
|
+
import { useMatchRoutes } from '../router'
|
|
5
|
+
import { routeType } from '../router.types'
|
|
5
6
|
|
|
6
7
|
export interface propsType {
|
|
7
8
|
Index: FunctionComponent
|
package/template/web-app/react-rsbuild/{domain → src}/router/components/sub-route-outlet.tsx
RENAMED
|
@@ -2,7 +2,8 @@ import { FunctionComponent } from 'react'
|
|
|
2
2
|
import { Outlet } from 'react-router'
|
|
3
3
|
import { useMount } from 'react-use'
|
|
4
4
|
import { last } from 'es-toolkit'
|
|
5
|
-
import { useMatchRoutes, useRouter
|
|
5
|
+
import { useMatchRoutes, useRouter } from '../router'
|
|
6
|
+
import { routeType } from '../router.types'
|
|
6
7
|
|
|
7
8
|
export interface propsType {
|
|
8
9
|
rootId: routeType['id']
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"compilerOptions": {
|
|
3
|
-
"baseUrl": ".",
|
|
4
3
|
"target": "ESNext",
|
|
5
4
|
"useDefineForClassFields": true,
|
|
6
5
|
"lib": ["DOM", "DOM.Iterable", "ESNext"],
|
|
7
6
|
"allowJs": false,
|
|
8
7
|
"skipLibCheck": true,
|
|
9
|
-
"esModuleInterop": false,
|
|
10
8
|
"allowSyntheticDefaultImports": true,
|
|
11
9
|
"strict": true,
|
|
12
10
|
"forceConsistentCasingInFileNames": true,
|
|
@@ -17,16 +15,13 @@
|
|
|
17
15
|
"resolveJsonModule": true,
|
|
18
16
|
"isolatedModules": true,
|
|
19
17
|
"noEmit": true,
|
|
18
|
+
"noImplicitAny": false,
|
|
20
19
|
"jsx": "react-jsx",
|
|
21
20
|
"paths": {
|
|
22
|
-
"@/*": ["
|
|
23
|
-
}
|
|
21
|
+
"@/*": ["./src/*"]
|
|
22
|
+
},
|
|
23
|
+
"types": ["*"]
|
|
24
24
|
},
|
|
25
25
|
"include": ["**/*.ts", "**/*.tsx"],
|
|
26
|
-
"exclude": ["scripts", "
|
|
27
|
-
"references": [
|
|
28
|
-
{
|
|
29
|
-
"path": "./tsconfig.node.json"
|
|
30
|
-
}
|
|
31
|
-
]
|
|
26
|
+
"exclude": ["scripts", "vite.config.ts"]
|
|
32
27
|
}
|
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
<html lang="en">
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="UTF-8" />
|
|
5
|
-
<link rel="icon" type="image/svg+xml" href="/
|
|
5
|
+
<link rel="icon" type="image/svg+xml" href="/src/assets/favicon.svg" />
|
|
6
6
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
7
7
|
<title>Vite + React + TS</title>
|
|
8
8
|
</head>
|
|
9
9
|
<body>
|
|
10
10
|
<noscript>You need to enable JavaScript to run this app.</noscript>
|
|
11
11
|
<div id="root"></div>
|
|
12
|
-
<script type="module" src="/main.tsx"></script>
|
|
12
|
+
<script type="module" src="/src/main.tsx"></script>
|
|
13
13
|
</body>
|
|
14
14
|
</html>
|
|
@@ -1,78 +1,78 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "react-vite",
|
|
3
|
-
"private": true,
|
|
4
|
-
"version": "0.0.0",
|
|
5
|
-
"type": "module",
|
|
6
|
-
"scripts": {
|
|
7
|
-
"prepare": "husky",
|
|
8
|
-
"dev": "vite",
|
|
9
|
-
"build": "tsc --noEmit && vite build",
|
|
10
|
-
"build:analyse": "tsc --noEmit && vite build --mode analyse",
|
|
11
|
-
"preview": "vite preview",
|
|
12
|
-
"up:vite": "pnpm up vite @vitejs/* vite-plugin-* -L",
|
|
13
|
-
"up:tailwind": "pnpm up tailwindcss @tailwindcss/* -L",
|
|
14
|
-
"format": "prettier --write \"**/*.{ts,js,tsx,jsx,json,css,scss,less}\"",
|
|
15
|
-
"lint": "tsc --noEmit && eslint --no-error-on-unmatched-pattern && stylelint **/*.{css,scss,less,ts,tsx}",
|
|
16
|
-
"lint:fix": "eslint --fix && stylelint **/*.{css,scss,less,ts,tsx} --fix",
|
|
17
|
-
"cz": "cz",
|
|
18
|
-
"push": "npm run commit && git push",
|
|
19
|
-
"commit": "git add . && npm run cz"
|
|
20
|
-
},
|
|
21
|
-
"dependencies": {
|
|
22
|
-
"@tanstack/react-query": "5.51.15",
|
|
23
|
-
"axios": "1.
|
|
24
|
-
"define-zustand": "3.4.0",
|
|
25
|
-
"es-toolkit": "1.
|
|
26
|
-
"immer": "10.0.1",
|
|
27
|
-
"qs": "6.11.2",
|
|
28
|
-
"react": "18.3.1",
|
|
29
|
-
"react-dom": "18.3.1",
|
|
30
|
-
"react-router": "7.
|
|
31
|
-
"react-use": "17.5.0",
|
|
32
|
-
"tailwindcss": "4.1.4",
|
|
33
|
-
"type-fest": "
|
|
34
|
-
"zustand": "5.0.3"
|
|
35
|
-
},
|
|
36
|
-
"devDependencies": {
|
|
37
|
-
"@commitlint/cli": "17.6.1",
|
|
38
|
-
"@commitlint/config-conventional": "17.6.1",
|
|
39
|
-
"@commitlint/cz-commitlint": "17.5.0",
|
|
40
|
-
"@eslint/js": "9.15.0",
|
|
41
|
-
"@faker-js/faker": "8.4.1",
|
|
42
|
-
"@tailwindcss/vite": "^4.1.18",
|
|
43
|
-
"@types/node": "18.16.0",
|
|
44
|
-
"@types/qs": "6.9.7",
|
|
45
|
-
"@types/react": "18.3.3",
|
|
46
|
-
"@types/react-dom": "18.3.0",
|
|
47
|
-
"@vitejs/plugin-react": "
|
|
48
|
-
"autoprefixer": "10.4.14",
|
|
49
|
-
"commitizen": "4.3.0",
|
|
50
|
-
"cssnano": "6.0.0",
|
|
51
|
-
"eslint": "9.17.0",
|
|
52
|
-
"eslint-import-resolver-typescript": "
|
|
53
|
-
"eslint-plugin-import": "2.31.0",
|
|
54
|
-
"eslint-plugin-react": "7.37.2",
|
|
55
|
-
"eslint-plugin-react-hooks": "5.1.0",
|
|
56
|
-
"globals": "15.12.0",
|
|
57
|
-
"husky": "9.1.6",
|
|
58
|
-
"inquirer": "8.1.2",
|
|
59
|
-
"postcss": "8.4.35",
|
|
60
|
-
"postcss-import": "16.0.1",
|
|
61
|
-
"postcss-nesting": "12.0.3",
|
|
62
|
-
"prettier": "3.2.5",
|
|
63
|
-
"rollup-plugin-visualizer": "5.12.0",
|
|
64
|
-
"stylelint": "16.10.0",
|
|
65
|
-
"stylelint-config-standard": "36.0.1",
|
|
66
|
-
"typescript": "
|
|
67
|
-
"typescript-eslint": "8.
|
|
68
|
-
"vite": "
|
|
69
|
-
"vite-plugin-checker": "0.
|
|
70
|
-
"vite-plugin-mock-dev-server": "2.0
|
|
71
|
-
"vite-plugin-svgr": "
|
|
72
|
-
},
|
|
73
|
-
"config": {
|
|
74
|
-
"commitizen": {
|
|
75
|
-
"path": "@commitlint/cz-commitlint"
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "react-vite",
|
|
3
|
+
"private": true,
|
|
4
|
+
"version": "0.0.0",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"scripts": {
|
|
7
|
+
"prepare": "husky",
|
|
8
|
+
"dev": "vite",
|
|
9
|
+
"build": "tsc --noEmit && vite build",
|
|
10
|
+
"build:analyse": "tsc --noEmit && vite build --mode analyse",
|
|
11
|
+
"preview": "vite preview",
|
|
12
|
+
"up:vite": "pnpm up vite @vitejs/* vite-plugin-* -L",
|
|
13
|
+
"up:tailwind": "pnpm up tailwindcss @tailwindcss/* -L",
|
|
14
|
+
"format": "prettier --write \"**/*.{ts,js,tsx,jsx,json,css,scss,less}\"",
|
|
15
|
+
"lint": "tsc --noEmit && eslint --no-error-on-unmatched-pattern && stylelint **/*.{css,scss,less,ts,tsx}",
|
|
16
|
+
"lint:fix": "eslint --fix && stylelint **/*.{css,scss,less,ts,tsx} --fix",
|
|
17
|
+
"cz": "cz",
|
|
18
|
+
"push": "npm run commit && git push",
|
|
19
|
+
"commit": "git add . && npm run cz"
|
|
20
|
+
},
|
|
21
|
+
"dependencies": {
|
|
22
|
+
"@tanstack/react-query": "5.51.15",
|
|
23
|
+
"axios": "1.16.0",
|
|
24
|
+
"define-zustand": "3.4.0",
|
|
25
|
+
"es-toolkit": "1.46.1",
|
|
26
|
+
"immer": "10.0.1",
|
|
27
|
+
"qs": "6.11.2",
|
|
28
|
+
"react": "18.3.1",
|
|
29
|
+
"react-dom": "18.3.1",
|
|
30
|
+
"react-router": "7.13.2",
|
|
31
|
+
"react-use": "17.5.0",
|
|
32
|
+
"tailwindcss": "4.1.4",
|
|
33
|
+
"type-fest": "5.6.0",
|
|
34
|
+
"zustand": "5.0.3"
|
|
35
|
+
},
|
|
36
|
+
"devDependencies": {
|
|
37
|
+
"@commitlint/cli": "17.6.1",
|
|
38
|
+
"@commitlint/config-conventional": "17.6.1",
|
|
39
|
+
"@commitlint/cz-commitlint": "17.5.0",
|
|
40
|
+
"@eslint/js": "9.15.0",
|
|
41
|
+
"@faker-js/faker": "8.4.1",
|
|
42
|
+
"@tailwindcss/vite": "^4.1.18",
|
|
43
|
+
"@types/node": "18.16.0",
|
|
44
|
+
"@types/qs": "6.9.7",
|
|
45
|
+
"@types/react": "18.3.3",
|
|
46
|
+
"@types/react-dom": "18.3.0",
|
|
47
|
+
"@vitejs/plugin-react": "6.0.1",
|
|
48
|
+
"autoprefixer": "10.4.14",
|
|
49
|
+
"commitizen": "4.3.0",
|
|
50
|
+
"cssnano": "6.0.0",
|
|
51
|
+
"eslint": "9.17.0",
|
|
52
|
+
"eslint-import-resolver-typescript": "4.4.4",
|
|
53
|
+
"eslint-plugin-import": "2.31.0",
|
|
54
|
+
"eslint-plugin-react": "7.37.2",
|
|
55
|
+
"eslint-plugin-react-hooks": "5.1.0",
|
|
56
|
+
"globals": "15.12.0",
|
|
57
|
+
"husky": "9.1.6",
|
|
58
|
+
"inquirer": "8.1.2",
|
|
59
|
+
"postcss": "8.4.35",
|
|
60
|
+
"postcss-import": "16.0.1",
|
|
61
|
+
"postcss-nesting": "12.0.3",
|
|
62
|
+
"prettier": "3.2.5",
|
|
63
|
+
"rollup-plugin-visualizer": "5.12.0",
|
|
64
|
+
"stylelint": "16.10.0",
|
|
65
|
+
"stylelint-config-standard": "36.0.1",
|
|
66
|
+
"typescript": "6.0.3",
|
|
67
|
+
"typescript-eslint": "8.59.2",
|
|
68
|
+
"vite": "8.0.11",
|
|
69
|
+
"vite-plugin-checker": "0.13.0",
|
|
70
|
+
"vite-plugin-mock-dev-server": "2.2.0",
|
|
71
|
+
"vite-plugin-svgr": "5.2.0"
|
|
72
|
+
},
|
|
73
|
+
"config": {
|
|
74
|
+
"commitizen": {
|
|
75
|
+
"path": "@commitlint/cz-commitlint"
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { type BuildEnvironmentOptions } from 'vite'
|
|
2
|
+
|
|
3
|
+
type OutputOption<T> = T extends Array<infer O> ? O : T
|
|
4
|
+
type CodeSplitting = NonNullable<
|
|
5
|
+
OutputOption<NonNullable<BuildEnvironmentOptions['rolldownOptions']>['output']>
|
|
6
|
+
>['codeSplitting']
|
|
7
|
+
|
|
8
|
+
export function createCodeSplitting(
|
|
9
|
+
chunks: Array<{ name: string; libs: string[] | RegExp; priority: number }>
|
|
10
|
+
) {
|
|
11
|
+
const result = {
|
|
12
|
+
groups: [
|
|
13
|
+
{
|
|
14
|
+
test: /[\\/]node_modules[\\/]/,
|
|
15
|
+
name: 'vendors',
|
|
16
|
+
priority: 1
|
|
17
|
+
}
|
|
18
|
+
]
|
|
19
|
+
} satisfies CodeSplitting
|
|
20
|
+
chunks.forEach(({ name, libs, priority }) => {
|
|
21
|
+
result.groups.unshift({
|
|
22
|
+
test: Array.isArray(libs)
|
|
23
|
+
? new RegExp(`[\\\\/]node_modules[\\\\/](${libs.join('|')})[\\\\/]`)
|
|
24
|
+
: libs,
|
|
25
|
+
name,
|
|
26
|
+
priority
|
|
27
|
+
})
|
|
28
|
+
})
|
|
29
|
+
return result
|
|
30
|
+
}
|