@spinjs/components 0.1.0-preview.1 → 0.2.0-alpha.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 (834) hide show
  1. package/README.md +15 -5
  2. package/dist/angle-slider/angle-slider.events.d.ts +2 -3
  3. package/dist/angle-slider/angle-slider.machine.d.ts +4 -5
  4. package/dist/angle-slider/angle-slider.machine.js +2 -2
  5. package/dist/angle-slider/angle-slider.presentation.d.ts +11 -12
  6. package/dist/angle-slider/angle-slider.presentation.js +2 -2
  7. package/dist/angle-slider/angle-slider.state.d.ts +1 -2
  8. package/dist/angle-slider/angle-slider.state.js +1 -1
  9. package/dist/angle-slider/angle-slider.transitions.d.ts +2 -3
  10. package/dist/angle-slider/examples/basic.html +2 -2
  11. package/dist/angle-slider/examples/basic.html.js +5 -0
  12. package/dist/angle-slider/examples/knob.html +1 -1
  13. package/dist/angle-slider/examples/knob.html.js +5 -0
  14. package/dist/angle-slider/examples/labeled.html +11 -11
  15. package/dist/angle-slider/examples/labeled.html.js +5 -0
  16. package/dist/angle-slider/examples/marks.html +2 -2
  17. package/dist/angle-slider/examples/marks.html.js +5 -0
  18. package/dist/async-list/async-list.events.d.ts +2 -3
  19. package/dist/async-list/async-list.machine.d.ts +2 -3
  20. package/dist/async-list/async-list.machine.js +1 -1
  21. package/dist/async-list/async-list.presentation.d.ts +13 -14
  22. package/dist/async-list/async-list.presentation.js +2 -2
  23. package/dist/async-list/async-list.state.d.ts +1 -2
  24. package/dist/async-list/async-list.state.js +1 -1
  25. package/dist/async-list/async-list.transitions.d.ts +3 -4
  26. package/dist/async-list/examples/basic.html +7 -7
  27. package/dist/async-list/examples/basic.html.js +5 -0
  28. package/dist/avatar/avatar.events.d.ts +2 -3
  29. package/dist/avatar/avatar.machine.d.ts +12 -4
  30. package/dist/avatar/avatar.machine.js +1 -1
  31. package/dist/avatar/avatar.presentation.d.ts +5 -6
  32. package/dist/avatar/avatar.presentation.js +1 -1
  33. package/dist/avatar/avatar.state.d.ts +1 -2
  34. package/dist/avatar/avatar.state.js +1 -1
  35. package/dist/avatar/avatar.transitions.d.ts +2 -3
  36. package/dist/avatar/examples/badge.html +2 -2
  37. package/dist/avatar/examples/badge.html.js +5 -0
  38. package/dist/avatar/examples/badgeminimal.html +1 -1
  39. package/dist/avatar/examples/badgeminimal.html.js +5 -0
  40. package/dist/avatar/examples/basic.html +1 -1
  41. package/dist/avatar/examples/basic.html.js +5 -0
  42. package/dist/avatar/examples/count.html +5 -5
  43. package/dist/avatar/examples/count.html.js +5 -0
  44. package/dist/avatar/examples/fallback.html +1 -1
  45. package/dist/avatar/examples/fallback.html.js +5 -0
  46. package/dist/avatar/examples/group.html +4 -4
  47. package/dist/avatar/examples/group.html.js +5 -0
  48. package/dist/avatar/examples/icon.html +2 -2
  49. package/dist/avatar/examples/icon.html.js +5 -0
  50. package/dist/avatar/examples/multiples.html +4 -4
  51. package/dist/avatar/examples/multiples.html.js +5 -0
  52. package/dist/avatar/examples/pills.html +12 -12
  53. package/dist/avatar/examples/pills.html.js +5 -0
  54. package/dist/avatar/examples/pillsolid.html +4 -4
  55. package/dist/avatar/examples/pillsolid.html.js +5 -0
  56. package/dist/avatar/examples/rounded.html +1 -1
  57. package/dist/avatar/examples/rounded.html.js +5 -0
  58. package/dist/avatar/examples/status.html +2 -2
  59. package/dist/avatar/examples/status.html.js +5 -0
  60. package/dist/avatar/examples/statusminimal.html +1 -1
  61. package/dist/avatar/examples/statusminimal.html.js +5 -0
  62. package/dist/avatar/examples/trusted.html +6 -6
  63. package/dist/avatar/examples/trusted.html.js +5 -0
  64. package/dist/avatar/examples/verification.html +3 -3
  65. package/dist/avatar/examples/verification.html.js +5 -0
  66. package/dist/carousel/carousel.events.d.ts +2 -3
  67. package/dist/carousel/carousel.machine.d.ts +3 -4
  68. package/dist/carousel/carousel.machine.js +1 -1
  69. package/dist/carousel/carousel.presentation.d.ts +14 -15
  70. package/dist/carousel/carousel.presentation.js +2 -2
  71. package/dist/carousel/carousel.state.d.ts +1 -2
  72. package/dist/carousel/carousel.state.js +1 -1
  73. package/dist/carousel/carousel.transitions.d.ts +2 -3
  74. package/dist/carousel/examples/autoplay.html +8 -8
  75. package/dist/carousel/examples/autoplay.html.js +5 -0
  76. package/dist/carousel/examples/basic.html +7 -7
  77. package/dist/carousel/examples/basic.html.js +5 -0
  78. package/dist/carousel/examples/cards.html +8 -8
  79. package/dist/carousel/examples/cards.html.js +5 -0
  80. package/dist/carousel/examples/hero.html +6 -6
  81. package/dist/carousel/examples/hero.html.js +5 -0
  82. package/dist/carousel/examples/infinite.html +7 -7
  83. package/dist/carousel/examples/infinite.html.js +5 -0
  84. package/dist/carousel/examples/minimal.html +5 -5
  85. package/dist/carousel/examples/minimal.html.js +5 -0
  86. package/dist/carousel/examples/testimonials.html +10 -10
  87. package/dist/carousel/examples/testimonials.html.js +5 -0
  88. package/dist/carousel/examples/thumbnails.html +8 -8
  89. package/dist/carousel/examples/thumbnails.html.js +5 -0
  90. package/dist/carousel/examples/vertical.html +8 -8
  91. package/dist/carousel/examples/vertical.html.js +5 -0
  92. package/dist/cascade-select/cascade.events.d.ts +2 -3
  93. package/dist/cascade-select/cascade.machine.d.ts +3 -4
  94. package/dist/cascade-select/cascade.machine.js +1 -1
  95. package/dist/cascade-select/cascade.presentation.d.ts +8 -9
  96. package/dist/cascade-select/cascade.presentation.js +12 -12
  97. package/dist/cascade-select/cascade.state.d.ts +1 -2
  98. package/dist/cascade-select/cascade.state.js +1 -1
  99. package/dist/cascade-select/cascade.transitions.d.ts +2 -3
  100. package/dist/cascade-select/examples/basic.html +13 -11
  101. package/dist/cascade-select/examples/basic.html.js +5 -0
  102. package/dist/color-picker/color-picker.events.d.ts +3 -4
  103. package/dist/color-picker/color-picker.machine.d.ts +3 -3
  104. package/dist/color-picker/color-picker.machine.js +1 -1
  105. package/dist/color-picker/color-picker.presentation.d.ts +20 -21
  106. package/dist/color-picker/color-picker.presentation.js +4 -5
  107. package/dist/color-picker/color-picker.state.d.ts +2 -3
  108. package/dist/color-picker/color-picker.state.js +2 -2
  109. package/dist/color-picker/color-picker.transitions.d.ts +3 -4
  110. package/dist/color-picker/color.d.ts +39 -0
  111. package/dist/color-picker/color.js +401 -0
  112. package/dist/color-picker/examples/basic.html +14 -14
  113. package/dist/color-picker/examples/basic.html.js +5 -0
  114. package/dist/color-picker/examples/hue-wheel.html +9 -9
  115. package/dist/color-picker/examples/hue-wheel.html.js +5 -0
  116. package/dist/color-picker/examples/inline.html +8 -8
  117. package/dist/color-picker/examples/inline.html.js +5 -0
  118. package/dist/color-picker/examples/with-presets.html +10 -10
  119. package/dist/color-picker/examples/with-presets.html.js +5 -0
  120. package/dist/combobox/combobox.events.d.ts +2 -3
  121. package/dist/combobox/combobox.machine.d.ts +3 -4
  122. package/dist/combobox/combobox.machine.js +1 -1
  123. package/dist/combobox/combobox.presentation.d.ts +8 -9
  124. package/dist/combobox/combobox.presentation.js +3 -3
  125. package/dist/combobox/combobox.state.d.ts +1 -2
  126. package/dist/combobox/combobox.state.js +1 -1
  127. package/dist/combobox/combobox.transitions.d.ts +3 -4
  128. package/dist/combobox/examples/basic.html +7 -7
  129. package/dist/combobox/examples/basic.html.js +5 -0
  130. package/dist/combobox/examples/directory.html +7 -7
  131. package/dist/combobox/examples/directory.html.js +5 -0
  132. package/dist/combobox/examples/grouping.html +7 -7
  133. package/dist/combobox/examples/grouping.html.js +5 -0
  134. package/dist/combobox/examples/multiple.html +8 -8
  135. package/dist/combobox/examples/multiple.html.js +5 -0
  136. package/dist/compiler/emit.d.ts +6 -0
  137. package/dist/compiler/emit.js +217 -0
  138. package/dist/compiler/transform.d.ts +52 -0
  139. package/dist/compiler/transform.js +169 -0
  140. package/dist/controller.d.ts +2 -3
  141. package/dist/controller.js +1 -1
  142. package/dist/date-input/date-input.events.d.ts +2 -3
  143. package/dist/date-input/date-input.machine.d.ts +3 -3
  144. package/dist/date-input/date-input.machine.js +1 -1
  145. package/dist/date-input/date-input.presentation.d.ts +6 -7
  146. package/dist/date-input/date-input.presentation.js +1 -1
  147. package/dist/date-input/date-input.state.d.ts +1 -2
  148. package/dist/date-input/date-input.state.js +1 -1
  149. package/dist/date-input/date-input.transitions.d.ts +3 -4
  150. package/dist/date-input/examples/basic.html +3 -3
  151. package/dist/date-input/examples/basic.html.js +5 -0
  152. package/dist/date-picker/date-picker.events.d.ts +2 -3
  153. package/dist/date-picker/date-picker.machine.d.ts +2 -3
  154. package/dist/date-picker/date-picker.machine.js +1 -1
  155. package/dist/date-picker/date-picker.presentation.d.ts +14 -15
  156. package/dist/date-picker/date-picker.presentation.js +2 -2
  157. package/dist/date-picker/date-picker.state.d.ts +1 -2
  158. package/dist/date-picker/date-picker.state.js +1 -1
  159. package/dist/date-picker/date-picker.transitions.d.ts +3 -4
  160. package/dist/date-picker/examples/appointment.html +7 -7
  161. package/dist/date-picker/examples/appointment.html.js +5 -0
  162. package/dist/date-picker/examples/basic.html.js +5 -0
  163. package/dist/date-picker/examples/multiple.html.js +5 -0
  164. package/dist/date-picker/examples/pricing.html.js +5 -0
  165. package/dist/date-picker/examples/range.html.js +5 -0
  166. package/dist/date-picker/examples/unavailable.html.js +5 -0
  167. package/dist/editable/editable.events.d.ts +2 -3
  168. package/dist/editable/editable.machine.d.ts +3 -4
  169. package/dist/editable/editable.machine.js +1 -1
  170. package/dist/editable/editable.presentation.d.ts +6 -7
  171. package/dist/editable/editable.presentation.js +1 -1
  172. package/dist/editable/editable.state.d.ts +1 -2
  173. package/dist/editable/editable.state.js +1 -1
  174. package/dist/editable/editable.transitions.d.ts +3 -4
  175. package/dist/editable/examples/basic.html +7 -7
  176. package/dist/editable/examples/basic.html.js +5 -0
  177. package/dist/editable/examples/doubleclick.html +6 -6
  178. package/dist/editable/examples/doubleclick.html.js +5 -0
  179. package/dist/editable/examples/inline-edit.html +4 -4
  180. package/dist/editable/examples/inline-edit.html.js +5 -0
  181. package/dist/editable/examples/profile-field.html +7 -7
  182. package/dist/editable/examples/profile-field.html.js +5 -0
  183. package/dist/editable/examples/resize.html +6 -6
  184. package/dist/editable/examples/resize.html.js +5 -0
  185. package/dist/editable/examples/task-item.html +7 -7
  186. package/dist/editable/examples/task-item.html.js +5 -0
  187. package/dist/editable/examples/title-editor.html +3 -3
  188. package/dist/editable/examples/title-editor.html.js +5 -0
  189. package/dist/editable/examples/with-controls.html +4 -4
  190. package/dist/editable/examples/with-controls.html.js +5 -0
  191. package/dist/examples.d.ts +22 -0
  192. package/dist/examples.js +501 -0
  193. package/dist/file-upload/examples/avatar.html +8 -8
  194. package/dist/file-upload/examples/avatar.html.js +5 -0
  195. package/dist/file-upload/examples/basic.html +8 -8
  196. package/dist/file-upload/examples/basic.html.js +5 -0
  197. package/dist/file-upload/examples/directory.html +8 -8
  198. package/dist/file-upload/examples/directory.html.js +5 -0
  199. package/dist/file-upload/examples/dragdrop.html +8 -8
  200. package/dist/file-upload/examples/dragdrop.html.js +5 -0
  201. package/dist/file-upload/examples/files.html +9 -9
  202. package/dist/file-upload/examples/files.html.js +5 -0
  203. package/dist/file-upload/examples/images.html +8 -8
  204. package/dist/file-upload/examples/images.html.js +5 -0
  205. package/dist/file-upload/examples/paste.html +8 -8
  206. package/dist/file-upload/examples/paste.html.js +5 -0
  207. package/dist/file-upload/examples/table.html +7 -7
  208. package/dist/file-upload/examples/table.html.js +5 -0
  209. package/dist/file-upload/file-upload.events.d.ts +2 -3
  210. package/dist/file-upload/file-upload.machine.d.ts +5 -3
  211. package/dist/file-upload/file-upload.machine.js +1 -1
  212. package/dist/file-upload/file-upload.presentation.d.ts +10 -11
  213. package/dist/file-upload/file-upload.presentation.js +1 -1
  214. package/dist/file-upload/file-upload.state.d.ts +1 -2
  215. package/dist/file-upload/file-upload.state.js +1 -1
  216. package/dist/file-upload/file-upload.transitions.d.ts +3 -4
  217. package/dist/floating-panel/examples/basic.html +22 -23
  218. package/dist/floating-panel/examples/basic.html.js +5 -0
  219. package/dist/floating-panel/examples/calculator.html +41 -41
  220. package/dist/floating-panel/examples/calculator.html.js +5 -0
  221. package/dist/floating-panel/examples/chat.html +29 -29
  222. package/dist/floating-panel/examples/chat.html.js +5 -0
  223. package/dist/floating-panel/examples/media-player.html +27 -27
  224. package/dist/floating-panel/examples/media-player.html.js +5 -0
  225. package/dist/floating-panel/examples/notes.html +36 -36
  226. package/dist/floating-panel/examples/notes.html.js +5 -0
  227. package/dist/floating-panel/examples/settings.html +34 -34
  228. package/dist/floating-panel/examples/settings.html.js +5 -0
  229. package/dist/floating-panel/examples/task.html +40 -40
  230. package/dist/floating-panel/examples/task.html.js +5 -0
  231. package/dist/floating-panel/examples/video-call.html +25 -25
  232. package/dist/floating-panel/examples/video-call.html.js +5 -0
  233. package/dist/floating-panel/floating-panel.events.d.ts +2 -3
  234. package/dist/floating-panel/floating-panel.machine.d.ts +2 -3
  235. package/dist/floating-panel/floating-panel.machine.js +1 -1
  236. package/dist/floating-panel/floating-panel.presentation.d.ts +11 -13
  237. package/dist/floating-panel/floating-panel.presentation.js +3 -6
  238. package/dist/floating-panel/floating-panel.state.d.ts +1 -2
  239. package/dist/floating-panel/floating-panel.state.js +1 -1
  240. package/dist/floating-panel/floating-panel.transitions.d.ts +3 -4
  241. package/dist/hover-card/examples/basic.html +5 -5
  242. package/dist/hover-card/examples/basic.html.js +5 -0
  243. package/dist/hover-card/examples/controlled.html +9 -10
  244. package/dist/hover-card/examples/controlled.html.js +5 -0
  245. package/dist/hover-card/examples/custom-positioning.html +8 -8
  246. package/dist/hover-card/examples/custom-positioning.html.js +5 -0
  247. package/dist/hover-card/examples/link.html +2 -2
  248. package/dist/hover-card/examples/link.html.js +5 -0
  249. package/dist/hover-card/examples/product.html +9 -9
  250. package/dist/hover-card/examples/product.html.js +5 -0
  251. package/dist/hover-card/examples/user.html +11 -11
  252. package/dist/hover-card/examples/user.html.js +5 -0
  253. package/dist/hover-card/examples/with-arrow.html +9 -9
  254. package/dist/hover-card/examples/with-arrow.html.js +5 -0
  255. package/dist/hover-card/hover-card.controller-def.d.ts +2 -4
  256. package/dist/hover-card/hover-card.controller-def.js +1 -1
  257. package/dist/image-cropper/crop-geometry.d.ts +1 -2
  258. package/dist/image-cropper/crop-geometry.js +1 -1
  259. package/dist/image-cropper/examples/basic.html +3 -3
  260. package/dist/image-cropper/examples/basic.html.js +5 -0
  261. package/dist/image-cropper/examples/circle.html +3 -3
  262. package/dist/image-cropper/examples/circle.html.js +5 -0
  263. package/dist/image-cropper/image-cropper.events.d.ts +2 -3
  264. package/dist/image-cropper/image-cropper.machine.d.ts +3 -4
  265. package/dist/image-cropper/image-cropper.machine.js +2 -2
  266. package/dist/image-cropper/image-cropper.presentation.d.ts +7 -8
  267. package/dist/image-cropper/image-cropper.presentation.js +2 -2
  268. package/dist/image-cropper/image-cropper.state.d.ts +1 -2
  269. package/dist/image-cropper/image-cropper.state.js +1 -1
  270. package/dist/image-cropper/image-cropper.transitions.d.ts +3 -4
  271. package/dist/index.d.ts +28 -13
  272. package/dist/index.js +21 -14
  273. package/dist/listbox/examples/basic.html +9 -9
  274. package/dist/listbox/examples/basic.html.js +5 -0
  275. package/dist/listbox/examples/controlled.html +9 -9
  276. package/dist/listbox/examples/controlled.html.js +5 -0
  277. package/dist/listbox/examples/countries.html +9 -9
  278. package/dist/listbox/examples/countries.html.js +5 -0
  279. package/dist/listbox/examples/grouped.html +9 -9
  280. package/dist/listbox/examples/grouped.html.js +5 -0
  281. package/dist/listbox/examples/icons.html +10 -10
  282. package/dist/listbox/examples/icons.html.js +5 -0
  283. package/dist/listbox/examples/multiple.html +9 -9
  284. package/dist/listbox/examples/multiple.html.js +5 -0
  285. package/dist/listbox/examples/priority.html +9 -9
  286. package/dist/listbox/examples/priority.html.js +5 -0
  287. package/dist/listbox/examples/settings.html +9 -9
  288. package/dist/listbox/examples/settings.html.js +5 -0
  289. package/dist/listbox/listbox.events.d.ts +2 -3
  290. package/dist/listbox/listbox.machine.d.ts +2 -3
  291. package/dist/listbox/listbox.machine.js +1 -1
  292. package/dist/listbox/listbox.presentation.d.ts +6 -5
  293. package/dist/listbox/listbox.presentation.js +1 -1
  294. package/dist/listbox/listbox.state.d.ts +1 -2
  295. package/dist/listbox/listbox.state.js +1 -1
  296. package/dist/listbox/listbox.transitions.d.ts +3 -4
  297. package/dist/menu/examples/basic.html +15 -13
  298. package/dist/menu/examples/basic.html.js +5 -0
  299. package/dist/menu/examples/context.html +14 -12
  300. package/dist/menu/examples/context.html.js +5 -0
  301. package/dist/menu/examples/groups.html +15 -13
  302. package/dist/menu/examples/groups.html.js +5 -0
  303. package/dist/menu/examples/icons.html +17 -15
  304. package/dist/menu/examples/icons.html.js +5 -0
  305. package/dist/menu/examples/nested.html +15 -13
  306. package/dist/menu/examples/nested.html.js +5 -0
  307. package/dist/menu/examples/user.html +21 -19
  308. package/dist/menu/examples/user.html.js +5 -0
  309. package/dist/menu/menu.events.d.ts +2 -3
  310. package/dist/menu/menu.machine.d.ts +2 -3
  311. package/dist/menu/menu.machine.js +1 -1
  312. package/dist/menu/menu.presentation.d.ts +6 -8
  313. package/dist/menu/menu.presentation.js +4 -5
  314. package/dist/menu/menu.state.d.ts +1 -2
  315. package/dist/menu/menu.state.js +1 -1
  316. package/dist/mode-picker/examples/basic.html +1 -1
  317. package/dist/mode-picker/examples/basic.html.js +5 -0
  318. package/dist/mode-picker/examples/minimal.html +1 -1
  319. package/dist/mode-picker/examples/minimal.html.js +5 -0
  320. package/dist/mode-picker/examples/pill.html +1 -1
  321. package/dist/mode-picker/examples/pill.html.js +5 -0
  322. package/dist/mode-picker/mode-picker.events.d.ts +2 -3
  323. package/dist/mode-picker/mode-picker.machine.d.ts +3 -3
  324. package/dist/mode-picker/mode-picker.machine.js +1 -1
  325. package/dist/mode-picker/mode-picker.presentation.d.ts +7 -8
  326. package/dist/mode-picker/mode-picker.presentation.js +2 -2
  327. package/dist/mode-picker/mode-picker.state.d.ts +1 -2
  328. package/dist/mode-picker/mode-picker.transitions.d.ts +3 -4
  329. package/dist/navigation-menu/examples/basic.html +6 -6
  330. package/dist/navigation-menu/examples/basic.html.js +5 -0
  331. package/dist/navigation-menu/examples/grouped.html +14 -12
  332. package/dist/navigation-menu/examples/grouped.html.js +5 -0
  333. package/dist/navigation-menu/examples/minimal.html +7 -5
  334. package/dist/navigation-menu/examples/minimal.html.js +5 -0
  335. package/dist/navigation-menu/navigation-menu.events.d.ts +2 -3
  336. package/dist/navigation-menu/navigation-menu.machine.d.ts +3 -3
  337. package/dist/navigation-menu/navigation-menu.machine.js +1 -1
  338. package/dist/navigation-menu/navigation-menu.presentation.d.ts +6 -7
  339. package/dist/navigation-menu/navigation-menu.presentation.js +2 -2
  340. package/dist/navigation-menu/navigation-menu.state.d.ts +1 -2
  341. package/dist/navigation-menu/navigation-menu.state.js +1 -1
  342. package/dist/navigation-menu/navigation-menu.transitions.d.ts +3 -4
  343. package/dist/number-input/examples/basic.html +10 -10
  344. package/dist/number-input/examples/basic.html.js +5 -0
  345. package/dist/number-input/examples/currency.html +6 -6
  346. package/dist/number-input/examples/currency.html.js +5 -0
  347. package/dist/number-input/examples/decimal.html +4 -4
  348. package/dist/number-input/examples/decimal.html.js +5 -0
  349. package/dist/number-input/examples/limits.html +6 -6
  350. package/dist/number-input/examples/limits.html.js +5 -0
  351. package/dist/number-input/examples/percentage.html +6 -6
  352. package/dist/number-input/examples/percentage.html.js +5 -0
  353. package/dist/number-input/examples/quantity.html +6 -6
  354. package/dist/number-input/examples/quantity.html.js +5 -0
  355. package/dist/number-input/examples/scrubber.html +11 -11
  356. package/dist/number-input/examples/scrubber.html.js +5 -0
  357. package/dist/number-input/examples/wheel.html +7 -7
  358. package/dist/number-input/examples/wheel.html.js +5 -0
  359. package/dist/number-input/number-input.events.d.ts +2 -3
  360. package/dist/number-input/number-input.machine.d.ts +4 -4
  361. package/dist/number-input/number-input.machine.js +1 -1
  362. package/dist/number-input/number-input.presentation.d.ts +7 -8
  363. package/dist/number-input/number-input.presentation.js +4 -4
  364. package/dist/number-input/number-input.state.d.ts +1 -2
  365. package/dist/number-input/number-input.state.js +1 -1
  366. package/dist/number-input/number-input.transitions.d.ts +3 -4
  367. package/dist/pagination/examples/basic.html +2 -2
  368. package/dist/pagination/examples/basic.html.js +5 -0
  369. package/dist/pagination/examples/dropdown.html +2 -2
  370. package/dist/pagination/examples/dropdown.html.js +5 -0
  371. package/dist/pagination/examples/info.html +3 -3
  372. package/dist/pagination/examples/info.html.js +5 -0
  373. package/dist/pagination/examples/jump.html +2 -2
  374. package/dist/pagination/examples/jump.html.js +5 -0
  375. package/dist/pagination/examples/numbered.html +2 -2
  376. package/dist/pagination/examples/numbered.html.js +5 -0
  377. package/dist/pagination/examples/pagesize.html +4 -4
  378. package/dist/pagination/examples/pagesize.html.js +5 -0
  379. package/dist/pagination/pagination.events.d.ts +2 -3
  380. package/dist/pagination/pagination.machine.d.ts +4 -4
  381. package/dist/pagination/pagination.machine.js +1 -1
  382. package/dist/pagination/pagination.presentation.d.ts +4 -5
  383. package/dist/pagination/pagination.presentation.js +1 -1
  384. package/dist/pagination/pagination.state.d.ts +1 -2
  385. package/dist/pagination/pagination.state.js +1 -1
  386. package/dist/pagination/pagination.transitions.d.ts +2 -3
  387. package/dist/pin-input/examples/basic.html +2 -2
  388. package/dist/pin-input/examples/basic.html.js +5 -0
  389. package/dist/pin-input/examples/field.html +4 -4
  390. package/dist/pin-input/examples/field.html.js +5 -0
  391. package/dist/pin-input/examples/masked.html +3 -3
  392. package/dist/pin-input/examples/masked.html.js +5 -0
  393. package/dist/pin-input/examples/placeholder.html +3 -3
  394. package/dist/pin-input/examples/placeholder.html.js +5 -0
  395. package/dist/pin-input/examples/twofactor.html +4 -4
  396. package/dist/pin-input/examples/twofactor.html.js +5 -0
  397. package/dist/pin-input/examples/verification.html +6 -6
  398. package/dist/pin-input/examples/verification.html.js +5 -0
  399. package/dist/pin-input/pin-input.events.d.ts +2 -3
  400. package/dist/pin-input/pin-input.machine.d.ts +3 -3
  401. package/dist/pin-input/pin-input.machine.js +1 -1
  402. package/dist/pin-input/pin-input.presentation.d.ts +4 -5
  403. package/dist/pin-input/pin-input.presentation.js +2 -2
  404. package/dist/pin-input/pin-input.state.d.ts +1 -2
  405. package/dist/pin-input/pin-input.state.js +1 -1
  406. package/dist/pin-input/pin-input.transitions.d.ts +1 -2
  407. package/dist/popover/examples/basic.html +4 -4
  408. package/dist/popover/examples/basic.html.js +5 -0
  409. package/dist/popover/examples/feedback.html +5 -5
  410. package/dist/popover/examples/feedback.html.js +5 -0
  411. package/dist/popover/examples/notifications.html +5 -5
  412. package/dist/popover/examples/notifications.html.js +5 -0
  413. package/dist/popover/examples/settings.html +8 -8
  414. package/dist/popover/examples/settings.html.js +5 -0
  415. package/dist/popover/examples/share.html +5 -5
  416. package/dist/popover/examples/share.html.js +5 -0
  417. package/dist/popover/examples/user.html +10 -10
  418. package/dist/popover/examples/user.html.js +5 -0
  419. package/dist/popover/popover.controller-def.d.ts +2 -4
  420. package/dist/popover/popover.controller-def.js +1 -1
  421. package/dist/rating-group/examples/basic.html +9 -9
  422. package/dist/rating-group/examples/basic.html.js +5 -0
  423. package/dist/rating-group/examples/movie.html +11 -11
  424. package/dist/rating-group/examples/movie.html.js +5 -0
  425. package/dist/rating-group/examples/product-review.html +13 -13
  426. package/dist/rating-group/examples/product-review.html.js +5 -0
  427. package/dist/rating-group/examples/service-evaluation.html +5 -5
  428. package/dist/rating-group/examples/service-evaluation.html.js +5 -0
  429. package/dist/rating-group/rating-group.events.d.ts +2 -3
  430. package/dist/rating-group/rating-group.machine.d.ts +2 -3
  431. package/dist/rating-group/rating-group.machine.js +1 -1
  432. package/dist/rating-group/rating-group.presentation.d.ts +6 -7
  433. package/dist/rating-group/rating-group.presentation.js +2 -2
  434. package/dist/rating-group/rating-group.state.d.ts +1 -2
  435. package/dist/rating-group/rating-group.state.js +1 -1
  436. package/dist/rating-group/rating-group.transitions.d.ts +3 -4
  437. package/dist/react/react.d.ts +2 -3
  438. package/dist/runtime/actions/action.d.ts +64 -0
  439. package/dist/runtime/actions/action.js +45 -0
  440. package/dist/runtime/actions/anchor.d.ts +43 -0
  441. package/dist/runtime/actions/anchor.js +127 -0
  442. package/dist/runtime/actions/date-picker-focus.d.ts +19 -0
  443. package/dist/runtime/actions/date-picker-focus.js +16 -0
  444. package/dist/runtime/actions/drag.d.ts +66 -0
  445. package/dist/runtime/actions/drag.js +118 -0
  446. package/dist/runtime/actions/form-control.d.ts +18 -0
  447. package/dist/runtime/actions/form-control.js +41 -0
  448. package/dist/runtime/actions/hover-delay.d.ts +26 -0
  449. package/dist/runtime/actions/hover-delay.js +61 -0
  450. package/dist/runtime/actions/index.d.ts +113 -0
  451. package/dist/runtime/actions/index.js +240 -0
  452. package/dist/runtime/actions/infinite-scroll.d.ts +22 -0
  453. package/dist/runtime/actions/infinite-scroll.js +33 -0
  454. package/dist/runtime/actions/interact-outside.d.ts +43 -0
  455. package/dist/runtime/actions/interact-outside.js +72 -0
  456. package/dist/runtime/actions/observe.d.ts +27 -0
  457. package/dist/runtime/actions/observe.js +25 -0
  458. package/dist/runtime/actions/scroll-into-view.d.ts +32 -0
  459. package/dist/runtime/actions/scroll-into-view.js +36 -0
  460. package/dist/runtime/actions/select-focus.d.ts +17 -0
  461. package/dist/runtime/actions/select-focus.js +16 -0
  462. package/dist/runtime/actions/select-options.d.ts +25 -0
  463. package/dist/runtime/actions/select-options.js +27 -0
  464. package/dist/runtime/actions/toast-actions.d.ts +65 -0
  465. package/dist/runtime/actions/toast-actions.js +143 -0
  466. package/dist/runtime/aria.d.ts +231 -0
  467. package/dist/runtime/aria.js +193 -0
  468. package/dist/runtime/component/define.d.ts +242 -0
  469. package/dist/runtime/component/define.js +12 -0
  470. package/dist/runtime/component/ids.d.ts +14 -0
  471. package/dist/runtime/component/ids.js +35 -0
  472. package/dist/runtime/component/synthesize.d.ts +32 -0
  473. package/dist/runtime/component/synthesize.js +385 -0
  474. package/dist/runtime/core/signal.d.ts +57 -0
  475. package/dist/runtime/core/signal.js +100 -0
  476. package/dist/runtime/core/style.d.ts +14 -0
  477. package/dist/runtime/core/style.js +31 -0
  478. package/dist/runtime/directives/bind.d.ts +38 -0
  479. package/dist/runtime/directives/bind.js +244 -0
  480. package/dist/runtime/directives/for.d.ts +12 -0
  481. package/dist/runtime/directives/for.js +104 -0
  482. package/dist/runtime/directives/if.d.ts +10 -0
  483. package/dist/runtime/directives/if.js +45 -0
  484. package/dist/runtime/directives/load.d.ts +13 -0
  485. package/dist/runtime/directives/load.js +119 -0
  486. package/dist/runtime/directives/spread.d.ts +17 -0
  487. package/dist/runtime/directives/spread.js +121 -0
  488. package/dist/runtime/directives/tpl.d.ts +11 -0
  489. package/dist/runtime/directives/tpl.js +39 -0
  490. package/dist/runtime/directives/use.d.ts +13 -0
  491. package/dist/runtime/directives/use.js +34 -0
  492. package/dist/runtime/index.d.ts +101 -0
  493. package/dist/runtime/index.js +40 -0
  494. package/dist/runtime/machine/fsm/machine.d.ts +192 -0
  495. package/dist/runtime/machine/fsm/machine.js +248 -0
  496. package/dist/runtime/math/index.d.ts +2 -0
  497. package/dist/runtime/math/index.js +1 -0
  498. package/dist/runtime/math/numbers.d.ts +58 -0
  499. package/dist/runtime/math/numbers.js +115 -0
  500. package/dist/runtime/props.d.ts +61 -0
  501. package/dist/runtime/props.js +113 -0
  502. package/dist/runtime/scope/element.d.ts +86 -0
  503. package/dist/runtime/scope/element.js +226 -0
  504. package/dist/runtime/scope/table.d.ts +55 -0
  505. package/dist/runtime/scope/table.js +174 -0
  506. package/dist/runtime/syntax/braces.d.ts +2 -0
  507. package/dist/runtime/syntax/braces.js +35 -0
  508. package/dist/runtime/syntax/classes.d.ts +22 -0
  509. package/dist/runtime/syntax/classes.js +119 -0
  510. package/dist/runtime/syntax/display.d.ts +25 -0
  511. package/dist/runtime/syntax/display.js +344 -0
  512. package/dist/runtime/syntax/expand-groups.d.ts +12 -0
  513. package/dist/runtime/syntax/expand-groups.js +31 -0
  514. package/dist/runtime/syntax/ir.d.ts +76 -0
  515. package/dist/runtime/syntax/ir.js +11 -0
  516. package/dist/runtime/syntax/parse.d.ts +2 -0
  517. package/dist/runtime/syntax/parse.js +407 -0
  518. package/dist/runtime/syntax/script-block.d.ts +43 -0
  519. package/dist/runtime/syntax/script-block.js +190 -0
  520. package/dist/runtime/testing.d.ts +11 -0
  521. package/dist/runtime/testing.js +1 -0
  522. package/dist/select/examples/basic.html +9 -9
  523. package/dist/select/examples/basic.html.js +5 -0
  524. package/dist/select/examples/category.html +10 -10
  525. package/dist/select/examples/category.html.js +5 -0
  526. package/dist/select/examples/country.html +10 -10
  527. package/dist/select/examples/country.html.js +5 -0
  528. package/dist/select/examples/language.html.js +5 -0
  529. package/dist/select/examples/multiple.html.js +5 -0
  530. package/dist/select/examples/profile.html +10 -10
  531. package/dist/select/examples/profile.html.js +5 -0
  532. package/dist/select/examples/theme.html.js +5 -0
  533. package/dist/select/examples/with-overlapping-label.html +8 -8
  534. package/dist/select/examples/with-overlapping-label.html.js +5 -0
  535. package/dist/select/select.events.d.ts +2 -3
  536. package/dist/select/select.machine.d.ts +2 -3
  537. package/dist/select/select.machine.js +1 -1
  538. package/dist/select/select.presentation.d.ts +16 -20
  539. package/dist/select/select.presentation.js +6 -6
  540. package/dist/select/select.shared.d.ts +1 -2
  541. package/dist/select/select.state.d.ts +1 -2
  542. package/dist/select/select.state.js +1 -1
  543. package/dist/select/select.transitions.d.ts +2 -3
  544. package/dist/shared/keyboard.d.ts +1 -2
  545. package/dist/signature-pad/examples/basic.html +3 -3
  546. package/dist/signature-pad/examples/basic.html.js +5 -0
  547. package/dist/signature-pad/examples/contract.html +7 -7
  548. package/dist/signature-pad/examples/contract.html.js +5 -0
  549. package/dist/signature-pad/examples/receipt.html +8 -8
  550. package/dist/signature-pad/examples/receipt.html.js +5 -0
  551. package/dist/signature-pad/examples/with-preview.html +6 -6
  552. package/dist/signature-pad/examples/with-preview.html.js +5 -0
  553. package/dist/signature-pad/signature-pad.events.d.ts +2 -3
  554. package/dist/signature-pad/signature-pad.machine.d.ts +4 -4
  555. package/dist/signature-pad/signature-pad.machine.js +2 -2
  556. package/dist/signature-pad/signature-pad.presentation.d.ts +10 -11
  557. package/dist/signature-pad/signature-pad.presentation.js +2 -2
  558. package/dist/signature-pad/signature-pad.state.d.ts +1 -2
  559. package/dist/signature-pad/signature-pad.state.js +1 -1
  560. package/dist/signature-pad/signature-pad.transitions.d.ts +3 -4
  561. package/dist/slider/examples/basic.html +1 -1
  562. package/dist/slider/examples/basic.html.js +5 -0
  563. package/dist/slider/examples/equalizer.html +13 -13
  564. package/dist/slider/examples/equalizer.html.js +5 -0
  565. package/dist/slider/examples/fractional.html.js +5 -0
  566. package/dist/slider/examples/marks.html +2 -2
  567. package/dist/slider/examples/marks.html.js +5 -0
  568. package/dist/slider/examples/range.html +1 -1
  569. package/dist/slider/examples/range.html.js +5 -0
  570. package/dist/slider/examples/stepped.html.js +5 -0
  571. package/dist/slider/examples/ticks.html +2 -2
  572. package/dist/slider/examples/ticks.html.js +5 -0
  573. package/dist/slider/examples/vertical.html.js +5 -0
  574. package/dist/slider/slider.events.d.ts +2 -3
  575. package/dist/slider/slider.machine.d.ts +3 -3
  576. package/dist/slider/slider.machine.js +2 -2
  577. package/dist/slider/slider.presentation.d.ts +7 -8
  578. package/dist/slider/slider.presentation.js +2 -2
  579. package/dist/slider/slider.state.d.ts +1 -2
  580. package/dist/slider/slider.state.js +1 -1
  581. package/dist/slider/slider.transitions.d.ts +3 -4
  582. package/dist/slider/slider.transitions.js +1 -1
  583. package/dist/solid/solid.d.ts +2 -3
  584. package/dist/spin-element.d.ts +1 -2
  585. package/dist/spin-element.js +1 -1
  586. package/dist/splitter/examples/basic.html +2 -2
  587. package/dist/splitter/examples/basic.html.js +5 -0
  588. package/dist/splitter/examples/nested.html +4 -4
  589. package/dist/splitter/examples/nested.html.js +5 -0
  590. package/dist/splitter/examples/threepanels.html +2 -2
  591. package/dist/splitter/examples/threepanels.html.js +5 -0
  592. package/dist/splitter/examples/vertical.html +2 -2
  593. package/dist/splitter/examples/vertical.html.js +5 -0
  594. package/dist/splitter/splitter.events.d.ts +2 -3
  595. package/dist/splitter/splitter.machine.d.ts +2 -3
  596. package/dist/splitter/splitter.machine.js +1 -1
  597. package/dist/splitter/splitter.presentation.d.ts +5 -6
  598. package/dist/splitter/splitter.presentation.js +1 -1
  599. package/dist/splitter/splitter.state.d.ts +1 -2
  600. package/dist/splitter/splitter.state.js +1 -1
  601. package/dist/splitter/splitter.transitions.d.ts +2 -3
  602. package/dist/steps/examples/basic.html +5 -5
  603. package/dist/steps/examples/basic.html.js +5 -0
  604. package/dist/steps/examples/checkmarks.html +4 -4
  605. package/dist/steps/examples/checkmarks.html.js +5 -0
  606. package/dist/steps/examples/content.html +5 -5
  607. package/dist/steps/examples/content.html.js +5 -0
  608. package/dist/steps/examples/descriptions.html +2 -2
  609. package/dist/steps/examples/descriptions.html.js +5 -0
  610. package/dist/steps/examples/icons.html +2 -2
  611. package/dist/steps/examples/icons.html.js +5 -0
  612. package/dist/steps/examples/lines.html +2 -2
  613. package/dist/steps/examples/lines.html.js +5 -0
  614. package/dist/steps/examples/navigation.html +4 -4
  615. package/dist/steps/examples/navigation.html.js +5 -0
  616. package/dist/steps/examples/onboarding.html +4 -4
  617. package/dist/steps/examples/onboarding.html.js +5 -0
  618. package/dist/steps/examples/progress.html +3 -3
  619. package/dist/steps/examples/progress.html.js +5 -0
  620. package/dist/steps/examples/segmented.html +6 -6
  621. package/dist/steps/examples/segmented.html.js +5 -0
  622. package/dist/steps/examples/vertical.html +5 -5
  623. package/dist/steps/examples/vertical.html.js +5 -0
  624. package/dist/steps/examples/verticallabels.html +2 -2
  625. package/dist/steps/examples/verticallabels.html.js +5 -0
  626. package/dist/steps/examples/verticalnavigation.html +2 -2
  627. package/dist/steps/examples/verticalnavigation.html.js +5 -0
  628. package/dist/steps/steps.events.d.ts +2 -3
  629. package/dist/steps/steps.machine.d.ts +3 -3
  630. package/dist/steps/steps.machine.js +1 -1
  631. package/dist/steps/steps.presentation.d.ts +4 -5
  632. package/dist/steps/steps.presentation.js +1 -1
  633. package/dist/steps/steps.state.d.ts +1 -2
  634. package/dist/steps/steps.state.js +1 -1
  635. package/dist/steps/steps.transitions.d.ts +3 -4
  636. package/dist/tabs/examples/basic.html +2 -2
  637. package/dist/tabs/examples/basic.html.js +5 -0
  638. package/dist/tabs/examples/dashboard.html +42 -42
  639. package/dist/tabs/examples/dashboard.html.js +5 -0
  640. package/dist/tabs/examples/ghost.html +2 -2
  641. package/dist/tabs/examples/ghost.html.js +5 -0
  642. package/dist/tabs/examples/icon-above.html +6 -6
  643. package/dist/tabs/examples/icon-above.html.js +5 -0
  644. package/dist/tabs/examples/icon-only.html +3 -3
  645. package/dist/tabs/examples/icon-only.html.js +5 -0
  646. package/dist/tabs/examples/outline-with-icons.html +6 -6
  647. package/dist/tabs/examples/outline-with-icons.html.js +5 -0
  648. package/dist/tabs/examples/outline.html +3 -3
  649. package/dist/tabs/examples/outline.html.js +5 -0
  650. package/dist/tabs/examples/pills.html +2 -2
  651. package/dist/tabs/examples/pills.html.js +5 -0
  652. package/dist/tabs/examples/project.html +33 -33
  653. package/dist/tabs/examples/project.html.js +5 -0
  654. package/dist/tabs/examples/settings.html +35 -35
  655. package/dist/tabs/examples/settings.html.js +5 -0
  656. package/dist/tabs/examples/stack-with-icons.html +7 -7
  657. package/dist/tabs/examples/stack-with-icons.html.js +5 -0
  658. package/dist/tabs/examples/stack.html +3 -3
  659. package/dist/tabs/examples/stack.html.js +5 -0
  660. package/dist/tabs/examples/underline.html +3 -3
  661. package/dist/tabs/examples/underline.html.js +5 -0
  662. package/dist/tabs/examples/vertical-ghost.html +3 -3
  663. package/dist/tabs/examples/vertical-ghost.html.js +5 -0
  664. package/dist/tabs/examples/vertical-icons.html +5 -5
  665. package/dist/tabs/examples/vertical-icons.html.js +5 -0
  666. package/dist/tabs/examples/vertical-underline.html +4 -4
  667. package/dist/tabs/examples/vertical-underline.html.js +5 -0
  668. package/dist/tabs/examples/vertical-with-icons.html +6 -6
  669. package/dist/tabs/examples/vertical-with-icons.html.js +5 -0
  670. package/dist/tabs/examples/vertical.html +2 -2
  671. package/dist/tabs/examples/vertical.html.js +5 -0
  672. package/dist/tabs/examples/with-badges.html +3 -3
  673. package/dist/tabs/examples/with-badges.html.js +5 -0
  674. package/dist/tabs/examples/with-icons.html +4 -4
  675. package/dist/tabs/examples/with-icons.html.js +5 -0
  676. package/dist/tabs/tabs.events.d.ts +2 -3
  677. package/dist/tabs/tabs.machine.d.ts +3 -3
  678. package/dist/tabs/tabs.machine.js +1 -1
  679. package/dist/tabs/tabs.presentation.d.ts +6 -7
  680. package/dist/tabs/tabs.presentation.js +1 -1
  681. package/dist/tabs/tabs.state.d.ts +1 -2
  682. package/dist/tabs/tabs.state.js +1 -1
  683. package/dist/tabs/tabs.transitions.d.ts +3 -4
  684. package/dist/tags-input/examples/basic.html +9 -9
  685. package/dist/tags-input/examples/basic.html.js +5 -0
  686. package/dist/tags-input/examples/with-combobox.html +14 -14
  687. package/dist/tags-input/examples/with-combobox.html.js +5 -0
  688. package/dist/tags-input/tags.events.d.ts +2 -3
  689. package/dist/tags-input/tags.machine.d.ts +6 -4
  690. package/dist/tags-input/tags.machine.js +2 -2
  691. package/dist/tags-input/tags.presentation.d.ts +6 -7
  692. package/dist/tags-input/tags.presentation.js +1 -1
  693. package/dist/tags-input/tags.state.d.ts +1 -2
  694. package/dist/tags-input/tags.state.js +2 -2
  695. package/dist/tags-input/tags.transitions.d.ts +2 -3
  696. package/dist/theme-picker/examples/basic.html +6 -6
  697. package/dist/theme-picker/examples/basic.html.js +5 -0
  698. package/dist/theme-picker/examples/cards.html +4 -4
  699. package/dist/theme-picker/examples/cards.html.js +5 -0
  700. package/dist/theme-picker/examples/compact.html +3 -3
  701. package/dist/theme-picker/examples/compact.html.js +5 -0
  702. package/dist/theme-picker/examples/swatches.html +2 -2
  703. package/dist/theme-picker/examples/swatches.html.js +5 -0
  704. package/dist/theme-picker/theme-picker.events.d.ts +2 -3
  705. package/dist/theme-picker/theme-picker.machine.d.ts +3 -3
  706. package/dist/theme-picker/theme-picker.machine.js +1 -1
  707. package/dist/theme-picker/theme-picker.presentation.d.ts +9 -10
  708. package/dist/theme-picker/theme-picker.presentation.js +2 -2
  709. package/dist/theme-picker/theme-picker.state.d.ts +1 -2
  710. package/dist/theme-picker/theme-picker.transitions.d.ts +3 -4
  711. package/dist/timer/examples/basic.html +1 -1
  712. package/dist/timer/examples/basic.html.js +5 -0
  713. package/dist/timer/examples/card.html +4 -4
  714. package/dist/timer/examples/card.html.js +5 -0
  715. package/dist/timer/examples/compact.html +5 -5
  716. package/dist/timer/examples/compact.html.js +5 -0
  717. package/dist/timer/examples/countdown.html +3 -3
  718. package/dist/timer/examples/countdown.html.js +5 -0
  719. package/dist/timer/examples/labels.html +3 -3
  720. package/dist/timer/examples/labels.html.js +5 -0
  721. package/dist/timer/examples/large.html +2 -2
  722. package/dist/timer/examples/large.html.js +5 -0
  723. package/dist/timer/examples/minimal.html +1 -1
  724. package/dist/timer/examples/minimal.html.js +5 -0
  725. package/dist/timer/examples/pomodoro.html +3 -3
  726. package/dist/timer/examples/pomodoro.html.js +5 -0
  727. package/dist/timer/examples/workout.html +4 -4
  728. package/dist/timer/examples/workout.html.js +5 -0
  729. package/dist/timer/timer.events.d.ts +2 -3
  730. package/dist/timer/timer.machine.d.ts +2 -3
  731. package/dist/timer/timer.machine.js +1 -1
  732. package/dist/timer/timer.presentation.d.ts +7 -8
  733. package/dist/timer/timer.presentation.js +1 -1
  734. package/dist/timer/timer.state.d.ts +1 -2
  735. package/dist/timer/timer.state.js +1 -1
  736. package/dist/timer/timer.transitions.d.ts +2 -3
  737. package/dist/toast/examples/action.html +3 -3
  738. package/dist/toast/examples/action.html.js +5 -0
  739. package/dist/toast/examples/basic.html +3 -3
  740. package/dist/toast/examples/basic.html.js +5 -0
  741. package/dist/toast/examples/bottomcenter.html +3 -3
  742. package/dist/toast/examples/bottomcenter.html.js +5 -0
  743. package/dist/toast/examples/bottomleft.html +3 -3
  744. package/dist/toast/examples/bottomleft.html.js +5 -0
  745. package/dist/toast/examples/bottomright.html +3 -3
  746. package/dist/toast/examples/bottomright.html.js +5 -0
  747. package/dist/toast/examples/duration.html +3 -3
  748. package/dist/toast/examples/duration.html.js +5 -0
  749. package/dist/toast/examples/promise.html +6 -6
  750. package/dist/toast/examples/promise.html.js +5 -0
  751. package/dist/toast/examples/topcenter.html +3 -3
  752. package/dist/toast/examples/topcenter.html.js +5 -0
  753. package/dist/toast/examples/topleft.html +3 -3
  754. package/dist/toast/examples/topleft.html.js +5 -0
  755. package/dist/toast/examples/topright.html +3 -3
  756. package/dist/toast/examples/topright.html.js +5 -0
  757. package/dist/toast/examples/types.html +3 -3
  758. package/dist/toast/examples/types.html.js +5 -0
  759. package/dist/toast/examples/updatable.html.js +5 -0
  760. package/dist/toast/toast.events.d.ts +2 -3
  761. package/dist/toast/toast.machine.d.ts +4 -4
  762. package/dist/toast/toast.machine.js +1 -1
  763. package/dist/toast/toast.presentation.d.ts +5 -6
  764. package/dist/toast/toast.presentation.js +1 -1
  765. package/dist/toast/toast.state.d.ts +1 -2
  766. package/dist/toast/toast.state.js +3 -3
  767. package/dist/toast/toast.transitions.d.ts +3 -4
  768. package/dist/toc/examples/basic.html +31 -0
  769. package/dist/toc/examples/basic.html.js +5 -0
  770. package/dist/toc/toc.events.d.ts +19 -0
  771. package/dist/toc/toc.events.js +1 -0
  772. package/dist/toc/toc.machine.d.ts +5 -0
  773. package/dist/toc/toc.machine.js +59 -0
  774. package/dist/toc/toc.presentation.d.ts +127 -0
  775. package/dist/toc/toc.presentation.js +117 -0
  776. package/dist/toc/toc.state.d.ts +41 -0
  777. package/dist/toc/toc.state.js +64 -0
  778. package/dist/toc/toc.transitions.d.ts +8 -0
  779. package/dist/toc/toc.transitions.js +27 -0
  780. package/dist/toggle-group/examples/basic.html +2 -2
  781. package/dist/toggle-group/examples/basic.html.js +5 -0
  782. package/dist/toggle-group/examples/ghost.html +1 -1
  783. package/dist/toggle-group/examples/ghost.html.js +5 -0
  784. package/dist/toggle-group/examples/icons.html +3 -3
  785. package/dist/toggle-group/examples/icons.html.js +5 -0
  786. package/dist/toggle-group/examples/multiple.html.js +5 -0
  787. package/dist/toggle-group/examples/outline.html +2 -2
  788. package/dist/toggle-group/examples/outline.html.js +5 -0
  789. package/dist/toggle-group/examples/toolbar.html +3 -3
  790. package/dist/toggle-group/examples/toolbar.html.js +5 -0
  791. package/dist/toggle-group/toggle-group.events.d.ts +2 -3
  792. package/dist/toggle-group/toggle-group.machine.d.ts +3 -3
  793. package/dist/toggle-group/toggle-group.machine.js +1 -1
  794. package/dist/toggle-group/toggle-group.presentation.d.ts +6 -7
  795. package/dist/toggle-group/toggle-group.presentation.js +2 -2
  796. package/dist/toggle-group/toggle-group.state.d.ts +1 -2
  797. package/dist/toggle-group/toggle-group.state.js +1 -1
  798. package/dist/toggle-group/toggle-group.transitions.d.ts +3 -4
  799. package/dist/tooltip/examples/basic.html.js +5 -0
  800. package/dist/tooltip/examples/metrics.html +9 -9
  801. package/dist/tooltip/examples/metrics.html.js +5 -0
  802. package/dist/tooltip/examples/positioning.html +4 -4
  803. package/dist/tooltip/examples/positioning.html.js +5 -0
  804. package/dist/tooltip/examples/status.html +10 -10
  805. package/dist/tooltip/examples/status.html.js +5 -0
  806. package/dist/tooltip/examples/video.html +6 -6
  807. package/dist/tooltip/examples/video.html.js +5 -0
  808. package/dist/tooltip/examples/with-arrow.html +1 -1
  809. package/dist/tooltip/examples/with-arrow.html.js +5 -0
  810. package/dist/tooltip/tooltip.controller-def.d.ts +3 -5
  811. package/dist/tooltip/tooltip.controller-def.js +1 -1
  812. package/dist/tour/examples/basic.html +5 -5
  813. package/dist/tour/examples/basic.html.js +5 -0
  814. package/dist/tour/tour.events.d.ts +2 -3
  815. package/dist/tour/tour.machine.d.ts +7 -3
  816. package/dist/tour/tour.machine.js +1 -1
  817. package/dist/tour/tour.presentation.d.ts +6 -7
  818. package/dist/tour/tour.presentation.js +1 -1
  819. package/dist/tour/tour.state.d.ts +1 -2
  820. package/dist/tour/tour.state.js +1 -1
  821. package/dist/tour/tour.transitions.d.ts +3 -4
  822. package/dist/tree-view/examples/basic.html +10 -10
  823. package/dist/tree-view/examples/basic.html.js +5 -0
  824. package/dist/tree-view/examples/loading.html +11 -11
  825. package/dist/tree-view/examples/loading.html.js +5 -0
  826. package/dist/tree-view/tree-view.events.d.ts +2 -3
  827. package/dist/tree-view/tree-view.machine.d.ts +2 -3
  828. package/dist/tree-view/tree-view.machine.js +1 -1
  829. package/dist/tree-view/tree-view.presentation.d.ts +9 -10
  830. package/dist/tree-view/tree-view.presentation.js +2 -2
  831. package/dist/tree-view/tree-view.state.d.ts +1 -2
  832. package/dist/tree-view/tree-view.state.js +1 -1
  833. package/dist/tree-view/tree-view.transitions.d.ts +3 -4
  834. package/package.json +43 -8
