@soybeanjs/ui 0.11.4 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/README.md +7 -7
  2. package/README.zh-CN.md +7 -7
  3. package/dist/components/alert-dialog/alert-dialog-cancel.js +1 -1
  4. package/dist/components/alert-dialog/alert-dialog-cancel.vue.d.ts +6 -5
  5. package/dist/components/alert-dialog/alert-dialog-confirm.js +1 -0
  6. package/dist/components/alert-dialog/alert-dialog-confirm.vue.d.ts +22 -0
  7. package/dist/components/alert-dialog/alert-dialog.js +1 -1
  8. package/dist/components/alert-dialog/alert-dialog.vue.d.ts +3 -4
  9. package/dist/components/{dialog → alert-dialog}/context.d.ts +1 -1
  10. package/dist/components/alert-dialog/context.js +1 -0
  11. package/dist/components/alert-dialog/dialog-provider.js +1 -0
  12. package/dist/components/alert-dialog/index.d.ts +3 -2
  13. package/dist/components/alert-dialog/index.js +1 -1
  14. package/dist/components/alert-dialog/types.d.ts +70 -9
  15. package/dist/components/button/context.js +1 -1
  16. package/dist/components/config-provider/config-provider.js +1 -1
  17. package/dist/components/config-provider/context.js +1 -1
  18. package/dist/components/context-menu/context-menu-checkbox.vue.d.ts +3 -3
  19. package/dist/components/context-menu/context-menu-radio.vue.d.ts +3 -3
  20. package/dist/components/context-menu/context-menu-wrapper.vue.d.ts +2 -2
  21. package/dist/components/context-menu/context-menu.vue.d.ts +2 -2
  22. package/dist/components/dialog/dialog-pure.vue.d.ts +1 -1
  23. package/dist/components/dialog/dialog.vue.d.ts +1 -1
  24. package/dist/components/dialog/index.d.ts +1 -2
  25. package/dist/components/dialog/index.js +1 -1
  26. package/dist/components/dialog/types.d.ts +3 -28
  27. package/dist/components/drawer/drawer.vue.d.ts +1 -1
  28. package/dist/components/dropdown-menu/dropdown-menu-checkbox.vue.d.ts +3 -3
  29. package/dist/components/dropdown-menu/dropdown-menu-radio.vue.d.ts +3 -3
  30. package/dist/components/dropdown-menu/dropdown-menu-wrapper.vue.d.ts +2 -2
  31. package/dist/components/dropdown-menu/dropdown-menu.vue.d.ts +2 -2
  32. package/dist/components/form/context.js +1 -1
  33. package/dist/components/form/index.d.ts +1 -1
  34. package/dist/components/form/types.d.ts +2 -2
  35. package/dist/components/menu/context.js +1 -1
  36. package/dist/components/menu/index.d.ts +1 -1
  37. package/dist/components/menu/menu-option.vue.d.ts +2 -2
  38. package/dist/components/menu/menu-options.vue.d.ts +2 -2
  39. package/dist/components/menu/types.d.ts +2 -2
  40. package/dist/components/page-tabs/page-tabs.vue.d.ts +1 -1
  41. package/dist/components/popconfirm/context.js +1 -0
  42. package/dist/components/popconfirm/index.d.ts +6 -0
  43. package/dist/components/popconfirm/index.js +1 -0
  44. package/dist/components/popconfirm/popconfirm-cancel.js +1 -0
  45. package/dist/components/popconfirm/popconfirm-cancel.vue.d.ts +25 -0
  46. package/dist/components/popconfirm/popconfirm-confirm.js +1 -0
  47. package/dist/components/popconfirm/popconfirm-confirm.vue.d.ts +22 -0
  48. package/dist/components/popconfirm/popconfirm.js +1 -0
  49. package/dist/components/popconfirm/popconfirm.vue.d.ts +62 -0
  50. package/dist/components/popconfirm/types.d.ts +92 -0
  51. package/dist/components/popconfirm/variants.js +1 -0
  52. package/dist/components/popover/popover.js +1 -1
  53. package/dist/components/popover/variants.js +1 -1
  54. package/dist/components/select/select.vue.d.ts +2 -2
  55. package/dist/components/tooltip/tooltip.js +1 -1
  56. package/dist/components/tree-menu/context.js +1 -1
  57. package/dist/components/tree-menu/index.d.ts +1 -1
  58. package/dist/components/tree-menu/types.d.ts +3 -3
  59. package/dist/constants/components.d.ts +1 -0
  60. package/dist/constants/components.js +1 -1
  61. package/dist/index.d.ts +34 -29
  62. package/dist/index.js +1 -1
  63. package/dist/styles.css +1 -0
  64. package/package.json +2 -2
  65. package/dist/components/alert-dialog/alert-dialog-action.js +0 -1
  66. package/dist/components/alert-dialog/alert-dialog-action.vue.d.ts +0 -22
  67. package/dist/components/dialog/context.js +0 -1
  68. package/dist/components/dialog/dialog-provider.js +0 -1
@@ -11,22 +11,22 @@ type __VLS_Slots = {} & {
11
11
  };
12
12
  declare const __VLS_base: vue.DefineComponent<DropdownMenuWrapperProps, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
13
13
  "update:open": (value: boolean) => any;
14
- entryFocus: (event: Event) => any;
15
14
  escapeKeyDown: (event: KeyboardEvent) => any;
16
15
  pointerDownOutside: (event: _soybeanjs_headless0.PointerDownOutsideEvent) => any;
17
16
  focusOutside: (event: _soybeanjs_headless0.FocusOutsideEvent) => any;
18
17
  interactOutside: (event: _soybeanjs_headless0.PointerDownOutsideEvent | _soybeanjs_headless0.FocusOutsideEvent) => any;
19
18
  openAutoFocus: (event: Event) => any;
20
19
  closeAutoFocus: (event: Event) => any;
20
+ entryFocus: (event: Event) => any;
21
21
  }, string, vue.PublicProps, Readonly<DropdownMenuWrapperProps> & Readonly<{
22
22
  "onUpdate:open"?: ((value: boolean) => any) | undefined;
23
- onEntryFocus?: ((event: Event) => any) | undefined;
24
23
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
25
24
  onPointerDownOutside?: ((event: _soybeanjs_headless0.PointerDownOutsideEvent) => any) | undefined;
26
25
  onFocusOutside?: ((event: _soybeanjs_headless0.FocusOutsideEvent) => any) | undefined;
27
26
  onInteractOutside?: ((event: _soybeanjs_headless0.PointerDownOutsideEvent | _soybeanjs_headless0.FocusOutsideEvent) => any) | undefined;
28
27
  onOpenAutoFocus?: ((event: Event) => any) | undefined;
29
28
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
29
+ onEntryFocus?: ((event: Event) => any) | undefined;
30
30
  }>, {
31
31
  open: boolean;
32
32
  modal: boolean;
@@ -9,13 +9,13 @@ declare const __VLS_export: <T extends DefinedValue = DefinedValue, S extends Me
9
9
  props: vue.PublicProps & __VLS_PrettifyLocal<DropdownMenuProps<T, S> & {
10
10
  onSelect?: ((item: S, event: Event) => any) | undefined;
11
11
  "onUpdate:open"?: ((value: boolean) => any) | undefined;
12
- onEntryFocus?: ((event: Event) => any) | undefined;
13
12
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
14
13
  onPointerDownOutside?: ((event: _soybeanjs_headless0.PointerDownOutsideEvent) => any) | undefined;
15
14
  onFocusOutside?: ((event: _soybeanjs_headless0.FocusOutsideEvent) => any) | undefined;
16
15
  onInteractOutside?: ((event: _soybeanjs_headless0.PointerDownOutsideEvent | _soybeanjs_headless0.FocusOutsideEvent) => any) | undefined;
17
16
  onOpenAutoFocus?: ((event: Event) => any) | undefined;
18
17
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
18
+ onEntryFocus?: ((event: Event) => any) | undefined;
19
19
  }> & (typeof globalThis extends {
20
20
  __VLS_PROPS_FALLBACK: infer P;
21
21
  } ? P : {});
@@ -29,7 +29,7 @@ declare const __VLS_export: <T extends DefinedValue = DefinedValue, S extends Me
29
29
  'item-trigger': (props: MenuOptionData<T>) => any;
30
30
  'item-trigger-icon': (props: MenuOptionData<T>) => any;
31
31
  };
