@panpanzhao/component-ui 0.0.53 → 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 +1738 -556
  2. package/lib/components/crud.js +545 -292
  3. package/lib/components/dialog.js +44 -13
  4. package/lib/components/drawer.js +10 -10
  5. package/lib/components/form-dialog.js +242 -140
  6. package/lib/components/form-drawer.js +112 -45
  7. package/lib/components/form-group.js +105 -37
  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 +24 -9
  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 +23 -23
  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 +354 -191
  19. package/lib/components/table-search.js +23 -17
  20. package/lib/components/table.js +22 -23
  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 -1
  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 = 18);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 19);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ([
@@ -215,7 +215,7 @@ module.exports = require("@panpanzhao/component-ui/lib/utils/formula");
215
215
  // ESM COMPAT FLAG
216
216
  __webpack_require__.r(__webpack_exports__);
217
217
 
218
- // 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&
218
+ // 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
219
219
  var render = function render() {
220
220
  var _vm = this,
221
221
  _c = _vm._self._c
@@ -286,7 +286,7 @@ var staticRenderFns = []
286
286
  render._withStripped = true
287
287
 
288
288
 
289
- // CONCATENATED MODULE: ./src/components/form/src/form.vue?vue&type=template&id=097bf622&
289
+ // CONCATENATED MODULE: ./src/components/form/src/form.vue?vue&type=template&id=74ff4c20
290
290
 
291
291
  // EXTERNAL MODULE: external "element-ui/lib/form"
292
292
  var form_ = __webpack_require__(13);
@@ -310,14 +310,14 @@ var formula_ = __webpack_require__(3);
310
310
  // EXTERNAL MODULE: external "lodash"
311
311
  var external_lodash_ = __webpack_require__(2);
312
312
 
313
- // 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&
313
+ // 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
314
314
 
315
315
 
316
316
 
317
317
 
318
318
 
319
319
 
320
- /* harmony default export */ var formvue_type_script_lang_js_ = ({
320
+ /* harmony default export */ var formvue_type_script_lang_js = ({
321
321
  name: "Form",
322
322
  componentName: "Form",
323
323
  components: {
@@ -458,9 +458,19 @@ var external_lodash_ = __webpack_require__(2);
458
458
  var _callback = null;
459
459
  if (callback) {
460
460
  _callback = function _callback(flag, message) {
461
- callback.call(_this3, flag, message);
462
461
  if (typeof _this3.verify === "function") {
463
- _this3.verify.call(_this3, flag, message);
462
+ var promiset = _this3.verify.call(_this3, flag, message);
463
+ if (promiset && Object.prototype.toString.call(promiset) == "[object Promise]") {
464
+ promiset.then(function (vFlag, vMessage) {
465
+ callback.call(_this3, flag && vFlag !== false, message, vMessage);
466
+ }).catch(function (error) {
467
+ callback.call(_this3, false, message, error);
468
+ });
469
+ } else {
470
+ callback.call(_this3, flag && promiset !== false, message);
471
+ }
472
+ } else {
473
+ callback.call(_this3, flag, message);
464
474
  }
465
475
  };
466
476
  }
@@ -495,9 +505,9 @@ var external_lodash_ = __webpack_require__(2);
495
505
  }
496
506
  }
497
507
  });
498
- // CONCATENATED MODULE: ./src/components/form/src/form.vue?vue&type=script&lang=js&
499
- /* harmony default export */ var src_formvue_type_script_lang_js_ = (formvue_type_script_lang_js_);
500
- // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
508
+ // CONCATENATED MODULE: ./src/components/form/src/form.vue?vue&type=script&lang=js
509
+ /* harmony default export */ var src_formvue_type_script_lang_js = (formvue_type_script_lang_js);
510
+ // 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
501
511
  var componentNormalizer = __webpack_require__(1);
502
512
 
503
513
  // CONCATENATED MODULE: ./src/components/form/src/form.vue
@@ -509,7 +519,7 @@ var componentNormalizer = __webpack_require__(1);
509
519
  /* normalize component */
510
520
 
511
521
  var component = Object(componentNormalizer["a" /* default */])(
512
- src_formvue_type_script_lang_js_,
522
+ src_formvue_type_script_lang_js,
513
523
  render,
514
524
  staticRenderFns,
515
525
  false,
@@ -581,7 +591,8 @@ module.exports = require("@panpanzhao/component-ui/lib/components/form-item");
581
591
 
582
592
  /***/ }),
583
593
  /* 17 */,
584
- /* 18 */
594
+ /* 18 */,
595
+ /* 19 */
585
596
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
586
597
 
587
598
  "use strict";
@@ -614,6 +625,12 @@ var components_form = __webpack_require__(4);
614
625
  render: Function,
615
626
  slots: Object,
616
627
  config: Object,
628
+ formModel: {
629
+ type: Object,
630
+ default: function _default() {
631
+ return {};
632
+ }
633
+ },
617
634
  show: {
618
635
  type: [Boolean, Function],
619
636
  default: true
@@ -639,8 +656,11 @@ var components_form = __webpack_require__(4);
639
656
  },
640
657
  created: function created() {
641
658
  if (this._formGroup) {
642
- var defaultVal = this.prop ? this._formGroup.formModel[this.prop] : this._formGroup.formModel;
643
- this.formModel = defaultVal || {};
659
+ // if (!(this.prop&&this._formGroup.formModel[this.prop])) {
660
+ // this._formGroup.formModel[this.prop]={}
661
+ // }
662
+ //const defaultVal= this.prop?this._formGroup.formModel[this.prop]:this._formGroup.formModel
663
+ //this.formModel=defaultVal
644
664
  }
645
665
  // if (this.prop && this._formGroup) {
646
666
  // this._formGroup.formModel[this.prop] = this.formModel;
@@ -703,6 +723,7 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
703
723
 
704
724
 
705
725
 
726
+
706
727
  /* harmony default export */ var src = ({
707
728
  name: "FormGroup",
708
729
  componentName: "FormGroup",
@@ -749,9 +770,23 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
749
770
  openedCode: null
750
771
  };
751
772
  },
773
+ created: function created() {
774
+ var _this = this;
775
+ this.items.forEach(function (item) {
776
+ var _item$formItems;
777
+ var formData = item.prop && _this.formModel[item.prop] || {};
778
+ if ((item == null || (_item$formItems = item.formItems) == null ? void 0 : _item$formItems.length) > 0) {
779
+ item == null || item.formItems.forEach(function (itemCh) {
780
+ _this.$set(formData, itemCh.prop, formData[itemCh.prop]);
781
+ });
782
+ }
783
+ //初始化数据值
784
+ _this.$set(_this.formModel, item.prop, formData);
785
+ });
786
+ },
752
787
  computed: {
753
788
  actionFormMap: function actionFormMap() {
754
- var _this = this;
789
+ var _this2 = this;
755
790
  var actionForm = {};
756
791
  this.actions.forEach(function (action) {
757
792
  if (!action.trigger) {
@@ -774,15 +809,16 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
774
809
  if (!targetConfig[formTarget.formCode]) {
775
810
  targetConfig[formTarget.formCode] = {};
776
811
  }
777
- targetConfig[formTarget.formCode][formTarget.fieldCode] = _this.formLayout[formTarget.formCode][formTarget.fieldCode];
778
- targetForm[formTarget.formCode] = _this.formModel[formTarget.formCode];
812
+ targetConfig[formTarget.formCode][formTarget.fieldCode] = _this2.formLayout[formTarget.formCode][formTarget.fieldCode];
813
+ targetForm[formTarget.formCode] = _this2.formModel[formTarget.formCode];
779
814
  });
780
815
  config.targetConfig = targetConfig;
781
816
  config.targetForm = targetForm;
817
+ config.formModel = _this2.formModel;
782
818
  for (var _len = arguments.length, arg = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
783
819
  arg[_key - 1] = arguments[_key];
784
820
  }
785
- (_action$exec = action.exec).call.apply(_action$exec, [_this, config].concat(arg));
821
+ (_action$exec = action.exec).call.apply(_action$exec, [_this2, config].concat(arg));
786
822
  }
787
823
  });
788
824
  });
@@ -791,7 +827,7 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
791
827
  },
792
828
  methods: {
793
829
  validate: function validate(callback) {
794
- var _this2 = this;
830
+ var _this3 = this;
795
831
  var promise;
796
832
  // if no callback, return promise
797
833
  if (typeof callback !== "function" && Promise) {
@@ -809,9 +845,9 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
809
845
  }
810
846
  var invalidForms = {};
811
847
  this.items.forEach(function (form) {
812
- var formNode = _this2.$refs[form.prop];
848
+ var formNode = _this3.$refs[form.prop];
813
849
  if (!formNode) {
814
- if (typeof callback === "function" && ++count === _this2.items.length) {
850
+ if (typeof callback === "function" && ++count === _this3.items.length) {
815
851
  callback(valid, invalidForms);
816
852
  }
817
853
  return true;
@@ -821,7 +857,7 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
821
857
  valid = false;
822
858
  invalidForms[form.prop] = msgObj;
823
859
  }
824
- if (typeof callback === "function" && ++count === _this2.items.length) {
860
+ if (typeof callback === "function" && ++count === _this3.items.length) {
825
861
  callback(valid, invalidForms);
826
862
  }
827
863
  });
@@ -831,9 +867,9 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
831
867
  }
832
868
  },
833
869
  reset: function reset() {
834
- var _this3 = this;
870
+ var _this4 = this;
835
871
  this.items.forEach(function (form) {
836
- var formNode = _this3.$refs[form.prop];
872
+ var formNode = _this4.$refs[form.prop];
837
873
  if (!formNode) {
838
874
  return true;
839
875
  }
@@ -844,7 +880,8 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
844
880
  var h = this.$createElement;
845
881
  var formProp = {
846
882
  attrs: Object.assign({
847
- actions: this.actionFormMap[form.prop]
883
+ actions: this.actionFormMap[form.prop],
884
+ formModel: form.prop && this.formModel[form.prop]
848
885
  }, form),
849
886
  on: form.on
850
887
  };
@@ -858,10 +895,10 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
858
895
  }, formProp]));
859
896
  },
860
897
  renderTab: function renderTab(h, filterItems) {
861
- var _this4 = this;
898
+ var _this5 = this;
862
899
  var itemNode = filterItems.map(function (item) {
863
900
  if (typeof item.render === "function") {
864
- return item.render(h, _this4.formModel, item);
901
+ return item.render(h, _this5.formModel, item);
865
902
  }
866
903
  return h("el-tab-pane", {
867
904
  "key": item.prop,
@@ -871,7 +908,7 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
871
908
  }
872
909
  }, [h("template", {
873
910
  "slot": "label"
874
- }, [item.slots && typeof item.slots.title === "function" ? item.slots.title.call(_this4, h) : item.slots && item.slots.title]), _this4.formNode(item)]);
911
+ }, [item.slots && typeof item.slots.title === "function" ? item.slots.title.call(_this5, h) : item.slots && item.slots.title]), _this5.formNode(item)]);
875
912
  });
