@soybeanjs/headless 0.22.0 → 0.22.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 (152) hide show
  1. package/dist/components/accordion/context.d.ts +0 -1
  2. package/dist/components/affix/context.d.ts +0 -1
  3. package/dist/components/alert/alert-compact.vue.d.ts +2 -2
  4. package/dist/components/alert/context.d.ts +0 -1
  5. package/dist/components/anchor/context.d.ts +0 -1
  6. package/dist/components/autocomplete/autocomplete-compact.vue.d.ts +2 -2
  7. package/dist/components/autocomplete/autocomplete-input.js +1 -1
  8. package/dist/components/autocomplete/autocomplete-root.vue.d.ts +3 -3
  9. package/dist/components/autocomplete/context.d.ts +0 -1
  10. package/dist/components/avatar/context.d.ts +0 -1
  11. package/dist/components/badge/context.d.ts +0 -1
  12. package/dist/components/bottom-sheet/bottom-sheet-root-nested.vue.d.ts +2 -2
  13. package/dist/components/bottom-sheet/context.d.ts +0 -1
  14. package/dist/components/calendar/context.d.ts +0 -1
  15. package/dist/components/calendar-range/calendar-range-root.vue.d.ts +3 -3
  16. package/dist/components/calendar-range/context.d.ts +0 -1
  17. package/dist/components/checkbox/context.d.ts +0 -1
  18. package/dist/components/clipboard/clipboard.vue.d.ts +1 -1
  19. package/dist/components/collapsible/context.d.ts +0 -1
  20. package/dist/components/color-area/color-area-root.vue.d.ts +2 -2
  21. package/dist/components/color-area/context.d.ts +0 -1
  22. package/dist/components/color-field/color-field-root.vue.d.ts +1 -1
  23. package/dist/components/color-field/context.d.ts +0 -1
  24. package/dist/components/color-picker/color-picker-compact.vue.d.ts +9 -9
  25. package/dist/components/color-picker/color-picker-root.vue.d.ts +5 -5
  26. package/dist/components/color-picker/context.d.ts +0 -1
  27. package/dist/components/color-slider/color-slider-root.vue.d.ts +1 -1
  28. package/dist/components/color-slider/context.d.ts +0 -1
  29. package/dist/components/color-swatch-picker/context.d.ts +0 -1
  30. package/dist/components/combobox/combobox-compact.vue.d.ts +3 -3
  31. package/dist/components/combobox/combobox-content.vue.d.ts +3 -3
  32. package/dist/components/combobox/combobox-input.js +1 -1
  33. package/dist/components/combobox/combobox-root.vue.d.ts +2 -2
  34. package/dist/components/combobox/context.d.ts +0 -1
  35. package/dist/components/context-menu/context-menu-checkbox-compact.js +1 -1
  36. package/dist/components/context-menu/context-menu-checkbox-compact.vue.d.ts +4 -4
  37. package/dist/components/context-menu/context-menu-compact.js +1 -1
  38. package/dist/components/context-menu/context-menu-compact.vue.d.ts +3 -3
  39. package/dist/components/context-menu/context-menu-content.vue.d.ts +4 -4
  40. package/dist/components/context-menu/context-menu-radio-compact.js +1 -1
  41. package/dist/components/context-menu/context-menu-radio-compact.vue.d.ts +4 -4
  42. package/dist/components/context-menu/context-menu-wrapper-compact.vue.d.ts +4 -4
  43. package/dist/components/date-field/context.d.ts +0 -1
  44. package/dist/components/date-picker/date-picker-compact.js +1 -1
  45. package/dist/components/date-picker/date-picker-compact.vue.d.ts +12 -12
  46. package/dist/components/date-range-field/context.d.ts +0 -1
  47. package/dist/components/date-range-picker/date-range-picker-compact.vue.d.ts +11 -11
  48. package/dist/components/dialog/context.d.ts +0 -1
  49. package/dist/components/dialog/dialog-compact.vue.d.ts +9 -9
  50. package/dist/components/dialog/dialog-popup.vue.d.ts +2 -2
  51. package/dist/components/dropdown-menu/dropdown-menu-checkbox-compact.js +1 -1
  52. package/dist/components/dropdown-menu/dropdown-menu-checkbox-compact.vue.d.ts +4 -4
  53. package/dist/components/dropdown-menu/dropdown-menu-compact.js +1 -1
  54. package/dist/components/dropdown-menu/dropdown-menu-compact.vue.d.ts +3 -3
  55. package/dist/components/dropdown-menu/dropdown-menu-content.vue.d.ts +4 -4
  56. package/dist/components/dropdown-menu/dropdown-menu-radio-compact.js +1 -1
  57. package/dist/components/dropdown-menu/dropdown-menu-radio-compact.vue.d.ts +4 -4
  58. package/dist/components/dropdown-menu/dropdown-menu-root.vue.d.ts +1 -1
  59. package/dist/components/dropdown-menu/dropdown-menu-wrapper-compact.vue.d.ts +4 -4
  60. package/dist/components/editable/context.d.ts +0 -1
  61. package/dist/components/editable/editable-root.vue.d.ts +1 -1
  62. package/dist/components/form/context.d.ts +0 -1
  63. package/dist/components/form/form-field-array-compact.js +1 -1
  64. package/dist/components/form/form-field-compact.js +1 -1
  65. package/dist/components/form/form-field.js +1 -1
  66. package/dist/components/input/context.d.ts +0 -1
  67. package/dist/components/input/input-compact.js +1 -1
  68. package/dist/components/input/input-compact.vue.d.ts +2 -2
  69. package/dist/components/input/input-control.js +1 -1
  70. package/dist/components/input/input-root.js +1 -1
  71. package/dist/components/input/types.d.ts +16 -2
  72. package/dist/components/input-number/context.d.ts +0 -1
  73. package/dist/components/input-number/input-number-compact.js +1 -1
  74. package/dist/components/input-number/input-number-compact.vue.d.ts +2 -2
  75. package/dist/components/input-number/input-number-control.js +1 -1
  76. package/dist/components/input-number/input-number-root.js +1 -1
  77. package/dist/components/input-number/types.d.ts +6 -2
  78. package/dist/components/input-otp/context.d.ts +0 -1
  79. package/dist/components/layout/context.d.ts +0 -1
  80. package/dist/components/layout/layout-root.vue.d.ts +1 -1
  81. package/dist/components/layout/layout-sidebar.vue.d.ts +3 -3
  82. package/dist/components/listbox/listbox-filter.js +1 -1
  83. package/dist/components/menu/context.d.ts +0 -1
  84. package/dist/components/menu/hooks.js +1 -1
  85. package/dist/components/menu/menu-content.vue.d.ts +4 -4
  86. package/dist/components/menu/menu-option-compact.js +1 -1
  87. package/dist/components/menu/menu-option-compact.vue.d.ts +3 -3
  88. package/dist/components/menu/menu-options-compact.js +1 -1
  89. package/dist/components/menu/menu-options-compact.vue.d.ts +3 -3
  90. package/dist/components/menu/menu-sub-content.vue.d.ts +4 -4
  91. package/dist/components/menubar/context.d.ts +0 -1
  92. package/dist/components/menubar/menubar-compact.js +1 -1
  93. package/dist/components/menubar/menubar-compact.vue.d.ts +4 -4
  94. package/dist/components/menubar/menubar-content.vue.d.ts +4 -4
  95. package/dist/components/menubar/menubar-sub-content.vue.d.ts +4 -4
  96. package/dist/components/navigation-menu/context.d.ts +0 -1
  97. package/dist/components/navigation-menu/navigation-menu-compact.js +1 -1
  98. package/dist/components/navigation-menu/navigation-menu-option-compact.js +1 -1
  99. package/dist/components/page-tabs/context.d.ts +0 -1
  100. package/dist/components/page-tabs/page-tabs-compact.vue.d.ts +1 -1
  101. package/dist/components/pagination/context.d.ts +0 -1
  102. package/dist/components/password/password-compact.js +1 -1
  103. package/dist/components/password/password-compact.vue.d.ts +2 -0
  104. package/dist/components/password/types.d.ts +3 -21
  105. package/dist/components/popconfirm/popconfirm-compact.vue.d.ts +5 -5
  106. package/dist/components/popover/context.d.ts +0 -1
  107. package/dist/components/popover/popover-compact.vue.d.ts +3 -3
  108. package/dist/components/popover/popover-positioner.vue.d.ts +2 -2
  109. package/dist/components/popper/popper-positioner.vue.d.ts +1 -1
  110. package/dist/components/progress/context.d.ts +0 -1
  111. package/dist/components/radio-group/context.d.ts +0 -1
  112. package/dist/components/roving-focus/roving-focus-group.vue.d.ts +1 -1
  113. package/dist/components/scroll-area/context.d.ts +0 -1
  114. package/dist/components/select/context.d.ts +0 -1
  115. package/dist/components/select/select-compact.vue.d.ts +3 -3
  116. package/dist/components/select/select-content.vue.d.ts +4 -4
  117. package/dist/components/select/select-root.vue.d.ts +2 -2
  118. package/dist/components/slider/context.d.ts +0 -1
  119. package/dist/components/splitter/context.d.ts +0 -1
  120. package/dist/components/splitter/splitter-panel.vue.d.ts +4 -4
  121. package/dist/components/stepper/context.d.ts +0 -1
  122. package/dist/components/switch/context.d.ts +0 -1
  123. package/dist/components/table/context.d.ts +0 -1
  124. package/dist/components/table/table-compact.vue.d.ts +2 -2
  125. package/dist/components/tabs/context.d.ts +0 -1
  126. package/dist/components/tabs/tabs-root.vue.d.ts +1 -1
  127. package/dist/components/tags-input/context.d.ts +0 -1
  128. package/dist/components/tags-input/tags-input-compact.js +1 -1
  129. package/dist/components/tags-input/tags-input-root.js +1 -1
  130. package/dist/components/textarea/context.d.ts +0 -1
  131. package/dist/components/textarea/textarea-compact.vue.d.ts +2 -2
  132. package/dist/components/time-field/context.d.ts +0 -1
  133. package/dist/components/time-range-field/context.d.ts +0 -1
  134. package/dist/components/toast/context.d.ts +0 -1
  135. package/dist/components/toast/shared.js +1 -1
  136. package/dist/components/toast/toaster.vue.d.ts +1 -1
  137. package/dist/components/toggle-group/context.d.ts +0 -1
  138. package/dist/components/toolbar/context.d.ts +0 -1
  139. package/dist/components/tooltip/tooltip-compact.vue.d.ts +1 -1
  140. package/dist/components/tree-menu/context.d.ts +3 -18
  141. package/dist/components/tree-menu/tree-menu-compact.js +1 -1
  142. package/dist/components/tree-menu/tree-menu-option-compact.js +1 -1
  143. package/dist/components/tree-menu/tree-menu-options-compact.js +1 -1
  144. package/dist/components/tree-menu/tree-menu-root.vue.d.ts +1 -1
  145. package/dist/composables/use-collection.d.ts +3 -14
  146. package/dist/composables/use-collection.js +1 -1
  147. package/dist/composables/use-context.d.ts +1 -6
  148. package/dist/composables/use-context.js +1 -1
  149. package/dist/composables/use-hide-others.js +1 -1
  150. package/dist/resolver/index.js +1 -1
  151. package/package.json +4 -2
  152. package/dist/node_modules/.pnpm/@soybeanjs_utils@0.1.1/node_modules/@soybeanjs/utils/dist/index.js +0 -1
