@gx-design-vue/create-gx-cli 0.0.5 → 0.0.7

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 (263) hide show
  1. package/package.json +1 -1
  2. package/src/cli.js +3 -3
  3. package/src/main.js +6 -1
  4. package/template-mobile-vant-cli/build/generateModifyVars.ts +7 -0
  5. package/template-mobile-vant-cli/build/script/postBuild.ts +0 -1
  6. package/{template-design-pro/src/components/GDesign/ProLayout/components/PageContainer/typings.ts → template-mobile-vant-cli/src/design/config.less} +0 -0
  7. package/template-mobile-vant-cli/types/components.d.ts +0 -2
  8. package/template-mobile-vant-cli/types/global.d.ts +3 -3
  9. package/template-mobile-vant-cli/types/module.d.ts +0 -2
  10. package/template-mobile-vant-cli/vite.config.ts +6 -7
  11. package/template-design-pro/.editorconfig +0 -19
  12. package/template-design-pro/.env +0 -2
  13. package/template-design-pro/.env.development +0 -18
  14. package/template-design-pro/.env.pro +0 -32
  15. package/template-design-pro/.env.production +0 -32
  16. package/template-design-pro/.env.test +0 -20
  17. package/template-design-pro/.eslintignore +0 -16
  18. package/template-design-pro/.eslintrc.js +0 -64
  19. package/template-design-pro/.gitpod.yml +0 -6
  20. package/template-design-pro/.husky/pre-commit +0 -4
  21. package/template-design-pro/.prettierignore +0 -9
  22. package/template-design-pro/.stylelintignore +0 -3
  23. package/template-design-pro/.yarnclean +0 -48
  24. package/template-design-pro/LICENSE +0 -21
  25. package/template-design-pro/README.md +0 -111
  26. package/template-design-pro/build/constant.ts +0 -6
  27. package/template-design-pro/build/generate/generateModifyVars.ts +0 -18
  28. package/template-design-pro/build/getConfigFileName.ts +0 -13
  29. package/template-design-pro/build/script/buildConf.ts +0 -44
  30. package/template-design-pro/build/script/postBuild.ts +0 -25
  31. package/template-design-pro/build/script/reSetRootHtml.ts +0 -20
  32. package/template-design-pro/build/utils.ts +0 -85
  33. package/template-design-pro/build/vite/cdn.ts +0 -7
  34. package/template-design-pro/build/vite/optimizer.ts +0 -22
  35. package/template-design-pro/build/vite/plugin/autoImport.ts +0 -18
  36. package/template-design-pro/build/vite/plugin/compress.ts +0 -35
  37. package/template-design-pro/build/vite/plugin/hmr.ts +0 -25
  38. package/template-design-pro/build/vite/plugin/html.ts +0 -47
  39. package/template-design-pro/build/vite/plugin/index.ts +0 -89
  40. package/template-design-pro/build/vite/plugin/mock.ts +0 -20
  41. package/template-design-pro/build/vite/plugin/pwa.ts +0 -37
  42. package/template-design-pro/build/vite/plugin/styleImport.ts +0 -129
  43. package/template-design-pro/build/vite/plugin/visualizer.ts +0 -17
  44. package/template-design-pro/build/vite/plugin/vite-plugin-antd-theme/index.ts +0 -24
  45. package/template-design-pro/build/vite/plugin/vite-plugin-mock/createMockServer.ts +0 -303
  46. package/template-design-pro/build/vite/plugin/vite-plugin-mock/createProdMockServer.ts +0 -93
  47. package/template-design-pro/build/vite/plugin/vite-plugin-mock/index.ts +0 -68
  48. package/template-design-pro/build/vite/plugin/vite-plugin-mock/types.ts +0 -30
  49. package/template-design-pro/build/vite/plugin/vite-plugin-mock/utils.ts +0 -26
  50. package/template-design-pro/commitlint.config.js +0 -32
  51. package/template-design-pro/config/config.ts +0 -14
  52. package/template-design-pro/config/default/animate.ts +0 -30
  53. package/template-design-pro/config/default/defaultSettings.ts +0 -75
  54. package/template-design-pro/config/default/network.ts +0 -16
  55. package/template-design-pro/config/default/proxy.ts +0 -26
  56. package/template-design-pro/config/default/theme.ts +0 -43
  57. package/template-design-pro/config/default/themeColor.ts +0 -62
  58. package/template-design-pro/index.html +0 -45
  59. package/template-design-pro/jest.config.mjs +0 -36
  60. package/template-design-pro/mock/_createProductionServer.ts +0 -19
  61. package/template-design-pro/mock/_util.ts +0 -55
  62. package/template-design-pro/mock/controller/menu.ts +0 -85
  63. package/template-design-pro/mock/controller/notices.ts +0 -114
  64. package/template-design-pro/mock/system/dict.ts +0 -60
  65. package/template-design-pro/mock/system/user.ts +0 -218
  66. package/template-design-pro/package.json +0 -151
  67. package/template-design-pro/pnpm-lock.yaml +0 -9913
  68. package/template-design-pro/postcss.config.js +0 -5
  69. package/template-design-pro/prettier.config.js +0 -18
  70. package/template-design-pro/public/resource/css/index.css +0 -171
  71. package/template-design-pro/public/resource/img/favicon.ico +0 -0
  72. package/template-design-pro/public/resource/img/logo.png +0 -0
  73. package/template-design-pro/public/resource/img/pro_icon.svg +0 -5
  74. package/template-design-pro/public/resource/img/pwa-192x192.png +0 -0
  75. package/template-design-pro/public/resource/img/pwa-512x512.png +0 -0
  76. package/template-design-pro/src/App.vue +0 -47
  77. package/template-design-pro/src/assets/error_images/403.png +0 -0
  78. package/template-design-pro/src/assets/error_images/404.png +0 -0
  79. package/template-design-pro/src/assets/error_images/cloud.png +0 -0
  80. package/template-design-pro/src/assets/login_images/login_background.svg +0 -69
  81. package/template-design-pro/src/assets/logo.png +0 -0
  82. package/template-design-pro/src/assets/menu_font/iconfont.css +0 -94
  83. package/template-design-pro/src/assets/menu_font/iconfont.eot +0 -0
  84. package/template-design-pro/src/assets/menu_font/iconfont.js +0 -1
  85. package/template-design-pro/src/assets/menu_font/iconfont.json +0 -142
  86. package/template-design-pro/src/assets/menu_font/iconfont.svg +0 -57
  87. package/template-design-pro/src/assets/menu_font/iconfont.ttf +0 -0
  88. package/template-design-pro/src/assets/menu_font/iconfont.woff +0 -0
  89. package/template-design-pro/src/assets/menu_font/iconfont.woff2 +0 -0
  90. package/template-design-pro/src/assets/menu_font/index.less +0 -94
  91. package/template-design-pro/src/common/global.ts +0 -1
  92. package/template-design-pro/src/components/GDesign/ProLayout/BasicLayout.less +0 -80
  93. package/template-design-pro/src/components/GDesign/ProLayout/BasicLayout.tsx +0 -342
  94. package/template-design-pro/src/components/GDesign/ProLayout/PageLoading.tsx +0 -20
  95. package/template-design-pro/src/components/GDesign/ProLayout/RenderTypings.ts +0 -31
  96. package/template-design-pro/src/components/GDesign/ProLayout/RouteContext.tsx +0 -82
  97. package/template-design-pro/src/components/GDesign/ProLayout/WrapContent.tsx +0 -69
  98. package/template-design-pro/src/components/GDesign/ProLayout/components/GlobalFooter/index.tsx +0 -88
  99. package/template-design-pro/src/components/GDesign/ProLayout/components/GlobalHeader/DefaultHeader.tsx +0 -189
  100. package/template-design-pro/src/components/GDesign/ProLayout/components/GlobalHeader/Header.less +0 -8
  101. package/template-design-pro/src/components/GDesign/ProLayout/components/GlobalHeader/index.tsx +0 -105
  102. package/template-design-pro/src/components/GDesign/ProLayout/components/GlobalHeader/props.ts +0 -69
  103. package/template-design-pro/src/components/GDesign/ProLayout/components/GlobalHeader/style.less +0 -144
  104. package/template-design-pro/src/components/GDesign/ProLayout/components/LogoContent/index.tsx +0 -81
  105. package/template-design-pro/src/components/GDesign/ProLayout/components/LogoContent/props.ts +0 -29
  106. package/template-design-pro/src/components/GDesign/ProLayout/components/MultiTab/index.tsx +0 -384
  107. package/template-design-pro/src/components/GDesign/ProLayout/components/MultiTab/props.ts +0 -15
  108. package/template-design-pro/src/components/GDesign/ProLayout/components/MultiTab/style.less +0 -79
  109. package/template-design-pro/src/components/GDesign/ProLayout/components/NoticeIcon/NoticeIcon.tsx +0 -148
  110. package/template-design-pro/src/components/GDesign/ProLayout/components/NoticeIcon/NoticeList.module.less +0 -115
  111. package/template-design-pro/src/components/GDesign/ProLayout/components/NoticeIcon/NoticeList.tsx +0 -154
  112. package/template-design-pro/src/components/GDesign/ProLayout/components/NoticeIcon/index.less +0 -39
  113. package/template-design-pro/src/components/GDesign/ProLayout/components/NoticeIcon/index.tsx +0 -133
  114. package/template-design-pro/src/components/GDesign/ProLayout/components/PageContainer/index.tsx +0 -190
  115. package/template-design-pro/src/components/GDesign/ProLayout/components/PageContainer/props.ts +0 -48
  116. package/template-design-pro/src/components/GDesign/ProLayout/components/PageContainer/style.less +0 -128
  117. package/template-design-pro/src/components/GDesign/ProLayout/components/RightContent/AvatarDropdown.tsx +0 -63
  118. package/template-design-pro/src/components/GDesign/ProLayout/components/RightContent/HeaderSearch.tsx +0 -122
  119. package/template-design-pro/src/components/GDesign/ProLayout/components/RightContent/headerSearch.less +0 -30
  120. package/template-design-pro/src/components/GDesign/ProLayout/components/RightContent/index.tsx +0 -95
  121. package/template-design-pro/src/components/GDesign/ProLayout/components/RightContent/style.less +0 -90
  122. package/template-design-pro/src/components/GDesign/ProLayout/components/SettingDrawer/BlockCheckbox.tsx +0 -70
  123. package/template-design-pro/src/components/GDesign/ProLayout/components/SettingDrawer/LayoutSetting.tsx +0 -107
  124. package/template-design-pro/src/components/GDesign/ProLayout/components/SettingDrawer/ThemeColor.tsx +0 -68
  125. package/template-design-pro/src/components/GDesign/ProLayout/components/SettingDrawer/index.tsx +0 -346
  126. package/template-design-pro/src/components/GDesign/ProLayout/components/SiderMenu/BaseMenu.tsx +0 -224
  127. package/template-design-pro/src/components/GDesign/ProLayout/components/SiderMenu/SiderMenu.tsx +0 -224
  128. package/template-design-pro/src/components/GDesign/ProLayout/components/SiderMenu/index.tsx +0 -43
  129. package/template-design-pro/src/components/GDesign/ProLayout/components/SiderMenu/props.ts +0 -112
  130. package/template-design-pro/src/components/GDesign/ProLayout/components/SiderMenu/style.less +0 -262
  131. package/template-design-pro/src/components/GDesign/ProLayout/components/SiderMenu/typings.ts +0 -44
  132. package/template-design-pro/src/components/GDesign/ProLayout/default.less +0 -2
  133. package/template-design-pro/src/components/GDesign/ProLayout/defaultSettings.ts +0 -121
  134. package/template-design-pro/src/components/GDesign/ProLayout/hooks/context/index.ts +0 -45
  135. package/template-design-pro/src/components/GDesign/ProLayout/index.ts +0 -43
  136. package/template-design-pro/src/components/GDesign/ProLayout/props.ts +0 -57
  137. package/template-design-pro/src/components/GDesign/ProLayout/style.less +0 -272
  138. package/template-design-pro/src/components/GDesign/ProLayout/typings.ts +0 -1
  139. package/template-design-pro/src/components/GDesign/ProLayout/utils/getMenuData.ts +0 -31
  140. package/template-design-pro/src/components/GDesign/ProLayout/utils/index.ts +0 -94
  141. package/template-design-pro/src/components/GDesign/ProLayout/utils/isImg/index.ts +0 -6
  142. package/template-design-pro/src/components/GDesign/ProLayout/utils/isUrl/index.ts +0 -5
  143. package/template-design-pro/src/components/GDesign/Result/index.tsx +0 -142
  144. package/template-design-pro/src/components/GDesign/Result/style.less +0 -140
  145. package/template-design-pro/src/components/GDesign/Scrollbars/components/Bar/index.tsx +0 -56
  146. package/template-design-pro/src/components/GDesign/Scrollbars/components/Bar/props.ts +0 -23
  147. package/template-design-pro/src/components/GDesign/Scrollbars/components/Thumb/index.tsx +0 -164
  148. package/template-design-pro/src/components/GDesign/Scrollbars/components/Thumb/props.ts +0 -11
  149. package/template-design-pro/src/components/GDesign/Scrollbars/context.ts +0 -10
  150. package/template-design-pro/src/components/GDesign/Scrollbars/index.tsx +0 -200
  151. package/template-design-pro/src/components/GDesign/Scrollbars/props.ts +0 -65
  152. package/template-design-pro/src/components/GDesign/Scrollbars/style.less +0 -85
  153. package/template-design-pro/src/components/GDesign/Scrollbars/util.ts +0 -40
  154. package/template-design-pro/src/components/GDesign/utils/index.ts +0 -7
  155. package/template-design-pro/src/components/PageLoading/index.tsx +0 -44
  156. package/template-design-pro/src/components/PageTransition/index.vue +0 -98
  157. package/template-design-pro/src/components/index.ts +0 -6
  158. package/template-design-pro/src/core/ant-design/index.ts +0 -14
  159. package/template-design-pro/src/core/gx-admin-design/index.ts +0 -7
  160. package/template-design-pro/src/core/gx-admin-directives/index.ts +0 -8
  161. package/template-design-pro/src/core/gx-admin-directives/permission.ts +0 -28
  162. package/template-design-pro/src/core/gx-design/index.ts +0 -7
  163. package/template-design-pro/src/core/gx-pro-design/index.ts +0 -10
  164. package/template-design-pro/src/core/index.ts +0 -27
  165. package/template-design-pro/src/design/ant-design/index.less +0 -4
  166. package/template-design-pro/src/design/ant-design/layout.less +0 -29
  167. package/template-design-pro/src/design/ant-design/menu.less +0 -55
  168. package/template-design-pro/src/design/ant-design/table.less +0 -67
  169. package/template-design-pro/src/design/ant-design/tooltip.less +0 -13
  170. package/template-design-pro/src/design/color.less +0 -1
  171. package/template-design-pro/src/design/config.less +0 -5
  172. package/template-design-pro/src/design/index.less +0 -41
  173. package/template-design-pro/src/design/mixin.less +0 -66
  174. package/template-design-pro/src/design/normalize.less +0 -390
  175. package/template-design-pro/src/global.less +0 -15
  176. package/template-design-pro/src/hooks/core/index.ts +0 -3
  177. package/template-design-pro/src/hooks/core/useRequest/index.ts +0 -70
  178. package/template-design-pro/src/hooks/core/useRequest/typings.ts +0 -0
  179. package/template-design-pro/src/hooks/event/index.ts +0 -3
  180. package/template-design-pro/src/hooks/event/useClipboard.ts +0 -14
  181. package/template-design-pro/src/hooks/system/index.ts +0 -5
  182. package/template-design-pro/src/hooks/system/useDict.ts +0 -62
  183. package/template-design-pro/src/hooks/system/usePermissions.ts +0 -39
  184. package/template-design-pro/src/hooks/typings.ts +0 -17
  185. package/template-design-pro/src/layout/BasicLayout.vue +0 -104
  186. package/template-design-pro/src/layout/BlankLayout.vue +0 -5
  187. package/template-design-pro/src/layout/ContentView.vue +0 -76
  188. package/template-design-pro/src/layout/IframeView.vue +0 -1
  189. package/template-design-pro/src/layout/UserLayout.vue +0 -7
  190. package/template-design-pro/src/main.ts +0 -34
  191. package/template-design-pro/src/plugins/index.ts +0 -3
  192. package/template-design-pro/src/router/guard/index.ts +0 -84
  193. package/template-design-pro/src/router/guard/permissions.ts +0 -73
  194. package/template-design-pro/src/router/guard/stateGuard.ts +0 -11
  195. package/template-design-pro/src/router/helper/routeHelper.ts +0 -244
  196. package/template-design-pro/src/router/helper/utils.ts +0 -19
  197. package/template-design-pro/src/router/index.ts +0 -30
  198. package/template-design-pro/src/router/routes/index.ts +0 -85
  199. package/template-design-pro/src/router/routes/modules/workplace.ts +0 -19
  200. package/template-design-pro/src/services/common/index.ts +0 -11
  201. package/template-design-pro/src/services/controller/router.ts +0 -10
  202. package/template-design-pro/src/services/controller/user.ts +0 -35
  203. package/template-design-pro/src/services/system/dictData.ts +0 -10
  204. package/template-design-pro/src/services/system/notices.ts +0 -9
  205. package/template-design-pro/src/store/index.ts +0 -32
  206. package/template-design-pro/src/store/modules/dict.ts +0 -27
  207. package/template-design-pro/src/store/modules/permission.ts +0 -19
  208. package/template-design-pro/src/store/modules/routes.ts +0 -110
  209. package/template-design-pro/src/store/modules/settings.ts +0 -102
  210. package/template-design-pro/src/store/modules/tabsRouter.ts +0 -73
  211. package/template-design-pro/src/store/modules/user.ts +0 -153
  212. package/template-design-pro/src/utils/accessToken.ts +0 -93
  213. package/template-design-pro/src/utils/crypto.ts +0 -39
  214. package/template-design-pro/src/utils/env.ts +0 -52
  215. package/template-design-pro/src/utils/fetchFile.ts +0 -79
  216. package/template-design-pro/src/utils/index.ts +0 -127
  217. package/template-design-pro/src/utils/pageTitle.ts +0 -17
  218. package/template-design-pro/src/utils/request/XHR.ts +0 -131
  219. package/template-design-pro/src/utils/request/axiosCancel.ts +0 -60
  220. package/template-design-pro/src/utils/request/checkStatus.ts +0 -26
  221. package/template-design-pro/src/utils/request/index.ts +0 -145
  222. package/template-design-pro/src/utils/request/typings.ts +0 -114
  223. package/template-design-pro/src/utils/storage.ts +0 -194
  224. package/template-design-pro/src/utils/uploadFile.ts +0 -26
  225. package/template-design-pro/src/utils/util.ts +0 -278
  226. package/template-design-pro/src/utils/validate.ts +0 -221
  227. package/template-design-pro/src/views/Iframe/index.vue +0 -76
  228. package/template-design-pro/src/views/MenuOne/index.vue +0 -15
  229. package/template-design-pro/src/views/MenuTwo/index.vue +0 -13
  230. package/template-design-pro/src/views/exception/403/index.vue +0 -9
  231. package/template-design-pro/src/views/exception/404/index.vue +0 -9
  232. package/template-design-pro/src/views/user/login/index.vue +0 -110
  233. package/template-design-pro/src/views/user/login/style.less +0 -38
  234. package/template-design-pro/stylelint.config.js +0 -106
  235. package/template-design-pro/tests/__mocks__/fileMock.ts +0 -1
  236. package/template-design-pro/tests/__mocks__/styleMock.ts +0 -1
  237. package/template-design-pro/tests/__mocks__/workerMock.ts +0 -5
  238. package/template-design-pro/tests/server/README.md +0 -15
  239. package/template-design-pro/tests/server/controller/FileController.ts +0 -18
  240. package/template-design-pro/tests/server/controller/UserController.ts +0 -15
  241. package/template-design-pro/tests/server/ecosystem.config.js +0 -18
  242. package/template-design-pro/tests/server/index.ts +0 -63
  243. package/template-design-pro/tests/server/nodemon.json +0 -8
  244. package/template-design-pro/tests/server/package.json +0 -36
  245. package/template-design-pro/tests/server/routes.ts +0 -23
  246. package/template-design-pro/tests/server/service/FileService.ts +0 -54
  247. package/template-design-pro/tests/server/service/UserService.ts +0 -25
  248. package/template-design-pro/tests/server/tsconfig.json +0 -15
  249. package/template-design-pro/tests/server/utils.ts +0 -9
  250. package/template-design-pro/tests/server/yarn.lock +0 -2955
  251. package/template-design-pro/tests/test.spec.ts +0 -16
  252. package/template-design-pro/tsconfig.json +0 -47
  253. package/template-design-pro/types/auto-imports.d.ts +0 -61
  254. package/template-design-pro/types/config.d.ts +0 -100
  255. package/template-design-pro/types/global.d.ts +0 -103
  256. package/template-design-pro/types/gx-components.d.ts +0 -24
  257. package/template-design-pro/types/index.d.ts +0 -13
  258. package/template-design-pro/types/mock.d.ts +0 -23
  259. package/template-design-pro/types/module.d.ts +0 -16
  260. package/template-design-pro/types/response.d.ts +0 -15
  261. package/template-design-pro/types/route.d.ts +0 -89
  262. package/template-design-pro/vite.config.ts +0 -136
  263. package/template-design-pro/yarn.lock +0 -9697
