lithesome 0.18.0 → 0.19.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 (431) hide show
  1. package/README.md +45 -30
  2. package/dist/attachments/outside.d.ts +12 -0
  3. package/dist/attachments/outside.js +34 -0
  4. package/dist/attachments/portal.d.ts +7 -0
  5. package/dist/attachments/portal.js +27 -0
  6. package/dist/attachments/trap.d.ts +6 -0
  7. package/dist/attachments/trap.js +20 -0
  8. package/dist/components/accordion/Accordion.svelte +33 -0
  9. package/dist/components/accordion/Accordion.svelte.d.ts +9 -0
  10. package/dist/components/accordion/AccordionButton.svelte +20 -0
  11. package/dist/components/accordion/AccordionButton.svelte.d.ts +15 -0
  12. package/dist/components/accordion/AccordionContent.svelte +20 -0
  13. package/dist/components/accordion/AccordionContent.svelte.d.ts +10 -0
  14. package/dist/components/accordion/AccordionHeading.svelte +26 -0
  15. package/dist/components/accordion/AccordionHeading.svelte.d.ts +12 -0
  16. package/dist/components/accordion/AccordionItem.svelte +28 -0
  17. package/dist/components/accordion/AccordionItem.svelte.d.ts +13 -0
  18. package/dist/components/{Accordion → accordion}/index.d.ts +1 -2
  19. package/dist/components/accordion/state.svelte.d.ts +99 -0
  20. package/dist/components/accordion/state.svelte.js +156 -0
  21. package/dist/components/hovercard/Hovercard.svelte +33 -0
  22. package/dist/components/{Hovercard → hovercard}/Hovercard.svelte.d.ts +4 -2
  23. package/dist/components/hovercard/HovercardArrow.svelte +23 -0
  24. package/dist/components/hovercard/HovercardArrow.svelte.d.ts +7 -0
  25. package/dist/components/hovercard/HovercardContent.svelte +23 -0
  26. package/dist/components/hovercard/HovercardContent.svelte.d.ts +9 -0
  27. package/dist/components/hovercard/HovercardTrigger.svelte +23 -0
  28. package/dist/components/hovercard/HovercardTrigger.svelte.d.ts +8 -0
  29. package/dist/components/{Hovercard/index.d.ts → hovercard/index.js} +0 -1
  30. package/dist/components/hovercard/state.svelte.d.ts +74 -0
  31. package/dist/components/hovercard/state.svelte.js +149 -0
  32. package/dist/components/menu/Menu.svelte +35 -0
  33. package/dist/components/menu/Menu.svelte.d.ts +6 -0
  34. package/dist/components/menu/MenuArrow.svelte +17 -0
  35. package/dist/components/{Menu → menu}/MenuArrow.svelte.d.ts +5 -2
  36. package/dist/components/menu/MenuContent.svelte +23 -0
  37. package/dist/components/menu/MenuContent.svelte.d.ts +9 -0
  38. package/dist/components/menu/MenuItem.svelte +28 -0
  39. package/dist/components/menu/MenuItem.svelte.d.ts +13 -0
  40. package/dist/components/menu/MenuSub.svelte +37 -0
  41. package/dist/components/menu/MenuSub.svelte.d.ts +6 -0
  42. package/dist/components/menu/MenuSubContent.svelte +23 -0
  43. package/dist/components/menu/MenuSubContent.svelte.d.ts +9 -0
  44. package/dist/components/menu/MenuSubTrigger.svelte +23 -0
  45. package/dist/components/menu/MenuSubTrigger.svelte.d.ts +17 -0
  46. package/dist/components/menu/MenuTrigger.svelte +23 -0
  47. package/dist/components/menu/MenuTrigger.svelte.d.ts +10 -0
  48. package/dist/components/{Menu → menu}/index.d.ts +4 -2
  49. package/dist/components/{Menu → menu}/index.js +4 -1
  50. package/dist/components/menu/state.svelte.d.ts +161 -0
  51. package/dist/components/menu/state.svelte.js +387 -0
  52. package/dist/components/modal/Modal.svelte +32 -0
  53. package/dist/components/modal/Modal.svelte.d.ts +6 -0
  54. package/dist/components/modal/ModalBackdrop.svelte +24 -0
  55. package/dist/components/modal/ModalBackdrop.svelte.d.ts +10 -0
  56. package/dist/components/modal/ModalContent.svelte +24 -0
  57. package/dist/components/modal/ModalContent.svelte.d.ts +14 -0
  58. package/dist/components/modal/ModalDescription.svelte +24 -0
  59. package/dist/components/modal/ModalDescription.svelte.d.ts +7 -0
  60. package/dist/components/modal/ModalTitle.svelte +24 -0
  61. package/dist/components/{Modal → modal}/ModalTitle.svelte.d.ts +5 -2
  62. package/dist/components/modal/ModalTrigger.svelte +24 -0
  63. package/dist/components/modal/ModalTrigger.svelte.d.ts +12 -0
  64. package/dist/components/{Modal → modal}/index.d.ts +2 -2
  65. package/dist/components/{Modal → modal}/index.js +2 -1
  66. package/dist/components/modal/state.svelte.d.ts +96 -0
  67. package/dist/components/modal/state.svelte.js +184 -0
  68. package/dist/components/pin/Pin.svelte +44 -0
  69. package/dist/components/pin/Pin.svelte.d.ts +11 -0
  70. package/dist/components/pin/PinInput.svelte +17 -0
  71. package/dist/components/{Pin → pin}/PinInput.svelte.d.ts +5 -2
  72. package/dist/components/{Pin → pin}/index.d.ts +0 -2
  73. package/dist/components/{Pin → pin}/index.js +0 -1
  74. package/dist/components/pin/state.svelte.d.ts +50 -0
  75. package/dist/components/pin/state.svelte.js +166 -0
  76. package/dist/components/radiogroup/RadioGroup.svelte +35 -0
  77. package/dist/components/radiogroup/RadioGroup.svelte.d.ts +10 -0
  78. package/dist/components/radiogroup/RadioGroupItem.svelte +28 -0
  79. package/dist/components/radiogroup/RadioGroupItem.svelte.d.ts +17 -0
  80. package/dist/components/{RadioGroup/index.d.ts → radiogroup/index.js} +0 -1
  81. package/dist/components/radiogroup/state.svelte.d.ts +55 -0
  82. package/dist/components/radiogroup/state.svelte.js +103 -0
  83. package/dist/components/select/Select.svelte +47 -0
  84. package/dist/components/select/Select.svelte.d.ts +6 -0
  85. package/dist/components/select/SelectArrow.svelte +23 -0
  86. package/dist/components/{Select → select}/SelectArrow.svelte.d.ts +5 -2
  87. package/dist/components/select/SelectContent.svelte +23 -0
  88. package/dist/components/select/SelectContent.svelte.d.ts +9 -0
  89. package/dist/components/select/SelectOption.svelte +29 -0
  90. package/dist/components/select/SelectOption.svelte.d.ts +19 -0
  91. package/dist/components/select/SelectTrigger.svelte +23 -0
  92. package/dist/components/select/SelectTrigger.svelte.d.ts +14 -0
  93. package/dist/components/select/SelectValue.svelte +25 -0
  94. package/dist/components/select/SelectValue.svelte.d.ts +11 -0
  95. package/dist/components/{Select → select}/index.d.ts +0 -2
  96. package/dist/components/{Select → select}/index.js +0 -1
  97. package/dist/components/select/state.svelte.d.ts +194 -0
  98. package/dist/components/select/state.svelte.js +386 -0
  99. package/dist/components/slider/Slider.svelte +45 -0
  100. package/dist/components/slider/Slider.svelte.d.ts +7 -0
  101. package/dist/components/slider/SliderRange.svelte +17 -0
  102. package/dist/components/{Slider → slider}/SliderRange.svelte.d.ts +5 -2
  103. package/dist/components/slider/SliderThumb.svelte +17 -0
  104. package/dist/components/{Slider → slider}/SliderThumb.svelte.d.ts +5 -2
  105. package/dist/components/slider/SliderValue.svelte +17 -0
  106. package/dist/components/{Slider → slider}/SliderValue.svelte.d.ts +5 -2
  107. package/dist/components/{Slider/index.d.ts → slider/index.js} +0 -1
  108. package/dist/components/slider/state.svelte.d.ts +105 -0
  109. package/dist/components/slider/state.svelte.js +214 -0
  110. package/dist/components/tabs/Tabs.svelte +31 -0
  111. package/dist/components/tabs/Tabs.svelte.d.ts +11 -0
  112. package/dist/components/tabs/TabsButton.svelte +30 -0
  113. package/dist/components/tabs/TabsButton.svelte.d.ts +14 -0
  114. package/dist/components/tabs/TabsContent.svelte +25 -0
  115. package/dist/components/tabs/TabsContent.svelte.d.ts +14 -0
  116. package/dist/components/tabs/TabsList.svelte +23 -0
  117. package/dist/components/tabs/TabsList.svelte.d.ts +12 -0
  118. package/dist/components/{Tabs/index.d.ts → tabs/index.js} +0 -1
  119. package/dist/components/tabs/state.svelte.d.ts +91 -0
  120. package/dist/components/tabs/state.svelte.js +151 -0
  121. package/dist/components/tabs/types.d.ts +14 -0
  122. package/dist/components/tags/Tags.svelte +37 -0
  123. package/dist/components/tags/Tags.svelte.d.ts +11 -0
  124. package/dist/components/tags/TagsDelete.svelte +26 -0
  125. package/dist/components/tags/TagsDelete.svelte.d.ts +9 -0
  126. package/dist/components/tags/TagsInput.svelte +17 -0
  127. package/dist/components/{Tags → tags}/TagsInput.svelte.d.ts +4 -2
  128. package/dist/components/tags/TagsItem.svelte +26 -0
  129. package/dist/components/tags/TagsItem.svelte.d.ts +10 -0
  130. package/dist/components/tags/state.svelte.d.ts +77 -0
  131. package/dist/components/tags/state.svelte.js +199 -0
  132. package/dist/components/tooltip/Tooltip.svelte +38 -0
  133. package/dist/components/tooltip/Tooltip.svelte.d.ts +6 -0
  134. package/dist/components/tooltip/TooltipArrow.svelte +23 -0
  135. package/dist/components/{Tooltip → tooltip}/TooltipArrow.svelte.d.ts +5 -2
  136. package/dist/components/tooltip/TooltipContent.svelte +23 -0
  137. package/dist/components/tooltip/TooltipContent.svelte.d.ts +9 -0
  138. package/dist/components/tooltip/TooltipTrigger.svelte +23 -0
  139. package/dist/components/tooltip/TooltipTrigger.svelte.d.ts +8 -0
  140. package/dist/components/{Tooltip/index.d.ts → tooltip/index.js} +0 -1
  141. package/dist/components/tooltip/state.svelte.d.ts +74 -0
  142. package/dist/components/tooltip/state.svelte.js +135 -0
  143. package/dist/components/tooltip/types.d.ts +14 -0
  144. package/dist/index.d.ts +14 -23
  145. package/dist/index.js +14 -22
  146. package/dist/internals/attachment.d.ts +4 -0
  147. package/dist/internals/attachment.js +6 -0
  148. package/dist/internals/components/Element.svelte +77 -0
  149. package/dist/internals/components/Element.svelte.d.ts +16 -0
  150. package/dist/{internal/helpers → internals}/context.svelte.d.ts +9 -10
  151. package/dist/{internal/helpers → internals}/context.svelte.js +38 -31
  152. package/dist/internals/element.d.ts +24 -0
  153. package/dist/internals/element.js +40 -0
  154. package/dist/internals/floating.svelte.d.ts +3 -0
  155. package/dist/internals/floating.svelte.js +66 -0
  156. package/dist/internals/index.d.ts +11 -0
  157. package/dist/internals/index.js +10 -0
  158. package/dist/internals/is.d.ts +14 -0
  159. package/dist/internals/is.js +14 -0
  160. package/dist/{internal/helpers → internals}/keyboard.d.ts +2 -0
  161. package/dist/{internal/helpers → internals}/keyboard.js +2 -0
  162. package/dist/internals/log.d.ts +3 -0
  163. package/dist/{internal/helpers → internals}/log.js +1 -1
  164. package/dist/internals/state.svelte.d.ts +7 -0
  165. package/dist/internals/state.svelte.js +8 -0
  166. package/dist/internals/types.d.ts +88 -0
  167. package/dist/{internal/helpers → internals}/utils.svelte.d.ts +38 -26
  168. package/dist/{internal/helpers → internals}/utils.svelte.js +93 -72
  169. package/dist/types/components/accordion.d.ts +16 -0
  170. package/dist/types/components/hovercard.d.ts +14 -0
  171. package/dist/types/components/menu.d.ts +29 -0
  172. package/dist/types/components/modal.d.ts +17 -0
  173. package/dist/types/components/pin.d.ts +14 -0
  174. package/dist/types/components/radiogroup.d.ts +10 -0
  175. package/dist/types/components/select.d.ts +24 -0
  176. package/dist/types/components/slider.d.ts +16 -0
  177. package/dist/types/components/tabs.d.ts +14 -0
  178. package/dist/types/components/tags.d.ts +16 -0
  179. package/dist/types/components/tooltip.d.ts +14 -0
  180. package/dist/types/index.d.ts +11 -0
  181. package/package.json +72 -77
  182. package/LICENSE.md +0 -21
  183. package/dist/actions/outside.d.ts +0 -19
  184. package/dist/actions/outside.js +0 -25
  185. package/dist/actions/portal.d.ts +0 -9
  186. package/dist/actions/portal.js +0 -28
  187. package/dist/actions/trap.d.ts +0 -7
  188. package/dist/actions/trap.js +0 -17
  189. package/dist/components/Accordion/Accordion.svelte +0 -31
  190. package/dist/components/Accordion/Accordion.svelte.d.ts +0 -4
  191. package/dist/components/Accordion/AccordionButton.svelte +0 -22
  192. package/dist/components/Accordion/AccordionButton.svelte.d.ts +0 -4
  193. package/dist/components/Accordion/AccordionContent.svelte +0 -27
  194. package/dist/components/Accordion/AccordionContent.svelte.d.ts +0 -4
  195. package/dist/components/Accordion/AccordionHeading.svelte +0 -13
  196. package/dist/components/Accordion/AccordionHeading.svelte.d.ts +0 -4
  197. package/dist/components/Accordion/AccordionItem.svelte +0 -25
  198. package/dist/components/Accordion/AccordionItem.svelte.d.ts +0 -4
  199. package/dist/components/Accordion/main.svelte.d.ts +0 -95
  200. package/dist/components/Accordion/main.svelte.js +0 -148
  201. package/dist/components/Accordion/types.d.ts +0 -83
  202. package/dist/components/Checkbox/Checkbox.svelte +0 -40
  203. package/dist/components/Checkbox/Checkbox.svelte.d.ts +0 -4
  204. package/dist/components/Checkbox/index.d.ts +0 -2
  205. package/dist/components/Checkbox/index.js +0 -1
  206. package/dist/components/Checkbox/types.d.ts +0 -25
  207. package/dist/components/Collapsible/Collapsible.svelte +0 -31
  208. package/dist/components/Collapsible/Collapsible.svelte.d.ts +0 -4
  209. package/dist/components/Collapsible/CollapsibleButton.svelte +0 -22
  210. package/dist/components/Collapsible/CollapsibleButton.svelte.d.ts +0 -4
  211. package/dist/components/Collapsible/CollapsibleContent.svelte +0 -34
  212. package/dist/components/Collapsible/CollapsibleContent.svelte.d.ts +0 -4
  213. package/dist/components/Collapsible/index.d.ts +0 -3
  214. package/dist/components/Collapsible/index.js +0 -3
  215. package/dist/components/Collapsible/main.svelte.d.ts +0 -46
  216. package/dist/components/Collapsible/main.svelte.js +0 -74
  217. package/dist/components/Collapsible/types.d.ts +0 -36
  218. package/dist/components/Combobox/Combobox.svelte +0 -46
  219. package/dist/components/Combobox/Combobox.svelte.d.ts +0 -4
  220. package/dist/components/Combobox/ComboboxArrow.svelte +0 -11
  221. package/dist/components/Combobox/ComboboxArrow.svelte.d.ts +0 -4
  222. package/dist/components/Combobox/ComboboxContent.svelte +0 -40
  223. package/dist/components/Combobox/ComboboxContent.svelte.d.ts +0 -4
  224. package/dist/components/Combobox/ComboboxInput.svelte +0 -23
  225. package/dist/components/Combobox/ComboboxInput.svelte.d.ts +0 -4
  226. package/dist/components/Combobox/ComboboxOption.svelte +0 -42
  227. package/dist/components/Combobox/ComboboxOption.svelte.d.ts +0 -4
  228. package/dist/components/Combobox/index.d.ts +0 -6
  229. package/dist/components/Combobox/index.js +0 -5
  230. package/dist/components/Combobox/main.svelte.d.ts +0 -115
  231. package/dist/components/Combobox/main.svelte.js +0 -293
  232. package/dist/components/Combobox/types.d.ts +0 -106
  233. package/dist/components/Hovercard/Hovercard.svelte +0 -17
  234. package/dist/components/Hovercard/HovercardArrow.svelte +0 -11
  235. package/dist/components/Hovercard/HovercardArrow.svelte.d.ts +0 -4
  236. package/dist/components/Hovercard/HovercardContent.svelte +0 -39
  237. package/dist/components/Hovercard/HovercardContent.svelte.d.ts +0 -4
  238. package/dist/components/Hovercard/HovercardTrigger.svelte +0 -17
  239. package/dist/components/Hovercard/HovercardTrigger.svelte.d.ts +0 -4
  240. package/dist/components/Hovercard/main.svelte.d.ts +0 -55
  241. package/dist/components/Hovercard/main.svelte.js +0 -133
  242. package/dist/components/Hovercard/types.d.ts +0 -25
  243. package/dist/components/Menu/Menu.svelte +0 -16
  244. package/dist/components/Menu/Menu.svelte.d.ts +0 -4
  245. package/dist/components/Menu/MenuArrow.svelte +0 -11
  246. package/dist/components/Menu/MenuContent.svelte +0 -40
  247. package/dist/components/Menu/MenuContent.svelte.d.ts +0 -4
  248. package/dist/components/Menu/MenuItem.svelte +0 -39
  249. package/dist/components/Menu/MenuItem.svelte.d.ts +0 -4
  250. package/dist/components/Menu/MenuTrigger.svelte +0 -17
  251. package/dist/components/Menu/MenuTrigger.svelte.d.ts +0 -4
  252. package/dist/components/Menu/main.svelte.d.ts +0 -70
  253. package/dist/components/Menu/main.svelte.js +0 -205
  254. package/dist/components/Menu/types.d.ts +0 -81
  255. package/dist/components/Modal/Modal.svelte +0 -17
  256. package/dist/components/Modal/Modal.svelte.d.ts +0 -4
  257. package/dist/components/Modal/ModalContent.svelte +0 -41
  258. package/dist/components/Modal/ModalContent.svelte.d.ts +0 -4
  259. package/dist/components/Modal/ModalDescription.svelte +0 -13
  260. package/dist/components/Modal/ModalDescription.svelte.d.ts +0 -4
  261. package/dist/components/Modal/ModalOverlay.svelte +0 -35
  262. package/dist/components/Modal/ModalOverlay.svelte.d.ts +0 -4
  263. package/dist/components/Modal/ModalTitle.svelte +0 -13
  264. package/dist/components/Modal/main.svelte.d.ts +0 -58
  265. package/dist/components/Modal/main.svelte.js +0 -102
  266. package/dist/components/Modal/types.d.ts +0 -28
  267. package/dist/components/Pin/Pin.svelte +0 -34
  268. package/dist/components/Pin/Pin.svelte.d.ts +0 -4
  269. package/dist/components/Pin/PinInput.svelte +0 -27
  270. package/dist/components/Pin/PinValue.svelte +0 -20
  271. package/dist/components/Pin/PinValue.svelte.d.ts +0 -4
  272. package/dist/components/Pin/main.svelte.d.ts +0 -65
  273. package/dist/components/Pin/main.svelte.js +0 -181
  274. package/dist/components/Pin/types.d.ts +0 -81
  275. package/dist/components/Popover/Popover.svelte +0 -16
  276. package/dist/components/Popover/Popover.svelte.d.ts +0 -4
  277. package/dist/components/Popover/PopoverArrow.svelte +0 -11
  278. package/dist/components/Popover/PopoverArrow.svelte.d.ts +0 -4
  279. package/dist/components/Popover/PopoverContent.svelte +0 -51
  280. package/dist/components/Popover/PopoverContent.svelte.d.ts +0 -4
  281. package/dist/components/Popover/PopoverTrigger.svelte +0 -17
  282. package/dist/components/Popover/PopoverTrigger.svelte.d.ts +0 -4
  283. package/dist/components/Popover/index.d.ts +0 -5
  284. package/dist/components/Popover/index.js +0 -4
  285. package/dist/components/Popover/main.svelte.d.ts +0 -41
  286. package/dist/components/Popover/main.svelte.js +0 -125
  287. package/dist/components/Popover/types.d.ts +0 -19
  288. package/dist/components/Portal/Portal.svelte +0 -18
  289. package/dist/components/Portal/Portal.svelte.d.ts +0 -4
  290. package/dist/components/Portal/index.d.ts +0 -2
  291. package/dist/components/Portal/index.js +0 -1
  292. package/dist/components/Portal/types.d.ts +0 -9
  293. package/dist/components/RadioGroup/RadioGroup.svelte +0 -31
  294. package/dist/components/RadioGroup/RadioGroup.svelte.d.ts +0 -4
  295. package/dist/components/RadioGroup/RadioGroupItem.svelte +0 -32
  296. package/dist/components/RadioGroup/RadioGroupItem.svelte.d.ts +0 -4
  297. package/dist/components/RadioGroup/main.svelte.d.ts +0 -63
  298. package/dist/components/RadioGroup/main.svelte.js +0 -124
  299. package/dist/components/RadioGroup/types.d.ts +0 -46
  300. package/dist/components/Select/Select.svelte +0 -25
  301. package/dist/components/Select/Select.svelte.d.ts +0 -4
  302. package/dist/components/Select/SelectArrow.svelte +0 -11
  303. package/dist/components/Select/SelectContent.svelte +0 -39
  304. package/dist/components/Select/SelectContent.svelte.d.ts +0 -4
  305. package/dist/components/Select/SelectOption.svelte +0 -34
  306. package/dist/components/Select/SelectOption.svelte.d.ts +0 -4
  307. package/dist/components/Select/SelectTrigger.svelte +0 -17
  308. package/dist/components/Select/SelectTrigger.svelte.d.ts +0 -4
  309. package/dist/components/Select/SelectValue.svelte +0 -19
  310. package/dist/components/Select/SelectValue.svelte.d.ts +0 -4
  311. package/dist/components/Select/main.svelte.d.ts +0 -111
  312. package/dist/components/Select/main.svelte.js +0 -306
  313. package/dist/components/Select/types.d.ts +0 -72
  314. package/dist/components/Slider/Slider.svelte +0 -49
  315. package/dist/components/Slider/Slider.svelte.d.ts +0 -4
  316. package/dist/components/Slider/SliderRange.svelte +0 -12
  317. package/dist/components/Slider/SliderThumb.svelte +0 -15
  318. package/dist/components/Slider/SliderValue.svelte +0 -19
  319. package/dist/components/Slider/main.svelte.d.ts +0 -101
  320. package/dist/components/Slider/main.svelte.js +0 -240
  321. package/dist/components/Slider/types.d.ts +0 -66
  322. package/dist/components/Switch/Switch.svelte +0 -41
  323. package/dist/components/Switch/Switch.svelte.d.ts +0 -4
  324. package/dist/components/Switch/index.d.ts +0 -2
  325. package/dist/components/Switch/index.js +0 -1
  326. package/dist/components/Switch/types.d.ts +0 -26
  327. package/dist/components/Tabs/Tabs.svelte +0 -27
  328. package/dist/components/Tabs/Tabs.svelte.d.ts +0 -4
  329. package/dist/components/Tabs/TabsButton.svelte +0 -32
  330. package/dist/components/Tabs/TabsButton.svelte.d.ts +0 -4
  331. package/dist/components/Tabs/TabsContent.svelte +0 -15
  332. package/dist/components/Tabs/TabsContent.svelte.d.ts +0 -4
  333. package/dist/components/Tabs/TabsList.svelte +0 -13
  334. package/dist/components/Tabs/TabsList.svelte.d.ts +0 -4
  335. package/dist/components/Tabs/main.svelte.d.ts +0 -84
  336. package/dist/components/Tabs/main.svelte.js +0 -146
  337. package/dist/components/Tabs/types.d.ts +0 -71
  338. package/dist/components/Tags/Tags.svelte +0 -41
  339. package/dist/components/Tags/Tags.svelte.d.ts +0 -4
  340. package/dist/components/Tags/TagsDelete.svelte +0 -20
  341. package/dist/components/Tags/TagsDelete.svelte.d.ts +0 -4
  342. package/dist/components/Tags/TagsInput.svelte +0 -18
  343. package/dist/components/Tags/TagsItem.svelte +0 -15
  344. package/dist/components/Tags/TagsItem.svelte.d.ts +0 -4
  345. package/dist/components/Tags/main.svelte.d.ts +0 -85
  346. package/dist/components/Tags/main.svelte.js +0 -202
  347. package/dist/components/Tags/types.d.ts +0 -84
  348. package/dist/components/Tags/types.js +0 -1
  349. package/dist/components/Toast/Toast.svelte +0 -13
  350. package/dist/components/Toast/Toast.svelte.d.ts +0 -4
  351. package/dist/components/Toast/ToastMessage.svelte +0 -13
  352. package/dist/components/Toast/ToastMessage.svelte.d.ts +0 -4
  353. package/dist/components/Toast/ToastTitle.svelte +0 -13
  354. package/dist/components/Toast/ToastTitle.svelte.d.ts +0 -4
  355. package/dist/components/Toast/Toaster.svelte +0 -26
  356. package/dist/components/Toast/Toaster.svelte.d.ts +0 -4
  357. package/dist/components/Toast/index.d.ts +0 -7
  358. package/dist/components/Toast/index.js +0 -6
  359. package/dist/components/Toast/main.svelte.d.ts +0 -38
  360. package/dist/components/Toast/main.svelte.js +0 -93
  361. package/dist/components/Toast/types.d.ts +0 -31
  362. package/dist/components/Toast/types.js +0 -1
  363. package/dist/components/Tooltip/Tooltip.svelte +0 -19
  364. package/dist/components/Tooltip/Tooltip.svelte.d.ts +0 -4
  365. package/dist/components/Tooltip/TooltipArrow.svelte +0 -11
  366. package/dist/components/Tooltip/TooltipContent.svelte +0 -39
  367. package/dist/components/Tooltip/TooltipContent.svelte.d.ts +0 -4
  368. package/dist/components/Tooltip/TooltipTrigger.svelte +0 -17
  369. package/dist/components/Tooltip/TooltipTrigger.svelte.d.ts +0 -4
  370. package/dist/components/Tooltip/main.svelte.d.ts +0 -50
  371. package/dist/components/Tooltip/main.svelte.js +0 -100
  372. package/dist/components/Tooltip/types.d.ts +0 -27
  373. package/dist/components/Tooltip/types.js +0 -1
  374. package/dist/components/Tree/Tree.svelte +0 -28
  375. package/dist/components/Tree/Tree.svelte.d.ts +0 -4
  376. package/dist/components/Tree/TreeButton.svelte +0 -27
  377. package/dist/components/Tree/TreeButton.svelte.d.ts +0 -4
  378. package/dist/components/Tree/TreeGroup.svelte +0 -29
  379. package/dist/components/Tree/TreeGroup.svelte.d.ts +0 -4
  380. package/dist/components/Tree/TreeItem.svelte +0 -26
  381. package/dist/components/Tree/TreeItem.svelte.d.ts +0 -4
  382. package/dist/components/Tree/index.d.ts +0 -5
  383. package/dist/components/Tree/index.js +0 -4
  384. package/dist/components/Tree/main.svelte.d.ts +0 -93
  385. package/dist/components/Tree/main.svelte.js +0 -252
  386. package/dist/components/Tree/types.d.ts +0 -49
  387. package/dist/components/Tree/types.js +0 -1
  388. package/dist/internal/components/FloatingArrow.svelte +0 -26
  389. package/dist/internal/components/FloatingArrow.svelte.d.ts +0 -22
  390. package/dist/internal/components/FloatingContent.svelte +0 -90
  391. package/dist/internal/components/FloatingContent.svelte.d.ts +0 -24
  392. package/dist/internal/components/types.d.ts +0 -11
  393. package/dist/internal/components/types.js +0 -1
  394. package/dist/internal/helpers/action.d.ts +0 -15
  395. package/dist/internal/helpers/action.js +0 -47
  396. package/dist/internal/helpers/element.d.ts +0 -45
  397. package/dist/internal/helpers/element.js +0 -99
  398. package/dist/internal/helpers/floating.d.ts +0 -14
  399. package/dist/internal/helpers/floating.js +0 -79
  400. package/dist/internal/helpers/is.d.ts +0 -4
  401. package/dist/internal/helpers/is.js +0 -4
  402. package/dist/internal/helpers/log.d.ts +0 -3
  403. package/dist/internal/helpers/transition.d.ts +0 -16
  404. package/dist/internal/helpers/transition.js +0 -16
  405. package/dist/internal/index.d.ts +0 -12
  406. package/dist/internal/index.js +0 -12
  407. package/dist/internal/types.d.ts +0 -69
  408. package/dist/internal/types.js +0 -1
  409. package/dist/components/{Accordion → accordion}/index.js +1 -1
  410. package/dist/components/{Hovercard/index.js → hovercard/index.d.ts} +0 -0
  411. package/dist/components/{RadioGroup/index.js → radiogroup/index.d.ts} +0 -0
  412. package/dist/components/{Slider/index.js → slider/index.d.ts} +0 -0
  413. package/dist/components/{Tabs/index.js → tabs/index.d.ts} +0 -0
  414. package/dist/components/{Accordion → tabs}/types.js +0 -0
  415. package/dist/components/{Tags → tags}/index.d.ts +1 -1
  416. package/dist/components/{Tags → tags}/index.js +1 -1
  417. /package/dist/components/{Tooltip/index.js → tooltip/index.d.ts} +0 -0
  418. /package/dist/components/{Checkbox → tooltip}/types.js +0 -0
  419. /package/dist/{components/Collapsible → internals}/types.js +0 -0
  420. /package/dist/{components/Combobox/types.js → types/components/accordion.js} +0 -0
  421. /package/dist/{components/Hovercard/types.js → types/components/hovercard.js} +0 -0
  422. /package/dist/{components/Menu/types.js → types/components/menu.js} +0 -0
  423. /package/dist/{components/Modal/types.js → types/components/modal.js} +0 -0
  424. /package/dist/{components/Pin/types.js → types/components/pin.js} +0 -0
  425. /package/dist/{components/Popover/types.js → types/components/radiogroup.js} +0 -0
  426. /package/dist/{components/Portal/types.js → types/components/select.js} +0 -0
  427. /package/dist/{components/RadioGroup/types.js → types/components/slider.js} +0 -0
  428. /package/dist/{components/Select/types.js → types/components/tabs.js} +0 -0
  429. /package/dist/{components/Slider/types.js → types/components/tags.js} +0 -0
  430. /package/dist/{components/Switch/types.js → types/components/tooltip.js} +0 -0
  431. /package/dist/{components/Tabs/types.js → types/index.js} +0 -0
