@vielzeug/refine 2.1.0 → 2.1.2

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 (487) hide show
  1. package/dist/accordion-item.cjs +1 -1
  2. package/dist/accordion-item.cjs.map +1 -1
  3. package/dist/accordion-item.js +1 -1
  4. package/dist/accordion-item.js.map +1 -1
  5. package/dist/accordion.cjs +1 -1
  6. package/dist/accordion.cjs.map +1 -1
  7. package/dist/accordion.js +1 -1
  8. package/dist/accordion.js.map +1 -1
  9. package/dist/alert.cjs.map +1 -1
  10. package/dist/alert.js.map +1 -1
  11. package/dist/async.cjs.map +1 -1
  12. package/dist/async.js.map +1 -1
  13. package/dist/avatar-group.cjs.map +1 -1
  14. package/dist/avatar-group.js.map +1 -1
  15. package/dist/avatar.cjs +6 -6
  16. package/dist/avatar.cjs.map +1 -1
  17. package/dist/avatar.js +1 -2
  18. package/dist/avatar.js.map +1 -1
  19. package/dist/badge.cjs.map +1 -1
  20. package/dist/badge.js.map +1 -1
  21. package/dist/box.cjs.map +1 -1
  22. package/dist/box.js.map +1 -1
  23. package/dist/breadcrumb.cjs +3 -3
  24. package/dist/breadcrumb.cjs.map +1 -1
  25. package/dist/breadcrumb.js +4 -4
  26. package/dist/breadcrumb.js.map +1 -1
  27. package/dist/button-group.cjs +1 -1
  28. package/dist/button-group.cjs.map +1 -1
  29. package/dist/button-group.js +0 -1
  30. package/dist/button-group.js.map +1 -1
  31. package/dist/button.cjs.map +1 -1
  32. package/dist/button.js.map +1 -1
  33. package/dist/calendar.cjs.map +1 -1
  34. package/dist/calendar.js.map +1 -1
  35. package/dist/card.cjs +7 -7
  36. package/dist/card.cjs.map +1 -1
  37. package/dist/card.js +27 -27
  38. package/dist/card.js.map +1 -1
  39. package/dist/carousel.cjs +20 -20
  40. package/dist/carousel.cjs.map +1 -1
  41. package/dist/carousel.js +7 -8
  42. package/dist/carousel.js.map +1 -1
  43. package/dist/chat-message.cjs +10 -10
  44. package/dist/chat-message.cjs.map +1 -1
  45. package/dist/chat-message.js +1 -2
  46. package/dist/chat-message.js.map +1 -1
  47. package/dist/checkbox-group.cjs +7 -7
  48. package/dist/checkbox-group.cjs.map +1 -1
  49. package/dist/checkbox-group.js +26 -26
  50. package/dist/checkbox-group.js.map +1 -1
  51. package/dist/checkbox.cjs +2 -2
  52. package/dist/checkbox.cjs.map +1 -1
  53. package/dist/checkbox.js +33 -33
  54. package/dist/checkbox.js.map +1 -1
  55. package/dist/chip.cjs +16 -16
  56. package/dist/chip.cjs.map +1 -1
  57. package/dist/chip.js +1 -2
  58. package/dist/chip.js.map +1 -1
  59. package/dist/combobox.cjs +28 -28
  60. package/dist/combobox.cjs.map +1 -1
  61. package/dist/combobox.js +211 -211
  62. package/dist/combobox.js.map +1 -1
  63. package/dist/command-palette.cjs +21 -21
  64. package/dist/command-palette.cjs.map +1 -1
  65. package/dist/command-palette.js +27 -28
  66. package/dist/command-palette.js.map +1 -1
  67. package/dist/content/avatar/avatar.css.cjs +1 -1
  68. package/dist/content/avatar/avatar.css.js +1 -1
  69. package/dist/content/avatar/avatar.d.ts.map +1 -1
  70. package/dist/content/breadcrumb/breadcrumb.d.ts.map +1 -1
  71. package/dist/content/card/card.css.cjs +1 -1
  72. package/dist/content/card/card.css.cjs.map +1 -1
  73. package/dist/content/card/card.css.js +1 -1
  74. package/dist/content/card/card.css.js.map +1 -1
  75. package/dist/content/card/card.d.ts.map +1 -1
  76. package/dist/content/carousel/carousel-slide.cjs.map +1 -1
  77. package/dist/content/carousel/carousel-slide.js.map +1 -1
  78. package/dist/content/carousel/carousel.css.cjs +1 -1
  79. package/dist/content/carousel/carousel.css.cjs.map +1 -1
  80. package/dist/content/carousel/carousel.css.js +1 -1
  81. package/dist/content/carousel/carousel.css.js.map +1 -1
  82. package/dist/content/carousel/carousel.d.ts.map +1 -1
  83. package/dist/content/carousel/index.d.ts +1 -1
  84. package/dist/content/carousel/index.d.ts.map +1 -1
  85. package/dist/content/chat-message/chat-message.css.cjs +1 -1
  86. package/dist/content/chat-message/chat-message.css.js +1 -1
  87. package/dist/content/chat-message/chat-message.d.ts.map +1 -1
  88. package/dist/content/code-window/code-window.css.cjs +1 -1
  89. package/dist/content/code-window/code-window.css.js +1 -1
  90. package/dist/content/copy-command/copy-command.css.cjs +1 -1
  91. package/dist/content/copy-command/copy-command.css.js +1 -1
  92. package/dist/content/copy-command/copy-command.d.ts.map +1 -1
  93. package/dist/content/index.d.ts +22 -22
  94. package/dist/content/index.d.ts.map +1 -1
  95. package/dist/content/list/_list-item-reveal.cjs.map +1 -1
  96. package/dist/content/list/_list-item-reveal.d.ts +1 -1
  97. package/dist/content/list/_list-item-reveal.d.ts.map +1 -1
  98. package/dist/content/list/_list-item-reveal.js.map +1 -1
  99. package/dist/content/list/list-item.css.cjs +1 -1
  100. package/dist/content/list/list-item.css.cjs.map +1 -1
  101. package/dist/content/list/list-item.css.js +1 -1
  102. package/dist/content/list/list-item.css.js.map +1 -1
  103. package/dist/content/list/list.d.ts.map +1 -1
  104. package/dist/content/marquee/marquee.css.cjs +1 -1
  105. package/dist/content/marquee/marquee.css.js +1 -1
  106. package/dist/content/pagination/pagination.css.cjs +1 -1
  107. package/dist/content/pagination/pagination.css.js +1 -1
  108. package/dist/content/pagination/pagination.d.ts.map +1 -1
  109. package/dist/content/separator/separator.css.cjs +1 -1
  110. package/dist/content/separator/separator.css.js +1 -1
  111. package/dist/content/separator/separator.d.ts.map +1 -1
  112. package/dist/content/stepper/step.css.cjs.map +1 -1
  113. package/dist/content/stepper/step.css.js.map +1 -1
  114. package/dist/content/stepper/stepper.d.ts.map +1 -1
  115. package/dist/content/table/table.css.cjs +1 -1
  116. package/dist/content/table/table.css.js +1 -1
  117. package/dist/content/text/text.css.cjs +1 -1
  118. package/dist/content/text/text.css.js +1 -1
  119. package/dist/copy-command.cjs.map +1 -1
  120. package/dist/copy-command.js.map +1 -1
  121. package/dist/core/checkable.cjs +1 -1
  122. package/dist/core/checkable.cjs.map +1 -1
  123. package/dist/core/checkable.d.ts.map +1 -1
  124. package/dist/core/checkable.js +4 -4
  125. package/dist/core/checkable.js.map +1 -1
  126. package/dist/core/choice-field.cjs +1 -1
  127. package/dist/core/choice-field.cjs.map +1 -1
  128. package/dist/core/choice-field.d.ts.map +1 -1
  129. package/dist/core/choice-field.js +1 -2
  130. package/dist/core/choice-field.js.map +1 -1
  131. package/dist/core/date-picker.cjs +1 -1
  132. package/dist/core/date-picker.cjs.map +1 -1
  133. package/dist/core/date-picker.d.ts.map +1 -1
  134. package/dist/core/date-picker.js +3 -3
  135. package/dist/core/date-picker.js.map +1 -1
  136. package/dist/core/index.d.ts +17 -17
  137. package/dist/core/index.d.ts.map +1 -1
  138. package/dist/core/option-list.cjs +1 -1
  139. package/dist/core/option-list.cjs.map +1 -1
  140. package/dist/core/option-list.d.ts.map +1 -1
  141. package/dist/core/option-list.js +4 -4
  142. package/dist/core/option-list.js.map +1 -1
  143. package/dist/core/ref-callback.cjs +1 -1
  144. package/dist/core/ref-callback.cjs.map +1 -1
  145. package/dist/core/ref-callback.d.ts.map +1 -1
  146. package/dist/core/ref-callback.js +1 -1
  147. package/dist/core/ref-callback.js.map +1 -1
  148. package/dist/core/signals.cjs +1 -1
  149. package/dist/core/signals.cjs.map +1 -1
  150. package/dist/core/signals.d.ts.map +1 -1
  151. package/dist/core/signals.js +1 -2
  152. package/dist/core/signals.js.map +1 -1
  153. package/dist/core/slider.cjs.map +1 -1
  154. package/dist/core/slider.d.ts.map +1 -1
  155. package/dist/core/slider.js.map +1 -1
  156. package/dist/core/spinner.cjs.map +1 -1
  157. package/dist/core/spinner.d.ts.map +1 -1
  158. package/dist/core/spinner.js.map +1 -1
  159. package/dist/core/text-field.cjs +1 -1
  160. package/dist/core/text-field.cjs.map +1 -1
  161. package/dist/core/text-field.js +1 -1
  162. package/dist/core/text-field.js.map +1 -1
  163. package/dist/custom-elements.json +6036 -6036
  164. package/dist/datagrid.cjs +114 -114
  165. package/dist/datagrid.cjs.map +1 -1
  166. package/dist/datagrid.js +42 -43
  167. package/dist/datagrid.js.map +1 -1
  168. package/dist/date-picker.cjs.map +1 -1
  169. package/dist/date-picker.js.map +1 -1
  170. package/dist/dialog.cjs.map +1 -1
  171. package/dist/dialog.js.map +1 -1
  172. package/dist/disclosure/accordion/accordion.d.ts.map +1 -1
  173. package/dist/disclosure/accordion-item/accordion-item.css.cjs +1 -1
  174. package/dist/disclosure/accordion-item/accordion-item.css.cjs.map +1 -1
  175. package/dist/disclosure/accordion-item/accordion-item.css.js +1 -1
  176. package/dist/disclosure/accordion-item/accordion-item.css.js.map +1 -1
  177. package/dist/disclosure/index.d.ts +6 -6
  178. package/dist/disclosure/index.d.ts.map +1 -1
  179. package/dist/disclosure/tab-item/tab-item.css.cjs.map +1 -1
  180. package/dist/disclosure/tab-item/tab-item.css.js.map +1 -1
  181. package/dist/disclosure/tab-item/tab-item.d.ts.map +1 -1
  182. package/dist/disclosure/tabs/tabs.css.cjs +1 -1
  183. package/dist/disclosure/tabs/tabs.css.cjs.map +1 -1
  184. package/dist/disclosure/tabs/tabs.css.js +1 -1
  185. package/dist/disclosure/tabs/tabs.css.js.map +1 -1
  186. package/dist/disclosure/tabs/tabs.d.ts.map +1 -1
  187. package/dist/drawer.cjs +5 -5
  188. package/dist/drawer.cjs.map +1 -1
  189. package/dist/drawer.js +26 -26
  190. package/dist/drawer.js.map +1 -1
  191. package/dist/feedback/alert/alert.css.cjs +1 -1
  192. package/dist/feedback/alert/alert.css.js +1 -1
  193. package/dist/feedback/async/async.d.ts +1 -1
  194. package/dist/feedback/async/async.d.ts.map +1 -1
  195. package/dist/feedback/badge/badge.css.cjs +1 -1
  196. package/dist/feedback/badge/badge.css.js +1 -1
  197. package/dist/feedback/badge/badge.d.ts.map +1 -1
  198. package/dist/feedback/chip/chip.css.cjs.map +1 -1
  199. package/dist/feedback/chip/chip.css.js.map +1 -1
  200. package/dist/feedback/chip/chip.d.ts.map +1 -1
  201. package/dist/feedback/index.d.ts +12 -12
  202. package/dist/feedback/index.d.ts.map +1 -1
  203. package/dist/feedback/progress/progress.d.ts.map +1 -1
  204. package/dist/feedback/skeleton/skeleton.d.ts.map +1 -1
  205. package/dist/feedback/toast/index.d.ts +1 -1
  206. package/dist/feedback/toast/index.d.ts.map +1 -1
  207. package/dist/feedback/toast/toast.css.cjs +1 -1
  208. package/dist/feedback/toast/toast.css.cjs.map +1 -1
  209. package/dist/feedback/toast/toast.css.js +1 -1
  210. package/dist/feedback/toast/toast.css.js.map +1 -1
  211. package/dist/feedback/toast/toast.d.ts +1 -1
  212. package/dist/feedback/toast/toast.d.ts.map +1 -1
  213. package/dist/feedback/typing-indicator/typing-indicator.d.ts.map +1 -1
  214. package/dist/file-input.cjs +67 -67
  215. package/dist/file-input.cjs.map +1 -1
  216. package/dist/file-input.js +129 -130
  217. package/dist/file-input.js.map +1 -1
  218. package/dist/grid.cjs.map +1 -1
  219. package/dist/grid.js.map +1 -1
  220. package/dist/icon.cjs.map +1 -1
  221. package/dist/icon.js.map +1 -1
  222. package/dist/input.cjs +21 -21
  223. package/dist/input.cjs.map +1 -1
  224. package/dist/input.js +58 -58
  225. package/dist/input.js.map +1 -1
  226. package/dist/inputs/button/button.css.cjs +1 -1
  227. package/dist/inputs/button/button.css.js +1 -1
  228. package/dist/inputs/button/button.d.ts.map +1 -1
  229. package/dist/inputs/button-group/button-group.css.cjs.map +1 -1
  230. package/dist/inputs/button-group/button-group.css.js.map +1 -1
  231. package/dist/inputs/button-group/button-group.d.ts +1 -1
  232. package/dist/inputs/button-group/button-group.d.ts.map +1 -1
  233. package/dist/inputs/calendar/calendar.css.cjs +1 -1
  234. package/dist/inputs/calendar/calendar.css.cjs.map +1 -1
  235. package/dist/inputs/calendar/calendar.css.js +1 -1
  236. package/dist/inputs/calendar/calendar.css.js.map +1 -1
  237. package/dist/inputs/calendar/calendar.d.ts.map +1 -1
  238. package/dist/inputs/checkbox/checkbox.css.cjs +1 -1
  239. package/dist/inputs/checkbox/checkbox.css.js +1 -1
  240. package/dist/inputs/checkbox/checkbox.d.ts.map +1 -1
  241. package/dist/inputs/checkbox-group/checkbox-group.d.ts +1 -1
  242. package/dist/inputs/checkbox-group/checkbox-group.d.ts.map +1 -1
  243. package/dist/inputs/combobox/combobox.css.cjs +1 -1
  244. package/dist/inputs/combobox/combobox.css.js +1 -1
  245. package/dist/inputs/combobox/combobox.d.ts.map +1 -1
  246. package/dist/inputs/datagrid/datagrid-column.cjs.map +1 -1
  247. package/dist/inputs/datagrid/datagrid-column.d.ts.map +1 -1
  248. package/dist/inputs/datagrid/datagrid-column.js.map +1 -1
  249. package/dist/inputs/datagrid/datagrid-model.cjs +1 -1
  250. package/dist/inputs/datagrid/datagrid-model.cjs.map +1 -1
  251. package/dist/inputs/datagrid/datagrid-model.d.ts.map +1 -1
  252. package/dist/inputs/datagrid/datagrid-model.js +1 -2
  253. package/dist/inputs/datagrid/datagrid-model.js.map +1 -1
  254. package/dist/inputs/datagrid/datagrid.css.cjs +1 -1
  255. package/dist/inputs/datagrid/datagrid.css.cjs.map +1 -1
  256. package/dist/inputs/datagrid/datagrid.css.js +1 -1
  257. package/dist/inputs/datagrid/datagrid.css.js.map +1 -1
  258. package/dist/inputs/datagrid/datagrid.d.ts +1 -1
  259. package/dist/inputs/datagrid/datagrid.d.ts.map +1 -1
  260. package/dist/inputs/date-picker/date-picker.css.cjs +1 -1
  261. package/dist/inputs/date-picker/date-picker.css.cjs.map +1 -1
  262. package/dist/inputs/date-picker/date-picker.css.js +1 -1
  263. package/dist/inputs/date-picker/date-picker.css.js.map +1 -1
  264. package/dist/inputs/date-picker/date-picker.d.ts.map +1 -1
  265. package/dist/inputs/file-input/file-input-upload.cjs +1 -1
  266. package/dist/inputs/file-input/file-input-upload.cjs.map +1 -1
  267. package/dist/inputs/file-input/file-input-upload.d.ts.map +1 -1
  268. package/dist/inputs/file-input/file-input-upload.js +2 -3
  269. package/dist/inputs/file-input/file-input-upload.js.map +1 -1
  270. package/dist/inputs/file-input/file-input.css.cjs +1 -1
  271. package/dist/inputs/file-input/file-input.css.js +1 -1
  272. package/dist/inputs/file-input/file-input.d.ts.map +1 -1
  273. package/dist/inputs/index.d.ts +28 -28
  274. package/dist/inputs/index.d.ts.map +1 -1
  275. package/dist/inputs/input/input.css.cjs +1 -1
  276. package/dist/inputs/input/input.css.js +1 -1
  277. package/dist/inputs/input/input.d.ts.map +1 -1
  278. package/dist/inputs/message-composer/message-composer.css.cjs +1 -1
  279. package/dist/inputs/message-composer/message-composer.css.js +1 -1
  280. package/dist/inputs/message-composer/message-composer.d.ts +1 -1
  281. package/dist/inputs/message-composer/message-composer.d.ts.map +1 -1
  282. package/dist/inputs/number-input/number-input.d.ts.map +1 -1
  283. package/dist/inputs/otp-input/otp-input.d.ts.map +1 -1
  284. package/dist/inputs/radio/radio.css.cjs +1 -1
  285. package/dist/inputs/radio/radio.css.js +1 -1
  286. package/dist/inputs/radio/radio.d.ts.map +1 -1
  287. package/dist/inputs/radio-group/radio-group.d.ts +2 -2
  288. package/dist/inputs/radio-group/radio-group.d.ts.map +1 -1
  289. package/dist/inputs/rating/rating.d.ts.map +1 -1
  290. package/dist/inputs/select/select.css.cjs +1 -1
  291. package/dist/inputs/select/select.css.js +1 -1
  292. package/dist/inputs/select/select.d.ts.map +1 -1
  293. package/dist/inputs/shared/field-binding.cjs.map +1 -1
  294. package/dist/inputs/shared/field-binding.d.ts.map +1 -1
  295. package/dist/inputs/shared/field-binding.js.map +1 -1
  296. package/dist/inputs/shared/templates.cjs.map +1 -1
  297. package/dist/inputs/shared/templates.d.ts.map +1 -1
  298. package/dist/inputs/shared/templates.js.map +1 -1
  299. package/dist/inputs/slider/slider.d.ts.map +1 -1
  300. package/dist/inputs/switch/switch.css.cjs +1 -1
  301. package/dist/inputs/switch/switch.css.js +1 -1
  302. package/dist/inputs/switch/switch.d.ts.map +1 -1
  303. package/dist/inputs/textarea/textarea.css.cjs +1 -1
  304. package/dist/inputs/textarea/textarea.css.js +1 -1
  305. package/dist/inputs/textarea/textarea.d.ts.map +1 -1
  306. package/dist/inputs/time-picker/time-picker.css.cjs +1 -1
  307. package/dist/inputs/time-picker/time-picker.css.cjs.map +1 -1
  308. package/dist/inputs/time-picker/time-picker.css.js +1 -1
  309. package/dist/inputs/time-picker/time-picker.css.js.map +1 -1
  310. package/dist/inputs/time-picker/time-picker.d.ts.map +1 -1
  311. package/dist/layout/box/box.d.ts.map +1 -1
  312. package/dist/layout/grid/grid.d.ts.map +1 -1
  313. package/dist/layout/index.d.ts +6 -6
  314. package/dist/layout/index.d.ts.map +1 -1
  315. package/dist/layout/navbar/navbar.css.cjs +1 -1
  316. package/dist/layout/navbar/navbar.css.js +1 -1
  317. package/dist/layout/navbar/navbar.d.ts.map +1 -1
  318. package/dist/layout/sidebar/sidebar-group.css.cjs +1 -1
  319. package/dist/layout/sidebar/sidebar-group.css.cjs.map +1 -1
  320. package/dist/layout/sidebar/sidebar-group.css.js +1 -1
  321. package/dist/layout/sidebar/sidebar-group.css.js.map +1 -1
  322. package/dist/layout/sidebar/sidebar.css.cjs +1 -1
  323. package/dist/layout/sidebar/sidebar.css.cjs.map +1 -1
  324. package/dist/layout/sidebar/sidebar.css.js +1 -1
  325. package/dist/layout/sidebar/sidebar.css.js.map +1 -1
  326. package/dist/layout/sidebar/sidebar.d.ts.map +1 -1
  327. package/dist/list-item.cjs.map +1 -1
  328. package/dist/list-item.js.map +1 -1
  329. package/dist/list.cjs +2 -2
  330. package/dist/list.cjs.map +1 -1
  331. package/dist/list.js +15 -16
  332. package/dist/list.js.map +1 -1
  333. package/dist/marquee.cjs +1 -1
  334. package/dist/marquee.cjs.map +1 -1
  335. package/dist/marquee.js +1 -1
  336. package/dist/marquee.js.map +1 -1
  337. package/dist/menu.cjs +5 -5
  338. package/dist/menu.cjs.map +1 -1
  339. package/dist/menu.js +38 -39
  340. package/dist/menu.js.map +1 -1
  341. package/dist/message-composer.cjs +16 -16
  342. package/dist/message-composer.cjs.map +1 -1
  343. package/dist/message-composer.js +61 -61
  344. package/dist/message-composer.js.map +1 -1
  345. package/dist/navbar.cjs +9 -9
  346. package/dist/navbar.cjs.map +1 -1
  347. package/dist/navbar.js +1 -2
  348. package/dist/navbar.js.map +1 -1
  349. package/dist/navigation-menu.cjs +5 -5
  350. package/dist/navigation-menu.cjs.map +1 -1
  351. package/dist/navigation-menu.js +33 -34
  352. package/dist/navigation-menu.js.map +1 -1
  353. package/dist/number-input.cjs +24 -24
  354. package/dist/number-input.cjs.map +1 -1
  355. package/dist/number-input.js +41 -42
  356. package/dist/number-input.js.map +1 -1
  357. package/dist/otp-input.cjs +13 -13
  358. package/dist/otp-input.cjs.map +1 -1
  359. package/dist/otp-input.js +32 -33
  360. package/dist/otp-input.js.map +1 -1
  361. package/dist/overlay/command-palette/command-palette-items.cjs.map +1 -1
  362. package/dist/overlay/command-palette/command-palette-items.d.ts.map +1 -1
  363. package/dist/overlay/command-palette/command-palette-items.js.map +1 -1
  364. package/dist/overlay/command-palette/command-palette.css.cjs +1 -1
  365. package/dist/overlay/command-palette/command-palette.css.cjs.map +1 -1
  366. package/dist/overlay/command-palette/command-palette.css.js +1 -1
  367. package/dist/overlay/command-palette/command-palette.css.js.map +1 -1
  368. package/dist/overlay/command-palette/command-palette.d.ts.map +1 -1
  369. package/dist/overlay/dialog/dialog.css.cjs +1 -1
  370. package/dist/overlay/dialog/dialog.css.js +1 -1
  371. package/dist/overlay/dialog/dialog.d.ts.map +1 -1
  372. package/dist/overlay/drawer/drawer.css.cjs +1 -1
  373. package/dist/overlay/drawer/drawer.css.js +1 -1
  374. package/dist/overlay/drawer/drawer.d.ts +2 -2
  375. package/dist/overlay/drawer/drawer.d.ts.map +1 -1
  376. package/dist/overlay/index.d.ts +6 -6
  377. package/dist/overlay/index.d.ts.map +1 -1
  378. package/dist/overlay/menu/menu.css.cjs +1 -1
  379. package/dist/overlay/menu/menu.css.js +1 -1
  380. package/dist/overlay/menu/menu.d.ts +2 -2
  381. package/dist/overlay/menu/menu.d.ts.map +1 -1
  382. package/dist/overlay/navigation-menu/navigation-menu.d.ts.map +1 -1
  383. package/dist/overlay/popover/popover.d.ts +1 -1
  384. package/dist/overlay/popover/popover.d.ts.map +1 -1
  385. package/dist/overlay/shared/use-dialog.cjs +1 -1
  386. package/dist/overlay/shared/use-dialog.cjs.map +1 -1
  387. package/dist/overlay/shared/use-dialog.d.ts.map +1 -1
  388. package/dist/overlay/shared/use-dialog.js +4 -5
  389. package/dist/overlay/shared/use-dialog.js.map +1 -1
  390. package/dist/overlay/shared/use-floating-trigger.cjs +1 -1
  391. package/dist/overlay/shared/use-floating-trigger.cjs.map +1 -1
  392. package/dist/overlay/shared/use-floating-trigger.d.ts.map +1 -1
  393. package/dist/overlay/shared/use-floating-trigger.js +1 -2
  394. package/dist/overlay/shared/use-floating-trigger.js.map +1 -1
  395. package/dist/overlay/tooltip/tooltip.d.ts +1 -1
  396. package/dist/overlay/tooltip/tooltip.d.ts.map +1 -1
  397. package/dist/pagination.cjs.map +1 -1
  398. package/dist/pagination.js.map +1 -1
  399. package/dist/popover.cjs +1 -1
  400. package/dist/popover.cjs.map +1 -1
  401. package/dist/popover.js +0 -1
  402. package/dist/popover.js.map +1 -1
  403. package/dist/progress.cjs.map +1 -1
  404. package/dist/progress.js.map +1 -1
  405. package/dist/radio-group.cjs +5 -5
  406. package/dist/radio-group.cjs.map +1 -1
  407. package/dist/radio-group.js +26 -27
  408. package/dist/radio-group.js.map +1 -1
  409. package/dist/radio.cjs +2 -2
  410. package/dist/radio.cjs.map +1 -1
  411. package/dist/radio.js +41 -41
  412. package/dist/radio.js.map +1 -1
  413. package/dist/rating.cjs +4 -4
  414. package/dist/rating.cjs.map +1 -1
  415. package/dist/rating.js +36 -36
  416. package/dist/rating.js.map +1 -1
  417. package/dist/refine.cjs +686 -686
  418. package/dist/refine.cjs.map +1 -1
  419. package/dist/refine.iife.js +686 -686
  420. package/dist/refine.iife.js.map +1 -1
  421. package/dist/refine.js +737 -737
  422. package/dist/refine.js.map +1 -1
  423. package/dist/select.cjs +42 -42
  424. package/dist/select.cjs.map +1 -1
  425. package/dist/select.js +146 -147
  426. package/dist/select.js.map +1 -1
  427. package/dist/separator.cjs.map +1 -1
  428. package/dist/separator.js.map +1 -1
  429. package/dist/sidebar.cjs +17 -17
  430. package/dist/sidebar.cjs.map +1 -1
  431. package/dist/sidebar.js +7 -8
  432. package/dist/sidebar.js.map +1 -1
  433. package/dist/skeleton.cjs +3 -3
  434. package/dist/skeleton.cjs.map +1 -1
  435. package/dist/skeleton.js +1 -2
  436. package/dist/skeleton.js.map +1 -1
  437. package/dist/slider.cjs +12 -12
  438. package/dist/slider.cjs.map +1 -1
  439. package/dist/slider.js +54 -55
  440. package/dist/slider.js.map +1 -1
  441. package/dist/step.cjs.map +1 -1
  442. package/dist/step.js.map +1 -1
  443. package/dist/stepper.cjs +2 -2
  444. package/dist/stepper.cjs.map +1 -1
  445. package/dist/stepper.js +8 -7
  446. package/dist/stepper.js.map +1 -1
  447. package/dist/styles/index.d.ts +2 -2
  448. package/dist/styles/index.d.ts.map +1 -1
  449. package/dist/styles/preflight.css +1 -1
  450. package/dist/styles/theme.css +15 -30
  451. package/dist/switch.cjs +3 -3
  452. package/dist/switch.cjs.map +1 -1
  453. package/dist/switch.js +28 -28
  454. package/dist/switch.js.map +1 -1
  455. package/dist/tab-item.cjs +2 -2
  456. package/dist/tab-item.cjs.map +1 -1
  457. package/dist/tab-item.js +21 -21
  458. package/dist/tab-item.js.map +1 -1
  459. package/dist/tab-panel.cjs +2 -2
  460. package/dist/tab-panel.cjs.map +1 -1
  461. package/dist/tab-panel.js +9 -9
  462. package/dist/tab-panel.js.map +1 -1
  463. package/dist/table.cjs +1 -1
  464. package/dist/table.cjs.map +1 -1
  465. package/dist/table.js +1 -1
  466. package/dist/table.js.map +1 -1
  467. package/dist/tabs.cjs +6 -6
  468. package/dist/tabs.cjs.map +1 -1
  469. package/dist/tabs.js +14 -15
  470. package/dist/tabs.js.map +1 -1
  471. package/dist/textarea.cjs +11 -11
  472. package/dist/textarea.cjs.map +1 -1
  473. package/dist/textarea.js +59 -59
  474. package/dist/textarea.js.map +1 -1
  475. package/dist/time-picker.cjs.map +1 -1
  476. package/dist/time-picker.js.map +1 -1
  477. package/dist/toast.cjs +16 -16
  478. package/dist/toast.cjs.map +1 -1
  479. package/dist/toast.js +20 -21
  480. package/dist/toast.js.map +1 -1
  481. package/dist/tooltip.cjs.map +1 -1
  482. package/dist/tooltip.js.map +1 -1
  483. package/dist/typing-indicator.cjs +1 -1
  484. package/dist/typing-indicator.cjs.map +1 -1
  485. package/dist/typing-indicator.js +1 -1
  486. package/dist/typing-indicator.js.map +1 -1
  487. package/package.json +96 -97
