vft 0.0.482 → 0.0.485

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 (46) hide show
  1. package/dist/index.css +1 -1
  2. package/es/components/carousel/use-carousel.js +1 -1
  3. package/es/components/horizontal-menu/horizontal-menu.vue.d.ts +20 -4
  4. package/es/components/horizontal-menu/horizontal-menu.vue2.js +29 -29
  5. package/es/components/horizontal-menu/index.d.ts +20 -4
  6. package/es/components/input/input.vue2.js +4 -4
  7. package/es/components/input-tag/composables/use-input-tag.js +1 -1
  8. package/es/components/menu/index.d.ts +28 -7
  9. package/es/components/menu/menu-item-group.vue.d.ts +2 -4
  10. package/es/components/menu/menu-item.vue.d.ts +1 -17
  11. package/es/components/menu/menu.vue.d.ts +3 -28
  12. package/es/components/menu/menu.vue2.js +81 -76
  13. package/es/components/menu/sub-menu.vue.d.ts +1 -19
  14. package/es/components/menu/types.d.ts +64 -0
  15. package/es/components/side-menu/index.d.ts +55 -4
  16. package/es/components/side-menu/side-menu.vue.d.ts +20 -3
  17. package/es/components/side-menu/side-menu.vue2.js +166 -139
  18. package/es/components/side-menu/types.d.ts +13 -2
  19. package/es/components/super-form/super-form-action.vue2.js +55 -55
  20. package/es/components/super-form/super-form-item.vue2.js +1 -1
  21. package/es/package.json.d.ts +1 -1
  22. package/es/package.json.js +1 -1
  23. package/es/utils/vue/vnode.js +1 -1
  24. package/lib/components/horizontal-menu/horizontal-menu.vue.d.ts +20 -4
  25. package/lib/components/horizontal-menu/horizontal-menu.vue2.cjs +1 -1
  26. package/lib/components/horizontal-menu/index.d.ts +20 -4
  27. package/lib/components/input/input.vue2.cjs +1 -1
  28. package/lib/components/menu/index.d.ts +28 -7
  29. package/lib/components/menu/menu-item-group.vue.d.ts +2 -4
  30. package/lib/components/menu/menu-item.vue.d.ts +1 -17
  31. package/lib/components/menu/menu.vue.d.ts +3 -28
  32. package/lib/components/menu/menu.vue2.cjs +1 -1
  33. package/lib/components/menu/sub-menu.vue.d.ts +1 -19
  34. package/lib/components/menu/types.d.ts +64 -0
  35. package/lib/components/side-menu/index.d.ts +55 -4
  36. package/lib/components/side-menu/side-menu.vue.d.ts +20 -3
  37. package/lib/components/side-menu/side-menu.vue2.cjs +1 -1
  38. package/lib/components/side-menu/types.d.ts +13 -2
  39. package/lib/components/super-form/super-form-action.vue2.cjs +1 -1
  40. package/lib/package.json.cjs +1 -1
  41. package/lib/package.json.d.ts +1 -1
  42. package/package.json +5 -5
  43. package/theme-style/index.css +1 -1
  44. package/theme-style/src/menu.scss +54 -0
  45. package/theme-style/vft-menu.css +1 -1
  46. package/web-types.json +1 -1
@@ -1,5 +1,7 @@
1
+ import type { MenuItemClicked } from 'vft/es/components/menu';
1
2
  import type { SortableEvent } from 'sortablejs';
