@soybeanjs/headless 0.15.0-beta.4 → 0.15.1

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 (81) hide show
  1. package/dist/components/autocomplete/autocomplete-root.vue.d.ts +1 -1
  2. package/dist/components/backtop/backtop.vue.d.ts +3 -3
  3. package/dist/components/card/card-root.vue.d.ts +1 -1
  4. package/dist/components/collapsible/collapsible-root.vue.d.ts +2 -2
  5. package/dist/components/color-area/color-area-root.vue.d.ts +1 -1
  6. package/dist/components/color-field/color-field-root.vue.d.ts +3 -3
  7. package/dist/components/color-picker/color-picker-root.vue.d.ts +1 -1
  8. package/dist/components/color-slider/color-slider-root.vue.d.ts +1 -1
  9. package/dist/components/combobox/combobox-compact.vue.d.ts +3 -3
  10. package/dist/components/combobox/combobox-group.js +1 -1
  11. package/dist/components/combobox/combobox-item.js +1 -1
  12. package/dist/components/context-menu/context-menu-checkbox-compact.vue.d.ts +3 -3
  13. package/dist/components/context-menu/context-menu-compact.vue.d.ts +3 -3
  14. package/dist/components/context-menu/context-menu-content.vue.d.ts +2 -2
  15. package/dist/components/context-menu/context-menu-radio-compact.vue.d.ts +3 -3
  16. package/dist/components/context-menu/context-menu-wrapper-compact.vue.d.ts +4 -4
  17. package/dist/components/dialog/dialog-compact.vue.d.ts +6 -6
  18. package/dist/components/dropdown-menu/dropdown-menu-checkbox-compact.vue.d.ts +3 -3
  19. package/dist/components/dropdown-menu/dropdown-menu-compact.vue.d.ts +3 -3
  20. package/dist/components/dropdown-menu/dropdown-menu-content.vue.d.ts +2 -2
  21. package/dist/components/dropdown-menu/dropdown-menu-radio-compact.vue.d.ts +3 -3
  22. package/dist/components/dropdown-menu/dropdown-menu-root.vue.d.ts +2 -2
  23. package/dist/components/dropdown-menu/dropdown-menu-wrapper-compact.vue.d.ts +4 -4
  24. package/dist/components/editable/editable-root.vue.d.ts +1 -1
  25. package/dist/components/hover-card/hover-card-root.vue.d.ts +1 -1
  26. package/dist/components/input-number/input-number-root.vue.d.ts +1 -1
  27. package/dist/components/input-otp/input-otp-compact.vue.d.ts +6 -6
  28. package/dist/components/input-otp/input-otp-root.vue.d.ts +6 -6
  29. package/dist/components/layout/context.d.ts +3 -2
  30. package/dist/components/layout/context.js +1 -1
  31. package/dist/components/layout/index.d.ts +15 -13
  32. package/dist/components/layout/index.js +1 -1
  33. package/dist/components/layout/layout-classic-compact.js +1 -0
  34. package/dist/components/layout/layout-classic-compact.vue.d.ts +30 -0
  35. package/dist/components/layout/layout-classic-placeholder.js +1 -0
  36. package/dist/components/layout/layout-classic-root.js +1 -0
  37. package/dist/components/layout/layout-compact.js +1 -0
  38. package/dist/components/layout/layout-compact.vue.d.ts +26 -0
  39. package/dist/components/layout/layout-footer.js +1 -1
  40. package/dist/components/layout/layout-header.js +1 -1
  41. package/dist/components/layout/layout-root.js +1 -1
  42. package/dist/components/layout/layout-root.vue.d.ts +5 -1
  43. package/dist/components/layout/layout-sidebar.js +1 -1
  44. package/dist/components/layout/layout-tab.js +1 -1
  45. package/dist/components/layout/layout-trigger.js +1 -1
  46. package/dist/components/layout/layout-trigger.vue.d.ts +4 -1
  47. package/dist/components/layout/shared.js +1 -1
  48. package/dist/components/layout/types.d.ts +121 -2
  49. package/dist/components/link/link.vue.d.ts +1 -1
  50. package/dist/components/menu/menu-content.vue.d.ts +2 -2
  51. package/dist/components/menu/menu-option-compact.vue.d.ts +3 -3
  52. package/dist/components/menu/menu-options-compact.vue.d.ts +3 -3
  53. package/dist/components/menu/menu-sub-content.vue.d.ts +2 -2
  54. package/dist/components/menubar/menubar-compact.vue.d.ts +3 -3
  55. package/dist/components/menubar/menubar-content.vue.d.ts +2 -2
  56. package/dist/components/menubar/menubar-sub-content.vue.d.ts +2 -2
  57. package/dist/components/pagination/pagination-root.vue.d.ts +2 -2
  58. package/dist/components/popover/popover-root.vue.d.ts +1 -1
  59. package/dist/components/popper/popper-positioner.vue.d.ts +3 -3
  60. package/dist/components/select/select-compact.vue.d.ts +2 -2
  61. package/dist/components/slider/slider-root.vue.d.ts +2 -2
  62. package/dist/components/splitter/splitter-group.vue.d.ts +1 -1
  63. package/dist/components/stepper/stepper-root.vue.d.ts +1 -1
  64. package/dist/components/tabs/tabs-root.vue.d.ts +1 -1
  65. package/dist/components/toast/index.d.ts +4 -3
  66. package/dist/components/toast/index.js +1 -1
  67. package/dist/components/toast/toast-provider.js +1 -0
  68. package/dist/components/toast/toast-provider.vue.d.ts +18 -0
  69. package/dist/components/toast/toast.js +1 -1
  70. package/dist/components/toast/types.d.ts +2 -1
  71. package/dist/components/toggle/toggle.vue.d.ts +2 -2
  72. package/dist/components/tooltip/tooltip-root.vue.d.ts +1 -1
  73. package/dist/components/tree-menu/tree-menu-root.vue.d.ts +1 -1
  74. package/dist/constants/components.js +1 -1
  75. package/dist/index.d.ts +183 -180
  76. package/dist/index.js +1 -1
  77. package/dist/namespaced/index.d.ts +745 -736
  78. package/dist/namespaced/index.js +1 -1
  79. package/dist/shared/value.d.ts +1 -1
  80. package/package.json +1 -1
  81. package/dist/components/toast/toast-render.js +0 -1