package/dist/rating.js CHANGED
@@ -1,8 +1,8 @@
1
- import { createErrorHelperState as e } from "./core/field-base.js";
2
- import { createSliderControl as t } from "./core/slider.js";
3
- import { coarsePointerMixin as n, reducedMotionMixin as r } from "./styles/mixins/accessibility.css.js";
4
- import { sizeVariantMixin as i } from "./styles/mixins/shape.css.js";
5
- import { colorThemeMixin as a } from "./styles/mixins/theme.css.js";
1
+ import { coarsePointerMixin as e, reducedMotionMixin as t } from "./styles/mixins/accessibility.css.js";
2
+ import { sizeVariantMixin as n } from "./styles/mixins/shape.css.js";
3
+ import { colorThemeMixin as r } from "./styles/mixins/theme.css.js";
4
+ import { createErrorHelperState as i } from "./core/field-base.js";
5
+ import { createSliderControl as a } from "./core/slider.js";
6
6
  import { disablableBundle as o, sizableBundle as s, themableBundle as c } from "./shared/prop-bundles.js";
7
7
  import { renderHelperRegion as l } from "./inputs/shared/templates.js";
8
8
  import { defineFieldValue as u, dispatchNativeFieldEvent as d, setFieldValue as f } from "./inputs/shared/native-field-event.js";
