@deot/vc-components 1.0.60 → 1.0.62

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, {
@@ -9674,10 +9674,11 @@ const useScroller = (expose) => {
9674
9674
  "vc-scroller__wrapper"
9675
9675
  ];
9676
9676
  });
9677
- const refreshSize = () => {
9677
+ const refreshSize = async () => {
9678
9678
  if (!wrapper.value) return;
9679
9679
  wrapperW.value = wrapper.value.clientWidth;
9680
9680
  wrapperH.value = wrapper.value.clientHeight;
9681
+ await vue.nextTick();
9681
9682
  contentH.value = wrapper.value.scrollHeight;
9682
9683
  contentW.value = wrapper.value.scrollWidth;
9683
9684
  };
@@ -9790,7 +9791,7 @@ const useScroller = (expose) => {
9790
9791
 
9791
9792
  /** @jsxImportSource vue */
9792
9793
 
9793
- const COMPONENT_NAME$1d = 'vc-scroller';
9794
+ const COMPONENT_NAME$1e = 'vc-scroller';
9794
9795
 
9795
9796
  /**
9796
9797
  * 作为备选方案,目前推荐使用ScrollerWheel
@@ -9801,7 +9802,7 @@ const COMPONENT_NAME$1d = 'vc-scroller';
9801
9802
  * 2. 增加了一层嵌套
9802
9803
  */
9803
9804
  const Scroller = /* @__PURE__ */ vue.defineComponent({
9804
- name: COMPONENT_NAME$1d,
9805
+ name: COMPONENT_NAME$1e,
9805
9806
  props: props$R,
9806
9807
  emits: ['scroll'],
9807
9808
  setup(props, {
@@ -9862,7 +9863,7 @@ const Scroller = /* @__PURE__ */ vue.defineComponent({
9862
9863
 
9863
9864
  /** @jsxImportSource vue */
9864
9865
 
9865
- const COMPONENT_NAME$1c = 'vc-scroller-wheel';
9866
+ const COMPONENT_NAME$1d = 'vc-scroller-wheel';
9866
9867
 
9867
9868
  /**
9868
9869
  * 为减少一层嵌套,为去除滚动bar的抖动,使用wheel模拟
@@ -9884,7 +9885,7 @@ const COMPONENT_NAME$1c = 'vc-scroller-wheel';
9884
9885
  * 设置scrollTop不会reflow和repaint,不需要考虑transfrom来改变content(transform也只在draw完成)
9885
9886
  */
9886
9887
  const ScrollerWheel = /* @__PURE__ */ vue.defineComponent({
9887
- name: COMPONENT_NAME$1c,
9888
+ name: COMPONENT_NAME$1d,
9888
9889
  props: Object.assign({}, props$R, {
9889
9890
  stopPropagation: {
9890
9891
  type: Boolean,
@@ -10073,9 +10074,9 @@ const props$Q = {
10073
10074
 
10074
10075
  /** @jsxImportSource vue */
10075
10076
 
10076
- const COMPONENT_NAME$1b = 'vc-drawer';
10077
+ const COMPONENT_NAME$1c = 'vc-drawer';
10077
10078
  const DrawerView = /* @__PURE__ */ vue.defineComponent({
10078
- name: COMPONENT_NAME$1b,
10079
+ name: COMPONENT_NAME$1c,
10079
10080
  props: props$Q,
10080
10081
  emits: ['close', 'update:modelValue', 'visible-change'],
10081
10082
  setup(props, {
@@ -10264,9 +10265,9 @@ const props$P = {
10264
10265
 
10265
10266
  /** @jsxImportSource vue */
10266
10267
 
10267
- const COMPONENT_NAME$1a = 'vc-dropdown';
10268
+ const COMPONENT_NAME$1b = 'vc-dropdown';
10268
10269
  const Dropdown = /* @__PURE__ */ vue.defineComponent({
10269
- name: COMPONENT_NAME$1a,
10270
+ name: COMPONENT_NAME$1b,
10270
10271
  props: props$P,
10271
10272
  inheritAttrs: false,
10272
10273
  emits: ['update:modelValue', 'ready', 'close', 'visible-change', 'click'],
@@ -10336,9 +10337,9 @@ const Dropdown = /* @__PURE__ */ vue.defineComponent({
10336
10337
 
10337
10338
  /** @jsxImportSource vue */
10338
10339
 
10339
- const COMPONENT_NAME$19 = 'vc-dropdown-menu';
10340
+ const COMPONENT_NAME$1a = 'vc-dropdown-menu';
10340
10341
  const DropdownMenu = /* @__PURE__ */ vue.defineComponent({
10341
- name: COMPONENT_NAME$19,
10342
+ name: COMPONENT_NAME$1a,
10342
10343
  setup(_, {
10343
10344
  slots
10344
10345
  }) {
@@ -10352,9 +10353,9 @@ const DropdownMenu = /* @__PURE__ */ vue.defineComponent({
10352
10353
 
10353
10354
  /** @jsxImportSource vue */
10354
10355
 
10355
- const COMPONENT_NAME$18 = 'vc-dropdown-item';
10356
+ const COMPONENT_NAME$19 = 'vc-dropdown-item';
10356
10357
  const DropdownItem = /* @__PURE__ */ vue.defineComponent({
10357
- name: COMPONENT_NAME$18,
10358
+ name: COMPONENT_NAME$19,
10358
10359
  emits: ['click'],
10359
10360
  props: {
10360
10361
  value: {
@@ -10559,9 +10560,9 @@ const defaults = {
10559
10560
 
10560
10561
  /** @jsxImportSource vue */
10561
10562
 
10562
- const COMPONENT_NAME$17 = 'vc-editor-toolbar';
10563
+ const COMPONENT_NAME$18 = 'vc-editor-toolbar';
10563
10564
  const EditorToolbar = /* @__PURE__ */ vue.defineComponent({
10564
- name: COMPONENT_NAME$17,
10565
+ name: COMPONENT_NAME$18,
10565
10566
  props: {
10566
10567
  options: [Array, Object],
10567
10568
  elementId: String
@@ -10769,9 +10770,9 @@ const props$O = {
10769
10770
 
10770
10771
  /** @jsxImportSource vue */
10771
10772
 
10772
- const COMPONENT_NAME$16 = 'vc-image-preview';
10773
+ const COMPONENT_NAME$17 = 'vc-image-preview';
10773
10774
  const ImagePreview$1 = /* @__PURE__ */ vue.defineComponent({
10774
- name: COMPONENT_NAME$16,
10775
+ name: COMPONENT_NAME$17,
10775
10776
  props: props$O,
10776
10777
  setup(props, {
10777
10778
  slots
@@ -10815,8 +10816,9 @@ const getFitSize = (src) => {
10815
10816
  });
10816
10817
  };
10817
10818
  const open$2 = async (options) => {
10819
+ const { data: originalData, current, ...photoSwipeOptions } = options;
10818
10820
  const e = VcInstance.globalEvent;
10819
- const data = options.data.map((i) => {
10821
+ const data = originalData.map((i) => {
10820
10822
  if (typeof i === "string") {
10821
10823
  return {
10822
10824
  src: i
@@ -10843,11 +10845,18 @@ const open$2 = async (options) => {
10843
10845
  arrowNextTitle: "下一张",
10844
10846
  errorMsg: "网络异常 图片加载失败",
10845
10847
  indexIndicatorSep: " / ",
10846
- initialZoomLevel: "fit"
10848
+ wheelToZoom: true,
10849
+ // 默认fit展示
10850
+ initialZoomLevel: "fit",
10851
+ // 最大展示或按钮+最大展示(如果原图size 乘 secondaryZoomLevel 还在屏幕内,不展示+号)
10852
+ secondaryZoomLevel: 4,
10853
+ // 滚轮/手势最大展示
10854
+ maxZoomLevel: 10,
10855
+ ...photoSwipeOptions
10847
10856
  });
10848
10857
  lightbox.init();
10849
10858
  lightbox.loadAndOpen(
10850
- options.current || 0,
10859
+ current || 0,
10851
10860
  data,
10852
10861
  // 下面无效,需要给官方支持
10853
10862
  {
@@ -10958,9 +10967,9 @@ const props$N = {
10958
10967
  }
10959
10968
  };
10960
10969
 
10961
- const COMPONENT_NAME$15 = "vc-upload";
10970
+ const COMPONENT_NAME$16 = "vc-upload";
10962
10971
  const Upload$1 = vue.defineComponent({
10963
- name: COMPONENT_NAME$15,
10972
+ name: COMPONENT_NAME$16,
10964
10973
  props: props$N,
10965
10974
  emits: [
10966
10975
  "message",
@@ -11494,9 +11503,9 @@ const props$M = {
11494
11503
 
11495
11504
  /** @jsxImportSource vue */
11496
11505
 
11497
- const COMPONENT_NAME$14 = 'vc-editor';
11506
+ const COMPONENT_NAME$15 = 'vc-editor';
11498
11507
  const Editor = /* @__PURE__ */ vue.defineComponent({
11499
- name: COMPONENT_NAME$14,
11508
+ name: COMPONENT_NAME$15,
11500
11509
  props: props$M,
11501
11510
  defaults,
11502
11511
  emits: ['ready', 'blur', 'focus', 'input', 'update:modelValue', 'change'],
@@ -11685,7 +11694,7 @@ const Editor = /* @__PURE__ */ vue.defineComponent({
11685
11694
 
11686
11695
  /** @jsxImportSource vue */
11687
11696
 
11688
- const COMPONENT_NAME$13 = 'vc-editor-view';
11697
+ const COMPONENT_NAME$14 = 'vc-editor-view';
11689
11698
  const setImages = v => {
11690
11699
  if (!v) return;
11691
11700
  const IMG_REGX = /<img.*?(?:>|\/>)/gi;
@@ -11703,7 +11712,7 @@ const setImages = v => {
11703
11712
  return;
11704
11713
  };
11705
11714
  const EditorView = /* @__PURE__ */ vue.defineComponent({
11706
- name: COMPONENT_NAME$13,
11715
+ name: COMPONENT_NAME$14,
11707
11716
  props: {
11708
11717
  value: {
11709
11718
  type: String,
@@ -11918,9 +11927,9 @@ const useForm = (expose, options = {}) => {
11918
11927
  });
11919
11928
  };
11920
11929
 
11921
- const COMPONENT_NAME$12 = "vc-form";
11930
+ const COMPONENT_NAME$13 = "vc-form";
11922
11931
  const Form = vue.defineComponent({
11923
- name: COMPONENT_NAME$12,
11932
+ name: COMPONENT_NAME$13,
11924
11933
  props: props$L,
11925
11934
  setup(props, { slots, expose }) {
11926
11935
  useForm(expose);
@@ -12268,9 +12277,9 @@ const useFormItem = (expose) => {
12268
12277
 
12269
12278
  /** @jsxImportSource vue */
12270
12279
 
12271
- const COMPONENT_NAME$11 = 'vc-form-item';
12280
+ const COMPONENT_NAME$12 = 'vc-form-item';
12272
12281
  const FormItem = /* @__PURE__ */ vue.defineComponent({
12273
- name: COMPONENT_NAME$11,
12282
+ name: COMPONENT_NAME$12,
12274
12283
  props: props$K,
12275
12284
  setup(props, {
12276
12285
  slots,
@@ -12338,9 +12347,9 @@ const props$J = {
12338
12347
  }
12339
12348
  };
12340
12349
 
12341
- const COMPONENT_NAME$10 = "vcm-form";
12350
+ const COMPONENT_NAME$11 = "vcm-form";
12342
12351
  const MForm = vue.defineComponent({
12343
- name: COMPONENT_NAME$10,
12352
+ name: COMPONENT_NAME$11,
12344
12353
  props: props$J,
12345
12354
  setup(props, { slots, expose }) {
12346
12355
  useForm(expose, {
@@ -12371,9 +12380,9 @@ const props$I = {
12371
12380
 
12372
12381
  /** @jsxImportSource vue */
12373
12382
 
12374
- const COMPONENT_NAME$$ = 'vcm-form-item';
12383
+ const COMPONENT_NAME$10 = 'vcm-form-item';
12375
12384
  const MFormItem = /* @__PURE__ */ vue.defineComponent({
12376
- name: COMPONENT_NAME$$,
12385
+ name: COMPONENT_NAME$10,
12377
12386
  props: props$I,
12378
12387
  setup(props, {
12379
12388
  slots,
@@ -12428,9 +12437,9 @@ const MFormItem = /* @__PURE__ */ vue.defineComponent({
12428
12437
  }
12429
12438
  });
12430
12439
 
12431
- const COMPONENT_NAME$_ = "vc-fragment";
12440
+ const COMPONENT_NAME$$ = "vc-fragment";
12432
12441
  const Fragment = vue.defineComponent({
12433
- name: COMPONENT_NAME$_,
12442
+ name: COMPONENT_NAME$$,
12434
12443
  setup(_, { slots }) {
12435
12444
  return () => vue.h(vue.Fragment, slots.default?.());
12436
12445
  }
@@ -12469,9 +12478,9 @@ const props$H = {
12469
12478
 
12470
12479
  /** @jsxImportSource vue */
12471
12480
 
12472
- const COMPONENT_NAME$Z = 'vc-snapshot';
12481
+ const COMPONENT_NAME$_ = 'vc-snapshot';
12473
12482
  const Snapshot = /* @__PURE__ */ vue.defineComponent({
12474
- name: COMPONENT_NAME$Z,
12483
+ name: COMPONENT_NAME$_,
12475
12484
  props: props$H,
12476
12485
  emits: ['ready'],
12477
12486
  setup(props, {
@@ -12630,7 +12639,7 @@ const IMGStore$1 = new IMGStore();
12630
12639
 
12631
12640
  /** @jsxImportSource vue */
12632
12641
 
12633
- const COMPONENT_NAME$Y = 'vc-image';
12642
+ const COMPONENT_NAME$Z = 'vc-image';
12634
12643
  let isSupportObjectFit = false;
12635
12644
  window.addEventListener('DOMContentLoaded', () => {
12636
12645
  isSupportObjectFit = !vcShared.IS_SERVER && document.documentElement.style.objectFit !== undefined;
@@ -12643,7 +12652,7 @@ const ObjectFit = {
12643
12652
  SCALE_DOWN: 'scale-down'
12644
12653
  };
12645
12654
  const Image$1 = /* @__PURE__ */ vue.defineComponent({
12646
- name: COMPONENT_NAME$Y,
12655
+ name: COMPONENT_NAME$Z,
12647
12656
  inheritAttrs: false,
12648
12657
  props: props$G,
12649
12658
  setup(props, {
@@ -12860,9 +12869,9 @@ const props$F = {
12860
12869
 
12861
12870
  /** @jsxImportSource vue */
12862
12871
 
12863
- const COMPONENT_NAME$X = 'vc-image-crop';
12872
+ const COMPONENT_NAME$Y = 'vc-image-crop';
12864
12873
  const ImageCrop = /* @__PURE__ */ vue.defineComponent({
12865
- name: COMPONENT_NAME$X,
12874
+ name: COMPONENT_NAME$Y,
12866
12875
  props: props$F,
12867
12876
  setup(props, {
12868
12877
  slots
@@ -12888,9 +12897,9 @@ const props$E = {
12888
12897
 
12889
12898
  /** @jsxImportSource vue */
12890
12899
 
12891
- const COMPONENT_NAME$W = 'vc-image-processing';
12900
+ const COMPONENT_NAME$X = 'vc-image-processing';
12892
12901
  const ImageProcessing = /* @__PURE__ */ vue.defineComponent({
12893
- name: COMPONENT_NAME$W,
12902
+ name: COMPONENT_NAME$X,
12894
12903
  props: props$E,
12895
12904
  setup(props, {
12896
12905
  slots
@@ -12907,9 +12916,9 @@ const MImageProcessing = ImageProcessing;
12907
12916
 
12908
12917
  /** @jsxImportSource vue */
12909
12918
 
12910
- const COMPONENT_NAME$V = 'vcm-input';
12919
+ const COMPONENT_NAME$W = 'vcm-input';
12911
12920
  const MInput = /* @__PURE__ */ vue.defineComponent({
12912
- name: COMPONENT_NAME$V,
12921
+ name: COMPONENT_NAME$W,
12913
12922
  inheritAttrs: false,
12914
12923
  props: {
12915
12924
  ...props$1h,
@@ -12998,9 +13007,9 @@ const MInput = /* @__PURE__ */ vue.defineComponent({
12998
13007
 
12999
13008
  /** @jsxImportSource vue */
13000
13009
 
13001
- const COMPONENT_NAME$U = 'vcm-input-number';
13010
+ const COMPONENT_NAME$V = 'vcm-input-number';
13002
13011
  const MInputNumber = /* @__PURE__ */ vue.defineComponent({
13003
- name: COMPONENT_NAME$U,
13012
+ name: COMPONENT_NAME$V,
13004
13013
  props: props$1g,
13005
13014
  inheritAttrs: false,
13006
13015
  setup(props, {
@@ -13049,9 +13058,9 @@ const MInputNumber = /* @__PURE__ */ vue.defineComponent({
13049
13058
 
13050
13059
  /** @jsxImportSource vue */
13051
13060
 
13052
- const COMPONENT_NAME$T = 'vcm-input-search';
13061
+ const COMPONENT_NAME$U = 'vcm-input-search';
13053
13062
  const MInputSearch = /* @__PURE__ */ vue.defineComponent({
13054
- name: COMPONENT_NAME$T,
13063
+ name: COMPONENT_NAME$U,
13055
13064
  props: {
13056
13065
  ...props$1f,
13057
13066
  cancelText: {
@@ -13128,9 +13137,9 @@ const props$D = {
13128
13137
  }
13129
13138
  };
13130
13139
 
13131
- const COMPONENT_NAME$S = "vcm-list";
13140
+ const COMPONENT_NAME$T = "vcm-list";
13132
13141
  const MList = vue.defineComponent({
13133
- name: COMPONENT_NAME$S,
13142
+ name: COMPONENT_NAME$T,
13134
13143
  props: props$D,
13135
13144
  setup(props, { slots }) {
13136
13145
  vue.provide("vc-list", { props });
@@ -13185,10 +13194,10 @@ const props$C = {
13185
13194
 
13186
13195
  /** @jsxImportSource vue */
13187
13196
 
13188
- const COMPONENT_NAME$R = 'vcm-list-item';
13197
+ const COMPONENT_NAME$S = 'vcm-list-item';
13189
13198
  const HTTP_REGEX = /[a-zA-z]+:\/\/[^\s]*/;
13190
13199
  const MListItem = /* @__PURE__ */ vue.defineComponent({
13191
- name: COMPONENT_NAME$R,
13200
+ name: COMPONENT_NAME$S,
13192
13201
  props: props$C,
13193
13202
  emits: ['click'],
13194
13203
  setup(props, {
@@ -13282,11 +13291,11 @@ const props$B = {
13282
13291
 
13283
13292
  /** @jsxImportSource vue */
13284
13293
 
13285
- const COMPONENT_NAME$Q = 'vc-marquee';
13294
+ const COMPONENT_NAME$R = 'vc-marquee';
13286
13295
  const ANIMATION = $.prefixStyle('animation').camel;
13287
13296
  const TRANSFORM_KEBAB = $.prefixStyle('transform').kebab;
13288
13297
  const Marquee = /* @__PURE__ */ vue.defineComponent({
13289
- name: COMPONENT_NAME$Q,
13298
+ name: COMPONENT_NAME$R,
13290
13299
  props: props$B,
13291
13300
  setup(props, {
13292
13301
  slots
@@ -13354,9 +13363,9 @@ const props$A = {
13354
13363
  }
13355
13364
  };
13356
13365
 
13357
- const COMPONENT_NAME$P = "vc-resizer";
13366
+ const COMPONENT_NAME$Q = "vc-resizer";
13358
13367
  const Resizer = vue.defineComponent({
13359
- name: COMPONENT_NAME$P,
13368
+ name: COMPONENT_NAME$Q,
13360
13369
  props: props$A,
13361
13370
  emits: ["resize"],
13362
13371
  setup(props, { emit, slots, expose }) {
@@ -13526,10 +13535,10 @@ const props$z = {
13526
13535
 
13527
13536
  /** @jsxImportSource vue */
13528
13537
 
13529
- const COMPONENT_NAME$O = 'vc-modal';
13538
+ const COMPONENT_NAME$P = 'vc-modal';
13530
13539
  let zIndexNumber = 1002;
13531
13540
  const ModalView = /* @__PURE__ */ vue.defineComponent({
13532
- name: COMPONENT_NAME$O,
13541
+ name: COMPONENT_NAME$P,
13533
13542
  emits: ['update:modelValue', 'close', 'portal-fulfilled', 'visible-change', 'ok', 'cancel'],
13534
13543
  props: props$z,
13535
13544
  setup(props, {
@@ -13968,9 +13977,9 @@ const props$y = {
13968
13977
 
13969
13978
  /** @jsxImportSource vue */
13970
13979
 
13971
- const COMPONENT_NAME$N = 'vc-modal';
13980
+ const COMPONENT_NAME$O = 'vc-modal';
13972
13981
  const MModalView = /* @__PURE__ */ vue.defineComponent({
13973
- name: COMPONENT_NAME$N,
13982
+ name: COMPONENT_NAME$O,
13974
13983
  emits: ['update:modelValue', 'portal-fulfilled', 'close', 'ok', 'cancel'],
13975
13984
  props: props$y,
13976
13985
  setup(props, {
@@ -14182,9 +14191,9 @@ const props$x = {
14182
14191
 
14183
14192
  /** @jsxImportSource vue */
14184
14193
 
14185
- const COMPONENT_NAME$M = 'vc-notice';
14194
+ const COMPONENT_NAME$N = 'vc-notice';
14186
14195
  const NoticeView = /* @__PURE__ */ vue.defineComponent({
14187
- name: COMPONENT_NAME$M,
14196
+ name: COMPONENT_NAME$N,
14188
14197
  props: props$x,
14189
14198
  emits: ['portal-fulfilled', 'close', 'before-close'],
14190
14199
  setup(props, {
@@ -14357,9 +14366,9 @@ const props$w = {
14357
14366
 
14358
14367
  /** @jsxImportSource vue */
14359
14368
 
14360
- const COMPONENT_NAME$L = 'vc-option';
14369
+ const COMPONENT_NAME$M = 'vc-option';
14361
14370
  const Option$1 = /* @__PURE__ */ vue.defineComponent({
14362
- name: COMPONENT_NAME$L,
14371
+ name: COMPONENT_NAME$M,
14363
14372
  props: props$w,
14364
14373
  setup(props, {
14365
14374
  slots
@@ -14443,9 +14452,9 @@ const props$u = {
14443
14452
 
14444
14453
  /** @jsxImportSource vue */
14445
14454
 
14446
- const COMPONENT_NAME$K = 'vc-tag';
14455
+ const COMPONENT_NAME$L = 'vc-tag';
14447
14456
  const Tag = /* @__PURE__ */ vue.defineComponent({
14448
- name: COMPONENT_NAME$K,
14457
+ name: COMPONENT_NAME$L,
14449
14458
  props: props$u,
14450
14459
  emits: ['close', 'change'],
14451
14460
  setup(props, {
@@ -14516,12 +14525,13 @@ const props$t = {
14516
14525
 
14517
14526
  /** @jsxImportSource vue */
14518
14527
 
14519
- const COMPONENT_NAME$J = 'vc-select-option';
14528
+ const COMPONENT_NAME$K = 'vc-select-option';
14520
14529
  const Option = /* @__PURE__ */ vue.defineComponent({
14521
- name: COMPONENT_NAME$J,
14530
+ name: COMPONENT_NAME$K,
14522
14531
  props: props$t,
14523
14532
  setup(props, {
14524
- slots
14533
+ slots,
14534
+ expose
14525
14535
  }) {
14526
14536
  const owner = vcHooks.getInstance('select', 'selectId');
14527
14537
  const formatterLabel = vue.computed(() => {
@@ -14542,8 +14552,10 @@ const Option = /* @__PURE__ */ vue.defineComponent({
14542
14552
  return !multiple.value ? true : current.value.slice(-1)[0] === props.value;
14543
14553
  });
14544
14554
  const isActive = vue.computed(() => {
14545
- const regex = owner.exposed.searchRegex.value;
14546
- return regex.test(formatterLabel.value) || !props.filterable;
14555
+ const {
14556
+ searchRegex
14557
+ } = owner.exposed;
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,24 @@ 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 searchRegex = vue.computed(() => {
14784
+ const v = searchValue.value.trim().replace(/\s+/g, ' ').split(/\s|,/);
14785
+ return new RegExp(escapeString(`(${v.join('|')})`), 'i');
14786
+ });
14787
+ const optionMap = vue.ref({});
14788
+ const options = vue.computed(() => {
14789
+ return Object.values(optionMap.value);
14790
+ });
14791
+ const showSelectAll = vue.computed(() => {
14792
+ return props.searchable && multiple.value && searchValue.value.trim().length > 0 && options.value.length > 0;
14793
+ });
14794
+ const setOption = (item, el) => {
14795
+ if (el) {
14796
+ optionMap.value[item.value] = el;
14797
+ } else {
14798
+ delete optionMap.value[item.value];
14799
+ }
14800
+ };
14694
14801
 
14695
14802
  /**
14696
14803
  * v-model 同步, 外部的数据改变时不会触发
@@ -14736,7 +14843,7 @@ const Select = /* @__PURE__ */ vue.defineComponent({
14736
14843
  sync();
14737
14844
  };
14738
14845
  const remove = v => {
14739
- const index = currentValue.value.findIndex(i => i == v);
14846
+ const index = currentValue.value.findIndex(i => i === v);
14740
14847
  currentValue.value.splice(index, 1);
14741
14848
  sync();
14742
14849
  };
@@ -14756,7 +14863,6 @@ const Select = /* @__PURE__ */ vue.defineComponent({
14756
14863
  };
14757
14864
  const handleSearch = v => {
14758
14865
  searchValue.value = v;
14759
- searchRegex.value = new RegExp(escapeString(v.trim()), 'i');
14760
14866
  props.loadData && _loadData();
14761
14867
  };
14762
14868
  vue.watch(() => props.modelValue, v => {
@@ -14859,6 +14965,8 @@ const Select = /* @__PURE__ */ vue.defineComponent({
14859
14965
  "modelValue": searchValue.value,
14860
14966
  "placeholder": props.searchPlaceholder,
14861
14967
  "onInput": handleSearch
14968
+ }, null), showSelectAll.value && vue.createVNode(SelectAll, {
14969
+ "data": options.value
14862
14970
  }, null)]), isLoading.value && vue.createVNode("div", {
14863
14971
  "class": "vc-select__loading"
14864
14972
  }, [vue.createVNode(Spin, {
@@ -14879,6 +14987,7 @@ const Select = /* @__PURE__ */ vue.defineComponent({
14879
14987
  default: () => {
14880
14988
  return item.children.map($item => {
14881
14989
  return vue.createVNode(Option, {
14990
+ "ref": el => setOption($item, el),
14882
14991
  "key": $item.value,
14883
14992
  "row": $item,
14884
14993
  "value": $item.value,
@@ -14892,6 +15001,7 @@ const Select = /* @__PURE__ */ vue.defineComponent({
14892
15001
  });
14893
15002
  }
14894
15003
  }) : vue.createVNode(Option, {
15004
+ "ref": el => setOption(item, el),
14895
15005
  "key": item.value,
14896
15006
  "row": item,
14897
15007
  "value": item.value,
@@ -19045,6 +19155,10 @@ const TableHeader = /* @__PURE__ */ vue.defineComponent({
19045
19155
  sort: {
19046
19156
  type: Object,
19047
19157
  default: () => ({})
19158
+ },
19159
+ resizable: {
19160
+ type: Boolean,
19161
+ default: void 0
19048
19162
  }
19049
19163
  },
19050
19164
  setup(props) {
@@ -19053,6 +19167,9 @@ const TableHeader = /* @__PURE__ */ vue.defineComponent({
19053
19167
  const draggingColumn = vue.ref(null);
19054
19168
  const dragging = vue.ref(false);
19055
19169
  const dragState = vue.ref({});
19170
+ const allowDrag = vue.computed(() => {
19171
+ return typeof props.resizable === 'boolean' ? props.resizable : props.border;
19172
+ });
19056
19173
  const states = useStates({
19057
19174
  columns: 'columns',
19058
19175
  isAllSelected: 'isAllSelected',
@@ -19156,10 +19273,10 @@ const TableHeader = /* @__PURE__ */ vue.defineComponent({
19156
19273
  if (vcShared.IS_SERVER) return;
19157
19274
  if (column.children && column.children.length > 0) return;
19158
19275
  /* istanbul ignore if */
19159
- if (draggingColumn.value && props.border) {
19276
+ if (draggingColumn.value && allowDrag.value) {
19160
19277
  dragging.value = true;
19161
19278
  table.resizeProxyVisible.value = true;
19162
- const tableEl = table.vnode.el;
19279
+ const tableEl = table.tableWrapper.value;
19163
19280
  const tableLeft = tableEl.getBoundingClientRect().left;
19164
19281
  const columnEl = instance.vnode.el.querySelector(`.vc-table__th.${column.id}`);
19165
19282
  const columnRect = columnEl.getBoundingClientRect();
@@ -19188,15 +19305,14 @@ const TableHeader = /* @__PURE__ */ vue.defineComponent({
19188
19305
  } = dragState.value;
19189
19306
  const finalLeft = parseInt(resizeProxy.style.left, 10);
19190
19307
  const columnWidth = finalLeft - startColumnLeft;
19191
- column.width = columnWidth;
19192
- column.realWidth = column.width;
19193
- table.$emit('header-dragend', column.width, startLeft - startColumnLeft, column, event);
19308
+ column.width = column.minWidth = column.realWidth = columnWidth;
19309
+ table.emit('header-dragend', column.width, startLeft - startColumnLeft, column);
19194
19310
  table.store.scheduleLayout();
19195
19311
  document.body.style.cursor = '';
19196
19312
  dragging.value = false;
19197
19313
  draggingColumn.value = null;
19198
19314
  dragState.value = {};
19199
- table.resizeProxyVisible = false;
19315
+ table.resizeProxyVisible.value = false;
19200
19316
  }
19201
19317
  document.removeEventListener('mousemove', handleMouseMove);
19202
19318
  document.removeEventListener('mouseup', handleMouseUp);
@@ -19217,7 +19333,7 @@ const TableHeader = /* @__PURE__ */ vue.defineComponent({
19217
19333
  target = target.parentNode;
19218
19334
  }
19219
19335
  if (!column || !column.resizable) return;
19220
- if (!dragging.value && props.border) {
19336
+ if (!dragging.value && allowDrag.value) {
19221
19337
  const rect = target.getBoundingClientRect();
19222
19338
  const bodyStyle = document.body.style;
19223
19339
  if (rect.width > 12 && rect.right - event.pageX < 8) {
@@ -19524,7 +19640,11 @@ const props$d = {
19524
19640
  default: () => ({})
19525
19641
  },
19526
19642
  // 用于延迟渲染,用于计算高度
19527
- delay: Number
19643
+ delay: Number,
19644
+ resizable: {
19645
+ type: Boolean,
19646
+ default: void 0
19647
+ }
19528
19648
  };
19529
19649
 
19530
19650
  /** @jsxImportSource vue */
@@ -19533,7 +19653,7 @@ const COMPONENT_NAME$j = 'vc-table';
19533
19653
  const Table = /* @__PURE__ */ vue.defineComponent({
19534
19654
  name: COMPONENT_NAME$j,
19535
19655
  props: props$d,
19536
- emits: ['select', 'select-all', 'selection-change', 'cell-mouse-enter', 'cell-mouse-leave', 'cell-click', 'cell-dblclick', 'row-click', 'row-contextmenu', 'row-dblclick', 'header-click', 'header-contextmenu', 'current-change', 'header-dragend ', 'expand-change', 'sort-change', 'update:sort'],
19656
+ emits: ['select', 'select-all', 'selection-change', 'cell-mouse-enter', 'cell-mouse-leave', 'cell-click', 'cell-dblclick', 'row-click', 'row-contextmenu', 'row-dblclick', 'header-click', 'header-contextmenu', 'current-change', 'header-dragend', 'expand-change', 'sort-change', 'update:sort'],
19537
19657
  setup(props, {
19538
19658
  slots,
19539
19659
  expose,
@@ -19554,7 +19674,7 @@ const Table = /* @__PURE__ */ vue.defineComponent({
19554
19674
  width: null,
19555
19675
  height: null
19556
19676
  });
19557
-
19677
+ const tableWrapper = vue.ref(null);
19558
19678
  // refs
19559
19679
  const hiddenColumns = vue.ref(null);
19560
19680
  const headerWrapper = vue.ref(null);
@@ -19912,6 +20032,7 @@ const Table = /* @__PURE__ */ vue.defineComponent({
19912
20032
  toggleRowExpansion,
19913
20033
  clearSelection,
19914
20034
  scroller,
20035
+ tableWrapper,
19915
20036
  headerWrapper,
19916
20037
  appendWrapper,
19917
20038
  footerWrapper,
@@ -19922,12 +20043,15 @@ const Table = /* @__PURE__ */ vue.defineComponent({
19922
20043
  renderExpanded,
19923
20044
  hiddenColumns,
19924
20045
  props,
19925
- emit
20046
+ emit,
20047
+ resizeProxy,
20048
+ resizeProxyVisible
19926
20049
  };
19927
20050
  expose(exposed);
19928
20051
  vue.provide('vc-table', exposed);
19929
20052
  return () => {
19930
20053
  return vue.createVNode("div", {
20054
+ "ref": tableWrapper,
19931
20055
  "class": [classes.value, tableId, 'vc-table'],
19932
20056
  "onMouseleave": handleMouseLeave
19933
20057
  }, [vue.createVNode("div", {
@@ -19939,6 +20063,7 @@ const Table = /* @__PURE__ */ vue.defineComponent({
19939
20063
  }, [vue.createVNode(TableHeader, {
19940
20064
  "ref": tableHeader,
19941
20065
  "border": props.border,
20066
+ "resizable": props.resizable,
19942
20067
  "sort": props.sort,
19943
20068
  "style": bodyWidthStyle.value
19944
20069
  }, null)]), states.columns.length > 0 && vue.createVNode(ScrollerWheel, {
@@ -19956,15 +20081,10 @@ const Table = /* @__PURE__ */ vue.defineComponent({
19956
20081
  "style": [bodyWidthStyle.value],
19957
20082
  "height-style": [bodyHeightStyle.value],
19958
20083
  "onScroll": handleScollY
19959
- }, null), props.data.length === 0 && vue.createVNode("div", {
19960
- "ref": emptyBlock,
19961
- "style": bodyWidthStyle.value,
19962
- "class": [{
19963
- 'is-absolute': !!props.height
19964
- }, 'vc-table__empty-wrapper']
19965
- }, [vue.createVNode("span", {
19966
- "class": "vc-table__empty-text"
19967
- }, [slots.empty ? slots.empty() : props.emptyText || '暂无数据'])]), slots.append && vue.createVNode("div", {
20084
+ }, null), props.data.length === 0 && !props.height && vue.createVNode("div", {
20085
+ "class": "vc-table__empty-placeholder",
20086
+ "style": [bodyWidthStyle.value]
20087
+ }, null), slots.append && vue.createVNode("div", {
19968
20088
  "ref": appendWrapper,
19969
20089
  "class": "vc-table__append-wrapper"
19970
20090
  }, [slots.append()])]
@@ -19988,6 +20108,7 @@ const Table = /* @__PURE__ */ vue.defineComponent({
19988
20108
  }, [vue.createVNode(TableHeader, {
19989
20109
  "ref": leftFixedTableHeader,
19990
20110
  "border": props.border,
20111
+ "resizable": props.resizable,
19991
20112
  "sort": props.sort,
19992
20113
  "style": bodyWidthStyle.value,
19993
20114
  "fixed": "left"
@@ -20027,6 +20148,7 @@ const Table = /* @__PURE__ */ vue.defineComponent({
20027
20148
  }, [vue.createVNode(TableHeader, {
20028
20149
  "ref": rightFixedTableHeader,
20029
20150
  "border": props.border,
20151
+ "resizable": props.resizable,
20030
20152
  "sort": props.sort,
20031
20153
  "style": bodyWidthStyle.value,
20032
20154
  "fixed": "right"
@@ -20054,7 +20176,14 @@ const Table = /* @__PURE__ */ vue.defineComponent({
20054
20176
  "get-summary": props.getSummary,
20055
20177
  "style": bodyWidthStyle.value,
20056
20178
  "fixed": "right"
20057
- }, null)]), [[vue.vShow, props.data && props.data.length > 0]])]), vue.withDirectives(vue.createVNode("div", {
20179
+ }, null)]), [[vue.vShow, props.data && props.data.length > 0]])]), props.data.length === 0 && vue.createVNode("div", {
20180
+ "ref": emptyBlock,
20181
+ "class": [{
20182
+ 'has-height': !!props.height
20183
+ }, 'vc-table__empty-wrapper']
20184
+ }, [slots.empty ? slots.empty() : vue.createVNode("span", {
20185
+ "class": "vc-table__empty-text"
20186
+ }, [props.emptyText || '暂无数据'])]), vue.withDirectives(vue.createVNode("div", {
20058
20187
  "ref": resizeProxy,
20059
20188
  "class": "vc-table__column-resize-proxy"
20060
20189
  }, null), [[vue.vShow, resizeProxyVisible.value]])]);