@@ -1,13 +1,15 @@
1
- import { LayoutCollapsible, LayoutContentProps, LayoutFooterProps, LayoutHeaderProps, LayoutMainProps, LayoutMobileProps, LayoutRailProps, LayoutRootEmits, LayoutRootProps, LayoutSide, LayoutSidebarProps, LayoutSidebarState, LayoutTabProps, LayoutTriggerProps, LayoutUi, LayoutUiSlot, LayoutVariant } from "./types.js";
2
- import { _default as _default$6 } from "./layout-root.vue.js";
3
- import { _default as _default$7 } from "./layout-sidebar.vue.js";
4
- import { _default as _default$5 } from "./layout-rail.vue.js";
5
- import { _default as _default$3 } from "./layout-main.vue.js";
6
- import { _default as _default$2 } from "./layout-header.vue.js";
7
- import { _default as _default$8 } from "./layout-tab.vue.js";
8
- import { _default } from "./layout-content.vue.js";
9
- import { _default as _default$1 } from "./layout-footer.vue.js";
10
- import { _default as _default$4 } from "./layout-mobile.vue.js";
11
- import { _default as _default$9 } from "./layout-trigger.vue.js";
12
- import { provideLayoutUi } from "./context.js";
13
- export { type LayoutCollapsible, _default as LayoutContent, type LayoutContentProps, _default$1 as LayoutFooter, type LayoutFooterProps, _default$2 as LayoutHeader, type LayoutHeaderProps, _default$3 as LayoutMain, type LayoutMainProps, _default$4 as LayoutMobile, type LayoutMobileProps, _default$5 as LayoutRail, type LayoutRailProps, _default$6 as LayoutRoot, type LayoutRootEmits, type LayoutRootProps, type LayoutSide, _default$7 as LayoutSidebar, type LayoutSidebarProps, type LayoutSidebarState, _default$8 as LayoutTab, type LayoutTabProps, _default$9 as LayoutTrigger, type LayoutTriggerProps, type LayoutUi, type LayoutUiSlot, type LayoutVariant, provideLayoutUi };
1
+ import { LayoutClassicCompactEmits, LayoutClassicCompactProps, LayoutClassicCompactSlots, LayoutClassicScrollBehavior, LayoutClassicUi, LayoutClassicUiSlot, LayoutCollapsible, LayoutCompactEmits, LayoutCompactProps, LayoutCompactSlots, LayoutContentProps, LayoutFooterProps, LayoutHeaderProps, LayoutMainProps, LayoutMobileProps, LayoutRailProps, LayoutRootEmits, LayoutRootProps, LayoutSide, LayoutSidebarProps, LayoutSidebarState, LayoutTabProps, LayoutTriggerProps, LayoutUi, LayoutUiSlot, LayoutVariant } from "./types.js";
2
+ import { _default as _default$1 } from "./layout-compact.vue.js";
3
+ import { _default } from "./layout-classic-compact.vue.js";
4
+ import { _default as _default$8 } from "./layout-root.vue.js";
5
+ import { _default as _default$9 } from "./layout-sidebar.vue.js";
6
+ import { _default as _default$7 } from "./layout-rail.vue.js";
7
+ import { _default as _default$5 } from "./layout-main.vue.js";
8
+ import { _default as _default$4 } from "./layout-header.vue.js";
9
+ import { _default as _default$10 } from "./layout-tab.vue.js";
10
+ import { _default as _default$2 } from "./layout-content.vue.js";
11
+ import { _default as _default$3 } from "./layout-footer.vue.js";
12
+ import { _default as _default$6 } from "./layout-mobile.vue.js";
13
+ import { _default as _default$11 } from "./layout-trigger.vue.js";
14
+ import { provideLayoutClassicUi, provideLayoutUi } from "./context.js";
15
+ export { _default as LayoutClassicCompact, type LayoutClassicCompactEmits, type LayoutClassicCompactProps, type LayoutClassicCompactSlots, type LayoutClassicScrollBehavior, type LayoutClassicUi, type LayoutClassicUiSlot, type LayoutCollapsible, _default$1 as LayoutCompact, type LayoutCompactEmits, type LayoutCompactProps, type LayoutCompactSlots, _default$2 as LayoutContent, type LayoutContentProps, _default$3 as LayoutFooter, type LayoutFooterProps, _default$4 as LayoutHeader, type LayoutHeaderProps, _default$5 as LayoutMain, type LayoutMainProps, _default$6 as LayoutMobile, type LayoutMobileProps, _default$7 as LayoutRail, type LayoutRailProps, _default$8 as LayoutRoot, type LayoutRootEmits, type LayoutRootProps, type LayoutSide, _default$9 as LayoutSidebar, type LayoutSidebarProps, type LayoutSidebarState, _default$10 as LayoutTab, type LayoutTabProps, _default$11 as LayoutTrigger, type LayoutTriggerProps, type LayoutUi, type LayoutUiSlot, type LayoutVariant, provideLayoutClassicUi, provideLayoutUi };
@@ -1 +1 @@
1
- import{provideLayoutUi as e}from"./context.js";import t from"./layout-root.js";import n from"./layout-mobile.js";import r from"./layout-sidebar.js";import i from"./layout-rail.js";import a from"./layout-main.js";import o from"./layout-header.js";import s from"./layout-tab.js";import c from"./layout-content.js";import l from"./layout-footer.js";import u from"./layout-trigger.js";export{c as LayoutContent,l as LayoutFooter,o as LayoutHeader,a as LayoutMain,n as LayoutMobile,i as LayoutRail,t as LayoutRoot,r as LayoutSidebar,s as LayoutTab,u as LayoutTrigger,e as provideLayoutUi};
1
+ import{provideLayoutClassicUi as e,provideLayoutUi as t}from"./context.js";import n from"./layout-root.js";import r from"./layout-mobile.js";import i from"./layout-sidebar.js";import a from"./layout-rail.js";import o from"./layout-main.js";import s from"./layout-header.js";import c from"./layout-tab.js";import l from"./layout-content.js";import u from"./layout-footer.js";import d from"./layout-compact.js";import f from"./layout-classic-compact.js";import p from"./layout-trigger.js";export{f as LayoutClassicCompact,d as LayoutCompact,l as LayoutContent,u as LayoutFooter,s as LayoutHeader,o as LayoutMain,r as LayoutMobile,a as LayoutRail,n as LayoutRoot,i as LayoutSidebar,c as LayoutTab,p as LayoutTrigger,e as provideLayoutClassicUi,t as provideLayoutUi};
@@ -0,0 +1 @@
1
+ import{useOmitProps as e}from"../../composables/use-props.js";import"../../composables/index.js";import t from"./layout-sidebar.js";import n from"./layout-rail.js";import r from"./layout-main.js";import i from"./layout-header.js";import a from"./layout-tab.js";import o from"./layout-content.js";import s from"./layout-footer.js";import c from"./layout-classic-root.js";import l from"./layout-classic-placeholder.js";import{computed as u,createBlock as d,createCommentVNode as f,createVNode as p,defineComponent as m,guardReactiveProps as h,mergeProps as g,normalizeProps as _,openBlock as v,renderSlot as y,unref as b,useId as x,withCtx as S}from"vue";const C=m({name:`LayoutClassicCompact`,__name:`layout-classic-compact`,props:{orientation:{default:`vertical`},scrollBehavior:{},scrollId:{},baseZIndex:{},fixedTop:{type:Boolean,default:!0},fullContent:{type:Boolean},sidebarVisible:{type:Boolean,default:!0},headerVisible:{type:Boolean,default:!0},tabVisible:{type:Boolean,default:!0},footerVisible:{type:Boolean,default:!0},fixedFooter:{type:Boolean},stretchFooter:{type:Boolean,default:!0},open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:!0},side:{},sidebarWidth:{},collapsedSidebarWidth:{},isMobile:{type:Boolean},mobileSidebarWidth:{},headerHeight:{},tabHeight:{},footerHeight:{},pxToRem:{},sidebarProps:{},railProps:{},mainProps:{},headerProps:{},tabProps:{},contentProps:{},footerProps:{},mobileProps:{}},emits:[`update:open`],setup(m,{emit:C}){let w=m,T=C,E=x(),D=u(()=>w.scrollId??`soybean-layout-scroll-${E}`),O=e(w,[`sidebarProps`,`railProps`,`mainProps`,`headerProps`,`tabProps`,`contentProps`,`footerProps`,`mobileProps`]);return(e,u)=>(v(),d(c,g(b(O),{"onUpdate:open":u[0]||(u[0]=e=>T(`update:open`,e))}),{default:S(c=>[p(r,g(m.mainProps,{id:m.scrollBehavior===`wrapper`?D.value:void 0}),{default:S(()=>[p(i,_(h(m.headerProps)),{default:S(()=>[y(e.$slots,`header`)]),_:3},16),p(l,{type:`header`}),p(a,_(h(m.tabProps)),{default:S(()=>[y(e.$slots,`tab`)]),_:3},16),p(l,{type:`tab`}),p(t,_(h(m.sidebarProps)),{default:S(()=>[y(e.$slots,`sidebar`,_(h(c))),p(n,_(h(m.railProps)),null,16)]),_:2},1040),p(o,g(m.contentProps,{id:m.scrollBehavior===`content`?D.value:void 0}),{default:S(()=>[y(e.$slots,`default`)]),_:3},16,[`id`]),m.footerVisible?(v(),d(s,_(g({key:0},m.footerProps)),{default:S(()=>[y(e.$slots,`footer`)]),_:3},16)):f(`v-if`,!0),p(l,{type:`footer`})]),_:2},1040,[`id`])]),_:3},16))}});export{C as default};
@@ -0,0 +1,30 @@
1
+ import { DataOrientation } from "../../types/common.js";
2
+ import { LayoutClassicCompactProps, LayoutClassicCompactSlots } from "./types.js";
3
+ import * as _$vue from "vue";
4
+
5
+ //#region src/components/layout/layout-classic-compact.vue.d.ts
6
+ type __VLS_Slots = LayoutClassicCompactSlots;
7
+ declare const __VLS_base: _$vue.DefineComponent<LayoutClassicCompactProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
8
+ "update:open": (open: boolean) => any;
9
+ }, string, _$vue.PublicProps, Readonly<LayoutClassicCompactProps> & Readonly<{
10
+ "onUpdate:open"?: ((open: boolean) => any) | undefined;
11
+ }>, {
12
+ orientation: DataOrientation;
13
+ defaultOpen: boolean;
14
+ open: boolean;
15
+ sidebarVisible: boolean;
16
+ headerVisible: boolean;
17
+ tabVisible: boolean;
18
+ footerVisible: boolean;
19
+ fixedTop: boolean;
20
+ stretchFooter: boolean;
21
+ }, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
22
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
23
+ declare const _default: typeof __VLS_export;
24
+ type __VLS_WithSlots<T, S> = T & {
25
+ new (): {
26
+ $slots: S;
27
+ };
28
+ };
29
+ //#endregion
30
+ export { _default };
@@ -0,0 +1 @@
1
+ import{useLayoutClassicRootContext as e,useLayoutClassicUi as t}from"./context.js";import{computed as n,createCommentVNode as r,createElementBlock as i,defineComponent as a,normalizeClass as o,openBlock as s,unref as c}from"vue";const l=[`data-slot`],u=a({name:`LayoutClassicPlaceholder`,inheritAttrs:!1,__name:`layout-classic-placeholder`,props:{type:{}},setup(a){let u=a,d=t(`${u.type}Placeholder`),{fixedTop:f,headerVisible:p,tabVisible:m,footerVisible:h,fixedFooter:g}=e(`LayoutClassicPlaceholder`),_=n(()=>u.type===`footer`?g.value:f.value),v=n(()=>u.type===`header`?p.value:u.type===`tab`?m.value:h.value),y=n(()=>`${u.type}-placeholder`);return(e,t)=>v.value&&_.value?(s(),i(`div`,{key:0,class:o(c(d)),"data-slot":y.value},null,10,l)):r(`v-if`,!0)}});export{u as default};
@@ -0,0 +1 @@
1
+ import{transformPropsToContext as e}from"../../shared/vue.js";import"../../shared/index.js";import{useControllableState as t}from"../../composables/use-controllable-state.js";import"../../composables/index.js";import{provideLayoutClassicRootContext as n,useLayoutUi as r}from"./context.js";import{layoutCssVars as i}from"./shared.js";import{computed as a,createElementBlock as o,defineComponent as s,normalizeClass as c,normalizeStyle as l,openBlock as u,renderSlot as d,shallowRef as f,unref as p}from"vue";const m=[`data-orientation`,`data-side`,`data-state`,`data-mobile`,`data-scroll-behavior`,`data-full-content`,`data-sidebar-visible`,`data-header-visible`,`data-tab-visible`,`data-footer-visible`,`data-fixed-top`,`data-fixed-footer`,`data-stretch-footer`],h=s({name:`LayoutClassicRoot`,__name:`layout-classic-root`,props:{orientation:{default:`horizontal`},scrollBehavior:{default:`content`},scrollId:{},baseZIndex:{default:50},fixedTop:{type:Boolean,default:!0},fullContent:{type:Boolean},sidebarVisible:{type:Boolean,default:!0},headerVisible:{type:Boolean,default:!0},tabVisible:{type:Boolean,default:!0},footerVisible:{type:Boolean,default:!0},fixedFooter:{type:Boolean},stretchFooter:{type:Boolean,default:!0},open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:!0},side:{default:`left`},sidebarWidth:{default:240},collapsedSidebarWidth:{default:50},isMobile:{type:Boolean,default:!1},mobileSidebarWidth:{default:240},headerHeight:{default:56},tabHeight:{default:44},footerHeight:{default:48},pxToRem:{type:Function,default:e=>e/16}},emits:[`update:open`],setup(s,{emit:h}){let g=s,_=h,v=r(`root`),y=t(()=>g.open,e=>{_(`update:open`,e??!1)},g.defaultOpen),b=f(!1),x=a(()=>y.value?`expanded`:`collapsed`),S=a(()=>!!g.fixedTop||g.orientation===`vertical`&&g.scrollBehavior===`wrapper`),C=a(()=>g.orientation===`horizontal`),w=a(()=>{let e=g.pxToRem(g.sidebarWidth),t=g.pxToRem(g.collapsedSidebarWidth),n=y.value?e:t,r=g.pxToRem(g.headerHeight),a=g.pxToRem(g.tabHeight),o=g.pxToRem(g.footerHeight),s=g.sidebarVisible?`${n}rem`:void 0,c=C.value?s:void 0,l=T()?s:void 0,u=g.headerVisible&&!C.value?`${r}rem`:void 0,d=g.footerVisible&&!l?`${o}rem`:void 0,f=C.value?g.baseZIndex-1:g.baseZIndex-4,p=g.baseZIndex-3,m=g.baseZIndex-5,h=d?f+1:f-5;return{[i.sidebarWidth]:`${e}rem`,[i.collapsedSidebarWidth]:`${t}rem`,[i.currentSidebarWidth]:`${n}rem`,[i.baseZIndex]:g.baseZIndex,[i.headerHeight]:`${r}rem`,[i.tabHeight]:`${a}rem`,[i.footerHeight]:`${o}rem`,[i.sidebarTopGap]:u,[i.sidebarBottomGap]:d,[i.startGap]:s,[i.headerStartGap]:c,[i.footerStartGap]:l,[i.sidebarZIndex]:f,[i.headerZIndex]:p,[i.tabZIndex]:m,[i.footerZIndex]:h}});function T(){return C.value||g.scrollBehavior===`wrapper`&&!g.fixedFooter?!0:!g.stretchFooter}let E=a(()=>g.pxToRem(g.mobileSidebarWidth));return n({...e(g,[`sidebarWidth`,`collapsedSidebarWidth`,`isMobile`,`sidebarVisible`,`headerVisible`,`tabVisible`,`footerVisible`,`fixedFooter`]),open:y,mobileOpen:b,mobileSidebarWidth:E,fixedTop:S}),(e,t)=>(u(),o(`div`,{class:c(p(v)),"data-orientation":s.orientation,"data-side":s.side,"data-state":x.value,"data-mobile":!!s.isMobile,"data-scroll-behavior":s.scrollBehavior,"data-full-content":!!s.fullContent,"data-sidebar-visible":!!s.sidebarVisible,"data-header-visible":!!s.headerVisible,"data-tab-visible":!!s.tabVisible,"data-footer-visible":!!s.footerVisible,"data-fixed-top":S.value,"data-fixed-footer":!!s.fixedFooter,"data-stretch-footer":!!s.stretchFooter,style:l(w.value)},[d(e.$slots,`default`,{open:p(y),collapsedSidebarWidth:s.collapsedSidebarWidth})],14,m))}});export{h as default};
@@ -0,0 +1 @@
1
+ import{useOmitProps as e}from"../../composables/use-props.js";import"../../composables/index.js";import t from"./layout-root.js";import n from"./layout-sidebar.js";import r from"./layout-rail.js";import i from"./layout-main.js";import a from"./layout-header.js";import o from"./layout-tab.js";import s from"./layout-content.js";import c from"./layout-footer.js";import{createBlock as l,createCommentVNode as u,createVNode as d,defineComponent as f,guardReactiveProps as p,mergeProps as m,normalizeProps as h,openBlock as g,renderSlot as _,unref as v,withCtx as y}from"vue";const b=f({name:`LayoutCompact`,__name:`layout-compact`,props:{open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:!0},side:{},variant:{},collapsible:{},sidebarVisible:{type:Boolean,default:!0},sidebarWidth:{},collapsedSidebarWidth:{},isMobile:{type:Boolean},mobileSidebarWidth:{},headerVisible:{type:Boolean,default:!0},headerHeight:{},tabVisible:{type:Boolean,default:!0},tabHeight:{},footerVisible:{type:Boolean,default:!0},footerHeight:{},fullContent:{type:Boolean},pxToRem:{},sidebarProps:{},railProps:{},mainProps:{},headerProps:{},tabProps:{},contentProps:{},footerProps:{},mobileProps:{}},emits:[`update:open`],setup(f,{emit:b}){let x=f,S=b,C=e(x,[`sidebarProps`,`headerProps`,`mainProps`,`tabProps`,`contentProps`,`footerProps`,`railProps`,`mobileProps`]);return(e,b)=>(g(),l(t,m(v(C),{"onUpdate:open":b[0]||(b[0]=e=>S(`update:open`,e))}),{default:y(t=>[d(n,h(p(f.sidebarProps)),{default:y(()=>[_(e.$slots,`sidebar`,h(p(t))),d(r,h(p(f.railProps)),null,16)]),_:2},1040),d(i,h(p(f.mainProps)),{default:y(()=>[d(a,h(p(f.headerProps)),{default:y(()=>[_(e.$slots,`header`)]),_:3},16),f.tabVisible?(g(),l(o,h(m({key:0},f.tabProps)),{default:y(()=>[_(e.$slots,`tab`)]),_:3},16)):u(`v-if`,!0),d(s,h(p(f.contentProps)),{default:y(()=>[_(e.$slots,`content`,{},()=>[_(e.$slots,`default`)])]),_:3},16),f.footerVisible?(g(),l(c,h(m({key:1},f.footerProps)),{default:y(()=>[_(e.$slots,`footer`)]),_:3},16)):u(`v-if`,!0)]),_:3},16)]),_:3},16))}});export{b as default};
@@ -0,0 +1,26 @@
1
+ import { LayoutCompactProps, LayoutCompactSlots } from "./types.js";
2
+ import * as _$vue from "vue";
3
+
4
+ //#region src/components/layout/layout-compact.vue.d.ts
5
+ type __VLS_Slots = LayoutCompactSlots;
6
+ declare const __VLS_base: _$vue.DefineComponent<LayoutCompactProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
7
+ "update:open": (open: boolean) => any;
8
+ }, string, _$vue.PublicProps, Readonly<LayoutCompactProps> & Readonly<{
9
+ "onUpdate:open"?: ((open: boolean) => any) | undefined;
10
+ }>, {
11
+ defaultOpen: boolean;
12
+ open: boolean;
13
+ sidebarVisible: boolean;
14
+ headerVisible: boolean;
15
+ tabVisible: boolean;
16
+ footerVisible: boolean;
17
+ }, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
18
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
19
+ declare const _default: typeof __VLS_export;
20
+ type __VLS_WithSlots<T, S> = T & {
21
+ new (): {
22
+ $slots: S;
23
+ };
24
+ };
25
+ //#endregion
26
+ export { _default };
@@ -1 +1 @@
1
- import{useLayoutUi as e}from"./context.js";import{createElementBlock as t,defineComponent as n,normalizeClass as r,openBlock as i,renderSlot as a,unref as o}from"vue";const s=n({name:`LayoutFooter`,__name:`layout-footer`,setup(n){let s=e(`footer`);return(e,n)=>(i(),t(`div`,{class:r(o(s))},[a(e.$slots,`default`)],2))}});export{s as default};
1
+ import{useLayoutRootContext as e,useLayoutUi as t}from"./context.js";import{createCommentVNode as n,createElementBlock as r,defineComponent as i,normalizeClass as a,openBlock as o,renderSlot as s,unref as c}from"vue";const l=i({name:`LayoutFooter`,__name:`layout-footer`,setup(i){let l=t(`footer`),{footerVisible:u}=e(`LayoutFooter`);return(e,t)=>c(u)?(o(),r(`div`,{key:0,class:a(c(l))},[s(e.$slots,`default`)],2)):n(`v-if`,!0)}});export{l as default};
@@ -1 +1 @@
1
- import{useLayoutUi as e}from"./context.js";import{createElementBlock as t,defineComponent as n,normalizeClass as r,openBlock as i,renderSlot as a,unref as o}from"vue";const s=n({name:`LayoutHeader`,__name:`layout-header`,setup(n){let s=e(`header`);return(e,n)=>(i(),t(`header`,{class:r(o(s))},[a(e.$slots,`default`)],2))}});export{s as default};
1
+ import{useLayoutRootContext as e,useLayoutUi as t}from"./context.js";import{createCommentVNode as n,createElementBlock as r,defineComponent as i,normalizeClass as a,openBlock as o,renderSlot as s,unref as c}from"vue";const l=i({name:`LayoutHeader`,__name:`layout-header`,setup(i){let l=t(`header`),{headerVisible:u}=e(`LayoutHeader`);return(e,t)=>c(u)?(o(),r(`header`,{key:0,class:a(c(l))},[s(e.$slots,`default`)],2)):n(`v-if`,!0)}});export{l as default};
@@ -1 +1 @@
1
- import{transformPropsToContext as e}from"../../shared/vue.js";import"../../shared/index.js";import{useControllableState as t}from"../../composables/use-controllable-state.js";import"../../composables/index.js";import{provideLayoutRootContext as n,useLayoutUi as r}from"./context.js";import{layoutCssVars as i}from"./shared.js";import{computed as a,createElementBlock as o,defineComponent as s,normalizeClass as c,normalizeStyle as l,openBlock as u,renderSlot as d,shallowRef as f,unref as p}from"vue";const m=[`data-collapsible`,`data-side`,`data-state`,`data-variant`,`data-mobile`],h=s({name:`LayoutRoot`,__name:`layout-root`,props:{open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:!1},side:{default:`left`},variant:{default:`sidebar`},collapsible:{default:`icon`},sidebarWidth:{default:240},collapsedSidebarWidth:{default:50},isMobile:{type:Boolean,default:!1},mobileSidebarWidth:{default:240},headerHeight:{default:56},tabHeight:{default:44},footerHeight:{default:48},pxToRem:{type:Function,default:e=>e/16}},emits:[`update:open`],setup(s,{emit:h}){let g=s,_=h,v=r(`root`),y=t(()=>g.open,e=>{_(`update:open`,e??!1)},g.defaultOpen),b=f(!1),x=a(()=>y.value?`expanded`:`collapsed`),S=a(()=>x.value===`collapsed`?g.collapsible:``),C=a(()=>{let e=g.pxToRem(g.sidebarWidth),t=g.pxToRem(g.collapsedSidebarWidth),n=g.pxToRem(g.headerHeight),r=g.pxToRem(g.tabHeight),a=g.pxToRem(g.footerHeight);return{[i.sidebarWidth]:`${e}rem`,[i.collapsedSidebarWidth]:`${t}rem`,[i.headerHeight]:`${n}rem`,[i.tabHeight]:`${r}rem`,[i.footerHeight]:`${a}rem`}}),w=a(()=>g.pxToRem(g.mobileSidebarWidth));return n({...e(g,[`sidebarWidth`,`collapsedSidebarWidth`,`isMobile`]),open:y,mobileOpen:b,mobileSidebarWidth:w,sidebarState:x}),(e,t)=>(u(),o(`div`,{class:c(p(v)),"data-collapsible":S.value,"data-side":s.side,"data-state":x.value,"data-variant":s.variant,"data-mobile":!!s.isMobile,style:l(C.value)},[d(e.$slots,`default`,{open:p(y),collapsedSidebarWidth:s.collapsedSidebarWidth})],14,m))}});export{h as default};
1
+ import{transformPropsToContext as e}from"../../shared/vue.js";import"../../shared/index.js";import{useControllableState as t}from"../../composables/use-controllable-state.js";import"../../composables/index.js";import{provideLayoutRootContext as n,useLayoutUi as r}from"./context.js";import{layoutCssVars as i}from"./shared.js";import{computed as a,createElementBlock as o,defineComponent as s,normalizeClass as c,normalizeStyle as l,openBlock as u,renderSlot as d,shallowRef as f,unref as p}from"vue";const m=[`data-collapsible`,`data-side`,`data-state`,`data-variant`,`data-mobile`,`data-sidebar-visible`,`data-header-visible`,`data-tab-visible`,`data-footer-visible`,`data-full-content`],h=s({name:`LayoutRoot`,__name:`layout-root`,props:{open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:!1},side:{default:`left`},variant:{default:`sidebar`},collapsible:{default:`icon`},sidebarVisible:{type:Boolean,default:!0},sidebarWidth:{default:240},collapsedSidebarWidth:{default:50},isMobile:{type:Boolean,default:!1},mobileSidebarWidth:{default:240},headerVisible:{type:Boolean,default:!0},headerHeight:{default:56},tabVisible:{type:Boolean,default:!0},tabHeight:{default:44},footerVisible:{type:Boolean,default:!0},footerHeight:{default:48},fullContent:{type:Boolean},pxToRem:{type:Function,default:e=>e/16}},emits:[`update:open`],setup(s,{emit:h}){let g=s,_=h,v=r(`root`),y=t(()=>g.open,e=>{_(`update:open`,e??!1)},g.defaultOpen),b=f(!1),x=a(()=>y.value?`expanded`:`collapsed`),S=a(()=>x.value===`collapsed`?g.collapsible:``),C=a(()=>{let e=g.pxToRem(g.sidebarWidth),t=g.pxToRem(g.collapsedSidebarWidth),n=y.value?e:t,r=g.pxToRem(g.headerHeight),a=g.pxToRem(g.tabHeight),o=g.pxToRem(g.footerHeight);return{[i.sidebarWidth]:`${e}rem`,[i.collapsedSidebarWidth]:`${t}rem`,[i.currentSidebarWidth]:`${n}rem`,[i.headerHeight]:`${r}rem`,[i.tabHeight]:`${a}rem`,[i.footerHeight]:`${o}rem`}}),w=a(()=>g.pxToRem(g.mobileSidebarWidth));return n({...e(g,[`sidebarWidth`,`collapsedSidebarWidth`,`isMobile`,`sidebarVisible`,`headerVisible`,`tabVisible`,`footerVisible`]),open:y,mobileOpen:b,mobileSidebarWidth:w}),(e,t)=>(u(),o(`div`,{class:c(p(v)),"data-collapsible":S.value,"data-side":s.side,"data-state":x.value,"data-variant":s.variant,"data-mobile":!!s.isMobile,"data-sidebar-visible":!!s.sidebarVisible,"data-header-visible":!!s.headerVisible,"data-tab-visible":!!s.tabVisible,"data-footer-visible":!!s.footerVisible,"data-full-content":!!s.fullContent,style:l(C.value)},[d(e.$slots,`default`,{open:p(y),collapsedSidebarWidth:s.collapsedSidebarWidth})],14,m))}});export{h as default};
@@ -15,16 +15,20 @@ declare const __VLS_base: _$vue.DefineComponent<LayoutRootProps, {}, {}, {}, {},
15
15
  "onUpdate:open"?: ((open: boolean) => any) | undefined;
