vft 0.0.61 → 0.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.
Files changed (155) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.css +1 -1
  3. package/es/component.js +26 -22
  4. package/es/components/back-top/back-top.vue2.js +4 -2
  5. package/es/components/color-picker/color-picker.vue.d.ts +3 -1
  6. package/es/components/color-picker/color-picker.vue2.js +31 -30
  7. package/es/components/color-picker/index.d.ts +3 -1
  8. package/es/components/context-menu/context-menu.vue2.js +4 -2
  9. package/es/components/dialog/dialog.vue.d.ts +1 -1
  10. package/es/components/dialog/dialog.vue2.js +52 -53
  11. package/es/components/dialog/index.d.ts +3 -3
  12. package/es/components/dialog/index.js +1 -1
  13. package/es/components/dialog/style/css.js +1 -1
  14. package/es/components/dropdown/dropdown.vue.d.ts +5 -5
  15. package/es/components/dropdown/index.d.ts +5 -5
  16. package/es/components/icon-text/icon-text.vue.d.ts +10 -4
  17. package/es/components/icon-text/icon-text.vue2.js +28 -26
  18. package/es/components/icon-text/index.d.ts +10 -4
  19. package/es/components/index.d.ts +2 -0
  20. package/es/components/index.js +117 -109
  21. package/es/components/list-cell/index.d.ts +38 -0
  22. package/es/components/list-cell/index.js +12 -0
  23. package/es/components/list-cell/list-cell.vue.d.ts +53 -0
  24. package/es/components/list-cell/list-cell.vue.js +4 -0
  25. package/es/components/list-cell/list-cell.vue2.js +68 -0
  26. package/es/components/list-cell/style/css.d.ts +0 -0
  27. package/es/components/list-cell/style/css.js +2 -0
  28. package/es/components/list-cell/style/index.d.ts +0 -0
  29. package/es/components/list-cell/style/index.js +2 -0
  30. package/es/components/md-container/md-container.vue2.js +4 -2
  31. package/es/components/menu/index.d.ts +2 -2
  32. package/es/components/menu/menu-item.vue2.js +14 -12
  33. package/es/components/menu/menu.vue.d.ts +2 -2
  34. package/es/components/menu/sub-menu.vue2.js +4 -2
  35. package/es/components/multiple-tabs/multiple-tabs.vue2.js +5 -3
  36. package/es/components/multiple-tabs/tab-content.vue.d.ts +8 -0
  37. package/es/components/multiple-tabs/tab-content.vue2.js +13 -12
  38. package/es/components/multiple-tabs/use/use-tab-dropdown.js +12 -12
  39. package/es/components/result/result.vue2.js +4 -2
  40. package/es/components/search/search.vue2.js +4 -2
  41. package/es/components/select-v2/defaults.d.ts +1 -1
  42. package/es/components/select-v2/index.d.ts +16 -16
  43. package/es/components/select-v2/select.vue.d.ts +8 -8
  44. package/es/components/select-v2/useSelect.d.ts +5 -5
  45. package/es/components/side-menu/index.d.ts +38 -1
  46. package/es/components/side-menu/side-menu.vue.d.ts +38 -1
  47. package/es/components/side-menu/side-menu.vue2.js +144 -113
  48. package/es/components/side-menu/use-drag-line.d.ts +10 -0
  49. package/es/components/side-menu/use-drag-line.js +51 -0
  50. package/es/components/switch/index.d.ts +1 -1
  51. package/es/components/switch/switch.vue.d.ts +1 -1
  52. package/es/components/tabs/tab-nav.vue2.js +4 -2
  53. package/es/components/tooltip/index.d.ts +2 -2
  54. package/es/components/tooltip/tooltip.vue.d.ts +2 -2
  55. package/es/components/virtual-list/builders/build-list.d.ts +38 -38
  56. package/es/components/virtual-list/components/scrollbar.d.ts +1 -1
  57. package/es/defaults.d.ts +1 -1
  58. package/es/index.d.ts +1 -1
  59. package/es/index.js +248 -239
  60. package/es/package.json.js +1 -1
  61. package/es/utils/index.js +31 -30
  62. package/es/utils/ns-cover.d.ts +6 -3
  63. package/es/utils/ns-cover.js +25 -15
  64. package/global.d.ts +2 -70
  65. package/lib/component.cjs +1 -1
  66. package/lib/components/back-top/back-top.vue2.cjs +1 -1
  67. package/lib/components/color-picker/color-picker.vue.d.ts +3 -1
  68. package/lib/components/color-picker/color-picker.vue2.cjs +1 -1
  69. package/lib/components/color-picker/index.d.ts +3 -1
  70. package/lib/components/context-menu/context-menu.vue2.cjs +1 -1
  71. package/lib/components/dialog/dialog.vue.d.ts +1 -1
  72. package/lib/components/dialog/dialog.vue2.cjs +1 -1
  73. package/lib/components/dialog/index.cjs +1 -1
  74. package/lib/components/dialog/index.d.ts +3 -3
  75. package/lib/components/dialog/style/css.cjs +1 -1
  76. package/lib/components/dropdown/dropdown.vue.d.ts +5 -5
  77. package/lib/components/dropdown/index.d.ts +5 -5
  78. package/lib/components/icon-text/icon-text.vue.d.ts +10 -4
  79. package/lib/components/icon-text/icon-text.vue2.cjs +1 -1
  80. package/lib/components/icon-text/index.d.ts +10 -4
  81. package/lib/components/index.cjs +1 -1
  82. package/lib/components/index.d.ts +2 -0
  83. package/lib/components/list-cell/index.cjs +1 -0
  84. package/lib/components/list-cell/index.d.ts +38 -0
  85. package/lib/components/list-cell/list-cell.vue.cjs +1 -0
  86. package/lib/components/list-cell/list-cell.vue.d.ts +53 -0
  87. package/lib/components/list-cell/list-cell.vue2.cjs +1 -0
  88. package/lib/components/list-cell/style/css.cjs +1 -0
  89. package/lib/components/list-cell/style/css.d.ts +0 -0
  90. package/lib/components/list-cell/style/index.cjs +1 -0
  91. package/lib/components/list-cell/style/index.d.ts +0 -0
  92. package/lib/components/md-container/md-container.vue2.cjs +1 -1
  93. package/lib/components/menu/index.d.ts +2 -2
  94. package/lib/components/menu/menu-item.vue2.cjs +1 -1
  95. package/lib/components/menu/menu.vue.d.ts +2 -2
  96. package/lib/components/menu/sub-menu.vue2.cjs +1 -1
  97. package/lib/components/multiple-tabs/multiple-tabs.vue2.cjs +1 -1
  98. package/lib/components/multiple-tabs/tab-content.vue.d.ts +8 -0
  99. package/lib/components/multiple-tabs/tab-content.vue2.cjs +1 -1
  100. package/lib/components/multiple-tabs/use/use-tab-dropdown.cjs +1 -1
  101. package/lib/components/result/result.vue2.cjs +1 -1
  102. package/lib/components/search/search.vue2.cjs +1 -1
  103. package/lib/components/select-v2/defaults.d.ts +1 -1
  104. package/lib/components/select-v2/index.d.ts +16 -16
  105. package/lib/components/select-v2/select.vue.d.ts +8 -8
  106. package/lib/components/select-v2/useSelect.d.ts +5 -5
  107. package/lib/components/side-menu/index.d.ts +38 -1
  108. package/lib/components/side-menu/side-menu.vue.d.ts +38 -1
  109. package/lib/components/side-menu/side-menu.vue2.cjs +1 -1
  110. package/lib/components/side-menu/use-drag-line.cjs +1 -0
  111. package/lib/components/side-menu/use-drag-line.d.ts +10 -0
  112. package/lib/components/switch/index.d.ts +1 -1
  113. package/lib/components/switch/switch.vue.d.ts +1 -1
  114. package/lib/components/tabs/tab-nav.vue2.cjs +1 -1
  115. package/lib/components/tooltip/index.d.ts +2 -2
  116. package/lib/components/tooltip/tooltip.vue.d.ts +2 -2
  117. package/lib/components/virtual-list/builders/build-list.d.ts +38 -38
  118. package/lib/components/virtual-list/components/scrollbar.d.ts +1 -1
  119. package/lib/defaults.d.ts +1 -1
  120. package/lib/index.cjs +1 -1
  121. package/lib/index.d.ts +1 -1
  122. package/lib/package.json.cjs +1 -1
  123. package/lib/utils/index.cjs +1 -1
  124. package/lib/utils/ns-cover.cjs +1 -1
  125. package/lib/utils/ns-cover.d.ts +6 -3
  126. package/package.json +1 -1
  127. package/tags.json +1 -1
  128. package/theme-style/base.css +1 -1
  129. package/theme-style/dark/css-vars.css +1 -1
  130. package/theme-style/index.css +1 -1
  131. package/theme-style/src/common/var.scss +13 -2
  132. package/theme-style/src/dark/var.scss +3 -3
  133. package/theme-style/src/dialog.scss +6 -4
  134. package/theme-style/src/footer-layout.scss +1 -0
  135. package/theme-style/src/index.scss +1 -0
  136. package/theme-style/src/list-cell.scss +55 -0
  137. package/theme-style/src/loading.scss +1 -1
  138. package/theme-style/src/md-container.scss +2 -3
  139. package/theme-style/src/menu.scss +5 -1
  140. package/theme-style/src/multiple-tabs.scss +1 -1
  141. package/theme-style/src/pagination.scss +1 -5
  142. package/theme-style/src/popover.scss +3 -3
  143. package/theme-style/src/side-menu.scss +21 -5
  144. package/theme-style/src/var.scss +0 -2
  145. package/theme-style/vft-back-top.css +1 -1
  146. package/theme-style/vft-dialog.css +1 -1
  147. package/theme-style/vft-footer-layout.css +1 -1
  148. package/theme-style/vft-list-cell.css +1 -0
  149. package/theme-style/vft-loading.css +1 -1
  150. package/theme-style/vft-md-container.css +1 -1
  151. package/theme-style/vft-menu.css +1 -1
  152. package/theme-style/vft-popover.css +1 -1
  153. package/theme-style/vft-side-menu.css +1 -1
  154. package/theme-style/vft-var.css +1 -1
  155. package/web-types.json +1 -1
