widget.qw 1.0.19 → 1.0.21

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/build/style.css CHANGED
@@ -709,25 +709,25 @@
709
709
  margin:3px;
710
710
  }
711
711
 
712
- .cascader-pop[data-v-3ed10092] {
712
+ .cascader-pop[data-v-38ba675f] {
713
713
  width: 100%;
714
714
  overflow: hidden;
715
715
  }
716
- .cascader-selector[data-v-3ed10092] {
716
+ .cascader-selector[data-v-38ba675f] {
717
717
  padding: 10px;
718
718
  }
719
- .search-buttons[data-v-3ed10092] {
719
+ .search-buttons[data-v-38ba675f] {
720
720
  display: flex;
721
721
  gap: 10px;
722
722
  }
723
- .clear-btn[data-v-3ed10092] {
723
+ .clear-btn[data-v-38ba675f] {
724
724
  background-color: #f2f3f5;
725
725
  border: none;
726
726
  border-radius: 4px;
727
727
  padding: 4px 8px;
728
728
  font-size: 14px;
729
729
  }
730
- .confirm-btn[data-v-3ed10092] {
730
+ .confirm-btn[data-v-38ba675f] {
731
731
  background-color: #1989fa;
732
732
  color: white;
733
733
  border: none;
@@ -735,19 +735,19 @@
735
735
  padding: 4px 8px;
736
736
  font-size: 14px;
737
737
  }
738
- .no-results[data-v-3ed10092] {
738
+ .no-results[data-v-38ba675f] {
739
739
  text-align: center;
740
740
  padding: 20px;
741
741
  color: #969799;
742
742
  }
743
- .cascader-header[data-v-3ed10092] {
743
+ .cascader-header[data-v-38ba675f] {
744
744
  padding: 10px;
745
745
  border-bottom: 1px solid #ebedf0;
746
746
  display: flex;
747
747
  justify-content: space-between;
748
748
  align-items: center;
749
749
  }
750
- .current-path[data-v-3ed10092] {
750
+ .current-path[data-v-38ba675f] {
751
751
  flex: 1;
752
752
  font-size: 14px;
753
753
  color: #323233;
@@ -755,25 +755,25 @@
755
755
  overflow: hidden;
756
756
  text-overflow: ellipsis;
757
757
  }
758
- .header-right[data-v-3ed10092] {
758
+ .header-right[data-v-38ba675f] {
759
759
  display: flex;
760
760
  gap: 8px;
761
761
  margin-left: auto;
762
762
  }
763
- .cancel-btn[data-v-3ed10092] {
763
+ .cancel-btn[data-v-38ba675f] {
764
764
  color: #969799;
765
765
  margin-right: 5px;
766
766
  }
767
- .scroll-container[data-v-3ed10092] {
767
+ .scroll-container[data-v-38ba675f] {
768
768
  height: calc(80vh - 150px);
769
769
  overflow-y: auto;
770
770
  }
771
- .cell-content[data-v-3ed10092] {
771
+ .cell-content[data-v-38ba675f] {
772
772
  display: flex;
773
773
  align-items: center;
774
774
  gap: 12px;
775
775
  }
776
- .circle-selector[data-v-3ed10092] {
776
+ .circle-selector[data-v-38ba675f] {
777
777
  width: 20px;
778
778
  height: 20px;
779
779
  border-radius: 50%;
@@ -783,29 +783,29 @@
783
783
  transition: all 0.2s;
784
784
  flex-shrink: 0;
785
785
  }
786
- .circle-selector.selected[data-v-3ed10092] {
786
+ .circle-selector.selected[data-v-38ba675f] {
787
787
  background-color: #1989fa;
788
788
  border-color: #1989fa;
789
789
  }
790
- .circle-selector.selected .van-icon[data-v-3ed10092] {
790
+ .circle-selector.selected .van-icon[data-v-38ba675f] {
791
791
  color: white;
792
792
  font-size: 14px;
793
793
  }
794
- .van-cell__right-icon[data-v-3ed10092] {
794
+ .van-cell__right-icon[data-v-38ba675f] {
795
795
  color: #969799;
796
796
  font-size: 16px;
797
797
  margin-left: 8px;
798
798
  }
799
- .name[data-v-3ed10092] {
799
+ .name[data-v-38ba675f] {
800
800
  flex: 1;
801
801
  overflow: hidden;
802
802
  text-overflow: ellipsis;
803
803
  white-space: nowrap;
804
804
  }
805
- .cancel-btn[data-v-3ed10092] {
805
+ .cancel-btn[data-v-38ba675f] {
806
806
  color: #969799;
807
807
  }
808
- .search-field[data-v-3ed10092] {
808
+ .search-field[data-v-38ba675f] {
809
809
  background: #fff;
810
810
  padding: 10px 16px;
811
811
  border-bottom: 1px solid #ebedf0;
@@ -817,27 +817,27 @@
817
817
  /* 防止压缩 */
818
818
  }
819
819
 
820
- .widget[data-v-67868eb2] {
820
+ .widget[data-v-09be9e95] {
821
821
  /* 统一字段间距 */
822
822
  }
823
- .widget[data-v-67868eb2] .van-cell {
823
+ .widget[data-v-09be9e95] .van-cell {
824
824
  align-items: center;
825
825
  }
826
- .widget[data-v-67868eb2] .van-field__label {
826
+ .widget[data-v-09be9e95] .van-field__label {
827
827
  width: 90px;
828
828
  flex: none;
829
829
  }
830
- .widget .readonly-field[data-v-67868eb2] {
830
+ .widget .readonly-field[data-v-09be9e95] {
831
831
  /* 添加必填星号对齐 */
832
832
  }
833
- .widget .readonly-field[data-v-67868eb2] .van-field__control {
833
+ .widget .readonly-field[data-v-09be9e95] .van-field__control {
834
834
  color: #323233;
835
835
  /* 修改文字颜色与普通字段一致 */
836
836
  padding-right: 16px;
837
837
  }
838
- .widget .readonly-field.van-field--required[data-v-67868eb2] .van-field__label::before {
838
+ .widget .readonly-field.van-field--required[data-v-09be9e95] .van-field__label::before {
839
839
  margin-right: 4px;
840
840
  }
841
- .widget .readonly-field[data-v-67868eb2] {
841
+ .widget .readonly-field[data-v-09be9e95] {
842
842
  margin: 4px 0;
843
843
  }
@@ -20279,7 +20279,7 @@ const _sfc_main$3 = {
20279
20279
  }
20280
20280
  };
20281
20281
  var TreePicker = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-6744b874"]]);
20282
- var CascaderPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.cascader-pop[data-v-3ed10092] {\r\n width: 100%;\r\n overflow: hidden;\n}\n.cascader-selector[data-v-3ed10092] {\r\n padding: 10px;\n}\n.search-buttons[data-v-3ed10092] {\r\n display: flex;\r\n gap: 10px;\n}\n.clear-btn[data-v-3ed10092] {\r\n background-color: #f2f3f5;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.confirm-btn[data-v-3ed10092] {\r\n background-color: #1989fa;\r\n color: white;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.no-results[data-v-3ed10092] {\r\n text-align: center;\r\n padding: 20px;\r\n color: #969799;\n}\n.cascader-header[data-v-3ed10092] {\r\n padding: 10px;\r\n border-bottom: 1px solid #ebedf0;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\n}\n.current-path[data-v-3ed10092] {\r\n flex: 1;\r\n font-size: 14px;\r\n color: #323233;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\n}\n.header-right[data-v-3ed10092] {\r\n display: flex;\r\n gap: 8px;\r\n margin-left: auto;\n}\n.cancel-btn[data-v-3ed10092] {\r\n color: #969799;\r\n margin-right: 5px;\n}\n.scroll-container[data-v-3ed10092] {\r\n height: calc(80vh - 150px);\r\n overflow-y: auto;\n}\n.cell-content[data-v-3ed10092] {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\n}\n.circle-selector[data-v-3ed10092] {\r\n width: 20px;\r\n height: 20px;\r\n border-radius: 50%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n transition: all 0.2s;\r\n flex-shrink: 0;\n}\n.circle-selector.selected[data-v-3ed10092] {\r\n background-color: #1989fa;\r\n border-color: #1989fa;\n}\n.circle-selector.selected .van-icon[data-v-3ed10092] {\r\n color: white;\r\n font-size: 14px;\n}\n.van-cell__right-icon[data-v-3ed10092] {\r\n color: #969799;\r\n font-size: 16px;\r\n margin-left: 8px;\n}\n.name[data-v-3ed10092] {\r\n flex: 1;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\n}\n.cancel-btn[data-v-3ed10092] {\r\n color: #969799;\n}\n.search-field[data-v-3ed10092] {\r\n background: #fff;\r\n padding: 10px 16px;\r\n border-bottom: 1px solid #ebedf0;\r\n position: sticky;\r\n top: 0;\r\n z-index: 999;\r\n margin-bottom: 10px;\r\n flex-shrink: 0;\r\n /* \u9632\u6B62\u538B\u7F29 */\n}\r\n")();
20282
+ var CascaderPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.cascader-pop[data-v-38ba675f] {\r\n width: 100%;\r\n overflow: hidden;\n}\n.cascader-selector[data-v-38ba675f] {\r\n padding: 10px;\n}\n.search-buttons[data-v-38ba675f] {\r\n display: flex;\r\n gap: 10px;\n}\n.clear-btn[data-v-38ba675f] {\r\n background-color: #f2f3f5;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.confirm-btn[data-v-38ba675f] {\r\n background-color: #1989fa;\r\n color: white;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.no-results[data-v-38ba675f] {\r\n text-align: center;\r\n padding: 20px;\r\n color: #969799;\n}\n.cascader-header[data-v-38ba675f] {\r\n padding: 10px;\r\n border-bottom: 1px solid #ebedf0;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\n}\n.current-path[data-v-38ba675f] {\r\n flex: 1;\r\n font-size: 14px;\r\n color: #323233;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\n}\n.header-right[data-v-38ba675f] {\r\n display: flex;\r\n gap: 8px;\r\n margin-left: auto;\n}\n.cancel-btn[data-v-38ba675f] {\r\n color: #969799;\r\n margin-right: 5px;\n}\n.scroll-container[data-v-38ba675f] {\r\n height: calc(80vh - 150px);\r\n overflow-y: auto;\n}\n.cell-content[data-v-38ba675f] {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\n}\n.circle-selector[data-v-38ba675f] {\r\n width: 20px;\r\n height: 20px;\r\n border-radius: 50%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n transition: all 0.2s;\r\n flex-shrink: 0;\n}\n.circle-selector.selected[data-v-38ba675f] {\r\n background-color: #1989fa;\r\n border-color: #1989fa;\n}\n.circle-selector.selected .van-icon[data-v-38ba675f] {\r\n color: white;\r\n font-size: 14px;\n}\n.van-cell__right-icon[data-v-38ba675f] {\r\n color: #969799;\r\n font-size: 16px;\r\n margin-left: 8px;\n}\n.name[data-v-38ba675f] {\r\n flex: 1;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\n}\n.cancel-btn[data-v-38ba675f] {\r\n color: #969799;\n}\n.search-field[data-v-38ba675f] {\r\n background: #fff;\r\n padding: 10px 16px;\r\n border-bottom: 1px solid #ebedf0;\r\n position: sticky;\r\n top: 0;\r\n z-index: 999;\r\n margin-bottom: 10px;\r\n flex-shrink: 0;\r\n /* \u9632\u6B62\u538B\u7F29 */\n}\r\n")();
20283
20283
  const _hoisted_1$1 = {
20284
20284
  class: "cascader-selector"
20285
20285
  };
@@ -20334,7 +20334,7 @@ const _sfc_main$2 = {
20334
20334
  },
20335
20335
  minLevel: {
20336
20336
  type: Number,
20337
- default: 1
20337
+ default: 0
20338
20338
  },
20339
20339
  maxLevel: {
20340
20340
  type: Number,
@@ -20355,7 +20355,7 @@ const _sfc_main$2 = {
20355
20355
  selectedNodeId: ""
20356
20356
  });
20357
20357
  const canSelect = (node) => {
20358
- return node.level >= props.minLevel && node.level <= props.maxLevel;
20358
+ return node.canCheck && node.level >= props.minLevel && node.level <= props.maxLevel;
20359
20359
  };
20360
20360
  const optionNodes = computed(() => {
20361
20361
  var _a;
@@ -20527,7 +20527,7 @@ const _sfc_main$2 = {
20527
20527
  };
20528
20528
  }
20529
20529
  };
20530
- var CascaderPop = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-3ed10092"]]);
20530
+ var CascaderPop = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-38ba675f"]]);
20531
20531
  const _sfc_main$1 = {
20532
20532
  __name: "CascaderPicker",
20533
20533
  props: {
@@ -20661,7 +20661,7 @@ const _sfc_main$1 = {
20661
20661
  };
20662
20662
  }
20663
20663
  };
20664
- var SingleApiPicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => '@charset "UTF-8";\n.widget[data-v-67868eb2] {\n /* \u7EDF\u4E00\u5B57\u6BB5\u95F4\u8DDD */\n}\n.widget[data-v-67868eb2] .van-cell {\n align-items: center;\n}\n.widget[data-v-67868eb2] .van-field__label {\n width: 90px;\n flex: none;\n}\n.widget .readonly-field[data-v-67868eb2] {\n /* \u6DFB\u52A0\u5FC5\u586B\u661F\u53F7\u5BF9\u9F50 */\n}\n.widget .readonly-field[data-v-67868eb2] .van-field__control {\n color: #323233;\n /* \u4FEE\u6539\u6587\u5B57\u989C\u8272\u4E0E\u666E\u901A\u5B57\u6BB5\u4E00\u81F4 */\n padding-right: 16px;\n}\n.widget .readonly-field.van-field--required[data-v-67868eb2] .van-field__label::before {\n margin-right: 4px;\n}\n.widget .readonly-field[data-v-67868eb2] {\n margin: 4px 0;\n}')();
20664
+ var SingleApiPicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => '@charset "UTF-8";\n.widget[data-v-09be9e95] {\n /* \u7EDF\u4E00\u5B57\u6BB5\u95F4\u8DDD */\n}\n.widget[data-v-09be9e95] .van-cell {\n align-items: center;\n}\n.widget[data-v-09be9e95] .van-field__label {\n width: 90px;\n flex: none;\n}\n.widget .readonly-field[data-v-09be9e95] {\n /* \u6DFB\u52A0\u5FC5\u586B\u661F\u53F7\u5BF9\u9F50 */\n}\n.widget .readonly-field[data-v-09be9e95] .van-field__control {\n color: #323233;\n /* \u4FEE\u6539\u6587\u5B57\u989C\u8272\u4E0E\u666E\u901A\u5B57\u6BB5\u4E00\u81F4 */\n padding-right: 16px;\n}\n.widget .readonly-field.van-field--required[data-v-09be9e95] .van-field__label::before {\n margin-right: 4px;\n}\n.widget .readonly-field[data-v-09be9e95] {\n margin: 4px 0;\n}')();
20665
20665
  const _hoisted_1 = {
20666
20666
  class: "widget"
20667
20667
  };
@@ -20692,10 +20692,9 @@ const _sfc_main = {
20692
20692
  type: String,
20693
20693
  default: ""
20694
20694
  },
20695
- query: {
20696
- type: Function,
20697
- default: () => {
20698
- }
20695
+ options: {
20696
+ type: Array,
20697
+ default: []
20699
20698
  }
20700
20699
  },
20701
20700
  emits: ["update:modelValue", "select"],
@@ -20711,15 +20710,13 @@ const _sfc_main = {
20711
20710
  isDisabled
20712
20711
  } = util.props2auth(props);
20713
20712
  const data2 = reactive({
20714
- isShow: false,
20715
- options: []
20713
+ isShow: false
20716
20714
  });
20717
20715
  const formatLabel = computed(() => {
20718
- let one = data2.options.find((item) => item.value == modelValue.value);
20716
+ let one = props.options.find((item) => item.value == modelValue.value);
20719
20717
  return one ? one.text : "";
20720
20718
  });
20721
20719
  onMounted(() => __async(this, null, function* () {
20722
- data2.options = yield props.query();
20723
20720
  }));
20724
20721
  const onShow = () => {
20725
20722
  if (isReadonly.value || isDisabled.value || isGone.value)
@@ -20760,7 +20757,7 @@ const _sfc_main = {
20760
20757
  position: "bottom"
20761
20758
  }, {
20762
20759
  default: withCtx(() => [createVNode(_component_van_picker, {
20763
- columns: data2.options,
20760
+ columns: props.options,
20764
20761
  onCancel,
20765
20762
  onConfirm
20766
20763
  }, null, 8, ["columns"])]),
@@ -20769,7 +20766,7 @@ const _sfc_main = {
20769
20766
  };
20770
20767
  }
20771
20768
  };
20772
- var SingleApiPicker = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-67868eb2"]]);
20769
+ var SingleApiPicker = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-09be9e95"]]);
20773
20770
  const secret_notify = () => {
20774
20771
  showNotify({ type: "danger", message: "\u4E25\u683C\u6267\u884C\u4FE1\u606F\u4FDD\u5BC6\u8981\u6C42\uFF0C\u5207\u5B9E\u9632\u8303\u4F01\u4E1A\u6CC4\u5BC6\u98CE\u9669", duration: 3e3 });
20775
20772
  };
@@ -20282,7 +20282,7 @@ var __async = (__this, __arguments, generator) => {
20282
20282
  }
20283
20283
  };
20284
20284
  var TreePicker = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-6744b874"]]);
20285
- var CascaderPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.cascader-pop[data-v-3ed10092] {\r\n width: 100%;\r\n overflow: hidden;\n}\n.cascader-selector[data-v-3ed10092] {\r\n padding: 10px;\n}\n.search-buttons[data-v-3ed10092] {\r\n display: flex;\r\n gap: 10px;\n}\n.clear-btn[data-v-3ed10092] {\r\n background-color: #f2f3f5;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.confirm-btn[data-v-3ed10092] {\r\n background-color: #1989fa;\r\n color: white;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.no-results[data-v-3ed10092] {\r\n text-align: center;\r\n padding: 20px;\r\n color: #969799;\n}\n.cascader-header[data-v-3ed10092] {\r\n padding: 10px;\r\n border-bottom: 1px solid #ebedf0;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\n}\n.current-path[data-v-3ed10092] {\r\n flex: 1;\r\n font-size: 14px;\r\n color: #323233;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\n}\n.header-right[data-v-3ed10092] {\r\n display: flex;\r\n gap: 8px;\r\n margin-left: auto;\n}\n.cancel-btn[data-v-3ed10092] {\r\n color: #969799;\r\n margin-right: 5px;\n}\n.scroll-container[data-v-3ed10092] {\r\n height: calc(80vh - 150px);\r\n overflow-y: auto;\n}\n.cell-content[data-v-3ed10092] {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\n}\n.circle-selector[data-v-3ed10092] {\r\n width: 20px;\r\n height: 20px;\r\n border-radius: 50%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n transition: all 0.2s;\r\n flex-shrink: 0;\n}\n.circle-selector.selected[data-v-3ed10092] {\r\n background-color: #1989fa;\r\n border-color: #1989fa;\n}\n.circle-selector.selected .van-icon[data-v-3ed10092] {\r\n color: white;\r\n font-size: 14px;\n}\n.van-cell__right-icon[data-v-3ed10092] {\r\n color: #969799;\r\n font-size: 16px;\r\n margin-left: 8px;\n}\n.name[data-v-3ed10092] {\r\n flex: 1;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\n}\n.cancel-btn[data-v-3ed10092] {\r\n color: #969799;\n}\n.search-field[data-v-3ed10092] {\r\n background: #fff;\r\n padding: 10px 16px;\r\n border-bottom: 1px solid #ebedf0;\r\n position: sticky;\r\n top: 0;\r\n z-index: 999;\r\n margin-bottom: 10px;\r\n flex-shrink: 0;\r\n /* \u9632\u6B62\u538B\u7F29 */\n}\r\n")();
20285
+ var CascaderPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.cascader-pop[data-v-38ba675f] {\r\n width: 100%;\r\n overflow: hidden;\n}\n.cascader-selector[data-v-38ba675f] {\r\n padding: 10px;\n}\n.search-buttons[data-v-38ba675f] {\r\n display: flex;\r\n gap: 10px;\n}\n.clear-btn[data-v-38ba675f] {\r\n background-color: #f2f3f5;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.confirm-btn[data-v-38ba675f] {\r\n background-color: #1989fa;\r\n color: white;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.no-results[data-v-38ba675f] {\r\n text-align: center;\r\n padding: 20px;\r\n color: #969799;\n}\n.cascader-header[data-v-38ba675f] {\r\n padding: 10px;\r\n border-bottom: 1px solid #ebedf0;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\n}\n.current-path[data-v-38ba675f] {\r\n flex: 1;\r\n font-size: 14px;\r\n color: #323233;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\n}\n.header-right[data-v-38ba675f] {\r\n display: flex;\r\n gap: 8px;\r\n margin-left: auto;\n}\n.cancel-btn[data-v-38ba675f] {\r\n color: #969799;\r\n margin-right: 5px;\n}\n.scroll-container[data-v-38ba675f] {\r\n height: calc(80vh - 150px);\r\n overflow-y: auto;\n}\n.cell-content[data-v-38ba675f] {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\n}\n.circle-selector[data-v-38ba675f] {\r\n width: 20px;\r\n height: 20px;\r\n border-radius: 50%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n transition: all 0.2s;\r\n flex-shrink: 0;\n}\n.circle-selector.selected[data-v-38ba675f] {\r\n background-color: #1989fa;\r\n border-color: #1989fa;\n}\n.circle-selector.selected .van-icon[data-v-38ba675f] {\r\n color: white;\r\n font-size: 14px;\n}\n.van-cell__right-icon[data-v-38ba675f] {\r\n color: #969799;\r\n font-size: 16px;\r\n margin-left: 8px;\n}\n.name[data-v-38ba675f] {\r\n flex: 1;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\n}\n.cancel-btn[data-v-38ba675f] {\r\n color: #969799;\n}\n.search-field[data-v-38ba675f] {\r\n background: #fff;\r\n padding: 10px 16px;\r\n border-bottom: 1px solid #ebedf0;\r\n position: sticky;\r\n top: 0;\r\n z-index: 999;\r\n margin-bottom: 10px;\r\n flex-shrink: 0;\r\n /* \u9632\u6B62\u538B\u7F29 */\n}\r\n")();
20286
20286
  const _hoisted_1$1 = {
20287
20287
  class: "cascader-selector"
20288
20288
  };
@@ -20337,7 +20337,7 @@ var __async = (__this, __arguments, generator) => {
20337
20337
  },
20338
20338
  minLevel: {
20339
20339
  type: Number,
20340
- default: 1
20340
+ default: 0
20341
20341
  },
20342
20342
  maxLevel: {
20343
20343
  type: Number,
@@ -20358,7 +20358,7 @@ var __async = (__this, __arguments, generator) => {
20358
20358
  selectedNodeId: ""
20359
20359
  });
20360
20360
  const canSelect = (node) => {
20361
- return node.level >= props.minLevel && node.level <= props.maxLevel;
20361
+ return node.canCheck && node.level >= props.minLevel && node.level <= props.maxLevel;
20362
20362
  };
20363
20363
  const optionNodes = vue.computed(() => {
20364
20364
  var _a;
@@ -20530,7 +20530,7 @@ var __async = (__this, __arguments, generator) => {
20530
20530
  };
20531
20531
  }
20532
20532
  };
20533
- var CascaderPop = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-3ed10092"]]);
20533
+ var CascaderPop = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-38ba675f"]]);
20534
20534
  const _sfc_main$1 = {
20535
20535
  __name: "CascaderPicker",
20536
20536
  props: {
@@ -20664,7 +20664,7 @@ var __async = (__this, __arguments, generator) => {
20664
20664
  };
20665
20665
  }
20666
20666
  };
20667
- var SingleApiPicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => '@charset "UTF-8";\n.widget[data-v-67868eb2] {\n /* \u7EDF\u4E00\u5B57\u6BB5\u95F4\u8DDD */\n}\n.widget[data-v-67868eb2] .van-cell {\n align-items: center;\n}\n.widget[data-v-67868eb2] .van-field__label {\n width: 90px;\n flex: none;\n}\n.widget .readonly-field[data-v-67868eb2] {\n /* \u6DFB\u52A0\u5FC5\u586B\u661F\u53F7\u5BF9\u9F50 */\n}\n.widget .readonly-field[data-v-67868eb2] .van-field__control {\n color: #323233;\n /* \u4FEE\u6539\u6587\u5B57\u989C\u8272\u4E0E\u666E\u901A\u5B57\u6BB5\u4E00\u81F4 */\n padding-right: 16px;\n}\n.widget .readonly-field.van-field--required[data-v-67868eb2] .van-field__label::before {\n margin-right: 4px;\n}\n.widget .readonly-field[data-v-67868eb2] {\n margin: 4px 0;\n}')();
20667
+ var SingleApiPicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => '@charset "UTF-8";\n.widget[data-v-09be9e95] {\n /* \u7EDF\u4E00\u5B57\u6BB5\u95F4\u8DDD */\n}\n.widget[data-v-09be9e95] .van-cell {\n align-items: center;\n}\n.widget[data-v-09be9e95] .van-field__label {\n width: 90px;\n flex: none;\n}\n.widget .readonly-field[data-v-09be9e95] {\n /* \u6DFB\u52A0\u5FC5\u586B\u661F\u53F7\u5BF9\u9F50 */\n}\n.widget .readonly-field[data-v-09be9e95] .van-field__control {\n color: #323233;\n /* \u4FEE\u6539\u6587\u5B57\u989C\u8272\u4E0E\u666E\u901A\u5B57\u6BB5\u4E00\u81F4 */\n padding-right: 16px;\n}\n.widget .readonly-field.van-field--required[data-v-09be9e95] .van-field__label::before {\n margin-right: 4px;\n}\n.widget .readonly-field[data-v-09be9e95] {\n margin: 4px 0;\n}')();
20668
20668
  const _hoisted_1 = {
20669
20669
  class: "widget"
20670
20670
  };
@@ -20695,10 +20695,9 @@ var __async = (__this, __arguments, generator) => {
20695
20695
  type: String,
20696
20696
  default: ""
20697
20697
  },
20698
- query: {
20699
- type: Function,
20700
- default: () => {
20701
- }
20698
+ options: {
20699
+ type: Array,
20700
+ default: []
20702
20701
  }
20703
20702
  },
20704
20703
  emits: ["update:modelValue", "select"],
@@ -20714,15 +20713,13 @@ var __async = (__this, __arguments, generator) => {
20714
20713
  isDisabled
20715
20714
  } = util.props2auth(props);
20716
20715
  const data2 = vue.reactive({
20717
- isShow: false,
20718
- options: []
20716
+ isShow: false
20719
20717
  });
20720
20718
  const formatLabel = vue.computed(() => {
20721
- let one = data2.options.find((item) => item.value == modelValue.value);
20719
+ let one = props.options.find((item) => item.value == modelValue.value);
20722
20720
  return one ? one.text : "";
20723
20721
  });
20724
20722
  vue.onMounted(() => __async(this, null, function* () {
20725
- data2.options = yield props.query();
20726
20723
  }));
20727
20724
  const onShow = () => {
20728
20725
  if (isReadonly.value || isDisabled.value || isGone.value)
@@ -20763,7 +20760,7 @@ var __async = (__this, __arguments, generator) => {
20763
20760
  position: "bottom"
20764
20761
  }, {
20765
20762
  default: vue.withCtx(() => [vue.createVNode(_component_van_picker, {
20766
- columns: data2.options,
20763
+ columns: props.options,
20767
20764
  onCancel,
20768
20765
  onConfirm
20769
20766
  }, null, 8, ["columns"])]),
@@ -20772,7 +20769,7 @@ var __async = (__this, __arguments, generator) => {
20772
20769
  };
20773
20770
  }
20774
20771
  };
20775
- var SingleApiPicker = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-67868eb2"]]);
20772
+ var SingleApiPicker = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-09be9e95"]]);
20776
20773
  const secret_notify = () => {
20777
20774
  showNotify({ type: "danger", message: "\u4E25\u683C\u6267\u884C\u4FE1\u606F\u4FDD\u5BC6\u8981\u6C42\uFF0C\u5207\u5B9E\u9632\u8303\u4F01\u4E1A\u6CC4\u5BC6\u98CE\u9669", duration: 3e3 });
20778
20775
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "widget.qw",
3
3
  "private": false,
4
- "version": "1.0.19",
4
+ "version": "1.0.21",
5
5
  "description": "marqstree Vue3组件库",
6
6
  "main": "build/widget.qw.es.js",
7
7
  "keywords": [
@@ -75,7 +75,7 @@ const props = defineProps({
75
75
  },
76
76
  minLevel:{
77
77
  type:Number,
78
- default: 1
78
+ default: 0
79
79
  },
80
80
  maxLevel:{
81
81
  type:Number,
@@ -99,7 +99,7 @@ const data = reactive({
99
99
  })
100
100
 
101
101
  const canSelect=(node)=>{
102
- return node.level>=props.minLevel && node.level<=props.maxLevel
102
+ return node.canCheck && node.level>=props.minLevel && node.level<=props.maxLevel
103
103
  }
104
104
 
105
105
  // 待选节点列表
@@ -3,7 +3,7 @@
3
3
  <van-field v-model="formatLabel" is-link :label="props.label" :placeholder="props.placeholder" readonly
4
4
  :required="isRequired" :disabled="isDisabled" @click="onShow" />
5
5
  <van-popup v-model:show="data.isShow" destroy-on-close round position="bottom">
6
- <van-picker :columns="data.options" @cancel="onCancel" @confirm="onConfirm" />
6
+ <van-picker :columns="props.options" @cancel="onCancel" @confirm="onConfirm" />
7
7
  </van-popup>
8
8
  </div>
9
9
  </template>
@@ -38,9 +38,9 @@ const props = defineProps({
38
38
  type: String,
39
39
  default: "",
40
40
  },
41
- query: {
42
- type: Function,
43
- default: () => { }
41
+ options: {
42
+ type:Array,
43
+ default: []
44
44
  }
45
45
  })
46
46
 
@@ -48,16 +48,14 @@ const emit = defineEmits(['update:modelValue', 'select'])
48
48
  const modelValue = useVModel(props, 'modelValue', emit)
49
49
  const { isRequired, isReadonly, isGone, isDisabled } = util.props2auth(props);
50
50
  const data = reactive({
51
- isShow: false,
52
- options: []
51
+ isShow: false
53
52
  })
54
53
  const formatLabel = computed(() => {
55
- let one = data.options.find(item => item.value == modelValue.value)
54
+ let one = props.options.find(item => item.value == modelValue.value)
56
55
  return one ? one.text : ''
57
56
  })
58
57
 
59
58
  onMounted(async () => {
60
- data.options = await props.query()
61
59
  })
62
60
 
63
61
  const onShow=()=>{