@@ -2,7 +2,6 @@ import { UiClass } from "../../types/common.js";
2
2
  import { UseUiConsumer } from "../../composables/use-ui-context.js";
3
3
  import { ToggleGroupUiSlot } from "./types.js";
4
4
  import * as _$vue from "vue";
5
-
6
5
  //#region src/components/toggle-group/context.d.ts
7
6
  declare const provideToggleGroupUi: (ui: _$vue.ComputedRef<Partial<UiClass<ToggleGroupUiSlot>>>) => _$vue.ComputedRef<Partial<UiClass<ToggleGroupUiSlot>>>, useToggleGroupUi: UseUiConsumer<ToggleGroupUiSlot>;
8
7
  //#endregion
@@ -2,7 +2,6 @@ import { UiClass } from "../../types/common.js";
2
2
  import { UseUiConsumer } from "../../composables/use-ui-context.js";
3
3
  import { ToolbarUiSlot } from "./types.js";
4
4
  import * as _$vue from "vue";
5
-
6
5
  //#region src/components/toolbar/context.d.ts
7
6
  declare const provideToolbarUi: (ui: _$vue.ComputedRef<Partial<UiClass<ToolbarUiSlot>>>) => _$vue.ComputedRef<Partial<UiClass<ToolbarUiSlot>>>, useToolbarUi: UseUiConsumer<ToolbarUiSlot>;