@@ -0,0 +1,33 @@
1
+ <script lang="ts">
2
+ import { stateValue } from '../../internals/context.svelte.js';
3
+ import { createHovercardRootContext } from './state.svelte.js';
4
+
5
+ import type { HovercardProps } from '../../types/index.js';
6
+
7
+ let {
8
+ children,
9
+ visible = $bindable(false),
10
+ delay = 700,
11
+ disabled = $bindable(false),
12
+ portalTarget = 'body',
13
+ floatingConfig = {}
14
+ }: HovercardProps<typeof ctx.state> = $props();
15
+
16
+ let ctx = createHovercardRootContext({
17
+ visible: stateValue(
18
+ () => visible,
19
+ (v) => {
20
+ visible = v;
21
+ }
22
+ ),
23
+ disabled: stateValue(
24
+ () => disabled,
25
+ (v) => (disabled = v)
26
+ ),
27
+ delay: stateValue(() => delay),
28
+ portalTarget: stateValue(() => portalTarget),
29
+ floatingConfig: stateValue(() => floatingConfig)
30
+ });
31
+ </script>
32
+
33
+ {@render children?.(ctx.state)}
@@ -1,4 +1,6 @@
1
- import type { HovercardProps } from './types.js';
2
- declare const Hovercard: import("svelte").Component<HovercardProps, {}, "visible">;
1
+ import type { HovercardProps } from '../../types/index.js';
2
+ declare const Hovercard: import("svelte").Component<HovercardProps<{
3
+ visible: boolean;
4
+ }>, {}, "disabled" | "visible">;
3
5
  type Hovercard = ReturnType<typeof Hovercard>;