16
16
  }>, {
17
17
  collapsible: LayoutCollapsible;
18
- open: boolean;
19
18
  defaultOpen: boolean;
19
+ open: boolean;
20
20
  side: LayoutSide;
21
21
  variant: LayoutVariant;
22
+ sidebarVisible: boolean;
22
23
  sidebarWidth: number;
23
24
  collapsedSidebarWidth: number;
24
25
  isMobile: boolean;
25
26
  mobileSidebarWidth: number;
27
+ headerVisible: boolean;
26
28
  headerHeight: number;
29
+ tabVisible: boolean;
27
30
  tabHeight: number;
31
+ footerVisible: boolean;
28
32
  footerHeight: number;
29
33
  pxToRem: (px: number) => number;
30
34
  }, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
@@ -1 +1 @@
1
- import{useLayoutRootContext as e,useLayoutUi as t}from"./context.js";import n from"./layout-mobile.js";import{createBlock as r,createElementBlock as i,createElementVNode as a,defineComponent as o,mergeProps as s,normalizeClass as c,normalizeProps as l,openBlock as u,renderSlot as d,unref as f,useAttrs as p,withCtx as m}from"vue";const h=o({name:`LayoutSidebar`,inheritAttrs:!1,__name:`layout-sidebar`,setup(o){let h=p(),{isMobile:g}=e(`LayoutSidebar`),_=t();return(e,t)=>f(g)?(u(),r(n,l(s({key:0},f(h))),{default:m(()=>[d(e.$slots,`default`)]),_:3},16)):(u(),i(`div`,{key:1,class:c(f(_).sidebarRoot)},[a(`div`,{class:c(f(_).sidebarGapHandler)},null,2),a(`div`,{class:c(f(_).sidebarWrapper)},[a(`div`,s(f(h),{class:f(_).sidebar,"data-sidebar":`sidebar`}),[d(e.$slots,`default`)],16)],2)],2))}});export{h as default};
1
+ import{useLayoutRootContext as e,useLayoutUi as t}from"./context.js";import n from"./layout-mobile.js";import{Fragment as r,createBlock as i,createCommentVNode as a,createElementBlock as o,createElementVNode as s,defineComponent as c,mergeProps as l,normalizeClass as u,normalizeProps as d,openBlock as f,renderSlot as p,unref as m,useAttrs as h,withCtx as g}from"vue";const _=c({name:`LayoutSidebar`,inheritAttrs:!1,__name:`layout-sidebar`,setup(c){let _=h(),{sidebarVisible:v,isMobile:y}=e(`LayoutSidebar`),b=t();return(e,t)=>m(v)?(f(),o(r,{key:0},[m(y)?(f(),i(n,d(l({key:0},m(_))),{default:g(()=>[p(e.$slots,`default`)]),_:3},16)):(f(),o(`div`,{key:1,class:u(m(b).sidebarRoot)},[s(`div`,{class:u(m(b).sidebarGapHandler)},null,2),s(`div`,{class:u(m(b).sidebarWrapper)},[s(`div`,l(m(_),{class:m(b).sidebar,"data-sidebar":`sidebar`}),[p(e.$slots,`default`)],16)],2)],2))],64)):a(`v-if`,!0)}});export{_ as default};
@@ -1 +1 @@
1
- import{useLayoutUi as e}from"./context.js";import{createElementBlock as t,defineComponent as n,normalizeClass as r,openBlock as i,renderSlot as a,unref as o}from"vue";const s=n({name:`LayoutTab`,__name:`layout-tab`,setup(n){let s=e(`tab`);return(e,n)=>(i(),t(`div`,{class:r(o(s))},[a(e.$slots,`default`)],2))}});export{s as default};
1
+ import{useLayoutRootContext as e,useLayoutUi as t}from"./context.js";import{createCommentVNode as n,createElementBlock as r,defineComponent as i,normalizeClass as a,openBlock as o,renderSlot as s,unref as c}from"vue";const l=i({name:`LayoutTab`,__name:`layout-tab`,setup(i){let l=t(`tab`),{tabVisible:u}=e(`LayoutTab`);return(e,t)=>c(u)?(o(),r(`div`,{key:0,class:a(c(l))},[s(e.$slots,`default`)],2)):n(`v-if`,!0)}});export{l as default};
@@ -1 +1 @@
1
- import{Primitive as e}from"../primitive/primitive.js";import"../primitive/index.js";import{useLayoutRootContext as t,useLayoutUi as n}from"./context.js";import{createBlock as r,defineComponent as i,normalizeClass as a,openBlock as o,renderSlot as s,unref as c,withCtx as l}from"vue";const u=i({name:`LayoutTrigger`,__name:`layout-trigger`,props:{asChild:{type:Boolean},as:{}},setup(i){let{open:u,toggleSidebar:d}=t(`LayoutTrigger`),f=n(`trigger`);return(t,n)=>(o(),r(c(e),{as:i.as,"as-child":i.asChild,class:a(c(f)),"data-sidebar":`trigger`,onClick:c(d)},{default:l(()=>[s(t.$slots,`default`,{open:c(u)})]),_:3},8,[`as`,`as-child`,`class`,`onClick`]))}});export{u as default};
1
+ import e from"../_icon/icon.js";import{Primitive as t}from"../primitive/primitive.js";import"../primitive/index.js";import{useLayoutRootContext as n,useLayoutUi as r}from"./context.js";import{createBlock as i,createVNode as a,defineComponent as o,normalizeClass as s,openBlock as c,renderSlot as l,unref as u,withCtx as d}from"vue";const f=o({name:`LayoutTrigger`,__name:`layout-trigger`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(o){let{open:f,toggleSidebar:p}=n(`LayoutTrigger`),m=r(`trigger`);return(n,r)=>(c(),i(u(t),{as:o.as,"as-child":o.asChild,class:s(u(m)),type:`button`,"aria-label":`Toggle Sidebar`,"data-sidebar":`trigger`,onClick:u(p)},{default:d(()=>[l(n.$slots,`default`,{open:u(f)},()=>[a(e,{icon:u(f)?`lucide:panel-right`:`lucide:panel-left`},null,8,[`icon`])])]),_:3},8,[`as`,`as-child`,`class`,`onClick`]))}});export{f as default};
@@ -1,3 +1,4 @@
1
+ import { AsTag } from "../primitive/types.js";
1
2
  import { LayoutTriggerProps } from "./types.js";