32
- emit: ((evt: "select", item: S, event: Event) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "entryFocus", event: Event) => void) & ((evt: "escapeKeyDown", event: KeyboardEvent) => void) & ((evt: "pointerDownOutside", event: _soybeanjs_headless0.PointerDownOutsideEvent) => void) & ((evt: "focusOutside", event: _soybeanjs_headless0.FocusOutsideEvent) => void) & ((evt: "interactOutside", event: _soybeanjs_headless0.PointerDownOutsideEvent | _soybeanjs_headless0.FocusOutsideEvent) => void) & ((evt: "openAutoFocus", event: Event) => void) & ((evt: "closeAutoFocus", event: Event) => void);
32
+ emit: ((evt: "select", item: S, event: Event) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "escapeKeyDown", event: KeyboardEvent) => void) & ((evt: "pointerDownOutside", event: _soybeanjs_headless0.PointerDownOutsideEvent) => void) & ((evt: "focusOutside", event: _soybeanjs_headless0.FocusOutsideEvent) => void) & ((evt: "interactOutside", event: _soybeanjs_headless0.PointerDownOutsideEvent | _soybeanjs_headless0.FocusOutsideEvent) => void) & ((evt: "openAutoFocus", event: Event) => void) & ((evt: "closeAutoFocus", event: Event) => void) & ((evt: "entryFocus", event: Event) => void);
33
33
  }>) => vue.VNode & {
34
34
  __ctx?: Awaited<typeof __VLS_setup>;
35
35
  };
@@ -1 +1 @@
1
- import{useContext as e}from"@soybeanjs/headless/composables";const[t,n]=e(`Form`,e=>e);export{t as provideFormContext,n as useFormContext};
1
+ import{useContext as e}from"@soybeanjs/headless/composables";const[t,n]=e(`Form`);export{t as provideFormContext,n as useFormContext};
@@ -1,4 +1,4 @@
1
- import { FormContextParams, FormFieldArrayComponent, FormFieldArrayProps, FormFieldArraySlots, FormFieldBaseProps, FormFieldBaseSlotProps, FormFieldComponent, FormFieldProps, FormFieldSlots, FormProps } from "./types.js";
1
+ import { FormContext, FormFieldArrayComponent, FormFieldArrayProps, FormFieldArraySlots, FormFieldBaseProps, FormFieldBaseSlotProps, FormFieldComponent, FormFieldProps, FormFieldSlots, FormProps } from "./types.js";
2
2
  import { _default } from "./form.vue.js";
3
3
  import { _default as _default$1 } from "./form-field-base.vue.js";
4
4
  import { useForm } from "./use-form.js";
@@ -54,6 +54,6 @@ interface FormProps extends /** @vue-ignore */FormHTMLAttributes {
54
54
  descriptionProps?: FormDescriptionProps;
55
55
  errorProps?: FormErrorProps;
56
56
  }
57
- interface FormContextParams extends PropsToContext<FormProps> {}
57
+ interface FormContext extends PropsToContext<FormProps> {}
58
58
  //#endregion
59
- export { FormContextParams, FormFieldArrayComponent, FormFieldArrayProps, FormFieldArraySlots, FormFieldBaseProps, FormFieldBaseSlotProps, FormFieldComponent, FormFieldProps$1 as FormFieldProps, FormFieldSlots, FormProps };
59
+ export { FormContext, FormFieldArrayComponent, FormFieldArrayProps, FormFieldArraySlots, FormFieldBaseProps, FormFieldBaseSlotProps, FormFieldComponent, FormFieldProps$1 as FormFieldProps, FormFieldSlots, FormProps };
@@ -1 +1 @@
1
- import{useContext as e,useUiContext as t}from"@soybeanjs/headless/composables";const[n,r]=e(`MenuOptionsContext`,e=>e),[i,a]=t(`MenuExtraUi`);export{i as provideMenuExtraUi,n as provideMenuOptionsContext,a as useMenuExtraUi,r as useMenuOptionsContext};
1
+ import{useContext as e,useUiContext as t}from"@soybeanjs/headless/composables";const[n,r]=e(`MenuOptionsContext`),[i,a]=t(`MenuExtraUi`);export{i as provideMenuExtraUi,n as provideMenuOptionsContext,a as useMenuExtraUi,r as useMenuOptionsContext};
@@ -1,4 +1,4 @@
1
- import { MenuCheckboxOptionData, MenuCheckboxOptionsEmits, MenuCheckboxOptionsProps, MenuCheckboxSelectEmits, MenuExtendedUi, MenuExtraUi, MenuExtraUiSlot, MenuOptionData, MenuOptionEmits, MenuOptionProps, MenuOptionSelectEmits, MenuOptionsContextParams, MenuOptionsEmits, MenuOptionsProps, MenuRadioOptionData, MenuRadioOptionsEmits, MenuRadioOptionsProps, MenuRadioSelectEmits, MenuShortcutProps } from "./types.js";
1
+ import { MenuCheckboxOptionData, MenuCheckboxOptionsEmits, MenuCheckboxOptionsProps, MenuCheckboxSelectEmits, MenuExtendedUi, MenuExtraUi, MenuExtraUiSlot, MenuOptionData, MenuOptionEmits, MenuOptionProps, MenuOptionSelectEmits, MenuOptionsContext, MenuOptionsEmits, MenuOptionsProps, MenuRadioOptionData, MenuRadioOptionsEmits, MenuRadioOptionsProps, MenuRadioSelectEmits, MenuShortcutProps } from "./types.js";
2
2
  import { _default } from "./menu-option.vue.js";
3
3
  import { _default as _default$1 } from "./menu-options.vue.js";
4
4
  import { _default as _default$2 } from "./menu-checkbox-options.vue.js";
@@ -8,13 +8,13 @@ declare const __VLS_export: <T extends DefinedValue = DefinedValue>(__VLS_props:
8
8
  props: vue.PublicProps & __VLS_PrettifyLocal<MenuOptionProps<T> & {
9
9
  onSelect?: ((item: MenuOptionData<T>, event: Event) => any) | undefined;
10
10
  "onUpdate:open"?: ((value: boolean) => any) | undefined;
11
- onEntryFocus?: ((event: Event) => any) | undefined;
12
11
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
13
12
  onPointerDownOutside?: ((event: _soybeanjs_headless0.PointerDownOutsideEvent) => any) | undefined;
14
13
  onFocusOutside?: ((event: _soybeanjs_headless0.FocusOutsideEvent) => any) | undefined;
15
14
  onInteractOutside?: ((event: _soybeanjs_headless0.PointerDownOutsideEvent | _soybeanjs_headless0.FocusOutsideEvent) => any) | undefined;
16
15
  onOpenAutoFocus?: ((event: Event) => any) | undefined;
17
16
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
17
+ onEntryFocus?: ((event: Event) => any) | undefined;
18
18
  }> & (typeof globalThis extends {
19
19
  __VLS_PROPS_FALLBACK: infer P;
20
20
  } ? P : {});
@@ -38,7 +38,7 @@ declare const __VLS_export: <T extends DefinedValue = DefinedValue>(__VLS_props:
38
38
  item: MenuOptionData<T>;
39
39
  }) => any;
40
40
  };
41
- emit: ((evt: "select", item: MenuOptionData<T>, event: Event) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "entryFocus", event: Event) => void) & ((evt: "escapeKeyDown", event: KeyboardEvent) => void) & ((evt: "pointerDownOutside", event: _soybeanjs_headless0.PointerDownOutsideEvent) => void) & ((evt: "focusOutside", event: _soybeanjs_headless0.FocusOutsideEvent) => void) & ((evt: "interactOutside", event: _soybeanjs_headless0.PointerDownOutsideEvent | _soybeanjs_headless0.FocusOutsideEvent) => void) & ((evt: "openAutoFocus", event: Event) => void) & ((evt: "closeAutoFocus", event: Event) => void);
41
+ emit: ((evt: "select", item: MenuOptionData<T>, event: Event) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "escapeKeyDown", event: KeyboardEvent) => void) & ((evt: "pointerDownOutside", event: _soybeanjs_headless0.PointerDownOutsideEvent) => void) & ((evt: "focusOutside", event: _soybeanjs_headless0.FocusOutsideEvent) => void) & ((evt: "interactOutside", event: _soybeanjs_headless0.PointerDownOutsideEvent | _soybeanjs_headless0.FocusOutsideEvent) => void) & ((evt: "openAutoFocus", event: Event) => void) & ((evt: "closeAutoFocus", event: Event) => void) & ((evt: "entryFocus", event: Event) => void);
42
42
  }>) => vue.VNode & {
43
43
  __ctx?: Awaited<typeof __VLS_setup>;
44
44
  };
