ropav 0.0.10 → 0.0.12

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 (276) hide show
  1. package/README.md +9 -0
  2. package/dist/accordion.css +115 -111
  3. package/dist/accordion.js +60 -16
  4. package/dist/alert.css +110 -108
  5. package/dist/alert.js +48 -26
  6. package/dist/aspect-ratio.css +17 -15
  7. package/dist/aspect-ratio.js +20 -6
  8. package/dist/avatar.css +98 -96
  9. package/dist/avatar.js +27 -16
  10. package/dist/badge.css +95 -93
  11. package/dist/badge.js +29 -16
  12. package/dist/base.css +672 -671
  13. package/dist/button-group.css +39 -37
  14. package/dist/button-group.js +23 -12
  15. package/dist/button-link.css +160 -158
  16. package/dist/button-link.js +43 -24
  17. package/dist/button.css +160 -158
  18. package/dist/button.js +37 -19
  19. package/dist/card.css +109 -107
  20. package/dist/card.js +42 -17
  21. package/dist/checkbox.css +139 -137
  22. package/dist/checkbox.js +103 -33
  23. package/dist/collapse.css +29 -27
  24. package/dist/collapse.js +44 -10
  25. package/dist/color-input.css +137 -107
  26. package/dist/color-input.js +117 -30
  27. package/dist/color-picker.css +309 -303
  28. package/dist/color-picker.js +147 -54
  29. package/dist/color-picker2.js +9 -1
  30. package/dist/color-swatch.css +48 -46
  31. package/dist/color-swatch.js +15 -11
  32. package/dist/color-swatch2.js +4 -0
  33. package/dist/components/accordion/accordion-item.d.ts +13 -1
  34. package/dist/components/accordion/index.d.ts +2 -1
  35. package/dist/components/accordion/index.js +2 -2
  36. package/dist/components/accordion/types.d.ts +9 -4
  37. package/dist/components/alert/alert.d.ts +2 -2
  38. package/dist/components/alert/index.d.ts +2 -2
  39. package/dist/components/alert/index.js +2 -2
  40. package/dist/components/alert/types.d.ts +4 -1
  41. package/dist/components/aspect-ratio/index.d.ts +2 -1
  42. package/dist/components/aspect-ratio/index.js +2 -2
  43. package/dist/components/aspect-ratio/types.d.ts +4 -1
  44. package/dist/components/avatar/index.d.ts +2 -2
  45. package/dist/components/avatar/index.js +2 -2
  46. package/dist/components/avatar/types.d.ts +4 -1
  47. package/dist/components/badge/index.d.ts +2 -2
  48. package/dist/components/badge/index.js +2 -2
  49. package/dist/components/badge/types.d.ts +4 -1
  50. package/dist/components/button/index.d.ts +2 -1
  51. package/dist/components/button/index.js +2 -2
  52. package/dist/components/button/types.d.ts +4 -1
  53. package/dist/components/button-group/index.d.ts +2 -1
  54. package/dist/components/button-group/index.js +2 -2
  55. package/dist/components/button-group/types.d.ts +4 -1
  56. package/dist/components/button-link/index.d.ts +2 -1
  57. package/dist/components/button-link/index.js +2 -2
  58. package/dist/components/button-link/types.d.ts +4 -1
  59. package/dist/components/card/index.d.ts +2 -1
  60. package/dist/components/card/index.js +2 -2
  61. package/dist/components/card/types.d.ts +5 -1
  62. package/dist/components/checkbox/checkbox.d.ts +4 -1
  63. package/dist/components/checkbox/index.d.ts +2 -1
  64. package/dist/components/checkbox/index.js +2 -2
  65. package/dist/components/checkbox/types.d.ts +11 -2
  66. package/dist/components/checkbox/useCheckbox.d.ts +3 -1
  67. package/dist/components/collapse/collapse.d.ts +2 -2
  68. package/dist/components/collapse/index.d.ts +2 -1
  69. package/dist/components/collapse/index.js +2 -2
  70. package/dist/components/collapse/types.d.ts +9 -2
  71. package/dist/components/color-input/index.d.ts +2 -1
  72. package/dist/components/color-input/index.js +2 -2
  73. package/dist/components/color-input/types.d.ts +8 -2
  74. package/dist/components/color-input/useColorInput.d.ts +1 -1
  75. package/dist/components/color-input/useColorInputValue.d.ts +1 -1
  76. package/dist/components/color-picker/index.d.ts +2 -2
  77. package/dist/components/color-picker/index.js +2 -2
  78. package/dist/components/color-picker/types.d.ts +13 -1
  79. package/dist/components/color-swatch/index.d.ts +2 -1
  80. package/dist/components/color-swatch/index.js +2 -1
  81. package/dist/components/color-swatch/types.d.ts +4 -1
  82. package/dist/components/dialog/dialog-close.d.ts +21 -0
  83. package/dist/components/dialog/dialog-content.d.ts +32 -0
  84. package/dist/components/dialog/dialog-core.d.ts +27 -0
  85. package/dist/components/dialog/dialog-description.d.ts +21 -0
  86. package/dist/components/dialog/dialog-overlay.d.ts +21 -0
  87. package/dist/components/dialog/dialog-portal.d.ts +21 -0
  88. package/dist/components/dialog/dialog-root.d.ts +28 -0
  89. package/dist/components/dialog/dialog-title.d.ts +21 -0
  90. package/dist/components/dialog/dialog-trigger.d.ts +23 -0
  91. package/dist/components/dialog/index.d.ts +9 -0
  92. package/dist/components/dialog/index.js +2 -0
  93. package/dist/components/dialog/types.d.ts +61 -0
  94. package/dist/components/dropdown-menu/dropdown-menu-checkbox-item.d.ts +24 -0
  95. package/dist/components/dropdown-menu/dropdown-menu-content.d.ts +34 -0
  96. package/dist/components/dropdown-menu/dropdown-menu-context-trigger.d.ts +23 -0
  97. package/dist/components/dropdown-menu/dropdown-menu-item-indicator.d.ts +24 -0
  98. package/dist/components/dropdown-menu/dropdown-menu-item-row.d.ts +28 -0
  99. package/dist/components/dropdown-menu/dropdown-menu-item.d.ts +23 -0
  100. package/dist/components/dropdown-menu/dropdown-menu-items.d.ts +24 -22
  101. package/dist/components/dropdown-menu/dropdown-menu-label.d.ts +21 -0
  102. package/dist/components/dropdown-menu/dropdown-menu-outside.d.ts +3 -0
  103. package/dist/components/dropdown-menu/dropdown-menu-portal.d.ts +21 -0
  104. package/dist/components/dropdown-menu/dropdown-menu-primitive-core.d.ts +110 -0
  105. package/dist/components/dropdown-menu/dropdown-menu-primitives.d.ts +15 -0
  106. package/dist/components/dropdown-menu/dropdown-menu-radio-group.d.ts +25 -0
  107. package/dist/components/dropdown-menu/dropdown-menu-radio-item.d.ts +23 -0
  108. package/dist/components/dropdown-menu/dropdown-menu-root.d.ts +30 -0
  109. package/dist/components/dropdown-menu/dropdown-menu-separator.d.ts +19 -0
  110. package/dist/components/dropdown-menu/dropdown-menu-sub-content.d.ts +34 -0
  111. package/dist/components/dropdown-menu/dropdown-menu-sub-trigger.d.ts +28 -0
  112. package/dist/components/dropdown-menu/dropdown-menu-sub.d.ts +28 -0
  113. package/dist/components/dropdown-menu/dropdown-menu-trigger.d.ts +23 -0
  114. package/dist/components/dropdown-menu/dropdown-menu.d.ts +6 -3
  115. package/dist/components/dropdown-menu/index.d.ts +32 -1
  116. package/dist/components/dropdown-menu/index.js +2 -2
  117. package/dist/components/dropdown-menu/types.d.ts +145 -6
  118. package/dist/components/dropdown-menu/useDropdownMenu.d.ts +15 -3
  119. package/dist/components/dropdown-menu/useDropdownMenuDisclosure.d.ts +10 -3
  120. package/dist/components/dropdown-menu/useDropdownMenuDom.d.ts +2 -1
  121. package/dist/components/dropdown-menu/useDropdownMenuInteractions.d.ts +4 -4
  122. package/dist/components/dropdown-menu/useDropdownMenuPortalPosition.d.ts +19 -0
  123. package/dist/components/dropdown-menu/useDropdownMenuPrimitiveContent.d.ts +27 -0
  124. package/dist/components/dropdown-menu/useDropdownMenuRenderItems.d.ts +14 -2
  125. package/dist/components/field/index.d.ts +2 -1
  126. package/dist/components/field/index.js +2 -2
  127. package/dist/components/field/types.d.ts +4 -1
  128. package/dist/components/floating/index.d.ts +3 -0
  129. package/dist/components/floating/index.js +3 -0
  130. package/dist/components/floating/types.d.ts +105 -0
  131. package/dist/components/floating/useFloatingPosition.d.ts +15 -0
  132. package/dist/components/floating/useHoverDisclosure.d.ts +2 -0
  133. package/dist/components/focus-trap/focus-trap.d.ts +31 -0
  134. package/dist/components/focus-trap/index.d.ts +4 -0
  135. package/dist/components/focus-trap/index.js +3 -0
  136. package/dist/components/focus-trap/types.d.ts +41 -0
  137. package/dist/components/focus-trap/useFocusTrap.d.ts +2 -0
  138. package/dist/components/icon-button/index.d.ts +2 -1
  139. package/dist/components/icon-button/index.js +2 -1
  140. package/dist/components/icon-button/types.d.ts +4 -1
  141. package/dist/components/input/index.d.ts +2 -1
  142. package/dist/components/input/index.js +2 -1
  143. package/dist/components/input/input.d.ts +4 -1
  144. package/dist/components/input/types.d.ts +7 -2
  145. package/dist/components/modal/index.d.ts +2 -1
  146. package/dist/components/modal/index.js +2 -2
  147. package/dist/components/modal/modal.d.ts +3 -1
  148. package/dist/components/modal/types.d.ts +11 -1
  149. package/dist/components/modal/useModal.d.ts +7 -4
  150. package/dist/components/number-input/index.d.ts +2 -1
  151. package/dist/components/number-input/index.js +2 -2
  152. package/dist/components/number-input/types.d.ts +7 -2
  153. package/dist/components/number-input/useNumberInput.d.ts +2 -1
  154. package/dist/components/overlay/index.d.ts +2 -1
  155. package/dist/components/overlay/index.js +2 -1
  156. package/dist/components/overlay/types.d.ts +4 -1
  157. package/dist/components/popover/index.d.ts +2 -2
  158. package/dist/components/popover/index.js +2 -2
  159. package/dist/components/popover/popover.d.ts +2 -2
  160. package/dist/components/popover/types.d.ts +20 -11
  161. package/dist/components/popover/usePopover.d.ts +9 -1
  162. package/dist/components/progress/index.d.ts +2 -2
  163. package/dist/components/progress/index.js +2 -2
  164. package/dist/components/progress/types.d.ts +4 -1
  165. package/dist/components/radio/index.d.ts +2 -1
  166. package/dist/components/radio/index.js +2 -2
  167. package/dist/components/radio/radio.d.ts +8 -3
  168. package/dist/components/radio/types.d.ts +37 -4
  169. package/dist/components/radio/useRadio.d.ts +12 -4
  170. package/dist/components/select/index.d.ts +2 -1
  171. package/dist/components/select/index.js +2 -2
  172. package/dist/components/select/select.d.ts +4 -1
  173. package/dist/components/select/types.d.ts +10 -2
  174. package/dist/components/select/useSelect.d.ts +3 -1
  175. package/dist/components/slider/index.d.ts +2 -2
  176. package/dist/components/slider/index.js +2 -2
  177. package/dist/components/slider/range-slider-tooltip.d.ts +3 -0
  178. package/dist/components/slider/range-slider.d.ts +7 -4
  179. package/dist/components/slider/slider.d.ts +4 -1
  180. package/dist/components/slider/sliderCore.d.ts +4 -4
  181. package/dist/components/slider/types.d.ts +22 -4
  182. package/dist/components/slider/useRangeSlider.d.ts +2 -2
  183. package/dist/components/slider/useSlider.d.ts +2 -2
  184. package/dist/components/switch/index.d.ts +2 -1
  185. package/dist/components/switch/index.js +2 -2
  186. package/dist/components/switch/switch.d.ts +4 -1
  187. package/dist/components/switch/types.d.ts +11 -2
  188. package/dist/components/switch/useSwitch.d.ts +3 -1
  189. package/dist/components/tabs/index.d.ts +2 -1
  190. package/dist/components/tabs/index.js +2 -2
  191. package/dist/components/tabs/types.d.ts +13 -4
  192. package/dist/components/teleport-provider/index.d.ts +3 -0
  193. package/dist/components/teleport-provider/index.js +3 -0
  194. package/dist/components/teleport-provider/teleport-provider.d.ts +21 -0
  195. package/dist/components/teleport-provider/types.d.ts +4 -0
  196. package/dist/components/teleport-provider/useTeleportTarget.d.ts +6 -0
  197. package/dist/components/textarea/index.d.ts +2 -1
  198. package/dist/components/textarea/index.js +2 -2
  199. package/dist/components/textarea/textarea.d.ts +4 -1
  200. package/dist/components/textarea/types.d.ts +10 -2
  201. package/dist/components/textarea/useTextarea.d.ts +2 -1
  202. package/dist/components/toast/index.d.ts +3 -2
  203. package/dist/components/toast/index.js +2 -2
  204. package/dist/components/toast/toast-store.d.ts +2 -0
  205. package/dist/components/toast/toast.d.ts +2 -2
  206. package/dist/components/toast/types.d.ts +20 -10
  207. package/dist/components/toast/useToast.d.ts +2 -2
  208. package/dist/components/tooltip/index.d.ts +2 -1
  209. package/dist/components/tooltip/index.js +2 -1
  210. package/dist/components/tooltip/tooltip.d.ts +2 -2
  211. package/dist/components/tooltip/types.d.ts +13 -12
  212. package/dist/components/tooltip/useTooltip.d.ts +12 -2
  213. package/dist/composables/useOverlayLayer.d.ts +32 -0
  214. package/dist/dialog.js +510 -0
  215. package/dist/dropdown-menu.css +191 -108
  216. package/dist/dropdown-menu.js +1954 -198
  217. package/dist/field.css +41 -39
  218. package/dist/field.js +40 -16
  219. package/dist/floating.js +403 -0
  220. package/dist/focus-trap.js +80 -0
  221. package/dist/icon-button.css +193 -189
  222. package/dist/icon-button.js +23 -18
  223. package/dist/icon-button2.js +8 -0
  224. package/dist/index.d.ts +5 -0
  225. package/dist/index.js +39 -32
  226. package/dist/input.css +122 -120
  227. package/dist/input.js +63 -40
  228. package/dist/input2.js +9 -0
  229. package/dist/legacy-unlayered.css +5382 -0
  230. package/dist/modal.css +129 -127
  231. package/dist/modal.js +182 -281
  232. package/dist/number-input.css +87 -85
  233. package/dist/number-input.js +98 -26
  234. package/dist/overlay.css +26 -24
  235. package/dist/overlay.js +17 -9
  236. package/dist/overlay2.js +4 -0
  237. package/dist/popover.css +140 -107
  238. package/dist/popover.js +276 -196
  239. package/dist/popover2.js +6 -1
  240. package/dist/progress.css +101 -99
  241. package/dist/progress.js +50 -28
  242. package/dist/radio.css +114 -105
  243. package/dist/radio.js +237 -61
  244. package/dist/select.css +255 -242
  245. package/dist/select.js +257 -94
  246. package/dist/slider.css +1090 -1031
  247. package/dist/slider.js +443 -175
  248. package/dist/styles-api.d.ts +22 -0
  249. package/dist/styles-api.js +49 -0
  250. package/dist/switch.css +120 -108
  251. package/dist/switch.js +112 -38
  252. package/dist/tabs.css +286 -278
  253. package/dist/tabs.js +60 -21
  254. package/dist/teleport-provider.js +15 -0
  255. package/dist/textarea.css +132 -130
  256. package/dist/textarea.js +83 -31
  257. package/dist/toast.css +229 -225
  258. package/dist/toast.js +189 -118
  259. package/dist/tooltip.css +61 -106
  260. package/dist/tooltip.js +184 -228
  261. package/dist/tooltip2.js +8 -0
  262. package/dist/useControlState.js +4 -0
  263. package/dist/useFloatingPosition.js +1317 -0
  264. package/dist/useFocusTrap.js +130 -0
  265. package/dist/useFormControl.js +107 -0
  266. package/dist/useOverlayLayer.js +262 -0
  267. package/dist/useTeleportTarget.js +40 -0
  268. package/docs/public-floating-api.md +148 -0
  269. package/docs/public-styles-api.md +134 -0
  270. package/docs/public-tokens.md +545 -0
  271. package/package.json +37 -9
  272. package/src/styles/_tokens.scss +33 -28
  273. package/src/styles/_utilities.scss +11 -9
  274. package/src/styles/styles-manifest.json +4125 -0
  275. package/dist/rafScheduler.js +0 -34
  276. package/dist/useClickOutside.js +0 -24