@@ -2,7 +2,7 @@ import type { SFCWithInstall } from 'vft/es/utils';
2
2
  declare const _Select: SFCWithInstall<import("vue").DefineComponent<{
3
3
  allowCreate: BooleanConstructor;
4
4
  autocomplete: {
5
- type: import("vue").PropType<"none" | "both" | "list" | "inline">;
5
+ type: import("vue").PropType<"inline" | "none" | "list" | "both">;
6
6
  default: string;
7
7
  };
8
8
  automaticDropdown: BooleanConstructor;
@@ -386,8 +386,8 @@ declare const _Select: SFCWithInstall<import("vue").DefineComponent<{
386
386
  required: false;
387
387
  };
388
388
  }>> & {
389
- onClose?: ((...args: any[]) => any) | undefined;
390
389
  onOpen?: ((...args: any[]) => any) | undefined;
390
+ onClose?: ((...args: any[]) => any) | undefined;
391
391
  "onBefore-show"?: ((...args: any[]) => any) | undefined;
392
392
  "onBefore-hide"?: ((...args: any[]) => any) | undefined;
393
393
  onShow?: ((...args: any[]) => any) | undefined;
@@ -404,7 +404,7 @@ declare const _Select: SFCWithInstall<import("vue").DefineComponent<{
404
404
  }>;
405
405
  $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
406
406
  $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
407
- $emit: (event: "close" | "open" | "before-show" | "before-hide" | "show" | "hide", ...args: any[]) => void;
407
+ $emit: (event: "open" | "close" | "before-show" | "before-hide" | "show" | "hide", ...args: any[]) => void;
408
408
  $el: any;
409
409
  $options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
410
410
  role: {
@@ -596,8 +596,8 @@ declare const _Select: SFCWithInstall<import("vue").DefineComponent<{
596
596
  required: false;
597
597
  };
598
598
  }>> & {
599
- onClose?: ((...args: any[]) => any) | undefined;
600
599
  onOpen?: ((...args: any[]) => any) | undefined;
600
+ onClose?: ((...args: any[]) => any) | undefined;
601
601
  "onBefore-show"?: ((...args: any[]) => any) | undefined;
602
602
  "onBefore-hide"?: ((...args: any[]) => any) | undefined;
603
603
  onShow?: ((...args: any[]) => any) | undefined;
@@ -610,7 +610,7 @@ declare const _Select: SFCWithInstall<import("vue").DefineComponent<{
610
610
  onOpen: (event?: Event | undefined) => void;
611
611
  onClose: (event?: Event | undefined) => void;
612
612
  hide: (event?: Event | undefined) => void;
613
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("close" | "open" | "before-show" | "before-hide" | "show" | "hide")[], string, {}, {}, string> & {
613
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("open" | "close" | "before-show" | "before-hide" | "show" | "hide")[], string, {}, {}, string> & {
614
614
  beforeCreate?: ((() => void) | (() => void)[]) | undefined;
615
615
  created?: ((() => void) | (() => void)[]) | undefined;
616
616
  beforeMount?: ((() => void) | (() => void)[]) | undefined;
@@ -820,8 +820,8 @@ declare const _Select: SFCWithInstall<import("vue").DefineComponent<{
820
820
  required: false;
821
821
  };
822
822
  }>> & {
823
- onClose?: ((...args: any[]) => any) | undefined;
824
823
  onOpen?: ((...args: any[]) => any) | undefined;
824
+ onClose?: ((...args: any[]) => any) | undefined;
825
825
  "onBefore-show"?: ((...args: any[]) => any) | undefined;
826
826
  "onBefore-hide"?: ((...args: any[]) => any) | undefined;
827
827
  onShow?: ((...args: any[]) => any) | undefined;
@@ -878,7 +878,7 @@ declare const _Select: SFCWithInstall<import("vue").DefineComponent<{
878
878
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change" | "clear" | "remove-tag" | "visible-change" | "focus" | "blur")[], "update:modelValue" | "change" | "clear" | "remove-tag" | "visible-change" | "focus" | "blur", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
879
879
  allowCreate: BooleanConstructor;
880
880
  autocomplete: {
881
- type: import("vue").PropType<"none" | "both" | "list" | "inline">;
881
+ type: import("vue").PropType<"inline" | "none" | "list" | "both">;
882
882
  default: string;
883
883
  };
884
884
  automaticDropdown: BooleanConstructor;
@@ -989,7 +989,7 @@ declare const _Select: SFCWithInstall<import("vue").DefineComponent<{
989
989
  disabled: boolean;
990
990
  placement: import("@popperjs/core").Placement;
991
991
  allowCreate: boolean;
992
- autocomplete: "none" | "both" | "list" | "inline";
992
+ autocomplete: "inline" | "none" | "list" | "both";
993
993
  automaticDropdown: boolean;
994
994
  clearable: boolean;
995
995
  effect: string;
@@ -1014,7 +1014,7 @@ export default _Select;
1014
1014
  export declare const VftSelectV2: SFCWithInstall<import("vue").DefineComponent<{
1015
1015
  allowCreate: BooleanConstructor;
1016
1016
  autocomplete: {
1017
- type: import("vue").PropType<"none" | "both" | "list" | "inline">;
1017
+ type: import("vue").PropType<"inline" | "none" | "list" | "both">;
1018
1018
  default: string;
1019
1019
  };
1020
1020
  automaticDropdown: BooleanConstructor;
@@ -1398,8 +1398,8 @@ export declare const VftSelectV2: SFCWithInstall<import("vue").DefineComponent<{
1398
1398
  required: false;
1399
1399
  };
1400
1400
  }>> & {
1401
- onClose?: ((...args: any[]) => any) | undefined;
1402
1401
  onOpen?: ((...args: any[]) => any) | undefined;
1402
+ onClose?: ((...args: any[]) => any) | undefined;
1403
1403
  "onBefore-show"?: ((...args: any[]) => any) | undefined;
1404
1404
  "onBefore-hide"?: ((...args: any[]) => any) | undefined;
1405
1405
  onShow?: ((...args: any[]) => any) | undefined;
@@ -1416,7 +1416,7 @@ export declare const VftSelectV2: SFCWithInstall<import("vue").DefineComponent<{
1416
1416
  }>;
1417
1417
  $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
1418
1418
  $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
1419
- $emit: (event: "close" | "open" | "before-show" | "before-hide" | "show" | "hide", ...args: any[]) => void;
1419
+ $emit: (event: "open" | "close" | "before-show" | "before-hide" | "show" | "hide", ...args: any[]) => void;
1420
1420
  $el: any;
1421
1421
  $options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
1422
1422
  role: {
@@ -1608,8 +1608,8 @@ export declare const VftSelectV2: SFCWithInstall<import("vue").DefineComponent<{
1608
1608
  required: false;
1609
1609
  };
1610
1610
  }>> & {
1611
- onClose?: ((...args: any[]) => any) | undefined;
1612
1611
  onOpen?: ((...args: any[]) => any) | undefined;
1612
+ onClose?: ((...args: any[]) => any) | undefined;
1613
1613
  "onBefore-show"?: ((...args: any[]) => any) | undefined;
1614
1614
  "onBefore-hide"?: ((...args: any[]) => any) | undefined;
1615
1615
  onShow?: ((...args: any[]) => any) | undefined;
@@ -1622,7 +1622,7 @@ export declare const VftSelectV2: SFCWithInstall<import("vue").DefineComponent<{
1622
1622
  onOpen: (event?: Event | undefined) => void;
1623
1623
  onClose: (event?: Event | undefined) => void;
1624
1624
  hide: (event?: Event | undefined) => void;
1625
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("close" | "open" | "before-show" | "before-hide" | "show" | "hide")[], string, {}, {}, string> & {
1625
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("open" | "close" | "before-show" | "before-hide" | "show" | "hide")[], string, {}, {}, string> & {
1626
1626
  beforeCreate?: ((() => void) | (() => void)[]) | undefined;
1627
1627
  created?: ((() => void) | (() => void)[]) | undefined;
1628
1628
  beforeMount?: ((() => void) | (() => void)[]) | undefined;
@@ -1832,8 +1832,8 @@ export declare const VftSelectV2: SFCWithInstall<import("vue").DefineComponent<{
1832
1832
  required: false;
1833
1833
  };
1834
1834
  }>> & {
1835
- onClose?: ((...args: any[]) => any) | undefined;
1836
1835
  onOpen?: ((...args: any[]) => any) | undefined;
1836
+ onClose?: ((...args: any[]) => any) | undefined;
1837
1837
  "onBefore-show"?: ((...args: any[]) => any) | undefined;
1838
1838
  "onBefore-hide"?: ((...args: any[]) => any) | undefined;
1839
1839
  onShow?: ((...args: any[]) => any) | undefined;
@@ -1890,7 +1890,7 @@ export declare const VftSelectV2: SFCWithInstall<import("vue").DefineComponent<{
1890
1890
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change" | "clear" | "remove-tag" | "visible-change" | "focus" | "blur")[], "update:modelValue" | "change" | "clear" | "remove-tag" | "visible-change" | "focus" | "blur", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
1891
1891
  allowCreate: BooleanConstructor;
1892
1892
  autocomplete: {
1893
- type: import("vue").PropType<"none" | "both" | "list" | "inline">;
1893
+ type: import("vue").PropType<"inline" | "none" | "list" | "both">;
1894
1894
  default: string;
1895
1895
  };
1896
1896
  automaticDropdown: BooleanConstructor;
@@ -2001,7 +2001,7 @@ export declare const VftSelectV2: SFCWithInstall<import("vue").DefineComponent<{
2001
2001
  disabled: boolean;
2002
2002
  placement: import("@popperjs/core").Placement;
2003
2003
  allowCreate: boolean;
2004
- autocomplete: "none" | "both" | "list" | "inline";
2004
+ autocomplete: "inline" | "none" | "list" | "both";
2005
2005
  automaticDropdown: boolean;
2006
2006
  clearable: boolean;
2007
2007
  effect: string;
@@ -1,7 +1,7 @@
1
1
  declare const _sfc_main: import("vue").DefineComponent<{
2
2
  allowCreate: BooleanConstructor;
3
3
  autocomplete: {
4
- type: import("vue").PropType<"none" | "both" | "list" | "inline">;
4
+ type: import("vue").PropType<"inline" | "none" | "list" | "both">;
5
5
  default: string;
6
6
  };
7
7
  automaticDropdown: BooleanConstructor;
@@ -385,8 +385,8 @@ declare const _sfc_main: import("vue").DefineComponent<{
385
385
  required: false;
386
386
  };
387
387
  }>> & {
388
- onClose?: ((...args: any[]) => any) | undefined;
389
388
  onOpen?: ((...args: any[]) => any) | undefined;
389
+ onClose?: ((...args: any[]) => any) | undefined;
390
390
  "onBefore-show"?: ((...args: any[]) => any) | undefined;
391
391
  "onBefore-hide"?: ((...args: any[]) => any) | undefined;
392
392
  onShow?: ((...args: any[]) => any) | undefined;
@@ -403,7 +403,7 @@ declare const _sfc_main: import("vue").DefineComponent<{
403
403
  }>;
404
404
  $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
405
405
  $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
406
- $emit: (event: "close" | "open" | "before-show" | "before-hide" | "show" | "hide", ...args: any[]) => void;
406
+ $emit: (event: "open" | "close" | "before-show" | "before-hide" | "show" | "hide", ...args: any[]) => void;
407
407
  $el: any;
408
408
  $options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
409
409
  role: {
@@ -595,8 +595,8 @@ declare const _sfc_main: import("vue").DefineComponent<{
595
595
  required: false;
596
596
  };
597
597
  }>> & {
598
- onClose?: ((...args: any[]) => any) | undefined;
599
598
  onOpen?: ((...args: any[]) => any) | undefined;
599
+ onClose?: ((...args: any[]) => any) | undefined;
600
600
  "onBefore-show"?: ((...args: any[]) => any) | undefined;
601
601
  "onBefore-hide"?: ((...args: any[]) => any) | undefined;
602
602
  onShow?: ((...args: any[]) => any) | undefined;
@@ -609,7 +609,7 @@ declare const _sfc_main: import("vue").DefineComponent<{
609
609
  onOpen: (event?: Event | undefined) => void;
610
610
  onClose: (event?: Event | undefined) => void;
611
611
  hide: (event?: Event | undefined) => void;
612
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("close" | "open" | "before-show" | "before-hide" | "show" | "hide")[], string, {}, {}, string> & {
612
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("open" | "close" | "before-show" | "before-hide" | "show" | "hide")[], string, {}, {}, string> & {
613
613
  beforeCreate?: ((() => void) | (() => void)[]) | undefined;
614
614
  created?: ((() => void) | (() => void)[]) | undefined;
615
615
  beforeMount?: ((() => void) | (() => void)[]) | undefined;
@@ -819,8 +819,8 @@ declare const _sfc_main: import("vue").DefineComponent<{
819
819
  required: false;
820
820
  };
821
821
  }>> & {
822
- onClose?: ((...args: any[]) => any) | undefined;
823
822
  onOpen?: ((...args: any[]) => any) | undefined;
823
+ onClose?: ((...args: any[]) => any) | undefined;
824
824
  "onBefore-show"?: ((...args: any[]) => any) | undefined;
825
825
  "onBefore-hide"?: ((...args: any[]) => any) | undefined;
826
826
  onShow?: ((...args: any[]) => any) | undefined;
@@ -877,7 +877,7 @@ declare const _sfc_main: import("vue").DefineComponent<{
877
877
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change" | "clear" | "remove-tag" | "visible-change" | "focus" | "blur")[], "update:modelValue" | "change" | "clear" | "remove-tag" | "visible-change" | "focus" | "blur", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
878
878
  allowCreate: BooleanConstructor;
879
879
  autocomplete: {
880
- type: import("vue").PropType<"none" | "both" | "list" | "inline">;
880
+ type: import("vue").PropType<"inline" | "none" | "list" | "both">;
881
881
  default: string;
882
882
  };
883
883
  automaticDropdown: BooleanConstructor;
@@ -988,7 +988,7 @@ declare const _sfc_main: import("vue").DefineComponent<{
988
988
  disabled: boolean;
989
989
  placement: import("@popperjs/core").Placement;
990
990
  allowCreate: boolean;
991
- autocomplete: "none" | "both" | "list" | "inline";
991
+ autocomplete: "inline" | "none" | "list" | "both";
992
992
  automaticDropdown: boolean;
993
993
  clearable: boolean;
994
994
  effect: string;
@@ -289,8 +289,8 @@ declare const useSelect: (props: ExtractPropTypes<typeof SelectProps>, emit: any
289
289
  required: false;
290
290
  };
291
291
  }>> & {
292
- onClose?: ((...args: any[]) => any) | undefined;
293
292
  onOpen?: ((...args: any[]) => any) | undefined;
293
+ onClose?: ((...args: any[]) => any) | undefined;
294
294
  "onBefore-show"?: ((...args: any[]) => any) | undefined;
295
295
  "onBefore-hide"?: ((...args: any[]) => any) | undefined;
296
296
  onShow?: ((...args: any[]) => any) | undefined;
@@ -307,7 +307,7 @@ declare const useSelect: (props: ExtractPropTypes<typeof SelectProps>, emit: any
307
307
  }>;
308
308
  $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
309
309
  $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
310
- $emit: (event: "close" | "open" | "before-show" | "before-hide" | "show" | "hide", ...args: any[]) => void;
310
+ $emit: (event: "open" | "close" | "before-show" | "before-hide" | "show" | "hide", ...args: any[]) => void;
311
311
  $el: any;
312
312
  $options: import("vue").ComponentOptionsBase<Readonly<ExtractPropTypes<{
313
313
  role: {
@@ -499,8 +499,8 @@ declare const useSelect: (props: ExtractPropTypes<typeof SelectProps>, emit: any
499
499
  required: false;
500
500
  };
501
501
  }>> & {
502
- onClose?: ((...args: any[]) => any) | undefined;
503
502
  onOpen?: ((...args: any[]) => any) | undefined;
503
+ onClose?: ((...args: any[]) => any) | undefined;
504
504
  "onBefore-show"?: ((...args: any[]) => any) | undefined;
505
505
  "onBefore-hide"?: ((...args: any[]) => any) | undefined;
506
506
  onShow?: ((...args: any[]) => any) | undefined;
@@ -513,7 +513,7 @@ declare const useSelect: (props: ExtractPropTypes<typeof SelectProps>, emit: any
513
513
  onOpen: (event?: Event | undefined) => void;
514
514
  onClose: (event?: Event | undefined) => void;
515
515
  hide: (event?: Event | undefined) => void;
516
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("close" | "open" | "before-show" | "before-hide" | "show" | "hide")[], string, {}, {}, string> & {
516
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("open" | "close" | "before-show" | "before-hide" | "show" | "hide")[], string, {}, {}, string> & {
517
517
  beforeCreate?: ((() => void) | (() => void)[]) | undefined;
518
518
  created?: ((() => void) | (() => void)[]) | undefined;
519
519
  beforeMount?: ((() => void) | (() => void)[]) | undefined;
@@ -723,8 +723,8 @@ declare const useSelect: (props: ExtractPropTypes<typeof SelectProps>, emit: any
723
723
  required: false;
724
724
  };
725
725
  }>> & {
726
- onClose?: ((...args: any[]) => any) | undefined;
727
726
  onOpen?: ((...args: any[]) => any) | undefined;
727
+ onClose?: ((...args: any[]) => any) | undefined;
728
728
  "onBefore-show"?: ((...args: any[]) => any) | undefined;
729
729
  "onBefore-hide"?: ((...args: any[]) => any) | undefined;
730
730
  onShow?: ((...args: any[]) => any) | undefined;
@@ -30,6 +30,7 @@ export declare const VftSideMenu: import("vft/es/utils").SFCWithInstall<import("
30
30
  title?: string | undefined;
31
31
  index?: string | number | undefined;
32
32
  icon?: string | undefined;
33
+ disabled?: string | undefined;
33
34
  } | undefined>;
34
35
  required: false;
35
36
  };
@@ -49,11 +50,29 @@ export declare const VftSideMenu: import("vft/es/utils").SFCWithInstall<import("
49
50
  type: import("vue").PropType<any>;
50
51
  required: false;
51
52
  };
53
+ dragWidth: {
54
+ type: import("vue").PropType<boolean | undefined>;
55
+ required: false;
56
+ };
52
57
  useMenuSelect: {
53
58
  type: import("vue").PropType<boolean | undefined>;
54
59
  required: false;
55
60
  };
56
- }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:collapse" | "dragEnd" | "select")[], "update:collapse" | "dragEnd" | "select", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
61
+ openListenRoute: {
62
+ type: import("vue").PropType<boolean | undefined>;
63
+ required: false;
64
+ };
65
+ openDisabled: {
66
+ type: import("vue").PropType<boolean | undefined>;
67
+ required: false;
68
+ };
69
+ defaultOpeneds: {
70
+ type: import("vue").PropType<(string | number)[] | undefined>;
71
+ required: false;
72
+ };
73
+ }, {
74
+ sideRef: import("vue").Ref<any>;
75
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:collapse" | "dragEnd" | "select" | "dragWidthEnd")[], "update:collapse" | "dragEnd" | "select" | "dragWidthEnd", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
57
76
  menus: {
58
77
  type: import("vue").PropType<import("@vft/router").MenuType[]>;
59
78
  required: true;
@@ -85,6 +104,7 @@ export declare const VftSideMenu: import("vft/es/utils").SFCWithInstall<import("
85
104
  title?: string | undefined;
86
105
  index?: string | number | undefined;
87
106
  icon?: string | undefined;
107
+ disabled?: string | undefined;
88
108
  } | undefined>;
89
109
  required: false;
90
110
  };
@@ -104,14 +124,31 @@ export declare const VftSideMenu: import("vft/es/utils").SFCWithInstall<import("
104
124
  type: import("vue").PropType<any>;
105
125
  required: false;
106
126
  };
127
+ dragWidth: {
128
+ type: import("vue").PropType<boolean | undefined>;
129
+ required: false;
130
+ };
107
131
  useMenuSelect: {
108
132
  type: import("vue").PropType<boolean | undefined>;
109
133
  required: false;
110
134
  };
135
+ openListenRoute: {
136
+ type: import("vue").PropType<boolean | undefined>;
137
+ required: false;
138
+ };
139
+ openDisabled: {
140
+ type: import("vue").PropType<boolean | undefined>;
141
+ required: false;
142
+ };
143
+ defaultOpeneds: {
144
+ type: import("vue").PropType<(string | number)[] | undefined>;
145
+ required: false;
146
+ };
111
147
  }>> & {
112
148
  "onUpdate:collapse"?: ((...args: any[]) => any) | undefined;
113
149
  onDragEnd?: ((...args: any[]) => any) | undefined;
114
150
  onSelect?: ((...args: any[]) => any) | undefined;
151
+ onDragWidthEnd?: ((...args: any[]) => any) | undefined;
115
152
  }, {}>> & Record<string, any>;
116
153
  export default VftSideMenu;
117
154
  export * from './types';
@@ -32,6 +32,7 @@ declare const _sfc_main: import("vue").DefineComponent<{
32
32
  title?: string | undefined;
33
33
  index?: string | number | undefined;
34
34
  icon?: string | undefined;
35
+ disabled?: string | undefined;
35
36
  } | undefined>;
36
37
  required: false;
37
38
  };
@@ -51,11 +52,29 @@ declare const _sfc_main: import("vue").DefineComponent<{
51
52
  type: __PropType<any>;
52
53
  required: false;
53
54
  };
55
+ dragWidth: {
56
+ type: __PropType<boolean | undefined>;
57
+ required: false;
58
+ };
54
59
  useMenuSelect: {
55
60
  type: __PropType<boolean | undefined>;
56
61
  required: false;
57
62
  };
58
- }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:collapse" | "dragEnd" | "select")[], "update:collapse" | "dragEnd" | "select", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
63
+ openListenRoute: {
64
+ type: __PropType<boolean | undefined>;
65
+ required: false;
66
+ };
67
+ openDisabled: {
68
+ type: __PropType<boolean | undefined>;
69
+ required: false;
70
+ };
71
+ defaultOpeneds: {
72
+ type: __PropType<(string | number)[] | undefined>;
73
+ required: false;
74
+ };
75
+ }, {
76
+ sideRef: import("vue").Ref<any>;
77
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:collapse" | "dragEnd" | "select" | "dragWidthEnd")[], "update:collapse" | "dragEnd" | "select" | "dragWidthEnd", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
59
78
  menus: {
60
79
  type: __PropType<MenuType[]>;
61
80
  required: true;
@@ -87,6 +106,7 @@ declare const _sfc_main: import("vue").DefineComponent<{
87
106
  title?: string | undefined;
88
107
  index?: string | number | undefined;
89
108
  icon?: string | undefined;
109
+ disabled?: string | undefined;
90
110
  } | undefined>;
91
111
  required: false;
92
112
  };
@@ -106,13 +126,30 @@ declare const _sfc_main: import("vue").DefineComponent<{
106
126
  type: __PropType<any>;
107
127
  required: false;
108
128
  };
129
+ dragWidth: {
130
+ type: __PropType<boolean | undefined>;
131
+ required: false;
132
+ };
109
133
  useMenuSelect: {
110
134
  type: __PropType<boolean | undefined>;
111
135
  required: false;
112
136
  };
137
+ openListenRoute: {
138
+ type: __PropType<boolean | undefined>;
139
+ required: false;
140
+ };
141
+ openDisabled: {
142
+ type: __PropType<boolean | undefined>;
143
+ required: false;
144
+ };
145
+ defaultOpeneds: {
146
+ type: __PropType<(string | number)[] | undefined>;
147
+ required: false;
148
+ };
113
149
  }>> & {
114
150
  "onUpdate:collapse"?: ((...args: any[]) => any) | undefined;
115
151
  onDragEnd?: ((...args: any[]) => any) | undefined;
116
152
  onSelect?: ((...args: any[]) => any) | undefined;
153
+ onDragWidthEnd?: ((...args: any[]) => any) | undefined;
117
154
  }, {}>;
118
155
  export default _sfc_main;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const u=require("vue"),M=require("@vft/router"),A=require("@vft/use"),p=require("@vft/utils"),H=require("../../hooks/use-namespace/index.cjs");require("@popperjs/core");require("lodash");require("../../hooks/use-z-index/index.cjs");require("@vueuse/core");const R=require("../../utils/ns-cover.cjs");require("@vue/reactivity");require("@vue/shared");require("../divider/index.cjs");const U=require("../icon/index.cjs");require("../avatar/index.cjs");require("../empty/index.cjs");require("../result/index.cjs");require("../tabs/index.cjs");require("../popper/index.cjs");require("../collapse-transition/index.cjs");require("../tooltip/index.cjs");require("../popover/index.cjs");const f=require("../menu/index.cjs");require("../context-menu/context-menu.vue2.cjs");require("../multiple-tabs/multiple-tabs.vue2.cjs");require("@vft/store");const $=require("vue-router");require("../header-layout/index.cjs");require("../footer-layout/index.cjs");require("../iframe-layout/index.cjs");require("../router-view-content/index.cjs");require("../logo/index.cjs");require("../back-top/index.cjs");require("../config-provider/index.cjs");require("../descriptions/index.cjs");require("../full-screen/index.cjs");require("../icon-text/index.cjs");require("../image/index.cjs");require("../input/index.cjs");require("../link/index.cjs");require("../pagination/index.cjs");require("../tag/index.cjs");require("./index.cjs");require("../qrcode/index.cjs");require("../overlay/index.cjs");require("../clamp/index.cjs");require("../clamp-toggle/index.cjs");require("../page-wrapper/index.cjs");require("../exception/index.cjs");require("../search/index.cjs");require("../form/index.cjs");require("../button/index.cjs");require("../checkbox/index.cjs");require("../radio/index.cjs");require("../switch/index.cjs");require("../color-picker/index.cjs");require("../scrollbar/index.cjs");require("../dropdown/index.cjs");require("../virtual-list/components/fixed-size-list.cjs");require("../virtual-list/components/dynamic-size-list.cjs");require("../virtual-list/components/fixed-size-grid.cjs");require("../virtual-list/components/dynamic-size-grid.cjs");require("../virtual-list/props.cjs");require("../select-v2/index.cjs");require("../verify-code/index.cjs");require("../table/index.cjs");require("../image-viewer/index.cjs");require("../md-container/index.cjs");require("../md-comment/index.cjs");require("../md-tabs/index.cjs");require("../md-vue-playground/index.cjs");require("../md-code-demo/index.cjs");require("../md-code-tabs/index.cjs");require("../message/index.cjs");const l=H.useNamespace("side-menu"),P=u.defineComponent({name:l.b()}),E=u.defineComponent({...P,props:{menus:null,uniqueOpened:{type:Boolean,default:!0},collapse:{type:Boolean,default:!1},defaultActive:null,width:null,collapseWidth:{default:50},attrMapping:null,extraHeight:{default:100},menuTopBottomHeight:{default:40},showCollapse:{type:Boolean,default:!1},dragOption:null,useMenuSelect:{type:Boolean,default:!0}},emits:["update:collapse","dragEnd","select"],setup(t,{emit:h}){const q=u.useSlots(),v=u.ref(),a=u.computed(()=>({path:"path",children:"children",title:"title",index:"path",icon:"icon",...t.attrMapping}));M.listenerRouteChange(e=>{!e||e.meta.hideSide||(v.value=e.path)});const x=(e,o)=>{const n=e[a.value.path],c=e[a.value.title],i=e==null?void 0:e[a.value.children],s=e==null?void 0:e[a.value.index],d=e==null?void 0:e[a.value.icon];return i!=null&&i.length?u.h(f.VftSubMenu,{popperAppendToBody:!0,key:s||n,index:s||n,title:c,icon:d,popperClass:l.e("popper")},{default:()=>i==null?void 0:i.map((r,k)=>{var m;const g=r[a.value.path],y=r[a.value.index],w=r[a.value.icon],B=r[a.value.title];return(m=r==null?void 0:r[a.value.children])!=null&&m.length?x(r,k):u.h(f.VftMenuItem,{key:y||g,index:y||g,route:g,icon:w,title:B,disabled:r.disabled})})}):u.h(f.VftMenuItem,{key:s||n,index:s||n,title:c,route:n,icon:d,disabled:e.disabled},q.menuItem?()=>{var r;return(r=q.menuItem)==null?void 0:r.call(q,{item:e,index:o})}:"")},O=u.computed(()=>{var e,o;return u.h(f.VftMenu,{onSelect:t.useMenuSelect?b:()=>{},defaultActive:t.defaultActive||v.value,class:[l.e("con"),(e=t.dragOption)!=null&&e.dragClassName?l.e((o=t.dragOption)==null?void 0:o.dragClassName):""],style:{height:`calc(100% - ${t.menuTopBottomHeight}px)`},uniqueOpened:t.uniqueOpened,collapse:t.collapse,"collapse-transition":!1},()=>t.menus.map((n,c)=>x(n,c)))}),{go:C}=M.useRouterHelper(),S=$.useRouter();async function b(e){var i,s,d;const o=e.route;let n=e.route;e.indexPath.some(r=>p.isUrl(r))&&(n=e.indexPath.slice(-2).join("/"));const c=(d=(s=(i=S.getRoutes().filter(r=>r.path===n))==null?void 0:i[0])==null?void 0:s.meta)==null?void 0:d.linkTarget;C(c?{url:o,winOpenOpt:{target:c}}:o),h("select",e)}const N=u.computed(()=>({...R.generateCssVars({width:t.collapse?p.addUnit(t.collapseWidth):p.addUnit(t.width)},"side-menu"),height:`calc(100% - ${t.extraHeight}px)`})),V=u.computed(()=>[l.b(),l.m("fixed")]);function T(){h("update:collapse",!t.collapse)}return u.onMounted(()=>{u.nextTick(()=>{var e,o,n;if((e=t.dragOption)!=null&&e.dragClassName){const c=(n=document.querySelectorAll("."+l.e((o=t.dragOption)==null?void 0:o.dragClassName)))==null?void 0:n[0],{initSortable:i}=A.useSortable(c,{draggable:".vft-menu-item",onEnd:s=>{const{oldIndex:d,newIndex:r}=s;p.isNullOrUndefined(d)||p.isNullOrUndefined(r)||d===r||h("dragEnd",d,r)},...t.dragOption});i()}})}),()=>u.createVNode("div",{class:V.value,style:N.value},[q.top?u.createVNode("div",{class:l.e("top")},[q.top()]):null,O.value,q.bottom?u.createVNode("div",{class:l.e("bottom")},[q.bottom()]):t.showCollapse?u.createVNode("div",{onClick:T,class:[l.e("bottom"),l.e("collapse")]},[u.createVNode(U.VftIcon,{style:{transform:t.collapse?"rotateY(180deg)":""},size:20,icon:"ico-iconoir:sidebar-collapse"},null)]):null])}});exports.default=E;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("vue"),N=require("@vft/router"),j=require("@vft/use"),g=require("@vft/utils"),z=require("../../hooks/use-namespace/index.cjs");require("@popperjs/core");require("lodash");require("../../hooks/use-z-index/index.cjs");require("@vueuse/core");const B=require("../../utils/ns-cover.cjs");require("@vue/reactivity");require("@vue/shared");require("../divider/index.cjs");const Y=require("../icon/index.cjs");require("../avatar/index.cjs");require("../empty/index.cjs");require("../result/index.cjs");require("../tabs/index.cjs");require("../popper/index.cjs");require("../collapse-transition/index.cjs");require("../tooltip/index.cjs");require("../popover/index.cjs");const p=require("../menu/index.cjs");require("../context-menu/context-menu.vue2.cjs");require("../multiple-tabs/multiple-tabs.vue2.cjs");require("@vft/store");const F=require("vue-router");require("../header-layout/index.cjs");require("../footer-layout/index.cjs");require("../iframe-layout/index.cjs");require("../router-view-content/index.cjs");require("../logo/index.cjs");require("../back-top/index.cjs");require("../config-provider/index.cjs");require("../descriptions/index.cjs");require("../full-screen/index.cjs");require("../icon-text/index.cjs");require("../image/index.cjs");require("../input/index.cjs");require("../link/index.cjs");require("../pagination/index.cjs");require("../tag/index.cjs");require("./index.cjs");require("../qrcode/index.cjs");require("../overlay/index.cjs");require("../clamp/index.cjs");require("../clamp-toggle/index.cjs");require("../page-wrapper/index.cjs");require("../exception/index.cjs");require("../search/index.cjs");require("../form/index.cjs");require("../button/index.cjs");require("../checkbox/index.cjs");require("../radio/index.cjs");require("../switch/index.cjs");require("../color-picker/index.cjs");require("../scrollbar/index.cjs");require("../dropdown/index.cjs");require("../virtual-list/components/fixed-size-list.cjs");require("../virtual-list/components/dynamic-size-list.cjs");require("../virtual-list/components/fixed-size-grid.cjs");require("../virtual-list/components/dynamic-size-grid.cjs");require("../virtual-list/props.cjs");require("../select-v2/index.cjs");require("../verify-code/index.cjs");require("../table/index.cjs");require("../image-viewer/index.cjs");require("../list-cell/index.cjs");require("../dialog/index.cjs");require("../md-container/index.cjs");require("../md-comment/index.cjs");require("../md-tabs/index.cjs");require("../md-vue-playground/index.cjs");require("../md-code-demo/index.cjs");require("../md-code-tabs/index.cjs");require("../message/index.cjs");const G=require("./use-drag-line.cjs"),a=z.useNamespace("side-menu"),I=t.defineComponent({name:a.b()}),J=t.defineComponent({...I,props:{menus:null,uniqueOpened:{type:Boolean,default:!0},collapse:{type:Boolean,default:!1},defaultActive:null,width:null,collapseWidth:{default:50},attrMapping:null,extraHeight:{default:100},menuTopBottomHeight:{default:40},showCollapse:{type:Boolean,default:!1},dragOption:null,dragWidth:{type:Boolean,default:!0},useMenuSelect:{type:Boolean,default:!0},openListenRoute:{type:Boolean,default:!1},openDisabled:{type:Boolean},defaultOpeneds:null},emits:["update:collapse","dragEnd","select","dragWidthEnd"],setup(r,{expose:R,emit:v}){const f=t.useSlots(),y=t.ref(),l=t.computed(()=>({path:"path",children:"children",title:"title",index:"path",icon:"icon",disabled:"disabled",...r.attrMapping}));N.listenerRouteChange(e=>{var u;!e||(u=e.meta)!=null&&u.hideSide&&!r.openListenRoute||(y.value=e.path)});const C=(e,u)=>{const n=e[l.value.path],d=e[l.value.title],o=e==null?void 0:e[l.value.children],s=e==null?void 0:e[l.value.index],c=e==null?void 0:e[l.value.icon],q=!(e!=null&&e[l.value.disabled]);return o!=null&&o.length?t.h(p.VftSubMenu,{popperAppendToBody:!0,key:s||n,index:s||n,title:d,icon:c,popperClass:a.e("popper")},{default:()=>o==null?void 0:o.map((i,$)=>{var V;const x=i[l.value.path],S=i[l.value.index],E=i[l.value.icon],L=i[l.value.title],P=i[l.value.disabled];return(V=i==null?void 0:i[l.value.children])!=null&&V.length?C(i,$):t.h(p.VftMenuItem,{key:S||x,index:S||x,route:x,icon:E,title:L,disabled:r.openDisabled&&P})})}):t.h(p.VftMenuItem,{key:s||n,index:s||n,title:d,route:n,icon:c,disabled:r.openDisabled&&q},f.menuItem?()=>{var i;return(i=f.menuItem)==null?void 0:i.call(f,{item:e,index:u})}:"")},W=t.computed(()=>{var e,u;return t.h(p.VftMenu,{onSelect:r.useMenuSelect?T:()=>{},defaultActive:r.defaultActive||y.value,defaultOpeneds:r.defaultOpeneds,class:[a.e("con"),(e=r.dragOption)!=null&&e.dragClassName?a.e((u=r.dragOption)==null?void 0:u.dragClassName):""],style:{height:`calc(100% - ${r.menuTopBottomHeight}px)`},uniqueOpened:r.uniqueOpened,collapse:r.collapse,"collapse-transition":!1},()=>r.menus.map((n,d)=>C(n,d)))}),{go:O}=N.useRouterHelper(),w=F.useRouter();async function T(e){var o,s,c;const u=e.route;let n=e.route;e.indexPath.some(q=>g.isUrl(q))&&(n=e.indexPath.slice(-2).join("/"));const d=(c=(s=(o=w.getRoutes().filter(q=>q.path===n))==null?void 0:o[0])==null?void 0:s.meta)==null?void 0:c.linkTarget;O(d?{url:u,winOpenOpt:{target:d}}:u),v("select",e)}const b=t.ref(),k=t.computed(()=>({...B.generateCssVars({width:r.collapse?g.addUnit(r.collapseWidth):b.value?g.addUnit(b.value):g.addUnit(r.width)},"side-menu"),height:`calc(100% - ${r.extraHeight}px)`})),D=t.computed(()=>[a.b(),a.m("fixed")]);t.onMounted(()=>{t.nextTick(()=>{var e,u,n;if((e=r.dragOption)!=null&&e.dragClassName){const d=(n=document.querySelectorAll("."+a.e((u=r.dragOption)==null?void 0:u.dragClassName)))==null?void 0:n[0],{initSortable:o}=j.useSortable(d,{draggable:".vft-menu-item",onEnd:s=>{const{oldIndex:c,newIndex:q}=s;g.isNullOrUndefined(c)||g.isNullOrUndefined(q)||c===q||v("dragEnd",c,q)},...r.dragOption});o()}})});const h=t.ref(),m=t.ref(),M=B.cssVarValue("side-menu-width",h),U=t.computed(()=>({left:M.value}));function A(){r.collapse||(b.value=M.value),v("update:collapse",!r.collapse)}const H=t.getCurrentInstance();return r.dragWidth&&G.useDragLine(h,m,t.computed(()=>g.removeUnit(r.collapseWidth)),H,r.collapse),R({sideRef:h}),()=>t.createVNode("div",{ref:h,class:D.value,style:k.value},[f.top?t.createVNode("div",{class:a.e("top")},[f.top()]):null,W.value,f.bottom?t.createVNode("div",{class:a.e("bottom")},[f.bottom()]):r.showCollapse?t.createVNode("div",{onClick:A,class:[a.e("bottom"),a.e("collapse")]},[t.createVNode(Y.VftIcon,{style:{transform:r.collapse?"rotateY(180deg)":""},size:20,icon:"ico-iconoir:sidebar-collapse"},null)]):null,r.dragWidth?t.createVNode("div",{ref:m,style:U.value,class:a.e("drag-bar")},null):null])}});exports.default=J;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const v=require("@vft/utils"),r=require("vue");require("lodash");require("@vueuse/core");const g=require("../../utils/ns-cover.cjs"),q=require("@vft/use");function y(i,c,d,l,m){r.onMounted(()=>{r.nextTick(()=>{q.useDebounceFn(h,100)()})});function s(t){var n;const u=r.unref(t);return u?Reflect.has(u,"$el")?(n=r.unref(t))==null?void 0:n.$el:r.unref(t):null}function p(t,u,n){document.onmousemove=function(o){let e=t.left+(o.clientX-n);o=o||window.event;const a=800,f=r.unref(d);return e<0&&(e=0),e>a&&(e=a),e<f&&(e=f,l.emit("update:collapse",!m)),t.style.left=e+"px",!1}}function w(t){const u=s(c),n=s(i);document.onmouseup=function(){var e;document.onmousemove=null,document.onmouseup=null,n.style.transition="width 0.2s";const o=parseInt(u.style.left);g.setCssVar("side-menu-width",v.addUnit(o),"",i),l.emit("dragWidthEnd"),(e=t.releaseCapture)==null||e.call(t)}}function h(){const t=s(c);if(!t)return;const u=s(i);u&&(t.onmousedown=n=>{var e;u.style.transition="unset";const o=n==null?void 0:n.clientX;return t.left=t.offsetLeft,p(t,u,o),w(t),(e=t.setCapture)==null||e.call(t),!1})}return{}}exports.useDragLine=y;
@@ -0,0 +1,10 @@
1
+ import { type Ref } from 'vue';
2
+ /**
3
+ * Handle menu drag and drop related operations
4
+ * @param siderRef
5
+ * @param dragBarRef
6
+ * @param minWidth
7
+ * @param instance
8
+ * @param collapse
9
+ */
10
+ export declare function useDragLine(siderRef: Ref<any>, dragBarRef: Ref<any>, minWidth: any, instance: any, collapse: any): {};
@@ -193,9 +193,9 @@ export declare const VftSwitch: import("vft/es/utils").SFCWithInstall<import("vu
193
193
  onInput?: ((...args: any[]) => any) | undefined;
194
194
  }, {
195
195
  loading: boolean | undefined;
196
+ modelValue: string | number | boolean | undefined;
196
197
  disabled: boolean | undefined;
197
198
  value: string | number | boolean | undefined;
198
- modelValue: string | number | boolean | undefined;
199
199
  validateEvent: boolean | undefined;
200
200
  inlinePrompt: boolean | undefined;
201
201
  activeValue: string | number | boolean | undefined;
@@ -225,9 +225,9 @@ declare const _sfc_main: import("vue").DefineComponent<{
225
225
  onInput?: ((...args: any[]) => any) | undefined;
226
226
  }, {
227
227
  loading: boolean | undefined;
228
+ modelValue: string | number | boolean | undefined;
228
229
  disabled: boolean | undefined;
229
230
  value: string | number | boolean | undefined;
230
- modelValue: string | number | boolean | undefined;
231
231
  validateEvent: boolean | undefined;
232
232
  inlinePrompt: boolean | undefined;
233
233
  activeValue: string | number | boolean | undefined;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("vue"),w=require("@vft/utils"),G=require("../../utils/error.cjs");require("lodash");const T=require("@vueuse/core");require("../../utils/ns-cover.cjs");require("../divider/index.cjs");const V=require("../icon/index.cjs");require("../avatar/index.cjs");require("../empty/index.cjs");require("../result/index.cjs");require("./index.cjs");require("../popper/index.cjs");require("../collapse-transition/index.cjs");require("../tooltip/index.cjs");require("../popover/index.cjs");require("../menu/index.cjs");require("../context-menu/context-menu.vue2.cjs");require("../multiple-tabs/multiple-tabs.vue2.cjs");require("@vft/router");require("@vft/store");require("@vft/use");require("vue-router");require("../header-layout/index.cjs");require("../footer-layout/index.cjs");require("../iframe-layout/index.cjs");require("../router-view-content/index.cjs");require("../logo/index.cjs");require("../back-top/index.cjs");require("../config-provider/index.cjs");require("../descriptions/index.cjs");require("../full-screen/index.cjs");require("../icon-text/index.cjs");require("../image/index.cjs");require("../input/index.cjs");require("../link/index.cjs");require("../pagination/index.cjs");require("../tag/index.cjs");require("../side-menu/index.cjs");require("../qrcode/index.cjs");require("../overlay/index.cjs");require("../clamp/index.cjs");require("../clamp-toggle/index.cjs");require("../page-wrapper/index.cjs");require("../exception/index.cjs");require("../search/index.cjs");require("../form/index.cjs");require("../button/index.cjs");require("../checkbox/index.cjs");require("../radio/index.cjs");require("../switch/index.cjs");require("../color-picker/index.cjs");require("../scrollbar/index.cjs");require("../dropdown/index.cjs");require("../virtual-list/components/fixed-size-list.cjs");require("../virtual-list/components/dynamic-size-list.cjs");require("../virtual-list/components/fixed-size-grid.cjs");require("../virtual-list/components/dynamic-size-grid.cjs");require("../virtual-list/props.cjs");require("../select-v2/index.cjs");require("../verify-code/index.cjs");require("../table/index.cjs");require("../image-viewer/index.cjs");require("../md-container/index.cjs");require("../md-comment/index.cjs");require("../md-tabs/index.cjs");require("../md-vue-playground/index.cjs");require("../md-code-demo/index.cjs");require("../md-code-tabs/index.cjs");require("../message/index.cjs");const R=require("../../hooks/use-namespace/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");require("@vue/reactivity");require("@vue/shared");const x=require("@vft/constants"),J=require("./types.cjs"),Q=require("./tab-bar.vue2.cjs"),P=R.useNamespace("tab-nav"),Z=t.defineComponent({name:P.b()}),_=t.defineComponent({...Z,props:{panes:null,editable:{type:Boolean},addable:{type:Boolean},stretch:{type:Boolean},showBar:{type:Boolean,default:!1},closeIconCfg:null,addIconCfg:null,arrowLeftIconCfg:null,arrowRightIconCfg:null},emits:["tabClick","tabRemove","tabAdd","tabContextmenu"],setup(n,{expose:A,emit:m}){var z;const D=t.getCurrentInstance(),b=t.inject(J.TabsRootContextKey);b||G.throwError(P.b(),"<vft-tabs><tab-nav /></vft-tabs>");const o=R.useNamespace("tabs"),F=T.useDocumentVisibility(),L=T.useWindowFocus(),N=t.ref(),q=t.ref(),C=t.ref(),f=t.ref(!1),d=t.ref(0),y=t.ref(!1),p=t.ref(!0),h=t.computed(()=>["top","bottom"].includes(b.props.tabPosition)?"width":"height"),M=t.computed(()=>({transform:`translate${h.value==="width"?"X":"Y"}(-${d.value}px)`})),K=()=>{if(!q.value)return;const r=q.value[`offset${w.capitalize(h.value)}`],e=d.value;e&&(d.value=e>r?e-r:0)},j=()=>{if(!q.value||!C.value)return;const r=C.value[`offset${w.capitalize(h.value)}`],e=q.value[`offset${w.capitalize(h.value)}`],i=d.value;r-i<=e||(d.value=r-i>e*2?i+e:r-e)},$=async()=>{const r=C.value;if(!f.value||!N.value||!q.value||!r)return;await t.nextTick();const e=N.value.querySelector(".is-active");if(!e)return;const i=q.value,g=["top","bottom"].includes(b.props.tabPosition),l=e.getBoundingClientRect(),a=i.getBoundingClientRect(),c=g?r.offsetWidth-a.width:r.offsetHeight-a.height,s=d.value;let u=s;g?(l.left<a.left&&(u=s-(a.left-l.left)),l.right>a.right&&(u=s+l.right-a.right)):(l.top<a.top&&(u=s-(a.top-l.top)),l.bottom>a.bottom&&(u=s+(l.bottom-a.bottom))),u=Math.max(u,0),d.value=Math.min(u,c)},B=()=>{if(!C.value||!q.value)return;const r=C.value[`offset${w.capitalize(h.value)}`],e=q.value[`offset${w.capitalize(h.value)}`],i=d.value;e<r?(f.value=f.value||{},f.value.prev=i,f.value.next=i+e<r,r-i<e&&(d.value=r-e)):(f.value=!1,i>0&&(d.value=0))},H=r=>{const e=r.code,{up:i,down:g,left:l,right:a}=x.EVENT_CODE;if(![i,g,l,a].includes(e))return;const c=Array.from(r.currentTarget.querySelectorAll("[role=tab]:not(.is-disabled)")),s=c.indexOf(r.target);let u;e===l||e===i?s===0?u=c.length-1:u=s-1:s<c.length-1?u=s+1:u=0,c[u].focus(),c[u].click(),O()},O=()=>{p.value&&(y.value=!0)},I=()=>y.value=!1;t.watch(F,r=>{r==="hidden"?p.value=!1:r==="visible"&&setTimeout(()=>p.value=!0,50)}),t.watch(L,r=>{r?setTimeout(()=>p.value=!0,50):p.value=!1}),T.useResizeObserver(N,B),t.onMounted(()=>setTimeout(()=>$(),0)),t.onUpdated(()=>B()),A({scrollToActiveTab:$,removeFocus:I}),t.watch(()=>n.panes,()=>D.update(),{flush:"post"});const W=t.computed(()=>{var r,e;return f.value?[t.createVNode("span",{class:[o.e("nav-prev"),o.is("disabled",!f.value.prev)],onClick:K},[(r=n.arrowLeftIconCfg)!=null&&r.icon?t.createVNode(V.VftIcon,n.arrowLeftIconCfg,null):null]),t.createVNode("span",{class:[o.e("nav-next"),o.is("disabled",!f.value.next)],onClick:j},[(e=n.arrowRightIconCfg)!=null&&e.icon?t.createVNode(V.VftIcon,n.arrowRightIconCfg,null):null])]:null}),U=t.computed(()=>{var r;return(r=n.panes)==null?void 0:r.map((e,i)=>{var E,S,k;const g=e.uid,l=e.props.disabled,a=e.props.name??e.index??`${i}`,c=!l&&(e.isClosable||n.editable);e.index=`${i}`;const s=c?t.createVNode("span",{class:"is-icon-close",onClick:v=>m("tabRemove",e,v)},[(E=n.closeIconCfg)!=null&&E.icon?t.createVNode(V.VftIcon,n.closeIconCfg,null):null]):null,u=((k=(S=e.slots).label)==null?void 0:k.call(S))||e.props.label,Y=!l&&e.active?0:-1;return t.createVNode("div",{ref:`tab-${g}`,class:[o.e("item"),o.is(b.props.tabPosition),o.is("active",e.active),o.is("disabled",l),o.is("closable",c),o.is("focus",y.value)],id:`tab-${a}`,key:`tab-${g}`,"aria-controls":`pane-${a}`,role:"tab","aria-selected":e.active,tabindex:Y,onFocus:()=>O(),onBlur:()=>I(),onClick:v=>{I(),m("tabClick",e,a,v)},onContextmenu:v=>{v.preventDefault(),m("tabContextmenu",{pane:e,index:i,event:v})},onKeydown:v=>{c&&(v.code===x.EVENT_CODE.delete||v.code===x.EVENT_CODE.backspace)&&m("tabRemove",e,v)}},[u,s])})}),X=n.editable||n.addable?t.createVNode("span",{class:o.e("new-tab"),tabindex:"0",onClick:()=>m("tabAdd"),onKeydown:r=>{r.code===x.EVENT_CODE.enter&&m("tabAdd")}},[(z=n.addIconCfg)!=null&&z.icon?t.createVNode(V.VftIcon,n.addIconCfg,null):null]):null;return()=>t.createVNode("div",{ref:N,class:[o.e("nav-wrap"),o.is("scrollable",!!f.value),o.is(b.props.tabPosition)]},[W.value,t.createVNode("div",{class:o.e("nav-scroll"),ref:q},[t.createVNode("div",{class:[o.e("nav"),o.is(b.props.tabPosition),o.is("stretch",n.stretch&&["top","bottom"].includes(b.props.tabPosition))],ref:C,style:M.value,role:"tablist",onKeydown:H},[n.showBar?t.createVNode(Q.default,{tabs:[...n.panes]},null):null,U.value]),X])])}});exports.default=_;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("vue"),w=require("@vft/utils"),G=require("../../utils/error.cjs");require("lodash");const T=require("@vueuse/core");require("../../utils/ns-cover.cjs");require("../divider/index.cjs");const V=require("../icon/index.cjs");require("../avatar/index.cjs");require("../empty/index.cjs");require("../result/index.cjs");require("./index.cjs");require("../popper/index.cjs");require("../collapse-transition/index.cjs");require("../tooltip/index.cjs");require("../popover/index.cjs");require("../menu/index.cjs");require("../context-menu/context-menu.vue2.cjs");require("../multiple-tabs/multiple-tabs.vue2.cjs");require("@vft/router");require("@vft/store");require("@vft/use");require("vue-router");require("../header-layout/index.cjs");require("../footer-layout/index.cjs");require("../iframe-layout/index.cjs");require("../router-view-content/index.cjs");require("../logo/index.cjs");require("../back-top/index.cjs");require("../config-provider/index.cjs");require("../descriptions/index.cjs");require("../full-screen/index.cjs");require("../icon-text/index.cjs");require("../image/index.cjs");require("../input/index.cjs");require("../link/index.cjs");require("../pagination/index.cjs");require("../tag/index.cjs");require("../side-menu/index.cjs");require("../qrcode/index.cjs");require("../overlay/index.cjs");require("../clamp/index.cjs");require("../clamp-toggle/index.cjs");require("../page-wrapper/index.cjs");require("../exception/index.cjs");require("../search/index.cjs");require("../form/index.cjs");require("../button/index.cjs");require("../checkbox/index.cjs");require("../radio/index.cjs");require("../switch/index.cjs");require("../color-picker/index.cjs");require("../scrollbar/index.cjs");require("../dropdown/index.cjs");require("../virtual-list/components/fixed-size-list.cjs");require("../virtual-list/components/dynamic-size-list.cjs");require("../virtual-list/components/fixed-size-grid.cjs");require("../virtual-list/components/dynamic-size-grid.cjs");require("../virtual-list/props.cjs");require("../select-v2/index.cjs");require("../verify-code/index.cjs");require("../table/index.cjs");require("../image-viewer/index.cjs");require("../list-cell/index.cjs");require("../dialog/index.cjs");require("../md-container/index.cjs");require("../md-comment/index.cjs");require("../md-tabs/index.cjs");require("../md-vue-playground/index.cjs");require("../md-code-demo/index.cjs");require("../md-code-tabs/index.cjs");require("../message/index.cjs");const R=require("../../hooks/use-namespace/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");require("@vue/reactivity");require("@vue/shared");const x=require("@vft/constants"),J=require("./types.cjs"),Q=require("./tab-bar.vue2.cjs"),P=R.useNamespace("tab-nav"),Z=t.defineComponent({name:P.b()}),_=t.defineComponent({...Z,props:{panes:null,editable:{type:Boolean},addable:{type:Boolean},stretch:{type:Boolean},showBar:{type:Boolean,default:!1},closeIconCfg:null,addIconCfg:null,arrowLeftIconCfg:null,arrowRightIconCfg:null},emits:["tabClick","tabRemove","tabAdd","tabContextmenu"],setup(n,{expose:A,emit:m}){var z;const D=t.getCurrentInstance(),b=t.inject(J.TabsRootContextKey);b||G.throwError(P.b(),"<vft-tabs><tab-nav /></vft-tabs>");const o=R.useNamespace("tabs"),F=T.useDocumentVisibility(),L=T.useWindowFocus(),N=t.ref(),q=t.ref(),C=t.ref(),f=t.ref(!1),d=t.ref(0),y=t.ref(!1),p=t.ref(!0),h=t.computed(()=>["top","bottom"].includes(b.props.tabPosition)?"width":"height"),M=t.computed(()=>({transform:`translate${h.value==="width"?"X":"Y"}(-${d.value}px)`})),K=()=>{if(!q.value)return;const r=q.value[`offset${w.capitalize(h.value)}`],e=d.value;e&&(d.value=e>r?e-r:0)},j=()=>{if(!q.value||!C.value)return;const r=C.value[`offset${w.capitalize(h.value)}`],e=q.value[`offset${w.capitalize(h.value)}`],i=d.value;r-i<=e||(d.value=r-i>e*2?i+e:r-e)},$=async()=>{const r=C.value;if(!f.value||!N.value||!q.value||!r)return;await t.nextTick();const e=N.value.querySelector(".is-active");if(!e)return;const i=q.value,g=["top","bottom"].includes(b.props.tabPosition),l=e.getBoundingClientRect(),a=i.getBoundingClientRect(),c=g?r.offsetWidth-a.width:r.offsetHeight-a.height,s=d.value;let u=s;g?(l.left<a.left&&(u=s-(a.left-l.left)),l.right>a.right&&(u=s+l.right-a.right)):(l.top<a.top&&(u=s-(a.top-l.top)),l.bottom>a.bottom&&(u=s+(l.bottom-a.bottom))),u=Math.max(u,0),d.value=Math.min(u,c)},B=()=>{if(!C.value||!q.value)return;const r=C.value[`offset${w.capitalize(h.value)}`],e=q.value[`offset${w.capitalize(h.value)}`],i=d.value;e<r?(f.value=f.value||{},f.value.prev=i,f.value.next=i+e<r,r-i<e&&(d.value=r-e)):(f.value=!1,i>0&&(d.value=0))},H=r=>{const e=r.code,{up:i,down:g,left:l,right:a}=x.EVENT_CODE;if(![i,g,l,a].includes(e))return;const c=Array.from(r.currentTarget.querySelectorAll("[role=tab]:not(.is-disabled)")),s=c.indexOf(r.target);let u;e===l||e===i?s===0?u=c.length-1:u=s-1:s<c.length-1?u=s+1:u=0,c[u].focus(),c[u].click(),O()},O=()=>{p.value&&(y.value=!0)},I=()=>y.value=!1;t.watch(F,r=>{r==="hidden"?p.value=!1:r==="visible"&&setTimeout(()=>p.value=!0,50)}),t.watch(L,r=>{r?setTimeout(()=>p.value=!0,50):p.value=!1}),T.useResizeObserver(N,B),t.onMounted(()=>setTimeout(()=>$(),0)),t.onUpdated(()=>B()),A({scrollToActiveTab:$,removeFocus:I}),t.watch(()=>n.panes,()=>D.update(),{flush:"post"});const W=t.computed(()=>{var r,e;return f.value?[t.createVNode("span",{class:[o.e("nav-prev"),o.is("disabled",!f.value.prev)],onClick:K},[(r=n.arrowLeftIconCfg)!=null&&r.icon?t.createVNode(V.VftIcon,n.arrowLeftIconCfg,null):null]),t.createVNode("span",{class:[o.e("nav-next"),o.is("disabled",!f.value.next)],onClick:j},[(e=n.arrowRightIconCfg)!=null&&e.icon?t.createVNode(V.VftIcon,n.arrowRightIconCfg,null):null])]:null}),U=t.computed(()=>{var r;return(r=n.panes)==null?void 0:r.map((e,i)=>{var E,S,k;const g=e.uid,l=e.props.disabled,a=e.props.name??e.index??`${i}`,c=!l&&(e.isClosable||n.editable);e.index=`${i}`;const s=c?t.createVNode("span",{class:"is-icon-close",onClick:v=>m("tabRemove",e,v)},[(E=n.closeIconCfg)!=null&&E.icon?t.createVNode(V.VftIcon,n.closeIconCfg,null):null]):null,u=((k=(S=e.slots).label)==null?void 0:k.call(S))||e.props.label,Y=!l&&e.active?0:-1;return t.createVNode("div",{ref:`tab-${g}`,class:[o.e("item"),o.is(b.props.tabPosition),o.is("active",e.active),o.is("disabled",l),o.is("closable",c),o.is("focus",y.value)],id:`tab-${a}`,key:`tab-${g}`,"aria-controls":`pane-${a}`,role:"tab","aria-selected":e.active,tabindex:Y,onFocus:()=>O(),onBlur:()=>I(),onClick:v=>{I(),m("tabClick",e,a,v)},onContextmenu:v=>{v.preventDefault(),m("tabContextmenu",{pane:e,index:i,event:v})},onKeydown:v=>{c&&(v.code===x.EVENT_CODE.delete||v.code===x.EVENT_CODE.backspace)&&m("tabRemove",e,v)}},[u,s])})}),X=n.editable||n.addable?t.createVNode("span",{class:o.e("new-tab"),tabindex:"0",onClick:()=>m("tabAdd"),onKeydown:r=>{r.code===x.EVENT_CODE.enter&&m("tabAdd")}},[(z=n.addIconCfg)!=null&&z.icon?t.createVNode(V.VftIcon,n.addIconCfg,null):null]):null;return()=>t.createVNode("div",{ref:N,class:[o.e("nav-wrap"),o.is("scrollable",!!f.value),o.is(b.props.tabPosition)]},[W.value,t.createVNode("div",{class:o.e("nav-scroll"),ref:q},[t.createVNode("div",{class:[o.e("nav"),o.is(b.props.tabPosition),o.is("stretch",n.stretch&&["top","bottom"].includes(b.props.tabPosition))],ref:C,style:M.value,role:"tablist",onKeydown:H},[n.showBar?t.createVNode(Q.default,{tabs:[...n.panes]},null):null,U.value]),X])])}});exports.default=_;
@@ -196,7 +196,7 @@ export declare const VftTooltip: import("vft/es/utils").SFCWithInstall<import("v
196
196
  onOpen: (event?: Event | undefined) => void;
197
197
  onClose: (event?: Event | undefined) => void;
198
198
  hide: (event?: Event | undefined) => void;
199
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("close" | "open" | "before-show" | "before-hide" | "show" | "hide")[], "close" | "open" | "before-show" | "before-hide" | "show" | "hide", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
199
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("open" | "close" | "before-show" | "before-hide" | "show" | "hide")[], "open" | "close" | "before-show" | "before-hide" | "show" | "hide", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
200
200
  role: {
201
201
  type: import("vue").PropType<"grid" | "dialog" | "group" | "listbox" | "menu" | "navigation" | "tooltip" | "tree" | undefined>;
202
202
  required: false;
@@ -386,8 +386,8 @@ export declare const VftTooltip: import("vft/es/utils").SFCWithInstall<import("v
386
386
  required: false;
387
387
  };
388
388
  }>> & {
389
- onClose?: ((...args: any[]) => any) | undefined;
390
389
  onOpen?: ((...args: any[]) => any) | undefined;
390
+ onClose?: ((...args: any[]) => any) | undefined;
391
391
  "onBefore-show"?: ((...args: any[]) => any) | undefined;
392
392
  "onBefore-hide"?: ((...args: any[]) => any) | undefined;
393
393
  onShow?: ((...args: any[]) => any) | undefined;
@@ -270,7 +270,7 @@ declare const _sfc_main: import("vue").DefineComponent<{
270
270
  * @description expose hide function
271
271
  */
272
272
  hide: (event?: Event | undefined) => void;
273
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("close" | "open" | "before-show" | "before-hide" | "show" | "hide")[], "close" | "open" | "before-show" | "before-hide" | "show" | "hide", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
273
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("open" | "close" | "before-show" | "before-hide" | "show" | "hide")[], "open" | "close" | "before-show" | "before-hide" | "show" | "hide", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
274
274
  role: {
275
275
  type: __PropType<"grid" | "dialog" | "group" | "listbox" | "menu" | "navigation" | "tooltip" | "tree" | undefined>;
276
276
  required: false;
@@ -460,8 +460,8 @@ declare const _sfc_main: import("vue").DefineComponent<{
460
460
  required: false;
461
461
  };
462
462
  }>> & {
463
- onClose?: ((...args: any[]) => any) | undefined;
464
463
  onOpen?: ((...args: any[]) => any) | undefined;
464
+ onClose?: ((...args: any[]) => any) | undefined;
465
465
  "onBefore-show"?: ((...args: any[]) => any) | undefined;
466
466
  "onBefore-hide"?: ((...args: any[]) => any) | undefined;
467
467
  onShow?: ((...args: any[]) => any) | undefined;