@idooel/components 0.0.1-beta.2 → 0.0.1-beta.20
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/@idooel/components.esm.css +123 -0
- package/dist/@idooel/components.esm.js +1986 -715
- package/dist/@idooel/components.umd.css +117 -0
- package/dist/@idooel/components.umd.js +1992 -721
- package/package.json +46 -45
- package/packages/alert/index.js +5 -0
- package/packages/alert/src/index.vue +46 -0
- package/packages/batch-export/index.js +4 -4
- package/packages/batch-export/src/index.vue +106 -14
- package/packages/button/index.js +4 -4
- package/packages/button/src/index.vue +54 -54
- package/packages/checkbox/index.js +4 -4
- package/packages/checkbox/src/index.vue +43 -43
- package/packages/{attachment → composite-components/attachment}/src/index.vue +14 -14
- package/packages/composite-components/button-group/index.js +4 -4
- package/packages/composite-components/button-group/src/index.vue +45 -45
- package/packages/composite-components/modal-import/index.js +5 -0
- package/packages/composite-components/modal-import/src/index.vue +28 -0
- package/packages/composite-components/search-area/index.js +4 -4
- package/packages/composite-components/search-area/src/index.vue +225 -206
- package/packages/composite-components/search-area/src/label.vue +35 -35
- package/packages/date/index.js +4 -4
- package/packages/date/src/index.vue +39 -39
- package/packages/date-range/index.js +5 -0
- package/packages/date-range/src/index.vue +42 -0
- package/packages/form/index.js +4 -4
- package/packages/form/src/index.vue +210 -118
- package/packages/form-group-model/index.js +5 -0
- package/packages/form-group-model/src/index.vue +258 -0
- package/packages/form-model/index.js +4 -4
- package/packages/form-model/src/index.vue +163 -138
- package/packages/icon/index.js +4 -4
- package/packages/icon/src/index.vue +31 -31
- package/packages/index.js +81 -73
- package/packages/input/index.js +4 -4
- package/packages/input/src/index.vue +35 -27
- package/packages/input-number/index.js +4 -4
- package/packages/input-number/src/index.vue +23 -23
- package/packages/modal/index.js +4 -4
- package/packages/modal/src/index.vue +141 -128
- package/packages/radio/index.js +4 -4
- package/packages/radio/src/index.vue +51 -47
- package/packages/select/index.js +4 -4
- package/packages/select/src/index.vue +77 -34
- package/packages/select-entity/index.js +4 -4
- package/packages/select-entity/src/index.vue +113 -113
- package/packages/step-model/index.js +5 -0
- package/packages/step-model/src/index.vue +173 -0
- package/packages/table/index.js +4 -4
- package/packages/table/src/action.vue +131 -131
- package/packages/table/src/index.vue +157 -157
- package/packages/textarea/index.js +4 -4
- package/packages/textarea/src/index.vue +57 -48
- package/packages/theme/form.scss +21 -23
- package/packages/theme/index.scss +27 -23
- package/packages/theme/variables.scss +55 -55
- package/packages/tpl/index.js +4 -4
- package/packages/tpl/src/index.vue +55 -49
- package/packages/tree/index.js +4 -4
- package/packages/tree/src/TreeNode.vue +29 -29
- package/packages/tree/src/index.vue +101 -101
- package/packages/tree-table-model/index.js +4 -4
- package/packages/tree-table-model/src/index.vue +314 -314
- package/packages/upload/index.js +4 -4
- package/packages/upload/src/index.vue +348 -350
- package/packages/utils/index.js +22 -3
- package/scripts/rollup.config.js +35 -35
- package/scripts/rollup.esm.config.js +11 -11
- package/scripts/rollup.umd.config.js +14 -14
- package/packages/text/index.js +0 -5
- package/packages/text/src/index.vue +0 -15
- /package/packages/{attachment → composite-components/attachment}/index.js +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type,
|
|
1
|
+
import { type, net, route } from '@idooel/shared';
|
|
2
2
|
import moment from 'moment';
|
|
3
3
|
import FileUpload from 'vue-upload-component';
|
|
4
4
|
|
|
@@ -20,7 +20,7 @@ import FileUpload from 'vue-upload-component';
|
|
|
20
20
|
//
|
|
21
21
|
//
|
|
22
22
|
|
|
23
|
-
var script$
|
|
23
|
+
var script$r = {
|
|
24
24
|
name: 'ele-button',
|
|
25
25
|
props: {
|
|
26
26
|
record: {
|
|
@@ -138,10 +138,10 @@ function normalizeComponent(template, style, script, scopeId, isFunctionalTempla
|
|
|
138
138
|
}
|
|
139
139
|
|
|
140
140
|
/* script */
|
|
141
|
-
const __vue_script__$
|
|
141
|
+
const __vue_script__$r = script$r;
|
|
142
142
|
|
|
143
143
|
/* template */
|
|
144
|
-
var __vue_render__$
|
|
144
|
+
var __vue_render__$r = function () {
|
|
145
145
|
var _vm = this;
|
|
146
146
|
var _h = _vm.$createElement;
|
|
147
147
|
var _c = _vm._self._c || _h;
|
|
@@ -187,17 +187,17 @@ var __vue_render__$n = function () {
|
|
|
187
187
|
2
|
|
188
188
|
)
|
|
189
189
|
};
|
|
190
|
-
var __vue_staticRenderFns__$
|
|
191
|
-
__vue_render__$
|
|
190
|
+
var __vue_staticRenderFns__$r = [];
|
|
191
|
+
__vue_render__$r._withStripped = true;
|
|
192
192
|
|
|
193
193
|
/* style */
|
|
194
|
-
const __vue_inject_styles__$
|
|
194
|
+
const __vue_inject_styles__$r = undefined;
|
|
195
195
|
/* scoped */
|
|
196
|
-
const __vue_scope_id__$
|
|
196
|
+
const __vue_scope_id__$r = undefined;
|
|
197
197
|
/* module identifier */
|
|
198
|
-
const __vue_module_identifier__$
|
|
198
|
+
const __vue_module_identifier__$r = undefined;
|
|
199
199
|
/* functional template */
|
|
200
|
-
const __vue_is_functional_template__$
|
|
200
|
+
const __vue_is_functional_template__$r = false;
|
|
201
201
|
/* style inject */
|
|
202
202
|
|
|
203
203
|
/* style inject SSR */
|
|
@@ -206,20 +206,20 @@ __vue_render__$n._withStripped = true;
|
|
|
206
206
|
|
|
207
207
|
|
|
208
208
|
|
|
209
|
-
const __vue_component__$
|
|
210
|
-
{ render: __vue_render__$
|
|
211
|
-
__vue_inject_styles__$
|
|
212
|
-
__vue_script__$
|
|
213
|
-
__vue_scope_id__$
|
|
214
|
-
__vue_is_functional_template__$
|
|
215
|
-
__vue_module_identifier__$
|
|
209
|
+
const __vue_component__$r = /*#__PURE__*/normalizeComponent(
|
|
210
|
+
{ render: __vue_render__$r, staticRenderFns: __vue_staticRenderFns__$r },
|
|
211
|
+
__vue_inject_styles__$r,
|
|
212
|
+
__vue_script__$r,
|
|
213
|
+
__vue_scope_id__$r,
|
|
214
|
+
__vue_is_functional_template__$r,
|
|
215
|
+
__vue_module_identifier__$r,
|
|
216
216
|
false,
|
|
217
217
|
undefined,
|
|
218
218
|
undefined,
|
|
219
219
|
undefined
|
|
220
220
|
);
|
|
221
221
|
|
|
222
|
-
__vue_component__$
|
|
222
|
+
__vue_component__$r.install = Vue => Vue.component(__vue_component__$r.name, __vue_component__$r);
|
|
223
223
|
|
|
224
224
|
//
|
|
225
225
|
//
|
|
@@ -234,7 +234,7 @@ __vue_component__$n.install = Vue => Vue.component(__vue_component__$n.name, __v
|
|
|
234
234
|
//
|
|
235
235
|
//
|
|
236
236
|
|
|
237
|
-
var script$
|
|
237
|
+
var script$q = {
|
|
238
238
|
name: 'ele-date',
|
|
239
239
|
props: {
|
|
240
240
|
value: {
|
|
@@ -262,10 +262,10 @@ var script$m = {
|
|
|
262
262
|
};
|
|
263
263
|
|
|
264
264
|
/* script */
|
|
265
|
-
const __vue_script__$
|
|
265
|
+
const __vue_script__$q = script$q;
|
|
266
266
|
|
|
267
267
|
/* template */
|
|
268
|
-
var __vue_render__$
|
|
268
|
+
var __vue_render__$q = function () {
|
|
269
269
|
var _vm = this;
|
|
270
270
|
var _h = _vm.$createElement;
|
|
271
271
|
var _c = _vm._self._c || _h;
|
|
@@ -280,17 +280,17 @@ var __vue_render__$m = function () {
|
|
|
280
280
|
on: { focus: _vm.onFocus, panelChange: _vm.onPanelChange },
|
|
281
281
|
})
|
|
282
282
|
};
|
|
283
|
-
var __vue_staticRenderFns__$
|
|
284
|
-
__vue_render__$
|
|
283
|
+
var __vue_staticRenderFns__$q = [];
|
|
284
|
+
__vue_render__$q._withStripped = true;
|
|
285
285
|
|
|
286
286
|
/* style */
|
|
287
|
-
const __vue_inject_styles__$
|
|
287
|
+
const __vue_inject_styles__$q = undefined;
|
|
288
288
|
/* scoped */
|
|
289
|
-
const __vue_scope_id__$
|
|
289
|
+
const __vue_scope_id__$q = undefined;
|
|
290
290
|
/* module identifier */
|
|
291
|
-
const __vue_module_identifier__$
|
|
291
|
+
const __vue_module_identifier__$q = undefined;
|
|
292
292
|
/* functional template */
|
|
293
|
-
const __vue_is_functional_template__$
|
|
293
|
+
const __vue_is_functional_template__$q = false;
|
|
294
294
|
/* style inject */
|
|
295
295
|
|
|
296
296
|
/* style inject SSR */
|
|
@@ -299,29 +299,37 @@ __vue_render__$m._withStripped = true;
|
|
|
299
299
|
|
|
300
300
|
|
|
301
301
|
|
|
302
|
-
const __vue_component__$
|
|
303
|
-
{ render: __vue_render__$
|
|
304
|
-
__vue_inject_styles__$
|
|
305
|
-
__vue_script__$
|
|
306
|
-
__vue_scope_id__$
|
|
307
|
-
__vue_is_functional_template__$
|
|
308
|
-
__vue_module_identifier__$
|
|
302
|
+
const __vue_component__$q = /*#__PURE__*/normalizeComponent(
|
|
303
|
+
{ render: __vue_render__$q, staticRenderFns: __vue_staticRenderFns__$q },
|
|
304
|
+
__vue_inject_styles__$q,
|
|
305
|
+
__vue_script__$q,
|
|
306
|
+
__vue_scope_id__$q,
|
|
307
|
+
__vue_is_functional_template__$q,
|
|
308
|
+
__vue_module_identifier__$q,
|
|
309
309
|
false,
|
|
310
310
|
undefined,
|
|
311
311
|
undefined,
|
|
312
312
|
undefined
|
|
313
313
|
);
|
|
314
314
|
|
|
315
|
-
__vue_component__$
|
|
315
|
+
__vue_component__$q.install = Vue => Vue.component(__vue_component__$q.name, __vue_component__$q);
|
|
316
316
|
|
|
317
317
|
//
|
|
318
318
|
//
|
|
319
319
|
//
|
|
320
320
|
//
|
|
321
321
|
|
|
322
|
-
var script$
|
|
322
|
+
var script$p = {
|
|
323
323
|
name: 'ele-input',
|
|
324
|
+
model: {
|
|
325
|
+
prop: 'value',
|
|
326
|
+
event: 'change'
|
|
327
|
+
},
|
|
324
328
|
props: {
|
|
329
|
+
disabled: {
|
|
330
|
+
type: Boolean,
|
|
331
|
+
default: false
|
|
332
|
+
},
|
|
325
333
|
maxLength: {
|
|
326
334
|
type: Number,
|
|
327
335
|
default: 125
|
|
@@ -383,66 +391,66 @@ function addStyle(id, css) {
|
|
|
383
391
|
}
|
|
384
392
|
|
|
385
393
|
/* script */
|
|
386
|
-
const __vue_script__$
|
|
394
|
+
const __vue_script__$p = script$p;
|
|
387
395
|
|
|
388
396
|
/* template */
|
|
389
|
-
var __vue_render__$
|
|
397
|
+
var __vue_render__$p = function () {
|
|
390
398
|
var _vm = this;
|
|
391
399
|
var _h = _vm.$createElement;
|
|
392
400
|
var _c = _vm._self._c || _h;
|
|
393
401
|
return _c("a-input", {
|
|
394
|
-
attrs: {
|
|
402
|
+
attrs: {
|
|
403
|
+
value: _vm.value,
|
|
404
|
+
disabled: _vm.disabled,
|
|
405
|
+
"max-length": _vm.maxLength,
|
|
406
|
+
},
|
|
395
407
|
on: { change: _vm.onChange },
|
|
396
408
|
})
|
|
397
409
|
};
|
|
398
|
-
var __vue_staticRenderFns__$
|
|
399
|
-
__vue_render__$
|
|
410
|
+
var __vue_staticRenderFns__$p = [];
|
|
411
|
+
__vue_render__$p._withStripped = true;
|
|
400
412
|
|
|
401
413
|
/* style */
|
|
402
|
-
const __vue_inject_styles__$
|
|
414
|
+
const __vue_inject_styles__$p = function (inject) {
|
|
403
415
|
if (!inject) return
|
|
404
|
-
inject("data-v-
|
|
416
|
+
inject("data-v-c04139c8_0", { source: "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n", map: {"version":3,"sources":[],"names":[],"mappings":"","file":"index.vue"}, media: undefined });
|
|
405
417
|
|
|
406
418
|
};
|
|
407
419
|
/* scoped */
|
|
408
|
-
const __vue_scope_id__$
|
|
420
|
+
const __vue_scope_id__$p = "data-v-c04139c8";
|
|
409
421
|
/* module identifier */
|
|
410
|
-
const __vue_module_identifier__$
|
|
422
|
+
const __vue_module_identifier__$p = undefined;
|
|
411
423
|
/* functional template */
|
|
412
|
-
const __vue_is_functional_template__$
|
|
424
|
+
const __vue_is_functional_template__$p = false;
|
|
413
425
|
/* style inject SSR */
|
|
414
426
|
|
|
415
427
|
/* style inject shadow dom */
|
|
416
428
|
|
|
417
429
|
|
|
418
430
|
|
|
419
|
-
const __vue_component__$
|
|
420
|
-
{ render: __vue_render__$
|
|
421
|
-
__vue_inject_styles__$
|
|
422
|
-
__vue_script__$
|
|
423
|
-
__vue_scope_id__$
|
|
424
|
-
__vue_is_functional_template__$
|
|
425
|
-
__vue_module_identifier__$
|
|
431
|
+
const __vue_component__$p = /*#__PURE__*/normalizeComponent(
|
|
432
|
+
{ render: __vue_render__$p, staticRenderFns: __vue_staticRenderFns__$p },
|
|
433
|
+
__vue_inject_styles__$p,
|
|
434
|
+
__vue_script__$p,
|
|
435
|
+
__vue_scope_id__$p,
|
|
436
|
+
__vue_is_functional_template__$p,
|
|
437
|
+
__vue_module_identifier__$p,
|
|
426
438
|
false,
|
|
427
439
|
createInjector,
|
|
428
440
|
undefined,
|
|
429
441
|
undefined
|
|
430
442
|
);
|
|
431
443
|
|
|
432
|
-
__vue_component__$
|
|
444
|
+
__vue_component__$p.install = Vue => Vue.component(__vue_component__$p.name, __vue_component__$p);
|
|
433
445
|
|
|
434
446
|
//
|
|
435
|
-
|
|
436
|
-
//
|
|
437
|
-
//
|
|
438
|
-
//
|
|
439
|
-
//
|
|
440
|
-
//
|
|
441
|
-
//
|
|
442
|
-
|
|
443
|
-
var script$k = {
|
|
447
|
+
var script$o = {
|
|
444
448
|
name: 'ele-select',
|
|
445
449
|
props: {
|
|
450
|
+
disabled: {
|
|
451
|
+
type: Boolean,
|
|
452
|
+
default: false
|
|
453
|
+
},
|
|
446
454
|
value: {
|
|
447
455
|
type: [String, Array, Number]
|
|
448
456
|
},
|
|
@@ -452,9 +460,52 @@ var script$k = {
|
|
|
452
460
|
dataSource: {
|
|
453
461
|
type: Array,
|
|
454
462
|
default: () => []
|
|
463
|
+
},
|
|
464
|
+
url: {
|
|
465
|
+
type: String,
|
|
466
|
+
default: 'api-basic/workbench/dicttype/enum/selectList'
|
|
467
|
+
},
|
|
468
|
+
code: {
|
|
469
|
+
type: String
|
|
470
|
+
},
|
|
471
|
+
params: {
|
|
472
|
+
type: Object,
|
|
473
|
+
default: () => ({})
|
|
474
|
+
}
|
|
475
|
+
},
|
|
476
|
+
data() {
|
|
477
|
+
return {
|
|
478
|
+
innerDataSource: []
|
|
479
|
+
};
|
|
480
|
+
},
|
|
481
|
+
watch: {
|
|
482
|
+
dataSource: {
|
|
483
|
+
handler(dataSource) {
|
|
484
|
+
this.innerDataSource = dataSource;
|
|
485
|
+
},
|
|
486
|
+
immediate: true
|
|
455
487
|
}
|
|
456
488
|
},
|
|
489
|
+
created() {
|
|
490
|
+
(this.code || !type.isEmpty(this.params)) && this.fetchDataSourceByUrl();
|
|
491
|
+
},
|
|
457
492
|
methods: {
|
|
493
|
+
fetchDataSourceByUrl() {
|
|
494
|
+
net.get(this.url, {
|
|
495
|
+
code: this.code,
|
|
496
|
+
...this.params
|
|
497
|
+
}).then(resp => {
|
|
498
|
+
const {
|
|
499
|
+
data
|
|
500
|
+
} = resp;
|
|
501
|
+
this.innerDataSource = data.map(item => {
|
|
502
|
+
return {
|
|
503
|
+
label: item.name,
|
|
504
|
+
value: item.code
|
|
505
|
+
};
|
|
506
|
+
});
|
|
507
|
+
});
|
|
508
|
+
},
|
|
458
509
|
onChange(value) {
|
|
459
510
|
this.$emit('change', value);
|
|
460
511
|
this.$emit('input', value);
|
|
@@ -463,10 +514,10 @@ var script$k = {
|
|
|
463
514
|
};
|
|
464
515
|
|
|
465
516
|
/* script */
|
|
466
|
-
const __vue_script__$
|
|
517
|
+
const __vue_script__$o = script$o;
|
|
467
518
|
|
|
468
519
|
/* template */
|
|
469
|
-
var __vue_render__$
|
|
520
|
+
var __vue_render__$o = function () {
|
|
470
521
|
var _vm = this;
|
|
471
522
|
var _h = _vm.$createElement;
|
|
472
523
|
var _c = _vm._self._c || _h;
|
|
@@ -474,10 +525,10 @@ var __vue_render__$k = function () {
|
|
|
474
525
|
"a-select",
|
|
475
526
|
{
|
|
476
527
|
staticStyle: { width: "100%" },
|
|
477
|
-
attrs: { value: _vm.value },
|
|
528
|
+
attrs: { disabled: _vm.disabled, value: _vm.value },
|
|
478
529
|
on: { change: _vm.onChange },
|
|
479
530
|
},
|
|
480
|
-
_vm._l(_vm.
|
|
531
|
+
_vm._l(_vm.innerDataSource, function (item) {
|
|
481
532
|
return _c(
|
|
482
533
|
"a-select-option",
|
|
483
534
|
{ key: item.value, attrs: { value: item.value } },
|
|
@@ -487,41 +538,41 @@ var __vue_render__$k = function () {
|
|
|
487
538
|
1
|
|
488
539
|
)
|
|
489
540
|
};
|
|
490
|
-
var __vue_staticRenderFns__$
|
|
491
|
-
__vue_render__$
|
|
541
|
+
var __vue_staticRenderFns__$o = [];
|
|
542
|
+
__vue_render__$o._withStripped = true;
|
|
492
543
|
|
|
493
544
|
/* style */
|
|
494
|
-
const __vue_inject_styles__$
|
|
545
|
+
const __vue_inject_styles__$o = function (inject) {
|
|
495
546
|
if (!inject) return
|
|
496
|
-
inject("data-v-
|
|
547
|
+
inject("data-v-1db57f86_0", { source: "\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["index.vue"],"names":[],"mappings":";;AAEA,oCAAoC","file":"index.vue"}, media: undefined });
|
|
497
548
|
|
|
498
549
|
};
|
|
499
550
|
/* scoped */
|
|
500
|
-
const __vue_scope_id__$
|
|
551
|
+
const __vue_scope_id__$o = "data-v-1db57f86";
|
|
501
552
|
/* module identifier */
|
|
502
|
-
const __vue_module_identifier__$
|
|
553
|
+
const __vue_module_identifier__$o = undefined;
|
|
503
554
|
/* functional template */
|
|
504
|
-
const __vue_is_functional_template__$
|
|
555
|
+
const __vue_is_functional_template__$o = false;
|
|
505
556
|
/* style inject SSR */
|
|
506
557
|
|
|
507
558
|
/* style inject shadow dom */
|
|
508
559
|
|
|
509
560
|
|
|
510
561
|
|
|
511
|
-
const __vue_component__$
|
|
512
|
-
{ render: __vue_render__$
|
|
513
|
-
__vue_inject_styles__$
|
|
514
|
-
__vue_script__$
|
|
515
|
-
__vue_scope_id__$
|
|
516
|
-
__vue_is_functional_template__$
|
|
517
|
-
__vue_module_identifier__$
|
|
562
|
+
const __vue_component__$o = /*#__PURE__*/normalizeComponent(
|
|
563
|
+
{ render: __vue_render__$o, staticRenderFns: __vue_staticRenderFns__$o },
|
|
564
|
+
__vue_inject_styles__$o,
|
|
565
|
+
__vue_script__$o,
|
|
566
|
+
__vue_scope_id__$o,
|
|
567
|
+
__vue_is_functional_template__$o,
|
|
568
|
+
__vue_module_identifier__$o,
|
|
518
569
|
false,
|
|
519
570
|
createInjector,
|
|
520
571
|
undefined,
|
|
521
572
|
undefined
|
|
522
573
|
);
|
|
523
574
|
|
|
524
|
-
__vue_component__$
|
|
575
|
+
__vue_component__$o.install = Vue => Vue.component(__vue_component__$o.name, __vue_component__$o);
|
|
525
576
|
|
|
526
577
|
// Unique ID creation requires a high quality random # generator. In the browser we therefore
|
|
527
578
|
// require the crypto API and do not support built-in fallback to lower quality random number
|
|
@@ -1155,7 +1206,7 @@ const parse = (expression, props = {}) => {
|
|
|
1155
1206
|
|
|
1156
1207
|
//
|
|
1157
1208
|
const MENU_KEY_NAMESPACE = 'f7b3b8b0-1b7b-11ec-9621-0242ac130002';
|
|
1158
|
-
var script$
|
|
1209
|
+
var script$n = {
|
|
1159
1210
|
props: {
|
|
1160
1211
|
record: {
|
|
1161
1212
|
type: Object
|
|
@@ -1253,10 +1304,10 @@ var script$j = {
|
|
|
1253
1304
|
};
|
|
1254
1305
|
|
|
1255
1306
|
/* script */
|
|
1256
|
-
const __vue_script__$
|
|
1307
|
+
const __vue_script__$n = script$n;
|
|
1257
1308
|
|
|
1258
1309
|
/* template */
|
|
1259
|
-
var __vue_render__$
|
|
1310
|
+
var __vue_render__$n = function () {
|
|
1260
1311
|
var _vm = this;
|
|
1261
1312
|
var _h = _vm.$createElement;
|
|
1262
1313
|
var _c = _vm._self._c || _h;
|
|
@@ -1356,34 +1407,34 @@ var __vue_render__$j = function () {
|
|
|
1356
1407
|
0
|
|
1357
1408
|
)
|
|
1358
1409
|
};
|
|
1359
|
-
var __vue_staticRenderFns__$
|
|
1360
|
-
__vue_render__$
|
|
1410
|
+
var __vue_staticRenderFns__$n = [];
|
|
1411
|
+
__vue_render__$n._withStripped = true;
|
|
1361
1412
|
|
|
1362
1413
|
/* style */
|
|
1363
|
-
const __vue_inject_styles__$
|
|
1414
|
+
const __vue_inject_styles__$n = function (inject) {
|
|
1364
1415
|
if (!inject) return
|
|
1365
|
-
inject("data-v-
|
|
1416
|
+
inject("data-v-5e9f9cdc_0", { source: ".g-table__action[data-v-5e9f9cdc] {\n display: flex;\n flex-direction: row;\n}\n.g-table__action .table-action__item[data-v-5e9f9cdc] {\n font-size: 14px;\n color: #409EFF;\n margin-left: 16px;\n cursor: pointer;\n}\n.g-table__action .table-action__item[data-v-5e9f9cdc]:first-child {\n margin-left: 0;\n}\n\n/*# sourceMappingURL=action.vue.map */", map: {"version":3,"sources":["/Users/huangshan/Goldgov/front/ganjiao/base-elearning-frontend-model/packages/components/packages/table/src/action.vue","action.vue"],"names":[],"mappings":"AAsHA;EACA,aAAA;EACA,mBAAA;ACrHA;ADsHA;EACA,eAAA;EACA,cAAA;EACA,iBAAA;EACA,eAAA;ACpHA;ADqHA;EACA,cAAA;ACnHA;;AAEA,qCAAqC","file":"action.vue","sourcesContent":["<template>\n <div class=\"g-table__action\">\n <div class=\"table-action__item\" v-for=\"(item, idx) in execOperationExpression(dataSource)\" :key=\"idx\">\n <template v-if=\"item.type == 'text'\">\n <span @click=\"handleClickText(item)\">{{ item.label }}</span>\n </template>\n <template v-else-if=\"item.type == 'dropdown'\">\n <a-dropdown>\n <a-menu slot=\"overlay\" @click=\"handleDropdownClick\">\n <a-menu-item :key=\"`${item.key || ''}${menuKeyDelimiter}${opt.value || ''}`\" v-for=\"opt in execOperationExpression(item.optionList)\">\n <template v-if=\"opt.type == 'confirm'\">\n <a-popconfirm :title=\"opt.message\" @confirm=\"handleClickConfirm(opt)\">\n {{ opt.label }}\n </a-popconfirm>\n </template>\n <template v-else>\n {{ opt.label }}\n </template>\n </a-menu-item>\n </a-menu>\n <span>{{ item.label }}</span>\n </a-dropdown>\n </template>\n </div>\n </div>\n</template>\n\n<script>\nimport { v5 as uuidv5 } from 'uuid'\nimport { type, route } from '@idooel/shared'\nimport { parse } from '@idooel/expression'\nconst MENU_KEY_NAMESPACE = 'f7b3b8b0-1b7b-11ec-9621-0242ac130002'\nexport default {\n props: {\n record: {\n type: Object\n },\n dataSource: {\n type: Array,\n default: () => []\n }\n },\n inject: {\n requestTreeData: {\n default: void 0\n },\n requestTableData: {\n default: void 0\n }\n },\n computed: {\n menuKeyDelimiter () {\n return uuidv5('_', MENU_KEY_NAMESPACE)\n },\n builtInMethods () {\n return { \n requestTreeData: this.requestTreeData, \n requestTableData: this.requestTableData \n }\n }\n },\n methods: {\n execOperationExpression (dataSource = []) {\n const ret = dataSource.map(item => {\n const { show } = item\n if (type.isUndefined(show)) {\n return item\n } else if (type.isBool(show)) {\n if (show) return item\n } else if (type.isStr(show)) {\n const parseRet = parse(show, { \n ...this.record, \n _route: route.searchToQueryParams(window.location.search) \n })\n if (parseRet) return item\n }\n }).filter(item => item)\n return ret\n },\n handleClickConfirm (props) {\n //TODO generate event by special rule\n const { eventName, value } = props\n this.$emit(eventName, { \n key: value, \n record: this.record,\n builtInMethods: this.builtInMethods \n })\n },\n handleDropdownClick (props) {\n const { key } = props\n const [parent, child] = key.split(this.menuKeyDelimiter)\n if (!parent || !child) {\n throw new Error('key is required')\n }\n const currentDropdown = this.dataSource.find(item => item.key === parent)\n const currentClickTarget = currentDropdown.optionList.find(item => item.value === child)\n const { eventName, type } = currentClickTarget\n //TODO generate event by special rule\n if (type === 'confirm') return\n this.$emit(eventName, { \n key: child, \n record: this.record, \n builtInMethods: this.builtInMethods \n })\n },\n handleClickText (props) {\n const { eventName, key } = props\n this.$emit(eventName, { \n key, \n record: this.record, \n builtInMethods: this.builtInMethods \n })\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.g-table__action {\n display: flex;\n flex-direction: row;\n .table-action__item {\n font-size: 14px;\n color: #409EFF;\n margin-left: 16px;\n cursor: pointer;\n &:first-child {\n margin-left: 0;\n }\n }\n}\n</style>",".g-table__action {\n display: flex;\n flex-direction: row;\n}\n.g-table__action .table-action__item {\n font-size: 14px;\n color: #409EFF;\n margin-left: 16px;\n cursor: pointer;\n}\n.g-table__action .table-action__item:first-child {\n margin-left: 0;\n}\n\n/*# sourceMappingURL=action.vue.map */"]}, media: undefined });
|
|
1366
1417
|
|
|
1367
1418
|
};
|
|
1368
1419
|
/* scoped */
|
|
1369
|
-
const __vue_scope_id__$
|
|
1420
|
+
const __vue_scope_id__$n = "data-v-5e9f9cdc";
|
|
1370
1421
|
/* module identifier */
|
|
1371
|
-
const __vue_module_identifier__$
|
|
1422
|
+
const __vue_module_identifier__$n = undefined;
|
|
1372
1423
|
/* functional template */
|
|
1373
|
-
const __vue_is_functional_template__$
|
|
1424
|
+
const __vue_is_functional_template__$n = false;
|
|
1374
1425
|
/* style inject SSR */
|
|
1375
1426
|
|
|
1376
1427
|
/* style inject shadow dom */
|
|
1377
1428
|
|
|
1378
1429
|
|
|
1379
1430
|
|
|
1380
|
-
const __vue_component__$
|
|
1381
|
-
{ render: __vue_render__$
|
|
1382
|
-
__vue_inject_styles__$
|
|
1383
|
-
__vue_script__$
|
|
1384
|
-
__vue_scope_id__$
|
|
1385
|
-
__vue_is_functional_template__$
|
|
1386
|
-
__vue_module_identifier__$
|
|
1431
|
+
const __vue_component__$n = /*#__PURE__*/normalizeComponent(
|
|
1432
|
+
{ render: __vue_render__$n, staticRenderFns: __vue_staticRenderFns__$n },
|
|
1433
|
+
__vue_inject_styles__$n,
|
|
1434
|
+
__vue_script__$n,
|
|
1435
|
+
__vue_scope_id__$n,
|
|
1436
|
+
__vue_is_functional_template__$n,
|
|
1437
|
+
__vue_module_identifier__$n,
|
|
1387
1438
|
false,
|
|
1388
1439
|
createInjector,
|
|
1389
1440
|
undefined,
|
|
@@ -1391,10 +1442,10 @@ __vue_render__$j._withStripped = true;
|
|
|
1391
1442
|
);
|
|
1392
1443
|
|
|
1393
1444
|
//
|
|
1394
|
-
var script$
|
|
1445
|
+
var script$m = {
|
|
1395
1446
|
name: 'ele-table',
|
|
1396
1447
|
components: {
|
|
1397
|
-
Actions: __vue_component__$
|
|
1448
|
+
Actions: __vue_component__$n
|
|
1398
1449
|
},
|
|
1399
1450
|
props: {
|
|
1400
1451
|
actions: {
|
|
@@ -1437,10 +1488,10 @@ var script$i = {
|
|
|
1437
1488
|
};
|
|
1438
1489
|
|
|
1439
1490
|
/* script */
|
|
1440
|
-
const __vue_script__$
|
|
1491
|
+
const __vue_script__$m = script$m;
|
|
1441
1492
|
|
|
1442
1493
|
/* template */
|
|
1443
|
-
var __vue_render__$
|
|
1494
|
+
var __vue_render__$m = function () {
|
|
1444
1495
|
var _vm = this;
|
|
1445
1496
|
var _h = _vm.$createElement;
|
|
1446
1497
|
var _c = _vm._self._c || _h;
|
|
@@ -1499,41 +1550,41 @@ var __vue_render__$i = function () {
|
|
|
1499
1550
|
1
|
|
1500
1551
|
)
|
|
1501
1552
|
};
|
|
1502
|
-
var __vue_staticRenderFns__$
|
|
1503
|
-
__vue_render__$
|
|
1553
|
+
var __vue_staticRenderFns__$m = [];
|
|
1554
|
+
__vue_render__$m._withStripped = true;
|
|
1504
1555
|
|
|
1505
1556
|
/* style */
|
|
1506
|
-
const __vue_inject_styles__$
|
|
1557
|
+
const __vue_inject_styles__$m = function (inject) {
|
|
1507
1558
|
if (!inject) return
|
|
1508
|
-
inject("data-v-6f3faf52_0", { source: ".g-table__wrapper[data-v-6f3faf52] {\n padding: 16px;\n padding-top: unset;\n}\n.g-table__wrapper[data-v-6f3faf52] .ant-table-wrapper .ant-table {\n border-width: calc(var(--idooel-border-width) * 1px);\n border-style: solid;\n border-color: var(--idooel-border-color);\n}\n.g-table__wrapper[data-v-6f3faf52] .ant-table-wrapper .ant-table-header .ant-table-fixed {\n /* border-bottom: 2px solid #53a8ff !important; */\n}\n.g-table__wrapper[data-v-6f3faf52] .ant-table-wrapper .ant-table-tbody tr td {\n border-color: var(--idooel-column-border-color);\n border-width: calc(var(--idooel-column-border-width) * 1px);\n border-style: solid;\n border-top: unset;\n border-left: unset;\n}\n.g-table__wrapper[data-v-6f3faf52] .ant-table-wrapper .ant-table-body {\n border-top-width: calc(var(--idooel-border-width) * 1px);\n border-top-style: solid;\n border-top-color: var(--idooel-border-color);\n}\n.g-table__wrapper[data-v-6f3faf52] .ant-table-wrapper .ant-table-fixed-left {\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\n border-bottom-style: solid;\n border-bottom-color: var(--idooel-border-color);\n}\n.g-table__wrapper[data-v-6f3faf52] .ant-table-wrapper .ant-table-fixed-left .ant-table-header {\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\n border-bottom-style: solid;\n border-bottom-color: var(--idooel-border-color);\n}\n.g-table__wrapper[data-v-6f3faf52] .ant-table-wrapper .ant-table-fixed-left .ant-table-body-inner {\n border-right-width: calc(var(--idooel-border-width) * 1px);\n border-right-style: solid;\n border-right-color: var(--idooel-border-color);\n}\n.g-table__wrapper[data-v-6f3faf52] .ant-table-wrapper .ant-table-fixed-left .ant-table-fixed {\n border-right-width: calc(var(--idooel-border-width) * 1px);\n border-right-color: var(--idooel-border-color);\n border-right-style: solid;\n}\n.g-table__wrapper[data-v-6f3faf52] .ant-table-wrapper .ant-table-fixed-right {\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\n border-bottom-style: solid;\n border-bottom-color: var(--idooel-border-color);\n}\n.g-table__wrapper[data-v-6f3faf52] .ant-table-wrapper .ant-table-fixed-right .ant-table-header {\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\n border-bottom-color: var(--idooel-border-color);\n border-bottom-style: solid;\n}\n.g-table__wrapper[data-v-6f3faf52] .ant-table-wrapper .ant-table-fixed-right .ant-table-fixed {\n border-left-width: calc(var(--idooel-border-width) * 1px);\n border-left-style: solid;\n border-left-color: var(--idooel-border-color);\n}\n.g-table__wrapper .g-table__pagination[data-v-6f3faf52] {\n /* margin-top: 8px; */\n display: flex;\n flex-direction: row;\n justify-content: end;\n border-width: calc(var(--idooel-border-width) * 1px);\n border-color: var(--idooel-border-color);\n border-style: solid;\n border-top: unset;\n padding-top: 8px;\n padding-bottom: 8px;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["E:\\work\\code\\ganjiao\\ganjian-monorepo\\packages\\components\\packages\\table\\src\\index.vue","index.vue"],"names":[],"mappings":"AA4EA;EAgEA,aAAA;EACA,kBAAA;AC1IA;AD2EA;EACA,oDAAA;EACA,mBAAA;EACA,wCAAA;ACzEA;AD4EA;EACA,iDAAA;AC1EA;AD+EA;EACA,+CAAA;EACA,2DAAA;EACA,mBAAA;EACA,iBAAA;EACA,kBAAA;AC7EA;ADiFA;EACA,wDAAA;EACA,uBAAA;EACA,4CAAA;AC/EA;ADiFA;EACA,2DAAA;EACA,0BAAA;EACA,+CAAA;AC/EA;ADgFA;EACA,2DAAA;EACA,0BAAA;EACA,+CAAA;AC9EA;ADgFA;EACA,0DAAA;EACA,yBAAA;EACA,8CAAA;AC9EA;ADgFA;EACA,0DAAA;EACA,8CAAA;EACA,yBAAA;AC9EA;ADiFA;EAMA,2DAAA;EACA,0BAAA;EACA,+CAAA;ACpFA;AD6EA;EACA,2DAAA;EACA,+CAAA;EACA,0BAAA;AC3EA;ADgFA;EACA,yDAAA;EACA,wBAAA;EACA,6CAAA;AC9EA;ADsFA;EACA,qBAAA;EACA,aAAA;EACA,mBAAA;EACA,oBAAA;EACA,oDAAA;EACA,wCAAA;EACA,mBAAA;EACA,iBAAA;EACA,gBAAA;EACA,mBAAA;ACpFA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\r\n <div class=\"g-table__wrapper\">\r\n <a-table\r\n :pagination=\"false\"\r\n :loading=\"loading\"\r\n :columns=\"columns\"\r\n :row-class-name=\"setRowClassName\"\r\n :data-source=\"dataSource\"\r\n :scroll=\"{ x: 1500, y: 500 }\">\r\n <template slot=\"action\" slot-scope=\"record\">\r\n <Actions v-on=\"$listeners\" :data-source=\"actions\" :record=\"record\"></Actions>\r\n </template>\r\n </a-table>\r\n <div class=\"g-table__pagination\">\r\n <a-pagination\r\n :show-total=\"total => `共 ${total} 条数据`\"\r\n show-size-changer \r\n show-quick-jumper\r\n :pageSize=\"pageSize\"\r\n :pageSizeOptions=\"pageSizeOptions\"\r\n @change=\"onChangePagination\" \r\n :total=\"total\">\r\n </a-pagination>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport Actions from './action.vue'\r\nexport default {\r\n name: 'ele-table',\r\n components: {\r\n Actions\r\n },\r\n props: {\r\n actions: {\r\n type: Array,\r\n default: () => []\r\n },\r\n total: {\r\n type: Number,\r\n default: 0\r\n },\r\n loading: {\r\n type: Boolean,\r\n default: false\r\n },\r\n columns: {\r\n type: Array,\r\n default: () => []\r\n },\r\n dataSource: {\r\n type: Array,\r\n default: () => []\r\n },\r\n pageSize: {\r\n type: Number,\r\n default: 10\r\n },\r\n pageSizeOptions: {\r\n type: Array,\r\n default: () => ['10', '20', '30', '40']\r\n }\r\n },\r\n methods: {\r\n setRowClassName (record, idx) {\r\n return idx % 2 === 0 ? 'g-table__row--even' : 'g-table__row--odd'\r\n },\r\n onChangePagination (page, pagrSize) {\r\n this.$emit('change-page', page, pagrSize)\r\n }\r\n }\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.g-table__wrapper {\r\n ::v-deep .ant-table-wrapper {\r\n .ant-table {\r\n border-width: calc(var(--idooel-border-width) * 1px);\r\n border-style: solid;\r\n border-color: var(--idooel-border-color);\r\n }\r\n .ant-table-header {\r\n .ant-table-fixed {\r\n /* border-bottom: 2px solid #53a8ff !important; */\r\n }\r\n }\r\n .ant-table-tbody {\r\n tr {\r\n td {\r\n border-color: var(--idooel-column-border-color);\r\n border-width: calc(var(--idooel-column-border-width) * 1px);;\r\n border-style: solid;\r\n border-top: unset;\r\n border-left: unset;\r\n }\r\n }\r\n }\r\n .ant-table-body {\r\n border-top-width: calc(var(--idooel-border-width) * 1px);\r\n border-top-style: solid;\r\n border-top-color: var(--idooel-border-color);\r\n }\r\n .ant-table-fixed-left {\r\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\r\n border-bottom-style: solid;\r\n border-bottom-color: var(--idooel-border-color);\r\n .ant-table-header {\r\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\r\n border-bottom-style: solid;\r\n border-bottom-color: var(--idooel-border-color);\r\n }\r\n .ant-table-body-inner {\r\n border-right-width: calc(var(--idooel-border-width) * 1px);\r\n border-right-style: solid;\r\n border-right-color: var(--idooel-border-color);\r\n }\r\n .ant-table-fixed {\r\n border-right-width: calc(var(--idooel-border-width) * 1px);\r\n border-right-color: var(--idooel-border-color);\r\n border-right-style: solid;\r\n }\r\n }\r\n .ant-table-fixed-right {\r\n .ant-table-header {\r\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\r\n border-bottom-color: var(--idooel-border-color);\r\n border-bottom-style: solid;\r\n }\r\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\r\n border-bottom-style: solid;\r\n border-bottom-color: var(--idooel-border-color);\r\n .ant-table-fixed {\r\n border-left-width: calc(var(--idooel-border-width) * 1px);\r\n border-left-style: solid;\r\n border-left-color: var(--idooel-border-color);\r\n }\r\n }\r\n }\r\n padding: 16px;\r\n padding-top: unset;\r\n .g-table__row--even {}\r\n .g-table__row--odd {}\r\n .g-table__pagination {\r\n /* margin-top: 8px; */\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: end;\r\n border-width: calc(var(--idooel-border-width) * 1px);\r\n border-color: var(--idooel-border-color);\r\n border-style: solid;\r\n border-top: unset;\r\n padding-top: 8px;\r\n padding-bottom: 8px;\r\n }\r\n}\r\n</style>",".g-table__wrapper {\n padding: 16px;\n padding-top: unset;\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table {\n border-width: calc(var(--idooel-border-width) * 1px);\n border-style: solid;\n border-color: var(--idooel-border-color);\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table-header .ant-table-fixed {\n /* border-bottom: 2px solid #53a8ff !important; */\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table-tbody tr td {\n border-color: var(--idooel-column-border-color);\n border-width: calc(var(--idooel-column-border-width) * 1px);\n border-style: solid;\n border-top: unset;\n border-left: unset;\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table-body {\n border-top-width: calc(var(--idooel-border-width) * 1px);\n border-top-style: solid;\n border-top-color: var(--idooel-border-color);\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table-fixed-left {\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\n border-bottom-style: solid;\n border-bottom-color: var(--idooel-border-color);\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table-fixed-left .ant-table-header {\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\n border-bottom-style: solid;\n border-bottom-color: var(--idooel-border-color);\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table-fixed-left .ant-table-body-inner {\n border-right-width: calc(var(--idooel-border-width) * 1px);\n border-right-style: solid;\n border-right-color: var(--idooel-border-color);\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table-fixed-left .ant-table-fixed {\n border-right-width: calc(var(--idooel-border-width) * 1px);\n border-right-color: var(--idooel-border-color);\n border-right-style: solid;\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table-fixed-right {\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\n border-bottom-style: solid;\n border-bottom-color: var(--idooel-border-color);\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table-fixed-right .ant-table-header {\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\n border-bottom-color: var(--idooel-border-color);\n border-bottom-style: solid;\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table-fixed-right .ant-table-fixed {\n border-left-width: calc(var(--idooel-border-width) * 1px);\n border-left-style: solid;\n border-left-color: var(--idooel-border-color);\n}\n.g-table__wrapper .g-table__pagination {\n /* margin-top: 8px; */\n display: flex;\n flex-direction: row;\n justify-content: end;\n border-width: calc(var(--idooel-border-width) * 1px);\n border-color: var(--idooel-border-color);\n border-style: solid;\n border-top: unset;\n padding-top: 8px;\n padding-bottom: 8px;\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
1559
|
+
inject("data-v-70a1f03f_0", { source: ".g-table__wrapper[data-v-70a1f03f] {\n padding: 16px;\n padding-top: unset;\n}\n.g-table__wrapper[data-v-70a1f03f] .ant-table-wrapper .ant-table {\n border-width: calc(var(--idooel-border-width) * 1px);\n border-style: solid;\n border-color: var(--idooel-border-color);\n}\n.g-table__wrapper[data-v-70a1f03f] .ant-table-wrapper .ant-table-header .ant-table-fixed {\n /* border-bottom: 2px solid #53a8ff !important; */\n}\n.g-table__wrapper[data-v-70a1f03f] .ant-table-wrapper .ant-table-tbody tr td {\n border-color: var(--idooel-column-border-color);\n border-width: calc(var(--idooel-column-border-width) * 1px);\n border-style: solid;\n border-top: unset;\n border-left: unset;\n}\n.g-table__wrapper[data-v-70a1f03f] .ant-table-wrapper .ant-table-body {\n border-top-width: calc(var(--idooel-border-width) * 1px);\n border-top-style: solid;\n border-top-color: var(--idooel-border-color);\n}\n.g-table__wrapper[data-v-70a1f03f] .ant-table-wrapper .ant-table-fixed-left {\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\n border-bottom-style: solid;\n border-bottom-color: var(--idooel-border-color);\n}\n.g-table__wrapper[data-v-70a1f03f] .ant-table-wrapper .ant-table-fixed-left .ant-table-header {\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\n border-bottom-style: solid;\n border-bottom-color: var(--idooel-border-color);\n}\n.g-table__wrapper[data-v-70a1f03f] .ant-table-wrapper .ant-table-fixed-left .ant-table-body-inner {\n border-right-width: calc(var(--idooel-border-width) * 1px);\n border-right-style: solid;\n border-right-color: var(--idooel-border-color);\n}\n.g-table__wrapper[data-v-70a1f03f] .ant-table-wrapper .ant-table-fixed-left .ant-table-fixed {\n border-right-width: calc(var(--idooel-border-width) * 1px);\n border-right-color: var(--idooel-border-color);\n border-right-style: solid;\n}\n.g-table__wrapper[data-v-70a1f03f] .ant-table-wrapper .ant-table-fixed-right {\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\n border-bottom-style: solid;\n border-bottom-color: var(--idooel-border-color);\n}\n.g-table__wrapper[data-v-70a1f03f] .ant-table-wrapper .ant-table-fixed-right .ant-table-header {\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\n border-bottom-color: var(--idooel-border-color);\n border-bottom-style: solid;\n}\n.g-table__wrapper[data-v-70a1f03f] .ant-table-wrapper .ant-table-fixed-right .ant-table-fixed {\n border-left-width: calc(var(--idooel-border-width) * 1px);\n border-left-style: solid;\n border-left-color: var(--idooel-border-color);\n}\n.g-table__wrapper .g-table__pagination[data-v-70a1f03f] {\n /* margin-top: 8px; */\n display: flex;\n flex-direction: row;\n justify-content: end;\n border-width: calc(var(--idooel-border-width) * 1px);\n border-color: var(--idooel-border-color);\n border-style: solid;\n border-top: unset;\n padding-top: 8px;\n padding-bottom: 8px;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["/Users/huangshan/Goldgov/front/ganjiao/base-elearning-frontend-model/packages/components/packages/table/src/index.vue","index.vue"],"names":[],"mappings":"AA4EA;EAgEA,aAAA;EACA,kBAAA;AC1IA;AD2EA;EACA,oDAAA;EACA,mBAAA;EACA,wCAAA;ACzEA;AD4EA;EACA,iDAAA;AC1EA;AD+EA;EACA,+CAAA;EACA,2DAAA;EACA,mBAAA;EACA,iBAAA;EACA,kBAAA;AC7EA;ADiFA;EACA,wDAAA;EACA,uBAAA;EACA,4CAAA;AC/EA;ADiFA;EACA,2DAAA;EACA,0BAAA;EACA,+CAAA;AC/EA;ADgFA;EACA,2DAAA;EACA,0BAAA;EACA,+CAAA;AC9EA;ADgFA;EACA,0DAAA;EACA,yBAAA;EACA,8CAAA;AC9EA;ADgFA;EACA,0DAAA;EACA,8CAAA;EACA,yBAAA;AC9EA;ADiFA;EAMA,2DAAA;EACA,0BAAA;EACA,+CAAA;ACpFA;AD6EA;EACA,2DAAA;EACA,+CAAA;EACA,0BAAA;AC3EA;ADgFA;EACA,yDAAA;EACA,wBAAA;EACA,6CAAA;AC9EA;ADsFA;EACA,qBAAA;EACA,aAAA;EACA,mBAAA;EACA,oBAAA;EACA,oDAAA;EACA,wCAAA;EACA,mBAAA;EACA,iBAAA;EACA,gBAAA;EACA,mBAAA;ACpFA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\n <div class=\"g-table__wrapper\">\n <a-table\n :pagination=\"false\"\n :loading=\"loading\"\n :columns=\"columns\"\n :row-class-name=\"setRowClassName\"\n :data-source=\"dataSource\"\n :scroll=\"{ x: 1500, y: 500 }\">\n <template slot=\"action\" slot-scope=\"record\">\n <Actions v-on=\"$listeners\" :data-source=\"actions\" :record=\"record\"></Actions>\n </template>\n </a-table>\n <div class=\"g-table__pagination\">\n <a-pagination\n :show-total=\"total => `共 ${total} 条数据`\"\n show-size-changer \n show-quick-jumper\n :pageSize=\"pageSize\"\n :pageSizeOptions=\"pageSizeOptions\"\n @change=\"onChangePagination\" \n :total=\"total\">\n </a-pagination>\n </div>\n </div>\n</template>\n\n<script>\nimport Actions from './action.vue'\nexport default {\n name: 'ele-table',\n components: {\n Actions\n },\n props: {\n actions: {\n type: Array,\n default: () => []\n },\n total: {\n type: Number,\n default: 0\n },\n loading: {\n type: Boolean,\n default: false\n },\n columns: {\n type: Array,\n default: () => []\n },\n dataSource: {\n type: Array,\n default: () => []\n },\n pageSize: {\n type: Number,\n default: 10\n },\n pageSizeOptions: {\n type: Array,\n default: () => ['10', '20', '30', '40']\n }\n },\n methods: {\n setRowClassName (record, idx) {\n return idx % 2 === 0 ? 'g-table__row--even' : 'g-table__row--odd'\n },\n onChangePagination (page, pagrSize) {\n this.$emit('change-page', page, pagrSize)\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.g-table__wrapper {\n ::v-deep .ant-table-wrapper {\n .ant-table {\n border-width: calc(var(--idooel-border-width) * 1px);\n border-style: solid;\n border-color: var(--idooel-border-color);\n }\n .ant-table-header {\n .ant-table-fixed {\n /* border-bottom: 2px solid #53a8ff !important; */\n }\n }\n .ant-table-tbody {\n tr {\n td {\n border-color: var(--idooel-column-border-color);\n border-width: calc(var(--idooel-column-border-width) * 1px);;\n border-style: solid;\n border-top: unset;\n border-left: unset;\n }\n }\n }\n .ant-table-body {\n border-top-width: calc(var(--idooel-border-width) * 1px);\n border-top-style: solid;\n border-top-color: var(--idooel-border-color);\n }\n .ant-table-fixed-left {\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\n border-bottom-style: solid;\n border-bottom-color: var(--idooel-border-color);\n .ant-table-header {\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\n border-bottom-style: solid;\n border-bottom-color: var(--idooel-border-color);\n }\n .ant-table-body-inner {\n border-right-width: calc(var(--idooel-border-width) * 1px);\n border-right-style: solid;\n border-right-color: var(--idooel-border-color);\n }\n .ant-table-fixed {\n border-right-width: calc(var(--idooel-border-width) * 1px);\n border-right-color: var(--idooel-border-color);\n border-right-style: solid;\n }\n }\n .ant-table-fixed-right {\n .ant-table-header {\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\n border-bottom-color: var(--idooel-border-color);\n border-bottom-style: solid;\n }\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\n border-bottom-style: solid;\n border-bottom-color: var(--idooel-border-color);\n .ant-table-fixed {\n border-left-width: calc(var(--idooel-border-width) * 1px);\n border-left-style: solid;\n border-left-color: var(--idooel-border-color);\n }\n }\n }\n padding: 16px;\n padding-top: unset;\n .g-table__row--even {}\n .g-table__row--odd {}\n .g-table__pagination {\n /* margin-top: 8px; */\n display: flex;\n flex-direction: row;\n justify-content: end;\n border-width: calc(var(--idooel-border-width) * 1px);\n border-color: var(--idooel-border-color);\n border-style: solid;\n border-top: unset;\n padding-top: 8px;\n padding-bottom: 8px;\n }\n}\n</style>",".g-table__wrapper {\n padding: 16px;\n padding-top: unset;\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table {\n border-width: calc(var(--idooel-border-width) * 1px);\n border-style: solid;\n border-color: var(--idooel-border-color);\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table-header .ant-table-fixed {\n /* border-bottom: 2px solid #53a8ff !important; */\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table-tbody tr td {\n border-color: var(--idooel-column-border-color);\n border-width: calc(var(--idooel-column-border-width) * 1px);\n border-style: solid;\n border-top: unset;\n border-left: unset;\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table-body {\n border-top-width: calc(var(--idooel-border-width) * 1px);\n border-top-style: solid;\n border-top-color: var(--idooel-border-color);\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table-fixed-left {\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\n border-bottom-style: solid;\n border-bottom-color: var(--idooel-border-color);\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table-fixed-left .ant-table-header {\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\n border-bottom-style: solid;\n border-bottom-color: var(--idooel-border-color);\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table-fixed-left .ant-table-body-inner {\n border-right-width: calc(var(--idooel-border-width) * 1px);\n border-right-style: solid;\n border-right-color: var(--idooel-border-color);\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table-fixed-left .ant-table-fixed {\n border-right-width: calc(var(--idooel-border-width) * 1px);\n border-right-color: var(--idooel-border-color);\n border-right-style: solid;\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table-fixed-right {\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\n border-bottom-style: solid;\n border-bottom-color: var(--idooel-border-color);\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table-fixed-right .ant-table-header {\n border-bottom-width: calc(var(--idooel-border-width) * 1px);\n border-bottom-color: var(--idooel-border-color);\n border-bottom-style: solid;\n}\n.g-table__wrapper ::v-deep .ant-table-wrapper .ant-table-fixed-right .ant-table-fixed {\n border-left-width: calc(var(--idooel-border-width) * 1px);\n border-left-style: solid;\n border-left-color: var(--idooel-border-color);\n}\n.g-table__wrapper .g-table__pagination {\n /* margin-top: 8px; */\n display: flex;\n flex-direction: row;\n justify-content: end;\n border-width: calc(var(--idooel-border-width) * 1px);\n border-color: var(--idooel-border-color);\n border-style: solid;\n border-top: unset;\n padding-top: 8px;\n padding-bottom: 8px;\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
1509
1560
|
|
|
1510
1561
|
};
|
|
1511
1562
|
/* scoped */
|
|
1512
|
-
const __vue_scope_id__$
|
|
1563
|
+
const __vue_scope_id__$m = "data-v-70a1f03f";
|
|
1513
1564
|
/* module identifier */
|
|
1514
|
-
const __vue_module_identifier__$
|
|
1565
|
+
const __vue_module_identifier__$m = undefined;
|
|
1515
1566
|
/* functional template */
|
|
1516
|
-
const __vue_is_functional_template__$
|
|
1567
|
+
const __vue_is_functional_template__$m = false;
|
|
1517
1568
|
/* style inject SSR */
|
|
1518
1569
|
|
|
1519
1570
|
/* style inject shadow dom */
|
|
1520
1571
|
|
|
1521
1572
|
|
|
1522
1573
|
|
|
1523
|
-
const __vue_component__$
|
|
1524
|
-
{ render: __vue_render__$
|
|
1525
|
-
__vue_inject_styles__$
|
|
1526
|
-
__vue_script__$
|
|
1527
|
-
__vue_scope_id__$
|
|
1528
|
-
__vue_is_functional_template__$
|
|
1529
|
-
__vue_module_identifier__$
|
|
1574
|
+
const __vue_component__$m = /*#__PURE__*/normalizeComponent(
|
|
1575
|
+
{ render: __vue_render__$m, staticRenderFns: __vue_staticRenderFns__$m },
|
|
1576
|
+
__vue_inject_styles__$m,
|
|
1577
|
+
__vue_script__$m,
|
|
1578
|
+
__vue_scope_id__$m,
|
|
1579
|
+
__vue_is_functional_template__$m,
|
|
1580
|
+
__vue_module_identifier__$m,
|
|
1530
1581
|
false,
|
|
1531
1582
|
createInjector,
|
|
1532
1583
|
undefined,
|
|
1533
1584
|
undefined
|
|
1534
1585
|
);
|
|
1535
1586
|
|
|
1536
|
-
__vue_component__$
|
|
1587
|
+
__vue_component__$m.install = Vue => Vue.component(__vue_component__$m.name, __vue_component__$m);
|
|
1537
1588
|
|
|
1538
1589
|
//
|
|
1539
1590
|
//
|
|
@@ -1559,7 +1610,7 @@ __vue_component__$i.install = Vue => Vue.component(__vue_component__$i.name, __v
|
|
|
1559
1610
|
//
|
|
1560
1611
|
//
|
|
1561
1612
|
|
|
1562
|
-
var script$
|
|
1613
|
+
var script$l = {
|
|
1563
1614
|
name: 'ele-tree',
|
|
1564
1615
|
props: {
|
|
1565
1616
|
treeData: {
|
|
@@ -1622,10 +1673,10 @@ var script$h = {
|
|
|
1622
1673
|
};
|
|
1623
1674
|
|
|
1624
1675
|
/* script */
|
|
1625
|
-
const __vue_script__$
|
|
1676
|
+
const __vue_script__$l = script$l;
|
|
1626
1677
|
|
|
1627
1678
|
/* template */
|
|
1628
|
-
var __vue_render__$
|
|
1679
|
+
var __vue_render__$l = function () {
|
|
1629
1680
|
var _vm = this;
|
|
1630
1681
|
var _h = _vm.$createElement;
|
|
1631
1682
|
var _c = _vm._self._c || _h;
|
|
@@ -1682,41 +1733,41 @@ var __vue_render__$h = function () {
|
|
|
1682
1733
|
1
|
|
1683
1734
|
)
|
|
1684
1735
|
};
|
|
1685
|
-
var __vue_staticRenderFns__$
|
|
1686
|
-
__vue_render__$
|
|
1736
|
+
var __vue_staticRenderFns__$l = [];
|
|
1737
|
+
__vue_render__$l._withStripped = true;
|
|
1687
1738
|
|
|
1688
1739
|
/* style */
|
|
1689
|
-
const __vue_inject_styles__$
|
|
1740
|
+
const __vue_inject_styles__$l = function (inject) {
|
|
1690
1741
|
if (!inject) return
|
|
1691
|
-
inject("data-v-
|
|
1742
|
+
inject("data-v-0cdfa85c_0", { source: ".g-tree__wrapper[data-v-0cdfa85c] {\n overflow: hidden;\n}\n.g-tree__wrapper[data-v-0cdfa85c] .ant-tree .ant-tree-node-content-wrapper {\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n}\n.g-tree__wrapper[data-v-0cdfa85c] .ant-tree .ant-tree-node-selected {\n color: #fff;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["/Users/huangshan/Goldgov/front/ganjiao/base-elearning-frontend-model/packages/components/packages/tree/src/index.vue","index.vue"],"names":[],"mappings":"AAwFA;EACA,gBAAA;ACvFA;ADyFA;EACA,uBAAA;EACA,gBAAA;EACA,mBAAA;ACvFA;ADyFA;EACA,WAAA;ACvFA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\n <div class=\"g-tree__wrapper\">\n <a-tree\n v-if=\"innerTreeData.length\"\n :tree-data=\"innerTreeData\"\n @select=\"selectTreeNode\"\n :replaceFields=\"replaceFields\"\n :default-expanded-keys=\"defaultExpandedKeys\"\n :default-selected-keys=\"defaultSelectedKeys\"\n blockNode \n :show-icon=\"showIcon\">\n <template #title=\"{ title }\">\n <span :title=\"title\" class=\"tree-node__title\">\n {{ title }}\n </span>\n </template>\n <template slot=\"custom\" slot-scope=\"{ scopedSlots }\">\n <a-icon :type=\"scopedSlots.iconName\"></a-icon>\n </template>\n </a-tree>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'ele-tree',\n props: {\n treeData: {\n type: Array,\n default: () => []\n },\n replaceFields: {\n type: Object,\n default: () => ({\n title: 'title',\n key: 'id',\n children: 'children'\n })\n },\n defaultExpandedKeys: {\n type: Array\n },\n defaultSelectedKeys: {\n type: Array\n },\n showIcon: {\n type: Boolean,\n default: true\n }\n },\n data () {\n return {}\n },\n computed: {\n innerTreeData () {\n return this.treeData\n // return [\n // {\n // title: 'parent 1',\n // key: 1,\n // scopedSlots: {\n // icon: 'custom',\n // iconName: 'smile-o'\n // },\n // children: [\n // {\n // title: '2',\n // key: 2,\n // scopedSlots: {\n // icon: 'custom',\n // iconName: 'frown-o'\n // }\n // }\n // ]\n // }\n // ]\n }\n },\n methods: {\n refreshTreeStatus (props = {}) {},\n selectTreeNode (selectedKeys, e) {\n this.$emit('select', selectedKeys, e)\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.g-tree__wrapper {\n overflow: hidden;\n ::v-deep .ant-tree {\n .ant-tree-node-content-wrapper {\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n }\n .ant-tree-node-selected {\n color: #fff;\n }\n }\n}\n</style>",".g-tree__wrapper {\n overflow: hidden;\n}\n.g-tree__wrapper ::v-deep .ant-tree .ant-tree-node-content-wrapper {\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n}\n.g-tree__wrapper ::v-deep .ant-tree .ant-tree-node-selected {\n color: #fff;\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
1692
1743
|
|
|
1693
1744
|
};
|
|
1694
1745
|
/* scoped */
|
|
1695
|
-
const __vue_scope_id__$
|
|
1746
|
+
const __vue_scope_id__$l = "data-v-0cdfa85c";
|
|
1696
1747
|
/* module identifier */
|
|
1697
|
-
const __vue_module_identifier__$
|
|
1748
|
+
const __vue_module_identifier__$l = undefined;
|
|
1698
1749
|
/* functional template */
|
|
1699
|
-
const __vue_is_functional_template__$
|
|
1750
|
+
const __vue_is_functional_template__$l = false;
|
|
1700
1751
|
/* style inject SSR */
|
|
1701
1752
|
|
|
1702
1753
|
/* style inject shadow dom */
|
|
1703
1754
|
|
|
1704
1755
|
|
|
1705
1756
|
|
|
1706
|
-
const __vue_component__$
|
|
1707
|
-
{ render: __vue_render__$
|
|
1708
|
-
__vue_inject_styles__$
|
|
1709
|
-
__vue_script__$
|
|
1710
|
-
__vue_scope_id__$
|
|
1711
|
-
__vue_is_functional_template__$
|
|
1712
|
-
__vue_module_identifier__$
|
|
1757
|
+
const __vue_component__$l = /*#__PURE__*/normalizeComponent(
|
|
1758
|
+
{ render: __vue_render__$l, staticRenderFns: __vue_staticRenderFns__$l },
|
|
1759
|
+
__vue_inject_styles__$l,
|
|
1760
|
+
__vue_script__$l,
|
|
1761
|
+
__vue_scope_id__$l,
|
|
1762
|
+
__vue_is_functional_template__$l,
|
|
1763
|
+
__vue_module_identifier__$l,
|
|
1713
1764
|
false,
|
|
1714
1765
|
createInjector,
|
|
1715
1766
|
undefined,
|
|
1716
1767
|
undefined
|
|
1717
1768
|
);
|
|
1718
1769
|
|
|
1719
|
-
__vue_component__$
|
|
1770
|
+
__vue_component__$l.install = Vue => Vue.component(__vue_component__$l.name, __vue_component__$l);
|
|
1720
1771
|
|
|
1721
1772
|
//
|
|
1722
1773
|
//
|
|
@@ -1726,7 +1777,7 @@ __vue_component__$h.install = Vue => Vue.component(__vue_component__$h.name, __v
|
|
|
1726
1777
|
//
|
|
1727
1778
|
//
|
|
1728
1779
|
|
|
1729
|
-
var script$
|
|
1780
|
+
var script$k = {
|
|
1730
1781
|
props: {
|
|
1731
1782
|
label: {
|
|
1732
1783
|
type: String
|
|
@@ -1735,10 +1786,10 @@ var script$g = {
|
|
|
1735
1786
|
};
|
|
1736
1787
|
|
|
1737
1788
|
/* script */
|
|
1738
|
-
const __vue_script__$
|
|
1789
|
+
const __vue_script__$k = script$k;
|
|
1739
1790
|
|
|
1740
1791
|
/* template */
|
|
1741
|
-
var __vue_render__$
|
|
1792
|
+
var __vue_render__$k = function () {
|
|
1742
1793
|
var _vm = this;
|
|
1743
1794
|
var _h = _vm.$createElement;
|
|
1744
1795
|
var _c = _vm._self._c || _h;
|
|
@@ -1748,34 +1799,34 @@ var __vue_render__$g = function () {
|
|
|
1748
1799
|
_c("span", { staticClass: "label__suffix" }, [_vm._v(":")]),
|
|
1749
1800
|
])
|
|
1750
1801
|
};
|
|
1751
|
-
var __vue_staticRenderFns__$
|
|
1752
|
-
__vue_render__$
|
|
1802
|
+
var __vue_staticRenderFns__$k = [];
|
|
1803
|
+
__vue_render__$k._withStripped = true;
|
|
1753
1804
|
|
|
1754
1805
|
/* style */
|
|
1755
|
-
const __vue_inject_styles__$
|
|
1806
|
+
const __vue_inject_styles__$k = function (inject) {
|
|
1756
1807
|
if (!inject) return
|
|
1757
|
-
inject("data-v-
|
|
1808
|
+
inject("data-v-07e596bf_0", { source: ".g-search__label[data-v-07e596bf] {\n /* width: 69px; */\n flex-basis: 69px;\n height: 32px;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n}\n.g-search__label .label__title[data-v-07e596bf], .g-search__label .label__suffix[data-v-07e596bf] {\n font-size: 14px;\n color: rgba(0, 0, 0, 0.88);\n white-space: nowrap;\n}\n.g-search__label .label__suffix[data-v-07e596bf] {\n margin-left: 4px;\n}\n\n/*# sourceMappingURL=label.vue.map */", map: {"version":3,"sources":["/Users/huangshan/Goldgov/front/ganjiao/base-elearning-frontend-model/packages/components/packages/composite-components/search-area/src/label.vue","label.vue"],"names":[],"mappings":"AAkBA;EACA,iBAAA;EACA,gBAAA;EACA,YAAA;EACA,aAAA;EACA,mBAAA;EACA,mBAAA;EACA,8BAAA;ACjBA;ADkBA;EACA,eAAA;EACA,0BAAA;EACA,mBAAA;AChBA;ADkBA;EACA,gBAAA;AChBA;;AAEA,oCAAoC","file":"label.vue","sourcesContent":["<template>\n <div class=\"g-search__label\">\n <span class=\"label__title\">{{ label }}</span>\n <span class=\"label__suffix\">:</span>\n </div>\n</template>\n\n<script>\nexport default {\n props: {\n label: {\n type: String\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.g-search__label {\n /* width: 69px; */\n flex-basis: 69px;\n height: 32px;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n .label__title, .label__suffix {\n font-size: 14px;\n color: rgba(0, 0, 0, 0.88);\n white-space: nowrap;\n }\n .label__suffix {\n margin-left: 4px;\n }\n}\n</style>",".g-search__label {\n /* width: 69px; */\n flex-basis: 69px;\n height: 32px;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n}\n.g-search__label .label__title, .g-search__label .label__suffix {\n font-size: 14px;\n color: rgba(0, 0, 0, 0.88);\n white-space: nowrap;\n}\n.g-search__label .label__suffix {\n margin-left: 4px;\n}\n\n/*# sourceMappingURL=label.vue.map */"]}, media: undefined });
|
|
1758
1809
|
|
|
1759
1810
|
};
|
|
1760
1811
|
/* scoped */
|
|
1761
|
-
const __vue_scope_id__$
|
|
1812
|
+
const __vue_scope_id__$k = "data-v-07e596bf";
|
|
1762
1813
|
/* module identifier */
|
|
1763
|
-
const __vue_module_identifier__$
|
|
1814
|
+
const __vue_module_identifier__$k = undefined;
|
|
1764
1815
|
/* functional template */
|
|
1765
|
-
const __vue_is_functional_template__$
|
|
1816
|
+
const __vue_is_functional_template__$k = false;
|
|
1766
1817
|
/* style inject SSR */
|
|
1767
1818
|
|
|
1768
1819
|
/* style inject shadow dom */
|
|
1769
1820
|
|
|
1770
1821
|
|
|
1771
1822
|
|
|
1772
|
-
const __vue_component__$
|
|
1773
|
-
{ render: __vue_render__$
|
|
1774
|
-
__vue_inject_styles__$
|
|
1775
|
-
__vue_script__$
|
|
1776
|
-
__vue_scope_id__$
|
|
1777
|
-
__vue_is_functional_template__$
|
|
1778
|
-
__vue_module_identifier__$
|
|
1823
|
+
const __vue_component__$k = /*#__PURE__*/normalizeComponent(
|
|
1824
|
+
{ render: __vue_render__$k, staticRenderFns: __vue_staticRenderFns__$k },
|
|
1825
|
+
__vue_inject_styles__$k,
|
|
1826
|
+
__vue_script__$k,
|
|
1827
|
+
__vue_scope_id__$k,
|
|
1828
|
+
__vue_is_functional_template__$k,
|
|
1829
|
+
__vue_module_identifier__$k,
|
|
1779
1830
|
false,
|
|
1780
1831
|
createInjector,
|
|
1781
1832
|
undefined,
|
|
@@ -1783,14 +1834,14 @@ __vue_render__$g._withStripped = true;
|
|
|
1783
1834
|
);
|
|
1784
1835
|
|
|
1785
1836
|
//
|
|
1786
|
-
var script$
|
|
1837
|
+
var script$j = {
|
|
1787
1838
|
name: 'ele-search-area',
|
|
1788
1839
|
components: {
|
|
1789
|
-
EleInput: __vue_component__$
|
|
1790
|
-
EleSelect: __vue_component__$
|
|
1791
|
-
ELeButton: __vue_component__$
|
|
1792
|
-
Label: __vue_component__$
|
|
1793
|
-
EleDate: __vue_component__$
|
|
1840
|
+
EleInput: __vue_component__$p,
|
|
1841
|
+
EleSelect: __vue_component__$o,
|
|
1842
|
+
ELeButton: __vue_component__$r,
|
|
1843
|
+
Label: __vue_component__$k,
|
|
1844
|
+
EleDate: __vue_component__$q
|
|
1794
1845
|
},
|
|
1795
1846
|
props: {
|
|
1796
1847
|
gutter: {
|
|
@@ -1865,6 +1916,14 @@ var script$f = {
|
|
|
1865
1916
|
const querys = this.extractValues();
|
|
1866
1917
|
this.$emit('search', querys);
|
|
1867
1918
|
},
|
|
1919
|
+
buildMapto(mapTo = [], dataSource) {
|
|
1920
|
+
const [startField, endField] = mapTo;
|
|
1921
|
+
const [startValue, endValue] = dataSource || [null, null];
|
|
1922
|
+
return {
|
|
1923
|
+
[startField]: startValue,
|
|
1924
|
+
[endField]: endValue
|
|
1925
|
+
};
|
|
1926
|
+
},
|
|
1868
1927
|
extractValues() {
|
|
1869
1928
|
let ret = {};
|
|
1870
1929
|
this.innerDataSource.filter(item => item.type !== '_action').forEach(item => {
|
|
@@ -1872,6 +1931,9 @@ var script$f = {
|
|
|
1872
1931
|
case 'DatePicker':
|
|
1873
1932
|
ret[item.name] = typeof item._value == 'undefined' ? undefined : moment(item._value).format(item.format);
|
|
1874
1933
|
break;
|
|
1934
|
+
case 'ele-date-range':
|
|
1935
|
+
Object.assign(ret, this.buildMapto(item.mapTo, item._value));
|
|
1936
|
+
break;
|
|
1875
1937
|
default:
|
|
1876
1938
|
ret[item.name] = item._value;
|
|
1877
1939
|
break;
|
|
@@ -1893,6 +1955,10 @@ var script$f = {
|
|
|
1893
1955
|
defaultValue && this.$set(item, '_value', this.buildDefaultValue(defaultValue));
|
|
1894
1956
|
!defaultValue && this.$set(item, '_value', undefined);
|
|
1895
1957
|
break;
|
|
1958
|
+
case 'ele-date-picker':
|
|
1959
|
+
defaultValue && this.$set(item, '_value', this.buildDefaultValue(defaultValue));
|
|
1960
|
+
!defaultValue && this.$set(item, '_value', []);
|
|
1961
|
+
break;
|
|
1896
1962
|
default:
|
|
1897
1963
|
defaultValue && this.$set(item, '_value', this.buildDefaultValue(defaultValue));
|
|
1898
1964
|
!defaultValue && this.$set(item, '_value', null);
|
|
@@ -1910,10 +1976,10 @@ var script$f = {
|
|
|
1910
1976
|
};
|
|
1911
1977
|
|
|
1912
1978
|
/* script */
|
|
1913
|
-
const __vue_script__$
|
|
1979
|
+
const __vue_script__$j = script$j;
|
|
1914
1980
|
|
|
1915
1981
|
/* template */
|
|
1916
|
-
var __vue_render__$
|
|
1982
|
+
var __vue_render__$j = function () {
|
|
1917
1983
|
var _vm = this;
|
|
1918
1984
|
var _h = _vm.$createElement;
|
|
1919
1985
|
var _c = _vm._self._c || _h;
|
|
@@ -2049,14 +2115,34 @@ var __vue_render__$f = function () {
|
|
|
2049
2115
|
},
|
|
2050
2116
|
}),
|
|
2051
2117
|
]
|
|
2052
|
-
:
|
|
2053
|
-
|
|
2054
|
-
|
|
2055
|
-
|
|
2056
|
-
|
|
2057
|
-
|
|
2058
|
-
|
|
2059
|
-
|
|
2118
|
+
: item.type == "ele-date-range"
|
|
2119
|
+
? [
|
|
2120
|
+
_c("Label", {
|
|
2121
|
+
attrs: { label: item.label },
|
|
2122
|
+
}),
|
|
2123
|
+
_vm._v(" "),
|
|
2124
|
+
_c("ele-date-range", {
|
|
2125
|
+
attrs: {
|
|
2126
|
+
format: item.format,
|
|
2127
|
+
"show-time": item.showTime,
|
|
2128
|
+
},
|
|
2129
|
+
model: {
|
|
2130
|
+
value: item._value,
|
|
2131
|
+
callback: function ($$v) {
|
|
2132
|
+
_vm.$set(item, "_value", $$v);
|
|
2133
|
+
},
|
|
2134
|
+
expression: "item._value",
|
|
2135
|
+
},
|
|
2136
|
+
}),
|
|
2137
|
+
]
|
|
2138
|
+
: _vm._e(),
|
|
2139
|
+
],
|
|
2140
|
+
2
|
|
2141
|
+
),
|
|
2142
|
+
]
|
|
2143
|
+
)
|
|
2144
|
+
: _vm._e(),
|
|
2145
|
+
]
|
|
2060
2146
|
}),
|
|
2061
2147
|
],
|
|
2062
2148
|
2
|
|
@@ -2065,34 +2151,34 @@ var __vue_render__$f = function () {
|
|
|
2065
2151
|
1
|
|
2066
2152
|
)
|
|
2067
2153
|
};
|
|
2068
|
-
var __vue_staticRenderFns__$
|
|
2069
|
-
__vue_render__$
|
|
2154
|
+
var __vue_staticRenderFns__$j = [];
|
|
2155
|
+
__vue_render__$j._withStripped = true;
|
|
2070
2156
|
|
|
2071
2157
|
/* style */
|
|
2072
|
-
const __vue_inject_styles__$
|
|
2158
|
+
const __vue_inject_styles__$j = function (inject) {
|
|
2073
2159
|
if (!inject) return
|
|
2074
|
-
inject("data-v-
|
|
2160
|
+
inject("data-v-276237e6_0", { source: ".search-area__wrapper[data-v-276237e6] {\n padding-top: 16px;\n padding-left: 16px;\n padding-right: 16px;\n}\n.search-area__wrapper[data-v-276237e6] .ant-col:last-child {\n float: right;\n}\n.search-area__wrapper .search-area__item[data-v-276237e6] {\n height: 32px;\n display: flex;\n flex-direction: row;\n align-items: center;\n}\n.search-area__wrapper .search-area__item.search-area--action[data-v-276237e6] {\n justify-content: end;\n}\n.search-area__wrapper .search-area__item .expand-collapse[data-v-276237e6] {\n margin-left: 8px;\n height: 32px;\n padding: 4px 16px;\n color: var(--idooel-primary-color);\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n}\n.search-area__wrapper .search-area__item .expand-collapse .expand-collapse__text[data-v-276237e6] {\n font-size: 14px;\n}\n.search-area__wrapper .search-area__item .expand-collapse .expand-collapse__icon[data-v-276237e6] {\n font-size: 16px;\n margin-left: 8px;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["/Users/huangshan/Goldgov/front/ganjiao/base-elearning-frontend-model/packages/components/packages/composite-components/search-area/src/index.vue","index.vue"],"names":[],"mappings":"AA4LA;EACA,iBAAA;EACA,kBAAA;EACA,mBAAA;AC3LA;AD6LA;EACA,YAAA;AC3LA;AD8LA;EACA,YAAA;EACA,aAAA;EACA,mBAAA;EACA,mBAAA;AC5LA;AD6LA;EACA,oBAAA;AC3LA;AD6LA;EACA,gBAAA;EACA,YAAA;EACA,iBAAA;EACA,kCAAA;EACA,aAAA;EACA,mBAAA;EACA,mBAAA;EACA,uBAAA;EACA,eAAA;AC3LA;AD4LA;EACA,eAAA;AC1LA;AD4LA;EACA,eAAA;EACA,gBAAA;AC1LA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\n <div class=\"search-area__wrapper\">\n <a-row :gutter=\"gutter\">\n <template v-for=\"(item, idx) in innerDataSource\">\n <a-col v-if=\"item._show\" :span=\"item.span || span\" :key=\"idx\">\n <div v-if=\"item.type == '_action'\" class=\"search-area__item search-area--action\">\n <ele-button icon=\"search\" type=\"primary\" @click=\"handleClickSearch\">查询</ele-button>\n <ele-button style=\"margin-left:8px;\" icon=\"reload\" @click=\"handleClickReset\">重置</ele-button>\n <div class=\"expand-collapse\" @click=\"handleClickExpandCollapse\">\n <span class=\"expand-collapse__text\">{{ isExpand ? '收起' : '展开' }}</span>\n <span class=\"expand-collapse__icon\">\n <a-icon v-if=\"isExpand\" type=\"up\" />\n <a-icon v-else type=\"down\" />\n </span>\n </div>\n </div>\n <div v-else class=\"search-area__item\">\n <template v-if=\"item.type == 'Input'\">\n <Label :label=\"item.label\"></Label>\n <ele-input v-model=\"item._value\"></ele-input>\n </template>\n <template v-else-if=\"item.type == 'Select'\">\n <Label :label=\"item.label\"></Label>\n <ele-select v-model=\"item._value\" :data-source=\"item.optionList\"></ele-select>\n </template>\n <template v-else-if=\"item.type == 'DatePicker'\">\n <Label :label=\"item.label\"></Label>\n <ele-date v-model=\"item._value\" :format=\"item.format\"></ele-date>\n </template>\n <template v-else-if=\"item.type == 'ele-date-range'\">\n <Label :label=\"item.label\"></Label>\n <ele-date-range v-model=\"item._value\" :format=\"item.format\" :show-time=\"item.showTime\"></ele-date-range>\n </template>\n </div>\n </a-col>\n </template>\n </a-row>\n </div>\n</template>\n\n<script>\nimport EleInput from '../../../input/src/index.vue'\nimport EleSelect from '../../../select/src/index.vue'\nimport ELeButton from '../../../button/src/index.vue'\nimport EleDate from '../../../date/src/index.vue'\nimport Label from './label.vue'\nimport moment from 'moment'\nimport { parse } from '@idooel/expression'\nexport default {\n name: 'ele-search-area',\n components: {\n EleInput,\n EleSelect,\n ELeButton,\n Label,\n EleDate\n },\n props: {\n gutter: {\n type: [Number, Array, Object],\n default: () => ([\n 16, 8\n ])\n },\n span: {\n type: Number,\n default: 8\n },\n dataSource: {\n type: Array,\n required: true\n }\n },\n data() {\n return {\n isExpand: false\n }\n },\n computed: {\n cuttingFormula () {\n return (24 / this.span - 1)\n },\n buildDataSource () {\n return this.controlDisplayByFormula(this.mapDefaultValueToValue())\n },\n innerDataSource () {\n return [ ...this.buildDataSource, { type: '_action', _show: true }]\n }\n },\n created() {},\n methods: {\n controlDisplayByFormula (dataSource = []) {\n if (this.isExpand) {\n dataSource.forEach(item => {\n this.$set(item, '_show', true)\n })\n } else {\n dataSource.forEach((item, idx) => {\n if (idx < this.cuttingFormula) {\n this.$set(item, '_show', true)\n } else {\n this.$set(item, '_show', false)\n }\n })\n }\n return dataSource\n },\n buildDefaultValue (arg) {\n if (!arg || arg.charAt(0) !== '_') return arg\n return parse(arg, {\n _route: this.$route.query\n })\n },\n mapDefaultValueToValue () {\n this.dataSource.forEach(props => {\n this.$set(props, '_show', this.isExpand)\n if (props.defaultValue) {\n this.$set(props, '_value', this.buildDefaultValue(props.defaultValue))\n }\n })\n return this.dataSource\n },\n handleClickExpandCollapse () {\n this.isExpand = !this.isExpand\n },\n handleClickSearch () {\n const querys = this.extractValues()\n this.$emit('search', querys)\n },\n buildMapto (mapTo = [], dataSource) {\n const [ startField, endField ] = mapTo\n const [ startValue, endValue ] = dataSource || [null, null]\n return {\n [startField]: startValue,\n [endField]: endValue\n }\n },\n extractValues () {\n let ret = {}\n this.innerDataSource.filter(item => item.type !== '_action').forEach(item => {\n switch (item.type) {\n case 'DatePicker':\n ret[item.name] = typeof item._value == 'undefined' ? undefined : moment(item._value).format(item.format)\n break\n case 'ele-date-range':\n Object.assign(ret, this.buildMapto(item.mapTo, item._value))\n break\n default:\n ret[item.name] = item._value\n break\n }\n })\n return ret\n },\n handleClickReset () {\n this.innerDataSource.filter(item => item.type !== '_action').forEach(item => {\n const { defaultValue } = item\n switch (item.type) {\n case 'Select':\n defaultValue && this.$set(item, '_value', this.buildDefaultValue(defaultValue))\n !defaultValue && this.$set(item, '_value', null)\n break\n case 'DatePicker':\n defaultValue && this.$set(item, '_value', this.buildDefaultValue(defaultValue))\n !defaultValue && this.$set(item, '_value', undefined)\n break\n case 'ele-date-picker':\n defaultValue && this.$set(item, '_value', this.buildDefaultValue(defaultValue))\n !defaultValue && this.$set(item, '_value', [])\n break\n default:\n defaultValue && this.$set(item, '_value', this.buildDefaultValue(defaultValue))\n !defaultValue && this.$set(item, '_value', null)\n break\n }\n })\n //TODO defaultValue\n const querys = this.extractValues()\n this.$emit('search', querys)\n },\n onChangeSelect (value, props) {\n this.$set(props, '_value', value)\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.search-area__wrapper {\n padding-top: 16px;\n padding-left: 16px;\n padding-right: 16px;\n ::v-deep .ant-col {\n &:last-child {\n float: right;\n }\n }\n .search-area__item {\n height: 32px;\n display: flex;\n flex-direction: row;\n align-items: center;\n &.search-area--action {\n justify-content: end;\n }\n .expand-collapse {\n margin-left: 8px;\n height: 32px;\n padding: 4px 16px;\n color: var(--idooel-primary-color);\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n .expand-collapse__text {\n font-size: 14px;\n }\n .expand-collapse__icon {\n font-size: 16px;\n margin-left: 8px;\n }\n }\n }\n}\n</style>",".search-area__wrapper {\n padding-top: 16px;\n padding-left: 16px;\n padding-right: 16px;\n}\n.search-area__wrapper ::v-deep .ant-col:last-child {\n float: right;\n}\n.search-area__wrapper .search-area__item {\n height: 32px;\n display: flex;\n flex-direction: row;\n align-items: center;\n}\n.search-area__wrapper .search-area__item.search-area--action {\n justify-content: end;\n}\n.search-area__wrapper .search-area__item .expand-collapse {\n margin-left: 8px;\n height: 32px;\n padding: 4px 16px;\n color: var(--idooel-primary-color);\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n}\n.search-area__wrapper .search-area__item .expand-collapse .expand-collapse__text {\n font-size: 14px;\n}\n.search-area__wrapper .search-area__item .expand-collapse .expand-collapse__icon {\n font-size: 16px;\n margin-left: 8px;\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
2075
2161
|
|
|
2076
2162
|
};
|
|
2077
2163
|
/* scoped */
|
|
2078
|
-
const __vue_scope_id__$
|
|
2164
|
+
const __vue_scope_id__$j = "data-v-276237e6";
|
|
2079
2165
|
/* module identifier */
|
|
2080
|
-
const __vue_module_identifier__$
|
|
2166
|
+
const __vue_module_identifier__$j = undefined;
|
|
2081
2167
|
/* functional template */
|
|
2082
|
-
const __vue_is_functional_template__$
|
|
2168
|
+
const __vue_is_functional_template__$j = false;
|
|
2083
2169
|
/* style inject SSR */
|
|
2084
2170
|
|
|
2085
2171
|
/* style inject shadow dom */
|
|
2086
2172
|
|
|
2087
2173
|
|
|
2088
2174
|
|
|
2089
|
-
const __vue_component__$
|
|
2090
|
-
{ render: __vue_render__$
|
|
2091
|
-
__vue_inject_styles__$
|
|
2092
|
-
__vue_script__$
|
|
2093
|
-
__vue_scope_id__$
|
|
2094
|
-
__vue_is_functional_template__$
|
|
2095
|
-
__vue_module_identifier__$
|
|
2175
|
+
const __vue_component__$j = /*#__PURE__*/normalizeComponent(
|
|
2176
|
+
{ render: __vue_render__$j, staticRenderFns: __vue_staticRenderFns__$j },
|
|
2177
|
+
__vue_inject_styles__$j,
|
|
2178
|
+
__vue_script__$j,
|
|
2179
|
+
__vue_scope_id__$j,
|
|
2180
|
+
__vue_is_functional_template__$j,
|
|
2181
|
+
__vue_module_identifier__$j,
|
|
2096
2182
|
false,
|
|
2097
2183
|
createInjector,
|
|
2098
2184
|
undefined,
|
|
@@ -2100,10 +2186,10 @@ __vue_render__$f._withStripped = true;
|
|
|
2100
2186
|
);
|
|
2101
2187
|
|
|
2102
2188
|
//
|
|
2103
|
-
var script$
|
|
2189
|
+
var script$i = {
|
|
2104
2190
|
name: 'ele-button-group',
|
|
2105
2191
|
components: {
|
|
2106
|
-
EleButton: __vue_component__$
|
|
2192
|
+
EleButton: __vue_component__$r
|
|
2107
2193
|
},
|
|
2108
2194
|
props: {
|
|
2109
2195
|
dataSource: {
|
|
@@ -2114,10 +2200,10 @@ var script$e = {
|
|
|
2114
2200
|
};
|
|
2115
2201
|
|
|
2116
2202
|
/* script */
|
|
2117
|
-
const __vue_script__$
|
|
2203
|
+
const __vue_script__$i = script$i;
|
|
2118
2204
|
|
|
2119
2205
|
/* template */
|
|
2120
|
-
var __vue_render__$
|
|
2206
|
+
var __vue_render__$i = function () {
|
|
2121
2207
|
var _vm = this;
|
|
2122
2208
|
var _h = _vm.$createElement;
|
|
2123
2209
|
var _c = _vm._self._c || _h;
|
|
@@ -2147,34 +2233,34 @@ var __vue_render__$e = function () {
|
|
|
2147
2233
|
1
|
|
2148
2234
|
)
|
|
2149
2235
|
};
|
|
2150
|
-
var __vue_staticRenderFns__$
|
|
2151
|
-
__vue_render__$
|
|
2236
|
+
var __vue_staticRenderFns__$i = [];
|
|
2237
|
+
__vue_render__$i._withStripped = true;
|
|
2152
2238
|
|
|
2153
2239
|
/* style */
|
|
2154
|
-
const __vue_inject_styles__$
|
|
2240
|
+
const __vue_inject_styles__$i = function (inject) {
|
|
2155
2241
|
if (!inject) return
|
|
2156
|
-
inject("data-v-
|
|
2242
|
+
inject("data-v-25af6fb8_0", { source: ".button-group__wrapper[data-v-25af6fb8] {\n display: flex;\n padding-left: 16px;\n padding-right: 16px;\n}\n.button-group__wrapper .ant-btn[data-v-25af6fb8] {\n margin-left: 8px;\n}\n.button-group__wrapper .ant-btn[data-v-25af6fb8]:first-child {\n margin-left: 0;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["/Users/huangshan/Goldgov/front/ganjiao/base-elearning-frontend-model/packages/components/packages/composite-components/button-group/src/index.vue","index.vue"],"names":[],"mappings":"AAkCA;EACA,aAAA;EACA,kBAAA;EACA,mBAAA;ACjCA;ADkCA;EACA,gBAAA;AChCA;ADiCA;EACA,cAAA;AC/BA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\n <div class=\"button-group__wrapper\">\n <ele-button \n v-for=\"(item, idx) in dataSource\" \n :type=\"item.type\"\n :icon=\"item.icon\"\n :mode=\"item.mode\"\n :data-source=\"item.optionList\"\n :event-name=\"item.eventName\"\n :record=\"item\"\n v-on=\"$listeners\"\n :key=\"idx\">\n {{ item.label }}\n </ele-button>\n </div>\n</template>\n\n<script>\nimport EleButton from '../../../button/src/index.vue'\nexport default {\n name: 'ele-button-group',\n components: {\n EleButton\n },\n props: {\n dataSource: {\n type: Array,\n default: () => []\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.button-group__wrapper {\n display: flex;\n padding-left: 16px;\n padding-right: 16px;\n .ant-btn {\n margin-left: 8px;\n &:first-child {\n margin-left: 0;\n }\n }\n}\n</style>",".button-group__wrapper {\n display: flex;\n padding-left: 16px;\n padding-right: 16px;\n}\n.button-group__wrapper .ant-btn {\n margin-left: 8px;\n}\n.button-group__wrapper .ant-btn:first-child {\n margin-left: 0;\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
2157
2243
|
|
|
2158
2244
|
};
|
|
2159
2245
|
/* scoped */
|
|
2160
|
-
const __vue_scope_id__$
|
|
2246
|
+
const __vue_scope_id__$i = "data-v-25af6fb8";
|
|
2161
2247
|
/* module identifier */
|
|
2162
|
-
const __vue_module_identifier__$
|
|
2248
|
+
const __vue_module_identifier__$i = undefined;
|
|
2163
2249
|
/* functional template */
|
|
2164
|
-
const __vue_is_functional_template__$
|
|
2250
|
+
const __vue_is_functional_template__$i = false;
|
|
2165
2251
|
/* style inject SSR */
|
|
2166
2252
|
|
|
2167
2253
|
/* style inject shadow dom */
|
|
2168
2254
|
|
|
2169
2255
|
|
|
2170
2256
|
|
|
2171
|
-
const __vue_component__$
|
|
2172
|
-
{ render: __vue_render__$
|
|
2173
|
-
__vue_inject_styles__$
|
|
2174
|
-
__vue_script__$
|
|
2175
|
-
__vue_scope_id__$
|
|
2176
|
-
__vue_is_functional_template__$
|
|
2177
|
-
__vue_module_identifier__$
|
|
2257
|
+
const __vue_component__$i = /*#__PURE__*/normalizeComponent(
|
|
2258
|
+
{ render: __vue_render__$i, staticRenderFns: __vue_staticRenderFns__$i },
|
|
2259
|
+
__vue_inject_styles__$i,
|
|
2260
|
+
__vue_script__$i,
|
|
2261
|
+
__vue_scope_id__$i,
|
|
2262
|
+
__vue_is_functional_template__$i,
|
|
2263
|
+
__vue_module_identifier__$i,
|
|
2178
2264
|
false,
|
|
2179
2265
|
createInjector,
|
|
2180
2266
|
undefined,
|
|
@@ -2182,13 +2268,13 @@ __vue_render__$e._withStripped = true;
|
|
|
2182
2268
|
);
|
|
2183
2269
|
|
|
2184
2270
|
//
|
|
2185
|
-
var script$
|
|
2271
|
+
var script$h = {
|
|
2186
2272
|
name: 'ele-tree-table-model',
|
|
2187
2273
|
components: {
|
|
2188
|
-
EleTree: __vue_component__$
|
|
2189
|
-
EleTable: __vue_component__$
|
|
2190
|
-
EleSearchArea: __vue_component__$
|
|
2191
|
-
EleButtonGroup: __vue_component__$
|
|
2274
|
+
EleTree: __vue_component__$l,
|
|
2275
|
+
EleTable: __vue_component__$m,
|
|
2276
|
+
EleSearchArea: __vue_component__$j,
|
|
2277
|
+
EleButtonGroup: __vue_component__$i
|
|
2192
2278
|
},
|
|
2193
2279
|
props: {
|
|
2194
2280
|
treeMeta: {
|
|
@@ -2467,10 +2553,10 @@ var script$d = {
|
|
|
2467
2553
|
};
|
|
2468
2554
|
|
|
2469
2555
|
/* script */
|
|
2470
|
-
const __vue_script__$
|
|
2556
|
+
const __vue_script__$h = script$h;
|
|
2471
2557
|
|
|
2472
2558
|
/* template */
|
|
2473
|
-
var __vue_render__$
|
|
2559
|
+
var __vue_render__$h = function () {
|
|
2474
2560
|
var _vm = this;
|
|
2475
2561
|
var _h = _vm.$createElement;
|
|
2476
2562
|
var _c = _vm._self._c || _h;
|
|
@@ -2550,34 +2636,34 @@ var __vue_render__$d = function () {
|
|
|
2550
2636
|
]),
|
|
2551
2637
|
])
|
|
2552
2638
|
};
|
|
2553
|
-
var __vue_staticRenderFns__$
|
|
2554
|
-
__vue_render__$
|
|
2639
|
+
var __vue_staticRenderFns__$h = [];
|
|
2640
|
+
__vue_render__$h._withStripped = true;
|
|
2555
2641
|
|
|
2556
2642
|
/* style */
|
|
2557
|
-
const __vue_inject_styles__$
|
|
2643
|
+
const __vue_inject_styles__$h = function (inject) {
|
|
2558
2644
|
if (!inject) return
|
|
2559
|
-
inject("data-v-fe2ee33e_0", { source: ".ele.model__tree-table[data-v-fe2ee33e] {\n background: transparent;\n display: flex;\n flex-direction: row;\n width: 100%;\n}\n.ele.model__tree-table .model__tree-table--container .model__tree--wrapper[data-v-fe2ee33e] {\n width: 240px;\n background: #fff;\n flex-shrink: 0;\n padding: 16px;\n box-sizing: border-box;\n margin-right: 16px;\n overflow-y: auto;\n}\n.ele.model__tree-table .model__table--container[data-v-fe2ee33e] {\n width: 100%;\n min-width: 0;\n background: #fff;\n}\n.ele.model__tree-table .model__table--container .model__table--wrapper[data-v-fe2ee33e] {\n background: #fff;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["E:\\work\\code\\ganjiao\\ganjian-monorepo\\packages\\components\\packages\\tree-table-model\\src\\index.vue","index.vue"],"names":[],"mappings":"AAgSA;EACA,uBAAA;EACA,aAAA;EACA,mBAAA;EACA,WAAA;AC/RA;ADiSA;EACA,YAAA;EACA,gBAAA;EACA,cAAA;EACA,aAAA;EACA,sBAAA;EACA,kBAAA;EACA,gBAAA;AC/RA;ADkSA;EACA,WAAA;EACA,YAAA;EACA,gBAAA;AChSA;ADiSA;EACA,gBAAA;AC/RA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\r\n <section class=\"ele model__tree-table\">\r\n <section class=\"model__tree-table--container\" v-if=\"showTree\">\r\n <div class=\"model__tree--title\"></div>\r\n <section :ref=\"modelTreeWrapper\" class=\"model__tree--wrapper\">\r\n <ele-tree \r\n :tree-data=\"treeData\"\r\n :defaultExpandedKeys=\"defaultExpandedKeys\"\r\n :defaultSelectedKeys=\"defaultSelectedKeys\"\r\n @select=\"selectTreeNode\"\r\n :replace-fields=\"treeMeta.replaceFields || replaceFields\">\r\n </ele-tree>\r\n </section>\r\n </section>\r\n <section class=\"model__table--container\">\r\n <div class=\"model__table--title\"></div>\r\n <section :ref=\"modelTableWrapper\" class=\"model__table--wrapper\">\r\n <ele-search-area :ref=\"searchArea\" @search=\"onSearch\" :data-source=\"searchMeta.elements\"></ele-search-area>\r\n <ele-button-group v-on=\"$listeners\" :ref=\"buttonGroup\" @click=\"handleClickButtonGroup\" style=\"margin-top: 16px\" :data-source=\"getButtonGroupElements\"></ele-button-group>\r\n <ele-table\r\n v-on=\"$listeners\"\r\n :loading=\"loading\" \r\n :columns=\"columns\"\r\n :total=\"total\"\r\n :actions=\"actions\"\r\n :pageSize=\"pageSize\"\r\n :pageSizeOptions=\"pageSizeOptions\"\r\n :data-source=\"tableData\"\r\n @change-page=\"onChangePage\" \r\n style=\"margin-top: 8px;\"\r\n ></ele-table>\r\n </section>\r\n </section>\r\n </section>\r\n</template>\r\n\r\n<script>\r\nimport EleTree from '../../tree/src/index.vue'\r\nimport EleTable from '../../table/src/index.vue'\r\nimport EleSearchArea from '../../composite-components/search-area/src/index.vue'\r\nimport EleButtonGroup from '../../composite-components/button-group/src/index.vue'\r\nimport { type, net } from '@idooel/shared'\r\nimport { v4 as uuidv4 } from 'uuid'\r\nexport default {\r\n name: 'ele-tree-table-model',\r\n components: {\r\n EleTree,\r\n EleTable,\r\n EleSearchArea,\r\n EleButtonGroup\r\n },\r\n props: {\r\n treeMeta: {\r\n type: Object,\r\n default: () => ({})\r\n },\r\n searchMeta: {\r\n type: Object,\r\n default: () => ({})\r\n },\r\n buttonGroupMeta: {\r\n typeof: Object,\r\n default: () => ({})\r\n },\r\n tableMeta: {\r\n type: Object,\r\n default: () => ({})\r\n }\r\n },\r\n provide () {\r\n return {\r\n requestTreeData: this.requestTreeData,\r\n requestTableData: this.requestTableData\r\n }\r\n },\r\n data () {\r\n return {\r\n treeData: [],\r\n tableData: [],\r\n defaultExpandedKeys: [],\r\n defaultSelectedKeys: [],\r\n replaceFields: {\r\n title: 'title',\r\n children: 'children',\r\n key: 'id'\r\n },\r\n loading: false,\r\n total: 0,\r\n tableQuerys: {},\r\n resizeObserverModelTableWrapper: null,\r\n modelTableWrapperHeight: 0,\r\n currentTreeNodeData: {}\r\n }\r\n },\r\n computed: {\r\n showTree () {\r\n return !!Object.keys(this.treeMeta).length\r\n },\r\n buttonGroup () {\r\n return uuidv4()\r\n },\r\n searchArea () {\r\n return uuidv4()\r\n },\r\n modelTreeWrapper () {\r\n return uuidv4()\r\n },\r\n modelTableWrapper () {\r\n return uuidv4()\r\n },\r\n actions () {\r\n const { operations } = this.tableMeta\r\n return operations.elements\r\n },\r\n pageSize () {\r\n const { page = {} } = this.tableMeta\r\n return page.pageSize || 10\r\n },\r\n pageSizeOptions () {\r\n const { page = {} } = this.tableMeta\r\n return page.pageSizeOptions || ['10', '20', '30', '40']\r\n },\r\n columns () {\r\n const { columns, operations } = this.tableMeta\r\n if (type.get(columns) === 'array') {\r\n const columnsOptions = columns.map(item => {\r\n if (item.render) {\r\n return {\r\n title: item.title,\r\n dataIndex: item.dataIndex,\r\n width: item.width,\r\n align: item.align,\r\n fixed: item.fixed,\r\n customRender: (text, record, index) => {\r\n const { $createElement } = this\r\n return item.render.call(this, { h: $createElement, ctx: this }, typeof text == 'string' ? text : text[item.dataIndex], record, index)\r\n }\r\n }\r\n }\r\n return {\r\n title: item.title,\r\n dataIndex: item.dataIndex,\r\n width: item.width,\r\n align: item.align,\r\n fixed: item.fixed\r\n }\r\n })\r\n if (operations) {\r\n return [\r\n ...columnsOptions,\r\n {\r\n title: '操作',\r\n width: operations.width,\r\n key: 'action',\r\n fixed: 'right',\r\n scopedSlots: { customRender: 'action' }\r\n }\r\n ]\r\n }\r\n return columnsOptions\r\n } else {\r\n console.error('Error: columns is invalid, please check it')\r\n return []\r\n }\r\n },\r\n getButtonGroupElements () {\r\n const { elements } = this.buttonGroupMeta\r\n if (type.get(elements) === 'function') {\r\n return elements.call(this)\r\n } else if (type.get(elements) === 'array') {\r\n return elements\r\n } else {\r\n return []\r\n }\r\n }\r\n },\r\n async created () {\r\n if (this.showTree) {\r\n this.treeData = await this.requestTreeData()\r\n const [defaultTreeNode = {}] = this.treeData\r\n this.defaultExpandedKeys = [defaultTreeNode[this.replaceFields.key]]\r\n this.defaultSelectedKeys = [defaultTreeNode[this.replaceFields.key]]\r\n this.currentTreeNodeData = defaultTreeNode\r\n }\r\n const { fieldMap } = this.tableMeta\r\n this.tableData = await this.requestTableData(this.execTableFieldMap(fieldMap, this.currentTreeNodeData))\r\n },\r\n methods: {\r\n handleClickButtonGroup (props) {\r\n const { eventName } = props\r\n this.$emit(eventName, { currentTreeNode: this.currentTreeNodeData })\r\n },\r\n watchViewPort () {\r\n const modelTableWrapper = this.$refs[this.modelTableWrapper]\r\n console.log(modelTableWrapper.getBoundingClientRect())\r\n const { top } = modelTableWrapper.getBoundingClientRect()\r\n this.$refs[this.modelTreeWrapper].style.height = `calc(100vh - ${top}px)`\r\n },\r\n async onSearch (props) {\r\n this.tableQuerys = Object.assign(this.tableQuerys, props)\r\n this.tableData = await this.requestTableData()\r\n },\r\n execTableFieldMap (fieldMap = {}, props) {\r\n let ret = {}\r\n const keys = Object.keys(fieldMap)\r\n keys.forEach(key => {\r\n const field = fieldMap[key]\r\n ret[field] = props[key]\r\n })\r\n return ret\r\n },\r\n async selectTreeNode (selectedKeys, e) {\r\n const { fieldMap } = this.tableMeta\r\n this.currentTreeNodeData = e.node.$vnode.data.props.dataRef\r\n const execFieldMapRet = this.execTableFieldMap(fieldMap, e.node.$vnode.data.props.dataRef)\r\n this.tableData = await this.requestTableData(execFieldMapRet)\r\n },\r\n async requestTreeData () {\r\n const { url, requestType } = this.treeMeta\r\n const ret = await net.get(\r\n url\r\n ).then(resp => {\r\n const { data } = resp || {}\r\n return data\r\n })\r\n return ret\r\n },\r\n async onChangePage (page, pageSize) {\r\n this.tableData = await this.requestTableData({ currentPage: page, pageSize })\r\n },\r\n async requestTableData (props = {}) {\r\n const { url, requestType, page = {} } = this.tableMeta\r\n const { pageSize = 10 } = page\r\n this.tableQuerys = Object.assign(this.tableQuerys, { currentPage: 1, pageSize }, props)\r\n const ret = await net.get(\r\n url,\r\n this.tableQuerys\r\n ).then(resp => {\r\n const { data = [], count } = resp || {}\r\n this.total = count\r\n return data.map(item => {\r\n return {\r\n key: uuidv4(),\r\n ...item\r\n }\r\n })\r\n })\r\n return ret\r\n },\r\n refreshTreeStatus (props = {}) {},\r\n refreshTableStatus (props = {}) {},\r\n getModelTableWrapperHeight () {},\r\n setModelTreeWrapperHeight (height) {\r\n this.$refs[this.modelTreeWrapper].style.height = height\r\n },\r\n setModelTableWrapperHeight () {\r\n const { top } = this.$refs[this.modelTableWrapper].getBoundingClientRect()\r\n const height = `calc(100vh - ${top}px)`\r\n this.$refs[this.modelTableWrapper].style.height = height\r\n this.setModelTreeWrapperHeight(height)\r\n },\r\n getSearchAreaHeight () {\r\n return this.$refs[this.searchArea].$el.clientHeight\r\n },\r\n getButtonGroupHeight () {\r\n return this.$refs[this.buttonGroup].$el.clientHeight\r\n }\r\n },\r\n mounted () {\r\n //TODO\r\n // this.setModelTableWrapperHeight()\r\n // this.resizeObserverModelTableWrapper = new ResizeObserver(entries => {\r\n // for (let entry of entries) {\r\n // this.modelTableWrapperHeight = entry.contentRect.height\r\n // console.log('this.modelTableWrapperHeight:', this.modelTableWrapperHeight)\r\n // console.log('getSearchAreaHeight', this.getSearchAreaHeight())\r\n // console.log('getButtonGroupHeight', this.getButtonGroupHeight())\r\n // const tableHeight = this.modelTableWrapperHeight - this.getSearchAreaHeight() - this.getButtonGroupHeight()\r\n // console.log('tableHeight', tableHeight)\r\n // }\r\n // })\r\n // this.resizeObserverModelTableWrapper.observe(this.$refs[this.modelTableWrapper])\r\n }\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.ele {\r\n &.model__tree-table {\r\n background: transparent; \r\n display: flex;\r\n flex-direction: row;\r\n width: 100%;\r\n .model__tree-table--container {\r\n .model__tree--wrapper {\r\n width: 240px;\r\n background: #fff;\r\n flex-shrink: 0;\r\n padding: 16px;\r\n box-sizing: border-box;\r\n margin-right: 16px;\r\n overflow-y: auto;\r\n }\r\n }\r\n .model__table--container {\r\n width: 100%;\r\n min-width: 0;\r\n background: #fff;\r\n .model__table--wrapper {\r\n background: #fff;\r\n }\r\n }\r\n }\r\n}\r\n</style>",".ele.model__tree-table {\n background: transparent;\n display: flex;\n flex-direction: row;\n width: 100%;\n}\n.ele.model__tree-table .model__tree-table--container .model__tree--wrapper {\n width: 240px;\n background: #fff;\n flex-shrink: 0;\n padding: 16px;\n box-sizing: border-box;\n margin-right: 16px;\n overflow-y: auto;\n}\n.ele.model__tree-table .model__table--container {\n width: 100%;\n min-width: 0;\n background: #fff;\n}\n.ele.model__tree-table .model__table--container .model__table--wrapper {\n background: #fff;\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
2645
|
+
inject("data-v-3541b780_0", { source: ".ele.model__tree-table[data-v-3541b780] {\n background: transparent;\n display: flex;\n flex-direction: row;\n width: 100%;\n}\n.ele.model__tree-table .model__tree-table--container .model__tree--wrapper[data-v-3541b780] {\n width: 240px;\n background: #fff;\n flex-shrink: 0;\n padding: 16px;\n box-sizing: border-box;\n margin-right: 16px;\n overflow-y: auto;\n}\n.ele.model__tree-table .model__table--container[data-v-3541b780] {\n width: 100%;\n min-width: 0;\n background: #fff;\n}\n.ele.model__tree-table .model__table--container .model__table--wrapper[data-v-3541b780] {\n background: #fff;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["/Users/huangshan/Goldgov/front/ganjiao/base-elearning-frontend-model/packages/components/packages/tree-table-model/src/index.vue","index.vue"],"names":[],"mappings":"AAgSA;EACA,uBAAA;EACA,aAAA;EACA,mBAAA;EACA,WAAA;AC/RA;ADiSA;EACA,YAAA;EACA,gBAAA;EACA,cAAA;EACA,aAAA;EACA,sBAAA;EACA,kBAAA;EACA,gBAAA;AC/RA;ADkSA;EACA,WAAA;EACA,YAAA;EACA,gBAAA;AChSA;ADiSA;EACA,gBAAA;AC/RA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\n <section class=\"ele model__tree-table\">\n <section class=\"model__tree-table--container\" v-if=\"showTree\">\n <div class=\"model__tree--title\"></div>\n <section :ref=\"modelTreeWrapper\" class=\"model__tree--wrapper\">\n <ele-tree \n :tree-data=\"treeData\"\n :defaultExpandedKeys=\"defaultExpandedKeys\"\n :defaultSelectedKeys=\"defaultSelectedKeys\"\n @select=\"selectTreeNode\"\n :replace-fields=\"treeMeta.replaceFields || replaceFields\">\n </ele-tree>\n </section>\n </section>\n <section class=\"model__table--container\">\n <div class=\"model__table--title\"></div>\n <section :ref=\"modelTableWrapper\" class=\"model__table--wrapper\">\n <ele-search-area :ref=\"searchArea\" @search=\"onSearch\" :data-source=\"searchMeta.elements\"></ele-search-area>\n <ele-button-group v-on=\"$listeners\" :ref=\"buttonGroup\" @click=\"handleClickButtonGroup\" style=\"margin-top: 16px\" :data-source=\"getButtonGroupElements\"></ele-button-group>\n <ele-table\n v-on=\"$listeners\"\n :loading=\"loading\" \n :columns=\"columns\"\n :total=\"total\"\n :actions=\"actions\"\n :pageSize=\"pageSize\"\n :pageSizeOptions=\"pageSizeOptions\"\n :data-source=\"tableData\"\n @change-page=\"onChangePage\" \n style=\"margin-top: 8px;\"\n ></ele-table>\n </section>\n </section>\n </section>\n</template>\n\n<script>\nimport EleTree from '../../tree/src/index.vue'\nimport EleTable from '../../table/src/index.vue'\nimport EleSearchArea from '../../composite-components/search-area/src/index.vue'\nimport EleButtonGroup from '../../composite-components/button-group/src/index.vue'\nimport { type, net } from '@idooel/shared'\nimport { v4 as uuidv4 } from 'uuid'\nexport default {\n name: 'ele-tree-table-model',\n components: {\n EleTree,\n EleTable,\n EleSearchArea,\n EleButtonGroup\n },\n props: {\n treeMeta: {\n type: Object,\n default: () => ({})\n },\n searchMeta: {\n type: Object,\n default: () => ({})\n },\n buttonGroupMeta: {\n typeof: Object,\n default: () => ({})\n },\n tableMeta: {\n type: Object,\n default: () => ({})\n }\n },\n provide () {\n return {\n requestTreeData: this.requestTreeData,\n requestTableData: this.requestTableData\n }\n },\n data () {\n return {\n treeData: [],\n tableData: [],\n defaultExpandedKeys: [],\n defaultSelectedKeys: [],\n replaceFields: {\n title: 'title',\n children: 'children',\n key: 'id'\n },\n loading: false,\n total: 0,\n tableQuerys: {},\n resizeObserverModelTableWrapper: null,\n modelTableWrapperHeight: 0,\n currentTreeNodeData: {}\n }\n },\n computed: {\n showTree () {\n return !!Object.keys(this.treeMeta).length\n },\n buttonGroup () {\n return uuidv4()\n },\n searchArea () {\n return uuidv4()\n },\n modelTreeWrapper () {\n return uuidv4()\n },\n modelTableWrapper () {\n return uuidv4()\n },\n actions () {\n const { operations } = this.tableMeta\n return operations.elements\n },\n pageSize () {\n const { page = {} } = this.tableMeta\n return page.pageSize || 10\n },\n pageSizeOptions () {\n const { page = {} } = this.tableMeta\n return page.pageSizeOptions || ['10', '20', '30', '40']\n },\n columns () {\n const { columns, operations } = this.tableMeta\n if (type.get(columns) === 'array') {\n const columnsOptions = columns.map(item => {\n if (item.render) {\n return {\n title: item.title,\n dataIndex: item.dataIndex,\n width: item.width,\n align: item.align,\n fixed: item.fixed,\n customRender: (text, record, index) => {\n const { $createElement } = this\n return item.render.call(this, { h: $createElement, ctx: this }, typeof text == 'string' ? text : text[item.dataIndex], record, index)\n }\n }\n }\n return {\n title: item.title,\n dataIndex: item.dataIndex,\n width: item.width,\n align: item.align,\n fixed: item.fixed\n }\n })\n if (operations) {\n return [\n ...columnsOptions,\n {\n title: '操作',\n width: operations.width,\n key: 'action',\n fixed: 'right',\n scopedSlots: { customRender: 'action' }\n }\n ]\n }\n return columnsOptions\n } else {\n console.error('Error: columns is invalid, please check it')\n return []\n }\n },\n getButtonGroupElements () {\n const { elements } = this.buttonGroupMeta\n if (type.get(elements) === 'function') {\n return elements.call(this)\n } else if (type.get(elements) === 'array') {\n return elements\n } else {\n return []\n }\n }\n },\n async created () {\n if (this.showTree) {\n this.treeData = await this.requestTreeData()\n const [defaultTreeNode = {}] = this.treeData\n this.defaultExpandedKeys = [defaultTreeNode[this.replaceFields.key]]\n this.defaultSelectedKeys = [defaultTreeNode[this.replaceFields.key]]\n this.currentTreeNodeData = defaultTreeNode\n }\n const { fieldMap } = this.tableMeta\n this.tableData = await this.requestTableData(this.execTableFieldMap(fieldMap, this.currentTreeNodeData))\n },\n methods: {\n handleClickButtonGroup (props) {\n const { eventName } = props\n this.$emit(eventName, { currentTreeNode: this.currentTreeNodeData })\n },\n watchViewPort () {\n const modelTableWrapper = this.$refs[this.modelTableWrapper]\n console.log(modelTableWrapper.getBoundingClientRect())\n const { top } = modelTableWrapper.getBoundingClientRect()\n this.$refs[this.modelTreeWrapper].style.height = `calc(100vh - ${top}px)`\n },\n async onSearch (props) {\n this.tableQuerys = Object.assign(this.tableQuerys, props)\n this.tableData = await this.requestTableData()\n },\n execTableFieldMap (fieldMap = {}, props) {\n let ret = {}\n const keys = Object.keys(fieldMap)\n keys.forEach(key => {\n const field = fieldMap[key]\n ret[field] = props[key]\n })\n return ret\n },\n async selectTreeNode (selectedKeys, e) {\n const { fieldMap } = this.tableMeta\n this.currentTreeNodeData = e.node.$vnode.data.props.dataRef\n const execFieldMapRet = this.execTableFieldMap(fieldMap, e.node.$vnode.data.props.dataRef)\n this.tableData = await this.requestTableData(execFieldMapRet)\n },\n async requestTreeData () {\n const { url, requestType } = this.treeMeta\n const ret = await net.get(\n url\n ).then(resp => {\n const { data } = resp || {}\n return data\n })\n return ret\n },\n async onChangePage (page, pageSize) {\n this.tableData = await this.requestTableData({ currentPage: page, pageSize })\n },\n async requestTableData (props = {}) {\n const { url, requestType, page = {} } = this.tableMeta\n const { pageSize = 10 } = page\n this.tableQuerys = Object.assign(this.tableQuerys, { currentPage: 1, pageSize }, props)\n const ret = await net.get(\n url,\n this.tableQuerys\n ).then(resp => {\n const { data = [], count } = resp || {}\n this.total = count\n return data.map(item => {\n return {\n key: uuidv4(),\n ...item\n }\n })\n })\n return ret\n },\n refreshTreeStatus (props = {}) {},\n refreshTableStatus (props = {}) {},\n getModelTableWrapperHeight () {},\n setModelTreeWrapperHeight (height) {\n this.$refs[this.modelTreeWrapper].style.height = height\n },\n setModelTableWrapperHeight () {\n const { top } = this.$refs[this.modelTableWrapper].getBoundingClientRect()\n const height = `calc(100vh - ${top}px)`\n this.$refs[this.modelTableWrapper].style.height = height\n this.setModelTreeWrapperHeight(height)\n },\n getSearchAreaHeight () {\n return this.$refs[this.searchArea].$el.clientHeight\n },\n getButtonGroupHeight () {\n return this.$refs[this.buttonGroup].$el.clientHeight\n }\n },\n mounted () {\n //TODO\n // this.setModelTableWrapperHeight()\n // this.resizeObserverModelTableWrapper = new ResizeObserver(entries => {\n // for (let entry of entries) {\n // this.modelTableWrapperHeight = entry.contentRect.height\n // console.log('this.modelTableWrapperHeight:', this.modelTableWrapperHeight)\n // console.log('getSearchAreaHeight', this.getSearchAreaHeight())\n // console.log('getButtonGroupHeight', this.getButtonGroupHeight())\n // const tableHeight = this.modelTableWrapperHeight - this.getSearchAreaHeight() - this.getButtonGroupHeight()\n // console.log('tableHeight', tableHeight)\n // }\n // })\n // this.resizeObserverModelTableWrapper.observe(this.$refs[this.modelTableWrapper])\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.ele {\n &.model__tree-table {\n background: transparent; \n display: flex;\n flex-direction: row;\n width: 100%;\n .model__tree-table--container {\n .model__tree--wrapper {\n width: 240px;\n background: #fff;\n flex-shrink: 0;\n padding: 16px;\n box-sizing: border-box;\n margin-right: 16px;\n overflow-y: auto;\n }\n }\n .model__table--container {\n width: 100%;\n min-width: 0;\n background: #fff;\n .model__table--wrapper {\n background: #fff;\n }\n }\n }\n}\n</style>",".ele.model__tree-table {\n background: transparent;\n display: flex;\n flex-direction: row;\n width: 100%;\n}\n.ele.model__tree-table .model__tree-table--container .model__tree--wrapper {\n width: 240px;\n background: #fff;\n flex-shrink: 0;\n padding: 16px;\n box-sizing: border-box;\n margin-right: 16px;\n overflow-y: auto;\n}\n.ele.model__tree-table .model__table--container {\n width: 100%;\n min-width: 0;\n background: #fff;\n}\n.ele.model__tree-table .model__table--container .model__table--wrapper {\n background: #fff;\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
2560
2646
|
|
|
2561
2647
|
};
|
|
2562
2648
|
/* scoped */
|
|
2563
|
-
const __vue_scope_id__$
|
|
2649
|
+
const __vue_scope_id__$h = "data-v-3541b780";
|
|
2564
2650
|
/* module identifier */
|
|
2565
|
-
const __vue_module_identifier__$
|
|
2651
|
+
const __vue_module_identifier__$h = undefined;
|
|
2566
2652
|
/* functional template */
|
|
2567
|
-
const __vue_is_functional_template__$
|
|
2653
|
+
const __vue_is_functional_template__$h = false;
|
|
2568
2654
|
/* style inject SSR */
|
|
2569
2655
|
|
|
2570
2656
|
/* style inject shadow dom */
|
|
2571
2657
|
|
|
2572
2658
|
|
|
2573
2659
|
|
|
2574
|
-
const __vue_component__$
|
|
2575
|
-
{ render: __vue_render__$
|
|
2576
|
-
__vue_inject_styles__$
|
|
2577
|
-
__vue_script__$
|
|
2578
|
-
__vue_scope_id__$
|
|
2579
|
-
__vue_is_functional_template__$
|
|
2580
|
-
__vue_module_identifier__$
|
|
2660
|
+
const __vue_component__$h = /*#__PURE__*/normalizeComponent(
|
|
2661
|
+
{ render: __vue_render__$h, staticRenderFns: __vue_staticRenderFns__$h },
|
|
2662
|
+
__vue_inject_styles__$h,
|
|
2663
|
+
__vue_script__$h,
|
|
2664
|
+
__vue_scope_id__$h,
|
|
2665
|
+
__vue_is_functional_template__$h,
|
|
2666
|
+
__vue_module_identifier__$h,
|
|
2581
2667
|
false,
|
|
2582
2668
|
createInjector,
|
|
2583
2669
|
undefined,
|
|
@@ -2585,113 +2671,6 @@ __vue_render__$d._withStripped = true;
|
|
|
2585
2671
|
);
|
|
2586
2672
|
|
|
2587
2673
|
//
|
|
2588
|
-
var script$c = {
|
|
2589
|
-
name: 'ele-tpl',
|
|
2590
|
-
props: {
|
|
2591
|
-
modelName: {
|
|
2592
|
-
type: String
|
|
2593
|
-
}
|
|
2594
|
-
},
|
|
2595
|
-
components: {
|
|
2596
|
-
[__vue_component__$d.name]: __vue_component__$d
|
|
2597
|
-
},
|
|
2598
|
-
computed: {
|
|
2599
|
-
modelNameValidator() {
|
|
2600
|
-
const target = models.find(model => model.name === this.modelName);
|
|
2601
|
-
return {
|
|
2602
|
-
existed: !!target,
|
|
2603
|
-
message: !!target ? '' : `Model <span style="color:red;">${this.modelName}</span> not found`
|
|
2604
|
-
};
|
|
2605
|
-
},
|
|
2606
|
-
genModelRef() {
|
|
2607
|
-
return v4();
|
|
2608
|
-
}
|
|
2609
|
-
},
|
|
2610
|
-
methods: {
|
|
2611
|
-
getModel() {
|
|
2612
|
-
return this.$refs[this.genModelRef];
|
|
2613
|
-
}
|
|
2614
|
-
}
|
|
2615
|
-
};
|
|
2616
|
-
|
|
2617
|
-
/* script */
|
|
2618
|
-
const __vue_script__$c = script$c;
|
|
2619
|
-
|
|
2620
|
-
/* template */
|
|
2621
|
-
var __vue_render__$c = function () {
|
|
2622
|
-
var _vm = this;
|
|
2623
|
-
var _h = _vm.$createElement;
|
|
2624
|
-
var _c = _vm._self._c || _h;
|
|
2625
|
-
return _vm.modelNameValidator.existed
|
|
2626
|
-
? _c(
|
|
2627
|
-
_vm.modelName,
|
|
2628
|
-
_vm._g(
|
|
2629
|
-
_vm._b(
|
|
2630
|
-
{
|
|
2631
|
-
ref: _vm.genModelRef,
|
|
2632
|
-
tag: "component",
|
|
2633
|
-
scopedSlots: _vm._u(
|
|
2634
|
-
[
|
|
2635
|
-
_vm._l(_vm.$scopedSlots, function (idx, name) {
|
|
2636
|
-
return {
|
|
2637
|
-
key: name,
|
|
2638
|
-
fn: function (data) {
|
|
2639
|
-
return [_vm._t(name, null, null, data)]
|
|
2640
|
-
},
|
|
2641
|
-
}
|
|
2642
|
-
}),
|
|
2643
|
-
],
|
|
2644
|
-
null,
|
|
2645
|
-
true
|
|
2646
|
-
),
|
|
2647
|
-
},
|
|
2648
|
-
"component",
|
|
2649
|
-
_vm.$attrs,
|
|
2650
|
-
false
|
|
2651
|
-
),
|
|
2652
|
-
_vm.$listeners
|
|
2653
|
-
)
|
|
2654
|
-
)
|
|
2655
|
-
: _c("div", {
|
|
2656
|
-
domProps: { innerHTML: _vm._s(_vm.modelNameValidator.message) },
|
|
2657
|
-
})
|
|
2658
|
-
};
|
|
2659
|
-
var __vue_staticRenderFns__$c = [];
|
|
2660
|
-
__vue_render__$c._withStripped = true;
|
|
2661
|
-
|
|
2662
|
-
/* style */
|
|
2663
|
-
const __vue_inject_styles__$c = function (inject) {
|
|
2664
|
-
if (!inject) return
|
|
2665
|
-
inject("data-v-7b13873a_0", { source: ".has-error .ele-upload__wrapper .file-uploads label {\n border-color: #F5222D;\n}\n.has-error .ele-upload__wrapper .file-uploads .ele-upload__area .ele-upload__area--icon .anticon-cloud-upload {\n color: #F5222D;\n}\n.has-error .ele-upload__wrapper .file-uploads .ele-upload__area .ele-upload__area--text .ele-upload__message {\n color: #F5222D;\n}\n.has-error .ele-upload__wrapper .file-uploads .ele-upload__area .ele-upload__area--text .ele-upload__ext {\n color: #FFA39E;\n}\n:root {\n --idooel-primary-color: #1890FF;\n --idoole-black-02: rgba(0, 0, 0, 0.04);\n --idoole-black-06: rgba(0, 0, 0, 0.44);\n --idoole-black-07: rgba(0, 0, 0, 0.64);\n --idoole-black-008: rgba(0, 0, 0, 0.88);\n --idooel-border-width: 2;\n --idooel-border-color: #53a8ff;\n --idooel-column-border-width: 1;\n --idooel-column-border-color: #d9ecff;\n --idooel-form-title-border-color: rgba(0, 0, 0, 0.16);\n --idooel-form-upload-bg-color: rgba(0, 0, 0, 0.02);\n --idooel-form-upload-border-hover-color: #40A9FF;\n --idooel-form-border-radius: 2px;\n --idooel-form-border-err-color: #F5222D;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["index.vue"],"names":[],"mappings":"AAAA;EACE,qBAAqB;AACvB;AACA;EACE,cAAc;AAChB;AACA;EACE,cAAc;AAChB;AACA;EACE,cAAc;AAChB;AAEA;EACE,+BAA+B;EAC/B,sCAAsC;EACtC,sCAAsC;EACtC,sCAAsC;EACtC,uCAAuC;EACvC,wBAAwB;EACxB,8BAA8B;EAC9B,+BAA+B;EAC/B,qCAAqC;EACrC,qDAAqD;EACrD,kDAAkD;EAClD,gDAAgD;EAChD,gCAAgC;EAChC,uCAAuC;AACzC;;AAEA,oCAAoC","file":"index.vue","sourcesContent":[".has-error .ele-upload__wrapper .file-uploads label {\n border-color: #F5222D;\n}\n.has-error .ele-upload__wrapper .file-uploads .ele-upload__area .ele-upload__area--icon .anticon-cloud-upload {\n color: #F5222D;\n}\n.has-error .ele-upload__wrapper .file-uploads .ele-upload__area .ele-upload__area--text .ele-upload__message {\n color: #F5222D;\n}\n.has-error .ele-upload__wrapper .file-uploads .ele-upload__area .ele-upload__area--text .ele-upload__ext {\n color: #FFA39E;\n}\n\n:root {\n --idooel-primary-color: #1890FF;\n --idoole-black-02: rgba(0, 0, 0, 0.04);\n --idoole-black-06: rgba(0, 0, 0, 0.44);\n --idoole-black-07: rgba(0, 0, 0, 0.64);\n --idoole-black-008: rgba(0, 0, 0, 0.88);\n --idooel-border-width: 2;\n --idooel-border-color: #53a8ff;\n --idooel-column-border-width: 1;\n --idooel-column-border-color: #d9ecff;\n --idooel-form-title-border-color: rgba(0, 0, 0, 0.16);\n --idooel-form-upload-bg-color: rgba(0, 0, 0, 0.02);\n --idooel-form-upload-border-hover-color: #40A9FF;\n --idooel-form-border-radius: 2px;\n --idooel-form-border-err-color: #F5222D;\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
2666
|
-
|
|
2667
|
-
};
|
|
2668
|
-
/* scoped */
|
|
2669
|
-
const __vue_scope_id__$c = undefined;
|
|
2670
|
-
/* module identifier */
|
|
2671
|
-
const __vue_module_identifier__$c = undefined;
|
|
2672
|
-
/* functional template */
|
|
2673
|
-
const __vue_is_functional_template__$c = false;
|
|
2674
|
-
/* style inject SSR */
|
|
2675
|
-
|
|
2676
|
-
/* style inject shadow dom */
|
|
2677
|
-
|
|
2678
|
-
|
|
2679
|
-
|
|
2680
|
-
const __vue_component__$c = /*#__PURE__*/normalizeComponent(
|
|
2681
|
-
{ render: __vue_render__$c, staticRenderFns: __vue_staticRenderFns__$c },
|
|
2682
|
-
__vue_inject_styles__$c,
|
|
2683
|
-
__vue_script__$c,
|
|
2684
|
-
__vue_scope_id__$c,
|
|
2685
|
-
__vue_is_functional_template__$c,
|
|
2686
|
-
__vue_module_identifier__$c,
|
|
2687
|
-
false,
|
|
2688
|
-
createInjector,
|
|
2689
|
-
undefined,
|
|
2690
|
-
undefined
|
|
2691
|
-
);
|
|
2692
|
-
|
|
2693
|
-
__vue_component__$c.install = Vue => Vue.component(__vue_component__$c.name, __vue_component__$c);
|
|
2694
|
-
|
|
2695
2674
|
//
|
|
2696
2675
|
//
|
|
2697
2676
|
//
|
|
@@ -2704,8 +2683,12 @@ __vue_component__$c.install = Vue => Vue.component(__vue_component__$c.name, __v
|
|
|
2704
2683
|
//
|
|
2705
2684
|
//
|
|
2706
2685
|
|
|
2707
|
-
var script$
|
|
2686
|
+
var script$g = {
|
|
2708
2687
|
name: 'ele-textarea',
|
|
2688
|
+
model: {
|
|
2689
|
+
prop: 'value',
|
|
2690
|
+
event: 'change'
|
|
2691
|
+
},
|
|
2709
2692
|
props: {
|
|
2710
2693
|
maxLength: {
|
|
2711
2694
|
type: Number
|
|
@@ -2726,28 +2709,33 @@ var script$b = {
|
|
|
2726
2709
|
},
|
|
2727
2710
|
value: {
|
|
2728
2711
|
type: String
|
|
2712
|
+
},
|
|
2713
|
+
disabled: {
|
|
2714
|
+
type: Boolean,
|
|
2715
|
+
default: false
|
|
2729
2716
|
}
|
|
2730
2717
|
},
|
|
2731
2718
|
methods: {
|
|
2732
2719
|
onChange(e) {
|
|
2733
2720
|
const value = e.target.value;
|
|
2734
|
-
this.$emit('
|
|
2721
|
+
this.$emit('change', value);
|
|
2735
2722
|
this.$emit('input', value);
|
|
2736
2723
|
}
|
|
2737
2724
|
}
|
|
2738
2725
|
};
|
|
2739
2726
|
|
|
2740
2727
|
/* script */
|
|
2741
|
-
const __vue_script__$
|
|
2728
|
+
const __vue_script__$g = script$g;
|
|
2742
2729
|
|
|
2743
2730
|
/* template */
|
|
2744
|
-
var __vue_render__$
|
|
2731
|
+
var __vue_render__$g = function () {
|
|
2745
2732
|
var _vm = this;
|
|
2746
2733
|
var _h = _vm.$createElement;
|
|
2747
2734
|
var _c = _vm._self._c || _h;
|
|
2748
2735
|
return _c("a-textarea", {
|
|
2749
2736
|
attrs: {
|
|
2750
2737
|
value: _vm.value,
|
|
2738
|
+
disabled: _vm.disabled,
|
|
2751
2739
|
"auto-size": _vm.autosize,
|
|
2752
2740
|
"max-length": _vm.maxLength,
|
|
2753
2741
|
placeholder: _vm.placeholder,
|
|
@@ -2756,34 +2744,34 @@ var __vue_render__$b = function () {
|
|
|
2756
2744
|
on: { change: _vm.onChange },
|
|
2757
2745
|
})
|
|
2758
2746
|
};
|
|
2759
|
-
var __vue_staticRenderFns__$
|
|
2760
|
-
__vue_render__$
|
|
2747
|
+
var __vue_staticRenderFns__$g = [];
|
|
2748
|
+
__vue_render__$g._withStripped = true;
|
|
2761
2749
|
|
|
2762
2750
|
/* style */
|
|
2763
|
-
const __vue_inject_styles__$
|
|
2751
|
+
const __vue_inject_styles__$g = function (inject) {
|
|
2764
2752
|
if (!inject) return
|
|
2765
|
-
inject("data-v-
|
|
2753
|
+
inject("data-v-27d78bca_0", { source: "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n", map: {"version":3,"sources":[],"names":[],"mappings":"","file":"index.vue"}, media: undefined });
|
|
2766
2754
|
|
|
2767
2755
|
};
|
|
2768
2756
|
/* scoped */
|
|
2769
|
-
const __vue_scope_id__$
|
|
2757
|
+
const __vue_scope_id__$g = "data-v-27d78bca";
|
|
2770
2758
|
/* module identifier */
|
|
2771
|
-
const __vue_module_identifier__$
|
|
2759
|
+
const __vue_module_identifier__$g = undefined;
|
|
2772
2760
|
/* functional template */
|
|
2773
|
-
const __vue_is_functional_template__$
|
|
2761
|
+
const __vue_is_functional_template__$g = false;
|
|
2774
2762
|
/* style inject SSR */
|
|
2775
2763
|
|
|
2776
2764
|
/* style inject shadow dom */
|
|
2777
2765
|
|
|
2778
2766
|
|
|
2779
2767
|
|
|
2780
|
-
const __vue_component__$
|
|
2781
|
-
{ render: __vue_render__$
|
|
2782
|
-
__vue_inject_styles__$
|
|
2783
|
-
__vue_script__$
|
|
2784
|
-
__vue_scope_id__$
|
|
2785
|
-
__vue_is_functional_template__$
|
|
2786
|
-
__vue_module_identifier__$
|
|
2768
|
+
const __vue_component__$g = /*#__PURE__*/normalizeComponent(
|
|
2769
|
+
{ render: __vue_render__$g, staticRenderFns: __vue_staticRenderFns__$g },
|
|
2770
|
+
__vue_inject_styles__$g,
|
|
2771
|
+
__vue_script__$g,
|
|
2772
|
+
__vue_scope_id__$g,
|
|
2773
|
+
__vue_is_functional_template__$g,
|
|
2774
|
+
__vue_module_identifier__$g,
|
|
2787
2775
|
false,
|
|
2788
2776
|
createInjector,
|
|
2789
2777
|
undefined,
|
|
@@ -2800,7 +2788,7 @@ __vue_render__$b._withStripped = true;
|
|
|
2800
2788
|
//
|
|
2801
2789
|
//
|
|
2802
2790
|
|
|
2803
|
-
var script$
|
|
2791
|
+
var script$f = {
|
|
2804
2792
|
name: 'ele-icon',
|
|
2805
2793
|
props: {
|
|
2806
2794
|
type: {
|
|
@@ -2823,10 +2811,10 @@ var script$a = {
|
|
|
2823
2811
|
};
|
|
2824
2812
|
|
|
2825
2813
|
/* script */
|
|
2826
|
-
const __vue_script__$
|
|
2814
|
+
const __vue_script__$f = script$f;
|
|
2827
2815
|
|
|
2828
2816
|
/* template */
|
|
2829
|
-
var __vue_render__$
|
|
2817
|
+
var __vue_render__$f = function () {
|
|
2830
2818
|
var _vm = this;
|
|
2831
2819
|
var _h = _vm.$createElement;
|
|
2832
2820
|
var _c = _vm._self._c || _h;
|
|
@@ -2834,17 +2822,17 @@ var __vue_render__$a = function () {
|
|
|
2834
2822
|
? _c("a-icon", { attrs: { type: _vm.type, theme: _vm.theme } })
|
|
2835
2823
|
: _c("i", { class: ["iconfont", _vm.type] })
|
|
2836
2824
|
};
|
|
2837
|
-
var __vue_staticRenderFns__$
|
|
2838
|
-
__vue_render__$
|
|
2825
|
+
var __vue_staticRenderFns__$f = [];
|
|
2826
|
+
__vue_render__$f._withStripped = true;
|
|
2839
2827
|
|
|
2840
2828
|
/* style */
|
|
2841
|
-
const __vue_inject_styles__$
|
|
2829
|
+
const __vue_inject_styles__$f = undefined;
|
|
2842
2830
|
/* scoped */
|
|
2843
|
-
const __vue_scope_id__$
|
|
2831
|
+
const __vue_scope_id__$f = undefined;
|
|
2844
2832
|
/* module identifier */
|
|
2845
|
-
const __vue_module_identifier__$
|
|
2833
|
+
const __vue_module_identifier__$f = undefined;
|
|
2846
2834
|
/* functional template */
|
|
2847
|
-
const __vue_is_functional_template__$
|
|
2835
|
+
const __vue_is_functional_template__$f = false;
|
|
2848
2836
|
/* style inject */
|
|
2849
2837
|
|
|
2850
2838
|
/* style inject SSR */
|
|
@@ -2853,13 +2841,13 @@ __vue_render__$a._withStripped = true;
|
|
|
2853
2841
|
|
|
2854
2842
|
|
|
2855
2843
|
|
|
2856
|
-
const __vue_component__$
|
|
2857
|
-
{ render: __vue_render__$
|
|
2858
|
-
__vue_inject_styles__$
|
|
2859
|
-
__vue_script__$
|
|
2860
|
-
__vue_scope_id__$
|
|
2861
|
-
__vue_is_functional_template__$
|
|
2862
|
-
__vue_module_identifier__$
|
|
2844
|
+
const __vue_component__$f = /*#__PURE__*/normalizeComponent(
|
|
2845
|
+
{ render: __vue_render__$f, staticRenderFns: __vue_staticRenderFns__$f },
|
|
2846
|
+
__vue_inject_styles__$f,
|
|
2847
|
+
__vue_script__$f,
|
|
2848
|
+
__vue_scope_id__$f,
|
|
2849
|
+
__vue_is_functional_template__$f,
|
|
2850
|
+
__vue_module_identifier__$f,
|
|
2863
2851
|
false,
|
|
2864
2852
|
undefined,
|
|
2865
2853
|
undefined,
|
|
@@ -2867,11 +2855,11 @@ __vue_render__$a._withStripped = true;
|
|
|
2867
2855
|
);
|
|
2868
2856
|
|
|
2869
2857
|
//
|
|
2870
|
-
var script$
|
|
2858
|
+
var script$e = {
|
|
2871
2859
|
name: 'ele-upload',
|
|
2872
2860
|
components: {
|
|
2873
2861
|
FileUpload,
|
|
2874
|
-
EleIcon: __vue_component__$
|
|
2862
|
+
EleIcon: __vue_component__$f
|
|
2875
2863
|
},
|
|
2876
2864
|
model: {
|
|
2877
2865
|
prop: 'value',
|
|
@@ -3101,10 +3089,10 @@ var script$9 = {
|
|
|
3101
3089
|
};
|
|
3102
3090
|
|
|
3103
3091
|
/* script */
|
|
3104
|
-
const __vue_script__$
|
|
3092
|
+
const __vue_script__$e = script$e;
|
|
3105
3093
|
|
|
3106
3094
|
/* template */
|
|
3107
|
-
var __vue_render__$
|
|
3095
|
+
var __vue_render__$e = function () {
|
|
3108
3096
|
var _vm = this;
|
|
3109
3097
|
var _h = _vm.$createElement;
|
|
3110
3098
|
var _c = _vm._self._c || _h;
|
|
@@ -3242,34 +3230,34 @@ var __vue_render__$9 = function () {
|
|
|
3242
3230
|
1
|
|
3243
3231
|
)
|
|
3244
3232
|
};
|
|
3245
|
-
var __vue_staticRenderFns__$
|
|
3246
|
-
__vue_render__$
|
|
3233
|
+
var __vue_staticRenderFns__$e = [];
|
|
3234
|
+
__vue_render__$e._withStripped = true;
|
|
3247
3235
|
|
|
3248
3236
|
/* style */
|
|
3249
|
-
const __vue_inject_styles__$
|
|
3237
|
+
const __vue_inject_styles__$e = function (inject) {
|
|
3250
3238
|
if (!inject) return
|
|
3251
|
-
inject("data-v-29bc9f58_0", { source: "[data-v-29bc9f58] .file-uploads label {\n opacity: 1 !important;\n cursor: pointer;\n border: 1px dashed var(--idooel-form-title-border-color);\n background: var(--idooel-form-upload-bg-color) !important;\n border-radius: var(--idooel-form-border-radius);\n}\n[data-v-29bc9f58] .file-uploads label:hover {\n border-color: var(--idooel-form-upload-border-hover-color);\n}\n.ele-upload__wrapper[data-v-29bc9f58] {\n width: 100%;\n}\n.ele-upload__wrapper .ele-upload__area[data-v-29bc9f58] {\n padding: 16px;\n width: 100%;\n height: 80px;\n display: flex;\n flex-direction: row;\n}\n.ele-upload__wrapper .ele-upload__area .ele-upload__area--icon .anticon-cloud-upload[data-v-29bc9f58] {\n font-size: 48px;\n color: var(--idooel-primary-color);\n}\n.ele-upload__wrapper .ele-upload__area .ele-upload__area--text[data-v-29bc9f58] {\n margin-left: 16px;\n}\n.ele-upload__wrapper .ele-upload__area .ele-upload__area--text .ele-upload__message[data-v-29bc9f58] {\n font-size: 16px;\n color: var(--idoole-black-008);\n text-align: left;\n}\n.ele-upload__wrapper .ele-upload__area .ele-upload__area--text .ele-upload__ext[data-v-29bc9f58] {\n text-align: left;\n font-size: 14px;\n color: var(--idoole-black-06);\n}\n.ele-upload__wrapper .ele-files__wrapper .ele-file__item[data-v-29bc9f58] {\n width: 100%;\n margin-top: 8px;\n padding: 8px 12px;\n border-radius: var(--idooel-form-border-radius);\n background: var(--idooel-form-upload-bg-color);\n display: flex;\n flex-direction: row;\n align-items: center;\n}\n.ele-upload__wrapper .ele-files__wrapper .ele-file__item .ele-file__name[data-v-29bc9f58] {\n flex: 1;\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n font-size: 14px;\n margin-left: 8px;\n cursor: pointer;\n}\n.ele-upload__wrapper .ele-files__wrapper .ele-file__item .ele-file__name .ele-file__inner[data-v-29bc9f58] {\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.ele-upload__wrapper .ele-files__wrapper .ele-file__item .ele-file__delete[data-v-29bc9f58] {\n margin-left: 8px;\n}\n.ele-upload__wrapper .ele-files__wrapper .ele-file__item .ele-file__delete .ele-file__delete--icon[data-v-29bc9f58] {\n margin-left: 8px;\n cursor: pointer;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["E:\\work\\code\\ganjiao\\ganjian-monorepo\\packages\\components\\packages\\upload\\src\\index.vue","index.vue"],"names":[],"mappings":"AAqRA;EACA,qBAAA;EACA,eAAA;EACA,wDAAA;EACA,yDAAA;EAIA,+CAAA;ACvRA;ADoRA;EACA,0DAAA;AClRA;ADuRA;EACA,WAAA;ACpRA;ADqRA;EACA,aAAA;EACA,WAAA;EACA,YAAA;EACA,aAAA;EACA,mBAAA;ACnRA;ADqRA;EACA,eAAA;EACA,kCAAA;ACnRA;ADsRA;EACA,iBAAA;ACpRA;ADqRA;EACA,eAAA;EACA,8BAAA;EACA,gBAAA;ACnRA;ADqRA;EACA,gBAAA;EACA,eAAA;EACA,6BAAA;ACnRA;ADwRA;EACA,WAAA;EACA,eAAA;EACA,iBAAA;EACA,+CAAA;EACA,8CAAA;EACA,aAAA;EACA,mBAAA;EACA,mBAAA;ACtRA;ADwRA;EACA,OAAA;EACA,gBAAA;EACA,mBAAA;EACA,gBAAA;EACA,eAAA;EACA,gBAAA;EACA,eAAA;ACtRA;ADuRA;EACA,gBAAA;EACA,uBAAA;ACrRA;ADwRA;EACA,gBAAA;ACtRA;ADuRA;EACA,gBAAA;EACA,eAAA;ACrRA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\r\n <div class=\"ele-upload__wrapper\">\r\n <FileUpload\r\n class=\"ele-upload__inner\"\r\n v-show=\"isShowUploadContainer\"\r\n v-model=\"files\"\r\n :ref=\"uploadRef\"\r\n :drop=\"drop\"\r\n :chunk-enabled=\"chunkEnabled\"\r\n :chunk=\"chunkConfig\"\r\n :accept=\"accept\"\r\n :size=\"fileSizeLimit\"\r\n :post-action=\"postAction\"\r\n :multiple=\"multiple\"\r\n :maximum=\"getMaximum\"\r\n @input-file=\"onWatchInputFiles\"\r\n @input=\"onWatchFiles\"\r\n style=\"width: 100%;\">\r\n <section class=\"ele-upload__area\">\r\n <div class=\"ele-upload__area--icon\">\r\n <ele-icon type=\"cloud-upload\"></ele-icon>\r\n </div>\r\n <div class=\"ele-upload__area--text\">\r\n <div class=\"ele-upload__message\">单击或拖动文件到该区域以上传</div>\r\n <div class=\"ele-upload__ext\">文件小于{{ size }}M</div>\r\n </div>\r\n </section>\r\n </FileUpload>\r\n <section class=\"ele-files__wrapper\">\r\n <div class=\"ele-file__item\" v-for=\"(file, idx) in files\" :key=\"idx\">\r\n <div class=\"ele-file__suffix--icon\">\r\n <ele-icon type=\"icon-doc\"></ele-icon>\r\n </div>\r\n <div class=\"ele-file__name\">\r\n <div class=\"ele-file__inner\" @click=\"handleClickDownload(file)\">{{ file.name }}</div>\r\n <div v-if=\"!file.success\" class=\"ele-uplpad__progress\">\r\n <a-progress :strokeWidth=\"2\" :percent=\"Number(file.progress)\" size=\"small\" />\r\n </div>\r\n </div>\r\n <div class=\"ele-file__delete\" v-if=\"file.success || file.error\">\r\n <span class=\"ele-file__size\">{{ (file.size / byteConversion).toFixed(2) }}M</span>\r\n <span class=\"ele-file__delete--icon\" @click=\"handleClickDelete(file)\">\r\n <ele-icon type=\"delete\"></ele-icon>\r\n </span>\r\n </div>\r\n </div>\r\n </section>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport FileUpload from 'vue-upload-component'\r\nimport { v4 as uuidv4 } from 'uuid'\r\nimport { route, net } from '@idooel/shared'\r\nimport EleIcon from '../../icon/src/index.vue'\r\nexport default {\r\n name: 'ele-upload',\r\n components: {\r\n FileUpload,\r\n EleIcon\r\n },\r\n model: {\r\n prop: 'value',\r\n event: 'change'\r\n },\r\n props: {\r\n url: {\r\n type: String,\r\n default: '/zuul/api-file/workbench/file'\r\n },\r\n size: {\r\n type: Number,\r\n default: 100\r\n },\r\n accept: {\r\n type: String\r\n },\r\n maximum: {\r\n type: Number,\r\n default: 10\r\n },\r\n multiple: {\r\n type: Boolean,\r\n default: false\r\n },\r\n drop: {\r\n type: Boolean,\r\n default: true\r\n },\r\n value: {\r\n type: [String, Array]\r\n },\r\n querys: {\r\n type: Object,\r\n default: () => ({\r\n _csrf: 'c81f993f-f044-45bb-b3af-2977d335042d',\r\n _t: new Date().valueOf()\r\n })\r\n },\r\n headers: {\r\n type: Object,\r\n default: () => ({})\r\n },\r\n byteConversion: {\r\n type: Number,\r\n default: 1024 * 1024\r\n },\r\n chunkEnabled: {\r\n type: Boolean,\r\n default: true\r\n }\r\n },\r\n data() {\r\n return {\r\n files: [],\r\n saveToServerAsyncPageTimer: null\r\n }\r\n },\r\n computed: {\r\n getPayloads () {\r\n return {\r\n override: false\r\n }\r\n },\r\n chunkConfig () {\r\n const ret = route.toQueryString(this.querys)\r\n return {\r\n action: `${window.prefixPath}/zuul/api-file/workbench/file/temp/chunk/vue`,\r\n headers: {\r\n 'X-XSRF-TOKEN': localStorage.getItem('token')\r\n },\r\n minSize: 3 * this.byteConversion,\r\n maxActive: 3,\r\n maxRetries: 5,\r\n startBody: {\r\n override: true,\r\n path: '/cw'\r\n },\r\n uploadBody: {\r\n override: true,\r\n path: '/cw'\r\n },\r\n finishBody: {\r\n override: true,\r\n path: '/cw'\r\n }\r\n }\r\n },\r\n isFileUploadSuccessed () {\r\n return this.files.every(file => file.success)\r\n },\r\n isShowUploadContainer () {\r\n if (this.multiple) {\r\n if (this.isFileUploadSuccessed && this.files.length >= this.maximum) {\r\n return false\r\n } else {\r\n return true\r\n }\r\n } else {\r\n if (this.isFileUploadSuccessed && this.files.length >= 1) {\r\n return false\r\n } else {\r\n return true\r\n }\r\n }\r\n },\r\n getMaximum () {\r\n return this.multiple ? this.maximum : 1\r\n },\r\n fileSizeLimit () {\r\n return this.size * this.byteConversion\r\n },\r\n postAction () {\r\n const ret = route.toQueryString(this.querys)\r\n return `${window.prefixPath}${this.url}?${ret}`\r\n },\r\n uploadRef () {\r\n return uuidv4()\r\n },\r\n fileSuffixIcon () {\r\n return {\r\n 'doc': { name: 'icon-doc' },\r\n }\r\n },\r\n fileIds () {\r\n const fileIds = this.files.map(file => {\r\n return file.response.data.fileID\r\n })\r\n return this.multiple ? fileIds : fileIds[0]\r\n }\r\n },\r\n methods: {\r\n handleClickDownload (file) {\r\n console.log('download file', file)\r\n },\r\n handleClickDelete (file) {\r\n this.$refs[this.uploadRef].remove(file)\r\n this.$emit('change', this.fileIds)\r\n },\r\n onWatchFiles (files) {\r\n this.files = files\r\n if (this.isFileUploadSuccessed) {\r\n this.$emit('change', this.fileIds)\r\n }\r\n },\r\n async saveToServerAsyncPage (payloads = {}) {\r\n net.post('zuul/api-file/workbench/file/temp/saveToServerAsyncPage', payloads, { \r\n headers: {\r\n 'Content-Type': 'multipart/form-data'\r\n }\r\n }).then(resp =>{\r\n const { data } = resp\r\n if (data !== 'saveToServerAsyncPage') {\r\n clearInterval(this.saveToServerAsyncPageTimer)\r\n }\r\n })\r\n // const ret = await net.post({\r\n // url: 'zuul/api-file/workbench/file/temp/saveToServerAsyncPage',\r\n // method: 'POST',\r\n // data: { ...payloads }\r\n // }).then(resp => {\r\n // const { data: { data, code, message } } = resp\r\n // if (code !== '2000') {\r\n // this.$Message.error(message)\r\n // return\r\n // }\r\n // if (data !== 'saveToServerAsyncPage') {\r\n // clearInterval(timer)\r\n // const { fileID, size } = data\r\n // this.$emit('on-success', { ...data, fileId: fileID })\r\n // this.$Message.success('同步成功')\r\n // return { fileId: fileID, size }\r\n // }\r\n // })\r\n // return ret\r\n },\r\n onWatchInputFiles (newFile, oldFile) {\r\n if (newFile && !oldFile) {\r\n // add file\r\n console.log('add', newFile)\r\n }\r\n if (newFile && oldFile) {\r\n // update file\r\n console.log('update', newFile)\r\n const { success, active, chunk, response } = newFile\r\n if (chunk && success && !active) {\r\n console.log('chunk end')\r\n const { data: { file, type } } = response\r\n const payloads = {\r\n filePath: file.match(/\\/cw(.*)/)[0],\r\n asyncID: uuidv4(),\r\n isDeleteOrigin: false,\r\n toImage: type === 'pdf' ? true : false,\r\n unzip: type === 'zip' ? true : false,\r\n _csrf: localStorage.getItem('token')\r\n }\r\n this.saveToServerAsyncPageTimer = setInterval(() => {\r\n this.saveToServerAsyncPage(payloads)\r\n }, 2000)\r\n }\r\n }\r\n if (!newFile && oldFile) {\r\n // delete file\r\n console.log('delete')\r\n }\r\n if (Boolean(newFile) !== Boolean(oldFile) || oldFile.error !== newFile.error) {\r\n if (!this.$refs[this.uploadRef].active) {\r\n this.$refs[this.uploadRef].active = true\r\n }\r\n }\r\n }\r\n }\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n::v-deep .file-uploads {\r\n label {\r\n opacity: 1 !important;\r\n cursor: pointer;\r\n border: 1px dashed var(--idooel-form-title-border-color);\r\n background: var(--idooel-form-upload-bg-color) !important;\r\n &:hover {\r\n border-color: var(--idooel-form-upload-border-hover-color);\r\n }\r\n border-radius: var(--idooel-form-border-radius);\r\n }\r\n}\r\n.ele-upload__wrapper {\r\n width: 100%;\r\n .ele-upload__area {\r\n padding: 16px;\r\n width: 100%;\r\n height: 80px;\r\n display: flex;\r\n flex-direction: row;\r\n .ele-upload__area--icon {\r\n .anticon-cloud-upload {\r\n font-size: 48px;\r\n color: var(--idooel-primary-color);\r\n }\r\n }\r\n .ele-upload__area--text {\r\n margin-left: 16px;\r\n .ele-upload__message {\r\n font-size: 16px;\r\n color: var(--idoole-black-008);\r\n text-align: left;\r\n }\r\n .ele-upload__ext {\r\n text-align: left;\r\n font-size: 14px;\r\n color: var(--idoole-black-06);\r\n }\r\n }\r\n }\r\n .ele-files__wrapper {\r\n .ele-file__item {\r\n width: 100%;\r\n margin-top: 8px;\r\n padding: 8px 12px;\r\n border-radius: var(--idooel-form-border-radius);\r\n background: var(--idooel-form-upload-bg-color);\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n .ele-file__suffix--icon {}\r\n .ele-file__name {\r\n flex: 1;\r\n text-align: left;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n font-size: 14px;\r\n margin-left: 8px;\r\n cursor: pointer;\r\n .ele-file__inner {\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n }\r\n }\r\n .ele-file__delete {\r\n margin-left: 8px;\r\n .ele-file__delete--icon {\r\n margin-left: 8px;\r\n cursor: pointer;\r\n }\r\n }\r\n }\r\n }\r\n}\r\n</style>","::v-deep .file-uploads label {\n opacity: 1 !important;\n cursor: pointer;\n border: 1px dashed var(--idooel-form-title-border-color);\n background: var(--idooel-form-upload-bg-color) !important;\n border-radius: var(--idooel-form-border-radius);\n}\n::v-deep .file-uploads label:hover {\n border-color: var(--idooel-form-upload-border-hover-color);\n}\n\n.ele-upload__wrapper {\n width: 100%;\n}\n.ele-upload__wrapper .ele-upload__area {\n padding: 16px;\n width: 100%;\n height: 80px;\n display: flex;\n flex-direction: row;\n}\n.ele-upload__wrapper .ele-upload__area .ele-upload__area--icon .anticon-cloud-upload {\n font-size: 48px;\n color: var(--idooel-primary-color);\n}\n.ele-upload__wrapper .ele-upload__area .ele-upload__area--text {\n margin-left: 16px;\n}\n.ele-upload__wrapper .ele-upload__area .ele-upload__area--text .ele-upload__message {\n font-size: 16px;\n color: var(--idoole-black-008);\n text-align: left;\n}\n.ele-upload__wrapper .ele-upload__area .ele-upload__area--text .ele-upload__ext {\n text-align: left;\n font-size: 14px;\n color: var(--idoole-black-06);\n}\n.ele-upload__wrapper .ele-files__wrapper .ele-file__item {\n width: 100%;\n margin-top: 8px;\n padding: 8px 12px;\n border-radius: var(--idooel-form-border-radius);\n background: var(--idooel-form-upload-bg-color);\n display: flex;\n flex-direction: row;\n align-items: center;\n}\n.ele-upload__wrapper .ele-files__wrapper .ele-file__item .ele-file__name {\n flex: 1;\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n font-size: 14px;\n margin-left: 8px;\n cursor: pointer;\n}\n.ele-upload__wrapper .ele-files__wrapper .ele-file__item .ele-file__name .ele-file__inner {\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.ele-upload__wrapper .ele-files__wrapper .ele-file__item .ele-file__delete {\n margin-left: 8px;\n}\n.ele-upload__wrapper .ele-files__wrapper .ele-file__item .ele-file__delete .ele-file__delete--icon {\n margin-left: 8px;\n cursor: pointer;\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
3239
|
+
inject("data-v-5b271004_0", { source: "[data-v-5b271004] .ele-upload__inner {\n opacity: 1 !important;\n cursor: pointer;\n border: 1px dashed var(--idooel-form-title-border-color);\n background: var(--idooel-form-upload-bg-color) !important;\n border-radius: var(--idooel-form-border-radius);\n}\n[data-v-5b271004] .ele-upload__inner:hover {\n border-color: var(--idooel-form-upload-border-hover-color);\n}\n.ele-upload__wrapper[data-v-5b271004] {\n width: 100%;\n}\n.ele-upload__wrapper .ele-upload__area[data-v-5b271004] {\n padding: 16px;\n width: 100%;\n height: 80px;\n display: flex;\n flex-direction: row;\n}\n.ele-upload__wrapper .ele-upload__area .ele-upload__area--icon .anticon-cloud-upload[data-v-5b271004] {\n font-size: 48px;\n color: var(--idooel-primary-color);\n}\n.ele-upload__wrapper .ele-upload__area .ele-upload__area--text[data-v-5b271004] {\n margin-left: 16px;\n}\n.ele-upload__wrapper .ele-upload__area .ele-upload__area--text .ele-upload__message[data-v-5b271004] {\n font-size: 16px;\n color: var(--idoole-black-008);\n text-align: left;\n}\n.ele-upload__wrapper .ele-upload__area .ele-upload__area--text .ele-upload__ext[data-v-5b271004] {\n text-align: left;\n font-size: 14px;\n color: var(--idoole-black-06);\n}\n.ele-upload__wrapper .ele-files__wrapper .ele-file__item[data-v-5b271004] {\n width: 100%;\n margin-top: 8px;\n padding: 8px 12px;\n border-radius: var(--idooel-form-border-radius);\n background: var(--idooel-form-upload-bg-color);\n display: flex;\n flex-direction: row;\n align-items: center;\n}\n.ele-upload__wrapper .ele-files__wrapper .ele-file__item .ele-file__name[data-v-5b271004] {\n flex: 1;\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n font-size: 14px;\n margin-left: 8px;\n cursor: pointer;\n}\n.ele-upload__wrapper .ele-files__wrapper .ele-file__item .ele-file__name .ele-file__inner[data-v-5b271004] {\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.ele-upload__wrapper .ele-files__wrapper .ele-file__item .ele-file__delete[data-v-5b271004] {\n margin-left: 8px;\n}\n.ele-upload__wrapper .ele-files__wrapper .ele-file__item .ele-file__delete .ele-file__delete--icon[data-v-5b271004] {\n margin-left: 8px;\n cursor: pointer;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["/Users/huangshan/Goldgov/front/ganjiao/base-elearning-frontend-model/packages/components/packages/upload/src/index.vue","index.vue"],"names":[],"mappings":"AAoRA;EACA,qBAAA;EACA,eAAA;EACA,wDAAA;EACA,yDAAA;EAIA,+CAAA;ACtRA;ADmRA;EACA,0DAAA;ACjRA;ADqRA;EACA,WAAA;AClRA;ADmRA;EACA,aAAA;EACA,WAAA;EACA,YAAA;EACA,aAAA;EACA,mBAAA;ACjRA;ADmRA;EACA,eAAA;EACA,kCAAA;ACjRA;ADoRA;EACA,iBAAA;AClRA;ADmRA;EACA,eAAA;EACA,8BAAA;EACA,gBAAA;ACjRA;ADmRA;EACA,gBAAA;EACA,eAAA;EACA,6BAAA;ACjRA;ADsRA;EACA,WAAA;EACA,eAAA;EACA,iBAAA;EACA,+CAAA;EACA,8CAAA;EACA,aAAA;EACA,mBAAA;EACA,mBAAA;ACpRA;ADsRA;EACA,OAAA;EACA,gBAAA;EACA,mBAAA;EACA,gBAAA;EACA,eAAA;EACA,gBAAA;EACA,eAAA;ACpRA;ADqRA;EACA,gBAAA;EACA,uBAAA;ACnRA;ADsRA;EACA,gBAAA;ACpRA;ADqRA;EACA,gBAAA;EACA,eAAA;ACnRA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\n <div class=\"ele-upload__wrapper\">\n <FileUpload\n class=\"ele-upload__inner\"\n v-show=\"isShowUploadContainer\"\n v-model=\"files\"\n :ref=\"uploadRef\"\n :drop=\"drop\"\n :chunk-enabled=\"chunkEnabled\"\n :chunk=\"chunkConfig\"\n :accept=\"accept\"\n :size=\"fileSizeLimit\"\n :post-action=\"postAction\"\n :multiple=\"multiple\"\n :maximum=\"getMaximum\"\n @input-file=\"onWatchInputFiles\"\n @input=\"onWatchFiles\"\n style=\"width: 100%;\">\n <section class=\"ele-upload__area\">\n <div class=\"ele-upload__area--icon\">\n <ele-icon type=\"cloud-upload\"></ele-icon>\n </div>\n <div class=\"ele-upload__area--text\">\n <div class=\"ele-upload__message\">单击或拖动文件到该区域以上传</div>\n <div class=\"ele-upload__ext\">文件小于{{ size }}M</div>\n </div>\n </section>\n </FileUpload>\n <section class=\"ele-files__wrapper\">\n <div class=\"ele-file__item\" v-for=\"(file, idx) in files\" :key=\"idx\">\n <div class=\"ele-file__suffix--icon\">\n <ele-icon type=\"icon-doc\"></ele-icon>\n </div>\n <div class=\"ele-file__name\">\n <div class=\"ele-file__inner\" @click=\"handleClickDownload(file)\">{{ file.name }}</div>\n <div v-if=\"!file.success\" class=\"ele-uplpad__progress\">\n <a-progress :strokeWidth=\"2\" :percent=\"Number(file.progress)\" size=\"small\" />\n </div>\n </div>\n <div class=\"ele-file__delete\" v-if=\"file.success || file.error\">\n <span class=\"ele-file__size\">{{ (file.size / byteConversion).toFixed(2) }}M</span>\n <span class=\"ele-file__delete--icon\" @click=\"handleClickDelete(file)\">\n <ele-icon type=\"delete\"></ele-icon>\n </span>\n </div>\n </div>\n </section>\n </div>\n</template>\n\n<script>\nimport FileUpload from 'vue-upload-component'\nimport { v4 as uuidv4 } from 'uuid'\nimport { route, net } from '@idooel/shared'\nimport EleIcon from '../../icon/src/index.vue'\nexport default {\n name: 'ele-upload',\n components: {\n FileUpload,\n EleIcon\n },\n model: {\n prop: 'value',\n event: 'change'\n },\n props: {\n url: {\n type: String,\n default: '/zuul/api-file/workbench/file'\n },\n size: {\n type: Number,\n default: 100\n },\n accept: {\n type: String\n },\n maximum: {\n type: Number,\n default: 10\n },\n multiple: {\n type: Boolean,\n default: false\n },\n drop: {\n type: Boolean,\n default: true\n },\n value: {\n type: [String, Array]\n },\n querys: {\n type: Object,\n default: () => ({\n _csrf: 'c81f993f-f044-45bb-b3af-2977d335042d',\n _t: new Date().valueOf()\n })\n },\n headers: {\n type: Object,\n default: () => ({})\n },\n byteConversion: {\n type: Number,\n default: 1024 * 1024\n },\n chunkEnabled: {\n type: Boolean,\n default: true\n }\n },\n data() {\n return {\n files: [],\n saveToServerAsyncPageTimer: null\n }\n },\n computed: {\n getPayloads () {\n return {\n override: false\n }\n },\n chunkConfig () {\n const ret = route.toQueryString(this.querys)\n return {\n action: `${window.prefixPath}/zuul/api-file/workbench/file/temp/chunk/vue`,\n headers: {\n 'X-XSRF-TOKEN': localStorage.getItem('token')\n },\n minSize: 3 * this.byteConversion,\n maxActive: 3,\n maxRetries: 5,\n startBody: {\n override: true,\n path: '/cw'\n },\n uploadBody: {\n override: true,\n path: '/cw'\n },\n finishBody: {\n override: true,\n path: '/cw'\n }\n }\n },\n isFileUploadSuccessed () {\n return this.files.every(file => file.success)\n },\n isShowUploadContainer () {\n if (this.multiple) {\n if (this.isFileUploadSuccessed && this.files.length >= this.maximum) {\n return false\n } else {\n return true\n }\n } else {\n if (this.isFileUploadSuccessed && this.files.length >= 1) {\n return false\n } else {\n return true\n }\n }\n },\n getMaximum () {\n return this.multiple ? this.maximum : 1\n },\n fileSizeLimit () {\n return this.size * this.byteConversion\n },\n postAction () {\n const ret = route.toQueryString(this.querys)\n return `${window.prefixPath}${this.url}?${ret}`\n },\n uploadRef () {\n return uuidv4()\n },\n fileSuffixIcon () {\n return {\n 'doc': { name: 'icon-doc' },\n }\n },\n fileIds () {\n const fileIds = this.files.map(file => {\n return file.response.data.fileID\n })\n return this.multiple ? fileIds : fileIds[0]\n }\n },\n methods: {\n handleClickDownload (file) {\n console.log('download file', file)\n },\n handleClickDelete (file) {\n this.$refs[this.uploadRef].remove(file)\n this.$emit('change', this.fileIds)\n },\n onWatchFiles (files) {\n this.files = files\n if (this.isFileUploadSuccessed) {\n this.$emit('change', this.fileIds)\n }\n },\n async saveToServerAsyncPage (payloads = {}) {\n net.post('zuul/api-file/workbench/file/temp/saveToServerAsyncPage', payloads, { \n headers: {\n 'Content-Type': 'multipart/form-data'\n }\n }).then(resp =>{\n const { data } = resp\n if (data !== 'saveToServerAsyncPage') {\n clearInterval(this.saveToServerAsyncPageTimer)\n }\n })\n // const ret = await net.post({\n // url: 'zuul/api-file/workbench/file/temp/saveToServerAsyncPage',\n // method: 'POST',\n // data: { ...payloads }\n // }).then(resp => {\n // const { data: { data, code, message } } = resp\n // if (code !== '2000') {\n // this.$Message.error(message)\n // return\n // }\n // if (data !== 'saveToServerAsyncPage') {\n // clearInterval(timer)\n // const { fileID, size } = data\n // this.$emit('on-success', { ...data, fileId: fileID })\n // this.$Message.success('同步成功')\n // return { fileId: fileID, size }\n // }\n // })\n // return ret\n },\n onWatchInputFiles (newFile, oldFile) {\n if (newFile && !oldFile) {\n // add file\n console.log('add', newFile)\n }\n if (newFile && oldFile) {\n // update file\n console.log('update', newFile)\n const { success, active, chunk, response } = newFile\n if (chunk && success && !active) {\n console.log('chunk end')\n const { data: { file, type } } = response\n const payloads = {\n filePath: file.match(/\\/cw(.*)/)[0],\n asyncID: uuidv4(),\n isDeleteOrigin: false,\n toImage: type === 'pdf' ? true : false,\n unzip: type === 'zip' ? true : false,\n _csrf: localStorage.getItem('token')\n }\n this.saveToServerAsyncPageTimer = setInterval(() => {\n this.saveToServerAsyncPage(payloads)\n }, 2000)\n }\n }\n if (!newFile && oldFile) {\n // delete file\n console.log('delete')\n }\n if (Boolean(newFile) !== Boolean(oldFile) || oldFile.error !== newFile.error) {\n if (!this.$refs[this.uploadRef].active) {\n this.$refs[this.uploadRef].active = true\n }\n }\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n::v-deep .ele-upload__inner {\n opacity: 1 !important;\n cursor: pointer;\n border: 1px dashed var(--idooel-form-title-border-color);\n background: var(--idooel-form-upload-bg-color) !important;\n &:hover {\n border-color: var(--idooel-form-upload-border-hover-color);\n }\n border-radius: var(--idooel-form-border-radius);\n}\n.ele-upload__wrapper {\n width: 100%;\n .ele-upload__area {\n padding: 16px;\n width: 100%;\n height: 80px;\n display: flex;\n flex-direction: row;\n .ele-upload__area--icon {\n .anticon-cloud-upload {\n font-size: 48px;\n color: var(--idooel-primary-color);\n }\n }\n .ele-upload__area--text {\n margin-left: 16px;\n .ele-upload__message {\n font-size: 16px;\n color: var(--idoole-black-008);\n text-align: left;\n }\n .ele-upload__ext {\n text-align: left;\n font-size: 14px;\n color: var(--idoole-black-06);\n }\n }\n }\n .ele-files__wrapper {\n .ele-file__item {\n width: 100%;\n margin-top: 8px;\n padding: 8px 12px;\n border-radius: var(--idooel-form-border-radius);\n background: var(--idooel-form-upload-bg-color);\n display: flex;\n flex-direction: row;\n align-items: center;\n .ele-file__suffix--icon {}\n .ele-file__name {\n flex: 1;\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n font-size: 14px;\n margin-left: 8px;\n cursor: pointer;\n .ele-file__inner {\n overflow: hidden;\n text-overflow: ellipsis;\n }\n }\n .ele-file__delete {\n margin-left: 8px;\n .ele-file__delete--icon {\n margin-left: 8px;\n cursor: pointer;\n }\n }\n }\n }\n}\n</style>","::v-deep .ele-upload__inner {\n opacity: 1 !important;\n cursor: pointer;\n border: 1px dashed var(--idooel-form-title-border-color);\n background: var(--idooel-form-upload-bg-color) !important;\n border-radius: var(--idooel-form-border-radius);\n}\n::v-deep .ele-upload__inner:hover {\n border-color: var(--idooel-form-upload-border-hover-color);\n}\n\n.ele-upload__wrapper {\n width: 100%;\n}\n.ele-upload__wrapper .ele-upload__area {\n padding: 16px;\n width: 100%;\n height: 80px;\n display: flex;\n flex-direction: row;\n}\n.ele-upload__wrapper .ele-upload__area .ele-upload__area--icon .anticon-cloud-upload {\n font-size: 48px;\n color: var(--idooel-primary-color);\n}\n.ele-upload__wrapper .ele-upload__area .ele-upload__area--text {\n margin-left: 16px;\n}\n.ele-upload__wrapper .ele-upload__area .ele-upload__area--text .ele-upload__message {\n font-size: 16px;\n color: var(--idoole-black-008);\n text-align: left;\n}\n.ele-upload__wrapper .ele-upload__area .ele-upload__area--text .ele-upload__ext {\n text-align: left;\n font-size: 14px;\n color: var(--idoole-black-06);\n}\n.ele-upload__wrapper .ele-files__wrapper .ele-file__item {\n width: 100%;\n margin-top: 8px;\n padding: 8px 12px;\n border-radius: var(--idooel-form-border-radius);\n background: var(--idooel-form-upload-bg-color);\n display: flex;\n flex-direction: row;\n align-items: center;\n}\n.ele-upload__wrapper .ele-files__wrapper .ele-file__item .ele-file__name {\n flex: 1;\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n font-size: 14px;\n margin-left: 8px;\n cursor: pointer;\n}\n.ele-upload__wrapper .ele-files__wrapper .ele-file__item .ele-file__name .ele-file__inner {\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.ele-upload__wrapper .ele-files__wrapper .ele-file__item .ele-file__delete {\n margin-left: 8px;\n}\n.ele-upload__wrapper .ele-files__wrapper .ele-file__item .ele-file__delete .ele-file__delete--icon {\n margin-left: 8px;\n cursor: pointer;\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
3252
3240
|
|
|
3253
3241
|
};
|
|
3254
3242
|
/* scoped */
|
|
3255
|
-
const __vue_scope_id__$
|
|
3243
|
+
const __vue_scope_id__$e = "data-v-5b271004";
|
|
3256
3244
|
/* module identifier */
|
|
3257
|
-
const __vue_module_identifier__$
|
|
3245
|
+
const __vue_module_identifier__$e = undefined;
|
|
3258
3246
|
/* functional template */
|
|
3259
|
-
const __vue_is_functional_template__$
|
|
3247
|
+
const __vue_is_functional_template__$e = false;
|
|
3260
3248
|
/* style inject SSR */
|
|
3261
3249
|
|
|
3262
3250
|
/* style inject shadow dom */
|
|
3263
3251
|
|
|
3264
3252
|
|
|
3265
3253
|
|
|
3266
|
-
const __vue_component__$
|
|
3267
|
-
{ render: __vue_render__$
|
|
3268
|
-
__vue_inject_styles__$
|
|
3269
|
-
__vue_script__$
|
|
3270
|
-
__vue_scope_id__$
|
|
3271
|
-
__vue_is_functional_template__$
|
|
3272
|
-
__vue_module_identifier__$
|
|
3254
|
+
const __vue_component__$e = /*#__PURE__*/normalizeComponent(
|
|
3255
|
+
{ render: __vue_render__$e, staticRenderFns: __vue_staticRenderFns__$e },
|
|
3256
|
+
__vue_inject_styles__$e,
|
|
3257
|
+
__vue_script__$e,
|
|
3258
|
+
__vue_scope_id__$e,
|
|
3259
|
+
__vue_is_functional_template__$e,
|
|
3260
|
+
__vue_module_identifier__$e,
|
|
3273
3261
|
false,
|
|
3274
3262
|
createInjector,
|
|
3275
3263
|
undefined,
|
|
@@ -3295,7 +3283,7 @@ __vue_render__$9._withStripped = true;
|
|
|
3295
3283
|
//
|
|
3296
3284
|
//
|
|
3297
3285
|
|
|
3298
|
-
var script$
|
|
3286
|
+
var script$d = {
|
|
3299
3287
|
name: 'ele-select-entity',
|
|
3300
3288
|
props: {
|
|
3301
3289
|
value: {
|
|
@@ -3352,10 +3340,10 @@ var script$8 = {
|
|
|
3352
3340
|
};
|
|
3353
3341
|
|
|
3354
3342
|
/* script */
|
|
3355
|
-
const __vue_script__$
|
|
3343
|
+
const __vue_script__$d = script$d;
|
|
3356
3344
|
|
|
3357
3345
|
/* template */
|
|
3358
|
-
var __vue_render__$
|
|
3346
|
+
var __vue_render__$d = function () {
|
|
3359
3347
|
var _vm = this;
|
|
3360
3348
|
var _h = _vm.$createElement;
|
|
3361
3349
|
var _c = _vm._self._c || _h;
|
|
@@ -3405,34 +3393,34 @@ var __vue_render__$8 = function () {
|
|
|
3405
3393
|
2
|
|
3406
3394
|
)
|
|
3407
3395
|
};
|
|
3408
|
-
var __vue_staticRenderFns__$
|
|
3409
|
-
__vue_render__$
|
|
3396
|
+
var __vue_staticRenderFns__$d = [];
|
|
3397
|
+
__vue_render__$d._withStripped = true;
|
|
3410
3398
|
|
|
3411
3399
|
/* style */
|
|
3412
|
-
const __vue_inject_styles__$
|
|
3400
|
+
const __vue_inject_styles__$d = function (inject) {
|
|
3413
3401
|
if (!inject) return
|
|
3414
|
-
inject("data-v-
|
|
3402
|
+
inject("data-v-611a11f1_0", { source: ".g-select-entity__wrapper[data-v-611a11f1] {\n font-size: 14px;\n line-height: 30px;\n position: relative;\n width: 100%;\n display: flex;\n color: var(--idoole-black-07);\n border-radius: 4px;\n border: 1px solid var(--idooel-form-title-border-color);\n}\n.g-select-entity__wrapper[data-v-611a11f1]:hover {\n border-color: var(--idooel-primary-color);\n}\n.g-select-entity__wrapper .select-entity__input[data-v-611a11f1] {\n padding: 0 11px;\n background-color: #fff;\n border-radius: 4px;\n flex-grow: 1;\n min-height: 30px;\n text-align: left;\n}\n.g-select-entity__wrapper .select-entity__addon[data-v-611a11f1] {\n padding: 0 11px;\n color: var(--idoole-black-07);\n background-color: var(--idoole-black-02);\n border-left: 1px solid var(--idooel-form-title-border-color);\n cursor: pointer;\n min-height: 30px;\n white-space: nowrap;\n}\n.has-error .g-select-entity__wrapper[data-v-611a11f1] {\n border-color: var(--idooel-form-border-err-color);\n}\n.g-select-entity__disabled .select-entity__input[data-v-611a11f1] {\n background-color: var(--idoole-black-02);\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["/Users/huangshan/Goldgov/front/ganjiao/base-elearning-frontend-model/packages/components/packages/select-entity/src/index.vue","index.vue"],"names":[],"mappings":"AA6EA;EACA,eAAA;EACA,iBAAA;EACA,kBAAA;EACA,WAAA;EACA,aAAA;EACA,6BAAA;EACA,kBAAA;EACA,uDAAA;AC5EA;AD6EA;EACA,yCAAA;AC3EA;AD6EA;EACA,eAAA;EACA,sBAAA;EACA,kBAAA;EACA,YAAA;EACA,gBAAA;EACA,gBAAA;AC3EA;AD6EA;EACA,eAAA;EACA,6BAAA;EACA,wCAAA;EACA,4DAAA;EACA,eAAA;EACA,gBAAA;EACA,mBAAA;AC3EA;AD8EA;EACA,iDAAA;AC3EA;AD6EA;EACA,wCAAA;AC1EA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\n <div class=\"g-select-entity__wrapper\" :class=\"disabled ? 'g-select-entity__disabled' : ''\">\n <span class=\"select-entity__input\">\n <a-tag\n v-for=\"(item, inx) in getValueList()\"\n :key=\"item.value\"\n :closable=\"!disabled && !getIsMaxCount()\"\n @close=\"onClose(...arguments, inx)\"\n >\n {{ item.label }}\n </a-tag>\n <a-tag v-if=\"getIsMaxCount()\">......</a-tag>\n </span>\n <span class=\"select-entity__addon\" @click=\"onChange\">{{ addonAfter }}</span>\n <slot></slot>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'ele-select-entity',\n props: {\n value: {\n type: [Array, Object]\n },\n multiple: {\n type: Boolean,\n default: true\n },\n maxCount: {\n type: Number,\n default: 7\n },\n disabled: {\n type: Boolean,\n default: false\n },\n addonAfter: {\n type: String,\n default: '选择'\n }\n },\n methods: {\n getValueList () {\n if (this.value) {\n if (this.multiple) {\n return this.getIsMaxCount() ? this.value.slice(0, this.maxCount) : this.value\n }\n return [this.value]\n }\n return []\n },\n getIsMaxCount () {\n if (this.value && this.multiple) {\n return this.value.length >= this.maxCount\n }\n return false\n },\n onChange () {\n if (this.disabled) return\n this.$emit('change', this.value)\n },\n onClose (e, inx) {\n e = window.event || e\n e.preventDefault()\n if (!this.multiple) {\n this.$emit('change', null)\n return\n }\n this.value.splice(inx, 1)\n this.$emit('change', this.value)\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.g-select-entity__wrapper {\n font-size: 14px;\n line-height: 30px;\n position: relative;\n width: 100%;\n display: flex;\n color: var(--idoole-black-07);\n border-radius: 4px;\n border: 1px solid var(--idooel-form-title-border-color);\n &:hover {\n border-color: var(--idooel-primary-color);\n }\n .select-entity__input {\n padding: 0 11px;\n background-color: #fff;\n border-radius: 4px;\n flex-grow: 1;\n min-height: 30px;\n text-align: left;\n }\n .select-entity__addon {\n padding: 0 11px;\n color: var(--idoole-black-07);\n background-color: var(--idoole-black-02);\n border-left: 1px solid var(--idooel-form-title-border-color);\n cursor: pointer;\n min-height: 30px;\n white-space: nowrap;\n }\n}\n.has-error .g-select-entity__wrapper {\n border-color: var(--idooel-form-border-err-color);\n}\n.g-select-entity__disabled .select-entity__input {\n background-color: var(--idoole-black-02);\n}\n</style>",".g-select-entity__wrapper {\n font-size: 14px;\n line-height: 30px;\n position: relative;\n width: 100%;\n display: flex;\n color: var(--idoole-black-07);\n border-radius: 4px;\n border: 1px solid var(--idooel-form-title-border-color);\n}\n.g-select-entity__wrapper:hover {\n border-color: var(--idooel-primary-color);\n}\n.g-select-entity__wrapper .select-entity__input {\n padding: 0 11px;\n background-color: #fff;\n border-radius: 4px;\n flex-grow: 1;\n min-height: 30px;\n text-align: left;\n}\n.g-select-entity__wrapper .select-entity__addon {\n padding: 0 11px;\n color: var(--idoole-black-07);\n background-color: var(--idoole-black-02);\n border-left: 1px solid var(--idooel-form-title-border-color);\n cursor: pointer;\n min-height: 30px;\n white-space: nowrap;\n}\n\n.has-error .g-select-entity__wrapper {\n border-color: var(--idooel-form-border-err-color);\n}\n\n.g-select-entity__disabled .select-entity__input {\n background-color: var(--idoole-black-02);\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
3415
3403
|
|
|
3416
3404
|
};
|
|
3417
3405
|
/* scoped */
|
|
3418
|
-
const __vue_scope_id__$
|
|
3406
|
+
const __vue_scope_id__$d = "data-v-611a11f1";
|
|
3419
3407
|
/* module identifier */
|
|
3420
|
-
const __vue_module_identifier__$
|
|
3408
|
+
const __vue_module_identifier__$d = undefined;
|
|
3421
3409
|
/* functional template */
|
|
3422
|
-
const __vue_is_functional_template__$
|
|
3410
|
+
const __vue_is_functional_template__$d = false;
|
|
3423
3411
|
/* style inject SSR */
|
|
3424
3412
|
|
|
3425
3413
|
/* style inject shadow dom */
|
|
3426
3414
|
|
|
3427
3415
|
|
|
3428
3416
|
|
|
3429
|
-
const __vue_component__$
|
|
3430
|
-
{ render: __vue_render__$
|
|
3431
|
-
__vue_inject_styles__$
|
|
3432
|
-
__vue_script__$
|
|
3433
|
-
__vue_scope_id__$
|
|
3434
|
-
__vue_is_functional_template__$
|
|
3435
|
-
__vue_module_identifier__$
|
|
3417
|
+
const __vue_component__$d = /*#__PURE__*/normalizeComponent(
|
|
3418
|
+
{ render: __vue_render__$d, staticRenderFns: __vue_staticRenderFns__$d },
|
|
3419
|
+
__vue_inject_styles__$d,
|
|
3420
|
+
__vue_script__$d,
|
|
3421
|
+
__vue_scope_id__$d,
|
|
3422
|
+
__vue_is_functional_template__$d,
|
|
3423
|
+
__vue_module_identifier__$d,
|
|
3436
3424
|
false,
|
|
3437
3425
|
createInjector,
|
|
3438
3426
|
undefined,
|
|
@@ -3446,7 +3434,7 @@ __vue_render__$8._withStripped = true;
|
|
|
3446
3434
|
//
|
|
3447
3435
|
//
|
|
3448
3436
|
|
|
3449
|
-
var script$
|
|
3437
|
+
var script$c = {
|
|
3450
3438
|
name: 'ele-input-number',
|
|
3451
3439
|
props: {
|
|
3452
3440
|
precision: {
|
|
@@ -3464,10 +3452,10 @@ var script$7 = {
|
|
|
3464
3452
|
};
|
|
3465
3453
|
|
|
3466
3454
|
/* script */
|
|
3467
|
-
const __vue_script__$
|
|
3455
|
+
const __vue_script__$c = script$c;
|
|
3468
3456
|
|
|
3469
3457
|
/* template */
|
|
3470
|
-
var __vue_render__$
|
|
3458
|
+
var __vue_render__$c = function () {
|
|
3471
3459
|
var _vm = this;
|
|
3472
3460
|
var _h = _vm.$createElement;
|
|
3473
3461
|
var _c = _vm._self._c || _h;
|
|
@@ -3491,17 +3479,17 @@ var __vue_render__$7 = function () {
|
|
|
3491
3479
|
1
|
|
3492
3480
|
)
|
|
3493
3481
|
};
|
|
3494
|
-
var __vue_staticRenderFns__$
|
|
3495
|
-
__vue_render__$
|
|
3482
|
+
var __vue_staticRenderFns__$c = [];
|
|
3483
|
+
__vue_render__$c._withStripped = true;
|
|
3496
3484
|
|
|
3497
3485
|
/* style */
|
|
3498
|
-
const __vue_inject_styles__$
|
|
3486
|
+
const __vue_inject_styles__$c = undefined;
|
|
3499
3487
|
/* scoped */
|
|
3500
|
-
const __vue_scope_id__$
|
|
3488
|
+
const __vue_scope_id__$c = undefined;
|
|
3501
3489
|
/* module identifier */
|
|
3502
|
-
const __vue_module_identifier__$
|
|
3490
|
+
const __vue_module_identifier__$c = undefined;
|
|
3503
3491
|
/* functional template */
|
|
3504
|
-
const __vue_is_functional_template__$
|
|
3492
|
+
const __vue_is_functional_template__$c = false;
|
|
3505
3493
|
/* style inject */
|
|
3506
3494
|
|
|
3507
3495
|
/* style inject SSR */
|
|
@@ -3510,13 +3498,13 @@ __vue_render__$7._withStripped = true;
|
|
|
3510
3498
|
|
|
3511
3499
|
|
|
3512
3500
|
|
|
3513
|
-
const __vue_component__$
|
|
3514
|
-
{ render: __vue_render__$
|
|
3515
|
-
__vue_inject_styles__$
|
|
3516
|
-
__vue_script__$
|
|
3517
|
-
__vue_scope_id__$
|
|
3518
|
-
__vue_is_functional_template__$
|
|
3519
|
-
__vue_module_identifier__$
|
|
3501
|
+
const __vue_component__$c = /*#__PURE__*/normalizeComponent(
|
|
3502
|
+
{ render: __vue_render__$c, staticRenderFns: __vue_staticRenderFns__$c },
|
|
3503
|
+
__vue_inject_styles__$c,
|
|
3504
|
+
__vue_script__$c,
|
|
3505
|
+
__vue_scope_id__$c,
|
|
3506
|
+
__vue_is_functional_template__$c,
|
|
3507
|
+
__vue_module_identifier__$c,
|
|
3520
3508
|
false,
|
|
3521
3509
|
undefined,
|
|
3522
3510
|
undefined,
|
|
@@ -3528,7 +3516,7 @@ __vue_render__$7._withStripped = true;
|
|
|
3528
3516
|
//
|
|
3529
3517
|
//
|
|
3530
3518
|
|
|
3531
|
-
var script$
|
|
3519
|
+
var script$b = {
|
|
3532
3520
|
name: 'ele-checkbox',
|
|
3533
3521
|
props: {
|
|
3534
3522
|
value: {
|
|
@@ -3552,10 +3540,10 @@ var script$6 = {
|
|
|
3552
3540
|
};
|
|
3553
3541
|
|
|
3554
3542
|
/* script */
|
|
3555
|
-
const __vue_script__$
|
|
3543
|
+
const __vue_script__$b = script$b;
|
|
3556
3544
|
|
|
3557
3545
|
/* template */
|
|
3558
|
-
var __vue_render__$
|
|
3546
|
+
var __vue_render__$b = function () {
|
|
3559
3547
|
var _vm = this;
|
|
3560
3548
|
var _h = _vm.$createElement;
|
|
3561
3549
|
var _c = _vm._self._c || _h;
|
|
@@ -3568,34 +3556,34 @@ var __vue_render__$6 = function () {
|
|
|
3568
3556
|
on: { change: _vm.onChange },
|
|
3569
3557
|
})
|
|
3570
3558
|
};
|
|
3571
|
-
var __vue_staticRenderFns__$
|
|
3572
|
-
__vue_render__$
|
|
3559
|
+
var __vue_staticRenderFns__$b = [];
|
|
3560
|
+
__vue_render__$b._withStripped = true;
|
|
3573
3561
|
|
|
3574
3562
|
/* style */
|
|
3575
|
-
const __vue_inject_styles__$
|
|
3563
|
+
const __vue_inject_styles__$b = function (inject) {
|
|
3576
3564
|
if (!inject) return
|
|
3577
|
-
inject("data-v-
|
|
3565
|
+
inject("data-v-b24f06c0_0", { source: ".ant-checkbox-group[data-v-b24f06c0] {\n text-align: left;\n line-height: 32px;\n}\n.has-error .ant-checkbox-group[data-v-b24f06c0] .ant-checkbox-wrapper {\n color: var(--idooel-form-border-err-color);\n}\n.has-error .ant-checkbox-group[data-v-b24f06c0] .ant-checkbox-inner {\n border-color: var(--idooel-form-border-err-color);\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["/Users/huangshan/Goldgov/front/ganjiao/base-elearning-frontend-model/packages/components/packages/checkbox/src/index.vue","index.vue"],"names":[],"mappings":"AA6BA;EACA,gBAAA;EACA,iBAAA;AC5BA;ADgCA;EACA,0CAAA;AC7BA;AD+BA;EACA,iDAAA;AC7BA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\n <a-checkbox-group :options=\"dataSource\" :disabled=\"disabled\" :defaultValue=\"value\" @change=\"onChange\"></a-checkbox-group>\n</template>\n\n<script>\nexport default {\n name: 'ele-checkbox',\n props: {\n value: {\n type: Array\n },\n dataSource: {\n type: Array,\n default: () => []\n },\n disabled: {\n type: Boolean,\n default: false\n }\n },\n methods: {\n onChange (value) {\n this.$emit('change', value)\n this.$emit('input', value)\n }\n }\n}\n</script>\n<style lang=\"scss\" scoped>\n.ant-checkbox-group {\n text-align: left;\n line-height: 32px;\n}\n.has-error {\n .ant-checkbox-group {\n ::v-deep .ant-checkbox-wrapper {\n color: var(--idooel-form-border-err-color);\n }\n ::v-deep .ant-checkbox-inner {\n border-color: var(--idooel-form-border-err-color);\n }\n }\n}\n</style>",".ant-checkbox-group {\n text-align: left;\n line-height: 32px;\n}\n\n.has-error .ant-checkbox-group ::v-deep .ant-checkbox-wrapper {\n color: var(--idooel-form-border-err-color);\n}\n.has-error .ant-checkbox-group ::v-deep .ant-checkbox-inner {\n border-color: var(--idooel-form-border-err-color);\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
3578
3566
|
|
|
3579
3567
|
};
|
|
3580
3568
|
/* scoped */
|
|
3581
|
-
const __vue_scope_id__$
|
|
3569
|
+
const __vue_scope_id__$b = "data-v-b24f06c0";
|
|
3582
3570
|
/* module identifier */
|
|
3583
|
-
const __vue_module_identifier__$
|
|
3571
|
+
const __vue_module_identifier__$b = undefined;
|
|
3584
3572
|
/* functional template */
|
|
3585
|
-
const __vue_is_functional_template__$
|
|
3573
|
+
const __vue_is_functional_template__$b = false;
|
|
3586
3574
|
/* style inject SSR */
|
|
3587
3575
|
|
|
3588
3576
|
/* style inject shadow dom */
|
|
3589
3577
|
|
|
3590
3578
|
|
|
3591
3579
|
|
|
3592
|
-
const __vue_component__$
|
|
3593
|
-
{ render: __vue_render__$
|
|
3594
|
-
__vue_inject_styles__$
|
|
3595
|
-
__vue_script__$
|
|
3596
|
-
__vue_scope_id__$
|
|
3597
|
-
__vue_is_functional_template__$
|
|
3598
|
-
__vue_module_identifier__$
|
|
3580
|
+
const __vue_component__$b = /*#__PURE__*/normalizeComponent(
|
|
3581
|
+
{ render: __vue_render__$b, staticRenderFns: __vue_staticRenderFns__$b },
|
|
3582
|
+
__vue_inject_styles__$b,
|
|
3583
|
+
__vue_script__$b,
|
|
3584
|
+
__vue_scope_id__$b,
|
|
3585
|
+
__vue_is_functional_template__$b,
|
|
3586
|
+
__vue_module_identifier__$b,
|
|
3599
3587
|
false,
|
|
3600
3588
|
createInjector,
|
|
3601
3589
|
undefined,
|
|
@@ -3611,8 +3599,12 @@ __vue_render__$6._withStripped = true;
|
|
|
3611
3599
|
//
|
|
3612
3600
|
//
|
|
3613
3601
|
|
|
3614
|
-
var script$
|
|
3602
|
+
var script$a = {
|
|
3615
3603
|
name: 'ele-radio',
|
|
3604
|
+
model: {
|
|
3605
|
+
prop: 'value',
|
|
3606
|
+
event: 'change'
|
|
3607
|
+
},
|
|
3616
3608
|
props: {
|
|
3617
3609
|
value: {
|
|
3618
3610
|
type: [String, Array, Number]
|
|
@@ -3635,17 +3627,17 @@ var script$5 = {
|
|
|
3635
3627
|
};
|
|
3636
3628
|
|
|
3637
3629
|
/* script */
|
|
3638
|
-
const __vue_script__$
|
|
3630
|
+
const __vue_script__$a = script$a;
|
|
3639
3631
|
|
|
3640
3632
|
/* template */
|
|
3641
|
-
var __vue_render__$
|
|
3633
|
+
var __vue_render__$a = function () {
|
|
3642
3634
|
var _vm = this;
|
|
3643
3635
|
var _h = _vm.$createElement;
|
|
3644
3636
|
var _c = _vm._self._c || _h;
|
|
3645
3637
|
return _c(
|
|
3646
3638
|
"a-radio-group",
|
|
3647
3639
|
{
|
|
3648
|
-
attrs: {
|
|
3640
|
+
attrs: { value: _vm.value, disabled: _vm.disabled },
|
|
3649
3641
|
on: { change: _vm.onChange },
|
|
3650
3642
|
},
|
|
3651
3643
|
_vm._l(_vm.dataSource, function (item) {
|
|
@@ -3656,34 +3648,34 @@ var __vue_render__$5 = function () {
|
|
|
3656
3648
|
1
|
|
3657
3649
|
)
|
|
3658
3650
|
};
|
|
3659
|
-
var __vue_staticRenderFns__$
|
|
3660
|
-
__vue_render__$
|
|
3651
|
+
var __vue_staticRenderFns__$a = [];
|
|
3652
|
+
__vue_render__$a._withStripped = true;
|
|
3661
3653
|
|
|
3662
3654
|
/* style */
|
|
3663
|
-
const __vue_inject_styles__$
|
|
3655
|
+
const __vue_inject_styles__$a = function (inject) {
|
|
3664
3656
|
if (!inject) return
|
|
3665
|
-
inject("data-v-
|
|
3657
|
+
inject("data-v-ec29379c_0", { source: ".ant-radio-group[data-v-ec29379c] {\n text-align: left;\n line-height: 32px;\n}\n.has-error .ant-radio-group[data-v-ec29379c] .ant-radio-wrapper {\n color: var(--idooel-form-border-err-color);\n}\n.has-error .ant-radio-group[data-v-ec29379c] .ant-radio-inner {\n border-color: var(--idooel-form-border-err-color);\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["/Users/huangshan/Goldgov/front/ganjiao/base-elearning-frontend-model/packages/components/packages/radio/src/index.vue","index.vue"],"names":[],"mappings":"AAqCA;EACA,gBAAA;EACA,iBAAA;ACpCA;ADwCA;EACA,0CAAA;ACrCA;ADuCA;EACA,iDAAA;ACrCA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\n <a-radio-group :value=\"value\" @change=\"onChange\" :disabled=\"disabled\">\n <a-radio v-for=\"item in dataSource\" :key=\"item.value\" :value=\"item.value\">\n {{ item.label }}\n </a-radio>\n </a-radio-group>\n</template>\n\n<script>\nexport default {\n name: 'ele-radio',\n model: {\n prop: 'value',\n event: 'change'\n },\n props: {\n value: {\n type: [String, Array, Number]\n },\n dataSource: {\n type: Array,\n default: () => []\n },\n disabled: {\n type: Boolean,\n default: false\n }\n },\n methods: {\n onChange (e) {\n this.$emit('change', e.target.value)\n this.$emit('input', e.target.value)\n }\n }\n}\n</script>\n<style lang=\"scss\" scoped>\n.ant-radio-group {\n text-align: left;\n line-height: 32px;\n}\n.has-error {\n .ant-radio-group {\n ::v-deep .ant-radio-wrapper {\n color: var(--idooel-form-border-err-color);\n }\n ::v-deep .ant-radio-inner {\n border-color: var(--idooel-form-border-err-color);\n }\n }\n}\n</style>",".ant-radio-group {\n text-align: left;\n line-height: 32px;\n}\n\n.has-error .ant-radio-group ::v-deep .ant-radio-wrapper {\n color: var(--idooel-form-border-err-color);\n}\n.has-error .ant-radio-group ::v-deep .ant-radio-inner {\n border-color: var(--idooel-form-border-err-color);\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
3666
3658
|
|
|
3667
3659
|
};
|
|
3668
3660
|
/* scoped */
|
|
3669
|
-
const __vue_scope_id__$
|
|
3661
|
+
const __vue_scope_id__$a = "data-v-ec29379c";
|
|
3670
3662
|
/* module identifier */
|
|
3671
|
-
const __vue_module_identifier__$
|
|
3663
|
+
const __vue_module_identifier__$a = undefined;
|
|
3672
3664
|
/* functional template */
|
|
3673
|
-
const __vue_is_functional_template__$
|
|
3665
|
+
const __vue_is_functional_template__$a = false;
|
|
3674
3666
|
/* style inject SSR */
|
|
3675
3667
|
|
|
3676
3668
|
/* style inject shadow dom */
|
|
3677
3669
|
|
|
3678
3670
|
|
|
3679
3671
|
|
|
3680
|
-
const __vue_component__$
|
|
3681
|
-
{ render: __vue_render__$
|
|
3682
|
-
__vue_inject_styles__$
|
|
3683
|
-
__vue_script__$
|
|
3684
|
-
__vue_scope_id__$
|
|
3685
|
-
__vue_is_functional_template__$
|
|
3686
|
-
__vue_module_identifier__$
|
|
3672
|
+
const __vue_component__$a = /*#__PURE__*/normalizeComponent(
|
|
3673
|
+
{ render: __vue_render__$a, staticRenderFns: __vue_staticRenderFns__$a },
|
|
3674
|
+
__vue_inject_styles__$a,
|
|
3675
|
+
__vue_script__$a,
|
|
3676
|
+
__vue_scope_id__$a,
|
|
3677
|
+
__vue_is_functional_template__$a,
|
|
3678
|
+
__vue_module_identifier__$a,
|
|
3687
3679
|
false,
|
|
3688
3680
|
createInjector,
|
|
3689
3681
|
undefined,
|
|
@@ -3691,38 +3683,94 @@ __vue_render__$5._withStripped = true;
|
|
|
3691
3683
|
);
|
|
3692
3684
|
|
|
3693
3685
|
//
|
|
3694
|
-
var script$
|
|
3686
|
+
var script$9 = {
|
|
3695
3687
|
name: 'ele-form',
|
|
3696
3688
|
components: {
|
|
3697
|
-
EleSelect: __vue_component__$
|
|
3698
|
-
EleInput: __vue_component__$
|
|
3699
|
-
EleTextarea: __vue_component__$
|
|
3700
|
-
EleUpload: __vue_component__$
|
|
3701
|
-
EleSelectEntity: __vue_component__$
|
|
3702
|
-
EleInputNumber: __vue_component__$
|
|
3703
|
-
EleCheckbox: __vue_component__$
|
|
3704
|
-
EleRadio: __vue_component__$
|
|
3689
|
+
EleSelect: __vue_component__$o,
|
|
3690
|
+
EleInput: __vue_component__$p,
|
|
3691
|
+
EleTextarea: __vue_component__$g,
|
|
3692
|
+
EleUpload: __vue_component__$e,
|
|
3693
|
+
EleSelectEntity: __vue_component__$d,
|
|
3694
|
+
EleInputNumber: __vue_component__$c,
|
|
3695
|
+
EleCheckbox: __vue_component__$b,
|
|
3696
|
+
EleRadio: __vue_component__$a
|
|
3705
3697
|
},
|
|
3706
3698
|
props: {
|
|
3699
|
+
formName: {
|
|
3700
|
+
type: [Number, String],
|
|
3701
|
+
default: 'coordinated'
|
|
3702
|
+
},
|
|
3707
3703
|
elements: {
|
|
3708
3704
|
type: Array,
|
|
3709
3705
|
default: () => []
|
|
3710
3706
|
}
|
|
3711
3707
|
},
|
|
3712
3708
|
data() {
|
|
3713
|
-
return {
|
|
3714
|
-
|
|
3715
|
-
|
|
3716
|
-
|
|
3717
|
-
|
|
3718
|
-
|
|
3709
|
+
return {};
|
|
3710
|
+
},
|
|
3711
|
+
computed: {
|
|
3712
|
+
form() {
|
|
3713
|
+
return this.$form.createForm(this, {
|
|
3714
|
+
name: this.formName
|
|
3715
|
+
});
|
|
3716
|
+
},
|
|
3717
|
+
exposedMethods() {
|
|
3718
|
+
return {
|
|
3719
|
+
setFieldsValue: this.setFieldsValue,
|
|
3720
|
+
getFieldsValue: this.getFieldsValue
|
|
3721
|
+
};
|
|
3722
|
+
}
|
|
3719
3723
|
},
|
|
3720
3724
|
methods: {
|
|
3721
|
-
|
|
3725
|
+
evalDisabledExpression() {
|
|
3726
|
+
this.elements.forEach(ele => {
|
|
3727
|
+
const {
|
|
3728
|
+
disabled
|
|
3729
|
+
} = ele;
|
|
3730
|
+
const ret = this.executeExpression(disabled);
|
|
3731
|
+
this.$set(ele, '_disabled', ret);
|
|
3732
|
+
});
|
|
3733
|
+
},
|
|
3734
|
+
executeExpression(expression) {
|
|
3735
|
+
if (type.isBool(expression)) return expression;
|
|
3736
|
+
if (type.isEmpty(expression)) return false;
|
|
3737
|
+
return parse(expression, {
|
|
3738
|
+
...this.getFieldsValue()
|
|
3739
|
+
});
|
|
3740
|
+
},
|
|
3741
|
+
onChange(value, props) {
|
|
3742
|
+
const {
|
|
3743
|
+
name
|
|
3744
|
+
} = props;
|
|
3722
3745
|
this.setFieldsValue({
|
|
3723
|
-
[
|
|
3746
|
+
[name]: value
|
|
3747
|
+
});
|
|
3748
|
+
this.evalDisabledExpression();
|
|
3749
|
+
this.$emit('change', {
|
|
3750
|
+
value,
|
|
3751
|
+
props,
|
|
3752
|
+
exposed: {
|
|
3753
|
+
...this.exposedMethods
|
|
3754
|
+
}
|
|
3724
3755
|
});
|
|
3725
3756
|
},
|
|
3757
|
+
collectDefaultValues() {
|
|
3758
|
+
const ret = this.elements.reduce((ret, props) => {
|
|
3759
|
+
const {
|
|
3760
|
+
name,
|
|
3761
|
+
defaultValue
|
|
3762
|
+
} = props;
|
|
3763
|
+
if (defaultValue) {
|
|
3764
|
+
ret[name] = defaultValue;
|
|
3765
|
+
}
|
|
3766
|
+
return ret;
|
|
3767
|
+
}, {});
|
|
3768
|
+
return ret;
|
|
3769
|
+
},
|
|
3770
|
+
setDefaultValues() {
|
|
3771
|
+
const defaultValues = this.collectDefaultValues();
|
|
3772
|
+
this.setFieldsValue(defaultValues);
|
|
3773
|
+
},
|
|
3726
3774
|
validateFields() {
|
|
3727
3775
|
let ret = false;
|
|
3728
3776
|
this.form.validateFields((error, values) => {
|
|
@@ -3736,14 +3784,18 @@ var script$4 = {
|
|
|
3736
3784
|
getFieldsValue() {
|
|
3737
3785
|
return this.form.getFieldsValue();
|
|
3738
3786
|
}
|
|
3787
|
+
},
|
|
3788
|
+
mounted() {
|
|
3789
|
+
this.setDefaultValues();
|
|
3790
|
+
this.evalDisabledExpression();
|
|
3739
3791
|
}
|
|
3740
3792
|
};
|
|
3741
3793
|
|
|
3742
3794
|
/* script */
|
|
3743
|
-
const __vue_script__$
|
|
3795
|
+
const __vue_script__$9 = script$9;
|
|
3744
3796
|
|
|
3745
3797
|
/* template */
|
|
3746
|
-
var __vue_render__$
|
|
3798
|
+
var __vue_render__$9 = function () {
|
|
3747
3799
|
var _vm = this;
|
|
3748
3800
|
var _h = _vm.$createElement;
|
|
3749
3801
|
var _c = _vm._self._c || _h;
|
|
@@ -3783,7 +3835,15 @@ var __vue_render__$4 = function () {
|
|
|
3783
3835
|
},
|
|
3784
3836
|
],
|
|
3785
3837
|
staticStyle: { width: "100%" },
|
|
3786
|
-
attrs: {
|
|
3838
|
+
attrs: {
|
|
3839
|
+
disabled: _vm.executeExpression(ele._disabled),
|
|
3840
|
+
"max-length": ele.maxLength,
|
|
3841
|
+
},
|
|
3842
|
+
on: {
|
|
3843
|
+
change: function ($event) {
|
|
3844
|
+
return _vm.onChange($event, ele)
|
|
3845
|
+
},
|
|
3846
|
+
},
|
|
3787
3847
|
}),
|
|
3788
3848
|
],
|
|
3789
3849
|
1
|
|
@@ -3809,12 +3869,13 @@ var __vue_render__$4 = function () {
|
|
|
3809
3869
|
attrs: {
|
|
3810
3870
|
"max-length": ele.maxLength,
|
|
3811
3871
|
autosize: ele.autosize,
|
|
3872
|
+
disabled: _vm.executeExpression(ele._disabled),
|
|
3812
3873
|
"allow-clear": ele.allowClear,
|
|
3813
3874
|
placeholder: ele.placeholder,
|
|
3814
3875
|
},
|
|
3815
3876
|
on: {
|
|
3816
|
-
|
|
3817
|
-
return _vm.
|
|
3877
|
+
change: function ($event) {
|
|
3878
|
+
return _vm.onChange($event, ele)
|
|
3818
3879
|
},
|
|
3819
3880
|
},
|
|
3820
3881
|
}),
|
|
@@ -3839,7 +3900,12 @@ var __vue_render__$4 = function () {
|
|
|
3839
3900
|
},
|
|
3840
3901
|
],
|
|
3841
3902
|
staticStyle: { width: "100%" },
|
|
3842
|
-
attrs: {
|
|
3903
|
+
attrs: {
|
|
3904
|
+
"data-source": ele.optionList,
|
|
3905
|
+
disabled: _vm.executeExpression(ele._disabled),
|
|
3906
|
+
code: ele.code,
|
|
3907
|
+
params: ele.params,
|
|
3908
|
+
},
|
|
3843
3909
|
}),
|
|
3844
3910
|
],
|
|
3845
3911
|
1
|
|
@@ -3867,6 +3933,31 @@ var __vue_render__$4 = function () {
|
|
|
3867
3933
|
1
|
|
3868
3934
|
),
|
|
3869
3935
|
]
|
|
3936
|
+
: ele.type == "ele-date-range"
|
|
3937
|
+
? [
|
|
3938
|
+
_c(
|
|
3939
|
+
"a-form-item",
|
|
3940
|
+
{ attrs: { label: ele.label + ":" } },
|
|
3941
|
+
[
|
|
3942
|
+
_c("ele-date-range", {
|
|
3943
|
+
directives: [
|
|
3944
|
+
{
|
|
3945
|
+
name: "decorator",
|
|
3946
|
+
rawName: "v-decorator",
|
|
3947
|
+
value: [ele.name, { rules: ele.rules }],
|
|
3948
|
+
expression:
|
|
3949
|
+
"[ele.name, { rules: ele.rules }]",
|
|
3950
|
+
},
|
|
3951
|
+
],
|
|
3952
|
+
staticStyle: { width: "100%" },
|
|
3953
|
+
attrs: {
|
|
3954
|
+
disabled: _vm.executeExpression(ele._disabled),
|
|
3955
|
+
},
|
|
3956
|
+
}),
|
|
3957
|
+
],
|
|
3958
|
+
1
|
|
3959
|
+
),
|
|
3960
|
+
]
|
|
3870
3961
|
: ele.type == "SelectEntity"
|
|
3871
3962
|
? [
|
|
3872
3963
|
_c(
|
|
@@ -3909,7 +4000,17 @@ var __vue_render__$4 = function () {
|
|
|
3909
4000
|
},
|
|
3910
4001
|
],
|
|
3911
4002
|
staticStyle: { width: "100%" },
|
|
3912
|
-
attrs: {
|
|
4003
|
+
attrs: {
|
|
4004
|
+
precision: ele.precision,
|
|
4005
|
+
disabled: _vm.executeExpression(
|
|
4006
|
+
ele._disabled
|
|
4007
|
+
),
|
|
4008
|
+
},
|
|
4009
|
+
on: {
|
|
4010
|
+
change: function ($event) {
|
|
4011
|
+
return _vm.onChange($event, ele)
|
|
4012
|
+
},
|
|
4013
|
+
},
|
|
3913
4014
|
},
|
|
3914
4015
|
"ele-input-number",
|
|
3915
4016
|
ele.props,
|
|
@@ -3937,7 +4038,10 @@ var __vue_render__$4 = function () {
|
|
|
3937
4038
|
},
|
|
3938
4039
|
],
|
|
3939
4040
|
staticStyle: { width: "100%" },
|
|
3940
|
-
attrs: {
|
|
4041
|
+
attrs: {
|
|
4042
|
+
"data-source": ele.optionList,
|
|
4043
|
+
disabled: _vm.executeExpression(ele._disabled),
|
|
4044
|
+
},
|
|
3941
4045
|
}),
|
|
3942
4046
|
],
|
|
3943
4047
|
1
|
|
@@ -3960,7 +4064,15 @@ var __vue_render__$4 = function () {
|
|
|
3960
4064
|
},
|
|
3961
4065
|
],
|
|
3962
4066
|
staticStyle: { width: "100%" },
|
|
3963
|
-
attrs: {
|
|
4067
|
+
attrs: {
|
|
4068
|
+
disabled: _vm.executeExpression(ele._disabled),
|
|
4069
|
+
"data-source": ele.optionList,
|
|
4070
|
+
},
|
|
4071
|
+
on: {
|
|
4072
|
+
change: function ($event) {
|
|
4073
|
+
return _vm.onChange($event, ele)
|
|
4074
|
+
},
|
|
4075
|
+
},
|
|
3964
4076
|
}),
|
|
3965
4077
|
],
|
|
3966
4078
|
1
|
|
@@ -3980,42 +4092,1061 @@ var __vue_render__$4 = function () {
|
|
|
3980
4092
|
1
|
|
3981
4093
|
)
|
|
3982
4094
|
};
|
|
3983
|
-
var __vue_staticRenderFns__$
|
|
3984
|
-
__vue_render__$
|
|
4095
|
+
var __vue_staticRenderFns__$9 = [];
|
|
4096
|
+
__vue_render__$9._withStripped = true;
|
|
3985
4097
|
|
|
3986
4098
|
/* style */
|
|
3987
|
-
const __vue_inject_styles__$
|
|
4099
|
+
const __vue_inject_styles__$9 = function (inject) {
|
|
3988
4100
|
if (!inject) return
|
|
3989
|
-
inject("data-v-
|
|
4101
|
+
inject("data-v-18e5775b_0", { source: ".ele__form--wrapper[data-v-18e5775b] {\n background: #fff;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["/Users/huangshan/Goldgov/front/ganjiao/base-elearning-frontend-model/packages/components/packages/form/src/index.vue","index.vue"],"names":[],"mappings":"AA6MA;EACA,gBAAA;AC5MA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\n <div class=\"ele__form--wrapper\">\n <a-form :form=\"form\" layout=\"vertical\" class=\"ant-advanced-search-form\">\n <a-row :gutter=\"24\">\n <a-col :span=\"ele.span\" v-for=\"ele in elements\" :key=\"ele.name\">\n <template v-if=\"ele.type == 'Input'\">\n <a-form-item :label=\"`${ele.label}:`\">\n <ele-input \n @change=\"onChange($event, ele)\" \n :disabled=\"executeExpression(ele._disabled)\" \n :max-length=\"ele.maxLength\" \n v-decorator=\"[ele.name, { rules: ele.rules }]\" \n style=\"width:100%;\">\n </ele-input>\n </a-form-item>\n </template>\n <template v-else-if=\"ele.type == 'Textarea'\">\n <a-form-item :label=\"`${ele.label}:`\">\n <ele-textarea \n @change=\"onChange($event, ele)\"\n :max-length=\"ele.maxLength\"\n :autosize=\"ele.autosize\"\n :disabled=\"executeExpression(ele._disabled)\"\n :allow-clear=\"ele.allowClear\"\n :placeholder=\"ele.placeholder\"\n v-decorator=\"[ele.name, { rules: ele.rules }]\"\n style=\"width:100%;\">\n </ele-textarea>\n </a-form-item>\n </template>\n <template v-else-if=\"ele.type == 'Select'\">\n <a-form-item :label=\"`${ele.label}:`\">\n <ele-select \n :data-source=\"ele.optionList\" \n :disabled=\"executeExpression(ele._disabled)\" \n :code=\"ele.code\" \n :params=\"ele.params\" \n v-decorator=\"[ele.name, { rules: ele.rules }]\" \n style=\"width:100%;\">\n </ele-select>\n </a-form-item>\n </template>\n <template v-else-if=\"ele.type == 'ele-upload'\">\n <a-form-item :label=\"`${ele.label}:`\">\n <ele-upload v-decorator=\"[ele.name, { rules: ele.rules }]\" style=\"width:100%;\"></ele-upload>\n </a-form-item>\n </template>\n <template v-else-if=\"ele.type == 'ele-date-range'\">\n <a-form-item :label=\"`${ele.label}:`\">\n <ele-date-range \n :disabled=\"executeExpression(ele._disabled)\" \n v-decorator=\"[ele.name, { rules: ele.rules }]\" \n style=\"width:100%;\">\n </ele-date-range>\n </a-form-item>\n </template>\n <template v-else-if=\"ele.type == 'SelectEntity'\">\n <a-form-item :label=\"`${ele.label}:`\">\n <ele-select-entity \n v-decorator=\"[ele.name, { rules: ele.rules }]\" \n style=\"width:100%;\">\n </ele-select-entity>\n </a-form-item>\n </template>\n <template v-else-if=\"ele.type == 'InputNumber'\">\n <a-form-item :label=\"`${ele.label}:`\">\n <ele-input-number \n @change=\"onChange($event, ele)\" \n :precision=\"ele.precision\" \n :disabled=\"executeExpression(ele._disabled)\" \n v-decorator=\"[ele.name, { rules: ele.rules }]\" \n v-bind=\"ele.props\" \n style=\"width:100%;\">\n </ele-input-number>\n </a-form-item>\n </template>\n <template v-else-if=\"ele.type == 'Checkbox'\">\n <a-form-item :label=\"`${ele.label}:`\">\n <ele-checkbox \n :data-source=\"ele.optionList\" \n :disabled=\"executeExpression(ele._disabled)\" \n v-decorator=\"[ele.name, { rules: ele.rules }]\" \n style=\"width:100%;\">\n </ele-checkbox>\n </a-form-item>\n </template>\n <template v-else-if=\"ele.type == 'Radio'\">\n <a-form-item :label=\"`${ele.label}:`\">\n <ele-radio \n @change=\"onChange($event, ele)\" \n :disabled=\"executeExpression(ele._disabled)\" \n :data-source=\"ele.optionList\" \n v-decorator=\"[ele.name, { rules: ele.rules }]\" \n style=\"width:100%;\">\n </ele-radio>\n </a-form-item>\n </template>\n </a-col>\n </a-row>\n </a-form>\n </div>\n</template>\n\n<script>\nimport EleSelect from '../../select/src/index.vue'\nimport EleInput from '../../input/src/index.vue'\nimport EleTextarea from '../../textarea/src/index.vue'\nimport EleUpload from '../../upload/src/index.vue'\nimport EleSelectEntity from '../../select-entity/src/index.vue'\nimport EleInputNumber from '../../input-number/src/index.vue'\nimport EleCheckbox from '../../checkbox/src/index.vue'\nimport EleRadio from '../../radio/src/index.vue'\nimport { parse } from '@idooel/expression'\nimport { type } from '@idooel/shared'\nexport default {\n name: 'ele-form',\n components: {\n EleSelect,\n EleInput,\n EleTextarea,\n EleUpload,\n EleSelectEntity,\n EleInputNumber,\n EleCheckbox,\n EleRadio\n },\n props: {\n formName: {\n type: [Number, String],\n default: 'coordinated'\n },\n elements: {\n type: Array,\n default: () => []\n }\n },\n data () {\n return {}\n },\n computed: {\n form () {\n return this.$form.createForm(this, { name: this.formName })\n },\n exposedMethods () {\n return {\n setFieldsValue: this.setFieldsValue,\n getFieldsValue: this.getFieldsValue\n }\n }\n },\n methods: {\n evalDisabledExpression () {\n this.elements.forEach(ele => {\n const { disabled } = ele\n const ret = this.executeExpression(disabled)\n this.$set(ele, '_disabled', ret)\n })\n },\n executeExpression (expression) {\n if (type.isBool(expression)) return expression\n if (type.isEmpty(expression)) return false\n return parse(expression, { ...this.getFieldsValue() })\n },\n onChange (value, props) {\n const { name } = props\n this.setFieldsValue({ [name]: value })\n this.evalDisabledExpression()\n this.$emit('change', { value, props, exposed: { ...this.exposedMethods } })\n },\n collectDefaultValues () {\n const ret = this.elements.reduce((ret, props) => {\n const { name, defaultValue } = props\n if (defaultValue) {\n ret[name] = defaultValue\n }\n return ret\n }, {})\n return ret\n },\n setDefaultValues () {\n const defaultValues = this.collectDefaultValues()\n this.setFieldsValue(defaultValues)\n },\n validateFields () {\n let ret = false\n this.form.validateFields((error, values) => {\n ret = !error\n })\n return ret\n },\n setFieldsValue (props = {}) {\n this.form.setFieldsValue(props)\n },\n getFieldsValue () {\n return this.form.getFieldsValue()\n }\n },\n mounted() {\n this.setDefaultValues()\n this.evalDisabledExpression()\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.ele__form--wrapper {\n background: #fff;\n .ant-form-item {\n }\n}\n</style>",".ele__form--wrapper {\n background: #fff;\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
3990
4102
|
|
|
3991
4103
|
};
|
|
3992
4104
|
/* scoped */
|
|
3993
|
-
const __vue_scope_id__$
|
|
4105
|
+
const __vue_scope_id__$9 = "data-v-18e5775b";
|
|
3994
4106
|
/* module identifier */
|
|
3995
|
-
const __vue_module_identifier__$
|
|
4107
|
+
const __vue_module_identifier__$9 = undefined;
|
|
4108
|
+
/* functional template */
|
|
4109
|
+
const __vue_is_functional_template__$9 = false;
|
|
4110
|
+
/* style inject SSR */
|
|
4111
|
+
|
|
4112
|
+
/* style inject shadow dom */
|
|
4113
|
+
|
|
4114
|
+
|
|
4115
|
+
|
|
4116
|
+
const __vue_component__$9 = /*#__PURE__*/normalizeComponent(
|
|
4117
|
+
{ render: __vue_render__$9, staticRenderFns: __vue_staticRenderFns__$9 },
|
|
4118
|
+
__vue_inject_styles__$9,
|
|
4119
|
+
__vue_script__$9,
|
|
4120
|
+
__vue_scope_id__$9,
|
|
4121
|
+
__vue_is_functional_template__$9,
|
|
4122
|
+
__vue_module_identifier__$9,
|
|
4123
|
+
false,
|
|
4124
|
+
createInjector,
|
|
4125
|
+
undefined,
|
|
4126
|
+
undefined
|
|
4127
|
+
);
|
|
4128
|
+
|
|
4129
|
+
const BUILT_IN_EVENT_NAMES = {
|
|
4130
|
+
SUBMIT: 'submit',
|
|
4131
|
+
CANCEL: 'cancel',
|
|
4132
|
+
INCREASE: 'increase',
|
|
4133
|
+
DELETE: 'delete',
|
|
4134
|
+
NEXT: 'next',
|
|
4135
|
+
PREVIOUS: 'previous'
|
|
4136
|
+
};
|
|
4137
|
+
const RESERVE_EVENT_NAMES = {
|
|
4138
|
+
WATCH_FORM_STATUS: 'watch-form-status'
|
|
4139
|
+
};
|
|
4140
|
+
const parseFieldMap = (fieldMap = {}, dataSource = {}) => {
|
|
4141
|
+
let ret = {};
|
|
4142
|
+
Object.keys(fieldMap).forEach(key => {
|
|
4143
|
+
ret[fieldMap[key]] = parse(key, dataSource);
|
|
4144
|
+
});
|
|
4145
|
+
return ret;
|
|
4146
|
+
};
|
|
4147
|
+
|
|
4148
|
+
//
|
|
4149
|
+
var script$8 = {
|
|
4150
|
+
name: 'ele-form-group-model',
|
|
4151
|
+
components: {
|
|
4152
|
+
[__vue_component__$9.name]: __vue_component__$9,
|
|
4153
|
+
[__vue_component__$i.name]: __vue_component__$i
|
|
4154
|
+
},
|
|
4155
|
+
props: {
|
|
4156
|
+
mode: {
|
|
4157
|
+
type: String
|
|
4158
|
+
},
|
|
4159
|
+
fieldName: {
|
|
4160
|
+
type: String,
|
|
4161
|
+
default: 'formGroup'
|
|
4162
|
+
},
|
|
4163
|
+
groupMeta: {
|
|
4164
|
+
type: Array,
|
|
4165
|
+
default: () => []
|
|
4166
|
+
},
|
|
4167
|
+
footerMeta: {
|
|
4168
|
+
type: Object,
|
|
4169
|
+
default: () => {}
|
|
4170
|
+
},
|
|
4171
|
+
preRequest: {
|
|
4172
|
+
type: Object,
|
|
4173
|
+
default: () => {}
|
|
4174
|
+
},
|
|
4175
|
+
infoRequest: {
|
|
4176
|
+
type: Object,
|
|
4177
|
+
default: () => {}
|
|
4178
|
+
},
|
|
4179
|
+
submitRequest: {
|
|
4180
|
+
type: Object,
|
|
4181
|
+
default: () => {}
|
|
4182
|
+
}
|
|
4183
|
+
},
|
|
4184
|
+
data() {
|
|
4185
|
+
return {
|
|
4186
|
+
increaseCount: 1
|
|
4187
|
+
};
|
|
4188
|
+
},
|
|
4189
|
+
computed: {
|
|
4190
|
+
showFooterMeta() {
|
|
4191
|
+
return !type.isEmpty(this.footerMeta);
|
|
4192
|
+
},
|
|
4193
|
+
formRefBase() {
|
|
4194
|
+
return v4();
|
|
4195
|
+
},
|
|
4196
|
+
footerElements() {
|
|
4197
|
+
const {
|
|
4198
|
+
elements
|
|
4199
|
+
} = this.footerMeta;
|
|
4200
|
+
return elements.call(this);
|
|
4201
|
+
},
|
|
4202
|
+
assignAttrForEvents() {
|
|
4203
|
+
const events = this.footerElements.reduce((ret, ele) => {
|
|
4204
|
+
ret[ele.eventName] = e => {
|
|
4205
|
+
this.$emit(ele.eventName || 'click', {
|
|
4206
|
+
...e
|
|
4207
|
+
});
|
|
4208
|
+
};
|
|
4209
|
+
return ret;
|
|
4210
|
+
}, {});
|
|
4211
|
+
return {
|
|
4212
|
+
...this.$listeners,
|
|
4213
|
+
...events,
|
|
4214
|
+
[BUILT_IN_EVENT_NAMES.SUBMIT]: this[BUILT_IN_EVENT_NAMES.SUBMIT],
|
|
4215
|
+
[BUILT_IN_EVENT_NAMES.CANCEL]: this[BUILT_IN_EVENT_NAMES.CANCEL],
|
|
4216
|
+
[BUILT_IN_EVENT_NAMES.INCREASE]: this[BUILT_IN_EVENT_NAMES.INCREASE]
|
|
4217
|
+
};
|
|
4218
|
+
},
|
|
4219
|
+
getFormRefs() {
|
|
4220
|
+
return this.groupMeta.map((group, idx) => {
|
|
4221
|
+
if (!group.isGenTpl) {
|
|
4222
|
+
return this.$refs[group.key || `${this.formRefBase}__${idx}`];
|
|
4223
|
+
}
|
|
4224
|
+
return void 0;
|
|
4225
|
+
}).filter(item => !!item).flat();
|
|
4226
|
+
},
|
|
4227
|
+
formModels() {
|
|
4228
|
+
if (this.mode === 'increase') {
|
|
4229
|
+
//TODO increase mode to return formModels
|
|
4230
|
+
return this.getFormRefs.map(form => {
|
|
4231
|
+
return form.getFieldsValue();
|
|
4232
|
+
});
|
|
4233
|
+
} else {
|
|
4234
|
+
return this.getFormRefs.map(form => {
|
|
4235
|
+
const {
|
|
4236
|
+
$vnode: {
|
|
4237
|
+
data: {
|
|
4238
|
+
ref
|
|
4239
|
+
}
|
|
4240
|
+
}
|
|
4241
|
+
} = form;
|
|
4242
|
+
return {
|
|
4243
|
+
key: ref,
|
|
4244
|
+
value: form.getFieldsValue()
|
|
4245
|
+
};
|
|
4246
|
+
}).reduce((ret, props) => {
|
|
4247
|
+
ret[props.key] = props.value;
|
|
4248
|
+
return ret;
|
|
4249
|
+
}, {});
|
|
4250
|
+
}
|
|
4251
|
+
}
|
|
4252
|
+
},
|
|
4253
|
+
methods: {
|
|
4254
|
+
execFieldMap(fieldMap = {}, dataSource = {}) {
|
|
4255
|
+
const ret = parseFieldMap(fieldMap, {
|
|
4256
|
+
_route: this.$route.query,
|
|
4257
|
+
...dataSource
|
|
4258
|
+
});
|
|
4259
|
+
return ret;
|
|
4260
|
+
},
|
|
4261
|
+
onChangeFormStatus(props, key) {
|
|
4262
|
+
this.$emit(RESERVE_EVENT_NAMES.WATCH_FORM_STATUS, {
|
|
4263
|
+
key,
|
|
4264
|
+
...props
|
|
4265
|
+
});
|
|
4266
|
+
},
|
|
4267
|
+
async infoRequestTrigger() {
|
|
4268
|
+
const {
|
|
4269
|
+
url,
|
|
4270
|
+
requestType,
|
|
4271
|
+
params = {},
|
|
4272
|
+
fieldMap = {},
|
|
4273
|
+
headers = {}
|
|
4274
|
+
} = this.infoRequest;
|
|
4275
|
+
if (!url) return;
|
|
4276
|
+
net[requestType.toLowerCase()](url, {
|
|
4277
|
+
...params,
|
|
4278
|
+
...this.execFieldMap(fieldMap)
|
|
4279
|
+
}, {
|
|
4280
|
+
...headers
|
|
4281
|
+
}).then(resp => {
|
|
4282
|
+
const {
|
|
4283
|
+
data = {}
|
|
4284
|
+
} = resp;
|
|
4285
|
+
if (this.mode === 'increase') {
|
|
4286
|
+
this.renderIncreaseForm(data);
|
|
4287
|
+
}
|
|
4288
|
+
});
|
|
4289
|
+
},
|
|
4290
|
+
async preRequestTrigger() {
|
|
4291
|
+
const {
|
|
4292
|
+
url,
|
|
4293
|
+
requestType = 'GET',
|
|
4294
|
+
params = {},
|
|
4295
|
+
fieldMap = {},
|
|
4296
|
+
headers = {}
|
|
4297
|
+
} = this.preRequest;
|
|
4298
|
+
if (!url) return;
|
|
4299
|
+
net[requestType.toLowerCase()](url, {
|
|
4300
|
+
...params,
|
|
4301
|
+
...fieldMap
|
|
4302
|
+
}, {
|
|
4303
|
+
...headers
|
|
4304
|
+
}).then(resp => {
|
|
4305
|
+
const {
|
|
4306
|
+
data = {}
|
|
4307
|
+
} = resp;
|
|
4308
|
+
if (this.mode === 'increase') {
|
|
4309
|
+
this.renderIncreaseForm(data);
|
|
4310
|
+
}
|
|
4311
|
+
});
|
|
4312
|
+
},
|
|
4313
|
+
renderIncreaseForm(data = {}) {
|
|
4314
|
+
const formGroupValuesLength = data[this.fieldName].length;
|
|
4315
|
+
const genTplTarget = this.groupMeta.find(item => item.isGenTpl);
|
|
4316
|
+
const notGenTplPoolLength = this.groupMeta.filter(item => !item.isGenTpl).length;
|
|
4317
|
+
const genNum = formGroupValuesLength - notGenTplPoolLength;
|
|
4318
|
+
new Array(genNum).fill().forEach(() => {
|
|
4319
|
+
const form = this.genForm(genTplTarget);
|
|
4320
|
+
this.groupMeta.push(form);
|
|
4321
|
+
});
|
|
4322
|
+
const formGroupValues = data[this.fieldName];
|
|
4323
|
+
this.setFieldsValue(formGroupValues);
|
|
4324
|
+
},
|
|
4325
|
+
async submitRequestTrigger(props = {}) {
|
|
4326
|
+
const {
|
|
4327
|
+
url,
|
|
4328
|
+
requestType,
|
|
4329
|
+
headers = {},
|
|
4330
|
+
params = {},
|
|
4331
|
+
fieldMap = {}
|
|
4332
|
+
} = this.submitRequest;
|
|
4333
|
+
if (!url) return;
|
|
4334
|
+
const ret = await net[requestType.toLowerCase()](url, {
|
|
4335
|
+
...params,
|
|
4336
|
+
...this.execFieldMap(fieldMap, {
|
|
4337
|
+
...this.formModels
|
|
4338
|
+
}),
|
|
4339
|
+
[this.fieldName]: this.formModels
|
|
4340
|
+
}, {
|
|
4341
|
+
headers
|
|
4342
|
+
}).then(resp => {
|
|
4343
|
+
this.$emit(BUILT_IN_EVENT_NAMES.SUBMIT, {
|
|
4344
|
+
...props,
|
|
4345
|
+
formModel: {
|
|
4346
|
+
...this.formModels,
|
|
4347
|
+
...(resp.data || {})
|
|
4348
|
+
}
|
|
4349
|
+
});
|
|
4350
|
+
return resp.data;
|
|
4351
|
+
});
|
|
4352
|
+
return ret;
|
|
4353
|
+
},
|
|
4354
|
+
setFieldsValue(data = []) {
|
|
4355
|
+
this.getFormRefs.forEach((form, idx) => {
|
|
4356
|
+
form.setFieldsValue(data[idx]);
|
|
4357
|
+
});
|
|
4358
|
+
},
|
|
4359
|
+
[BUILT_IN_EVENT_NAMES.SUBMIT](props = {}) {
|
|
4360
|
+
const status = this.getFormRefs.map(form => {
|
|
4361
|
+
const status = form.validateFields();
|
|
4362
|
+
return status;
|
|
4363
|
+
}).every(item => item);
|
|
4364
|
+
if (status) {
|
|
4365
|
+
return this.submitRequestTrigger(props);
|
|
4366
|
+
} else {
|
|
4367
|
+
return false;
|
|
4368
|
+
}
|
|
4369
|
+
},
|
|
4370
|
+
[BUILT_IN_EVENT_NAMES.CANCEL](props = {}) {
|
|
4371
|
+
this.$emit(BUILT_IN_EVENT_NAMES.CANCEL, {
|
|
4372
|
+
...props
|
|
4373
|
+
});
|
|
4374
|
+
},
|
|
4375
|
+
genForm(base) {
|
|
4376
|
+
const {
|
|
4377
|
+
elements,
|
|
4378
|
+
title,
|
|
4379
|
+
buttonGroupMeta
|
|
4380
|
+
} = base;
|
|
4381
|
+
return {
|
|
4382
|
+
elements: JSON.parse(JSON.stringify(elements)),
|
|
4383
|
+
buttonGroupMeta,
|
|
4384
|
+
title: `${title}${this.increaseCount++}`,
|
|
4385
|
+
_gen: true
|
|
4386
|
+
};
|
|
4387
|
+
},
|
|
4388
|
+
handleClickDelete(props = {}, attr = {}, idx) {
|
|
4389
|
+
this.groupMeta.splice(idx, 1);
|
|
4390
|
+
this.$emit(BUILT_IN_EVENT_NAMES.DELETE, {
|
|
4391
|
+
...props
|
|
4392
|
+
});
|
|
4393
|
+
},
|
|
4394
|
+
[BUILT_IN_EVENT_NAMES.INCREASE](props) {
|
|
4395
|
+
const genTplTarget = this.groupMeta.find(item => item.isGenTpl);
|
|
4396
|
+
const form = this.genForm(genTplTarget);
|
|
4397
|
+
this.groupMeta.push(form);
|
|
4398
|
+
}
|
|
4399
|
+
},
|
|
4400
|
+
async mounted() {
|
|
4401
|
+
await this.preRequestTrigger();
|
|
4402
|
+
await this.infoRequestTrigger();
|
|
4403
|
+
}
|
|
4404
|
+
};
|
|
4405
|
+
|
|
4406
|
+
/* script */
|
|
4407
|
+
const __vue_script__$8 = script$8;
|
|
4408
|
+
|
|
4409
|
+
/* template */
|
|
4410
|
+
var __vue_render__$8 = function () {
|
|
4411
|
+
var _vm = this;
|
|
4412
|
+
var _h = _vm.$createElement;
|
|
4413
|
+
var _c = _vm._self._c || _h;
|
|
4414
|
+
return _c(
|
|
4415
|
+
"div",
|
|
4416
|
+
{ staticClass: "ele form-group-model__wrapper" },
|
|
4417
|
+
[
|
|
4418
|
+
_vm._l(_vm.groupMeta, function (group, idx) {
|
|
4419
|
+
return [
|
|
4420
|
+
!group.isGenTpl
|
|
4421
|
+
? _c(
|
|
4422
|
+
"div",
|
|
4423
|
+
{
|
|
4424
|
+
key: group.key || idx,
|
|
4425
|
+
staticClass: "form-group-model__from",
|
|
4426
|
+
},
|
|
4427
|
+
[
|
|
4428
|
+
_c("div", { staticClass: "form-group-model__form--title" }, [
|
|
4429
|
+
_c("div", [_vm._v(_vm._s(group.title))]),
|
|
4430
|
+
_vm._v(" "),
|
|
4431
|
+
_c(
|
|
4432
|
+
"div",
|
|
4433
|
+
{ staticClass: "form-group-model__form--buttons" },
|
|
4434
|
+
[
|
|
4435
|
+
group.buttonGroupMeta
|
|
4436
|
+
? _c(
|
|
4437
|
+
"ele-button-group",
|
|
4438
|
+
_vm._g(
|
|
4439
|
+
{
|
|
4440
|
+
attrs: {
|
|
4441
|
+
"data-source":
|
|
4442
|
+
group.buttonGroupMeta.elements.call(this),
|
|
4443
|
+
},
|
|
4444
|
+
on: {
|
|
4445
|
+
delete: function ($event) {
|
|
4446
|
+
return _vm.handleClickDelete(
|
|
4447
|
+
$event,
|
|
4448
|
+
group,
|
|
4449
|
+
idx
|
|
4450
|
+
)
|
|
4451
|
+
},
|
|
4452
|
+
},
|
|
4453
|
+
},
|
|
4454
|
+
_vm.assignAttrForEvents
|
|
4455
|
+
)
|
|
4456
|
+
)
|
|
4457
|
+
: _vm._e(),
|
|
4458
|
+
],
|
|
4459
|
+
1
|
|
4460
|
+
),
|
|
4461
|
+
]),
|
|
4462
|
+
_vm._v(" "),
|
|
4463
|
+
_c(
|
|
4464
|
+
"div",
|
|
4465
|
+
{ staticClass: "form-group-model__form--content" },
|
|
4466
|
+
[
|
|
4467
|
+
_c("ele-form", {
|
|
4468
|
+
ref: group.key || _vm.formRefBase + "__" + idx,
|
|
4469
|
+
refInFor: true,
|
|
4470
|
+
attrs: {
|
|
4471
|
+
"form-name": group.key || idx,
|
|
4472
|
+
elements: group.elements,
|
|
4473
|
+
},
|
|
4474
|
+
on: {
|
|
4475
|
+
change: function ($event) {
|
|
4476
|
+
return _vm.onChangeFormStatus(
|
|
4477
|
+
$event,
|
|
4478
|
+
group.key || idx
|
|
4479
|
+
)
|
|
4480
|
+
},
|
|
4481
|
+
},
|
|
4482
|
+
}),
|
|
4483
|
+
],
|
|
4484
|
+
1
|
|
4485
|
+
),
|
|
4486
|
+
]
|
|
4487
|
+
)
|
|
4488
|
+
: _vm._e(),
|
|
4489
|
+
]
|
|
4490
|
+
}),
|
|
4491
|
+
_vm._v(" "),
|
|
4492
|
+
_vm.showFooterMeta
|
|
4493
|
+
? _c(
|
|
4494
|
+
"div",
|
|
4495
|
+
{ staticClass: "form-group-model__form--footer" },
|
|
4496
|
+
[
|
|
4497
|
+
_c(
|
|
4498
|
+
"ele-button-group",
|
|
4499
|
+
_vm._g(
|
|
4500
|
+
{ attrs: { "data-source": _vm.footerElements } },
|
|
4501
|
+
_vm.assignAttrForEvents
|
|
4502
|
+
)
|
|
4503
|
+
),
|
|
4504
|
+
],
|
|
4505
|
+
1
|
|
4506
|
+
)
|
|
4507
|
+
: _vm._e(),
|
|
4508
|
+
],
|
|
4509
|
+
2
|
|
4510
|
+
)
|
|
4511
|
+
};
|
|
4512
|
+
var __vue_staticRenderFns__$8 = [];
|
|
4513
|
+
__vue_render__$8._withStripped = true;
|
|
4514
|
+
|
|
4515
|
+
/* style */
|
|
4516
|
+
const __vue_inject_styles__$8 = function (inject) {
|
|
4517
|
+
if (!inject) return
|
|
4518
|
+
inject("data-v-cf97e098_0", { source: ".ele.form-group-model__wrapper[data-v-cf97e098] {\n background: unset;\n padding-bottom: 80px;\n}\n.ele.form-group-model__wrapper .form-group-model__from[data-v-cf97e098] {\n background: #fff;\n margin-top: 16px;\n}\n.ele.form-group-model__wrapper .form-group-model__from[data-v-cf97e098]:first-child {\n margin-top: unset;\n}\n.ele.form-group-model__wrapper .form-group-model__from .form-group-model__form--title[data-v-cf97e098] {\n width: 100%;\n height: 56px;\n padding: 0 16px;\n border-bottom: 1px solid;\n border-color: var(--idooel-form-title-border-color);\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n}\n.ele.form-group-model__wrapper .form-group-model__from .form-group-model__form--content[data-v-cf97e098] {\n padding: 16px;\n}\n.ele.form-group-model__wrapper .form-group-model__form--footer[data-v-cf97e098] {\n width: 100%;\n height: 64px;\n background: #fff;\n position: fixed;\n bottom: 0;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: end;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["/Users/huangshan/Goldgov/front/ganjiao/base-elearning-frontend-model/packages/components/packages/form-group-model/src/index.vue","index.vue"],"names":[],"mappings":"AA4NA;EACA,iBAAA;EACA,oBAAA;AC3NA;AD4NA;EACA,gBAAA;EACA,gBAAA;AC1NA;AD2NA;EACA,iBAAA;ACzNA;AD2NA;EACA,WAAA;EACA,YAAA;EACA,eAAA;EACA,wBAAA;EACA,mDAAA;EACA,aAAA;EACA,mBAAA;EACA,mBAAA;EACA,8BAAA;ACzNA;AD2NA;EACA,aAAA;ACzNA;AD4NA;EACA,WAAA;EACA,YAAA;EACA,gBAAA;EACA,eAAA;EACA,SAAA;EACA,aAAA;EACA,mBAAA;EACA,mBAAA;EACA,oBAAA;AC1NA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\n <div class=\"ele form-group-model__wrapper\">\n <template v-for=\"(group, idx) in groupMeta\">\n <div \n class=\"form-group-model__from\"\n v-if=\"!group.isGenTpl\"\n :key=\"group.key || idx\">\n <div class=\"form-group-model__form--title\">\n <div>{{ group.title }}</div>\n <div class=\"form-group-model__form--buttons\">\n <ele-button-group v-if=\"group.buttonGroupMeta\" v-on=\"assignAttrForEvents\" @delete=\"handleClickDelete($event, group, idx)\" :data-source=\"group.buttonGroupMeta.elements.call(this)\"></ele-button-group>\n </div>\n </div>\n <div class=\"form-group-model__form--content\">\n <ele-form @change=\"onChangeFormStatus($event, group.key || idx)\" :form-name=\"group.key || idx\" :ref=\"group.key || `${formRefBase}__${idx}`\" :elements=\"group.elements\"></ele-form>\n </div>\n </div>\n </template>\n <div v-if=\"showFooterMeta\" class=\"form-group-model__form--footer\">\n <ele-button-group v-on=\"assignAttrForEvents\" :data-source=\"footerElements\"></ele-button-group>\n </div>\n </div>\n</template>\n\n<script>\nimport Form from '../../form/src/index.vue'\nimport { BUILT_IN_EVENT_NAMES, RESERVE_EVENT_NAMES, parseFieldMap } from '../../utils'\nimport { v4 as uuidv4 } from 'uuid'\nimport { type, net } from '@idooel/shared'\nimport EleButtonGroup from '../../composite-components/button-group/src/index.vue'\nexport default {\n name: 'ele-form-group-model',\n components: {\n [Form.name]: Form,\n [EleButtonGroup.name]: EleButtonGroup\n },\n props: {\n mode: {\n type: String\n },\n fieldName: {\n type: String,\n default: 'formGroup'\n },\n groupMeta: {\n type: Array,\n default: () => []\n },\n footerMeta: {\n type: Object,\n default: () => {}\n },\n preRequest: {\n type: Object,\n default: () => {}\n },\n infoRequest: {\n type: Object,\n default: () => {}\n },\n submitRequest: {\n type: Object,\n default: () => {}\n }\n },\n data () {\n return {\n increaseCount: 1\n }\n },\n computed: {\n showFooterMeta () {\n return !type.isEmpty(this.footerMeta)\n },\n formRefBase () {\n return uuidv4()\n },\n footerElements () {\n const { elements } = this.footerMeta\n return elements.call(this)\n },\n assignAttrForEvents () {\n const events = this.footerElements.reduce((ret, ele) => {\n ret[ele.eventName] = (e) => {\n this.$emit(ele.eventName || 'click', { ...e })\n }\n return ret\n }, {})\n return {\n ...this.$listeners,\n ...events,\n [BUILT_IN_EVENT_NAMES.SUBMIT]: this[BUILT_IN_EVENT_NAMES.SUBMIT],\n [BUILT_IN_EVENT_NAMES.CANCEL]: this[BUILT_IN_EVENT_NAMES.CANCEL],\n [BUILT_IN_EVENT_NAMES.INCREASE]: this[BUILT_IN_EVENT_NAMES.INCREASE]\n }\n },\n getFormRefs () {\n return this.groupMeta.map((group, idx) => {\n if (!group.isGenTpl) {\n return this.$refs[group.key || `${this.formRefBase}__${idx}`]\n }\n return void 0\n }).filter(item => !!item).flat()\n },\n formModels () {\n if (this.mode === 'increase') {\n //TODO increase mode to return formModels\n return this.getFormRefs.map(form => {\n return form.getFieldsValue()\n })\n } else {\n return this.getFormRefs.map(form => {\n const { $vnode: { data: { ref } } } = form\n return {\n key: ref,\n value: form.getFieldsValue()\n }\n }).reduce((ret, props) => {\n ret[props.key] = props.value\n return ret\n }, {})\n }\n }\n },\n methods: {\n execFieldMap (fieldMap = {}, dataSource = {}) {\n const ret = parseFieldMap(fieldMap, { _route: this.$route.query, ...dataSource})\n return ret\n },\n onChangeFormStatus (props, key) {\n this.$emit(RESERVE_EVENT_NAMES.WATCH_FORM_STATUS, { key, ...props })\n },\n async infoRequestTrigger () {\n const { url, requestType, params = {}, fieldMap = {}, headers = {} } = this.infoRequest\n if (!url) return\n net[requestType.toLowerCase()](url, { ...params, ...this.execFieldMap(fieldMap) }, { ...headers }).then(resp => {\n const { data = {} } = resp\n if (this.mode === 'increase') {\n this.renderIncreaseForm(data)\n }\n })\n },\n async preRequestTrigger () {\n const { url, requestType = 'GET', params = {}, fieldMap = {}, headers = {} } = this.preRequest\n if (!url) return\n net[requestType.toLowerCase()](url, { ...params, ...fieldMap }, { ...headers }).then(resp => {\n const { data = {} } = resp\n if (this.mode === 'increase') {\n this.renderIncreaseForm(data)\n }\n })\n },\n renderIncreaseForm (data = {}) {\n const formGroupValuesLength = data[this.fieldName].length\n const genTplTarget = this.groupMeta.find(item => item.isGenTpl)\n const notGenTplPoolLength = this.groupMeta.filter(item => !item.isGenTpl).length\n const genNum = formGroupValuesLength - notGenTplPoolLength\n new Array(genNum).fill().forEach(() => {\n const form = this.genForm(genTplTarget)\n this.groupMeta.push(form)\n })\n const formGroupValues = data[this.fieldName]\n this.setFieldsValue(formGroupValues)\n },\n async submitRequestTrigger (props = {}) {\n const { url, requestType, headers = {}, params = {}, fieldMap = {} } = this.submitRequest\n if (!url) return\n const ret = await net[requestType.toLowerCase()](url, { ...params, ...this.execFieldMap(fieldMap, { ...this.formModels }), [this.fieldName]: this.formModels }, { headers }).then(resp => {\n this.$emit(BUILT_IN_EVENT_NAMES.SUBMIT, { ...props, formModel: { ...this.formModels, ...resp.data || {} } })\n return resp.data\n })\n return ret\n },\n setFieldsValue (data = []) {\n this.getFormRefs.forEach((form, idx) => {\n form.setFieldsValue(data[idx])\n })\n },\n [BUILT_IN_EVENT_NAMES.SUBMIT] (props = {}) {\n const status = this.getFormRefs.map(form => {\n const status = form.validateFields()\n return status\n }).every(item => item)\n if (status) {\n return this.submitRequestTrigger(props)\n } else {\n return false\n }\n },\n [BUILT_IN_EVENT_NAMES.CANCEL] (props = {}) {\n this.$emit(BUILT_IN_EVENT_NAMES.CANCEL, { ...props })\n },\n genForm (base) {\n const { elements, title, buttonGroupMeta } = base\n return {\n elements: JSON.parse(JSON.stringify(elements)),\n buttonGroupMeta,\n title: `${title}${this.increaseCount++}`,\n _gen: true\n }\n },\n handleClickDelete (props = {}, attr = {}, idx) {\n this.groupMeta.splice(idx, 1)\n this.$emit(BUILT_IN_EVENT_NAMES.DELETE, { ...props })\n },\n [BUILT_IN_EVENT_NAMES.INCREASE] (props) {\n const genTplTarget = this.groupMeta.find(item => item.isGenTpl)\n const form = this.genForm(genTplTarget)\n this.groupMeta.push(form)\n }\n },\n async mounted() {\n await this.preRequestTrigger()\n await this.infoRequestTrigger()\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.ele {\n &.form-group-model__wrapper {\n background: unset;\n padding-bottom: 80px;\n .form-group-model__from {\n background: #fff;\n margin-top: 16px;\n &:first-child {\n margin-top: unset;\n }\n .form-group-model__form--title {\n width: 100%;\n height: 56px;\n padding: 0 16px;\n border-bottom: 1px solid;\n border-color: var(--idooel-form-title-border-color);\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n }\n .form-group-model__form--content {\n padding: 16px;\n }\n }\n .form-group-model__form--footer {\n width: 100%;\n height: 64px;\n background: #fff;\n position: fixed;\n bottom: 0;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: end;\n }\n }\n}\n</style>",".ele.form-group-model__wrapper {\n background: unset;\n padding-bottom: 80px;\n}\n.ele.form-group-model__wrapper .form-group-model__from {\n background: #fff;\n margin-top: 16px;\n}\n.ele.form-group-model__wrapper .form-group-model__from:first-child {\n margin-top: unset;\n}\n.ele.form-group-model__wrapper .form-group-model__from .form-group-model__form--title {\n width: 100%;\n height: 56px;\n padding: 0 16px;\n border-bottom: 1px solid;\n border-color: var(--idooel-form-title-border-color);\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n}\n.ele.form-group-model__wrapper .form-group-model__from .form-group-model__form--content {\n padding: 16px;\n}\n.ele.form-group-model__wrapper .form-group-model__form--footer {\n width: 100%;\n height: 64px;\n background: #fff;\n position: fixed;\n bottom: 0;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: end;\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
4519
|
+
|
|
4520
|
+
};
|
|
4521
|
+
/* scoped */
|
|
4522
|
+
const __vue_scope_id__$8 = "data-v-cf97e098";
|
|
4523
|
+
/* module identifier */
|
|
4524
|
+
const __vue_module_identifier__$8 = undefined;
|
|
4525
|
+
/* functional template */
|
|
4526
|
+
const __vue_is_functional_template__$8 = false;
|
|
4527
|
+
/* style inject SSR */
|
|
4528
|
+
|
|
4529
|
+
/* style inject shadow dom */
|
|
4530
|
+
|
|
4531
|
+
|
|
4532
|
+
|
|
4533
|
+
const __vue_component__$8 = /*#__PURE__*/normalizeComponent(
|
|
4534
|
+
{ render: __vue_render__$8, staticRenderFns: __vue_staticRenderFns__$8 },
|
|
4535
|
+
__vue_inject_styles__$8,
|
|
4536
|
+
__vue_script__$8,
|
|
4537
|
+
__vue_scope_id__$8,
|
|
4538
|
+
__vue_is_functional_template__$8,
|
|
4539
|
+
__vue_module_identifier__$8,
|
|
4540
|
+
false,
|
|
4541
|
+
createInjector,
|
|
4542
|
+
undefined,
|
|
4543
|
+
undefined
|
|
4544
|
+
);
|
|
4545
|
+
|
|
4546
|
+
//
|
|
4547
|
+
var script$7 = {
|
|
4548
|
+
name: 'ele-form-model',
|
|
4549
|
+
components: {
|
|
4550
|
+
EleButtonGroup: __vue_component__$i
|
|
4551
|
+
},
|
|
4552
|
+
props: {
|
|
4553
|
+
title: {
|
|
4554
|
+
type: String
|
|
4555
|
+
},
|
|
4556
|
+
formMeta: {
|
|
4557
|
+
type: Object
|
|
4558
|
+
},
|
|
4559
|
+
footerMeta: {
|
|
4560
|
+
type: Object
|
|
4561
|
+
}
|
|
4562
|
+
},
|
|
4563
|
+
data() {
|
|
4564
|
+
return {};
|
|
4565
|
+
},
|
|
4566
|
+
computed: {
|
|
4567
|
+
formRef() {
|
|
4568
|
+
return v4();
|
|
4569
|
+
},
|
|
4570
|
+
assignAttrForEvents() {
|
|
4571
|
+
const events = this.footerElements.reduce((ret, ele) => {
|
|
4572
|
+
ret[ele.eventName] = e => {
|
|
4573
|
+
this.$emit(ele.eventName || 'click', {
|
|
4574
|
+
...e,
|
|
4575
|
+
formModel: this.formModels
|
|
4576
|
+
});
|
|
4577
|
+
};
|
|
4578
|
+
return ret;
|
|
4579
|
+
}, {});
|
|
4580
|
+
return {
|
|
4581
|
+
...this.$listeners,
|
|
4582
|
+
...events,
|
|
4583
|
+
[BUILT_IN_EVENT_NAMES.SUBMIT]: this[BUILT_IN_EVENT_NAMES.SUBMIT],
|
|
4584
|
+
[BUILT_IN_EVENT_NAMES.CANCEL]: this[BUILT_IN_EVENT_NAMES.CANCEL]
|
|
4585
|
+
};
|
|
4586
|
+
},
|
|
4587
|
+
elements() {
|
|
4588
|
+
const {
|
|
4589
|
+
elements
|
|
4590
|
+
} = this.formMeta;
|
|
4591
|
+
return elements;
|
|
4592
|
+
},
|
|
4593
|
+
preRequest() {
|
|
4594
|
+
const {
|
|
4595
|
+
preRequest
|
|
4596
|
+
} = this.formMeta;
|
|
4597
|
+
return preRequest;
|
|
4598
|
+
},
|
|
4599
|
+
infoRequest() {
|
|
4600
|
+
const {
|
|
4601
|
+
infoRequest
|
|
4602
|
+
} = this.formMeta;
|
|
4603
|
+
return infoRequest;
|
|
4604
|
+
},
|
|
4605
|
+
submitRequest() {
|
|
4606
|
+
const {
|
|
4607
|
+
submitRequest
|
|
4608
|
+
} = this.formMeta;
|
|
4609
|
+
return submitRequest;
|
|
4610
|
+
},
|
|
4611
|
+
footerElements() {
|
|
4612
|
+
const {
|
|
4613
|
+
elements
|
|
4614
|
+
} = this.footerMeta;
|
|
4615
|
+
return elements.call(this);
|
|
4616
|
+
},
|
|
4617
|
+
formModels() {
|
|
4618
|
+
return this.$refs[this.formRef].getFieldsValue();
|
|
4619
|
+
}
|
|
4620
|
+
},
|
|
4621
|
+
methods: {
|
|
4622
|
+
execFieldMap(fieldMap = {}, dataSource = {}) {
|
|
4623
|
+
const ret = parseFieldMap(fieldMap, {
|
|
4624
|
+
_route: this.$route.query,
|
|
4625
|
+
...dataSource
|
|
4626
|
+
});
|
|
4627
|
+
return ret;
|
|
4628
|
+
},
|
|
4629
|
+
async submitRequestTrigger(props = {}) {
|
|
4630
|
+
const {
|
|
4631
|
+
url,
|
|
4632
|
+
requestType,
|
|
4633
|
+
headers = {},
|
|
4634
|
+
params = {},
|
|
4635
|
+
fieldMap = {}
|
|
4636
|
+
} = this.submitRequest;
|
|
4637
|
+
if (!url) return;
|
|
4638
|
+
const ret = await net[requestType.toLowerCase()](url, {
|
|
4639
|
+
...params,
|
|
4640
|
+
...this.execFieldMap(fieldMap, {
|
|
4641
|
+
...this.formModels
|
|
4642
|
+
}),
|
|
4643
|
+
...this.formModels
|
|
4644
|
+
}, {
|
|
4645
|
+
headers
|
|
4646
|
+
}).then(resp => {
|
|
4647
|
+
console.log(resp.data);
|
|
4648
|
+
this.$emit(BUILT_IN_EVENT_NAMES.SUBMIT, {
|
|
4649
|
+
...props,
|
|
4650
|
+
formModel: {
|
|
4651
|
+
...this.formModels,
|
|
4652
|
+
...(resp.data || {})
|
|
4653
|
+
}
|
|
4654
|
+
});
|
|
4655
|
+
return resp.data;
|
|
4656
|
+
});
|
|
4657
|
+
return ret;
|
|
4658
|
+
},
|
|
4659
|
+
async infoRequestTrigger() {
|
|
4660
|
+
const {
|
|
4661
|
+
url,
|
|
4662
|
+
requestType,
|
|
4663
|
+
params = {},
|
|
4664
|
+
fieldMap = {},
|
|
4665
|
+
headers = {}
|
|
4666
|
+
} = this.infoRequest;
|
|
4667
|
+
if (!url) return;
|
|
4668
|
+
net[requestType.toLowerCase()](url, {
|
|
4669
|
+
...params,
|
|
4670
|
+
...this.execFieldMap(fieldMap)
|
|
4671
|
+
}, {
|
|
4672
|
+
...headers
|
|
4673
|
+
}).then(resp => {
|
|
4674
|
+
const {
|
|
4675
|
+
data = {}
|
|
4676
|
+
} = resp;
|
|
4677
|
+
this.setFieldsValue(data);
|
|
4678
|
+
});
|
|
4679
|
+
},
|
|
4680
|
+
async preRequestTrigger() {
|
|
4681
|
+
const {
|
|
4682
|
+
url,
|
|
4683
|
+
requestType = 'GET',
|
|
4684
|
+
params = {},
|
|
4685
|
+
fieldMap = {},
|
|
4686
|
+
headers = {}
|
|
4687
|
+
} = this.preRequest;
|
|
4688
|
+
if (!url) return;
|
|
4689
|
+
await net[requestType.toLowerCase()](url, {
|
|
4690
|
+
...params,
|
|
4691
|
+
...fieldMap
|
|
4692
|
+
}, {
|
|
4693
|
+
...headers
|
|
4694
|
+
});
|
|
4695
|
+
},
|
|
4696
|
+
setFieldsValue(props) {
|
|
4697
|
+
this.$refs[this.formRef].setFieldsValue(props);
|
|
4698
|
+
},
|
|
4699
|
+
validateFields() {
|
|
4700
|
+
return this.$refs[this.formRef].validateFields();
|
|
4701
|
+
},
|
|
4702
|
+
[BUILT_IN_EVENT_NAMES.SUBMIT](props = {}) {
|
|
4703
|
+
const status = this.$refs[this.formRef].validateFields();
|
|
4704
|
+
if (status) {
|
|
4705
|
+
//TODO fieldMap
|
|
4706
|
+
return this.submitRequestTrigger(props);
|
|
4707
|
+
} else {
|
|
4708
|
+
return false;
|
|
4709
|
+
}
|
|
4710
|
+
},
|
|
4711
|
+
[BUILT_IN_EVENT_NAMES.CANCEL](props = {}) {
|
|
4712
|
+
this.$emit(BUILT_IN_EVENT_NAMES.CANCEL, {
|
|
4713
|
+
...props
|
|
4714
|
+
});
|
|
4715
|
+
}
|
|
4716
|
+
},
|
|
4717
|
+
async mounted() {
|
|
4718
|
+
await this.preRequestTrigger();
|
|
4719
|
+
await this.infoRequestTrigger();
|
|
4720
|
+
}
|
|
4721
|
+
};
|
|
4722
|
+
|
|
4723
|
+
/* script */
|
|
4724
|
+
const __vue_script__$7 = script$7;
|
|
4725
|
+
|
|
4726
|
+
/* template */
|
|
4727
|
+
var __vue_render__$7 = function () {
|
|
4728
|
+
var _vm = this;
|
|
4729
|
+
var _h = _vm.$createElement;
|
|
4730
|
+
var _c = _vm._self._c || _h;
|
|
4731
|
+
return _c("div", { staticClass: "form__model--wrapper" }, [
|
|
4732
|
+
_vm.title
|
|
4733
|
+
? _c("div", { staticClass: "form-model__title" }, [
|
|
4734
|
+
_vm._v("\n " + _vm._s(_vm.title) + "\n "),
|
|
4735
|
+
])
|
|
4736
|
+
: _vm._e(),
|
|
4737
|
+
_vm._v(" "),
|
|
4738
|
+
_c(
|
|
4739
|
+
"div",
|
|
4740
|
+
{ staticClass: "form-model__content" },
|
|
4741
|
+
[_c("ele-form", { ref: _vm.formRef, attrs: { elements: _vm.elements } })],
|
|
4742
|
+
1
|
|
4743
|
+
),
|
|
4744
|
+
_vm._v(" "),
|
|
4745
|
+
_vm.footerMeta
|
|
4746
|
+
? _c(
|
|
4747
|
+
"div",
|
|
4748
|
+
{ staticClass: "form-model__footer" },
|
|
4749
|
+
[
|
|
4750
|
+
_c(
|
|
4751
|
+
"ele-button-group",
|
|
4752
|
+
_vm._g(
|
|
4753
|
+
{ attrs: { "data-source": _vm.footerElements } },
|
|
4754
|
+
_vm.assignAttrForEvents
|
|
4755
|
+
)
|
|
4756
|
+
),
|
|
4757
|
+
],
|
|
4758
|
+
1
|
|
4759
|
+
)
|
|
4760
|
+
: _vm._e(),
|
|
4761
|
+
])
|
|
4762
|
+
};
|
|
4763
|
+
var __vue_staticRenderFns__$7 = [];
|
|
4764
|
+
__vue_render__$7._withStripped = true;
|
|
4765
|
+
|
|
4766
|
+
/* style */
|
|
4767
|
+
const __vue_inject_styles__$7 = function (inject) {
|
|
4768
|
+
if (!inject) return
|
|
4769
|
+
inject("data-v-35189f14_0", { source: ".form__model--wrapper[data-v-35189f14] {\n width: 100%;\n height: 100%;\n overflow: auto;\n background: #fff;\n}\n.form__model--wrapper .form-model__title[data-v-35189f14] {\n height: 56px;\n padding: 0 16px;\n display: flex;\n flex-direction: row;\n align-items: center;\n border-bottom: 1px solid var(--idooel-form-title-border-color);\n}\n.form__model--wrapper .form-model__content[data-v-35189f14] {\n padding: 16px;\n}\n.form__model--wrapper .form-model__footer[data-v-35189f14] {\n /* width: 100%; */\n height: 64px;\n position: fixed;\n bottom: 0;\n display: flex;\n float: right;\n flex-direction: row;\n align-items: center;\n justify-content: end;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["/Users/huangshan/Goldgov/front/ganjiao/base-elearning-frontend-model/packages/components/packages/form-model/src/index.vue","index.vue"],"names":[],"mappings":"AAuIA;EACA,WAAA;EACA,YAAA;EACA,cAAA;EACA,gBAAA;ACtIA;ADuIA;EACA,YAAA;EACA,eAAA;EACA,aAAA;EACA,mBAAA;EACA,mBAAA;EACA,8DAAA;ACrIA;ADuIA;EACA,aAAA;ACrIA;ADuIA;EACA,iBAAA;EACA,YAAA;EACA,eAAA;EACA,SAAA;EACA,aAAA;EACA,YAAA;EACA,mBAAA;EACA,mBAAA;EACA,oBAAA;ACrIA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\n <div class=\"form__model--wrapper\">\n <div class=\"form-model__title\" v-if=\"title\">\n {{ title }}\n </div>\n <div class=\"form-model__content\">\n <ele-form :ref=\"formRef\" :elements=\"elements\"></ele-form>\n </div>\n <div class=\"form-model__footer\" v-if=\"footerMeta\">\n <ele-button-group v-on=\"assignAttrForEvents\" :data-source=\"footerElements\"></ele-button-group>\n </div>\n </div>\n</template>\n\n<script>\nimport EleButtonGroup from '../../composite-components/button-group/src/index.vue'\nimport { BUILT_IN_EVENT_NAMES, parseFieldMap } from '../../utils'\nimport { v4 as uuidv4 } from 'uuid'\nimport { net } from '@idooel/shared'\nexport default {\n name: 'ele-form-model',\n components: {\n EleButtonGroup\n },\n props: {\n title: {\n type: String\n },\n formMeta: {\n type: Object\n },\n footerMeta: {\n type: Object\n }\n },\n data() {\n return {}\n },\n computed: {\n formRef () {\n return uuidv4()\n },\n assignAttrForEvents () {\n const events = this.footerElements.reduce((ret, ele) => {\n ret[ele.eventName] = (e) => {\n this.$emit(ele.eventName || 'click', { ...e, formModel: this.formModels })\n }\n return ret\n }, {})\n return {\n ...this.$listeners,\n ...events,\n [BUILT_IN_EVENT_NAMES.SUBMIT]: this[BUILT_IN_EVENT_NAMES.SUBMIT],\n [BUILT_IN_EVENT_NAMES.CANCEL]: this[BUILT_IN_EVENT_NAMES.CANCEL]\n }\n },\n elements () {\n const { elements } = this.formMeta\n return elements\n },\n preRequest () {\n const { preRequest } = this.formMeta\n return preRequest\n },\n infoRequest () {\n const { infoRequest } = this.formMeta\n return infoRequest\n },\n submitRequest () {\n const { submitRequest } = this.formMeta\n return submitRequest\n },\n footerElements () {\n const { elements } = this.footerMeta\n return elements.call(this)\n },\n formModels () {\n return this.$refs[this.formRef].getFieldsValue()\n }\n },\n methods: {\n execFieldMap (fieldMap = {}, dataSource = {}) {\n const ret = parseFieldMap(fieldMap, { _route: this.$route.query, ...dataSource})\n return ret\n },\n async submitRequestTrigger (props = {}) {\n const { url, requestType, headers = {}, params = {}, fieldMap = {} } = this.submitRequest\n if (!url) return\n const ret = await net[requestType.toLowerCase()](url, { ...params, ...this.execFieldMap(fieldMap, { ...this.formModels }), ...this.formModels }, { headers }).then(resp => {\n console.log(resp.data)\n this.$emit(BUILT_IN_EVENT_NAMES.SUBMIT, { ...props, formModel: { ...this.formModels, ...resp.data || {} } })\n return resp.data\n })\n return ret\n },\n async infoRequestTrigger () {\n const { url, requestType, params = {}, fieldMap = {}, headers = {} } = this.infoRequest\n if (!url) return\n net[requestType.toLowerCase()](url, { ...params, ...this.execFieldMap(fieldMap) }, { ...headers }).then(resp => {\n const { data = {} } = resp\n this.setFieldsValue(data)\n })\n },\n async preRequestTrigger () {\n const { url, requestType = 'GET', params = {}, fieldMap = {}, headers = {} } = this.preRequest\n if (!url) return\n await net[requestType.toLowerCase()](url, { ...params, ...fieldMap }, { ...headers })\n },\n setFieldsValue (props) {\n this.$refs[this.formRef].setFieldsValue(props)\n },\n validateFields () {\n return this.$refs[this.formRef].validateFields()\n },\n [BUILT_IN_EVENT_NAMES.SUBMIT] (props = {}) {\n const status = this.$refs[this.formRef].validateFields()\n if (status) {\n //TODO fieldMap\n return this.submitRequestTrigger(props)\n } else {\n return false\n }\n },\n [BUILT_IN_EVENT_NAMES.CANCEL] (props = {}) {\n this.$emit(BUILT_IN_EVENT_NAMES.CANCEL, { ...props })\n }\n },\n async mounted() {\n await this.preRequestTrigger()\n await this.infoRequestTrigger()\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.form__model--wrapper {\n width: 100%;\n height: 100%;\n overflow: auto;\n background: #fff;\n .form-model__title {\n height: 56px;\n padding: 0 16px;\n display: flex;\n flex-direction: row;\n align-items: center;\n border-bottom: 1px solid var(--idooel-form-title-border-color);\n }\n .form-model__content {\n padding: 16px;\n }\n .form-model__footer {\n /* width: 100%; */\n height: 64px;\n position: fixed;\n bottom: 0;\n display: flex;\n float: right;\n flex-direction: row;\n align-items: center;\n justify-content: end;\n }\n}\n</style>",".form__model--wrapper {\n width: 100%;\n height: 100%;\n overflow: auto;\n background: #fff;\n}\n.form__model--wrapper .form-model__title {\n height: 56px;\n padding: 0 16px;\n display: flex;\n flex-direction: row;\n align-items: center;\n border-bottom: 1px solid var(--idooel-form-title-border-color);\n}\n.form__model--wrapper .form-model__content {\n padding: 16px;\n}\n.form__model--wrapper .form-model__footer {\n /* width: 100%; */\n height: 64px;\n position: fixed;\n bottom: 0;\n display: flex;\n float: right;\n flex-direction: row;\n align-items: center;\n justify-content: end;\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
4770
|
+
|
|
4771
|
+
};
|
|
4772
|
+
/* scoped */
|
|
4773
|
+
const __vue_scope_id__$7 = "data-v-35189f14";
|
|
4774
|
+
/* module identifier */
|
|
4775
|
+
const __vue_module_identifier__$7 = undefined;
|
|
4776
|
+
/* functional template */
|
|
4777
|
+
const __vue_is_functional_template__$7 = false;
|
|
4778
|
+
/* style inject SSR */
|
|
4779
|
+
|
|
4780
|
+
/* style inject shadow dom */
|
|
4781
|
+
|
|
4782
|
+
|
|
4783
|
+
|
|
4784
|
+
const __vue_component__$7 = /*#__PURE__*/normalizeComponent(
|
|
4785
|
+
{ render: __vue_render__$7, staticRenderFns: __vue_staticRenderFns__$7 },
|
|
4786
|
+
__vue_inject_styles__$7,
|
|
4787
|
+
__vue_script__$7,
|
|
4788
|
+
__vue_scope_id__$7,
|
|
4789
|
+
__vue_is_functional_template__$7,
|
|
4790
|
+
__vue_module_identifier__$7,
|
|
4791
|
+
false,
|
|
4792
|
+
createInjector,
|
|
4793
|
+
undefined,
|
|
4794
|
+
undefined
|
|
4795
|
+
);
|
|
4796
|
+
|
|
4797
|
+
//
|
|
4798
|
+
var script$6 = {
|
|
4799
|
+
name: 'ele-step-model',
|
|
4800
|
+
components: {
|
|
4801
|
+
EleButtonGroup: __vue_component__$i
|
|
4802
|
+
},
|
|
4803
|
+
props: {
|
|
4804
|
+
stepMeta: {
|
|
4805
|
+
type: Object,
|
|
4806
|
+
default: () => ({})
|
|
4807
|
+
},
|
|
4808
|
+
footerMeta: {
|
|
4809
|
+
type: Object,
|
|
4810
|
+
default: () => ({})
|
|
4811
|
+
}
|
|
4812
|
+
},
|
|
4813
|
+
data() {
|
|
4814
|
+
return {
|
|
4815
|
+
current: 0,
|
|
4816
|
+
currentSlotComponentRef: null
|
|
4817
|
+
};
|
|
4818
|
+
},
|
|
4819
|
+
computed: {
|
|
4820
|
+
currentSlotName() {
|
|
4821
|
+
return this.scopedSlotsNames[this.current];
|
|
4822
|
+
},
|
|
4823
|
+
footerElements() {
|
|
4824
|
+
const {
|
|
4825
|
+
elements
|
|
4826
|
+
} = this.footerMeta;
|
|
4827
|
+
return elements.call(this);
|
|
4828
|
+
},
|
|
4829
|
+
assignAttrForEvents() {
|
|
4830
|
+
const events = this.footerElements.reduce((ret, ele) => {
|
|
4831
|
+
ret[ele.eventName] = e => {
|
|
4832
|
+
this.$emit(ele.eventName || 'click', {
|
|
4833
|
+
...e,
|
|
4834
|
+
exposed: this.exposedMethods
|
|
4835
|
+
});
|
|
4836
|
+
};
|
|
4837
|
+
return ret;
|
|
4838
|
+
}, {});
|
|
4839
|
+
return {
|
|
4840
|
+
...this.$listeners,
|
|
4841
|
+
...events,
|
|
4842
|
+
[BUILT_IN_EVENT_NAMES.NEXT]: this[BUILT_IN_EVENT_NAMES.NEXT],
|
|
4843
|
+
[BUILT_IN_EVENT_NAMES.PREVIOUS]: this[BUILT_IN_EVENT_NAMES.PREVIOUS]
|
|
4844
|
+
};
|
|
4845
|
+
},
|
|
4846
|
+
activeIndex() {
|
|
4847
|
+
const {
|
|
4848
|
+
activeIndex
|
|
4849
|
+
} = this.stepMeta;
|
|
4850
|
+
return activeIndex;
|
|
4851
|
+
},
|
|
4852
|
+
elements() {
|
|
4853
|
+
const {
|
|
4854
|
+
elements
|
|
4855
|
+
} = this.stepMeta;
|
|
4856
|
+
return elements;
|
|
4857
|
+
},
|
|
4858
|
+
scopedSlotsNames() {
|
|
4859
|
+
const slotNames = this.elements.map(item => item.key);
|
|
4860
|
+
return slotNames;
|
|
4861
|
+
},
|
|
4862
|
+
exposedMethods() {
|
|
4863
|
+
return {
|
|
4864
|
+
slotRef: this.currentSlotComponentRef,
|
|
4865
|
+
setCurrentStep: this.setCurrentStep,
|
|
4866
|
+
next: this.nextStep,
|
|
4867
|
+
prev: this.prevStep,
|
|
4868
|
+
current: this.current
|
|
4869
|
+
};
|
|
4870
|
+
}
|
|
4871
|
+
},
|
|
4872
|
+
watch: {
|
|
4873
|
+
activeIndex: {
|
|
4874
|
+
handler(idx) {
|
|
4875
|
+
this.current = idx;
|
|
4876
|
+
},
|
|
4877
|
+
immediate: true
|
|
4878
|
+
},
|
|
4879
|
+
current: {
|
|
4880
|
+
handler() {
|
|
4881
|
+
this.$nextTick(() => {
|
|
4882
|
+
this.currentSlotComponentRef = this.getCurrentSlotComponentRef();
|
|
4883
|
+
});
|
|
4884
|
+
},
|
|
4885
|
+
immediate: true
|
|
4886
|
+
}
|
|
4887
|
+
},
|
|
4888
|
+
methods: {
|
|
4889
|
+
getCurrentSlotComponentRef() {
|
|
4890
|
+
const includeMetaCmp = this.$children.find(child => child.meta);
|
|
4891
|
+
if (!includeMetaCmp) return null;
|
|
4892
|
+
const {
|
|
4893
|
+
$children: components
|
|
4894
|
+
} = includeMetaCmp;
|
|
4895
|
+
const target = components.find(cmp => cmp.$options._componentTag === 'ele-tpl');
|
|
4896
|
+
return target.getModel ? target.getModel() : null;
|
|
4897
|
+
},
|
|
4898
|
+
setCurrentStep(index) {
|
|
4899
|
+
this.current = index;
|
|
4900
|
+
},
|
|
4901
|
+
nextStep() {
|
|
4902
|
+
if (this.current >= this.elements.length - 1) return;
|
|
4903
|
+
this.current++;
|
|
4904
|
+
},
|
|
4905
|
+
prevStep() {
|
|
4906
|
+
if (this.current <= 0) return;
|
|
4907
|
+
this.current--;
|
|
4908
|
+
},
|
|
4909
|
+
[BUILT_IN_EVENT_NAMES.NEXT](props) {
|
|
4910
|
+
this.$emit(BUILT_IN_EVENT_NAMES.NEXT, {
|
|
4911
|
+
...props,
|
|
4912
|
+
exposed: {
|
|
4913
|
+
...this.exposedMethods
|
|
4914
|
+
}
|
|
4915
|
+
});
|
|
4916
|
+
},
|
|
4917
|
+
[BUILT_IN_EVENT_NAMES.PREVIOUS](props) {
|
|
4918
|
+
this.$emit(BUILT_IN_EVENT_NAMES.PREVIOUS, {
|
|
4919
|
+
...props,
|
|
4920
|
+
exposed: {
|
|
4921
|
+
...this.exposedMethods
|
|
4922
|
+
}
|
|
4923
|
+
});
|
|
4924
|
+
}
|
|
4925
|
+
}
|
|
4926
|
+
};
|
|
4927
|
+
|
|
4928
|
+
/* script */
|
|
4929
|
+
const __vue_script__$6 = script$6;
|
|
4930
|
+
|
|
4931
|
+
/* template */
|
|
4932
|
+
var __vue_render__$6 = function () {
|
|
4933
|
+
var _vm = this;
|
|
4934
|
+
var _h = _vm.$createElement;
|
|
4935
|
+
var _c = _vm._self._c || _h;
|
|
4936
|
+
return _c("div", { staticClass: "ele-step-model__wrapper" }, [
|
|
4937
|
+
_c(
|
|
4938
|
+
"div",
|
|
4939
|
+
{ staticClass: "ele-step-model__step--wrapper" },
|
|
4940
|
+
[
|
|
4941
|
+
_c(
|
|
4942
|
+
"a-steps",
|
|
4943
|
+
{
|
|
4944
|
+
staticClass: "ele-steps",
|
|
4945
|
+
attrs: { current: _vm.current, size: "small" },
|
|
4946
|
+
},
|
|
4947
|
+
_vm._l(_vm.elements, function (step) {
|
|
4948
|
+
return _c("a-step", { key: step.key, attrs: { title: step.title } })
|
|
4949
|
+
}),
|
|
4950
|
+
1
|
|
4951
|
+
),
|
|
4952
|
+
],
|
|
4953
|
+
1
|
|
4954
|
+
),
|
|
4955
|
+
_vm._v(" "),
|
|
4956
|
+
_c(
|
|
4957
|
+
"div",
|
|
4958
|
+
{ staticClass: "ele-step-model__content--wrapper" },
|
|
4959
|
+
[
|
|
4960
|
+
_vm._l(_vm.scopedSlotsNames, function (name) {
|
|
4961
|
+
return [
|
|
4962
|
+
_vm.currentSlotName == name
|
|
4963
|
+
? _c(
|
|
4964
|
+
"div",
|
|
4965
|
+
{
|
|
4966
|
+
key: name,
|
|
4967
|
+
class: [
|
|
4968
|
+
"ele-step-model__slot",
|
|
4969
|
+
"ele-step-model__slot--" + name,
|
|
4970
|
+
],
|
|
4971
|
+
},
|
|
4972
|
+
[_vm._t(name)],
|
|
4973
|
+
2
|
|
4974
|
+
)
|
|
4975
|
+
: _vm._e(),
|
|
4976
|
+
]
|
|
4977
|
+
}),
|
|
4978
|
+
],
|
|
4979
|
+
2
|
|
4980
|
+
),
|
|
4981
|
+
_vm._v(" "),
|
|
4982
|
+
_c(
|
|
4983
|
+
"div",
|
|
4984
|
+
{ staticClass: "ele-step-model__footer--wrapper" },
|
|
4985
|
+
[
|
|
4986
|
+
_c(
|
|
4987
|
+
"ele-button-group",
|
|
4988
|
+
_vm._g(
|
|
4989
|
+
{ attrs: { "data-source": _vm.footerElements } },
|
|
4990
|
+
_vm.assignAttrForEvents
|
|
4991
|
+
)
|
|
4992
|
+
),
|
|
4993
|
+
],
|
|
4994
|
+
1
|
|
4995
|
+
),
|
|
4996
|
+
])
|
|
4997
|
+
};
|
|
4998
|
+
var __vue_staticRenderFns__$6 = [];
|
|
4999
|
+
__vue_render__$6._withStripped = true;
|
|
5000
|
+
|
|
5001
|
+
/* style */
|
|
5002
|
+
const __vue_inject_styles__$6 = function (inject) {
|
|
5003
|
+
if (!inject) return
|
|
5004
|
+
inject("data-v-7e474ae0_0", { source: ".ele-step-model__wrapper[data-v-7e474ae0] {\n width: 100%;\n height: 100vh;\n position: relative;\n}\n.ele-step-model__wrapper .ele-step-model__step--wrapper[data-v-7e474ae0] {\n width: 100%;\n height: 64px;\n padding: 16px;\n display: flex;\n flex-direction: row;\n align-items: center;\n background: #fff;\n}\n.ele-step-model__wrapper .ele-step-model__step--wrapper .ele-steps .ant-steps-item[data-v-7e474ae0] {\n text-align: left;\n}\n.ele-step-model__wrapper .ele-step-model__content--wrapper[data-v-7e474ae0] {\n width: 100%;\n width: 100%;\n margin-top: 16px;\n margin-bottom: 16px;\n height: calc(100vh - 64px - 64px - 16px - 16px);\n overflow: auto;\n}\n.ele-step-model__wrapper .ele-step-model__footer--wrapper[data-v-7e474ae0] {\n width: 100%;\n height: 64px;\n background: #fff;\n position: absolute;\n bottom: 0;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: end;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["/Users/huangshan/Goldgov/front/ganjiao/base-elearning-frontend-model/packages/components/packages/step-model/src/index.vue","index.vue"],"names":[],"mappings":"AAsIA;EACA,WAAA;EACA,aAAA;EACA,kBAAA;ACrIA;ADsIA;EACA,WAAA;EACA,YAAA;EACA,aAAA;EACA,aAAA;EACA,mBAAA;EACA,mBAAA;EACA,gBAAA;ACpIA;ADsIA;EACA,gBAAA;ACpIA;ADwIA;EACA,WAAA;EACA,WAAA;EACA,gBAAA;EACA,mBAAA;EACA,+CAAA;EACA,cAAA;ACtIA;ADwIA;EACA,WAAA;EACA,YAAA;EACA,gBAAA;EACA,kBAAA;EACA,SAAA;EACA,aAAA;EACA,mBAAA;EACA,mBAAA;EACA,oBAAA;ACtIA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\n <div class=\"ele-step-model__wrapper\">\n <div class=\"ele-step-model__step--wrapper\">\n <a-steps class=\"ele-steps\" :current=\"current\" size=\"small\">\n <a-step v-for=\"step in elements\" :title=\"step.title\" :key=\"step.key\" />\n </a-steps>\n </div>\n <div class=\"ele-step-model__content--wrapper\">\n <template v-for=\"name in scopedSlotsNames\">\n <div :key=\"name\" v-if=\"currentSlotName == name\" :class=\"['ele-step-model__slot', `ele-step-model__slot--${name}`]\">\n <slot :name=\"name\"></slot>\n </div>\n </template>\n </div>\n <div class=\"ele-step-model__footer--wrapper\">\n <ele-button-group v-on=\"assignAttrForEvents\" :data-source=\"footerElements\"></ele-button-group>\n </div>\n </div>\n</template>\n\n<script>\nimport EleButtonGroup from '../../composite-components/button-group/src/index.vue'\nimport { BUILT_IN_EVENT_NAMES } from '../../utils'\nexport default {\n name: 'ele-step-model',\n components: {\n EleButtonGroup\n },\n props: {\n stepMeta: {\n type: Object,\n default: () => ({})\n },\n footerMeta: {\n type: Object,\n default: () => ({})\n }\n },\n data() {\n return {\n current: 0,\n currentSlotComponentRef: null\n }\n },\n computed: {\n currentSlotName () {\n return this.scopedSlotsNames[this.current]\n },\n footerElements () {\n const { elements } = this.footerMeta\n return elements.call(this)\n },\n assignAttrForEvents () {\n const events = this.footerElements.reduce((ret, ele) => {\n ret[ele.eventName] = (e) => {\n this.$emit(ele.eventName || 'click', { ...e, exposed: this.exposedMethods })\n }\n return ret\n }, {})\n return {\n ...this.$listeners,\n ...events,\n [BUILT_IN_EVENT_NAMES.NEXT]: this[BUILT_IN_EVENT_NAMES.NEXT],\n [BUILT_IN_EVENT_NAMES.PREVIOUS]: this[BUILT_IN_EVENT_NAMES.PREVIOUS]\n }\n },\n activeIndex () {\n const { activeIndex } = this.stepMeta\n return activeIndex\n },\n elements () {\n const { elements } = this.stepMeta\n return elements\n },\n scopedSlotsNames () {\n const slotNames = this.elements.map(item => item.key)\n return slotNames\n },\n exposedMethods () {\n return {\n slotRef: this.currentSlotComponentRef,\n setCurrentStep: this.setCurrentStep,\n next: this.nextStep,\n prev: this.prevStep,\n current: this.current\n }\n }\n },\n watch: {\n activeIndex: {\n handler (idx) {\n this.current = idx\n },\n immediate: true\n },\n current: {\n handler () {\n this.$nextTick(() => {\n this.currentSlotComponentRef = this.getCurrentSlotComponentRef()\n })\n },\n immediate: true\n }\n },\n methods: {\n getCurrentSlotComponentRef () {\n const includeMetaCmp = this.$children.find(child => child.meta)\n if (!includeMetaCmp) return null\n const { $children: components } = includeMetaCmp\n const target = components.find(cmp => cmp.$options._componentTag === 'ele-tpl')\n return target.getModel ? target.getModel() : null\n },\n setCurrentStep (index) {\n this.current = index\n },\n nextStep () {\n if (this.current >= this.elements.length - 1) return\n this.current ++\n },\n prevStep () {\n if (this.current <= 0) return\n this.current --\n },\n [BUILT_IN_EVENT_NAMES.NEXT] (props) {\n this.$emit(BUILT_IN_EVENT_NAMES.NEXT, { ...props, exposed: { ...this.exposedMethods } })\n },\n [BUILT_IN_EVENT_NAMES.PREVIOUS] (props) {\n this.$emit(BUILT_IN_EVENT_NAMES.PREVIOUS, { ...props, exposed: { ...this.exposedMethods } })\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.ele-step-model__wrapper {\n width: 100%;\n height: 100vh;\n position: relative;\n .ele-step-model__step--wrapper {\n width: 100%;\n height: 64px;\n padding: 16px;\n display: flex;\n flex-direction: row;\n align-items: center;\n background: #fff;\n .ele-steps {\n .ant-steps-item {\n text-align: left;\n }\n }\n }\n .ele-step-model__content--wrapper {\n width: 100%;\n width: 100%;\n margin-top: 16px;\n margin-bottom: 16px;\n height: calc(100vh - 64px - 64px - 16px - 16px);\n overflow: auto;\n }\n .ele-step-model__footer--wrapper {\n width: 100%;\n height: 64px;\n background: #fff;\n position: absolute;\n bottom: 0;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: end;\n }\n}\n</style>import meta from '@/views/tree-table-page/meta'\n",".ele-step-model__wrapper {\n width: 100%;\n height: 100vh;\n position: relative;\n}\n.ele-step-model__wrapper .ele-step-model__step--wrapper {\n width: 100%;\n height: 64px;\n padding: 16px;\n display: flex;\n flex-direction: row;\n align-items: center;\n background: #fff;\n}\n.ele-step-model__wrapper .ele-step-model__step--wrapper .ele-steps .ant-steps-item {\n text-align: left;\n}\n.ele-step-model__wrapper .ele-step-model__content--wrapper {\n width: 100%;\n width: 100%;\n margin-top: 16px;\n margin-bottom: 16px;\n height: calc(100vh - 64px - 64px - 16px - 16px);\n overflow: auto;\n}\n.ele-step-model__wrapper .ele-step-model__footer--wrapper {\n width: 100%;\n height: 64px;\n background: #fff;\n position: absolute;\n bottom: 0;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: end;\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
5005
|
+
|
|
5006
|
+
};
|
|
5007
|
+
/* scoped */
|
|
5008
|
+
const __vue_scope_id__$6 = "data-v-7e474ae0";
|
|
5009
|
+
/* module identifier */
|
|
5010
|
+
const __vue_module_identifier__$6 = undefined;
|
|
5011
|
+
/* functional template */
|
|
5012
|
+
const __vue_is_functional_template__$6 = false;
|
|
5013
|
+
/* style inject SSR */
|
|
5014
|
+
|
|
5015
|
+
/* style inject shadow dom */
|
|
5016
|
+
|
|
5017
|
+
|
|
5018
|
+
|
|
5019
|
+
const __vue_component__$6 = /*#__PURE__*/normalizeComponent(
|
|
5020
|
+
{ render: __vue_render__$6, staticRenderFns: __vue_staticRenderFns__$6 },
|
|
5021
|
+
__vue_inject_styles__$6,
|
|
5022
|
+
__vue_script__$6,
|
|
5023
|
+
__vue_scope_id__$6,
|
|
5024
|
+
__vue_is_functional_template__$6,
|
|
5025
|
+
__vue_module_identifier__$6,
|
|
5026
|
+
false,
|
|
5027
|
+
createInjector,
|
|
5028
|
+
undefined,
|
|
5029
|
+
undefined
|
|
5030
|
+
);
|
|
5031
|
+
|
|
5032
|
+
//
|
|
5033
|
+
var script$5 = {
|
|
5034
|
+
name: 'ele-tpl',
|
|
5035
|
+
props: {
|
|
5036
|
+
modelName: {
|
|
5037
|
+
type: String
|
|
5038
|
+
}
|
|
5039
|
+
},
|
|
5040
|
+
components: {
|
|
5041
|
+
[__vue_component__$h.name]: __vue_component__$h,
|
|
5042
|
+
[__vue_component__$8.name]: __vue_component__$8,
|
|
5043
|
+
[__vue_component__$6.name]: __vue_component__$6,
|
|
5044
|
+
[__vue_component__$7.name]: __vue_component__$7
|
|
5045
|
+
},
|
|
5046
|
+
computed: {
|
|
5047
|
+
modelNameValidator() {
|
|
5048
|
+
const target = models.find(model => model.name === this.modelName);
|
|
5049
|
+
return {
|
|
5050
|
+
existed: !!target,
|
|
5051
|
+
message: !!target ? '' : `Model <span style="color:red;">${this.modelName}</span> not found`
|
|
5052
|
+
};
|
|
5053
|
+
},
|
|
5054
|
+
genModelRef() {
|
|
5055
|
+
return v4();
|
|
5056
|
+
}
|
|
5057
|
+
},
|
|
5058
|
+
methods: {
|
|
5059
|
+
getModel() {
|
|
5060
|
+
return this.$refs[this.genModelRef];
|
|
5061
|
+
}
|
|
5062
|
+
}
|
|
5063
|
+
};
|
|
5064
|
+
|
|
5065
|
+
/* script */
|
|
5066
|
+
const __vue_script__$5 = script$5;
|
|
5067
|
+
|
|
5068
|
+
/* template */
|
|
5069
|
+
var __vue_render__$5 = function () {
|
|
5070
|
+
var _vm = this;
|
|
5071
|
+
var _h = _vm.$createElement;
|
|
5072
|
+
var _c = _vm._self._c || _h;
|
|
5073
|
+
return _vm.modelNameValidator.existed
|
|
5074
|
+
? _c(
|
|
5075
|
+
_vm.modelName,
|
|
5076
|
+
_vm._g(
|
|
5077
|
+
_vm._b(
|
|
5078
|
+
{
|
|
5079
|
+
ref: _vm.genModelRef,
|
|
5080
|
+
tag: "component",
|
|
5081
|
+
scopedSlots: _vm._u(
|
|
5082
|
+
[
|
|
5083
|
+
_vm._l(_vm.$scopedSlots, function (idx, name) {
|
|
5084
|
+
return {
|
|
5085
|
+
key: name,
|
|
5086
|
+
fn: function (data) {
|
|
5087
|
+
return [_vm._t(name, null, null, data)]
|
|
5088
|
+
},
|
|
5089
|
+
}
|
|
5090
|
+
}),
|
|
5091
|
+
],
|
|
5092
|
+
null,
|
|
5093
|
+
true
|
|
5094
|
+
),
|
|
5095
|
+
},
|
|
5096
|
+
"component",
|
|
5097
|
+
_vm.$attrs,
|
|
5098
|
+
false
|
|
5099
|
+
),
|
|
5100
|
+
_vm.$listeners
|
|
5101
|
+
)
|
|
5102
|
+
)
|
|
5103
|
+
: _c("div", {
|
|
5104
|
+
domProps: { innerHTML: _vm._s(_vm.modelNameValidator.message) },
|
|
5105
|
+
})
|
|
5106
|
+
};
|
|
5107
|
+
var __vue_staticRenderFns__$5 = [];
|
|
5108
|
+
__vue_render__$5._withStripped = true;
|
|
5109
|
+
|
|
5110
|
+
/* style */
|
|
5111
|
+
const __vue_inject_styles__$5 = function (inject) {
|
|
5112
|
+
if (!inject) return
|
|
5113
|
+
inject("data-v-46431deb_0", { source: ".has-error .ele-upload__wrapper .ele-upload__inner {\n border-color: #F5222D;\n}\n.has-error .ele-upload__wrapper .ele-upload__inner .ele-upload__area .ele-upload__area--icon .anticon-cloud-upload {\n color: #F5222D;\n}\n.has-error .ele-upload__wrapper .ele-upload__inner .ele-upload__area .ele-upload__area--text .ele-upload__message {\n color: #F5222D;\n}\n.has-error .ele-upload__wrapper .ele-upload__inner .ele-upload__area .ele-upload__area--text .ele-upload__ext {\n color: #FFA39E;\n}\n:root {\n --idooel-primary-color: #1890FF;\n --idoole-black-02: rgba(0, 0, 0, 0.04);\n --idoole-black-06: rgba(0, 0, 0, 0.44);\n --idoole-black-07: rgba(0, 0, 0, 0.64);\n --idoole-black-008: rgba(0, 0, 0, 0.88);\n --idooel-border-width: 2;\n --idooel-border-color: #53a8ff;\n --idooel-column-border-width: 1;\n --idooel-column-border-color: #d9ecff;\n --idooel-form-title-border-color: rgba(0, 0, 0, 0.16);\n --idooel-form-upload-bg-color: rgba(0, 0, 0, 0.02);\n --idooel-form-upload-border-hover-color: #40A9FF;\n --idooel-form-border-radius: 2px;\n --idooel-form-border-err-color: #F5222D;\n --idooel-link-06: #1890FF;\n --idooel-link-03: #91D5FF;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["index.vue"],"names":[],"mappings":"AAAA;EACE,qBAAqB;AACvB;AACA;EACE,cAAc;AAChB;AACA;EACE,cAAc;AAChB;AACA;EACE,cAAc;AAChB;AAEA;EACE,+BAA+B;EAC/B,sCAAsC;EACtC,sCAAsC;EACtC,sCAAsC;EACtC,uCAAuC;EACvC,wBAAwB;EACxB,8BAA8B;EAC9B,+BAA+B;EAC/B,qCAAqC;EACrC,qDAAqD;EACrD,kDAAkD;EAClD,gDAAgD;EAChD,gCAAgC;EAChC,uCAAuC;EACvC,yBAAyB;EACzB,yBAAyB;AAC3B;;AAEA,oCAAoC","file":"index.vue","sourcesContent":[".has-error .ele-upload__wrapper .ele-upload__inner {\n border-color: #F5222D;\n}\n.has-error .ele-upload__wrapper .ele-upload__inner .ele-upload__area .ele-upload__area--icon .anticon-cloud-upload {\n color: #F5222D;\n}\n.has-error .ele-upload__wrapper .ele-upload__inner .ele-upload__area .ele-upload__area--text .ele-upload__message {\n color: #F5222D;\n}\n.has-error .ele-upload__wrapper .ele-upload__inner .ele-upload__area .ele-upload__area--text .ele-upload__ext {\n color: #FFA39E;\n}\n\n:root {\n --idooel-primary-color: #1890FF;\n --idoole-black-02: rgba(0, 0, 0, 0.04);\n --idoole-black-06: rgba(0, 0, 0, 0.44);\n --idoole-black-07: rgba(0, 0, 0, 0.64);\n --idoole-black-008: rgba(0, 0, 0, 0.88);\n --idooel-border-width: 2;\n --idooel-border-color: #53a8ff;\n --idooel-column-border-width: 1;\n --idooel-column-border-color: #d9ecff;\n --idooel-form-title-border-color: rgba(0, 0, 0, 0.16);\n --idooel-form-upload-bg-color: rgba(0, 0, 0, 0.02);\n --idooel-form-upload-border-hover-color: #40A9FF;\n --idooel-form-border-radius: 2px;\n --idooel-form-border-err-color: #F5222D;\n --idooel-link-06: #1890FF;\n --idooel-link-03: #91D5FF;\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
5114
|
+
|
|
5115
|
+
};
|
|
5116
|
+
/* scoped */
|
|
5117
|
+
const __vue_scope_id__$5 = undefined;
|
|
5118
|
+
/* module identifier */
|
|
5119
|
+
const __vue_module_identifier__$5 = undefined;
|
|
3996
5120
|
/* functional template */
|
|
3997
|
-
const __vue_is_functional_template__$
|
|
5121
|
+
const __vue_is_functional_template__$5 = false;
|
|
3998
5122
|
/* style inject SSR */
|
|
3999
5123
|
|
|
4000
5124
|
/* style inject shadow dom */
|
|
4001
5125
|
|
|
4002
5126
|
|
|
4003
5127
|
|
|
4004
|
-
const __vue_component__$
|
|
4005
|
-
{ render: __vue_render__$
|
|
4006
|
-
__vue_inject_styles__$
|
|
4007
|
-
__vue_script__$
|
|
4008
|
-
__vue_scope_id__$
|
|
4009
|
-
__vue_is_functional_template__$
|
|
4010
|
-
__vue_module_identifier__$
|
|
5128
|
+
const __vue_component__$5 = /*#__PURE__*/normalizeComponent(
|
|
5129
|
+
{ render: __vue_render__$5, staticRenderFns: __vue_staticRenderFns__$5 },
|
|
5130
|
+
__vue_inject_styles__$5,
|
|
5131
|
+
__vue_script__$5,
|
|
5132
|
+
__vue_scope_id__$5,
|
|
5133
|
+
__vue_is_functional_template__$5,
|
|
5134
|
+
__vue_module_identifier__$5,
|
|
4011
5135
|
false,
|
|
4012
5136
|
createInjector,
|
|
4013
5137
|
undefined,
|
|
4014
5138
|
undefined
|
|
4015
5139
|
);
|
|
4016
5140
|
|
|
4017
|
-
__vue_component__$
|
|
5141
|
+
__vue_component__$5.install = Vue => Vue.component(__vue_component__$5.name, __vue_component__$5);
|
|
5142
|
+
|
|
5143
|
+
__vue_component__$9.install = Vue => Vue.component(__vue_component__$9.name, __vue_component__$9);
|
|
4018
5144
|
|
|
5145
|
+
//
|
|
5146
|
+
//
|
|
5147
|
+
//
|
|
5148
|
+
//
|
|
5149
|
+
//
|
|
4019
5150
|
//
|
|
4020
5151
|
//
|
|
4021
5152
|
//
|
|
@@ -4023,63 +5154,97 @@ __vue_component__$4.install = Vue => Vue.component(__vue_component__$4.name, __v
|
|
|
4023
5154
|
//
|
|
4024
5155
|
//
|
|
4025
5156
|
|
|
4026
|
-
var script$
|
|
4027
|
-
name: '
|
|
5157
|
+
var script$4 = {
|
|
5158
|
+
name: 'ele-alert',
|
|
5159
|
+
props: {
|
|
5160
|
+
type: {
|
|
5161
|
+
type: String,
|
|
5162
|
+
default: 'success'
|
|
5163
|
+
},
|
|
5164
|
+
showIcon: {
|
|
5165
|
+
type: Boolean,
|
|
5166
|
+
default: true
|
|
5167
|
+
},
|
|
5168
|
+
message: {
|
|
5169
|
+
type: String,
|
|
5170
|
+
default: 'Success Tips'
|
|
5171
|
+
},
|
|
5172
|
+
description: {
|
|
5173
|
+
type: String
|
|
5174
|
+
},
|
|
5175
|
+
closable: {
|
|
5176
|
+
type: Boolean,
|
|
5177
|
+
default: true
|
|
5178
|
+
},
|
|
5179
|
+
closeText: {
|
|
5180
|
+
type: String
|
|
5181
|
+
}
|
|
5182
|
+
}
|
|
4028
5183
|
};
|
|
4029
5184
|
|
|
4030
5185
|
/* script */
|
|
4031
|
-
const __vue_script__$
|
|
5186
|
+
const __vue_script__$4 = script$4;
|
|
4032
5187
|
|
|
4033
5188
|
/* template */
|
|
4034
|
-
var __vue_render__$
|
|
5189
|
+
var __vue_render__$4 = function () {
|
|
4035
5190
|
var _vm = this;
|
|
4036
5191
|
var _h = _vm.$createElement;
|
|
4037
5192
|
var _c = _vm._self._c || _h;
|
|
4038
|
-
return _c("
|
|
5193
|
+
return _c("a-alert", {
|
|
5194
|
+
staticClass: "ele-alert",
|
|
5195
|
+
attrs: {
|
|
5196
|
+
message: _vm.message,
|
|
5197
|
+
description: _vm.description,
|
|
5198
|
+
type: _vm.type,
|
|
5199
|
+
closable: _vm.closable,
|
|
5200
|
+
closeText: _vm.closeText,
|
|
5201
|
+
"show-icon": _vm.showIcon,
|
|
5202
|
+
},
|
|
5203
|
+
})
|
|
4039
5204
|
};
|
|
4040
|
-
var __vue_staticRenderFns__$
|
|
4041
|
-
__vue_render__$
|
|
5205
|
+
var __vue_staticRenderFns__$4 = [];
|
|
5206
|
+
__vue_render__$4._withStripped = true;
|
|
4042
5207
|
|
|
4043
5208
|
/* style */
|
|
4044
|
-
const __vue_inject_styles__$
|
|
5209
|
+
const __vue_inject_styles__$4 = function (inject) {
|
|
4045
5210
|
if (!inject) return
|
|
4046
|
-
inject("data-v-
|
|
5211
|
+
inject("data-v-ee7d6de4_0", { source: ".ele-alert[data-v-ee7d6de4] {\n text-align: left !important;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["/Users/huangshan/Goldgov/front/ganjiao/base-elearning-frontend-model/packages/components/packages/alert/src/index.vue","index.vue"],"names":[],"mappings":"AA0CA;EACA,2BAAA;ACzCA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\n <a-alert\n class=\"ele-alert\"\n :message=\"message\" \n :description=\"description\" \n :type=\"type\"\n :closable=\"closable\"\n :closeText=\"closeText\"\n :show-icon=\"showIcon\" />\n</template>\n\n<script>\nexport default {\n name: 'ele-alert',\n props: {\n type: {\n type: String,\n default: 'success'\n },\n showIcon: {\n type: Boolean,\n default: true\n },\n message: {\n type: String,\n default: 'Success Tips'\n },\n description: {\n type: String\n },\n closable: {\n type: Boolean,\n default: true\n },\n closeText: {\n type: String\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.ele-alert {\n text-align: left !important;\n}\n</style>",".ele-alert {\n text-align: left !important;\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
4047
5212
|
|
|
4048
5213
|
};
|
|
4049
5214
|
/* scoped */
|
|
4050
|
-
const __vue_scope_id__$
|
|
5215
|
+
const __vue_scope_id__$4 = "data-v-ee7d6de4";
|
|
4051
5216
|
/* module identifier */
|
|
4052
|
-
const __vue_module_identifier__$
|
|
5217
|
+
const __vue_module_identifier__$4 = undefined;
|
|
4053
5218
|
/* functional template */
|
|
4054
|
-
const __vue_is_functional_template__$
|
|
5219
|
+
const __vue_is_functional_template__$4 = false;
|
|
4055
5220
|
/* style inject SSR */
|
|
4056
5221
|
|
|
4057
5222
|
/* style inject shadow dom */
|
|
4058
5223
|
|
|
4059
5224
|
|
|
4060
5225
|
|
|
4061
|
-
const __vue_component__$
|
|
4062
|
-
{ render: __vue_render__$
|
|
4063
|
-
__vue_inject_styles__$
|
|
4064
|
-
__vue_script__$
|
|
4065
|
-
__vue_scope_id__$
|
|
4066
|
-
__vue_is_functional_template__$
|
|
4067
|
-
__vue_module_identifier__$
|
|
5226
|
+
const __vue_component__$4 = /*#__PURE__*/normalizeComponent(
|
|
5227
|
+
{ render: __vue_render__$4, staticRenderFns: __vue_staticRenderFns__$4 },
|
|
5228
|
+
__vue_inject_styles__$4,
|
|
5229
|
+
__vue_script__$4,
|
|
5230
|
+
__vue_scope_id__$4,
|
|
5231
|
+
__vue_is_functional_template__$4,
|
|
5232
|
+
__vue_module_identifier__$4,
|
|
4068
5233
|
false,
|
|
4069
5234
|
createInjector,
|
|
4070
5235
|
undefined,
|
|
4071
5236
|
undefined
|
|
4072
5237
|
);
|
|
4073
5238
|
|
|
4074
|
-
__vue_component__$
|
|
5239
|
+
__vue_component__$4.install = Vue => Vue.component(__vue_component__$4.name, __vue_component__$4);
|
|
4075
5240
|
|
|
4076
|
-
__vue_component__$
|
|
5241
|
+
__vue_component__$e.install = Vue => Vue.component(__vue_component__$e.name, __vue_component__$e);
|
|
4077
5242
|
|
|
4078
|
-
__vue_component__$
|
|
5243
|
+
__vue_component__$d.install = Vue => Vue.component(__vue_component__$d.name, __vue_component__$d);
|
|
4079
5244
|
|
|
4080
|
-
__vue_component__$
|
|
5245
|
+
__vue_component__$f.install = Vue => Vue.component(__vue_component__$f.name, __vue_component__$f);
|
|
4081
5246
|
|
|
4082
|
-
__vue_component__$
|
|
5247
|
+
__vue_component__$c.install = Vue => Vue.component(__vue_component__$c.name, __vue_component__$c);
|
|
4083
5248
|
|
|
4084
5249
|
//
|
|
4085
5250
|
//
|
|
@@ -4103,8 +5268,17 @@ __vue_component__$7.install = Vue => Vue.component(__vue_component__$7.name, __v
|
|
|
4103
5268
|
//
|
|
4104
5269
|
//
|
|
4105
5270
|
//
|
|
5271
|
+
//
|
|
5272
|
+
//
|
|
5273
|
+
//
|
|
5274
|
+
//
|
|
5275
|
+
//
|
|
5276
|
+
//
|
|
5277
|
+
//
|
|
5278
|
+
//
|
|
5279
|
+
//
|
|
4106
5280
|
|
|
4107
|
-
var script$
|
|
5281
|
+
var script$3 = {
|
|
4108
5282
|
name: 'ele-modal',
|
|
4109
5283
|
props: {
|
|
4110
5284
|
value: {
|
|
@@ -4125,7 +5299,7 @@ var script$2 = {
|
|
|
4125
5299
|
},
|
|
4126
5300
|
size: {
|
|
4127
5301
|
type: String,
|
|
4128
|
-
default: '
|
|
5302
|
+
default: 'middle'
|
|
4129
5303
|
},
|
|
4130
5304
|
map: {
|
|
4131
5305
|
type: Object,
|
|
@@ -4152,6 +5326,10 @@ var script$2 = {
|
|
|
4152
5326
|
onlyClose: {
|
|
4153
5327
|
type: Boolean,
|
|
4154
5328
|
default: false
|
|
5329
|
+
},
|
|
5330
|
+
buttonGroupMeta: {
|
|
5331
|
+
type: Object,
|
|
5332
|
+
default: () => ({})
|
|
4155
5333
|
}
|
|
4156
5334
|
},
|
|
4157
5335
|
watch: {
|
|
@@ -4185,27 +5363,171 @@ var script$2 = {
|
|
|
4185
5363
|
middle: 80,
|
|
4186
5364
|
big: 40
|
|
4187
5365
|
};
|
|
4188
|
-
this.map = Object.assign(this.map, defaultMap);
|
|
5366
|
+
this.map = Object.assign(this.map, defaultMap);
|
|
5367
|
+
},
|
|
5368
|
+
methods: {
|
|
5369
|
+
openModal() {
|
|
5370
|
+
this.showModal = true;
|
|
5371
|
+
this.removeHidden();
|
|
5372
|
+
},
|
|
5373
|
+
handleCancel() {
|
|
5374
|
+
this.showModal = false;
|
|
5375
|
+
this.removeHidden();
|
|
5376
|
+
console.log('on-cancel');
|
|
5377
|
+
this.$emit('cancel');
|
|
5378
|
+
this.$emit('input', this.showModal);
|
|
5379
|
+
},
|
|
5380
|
+
handleOk() {
|
|
5381
|
+
console.log('on-ok');
|
|
5382
|
+
this.$emit('ok');
|
|
5383
|
+
},
|
|
5384
|
+
removeHidden() {
|
|
5385
|
+
let ishidden = document.body.style.overflow === 'hidden';
|
|
5386
|
+
ishidden && (document.body.style.overflow = 'initial');
|
|
5387
|
+
}
|
|
5388
|
+
}
|
|
5389
|
+
};
|
|
5390
|
+
|
|
5391
|
+
/* script */
|
|
5392
|
+
const __vue_script__$3 = script$3;
|
|
5393
|
+
|
|
5394
|
+
/* template */
|
|
5395
|
+
var __vue_render__$3 = function () {
|
|
5396
|
+
var _vm = this;
|
|
5397
|
+
var _h = _vm.$createElement;
|
|
5398
|
+
var _c = _vm._self._c || _h;
|
|
5399
|
+
return _c(
|
|
5400
|
+
"a-modal",
|
|
5401
|
+
{
|
|
5402
|
+
attrs: {
|
|
5403
|
+
title: _vm.title,
|
|
5404
|
+
cancelText: _vm.cancelText,
|
|
5405
|
+
okText: _vm.okText,
|
|
5406
|
+
closable: _vm.closable,
|
|
5407
|
+
width: _vm.width,
|
|
5408
|
+
keyboard: false,
|
|
5409
|
+
maskClosable: _vm.maskClosable,
|
|
5410
|
+
dialogStyle: { top: _vm.upDownDistance[_vm.size] + "px" },
|
|
5411
|
+
bodyStyle: { maxHeight: _vm.maxheight, overflowY: "auto" },
|
|
5412
|
+
footer: _vm.showFooter ? undefined : null,
|
|
5413
|
+
},
|
|
5414
|
+
on: { cancel: _vm.handleCancel, ok: _vm.handleOk },
|
|
5415
|
+
model: {
|
|
5416
|
+
value: _vm.showModal,
|
|
5417
|
+
callback: function ($$v) {
|
|
5418
|
+
_vm.showModal = $$v;
|
|
5419
|
+
},
|
|
5420
|
+
expression: "showModal",
|
|
5421
|
+
},
|
|
5422
|
+
},
|
|
5423
|
+
[
|
|
5424
|
+
_vm._t("default"),
|
|
5425
|
+
_vm._v(" "),
|
|
5426
|
+
_c("template", { slot: "footer" }, [
|
|
5427
|
+
_c(
|
|
5428
|
+
"div",
|
|
5429
|
+
{ staticClass: "ele-modal__footer" },
|
|
5430
|
+
_vm._l(_vm.buttonGroupMeta.elements, function (btn) {
|
|
5431
|
+
return _c(
|
|
5432
|
+
"ele-button",
|
|
5433
|
+
_vm._g(
|
|
5434
|
+
{
|
|
5435
|
+
key: btn.key,
|
|
5436
|
+
attrs: { type: btn.type, "event-name": btn.eventName },
|
|
5437
|
+
},
|
|
5438
|
+
_vm.$listeners
|
|
5439
|
+
),
|
|
5440
|
+
[_vm._v("\n " + _vm._s(btn.label) + "\n ")]
|
|
5441
|
+
)
|
|
5442
|
+
}),
|
|
5443
|
+
1
|
|
5444
|
+
),
|
|
5445
|
+
]),
|
|
5446
|
+
],
|
|
5447
|
+
2
|
|
5448
|
+
)
|
|
5449
|
+
};
|
|
5450
|
+
var __vue_staticRenderFns__$3 = [];
|
|
5451
|
+
__vue_render__$3._withStripped = true;
|
|
5452
|
+
|
|
5453
|
+
/* style */
|
|
5454
|
+
const __vue_inject_styles__$3 = undefined;
|
|
5455
|
+
/* scoped */
|
|
5456
|
+
const __vue_scope_id__$3 = undefined;
|
|
5457
|
+
/* module identifier */
|
|
5458
|
+
const __vue_module_identifier__$3 = undefined;
|
|
5459
|
+
/* functional template */
|
|
5460
|
+
const __vue_is_functional_template__$3 = false;
|
|
5461
|
+
/* style inject */
|
|
5462
|
+
|
|
5463
|
+
/* style inject SSR */
|
|
5464
|
+
|
|
5465
|
+
/* style inject shadow dom */
|
|
5466
|
+
|
|
5467
|
+
|
|
5468
|
+
|
|
5469
|
+
const __vue_component__$3 = /*#__PURE__*/normalizeComponent(
|
|
5470
|
+
{ render: __vue_render__$3, staticRenderFns: __vue_staticRenderFns__$3 },
|
|
5471
|
+
__vue_inject_styles__$3,
|
|
5472
|
+
__vue_script__$3,
|
|
5473
|
+
__vue_scope_id__$3,
|
|
5474
|
+
__vue_is_functional_template__$3,
|
|
5475
|
+
__vue_module_identifier__$3,
|
|
5476
|
+
false,
|
|
5477
|
+
undefined,
|
|
5478
|
+
undefined,
|
|
5479
|
+
undefined
|
|
5480
|
+
);
|
|
5481
|
+
|
|
5482
|
+
__vue_component__$3.install = Vue => Vue.component(__vue_component__$3.name, __vue_component__$3);
|
|
5483
|
+
|
|
5484
|
+
__vue_component__$b.install = Vue => Vue.component(__vue_component__$b.name, __vue_component__$b);
|
|
5485
|
+
|
|
5486
|
+
__vue_component__$a.install = Vue => Vue.component(__vue_component__$a.name, __vue_component__$a);
|
|
5487
|
+
|
|
5488
|
+
//
|
|
5489
|
+
var script$2 = {
|
|
5490
|
+
name: 'ele-batch-export',
|
|
5491
|
+
components: {
|
|
5492
|
+
EleIcon: __vue_component__$f
|
|
5493
|
+
},
|
|
5494
|
+
props: {
|
|
5495
|
+
value: {
|
|
5496
|
+
type: Boolean,
|
|
5497
|
+
default: false
|
|
5498
|
+
},
|
|
5499
|
+
buttonGroupMeta: {
|
|
5500
|
+
type: Object,
|
|
5501
|
+
default: () => {
|
|
5502
|
+
return {
|
|
5503
|
+
elements: [{
|
|
5504
|
+
label: '关闭',
|
|
5505
|
+
key: 'close',
|
|
5506
|
+
type: 'primary',
|
|
5507
|
+
eventName: 'handleClose'
|
|
5508
|
+
}]
|
|
5509
|
+
};
|
|
5510
|
+
}
|
|
5511
|
+
}
|
|
5512
|
+
},
|
|
5513
|
+
data() {
|
|
5514
|
+
return {
|
|
5515
|
+
innerValue: false
|
|
5516
|
+
};
|
|
5517
|
+
},
|
|
5518
|
+
watch: {
|
|
5519
|
+
value: {
|
|
5520
|
+
handler(value) {
|
|
5521
|
+
this.$nextTick(() => {
|
|
5522
|
+
this.innerValue = value;
|
|
5523
|
+
});
|
|
5524
|
+
},
|
|
5525
|
+
immediate: true
|
|
5526
|
+
}
|
|
4189
5527
|
},
|
|
4190
5528
|
methods: {
|
|
4191
|
-
|
|
4192
|
-
this
|
|
4193
|
-
this.removeHidden();
|
|
4194
|
-
},
|
|
4195
|
-
handleCancel() {
|
|
4196
|
-
this.showModal = false;
|
|
4197
|
-
this.removeHidden();
|
|
4198
|
-
console.log('on-cancel');
|
|
4199
|
-
this.$emit('cancel');
|
|
4200
|
-
this.$emit('input', this.showModal);
|
|
4201
|
-
},
|
|
4202
|
-
handleOk() {
|
|
4203
|
-
console.log('on-ok');
|
|
4204
|
-
this.$emit('ok');
|
|
4205
|
-
},
|
|
4206
|
-
removeHidden() {
|
|
4207
|
-
let ishidden = document.body.style.overflow === 'hidden';
|
|
4208
|
-
ishidden && (document.body.style.overflow = 'initial');
|
|
5529
|
+
handleClick() {
|
|
5530
|
+
this.$emit('on-batch-export');
|
|
4209
5531
|
}
|
|
4210
5532
|
}
|
|
4211
5533
|
};
|
|
@@ -4219,50 +5541,75 @@ var __vue_render__$2 = function () {
|
|
|
4219
5541
|
var _h = _vm.$createElement;
|
|
4220
5542
|
var _c = _vm._self._c || _h;
|
|
4221
5543
|
return _c(
|
|
4222
|
-
"
|
|
4223
|
-
|
|
4224
|
-
|
|
4225
|
-
|
|
4226
|
-
|
|
4227
|
-
|
|
4228
|
-
|
|
4229
|
-
|
|
4230
|
-
|
|
4231
|
-
|
|
4232
|
-
dialogStyle: { top: _vm.upDownDistance[_vm.size] + "px" },
|
|
4233
|
-
bodyStyle: { maxHeight: _vm.maxheight, overflowY: "auto" },
|
|
4234
|
-
footer: _vm.showFooter ? undefined : null,
|
|
4235
|
-
},
|
|
4236
|
-
on: { cancel: _vm.handleCancel, ok: _vm.handleOk },
|
|
4237
|
-
model: {
|
|
4238
|
-
value: _vm.showModal,
|
|
4239
|
-
callback: function ($$v) {
|
|
4240
|
-
_vm.showModal = $$v;
|
|
5544
|
+
"ele-modal",
|
|
5545
|
+
_vm._g(
|
|
5546
|
+
{
|
|
5547
|
+
attrs: { buttonGroupMeta: _vm.buttonGroupMeta, title: "批量导出" },
|
|
5548
|
+
model: {
|
|
5549
|
+
value: _vm.innerValue,
|
|
5550
|
+
callback: function ($$v) {
|
|
5551
|
+
_vm.innerValue = $$v;
|
|
5552
|
+
},
|
|
5553
|
+
expression: "innerValue",
|
|
4241
5554
|
},
|
|
4242
|
-
expression: "showModal",
|
|
4243
5555
|
},
|
|
4244
|
-
|
|
5556
|
+
_vm.$listeners
|
|
5557
|
+
),
|
|
4245
5558
|
[
|
|
4246
|
-
|
|
4247
|
-
|
|
4248
|
-
|
|
4249
|
-
|
|
4250
|
-
|
|
5559
|
+
_c("div", { staticClass: "ele-batch-export__content" }, [
|
|
5560
|
+
_c(
|
|
5561
|
+
"div",
|
|
5562
|
+
{ staticClass: "ele-batch-export__container" },
|
|
5563
|
+
[
|
|
5564
|
+
_c("ele-icon", {
|
|
5565
|
+
staticClass: "ele-batch-export__icon",
|
|
5566
|
+
attrs: { type: "download" },
|
|
5567
|
+
}),
|
|
5568
|
+
_vm._v(" "),
|
|
5569
|
+
_c("div", { staticClass: "ele-batch-export__handle" }, [
|
|
5570
|
+
_c(
|
|
5571
|
+
"div",
|
|
5572
|
+
{
|
|
5573
|
+
staticClass: "ele-batch-export__btn",
|
|
5574
|
+
on: { click: _vm.handleClick },
|
|
5575
|
+
},
|
|
5576
|
+
[
|
|
5577
|
+
_vm._v(
|
|
5578
|
+
"导出任务处理中..... 请点击此按钮跳转到“批处理管理”菜单查看任务进度"
|
|
5579
|
+
),
|
|
5580
|
+
]
|
|
5581
|
+
),
|
|
5582
|
+
_vm._v(" "),
|
|
5583
|
+
_c("div", { staticClass: "ele-batch-export__btn--hint" }, [
|
|
5584
|
+
_vm._v("批处理任务的准备工作会在后台运行"),
|
|
5585
|
+
]),
|
|
5586
|
+
]),
|
|
5587
|
+
],
|
|
5588
|
+
1
|
|
5589
|
+
),
|
|
5590
|
+
_vm._v(" "),
|
|
5591
|
+
_c("div", { staticClass: "ele-batch-export__message" }, [
|
|
5592
|
+
_vm._v("\n 您可以请点击上方按钮查看任务进度或关闭弹框\n "),
|
|
5593
|
+
]),
|
|
5594
|
+
]),
|
|
5595
|
+
]
|
|
4251
5596
|
)
|
|
4252
5597
|
};
|
|
4253
5598
|
var __vue_staticRenderFns__$2 = [];
|
|
4254
5599
|
__vue_render__$2._withStripped = true;
|
|
4255
5600
|
|
|
4256
5601
|
/* style */
|
|
4257
|
-
const __vue_inject_styles__$2 =
|
|
5602
|
+
const __vue_inject_styles__$2 = function (inject) {
|
|
5603
|
+
if (!inject) return
|
|
5604
|
+
inject("data-v-0ccbf9ac_0", { source: ".ele-batch-export__content[data-v-0ccbf9ac] {\n height: 106px;\n}\n.ele-batch-export__content .ele-batch-export__container[data-v-0ccbf9ac] {\n border-width: 1px;\n border-style: dashed;\n height: 80px;\n border-color: var(--idooel-link-06);\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0 16px;\n}\n.ele-batch-export__content .ele-batch-export__container .ele-batch-export__icon[data-v-0ccbf9ac] {\n font-size: 48px;\n color: var(--idooel-link-06);\n}\n.ele-batch-export__content .ele-batch-export__container .ele-batch-export__handle[data-v-0ccbf9ac] {\n margin-left: 16px;\n}\n.ele-batch-export__content .ele-batch-export__container .ele-batch-export__handle .ele-batch-export__btn[data-v-0ccbf9ac] {\n color: var(--idooel-link-06);\n font-size: 16px;\n cursor: pointer;\n}\n.ele-batch-export__content .ele-batch-export__container .ele-batch-export__handle .ele-batch-export__btn--hint[data-v-0ccbf9ac] {\n color: var(--idooel-link-03);\n font-size: 14px;\n}\n.ele-batch-export__content .ele-batch-export__message[data-v-0ccbf9ac] {\n color: var(--idooel-link-06);\n font-size: 14px;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["/Users/huangshan/Goldgov/front/ganjiao/base-elearning-frontend-model/packages/components/packages/batch-export/src/index.vue","index.vue"],"names":[],"mappings":"AAyEA;EACA,aAAA;ACxEA;ADyEA;EACA,iBAAA;EACA,oBAAA;EACA,YAAA;EACA,mCAAA;EACA,aAAA;EACA,mBAAA;EACA,mBAAA;EACA,eAAA;ACvEA;ADwEA;EACA,eAAA;EACA,4BAAA;ACtEA;ADwEA;EACA,iBAAA;ACtEA;ADuEA;EACA,4BAAA;EACA,eAAA;EACA,eAAA;ACrEA;ADuEA;EACA,4BAAA;EACA,eAAA;ACrEA;ADyEA;EACA,4BAAA;EACA,eAAA;ACvEA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\n <ele-modal \n v-model=\"innerValue\" \n v-on=\"$listeners\"\n :buttonGroupMeta=\"buttonGroupMeta\" \n title=\"批量导出\">\n <div class=\"ele-batch-export__content\">\n <div class=\"ele-batch-export__container\">\n <ele-icon class=\"ele-batch-export__icon\" type=\"download\"></ele-icon>\n <div class=\"ele-batch-export__handle\">\n <div class=\"ele-batch-export__btn\" @click=\"handleClick\">导出任务处理中..... 请点击此按钮跳转到“批处理管理”菜单查看任务进度</div>\n <div class=\"ele-batch-export__btn--hint\">批处理任务的准备工作会在后台运行</div>\n </div>\n </div>\n <div class=\"ele-batch-export__message\">\n 您可以请点击上方按钮查看任务进度或关闭弹框\n </div>\n </div>\n </ele-modal>\n</template>\n\n<script>\nimport EleIcon from '../../icon/src/index.vue'\nexport default {\n name: 'ele-batch-export',\n components: {\n EleIcon\n },\n props: {\n value: {\n type: Boolean,\n default: false\n },\n buttonGroupMeta: {\n type: Object,\n default: () => {\n return {\n elements: [\n {\n label: '关闭',\n key: 'close',\n type: 'primary',\n eventName: 'handleClose'\n }\n ]\n }\n }\n }\n },\n data() {\n return {\n innerValue: false\n }\n },\n watch: {\n value: {\n handler (value) {\n this.$nextTick(() => {\n this.innerValue = value\n })\n },\n immediate: true\n }\n },\n methods: {\n handleClick () {\n this.$emit('on-batch-export')\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.ele-batch-export__content {\n height: 106px;\n .ele-batch-export__container {\n border-width: 1px;\n border-style: dashed;\n height: 80px;\n border-color: var(--idooel-link-06);\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0 16px;\n .ele-batch-export__icon {\n font-size: 48px;\n color: var(--idooel-link-06);\n }\n .ele-batch-export__handle {\n margin-left: 16px;\n .ele-batch-export__btn {\n color: var(--idooel-link-06);\n font-size: 16px;\n cursor: pointer;\n }\n .ele-batch-export__btn--hint {\n color: var(--idooel-link-03);\n font-size: 14px;\n }\n }\n }\n .ele-batch-export__message {\n color: var(--idooel-link-06);\n font-size: 14px;\n }\n}\n</style>",".ele-batch-export__content {\n height: 106px;\n}\n.ele-batch-export__content .ele-batch-export__container {\n border-width: 1px;\n border-style: dashed;\n height: 80px;\n border-color: var(--idooel-link-06);\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0 16px;\n}\n.ele-batch-export__content .ele-batch-export__container .ele-batch-export__icon {\n font-size: 48px;\n color: var(--idooel-link-06);\n}\n.ele-batch-export__content .ele-batch-export__container .ele-batch-export__handle {\n margin-left: 16px;\n}\n.ele-batch-export__content .ele-batch-export__container .ele-batch-export__handle .ele-batch-export__btn {\n color: var(--idooel-link-06);\n font-size: 16px;\n cursor: pointer;\n}\n.ele-batch-export__content .ele-batch-export__container .ele-batch-export__handle .ele-batch-export__btn--hint {\n color: var(--idooel-link-03);\n font-size: 14px;\n}\n.ele-batch-export__content .ele-batch-export__message {\n color: var(--idooel-link-06);\n font-size: 14px;\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
5605
|
+
|
|
5606
|
+
};
|
|
4258
5607
|
/* scoped */
|
|
4259
|
-
const __vue_scope_id__$2 =
|
|
5608
|
+
const __vue_scope_id__$2 = "data-v-0ccbf9ac";
|
|
4260
5609
|
/* module identifier */
|
|
4261
5610
|
const __vue_module_identifier__$2 = undefined;
|
|
4262
5611
|
/* functional template */
|
|
4263
5612
|
const __vue_is_functional_template__$2 = false;
|
|
4264
|
-
/* style inject */
|
|
4265
|
-
|
|
4266
5613
|
/* style inject SSR */
|
|
4267
5614
|
|
|
4268
5615
|
/* style inject shadow dom */
|
|
@@ -4277,17 +5624,17 @@ __vue_render__$2._withStripped = true;
|
|
|
4277
5624
|
__vue_is_functional_template__$2,
|
|
4278
5625
|
__vue_module_identifier__$2,
|
|
4279
5626
|
false,
|
|
4280
|
-
|
|
5627
|
+
createInjector,
|
|
4281
5628
|
undefined,
|
|
4282
5629
|
undefined
|
|
4283
5630
|
);
|
|
4284
5631
|
|
|
4285
5632
|
__vue_component__$2.install = Vue => Vue.component(__vue_component__$2.name, __vue_component__$2);
|
|
4286
5633
|
|
|
4287
|
-
|
|
4288
|
-
|
|
4289
|
-
|
|
4290
|
-
|
|
5634
|
+
//
|
|
5635
|
+
//
|
|
5636
|
+
//
|
|
5637
|
+
//
|
|
4291
5638
|
//
|
|
4292
5639
|
//
|
|
4293
5640
|
//
|
|
@@ -4296,7 +5643,29 @@ __vue_component__$5.install = Vue => Vue.component(__vue_component__$5.name, __v
|
|
|
4296
5643
|
//
|
|
4297
5644
|
|
|
4298
5645
|
var script$1 = {
|
|
4299
|
-
name: 'ele-
|
|
5646
|
+
name: 'ele-date-range',
|
|
5647
|
+
model: {
|
|
5648
|
+
prop: 'value',
|
|
5649
|
+
event: 'change'
|
|
5650
|
+
},
|
|
5651
|
+
props: {
|
|
5652
|
+
showTime: {
|
|
5653
|
+
type: Object
|
|
5654
|
+
},
|
|
5655
|
+
format: {
|
|
5656
|
+
type: Array,
|
|
5657
|
+
default: () => ['YYYY-MM-DD', 'YYYY-MM-DD']
|
|
5658
|
+
},
|
|
5659
|
+
value: {
|
|
5660
|
+
type: Array,
|
|
5661
|
+
default: () => []
|
|
5662
|
+
}
|
|
5663
|
+
},
|
|
5664
|
+
methods: {
|
|
5665
|
+
onChange(date, dateString) {
|
|
5666
|
+
this.$emit('change', dateString);
|
|
5667
|
+
}
|
|
5668
|
+
}
|
|
4300
5669
|
};
|
|
4301
5670
|
|
|
4302
5671
|
/* script */
|
|
@@ -4307,7 +5676,11 @@ var __vue_render__$1 = function () {
|
|
|
4307
5676
|
var _vm = this;
|
|
4308
5677
|
var _h = _vm.$createElement;
|
|
4309
5678
|
var _c = _vm._self._c || _h;
|
|
4310
|
-
return _c("
|
|
5679
|
+
return _c("a-range-picker", {
|
|
5680
|
+
staticStyle: { width: "100%" },
|
|
5681
|
+
attrs: { "show-time": _vm.showTime, value: _vm.value, format: _vm.format },
|
|
5682
|
+
on: { change: _vm.onChange },
|
|
5683
|
+
})
|
|
4311
5684
|
};
|
|
4312
5685
|
var __vue_staticRenderFns__$1 = [];
|
|
4313
5686
|
__vue_render__$1._withStripped = true;
|
|
@@ -4315,11 +5688,11 @@ __vue_render__$1._withStripped = true;
|
|
|
4315
5688
|
/* style */
|
|
4316
5689
|
const __vue_inject_styles__$1 = function (inject) {
|
|
4317
5690
|
if (!inject) return
|
|
4318
|
-
inject("data-v-
|
|
5691
|
+
inject("data-v-fc0aeb36_0", { source: "\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["index.vue"],"names":[],"mappings":";;AAEA,oCAAoC","file":"index.vue"}, media: undefined });
|
|
4319
5692
|
|
|
4320
5693
|
};
|
|
4321
5694
|
/* scoped */
|
|
4322
|
-
const __vue_scope_id__$1 = "data-v-
|
|
5695
|
+
const __vue_scope_id__$1 = "data-v-fc0aeb36";
|
|
4323
5696
|
/* module identifier */
|
|
4324
5697
|
const __vue_module_identifier__$1 = undefined;
|
|
4325
5698
|
/* functional template */
|
|
@@ -4345,123 +5718,31 @@ __vue_render__$1._withStripped = true;
|
|
|
4345
5718
|
|
|
4346
5719
|
__vue_component__$1.install = Vue => Vue.component(__vue_component__$1.name, __vue_component__$1);
|
|
4347
5720
|
|
|
4348
|
-
__vue_component__$
|
|
4349
|
-
|
|
4350
|
-
__vue_component__$f.install = Vue => Vue.component(__vue_component__$f.name, __vue_component__$f);
|
|
4351
|
-
|
|
4352
|
-
__vue_component__$d.install = Vue => Vue.component(__vue_component__$d.name, __vue_component__$d);
|
|
5721
|
+
__vue_component__$i.install = Vue => Vue.component(__vue_component__$i.name, __vue_component__$i);
|
|
4353
5722
|
|
|
4354
|
-
|
|
4355
|
-
SUBMIT: 'submit',
|
|
4356
|
-
CANCEL: 'cancel'
|
|
4357
|
-
};
|
|
5723
|
+
__vue_component__$j.install = Vue => Vue.component(__vue_component__$j.name, __vue_component__$j);
|
|
4358
5724
|
|
|
4359
5725
|
//
|
|
5726
|
+
//
|
|
5727
|
+
//
|
|
5728
|
+
//
|
|
5729
|
+
|
|
4360
5730
|
var script = {
|
|
4361
|
-
name: 'ele-
|
|
4362
|
-
|
|
4363
|
-
|
|
5731
|
+
name: 'ele-modal-import',
|
|
5732
|
+
model: {
|
|
5733
|
+
prop: 'value',
|
|
5734
|
+
event: 'change'
|
|
4364
5735
|
},
|
|
4365
5736
|
props: {
|
|
4366
|
-
|
|
4367
|
-
type:
|
|
4368
|
-
|
|
4369
|
-
formMeta: {
|
|
4370
|
-
type: Object
|
|
4371
|
-
},
|
|
4372
|
-
footerMeta: {
|
|
4373
|
-
type: Object
|
|
5737
|
+
value: {
|
|
5738
|
+
type: Boolean,
|
|
5739
|
+
default: false
|
|
4374
5740
|
}
|
|
4375
5741
|
},
|
|
4376
5742
|
data() {
|
|
4377
|
-
return {
|
|
4378
|
-
|
|
4379
|
-
|
|
4380
|
-
formRef() {
|
|
4381
|
-
return v4();
|
|
4382
|
-
},
|
|
4383
|
-
assignAttrForEvents() {
|
|
4384
|
-
const events = this.footerElements.reduce((ret, ele) => {
|
|
4385
|
-
ret[ele.eventName] = e => {
|
|
4386
|
-
this.$emit(ele.eventName || 'click', {
|
|
4387
|
-
...e,
|
|
4388
|
-
formModel: this.formModels
|
|
4389
|
-
});
|
|
4390
|
-
};
|
|
4391
|
-
return ret;
|
|
4392
|
-
}, {});
|
|
4393
|
-
return {
|
|
4394
|
-
...this.$listeners,
|
|
4395
|
-
...events,
|
|
4396
|
-
[BUILT_IN_EVENT_NAMES.SUBMIT]: this[BUILT_IN_EVENT_NAMES.SUBMIT],
|
|
4397
|
-
[BUILT_IN_EVENT_NAMES.CANCEL]: this[BUILT_IN_EVENT_NAMES.CANCEL]
|
|
4398
|
-
};
|
|
4399
|
-
},
|
|
4400
|
-
elements() {
|
|
4401
|
-
const {
|
|
4402
|
-
elements
|
|
4403
|
-
} = this.formMeta;
|
|
4404
|
-
return elements;
|
|
4405
|
-
},
|
|
4406
|
-
preRequest() {
|
|
4407
|
-
const {
|
|
4408
|
-
preRequest
|
|
4409
|
-
} = this.formMeta;
|
|
4410
|
-
return preRequest;
|
|
4411
|
-
},
|
|
4412
|
-
infoRequest() {
|
|
4413
|
-
const {
|
|
4414
|
-
infoRequest
|
|
4415
|
-
} = this.formMeta;
|
|
4416
|
-
return infoRequest;
|
|
4417
|
-
},
|
|
4418
|
-
submitRequest() {
|
|
4419
|
-
const {
|
|
4420
|
-
submitRequest
|
|
4421
|
-
} = this.formMeta;
|
|
4422
|
-
return submitRequest;
|
|
4423
|
-
},
|
|
4424
|
-
footerElements() {
|
|
4425
|
-
const {
|
|
4426
|
-
elements
|
|
4427
|
-
} = this.footerMeta;
|
|
4428
|
-
return elements.call(this);
|
|
4429
|
-
},
|
|
4430
|
-
formModels() {
|
|
4431
|
-
return this.$refs[this.formRef].getFieldsValue();
|
|
4432
|
-
}
|
|
4433
|
-
},
|
|
4434
|
-
methods: {
|
|
4435
|
-
async submitRequestTrigger() {},
|
|
4436
|
-
async infoRequestTrigger() {},
|
|
4437
|
-
async preRequestTrigger() {
|
|
4438
|
-
const {
|
|
4439
|
-
url,
|
|
4440
|
-
requestType = 'GET',
|
|
4441
|
-
fieldMap = {}
|
|
4442
|
-
} = this.preRequest;
|
|
4443
|
-
if (!url) return;
|
|
4444
|
-
await net[requestType.toLowerCase()](url, {});
|
|
4445
|
-
},
|
|
4446
|
-
setValueForField(props) {
|
|
4447
|
-
this.$refs[this.formRef].setFieldsValue(props);
|
|
4448
|
-
},
|
|
4449
|
-
[BUILT_IN_EVENT_NAMES.SUBMIT](props) {
|
|
4450
|
-
const status = this.$refs[this.formRef].validateFields();
|
|
4451
|
-
console.log('status', status);
|
|
4452
|
-
if (status) {
|
|
4453
|
-
console.log('status', this.formModels);
|
|
4454
|
-
} else {
|
|
4455
|
-
console.log('error');
|
|
4456
|
-
}
|
|
4457
|
-
},
|
|
4458
|
-
[BUILT_IN_EVENT_NAMES.CANCEL](props) {
|
|
4459
|
-
console.log('inner CANCEL', props);
|
|
4460
|
-
}
|
|
4461
|
-
},
|
|
4462
|
-
async mounted() {
|
|
4463
|
-
await this.preRequestTrigger();
|
|
4464
|
-
await this.infoRequestTrigger();
|
|
5743
|
+
return {
|
|
5744
|
+
innerValue: true
|
|
5745
|
+
};
|
|
4465
5746
|
}
|
|
4466
5747
|
};
|
|
4467
5748
|
|
|
@@ -4473,33 +5754,15 @@ var __vue_render__ = function () {
|
|
|
4473
5754
|
var _vm = this;
|
|
4474
5755
|
var _h = _vm.$createElement;
|
|
4475
5756
|
var _c = _vm._self._c || _h;
|
|
4476
|
-
return _c("
|
|
4477
|
-
|
|
4478
|
-
|
|
4479
|
-
|
|
4480
|
-
|
|
4481
|
-
|
|
4482
|
-
"
|
|
4483
|
-
|
|
4484
|
-
|
|
4485
|
-
1
|
|
4486
|
-
),
|
|
4487
|
-
_vm._v(" "),
|
|
4488
|
-
_c(
|
|
4489
|
-
"div",
|
|
4490
|
-
{ staticClass: "form-model__footer" },
|
|
4491
|
-
[
|
|
4492
|
-
_c(
|
|
4493
|
-
"ele-button-group",
|
|
4494
|
-
_vm._g(
|
|
4495
|
-
{ attrs: { "data-source": _vm.footerElements } },
|
|
4496
|
-
_vm.assignAttrForEvents
|
|
4497
|
-
)
|
|
4498
|
-
),
|
|
4499
|
-
],
|
|
4500
|
-
1
|
|
4501
|
-
),
|
|
4502
|
-
])
|
|
5757
|
+
return _c("ele-modal", {
|
|
5758
|
+
model: {
|
|
5759
|
+
value: _vm.innerValue,
|
|
5760
|
+
callback: function ($$v) {
|
|
5761
|
+
_vm.innerValue = $$v;
|
|
5762
|
+
},
|
|
5763
|
+
expression: "innerValue",
|
|
5764
|
+
},
|
|
5765
|
+
})
|
|
4503
5766
|
};
|
|
4504
5767
|
var __vue_staticRenderFns__ = [];
|
|
4505
5768
|
__vue_render__._withStripped = true;
|
|
@@ -4507,11 +5770,11 @@ __vue_render__._withStripped = true;
|
|
|
4507
5770
|
/* style */
|
|
4508
5771
|
const __vue_inject_styles__ = function (inject) {
|
|
4509
5772
|
if (!inject) return
|
|
4510
|
-
inject("data-v-
|
|
5773
|
+
inject("data-v-fb6f0796_0", { source: "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n", map: {"version":3,"sources":[],"names":[],"mappings":"","file":"index.vue"}, media: undefined });
|
|
4511
5774
|
|
|
4512
5775
|
};
|
|
4513
5776
|
/* scoped */
|
|
4514
|
-
const __vue_scope_id__ = "data-v-
|
|
5777
|
+
const __vue_scope_id__ = "data-v-fb6f0796";
|
|
4515
5778
|
/* module identifier */
|
|
4516
5779
|
const __vue_module_identifier__ = undefined;
|
|
4517
5780
|
/* functional template */
|
|
@@ -4537,9 +5800,17 @@ __vue_render__._withStripped = true;
|
|
|
4537
5800
|
|
|
4538
5801
|
__vue_component__.install = Vue => Vue.component(__vue_component__.name, __vue_component__);
|
|
4539
5802
|
|
|
4540
|
-
|
|
4541
|
-
|
|
4542
|
-
|
|
5803
|
+
__vue_component__$h.install = Vue => Vue.component(__vue_component__$h.name, __vue_component__$h);
|
|
5804
|
+
|
|
5805
|
+
__vue_component__$7.install = Vue => Vue.component(__vue_component__$7.name, __vue_component__$7);
|
|
5806
|
+
|
|
5807
|
+
__vue_component__$8.install = Vue => Vue.component(__vue_component__$8.name, __vue_component__$8);
|
|
5808
|
+
|
|
5809
|
+
__vue_component__$6.install = Vue => Vue.component(__vue_component__$6.name, __vue_component__$6);
|
|
5810
|
+
|
|
5811
|
+
const compositeComponents = [__vue_component__$i, __vue_component__$j, __vue_component__];
|
|
5812
|
+
const models = [__vue_component__$h, __vue_component__$7, __vue_component__$8, __vue_component__$6];
|
|
5813
|
+
const components = [__vue_component__$r, __vue_component__$q, __vue_component__$p, __vue_component__$o, __vue_component__$m, __vue_component__$l, __vue_component__$5, __vue_component__$9, __vue_component__$4, __vue_component__$e, __vue_component__$d, __vue_component__$f, __vue_component__$c, __vue_component__$3, __vue_component__$b, __vue_component__$a, __vue_component__$2, __vue_component__$1, ...compositeComponents, ...models];
|
|
4543
5814
|
const install = Vue => {
|
|
4544
5815
|
if (install.installed) return;
|
|
4545
5816
|
install.installed = true;
|
|
@@ -4548,4 +5819,4 @@ const install = Vue => {
|
|
|
4548
5819
|
});
|
|
4549
5820
|
};
|
|
4550
5821
|
|
|
4551
|
-
export { __vue_component__$
|
|
5822
|
+
export { __vue_component__$r as EleButton, __vue_component__$q as EleDate, __vue_component__$p as EleInput, __vue_component__$3 as EleModal, __vue_component__$o as EleSelect, __vue_component__$m as EleTable, __vue_component__$5 as EleTpl, __vue_component__$l as EleTree, install as default, models };
|