8
7
  //#endregion
@@ -14,8 +14,8 @@ declare const __VLS_base: _$vue.DefineComponent<TooltipCompactProps, {}, {}, {},
14
14
  onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
15
15
  }>, {
16
16
  open: boolean;
17
- defaultOpen: boolean;
18
17
  showArrow: boolean;
18
+ defaultOpen: boolean;
19
19
  }, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
20
20
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
21
21
  declare const _default: typeof __VLS_export;
@@ -2,6 +2,7 @@ import { UiClass } from "../../types/common.js";
2
2
  import { UseUiConsumer } from "../../composables/use-ui-context.js";
3
3
  import { TreeMenuRootContextParams, TreeMenuUiSlot } from "./types.js";
4
4
  import * as _$vue from "vue";
5
+ import * as _$_soybeanjs_hooks0 from "@soybeanjs/hooks";
5
6
 
6
7
  //#region src/components/tree-menu/context.d.ts
7
8
  declare const provideTreeMenuRootContext: (params: TreeMenuRootContextParams) => {
@@ -12,7 +13,7 @@ declare const provideTreeMenuRootContext: (params: TreeMenuRootContextParams) =>
12
13
  modelValue: _$vue.ShallowRef<string>;
13
14
  expanded: _$vue.ShallowRef<string[]>;
14
15
  collapsed: _$vue.ShallowRef<boolean>;
15
- }, useTreeMenuRootContext: <N extends string | null | undefined = undefined>(consumerName?: N | undefined, defaultValue?: {
16
+ }, useTreeMenuRootContext: _$_soybeanjs_hooks0.ContextConsumer<{
16
17
  onModelValueChange: (value: string) => void;
17
18
  onExpandedChange: (value: string[]) => void;
18
19
  onExpandedToggle: (value: string) => void;
@@ -20,23 +21,7 @@ declare const provideTreeMenuRootContext: (params: TreeMenuRootContextParams) =>
20
21
  modelValue: _$vue.ShallowRef<string>;
21
22
  expanded: _$vue.ShallowRef<string[]>;
22
23
  collapsed: _$vue.ShallowRef<boolean>;
23
- } | undefined) => N extends null | undefined ? {
24
- onModelValueChange: (value: string) => void;
25
- onExpandedChange: (value: string[]) => void;
26
- onExpandedToggle: (value: string) => void;
27
- onCollapsedChange: (value: boolean) => void;
28
- modelValue: _$vue.ShallowRef<string>;
29
- expanded: _$vue.ShallowRef<string[]>;
30
- collapsed: _$vue.ShallowRef<boolean>;
31
- } | null : {
32
- onModelValueChange: (value: string) => void;
33
- onExpandedChange: (value: string[]) => void;
34
- onExpandedToggle: (value: string) => void;
35
- onCollapsedChange: (value: boolean) => void;
36
- modelValue: _$vue.ShallowRef<string>;
37
- expanded: _$vue.ShallowRef<string[]>;
38
- collapsed: _$vue.ShallowRef<boolean>;
39
- };
24
+ }>;
40
25
  declare const provideTreeMenuUi: (ui: _$vue.ComputedRef<Partial<UiClass<TreeMenuUiSlot>>>) => _$vue.ComputedRef<Partial<UiClass<TreeMenuUiSlot>>>, useTreeMenuUi: UseUiConsumer<TreeMenuUiSlot>;
41
26
  //#endregion
42
27
  export { provideTreeMenuRootContext, provideTreeMenuUi, useTreeMenuRootContext };
