bits-ui 0.8.0 → 0.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (284) hide show
  1. package/dist/bits/accordion/components/Accordion.svelte +8 -7
  2. package/dist/bits/accordion/components/Accordion.svelte.d.ts +11 -4
  3. package/dist/bits/accordion/components/AccordionContent.svelte +16 -18
  4. package/dist/bits/accordion/components/AccordionContent.svelte.d.ts +15 -4
  5. package/dist/bits/accordion/components/AccordionHeader.svelte +10 -6
  6. package/dist/bits/accordion/components/AccordionHeader.svelte.d.ts +13 -4
  7. package/dist/bits/accordion/components/AccordionItem.svelte +8 -6
  8. package/dist/bits/accordion/components/AccordionItem.svelte.d.ts +12 -4
  9. package/dist/bits/accordion/components/AccordionTrigger.svelte +14 -6
  10. package/dist/bits/accordion/components/AccordionTrigger.svelte.d.ts +16 -4
  11. package/dist/bits/accordion/ctx.d.ts +7 -14
  12. package/dist/bits/accordion/ctx.js +14 -20
  13. package/dist/bits/alert-dialog/components/AlertDialog.svelte +2 -2
  14. package/dist/bits/alert-dialog/components/AlertDialogAction.svelte +14 -6
  15. package/dist/bits/alert-dialog/components/AlertDialogAction.svelte.d.ts +11 -4
  16. package/dist/bits/alert-dialog/components/AlertDialogCancel.svelte +14 -6
  17. package/dist/bits/alert-dialog/components/AlertDialogCancel.svelte.d.ts +11 -4
  18. package/dist/bits/alert-dialog/components/AlertDialogContent.svelte +16 -18
  19. package/dist/bits/alert-dialog/components/AlertDialogContent.svelte.d.ts +20 -4
  20. package/dist/bits/alert-dialog/components/AlertDialogDescription.svelte +8 -6
  21. package/dist/bits/alert-dialog/components/AlertDialogDescription.svelte.d.ts +11 -4
  22. package/dist/bits/alert-dialog/components/AlertDialogOverlay.svelte +10 -13
  23. package/dist/bits/alert-dialog/components/AlertDialogOverlay.svelte.d.ts +17 -4
  24. package/dist/bits/alert-dialog/components/AlertDialogPortal.svelte +8 -7
  25. package/dist/bits/alert-dialog/components/AlertDialogPortal.svelte.d.ts +13 -4
  26. package/dist/bits/alert-dialog/components/AlertDialogTitle.svelte +10 -6
  27. package/dist/bits/alert-dialog/components/AlertDialogTitle.svelte.d.ts +11 -4
  28. package/dist/bits/alert-dialog/components/AlertDialogTrigger.svelte +14 -6
  29. package/dist/bits/alert-dialog/components/AlertDialogTrigger.svelte.d.ts +15 -4
  30. package/dist/bits/alert-dialog/ctx.d.ts +5 -8
  31. package/dist/bits/alert-dialog/ctx.js +15 -8
  32. package/dist/bits/aspect-ratio/components/AspectRatio.svelte.d.ts +3 -3
  33. package/dist/bits/avatar/components/Avatar.svelte +6 -5
  34. package/dist/bits/avatar/components/Avatar.svelte.d.ts +6 -4
  35. package/dist/bits/avatar/components/AvatarFallback.svelte +10 -6
  36. package/dist/bits/avatar/components/AvatarFallback.svelte.d.ts +12 -4
  37. package/dist/bits/avatar/components/AvatarImage.svelte +7 -4
  38. package/dist/bits/avatar/components/AvatarImage.svelte.d.ts +4 -3
  39. package/dist/bits/avatar/ctx.d.ts +4 -9
  40. package/dist/bits/avatar/ctx.js +7 -10
  41. package/dist/bits/button/components/Button.svelte +5 -0
  42. package/dist/bits/button/components/Button.svelte.d.ts +6 -6
  43. package/dist/bits/checkbox/components/Checkbox.svelte +14 -6
  44. package/dist/bits/checkbox/components/Checkbox.svelte.d.ts +16 -4
  45. package/dist/bits/checkbox/components/CheckboxIndicator.svelte +4 -3
  46. package/dist/bits/checkbox/components/CheckboxIndicator.svelte.d.ts +3 -3
  47. package/dist/bits/checkbox/components/CheckboxInput.svelte +4 -3
  48. package/dist/bits/checkbox/components/CheckboxInput.svelte.d.ts +10 -10
  49. package/dist/bits/checkbox/ctx.d.ts +3 -7
  50. package/dist/bits/checkbox/ctx.js +6 -8
  51. package/dist/bits/collapsible/components/Collapsible.svelte +8 -6
  52. package/dist/bits/collapsible/components/Collapsible.svelte.d.ts +12 -4
  53. package/dist/bits/collapsible/components/CollapsibleContent.svelte +16 -18
  54. package/dist/bits/collapsible/components/CollapsibleContent.svelte.d.ts +14 -4
  55. package/dist/bits/collapsible/components/CollapsibleTrigger.svelte +8 -6
  56. package/dist/bits/collapsible/components/CollapsibleTrigger.svelte.d.ts +13 -4
  57. package/dist/bits/collapsible/ctx.d.ts +3 -7
  58. package/dist/bits/collapsible/ctx.js +6 -8
  59. package/dist/bits/context-menu/components/ContextMenu.svelte +2 -2
  60. package/dist/bits/context-menu/components/ContextMenu.svelte.d.ts +3 -3
  61. package/dist/bits/context-menu/components/ContextMenuArrow.svelte +7 -4
  62. package/dist/bits/context-menu/components/ContextMenuArrow.svelte.d.ts +4 -3
  63. package/dist/bits/context-menu/components/ContextMenuCheckboxIndicator.svelte +4 -3
  64. package/dist/bits/context-menu/components/ContextMenuCheckboxIndicator.svelte.d.ts +3 -3
  65. package/dist/bits/context-menu/components/ContextMenuCheckboxItem.svelte +8 -5
  66. package/dist/bits/context-menu/components/ContextMenuCheckboxItem.svelte.d.ts +16 -4
  67. package/dist/bits/context-menu/components/ContextMenuContent.svelte +16 -15
  68. package/dist/bits/context-menu/components/ContextMenuContent.svelte.d.ts +18 -4
  69. package/dist/bits/context-menu/components/ContextMenuGroup.svelte +8 -6
  70. package/dist/bits/context-menu/components/ContextMenuGroup.svelte.d.ts +12 -4
  71. package/dist/bits/context-menu/components/ContextMenuItem.svelte +9 -7
  72. package/dist/bits/context-menu/components/ContextMenuItem.svelte.d.ts +19 -4
  73. package/dist/bits/context-menu/components/ContextMenuLabel.svelte +8 -6
  74. package/dist/bits/context-menu/components/ContextMenuLabel.svelte.d.ts +11 -4
  75. package/dist/bits/context-menu/components/ContextMenuRadioGroup.svelte +8 -6
  76. package/dist/bits/context-menu/components/ContextMenuRadioGroup.svelte.d.ts +11 -4
  77. package/dist/bits/context-menu/components/ContextMenuRadioIndicator.svelte +2 -2
  78. package/dist/bits/context-menu/components/ContextMenuRadioItem.svelte +8 -6
  79. package/dist/bits/context-menu/components/ContextMenuRadioItem.svelte.d.ts +18 -4
  80. package/dist/bits/context-menu/components/ContextMenuSeparator.svelte +9 -4
  81. package/dist/bits/context-menu/components/ContextMenuSeparator.svelte.d.ts +4 -3
  82. package/dist/bits/context-menu/components/ContextMenuSub.svelte +2 -2
  83. package/dist/bits/context-menu/components/ContextMenuSubContent.svelte +16 -14
  84. package/dist/bits/context-menu/components/ContextMenuSubContent.svelte.d.ts +17 -4
  85. package/dist/bits/context-menu/components/ContextMenuSubTrigger.svelte +9 -6
  86. package/dist/bits/context-menu/components/ContextMenuSubTrigger.svelte.d.ts +24 -4
  87. package/dist/bits/context-menu/components/ContextMenuTrigger.svelte +8 -5
  88. package/dist/bits/context-menu/components/ContextMenuTrigger.svelte.d.ts +15 -4
  89. package/dist/bits/context-menu/ctx.d.ts +17 -35
  90. package/dist/bits/context-menu/ctx.js +49 -50
  91. package/dist/bits/dialog/components/Dialog.svelte +2 -2
  92. package/dist/bits/dialog/components/DialogClose.svelte +14 -6
  93. package/dist/bits/dialog/components/DialogClose.svelte.d.ts +11 -4
  94. package/dist/bits/dialog/components/DialogContent.svelte +16 -18
  95. package/dist/bits/dialog/components/DialogContent.svelte.d.ts +20 -4
  96. package/dist/bits/dialog/components/DialogDescription.svelte +10 -6
  97. package/dist/bits/dialog/components/DialogDescription.svelte.d.ts +11 -4
  98. package/dist/bits/dialog/components/DialogOverlay.svelte +11 -13
  99. package/dist/bits/dialog/components/DialogOverlay.svelte.d.ts +17 -4
  100. package/dist/bits/dialog/components/DialogPortal.svelte +8 -7
  101. package/dist/bits/dialog/components/DialogPortal.svelte.d.ts +13 -4
  102. package/dist/bits/dialog/components/DialogTitle.svelte +10 -6
  103. package/dist/bits/dialog/components/DialogTitle.svelte.d.ts +11 -4
  104. package/dist/bits/dialog/components/DialogTrigger.svelte +14 -6
  105. package/dist/bits/dialog/components/DialogTrigger.svelte.d.ts +15 -4
  106. package/dist/bits/dialog/ctx.d.ts +5 -8
  107. package/dist/bits/dialog/ctx.js +6 -8
  108. package/dist/bits/dropdown-menu/components/DropdownMenu.svelte +2 -2
  109. package/dist/bits/dropdown-menu/components/DropdownMenu.svelte.d.ts +3 -3
  110. package/dist/bits/dropdown-menu/components/DropdownMenuArrow.svelte +7 -4
  111. package/dist/bits/dropdown-menu/components/DropdownMenuArrow.svelte.d.ts +4 -3
  112. package/dist/bits/dropdown-menu/components/DropdownMenuCheckboxIndicator.svelte +4 -3
  113. package/dist/bits/dropdown-menu/components/DropdownMenuCheckboxIndicator.svelte.d.ts +3 -3
  114. package/dist/bits/dropdown-menu/components/DropdownMenuCheckboxItem.svelte +9 -7
  115. package/dist/bits/dropdown-menu/components/DropdownMenuCheckboxItem.svelte.d.ts +16 -4
  116. package/dist/bits/dropdown-menu/components/DropdownMenuContent.svelte +16 -15
  117. package/dist/bits/dropdown-menu/components/DropdownMenuContent.svelte.d.ts +18 -4
  118. package/dist/bits/dropdown-menu/components/DropdownMenuGroup.svelte +8 -6
  119. package/dist/bits/dropdown-menu/components/DropdownMenuGroup.svelte.d.ts +12 -4
  120. package/dist/bits/dropdown-menu/components/DropdownMenuItem.svelte +9 -6
  121. package/dist/bits/dropdown-menu/components/DropdownMenuItem.svelte.d.ts +13 -4
  122. package/dist/bits/dropdown-menu/components/DropdownMenuLabel.svelte +8 -6
  123. package/dist/bits/dropdown-menu/components/DropdownMenuLabel.svelte.d.ts +11 -4
  124. package/dist/bits/dropdown-menu/components/DropdownMenuRadioGroup.svelte +8 -6
  125. package/dist/bits/dropdown-menu/components/DropdownMenuRadioGroup.svelte.d.ts +11 -4
  126. package/dist/bits/dropdown-menu/components/DropdownMenuRadioIndicator.svelte +2 -2
  127. package/dist/bits/dropdown-menu/components/DropdownMenuRadioItem.svelte +8 -5
  128. package/dist/bits/dropdown-menu/components/DropdownMenuRadioItem.svelte.d.ts +18 -4
  129. package/dist/bits/dropdown-menu/components/DropdownMenuSeparator.svelte +9 -4
  130. package/dist/bits/dropdown-menu/components/DropdownMenuSeparator.svelte.d.ts +4 -3
  131. package/dist/bits/dropdown-menu/components/DropdownMenuSub.svelte +2 -2
  132. package/dist/bits/dropdown-menu/components/DropdownMenuSubContent.svelte +16 -15
  133. package/dist/bits/dropdown-menu/components/DropdownMenuSubContent.svelte.d.ts +17 -4
  134. package/dist/bits/dropdown-menu/components/DropdownMenuSubTrigger.svelte +9 -6
  135. package/dist/bits/dropdown-menu/components/DropdownMenuSubTrigger.svelte.d.ts +24 -4
  136. package/dist/bits/dropdown-menu/components/DropdownMenuTrigger.svelte +14 -6
  137. package/dist/bits/dropdown-menu/components/DropdownMenuTrigger.svelte.d.ts +15 -4
  138. package/dist/bits/dropdown-menu/ctx.d.ts +17 -33
  139. package/dist/bits/dropdown-menu/ctx.js +44 -44
  140. package/dist/bits/label/components/Label.svelte +9 -8
  141. package/dist/bits/label/components/Label.svelte.d.ts +9 -4
  142. package/dist/bits/label/ctx.d.ts +1 -8
  143. package/dist/bits/label/ctx.js +4 -4
  144. package/dist/bits/link-preview/components/LinkPreview.svelte +2 -2
  145. package/dist/bits/link-preview/components/LinkPreview.svelte.d.ts +1 -1
  146. package/dist/bits/link-preview/components/LinkPreviewArrow.svelte +7 -4
  147. package/dist/bits/link-preview/components/LinkPreviewArrow.svelte.d.ts +4 -3
  148. package/dist/bits/link-preview/components/LinkPreviewContent.svelte +16 -14
  149. package/dist/bits/link-preview/components/LinkPreviewContent.svelte.d.ts +16 -4
  150. package/dist/bits/link-preview/components/LinkPreviewTrigger.svelte +8 -5
  151. package/dist/bits/link-preview/components/LinkPreviewTrigger.svelte.d.ts +16 -4
  152. package/dist/bits/link-preview/ctx.d.ts +4 -9
  153. package/dist/bits/link-preview/ctx.js +12 -15
  154. package/dist/bits/menubar/components/Menubar.svelte +8 -6
  155. package/dist/bits/menubar/components/Menubar.svelte.d.ts +18 -4
  156. package/dist/bits/menubar/components/MenubarArrow.svelte +7 -4
  157. package/dist/bits/menubar/components/MenubarArrow.svelte.d.ts +4 -3
  158. package/dist/bits/menubar/components/MenubarCheckboxIndicator.svelte +4 -3
  159. package/dist/bits/menubar/components/MenubarCheckboxIndicator.svelte.d.ts +3 -3
  160. package/dist/bits/menubar/components/MenubarCheckboxItem.svelte +8 -7
  161. package/dist/bits/menubar/components/MenubarCheckboxItem.svelte.d.ts +16 -4
  162. package/dist/bits/menubar/components/MenubarContent.svelte +16 -16
  163. package/dist/bits/menubar/components/MenubarContent.svelte.d.ts +19 -4
  164. package/dist/bits/menubar/components/MenubarGroup.svelte +8 -6
  165. package/dist/bits/menubar/components/MenubarGroup.svelte.d.ts +12 -4
  166. package/dist/bits/menubar/components/MenubarItem.svelte +9 -8
  167. package/dist/bits/menubar/components/MenubarItem.svelte.d.ts +19 -4
  168. package/dist/bits/menubar/components/MenubarLabel.svelte +8 -6
  169. package/dist/bits/menubar/components/MenubarLabel.svelte.d.ts +11 -4
  170. package/dist/bits/menubar/components/MenubarMenu.svelte +2 -2
  171. package/dist/bits/menubar/components/MenubarMenu.svelte.d.ts +3 -3
  172. package/dist/bits/menubar/components/MenubarRadioGroup.svelte +8 -6
  173. package/dist/bits/menubar/components/MenubarRadioGroup.svelte.d.ts +11 -4
  174. package/dist/bits/menubar/components/MenubarRadioIndicator.svelte +2 -2
  175. package/dist/bits/menubar/components/MenubarRadioItem.svelte +8 -7
  176. package/dist/bits/menubar/components/MenubarRadioItem.svelte.d.ts +18 -4
  177. package/dist/bits/menubar/components/MenubarSeparator.svelte +9 -4
  178. package/dist/bits/menubar/components/MenubarSeparator.svelte.d.ts +3 -3
  179. package/dist/bits/menubar/components/MenubarSub.svelte +2 -2
  180. package/dist/bits/menubar/components/MenubarSubContent.svelte +16 -14
  181. package/dist/bits/menubar/components/MenubarSubContent.svelte.d.ts +17 -4
  182. package/dist/bits/menubar/components/MenubarSubTrigger.svelte +9 -6
  183. package/dist/bits/menubar/components/MenubarSubTrigger.svelte.d.ts +24 -4
  184. package/dist/bits/menubar/components/MenubarTrigger.svelte +8 -5
  185. package/dist/bits/menubar/components/MenubarTrigger.svelte.d.ts +17 -4
  186. package/dist/bits/menubar/ctx.d.ts +20 -38
  187. package/dist/bits/menubar/ctx.js +50 -51
  188. package/dist/bits/popover/components/Popover.svelte +2 -2
  189. package/dist/bits/popover/components/Popover.svelte.d.ts +3 -3
  190. package/dist/bits/popover/components/PopoverArrow.svelte +7 -4
  191. package/dist/bits/popover/components/PopoverArrow.svelte.d.ts +3 -3
  192. package/dist/bits/popover/components/PopoverClose.svelte +14 -6
  193. package/dist/bits/popover/components/PopoverClose.svelte.d.ts +11 -4
  194. package/dist/bits/popover/components/PopoverContent.svelte +16 -18
  195. package/dist/bits/popover/components/PopoverContent.svelte.d.ts +18 -4
  196. package/dist/bits/popover/components/PopoverTrigger.svelte +14 -6
  197. package/dist/bits/popover/components/PopoverTrigger.svelte.d.ts +16 -4
  198. package/dist/bits/popover/ctx.d.ts +4 -9
  199. package/dist/bits/popover/ctx.js +8 -11
  200. package/dist/bits/progress/components/Progress.svelte +8 -6
  201. package/dist/bits/progress/components/Progress.svelte.d.ts +19 -4
  202. package/dist/bits/progress/ctx.d.ts +2 -5
  203. package/dist/bits/progress/ctx.js +5 -5
  204. package/dist/bits/radio-group/components/RadioGroup.svelte +8 -6
  205. package/dist/bits/radio-group/components/RadioGroup.svelte.d.ts +15 -6
  206. package/dist/bits/radio-group/components/RadioGroupInput.svelte +9 -4
  207. package/dist/bits/radio-group/components/RadioGroupInput.svelte.d.ts +4 -3
  208. package/dist/bits/radio-group/components/RadioGroupItem.svelte +8 -5
  209. package/dist/bits/radio-group/components/RadioGroupItem.svelte.d.ts +19 -4
  210. package/dist/bits/radio-group/components/RadioGroupItemIndicator.svelte +2 -2
  211. package/dist/bits/radio-group/ctx.d.ts +5 -11
  212. package/dist/bits/radio-group/ctx.js +10 -14
  213. package/dist/bits/select/components/Select.svelte +2 -2
  214. package/dist/bits/select/components/Select.svelte.d.ts +4 -3
  215. package/dist/bits/select/components/SelectArrow.svelte +7 -4
  216. package/dist/bits/select/components/SelectArrow.svelte.d.ts +4 -3
  217. package/dist/bits/select/components/SelectContent.svelte +16 -15
  218. package/dist/bits/select/components/SelectContent.svelte.d.ts +14 -4
  219. package/dist/bits/select/components/SelectGroup.svelte +8 -6
  220. package/dist/bits/select/components/SelectGroup.svelte.d.ts +12 -4
  221. package/dist/bits/select/components/SelectInput.svelte +9 -4
  222. package/dist/bits/select/components/SelectInput.svelte.d.ts +4 -3
  223. package/dist/bits/select/components/SelectItem.svelte +9 -6
  224. package/dist/bits/select/components/SelectItem.svelte.d.ts +18 -4
  225. package/dist/bits/select/components/SelectItemIndicator.svelte +2 -2
  226. package/dist/bits/select/components/SelectLabel.svelte +8 -6
  227. package/dist/bits/select/components/SelectLabel.svelte.d.ts +11 -4
  228. package/dist/bits/select/components/SelectTrigger.svelte +14 -6
  229. package/dist/bits/select/components/SelectTrigger.svelte.d.ts +19 -4
  230. package/dist/bits/select/components/SelectValue.svelte +8 -5
  231. package/dist/bits/select/components/SelectValue.svelte.d.ts +4 -3
  232. package/dist/bits/select/ctx.d.ts +10 -16
  233. package/dist/bits/select/ctx.js +18 -25
  234. package/dist/bits/separator/components/Separator.svelte +7 -4
  235. package/dist/bits/separator/components/Separator.svelte.d.ts +4 -3
  236. package/dist/bits/separator/ctx.d.ts +2 -5
  237. package/dist/bits/separator/ctx.js +5 -5
  238. package/dist/bits/slider/components/Slider.svelte +8 -6
  239. package/dist/bits/slider/components/Slider.svelte.d.ts +17 -6
  240. package/dist/bits/slider/components/SliderInput.svelte +4 -3
  241. package/dist/bits/slider/components/SliderInput.svelte.d.ts +10 -10
  242. package/dist/bits/slider/components/SliderRange.svelte +9 -4
  243. package/dist/bits/slider/components/SliderRange.svelte.d.ts +4 -3
  244. package/dist/bits/slider/components/SliderThumb.svelte +8 -6
  245. package/dist/bits/slider/components/SliderThumb.svelte.d.ts +3 -3
  246. package/dist/bits/slider/ctx.d.ts +3 -7
  247. package/dist/bits/slider/ctx.js +6 -8
  248. package/dist/bits/switch/components/Switch.svelte +14 -6
  249. package/dist/bits/switch/components/Switch.svelte.d.ts +17 -4
  250. package/dist/bits/switch/components/SwitchInput.svelte +4 -3
  251. package/dist/bits/switch/components/SwitchInput.svelte.d.ts +3 -3
  252. package/dist/bits/switch/components/SwitchThumb.svelte +12 -4
  253. package/dist/bits/switch/components/SwitchThumb.svelte.d.ts +8 -4
  254. package/dist/bits/switch/ctx.d.ts +4 -8
  255. package/dist/bits/switch/ctx.js +6 -8
  256. package/dist/bits/tabs/components/Tabs.svelte +8 -6
  257. package/dist/bits/tabs/components/Tabs.svelte.d.ts +12 -5
  258. package/dist/bits/tabs/components/TabsContent.svelte +10 -6
  259. package/dist/bits/tabs/components/TabsContent.svelte.d.ts +14 -4
  260. package/dist/bits/tabs/components/TabsList.svelte +10 -6
  261. package/dist/bits/tabs/components/TabsList.svelte.d.ts +13 -4
  262. package/dist/bits/tabs/components/TabsTrigger.svelte +10 -5
  263. package/dist/bits/tabs/components/TabsTrigger.svelte.d.ts +18 -4
  264. package/dist/bits/tabs/ctx.d.ts +3 -7
  265. package/dist/bits/tabs/ctx.js +6 -8
  266. package/dist/bits/toggle/components/Toggle.svelte +14 -6
  267. package/dist/bits/toggle/components/Toggle.svelte.d.ts +15 -4
  268. package/dist/bits/toggle/components/ToggleInput.svelte +4 -3
  269. package/dist/bits/toggle/components/ToggleInput.svelte.d.ts +10 -10
  270. package/dist/bits/toggle/ctx.d.ts +3 -7
  271. package/dist/bits/toggle/ctx.js +6 -8
  272. package/dist/bits/tooltip/components/Tooltip.svelte +2 -2
  273. package/dist/bits/tooltip/components/Tooltip.svelte.d.ts +2 -2
  274. package/dist/bits/tooltip/components/TooltipArrow.svelte +7 -4
  275. package/dist/bits/tooltip/components/TooltipArrow.svelte.d.ts +4 -3
  276. package/dist/bits/tooltip/components/TooltipContent.svelte +22 -15
  277. package/dist/bits/tooltip/components/TooltipContent.svelte.d.ts +16 -4
  278. package/dist/bits/tooltip/components/TooltipTrigger.svelte +10 -5
  279. package/dist/bits/tooltip/components/TooltipTrigger.svelte.d.ts +12 -4
  280. package/dist/bits/tooltip/ctx.d.ts +4 -9
  281. package/dist/bits/tooltip/ctx.js +8 -11
  282. package/dist/internal/helpers.d.ts +2 -1
  283. package/dist/internal/helpers.js +10 -6
  284. package/package.json +3 -2