@@ -8,13 +8,13 @@ declare const __VLS_export: <T extends DefinedValue = DefinedValue, S extends Me
8
8
  props: vue.PublicProps & __VLS_PrettifyLocal<MenuOptionsProps<T, S> & {
9
9
  onSelect?: ((item: S, event: Event) => any) | undefined;
10
10
  "onUpdate:open"?: ((value: boolean) => any) | undefined;
11
- onEntryFocus?: ((event: Event) => any) | undefined;
12
11
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
13
12
  onPointerDownOutside?: ((event: _soybeanjs_headless0.PointerDownOutsideEvent) => any) | undefined;
14
13
  onFocusOutside?: ((event: _soybeanjs_headless0.FocusOutsideEvent) => any) | undefined;
15
14
  onInteractOutside?: ((event: _soybeanjs_headless0.PointerDownOutsideEvent | _soybeanjs_headless0.FocusOutsideEvent) => any) | undefined;
16
15
  onOpenAutoFocus?: ((event: Event) => any) | undefined;
17
16
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
17
+ onEntryFocus?: ((event: Event) => any) | undefined;
18
18
  }> & (typeof globalThis extends {
19
19
  __VLS_PROPS_FALLBACK: infer P;
20
20
  } ? P : {});
@@ -38,7 +38,7 @@ declare const __VLS_export: <T extends DefinedValue = DefinedValue, S extends Me
38
38
  item: MenuOptionData<T>;
39
39
  }) => any;
40
40
  };
41
- emit: ((evt: "select", item: S, event: Event) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "entryFocus", event: Event) => void) & ((evt: "escapeKeyDown", event: KeyboardEvent) => void) & ((evt: "pointerDownOutside", event: _soybeanjs_headless0.PointerDownOutsideEvent) => void) & ((evt: "focusOutside", event: _soybeanjs_headless0.FocusOutsideEvent) => void) & ((evt: "interactOutside", event: _soybeanjs_headless0.PointerDownOutsideEvent | _soybeanjs_headless0.FocusOutsideEvent) => void) & ((evt: "openAutoFocus", event: Event) => void) & ((evt: "closeAutoFocus", event: Event) => void);
41
+ emit: ((evt: "select", item: S, event: Event) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "escapeKeyDown", event: KeyboardEvent) => void) & ((evt: "pointerDownOutside", event: _soybeanjs_headless0.PointerDownOutsideEvent) => void) & ((evt: "focusOutside", event: _soybeanjs_headless0.FocusOutsideEvent) => void) & ((evt: "interactOutside", event: _soybeanjs_headless0.PointerDownOutsideEvent | _soybeanjs_headless0.FocusOutsideEvent) => void) & ((evt: "openAutoFocus", event: Event) => void) & ((evt: "closeAutoFocus", event: Event) => void) & ((evt: "entryFocus", event: Event) => void);
42
42
  }>) => vue.VNode & {
43
43
  __ctx?: Awaited<typeof __VLS_setup>;
44
44
  };
@@ -84,9 +84,9 @@ type MenuRadioSelectEmits<T extends MenuRadioOptionData = MenuRadioOptionData> =
84
84
  select: [item: T, event: Event];
85
85
  };
86
86
  type MenuRadioOptionsEmits<T extends AcceptableBooleanValue = AcceptableBooleanValue, S extends MenuRadioOptionData<T> = MenuRadioOptionData<T>> = MenuRadioGroupEmits<T> & MenuRadioSelectEmits<S>;