@@ -1 +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{usePickProps as n}from"../../composables/use-props.js";import"../../composables/index.js";import r from"./tree-menu-options-compact.js";import i from"./tree-menu-root.js";import{computed as a,createBlock as o,createCommentVNode as s,createSlots as c,createVNode as l,defineComponent as u,guardReactiveProps as d,mergeProps as f,normalizeProps as p,openBlock as m,renderList as h,renderSlot as g,toHandlers as _,unref as v,useSlots as y,withCtx as b}from"vue";const x=u({name:`TreeMenuCompact`,__name:`tree-menu-compact`,props:{modelValue:{},defaultValue:{},expanded:{},defaultExpanded:{},collapsed:{type:Boolean,default:void 0},defaultCollapsed:{type:Boolean},collapsedWidth:{default:50},indent:{default:16},pxToRem:{},items:{},groupRootProps:{},groupProps:{},groupLabelProps:{},showGroupIcon:{type:Boolean},side:{default:`left`},itemProps:{},buttonProps:{},linkProps:{},collapsibleProps:{},subProps:{}},emits:[`update:modelValue`,`update:expanded`,`update:collapsed`,`selectDropdown`],setup(u,{emit:x}){let S=u,C=x,w=y(),T=n(S,[`modelValue`,`defaultValue`,`expanded`,`defaultExpanded`,`collapsed`,`defaultCollapsed`,`collapsedWidth`,`indent`,`pxToRem`]),E=n(S,[`side`,`items`,`groupRootProps`,`groupProps`,`groupLabelProps`,`showGroupIcon`,`itemProps`,`buttonProps`,`linkProps`,`collapsibleProps`,`subProps`]),D=t(C),O=a(()=>e(w).filter(e=>e!==`top`&&e!==`bottom`));return(e,t)=>(m(),o(i,f(v(T),_(v(D))),{default:b(()=>[g(e.$slots,`top`),l(r,f(v(E),{onSelectDropdown:t[0]||(t[0]=e=>C(`selectDropdown`,e))}),c({_:2},[h(O.value,t=>({name:t,fn:b(n=>[s(` @vue-expect-error ignore slot type `),g(e.$slots,t,p(d(n)))])}))]),1040),g(e.$slots,`bottom`)]),_:3},16))}});export{x as default};
1
+ import{useForwardListeners as e}from"../../composables/use-forward-listeners.js";import{usePickProps as t}from"../../composables/use-props.js";import"../../composables/index.js";import n from"./tree-menu-options-compact.js";import r from"./tree-menu-root.js";import{computed as i,createBlock as a,createCommentVNode as o,createSlots as s,createVNode as c,defineComponent as l,guardReactiveProps as u,mergeProps as d,normalizeProps as f,openBlock as p,renderList as m,renderSlot as h,toHandlers as g,unref as _,useSlots as v,withCtx as y}from"vue";import{keysOf as b}from"@soybeanjs/utils";const x=l({name:`TreeMenuCompact`,__name:`tree-menu-compact`,props:{modelValue:{},defaultValue:{},expanded:{},defaultExpanded:{},collapsed:{type:Boolean,default:void 0},defaultCollapsed:{type:Boolean},collapsedWidth:{default:50},indent:{default:16},pxToRem:{},items:{},groupRootProps:{},groupProps:{},groupLabelProps:{},showGroupIcon:{type:Boolean},side:{default:`left`},itemProps:{},buttonProps:{},linkProps:{},collapsibleProps:{},subProps:{}},emits:[`update:modelValue`,`update:expanded`,`update:collapsed`,`selectDropdown`],setup(l,{emit:x}){let S=l,C=x,w=v(),T=t(S,[`modelValue`,`defaultValue`,`expanded`,`defaultExpanded`,`collapsed`,`defaultCollapsed`,`collapsedWidth`,`indent`,`pxToRem`]),E=t(S,[`side`,`items`,`groupRootProps`,`groupProps`,`groupLabelProps`,`showGroupIcon`,`itemProps`,`buttonProps`,`linkProps`,`collapsibleProps`,`subProps`]),D=e(C),O=i(()=>b(w).filter(e=>e!==`top`&&e!==`bottom`));return(e,t)=>(p(),a(r,d(_(T),g(_(D))),{default:y(()=>[h(e.$slots,`top`),c(n,d(_(E),{onSelectDropdown:t[0]||(t[0]=e=>C(`selectDropdown`,e))}),s({_:2},[m(O.value,t=>({name:t,fn:y(n=>[o(` @vue-expect-error ignore slot type `),h(e.$slots,t,f(u(n)))])}))]),1040),h(e.$slots,`bottom`)]),_:3},16))}});export{x as default};
@@ -1 +1 @@
1
- import{e}from"../../node_modules/.pnpm/@soybeanjs_utils@0.1.1/node_modules/@soybeanjs/utils/dist/index.js";import{useOmitProps as t}from"../../composables/use-props.js";import"../../composables/index.js";import n from"../link/link.js";import r from"../dropdown-menu/dropdown-menu-compact.js";import i from"../tooltip/tooltip-compact.js";import{useTreeMenuRootContext as a,useTreeMenuUi as o}from"./context.js";import s from"./tree-menu-button.js";import c from"./tree-menu-collapsible.js";import l from"./tree-menu-slot-compact.js";import u from"./tree-menu-item.js";import d from"./tree-menu-sub.js";import{Fragment as f,computed as p,createBlock as m,createCommentVNode as h,createElementBlock as g,createElementVNode as _,createSlots as v,createVNode as y,defineComponent as b,guardReactiveProps as x,mergeProps as S,normalizeClass as C,normalizeProps as w,openBlock as T,renderList as E,renderSlot as D,resolveComponent as O,unref as k,useSlots as A,withCtx as j}from"vue";const M=b({name:`TreeMenuOptionCompact`,__name:`tree-menu-option-compact`,props:{as:{default:`li`},item:{},side:{},activePaths:{},itemProps:{},buttonProps:{},linkProps:{},collapsibleProps:{},subProps:{}},emits:[`selectDropdown`],setup(b,{emit:M}){let N=b,P=M,F=A(),I=t(N,[`as`,`item`]),L=p(()=>e(F)),R=o(),{collapsed:z,modelValue:B,onModelValueChange:V}=a(`TreeMenuCompactOption`),H=p(()=>N.item.children??[]),U=p(()=>!!H.value.length),W=p(()=>B.value===N.item.value?!1:!!N.activePaths?.includes(N.item.value)),G=p(()=>!!(N.item.to||N.item.href)),K=p(()=>{if(!G.value)return{};let{disabled:e,to:t,href:n,target:r,external:i}=N.item;return{...N.linkProps,disabled:e,to:t,href:n,target:r,external:i}}),q=p(()=>z.value&&U.value),J=p(()=>z.value&&!q.value?N.item.label:void 0),Y=p(()=>N.side===`left`?`right`:`left`),X=p(()=>({...N.item.tooltipProps,placement:N.item.tooltipProps?.placement??Y.value})),Z=p(()=>({...N.item.dropdownMenuProps,placement:N.item.dropdownMenuProps?.placement??Y.value,trigger:N.item.dropdownMenuProps?.trigger??`hover`})),Q=()=>{N.item.disabled||V(N.item.value)},$=e=>{N.item.disabled||(V(e.value),P(`selectDropdown`,e.value))};return(e,t)=>{let a=O(`TreeMenuOptionCompact`,!0);return U.value?(T(),m(u,S({key:1},b.itemProps,{"as-child":``,value:b.item.value,disabled:b.item.disabled}),{default:j(()=>[y(c,S(b.collapsibleProps,{as:b.as,"disabled-collapsible":k(z)}),{trigger:j(()=>[y(s,S(b.buttonProps,{"disabled-active":``,"data-child-active":W.value?``:void 0}),{default:j(()=>[y(l,{item:b.item},v({_:2},[E(L.value,t=>({name:t,fn:j(n=>[D(e.$slots,t,w(x(n)))])}))]),1032,[`item`])]),_:3},16,[`data-child-active`])]),extra:j(()=>[q.value?(T(),m(r,S({key:0},Z.value,{items:H.value,disabled:b.item.disabled,"active-value":k(B),"data-menu":b.item.label,onSelect:$}),{trigger:j(()=>[_(`div`,{class:C(k(R).itemAbsolute)},null,2)]),_:1},16,[`items`,`disabled`,`active-value`,`data-menu`])):h(`v-if`,!0)]),default:j(()=>[y(d,w(x(b.subProps)),{default:j(()=>[(T(!0),g(f,null,E(H.value,n=>(T(),m(a,S({key:n.value},{ref_for:!0},k(I),{item:n,side:b.side,"active-paths":b.activePaths,onSelectDropdown:t[0]||(t[0]=e=>P(`selectDropdown`,e))}),v({_:2},[E(L.value,t=>({name:t,fn:j(n=>[D(e.$slots,t,S({ref_for:!0},n))])}))]),1040,[`item`,`side`,`active-paths`]))),128))]),_:3},16)]),_:3},16,[`as`,`disabled-collapsible`])]),_:3},16,[`value`,`disabled`])):(T(),m(u,S({key:0},b.itemProps,{as:b.as,value:b.item.value,disabled:b.item.disabled}),{default:j(()=>[G.value?(T(),m(s,S({key:0},b.buttonProps,{"as-child":``}),{default:j(()=>[y(n,w(x(K.value)),{default:j(({isHref:t})=>[y(l,{item:b.item,"show-link-icon":t},v({_:2},[E(L.value,t=>({name:t,fn:j(n=>[D(e.$slots,t,w(x(n)))])}))]),1032,[`item`,`show-link-icon`])]),_:3},16)]),_:3},16)):(T(),m(s,w(S({key:1},b.buttonProps)),{default:j(()=>[y(l,{item:b.item},v({_:2},[E(L.value,t=>({name:t,fn:j(n=>[D(e.$slots,t,w(x(n)))])}))]),1032,[`item`])]),_:3},16)),J.value?(T(),m(i,S({key:2},X.value,{content:J.value}),{trigger:j(()=>[G.value?(T(),m(n,S({key:0},K.value,{class:k(R).itemAbsolute,onClick:Q}),null,16,[`class`])):(T(),g(`div`,{key:1,class:C(k(R).itemAbsolute),onClick:Q},null,2))]),_:1},16,[`content`])):h(`v-if`,!0)]),_:3},16,[`as`,`value`,`disabled`]))}}});export{M as default};
1
+ import{useOmitProps as e}from"../../composables/use-props.js";import"../../composables/index.js";import t from"../link/link.js";import n from"../dropdown-menu/dropdown-menu-compact.js";import r from"../tooltip/tooltip-compact.js";import{useTreeMenuRootContext as i,useTreeMenuUi as a}from"./context.js";import o from"./tree-menu-button.js";import s from"./tree-menu-collapsible.js";import c from"./tree-menu-slot-compact.js";import l from"./tree-menu-item.js";import u from"./tree-menu-sub.js";import{Fragment as d,computed as f,createBlock as p,createCommentVNode 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,resolveComponent as D,unref as O,useSlots as k,withCtx as A}from"vue";import{keysOf as j}from"@soybeanjs/utils";const M=y({name:`TreeMenuOptionCompact`,__name:`tree-menu-option-compact`,props:{as:{default:`li`},item:{},side:{},activePaths:{},itemProps:{},buttonProps:{},linkProps:{},collapsibleProps:{},subProps:{}},emits:[`selectDropdown`],setup(y,{emit:M}){let N=y,P=M,F=k(),I=e(N,[`as`,`item`]),L=f(()=>j(F)),R=a(),{collapsed:z,modelValue:B,onModelValueChange:V}=i(`TreeMenuCompactOption`),H=f(()=>N.item.children??[]),U=f(()=>!!H.value.length),W=f(()=>B.value===N.item.value?!1:!!N.activePaths?.includes(N.item.value)),G=f(()=>!!(N.item.to||N.item.href)),K=f(()=>{if(!G.value)return{};let{disabled:e,to:t,href:n,target:r,external:i}=N.item;return{...N.linkProps,disabled:e,to:t,href:n,target:r,external:i}}),q=f(()=>z.value&&U.value),J=f(()=>z.value&&!q.value?N.item.label:void 0),Y=f(()=>N.side===`left`?`right`:`left`),X=f(()=>({...N.item.tooltipProps,placement:N.item.tooltipProps?.placement??Y.value})),Z=f(()=>({...N.item.dropdownMenuProps,placement:N.item.dropdownMenuProps?.placement??Y.value,trigger:N.item.dropdownMenuProps?.trigger??`hover`})),Q=()=>{N.item.disabled||V(N.item.value)},$=e=>{N.item.disabled||(V(e.value),P(`selectDropdown`,e.value))};return(e,i)=>{let a=D(`TreeMenuOptionCompact`,!0);return U.value?(w(),p(l,x({key:1},y.itemProps,{"as-child":``,value:y.item.value,disabled:y.item.disabled}),{default:A(()=>[v(s,x(y.collapsibleProps,{as:y.as,"disabled-collapsible":O(z)}),{trigger:A(()=>[v(o,x(y.buttonProps,{"disabled-active":``,"data-child-active":W.value?``:void 0}),{default:A(()=>[v(c,{item:y.item},_({_:2},[T(L.value,t=>({name:t,fn:A(n=>[E(e.$slots,t,C(b(n)))])}))]),1032,[`item`])]),_:3},16,[`data-child-active`])]),extra:A(()=>[q.value?(w(),p(n,x({key:0},Z.value,{items:H.value,disabled:y.item.disabled,"active-value":O(B),"data-menu":y.item.label,onSelect:$}),{trigger:A(()=>[g(`div`,{class:S(O(R).itemAbsolute)},null,2)]),_:1},16,[`items`,`disabled`,`active-value`,`data-menu`])):m(`v-if`,!0)]),default:A(()=>[v(u,C(b(y.subProps)),{default:A(()=>[(w(!0),h(d,null,T(H.value,t=>(w(),p(a,x({key:t.value},{ref_for:!0},O(I),{item:t,side:y.side,"active-paths":y.activePaths,onSelectDropdown:i[0]||(i[0]=e=>P(`selectDropdown`,e))}),_({_:2},[T(L.value,t=>({name:t,fn:A(n=>[E(e.$slots,t,x({ref_for:!0},n))])}))]),1040,[`item`,`side`,`active-paths`]))),128))]),_:3},16)]),_:3},16,[`as`,`disabled-collapsible`])]),_:3},16,[`value`,`disabled`])):(w(),p(l,x({key:0},y.itemProps,{as:y.as,value:y.item.value,disabled:y.item.disabled}),{default:A(()=>[G.value?(w(),p(o,x({key:0},y.buttonProps,{"as-child":``}),{default:A(()=>[v(t,C(b(K.value)),{default:A(({isHref:t})=>[v(c,{item:y.item,"show-link-icon":t},_({_:2},[T(L.value,t=>({name:t,fn:A(n=>[E(e.$slots,t,C(b(n)))])}))]),1032,[`item`,`show-link-icon`])]),_:3},16)]),_:3},16)):(w(),p(o,C(x({key:1},y.buttonProps)),{default:A(()=>[v(c,{item:y.item},_({_:2},[T(L.value,t=>({name:t,fn:A(n=>[E(e.$slots,t,C(b(n)))])}))]),1032,[`item`])]),_:3},16)),J.value?(w(),p(r,x({key:2},X.value,{content:J.value}),{trigger:A(()=>[G.value?(w(),p(t,x({key:0},K.value,{class:O(R).itemAbsolute,onClick:Q}),null,16,[`class`])):(w(),h(`div`,{key:1,class:S(O(R).itemAbsolute),onClick:Q},null,2))]),_:1},16,[`content`])):m(`v-if`,!0)]),_:3},16,[`as`,`value`,`disabled`]))}}});export{M as default};
@@ -1 +1 @@
1
- import{getTreePaths as e}from"../../shared/tree.js";import"../../shared/index.js";import{e as t}from"../../node_modules/.pnpm/@soybeanjs_utils@0.1.1/node_modules/@soybeanjs/utils/dist/index.js";import{usePickProps as n}from"../../composables/use-props.js";import"../../composables/index.js";import r from"../_icon/icon.js";import{useTreeMenuRootContext as i}from"./context.js";import{filterHiddenTreeMenuOptions as a}from"./shared.js";import o from"./tree-menu-option-compact.js";import s from"./tree-menu-group.js";import c from"./tree-menu-group-label.js";import l from"./tree-menu-group-root.js";import{Fragment as u,computed as d,createBlock as f,createCommentVNode as p,createElementBlock as m,createElementVNode as h,createSlots as g,createVNode as _,defineComponent as v,mergeProps as y,openBlock as b,renderList as x,renderSlot as S,toDisplayString as C,unref as w,useSlots as T,withCtx as E}from"vue";const D=v({name:`TreeMenuCompactOptions`,__name:`tree-menu-options-compact`,props:{items:{},groupRootProps:{},groupProps:{},groupLabelProps:{},showGroupIcon:{type:Boolean},side:{},itemProps:{},buttonProps:{},linkProps:{},collapsibleProps:{},subProps:{}},emits:[`selectDropdown`],setup(v,{emit:D}){let O=v,k=D,A=T(),j=d(()=>t(A).filter(e=>e!==`group-label`)),M=n(O,[`itemProps`,`buttonProps`,`linkProps`,`collapsibleProps`,`subProps`]),{modelValue:N}=i(`TreeMenuCompactOptions`),P=d(()=>a(O.items)),F=d(()=>e(N.value,P.value));return(e,t)=>(b(!0),m(u,null,x(P.value,n=>(b(),m(u,{key:n.value},[n.isGroup?(b(),f(l,y({key:0,ref_for:!0},v.groupRootProps),{default:E(()=>[_(c,y({ref_for:!0},v.groupLabelProps),{default:E(()=>[S(e.$slots,`group-label`,{item:n},()=>[v.showGroupIcon&&n.icon?(b(),f(r,{key:0,icon:n.icon,"aria-hidden":`true`},null,8,[`icon`])):p(`v-if`,!0),h(`span`,null,C(n.label),1)])]),_:2},1040),_(s,y({ref_for:!0},v.groupProps),{default:E(()=>[(b(!0),m(u,null,x(n.children,n=>(b(),f(o,y({key:n.value},{ref_for:!0},w(M),{item:n,side:v.side,"active-paths":F.value,onSelectDropdown:t[0]||(t[0]=e=>k(`selectDropdown`,e))}),g({_:2},[x(j.value,t=>({name:t,fn:E(n=>[S(e.$slots,t,y({ref_for:!0},n))])}))]),1040,[`item`,`side`,`active-paths`]))),128))]),_:2},1040)]),_:2},1040)):(b(),f(o,y({key:1,as:`div`},{ref_for:!0},w(M),{item:n,side:v.side,"active-paths":F.value,onSelectDropdown:t[1]||(t[1]=e=>k(`selectDropdown`,e))}),g({_:2},[x(j.value,t=>({name:t,fn:E(n=>[S(e.$slots,t,y({ref_for:!0},n))])}))]),1040,[`item`,`side`,`active-paths`]))],64))),128))}});export{D as default};
1
+ import{getTreePaths as e}from"../../shared/tree.js";import"../../shared/index.js";import{usePickProps as t}from"../../composables/use-props.js";import"../../composables/index.js";import n from"../_icon/icon.js";import{useTreeMenuRootContext as r}from"./context.js";import{filterHiddenTreeMenuOptions as i}from"./shared.js";import a from"./tree-menu-option-compact.js";import o from"./tree-menu-group.js";import s from"./tree-menu-group-label.js";import c from"./tree-menu-group-root.js";import{Fragment as l,computed as u,createBlock as d,createCommentVNode as f,createElementBlock as p,createElementVNode as m,createSlots as h,createVNode as g,defineComponent as _,mergeProps as v,openBlock as y,renderList as b,renderSlot as x,toDisplayString as S,unref as C,useSlots as w,withCtx as T}from"vue";import{keysOf as E}from"@soybeanjs/utils";const D=_({name:`TreeMenuCompactOptions`,__name:`tree-menu-options-compact`,props:{items:{},groupRootProps:{},groupProps:{},groupLabelProps:{},showGroupIcon:{type:Boolean},side:{},itemProps:{},buttonProps:{},linkProps:{},collapsibleProps:{},subProps:{}},emits:[`selectDropdown`],setup(_,{emit:D}){let O=_,k=D,A=w(),j=u(()=>E(A).filter(e=>e!==`group-label`)),M=t(O,[`itemProps`,`buttonProps`,`linkProps`,`collapsibleProps`,`subProps`]),{modelValue:N}=r(`TreeMenuCompactOptions`),P=u(()=>i(O.items)),F=u(()=>e(N.value,P.value));return(e,t)=>(y(!0),p(l,null,b(P.value,r=>(y(),p(l,{key:r.value},[r.isGroup?(y(),d(c,v({key:0,ref_for:!0},_.groupRootProps),{default:T(()=>[g(s,v({ref_for:!0},_.groupLabelProps),{default:T(()=>[x(e.$slots,`group-label`,{item:r},()=>[_.showGroupIcon&&r.icon?(y(),d(n,{key:0,icon:r.icon,"aria-hidden":`true`},null,8,[`icon`])):f(`v-if`,!0),m(`span`,null,S(r.label),1)])]),_:2},1040),g(o,v({ref_for:!0},_.groupProps),{default:T(()=>[(y(!0),p(l,null,b(r.children,n=>(y(),d(a,v({key:n.value},{ref_for:!0},C(M),{item:n,side:_.side,"active-paths":F.value,onSelectDropdown:t[0]||(t[0]=e=>k(`selectDropdown`,e))}),h({_:2},[b(j.value,t=>({name:t,fn:T(n=>[x(e.$slots,t,v({ref_for:!0},n))])}))]),1040,[`item`,`side`,`active-paths`]))),128))]),_:2},1040)]),_:2},1040)):(y(),d(a,v({key:1,as:`div`},{ref_for:!0},C(M),{item:r,side:_.side,"active-paths":F.value,onSelectDropdown:t[1]||(t[1]=e=>k(`selectDropdown`,e))}),h({_:2},[b(j.value,t=>({name:t,fn:T(n=>[x(e.$slots,t,v({ref_for:!0},n))])}))]),1040,[`item`,`side`,`active-paths`]))],64))),128))}});export{D as default};
@@ -17,10 +17,10 @@ declare const __VLS_base: _$vue.DefineComponent<TreeMenuRootProps, {}, {}, {}, {
17
17
  }>, {
18
18
  defaultValue: string;
19
19
  defaultExpanded: string[];
20
- indent: number;
21
20
  collapsed: boolean;
22
21
  defaultCollapsed: boolean;
23
22
  collapsedWidth: number;
23
+ indent: number;
24
24
  pxToRem: (px: number) => number;
25
25
  }, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
