@soybeanjs/headless 0.19.0 → 0.20.0

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 (149) hide show
  1. package/dist/components/alert/alert-compact.vue.d.ts +2 -2
  2. package/dist/components/anchor/anchor-root.vue.d.ts +1 -1
  3. package/dist/components/autocomplete/autocomplete-root.js +1 -1
  4. package/dist/components/autocomplete/autocomplete-root.vue.d.ts +1 -1
  5. package/dist/components/backtop/backtop.vue.d.ts +1 -1
  6. package/dist/components/bottom-sheet/bottom-sheet-compact.js +1 -1
  7. package/dist/components/bottom-sheet/bottom-sheet-root-nested.js +1 -1
  8. package/dist/components/bottom-sheet/bottom-sheet-root-nested.vue.d.ts +2 -2
  9. package/dist/components/bottom-sheet/bottom-sheet-root.js +1 -1
  10. package/dist/components/calendar/calendar-compact.js +1 -1
  11. package/dist/components/calendar-range/calendar-range-root.vue.d.ts +2 -2
  12. package/dist/components/card/card-root.vue.d.ts +1 -1
  13. package/dist/components/card/types.d.ts +2 -2
  14. package/dist/components/checkbox/checkbox-root.vue.d.ts +1 -1
  15. package/dist/components/clipboard/clipboard.vue.d.ts +5 -5
  16. package/dist/components/collapsible/collapsible-root.vue.d.ts +1 -1
  17. package/dist/components/color-area/color-area-compact.vue.d.ts +2 -2
  18. package/dist/components/color-area/color-area-root.vue.d.ts +2 -2
  19. package/dist/components/color-field/color-field-root.vue.d.ts +1 -1
  20. package/dist/components/color-picker/color-picker-compact.vue.d.ts +4 -4
  21. package/dist/components/color-picker/color-picker-root.vue.d.ts +2 -2
  22. package/dist/components/color-slider/color-slider-compact.vue.d.ts +2 -2
  23. package/dist/components/color-slider/color-slider-root.vue.d.ts +2 -2
  24. package/dist/components/color-swatch-picker/color-swatch-picker-root.js +1 -1
  25. package/dist/components/color-swatch-picker/types.d.ts +2 -2
  26. package/dist/components/combobox/combobox-compact.vue.d.ts +3 -3
  27. package/dist/components/combobox/combobox-content-impl.js +1 -1
  28. package/dist/components/combobox/combobox-root.js +1 -1
  29. package/dist/components/config-provider/config-provider.js +14 -2
  30. package/dist/components/context-menu/context-menu-checkbox-compact.vue.d.ts +3 -3
  31. package/dist/components/context-menu/context-menu-compact.vue.d.ts +2 -2
  32. package/dist/components/context-menu/context-menu-content.vue.d.ts +2 -2
  33. package/dist/components/context-menu/context-menu-radio-compact.vue.d.ts +3 -3
  34. package/dist/components/context-menu/context-menu-wrapper-compact.vue.d.ts +2 -2
  35. package/dist/components/date-field/date-field-root.vue.d.ts +2 -2
  36. package/dist/components/date-picker/date-picker-compact.vue.d.ts +7 -7
  37. package/dist/components/date-range-field/date-range-field-root.vue.d.ts +2 -2
  38. package/dist/components/date-range-picker/date-range-picker-compact.vue.d.ts +7 -7
  39. package/dist/components/dialog/dialog-compact.js +1 -1
  40. package/dist/components/dialog/dialog-compact.vue.d.ts +6 -6
  41. package/dist/components/dialog/dialog-popup-impl.js +1 -1
  42. package/dist/components/dialog/dialog-root.js +1 -1
  43. package/dist/components/dialog/state.js +1 -1
  44. package/dist/components/dialog/types.d.ts +5 -1
  45. package/dist/components/dropdown-menu/dropdown-menu-checkbox-compact.vue.d.ts +3 -3
  46. package/dist/components/dropdown-menu/dropdown-menu-compact.vue.d.ts +2 -2
  47. package/dist/components/dropdown-menu/dropdown-menu-content.vue.d.ts +2 -2
  48. package/dist/components/dropdown-menu/dropdown-menu-radio-compact.vue.d.ts +3 -3
  49. package/dist/components/dropdown-menu/dropdown-menu-root.vue.d.ts +1 -1
  50. package/dist/components/dropdown-menu/dropdown-menu-wrapper-compact.vue.d.ts +2 -2
  51. package/dist/components/editable/editable-compact.vue.d.ts +2 -2
  52. package/dist/components/editable/editable-root.vue.d.ts +2 -2
  53. package/dist/components/editable/types.d.ts +2 -2
  54. package/dist/components/hover-card/hover-card-compact.js +1 -1
  55. package/dist/components/hover-card/hover-card-compact.vue.d.ts +0 -1
  56. package/dist/components/hover-card/hover-card-root.vue.d.ts +1 -1
  57. package/dist/components/hover-card/types.d.ts +2 -2
  58. package/dist/components/input-otp/input-otp-compact.vue.d.ts +2 -2
  59. package/dist/components/input-otp/input-otp-root.vue.d.ts +2 -2
  60. package/dist/components/layout/layout-classic-compact.vue.d.ts +1 -1
  61. package/dist/components/layout/layout-compact.vue.d.ts +1 -1
  62. package/dist/components/layout/layout-root.vue.d.ts +1 -1
  63. package/dist/components/listbox/listbox-root.js +1 -1
  64. package/dist/components/menu/menu-content.vue.d.ts +2 -2
  65. package/dist/components/menu/menu-option-compact.vue.d.ts +2 -2
  66. package/dist/components/menu/menu-options-compact.vue.d.ts +2 -2
  67. package/dist/components/menu/menu-sub-content.vue.d.ts +2 -2
  68. package/dist/components/menubar/menubar-compact.vue.d.ts +3 -3
  69. package/dist/components/menubar/menubar-content.vue.d.ts +2 -2
  70. package/dist/components/menubar/menubar-root.js +1 -1
  71. package/dist/components/menubar/menubar-sub-content.vue.d.ts +2 -2
  72. package/dist/components/navigation-menu/context.js +1 -1
  73. package/dist/components/navigation-menu/index.d.ts +3 -3
  74. package/dist/components/navigation-menu/index.js +1 -1
  75. package/dist/components/navigation-menu/navigation-menu-compact.js +1 -1
  76. package/dist/components/navigation-menu/navigation-menu-compact.vue.d.ts +2 -2
  77. package/dist/components/navigation-menu/navigation-menu-indicator.js +1 -1
  78. package/dist/components/navigation-menu/navigation-menu-item-slot-compact.js +1 -0
  79. package/dist/components/navigation-menu/navigation-menu-list.js +1 -1
  80. package/dist/components/navigation-menu/navigation-menu-option-compact.js +1 -0
  81. package/dist/components/navigation-menu/navigation-menu-root.js +1 -1
  82. package/dist/components/navigation-menu/navigation-menu-root.vue.d.ts +1 -2
  83. package/dist/components/navigation-menu/navigation-menu-sub-option-compact.js +1 -0
  84. package/dist/components/navigation-menu/navigation-menu-viewport.js +1 -1
  85. package/dist/components/navigation-menu/shared.js +1 -1
  86. package/dist/components/navigation-menu/types.d.ts +93 -54
  87. package/dist/components/page-tabs/page-tabs-compact.vue.d.ts +2 -2
  88. package/dist/components/page-tabs/page-tabs-item.vue.d.ts +2 -2
  89. package/dist/components/pagination/pagination-first.js +1 -1
  90. package/dist/components/pagination/pagination-last.js +1 -1
  91. package/dist/components/pagination/pagination-next.js +1 -1
  92. package/dist/components/pagination/pagination-prev.js +1 -1
  93. package/dist/components/pagination/pagination-root.vue.d.ts +2 -2
  94. package/dist/components/pagination/types.d.ts +10 -10
  95. package/dist/components/popconfirm/popconfirm-compact.vue.d.ts +5 -5
  96. package/dist/components/popover/popover-compact.vue.d.ts +1 -1
  97. package/dist/components/popper/popper-positioner.vue.d.ts +1 -1
  98. package/dist/components/progress/state.js +1 -1
  99. package/dist/components/progress/types.d.ts +4 -4
  100. package/dist/components/radio-group/context.d.ts +3 -2
  101. package/dist/components/radio-group/context.js +1 -1
  102. package/dist/components/radio-group/index.d.ts +10 -9
  103. package/dist/components/radio-group/index.js +1 -1
  104. package/dist/components/radio-group/radio-group-card-compact.js +1 -0
  105. package/dist/components/radio-group/radio-group-card-compact.vue.d.ts +21 -0
  106. package/dist/components/radio-group/radio-group-compact.js +1 -1
  107. package/dist/components/radio-group/radio-group-compact.vue.d.ts +4 -5
  108. package/dist/components/radio-group/radio-group-root.vue.d.ts +5 -5
  109. package/dist/components/radio-group/types.d.ts +67 -13
  110. package/dist/components/scroll-area/types.d.ts +2 -2
  111. package/dist/components/select/select-compact.vue.d.ts +2 -2
  112. package/dist/components/separator/types.d.ts +2 -2
  113. package/dist/components/slider/types.d.ts +2 -2
  114. package/dist/components/splitter/splitter-group.vue.d.ts +1 -1
  115. package/dist/components/splitter/splitter-panel.vue.d.ts +2 -2
  116. package/dist/components/stepper/types.d.ts +2 -2
  117. package/dist/components/switch/switch-compact.js +1 -1
  118. package/dist/components/switch/switch-root.js +1 -1
  119. package/dist/components/switch/types.d.ts +3 -1
  120. package/dist/components/tabs/tabs-indicator.js +1 -1
  121. package/dist/components/tabs/tabs-root.vue.d.ts +1 -1
  122. package/dist/components/tags-input/tags-input-compact.vue.d.ts +2 -2
  123. package/dist/components/tags-input/tags-input-root.vue.d.ts +2 -2
  124. package/dist/components/time-field/time-field-root.vue.d.ts +1 -1
  125. package/dist/components/time-range-field/time-range-field-root.vue.d.ts +2 -2
  126. package/dist/components/toast/state.js +1 -1
  127. package/dist/components/toast/toaster.vue.d.ts +1 -1
  128. package/dist/components/toolbar/toolbar-link.js +1 -1
  129. package/dist/components/toolbar/toolbar-link.vue.d.ts +1 -2
  130. package/dist/components/toolbar/toolbar-root.js +1 -1
  131. package/dist/components/toolbar/toolbar-separator.js +1 -1
  132. package/dist/components/toolbar/toolbar-toggle-group.js +1 -1
  133. package/dist/components/toolbar/types.d.ts +7 -2
  134. package/dist/components/tooltip/tooltip-compact.vue.d.ts +1 -1
  135. package/dist/components/tooltip/tooltip-root.vue.d.ts +1 -1
  136. package/dist/components/tooltip/types.d.ts +2 -2
  137. package/dist/components/tree-menu/tree-menu-root.vue.d.ts +1 -1
  138. package/dist/constants/components.js +1 -1
  139. package/dist/index.d.ts +132 -131
  140. package/dist/index.js +1 -1
  141. package/dist/namespaced/index.d.ts +268 -266
  142. package/dist/namespaced/index.js +1 -1
  143. package/dist/types/common.d.ts +2 -1
  144. package/dist/types/index.d.ts +2 -2
  145. package/package.json +5 -5
  146. /package/dist/_virtual/{_@oxc-project_runtime@0.127.0 → _@oxc-project_runtime@0.129.0}/helpers/defineProperty.js +0 -0
  147. /package/dist/_virtual/{_@oxc-project_runtime@0.127.0 → _@oxc-project_runtime@0.129.0}/helpers/toPrimitive.js +0 -0
  148. /package/dist/_virtual/{_@oxc-project_runtime@0.127.0 → _@oxc-project_runtime@0.129.0}/helpers/toPropertyKey.js +0 -0
  149. /package/dist/_virtual/{_@oxc-project_runtime@0.127.0 → _@oxc-project_runtime@0.129.0}/helpers/typeof.js +0 -0
