vue3-admin-gpt 1.0.0

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 (118) hide show
  1. package/.env.development +14 -0
  2. package/.env.production +14 -0
  3. package/LICENSE +21 -0
  4. package/README.en.md +106 -0
  5. package/README.md +104 -0
  6. package/build-zip.cjs +53 -0
  7. package/cli.js +110 -0
  8. package/jsconfig.json +9 -0
  9. package/package.json +92 -0
  10. package/public/index.html +20 -0
  11. package/public/robots.txt +2 -0
  12. package/rspack.config.js +282 -0
  13. package/rspack.js +162 -0
  14. package/src/App.vue +9 -0
  15. package/src/api/icon.js +9 -0
  16. package/src/api/router.js +9 -0
  17. package/src/api/table.js +25 -0
  18. package/src/api/tree.js +9 -0
  19. package/src/api/user.js +34 -0
  20. package/src/assets/error_images/401.png +0 -0
  21. package/src/assets/error_images/404.png +0 -0
  22. package/src/assets/error_images/cloud.png +0 -0
  23. package/src/assets/login_images/background.jpg +0 -0
  24. package/src/assets/logo.png +0 -0
  25. package/src/assets/qr_logo/lqr_logo.png +0 -0
  26. package/src/assets/vuejs-fill.svg +4 -0
  27. package/src/components/VabPageHeader/index.vue +133 -0
  28. package/src/config/index.js +7 -0
  29. package/src/config/net.config.js +20 -0
  30. package/src/config/permission.js +136 -0
  31. package/src/config/setting.config.js +62 -0
  32. package/src/config/settings.js +6 -0
  33. package/src/config/theme.config.js +14 -0
  34. package/src/layouts/EmptyLayout.vue +3 -0
  35. package/src/layouts/components/VabAppMain/index.vue +109 -0
  36. package/src/layouts/components/VabAvatar/index.vue +255 -0
  37. package/src/layouts/components/VabBreadcrumb/index.vue +61 -0
  38. package/src/layouts/components/VabFullScreen/index.vue +61 -0
  39. package/src/layouts/components/VabLogo/index.vue +94 -0
  40. package/src/layouts/components/VabNav/index.vue +176 -0
  41. package/src/layouts/components/VabSide/components/VabMenuItem.vue +80 -0
  42. package/src/layouts/components/VabSide/components/VabSideItem.vue +100 -0
  43. package/src/layouts/components/VabSide/components/VabSubmenu.vue +56 -0
  44. package/src/layouts/components/VabSide/index.vue +123 -0
  45. package/src/layouts/components/VabTabs/index.vue +500 -0
  46. package/src/layouts/components/VabTheme/index.vue +603 -0
  47. package/src/layouts/components/VabTop/index.vue +286 -0
  48. package/src/layouts/export.js +29 -0
  49. package/src/layouts/index.vue +339 -0
  50. package/src/main.js +40 -0
  51. package/src/plugins/echarts.js +4 -0
  52. package/src/plugins/index.js +44 -0
  53. package/src/plugins/support.js +16 -0
  54. package/src/router/index.js +400 -0
  55. package/src/store/index.js +26 -0
  56. package/src/store/modules/errorLog.js +27 -0
  57. package/src/store/modules/routes.js +60 -0
  58. package/src/store/modules/settings.js +73 -0
  59. package/src/store/modules/table.js +22 -0
  60. package/src/store/modules/tabsBar.js +109 -0
  61. package/src/store/modules/user.js +131 -0
  62. package/src/styles/element-variables.scss +13 -0
  63. package/src/styles/loading.scss +345 -0
  64. package/src/styles/nav-icons.scss +52 -0
  65. package/src/styles/normalize.scss +353 -0
  66. package/src/styles/spinner/dots.css +68 -0
  67. package/src/styles/spinner/gauge.css +104 -0
  68. package/src/styles/spinner/inner-circles.css +51 -0
  69. package/src/styles/spinner/plus.css +341 -0
  70. package/src/styles/themes/default.scss +1 -0
  71. package/src/styles/transition.scss +18 -0
  72. package/src/styles/vab.scss +476 -0
  73. package/src/styles/variables.scss +69 -0
  74. package/src/utils/accessToken.js +56 -0
  75. package/src/utils/eventBus.js +8 -0
  76. package/src/utils/handleRoutes.js +100 -0
  77. package/src/utils/index.js +231 -0
  78. package/src/utils/message.js +67 -0
  79. package/src/utils/pageTitle.js +11 -0
  80. package/src/utils/password.js +43 -0
  81. package/src/utils/permission.js +19 -0
  82. package/src/utils/request.js +187 -0
  83. package/src/utils/static.js +81 -0
  84. package/src/utils/vab.js +218 -0
  85. package/src/utils/validate.js +48 -0
  86. package/src/views/401.vue +302 -0
  87. package/src/views/404.vue +302 -0
  88. package/src/views/demo/index.vue +591 -0
  89. package/src/views/index/index.vue +1489 -0
  90. package/src/views/login/index.vue +456 -0
  91. package/src/views/register/index.vue +524 -0
  92. package/src/views/vab/calendar.vue +488 -0
  93. package/src/views/vab/campaign.vue +1006 -0
  94. package/src/views/vab/chart.vue +189 -0
  95. package/src/views/vab/customer.vue +666 -0
  96. package/src/views/vab/editor.vue +84 -0
  97. package/src/views/vab/form.vue +151 -0
  98. package/src/views/vab/help.vue +390 -0
  99. package/src/views/vab/icon.vue +113 -0
  100. package/src/views/vab/knowledge.vue +820 -0
  101. package/src/views/vab/nested/menu1/menu2/menu3.vue +29 -0
  102. package/src/views/vab/nested/menu1/menu2.vue +33 -0
  103. package/src/views/vab/nested/menu1.vue +33 -0
  104. package/src/views/vab/nested.vue +97 -0
  105. package/src/views/vab/notification.vue +416 -0
  106. package/src/views/vab/order.vue +507 -0
  107. package/src/views/vab/permissions.vue +214 -0
  108. package/src/views/vab/product.vue +724 -0
  109. package/src/views/vab/project.vue +559 -0
  110. package/src/views/vab/settings.vue +319 -0
  111. package/src/views/vab/statistics.vue +431 -0
  112. package/src/views/vab/table.vue +110 -0
  113. package/src/views/vab/task.vue +613 -0
  114. package/src/views/vab/team.vue +662 -0
  115. package/src/views/vab/tree.vue +44 -0
  116. package/src/views/vab/upload.vue +180 -0
  117. package/src/views/vab/vue3Demo/index.vue +103 -0
  118. package/src/views/vab/workflow.vue +863 -0