26
26
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
@@ -1,6 +1,7 @@
1
1
  import { VNodeRef } from "../types/vue.js";
2
2
  import * as _$vue from "vue";
3
3
  import { MaybeRefOrGetter, Ref } from "vue";
4
+ import * as _$_soybeanjs_hooks0 from "@soybeanjs/hooks";
4
5
 
5
6
  //#region src/composables/use-collection.d.ts
6
7
  interface CollectionItemData<ItemData = Record<string, any>> {
@@ -21,25 +22,13 @@ declare function useCollection<ItemData = Record<string, any>>(collectionName: s
21
22
  getOrderedItems: (excludeDisabled?: boolean) => CollectionItemData<ItemData>[];
22
23
  getOrderedElements: (excludeDisabled?: boolean) => HTMLElement[];
23
24
  };
24
- useCollectionContext: <N extends string | null | undefined = undefined>(consumerName?: N | undefined, defaultValue?: {
25
+ useCollectionContext: _$_soybeanjs_hooks0.ContextConsumer<{
25
26
  containerElement: _$vue.ShallowRef<HTMLElement | undefined, HTMLElement | undefined>;
26
27
  onContainerElementChange: (element: HTMLElement) => void;
27
28
  itemRegistry: Ref<Map<HTMLElement, CollectionItemData<ItemData>>, Map<HTMLElement, CollectionItemData<ItemData>>>;
28
29
  getOrderedItems: (excludeDisabled?: boolean) => CollectionItemData<ItemData>[];
29
30
  getOrderedElements: (excludeDisabled?: boolean) => HTMLElement[];
30
- } | undefined) => N extends null | undefined ? {
31
- containerElement: _$vue.ShallowRef<HTMLElement | undefined, HTMLElement | undefined>;
32
- onContainerElementChange: (element: HTMLElement) => void;
33
- itemRegistry: Ref<Map<HTMLElement, CollectionItemData<ItemData>>, Map<HTMLElement, CollectionItemData<ItemData>>>;
34
- getOrderedItems: (excludeDisabled?: boolean) => CollectionItemData<ItemData>[];
35
- getOrderedElements: (excludeDisabled?: boolean) => HTMLElement[];
36
- } | null : {
37
- containerElement: _$vue.ShallowRef<HTMLElement | undefined, HTMLElement | undefined>;
38
- onContainerElementChange: (element: HTMLElement) => void;
39
- itemRegistry: Ref<Map<HTMLElement, CollectionItemData<ItemData>>, Map<HTMLElement, CollectionItemData<ItemData>>>;
40
- getOrderedItems: (excludeDisabled?: boolean) => CollectionItemData<ItemData>[];
41
- getOrderedElements: (excludeDisabled?: boolean) => HTMLElement[];
42
- };
31
+ }>;
43
32
  useCollectionItem: (itemData?: MaybeRefOrGetter<ItemData>) => {
44
33
  itemElement: _$vue.ShallowRef<HTMLElement | undefined, HTMLElement | undefined>;
45
34
  onItemElementChange: (element: HTMLElement) => void;
@@ -1 +1 @@
1
- import{getCollectionItemElements as e,isElementHasAttribute as t}from"../shared/dom.js";import{getElFromTemplateRef as n}from"../shared/vue.js";import{useContext as r}from"./use-context.js";import"../shared/index.js";import{s as i}from"../node_modules/.pnpm/@soybeanjs_utils@0.1.1/node_modules/@soybeanjs/utils/dist/index.js";import{onBeforeUnmount as a,onWatcherCleanup as o,ref as s,shallowRef as c,toValue as l,watchPostEffect as u}from"vue";function d(d){let[f,p]=r(i(`${d}Collection`),()=>{let n=c(),r=e=>{n.value=e},i=s(new Map),o=(r=!0)=>{if(!n.value)return[];let a=e(n.value),o=[];for(let e of a){let n=i.value.get(e);n&&(!r||!t(e,`disabled`))&&o.push(n)}return o};return a(()=>{i.value.clear()}),{containerElement:n,onContainerElementChange:r,itemRegistry:i,getOrderedItems:o,getOrderedElements:(e=!0)=>o(e).map(e=>e.element)}});return{provideCollectionContext:f,useCollectionContext:p,useCollectionItem:(e={})=>{let{itemRegistry:t}=p(i(`${d}Item`)),r=c(),a=e=>{r.value&&r.value!==e&&t.value.delete(r.value),r.value=e};return u(()=>{r.value&&t.value.set(r.value,{element:r.value,data:l(e)}),o(()=>{r.value&&(t.value.delete(r.value),r.value=void 0)})}),{itemElement:r,onItemElementChange:a,setItemElement:e=>{let t=n(e);t&&a(t)}}}}}export{d as useCollection};
1
+ import{getCollectionItemElements as e,isElementHasAttribute as t}from"../shared/dom.js";import{getElFromTemplateRef as n}from"../shared/vue.js";import{useContext as r}from"./use-context.js";import"../shared/index.js";import{onBeforeUnmount as i,onWatcherCleanup as a,ref as o,shallowRef as s,toValue as c,watchPostEffect as l}from"vue";import{pascalCase as u}from"@soybeanjs/utils";function d(d){let[f,p]=r(u(`${d}Collection`),()=>{let n=s(),r=e=>{n.value=e},a=o(new Map),c=(r=!0)=>{if(!n.value)return[];let i=e(n.value),o=[];for(let e of i){let n=a.value.get(e);n&&(!r||!t(e,`disabled`))&&o.push(n)}return o};return i(()=>{a.value.clear()}),{containerElement:n,onContainerElementChange:r,itemRegistry:a,getOrderedItems:c,getOrderedElements:(e=!0)=>c(e).map(e=>e.element)}});return{provideCollectionContext:f,useCollectionContext:p,useCollectionItem:(e={})=>{let{itemRegistry:t}=p(u(`${d}Item`)),r=s(),i=e=>{r.value&&r.value!==e&&t.value.delete(r.value),r.value=e};return l(()=>{r.value&&t.value.set(r.value,{element:r.value,data:c(e)}),a(()=>{r.value&&(t.value.delete(r.value),r.value=void 0)})}),{itemElement:r,onItemElementChange:i,setItemElement:e=>{let t=n(e);t&&i(t)}}}}}export{d as useCollection};
@@ -1,7 +1,2 @@
1
- //#region src/composables/use-context.d.ts
2
- type ContextValue<T> = T extends ((...args: any[]) => any) ? ReturnType<T> : T;
3
- type ContextProvider<T> = T extends ((...args: any[]) => any) ? T : (arg: T) => T;
4
- type ContextConsumer<Context> = <N extends string | null | undefined = undefined>(consumerName?: N, defaultValue?: Context) => N extends null | undefined ? Context | null : Context;
5
- declare function useContext<T>(contextName: string, composable?: T extends ((...args: any[]) => any) ? T : never): [ContextProvider<T>, ContextConsumer<ContextValue<T>>];
6
- //#endregion
1
+ import { useContext } from "@soybeanjs/hooks";
7
2
  export { useContext };
@@ -1 +1 @@
1
- import{isNullish as e}from"../shared/guard.js";import"../shared/index.js";import{inject as t,provide as n}from"vue";function r(r,i){let a=Symbol(r);return[(...e)=>{let t=i?.(...e)??e[0];return n(a,t),t},(n,i)=>{let o=t(a,i)??null;if(!e(n)&&o===null)throw Error(`\`${n}\` must be used within \`${r}\``);return o}]}export{r as useContext};
1
+ import{useContext as e}from"@soybeanjs/hooks";export{e as useContext};
@@ -1 +1 @@
1
- import{isClient as e}from"../shared/env.js";import"../shared/index.js";import{i as t}from"../node_modules/.pnpm/@soybeanjs_utils@0.1.1/node_modules/@soybeanjs/utils/dist/index.js";import{onWatcherCleanup as n,toValue as r,watchPostEffect as i}from"vue";import{hideOthers as a}from"aria-hidden";function o(o,s=!0){i(()=>{if(!e)return;let i=r(o),c=t(Array.isArray(i)?i:[i]);if(c.length===0||c.some(e=>e.closest(`[popover]:not(:popover-open)`))||!r(s)||import.meta.env.MODE===`test`)return;let l=a(c);n(()=>{l()})})}export{o as useHideOthers};
1
+ import{isClient as e}from"../shared/env.js";import"../shared/index.js";import{onWatcherCleanup as t,toValue as n,watchPostEffect as r}from"vue";import{filterNullish as i}from"@soybeanjs/utils";import{hideOthers as a}from"aria-hidden";function o(o,s=!0){r(()=>{if(!e)return;let r=n(o),c=i(Array.isArray(r)?r:[r]);if(c.length===0||c.some(e=>e.closest(`[popover]:not(:popover-open)`))||!n(s)||import.meta.env.MODE===`test`)return;let l=a(c);t(()=>{l()})})}export{o as useHideOthers};
@@ -1 +1 @@
1
- import{components as e}from"../constants/components.js";import{o as t,s as n}from"../node_modules/.pnpm/@soybeanjs_utils@0.1.1/node_modules/@soybeanjs/utils/dist/index.js";function r(r={}){return{type:`component`,resolve:i=>{let a=Object.values(e).flat(),o=n(i);if(a.includes(o)){let e=t(o).split(`-`)[0];return{name:o,from:r.standalone?`@soybeanjs/headless/${e}`:`@soybeanjs/headless`}}return null}}}export{r as default};
1
+ import{components as e}from"../constants/components.js";import{kebabCase as t,pascalCase as n}from"@soybeanjs/utils";function r(r={}){return{type:`component`,resolve:i=>{let a=Object.values(e).flat(),o=n(i);if(a.includes(o)){let e=t(o).split(`-`)[0];return{name:o,from:r.standalone?`@soybeanjs/headless/${e}`:`@soybeanjs/headless`}}return null}}}export{r as default};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@soybeanjs/headless",
3
- "version": "0.22.0",
3
+ "version": "0.22.1",
4
4
  "description": "SoybeanHeadless is a collection unstyled components for Vue 3. It is designed to be lightweight and easy to use.",
5
5
  "homepage": "https://github.com/soybeanjs/soybean-ui",
6
6
  "bugs": {
@@ -94,6 +94,8 @@
94
94
  "@internationalized/date": "^3.12.1",
95
95
  "@internationalized/number": "^3.6.6",
96
96
  "@soybeanjs/colord": "^0.5.0",
97
+ "@soybeanjs/hooks": "^0.3.0",
98
+ "@soybeanjs/utils": "^0.1.1",
97
99
  "@standard-schema/spec": "^1.1.0",
98
100
  "@tanstack/vue-virtual": "^3.13.24",
99
101
  "@vue/shared": "^3.5.34",
@@ -117,7 +119,7 @@
117
119
  "unplugin-vue-components": "^32.0.0",
118
120
  "unplugin-vue-jsx": "0.9.0",
119
121
  "vue": "3.5.34",
120
- "vue-router": "5.0.6"
122
+ "vue-router": "5.0.7"
121
123
  },
122
124
  "peerDependencies": {
123
125
  "@nuxt/kit": "^4.3.0",
@@ -1 +0,0 @@
1
- const e=e=>Object.keys(e),t=e=>e==null,n=e=>e.filter(e=>!t(e)),r=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),i=e=>e.replace(/(^\w|[-_]\w)/g,e=>e.replace(/[-_]/,``).toUpperCase());export{e,n as i,r as o,i as s};