@soybeanjs/headless 0.19.0 → 0.21.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.
- package/README.md +46 -0
- package/README.zh-CN.md +46 -0
- package/dist/components/alert/alert-compact.vue.d.ts +2 -2
- package/dist/components/anchor/anchor-root.vue.d.ts +1 -1
- package/dist/components/autocomplete/autocomplete-compact.vue.d.ts +2 -2
- package/dist/components/autocomplete/autocomplete-root.js +1 -1
- package/dist/components/autocomplete/autocomplete-root.vue.d.ts +4 -4
- package/dist/components/backtop/backtop.vue.d.ts +2 -2
- package/dist/components/bottom-sheet/bottom-sheet-compact.js +1 -1
- package/dist/components/bottom-sheet/bottom-sheet-root-nested.js +1 -1
- package/dist/components/bottom-sheet/bottom-sheet-root-nested.vue.d.ts +2 -2
- package/dist/components/bottom-sheet/bottom-sheet-root.js +1 -1
- package/dist/components/calendar-range/calendar-range-root.vue.d.ts +7 -7
- package/dist/components/card/card-root.vue.d.ts +1 -1
- package/dist/components/card/types.d.ts +2 -2
- package/dist/components/clipboard/clipboard.vue.d.ts +1 -1
- package/dist/components/collapsible/collapsible-root.vue.d.ts +1 -1
- package/dist/components/color-area/color-area-compact.vue.d.ts +2 -2
- package/dist/components/color-area/color-area-root.vue.d.ts +2 -2
- package/dist/components/color-field/color-field-root.vue.d.ts +2 -2
- package/dist/components/color-picker/color-picker-compact.vue.d.ts +4 -4
- package/dist/components/color-picker/color-picker-root.vue.d.ts +2 -2
- package/dist/components/color-slider/color-slider-compact.vue.d.ts +2 -2
- package/dist/components/color-slider/color-slider-root.vue.d.ts +3 -3
- package/dist/components/color-swatch-picker/color-swatch-picker-root.js +1 -1
- package/dist/components/color-swatch-picker/types.d.ts +2 -2
- package/dist/components/combobox/combobox-compact.vue.d.ts +3 -3
- package/dist/components/combobox/combobox-content-impl.js +1 -1
- package/dist/components/combobox/combobox-root.js +1 -1
- package/dist/components/combobox/combobox-root.vue.d.ts +2 -2
- package/dist/components/config-provider/config-provider.js +14 -2
- package/dist/components/config-provider/config-provider.vue.d.ts +0 -2
- package/dist/components/config-provider/types.d.ts +1 -1
- package/dist/components/context-menu/context-menu-checkbox-compact.vue.d.ts +2 -2
- package/dist/components/context-menu/context-menu-radio-compact.vue.d.ts +2 -2
- package/dist/components/date-field/date-field-root.vue.d.ts +2 -2
- package/dist/components/date-picker/date-picker-compact.js +1 -1
- package/dist/components/date-picker/date-picker-compact.vue.d.ts +10 -10
- package/dist/components/date-range-field/date-range-field-root.vue.d.ts +2 -2
- package/dist/components/date-range-picker/date-range-picker-compact.vue.d.ts +9 -9
- package/dist/components/dialog/dialog-compact.js +1 -1
- package/dist/components/dialog/dialog-compact.vue.d.ts +5 -5
- package/dist/components/dialog/dialog-popup-impl.js +1 -1
- package/dist/components/dialog/dialog-root.js +1 -1
- package/dist/components/dialog/state.js +1 -1
- package/dist/components/dialog/types.d.ts +5 -1
- package/dist/components/dropdown-menu/dropdown-menu-checkbox-compact.vue.d.ts +2 -2
- package/dist/components/dropdown-menu/dropdown-menu-content.vue.d.ts +1 -1
- package/dist/components/dropdown-menu/dropdown-menu-radio-compact.vue.d.ts +2 -2
- package/dist/components/editable/editable-root.vue.d.ts +1 -1
- package/dist/components/editable/types.d.ts +2 -2
- package/dist/components/hover-card/hover-card-compact.js +1 -1
- package/dist/components/hover-card/hover-card-compact.vue.d.ts +0 -1
- package/dist/components/hover-card/hover-card-root.vue.d.ts +1 -1
- package/dist/components/hover-card/types.d.ts +2 -2
- package/dist/components/input-otp/input-otp-compact.vue.d.ts +4 -4
- package/dist/components/input-otp/input-otp-root.vue.d.ts +4 -4
- package/dist/components/layout/layout-classic-compact.vue.d.ts +1 -1
- package/dist/components/layout/layout-compact.vue.d.ts +1 -1
- package/dist/components/layout/layout-root.vue.d.ts +1 -1
- package/dist/components/listbox/listbox-root.js +1 -1
- package/dist/components/menubar/menubar-compact.vue.d.ts +2 -2
- package/dist/components/menubar/menubar-content.js +1 -1
- package/dist/components/menubar/menubar-root.js +1 -1
- package/dist/components/navigation-menu/context.js +1 -1
- package/dist/components/navigation-menu/index.d.ts +3 -3
- package/dist/components/navigation-menu/index.js +1 -1
- package/dist/components/navigation-menu/navigation-menu-compact.js +1 -1
- package/dist/components/navigation-menu/navigation-menu-indicator.js +1 -1
- package/dist/components/navigation-menu/navigation-menu-item-slot-compact.js +1 -0
- package/dist/components/navigation-menu/navigation-menu-list.js +1 -1
- package/dist/components/navigation-menu/navigation-menu-option-compact.js +1 -0
- package/dist/components/navigation-menu/navigation-menu-root.js +1 -1
- package/dist/components/navigation-menu/navigation-menu-root.vue.d.ts +1 -2
- package/dist/components/navigation-menu/navigation-menu-sub-option-compact.js +1 -0
- package/dist/components/navigation-menu/navigation-menu-viewport.js +1 -1
- package/dist/components/navigation-menu/shared.js +1 -1
- package/dist/components/navigation-menu/types.d.ts +93 -54
- package/dist/components/page-tabs/page-tabs-compact.vue.d.ts +2 -2
- package/dist/components/pagination/pagination-first.js +1 -1
- package/dist/components/pagination/pagination-last.js +1 -1
- package/dist/components/pagination/pagination-next.js +1 -1
- package/dist/components/pagination/pagination-prev.js +1 -1
- package/dist/components/pagination/types.d.ts +10 -10
- package/dist/components/popconfirm/popconfirm-compact.vue.d.ts +4 -4
- package/dist/components/popover/popover-compact.vue.d.ts +1 -1
- package/dist/components/popper/popper-positioner.vue.d.ts +1 -1
- package/dist/components/progress/state.js +1 -1
- package/dist/components/progress/types.d.ts +4 -4
- package/dist/components/radio-group/context.d.ts +3 -2
- package/dist/components/radio-group/context.js +1 -1
- package/dist/components/radio-group/index.d.ts +10 -9
- package/dist/components/radio-group/index.js +1 -1
- package/dist/components/radio-group/radio-group-card-compact.js +1 -0
- package/dist/components/radio-group/radio-group-card-compact.vue.d.ts +21 -0
- package/dist/components/radio-group/radio-group-compact.js +1 -1
- package/dist/components/radio-group/radio-group-compact.vue.d.ts +4 -5
- package/dist/components/radio-group/radio-group-root.vue.d.ts +5 -5
- package/dist/components/radio-group/types.d.ts +67 -13
- package/dist/components/scroll-area/types.d.ts +2 -2
- package/dist/components/select/select-compact.vue.d.ts +2 -2
- package/dist/components/select/select-root.vue.d.ts +2 -2
- package/dist/components/separator/types.d.ts +2 -2
- package/dist/components/slider/types.d.ts +2 -2
- package/dist/components/splitter/splitter-panel.vue.d.ts +2 -2
- package/dist/components/stepper/types.d.ts +2 -2
- package/dist/components/switch/switch-compact.js +1 -1
- package/dist/components/switch/switch-root.js +1 -1
- package/dist/components/switch/types.d.ts +3 -1
- package/dist/components/tabs/tabs-indicator.js +1 -1
- package/dist/components/tabs/tabs-root.vue.d.ts +1 -1
- package/dist/components/tags-input/tags-input-compact.vue.d.ts +2 -2
- package/dist/components/tags-input/tags-input-root.vue.d.ts +2 -2
- package/dist/components/time-field/time-field-root.vue.d.ts +1 -1
- package/dist/components/time-range-field/time-range-field-root.vue.d.ts +1 -1
- package/dist/components/toast/state.js +1 -1
- package/dist/components/toast/toaster.vue.d.ts +1 -1
- package/dist/components/toolbar/toolbar-link.js +1 -1
- package/dist/components/toolbar/toolbar-link.vue.d.ts +1 -2
- package/dist/components/toolbar/toolbar-root.js +1 -1
- package/dist/components/toolbar/toolbar-separator.js +1 -1
- package/dist/components/toolbar/toolbar-toggle-group.js +1 -1
- package/dist/components/toolbar/types.d.ts +7 -2
- package/dist/components/tooltip/tooltip-compact.vue.d.ts +1 -1
- package/dist/components/tooltip/tooltip-root.vue.d.ts +1 -1
- package/dist/components/tooltip/types.d.ts +2 -2
- package/dist/components/tree-menu/tree-menu-root.vue.d.ts +1 -1
- package/dist/constants/components.js +1 -1
- package/dist/index.d.ts +135 -134
- package/dist/index.js +1 -1
- package/dist/locale/index.d.ts +4 -4
- package/dist/locale/index.js +1 -1
- package/dist/locale/langs/ar.d.ts +6 -0
- package/dist/locale/langs/ar.js +1 -0
- package/dist/locale/langs/de.d.ts +6 -0
- package/dist/locale/langs/de.js +1 -0
- package/dist/locale/langs/en.d.ts +3 -3
- package/dist/locale/langs/en.js +1 -1
- package/dist/locale/langs/es.d.ts +6 -0
- package/dist/locale/langs/es.js +1 -0
- package/dist/locale/langs/fr.d.ts +6 -0
- package/dist/locale/langs/fr.js +1 -0
- package/dist/locale/langs/id.d.ts +6 -0
- package/dist/locale/langs/id.js +1 -0
- package/dist/locale/langs/ja.d.ts +6 -0
- package/dist/locale/langs/ja.js +1 -0
- package/dist/locale/langs/ko.d.ts +6 -0
- package/dist/locale/langs/ko.js +1 -0
- package/dist/locale/langs/pt-BR.d.ts +6 -0
- package/dist/locale/langs/pt-BR.js +1 -0
- package/dist/locale/langs/ru.d.ts +6 -0
- package/dist/locale/langs/ru.js +1 -0
- package/dist/locale/langs/tr.d.ts +6 -0
- package/dist/locale/langs/tr.js +1 -0
- package/dist/locale/langs/zh-CN.d.ts +3 -3
- package/dist/locale/langs/zh-CN.js +1 -1
- package/dist/locale/langs/zh-TW.d.ts +6 -0
- package/dist/locale/langs/zh-TW.js +1 -0
- package/dist/locale/locales.d.ts +27 -9
- package/dist/locale/locales.js +1 -1
- package/dist/locale/types.d.ts +8 -1
- package/dist/namespaced/index.d.ts +268 -266
- package/dist/namespaced/index.js +1 -1
- package/dist/types/common.d.ts +2 -1
- package/dist/types/index.d.ts +2 -2
- package/package.json +5 -5
- /package/dist/_virtual/{_@oxc-project_runtime@0.127.0 → _@oxc-project_runtime@0.129.0}/helpers/defineProperty.js +0 -0
- /package/dist/_virtual/{_@oxc-project_runtime@0.127.0 → _@oxc-project_runtime@0.129.0}/helpers/toPrimitive.js +0 -0
- /package/dist/_virtual/{_@oxc-project_runtime@0.127.0 → _@oxc-project_runtime@0.129.0}/helpers/toPropertyKey.js +0 -0
- /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
|
-
|
|
21
|
+
"update:modelValue": (value: string) => any;
|
|
22
22
|
blur: (event: FocusEvent) => any;
|
|
23
|
+
change: (event: Event) => 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
|
-
|
|
32
|
+
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
33
33
|
onBlur?: ((event: FocusEvent) => any) | undefined;
|
|
34
|
+
onChange?: ((event: Event) => 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
|
|
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,8 +8,8 @@ import * as _$vue from "vue";
|
|
|
8
8
|
declare const __VLS_export: <T extends DefinedValue = DefinedValue>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
9
9
|
props: _$vue.PublicProps & __VLS_PrettifyLocal<MenubarCompactProps<T> & {
|
|
10
10
|
onSelect?: ((item: MenuOptionData<T>, event: Event) => any) | undefined;
|
|
11
|
-
"onUpdate:open"?: ((value: boolean) => any) | undefined;
|
|
12
11
|
"onUpdate:modelValue"?: ((value: T) => any) | undefined;
|
|
12
|
+
"onUpdate:open"?: ((value: boolean) => any) | undefined;
|
|
13
13
|
onEntryFocus?: ((event: Event) => any) | undefined;
|
|
14
14
|
onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
|
|
15
15
|
onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
|
|
@@ -23,7 +23,7 @@ declare const __VLS_export: <T extends DefinedValue = DefinedValue>(__VLS_props:
|
|
|
23
23
|
expose: (exposed: {}) => void;
|
|
24
24
|
attrs: any;
|
|
25
25
|
slots: MenubarCompactSlots<T>;
|
|
26
|
-
emit: ((evt: "select", item: MenuOptionData<T>, event: Event) => void) & ((evt: "update:
|
|
26
|
+
emit: ((evt: "select", item: MenuOptionData<T>, event: Event) => void) & ((evt: "update:modelValue", value: T) => 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);
|
|
27
27
|
}>) => _$vue.VNode & {
|
|
28
28
|
__ctx?: Awaited<typeof __VLS_setup>;
|
|
29
29
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{wrapArray as e}from"../../shared/object.js";import"../../shared/index.js";import{useForwardListeners as t}from"../../composables/use-forward-listeners.js";import"../../composables/index.js";import n from"../menu/menu-content.js";import"../menu/index.js";import{useMenubarCollectionContext as r,useMenubarMenuContext as i,useMenubarRootContext as a}from"./context.js";import{isTriggerLink as o}from"./shared.js";import{createBlock as s,defineComponent as c,mergeProps as l,openBlock as u,renderSlot as d,shallowRef as f,toHandlers as p,unref as m,withCtx as h,withKeys as g}from"vue";const _=c({name:`MenubarContent`,__name:`menubar-content`,props:{popupProps:{},placement:{},side:{},sideOffset:{},sideFlip:{type:Boolean},align:{default:`start`},alignOffset:{},alignFlip:{type:Boolean},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},hideShiftedArrow:{type:Boolean},sticky:{},hideWhenDetached:{type:Boolean},positionStrategy:{},updatePositionStrategy:{},disableUpdateOnLayoutShift:{type:Boolean},prioritizePosition:{type:Boolean},reference:{},forceMount:{type:Boolean},loop:{type:Boolean}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`,`entryFocus`],setup(c,{emit:_}){let v=c,y=t(_),{dir:b,
|
|
1
|
+
import{wrapArray as e}from"../../shared/object.js";import"../../shared/index.js";import{useForwardListeners as t}from"../../composables/use-forward-listeners.js";import"../../composables/index.js";import n from"../menu/menu-content.js";import"../menu/index.js";import{useMenubarCollectionContext as r,useMenubarMenuContext as i,useMenubarRootContext as a}from"./context.js";import{isTriggerLink as o}from"./shared.js";import{createBlock as s,defineComponent as c,mergeProps as l,openBlock as u,renderSlot as d,shallowRef as f,toHandlers as p,unref as m,withCtx as h,withKeys as g}from"vue";const _=c({name:`MenubarContent`,__name:`menubar-content`,props:{popupProps:{},placement:{},side:{},sideOffset:{},sideFlip:{type:Boolean},align:{default:`start`},alignOffset:{},alignFlip:{type:Boolean},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},hideShiftedArrow:{type:Boolean},sticky:{},hideWhenDetached:{type:Boolean},positionStrategy:{},updatePositionStrategy:{},disableUpdateOnLayoutShift:{type:Boolean},prioritizePosition:{type:Boolean},reference:{},forceMount:{type:Boolean},loop:{type:Boolean}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`,`entryFocus`],setup(c,{emit:_}){let v=c,y=t(_),{dir:b,isLinkTriggerHovered:x,loop:S,modelValue:C,onMenuOpen:w,setTriggerLink:T}=a(`MenubarContent`),{value:E,triggerId:D,contentId:O,triggerElement:k,wasKeyboardTriggerOpen:A}=i(`MenubarContent`),{getOrderedItems:j}=r(`MenubarContent`),M=f(!1),N=e=>{!C.value&&!M.value&&!x.value&&k.value?.focus(),M.value=!1,e.preventDefault()},P=e=>{let t=e.target;j().some(e=>e.element.contains(t))&&e.preventDefault()},F=()=>{M.value=!0},I=e=>{A.value||e.preventDefault()},L=t=>{let n=t.target.hasAttribute(`data-soybean-menubar-sub-trigger`),r=b.value===`rtl`?`ArrowRight`:`ArrowLeft`,i=t.key===r;if(!i&&n)return;let a=j(),s=a.map(e=>e.data.value);i&&s.reverse();let c=s.findIndex(e=>e===E.value),l=(S.value?e(s,c+1):s.slice(c+1))[0],u=a.find(e=>e.data.value===l);!l||!u||(o(u.element)?(T(),u.element.focus()):w(l))};return(e,t)=>(u(),s(m(n),l(v,{id:m(O),"data-soybean-menubar-content":``,"aria-labelledby":m(D)},p(m(y)),{onCloseAutoFocus:N,onFocusOutside:P,onInteractOutside:F,onEntryFocus:I,onKeydown:g(L,[`arrow-right`,`arrow-left`])}),{default:h(()=>[d(e.$slots,`default`)]),_:3},16,[`id`,`aria-labelledby`]))}});export{_ 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{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{
|
|
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};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{getDisclosureState as e}from"../../shared/value.js";import{useContext as t}from"../../composables/use-context.js";import
|
|
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,
|
|
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
|
|
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-
|
|
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{
|
|
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};
|
|
@@ -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
|
|
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"
|
|
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
|
|
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
|
|
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,{
|
|
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
|
|
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};
|
|
@@ -2,6 +2,7 @@ import { Align, DataOrientation, Direction, UiClass } from "../../types/common.j
|
|
|
2
2
|
import { DismissableLayerEmits, DismissableLayerProps, ForceMountProps } from "../../types/component.js";
|
|
3
3
|
import { BaseProps } from "../../types/vue.js";
|
|
4
4
|
import { PrimitiveWithBaseProps } from "../primitive/types.js";
|
|
5
|
+
import { IconValue } from "../_icon/types.js";
|
|
5
6
|
import { LinkBaseProps, LinkProps } from "../link/types.js";
|
|
6
7
|
import { ShallowRef } from "vue";
|
|
7
8
|
|
|
@@ -165,86 +166,124 @@ type NavigationMenuSubEmits = NavigationMenuRootEmits;
|
|
|
165
166
|
/**
|
|
166
167
|
* Available UI slots for the NavigationMenu component.
|
|
167
168
|
*/
|
|
168
|
-
type NavigationMenuUiSlot = 'root' | 'trigger' | 'content' | 'list' | 'indicator' | 'viewport' | 'item' | 'link' | 'subList' | 'subItem' | 'subLink';
|
|
169
|
+
type NavigationMenuUiSlot = 'root' | 'trigger' | 'content' | 'list' | 'indicator' | 'viewport' | 'item' | 'itemIcon' | 'link' | 'subList' | 'subItem' | 'subLink' | 'triggerIcon' | 'linkIcon' | 'arrow' | 'subItemContent' | 'subLinkContent' | 'subLinkLabel' | 'subLinkDescription';
|
|
169
170
|
/**
|
|
170
171
|
* UI class overrides for the NavigationMenu component.
|
|
171
172
|
*/
|
|
172
173
|
type NavigationMenuUi = UiClass<NavigationMenuUiSlot>;
|
|
173
174
|
/**
|
|
174
|
-
*
|
|
175
|
+
* Option data for the NavigationMenu component.
|
|
175
176
|
*/
|
|
176
|
-
interface
|
|
177
|
-
/** The value of the
|
|
177
|
+
interface NavigationMenuOptionData extends LinkBaseProps {
|
|
178
|
+
/** The value of the option. */
|
|
178
179
|
value: string;
|
|
179
|
-
/** The label to display in the
|
|
180
|
+
/** The label to display in the option. */
|
|
180
181
|
label: string;
|
|
181
|
-
/** The description of the
|
|
182
|
+
/** The description of the option. */
|
|
182
183
|
description?: string;
|
|
183
|
-
/**
|
|
184
|
+
/**
|
|
185
|
+
* The icon of the option.
|
|
186
|
+
*
|
|
187
|
+
* if it is a string, it will be used as the icon name of the iconify.
|
|
188
|
+
*/
|
|
189
|
+
icon?: IconValue;
|
|
190
|
+
/** Whether the option is disabled. */
|
|
184
191
|
disabled?: boolean;
|
|
185
|
-
/** The children of the
|
|
186
|
-
children?:
|
|
192
|
+
/** The children of the option. */
|
|
193
|
+
children?: NavigationMenuOptionData[];
|
|
187
194
|
}
|
|
195
|
+
/**
|
|
196
|
+
* Slots for the NavigationMenuSubOptionCompact component.
|
|
197
|
+
*/
|
|
198
|
+
type NavigationMenuSubOptionCompactSlots = {
|
|
199
|
+
item: (props: {
|
|
200
|
+
item: NavigationMenuOptionData;
|
|
201
|
+
isTrigger?: boolean;
|
|
202
|
+
}) => any;
|
|
203
|
+
'item-leading': (props: {
|
|
204
|
+
item: NavigationMenuOptionData;
|
|
205
|
+
}) => any;
|
|
206
|
+
'item-trailing': (props: {
|
|
207
|
+
item: NavigationMenuOptionData;
|
|
208
|
+
}) => any;
|
|
209
|
+
'item-link-icon': (props: {
|
|
210
|
+
item: NavigationMenuOptionData;
|
|
211
|
+
}) => any;
|
|
212
|
+
'item-children': (props: {
|
|
213
|
+
item: NavigationMenuOptionData;
|
|
214
|
+
}) => any;
|
|
215
|
+
};
|
|
188
216
|
/**
|
|
189
217
|
* Properties for the NavigationMenuCompact component.
|
|
190
218
|
*/
|
|
191
|
-
interface
|
|
192
|
-
/**
|
|
193
|
-
|
|
194
|
-
|
|
219
|
+
interface NavigationMenuOptionCompactProps {
|
|
220
|
+
/**
|
|
221
|
+
* Current item data.
|
|
222
|
+
*/
|
|
223
|
+
item: NavigationMenuOptionData;
|
|
224
|
+
/**
|
|
225
|
+
* Properties forwarded to the item element.
|
|
226
|
+
*/
|
|
195
227
|
itemProps?: NavigationMenuItemProps;
|
|
196
|
-
/**
|
|
228
|
+
/**
|
|
229
|
+
* Properties forwarded to the link element.
|
|
230
|
+
*/
|
|
197
231
|
linkProps?: NavigationMenuLinkProps;
|
|
198
|
-
/**
|
|
232
|
+
/**
|
|
233
|
+
* Properties forwarded to the trigger element.
|
|
234
|
+
*/
|
|
199
235
|
triggerProps?: NavigationMenuTriggerProps;
|
|
200
|
-
/**
|
|
236
|
+
/**
|
|
237
|
+
* Properties forwarded to the content element.
|
|
238
|
+
*/
|
|
201
239
|
contentProps?: NavigationMenuContentProps;
|
|
202
|
-
/**
|
|
240
|
+
/**
|
|
241
|
+
* Properties forwarded to the viewport element.
|
|
242
|
+
*/
|
|
243
|
+
viewportProps?: NavigationMenuViewportProps;
|
|
244
|
+
/**
|
|
245
|
+
* Properties forwarded to the indicator element.
|
|
246
|
+
*/
|
|
247
|
+
indicatorProps?: NavigationMenuIndicatorProps;
|
|
248
|
+
/**
|
|
249
|
+
* Properties forwarded to the list element.
|
|
250
|
+
*/
|
|
203
251
|
listProps?: NavigationMenuListProps;
|
|
204
|
-
/**
|
|
252
|
+
/**
|
|
253
|
+
* Properties forwarded to the sub list element.
|
|
254
|
+
*/
|
|
205
255
|
subListProps?: NavigationMenuListProps;
|
|
206
|
-
/**
|
|
256
|
+
/**
|
|
257
|
+
* Properties forwarded to the sub item element.
|
|
258
|
+
*/
|
|
207
259
|
subItemProps?: NavigationMenuItemProps;
|
|
208
|
-
/** Properties for NavigationMenuViewport. */
|
|
209
|
-
viewportProps?: NavigationMenuViewportProps;
|
|
210
|
-
/** Properties for NavigationMenuIndicator. */
|
|
211
|
-
indicatorProps?: NavigationMenuIndicatorProps;
|
|
212
260
|
}
|
|
213
261
|
/**
|
|
214
|
-
* Events for the
|
|
262
|
+
* Events for the NavigationMenuOptionCompact component.
|
|
215
263
|
*/
|
|
216
|
-
type
|
|
264
|
+
type NavigationMenuOptionCompactEmits = NavigationMenuSubEmits & NavigationMenuContentEmits & NavigationMenuLinkEmits;
|
|
217
265
|
/**
|
|
218
|
-
* Slots for the
|
|
266
|
+
* Slots for the NavigationMenuOptionCompact component.
|
|
219
267
|
*/
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
item: NavigationMenuItemData;
|
|
224
|
-
isTrigger?: boolean;
|
|
225
|
-
}) => any;
|
|
226
|
-
/** Slot for rendering leading content of an item. */
|
|
227
|
-
'item-leading'?: (props: {
|
|
228
|
-
item: NavigationMenuItemData;
|
|
229
|
-
}) => any;
|
|
230
|
-
/** Slot for rendering trailing content of an item. */
|
|
231
|
-
'item-trailing'?: (props: {
|
|
232
|
-
item: NavigationMenuItemData;
|
|
268
|
+
type NavigationMenuOptionCompactSlots = NavigationMenuSubOptionCompactSlots & {
|
|
269
|
+
'item-trigger-icon': (props: {
|
|
270
|
+
item: NavigationMenuOptionData;
|
|
233
271
|
}) => any;
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
}) => any;
|
|
242
|
-
/** Slot for rendering custom children content. */
|
|
243
|
-
'item-children'?: (props: {
|
|
244
|
-
item: NavigationMenuItemData;
|
|
245
|
-
}) => any;
|
|
246
|
-
/** Slot for rendering indicator arrow. */
|
|
247
|
-
indicator?: () => any;
|
|
272
|
+
};
|
|
273
|
+
/**
|
|
274
|
+
* Properties for the NavigationMenuCompact component.
|
|
275
|
+
*/
|
|
276
|
+
interface NavigationMenuCompactProps extends NavigationMenuRootProps, Omit<NavigationMenuOptionCompactProps, 'item'> {
|
|
277
|
+
/** The items to render in the navigation menu. */
|
|
278
|
+
items: NavigationMenuOptionData[];
|
|
248
279
|
}
|
|
280
|
+
/**
|
|
281
|
+
* Events for the NavigationMenuCompact component.
|
|
282
|
+
*/
|
|
283
|
+
type NavigationMenuCompactEmits = NavigationMenuRootEmits & NavigationMenuOptionCompactEmits;
|
|
284
|
+
/**
|
|
285
|
+
* Slots for the NavigationMenuCompact component.
|
|
286
|
+
*/
|
|
287
|
+
type NavigationMenuCompactSlots = NavigationMenuOptionCompactSlots;
|
|
249
288
|
//#endregion
|
|
250
|
-
export { NavigationMenuCompactEmits, NavigationMenuCompactProps, NavigationMenuCompactSlots, NavigationMenuContentEmits, NavigationMenuContentProps, NavigationMenuIndicatorProps,
|
|
289
|
+
export { NavigationMenuCompactEmits, NavigationMenuCompactProps, NavigationMenuCompactSlots, NavigationMenuContentEmits, NavigationMenuContentProps, NavigationMenuIndicatorProps, NavigationMenuItemProps, NavigationMenuLinkEmits, NavigationMenuLinkProps, NavigationMenuListProps, NavigationMenuOptionData, NavigationMenuRootEmits, NavigationMenuRootProps, NavigationMenuSubEmits, NavigationMenuSubListProps, NavigationMenuSubProps, NavigationMenuTriggerProps, NavigationMenuUi, NavigationMenuUiSlot, NavigationMenuViewportProps };
|
|
@@ -5,11 +5,11 @@ import * as _$vue from "vue";
|
|
|
5
5
|
declare const __VLS_export: <T extends PageTabsOptionData = PageTabsOptionData>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
6
6
|
props: _$vue.PublicProps & __VLS_PrettifyLocal<PageTabsCompactProps<T> & {
|
|
7
7
|
onContextmenu?: ((tab: T) => any) | undefined;
|
|
8
|
+
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
8
9
|
onClick?: ((tab: T) => any) | undefined;
|
|
9
10
|
onClose?: ((tab: T) => any) | undefined;
|
|
10
|
-
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
11
|
-
"onUpdate:items"?: ((items: T[]) => any) | undefined;
|
|
12
11
|
onPin?: ((tab: T) => any) | undefined;
|
|
12
|
+
"onUpdate:items"?: ((items: T[]) => any) | undefined;
|
|
13
13
|
onSelectContextMenu?: ((menu: PageTabsContextMenuOptionData, tab: T) => any) | undefined;
|
|
14
14
|
}> & (typeof globalThis extends {
|
|
15
15
|
__VLS_PROPS_FALLBACK: infer P;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useLocaleMessages as e}from"../../locale/hooks.js";import"../../locale/index.js";import t from"../button/button.js";import{usePaginationRootContext as n,usePaginationUi as r}from"./context.js";import{computed as i,createBlock as a,createTextVNode as o,defineComponent as s,mergeProps as c,openBlock as l,renderSlot as u,toDisplayString as d,unref as f,withCtx as p}from"vue";const m=s({name:`PaginationFirst`,__name:`pagination-first`,props:{type:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},setup(s){let m=s,{page:h,onPageChange:g,disabled:_}=n(`PaginationFirst`),v=r(`first`),y=e(),b=i(()=>_.value||h.value===1),x=()=>{g(1)};return(e,n)=>(l(),a(t,c(m,{"data-soybean-pagination-first":``,class:f(v),disabled:b.value,"aria-label":f(y).pagination.firstPage,onClick:x}),{default:p(()=>[u(e.$slots,`default`,{},()=>[o(d(f(y).pagination.firstPage),1)])]),_:3},16,[`class`,`disabled`,`aria-label`]))}});export{m as default};
|
|
1
|
+
import{useLocaleMessages as e}from"../../locale/hooks.js";import"../../locale/index.js";import t from"../button/button.js";import{usePaginationRootContext as n,usePaginationUi as r}from"./context.js";import{computed as i,createBlock as a,createTextVNode as o,defineComponent as s,mergeProps as c,openBlock as l,renderSlot as u,toDisplayString as d,unref as f,withCtx as p}from"vue";const m=s({name:`PaginationFirst`,__name:`pagination-first`,props:{type:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},setup(s){let m=s,{page:h,onPageChange:g,disabled:_}=n(`PaginationFirst`),v=r(`first`),y=e(),b=i(()=>_.value||h.value===1),x=()=>{g(1)};return(e,n)=>(l(),a(t,c(m,{"data-soybean-pagination-first":``,"data-soybean-pagination-action":``,class:f(v),disabled:b.value,"aria-label":f(y).pagination.firstPage,onClick:x}),{default:p(()=>[u(e.$slots,`default`,{},()=>[o(d(f(y).pagination.firstPage),1)])]),_:3},16,[`class`,`disabled`,`aria-label`]))}});export{m as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useLocaleMessages as e}from"../../locale/hooks.js";import"../../locale/index.js";import t from"../button/button.js";import{usePaginationRootContext as n,usePaginationUi as r}from"./context.js";import{computed as i,createBlock as a,createTextVNode as o,defineComponent as s,mergeProps as c,openBlock as l,renderSlot as u,toDisplayString as d,unref as f,withCtx as p}from"vue";const m=s({name:`PaginationLast`,__name:`pagination-last`,props:{type:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},setup(s){let m=s,{page:h,onPageChange:g,pageCount:_,disabled:v}=n(`PaginationLast`),y=r(`last`),b=e(),x=i(()=>v.value||h.value===_.value),S=()=>{g(_.value)};return(e,n)=>(l(),a(t,c(m,{"data-soybean-pagination-last":``,class:f(y),disabled:x.value,"aria-label":f(b).pagination.lastPage,onClick:S}),{default:p(()=>[u(e.$slots,`default`,{},()=>[o(d(f(b).pagination.lastPage),1)])]),_:3},16,[`class`,`disabled`,`aria-label`]))}});export{m as default};
|
|
1
|
+
import{useLocaleMessages as e}from"../../locale/hooks.js";import"../../locale/index.js";import t from"../button/button.js";import{usePaginationRootContext as n,usePaginationUi as r}from"./context.js";import{computed as i,createBlock as a,createTextVNode as o,defineComponent as s,mergeProps as c,openBlock as l,renderSlot as u,toDisplayString as d,unref as f,withCtx as p}from"vue";const m=s({name:`PaginationLast`,__name:`pagination-last`,props:{type:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},setup(s){let m=s,{page:h,onPageChange:g,pageCount:_,disabled:v}=n(`PaginationLast`),y=r(`last`),b=e(),x=i(()=>v.value||h.value===_.value),S=()=>{g(_.value)};return(e,n)=>(l(),a(t,c(m,{"data-soybean-pagination-last":``,"data-soybean-pagination-action":``,class:f(y),disabled:x.value,"aria-label":f(b).pagination.lastPage,onClick:S}),{default:p(()=>[u(e.$slots,`default`,{},()=>[o(d(f(b).pagination.lastPage),1)])]),_:3},16,[`class`,`disabled`,`aria-label`]))}});export{m as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useLocaleMessages as e}from"../../locale/hooks.js";import"../../locale/index.js";import t from"../button/button.js";import{usePaginationRootContext as n,usePaginationUi as r}from"./context.js";import{computed as i,createBlock as a,createTextVNode as o,defineComponent as s,mergeProps as c,openBlock as l,renderSlot as u,toDisplayString as d,unref as f,withCtx as p}from"vue";const m=s({name:`PaginationNext`,__name:`pagination-next`,props:{type:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},setup(s){let m=s,{page:h,onPageChange:g,pageCount:_,disabled:v}=n(`PaginationNext`),y=r(`next`),b=e(),x=i(()=>v.value||h.value===_.value),S=()=>{g(h.value+1)};return(e,n)=>(l(),a(t,c(m,{"data-soybean-pagination-next":``,class:f(y),disabled:x.value,"aria-label":f(b).pagination.nextPage,onClick:S}),{default:p(()=>[u(e.$slots,`default`,{},()=>[o(d(f(b).pagination.nextPage),1)])]),_:3},16,[`class`,`disabled`,`aria-label`]))}});export{m as default};
|
|
1
|
+
import{useLocaleMessages as e}from"../../locale/hooks.js";import"../../locale/index.js";import t from"../button/button.js";import{usePaginationRootContext as n,usePaginationUi as r}from"./context.js";import{computed as i,createBlock as a,createTextVNode as o,defineComponent as s,mergeProps as c,openBlock as l,renderSlot as u,toDisplayString as d,unref as f,withCtx as p}from"vue";const m=s({name:`PaginationNext`,__name:`pagination-next`,props:{type:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},setup(s){let m=s,{page:h,onPageChange:g,pageCount:_,disabled:v}=n(`PaginationNext`),y=r(`next`),b=e(),x=i(()=>v.value||h.value===_.value),S=()=>{g(h.value+1)};return(e,n)=>(l(),a(t,c(m,{"data-soybean-pagination-next":``,"data-soybean-pagination-action":``,class:f(y),disabled:x.value,"aria-label":f(b).pagination.nextPage,onClick:S}),{default:p(()=>[u(e.$slots,`default`,{},()=>[o(d(f(b).pagination.nextPage),1)])]),_:3},16,[`class`,`disabled`,`aria-label`]))}});export{m as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useLocaleMessages as e}from"../../locale/hooks.js";import"../../locale/index.js";import t from"../button/button.js";import{usePaginationRootContext as n,usePaginationUi as r}from"./context.js";import{computed as i,createBlock as a,createTextVNode as o,defineComponent as s,mergeProps as c,openBlock as l,renderSlot as u,toDisplayString as d,unref as f,withCtx as p}from"vue";const m=s({name:`PaginationPrev`,__name:`pagination-prev`,props:{type:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},setup(s){let m=s,{page:h,onPageChange:g,disabled:_}=n(`PaginationPrev`),v=r(`prev`),y=e(),b=i(()=>_.value||h.value===1),x=()=>{g(h.value-1)};return(e,n)=>(l(),a(t,c(m,{"data-soybean-pagination-prev":``,class:f(v),disabled:b.value,"aria-label":f(y).pagination.prevPage,onClick:x}),{default:p(()=>[u(e.$slots,`default`,{},()=>[o(d(f(y).pagination.prevPage),1)])]),_:3},16,[`class`,`disabled`,`aria-label`]))}});export{m as default};
|
|
1
|
+
import{useLocaleMessages as e}from"../../locale/hooks.js";import"../../locale/index.js";import t from"../button/button.js";import{usePaginationRootContext as n,usePaginationUi as r}from"./context.js";import{computed as i,createBlock as a,createTextVNode as o,defineComponent as s,mergeProps as c,openBlock as l,renderSlot as u,toDisplayString as d,unref as f,withCtx as p}from"vue";const m=s({name:`PaginationPrev`,__name:`pagination-prev`,props:{type:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},setup(s){let m=s,{page:h,onPageChange:g,disabled:_}=n(`PaginationPrev`),v=r(`prev`),y=e(),b=i(()=>_.value||h.value===1),x=()=>{g(h.value-1)};return(e,n)=>(l(),a(t,c(m,{"data-soybean-pagination-prev":``,"data-soybean-pagination-action":``,class:f(v),disabled:b.value,"aria-label":f(y).pagination.prevPage,onClick:x}),{default:p(()=>[u(e.$slots,`default`,{},()=>[o(d(f(y).pagination.prevPage),1)])]),_:3},16,[`class`,`disabled`,`aria-label`]))}});export{m as default};
|
|
@@ -58,14 +58,6 @@ interface PaginationEllipsisProps extends BaseProps {}
|
|
|
58
58
|
* Properties for the PaginationButton component.
|
|
59
59
|
*/
|
|
60
60
|
interface PaginationButtonProps extends ButtonProps {}
|
|
61
|
-
/**
|
|
62
|
-
* Available UI slots for the Pagination component.
|
|
63
|
-
*/
|
|
64
|
-
type PaginationUiSlot = 'root' | 'list' | 'listItem' | 'ellipsis' | 'first' | 'prev' | 'next' | 'last';
|
|
65
|
-
/**
|
|
66
|
-
* UI class overrides for the Pagination component.
|
|
67
|
-
*/
|
|
68
|
-
type PaginationUi = UiClass<PaginationUiSlot>;
|
|
69
61
|
/**
|
|
70
62
|
* Type information for PageEllipsis.
|
|
71
63
|
*/
|
|
@@ -136,7 +128,7 @@ type PaginationCompactEmits = PaginationRootEmits;
|
|
|
136
128
|
/**
|
|
137
129
|
* Slots for the PaginationCompact component.
|
|
138
130
|
*/
|
|
139
|
-
|
|
131
|
+
type PaginationCompactSlots = {
|
|
140
132
|
/**
|
|
141
133
|
* Custom content for the leading slot.
|
|
142
134
|
*/
|
|
@@ -165,6 +157,14 @@ interface PaginationCompactSlots {
|
|
|
165
157
|
* Custom content for the ellipsis slot.
|
|
166
158
|
*/
|
|
167
159
|
ellipsis?: () => any;
|
|
168
|
-
}
|
|
160
|
+
};
|
|
161
|
+
/**
|
|
162
|
+
* Available UI slots for the Pagination component.
|
|
163
|
+
*/
|
|
164
|
+
type PaginationUiSlot = 'root' | 'list' | 'listItem' | 'ellipsis' | 'first' | 'prev' | 'next' | 'last';
|
|
165
|
+
/**
|
|
166
|
+
* UI class overrides for the Pagination component.
|
|
167
|
+
*/
|
|
168
|
+
type PaginationUi = UiClass<PaginationUiSlot>;
|
|
169
169
|
//#endregion
|
|
170
170
|
export { Pages, PaginationButtonProps, PaginationCompactEmits, PaginationCompactProps, PaginationCompactSlots, PaginationEllipsisProps, PaginationListItemProps, PaginationListProps, PaginationRootEmits, PaginationRootProps, PaginationUi, PaginationUiSlot };
|