876
913
  var tabsProp = {
877
914
  attrs: {
@@ -880,17 +917,17 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
880
917
  },
881
918
  on: {
882
919
  "tab-click": function tabClick(tabNode) {
883
- _this4.$emit("openedCode", tabNode.name);
920
+ _this5.$emit("openedCode", tabNode.name);
884
921
  }
885
922
  }
886
923
  };
887
924
  return h("el-tabs", babel_helper_vue_jsx_merge_props_default()([{}, tabsProp]), [itemNode]);
888
925
  },
889
926
  renderCollapse: function renderCollapse(h, filterItems) {
890
- var _this5 = this;
927
+ var _this6 = this;
891
928
  var itemNode = filterItems.map(function (item) {
892
929
  if (typeof item.render === "function") {
893
- return item.render(h, _this5.formModel, item);
930
+ return item.render(h, _this6.formModel, item);
894
931
  }
895
932
  return h("el-collapse-item", {
896
933
  "key": item.prop,
@@ -900,7 +937,7 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
900
937
  }
901
938
  }, [h("template", {
902
939
  "slot": "title"
903
- }, [item.slots && typeof item.slots.title === "function" ? item.slots.title.call(_this5, h) : item.slots && item.slots.title]), _this5.formNode(item)]);
940
+ }, [item.slots && typeof item.slots.title === "function" ? item.slots.title.call(_this6, h) : item.slots && item.slots.title]), _this6.formNode(item)]);
904
941
  });