87
- interface MenuOptionsContextParams {
87
+ interface MenuOptionsContext {
88
88
  activeValue: ComputedRef<DefinedValue | undefined>;
89
89
  activePaths: ComputedRef<DefinedValue[]>;
90
90
  }
91
91
  //#endregion
92
- export { MenuCheckboxOptionData, MenuCheckboxOptionsEmits, MenuCheckboxOptionsProps, MenuCheckboxSelectEmits, MenuExtendedUi, MenuExtraUi, MenuExtraUiSlot, MenuOptionData, MenuOptionEmits, MenuOptionProps, MenuOptionSelectEmits, MenuOptionsContextParams, MenuOptionsEmits, MenuOptionsProps, MenuRadioOptionData, MenuRadioOptionsEmits, MenuRadioOptionsProps, MenuRadioSelectEmits, MenuShortcutProps };
92
+ export { MenuCheckboxOptionData, MenuCheckboxOptionsEmits, MenuCheckboxOptionsProps, MenuCheckboxSelectEmits, MenuExtendedUi, MenuExtraUi, MenuExtraUiSlot, MenuOptionData, MenuOptionEmits, MenuOptionProps, MenuOptionSelectEmits, MenuOptionsContext, MenuOptionsEmits, MenuOptionsProps, MenuRadioOptionData, MenuRadioOptionsEmits, MenuRadioOptionsProps, MenuRadioSelectEmits, MenuShortcutProps };
@@ -5,8 +5,8 @@ import * as vue from "vue";
5
5
  declare const __VLS_export: <T extends 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<PageTabsProps<T> & {
7
7
  onContextmenu?: ((tab: T) => any) | undefined;
8
- onClose?: ((tab: T) => any) | undefined;
9
8
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
9
+ onClose?: ((tab: T) => any) | undefined;
10
10
  onClick?: ((tab: T) => any) | undefined;
11
11
  onPin?: ((tab: T) => any) | undefined;
12
12
  "onUpdate:items"?: ((items: T[]) => any) | undefined;
@@ -0,0 +1 @@
1
+ import{useContext as e}from"@soybeanjs/headless/composables";const[t,n]=e(`Popconfirm`);export{t as providePopconfirmContext,n as usePopconfirmContext};
@@ -0,0 +1,6 @@
1
+ import { PopconfirmCancelEmits, PopconfirmCancelProps, PopconfirmConfirmEmits, PopconfirmConfirmProps, PopconfirmContentProps, PopconfirmContext, PopconfirmDescriptionProps, PopconfirmEmits, PopconfirmFooterProps, PopconfirmHeaderProps, PopconfirmProps, PopconfirmTitleProps, PopconfirmType, PopconfirmUi } from "./types.js";
2
+ import { _default } from "./popconfirm.vue.js";
3
+ import { _default as _default$1 } from "./popconfirm-confirm.vue.js";
4
+ import { _default as _default$2 } from "./popconfirm-cancel.vue.js";
5
+ import { PopoverAnchorProps as PopconfirmAnchorProps, PopoverArrowProps as PopconfirmArrowProps, PopoverCloseProps as PopconfirmCloseProps, PopoverPopupProps as PopconfirmPopupProps, PopoverPortalProps as PopconfirmPortalProps, PopoverPositionerEmits as PopconfirmPositionerEmits, PopoverPositionerProps as PopconfirmPositionerProps, PopoverRootEmits as PopconfirmRootEmits, PopoverRootProps as PopconfirmRootProps, PopoverTriggerProps as PopconfirmTriggerProps } from "@soybeanjs/headless/popover";
6
+ export { type PopconfirmAnchorProps, type PopconfirmArrowProps, type PopconfirmCloseProps, type PopconfirmPopupProps, type PopconfirmPortalProps, type PopconfirmPositionerEmits, type PopconfirmPositionerProps, type PopconfirmRootEmits, type PopconfirmRootProps, type PopconfirmTriggerProps };
@@ -0,0 +1 @@
1
+ import"./popconfirm-cancel.js";import"./popconfirm-confirm.js";import"./popconfirm.js";
@@ -0,0 +1 @@
1
+ import e from"../button/button.js";import{usePopconfirmContext as t}from"./context.js";import{computed as n,createBlock as r,createTextVNode as i,createVNode as a,defineComponent as o,mergeProps as s,openBlock as c,renderSlot as l,toDisplayString as u,unref as d,withCtx as f}from"vue";import{useOmitProps as p}from"@soybeanjs/headless/composables";import{PopoverClose as m}from"@soybeanjs/headless";const h=o({name:`SPopconfirmCancel`,__name:`popconfirm-cancel`,props:{text:{},beforeClose:{},class:{},color:{},size:{},variant:{default:`pure`},shape:{},shadow:{},fitContent:{type:Boolean},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`close`],setup(o,{emit:h}){let g=o,_=h,v=p(g,[`text`,`beforeClose`]),{size:y,cancelText:b,cancelProps:x,beforeCancel:S,onClose:C}=t(`PopconfirmCancel`),w=n(()=>({...x.value,...v.value})),T=n(()=>g.text??b.value??`Cancel`),E={xs:`xs`,sm:`xs`,md:`sm`,lg:`md`,xl:`lg`,"2xl":`xl`},D=n(()=>g.size??E[y.value??`md`]),O=()=>{_(`close`),C()};return(t,n)=>(c(),r(d(m),{"as-child":``,"before-close":o.beforeClose??d(S),onClose:O},{default:f(()=>[a(e,s(w.value,{size:D.value}),{default:f(()=>[l(t.$slots,`default`,{},()=>[i(u(T.value),1)])]),_:3},16,[`size`])]),_:3},8,[`before-close`]))}});export{h as default};
@@ -0,0 +1,25 @@
1
+ import { ButtonVariant } from "../button/variants.js";
2
+ import { PopconfirmCancelProps } from "./types.js";
3
+ import * as vue from "vue";
4
+
5
+ //#region src/components/popconfirm/popconfirm-cancel.vue.d.ts
6
+ declare var __VLS_16: {};
7
+ type __VLS_Slots = {} & {
8
+ default?: (props: typeof __VLS_16) => any;
9
+ };
10
+ declare const __VLS_base: vue.DefineComponent<PopconfirmCancelProps, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
11
+ close: () => any;
12
+ }, string, vue.PublicProps, Readonly<PopconfirmCancelProps> & Readonly<{
13
+ onClose?: (() => any) | undefined;
14
+ }>, {
15
+ variant: ButtonVariant;
16
+ }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
17
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
18
+ declare const _default: typeof __VLS_export;
19
+ type __VLS_WithSlots<T, S> = T & {
20
+ new (): {
21
+ $slots: S;
22
+ };
23
+ };
24
+ //#endregion
25
+ export { _default };
@@ -0,0 +1 @@
1
+ import e from"../button/button.js";import{usePopconfirmContext as t}from"./context.js";import{computed as n,createBlock as r,createTextVNode as i,createVNode as a,defineComponent as o,mergeProps as s,openBlock as c,renderSlot as l,toDisplayString as u,unref as d,withCtx as f}from"vue";import{useOmitProps as p}from"@soybeanjs/headless/composables";import{PopoverClose as m}from"@soybeanjs/headless";const h=o({name:`SPopconfirmConfirm`,__name:`popconfirm-confirm`,props:{text:{},beforeClose:{type:Function},class:{},color:{},size:{},variant:{},shape:{},shadow:{},fitContent:{type:Boolean},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`close`],setup(o,{emit:h}){let g=o,_=h,v=p(g,[`text`,`beforeClose`]),{size:y,confirmText:b,confirmProps:x,beforeConfirm:S,onClose:C}=t(`PopconfirmConfirm`),w=n(()=>({...x.value,...v.value})),T=n(()=>g.text??b.value??`Confirm`),E={xs:`xs`,sm:`xs`,md:`sm`,lg:`md`,xl:`lg`,"2xl":`xl`},D=n(()=>g.size??E[y.value??`md`]),O=()=>{_(`close`),C()};return(t,n)=>(c(),r(d(m),{"as-child":``,"before-close":o.beforeClose??d(S),onClose:O},{default:f(()=>[a(e,s(w.value,{size:D.value}),{default:f(()=>[l(t.$slots,`default`,{},()=>[i(u(T.value),1)])]),_:3},16,[`size`])]),_:3},8,[`before-close`]))}});export{h as default};
@@ -0,0 +1,22 @@
1
+ import { PopconfirmConfirmProps } from "./types.js";
2
+ import * as vue from "vue";
3
+
4
+ //#region src/components/popconfirm/popconfirm-confirm.vue.d.ts
5
+ declare var __VLS_16: {};
6
+ type __VLS_Slots = {} & {
7
+ default?: (props: typeof __VLS_16) => any;
8
+ };
9
+ declare const __VLS_base: vue.DefineComponent<PopconfirmConfirmProps, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
10
+ close: () => any;
11
+ }, string, vue.PublicProps, Readonly<PopconfirmConfirmProps> & Readonly<{
12
+ onClose?: (() => any) | undefined;
13
+ }>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
14
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
15
+ declare const _default: typeof __VLS_export;
16
+ type __VLS_WithSlots<T, S> = T & {
17
+ new (): {
18
+ $slots: S;
19
+ };
20
+ };
21
+ //#endregion
22
+ export { _default };
@@ -0,0 +1 @@
1
+ import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import t from"../icon/icon.js";import{providePopconfirmContext as n}from"./context.js";import{popconfirmVariants as r}from"./variants.js";import i from"./popconfirm-cancel.js";import a from"./popconfirm-confirm.js";import{computed as o,createBlock as s,createCommentVNode as c,createElementBlock as l,createElementVNode as u,createTextVNode as d,createVNode as f,defineComponent as p,guardReactiveProps as m,mergeProps as h,normalizeClass as g,normalizeProps as _,openBlock as v,renderSlot as y,toDisplayString as b,toHandlers as x,unref as S,useSlots as C,withCtx as w}from"vue";import{useForwardListeners as T,usePickProps as E}from"@soybeanjs/headless/composables";import{PopoverArrow as D,PopoverClose as O,PopoverPopup as k,PopoverPortal as A,PopoverPositioner as j,PopoverRoot as M,PopoverTrigger as N,providePopoverUi as P}from"@soybeanjs/headless";import{transformPropsToContext as F}from"@soybeanjs/headless/shared";const I=p({name:`SPopconfirm`,__name:`popconfirm`,props:{class:{},size:{},ui:{},type:{},placement:{},title:{},description:{},content:{},showArrow:{type:Boolean,default:!0},showIcon:{type:Boolean,default:!0},confirmText:{},cancelText:{},showCancel:{type:[String,Boolean],default:`onlyWarning`},beforeCancel:{},beforeConfirm:{},confirmProps:{},cancelProps:{},positionerProps:{},popupProps:{},triggerProps:{},closeProps:{},portalProps:{},arrowProps:{},headerProps:{},titleProps:{},descriptionProps:{},contentProps:{},footerProps:{},open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:!1},modal:{type:Boolean,default:!1}},emits:[`update:open`,`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`,`close`],setup(p,{emit:I}){let L=p,R=I,z=C(),B=E(L,[`defaultOpen`,`open`,`modal`]),V=T(R),H=o(()=>e(r({size:L.size}),L.ui,{popup:L.class})),U={destructive:{icon:`lucide:circle-x`,class:`text-destructive`},success:{icon:`lucide:circle-check`,class:`text-success`},warning:{icon:`lucide:circle-alert`,class:`text-warning`},info:{icon:`lucide:info`,class:`text-info`}},W=o(()=>L.type?U[L.type]:null),G=o(()=>({placement:L.placement,...L.positionerProps})),K=o(()=>typeof L.showCancel==`boolean`?L.showCancel:L.type===`warning`),q=()=>{R(`close`)};return P(H),n({...F(L,[`size`,`confirmText`,`cancelText`,`beforeCancel`,`beforeConfirm`,`showCancel`,`cancelProps`,`confirmProps`]),onClose:q}),(e,n)=>(v(),s(S(M),h(S(B),{"onUpdate:open":n[0]||=e=>R(`update:open`,e)}),{default:w(n=>[f(S(N),h(p.triggerProps,{"as-child":``}),{default:w(()=>[y(e.$slots,`trigger`)]),_:3},16),f(S(A),_(m(p.portalProps)),{default:w(()=>[f(S(j),h(G.value,x(S(V))),{default:w(()=>[f(S(k),_(m(p.popupProps)),{default:w(()=>[u(`div`,h(p.headerProps,{class:H.value.header}),[u(`h3`,h(p.titleProps,{class:H.value.title}),[p.showIcon&&W.value?(v(),s(t,{key:0,icon:W.value.icon,class:g(W.value.class)},null,8,[`icon`,`class`])):c(`v-if`,!0),y(e.$slots,`title`,{close:n.close},()=>[d(b(p.title),1)])],16),S(z).description||p.description?(v(),l(`p`,{key:0,class:g(H.value.description)},[y(e.$slots,`description`,{close:n.close},()=>[d(b(p.description),1)])],2)):c(`v-if`,!0)],16),e.$slots.content||p.content?(v(),l(`div`,h({key:0},p.contentProps,{class:H.value.content}),[y(e.$slots,`default`,{close:n.close},()=>[d(b(p.content),1)])],16)):c(`v-if`,!0),u(`div`,{class:g(H.value.footer)},[y(e.$slots,`footer`,{close:n.close},()=>[K.value?(v(),s(i,{key:0})):c(`v-if`,!0),f(a,{text:p.confirmText},null,8,[`text`])])],2),p.showArrow?(v(),s(S(D),_(h({key:1},p.arrowProps)),null,16)):c(`v-if`,!0)]),_:2},1040),e.$slots.close?(v(),s(S(O),{key:0,"as-child":``},{default:w(()=>[y(e.$slots,`close`)]),_:3})):c(`v-if`,!0)]),_:2},1040)]),_:2},1040)]),_:3},16))}});export{I as default};
@@ -0,0 +1,62 @@
1
+ import { PopconfirmProps } from "./types.js";
2
+ import * as vue from "vue";
3
+ import * as _soybeanjs_headless0 from "@soybeanjs/headless";
4
+
5
+ //#region src/components/popconfirm/popconfirm.vue.d.ts
6
+ declare var __VLS_16: {}, __VLS_41: {
7
+ close: () => void;
8
+ }, __VLS_43: {
9
+ close: () => void;
10
+ }, __VLS_45: {
11
+ close: () => void;
12
+ }, __VLS_47: {
13
+ close: () => void;
14
+ }, __VLS_70: {};
15
+ type __VLS_Slots = {} & {
16
+ trigger?: (props: typeof __VLS_16) => any;
17
+ } & {
18
+ title?: (props: typeof __VLS_41) => any;
19
+ } & {
20
+ description?: (props: typeof __VLS_43) => any;
21
+ } & {
22
+ default?: (props: typeof __VLS_45) => any;
23
+ } & {
24
+ footer?: (props: typeof __VLS_47) => any;
25
+ } & {
26
+ close?: (props: typeof __VLS_70) => any;
27
+ };
28
+ declare const __VLS_base: vue.DefineComponent<PopconfirmProps, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
29
+ "update:open": (value: boolean) => any;
30
+ close: () => any;
31
+ escapeKeyDown: (event: KeyboardEvent) => any;
32
+ pointerDownOutside: (event: _soybeanjs_headless0.PointerDownOutsideEvent) => any;
33
+ focusOutside: (event: _soybeanjs_headless0.FocusOutsideEvent) => any;
34
+ interactOutside: (event: _soybeanjs_headless0.PointerDownOutsideEvent | _soybeanjs_headless0.FocusOutsideEvent) => any;
35
+ openAutoFocus: (event: Event) => any;
36
+ closeAutoFocus: (event: Event) => any;
37
+ }, string, vue.PublicProps, Readonly<PopconfirmProps> & Readonly<{
38
+ "onUpdate:open"?: ((value: boolean) => any) | undefined;
39
+ onClose?: (() => any) | undefined;
40
+ onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
41
+ onPointerDownOutside?: ((event: _soybeanjs_headless0.PointerDownOutsideEvent) => any) | undefined;
42
+ onFocusOutside?: ((event: _soybeanjs_headless0.FocusOutsideEvent) => any) | undefined;
43
+ onInteractOutside?: ((event: _soybeanjs_headless0.PointerDownOutsideEvent | _soybeanjs_headless0.FocusOutsideEvent) => any) | undefined;
44
+ onOpenAutoFocus?: ((event: Event) => any) | undefined;
45
+ onCloseAutoFocus?: ((event: Event) => any) | undefined;
46
+ }>, {
47
+ open: boolean;
48
+ defaultOpen: boolean;
49
+ modal: boolean;
50
+ showIcon: boolean;
51
+ showCancel: "onlyWarning" | boolean;
52
+ showArrow: boolean;
53
+ }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
54
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
55
+ declare const _default: typeof __VLS_export;
56
+ type __VLS_WithSlots<T, S> = T & {
57
+ new (): {
58
+ $slots: S;
59
+ };
60
+ };
61
+ //#endregion
62
+ export { _default };
@@ -0,0 +1,92 @@
1
+ import { ThemeColor, ThemeSize } from "../../theme/types.js";
2
+ import { ButtonProps as ButtonProps$1 } from "../button/types.js";
3
+ import { HTMLAttributes } from "vue";
4
+ import { ClassValue, MaybePromise, Placement, PopoverArrowProps, PopoverCloseProps, PopoverPopupProps, PopoverPortalProps, PopoverPositionerEmits, PopoverPositionerProps, PopoverRootEmits, PopoverRootProps, PopoverTriggerProps, PopoverUiSlot, PropsToContext, UiClass } from "@soybeanjs/headless";
5
+
6
+ //#region src/components/popconfirm/types.d.ts
7
+ interface PopconfirmConfirmProps extends ButtonProps$1 {
8
+ text?: string;
9
+ /**
10
+ * Called before the dialog is closed. Can be used to prevent the dialog from closing.
11
+ * @returns A boolean or a promise that resolves to a boolean. if returns `false`, the dialog will not close.
12
+ */
13
+ beforeClose?: () => MaybePromise<boolean | void>;
14
+ }
15
+ type PopconfirmConfirmEmits = {
16
+ close: [];
17
+ };
18
+ interface PopconfirmCancelProps extends ButtonProps$1 {
19
+ text?: string;
20
+ /**
21
+ * Called before the dialog is closed. Can be used to prevent the dialog from closing.
22
+ * @returns A boolean or a promise that resolves to a boolean. if returns `false`, the dialog will not close.
23
+ */
24
+ beforeClose?: () => MaybePromise<boolean | void>;
25
+ }
26
+ type PopconfirmCancelEmits = {
27
+ close: [];
28
+ };
29
+ interface PopconfirmHeaderProps extends /** @vue-ignore */HTMLAttributes {}
30
+ interface PopconfirmTitleProps extends /** @vue-ignore */HTMLAttributes {}
31
+ interface PopconfirmDescriptionProps extends /** @vue-ignore */HTMLAttributes {}
32
+ interface PopconfirmContentProps extends /** @vue-ignore */HTMLAttributes {}
33
+ interface PopconfirmFooterProps extends /** @vue-ignore */HTMLAttributes {}
34
+ type PopconfirmType = Extract<ThemeColor, 'destructive' | 'success' | 'warning' | 'info'>;
35
+ type PopconfirmUiSlot = PopoverUiSlot | 'header' | 'icon' | 'header' | 'title' | 'description' | 'content' | 'footer';
36
+ type PopconfirmUi = UiClass<PopconfirmUiSlot>;
37
+ interface PopconfirmProps extends PopoverRootProps {
38
+ /**
39
+ * class of popup
40
+ */
41
+ class?: ClassValue;
42
+ size?: ThemeSize;
43
+ ui?: Partial<PopconfirmUi>;
44
+ type?: PopconfirmType;
45
+ placement?: Placement;
46
+ title?: string;
47
+ description?: string;
48
+ content?: string;
49
+ showArrow?: boolean;
50
+ showIcon?: boolean;
51
+ /**
52
+ * The text of the confirm button.
53
+ *
54
+ * @defaultValue 'Confirm'
55
+ */
56
+ confirmText?: string;
57
+ /**
58
+ * The text of the cancel button.
59
+ *
60
+ * @defaultValue 'Cancel'
61
+ */
62
+ cancelText?: string;
63
+ /**
64
+ * Determines whether the cancel button is shown.
65
+ *
66
+ * @default 'onlyWarning'
67
+ */
68
+ showCancel?: 'onlyWarning' | boolean;
69
+ beforeCancel?: () => MaybePromise<boolean | void>;
70
+ beforeConfirm?: () => MaybePromise<boolean | void>;
71
+ confirmProps?: PopconfirmConfirmProps;
72
+ cancelProps?: PopconfirmCancelProps;
73
+ positionerProps?: PopoverPositionerProps;
74
+ popupProps?: PopoverPopupProps;
75
+ triggerProps?: PopoverTriggerProps;
76
+ closeProps?: PopoverCloseProps;
77
+ portalProps?: PopoverPortalProps;
78
+ arrowProps?: PopoverArrowProps;
79
+ headerProps?: PopconfirmHeaderProps;
80
+ titleProps?: PopconfirmTitleProps;
81
+ descriptionProps?: PopconfirmDescriptionProps;
82
+ contentProps?: PopconfirmContentProps;
83
+ footerProps?: PopconfirmFooterProps;
84
+ }
85
+ type PopconfirmEmits = PopoverRootEmits & PopoverPositionerEmits & {
86
+ close: [];
87
+ };
88
+ interface PopconfirmContext extends PropsToContext<PopconfirmProps, 'size' | 'confirmText' | 'cancelText' | 'beforeCancel' | 'beforeConfirm' | 'showCancel' | 'cancelProps' | 'confirmProps'> {
89
+ onClose: () => void;
90
+ }
91
+ //#endregion
92
+ export { PopconfirmCancelEmits, PopconfirmCancelProps, PopconfirmConfirmEmits, PopconfirmConfirmProps, PopconfirmContentProps, PopconfirmContext, PopconfirmDescriptionProps, PopconfirmEmits, PopconfirmFooterProps, PopconfirmHeaderProps, PopconfirmProps, PopconfirmTitleProps, PopconfirmType, PopconfirmUi };
@@ -0,0 +1 @@
1
+ import{tv as e}from"tailwind-variants";const t=e({slots:{positioner:`w-max`,popup:[`flex flex-col w-auto rounded-md border bg-popover text-popover-foreground shadow-md outline-none z-50 will-change-transform`,`data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95`,`data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95`,`data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`],arrow:`w-1em h-0.5em fill-popover stroke-border`,header:`flex flex-col text-center sm:text-left`,title:`flex items-center font-semibold leading-none tracking-tight m-0`,description:`text-muted-foreground m-0`,content:``,footer:`flex flex-col-reverse sm:flex-row sm:justify-end`},variants:{size:{xs:{popup:`gap-y-2 p-2 text-2xs`,arrow:`text-3xs`,header:`gap-y-1.5`,title:`gap-x-1.5`,footer:`gap-1.5`},sm:{popup:`gap-y-2.5 p-2.5 text-xs`,arrow:`text-2xs`,header:`gap-y-1.75`,title:`gap-x-1.75`,footer:`gap-1.75`},md:{popup:`gap-y-3 p-3 text-sm`,arrow:`text-xs`,header:`gap-y-2`,title:`gap-x-2`,footer:`gap-2`},lg:{popup:`gap-y-3.5 p-3.5 text-base`,arrow:`text-sm`,header:`gap-y-2.5`,title:`gap-x-2.5`,footer:`gap-2.5`},xl:{popup:`gap-y-4 p-4 text-lg`,arrow:`text-base`,header:`gap-y-3`,title:`gap-x-3`,footer:`gap-3`},"2xl":{popup:`gap-y-4.5 p-4.5 text-xl`,arrow:`text-lg`,header:`gap-y-3.5`,title:`gap-x-3.5`,footer:`gap-3.5`}}},defaultVariants:{size:`md`}});export{t as popconfirmVariants};
@@ -1 +1 @@
1
- import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{popoverVariants as t}from"./variants.js";import{computed as n,createBlock as r,createCommentVNode as i,createVNode as a,defineComponent as o,guardReactiveProps as s,mergeProps as c,normalizeProps as l,openBlock as u,renderSlot as d,toHandlers as f,unref as p,withCtx as m}from"vue";import{useForwardListeners as h,usePickProps as g}from"@soybeanjs/headless/composables";import{PopoverArrow as _,PopoverClose as v,PopoverPopup as y,PopoverPortal as b,PopoverPositioner as x,PopoverRoot as S,PopoverTrigger as C,providePopoverUi as w}from"@soybeanjs/headless";const T=o({name:`SPopover`,__name:`popover`,props:{class:{},size:{},ui:{},placement:{},showArrow:{type:Boolean,default:!0},positionerProps:{},popupProps:{},triggerProps:{},closeProps:{},portalProps:{},arrowProps:{},open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:!1},modal:{type:Boolean}},emits:[`update:open`,`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(o,{emit:T}){let E=o,D=T,O=g(E,[`defaultOpen`,`open`,`modal`]),k=h(D),A=n(()=>e(t({size:E.size}),E.ui,{popup:E.class})),j=n(()=>({placement:E.placement,...E.positionerProps}));return w(A),(e,t)=>(u(),r(p(S),c(p(O),{"onUpdate:open":t[0]||=e=>D(`update:open`,e)}),{default:m(()=>[a(p(C),{"as-child":``},{default:m(()=>[d(e.$slots,`trigger`)]),_:3}),a(p(b),l(s(o.portalProps)),{default:m(()=>[a(p(x),c(j.value,f(p(k))),{default:m(()=>[a(p(y),l(s(o.popupProps)),{default:m(()=>[d(e.$slots,`default`),o.showArrow?(u(),r(p(_),l(c({key:0},o.arrowProps)),null,16)):i(`v-if`,!0)]),_:3},16),e.$slots.close?(u(),r(p(v),{key:0,"as-child":``},{default:m(()=>[d(e.$slots,`close`)]),_:3})):i(`v-if`,!0)]),_:3},16)]),_:3},16)]),_:3},16))}});export{T as default};
1
+ import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{popoverVariants as t}from"./variants.js";import{computed as n,createBlock as r,createCommentVNode as i,createVNode as a,defineComponent as o,guardReactiveProps as s,mergeProps as c,normalizeProps as l,openBlock as u,renderSlot as d,toHandlers as f,unref as p,withCtx as m}from"vue";import{useForwardListeners as h,usePickProps as g}from"@soybeanjs/headless/composables";import{PopoverArrow as _,PopoverClose as v,PopoverPopup as y,PopoverPortal as b,PopoverPositioner as x,PopoverRoot as S,PopoverTrigger as C,providePopoverUi as w}from"@soybeanjs/headless";const T=o({name:`SPopover`,__name:`popover`,props:{class:{},size:{},ui:{},placement:{},showArrow:{type:Boolean,default:!0},positionerProps:{},popupProps:{},triggerProps:{},closeProps:{},portalProps:{},arrowProps:{},open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:!1},modal:{type:Boolean}},emits:[`update:open`,`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(o,{emit:T}){let E=o,D=T,O=g(E,[`defaultOpen`,`open`,`modal`]),k=h(D),A=n(()=>e(t({size:E.size}),E.ui,{popup:E.class})),j=n(()=>({placement:E.placement,...E.positionerProps}));return w(A),(e,t)=>(u(),r(p(S),c(p(O),{"onUpdate:open":t[0]||=e=>D(`update:open`,e)}),{default:m(()=>[a(p(C),c(o.triggerProps,{"as-child":``}),{default:m(()=>[d(e.$slots,`trigger`)]),_:3},16),a(p(b),l(s(o.portalProps)),{default:m(()=>[a(p(x),c(j.value,f(p(k))),{default:m(()=>[a(p(y),l(s(o.popupProps)),{default:m(()=>[d(e.$slots,`default`),o.showArrow?(u(),r(p(_),l(c({key:0},o.arrowProps)),null,16)):i(`v-if`,!0)]),_:3},16),e.$slots.close?(u(),r(p(v),c({key:0},o.closeProps,{"as-child":``}),{default:m(()=>[d(e.$slots,`close`)]),_:3},16)):i(`v-if`,!0)]),_:3},16)]),_:3},16)]),_:3},16))}});export{T as default};
@@ -1 +1 @@
1
- import{tv as e}from"tailwind-variants";const t=e({slots:{positioner:`w-max`,popup:[`w-auto rounded-md border bg-popover text-popover-foreground shadow-md outline-none z-50 will-change-transform`,`data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95`,`data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95`,`data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`],arrow:`w-1em h-0.5em fill-popover stroke-border`},variants:{size:{xs:{popup:`p-3 text-2xs`,arrow:`text-3xs`},sm:{popup:`p-3.5 text-xs`,arrow:`text-2xs`},md:{popup:`p-4 text-sm`,arrow:`text-xs`},lg:{popup:`p-4.5 text-base`,arrow:`text-sm`},xl:{popup:`p-5 text-lg`,arrow:`text-base`},"2xl":{popup:`p-5.5 text-xl`,arrow:`text-lg`}}},defaultVariants:{size:`md`}});export{t as popoverVariants};
1
+ import{tv as e}from"tailwind-variants";const t=e({slots:{positioner:`w-max`,popup:[`w-auto rounded-md border bg-popover text-popover-foreground shadow-md outline-none z-50 will-change-transform`,`data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95`,`data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95`,`data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`],arrow:`w-1em h-0.5em fill-popover stroke-border`},variants:{size:{xs:{popup:`p-3 text-2xs`,arrow:`text-3xs`},sm:{popup:`p-3.5 text-xs`,arrow:`text-2xs`},md:{popup:`p-4 text-sm`,arrow:`text-xs`},lg:{popup:`p-4.5 text-base`,arrow:`text-sm`},xl:{popup:`p-5 text-lg`,arrow:`text-base`},"2xl":{popup:`p-5.5 text-xl`,arrow:`text-lg`}}},defaultVariants:{size:`md`}});export{t as popoverVariants};
@@ -7,8 +7,8 @@ import { DefinedValue } from "@soybeanjs/headless";
7
7
  declare const __VLS_export: <T extends DefinedValue, M extends boolean = false>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
