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

Sign up to get free protection for your applications and to get access to all the features.
Files changed (257) hide show
  1. package/package.json +1 -1
  2. package/src/cli.js +1 -1
  3. package/src/main.js +4 -0
  4. package/template-design-pro/.editorconfig +0 -19
  5. package/template-design-pro/.env +0 -2
  6. package/template-design-pro/.env.development +0 -18
  7. package/template-design-pro/.env.pro +0 -32
  8. package/template-design-pro/.env.production +0 -32
  9. package/template-design-pro/.env.test +0 -20
  10. package/template-design-pro/.eslintignore +0 -16
  11. package/template-design-pro/.eslintrc.js +0 -64
  12. package/template-design-pro/.gitpod.yml +0 -6
  13. package/template-design-pro/.husky/pre-commit +0 -4
  14. package/template-design-pro/.prettierignore +0 -9
  15. package/template-design-pro/.stylelintignore +0 -3
  16. package/template-design-pro/.yarnclean +0 -48
  17. package/template-design-pro/LICENSE +0 -21
  18. package/template-design-pro/README.md +0 -111
  19. package/template-design-pro/build/constant.ts +0 -6
  20. package/template-design-pro/build/generate/generateModifyVars.ts +0 -18
  21. package/template-design-pro/build/getConfigFileName.ts +0 -13
  22. package/template-design-pro/build/script/buildConf.ts +0 -44
  23. package/template-design-pro/build/script/postBuild.ts +0 -25
  24. package/template-design-pro/build/script/reSetRootHtml.ts +0 -20
  25. package/template-design-pro/build/utils.ts +0 -85
  26. package/template-design-pro/build/vite/cdn.ts +0 -7
  27. package/template-design-pro/build/vite/optimizer.ts +0 -22
  28. package/template-design-pro/build/vite/plugin/autoImport.ts +0 -18
  29. package/template-design-pro/build/vite/plugin/compress.ts +0 -35
  30. package/template-design-pro/build/vite/plugin/hmr.ts +0 -25
  31. package/template-design-pro/build/vite/plugin/html.ts +0 -47
  32. package/template-design-pro/build/vite/plugin/index.ts +0 -89
  33. package/template-design-pro/build/vite/plugin/mock.ts +0 -20
  34. package/template-design-pro/build/vite/plugin/pwa.ts +0 -37
  35. package/template-design-pro/build/vite/plugin/styleImport.ts +0 -129
  36. package/template-design-pro/build/vite/plugin/visualizer.ts +0 -17
  37. package/template-design-pro/build/vite/plugin/vite-plugin-antd-theme/index.ts +0 -24
  38. package/template-design-pro/build/vite/plugin/vite-plugin-mock/createMockServer.ts +0 -303
  39. package/template-design-pro/build/vite/plugin/vite-plugin-mock/createProdMockServer.ts +0 -93
  40. package/template-design-pro/build/vite/plugin/vite-plugin-mock/index.ts +0 -68
  41. package/template-design-pro/build/vite/plugin/vite-plugin-mock/types.ts +0 -30
  42. package/template-design-pro/build/vite/plugin/vite-plugin-mock/utils.ts +0 -26
  43. package/template-design-pro/commitlint.config.js +0 -32
  44. package/template-design-pro/config/config.ts +0 -14
  45. package/template-design-pro/config/default/animate.ts +0 -30
  46. package/template-design-pro/config/default/defaultSettings.ts +0 -75
  47. package/template-design-pro/config/default/network.ts +0 -16
  48. package/template-design-pro/config/default/proxy.ts +0 -26
  49. package/template-design-pro/config/default/theme.ts +0 -43
  50. package/template-design-pro/config/default/themeColor.ts +0 -62
  51. package/template-design-pro/index.html +0 -45
  52. package/template-design-pro/jest.config.mjs +0 -36
  53. package/template-design-pro/mock/_createProductionServer.ts +0 -19
  54. package/template-design-pro/mock/_util.ts +0 -55
  55. package/template-design-pro/mock/controller/menu.ts +0 -85
  56. package/template-design-pro/mock/controller/notices.ts +0 -114
  57. package/template-design-pro/mock/system/dict.ts +0 -60
  58. package/template-design-pro/mock/system/user.ts +0 -218
  59. package/template-design-pro/package.json +0 -151
  60. package/template-design-pro/pnpm-lock.yaml +0 -9913
  61. package/template-design-pro/postcss.config.js +0 -5
  62. package/template-design-pro/prettier.config.js +0 -18
  63. package/template-design-pro/public/resource/css/index.css +0 -171
  64. package/template-design-pro/public/resource/img/favicon.ico +0 -0
  65. package/template-design-pro/public/resource/img/logo.png +0 -0
  66. package/template-design-pro/public/resource/img/pro_icon.svg +0 -5
  67. package/template-design-pro/public/resource/img/pwa-192x192.png +0 -0
  68. package/template-design-pro/public/resource/img/pwa-512x512.png +0 -0
  69. package/template-design-pro/src/App.vue +0 -47
  70. package/template-design-pro/src/assets/error_images/403.png +0 -0
  71. package/template-design-pro/src/assets/error_images/404.png +0 -0
  72. package/template-design-pro/src/assets/error_images/cloud.png +0 -0
  73. package/template-design-pro/src/assets/login_images/login_background.svg +0 -69
  74. package/template-design-pro/src/assets/logo.png +0 -0
  75. package/template-design-pro/src/assets/menu_font/iconfont.css +0 -94
  76. package/template-design-pro/src/assets/menu_font/iconfont.eot +0 -0
  77. package/template-design-pro/src/assets/menu_font/iconfont.js +0 -1
  78. package/template-design-pro/src/assets/menu_font/iconfont.json +0 -142
  79. package/template-design-pro/src/assets/menu_font/iconfont.svg +0 -57
  80. package/template-design-pro/src/assets/menu_font/iconfont.ttf +0 -0
  81. package/template-design-pro/src/assets/menu_font/iconfont.woff +0 -0
  82. package/template-design-pro/src/assets/menu_font/iconfont.woff2 +0 -0
  83. package/template-design-pro/src/assets/menu_font/index.less +0 -94
  84. package/template-design-pro/src/common/global.ts +0 -1
  85. package/template-design-pro/src/components/GDesign/ProLayout/BasicLayout.less +0 -80
  86. package/template-design-pro/src/components/GDesign/ProLayout/BasicLayout.tsx +0 -342
  87. package/template-design-pro/src/components/GDesign/ProLayout/PageLoading.tsx +0 -20
  88. package/template-design-pro/src/components/GDesign/ProLayout/RenderTypings.ts +0 -31
  89. package/template-design-pro/src/components/GDesign/ProLayout/RouteContext.tsx +0 -82
  90. package/template-design-pro/src/components/GDesign/ProLayout/WrapContent.tsx +0 -69
  91. package/template-design-pro/src/components/GDesign/ProLayout/components/GlobalFooter/index.tsx +0 -88
  92. package/template-design-pro/src/components/GDesign/ProLayout/components/GlobalHeader/DefaultHeader.tsx +0 -189
  93. package/template-design-pro/src/components/GDesign/ProLayout/components/GlobalHeader/Header.less +0 -8
  94. package/template-design-pro/src/components/GDesign/ProLayout/components/GlobalHeader/index.tsx +0 -105
  95. package/template-design-pro/src/components/GDesign/ProLayout/components/GlobalHeader/props.ts +0 -69
  96. package/template-design-pro/src/components/GDesign/ProLayout/components/GlobalHeader/style.less +0 -144
  97. package/template-design-pro/src/components/GDesign/ProLayout/components/LogoContent/index.tsx +0 -81
  98. package/template-design-pro/src/components/GDesign/ProLayout/components/LogoContent/props.ts +0 -29
  99. package/template-design-pro/src/components/GDesign/ProLayout/components/MultiTab/index.tsx +0 -384
  100. package/template-design-pro/src/components/GDesign/ProLayout/components/MultiTab/props.ts +0 -15
  101. package/template-design-pro/src/components/GDesign/ProLayout/components/MultiTab/style.less +0 -79
  102. package/template-design-pro/src/components/GDesign/ProLayout/components/NoticeIcon/NoticeIcon.tsx +0 -148
  103. package/template-design-pro/src/components/GDesign/ProLayout/components/NoticeIcon/NoticeList.module.less +0 -115
  104. package/template-design-pro/src/components/GDesign/ProLayout/components/NoticeIcon/NoticeList.tsx +0 -154
  105. package/template-design-pro/src/components/GDesign/ProLayout/components/NoticeIcon/index.less +0 -39
  106. package/template-design-pro/src/components/GDesign/ProLayout/components/NoticeIcon/index.tsx +0 -133
  107. package/template-design-pro/src/components/GDesign/ProLayout/components/PageContainer/index.tsx +0 -190
  108. package/template-design-pro/src/components/GDesign/ProLayout/components/PageContainer/props.ts +0 -48
  109. package/template-design-pro/src/components/GDesign/ProLayout/components/PageContainer/style.less +0 -128
  110. package/template-design-pro/src/components/GDesign/ProLayout/components/PageContainer/typings.ts +0 -0
  111. package/template-design-pro/src/components/GDesign/ProLayout/components/RightContent/AvatarDropdown.tsx +0 -63
  112. package/template-design-pro/src/components/GDesign/ProLayout/components/RightContent/HeaderSearch.tsx +0 -122
  113. package/template-design-pro/src/components/GDesign/ProLayout/components/RightContent/headerSearch.less +0 -30
  114. package/template-design-pro/src/components/GDesign/ProLayout/components/RightContent/index.tsx +0 -95
  115. package/template-design-pro/src/components/GDesign/ProLayout/components/RightContent/style.less +0 -90
  116. package/template-design-pro/src/components/GDesign/ProLayout/components/SettingDrawer/BlockCheckbox.tsx +0 -70
  117. package/template-design-pro/src/components/GDesign/ProLayout/components/SettingDrawer/LayoutSetting.tsx +0 -107
  118. package/template-design-pro/src/components/GDesign/ProLayout/components/SettingDrawer/ThemeColor.tsx +0 -68
  119. package/template-design-pro/src/components/GDesign/ProLayout/components/SettingDrawer/index.tsx +0 -346
  120. package/template-design-pro/src/components/GDesign/ProLayout/components/SiderMenu/BaseMenu.tsx +0 -224
  121. package/template-design-pro/src/components/GDesign/ProLayout/components/SiderMenu/SiderMenu.tsx +0 -224
  122. package/template-design-pro/src/components/GDesign/ProLayout/components/SiderMenu/index.tsx +0 -43
  123. package/template-design-pro/src/components/GDesign/ProLayout/components/SiderMenu/props.ts +0 -112
  124. package/template-design-pro/src/components/GDesign/ProLayout/components/SiderMenu/style.less +0 -262
  125. package/template-design-pro/src/components/GDesign/ProLayout/components/SiderMenu/typings.ts +0 -44
  126. package/template-design-pro/src/components/GDesign/ProLayout/default.less +0 -2
  127. package/template-design-pro/src/components/GDesign/ProLayout/defaultSettings.ts +0 -121
  128. package/template-design-pro/src/components/GDesign/ProLayout/hooks/context/index.ts +0 -45
  129. package/template-design-pro/src/components/GDesign/ProLayout/index.ts +0 -43
  130. package/template-design-pro/src/components/GDesign/ProLayout/props.ts +0 -57
  131. package/template-design-pro/src/components/GDesign/ProLayout/style.less +0 -272
  132. package/template-design-pro/src/components/GDesign/ProLayout/typings.ts +0 -1
  133. package/template-design-pro/src/components/GDesign/ProLayout/utils/getMenuData.ts +0 -31
  134. package/template-design-pro/src/components/GDesign/ProLayout/utils/index.ts +0 -94
  135. package/template-design-pro/src/components/GDesign/ProLayout/utils/isImg/index.ts +0 -6
  136. package/template-design-pro/src/components/GDesign/ProLayout/utils/isUrl/index.ts +0 -5
  137. package/template-design-pro/src/components/GDesign/Result/index.tsx +0 -142
  138. package/template-design-pro/src/components/GDesign/Result/style.less +0 -140
  139. package/template-design-pro/src/components/GDesign/Scrollbars/components/Bar/index.tsx +0 -56
  140. package/template-design-pro/src/components/GDesign/Scrollbars/components/Bar/props.ts +0 -23
  141. package/template-design-pro/src/components/GDesign/Scrollbars/components/Thumb/index.tsx +0 -164
  142. package/template-design-pro/src/components/GDesign/Scrollbars/components/Thumb/props.ts +0 -11
  143. package/template-design-pro/src/components/GDesign/Scrollbars/context.ts +0 -10
  144. package/template-design-pro/src/components/GDesign/Scrollbars/index.tsx +0 -200
  145. package/template-design-pro/src/components/GDesign/Scrollbars/props.ts +0 -65
  146. package/template-design-pro/src/components/GDesign/Scrollbars/style.less +0 -85
  147. package/template-design-pro/src/components/GDesign/Scrollbars/util.ts +0 -40
  148. package/template-design-pro/src/components/GDesign/utils/index.ts +0 -7
  149. package/template-design-pro/src/components/PageLoading/index.tsx +0 -44
  150. package/template-design-pro/src/components/PageTransition/index.vue +0 -98
  151. package/template-design-pro/src/components/index.ts +0 -6
  152. package/template-design-pro/src/core/ant-design/index.ts +0 -14
  153. package/template-design-pro/src/core/gx-admin-design/index.ts +0 -7
  154. package/template-design-pro/src/core/gx-admin-directives/index.ts +0 -8
  155. package/template-design-pro/src/core/gx-admin-directives/permission.ts +0 -28
  156. package/template-design-pro/src/core/gx-design/index.ts +0 -7
  157. package/template-design-pro/src/core/gx-pro-design/index.ts +0 -10
  158. package/template-design-pro/src/core/index.ts +0 -27
  159. package/template-design-pro/src/design/ant-design/index.less +0 -4
  160. package/template-design-pro/src/design/ant-design/layout.less +0 -29
  161. package/template-design-pro/src/design/ant-design/menu.less +0 -55
  162. package/template-design-pro/src/design/ant-design/table.less +0 -67
  163. package/template-design-pro/src/design/ant-design/tooltip.less +0 -13
  164. package/template-design-pro/src/design/color.less +0 -1
  165. package/template-design-pro/src/design/config.less +0 -5
  166. package/template-design-pro/src/design/index.less +0 -41
  167. package/template-design-pro/src/design/mixin.less +0 -66
  168. package/template-design-pro/src/design/normalize.less +0 -390
  169. package/template-design-pro/src/global.less +0 -15
  170. package/template-design-pro/src/hooks/core/index.ts +0 -3
  171. package/template-design-pro/src/hooks/core/useRequest/index.ts +0 -70
  172. package/template-design-pro/src/hooks/core/useRequest/typings.ts +0 -0
  173. package/template-design-pro/src/hooks/event/index.ts +0 -3
  174. package/template-design-pro/src/hooks/event/useClipboard.ts +0 -14
  175. package/template-design-pro/src/hooks/system/index.ts +0 -5
  176. package/template-design-pro/src/hooks/system/useDict.ts +0 -62
  177. package/template-design-pro/src/hooks/system/usePermissions.ts +0 -39
  178. package/template-design-pro/src/hooks/typings.ts +0 -17
  179. package/template-design-pro/src/layout/BasicLayout.vue +0 -104
  180. package/template-design-pro/src/layout/BlankLayout.vue +0 -5
  181. package/template-design-pro/src/layout/ContentView.vue +0 -76
  182. package/template-design-pro/src/layout/IframeView.vue +0 -1
  183. package/template-design-pro/src/layout/UserLayout.vue +0 -7
  184. package/template-design-pro/src/main.ts +0 -34
  185. package/template-design-pro/src/plugins/index.ts +0 -3
  186. package/template-design-pro/src/router/guard/index.ts +0 -84
  187. package/template-design-pro/src/router/guard/permissions.ts +0 -73
  188. package/template-design-pro/src/router/guard/stateGuard.ts +0 -11
  189. package/template-design-pro/src/router/helper/routeHelper.ts +0 -244
  190. package/template-design-pro/src/router/helper/utils.ts +0 -19
  191. package/template-design-pro/src/router/index.ts +0 -30
  192. package/template-design-pro/src/router/routes/index.ts +0 -85
  193. package/template-design-pro/src/router/routes/modules/workplace.ts +0 -19
  194. package/template-design-pro/src/services/common/index.ts +0 -11
  195. package/template-design-pro/src/services/controller/router.ts +0 -10
  196. package/template-design-pro/src/services/controller/user.ts +0 -35
  197. package/template-design-pro/src/services/system/dictData.ts +0 -10
  198. package/template-design-pro/src/services/system/notices.ts +0 -9
  199. package/template-design-pro/src/store/index.ts +0 -32
  200. package/template-design-pro/src/store/modules/dict.ts +0 -27
  201. package/template-design-pro/src/store/modules/permission.ts +0 -19
  202. package/template-design-pro/src/store/modules/routes.ts +0 -110
  203. package/template-design-pro/src/store/modules/settings.ts +0 -102
  204. package/template-design-pro/src/store/modules/tabsRouter.ts +0 -73
  205. package/template-design-pro/src/store/modules/user.ts +0 -153
  206. package/template-design-pro/src/utils/accessToken.ts +0 -93
  207. package/template-design-pro/src/utils/crypto.ts +0 -39
  208. package/template-design-pro/src/utils/env.ts +0 -52
  209. package/template-design-pro/src/utils/fetchFile.ts +0 -79
  210. package/template-design-pro/src/utils/index.ts +0 -127
  211. package/template-design-pro/src/utils/pageTitle.ts +0 -17
  212. package/template-design-pro/src/utils/request/XHR.ts +0 -131
  213. package/template-design-pro/src/utils/request/axiosCancel.ts +0 -60
  214. package/template-design-pro/src/utils/request/checkStatus.ts +0 -26
  215. package/template-design-pro/src/utils/request/index.ts +0 -145
  216. package/template-design-pro/src/utils/request/typings.ts +0 -114
  217. package/template-design-pro/src/utils/storage.ts +0 -194
  218. package/template-design-pro/src/utils/uploadFile.ts +0 -26
  219. package/template-design-pro/src/utils/util.ts +0 -278
  220. package/template-design-pro/src/utils/validate.ts +0 -221
  221. package/template-design-pro/src/views/Iframe/index.vue +0 -76
  222. package/template-design-pro/src/views/MenuOne/index.vue +0 -15
  223. package/template-design-pro/src/views/MenuTwo/index.vue +0 -13
  224. package/template-design-pro/src/views/exception/403/index.vue +0 -9
  225. package/template-design-pro/src/views/exception/404/index.vue +0 -9
  226. package/template-design-pro/src/views/user/login/index.vue +0 -110
  227. package/template-design-pro/src/views/user/login/style.less +0 -38
  228. package/template-design-pro/stylelint.config.js +0 -106
  229. package/template-design-pro/tests/__mocks__/fileMock.ts +0 -1
  230. package/template-design-pro/tests/__mocks__/styleMock.ts +0 -1
  231. package/template-design-pro/tests/__mocks__/workerMock.ts +0 -5
  232. package/template-design-pro/tests/server/README.md +0 -15
  233. package/template-design-pro/tests/server/controller/FileController.ts +0 -18
  234. package/template-design-pro/tests/server/controller/UserController.ts +0 -15
  235. package/template-design-pro/tests/server/ecosystem.config.js +0 -18
  236. package/template-design-pro/tests/server/index.ts +0 -63
  237. package/template-design-pro/tests/server/nodemon.json +0 -8
  238. package/template-design-pro/tests/server/package.json +0 -36
  239. package/template-design-pro/tests/server/routes.ts +0 -23
  240. package/template-design-pro/tests/server/service/FileService.ts +0 -54
  241. package/template-design-pro/tests/server/service/UserService.ts +0 -25
  242. package/template-design-pro/tests/server/tsconfig.json +0 -15
  243. package/template-design-pro/tests/server/utils.ts +0 -9
  244. package/template-design-pro/tests/server/yarn.lock +0 -2955
  245. package/template-design-pro/tests/test.spec.ts +0 -16
  246. package/template-design-pro/tsconfig.json +0 -47
  247. package/template-design-pro/types/auto-imports.d.ts +0 -61
  248. package/template-design-pro/types/config.d.ts +0 -100
  249. package/template-design-pro/types/global.d.ts +0 -103
  250. package/template-design-pro/types/gx-components.d.ts +0 -24
  251. package/template-design-pro/types/index.d.ts +0 -13
  252. package/template-design-pro/types/mock.d.ts +0 -23
  253. package/template-design-pro/types/module.d.ts +0 -16
  254. package/template-design-pro/types/response.d.ts +0 -15
  255. package/template-design-pro/types/route.d.ts +0 -89
  256. package/template-design-pro/vite.config.ts +0 -136
  257. package/template-design-pro/yarn.lock +0 -9697
@@ -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
- }