@minilo/ui 0.0.1

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 (165) hide show
  1. package/README.md +44 -0
  2. package/minilo/dist/index.css +1 -0
  3. package/minilo/dist/index.full.js +7054 -0
  4. package/minilo/dist/index.full.min.js +2 -0
  5. package/minilo/dist/index.full.min.js.map +1 -0
  6. package/minilo/dist/index.full.min.mjs +2 -0
  7. package/minilo/dist/index.full.min.mjs.map +1 -0
  8. package/minilo/dist/index.full.mjs +7041 -0
  9. package/minilo/es/components/button/index.d.ts +47 -0
  10. package/minilo/es/components/button/index.mjs +6 -0
  11. package/minilo/es/components/button/index.vue.d.ts +29 -0
  12. package/minilo/es/components/button/index.vue.mjs +5 -0
  13. package/minilo/es/components/button/index.vue2.mjs +67 -0
  14. package/minilo/es/components/button/type.d.ts +10 -0
  15. package/minilo/es/components/button/type.mjs +1 -0
  16. package/minilo/es/components/chart/index.d.ts +49 -0
  17. package/minilo/es/components/chart/index.mjs +6 -0
  18. package/minilo/es/components/chart/index.vue.d.ts +33 -0
  19. package/minilo/es/components/chart/index.vue.mjs +5 -0
  20. package/minilo/es/components/chart/index.vue2.mjs +124 -0
  21. package/minilo/es/components/chart/type.d.ts +7 -0
  22. package/minilo/es/components/chart/type.mjs +1 -0
  23. package/minilo/es/components/detail/index.d.ts +37 -0
  24. package/minilo/es/components/detail/index.mjs +6 -0
  25. package/minilo/es/components/detail/index.vue.d.ts +23 -0
  26. package/minilo/es/components/detail/index.vue.mjs +5 -0
  27. package/minilo/es/components/detail/index.vue2.mjs +194 -0
  28. package/minilo/es/components/detail/renderLabel.vue.d.ts +8 -0
  29. package/minilo/es/components/detail/renderLabel.vue.mjs +5 -0
  30. package/minilo/es/components/detail/renderLabel.vue2.mjs +23 -0
  31. package/minilo/es/components/detail/renderTooltip.vue.d.ts +8 -0
  32. package/minilo/es/components/detail/renderTooltip.vue.mjs +5 -0
  33. package/minilo/es/components/detail/renderTooltip.vue2.mjs +23 -0
  34. package/minilo/es/components/detail/type.d.ts +27 -0
  35. package/minilo/es/components/detail/type.mjs +1 -0
  36. package/minilo/es/components/index.d.ts +7 -0
  37. package/minilo/es/components/index.mjs +7 -0
  38. package/minilo/es/components/number-range-input/index.d.ts +41 -0
  39. package/minilo/es/components/number-range-input/index.mjs +6 -0
  40. package/minilo/es/components/number-range-input/index.vue.d.ts +33 -0
  41. package/minilo/es/components/number-range-input/index.vue.mjs +5 -0
  42. package/minilo/es/components/number-range-input/index.vue2.mjs +150 -0
  43. package/minilo/es/components/number-range-input/props.d.ts +10 -0
  44. package/minilo/es/components/number-range-input/props.mjs +1 -0
  45. package/minilo/es/components/search/index.d.ts +586 -0
  46. package/minilo/es/components/search/index.mjs +6 -0
  47. package/minilo/es/components/search/index.vue.d.ts +750 -0
  48. package/minilo/es/components/search/index.vue.mjs +5 -0
  49. package/minilo/es/components/search/index.vue2.mjs +298 -0
  50. package/minilo/es/components/search/props.d.ts +107 -0
  51. package/minilo/es/components/search/props.mjs +55 -0
  52. package/minilo/es/components/search-table/index.d.ts +274 -0
  53. package/minilo/es/components/search-table/index.mjs +6 -0
  54. package/minilo/es/components/search-table/index.vue.d.ts +173 -0
  55. package/minilo/es/components/search-table/index.vue.mjs +5 -0
  56. package/minilo/es/components/search-table/index.vue2.mjs +195 -0
  57. package/minilo/es/components/search-table/props.d.ts +69 -0
  58. package/minilo/es/components/search-table/props.mjs +69 -0
  59. package/minilo/es/components/search-table/render.d.ts +11 -0
  60. package/minilo/es/components/search-table/render.mjs +19 -0
  61. package/minilo/es/components/virtual-list/index.d.ts +59 -0
  62. package/minilo/es/components/virtual-list/index.mjs +6 -0
  63. package/minilo/es/components/virtual-list/index.vue.d.ts +39 -0
  64. package/minilo/es/components/virtual-list/index.vue.mjs +5 -0
  65. package/minilo/es/components/virtual-list/index.vue2.mjs +421 -0
  66. package/minilo/es/components/virtual-list/type.d.ts +20 -0
  67. package/minilo/es/components/virtual-list/type.mjs +1 -0
  68. package/minilo/es/index.d.ts +1087 -0
  69. package/minilo/es/node_modules/.pnpm/@element-plus_icons-vue@2.3.1_vue@3.5.17_typescript@5.8.3_/node_modules/@element-plus/icons-vue/dist/index.mjs +25 -0
  70. package/minilo/es/node_modules/.pnpm/@vueuse_core@13.6.0_vue@3.5.17_typescript@5.9.3_/node_modules/@vueuse/core/index.mjs +73 -0
  71. package/minilo/es/node_modules/.pnpm/@vueuse_shared@13.6.0_vue@3.5.17_typescript@5.9.3_/node_modules/@vueuse/shared/index.mjs +76 -0
  72. package/minilo/es/packages/utils/dist/func/common.mjs +14 -0
  73. package/minilo/es/packages/utils/dist/request/index.mjs +110 -0
  74. package/minilo/es/resolver/index.d.ts +8 -0
  75. package/minilo/es/resolver/index.mjs +26 -0
  76. package/minilo/es/utils/index.d.ts +28 -0
  77. package/minilo/es/utils/index.mjs +30 -0
  78. package/minilo/lib/components/button/index.d.ts +47 -0
  79. package/minilo/lib/components/button/index.js +11 -0
  80. package/minilo/lib/components/button/index.vue.d.ts +29 -0
  81. package/minilo/lib/components/button/index.vue.js +9 -0
  82. package/minilo/lib/components/button/index.vue2.js +71 -0
  83. package/minilo/lib/components/button/type.d.ts +10 -0
  84. package/minilo/lib/components/button/type.js +2 -0
  85. package/minilo/lib/components/chart/index.d.ts +49 -0
  86. package/minilo/lib/components/chart/index.js +11 -0
  87. package/minilo/lib/components/chart/index.vue.d.ts +33 -0
  88. package/minilo/lib/components/chart/index.vue.js +9 -0
  89. package/minilo/lib/components/chart/index.vue2.js +128 -0
  90. package/minilo/lib/components/chart/type.d.ts +7 -0
  91. package/minilo/lib/components/chart/type.js +2 -0
  92. package/minilo/lib/components/detail/index.d.ts +37 -0
  93. package/minilo/lib/components/detail/index.js +11 -0
  94. package/minilo/lib/components/detail/index.vue.d.ts +23 -0
  95. package/minilo/lib/components/detail/index.vue.js +9 -0
  96. package/minilo/lib/components/detail/index.vue2.js +198 -0
  97. package/minilo/lib/components/detail/renderLabel.vue.d.ts +8 -0
  98. package/minilo/lib/components/detail/renderLabel.vue.js +9 -0
  99. package/minilo/lib/components/detail/renderLabel.vue2.js +27 -0
  100. package/minilo/lib/components/detail/renderTooltip.vue.d.ts +8 -0
  101. package/minilo/lib/components/detail/renderTooltip.vue.js +9 -0
  102. package/minilo/lib/components/detail/renderTooltip.vue2.js +27 -0
  103. package/minilo/lib/components/detail/type.d.ts +27 -0
  104. package/minilo/lib/components/detail/type.js +2 -0
  105. package/minilo/lib/components/index.d.ts +7 -0
  106. package/minilo/lib/components/index.js +19 -0
  107. package/minilo/lib/components/number-range-input/index.d.ts +41 -0
  108. package/minilo/lib/components/number-range-input/index.js +11 -0
  109. package/minilo/lib/components/number-range-input/index.vue.d.ts +33 -0
  110. package/minilo/lib/components/number-range-input/index.vue.js +9 -0
  111. package/minilo/lib/components/number-range-input/index.vue2.js +154 -0
  112. package/minilo/lib/components/number-range-input/props.d.ts +10 -0
  113. package/minilo/lib/components/number-range-input/props.js +2 -0
  114. package/minilo/lib/components/search/index.d.ts +586 -0
  115. package/minilo/lib/components/search/index.js +11 -0
  116. package/minilo/lib/components/search/index.vue.d.ts +750 -0
  117. package/minilo/lib/components/search/index.vue.js +9 -0
  118. package/minilo/lib/components/search/index.vue2.js +302 -0
  119. package/minilo/lib/components/search/props.d.ts +107 -0
  120. package/minilo/lib/components/search/props.js +58 -0
  121. package/minilo/lib/components/search-table/index.d.ts +274 -0
  122. package/minilo/lib/components/search-table/index.js +11 -0
  123. package/minilo/lib/components/search-table/index.vue.d.ts +173 -0
  124. package/minilo/lib/components/search-table/index.vue.js +9 -0
  125. package/minilo/lib/components/search-table/index.vue2.js +199 -0
  126. package/minilo/lib/components/search-table/props.d.ts +69 -0
  127. package/minilo/lib/components/search-table/props.js +72 -0
  128. package/minilo/lib/components/search-table/render.d.ts +11 -0
  129. package/minilo/lib/components/search-table/render.js +23 -0
  130. package/minilo/lib/components/virtual-list/index.d.ts +59 -0
  131. package/minilo/lib/components/virtual-list/index.js +11 -0
  132. package/minilo/lib/components/virtual-list/index.vue.d.ts +39 -0
  133. package/minilo/lib/components/virtual-list/index.vue.js +9 -0
  134. package/minilo/lib/components/virtual-list/index.vue2.js +425 -0
  135. package/minilo/lib/components/virtual-list/type.d.ts +20 -0
  136. package/minilo/lib/components/virtual-list/type.js +2 -0
  137. package/minilo/lib/index.d.ts +1087 -0
  138. package/minilo/lib/node_modules/.pnpm/@element-plus_icons-vue@2.3.1_vue@3.5.17_typescript@5.8.3_/node_modules/@element-plus/icons-vue/dist/index.js +27 -0
  139. package/minilo/lib/node_modules/.pnpm/@vueuse_core@13.6.0_vue@3.5.17_typescript@5.9.3_/node_modules/@vueuse/core/index.js +84 -0
  140. package/minilo/lib/node_modules/.pnpm/@vueuse_shared@13.6.0_vue@3.5.17_typescript@5.9.3_/node_modules/@vueuse/shared/index.js +83 -0
  141. package/minilo/lib/packages/utils/dist/func/common.js +16 -0
  142. package/minilo/lib/packages/utils/dist/request/index.js +120 -0
  143. package/minilo/lib/resolver/index.d.ts +8 -0
  144. package/minilo/lib/resolver/index.js +28 -0
  145. package/minilo/lib/utils/index.d.ts +28 -0
  146. package/minilo/lib/utils/index.js +34 -0
  147. package/minilo/theme-chalk/index.css +1 -0
  148. package/minilo/theme-chalk/ml-button.css +1 -0
  149. package/minilo/theme-chalk/ml-chart.css +1 -0
  150. package/minilo/theme-chalk/ml-detail.css +1 -0
  151. package/minilo/theme-chalk/ml-number-range-input.css +1 -0
  152. package/minilo/theme-chalk/ml-search-table.css +1 -0
  153. package/minilo/theme-chalk/ml-search.css +1 -0
  154. package/minilo/theme-chalk/ml-virtual-list.css +1 -0
  155. package/minilo/theme-chalk/src/button.scss +22 -0
  156. package/minilo/theme-chalk/src/chart.scss +11 -0
  157. package/minilo/theme-chalk/src/default/variable.scss +1 -0
  158. package/minilo/theme-chalk/src/detail.scss +9 -0
  159. package/minilo/theme-chalk/src/index.scss +12 -0
  160. package/minilo/theme-chalk/src/mixins/mixin.scss +273 -0
  161. package/minilo/theme-chalk/src/number-range-input.scss +9 -0
  162. package/minilo/theme-chalk/src/search-table.scss +47 -0
  163. package/minilo/theme-chalk/src/search.scss +20 -0
  164. package/minilo/theme-chalk/src/virtual-list.scss +49 -0
  165. package/package.json +107 -0