@@ -1,6 +1,6 @@
1
1
  <script>import { createDispatcher } from "../../../internal/index.js";
2
2
  import { melt } from "@melt-ui/svelte";
3
- import { ctx } from "../ctx.js";
3
+ import { getSubContent, getAttrs } from "../ctx.js";
4
4
  export let transition = void 0;
5
5
  export let transitionConfig = void 0;
6
6
  export let inTransition = void 0;
@@ -11,72 +11,74 @@ export let asChild = false;
11
11
  const {
12
12
  elements: { subMenu },
13
13
  states: { subOpen }
14
- } = ctx.getSubContent();
14
+ } = getSubContent();
15
+ $:
16
+ builder = $subMenu;
15
17
  const dispatch = createDispatcher();
18
+ const attrs = getAttrs("sub-content");
16
19
  </script>
17
20
 
18
21
  <!-- svelte-ignore a11y-no-static-element-interactions / applied by melt store -->
19
22
  {#if asChild && $subOpen}
20
- {@const builder = $subMenu}
21
- <slot {builder} />
23
+ <slot {builder} {attrs} />
22
24
  {:else if transition && $subOpen}
23
- {@const builder = $subMenu}
24
25
  <div
25
26
  transition:transition={transitionConfig}
26
27
  {...builder} use:builder.action
27
28
  {...$$restProps}
29
+ {...attrs}
28
30
  on:m-focusout={dispatch}
29
31
  on:m-keydown={dispatch}
30
32
  on:m-pointermove={dispatch}
31
33
  >
32
- <slot {builder} />
34
+ <slot {builder} {attrs} />
33
35
  </div>
34
36
  {:else if inTransition && outTransition && $subOpen}
35
- {@const builder = $subMenu}
36
37
  <div
37
38
  in:inTransition={inTransitionConfig}
38
39
  out:outTransition={outTransitionConfig}
39
40
  {...builder} use:builder.action
40
41
  {...$$restProps}
42
+ {...attrs}
41
43
  on:m-focusout={dispatch}
42
44
  on:m-keydown={dispatch}
43
45
  on:m-pointermove={dispatch}
44
46
  >
45
- <slot {builder} />
47
+ <slot {builder} {attrs} />
46
48
  </div>
47
49
  {:else if inTransition && $subOpen}
48
- {@const builder = $subMenu}
49
50
  <div
50
51
  in:inTransition={inTransitionConfig}
51
52
  {...builder} use:builder.action
52
53
  {...$$restProps}
54
+ {...attrs}
53
55
  on:m-focusout={dispatch}
54
56
  on:m-keydown={dispatch}
55
57
  on:m-pointermove={dispatch}
56
58
  >
57
- <slot {builder} />
59
+ <slot {builder} {attrs} />
58
60
  </div>
59
61
  {:else if outTransition && $subOpen}
60
- {@const builder = $subMenu}
61
62
  <div
62
63
  out:outTransition={outTransitionConfig}
63
64
  {...builder} use:builder.action
64
65
  {...$$restProps}
66
+ {...attrs}
65
67
  on:m-focusout={dispatch}
66
68
  on:m-keydown={dispatch}
67
69
  on:m-pointermove={dispatch}
68
70
  >
69
- <slot {builder} />
71
+ <slot {builder} {attrs} />
70
72
  </div>
71
73
  {:else if $subOpen}
72
- {@const builder = $subMenu}
73
74
  <div
74
75
  {...builder} use:builder.action
75
76
  {...$$restProps}
77
+ {...attrs}
76
78
  on:m-focusout={dispatch}
77
79
  on:m-keydown={dispatch}
78
80
  on:m-pointermove={dispatch}
79
81
  >
80
- <slot {builder} />
82
+ <slot {builder} {attrs} />
81
83
  </div>
82
84
  {/if}
@@ -71,7 +71,7 @@ declare class __sveltets_Render<T extends Transition, In extends Transition, Out
71
71
  'aria-atomic'?: import("svelte/elements.js").Booleanish | null | undefined;
72
72
  'aria-autocomplete'?: "list" | "none" | "inline" | "both" | null | undefined;
73
73
  'aria-busy'?: import("svelte/elements.js").Booleanish | null | undefined;
74
- 'aria-checked'?: boolean | "true" | "false" | "mixed" | null | undefined;
74
+ 'aria-checked'?: boolean | "false" | "true" | "mixed" | null | undefined;
75
75
  'aria-colcount'?: number | null | undefined;
76
76
  'aria-colindex'?: number | null | undefined;
77
77
  'aria-colspan'?: number | null | undefined;
@@ -85,7 +85,7 @@ declare class __sveltets_Render<T extends Transition, In extends Transition, Out
85
85
  'aria-expanded'?: import("svelte/elements.js").Booleanish | null | undefined;
86
86
  'aria-flowto'?: string | null | undefined;
87
87
  'aria-grabbed'?: import("svelte/elements.js").Booleanish | null | undefined;
88
- 'aria-haspopup'?: import("svelte/elements.js").Booleanish | "dialog" | "grid" | "listbox" | "menu" | "tree" | null | undefined;
88
+ 'aria-haspopup'?: "dialog" | import("svelte/elements.js").Booleanish | "grid" | "listbox" | "menu" | "tree" | null | undefined;
89
89
  'aria-hidden'?: import("svelte/elements.js").Booleanish | null | undefined;
90
90
  'aria-invalid'?: import("svelte/elements.js").Booleanish | "grammar" | "spelling" | null | undefined;
91
91
  'aria-keyshortcuts'?: string | null | undefined;
@@ -100,7 +100,7 @@ declare class __sveltets_Render<T extends Transition, In extends Transition, Out
100
100
  'aria-owns'?: string | null | undefined;
101
101
  'aria-placeholder'?: string | null | undefined;
102
102
  'aria-posinset'?: number | null | undefined;
103
- 'aria-pressed'?: boolean | "true" | "false" | "mixed" | null | undefined;
103
+ 'aria-pressed'?: boolean | "false" | "true" | "mixed" | null | undefined;
104
104
  'aria-readonly'?: import("svelte/elements.js").Booleanish | null | undefined;
105
105
  'aria-relevant'?: "text" | "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text additions" | "text removals" | null | undefined;
106
106
  'aria-required'?: import("svelte/elements.js").Booleanish | null | undefined;
@@ -222,7 +222,20 @@ declare class __sveltets_Render<T extends Transition, In extends Transition, Out
222
222
  events(): SubContentEvents;
223
223
  slots(): {
224
224
  default: {
225
- builder: any;
225
+ builder: {
226
+ readonly role: "menu";
227
+ readonly hidden: true | undefined;
228
+ readonly style: string;
229
+ readonly id: string;
230
+ readonly 'aria-labelledby': string;
231
+ readonly 'data-state': "open" | "closed";
232
+ readonly tabindex: -1;
233
+ } & {
234
+ [x: `data-melt-${string}`]: "";
235
+ } & {
236
+ action: (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown" | "focusout" | "pointermove">;
237
+ };
238
+ attrs: Record<string, string>;
226
239
  };
227
240
  };
228
241
  }
@@ -1,23 +1,27 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { ctx } from "../ctx.js";
2
+ import { getSubMenuCtx, getAttrs } from "../ctx.js";
3
3
  import { disabledAttrs } from "../../../internal/helpers.js";
4
4
  import { createDispatcher } from "../../../internal/events.js";
5
5
  export let disabled = false;
6
6
  export let asChild = false;
7
7
  const {
8
8
  elements: { subTrigger }
9
- } = ctx.getSubTrigger();
9
+ } = getSubMenuCtx();
10
10
  const dispatch = createDispatcher();