@@ -18,24 +18,24 @@ declare const __VLS_base: _$vue.DefineComponent<InputOtpRootProps, {
18
18
  }, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
19
19
  input: (value: string) => any;
20
20
  select: (event: Event) => any;
21
+ "update:modelValue": (value: string) => any;
21
22
  change: (event: Event) => any;
22
23
  blur: (event: FocusEvent) => any;
23
24
  focus: (event: FocusEvent) => any;
24
25
  mouseleave: (event: MouseEvent) => any;
25
26
  mouseover: (event: MouseEvent) => any;
26
27
  paste: (event: ClipboardEvent) => any;
27
- "update:modelValue": (value: string) => any;
28
28
  complete: (value: string) => any;
29
29
  }, string, _$vue.PublicProps, Readonly<InputOtpRootProps> & Readonly<{
30
30
  onInput?: ((value: string) => any) | undefined;
31
31
  onSelect?: ((event: Event) => any) | undefined;
32
+ "onUpdate:modelValue"?: ((value: string) => any) | undefined;
32
33
  onChange?: ((event: Event) => any) | undefined;
33
34
  onBlur?: ((event: FocusEvent) => any) | undefined;
34
35
  onFocus?: ((event: FocusEvent) => any) | undefined;
35
36
  onMouseleave?: ((event: MouseEvent) => any) | undefined;
36
37
  onMouseover?: ((event: MouseEvent) => any) | undefined;
37
38
  onPaste?: ((event: ClipboardEvent) => any) | undefined;
38
- "onUpdate:modelValue"?: ((value: string) => any) | undefined;
39
39
  onComplete?: ((value: string) => any) | undefined;
40
40
  }>, {
41
41
  autocomplete: string;
@@ -10,8 +10,8 @@ declare const __VLS_base: _$vue.DefineComponent<LayoutClassicCompactProps, {}, {
10
10
  "onUpdate:open"?: ((open: boolean) => any) | undefined;
11
11
  }>, {
12
12
  orientation: DataOrientation;
13
- defaultOpen: boolean;
14
13
  open: boolean;
14
+ defaultOpen: boolean;
15
15
  sidebarVisible: boolean;
16
16
  headerVisible: boolean;
17
17
  tabVisible: boolean;
@@ -8,8 +8,8 @@ declare const __VLS_base: _$vue.DefineComponent<LayoutCompactProps, {}, {}, {},
8
8
  }, string, _$vue.PublicProps, Readonly<LayoutCompactProps> & Readonly<{
9
9
  "onUpdate:open"?: ((open: boolean) => any) | undefined;
10
10
  }>, {
11
- defaultOpen: boolean;
12
11
  open: boolean;
12
+ defaultOpen: boolean;
13
13
  sidebarVisible: boolean;
14
14
  headerVisible: boolean;
15
15
  tabVisible: boolean;
@@ -15,8 +15,8 @@ declare const __VLS_base: _$vue.DefineComponent<LayoutRootProps, {}, {}, {}, {},
15
15
  "onUpdate:open"?: ((open: boolean) => any) | undefined;
16
16
  }>, {
17
17
  collapsible: LayoutCollapsible;
18
- defaultOpen: boolean;
19
18
  open: boolean;
19
+ defaultOpen: boolean;
20
20
  side: LayoutSide;
21
21
  variant: LayoutVariant;
22
22
  pxToRem: (px: number) => number;
@@ -1 +1 @@
1
- import{isFormControl as e,transformPropsToContext as t}from"../../shared/vue.js";import"../../shared/index.js";import{useSelection as n}from"../../composables/use-selection.js";import"../../composables/index.js";import{provideListboxRootContext as r,useListboxUi as i}from"./context.js";import a from"../visually-hidden/visually-hidden-input.js";import{computed as o,createBlock as s,createCommentVNode as c,createElementBlock as l,defineComponent as u,nextTick as d,normalizeClass as f,openBlock as p,renderSlot as m,unref as h,watch as g}from"vue";const _=[`data-disabled`,`dir`],v=u({name:`ListboxRoot`,__name:`listbox-root`,props:{orientation:{default:`vertical`},dir:{},disabled:{type:Boolean},highlightOnHover:{type:Boolean},modelValue:{default:void 0},defaultValue:{},multiple:{},clearable:{type:Boolean,default:!0},selectionBehavior:{default:`toggle`},name:{},required:{type:Boolean}},emits:[`update:modelValue`,`highlight`,`entryFocus`,`leave`],setup(u,{expose:v,emit:y}){let b=u,x=y,S=i(`root`),{modelValue:C,isMultiple:w,onModelValueChange:T}=n(b,e=>{x(`update:modelValue`,e)}),{rootElement:E,setRootElement:D,isUserAction:O,highlightedElement:k,highlightSelected:A,highlightFirstItem:j,highlightItem:M,getItems:N}=r({...t(b,[`dir`,`orientation`,`disabled`,`highlightOnHover`,`selectionBehavior`]),modelValue:C,isMultiple:w,onModelValueChange:T,onHighlight(e){x(`highlight`,e)},onEntryFocus(e){x(`entryFocus`,e)},onLeave(e){x(`leave`,e)}}),P=o(()=>e(E.value));return g(C,()=>{O.value||d(()=>{A()})},{immediate:!0,deep:!0}),v({highlightedElement:k,highlightItem:M,highlightFirstItem:j,highlightSelected:A,getItems:N}),(e,t)=>(p(),l(`div`,{ref:h(D),"data-soybean-listbox-root":``,class:f(h(S)),"data-disabled":u.disabled?``:void 0,dir:u.dir,onPointerleave:t[0]||(t[0]=(...t)=>e.onLeave&&e.onLeave(...t)),onFocusout:t[1]||(t[1]=(...t)=>e.onFocusout&&e.onFocusout(...t))},[m(e.$slots,`default`,{modelValue:h(C)}),P.value&&u.name?(p(),s(a,{key:0,name:u.name,value:h(C),disabled:u.disabled,required:u.required},null,8,[`name`,`value`,`disabled`,`required`])):c(`v-if`,!0)],42,_))}});export{v as default};
1
+ import{isFormControl as e,transformPropsToContext as t}from"../../shared/vue.js";import{useDirection as n}from"../config-provider/context.js";import"../../shared/index.js";import{useSelection as r}from"../../composables/use-selection.js";import"../../composables/index.js";import{provideListboxRootContext as i,useListboxUi as a}from"./context.js";import o from"../visually-hidden/visually-hidden-input.js";import{computed as s,createBlock as c,createCommentVNode as l,createElementBlock as u,defineComponent as d,nextTick as f,normalizeClass as p,openBlock as m,renderSlot as h,unref as g,watch as _}from"vue";const v=[`data-disabled`,`dir`],y=d({name:`ListboxRoot`,__name:`listbox-root`,props:{orientation:{default:`vertical`},dir:{},disabled:{type:Boolean},highlightOnHover:{type:Boolean},modelValue:{default:void 0},defaultValue:{},multiple:{},clearable:{type:Boolean,default:!0},selectionBehavior:{default:`toggle`},name:{},required:{type:Boolean}},emits:[`update:modelValue`,`highlight`,`entryFocus`,`leave`],setup(d,{expose:y,emit:b}){let x=d,S=b,C=a(`root`),w=n(()=>x.dir),{modelValue:T,isMultiple:E,onModelValueChange:D}=r(x,e=>{S(`update:modelValue`,e)}),{rootElement:O,setRootElement:k,isUserAction:A,highlightedElement:j,highlightSelected:M,highlightFirstItem:N,highlightItem:P,getItems:F}=i({...t(x,[`orientation`,`disabled`,`highlightOnHover`,`selectionBehavior`]),dir:w,modelValue:T,isMultiple:E,onModelValueChange:D,onHighlight(e){S(`highlight`,e)},onEntryFocus(e){S(`entryFocus`,e)},onLeave(e){S(`leave`,e)}}),I=s(()=>e(O.value));return _(T,()=>{A.value||f(()=>{M()})},{immediate:!0,deep:!0}),y({highlightedElement:j,highlightItem:P,highlightFirstItem:N,highlightSelected:M,getItems:F}),(e,t)=>(m(),u(`div`,{ref:g(k),"data-soybean-listbox-root":``,class:p(g(C)),"data-disabled":d.disabled?``:void 0,dir:g(w),onPointerleave:t[0]||(t[0]=(...t)=>e.onLeave&&e.onLeave(...t)),onFocusout:t[1]||(t[1]=(...t)=>e.onFocusout&&e.onFocusout(...t))},[h(e.$slots,`default`,{modelValue:g(T)}),I.value&&d.name?(m(),c(o,{key:0,name:d.name,value:g(T),disabled:d.disabled,required:d.required},null,8,[`name`,`value`,`disabled`,`required`])):l(`v-if`,!0)],42,v))}});export{y as default};
@@ -8,21 +8,21 @@ 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;
12
11
  escapeKeyDown: (event: KeyboardEvent) => any;
13
12
  pointerDownOutside: (event: PointerDownOutsideEvent) => any;
14
13
  focusOutside: (event: FocusOutsideEvent) => any;
15
14
  interactOutside: (event: PointerDownOutsideEvent | FocusOutsideEvent) => any;
16
15
  openAutoFocus: (event: Event) => any;
17
16
  closeAutoFocus: (event: Event) => any;
17
+ entryFocus: (event: Event) => any;
18
18
  }, string, _$vue.PublicProps, Readonly<MenuContentProps> & Readonly<{
19
- onEntryFocus?: ((event: Event) => any) | undefined;
20
19
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
21
20
  onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
22
21
  onFocusOutside?: ((event: FocusOutsideEvent) => any) | undefined;
23
22
  onInteractOutside?: ((event: PointerDownOutsideEvent | FocusOutsideEvent) => any) | undefined;
24
23
  onOpenAutoFocus?: ((event: Event) => any) | undefined;
25
24
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
25
+ onEntryFocus?: ((event: Event) => any) | undefined;
26
26
  }>, {}, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
27
27
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
28
28
  declare const _default: typeof __VLS_export;
@@ -8,20 +8,20 @@ declare const __VLS_export: <T extends DefinedValue = DefinedValue>(__VLS_props:
8
8
  props: _$vue.PublicProps & __VLS_PrettifyLocal<MenuOptionCompactProps<T> & {
9
9
  onSelect?: ((item: MenuOptionData<T>, event: Event) => any) | undefined;
10
10
  "onUpdate:open"?: ((value: boolean) => any) | undefined;
11
- onEntryFocus?: ((event: Event) => any) | undefined;
12
11
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
13
12
  onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
14
13
  onFocusOutside?: ((event: FocusOutsideEvent) => any) | undefined;
15
14
  onInteractOutside?: ((event: PointerDownOutsideEvent | FocusOutsideEvent) => any) | undefined;
16
15
  onOpenAutoFocus?: ((event: Event) => any) | undefined;
17
16
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
17
+ onEntryFocus?: ((event: Event) => any) | undefined;
18
18
  }> & (typeof globalThis extends {
19
19
  __VLS_PROPS_FALLBACK: infer P;
20
20
  } ? P : {});
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: "update:open", value: boolean) => void) & ((evt: "entryFocus", 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: "openAutoFocus", event: Event) => void) & ((evt: "closeAutoFocus", event: Event) => void);
24
+ emit: ((evt: "select", item: MenuOptionData<T>, 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) & ((evt: "entryFocus", event: Event) => void);
25
25
  }>) => _$vue.VNode & {
26
26
  __ctx?: Awaited<typeof __VLS_setup>;
27
27
  };
