@deot/vc-components 1.0.60 → 1.0.61

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/index.cjs CHANGED
@@ -121,9 +121,9 @@ const props$1u = {
121
121
 
122
122
  /** @jsxImportSource vue */
123
123
 
124
- const COMPONENT_NAME$2a = 'vc-action-sheet';
124
+ const COMPONENT_NAME$2b = 'vc-action-sheet';
125
125
  const ActionSheet = /* @__PURE__ */ vue.defineComponent({
126
- name: COMPONENT_NAME$2a,
126
+ name: COMPONENT_NAME$2b,
127
127
  props: props$1u,
128
128
  setup(props, {
129
129
  slots
@@ -200,9 +200,9 @@ const isWheel = (el) => {
200
200
 
201
201
  /** @jsxImportSource vue */
202
202
 
203
- const COMPONENT_NAME$29 = 'vc-affix';
203
+ const COMPONENT_NAME$2a = 'vc-affix';
204
204
  const Affix = /* @__PURE__ */ vue.defineComponent({
205
- name: COMPONENT_NAME$29,
205
+ name: COMPONENT_NAME$2a,
206
206
  emits: ['update:modelValue'],
207
207
  props: props$1t,
208
208
  setup(props, {
@@ -534,9 +534,9 @@ const IconManager = new Manager();
534
534
 
535
535
  /** @jsxImportSource vue */
536
536
 
537
- const COMPONENT_NAME$28 = 'vc-icon';
537
+ const COMPONENT_NAME$29 = 'vc-icon';
538
538
  const Icon = /* @__PURE__ */ vue.defineComponent({
539
- name: COMPONENT_NAME$28,
539
+ name: COMPONENT_NAME$29,
540
540
  props: props$1r,
541
541
  setup(props) {
542
542
  const viewBox = vue.ref('0 0 1024 1024');
@@ -735,9 +735,9 @@ const useTransition = () => {
735
735
  };
736
736
  };
737
737
 
738
- const COMPONENT_NAME$27 = "vc-transition";
738
+ const COMPONENT_NAME$28 = "vc-transition";
739
739
  const Transition = vue.defineComponent({
740
- name: COMPONENT_NAME$27,
740
+ name: COMPONENT_NAME$28,
741
741
  props: props$1q,
742
742
  // 当不声明emits的情况下,事件存在于attrs中
743
743
  inheritAttrs: false,
@@ -758,9 +758,9 @@ const Transition = vue.defineComponent({
758
758
  }
759
759
  });
760
760
 
761
- const COMPONENT_NAME$26 = "vc-transition-collapse";
761
+ const COMPONENT_NAME$27 = "vc-transition-collapse";
762
762
  const TransitionCollapse = vue.defineComponent({
763
- name: COMPONENT_NAME$26,
763
+ name: COMPONENT_NAME$27,
764
764
  props: props$1q,
765
765
  // 当不声明emits的情况下,事件存在于attrs中
766
766
  inheritAttrs: false,
@@ -875,9 +875,9 @@ const TransitionCollapse = vue.defineComponent({
875
875
  }
876
876
  });
877
877
 
878
- const COMPONENT_NAME$25 = "vc-transition-fade";
878
+ const COMPONENT_NAME$26 = "vc-transition-fade";
879
879
  const TransitionFade = vue.defineComponent({
880
- name: COMPONENT_NAME$25,
880
+ name: COMPONENT_NAME$26,
881
881
  props: {
882
882
  ...props$1q,
883
883
  // inheritAttrs必须是false
@@ -912,9 +912,9 @@ const TransitionFade = vue.defineComponent({
912
912
  }
913
913
  });
914
914
 
915
- const COMPONENT_NAME$24 = "vc-transition-scale";
915
+ const COMPONENT_NAME$25 = "vc-transition-scale";
916
916
  const TransitionScale = vue.defineComponent({
917
- name: COMPONENT_NAME$24,
917
+ name: COMPONENT_NAME$25,
918
918
  props: {
919
919
  ...props$1q,
920
920
  mode: {
@@ -954,9 +954,9 @@ const TransitionScale = vue.defineComponent({
954
954
  }
955
955
  });
956
956
 
957
- const COMPONENT_NAME$23 = "vc-transition-slide";
957
+ const COMPONENT_NAME$24 = "vc-transition-slide";
958
958
  const TransitionSlide = vue.defineComponent({
959
- name: COMPONENT_NAME$23,
959
+ name: COMPONENT_NAME$24,
960
960
  props: {
961
961
  ...props$1q,
962
962
  mode: {
@@ -996,9 +996,9 @@ const TransitionSlide = vue.defineComponent({
996
996
  }
997
997
  });
998
998
 
999
- const COMPONENT_NAME$22 = "vc-transition-zoom";
999
+ const COMPONENT_NAME$23 = "vc-transition-zoom";
1000
1000
  const TransitionZoom = vue.defineComponent({
1001
- name: COMPONENT_NAME$22,
1001
+ name: COMPONENT_NAME$23,
1002
1002
  props: {
1003
1003
  ...props$1q,
1004
1004
  mode: {
@@ -1040,7 +1040,7 @@ const TransitionZoom = vue.defineComponent({
1040
1040
 
1041
1041
  /** @jsxImportSource vue */
1042
1042
 
1043
- const COMPONENT_NAME$21 = 'vc-alert';
1043
+ const COMPONENT_NAME$22 = 'vc-alert';
1044
1044
 
1045
1045
  // [color, borderColor, backgroundColor], -> CSS
1046
1046
  const THEME_MAP = {
@@ -1050,7 +1050,7 @@ const THEME_MAP = {
1050
1050
  warning: ['#ffbf00', '#ffe58f', '#fffbe6']
1051
1051
  };
1052
1052
  const Alert = /* @__PURE__ */ vue.defineComponent({
1053
- name: COMPONENT_NAME$21,
1053
+ name: COMPONENT_NAME$22,
1054
1054
  props: props$1s,
1055
1055
  setup(props, {
1056
1056
  slots,
@@ -1156,9 +1156,9 @@ const props$1p = {
1156
1156
  /** @jsxImportSource vue */
1157
1157
 
1158
1158
  const isTouch = typeof document !== 'undefined' && 'ontouchend' in document;
1159
- const COMPONENT_NAME$20 = 'vc-artboard';
1159
+ const COMPONENT_NAME$21 = 'vc-artboard';
1160
1160
  const Artboard = /* @__PURE__ */ vue.defineComponent({
1161
- name: COMPONENT_NAME$20,
1161
+ name: COMPONENT_NAME$21,
1162
1162
  props: props$1p,
1163
1163
  setup(props, {
1164
1164
  emit,
@@ -1386,9 +1386,9 @@ const props$1o = {
1386
1386
 
1387
1387
  /** @jsxImportSource vue */
1388
1388
 
1389
- const COMPONENT_NAME$1$ = 'vc-spin';
1389
+ const COMPONENT_NAME$20 = 'vc-spin';
1390
1390
  const Spin = /* @__PURE__ */ vue.defineComponent({
1391
- name: COMPONENT_NAME$1$,
1391
+ name: COMPONENT_NAME$20,
1392
1392
  props: props$1o,
1393
1393
  setup(props, {
1394
1394
  slots
@@ -1439,9 +1439,9 @@ const props$1n = {
1439
1439
  exclude: RegExp
1440
1440
  };
1441
1441
 
1442
- const COMPONENT_NAME$1_ = "vc-debounce";
1442
+ const COMPONENT_NAME$1$ = "vc-debounce";
1443
1443
  const Debounce = vue.defineComponent({
1444
- name: COMPONENT_NAME$1_,
1444
+ name: COMPONENT_NAME$1$,
1445
1445
  props: props$1n,
1446
1446
  /**
1447
1447
  * 不声明emits使得事件被透传放入attrs中, 这样可以让所有的事件透传
@@ -1514,9 +1514,9 @@ const props$1m = {
1514
1514
 
1515
1515
  /** @jsxImportSource vue */
1516
1516
 
1517
- const COMPONENT_NAME$1Z = 'vc-button';
1517
+ const COMPONENT_NAME$1_ = 'vc-button';
1518
1518
  const Button = /* @__PURE__ */ vue.defineComponent({
1519
- name: COMPONENT_NAME$1Z,
1519
+ name: COMPONENT_NAME$1_,
1520
1520
  emits: ['click'],
1521
1521
  props: props$1m,
1522
1522
  setup(props, {
@@ -1600,9 +1600,9 @@ const props$1l = {
1600
1600
 
1601
1601
  /** @jsxImportSource vue */
1602
1602
 
1603
- const COMPONENT_NAME$1Y = 'vc-button-group';
1603
+ const COMPONENT_NAME$1Z = 'vc-button-group';
1604
1604
  const ButtonGroup = /* @__PURE__ */ vue.defineComponent({
1605
- name: COMPONENT_NAME$1Y,
1605
+ name: COMPONENT_NAME$1Z,
1606
1606
  props: props$1l,
1607
1607
  setup(props, {
1608
1608
  slots
@@ -1636,9 +1636,9 @@ const props$1k = {
1636
1636
 
1637
1637
  /** @jsxImportSource vue */
1638
1638
 
1639
- const COMPONENT_NAME$1X = 'vc-calendar';
1639
+ const COMPONENT_NAME$1Y = 'vc-calendar';
1640
1640
  const Calendar = /* @__PURE__ */ vue.defineComponent({
1641
- name: COMPONENT_NAME$1X,
1641
+ name: COMPONENT_NAME$1Y,
1642
1642
  props: props$1k,
1643
1643
  setup(props, {
1644
1644
  slots
@@ -1676,9 +1676,9 @@ const props$1j = {
1676
1676
 
1677
1677
  /** @jsxImportSource vue */
1678
1678
 
1679
- const COMPONENT_NAME$1W = 'vc-card';
1679
+ const COMPONENT_NAME$1X = 'vc-card';
1680
1680
  const Card = /* @__PURE__ */ vue.defineComponent({
1681
- name: COMPONENT_NAME$1W,
1681
+ name: COMPONENT_NAME$1X,
1682
1682
  props: props$1j,
1683
1683
  setup(props, {
1684
1684
  slots
@@ -1714,9 +1714,9 @@ const props$1i = {
1714
1714
 
1715
1715
  /** @jsxImportSource vue */
1716
1716
 
1717
- const COMPONENT_NAME$1V = 'vc-carousel';
1717
+ const COMPONENT_NAME$1W = 'vc-carousel';
1718
1718
  const Carousel = /* @__PURE__ */ vue.defineComponent({
1719
- name: COMPONENT_NAME$1V,
1719
+ name: COMPONENT_NAME$1W,
1720
1720
  props: props$1i,
1721
1721
  setup(props, {
1722
1722
  slots
@@ -2010,9 +2010,9 @@ const useNativeEmitter = (input, expose) => {
2010
2010
 
2011
2011
  /** @jsxImportSource vue */
2012
2012
 
2013
- const COMPONENT_NAME$1U = 'vc-input';
2013
+ const COMPONENT_NAME$1V = 'vc-input';
2014
2014
  const Input = /* @__PURE__ */ vue.defineComponent({
2015
- name: COMPONENT_NAME$1U,
2015
+ name: COMPONENT_NAME$1V,
2016
2016
  inheritAttrs: false,
2017
2017
  props: {
2018
2018
  ...props$1h,
@@ -2347,9 +2347,9 @@ const useInputNumber = () => {
2347
2347
 
2348
2348
  /** @jsxImportSource vue */
2349
2349
 
2350
- const COMPONENT_NAME$1T = 'vc-input-number';
2350
+ const COMPONENT_NAME$1U = 'vc-input-number';
2351
2351
  const InputNumber = /* @__PURE__ */ vue.defineComponent({
2352
- name: COMPONENT_NAME$1T,
2352
+ name: COMPONENT_NAME$1U,
2353
2353
  props: props$1g,
2354
2354
  inheritAttrs: false,
2355
2355
  setup(props, {
@@ -2413,9 +2413,9 @@ const props$1f = {
2413
2413
 
2414
2414
  /** @jsxImportSource vue */
2415
2415
 
2416
- const COMPONENT_NAME$1S = 'vc-input-search';
2416
+ const COMPONENT_NAME$1T = 'vc-input-search';
2417
2417
  const InputSearch = /* @__PURE__ */ vue.defineComponent({
2418
- name: COMPONENT_NAME$1S,
2418
+ name: COMPONENT_NAME$1T,
2419
2419
  props: props$1f,
2420
2420
  inheritAttrs: false,
2421
2421
  setup(props, {
@@ -2808,9 +2808,9 @@ const props$1c = {
2808
2808
  }
2809
2809
  };
2810
2810
 
2811
- const COMPONENT_NAME$1R = "vc-customer";
2811
+ const COMPONENT_NAME$1S = "vc-customer";
2812
2812
  const Customer = vue.defineComponent({
2813
- name: COMPONENT_NAME$1R,
2813
+ name: COMPONENT_NAME$1S,
2814
2814
  props: props$1c,
2815
2815
  setup(props, context) {
2816
2816
  return () => vue.h(() => {
@@ -2886,7 +2886,7 @@ class PortalLeaf {
2886
2886
  }
2887
2887
  }
2888
2888
 
2889
- const COMPONENT_NAME$1Q = "vc-portal";
2889
+ const COMPONENT_NAME$1R = "vc-portal";
2890
2890
  class Portal {
2891
2891
  /**
2892
2892
  * 清理Portals类型组件
@@ -2936,7 +2936,7 @@ class Portal {
2936
2936
  this.wrapper = wrapper;
2937
2937
  this.globalOptions = {
2938
2938
  ...options,
2939
- name: options?.name || wrapper.name || Utils__namespace.getUid(COMPONENT_NAME$1Q)
2939
+ name: options?.name || wrapper.name || Utils__namespace.getUid(COMPONENT_NAME$1R)
2940
2940
  };
2941
2941
  }
2942
2942
  popup(propsData, options) {
@@ -3034,7 +3034,7 @@ class Portal {
3034
3034
  ...rest
3035
3035
  } = options;
3036
3036
  let useAllNodes = fragment;
3037
- const name = multiple ? `${name$}__${Utils__namespace.getUid(COMPONENT_NAME$1Q)}` : name$;
3037
+ const name = multiple ? `${name$}__${Utils__namespace.getUid(COMPONENT_NAME$1R)}` : name$;
3038
3038
  const container = document.createElement(tag);
3039
3039
  const root = typeof el === "object" ? el : document.querySelector(el || "body");
3040
3040
  !alive && Portal.leafs.get(name)?.destroy();
@@ -3068,7 +3068,7 @@ class Portal {
3068
3068
  } else {
3069
3069
  const wrapper = this.wrapper;
3070
3070
  const app = vue.createApp({
3071
- name: COMPONENT_NAME$1Q,
3071
+ name: COMPONENT_NAME$1R,
3072
3072
  parent,
3073
3073
  setup() {
3074
3074
  if (alive) {
@@ -3179,13 +3179,13 @@ const props$1b = {
3179
3179
  }
3180
3180
  };
3181
3181
 
3182
- const COMPONENT_NAME$1P = 'vc-portal-view';
3182
+ const COMPONENT_NAME$1Q = 'vc-portal-view';
3183
3183
 
3184
3184
  /**
3185
3185
  * 写法不同,但与vue@2.x 保持一致
3186
3186
  */
3187
3187
  const PortalView = /* @__PURE__ */ vue.defineComponent({
3188
- name: COMPONENT_NAME$1P,
3188
+ name: COMPONENT_NAME$1Q,
3189
3189
  props: props$1b,
3190
3190
  setup(props, {
3191
3191
  slots
@@ -3205,9 +3205,9 @@ const PortalView = /* @__PURE__ */ vue.defineComponent({
3205
3205
 
3206
3206
  /** @jsxImportSource vue */
3207
3207
 
3208
- const COMPONENT_NAME$1O = 'vc-popover-wrapper';
3208
+ const COMPONENT_NAME$1P = 'vc-popover-wrapper';
3209
3209
  const PopoverWrapper = /* @__PURE__ */ vue.defineComponent({
3210
- name: COMPONENT_NAME$1O,
3210
+ name: COMPONENT_NAME$1P,
3211
3211
  props: props$1e,
3212
3212
  emits: ['portal-fulfilled', 'close'],
3213
3213
  setup(props, {
@@ -3465,9 +3465,9 @@ const PopoverPortal = new Portal(PopoverWrapper, {
3465
3465
 
3466
3466
  /** @jsxImportSource vue */
3467
3467
 
3468
- const COMPONENT_NAME$1N = 'vc-popover';
3468
+ const COMPONENT_NAME$1O = 'vc-popover';
3469
3469
  const Popover$1 = /* @__PURE__ */ vue.defineComponent({
3470
- name: COMPONENT_NAME$1N,
3470
+ name: COMPONENT_NAME$1O,
3471
3471
  props: props$1d,
3472
3472
  emits: ['update:modelValue', 'visible-change', 'ready', 'close'],
3473
3473
  setup(props, {
@@ -3611,9 +3611,9 @@ const Popover = Object.assign(Popover$1, {
3611
3611
 
3612
3612
  /** @jsxImportSource vue */
3613
3613
 
3614
- const COMPONENT_NAME$1M = 'vc-cascader-column';
3614
+ const COMPONENT_NAME$1N = 'vc-cascader-column';
3615
3615
  const CascaderColumn = /* @__PURE__ */ vue.defineComponent({
3616
- name: COMPONENT_NAME$1M,
3616
+ name: COMPONENT_NAME$1N,
3617
3617
  emits: ['click', 'change'],
3618
3618
  props: {
3619
3619
  data: {
@@ -3821,9 +3821,9 @@ const props$19 = {
3821
3821
 
3822
3822
  /** @jsxImportSource vue */
3823
3823
 
3824
- const COMPONENT_NAME$1L = 'vc-cascader';
3824
+ const COMPONENT_NAME$1M = 'vc-cascader';
3825
3825
  const Cascader = /* @__PURE__ */ vue.defineComponent({
3826
- name: COMPONENT_NAME$1L,
3826
+ name: COMPONENT_NAME$1M,
3827
3827
  inheritAttrs: false,
3828
3828
  props: props$19,
3829
3829
  emits: ['update:modelValue', 'visible-change', 'ready', 'change', 'close'],
@@ -4175,9 +4175,9 @@ const props$18 = {
4175
4175
 
4176
4176
  /** @jsxImportSource vue */
4177
4177
 
4178
- const COMPONENT_NAME$1K = 'vc-chart';
4178
+ const COMPONENT_NAME$1L = 'vc-chart';
4179
4179
  const Chart = /* @__PURE__ */ vue.defineComponent({
4180
- name: COMPONENT_NAME$1K,
4180
+ name: COMPONENT_NAME$1L,
4181
4181
  props: props$18,
4182
4182
  emits: [...EVENTS, 'ready'],
4183
4183
  setup(props, {
@@ -4416,9 +4416,9 @@ const useCheckbox = () => {
4416
4416
 
4417
4417
  /** @jsxImportSource vue */
4418
4418
 
4419
- const COMPONENT_NAME$1J = 'vc-checkbox';
4419
+ const COMPONENT_NAME$1K = 'vc-checkbox';
4420
4420
  const Checkbox = /* @__PURE__ */ vue.defineComponent({
4421
- name: COMPONENT_NAME$1J,
4421
+ name: COMPONENT_NAME$1K,
4422
4422
  props: props$17,
4423
4423
  emits: ['update:modelValue', 'change'],
4424
4424
  setup(props, {
@@ -4505,9 +4505,9 @@ const useCheckboxGroup = () => {
4505
4505
 
4506
4506
  /** @jsxImportSource vue */
4507
4507
 
4508
- const COMPONENT_NAME$1I = 'vc-checkbox-group';
4508
+ const COMPONENT_NAME$1J = 'vc-checkbox-group';
4509
4509
  const CheckboxGroup = /* @__PURE__ */ vue.defineComponent({
4510
- name: COMPONENT_NAME$1I,
4510
+ name: COMPONENT_NAME$1J,
4511
4511
  props: props$16,
4512
4512
  emits: ['update:modelValue', 'change'],
4513
4513
  setup(props, {
@@ -4525,9 +4525,9 @@ const CheckboxGroup = /* @__PURE__ */ vue.defineComponent({
4525
4525
 
4526
4526
  /** @jsxImportSource vue */
4527
4527
 
4528
- const COMPONENT_NAME$1H = 'vcm-checkbox';
4528
+ const COMPONENT_NAME$1I = 'vcm-checkbox';
4529
4529
  const MCheckbox = /* @__PURE__ */ vue.defineComponent({
4530
- name: COMPONENT_NAME$1H,
4530
+ name: COMPONENT_NAME$1I,
4531
4531
  props: props$17,
4532
4532
  emits: ['update:modelValue', 'change'],
4533
4533
  setup(props, {
@@ -4567,9 +4567,9 @@ const MCheckbox = /* @__PURE__ */ vue.defineComponent({
4567
4567
 
4568
4568
  /** @jsxImportSource vue */
4569
4569
 
4570
- const COMPONENT_NAME$1G = 'vcm-checkbox-group';
4570
+ const COMPONENT_NAME$1H = 'vcm-checkbox-group';
4571
4571
  const MCheckboxGroup = /* @__PURE__ */ vue.defineComponent({
4572
- name: COMPONENT_NAME$1G,
4572
+ name: COMPONENT_NAME$1H,
4573
4573
  props: props$16,
4574
4574
  emits: ['update:modelValue', 'change'],
4575
4575
  setup(props, {
@@ -4623,9 +4623,9 @@ const props$15 = {
4623
4623
 
4624
4624
  /** @jsxImportSource vue */
4625
4625
 
4626
- const COMPONENT_NAME$1F = 'vc-message';
4626
+ const COMPONENT_NAME$1G = 'vc-message';
4627
4627
  const MessageView = /* @__PURE__ */ vue.defineComponent({
4628
- name: COMPONENT_NAME$1F,
4628
+ name: COMPONENT_NAME$1G,
4629
4629
  emits: ['before-close', 'close', 'portal-fulfilled'],
4630
4630
  props: props$15,
4631
4631
  setup(props, {
@@ -4874,9 +4874,9 @@ const useClipboard = (done) => {
4874
4874
  return () => vue.h(props.tag, { onClick: handleClick, class: "vc-clipboard" }, slots?.default?.());
4875
4875
  };
4876
4876
 
4877
- const COMPONENT_NAME$1E = "vc-clipboard";
4877
+ const COMPONENT_NAME$1F = "vc-clipboard";
4878
4878
  const Clipboard$1 = vue.defineComponent({
4879
- name: COMPONENT_NAME$1E,
4879
+ name: COMPONENT_NAME$1F,
4880
4880
  props: props$14,
4881
4881
  setup() {
4882
4882
  return useClipboard((content) => Message.success({ content }));
@@ -4916,9 +4916,9 @@ const MTransitionZoom = TransitionZoom;
4916
4916
 
4917
4917
  /** @jsxImportSource vue */
4918
4918
 
4919
- const COMPONENT_NAME$1D = 'vcm-toast';
4919
+ const COMPONENT_NAME$1E = 'vcm-toast';
4920
4920
  const MToastView = /* @__PURE__ */ vue.defineComponent({
4921
- name: COMPONENT_NAME$1D,
4921
+ name: COMPONENT_NAME$1E,
4922
4922
  emits: ['close', 'portal-fulfilled'],
4923
4923
  props: props$13,
4924
4924
  setup(props, {
@@ -5020,9 +5020,9 @@ const warning$2 = create$3({ mode: "warning" });
5020
5020
  const error$2 = create$3({ mode: "error" });
5021
5021
  const MToast = Object.assign(MToastView, { destroy: destroy$4, info: info$2, success: success$2, loading, warning: warning$2, error: error$2 });
5022
5022
 
5023
- const COMPONENT_NAME$1C = "vcm-clipboard";
5023
+ const COMPONENT_NAME$1D = "vcm-clipboard";
5024
5024
  const MClipboard$1 = vue.defineComponent({
5025
- name: COMPONENT_NAME$1C,
5025
+ name: COMPONENT_NAME$1D,
5026
5026
  props: props$14,
5027
5027
  setup() {
5028
5028
  return useClipboard((content) => MToast.info({ content }));
@@ -5054,9 +5054,9 @@ const props$12 = {
5054
5054
  }
5055
5055
  };
5056
5056
 
5057
- const COMPONENT_NAME$1B = "vc-collapse";
5057
+ const COMPONENT_NAME$1C = "vc-collapse";
5058
5058
  const Collapse = vue.defineComponent({
5059
- name: COMPONENT_NAME$1B,
5059
+ name: COMPONENT_NAME$1C,
5060
5060
  props: props$12,
5061
5061
  emits: ["update:moodelValue", "change"],
5062
5062
  setup(props, { slots, emit }) {
@@ -5173,9 +5173,9 @@ const props$10 = {
5173
5173
  function _isSlot$3(s) {
5174
5174
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !vue.isVNode(s);
5175
5175
  }
5176
- const COMPONENT_NAME$1A = 'vc-expand';
5176
+ const COMPONENT_NAME$1B = 'vc-expand';
5177
5177
  const Expand$1 = /* @__PURE__ */ vue.defineComponent({
5178
- name: COMPONENT_NAME$1A,
5178
+ name: COMPONENT_NAME$1B,
5179
5179
  props: props$10,
5180
5180
  setup(props, {
5181
5181
  slots
@@ -5205,9 +5205,9 @@ const Expand$1 = /* @__PURE__ */ vue.defineComponent({
5205
5205
 
5206
5206
  /** @jsxImportSource vue */
5207
5207
 
5208
- const COMPONENT_NAME$1z = 'vc-collapse-item';
5208
+ const COMPONENT_NAME$1A = 'vc-collapse-item';
5209
5209
  const CollapseItem = /* @__PURE__ */ vue.defineComponent({
5210
- name: COMPONENT_NAME$1z,
5210
+ name: COMPONENT_NAME$1A,
5211
5211
  props: props$11,
5212
5212
  setup(props, {
5213
5213
  slots,
@@ -5282,9 +5282,9 @@ const props$$ = {
5282
5282
 
5283
5283
  /** @jsxImportSource vue */
5284
5284
 
5285
- const COMPONENT_NAME$1y = 'vc-color-picker';
5285
+ const COMPONENT_NAME$1z = 'vc-color-picker';
5286
5286
  const ColorPicker = /* @__PURE__ */ vue.defineComponent({
5287
- name: COMPONENT_NAME$1y,
5287
+ name: COMPONENT_NAME$1z,
5288
5288
  props: props$$,
5289
5289
  setup(props, {
5290
5290
  slots
@@ -5347,9 +5347,9 @@ const formatter = (format, arr) => {
5347
5347
  function _isSlot$2(s) {
5348
5348
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !vue.isVNode(s);
5349
5349
  }
5350
- const COMPONENT_NAME$1x = 'vc-countdown';
5350
+ const COMPONENT_NAME$1y = 'vc-countdown';
5351
5351
  const Countdown = /* @__PURE__ */ vue.defineComponent({
5352
- name: COMPONENT_NAME$1x,
5352
+ name: COMPONENT_NAME$1y,
5353
5353
  props: props$_,
5354
5354
  emits: ['change', 'complete', 'error'],
5355
5355
  setup(props, {
@@ -5616,9 +5616,9 @@ const value2separated = (value, options) => {
5616
5616
  function _isSlot$1(s) {
5617
5617
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !vue.isVNode(s);
5618
5618
  }
5619
- const COMPONENT_NAME$1w = 'vc-counter';
5619
+ const COMPONENT_NAME$1x = 'vc-counter';
5620
5620
  const Counter = /* @__PURE__ */ vue.defineComponent({
5621
- name: COMPONENT_NAME$1w,
5621
+ name: COMPONENT_NAME$1x,
5622
5622
  props: props$Z,
5623
5623
  emits: ['begin', 'complete', 'change'],
5624
5624
  setup(props, {
@@ -6881,9 +6881,9 @@ const getTimeType = type => {
6881
6881
  }
6882
6882
  return view;
6883
6883
  };
6884
- const COMPONENT_NAME$1v = 'vc-date-confirm';
6884
+ const COMPONENT_NAME$1w = 'vc-date-confirm';
6885
6885
  const Confirm = /* @__PURE__ */ vue.defineComponent({
6886
- name: COMPONENT_NAME$1v,
6886
+ name: COMPONENT_NAME$1w,
6887
6887
  props: {
6888
6888
  showTime: {
6889
6889
  type: Boolean,
@@ -6947,9 +6947,9 @@ const Confirm = /* @__PURE__ */ vue.defineComponent({
6947
6947
 
6948
6948
  /** @jsxImportSource vue */
6949
6949
 
6950
- const COMPONENT_NAME$1u = 'vc-date-header';
6950
+ const COMPONENT_NAME$1v = 'vc-date-header';
6951
6951
  const DateHeader = /* @__PURE__ */ vue.defineComponent({
6952
- name: COMPONENT_NAME$1u,
6952
+ name: COMPONENT_NAME$1v,
6953
6953
  props: {
6954
6954
  panelDate: Date,
6955
6955
  showNext: {
@@ -7033,9 +7033,9 @@ const DateHeader = /* @__PURE__ */ vue.defineComponent({
7033
7033
 
7034
7034
  /** @jsxImportSource vue */
7035
7035
 
7036
- const COMPONENT_NAME$1t = 'vc-date-table';
7036
+ const COMPONENT_NAME$1u = 'vc-date-table';
7037
7037
  const DateTable = /* @__PURE__ */ vue.defineComponent({
7038
- name: COMPONENT_NAME$1t,
7038
+ name: COMPONENT_NAME$1u,
7039
7039
  props: {
7040
7040
  value: Array,
7041
7041
  firstDayOfWeek: {
@@ -7244,9 +7244,9 @@ const DateTable = /* @__PURE__ */ vue.defineComponent({
7244
7244
 
7245
7245
  /** @jsxImportSource vue */
7246
7246
 
7247
- const COMPONENT_NAME$1s = 'vc-month-table';
7247
+ const COMPONENT_NAME$1t = 'vc-month-table';
7248
7248
  const MonthTable = /* @__PURE__ */ vue.defineComponent({
7249
- name: COMPONENT_NAME$1s,
7249
+ name: COMPONENT_NAME$1t,
7250
7250
  props: {
7251
7251
  value: Array,
7252
7252
  panelDate: Date,
@@ -7378,7 +7378,7 @@ const MonthTable = /* @__PURE__ */ vue.defineComponent({
7378
7378
 
7379
7379
  /** @jsxImportSource vue */
7380
7380
 
7381
- const COMPONENT_NAME$1r = 'vc-quarter-table';
7381
+ const COMPONENT_NAME$1s = 'vc-quarter-table';
7382
7382
 
7383
7383
  /**
7384
7384
  * 获取季度对应的月份范围
@@ -7412,7 +7412,7 @@ const getQuarterRangeByMonth = value => {
7412
7412
  }
7413
7413
  };
7414
7414
  const QuarterTable = /* @__PURE__ */ vue.defineComponent({
7415
- name: COMPONENT_NAME$1r,
7415
+ name: COMPONENT_NAME$1s,
7416
7416
  props: {
7417
7417
  value: Array,
7418
7418
  panelDate: Date,
@@ -7535,9 +7535,9 @@ const QuarterTable = /* @__PURE__ */ vue.defineComponent({
7535
7535
 
7536
7536
  /** @jsxImportSource vue */
7537
7537
 
7538
- const COMPONENT_NAME$1q = 'vc-shortcuts-select';
7538
+ const COMPONENT_NAME$1r = 'vc-shortcuts-select';
7539
7539
  const ShortcutsSelect = /* @__PURE__ */ vue.defineComponent({
7540
- name: COMPONENT_NAME$1q,
7540
+ name: COMPONENT_NAME$1r,
7541
7541
  props: {
7542
7542
  panelDate: Date,
7543
7543
  config: Array,
@@ -7577,9 +7577,9 @@ const ShortcutsSelect = /* @__PURE__ */ vue.defineComponent({
7577
7577
 
7578
7578
  /** @jsxImportSource vue */
7579
7579
 
7580
- const COMPONENT_NAME$1p = 'vc-time-select';
7580
+ const COMPONENT_NAME$1q = 'vc-time-select';
7581
7581
  const TimeSelect = /* @__PURE__ */ vue.defineComponent({
7582
- name: COMPONENT_NAME$1p,
7582
+ name: COMPONENT_NAME$1q,
7583
7583
  props: {
7584
7584
  hours: {
7585
7585
  type: [Number, String],
@@ -7859,9 +7859,9 @@ const TimeSelect = /* @__PURE__ */ vue.defineComponent({
7859
7859
 
7860
7860
  /** @jsxImportSource vue */
7861
7861
 
7862
- const COMPONENT_NAME$1o = 'vc-year-table';
7862
+ const COMPONENT_NAME$1p = 'vc-year-table';
7863
7863
  const YearTable = /* @__PURE__ */ vue.defineComponent({
7864
- name: COMPONENT_NAME$1o,
7864
+ name: COMPONENT_NAME$1p,
7865
7865
  props: {
7866
7866
  value: Array,
7867
7867
  panelDate: Date,
@@ -7984,9 +7984,9 @@ const getDateIsInRange = (value, type, leftPanelDate, rightPanelDate) => {
7984
7984
  }
7985
7985
  return true;
7986
7986
  };
7987
- const COMPONENT_NAME$1n = 'vc-date-range-panel';
7987
+ const COMPONENT_NAME$1o = 'vc-date-range-panel';
7988
7988
  const DateRangePanel = /* @__PURE__ */ vue.defineComponent({
7989
- name: COMPONENT_NAME$1n,
7989
+ name: COMPONENT_NAME$1o,
7990
7990
  props: {
7991
7991
  ...props$W,
7992
7992
  confirm: {
@@ -8365,9 +8365,9 @@ const DateRangePanel = /* @__PURE__ */ vue.defineComponent({
8365
8365
 
8366
8366
  /** @jsxImportSource vue */
8367
8367
 
8368
- const COMPONENT_NAME$1m = 'vc-date-panel';
8368
+ const COMPONENT_NAME$1n = 'vc-date-panel';
8369
8369
  const DatePanel = /* @__PURE__ */ vue.defineComponent({
8370
- name: COMPONENT_NAME$1m,
8370
+ name: COMPONENT_NAME$1n,
8371
8371
  props: {
8372
8372
  ...props$W,
8373
8373
  type: String,
@@ -8575,9 +8575,9 @@ const isEqualYear$1 = value => {
8575
8575
  const endYear = value[1].getFullYear();
8576
8576
  return startYear === endYear;
8577
8577
  };
8578
- const COMPONENT_NAME$1l = 'vc-monthrange-panel';
8578
+ const COMPONENT_NAME$1m = 'vc-monthrange-panel';
8579
8579
  const MonthRangePanel = /* @__PURE__ */ vue.defineComponent({
8580
- name: COMPONENT_NAME$1l,
8580
+ name: COMPONENT_NAME$1m,
8581
8581
  props: {
8582
8582
  ...props$W,
8583
8583
  confirm: {
@@ -8752,9 +8752,9 @@ const isEqualYear = value => {
8752
8752
  const endYear = value[1].getFullYear();
8753
8753
  return startYear === endYear;
8754
8754
  };
8755
- const COMPONENT_NAME$1k = 'vc-quarterrange-panel';
8755
+ const COMPONENT_NAME$1l = 'vc-quarterrange-panel';
8756
8756
  const QuarterRangePanel = /* @__PURE__ */ vue.defineComponent({
8757
- name: COMPONENT_NAME$1k,
8757
+ name: COMPONENT_NAME$1l,
8758
8758
  props: {
8759
8759
  ...props$W,
8760
8760
  confirm: {
@@ -8993,9 +8993,9 @@ const getComparedDate = (leftDate, rightDate) => {
8993
8993
  seconds
8994
8994
  };
8995
8995
  };
8996
- const COMPONENT_NAME$1j = 'vc-timerange-panel';
8996
+ const COMPONENT_NAME$1k = 'vc-timerange-panel';
8997
8997
  const TimeRangePanel = /* @__PURE__ */ vue.defineComponent({
8998
- name: COMPONENT_NAME$1j,
8998
+ name: COMPONENT_NAME$1k,
8999
8999
  props: props$V,
9000
9000
  emits: ['pick', 'clear', 'ok'],
9001
9001
  setup(props, {
@@ -9096,9 +9096,9 @@ const TimeRangePanel = /* @__PURE__ */ vue.defineComponent({
9096
9096
 
9097
9097
  /** @jsxImportSource vue */
9098
9098
 
9099
- const COMPONENT_NAME$1i = 'vc-time-panel';
9099
+ const COMPONENT_NAME$1j = 'vc-time-panel';
9100
9100
  const TimePanel = /* @__PURE__ */ vue.defineComponent({
9101
- name: COMPONENT_NAME$1i,
9101
+ name: COMPONENT_NAME$1j,
9102
9102
  props: props$V,
9103
9103
  emits: ['pick', 'clear', 'ok'],
9104
9104
  setup(props, {
@@ -9154,7 +9154,7 @@ const TimePanel = /* @__PURE__ */ vue.defineComponent({
9154
9154
 
9155
9155
  /** @jsxImportSource vue */
9156
9156
 
9157
- const COMPONENT_NAME$1h = 'vc-date-picker';
9157
+ const COMPONENT_NAME$1i = 'vc-date-picker';
9158
9158
  const getPanel$1 = type => {
9159
9159
  if (['daterange', 'datetimerange'].includes(type)) {
9160
9160
  return DateRangePanel;
@@ -9165,7 +9165,7 @@ const getPanel$1 = type => {
9165
9165
  }
9166
9166
  return DatePanel;
9167
9167
  };
9168
- const DatePicker = createPicker(COMPONENT_NAME$1h, props$Y, () => {
9168
+ const DatePicker = createPicker(COMPONENT_NAME$1i, props$Y, () => {
9169
9169
  const props = vue.getCurrentInstance().props;
9170
9170
  const icon = vue.ref('date');
9171
9171
  const panel = vue.shallowRef({});
@@ -9206,9 +9206,9 @@ const props$U = {
9206
9206
 
9207
9207
  /** @jsxImportSource vue */
9208
9208
 
9209
- const COMPONENT_NAME$1g = 'vc-divider';
9209
+ const COMPONENT_NAME$1h = 'vc-divider';
9210
9210
  const Divider = /* @__PURE__ */ vue.defineComponent({
9211
- name: COMPONENT_NAME$1g,
9211
+ name: COMPONENT_NAME$1h,
9212
9212
  props: props$U,
9213
9213
  setup(props, {
9214
9214
  slots
@@ -9344,7 +9344,7 @@ const props$R = {
9344
9344
 
9345
9345
  /** @jsxImportSource vue */
9346
9346
 
9347
- const COMPONENT_NAME$1f = 'vc-scroller-track';
9347
+ const COMPONENT_NAME$1g = 'vc-scroller-track';
9348
9348
  const BAR_MAP = {
9349
9349
  vertical: {
9350
9350
  scroll: 'scrollTop',
@@ -9364,7 +9364,7 @@ const BAR_MAP = {
9364
9364
  }
9365
9365
  };
9366
9366
  const Track = /* @__PURE__ */ vue.defineComponent({
9367
- name: COMPONENT_NAME$1f,
9367
+ name: COMPONENT_NAME$1g,
9368
9368
  props: props$T,
9369
9369
  emits: ['change'],
9370
9370
  inheritAttrs: false,
@@ -9554,9 +9554,9 @@ const Track = /* @__PURE__ */ vue.defineComponent({
9554
9554
 
9555
9555
  /** @jsxImportSource vue */
9556
9556
 
9557
- const COMPONENT_NAME$1e = 'vc-scroller-bar';
9557
+ const COMPONENT_NAME$1f = 'vc-scroller-bar';
9558
9558
  const Bar = /* @__PURE__ */ vue.defineComponent({
9559
- name: COMPONENT_NAME$1e,
9559
+ name: COMPONENT_NAME$1f,
9560
9560
  props: props$S,
9561
9561
  emits: ['change'],
9562
9562
  setup(props, {
@@ -9790,7 +9790,7 @@ const useScroller = (expose) => {
9790
9790
 
9791
9791
  /** @jsxImportSource vue */
9792
9792
 
9793
- const COMPONENT_NAME$1d = 'vc-scroller';
9793
+ const COMPONENT_NAME$1e = 'vc-scroller';
9794
9794
 
9795
9795
  /**
9796
9796
  * 作为备选方案,目前推荐使用ScrollerWheel
@@ -9801,7 +9801,7 @@ const COMPONENT_NAME$1d = 'vc-scroller';
9801
9801
  * 2. 增加了一层嵌套
9802
9802
  */
9803
9803
  const Scroller = /* @__PURE__ */ vue.defineComponent({
9804
- name: COMPONENT_NAME$1d,
9804
+ name: COMPONENT_NAME$1e,
9805
9805
  props: props$R,
9806
9806
  emits: ['scroll'],
9807
9807
  setup(props, {
@@ -9862,7 +9862,7 @@ const Scroller = /* @__PURE__ */ vue.defineComponent({
9862
9862
 
9863
9863
  /** @jsxImportSource vue */
9864
9864
 
9865
- const COMPONENT_NAME$1c = 'vc-scroller-wheel';
9865
+ const COMPONENT_NAME$1d = 'vc-scroller-wheel';
9866
9866
 
9867
9867
  /**
9868
9868
  * 为减少一层嵌套,为去除滚动bar的抖动,使用wheel模拟
@@ -9884,7 +9884,7 @@ const COMPONENT_NAME$1c = 'vc-scroller-wheel';
9884
9884
  * 设置scrollTop不会reflow和repaint,不需要考虑transfrom来改变content(transform也只在draw完成)
9885
9885
  */
9886
9886
  const ScrollerWheel = /* @__PURE__ */ vue.defineComponent({
9887
- name: COMPONENT_NAME$1c,
9887
+ name: COMPONENT_NAME$1d,
9888
9888
  props: Object.assign({}, props$R, {
9889
9889
  stopPropagation: {
9890
9890
  type: Boolean,
@@ -10073,9 +10073,9 @@ const props$Q = {
10073
10073
 
10074
10074
  /** @jsxImportSource vue */
10075
10075
 
10076
- const COMPONENT_NAME$1b = 'vc-drawer';
10076
+ const COMPONENT_NAME$1c = 'vc-drawer';
10077
10077
  const DrawerView = /* @__PURE__ */ vue.defineComponent({
10078
- name: COMPONENT_NAME$1b,
10078
+ name: COMPONENT_NAME$1c,
10079
10079
  props: props$Q,
10080
10080
  emits: ['close', 'update:modelValue', 'visible-change'],
10081
10081
  setup(props, {
@@ -10264,9 +10264,9 @@ const props$P = {
10264
10264
 
10265
10265
  /** @jsxImportSource vue */
10266
10266
 
10267
- const COMPONENT_NAME$1a = 'vc-dropdown';
10267
+ const COMPONENT_NAME$1b = 'vc-dropdown';
10268
10268
  const Dropdown = /* @__PURE__ */ vue.defineComponent({
10269
- name: COMPONENT_NAME$1a,
10269
+ name: COMPONENT_NAME$1b,
10270
10270
  props: props$P,
10271
10271
  inheritAttrs: false,
10272
10272
  emits: ['update:modelValue', 'ready', 'close', 'visible-change', 'click'],
@@ -10336,9 +10336,9 @@ const Dropdown = /* @__PURE__ */ vue.defineComponent({
10336
10336
 
10337
10337
  /** @jsxImportSource vue */
10338
10338
 
10339
- const COMPONENT_NAME$19 = 'vc-dropdown-menu';
10339
+ const COMPONENT_NAME$1a = 'vc-dropdown-menu';
10340
10340
  const DropdownMenu = /* @__PURE__ */ vue.defineComponent({
10341
- name: COMPONENT_NAME$19,
10341
+ name: COMPONENT_NAME$1a,
10342
10342
  setup(_, {
10343
10343
  slots
10344
10344
  }) {
@@ -10352,9 +10352,9 @@ const DropdownMenu = /* @__PURE__ */ vue.defineComponent({
10352
10352
 
10353
10353
  /** @jsxImportSource vue */
10354
10354
 
10355
- const COMPONENT_NAME$18 = 'vc-dropdown-item';
10355
+ const COMPONENT_NAME$19 = 'vc-dropdown-item';
10356
10356
  const DropdownItem = /* @__PURE__ */ vue.defineComponent({
10357
- name: COMPONENT_NAME$18,
10357
+ name: COMPONENT_NAME$19,
10358
10358
  emits: ['click'],
10359
10359
  props: {
10360
10360
  value: {
@@ -10559,9 +10559,9 @@ const defaults = {
10559
10559
 
10560
10560
  /** @jsxImportSource vue */
10561
10561
 
10562
- const COMPONENT_NAME$17 = 'vc-editor-toolbar';
10562
+ const COMPONENT_NAME$18 = 'vc-editor-toolbar';
10563
10563
  const EditorToolbar = /* @__PURE__ */ vue.defineComponent({
10564
- name: COMPONENT_NAME$17,
10564
+ name: COMPONENT_NAME$18,
10565
10565
  props: {
10566
10566
  options: [Array, Object],
10567
10567
  elementId: String
@@ -10769,9 +10769,9 @@ const props$O = {
10769
10769
 
10770
10770
  /** @jsxImportSource vue */
10771
10771
 
10772
- const COMPONENT_NAME$16 = 'vc-image-preview';
10772
+ const COMPONENT_NAME$17 = 'vc-image-preview';
10773
10773
  const ImagePreview$1 = /* @__PURE__ */ vue.defineComponent({
10774
- name: COMPONENT_NAME$16,
10774
+ name: COMPONENT_NAME$17,
10775
10775
  props: props$O,
10776
10776
  setup(props, {
10777
10777
  slots
@@ -10815,8 +10815,9 @@ const getFitSize = (src) => {
10815
10815
  });
10816
10816
  };
10817
10817
  const open$2 = async (options) => {
10818
+ const { data: originalData, current, ...photoSwipeOptions } = options;
10818
10819
  const e = VcInstance.globalEvent;
10819
- const data = options.data.map((i) => {
10820
+ const data = originalData.map((i) => {
10820
10821
  if (typeof i === "string") {
10821
10822
  return {
10822
10823
  src: i
@@ -10843,11 +10844,18 @@ const open$2 = async (options) => {
10843
10844
  arrowNextTitle: "下一张",
10844
10845
  errorMsg: "网络异常 图片加载失败",
10845
10846
  indexIndicatorSep: " / ",
10846
- initialZoomLevel: "fit"
10847
+ wheelToZoom: true,
10848
+ // 默认fit展示
10849
+ initialZoomLevel: "fit",
10850
+ // 最大展示或按钮+最大展示(如果原图size 乘 secondaryZoomLevel 还在屏幕内,不展示+号)
10851
+ secondaryZoomLevel: 4,
10852
+ // 滚轮/手势最大展示
10853
+ maxZoomLevel: 10,
10854
+ ...photoSwipeOptions
10847
10855
  });
10848
10856
  lightbox.init();
10849
10857
  lightbox.loadAndOpen(
10850
- options.current || 0,
10858
+ current || 0,
10851
10859
  data,
10852
10860
  // 下面无效,需要给官方支持
10853
10861
  {
@@ -10958,9 +10966,9 @@ const props$N = {
10958
10966
  }
10959
10967
  };
10960
10968
 
10961
- const COMPONENT_NAME$15 = "vc-upload";
10969
+ const COMPONENT_NAME$16 = "vc-upload";
10962
10970
  const Upload$1 = vue.defineComponent({
10963
- name: COMPONENT_NAME$15,
10971
+ name: COMPONENT_NAME$16,
10964
10972
  props: props$N,
10965
10973
  emits: [
10966
10974
  "message",
@@ -11494,9 +11502,9 @@ const props$M = {
11494
11502
 
11495
11503
  /** @jsxImportSource vue */
11496
11504
 
11497
- const COMPONENT_NAME$14 = 'vc-editor';
11505
+ const COMPONENT_NAME$15 = 'vc-editor';
11498
11506
  const Editor = /* @__PURE__ */ vue.defineComponent({
11499
- name: COMPONENT_NAME$14,
11507
+ name: COMPONENT_NAME$15,
11500
11508
  props: props$M,
11501
11509
  defaults,
11502
11510
  emits: ['ready', 'blur', 'focus', 'input', 'update:modelValue', 'change'],
@@ -11685,7 +11693,7 @@ const Editor = /* @__PURE__ */ vue.defineComponent({
11685
11693
 
11686
11694
  /** @jsxImportSource vue */
11687
11695
 
11688
- const COMPONENT_NAME$13 = 'vc-editor-view';
11696
+ const COMPONENT_NAME$14 = 'vc-editor-view';
11689
11697
  const setImages = v => {
11690
11698
  if (!v) return;
11691
11699
  const IMG_REGX = /<img.*?(?:>|\/>)/gi;
@@ -11703,7 +11711,7 @@ const setImages = v => {
11703
11711
  return;
11704
11712
  };
11705
11713
  const EditorView = /* @__PURE__ */ vue.defineComponent({
11706
- name: COMPONENT_NAME$13,
11714
+ name: COMPONENT_NAME$14,
11707
11715
  props: {
11708
11716
  value: {
11709
11717
  type: String,
@@ -11918,9 +11926,9 @@ const useForm = (expose, options = {}) => {
11918
11926
  });
11919
11927
  };
11920
11928
 
11921
- const COMPONENT_NAME$12 = "vc-form";
11929
+ const COMPONENT_NAME$13 = "vc-form";
11922
11930
  const Form = vue.defineComponent({
11923
- name: COMPONENT_NAME$12,
11931
+ name: COMPONENT_NAME$13,
11924
11932
  props: props$L,
11925
11933
  setup(props, { slots, expose }) {
11926
11934
  useForm(expose);
@@ -12268,9 +12276,9 @@ const useFormItem = (expose) => {
12268
12276
 
12269
12277
  /** @jsxImportSource vue */
12270
12278
 
12271
- const COMPONENT_NAME$11 = 'vc-form-item';
12279
+ const COMPONENT_NAME$12 = 'vc-form-item';
12272
12280
  const FormItem = /* @__PURE__ */ vue.defineComponent({
12273
- name: COMPONENT_NAME$11,
12281
+ name: COMPONENT_NAME$12,
12274
12282
  props: props$K,
12275
12283
  setup(props, {
12276
12284
  slots,
@@ -12338,9 +12346,9 @@ const props$J = {
12338
12346
  }
12339
12347
  };
12340
12348
 
12341
- const COMPONENT_NAME$10 = "vcm-form";
12349
+ const COMPONENT_NAME$11 = "vcm-form";
12342
12350
  const MForm = vue.defineComponent({
12343
- name: COMPONENT_NAME$10,
12351
+ name: COMPONENT_NAME$11,
12344
12352
  props: props$J,
12345
12353
  setup(props, { slots, expose }) {
12346
12354
  useForm(expose, {
@@ -12371,9 +12379,9 @@ const props$I = {
12371
12379
 
12372
12380
  /** @jsxImportSource vue */
12373
12381
 
12374
- const COMPONENT_NAME$$ = 'vcm-form-item';
12382
+ const COMPONENT_NAME$10 = 'vcm-form-item';
12375
12383
  const MFormItem = /* @__PURE__ */ vue.defineComponent({
12376
- name: COMPONENT_NAME$$,
12384
+ name: COMPONENT_NAME$10,
12377
12385
  props: props$I,
12378
12386
  setup(props, {
12379
12387
  slots,
@@ -12428,9 +12436,9 @@ const MFormItem = /* @__PURE__ */ vue.defineComponent({
12428
12436
  }
12429
12437
  });
12430
12438
 
12431
- const COMPONENT_NAME$_ = "vc-fragment";
12439
+ const COMPONENT_NAME$$ = "vc-fragment";
12432
12440
  const Fragment = vue.defineComponent({
12433
- name: COMPONENT_NAME$_,
12441
+ name: COMPONENT_NAME$$,
12434
12442
  setup(_, { slots }) {
12435
12443
  return () => vue.h(vue.Fragment, slots.default?.());
12436
12444
  }
@@ -12469,9 +12477,9 @@ const props$H = {
12469
12477
 
12470
12478
  /** @jsxImportSource vue */
12471
12479
 
12472
- const COMPONENT_NAME$Z = 'vc-snapshot';
12480
+ const COMPONENT_NAME$_ = 'vc-snapshot';
12473
12481
  const Snapshot = /* @__PURE__ */ vue.defineComponent({
12474
- name: COMPONENT_NAME$Z,
12482
+ name: COMPONENT_NAME$_,
12475
12483
  props: props$H,
12476
12484
  emits: ['ready'],
12477
12485
  setup(props, {
@@ -12630,7 +12638,7 @@ const IMGStore$1 = new IMGStore();
12630
12638
 
12631
12639
  /** @jsxImportSource vue */
12632
12640
 
12633
- const COMPONENT_NAME$Y = 'vc-image';
12641
+ const COMPONENT_NAME$Z = 'vc-image';
12634
12642
  let isSupportObjectFit = false;
12635
12643
  window.addEventListener('DOMContentLoaded', () => {
12636
12644
  isSupportObjectFit = !vcShared.IS_SERVER && document.documentElement.style.objectFit !== undefined;
@@ -12643,7 +12651,7 @@ const ObjectFit = {
12643
12651
  SCALE_DOWN: 'scale-down'
12644
12652
  };
12645
12653
  const Image$1 = /* @__PURE__ */ vue.defineComponent({
12646
- name: COMPONENT_NAME$Y,
12654
+ name: COMPONENT_NAME$Z,
12647
12655
  inheritAttrs: false,
12648
12656
  props: props$G,
12649
12657
  setup(props, {
@@ -12860,9 +12868,9 @@ const props$F = {
12860
12868
 
12861
12869
  /** @jsxImportSource vue */
12862
12870
 
12863
- const COMPONENT_NAME$X = 'vc-image-crop';
12871
+ const COMPONENT_NAME$Y = 'vc-image-crop';
12864
12872
  const ImageCrop = /* @__PURE__ */ vue.defineComponent({
12865
- name: COMPONENT_NAME$X,
12873
+ name: COMPONENT_NAME$Y,
12866
12874
  props: props$F,
12867
12875
  setup(props, {
12868
12876
  slots
@@ -12888,9 +12896,9 @@ const props$E = {
12888
12896
 
12889
12897
  /** @jsxImportSource vue */
12890
12898
 
12891
- const COMPONENT_NAME$W = 'vc-image-processing';
12899
+ const COMPONENT_NAME$X = 'vc-image-processing';
12892
12900
  const ImageProcessing = /* @__PURE__ */ vue.defineComponent({
12893
- name: COMPONENT_NAME$W,
12901
+ name: COMPONENT_NAME$X,
12894
12902
  props: props$E,
12895
12903
  setup(props, {
12896
12904
  slots
@@ -12907,9 +12915,9 @@ const MImageProcessing = ImageProcessing;
12907
12915
 
12908
12916
  /** @jsxImportSource vue */
12909
12917
 
12910
- const COMPONENT_NAME$V = 'vcm-input';
12918
+ const COMPONENT_NAME$W = 'vcm-input';
12911
12919
  const MInput = /* @__PURE__ */ vue.defineComponent({
12912
- name: COMPONENT_NAME$V,
12920
+ name: COMPONENT_NAME$W,
12913
12921
  inheritAttrs: false,
12914
12922
  props: {
12915
12923
  ...props$1h,
@@ -12998,9 +13006,9 @@ const MInput = /* @__PURE__ */ vue.defineComponent({
12998
13006
 
12999
13007
  /** @jsxImportSource vue */
13000
13008
 
13001
- const COMPONENT_NAME$U = 'vcm-input-number';
13009
+ const COMPONENT_NAME$V = 'vcm-input-number';
13002
13010
  const MInputNumber = /* @__PURE__ */ vue.defineComponent({
13003
- name: COMPONENT_NAME$U,
13011
+ name: COMPONENT_NAME$V,
13004
13012
  props: props$1g,
13005
13013
  inheritAttrs: false,
13006
13014
  setup(props, {
@@ -13049,9 +13057,9 @@ const MInputNumber = /* @__PURE__ */ vue.defineComponent({
13049
13057
 
13050
13058
  /** @jsxImportSource vue */
13051
13059
 
13052
- const COMPONENT_NAME$T = 'vcm-input-search';
13060
+ const COMPONENT_NAME$U = 'vcm-input-search';
13053
13061
  const MInputSearch = /* @__PURE__ */ vue.defineComponent({
13054
- name: COMPONENT_NAME$T,
13062
+ name: COMPONENT_NAME$U,
13055
13063
  props: {
13056
13064
  ...props$1f,
13057
13065
  cancelText: {
@@ -13128,9 +13136,9 @@ const props$D = {
13128
13136
  }
13129
13137
  };
13130
13138
 
13131
- const COMPONENT_NAME$S = "vcm-list";
13139
+ const COMPONENT_NAME$T = "vcm-list";
13132
13140
  const MList = vue.defineComponent({
13133
- name: COMPONENT_NAME$S,
13141
+ name: COMPONENT_NAME$T,
13134
13142
  props: props$D,
13135
13143
  setup(props, { slots }) {
13136
13144
  vue.provide("vc-list", { props });
@@ -13185,10 +13193,10 @@ const props$C = {
13185
13193
 
13186
13194
  /** @jsxImportSource vue */
13187
13195
 
13188
- const COMPONENT_NAME$R = 'vcm-list-item';
13196
+ const COMPONENT_NAME$S = 'vcm-list-item';
13189
13197
  const HTTP_REGEX = /[a-zA-z]+:\/\/[^\s]*/;
13190
13198
  const MListItem = /* @__PURE__ */ vue.defineComponent({
13191
- name: COMPONENT_NAME$R,
13199
+ name: COMPONENT_NAME$S,
13192
13200
  props: props$C,
13193
13201
  emits: ['click'],
13194
13202
  setup(props, {
@@ -13282,11 +13290,11 @@ const props$B = {
13282
13290
 
13283
13291
  /** @jsxImportSource vue */
13284
13292
 
13285
- const COMPONENT_NAME$Q = 'vc-marquee';
13293
+ const COMPONENT_NAME$R = 'vc-marquee';
13286
13294
  const ANIMATION = $.prefixStyle('animation').camel;
13287
13295
  const TRANSFORM_KEBAB = $.prefixStyle('transform').kebab;
13288
13296
  const Marquee = /* @__PURE__ */ vue.defineComponent({
13289
- name: COMPONENT_NAME$Q,
13297
+ name: COMPONENT_NAME$R,
13290
13298
  props: props$B,
13291
13299
  setup(props, {
13292
13300
  slots
@@ -13354,9 +13362,9 @@ const props$A = {
13354
13362
  }
13355
13363
  };
13356
13364
 
13357
- const COMPONENT_NAME$P = "vc-resizer";
13365
+ const COMPONENT_NAME$Q = "vc-resizer";
13358
13366
  const Resizer = vue.defineComponent({
13359
- name: COMPONENT_NAME$P,
13367
+ name: COMPONENT_NAME$Q,
13360
13368
  props: props$A,
13361
13369
  emits: ["resize"],
13362
13370
  setup(props, { emit, slots, expose }) {
@@ -13526,10 +13534,10 @@ const props$z = {
13526
13534
 
13527
13535
  /** @jsxImportSource vue */
13528
13536
 
13529
- const COMPONENT_NAME$O = 'vc-modal';
13537
+ const COMPONENT_NAME$P = 'vc-modal';
13530
13538
  let zIndexNumber = 1002;
13531
13539
  const ModalView = /* @__PURE__ */ vue.defineComponent({
13532
- name: COMPONENT_NAME$O,
13540
+ name: COMPONENT_NAME$P,
13533
13541
  emits: ['update:modelValue', 'close', 'portal-fulfilled', 'visible-change', 'ok', 'cancel'],
13534
13542
  props: props$z,
13535
13543
  setup(props, {
@@ -13968,9 +13976,9 @@ const props$y = {
13968
13976
 
13969
13977
  /** @jsxImportSource vue */
13970
13978
 
13971
- const COMPONENT_NAME$N = 'vc-modal';
13979
+ const COMPONENT_NAME$O = 'vc-modal';
13972
13980
  const MModalView = /* @__PURE__ */ vue.defineComponent({
13973
- name: COMPONENT_NAME$N,
13981
+ name: COMPONENT_NAME$O,
13974
13982
  emits: ['update:modelValue', 'portal-fulfilled', 'close', 'ok', 'cancel'],
13975
13983
  props: props$y,
13976
13984
  setup(props, {
@@ -14182,9 +14190,9 @@ const props$x = {
14182
14190
 
14183
14191
  /** @jsxImportSource vue */
14184
14192
 
14185
- const COMPONENT_NAME$M = 'vc-notice';
14193
+ const COMPONENT_NAME$N = 'vc-notice';
14186
14194
  const NoticeView = /* @__PURE__ */ vue.defineComponent({
14187
- name: COMPONENT_NAME$M,
14195
+ name: COMPONENT_NAME$N,
14188
14196
  props: props$x,
14189
14197
  emits: ['portal-fulfilled', 'close', 'before-close'],
14190
14198
  setup(props, {
@@ -14357,9 +14365,9 @@ const props$w = {
14357
14365
 
14358
14366
  /** @jsxImportSource vue */
14359
14367
 
14360
- const COMPONENT_NAME$L = 'vc-option';
14368
+ const COMPONENT_NAME$M = 'vc-option';
14361
14369
  const Option$1 = /* @__PURE__ */ vue.defineComponent({
14362
- name: COMPONENT_NAME$L,
14370
+ name: COMPONENT_NAME$M,
14363
14371
  props: props$w,
14364
14372
  setup(props, {
14365
14373
  slots
@@ -14443,9 +14451,9 @@ const props$u = {
14443
14451
 
14444
14452
  /** @jsxImportSource vue */
14445
14453
 
14446
- const COMPONENT_NAME$K = 'vc-tag';
14454
+ const COMPONENT_NAME$L = 'vc-tag';
14447
14455
  const Tag = /* @__PURE__ */ vue.defineComponent({
14448
- name: COMPONENT_NAME$K,
14456
+ name: COMPONENT_NAME$L,
14449
14457
  props: props$u,
14450
14458
  emits: ['close', 'change'],
14451
14459
  setup(props, {
@@ -14516,12 +14524,13 @@ const props$t = {
14516
14524
 
14517
14525
  /** @jsxImportSource vue */
14518
14526
 
14519
- const COMPONENT_NAME$J = 'vc-select-option';
14527
+ const COMPONENT_NAME$K = 'vc-select-option';
14520
14528
  const Option = /* @__PURE__ */ vue.defineComponent({
14521
- name: COMPONENT_NAME$J,
14529
+ name: COMPONENT_NAME$K,
14522
14530
  props: props$t,
14523
14531
  setup(props, {
14524
- slots
14532
+ slots,
14533
+ expose
14525
14534
  }) {
14526
14535
  const owner = vcHooks.getInstance('select', 'selectId');
14527
14536
  const formatterLabel = vue.computed(() => {
@@ -14541,9 +14550,12 @@ const Option = /* @__PURE__ */ vue.defineComponent({
14541
14550
  } = owner.exposed;
14542
14551
  return !multiple.value ? true : current.value.slice(-1)[0] === props.value;
14543
14552
  });
14553
+ const searchRegex = vue.computed(() => {
14554
+ const v = owner.exposed.searchValue.value.trim().replace(/\s+/g, ' ').split(/\s|,/);
14555
+ return new RegExp(`(${v.join('|')})`, 'i');
14556
+ });
14544
14557
  const isActive = vue.computed(() => {
14545
- const regex = owner.exposed.searchRegex.value;
14546
- return regex.test(formatterLabel.value) || !props.filterable;
14558
+ return !!(searchRegex.value.test(formatterLabel.value) || !props.filterable);
14547
14559
  });
14548
14560
  const customOptions = vue.computed(() => {
14549
14561
  return {
@@ -14571,6 +14583,12 @@ const Option = /* @__PURE__ */ vue.defineComponent({
14571
14583
  const handlePrevent = e => {
14572
14584
  e.preventDefault();
14573
14585
  };
14586
+ expose({
14587
+ isActive,
14588
+ isChecked,
14589
+ formatterLabel,
14590
+ props
14591
+ });
14574
14592
  return () => {
14575
14593
  if (!isActive.value) return;
14576
14594
  return typeof props.render === 'function' ? vue.createVNode(Customer, vue.mergeProps({
@@ -14604,9 +14622,9 @@ const props$s = {
14604
14622
 
14605
14623
  /** @jsxImportSource vue */
14606
14624
 
14607
- const COMPONENT_NAME$I = 'vc-select-option-group';
14625
+ const COMPONENT_NAME$J = 'vc-select-option-group';
14608
14626
  const OptionGroup = /* @__PURE__ */ vue.defineComponent({
14609
- name: COMPONENT_NAME$I,
14627
+ name: COMPONENT_NAME$J,
14610
14628
  props: props$s,
14611
14629
  setup(props, {
14612
14630
  slots
@@ -14636,6 +14654,78 @@ const OptionGroup = /* @__PURE__ */ vue.defineComponent({
14636
14654
 
14637
14655
  /** @jsxImportSource vue */
14638
14656
 
14657
+ const COMPONENT_NAME$I = 'vc-select-all';
14658
+ const SelectAll = /* @__PURE__ */ vue.defineComponent({
14659
+ name: COMPONENT_NAME$I,
14660
+ props: {
14661
+ data: {
14662
+ type: Array,
14663
+ default: () => []
14664
+ }
14665
+ },
14666
+ setup(props) {
14667
+ const owner = vcHooks.getInstance('select', 'selectId');
14668
+
14669
+ /**
14670
+ * 获取所有可选择的选项(排除disabled的)
14671
+ */
14672
+ const selectableOptions = vue.computed(() => {
14673
+ return props.data.filter(option => {
14674
+ if (!option.isActive || option.props.disabled) return false;
14675
+ return true;
14676
+ });
14677
+ });
14678
+
14679
+ /**
14680
+ * 获取所有可选项的值
14681
+ */
14682
+ const selectableValues = vue.computed(() => {
14683
+ return selectableOptions.value.map(option => option.props.value);
14684
+ });
14685
+
14686
+ /**
14687
+ * 判断是否所有可选项都已选中
14688
+ */
14689
+ const isAllSelected = vue.computed(() => {
14690
+ if (!owner?.exposed || selectableValues.value.length === 0) {
14691
+ return false;
14692
+ }
14693
+ const current = owner.exposed.current.value || [];
14694
+ return selectableValues.value.every(value => current.includes(value));
14695
+ });
14696
+ const handleSelectAll = () => {
14697
+ if (!owner?.exposed) return;
14698
+ const current = owner.exposed.current.value || [];
14699
+ const {
14700
+ add,
14701
+ remove
14702
+ } = owner.exposed;
14703
+ const isSelected = isAllSelected.value;
14704
+ selectableValues.value.forEach(value => {
14705
+ if (isSelected && current.includes(value)) {
14706
+ remove(value);
14707
+ } else if (!isSelected && !current.includes(value)) {
14708
+ add(value);
14709
+ }
14710
+ });
14711
+ };
14712
+ return () => {
14713
+ // 如果没有可选项,不显示按钮
14714
+ if (selectableOptions.value.length === 0) {
14715
+ return null;
14716
+ }
14717
+ return vue.createVNode("div", {
14718
+ "class": [{
14719
+ 'is-selected': isAllSelected.value
14720
+ }, 'vc-select-all'],
14721
+ "onClick": handleSelectAll
14722
+ }, [isAllSelected.value ? '取消全选' : '全选']);
14723
+ };
14724
+ }
14725
+ });
14726
+
14727
+ /** @jsxImportSource vue */
14728
+
14639
14729
  const COMPONENT_NAME$H = 'vc-select';
14640
14730
  const Select = /* @__PURE__ */ vue.defineComponent({
14641
14731
  name: COMPONENT_NAME$H,
@@ -14656,7 +14746,6 @@ const Select = /* @__PURE__ */ vue.defineComponent({
14656
14746
  const isActive = vue.ref(false);
14657
14747
  const isLoading = vue.ref(false);
14658
14748
  const searchValue = vue.ref('');
14659
- const searchRegex = vue.ref(new RegExp(''));
14660
14749
  const currentValue = vue.ref([]);
14661
14750
  const source = vue.computed(() => {
14662
14751
  return flattenData$1(props.data, {
@@ -14691,6 +14780,20 @@ const Select = /* @__PURE__ */ vue.defineComponent({
14691
14780
  const v = currentValue.value.length - props.maxTags;
14692
14781
  return v < 0 ? 0 : v;
14693
14782
  });
14783
+ const optionMap = vue.ref({});
14784
+ const options = vue.computed(() => {
14785
+ return Object.values(optionMap.value);
14786
+ });
14787
+ const showSelectAll = vue.computed(() => {
14788
+ return props.searchable && multiple.value && searchValue.value.trim().length > 0 && options.value.length > 0;
14789
+ });
14790
+ const setOption = (item, el) => {
14791
+ if (el) {
14792
+ optionMap.value[item.value] = el;
14793
+ } else {
14794
+ delete optionMap.value[item.value];
14795
+ }
14796
+ };
14694
14797
 
14695
14798
  /**
14696
14799
  * v-model 同步, 外部的数据改变时不会触发
@@ -14736,7 +14839,7 @@ const Select = /* @__PURE__ */ vue.defineComponent({
14736
14839
  sync();
14737
14840
  };
14738
14841
  const remove = v => {
14739
- const index = currentValue.value.findIndex(i => i == v);
14842
+ const index = currentValue.value.findIndex(i => i === v);
14740
14843
  currentValue.value.splice(index, 1);
14741
14844
  sync();
14742
14845
  };
@@ -14756,7 +14859,6 @@ const Select = /* @__PURE__ */ vue.defineComponent({
14756
14859
  };
14757
14860
  const handleSearch = v => {
14758
14861
  searchValue.value = v;
14759
- searchRegex.value = new RegExp(escapeString(v.trim()), 'i');
14760
14862
  props.loadData && _loadData();
14761
14863
  };
14762
14864
  vue.watch(() => props.modelValue, v => {
@@ -14774,7 +14876,7 @@ const Select = /* @__PURE__ */ vue.defineComponent({
14774
14876
  add,
14775
14877
  remove,
14776
14878
  close,
14777
- searchRegex,
14879
+ searchValue,
14778
14880
  multiple,
14779
14881
  isActive,
14780
14882
  current: currentValue,
@@ -14859,6 +14961,8 @@ const Select = /* @__PURE__ */ vue.defineComponent({
14859
14961
  "modelValue": searchValue.value,
14860
14962
  "placeholder": props.searchPlaceholder,
14861
14963
  "onInput": handleSearch
14964
+ }, null), showSelectAll.value && vue.createVNode(SelectAll, {
14965
+ "data": options.value
14862
14966
  }, null)]), isLoading.value && vue.createVNode("div", {
14863
14967
  "class": "vc-select__loading"
14864
14968
  }, [vue.createVNode(Spin, {
@@ -14879,6 +14983,7 @@ const Select = /* @__PURE__ */ vue.defineComponent({
14879
14983
  default: () => {
14880
14984
  return item.children.map($item => {
14881
14985
  return vue.createVNode(Option, {
14986
+ "ref": el => setOption($item, el),
14882
14987
  "key": $item.value,
14883
14988
  "row": $item,
14884
14989
  "value": $item.value,
@@ -14892,6 +14997,7 @@ const Select = /* @__PURE__ */ vue.defineComponent({
14892
14997
  });
14893
14998
  }
14894
14999
  }) : vue.createVNode(Option, {
15000
+ "ref": el => setOption(item, el),
14895
15001
  "key": item.value,
14896
15002
  "row": item,
14897
15003
  "value": item.value,