@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 = 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",
@@ -724,9 +745,6 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
724
745
  return [];
725
746
  }
726
747
  },
727
- defaultExpandVal: {
728
- type: Array | String
729
- },
730
748
  items: {
731
749
  type: Array,
732
750
  default: function _default() {
@@ -752,9 +770,23 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
752
770
  openedCode: null
753
771
  };
754
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
+ },
755
787
  computed: {
756
788
  actionFormMap: function actionFormMap() {
757
- var _this = this;
789
+ var _this2 = this;
758
790
  var actionForm = {};
759
791
  this.actions.forEach(function (action) {
760
792
  if (!action.trigger) {
@@ -777,15 +809,16 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
777
809
  if (!targetConfig[formTarget.formCode]) {
778
810
  targetConfig[formTarget.formCode] = {};
779
811
  }
780
- targetConfig[formTarget.formCode][formTarget.fieldCode] = _this.formLayout[formTarget.formCode][formTarget.fieldCode];
781
- 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];
782
814
  });
783
815
  config.targetConfig = targetConfig;
784
816
  config.targetForm = targetForm;
817
+ config.formModel = _this2.formModel;
785
818
  for (var _len = arguments.length, arg = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
786
819
  arg[_key - 1] = arguments[_key];
787
820
  }
788
- (_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));
789
822
  }
790
823
  });
791
824
  });
@@ -794,7 +827,7 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
794
827
  },
795
828
  methods: {
796
829
  validate: function validate(callback) {
797
- var _this2 = this;
830
+ var _this3 = this;
798
831
  var promise;
799
832
  // if no callback, return promise
800
833
  if (typeof callback !== "function" && Promise) {
@@ -812,9 +845,9 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
812
845
  }
813
846
  var invalidForms = {};
814
847
  this.items.forEach(function (form) {
815
- var formNode = _this2.$refs[form.prop];
848
+ var formNode = _this3.$refs[form.prop];
816
849
  if (!formNode) {
817
- if (typeof callback === "function" && ++count === _this2.items.length) {
850
+ if (typeof callback === "function" && ++count === _this3.items.length) {
818
851
  callback(valid, invalidForms);
819
852
  }
820
853
  return true;
@@ -824,7 +857,7 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
824
857
  valid = false;
825
858
  invalidForms[form.prop] = msgObj;
826
859
  }
827
- if (typeof callback === "function" && ++count === _this2.items.length) {
860
+ if (typeof callback === "function" && ++count === _this3.items.length) {
828
861
  callback(valid, invalidForms);
829
862
  }
830
863
  });
@@ -834,9 +867,9 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
834
867
  }
835
868
  },
836
869
  reset: function reset() {
837
- var _this3 = this;
870
+ var _this4 = this;
838
871
  this.items.forEach(function (form) {
839
- var formNode = _this3.$refs[form.prop];
872
+ var formNode = _this4.$refs[form.prop];
840
873
  if (!formNode) {
841
874
  return true;
842
875
  }
@@ -847,7 +880,8 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
847
880
  var h = this.$createElement;
848
881
  var formProp = {
849
882
  attrs: Object.assign({
850
- actions: this.actionFormMap[form.prop]
883
+ actions: this.actionFormMap[form.prop],
884
+ formModel: form.prop && this.formModel[form.prop]
851
885
  }, form),
852
886
  on: form.on
853
887
  };
@@ -861,10 +895,10 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
861
895
  }, formProp]));
862
896
  },
863
897
  renderTab: function renderTab(h, filterItems) {
864
- var _this4 = this;
898
+ var _this5 = this;
865
899
  var itemNode = filterItems.map(function (item) {
866
900
  if (typeof item.render === "function") {
867
- return item.render(h, _this4.formModel, item);
901
+ return item.render(h, _this5.formModel, item);
868
902
  }
869
903
  return h("el-tab-pane", {
870
904
  "key": item.prop,
@@ -874,7 +908,7 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
874
908
  }
875
909
  }, [h("template", {
876
910
  "slot": "label"
877
- }, [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)]);
878
912
  });
879
913
  var tabsProp = {
880
914
  attrs: {
@@ -883,27 +917,27 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
883
917
  },
884
918
  on: {
885
919
  "tab-click": function tabClick(tabNode) {
886
- _this4.$emit("openedCode", tabNode.name);
920
+ _this5.$emit("openedCode", tabNode.name);
887
921
  }
888
922
  }
889
923
  };
890
924
  return h("el-tabs", babel_helper_vue_jsx_merge_props_default()([{}, tabsProp]), [itemNode]);
891
925
  },
892
926
  renderCollapse: function renderCollapse(h, filterItems) {
893
- var _this5 = this;
927
+ var _this6 = this;
894
928
  var itemNode = filterItems.map(function (item) {
895
929
  if (typeof item.render === "function") {
896
- return item.render(h, _this5.formModel, item);
930
+ return item.render(h, _this6.formModel, item);
897
931
  }
898
932
  return h("el-collapse-item", {
899
- "key": item.prop || item.label,
933
+ "key": item.prop,
900
934
  "attrs": {
901
- "name": item.prop || item.label,
935
+ "name": item.prop,
902
936
  "title": item.label
903
937
  }
904
938
  }, [h("template", {
905
939
  "slot": "title"
906
- }, [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)]);
907
941
  });
908
942
  var collapseProp = {
909
943
  attrs: {
@@ -911,20 +945,46 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
911
945
  },
912
946
  on: {
913
947
  change: function change(val) {
914
- _this5.$emit("openedCode", val);
948
+ _this6.$emit("openedCode", val);
915
949
  }
916
950
  }
917
951
  };
918
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]);
919
979
  }
920
980
  },
921
981
  render: function render(h) {
922
- var _this6 = this;
982
+ var _this8 = this;
923
983
  var filterItems = this.items.filter(function (item) {
924
984
  if (item.show === false) {
925
985
  return false;
926
986
  }
927
- if (typeof item.show === "function" && !item.show.call(_this6, {
987
+ if (typeof item.show === "function" && !item.show.call(_this8, {
928
988
  config: item
929
989
  })) {
930
990
  return false;
@@ -934,10 +994,15 @@ var collapse_item_default = /*#__PURE__*/__webpack_require__.n(collapse_item_);
934
994
  if (!filterItems.length > 0) {
935
995
  return null;
936
996
  }
937
- this.openedCode = this.defaultExpandVal || filterItems[0] && filterItems[0].prop;
997
+ this.openedCode = filterItems[0] && filterItems[0].prop;
998
+ var group = {
999
+ Custom: this.renderCustom,
1000
+ Tab: this.renderTab,
1001
+ Collapse: this.renderCollapse
1002
+ };
938
1003
  return h("div", {
939
- "class": ["form-group", "is-" + (this.control === "Tab" ? "tab" : "collapse")]
940
- }, [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]);
941
1006
  }
942
1007
  });
943
1008
  // CONCATENATED MODULE: ./src/components/form-group/index.js