@@ -19,56 +19,58 @@ const machine = menu({
19
19
  class="secondary s-sm inline-flex items-center gap-3"
20
20
  {...machine.getTriggerProps()}>
21
21
  <span aria-hidden="true"
22
- class="grid h-6 w-6 shrink-0 place-items-center rounded-full bg-primary text-xs font-semibold text-on-primary">PR</span>
22
+ class="grid h-6 w-6 shrink-0 place-items-center rounded-full bg-primary type-caption-emphasized text-on-primary">PR</span>
23
23
  <span class="truncate">Priya Raman</span>
24
24
  <span aria-hidden="true"
25
- class={["text-xs text-text-muted transition-transform duration-fast ease-decelerate", { "rotate-180": machine.isOpen }]}
26
- {...machine.getTriggerIndicatorProps()}><span class="inline-block i-lucide-chevron-down text-xs" aria-hidden="true"></span></span>
25
+ class={["type-caption text-muted transition-transform duration-fast ease-decelerate", { "rotate-180": machine.isOpen }]}
26
+ {...machine.getTriggerIndicatorProps()}><span class="inline-block i-lucide-chevron-down type-caption" aria-hidden="true"></span></span>
27
27
  </button>
28
28
  </div>
29
29
  <div {...machine.getPositionerProps()}>
30
30
  <panel {...machine.getContentProps()}>
31
- <div class="px-3 py-2 border-b border-solid border-border">
32
- <div class="text-sm font-medium text-text">Priya Raman</div>
33
- <div class="text-xs text-text-muted">priya@lodestar.dev</div>
31
+ <div class="px-3 py-2 border-b">
32
+ <div class="type-label">Priya Raman</div>
33
+ <div class="type-caption text-muted">priya@lodestar.dev</div>
34
34
  </div>
35
35
  <template for={machine.getBlocks()} as={block} key={block.id}>
36
36
  <div class="py-1" {...machine.getItemGroupProps(block)}>
37
- <span show={block.label !== null} class="block px-2 pb-1 text-xs font-medium text-text-muted"
37
+ <span show={block.label !== null} class="block px-2 pb-1 type-caption-emphasized text-muted"
38
38
  {...machine.getItemGroupLabelProps(block)}>{block.label}</span>
39
39
  <template for={machine.getRows(block)} as={row} key={row.value}>
40
40
  <div
41
- class={["bare relative flex items-center gap-2 rounded-md px-2 py-1 text-sm transition-colors duration-fast cursor-default", { "opacity-50": row.disabled, "text-text": row.value !== "logout", "text-semantic-error": row.value === "logout" }]}
41
+ class={["bare relative flex items-center gap-2 rounded-md px-2 py-1 type-body transition-colors duration-fast cursor-default", { "opacity-50": row.disabled, "": row.value !== "logout", "text-semantic-error": row.value === "logout" }]}
42
42
  {...machine.getItemProps(row)}>
43
- <span class="shrink-0 text-xs text-text-muted"
44
- aria-hidden="true"><span class="inline-block i-lucide-circle-user-round text-xs" aria-hidden="true" show={row.value === "profile"}></span><span class="inline-block i-lucide-key-round text-xs" aria-hidden="true" show={row.value === "tokens"}></span><span class="inline-block i-lucide-credit-card text-xs" aria-hidden="true" show={row.value === "billing"}></span><span class="inline-block i-lucide-circle-question-mark text-xs" aria-hidden="true" show={row.value === "help"}></span><span class="inline-block i-lucide-log-out text-xs text-semantic-error" aria-hidden="true" show={row.value === "logout"}></span></span>
43
+ <span class="shrink-0 type-caption text-muted"
44
+ aria-hidden="true"><span class="inline-block i-lucide-circle-user-round type-caption" aria-hidden="true" show={row.value === "profile"}></span><span class="inline-block i-lucide-key-round type-caption" aria-hidden="true" show={row.value === "tokens"}></span><span class="inline-block i-lucide-credit-card type-caption" aria-hidden="true" show={row.value === "billing"}></span><span class="inline-block i-lucide-circle-question-mark type-caption" aria-hidden="true" show={row.value === "help"}></span><span class="inline-block i-lucide-log-out type-caption text-semantic-error" aria-hidden="true" show={row.value === "logout"}></span></span>
45
45
  <span class="min-w-0 flex-1 truncate"
46
46
  {...machine.getItemTextProps(row)}>{row.label}</span>
47
- <span class="shrink-0 text-xs text-text-muted"
47
+ <span class="shrink-0 type-caption text-muted"
48
48
  {...machine.getItemShortcutProps(row)}>{row.shortcut}</span>
49
49
  <span aria-hidden="true"
50
50
  class={["shrink-0 text-primary transition-transform duration-fast ease-decelerate scale-50 opacity-0", { "scale-100 opacity-100": row.checked }]}
51
- {...machine.getItemIndicatorProps(row)}><span class="inline-block i-lucide-check text-xs" aria-hidden="true"></span></span>
51
+ {...machine.getItemIndicatorProps(row)}><span class="inline-block i-lucide-check type-caption" aria-hidden="true"></span></span>
52
52
  <span aria-hidden="true"
53
- class={["shrink-0 text-xs text-text-muted transition-transform duration-fast ease-decelerate", { "rotate-90": machine.openSubmenu === row.value }]}
54
- {...machine.getItemSubmenuIndicatorProps(row)}><span class="inline-block i-lucide-chevron-right text-xs" aria-hidden="true"></span></span>
55
- <panel show={machine.openSubmenu === row.value}
53
+ class={["shrink-0 type-caption text-muted transition-transform duration-fast ease-decelerate", { "rotate-90": machine.openSubmenu === row.value }]}
54
+ {...machine.getItemSubmenuIndicatorProps(row)}><span class="inline-block i-lucide-chevron-right type-caption" aria-hidden="true"></span></span>
55
+ <panel
56
+ class="absolute start-full top-0 ms-2 min-w-40"
57
+ show={machine.openSubmenu === row.value}
56
58
  {...machine.getSubmenuContentProps(row)}>
57
59
  <template for={machine.getSubmenuBlocks(row)} as={sub} key={sub.id}>
58
60
  <div class="py-1" {...machine.getItemGroupProps(sub)}>
59
- <span show={sub.label !== null} class="block px-2 pb-1 text-xs font-medium text-text-muted"
61
+ <span show={sub.label !== null} class="block px-2 pb-1 type-caption-emphasized text-muted"
60
62
  {...machine.getItemGroupLabelProps(sub)}>{sub.label}</span>
61
63
  <template for={machine.getRows(sub)} as={child} key={child.value}>
62
64
  <div
63
- class={["bare relative flex items-center gap-2 rounded-md px-2 py-1 text-sm text-text transition-colors duration-fast cursor-default", { "opacity-50": child.disabled }]}
65
+ class={["bare relative flex items-center gap-2 rounded-md px-2 py-1 type-body transition-colors duration-fast cursor-default", { "opacity-50": child.disabled }]}
64
66
  {...machine.getSubmenuItemProps(child)}>
65
67
  <span class="min-w-0 flex-1 truncate"
66
68
  {...machine.getItemTextProps(child)}>{child.label}</span>
67
- <span class="shrink-0 text-xs text-text-muted"
69
+ <span class="shrink-0 type-caption text-muted"
68
70
  {...machine.getItemShortcutProps(child)}>{child.shortcut}</span>
69
71
  <span aria-hidden="true"
70
72
  class={["shrink-0 text-primary transition-transform duration-fast ease-decelerate scale-50 opacity-0", { "scale-100 opacity-100": child.checked }]}
71
- {...machine.getItemIndicatorProps(child)}><span class="inline-block i-lucide-check text-xs" aria-hidden="true"></span></span>
73
+ {...machine.getItemIndicatorProps(child)}><span class="inline-block i-lucide-check type-caption" aria-hidden="true"></span></span>
72
74
  </div>
73
75
  </template>
74
76
  </div>
@@ -0,0 +1,5 @@
1
+ // src/menu/examples/user.html
2
+ var user_default = "<script lang=\"ts\">\nimport { menu } from \"../menu.presentation.ts\";\n\nconst machine = menu({\n items: [\n { value: \"profile\", label: \"Profile\" },\n { value: \"tokens\", label: \"API tokens\" },\n { value: \"billing\", label: \"Billing\" },\n { separator: true },\n { value: \"help\", label: \"Help & Support\" },\n { separator: true },\n { value: \"logout\", label: \"Log out\" },\n ],\n});\n<\/script>\n<div class=\"relative inline-block\">\n <div class=\"relative\" {...machine.getContextTriggerProps()}>\n <button\n class=\"secondary s-sm inline-flex items-center gap-3\"\n {...machine.getTriggerProps()}>\n <span aria-hidden=\"true\"\n class=\"grid h-6 w-6 shrink-0 place-items-center rounded-full bg-primary type-caption-emphasized text-on-primary\">PR</span>\n <span class=\"truncate\">Priya Raman</span>\n <span aria-hidden=\"true\"\n class={[\"type-caption text-muted transition-transform duration-fast ease-decelerate\", { \"rotate-180\": machine.isOpen }]}\n {...machine.getTriggerIndicatorProps()}><span class=\"inline-block i-lucide-chevron-down type-caption\" aria-hidden=\"true\"></span></span>\n </button>\n </div>\n <div {...machine.getPositionerProps()}>\n <panel {...machine.getContentProps()}>\n <div class=\"px-3 py-2 border-b\">\n <div class=\"type-label\">Priya Raman</div>\n <div class=\"type-caption text-muted\">priya@lodestar.dev</div>\n </div>\n <template for={machine.getBlocks()} as={block} key={block.id}>\n <div class=\"py-1\" {...machine.getItemGroupProps(block)}>\n <span show={block.label !== null} class=\"block px-2 pb-1 type-caption-emphasized text-muted\"\n {...machine.getItemGroupLabelProps(block)}>{block.label}</span>\n <template for={machine.getRows(block)} as={row} key={row.value}>\n <div\n class={[\"bare relative flex items-center gap-2 rounded-md px-2 py-1 type-body transition-colors duration-fast cursor-default\", { \"opacity-50\": row.disabled, \"\": row.value !== \"logout\", \"text-semantic-error\": row.value === \"logout\" }]}\n {...machine.getItemProps(row)}>\n <span class=\"shrink-0 type-caption text-muted\"\n aria-hidden=\"true\"><span class=\"inline-block i-lucide-circle-user-round type-caption\" aria-hidden=\"true\" show={row.value === \"profile\"}></span><span class=\"inline-block i-lucide-key-round type-caption\" aria-hidden=\"true\" show={row.value === \"tokens\"}></span><span class=\"inline-block i-lucide-credit-card type-caption\" aria-hidden=\"true\" show={row.value === \"billing\"}></span><span class=\"inline-block i-lucide-circle-question-mark type-caption\" aria-hidden=\"true\" show={row.value === \"help\"}></span><span class=\"inline-block i-lucide-log-out type-caption text-semantic-error\" aria-hidden=\"true\" show={row.value === \"logout\"}></span></span>\n <span class=\"min-w-0 flex-1 truncate\"\n {...machine.getItemTextProps(row)}>{row.label}</span>\n <span class=\"shrink-0 type-caption text-muted\"\n {...machine.getItemShortcutProps(row)}>{row.shortcut}</span>\n <span aria-hidden=\"true\"\n class={[\"shrink-0 text-primary transition-transform duration-fast ease-decelerate scale-50 opacity-0\", { \"scale-100 opacity-100\": row.checked }]}\n {...machine.getItemIndicatorProps(row)}><span class=\"inline-block i-lucide-check type-caption\" aria-hidden=\"true\"></span></span>\n <span aria-hidden=\"true\"\n class={[\"shrink-0 type-caption text-muted transition-transform duration-fast ease-decelerate\", { \"rotate-90\": machine.openSubmenu === row.value }]}\n {...machine.getItemSubmenuIndicatorProps(row)}><span class=\"inline-block i-lucide-chevron-right type-caption\" aria-hidden=\"true\"></span></span>\n <panel\n class=\"absolute start-full top-0 ms-2 min-w-40\"\n show={machine.openSubmenu === row.value}\n {...machine.getSubmenuContentProps(row)}>\n <template for={machine.getSubmenuBlocks(row)} as={sub} key={sub.id}>\n <div class=\"py-1\" {...machine.getItemGroupProps(sub)}>\n <span show={sub.label !== null} class=\"block px-2 pb-1 type-caption-emphasized text-muted\"\n {...machine.getItemGroupLabelProps(sub)}>{sub.label}</span>\n <template for={machine.getRows(sub)} as={child} key={child.value}>\n <div\n class={[\"bare relative flex items-center gap-2 rounded-md px-2 py-1 type-body transition-colors duration-fast cursor-default\", { \"opacity-50\": child.disabled }]}\n {...machine.getSubmenuItemProps(child)}>\n <span class=\"min-w-0 flex-1 truncate\"\n {...machine.getItemTextProps(child)}>{child.label}</span>\n <span class=\"shrink-0 type-caption text-muted\"\n {...machine.getItemShortcutProps(child)}>{child.shortcut}</span>\n <span aria-hidden=\"true\"\n class={[\"shrink-0 text-primary transition-transform duration-fast ease-decelerate scale-50 opacity-0\", { \"scale-100 opacity-100\": child.checked }]}\n {...machine.getItemIndicatorProps(child)}><span class=\"inline-block i-lucide-check type-caption\" aria-hidden=\"true\"></span></span>\n </div>\n </template>\n </div>\n <hr show={sub.separator}\n {...machine.getSeparatorProps(sub)} />\n </template>\n </panel>\n </div>\n </template>\n </div>\n <hr show={block.separator}\n {...machine.getSeparatorProps(block)} />\n </template>\n </panel>\n </div>\n</div>\n";
3
+ export { user_default as default };
4
+
5
+ //# sourceMappingURL=user.html.js.map
@@ -1,5 +1,5 @@
1
1
  import { MenuEntry } from "./menu.state.js";
2
- import { EventUnion } from "@spinjs/runtime/fsm";
2
+ import { EventUnion } from "@spinjs/components/fsm";
3
3
  export interface MenuEvents {
4
4
  "OPEN": {};
5
5
  "CLOSE": {};
@@ -38,5 +38,4 @@ export interface MenuSelect {
38
38
  }
39
39
  export interface MenuHighlightChange {
40
40
  readonly highlightedValue: string | null;
41
- }
42
- //# sourceMappingURL=menu.events.d.ts.map
41
+ }
@@ -1,6 +1,5 @@
1
1
  import { MenuArgs, MenuContext, MenuState } from "./menu.state.js";
2
2
  import { MenuEvent, MenuEvents } from "./menu.events.js";
3
- import { Machine, Service } from "@spinjs/runtime/fsm";
3
+ import { Machine, Service } from "@spinjs/components/fsm";
4
4
  export type MenuService = Service<MenuContext, MenuEvent>;
5
- export declare function menu(args: MenuArgs | undefined, authored: (name: string) => boolean): Machine<MenuContext, MenuEvents, MenuState>;
6
- //# sourceMappingURL=menu.machine.d.ts.map
5
+ export declare function menu(args: MenuArgs | undefined, authored: (name: string) => boolean): Machine<MenuContext, MenuEvents, MenuState>;
@@ -1,5 +1,5 @@
1
1
  import { initial } from "./menu.state.js";
2
- import { createMachine } from "@spinjs/runtime/fsm";
2
+ import { createMachine } from "@spinjs/components/fsm";
3
3
  // src/menu/menu.machine.ts
4
4
  const clearAnchor = () => {
5
5
  return { anchorPoint: null };
@@ -1,6 +1,6 @@
1
1
  import { MenuArgs, MenuBlock, MenuContext, MenuRow, MenuState } from "./menu.state.js";
2
2
  import { MenuEvents } from "./menu.events.js";
3
- import { ApiOf, SlotViewFor, ViewFor } from "@spinjs/runtime";
3
+ import { ApiOf, SlotViewFor, ViewFor } from "@spinjs/components/runtime";
4
4
  /**
5
5
  * Menu bindings: the DOM contract as data. The machine owns open/closed,
6
6
  * the highlight, the anchor point and the open submenu on this level; this
@@ -16,7 +16,7 @@ type ScopeLike = ViewFor<MenuContext, MenuEvents, MenuState>;
16
16
  type SlotLike<R> = SlotViewFor<R, MenuContext, MenuEvents, MenuState>;
17
17
  export declare const def: {
18
18
  name: string;
19
- machine: (args: MenuArgs, authored: (name: string) => boolean) => import("@spinjs/runtime").Machine<MenuContext, MenuEvents, MenuState>;
19
+ machine: (args: MenuArgs, authored: (name: string) => boolean) => import("@spinjs/components/runtime").Machine<MenuContext, MenuEvents, MenuState>;
20
20
  start: (props: Record<string, unknown>, authored: (name: string) => boolean) => "open" | "closed";
21
21
  reconcile: ({ state, parsed, authored, send }: {
22
22
  readonly context: MenuContext;
@@ -136,7 +136,6 @@ export declare const def: {
136
136
  indexes: (context: MenuContext) => MenuRow[];
137
137
  attrs: (scope: SlotLike<MenuRow>) => {
138
138
  "data-state": string;
139
- class: string;
140
139
  "use:hover-delay": {
141
140
  closeDelay: number;
142
141
  onClose: () => void;
@@ -229,7 +228,7 @@ export declare const def: {
229
228
  };
230
229
  };
231
230
  settled: ({ event, focus }: {
232
- readonly event: import("@spinjs/runtime").AnyEvent;
231
+ readonly event: import("@spinjs/components/runtime").AnyEvent;
233
232
  readonly before: {
234
233
  readonly context: MenuContext;
235
234
  readonly state: MenuState;
@@ -243,10 +242,9 @@ export declare const def: {
243
242
  readonly id: (part: string, slot?: unknown) => string;
244
243
  readonly focus: (part: string, slot?: unknown) => void;
245
244
  readonly measure: (part: string, slot?: unknown) => DOMRect | null;
246
- readonly send: (event: import("@spinjs/runtime").AnyEvent) => void;
245
+ readonly send: (event: import("@spinjs/components/runtime").AnyEvent) => void;
247
246
  }) => void;
248
247
  };
249
248
  export type MenuApi = ApiOf<typeof def>;
250
- export declare const menu: import("@spinjs/runtime").DefinedComponent<MenuApi, MenuArgs>;
251
- export {};
252
- //# sourceMappingURL=menu.presentation.d.ts.map
249
+ export declare const menu: import("@spinjs/components/runtime").DefinedComponent<MenuApi, MenuArgs>;
250
+ export {};
@@ -1,7 +1,7 @@
1
1
  import { ROVING_KEYS } from "../shared/keyboard.js";
2
- import { entriesOf } from "./menu.state.js";
3
2
  import { menu as menu$1 } from "./menu.machine.js";
4
- import { ariaHidden, ariaLabelledBy, ariaOrientation, defineComponent, disclosureTrigger, listSurface, optionRow } from "@spinjs/runtime";
3
+ import { entriesOf } from "./menu.state.js";
4
+ import { ariaHidden, ariaLabelledBy, ariaOrientation, defineComponent, disclosureTrigger, listSurface, optionRow } from "@spinjs/components/runtime";
5
5
  // src/menu/menu.presentation.ts
6
6
  /** The trigger exclusion travels in the dismissable action's params
7
7
  * (excludeId/excludeParent) — no def-side DOM query. */
@@ -149,7 +149,7 @@ const rowHandlers = (scope, row) => {
149
149
  value: row.value
150
150
  });
151
151
  },
152
- onClick: (event) => {
152
+ onClick: () => {
153
153
  activate(scope, row);
154
154
  }
155
155
  };
@@ -175,7 +175,7 @@ const submenuRowHandlers = (scope, row) => {
175
175
  value: row.value
176
176
  });