2
- import type { MenuSelectEventData, SideMenuProps } from './types';
3
+ import type { NavigationFailure } from 'vue-router';
4
+ import type { SideMenuProps } from './types';
3
5
  declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<SideMenuProps>, {
4
6
  isFixedLeft: boolean;
5
7
  autoScrollActiveDom: boolean;
@@ -16,6 +18,11 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
16
18
  useRouterJump: boolean;
17
19
  disableSubMenuAction: boolean;
18
20
  defaultOpenedsLevel: boolean;
21
+ enableScroll: boolean;
22
+ scrollThreshold: number;
23
+ scrollMaxHeight: number;
24
+ collapseTransition: boolean;
25
+ collapseType: undefined;
19
26
  }>>, {
20
27
  sideRef: import("vue").Ref<any, any>;
21
28
  jumpActiveDom: ({ activeDom, offset, delay }?: {
@@ -29,7 +36,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
29
36
  "update:width": (val: string | number) => void;
30
37
  dragEnd: (oldIndex: SortableEvent, newIndex: SortableEvent) => void;
31
38
  dragWidthEnd: () => void;
32
- select: (val: MenuSelectEventData) => void;
39
+ select: (menuItem: MenuItemClicked, routerResult?: Promise<void | NavigationFailure> | undefined) => void;
33
40
  subMenuClick: (val: any) => void;
34
41
  subMenuOpenClick: (val: any) => void;
35
42
  menuItemMouseenter: (val: any) => void;
@@ -50,8 +57,13 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
50
57
  useRouterJump: boolean;
51
58
  disableSubMenuAction: boolean;
52
59
  defaultOpenedsLevel: boolean;
60
+ enableScroll: boolean;
61
+ scrollThreshold: number;
62
+ scrollMaxHeight: number;
63
+ collapseTransition: boolean;
64
+ collapseType: undefined;
53
65
  }>>> & Readonly<{
54
- onSelect?: ((val: MenuSelectEventData) => any) | undefined;
66
+ onSelect?: ((menuItem: MenuItemClicked, routerResult?: Promise<void | NavigationFailure> | undefined) => any) | undefined;
55
67
  "onUpdate:collapse"?: ((val: boolean) => any) | undefined;
56
68
  "onUpdate:width"?: ((val: string | number) => any) | undefined;
57
69
  onDragEnd?: ((oldIndex: SortableEvent, newIndex: SortableEvent) => any) | undefined;
@@ -65,7 +77,9 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
65
77
  width: string | number;
66
78
  collapse: boolean;
67
79
  uniqueOpened: boolean;
80
+ collapseTransition: boolean;
68
81
  disableSubMenuAction: boolean;
82
+ collapseType: "menu-title";
69
83
  isFixedLeft: boolean;
70
84
  collapseWidth: string | number;
71
85
  menuTopBottomHeight: number;
@@ -79,6 +93,9 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
79
93
  openMenuCollapse: boolean;
80
94
  disabledJudgeTurnOver: boolean;
81
95
  defaultOpenedsLevel: number | boolean;
96
+ enableScroll: boolean;
97
+ scrollThreshold: number;
98
+ scrollMaxHeight: string | number;
82
99
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
83
100
  export default _default;
84
101
  type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("vue"),R=require("@vft/router"),oe=require("@vft/use/sortable"),g=require("@vft/utils");require("@vueuse/core");const I=require("../../utils/helper.cjs");require("lodash-es");require("../form/index.cjs");const ue=require("../icon/index.cjs"),b=require("../menu/index.cjs"),ae=require("../../hooks/use-namespace/index.cjs");require("../../hooks/use-model-toggle/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");const se=require("./use-drag-line.cjs");function ie(h){return typeof h=="function"||Object.prototype.toString.call(h)==="[object Object]"&&!n.isVNode(h)}const de=n.defineComponent({name:"vft-side-menu"}),re=n.defineComponent({...de,props:{isFixedLeft:{type:Boolean,default:!1},menus:{},width:{default:200},height:{default:"100%"},collapseWidth:{default:50},attrMapping:{},menuTopBottomHeight:{default:0},showCollapse:{type:Boolean,default:!1},dragOption:{},dragWidthCfg:{type:[Boolean,Object],default:!1},useRouterJump:{type:Boolean,default:!1},openDisabled:{type:Boolean},autoScrollActiveDom:{type:[Boolean,Number],default:!0},openMenuCollapse:{type:Boolean,default:!0},collapse:{type:Boolean,default:!1},uniqueOpened:{type:Boolean,default:!0},disabledJudgeTurnOver:{type:Boolean,default:!1},defaultActive:{},defaultOpeneds:{},defaultOpenedsLevel:{type:[Number,Boolean],default:!1},disableSubMenuAction:{type:Boolean,default:!1}},emits:["update:collapse","update:width","dragEnd","dragWidthEnd","select","subMenuClick","subMenuOpenClick","menuItemMouseenter","menuItemMouseleave"],setup(h,{expose:W,emit:j}){const t=h,r=j,{defaultActive:L,collapse:f,uniqueOpened:E,defaultOpeneds:J,openMenuCollapse:P,defaultOpenedsLevel:y}=n.toRefs(t),s=ae.useNamespace("side-menu"),c=n.useSlots(),O=n.getCurrentInstance(),C=n.ref(),a=n.computed(()=>({path:"path",children:"children",title:"title",index:"path",icon:"icon",disabled:"disabled",...t.attrMapping})),U=(e,u=1/0)=>{const l=[],o=(i,d=0)=>{d>=u||i.forEach(m=>{m[a.value.children]?.length&&(l.push(m[a.value.index]),o(m[a.value.children],d+1))})};return o(e),l};R.listenerRouteChange(({route:e})=>{!e||e.meta?.hideSide&&!t.useRouterJump||(C.value=e.path)});const $=e=>{const u=e.e;if(t.autoScrollActiveDom&&u){const l=g.isNumber(t.autoScrollActiveDom)?t.autoScrollActiveDom:0,o=u.target;x({activeDom:o,offset:l})}r("subMenuOpenClick",e)},H=e=>{r("subMenuClick",e)},x=({activeDom:e=null,offset:u=0,delay:l=300}={})=>{v.value?.menu&&setTimeout(()=>{const o=e||document.querySelector(".vft-menu-item.is-active")||document.querySelector(".vft-sub-menu.is-active");o&&(v.value.menu.scrollTop=v.value.menu.scrollTop+(o.getBoundingClientRect().top-v.value.menu.getBoundingClientRect().top)+u)},l)},F=e=>{r("menuItemMouseenter",e)},Z=e=>{r("menuItemMouseleave",e)},_=(e,u)=>{const l=e[a.value.path],o=e[a.value.title],i=e?.[a.value.children],d=e?.[a.value.index],m=e?.[a.value.icon],D=!!e?.[a.value.disabled],T=t.disabledJudgeTurnOver?!D:D,k=d||l||u+o;return i?.length?n.h(b.VftSubMenu,{...e,popperAppendToBody:!0,key:k,index:k,title:o,icon:m,disabled:t.openDisabled&&T,popperClass:s.e("popper")},{default:()=>i?.map((p,ee)=>{const S=p[a.value.path],A=p[a.value.index],te=p[a.value.icon],ne=p[a.value.title],V=!!p[a.value.disabled],le=t.disabledJudgeTurnOver?!V:V;return p?.[a.value.children]?.length?_(p,ee):n.h(b.VftMenuItem,{...p,key:A||S,index:A||S,route:S,icon:te,title:ne,disabled:t.openDisabled&&le},c.menuItem?()=>c.menuItem?.({item:p}):"")})}):n.h(b.VftMenuItem,{...e,key:d||l,index:d||l,title:o,route:l,icon:m,disabled:t.openDisabled&&T,onMouseenter:()=>F(e),onMouseleave:()=>Z(e)},c.menuItem?()=>c.menuItem?.({item:e,index:u}):"")},v=n.ref(),z=n.computed(()=>({...t.collapseWidth===0&&f.value?{width:0}:{},height:`calc(100% - ${t.menuTopBottomHeight}px)`})),q=O.appContext.config.globalProperties.$router;async function Y(e){if(t.useRouterJump){const{go:u}=R.useRouterHelper(q),l=e.route;let o=e.route;e.indexPath.some(d=>g.isUrl(d))&&(o=e.indexPath.slice(-2).join("/"));const i=q.getRoutes().filter(d=>d.path===o)?.[0]?.meta?.linkTarget;u(i?{url:l,winOpenOpt:{target:i}}:l)}r("select",e)}const M=n.ref(),N=n.ref(),B=n.ref(),G=n.computed(()=>({...t.collapseWidth===0&&f.value?{borderRight:"none"}:{},width:I.addUnit(t.width),height:t.height}));n.watch(()=>f.value,e=>{K.value||(e?r("update:width",t.collapseWidth):r("update:width",B.value||t.width),B.value=t.width)});const{isDraging:K}=se.useDragLine(M,N,O),Q=n.computed(()=>({left:I.addUnit(t.width)})),X=n.computed(()=>[s.b(),t.isFixedLeft?s.m("fixed"):""]),w=n.ref([]);return n.onMounted(()=>{n.nextTick(()=>{if(t.dragOption?.dragClassName){const e=document.querySelectorAll(`.${s.e(t.dragOption?.dragClassName)}`)?.[0],{initSortable:u}=oe.useSortable(e,{draggable:".vft-menu-item",onEnd:l=>{const{oldIndex:o,newIndex:i}=l;g.isNullOrUndefined(o)||g.isNullOrUndefined(i)||o===i||r("dragEnd",o,i)},...t.dragOption});u()}})}),W({sideRef:M,jumpActiveDom:x,menuRef:v}),()=>{let e;return y.value&&(w.value=U(t.menus,g.isNumber(y.value)?y.value:1/0)),n.createVNode("div",{ref:M,class:X.value,style:G.value},[c.top?n.createVNode("div",{class:s.e("top")},[c.top()]):null,n.h(n.createVNode(b.VftMenu,{ref:v,onSelect:Y,onOpen:$,onSubMenuClick:H,defaultActive:L?.value||C.value,defaultOpeneds:J?.value||w.value,disableSubMenuAction:t.disableSubMenuAction,class:[s.e("con"),t.dragOption?.dragClassName?s.e(t.dragOption?.dragClassName):""],style:z.value,collapse:P.value?f.value:!1,uniqueOpened:E.value,collapseTransition:!1},ie(e=t.menus.map((u,l)=>_(u,l)))?e:{default:()=>[e]})),c.bottom?n.createVNode("div",{class:s.e("bottom")},[c.bottom()]):t.showCollapse?n.createVNode("div",{onClick:()=>r("update:collapse",!f.value),class:[s.e("bottom"),s.e("collapse")]},[n.createVNode(ue.VftIcon,{style:{transform:f.value?"rotateY(180deg)":""},size:20,icon:"icon-sidebar-collapse"},null)]):null,c.default?.(),t.dragWidthCfg?n.createVNode("div",{ref:N,style:Q.value,class:s.e("drag-bar")},null):null])}}});exports.default=re;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const l=require("vue"),ue=require("../icon/index.cjs"),g=require("../menu/index.cjs");require("@vueuse/core");const b=require("@vft/utils"),C=require("../../utils/helper.cjs");require("lodash-es");require("../form/index.cjs");const R=require("@vft/router"),se=require("@vft/use/sortable"),ie=require("../../hooks/use-namespace/index.cjs");require("../../hooks/use-model-toggle/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");const re=require("./use-drag-line.cjs");function de(m){return typeof m=="function"||Object.prototype.toString.call(m)==="[object Object]"&&!l.isVNode(m)}const ce=l.defineComponent({name:"vft-side-menu"}),pe=l.defineComponent({...ce,props:{isFixedLeft:{type:Boolean,default:!1},menus:{},width:{default:200},height:{default:"100%"},collapseWidth:{default:50},attrMapping:{},menuTopBottomHeight:{default:0},showCollapse:{type:Boolean,default:!1},dragOption:{},dragWidthCfg:{type:[Boolean,Object],default:!1},useRouterJump:{type:Boolean,default:!1},openDisabled:{type:Boolean},autoScrollActiveDom:{type:[Boolean,Number],default:!0},openMenuCollapse:{type:Boolean,default:!0},collapse:{type:Boolean,default:!1},uniqueOpened:{type:Boolean,default:!0},disabledJudgeTurnOver:{type:Boolean,default:!1},defaultActive:{},defaultOpeneds:{},defaultOpenedsLevel:{type:[Number,Boolean],default:!1},disableSubMenuAction:{type:Boolean,default:!1},enableScroll:{type:Boolean,default:!0},scrollThreshold:{default:10},scrollMaxHeight:{default:500},collapseTransition:{type:Boolean,default:!1},collapseType:{default:void 0},tooltipCfg:{}},emits:["update:collapse","update:width","dragEnd","dragWidthEnd","select","subMenuClick","subMenuOpenClick","menuItemMouseenter","menuItemMouseleave"],setup(m,{expose:W,emit:j}){const t=m,d=j,{defaultActive:L,collapse:h,uniqueOpened:E,defaultOpeneds:H,openMenuCollapse:J,defaultOpenedsLevel:y}=l.toRefs(t),i=ie.useNamespace("side-menu"),c=l.useSlots(),O=l.getCurrentInstance(),x=l.ref(),u=l.computed(()=>({path:"path",children:"children",title:"title",index:"path",icon:"icon",disabled:"disabled",...t.attrMapping})),U=(e,a=1/0)=>{const n=[],o=(s,p=0)=>{p>=a||s.forEach(r=>{r[u.value.children]?.length&&(n.push(r[u.value.index]),o(r[u.value.children],p+1))})};return o(e),n};R.listenerRouteChange(({route:e})=>{!e||e.meta?.hideSide&&!t.useRouterJump||(x.value=e.path)});const P=e=>{const a=e.e;if(t.autoScrollActiveDom&&a){const n=b.isNumber(t.autoScrollActiveDom)?t.autoScrollActiveDom:0,o=a.target;T({activeDom:o,offset:n})}d("subMenuOpenClick",e)},$=e=>{d("subMenuClick",e)},T=({activeDom:e=null,offset:a=0,delay:n=300}={})=>{v.value?.menu&&setTimeout(()=>{const o=e||document.querySelector(".vft-menu-item.is-active")||document.querySelector(".vft-sub-menu.is-active");o&&(v.value.menu.scrollTop=v.value.menu.scrollTop+(o.getBoundingClientRect().top-v.value.menu.getBoundingClientRect().top)+a)},n)},F=e=>{d("menuItemMouseenter",e)},Y=e=>{d("menuItemMouseleave",e)},Z=(e,a)=>!t.enableScroll||!e?e:h.value&&a>t.scrollThreshold?l.h(g.VftMenuItemGroup,{style:{maxHeight:C.addUnit(t.scrollMaxHeight),overflowY:"auto"}},()=>e):e,_=(e,a)=>{const n=e[u.value.path],o=e[u.value.title],s=e?.[u.value.children],p=e?.[u.value.index],r=e?.[u.value.icon],D=!!e?.[u.value.disabled],k=t.disabledJudgeTurnOver?!D:D,V=p||n||a+o;return s?.length?l.h(g.VftSubMenu,{...e,popperAppendToBody:!0,key:V,index:V,title:o,icon:r,disabled:t.openDisabled&&k,popperClass:i.e("popper"),toolTipCfg:{placement:"right","fallback-placements":["right-start","right"],...t.tooltipCfg}},{default:()=>{const te=s?.map((f,le)=>{const S=f[u.value.path],A=f[u.value.index],ne=f[u.value.icon],oe=f[u.value.title],I=!!f[u.value.disabled],ae=t.disabledJudgeTurnOver?!I:I;return f?.[u.value.children]?.length?_(f,le):l.h(g.VftMenuItem,{...f,key:A||S,index:A||S,route:S,icon:ne,title:oe,disabled:t.openDisabled&&ae},c.menuItem?()=>c.menuItem?.({item:f}):"")});return Z(te,s?.length||0)}}):l.h(g.VftMenuItem,{...e,key:p||n,index:p||n,title:o,route:n,icon:r,disabled:t.openDisabled&&k,onMouseenter:()=>F(e),onMouseleave:()=>Y(e)},c.menuItem?()=>c.menuItem?.({item:e,index:a}):"")},v=l.ref(),z=l.computed(()=>({...t.collapseWidth===0&&h.value?{width:0}:{},height:`calc(100% - ${t.menuTopBottomHeight}px)`})),q=O.appContext.config.globalProperties.$router;function G(e,a){if(t.useRouterJump){const{go:n}=R.useRouterHelper(q),o=e.route;let s=e.route;e.indexPath.some(r=>b.isUrl(r))&&(s=e.indexPath.slice(-2).join("/"));const p=q.getRoutes().filter(r=>r.path===s)?.[0]?.meta?.linkTarget;n(p?{url:o,winOpenOpt:{target:p}}:o)}d("select",e,a)}const M=l.ref(),B=l.ref(),N=l.ref(),K=l.computed(()=>({...t.collapseWidth===0&&h.value?{borderRight:"none"}:{},width:C.addUnit(t.width),height:t.height}));l.watch(()=>h.value,e=>{Q.value||(e?d("update:width",t.collapseWidth):d("update:width",N.value||t.width),N.value=t.width)});const{isDraging:Q}=re.useDragLine(M,B,O),X=l.computed(()=>({left:C.addUnit(t.width)})),ee=l.computed(()=>[i.b(),t.isFixedLeft?i.m("fixed"):""]),w=l.ref([]);return l.onMounted(()=>{l.nextTick(()=>{if(t.dragOption?.dragClassName){const e=document.querySelectorAll(`.${i.e(t.dragOption?.dragClassName)}`)?.[0],{initSortable:a}=se.useSortable(e,{draggable:".vft-menu-item",onEnd:n=>{const{oldIndex:o,newIndex:s}=n;b.isNullOrUndefined(o)||b.isNullOrUndefined(s)||o===s||d("dragEnd",o,s)},...t.dragOption});a()}})}),W({sideRef:M,jumpActiveDom:T,menuRef:v}),()=>{let e;return y.value&&(w.value=U(t.menus,b.isNumber(y.value)?y.value:1/0)),l.createVNode("div",{ref:M,class:ee.value,style:K.value},[c.top?l.createVNode("div",{class:i.e("top")},[c.top()]):null,l.h(l.createVNode(g.VftMenu,{ref:v,onSelect:G,onOpen:P,onSubMenuClick:$,defaultActive:L?.value||x.value,defaultOpeneds:H?.value||w.value,disableSubMenuAction:t.disableSubMenuAction,class:[i.e("con"),t.dragOption?.dragClassName?i.e(t.dragOption?.dragClassName):""],style:z.value,collapse:J.value?h.value:!1,uniqueOpened:E.value,collapseTransition:t.collapseTransition,collapseType:t.collapseType},de(e=t.menus.map((a,n)=>_(a,n)))?e:{default:()=>[e]})),c.bottom?l.createVNode("div",{class:i.e("bottom")},[c.bottom()]):t.showCollapse?l.createVNode("div",{onClick:()=>d("update:collapse",!h.value),class:[i.e("bottom"),i.e("collapse")]},[l.createVNode(ue.VftIcon,{style:{transform:h.value?"rotateY(180deg)":""},size:20,icon:"icon-sidebar-collapse"},null)]):null,c.default?.(),t.dragWidthCfg?l.createVNode("div",{ref:B,style:X.value,class:i.e("drag-bar")},null):null])}}});exports.default=pe;
@@ -1,5 +1,8 @@
1
+ import type { MenuItemClicked } from 'vft/es/components/menu';
2
+ import type { ToolTipProps } from 'vft/es/components/tooltip';
1
3
  import type Sortable from 'sortablejs';
2
4
  import type { SortableEvent } from 'sortablejs';
5
+ import type { NavigationFailure } from 'vue-router';
3
6
  /** 菜单项类型 */
4
7
  export type MenuType = {
5
8
  /** 子菜单列表 */
@@ -72,11 +75,19 @@ export interface SideMenuProps {
72
75
  /** 默认选中的菜单索引 */
73
76
  defaultActive?: string;
74
77
  /** 默认展开的子菜单索引数组 */
75
- defaultOpeneds?: Array<string | number>;
78
+ defaultOpeneds?: Array<string>;
76
79
  /** 默认展开的层级深度 */
77
80
  defaultOpenedsLevel?: number | boolean;
78
81
  /** 禁用子菜单的展开收缩行为 */
79
82
  disableSubMenuAction?: boolean;
83
+ enableScroll?: boolean;
84
+ scrollThreshold?: number;
85
+ scrollMaxHeight?: string | number;
86
+ /** 是否开启折叠动画 */
87
+ collapseTransition?: boolean;
88
+ /** 收缩类型 */
89
+ collapseType?: 'menu-title';
90
+ tooltipCfg?: Partial<ToolTipProps>;
80
91
  }
81
92
  /** 菜单选中事件参数 */
82
93
  export interface MenuSelectEventData {
@@ -96,7 +107,7 @@ export interface SideMenuEmits {
96
107
  /** 拖拽宽度结束事件 */
97
108
  (e: 'dragWidthEnd'): void;
98
109
  /** 菜单选中事件 */
99
- (e: 'select', val: MenuSelectEventData): void;
110
+ (e: 'select', menuItem: MenuItemClicked, routerResult?: Promise<void | NavigationFailure>): void;
100
111
  /** 子菜单点击事件 */
101
112
  (e: 'subMenuClick', val: any): void;
102
113
  /** 子菜单展开点击事件 */
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),i=require("../button/index.cjs"),f=require("../form/index.cjs"),v=require("../row/index.cjs");require("@vueuse/core");require("@vft/utils");require("../config-provider/hooks/use-global-config.cjs");require("lodash-es");const C=require("../../hooks/use-namespace/index.cjs");require("../../hooks/use-model-toggle/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");const b=require("./use/use-form-context.cjs"),k=e.defineComponent({__name:"super-form-action",props:{showResetButton:{type:Boolean},showSubmitButton:{type:Boolean},showCommonButton:{type:Boolean},resetButtonOptions:{},submitButtonOptions:{},commonButtonOptions:{},actionRowOptions:{},submitResetReverse:{type:Boolean}},setup(t){const r=C.useNamespace("form-action"),{resetAction:m,submitAction:B,commonAction:c}=b.useFormContext(),p=e.computed(()=>({justify:"end",...t.actionRowOptions})),d=e.computed(()=>Object.assign({btnText:"重置"},t.resetButtonOptions)),a=e.computed(()=>Object.assign({btnText:"确认"},t.submitButtonOptions)),n=e.computed(()=>Object.assign({btnText:"取消"},t.commonButtonOptions)),l=o=>({type:o?"warning":"primary",options:o?d.value:a.value,action:o?m:B,className:o?r.e("reset"):r.e("submit"),show:o?t.showResetButton:t.showSubmitButton}),s=e.computed(()=>l(!t.submitResetReverse)),u=e.computed(()=>l(t.submitResetReverse));return(o,y)=>(e.openBlock(),e.createBlock(e.unref(v.VftRow),e.normalizeProps(e.guardReactiveProps(p.value)),{default:e.withCtx(()=>[e.createVNode(e.unref(f.VftFormItem),{class:e.normalizeClass([{"submit-block":a.value.block},e.unref(r).b()])},{default:e.withCtx(()=>[t.showCommonButton&&!n.value.isBehind?(e.openBlock(),e.createBlock(e.unref(i.VftButton),e.mergeProps({key:0},n.value,{class:e.unref(r).e("common"),onClick:e.unref(c)}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(n.value.btnText),1)]),_:1},16,["class","onClick"])):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"resetBefore"),s.value.show?(e.openBlock(),e.createBlock(e.unref(i.VftButton),e.mergeProps({key:1,type:s.value.type},s.value.options,{onClick:s.value.action,class:s.value.className}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.value.options.btnText),1)]),_:1},16,["type","onClick","class"])):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"submitBefore"),u.value.show?(e.openBlock(),e.createBlock(e.unref(i.VftButton),e.mergeProps({key:2,type:u.value.type},u.value.options,{onClick:u.value.action,class:u.value.className}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(u.value.options.btnText),1)]),_:1},16,["type","onClick","class"])):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"submitAfter"),t.showCommonButton&&n.value.isBehind?(e.openBlock(),e.createBlock(e.unref(i.VftButton),e.mergeProps({key:3},n.value,{class:e.unref(r).e("common"),onClick:e.unref(c)}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(n.value.btnText),1)]),_:1},16,["class","onClick"])):e.createCommentVNode("",!0)]),_:3},8,["class"])]),_:3},16))}});exports.default=k;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),i=require("../button/index.cjs"),p=require("../form/index.cjs"),C=require("../row/index.cjs");require("@vueuse/core");require("@vft/utils");require("../config-provider/hooks/use-global-config.cjs");require("lodash-es");const v=require("../../hooks/use-namespace/index.cjs");require("../../hooks/use-model-toggle/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");const b=require("./use/use-form-context.cjs"),k=e.defineComponent({__name:"super-form-action",props:{showResetButton:{type:Boolean},showSubmitButton:{type:Boolean},showCommonButton:{type:Boolean},resetButtonOptions:{},submitButtonOptions:{},commonButtonOptions:{},actionRowOptions:{},submitResetReverse:{type:Boolean}},setup(t){const r=v.useNamespace("form-action"),{resetAction:m,submitAction:B,commonAction:a}=b.useFormContext(),d=e.computed(()=>({justify:"end",...t.actionRowOptions})),f=e.computed(()=>Object.assign({btnText:"重置"},t.resetButtonOptions)),c=e.computed(()=>Object.assign({btnText:"确认"},t.submitButtonOptions)),u=e.computed(()=>Object.assign({btnText:"取消"},t.commonButtonOptions)),l=o=>({type:o?"warning":"primary",options:o?f.value:c.value,action:o?m:B,className:o?r.e("reset"):r.e("submit"),show:o?t.showResetButton:t.showSubmitButton}),n=e.computed(()=>l(!t.submitResetReverse)),s=e.computed(()=>l(t.submitResetReverse));return(o,w)=>t.showCommonButton||n.value.show||s.value.show?(e.openBlock(),e.createBlock(e.unref(C.VftRow),e.normalizeProps(e.mergeProps({key:0},d.value)),{default:e.withCtx(()=>[e.createVNode(e.unref(p.VftFormItem),{class:e.normalizeClass([{"submit-block":c.value.block},e.unref(r).b()])},{default:e.withCtx(()=>[t.showCommonButton&&!u.value.isBehind?(e.openBlock(),e.createBlock(e.unref(i.VftButton),e.mergeProps({key:0},u.value,{class:e.unref(r).e("common"),onClick:e.unref(a)}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(u.value.btnText),1)]),_:1},16,["class","onClick"])):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"resetBefore"),n.value.show?(e.openBlock(),e.createBlock(e.unref(i.VftButton),e.mergeProps({key:1,type:n.value.type},n.value.options,{onClick:n.value.action,class:n.value.className}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(n.value.options.btnText),1)]),_:1},16,["type","onClick","class"])):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"submitBefore"),s.value.show?(e.openBlock(),e.createBlock(e.unref(i.VftButton),e.mergeProps({key:2,type:s.value.type},s.value.options,{onClick:s.value.action,class:s.value.className}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.value.options.btnText),1)]),_:1},16,["type","onClick","class"])):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"submitAfter"),t.showCommonButton&&u.value.isBehind?(e.openBlock(),e.createBlock(e.unref(i.VftButton),e.mergeProps({key:3},u.value,{class:e.unref(r).e("common"),onClick:e.unref(a)}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(u.value.btnText),1)]),_:1},16,["class","onClick"])):e.createCommentVNode("",!0)]),_:3},8,["class"])]),_:3},16)):e.createCommentVNode("",!0)}});exports.default=k;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="0.0.482";exports.version=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="0.0.485";exports.version=e;
@@ -1,6 +1,6 @@
1
1
  declare const _default: {
2
2
  "name": "vft",
3
- "version": "0.0.482",
3
+ "version": "0.0.485",
4
4
  "license": "MIT",
5
5
  "main": "lib/index.cjs",
6
6
  "module": "es/index.js",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vft",
3
- "version": "0.0.482",
3
+ "version": "0.0.485",
4
4
  "license": "MIT",
5
5
  "main": "lib/index.cjs",
6
6
  "module": "es/index.js",
@@ -56,12 +56,12 @@
56
56
  "resize-detector": "0.3.0",
57
57
  "sortablejs": "1.15.0",
58
58
  "photoswipe": "5.4.4",
59
- "@vft/use": "0.0.92",
60
- "@vft/utils": "0.0.158",
61
59
  "@vft/router": "0.0.73",
62
- "@vft/directives": "0.0.36",
63
60
  "@vft/store": "0.0.64",
64
- "@vft/constants": "0.0.75"
61
+ "@vft/use": "0.0.92",
62
+ "@vft/constants": "0.0.80",
63
+ "@vft/directives": "0.0.36",
64
+ "@vft/utils": "0.0.158"
65
65
  },
66
66
  "vetur": {
67
67
  "tags": "tags.json",