4
6
  export default Hovercard;
@@ -0,0 +1,23 @@
1
+ <script lang="ts">
2
+ import { Element, parseId, stateValue } from '../../internals/index.js';
3
+ import { useHovercardArrow } from './state.svelte.js';
4
+
5
+ import type { HovercardArrowProps } from '../../types/index.js';
6
+
7
+ const uid = $props.id();
8
+
9
+ let {
10
+ id = parseId(uid),
11
+ children,
12
+ custom,
13
+ ref = $bindable(),
14
+ ...props
15
+ }: HovercardArrowProps<typeof ctx.props> = $props();
16
+
17
+ let ctx = useHovercardArrow({
18
+ id,
19
+ ref: stateValue(() => ref!)
20
+ });
21
+ </script>
22
+
23
+ <Element bind:ref {children} {custom} {ctx} as="button" {...props} />
@@ -0,0 +1,7 @@
1
+ import type { HovercardArrowProps } from '../../types/index.js';
2
+ declare const HovercardArrow: import("svelte").Component<HovercardArrowProps<{
3
+ id: string;
4
+ "data-hovercard-arrow": string;
5
+ }, any>, {}, "ref">;
6
+ type HovercardArrow = ReturnType<typeof HovercardArrow>;
7
+ export default HovercardArrow;
@@ -0,0 +1,23 @@
1
+ <script lang="ts">
2
+ import { Element, parseId, stateValue } from '../../internals/index.js';
3
+ import { useHovercardContent } from './state.svelte.js';
4
+
5
+ import type { HovercardContentProps } from '../../types/index.js';
6
+
7
+ const uid = $props.id();
8
+
9
+ let {
10
+ id = parseId(uid),
11
+ children,
12
+ custom,
13
+ ref = $bindable(),
14
+ ...props
15
+ }: HovercardContentProps<typeof ctx.props, typeof ctx.state> = $props();
16
+
17
+ let ctx = useHovercardContent({
18
+ id,
19
+ ref: stateValue(() => ref!)
20
+ });
21
+ </script>
22
+
23
+ <Element bind:ref {children} {custom} visible={ctx._root.$visible.val} {ctx} {...props} />
@@ -0,0 +1,9 @@
1
+ import type { HovercardContentProps } from '../../types/index.js';
2
+ declare const HovercardContent: import("svelte").Component<HovercardContentProps<{
3
+ id: string;
4
+ "data-hovercard-content": string;
5
+ }, {
6
+ visible: boolean;
7
+ }>, {}, "ref">;
8
+ type HovercardContent = ReturnType<typeof HovercardContent>;
9
+ export default HovercardContent;
@@ -0,0 +1,23 @@
1
+ <script lang="ts">
2
+ import { Element, parseId, stateValue } from '../../internals/index.js';
3
+ import { useHovercardTrigger } from './state.svelte.js';
4
+
5
+ import type { HovercardTriggerProps } from '../../types/index.js';
6
+
7
+ const uid = $props.id();
8
+
9
+ let {
10
+ id = parseId(uid),
11
+ children,
12
+ custom,
13
+ ref = $bindable(),
14
+ ...props
15
+ }: HovercardTriggerProps<typeof ctx.props> = $props();
16
+
17
+ let ctx = useHovercardTrigger({
18
+ id,
19
+ ref: stateValue(() => ref!)
20
+ });
21
+ </script>
22
+
23
+ <Element bind:ref {children} {custom} {ctx} as="button" {...props} />
@@ -0,0 +1,8 @@
1
+ import type { HovercardTriggerProps } from '../../types/index.js';
2
+ declare const HovercardTrigger: import("svelte").Component<HovercardTriggerProps<{
3
+ id: string;
4
+ "data-hovercard-trigger": string;
5
+ 'aria-describedby': string | undefined;
6
+ }, any>, {}, "ref">;
7
+ type HovercardTrigger = ReturnType<typeof HovercardTrigger>;
8
+ export default HovercardTrigger;
@@ -2,4 +2,3 @@ export { default as Hovercard } from './Hovercard.svelte';
2
2
  export { default as HovercardTrigger } from './HovercardTrigger.svelte';