8
8
  props: vue.PublicProps & __VLS_PrettifyLocal<SelectProps<T, M> & {
9
9
  onSelect?: ((event: _soybeanjs_headless0.SelectItemEvent<T>) => any) | undefined;
10
- "onUpdate:open"?: ((value: boolean) => any) | undefined;
11
10
  "onUpdate:modelValue"?: ((value: M extends true ? T[] : T) => any) | undefined;
11
+ "onUpdate:open"?: ((value: boolean) => any) | undefined;
12
12
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
13
13
  onPointerDownOutside?: ((event: _soybeanjs_headless0.PointerDownOutsideEvent) => any) | undefined;
14
14
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
@@ -44,7 +44,7 @@ declare const __VLS_export: <T extends DefinedValue, M extends boolean = false>(
44
44
  item: SelectSingleOptionData<T>;
45
45
  }) => any;
46
46
  };
47
- emit: ((evt: "select", event: _soybeanjs_headless0.SelectItemEvent<T>) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "update:modelValue", value: M extends true ? T[] : T) => void) & ((evt: "escapeKeyDown", event: KeyboardEvent) => void) & ((evt: "pointerDownOutside", event: _soybeanjs_headless0.PointerDownOutsideEvent) => void) & ((evt: "closeAutoFocus", event: Event) => void);
47
+ emit: ((evt: "select", event: _soybeanjs_headless0.SelectItemEvent<T>) => void) & ((evt: "update:modelValue", value: M extends true ? T[] : T) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "escapeKeyDown", event: KeyboardEvent) => void) & ((evt: "pointerDownOutside", event: _soybeanjs_headless0.PointerDownOutsideEvent) => void) & ((evt: "closeAutoFocus", event: Event) => void);
48
48
  }>) => vue.VNode & {
49
49
  __ctx?: Awaited<typeof __VLS_setup>;
50
50
  };