@@ -8,20 +8,20 @@ declare const __VLS_export: <T extends DefinedValue = DefinedValue>(__VLS_props:
8
8
  props: _$vue.PublicProps & __VLS_PrettifyLocal<MenuOptionsCompactProps<T> & {
9
9
  onSelect?: ((item: MenuOptionData<T>, event: Event) => any) | undefined;
10
10
  "onUpdate:open"?: ((value: boolean) => any) | undefined;
11
- onEntryFocus?: ((event: Event) => any) | undefined;
12
11
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
13
12
  onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
14
13
  onFocusOutside?: ((event: FocusOutsideEvent) => any) | undefined;
15
14
  onInteractOutside?: ((event: PointerDownOutsideEvent | FocusOutsideEvent) => any) | undefined;
16
15
  onOpenAutoFocus?: ((event: Event) => any) | undefined;
17
16
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
17
+ onEntryFocus?: ((event: Event) => any) | undefined;
18
18
  }> & (typeof globalThis extends {
19
19
  __VLS_PROPS_FALLBACK: infer P;
20
20
  } ? P : {});
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: "update:open", value: boolean) => void) & ((evt: "entryFocus", 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: "openAutoFocus", event: Event) => void) & ((evt: "closeAutoFocus", event: Event) => void);
24
+ emit: ((evt: "select", item: MenuOptionData<T>, 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) & ((evt: "entryFocus", event: Event) => void);
25
25
  }>) => _$vue.VNode & {
26
26
  __ctx?: Awaited<typeof __VLS_setup>;
27
27
  };
@@ -8,21 +8,21 @@ 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;
12
11
  escapeKeyDown: (event: KeyboardEvent) => any;
13
12
  pointerDownOutside: (event: PointerDownOutsideEvent) => any;
14
13
  focusOutside: (event: FocusOutsideEvent) => any;
15
14
  interactOutside: (event: PointerDownOutsideEvent | FocusOutsideEvent) => any;
16
15
  openAutoFocus: (event: Event) => any;
17
16
  closeAutoFocus: (event: Event) => any;
17
+ entryFocus: (event: Event) => any;
18
18
  }, string, _$vue.PublicProps, Readonly<MenuSubContentProps> & Readonly<{
19
- onEntryFocus?: ((event: Event) => any) | undefined;
20
19
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
21
20
  onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
22
21
  onFocusOutside?: ((event: FocusOutsideEvent) => any) | undefined;
23
22
  onInteractOutside?: ((event: PointerDownOutsideEvent | FocusOutsideEvent) => any) | undefined;
24
23
  onOpenAutoFocus?: ((event: Event) => any) | undefined;
25
24
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
25
+ onEntryFocus?: ((event: Event) => any) | undefined;
26
26
  }>, {
27
27
  prioritizePosition: boolean;
28
28
  }, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
@@ -9,21 +9,21 @@ 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:open"?: ((value: boolean) => any) | undefined;
12
- "onUpdate:modelValue"?: ((value: T) => any) | undefined;
13
- onEntryFocus?: ((event: Event) => any) | undefined;
14
12
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
15
13
  onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
16
14
  onFocusOutside?: ((event: FocusOutsideEvent) => any) | undefined;
17
15
  onInteractOutside?: ((event: PointerDownOutsideEvent | FocusOutsideEvent) => any) | undefined;
18
16
  onOpenAutoFocus?: ((event: Event) => any) | undefined;
19
17
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
18
+ "onUpdate:modelValue"?: ((value: T) => any) | undefined;
19
+ onEntryFocus?: ((event: Event) => any) | undefined;
20
20
  }> & (typeof globalThis extends {
21
21
  __VLS_PROPS_FALLBACK: infer P;
22
22
  } ? P : {});
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:open", value: boolean) => void) & ((evt: "update:modelValue", value: T) => void) & ((evt: "entryFocus", 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: "openAutoFocus", event: Event) => void) & ((evt: "closeAutoFocus", event: Event) => void);
26
+ emit: ((evt: "select", item: MenuOptionData<T>, 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) & ((evt: "update:modelValue", value: T) => void) & ((evt: "entryFocus", event: Event) => void);
27
27
  }>) => _$vue.VNode & {
28
28
  __ctx?: Awaited<typeof __VLS_setup>;
29
29
  };
@@ -9,21 +9,21 @@ 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;
13
12
  escapeKeyDown: (event: KeyboardEvent) => any;
14
13
  pointerDownOutside: (event: PointerDownOutsideEvent) => any;
15
14
  focusOutside: (event: FocusOutsideEvent) => any;
16
15
  interactOutside: (event: PointerDownOutsideEvent | FocusOutsideEvent) => any;
17
16
  openAutoFocus: (event: Event) => any;
18
17
  closeAutoFocus: (event: Event) => any;
18
+ entryFocus: (event: Event) => any;
19
19
  }, string, _$vue.PublicProps, Readonly<MenubarContentProps> & Readonly<{
20
- onEntryFocus?: ((event: Event) => any) | undefined;
21
20
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
22
21
  onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
23
22
  onFocusOutside?: ((event: FocusOutsideEvent) => any) | undefined;
24
23
  onInteractOutside?: ((event: PointerDownOutsideEvent | FocusOutsideEvent) => any) | undefined;
25
24
  onOpenAutoFocus?: ((event: Event) => any) | undefined;
26
25
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
26
+ onEntryFocus?: ((event: Event) => any) | undefined;
27
27
  }>, {
28
28
  align: Align;
29
29
  }, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
@@ -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{useForwardElement as n}from"../../composables/use-forward-element.js";import{useOmitProps as r}from"../../composables/use-props.js";import"../../composables/index.js";import{Primitive as i}from"../primitive/primitive.js";import"../primitive/index.js";import a from"../roving-focus/roving-focus-group.js";import"../roving-focus/index.js";import{provideMenubarCollectionContext as o,provideMenubarRootContext as s,useMenubarUi as c}from"./context.js";import{computed as l,createBlock as u,createVNode as d,defineComponent as f,mergeProps as p,openBlock as m,renderSlot as h,shallowRef as g,unref as _,withCtx as v}from"vue";const y=f({name:`MenubarRoot`,__name:`menubar-root`,props:{modelValue:{default:void 0},defaultValue:{},dir:{},loop:{type:Boolean,default:!1},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`],setup(f,{emit:y}){let b=f,x=y,S=c(`root`),C=r(b,[`class`,`modelValue`,`defaultValue`,`dir`,`loop`]),w=l(()=>[S.value,b.class]),T=t(()=>b.modelValue,e=>{x(`update:modelValue`,e)},b.defaultValue??``),E=g(null);s({modelValue:T,currentTabStopId:E,...e(b,[`dir`,`loop`])});let{onContainerElementChange:D}=o(),[O,k]=n(D);return(e,t)=>(m(),u(_(a),{"current-tab-stop-id":E.value,"onUpdate:currentTabStopId":t[0]||(t[0]=e=>E.value=e),"as-child":``,orientation:`horizontal`,dir:f.dir,loop:f.loop},{default:v(()=>[d(_(i),p(_(C),{ref:_(k),as:f.as,"as-child":f.asChild,"data-soybean-menubar-root":``,class:w.value,role:`menubar`,dir:f.dir}),{default:v(()=>[h(e.$slots,`default`,{modelValue:_(T)})]),_:3},16,[`as`,`as-child`,`class`,`dir`])]),_:3},8,[`current-tab-stop-id`,`dir`,`loop`]))}});export{y 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{useForwardElement as n}from"../../composables/use-forward-element.js";import{useOmitProps as r}from"../../composables/use-props.js";import"../../composables/index.js";import{Primitive as i}from"../primitive/primitive.js";import"../primitive/index.js";import a from"../roving-focus/roving-focus-group.js";import"../roving-focus/index.js";import{provideMenubarCollectionContext as o,provideMenubarRootContext as s,useMenubarUi as c}from"./context.js";import{createBlock as l,createVNode as u,defineComponent as d,mergeProps as f,openBlock as p,renderSlot as m,shallowRef as h,unref as g,withCtx as _}from"vue";const v=d({name:`MenubarRoot`,__name:`menubar-root`,props:{modelValue:{default:void 0},defaultValue:{},dir:{},loop:{type:Boolean,default:!1},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`],setup(d,{emit:v}){let y=d,b=v,x=c(`root`),S=r(y,[`class`,`modelValue`,`defaultValue`,`dir`,`loop`]),C=t(()=>y.modelValue,e=>{b(`update:modelValue`,e)},y.defaultValue??``),w=h(null);s({modelValue:C,currentTabStopId:w,...e(y,[`dir`,`loop`])});let{onContainerElementChange:T}=o(),[E,D]=n(T);return(e,t)=>(p(),l(g(a),{"current-tab-stop-id":w.value,"onUpdate:currentTabStopId":t[0]||(t[0]=e=>w.value=e),"as-child":``,orientation:`horizontal`,dir:d.dir,loop:d.loop},{default:_(()=>[u(g(i),f(g(S),{ref:g(D),as:d.as,"as-child":d.asChild,"data-soybean-menubar-root":``,class:g(x),role:`menubar`,dir:d.dir}),{default:_(()=>[m(e.$slots,`default`,{modelValue:g(C)})]),_:3},16,[`as`,`as-child`,`class`,`dir`])]),_:3},8,[`current-tab-stop-id`,`dir`,`loop`]))}});export{v as default};
@@ -8,21 +8,21 @@ 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;
12
11
  escapeKeyDown: (event: KeyboardEvent) => any;