3
3
  export { default as HovercardContent } from './HovercardContent.svelte';
4
4
  export { default as HovercardArrow } from './HovercardArrow.svelte';
5
- export type * from './types.js';
@@ -0,0 +1,74 @@
1
+ import { SvelteMap } from 'svelte/reactivity';
2
+ import { Floating } from '../../internals/index.js';
3
+ import type { GetInternalProps, GetInternalPropsNoId } from '../../internals/index.js';
4
+ import type { HovercardArrowProps, HovercardContentProps, HovercardProps, HovercardTriggerProps } from '../../types/index.js';
5
+ type RootProps = GetInternalPropsNoId<HovercardProps>;
6
+ declare class HovercardRoot extends Floating {
7
+ $visible: RootProps['visible'];
8
+ $disabled: RootProps['disabled'];
9
+ $delay: RootProps['delay'];
10
+ $portalTarget: RootProps['portalTarget'];
11
+ $floatingConfig: RootProps['floatingConfig'];
12
+ sharedIds: SvelteMap<"content" | "trigger", string>;
13
+ timeout: {
14
+ set(fn: () => void, delay: number): void;
15
+ clear: () => void;
16
+ };
17
+ hovered: boolean;
18
+ ParsedDelay: {
19
+ in: number;
20
+ out: number;
21
+ };
22
+ constructor(props: RootProps);
23
+ open: () => void;
24
+ close: () => void;
25
+ props: {};
26
+ state: {
27
+ visible: boolean;
28
+ };
29
+ }
30
+ type TriggerProps = GetInternalProps<HovercardTriggerProps>;
31
+ declare class HovercardTrigger {
32
+ #private;
33
+ _root: HovercardRoot;
34
+ constructor(root: HovercardRoot, props: TriggerProps);
35
+ props: {
36
+ id: string;
37
+ "data-hovercard-trigger": string;
38
+ 'aria-describedby': string | undefined;
39
+ };
40
+ state: {
41
+ visible: boolean;
42
+ };
43
+ }
44
+ type ContentProps = GetInternalProps<HovercardContentProps>;
45
+ declare class HovercardContent {
46
+ #private;
47
+ _root: HovercardRoot;
48
+ constructor(root: HovercardRoot, props: ContentProps);
49
+ props: {
50
+ id: string;
51
+ "data-hovercard-content": string;
52
+ };
53
+ state: {
54
+ visible: boolean;
55
+ };
56
+ }
57
+ type ArrowProps = GetInternalProps<HovercardArrowProps>;
58
+ declare class HovercardArrow {
59
+ $id: ArrowProps['id'];
60
+ _root: HovercardRoot;
61
+ constructor(root: HovercardRoot, props: ArrowProps);
62
+ props: {
63
+ id: string;
64
+ "data-hovercard-arrow": string;
65
+ };
66
+ state: {
67
+ visible: boolean;
68
+ };
69
+ }
70
+ export declare const createHovercardRootContext: (props: RootProps) => HovercardRoot;
71
+ export declare const useHovercardTrigger: (props: TriggerProps) => HovercardTrigger;
72
+ export declare const useHovercardArrow: (props: ArrowProps) => HovercardArrow;
73
+ export declare const useHovercardContent: (props: ContentProps) => HovercardContent;
74
+ export {};
@@ -0,0 +1,149 @@
1
+ import { SvelteMap } from 'svelte/reactivity';
2
+ import { portal } from '../../index.js';
3
+ import { addEvents, attach, buildContext, createAttributes, floating, Floating, parseDelay, trackTimeout } from '../../internals/index.js';
4
+ const { attrs } = createAttributes('hovercard', ['trigger', 'content', 'arrow']);
5
+ class HovercardRoot extends Floating {
6
+ $visible;
7
+ $disabled;
8
+ $delay;
9
+ $portalTarget;
10
+ $floatingConfig;
11
+ sharedIds = new SvelteMap();
12
+ timeout = trackTimeout();
13
+ hovered = $state(false);
14
+ ParsedDelay = $derived.by(() => parseDelay(this.$delay.val));
15
+ constructor(props) {
16
+ super();
17
+ this.$visible = props.visible;
18
+ this.$disabled = props.disabled;
19
+ this.$delay = props.delay;
20
+ this.$portalTarget = props.portalTarget;
21
+ this.$floatingConfig = props.floatingConfig;
22
+ }
23
+ open = () => {
24
+ this.timeout.set(() => {
25
+ this.$visible.val = true;
26
+ }, this.ParsedDelay.in);
27
+ };
28
+ close = () => {
29
+ this.timeout.set(() => {
30
+ if (!this.hovered)
31
+ this.$visible.val = false;
32
+ }, this.ParsedDelay.out);
33
+ };
34
+ props = {};
35
+ state = $derived.by(() => ({
36
+ visible: this.$visible.val
37
+ }));
38
+ }
39
+ class HovercardTrigger {
40
+ #id;
41
+ _root;
42
+ constructor(root, props) {
43
+ this._root = root;
44
+ this.#id = props.id;
45
+ }
46
+ props = $derived.by(() => ({
47
+ id: this.#id,
48
+ [attrs.trigger]: '',
49
+ 'aria-describedby': this._root.sharedIds.get('content'),
50
+ ...attach((node) => {
51
+ this._root.trigger = node;
52
+ return addEvents(node, {
53
+ mouseenter: () => {
54
+ if (this._root.$disabled.val)
55
+ return;
56
+ this._root.open();
57
+ },
58
+ mouseleave: () => {
59
+ if (this._root.$disabled.val)
60
+ return;
61
+ this._root.close();
62
+ },
63
+ focus: () => {
64
+ if (this._root.$disabled.val)
65
+ return;
66
+ this._root.open();
67
+ },
68
+ blur: () => {
69
+ if (this._root.$disabled.val)
70
+ return;
71
+ this._root.close();
72
+ }
73
+ });
74
+ })
75
+ }));
76
+ state = $derived.by(() => ({
77
+ visible: this._root.$visible.val
78
+ }));
79
+ }
80
+ class HovercardContent {
81
+ #id;
82
+ _root;
83
+ constructor(root, props) {
84
+ this._root = root;
85
+ this.#id = props.id;
86
+ this._root.sharedIds.set('trigger', this.#id);
87
+ }
88
+ props = $derived.by(() => ({
89
+ id: this.#id,
90
+ [attrs.content]: '',
91
+ ...attach((node) => {
92
+ this._root.content = node;
93
+ const floatingCleanUp = floating(this._root.trigger, this._root.arrow, this._root.$floatingConfig.val)(node);
94
+ const portalCleanUp = portal(this._root.$portalTarget.val)(node);
95
+ const eventsCleanUp = addEvents(node, {
96
+ mouseenter: () => {
97
+ this._root.hovered = true;
98
+ this._root.timeout.clear();
99
+ },
100
+ mouseleave: () => {
101
+ this._root.hovered = false;
102
+ this._root.close();
103
+ }
104
+ });
105
+ return () => {
106
+ floatingCleanUp?.();
107
+ portalCleanUp?.();
108
+ eventsCleanUp?.();
109
+ };
110
+ })
111
+ }));
112
+ state = $derived.by(() => ({
113
+ visible: this._root.$visible.val
114
+ }));
115
+ }
116
+ class HovercardArrow {
117
+ $id;
118
+ _root;
119
+ constructor(root, props) {
120
+ this._root = root;
121
+ this.$id = props.id;
122
+ }
123
+ props = $derived.by(() => ({
124
+ id: this.$id,
125
+ [attrs.arrow]: '',
126
+ ...attach((node) => {
127
+ this._root.arrow = node;
128
+ })
129
+ }));
130
+ state = $derived.by(() => ({
131
+ visible: this._root.$visible.val
132
+ }));
133
+ }
134
+ //
135
+ // ~~BUILDERS
136
+ //
137
+ const rootContext = buildContext(HovercardRoot);
138
+ export const createHovercardRootContext = (props) => {
139
+ return rootContext.create(props);
140
+ };
141
+ export const useHovercardTrigger = (props) => {
142
+ return rootContext.register(HovercardTrigger, props);
143
+ };
144
+ export const useHovercardArrow = (props) => {
145
+ return rootContext.register(HovercardArrow, props);
146
+ };
147
+ export const useHovercardContent = (props) => {
148
+ return rootContext.register(HovercardContent, props);
149
+ };
@@ -0,0 +1,35 @@
1
+ <script lang="ts">
2
+ import { stateValue } from '../../internals/context.svelte.js';
3
+ import { parseId } from '../../internals/utils.svelte.js';
4
+ import { createMenuRootContext } from './state.svelte.js';
5
+
6
+ import type { MenuProps } from '../../types/index.js';
7
+
8
+ const uid = $props.id();
9
+
10
+ let {
11
+ children,
12
+ visible = $bindable(false),
13
+ disabled = $bindable(false),
14
+ portalTarget = 'body',
15
+ floatingConfig = {}
16
+ }: MenuProps<typeof ctx.state> = $props();
17
+
18
+ let ctx = createMenuRootContext({
19
+ id: parseId(uid),
20
+ visible: stateValue(
21
+ () => visible,
22
+ (v) => {
23
+ visible = v;
24
+ }
25
+ ),
26
+ disabled: stateValue(
27
+ () => disabled,
28
+ (v) => (disabled = v)
29
+ ),
30
+ portalTarget: stateValue(() => portalTarget),
31
+ floatingConfig: stateValue(() => floatingConfig)
32
+ });
33
+ </script>
34
+
35
+ {@render children?.(ctx.state)}
@@ -0,0 +1,6 @@
1
+ import type { MenuProps } from '../../types/index.js';
2
+ declare const Menu: import("svelte").Component<MenuProps<{
3
+ visible: boolean;
4
+ }>, {}, "disabled" | "visible">;
5
+ type Menu = ReturnType<typeof Menu>;
6
+ export default Menu;
@@ -0,0 +1,17 @@
1
+ <script lang="ts">
2
+ import { Element, parseId, stateValue } from '../../internals/index.js';
3
+ import { useMenuArrow } from './state.svelte.js';
4
+
5
+ import type { MenuArrowProps } from '../../types/index.js';
6
+
7
+ const uid = $props.id();
8
+
9
+ let { id = parseId(uid), children, custom, ref = $bindable(), ...props }: MenuArrowProps<typeof ctx.props> = $props();
10
+
11
+ let ctx = useMenuArrow({
12
+ id,
13
+ ref: stateValue(() => ref!)
14
+ });
15
+ </script>
16
+
17
+ <Element bind:ref {children} {custom} {ctx} as="button" {...props} />
@@ -1,4 +1,7 @@
1
- import type { MenuArrowProps } from './types.js';
2
- declare const MenuArrow: import("svelte").Component<MenuArrowProps, {}, "self">;
1
+ import type { MenuArrowProps } from '../../types/index.js';
2
+ declare const MenuArrow: import("svelte").Component<MenuArrowProps<{
3
+ id: string;
4
+ "data-menu-arrow": string;
5
+ }, any>, {}, "ref">;
3
6
  type MenuArrow = ReturnType<typeof MenuArrow>;
4
7
  export default MenuArrow;
@@ -0,0 +1,23 @@
1
+ <script lang="ts">
2
+ import { Element, parseId, stateValue } from '../../internals/index.js';
3
+ import { useMenuContent } from './state.svelte.js';
4
+
5
+ import type { MenuContentProps } from '../../types/index.js';
6
+
7
+ const uid = $props.id();
8
+
9
+ let {
10
+ id = parseId(uid),
11
+ children,
12
+ custom,
13
+ ref = $bindable(),
14
+ ...props
15
+ }: MenuContentProps<typeof ctx.props, typeof ctx.state> = $props();
16
+
17
+ let ctx = useMenuContent({
18
+ id,
19
+ ref: stateValue(() => ref!)
20
+ });
21
+ </script>
22
+
23
+ <Element bind:ref {children} {custom} visible={ctx._root.$visible.val} {ctx} {...props} />
@@ -0,0 +1,9 @@
1
+ import type { MenuContentProps } from '../../types/index.js';
2
+ declare const MenuContent: import("svelte").Component<MenuContentProps<{
3
+ id: string;
4
+ "data-menu-content": string;
5
+ }, {
6
+ visible: boolean;
7
+ }>, {}, "ref">;
8
+ type MenuContent = ReturnType<typeof MenuContent>;
9
+ export default MenuContent;
@@ -0,0 +1,28 @@
1
+ <script lang="ts">
2
+ import { Element, parseId, stateValue } from '../../internals/index.js';
3
+ import { useMenuItem } from './state.svelte.js';
4
+
5
+ import type { MenuItemProps } from '../../types/index.js';
6
+
7
+ const uid = $props.id();
8
+
9
+ let {
10
+ id = parseId(uid),
11
+ children,
12
+ custom,
13
+ disabled = $bindable(false),
14
+ closeOnClick = true,
15
+ href,
16
+ ref = $bindable(),
17
+ ...props
18
+ }: MenuItemProps<typeof ctx.props, typeof ctx.state> & Record<string, any> = $props();
19
+
20
+ let ctx = useMenuItem({
21
+ id,
22
+ ref: stateValue(() => ref!),
23
+ disabled: stateValue(() => disabled),
24
+ closeOnClick: stateValue(() => closeOnClick)
25
+ });
26
+ </script>
27
+
28
+ <Element bind:ref as={href ? 'a' : 'button'} {href} {children} {custom} {ctx} {...props} />
@@ -0,0 +1,13 @@
1
+ import type { MenuItemProps } from '../../types/index.js';
2
+ declare const MenuItem: import("svelte").Component<MenuItemProps<{
3
+ id: string;
4
+ role: string;
5
+ "data-menu-item": string;
6
+ 'aria-disabled': boolean;
7
+ 'data-active': string | undefined;
8
+ }, {
9
+ readonly disabled: boolean;
10
+ readonly active: boolean;
11
+ }> & Record<string, any>, {}, "disabled" | "ref">;
12
+ type MenuItem = ReturnType<typeof MenuItem>;
13
+ export default MenuItem;
@@ -0,0 +1,37 @@
1
+ <script lang="ts">
2
+ import { stateValue } from '../../internals/context.svelte.js';
3
+ import { parseId } from '../../internals/utils.svelte.js';
4
+ import { createMenuSubContext } from './state.svelte.js';
5
+
6
+ import type { MenuSubProps } from '../../types/index.js';
7
+
8
+ const uid = $props.id();
9
+
10
+ let {
11
+ children,
12
+ name,
13
+ visible = $bindable(false),
14
+ disabled = $bindable(false),
15
+ portalTarget = 'body',
16
+ floatingConfig = {}
17
+ }: MenuSubProps<typeof ctx.state> = $props();
18
+
19
+ let ctx = createMenuSubContext({
20
+ id: parseId(uid),
21
+ name: stateValue(() => name.toLowerCase().replace(/ /g, '')),
22
+ visible: stateValue(
23
+ () => visible,
24
+ (v) => {
25
+ visible = v;
26
+ }
27
+ ),
28
+ disabled: stateValue(
29
+ () => disabled,
30
+ (v) => (disabled = v)
31
+ ),
32
+ portalTarget: stateValue(() => portalTarget),
33
+ floatingConfig: stateValue(() => floatingConfig)
34
+ });
35
+ </script>
36
+
37
+ {@render children?.(ctx.state)}
@@ -0,0 +1,6 @@
1
+ import type { MenuSubProps } from '../../types/index.js';
2
+ declare const MenuSub: import("svelte").Component<MenuSubProps<{
3
+ visible: boolean;
4
+ }>, {}, "disabled" | "visible">;
5
+ type MenuSub = ReturnType<typeof MenuSub>;
6
+ export default MenuSub;
@@ -0,0 +1,23 @@
1
+ <script lang="ts">
2
+ import { Element, parseId, stateValue } from '../../internals/index.js';
3
+ import { useMenuSubContent } from './state.svelte.js';
4
+
5
+ import type { MenuSubContentProps } from '../../types/index.js';
6
+
7
+ const uid = $props.id();
8
+
9
+ let {
10
+ id = parseId(uid),
11
+ children,
12
+ custom,
13
+ ref = $bindable(),
14
+ ...props
15
+ }: MenuSubContentProps<typeof ctx.props, typeof ctx.state> = $props();
16
+
17
+ let ctx = useMenuSubContent({
18
+ id,
19
+ ref: stateValue(() => ref!)
20
+ });
21
+ </script>
22
+
23
+ <Element bind:ref {children} {custom} visible={ctx._sub.$visible.val} {ctx} {...props} />
@@ -0,0 +1,9 @@
1
+ import type { MenuSubContentProps } from '../../types/index.js';
2
+ declare const MenuSubContent: import("svelte").Component<MenuSubContentProps<{
3
+ id: string;
4
+ "data-menu-sub-content": string;
5
+ }, {
6
+ visible: boolean;
7
+ }>, {}, "ref">;
8
+ type MenuSubContent = ReturnType<typeof MenuSubContent>;
9
+ export default MenuSubContent;
@@ -0,0 +1,23 @@
1
+ <script lang="ts">
2
+ import { Element, parseId, stateValue } from '../../internals/index.js';
3
+ import { useMenuSubTrigger } from './state.svelte.js';
4
+
5
+ import type { MenuTriggerProps } from '../../types/index.js';
6
+
7
+ const uid = $props.id();
8
+
9
+ let {
10
+ id = parseId(uid),
11
+ children,
12
+ custom,
13
+ ref = $bindable(),
14
+ ...props
15
+ }: MenuTriggerProps<typeof ctx.props, typeof ctx.state> = $props();
16
+
17
+ let ctx = useMenuSubTrigger({
18
+ id,
19
+ ref: stateValue(() => ref!)
20
+ });
21
+ </script>
22
+
23
+ <Element bind:ref {children} {custom} {ctx} as="button" {...props} />
@@ -0,0 +1,17 @@
1
+ import type { MenuTriggerProps } from '../../types/index.js';
2
+ declare const MenuSubTrigger: import("svelte").Component<MenuTriggerProps<{
3
+ id: string;
4
+ role: string;
5
+ 'aria-haspopup': string;
6
+ 'aria-expanded': boolean;
7
+ 'aria-controls': string | undefined;
8
+ "data-menu-sub-trigger": string;
9
+ 'data-active': string | undefined;
10
+ 'data-opened': string | undefined;
11
+ }, {
12
+ readonly disabled: boolean;
13
+ readonly active: boolean;
14
+ readonly opened: boolean;
15
+ }>, {}, "ref">;
16
+ type MenuSubTrigger = ReturnType<typeof MenuSubTrigger>;
17
+ export default MenuSubTrigger;
@@ -0,0 +1,23 @@
1
+ <script lang="ts">
2
+ import { Element, parseId, stateValue } from '../../internals/index.js';
3
+ import { useMenuTrigger } from './state.svelte.js';
4
+
5
+ import type { MenuTriggerProps } from '../../types/index.js';
6
+
7
+ const uid = $props.id();
8
+
9
+ let {
10
+ id = parseId(uid),
11
+ children,
12
+ custom,
13
+ ref = $bindable(),
14
+ ...props
15
+ }: MenuTriggerProps<typeof ctx.props> = $props();
16
+
17
+ let ctx = useMenuTrigger({
18
+ id,
19
+ ref: stateValue(() => ref!)
20
+ });
21
+ </script>
22
+
23
+ <Element bind:ref {children} {custom} {ctx} as="button" {...props} />