@panpanzhao/component-ui 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/lib/component-ui.common.js +1845 -633
  2. package/lib/components/crud.js +547 -297
  3. package/lib/components/dialog.js +50 -19
  4. package/lib/components/drawer.js +14 -14
  5. package/lib/components/form-dialog.js +245 -146
  6. package/lib/components/form-drawer.js +115 -51
  7. package/lib/components/form-group.js +108 -43
  8. package/lib/components/form-input.js +804 -94
  9. package/lib/components/form-item.js +19 -8
  10. package/lib/components/form-query.js +53 -10
  11. package/lib/components/form-view-dialog.js +94 -33
  12. package/lib/components/form-view-group.js +75 -18
  13. package/lib/components/form-view.js +7 -2
  14. package/lib/components/form.js +20 -10
  15. package/lib/components/formula.js +25 -25
  16. package/lib/components/table-column.js +47 -47
  17. package/lib/components/table-editable.js +22 -23
  18. package/lib/components/table-operate.js +357 -197
  19. package/lib/components/table-search.js +28 -31
  20. package/lib/components/table.js +69 -56
  21. package/lib/components/tree-line.js +272 -0
  22. package/lib/index.js +1 -1
  23. package/lib/styles/component-ui.css +2 -2
  24. package/lib/styles/dialog.css +1 -1
  25. package/lib/styles/form-item.css +1 -0
  26. package/lib/styles/form-view.css +1 -0
  27. package/lib/styles/index.css +2 -2
  28. package/lib/styles/tree-line.css +1 -0
  29. package/lib/styles/upload-process.css +1 -0
  30. package/lib/utils/formula/doc.js +2 -3
  31. package/lib/utils/formula/evalutor.js +4 -3
  32. package/lib/utils/formula/filter.js +1 -2
  33. package/lib/utils/formula/function.js +1 -2
  34. package/lib/utils/formula/lexer.js +1 -4
  35. package/lib/utils/helper.js +3 -5
  36. package/package.json +5 -2
@@ -82,7 +82,7 @@ module.exports =
82
82
  /******/
83
83
  /******/
84
84
  /******/ // Load entry module and return exports
85
- /******/ return __webpack_require__(__webpack_require__.s = 80);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 81);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -227,7 +227,7 @@ module.exports = require("@panpanzhao/component-ui/lib/components/form-item");
227
227
 
228
228
  /***/ }),
229
229
 
230
- /***/ 18:
230
+ /***/ 19:
231
231
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
232
232
 
233
233
  "use strict";
@@ -260,6 +260,12 @@ var components_form = __webpack_require__(4);
260
260
  render: Function,
261
261
  slots: Object,
262
262
  config: Object,
263
+ formModel: {
264
+ type: Object,
265
+ default: function _default() {
266
+ return {};
267
+ }
268
+ },
263
269
  show: {
264
270
  type: [Boolean, Function],
265
271
  default: true
@@ -285,8 +291,11 @@ var components_form = __webpack_require__(4);
285
291
  },