@@ -0,0 +1,341 @@
1
+ .plus-loader:not(:required) {
2
+ position: relative;
3
+ display: inline-block;
4
+ width: 48px;
5
+ height: 48px;
6
+ margin-bottom: 10px;
7
+ overflow: hidden;
8
+ text-indent: -9999px;
9
+ background: #f86;
10
+ -moz-border-radius: 24px;
11
+ -webkit-border-radius: 24px;
12
+ border-radius: 24px;
13
+ -moz-transform: rotateZ(90deg);
14
+ -ms-transform: rotateZ(90deg);
15
+ -webkit-transform: rotateZ(90deg);
16
+ transform: rotateZ(90deg);
17
+ -moz-transform-origin: 50% 50%;
18
+ -ms-transform-origin: 50% 50%;
19
+ -webkit-transform-origin: 50% 50%;
20
+ transform-origin: 50% 50%;
21
+ -moz-animation: plus-loader-background 3s infinite ease-in-out;
22
+ -webkit-animation: plus-loader-background 3s infinite ease-in-out;
23
+ animation: plus-loader-background 3s infinite ease-in-out;
24
+ }
25
+
26
+ .plus-loader:not(:required)::after {
27
+ position: absolute;
28
+ top: 0;
29
+ right: 50%;
30
+ width: 50%;
31
+ height: 100%;
32
+ content: '';
33
+ background: #f86;
34
+ -moz-border-radius: 24px 0 0 24px;
35
+ -webkit-border-radius: 24px;
36
+ border-radius: 24px 0 0 24px;
37
+ -moz-transform-origin: 100% 50%;
38
+ -ms-transform-origin: 100% 50%;
39
+ -webkit-transform-origin: 100% 50%;
40
+ transform-origin: 100% 50%;
41
+ -moz-animation: plus-loader-top 3s infinite linear;
42
+ -webkit-animation: plus-loader-top 3s infinite linear;
43
+ animation: plus-loader-top 3s infinite linear;
44
+ }
45
+
46
+ .plus-loader:not(:required)::before {
47
+ position: absolute;
48
+ top: 0;
49
+ right: 50%;
50
+ width: 50%;
51
+ height: 100%;
52
+ content: '';
53
+ background: #fc6;
54
+ -moz-border-radius: 24px 0 0 24px;
55
+ -webkit-border-radius: 24px;
56
+ border-radius: 24px 0 0 24px;
57
+ -moz-transform-origin: 100% 50%;
58
+ -ms-transform-origin: 100% 50%;
59
+ -webkit-transform-origin: 100% 50%;
60
+ transform-origin: 100% 50%;
61
+ -moz-animation: plus-loader-bottom 3s infinite linear;
62
+ -webkit-animation: plus-loader-bottom 3s infinite linear;
63
+ animation: plus-loader-bottom 3s infinite linear;
64
+ }
65
+
66
+ @keyframes plus-loader-top {
67
+ 2.5% {
68
+ background: #f86;
69
+ -moz-transform: rotateY(0deg);
70
+ -ms-transform: rotateY(0deg);
71
+ -webkit-transform: rotateY(0deg);
72
+ transform: rotateY(0deg);
73
+ -moz-animation-timing-function: ease-in;
74
+ -webkit-animation-timing-function: ease-in;
75
+ animation-timing-function: ease-in;
76
+ }
77
+
78
+ 13.75% {
79
+ background: #ff430d;
80
+ -moz-transform: rotateY(90deg);
81
+ -ms-transform: rotateY(90deg);
82
+ -webkit-transform: rotateY(90deg);
83
+ transform: rotateY(90deg);
84
+ -moz-animation-timing-function: step-start;
85
+ -webkit-animation-timing-function: step-start;
86
+ animation-timing-function: step-start;
87
+ }
88
+
89
+ 13.76% {
90
+ background: #ffae0d;
91
+ -moz-transform: rotateY(90deg);
92
+ -ms-transform: rotateY(90deg);
93
+ -webkit-transform: rotateY(90deg);
94
+ transform: rotateY(90deg);
95
+ -moz-animation-timing-function: ease-out;
96
+ -webkit-animation-timing-function: ease-out;
97
+ animation-timing-function: ease-out;
98
+ }
99
+
100
+ 25% {
101
+ background: #fc6;
102
+ -moz-transform: rotateY(180deg);
103
+ -ms-transform: rotateY(180deg);
104
+ -webkit-transform: rotateY(180deg);
105
+ transform: rotateY(180deg);
106
+ }
107
+
108
+ 27.5% {
109
+ background: #fc6;
110
+ -moz-transform: rotateY(180deg);
111
+ -ms-transform: rotateY(180deg);
112
+ -webkit-transform: rotateY(180deg);
113
+ transform: rotateY(180deg);
114
+ -moz-animation-timing-function: ease-in;
115
+ -webkit-animation-timing-function: ease-in;
116
+ animation-timing-function: ease-in;
117
+ }
118
+
119
+ 41.25% {
120
+ background: #ffae0d;
121
+ -moz-transform: rotateY(90deg);
122
+ -ms-transform: rotateY(90deg);
123
+ -webkit-transform: rotateY(90deg);
124
+ transform: rotateY(90deg);
125
+ -moz-animation-timing-function: step-start;
126
+ -webkit-animation-timing-function: step-start;
127
+ animation-timing-function: step-start;
128
+ }
129
+
130
+ 41.26% {
131
+ background: #2cc642;
132
+ -moz-transform: rotateY(90deg);
133
+ -ms-transform: rotateY(90deg);
134
+ -webkit-transform: rotateY(90deg);
135
+ transform: rotateY(90deg);
136
+ -moz-animation-timing-function: ease-out;
137
+ -webkit-animation-timing-function: ease-out;
138
+ animation-timing-function: ease-out;
139
+ }
140
+
141
+ 50% {
142
+ background: #6d7;
143
+ -moz-transform: rotateY(0deg);
144
+ -ms-transform: rotateY(0deg);
145
+ -webkit-transform: rotateY(0deg);
146
+ transform: rotateY(0deg);
147
+ }
148
+
149
+ 52.5% {
150
+ background: #6d7;
151
+ -moz-transform: rotateY(0deg);
152
+ -ms-transform: rotateY(0deg);
153
+ -webkit-transform: rotateY(0deg);
154
+ transform: rotateY(0deg);
155
+ -moz-animation-timing-function: ease-in;
156
+ -webkit-animation-timing-function: ease-in;
157
+ animation-timing-function: ease-in;
158
+ }
159
+
160
+ 63.75% {
161
+ background: #2cc642;
162
+ -moz-transform: rotateY(90deg);
163
+ -ms-transform: rotateY(90deg);
164
+ -webkit-transform: rotateY(90deg);
165
+ transform: rotateY(90deg);
166
+ -moz-animation-timing-function: step-start;
167
+ -webkit-animation-timing-function: step-start;
168
+ animation-timing-function: step-start;
169
+ }
170
+
171
+ 63.76% {
172
+ background: #1386d2;
173
+ -moz-transform: rotateY(90deg);
174
+ -ms-transform: rotateY(90deg);
175
+ -webkit-transform: rotateY(90deg);
176
+ transform: rotateY(90deg);
177
+ -moz-animation-timing-function: ease-out;
178
+ -webkit-animation-timing-function: ease-out;
179
+ animation-timing-function: ease-out;
180
+ }
181
+
182
+ 75% {
183
+ background: #4ae;
184
+ -moz-transform: rotateY(180deg);
185
+ -ms-transform: rotateY(180deg);
186
+ -webkit-transform: rotateY(180deg);
187
+ transform: rotateY(180deg);
188
+ }
189
+
190
+ 77.5% {
191
+ background: #4ae;
192
+ -moz-transform: rotateY(180deg);
193
+ -ms-transform: rotateY(180deg);
194
+ -webkit-transform: rotateY(180deg);
195
+ transform: rotateY(180deg);
196
+ -moz-animation-timing-function: ease-in;
197
+ -webkit-animation-timing-function: ease-in;
198
+ animation-timing-function: ease-in;
199
+ }
200
+
201
+ 91.25% {
202
+ background: #1386d2;
203
+ -moz-transform: rotateY(90deg);
204
+ -ms-transform: rotateY(90deg);
205
+ -webkit-transform: rotateY(90deg);
206
+ transform: rotateY(90deg);
207
+ -moz-animation-timing-function: step-start;
208
+ -webkit-animation-timing-function: step-start;
209
+ animation-timing-function: step-start;
210
+ }
211
+
212
+ 91.26% {
213
+ background: #ff430d;
214
+ -moz-transform: rotateY(90deg);
215
+ -ms-transform: rotateY(90deg);
216
+ -webkit-transform: rotateY(90deg);
217
+ transform: rotateY(90deg);
218
+ -moz-animation-timing-function: ease-in;
219
+ -webkit-animation-timing-function: ease-in;
220
+ animation-timing-function: ease-in;
221
+ }
222
+
223
+ 100% {
224
+ background: #f86;
225
+ -moz-transform: rotateY(0deg);
226
+ -ms-transform: rotateY(0deg);
227
+ -webkit-transform: rotateY(0deg);
228
+ transform: rotateY(0deg);
229
+ -moz-animation-timing-function: step-start;
230
+ -webkit-animation-timing-function: step-start;
231
+ animation-timing-function: step-start;
232
+ }
233
+ }
234
+
235
+ @keyframes plus-loader-bottom {
236
+ 0% {
237
+ background: #fc6;
238
+ -moz-animation-timing-function: step-start;
239
+ -webkit-animation-timing-function: step-start;
240
+ animation-timing-function: step-start;
241
+ }
242
+
243
+ 50% {
244
+ background: #fc6;
245
+ -moz-animation-timing-function: step-start;
246
+ -webkit-animation-timing-function: step-start;
247
+ animation-timing-function: step-start;
248
+ }
249
+
250
+ 75% {
251
+ background: #4ae;
252
+ -moz-animation-timing-function: step-start;
253
+ -webkit-animation-timing-function: step-start;
254
+ animation-timing-function: step-start;
255
+ }
256
+
257
+ 100% {
258
+ background: #4ae;
259
+ -moz-animation-timing-function: step-start;
260
+ -webkit-animation-timing-function: step-start;
261
+ animation-timing-function: step-start;
262
+ }
263
+ }
264
+
265
+ @keyframes plus-loader-background {
266
+ 0% {
267
+ background: #f86;
268
+ -moz-transform: rotateZ(180deg);
269
+ -ms-transform: rotateZ(180deg);
270
+ -webkit-transform: rotateZ(180deg);
271
+ transform: rotateZ(180deg);
272
+ }
273
+
274
+ 25% {
275
+ background: #f86;
276
+ -moz-transform: rotateZ(180deg);
277
+ -ms-transform: rotateZ(180deg);
278
+ -webkit-transform: rotateZ(180deg);
279
+ transform: rotateZ(180deg);
280
+ -moz-animation-timing-function: step-start;
281
+ -webkit-animation-timing-function: step-start;
282
+ animation-timing-function: step-start;
283
+ }
284
+
285
+ 27.5% {
286
+ background: #6d7;
287
+ -moz-transform: rotateZ(90deg);
288
+ -ms-transform: rotateZ(90deg);
289
+ -webkit-transform: rotateZ(90deg);
290
+ transform: rotateZ(90deg);
291
+ }
292
+
293
+ 50% {
294
+ background: #6d7;
295
+ -moz-transform: rotateZ(90deg);
296
+ -ms-transform: rotateZ(90deg);
297
+ -webkit-transform: rotateZ(90deg);
298
+ transform: rotateZ(90deg);
299
+ -moz-animation-timing-function: step-start;
300
+ -webkit-animation-timing-function: step-start;
301
+ animation-timing-function: step-start;
302
+ }
303
+
304
+ 52.5% {
305
+ background: #6d7;
306
+ -moz-transform: rotateZ(0deg);
307
+ -ms-transform: rotateZ(0deg);
308
+ -webkit-transform: rotateZ(0deg);
309
+ transform: rotateZ(0deg);
310
+ }
311
+
312
+ 75% {
313
+ background: #6d7;
314
+ -moz-transform: rotateZ(0deg);
315
+ -ms-transform: rotateZ(0deg);
316
+ -webkit-transform: rotateZ(0deg);
317
+ transform: rotateZ(0deg);
318
+ -moz-animation-timing-function: step-start;
319
+ -webkit-animation-timing-function: step-start;
320
+ animation-timing-function: step-start;
321
+ }
322
+
323
+ 77.5% {
324
+ background: #f86;
325
+ -moz-transform: rotateZ(270deg);
326
+ -ms-transform: rotateZ(270deg);
327
+ -webkit-transform: rotateZ(270deg);
328
+ transform: rotateZ(270deg);
329
+ }
330
+
331
+ 100% {
332
+ background: #f86;
333
+ -moz-transform: rotateZ(270deg);
334
+ -ms-transform: rotateZ(270deg);
335
+ -webkit-transform: rotateZ(270deg);
336
+ transform: rotateZ(270deg);
337
+ -moz-animation-timing-function: step-start;
338
+ -webkit-animation-timing-function: step-start;
339
+ animation-timing-function: step-start;
340
+ }
341
+ }
@@ -0,0 +1 @@
1
+ /* 绿荫草场主题、荣耀典藏主题、暗黑之子主题加QQ讨论群972435319、1139183756后私聊群主获取,获取后将主题放到themes文件夹根目录即可 */
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @description vue过渡动画
3
+ */
4
+
5
+ @charset "utf-8";
6
+
7
+ .fade-transform-leave-active,
8
+ .fade-transform-enter-active {
9
+ transition: $base-transition;
10
+ }
11
+
12
+ .fade-transform-enter {
13
+ opacity: 0;
14
+ }
15
+
16
+ .fade-transform-leave-to {
17
+ opacity: 0;
18
+ }