@moluoxixi/create-app 2.0.413 → 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.
Files changed (187) hide show
  1. package/README.md +57 -1
  2. package/dist/commands/create.js +1 -1
  3. package/dist/core/feature.d.ts +80 -0
  4. package/dist/core/feature.js +252 -0
  5. package/dist/core/index.d.ts +6 -0
  6. package/dist/core/index.js +6 -0
  7. package/dist/core/prompts.d.ts +17 -0
  8. package/dist/core/prompts.js +235 -0
  9. package/dist/core/template.d.ts +22 -0
  10. package/dist/core/template.js +177 -0
  11. package/dist/generators/index.d.ts +0 -2
  12. package/dist/generators/index.js +0 -2
  13. package/dist/generators/project.d.ts +1 -0
  14. package/dist/generators/project.js +66 -13
  15. package/dist/generators/react.d.ts +5 -5
  16. package/dist/generators/react.js +6 -9
  17. package/dist/generators/vue.d.ts +5 -5
  18. package/dist/generators/vue.js +6 -9
  19. package/dist/test.d.ts +0 -4
  20. package/dist/test.js +32 -17
  21. package/dist/types/index.d.ts +25 -26
  22. package/dist/types/index.js +2 -3
  23. package/dist/utils/featureMapping.js +6 -3
  24. package/dist/utils/generateFrameworkProject.d.ts +10 -20
  25. package/dist/utils/generateFrameworkProject.js +32 -127
  26. package/dist/utils/index.d.ts +1 -6
  27. package/dist/utils/index.js +1 -6
  28. package/dist/utils/prompts.js +7 -3
  29. package/package.json +2 -2
  30. package/templates/common/base/package.json +3 -1
  31. package/templates/common/base/vite/index.ts +53 -0
  32. package/templates/common/base/vite.config.ts +56 -0
  33. package/templates/common/features/husky/node_modules/.bin/tsc +17 -0
  34. package/templates/common/features/husky/node_modules/.bin/tsc.CMD +12 -0
  35. package/templates/common/features/husky/node_modules/.bin/tsc.ps1 +41 -0
  36. package/templates/common/features/husky/node_modules/.bin/tsserver +17 -0
  37. package/templates/common/features/husky/node_modules/.bin/tsserver.CMD +12 -0
  38. package/templates/common/features/husky/node_modules/.bin/tsserver.ps1 +41 -0
  39. package/templates/react/base/src/main/index.ts +34 -0
  40. package/templates/react/base/src/main.tsx +34 -0
  41. package/templates/react/base/tsconfig.app.json +1 -0
  42. package/templates/react/base/tsconfig.node.json +1 -0
  43. package/templates/react/features/ant-design/package.json +2 -1
  44. package/templates/react/features/ant-design/src/main/features/ant-design.ts +21 -0
  45. package/templates/react/features/i18n/package.json +2 -1
  46. package/templates/react/features/i18n/src/main/features/i18n.ts +19 -0
  47. package/templates/react/features/manualRoutes/package.json +1 -0
  48. package/templates/react/features/sentry/package.json +2 -1
  49. package/templates/react/features/sentry/src/main/features/sentry.ts +20 -0
  50. package/templates/react/features/sentry/vite/features/sentry.ts +39 -0
  51. package/templates/react/features/zustand/src/apis/types/user.ts +39 -0
  52. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/jiti +17 -0
  53. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/jiti.CMD +12 -0
  54. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/jiti.ps1 +41 -0
  55. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/parser +17 -0
  56. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/parser.CMD +12 -0
  57. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/parser.ps1 +41 -0
  58. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/rollup +17 -0
  59. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/rollup.CMD +12 -0
  60. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/rollup.ps1 +41 -0
  61. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/sass +17 -0
  62. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/sass.CMD +12 -0
  63. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/sass.ps1 +41 -0
  64. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/terser +17 -0
  65. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/terser.CMD +12 -0
  66. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/terser.ps1 +41 -0
  67. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/tsc +17 -0
  68. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/tsc.CMD +12 -0
  69. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/tsc.ps1 +41 -0
  70. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/tsserver +17 -0
  71. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/tsserver.CMD +12 -0
  72. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/tsserver.ps1 +41 -0
  73. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/tsx +17 -0
  74. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/tsx.CMD +12 -0
  75. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/tsx.ps1 +41 -0
  76. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/vite +17 -0
  77. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/vite.CMD +12 -0
  78. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/vite.ps1 +41 -0
  79. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/yaml +17 -0
  80. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/yaml.CMD +12 -0
  81. package/templates/react/micro-frontends/qiankun/base/node_modules/.bin/yaml.ps1 +41 -0
  82. package/templates/react/micro-frontends/qiankun/base/package.json +7 -2
  83. package/templates/react/micro-frontends/qiankun/base/src/main/index.ts +34 -0
  84. package/templates/react/micro-frontends/qiankun/base/src/{main.tsx.ejs → main.tsx} +13 -27
  85. package/templates/react/micro-frontends/qiankun/base/vite/index.ts +53 -0
  86. package/templates/react/micro-frontends/qiankun/base/vite.config.ts +58 -0
  87. package/templates/vue/base/src/main/index.ts +36 -0
  88. package/templates/vue/base/src/main.ts +34 -0
  89. package/templates/vue/base/tsconfig.app.json +2 -1
  90. package/templates/vue/base/tsconfig.node.json +2 -1
  91. package/templates/vue/features/ant-design-vue/package.json +3 -1
  92. package/templates/vue/features/ant-design-vue/src/main/features/ant-design-vue.ts +18 -0
  93. package/templates/vue/features/element-plus/package.json +5 -1
  94. package/templates/vue/features/element-plus/src/main/features/element-plus.ts +23 -0
  95. package/templates/vue/features/element-plus/src/stores/index.ts +6 -0
  96. package/templates/vue/features/element-plus/src/stores/modules/system.ts +51 -0
  97. package/templates/vue/features/element-plus/vite/features/element-plus.ts +35 -0
  98. package/templates/vue/features/i18n/package.json +3 -1
  99. package/templates/vue/features/i18n/src/main/features/i18n.ts +19 -0
  100. package/templates/vue/features/manualRoutes/package.json +7 -1
  101. package/templates/vue/features/manualRoutes/src/layouts/index.ts +26 -0
  102. package/templates/vue/features/manualRoutes/src/stores/index.ts +6 -0
  103. package/templates/vue/features/manualRoutes/src/stores/modules/system.ts +51 -0
  104. package/templates/vue/features/pageRoutes/package.json +7 -1
  105. package/templates/vue/features/pageRoutes/src/layouts/index.ts +26 -0
  106. package/templates/vue/features/pageRoutes/src/stores/index.ts +6 -0
  107. package/templates/vue/features/pageRoutes/src/stores/modules/system.ts +51 -0
  108. package/templates/vue/features/pinia/package.json +3 -1
  109. package/templates/vue/features/pinia/src/main/features/pinia.ts +19 -0
  110. package/templates/vue/features/sentry/package.json +4 -2
  111. package/templates/vue/features/sentry/src/main/features/sentry.ts +22 -0
  112. package/templates/vue/features/sentry/vite/features/sentry.ts +39 -0
  113. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/jiti +17 -0
  114. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/jiti.CMD +12 -0
  115. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/jiti.ps1 +41 -0
  116. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/parser +17 -0
  117. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/parser.CMD +12 -0
  118. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/parser.ps1 +41 -0
  119. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/rollup +17 -0
  120. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/rollup.CMD +12 -0
  121. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/rollup.ps1 +41 -0
  122. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/sass +17 -0
  123. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/sass.CMD +12 -0
  124. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/sass.ps1 +41 -0
  125. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/terser +17 -0
  126. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/terser.CMD +12 -0
  127. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/terser.ps1 +41 -0
  128. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/tsc +17 -0
  129. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/tsc.CMD +12 -0
  130. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/tsc.ps1 +41 -0
  131. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/tsserver +17 -0
  132. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/tsserver.CMD +12 -0
  133. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/tsserver.ps1 +41 -0
  134. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/tsx +17 -0
  135. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/tsx.CMD +12 -0
  136. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/tsx.ps1 +41 -0
  137. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/vite +17 -0
  138. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/vite.CMD +12 -0
  139. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/vite.ps1 +41 -0
  140. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/yaml +17 -0
  141. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/yaml.CMD +12 -0
  142. package/templates/vue/micro-frontends/qiankun/base/node_modules/.bin/yaml.ps1 +41 -0
  143. package/templates/vue/micro-frontends/qiankun/base/package.json +7 -2
  144. package/templates/vue/micro-frontends/qiankun/base/src/main/index.ts +36 -0
  145. package/templates/vue/micro-frontends/qiankun/base/src/{main.ts.ejs → main.ts} +11 -28
  146. package/templates/vue/micro-frontends/qiankun/base/vite/index.ts +53 -0
  147. package/templates/vue/micro-frontends/qiankun/base/vite.config.ts +59 -0
  148. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/jiti +17 -0
  149. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/jiti.CMD +12 -0
  150. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/jiti.ps1 +41 -0
  151. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/sass +17 -0
  152. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/sass.CMD +12 -0
  153. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/sass.ps1 +41 -0
  154. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/terser +17 -0
  155. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/terser.CMD +12 -0
  156. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/terser.ps1 +41 -0
  157. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/tsc +17 -0
  158. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/tsc.CMD +12 -0
  159. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/tsc.ps1 +41 -0
  160. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/tsserver +17 -0
  161. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/tsserver.CMD +12 -0
  162. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/tsserver.ps1 +41 -0
  163. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/tsx +17 -0
  164. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/tsx.CMD +12 -0
  165. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/tsx.ps1 +41 -0
  166. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/vite +17 -0
  167. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/vite.CMD +12 -0
  168. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/vite.ps1 +41 -0
  169. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/yaml +17 -0
  170. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/yaml.CMD +12 -0
  171. package/templates/vue/micro-frontends/qiankun/features/element-plus/node_modules/.bin/yaml.ps1 +41 -0
  172. package/templates/vue/micro-frontends/qiankun/features/element-plus/package.json +10 -0
  173. package/templates/vue/micro-frontends/qiankun/features/element-plus/src/components/SubMenu/index.ts +8 -0
  174. package/templates/vue/micro-frontends/qiankun/features/element-plus/src/components/SubMenu/src/_types/index.ts +1 -0
  175. package/templates/vue/micro-frontends/qiankun/features/element-plus/src/components/SubMenu/src/_types/props.ts +16 -0
  176. package/templates/vue/micro-frontends/qiankun/features/element-plus/src/components/SubMenu/src/index.vue +60 -0
  177. package/templates/vue/micro-frontends/qiankun/features/element-plus/src/main/features/element-plus.ts +24 -0
  178. package/templates/vue/micro-frontends/qiankun/features/element-plus/src/stores/index.ts +6 -0
  179. package/templates/vue/micro-frontends/qiankun/features/element-plus/src/stores/modules/system.ts +51 -0
  180. package/templates/vue/micro-frontends/qiankun/features/element-plus/vite/features/element-plus.ts +35 -0
  181. package/templates/vue/micro-frontends/qiankun/features/manualRoutes/package.json +6 -1
  182. package/templates/vue/micro-frontends/qiankun/features/pageRoutes/package.json +6 -1
  183. package/templates/common/base/vite.config.ts.ejs +0 -85
  184. package/templates/react/base/src/main.tsx.ejs +0 -56
  185. package/templates/react/micro-frontends/qiankun/base/vite.config.ts.ejs +0 -89
  186. package/templates/vue/base/src/main.ts.ejs +0 -61
  187. 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
-