286
292
  created: function created() {
287
293
  if (this._formGroup) {
288
- var defaultVal = this.prop ? this._formGroup.formModel[this.prop] : this._formGroup.formModel;
289
- this.formModel = defaultVal || {};
294
+ // if (!(this.prop&&this._formGroup.formModel[this.prop])) {
295
+ // this._formGroup.formModel[this.prop]={}
296
+ // }
297
+ //const defaultVal= this.prop?this._formGroup.formModel[this.prop]:this._formGroup.formModel
298
+ //this.formModel=defaultVal
290
299
  }
291
300
  // if (this.prop && this._formGroup) {
292
301
  // this._formGroup.formModel[this.prop] = this.formModel;
@@ -349,6 +358,7 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
349
358
 
350
359
 
351
360
 
361
+
352
362
  /* harmony default export */ var src = ({
353
363
  name: "FormGroup",
354
364
  componentName: "FormGroup",
@@ -370,9 +380,6 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
370
380
  return [];
371
381
  }
372
382
  },
373
- defaultExpandVal: {
374
- type: Array | String
375
- },
376
383
  items: {
377
384
  type: Array,
378
385
  default: function _default() {
@@ -398,9 +405,23 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
398
405
  openedCode: null
399
406
  };
400
407
  },
408
+ created: function created() {
409
+ var _this = this;
410
+ this.items.forEach(function (item) {
411
+ var _item$formItems;
412
+ var formData = item.prop && _this.formModel[item.prop] || {};
413
+ if ((item == null || (_item$formItems = item.formItems) == null ? void 0 : _item$formItems.length) > 0) {
414
+ item == null || item.formItems.forEach(function (itemCh) {
415
+ _this.$set(formData, itemCh.prop, formData[itemCh.prop]);
416
+ });
417
+ }
418
+ //初始化数据值
419
+ _this.$set(_this.formModel, item.prop, formData);
420
+ });
421
+ },
401
422
  computed: {
402
423
  actionFormMap: function actionFormMap() {
403
- var _this = this;
424
+ var _this2 = this;
404
425
  var actionForm = {};
405
426
  this.actions.forEach(function (action) {
406
427
  if (!action.trigger) {
@@ -423,15 +444,16 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
423
444
  if (!targetConfig[formTarget.formCode]) {
424
445
  targetConfig[formTarget.formCode] = {};
425
446
  }
426
- targetConfig[formTarget.formCode][formTarget.fieldCode] = _this.formLayout[formTarget.formCode][formTarget.fieldCode];
427
- targetForm[formTarget.formCode] = _this.formModel[formTarget.formCode];
447
+ targetConfig[formTarget.formCode][formTarget.fieldCode] = _this2.formLayout[formTarget.formCode][formTarget.fieldCode];
448
+ targetForm[formTarget.formCode] = _this2.formModel[formTarget.formCode];
428
449
  });
429
450
  config.targetConfig = targetConfig;
430
451
  config.targetForm = targetForm;
452
+ config.formModel = _this2.formModel;
431
453
  for (var _len = arguments.length, arg = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
432
454
  arg[_key - 1] = arguments[_key];
433
455
  }
434
- (_action$exec = action.exec).call.apply(_action$exec, [_this, config].concat(arg));
456
+ (_action$exec = action.exec).call.apply(_action$exec, [_this2, config].concat(arg));
435
457
  }
436
458
  });
437
459
  });
@@ -440,7 +462,7 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
440
462
  },
441
463
  methods: {
442
464
  validate: function validate(callback) {
443
- var _this2 = this;
465
+ var _this3 = this;
444
466
  var promise;
445
467
  // if no callback, return promise
446
468
  if (typeof callback !== "function" && Promise) {
@@ -458,9 +480,9 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
458
480
  }
459
481
  var invalidForms = {};
460
482
  this.items.forEach(function (form) {
461
- var formNode = _this2.$refs[form.prop];
483
+ var formNode = _this3.$refs[form.prop];
462
484
  if (!formNode) {
463
- if (typeof callback === "function" && ++count === _this2.items.length) {
485
+ if (typeof callback === "function" && ++count === _this3.items.length) {
464
486
  callback(valid, invalidForms);
465
487
  }
466
488
  return true;
@@ -470,7 +492,7 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
470
492
  valid = false;
471
493
  invalidForms[form.prop] = msgObj;
472
494
  }
473
- if (typeof callback === "function" && ++count === _this2.items.length) {
495
+ if (typeof callback === "function" && ++count === _this3.items.length) {
474
496
  callback(valid, invalidForms);
475
497
  }
476
498
  });
@@ -480,9 +502,9 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
480
502
  }
481
503
  },
482
504
  reset: function reset() {
483
- var _this3 = this;
505
+ var _this4 = this;
484
506
  this.items.forEach(function (form) {
485
- var formNode = _this3.$refs[form.prop];
507
+ var formNode = _this4.$refs[form.prop];
486
508
  if (!formNode) {
487
509
  return true;
488
510
  }
@@ -493,7 +515,8 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
493
515
  var h = this.$createElement;
494
516
  var formProp = {
495
517
  attrs: Object.assign({
496
- actions: this.actionFormMap[form.prop]
518
+ actions: this.actionFormMap[form.prop],
519
+ formModel: form.prop && this.formModel[form.prop]
497
520
  }, form),
498
521
  on: form.on
499
522
  };
@@ -507,10 +530,10 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
507
530
  }, formProp]));
508
531
  },
509
532
  renderTab: function renderTab(h, filterItems) {
510
- var _this4 = this;
533
+ var _this5 = this;
511
534
  var itemNode = filterItems.map(function (item) {
512
535
  if (typeof item.render === "function") {
513
- return item.render(h, _this4.formModel, item);
536
+ return item.render(h, _this5.formModel, item);
514
537
  }
515
538
  return h("el-tab-pane", {
516
539
  "key": item.prop,
@@ -520,7 +543,7 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
520
543
  }
521
544
  }, [h("template", {
522
545
  "slot": "label"
523
- }, [item.slots && typeof item.slots.title === "function" ? item.slots.title.call(_this4, h) : item.slots && item.slots.title]), _this4.formNode(item)]);
546
+ }, [item.slots && typeof item.slots.title === "function" ? item.slots.title.call(_this5, h) : item.slots && item.slots.title]), _this5.formNode(item)]);
524
547
  });