177
177
  },
178
- onClick: (event) => {
178
+ onClick: () => {
179
179
  if (row.disabled) return;
180
180
  scope.send({
181
181
  type: "ITEM_CLICK",
@@ -612,7 +612,6 @@ const def = {
612
612
  slot: row.value
613
613
  }),
614
614
  "data-state": scope.context.openSubmenu === row.value ? "open" : "closed",
615
- class: "absolute start-full top-0 ms-2 min-w-40 rounded-lg border border-solid border-border bg-surface-raised p-1 shadow-lg",
616
615
  "use:hover-delay": {
617
616
  closeDelay: 250,
618
617
  onClose: () => {
@@ -50,5 +50,4 @@ export interface MenuContext {
50
50
  readonly entries: readonly MenuEntry[];
51
51
  }
52
52
  export declare function entriesOf(raw: unknown): readonly MenuEntry[];
53
- export declare function initial(args?: MenuArgs, _authored?: (name: string) => boolean): MenuContext;
54
- //# sourceMappingURL=menu.state.d.ts.map
53
+ export declare function initial(args?: MenuArgs, _authored?: (name: string) => boolean): MenuContext;
@@ -1,4 +1,4 @@
1
- import { coerceJsonArray, isRecord } from "@spinjs/runtime";
1
+ import { coerceJsonArray, isRecord } from "@spinjs/components/runtime";
2
2
  // src/menu/menu.state.ts
3
3
  function parseEntry(raw) {
4
4
  if (!isRecord(raw)) return void 0;
@@ -5,7 +5,7 @@ const machine = modePicker({ defaultValue: "system" });
5
5
  </script>
6
6
 
7
7
  <button
8
- class={["bare inline-flex items-center justify-center rounded-lg border border-solid border-border bg-surface p-1 text-sm text-text transition-colors hover:bg-surface-raised", { "opacity-50 cursor-not-allowed": machine.disabled }]}
8
+ class={["bare inline-flex h-8 w-8 items-center justify-center rounded-md border bg-surface p-0 transition-colors hover:bg-surface-raised", { "opacity-50 cursor-not-allowed": machine.disabled }]}
9
9
  {...machine.getTriggerProps()}
10
10
  >
11
11
  <span class="inline-flex h-4 w-4 items-center justify-center" {...machine.getIconProps()}>
@@ -0,0 +1,5 @@
1
+ // src/mode-picker/examples/basic.html
2
+ var basic_default = "<script lang=\"ts\">\nimport { modePicker } from \"../mode-picker.presentation.ts\";\n\nconst machine = modePicker({ defaultValue: \"system\" });\n<\/script>\n\n<button\n class={[\"bare inline-flex h-8 w-8 items-center justify-center rounded-md border bg-surface p-0 transition-colors hover:bg-surface-raised\", { \"opacity-50 cursor-not-allowed\": machine.disabled }]}\n {...machine.getTriggerProps()}\n>\n <span class=\"inline-flex h-4 w-4 items-center justify-center\" {...machine.getIconProps()}>\n <span class=\"inline-block i-lucide-sun icon-sm\" show={machine.singleMode ? machine.resolvedMode === \"light\" : machine.next === \"light\"}></span>\n <span class=\"inline-block i-lucide-moon icon-sm\" show={machine.singleMode ? machine.resolvedMode === \"dark\" : machine.next === \"dark\"}></span>\n <span class=\"inline-block i-lucide-monitor icon-sm\" show={!machine.singleMode && machine.next === \"system\"}></span>\n </span>\n <span class=\"sr-only\">{machine.label}</span>\n</button>\n";
3
+ export { basic_default as default };
4
+
5
+ //# sourceMappingURL=basic.html.js.map
@@ -5,7 +5,7 @@ const machine = modePicker({ hideWhenSingle: true, defaultValue: "system" });
5
5
  </script>
6
6
 
7
7
  <button
8
- class={["bare inline-flex h-8 w-8 items-center justify-center rounded-md text-text-muted transition-colors hover:bg-surface hover:text-text", { "opacity-50 cursor-not-allowed": machine.disabled }]}
8
+ class={["bare inline-flex h-8 w-8 items-center justify-center rounded-md text-muted transition-colors hover:bg-surface", { "opacity-50 cursor-not-allowed": machine.disabled }]}
9
9
  {...machine.getTriggerProps()}
10
10
  >
11
11
  <span class="inline-flex h-4 w-4 items-center justify-center" {...machine.getIconProps()}>
@@ -0,0 +1,5 @@
1
+ // src/mode-picker/examples/minimal.html
2
+ var minimal_default = "<script lang=\"ts\">\nimport { modePicker } from \"../mode-picker.presentation.ts\";\n\nconst machine = modePicker({ hideWhenSingle: true, defaultValue: \"system\" });\n<\/script>\n\n<button\n class={[\"bare inline-flex h-8 w-8 items-center justify-center rounded-md text-muted transition-colors hover:bg-surface\", { \"opacity-50 cursor-not-allowed\": machine.disabled }]}\n {...machine.getTriggerProps()}\n>\n <span class=\"inline-flex h-4 w-4 items-center justify-center\" {...machine.getIconProps()}>\n <span class=\"inline-block i-lucide-sun h-4 w-4\" show={machine.singleMode ? machine.resolvedMode === \"light\" : machine.next === \"light\"}></span>\n <span class=\"inline-block i-lucide-moon h-4 w-4\" show={machine.singleMode ? machine.resolvedMode === \"dark\" : machine.next === \"dark\"}></span>\n <span class=\"inline-block i-lucide-monitor h-4 w-4\" show={!machine.singleMode && machine.next === \"system\"}></span>\n </span>\n <span class=\"sr-only\">{machine.label}</span>\n</button>\n";
3
+ export { minimal_default as default };
4
+
5
+ //# sourceMappingURL=minimal.html.js.map
@@ -5,7 +5,7 @@ const machine = modePicker({ defaultValue: "system" });
5
5
  </script>
6
6
 
7
7
  <button
8
- class={["bare inline-flex items-center gap-2 rounded-full border border-solid border-border bg-surface px-3 py-1 text-sm text-text transition-colors hover:bg-surface-raised", { "opacity-50 cursor-not-allowed": machine.disabled }]}
8
+ class={["bare inline-flex items-center gap-2 rounded-full border bg-surface px-3 py-1 transition-colors hover:bg-surface-raised", { "opacity-50 cursor-not-allowed": machine.disabled }]}
9
9
  {...machine.getTriggerProps()}
10
10
  >
11
11
  <span class="inline-flex h-4 w-4 items-center justify-center" {...machine.getIconProps()}>
@@ -0,0 +1,5 @@
1
+ // src/mode-picker/examples/pill.html
2
+ var pill_default = "<script lang=\"ts\">\nimport { modePicker } from \"../mode-picker.presentation.ts\";\n\nconst machine = modePicker({ defaultValue: \"system\" });\n<\/script>\n\n<button\n class={[\"bare inline-flex items-center gap-2 rounded-full border bg-surface px-3 py-1 transition-colors hover:bg-surface-raised\", { \"opacity-50 cursor-not-allowed\": machine.disabled }]}\n {...machine.getTriggerProps()}\n>\n <span class=\"inline-flex h-4 w-4 items-center justify-center\" {...machine.getIconProps()}>\n <span class=\"inline-block i-lucide-sun h-4 w-4\" show={machine.singleMode ? machine.resolvedMode === \"light\" : machine.value === \"light\"}></span>\n <span class=\"inline-block i-lucide-moon h-4 w-4\" show={machine.singleMode ? machine.resolvedMode === \"dark\" : machine.value === \"dark\"}></span>\n <span class=\"inline-block i-lucide-monitor h-4 w-4\" show={!machine.singleMode && machine.value === \"system\"}></span>\n </span>\n <span {...machine.getLabelProps()}>{machine.singleMode ? machine.resolvedMode : machine.value}</span>\n</button>\n";
3
+ export { pill_default as default };
4
+
5
+ //# sourceMappingURL=pill.html.js.map
@@ -1,5 +1,5 @@
1
1
  import { ModeChoice, ResolvedMode } from "./mode-picker.state.js";
2
- import { EventUnion } from "@spinjs/runtime/fsm";
2
+ import { EventUnion } from "@spinjs/components/fsm";
3
3
  export interface ModePickerEvents {
4
4
  "CYCLE": {};
5
5
  "VALUE.SET": {
@@ -16,5 +16,4 @@ export type ModePickerEvent = EventUnion<ModePickerEvents>;
16
16
  export type ModePickerValueChange = {
17
17
  readonly value: ModeChoice;
18
18
  readonly resolvedMode: ResolvedMode;
19
- };
20
- //# sourceMappingURL=mode-picker.events.d.ts.map
19
+ };
@@ -1,5 +1,5 @@
1
+ /** Mode-picker machine: a single idle state cycling light → dark → system. */
1
2
  import { ModePickerArgs, ModePickerContext, ModePickerState } from "./mode-picker.state.js";
2
3
  import { ModePickerEvents } from "./mode-picker.events.js";
3
- import { Machine } from "@spinjs/runtime/fsm";
4
- export declare function modePicker(args?: ModePickerArgs, authored?: (name: string) => boolean): Machine<ModePickerContext, ModePickerEvents, ModePickerState>;
5
- //# sourceMappingURL=mode-picker.machine.d.ts.map
4
+ import { Machine } from "@spinjs/components/fsm";
5
+ export declare function modePicker(args?: ModePickerArgs, authored?: (name: string) => boolean): Machine<ModePickerContext, ModePickerEvents, ModePickerState>;
@@ -1,6 +1,6 @@
1
1
  import { initial } from "./mode-picker.state.js";
2
2
  import { canCycle, cycle, setModes, setSystem, setValue } from "./mode-picker.transitions.js";
3
- import { createMachine } from "@spinjs/runtime/fsm";
3
+ import { createMachine } from "@spinjs/components/fsm";
4
4
  // src/mode-picker/mode-picker.machine.ts
5
5
  /** Mode-picker machine: a single idle state cycling light → dark → system. */
6
6
  function modePicker(args = {}, authored = () => false) {
@@ -1,11 +1,11 @@
1
- import { ModeChoice, ModePickerArgs, ModePickerContext, ResolvedMode } from "./mode-picker.state.js";
2
1
  import { ModePickerEvents, ModePickerValueChange } from "./mode-picker.events.js";
3
- import { ApiOf, ViewFor } from "@spinjs/runtime";
2
+ import { ModeChoice, ModePickerArgs, ModePickerContext, ResolvedMode } from "./mode-picker.state.js";
3
+ import { ApiOf, ViewFor } from "@spinjs/components/runtime";
4
4
  type Ctx = ModePickerContext;
5
5
  type ScopeLike = ViewFor<ModePickerContext, ModePickerEvents, "idle">;
6
6
  export declare const def: {
7
7
  name: string;
8
- machine: (args: ModePickerArgs, authored: (name: string) => boolean) => import("@spinjs/runtime").Machine<ModePickerContext, ModePickerEvents, "idle">;
8
+ machine: (args: ModePickerArgs, authored: (name: string) => boolean) => import("@spinjs/components/runtime").Machine<ModePickerContext, ModePickerEvents, "idle">;
9
9
  start: "idle";
10
10
  scalars: string[];
11
11
  parts: {
@@ -106,7 +106,7 @@ export declare const def: {
106
106
  type: string;
107
107
  } & Record<string, unknown>)[];
108
108
  settled: ({ after, props, root, send }: {
109
- readonly event: import("@spinjs/runtime").AnyEvent;
109
+ readonly event: import("@spinjs/components/runtime").AnyEvent;
110
110
  readonly before: {
111
111
  readonly context: ModePickerContext;
112
112
  readonly state: "idle";
@@ -120,10 +120,9 @@ export declare const def: {
120
120
  readonly id: (part: string, slot?: unknown) => string;
121
121
  readonly focus: (part: string, slot?: unknown) => void;
122
122
  readonly measure: (part: string, slot?: unknown) => DOMRect | null;
123
- readonly send: (event: import("@spinjs/runtime").AnyEvent) => void;
123
+ readonly send: (event: import("@spinjs/components/runtime").AnyEvent) => void;
124
124
  }) => void;
125
125
  };
126
126
  export type ModePickerApi = ApiOf<typeof def>;
127
- export declare const modePicker: import("@spinjs/runtime").DefinedComponent<ModePickerApi, ModePickerArgs>;
128
- export type { ModeChoice, ModePickerArgs, ModePickerValueChange, ResolvedMode };
129
- //# sourceMappingURL=mode-picker.presentation.d.ts.map
127
+ export declare const modePicker: import("@spinjs/components/runtime").DefinedComponent<ModePickerApi, ModePickerArgs>;
128
+ export type { ModeChoice, ModePickerArgs, ModePickerValueChange, ResolvedMode };
@@ -1,6 +1,6 @@
1
- import { isSingleMode, nextModeChoice, readRuntimeModes, resolveEffectiveMode } from "./mode-picker.state.js";
2
1
  import { modePicker as modePicker$1 } from "./mode-picker.machine.js";
3
- import { ariaHidden, defineComponent } from "@spinjs/runtime";
2
+ import { isSingleMode, nextModeChoice, readRuntimeModes, resolveEffectiveMode } from "./mode-picker.state.js";
3
+ import { ariaHidden, defineComponent } from "@spinjs/components/runtime";
4
4
  // src/mode-picker/mode-picker.presentation.ts
5
5
  function readStored(storageKey) {
6
6
  try {
@@ -23,5 +23,4 @@ export declare function nextModeChoice(current: ModeChoice): ModeChoice;
23
23
  export declare function isSingleMode(modes: readonly string[]): boolean;
24
24
  export declare function resolveEffectiveMode(value: ModeChoice, modes: readonly string[], systemMode: ResolvedMode): ResolvedMode;
25
25
  export declare function readRuntimeModes(root?: Element): readonly string[];
26
- export declare function initial(args: ModePickerArgs, authored: (name: string) => boolean): ModePickerContext;
27
- //# sourceMappingURL=mode-picker.state.d.ts.map
26
+ export declare function initial(args: ModePickerArgs, authored: (name: string) => boolean): ModePickerContext;
@@ -1,11 +1,10 @@
1
- import { ModePickerContext } from "./mode-picker.state.js";
2
1
  import { ModePickerEvents } from "./mode-picker.events.js";
3
- import { AssignFor } from "@spinjs/runtime/fsm";
2
+ import { ModePickerContext } from "./mode-picker.state.js";
3
+ import { AssignFor } from "@spinjs/components/fsm";
4
4
  type ModePickerAssign<K extends keyof ModePickerEvents = keyof ModePickerEvents> = AssignFor<ModePickerContext, ModePickerEvents, K>;
5
5
  export declare const cycle: ModePickerAssign<"CYCLE">;
6
6
  export declare const setValue: ModePickerAssign<"VALUE.SET">;
7
7
  export declare const setModes: ModePickerAssign<"MODES.SET">;
8
8
  export declare const setSystem: ModePickerAssign<"SYSTEM.SET">;
9
9
  export declare const canCycle: (ctx: ModePickerContext) => boolean;
10
- export {};
11
- //# sourceMappingURL=mode-picker.transitions.d.ts.map
10
+ export {};
@@ -39,13 +39,13 @@ const machine = navigationMenu({
39
39
  <template for={machine.items} as={row} key={row.value}>
40
40
  <li class="relative" {...machine.getItemProps(row)}>
41
41
  <a
42
- class="bare inline-flex items-center gap-1 rounded-md px-3 py-1 text-sm font-medium text-text no-underline transition-colors duration-fast ease-decelerate hover:bg-surface aria-[current=page]:bg-surface"
42
+ class="bare inline-flex items-center gap-1 rounded-md px-3 py-1 no-underline transition-colors duration-fast ease-decelerate hover:bg-surface aria-[current=page]:bg-surface"
43
43
  {...machine.getLinkProps(row)}
44
44
  >
45
45
  <span>{row.label}</span>
46
46
  <span
47
47
  aria-hidden="true"
48
- class={["i-lucide-chevron-down text-xs text-text-muted transition-transform duration-fast", { "rotate-180 text-primary": machine.value === row.value }]}
48
+ class={["i-lucide-chevron-down type-caption text-muted transition-transform duration-fast", { "rotate-180 text-primary": machine.value === row.value }]}
49
49
  ></span>
50
50
  </a>
51
51
 
@@ -54,16 +54,16 @@ const machine = navigationMenu({
54
54
  {...machine.getItemContentProps(row)}
55
55
  >
56
56
  <div class="flex items-center justify-between gap-2">
57
- <span class="text-sm font-semibold text-text">{row.label}</span>
57
+ <span class="type-label">{row.label}</span>
58
58
  <badge variant="neutral">{row.badge}</badge>
59
59
  </div>
60
- <p class="mt-1 text-xs text-text-muted">{row.description}</p>
60
+ <p class="text-muted">{row.description}</p>
61
61
  <a
62
- class="bare mt-3 inline-flex items-center gap-1 text-xs font-medium text-primary no-underline hover:underline"
62
+ class="bare mt-3 inline-flex items-center gap-1 text-primary no-underline hover:underline"
63
63
  href={row.ctaHref}
64
64
  >
65
65
  <span>{row.cta}</span>
66
- <span aria-hidden="true" class="i-lucide-arrow-right text-xs"></span>
66
+ <span aria-hidden="true" class="i-lucide-arrow-right type-caption"></span>
67
67
  </a>
68
68
  </panel>
69
69
  </li>
@@ -0,0 +1,5 @@
1
+ // src/navigation-menu/examples/basic.html
2
+ var basic_default = "<script lang=\"ts\">\nimport { navigationMenu } from \"../navigation-menu.presentation.ts\";\n\nconst machine = navigationMenu({\n items: [\n {\n value: \"deployments\",\n label: \"Deployments\",\n href: \"#deployments\",\n badge: \"#4821\",\n description: \"Deploy #4821 is running: 10% of traffic on v4.12.0 in eu-west-1.\",\n cta: \"Watch the rollout\",\n ctaHref: \"#deploy-4821\",\n },\n {\n value: \"services\",\n label: \"Services\",\n href: \"#services\",\n badge: \"12 healthy\",\n description: \"checkout-api runs 12 instances across 3 regions, all checks green.\",\n cta: \"Open checkout-api\",\n ctaHref: \"#checkout-api\",\n },\n {\n value: \"team\",\n label: \"Team\",\n href: \"#team\",\n badge: \"Priya\",\n description: \"Priya Raman ships platform. Tomas Berg wrote release v4.12.0.\",\n cta: \"See who is on call\",\n ctaHref: \"#on-call\",\n },\n ],\n});\n<\/script>\n\n<nav class=\"relative flex w-full items-center justify-center\" {...machine.getRootProps()}>\n <ul class=\"row-list gap-1\" {...machine.getListProps()}>\n <template for={machine.items} as={row} key={row.value}>\n <li class=\"relative\" {...machine.getItemProps(row)}>\n <a\n class=\"bare inline-flex items-center gap-1 rounded-md px-3 py-1 no-underline transition-colors duration-fast ease-decelerate hover:bg-surface aria-[current=page]:bg-surface\"\n {...machine.getLinkProps(row)}\n >\n <span>{row.label}</span>\n <span\n aria-hidden=\"true\"\n class={[\"i-lucide-chevron-down type-caption text-muted transition-transform duration-fast\", { \"rotate-180 text-primary\": machine.value === row.value }]}\n ></span>\n </a>\n\n <panel\n class=\"absolute left-0 top-full z-dropdown mt-1 w-64 origin-top-left transition duration-fast ease-decelerate\"\n {...machine.getItemContentProps(row)}\n >\n <div class=\"flex items-center justify-between gap-2\">\n <span class=\"type-label\">{row.label}</span>\n <badge variant=\"neutral\">{row.badge}</badge>\n </div>\n <p class=\"text-muted\">{row.description}</p>\n <a\n class=\"bare mt-3 inline-flex items-center gap-1 text-primary no-underline hover:underline\"\n href={row.ctaHref}\n >\n <span>{row.cta}</span>\n <span aria-hidden=\"true\" class=\"i-lucide-arrow-right type-caption\"></span>\n </a>\n </panel>\n </li>\n </template>\n </ul>\n</nav>\n";
3
+ export { basic_default as default };
4
+
5
+ //# sourceMappingURL=basic.html.js.map
@@ -44,44 +44,46 @@ const machine = navigationMenu({
44
44
  </script>
45
45
 
46
46
  <nav class="relative inline-flex" {...machine.getRootProps()}>
47
- <ul class="row-list gap-1 rounded-lg border border-solid border-border bg-surface p-1" {...machine.getListProps()}>
47
+ <ul class="row-list gap-1 rounded-lg border bg-surface" {...machine.getListProps()}>
48
48
  <template for={machine.items} as={row} key={row.value}>
49
49
  <li class="relative" {...machine.getItemProps(row)}>
50
50
  <a
51
- class={["bare inline-flex items-center gap-1 rounded-md px-3 py-1 text-sm font-medium text-text no-underline transition-colors duration-fast ease-decelerate hover:bg-surface-raised", { "bg-surface-raised text-primary shadow-sm": machine.value === row.value }]}
51
+ class={["bare inline-flex items-center gap-1 rounded-md px-3 py-1 no-underline transition-colors duration-fast ease-decelerate hover:bg-surface-raised", { "bg-surface-raised text-primary shadow-sm": machine.value === row.value }]}
52
52
  {...machine.getLinkProps(row)}
53
53
  >
54
54
  <span>{row.label}</span>
55
55
  <span
56
56
  aria-hidden="true"
57
- class={["i-lucide-chevron-down text-xs text-text-muted transition-transform duration-fast", { "rotate-180 text-primary": machine.value === row.value }]}
57
+ class={["i-lucide-chevron-down type-caption text-muted transition-transform duration-fast", { "rotate-180 text-primary": machine.value === row.value }]}
58
58
  ></span>
59
59
  </a>
60
60
 
61
61
  <div
62
- class="absolute left-0 top-full z-dropdown mt-2 w-64 origin-top-left rounded-lg border border-solid border-border bg-surface-raised p-4 shadow-lg transition duration-fast ease-decelerate"
62
+ class="absolute left-0 top-full z-dropdown mt-2 w-64 origin-top-left rounded-lg border bg-surface-raised p-4 shadow-lg transition duration-fast ease-decelerate"
63
63
  {...machine.getItemContentProps(row)}
64
64
  >
65
65
  <div class="flex items-center justify-between gap-2">
66
- <span class="text-xs font-semibold uppercase tracking-wider text-text-muted">{row.category}</span>
66
+ <span class="uppercase text-muted">{row.category}</span>
67
67
  <badge variant="info">{row.badge}</badge>
68
68
  </div>
69
- <p class="mt-1 text-sm font-semibold text-text">{row.label}</p>
70
- <p class="mt-1 text-xs text-text-muted">{row.description}</p>
71
- <div class="mt-3 flex flex-col gap-1 border-t border-solid border-border pt-2">
69
+ <div class="grid gap-2 border-t pt-2">
70
+ <div class="grid gap-1">
71
+ <p>{row.label}</p>
72
+ <p class="text-muted">{row.description}</p>
73
+ </div>
72
74
  <a
73
- class="bare flex items-center justify-between rounded-md px-2 py-1 text-xs font-medium text-text no-underline transition-colors hover:bg-surface"
75
+ class="bare flex items-center justify-between rounded-md px-2 py-1 type-body no-underline transition-colors hover:bg-surface"
74
76
  href={row.primaryHref}
75
77
  >
76
78
  <span>{row.primaryLabel}</span>
77
- <span aria-hidden="true" class="i-lucide-arrow-up-right text-xs text-text-muted"></span>
79
+ <span aria-hidden="true" class="i-lucide-arrow-up-right type-caption text-muted"></span>
78
80
  </a>
79
81
  <a
80
- class="bare flex items-center justify-between rounded-md px-2 py-1 text-xs font-medium text-text no-underline transition-colors hover:bg-surface"
82
+ class="bare flex items-center justify-between rounded-md px-2 py-1 type-body no-underline transition-colors hover:bg-surface"
81
83
  href={row.secondaryHref}
82
84
  >
83
85
  <span>{row.secondaryLabel}</span>
84
- <span aria-hidden="true" class="i-lucide-arrow-up-right text-xs text-text-muted"></span>
86
+ <span aria-hidden="true" class="i-lucide-arrow-up-right type-caption text-muted"></span>
85
87
  </a>
86
88
  </div>
87
89
  </div>
@@ -0,0 +1,5 @@
1
+ // src/navigation-menu/examples/grouped.html
2
+ var grouped_default = "<script lang=\"ts\">\nimport { navigationMenu } from \"../navigation-menu.presentation.ts\";\n\nconst machine = navigationMenu({\n items: [\n {\n value: \"releases\",\n label: \"Releases\",\n href: \"#releases\",\n category: \"Ship it\",\n badge: \"Running\",\n description: \"Deploy #4821 promotes v4.12.0 by traffic: 10% first, then the rest while checks stay green.\",\n primaryLabel: \"Rolling back a release\",\n primaryHref: \"#rollback\",\n secondaryLabel: \"Release history\",\n secondaryHref: \"#history\",\n },\n {\n value: \"health\",\n label: \"Health\",\n href: \"#health\",\n category: \"Stay green\",\n badge: \"12/12\",\n description: \"Every checkout-api instance passes checks in all 3 regions. Latency p99 holds at 180ms.\",\n primaryLabel: \"Latency dashboards\",\n primaryHref: \"#latency\",\n secondaryLabel: \"Incident log\",\n secondaryHref: \"#incidents\",\n },\n {\n value: \"people\",\n label: \"People\",\n href: \"#people\",\n category: \"Who ships\",\n badge: \"Priya\",\n description: \"Priya Raman owns platform deploys. Tomas Berg authored the release now rolling out.\",\n primaryLabel: \"On-call rotation\",\n primaryHref: \"#on-call\",\n secondaryLabel: \"Deploy permissions\",\n secondaryHref: \"#permissions\",\n },\n ],\n});\n<\/script>\n\n<nav class=\"relative inline-flex\" {...machine.getRootProps()}>\n <ul class=\"row-list gap-1 rounded-lg border bg-surface\" {...machine.getListProps()}>\n <template for={machine.items} as={row} key={row.value}>\n <li class=\"relative\" {...machine.getItemProps(row)}>\n <a\n class={[\"bare inline-flex items-center gap-1 rounded-md px-3 py-1 no-underline transition-colors duration-fast ease-decelerate hover:bg-surface-raised\", { \"bg-surface-raised text-primary shadow-sm\": machine.value === row.value }]}\n {...machine.getLinkProps(row)}\n >\n <span>{row.label}</span>\n <span\n aria-hidden=\"true\"\n class={[\"i-lucide-chevron-down type-caption text-muted transition-transform duration-fast\", { \"rotate-180 text-primary\": machine.value === row.value }]}\n ></span>\n </a>\n\n <div\n class=\"absolute left-0 top-full z-dropdown mt-2 w-64 origin-top-left rounded-lg border bg-surface-raised p-4 shadow-lg transition duration-fast ease-decelerate\"\n {...machine.getItemContentProps(row)}\n >\n <div class=\"flex items-center justify-between gap-2\">\n <span class=\"uppercase text-muted\">{row.category}</span>\n <badge variant=\"info\">{row.badge}</badge>\n </div>\n <div class=\"grid gap-2 border-t pt-2\">\n <div class=\"grid gap-1\">\n <p>{row.label}</p>\n <p class=\"text-muted\">{row.description}</p>\n </div>\n <a\n class=\"bare flex items-center justify-between rounded-md px-2 py-1 type-body no-underline transition-colors hover:bg-surface\"\n href={row.primaryHref}\n >\n <span>{row.primaryLabel}</span>\n <span aria-hidden=\"true\" class=\"i-lucide-arrow-up-right type-caption text-muted\"></span>\n </a>\n <a\n class=\"bare flex items-center justify-between rounded-md px-2 py-1 type-body no-underline transition-colors hover:bg-surface\"\n href={row.secondaryHref}\n >\n <span>{row.secondaryLabel}</span>\n <span aria-hidden=\"true\" class=\"i-lucide-arrow-up-right type-caption text-muted\"></span>\n </a>\n </div>\n </div>\n </li>\n </template>\n </ul>\n</nav>\n";
3
+ export { grouped_default as default };
4
+
5
+ //# sourceMappingURL=grouped.html.js.map
@@ -26,22 +26,24 @@ const machine = navigationMenu({
26
26
  </script>
27
27
 
28
28
  <nav class="relative inline-flex" {...machine.getRootProps()}>
29
- <ul class="row-list gap-1 rounded-full border border-solid border-border bg-surface p-1" {...machine.getListProps()}>
29
+ <ul class="row-list gap-1 rounded-full border bg-surface" {...machine.getListProps()}>
30
30
  <template for={machine.items} as={row} key={row.value}>
31
31
  <li class="relative" {...machine.getItemProps(row)}>
32
32
  <a
33
- class={["bare inline-flex items-center gap-1 rounded-full px-3 py-1 text-xs font-medium text-text-muted no-underline transition-colors duration-fast ease-decelerate hover:text-text", { "bg-surface-raised text-text shadow-sm": machine.value === row.value }]}
33
+ class={["bare inline-flex items-center gap-1 rounded-full px-3 py-1 text-muted no-underline transition-colors duration-fast ease-decelerate", { "bg-surface-raised shadow-sm": machine.value === row.value }]}
34
34
  {...machine.getLinkProps(row)}
35
35
  >
36
36
  <span>{row.label}</span>
37
37
  </a>
38
38
 
39
39
  <div
40
- class="absolute left-0 top-full z-dropdown mt-2 w-64 origin-top-left rounded-lg border border-solid border-border bg-surface-raised p-3 shadow-md transition duration-fast ease-decelerate"
40
+ class="absolute left-0 top-full z-dropdown mt-2 w-64 origin-top-left rounded-lg border bg-surface-raised p-3 shadow-md transition duration-fast ease-decelerate"
41
41
  {...machine.getItemContentProps(row)}
42
42
  >
43
- <p class="text-xs font-semibold text-text">{row.label}</p>
44
- <p class="mt-1 text-xs text-text-muted">{row.summary}</p>
43
+ <div class="grid gap-1">
44
+ <p>{row.label}</p>
45
+ <p class="text-muted">{row.summary}</p>
46
+ </div>
45
47
  </div>
46
48
  </li>
47
49
  </template>
@@ -0,0 +1,5 @@
1
+ // src/navigation-menu/examples/minimal.html
2
+ var minimal_default = "<script lang=\"ts\">\nimport { navigationMenu } from \"../navigation-menu.presentation.ts\";\n\nconst machine = navigationMenu({\n items: [\n {\n value: \"overview\",\n label: \"Overview\",\n href: \"#overview\",\n summary: \"Deploy #4821 running, 12 instances healthy, p99 at 180ms.\",\n },\n {\n value: \"activity\",\n label: \"Activity\",\n href: \"#activity\",\n summary: \"Tomas shipped v4.12.0. Priya widened traffic to 10%.\",\n },\n {\n value: \"settings\",\n label: \"Settings\",\n href: \"#settings\",\n summary: \"Regions, deploy permissions, and Roll back policy.\",\n },\n ],\n});\n<\/script>\n\n<nav class=\"relative inline-flex\" {...machine.getRootProps()}>\n <ul class=\"row-list gap-1 rounded-full border bg-surface\" {...machine.getListProps()}>\n <template for={machine.items} as={row} key={row.value}>\n <li class=\"relative\" {...machine.getItemProps(row)}>\n <a\n class={[\"bare inline-flex items-center gap-1 rounded-full px-3 py-1 text-muted no-underline transition-colors duration-fast ease-decelerate\", { \"bg-surface-raised shadow-sm\": machine.value === row.value }]}\n {...machine.getLinkProps(row)}\n >\n <span>{row.label}</span>\n </a>\n\n <div\n class=\"absolute left-0 top-full z-dropdown mt-2 w-64 origin-top-left rounded-lg border bg-surface-raised p-3 shadow-md transition duration-fast ease-decelerate\"\n {...machine.getItemContentProps(row)}\n >\n <div class=\"grid gap-1\">\n <p>{row.label}</p>\n <p class=\"text-muted\">{row.summary}</p>\n </div>\n </div>\n </li>\n </template>\n </ul>\n</nav>\n";
3
+ export { minimal_default as default };
4
+
5
+ //# sourceMappingURL=minimal.html.js.map
@@ -1,5 +1,5 @@
1
1
  import { NavValue } from "./navigation-menu.state.js";
2
- import { EventUnion } from "@spinjs/runtime/fsm";
2
+ import { EventUnion } from "@spinjs/components/fsm";
3
3
  export interface NavigationMenuEvents {
4
4
  "ITEM.ENTER": {
5
5
  value: NavValue;
@@ -16,5 +16,4 @@ export type NavigationMenuEvent = EventUnion<NavigationMenuEvents>;
16
16
  export interface NavigationMenuValueChange {
17
17
  readonly value: NavValue;
18
18
  readonly previousValue: NavValue;
19
- }
20
- //# sourceMappingURL=navigation-menu.events.d.ts.map
19
+ }
@@ -1,6 +1,6 @@
1
+ /** Navigation-menu machine: the closed and open modes. */
1
2
  import { NavItemRecord, NavValue, NavigationMenuArgs, NavigationMenuContext, NavigationMenuState } from "./navigation-menu.state.js";
2
3
  import { NavigationMenuEvent, NavigationMenuEvents, NavigationMenuValueChange } from "./navigation-menu.events.js";
3
- import { Machine } from "@spinjs/runtime/fsm";
4
+ import { Machine } from "@spinjs/components/fsm";
4
5
  export declare function navigationMenu(args: NavigationMenuArgs | undefined, authored: (name: string) => boolean): Machine<NavigationMenuContext, NavigationMenuEvents, NavigationMenuState>;
5
- export type { NavItemRecord, NavValue, NavigationMenuArgs, NavigationMenuContext, NavigationMenuEvent, NavigationMenuEvents, NavigationMenuState, NavigationMenuValueChange };
6
- //# sourceMappingURL=navigation-menu.machine.d.ts.map
6
+ export type { NavItemRecord, NavValue, NavigationMenuArgs, NavigationMenuContext, NavigationMenuEvent, NavigationMenuEvents, NavigationMenuState, NavigationMenuValueChange };