@@ -0,0 +1,273 @@
1
+ @use '../default/variable.scss' as *;
2
+
3
+ @mixin bem($block) {
4
+ $block-selector: '.#{$library-prefix}#{$block}';
5
+
6
+ #{$block-selector} {
7
+ @content;
8
+ }
9
+ }
10
+
11
+ @mixin flex(
12
+ $display: flex,
13
+ // 显示类型:flex 或 inline-flex
14
+ $justify: flex-start,
15
+ // 主轴对齐:flex-start | center | flex-end | space-between | space-around | space-evenly
16
+ $align-items: stretch,
17
+ // 交叉轴对齐:stretch | flex-start | center | flex-end | baseline
18
+ $direction: row,
19
+ // 主轴方向:row | column | row-reverse | column-reverse
20
+ $wrap: nowrap,
21
+ // 换行方式:nowrap | wrap | wrap-reverse
22
+ $align-content: stretch,
23
+ // 多行对齐:stretch | flex-start | center | flex-end | space-between | space-around
24
+ $gap: 0 // 项目间距
25
+ ) {
26
+ display: $display;
27
+ justify-content: $justify;
28
+ align-items: $align-items;
29
+ flex-direction: $direction;
30
+ flex-wrap: $wrap;
31
+ align-content: $align-content;
32
+ gap: $gap;
33
+ }
34
+
35
+ // 水平方向:左对齐 + 顶部对齐
36
+ @mixin flex-start-start($wrap: nowrap, $gap: 0) {
37
+ display: flex;
38
+ flex-direction: row;
39
+ justify-content: flex-start;
40
+ align-items: flex-start;
41
+ flex-wrap: $wrap;
42
+ gap: $gap;
43
+ }
44
+
45
+ // 水平方向:左对齐 + 垂直居中
46
+ @mixin flex-start-center($wrap: nowrap, $gap: 0) {
47
+ display: flex;
48
+ flex-direction: row;
49
+ justify-content: flex-start;
50
+ align-items: center;
51
+ flex-wrap: $wrap;
52
+ gap: $gap;
53
+ }
54
+
55
+ // 水平方向:左对齐 + 底部对齐
56
+ @mixin flex-start-end($wrap: nowrap, $gap: 0) {
57
+ display: flex;
58
+ flex-direction: row;
59
+ justify-content: flex-start;
60
+ align-items: flex-end;
61
+ flex-wrap: $wrap;
62
+ gap: $gap;
63
+ }
64
+
65
+ // 水平方向:居中对齐 + 顶部对齐
66
+ @mixin flex-center-start($wrap: nowrap, $gap: 0) {
67
+ display: flex;
68
+ flex-direction: row;
69
+ justify-content: center;
70
+ align-items: flex-start;
71
+ flex-wrap: $wrap;
72
+ gap: $gap;
73
+ }
74
+
75
+ // 水平方向:居中对齐 + 垂直居中(最常用)
76
+ @mixin flex-center-center($wrap: nowrap, $gap: 0) {
77
+ display: flex;
78
+ flex-direction: row;
79
+ justify-content: center;
80
+ align-items: center;
81
+ flex-wrap: $wrap;
82
+ gap: $gap;
83
+ }
84
+
85
+ // 水平方向:居中对齐 + 底部对齐
86
+ @mixin flex-center-end($wrap: nowrap, $gap: 0) {
87
+ display: flex;
88
+ flex-direction: row;
89
+ justify-content: center;
90
+ align-items: flex-end;
91
+ flex-wrap: $wrap;
92
+ gap: $gap;
93
+ }
94
+
95
+ // 水平方向:右对齐 + 顶部对齐
96
+ @mixin flex-end-start($wrap: nowrap, $gap: 0) {
97
+ display: flex;
98
+ flex-direction: row;
99
+ justify-content: flex-end;
100
+ align-items: flex-start;
101
+ flex-wrap: $wrap;
102
+ gap: $gap;
103
+ }
104
+
105
+ // 水平方向:右对齐 + 垂直居中
106
+ @mixin flex-end-center($wrap: nowrap, $gap: 0) {
107
+ display: flex;
108
+ flex-direction: row;
109
+ justify-content: flex-end;
110
+ align-items: center;
111
+ flex-wrap: $wrap;
112
+ gap: $gap;
113
+ }
114
+
115
+ // 水平方向:右对齐 + 底部对齐
116
+ @mixin flex-end-end($wrap: nowrap, $gap: 0) {
117
+ display: flex;
118
+ flex-direction: row;
119
+ justify-content: flex-end;
120
+ align-items: flex-end;
121
+ flex-wrap: $wrap;
122
+ gap: $gap;
123
+ }
124
+
125
+ // 水平方向:两端对齐 + 顶部对齐
126
+ @mixin flex-between-start($wrap: nowrap, $gap: 0) {
127
+ display: flex;
128
+ flex-direction: row;
129
+ justify-content: space-between;
130
+ align-items: flex-start;
131
+ flex-wrap: $wrap;
132
+ gap: $gap;
133
+ }
134
+
135
+ // 水平方向:两端对齐 + 垂直居中(常用于导航栏)
136
+ @mixin flex-between-center($wrap: nowrap, $gap: 0) {
137
+ display: flex;
138
+ flex-direction: row;
139
+ justify-content: space-between;
140
+ align-items: center;
141
+ flex-wrap: $wrap;
142
+ gap: $gap;
143
+ }
144
+
145
+ // 水平方向:两端对齐 + 底部对齐
146
+ @mixin flex-between-end($wrap: nowrap, $gap: 0) {
147
+ display: flex;
148
+ flex-direction: row;
149
+ justify-content: space-between;
150
+ align-items: flex-end;
151
+ flex-wrap: $wrap;
152
+ gap: $gap;
153
+ }
154
+
155
+ // 垂直方向:顶部对齐 + 左对齐
156
+ @mixin flex-col-start-start($wrap: nowrap, $gap: 0) {
157
+ display: flex;
158
+ flex-direction: column;
159
+ justify-content: flex-start;
160
+ align-items: flex-start;
161
+ flex-wrap: $wrap;
162
+ gap: $gap;
163
+ }
164
+
165
+ // 垂直方向:顶部对齐 + 水平居中
166
+ @mixin flex-col-start-center($wrap: nowrap, $gap: 0) {
167
+ display: flex;
168
+ flex-direction: column;
169
+ justify-content: flex-start;
170
+ align-items: center;
171
+ flex-wrap: $wrap;
172
+ gap: $gap;
173
+ }
174
+
175
+ // 垂直方向:顶部对齐 + 右对齐
176
+ @mixin flex-col-start-end($wrap: nowrap, $gap: 0) {
177
+ display: flex;
178
+ flex-direction: column;
179
+ justify-content: flex-start;
180
+ align-items: flex-end;
181
+ flex-wrap: $wrap;
182
+ gap: $gap;
183
+ }
184
+
185
+ // 垂直方向:垂直居中 + 左对齐
186
+ @mixin flex-col-center-start($wrap: nowrap, $gap: 0) {
187
+ display: flex;
188
+ flex-direction: column;
189
+ justify-content: center;
190
+ align-items: flex-start;
191
+ flex-wrap: $wrap;
192
+ gap: $gap;
193
+ }
194
+
195
+ // 垂直方向:垂直居中 + 水平居中(常用于模态框)
196
+ @mixin flex-col-center-center($wrap: nowrap, $gap: 0) {
197
+ display: flex;
198
+ flex-direction: column;
199
+ justify-content: center;
200
+ align-items: center;
201
+ flex-wrap: $wrap;
202
+ gap: $gap;
203
+ }
204
+
205
+ // 垂直方向:垂直居中 + 右对齐
206
+ @mixin flex-col-center-end($wrap: nowrap, $gap: 0) {
207
+ display: flex;
208
+ flex-direction: column;
209
+ justify-content: center;
210
+ align-items: flex-end;
211
+ flex-wrap: $wrap;
212
+ gap: $gap;
213
+ }
214
+
215
+ // 垂直方向:底部对齐 + 左对齐
216
+ @mixin flex-col-end-start($wrap: nowrap, $gap: 0) {
217
+ display: flex;
218
+ flex-direction: column;
219
+ justify-content: flex-end;
220
+ align-items: flex-start;
221
+ flex-wrap: $wrap;
222
+ gap: $gap;
223
+ }
224
+
225
+ // 垂直方向:底部对齐 + 水平居中
226
+ @mixin flex-col-end-center($wrap: nowrap, $gap: 0) {
227
+ display: flex;
228
+ flex-direction: column;
229
+ justify-content: flex-end;
230
+ align-items: center;
231
+ flex-wrap: $wrap;
232
+ gap: $gap;
233
+ }
234
+
235
+ // 垂直方向:底部对齐 + 右对齐
236
+ @mixin flex-col-end-end($wrap: nowrap, $gap: 0) {
237
+ display: flex;
238
+ flex-direction: column;
239
+ justify-content: flex-end;
240
+ align-items: flex-end;
241
+ flex-wrap: $wrap;
242
+ gap: $gap;
243
+ }
244
+
245
+ // 垂直方向:均匀分布 + 左对齐
246
+ @mixin flex-col-between-start($wrap: nowrap, $gap: 0) {
247
+ display: flex;
248
+ flex-direction: column;
249
+ justify-content: space-between;
250
+ align-items: flex-start;
251
+ flex-wrap: $wrap;
252
+ gap: $gap;
253
+ }
254
+
255
+ // 垂直方向:均匀分布 + 水平居中(常用于卡片)
256
+ @mixin flex-col-between-center($wrap: nowrap, $gap: 0) {
257
+ display: flex;
258
+ flex-direction: column;
259
+ justify-content: space-between;
260
+ align-items: center;
261
+ flex-wrap: $wrap;
262
+ gap: $gap;
263
+ }
264
+
265
+ // 垂直方向:均匀分布 + 右对齐
266
+ @mixin flex-col-between-end($wrap: nowrap, $gap: 0) {
267
+ display: flex;
268
+ flex-direction: column;
269
+ justify-content: space-between;
270
+ align-items: flex-end;
271
+ flex-wrap: $wrap;
272
+ gap: $gap;
273
+ }
@@ -0,0 +1,9 @@
1
+ @use './mixins/mixin.scss' as *;
2
+
3
+ @include bem('number-range-input') {
4
+ @include flex-start-center($gap: 8px);
5
+
6
+ &__separator {
7
+ color: #666;
8
+ }
9
+ }
@@ -0,0 +1,47 @@
1
+ @use './mixins/mixin.scss' as *;
2
+ @use './search.scss' as *;
3
+
4
+ @include bem('search-table') {
5
+ height: 100%;
6
+ @include flex-col-start-start;
7
+ :deep(.el-table) {
8
+ border-radius: 8px 8px 0 0;
9
+ th {
10
+ background-color: #f3f3f3;
11
+ }
12
+ }
13
+ &__content {
14
+ width: 100%;
15
+ margin-top: 10px;
16
+ flex: 1;
17
+ }
18
+ &__pagination {
19
+ width: 100%;
20
+ @include flex-end-center;
21
+ .el-pagination {
22
+ @include flex-end-center;
23
+ }
24
+ }
25
+ }
26
+ // .search-table {
27
+ // height: 100%;
28
+ // @include flex-col-start-start;
29
+ // :deep(.el-table) {
30
+ // border-radius: 8px 8px 0 0;
31
+ // th {
32
+ // background-color: #f3f3f3;
33
+ // }
34
+ // }
35
+ // &__content {
36
+ // width: 100%;
37
+ // margin-top: 10px;
38
+ // flex: 1;
39
+ // }
40
+ // &__pagination {
41
+ // width: 100%;
42
+ // @include flex-end-center;
43
+ // .el-pagination {
44
+ // @include flex-end-center;
45
+ // }
46
+ // }
47
+ // }
@@ -0,0 +1,20 @@
1
+ @use './mixins/mixin.scss' as *;
2
+
3
+ @include bem('search') {
4
+ width: 100%;
5
+ &__content {
6
+ @include flex-between-start;
7
+ .el-form-item {
8
+ margin-bottom: 6px;
9
+ }
10
+ &__left {
11
+ flex: 1;
12
+ }
13
+ &__right {
14
+ margin-left: 12px;
15
+ }
16
+ }
17
+ &__collapse {
18
+ margin-bottom: 10px;
19
+ }
20
+ }
@@ -0,0 +1,49 @@
1
+ @use './mixins/mixin.scss' as *;
2
+ @use './default/variable.scss' as *;
3
+
4
+ @include bem('virtual-list') {
5
+ &__container {
6
+ position: relative;
7
+ overflow: auto;
8
+ border: 1px solid #e4e7ed;
9
+ border-radius: 4px;
10
+ .loading-spinner {
11
+ display: inline-block;
12
+ width: 16px;
13
+ height: 16px;
14
+ margin-right: 8px;
15
+ border: 2px solid #e4e7ed;
16
+ border-top-color: #409eff;
17
+ border-radius: 50%;
18
+ animation: spin 0.6s linear infinite;
19
+ }
20
+ @keyframes spin {
21
+ to {
22
+ transform: rotate(360deg);
23
+ }
24
+ }
25
+ }
26
+ &__loading-tip,
27
+ &__finished-tip {
28
+ display: flex;
29
+ align-items: center;
30
+ justify-content: center;
31
+ padding: 20px;
32
+ color: #909399;
33
+ font-size: 14px;
34
+ background-color: #fff;
35
+ }
36
+ &__phantom {
37
+ position: relative;
38
+ width: 100%;
39
+ }
40
+ &__content {
41
+ position: absolute;
42
+ top: 0;
43
+ left: 0;
44
+ right: 0;
45
+ }
46
+ &__item {
47
+ box-sizing: border-box;
48
+ }
49
+ }
package/package.json ADDED
@@ -0,0 +1,107 @@
1
+ {
2
+ "name": "@minilo/ui",
3
+ "version": "0.0.1",
4
+ "type": "module",
5
+ "imports": {
6
+ "#/*": "./src/*"
7
+ },
8
+ "files": [
9
+ "minilo/",
10
+ "README.md"
11
+ ],
12
+ "exports": {
13
+ ".": {
14
+ "types": "./minilo/es/index.d.ts",
15
+ "import": "./minilo/dist/index.full.min.mjs",
16
+ "require": "./minilo/dist/index.full.min.mjs"
17
+ },
18
+ "./resolver": {
19
+ "types": "./minilo/es/resolver/index.d.ts",
20
+ "import": "./minilo/es/resolver/index.mjs",
21
+ "require": "./minilo/es/resolver/index.js"
22
+ },
23
+ "./es/*": {
24
+ "types": "./minilo/es/index.d.ts",
25
+ "import": "./minilo/es/components/*/index.mjs"
26
+ },
27
+ "./styles": {
28
+ "import": "./minilo/dist/index.css",
29
+ "default": "./minilo/dist/index.css"
30
+ },
31
+ "./theme-chalk/*": {
32
+ "import": "./minilo/theme-chalk/*.css",
33
+ "default": "./minilo/theme-chalk/*.css"
34
+ },
35
+ "./components/*": {
36
+ "import": "./minilo/es/components/*",
37
+ "default": "./minilo/es/components/*"
38
+ }
39
+ },
40
+ "sideEffects": [
41
+ "build/*",
42
+ "build/**/*.css",
43
+ "build/**/*.scss",
44
+ "@minilo/utils/**/*.ts"
45
+ ],
46
+ "dependencies": {
47
+ "@iconify/vue": "5.0.0",
48
+ "element-plus": "2.10.4",
49
+ "vue": "^3.5.22"
50
+ },
51
+ "devDependencies": {
52
+ "@rollup/plugin-commonjs": "^29.0.0",
53
+ "@rollup/plugin-node-resolve": "^16.0.3",
54
+ "@types/fs-extra": "^11.0.4",
55
+ "@types/gulp": "^4.0.18",
56
+ "@types/gulp-rename": "^2.0.7",
57
+ "@types/gulp-sass": "^6.0.0",
58
+ "@types/node": "^24.6.0",
59
+ "@vitejs/plugin-vue": "^6.0.1",
60
+ "@vitejs/plugin-vue-jsx": "5.1.1",
61
+ "@vue/tsconfig": "^0.8.1",
62
+ "axios-mock-adapter": "^1.22.0",
63
+ "chalk": "^5.6.2",
64
+ "child_process": "^1.0.2",
65
+ "consola": "^3.4.2",
66
+ "cssnano": "^7.1.2",
67
+ "echarts": "^6.0.0",
68
+ "esbuild": "^0.25.12",
69
+ "fs-extra": "^11.3.2",
70
+ "gulp": "^5.0.1",
71
+ "gulp-autoprefixer": "^10.0.0",
72
+ "gulp-rename": "^2.1.0",
73
+ "gulp-sass": "^6.0.1",
74
+ "postcss": "^8.5.6",
75
+ "rollup": "^4.52.5",
76
+ "rollup-plugin-esbuild": "^6.2.1",
77
+ "rollup-plugin-polyfill-node": "^0.13.0",
78
+ "sass": "1.89.2",
79
+ "sucrase": "^3.35.0",
80
+ "ts-node": "^10.9.2",
81
+ "tsx": "4.19.3",
82
+ "typescript": "~5.9.3",
83
+ "unplugin-auto-import": "0.17.8",
84
+ "unplugin-vue-components": "0.26.0",
85
+ "vite": "^7.1.7",
86
+ "vite-plugin-dts": "^4.5.4",
87
+ "vitepress": "2.0.0-alpha.12",
88
+ "vue-tsc": "^3.1.0",
89
+ "@minilo/utils": "^0.0.1"
90
+ },
91
+ "peerDependencies": {
92
+ "vue": "^3.5.17"
93
+ },
94
+ "scripts": {
95
+ "dev": "vite",
96
+ "tasks": "gulp -f build-script/gulpfile.ts --tasks",
97
+ "test": "gulp --require ./node_modules/tsx/dist/loader.cjs -f ./gulpfile.ts",
98
+ "build": "gulp --require ./node_modules/tsx/dist/loader.cjs -f ./build-script/gulpfile.ts",
99
+ "gulp": "npx ts-node --require ts-node/register node_modules/gulp/bin/gulp.js -f build-script/gulpfile.ts",
100
+ "build:old": "vue-tsc -b && vite build",
101
+ "preview": "vite preview",
102
+ "clean": "rimraf minilo",
103
+ "docs:dev": "vitepress dev docs",
104
+ "docs:build": "vitepress build docs",
105
+ "docs:preview": "vitepress preview docs"
106
+ }
107
+ }