525
548
  var tabsProp = {
526
549
  attrs: {
@@ -529,27 +552,27 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
529
552
  },
530
553
  on: {
531
554
  "tab-click": function tabClick(tabNode) {
532
- _this4.$emit("openedCode", tabNode.name);
555
+ _this5.$emit("openedCode", tabNode.name);
533
556
  }
534
557
  }
535
558
  };
536
559
  return h("el-tabs", babel_helper_vue_jsx_merge_props_default()([{}, tabsProp]), [itemNode]);
537
560
  },
538
561
  renderCollapse: function renderCollapse(h, filterItems) {
539
- var _this5 = this;
562
+ var _this6 = this;
540
563
  var itemNode = filterItems.map(function (item) {
541
564
  if (typeof item.render === "function") {
542
- return item.render(h, _this5.formModel, item);
565
+ return item.render(h, _this6.formModel, item);
543
566
  }
544
567
  return h("el-collapse-item", {
545
- "key": item.prop || item.label,
568
+ "key": item.prop,
546
569
  "attrs": {
547
- "name": item.prop || item.label,
570
+ "name": item.prop,
548
571
  "title": item.label
549
572
  }
550
573
  }, [h("template", {
551
574
  "slot": "title"
552
- }, [item.slots && typeof item.slots.title === "function" ? item.slots.title.call(_this5, h) : item.slots && item.slots.title]), _this5.formNode(item)]);
575
+ }, [item.slots && typeof item.slots.title === "function" ? item.slots.title.call(_this6, h) : item.slots && item.slots.title]), _this6.formNode(item)]);
553
576
  });
554
577
  var collapseProp = {
555
578
  attrs: {
@@ -557,20 +580,46 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
557
580
  },
558
581
  on: {
559
582
  change: function change(val) {
560
- _this5.$emit("openedCode", val);
583
+ _this6.$emit("openedCode", val);
561
584
  }
562
585
  }
563
586
  };
564
587
  return h("el-collapse", babel_helper_vue_jsx_merge_props_default()([{}, collapseProp]), [itemNode]);
588
+ },
589
+ renderCustom: function renderCustom(h, filterItems) {
590
+ var _this7 = this;
591
+ var itemNode = filterItems.map(function (item) {
592
+ if (typeof item.render === "function") {
593
+ return item.render(h, _this7.formModel, item);
594
+ }
595
+ return h("div", {
596
+ "key": item.prop,
597
+ "attrs": {
598
+ "name": item.prop,
599
+ "title": item.label
600
+ }
601
+ }, [item.slots && typeof item.slots.title === "function" ? item.slots.title.call(_this7, h) : item.slots && item.slots.title || item.label, _this7.formNode(item)]);
602
+ });
603
+ var collapseProp = {
604
+ attrs: {
605
+ value: this.openedCode
606
+ },
607
+ on: {
608
+ change: function change(val) {
609
+ _this7.$emit("openedCode", val);
610
+ }
611
+ }
612
+ };
613
+ return h("div", babel_helper_vue_jsx_merge_props_default()([{}, collapseProp]), [itemNode]);
565
614
  }
566
615
  },