2
3
  import * as _$vue from "vue";
3
4
 
@@ -8,7 +9,9 @@ declare var __VLS_10: {
8
9
  type __VLS_Slots = {} & {
9
10
  default?: (props: typeof __VLS_10) => any;
10
11
  };
11
- declare const __VLS_base: _$vue.DefineComponent<LayoutTriggerProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {}, string, _$vue.PublicProps, Readonly<LayoutTriggerProps> & Readonly<{}>, {}, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
12
+ declare const __VLS_base: _$vue.DefineComponent<LayoutTriggerProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {}, string, _$vue.PublicProps, Readonly<LayoutTriggerProps> & Readonly<{}>, {
13
+ as: AsTag | _$vue.Component;
14
+ }, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
12
15
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
13
16
  declare const _default: typeof __VLS_export;
14
17
  type __VLS_WithSlots<T, S> = T & {
@@ -1 +1 @@
1
- const e={sidebarWidth:`--soybean-sidebar-width`,collapsedSidebarWidth:`--soybean-collapsed-sidebar-width`,headerHeight:`--soybean-layout-header-height`,tabHeight:`--soybean-layout-tab-height`,footerHeight:`--soybean-layout-footer-height`};export{e as layoutCssVars};
1
+ const e={sidebarWidth:`--soybean-sidebar-width`,collapsedSidebarWidth:`--soybean-collapsed-sidebar-width`,currentSidebarWidth:`--soybean-current-sidebar-width`,headerHeight:`--soybean-layout-header-height`,tabHeight:`--soybean-layout-tab-height`,footerHeight:`--soybean-layout-footer-height`,startGap:`--soybean-layout-start-gap`,sidebarTopGap:`--soybean-layout-sidebar-top-gap`,sidebarBottomGap:`--soybean-layout-sidebar-bottom-gap`,headerStartGap:`--soybean-layout-header-start-gap`,footerStartGap:`--soybean-layout-footer-start-gap`,baseZIndex:`--soybean-layout-base-z-index`,sidebarZIndex:`--soybean-layout-sidebar-z-index`,headerZIndex:`--soybean-layout-header-z-index`,tabZIndex:`--soybean-layout-tab-z-index`,footerZIndex:`--soybean-layout-footer-z-index`};export{e as layoutCssVars};
@@ -1,4 +1,4 @@
1
- import { HorizontalSide, UiClass } from "../../types/common.js";
1
+ import { DataOrientation, HorizontalSide, UiClass } from "../../types/common.js";
2
2
  import { PrimitiveProps } from "../primitive/types.js";
3
3
  import { ComputedRef, HTMLAttributes, ShallowRef } from "vue";
4
4
 
@@ -21,6 +21,12 @@ interface LayoutRootProps extends /* @vue-ignore */HTMLAttributes {
21
21
  variant?: LayoutVariant;
22
22
  /** The collapsible state of the layout. */
23
23
  collapsible?: LayoutCollapsible;
24
+ /**
25
+ * whether to show the sidebar.
26
+ *
27
+ * @default true
28
+ */
29
+ sidebarVisible?: boolean;
24
30
  /**
25
31
  * The width of the sidebar. (px)
26
32
  *
@@ -45,21 +51,45 @@ interface LayoutRootProps extends /* @vue-ignore */HTMLAttributes {
45
51
  * @default 240
46
52
  */
47
53
  mobileSidebarWidth?: number;
54
+ /**
55
+ * whether to show the header.
56
+ *
57
+ * @default true
58
+ */
59
+ headerVisible?: boolean;
48
60
  /**
49
61
  * The height of the header. (px)
50
62
  * @default 56
51
63
  */
52
64
  headerHeight?: number;
65
+ /**
66
+ * whether to show the tab.
67
+ *
68
+ * @default true
69
+ */
70
+ tabVisible?: boolean;
53
71
  /**
54
72
  * The height of the tab. (px)
55
73
  * @default 44
56
74
  */
57
75
  tabHeight?: number;
76
+ /**
77
+ * whether to show the footer.
78
+ *
79
+ * @default true
80
+ */
81
+ footerVisible?: boolean;
58
82
  /**
59
83
  * The height of the footer. (px)
60
84
  * @default 48
61
85
  */
62
86
  footerHeight?: number;
87
+ /**
88
+ * whether the content takes the full height of the layout (include).
89
+ *
90
+ * @default false
91
+ */
92
+ fullContent?: boolean;
63
93
  /**
64
94
  * The function to convert pixels to rem.
65
95
  *
@@ -81,7 +111,96 @@ interface LayoutContentProps extends /* @vue-ignore */HTMLAttributes {}
81
111
  interface LayoutFooterProps extends /* @vue-ignore */HTMLAttributes {}
82
112
  interface LayoutTriggerProps extends PrimitiveProps, /* @vue-ignore */HTMLAttributes {}
83
113
  interface LayoutMobileProps extends /* @vue-ignore */HTMLAttributes {}
114
+ interface LayoutOthersProps {
115
+ sidebarProps?: LayoutSidebarProps;
116
+ railProps?: LayoutRailProps;
117
+ mainProps?: LayoutMainProps;
118
+ headerProps?: LayoutHeaderProps;
119
+ tabProps?: LayoutTabProps;
120
+ contentProps?: LayoutContentProps;
121
+ footerProps?: LayoutFooterProps;
122
+ mobileProps?: LayoutMobileProps;
123
+ }
124
+ interface LayoutCompactProps extends LayoutRootProps, LayoutOthersProps {}
125
+ type LayoutCompactEmits = LayoutRootEmits;
126
+ type LayoutCompactSlots = {
127
+ default?: () => any;
128
+ sidebar?: (props: {
129
+ open: boolean | undefined;
130
+ collapsedSidebarWidth: number;
131
+ }) => any;
132
+ header?: () => any;
133
+ tab?: () => any;
134
+ content?: () => any;
135
+ footer?: () => any;
136
+ };
137
+ type LayoutClassicScrollBehavior = 'wrapper' | 'content';
138
+ interface LayoutClassicRootProps extends Omit<LayoutRootProps, 'variant' | 'collapsible'> {
139
+ orientation?: DataOrientation;
140
+ scrollBehavior?: LayoutClassicScrollBehavior;
141
+ scrollId?: string;
142
+ /**
143
+ * The base z-index of the layout. The z-index of the sidebar, header, tab, footer, and their fixed versions will be calculated based on this value.
144
+ *
145
+ * @default 50
146
+ */
147
+ baseZIndex?: number;
148
+ /**
149
+ * Whether the header and tab are fixed to the top of the layout when the orientation is vertical. If true, the header and tab will be fixed to the top of the layout when the orientation is vertical, and will scroll with the content when the orientation is horizontal.
150
+ *
151
+ * @default true
152
+ */
153
+ fixedTop?: boolean;
154
+ /**
155
+ * whether the content takes the full height of the layout (include).
156
+ *
157
+ * @default false
158
+ */
159
+ fullContent?: boolean;
160
+ /**
161
+ * whether to show the sidebar.
162
+ *
163
+ * @default true
164
+ */
165
+ sidebarVisible?: boolean;
166
+ /**
167
+ * whether to show the header.
168
+ *
169
+ * @default true
170
+ */
171
+ headerVisible?: boolean;
172
+ /**
173
+ * whether to show the tab.
174
+ *
175
+ * @default true
176
+ */
177
+ tabVisible?: boolean;
178
+ /**
179
+ * whether to show the footer.
180
+ *
181
+ * @default true
182
+ */
183
+ footerVisible?: boolean;
184
+ /**
185
+ * Whether footer is fixed
186
+ *
187
+ * @default true
188
+ */
189
+ fixedFooter?: boolean;
190
+ /**
191
+ * Whether the footer should stretch to the full width of the layout or the content when layout orientation is vertical.
192
+ *
193
+ * @default true
194
+ */
195
+ stretchFooter?: boolean;
196
+ }
197
+ type LayoutClassicRootEmits = LayoutRootEmits;
198
+ interface LayoutClassicCompactProps extends LayoutClassicRootProps, LayoutOthersProps {}
199
+ type LayoutClassicCompactEmits = LayoutClassicRootEmits;
200
+ type LayoutClassicCompactSlots = LayoutCompactSlots;
84
201
  type LayoutUiSlot = 'root' | 'sidebar' | 'sidebarRoot' | 'sidebarWrapper' | 'sidebarGapHandler' | 'main' | 'header' | 'tab' | 'content' | 'footer' | 'rail' | 'trigger' | 'mobile' | 'mobileDrawer' | 'mobileOverlay';
85
202
  type LayoutUi = UiClass<LayoutUiSlot>;
203
+ type LayoutClassicUiSlot = LayoutUiSlot | 'headerPlaceholder' | 'tabPlaceholder' | 'footerPlaceholder';
204
+ type LayoutClassicUi = UiClass<LayoutClassicUiSlot>;
86
205
  //#endregion
87
- export { LayoutCollapsible, LayoutContentProps, LayoutFooterProps, LayoutHeaderProps, LayoutMainProps, LayoutMobileProps, LayoutRailProps, LayoutRootEmits, LayoutRootProps, LayoutSide, LayoutSidebarProps, LayoutSidebarState, LayoutTabProps, LayoutTriggerProps, LayoutUi, LayoutUiSlot, LayoutVariant };
206
+ export { LayoutClassicCompactEmits, LayoutClassicCompactProps, LayoutClassicCompactSlots, LayoutClassicScrollBehavior, LayoutClassicUi, LayoutClassicUiSlot, LayoutCollapsible, LayoutCompactEmits, LayoutCompactProps, LayoutCompactSlots, LayoutContentProps, LayoutFooterProps, LayoutHeaderProps, LayoutMainProps, LayoutMobileProps, LayoutRailProps, LayoutRootEmits, LayoutRootProps, LayoutSide, LayoutSidebarProps, LayoutSidebarState, LayoutTabProps, LayoutTriggerProps, LayoutUi, LayoutUiSlot, LayoutVariant };
@@ -13,6 +13,7 @@ type Slots = {
13
13
  type __VLS_Slots = Slots;
14
14
  declare const __VLS_base: _$vue.DefineComponent<LinkProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {}, string, _$vue.PublicProps, Readonly<LinkProps> & Readonly<{}>, {
15
15
  disabled: boolean;
16
+ as: AsTag | _$vue.Component;
16
17
  replace: boolean;
17
18
  external: boolean;
18
19
  viewTransition: boolean;
@@ -20,7 +21,6 @@ declare const __VLS_base: _$vue.DefineComponent<LinkProps, {}, {}, {}, {}, _$vue
20
21
  noRel: boolean;
21
22
  prefetch: boolean;
22
23
  noPrefetch: boolean;
23
- as: AsTag | _$vue.Component;
24
24
  }, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
25
25
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
26
26
  declare const _default: typeof __VLS_export;
@@ -8,19 +8,19 @@ type __VLS_Slots = {} & {
8
8
  default?: (props: typeof __VLS_10) => any;
9
9
  };
10
10
  declare const __VLS_base: _$vue.DefineComponent<MenuContentProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
11
+ entryFocus: (event: Event) => any;
11
12
  escapeKeyDown: (event: KeyboardEvent) => any;
12
13
  pointerDownOutside: (event: PointerDownOutsideEvent) => any;
13
14
  focusOutside: (event: FocusOutsideEvent) => any;
14
15
  interactOutside: (event: PointerDownOutsideEvent | FocusOutsideEvent) => any;
15
- entryFocus: (event: Event) => any;
16
16
  openAutoFocus: (event: Event) => any;
17
17
  closeAutoFocus: (event: Event) => any;
18
18
  }, string, _$vue.PublicProps, Readonly<MenuContentProps> & Readonly<{
19
+ onEntryFocus?: ((event: Event) => any) | undefined;
19
20
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
20
21
  onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
21
22
  onFocusOutside?: ((event: FocusOutsideEvent) => any) | undefined;
22
23
  onInteractOutside?: ((event: PointerDownOutsideEvent | FocusOutsideEvent) => any) | undefined;
23
- onEntryFocus?: ((event: Event) => any) | undefined;
24
24
  onOpenAutoFocus?: ((event: Event) => any) | undefined;
25
25
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
26
26
  }>, {}, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
@@ -7,12 +7,12 @@ import * as _$vue from "vue";
7
7
  declare const __VLS_export: <T extends DefinedValue = DefinedValue>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
8
8
  props: _$vue.PublicProps & __VLS_PrettifyLocal<MenuOptionCompactProps<T> & {
9
9
  onSelect?: ((item: MenuOptionData<T>, event: Event) => any) | undefined;
10
+ onEntryFocus?: ((event: Event) => any) | undefined;
11
+ "onUpdate:open"?: ((value: boolean) => any) | undefined;
10
12
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
11
13
  onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
12
14
  onFocusOutside?: ((event: FocusOutsideEvent) => any) | undefined;
13
15
  onInteractOutside?: ((event: PointerDownOutsideEvent | FocusOutsideEvent) => any) | undefined;
14
- onEntryFocus?: ((event: Event) => any) | undefined;
15
- "onUpdate:open"?: ((value: boolean) => any) | undefined;
16
16
  onOpenAutoFocus?: ((event: Event) => any) | undefined;
17
17
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
18
18
  }> & (typeof globalThis extends {
@@ -21,7 +21,7 @@ declare const __VLS_export: <T extends DefinedValue = DefinedValue>(__VLS_props:
21
21
  expose: (exposed: {}) => void;
22
22
  attrs: any;
23
23
  slots: MenuOptionCompactSlots<T>;
24
- emit: ((evt: "select", item: MenuOptionData<T>, event: Event) => void) & ((evt: "escapeKeyDown", event: KeyboardEvent) => void) & ((evt: "pointerDownOutside", event: PointerDownOutsideEvent) => void) & ((evt: "focusOutside", event: FocusOutsideEvent) => void) & ((evt: "interactOutside", event: PointerDownOutsideEvent | FocusOutsideEvent) => void) & ((evt: "entryFocus", event: Event) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "openAutoFocus", event: Event) => void) & ((evt: "closeAutoFocus", event: Event) => void);
24
+ emit: ((evt: "select", item: MenuOptionData<T>, event: Event) => void) & ((evt: "entryFocus", event: Event) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "escapeKeyDown", event: KeyboardEvent) => void) & ((evt: "pointerDownOutside", event: PointerDownOutsideEvent) => void) & ((evt: "focusOutside", event: FocusOutsideEvent) => void) & ((evt: "interactOutside", event: PointerDownOutsideEvent | FocusOutsideEvent) => void) & ((evt: "openAutoFocus", event: Event) => void) & ((evt: "closeAutoFocus", event: Event) => void);
25
25
  }>) => _$vue.VNode & {
26
26
  __ctx?: Awaited<typeof __VLS_setup>;
27
27
  };
@@ -7,12 +7,12 @@ import * as _$vue from "vue";
7
7
  declare const __VLS_export: <T extends DefinedValue = DefinedValue>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
8
8
  props: _$vue.PublicProps & __VLS_PrettifyLocal<MenuOptionsCompactProps<T> & {
9
9
  onSelect?: ((item: MenuOptionData<T>, event: Event) => any) | undefined;
10
+ onEntryFocus?: ((event: Event) => any) | undefined;
11
+ "onUpdate:open"?: ((value: boolean) => any) | undefined;
10
12
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
11
13
  onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
12
14
  onFocusOutside?: ((event: FocusOutsideEvent) => any) | undefined;
13
15
  onInteractOutside?: ((event: PointerDownOutsideEvent | FocusOutsideEvent) => any) | undefined;
14
- onEntryFocus?: ((event: Event) => any) | undefined;
15
- "onUpdate:open"?: ((value: boolean) => any) | undefined;
16
16
  onOpenAutoFocus?: ((event: Event) => any) | undefined;
17
17
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
18
18
  }> & (typeof globalThis extends {
@@ -21,7 +21,7 @@ declare const __VLS_export: <T extends DefinedValue = DefinedValue>(__VLS_props:
21
21
  expose: (exposed: {}) => void;
22
22
  attrs: any;
23
23
  slots: MenuOptionsCompactSlots<T>;
24
- emit: ((evt: "select", item: MenuOptionData<T>, event: Event) => void) & ((evt: "escapeKeyDown", event: KeyboardEvent) => void) & ((evt: "pointerDownOutside", event: PointerDownOutsideEvent) => void) & ((evt: "focusOutside", event: FocusOutsideEvent) => void) & ((evt: "interactOutside", event: PointerDownOutsideEvent | FocusOutsideEvent) => void) & ((evt: "entryFocus", event: Event) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "openAutoFocus", event: Event) => void) & ((evt: "closeAutoFocus", event: Event) => void);
24
+ emit: ((evt: "select", item: MenuOptionData<T>, event: Event) => void) & ((evt: "entryFocus", event: Event) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "escapeKeyDown", event: KeyboardEvent) => void) & ((evt: "pointerDownOutside", event: PointerDownOutsideEvent) => void) & ((evt: "focusOutside", event: FocusOutsideEvent) => void) & ((evt: "interactOutside", event: PointerDownOutsideEvent | FocusOutsideEvent) => void) & ((evt: "openAutoFocus", event: Event) => void) & ((evt: "closeAutoFocus", event: Event) => void);
25
25
  }>) => _$vue.VNode & {
26
26
  __ctx?: Awaited<typeof __VLS_setup>;
27
27
  };
@@ -8,19 +8,19 @@ type __VLS_Slots = {} & {
8
8
  default?: (props: typeof __VLS_14) => any;
9
9
  };
10
10
  declare const __VLS_base: _$vue.DefineComponent<MenuSubContentProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
11
+ entryFocus: (event: Event) => any;
11
12
  escapeKeyDown: (event: KeyboardEvent) => any;
12
13
  pointerDownOutside: (event: PointerDownOutsideEvent) => any;
13
14
  focusOutside: (event: FocusOutsideEvent) => any;
14
15
  interactOutside: (event: PointerDownOutsideEvent | FocusOutsideEvent) => any;
15
- entryFocus: (event: Event) => any;
16
16
  openAutoFocus: (event: Event) => any;
17
17
  closeAutoFocus: (event: Event) => any;
18
18
  }, string, _$vue.PublicProps, Readonly<MenuSubContentProps> & Readonly<{
19
+ onEntryFocus?: ((event: Event) => any) | undefined;
19
20
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
20
21
  onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
21
22
  onFocusOutside?: ((event: FocusOutsideEvent) => any) | undefined;
22
23
  onInteractOutside?: ((event: PointerDownOutsideEvent | FocusOutsideEvent) => any) | undefined;
23
- onEntryFocus?: ((event: Event) => any) | undefined;
24
24
  onOpenAutoFocus?: ((event: Event) => any) | undefined;
25
25
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
26
26
  }>, {
@@ -9,12 +9,12 @@ declare const __VLS_export: <T extends DefinedValue = DefinedValue>(__VLS_props:
9
9
  props: _$vue.PublicProps & __VLS_PrettifyLocal<MenubarCompactProps<T> & {
10
10
  onSelect?: ((item: MenuOptionData<T>, event: Event) => any) | undefined;
11
11
  "onUpdate:modelValue"?: ((value: T) => any) | undefined;
12
+ onEntryFocus?: ((event: Event) => any) | undefined;
13
+ "onUpdate:open"?: ((value: boolean) => any) | undefined;
12
14
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
13
15
  onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
14
16
  onFocusOutside?: ((event: FocusOutsideEvent) => any) | undefined;
15
17
  onInteractOutside?: ((event: PointerDownOutsideEvent | FocusOutsideEvent) => any) | undefined;
16
- onEntryFocus?: ((event: Event) => any) | undefined;
17
- "onUpdate:open"?: ((value: boolean) => any) | undefined;
18
18
  onOpenAutoFocus?: ((event: Event) => any) | undefined;
19
19
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
20
20
  }> & (typeof globalThis extends {
@@ -23,7 +23,7 @@ declare const __VLS_export: <T extends DefinedValue = DefinedValue>(__VLS_props:
23
23
  expose: (exposed: {}) => void;
24
24
  attrs: any;
25
25
  slots: MenubarCompactSlots<T>;
26
- emit: ((evt: "select", item: MenuOptionData<T>, event: Event) => void) & ((evt: "update:modelValue", value: T) => void) & ((evt: "escapeKeyDown", event: KeyboardEvent) => void) & ((evt: "pointerDownOutside", event: PointerDownOutsideEvent) => void) & ((evt: "focusOutside", event: FocusOutsideEvent) => void) & ((evt: "interactOutside", event: PointerDownOutsideEvent | FocusOutsideEvent) => void) & ((evt: "entryFocus", event: Event) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "openAutoFocus", event: Event) => void) & ((evt: "closeAutoFocus", event: Event) => void);
26
+ emit: ((evt: "select", item: MenuOptionData<T>, event: Event) => void) & ((evt: "update:modelValue", value: T) => void) & ((evt: "entryFocus", event: Event) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "escapeKeyDown", event: KeyboardEvent) => void) & ((evt: "pointerDownOutside", event: PointerDownOutsideEvent) => void) & ((evt: "focusOutside", event: FocusOutsideEvent) => void) & ((evt: "interactOutside", event: PointerDownOutsideEvent | FocusOutsideEvent) => void) & ((evt: "openAutoFocus", event: Event) => void) & ((evt: "closeAutoFocus", event: Event) => void);
27
27
  }>) => _$vue.VNode & {
28
28
  __ctx?: Awaited<typeof __VLS_setup>;
29
29
  };
@@ -9,19 +9,19 @@ type __VLS_Slots = {} & {
9
9
  default?: (props: typeof __VLS_14) => any;
10
10
  };
11
11
  declare const __VLS_base: _$vue.DefineComponent<MenubarContentProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
12
+ entryFocus: (event: Event) => any;
12
13
  escapeKeyDown: (event: KeyboardEvent) => any;
13
14
  pointerDownOutside: (event: PointerDownOutsideEvent) => any;
14
15
  focusOutside: (event: FocusOutsideEvent) => any;
15
16
  interactOutside: (event: PointerDownOutsideEvent | FocusOutsideEvent) => any;
16
- entryFocus: (event: Event) => any;
17
17
  openAutoFocus: (event: Event) => any;
18
18
  closeAutoFocus: (event: Event) => any;
19
19
  }, string, _$vue.PublicProps, Readonly<MenubarContentProps> & Readonly<{
20
+ onEntryFocus?: ((event: Event) => any) | undefined;
20
21
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
21
22
  onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
22
23
  onFocusOutside?: ((event: FocusOutsideEvent) => any) | undefined;
23
24
  onInteractOutside?: ((event: PointerDownOutsideEvent | FocusOutsideEvent) => any) | undefined;
24
- onEntryFocus?: ((event: Event) => any) | undefined;
25
25
  onOpenAutoFocus?: ((event: Event) => any) | undefined;
26
26
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
27
27
  }>, {
@@ -8,19 +8,19 @@ type __VLS_Slots = {} & {
8
8
  default?: (props: typeof __VLS_10) => any;
9
9
  };
10
10
  declare const __VLS_base: _$vue.DefineComponent<MenubarSubContentProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
11
+ entryFocus: (event: Event) => any;
11
12
  escapeKeyDown: (event: KeyboardEvent) => any;
12
13
  pointerDownOutside: (event: PointerDownOutsideEvent) => any;
13
14
  focusOutside: (event: FocusOutsideEvent) => any;
14
15
  interactOutside: (event: PointerDownOutsideEvent | FocusOutsideEvent) => any;
15
- entryFocus: (event: Event) => any;
16
16
  openAutoFocus: (event: Event) => any;
17
17
  closeAutoFocus: (event: Event) => any;
18
18
  }, string, _$vue.PublicProps, Readonly<MenubarSubContentProps> & Readonly<{
19
+ onEntryFocus?: ((event: Event) => any) | undefined;
19
20
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
20
21
  onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
21
22
  onFocusOutside?: ((event: FocusOutsideEvent) => any) | undefined;
22
23
  onInteractOutside?: ((event: PointerDownOutsideEvent | FocusOutsideEvent) => any) | undefined;
23
- onEntryFocus?: ((event: Event) => any) | undefined;
24
24
  onOpenAutoFocus?: ((event: Event) => any) | undefined;
25
25
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
26
26
  }>, {}, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
@@ -16,11 +16,11 @@ declare const __VLS_base: _$vue.DefineComponent<PaginationRootProps, {}, {}, {},
16
16
  "onUpdate:page"?: ((value: number) => any) | undefined;
17
17
  "onUpdate:pageSize"?: ((value: number) => any) | undefined;
18
18
  }>, {
19
+ defaultPage: number;
20
+ defaultPageSize: number;
19
21
  total: number;
20
22
  siblingCount: number;
21
23
  showEdges: boolean;
22
- defaultPage: number;
23
- defaultPageSize: number;
24
24
  }, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
25
25
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
26
26
  declare const _default: typeof __VLS_export;
@@ -14,8 +14,8 @@ declare const __VLS_base: _$vue.DefineComponent<PopoverRootProps, {}, {}, {}, {}
14
14
  }, string, _$vue.PublicProps, Readonly<PopoverRootProps> & Readonly<{
15
15
  "onUpdate:open"?: ((value: boolean) => any) | undefined;
16
16
  }>, {
17
- open: boolean;
18
17
  defaultOpen: boolean;
18
+ open: boolean;
19
19
  modal: boolean;
20
20
  }, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
21
21
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;