@@ -5,7 +5,10 @@ declare const __VLS_export: (__VLS_props: NonNullable<Awaited<typeof __VLS_setup
5
5
  }> & (typeof globalThis extends {
6
6
  __VLS_PROPS_FALLBACK: infer P;
7
7
  } ? P : {});
8
- expose: (exposed: {}) => void;
8
+ expose: (exposed: import('vue').ShallowUnwrapRef<{
9
+ nativeElement: import('vue').Ref<HTMLTextAreaElement | null, HTMLTextAreaElement | null>;
10
+ focus: (options?: FocusOptions) => void;
11
+ }>) => void;
9
12
  attrs: any;
10
13
  slots: {};
11
14
  emit: (evt: "update:modelValue", value: string) => void;
@@ -1,10 +1,16 @@
1
+ import { TextareaHTMLAttributes } from 'vue';
2
+ import { StylesApiProps } from '../../styles-api.js';
3
+ export declare const textareaParts: readonly ["root", "input"];
4
+ export type TextareaPart = (typeof textareaParts)[number];
1
5
  export type TextareaRadius = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
2
6
  export type TextareaSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
3
7
  export type TextareaResize = 'none' | 'vertical' | 'both';
4
- export interface TextareaProps {
8
+ export interface TextareaProps extends StylesApiProps<TextareaPart> {
5
9
  id?: string;
6
10
  name?: string;
7
- modelValue: string;
11
+ form?: string;
12
+ modelValue?: string;
13
+ defaultValue?: string;
8
14
  size?: TextareaSize;
9
15
  radius?: TextareaRadius;
10
16
  resize?: TextareaResize;
@@ -21,4 +27,6 @@ export interface TextareaProps {
21
27
  ariaLabel?: string;
22
28
  describedby?: string;
23
29
  labelledby?: string;
30
+ inputAttrs?: TextareaHTMLAttributes;
31
+ validationMessage?: string;
24
32
  }
@@ -1,9 +1,10 @@
1
1
  import { TextareaProps } from './types.js';
2
- export declare function useTextarea(props: Readonly<TextareaProps>, emitUpdate: (value: string) => void): {
2
+ export declare function useTextarea(props: Readonly<TextareaProps>, emitUpdate: (value: string) => void, getValue?: () => string): {
3
3
  textareaRef: import('vue').Ref<HTMLTextAreaElement | null, HTMLTextAreaElement | null>;
4
4
  control: import('../../composables/useControlState.js').ControlState;
5
5
  rootClass: import('vue').ComputedRef<string[]>;
6
6
  nativeRows: import('vue').ComputedRef<number | undefined>;
7
7
  onInput: (e: Event) => void;
8
8
  focusTextarea: (e: MouseEvent) => void;
9
+ focus: (options?: FocusOptions) => void;
9
10
  };
@@ -1,7 +1,8 @@
1
1
  export { default as Toast } from './toast.js';
2
2
  export { default as ToastProvider } from './toast-provider.js';
3
3
  export { default as ToastViewport } from './toast-viewport.js';
4
- export { toastColors, toastPositions, toastRadiuses, toastTypes, toastVariants } from './types.js';
4
+ export { toastColors, toastParts, toastPositions, toastRadiuses, toastTypes, toastVariants, toastViewportParts, } from './types.js';
5
5
  export { useToast } from './useToast.js';
6
6
  export { useToastState } from './useToastState.js';
7
- export type { ToastCloseReason, ToastColor, ToastCreate, ToastId, ToastInput, ToastItem, ToastOptions, ToastPosition, ToastProps, ToastProviderContext, ToastProviderProps, ToastRadius, ToastRole, ToastStateBindingProps, ToastStateOption, ToastType, ToastUpdateOptions, ToastVariant, ToastViewportProps, ToastViewportSlotProps, UseToastReturn, UseToastStateOptions, UseToastStateReturn, } from './types.js';
7
+ export { createToastStore } from './toast-store.js';
8
+ export type { ToastCloseReason, ToastColor, ToastCreate, ToastId, ToastInput, ToastItem, ToastOptions, ToastPart, ToastPosition, ToastProps, ToastProviderContext, ToastProviderProps, ToastRadius, ToastRole, ToastStateBindingProps, ToastStateOption, ToastStore, ToastStoreOptions, ToastType, ToastUpdateOptions, ToastVariant, ToastViewportProps, ToastViewportPart, ToastViewportSlotProps, UseToastReturn, UseToastStateOptions, UseToastStateReturn, } from './types.js';
@@ -1,2 +1,2 @@
1
- import { a as toastColors, c as toastTypes, i as useToast, l as toastVariants, n as toast_viewport_default, o as toastPositions, r as toast_provider_default, s as toastRadiuses, t as useToastState, u as toast_default } from "../../toast.js";
2
- export { toast_default as Toast, toast_provider_default as ToastProvider, toast_viewport_default as ToastViewport, toastColors, toastPositions, toastRadiuses, toastTypes, toastVariants, useToast, useToastState };
1
+ import { a as toastColors, c as toastRadiuses, d as toastViewportParts, f as createToastStore, i as useToast, l as toastTypes, n as toast_viewport_default, o as toastParts, p as toast_default, r as toast_provider_default, s as toastPositions, t as useToastState, u as toastVariants } from "../../toast.js";
2
+ export { toast_default as Toast, toast_provider_default as ToastProvider, toast_viewport_default as ToastViewport, createToastStore, toastColors, toastParts, toastPositions, toastRadiuses, toastTypes, toastVariants, toastViewportParts, useToast, useToastState };
@@ -0,0 +1,2 @@
1
+ import { ToastStore, ToastStoreOptions } from './types.js';
2
+ export declare function createToastStore(options?: Readonly<ToastStoreOptions>): ToastStore;
@@ -1,8 +1,8 @@
1
1
  import { ToastCloseReason, ToastProps } from './types.js';
2
2
  declare const __VLS_export: (__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<{
3
3
  props: import('vue').PublicProps & __VLS_PrettifyLocal<ToastProps & {
4
- "onUpdate:open"?: ((value: boolean) => any) | undefined;
5
4
  onClose?: ((reason: ToastCloseReason) => any) | undefined;
5
+ "onUpdate:open"?: ((value: boolean) => any) | undefined;
6
6
  "onAfter-leave"?: (() => any) | undefined;
7
7
  }> & (typeof globalThis extends {
8
8
  __VLS_PROPS_FALLBACK: infer P;
@@ -18,7 +18,7 @@ declare const __VLS_export: (__VLS_props: NonNullable<Awaited<typeof __VLS_setup
18
18
  } & {
19
19
  action?: (props: {}) => any;
20
20
  };
21
- emit: ((evt: "update:open", value: boolean) => void) & ((evt: "close", reason: ToastCloseReason) => void) & ((evt: "after-leave") => void);
21
+ emit: ((evt: "close", reason: ToastCloseReason) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "after-leave") => void);
22
22
  }>) => import('vue').VNode & {
23
23
  __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
24
24
  };
@@ -1,5 +1,11 @@
1
- import { ComputedRef, InjectionKey, MaybeRefOrGetter } from 'vue';
1
+ import { ComputedRef, InjectionKey, MaybeRefOrGetter, Raw } from 'vue';
2
+ import { TeleportProps } from '../floating/types.js';
2
3
  import { ComponentColorValue } from '../../utils/componentColors.js';
4
+ import { StylesApiProps } from '../../styles-api.js';
5
+ export declare const toastParts: readonly ["root", "icon", "title", "description", "body", "action", "close"];
6
+ export declare const toastViewportParts: readonly ["root", "item", "toast", "toastIcon", "toastTitle", "toastDescription", "toastBody", "toastAction", "toastClose"];
7
+ export type ToastPart = (typeof toastParts)[number];
8
+ export type ToastViewportPart = (typeof toastViewportParts)[number];
3
9
  export declare const toastColors: readonly ["dark", "gray", "red", "pink", "grape", "violet", "indigo", "blue", "cyan", "teal", "green", "lime", "yellow", "orange"];
4
10
  export declare const toastVariants: readonly ["subtle", "surface", "outline", "solid"];
5
11
  export declare const toastRadiuses: readonly ["none", "xs", "sm", "md", "lg", "xl"];
@@ -11,10 +17,10 @@ export type ToastRadius = (typeof toastRadiuses)[number];
11
17
  export type ToastPosition = (typeof toastPositions)[number];
12
18
  export type ToastType = (typeof toastTypes)[number];
13
19
  export type ToastRole = 'alert' | 'status' | 'none';
14
- export type ToastCloseReason = 'dismiss' | 'timeout';
20
+ export type ToastCloseReason = 'dismiss' | 'overflow' | 'replace' | 'timeout';
15
21
  export type ToastStateOption<T> = MaybeRefOrGetter<T>;
16
22
  export type ToastId = string;
17
- export interface ToastProps {
23
+ export interface ToastProps extends StylesApiProps<ToastPart> {
18
24
  open?: boolean;
19
25
  title?: string;
20
26
  description?: string;
@@ -49,7 +55,7 @@ export interface UseToastStateReturn {
49
55
  close: (reason?: ToastCloseReason) => void;
50
56
  toggle: () => void;
51
57
  }
52
- export interface ToastProviderProps {
58
+ export interface ToastStoreOptions {
53
59
  max?: number;
54
60
  duration?: number;
55
61
  variant?: ToastVariant;
@@ -62,11 +68,13 @@ export interface ToastProviderProps {
62
68
  closable?: boolean;
63
69
  closeLabel?: string;
64
70
  }
65
- export interface ToastViewportProps {
71
+ export interface ToastProviderProps extends ToastStoreOptions {
72
+ /** Uses an existing store and its options instead of creating a provider-scoped store. */
73
+ store?: ToastStore;
74
+ }
75
+ export interface ToastViewportProps extends TeleportProps, StylesApiProps<ToastViewportPart> {
66
76
  position?: ToastPosition;
67
77
  label?: string;
68
- teleport?: boolean;
69
- teleportTo?: string | HTMLElement;
70
78
  }
71
79
  export interface ToastOptions extends Omit<ToastProps, 'open'> {
72
80
  /** Replaces an active toast with the same id and starts a fresh lifecycle. */
@@ -81,7 +89,7 @@ export interface ToastItem {
81
89
  /** A unique key for this rendered instance, including replacements that reuse an id. */
82
90
  readonly instanceId: string;
83
91
  readonly type: ToastType;
84
- readonly props: Readonly<Omit<ToastProps, 'open'>>;
92
+ readonly props: Readonly<Raw<Omit<ToastProps, 'open'>>>;
85
93
  readonly onClose?: (reason: ToastCloseReason) => void;
86
94
  }
87
95
  export interface ToastViewportSlotProps {
@@ -89,7 +97,7 @@ export interface ToastViewportSlotProps {
89
97
  dismiss: () => void;
90
98
  }
91
99
  export type ToastCreate = (input: ToastInput, options?: ToastOptions) => ToastId;
92
- export interface UseToastReturn {
100
+ export interface ToastStore {
93
101
  toasts: ComputedRef<readonly ToastItem[]>;
94
102
  show: ToastCreate;
95
103
  success: ToastCreate;
@@ -100,7 +108,9 @@ export interface UseToastReturn {
100
108
  dismiss: (id: ToastId, reason?: ToastCloseReason) => void;
101
109
  dismissAll: (reason?: ToastCloseReason) => void;
102
110
  }
103
- export interface ToastProviderContext extends UseToastReturn {
111
+ export interface UseToastReturn extends ToastStore {
112
+ }
113
+ export interface ToastProviderContext extends ToastStore {
104
114
  dismissInstance: (instanceId: string, reason?: ToastCloseReason) => void;
105
115
  }
106
116
  export declare const toastProviderKey: InjectionKey<ToastProviderContext>;
@@ -1,4 +1,4 @@
1
- import { ToastProviderContext, ToastProviderProps, UseToastReturn } from './types.js';
2
- export declare function provideToast(props: Readonly<ToastProviderProps>): ToastProviderContext;
1
+ import { ToastProviderContext, ToastStore, UseToastReturn } from './types.js';
2
+ export declare function provideToast(store: ToastStore): ToastProviderContext;
3
3
  export declare function useToastContext(consumer: string): ToastProviderContext;
4
4
  export declare function useToast(): UseToastReturn;
@@ -1,2 +1,3 @@
1
1
  export { default as Tooltip } from './tooltip.js';
2
- export type { TooltipColor, TooltipOffset, TooltipOffsetOptions, TooltipPlacement, TooltipProps, TooltipSlotProps, TooltipTarget, TooltipTriggerProps, } from './types.js';
2
+ export { tooltipParts } from './types.js';
3
+ export type { TooltipColor, TooltipOffset, TooltipOffsetOptions, TooltipPart, TooltipPlacement, TooltipProps, TooltipSlotProps, TooltipTarget, TooltipTriggerProps, } from './types.js';
@@ -1,2 +1,3 @@
1
1
  import { t as tooltip_default } from "../../tooltip.js";
2
- export { tooltip_default as Tooltip };
2
+ import { t as tooltipParts } from "../../tooltip2.js";
3
+ export { tooltip_default as Tooltip, tooltipParts };
@@ -1,4 +1,4 @@
1
- import { TooltipProps } from './types.js';
1
+ import { TooltipProps, TooltipTriggerProps } from './types.js';
2
2
  declare const __VLS_export: (__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<{
3
3
  props: import('vue').PublicProps & __VLS_PrettifyLocal<TooltipProps & {
4
4
  "onUpdate:open"?: ((value: boolean) => any) | undefined;
@@ -9,7 +9,7 @@ declare const __VLS_export: (__VLS_props: NonNullable<Awaited<typeof __VLS_setup
9
9
  attrs: any;
10
10
  slots: {
11
11
  default?: (props: {
12
- triggerProps: import('./types.js').TooltipTriggerProps;
12
+ triggerProps: TooltipTriggerProps;
13
13
  }) => any;
14
14
  } & {
15
15
  content?: (props: {}) => any;
@@ -1,30 +1,31 @@
1
- import { Ref } from 'vue';
1
+ import { HTMLAttributes } from 'vue';
2
2
  import { ComponentColorValue } from '../../utils/componentColors.js';
3
+ import { StylesApiProps } from '../../styles-api.js';
4
+ import { FloatingOffset, FloatingOffsetOptions, FloatingPositionProps, FloatingTarget } from '../floating/types.js';
5
+ export declare const tooltipParts: readonly ["root", "trigger", "content"];
6
+ export type TooltipPart = (typeof tooltipParts)[number];
3
7
  export type TooltipPlacement = 'top' | 'right' | 'bottom' | 'left';
4
8
  export type TooltipColor = ComponentColorValue;
5
- export type TooltipTarget = string | HTMLElement | Ref<HTMLElement | null | undefined>;
6
- export interface TooltipOffsetOptions {
7
- mainAxis?: number;
8
- crossAxis?: number;
9
- }
10
- export type TooltipOffset = number | TooltipOffsetOptions;
9
+ export type TooltipTarget = FloatingTarget;
10
+ export type TooltipOffsetOptions = FloatingOffsetOptions;
11
+ export type TooltipOffset = FloatingOffset;
11
12
  export interface TooltipTriggerProps {
12
13
  'aria-describedby'?: string;
14
+ class?: HTMLAttributes['class'];
15
+ style?: HTMLAttributes['style'];
16
+ 'data-state'?: 'open' | 'closed';
17
+ 'data-disabled'?: '';
13
18
  }
14
19
  export interface TooltipSlotProps {
15
20
  triggerProps: TooltipTriggerProps;
16
21
  }
17
- export interface TooltipProps {
22
+ export interface TooltipProps extends FloatingPositionProps<TooltipPlacement>, StylesApiProps<TooltipPart> {
18
23
  id?: string;
19
24
  content?: string;
20
- target?: TooltipTarget | null;
21
- placement?: TooltipPlacement;
22
25
  color?: TooltipColor;
23
26
  autoContrast?: boolean;
24
- offset?: TooltipOffset;
25
27
  open?: boolean;
26
28
  openDelay?: number;
27
- arrow?: boolean;
28
29
  disabled?: boolean;
29
30
  decorative?: boolean;
30
31
  }
@@ -1,10 +1,15 @@
1
1
  import { CSSProperties } from 'vue';
2
2
  import { TooltipOffset, TooltipProps, TooltipTriggerProps } from './types.js';
3
+ type TooltipBehaviorProps = Omit<TooltipProps, 'classNames' | 'styles'>;
3
4
  export declare function resolveTooltipOffsetStyle(offset: TooltipOffset | undefined): CSSProperties | undefined;
4
5
  export declare function resolveTooltipColorStyleWithContrast(color: TooltipProps['color'], autoContrast: TooltipProps['autoContrast']): CSSProperties | undefined;
5
- export declare function useTooltip(props: Readonly<TooltipProps>, emitOpenChange?: (open: boolean) => void): {
6
+ export declare function useTooltip(props: Readonly<TooltipBehaviorProps>, emitOpenChange?: (open: boolean) => void): {
7
+ rootRef: import('vue').Ref<HTMLElement | null, HTMLElement | null>;
8
+ contentRef: import('vue').Ref<HTMLElement | null, HTMLElement | null>;
9
+ arrowRef: import('vue').Ref<HTMLElement | null, HTMLElement | null>;
6
10
  tooltipId: import('vue').ComputedRef<string>;
7
11
  isOpen: import('vue').ComputedRef<boolean>;
12
+ isDisabled: import('vue').ComputedRef<boolean>;
8
13
  isVisible: import('vue').ComputedRef<boolean>;
9
14
  isTargetMode: import('vue').ComputedRef<boolean>;
10
15
  shouldRenderContent: import('vue').ComputedRef<boolean>;
@@ -12,8 +17,13 @@ export declare function useTooltip(props: Readonly<TooltipProps>, emitOpenChange
12
17
  triggerProps: import('vue').ComputedRef<TooltipTriggerProps>;
13
18
  contentRole: import('vue').ComputedRef<"tooltip" | undefined>;
14
19
  contentAriaHidden: import('vue').ComputedRef<"true" | undefined>;
15
- contentStyle: import('vue').ComputedRef<CSSProperties | undefined>;
20
+ contentStyle: import('vue').ComputedRef<CSSProperties>;
21
+ actualPlacement: Readonly<import('vue').Ref<import('../floating/index.js').FloatingPlacement, import('../floating/index.js').FloatingPlacement>>;
22
+ placementSide: import('vue').ComputedRef<string>;
23
+ arrowStyle: Readonly<import('vue').Ref<CSSProperties | undefined, CSSProperties | undefined>>;
24
+ teleportTo: import('vue').ComputedRef<import('../floating/index.js').TeleportTargetValue>;
16
25
  openTooltip: () => void;
17
26
  closeTooltip: () => void;
18
27
  onKeydown: (event: KeyboardEvent) => void;
19
28
  };
29
+ export {};
@@ -0,0 +1,32 @@
1
+ import { ComputedRef, MaybeRefOrGetter, Ref, ShallowRef } from 'vue';
2
+ export interface OverlayLayerContext {
3
+ id: symbol;
4
+ element: Ref<HTMLElement | null>;
5
+ active: ComputedRef<boolean>;
6
+ modal: ComputedRef<boolean>;
7
+ modalEffects: boolean;
8
+ preventScroll: ComputedRef<boolean>;
9
+ branches: Readonly<ShallowRef<readonly HTMLElement[]>>;
10
+ focusBranches: Readonly<ShallowRef<readonly HTMLElement[]>>;
11
+ zIndex: Readonly<Ref<number>>;
12
+ isTopLayer: () => boolean;
13
+ isInside: (event: Event, additional?: readonly (Element | null | undefined)[]) => boolean;
14
+ registerBranch: (element: HTMLElement, options?: {
15
+ focus?: boolean;
16
+ inside?: boolean;
17
+ }) => () => void;
18
+ }
19
+ export interface UseOverlayLayerOptions {
20
+ active: MaybeRefOrGetter<boolean>;
21
+ element: Ref<HTMLElement | null>;
22
+ modal?: MaybeRefOrGetter<boolean>;
23
+ modalEffects?: boolean;
24
+ preventScroll?: MaybeRefOrGetter<boolean>;
25
+ baseZIndex?: number;
26
+ }
27
+ export declare function useOverlayLayer(options: UseOverlayLayerOptions): OverlayLayerContext;
28
+ export declare function useOverlayLayerBranch(element: Ref<HTMLElement | null>, options?: {
29
+ focus?: boolean;
30
+ inside?: boolean;
31
+ }): OverlayLayerContext | null;
32
+ export declare function useParentOverlayLayer(): OverlayLayerContext | null;