905
942
  var collapseProp = {
906
943
  attrs: {
@@ -908,20 +945,46 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
908
945
  },
909
946
  on: {
910
947
  change: function change(val) {
911
- _this5.$emit("openedCode", val);
948
+ _this6.$emit("openedCode", val);
912
949
  }
913
950
  }
914
951
  };
915
952
  return h("el-collapse", babel_helper_vue_jsx_merge_props_default()([{}, collapseProp]), [itemNode]);
953
+ },
954
+ renderCustom: function renderCustom(h, filterItems) {
955
+ var _this7 = this;
956
+ var itemNode = filterItems.map(function (item) {
957
+ if (typeof item.render === "function") {
958
+ return item.render(h, _this7.formModel, item);
959
+ }
960
+ return h("div", {
961
+ "key": item.prop,
962
+ "attrs": {
963
+ "name": item.prop,
964
+ "title": item.label
965
+ }
966
+ }, [item.slots && typeof item.slots.title === "function" ? item.slots.title.call(_this7, h) : item.slots && item.slots.title || item.label, _this7.formNode(item)]);
967
+ });
968
+ var collapseProp = {
969
+ attrs: {
970
+ value: this.openedCode
971
+ },
972
+ on: {
973
+ change: function change(val) {
974
+ _this7.$emit("openedCode", val);
975
+ }
976
+ }
977
+ };
978
+ return h("div", babel_helper_vue_jsx_merge_props_default()([{}, collapseProp]), [itemNode]);
916
979
  }
