vft 0.0.145 → 0.0.146

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 (231) hide show
  1. package/es/app-components/form/hooks/use-form-item.d.ts +2 -2
  2. package/es/app-components/upload/types.d.ts +1 -1
  3. package/es/app-components/upload/utils.d.ts +1 -1
  4. package/es/component.d.ts +1 -0
  5. package/es/components/affix/affix.d.ts +1 -1
  6. package/es/components/affix/affix.vue.d.ts +3 -3
  7. package/es/components/affix/index.d.ts +6 -6
  8. package/es/components/autocomplete/autocomplete.vue.d.ts +7 -7
  9. package/es/components/autocomplete/index.d.ts +21 -21
  10. package/es/components/avatar/index.d.ts +3 -3
  11. package/es/components/backtop/index.d.ts +2 -2
  12. package/es/components/button/button.vue.d.ts +209 -0
  13. package/es/components/button/index.d.ts +593 -0
  14. package/es/components/button/use-button.d.ts +20 -0
  15. package/es/components/button/use-button.js +3 -3
  16. package/es/components/carousel/carousel.vue.d.ts +9 -9
  17. package/es/components/carousel/index.d.ts +15 -15
  18. package/es/components/checkbox/checkbox.vue.d.ts +6 -6
  19. package/es/components/checkbox/composables/use-checkbox-disabled.d.ts +6 -0
  20. package/es/components/checkbox/composables/use-checkbox.d.ts +15 -0
  21. package/es/components/checkbox/index.d.ts +12 -12
  22. package/es/components/clamp/index.d.ts +2 -2
  23. package/es/components/color-picker/color-picker.vue.d.ts +4 -4
  24. package/es/components/color-picker/index.d.ts +4 -4
  25. package/es/components/config-provider/hooks/use-global-config.d.ts +31 -0
  26. package/es/components/container/container.vue.d.ts +2 -2
  27. package/es/components/container/index.d.ts +10 -10
  28. package/es/components/date-picker/composables/use-range-picker.d.ts +1 -1
  29. package/es/components/date-picker/date-picker.d.ts +1 -1
  30. package/es/components/date-picker/index.d.ts +2 -2
  31. package/es/components/date-picker/panel-utils.d.ts +1 -1
  32. package/es/components/descriptions/description.vue.d.ts +2 -2
  33. package/es/components/descriptions/index.d.ts +9 -9
  34. package/es/components/dialog/index.d.ts +3 -3
  35. package/es/components/divider/divider.vue.d.ts +2 -2
  36. package/es/components/divider/index.d.ts +4 -4
  37. package/es/components/drawer/index.d.ts +3 -3
  38. package/es/components/dropdown/dropdown.vue.d.ts +20 -20
  39. package/es/components/dropdown/index.d.ts +34 -34
  40. package/es/components/form/form-item.vue.d.ts +9 -9
  41. package/es/components/form/form.vue.d.ts +2 -2
  42. package/es/components/form/hooks/use-form-common-props.d.ts +6 -0
  43. package/es/components/form/index.d.ts +35 -35
  44. package/es/components/image/index.d.ts +2 -2
  45. package/es/components/image-viewer/index.d.ts +1 -1
  46. package/es/components/index.js +113 -113
  47. package/es/components/input/index.d.ts +9 -9
  48. package/es/components/input/input.vue.d.ts +3 -3
  49. package/es/components/link/index.d.ts +2 -2
  50. package/es/components/loading/index.d.ts +48 -0
  51. package/es/components/loading/loading.d.ts +36 -0
  52. package/es/components/md-code-demo/index.d.ts +3 -3
  53. package/es/components/md-code-demo/md-code-demo.d.ts +3 -3
  54. package/es/components/menu/index.d.ts +8 -2
  55. package/es/components/menu/menu.vue.d.ts +10 -2
  56. package/es/components/menu/menu.vue2.js +28 -26
  57. package/es/components/modal/index.d.ts +34 -34
  58. package/es/components/modal/modal.vue.d.ts +21 -21
  59. package/es/components/multiple-tabs/multiple-tabs.vue2.js +1 -1
  60. package/es/components/popconfirm/index.d.ts +9 -9
  61. package/es/components/popconfirm/popconfirm.vue.d.ts +6 -6
  62. package/es/components/popover/index.d.ts +2 -2
  63. package/es/components/popper/composables/use-content.d.ts +3 -3
  64. package/es/components/popper/content.vue.d.ts +1 -1
  65. package/es/components/popper/index.d.ts +4 -4
  66. package/es/components/popper/popper.vue.d.ts +2 -2
  67. package/es/components/progress/index.d.ts +1 -1
  68. package/es/components/radio/index.d.ts +20 -20
  69. package/es/components/radio/radio-group.vue.d.ts +6 -6
  70. package/es/components/radio/use-radio.d.ts +15 -0
  71. package/es/components/row/index.d.ts +1 -1
  72. package/es/components/scrollbar/index.d.ts +2 -2
  73. package/es/components/search/index.d.ts +1 -1
  74. package/es/components/select/index.d.ts +1660 -2
  75. package/es/components/select/select.vue.d.ts +830 -1
  76. package/es/components/select/useSelect.d.ts +7 -7
  77. package/es/components/space/index.d.ts +3 -3
  78. package/es/components/space/space.d.ts +4 -4
  79. package/es/components/super-form/index.d.ts +16 -16
  80. package/es/components/super-form/super-form.vue.d.ts +9 -9
  81. package/es/components/super-form/super-form.vue2.js +40 -40
  82. package/es/components/switch/index.d.ts +12 -12
  83. package/es/components/switch/switch.vue.d.ts +12 -12
  84. package/es/components/table/index.d.ts +50 -50
  85. package/es/components/table/table.vue.d.ts +30 -30
  86. package/es/components/table/table.vue2.js +5 -1
  87. package/es/components/table/use/use-columns.d.ts +12 -12
  88. package/es/components/tabs/index.d.ts +2 -2
  89. package/es/components/tabs/tabs.vue.d.ts +2 -2
  90. package/es/components/time-picker/common/picker.vue.d.ts +1 -1
  91. package/es/components/time-picker/composables/use-time-picker.d.ts +2 -2
  92. package/es/components/time-picker/index.d.ts +2 -2
  93. package/es/components/time-picker/time-picker.d.ts +1 -1
  94. package/es/components/tooltip/index.d.ts +8 -8
  95. package/es/components/tooltip/tooltip.vue.d.ts +2 -2
  96. package/es/components/tree/index.d.ts +22 -22
  97. package/es/components/tree/tree.vue.d.ts +6 -6
  98. package/es/components/upload/index.d.ts +9 -9
  99. package/es/components/upload/upload-content.vue.d.ts +6 -6
  100. package/es/components/upload/upload.vue.d.ts +6 -6
  101. package/es/components/upload/use-handlers.d.ts +23 -0
  102. package/es/components/virtual-list/builders/build-list.d.ts +3 -3
  103. package/es/components/virtual-list/components/dynamic-size-list.d.ts +3 -3
  104. package/es/components/virtual-list/components/fixed-size-list.d.ts +3 -3
  105. package/es/components/virtual-list/components/scrollbar.d.ts +3 -3
  106. package/es/components/virtual-list/props.d.ts +2 -2
  107. package/es/defaults.d.ts +1 -1
  108. package/es/hooks/use-popper/index.d.ts +3 -3
  109. package/es/index.d.ts +1 -1
  110. package/es/index.js +113 -113
  111. package/es/make-installer.d.ts +1 -1
  112. package/es/package.json.d.ts +1 -1
  113. package/es/package.json.js +1 -1
  114. package/es/plugin.d.ts +1 -0
  115. package/lib/app-components/form/hooks/use-form-item.d.ts +2 -2
  116. package/lib/app-components/upload/types.d.ts +1 -1
  117. package/lib/app-components/upload/utils.d.ts +1 -1
  118. package/lib/component.d.ts +1 -0
  119. package/lib/components/affix/affix.d.ts +1 -1
  120. package/lib/components/affix/affix.vue.d.ts +3 -3
  121. package/lib/components/affix/index.d.ts +6 -6
  122. package/lib/components/autocomplete/autocomplete.vue.d.ts +7 -7
  123. package/lib/components/autocomplete/index.d.ts +21 -21
  124. package/lib/components/avatar/index.d.ts +3 -3
  125. package/lib/components/backtop/index.d.ts +2 -2
  126. package/lib/components/button/button.vue.d.ts +209 -0
  127. package/lib/components/button/index.d.ts +593 -0
  128. package/lib/components/button/use-button.cjs +1 -1
  129. package/lib/components/button/use-button.d.ts +20 -0
  130. package/lib/components/carousel/carousel.vue.d.ts +9 -9
  131. package/lib/components/carousel/index.d.ts +15 -15
  132. package/lib/components/checkbox/checkbox.vue.d.ts +6 -6
  133. package/lib/components/checkbox/composables/use-checkbox-disabled.d.ts +6 -0
  134. package/lib/components/checkbox/composables/use-checkbox.d.ts +15 -0
  135. package/lib/components/checkbox/index.d.ts +12 -12
  136. package/lib/components/clamp/index.d.ts +2 -2
  137. package/lib/components/color-picker/color-picker.vue.d.ts +4 -4
  138. package/lib/components/color-picker/index.d.ts +4 -4
  139. package/lib/components/config-provider/hooks/use-global-config.d.ts +31 -0
  140. package/lib/components/container/container.vue.d.ts +2 -2
  141. package/lib/components/container/index.d.ts +10 -10
  142. package/lib/components/date-picker/composables/use-range-picker.d.ts +1 -1
  143. package/lib/components/date-picker/date-picker.d.ts +1 -1
  144. package/lib/components/date-picker/index.d.ts +2 -2
  145. package/lib/components/date-picker/panel-utils.d.ts +1 -1
  146. package/lib/components/descriptions/description.vue.d.ts +2 -2
  147. package/lib/components/descriptions/index.d.ts +9 -9
  148. package/lib/components/dialog/index.d.ts +3 -3
  149. package/lib/components/divider/divider.vue.d.ts +2 -2
  150. package/lib/components/divider/index.d.ts +4 -4
  151. package/lib/components/drawer/index.d.ts +3 -3
  152. package/lib/components/dropdown/dropdown.vue.d.ts +20 -20
  153. package/lib/components/dropdown/index.d.ts +34 -34
  154. package/lib/components/form/form-item.vue.d.ts +9 -9
  155. package/lib/components/form/form.vue.d.ts +2 -2
  156. package/lib/components/form/hooks/use-form-common-props.d.ts +6 -0
  157. package/lib/components/form/index.d.ts +35 -35
  158. package/lib/components/image/index.d.ts +2 -2
  159. package/lib/components/image-viewer/index.d.ts +1 -1
  160. package/lib/components/index.cjs +1 -1
  161. package/lib/components/input/index.d.ts +9 -9
  162. package/lib/components/input/input.vue.d.ts +3 -3
  163. package/lib/components/link/index.d.ts +2 -2
  164. package/lib/components/loading/index.d.ts +48 -0
  165. package/lib/components/loading/loading.d.ts +36 -0
  166. package/lib/components/md-code-demo/index.d.ts +3 -3
  167. package/lib/components/md-code-demo/md-code-demo.d.ts +3 -3
  168. package/lib/components/menu/index.d.ts +8 -2
  169. package/lib/components/menu/menu.vue.d.ts +10 -2
  170. package/lib/components/menu/menu.vue2.cjs +1 -1
  171. package/lib/components/modal/index.d.ts +34 -34
  172. package/lib/components/modal/modal.vue.d.ts +21 -21
  173. package/lib/components/multiple-tabs/multiple-tabs.vue2.cjs +1 -1
  174. package/lib/components/popconfirm/index.d.ts +9 -9
  175. package/lib/components/popconfirm/popconfirm.vue.d.ts +6 -6
  176. package/lib/components/popover/index.d.ts +2 -2
  177. package/lib/components/popper/composables/use-content.d.ts +3 -3
  178. package/lib/components/popper/content.vue.d.ts +1 -1
  179. package/lib/components/popper/index.d.ts +4 -4
  180. package/lib/components/popper/popper.vue.d.ts +2 -2
  181. package/lib/components/progress/index.d.ts +1 -1
  182. package/lib/components/radio/index.d.ts +20 -20
  183. package/lib/components/radio/radio-group.vue.d.ts +6 -6
  184. package/lib/components/radio/use-radio.d.ts +15 -0
  185. package/lib/components/row/index.d.ts +1 -1
  186. package/lib/components/scrollbar/index.d.ts +2 -2
  187. package/lib/components/search/index.d.ts +1 -1
  188. package/lib/components/select/index.d.ts +1660 -2
  189. package/lib/components/select/select.vue.d.ts +830 -1
  190. package/lib/components/select/useSelect.d.ts +7 -7
  191. package/lib/components/space/index.d.ts +3 -3
  192. package/lib/components/space/space.d.ts +4 -4
  193. package/lib/components/super-form/index.d.ts +16 -16
  194. package/lib/components/super-form/super-form.vue.d.ts +9 -9
  195. package/lib/components/super-form/super-form.vue2.cjs +1 -1
  196. package/lib/components/switch/index.d.ts +12 -12
  197. package/lib/components/switch/switch.vue.d.ts +12 -12
  198. package/lib/components/table/index.d.ts +50 -50
  199. package/lib/components/table/table.vue.d.ts +30 -30
  200. package/lib/components/table/table.vue2.cjs +1 -1
  201. package/lib/components/table/use/use-columns.d.ts +12 -12
  202. package/lib/components/tabs/index.d.ts +2 -2
  203. package/lib/components/tabs/tabs.vue.d.ts +2 -2
  204. package/lib/components/time-picker/common/picker.vue.d.ts +1 -1
  205. package/lib/components/time-picker/composables/use-time-picker.d.ts +2 -2
  206. package/lib/components/time-picker/index.d.ts +2 -2
  207. package/lib/components/time-picker/time-picker.d.ts +1 -1
  208. package/lib/components/tooltip/index.d.ts +8 -8
  209. package/lib/components/tooltip/tooltip.vue.d.ts +2 -2
  210. package/lib/components/tree/index.d.ts +22 -22
  211. package/lib/components/tree/tree.vue.d.ts +6 -6
  212. package/lib/components/upload/index.d.ts +9 -9
  213. package/lib/components/upload/upload-content.vue.d.ts +6 -6
  214. package/lib/components/upload/upload.vue.d.ts +6 -6
  215. package/lib/components/upload/use-handlers.d.ts +23 -0
  216. package/lib/components/virtual-list/builders/build-list.d.ts +3 -3
  217. package/lib/components/virtual-list/components/dynamic-size-list.d.ts +3 -3
  218. package/lib/components/virtual-list/components/fixed-size-list.d.ts +3 -3
  219. package/lib/components/virtual-list/components/scrollbar.d.ts +3 -3
  220. package/lib/components/virtual-list/props.d.ts +2 -2
  221. package/lib/defaults.d.ts +1 -1
  222. package/lib/hooks/use-popper/index.d.ts +3 -3
  223. package/lib/index.cjs +1 -1
  224. package/lib/index.d.ts +1 -1
  225. package/lib/make-installer.d.ts +1 -1
  226. package/lib/package.json.cjs +1 -1
  227. package/lib/package.json.d.ts +1 -1
  228. package/lib/plugin.d.ts +1 -0
  229. package/lib/style.css +1 -0
  230. package/package.json +4 -4
  231. package/web-types.json +1 -1