11
+ $:
12
+ builder = $subTrigger;
13
+ $:
14
+ attrs = { ...getAttrs("sub-trigger"), ...disabledAttrs(disabled) };
11
15
  </script>
12
16
 
13
17
  <!-- svelte-ignore a11y-no-static-element-interactions / applied by melt store -->
14
18
  {#if asChild}
15
- <slot builder={$subTrigger} />
19
+ <slot {builder} {attrs} />
16
20
  {:else}
17
- {@const builder = $subTrigger}
18
21
  <div
19
22
  {...builder} use:builder.action
20
23
  {...$$restProps}
24
+ {...attrs}
21
25
  on:m-click={dispatch}
22
26
  on:m-focusin={dispatch}
23
27
  on:m-focusout={dispatch}
@@ -25,8 +29,7 @@ const dispatch = createDispatcher();
25
29
  on:m-pointerleave={dispatch}
26
30
  on:m-pointermove={dispatch}
27
31
  on:m-keydown={dispatch}
28
- {...disabledAttrs(disabled)}
29
32
  >
30
- <slot {builder} />
33
+ <slot {builder} {attrs} />
31
34
  </div>
32
35
  {/if}
@@ -65,7 +65,7 @@ declare const __propDef: {
65
65
  'aria-atomic'?: import("svelte/elements.js").Booleanish | null | undefined;
66
66
  'aria-autocomplete'?: "list" | "none" | "inline" | "both" | null | undefined;
67
67
  'aria-busy'?: import("svelte/elements.js").Booleanish | null | undefined;
68
- 'aria-checked'?: boolean | "true" | "false" | "mixed" | null | undefined;
68
+ 'aria-checked'?: boolean | "false" | "true" | "mixed" | null | undefined;
69
69
  'aria-colcount'?: number | null | undefined;
70
70
  'aria-colindex'?: number | null | undefined;
71
71
  'aria-colspan'?: number | null | undefined;
@@ -79,7 +79,7 @@ declare const __propDef: {
79
79
  'aria-expanded'?: import("svelte/elements.js").Booleanish | null | undefined;
80
80
  'aria-flowto'?: string | null | undefined;
81
81
  'aria-grabbed'?: import("svelte/elements.js").Booleanish | null | undefined;
82
- 'aria-haspopup'?: import("svelte/elements.js").Booleanish | "dialog" | "grid" | "listbox" | "menu" | "tree" | null | undefined;
82
+ 'aria-haspopup'?: "dialog" | import("svelte/elements.js").Booleanish | "grid" | "listbox" | "menu" | "tree" | null | undefined;
83
83
  'aria-hidden'?: import("svelte/elements.js").Booleanish | null | undefined;
84
84
  'aria-invalid'?: import("svelte/elements.js").Booleanish | "grammar" | "spelling" | null | undefined;
85
85
  'aria-keyshortcuts'?: string | null | undefined;
@@ -94,7 +94,7 @@ declare const __propDef: {
94
94
  'aria-owns'?: string | null | undefined;
95
95
  'aria-placeholder'?: string | null | undefined;
96
96
  'aria-posinset'?: number | null | undefined;
97
- 'aria-pressed'?: boolean | "true" | "false" | "mixed" | null | undefined;
97
+ 'aria-pressed'?: boolean | "false" | "true" | "mixed" | null | undefined;
98
98
  'aria-readonly'?: import("svelte/elements.js").Booleanish | null | undefined;
99
99
  'aria-relevant'?: "text" | "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text additions" | "text removals" | null | undefined;
100
100
  'aria-required'?: import("svelte/elements.js").Booleanish | null | undefined;
@@ -215,7 +215,27 @@ declare const __propDef: {
215
215
  };
216
216
  slots: {
217
217
  default: {
218
- builder: any;
218
+ builder: {
219
+ readonly role: "menuitem";
220
+ readonly id: string;
221
+ readonly tabindex: -1;
222
+ readonly 'aria-controls': string;
223
+ readonly 'aria-expanded': boolean;
224
+ readonly 'data-state': "open" | "closed";
225
+ readonly 'data-disabled': true | undefined;
226
+ readonly 'aria-haspopop': "menu";
227
+ } & {
228
+ [x: `data-melt-${string}`]: "";
229
+ } & {
230
+ action: (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown" | "click" | "focusin" | "focusout" | "pointerleave" | "pointermove">;
231
+ };
232
+ attrs: {
233
+ "aria-disabled": boolean;
234
+ "data-disabled": string;
235
+ } | {
236
+ "aria-disabled"?: undefined;
237
+ "data-disabled"?: undefined;
238
+ };
219
239
  };
220
240
  };
221
241
  events: SubTriggerEvents;
@@ -1,27 +1,30 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { ctx } from "../ctx.js";
2
+ import { getCtx, getAttrs } from "../ctx.js";
3
3
  import { createDispatcher } from "../../../internal/events.js";
4
4
  export let asChild = false;
5
5
  const {
6
6
  elements: { trigger }
7
- } = ctx.get();
7
+ } = getCtx();
8
8
  const dispatch = createDispatcher();
9
+ $:
10
+ builder = $trigger;
11
+ const attrs = getAttrs("trigger");
9
12
  </script>
10
13
 
11
14
  <!-- svelte-ignore a11y-no-static-element-interactions applied by melt's action/store -->
12
15
  {#if asChild}
13
- <slot builder={$trigger} />
16
+ <slot {builder} {attrs} />
14
17
  {:else}
15
- {@const builder = $trigger}
16
18
  <div
17
19
  {...builder} use:builder.action
18
20
  {...$$restProps}
21
+ {...attrs}
19
22
  on:m-contextmenu={dispatch}
20
23
  on:m-pointercancel={dispatch}
21
24
  on:m-pointerdown={dispatch}
22
25
  on:m-pointermove={dispatch}
23
26
  on:m-pointerup={dispatch}
24
27
  >
25
- <slot {builder} />
28
+ <slot {builder} {attrs} />
26
29
  </div>
27
30
  {/if}
@@ -64,7 +64,7 @@ declare const __propDef: {
64
64
  'aria-atomic'?: import("svelte/elements.js").Booleanish | null | undefined;
65
65
  'aria-autocomplete'?: "list" | "none" | "inline" | "both" | null | undefined;
66
66
  'aria-busy'?: import("svelte/elements.js").Booleanish | null | undefined;
67
- 'aria-checked'?: boolean | "true" | "false" | "mixed" | null | undefined;
67
+ 'aria-checked'?: boolean | "false" | "true" | "mixed" | null | undefined;
68
68
  'aria-colcount'?: number | null | undefined;
69
69
  'aria-colindex'?: number | null | undefined;
70
70
  'aria-colspan'?: number | null | undefined;
@@ -78,7 +78,7 @@ declare const __propDef: {
78
78
  'aria-expanded'?: import("svelte/elements.js").Booleanish | null | undefined;
79
79
  'aria-flowto'?: string | null | undefined;
80
80
  'aria-grabbed'?: import("svelte/elements.js").Booleanish | null | undefined;
81
- 'aria-haspopup'?: import("svelte/elements.js").Booleanish | "dialog" | "grid" | "listbox" | "menu" | "tree" | null | undefined;
81
+ 'aria-haspopup'?: "dialog" | import("svelte/elements.js").Booleanish | "grid" | "listbox" | "menu" | "tree" | null | undefined;
82
82
  'aria-hidden'?: import("svelte/elements.js").Booleanish | null | undefined;
83
83
  'aria-invalid'?: import("svelte/elements.js").Booleanish | "grammar" | "spelling" | null | undefined;
84
84
  'aria-keyshortcuts'?: string | null | undefined;
@@ -93,7 +93,7 @@ declare const __propDef: {
93
93
  'aria-owns'?: string | null | undefined;
94
94
  'aria-placeholder'?: string | null | undefined;
95
95
  'aria-posinset'?: number | null | undefined;
96
- 'aria-pressed'?: boolean | "true" | "false" | "mixed" | null | undefined;
96
+ 'aria-pressed'?: boolean | "false" | "true" | "mixed" | null | undefined;
97
97
  'aria-readonly'?: import("svelte/elements.js").Booleanish | null | undefined;
98
98
  'aria-relevant'?: "text" | "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text additions" | "text removals" | null | undefined;
99
99
  'aria-required'?: import("svelte/elements.js").Booleanish | null | undefined;
@@ -214,7 +214,18 @@ declare const __propDef: {
214
214
  };
215
215
  slots: {
216
216
  default: {
217
- builder: any;
217
+ builder: {
218
+ readonly 'aria-controls': string;
219
+ readonly 'aria-expanded': boolean;
220
+ readonly 'data-state': "open" | "closed";
221
+ readonly id: string;
222
+ readonly style: string;
223
+ } & {
224
+ [x: `data-melt-${string}`]: "";
225
+ } & {
226
+ action: (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"contextmenu" | "pointercancel" | "pointerdown" | "pointermove" | "pointerup">;
227
+ };
228
+ attrs: Record<string, string>;
218
229
  };
219
230
  };
220
231
  events: TriggerEvents;
@@ -1,24 +1,8 @@
1
1
  /// <reference types="svelte" />
2
2
  import { type ContextMenu as ContextMenuReturn, type ContextMenuRadioGroup as ContextRadioGroupReturn, type ContextMenuSubmenu as ContextSubmenuReturn, type CreateContextMenuCheckboxItemProps as ContextCheckboxItemProps, type CreateContextMenuProps, type CreateContextMenuRadioGroupProps, type CreateContextSubmenuProps } from "@melt-ui/svelte";
3
3
  import type { Readable } from "svelte/store";
4
- export declare const ctx: {
5
- get: typeof get;
6
- set: typeof set;
7
- setSub: typeof setSub;
8
- getSub: typeof getSub;
9
- getContent: typeof getContent;
10
- setRadioGroup: typeof setRadioGroup;
11
- setRadioItem: typeof setRadioItem;
12
- getSubTrigger: typeof getSubTrigger;
13
- getSubContent: typeof getSubContent;
14
- setCheckboxItem: typeof setCheckboxItem;
15
- getCheckboxIndicator: typeof getCheckboxIndicator;
16
- getRadioIndicator: typeof getRadioIndicator;
17
- setGroup: typeof setGroup;
18
- getGroupLabel: typeof getGroupLabel;
19
- setArrow: typeof setArrow;
20
- };
21
- declare function set(props: CreateContextMenuProps): {
4
+ export declare const getAttrs: (part: "arrow" | "label" | "radio-group" | "separator" | "content" | "item" | "trigger" | "group" | "checkbox-indicator" | "checkbox-item" | "radio-item" | "sub-content" | "sub-trigger") => Record<string, string>;
5
+ export declare function setCtx(props: CreateContextMenuProps): {
22
6
  updateOption: <K extends string, V extends unknown>(key: K, value: V | undefined) => void;
23
7
  elements: {
24
8
  menu: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[Readable<boolean>, import("svelte/store").Writable<string | HTMLElement | null | undefined>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown">, ([$isVisible, $portal]: [boolean, string | HTMLElement | null | undefined]) => {
@@ -133,7 +117,7 @@ declare function set(props: CreateContextMenuProps): {
133
117
  readonly role: "menuitemcheckbox";
134
118
  readonly tabindex: -1;
135
119
  readonly 'data-orientation': "vertical";
136
- readonly 'aria-checked': "true" | "false" | "mixed";
120
+ readonly 'aria-checked': "false" | "true" | "mixed";
137
121
  readonly 'data-disabled': true | undefined;
138
122
  readonly 'data-state': "checked" | "indeterminate" | "unchecked";
139
123
  }, string>;
@@ -201,8 +185,8 @@ declare function set(props: CreateContextMenuProps): {
201
185
  disableFocusFirstItem: import("svelte/store").Writable<boolean>;
202
186
  };
203
187
  };
204
- declare function get(): ContextMenuReturn;
205
- declare function setSub(props: CreateContextSubmenuProps): {
188
+ export declare function getCtx(): ContextMenuReturn;
189
+ export declare function setSubMenuCtx(props: CreateContextSubmenuProps): {
206
190
  updateOption: <K extends string, V extends unknown>(key: K, value: V | undefined) => void;
207
191
  ids: {
208
192
  menu: string;
@@ -253,8 +237,8 @@ declare function setSub(props: CreateContextSubmenuProps): {
253
237
  typeahead: import("svelte/store").Writable<true>;
254
238
  };
255
239
  };
256
- declare function getSub(): ContextSubmenuReturn;
257
- declare function setRadioGroup(props: CreateContextMenuRadioGroupProps): {
240
+ export declare function getSubMenuCtx(): ContextSubmenuReturn;
241
+ export declare function setRadioGroupCtx(props: CreateContextMenuRadioGroupProps): {
258
242
  elements: {
259
243
  radioGroup: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Stores | undefined, import("svelte/action").Action<any, any, Record<never, any>>, () => {
260
244
  role: string;
@@ -285,15 +269,14 @@ declare function setRadioGroup(props: CreateContextMenuRadioGroupProps): {
285
269
  isChecked: Readable<(itemValue: string) => boolean>;
286
270
  };
287
271
  };
288
- declare function setRadioItem(value: string): ContextRadioGroupReturn;
289
- declare function getRadioIndicator(): {
272
+ export declare function setRadioItem(value: string): ContextRadioGroupReturn;
273
+ export declare function getRadioIndicator(): {
290
274
  isChecked: Readable<(itemValue: string) => boolean>;
291
275
  value: string;
292
276
  };
293
- declare function getSubTrigger(): ContextSubmenuReturn;
294
- declare function getContent(sideoffset?: number): ContextMenuReturn;
295
- declare function getSubContent(sideOffset?: number): ContextSubmenuReturn;
296
- declare function setCheckboxItem(props: ContextCheckboxItemProps): {
277
+ export declare function getContent(sideoffset?: number): ContextMenuReturn;
278
+ export declare function getSubContent(sideOffset?: number): ContextSubmenuReturn;
279
+ export declare function setCheckboxItem(props: ContextCheckboxItemProps): {
297
280
  updateOption: <K extends string, V extends unknown>(key: K, value: V | undefined) => void;
298
281
  elements: {
299
282
  checkboxItem: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[{
@@ -304,7 +287,7 @@ declare function setCheckboxItem(props: ContextCheckboxItemProps): {
304
287
  readonly role: "menuitemcheckbox";
305
288
  readonly tabindex: -1;
306
289
  readonly 'data-orientation': "vertical";
307
- readonly 'aria-checked': "true" | "false" | "mixed";
290
+ readonly 'aria-checked': "false" | "true" | "mixed";
308
291
  readonly 'data-disabled': true | undefined;
309
292
  readonly 'data-state': "checked" | "indeterminate" | "unchecked";
310
293
  }, string>;
@@ -320,23 +303,22 @@ declare function setCheckboxItem(props: ContextCheckboxItemProps): {
320
303
  disabled: import("svelte/store").Writable<boolean>;
321
304
  };
322
305
  };
323
- declare function getCheckboxIndicator(): {
306
+ export declare function getCheckboxIndicator(): {
324
307
  update: (updater: import("svelte/store").Updater<boolean | "indeterminate">, sideEffect?: ((newValue: boolean | "indeterminate") => void) | undefined) => void;
325
308
  set: (this: void, value: boolean | "indeterminate") => void;
326
309
  subscribe(this: void, run: import("svelte/store").Subscriber<boolean | "indeterminate">, invalidate?: import("svelte/store").Invalidator<boolean | "indeterminate"> | undefined): import("svelte/store").Unsubscriber;
327
310
  };
328
- declare function setGroup(): {
311
+ export declare function setGroup(): {
329
312
  group: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Stores | undefined, import("svelte/action").Action<any, any, Record<never, any>>, () => (groupId: string) => {
330
313
  role: string;
331
314
  'aria-labelledby': string;
332
315
  }, string>;
333
316
  id: string;
334
317
  };
335
- declare function getGroupLabel(): {
318
+ export declare function getGroupLabel(): {
336
319
  groupLabel: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Stores | undefined, import("svelte/action").Action<any, any, Record<never, any>>, () => (groupId: string) => {
337
320
  id: string;
338
321
  }, string>;
339
322
  id: string;
340
323
  };
341
- declare function setArrow(size?: number): ContextMenuReturn;
342
- export {};
324
+ export declare function setArrow(size?: number): ContextMenuReturn;
@@ -1,30 +1,29 @@
1
- import { generateId, getOptionUpdater, removeUndefined } from "../../internal/index.js";
1
+ import { createBitAttrs, generateId, getOptionUpdater, removeUndefined } from "../../internal/index.js";
2
2
  import { createContextMenu } from "@melt-ui/svelte";
3
3
  import { getContext, setContext } from "svelte";
4
- const NAME = "ContextMenu";
5
- const SUB_NAME = "ContextSubmenu";
6
- const RADIO_GROUP_NAME = "ContextRadioGroup";
7
- const CHECKBOX_ITEM_NAME = "ContextCheckboxItem";
8
- const RADIO_ITEM_NAME = "ContextRadioItem";
9
- const GROUP_NAME = "ContextGroup";
10
- export const ctx = {
11
- get,
12
- set,
13
- setSub,
14
- getSub,
15
- getContent,
16
- setRadioGroup,
17
- setRadioItem,
18
- getSubTrigger,
19
- getSubContent,
20
- setCheckboxItem,
21
- getCheckboxIndicator,
22
- getRadioIndicator,
23
- setGroup,
24
- getGroupLabel,
25
- setArrow
26
- };
27
- function set(props) {
4
+ const NAME = "context-menu";
5
+ const SUB_NAME = "context-menu-submenu";
6
+ const RADIO_GROUP_NAME = "context-menu-radiogroup";
7
+ const CHECKBOX_ITEM_NAME = "context-menu-checkboxitem";
8
+ const RADIO_ITEM_NAME = "context-menu-radioitem";
9
+ const GROUP_NAME = "context-menu-group";
10
+ const PARTS = [
11
+ "arrow",
12
+ "checkbox-indicator",
13
+ "checkbox-item",
14
+ "content",
15
+ "group",
16
+ "item",
17
+ "label",
18
+ "radio-group",
19
+ "radio-item",
20
+ "separator",
21
+ "sub-content",
22
+ "sub-trigger",
23
+ "trigger"
24
+ ];
25
+ export const getAttrs = createBitAttrs(NAME, PARTS);
26
+ export function setCtx(props) {
28
27
  const contextMenu = createContextMenu(removeUndefined(props));
29
28
  setContext(NAME, contextMenu);
30
29
  return {
@@ -32,11 +31,11 @@ function set(props) {
32
31
  updateOption: getOptionUpdater(contextMenu.options)
33
32
  };
34
33
  }
35
- function get() {
34
+ export function getCtx() {
36
35
  return getContext(NAME);
37
36
  }
38
- function setSub(props) {
39
- const { builders: { createSubmenu } } = get();
37
+ export function setSubMenuCtx(props) {
38
+ const { builders: { createSubmenu } } = getCtx();
40
39
  const sub = createSubmenu(removeUndefined(props));
41
40
  setContext(SUB_NAME, sub);
42
41
  return {
@@ -44,42 +43,42 @@ function setSub(props) {
44
43
  updateOption: getOptionUpdater(sub.options)
45
44
  };
46
45
  }
47
- function getSub() {
46
+ export function getSubMenuCtx() {
48
47
  return getContext(SUB_NAME);
49
48
  }
50
- function setRadioGroup(props) {
51
- const { builders: { createMenuRadioGroup } } = get();
49
+ export function setRadioGroupCtx(props) {
50
+ const { builders: { createMenuRadioGroup } } = getCtx();
52
51
  const radioGroup = createMenuRadioGroup(removeUndefined(props));
53
52
  setContext(RADIO_GROUP_NAME, radioGroup);
54
53
  return radioGroup;
55
54
  }
56
- function setRadioItem(value) {
57
- const radioGroup = getContext(RADIO_GROUP_NAME);
55
+ function getRadioGroupCtx() {
56
+ return getContext(RADIO_GROUP_NAME);
57
+ }
58
+ export function setRadioItem(value) {
59
+ const radioGroup = getRadioGroupCtx();
58
60
  setContext(RADIO_ITEM_NAME, {
59
61
  isChecked: radioGroup.helpers.isChecked,
60
62
  value
61
63
  });
62
64
  return radioGroup;
63
65
  }
64
- function getRadioIndicator() {
66
+ export function getRadioIndicator() {
65
67
  return getContext(RADIO_ITEM_NAME);
66
68
  }
67
- function getSubTrigger() {
68
- return getContext(SUB_NAME);
69
- }
70
- function getContent(sideoffset = 5) {
71
- const menu = get();
69
+ export function getContent(sideoffset = 5) {
70
+ const menu = getCtx();
72
71
  menu.options.positioning.update((prev) => ({ ...prev, gutter: sideoffset }));
73
72
  return menu;
74
73
  }
75
- function getSubContent(sideOffset = -1) {
76
- const submenu = getContext(SUB_NAME);
74
+ export function getSubContent(sideOffset = -1) {
75
+ const submenu = getSubMenuCtx();
77
76
  const { options: { positioning } } = submenu;
78
77
  positioning.update((prev) => ({ ...prev, gutter: sideOffset }));
79
78
  return submenu;
80
79
  }
81
- function setCheckboxItem(props) {
82
- const { builders: { createCheckboxItem } } = get();
80
+ export function setCheckboxItem(props) {
81
+ const { builders: { createCheckboxItem } } = getCtx();
83
82
  const checkboxItem = createCheckboxItem(removeUndefined(props));
84
83
  setContext(CHECKBOX_ITEM_NAME, checkboxItem.states.checked);
85
84
  return {
@@ -87,22 +86,22 @@ function setCheckboxItem(props) {
87
86
  updateOption: getOptionUpdater(checkboxItem.options)
88
87
  };
89
88
  }
90
- function getCheckboxIndicator() {
89
+ export function getCheckboxIndicator() {
91
90
  return getContext(CHECKBOX_ITEM_NAME);
92
91
  }
93
- function setGroup() {
94
- const { elements: { group } } = get();
92
+ export function setGroup() {
93
+ const { elements: { group } } = getCtx();
95
94
  const id = generateId();
96
95
  setContext(GROUP_NAME, id);
97
96
  return { group, id };
98
97
  }
99
- function getGroupLabel() {
98
+ export function getGroupLabel() {
100
99
  const id = getContext(GROUP_NAME) ?? generateId();
101
- const { elements: { groupLabel } } = get();
100
+ const { elements: { groupLabel } } = getCtx();
102
101
  return { groupLabel, id };
103
102
  }
104
- function setArrow(size = 8) {
105
- const menu = get();
103
+ export function setArrow(size = 8) {
104
+ const menu = getCtx();
106
105
  menu.options.arrowSize.set(size);
107
106
  return menu;
108
107
  }
@@ -1,6 +1,6 @@
1
1
  <script>import { onDestroy } from "svelte";
2
2
  import { writable } from "svelte/store";
3
- import { ctx } from "../ctx.js";
3
+ import { setCtx } from "../ctx.js";
4
4
  import { isBrowser } from "../../../internal/index.js";
5
5
  export let preventScroll = void 0;
6
6
  export let closeOnEscape = void 0;
@@ -17,7 +17,7 @@ let timeout = 0;
17
17
  const {
18
18
  states: { open: localOpen },
19
19
  updateOption
20
- } = ctx.set({
20
+ } = setCtx({
21
21
  closeOnEscape,
22
22
  preventScroll,
23
23
  closeOnOutsideClick,
@@ -1,18 +1,26 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { ctx } from "../ctx.js";
2
+ import { getCtx, getAttrs } from "../ctx.js";
3
3
  import { createDispatcher } from "../../../internal/events.js";
4
4
  export let asChild = false;
5
5
  const {
6
6
  elements: { close }
7
- } = ctx.get();
7
+ } = getCtx();
8
8
  const dispatch = createDispatcher();
9
+ $:
10
+ builder = $close;
11
+ const attrs = getAttrs("close");
9
12
  </script>
10
13
 
11
14
  {#if asChild}
12
- <slot builder={$close} />
15
+ <slot {builder} {attrs} />
13
16
  {:else}
14
- {@const builder = $close}
15
- <button {...builder} use:builder.action {...$$restProps} on:m-click={dispatch} on:m-keydown={dispatch}>
16
- <slot {builder} />
17
+ <button
18
+ {...builder} use:builder.action
19
+ {...$$restProps}
20
+ {...attrs}
21
+ on:m-click={dispatch}
22
+ on:m-keydown={dispatch}
23
+ >
24
+ <slot {builder} {attrs} />
17
25
  </button>
18
26
  {/if}