917
980
  },
918
981
  render: function render(h) {
919
- var _this6 = this;
982
+ var _this8 = this;
920
983
  var filterItems = this.items.filter(function (item) {
921
984
  if (item.show === false) {
922
985
  return false;
923
986
  }
924
- if (typeof item.show === "function" && !item.show.call(_this6, {
987
+ if (typeof item.show === "function" && !item.show.call(_this8, {
925
988
  config: item
926
989
  })) {
927
990
  return false;
@@ -932,9 +995,14 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
932
995
  return null;
933
996
  }
934
997
  this.openedCode = filterItems[0] && filterItems[0].prop;
998
+ var group = {
999
+ Custom: this.renderCustom,
1000
+ Tab: this.renderTab,
1001
+ Collapse: this.renderCollapse
1002
+ };
935
1003
  return h("div", {
936
- "class": ["form-group", "is-" + (this.control === "Tab" ? "tab" : "collapse")]
937
- }, [this.control === "Tab" ? this.renderTab(h, filterItems) : this.renderCollapse(h, filterItems)]);
1004
+ "class": ["form-group", "is-" + this.control]
1005
+ }, [group[this.control] ? group[this.control](h, filterItems) : null]);
938
1006
  }
939
1007
  });
940
1008
  // CONCATENATED MODULE: ./src/components/form-group/index.js