@@ -1,6 +1,6 @@
1
1
  export declare const VftMenu: import("vft/es/utils").SFCWithInstall<import("vue").DefineComponent<{
2
2
  mode: {
3
- type: import("vue").PropType<"horizontal" | "vertical">;
3
+ type: import("vue").PropType<"vertical" | "horizontal">;
4
4
  };
5
5
  defaultActive: {
6
6
  type: import("vue").PropType<string>;
@@ -26,6 +26,9 @@ export declare const VftMenu: import("vft/es/utils").SFCWithInstall<import("vue"
26
26
  ellipsis: {
27
27
  type: import("vue").PropType<boolean>;
28
28
  };
29
+ horizontalMenuProps: {
30
+ type: import("vue").PropType<Partial<import("./sub-menu.vue").SubMenuProps>>;
31
+ };
29
32
  }, {
30
33
  open: (index: string) => void;
31
34
  close: (index: string, indexPath: string[], e?: Event | undefined) => void;
@@ -48,7 +51,7 @@ export declare const VftMenu: import("vft/es/utils").SFCWithInstall<import("vue"
48
51
  }) => void;
49
52
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
50
53
  mode: {
51
- type: import("vue").PropType<"horizontal" | "vertical">;
54
+ type: import("vue").PropType<"vertical" | "horizontal">;
52
55
  };
53
56
  defaultActive: {
54
57
  type: import("vue").PropType<string>;
@@ -74,6 +77,9 @@ export declare const VftMenu: import("vft/es/utils").SFCWithInstall<import("vue"
74
77
  ellipsis: {
75
78
  type: import("vue").PropType<boolean>;
76
79
  };
80
+ horizontalMenuProps: {
81
+ type: import("vue").PropType<Partial<import("./sub-menu.vue").SubMenuProps>>;
82
+ };
77
83
  }>> & {
78
84
  onSelect?: ((menuItem: import("./types").MenuItemClicked, routerResult?: Promise<void | import("vue-router").NavigationFailure> | undefined) => any) | undefined;
79
85
  onClose?: ((val: {
@@ -1,4 +1,5 @@
1
1
  import type { NavigationFailure } from 'vue-router';
2
+ import { type SubMenuProps } from './sub-menu.vue';
2
3
  import type { MenuItemClicked } from './types';
3
4
  export interface MenuProps {
4
5
  /** 菜单展示模式 */
@@ -19,10 +20,11 @@ export interface MenuProps {
19
20
  collapseTransition?: boolean;
20
21
  /** 是否省略多余的子项(仅在横向模式生效) */
21
22
  ellipsis?: boolean;
23
+ horizontalMenuProps?: Partial<SubMenuProps>;
22
24
  }
23
25
  declare const _default: import("vue").DefineComponent<{
24
26
  mode: {
25
- type: import("vue").PropType<"horizontal" | "vertical">;
27
+ type: import("vue").PropType<"vertical" | "horizontal">;
26
28
  };
27
29
  defaultActive: {
28
30
  type: import("vue").PropType<string>;
@@ -48,6 +50,9 @@ declare const _default: import("vue").DefineComponent<{
48
50
  ellipsis: {
49
51
  type: import("vue").PropType<boolean>;
50
52
  };
53
+ horizontalMenuProps: {
54
+ type: import("vue").PropType<Partial<SubMenuProps>>;
55
+ };
51
56
  }, {
52
57
  open: (index: string) => void;
53
58
  close: (index: string, indexPath: string[], e?: Event | undefined) => void;
@@ -70,7 +75,7 @@ declare const _default: import("vue").DefineComponent<{
70
75
  }) => void;
71
76
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
72
77
  mode: {
73
- type: import("vue").PropType<"horizontal" | "vertical">;
78
+ type: import("vue").PropType<"vertical" | "horizontal">;
74
79
  };
75
80
  defaultActive: {
76
81
  type: import("vue").PropType<string>;
@@ -96,6 +101,9 @@ declare const _default: import("vue").DefineComponent<{
96
101
  ellipsis: {
97
102
  type: import("vue").PropType<boolean>;
98
103
  };
104
+ horizontalMenuProps: {
105
+ type: import("vue").PropType<Partial<SubMenuProps>>;
106
+ };
99
107
  }>> & {
100
108
  onSelect?: ((menuItem: MenuItemClicked, routerResult?: Promise<void | NavigationFailure> | undefined) => any) | undefined;
101
109
  onClose?: ((val: {
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("vue"),C=require("@vft/utils"),H=require("../icon/index.cjs"),J=require("@vueuse/core");require("../../utils/ns-cover.cjs");require("lodash");const K=require("../../utils/vue/vnode.cjs"),B=require("../../hooks/use-namespace/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");const Q=require("./menu-collapse-transition.vue.cjs"),X=require("./sub-menu.vue2.cjs"),Y=require("./use-menu-css-var.cjs"),Z=require("./utils/menu-bar.cjs"),p=B.useNamespace("menu"),_=n.defineComponent({name:p.b()}),ee=n.defineComponent({..._,props:{mode:{default:"vertical"},defaultActive:{default:""},defaultOpeneds:{default:[]},uniqueOpened:{type:Boolean},router:{type:Boolean},menuTrigger:{default:"hover"},collapse:{type:Boolean},collapseTransition:{type:Boolean,default:!0},ellipsis:{type:Boolean,default:!0}},emits:["update:collapse","sub-menu-click","select","close","open"],setup(u,{expose:P,emit:m}){const x=n.useSlots(),h=n.getCurrentInstance(),I=h.appContext.config.globalProperties.$router,i=n.ref(),O=B.useNamespace("sub-menu"),f=n.ref(-1),s=n.ref(u.defaultOpeneds&&!u.collapse?u.defaultOpeneds.slice(0):[]),a=n.ref(u.defaultActive),r=n.ref({}),M=n.ref({}),R=n.computed(()=>u.mode==="horizontal"||u.mode==="vertical"&&u.collapse),A=()=>{const e=a.value&&r.value[a.value];if(!e||u.mode==="horizontal"||u.collapse)return;e.indexPath.forEach(l=>{const o=M.value[l];o&&g(l,o.indexPath)})},g=(e,t,l)=>{s.value.includes(e)||(u.uniqueOpened&&(s.value=s.value.filter(o=>t.includes(o))),s.value.push(e),m("open",{index:e,indexPath:t,e:l}))},y=(e,t,l)=>{const o=s.value.indexOf(e);o!==-1&&s.value.splice(o,1),m("close",{index:e,indexPath:t,e:l})},E=({e,index:t,indexPath:l})=>{s.value.includes(t)?y(t,l,e):g(t,l,e),m("sub-menu-click",{e,index:t,indexPath:l})},W=e=>{(u.mode==="horizontal"||u.collapse)&&(s.value=[]);const{index:t,indexPath:l}=e;if(!(C.isNullOrUndefined(t)||C.isNullOrUndefined(l))){if(u.router&&I){const o=e.route||t,v=I.push(o).then(c=>(c||(a.value=t),c));m("select",e,v)}else a.value=t,m("select",e);C.isMobile()&&setTimeout(()=>{s.value=[]},100)}},V=e=>{const t=r.value,l=t[e]||a.value&&t[a.value]||t[u.defaultActive];l?a.value=l.index:a.value=e},$=()=>{var d;if(!i.value)return-1;const e=Array.from(((d=i.value)==null?void 0:d.childNodes)??[]).filter(q=>q.nodeName!=="#text"||q.nodeValue),t=64,l=Number.parseInt(getComputedStyle(i.value).paddingLeft,10),o=Number.parseInt(getComputedStyle(i.value).paddingRight,10),v=i.value.clientWidth-l-o;let c=0,b=0;return e.forEach((q,G)=>{c+=q.offsetWidth||0,c<=v-t&&(b=G+1)}),b===e.length?-1:b},D=(e,t=33.34)=>{let l;return()=>{l&&clearTimeout(l),l=setTimeout(()=>{e()},t)}};let T=!0;const N=()=>{const e=()=>{f.value=-1,n.nextTick(()=>{f.value=$()})};T?e():D(e)(),T=!1};n.watch(()=>u.defaultActive,e=>{r.value[e]||(a.value=""),V(e)}),n.watch(()=>u.collapse,e=>{e&&(s.value=[])}),n.watch(r.value,A);let S;n.watchEffect(()=>{u.mode==="horizontal"&&u.ellipsis?S=J.useResizeObserver(i,N).stop:S==null||S()});const k=e=>{M.value[e.index]=e},w=e=>{delete M.value[e.index]},L=e=>{r.value[e.index]=e},U=e=>{delete r.value[e.index]},z=n.ref(!1),j=n.ref(),F=n.ref();return n.provide("rootMenu",n.reactive({props:h.props,openedMenus:s,items:r,subMenus:M,activeIndex:a,isMenuPopup:R,inSubMenu:z,inSubMenuMouseEnterTimer:j,inSubMenuMouseleaveTimer:F,addMenuItem:L,removeMenuItem:U,addSubMenu:k,removeSubMenu:w,openMenu:g,closeMenu:y,handleMenuItemClick:W,handleSubMenuClick:E})),n.provide(`subMenu:${h.uid}`,{addSubMenu:k,removeSubMenu:w,mouseInChild:n.ref(!1),level:0}),n.onMounted(()=>{u.mode==="horizontal"&&new Z.default(h.vnode.el,p.namespace.value)}),P({open:e=>{const{indexPath:t}=M.value[e];t.forEach(l=>g(l,t))},close:y,handleResize:N,menu:i,inSubMenu:z}),()=>{var v;let e=((v=x.default)==null?void 0:v.call(x))??[];const t=[];if(u.mode==="horizontal"&&i.value){const c=K.flattedChildren(e),b=f.value===-1?c:c.slice(0,f.value),d=f.value===-1?[]:c.slice(f.value);d!=null&&d.length&&u.ellipsis&&(e=b,t.push(n.h(X.default,{index:"sub-menu-more",class:O.e("hide-arrow")},{title:()=>n.h(H.VftIcon,{icon:"icon-menu-line",class:O.e("icon-more")}),default:()=>d})))}const l=Y.useMenuCssVar(h.props,0),o=n.h("ul",{key:String(u.collapse),role:"menubar",ref:i,style:l.value,class:{[p.b()]:!0,[p.m(u.mode)]:!0,[p.m("collapse")]:u.collapse}},[...e,...t]);return u.collapseTransition&&u.mode==="vertical"?n.h(Q.default,()=>o):o}}});exports.default=ee;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("vue"),C=require("@vft/utils"),H=require("../icon/index.cjs"),J=require("@vueuse/core");require("../../utils/ns-cover.cjs");require("lodash");const K=require("../../utils/vue/vnode.cjs"),w=require("../../hooks/use-namespace/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");const Q=require("./menu-collapse-transition.vue.cjs"),X=require("./sub-menu.vue2.cjs"),Y=require("./use-menu-css-var.cjs"),Z=require("./utils/menu-bar.cjs"),p=w.useNamespace("menu"),_=n.defineComponent({name:p.b()}),ee=n.defineComponent({..._,props:{mode:{default:"vertical"},defaultActive:{default:""},defaultOpeneds:{default:[]},uniqueOpened:{type:Boolean},router:{type:Boolean},menuTrigger:{default:"hover"},collapse:{type:Boolean},collapseTransition:{type:Boolean,default:!0},ellipsis:{type:Boolean,default:!0},horizontalMenuProps:{}},emits:["update:collapse","sub-menu-click","select","close","open"],setup(u,{expose:B,emit:m}){const x=n.useSlots(),h=n.getCurrentInstance(),I=h.appContext.config.globalProperties.$router,i=n.ref(),O=w.useNamespace("sub-menu"),f=n.ref(-1),s=n.ref(u.defaultOpeneds&&!u.collapse?u.defaultOpeneds.slice(0):[]),a=n.ref(u.defaultActive),r=n.ref({}),M=n.ref({}),R=n.computed(()=>u.mode==="horizontal"||u.mode==="vertical"&&u.collapse),A=()=>{const e=a.value&&r.value[a.value];if(!e||u.mode==="horizontal"||u.collapse)return;e.indexPath.forEach(l=>{const o=M.value[l];o&&g(l,o.indexPath)})},g=(e,t,l)=>{s.value.includes(e)||(u.uniqueOpened&&(s.value=s.value.filter(o=>t.includes(o))),s.value.push(e),m("open",{index:e,indexPath:t,e:l}))},y=(e,t,l)=>{const o=s.value.indexOf(e);o!==-1&&s.value.splice(o,1),m("close",{index:e,indexPath:t,e:l})},E=({e,index:t,indexPath:l})=>{s.value.includes(t)?y(t,l,e):g(t,l,e),m("sub-menu-click",{e,index:t,indexPath:l})},W=e=>{(u.mode==="horizontal"||u.collapse)&&(s.value=[]);const{index:t,indexPath:l}=e;if(!(C.isNullOrUndefined(t)||C.isNullOrUndefined(l))){if(u.router&&I){const o=e.route||t,v=I.push(o).then(c=>(c||(a.value=t),c));m("select",e,v)}else a.value=t,m("select",e);C.isMobile()&&setTimeout(()=>{s.value=[]},100)}},V=e=>{const t=r.value,l=t[e]||a.value&&t[a.value]||t[u.defaultActive];l?a.value=l.index:a.value=e},$=()=>{var d;if(!i.value)return-1;const e=Array.from(((d=i.value)==null?void 0:d.childNodes)??[]).filter(q=>q.nodeName!=="#text"||q.nodeValue),t=64,l=Number.parseInt(getComputedStyle(i.value).paddingLeft,10),o=Number.parseInt(getComputedStyle(i.value).paddingRight,10),v=i.value.clientWidth-l-o;let c=0,b=0;return e.forEach((q,G)=>{c+=q.offsetWidth||0,c<=v-t&&(b=G+1)}),b===e.length?-1:b},D=(e,t=33.34)=>{let l;return()=>{l&&clearTimeout(l),l=setTimeout(()=>{e()},t)}};let T=!0;const z=()=>{const e=()=>{f.value=-1,n.nextTick(()=>{f.value=$()})};T?e():D(e)(),T=!1};n.watch(()=>u.defaultActive,e=>{r.value[e]||(a.value=""),V(e)}),n.watch(()=>u.collapse,e=>{e&&(s.value=[])}),n.watch(r.value,A);let S;n.watchEffect(()=>{u.mode==="horizontal"&&u.ellipsis?S=J.useResizeObserver(i,z).stop:S==null||S()});const N=e=>{M.value[e.index]=e},P=e=>{delete M.value[e.index]},L=e=>{r.value[e.index]=e},U=e=>{delete r.value[e.index]},k=n.ref(!1),j=n.ref(),F=n.ref();return n.provide("rootMenu",n.reactive({props:h.props,openedMenus:s,items:r,subMenus:M,activeIndex:a,isMenuPopup:R,inSubMenu:k,inSubMenuMouseEnterTimer:j,inSubMenuMouseleaveTimer:F,addMenuItem:L,removeMenuItem:U,addSubMenu:N,removeSubMenu:P,openMenu:g,closeMenu:y,handleMenuItemClick:W,handleSubMenuClick:E})),n.provide(`subMenu:${h.uid}`,{addSubMenu:N,removeSubMenu:P,mouseInChild:n.ref(!1),level:0}),n.onMounted(()=>{u.mode==="horizontal"&&new Z.default(h.vnode.el,p.namespace.value)}),B({open:e=>{const{indexPath:t}=M.value[e];t.forEach(l=>g(l,t))},close:y,handleResize:z,menu:i,inSubMenu:k}),()=>{var v;let e=((v=x.default)==null?void 0:v.call(x))??[];const t=[];if(u.mode==="horizontal"&&i.value){const c=K.flattedChildren(e),b=f.value===-1?c:c.slice(0,f.value),d=f.value===-1?[]:c.slice(f.value);d!=null&&d.length&&u.ellipsis&&(e=b,t.push(n.h(X.default,{index:"sub-menu-more",class:O.e("hide-arrow"),...u.horizontalMenuProps},{title:()=>n.h(H.VftIcon,{icon:"icon-menu-line",class:O.e("icon-more")}),default:()=>d})))}const l=Y.useMenuCssVar(h.props,0),o=n.h("ul",{key:String(u.collapse),role:"menubar",ref:i,style:l.value,class:{[p.b()]:!0,[p.m(u.mode)]:!0,[p.m("collapse")]:u.collapse}},[...e,...t]);return u.collapseTransition&&u.mode==="vertical"?n.h(Q.default,()=>o):o}}});exports.default=ee;
@@ -6,11 +6,11 @@ export declare const VftModal: import("vft/es/utils").SFCWithInstall<{
6
6
  $props: {
7
7
  title?: string | undefined;
8
8
  center?: boolean | undefined;
9
- draggable?: boolean | undefined;
10
9
  fullscreen?: boolean | undefined;
11
10
  modelValue?: boolean | undefined;
12
11
  customClass?: string | undefined;
13
12
  showClose?: boolean | undefined;
13
+ draggable?: boolean | undefined;
14
14
  closeOnPressEscape?: boolean | undefined;
15
15
  alignCenter?: boolean | undefined;
16
16
  appendToBody?: boolean | undefined;
@@ -24,9 +24,9 @@ export declare const VftModal: import("vft/es/utils").SFCWithInstall<{
24
24
  showActionButtonGroup?: boolean | undefined;
25
25
  showSubmitButton?: boolean | undefined;
26
26
  showCancelButton?: boolean | undefined;
27
+ style?: unknown;
27
28
  readonly top?: string | undefined;
28
29
  readonly width?: string | number | undefined;
29
- style?: unknown;
30
30
  readonly zIndex?: number | undefined;
31
31
  key?: string | number | symbol | undefined;
32
32
  ref?: import("vue").VNodeRef | undefined;
@@ -93,12 +93,6 @@ export declare const VftModal: import("vft/es/utils").SFCWithInstall<{
93
93
  $emit: (event: string, ...args: any[]) => void;
94
94
  $el: any;
95
95
  $options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
96
- top: {
97
- type: import("vue").PropType<string>;
98
- };
99
- width: {
100
- type: import("vue").PropType<string | number>;
101
- };
102
96
  title: {
103
97
  type: import("vue").PropType<string>;
104
98
  default: string;
@@ -107,13 +101,15 @@ export declare const VftModal: import("vft/es/utils").SFCWithInstall<{
107
101
  type: import("vue").PropType<boolean>;
108
102
  default: boolean;
109
103
  };
104
+ top: {
105
+ type: import("vue").PropType<string>;
106
+ };
107
+ width: {
108
+ type: import("vue").PropType<string | number>;
109
+ };
110
110
  zIndex: {
111
111
  type: import("vue").PropType<number>;
112
112
  };
113
- draggable: {
114
- type: import("vue").PropType<boolean>;
115
- default: boolean;
116
- };
117
113
  fullscreen: {
118
114
  type: import("vue").PropType<boolean>;
119
115
  default: boolean;
@@ -130,6 +126,10 @@ export declare const VftModal: import("vft/es/utils").SFCWithInstall<{
130
126
  type: import("vue").PropType<boolean>;
131
127
  default: boolean;
132
128
  };
129
+ draggable: {
130
+ type: import("vue").PropType<boolean>;
131
+ default: boolean;
132
+ };
133
133
  closeOnPressEscape: {
134
134
  type: import("vue").PropType<boolean>;
135
135
  default: boolean;
@@ -208,11 +208,11 @@ export declare const VftModal: import("vft/es/utils").SFCWithInstall<{
208
208
  }, string, {
209
209
  title: string;
210
210
  center: boolean;
211
- draggable: boolean;
212
211
  fullscreen: boolean;
213
212
  modelValue: boolean;
214
213
  customClass: string;
215
214
  showClose: boolean;
215
+ draggable: boolean;
216
216
  closeOnPressEscape: boolean;
217
217
  alignCenter: boolean;
218
218
  appendToBody: boolean;
@@ -247,12 +247,6 @@ export declare const VftModal: import("vft/es/utils").SFCWithInstall<{
247
247
  $nextTick: typeof import("vue").nextTick;
248
248
  $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R) => any : (...args: any) => any, options?: import("vue").WatchOptions<boolean> | undefined): import("vue").WatchStopHandle;
249
249
  } & Readonly<import("vue").ExtractPropTypes<{
250
- top: {
251
- type: import("vue").PropType<string>;
252
- };
253
- width: {
254
- type: import("vue").PropType<string | number>;
255
- };
256
250
  title: {
257
251
  type: import("vue").PropType<string>;
258
252
  default: string;
@@ -261,13 +255,15 @@ export declare const VftModal: import("vft/es/utils").SFCWithInstall<{
261
255
  type: import("vue").PropType<boolean>;
262
256
  default: boolean;
263
257
  };
258
+ top: {
259
+ type: import("vue").PropType<string>;
260
+ };
261
+ width: {
262
+ type: import("vue").PropType<string | number>;
263
+ };
264
264
  zIndex: {
265
265
  type: import("vue").PropType<number>;
266
266
  };
267
- draggable: {
268
- type: import("vue").PropType<boolean>;
269
- default: boolean;
270
- };
271
267
  fullscreen: {
272
268
  type: import("vue").PropType<boolean>;
273
269
  default: boolean;
@@ -284,6 +280,10 @@ export declare const VftModal: import("vft/es/utils").SFCWithInstall<{
284
280
  type: import("vue").PropType<boolean>;
285
281
  default: boolean;
286
282
  };
283
+ draggable: {
284
+ type: import("vue").PropType<boolean>;
285
+ default: boolean;
286
+ };
287
287
  closeOnPressEscape: {
288
288
  type: import("vue").PropType<boolean>;
289
289
  default: boolean;
@@ -362,12 +362,6 @@ export declare const VftModal: import("vft/es/utils").SFCWithInstall<{
362
362
  __isTeleport?: undefined;
363
363
  __isSuspense?: undefined;
364
364
  } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
365
- top: {
366
- type: import("vue").PropType<string>;
367
- };
368
- width: {
369
- type: import("vue").PropType<string | number>;
370
- };
371
365
  title: {
372
366
  type: import("vue").PropType<string>;
373
367
  default: string;
@@ -376,13 +370,15 @@ export declare const VftModal: import("vft/es/utils").SFCWithInstall<{
376
370
  type: import("vue").PropType<boolean>;
377
371
  default: boolean;
378
372
  };
373
+ top: {
374
+ type: import("vue").PropType<string>;
375
+ };
376
+ width: {
377
+ type: import("vue").PropType<string | number>;
378
+ };
379
379
  zIndex: {
380
380
  type: import("vue").PropType<number>;
381
381
  };
382
- draggable: {
383
- type: import("vue").PropType<boolean>;
384
- default: boolean;
385
- };
386
382
  fullscreen: {
387
383
  type: import("vue").PropType<boolean>;
388
384
  default: boolean;
@@ -399,6 +395,10 @@ export declare const VftModal: import("vft/es/utils").SFCWithInstall<{
399
395
  type: import("vue").PropType<boolean>;
400
396
  default: boolean;
401
397
  };
398
+ draggable: {
399
+ type: import("vue").PropType<boolean>;
400
+ default: boolean;
401
+ };
402
402
  closeOnPressEscape: {
403
403
  type: import("vue").PropType<boolean>;
404
404
  default: boolean;
@@ -477,11 +477,11 @@ export declare const VftModal: import("vft/es/utils").SFCWithInstall<{
477
477
  }, string, {
478
478
  title: string;
479
479
  center: boolean;
480
- draggable: boolean;
481
480
  fullscreen: boolean;
482
481
  modelValue: boolean;
483
482
  customClass: string;
484
483
  showClose: boolean;
484
+ draggable: boolean;
485
485
  closeOnPressEscape: boolean;
486
486
  alignCenter: boolean;
487
487
  appendToBody: boolean;
@@ -4,12 +4,6 @@ export interface ModalProps extends DialogProps {
4
4
  showActionButtonGroup?: boolean;
5
5
  }
6
6
  declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
7
- top: {
8
- type: import("vue").PropType<string>;
9
- };
10
- width: {
11
- type: import("vue").PropType<string | number>;
12
- };
13
7
  title: {
14
8
  type: import("vue").PropType<string>;
15
9
  default: string;
@@ -18,13 +12,15 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
18
12
  type: import("vue").PropType<boolean>;
19
13
  default: boolean;
20
14
  };
15
+ top: {
16
+ type: import("vue").PropType<string>;
17
+ };
18
+ width: {
19
+ type: import("vue").PropType<string | number>;
20
+ };
21
21
  zIndex: {
22
22
  type: import("vue").PropType<number>;
23
23
  };
24
- draggable: {
25
- type: import("vue").PropType<boolean>;
26
- default: boolean;
27
- };
28
24
  fullscreen: {
29
25
  type: import("vue").PropType<boolean>;
30
26
  default: boolean;
@@ -41,6 +37,10 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
41
37
  type: import("vue").PropType<boolean>;
42
38
  default: boolean;
43
39
  };
40
+ draggable: {
41
+ type: import("vue").PropType<boolean>;
42
+ default: boolean;
43
+ };
44
44
  closeOnPressEscape: {
45
45
  type: import("vue").PropType<boolean>;
46
46
  default: boolean;
@@ -117,12 +117,6 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
117
117
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
118
118
  [x: string]: (...args: any[]) => void;
119
119
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
120
- top: {
121
- type: import("vue").PropType<string>;
122
- };
123
- width: {
124
- type: import("vue").PropType<string | number>;
125
- };
126
120
  title: {
127
121
  type: import("vue").PropType<string>;
128
122
  default: string;
@@ -131,13 +125,15 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
131
125
  type: import("vue").PropType<boolean>;
132
126
  default: boolean;
133
127
  };
128
+ top: {
129
+ type: import("vue").PropType<string>;
130
+ };
131
+ width: {
132
+ type: import("vue").PropType<string | number>;
133
+ };
134
134
  zIndex: {
135
135
  type: import("vue").PropType<number>;
136
136
  };
137
- draggable: {
138
- type: import("vue").PropType<boolean>;
139
- default: boolean;
140
- };
141
137
  fullscreen: {
142
138
  type: import("vue").PropType<boolean>;
143
139
  default: boolean;
@@ -154,6 +150,10 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
154
150
  type: import("vue").PropType<boolean>;
155
151
  default: boolean;
156
152
  };
153
+ draggable: {
154
+ type: import("vue").PropType<boolean>;
155
+ default: boolean;
156
+ };
157
157
  closeOnPressEscape: {
158
158
  type: import("vue").PropType<boolean>;
159
159
  default: boolean;
@@ -230,11 +230,11 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
230
230
  }>>, {
231
231
  title: string;
232
232
  center: boolean;
233
- draggable: boolean;
234
233
  fullscreen: boolean;
235
234
  modelValue: boolean;
236
235
  customClass: string;
237
236
  showClose: boolean;
237
+ draggable: boolean;
238
238
  closeOnPressEscape: boolean;
239
239
  alignCenter: boolean;
240
240
  appendToBody: boolean;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),s=require("@vft/router"),p=require("@vft/store"),V=require("@vft/use");require("../alert/index.cjs");require("../avatar/index.cjs");require("../backtop/index.cjs");require("../button/index.cjs");require("../card/index.cjs");require("../check-tag/index.cjs");require("../checkbox/index.cjs");require("../clamp/index.cjs");require("../clamp-toggle/index.cjs");require("../col/index.cjs");require("../collapse-transition/index.cjs");require("../color-picker/index.cjs");require("../config-provider/index.cjs");require("../container/index.cjs");require("@vft/utils");require("../context-menu/context-menu.vue2.cjs");require("../date-picker/index.cjs");require("../date-time-select/index.cjs");require("../descriptions/index.cjs");require("../dialog/index.cjs");require("../divider/index.cjs");require("../drawer/index.cjs");require("../dropdown/index.cjs");require("../empty/index.cjs");require("../exception/index.cjs");require("../footer-layout/index.cjs");require("../form/index.cjs");require("../full-screen/index.cjs");require("../header-layout/index.cjs");require("../horizontal-menu/index.cjs");require("../icon/index.cjs");require("../icon-text/index.cjs");require("../iframe-layout/index.cjs");require("../image/index.cjs");require("../image-viewer/index.cjs");require("../input/index.cjs");require("../input-number/index.cjs");require("../link/index.cjs");require("../list-cell/index.cjs");require("../logo/index.cjs");require("../menu/index.cjs");require("./index.cjs");require("../overlay/index.cjs");require("../page-wrapper/index.cjs");require("../pagination/index.cjs");require("../popconfirm/index.cjs");require("../popover/index.cjs");require("../popper/index.cjs");require("../qrcode/index.cjs");require("../radio/index.cjs");require("../result/index.cjs");require("../router-view-content/index.cjs");require("../row/index.cjs");require("../scrollbar/index.cjs");require("../search/index.cjs");require("../select/index.cjs");require("../side-menu/index.cjs");require("../skeleton/index.cjs");require("../slider/index.cjs");require("../space/index.cjs");require("../switch/index.cjs");require("../table/index.cjs");const g=require("../tabs/index.cjs");require("../tag/index.cjs");require("../time-picker/index.cjs");require("../tooltip/index.cjs");require("../tree/index.cjs");require("../verify-code/index.cjs");require("../virtual-list/components/dynamic-size-grid.cjs");require("../virtual-list/components/dynamic-size-list.cjs");require("../virtual-list/components/fixed-size-grid.cjs");require("../virtual-list/components/fixed-size-list.cjs");require("../virtual-list/props.cjs");require("../autocomplete/index.cjs");require("../modal/index.cjs");require("../progress/index.cjs");require("../super-form/index.cjs");require("../upload/index.cjs");require("../carousel/index.cjs");require("../md-code-demo/index.cjs");require("../md-code-tabs/index.cjs");require("../md-comment/index.cjs");require("../md-container/index.cjs");require("../md-tabs/index.cjs");require("../md-vue-playground/index.cjs");require("@vueuse/core");const T=require("../../utils/ns-cover.cjs");require("lodash");const w=require("../../hooks/use-namespace/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");require("../message/index.cjs");require("../infinite-scroll/index.cjs");require("../progress-i/index.cjs");const I=require("hotkeys-js"),K=require("vue-router"),A=require("./tab-content.vue2.cjs"),C=require("./use/use-multiple-tabs.cjs"),y=w.useNamespace("multiple-tabs"),W=e.defineComponent({name:y.b()}),z=e.defineComponent({...W,props:{tabsStyle:{},contextMenuStyle:{},canDrag:{type:Boolean},fixTabCount:{},fixExtraScrollWidth:{}},setup(m){const q=e.getCurrentInstance().appContext.config.globalProperties.$router,i=C.initAffixTabs(q);m.canDrag&&C.useTabsDrag(i);const f=p.useMultipleTabStore(),n=e.ref(""),o=e.ref(0),v=e.ref(),{go:b}=s.useRouterHelper(q),d=e.computed(()=>f.getTabList.filter(r=>{var t;return!((t=r.meta)!=null&&t.hideTab)}));e.watchEffect(()=>{var r;if(n.value){const t=d.value.findIndex(u=>s.getRouterKeyPath(u)===n.value);t===-1?o.value=((r=d.value)==null?void 0:r.length)-1:o.value=t,o.value=o.value<(i==null?void 0:i.length)?(i==null?void 0:i.length)-1:o.value}}),K.onBeforeRouteLeave(()=>{v.value=e.unref(q.currentRoute)}),s.listenerRouteChange(r=>{var x;if(!r||(x=r.meta)!=null&&x.hasTokenToRoot)return;const{meta:t={}}=r,{currentActivePath:u,hideTab:a}=t,l=a?u:null,c=s.getRouterKeyPath(r);if(n.value!==c&&(n.value=c),l){let h=q.getRoutes().find(N=>N.path===u);h&&f.addTab(h,e.unref(v),o.value,r)}else f.addTab(e.unref(r),e.unref(v),o.value)});function R(r){var a,l;if(n.value===r.paneName)return;const t=d.value[r.attrs.index];n.value=r.paneName;const u=(l=(a=t==null?void 0:t.meta)==null?void 0:a.hideActiveRoute)==null?void 0:l.fullPath;b(u||t.fullPath||t.path)}function S(r){f.closeTabByKey(r,q)}const[_,P]=V.useRefs();function k(r){const t=r.pane.attrs.index,u=r.event;_.value[t].handleContext(u)}const B=e.computed(()=>{let r={padding:"4px 0 0","border-bottom":"none","header-height":"26px","font-size":"13px","item-padding":"0 10px","close-icon-left":"8px","item-distance":"1px","item-max-width":"180px","scroll-padding":"0 20px","header-margin":"0 0 0 8px","item-border-radius":"5px 5px 0 0","item-border":"none"};return{...T.generateCssVars(r,"tabs"),...m.tabsStyle}}),{closeCurrent:M}=p.useTabs();I("command+e, ctrl+e",function(){return M(),!1});const E={...T.generateCssVars({"sub-item-height":"40px","item-min-width":"150px"},"menu"),...m.contextMenuStyle};return(r,t)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(y).b()),style:e.normalizeStyle(B.value)},[e.createVNode(e.unref(g.VftTabs),{showBar:!1,fixTabCount:r.fixTabCount,fixExtraScrollWidth:r.fixExtraScrollWidth,"model-value":n.value,"onUpdate:modelValue":t[0]||(t[0]=u=>n.value=u),onTabClick:R,onTabRemove:S,onTabContextMenu:k},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(u,a)=>{var l;return e.openBlock(),e.createBlock(e.unref(g.VftTabPane),{key:e.unref(s.getRouterKeyPath)(u)+a,closable:!((l=u.meta)!=null&&l.affix),index:a,name:e.unref(s.getRouterKeyPath)(u)},{label:e.withCtx(()=>{var c;return[e.createVNode(A.default,{contextMenuStyle:E,affixNum:(c=e.unref(i))==null?void 0:c.length,ref_for:!0,ref:e.unref(P)(a),tabItem:u},null,8,["affixNum","tabItem"])]}),_:2},1032,["closable","index","name"])}),128))]),_:1},8,["fixTabCount","fixExtraScrollWidth","model-value"])],6))}});exports.default=z;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),s=require("@vft/router"),p=require("@vft/store"),V=require("@vft/use");require("../alert/index.cjs");require("../avatar/index.cjs");require("../backtop/index.cjs");require("../button/index.cjs");require("../card/index.cjs");require("../check-tag/index.cjs");require("../checkbox/index.cjs");require("../clamp/index.cjs");require("../clamp-toggle/index.cjs");require("../col/index.cjs");require("../collapse-transition/index.cjs");require("../color-picker/index.cjs");require("../config-provider/index.cjs");require("../container/index.cjs");require("@vft/utils");require("../context-menu/context-menu.vue2.cjs");require("../date-picker/index.cjs");require("../date-time-select/index.cjs");require("../descriptions/index.cjs");require("../dialog/index.cjs");require("../divider/index.cjs");require("../drawer/index.cjs");require("../dropdown/index.cjs");require("../empty/index.cjs");require("../exception/index.cjs");require("../footer-layout/index.cjs");require("../form/index.cjs");require("../full-screen/index.cjs");require("../header-layout/index.cjs");require("../horizontal-menu/index.cjs");require("../icon/index.cjs");require("../icon-text/index.cjs");require("../iframe-layout/index.cjs");require("../image/index.cjs");require("../image-viewer/index.cjs");require("../input/index.cjs");require("../input-number/index.cjs");require("../link/index.cjs");require("../list-cell/index.cjs");require("../logo/index.cjs");require("../menu/index.cjs");require("./index.cjs");require("../overlay/index.cjs");require("../page-wrapper/index.cjs");require("../pagination/index.cjs");require("../popconfirm/index.cjs");require("../popover/index.cjs");require("../popper/index.cjs");require("../qrcode/index.cjs");require("../radio/index.cjs");require("../result/index.cjs");require("../router-view-content/index.cjs");require("../row/index.cjs");require("../scrollbar/index.cjs");require("../search/index.cjs");require("../select/index.cjs");require("../side-menu/index.cjs");require("../skeleton/index.cjs");require("../slider/index.cjs");require("../space/index.cjs");require("../switch/index.cjs");require("../table/index.cjs");const g=require("../tabs/index.cjs");require("../tag/index.cjs");require("../time-picker/index.cjs");require("../tooltip/index.cjs");require("../tree/index.cjs");require("../verify-code/index.cjs");require("../virtual-list/components/dynamic-size-grid.cjs");require("../virtual-list/components/dynamic-size-list.cjs");require("../virtual-list/components/fixed-size-grid.cjs");require("../virtual-list/components/fixed-size-list.cjs");require("../virtual-list/props.cjs");require("../autocomplete/index.cjs");require("../modal/index.cjs");require("../progress/index.cjs");require("../super-form/index.cjs");require("../upload/index.cjs");require("../carousel/index.cjs");require("../md-code-demo/index.cjs");require("../md-code-tabs/index.cjs");require("../md-comment/index.cjs");require("../md-container/index.cjs");require("../md-tabs/index.cjs");require("../md-vue-playground/index.cjs");require("@vueuse/core");const T=require("../../utils/ns-cover.cjs");require("lodash");const w=require("../../hooks/use-namespace/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");require("../message/index.cjs");require("../infinite-scroll/index.cjs");require("../progress-i/index.cjs");const I=require("hotkeys-js"),K=require("vue-router"),A=require("./tab-content.vue2.cjs"),C=require("./use/use-multiple-tabs.cjs"),y=w.useNamespace("multiple-tabs"),W=e.defineComponent({name:y.b()}),z=e.defineComponent({...W,props:{tabsStyle:{},contextMenuStyle:{},canDrag:{type:Boolean},fixTabCount:{},fixExtraScrollWidth:{}},setup(m){const q=e.getCurrentInstance().appContext.config.globalProperties.$router,i=C.initAffixTabs(q);m.canDrag&&C.useTabsDrag(i);const f=p.useMultipleTabStore(),n=e.ref(""),o=e.ref(0),v=e.ref(),{go:b}=s.useRouterHelper(q),d=e.computed(()=>f.getTabList.filter(r=>{var t;return!((t=r.meta)!=null&&t.hideTab)}));e.watchEffect(()=>{var r;if(n.value){const t=d.value.findIndex(u=>s.getRouterKeyPath(u)===n.value);t===-1?o.value=((r=d.value)==null?void 0:r.length)-1:o.value=t,o.value=o.value<(i==null?void 0:i.length)?(i==null?void 0:i.length)-1:o.value}}),K.onBeforeRouteLeave(()=>{v.value=e.unref(q.currentRoute)}),s.listenerRouteChange(r=>{var x;if(!r||(x=r.meta)!=null&&x.hasTokenToRoot)return;const{meta:t={}}=r,{currentActivePath:u,hideTab:a}=t,l=a?u:null,c=s.getRouterKeyPath(r);if(n.value!==c&&(n.value=c),l){let h=q.getRoutes().find(N=>N.path===u);h&&f.addTab(h,e.unref(v),o.value,r)}else f.addTab(e.unref(r),e.unref(v),o.value)});function R(r){var a,l;if(n.value===r.paneName)return;const t=d.value[r.attrs.index];n.value=r.paneName;const u=(l=(a=t==null?void 0:t.meta)==null?void 0:a.hideActiveRoute)==null?void 0:l.fullPath;b(u||t.fullPath||t.path)}function S(r){f.closeTabByKey(r,q)}const{refs:_,setRefs:P}=V.useRefs();function k(r){const t=r.pane.attrs.index,u=r.event;_.value[t].handleContext(u)}const B=e.computed(()=>{let r={padding:"4px 0 0","border-bottom":"none","header-height":"26px","font-size":"13px","item-padding":"0 10px","close-icon-left":"8px","item-distance":"1px","item-max-width":"180px","scroll-padding":"0 20px","header-margin":"0 0 0 8px","item-border-radius":"5px 5px 0 0","item-border":"none"};return{...T.generateCssVars(r,"tabs"),...m.tabsStyle}}),{closeCurrent:M}=p.useTabs();I("command+e, ctrl+e",function(){return M(),!1});const E={...T.generateCssVars({"sub-item-height":"40px","item-min-width":"150px"},"menu"),...m.contextMenuStyle};return(r,t)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(y).b()),style:e.normalizeStyle(B.value)},[e.createVNode(e.unref(g.VftTabs),{showBar:!1,fixTabCount:r.fixTabCount,fixExtraScrollWidth:r.fixExtraScrollWidth,"model-value":n.value,"onUpdate:modelValue":t[0]||(t[0]=u=>n.value=u),onTabClick:R,onTabRemove:S,onTabContextMenu:k},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(u,a)=>{var l;return e.openBlock(),e.createBlock(e.unref(g.VftTabPane),{key:e.unref(s.getRouterKeyPath)(u)+a,closable:!((l=u.meta)!=null&&l.affix),index:a,name:e.unref(s.getRouterKeyPath)(u)},{label:e.withCtx(()=>{var c;return[e.createVNode(A.default,{contextMenuStyle:E,affixNum:(c=e.unref(i))==null?void 0:c.length,ref_for:!0,ref:e.unref(P)(a),tabItem:u},null,8,["affixNum","tabItem"])]}),_:2},1032,["closable","index","name"])}),128))]),_:1},8,["fixTabCount","fixExtraScrollWidth","model-value"])],6))}});exports.default=z;
@@ -76,13 +76,13 @@ export declare const VftPopconfirm: import("vft/es/utils").SFCWithInstall<{
76
76
  $emit: ((event: "cancel", val: MouseEvent) => void) & ((event: "confirm", val: MouseEvent) => void);
77
77
  $el: any;
78
78
  $options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
79
+ title: {
80
+ type: import("vue").PropType<string>;
81
+ };
79
82
  width: {
80
83
  type: import("vue").PropType<string | number>;
81
84
  default: number;
82
85
  };
83
- title: {
84
- type: import("vue").PropType<string>;
85
- };
86
86
  hideAfter: {
87
87
  type: import("vue").PropType<number>;
88
88
  default: number;
@@ -156,13 +156,13 @@ export declare const VftPopconfirm: import("vft/es/utils").SFCWithInstall<{
156
156
  $nextTick: typeof import("vue").nextTick;
157
157
  $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R) => any : (...args: any) => any, options?: import("vue").WatchOptions<boolean> | undefined): import("vue").WatchStopHandle;
158
158
  } & Readonly<import("vue").ExtractPropTypes<{
159
+ title: {
160
+ type: import("vue").PropType<string>;
161
+ };
159
162
  width: {
160
163
  type: import("vue").PropType<string | number>;
161
164
  default: number;
162
165
  };
163
- title: {
164
- type: import("vue").PropType<string>;
165
- };
166
166
  hideAfter: {
167
167
  type: import("vue").PropType<number>;
168
168
  default: number;
@@ -208,13 +208,13 @@ export declare const VftPopconfirm: import("vft/es/utils").SFCWithInstall<{
208
208
  __isTeleport?: undefined;
209
209
  __isSuspense?: undefined;
210
210
  } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
211
+ title: {
212
+ type: import("vue").PropType<string>;
213
+ };
211
214
  width: {
212
215
  type: import("vue").PropType<string | number>;
213
216
  default: number;
214
217
  };
215
- title: {
216
- type: import("vue").PropType<string>;
217
- };
218
218
  hideAfter: {
219
219
  type: import("vue").PropType<number>;
220
220
  default: number;
@@ -1,13 +1,13 @@
1
1
  import { type ButtonType } from 'vft/es/components/button';
2
2
  import { type IconProps } from 'vft/es/components/icon';
3
3
  declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
4
+ title: {
5
+ type: import("vue").PropType<string>;
6
+ };
4
7
  width: {
5
8
  type: import("vue").PropType<string | number>;
6
9
  default: number;
7
10
  };
8
- title: {
9
- type: import("vue").PropType<string>;
10
- };
11
11
  hideAfter: {
12
12
  type: import("vue").PropType<number>;
13
13
  default: number;
@@ -49,13 +49,13 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
49
49
  confirm: (val: MouseEvent) => void;
50
50
  cancel: (val: MouseEvent) => void;
51
51
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
52
+ title: {
53
+ type: import("vue").PropType<string>;
54
+ };
52
55
  width: {
53
56
  type: import("vue").PropType<string | number>;
54
57
  default: number;
55
58
  };
56
- title: {
57
- type: import("vue").PropType<string>;
58
- };
59
59
  hideAfter: {
60
60
  type: import("vue").PropType<number>;
61
61
  default: number;
@@ -3,10 +3,10 @@ export declare const VftPopover: import("vft/es/utils").SFCWithInstall<{
3
3
  $: import("vue").ComponentInternalInstance;
4
4
  $data: {};
5
5
  $props: {
6
- readonly width?: string | number | undefined;
7
6
  style?: unknown;
8
7
  readonly title?: string | undefined;
9
8
  readonly content?: string | undefined;
9
+ readonly width?: string | number | undefined;
10
10
  readonly offset?: number | undefined;
11
11
  readonly transition?: string | undefined;
12
12
  key?: string | number | symbol | undefined;
@@ -16,7 +16,6 @@ export declare const VftPopover: import("vft/es/utils").SFCWithInstall<{
16
16
  readonly hideAfter?: number | undefined;
17
17
  readonly placement?: import("@popperjs/core").Placement | undefined;
18
18
  readonly effect?: "light" | "dark" | undefined;
19
- readonly visible?: boolean | undefined;
20
19
  readonly disabled?: boolean | undefined;
21
20
  readonly trigger?: import("..").TooltipTriggerType | undefined;
22
21
  ref_for?: boolean | undefined;
@@ -59,6 +58,7 @@ export declare const VftPopover: import("vft/es/utils").SFCWithInstall<{
59
58
  }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
60
59
  [key: string]: any;
61
60
  }>) => void)[] | undefined;
61
+ readonly visible?: boolean | undefined;
62
62
  readonly tabindex?: number | undefined;
63
63
  readonly popperOptions?: Partial<import("@popperjs/core").Options> | undefined;
64
64
  readonly enterable?: boolean | undefined;
@@ -46,11 +46,11 @@ export declare const usePopperContent: (props: PopperContentProps) => {
46
46
  popperEscapeOffsets: import("@popperjs/core").SideObject;
47
47
  } | undefined;
48
48
  offset?: {
49
- top?: import("@popperjs/core").Offsets | undefined;
50
- bottom?: import("@popperjs/core").Offsets | undefined;
49
+ auto?: import("@popperjs/core").Offsets | undefined;
51
50
  left?: import("@popperjs/core").Offsets | undefined;
52
51
  right?: import("@popperjs/core").Offsets | undefined;
53
- auto?: import("@popperjs/core").Offsets | undefined;
52
+ bottom?: import("@popperjs/core").Offsets | undefined;
53
+ top?: import("@popperjs/core").Offsets | undefined;
54
54
  "auto-start"?: import("@popperjs/core").Offsets | undefined;
55
55
  "auto-end"?: import("@popperjs/core").Offsets | undefined;
56
56
  "top-start"?: import("@popperjs/core").Offsets | undefined;
@@ -89,9 +89,9 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
89
89
  */
90
90
  contentStyle: import("vue").ComputedRef<StyleValue[]>;
91
91
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
92
+ close: (...args: any[]) => void;
92
93
  blur: (...args: any[]) => void;
93
94
  focus: (...args: any[]) => void;
94
- close: (...args: any[]) => void;
95
95
  mouseenter: (...args: any[]) => void;
96
96
  mouseleave: (...args: any[]) => void;
97
97
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
@@ -9,9 +9,9 @@ export declare const VftPopper: import("vft/es/utils").SFCWithInstall<{
9
9
  $props: {
10
10
  style?: unknown;
11
11
  key?: string | number | symbol | undefined;
12
- readonly role?: "dialog" | "menu" | "grid" | "listbox" | "tooltip" | "group" | "navigation" | "tree" | undefined;
13
12
  ref?: import("vue").VNodeRef | undefined;
14
13
  class?: unknown;
14
+ readonly role?: "dialog" | "menu" | "grid" | "group" | "listbox" | "tooltip" | "navigation" | "tree" | undefined;
15
15
  ref_for?: boolean | undefined;
16
16
  ref_key?: string | undefined;
17
17
  onVnodeBeforeMount?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
@@ -68,7 +68,7 @@ export declare const VftPopper: import("vft/es/utils").SFCWithInstall<{
68
68
  $el: any;
69
69
  $options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
70
70
  role: {
71
- type: import("vue").PropType<"dialog" | "menu" | "grid" | "listbox" | "tooltip" | "group" | "navigation" | "tree">;
71
+ type: import("vue").PropType<"dialog" | "menu" | "grid" | "group" | "listbox" | "tooltip" | "navigation" | "tree">;
72
72
  };
73
73
  }>>, {
74
74
  triggerRef: import("vue").Ref<import("./constants").Measurable | undefined>;
@@ -98,7 +98,7 @@ export declare const VftPopper: import("vft/es/utils").SFCWithInstall<{
98
98
  $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R) => any : (...args: any) => any, options?: import("vue").WatchOptions<boolean> | undefined): import("vue").WatchStopHandle;
99
99
  } & Readonly<import("vue").ExtractPropTypes<{
100
100
  role: {
101
- type: import("vue").PropType<"dialog" | "menu" | "grid" | "listbox" | "tooltip" | "group" | "navigation" | "tree">;
101
+ type: import("vue").PropType<"dialog" | "menu" | "grid" | "group" | "listbox" | "tooltip" | "navigation" | "tree">;
102
102
  };
103
103
  }>> & import("vue").ShallowUnwrapRef<{
104
104
  triggerRef: import("vue").Ref<import("./constants").Measurable | undefined>;
@@ -112,7 +112,7 @@ export declare const VftPopper: import("vft/es/utils").SFCWithInstall<{
112
112
  __isSuspense?: undefined;
113
113
  } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
114
114
  role: {
115
- type: import("vue").PropType<"dialog" | "menu" | "grid" | "listbox" | "tooltip" | "group" | "navigation" | "tree">;
115
+ type: import("vue").PropType<"dialog" | "menu" | "grid" | "group" | "listbox" | "tooltip" | "navigation" | "tree">;
116
116
  };
117
117
  }>>, {
118
118
  triggerRef: import("vue").Ref<import("./constants").Measurable | undefined>;
@@ -1,7 +1,7 @@
1
1
  import type { Instance as PopperInstance } from '@popperjs/core';
2
2
  declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
3
3
  role: {
4
- type: import("vue").PropType<"dialog" | "menu" | "grid" | "listbox" | "tooltip" | "group" | "navigation" | "tree">;
4
+ type: import("vue").PropType<"dialog" | "menu" | "grid" | "group" | "listbox" | "tooltip" | "navigation" | "tree">;
5
5
  };
6
6
  }, {
7
7
  triggerRef: import("vue").Ref<import("./constants").Measurable | undefined>;
@@ -11,7 +11,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
11
11
  role: import("vue").ComputedRef<string>;
12
12
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
13
13
  role: {
14
- type: import("vue").PropType<"dialog" | "menu" | "grid" | "listbox" | "tooltip" | "group" | "navigation" | "tree">;
14
+ type: import("vue").PropType<"dialog" | "menu" | "grid" | "group" | "listbox" | "tooltip" | "navigation" | "tree">;
15
15
  };
16
16
  }>>, {}, {}>, {
17
17
  default?(_: {}): any;
@@ -4,9 +4,9 @@ export declare const VftProgress: import("vft/es/utils").SFCWithInstall<{
4
4
  $: import("vue").ComponentInternalInstance;
5
5
  $data: {};
6
6
  $props: {
7
- readonly width?: number | undefined;
8
7
  style?: unknown;
9
8
  readonly color?: string | import("./types").ProgressFn | import("./types").ProgressColor[] | undefined;
9
+ readonly width?: number | undefined;
10
10
  readonly strokeLinecap?: "round" | "butt" | "square" | undefined;
11
11
  readonly strokeWidth?: number | undefined;
12
12
  key?: string | number | symbol | undefined;