@cmstops/pro-compo 0.3.100 → 3.0.0-stable.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.
- package/dist/index.css +45 -4
- package/dist/index.min.css +1 -1
- package/es/baseFilter/component.js +71 -14
- package/es/config.js +1 -1
- package/es/contentDetailList/component.js +24 -0
- package/es/contentDetailList/components/Content/index.js +2 -1
- package/es/contentDetailList/components/Doc/index.js +6 -0
- package/es/hooks/useAttachement.d.ts +26 -7
- package/es/hooks/useAttachement.js +42 -2
- package/es/hooks/usePopper.d.ts +1 -1
- package/es/hooks/usePopper.js +3 -3
- package/es/hooks/useUpload.d.ts +50 -2
- package/es/hooks/useUpload.js +43 -4
- package/es/index.css +45 -4
- package/es/selectResourceModal/__demo__/module/DivWrapper.d.ts +268 -0
- package/es/selectResourceModal/__demo__/module/basic.d.ts +299 -0
- package/es/selectResourceModal/components/List/ListLocal/index.js +8 -3
- package/es/selectResourceModal/components/List/ListNormal/Filter.js +206 -79
- package/es/selectResourceModal/components/List/ListNormal/index.js +23 -7
- package/es/selectResourceModal/hooks/useResponsiveFilter.d.ts +21 -0
- package/es/selectResourceModal/hooks/useResponsiveFilter.js +142 -0
- package/es/selectResourceModal/scripts/useCompoLf.js +1 -1
- package/es/selectResourceModal/style/index.css +45 -4
- package/es/selectResourceModal/style/index.less +14 -0
- package/es/selectResourceModal/style/list.less +40 -4
- package/es/selectThumb/component.js +57 -3
- package/es/utils/index.js +6 -6
- package/lib/baseFilter/component.js +69 -12
- package/lib/config.js +1 -1
- package/lib/contentDetailList/component.js +24 -0
- package/lib/contentDetailList/components/Content/index.js +2 -1
- package/lib/contentDetailList/components/Doc/index.js +6 -0
- package/lib/hooks/useAttachement.js +42 -0
- package/lib/hooks/usePopper.js +3 -3
- package/lib/hooks/useUpload.js +43 -3
- package/lib/index.css +45 -4
- package/lib/selectResourceModal/components/List/ListLocal/index.js +6 -1
- package/lib/selectResourceModal/components/List/ListNormal/Filter.js +203 -76
- package/lib/selectResourceModal/components/List/ListNormal/index.js +22 -6
- package/lib/selectResourceModal/hooks/useResponsiveFilter.js +144 -0
- package/lib/selectResourceModal/scripts/useCompoLf.js +1 -1
- package/lib/selectResourceModal/style/index.css +45 -4
- package/lib/selectResourceModal/style/index.less +14 -0
- package/lib/selectResourceModal/style/list.less +40 -4
- package/lib/selectThumb/component.js +56 -2
- package/lib/utils/index.js +6 -6
- package/package.json +1 -1
|
@@ -172,11 +172,13 @@
|
|
|
172
172
|
}
|
|
173
173
|
.resource-list-footer,
|
|
174
174
|
.resource-list-header,
|
|
175
|
+
.resource-list-content .resource-list-content-empty,
|
|
175
176
|
.resource-list-content .arco-scrollbar-container {
|
|
176
177
|
padding: 0 40px;
|
|
177
178
|
}
|
|
178
179
|
.resource-list-footer {
|
|
179
180
|
display: flex;
|
|
181
|
+
flex-wrap: wrap;
|
|
180
182
|
justify-content: space-between;
|
|
181
183
|
padding-bottom: 20px;
|
|
182
184
|
}
|
|
@@ -186,6 +188,10 @@
|
|
|
186
188
|
gap: 10px;
|
|
187
189
|
align-items: center;
|
|
188
190
|
justify-content: flex-end;
|
|
191
|
+
margin-top: 10px;
|
|
192
|
+
}
|
|
193
|
+
.resource-list-footer .footer-right .list-selected-wrapper {
|
|
194
|
+
font-size: 12px;
|
|
189
195
|
}
|
|
190
196
|
.resource-list-content-loading {
|
|
191
197
|
display: flex;
|
|
@@ -197,7 +203,7 @@
|
|
|
197
203
|
.resource-list .list-item-grid {
|
|
198
204
|
display: grid;
|
|
199
205
|
grid-gap: 20px;
|
|
200
|
-
grid-template-columns: repeat(
|
|
206
|
+
grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
|
|
201
207
|
}
|
|
202
208
|
.resource-list .list-content {
|
|
203
209
|
margin-top: 30px;
|
|
@@ -240,7 +246,8 @@
|
|
|
240
246
|
}
|
|
241
247
|
.resource-list .list-filter-wrapper .list-filter-tags {
|
|
242
248
|
display: flex;
|
|
243
|
-
|
|
249
|
+
flex-wrap: wrap;
|
|
250
|
+
gap: 10px;
|
|
244
251
|
margin-top: 10px;
|
|
245
252
|
}
|
|
246
253
|
.resource-list .list-filter-wrapper .list-filter-tags .list-filter-tag {
|
|
@@ -261,16 +268,41 @@
|
|
|
261
268
|
justify-content: space-between;
|
|
262
269
|
}
|
|
263
270
|
.resource-list .list-filter-wrapper .list-filter .filter-list {
|
|
271
|
+
position: relative;
|
|
272
|
+
/** 给 popup 一个参考 */
|
|
264
273
|
display: flex;
|
|
265
|
-
flex-wrap: wrap;
|
|
266
|
-
gap: 10px;
|
|
267
274
|
}
|
|
268
275
|
.resource-list .list-filter-wrapper .list-filter .filter-list .filter-item {
|
|
269
276
|
width: 100px;
|
|
277
|
+
margin-right: 10px;
|
|
278
|
+
}
|
|
279
|
+
.resource-list .list-filter-wrapper .list-filter .filter-list .arco-trigger-popup {
|
|
280
|
+
z-index: 100000 !important;
|
|
270
281
|
}
|
|
271
282
|
.resource-list .list-filter-wrapper .list-filter .arco-input-prepend {
|
|
272
283
|
padding: 0;
|
|
273
284
|
}
|
|
285
|
+
.resource-list .list-filter-wrapper .list-filter .more-btn {
|
|
286
|
+
position: relative;
|
|
287
|
+
/** 给 poperjs 一个参考 */
|
|
288
|
+
}
|
|
289
|
+
.resource-list .list-filter-wrapper .list-filter .more-btn .filter-pannel {
|
|
290
|
+
inset: 40px auto auto auto !important;
|
|
291
|
+
}
|
|
292
|
+
.resource-list .list-filter-wrapper .filter-extra {
|
|
293
|
+
display: flex;
|
|
294
|
+
gap: 10px;
|
|
295
|
+
}
|
|
296
|
+
.resource-list .list-filter-wrapper .filter-pannel {
|
|
297
|
+
z-index: 100000;
|
|
298
|
+
display: flex;
|
|
299
|
+
flex-direction: column;
|
|
300
|
+
gap: 10px;
|
|
301
|
+
padding: 10px;
|
|
302
|
+
background-color: #fff;
|
|
303
|
+
border-radius: 4px;
|
|
304
|
+
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
|
|
305
|
+
}
|
|
274
306
|
.resource-list .title {
|
|
275
307
|
display: flex;
|
|
276
308
|
gap: 8px;
|
|
@@ -284,6 +316,10 @@
|
|
|
284
316
|
height: 16px;
|
|
285
317
|
background-color: #4886ff;
|
|
286
318
|
}
|
|
319
|
+
.resource-select-wrap {
|
|
320
|
+
width: 100%;
|
|
321
|
+
height: 100%;
|
|
322
|
+
}
|
|
287
323
|
.resource-select-modal-body {
|
|
288
324
|
height: 80vh;
|
|
289
325
|
padding: 0;
|
|
@@ -312,3 +348,8 @@
|
|
|
312
348
|
.resource-select-container .resource-select-header .arco-tabs-content {
|
|
313
349
|
display: none !important;
|
|
314
350
|
}
|
|
351
|
+
.resource-select-container .resource-list-content .resource-list-content-empty {
|
|
352
|
+
box-sizing: border-box;
|
|
353
|
+
width: 100%;
|
|
354
|
+
height: 100%;
|
|
355
|
+
}
|
|
@@ -2,6 +2,11 @@
|
|
|
2
2
|
@import './listCardWrapper.less';
|
|
3
3
|
@import './list.less';
|
|
4
4
|
|
|
5
|
+
.resource-select-wrap {
|
|
6
|
+
width: 100%;
|
|
7
|
+
height: 100%;
|
|
8
|
+
}
|
|
9
|
+
|
|
5
10
|
.resource-select-modal-body {
|
|
6
11
|
height: 80vh;
|
|
7
12
|
padding: 0;
|
|
@@ -38,4 +43,13 @@
|
|
|
38
43
|
display: none !important;
|
|
39
44
|
}
|
|
40
45
|
}
|
|
46
|
+
|
|
47
|
+
// 内容区域样式
|
|
48
|
+
.resource-list-content {
|
|
49
|
+
.resource-list-content-empty {
|
|
50
|
+
box-sizing: border-box;
|
|
51
|
+
width: 100%;
|
|
52
|
+
height: 100%;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
41
55
|
}
|
|
@@ -14,12 +14,14 @@
|
|
|
14
14
|
|
|
15
15
|
&-footer,
|
|
16
16
|
&-header,
|
|
17
|
+
&-content .resource-list-content-empty,
|
|
17
18
|
&-content .arco-scrollbar-container {
|
|
18
19
|
padding: 0 40px;
|
|
19
20
|
}
|
|
20
21
|
|
|
21
22
|
&-footer {
|
|
22
23
|
display: flex;
|
|
24
|
+
flex-wrap: wrap;
|
|
23
25
|
justify-content: space-between;
|
|
24
26
|
padding-bottom: 20px;
|
|
25
27
|
|
|
@@ -29,6 +31,11 @@
|
|
|
29
31
|
gap: 10px;
|
|
30
32
|
align-items: center;
|
|
31
33
|
justify-content: flex-end;
|
|
34
|
+
margin-top: 10px;
|
|
35
|
+
|
|
36
|
+
.list-selected-wrapper {
|
|
37
|
+
font-size: 12px;
|
|
38
|
+
}
|
|
32
39
|
}
|
|
33
40
|
}
|
|
34
41
|
|
|
@@ -47,7 +54,7 @@
|
|
|
47
54
|
.list-item-grid {
|
|
48
55
|
display: grid;
|
|
49
56
|
grid-gap: 20px;
|
|
50
|
-
grid-template-columns: repeat(
|
|
57
|
+
grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
|
|
51
58
|
}
|
|
52
59
|
}
|
|
53
60
|
|
|
@@ -108,7 +115,8 @@
|
|
|
108
115
|
.resource-list .list-filter-wrapper {
|
|
109
116
|
.list-filter-tags {
|
|
110
117
|
display: flex;
|
|
111
|
-
|
|
118
|
+
flex-wrap: wrap;
|
|
119
|
+
gap: 10px;
|
|
112
120
|
margin-top: 10px;
|
|
113
121
|
|
|
114
122
|
.list-filter-tag {
|
|
@@ -133,18 +141,46 @@
|
|
|
133
141
|
justify-content: space-between;
|
|
134
142
|
|
|
135
143
|
.filter-list {
|
|
144
|
+
position: relative; /** 给 popup 一个参考 */
|
|
136
145
|
display: flex;
|
|
137
|
-
flex-wrap: wrap;
|
|
138
|
-
gap: 10px;
|
|
139
146
|
|
|
140
147
|
.filter-item {
|
|
141
148
|
width: 100px;
|
|
149
|
+
margin-right: 10px;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
.arco-trigger-popup {
|
|
153
|
+
z-index: 100000 !important;
|
|
142
154
|
}
|
|
143
155
|
}
|
|
144
156
|
|
|
145
157
|
.arco-input-prepend {
|
|
146
158
|
padding: 0;
|
|
147
159
|
}
|
|
160
|
+
|
|
161
|
+
.more-btn {
|
|
162
|
+
position: relative; /** 给 poperjs 一个参考 */
|
|
163
|
+
|
|
164
|
+
.filter-pannel {
|
|
165
|
+
inset: 40px auto auto auto !important;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
.filter-extra {
|
|
171
|
+
display: flex;
|
|
172
|
+
gap: 10px;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
.filter-pannel {
|
|
176
|
+
z-index: 100000;
|
|
177
|
+
display: flex;
|
|
178
|
+
flex-direction: column;
|
|
179
|
+
gap: 10px;
|
|
180
|
+
padding: 10px;
|
|
181
|
+
background-color: #fff;
|
|
182
|
+
border-radius: 4px;
|
|
183
|
+
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
|
|
148
184
|
}
|
|
149
185
|
}
|
|
150
186
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent, ref, provide, computed, watch, nextTick, openBlock, createElementBlock, createCommentVNode, createElementVNode, normalizeClass, normalizeStyle, toDisplayString, Fragment, renderList, createBlock, createVNode, unref, withCtx, createTextVNode } from "vue";
|
|
1
|
+
import { defineComponent, ref, provide, computed, watch, nextTick, onMounted, openBlock, createElementBlock, createCommentVNode, createElementVNode, normalizeClass, normalizeStyle, toDisplayString, Fragment, renderList, createBlock, createVNode, unref, withCtx, createTextVNode } from "vue";
|
|
2
2
|
import { RadioGroup, Radio, Switch } from "@arco-design/web-vue";
|
|
3
3
|
import { docThumbObjMap, docThumbArrMap } from "../utils/doc.js";
|
|
4
4
|
import _sfc_main$4 from "../imageCrop/component.js";
|
|
@@ -234,7 +234,6 @@ const _sfc_main = defineComponent({
|
|
|
234
234
|
thumbOptionIndex.value = index;
|
|
235
235
|
};
|
|
236
236
|
const openDialogMediaSelection = (type, index) => {
|
|
237
|
-
console.log(type, index, "dkdk");
|
|
238
237
|
thumbBannerModel.value = type || "thumb";
|
|
239
238
|
thumbOptionIndex.value = index || 0;
|
|
240
239
|
dialogMediaSelectionShow.value = true;
|
|
@@ -271,6 +270,16 @@ const _sfc_main = defineComponent({
|
|
|
271
270
|
temp = [{ url: data[0].url, thumb: data[0].url }];
|
|
272
271
|
}
|
|
273
272
|
styleData.value.data = temp;
|
|
273
|
+
styleData.value.cover_url = data[0].url;
|
|
274
|
+
const getColors = getThemeColor(BASE_API, data[0].url);
|
|
275
|
+
getColors.then((themes) => {
|
|
276
|
+
styleData.value.cover_colorList = JSON.parse(JSON.stringify(themes));
|
|
277
|
+
styleData.value.cover_theme_color = `rgb(${themes[1]})`;
|
|
278
|
+
callback(styleData.value);
|
|
279
|
+
}).catch((e) => {
|
|
280
|
+
styleData.value.banner_theme_color = `rgb(255, 255, 255)`;
|
|
281
|
+
callback(styleData.value);
|
|
282
|
+
});
|
|
274
283
|
} else if (thumbBannerModel.value === "banner") {
|
|
275
284
|
styleData.value.banner_url = data[0].url;
|
|
276
285
|
const getColors = getThemeColor(BASE_API, data[0].url);
|
|
@@ -338,10 +347,13 @@ const _sfc_main = defineComponent({
|
|
|
338
347
|
});
|
|
339
348
|
};
|
|
340
349
|
const modelChange = () => {
|
|
350
|
+
styleData.value.cover_theme_color = "";
|
|
341
351
|
if (!props.dataValue)
|
|
342
352
|
return;
|
|
343
353
|
if (styleData.value.model === oldData.value.model) {
|
|
344
354
|
styleData.value.data = oldData.value.data;
|
|
355
|
+
styleData.value.cover_theme_color = oldData.value.cover_theme_color;
|
|
356
|
+
styleData.value.cover_colorList = oldData.value.cover_colorList;
|
|
345
357
|
} else {
|
|
346
358
|
styleData.value.data = [];
|
|
347
359
|
}
|
|
@@ -354,6 +366,15 @@ const _sfc_main = defineComponent({
|
|
|
354
366
|
},
|
|
355
367
|
set(value) {
|
|
356
368
|
styleData.value.banner_url = value.url;
|
|
369
|
+
styleData.value.cover_colorList = styleData.value.banner_colorList;
|
|
370
|
+
}
|
|
371
|
+
});
|
|
372
|
+
const cover = computed({
|
|
373
|
+
get() {
|
|
374
|
+
const { cover_theme_color } = styleData.value;
|
|
375
|
+
return cover_theme_color;
|
|
376
|
+
},
|
|
377
|
+
set() {
|
|
357
378
|
}
|
|
358
379
|
});
|
|
359
380
|
const hasBanner = computed({
|
|
@@ -366,6 +387,15 @@ const _sfc_main = defineComponent({
|
|
|
366
387
|
callback(styleData.value);
|
|
367
388
|
}
|
|
368
389
|
});
|
|
390
|
+
const hasCover = computed({
|
|
391
|
+
get() {
|
|
392
|
+
return !!cover.value;
|
|
393
|
+
},
|
|
394
|
+
set(value) {
|
|
395
|
+
styleData.value.cover = value;
|
|
396
|
+
callback(styleData.value);
|
|
397
|
+
}
|
|
398
|
+
});
|
|
369
399
|
const pcBanner = computed({
|
|
370
400
|
get() {
|
|
371
401
|
const { pc_banner_url_info, pc_banner_url } = styleData.value;
|
|
@@ -378,6 +408,23 @@ const _sfc_main = defineComponent({
|
|
|
378
408
|
const colorChange = (styleData2) => {
|
|
379
409
|
callback(styleData2);
|
|
380
410
|
};
|
|
411
|
+
onMounted(() => {
|
|
412
|
+
if (!styleData.value.cover_url) {
|
|
413
|
+
setTimeout(() => {
|
|
414
|
+
styleData.value.cover_url = styleData.value.data[0].url;
|
|
415
|
+
const getColors = getThemeColor(BASE_API, styleData.value.data[0].url);
|
|
416
|
+
getColors.then((themes) => {
|
|
417
|
+
styleData.value.cover_colorList = JSON.parse(JSON.stringify(themes));
|
|
418
|
+
styleData.value.cover_theme_color = `rgb(${themes[1]})`;
|
|
419
|
+
oldData.value = JSON.parse(JSON.stringify(styleData.value));
|
|
420
|
+
callback(styleData.value);
|
|
421
|
+
}).catch((e) => {
|
|
422
|
+
styleData.value.banner_theme_color = `rgb(255, 255, 255)`;
|
|
423
|
+
callback(styleData.value);
|
|
424
|
+
});
|
|
425
|
+
}, 700);
|
|
426
|
+
}
|
|
427
|
+
});
|
|
381
428
|
return (_ctx, _cache) => {
|
|
382
429
|
var _a, _b, _c, _d, _e, _f;
|
|
383
430
|
return openBlock(), createElementBlock("div", {
|
|
@@ -470,7 +517,14 @@ const _sfc_main = defineComponent({
|
|
|
470
517
|
]),
|
|
471
518
|
_: 1
|
|
472
519
|
}, 8, ["modelValue"])
|
|
473
|
-
], 64)) : createCommentVNode("v-if", true)
|
|
520
|
+
], 64)) : createCommentVNode("v-if", true),
|
|
521
|
+
hasCover.value ? (openBlock(), createBlock(_sfc_main$2, {
|
|
522
|
+
key: 3,
|
|
523
|
+
"style-data": styleData.value,
|
|
524
|
+
model: "cover",
|
|
525
|
+
style: { "margin-top": "10px" },
|
|
526
|
+
onChange: colorChange
|
|
527
|
+
}, null, 8, ["style-data"])) : createCommentVNode("v-if", true)
|
|
474
528
|
])
|
|
475
529
|
], 2),
|
|
476
530
|
_ctx.mode === "doc" ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
package/es/utils/index.js
CHANGED
|
@@ -137,13 +137,13 @@ async function copyContent(content) {
|
|
|
137
137
|
}
|
|
138
138
|
}
|
|
139
139
|
function mediaTime(v) {
|
|
140
|
-
const h = Math.floor(v /
|
|
141
|
-
const m = Math.floor(
|
|
142
|
-
const s = Math.floor(v
|
|
140
|
+
const h = Math.floor(v / 3600);
|
|
141
|
+
const m = Math.floor(v % 3600 / 60);
|
|
142
|
+
const s = Math.floor(v % 60);
|
|
143
143
|
let ret = "";
|
|
144
|
-
ret += `${h < 10 ? `0${h}` : h
|
|
145
|
-
ret += `${m < 10 ? `0${m}` : m
|
|
146
|
-
ret += s < 10 ? `0${s}` : s
|
|
144
|
+
ret += `${h < 10 ? `0${h}` : h}:`;
|
|
145
|
+
ret += `${m < 10 ? `0${m}` : m}:`;
|
|
146
|
+
ret += s < 10 ? `0${s}` : s;
|
|
147
147
|
return ret;
|
|
148
148
|
}
|
|
149
149
|
export { copyContent, dateYYYYDDMMHHmm, generateUUID, getRealUrl, getThemeColor, mediaTime, noCoverText, replaceSuffix, timeFormat, to, validateForm };
|
|
@@ -38,9 +38,11 @@ const _sfc_main = vue.defineComponent({
|
|
|
38
38
|
});
|
|
39
39
|
return _columns;
|
|
40
40
|
});
|
|
41
|
-
const getOptions = (
|
|
42
|
-
return item
|
|
43
|
-
|
|
41
|
+
const getOptions = vue.computed(() => {
|
|
42
|
+
return (item) => {
|
|
43
|
+
return item.options ? item.options : [];
|
|
44
|
+
};
|
|
45
|
+
});
|
|
44
46
|
const hasValue = vue.computed(() => {
|
|
45
47
|
return (key) => {
|
|
46
48
|
var _a, _b;
|
|
@@ -77,7 +79,10 @@ const _sfc_main = vue.defineComponent({
|
|
|
77
79
|
_form[column.range] = rangeTemp[column.range];
|
|
78
80
|
} else if (column.component === "select") {
|
|
79
81
|
_form[column.key] = column.defaultValue || null;
|
|
80
|
-
} else {
|
|
82
|
+
} else if (column.component === "input-group") {
|
|
83
|
+
_form[column.selectKey] = column.selectDefaultValue || "";
|
|
84
|
+
_form[column.inputKey] = column.inputDefaultValue || "";
|
|
85
|
+
} else if (column.component) {
|
|
81
86
|
_form[column.key] = column.defaultValue || "";
|
|
82
87
|
}
|
|
83
88
|
});
|
|
@@ -179,17 +184,48 @@ const _sfc_main = vue.defineComponent({
|
|
|
179
184
|
active: hasValue.value(item.key)
|
|
180
185
|
}, {
|
|
181
186
|
default: vue.withCtx(() => [
|
|
182
|
-
item.component === "input" ? (vue.openBlock(), vue.createBlock(vue.unref(webVue.
|
|
183
|
-
|
|
187
|
+
item.slot ? vue.renderSlot(_ctx.$slots, item.slot, { key: 0 }) : item.component === "input-group" ? (vue.openBlock(), vue.createBlock(vue.unref(webVue.InputGroup), { key: 1 }, {
|
|
188
|
+
default: vue.withCtx(() => [
|
|
189
|
+
vue.createVNode(vue.unref(webVue.Select), {
|
|
190
|
+
modelValue: form.value[item.selectKey],
|
|
191
|
+
"onUpdate:modelValue": ($event) => form.value[item.selectKey] = $event,
|
|
192
|
+
"default-active-first-option": "",
|
|
193
|
+
style: { "width": "100px" }
|
|
194
|
+
}, {
|
|
195
|
+
default: vue.withCtx(() => [
|
|
196
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(item.selectOptions, (option, idx) => {
|
|
197
|
+
return vue.openBlock(), vue.createBlock(vue.unref(webVue.Option), {
|
|
198
|
+
key: idx,
|
|
199
|
+
value: option.value
|
|
200
|
+
}, {
|
|
201
|
+
default: vue.withCtx(() => [
|
|
202
|
+
vue.createTextVNode(vue.toDisplayString(option.label), 1)
|
|
203
|
+
]),
|
|
204
|
+
_: 2
|
|
205
|
+
}, 1032, ["value"]);
|
|
206
|
+
}), 128))
|
|
207
|
+
]),
|
|
208
|
+
_: 2
|
|
209
|
+
}, 1032, ["modelValue", "onUpdate:modelValue"]),
|
|
210
|
+
vue.createVNode(vue.unref(webVue.Input), {
|
|
211
|
+
modelValue: form.value[item.inputKey],
|
|
212
|
+
"onUpdate:modelValue": ($event) => form.value[item.inputKey] = $event,
|
|
213
|
+
placeholder: item.placeholder ? item.placeholder : `\u8BF7\u8F93\u5165${item.inputLabel}`,
|
|
214
|
+
style: { "width": "180px" }
|
|
215
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue", "placeholder"])
|
|
216
|
+
]),
|
|
217
|
+
_: 2
|
|
218
|
+
}, 1024)) : item.component === "input" ? (vue.openBlock(), vue.createBlock(vue.unref(webVue.InputSearch), {
|
|
219
|
+
key: 2,
|
|
184
220
|
modelValue: form.value[item.key],
|
|
185
221
|
"onUpdate:modelValue": ($event) => form.value[item.key] = $event,
|
|
186
222
|
style: vue.normalizeStyle({ width: styleWidth(columnsMap.value[item.key]) }),
|
|
187
223
|
"allow-clear": "",
|
|
188
224
|
size: "medium",
|
|
189
|
-
placeholder: `\u8BF7\u8F93\u5165${item.label}`
|
|
225
|
+
placeholder: item.placeholder ? item.placeholder : `\u8BF7\u8F93\u5165${item.label}`
|
|
190
226
|
}, null, 8, ["modelValue", "onUpdate:modelValue", "style", "placeholder"])) : vue.createCommentVNode("v-if", true),
|
|
191
227
|
item.component === "select" ? (vue.openBlock(), vue.createBlock(vue.unref(webVue.Select), {
|
|
192
|
-
key:
|
|
228
|
+
key: 3,
|
|
193
229
|
modelValue: form.value[item.key],
|
|
194
230
|
"onUpdate:modelValue": ($event) => form.value[item.key] = $event,
|
|
195
231
|
"popup-container": "#base-filter-popup-container",
|
|
@@ -197,13 +233,13 @@ const _sfc_main = vue.defineComponent({
|
|
|
197
233
|
"allow-search": item.allowSearch,
|
|
198
234
|
"default-active-first-option": false,
|
|
199
235
|
style: vue.normalizeStyle({ width: styleWidth(columnsMap.value[item.key]) }),
|
|
200
|
-
placeholder: `\u8BF7\u9009\u62E9${item.label}`,
|
|
236
|
+
placeholder: item.placeholder ? item.placeholder : `\u8BF7\u9009\u62E9${item.label}`,
|
|
201
237
|
onSearch: ($event) => handleSelectSearch($event, item),
|
|
202
238
|
onPopupVisibleChange: ($event) => handleSelectPopupChange($event, item),
|
|
203
239
|
onChange: ($event) => handleSelectChange($event, item)
|
|
204
240
|
}, {
|
|
205
241
|
default: vue.withCtx(() => [
|
|
206
|
-
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(getOptions(item), (opt) => {
|
|
242
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(getOptions.value(item), (opt) => {
|
|
207
243
|
return vue.openBlock(), vue.createBlock(vue.unref(webVue.Option), {
|
|
208
244
|
key: opt.value,
|
|
209
245
|
label: opt.label,
|
|
@@ -214,7 +250,7 @@ const _sfc_main = vue.defineComponent({
|
|
|
214
250
|
_: 2
|
|
215
251
|
}, 1032, ["modelValue", "onUpdate:modelValue", "allow-search", "style", "placeholder", "onSearch", "onPopupVisibleChange", "onChange"])) : vue.createCommentVNode("v-if", true),
|
|
216
252
|
item.component === "range-picker" ? (vue.openBlock(), vue.createBlock(vue.unref(webVue.RangePicker), {
|
|
217
|
-
key:
|
|
253
|
+
key: 4,
|
|
218
254
|
modelValue: form.value[item.key].range,
|
|
219
255
|
"onUpdate:modelValue": ($event) => form.value[item.key].range = $event,
|
|
220
256
|
style: vue.normalizeStyle({ width: styleWidth(form.value[item.key]) }),
|
|
@@ -225,7 +261,28 @@ const _sfc_main = vue.defineComponent({
|
|
|
225
261
|
"popup-container": "#base-filter-popup-container",
|
|
226
262
|
onClick: _cache[1] || (_cache[1] = vue.withModifiers(() => {
|
|
227
263
|
}, ["stop"]))
|
|
228
|
-
}, null, 8, ["modelValue", "onUpdate:modelValue", "style"])) : vue.createCommentVNode("v-if", true)
|
|
264
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue", "style"])) : vue.createCommentVNode("v-if", true),
|
|
265
|
+
item.component === "radio" ? (vue.openBlock(), vue.createBlock(vue.unref(webVue.RadioGroup), {
|
|
266
|
+
key: 5,
|
|
267
|
+
modelValue: form.value[item.key],
|
|
268
|
+
"onUpdate:modelValue": ($event) => form.value[item.key] = $event,
|
|
269
|
+
type: "button"
|
|
270
|
+
}, {
|
|
271
|
+
default: vue.withCtx(() => [
|
|
272
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(item.options || [], (option, idx) => {
|
|
273
|
+
return vue.openBlock(), vue.createBlock(vue.unref(webVue.Radio), {
|
|
274
|
+
key: idx,
|
|
275
|
+
value: option.value
|
|
276
|
+
}, {
|
|
277
|
+
default: vue.withCtx(() => [
|
|
278
|
+
vue.createTextVNode(vue.toDisplayString(option.label), 1)
|
|
279
|
+
]),
|
|
280
|
+
_: 2
|
|
281
|
+
}, 1032, ["value"]);
|
|
282
|
+
}), 128))
|
|
283
|
+
]),
|
|
284
|
+
_: 2
|
|
285
|
+
}, 1032, ["modelValue", "onUpdate:modelValue"])) : vue.createCommentVNode("v-if", true)
|
|
229
286
|
]),
|
|
230
287
|
_: 2
|
|
231
288
|
}, 1032, ["active"]);
|
package/lib/config.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
3
3
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
4
|
-
const DEFAULT_BASE_API = ((_b = (_a = window.situoyun) == null ? void 0 : _a.env) == null ? void 0 : _b.BASE_HOST) || "https://site.cmstop.xyz";
|
|
4
|
+
const DEFAULT_BASE_API = ((_b = (_a = window.situoyun) == null ? void 0 : _a.env) == null ? void 0 : _b.BASE_HOST) || "https://site.r.cmstop.xyz";
|
|
5
5
|
const DEFAULT_BASE_ACCOUNT_HOST = ((_d = (_c = window.situoyun) == null ? void 0 : _c.env) == null ? void 0 : _d.BASE_ACCOUNT_HOST) || "https://account.cmstop.xyz";
|
|
6
6
|
const DEFAULT_UPLOAD_CHUNK_SIZE = ((_f = (_e = window.situoyun) == null ? void 0 : _e.env) == null ? void 0 : _f.UPLOAD_CHUNK_SIZE) || 5242880;
|
|
7
7
|
const DEFAULT_UPLOAD_URL = ((_h = (_g = window.situoyun) == null ? void 0 : _g.env) == null ? void 0 : _h.BASE_STATIC_FILE_API) || "https://oss.cmstop.xyz/maple/v1";
|
|
@@ -109,6 +109,12 @@ const _sfc_main = vue.defineComponent({
|
|
|
109
109
|
onCellMouseEnter: tableCellMouseEnter,
|
|
110
110
|
onCellMouseLeave: tableCellMouseLeave
|
|
111
111
|
}, {
|
|
112
|
+
"after-index": vue.withCtx(() => [
|
|
113
|
+
vue.renderSlot(_ctx.$slots, "after-index", {
|
|
114
|
+
row: element,
|
|
115
|
+
index: index$4
|
|
116
|
+
})
|
|
117
|
+
]),
|
|
112
118
|
batch: vue.withCtx(() => [
|
|
113
119
|
vue.renderSlot(_ctx.$slots, "batch", {
|
|
114
120
|
row: element,
|
|
@@ -133,6 +139,12 @@ const _sfc_main = vue.defineComponent({
|
|
|
133
139
|
onCellMouseEnter: tableCellMouseEnter,
|
|
134
140
|
onCellMouseLeave: tableCellMouseLeave
|
|
135
141
|
}, {
|
|
142
|
+
"after-index": vue.withCtx(() => [
|
|
143
|
+
vue.renderSlot(_ctx.$slots, "after-index", {
|
|
144
|
+
row: element,
|
|
145
|
+
index: index$4
|
|
146
|
+
})
|
|
147
|
+
]),
|
|
136
148
|
tip: vue.withCtx(() => [
|
|
137
149
|
vue.renderSlot(_ctx.$slots, "tip", {
|
|
138
150
|
row: element,
|
|
@@ -229,6 +241,12 @@ const _sfc_main = vue.defineComponent({
|
|
|
229
241
|
onCellMouseEnter: tableCellMouseEnter,
|
|
230
242
|
onCellMouseLeave: tableCellMouseLeave
|
|
231
243
|
}, {
|
|
244
|
+
"after-index": vue.withCtx(() => [
|
|
245
|
+
vue.renderSlot(_ctx.$slots, "after-index", {
|
|
246
|
+
row: item,
|
|
247
|
+
index: index$4
|
|
248
|
+
})
|
|
249
|
+
]),
|
|
232
250
|
batch: vue.withCtx(() => [
|
|
233
251
|
vue.renderSlot(_ctx.$slots, "batch", {
|
|
234
252
|
row: item,
|
|
@@ -253,6 +271,12 @@ const _sfc_main = vue.defineComponent({
|
|
|
253
271
|
onCellMouseEnter: tableCellMouseEnter,
|
|
254
272
|
onCellMouseLeave: tableCellMouseLeave
|
|
255
273
|
}, {
|
|
274
|
+
"after-index": vue.withCtx(() => [
|
|
275
|
+
vue.renderSlot(_ctx.$slots, "after-index", {
|
|
276
|
+
row: item,
|
|
277
|
+
index: index$4
|
|
278
|
+
})
|
|
279
|
+
]),
|
|
256
280
|
tip: vue.withCtx(() => [
|
|
257
281
|
vue.renderSlot(_ctx.$slots, "tip", {
|
|
258
282
|
row: item,
|
|
@@ -143,7 +143,8 @@ const _sfc_main = vue.defineComponent({
|
|
|
143
143
|
})
|
|
144
144
|
]),
|
|
145
145
|
index: vue.withCtx(() => [
|
|
146
|
-
vue.createElementVNode("span", _hoisted_1, vue.toDisplayString(_ctx.index + 1), 1)
|
|
146
|
+
vue.createElementVNode("span", _hoisted_1, vue.toDisplayString(_ctx.index + 1), 1),
|
|
147
|
+
vue.renderSlot(_ctx.$slots, "after-index")
|
|
147
148
|
]),
|
|
148
149
|
tip: vue.withCtx(() => [
|
|
149
150
|
vue.createCommentVNode(" \u5148\u6DFB\u52A0\u6587\u4EF6\u8D44\u6E90\uFF0C\u672A\u53D1\u5E03 "),
|
|
@@ -38,6 +38,12 @@ const _sfc_main = vue.defineComponent({
|
|
|
38
38
|
index: _ctx.index
|
|
39
39
|
})
|
|
40
40
|
]),
|
|
41
|
+
"after-index": vue.withCtx(() => [
|
|
42
|
+
vue.renderSlot(_ctx.$slots, "after-index", {
|
|
43
|
+
row: _ctx.element,
|
|
44
|
+
index: _ctx.index
|
|
45
|
+
})
|
|
46
|
+
]),
|
|
41
47
|
batch: vue.withCtx(() => [
|
|
42
48
|
vue.renderSlot(_ctx.$slots, "batch", {
|
|
43
49
|
row: _ctx.item,
|
|
@@ -110,9 +110,51 @@ function getSysRsPage(BASE_API, params) {
|
|
|
110
110
|
params
|
|
111
111
|
});
|
|
112
112
|
}
|
|
113
|
+
function getDirectory(BASE_API, params) {
|
|
114
|
+
return request(BASE_API, {
|
|
115
|
+
url: "/poplar/v3/directory/tree",
|
|
116
|
+
method: "get",
|
|
117
|
+
params
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
function useDirectory(options) {
|
|
121
|
+
const tree = vue.ref([]);
|
|
122
|
+
async function loadDirTree(parent_id) {
|
|
123
|
+
const params = parent_id ? { parent_id } : {};
|
|
124
|
+
const { code, message } = await getDirectory(options.BASE_API, params);
|
|
125
|
+
if (code === 0) {
|
|
126
|
+
if (!Array.isArray(message.data))
|
|
127
|
+
return [];
|
|
128
|
+
return message.data;
|
|
129
|
+
}
|
|
130
|
+
return [];
|
|
131
|
+
}
|
|
132
|
+
async function init() {
|
|
133
|
+
const result = await loadDirTree();
|
|
134
|
+
if (!Array.isArray(result))
|
|
135
|
+
return;
|
|
136
|
+
tree.value = result;
|
|
137
|
+
}
|
|
138
|
+
async function loadMore(target) {
|
|
139
|
+
const children = await loadDirTree(target.key);
|
|
140
|
+
target.children = children;
|
|
141
|
+
if (children.length === 0)
|
|
142
|
+
target.isLeaf = true;
|
|
143
|
+
}
|
|
144
|
+
vue.onMounted(() => {
|
|
145
|
+
init();
|
|
146
|
+
});
|
|
147
|
+
return {
|
|
148
|
+
tree,
|
|
149
|
+
init,
|
|
150
|
+
loadMore
|
|
151
|
+
};
|
|
152
|
+
}
|
|
113
153
|
exports["default"] = useAttachement;
|
|
114
154
|
exports.getAttachmentsAll = getAttachmentsAll;
|
|
115
155
|
exports.getAttachmentsMy = getAttachmentsMy;
|
|
116
156
|
exports.getAttachmentsMyMessage = getAttachmentsMyMessage;
|
|
157
|
+
exports.getDirectory = getDirectory;
|
|
117
158
|
exports.getSysRsByTag = getSysRsByTag;
|
|
118
159
|
exports.getSysRsPage = getSysRsPage;
|
|
160
|
+
exports.useDirectory = useDirectory;
|
package/lib/hooks/usePopper.js
CHANGED
|
@@ -9,16 +9,16 @@ function usePopper(pannel, triggerEl) {
|
|
|
9
9
|
};
|
|
10
10
|
const show = () => {
|
|
11
11
|
visible.value = true;
|
|
12
|
-
window.onclick = (
|
|
12
|
+
window.onclick = () => {
|
|
13
13
|
hide();
|
|
14
14
|
visible.value = false;
|
|
15
15
|
window.onclick = null;
|
|
16
16
|
};
|
|
17
17
|
};
|
|
18
|
-
const initPopper = (placement = "bottom-start") => {
|
|
18
|
+
const initPopper = (placement = "bottom-start", of) => {
|
|
19
19
|
if (!pannel.value || !triggerEl.value)
|
|
20
20
|
return;
|
|
21
|
-
const offset = [0, 10];
|
|
21
|
+
const offset = of != null ? of : [0, 10];
|
|
22
22
|
if (window.__POWERED_BY_WUJIE__) {
|
|
23
23
|
offset[1] = -54;
|
|
24
24
|
}
|