@@ -1,44 +0,0 @@
1
- /**
2
- * Generate additional configuration files when used for packaging. The file can be configured with some global variables, so that it can be changed directly externally without repackaging
3
- */
4
- import { GLOB_CONFIG_FILE_NAME, OUTPUT_DIR } from '../constant'
5
- import fs, { writeFileSync } from 'fs-extra'
6
- import chalk from 'chalk'
7
-
8
- import { getRootPath, getEnvConfig } from '../utils'
9
- import { getConfigFileName } from '../getConfigFileName'
10
-
11
- import pkg from '../../package.json'
12
-
13
- function createConfig(
14
- {
15
- configName,
16
- config,
17
- configFileName = GLOB_CONFIG_FILE_NAME
18
- }: { configName: string; config: any; configFileName?: string } = { configName: '', config: {} }
19
- ) {
20
- try {
21
- const windowConf = `window.${configName}`
22
- // Ensure that the variable will not be modified
23
- const configStr = `${windowConf}=${JSON.stringify(config)};
24
- Object.freeze(${windowConf});
25
- Object.defineProperty(window, "${configName}", {
26
- configurable: false,
27
- writable: false,
28
- });
29
- `.replace(/\s/g, '')
30
- fs.mkdirp(getRootPath(OUTPUT_DIR))
31
- writeFileSync(getRootPath(`${OUTPUT_DIR}/${configFileName}`), configStr)
32
-
33
- console.log(chalk.cyan(`✨ [${pkg.name}]`) + ` - configuration file is build successfully:`)
34
- console.log(chalk.gray(OUTPUT_DIR + '/' + chalk.green(configFileName)) + '\n')
35
- } catch (error) {
36
- console.log(chalk.red('configuration file configuration file failed to package:\n' + error))
37
- }
38
- }
39
-
40
- export function runBuildConfig() {
41
- const config = getEnvConfig()
42
- const configFileName = getConfigFileName(config)
43
- createConfig({ config, configName: configFileName })
44
- }
@@ -1,25 +0,0 @@
1
- // #!/usr/bin/env node
2
- import chalk from 'chalk'
3
- import reSetRootHtml from './reSetRootHtml'
4
- import { runBuildConfig } from './buildConf'
5
- import { wrapperEnv, getEnvConfig } from '../utils'
6
-
7
- import pkg from '../../package.json'
8
-
9
- export const runBuild = async () => {
10
- try {
11
- const argvList = process.argv.splice(2)
12
-
13
- // Generate configuration file
14
- if (!argvList.includes('disabled-config')) {
15
- await runBuildConfig()
16
- }
17
-
18
- !wrapperEnv(getEnvConfig()).VITE_USE_THEME && reSetRootHtml('ant-design-vue')
19
- console.log(`✨ ${chalk.cyan(`[${pkg.name}]`)}` + ' - build successfully!')
20
- } catch (error) {
21
- console.log(chalk.red('vite build error:\n' + error))
22
- process.exit(1)
23
- }
24
- }
25
- runBuild()
@@ -1,20 +0,0 @@
1
- import chalk from 'chalk'
2
- import fs, { readFileSync } from 'fs-extra'
3
- import { getRootPath } from '../utils'
4
- import { OUTPUT_DIR } from '../constant'
5
-
6
- import pkg from '../../package.json'
7
-
8
- export default function reSetRootHtml(libName: string) {
9
- const targetPath = getRootPath(`${OUTPUT_DIR}/index.html`)
10
- let htmlStr = readFileSync(targetPath).toString('utf-8')
11
- const startLen = htmlStr.lastIndexOf(`<link rel="stylesheet" href="./assets/${libName}.`)
12
- if (startLen > 0) {
13
- const cssLen = '<link rel="stylesheet" href="./assets/ant-design-vue.'.length + '********.css">'.length
14
-
15
- const end = startLen + cssLen
16
- htmlStr = htmlStr.slice(0, startLen) + htmlStr.slice(end)
17
- fs.writeFileSync(targetPath, htmlStr)
18
- console.log(`✨ ${chalk.cyan(`[${pkg.name}]`)}` + ' - resetHtml successfully!')
19
- }
20
- }
@@ -1,85 +0,0 @@
1
- import fs from 'fs'
2
- import path from 'path'
3
- import dotenv from 'dotenv'
4
-
5
- export function isDevFn(mode: string): boolean {
6
- return mode === 'development'
7
- }
8
-
9
- export function isProdFn(mode: string): boolean {
10
- return mode === 'production'
11
- }
12
-
13
- /**
14
- * Whether to generate package preview
15
- */
16
- export function isReportMode(): boolean {
17
- return process.env.REPORT === 'true'
18
- }
19
-
20
- // Read all environment variable configuration files to process.env
21
- export function wrapperEnv(envConf: Recordable): ViteEnv {
22
- const ret: any = {}
23
-
24
- for (const envName of Object.keys(envConf)) {
25
- let realName = envConf[envName].replace(/\\n/g, '\n')
26
- realName = realName === 'true' ? true : realName === 'false' ? false : realName
27
-
28
- ret[envName] = realName
29
- process.env[envName] = realName
30
- }
31
- return ret
32
- }
33
-
34
- /**
35
- * 获取当前环境下生效的配置文件名
36
- */
37
- function getConfFiles() {
38
- const script = process.env.npm_lifecycle_script
39
- const reg = new RegExp('--mode ([a-z]+)')
40
- const result = reg.exec(script as string) as any
41
- if (result) {
42
- const mode = result[1] as string
43
- return [ '.env', `.env.${mode}` ]
44
- }
45
- return [ '.env', '.env.production' ]
46
- }
47
-
48
- /**
49
- * Get the environment variables starting with the specified prefix
50
- * @param match prefix
51
- * @param confFiles ext
52
- */
53
- export function getEnvConfig(confFiles = getConfFiles()): Partial<ViteEnv> {
54
- let envConfig: Partial<ViteEnv> = {}
55
- confFiles.forEach((item) => {
56
- try {
57
- const env = dotenv.parse(fs.readFileSync(path.resolve(process.cwd(), item)))
58
- envConfig = { ...envConfig, ...env }
59
- } catch (e) {
60
- console.error(`Error in parsing ${item}`, e)
61
- }
62
- })
63
- return envConfig
64
- }
65
-
66
- /**
67
- * Get user root directory
68
- * @param dir file path
69
- */
70
- export function getRootPath(...dir: string[]) {
71
- return path.resolve(process.cwd(), ...dir)
72
- }
73
-
74
- export function getDefaultPath(supportTs = true) {
75
- return path.resolve(process.cwd(), `src/main.${supportTs ? 'ts' : 'js'}`)
76
- }
77
-
78
- export function fileExists(f: string) {
79
- try {
80
- fs.accessSync(f, fs.constants.W_OK)
81
- return true
82
- } catch (error) {
83
- return false
84
- }
85
- }
@@ -1,7 +0,0 @@
1
- const css = []
2
-
3
- const js = [
4
- 'https://cdn.staticfile.org/echarts/5.2.1/echarts.min.js',
5
- ]
6
-
7
- export const cdnConf = { css, js }
@@ -1,22 +0,0 @@
1
- import type { GetManualChunk } from 'rollup'
2
-
3
- const vendorLibs: { match: string[]; output: string }[] = [
4
- {
5
- match: ['ant-design-vue'],
6
- output: 'ant-design-vue',
7
- },
8
- {
9
- match: ['@gx-design-vue/pro-table'],
10
- output: 'pro-table',
11
- },
12
- ]
13
-
14
- export const configManualChunk: GetManualChunk = (id: string) => {
15
- if (/[\\/]node_modules[\\/]/.test(id)) {
16
- const matchItem = vendorLibs.find((item) => {
17
- const reg = new RegExp(`[\\/]node_modules[\\/]_?(${item.match.join('|')})(.*)`, 'ig')
18
- return reg.test(id)
19
- })
20
- return matchItem ? matchItem.output : null
21
- }
22
- }
@@ -1,18 +0,0 @@
1
- import autoImport from 'unplugin-auto-import/vite'
2
-
3
- export function createAutoImport() {
4
- return [
5
- autoImport({
6
- include: [
7
- /\.[tj]sx?$/, // .ts, .tsx, .js, .jsx
8
- /\.vue$/, /\.vue\?vue/, // .vue
9
- /\.md$/, // .md
10
- ],
11
- imports: [
12
- 'vue',
13
- 'vue-router'
14
- ],
15
- dts: 'types/auto-imports.d.ts'
16
- })
17
- ]
18
- }
@@ -1,35 +0,0 @@
1
- /**
2
- * Used to package and output gzip. Note that this does not work properly in Vite, the specific reason is still being investigated
3
- * https://github.com/anncwb/vite-plugin-compression
4
- */
5
- import type { Plugin } from 'vite'
6
-
7
- import compressPlugin from 'vite-plugin-compression'
8
-
9
- export function configCompressPlugin(
10
- compress: 'gzip' | 'brotli' | 'none',
11
- deleteOriginFile = false
12
- ): Plugin | Plugin[] {
13
- const compressList = compress.split(',')
14
-
15
- const plugins: Plugin[] = []
16
-
17
- if (compressList.includes('gzip')) {
18
- plugins.push(
19
- compressPlugin({
20
- ext: '.gz',
21
- deleteOriginFile
22
- })
23
- )
24
- }
25
- if (compressList.includes('brotli')) {
26
- plugins.push(
27
- compressPlugin({
28
- ext: '.br',
29
- algorithm: 'brotliCompress',
30
- deleteOriginFile
31
- })
32
- )
33
- }
34
- return plugins
35
- }
@@ -1,25 +0,0 @@
1
- import type { Plugin } from 'vite'
2
-
3
- /**
4
- * TODO
5
- * Temporarily solve the Vite circular dependency problem, and wait for a better solution to fix it later. I don't know what problems this writing will bring.
6
- * @returns
7
- */
8
-
9
- export function configHmrPlugin(): Plugin {
10
- return {
11
- name: 'singleHMR',
12
- handleHotUpdate({ modules, file }) {
13
- if (file.match(/xml$/)) return []
14
-
15
- modules.forEach((m) => {
16
- if (!m.url.match(/\.(css|less)/)) {
17
- m.importedModules = new Set()
18
- m.importers = new Set()
19
- }
20
- })
21
-
22
- return modules
23
- }
24
- }
25
- }
@@ -1,47 +0,0 @@
1
- /**
2
- * Plugin to minimize and use ejs template syntax in index.html.
3
- * https://github.com/anncwb/vite-plugin-html
4
- */
5
- import { PluginOption } from 'vite'
6
-
7
- import { createHtmlPlugin } from 'vite-plugin-html'
8
-
9
- import pkg from '../../../package.json'
10
- import { GLOB_CONFIG_FILE_NAME } from '../../constant'
11
- import config from '../../../config/config'
12
- import { cdnConf } from '../cdn'
13
-
14
- const { title, publicPath, useCdn } = config.defaultSettings
15
-
16
- export function configHtmlPlugin(_: ViteEnv, isBuild: boolean) {
17
-
18
- const path = publicPath.endsWith('/') ? publicPath : `${publicPath}/`
19
-
20
- const getAppConfigSrc = () => {
21
- return `${path || '/'}${GLOB_CONFIG_FILE_NAME}?v=${pkg.version}-${new Date().getTime()}`
22
- }
23
-
24
- const htmlPlugin: PluginOption[] = createHtmlPlugin({
25
- minify: isBuild,
26
- inject: {
27
- // Inject data into ejs template
28
- data: {
29
- VUE_APP_TITLE: title || 'GX Pro Admin',
30
- injectScript: useCdn ? cdnConf.js : [],
31
- injectLink: useCdn ? cdnConf.css : [],
32
- },
33
- // Embed the generated app.config.js file
34
- tags: isBuild
35
- ? [
36
- {
37
- tag: 'script',
38
- attrs: {
39
- src: getAppConfigSrc()
40
- }
41
- }
42
- ]
43
- : []
44
- }
45
- })
46
- return htmlPlugin
47
- }
@@ -1,89 +0,0 @@
1
- import type { Plugin, PluginOption } from 'vite'
2
-
3
- import vue from '@vitejs/plugin-vue'
4
- import vueJsx from '@vitejs/plugin-vue-jsx'
5
- import legacy from '@vitejs/plugin-legacy'
6
-
7
- import vueSetupExtend from 'vite-plugin-vue-setup-extend'
8
-
9
- import { presetAttributify, presetUno, transformerDirectives } from 'unocss'
10
- import Unocss from 'unocss/vite'
11
-
12
- import { configHtmlPlugin } from './html'
13
- import { configPwaConfig } from './pwa'
14
- import { configMockPlugin } from './mock'
15
- import { createAutoImport } from './autoImport'
16
- import { configCompressPlugin } from './compress'
17
- import { configStyleImportPlugin } from './styleImport'
18
- import { configVisualizerConfig } from './visualizer'
19
- import { configHmrPlugin } from './hmr'
20
- import createAntdVariableTheme from './vite-plugin-antd-theme'
21
-
22
- export function createVitePlugins(viteEnv: ViteEnv, isBuild: boolean) {
23
- const {
24
- VITE_APP_ENV,
25
- VITE_USE_THEME,
26
- VITE_USE_MOCK,
27
- VITE_LEGACY,
28
- VITE_BUILD_COMPRESS,
29
- VITE_BUILD_COMPRESS_DELETE_ORIGIN_FILE
30
- } = viteEnv
31
-
32
- const isDev = VITE_APP_ENV === 'dev'
33
-
34
- const vitePlugins: (Plugin | PluginOption[])[] = [
35
- // have to
36
- vue(),
37
- // have to
38
- vueJsx()
39
- ]
40
-
41
- // vite-plugin-windicss
42
- vitePlugins.push(Unocss({
43
- presets: [
44
- presetAttributify(),
45
- presetUno()
46
- ],
47
- transformers: [ transformerDirectives() ]
48
- }))
49
-
50
- // vite-plugin-vue-setup-extend
51
- vitePlugins.push(vueSetupExtend())
52
-
53
- !isBuild && vitePlugins.push(configHmrPlugin())
54
-
55
- // @vitejs/plugin-legacy
56
- VITE_LEGACY && isBuild && vitePlugins.push(legacy())
57
-
58
- // vite-plugin-html
59
- vitePlugins.push(configHtmlPlugin(viteEnv, isBuild))
60
-
61
- // vite-plugin-antd-theme
62
- vitePlugins.push(createAntdVariableTheme(VITE_USE_THEME))
63
-
64
- // vite-plugin-style-import
65
- vitePlugins.push(configStyleImportPlugin(VITE_USE_THEME))
66
-
67
- // vite-plugin-mock
68
- const useMock = isDev || VITE_USE_MOCK
69
- useMock && vitePlugins.push(configMockPlugin(isBuild))
70
-
71
- // rollup-plugin-visualizer
72
- vitePlugins.push(configVisualizerConfig())
73
-
74
- // unplugin-auto-import/vite
75
- vitePlugins.push(createAutoImport())
76
-
77
- // The following plugins only work in the production environment
78
- if (isBuild) {
79
- // rollup-plugin-gzip
80
- vitePlugins.push(
81
- configCompressPlugin(VITE_BUILD_COMPRESS, VITE_BUILD_COMPRESS_DELETE_ORIGIN_FILE)
82
- )
83
-
84
- // vite-plugin-pwa
85
- vitePlugins.push(configPwaConfig(viteEnv))
86
- }
87
-
88
- return vitePlugins
89
- }
@@ -1,20 +0,0 @@
1
- /**
2
- * Mock plugin for development and production.
3
- * https://github.com/anncwb/vite-plugin-mock
4
- */
5
- import { viteMockServe } from './vite-plugin-mock'
6
-
7
- export function configMockPlugin(isBuild: boolean) {
8
- return viteMockServe({
9
- ignore: /^\_/,
10
- mockPath: 'mock',
11
- watchFiles: true,
12
- localEnabled: !isBuild,
13
- prodEnabled: isBuild,
14
- injectCode: `
15
- import { setupProdMockServer } from '../mock/_createProductionServer';
16
-
17
- setupProdMockServer();
18
- `
19
- })
20
- }
@@ -1,37 +0,0 @@
1
- /**
2
- * Zero-config PWA for Vite
3
- * https://github.com/antfu/vite-plugin-pwa
4
- */
5
-
6
- import { VitePWA } from 'vite-plugin-pwa'
7
-
8
- import config from '../../../config/config'
9
-
10
- export function configPwaConfig(env: ViteEnv) {
11
- const { title, shortName } = config.defaultSettings
12
- const { VITE_USE_PWA } = env
13
-
14
- if (VITE_USE_PWA) {
15
- // vite-plugin-pwa
16
- const pwaPlugin = VitePWA({
17
- manifest: {
18
- name: title || 'GX Pro Admin',
19
- short_name: shortName || 'gx_pro_admin',
20
- icons: [
21
- {
22
- src: './resource/img/pwa-192x192.png',
23
- sizes: '192x192',
24
- type: 'image/png'
25
- },
26
- {
27
- src: './resource/img/pwa-512x512.png',
28
- sizes: '512x512',
29
- type: 'image/png'
30
- }
31
- ]
32
- }
33
- })
34
- return pwaPlugin
35
- }
36
- return []
37
- }
@@ -1,129 +0,0 @@
1
- import { createStyleImportPlugin } from 'vite-plugin-style-import'
2
-
3
- const component = [
4
- {
5
- name: 'g-pro-table',
6
- lib: 'pro-table',
7
- styleName: 'proTable'
8
- },
9
- {
10
- name: 'g-swiper',
11
- lib: 'swiper',
12
- styleName: 'style'
13
- },
14
- {
15
- name: 'g-image',
16
- lib: 'image',
17
- styleName: 'style'
18
- },
19
- {
20
- name: 'g-color',
21
- lib: 'color-picker',
22
- styleName: 'colorPicker'
23
- },
24
- {
25
- name: 'g-pro-field',
26
- lib: 'pro-field',
27
- styleName: 'proField'
28
- },
29
- {
30
- name: 'g-pro-card',
31
- lib: 'pro-card',
32
- styleName: 'proCard'
33
- },
34
- {
35
- name: 'g-pro-modal',
36
- lib: 'pro-modal',
37
- styleName: 'proModal'
38
- },
39
- {
40
- name: 'g-pro-form',
41
- lib: 'pro-form',
42
- styleName: 'proForm'
43
- }
44
- ]
45
-
46
- export function configStyleImportPlugin(isUseTheme: boolean) {
47
- const styleImportPlugin = createStyleImportPlugin({
48
- libs: [
49
- isUseTheme ? {
50
- libraryName: ''
51
- } : {
52
- libraryName: 'ant-design-vue',
53
- esModule: true,
54
- resolveStyle: (name) => {
55
- // 这里是无需额外引入样式文件的“子组件”列表
56
- const ignoreList = [
57
- 'anchor-link',
58
- 'sub-menu',
59
- 'menu-item',
60
- 'menu-divider',
61
- 'menu-item-group',
62
- 'breadcrumb-item',
63
- 'breadcrumb-separator',
64
- 'form-item',
65
- 'step',
66
- 'select-option',
67
- 'select-opt-group',
68
- 'card-grid',
69
- 'card-meta',
70
- 'collapse-panel',
71
- 'descriptions-item',
72
- 'list-item',
73
- 'list-item-meta',
74
- 'table-column',
75
- 'table-column-group',
76
- 'tab-pane',
77
- 'tab-content',
78
- 'timeline-item',
79
- 'tree-node',
80
- 'skeleton-input',
81
- 'skeleton-avatar',
82
- 'skeleton-title',
83
- 'skeleton-paragraph',
84
- 'skeleton-image',
85
- 'skeleton-button'
86
- ]
87
- // 这里是需要额外引入样式的子组件列表
88
- // 单独引入子组件时需引入组件样式,否则会在打包后导致子组件样式丢失
89
- const replaceList = {
90
- 'typography-text': 'typography',
91
- 'typography-title': 'typography',
92
- 'typography-paragraph': 'typography',
93
- 'typography-link': 'typography',
94
- 'dropdown-button': 'dropdown',
95
- 'input-password': 'input',
96
- 'input-search': 'input',
97
- 'input-group': 'input',
98
- 'radio-group': 'radio',
99
- 'checkbox-group': 'checkbox',
100
- 'layout-sider': 'layout',
101
- 'layout-content': 'layout',
102
- 'layout-footer': 'layout',
103
- 'layout-header': 'layout',
104
- 'month-picker': 'date-picker',
105
- 'range-picker': 'date-picker',
106
- 'image-preview-group': 'image'
107
- }
108
-
109
- return ignoreList.includes(name)
110
- ? ''
111
- : replaceList.hasOwnProperty(name)
112
- ? `ant-design-vue/es/${replaceList[name]}/style/index`
113
- : `ant-design-vue/es/${name}/style/index`
114
- }
115
- }
116
- ].concat(component.map(item => {
117
- return {
118
- libraryName: `@gx-design-vue/${item.lib}`,
119
- esModule: true,
120
- resolveStyle: (name) => {
121
- if (name)
122
- return `@gx-design-vue/${item.lib}/dist/${item.styleName}.less`
123
- return ''
124
- }
125
- }
126
- }))
127
- })
128
- return styleImportPlugin
129
- }
@@ -1,17 +0,0 @@
1
- /**
2
- * Package file volume analysis
3
- */
4
- import visualizer from 'rollup-plugin-visualizer'
5
- import { isReportMode } from '../../utils'
6
-
7
- export function configVisualizerConfig() {
8
- if (isReportMode()) {
9
- return visualizer({
10
- filename: './node_modules/.cache/visualizer/stats.html',
11
- open: true,
12
- gzipSize: true,
13
- brotliSize: true
14
- }) as Plugin
15
- }
16
- return []
17
- }
@@ -1,24 +0,0 @@
1
- import type { Plugin } from 'vite'
2
- import { normalizePath } from 'vite'
3
- import { getDefaultPath, fileExists } from '../../../utils'
4
-
5
- export default function createAntdVariableTheme(useTheme): Plugin {
6
- let defaultPath = getDefaultPath()
7
- if (!fileExists(defaultPath)) {
8
- defaultPath = getDefaultPath(false)
9
- if (!fileExists(defaultPath)) {
10
- defaultPath = ''
11
- }
12
- }
13
- const defaultEnter = normalizePath(defaultPath)
14
- return {
15
- name: 'vite:antd-variable-theme',
16
- enforce: 'pre',
17
- async transform(code: string, id: string) {
18
- if (!id.endsWith(defaultEnter) || !useTheme) return null
19
- return {
20
- code: `${code}\nimport('ant-design-vue/dist/antd.variable.min.css')`
21
- }
22
- }
23
- }
24
- }