@@ -26,32 +26,32 @@ g(C, {
26
26
  solid: y.bool(!1),
27
27
  value: y.number(0)
28
28
  },
29
- setup(n) {
30
- let r = _(), i = x(() => {
31
- let e = Math.max(1, Number(n.max.value) || 5), t = Number(n.value.value);
32
- return Math.min(e, Math.max(0, Number.isFinite(t) ? t : 0));
33
- }), a = x(() => !!n.disabled.value);
34
- u(r, () => String(i.value), (e) => {
35
- r.setAttribute("value", e);
29
+ setup(e) {
30
+ let t = _(), n = x(() => {
31
+ let t = Math.max(1, Number(e.max?.value) || 5), n = Number(e.value?.value);
32
+ return Math.min(t, Math.max(0, Number.isFinite(n) ? n : 0));
33
+ }), r = x(() => !!e.disabled.value);
34
+ u(t, () => String(n.value), (e) => {
35
+ t.setAttribute("value", e);
36
36
  }), b({
37
- disabled: a,
38
- value: x(() => String(i.value || 0))
37
+ disabled: r,
38
+ value: x(() => String(n.value || 0))
39
39
  });
40
- let o = h("helper"), s = e({
41
- error: n.error,
42
- helper: n.helper
43
- }), c = x(() => s.value.errorText), p = x(() => s.value.helperText), g = x(() => c.value || p.value ? o : null), y = x(() => !n.readonly.value && !a.value), C = S(null), w = x(() => C.value ?? i.value), T = () => [...r.shadowRoot?.querySelectorAll("[data-star]") ?? []], E = t({
44
- max: x(() => Number(n.max.value) || 5),
40
+ let o = h("helper"), s = i({
41
+ error: e.error,
42
+ helper: e.helper
43
+ }), c = x(() => s.value.errorText), p = x(() => s.value.helperText), g = x(() => c.value || p.value ? o : null), y = x(() => !e.readonly?.value && !r.value), C = S(null), w = x(() => C.value ?? n.value), T = () => [...t.shadowRoot?.querySelectorAll("[data-star]") ?? []], E = a({
44
+ max: x(() => Number(e.max?.value) || 5),
45
45
  min: S(1),
46
46
  step: S(1)
47
47
  });
48
48
  function D(e) {
49
- let t = r.shadowRoot?.querySelector(".sparkle-layer"), n = r.shadowRoot?.querySelector(`[data-star="${e}"]`);
50
- if (!t || !n) return;
51
- let i = n.offsetLeft + n.offsetWidth / 2, a = n.offsetTop + n.offsetHeight / 2;
49
+ let n = t.shadowRoot?.querySelector(".sparkle-layer"), r = t.shadowRoot?.querySelector(`[data-star="${e}"]`);
50
+ if (!n || !r) return;
51
+ let i = r.offsetLeft + r.offsetWidth / 2, a = r.offsetTop + r.offsetHeight / 2;
52
52
  for (let e = 0; e < 10; e++) {
53
- let n = document.createElement("span"), r = 360 / 10 * e + (Math.random() * 30 - 15), o = 18 + Math.random() * 20, s = 3 + Math.random() * 4, c = 380 + Math.random() * 220;
54
- n.className = "sparkle", n.style.cssText = [
53
+ let t = document.createElement("span"), r = 360 / 10 * e + (Math.random() * 30 - 15), o = 18 + Math.random() * 20, s = 3 + Math.random() * 4, c = 380 + Math.random() * 220;
54
+ t.className = "sparkle", t.style.cssText = [
55
55
  `left:${i}px`,
56
56
  `top:${a}px`,
57
57
  `--_angle:${r}deg`,
@@ -60,28 +60,28 @@ g(C, {
60
60
  `height:${s}px`,
61
61
  `--_dur:${c}ms`,
62
62
  `animation-delay:${Math.random() * 60}ms`
63
- ].join(";"), t.appendChild(n), n.addEventListener("animationend", () => n.remove(), { once: !0 });
63
+ ].join(";"), n.appendChild(t), t.addEventListener("animationend", () => t.remove(), { once: !0 });
64
64
  }
65
65
  }
66
- function O(e, t) {
66
+ function O(r, i) {
67
67
  if (!y.value) return;
68
- let a = Math.max(1, Number(n.max.value) || 5), o = Math.min(a, Math.max(0, e));
69
- o !== i.value && (f(r, String(o)), d(r, "input"), d(r, "change"), D(o));
68
+ let a = Math.max(1, Number(e.max?.value) || 5), o = Math.min(a, Math.max(0, r));
69
+ o !== n.value && (f(t, String(o)), d(t, "input"), d(t, "change"), D(o));
70
70
  }
71
71
  function k(e, t) {
72
72
  let n = E.nextFromKey(e.key, t);
73
73
  n != null && (e.preventDefault(), O(n, e), T()[n - 1]?.focus());
74
74
  }
75
75
  let A = x(() => {
76
- let e = Number(n.max.value) || 5;
77
- return Array.from({ length: e }, (e, t) => t + 1);
76
+ let t = Number(e.max?.value) || 5;
77
+ return Array.from({ length: t }, (e, t) => t + 1);
78
78
  });
79
- return m({ attr: { size: n.size } }), v`
79
+ return m({ attr: { size: e.size } }), v`
80
80
  <div
81
81
  class="stars"
82
82
  part="stars"
83
83
  role="radiogroup"
84
- aria-label="${n.label}"
84
+ aria-label="${e.label}"
85
85
  aria-describedby="${g}">
86
86
  ${() => A.value.map((e) => v`
87
87
  <button
@@ -90,7 +90,7 @@ g(C, {
90
90
  type="button"
91
91
  role="radio"
92
92
  aria-label="${() => `${e} ${e === 1 ? "star" : "stars"}`}"
93
- aria-checked="${() => String(e === i.value)}"
93
+ aria-checked="${() => String(e === n.value)}"
94
94
  data-star="${e}"
95
95
  ?data-filled="${() => e <= w.value}"
96
96
  disabled="${() => !y.value || null}"
@@ -111,10 +111,10 @@ g(C, {
111
111
  `;
112
112
  },
113
113
  styles: [
114
- a,
115
- i({}),
116
- n,
117
114
  r,
115
+ n({}),
116
+ e,
117
+ t,
118
118
  p
119
119
  ]
120
120
  });
@@ -1 +1 @@
1
- {"version":3,"file":"rating.js","names":[],"sources":["../src/inputs/rating/rating.ts"],"sourcesContent":["import { createStableId, define, html, prop, bind, getHost } from '@vielzeug/ore';\nimport { useField } from '@vielzeug/ore';\nimport { computed, signal } from '@vielzeug/ripple';\n\nimport type { ComponentSize, ThemeColor } from '../../types';\n\nimport { createErrorHelperState, createSliderControl } from '../../core';\nimport '../../content/icon/icon';\nimport { disablableBundle, sizableBundle, themableBundle } from '../../shared';\nimport { coarsePointerMixin, colorThemeMixin, reducedMotionMixin, sizeVariantMixin } from '../../styles';\nimport { defineFieldValue, dispatchNativeFieldEvent, setFieldValue } from '../shared/native-field-event';\nimport { renderHelperRegion } from '../shared/templates';\nimport componentStyles from './rating.css?inline';\n\nexport type OreRatingEvents = {\n change: Event;\n input: Event;\n};\n\n/** Rating props */\nexport type OreRatingProps = {\n /** Theme color */\n color?: ThemeColor;\n /** Disable interaction */\n disabled?: boolean;\n /** Error message — marks the field as invalid (fallback when the `error` slot is empty) */\n error?: string;\n /** Helper text displayed below the stars (fallback when the `helper` slot is empty) */\n helper?: string;\n /** Accessible group label */\n label?: string;\n /** Maximum rating (number of stars) */\n max?: number;\n /** Form field name */\n name?: string;\n /** Make rating read-only */\n readonly?: boolean;\n /** Component size */\n size?: ComponentSize;\n /** Render selected stars as solid-filled instead of outline-only */\n solid?: boolean;\n /** Current rating value */\n value?: number;\n};\n\n/**\n * A star rating input.\n *\n * @element ore-rating\n *\n * @attr {number} value - Current rating value (default: 0)\n * @attr {number} max - Maximum number of stars (default: 5)\n * @attr {boolean} readonly - Read-only display mode\n * @attr {boolean} disabled - Disabled state\n * @attr {string} label - aria-label for the group (default: 'Rating')\n * @attr {string} color - Theme color for filled stars: 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'error'\n * @attr {string} size - 'sm' | 'md' | 'lg'\n * @attr {string} name - Form field name\n * @attr {boolean} solid - Fill selected stars (outline remains default when omitted)\n * @attr {string} helper - Helper text below the stars\n * @attr {string} error - Error message below the stars\n *\n * @fires input - Emitted when the rating changes.\n * @fires change - Emitted when the rating changes.\n *\n * @cssprop --rating-star-size - Star diameter\n * @cssprop --rating-color-empty - Empty star color\n * @cssprop --rating-color-filled - Filled star color\n * @cssprop --rating-gap - Gap between stars\n *\n * @part stars - Stars container.\n * @part star - Star item element.\n * @part helper-text - The helper/error text element.\n * @example\n * ```html\n * <ore-rating value=\"3\" max=\"5\" color=\"warning\"></ore-rating>\n * <ore-rating value=\"4\" solid></ore-rating>\n * ```\n */\nexport const RATING_TAG = 'ore-rating' as const;\ndefine<OreRatingProps>(RATING_TAG, {\n formAssociated: true,\n props: {\n ...themableBundle,\n ...sizableBundle,\n ...disablableBundle,\n error: prop.string(),\n helper: prop.string(),\n label: prop.string('Rating'),\n max: prop.number(5),\n name: prop.string(),\n readonly: prop.bool(false),\n solid: prop.bool(false),\n value: prop.number(0),\n },\n setup(props) {\n const el = getHost();\n const normalizedValue = computed(() => {\n const max = Math.max(1, Number(props.max!.value) || 5);\n const raw = Number(props.value!.value);\n const safe = Number.isFinite(raw) ? raw : 0;\n\n return Math.min(max, Math.max(0, safe));\n });\n\n const isDisabled = computed(() => Boolean(props.disabled.value));\n\n defineFieldValue(\n el,\n () => String(normalizedValue.value),\n (value) => {\n el.setAttribute('value', value);\n },\n );\n\n useField({\n disabled: isDisabled,\n value: computed(() => String(normalizedValue.value || 0)),\n });\n\n const assistiveId = createStableId('helper');\n const assistive = createErrorHelperState({ error: props.error, helper: props.helper });\n const errorText = computed(() => assistive.value.errorText);\n const helperText = computed(() => assistive.value.helperText);\n const ariaDescribedBy = computed(() => (errorText.value || helperText.value ? assistiveId : null));\n\n const isInteractive = computed(() => !props.readonly!.value && !isDisabled.value);\n const hovered = signal<number | null>(null);\n const displayValue = computed(() => hovered.value ?? normalizedValue.value);\n const getStarButtons = () => {\n return [...(el.shadowRoot?.querySelectorAll<HTMLButtonElement>('[data-star]') ?? [])];\n };\n const ratingControl = createSliderControl({\n max: computed(() => Number(props.max!.value) || 5),\n min: signal(1),\n step: signal(1),\n });\n\n function spawnSparkles(star: number) {\n const layer = el.shadowRoot?.querySelector<HTMLElement>('.sparkle-layer');\n const btn = el.shadowRoot?.querySelector<HTMLElement>(`[data-star=\"${star}\"]`);\n\n if (!layer || !btn) return;\n\n const cx = btn.offsetLeft + btn.offsetWidth / 2;\n const cy = btn.offsetTop + btn.offsetHeight / 2;\n const count = 10;\n\n for (let i = 0; i < count; i++) {\n const p = document.createElement('span');\n const angle = (360 / count) * i + (Math.random() * 30 - 15);\n const dist = 18 + Math.random() * 20;\n const size = 3 + Math.random() * 4;\n const dur = 380 + Math.random() * 220;\n\n p.className = 'sparkle';\n p.style.cssText = [\n `left:${cx}px`,\n `top:${cy}px`,\n `--_angle:${angle}deg`,\n `--_dist:${dist}px`,\n `width:${size}px`,\n `height:${size}px`,\n `--_dur:${dur}ms`,\n `animation-delay:${Math.random() * 60}ms`,\n ].join(';');\n layer.appendChild(p);\n p.addEventListener('animationend', () => p.remove(), { once: true });\n }\n }\n function select(star: number, _originalEvent?: Event) {\n if (!isInteractive.value) return;\n\n const max = Math.max(1, Number(props.max!.value) || 5);\n const nextValue = Math.min(max, Math.max(0, star));\n\n if (nextValue === normalizedValue.value) return;\n\n setFieldValue(el, String(nextValue));\n dispatchNativeFieldEvent(el, 'input');\n dispatchNativeFieldEvent(el, 'change');\n spawnSparkles(nextValue);\n }\n function handleKeydown(e: KeyboardEvent, star: number) {\n const next = ratingControl.nextFromKey(e.key, star);\n\n if (next == null) return;\n\n e.preventDefault();\n select(next, e);\n\n const buttons = getStarButtons();\n\n buttons[next - 1]?.focus();\n }\n\n const stars = computed(() => {\n const max = Number(props.max!.value) || 5;\n\n return Array.from({ length: max }, (_, i) => i + 1);\n });\n\n bind({ attr: { size: props.size } });\n\n return html`\n <div\n class=\"stars\"\n part=\"stars\"\n role=\"radiogroup\"\n aria-label=\"${props.label}\"\n aria-describedby=\"${ariaDescribedBy}\">\n ${() =>\n stars.value.map(\n (star) => html`\n <button\n class=\"star-btn\"\n part=\"star\"\n type=\"button\"\n role=\"radio\"\n aria-label=\"${() => `${star} ${star === 1 ? 'star' : 'stars'}`}\"\n aria-checked=\"${() => String(star === normalizedValue.value)}\"\n data-star=\"${star}\"\n ?data-filled=\"${() => star <= displayValue.value}\"\n disabled=\"${() => (!isInteractive.value ? true : null)}\"\n @click=\"${(e: Event) => select(star, e)}\"\n @pointerenter=\"${() => {\n if (isInteractive.value) hovered.value = star;\n }}\"\n @pointerleave=\"${() => {\n hovered.value = null;\n }}\"\n @keydown=\"${(e: KeyboardEvent) => handleKeydown(e, star)}\">\n <ore-icon name=\"star\" size=\"var(--_star-size)\" stroke-width=\"1.5\" aria-hidden=\"true\"></ore-icon>\n </button>\n `,\n )}\n <div class=\"sparkle-layer\"></div>\n </div>\n ${renderHelperRegion(assistiveId, errorText, helperText)}\n `;\n },\n styles: [colorThemeMixin, sizeVariantMixin({}), coarsePointerMixin, reducedMotionMixin, componentStyles],\n});\n"],"mappings":"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"}
1
+ {"version":3,"file":"rating.js","names":[],"sources":["../src/inputs/rating/rating.ts"],"sourcesContent":["import { bind, createStableId, define, getHost, html, prop, useField } from '@vielzeug/ore';\nimport { computed, signal } from '@vielzeug/ripple';\nimport { createErrorHelperState, createSliderControl } from '../../core';\nimport type { ComponentSize, ThemeColor } from '../../types';\nimport '../../content/icon/icon';\nimport { disablableBundle, sizableBundle, themableBundle } from '../../shared';\nimport { coarsePointerMixin, colorThemeMixin, reducedMotionMixin, sizeVariantMixin } from '../../styles';\nimport { defineFieldValue, dispatchNativeFieldEvent, setFieldValue } from '../shared/native-field-event';\nimport { renderHelperRegion } from '../shared/templates';\nimport componentStyles from './rating.css?inline';\n\nexport type OreRatingEvents = {\n change: Event;\n input: Event;\n};\n\n/** Rating props */\nexport type OreRatingProps = {\n /** Theme color */\n color?: ThemeColor;\n /** Disable interaction */\n disabled?: boolean;\n /** Error message — marks the field as invalid (fallback when the `error` slot is empty) */\n error?: string;\n /** Helper text displayed below the stars (fallback when the `helper` slot is empty) */\n helper?: string;\n /** Accessible group label */\n label?: string;\n /** Maximum rating (number of stars) */\n max?: number;\n /** Form field name */\n name?: string;\n /** Make rating read-only */\n readonly?: boolean;\n /** Component size */\n size?: ComponentSize;\n /** Render selected stars as solid-filled instead of outline-only */\n solid?: boolean;\n /** Current rating value */\n value?: number;\n};\n\n/**\n * A star rating input.\n *\n * @element ore-rating\n *\n * @attr {number} value - Current rating value (default: 0)\n * @attr {number} max - Maximum number of stars (default: 5)\n * @attr {boolean} readonly - Read-only display mode\n * @attr {boolean} disabled - Disabled state\n * @attr {string} label - aria-label for the group (default: 'Rating')\n * @attr {string} color - Theme color for filled stars: 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'error'\n * @attr {string} size - 'sm' | 'md' | 'lg'\n * @attr {string} name - Form field name\n * @attr {boolean} solid - Fill selected stars (outline remains default when omitted)\n * @attr {string} helper - Helper text below the stars\n * @attr {string} error - Error message below the stars\n *\n * @fires input - Emitted when the rating changes.\n * @fires change - Emitted when the rating changes.\n *\n * @cssprop --rating-star-size - Star diameter\n * @cssprop --rating-color-empty - Empty star color\n * @cssprop --rating-color-filled - Filled star color\n * @cssprop --rating-gap - Gap between stars\n *\n * @part stars - Stars container.\n * @part star - Star item element.\n * @part helper-text - The helper/error text element.\n * @example\n * ```html\n * <ore-rating value=\"3\" max=\"5\" color=\"warning\"></ore-rating>\n * <ore-rating value=\"4\" solid></ore-rating>\n * ```\n */\nexport const RATING_TAG = 'ore-rating' as const;\ndefine<OreRatingProps>(RATING_TAG, {\n formAssociated: true,\n props: {\n ...themableBundle,\n ...sizableBundle,\n ...disablableBundle,\n error: prop.string(),\n helper: prop.string(),\n label: prop.string('Rating'),\n max: prop.number(5),\n name: prop.string(),\n readonly: prop.bool(false),\n solid: prop.bool(false),\n value: prop.number(0),\n },\n setup(props) {\n const el = getHost();\n const normalizedValue = computed(() => {\n const max = Math.max(1, Number(props.max?.value) || 5);\n const raw = Number(props.value?.value);\n const safe = Number.isFinite(raw) ? raw : 0;\n\n return Math.min(max, Math.max(0, safe));\n });\n\n const isDisabled = computed(() => Boolean(props.disabled.value));\n\n defineFieldValue(\n el,\n () => String(normalizedValue.value),\n (value) => {\n el.setAttribute('value', value);\n },\n );\n\n useField({\n disabled: isDisabled,\n value: computed(() => String(normalizedValue.value || 0)),\n });\n\n const assistiveId = createStableId('helper');\n const assistive = createErrorHelperState({ error: props.error, helper: props.helper });\n const errorText = computed(() => assistive.value.errorText);\n const helperText = computed(() => assistive.value.helperText);\n const ariaDescribedBy = computed(() => (errorText.value || helperText.value ? assistiveId : null));\n\n const isInteractive = computed(() => !props.readonly?.value && !isDisabled.value);\n const hovered = signal<number | null>(null);\n const displayValue = computed(() => hovered.value ?? normalizedValue.value);\n const getStarButtons = () => {\n return [...(el.shadowRoot?.querySelectorAll<HTMLButtonElement>('[data-star]') ?? [])];\n };\n const ratingControl = createSliderControl({\n max: computed(() => Number(props.max?.value) || 5),\n min: signal(1),\n step: signal(1),\n });\n\n function spawnSparkles(star: number) {\n const layer = el.shadowRoot?.querySelector<HTMLElement>('.sparkle-layer');\n const btn = el.shadowRoot?.querySelector<HTMLElement>(`[data-star=\"${star}\"]`);\n\n if (!layer || !btn) return;\n\n const cx = btn.offsetLeft + btn.offsetWidth / 2;\n const cy = btn.offsetTop + btn.offsetHeight / 2;\n const count = 10;\n\n for (let i = 0; i < count; i++) {\n const p = document.createElement('span');\n const angle = (360 / count) * i + (Math.random() * 30 - 15);\n const dist = 18 + Math.random() * 20;\n const size = 3 + Math.random() * 4;\n const dur = 380 + Math.random() * 220;\n\n p.className = 'sparkle';\n p.style.cssText = [\n `left:${cx}px`,\n `top:${cy}px`,\n `--_angle:${angle}deg`,\n `--_dist:${dist}px`,\n `width:${size}px`,\n `height:${size}px`,\n `--_dur:${dur}ms`,\n `animation-delay:${Math.random() * 60}ms`,\n ].join(';');\n layer.appendChild(p);\n p.addEventListener('animationend', () => p.remove(), { once: true });\n }\n }\n function select(star: number, _originalEvent?: Event) {\n if (!isInteractive.value) return;\n\n const max = Math.max(1, Number(props.max?.value) || 5);\n const nextValue = Math.min(max, Math.max(0, star));\n\n if (nextValue === normalizedValue.value) return;\n\n setFieldValue(el, String(nextValue));\n dispatchNativeFieldEvent(el, 'input');\n dispatchNativeFieldEvent(el, 'change');\n spawnSparkles(nextValue);\n }\n function handleKeydown(e: KeyboardEvent, star: number) {\n const next = ratingControl.nextFromKey(e.key, star);\n\n if (next == null) return;\n\n e.preventDefault();\n select(next, e);\n\n const buttons = getStarButtons();\n\n buttons[next - 1]?.focus();\n }\n\n const stars = computed(() => {\n const max = Number(props.max?.value) || 5;\n\n return Array.from({ length: max }, (_, i) => i + 1);\n });\n\n bind({ attr: { size: props.size } });\n\n return html`\n <div\n class=\"stars\"\n part=\"stars\"\n role=\"radiogroup\"\n aria-label=\"${props.label}\"\n aria-describedby=\"${ariaDescribedBy}\">\n ${() =>\n stars.value.map(\n (star) => html`\n <button\n class=\"star-btn\"\n part=\"star\"\n type=\"button\"\n role=\"radio\"\n aria-label=\"${() => `${star} ${star === 1 ? 'star' : 'stars'}`}\"\n aria-checked=\"${() => String(star === normalizedValue.value)}\"\n data-star=\"${star}\"\n ?data-filled=\"${() => star <= displayValue.value}\"\n disabled=\"${() => (!isInteractive.value ? true : null)}\"\n @click=\"${(e: Event) => select(star, e)}\"\n @pointerenter=\"${() => {\n if (isInteractive.value) hovered.value = star;\n }}\"\n @pointerleave=\"${() => {\n hovered.value = null;\n }}\"\n @keydown=\"${(e: KeyboardEvent) => handleKeydown(e, star)}\">\n <ore-icon name=\"star\" size=\"var(--_star-size)\" stroke-width=\"1.5\" aria-hidden=\"true\"></ore-icon>\n </button>\n `,\n )}\n <div class=\"sparkle-layer\"></div>\n </div>\n ${renderHelperRegion(assistiveId, errorText, helperText)}\n `;\n },\n styles: [colorThemeMixin, sizeVariantMixin({}), coarsePointerMixin, reducedMotionMixin, componentStyles],\n});\n"],"mappings":"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"}