13
12
  pointerDownOutside: (event: PointerDownOutsideEvent) => any;
14
13
  focusOutside: (event: FocusOutsideEvent) => any;
15
14
  interactOutside: (event: PointerDownOutsideEvent | FocusOutsideEvent) => any;
16
15
  openAutoFocus: (event: Event) => any;
17
16
  closeAutoFocus: (event: Event) => any;
17
+ entryFocus: (event: Event) => any;
18
18
  }, string, _$vue.PublicProps, Readonly<MenubarSubContentProps> & Readonly<{
19
- onEntryFocus?: ((event: Event) => any) | undefined;
20
19
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
21
20
  onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
22
21
  onFocusOutside?: ((event: FocusOutsideEvent) => any) | undefined;
23
22
  onInteractOutside?: ((event: PointerDownOutsideEvent | FocusOutsideEvent) => any) | undefined;
24
23
  onOpenAutoFocus?: ((event: Event) => any) | undefined;
25
24
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
25
+ onEntryFocus?: ((event: Event) => any) | undefined;
26
26
  }>, {}, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
27
27
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
28
28
  declare const _default: typeof __VLS_export;
@@ -1 +1 @@
1
- import{getDisclosureState as e}from"../../shared/value.js";import{useContext as t}from"../../composables/use-context.js";import{useDirection as n}from"../config-provider/context.js";import"../../shared/index.js";import{useCollection as r}from"../../composables/use-collection.js";import{useForwardElement as i}from"../../composables/use-forward-element.js";import{useUiContext as a}from"../../composables/use-ui-context.js";import"../../composables/index.js";import{EVENT_ROOT_CONTENT_DISMISS as o}from"./shared.js";import{computed as s,shallowRef as c}from"vue";import{refAutoReset as l,useDebounceFn as u,useEventListener as d}from"@vueuse/core";const[f,p]=t(`NavigationMenuRoot`,e=>{let{modelValue:t,skipDelayDuration:r,delayDuration:a,disablePointerLeaveClose:f}=e,p=n(e.dir),m=c(),h=e=>{m.value=e},[g,_]=i(),[v,y]=i(),b=c(),x=e=>{b.value=e},S=c(new Set),C=e=>{S.value.add(e)},w=e=>{S.value.delete(e)},T=s(()=>S.value.has(t.value)),E=c(``),D=l(!1,r.value),O=u(e=>{typeof e==`string`&&(E.value=t.value,t.value=e)},s(()=>t.value!==``||D.value?150:a.value)),k=e=>{O(e)},A=()=>{D.value=!0,O(``)},j=e=>{O(e)},M=()=>{f.value||O(``)},N=e=>{E.value=t.value,t.value=e},P=()=>{E.value=t.value,t.value=``};return d(m,o,P),{...e,dir:p,baseId:`soybean-navigation-menu`,rootElement:m,onRootElementChange:h,viewportElement:g,setViewportElement:_,indicatorTrackElement:v,setIndicatorTrackElement:y,activeTriggerElement:b,values:S,addValue:C,removeValue:w,open:T,previousValue:E,onActiveTriggerElementChange:x,onTriggerEnter:k,onTriggerLeave:A,onContentEnter:j,onContentLeave:M,onItemSelect:N,onItemDismiss:P}}),{provideCollectionContext:m,useCollectionContext:h,useCollectionItem:g}=r(`NavigationMenu`),[_,v]=t(`NavigationMenuItem`,t=>{let[n,r]=i(),{modelValue:a,value:o}=t,l=c(),u=e=>{l.value=e},d=c(!1),f=s(()=>a.value===o),p=s(()=>e(f.value));return{...t,triggerElement:l,onTriggerElementChange:u,focusProxyElement:n,setFocusProxyElement:r,wasEscapeCloseRef:d,open:f,dataState:p}}),[y,b]=a(`NavigationMenuUi`);export{m as provideCollectionContext,_ as provideNavigationMenuItemContext,f as provideNavigationMenuRootContext,y as provideNavigationMenuUi,h as useCollectionContext,g as useCollectionItem,v as useNavigationMenuItemContext,p as useNavigationMenuRootContext,b as useNavigationMenuUi};
1
+ import{getDisclosureState as e}from"../../shared/value.js";import{useContext as t}from"../../composables/use-context.js";import"../../shared/index.js";import{useCollection as n}from"../../composables/use-collection.js";import{useForwardElement as r}from"../../composables/use-forward-element.js";import{useUiContext as i}from"../../composables/use-ui-context.js";import"../../composables/index.js";import{EVENT_ROOT_CONTENT_DISMISS as a}from"./shared.js";import{computed as o,shallowRef as s}from"vue";import{refAutoReset as c,useDebounceFn as l,useEventListener as u}from"@vueuse/core";const[d,f]=t(`NavigationMenuRoot`,e=>{let{modelValue:t,skipDelayDuration:n,delayDuration:i,disablePointerLeaveClose:d}=e,f=s(),p=e=>{f.value=e},[m,h]=r(),[g,_]=r(),v=s(),y=e=>{v.value=e},b=s(new Set),x=e=>{b.value.add(e)},S=e=>{b.value.delete(e)},C=o(()=>b.value.has(t.value)),w=s(``),T=c(!1,n.value),E=l(e=>{typeof e==`string`&&(w.value=t.value,t.value=e)},o(()=>t.value!==``||T.value?150:i.value)),D=e=>{E(e)},O=()=>{T.value=!0,E(``)},k=e=>{E(e)},A=()=>{d.value||E(``)},j=e=>{w.value=t.value,t.value=e},M=()=>{w.value=t.value,t.value=``};return u(f,a,M),{...e,baseId:`soybean-navigation-menu`,rootElement:f,onRootElementChange:p,viewportElement:m,setViewportElement:h,indicatorTrackElement:g,setIndicatorTrackElement:_,activeTriggerElement:v,values:b,addValue:x,removeValue:S,open:C,previousValue:w,onActiveTriggerElementChange:y,onTriggerEnter:D,onTriggerLeave:O,onContentEnter:k,onContentLeave:A,onItemSelect:j,onItemDismiss:M}}),{provideCollectionContext:p,useCollectionContext:m,useCollectionItem:h}=n(`NavigationMenu`),[g,_]=t(`NavigationMenuItem`,t=>{let[n,i]=r(),{modelValue:a,value:c}=t,l=s(),u=e=>{l.value=e},d=s(!1),f=o(()=>a.value===c),p=o(()=>e(f.value));return{...t,triggerElement:l,onTriggerElementChange:u,focusProxyElement:n,setFocusProxyElement:i,wasEscapeCloseRef:d,open:f,dataState:p}}),[v,y]=i(`NavigationMenuUi`);export{p as provideCollectionContext,g as provideNavigationMenuItemContext,d as provideNavigationMenuRootContext,v as provideNavigationMenuUi,m as useCollectionContext,h as useCollectionItem,_ as useNavigationMenuItemContext,f as useNavigationMenuRootContext,y as useNavigationMenuUi};
@@ -1,4 +1,5 @@
1
- import { NavigationMenuCompactEmits, NavigationMenuCompactProps, NavigationMenuCompactSlots, NavigationMenuContentEmits, NavigationMenuContentProps, NavigationMenuIndicatorProps, NavigationMenuItemData, NavigationMenuItemProps, NavigationMenuLinkEmits, NavigationMenuLinkProps, NavigationMenuListProps, NavigationMenuRootEmits, NavigationMenuRootProps, NavigationMenuSubEmits, NavigationMenuSubListProps, NavigationMenuSubProps, NavigationMenuTriggerProps, NavigationMenuUi, NavigationMenuUiSlot, NavigationMenuViewportProps } from "./types.js";
1
+ import { NavigationMenuCompactEmits, NavigationMenuCompactProps, NavigationMenuCompactSlots, NavigationMenuContentEmits, NavigationMenuContentProps, NavigationMenuIndicatorProps, NavigationMenuItemProps, NavigationMenuLinkEmits, NavigationMenuLinkProps, NavigationMenuListProps, NavigationMenuOptionData, NavigationMenuRootEmits, NavigationMenuRootProps, NavigationMenuSubEmits, NavigationMenuSubListProps, NavigationMenuSubProps, NavigationMenuTriggerProps, NavigationMenuUi, NavigationMenuUiSlot, NavigationMenuViewportProps } from "./types.js";
2
+ import { _default } from "./navigation-menu-compact.vue.js";
2
3
  import { _default as _default$6 } from "./navigation-menu-root.vue.js";
3
4
  import { _default as _default$5 } from "./navigation-menu-list.vue.js";
4
5
  import { _default as _default$3 } from "./navigation-menu-item.vue.js";
@@ -8,6 +9,5 @@ import { _default as _default$4 } from "./navigation-menu-link.vue.js";
8
9
  import { _default as _default$7 } from "./navigation-menu-sub-list.vue.js";
9
10
  import { _default as _default$9 } from "./navigation-menu-viewport.vue.js";
10
11
  import { _default as _default$2 } from "./navigation-menu-indicator.vue.js";
11
- import { _default } from "./navigation-menu-compact.vue.js";
12
12
  import { provideNavigationMenuUi } from "./context.js";
