@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,110 +0,0 @@
1
- <template>
2
- <div :class="$style['login-container']">
3
- <div :class="$style.content">
4
- <GProFormLogin
5
- style="margin-top: 40px"
6
- :model="userForm"
7
- :rules="userRules"
8
- :logo="Logo"
9
- title="GX Pro Admin"
10
- @submit="handleSubmit"
11
- >
12
- <template #subTitle>
13
- <p>GX Pro Admin 是一套基于</p>
14
- vue({{ state.dependencies['vue'] }}) + ant-design-vue({{
15
- state.dependencies['ant-design-vue']
16
- }}) 开发的一套后台系统
17
- </template>
18
- <GProFormText
19
- name="userName"
20
- :fieldProps="{ size: 'large', prefix: userOutlined }"
21
- placeholder="用户名: admin"
22
- />
23
- <GProFormPassword
24
- name="password"
25
- :fieldProps="{ size: 'large', prefix: lockOutlined }"
26
- placeholder="密码: gx.design"
27
- />
28
- <div class="mb-[24px]">
29
- <GProFormCheckbox noStyle name="autoLogin">自动登录</GProFormCheckbox>
30
- <a style="float: right">忘记密码</a>
31
- </div>
32
- </GProFormLogin>
33
- </div>
34
- <GlobalFooter />
35
- </div>
36
- </template>
37
-
38
- <script setup lang="ts">
39
- import { reactive } from 'vue'
40
- import { useStore } from '@gx-vuex'
41
- import { useRoute, useRouter } from 'vue-router'
42
- import { UserOutlined, LockOutlined } from '@ant-design/icons-vue'
43
- import { GProFormText, GProFormPassword, GProFormCheckbox, GProFormLogin } from '@gx-design-vue/pro-form'
44
- import { GlobalFooter } from '@gx-design/ProLayout'
45
- import Logo from '@/assets/logo.png'
46
-
47
- interface UserState {
48
- userName: string
49
- password: string
50
- }
51
-
52
- interface loginState {
53
- redirect: string
54
- dependencies: RecordType
55
- devDependencies: RecordType
56
- }
57
-
58
- const { pkg } = __APP_INFO__
59
-
60
- const userOutlined = h(UserOutlined)
61
- const lockOutlined = h(LockOutlined)
62
-
63
- const store = useStore()
64
- const route = useRoute()
65
- const router = useRouter()
66
-
67
- const userForm = reactive({
68
- userName: 'admin',
69
- password: 'gx.design',
70
- autoLogin: true
71
- } as UserState)
72
-
73
- const userRules = reactive({
74
- userName: [{ required: true, message: '用户名是必填项!' }],
75
- password: [{ required: true, message: '密码是必填项!' }]
76
- })
77
-
78
- const state: loginState = reactive({
79
- redirect: undefined,
80
- dependencies: pkg.dependencies,
81
- devDependencies: pkg.devDependencies
82
- })
83
-
84
- watch(
85
- () => route.fullPath,
86
- () => {
87
- state.redirect = (route.query?.redirect as string) || '/'
88
- },
89
- {
90
- deep: true,
91
- immediate: true
92
- }
93
- )
94
- const handleRoute = () => {
95
- return state.redirect === '/exception/404' || state.redirect === '/exception/403'
96
- ? '/'
97
- : state.redirect
98
- }
99
-
100
- const handleSubmit = async (value) => {
101
- const response: any = await store.user.userLogin({ ...value })
102
- if (response) {
103
- await router.push(handleRoute())
104
- }
105
- }
106
- </script>
107
-
108
- <style lang="less" module>
109
- @import './style';
110
- </style>
@@ -1,38 +0,0 @@
1
- .login-container {
2
- display: flex;
3
- flex-direction: column;
4
- height: 100vh;
5
- overflow: auto;
6
- background: @layout-body-background;
7
- }
8
-
9
- .content {
10
- flex: 1;
11
- padding: 32px 0;
12
- }
13
-
14
- .icon {
15
- margin-left: 8px;
16
- font-size: 24px;
17
- color: rgba(0, 0, 0, 0.2);
18
- vertical-align: middle;
19
- cursor: pointer;
20
- transition: color 0.3s;
21
-
22
- &:hover {
23
- color: @primary-color;
24
- }
25
- }
26
-
27
- @media (min-width: @screen-md-min) {
28
- .login-container {
29
- background-image: url(/src/assets/login_images/login_background.svg);
30
- background-repeat: no-repeat;
31
- background-position: center 110px;
32
- background-size: 100%;
33
- }
34
-
35
- .content {
36
- padding: 32px 0 24px;
37
- }
38
- }
@@ -1,106 +0,0 @@
1
- module.exports = {
2
- root: true,
3
- plugins: [ 'stylelint-order' ],
4
- extends: [ 'stylelint-config-standard', 'stylelint-config-prettier' ],
5
- customSyntax: 'postcss-html',
6
- rules: {
7
- 'number-leading-zero': null,
8
- 'alpha-value-notation': null,
9
- 'color-function-notation': null,
10
- 'no-eol-whitespace': null,
11
- 'function-no-unknown': null,
12
- 'selector-class-pattern': null,
13
- 'selector-pseudo-class-no-unknown': [
14
- true,
15
- {
16
- ignorePseudoClasses: [ 'global' ]
17
- }
18
- ],
19
- 'selector-pseudo-element-no-unknown': [
20
- true,
21
- {
22
- ignorePseudoElements: [ 'v-deep' ]
23
- }
24
- ],
25
- 'at-rule-no-unknown': [
26
- true,
27
- {
28
- ignoreAtRules: [
29
- 'tailwind',
30
- 'apply',
31
- 'variants',
32
- 'responsive',
33
- 'screen',
34
- 'function',
35
- 'if',
36
- 'each',
37
- 'include',
38
- 'mixin'
39
- ]
40
- }
41
- ],
42
- 'no-empty-source': null,
43
- 'font-family-name-quotes': null,
44
- 'declaration-colon-newline-after': null,
45
- 'selector-pseudo-element-colon-notation': null,
46
- 'string-quotes': null,
47
- 'named-grid-areas-no-invalid': null,
48
- 'unicode-bom': 'never',
49
- 'no-descending-specificity': null,
50
- 'font-family-no-missing-generic-family-keyword': null,
51
- 'declaration-colon-space-after': 'always-single-line',
52
- 'declaration-colon-space-before': 'never',
53
- 'rule-empty-line-before': [
54
- 'always',
55
- {
56
- ignore: [ 'after-comment', 'first-nested' ]
57
- }
58
- ],
59
- 'unit-no-unknown': [ true, { ignoreUnits: [ 'rpx' ] } ],
60
- 'order/order': [
61
- [
62
- 'dollar-variables',
63
- 'custom-properties',
64
- 'at-rules',
65
- 'declarations',
66
- {
67
- type: 'at-rule',
68
- name: 'supports'
69
- },
70
- {
71
- type: 'at-rule',
72
- name: 'media'
73
- },
74
- 'rules'
75
- ],
76
- { severity: 'warning' }
77
- ]
78
- },
79
- ignoreFiles: [ '**/*.js', '**/*.jsx', '**/*.tsx', '**/*.ts' ],
80
- overrides: [
81
- {
82
- files: [ '*.vue', '**/*.vue', '**/*.ts', '**/*.tsx', '*.html', '**/*.html' ],
83
- extends: [ 'stylelint-config-recommended', 'stylelint-config-html' ],
84
- rules: {
85
- 'keyframes-name-pattern': null,
86
- 'selector-pseudo-class-no-unknown': [
87
- true,
88
- {
89
- ignorePseudoClasses: [ 'deep', 'global' ]
90
- }
91
- ],
92
- 'selector-pseudo-element-no-unknown': [
93
- true,
94
- {
95
- ignorePseudoElements: [ 'v-deep', 'v-global', 'v-slotted' ]
96
- }
97
- ]
98
- }
99
- },
100
- {
101
- files: [ '*.less', '**/*.less' ],
102
- customSyntax: 'postcss-less',
103
- extends: [ 'stylelint-config-standard', 'stylelint-config-recommended-vue' ]
104
- }
105
- ]
106
- }
@@ -1 +0,0 @@
1
- export default '';
@@ -1 +0,0 @@
1
- export default {};
@@ -1,5 +0,0 @@
1
- export default jest.fn().mockImplementation(() => ({
2
- postMessage: jest.fn(),
3
- onmessage: jest.fn(),
4
- onerror: jest.fn(),
5
- }));
@@ -1,15 +0,0 @@
1
- # Test Server
2
-
3
- It is used to start the test interface service, which can test the upload, websocket, login and other interfaces.
4
-
5
- ## Usage
6
-
7
- ```bash
8
-
9
- cd ./test/server
10
-
11
- yarn
12
-
13
- yarn start
14
-
15
- ```
@@ -1,18 +0,0 @@
1
- import FileService from '../service/FileService';
2
-
3
- class FileController {
4
- private service: FileService = new FileService();
5
-
6
- upload = async (ctx) => {
7
- const files = ctx.request.files.file;
8
- console.log(files);
9
-
10
- if (files.length === undefined) {
11
- this.service.upload(ctx, files, false);
12
- } else {
13
- this.service.upload(ctx, files, true);
14
- }
15
- };
16
- }
17
-
18
- export default new FileController();
@@ -1,15 +0,0 @@
1
- import UserService from '../service/UserService';
2
-
3
- class UserController {
4
- private service: UserService = new UserService();
5
-
6
- login = async (ctx) => {
7
- ctx.body = await this.service.login();
8
- };
9
-
10
- getUserInfoById = async (ctx) => {
11
- ctx.body = await this.service.getUserInfoById();
12
- };
13
- }
14
-
15
- export default new UserController();
@@ -1,18 +0,0 @@
1
- const { name } = require('./package.json');
2
- const path = require('path');
3
-
4
- module.exports = {
5
- apps: [
6
- {
7
- name,
8
- script: path.resolve(__dirname, './dist/index.js'),
9
- instances: require('os').cpus().length,
10
- autorestart: true,
11
- watch: true,
12
- env_production: {
13
- NODE_ENV: 'production',
14
- PORT: 8080,
15
- },
16
- },
17
- ],
18
- };
@@ -1,63 +0,0 @@
1
- import Koa from 'koa';
2
- import path from 'path';
3
- import Router from 'koa-router';
4
- import body from 'koa-body';
5
- import cors from 'koa2-cors';
6
- import koaStatic from 'koa-static';
7
- import websockify from 'koa-websocket';
8
- import route from 'koa-route';
9
-
10
- import AppRoutes from './routes';
11
-
12
- const PORT = 3300;
13
-
14
- const app = websockify(new Koa());
15
-
16
- app.ws.use(function (ctx, next) {
17
- ctx.websocket.send('connection succeeded!');
18
- return next(ctx);
19
- });
20
-
21
- app.ws.use(
22
- route.all('/test', function (ctx) {
23
- // ctx.websocket.send('Hello World');
24
- ctx.websocket.on('message', function (message) {
25
- // do something with the message from client
26
-
27
- if (message !== 'ping') {
28
- const data = JSON.stringify({
29
- id: Math.ceil(Math.random() * 1000),
30
- time: new Date().getTime(),
31
- res: `${message}`,
32
- });
33
- ctx.websocket.send(data);
34
- }
35
- console.log(message);
36
- });
37
- })
38
- );
39
-
40
- const router = new Router();
41
-
42
- // router
43
- AppRoutes.forEach((route) => router[route.method](route.path, route.action));
44
-
45
- app.use(cors());
46
- app.use(
47
- body({
48
- encoding: 'gzip',
49
- multipart: true,
50
- formidable: {
51
- // uploadDir: path.join(__dirname, '/upload/'), // 设置文件上传目录
52
- keepExtensions: true,
53
- maxFieldsSize: 20 * 1024 * 1024,
54
- },
55
- })
56
- );
57
- app.use(router.routes());
58
- app.use(router.allowedMethods());
59
- app.use(koaStatic(path.join(__dirname)));
60
-
61
- app.listen(PORT, () => {
62
- console.log(`Application started successfully: http://localhost:${PORT}`);
63
- });
@@ -1,8 +0,0 @@
1
- {
2
- "watch": ["src"],
3
- "ext": "ts",
4
- "exec": "ts-node -r tsconfig-paths/register index.ts",
5
- "events": {
6
- "restart": "clear"
7
- }
8
- }
@@ -1,36 +0,0 @@
1
- {
2
- "name": "server",
3
- "version": "1.0.0",
4
- "license": "MIT",
5
- "scripts": {
6
- "start": "nodemon",
7
- "build": "rimraf ./dist && tsup ./index.ts --dts --format cjs,esm ",
8
- "prod": "npx pm2 start ecosystem.config.js --env production",
9
- "restart": "pm2 restart ecosystem.config.js --env production",
10
- "stop": "npx pm2 stop ecosystem.config.js"
11
- },
12
- "dependencies": {
13
- "fs-extra": "^10.0.0",
14
- "koa": "^2.7.0",
15
- "koa-body": "^4.2.0",
16
- "koa-bodyparser": "^4.2.1",
17
- "koa-route": "^3.2.0",
18
- "koa-router": "^10.0.0",
19
- "koa-static": "^5.0.0",
20
- "koa-websocket": "^6.0.0",
21
- "koa2-cors": "^2.0.6"
22
- },
23
- "devDependencies": {
24
- "@types/koa": "^2.0.48",
25
- "@types/koa-bodyparser": "^4.2.2",
26
- "@types/koa-router": "^7.0.40",
27
- "@types/node": "^15.12.1",
28
- "nodemon": "^2.0.7",
29
- "pm2": "^4.5.6",
30
- "rimraf": "^3.0.2",
31
- "ts-node": "^10.0.0",
32
- "tsconfig-paths": "^3.8.0",
33
- "tsup": "^4.11.2",
34
- "typescript": "^4.2.5"
35
- }
36
- }
@@ -1,23 +0,0 @@
1
- import UserController from './controller/UserController';
2
- import FileController from './controller/FileController';
3
-
4
- export default [
5
- // user
6
- {
7
- path: '/login',
8
- method: 'post',
9
- action: UserController.login,
10
- },
11
- {
12
- path: '/getUserInfoById',
13
- method: 'get',
14
- action: UserController.getUserInfoById,
15
- },
16
-
17
- // file
18
- {
19
- path: '/upload',
20
- method: 'post',
21
- action: FileController.upload,
22
- },
23
- ];
@@ -1,54 +0,0 @@
1
- import path from 'path';
2
- import fs from 'fs-extra';
3
-
4
- const uploadUrl = 'http://localhost:3300/static/upload';
5
- const filePath = path.join(__dirname, '../static/upload/');
6
-
7
- fs.ensureDir(filePath);
8
- export default class UserService {
9
- async upload(ctx, files, isMultiple) {
10
- let fileReader, fileResource, writeStream;
11
-
12
- const fileFunc = function (file) {
13
- fileReader = fs.createReadStream(file.path);
14
- fileResource = filePath + `/${file.name}`;
15
- console.log(fileResource);
16
-
17
- writeStream = fs.createWriteStream(fileResource);
18
- fileReader.pipe(writeStream);
19
- };
20
-
21
- const returnFunc = function (flag) {
22
- if (flag) {
23
- let url = '';
24
- for (let i = 0; i < files.length; i++) {
25
- url += uploadUrl + `/${files[i].name},`;
26
- }
27
- url = url.replace(/,$/gi, '');
28
- ctx.body = {
29
- url: url,
30
- code: 0,
31
- message: 'upload Success!',
32
- };
33
- } else {
34
- ctx.body = {
35
- url: uploadUrl + `/${files.name}`,
36
- code: 0,
37
- message: 'upload Success!',
38
- };
39
- }
40
- };
41
- console.log(isMultiple, files.length);
42
-
43
- if (isMultiple) {
44
- for (let i = 0; i < files.length; i++) {
45
- const f1 = files[i];
46
- fileFunc(f1);
47
- }
48
- } else {
49
- fileFunc(files);
50
- }
51
- fs.ensureDir(filePath);
52
- returnFunc(isMultiple);
53
- }
54
- }
@@ -1,25 +0,0 @@
1
- import { Result } from '../utils';
2
-
3
- const fakeUserInfo = {
4
- userId: '1',
5
- userName: 'vben',
6
- realName: 'Vben Admin',
7
- desc: 'manager',
8
- password: '123456',
9
- token: 'fakeToken1',
10
- roles: [
11
- {
12
- roleName: 'Super Admin',
13
- value: 'super',
14
- },
15
- ],
16
- };
17
- export default class UserService {
18
- async login() {
19
- return Result.success(fakeUserInfo);
20
- }
21
-
22
- async getUserInfoById() {
23
- return Result.success(fakeUserInfo);
24
- }
25
- }
@@ -1,15 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "module": "commonjs",
4
- "declaration": false,
5
- "removeComments": true,
6
- "emitDecoratorMetadata": true,
7
- "experimentalDecorators": true,
8
- "target": "es6",
9
- "sourceMap": false,
10
- "esModuleInterop": true,
11
- "outDir": "./dist",
12
- "baseUrl": "./"
13
- },
14
- "exclude": ["node_modules"]
15
- }
@@ -1,9 +0,0 @@
1
- export class Result {
2
- static success(data: any) {
3
- return {
4
- code: 0,
5
- success: true,
6
- result: data,
7
- };
8
- }
9
- }