@moluoxixi/create-app 2.0.412 → 2.0.414
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/README.md +57 -1
- package/dist/commands/create.js +1 -1
- package/dist/core/feature.d.ts +80 -0
- package/dist/core/feature.js +252 -0
- package/dist/core/index.d.ts +6 -0
- package/dist/core/index.js +6 -0
- package/dist/core/prompts.d.ts +17 -0
- package/dist/core/prompts.js +235 -0
- package/dist/core/template.d.ts +22 -0
- package/dist/core/template.js +177 -0
- package/dist/generators/index.d.ts +0 -2
- package/dist/generators/index.js +0 -2
- package/dist/generators/project.d.ts +1 -0
- package/dist/generators/project.js +66 -13
- package/dist/generators/react.d.ts +5 -5
- package/dist/generators/react.js +6 -9
- package/dist/generators/vue.d.ts +5 -5
- package/dist/generators/vue.js +6 -9
- package/dist/test.d.ts +0 -4
- package/dist/test.js +32 -17
- package/dist/types/index.d.ts +25 -26
- package/dist/types/index.js +2 -3
- package/dist/utils/featureMapping.js +6 -3
- package/dist/utils/generateFrameworkProject.d.ts +10 -20
- package/dist/utils/generateFrameworkProject.js +32 -127
- package/dist/utils/index.d.ts +1 -6
- package/dist/utils/index.js +1 -6
- package/dist/utils/prompts.js +7 -3
- package/package.json +2 -2
- package/templates/common/base/package.json +3 -1
- package/templates/common/base/vite/index.ts +53 -0
- package/templates/common/base/vite.config.ts +56 -0
- package/templates/common/features/husky/node_modules/.bin/tsc +17 -0
- package/templates/common/features/husky/node_modules/.bin/tsc.CMD +12 -0
- package/templates/common/features/husky/node_modules/.bin/tsc.ps1 +41 -0
- package/templates/common/features/husky/node_modules/.bin/tsserver +17 -0
- package/templates/common/features/husky/node_modules/.bin/tsserver.CMD +12 -0
- package/templates/common/features/husky/node_modules/.bin/tsserver.ps1 +41 -0
- package/templates/react/base/src/main/index.ts +34 -0
- package/templates/react/base/src/main.tsx +34 -0
- package/templates/react/base/tsconfig.app.json +1 -0
- package/templates/react/base/tsconfig.node.json +1 -0
- package/templates/react/features/ant-design/package.json +2 -1
- package/templates/react/features/ant-design/src/main/features/ant-design.ts +21 -0
- package/templates/react/features/i18n/package.json +2 -1
- package/templates/react/features/i18n/src/main/features/i18n.ts +19 -0
- package/templates/react/features/manualRoutes/package.json +1 -0
- package/templates/react/features/sentry/package.json +2 -1
- package/templates/react/features/sentry/src/main/features/sentry.ts +20 -0
- package/templates/react/features/sentry/vite/features/sentry.ts +39 -0
- package/templates/react/features/zustand/src/apis/types/user.ts +39 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/jiti +17 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/jiti.CMD +12 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/jiti.ps1 +41 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/parser +17 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/parser.CMD +12 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/parser.ps1 +41 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/rollup +17 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/rollup.CMD +12 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/rollup.ps1 +41 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/sass +17 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/sass.CMD +12 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/sass.ps1 +41 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/terser +17 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/terser.CMD +12 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/terser.ps1 +41 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/tsc +17 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/tsc.CMD +12 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/tsc.ps1 +41 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/tsserver +17 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/tsserver.CMD +12 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/tsserver.ps1 +41 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/tsx +17 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/tsx.CMD +12 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/tsx.ps1 +41 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/vite +17 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/vite.CMD +12 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/vite.ps1 +41 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/yaml +17 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/yaml.CMD +12 -0
- package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/yaml.ps1 +41 -0
- package/templates/react/micro-frontends/qiankun/base/package.json +5 -2
- package/templates/react/micro-frontends/qiankun/base/src/main/index.ts +34 -0
- package/templates/react/micro-frontends/qiankun/base/src/{main.tsx.ejs → main.tsx} +13 -27
- package/templates/react/micro-frontends/qiankun/base/vite/index.ts +53 -0
- package/templates/react/micro-frontends/qiankun/base/vite.config.ts +58 -0
- package/templates/vue/base/src/main/index.ts +36 -0
- package/templates/vue/base/src/main.ts +34 -0
- package/templates/vue/base/tsconfig.app.json +2 -1
- package/templates/vue/base/tsconfig.node.json +2 -1
- package/templates/vue/features/ant-design-vue/package.json +3 -1
- package/templates/vue/features/ant-design-vue/src/main/features/ant-design-vue.ts +18 -0
- package/templates/vue/features/element-plus/package.json +5 -1
- package/templates/vue/features/element-plus/src/main/features/element-plus.ts +23 -0
- package/templates/vue/features/element-plus/src/stores/index.ts +6 -0
- package/templates/vue/features/element-plus/src/stores/modules/system.ts +51 -0
- package/templates/vue/features/element-plus/vite/features/element-plus.ts +35 -0
- package/templates/vue/features/i18n/package.json +3 -1
- package/templates/vue/features/i18n/src/main/features/i18n.ts +19 -0
- package/templates/vue/features/manualRoutes/package.json +7 -1
- package/templates/vue/features/manualRoutes/src/layouts/index.ts +26 -0
- package/templates/vue/features/manualRoutes/src/stores/index.ts +6 -0
- package/templates/vue/features/manualRoutes/src/stores/modules/system.ts +51 -0
- package/templates/vue/features/pageRoutes/package.json +7 -1
- package/templates/vue/features/pageRoutes/src/layouts/index.ts +26 -0
- package/templates/vue/features/pageRoutes/src/stores/index.ts +6 -0
- package/templates/vue/features/pageRoutes/src/stores/modules/system.ts +51 -0
- package/templates/vue/features/pinia/package.json +3 -1
- package/templates/vue/features/pinia/src/main/features/pinia.ts +19 -0
- package/templates/vue/features/sentry/package.json +4 -2
- package/templates/vue/features/sentry/src/main/features/sentry.ts +22 -0
- package/templates/vue/features/sentry/vite/features/sentry.ts +39 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/jiti +17 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/jiti.CMD +12 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/jiti.ps1 +41 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/parser +17 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/parser.CMD +12 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/parser.ps1 +41 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/rollup +17 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/rollup.CMD +12 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/rollup.ps1 +41 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/sass +17 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/sass.CMD +12 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/sass.ps1 +41 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/terser +17 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/terser.CMD +12 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/terser.ps1 +41 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/tsc +17 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/tsc.CMD +12 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/tsc.ps1 +41 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/tsserver +17 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/tsserver.CMD +12 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/tsserver.ps1 +41 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/tsx +17 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/tsx.CMD +12 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/tsx.ps1 +41 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/vite +17 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/vite.CMD +12 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/vite.ps1 +41 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/yaml +17 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/yaml.CMD +12 -0
- package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/yaml.ps1 +41 -0
- package/templates/vue/micro-frontends/qiankun/base/package.json +5 -2
- package/templates/vue/micro-frontends/qiankun/base/src/main/index.ts +36 -0
- package/templates/vue/micro-frontends/qiankun/base/src/{main.ts.ejs → main.ts} +11 -28
- package/templates/vue/micro-frontends/qiankun/base/vite/index.ts +53 -0
- package/templates/vue/micro-frontends/qiankun/base/vite.config.ts +59 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/jiti +17 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/jiti.CMD +12 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/jiti.ps1 +41 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/sass +17 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/sass.CMD +12 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/sass.ps1 +41 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/terser +17 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/terser.CMD +12 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/terser.ps1 +41 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/tsc +17 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/tsc.CMD +12 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/tsc.ps1 +41 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/tsserver +17 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/tsserver.CMD +12 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/tsserver.ps1 +41 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/tsx +17 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/tsx.CMD +12 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/tsx.ps1 +41 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/vite +17 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/vite.CMD +12 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/vite.ps1 +41 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/yaml +17 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/yaml.CMD +12 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/yaml.ps1 +41 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/package.json +10 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/src/components/SubMenu/index.ts +8 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/src/components/SubMenu/src/_types/index.ts +1 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/src/components/SubMenu/src/_types/props.ts +16 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/src/components/SubMenu/src/index.vue +60 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/src/main/features/element-plus.ts +24 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/src/stores/index.ts +6 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/src/stores/modules/system.ts +51 -0
- package/templates/vue/micro-frontends/qiankun/features/element-plus/vite/features/element-plus.ts +35 -0
- package/templates/vue/micro-frontends/qiankun/features/manualRoutes/package.json +6 -1
- package/templates/vue/micro-frontends/qiankun/features/pageRoutes/package.json +6 -1
- package/templates/common/base/vite.config.ts.ejs +0 -85
- package/templates/react/base/src/main.tsx.ejs +0 -56
- package/templates/react/micro-frontends/qiankun/base/vite.config.ts.ejs +0 -89
- package/templates/vue/base/src/main.ts.ejs +0 -61
- package/templates/vue/micro-frontends/qiankun/base/vite.config.ts.ejs +0 -89
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import path from 'node:path'
|
|
2
|
-
import process from 'node:process'
|
|
3
|
-
import cssModuleGlobalRootPlugin from '@moluoxixi/css-module-global-root-plugin'
|
|
4
|
-
import { ViteConfig, wrapperEnv } from '@moluoxixi/vite-config'
|
|
5
|
-
import { loadEnv } from 'vite'
|
|
6
|
-
<% if (sentry) { -%>
|
|
7
|
-
import { sentryVitePlugin } from '@sentry/vite-plugin'
|
|
8
|
-
<% } -%>
|
|
9
|
-
|
|
10
|
-
export default ViteConfig(
|
|
11
|
-
({ mode }) => {
|
|
12
|
-
const env = loadEnv(mode!, process.cwd())
|
|
13
|
-
const viteEnv = wrapperEnv(env)
|
|
14
|
-
const rootPath = path.resolve()
|
|
15
|
-
const appCode = viteEnv.VITE_APP_CODE
|
|
16
|
-
const appTitle = viteEnv.VITE_APP_TITLE
|
|
17
|
-
const port = viteEnv.VITE_APP_PORT
|
|
18
|
-
|
|
19
|
-
return {
|
|
20
|
-
rootPath,
|
|
21
|
-
appTitle,
|
|
22
|
-
appCode,
|
|
23
|
-
port,
|
|
24
|
-
<% if (framework === 'vue') { -%>
|
|
25
|
-
vue: true,
|
|
26
|
-
autoComponent: true,
|
|
27
|
-
<% } else if (framework === 'react') { -%>
|
|
28
|
-
react: true,
|
|
29
|
-
<% } -%>
|
|
30
|
-
<% if (routeMode === 'pageRoutes') { -%>
|
|
31
|
-
pageRoutes: true,
|
|
32
|
-
<% } -%>
|
|
33
|
-
viteConfig: {
|
|
34
|
-
plugins: [
|
|
35
|
-
<% if (sentry) { -%>
|
|
36
|
-
viteEnv.VITE_SENTRY && mode === 'production' && sentryVitePlugin({
|
|
37
|
-
authToken: process.env.SENTRY_AUTH_TOKEN,
|
|
38
|
-
org: 'f1f562b9b82f',
|
|
39
|
-
project: 'javascript-<%= framework %>',
|
|
40
|
-
sourcemaps: {
|
|
41
|
-
assets: './dist/**',
|
|
42
|
-
ignore: ['node_modules'],
|
|
43
|
-
},
|
|
44
|
-
release: {
|
|
45
|
-
name: viteEnv.VITE_APP_VERSION || 'unknown',
|
|
46
|
-
},
|
|
47
|
-
}),
|
|
48
|
-
<% } -%>
|
|
49
|
-
],
|
|
50
|
-
server: {
|
|
51
|
-
proxy: {
|
|
52
|
-
'/api': {
|
|
53
|
-
changeOrigin: true,
|
|
54
|
-
target: 'http://localhost:3000',
|
|
55
|
-
},
|
|
56
|
-
},
|
|
57
|
-
},
|
|
58
|
-
css: {
|
|
59
|
-
preprocessorOptions: {
|
|
60
|
-
scss: {
|
|
61
|
-
silenceDeprecations: ['legacy-js-api'],
|
|
62
|
-
api: 'modern-compiler',
|
|
63
|
-
<% if (uiLibrary === 'element-plus') { -%>
|
|
64
|
-
additionalData: (source: string, filename: string) => {
|
|
65
|
-
if (filename.includes('assets/styles/element/index.scss')) {
|
|
66
|
-
return `$namespace : ${appCode || 'el'};
|
|
67
|
-
${source}`
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
return source
|
|
71
|
-
}
|
|
72
|
-
},
|
|
73
|
-
<% } -%>
|
|
74
|
-
},
|
|
75
|
-
postcss: {
|
|
76
|
-
plugins: [
|
|
77
|
-
cssModuleGlobalRootPlugin() as any,
|
|
78
|
-
],
|
|
79
|
-
},
|
|
80
|
-
},
|
|
81
|
-
},
|
|
82
|
-
},
|
|
83
|
-
}
|
|
84
|
-
},
|
|
85
|
-
)
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 应用入口文件 - 标准模式
|
|
3
|
-
* 初始化 React 应用并挂载到 DOM
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
import React from 'react'
|
|
7
|
-
import ReactDOM from 'react-dom/client'
|
|
8
|
-
<% if (hasRouter) { -%>
|
|
9
|
-
import { RouterProvider } from 'react-router-dom'
|
|
10
|
-
import { createRouter } from '@/router'
|
|
11
|
-
<% } else { -%>
|
|
12
|
-
import App from './App'
|
|
13
|
-
<% } -%>
|
|
14
|
-
<% if (i18n) { -%>
|
|
15
|
-
import '@/locales'
|
|
16
|
-
<% } -%>
|
|
17
|
-
<% if (sentry) { -%>
|
|
18
|
-
import { initSentry } from '@/utils/sentry'
|
|
19
|
-
<% } -%>
|
|
20
|
-
|
|
21
|
-
// 导入样式文件
|
|
22
|
-
<% if (uiLibrary === 'ant-design') { -%>
|
|
23
|
-
import 'antd/dist/reset.css'
|
|
24
|
-
<% } -%>
|
|
25
|
-
import '@/assets/styles/main.scss'
|
|
26
|
-
import '@/assets/fonts/index.css'
|
|
27
|
-
|
|
28
|
-
<% if (sentry) { -%>
|
|
29
|
-
// 初始化 Sentry
|
|
30
|
-
initSentry({
|
|
31
|
-
dsn: import.meta.env.VITE_SENTRY_DSN,
|
|
32
|
-
environment: import.meta.env.MODE,
|
|
33
|
-
})
|
|
34
|
-
|
|
35
|
-
<% } -%>
|
|
36
|
-
/**
|
|
37
|
-
* 初始化并渲染应用
|
|
38
|
-
*/
|
|
39
|
-
function initApp(): void {
|
|
40
|
-
<% if (hasRouter) { -%>
|
|
41
|
-
const router = createRouter()
|
|
42
|
-
<% } -%>
|
|
43
|
-
const root = ReactDOM.createRoot(document.getElementById('root')!)
|
|
44
|
-
|
|
45
|
-
root.render(
|
|
46
|
-
<React.StrictMode>
|
|
47
|
-
<% if (hasRouter) { -%>
|
|
48
|
-
<RouterProvider router={router} />
|
|
49
|
-
<% } else { -%>
|
|
50
|
-
<App />
|
|
51
|
-
<% } -%>
|
|
52
|
-
</React.StrictMode>,
|
|
53
|
-
)
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
initApp()
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import path from 'node:path'
|
|
2
|
-
import process from 'node:process'
|
|
3
|
-
import cssModuleGlobalRootPlugin from '@moluoxixi/css-module-global-root-plugin'
|
|
4
|
-
import { ViteConfig, wrapperEnv } from '@moluoxixi/vite-config'
|
|
5
|
-
import { loadEnv } from 'vite'
|
|
6
|
-
<% if (sentry) { -%>
|
|
7
|
-
import { sentryVitePlugin } from '@sentry/vite-plugin'
|
|
8
|
-
<% } -%>
|
|
9
|
-
|
|
10
|
-
export default ViteConfig(
|
|
11
|
-
({ mode }) => {
|
|
12
|
-
const env = loadEnv(mode!, process.cwd())
|
|
13
|
-
const viteEnv = wrapperEnv(env)
|
|
14
|
-
const rootPath = path.resolve()
|
|
15
|
-
const appCode = viteEnv.VITE_APP_CODE
|
|
16
|
-
const appTitle = viteEnv.VITE_APP_TITLE
|
|
17
|
-
const port = viteEnv.VITE_APP_PORT
|
|
18
|
-
|
|
19
|
-
return {
|
|
20
|
-
rootPath,
|
|
21
|
-
appTitle,
|
|
22
|
-
appCode,
|
|
23
|
-
port,
|
|
24
|
-
<% if (framework === 'vue') { -%>
|
|
25
|
-
vue: true,
|
|
26
|
-
autoComponent: true,
|
|
27
|
-
<% } else if (framework === 'react') { -%>
|
|
28
|
-
react: true,
|
|
29
|
-
<% } -%>
|
|
30
|
-
<% if (routeMode === 'pageRoutes') { -%>
|
|
31
|
-
pageRoutes: true,
|
|
32
|
-
<% } -%>
|
|
33
|
-
viteConfig: {
|
|
34
|
-
plugins: [
|
|
35
|
-
<% if (sentry) { -%>
|
|
36
|
-
viteEnv.VITE_SENTRY && mode === 'production' && sentryVitePlugin({
|
|
37
|
-
authToken: process.env.SENTRY_AUTH_TOKEN,
|
|
38
|
-
org: 'f1f562b9b82f',
|
|
39
|
-
project: 'javascript-<%= framework %>',
|
|
40
|
-
sourcemaps: {
|
|
41
|
-
assets: './dist/**',
|
|
42
|
-
ignore: ['node_modules'],
|
|
43
|
-
},
|
|
44
|
-
release: {
|
|
45
|
-
name: viteEnv.VITE_APP_VERSION || 'unknown',
|
|
46
|
-
},
|
|
47
|
-
}),
|
|
48
|
-
<% } -%>
|
|
49
|
-
],
|
|
50
|
-
server: {
|
|
51
|
-
proxy: {
|
|
52
|
-
'/api': {
|
|
53
|
-
changeOrigin: true,
|
|
54
|
-
target: 'http://localhost:3000',
|
|
55
|
-
},
|
|
56
|
-
},
|
|
57
|
-
headers: {
|
|
58
|
-
'Access-Control-Allow-Origin': '*',
|
|
59
|
-
},
|
|
60
|
-
},
|
|
61
|
-
css: {
|
|
62
|
-
preprocessorOptions: {
|
|
63
|
-
scss: {
|
|
64
|
-
silenceDeprecations: ['legacy-js-api'],
|
|
65
|
-
api: 'modern-compiler',
|
|
66
|
-
<% if (uiLibrary === 'element-plus') { -%>
|
|
67
|
-
additionalData: (source: string, filename: string) => {
|
|
68
|
-
if (filename.includes('assets/styles/element/index.scss')) {
|
|
69
|
-
return `$namespace : ${appCode || 'el'};
|
|
70
|
-
${source}`
|
|
71
|
-
}
|
|
72
|
-
else {
|
|
73
|
-
return source
|
|
74
|
-
}
|
|
75
|
-
},
|
|
76
|
-
<% } -%>
|
|
77
|
-
},
|
|
78
|
-
postcss: {
|
|
79
|
-
plugins: [
|
|
80
|
-
cssModuleGlobalRootPlugin() as any,
|
|
81
|
-
],
|
|
82
|
-
},
|
|
83
|
-
},
|
|
84
|
-
},
|
|
85
|
-
},
|
|
86
|
-
}
|
|
87
|
-
},
|
|
88
|
-
)
|
|
89
|
-
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 应用入口文件 - 标准模式
|
|
3
|
-
* 初始化 Vue 应用并挂载到 DOM
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
import { createApp } from 'vue'
|
|
7
|
-
import directives from '@/directives'
|
|
8
|
-
<% if (i18n) { -%>
|
|
9
|
-
import i18n from '@/locales'
|
|
10
|
-
<% } -%>
|
|
11
|
-
<% if (sentry) { -%>
|
|
12
|
-
import { initSentry } from '@/utils/sentry'
|
|
13
|
-
<% } -%>
|
|
14
|
-
<% if (pinia) { -%>
|
|
15
|
-
import { store } from '@/stores'
|
|
16
|
-
<% } -%>
|
|
17
|
-
import App from './App.vue'
|
|
18
|
-
<% if (hasRouter) { -%>
|
|
19
|
-
import getRouter from './router'
|
|
20
|
-
<% } -%>
|
|
21
|
-
|
|
22
|
-
// 导入样式文件
|
|
23
|
-
<% if (uiLibrary === 'element-plus') { -%>
|
|
24
|
-
import '@/assets/styles/element/index.scss'
|
|
25
|
-
<% } -%>
|
|
26
|
-
import '@/assets/styles/main.scss'
|
|
27
|
-
import '@/assets/fonts/index.css'
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* 初始化并渲染应用
|
|
31
|
-
*/
|
|
32
|
-
async function initApp(): Promise<void> {
|
|
33
|
-
const app = createApp(App)
|
|
34
|
-
|
|
35
|
-
directives(app)
|
|
36
|
-
<% if (hasRouter) { -%>
|
|
37
|
-
const router = getRouter()
|
|
38
|
-
|
|
39
|
-
<% } -%>
|
|
40
|
-
<% if (sentry) { -%>
|
|
41
|
-
initSentry(app<% if (hasRouter) { %>, router<% } %>, {
|
|
42
|
-
dsn: import.meta.env.VITE_SENTRY_DSN,
|
|
43
|
-
environment: import.meta.env.MODE,
|
|
44
|
-
})
|
|
45
|
-
|
|
46
|
-
<% } -%>
|
|
47
|
-
<% if (pinia) { -%>
|
|
48
|
-
app.use(store)
|
|
49
|
-
<% } -%>
|
|
50
|
-
<% if (i18n) { -%>
|
|
51
|
-
app.use(i18n)
|
|
52
|
-
<% } -%>
|
|
53
|
-
<% if (hasRouter) { -%>
|
|
54
|
-
app.use(router)
|
|
55
|
-
<% } -%>
|
|
56
|
-
app.config.warnHandler = () => null
|
|
57
|
-
|
|
58
|
-
app.mount('#app')
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
initApp()
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import path from 'node:path'
|
|
2
|
-
import process from 'node:process'
|
|
3
|
-
import cssModuleGlobalRootPlugin from '@moluoxixi/css-module-global-root-plugin'
|
|
4
|
-
import { ViteConfig, wrapperEnv } from '@moluoxixi/vite-config'
|
|
5
|
-
import { loadEnv } from 'vite'
|
|
6
|
-
<% if (sentry) { -%>
|
|
7
|
-
import { sentryVitePlugin } from '@sentry/vite-plugin'
|
|
8
|
-
<% } -%>
|
|
9
|
-
|
|
10
|
-
export default ViteConfig(
|
|
11
|
-
({ mode }) => {
|
|
12
|
-
const env = loadEnv(mode!, process.cwd())
|
|
13
|
-
const viteEnv = wrapperEnv(env)
|
|
14
|
-
const rootPath = path.resolve()
|
|
15
|
-
const appCode = viteEnv.VITE_APP_CODE
|
|
16
|
-
const appTitle = viteEnv.VITE_APP_TITLE
|
|
17
|
-
const port = viteEnv.VITE_APP_PORT
|
|
18
|
-
|
|
19
|
-
return {
|
|
20
|
-
rootPath,
|
|
21
|
-
appTitle,
|
|
22
|
-
appCode,
|
|
23
|
-
port,
|
|
24
|
-
<% if (framework === 'vue') { -%>
|
|
25
|
-
vue: true,
|
|
26
|
-
autoComponent: true,
|
|
27
|
-
<% } else if (framework === 'react') { -%>
|
|
28
|
-
react: true,
|
|
29
|
-
<% } -%>
|
|
30
|
-
<% if (routeMode === 'pageRoutes') { -%>
|
|
31
|
-
pageRoutes: true,
|
|
32
|
-
<% } -%>
|
|
33
|
-
viteConfig: {
|
|
34
|
-
plugins: [
|
|
35
|
-
<% if (sentry) { -%>
|
|
36
|
-
viteEnv.VITE_SENTRY && mode === 'production' && sentryVitePlugin({
|
|
37
|
-
authToken: process.env.SENTRY_AUTH_TOKEN,
|
|
38
|
-
org: 'f1f562b9b82f',
|
|
39
|
-
project: 'javascript-<%= framework %>',
|
|
40
|
-
sourcemaps: {
|
|
41
|
-
assets: './dist/**',
|
|
42
|
-
ignore: ['node_modules'],
|
|
43
|
-
},
|
|
44
|
-
release: {
|
|
45
|
-
name: viteEnv.VITE_APP_VERSION || 'unknown',
|
|
46
|
-
},
|
|
47
|
-
}),
|
|
48
|
-
<% } -%>
|
|
49
|
-
],
|
|
50
|
-
server: {
|
|
51
|
-
proxy: {
|
|
52
|
-
'/api': {
|
|
53
|
-
changeOrigin: true,
|
|
54
|
-
target: 'http://localhost:3000',
|
|
55
|
-
},
|
|
56
|
-
},
|
|
57
|
-
headers: {
|
|
58
|
-
'Access-Control-Allow-Origin': '*',
|
|
59
|
-
},
|
|
60
|
-
},
|
|
61
|
-
css: {
|
|
62
|
-
preprocessorOptions: {
|
|
63
|
-
scss: {
|
|
64
|
-
silenceDeprecations: ['legacy-js-api'],
|
|
65
|
-
api: 'modern-compiler',
|
|
66
|
-
<% if (uiLibrary === 'element-plus') { -%>
|
|
67
|
-
additionalData: (source: string, filename: string) => {
|
|
68
|
-
if (filename.includes('assets/styles/element/index.scss')) {
|
|
69
|
-
return `$namespace : ${appCode || 'el'};
|
|
70
|
-
${source}`
|
|
71
|
-
}
|
|
72
|
-
else {
|
|
73
|
-
return source
|
|
74
|
-
}
|
|
75
|
-
},
|
|
76
|
-
<% } -%>
|
|
77
|
-
},
|
|
78
|
-
postcss: {
|
|
79
|
-
plugins: [
|
|
80
|
-
cssModuleGlobalRootPlugin() as any,
|
|
81
|
-
],
|
|
82
|
-
},
|
|
83
|
-
},
|
|
84
|
-
},
|
|
85
|
-
},
|
|
86
|
-
}
|
|
87
|
-
},
|
|
88
|
-
)
|
|
89
|
-
|