@@ -1 +1 @@
1
- import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{tooltipVariants as t}from"./variants.js";import{computed as n,createBlock as r,createCommentVNode as i,createTextVNode as a,createVNode as o,defineComponent as s,guardReactiveProps as c,mergeProps as l,normalizeProps as u,openBlock as d,renderSlot as f,toDisplayString as p,toHandlers as m,unref as h,withCtx as g}from"vue";import{useForwardListeners as _,useOmitProps as v}from"@soybeanjs/headless/composables";import{TooltipArrow as y,TooltipPopup as b,TooltipPortal as x,TooltipPositioner as S,TooltipRoot as C,TooltipTrigger as w,provideTooltipUi as T}from"@soybeanjs/headless";const E=s({name:`STooltip`,__name:`tooltip`,props:{class:{},size:{},ui:{},content:{},placement:{},showArrow:{type:Boolean,default:!0},popupProps:{},positionerProps:{},triggerProps:{},portalProps:{},arrowProps:{},defaultOpen:{type:Boolean,default:!1},open:{type:Boolean,default:void 0},delayDuration:{},skipDelayDuration:{},disableHoverableContent:{type:Boolean},disableClosingTrigger:{type:Boolean},disabled:{type:Boolean},ignoreNonKeyboardFocus:{type:Boolean}},emits:[`update:open`,`escapeKeyDown`,`pointerDownOutside`],setup(s,{emit:E}){let D=s,O=E,k=v(D,[`class`,`size`,`ui`,`content`,`showArrow`,`popupProps`,`positionerProps`,`triggerProps`,`portalProps`,`arrowProps`]),A=_(O),j=n(()=>e(t({size:D.size}),D.ui,{popup:D.class})),M=n(()=>({placement:D.placement,...D.positionerProps}));return T(j),(e,t)=>(d(),r(h(C),l(h(k),{"onUpdate:open":t[0]||=e=>O(`update:open`,e)}),{default:g(()=>[o(h(w),{"as-child":``},{default:g(()=>[f(e.$slots,`trigger`)]),_:3}),o(h(x),u(c(s.portalProps)),{default:g(()=>[o(h(S),l(M.value,m(h(A))),{default:g(()=>[o(h(b),u(c(s.popupProps)),{default:g(()=>[f(e.$slots,`default`,{},()=>[a(p(s.content),1)]),s.showArrow?(d(),r(h(y),u(l({key:0},s.arrowProps)),null,16)):i(`v-if`,!0)]),_:3},16)]),_:3},16)]),_:3},16)]),_:3},16))}});export{E as default};
1
+ import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{tooltipVariants as t}from"./variants.js";import{computed as n,createBlock as r,createCommentVNode as i,createTextVNode as a,createVNode as o,defineComponent as s,guardReactiveProps as c,mergeProps as l,normalizeProps as u,openBlock as d,renderSlot as f,toDisplayString as p,toHandlers as m,unref as h,withCtx as g}from"vue";import{useForwardListeners as _,useOmitProps as v}from"@soybeanjs/headless/composables";import{TooltipArrow as y,TooltipPopup as b,TooltipPortal as x,TooltipPositioner as S,TooltipRoot as C,TooltipTrigger as w,provideTooltipUi as T}from"@soybeanjs/headless";const E=s({name:`STooltip`,__name:`tooltip`,props:{class:{},size:{},ui:{},content:{},placement:{},showArrow:{type:Boolean,default:!0},popupProps:{},positionerProps:{},triggerProps:{},portalProps:{},arrowProps:{},defaultOpen:{type:Boolean,default:!1},open:{type:Boolean,default:void 0},delayDuration:{},skipDelayDuration:{},disableHoverableContent:{type:Boolean},disableClosingTrigger:{type:Boolean},disabled:{type:Boolean},ignoreNonKeyboardFocus:{type:Boolean}},emits:[`update:open`,`escapeKeyDown`,`pointerDownOutside`],setup(s,{emit:E}){let D=s,O=E,k=v(D,[`class`,`size`,`ui`,`content`,`showArrow`,`popupProps`,`positionerProps`,`triggerProps`,`portalProps`,`arrowProps`]),A=_(O),j=n(()=>e(t({size:D.size}),D.ui,{popup:D.class})),M=n(()=>({placement:D.placement,...D.positionerProps}));return T(j),(e,t)=>(d(),r(h(C),l(h(k),{"onUpdate:open":t[0]||=e=>O(`update:open`,e)}),{default:g(()=>[o(h(w),l(s.triggerProps,{"as-child":``}),{default:g(()=>[f(e.$slots,`trigger`)]),_:3},16),o(h(x),u(c(s.portalProps)),{default:g(()=>[o(h(S),l(M.value,m(h(A))),{default:g(()=>[o(h(b),u(c(s.popupProps)),{default:g(()=>[f(e.$slots,`default`,{},()=>[a(p(s.content),1)]),s.showArrow?(d(),r(h(y),u(l({key:0},s.arrowProps)),null,16)):i(`v-if`,!0)]),_:3},16)]),_:3},16)]),_:3},16)]),_:3},16))}});export{E as default};
@@ -1 +1 @@
1
- import{useContext as e,useUiContext as t}from"@soybeanjs/headless/composables";const[n,r]=e(`TreeMenu`,e=>e),[i,a]=e(`TreeMenuOptions`,e=>e),[o,s]=t(`TreeMenuExtraUi`);export{n as provideTreeMenuContext,o as provideTreeMenuExtraUi,i as provideTreeMenuOptionsContext,r as useTreeMenuContext,s as useTreeMenuExtraUi,a as useTreeMenuOptionsContext};
1
+ import{useContext as e,useUiContext as t}from"@soybeanjs/headless/composables";const[n,r]=e(`TreeMenu`),[i,a]=e(`TreeMenuOptions`),[o,s]=t(`TreeMenuExtraUi`);export{n as provideTreeMenuContext,o as provideTreeMenuExtraUi,i as provideTreeMenuOptionsContext,r as useTreeMenuContext,s as useTreeMenuExtraUi,a as useTreeMenuOptionsContext};
@@ -1,3 +1,3 @@
1
- import { TreeMenuBaseOptionData, TreeMenuContextParams, TreeMenuEmits, TreeMenuExtendedUi, TreeMenuExtraUiSlot, TreeMenuOptionData, TreeMenuOptionEmits, TreeMenuOptionProps, TreeMenuOptionSlotProps, TreeMenuOptionsContextParams, TreeMenuOptionsEmits, TreeMenuOptionsProps, TreeMenuProps, TreeMenuStyledItemProps } from "./types.js";
1
+ import { TreeMenuBaseOptionData, TreeMenuContext, TreeMenuEmits, TreeMenuExtendedUi, TreeMenuExtraUiSlot, TreeMenuOptionData, TreeMenuOptionEmits, TreeMenuOptionProps, TreeMenuOptionSlotProps, TreeMenuOptionsContext, TreeMenuOptionsEmits, TreeMenuOptionsProps, TreeMenuProps, TreeMenuStyledItemProps } from "./types.js";
2
2
  import { _default } from "./tree-menu.vue.js";
