@idooel/components 0.0.1-beta.1 → 0.0.1-beta.2
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.js +2295 -378
- package/dist/@idooel/components.umd.js +2306 -388
- package/package.json +3 -2
- package/packages/attachment/index.js +0 -0
- package/packages/attachment/src/index.vue +15 -0
- package/packages/batch-export/index.js +5 -0
- package/packages/batch-export/src/index.vue +15 -0
- package/packages/checkbox/index.js +5 -0
- package/packages/checkbox/src/index.vue +44 -0
- package/packages/composite-components/button-group/src/index.vue +0 -5
- package/packages/composite-components/search-area/src/index.vue +75 -40
- package/packages/form/index.js +5 -0
- package/packages/form/src/index.vue +119 -0
- package/packages/form-model/index.js +5 -0
- package/packages/form-model/src/index.vue +139 -0
- package/packages/icon/index.js +5 -0
- package/packages/icon/src/index.vue +32 -0
- package/packages/index.js +25 -2
- package/packages/input/src/index.vue +5 -1
- package/packages/input-number/index.js +5 -0
- package/packages/input-number/src/index.vue +24 -0
- package/packages/modal/index.js +5 -0
- package/packages/modal/src/index.vue +129 -0
- package/packages/radio/index.js +5 -0
- package/packages/radio/src/index.vue +48 -0
- package/packages/select-entity/index.js +5 -0
- package/packages/select-entity/src/index.vue +114 -0
- package/packages/table/src/action.vue +1 -1
- package/packages/text/index.js +5 -0
- package/packages/text/src/index.vue +15 -0
- package/packages/textarea/index.js +5 -0
- package/packages/textarea/src/index.vue +49 -0
- package/packages/theme/form.scss +24 -0
- package/packages/theme/index.scss +12 -0
- package/packages/theme/variables.scss +23 -1
- package/packages/tree-table-model/src/index.vue +35 -27
- package/packages/upload/index.js +5 -0
- package/packages/upload/src/index.vue +351 -0
- package/packages/utils/index.js +4 -0
- package/scripts/rollup.config.js +1 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type, route, net } from '@idooel/shared';
|
|
2
2
|
import moment from 'moment';
|
|
3
|
+
import FileUpload from 'vue-upload-component';
|
|
3
4
|
|
|
4
5
|
//
|
|
5
6
|
//
|
|
@@ -19,7 +20,7 @@ import moment from 'moment';
|
|
|
19
20
|
//
|
|
20
21
|
//
|
|
21
22
|
|
|
22
|
-
var script$
|
|
23
|
+
var script$n = {
|
|
23
24
|
name: 'ele-button',
|
|
24
25
|
props: {
|
|
25
26
|
record: {
|
|
@@ -137,10 +138,10 @@ function normalizeComponent(template, style, script, scopeId, isFunctionalTempla
|
|
|
137
138
|
}
|
|
138
139
|
|
|
139
140
|
/* script */
|
|
140
|
-
const __vue_script__$
|
|
141
|
+
const __vue_script__$n = script$n;
|
|
141
142
|
|
|
142
143
|
/* template */
|
|
143
|
-
var __vue_render__$
|
|
144
|
+
var __vue_render__$n = function () {
|
|
144
145
|
var _vm = this;
|
|
145
146
|
var _h = _vm.$createElement;
|
|
146
147
|
var _c = _vm._self._c || _h;
|
|
@@ -186,17 +187,17 @@ var __vue_render__$b = function () {
|
|
|
186
187
|
2
|
|
187
188
|
)
|
|
188
189
|
};
|
|
189
|
-
var __vue_staticRenderFns__$
|
|
190
|
-
__vue_render__$
|
|
190
|
+
var __vue_staticRenderFns__$n = [];
|
|
191
|
+
__vue_render__$n._withStripped = true;
|
|
191
192
|
|
|
192
193
|
/* style */
|
|
193
|
-
const __vue_inject_styles__$
|
|
194
|
+
const __vue_inject_styles__$n = undefined;
|
|
194
195
|
/* scoped */
|
|
195
|
-
const __vue_scope_id__$
|
|
196
|
+
const __vue_scope_id__$n = undefined;
|
|
196
197
|
/* module identifier */
|
|
197
|
-
const __vue_module_identifier__$
|
|
198
|
+
const __vue_module_identifier__$n = undefined;
|
|
198
199
|
/* functional template */
|
|
199
|
-
const __vue_is_functional_template__$
|
|
200
|
+
const __vue_is_functional_template__$n = false;
|
|
200
201
|
/* style inject */
|
|
201
202
|
|
|
202
203
|
/* style inject SSR */
|
|
@@ -205,20 +206,20 @@ __vue_render__$b._withStripped = true;
|
|
|
205
206
|
|
|
206
207
|
|
|
207
208
|
|
|
208
|
-
const __vue_component__$
|
|
209
|
-
{ render: __vue_render__$
|
|
210
|
-
__vue_inject_styles__$
|
|
211
|
-
__vue_script__$
|
|
212
|
-
__vue_scope_id__$
|
|
213
|
-
__vue_is_functional_template__$
|
|
214
|
-
__vue_module_identifier__$
|
|
209
|
+
const __vue_component__$n = /*#__PURE__*/normalizeComponent(
|
|
210
|
+
{ render: __vue_render__$n, staticRenderFns: __vue_staticRenderFns__$n },
|
|
211
|
+
__vue_inject_styles__$n,
|
|
212
|
+
__vue_script__$n,
|
|
213
|
+
__vue_scope_id__$n,
|
|
214
|
+
__vue_is_functional_template__$n,
|
|
215
|
+
__vue_module_identifier__$n,
|
|
215
216
|
false,
|
|
216
217
|
undefined,
|
|
217
218
|
undefined,
|
|
218
219
|
undefined
|
|
219
220
|
);
|
|
220
221
|
|
|
221
|
-
__vue_component__$
|
|
222
|
+
__vue_component__$n.install = Vue => Vue.component(__vue_component__$n.name, __vue_component__$n);
|
|
222
223
|
|
|
223
224
|
//
|
|
224
225
|
//
|
|
@@ -233,7 +234,7 @@ __vue_component__$b.install = Vue => Vue.component(__vue_component__$b.name, __v
|
|
|
233
234
|
//
|
|
234
235
|
//
|
|
235
236
|
|
|
236
|
-
var script$
|
|
237
|
+
var script$m = {
|
|
237
238
|
name: 'ele-date',
|
|
238
239
|
props: {
|
|
239
240
|
value: {
|
|
@@ -261,10 +262,10 @@ var script$a = {
|
|
|
261
262
|
};
|
|
262
263
|
|
|
263
264
|
/* script */
|
|
264
|
-
const __vue_script__$
|
|
265
|
+
const __vue_script__$m = script$m;
|
|
265
266
|
|
|
266
267
|
/* template */
|
|
267
|
-
var __vue_render__$
|
|
268
|
+
var __vue_render__$m = function () {
|
|
268
269
|
var _vm = this;
|
|
269
270
|
var _h = _vm.$createElement;
|
|
270
271
|
var _c = _vm._self._c || _h;
|
|
@@ -279,17 +280,17 @@ var __vue_render__$a = function () {
|
|
|
279
280
|
on: { focus: _vm.onFocus, panelChange: _vm.onPanelChange },
|
|
280
281
|
})
|
|
281
282
|
};
|
|
282
|
-
var __vue_staticRenderFns__$
|
|
283
|
-
__vue_render__$
|
|
283
|
+
var __vue_staticRenderFns__$m = [];
|
|
284
|
+
__vue_render__$m._withStripped = true;
|
|
284
285
|
|
|
285
286
|
/* style */
|
|
286
|
-
const __vue_inject_styles__$
|
|
287
|
+
const __vue_inject_styles__$m = undefined;
|
|
287
288
|
/* scoped */
|
|
288
|
-
const __vue_scope_id__$
|
|
289
|
+
const __vue_scope_id__$m = undefined;
|
|
289
290
|
/* module identifier */
|
|
290
|
-
const __vue_module_identifier__$
|
|
291
|
+
const __vue_module_identifier__$m = undefined;
|
|
291
292
|
/* functional template */
|
|
292
|
-
const __vue_is_functional_template__$
|
|
293
|
+
const __vue_is_functional_template__$m = false;
|
|
293
294
|
/* style inject */
|
|
294
295
|
|
|
295
296
|
/* style inject SSR */
|
|
@@ -298,29 +299,33 @@ __vue_render__$a._withStripped = true;
|
|
|
298
299
|
|
|
299
300
|
|
|
300
301
|
|
|
301
|
-
const __vue_component__$
|
|
302
|
-
{ render: __vue_render__$
|
|
303
|
-
__vue_inject_styles__$
|
|
304
|
-
__vue_script__$
|
|
305
|
-
__vue_scope_id__$
|
|
306
|
-
__vue_is_functional_template__$
|
|
307
|
-
__vue_module_identifier__$
|
|
302
|
+
const __vue_component__$m = /*#__PURE__*/normalizeComponent(
|
|
303
|
+
{ render: __vue_render__$m, staticRenderFns: __vue_staticRenderFns__$m },
|
|
304
|
+
__vue_inject_styles__$m,
|
|
305
|
+
__vue_script__$m,
|
|
306
|
+
__vue_scope_id__$m,
|
|
307
|
+
__vue_is_functional_template__$m,
|
|
308
|
+
__vue_module_identifier__$m,
|
|
308
309
|
false,
|
|
309
310
|
undefined,
|
|
310
311
|
undefined,
|
|
311
312
|
undefined
|
|
312
313
|
);
|
|
313
314
|
|
|
314
|
-
__vue_component__$
|
|
315
|
+
__vue_component__$m.install = Vue => Vue.component(__vue_component__$m.name, __vue_component__$m);
|
|
315
316
|
|
|
316
317
|
//
|
|
317
318
|
//
|
|
318
319
|
//
|
|
319
320
|
//
|
|
320
321
|
|
|
321
|
-
var script$
|
|
322
|
+
var script$l = {
|
|
322
323
|
name: 'ele-input',
|
|
323
324
|
props: {
|
|
325
|
+
maxLength: {
|
|
326
|
+
type: Number,
|
|
327
|
+
default: 125
|
|
328
|
+
},
|
|
324
329
|
value: {
|
|
325
330
|
type: String
|
|
326
331
|
}
|
|
@@ -378,53 +383,53 @@ function addStyle(id, css) {
|
|
|
378
383
|
}
|
|
379
384
|
|
|
380
385
|
/* script */
|
|
381
|
-
const __vue_script__$
|
|
386
|
+
const __vue_script__$l = script$l;
|
|
382
387
|
|
|
383
388
|
/* template */
|
|
384
|
-
var __vue_render__$
|
|
389
|
+
var __vue_render__$l = function () {
|
|
385
390
|
var _vm = this;
|
|
386
391
|
var _h = _vm.$createElement;
|
|
387
392
|
var _c = _vm._self._c || _h;
|
|
388
393
|
return _c("a-input", {
|
|
389
|
-
attrs: { value: _vm.value },
|
|
394
|
+
attrs: { value: _vm.value, "max-length": _vm.maxLength },
|
|
390
395
|
on: { change: _vm.onChange },
|
|
391
396
|
})
|
|
392
397
|
};
|
|
393
|
-
var __vue_staticRenderFns__$
|
|
394
|
-
__vue_render__$
|
|
398
|
+
var __vue_staticRenderFns__$l = [];
|
|
399
|
+
__vue_render__$l._withStripped = true;
|
|
395
400
|
|
|
396
401
|
/* style */
|
|
397
|
-
const __vue_inject_styles__$
|
|
402
|
+
const __vue_inject_styles__$l = function (inject) {
|
|
398
403
|
if (!inject) return
|
|
399
|
-
inject("data-v-
|
|
404
|
+
inject("data-v-468d0810_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 });
|
|
400
405
|
|
|
401
406
|
};
|
|
402
407
|
/* scoped */
|
|
403
|
-
const __vue_scope_id__$
|
|
408
|
+
const __vue_scope_id__$l = "data-v-468d0810";
|
|
404
409
|
/* module identifier */
|
|
405
|
-
const __vue_module_identifier__$
|
|
410
|
+
const __vue_module_identifier__$l = undefined;
|
|
406
411
|
/* functional template */
|
|
407
|
-
const __vue_is_functional_template__$
|
|
412
|
+
const __vue_is_functional_template__$l = false;
|
|
408
413
|
/* style inject SSR */
|
|
409
414
|
|
|
410
415
|
/* style inject shadow dom */
|
|
411
416
|
|
|
412
417
|
|
|
413
418
|
|
|
414
|
-
const __vue_component__$
|
|
415
|
-
{ render: __vue_render__$
|
|
416
|
-
__vue_inject_styles__$
|
|
417
|
-
__vue_script__$
|
|
418
|
-
__vue_scope_id__$
|
|
419
|
-
__vue_is_functional_template__$
|
|
420
|
-
__vue_module_identifier__$
|
|
419
|
+
const __vue_component__$l = /*#__PURE__*/normalizeComponent(
|
|
420
|
+
{ render: __vue_render__$l, staticRenderFns: __vue_staticRenderFns__$l },
|
|
421
|
+
__vue_inject_styles__$l,
|
|
422
|
+
__vue_script__$l,
|
|
423
|
+
__vue_scope_id__$l,
|
|
424
|
+
__vue_is_functional_template__$l,
|
|
425
|
+
__vue_module_identifier__$l,
|
|
421
426
|
false,
|
|
422
427
|
createInjector,
|
|
423
428
|
undefined,
|
|
424
429
|
undefined
|
|
425
430
|
);
|
|
426
431
|
|
|
427
|
-
__vue_component__$
|
|
432
|
+
__vue_component__$l.install = Vue => Vue.component(__vue_component__$l.name, __vue_component__$l);
|
|
428
433
|
|
|
429
434
|
//
|
|
430
435
|
//
|
|
@@ -435,7 +440,7 @@ __vue_component__$9.install = Vue => Vue.component(__vue_component__$9.name, __v
|
|
|
435
440
|
//
|
|
436
441
|
//
|
|
437
442
|
|
|
438
|
-
var script$
|
|
443
|
+
var script$k = {
|
|
439
444
|
name: 'ele-select',
|
|
440
445
|
props: {
|
|
441
446
|
value: {
|
|
@@ -458,10 +463,10 @@ var script$8 = {
|
|
|
458
463
|
};
|
|
459
464
|
|
|
460
465
|
/* script */
|
|
461
|
-
const __vue_script__$
|
|
466
|
+
const __vue_script__$k = script$k;
|
|
462
467
|
|
|
463
468
|
/* template */
|
|
464
|
-
var __vue_render__$
|
|
469
|
+
var __vue_render__$k = function () {
|
|
465
470
|
var _vm = this;
|
|
466
471
|
var _h = _vm.$createElement;
|
|
467
472
|
var _c = _vm._self._c || _h;
|
|
@@ -482,41 +487,41 @@ var __vue_render__$8 = function () {
|
|
|
482
487
|
1
|
|
483
488
|
)
|
|
484
489
|
};
|
|
485
|
-
var __vue_staticRenderFns__$
|
|
486
|
-
__vue_render__$
|
|
490
|
+
var __vue_staticRenderFns__$k = [];
|
|
491
|
+
__vue_render__$k._withStripped = true;
|
|
487
492
|
|
|
488
493
|
/* style */
|
|
489
|
-
const __vue_inject_styles__$
|
|
494
|
+
const __vue_inject_styles__$k = function (inject) {
|
|
490
495
|
if (!inject) return
|
|
491
496
|
inject("data-v-499435e8_0", { source: "\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["index.vue"],"names":[],"mappings":";;AAEA,oCAAoC","file":"index.vue"}, media: undefined });
|
|
492
497
|
|
|
493
498
|
};
|
|
494
499
|
/* scoped */
|
|
495
|
-
const __vue_scope_id__$
|
|
500
|
+
const __vue_scope_id__$k = "data-v-499435e8";
|
|
496
501
|
/* module identifier */
|
|
497
|
-
const __vue_module_identifier__$
|
|
502
|
+
const __vue_module_identifier__$k = undefined;
|
|
498
503
|
/* functional template */
|
|
499
|
-
const __vue_is_functional_template__$
|
|
504
|
+
const __vue_is_functional_template__$k = false;
|
|
500
505
|
/* style inject SSR */
|
|
501
506
|
|
|
502
507
|
/* style inject shadow dom */
|
|
503
508
|
|
|
504
509
|
|
|
505
510
|
|
|
506
|
-
const __vue_component__$
|
|
507
|
-
{ render: __vue_render__$
|
|
508
|
-
__vue_inject_styles__$
|
|
509
|
-
__vue_script__$
|
|
510
|
-
__vue_scope_id__$
|
|
511
|
-
__vue_is_functional_template__$
|
|
512
|
-
__vue_module_identifier__$
|
|
511
|
+
const __vue_component__$k = /*#__PURE__*/normalizeComponent(
|
|
512
|
+
{ render: __vue_render__$k, staticRenderFns: __vue_staticRenderFns__$k },
|
|
513
|
+
__vue_inject_styles__$k,
|
|
514
|
+
__vue_script__$k,
|
|
515
|
+
__vue_scope_id__$k,
|
|
516
|
+
__vue_is_functional_template__$k,
|
|
517
|
+
__vue_module_identifier__$k,
|
|
513
518
|
false,
|
|
514
519
|
createInjector,
|
|
515
520
|
undefined,
|
|
516
521
|
undefined
|
|
517
522
|
);
|
|
518
523
|
|
|
519
|
-
__vue_component__$
|
|
524
|
+
__vue_component__$k.install = Vue => Vue.component(__vue_component__$k.name, __vue_component__$k);
|
|
520
525
|
|
|
521
526
|
// Unique ID creation requires a high quality random # generator. In the browser we therefore
|
|
522
527
|
// require the crypto API and do not support built-in fallback to lower quality random number
|
|
@@ -1150,7 +1155,7 @@ const parse = (expression, props = {}) => {
|
|
|
1150
1155
|
|
|
1151
1156
|
//
|
|
1152
1157
|
const MENU_KEY_NAMESPACE = 'f7b3b8b0-1b7b-11ec-9621-0242ac130002';
|
|
1153
|
-
var script$
|
|
1158
|
+
var script$j = {
|
|
1154
1159
|
props: {
|
|
1155
1160
|
record: {
|
|
1156
1161
|
type: Object
|
|
@@ -1248,10 +1253,10 @@ var script$7 = {
|
|
|
1248
1253
|
};
|
|
1249
1254
|
|
|
1250
1255
|
/* script */
|
|
1251
|
-
const __vue_script__$
|
|
1256
|
+
const __vue_script__$j = script$j;
|
|
1252
1257
|
|
|
1253
1258
|
/* template */
|
|
1254
|
-
var __vue_render__$
|
|
1259
|
+
var __vue_render__$j = function () {
|
|
1255
1260
|
var _vm = this;
|
|
1256
1261
|
var _h = _vm.$createElement;
|
|
1257
1262
|
var _c = _vm._self._c || _h;
|
|
@@ -1264,7 +1269,19 @@ var __vue_render__$7 = function () {
|
|
|
1264
1269
|
{ key: idx, staticClass: "table-action__item" },
|
|
1265
1270
|
[
|
|
1266
1271
|
item.type == "text"
|
|
1267
|
-
? [
|
|
1272
|
+
? [
|
|
1273
|
+
_c(
|
|
1274
|
+
"span",
|
|
1275
|
+
{
|
|
1276
|
+
on: {
|
|
1277
|
+
click: function ($event) {
|
|
1278
|
+
return _vm.handleClickText(item)
|
|
1279
|
+
},
|
|
1280
|
+
},
|
|
1281
|
+
},
|
|
1282
|
+
[_vm._v(_vm._s(item.label))]
|
|
1283
|
+
),
|
|
1284
|
+
]
|
|
1268
1285
|
: item.type == "dropdown"
|
|
1269
1286
|
? [
|
|
1270
1287
|
_c(
|
|
@@ -1339,34 +1356,34 @@ var __vue_render__$7 = function () {
|
|
|
1339
1356
|
0
|
|
1340
1357
|
)
|
|
1341
1358
|
};
|
|
1342
|
-
var __vue_staticRenderFns__$
|
|
1343
|
-
__vue_render__$
|
|
1359
|
+
var __vue_staticRenderFns__$j = [];
|
|
1360
|
+
__vue_render__$j._withStripped = true;
|
|
1344
1361
|
|
|
1345
1362
|
/* style */
|
|
1346
|
-
const __vue_inject_styles__$
|
|
1363
|
+
const __vue_inject_styles__$j = function (inject) {
|
|
1347
1364
|
if (!inject) return
|
|
1348
|
-
inject("data-v-
|
|
1365
|
+
inject("data-v-572820bc_0", { source: ".g-table__action[data-v-572820bc] {\n display: flex;\n flex-direction: row;\n}\n.g-table__action .table-action__item[data-v-572820bc] {\n font-size: 14px;\n color: #409EFF;\n margin-left: 16px;\n cursor: pointer;\n}\n.g-table__action .table-action__item[data-v-572820bc]:first-child {\n margin-left: 0;\n}\n\n/*# sourceMappingURL=action.vue.map */", map: {"version":3,"sources":["E:\\work\\code\\ganjiao\\ganjian-monorepo\\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>\r\n <div class=\"g-table__action\">\r\n <div class=\"table-action__item\" v-for=\"(item, idx) in execOperationExpression(dataSource)\" :key=\"idx\">\r\n <template v-if=\"item.type == 'text'\">\r\n <span @click=\"handleClickText(item)\">{{ item.label }}</span>\r\n </template>\r\n <template v-else-if=\"item.type == 'dropdown'\">\r\n <a-dropdown>\r\n <a-menu slot=\"overlay\" @click=\"handleDropdownClick\">\r\n <a-menu-item :key=\"`${item.key || ''}${menuKeyDelimiter}${opt.value || ''}`\" v-for=\"opt in execOperationExpression(item.optionList)\">\r\n <template v-if=\"opt.type == 'confirm'\">\r\n <a-popconfirm :title=\"opt.message\" @confirm=\"handleClickConfirm(opt)\">\r\n {{ opt.label }}\r\n </a-popconfirm>\r\n </template>\r\n <template v-else>\r\n {{ opt.label }}\r\n </template>\r\n </a-menu-item>\r\n </a-menu>\r\n <span>{{ item.label }}</span>\r\n </a-dropdown>\r\n </template>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { v5 as uuidv5 } from 'uuid'\r\nimport { type, route } from '@idooel/shared'\r\nimport { parse } from '@idooel/expression'\r\nconst MENU_KEY_NAMESPACE = 'f7b3b8b0-1b7b-11ec-9621-0242ac130002'\r\nexport default {\r\n props: {\r\n record: {\r\n type: Object\r\n },\r\n dataSource: {\r\n type: Array,\r\n default: () => []\r\n }\r\n },\r\n inject: {\r\n requestTreeData: {\r\n default: void 0\r\n },\r\n requestTableData: {\r\n default: void 0\r\n }\r\n },\r\n computed: {\r\n menuKeyDelimiter () {\r\n return uuidv5('_', MENU_KEY_NAMESPACE)\r\n },\r\n builtInMethods () {\r\n return { \r\n requestTreeData: this.requestTreeData, \r\n requestTableData: this.requestTableData \r\n }\r\n }\r\n },\r\n methods: {\r\n execOperationExpression (dataSource = []) {\r\n const ret = dataSource.map(item => {\r\n const { show } = item\r\n if (type.isUndefined(show)) {\r\n return item\r\n } else if (type.isBool(show)) {\r\n if (show) return item\r\n } else if (type.isStr(show)) {\r\n const parseRet = parse(show, { \r\n ...this.record, \r\n _route: route.searchToQueryParams(window.location.search) \r\n })\r\n if (parseRet) return item\r\n }\r\n }).filter(item => item)\r\n return ret\r\n },\r\n handleClickConfirm (props) {\r\n //TODO generate event by special rule\r\n const { eventName, value } = props\r\n this.$emit(eventName, { \r\n key: value, \r\n record: this.record,\r\n builtInMethods: this.builtInMethods \r\n })\r\n },\r\n handleDropdownClick (props) {\r\n const { key } = props\r\n const [parent, child] = key.split(this.menuKeyDelimiter)\r\n if (!parent || !child) {\r\n throw new Error('key is required')\r\n }\r\n const currentDropdown = this.dataSource.find(item => item.key === parent)\r\n const currentClickTarget = currentDropdown.optionList.find(item => item.value === child)\r\n const { eventName, type } = currentClickTarget\r\n //TODO generate event by special rule\r\n if (type === 'confirm') return\r\n this.$emit(eventName, { \r\n key: child, \r\n record: this.record, \r\n builtInMethods: this.builtInMethods \r\n })\r\n },\r\n handleClickText (props) {\r\n const { eventName, key } = props\r\n this.$emit(eventName, { \r\n key, \r\n record: this.record, \r\n builtInMethods: this.builtInMethods \r\n })\r\n }\r\n }\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.g-table__action {\r\n display: flex;\r\n flex-direction: row;\r\n .table-action__item {\r\n font-size: 14px;\r\n color: #409EFF;\r\n margin-left: 16px;\r\n cursor: pointer;\r\n &:first-child {\r\n margin-left: 0;\r\n }\r\n }\r\n}\r\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 });
|
|
1349
1366
|
|
|
1350
1367
|
};
|
|
1351
1368
|
/* scoped */
|
|
1352
|
-
const __vue_scope_id__$
|
|
1369
|
+
const __vue_scope_id__$j = "data-v-572820bc";
|
|
1353
1370
|
/* module identifier */
|
|
1354
|
-
const __vue_module_identifier__$
|
|
1371
|
+
const __vue_module_identifier__$j = undefined;
|
|
1355
1372
|
/* functional template */
|
|
1356
|
-
const __vue_is_functional_template__$
|
|
1373
|
+
const __vue_is_functional_template__$j = false;
|
|
1357
1374
|
/* style inject SSR */
|
|
1358
1375
|
|
|
1359
1376
|
/* style inject shadow dom */
|
|
1360
1377
|
|
|
1361
1378
|
|
|
1362
1379
|
|
|
1363
|
-
const __vue_component__$
|
|
1364
|
-
{ render: __vue_render__$
|
|
1365
|
-
__vue_inject_styles__$
|
|
1366
|
-
__vue_script__$
|
|
1367
|
-
__vue_scope_id__$
|
|
1368
|
-
__vue_is_functional_template__$
|
|
1369
|
-
__vue_module_identifier__$
|
|
1380
|
+
const __vue_component__$j = /*#__PURE__*/normalizeComponent(
|
|
1381
|
+
{ render: __vue_render__$j, staticRenderFns: __vue_staticRenderFns__$j },
|
|
1382
|
+
__vue_inject_styles__$j,
|
|
1383
|
+
__vue_script__$j,
|
|
1384
|
+
__vue_scope_id__$j,
|
|
1385
|
+
__vue_is_functional_template__$j,
|
|
1386
|
+
__vue_module_identifier__$j,
|
|
1370
1387
|
false,
|
|
1371
1388
|
createInjector,
|
|
1372
1389
|
undefined,
|
|
@@ -1374,10 +1391,10 @@ __vue_render__$7._withStripped = true;
|
|
|
1374
1391
|
);
|
|
1375
1392
|
|
|
1376
1393
|
//
|
|
1377
|
-
var script$
|
|
1394
|
+
var script$i = {
|
|
1378
1395
|
name: 'ele-table',
|
|
1379
1396
|
components: {
|
|
1380
|
-
Actions: __vue_component__$
|
|
1397
|
+
Actions: __vue_component__$j
|
|
1381
1398
|
},
|
|
1382
1399
|
props: {
|
|
1383
1400
|
actions: {
|
|
@@ -1420,10 +1437,10 @@ var script$6 = {
|
|
|
1420
1437
|
};
|
|
1421
1438
|
|
|
1422
1439
|
/* script */
|
|
1423
|
-
const __vue_script__$
|
|
1440
|
+
const __vue_script__$i = script$i;
|
|
1424
1441
|
|
|
1425
1442
|
/* template */
|
|
1426
|
-
var __vue_render__$
|
|
1443
|
+
var __vue_render__$i = function () {
|
|
1427
1444
|
var _vm = this;
|
|
1428
1445
|
var _h = _vm.$createElement;
|
|
1429
1446
|
var _c = _vm._self._c || _h;
|
|
@@ -1482,41 +1499,41 @@ var __vue_render__$6 = function () {
|
|
|
1482
1499
|
1
|
|
1483
1500
|
)
|
|
1484
1501
|
};
|
|
1485
|
-
var __vue_staticRenderFns__$
|
|
1486
|
-
__vue_render__$
|
|
1502
|
+
var __vue_staticRenderFns__$i = [];
|
|
1503
|
+
__vue_render__$i._withStripped = true;
|
|
1487
1504
|
|
|
1488
1505
|
/* style */
|
|
1489
|
-
const __vue_inject_styles__$
|
|
1506
|
+
const __vue_inject_styles__$i = function (inject) {
|
|
1490
1507
|
if (!inject) return
|
|
1491
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 });
|
|
1492
1509
|
|
|
1493
1510
|
};
|
|
1494
1511
|
/* scoped */
|
|
1495
|
-
const __vue_scope_id__$
|
|
1512
|
+
const __vue_scope_id__$i = "data-v-6f3faf52";
|
|
1496
1513
|
/* module identifier */
|
|
1497
|
-
const __vue_module_identifier__$
|
|
1514
|
+
const __vue_module_identifier__$i = undefined;
|
|
1498
1515
|
/* functional template */
|
|
1499
|
-
const __vue_is_functional_template__$
|
|
1516
|
+
const __vue_is_functional_template__$i = false;
|
|
1500
1517
|
/* style inject SSR */
|
|
1501
1518
|
|
|
1502
1519
|
/* style inject shadow dom */
|
|
1503
1520
|
|
|
1504
1521
|
|
|
1505
1522
|
|
|
1506
|
-
const __vue_component__$
|
|
1507
|
-
{ render: __vue_render__$
|
|
1508
|
-
__vue_inject_styles__$
|
|
1509
|
-
__vue_script__$
|
|
1510
|
-
__vue_scope_id__$
|
|
1511
|
-
__vue_is_functional_template__$
|
|
1512
|
-
__vue_module_identifier__$
|
|
1523
|
+
const __vue_component__$i = /*#__PURE__*/normalizeComponent(
|
|
1524
|
+
{ render: __vue_render__$i, staticRenderFns: __vue_staticRenderFns__$i },
|
|
1525
|
+
__vue_inject_styles__$i,
|
|
1526
|
+
__vue_script__$i,
|
|
1527
|
+
__vue_scope_id__$i,
|
|
1528
|
+
__vue_is_functional_template__$i,
|
|
1529
|
+
__vue_module_identifier__$i,
|
|
1513
1530
|
false,
|
|
1514
1531
|
createInjector,
|
|
1515
1532
|
undefined,
|
|
1516
1533
|
undefined
|
|
1517
1534
|
);
|
|
1518
1535
|
|
|
1519
|
-
__vue_component__$
|
|
1536
|
+
__vue_component__$i.install = Vue => Vue.component(__vue_component__$i.name, __vue_component__$i);
|
|
1520
1537
|
|
|
1521
1538
|
//
|
|
1522
1539
|
//
|
|
@@ -1542,7 +1559,7 @@ __vue_component__$6.install = Vue => Vue.component(__vue_component__$6.name, __v
|
|
|
1542
1559
|
//
|
|
1543
1560
|
//
|
|
1544
1561
|
|
|
1545
|
-
var script$
|
|
1562
|
+
var script$h = {
|
|
1546
1563
|
name: 'ele-tree',
|
|
1547
1564
|
props: {
|
|
1548
1565
|
treeData: {
|
|
@@ -1605,10 +1622,10 @@ var script$5 = {
|
|
|
1605
1622
|
};
|
|
1606
1623
|
|
|
1607
1624
|
/* script */
|
|
1608
|
-
const __vue_script__$
|
|
1625
|
+
const __vue_script__$h = script$h;
|
|
1609
1626
|
|
|
1610
1627
|
/* template */
|
|
1611
|
-
var __vue_render__$
|
|
1628
|
+
var __vue_render__$h = function () {
|
|
1612
1629
|
var _vm = this;
|
|
1613
1630
|
var _h = _vm.$createElement;
|
|
1614
1631
|
var _c = _vm._self._c || _h;
|
|
@@ -1665,41 +1682,41 @@ var __vue_render__$5 = function () {
|
|
|
1665
1682
|
1
|
|
1666
1683
|
)
|
|
1667
1684
|
};
|
|
1668
|
-
var __vue_staticRenderFns__$
|
|
1669
|
-
__vue_render__$
|
|
1685
|
+
var __vue_staticRenderFns__$h = [];
|
|
1686
|
+
__vue_render__$h._withStripped = true;
|
|
1670
1687
|
|
|
1671
1688
|
/* style */
|
|
1672
|
-
const __vue_inject_styles__$
|
|
1689
|
+
const __vue_inject_styles__$h = function (inject) {
|
|
1673
1690
|
if (!inject) return
|
|
1674
1691
|
inject("data-v-cc99bbf0_0", { source: ".g-tree__wrapper[data-v-cc99bbf0] {\n overflow: hidden;\n}\n.g-tree__wrapper[data-v-cc99bbf0] .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-cc99bbf0] .ant-tree .ant-tree-node-selected {\n color: #fff;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["E:\\work\\code\\ganjiao\\ganjian-monorepo\\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>\r\n <div class=\"g-tree__wrapper\">\r\n <a-tree\r\n v-if=\"innerTreeData.length\"\r\n :tree-data=\"innerTreeData\"\r\n @select=\"selectTreeNode\"\r\n :replaceFields=\"replaceFields\"\r\n :default-expanded-keys=\"defaultExpandedKeys\"\r\n :default-selected-keys=\"defaultSelectedKeys\"\r\n blockNode \r\n :show-icon=\"showIcon\">\r\n <template #title=\"{ title }\">\r\n <span :title=\"title\" class=\"tree-node__title\">\r\n {{ title }}\r\n </span>\r\n </template>\r\n <template slot=\"custom\" slot-scope=\"{ scopedSlots }\">\r\n <a-icon :type=\"scopedSlots.iconName\"></a-icon>\r\n </template>\r\n </a-tree>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: 'ele-tree',\r\n props: {\r\n treeData: {\r\n type: Array,\r\n default: () => []\r\n },\r\n replaceFields: {\r\n type: Object,\r\n default: () => ({\r\n title: 'title',\r\n key: 'id',\r\n children: 'children'\r\n })\r\n },\r\n defaultExpandedKeys: {\r\n type: Array\r\n },\r\n defaultSelectedKeys: {\r\n type: Array\r\n },\r\n showIcon: {\r\n type: Boolean,\r\n default: true\r\n }\r\n },\r\n data () {\r\n return {}\r\n },\r\n computed: {\r\n innerTreeData () {\r\n return this.treeData\r\n // return [\r\n // {\r\n // title: 'parent 1',\r\n // key: 1,\r\n // scopedSlots: {\r\n // icon: 'custom',\r\n // iconName: 'smile-o'\r\n // },\r\n // children: [\r\n // {\r\n // title: '2',\r\n // key: 2,\r\n // scopedSlots: {\r\n // icon: 'custom',\r\n // iconName: 'frown-o'\r\n // }\r\n // }\r\n // ]\r\n // }\r\n // ]\r\n }\r\n },\r\n methods: {\r\n refreshTreeStatus (props = {}) {},\r\n selectTreeNode (selectedKeys, e) {\r\n this.$emit('select', selectedKeys, e)\r\n }\r\n }\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.g-tree__wrapper {\r\n overflow: hidden;\r\n ::v-deep .ant-tree {\r\n .ant-tree-node-content-wrapper {\r\n text-overflow: ellipsis;\r\n overflow: hidden;\r\n white-space: nowrap;\r\n }\r\n .ant-tree-node-selected {\r\n color: #fff;\r\n }\r\n }\r\n}\r\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 });
|
|
1675
1692
|
|
|
1676
1693
|
};
|
|
1677
1694
|
/* scoped */
|
|
1678
|
-
const __vue_scope_id__$
|
|
1695
|
+
const __vue_scope_id__$h = "data-v-cc99bbf0";
|
|
1679
1696
|
/* module identifier */
|
|
1680
|
-
const __vue_module_identifier__$
|
|
1697
|
+
const __vue_module_identifier__$h = undefined;
|
|
1681
1698
|
/* functional template */
|
|
1682
|
-
const __vue_is_functional_template__$
|
|
1699
|
+
const __vue_is_functional_template__$h = false;
|
|
1683
1700
|
/* style inject SSR */
|
|
1684
1701
|
|
|
1685
1702
|
/* style inject shadow dom */
|
|
1686
1703
|
|
|
1687
1704
|
|
|
1688
1705
|
|
|
1689
|
-
const __vue_component__$
|
|
1690
|
-
{ render: __vue_render__$
|
|
1691
|
-
__vue_inject_styles__$
|
|
1692
|
-
__vue_script__$
|
|
1693
|
-
__vue_scope_id__$
|
|
1694
|
-
__vue_is_functional_template__$
|
|
1695
|
-
__vue_module_identifier__$
|
|
1706
|
+
const __vue_component__$h = /*#__PURE__*/normalizeComponent(
|
|
1707
|
+
{ render: __vue_render__$h, staticRenderFns: __vue_staticRenderFns__$h },
|
|
1708
|
+
__vue_inject_styles__$h,
|
|
1709
|
+
__vue_script__$h,
|
|
1710
|
+
__vue_scope_id__$h,
|
|
1711
|
+
__vue_is_functional_template__$h,
|
|
1712
|
+
__vue_module_identifier__$h,
|
|
1696
1713
|
false,
|
|
1697
1714
|
createInjector,
|
|
1698
1715
|
undefined,
|
|
1699
1716
|
undefined
|
|
1700
1717
|
);
|
|
1701
1718
|
|
|
1702
|
-
__vue_component__$
|
|
1719
|
+
__vue_component__$h.install = Vue => Vue.component(__vue_component__$h.name, __vue_component__$h);
|
|
1703
1720
|
|
|
1704
1721
|
//
|
|
1705
1722
|
//
|
|
@@ -1709,7 +1726,7 @@ __vue_component__$5.install = Vue => Vue.component(__vue_component__$5.name, __v
|
|
|
1709
1726
|
//
|
|
1710
1727
|
//
|
|
1711
1728
|
|
|
1712
|
-
var script$
|
|
1729
|
+
var script$g = {
|
|
1713
1730
|
props: {
|
|
1714
1731
|
label: {
|
|
1715
1732
|
type: String
|
|
@@ -1718,10 +1735,10 @@ var script$4 = {
|
|
|
1718
1735
|
};
|
|
1719
1736
|
|
|
1720
1737
|
/* script */
|
|
1721
|
-
const __vue_script__$
|
|
1738
|
+
const __vue_script__$g = script$g;
|
|
1722
1739
|
|
|
1723
1740
|
/* template */
|
|
1724
|
-
var __vue_render__$
|
|
1741
|
+
var __vue_render__$g = function () {
|
|
1725
1742
|
var _vm = this;
|
|
1726
1743
|
var _h = _vm.$createElement;
|
|
1727
1744
|
var _c = _vm._self._c || _h;
|
|
@@ -1731,34 +1748,34 @@ var __vue_render__$4 = function () {
|
|
|
1731
1748
|
_c("span", { staticClass: "label__suffix" }, [_vm._v(":")]),
|
|
1732
1749
|
])
|
|
1733
1750
|
};
|
|
1734
|
-
var __vue_staticRenderFns__$
|
|
1735
|
-
__vue_render__$
|
|
1751
|
+
var __vue_staticRenderFns__$g = [];
|
|
1752
|
+
__vue_render__$g._withStripped = true;
|
|
1736
1753
|
|
|
1737
1754
|
/* style */
|
|
1738
|
-
const __vue_inject_styles__$
|
|
1755
|
+
const __vue_inject_styles__$g = function (inject) {
|
|
1739
1756
|
if (!inject) return
|
|
1740
1757
|
inject("data-v-40e71716_0", { source: ".g-search__label[data-v-40e71716] {\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-40e71716], .g-search__label .label__suffix[data-v-40e71716] {\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-40e71716] {\n margin-left: 4px;\n}\n\n/*# sourceMappingURL=label.vue.map */", map: {"version":3,"sources":["E:\\work\\code\\ganjiao\\ganjian-monorepo\\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>\r\n <div class=\"g-search__label\">\r\n <span class=\"label__title\">{{ label }}</span>\r\n <span class=\"label__suffix\">:</span>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n props: {\r\n label: {\r\n type: String\r\n }\r\n }\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.g-search__label {\r\n /* width: 69px; */\r\n flex-basis: 69px;\r\n height: 32px;\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n justify-content: space-between;\r\n .label__title, .label__suffix {\r\n font-size: 14px;\r\n color: rgba(0, 0, 0, 0.88);\r\n white-space: nowrap;\r\n }\r\n .label__suffix {\r\n margin-left: 4px;\r\n }\r\n}\r\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 });
|
|
1741
1758
|
|
|
1742
1759
|
};
|
|
1743
1760
|
/* scoped */
|
|
1744
|
-
const __vue_scope_id__$
|
|
1761
|
+
const __vue_scope_id__$g = "data-v-40e71716";
|
|
1745
1762
|
/* module identifier */
|
|
1746
|
-
const __vue_module_identifier__$
|
|
1763
|
+
const __vue_module_identifier__$g = undefined;
|
|
1747
1764
|
/* functional template */
|
|
1748
|
-
const __vue_is_functional_template__$
|
|
1765
|
+
const __vue_is_functional_template__$g = false;
|
|
1749
1766
|
/* style inject SSR */
|
|
1750
1767
|
|
|
1751
1768
|
/* style inject shadow dom */
|
|
1752
1769
|
|
|
1753
1770
|
|
|
1754
1771
|
|
|
1755
|
-
const __vue_component__$
|
|
1756
|
-
{ render: __vue_render__$
|
|
1757
|
-
__vue_inject_styles__$
|
|
1758
|
-
__vue_script__$
|
|
1759
|
-
__vue_scope_id__$
|
|
1760
|
-
__vue_is_functional_template__$
|
|
1761
|
-
__vue_module_identifier__$
|
|
1772
|
+
const __vue_component__$g = /*#__PURE__*/normalizeComponent(
|
|
1773
|
+
{ render: __vue_render__$g, staticRenderFns: __vue_staticRenderFns__$g },
|
|
1774
|
+
__vue_inject_styles__$g,
|
|
1775
|
+
__vue_script__$g,
|
|
1776
|
+
__vue_scope_id__$g,
|
|
1777
|
+
__vue_is_functional_template__$g,
|
|
1778
|
+
__vue_module_identifier__$g,
|
|
1762
1779
|
false,
|
|
1763
1780
|
createInjector,
|
|
1764
1781
|
undefined,
|
|
@@ -1766,14 +1783,14 @@ __vue_render__$4._withStripped = true;
|
|
|
1766
1783
|
);
|
|
1767
1784
|
|
|
1768
1785
|
//
|
|
1769
|
-
var script$
|
|
1786
|
+
var script$f = {
|
|
1770
1787
|
name: 'ele-search-area',
|
|
1771
1788
|
components: {
|
|
1772
|
-
EleInput: __vue_component__$
|
|
1773
|
-
EleSelect: __vue_component__$
|
|
1774
|
-
ELeButton: __vue_component__$
|
|
1775
|
-
Label: __vue_component__$
|
|
1776
|
-
EleDate: __vue_component__$
|
|
1789
|
+
EleInput: __vue_component__$l,
|
|
1790
|
+
EleSelect: __vue_component__$k,
|
|
1791
|
+
ELeButton: __vue_component__$n,
|
|
1792
|
+
Label: __vue_component__$g,
|
|
1793
|
+
EleDate: __vue_component__$m
|
|
1777
1794
|
},
|
|
1778
1795
|
props: {
|
|
1779
1796
|
gutter: {
|
|
@@ -1791,30 +1808,57 @@ var script$3 = {
|
|
|
1791
1808
|
},
|
|
1792
1809
|
data() {
|
|
1793
1810
|
return {
|
|
1794
|
-
isExpand: false
|
|
1795
|
-
collapseDataSource: []
|
|
1811
|
+
isExpand: false
|
|
1796
1812
|
};
|
|
1797
1813
|
},
|
|
1798
1814
|
computed: {
|
|
1799
|
-
|
|
1800
|
-
return
|
|
1815
|
+
cuttingFormula() {
|
|
1816
|
+
return 24 / this.span - 1;
|
|
1817
|
+
},
|
|
1818
|
+
buildDataSource() {
|
|
1819
|
+
return this.controlDisplayByFormula(this.mapDefaultValueToValue());
|
|
1801
1820
|
},
|
|
1802
1821
|
innerDataSource() {
|
|
1803
|
-
return
|
|
1804
|
-
type: '_action'
|
|
1805
|
-
|
|
1806
|
-
type: '_action'
|
|
1822
|
+
return [...this.buildDataSource, {
|
|
1823
|
+
type: '_action',
|
|
1824
|
+
_show: true
|
|
1807
1825
|
}];
|
|
1808
1826
|
}
|
|
1809
1827
|
},
|
|
1810
|
-
created() {
|
|
1811
|
-
this.collapseDataSource = this.dataSource.slice(0, 24 / this.span - 1);
|
|
1812
|
-
},
|
|
1828
|
+
created() {},
|
|
1813
1829
|
methods: {
|
|
1814
|
-
|
|
1815
|
-
if (
|
|
1816
|
-
|
|
1830
|
+
controlDisplayByFormula(dataSource = []) {
|
|
1831
|
+
if (this.isExpand) {
|
|
1832
|
+
dataSource.forEach(item => {
|
|
1833
|
+
this.$set(item, '_show', true);
|
|
1834
|
+
});
|
|
1835
|
+
} else {
|
|
1836
|
+
dataSource.forEach((item, idx) => {
|
|
1837
|
+
if (idx < this.cuttingFormula) {
|
|
1838
|
+
this.$set(item, '_show', true);
|
|
1839
|
+
} else {
|
|
1840
|
+
this.$set(item, '_show', false);
|
|
1841
|
+
}
|
|
1842
|
+
});
|
|
1817
1843
|
}
|
|
1844
|
+
return dataSource;
|
|
1845
|
+
},
|
|
1846
|
+
buildDefaultValue(arg) {
|
|
1847
|
+
if (!arg || arg.charAt(0) !== '_') return arg;
|
|
1848
|
+
return parse(arg, {
|
|
1849
|
+
_route: this.$route.query
|
|
1850
|
+
});
|
|
1851
|
+
},
|
|
1852
|
+
mapDefaultValueToValue() {
|
|
1853
|
+
this.dataSource.forEach(props => {
|
|
1854
|
+
this.$set(props, '_show', this.isExpand);
|
|
1855
|
+
if (props.defaultValue) {
|
|
1856
|
+
this.$set(props, '_value', this.buildDefaultValue(props.defaultValue));
|
|
1857
|
+
}
|
|
1858
|
+
});
|
|
1859
|
+
return this.dataSource;
|
|
1860
|
+
},
|
|
1861
|
+
handleClickExpandCollapse() {
|
|
1818
1862
|
this.isExpand = !this.isExpand;
|
|
1819
1863
|
},
|
|
1820
1864
|
handleClickSearch() {
|
|
@@ -1837,15 +1881,21 @@ var script$3 = {
|
|
|
1837
1881
|
},
|
|
1838
1882
|
handleClickReset() {
|
|
1839
1883
|
this.innerDataSource.filter(item => item.type !== '_action').forEach(item => {
|
|
1884
|
+
const {
|
|
1885
|
+
defaultValue
|
|
1886
|
+
} = item;
|
|
1840
1887
|
switch (item.type) {
|
|
1841
1888
|
case 'Select':
|
|
1842
|
-
this.$set(item, '_value',
|
|
1889
|
+
defaultValue && this.$set(item, '_value', this.buildDefaultValue(defaultValue));
|
|
1890
|
+
!defaultValue && this.$set(item, '_value', null);
|
|
1843
1891
|
break;
|
|
1844
1892
|
case 'DatePicker':
|
|
1845
|
-
this.$set(item, '_value',
|
|
1893
|
+
defaultValue && this.$set(item, '_value', this.buildDefaultValue(defaultValue));
|
|
1894
|
+
!defaultValue && this.$set(item, '_value', undefined);
|
|
1846
1895
|
break;
|
|
1847
1896
|
default:
|
|
1848
|
-
this.$set(item, '_value',
|
|
1897
|
+
defaultValue && this.$set(item, '_value', this.buildDefaultValue(defaultValue));
|
|
1898
|
+
!defaultValue && this.$set(item, '_value', null);
|
|
1849
1899
|
break;
|
|
1850
1900
|
}
|
|
1851
1901
|
});
|
|
@@ -1860,10 +1910,10 @@ var script$3 = {
|
|
|
1860
1910
|
};
|
|
1861
1911
|
|
|
1862
1912
|
/* script */
|
|
1863
|
-
const __vue_script__$
|
|
1913
|
+
const __vue_script__$f = script$f;
|
|
1864
1914
|
|
|
1865
1915
|
/* template */
|
|
1866
|
-
var __vue_render__$
|
|
1916
|
+
var __vue_render__$f = function () {
|
|
1867
1917
|
var _vm = this;
|
|
1868
1918
|
var _h = _vm.$createElement;
|
|
1869
1919
|
var _c = _vm._self._c || _h;
|
|
@@ -1874,150 +1924,175 @@ var __vue_render__$3 = function () {
|
|
|
1874
1924
|
_c(
|
|
1875
1925
|
"a-row",
|
|
1876
1926
|
{ attrs: { gutter: _vm.gutter } },
|
|
1877
|
-
|
|
1878
|
-
|
|
1879
|
-
|
|
1880
|
-
|
|
1881
|
-
[
|
|
1882
|
-
item.type == "_action"
|
|
1927
|
+
[
|
|
1928
|
+
_vm._l(_vm.innerDataSource, function (item, idx) {
|
|
1929
|
+
return [
|
|
1930
|
+
item._show
|
|
1883
1931
|
? _c(
|
|
1884
|
-
"
|
|
1885
|
-
{
|
|
1932
|
+
"a-col",
|
|
1933
|
+
{ key: idx, attrs: { span: item.span || _vm.span } },
|
|
1886
1934
|
[
|
|
1887
|
-
|
|
1888
|
-
|
|
1889
|
-
|
|
1890
|
-
|
|
1891
|
-
|
|
1892
|
-
|
|
1893
|
-
|
|
1894
|
-
),
|
|
1895
|
-
_vm._v(" "),
|
|
1896
|
-
_c(
|
|
1897
|
-
"ele-button",
|
|
1898
|
-
{
|
|
1899
|
-
staticStyle: { "margin-left": "8px" },
|
|
1900
|
-
attrs: { icon: "reload" },
|
|
1901
|
-
on: { click: _vm.handleClickReset },
|
|
1902
|
-
},
|
|
1903
|
-
[_vm._v("重置")]
|
|
1904
|
-
),
|
|
1905
|
-
_vm._v(" "),
|
|
1906
|
-
_c(
|
|
1907
|
-
"div",
|
|
1908
|
-
{
|
|
1909
|
-
staticClass: "expand-collapse",
|
|
1910
|
-
on: { click: _vm.handleClickExpandCollapse },
|
|
1911
|
-
},
|
|
1912
|
-
[
|
|
1913
|
-
_c("span", { staticClass: "expand-collapse__text" }, [
|
|
1914
|
-
_vm._v(_vm._s(_vm.isExpand ? "收起" : "展开")),
|
|
1915
|
-
]),
|
|
1916
|
-
_vm._v(" "),
|
|
1917
|
-
_c(
|
|
1918
|
-
"span",
|
|
1919
|
-
{ staticClass: "expand-collapse__icon" },
|
|
1935
|
+
item.type == "_action"
|
|
1936
|
+
? _c(
|
|
1937
|
+
"div",
|
|
1938
|
+
{
|
|
1939
|
+
staticClass:
|
|
1940
|
+
"search-area__item search-area--action",
|
|
1941
|
+
},
|
|
1920
1942
|
[
|
|
1921
|
-
|
|
1922
|
-
|
|
1923
|
-
|
|
1943
|
+
_c(
|
|
1944
|
+
"ele-button",
|
|
1945
|
+
{
|
|
1946
|
+
attrs: { icon: "search", type: "primary" },
|
|
1947
|
+
on: { click: _vm.handleClickSearch },
|
|
1948
|
+
},
|
|
1949
|
+
[_vm._v("查询")]
|
|
1950
|
+
),
|
|
1951
|
+
_vm._v(" "),
|
|
1952
|
+
_c(
|
|
1953
|
+
"ele-button",
|
|
1954
|
+
{
|
|
1955
|
+
staticStyle: { "margin-left": "8px" },
|
|
1956
|
+
attrs: { icon: "reload" },
|
|
1957
|
+
on: { click: _vm.handleClickReset },
|
|
1958
|
+
},
|
|
1959
|
+
[_vm._v("重置")]
|
|
1960
|
+
),
|
|
1961
|
+
_vm._v(" "),
|
|
1962
|
+
_c(
|
|
1963
|
+
"div",
|
|
1964
|
+
{
|
|
1965
|
+
staticClass: "expand-collapse",
|
|
1966
|
+
on: { click: _vm.handleClickExpandCollapse },
|
|
1967
|
+
},
|
|
1968
|
+
[
|
|
1969
|
+
_c(
|
|
1970
|
+
"span",
|
|
1971
|
+
{ staticClass: "expand-collapse__text" },
|
|
1972
|
+
[
|
|
1973
|
+
_vm._v(
|
|
1974
|
+
_vm._s(_vm.isExpand ? "收起" : "展开")
|
|
1975
|
+
),
|
|
1976
|
+
]
|
|
1977
|
+
),
|
|
1978
|
+
_vm._v(" "),
|
|
1979
|
+
_c(
|
|
1980
|
+
"span",
|
|
1981
|
+
{ staticClass: "expand-collapse__icon" },
|
|
1982
|
+
[
|
|
1983
|
+
_vm.isExpand
|
|
1984
|
+
? _c("a-icon", {
|
|
1985
|
+
attrs: { type: "up" },
|
|
1986
|
+
})
|
|
1987
|
+
: _c("a-icon", {
|
|
1988
|
+
attrs: { type: "down" },
|
|
1989
|
+
}),
|
|
1990
|
+
],
|
|
1991
|
+
1
|
|
1992
|
+
),
|
|
1993
|
+
]
|
|
1994
|
+
),
|
|
1924
1995
|
],
|
|
1925
1996
|
1
|
|
1997
|
+
)
|
|
1998
|
+
: _c(
|
|
1999
|
+
"div",
|
|
2000
|
+
{ staticClass: "search-area__item" },
|
|
2001
|
+
[
|
|
2002
|
+
item.type == "Input"
|
|
2003
|
+
? [
|
|
2004
|
+
_c("Label", {
|
|
2005
|
+
attrs: { label: item.label },
|
|
2006
|
+
}),
|
|
2007
|
+
_vm._v(" "),
|
|
2008
|
+
_c("ele-input", {
|
|
2009
|
+
model: {
|
|
2010
|
+
value: item._value,
|
|
2011
|
+
callback: function ($$v) {
|
|
2012
|
+
_vm.$set(item, "_value", $$v);
|
|
2013
|
+
},
|
|
2014
|
+
expression: "item._value",
|
|
2015
|
+
},
|
|
2016
|
+
}),
|
|
2017
|
+
]
|
|
2018
|
+
: item.type == "Select"
|
|
2019
|
+
? [
|
|
2020
|
+
_c("Label", {
|
|
2021
|
+
attrs: { label: item.label },
|
|
2022
|
+
}),
|
|
2023
|
+
_vm._v(" "),
|
|
2024
|
+
_c("ele-select", {
|
|
2025
|
+
attrs: { "data-source": item.optionList },
|
|
2026
|
+
model: {
|
|
2027
|
+
value: item._value,
|
|
2028
|
+
callback: function ($$v) {
|
|
2029
|
+
_vm.$set(item, "_value", $$v);
|
|
2030
|
+
},
|
|
2031
|
+
expression: "item._value",
|
|
2032
|
+
},
|
|
2033
|
+
}),
|
|
2034
|
+
]
|
|
2035
|
+
: item.type == "DatePicker"
|
|
2036
|
+
? [
|
|
2037
|
+
_c("Label", {
|
|
2038
|
+
attrs: { label: item.label },
|
|
2039
|
+
}),
|
|
2040
|
+
_vm._v(" "),
|
|
2041
|
+
_c("ele-date", {
|
|
2042
|
+
attrs: { format: item.format },
|
|
2043
|
+
model: {
|
|
2044
|
+
value: item._value,
|
|
2045
|
+
callback: function ($$v) {
|
|
2046
|
+
_vm.$set(item, "_value", $$v);
|
|
2047
|
+
},
|
|
2048
|
+
expression: "item._value",
|
|
2049
|
+
},
|
|
2050
|
+
}),
|
|
2051
|
+
]
|
|
2052
|
+
: _vm._e(),
|
|
2053
|
+
],
|
|
2054
|
+
2
|
|
1926
2055
|
),
|
|
1927
|
-
|
|
1928
|
-
),
|
|
1929
|
-
],
|
|
1930
|
-
1
|
|
2056
|
+
]
|
|
1931
2057
|
)
|
|
1932
|
-
:
|
|
1933
|
-
"div",
|
|
1934
|
-
{ staticClass: "search-area__item" },
|
|
1935
|
-
[
|
|
1936
|
-
item.type == "Input"
|
|
1937
|
-
? [
|
|
1938
|
-
_c("Label", { attrs: { label: item.label } }),
|
|
1939
|
-
_vm._v(" "),
|
|
1940
|
-
_c("ele-input", {
|
|
1941
|
-
model: {
|
|
1942
|
-
value: item._value,
|
|
1943
|
-
callback: function ($$v) {
|
|
1944
|
-
_vm.$set(item, "_value", $$v);
|
|
1945
|
-
},
|
|
1946
|
-
expression: "item._value",
|
|
1947
|
-
},
|
|
1948
|
-
}),
|
|
1949
|
-
]
|
|
1950
|
-
: item.type == "Select"
|
|
1951
|
-
? [
|
|
1952
|
-
_c("Label", { attrs: { label: item.label } }),
|
|
1953
|
-
_vm._v(" "),
|
|
1954
|
-
_c("ele-select", {
|
|
1955
|
-
attrs: { "data-source": item.optionList },
|
|
1956
|
-
model: {
|
|
1957
|
-
value: item._value,
|
|
1958
|
-
callback: function ($$v) {
|
|
1959
|
-
_vm.$set(item, "_value", $$v);
|
|
1960
|
-
},
|
|
1961
|
-
expression: "item._value",
|
|
1962
|
-
},
|
|
1963
|
-
}),
|
|
1964
|
-
]
|
|
1965
|
-
: item.type == "DatePicker"
|
|
1966
|
-
? [
|
|
1967
|
-
_c("Label", { attrs: { label: item.label } }),
|
|
1968
|
-
_vm._v(" "),
|
|
1969
|
-
_c("ele-date", {
|
|
1970
|
-
attrs: { format: item.format },
|
|
1971
|
-
model: {
|
|
1972
|
-
value: item._value,
|
|
1973
|
-
callback: function ($$v) {
|
|
1974
|
-
_vm.$set(item, "_value", $$v);
|
|
1975
|
-
},
|
|
1976
|
-
expression: "item._value",
|
|
1977
|
-
},
|
|
1978
|
-
}),
|
|
1979
|
-
]
|
|
1980
|
-
: _vm._e(),
|
|
1981
|
-
],
|
|
1982
|
-
2
|
|
1983
|
-
),
|
|
2058
|
+
: _vm._e(),
|
|
1984
2059
|
]
|
|
1985
|
-
)
|
|
1986
|
-
|
|
1987
|
-
|
|
2060
|
+
}),
|
|
2061
|
+
],
|
|
2062
|
+
2
|
|
1988
2063
|
),
|
|
1989
2064
|
],
|
|
1990
2065
|
1
|
|
1991
2066
|
)
|
|
1992
2067
|
};
|
|
1993
|
-
var __vue_staticRenderFns__$
|
|
1994
|
-
__vue_render__$
|
|
2068
|
+
var __vue_staticRenderFns__$f = [];
|
|
2069
|
+
__vue_render__$f._withStripped = true;
|
|
1995
2070
|
|
|
1996
2071
|
/* style */
|
|
1997
|
-
const __vue_inject_styles__$
|
|
2072
|
+
const __vue_inject_styles__$f = function (inject) {
|
|
1998
2073
|
if (!inject) return
|
|
1999
|
-
inject("data-v-
|
|
2074
|
+
inject("data-v-5a224358_0", { source: ".search-area__wrapper[data-v-5a224358] {\n padding-top: 16px;\n padding-left: 16px;\n padding-right: 16px;\n}\n.search-area__wrapper[data-v-5a224358] .ant-col:last-child {\n float: right;\n}\n.search-area__wrapper .search-area__item[data-v-5a224358] {\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-5a224358] {\n justify-content: end;\n}\n.search-area__wrapper .search-area__item .expand-collapse[data-v-5a224358] {\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-5a224358] {\n font-size: 14px;\n}\n.search-area__wrapper .search-area__item .expand-collapse .expand-collapse__icon[data-v-5a224358] {\n font-size: 16px;\n margin-left: 8px;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["E:\\work\\code\\ganjiao\\ganjian-monorepo\\packages\\components\\packages\\composite-components\\search-area\\src\\index.vue","index.vue"],"names":[],"mappings":"AAyKA;EACA,iBAAA;EACA,kBAAA;EACA,mBAAA;ACxKA;AD0KA;EACA,YAAA;ACxKA;AD2KA;EACA,YAAA;EACA,aAAA;EACA,mBAAA;EACA,mBAAA;ACzKA;AD0KA;EACA,oBAAA;ACxKA;AD0KA;EACA,gBAAA;EACA,YAAA;EACA,iBAAA;EACA,kCAAA;EACA,aAAA;EACA,mBAAA;EACA,mBAAA;EACA,uBAAA;EACA,eAAA;ACxKA;ADyKA;EACA,eAAA;ACvKA;ADyKA;EACA,eAAA;EACA,gBAAA;ACvKA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\r\n <div class=\"search-area__wrapper\">\r\n <a-row :gutter=\"gutter\">\r\n <template v-for=\"(item, idx) in innerDataSource\">\r\n <a-col v-if=\"item._show\" :span=\"item.span || span\" :key=\"idx\">\r\n <div v-if=\"item.type == '_action'\" class=\"search-area__item search-area--action\">\r\n <ele-button icon=\"search\" type=\"primary\" @click=\"handleClickSearch\">查询</ele-button>\r\n <ele-button style=\"margin-left:8px;\" icon=\"reload\" @click=\"handleClickReset\">重置</ele-button>\r\n <div class=\"expand-collapse\" @click=\"handleClickExpandCollapse\">\r\n <span class=\"expand-collapse__text\">{{ isExpand ? '收起' : '展开' }}</span>\r\n <span class=\"expand-collapse__icon\">\r\n <a-icon v-if=\"isExpand\" type=\"up\" />\r\n <a-icon v-else type=\"down\" />\r\n </span>\r\n </div>\r\n </div>\r\n <div v-else class=\"search-area__item\">\r\n <template v-if=\"item.type == 'Input'\">\r\n <Label :label=\"item.label\"></Label>\r\n <ele-input v-model=\"item._value\"></ele-input>\r\n </template>\r\n <template v-else-if=\"item.type == 'Select'\">\r\n <Label :label=\"item.label\"></Label>\r\n <ele-select v-model=\"item._value\" :data-source=\"item.optionList\"></ele-select>\r\n </template>\r\n <template v-else-if=\"item.type == 'DatePicker'\">\r\n <Label :label=\"item.label\"></Label>\r\n <ele-date v-model=\"item._value\" :format=\"item.format\"></ele-date>\r\n </template>\r\n </div>\r\n </a-col>\r\n </template>\r\n </a-row>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport EleInput from '../../../input/src/index.vue'\r\nimport EleSelect from '../../../select/src/index.vue'\r\nimport ELeButton from '../../../button/src/index.vue'\r\nimport EleDate from '../../../date/src/index.vue'\r\nimport Label from './label.vue'\r\nimport moment from 'moment'\r\nimport { parse } from '@idooel/expression'\r\nexport default {\r\n name: 'ele-search-area',\r\n components: {\r\n EleInput,\r\n EleSelect,\r\n ELeButton,\r\n Label,\r\n EleDate\r\n },\r\n props: {\r\n gutter: {\r\n type: [Number, Array, Object],\r\n default: () => ([\r\n 16, 8\r\n ])\r\n },\r\n span: {\r\n type: Number,\r\n default: 8\r\n },\r\n dataSource: {\r\n type: Array,\r\n required: true\r\n }\r\n },\r\n data() {\r\n return {\r\n isExpand: false\r\n }\r\n },\r\n computed: {\r\n cuttingFormula () {\r\n return (24 / this.span - 1)\r\n },\r\n buildDataSource () {\r\n return this.controlDisplayByFormula(this.mapDefaultValueToValue())\r\n },\r\n innerDataSource () {\r\n return [ ...this.buildDataSource, { type: '_action', _show: true }]\r\n }\r\n },\r\n created() {},\r\n methods: {\r\n controlDisplayByFormula (dataSource = []) {\r\n if (this.isExpand) {\r\n dataSource.forEach(item => {\r\n this.$set(item, '_show', true)\r\n })\r\n } else {\r\n dataSource.forEach((item, idx) => {\r\n if (idx < this.cuttingFormula) {\r\n this.$set(item, '_show', true)\r\n } else {\r\n this.$set(item, '_show', false)\r\n }\r\n })\r\n }\r\n return dataSource\r\n },\r\n buildDefaultValue (arg) {\r\n if (!arg || arg.charAt(0) !== '_') return arg\r\n return parse(arg, {\r\n _route: this.$route.query\r\n })\r\n },\r\n mapDefaultValueToValue () {\r\n this.dataSource.forEach(props => {\r\n this.$set(props, '_show', this.isExpand)\r\n if (props.defaultValue) {\r\n this.$set(props, '_value', this.buildDefaultValue(props.defaultValue))\r\n }\r\n })\r\n return this.dataSource\r\n },\r\n handleClickExpandCollapse () {\r\n this.isExpand = !this.isExpand\r\n },\r\n handleClickSearch () {\r\n const querys = this.extractValues()\r\n this.$emit('search', querys)\r\n },\r\n extractValues () {\r\n let ret = {}\r\n this.innerDataSource.filter(item => item.type !== '_action').forEach(item => {\r\n switch (item.type) {\r\n case 'DatePicker':\r\n ret[item.name] = typeof item._value == 'undefined' ? undefined : moment(item._value).format(item.format)\r\n break\r\n default:\r\n ret[item.name] = item._value\r\n break\r\n }\r\n })\r\n return ret\r\n },\r\n handleClickReset () {\r\n this.innerDataSource.filter(item => item.type !== '_action').forEach(item => {\r\n const { defaultValue } = item\r\n switch (item.type) {\r\n case 'Select':\r\n defaultValue && this.$set(item, '_value', this.buildDefaultValue(defaultValue))\r\n !defaultValue && this.$set(item, '_value', null)\r\n break\r\n case 'DatePicker':\r\n defaultValue && this.$set(item, '_value', this.buildDefaultValue(defaultValue))\r\n !defaultValue && this.$set(item, '_value', undefined)\r\n break\r\n default:\r\n defaultValue && this.$set(item, '_value', this.buildDefaultValue(defaultValue))\r\n !defaultValue && this.$set(item, '_value', null)\r\n break\r\n }\r\n })\r\n //TODO defaultValue\r\n const querys = this.extractValues()\r\n this.$emit('search', querys)\r\n },\r\n onChangeSelect (value, props) {\r\n this.$set(props, '_value', value)\r\n }\r\n }\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.search-area__wrapper {\r\n padding-top: 16px;\r\n padding-left: 16px;\r\n padding-right: 16px;\r\n ::v-deep .ant-col {\r\n &:last-child {\r\n float: right;\r\n }\r\n }\r\n .search-area__item {\r\n height: 32px;\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n &.search-area--action {\r\n justify-content: end;\r\n }\r\n .expand-collapse {\r\n margin-left: 8px;\r\n height: 32px;\r\n padding: 4px 16px;\r\n color: var(--idooel-primary-color);\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n justify-content: center;\r\n cursor: pointer;\r\n .expand-collapse__text {\r\n font-size: 14px;\r\n }\r\n .expand-collapse__icon {\r\n font-size: 16px;\r\n margin-left: 8px;\r\n }\r\n }\r\n }\r\n}\r\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 });
|
|
2000
2075
|
|
|
2001
2076
|
};
|
|
2002
2077
|
/* scoped */
|
|
2003
|
-
const __vue_scope_id__$
|
|
2078
|
+
const __vue_scope_id__$f = "data-v-5a224358";
|
|
2004
2079
|
/* module identifier */
|
|
2005
|
-
const __vue_module_identifier__$
|
|
2080
|
+
const __vue_module_identifier__$f = undefined;
|
|
2006
2081
|
/* functional template */
|
|
2007
|
-
const __vue_is_functional_template__$
|
|
2082
|
+
const __vue_is_functional_template__$f = false;
|
|
2008
2083
|
/* style inject SSR */
|
|
2009
2084
|
|
|
2010
2085
|
/* style inject shadow dom */
|
|
2011
2086
|
|
|
2012
2087
|
|
|
2013
2088
|
|
|
2014
|
-
const __vue_component__$
|
|
2015
|
-
{ render: __vue_render__$
|
|
2016
|
-
__vue_inject_styles__$
|
|
2017
|
-
__vue_script__$
|
|
2018
|
-
__vue_scope_id__$
|
|
2019
|
-
__vue_is_functional_template__$
|
|
2020
|
-
__vue_module_identifier__$
|
|
2089
|
+
const __vue_component__$f = /*#__PURE__*/normalizeComponent(
|
|
2090
|
+
{ render: __vue_render__$f, staticRenderFns: __vue_staticRenderFns__$f },
|
|
2091
|
+
__vue_inject_styles__$f,
|
|
2092
|
+
__vue_script__$f,
|
|
2093
|
+
__vue_scope_id__$f,
|
|
2094
|
+
__vue_is_functional_template__$f,
|
|
2095
|
+
__vue_module_identifier__$f,
|
|
2021
2096
|
false,
|
|
2022
2097
|
createInjector,
|
|
2023
2098
|
undefined,
|
|
@@ -2025,29 +2100,24 @@ __vue_render__$3._withStripped = true;
|
|
|
2025
2100
|
);
|
|
2026
2101
|
|
|
2027
2102
|
//
|
|
2028
|
-
var script$
|
|
2103
|
+
var script$e = {
|
|
2029
2104
|
name: 'ele-button-group',
|
|
2030
2105
|
components: {
|
|
2031
|
-
EleButton: __vue_component__$
|
|
2106
|
+
EleButton: __vue_component__$n
|
|
2032
2107
|
},
|
|
2033
2108
|
props: {
|
|
2034
2109
|
dataSource: {
|
|
2035
2110
|
type: Array,
|
|
2036
2111
|
default: () => []
|
|
2037
2112
|
}
|
|
2038
|
-
},
|
|
2039
|
-
methods: {
|
|
2040
|
-
handleClick(props) {
|
|
2041
|
-
this.$emit('click', props);
|
|
2042
|
-
}
|
|
2043
2113
|
}
|
|
2044
2114
|
};
|
|
2045
2115
|
|
|
2046
2116
|
/* script */
|
|
2047
|
-
const __vue_script__$
|
|
2117
|
+
const __vue_script__$e = script$e;
|
|
2048
2118
|
|
|
2049
2119
|
/* template */
|
|
2050
|
-
var __vue_render__$
|
|
2120
|
+
var __vue_render__$e = function () {
|
|
2051
2121
|
var _vm = this;
|
|
2052
2122
|
var _h = _vm.$createElement;
|
|
2053
2123
|
var _c = _vm._self._c || _h;
|
|
@@ -2077,34 +2147,34 @@ var __vue_render__$2 = function () {
|
|
|
2077
2147
|
1
|
|
2078
2148
|
)
|
|
2079
2149
|
};
|
|
2080
|
-
var __vue_staticRenderFns__$
|
|
2081
|
-
__vue_render__$
|
|
2150
|
+
var __vue_staticRenderFns__$e = [];
|
|
2151
|
+
__vue_render__$e._withStripped = true;
|
|
2082
2152
|
|
|
2083
2153
|
/* style */
|
|
2084
|
-
const __vue_inject_styles__$
|
|
2154
|
+
const __vue_inject_styles__$e = function (inject) {
|
|
2085
2155
|
if (!inject) return
|
|
2086
|
-
inject("data-v-
|
|
2156
|
+
inject("data-v-de67e2d2_0", { source: ".button-group__wrapper[data-v-de67e2d2] {\n display: flex;\n padding-left: 16px;\n padding-right: 16px;\n}\n.button-group__wrapper .ant-btn[data-v-de67e2d2] {\n margin-left: 8px;\n}\n.button-group__wrapper .ant-btn[data-v-de67e2d2]:first-child {\n margin-left: 0;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["E:\\work\\code\\ganjiao\\ganjian-monorepo\\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>\r\n <div class=\"button-group__wrapper\">\r\n <ele-button \r\n v-for=\"(item, idx) in dataSource\" \r\n :type=\"item.type\"\r\n :icon=\"item.icon\"\r\n :mode=\"item.mode\"\r\n :data-source=\"item.optionList\"\r\n :event-name=\"item.eventName\"\r\n :record=\"item\"\r\n v-on=\"$listeners\"\r\n :key=\"idx\">\r\n {{ item.label }}\r\n </ele-button>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport EleButton from '../../../button/src/index.vue'\r\nexport default {\r\n name: 'ele-button-group',\r\n components: {\r\n EleButton\r\n },\r\n props: {\r\n dataSource: {\r\n type: Array,\r\n default: () => []\r\n }\r\n }\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.button-group__wrapper {\r\n display: flex;\r\n padding-left: 16px;\r\n padding-right: 16px;\r\n .ant-btn {\r\n margin-left: 8px;\r\n &:first-child {\r\n margin-left: 0;\r\n }\r\n }\r\n}\r\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 });
|
|
2087
2157
|
|
|
2088
2158
|
};
|
|
2089
2159
|
/* scoped */
|
|
2090
|
-
const __vue_scope_id__$
|
|
2160
|
+
const __vue_scope_id__$e = "data-v-de67e2d2";
|
|
2091
2161
|
/* module identifier */
|
|
2092
|
-
const __vue_module_identifier__$
|
|
2162
|
+
const __vue_module_identifier__$e = undefined;
|
|
2093
2163
|
/* functional template */
|
|
2094
|
-
const __vue_is_functional_template__$
|
|
2164
|
+
const __vue_is_functional_template__$e = false;
|
|
2095
2165
|
/* style inject SSR */
|
|
2096
2166
|
|
|
2097
2167
|
/* style inject shadow dom */
|
|
2098
2168
|
|
|
2099
2169
|
|
|
2100
2170
|
|
|
2101
|
-
const __vue_component__$
|
|
2102
|
-
{ render: __vue_render__$
|
|
2103
|
-
__vue_inject_styles__$
|
|
2104
|
-
__vue_script__$
|
|
2105
|
-
__vue_scope_id__$
|
|
2106
|
-
__vue_is_functional_template__$
|
|
2107
|
-
__vue_module_identifier__$
|
|
2171
|
+
const __vue_component__$e = /*#__PURE__*/normalizeComponent(
|
|
2172
|
+
{ render: __vue_render__$e, staticRenderFns: __vue_staticRenderFns__$e },
|
|
2173
|
+
__vue_inject_styles__$e,
|
|
2174
|
+
__vue_script__$e,
|
|
2175
|
+
__vue_scope_id__$e,
|
|
2176
|
+
__vue_is_functional_template__$e,
|
|
2177
|
+
__vue_module_identifier__$e,
|
|
2108
2178
|
false,
|
|
2109
2179
|
createInjector,
|
|
2110
2180
|
undefined,
|
|
@@ -2112,13 +2182,13 @@ __vue_render__$2._withStripped = true;
|
|
|
2112
2182
|
);
|
|
2113
2183
|
|
|
2114
2184
|
//
|
|
2115
|
-
var script$
|
|
2185
|
+
var script$d = {
|
|
2116
2186
|
name: 'ele-tree-table-model',
|
|
2117
2187
|
components: {
|
|
2118
|
-
EleTree: __vue_component__$
|
|
2119
|
-
EleTable: __vue_component__$
|
|
2120
|
-
EleSearchArea: __vue_component__$
|
|
2121
|
-
EleButtonGroup: __vue_component__$
|
|
2188
|
+
EleTree: __vue_component__$h,
|
|
2189
|
+
EleTable: __vue_component__$i,
|
|
2190
|
+
EleSearchArea: __vue_component__$f,
|
|
2191
|
+
EleButtonGroup: __vue_component__$e
|
|
2122
2192
|
},
|
|
2123
2193
|
props: {
|
|
2124
2194
|
treeMeta: {
|
|
@@ -2164,6 +2234,9 @@ var script$1 = {
|
|
|
2164
2234
|
};
|
|
2165
2235
|
},
|
|
2166
2236
|
computed: {
|
|
2237
|
+
showTree() {
|
|
2238
|
+
return !!Object.keys(this.treeMeta).length;
|
|
2239
|
+
},
|
|
2167
2240
|
buttonGroup() {
|
|
2168
2241
|
return v4();
|
|
2169
2242
|
},
|
|
@@ -2258,15 +2331,17 @@ var script$1 = {
|
|
|
2258
2331
|
}
|
|
2259
2332
|
},
|
|
2260
2333
|
async created() {
|
|
2261
|
-
|
|
2262
|
-
|
|
2263
|
-
|
|
2264
|
-
|
|
2334
|
+
if (this.showTree) {
|
|
2335
|
+
this.treeData = await this.requestTreeData();
|
|
2336
|
+
const [defaultTreeNode = {}] = this.treeData;
|
|
2337
|
+
this.defaultExpandedKeys = [defaultTreeNode[this.replaceFields.key]];
|
|
2338
|
+
this.defaultSelectedKeys = [defaultTreeNode[this.replaceFields.key]];
|
|
2339
|
+
this.currentTreeNodeData = defaultTreeNode;
|
|
2340
|
+
}
|
|
2265
2341
|
const {
|
|
2266
2342
|
fieldMap
|
|
2267
2343
|
} = this.tableMeta;
|
|
2268
|
-
this.
|
|
2269
|
-
this.tableData = await this.requestTableData(this.execTableFieldMap(fieldMap, defaultTreeNode));
|
|
2344
|
+
this.tableData = await this.requestTableData(this.execTableFieldMap(fieldMap, this.currentTreeNodeData));
|
|
2270
2345
|
},
|
|
2271
2346
|
methods: {
|
|
2272
2347
|
handleClickButtonGroup(props) {
|
|
@@ -2392,34 +2467,37 @@ var script$1 = {
|
|
|
2392
2467
|
};
|
|
2393
2468
|
|
|
2394
2469
|
/* script */
|
|
2395
|
-
const __vue_script__$
|
|
2470
|
+
const __vue_script__$d = script$d;
|
|
2396
2471
|
|
|
2397
2472
|
/* template */
|
|
2398
|
-
var __vue_render__$
|
|
2473
|
+
var __vue_render__$d = function () {
|
|
2399
2474
|
var _vm = this;
|
|
2400
2475
|
var _h = _vm.$createElement;
|
|
2401
2476
|
var _c = _vm._self._c || _h;
|
|
2402
|
-
return _c("section", { staticClass: "model__tree-table" }, [
|
|
2403
|
-
|
|
2404
|
-
_c("
|
|
2405
|
-
|
|
2406
|
-
|
|
2407
|
-
|
|
2408
|
-
|
|
2409
|
-
|
|
2410
|
-
|
|
2411
|
-
|
|
2412
|
-
|
|
2413
|
-
|
|
2414
|
-
|
|
2415
|
-
|
|
2416
|
-
|
|
2417
|
-
|
|
2418
|
-
|
|
2419
|
-
|
|
2420
|
-
|
|
2421
|
-
|
|
2422
|
-
|
|
2477
|
+
return _c("section", { staticClass: "ele model__tree-table" }, [
|
|
2478
|
+
_vm.showTree
|
|
2479
|
+
? _c("section", { staticClass: "model__tree-table--container" }, [
|
|
2480
|
+
_c("div", { staticClass: "model__tree--title" }),
|
|
2481
|
+
_vm._v(" "),
|
|
2482
|
+
_c(
|
|
2483
|
+
"section",
|
|
2484
|
+
{ ref: _vm.modelTreeWrapper, staticClass: "model__tree--wrapper" },
|
|
2485
|
+
[
|
|
2486
|
+
_c("ele-tree", {
|
|
2487
|
+
attrs: {
|
|
2488
|
+
"tree-data": _vm.treeData,
|
|
2489
|
+
defaultExpandedKeys: _vm.defaultExpandedKeys,
|
|
2490
|
+
defaultSelectedKeys: _vm.defaultSelectedKeys,
|
|
2491
|
+
"replace-fields":
|
|
2492
|
+
_vm.treeMeta.replaceFields || _vm.replaceFields,
|
|
2493
|
+
},
|
|
2494
|
+
on: { select: _vm.selectTreeNode },
|
|
2495
|
+
}),
|
|
2496
|
+
],
|
|
2497
|
+
1
|
|
2498
|
+
),
|
|
2499
|
+
])
|
|
2500
|
+
: _vm._e(),
|
|
2423
2501
|
_vm._v(" "),
|
|
2424
2502
|
_c("section", { staticClass: "model__table--container" }, [
|
|
2425
2503
|
_c("div", { staticClass: "model__table--title" }),
|
|
@@ -2472,34 +2550,34 @@ var __vue_render__$1 = function () {
|
|
|
2472
2550
|
]),
|
|
2473
2551
|
])
|
|
2474
2552
|
};
|
|
2475
|
-
var __vue_staticRenderFns__$
|
|
2476
|
-
__vue_render__$
|
|
2553
|
+
var __vue_staticRenderFns__$d = [];
|
|
2554
|
+
__vue_render__$d._withStripped = true;
|
|
2477
2555
|
|
|
2478
2556
|
/* style */
|
|
2479
|
-
const __vue_inject_styles__$
|
|
2557
|
+
const __vue_inject_styles__$d = function (inject) {
|
|
2480
2558
|
if (!inject) return
|
|
2481
|
-
inject("data-v-37846a00_0", { source: ".model__tree-table[data-v-37846a00] {\n background: transparent;\n display: flex;\n flex-direction: row;\n width: 100%;\n}\n.model__tree-table .model__tree-table--container .model__tree--wrapper[data-v-37846a00] {\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.model__tree-table .model__table--container[data-v-37846a00] {\n min-width: 0;\n background: #fff;\n}\n.model__tree-table .model__table--container .model__table--wrapper[data-v-37846a00] {\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":"AA0RA;EACA,uBAAA;EACA,aAAA;EACA,mBAAA;EACA,WAAA;ACzRA;AD2RA;EACA,YAAA;EACA,gBAAA;EACA,cAAA;EACA,aAAA;EACA,sBAAA;EACA,kBAAA;EACA,gBAAA;ACzRA;AD4RA;EACA,YAAA;EACA,gBAAA;AC1RA;AD2RA;EACA,gBAAA;ACzRA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\r\n <section class=\"model__tree-table\">\r\n <section class=\"model__tree-table--container\">\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 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 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 const { fieldMap } = this.tableMeta\r\n this.currentTreeNodeData = defaultTreeNode\r\n this.tableData = await this.requestTableData(this.execTableFieldMap(fieldMap, defaultTreeNode))\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.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 min-width: 0;\r\n background: #fff;\r\n .model__table--wrapper {\r\n background: #fff;\r\n }\r\n }\r\n}\r\n</style>",".model__tree-table {\n background: transparent;\n display: flex;\n flex-direction: row;\n width: 100%;\n}\n.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.model__tree-table .model__table--container {\n min-width: 0;\n background: #fff;\n}\n.model__tree-table .model__table--container .model__table--wrapper {\n background: #fff;\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
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 });
|
|
2482
2560
|
|
|
2483
2561
|
};
|
|
2484
2562
|
/* scoped */
|
|
2485
|
-
const __vue_scope_id__$
|
|
2563
|
+
const __vue_scope_id__$d = "data-v-fe2ee33e";
|
|
2486
2564
|
/* module identifier */
|
|
2487
|
-
const __vue_module_identifier__$
|
|
2565
|
+
const __vue_module_identifier__$d = undefined;
|
|
2488
2566
|
/* functional template */
|
|
2489
|
-
const __vue_is_functional_template__$
|
|
2567
|
+
const __vue_is_functional_template__$d = false;
|
|
2490
2568
|
/* style inject SSR */
|
|
2491
2569
|
|
|
2492
2570
|
/* style inject shadow dom */
|
|
2493
2571
|
|
|
2494
2572
|
|
|
2495
2573
|
|
|
2496
|
-
const __vue_component__$
|
|
2497
|
-
{ render: __vue_render__$
|
|
2498
|
-
__vue_inject_styles__$
|
|
2499
|
-
__vue_script__$
|
|
2500
|
-
__vue_scope_id__$
|
|
2501
|
-
__vue_is_functional_template__$
|
|
2502
|
-
__vue_module_identifier__$
|
|
2574
|
+
const __vue_component__$d = /*#__PURE__*/normalizeComponent(
|
|
2575
|
+
{ render: __vue_render__$d, staticRenderFns: __vue_staticRenderFns__$d },
|
|
2576
|
+
__vue_inject_styles__$d,
|
|
2577
|
+
__vue_script__$d,
|
|
2578
|
+
__vue_scope_id__$d,
|
|
2579
|
+
__vue_is_functional_template__$d,
|
|
2580
|
+
__vue_module_identifier__$d,
|
|
2503
2581
|
false,
|
|
2504
2582
|
createInjector,
|
|
2505
2583
|
undefined,
|
|
@@ -2507,7 +2585,7 @@ __vue_render__$1._withStripped = true;
|
|
|
2507
2585
|
);
|
|
2508
2586
|
|
|
2509
2587
|
//
|
|
2510
|
-
var script = {
|
|
2588
|
+
var script$c = {
|
|
2511
2589
|
name: 'ele-tpl',
|
|
2512
2590
|
props: {
|
|
2513
2591
|
modelName: {
|
|
@@ -2515,7 +2593,7 @@ var script = {
|
|
|
2515
2593
|
}
|
|
2516
2594
|
},
|
|
2517
2595
|
components: {
|
|
2518
|
-
[__vue_component__$
|
|
2596
|
+
[__vue_component__$d.name]: __vue_component__$d
|
|
2519
2597
|
},
|
|
2520
2598
|
computed: {
|
|
2521
2599
|
modelNameValidator() {
|
|
@@ -2537,10 +2615,10 @@ var script = {
|
|
|
2537
2615
|
};
|
|
2538
2616
|
|
|
2539
2617
|
/* script */
|
|
2540
|
-
const __vue_script__ = script;
|
|
2618
|
+
const __vue_script__$c = script$c;
|
|
2541
2619
|
|
|
2542
2620
|
/* template */
|
|
2543
|
-
var __vue_render__ = function () {
|
|
2621
|
+
var __vue_render__$c = function () {
|
|
2544
2622
|
var _vm = this;
|
|
2545
2623
|
var _h = _vm.$createElement;
|
|
2546
2624
|
var _c = _vm._self._c || _h;
|
|
@@ -2578,51 +2656,1890 @@ var __vue_render__ = function () {
|
|
|
2578
2656
|
domProps: { innerHTML: _vm._s(_vm.modelNameValidator.message) },
|
|
2579
2657
|
})
|
|
2580
2658
|
};
|
|
2581
|
-
var __vue_staticRenderFns__ = [];
|
|
2582
|
-
__vue_render__._withStripped = true;
|
|
2659
|
+
var __vue_staticRenderFns__$c = [];
|
|
2660
|
+
__vue_render__$c._withStripped = true;
|
|
2583
2661
|
|
|
2584
2662
|
/* style */
|
|
2585
|
-
const __vue_inject_styles__ = function (inject) {
|
|
2663
|
+
const __vue_inject_styles__$c = function (inject) {
|
|
2586
2664
|
if (!inject) return
|
|
2587
|
-
inject("data-v-7b13873a_0", { source: ":root {\n --idooel-primary-color: #1890FF;\n --idooel-border-width: 2;\n --idooel-border-color: #53a8ff;\n --idooel-column-border-width: 1;\n --idooel-column-border-color: #d9ecff;\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["index.vue"],"names":[],"mappings":"AAAA;EACE,+BAA+B;EAC/B,wBAAwB;EACxB,8BAA8B;EAC9B,+BAA+B;EAC/B,qCAAqC;
|
|
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 });
|
|
2588
2666
|
|
|
2589
2667
|
};
|
|
2590
2668
|
/* scoped */
|
|
2591
|
-
const __vue_scope_id__ = undefined;
|
|
2669
|
+
const __vue_scope_id__$c = undefined;
|
|
2592
2670
|
/* module identifier */
|
|
2593
|
-
const __vue_module_identifier__ = undefined;
|
|
2671
|
+
const __vue_module_identifier__$c = undefined;
|
|
2594
2672
|
/* functional template */
|
|
2595
|
-
const __vue_is_functional_template__ = false;
|
|
2673
|
+
const __vue_is_functional_template__$c = false;
|
|
2596
2674
|
/* style inject SSR */
|
|
2597
2675
|
|
|
2598
2676
|
/* style inject shadow dom */
|
|
2599
2677
|
|
|
2600
2678
|
|
|
2601
2679
|
|
|
2602
|
-
const __vue_component__ = /*#__PURE__*/normalizeComponent(
|
|
2603
|
-
{ render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },
|
|
2604
|
-
__vue_inject_styles__,
|
|
2605
|
-
__vue_script__,
|
|
2606
|
-
__vue_scope_id__,
|
|
2607
|
-
__vue_is_functional_template__,
|
|
2608
|
-
__vue_module_identifier__,
|
|
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,
|
|
2609
2687
|
false,
|
|
2610
2688
|
createInjector,
|
|
2611
2689
|
undefined,
|
|
2612
2690
|
undefined
|
|
2613
2691
|
);
|
|
2614
2692
|
|
|
2615
|
-
__vue_component__.install = Vue => Vue.component(__vue_component__.name, __vue_component__);
|
|
2693
|
+
__vue_component__$c.install = Vue => Vue.component(__vue_component__$c.name, __vue_component__$c);
|
|
2616
2694
|
|
|
2617
|
-
|
|
2695
|
+
//
|
|
2696
|
+
//
|
|
2697
|
+
//
|
|
2698
|
+
//
|
|
2699
|
+
//
|
|
2700
|
+
//
|
|
2701
|
+
//
|
|
2702
|
+
//
|
|
2703
|
+
//
|
|
2704
|
+
//
|
|
2705
|
+
//
|
|
2618
2706
|
|
|
2619
|
-
|
|
2707
|
+
var script$b = {
|
|
2708
|
+
name: 'ele-textarea',
|
|
2709
|
+
props: {
|
|
2710
|
+
maxLength: {
|
|
2711
|
+
type: Number
|
|
2712
|
+
},
|
|
2713
|
+
placeholder: {
|
|
2714
|
+
type: String
|
|
2715
|
+
},
|
|
2716
|
+
allowClear: {
|
|
2717
|
+
type: Boolean,
|
|
2718
|
+
default: false
|
|
2719
|
+
},
|
|
2720
|
+
autosize: {
|
|
2721
|
+
type: [Boolean, Object],
|
|
2722
|
+
default: () => ({
|
|
2723
|
+
minRows: 4,
|
|
2724
|
+
maxRows: 4
|
|
2725
|
+
})
|
|
2726
|
+
},
|
|
2727
|
+
value: {
|
|
2728
|
+
type: String
|
|
2729
|
+
}
|
|
2730
|
+
},
|
|
2731
|
+
methods: {
|
|
2732
|
+
onChange(e) {
|
|
2733
|
+
const value = e.target.value;
|
|
2734
|
+
this.$emit('on-change', value);
|
|
2735
|
+
this.$emit('input', value);
|
|
2736
|
+
}
|
|
2737
|
+
}
|
|
2738
|
+
};
|
|
2620
2739
|
|
|
2621
|
-
|
|
2740
|
+
/* script */
|
|
2741
|
+
const __vue_script__$b = script$b;
|
|
2742
|
+
|
|
2743
|
+
/* template */
|
|
2744
|
+
var __vue_render__$b = function () {
|
|
2745
|
+
var _vm = this;
|
|
2746
|
+
var _h = _vm.$createElement;
|
|
2747
|
+
var _c = _vm._self._c || _h;
|
|
2748
|
+
return _c("a-textarea", {
|
|
2749
|
+
attrs: {
|
|
2750
|
+
value: _vm.value,
|
|
2751
|
+
"auto-size": _vm.autosize,
|
|
2752
|
+
"max-length": _vm.maxLength,
|
|
2753
|
+
placeholder: _vm.placeholder,
|
|
2754
|
+
"allow-clear": _vm.allowClear,
|
|
2755
|
+
},
|
|
2756
|
+
on: { change: _vm.onChange },
|
|
2757
|
+
})
|
|
2758
|
+
};
|
|
2759
|
+
var __vue_staticRenderFns__$b = [];
|
|
2760
|
+
__vue_render__$b._withStripped = true;
|
|
2761
|
+
|
|
2762
|
+
/* style */
|
|
2763
|
+
const __vue_inject_styles__$b = function (inject) {
|
|
2764
|
+
if (!inject) return
|
|
2765
|
+
inject("data-v-256502c2_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", map: {"version":3,"sources":[],"names":[],"mappings":"","file":"index.vue"}, media: undefined });
|
|
2766
|
+
|
|
2767
|
+
};
|
|
2768
|
+
/* scoped */
|
|
2769
|
+
const __vue_scope_id__$b = "data-v-256502c2";
|
|
2770
|
+
/* module identifier */
|
|
2771
|
+
const __vue_module_identifier__$b = undefined;
|
|
2772
|
+
/* functional template */
|
|
2773
|
+
const __vue_is_functional_template__$b = false;
|
|
2774
|
+
/* style inject SSR */
|
|
2775
|
+
|
|
2776
|
+
/* style inject shadow dom */
|
|
2777
|
+
|
|
2778
|
+
|
|
2779
|
+
|
|
2780
|
+
const __vue_component__$b = /*#__PURE__*/normalizeComponent(
|
|
2781
|
+
{ render: __vue_render__$b, staticRenderFns: __vue_staticRenderFns__$b },
|
|
2782
|
+
__vue_inject_styles__$b,
|
|
2783
|
+
__vue_script__$b,
|
|
2784
|
+
__vue_scope_id__$b,
|
|
2785
|
+
__vue_is_functional_template__$b,
|
|
2786
|
+
__vue_module_identifier__$b,
|
|
2787
|
+
false,
|
|
2788
|
+
createInjector,
|
|
2789
|
+
undefined,
|
|
2790
|
+
undefined
|
|
2791
|
+
);
|
|
2792
|
+
|
|
2793
|
+
//
|
|
2794
|
+
//
|
|
2795
|
+
//
|
|
2796
|
+
//
|
|
2797
|
+
//
|
|
2798
|
+
//
|
|
2799
|
+
//
|
|
2800
|
+
//
|
|
2801
|
+
//
|
|
2802
|
+
|
|
2803
|
+
var script$a = {
|
|
2804
|
+
name: 'ele-icon',
|
|
2805
|
+
props: {
|
|
2806
|
+
type: {
|
|
2807
|
+
type: String,
|
|
2808
|
+
default: ''
|
|
2809
|
+
},
|
|
2810
|
+
theme: {
|
|
2811
|
+
type: String
|
|
2812
|
+
}
|
|
2813
|
+
},
|
|
2814
|
+
computed: {
|
|
2815
|
+
isAntIcon() {
|
|
2816
|
+
const prefix = this.type.slice(0, 5);
|
|
2817
|
+
if (prefix === 'icon-') {
|
|
2818
|
+
return false;
|
|
2819
|
+
}
|
|
2820
|
+
return true;
|
|
2821
|
+
}
|
|
2822
|
+
}
|
|
2823
|
+
};
|
|
2824
|
+
|
|
2825
|
+
/* script */
|
|
2826
|
+
const __vue_script__$a = script$a;
|
|
2827
|
+
|
|
2828
|
+
/* template */
|
|
2829
|
+
var __vue_render__$a = function () {
|
|
2830
|
+
var _vm = this;
|
|
2831
|
+
var _h = _vm.$createElement;
|
|
2832
|
+
var _c = _vm._self._c || _h;
|
|
2833
|
+
return _vm.isAntIcon
|
|
2834
|
+
? _c("a-icon", { attrs: { type: _vm.type, theme: _vm.theme } })
|
|
2835
|
+
: _c("i", { class: ["iconfont", _vm.type] })
|
|
2836
|
+
};
|
|
2837
|
+
var __vue_staticRenderFns__$a = [];
|
|
2838
|
+
__vue_render__$a._withStripped = true;
|
|
2839
|
+
|
|
2840
|
+
/* style */
|
|
2841
|
+
const __vue_inject_styles__$a = undefined;
|
|
2842
|
+
/* scoped */
|
|
2843
|
+
const __vue_scope_id__$a = undefined;
|
|
2844
|
+
/* module identifier */
|
|
2845
|
+
const __vue_module_identifier__$a = undefined;
|
|
2846
|
+
/* functional template */
|
|
2847
|
+
const __vue_is_functional_template__$a = false;
|
|
2848
|
+
/* style inject */
|
|
2849
|
+
|
|
2850
|
+
/* style inject SSR */
|
|
2851
|
+
|
|
2852
|
+
/* style inject shadow dom */
|
|
2853
|
+
|
|
2854
|
+
|
|
2855
|
+
|
|
2856
|
+
const __vue_component__$a = /*#__PURE__*/normalizeComponent(
|
|
2857
|
+
{ render: __vue_render__$a, staticRenderFns: __vue_staticRenderFns__$a },
|
|
2858
|
+
__vue_inject_styles__$a,
|
|
2859
|
+
__vue_script__$a,
|
|
2860
|
+
__vue_scope_id__$a,
|
|
2861
|
+
__vue_is_functional_template__$a,
|
|
2862
|
+
__vue_module_identifier__$a,
|
|
2863
|
+
false,
|
|
2864
|
+
undefined,
|
|
2865
|
+
undefined,
|
|
2866
|
+
undefined
|
|
2867
|
+
);
|
|
2868
|
+
|
|
2869
|
+
//
|
|
2870
|
+
var script$9 = {
|
|
2871
|
+
name: 'ele-upload',
|
|
2872
|
+
components: {
|
|
2873
|
+
FileUpload,
|
|
2874
|
+
EleIcon: __vue_component__$a
|
|
2875
|
+
},
|
|
2876
|
+
model: {
|
|
2877
|
+
prop: 'value',
|
|
2878
|
+
event: 'change'
|
|
2879
|
+
},
|
|
2880
|
+
props: {
|
|
2881
|
+
url: {
|
|
2882
|
+
type: String,
|
|
2883
|
+
default: '/zuul/api-file/workbench/file'
|
|
2884
|
+
},
|
|
2885
|
+
size: {
|
|
2886
|
+
type: Number,
|
|
2887
|
+
default: 100
|
|
2888
|
+
},
|
|
2889
|
+
accept: {
|
|
2890
|
+
type: String
|
|
2891
|
+
},
|
|
2892
|
+
maximum: {
|
|
2893
|
+
type: Number,
|
|
2894
|
+
default: 10
|
|
2895
|
+
},
|
|
2896
|
+
multiple: {
|
|
2897
|
+
type: Boolean,
|
|
2898
|
+
default: false
|
|
2899
|
+
},
|
|
2900
|
+
drop: {
|
|
2901
|
+
type: Boolean,
|
|
2902
|
+
default: true
|
|
2903
|
+
},
|
|
2904
|
+
value: {
|
|
2905
|
+
type: [String, Array]
|
|
2906
|
+
},
|
|
2907
|
+
querys: {
|
|
2908
|
+
type: Object,
|
|
2909
|
+
default: () => ({
|
|
2910
|
+
_csrf: 'c81f993f-f044-45bb-b3af-2977d335042d',
|
|
2911
|
+
_t: new Date().valueOf()
|
|
2912
|
+
})
|
|
2913
|
+
},
|
|
2914
|
+
headers: {
|
|
2915
|
+
type: Object,
|
|
2916
|
+
default: () => ({})
|
|
2917
|
+
},
|
|
2918
|
+
byteConversion: {
|
|
2919
|
+
type: Number,
|
|
2920
|
+
default: 1024 * 1024
|
|
2921
|
+
},
|
|
2922
|
+
chunkEnabled: {
|
|
2923
|
+
type: Boolean,
|
|
2924
|
+
default: true
|
|
2925
|
+
}
|
|
2926
|
+
},
|
|
2927
|
+
data() {
|
|
2928
|
+
return {
|
|
2929
|
+
files: [],
|
|
2930
|
+
saveToServerAsyncPageTimer: null
|
|
2931
|
+
};
|
|
2932
|
+
},
|
|
2933
|
+
computed: {
|
|
2934
|
+
getPayloads() {
|
|
2935
|
+
return {
|
|
2936
|
+
override: false
|
|
2937
|
+
};
|
|
2938
|
+
},
|
|
2939
|
+
chunkConfig() {
|
|
2940
|
+
route.toQueryString(this.querys);
|
|
2941
|
+
return {
|
|
2942
|
+
action: `${window.prefixPath}/zuul/api-file/workbench/file/temp/chunk/vue`,
|
|
2943
|
+
headers: {
|
|
2944
|
+
'X-XSRF-TOKEN': localStorage.getItem('token')
|
|
2945
|
+
},
|
|
2946
|
+
minSize: 3 * this.byteConversion,
|
|
2947
|
+
maxActive: 3,
|
|
2948
|
+
maxRetries: 5,
|
|
2949
|
+
startBody: {
|
|
2950
|
+
override: true,
|
|
2951
|
+
path: '/cw'
|
|
2952
|
+
},
|
|
2953
|
+
uploadBody: {
|
|
2954
|
+
override: true,
|
|
2955
|
+
path: '/cw'
|
|
2956
|
+
},
|
|
2957
|
+
finishBody: {
|
|
2958
|
+
override: true,
|
|
2959
|
+
path: '/cw'
|
|
2960
|
+
}
|
|
2961
|
+
};
|
|
2962
|
+
},
|
|
2963
|
+
isFileUploadSuccessed() {
|
|
2964
|
+
return this.files.every(file => file.success);
|
|
2965
|
+
},
|
|
2966
|
+
isShowUploadContainer() {
|
|
2967
|
+
if (this.multiple) {
|
|
2968
|
+
if (this.isFileUploadSuccessed && this.files.length >= this.maximum) {
|
|
2969
|
+
return false;
|
|
2970
|
+
} else {
|
|
2971
|
+
return true;
|
|
2972
|
+
}
|
|
2973
|
+
} else {
|
|
2974
|
+
if (this.isFileUploadSuccessed && this.files.length >= 1) {
|
|
2975
|
+
return false;
|
|
2976
|
+
} else {
|
|
2977
|
+
return true;
|
|
2978
|
+
}
|
|
2979
|
+
}
|
|
2980
|
+
},
|
|
2981
|
+
getMaximum() {
|
|
2982
|
+
return this.multiple ? this.maximum : 1;
|
|
2983
|
+
},
|
|
2984
|
+
fileSizeLimit() {
|
|
2985
|
+
return this.size * this.byteConversion;
|
|
2986
|
+
},
|
|
2987
|
+
postAction() {
|
|
2988
|
+
const ret = route.toQueryString(this.querys);
|
|
2989
|
+
return `${window.prefixPath}${this.url}?${ret}`;
|
|
2990
|
+
},
|
|
2991
|
+
uploadRef() {
|
|
2992
|
+
return v4();
|
|
2993
|
+
},
|
|
2994
|
+
fileSuffixIcon() {
|
|
2995
|
+
return {
|
|
2996
|
+
'doc': {
|
|
2997
|
+
name: 'icon-doc'
|
|
2998
|
+
}
|
|
2999
|
+
};
|
|
3000
|
+
},
|
|
3001
|
+
fileIds() {
|
|
3002
|
+
const fileIds = this.files.map(file => {
|
|
3003
|
+
return file.response.data.fileID;
|
|
3004
|
+
});
|
|
3005
|
+
return this.multiple ? fileIds : fileIds[0];
|
|
3006
|
+
}
|
|
3007
|
+
},
|
|
3008
|
+
methods: {
|
|
3009
|
+
handleClickDownload(file) {
|
|
3010
|
+
console.log('download file', file);
|
|
3011
|
+
},
|
|
3012
|
+
handleClickDelete(file) {
|
|
3013
|
+
this.$refs[this.uploadRef].remove(file);
|
|
3014
|
+
this.$emit('change', this.fileIds);
|
|
3015
|
+
},
|
|
3016
|
+
onWatchFiles(files) {
|
|
3017
|
+
this.files = files;
|
|
3018
|
+
if (this.isFileUploadSuccessed) {
|
|
3019
|
+
this.$emit('change', this.fileIds);
|
|
3020
|
+
}
|
|
3021
|
+
},
|
|
3022
|
+
async saveToServerAsyncPage(payloads = {}) {
|
|
3023
|
+
net.post('zuul/api-file/workbench/file/temp/saveToServerAsyncPage', payloads, {
|
|
3024
|
+
headers: {
|
|
3025
|
+
'Content-Type': 'multipart/form-data'
|
|
3026
|
+
}
|
|
3027
|
+
}).then(resp => {
|
|
3028
|
+
const {
|
|
3029
|
+
data
|
|
3030
|
+
} = resp;
|
|
3031
|
+
if (data !== 'saveToServerAsyncPage') {
|
|
3032
|
+
clearInterval(this.saveToServerAsyncPageTimer);
|
|
3033
|
+
}
|
|
3034
|
+
});
|
|
3035
|
+
// const ret = await net.post({
|
|
3036
|
+
// url: 'zuul/api-file/workbench/file/temp/saveToServerAsyncPage',
|
|
3037
|
+
// method: 'POST',
|
|
3038
|
+
// data: { ...payloads }
|
|
3039
|
+
// }).then(resp => {
|
|
3040
|
+
// const { data: { data, code, message } } = resp
|
|
3041
|
+
// if (code !== '2000') {
|
|
3042
|
+
// this.$Message.error(message)
|
|
3043
|
+
// return
|
|
3044
|
+
// }
|
|
3045
|
+
// if (data !== 'saveToServerAsyncPage') {
|
|
3046
|
+
// clearInterval(timer)
|
|
3047
|
+
// const { fileID, size } = data
|
|
3048
|
+
// this.$emit('on-success', { ...data, fileId: fileID })
|
|
3049
|
+
// this.$Message.success('同步成功')
|
|
3050
|
+
// return { fileId: fileID, size }
|
|
3051
|
+
// }
|
|
3052
|
+
// })
|
|
3053
|
+
// return ret
|
|
3054
|
+
},
|
|
3055
|
+
onWatchInputFiles(newFile, oldFile) {
|
|
3056
|
+
if (newFile && !oldFile) {
|
|
3057
|
+
// add file
|
|
3058
|
+
console.log('add', newFile);
|
|
3059
|
+
}
|
|
3060
|
+
if (newFile && oldFile) {
|
|
3061
|
+
// update file
|
|
3062
|
+
console.log('update', newFile);
|
|
3063
|
+
const {
|
|
3064
|
+
success,
|
|
3065
|
+
active,
|
|
3066
|
+
chunk,
|
|
3067
|
+
response
|
|
3068
|
+
} = newFile;
|
|
3069
|
+
if (chunk && success && !active) {
|
|
3070
|
+
console.log('chunk end');
|
|
3071
|
+
const {
|
|
3072
|
+
data: {
|
|
3073
|
+
file,
|
|
3074
|
+
type
|
|
3075
|
+
}
|
|
3076
|
+
} = response;
|
|
3077
|
+
const payloads = {
|
|
3078
|
+
filePath: file.match(/\/cw(.*)/)[0],
|
|
3079
|
+
asyncID: v4(),
|
|
3080
|
+
isDeleteOrigin: false,
|
|
3081
|
+
toImage: type === 'pdf' ? true : false,
|
|
3082
|
+
unzip: type === 'zip' ? true : false,
|
|
3083
|
+
_csrf: localStorage.getItem('token')
|
|
3084
|
+
};
|
|
3085
|
+
this.saveToServerAsyncPageTimer = setInterval(() => {
|
|
3086
|
+
this.saveToServerAsyncPage(payloads);
|
|
3087
|
+
}, 2000);
|
|
3088
|
+
}
|
|
3089
|
+
}
|
|
3090
|
+
if (!newFile && oldFile) {
|
|
3091
|
+
// delete file
|
|
3092
|
+
console.log('delete');
|
|
3093
|
+
}
|
|
3094
|
+
if (Boolean(newFile) !== Boolean(oldFile) || oldFile.error !== newFile.error) {
|
|
3095
|
+
if (!this.$refs[this.uploadRef].active) {
|
|
3096
|
+
this.$refs[this.uploadRef].active = true;
|
|
3097
|
+
}
|
|
3098
|
+
}
|
|
3099
|
+
}
|
|
3100
|
+
}
|
|
3101
|
+
};
|
|
3102
|
+
|
|
3103
|
+
/* script */
|
|
3104
|
+
const __vue_script__$9 = script$9;
|
|
3105
|
+
|
|
3106
|
+
/* template */
|
|
3107
|
+
var __vue_render__$9 = function () {
|
|
3108
|
+
var _vm = this;
|
|
3109
|
+
var _h = _vm.$createElement;
|
|
3110
|
+
var _c = _vm._self._c || _h;
|
|
3111
|
+
return _c(
|
|
3112
|
+
"div",
|
|
3113
|
+
{ staticClass: "ele-upload__wrapper" },
|
|
3114
|
+
[
|
|
3115
|
+
_c(
|
|
3116
|
+
"FileUpload",
|
|
3117
|
+
{
|
|
3118
|
+
directives: [
|
|
3119
|
+
{
|
|
3120
|
+
name: "show",
|
|
3121
|
+
rawName: "v-show",
|
|
3122
|
+
value: _vm.isShowUploadContainer,
|
|
3123
|
+
expression: "isShowUploadContainer",
|
|
3124
|
+
},
|
|
3125
|
+
],
|
|
3126
|
+
ref: _vm.uploadRef,
|
|
3127
|
+
staticClass: "ele-upload__inner",
|
|
3128
|
+
staticStyle: { width: "100%" },
|
|
3129
|
+
attrs: {
|
|
3130
|
+
drop: _vm.drop,
|
|
3131
|
+
"chunk-enabled": _vm.chunkEnabled,
|
|
3132
|
+
chunk: _vm.chunkConfig,
|
|
3133
|
+
accept: _vm.accept,
|
|
3134
|
+
size: _vm.fileSizeLimit,
|
|
3135
|
+
"post-action": _vm.postAction,
|
|
3136
|
+
multiple: _vm.multiple,
|
|
3137
|
+
maximum: _vm.getMaximum,
|
|
3138
|
+
},
|
|
3139
|
+
on: { "input-file": _vm.onWatchInputFiles, input: _vm.onWatchFiles },
|
|
3140
|
+
model: {
|
|
3141
|
+
value: _vm.files,
|
|
3142
|
+
callback: function ($$v) {
|
|
3143
|
+
_vm.files = $$v;
|
|
3144
|
+
},
|
|
3145
|
+
expression: "files",
|
|
3146
|
+
},
|
|
3147
|
+
},
|
|
3148
|
+
[
|
|
3149
|
+
_c("section", { staticClass: "ele-upload__area" }, [
|
|
3150
|
+
_c(
|
|
3151
|
+
"div",
|
|
3152
|
+
{ staticClass: "ele-upload__area--icon" },
|
|
3153
|
+
[_c("ele-icon", { attrs: { type: "cloud-upload" } })],
|
|
3154
|
+
1
|
|
3155
|
+
),
|
|
3156
|
+
_vm._v(" "),
|
|
3157
|
+
_c("div", { staticClass: "ele-upload__area--text" }, [
|
|
3158
|
+
_c("div", { staticClass: "ele-upload__message" }, [
|
|
3159
|
+
_vm._v("单击或拖动文件到该区域以上传"),
|
|
3160
|
+
]),
|
|
3161
|
+
_vm._v(" "),
|
|
3162
|
+
_c("div", { staticClass: "ele-upload__ext" }, [
|
|
3163
|
+
_vm._v("文件小于" + _vm._s(_vm.size) + "M"),
|
|
3164
|
+
]),
|
|
3165
|
+
]),
|
|
3166
|
+
]),
|
|
3167
|
+
]
|
|
3168
|
+
),
|
|
3169
|
+
_vm._v(" "),
|
|
3170
|
+
_c(
|
|
3171
|
+
"section",
|
|
3172
|
+
{ staticClass: "ele-files__wrapper" },
|
|
3173
|
+
_vm._l(_vm.files, function (file, idx) {
|
|
3174
|
+
return _c("div", { key: idx, staticClass: "ele-file__item" }, [
|
|
3175
|
+
_c(
|
|
3176
|
+
"div",
|
|
3177
|
+
{ staticClass: "ele-file__suffix--icon" },
|
|
3178
|
+
[_c("ele-icon", { attrs: { type: "icon-doc" } })],
|
|
3179
|
+
1
|
|
3180
|
+
),
|
|
3181
|
+
_vm._v(" "),
|
|
3182
|
+
_c("div", { staticClass: "ele-file__name" }, [
|
|
3183
|
+
_c(
|
|
3184
|
+
"div",
|
|
3185
|
+
{
|
|
3186
|
+
staticClass: "ele-file__inner",
|
|
3187
|
+
on: {
|
|
3188
|
+
click: function ($event) {
|
|
3189
|
+
return _vm.handleClickDownload(file)
|
|
3190
|
+
},
|
|
3191
|
+
},
|
|
3192
|
+
},
|
|
3193
|
+
[_vm._v(_vm._s(file.name))]
|
|
3194
|
+
),
|
|
3195
|
+
_vm._v(" "),
|
|
3196
|
+
!file.success
|
|
3197
|
+
? _c(
|
|
3198
|
+
"div",
|
|
3199
|
+
{ staticClass: "ele-uplpad__progress" },
|
|
3200
|
+
[
|
|
3201
|
+
_c("a-progress", {
|
|
3202
|
+
attrs: {
|
|
3203
|
+
strokeWidth: 2,
|
|
3204
|
+
percent: Number(file.progress),
|
|
3205
|
+
size: "small",
|
|
3206
|
+
},
|
|
3207
|
+
}),
|
|
3208
|
+
],
|
|
3209
|
+
1
|
|
3210
|
+
)
|
|
3211
|
+
: _vm._e(),
|
|
3212
|
+
]),
|
|
3213
|
+
_vm._v(" "),
|
|
3214
|
+
file.success || file.error
|
|
3215
|
+
? _c("div", { staticClass: "ele-file__delete" }, [
|
|
3216
|
+
_c("span", { staticClass: "ele-file__size" }, [
|
|
3217
|
+
_vm._v(
|
|
3218
|
+
_vm._s((file.size / _vm.byteConversion).toFixed(2)) + "M"
|
|
3219
|
+
),
|
|
3220
|
+
]),
|
|
3221
|
+
_vm._v(" "),
|
|
3222
|
+
_c(
|
|
3223
|
+
"span",
|
|
3224
|
+
{
|
|
3225
|
+
staticClass: "ele-file__delete--icon",
|
|
3226
|
+
on: {
|
|
3227
|
+
click: function ($event) {
|
|
3228
|
+
return _vm.handleClickDelete(file)
|
|
3229
|
+
},
|
|
3230
|
+
},
|
|
3231
|
+
},
|
|
3232
|
+
[_c("ele-icon", { attrs: { type: "delete" } })],
|
|
3233
|
+
1
|
|
3234
|
+
),
|
|
3235
|
+
])
|
|
3236
|
+
: _vm._e(),
|
|
3237
|
+
])
|
|
3238
|
+
}),
|
|
3239
|
+
0
|
|
3240
|
+
),
|
|
3241
|
+
],
|
|
3242
|
+
1
|
|
3243
|
+
)
|
|
3244
|
+
};
|
|
3245
|
+
var __vue_staticRenderFns__$9 = [];
|
|
3246
|
+
__vue_render__$9._withStripped = true;
|
|
3247
|
+
|
|
3248
|
+
/* style */
|
|
3249
|
+
const __vue_inject_styles__$9 = function (inject) {
|
|
3250
|
+
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 });
|
|
3252
|
+
|
|
3253
|
+
};
|
|
3254
|
+
/* scoped */
|
|
3255
|
+
const __vue_scope_id__$9 = "data-v-29bc9f58";
|
|
3256
|
+
/* module identifier */
|
|
3257
|
+
const __vue_module_identifier__$9 = undefined;
|
|
3258
|
+
/* functional template */
|
|
3259
|
+
const __vue_is_functional_template__$9 = false;
|
|
3260
|
+
/* style inject SSR */
|
|
3261
|
+
|
|
3262
|
+
/* style inject shadow dom */
|
|
3263
|
+
|
|
3264
|
+
|
|
3265
|
+
|
|
3266
|
+
const __vue_component__$9 = /*#__PURE__*/normalizeComponent(
|
|
3267
|
+
{ render: __vue_render__$9, staticRenderFns: __vue_staticRenderFns__$9 },
|
|
3268
|
+
__vue_inject_styles__$9,
|
|
3269
|
+
__vue_script__$9,
|
|
3270
|
+
__vue_scope_id__$9,
|
|
3271
|
+
__vue_is_functional_template__$9,
|
|
3272
|
+
__vue_module_identifier__$9,
|
|
3273
|
+
false,
|
|
3274
|
+
createInjector,
|
|
3275
|
+
undefined,
|
|
3276
|
+
undefined
|
|
3277
|
+
);
|
|
3278
|
+
|
|
3279
|
+
//
|
|
3280
|
+
//
|
|
3281
|
+
//
|
|
3282
|
+
//
|
|
3283
|
+
//
|
|
3284
|
+
//
|
|
3285
|
+
//
|
|
3286
|
+
//
|
|
3287
|
+
//
|
|
3288
|
+
//
|
|
3289
|
+
//
|
|
3290
|
+
//
|
|
3291
|
+
//
|
|
3292
|
+
//
|
|
3293
|
+
//
|
|
3294
|
+
//
|
|
3295
|
+
//
|
|
3296
|
+
//
|
|
3297
|
+
|
|
3298
|
+
var script$8 = {
|
|
3299
|
+
name: 'ele-select-entity',
|
|
3300
|
+
props: {
|
|
3301
|
+
value: {
|
|
3302
|
+
type: [Array, Object]
|
|
3303
|
+
},
|
|
3304
|
+
multiple: {
|
|
3305
|
+
type: Boolean,
|
|
3306
|
+
default: true
|
|
3307
|
+
},
|
|
3308
|
+
maxCount: {
|
|
3309
|
+
type: Number,
|
|
3310
|
+
default: 7
|
|
3311
|
+
},
|
|
3312
|
+
disabled: {
|
|
3313
|
+
type: Boolean,
|
|
3314
|
+
default: false
|
|
3315
|
+
},
|
|
3316
|
+
addonAfter: {
|
|
3317
|
+
type: String,
|
|
3318
|
+
default: '选择'
|
|
3319
|
+
}
|
|
3320
|
+
},
|
|
3321
|
+
methods: {
|
|
3322
|
+
getValueList() {
|
|
3323
|
+
if (this.value) {
|
|
3324
|
+
if (this.multiple) {
|
|
3325
|
+
return this.getIsMaxCount() ? this.value.slice(0, this.maxCount) : this.value;
|
|
3326
|
+
}
|
|
3327
|
+
return [this.value];
|
|
3328
|
+
}
|
|
3329
|
+
return [];
|
|
3330
|
+
},
|
|
3331
|
+
getIsMaxCount() {
|
|
3332
|
+
if (this.value && this.multiple) {
|
|
3333
|
+
return this.value.length >= this.maxCount;
|
|
3334
|
+
}
|
|
3335
|
+
return false;
|
|
3336
|
+
},
|
|
3337
|
+
onChange() {
|
|
3338
|
+
if (this.disabled) return;
|
|
3339
|
+
this.$emit('change', this.value);
|
|
3340
|
+
},
|
|
3341
|
+
onClose(e, inx) {
|
|
3342
|
+
e = window.event || e;
|
|
3343
|
+
e.preventDefault();
|
|
3344
|
+
if (!this.multiple) {
|
|
3345
|
+
this.$emit('change', null);
|
|
3346
|
+
return;
|
|
3347
|
+
}
|
|
3348
|
+
this.value.splice(inx, 1);
|
|
3349
|
+
this.$emit('change', this.value);
|
|
3350
|
+
}
|
|
3351
|
+
}
|
|
3352
|
+
};
|
|
3353
|
+
|
|
3354
|
+
/* script */
|
|
3355
|
+
const __vue_script__$8 = script$8;
|
|
3356
|
+
|
|
3357
|
+
/* template */
|
|
3358
|
+
var __vue_render__$8 = function () {
|
|
3359
|
+
var _vm = this;
|
|
3360
|
+
var _h = _vm.$createElement;
|
|
3361
|
+
var _c = _vm._self._c || _h;
|
|
3362
|
+
return _c(
|
|
3363
|
+
"div",
|
|
3364
|
+
{
|
|
3365
|
+
staticClass: "g-select-entity__wrapper",
|
|
3366
|
+
class: _vm.disabled ? "g-select-entity__disabled" : "",
|
|
3367
|
+
},
|
|
3368
|
+
[
|
|
3369
|
+
_c(
|
|
3370
|
+
"span",
|
|
3371
|
+
{ staticClass: "select-entity__input" },
|
|
3372
|
+
[
|
|
3373
|
+
_vm._l(_vm.getValueList(), function (item, inx) {
|
|
3374
|
+
return _c(
|
|
3375
|
+
"a-tag",
|
|
3376
|
+
{
|
|
3377
|
+
key: item.value,
|
|
3378
|
+
attrs: { closable: !_vm.disabled && !_vm.getIsMaxCount() },
|
|
3379
|
+
on: {
|
|
3380
|
+
close: function ($event) {
|
|
3381
|
+
var i = arguments.length,
|
|
3382
|
+
argsArray = Array(i);
|
|
3383
|
+
while (i--) argsArray[i] = arguments[i];
|
|
3384
|
+
return _vm.onClose.apply(void 0, argsArray.concat([inx]))
|
|
3385
|
+
},
|
|
3386
|
+
},
|
|
3387
|
+
},
|
|
3388
|
+
[_vm._v("\n " + _vm._s(item.label) + "\n ")]
|
|
3389
|
+
)
|
|
3390
|
+
}),
|
|
3391
|
+
_vm._v(" "),
|
|
3392
|
+
_vm.getIsMaxCount() ? _c("a-tag", [_vm._v("......")]) : _vm._e(),
|
|
3393
|
+
],
|
|
3394
|
+
2
|
|
3395
|
+
),
|
|
3396
|
+
_vm._v(" "),
|
|
3397
|
+
_c(
|
|
3398
|
+
"span",
|
|
3399
|
+
{ staticClass: "select-entity__addon", on: { click: _vm.onChange } },
|
|
3400
|
+
[_vm._v(_vm._s(_vm.addonAfter))]
|
|
3401
|
+
),
|
|
3402
|
+
_vm._v(" "),
|
|
3403
|
+
_vm._t("default"),
|
|
3404
|
+
],
|
|
3405
|
+
2
|
|
3406
|
+
)
|
|
3407
|
+
};
|
|
3408
|
+
var __vue_staticRenderFns__$8 = [];
|
|
3409
|
+
__vue_render__$8._withStripped = true;
|
|
3410
|
+
|
|
3411
|
+
/* style */
|
|
3412
|
+
const __vue_inject_styles__$8 = function (inject) {
|
|
3413
|
+
if (!inject) return
|
|
3414
|
+
inject("data-v-328544bb_0", { source: ".g-select-entity__wrapper[data-v-328544bb] {\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-328544bb]:hover {\n border-color: var(--idooel-primary-color);\n}\n.g-select-entity__wrapper .select-entity__input[data-v-328544bb] {\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-328544bb] {\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-328544bb] {\n border-color: var(--idooel-form-border-err-color);\n}\n.g-select-entity__disabled .select-entity__input[data-v-328544bb] {\n background-color: var(--idoole-black-02);\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["E:\\work\\code\\ganjiao\\ganjian-monorepo\\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>\r\n <div class=\"g-select-entity__wrapper\" :class=\"disabled ? 'g-select-entity__disabled' : ''\">\r\n <span class=\"select-entity__input\">\r\n <a-tag\r\n v-for=\"(item, inx) in getValueList()\"\r\n :key=\"item.value\"\r\n :closable=\"!disabled && !getIsMaxCount()\"\r\n @close=\"onClose(...arguments, inx)\"\r\n >\r\n {{ item.label }}\r\n </a-tag>\r\n <a-tag v-if=\"getIsMaxCount()\">......</a-tag>\r\n </span>\r\n <span class=\"select-entity__addon\" @click=\"onChange\">{{ addonAfter }}</span>\r\n <slot></slot>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: 'ele-select-entity',\r\n props: {\r\n value: {\r\n type: [Array, Object]\r\n },\r\n multiple: {\r\n type: Boolean,\r\n default: true\r\n },\r\n maxCount: {\r\n type: Number,\r\n default: 7\r\n },\r\n disabled: {\r\n type: Boolean,\r\n default: false\r\n },\r\n addonAfter: {\r\n type: String,\r\n default: '选择'\r\n }\r\n },\r\n methods: {\r\n getValueList () {\r\n if (this.value) {\r\n if (this.multiple) {\r\n return this.getIsMaxCount() ? this.value.slice(0, this.maxCount) : this.value\r\n }\r\n return [this.value]\r\n }\r\n return []\r\n },\r\n getIsMaxCount () {\r\n if (this.value && this.multiple) {\r\n return this.value.length >= this.maxCount\r\n }\r\n return false\r\n },\r\n onChange () {\r\n if (this.disabled) return\r\n this.$emit('change', this.value)\r\n },\r\n onClose (e, inx) {\r\n e = window.event || e\r\n e.preventDefault()\r\n if (!this.multiple) {\r\n this.$emit('change', null)\r\n return\r\n }\r\n this.value.splice(inx, 1)\r\n this.$emit('change', this.value)\r\n }\r\n }\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.g-select-entity__wrapper {\r\n font-size: 14px;\r\n line-height: 30px;\r\n position: relative;\r\n width: 100%;\r\n display: flex;\r\n color: var(--idoole-black-07);\r\n border-radius: 4px;\r\n border: 1px solid var(--idooel-form-title-border-color);\r\n &:hover {\r\n border-color: var(--idooel-primary-color);\r\n }\r\n .select-entity__input {\r\n padding: 0 11px;\r\n background-color: #fff;\r\n border-radius: 4px;\r\n flex-grow: 1;\r\n min-height: 30px;\r\n text-align: left;\r\n }\r\n .select-entity__addon {\r\n padding: 0 11px;\r\n color: var(--idoole-black-07);\r\n background-color: var(--idoole-black-02);\r\n border-left: 1px solid var(--idooel-form-title-border-color);\r\n cursor: pointer;\r\n min-height: 30px;\r\n white-space: nowrap;\r\n }\r\n}\r\n.has-error .g-select-entity__wrapper {\r\n border-color: var(--idooel-form-border-err-color);\r\n}\r\n.g-select-entity__disabled .select-entity__input {\r\n background-color: var(--idoole-black-02);\r\n}\r\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
|
+
|
|
3416
|
+
};
|
|
3417
|
+
/* scoped */
|
|
3418
|
+
const __vue_scope_id__$8 = "data-v-328544bb";
|
|
3419
|
+
/* module identifier */
|
|
3420
|
+
const __vue_module_identifier__$8 = undefined;
|
|
3421
|
+
/* functional template */
|
|
3422
|
+
const __vue_is_functional_template__$8 = false;
|
|
3423
|
+
/* style inject SSR */
|
|
3424
|
+
|
|
3425
|
+
/* style inject shadow dom */
|
|
3426
|
+
|
|
3427
|
+
|
|
3428
|
+
|
|
3429
|
+
const __vue_component__$8 = /*#__PURE__*/normalizeComponent(
|
|
3430
|
+
{ render: __vue_render__$8, staticRenderFns: __vue_staticRenderFns__$8 },
|
|
3431
|
+
__vue_inject_styles__$8,
|
|
3432
|
+
__vue_script__$8,
|
|
3433
|
+
__vue_scope_id__$8,
|
|
3434
|
+
__vue_is_functional_template__$8,
|
|
3435
|
+
__vue_module_identifier__$8,
|
|
3436
|
+
false,
|
|
3437
|
+
createInjector,
|
|
3438
|
+
undefined,
|
|
3439
|
+
undefined
|
|
3440
|
+
);
|
|
3441
|
+
|
|
3442
|
+
//
|
|
3443
|
+
//
|
|
3444
|
+
//
|
|
3445
|
+
//
|
|
3446
|
+
//
|
|
3447
|
+
//
|
|
3448
|
+
|
|
3449
|
+
var script$7 = {
|
|
3450
|
+
name: 'ele-input-number',
|
|
3451
|
+
props: {
|
|
3452
|
+
precision: {
|
|
3453
|
+
type: Number
|
|
3454
|
+
},
|
|
3455
|
+
value: {
|
|
3456
|
+
type: [Number, String]
|
|
3457
|
+
}
|
|
3458
|
+
},
|
|
3459
|
+
methods: {
|
|
3460
|
+
onChange(value) {
|
|
3461
|
+
this.$emit('change', value);
|
|
3462
|
+
}
|
|
3463
|
+
}
|
|
3464
|
+
};
|
|
3465
|
+
|
|
3466
|
+
/* script */
|
|
3467
|
+
const __vue_script__$7 = script$7;
|
|
3468
|
+
|
|
3469
|
+
/* template */
|
|
3470
|
+
var __vue_render__$7 = function () {
|
|
3471
|
+
var _vm = this;
|
|
3472
|
+
var _h = _vm.$createElement;
|
|
3473
|
+
var _c = _vm._self._c || _h;
|
|
3474
|
+
return _c(
|
|
3475
|
+
"div",
|
|
3476
|
+
[
|
|
3477
|
+
_c(
|
|
3478
|
+
"a-input-number",
|
|
3479
|
+
_vm._b(
|
|
3480
|
+
{
|
|
3481
|
+
staticStyle: { width: "100%" },
|
|
3482
|
+
attrs: { value: _vm.value, precision: _vm.precision },
|
|
3483
|
+
on: { change: _vm.onChange },
|
|
3484
|
+
},
|
|
3485
|
+
"a-input-number",
|
|
3486
|
+
_vm.$attrs,
|
|
3487
|
+
false
|
|
3488
|
+
)
|
|
3489
|
+
),
|
|
3490
|
+
],
|
|
3491
|
+
1
|
|
3492
|
+
)
|
|
3493
|
+
};
|
|
3494
|
+
var __vue_staticRenderFns__$7 = [];
|
|
3495
|
+
__vue_render__$7._withStripped = true;
|
|
3496
|
+
|
|
3497
|
+
/* style */
|
|
3498
|
+
const __vue_inject_styles__$7 = undefined;
|
|
3499
|
+
/* scoped */
|
|
3500
|
+
const __vue_scope_id__$7 = undefined;
|
|
3501
|
+
/* module identifier */
|
|
3502
|
+
const __vue_module_identifier__$7 = undefined;
|
|
3503
|
+
/* functional template */
|
|
3504
|
+
const __vue_is_functional_template__$7 = false;
|
|
3505
|
+
/* style inject */
|
|
3506
|
+
|
|
3507
|
+
/* style inject SSR */
|
|
3508
|
+
|
|
3509
|
+
/* style inject shadow dom */
|
|
3510
|
+
|
|
3511
|
+
|
|
3512
|
+
|
|
3513
|
+
const __vue_component__$7 = /*#__PURE__*/normalizeComponent(
|
|
3514
|
+
{ render: __vue_render__$7, staticRenderFns: __vue_staticRenderFns__$7 },
|
|
3515
|
+
__vue_inject_styles__$7,
|
|
3516
|
+
__vue_script__$7,
|
|
3517
|
+
__vue_scope_id__$7,
|
|
3518
|
+
__vue_is_functional_template__$7,
|
|
3519
|
+
__vue_module_identifier__$7,
|
|
3520
|
+
false,
|
|
3521
|
+
undefined,
|
|
3522
|
+
undefined,
|
|
3523
|
+
undefined
|
|
3524
|
+
);
|
|
3525
|
+
|
|
3526
|
+
//
|
|
3527
|
+
//
|
|
3528
|
+
//
|
|
3529
|
+
//
|
|
3530
|
+
|
|
3531
|
+
var script$6 = {
|
|
3532
|
+
name: 'ele-checkbox',
|
|
3533
|
+
props: {
|
|
3534
|
+
value: {
|
|
3535
|
+
type: Array
|
|
3536
|
+
},
|
|
3537
|
+
dataSource: {
|
|
3538
|
+
type: Array,
|
|
3539
|
+
default: () => []
|
|
3540
|
+
},
|
|
3541
|
+
disabled: {
|
|
3542
|
+
type: Boolean,
|
|
3543
|
+
default: false
|
|
3544
|
+
}
|
|
3545
|
+
},
|
|
3546
|
+
methods: {
|
|
3547
|
+
onChange(value) {
|
|
3548
|
+
this.$emit('change', value);
|
|
3549
|
+
this.$emit('input', value);
|
|
3550
|
+
}
|
|
3551
|
+
}
|
|
3552
|
+
};
|
|
3553
|
+
|
|
3554
|
+
/* script */
|
|
3555
|
+
const __vue_script__$6 = script$6;
|
|
3556
|
+
|
|
3557
|
+
/* template */
|
|
3558
|
+
var __vue_render__$6 = function () {
|
|
3559
|
+
var _vm = this;
|
|
3560
|
+
var _h = _vm.$createElement;
|
|
3561
|
+
var _c = _vm._self._c || _h;
|
|
3562
|
+
return _c("a-checkbox-group", {
|
|
3563
|
+
attrs: {
|
|
3564
|
+
options: _vm.dataSource,
|
|
3565
|
+
disabled: _vm.disabled,
|
|
3566
|
+
defaultValue: _vm.value,
|
|
3567
|
+
},
|
|
3568
|
+
on: { change: _vm.onChange },
|
|
3569
|
+
})
|
|
3570
|
+
};
|
|
3571
|
+
var __vue_staticRenderFns__$6 = [];
|
|
3572
|
+
__vue_render__$6._withStripped = true;
|
|
3573
|
+
|
|
3574
|
+
/* style */
|
|
3575
|
+
const __vue_inject_styles__$6 = function (inject) {
|
|
3576
|
+
if (!inject) return
|
|
3577
|
+
inject("data-v-63b1b120_0", { source: ".ant-checkbox-group[data-v-63b1b120] {\n text-align: left;\n line-height: 32px;\n}\n.has-error .ant-checkbox-group[data-v-63b1b120] .ant-checkbox-wrapper {\n color: var(--idooel-form-border-err-color);\n}\n.has-error .ant-checkbox-group[data-v-63b1b120] .ant-checkbox-inner {\n border-color: var(--idooel-form-border-err-color);\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["E:\\work\\code\\ganjiao\\ganjian-monorepo\\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>\r\n <a-checkbox-group :options=\"dataSource\" :disabled=\"disabled\" :defaultValue=\"value\" @change=\"onChange\"></a-checkbox-group>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: 'ele-checkbox',\r\n props: {\r\n value: {\r\n type: Array\r\n },\r\n dataSource: {\r\n type: Array,\r\n default: () => []\r\n },\r\n disabled: {\r\n type: Boolean,\r\n default: false\r\n }\r\n },\r\n methods: {\r\n onChange (value) {\r\n this.$emit('change', value)\r\n this.$emit('input', value)\r\n }\r\n }\r\n}\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n.ant-checkbox-group {\r\n text-align: left;\r\n line-height: 32px;\r\n}\r\n.has-error {\r\n .ant-checkbox-group {\r\n ::v-deep .ant-checkbox-wrapper {\r\n color: var(--idooel-form-border-err-color);\r\n }\r\n ::v-deep .ant-checkbox-inner {\r\n border-color: var(--idooel-form-border-err-color);\r\n }\r\n }\r\n}\r\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
|
+
|
|
3579
|
+
};
|
|
3580
|
+
/* scoped */
|
|
3581
|
+
const __vue_scope_id__$6 = "data-v-63b1b120";
|
|
3582
|
+
/* module identifier */
|
|
3583
|
+
const __vue_module_identifier__$6 = undefined;
|
|
3584
|
+
/* functional template */
|
|
3585
|
+
const __vue_is_functional_template__$6 = false;
|
|
3586
|
+
/* style inject SSR */
|
|
3587
|
+
|
|
3588
|
+
/* style inject shadow dom */
|
|
3589
|
+
|
|
3590
|
+
|
|
3591
|
+
|
|
3592
|
+
const __vue_component__$6 = /*#__PURE__*/normalizeComponent(
|
|
3593
|
+
{ render: __vue_render__$6, staticRenderFns: __vue_staticRenderFns__$6 },
|
|
3594
|
+
__vue_inject_styles__$6,
|
|
3595
|
+
__vue_script__$6,
|
|
3596
|
+
__vue_scope_id__$6,
|
|
3597
|
+
__vue_is_functional_template__$6,
|
|
3598
|
+
__vue_module_identifier__$6,
|
|
3599
|
+
false,
|
|
3600
|
+
createInjector,
|
|
3601
|
+
undefined,
|
|
3602
|
+
undefined
|
|
3603
|
+
);
|
|
3604
|
+
|
|
3605
|
+
//
|
|
3606
|
+
//
|
|
3607
|
+
//
|
|
3608
|
+
//
|
|
3609
|
+
//
|
|
3610
|
+
//
|
|
3611
|
+
//
|
|
3612
|
+
//
|
|
3613
|
+
|
|
3614
|
+
var script$5 = {
|
|
3615
|
+
name: 'ele-radio',
|
|
3616
|
+
props: {
|
|
3617
|
+
value: {
|
|
3618
|
+
type: [String, Array, Number]
|
|
3619
|
+
},
|
|
3620
|
+
dataSource: {
|
|
3621
|
+
type: Array,
|
|
3622
|
+
default: () => []
|
|
3623
|
+
},
|
|
3624
|
+
disabled: {
|
|
3625
|
+
type: Boolean,
|
|
3626
|
+
default: false
|
|
3627
|
+
}
|
|
3628
|
+
},
|
|
3629
|
+
methods: {
|
|
3630
|
+
onChange(e) {
|
|
3631
|
+
this.$emit('change', e.target.value);
|
|
3632
|
+
this.$emit('input', e.target.value);
|
|
3633
|
+
}
|
|
3634
|
+
}
|
|
3635
|
+
};
|
|
3636
|
+
|
|
3637
|
+
/* script */
|
|
3638
|
+
const __vue_script__$5 = script$5;
|
|
3639
|
+
|
|
3640
|
+
/* template */
|
|
3641
|
+
var __vue_render__$5 = function () {
|
|
3642
|
+
var _vm = this;
|
|
3643
|
+
var _h = _vm.$createElement;
|
|
3644
|
+
var _c = _vm._self._c || _h;
|
|
3645
|
+
return _c(
|
|
3646
|
+
"a-radio-group",
|
|
3647
|
+
{
|
|
3648
|
+
attrs: { defaultValue: _vm.value, disabled: _vm.disabled },
|
|
3649
|
+
on: { change: _vm.onChange },
|
|
3650
|
+
},
|
|
3651
|
+
_vm._l(_vm.dataSource, function (item) {
|
|
3652
|
+
return _c("a-radio", { key: item.value, attrs: { value: item.value } }, [
|
|
3653
|
+
_vm._v("\n " + _vm._s(item.label) + "\n "),
|
|
3654
|
+
])
|
|
3655
|
+
}),
|
|
3656
|
+
1
|
|
3657
|
+
)
|
|
3658
|
+
};
|
|
3659
|
+
var __vue_staticRenderFns__$5 = [];
|
|
3660
|
+
__vue_render__$5._withStripped = true;
|
|
3661
|
+
|
|
3662
|
+
/* style */
|
|
3663
|
+
const __vue_inject_styles__$5 = function (inject) {
|
|
3664
|
+
if (!inject) return
|
|
3665
|
+
inject("data-v-66c5cdf2_0", { source: ".ant-radio-group[data-v-66c5cdf2] {\n text-align: left;\n line-height: 32px;\n}\n.has-error .ant-radio-group[data-v-66c5cdf2] .ant-radio-wrapper {\n color: var(--idooel-form-border-err-color);\n}\n.has-error .ant-radio-group[data-v-66c5cdf2] .ant-radio-inner {\n border-color: var(--idooel-form-border-err-color);\n}\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["E:\\work\\code\\ganjiao\\ganjian-monorepo\\packages\\components\\packages\\radio\\src\\index.vue","index.vue"],"names":[],"mappings":"AAiCA;EACA,gBAAA;EACA,iBAAA;AChCA;ADoCA;EACA,0CAAA;ACjCA;ADmCA;EACA,iDAAA;ACjCA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\r\n <a-radio-group :defaultValue=\"value\" @change=\"onChange\" :disabled=\"disabled\">\r\n <a-radio v-for=\"item in dataSource\" :key=\"item.value\" :value=\"item.value\">\r\n {{ item.label }}\r\n </a-radio>\r\n </a-radio-group>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: 'ele-radio',\r\n props: {\r\n value: {\r\n type: [String, Array, Number]\r\n },\r\n dataSource: {\r\n type: Array,\r\n default: () => []\r\n },\r\n disabled: {\r\n type: Boolean,\r\n default: false\r\n }\r\n },\r\n methods: {\r\n onChange (e) {\r\n this.$emit('change', e.target.value)\r\n this.$emit('input', e.target.value)\r\n }\r\n }\r\n}\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n.ant-radio-group {\r\n text-align: left;\r\n line-height: 32px;\r\n}\r\n.has-error {\r\n .ant-radio-group {\r\n ::v-deep .ant-radio-wrapper {\r\n color: var(--idooel-form-border-err-color);\r\n }\r\n ::v-deep .ant-radio-inner {\r\n border-color: var(--idooel-form-border-err-color);\r\n }\r\n }\r\n}\r\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
|
+
|
|
3667
|
+
};
|
|
3668
|
+
/* scoped */
|
|
3669
|
+
const __vue_scope_id__$5 = "data-v-66c5cdf2";
|
|
3670
|
+
/* module identifier */
|
|
3671
|
+
const __vue_module_identifier__$5 = undefined;
|
|
3672
|
+
/* functional template */
|
|
3673
|
+
const __vue_is_functional_template__$5 = false;
|
|
3674
|
+
/* style inject SSR */
|
|
3675
|
+
|
|
3676
|
+
/* style inject shadow dom */
|
|
3677
|
+
|
|
3678
|
+
|
|
3679
|
+
|
|
3680
|
+
const __vue_component__$5 = /*#__PURE__*/normalizeComponent(
|
|
3681
|
+
{ render: __vue_render__$5, staticRenderFns: __vue_staticRenderFns__$5 },
|
|
3682
|
+
__vue_inject_styles__$5,
|
|
3683
|
+
__vue_script__$5,
|
|
3684
|
+
__vue_scope_id__$5,
|
|
3685
|
+
__vue_is_functional_template__$5,
|
|
3686
|
+
__vue_module_identifier__$5,
|
|
3687
|
+
false,
|
|
3688
|
+
createInjector,
|
|
3689
|
+
undefined,
|
|
3690
|
+
undefined
|
|
3691
|
+
);
|
|
3692
|
+
|
|
3693
|
+
//
|
|
3694
|
+
var script$4 = {
|
|
3695
|
+
name: 'ele-form',
|
|
3696
|
+
components: {
|
|
3697
|
+
EleSelect: __vue_component__$k,
|
|
3698
|
+
EleInput: __vue_component__$l,
|
|
3699
|
+
EleTextarea: __vue_component__$b,
|
|
3700
|
+
EleUpload: __vue_component__$9,
|
|
3701
|
+
EleSelectEntity: __vue_component__$8,
|
|
3702
|
+
EleInputNumber: __vue_component__$7,
|
|
3703
|
+
EleCheckbox: __vue_component__$6,
|
|
3704
|
+
EleRadio: __vue_component__$5
|
|
3705
|
+
},
|
|
3706
|
+
props: {
|
|
3707
|
+
elements: {
|
|
3708
|
+
type: Array,
|
|
3709
|
+
default: () => []
|
|
3710
|
+
}
|
|
3711
|
+
},
|
|
3712
|
+
data() {
|
|
3713
|
+
return {
|
|
3714
|
+
some: '1',
|
|
3715
|
+
form: this.$form.createForm(this, {
|
|
3716
|
+
name: 'coordinated'
|
|
3717
|
+
})
|
|
3718
|
+
};
|
|
3719
|
+
},
|
|
3720
|
+
methods: {
|
|
3721
|
+
onChangeTextarea(value, props) {
|
|
3722
|
+
this.setFieldsValue({
|
|
3723
|
+
[props.name]: value
|
|
3724
|
+
});
|
|
3725
|
+
},
|
|
3726
|
+
validateFields() {
|
|
3727
|
+
let ret = false;
|
|
3728
|
+
this.form.validateFields((error, values) => {
|
|
3729
|
+
ret = !error;
|
|
3730
|
+
});
|
|
3731
|
+
return ret;
|
|
3732
|
+
},
|
|
3733
|
+
setFieldsValue(props = {}) {
|
|
3734
|
+
this.form.setFieldsValue(props);
|
|
3735
|
+
},
|
|
3736
|
+
getFieldsValue() {
|
|
3737
|
+
return this.form.getFieldsValue();
|
|
3738
|
+
}
|
|
3739
|
+
}
|
|
3740
|
+
};
|
|
3741
|
+
|
|
3742
|
+
/* script */
|
|
3743
|
+
const __vue_script__$4 = script$4;
|
|
3744
|
+
|
|
3745
|
+
/* template */
|
|
3746
|
+
var __vue_render__$4 = function () {
|
|
3747
|
+
var _vm = this;
|
|
3748
|
+
var _h = _vm.$createElement;
|
|
3749
|
+
var _c = _vm._self._c || _h;
|
|
3750
|
+
return _c(
|
|
3751
|
+
"div",
|
|
3752
|
+
{ staticClass: "ele__form--wrapper" },
|
|
3753
|
+
[
|
|
3754
|
+
_c(
|
|
3755
|
+
"a-form",
|
|
3756
|
+
{
|
|
3757
|
+
staticClass: "ant-advanced-search-form",
|
|
3758
|
+
attrs: { form: _vm.form, layout: "vertical" },
|
|
3759
|
+
},
|
|
3760
|
+
[
|
|
3761
|
+
_c(
|
|
3762
|
+
"a-row",
|
|
3763
|
+
{ attrs: { gutter: 24 } },
|
|
3764
|
+
_vm._l(_vm.elements, function (ele) {
|
|
3765
|
+
return _c(
|
|
3766
|
+
"a-col",
|
|
3767
|
+
{ key: ele.name, attrs: { span: ele.span } },
|
|
3768
|
+
[
|
|
3769
|
+
ele.type == "Input"
|
|
3770
|
+
? [
|
|
3771
|
+
_c(
|
|
3772
|
+
"a-form-item",
|
|
3773
|
+
{ attrs: { label: ele.label + ":" } },
|
|
3774
|
+
[
|
|
3775
|
+
_c("ele-input", {
|
|
3776
|
+
directives: [
|
|
3777
|
+
{
|
|
3778
|
+
name: "decorator",
|
|
3779
|
+
rawName: "v-decorator",
|
|
3780
|
+
value: [ele.name, { rules: ele.rules }],
|
|
3781
|
+
expression:
|
|
3782
|
+
"[ele.name, { rules: ele.rules }]",
|
|
3783
|
+
},
|
|
3784
|
+
],
|
|
3785
|
+
staticStyle: { width: "100%" },
|
|
3786
|
+
attrs: { "max-length": ele.maxLength },
|
|
3787
|
+
}),
|
|
3788
|
+
],
|
|
3789
|
+
1
|
|
3790
|
+
),
|
|
3791
|
+
]
|
|
3792
|
+
: ele.type == "Textarea"
|
|
3793
|
+
? [
|
|
3794
|
+
_c(
|
|
3795
|
+
"a-form-item",
|
|
3796
|
+
{ attrs: { label: ele.label + ":" } },
|
|
3797
|
+
[
|
|
3798
|
+
_c("ele-textarea", {
|
|
3799
|
+
directives: [
|
|
3800
|
+
{
|
|
3801
|
+
name: "decorator",
|
|
3802
|
+
rawName: "v-decorator",
|
|
3803
|
+
value: [ele.name, { rules: ele.rules }],
|
|
3804
|
+
expression:
|
|
3805
|
+
"[ele.name, { rules: ele.rules }]",
|
|
3806
|
+
},
|
|
3807
|
+
],
|
|
3808
|
+
staticStyle: { width: "100%" },
|
|
3809
|
+
attrs: {
|
|
3810
|
+
"max-length": ele.maxLength,
|
|
3811
|
+
autosize: ele.autosize,
|
|
3812
|
+
"allow-clear": ele.allowClear,
|
|
3813
|
+
placeholder: ele.placeholder,
|
|
3814
|
+
},
|
|
3815
|
+
on: {
|
|
3816
|
+
"on-change": function ($event) {
|
|
3817
|
+
return _vm.onChangeTextarea($event, ele)
|
|
3818
|
+
},
|
|
3819
|
+
},
|
|
3820
|
+
}),
|
|
3821
|
+
],
|
|
3822
|
+
1
|
|
3823
|
+
),
|
|
3824
|
+
]
|
|
3825
|
+
: ele.type == "Select"
|
|
3826
|
+
? [
|
|
3827
|
+
_c(
|
|
3828
|
+
"a-form-item",
|
|
3829
|
+
{ attrs: { label: ele.label + ":" } },
|
|
3830
|
+
[
|
|
3831
|
+
_c("ele-select", {
|
|
3832
|
+
directives: [
|
|
3833
|
+
{
|
|
3834
|
+
name: "decorator",
|
|
3835
|
+
rawName: "v-decorator",
|
|
3836
|
+
value: [ele.name, { rules: ele.rules }],
|
|
3837
|
+
expression:
|
|
3838
|
+
"[ele.name, { rules: ele.rules }]",
|
|
3839
|
+
},
|
|
3840
|
+
],
|
|
3841
|
+
staticStyle: { width: "100%" },
|
|
3842
|
+
attrs: { "data-source": ele.optionList },
|
|
3843
|
+
}),
|
|
3844
|
+
],
|
|
3845
|
+
1
|
|
3846
|
+
),
|
|
3847
|
+
]
|
|
3848
|
+
: ele.type == "ele-upload"
|
|
3849
|
+
? [
|
|
3850
|
+
_c(
|
|
3851
|
+
"a-form-item",
|
|
3852
|
+
{ attrs: { label: ele.label + ":" } },
|
|
3853
|
+
[
|
|
3854
|
+
_c("ele-upload", {
|
|
3855
|
+
directives: [
|
|
3856
|
+
{
|
|
3857
|
+
name: "decorator",
|
|
3858
|
+
rawName: "v-decorator",
|
|
3859
|
+
value: [ele.name, { rules: ele.rules }],
|
|
3860
|
+
expression:
|
|
3861
|
+
"[ele.name, { rules: ele.rules }]",
|
|
3862
|
+
},
|
|
3863
|
+
],
|
|
3864
|
+
staticStyle: { width: "100%" },
|
|
3865
|
+
}),
|
|
3866
|
+
],
|
|
3867
|
+
1
|
|
3868
|
+
),
|
|
3869
|
+
]
|
|
3870
|
+
: ele.type == "SelectEntity"
|
|
3871
|
+
? [
|
|
3872
|
+
_c(
|
|
3873
|
+
"a-form-item",
|
|
3874
|
+
{ attrs: { label: ele.label + ":" } },
|
|
3875
|
+
[
|
|
3876
|
+
_c("ele-select-entity", {
|
|
3877
|
+
directives: [
|
|
3878
|
+
{
|
|
3879
|
+
name: "decorator",
|
|
3880
|
+
rawName: "v-decorator",
|
|
3881
|
+
value: [ele.name, { rules: ele.rules }],
|
|
3882
|
+
expression:
|
|
3883
|
+
"[ele.name, { rules: ele.rules }]",
|
|
3884
|
+
},
|
|
3885
|
+
],
|
|
3886
|
+
staticStyle: { width: "100%" },
|
|
3887
|
+
}),
|
|
3888
|
+
],
|
|
3889
|
+
1
|
|
3890
|
+
),
|
|
3891
|
+
]
|
|
3892
|
+
: ele.type == "InputNumber"
|
|
3893
|
+
? [
|
|
3894
|
+
_c(
|
|
3895
|
+
"a-form-item",
|
|
3896
|
+
{ attrs: { label: ele.label + ":" } },
|
|
3897
|
+
[
|
|
3898
|
+
_c(
|
|
3899
|
+
"ele-input-number",
|
|
3900
|
+
_vm._b(
|
|
3901
|
+
{
|
|
3902
|
+
directives: [
|
|
3903
|
+
{
|
|
3904
|
+
name: "decorator",
|
|
3905
|
+
rawName: "v-decorator",
|
|
3906
|
+
value: [ele.name, { rules: ele.rules }],
|
|
3907
|
+
expression:
|
|
3908
|
+
"[ele.name, { rules: ele.rules }]",
|
|
3909
|
+
},
|
|
3910
|
+
],
|
|
3911
|
+
staticStyle: { width: "100%" },
|
|
3912
|
+
attrs: { precision: ele.precision },
|
|
3913
|
+
},
|
|
3914
|
+
"ele-input-number",
|
|
3915
|
+
ele.props,
|
|
3916
|
+
false
|
|
3917
|
+
)
|
|
3918
|
+
),
|
|
3919
|
+
],
|
|
3920
|
+
1
|
|
3921
|
+
),
|
|
3922
|
+
]
|
|
3923
|
+
: ele.type == "Checkbox"
|
|
3924
|
+
? [
|
|
3925
|
+
_c(
|
|
3926
|
+
"a-form-item",
|
|
3927
|
+
{ attrs: { label: ele.label + ":" } },
|
|
3928
|
+
[
|
|
3929
|
+
_c("ele-checkbox", {
|
|
3930
|
+
directives: [
|
|
3931
|
+
{
|
|
3932
|
+
name: "decorator",
|
|
3933
|
+
rawName: "v-decorator",
|
|
3934
|
+
value: [ele.name, { rules: ele.rules }],
|
|
3935
|
+
expression:
|
|
3936
|
+
"[ele.name, { rules: ele.rules }]",
|
|
3937
|
+
},
|
|
3938
|
+
],
|
|
3939
|
+
staticStyle: { width: "100%" },
|
|
3940
|
+
attrs: { "data-source": ele.optionList },
|
|
3941
|
+
}),
|
|
3942
|
+
],
|
|
3943
|
+
1
|
|
3944
|
+
),
|
|
3945
|
+
]
|
|
3946
|
+
: ele.type == "Radio"
|
|
3947
|
+
? [
|
|
3948
|
+
_c(
|
|
3949
|
+
"a-form-item",
|
|
3950
|
+
{ attrs: { label: ele.label + ":" } },
|
|
3951
|
+
[
|
|
3952
|
+
_c("ele-radio", {
|
|
3953
|
+
directives: [
|
|
3954
|
+
{
|
|
3955
|
+
name: "decorator",
|
|
3956
|
+
rawName: "v-decorator",
|
|
3957
|
+
value: [ele.name, { rules: ele.rules }],
|
|
3958
|
+
expression:
|
|
3959
|
+
"[ele.name, { rules: ele.rules }]",
|
|
3960
|
+
},
|
|
3961
|
+
],
|
|
3962
|
+
staticStyle: { width: "100%" },
|
|
3963
|
+
attrs: { "data-source": ele.optionList },
|
|
3964
|
+
}),
|
|
3965
|
+
],
|
|
3966
|
+
1
|
|
3967
|
+
),
|
|
3968
|
+
]
|
|
3969
|
+
: _vm._e(),
|
|
3970
|
+
],
|
|
3971
|
+
2
|
|
3972
|
+
)
|
|
3973
|
+
}),
|
|
3974
|
+
1
|
|
3975
|
+
),
|
|
3976
|
+
],
|
|
3977
|
+
1
|
|
3978
|
+
),
|
|
3979
|
+
],
|
|
3980
|
+
1
|
|
3981
|
+
)
|
|
3982
|
+
};
|
|
3983
|
+
var __vue_staticRenderFns__$4 = [];
|
|
3984
|
+
__vue_render__$4._withStripped = true;
|
|
3985
|
+
|
|
3986
|
+
/* style */
|
|
3987
|
+
const __vue_inject_styles__$4 = function (inject) {
|
|
3988
|
+
if (!inject) return
|
|
3989
|
+
inject("data-v-e06c4e7c_0", { source: "\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["index.vue"],"names":[],"mappings":";;AAEA,oCAAoC","file":"index.vue","sourcesContent":["\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
3990
|
+
|
|
3991
|
+
};
|
|
3992
|
+
/* scoped */
|
|
3993
|
+
const __vue_scope_id__$4 = "data-v-e06c4e7c";
|
|
3994
|
+
/* module identifier */
|
|
3995
|
+
const __vue_module_identifier__$4 = undefined;
|
|
3996
|
+
/* functional template */
|
|
3997
|
+
const __vue_is_functional_template__$4 = false;
|
|
3998
|
+
/* style inject SSR */
|
|
3999
|
+
|
|
4000
|
+
/* style inject shadow dom */
|
|
4001
|
+
|
|
4002
|
+
|
|
4003
|
+
|
|
4004
|
+
const __vue_component__$4 = /*#__PURE__*/normalizeComponent(
|
|
4005
|
+
{ render: __vue_render__$4, staticRenderFns: __vue_staticRenderFns__$4 },
|
|
4006
|
+
__vue_inject_styles__$4,
|
|
4007
|
+
__vue_script__$4,
|
|
4008
|
+
__vue_scope_id__$4,
|
|
4009
|
+
__vue_is_functional_template__$4,
|
|
4010
|
+
__vue_module_identifier__$4,
|
|
4011
|
+
false,
|
|
4012
|
+
createInjector,
|
|
4013
|
+
undefined,
|
|
4014
|
+
undefined
|
|
4015
|
+
);
|
|
4016
|
+
|
|
4017
|
+
__vue_component__$4.install = Vue => Vue.component(__vue_component__$4.name, __vue_component__$4);
|
|
4018
|
+
|
|
4019
|
+
//
|
|
4020
|
+
//
|
|
4021
|
+
//
|
|
4022
|
+
//
|
|
4023
|
+
//
|
|
4024
|
+
//
|
|
4025
|
+
|
|
4026
|
+
var script$3 = {
|
|
4027
|
+
name: 'g-text'
|
|
4028
|
+
};
|
|
4029
|
+
|
|
4030
|
+
/* script */
|
|
4031
|
+
const __vue_script__$3 = script$3;
|
|
4032
|
+
|
|
4033
|
+
/* template */
|
|
4034
|
+
var __vue_render__$3 = function () {
|
|
4035
|
+
var _vm = this;
|
|
4036
|
+
var _h = _vm.$createElement;
|
|
4037
|
+
var _c = _vm._self._c || _h;
|
|
4038
|
+
return _c("div", [_vm._v("\n text\n")])
|
|
4039
|
+
};
|
|
4040
|
+
var __vue_staticRenderFns__$3 = [];
|
|
4041
|
+
__vue_render__$3._withStripped = true;
|
|
4042
|
+
|
|
4043
|
+
/* style */
|
|
4044
|
+
const __vue_inject_styles__$3 = function (inject) {
|
|
4045
|
+
if (!inject) return
|
|
4046
|
+
inject("data-v-d41a0ce6_0", { source: "\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 });
|
|
4047
|
+
|
|
4048
|
+
};
|
|
4049
|
+
/* scoped */
|
|
4050
|
+
const __vue_scope_id__$3 = "data-v-d41a0ce6";
|
|
4051
|
+
/* module identifier */
|
|
4052
|
+
const __vue_module_identifier__$3 = undefined;
|
|
4053
|
+
/* functional template */
|
|
4054
|
+
const __vue_is_functional_template__$3 = false;
|
|
4055
|
+
/* style inject SSR */
|
|
4056
|
+
|
|
4057
|
+
/* style inject shadow dom */
|
|
4058
|
+
|
|
4059
|
+
|
|
4060
|
+
|
|
4061
|
+
const __vue_component__$3 = /*#__PURE__*/normalizeComponent(
|
|
4062
|
+
{ render: __vue_render__$3, staticRenderFns: __vue_staticRenderFns__$3 },
|
|
4063
|
+
__vue_inject_styles__$3,
|
|
4064
|
+
__vue_script__$3,
|
|
4065
|
+
__vue_scope_id__$3,
|
|
4066
|
+
__vue_is_functional_template__$3,
|
|
4067
|
+
__vue_module_identifier__$3,
|
|
4068
|
+
false,
|
|
4069
|
+
createInjector,
|
|
4070
|
+
undefined,
|
|
4071
|
+
undefined
|
|
4072
|
+
);
|
|
4073
|
+
|
|
4074
|
+
__vue_component__$3.install = Vue => Vue.component(__vue_component__$3.name, __vue_component__$3);
|
|
4075
|
+
|
|
4076
|
+
__vue_component__$9.install = Vue => Vue.component(__vue_component__$9.name, __vue_component__$9);
|
|
4077
|
+
|
|
4078
|
+
__vue_component__$8.install = Vue => Vue.component(__vue_component__$8.name, __vue_component__$8);
|
|
4079
|
+
|
|
4080
|
+
__vue_component__$a.install = Vue => Vue.component(__vue_component__$a.name, __vue_component__$a);
|
|
4081
|
+
|
|
4082
|
+
__vue_component__$7.install = Vue => Vue.component(__vue_component__$7.name, __vue_component__$7);
|
|
4083
|
+
|
|
4084
|
+
//
|
|
4085
|
+
//
|
|
4086
|
+
//
|
|
4087
|
+
//
|
|
4088
|
+
//
|
|
4089
|
+
//
|
|
4090
|
+
//
|
|
4091
|
+
//
|
|
4092
|
+
//
|
|
4093
|
+
//
|
|
4094
|
+
//
|
|
4095
|
+
//
|
|
4096
|
+
//
|
|
4097
|
+
//
|
|
4098
|
+
//
|
|
4099
|
+
//
|
|
4100
|
+
//
|
|
4101
|
+
//
|
|
4102
|
+
//
|
|
4103
|
+
//
|
|
4104
|
+
//
|
|
4105
|
+
//
|
|
4106
|
+
|
|
4107
|
+
var script$2 = {
|
|
4108
|
+
name: 'ele-modal',
|
|
4109
|
+
props: {
|
|
4110
|
+
value: {
|
|
4111
|
+
type: Boolean,
|
|
4112
|
+
default: false
|
|
4113
|
+
},
|
|
4114
|
+
title: {
|
|
4115
|
+
type: String,
|
|
4116
|
+
default: '标题'
|
|
4117
|
+
},
|
|
4118
|
+
cancelText: {
|
|
4119
|
+
type: String,
|
|
4120
|
+
default: '关闭'
|
|
4121
|
+
},
|
|
4122
|
+
okText: {
|
|
4123
|
+
type: String,
|
|
4124
|
+
default: '确定'
|
|
4125
|
+
},
|
|
4126
|
+
size: {
|
|
4127
|
+
type: String,
|
|
4128
|
+
default: 'small'
|
|
4129
|
+
},
|
|
4130
|
+
map: {
|
|
4131
|
+
type: Object,
|
|
4132
|
+
default() {
|
|
4133
|
+
return {};
|
|
4134
|
+
}
|
|
4135
|
+
},
|
|
4136
|
+
closable: {
|
|
4137
|
+
type: Boolean,
|
|
4138
|
+
default: true
|
|
4139
|
+
},
|
|
4140
|
+
maskClosable: {
|
|
4141
|
+
type: Boolean,
|
|
4142
|
+
default: false
|
|
4143
|
+
},
|
|
4144
|
+
showFooter: {
|
|
4145
|
+
type: Boolean,
|
|
4146
|
+
default: true
|
|
4147
|
+
},
|
|
4148
|
+
footer: {
|
|
4149
|
+
type: Function,
|
|
4150
|
+
default: null
|
|
4151
|
+
},
|
|
4152
|
+
onlyClose: {
|
|
4153
|
+
type: Boolean,
|
|
4154
|
+
default: false
|
|
4155
|
+
}
|
|
4156
|
+
},
|
|
4157
|
+
watch: {
|
|
4158
|
+
value(newVal) {
|
|
4159
|
+
this.$nextTick(() => {
|
|
4160
|
+
this.showModal = newVal;
|
|
4161
|
+
});
|
|
4162
|
+
}
|
|
4163
|
+
},
|
|
4164
|
+
computed: {
|
|
4165
|
+
width() {
|
|
4166
|
+
return this.map[this.size];
|
|
4167
|
+
},
|
|
4168
|
+
maxheight() {
|
|
4169
|
+
return `calc(100vh - ${this.upDownDistance[this.size] * 2 + (this.title ? 55 : 0) + (this.showFooter ? 53 : 0)}px`;
|
|
4170
|
+
}
|
|
4171
|
+
},
|
|
4172
|
+
data() {
|
|
4173
|
+
return {
|
|
4174
|
+
showModal: false
|
|
4175
|
+
};
|
|
4176
|
+
},
|
|
4177
|
+
created() {
|
|
4178
|
+
let defaultMap = {
|
|
4179
|
+
small: 480,
|
|
4180
|
+
middle: 768,
|
|
4181
|
+
big: 1200
|
|
4182
|
+
};
|
|
4183
|
+
this.upDownDistance = {
|
|
4184
|
+
small: 80,
|
|
4185
|
+
middle: 80,
|
|
4186
|
+
big: 40
|
|
4187
|
+
};
|
|
4188
|
+
this.map = Object.assign(this.map, defaultMap);
|
|
4189
|
+
},
|
|
4190
|
+
methods: {
|
|
4191
|
+
openModal() {
|
|
4192
|
+
this.showModal = true;
|
|
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');
|
|
4209
|
+
}
|
|
4210
|
+
}
|
|
4211
|
+
};
|
|
4212
|
+
|
|
4213
|
+
/* script */
|
|
4214
|
+
const __vue_script__$2 = script$2;
|
|
4215
|
+
|
|
4216
|
+
/* template */
|
|
4217
|
+
var __vue_render__$2 = function () {
|
|
4218
|
+
var _vm = this;
|
|
4219
|
+
var _h = _vm.$createElement;
|
|
4220
|
+
var _c = _vm._self._c || _h;
|
|
4221
|
+
return _c(
|
|
4222
|
+
"a-modal",
|
|
4223
|
+
{
|
|
4224
|
+
attrs: {
|
|
4225
|
+
title: _vm.title,
|
|
4226
|
+
cancelText: _vm.cancelText,
|
|
4227
|
+
okText: _vm.okText,
|
|
4228
|
+
closable: _vm.closable,
|
|
4229
|
+
width: _vm.width,
|
|
4230
|
+
keyboard: false,
|
|
4231
|
+
maskClosable: _vm.maskClosable,
|
|
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;
|
|
4241
|
+
},
|
|
4242
|
+
expression: "showModal",
|
|
4243
|
+
},
|
|
4244
|
+
},
|
|
4245
|
+
[
|
|
4246
|
+
_vm._t("default"),
|
|
4247
|
+
_vm._v(" "),
|
|
4248
|
+
_c("template", { slot: "footer" }, [_vm._t("footer")], 2),
|
|
4249
|
+
],
|
|
4250
|
+
2
|
|
4251
|
+
)
|
|
4252
|
+
};
|
|
4253
|
+
var __vue_staticRenderFns__$2 = [];
|
|
4254
|
+
__vue_render__$2._withStripped = true;
|
|
4255
|
+
|
|
4256
|
+
/* style */
|
|
4257
|
+
const __vue_inject_styles__$2 = undefined;
|
|
4258
|
+
/* scoped */
|
|
4259
|
+
const __vue_scope_id__$2 = undefined;
|
|
4260
|
+
/* module identifier */
|
|
4261
|
+
const __vue_module_identifier__$2 = undefined;
|
|
4262
|
+
/* functional template */
|
|
4263
|
+
const __vue_is_functional_template__$2 = false;
|
|
4264
|
+
/* style inject */
|
|
4265
|
+
|
|
4266
|
+
/* style inject SSR */
|
|
4267
|
+
|
|
4268
|
+
/* style inject shadow dom */
|
|
4269
|
+
|
|
4270
|
+
|
|
4271
|
+
|
|
4272
|
+
const __vue_component__$2 = /*#__PURE__*/normalizeComponent(
|
|
4273
|
+
{ render: __vue_render__$2, staticRenderFns: __vue_staticRenderFns__$2 },
|
|
4274
|
+
__vue_inject_styles__$2,
|
|
4275
|
+
__vue_script__$2,
|
|
4276
|
+
__vue_scope_id__$2,
|
|
4277
|
+
__vue_is_functional_template__$2,
|
|
4278
|
+
__vue_module_identifier__$2,
|
|
4279
|
+
false,
|
|
4280
|
+
undefined,
|
|
4281
|
+
undefined,
|
|
4282
|
+
undefined
|
|
4283
|
+
);
|
|
4284
|
+
|
|
4285
|
+
__vue_component__$2.install = Vue => Vue.component(__vue_component__$2.name, __vue_component__$2);
|
|
4286
|
+
|
|
4287
|
+
__vue_component__$6.install = Vue => Vue.component(__vue_component__$6.name, __vue_component__$6);
|
|
4288
|
+
|
|
4289
|
+
__vue_component__$5.install = Vue => Vue.component(__vue_component__$5.name, __vue_component__$5);
|
|
4290
|
+
|
|
4291
|
+
//
|
|
4292
|
+
//
|
|
4293
|
+
//
|
|
4294
|
+
//
|
|
4295
|
+
//
|
|
4296
|
+
//
|
|
4297
|
+
|
|
4298
|
+
var script$1 = {
|
|
4299
|
+
name: 'ele-batch-export'
|
|
4300
|
+
};
|
|
4301
|
+
|
|
4302
|
+
/* script */
|
|
4303
|
+
const __vue_script__$1 = script$1;
|
|
4304
|
+
|
|
4305
|
+
/* template */
|
|
4306
|
+
var __vue_render__$1 = function () {
|
|
4307
|
+
var _vm = this;
|
|
4308
|
+
var _h = _vm.$createElement;
|
|
4309
|
+
var _c = _vm._self._c || _h;
|
|
4310
|
+
return _c("div", [_vm._v("\n export\n")])
|
|
4311
|
+
};
|
|
4312
|
+
var __vue_staticRenderFns__$1 = [];
|
|
4313
|
+
__vue_render__$1._withStripped = true;
|
|
4314
|
+
|
|
4315
|
+
/* style */
|
|
4316
|
+
const __vue_inject_styles__$1 = function (inject) {
|
|
4317
|
+
if (!inject) return
|
|
4318
|
+
inject("data-v-4ed65b1c_0", { source: "\n\n/*# sourceMappingURL=index.vue.map */", map: {"version":3,"sources":["index.vue"],"names":[],"mappings":";;AAEA,oCAAoC","file":"index.vue"}, media: undefined });
|
|
4319
|
+
|
|
4320
|
+
};
|
|
4321
|
+
/* scoped */
|
|
4322
|
+
const __vue_scope_id__$1 = "data-v-4ed65b1c";
|
|
4323
|
+
/* module identifier */
|
|
4324
|
+
const __vue_module_identifier__$1 = undefined;
|
|
4325
|
+
/* functional template */
|
|
4326
|
+
const __vue_is_functional_template__$1 = false;
|
|
4327
|
+
/* style inject SSR */
|
|
4328
|
+
|
|
4329
|
+
/* style inject shadow dom */
|
|
4330
|
+
|
|
4331
|
+
|
|
4332
|
+
|
|
4333
|
+
const __vue_component__$1 = /*#__PURE__*/normalizeComponent(
|
|
4334
|
+
{ render: __vue_render__$1, staticRenderFns: __vue_staticRenderFns__$1 },
|
|
4335
|
+
__vue_inject_styles__$1,
|
|
4336
|
+
__vue_script__$1,
|
|
4337
|
+
__vue_scope_id__$1,
|
|
4338
|
+
__vue_is_functional_template__$1,
|
|
4339
|
+
__vue_module_identifier__$1,
|
|
4340
|
+
false,
|
|
4341
|
+
createInjector,
|
|
4342
|
+
undefined,
|
|
4343
|
+
undefined
|
|
4344
|
+
);
|
|
4345
|
+
|
|
4346
|
+
__vue_component__$1.install = Vue => Vue.component(__vue_component__$1.name, __vue_component__$1);
|
|
4347
|
+
|
|
4348
|
+
__vue_component__$e.install = Vue => Vue.component(__vue_component__$e.name, __vue_component__$e);
|
|
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);
|
|
4353
|
+
|
|
4354
|
+
const BUILT_IN_EVENT_NAMES = {
|
|
4355
|
+
SUBMIT: 'submit',
|
|
4356
|
+
CANCEL: 'cancel'
|
|
4357
|
+
};
|
|
4358
|
+
|
|
4359
|
+
//
|
|
4360
|
+
var script = {
|
|
4361
|
+
name: 'ele-form-model',
|
|
4362
|
+
components: {
|
|
4363
|
+
EleButtonGroup: __vue_component__$e
|
|
4364
|
+
},
|
|
4365
|
+
props: {
|
|
4366
|
+
title: {
|
|
4367
|
+
type: String
|
|
4368
|
+
},
|
|
4369
|
+
formMeta: {
|
|
4370
|
+
type: Object
|
|
4371
|
+
},
|
|
4372
|
+
footerMeta: {
|
|
4373
|
+
type: Object
|
|
4374
|
+
}
|
|
4375
|
+
},
|
|
4376
|
+
data() {
|
|
4377
|
+
return {};
|
|
4378
|
+
},
|
|
4379
|
+
computed: {
|
|
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();
|
|
4465
|
+
}
|
|
4466
|
+
};
|
|
4467
|
+
|
|
4468
|
+
/* script */
|
|
4469
|
+
const __vue_script__ = script;
|
|
4470
|
+
|
|
4471
|
+
/* template */
|
|
4472
|
+
var __vue_render__ = function () {
|
|
4473
|
+
var _vm = this;
|
|
4474
|
+
var _h = _vm.$createElement;
|
|
4475
|
+
var _c = _vm._self._c || _h;
|
|
4476
|
+
return _c("div", { staticClass: "form__model--wrapper" }, [
|
|
4477
|
+
_c("div", { staticClass: "form-model__title" }, [
|
|
4478
|
+
_vm._v("\n " + _vm._s(_vm.title) + "\n "),
|
|
4479
|
+
]),
|
|
4480
|
+
_vm._v(" "),
|
|
4481
|
+
_c(
|
|
4482
|
+
"div",
|
|
4483
|
+
{ staticClass: "form-model__content" },
|
|
4484
|
+
[_c("ele-form", { ref: _vm.formRef, attrs: { elements: _vm.elements } })],
|
|
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
|
+
])
|
|
4503
|
+
};
|
|
4504
|
+
var __vue_staticRenderFns__ = [];
|
|
4505
|
+
__vue_render__._withStripped = true;
|
|
4506
|
+
|
|
4507
|
+
/* style */
|
|
4508
|
+
const __vue_inject_styles__ = function (inject) {
|
|
4509
|
+
if (!inject) return
|
|
4510
|
+
inject("data-v-4815b8c0_0", { source: ".form__model--wrapper[data-v-4815b8c0] {\n width: 100%;\n height: 100%;\n overflow: auto;\n}\n.form__model--wrapper .form-model__title[data-v-4815b8c0] {\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-4815b8c0] {\n padding: 16px;\n}\n.form__model--wrapper .form-model__footer[data-v-4815b8c0] {\n width: 100%;\n height: 64px;\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":["E:\\work\\code\\ganjiao\\ganjian-monorepo\\packages\\components\\packages\\form-model\\src\\index.vue","index.vue"],"names":[],"mappings":"AAgHA;EACA,WAAA;EACA,YAAA;EACA,cAAA;AC/GA;ADgHA;EACA,YAAA;EACA,eAAA;EACA,aAAA;EACA,mBAAA;EACA,mBAAA;EACA,8DAAA;AC9GA;ADgHA;EACA,aAAA;AC9GA;ADgHA;EACA,WAAA;EACA,YAAA;EACA,eAAA;EACA,SAAA;EACA,aAAA;EACA,mBAAA;EACA,mBAAA;EACA,oBAAA;AC9GA;;AAEA,oCAAoC","file":"index.vue","sourcesContent":["<template>\r\n <div class=\"form__model--wrapper\">\r\n <div class=\"form-model__title\">\r\n {{ title }}\r\n </div>\r\n <div class=\"form-model__content\">\r\n <ele-form :ref=\"formRef\" :elements=\"elements\"></ele-form>\r\n </div>\r\n <div class=\"form-model__footer\">\r\n <ele-button-group v-on=\"assignAttrForEvents\" :data-source=\"footerElements\"></ele-button-group>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport EleButtonGroup from '../../composite-components/button-group/src/index.vue'\r\nimport { BUILT_IN_EVENT_NAMES } from '../../utils'\r\nimport { v4 as uuidv4 } from 'uuid'\r\nimport { net } from '@idooel/shared'\r\nexport default {\r\n name: 'ele-form-model',\r\n components: {\r\n EleButtonGroup\r\n },\r\n props: {\r\n title: {\r\n type: String\r\n },\r\n formMeta: {\r\n type: Object\r\n },\r\n footerMeta: {\r\n type: Object\r\n }\r\n },\r\n data() {\r\n return {}\r\n },\r\n computed: {\r\n formRef () {\r\n return uuidv4()\r\n },\r\n assignAttrForEvents () {\r\n const events = this.footerElements.reduce((ret, ele) => {\r\n ret[ele.eventName] = (e) => {\r\n this.$emit(ele.eventName || 'click', { ...e, formModel: this.formModels })\r\n }\r\n return ret\r\n }, {})\r\n return {\r\n ...this.$listeners,\r\n ...events,\r\n [BUILT_IN_EVENT_NAMES.SUBMIT]: this[BUILT_IN_EVENT_NAMES.SUBMIT],\r\n [BUILT_IN_EVENT_NAMES.CANCEL]: this[BUILT_IN_EVENT_NAMES.CANCEL]\r\n }\r\n },\r\n elements () {\r\n const { elements } = this.formMeta\r\n return elements\r\n },\r\n preRequest () {\r\n const { preRequest } = this.formMeta\r\n return preRequest\r\n },\r\n infoRequest () {\r\n const { infoRequest } = this.formMeta\r\n return infoRequest\r\n },\r\n submitRequest () {\r\n const { submitRequest } = this.formMeta\r\n return submitRequest\r\n },\r\n footerElements () {\r\n const { elements } = this.footerMeta\r\n return elements.call(this)\r\n },\r\n formModels () {\r\n return this.$refs[this.formRef].getFieldsValue()\r\n }\r\n },\r\n methods: {\r\n async submitRequestTrigger () {},\r\n async infoRequestTrigger () {},\r\n async preRequestTrigger () {\r\n const { url, requestType = 'GET', fieldMap = {} } = this.preRequest\r\n if (!url) return\r\n await net[requestType.toLowerCase()](url, {})\r\n },\r\n setValueForField (props) {\r\n this.$refs[this.formRef].setFieldsValue(props)\r\n },\r\n [BUILT_IN_EVENT_NAMES.SUBMIT] (props) {\r\n const status = this.$refs[this.formRef].validateFields()\r\n console.log('status', status)\r\n if (status) {\r\n console.log('status', this.formModels)\r\n } else {\r\n console.log('error')\r\n }\r\n },\r\n [BUILT_IN_EVENT_NAMES.CANCEL] (props) {\r\n console.log('inner CANCEL', props)\r\n }\r\n },\r\n async mounted() {\r\n await this.preRequestTrigger()\r\n await this.infoRequestTrigger()\r\n }\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.form__model--wrapper {\r\n width: 100%;\r\n height: 100%;\r\n overflow: auto;\r\n .form-model__title {\r\n height: 56px;\r\n padding: 0 16px;\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n border-bottom: 1px solid var(--idooel-form-title-border-color);\r\n }\r\n .form-model__content {\r\n padding: 16px;\r\n }\r\n .form-model__footer {\r\n width: 100%;\r\n height: 64px;\r\n position: fixed;\r\n bottom: 0;\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n justify-content: end;\r\n }\r\n}\r\n</style>",".form__model--wrapper {\n width: 100%;\n height: 100%;\n overflow: auto;\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 flex-direction: row;\n align-items: center;\n justify-content: end;\n}\n\n/*# sourceMappingURL=index.vue.map */"]}, media: undefined });
|
|
4511
|
+
|
|
4512
|
+
};
|
|
4513
|
+
/* scoped */
|
|
4514
|
+
const __vue_scope_id__ = "data-v-4815b8c0";
|
|
4515
|
+
/* module identifier */
|
|
4516
|
+
const __vue_module_identifier__ = undefined;
|
|
4517
|
+
/* functional template */
|
|
4518
|
+
const __vue_is_functional_template__ = false;
|
|
4519
|
+
/* style inject SSR */
|
|
4520
|
+
|
|
4521
|
+
/* style inject shadow dom */
|
|
4522
|
+
|
|
4523
|
+
|
|
4524
|
+
|
|
4525
|
+
const __vue_component__ = /*#__PURE__*/normalizeComponent(
|
|
4526
|
+
{ render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },
|
|
4527
|
+
__vue_inject_styles__,
|
|
4528
|
+
__vue_script__,
|
|
4529
|
+
__vue_scope_id__,
|
|
4530
|
+
__vue_is_functional_template__,
|
|
4531
|
+
__vue_module_identifier__,
|
|
4532
|
+
false,
|
|
4533
|
+
createInjector,
|
|
4534
|
+
undefined,
|
|
4535
|
+
undefined
|
|
4536
|
+
);
|
|
4537
|
+
|
|
4538
|
+
__vue_component__.install = Vue => Vue.component(__vue_component__.name, __vue_component__);
|
|
2622
4539
|
|
|
2623
|
-
const compositeComponents = [__vue_component__$
|
|
2624
|
-
const models = [__vue_component__$
|
|
2625
|
-
const components = [__vue_component__$
|
|
4540
|
+
const compositeComponents = [__vue_component__$e, __vue_component__$f];
|
|
4541
|
+
const models = [__vue_component__$d, __vue_component__];
|
|
4542
|
+
const components = [__vue_component__$n, __vue_component__$m, __vue_component__$l, __vue_component__$k, __vue_component__$i, __vue_component__$h, __vue_component__$c, __vue_component__$4, __vue_component__$3, __vue_component__$9, __vue_component__$8, __vue_component__$a, __vue_component__$7, __vue_component__$2, __vue_component__$6, __vue_component__$5, __vue_component__$1, ...compositeComponents, ...models];
|
|
2626
4543
|
const install = Vue => {
|
|
2627
4544
|
if (install.installed) return;
|
|
2628
4545
|
install.installed = true;
|
|
@@ -2631,4 +4548,4 @@ const install = Vue => {
|
|
|
2631
4548
|
});
|
|
2632
4549
|
};
|
|
2633
4550
|
|
|
2634
|
-
export { __vue_component__$
|
|
4551
|
+
export { __vue_component__$n as EleButton, __vue_component__$m as EleDate, __vue_component__$l as EleInput, __vue_component__$2 as EleModal, __vue_component__$k as EleSelect, __vue_component__$i as EleTable, __vue_component__$c as EleTpl, __vue_component__$h as EleTree, install as default, models };
|