13
- export { _default as NavigationMenuCompact, type NavigationMenuCompactEmits, type NavigationMenuCompactProps, type NavigationMenuCompactSlots, _default$1 as NavigationMenuContent, type NavigationMenuContentEmits, type NavigationMenuContentProps, _default$2 as NavigationMenuIndicator, type NavigationMenuIndicatorProps, _default$3 as NavigationMenuItem, type NavigationMenuItemData, type NavigationMenuItemProps, _default$4 as NavigationMenuLink, type NavigationMenuLinkEmits, type NavigationMenuLinkProps, _default$5 as NavigationMenuList, type NavigationMenuListProps, _default$6 as NavigationMenuRoot, type NavigationMenuRootEmits, type NavigationMenuRootProps, type NavigationMenuSubEmits, _default$7 as NavigationMenuSubList, type NavigationMenuSubListProps, type NavigationMenuSubProps, _default$8 as NavigationMenuTrigger, type NavigationMenuTriggerProps, type NavigationMenuUi, type NavigationMenuUiSlot, _default$9 as NavigationMenuViewport, type NavigationMenuViewportProps, provideNavigationMenuUi };
13
+ export { _default as NavigationMenuCompact, type NavigationMenuCompactEmits, type NavigationMenuCompactProps, type NavigationMenuCompactSlots, _default$1 as NavigationMenuContent, type NavigationMenuContentEmits, type NavigationMenuContentProps, _default$2 as NavigationMenuIndicator, type NavigationMenuIndicatorProps, _default$3 as NavigationMenuItem, type NavigationMenuItemProps, _default$4 as NavigationMenuLink, type NavigationMenuLinkEmits, type NavigationMenuLinkProps, _default$5 as NavigationMenuList, type NavigationMenuListProps, type NavigationMenuOptionData, _default$6 as NavigationMenuRoot, type NavigationMenuRootEmits, type NavigationMenuRootProps, type NavigationMenuSubEmits, _default$7 as NavigationMenuSubList, type NavigationMenuSubListProps, type NavigationMenuSubProps, _default$8 as NavigationMenuTrigger, type NavigationMenuTriggerProps, type NavigationMenuUi, type NavigationMenuUiSlot, _default$9 as NavigationMenuViewport, type NavigationMenuViewportProps, provideNavigationMenuUi };
@@ -1 +1 @@
1
- import{provideNavigationMenuUi as e}from"./context.js";import t from"./navigation-menu-root.js";import n from"./navigation-menu-list.js";import r from"./navigation-menu-item.js";import i from"./navigation-menu-trigger.js";import a from"./navigation-menu-content.js";import o from"./navigation-menu-link.js";import s from"./navigation-menu-sub-list.js";import c from"./navigation-menu-viewport.js";import l from"./navigation-menu-indicator.js";import u from"./navigation-menu-compact.js";export{u as NavigationMenuCompact,a as NavigationMenuContent,l as NavigationMenuIndicator,r as NavigationMenuItem,o as NavigationMenuLink,n as NavigationMenuList,t as NavigationMenuRoot,s as NavigationMenuSubList,i as NavigationMenuTrigger,c as NavigationMenuViewport,e as provideNavigationMenuUi};
1
+ import{provideNavigationMenuUi as e}from"./context.js";import t from"./navigation-menu-indicator.js";import n from"./navigation-menu-list.js";import r from"./navigation-menu-content.js";import i from"./navigation-menu-item.js";import a from"./navigation-menu-link.js";import o from"./navigation-menu-sub-list.js";import s from"./navigation-menu-trigger.js";import c from"./navigation-menu-root.js";import l from"./navigation-menu-viewport.js";import u from"./navigation-menu-compact.js";export{u as NavigationMenuCompact,r as NavigationMenuContent,t as NavigationMenuIndicator,i as NavigationMenuItem,a as NavigationMenuLink,n as NavigationMenuList,c as NavigationMenuRoot,o as NavigationMenuSubList,s as NavigationMenuTrigger,l as NavigationMenuViewport,e as provideNavigationMenuUi};
@@ -1 +1 @@
1
- import{useOmitProps as e}from"../../composables/use-props.js";import"../../composables/index.js";import t from"../_icon/icon.js";import n from"./navigation-menu-root.js";import r from"./navigation-menu-list.js";import i from"./navigation-menu-item.js";import a from"./navigation-menu-trigger.js";import o from"./navigation-menu-content.js";import s from"./navigation-menu-link.js";import c from"./navigation-menu-sub-list.js";import l from"./navigation-menu-viewport.js";import u from"./navigation-menu-indicator.js";import{Fragment as d,createBlock as f,createCommentVNode as p,createElementBlock as m,createElementVNode as h,createVNode as g,defineComponent as _,guardReactiveProps as v,mergeProps as y,normalizeProps as b,openBlock as x,renderList as S,renderSlot as C,toDisplayString as w,unref as T,withCtx as E}from"vue";const D={key:0},O=_({name:`NavigationMenuCompact`,__name:`navigation-menu-compact`,props:{items:{},itemProps:{},linkProps:{},triggerProps:{},contentProps:{},listProps:{},subListProps:{},subItemProps:{},viewportProps:{},indicatorProps:{},modelValue:{},defaultValue:{},dir:{},orientation:{},delayDuration:{},skipDelayDuration:{},disableClickTrigger:{type:Boolean},disableHoverTrigger:{type:Boolean},disablePointerLeaveClose:{type:Boolean},unmountOnHide:{type:Boolean}},emits:[`update:modelValue`,`select`,`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`],setup(_,{emit:O}){let k=_,A=O,j=e(k,[`items`,`itemProps`,`linkProps`,`triggerProps`,`contentProps`,`listProps`,`subListProps`,`subItemProps`,`viewportProps`,`indicatorProps`]);function M(e){return!!(e.to||e.href)}function N(e){return M(e)?{...k.linkProps,disabled:e.disabled,to:e.to,href:e.href,target:e.target,external:e.external}:{}}function P(e){return!!e.children?.length}return(e,O)=>(x(),f(n,y(T(j),{"onUpdate:modelValue":O[7]||(O[7]=e=>A(`update:modelValue`,e))}),{default:E(()=>[g(r,b(v(_.listProps)),{default:E(()=>[(x(!0),m(d,null,S(_.items,n=>(x(),f(i,y({key:n.value},{ref_for:!0},_.itemProps,{value:n.value}),{default:E(()=>[p(` Simple link item (no children) `),P(n)?(x(),m(d,{key:1},[p(` Item with children (trigger + content) `),g(a,y({ref_for:!0},_.triggerProps,{disabled:n.disabled,"as-child":M(n)}),{default:E(()=>[M(n)?(x(),f(s,y({key:0,ref_for:!0},N(n),{onSelect:O[1]||(O[1]=e=>A(`select`,e))}),{default:E(()=>[C(e.$slots,`item`,{item:n,isTrigger:!0},()=>[C(e.$slots,`item-leading`,{item:n}),h(`span`,null,w(n.label),1),C(e.$slots,`item-trailing`,{item:n}),C(e.$slots,`item-trigger-icon`,{item:n},()=>[g(t,{icon:`lucide:chevron-down`,"aria-hidden":!0})])])]),_:2},1040)):C(e.$slots,`item`,{key:1,item:n,isTrigger:!0},()=>[C(e.$slots,`item-leading`,{item:n}),h(`span`,null,w(n.label),1),C(e.$slots,`item-trailing`,{item:n}),C(e.$slots,`item-trigger-icon`,{item:n},()=>[g(t,{icon:`lucide:chevron-down`,"aria-hidden":!0})])])]),_:2},1040,[`disabled`,`as-child`]),g(o,y({ref_for:!0},_.contentProps,{onFocusOutside:O[3]||(O[3]=e=>A(`focusOutside`,e)),onInteractOutside:O[4]||(O[4]=e=>A(`interactOutside`,e)),onPointerDownOutside:O[5]||(O[5]=e=>A(`pointerDownOutside`,e)),onEscapeKeyDown:O[6]||(O[6]=e=>A(`escapeKeyDown`,e))}),{default:E(()=>[C(e.$slots,`item-children`,{item:n},()=>[g(c,y({ref_for:!0},_.subListProps),{default:E(()=>[(x(!0),m(d,null,S(n.children,t=>(x(),f(i,y({key:t.value},{ref_for:!0},_.subItemProps,{value:t.value}),{default:E(()=>[g(s,y({ref_for:!0},N(t),{onSelect:O[2]||(O[2]=e=>A(`select`,e))}),{default:E(()=>[C(e.$slots,`item`,{item:t},()=>[C(e.$slots,`item-leading`,{item:t}),h(`span`,null,w(t.label),1),t.description?(x(),m(`span`,D,w(t.description),1)):p(`v-if`,!0),C(e.$slots,`item-trailing`,{item:t})])]),_:2},1040)]),_:2},1040,[`value`]))),128))]),_:2},1040)])]),_:2},1040)],64)):(x(),f(s,y({key:0,ref_for:!0},N(n),{onSelect:O[0]||(O[0]=e=>A(`select`,e))}),{default:E(({isHref:r})=>[C(e.$slots,`item`,{item:n},()=>[C(e.$slots,`item-leading`,{item:n}),h(`span`,null,w(n.label),1),C(e.$slots,`item-trailing`,{item:n}),r?C(e.$slots,`item-link-icon`,{key:0,item:n},()=>[g(t,{icon:`lucide:arrow-up-right`,"aria-hidden":!0})]):p(`v-if`,!0)])]),_:2},1040))]),_:2},1040,[`value`]))),128))]),_:3},16),g(u,b(v(_.indicatorProps)),{default:E(()=>[C(e.$slots,`indicator`,{},()=>[O[8]||(O[8]=h(`div`,null,null,-1))])]),_:3},16),g(l,b(v(_.viewportProps)),null,16)]),_:3},16))}});export{O as default};
1
+ import{e}from"../../node_modules/.pnpm/@soybeanjs_utils@0.1.1/node_modules/@soybeanjs/utils/dist/index.js";import{useForwardListeners as t}from"../../composables/use-forward-listeners.js";import{useOmitProps as n,usePickProps as r}from"../../composables/use-props.js";import"../../composables/index.js";import i from"../arrow/arrow.js";import{useNavigationMenuUi as a}from"./context.js";import o from"./navigation-menu-indicator.js";import s from"./navigation-menu-list.js";import c from"./navigation-menu-option-compact.js";import l from"./navigation-menu-root.js";import u from"./navigation-menu-viewport.js";import{Fragment as d,computed as f,createBlock as p,createElementBlock as m,createSlots as h,createVNode as g,defineComponent as _,guardReactiveProps as v,mergeProps as y,normalizeClass as b,normalizeProps as x,openBlock as S,renderList as C,renderSlot as w,toHandlers as T,unref as E,useSlots as D,withCtx as O}from"vue";const k=_({name:`NavigationMenuCompact`,__name:`navigation-menu-compact`,props:{items:{},modelValue:{},defaultValue:{},dir:{},orientation:{},delayDuration:{},skipDelayDuration:{},disableClickTrigger:{type:Boolean},disableHoverTrigger:{type:Boolean},disablePointerLeaveClose:{type:Boolean},unmountOnHide:{type:Boolean},itemProps:{},linkProps:{},triggerProps:{},contentProps:{},viewportProps:{},indicatorProps:{},listProps:{},subListProps:{},subItemProps:{}},emits:[`update:modelValue`,`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`select`],setup(_,{emit:k}){let A=_,j=k,M=D(),N=[`itemProps`,`linkProps`,`triggerProps`,`contentProps`,`viewportProps`,`indicatorProps`,`listProps`,`subListProps`,`subItemProps`],P=n(A,[`items`,...N]),F=r(A,[...N]),I=t(j),L=f(()=>e(M)),R=a();return(e,t)=>(S(),p(l,y(E(P),{"onUpdate:modelValue":t[0]||(t[0]=e=>j(`update:modelValue`,e))}),{default:O(()=>[g(s,x(v(_.listProps)),{default:O(()=>[(S(!0),m(d,null,C(_.items,t=>(S(),p(c,y({key:t.value},{ref_for:!0},E(F),{item:t},T(E(I))),h({_:2},[C(L.value,t=>({name:t,fn:O(n=>[w(e.$slots,t,y({ref_for:!0},n))])}))]),1040,[`item`]))),128))]),_:3},16),g(o,x(v(_.indicatorProps)),{default:O(()=>[g(i,{class:b(E(R).arrow)},null,8,[`class`])]),_:1},16),g(u,x(v(_.viewportProps)),null,16)]),_:3},16))}});export{k as default};
@@ -8,20 +8,20 @@ declare const __VLS_base: _$vue.DefineComponent<NavigationMenuCompactProps, {},
8
8
  select: (payload: CustomEvent<{
9
9
  originalEvent: Event;
10
10
  }>) => any;
11
- "update:modelValue": (value: string) => any;
12
11
  escapeKeyDown: (event: KeyboardEvent) => any;
13
12
  pointerDownOutside: (event: PointerDownOutsideEvent) => any;
14
13
  focusOutside: (event: FocusOutsideEvent) => any;
15
14
  interactOutside: (event: PointerDownOutsideEvent | FocusOutsideEvent) => any;
15
+ "update:modelValue": (value: string) => any;
16
16
  }, string, _$vue.PublicProps, Readonly<NavigationMenuCompactProps> & Readonly<{
17
17
  onSelect?: ((payload: CustomEvent<{
18
18
  originalEvent: Event;
19
19
  }>) => any) | undefined;
20
- "onUpdate:modelValue"?: ((value: string) => any) | undefined;
21
20
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
22
21
  onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
23
22
  onFocusOutside?: ((event: FocusOutsideEvent) => any) | undefined;
24
23
  onInteractOutside?: ((event: PointerDownOutsideEvent | FocusOutsideEvent) => any) | undefined;
24
+ "onUpdate:modelValue"?: ((value: string) => any) | undefined;
25
25
  }>, {}, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
26
26
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
27
27
  declare const _default: typeof __VLS_export;
@@ -1 +1 @@
1
- import{useForwardElement as e}from"../../composables/use-forward-element.js";import{usePresence as t}from"../../composables/use-presence.js";import"../../composables/index.js";import{navigationMenuIndicatorCssVars as n}from"./shared.js";import{useNavigationMenuRootContext as r,useNavigationMenuUi as i}from"./context.js";import{Teleport as a,computed as o,createBlock as s,createCommentVNode as c,createElementBlock as l,defineComponent as u,mergeProps as d,openBlock as f,renderSlot as p,shallowRef as m,unref as h,useAttrs as g,watchEffect as _}from"vue";import{useResizeObserver as v}from"@vueuse/core";const y=[`data-state`],b=u({name:`NavigationMenuIndicator`,inheritAttrs:!1,__name:`navigation-menu-indicator`,props:{forceMount:{type:Boolean}},setup(u){let b=u,x=g(),{orientation:S,activeTriggerElement:C,modelValue:w,indicatorTrackElement:T}=r(`NavigationMenuIndicator`),[E,D]=e(),O=i(`indicator`),k=o(()=>!!w.value),A=b.forceMount?m(!0):t(E,()=>k.value),j=m(),M=o(()=>{if(!j.value)return{};let{size:e,position:t}=j.value;return{[n.size]:`${e}px`,[n.position]:`${t}px`}}),N=()=>{if(!C.value)return;let{offsetWidth:e,offsetHeight:t,offsetLeft:n,offsetTop:r}=C.value,i=S.value===`horizontal`;j.value={size:i?e:t,position:i?n:r}};return _(()=>{if(!w.value){j.value=void 0;return}N()}),v(C,N),v(T,N),(e,t)=>h(T)?(f(),s(a,{key:0,to:h(T)},[h(A)?(f(),l(`div`,d({key:0},h(x),{ref:h(D),"data-soybean-navigation-menu-indicator":``,class:h(O),"aria-hidden":`true`,"data-state":k.value?`visible`:`hidden`,style:M.value}),[p(e.$slots,`default`)],16,y)):c(`v-if`,!0)],8,[`to`])):c(`v-if`,!0)}});export{b as default};
1
+ import{useForwardElement as e}from"../../composables/use-forward-element.js";import{usePresence as t}from"../../composables/use-presence.js";import"../../composables/index.js";import{getNavigationMenuIndicatorPosition as n,navigationMenuIndicatorCssVars as r}from"./shared.js";import{useNavigationMenuRootContext as i,useNavigationMenuUi as a}from"./context.js";import{Teleport as o,computed as s,createBlock as c,createCommentVNode as l,createElementBlock as u,defineComponent as d,mergeProps as f,openBlock as p,renderSlot as m,shallowRef as h,unref as g,useAttrs as _,watchEffect as v}from"vue";import{useResizeObserver as y}from"@vueuse/core";const b=[`dir`,`data-orientation`,`data-state`],x=d({name:`NavigationMenuIndicator`,inheritAttrs:!1,__name:`navigation-menu-indicator`,props:{forceMount:{type:Boolean}},setup(d){let x=d,S=_(),{dir:C,rootElement:w,orientation:T,activeTriggerElement:E,modelValue:D,indicatorTrackElement:O}=i(`NavigationMenuIndicator`),[k,A]=e(),j=a(`indicator`),M=s(()=>!!D.value),N=x.forceMount?h(!0):t(k,()=>M.value),P=h(),F=s(()=>{if(!P.value)return{};let{size:e,left:t,top:n}=P.value;return{[r.size]:`${e}px`,[r.left]:`${t}px`,[r.top]:`${n}px`}}),I=()=>{!E.value||!O.value||(P.value=n({indicatorTrackElement:O.value,activeTriggerElement:E.value,orientation:T.value,dir:C.value}))},L=s(()=>O.value?.ownerDocument?.body??w.value?.ownerDocument?.body);return v(()=>{if(!D.value){P.value=void 0;return}I()}),y(E,I),y(O,I),(e,t)=>L.value?(p(),c(o,{key:0,to:L.value},[g(N)?(p(),u(`div`,f({key:0},g(S),{ref:g(A),"data-soybean-navigation-menu-indicator":``,class:g(j),"aria-hidden":`true`,dir:g(C),"data-orientation":g(T),"data-state":M.value?`visible`:`hidden`,style:F.value}),[m(e.$slots,`default`)],16,b)):l(`v-if`,!0)],8,[`to`])):l(`v-if`,!0)}});export{x as default};
@@ -0,0 +1 @@
1
+ import e from"../_icon/icon.js";import{useNavigationMenuUi as t}from"./context.js";import{createBlock as n,createCommentVNode as r,defineComponent as i,normalizeClass as a,openBlock as o,renderSlot as s,unref as c}from"vue";const l=i({name:`NavigationMenuItemSlotCompact`,__name:`navigation-menu-item-slot-compact`,props:{icon:{}},setup(i){let l=t();return(t,u)=>s(t.$slots,`item`,{},()=>[s(t.$slots,`item-leading`,{},()=>[i.icon?(o(),n(e,{key:0,icon:i.icon,class:a(c(l).itemIcon)},null,8,[`icon`,`class`])):r(`v-if`,!0)]),s(t.$slots,`default`),s(t.$slots,`link-icon`),s(t.$slots,`item-trailing`),s(t.$slots,`trigger-icon`)])}});export{l as default};
@@ -1 +1 @@
1
- import{useNavigationMenuRootContext as e,useNavigationMenuUi as t}from"./context.js";import{createElementBlock as n,createElementVNode as r,defineComponent as i,mergeProps as a,openBlock as o,renderSlot as s,unref as c,useAttrs as l}from"vue";const u=i({name:`NavigationMenuList`,inheritAttrs:!1,__name:`navigation-menu-list`,setup(i){let u=l(),{setIndicatorTrackElement:d}=e(`NavigationMenuList`),f=t(`list`);return(e,t)=>(o(),n(`div`,{ref:c(d),"data-soybean-navigation-menu-list":``,style:{position:`relative`}},[r(`ul`,a(c(u),{class:c(f)}),[s(e.$slots,`default`)],16)],512))}});export{u as default};
1
+ import{useNavigationMenuRootContext as e,useNavigationMenuUi as t}from"./context.js";import{createElementBlock as n,createElementVNode as r,defineComponent as i,mergeProps as a,openBlock as o,renderSlot as s,unref as c,useAttrs as l}from"vue";const u=i({name:`NavigationMenuList`,inheritAttrs:!1,__name:`navigation-menu-list`,setup(i){let u=l(),{setIndicatorTrackElement:d}=e(`NavigationMenuList`),f=t(`list`);return(e,t)=>(o(),n(`div`,{ref:c(d),"data-soybean-navigation-menu-list":``},[r(`ul`,a(c(u),{class:c(f)}),[s(e.$slots,`default`)],16)],512))}});export{u as default};
@@ -0,0 +1 @@
1
+ import{e}from"../../node_modules/.pnpm/@soybeanjs_utils@0.1.1/node_modules/@soybeanjs/utils/dist/index.js";import{useForwardListeners as t}from"../../composables/use-forward-listeners.js";import"../../composables/index.js";import n from"../_icon/icon.js";import{useCommonSlotNames as r}from"./shared.js";import{useNavigationMenuUi as i}from"./context.js";import a from"./navigation-menu-item-slot-compact.js";import o from"./navigation-menu-sub-option-compact.js";import s from"./navigation-menu-content.js";import c from"./navigation-menu-item.js";import l from"./navigation-menu-link.js";import u from"./navigation-menu-sub-list.js";import d from"./navigation-menu-trigger.js";import{Fragment as f,computed as p,createBlock as m,createElementBlock as h,createElementVNode as g,createSlots as _,createVNode as v,defineComponent as y,guardReactiveProps as b,mergeProps as x,normalizeClass as S,normalizeProps as C,openBlock as w,renderList as T,renderSlot as E,resolveDynamicComponent as D,toDisplayString as O,toHandlers as k,unref as A,useSlots as j,withCtx as M}from"vue";const N=y({name:`NavigationMenuOptionCompact`,__name:`navigation-menu-option-compact`,props:{item:{},itemProps:{},linkProps:{},triggerProps:{},contentProps:{},viewportProps:{},indicatorProps:{},listProps:{},subListProps:{},subItemProps:{}},emits:[`update:modelValue`,`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`select`],setup(y,{emit:N}){let P=y,F=N,I=j(),L=t(F),R=p(()=>e(I)),z=r(I),B=i(),V=p(()=>!!(P.item.to||P.item.href)),H=p(()=>V.value?{...P.linkProps,disabled:P.item.disabled,to:P.item.to,href:P.item.href,target:P.item.target,external:P.item.external}:{});return(e,t)=>(w(),m(c,x(y.itemProps,{value:y.item.value}),{default:M(()=>[y.item.children?.length?(w(),h(f,{key:1},[v(d,x(y.triggerProps,{disabled:y.item.disabled,"as-child":V.value}),{default:M(()=>[(w(),m(D(V.value?l:`template`),x(H.value,{onSelect:t[1]||(t[1]=e=>F(`select`,e))}),{default:M(()=>[v(a,{icon:y.item.icon},_({"trigger-icon":M(()=>[E(e.$slots,`item-trigger-icon`,{item:y.item},()=>[v(n,{icon:`lucide:chevron-down`,class:S(A(B).triggerIcon)},null,8,[`class`])])]),default:M(()=>[g(`span`,null,O(y.item.label),1)]),_:2},[T(A(z),t=>({name:t,fn:M(()=>[E(e.$slots,t,{item:y.item,isTrigger:!0})])}))]),1032,[`icon`])]),_:3},16))]),_:3},16,[`disabled`,`as-child`]),v(s,x(y.contentProps,k(A(L))),{default:M(()=>[v(u,C(b(y.subListProps)),{default:M(()=>[(w(!0),h(f,null,T(y.item.children,n=>(w(),m(o,{key:n.value,"sub-item":n,"sub-item-props":y.subItemProps,onSelect:t[2]||(t[2]=e=>F(`select`,e))},_({"item-children":M(t=>[E(e.$slots,`item-children`,{item:t.item})]),_:2},[T(R.value,t=>({name:t,fn:M(()=>[E(e.$slots,t,{item:n})])}))]),1032,[`sub-item`,`sub-item-props`]))),128))]),_:3},16)]),_:3},16)],64)):(w(),m(l,x({key:0},H.value,{onSelect:t[0]||(t[0]=e=>F(`select`,e))}),{default:M(({isHref:t})=>[v(a,{icon:y.item.icon},_({default:M(()=>[g(`span`,null,O(y.item.label),1)]),_:2},[T(A(z),t=>({name:t,fn:M(()=>[E(e.$slots,t,{item:y.item})])})),t?{name:`link-icon`,fn:M(()=>[E(e.$slots,`item-link-icon`,{item:y.item},()=>[v(n,{icon:`lucide:arrow-up-right`,class:S(A(B).linkIcon)},null,8,[`class`])])]),key:`0`}:void 0]),1032,[`icon`])]),_:3},16))]),_:3},16,[`value`]))}});export{N 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{useForwardElement as n}from"../../composables/use-forward-element.js";import"../../composables/index.js";import{provideCollectionContext as r,provideNavigationMenuRootContext as i,useNavigationMenuUi as a}from"./context.js";import{createElementBlock as o,defineComponent as s,normalizeClass as c,openBlock as l,renderSlot as u,unref as d,watchEffect as f}from"vue";const p=[`data-orientation`,`dir`],m=s({name:`NavigationMenuRoot`,__name:`navigation-menu-root`,props:{modelValue:{},defaultValue:{},dir:{default:`ltr`},orientation:{default:`horizontal`},delayDuration:{default:200},skipDelayDuration:{default:300},disableClickTrigger:{type:Boolean},disableHoverTrigger:{type:Boolean},disablePointerLeaveClose:{type:Boolean},unmountOnHide:{type:Boolean,default:!0}},emits:[`update:modelValue`],setup(s,{emit:m}){let h=s,g=m,_=a(`root`),v=t(()=>h.modelValue,e=>{g(`update:modelValue`,e)},h.defaultValue??``),{onRootElementChange:y,onActiveTriggerElementChange:b}=i({isRoot:!0,modelValue:v,...e(h,[`dir`,`orientation`,`unmountOnHide`,`skipDelayDuration`,`delayDuration`,`disableClickTrigger`,`disableHoverTrigger`,`disablePointerLeaveClose`])}),{onContainerElementChange:x,getOrderedElements:S}=r(),[C,w]=n(e=>{y(e),x(e)});return f(()=>{if(!v.value)return;let e=S().find(e=>e.id.includes(v.value));e&&b(e)}),(e,t)=>(l(),o(`nav`,{ref:d(w),"data-soybean-navigation-menu":``,class:c(d(_)),"data-orientation":s.orientation,dir:s.dir},[u(e.$slots,`default`,{modelValue:d(v)})],10,p))}});export{m as default};
1
+ import{transformPropsToContext as e}from"../../shared/vue.js";import{useDirection as t}from"../config-provider/context.js";import"../../shared/index.js";import{useControllableState as n}from"../../composables/use-controllable-state.js";import{useForwardElement as r}from"../../composables/use-forward-element.js";import"../../composables/index.js";import{provideCollectionContext as i,provideNavigationMenuRootContext as a,useNavigationMenuUi as o}from"./context.js";import{createElementBlock as s,defineComponent as c,normalizeClass as l,openBlock as u,renderSlot as d,unref as f,watchEffect as p}from"vue";const m=[`data-orientation`,`dir`],h=c({name:`NavigationMenuRoot`,__name:`navigation-menu-root`,props:{modelValue:{},defaultValue:{},dir:{},orientation:{default:`horizontal`},delayDuration:{default:200},skipDelayDuration:{default:300},disableClickTrigger:{type:Boolean},disableHoverTrigger:{type:Boolean},disablePointerLeaveClose:{type:Boolean},unmountOnHide:{type:Boolean,default:!0}},emits:[`update:modelValue`],setup(c,{emit:h}){let g=c,_=h,v=o(`root`),y=t(()=>g.dir),b=n(()=>g.modelValue,e=>{_(`update:modelValue`,e)},g.defaultValue??``),{onRootElementChange:x,onActiveTriggerElementChange:S}=a({isRoot:!0,modelValue:b,dir:y,...e(g,[`orientation`,`unmountOnHide`,`skipDelayDuration`,`delayDuration`,`disableClickTrigger`,`disableHoverTrigger`,`disablePointerLeaveClose`])}),{onContainerElementChange:C,getOrderedElements:w}=i(),[T,E]=r(e=>{x(e),C(e)});return p(()=>{if(!b.value)return;let e=w().find(e=>e.id.includes(b.value));e&&S(e)}),(e,t)=>(u(),s(`nav`,{ref:f(E),"data-soybean-navigation-menu":``,class:l(f(v)),"data-orientation":c.orientation,dir:f(y)},[d(e.$slots,`default`,{modelValue:f(b)})],10,m))}});export{h as default};
@@ -1,4 +1,4 @@
1
- import { DataOrientation, Direction } from "../../types/common.js";
1
+ import { DataOrientation } from "../../types/common.js";
2
2
  import { NavigationMenuRootProps } from "./types.js";
3
3
  import * as _$vue from "vue";
4
4
 
@@ -14,7 +14,6 @@ declare const __VLS_base: _$vue.DefineComponent<NavigationMenuRootProps, {}, {},
14
14
  }, string, _$vue.PublicProps, Readonly<NavigationMenuRootProps> & Readonly<{
15
15
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
16
16
  }>, {
17
- dir: Direction;
18
17
  orientation: DataOrientation;
19
18
  unmountOnHide: boolean;
20
19
  delayDuration: number;
@@ -0,0 +1 @@
1
+ import e from"../_icon/icon.js";import{useCommonSlotNames as t}from"./shared.js";import{useNavigationMenuUi as n}from"./context.js";import r from"./navigation-menu-item-slot-compact.js";import i from"./navigation-menu-item.js";import a from"./navigation-menu-link.js";import"./index.js";import{computed as o,createBlock as s,createCommentVNode as c,createElementVNode as l,createSlots as u,createVNode as d,defineComponent as f,mergeProps as p,normalizeClass as m,openBlock as h,renderList as g,renderSlot as _,resolveDynamicComponent as v,toDisplayString as y,unref as b,useSlots as x,withCtx as S}from"vue";const C=f({name:`NavigationMenuSubOptionCompact`,__name:`navigation-menu-sub-option-compact`,props:{subItem:{},subItemProps:{},linkProps:{}},emits:[`select`],setup(f,{emit:C}){let w=f,T=C,E=t(x()),D=n(),O=o(()=>!!(w.subItem.to||w.subItem.href)),k=o(()=>O.value?{...w.linkProps,disabled:w.subItem.disabled,to:w.subItem.to,href:w.subItem.href,target:w.subItem.target,external:w.subItem.external}:{});return(t,n)=>(h(),s(b(i),p(f.subItemProps,{value:f.subItem.value}),{default:S(()=>[(h(),s(v(O.value?b(a):`div`),p(k.value,{onSelect:n[0]||(n[0]=e=>T(`select`,e))}),{default:S(n=>[d(r,{icon:f.subItem.icon},u({default:S(()=>[l(`div`,{class:m(b(D).subLinkContent)},[l(`span`,{class:m(b(D).subLinkLabel)},y(f.subItem.label),3),l(`p`,{class:m(b(D).subLinkDescription)},y(f.subItem.description),3)],2)]),_:2},[g(b(E),e=>({name:e,fn:S(()=>[_(t.$slots,e,{item:f.subItem})])})),n?.isHref?{name:`link-icon`,fn:S(()=>[_(t.$slots,`item-link-icon`,{item:f.subItem},()=>[d(e,{icon:`lucide:arrow-up-right`,class:m(b(D).linkIcon)},null,8,[`class`])])]),key:`0`}:void 0]),1032,[`icon`])]),_:3},16)),f.subItem.children?.length?_(t.$slots,`item-children`,{key:0,item:f.subItem}):c(`v-if`,!0)]),_:3},16,[`value`]))}});export{C as default};
@@ -1 +1 @@
1
- import{getDisclosureState as e}from"../../shared/value.js";import{isMouseEvent as t}from"../../shared/event.js";import"../../shared/index.js";import{usePresence as n}from"../../composables/use-presence.js";import"../../composables/index.js";import{getNavigationMenuViewportPosition as r,navigationMenuViewportCssVars as i}from"./shared.js";import{useNavigationMenuRootContext as a,useNavigationMenuUi as o}from"./context.js";import{computed as s,createCommentVNode as c,createElementBlock as l,defineComponent as u,nextTick as d,normalizeClass as f,normalizeStyle as p,openBlock as m,renderSlot as h,shallowRef as g,unref as _,watch as v}from"vue";import{useResizeObserver as y}from"@vueuse/core";const b=[`data-state`,`hidden`],x=u({name:`NavigationMenuViewport`,__name:`navigation-menu-viewport`,props:{align:{default:`start`},forceMount:{type:Boolean}},setup(u){let x=u,{isRoot:S,open:C,unmountOnHide:w,rootElement:T,activeTriggerElement:E,modelValue:D,viewportElement:O,setViewportElement:k,onContentEnter:A,onContentLeave:j}=a(`NavigationMenuViewport`),M=o(`viewport`),N=x.forceMount?g(!0):n(O,C),P=s(()=>e(C.value)),F=g(),I=g(),L=s(()=>{let{width:e,height:t}=F.value||{},{left:n,top:r}=I.value||{};return{pointerEvents:!C.value&&S?`none`:void 0,[i.width]:e&&`${e}px`,[i.height]:t&&`${t}px`,[i.left]:n&&`${n}px`,[i.top]:r&&`${r}px`}});function R(){!T.value||!O.value||!E.value||(I.value=r({rootElement:T.value,contentElement:O.value,activeTriggerElement:E.value,align:x.align}))}let z=g(null);function B(){O.value&&requestAnimationFrame(()=>{z.value=O.value?.querySelector(`[data-state=open]`)})}let V=()=>{D.value&&A(D.value)},H=e=>{t(e)&&j()};return y(z,()=>{if(!z.value)return;let{offsetWidth:e,offsetHeight:t}=z.value;F.value={width:e,height:t},R()}),v([O,D,C],()=>{d(()=>{B()})},{immediate:!0}),y([()=>globalThis?.document?.body,T],()=>{R()}),(e,t)=>_(N)?(m(),l(`div`,{key:0,ref:_(k),"data-soybean-navigation-menu-viewport":``,class:f(_(M)),"data-state":P.value,hidden:!_(N),style:p(L.value),onPointerenter:V,onPointerleave:H},[!_(w)||_(N)?h(e.$slots,`default`,{key:0}):c(`v-if`,!0)],46,b)):c(`v-if`,!0)}});export{x as default};
1
+ import{getDisclosureState as e}from"../../shared/value.js";import{isMouseEvent as t}from"../../shared/event.js";import"../../shared/index.js";import{usePresence as n}from"../../composables/use-presence.js";import"../../composables/index.js";import{getNavigationMenuViewportPosition as r,navigationMenuViewportCssVars as i}from"./shared.js";import{useNavigationMenuRootContext as a,useNavigationMenuUi as o}from"./context.js";import{computed as s,createCommentVNode as c,createElementBlock as l,defineComponent as u,nextTick as d,normalizeClass as f,normalizeStyle as p,openBlock as m,renderSlot as h,shallowRef as g,unref as _,watch as v}from"vue";import{useResizeObserver as y}from"@vueuse/core";const b=[`data-state`,`hidden`],x=u({name:`NavigationMenuViewport`,__name:`navigation-menu-viewport`,props:{align:{default:`start`},forceMount:{type:Boolean}},setup(u){let x=u,{dir:S,isRoot:C,open:w,orientation:T,unmountOnHide:E,rootElement:D,modelValue:O,viewportElement:k,setViewportElement:A,onContentEnter:j,onContentLeave:M}=a(`NavigationMenuViewport`),N=o(`viewport`),P=x.forceMount?g(!0):n(k,w),F=s(()=>e(w.value)),I=g(),L=g(),R=s(()=>{let{width:e,height:t}=I.value||{},{left:n,top:r}=L.value||{};return{pointerEvents:!w.value&&C?`none`:void 0,[i.width]:e===void 0?void 0:`${e}px`,[i.height]:t===void 0?void 0:`${t}px`,[i.left]:n===void 0?void 0:`${n}px`,[i.top]:r===void 0?void 0:`${r}px`}});function z(){if(!D.value||!k.value)return;let e=I.value||{width:k.value.offsetWidth,height:k.value.offsetHeight};L.value=r({rootElement:D.value,contentSize:e,orientation:T.value,dir:S.value,align:x.align})}let B=g(null);function V(){k.value&&requestAnimationFrame(()=>{B.value=k.value?.querySelector(`[data-state=open]`)})}let H=()=>{O.value&&j(O.value)},U=e=>{t(e)&&M()};return y(B,()=>{if(!B.value)return;let{offsetWidth:e,offsetHeight:t}=B.value;I.value={width:e,height:t},z()}),v([k,O,w],()=>{d(()=>{V()})},{immediate:!0}),y([()=>globalThis?.document?.body,D],()=>{z()}),(e,t)=>_(P)?(m(),l(`div`,{key:0,ref:_(A),"data-soybean-navigation-menu-viewport":``,class:f(_(N)),"data-state":F.value,hidden:!_(P),style:p(R.value),onPointerenter:H,onPointerleave:U},[!_(E)||_(P)?h(e.$slots,`default`,{key:0}):c(`v-if`,!0)],46,b)):c(`v-if`,!0)}});export{x as default};
@@ -1 +1 @@
1
- const e=`navigationMenu.rootContentDismiss`,t=`navigationMenu.linkSelect`,n={width:`--soybean-navigation-menu-viewport-width`,height:`--soybean-navigation-menu-viewport-height`,left:`--soybean-navigation-menu-viewport-left`,top:`--soybean-navigation-menu-viewport-top`},r={size:`--soybean-navigation-menu-indicator-size`,position:`--soybean-navigation-menu-indicator-position`};function i(e,t){return`${e}-trigger-${t}`}function a(e,t){return`${e}-content-${t}`}function o(e){let{rootElement:t,contentElement:n,activeTriggerElement:r,align:i}=e,a=document.documentElement.offsetWidth,o=document.documentElement.offsetHeight,s=t.getBoundingClientRect(),c=r.getBoundingClientRect(),{offsetWidth:l,offsetHeight:u}=n,d=c.left-s.left,f=c.top-s.top,{left:p,top:m}={start:{left:d,top:f+c.height},center:{left:d-l/2+c.width/2,top:f-u/2+c.height/2},end:{left:d-l+c.width,top:f-u+c.height}}[i];p+s.left<10&&(p=10-s.left);let h=p+s.left+l;h>a-10&&(p-=h-a+10,p<10-s.left&&(p=10-s.left)),m+s.top<10&&(m=10-s.top);let g=m+s.top+u;return g>o-10&&(m-=g-o+10,m<10-s.top&&(m=10-s.top)),p=Math.round(p),m=Math.round(m),{left:p,top:m}}export{e as EVENT_ROOT_CONTENT_DISMISS,t as LINK_SELECT,a as createContentId,i as createTriggerId,o as getNavigationMenuViewportPosition,r as navigationMenuIndicatorCssVars,n as navigationMenuViewportCssVars};
1
+ import{computed as e}from"vue";const t=[`item`,`item-leading`,`item-trailing`],n=`navigationMenu.rootContentDismiss`,r=`navigationMenu.linkSelect`,i={width:`--soybean-navigation-menu-viewport-width`,height:`--soybean-navigation-menu-viewport-height`,left:`--soybean-navigation-menu-viewport-left`,top:`--soybean-navigation-menu-viewport-top`},a={size:`--soybean-navigation-menu-indicator-size`,left:`--soybean-navigation-menu-indicator-left`,top:`--soybean-navigation-menu-indicator-top`};function o(n){return e(()=>Object.keys(n).filter(e=>t.includes(e)))}function s(e,t){return`${e}-trigger-${t}`}function c(e,t){return`${e}-content-${t}`}function l(){let e=globalThis.window?.visualViewport;return{width:e?.width??globalThis.window?.innerWidth??document.documentElement.clientWidth,height:e?.height??globalThis.window?.innerHeight??document.documentElement.clientHeight}}function u(e,t,n,r){let i=r,a=n-r-t;return a<=i||e<i?i:e>a?a:e}function d(e,t,n){if(n!==`rtl`)return e;let{width:r}=l();return r-e-t}function f(e){let{rootElement:t,contentSize:n,orientation:r,dir:i,align:a}=e,o=t.getBoundingClientRect(),{width:s,height:c}=l(),{width:f,height:p}=n,m=i===`rtl`,h={start:{left:m?o.right-f:o.left,top:o.bottom},center:{left:o.left+o.width/2-f/2,top:o.bottom},end:{left:m?o.left:o.right-f,top:o.bottom}},g={start:{left:m?o.left-f:o.right,top:o.top},center:{left:m?o.left-f:o.right,top:o.top+o.height/2-p/2},end:{left:m?o.left-f:o.right,top:o.bottom-p}},{left:_,top:v}=(r===`vertical`?g:h)[a];_=u(_,f,s,10),v=u(v,p,c,10);let y={left:d(_,f,i),top:v};return{left:Math.round(y.left),top:Math.round(y.top)}}function p(e){let{indicatorTrackElement:t,activeTriggerElement:n,orientation:r,dir:i}=e,a=t.getBoundingClientRect(),o=n.getBoundingClientRect(),s=r===`horizontal`,c=i===`rtl`,l=s?o.width:o.height,u={size:l,left:d(s?o.left:c?a.left-l:a.right,l,i),top:s?a.bottom:o.top+o.height/2};return{size:Math.round(u.size),left:Math.round(u.left),top:Math.round(u.top)}}export{n as EVENT_ROOT_CONTENT_DISMISS,r as LINK_SELECT,c as createContentId,s as createTriggerId,p as getNavigationMenuIndicatorPosition,f as getNavigationMenuViewportPosition,a as navigationMenuIndicatorCssVars,i as navigationMenuViewportCssVars,o as useCommonSlotNames};