567
616
  render: function render(h) {
568
- var _this6 = this;
617
+ var _this8 = this;
569
618
  var filterItems = this.items.filter(function (item) {
570
619
  if (item.show === false) {
571
620
  return false;
572
621
  }
573
- if (typeof item.show === "function" && !item.show.call(_this6, {
622
+ if (typeof item.show === "function" && !item.show.call(_this8, {
574
623
  config: item
575
624
  })) {
576
625
  return false;
@@ -580,10 +629,15 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
580
629
  if (!filterItems.length > 0) {
581
630
  return null;
582
631
  }
583
- this.openedCode = this.defaultExpandVal || filterItems[0] && filterItems[0].prop;
632
+ this.openedCode = filterItems[0] && filterItems[0].prop;
633
+ var group = {
634
+ Custom: this.renderCustom,
635
+ Tab: this.renderTab,
636
+ Collapse: this.renderCollapse
637
+ };
584
638
  return h("div", {
585
- "class": ["form-group", "is-" + (this.control === "Tab" ? "tab" : "collapse")]
586
- }, [this.control === "Tab" ? this.renderTab(h, filterItems) : this.renderCollapse(h, filterItems)]);
639
+ "class": ["form-group", "is-" + this.control]
640
+ }, [group[this.control] ? group[this.control](h, filterItems) : null]);
587
641
  }
588
642
  });
589
643
  // CONCATENATED MODULE: ./src/components/form-group/index.js
@@ -623,7 +677,7 @@ module.exports = require("@panpanzhao/component-ui/lib/components/drawer");
623
677
  // ESM COMPAT FLAG
624
678
  __webpack_require__.r(__webpack_exports__);
625
679
 
626
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--5!./node_modules/vue-loader/lib??vue-loader-options!./src/components/form/src/form.vue?vue&type=template&id=097bf622&
680
+ // CONCATENATED MODULE: ./node_modules/.pnpm/vue-loader@15.11.1_css-loader@2.1.1_lodash@4.17.21_vue-template-compiler@2.7.16_webpack@4.47.0/node_modules/vue-loader/lib/loaders/templateLoader.js??ref--5!./node_modules/.pnpm/vue-loader@15.11.1_css-loader@2.1.1_lodash@4.17.21_vue-template-compiler@2.7.16_webpack@4.47.0/node_modules/vue-loader/lib??vue-loader-options!./src/components/form/src/form.vue?vue&type=template&id=74ff4c20
627
681
  var render = function render() {
628
682
  var _vm = this,
629
683
  _c = _vm._self._c
@@ -694,7 +748,7 @@ var staticRenderFns = []
694
748
  render._withStripped = true
695
749
 
696
750
 
697
- // CONCATENATED MODULE: ./src/components/form/src/form.vue?vue&type=template&id=097bf622&
751
+ // CONCATENATED MODULE: ./src/components/form/src/form.vue?vue&type=template&id=74ff4c20
698
752
 
699
753
  // EXTERNAL MODULE: external "element-ui/lib/form"
700
754
  var form_ = __webpack_require__(13);
@@ -718,14 +772,14 @@ var formula_ = __webpack_require__(3);
718
772
  // EXTERNAL MODULE: external "lodash"
719
773
  var external_lodash_ = __webpack_require__(2);
720
774
 
721
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/components/form/src/form.vue?vue&type=script&lang=js&
775
+ // CONCATENATED MODULE: ./node_modules/.pnpm/babel-loader@8.3.0_@babel+core@7.23.9_webpack@4.47.0/node_modules/babel-loader/lib!./node_modules/.pnpm/vue-loader@15.11.1_css-loader@2.1.1_lodash@4.17.21_vue-template-compiler@2.7.16_webpack@4.47.0/node_modules/vue-loader/lib??vue-loader-options!./src/components/form/src/form.vue?vue&type=script&lang=js
722
776
 
723
777
 
724
778
 
725
779
 
726
780
 
727
781
 
728
- /* harmony default export */ var formvue_type_script_lang_js_ = ({
782
+ /* harmony default export */ var formvue_type_script_lang_js = ({
729
783
  name: "Form",
730
784
  componentName: "Form",
731
785
  components: {
@@ -866,9 +920,19 @@ var external_lodash_ = __webpack_require__(2);
866
920
  var _callback = null;
867
921
  if (callback) {
868
922
  _callback = function _callback(flag, message) {
869
- callback.call(_this3, flag, message);
870
923
  if (typeof _this3.verify === "function") {
871
- _this3.verify.call(_this3, flag, message);
924
+ var promiset = _this3.verify.call(_this3, flag, message);
925
+ if (promiset && Object.prototype.toString.call(promiset) == "[object Promise]") {
926
+ promiset.then(function (vFlag, vMessage) {
927
+ callback.call(_this3, flag && vFlag !== false, message, vMessage);
928
+ }).catch(function (error) {
929
+ callback.call(_this3, false, message, error);
930
+ });
931
+ } else {
932
+ callback.call(_this3, flag && promiset !== false, message);
933
+ }
934
+ } else {
935
+ callback.call(_this3, flag, message);
872
936
  }
873
937
  };
874
938
  }
@@ -903,9 +967,9 @@ var external_lodash_ = __webpack_require__(2);
903
967
  }
904
968
  }
905
969
  });
906
- // CONCATENATED MODULE: ./src/components/form/src/form.vue?vue&type=script&lang=js&
907
- /* harmony default export */ var src_formvue_type_script_lang_js_ = (formvue_type_script_lang_js_);
908
- // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
970
+ // CONCATENATED MODULE: ./src/components/form/src/form.vue?vue&type=script&lang=js
971
+ /* harmony default export */ var src_formvue_type_script_lang_js = (formvue_type_script_lang_js);
972
+ // EXTERNAL MODULE: ./node_modules/.pnpm/vue-loader@15.11.1_css-loader@2.1.1_lodash@4.17.21_vue-template-compiler@2.7.16_webpack@4.47.0/node_modules/vue-loader/lib/runtime/componentNormalizer.js
909
973
  var componentNormalizer = __webpack_require__(1);
910
974
 
911
975
  // CONCATENATED MODULE: ./src/components/form/src/form.vue
@@ -917,7 +981,7 @@ var componentNormalizer = __webpack_require__(1);
917
981
  /* normalize component */
918
982
 
919
983
  var component = Object(componentNormalizer["a" /* default */])(
920
- src_formvue_type_script_lang_js_,
984
+ src_formvue_type_script_lang_js,
921
985
  render,
922
986
  staticRenderFns,
923
987
  false,
@@ -965,7 +1029,7 @@ module.exports = require("element-ui/lib/collapse");
965
1029
 
966
1030
  /***/ }),
967
1031
 
968
- /***/ 80:
1032
+ /***/ 81:
969
1033
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
970
1034
 
971
1035
  "use strict";
@@ -988,7 +1052,7 @@ var button_default = /*#__PURE__*/__webpack_require__.n(button_);
988
1052
  var components_form = __webpack_require__(4);
989
1053
 
990
1054
  // EXTERNAL MODULE: ./src/components/form-group/index.js + 2 modules
991
- var form_group = __webpack_require__(18);
1055
+ var form_group = __webpack_require__(19);
992
1056
 
993
1057
  // EXTERNAL MODULE: external "@panpanzhao/component-ui/lib/utils/formula"
994
1058
  var formula_ = __webpack_require__(3);
@@ -996,7 +1060,7 @@ var formula_ = __webpack_require__(3);
996
1060
  // EXTERNAL MODULE: external "lodash"
997
1061
  var external_lodash_ = __webpack_require__(2);
998
1062
 
999
- // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/components/form-drawer/src/index.vue?vue&type=script&lang=js&
1063
+ // CONCATENATED MODULE: ./node_modules/.pnpm/babel-loader@8.3.0_@babel+core@7.23.9_webpack@4.47.0/node_modules/babel-loader/lib!./node_modules/.pnpm/vue-loader@15.11.1_css-loader@2.1.1_lodash@4.17.21_vue-template-compiler@2.7.16_webpack@4.47.0/node_modules/vue-loader/lib??vue-loader-options!./src/components/form-drawer/src/index.vue?vue&type=script&lang=js
1000
1064
 
1001
1065
 
1002
1066
 
@@ -1008,7 +1072,7 @@ var external_lodash_ = __webpack_require__(2);
1008
1072
 
1009
1073
 
1010
1074
 
1011
- /* harmony default export */ var srcvue_type_script_lang_js_ = ({
1075
+ /* harmony default export */ var srcvue_type_script_lang_js = ({
1012
1076
  name: "FormDrawer",
1013
1077
  componentName: "FormDrawer",
1014
1078
  components: {
@@ -1254,9 +1318,9 @@ var external_lodash_ = __webpack_require__(2);
1254
1318
  }, [this.renderTools(h)]), this.renderForm(h)]);
1255
1319
  }
1256
1320
  });
1257
- // CONCATENATED MODULE: ./src/components/form-drawer/src/index.vue?vue&type=script&lang=js&
1258
- /* harmony default export */ var form_drawer_srcvue_type_script_lang_js_ = (srcvue_type_script_lang_js_);
1259
- // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
1321
+ // CONCATENATED MODULE: ./src/components/form-drawer/src/index.vue?vue&type=script&lang=js
1322
+ /* harmony default export */ var form_drawer_srcvue_type_script_lang_js = (srcvue_type_script_lang_js);
1323
+ // EXTERNAL MODULE: ./node_modules/.pnpm/vue-loader@15.11.1_css-loader@2.1.1_lodash@4.17.21_vue-template-compiler@2.7.16_webpack@4.47.0/node_modules/vue-loader/lib/runtime/componentNormalizer.js
1260
1324
  var componentNormalizer = __webpack_require__(1);
1261
1325
 
1262
1326
  // CONCATENATED MODULE: ./src/components/form-drawer/src/index.vue
@@ -1268,7 +1332,7 @@ var src_render, staticRenderFns
1268
1332
  /* normalize component */
1269
1333
 
1270
1334
  var component = Object(componentNormalizer["a" /* default */])(
1271
- form_drawer_srcvue_type_script_lang_js_,
1335
+ form_drawer_srcvue_type_script_lang_js,
1272
1336
  src_render,
1273
1337
  staticRenderFns,
1274
1338
  false,