3
3
  import { _default as _default$1 } from "./tree-menu-styled-item.vue.js";
@@ -128,9 +128,9 @@ interface TreeMenuStyledItemProps extends /** @vue-ignore */HTMLAttributes {
128
128
  size?: ThemeSize;
129
129
  ui?: Partial<Pick<TreeMenuExtendedUi, 'item' | 'button'>>;
130
130
  }
131
- interface TreeMenuContextParams extends PropsToContext<TreeMenuProps, 'size' | 'side'> {}
132
- interface TreeMenuOptionsContextParams {
131
+ interface TreeMenuContext extends PropsToContext<TreeMenuProps, 'size' | 'side'> {}
132
+ interface TreeMenuOptionsContext {
133
133
  activePaths: ComputedRef<string[]>;
134
134
  }
135
135
  //#endregion
136
- export { TreeMenuBaseOptionData, TreeMenuContextParams, TreeMenuEmits, TreeMenuExtendedUi, TreeMenuExtraUiSlot, TreeMenuOptionData, TreeMenuOptionEmits, TreeMenuOptionProps, TreeMenuOptionSlotProps, TreeMenuOptionsContextParams, TreeMenuOptionsEmits, TreeMenuOptionsProps, TreeMenuProps, TreeMenuStyledItemProps };
136
+ export { TreeMenuBaseOptionData, TreeMenuContext, TreeMenuEmits, TreeMenuExtendedUi, TreeMenuExtraUiSlot, TreeMenuOptionData, TreeMenuOptionEmits, TreeMenuOptionProps, TreeMenuOptionSlotProps, TreeMenuOptionsContext, TreeMenuOptionsEmits, TreeMenuOptionsProps, TreeMenuProps, TreeMenuStyledItemProps };
@@ -32,6 +32,7 @@ declare const components: {
32
32
  pageTabs: string[];
33
33
  pagination: string[];
34
34
  password: string[];
35
+ popconfirm: string[];
35
36
  popover: string[];
36
37
  radioGroup: string[];
37
38
  segment: string[];
@@ -1 +1 @@
1
- const e={accordion:[`SAccordion`],alert:[`SAlert`],alertDialog:[`SAlertDialog`,`SAlertDialogCancel`,`SAlertDialogAction`],arrow:[`SArrow`],aspectRatio:[`SAspectRatio`],avatar:[`SAvatar`],badge:[`SBadge`],breadcrumb:[`SBreadcrumb`,`SBreadcrumbPage`,`SBreadcrumbEllipsis`],button:[`SButton`,`SButtonLoading`,`SButtonIcon`,`SButtonLink`,`SButtonGroup`],card:[`SCard`,`SCardCollapsibleTrigger`],checkbox:[`SCheckboxGroup`,`SCheckbox`,`SCheckboxCardGroup`,`SCheckboxCard`],collapsible:[`SCollapsible`,`SCollapsibleContent`,`SCollapsibleTrigger`],command:[`SCommand`],configProvider:[`SConfigProvider`],contextMenu:[`SContextMenu`,`SContextMenuCheckbox`,`SContextMenuRadio`,`SContextMenuWrapper`],dialog:[`SDialog`,`SDialogClose`,`SDialogPure`],drawer:[`SDrawer`,`SDrawerClose`],dropdownMenu:[`SDropdownMenu`,`SDropdownMenuCheckbox`,`SDropdownMenuRadio`,`SDropdownMenuWrapper`],form:[`SForm`,`SFormFieldBase`],input:[`SInput`],inputNumber:[`SInputNumber`],icon:[`SIcon`],kbd:[`SKbd`],label:[`SLabel`],layout:[`SLayout`,`SLayoutTrigger`],link:[`SLink`],list:[`SList`,`SListItem`],menu:[`SMenuOption`,`SMenuOptions`,`SMenuCheckboxOptions`,`SMenuRadioOptions`],navigationMenu:[`SNavigationMenu`],pageTabs:[`SPageTabs`],pagination:[`SPagination`],password:[`SPassword`],popover:[`SPopover`],radioGroup:[`SRadioGroup`,`SRadio`,`SRadioCard`,`SRadioCardGroup`],segment:[`SSegment`],select:[`SSelect`],separator:[`SSeparator`],switch:[`SSwitch`],table:[`STable`,`STableRow`,`STableCell`],tabs:[`STabs`],tag:[`STag`],textarea:[`STextarea`],toast:[`SToast`,`SToastAction`,`SToastClose`],tooltip:[`STooltip`],tree:[`STree`,`STreeVirtualizer`],treeMenu:[`STreeMenu`,`STreeMenuStyledItem`],virtualizer:[`SVirtualizer`]};export{e as components};
1
+ const e={accordion:[`SAccordion`],alert:[`SAlert`],alertDialog:[`SAlertDialog`,`SAlertDialogCancel`,`SAlertDialogConfirm`],arrow:[`SArrow`],aspectRatio:[`SAspectRatio`],avatar:[`SAvatar`],badge:[`SBadge`],breadcrumb:[`SBreadcrumb`,`SBreadcrumbPage`,`SBreadcrumbEllipsis`],button:[`SButton`,`SButtonLoading`,`SButtonIcon`,`SButtonLink`,`SButtonGroup`],card:[`SCard`,`SCardCollapsibleTrigger`],checkbox:[`SCheckboxGroup`,`SCheckbox`,`SCheckboxCardGroup`,`SCheckboxCard`],collapsible:[`SCollapsible`,`SCollapsibleContent`,`SCollapsibleTrigger`],command:[`SCommand`],configProvider:[`SConfigProvider`],contextMenu:[`SContextMenu`,`SContextMenuCheckbox`,`SContextMenuRadio`,`SContextMenuWrapper`],dialog:[`SDialog`,`SDialogClose`,`SDialogPure`],drawer:[`SDrawer`,`SDrawerClose`],dropdownMenu:[`SDropdownMenu`,`SDropdownMenuCheckbox`,`SDropdownMenuRadio`,`SDropdownMenuWrapper`],form:[`SForm`,`SFormFieldBase`],input:[`SInput`],inputNumber:[`SInputNumber`],icon:[`SIcon`],kbd:[`SKbd`],label:[`SLabel`],layout:[`SLayout`,`SLayoutTrigger`],link:[`SLink`],list:[`SList`,`SListItem`],menu:[`SMenuOption`,`SMenuOptions`,`SMenuCheckboxOptions`,`SMenuRadioOptions`],navigationMenu:[`SNavigationMenu`],pageTabs:[`SPageTabs`],pagination:[`SPagination`],password:[`SPassword`],popconfirm:[`SPopconfirm`,`SPopconfirmCancel`,`SPopconfirmConfirm`],popover:[`SPopover`],radioGroup:[`SRadioGroup`,`SRadio`,`SRadioCard`,`SRadioCardGroup`],segment:[`SSegment`],select:[`SSelect`],separator:[`SSeparator`],switch:[`SSwitch`],table:[`STable`,`STableRow`,`STableCell`],tabs:[`STabs`],tag:[`STag`],textarea:[`STextarea`],toast:[`SToast`,`SToastAction`,`SToastClose`],tooltip:[`STooltip`],tree:[`STree`,`STreeVirtualizer`],treeMenu:[`STreeMenu`,`STreeMenuStyledItem`],virtualizer:[`SVirtualizer`]};export{e as components};