@editora/ui-core 0.1.21 → 0.1.22

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 (274) hide show
  1. package/dist/accordion.cjs.js +3 -3
  2. package/dist/accordion.esm.js +3 -3
  3. package/dist/alert-dialog.cjs.js +32 -32
  4. package/dist/alert-dialog.esm.js +95 -75
  5. package/dist/alert.cjs.js +6 -6
  6. package/dist/alert.esm.js +6 -6
  7. package/dist/animated-list.cjs.js +4 -4
  8. package/dist/animated-list.esm.js +4 -4
  9. package/dist/animated-text.cjs.js +4 -4
  10. package/dist/animated-text.esm.js +4 -4
  11. package/dist/app-header.cjs.js +3 -3
  12. package/dist/app-header.esm.js +3 -3
  13. package/dist/aspect-ratio.cjs.js +3 -3
  14. package/dist/aspect-ratio.esm.js +3 -3
  15. package/dist/avatar.cjs.js +14 -14
  16. package/dist/avatar.esm.js +31 -29
  17. package/dist/badge.cjs.js +4 -4
  18. package/dist/badge.esm.js +4 -4
  19. package/dist/block-controls.cjs.js +4 -4
  20. package/dist/block-controls.esm.js +4 -4
  21. package/dist/box.cjs.js +2 -2
  22. package/dist/box.esm.js +2 -2
  23. package/dist/breadcrumb.cjs.js +5 -5
  24. package/dist/breadcrumb.esm.js +5 -5
  25. package/dist/button.cjs.js +1 -1
  26. package/dist/button.esm.js +1 -1
  27. package/dist/{calendar-DLY4acgn.mjs → calendar-DbxYRdlv.mjs} +227 -183
  28. package/dist/{calendar-Dkof-FTK.js → calendar-Qa-cFOp3.js} +74 -35
  29. package/dist/calendar.cjs.js +1 -1
  30. package/dist/calendar.esm.js +1 -1
  31. package/dist/card.cjs.js +8 -8
  32. package/dist/card.esm.js +63 -20
  33. package/dist/chart.cjs.js +4 -4
  34. package/dist/chart.esm.js +6 -6
  35. package/dist/checkbox.cjs.js +2 -2
  36. package/dist/checkbox.esm.js +2 -2
  37. package/dist/collapsible.cjs.js +7 -7
  38. package/dist/collapsible.esm.js +7 -7
  39. package/dist/color-picker.cjs.js +30 -10
  40. package/dist/color-picker.esm.js +82 -60
  41. package/dist/combobox.cjs.js +29 -27
  42. package/dist/combobox.esm.js +51 -45
  43. package/dist/command.cjs.js +2 -2
  44. package/dist/command.esm.js +2 -2
  45. package/dist/components/ui-alert-dialog.d.ts +1 -0
  46. package/dist/components/ui-alert-dialog.d.ts.map +1 -1
  47. package/dist/components/ui-avatar.d.ts +1 -0
  48. package/dist/components/ui-avatar.d.ts.map +1 -1
  49. package/dist/components/ui-button.d.ts +1 -0
  50. package/dist/components/ui-button.d.ts.map +1 -1
  51. package/dist/components/ui-calendar.d.ts.map +1 -1
  52. package/dist/components/ui-card.d.ts +3 -0
  53. package/dist/components/ui-card.d.ts.map +1 -1
  54. package/dist/components/ui-checkbox.d.ts.map +1 -1
  55. package/dist/components/ui-color-picker.d.ts.map +1 -1
  56. package/dist/components/ui-combobox.d.ts.map +1 -1
  57. package/dist/components/ui-data-table.d.ts.map +1 -1
  58. package/dist/components/ui-date-field.d.ts.map +1 -1
  59. package/dist/components/ui-date-picker.d.ts.map +1 -1
  60. package/dist/components/ui-date-range-picker.d.ts.map +1 -1
  61. package/dist/components/ui-date-range-time-picker.d.ts.map +1 -1
  62. package/dist/components/ui-date-time-picker.d.ts.map +1 -1
  63. package/dist/components/ui-dock.d.ts +1 -0
  64. package/dist/components/ui-dock.d.ts.map +1 -1
  65. package/dist/components/ui-drawer.d.ts.map +1 -1
  66. package/dist/components/ui-dropdown.d.ts.map +1 -1
  67. package/dist/components/ui-field.d.ts.map +1 -1
  68. package/dist/components/ui-file-upload.d.ts.map +1 -1
  69. package/dist/components/ui-gantt.d.ts.map +1 -1
  70. package/dist/components/ui-input.d.ts.map +1 -1
  71. package/dist/components/ui-menu.d.ts.map +1 -1
  72. package/dist/components/ui-multi-select.d.ts.map +1 -1
  73. package/dist/components/ui-number-field.d.ts.map +1 -1
  74. package/dist/components/ui-password-field.d.ts.map +1 -1
  75. package/dist/components/ui-pin-input.d.ts +1 -0
  76. package/dist/components/ui-pin-input.d.ts.map +1 -1
  77. package/dist/components/ui-placement-grid.d.ts.map +1 -1
  78. package/dist/components/ui-progress.d.ts.map +1 -1
  79. package/dist/components/ui-radio.d.ts.map +1 -1
  80. package/dist/components/ui-rating.d.ts +1 -0
  81. package/dist/components/ui-rating.d.ts.map +1 -1
  82. package/dist/components/ui-select.d.ts.map +1 -1
  83. package/dist/components/ui-sortable.d.ts.map +1 -1
  84. package/dist/components/ui-switch.d.ts.map +1 -1
  85. package/dist/components/ui-table.d.ts.map +1 -1
  86. package/dist/components/ui-tabs.d.ts +1 -0
  87. package/dist/components/ui-tabs.d.ts.map +1 -1
  88. package/dist/components/ui-tags-input.d.ts +1 -0
  89. package/dist/components/ui-tags-input.d.ts.map +1 -1
  90. package/dist/components/ui-textarea.d.ts.map +1 -1
  91. package/dist/components/ui-time-field.d.ts.map +1 -1
  92. package/dist/components/ui-toggle-group.d.ts.map +1 -1
  93. package/dist/components/ui-toggle.d.ts.map +1 -1
  94. package/dist/components/ui-tree.d.ts.map +1 -1
  95. package/dist/components/ui-wizard.d.ts.map +1 -1
  96. package/dist/context-menu.cjs.js +3 -3
  97. package/dist/context-menu.esm.js +4 -4
  98. package/dist/control-name-BmoI1m3a.js +1 -0
  99. package/dist/control-name-Bpj7F34X.mjs +48 -0
  100. package/dist/data-table.cjs.js +5 -2
  101. package/dist/data-table.esm.js +145 -142
  102. package/dist/date-field.cjs.js +5 -5
  103. package/dist/date-field.esm.js +34 -31
  104. package/dist/date-picker.cjs.js +16 -16
  105. package/dist/date-picker.esm.js +48 -44
  106. package/dist/date-range-picker.cjs.js +5 -5
  107. package/dist/date-range-picker.esm.js +120 -118
  108. package/dist/date-range-time-picker.cjs.js +22 -22
  109. package/dist/date-range-time-picker.esm.js +88 -84
  110. package/dist/date-time-picker.cjs.js +23 -23
  111. package/dist/date-time-picker.esm.js +102 -98
  112. package/dist/{date-time-utils-Dmost5Ee.js → date-time-utils-BzfTpeU-.js} +1 -1
  113. package/dist/{date-time-utils-y1N2gvG2.mjs → date-time-utils-Cps2aSu2.mjs} +1 -1
  114. package/dist/description.cjs.js +3 -3
  115. package/dist/description.esm.js +3 -3
  116. package/dist/dialog.cjs.js +2 -2
  117. package/dist/dialog.esm.js +2 -2
  118. package/dist/dock.cjs.js +12 -12
  119. package/dist/dock.esm.js +72 -74
  120. package/dist/drawer.cjs.js +19 -19
  121. package/dist/drawer.esm.js +58 -58
  122. package/dist/dropdown.cjs.js +13 -13
  123. package/dist/dropdown.esm.js +49 -48
  124. package/dist/empty-state.cjs.js +3 -3
  125. package/dist/empty-state.esm.js +3 -3
  126. package/dist/field-error.cjs.js +1 -1
  127. package/dist/field-error.esm.js +1 -1
  128. package/dist/field.cjs.js +12 -12
  129. package/dist/field.esm.js +84 -75
  130. package/dist/fieldset.cjs.js +4 -4
  131. package/dist/fieldset.esm.js +4 -4
  132. package/dist/file-upload.cjs.js +3 -3
  133. package/dist/file-upload.esm.js +5 -3
  134. package/dist/floating-toolbar.cjs.js +8 -8
  135. package/dist/floating-toolbar.esm.js +9 -9
  136. package/dist/form.cjs.js +11 -11
  137. package/dist/form.esm.js +11 -11
  138. package/dist/gantt.cjs.js +43 -32
  139. package/dist/gantt.esm.js +99 -88
  140. package/dist/icon-cloud.cjs.js +3 -3
  141. package/dist/icon-cloud.esm.js +3 -3
  142. package/dist/icon.cjs.js +1 -1
  143. package/dist/icon.esm.js +1 -1
  144. package/dist/index.cjs.js +1 -1
  145. package/dist/index.esm.js +121 -118
  146. package/dist/inline-edit.cjs.js +1 -1
  147. package/dist/inline-edit.esm.js +1 -1
  148. package/dist/input.cjs.js +14 -14
  149. package/dist/input.esm.js +39 -32
  150. package/dist/label.cjs.js +3 -3
  151. package/dist/label.esm.js +3 -3
  152. package/dist/{listbox-B6QgECax.js → listbox-CTpRpuF7.js} +1 -1
  153. package/dist/{listbox-DJamVeFj.mjs → listbox-hMVOhKHC.mjs} +1 -1
  154. package/dist/listbox.cjs.js +1 -1
  155. package/dist/listbox.esm.js +1 -1
  156. package/dist/marquee.cjs.js +3 -3
  157. package/dist/marquee.esm.js +3 -3
  158. package/dist/{menu-item-styles-CbNUEwP2.js → menu-item-styles-B4onAr4C.js} +3 -3
  159. package/dist/{menu-item-styles-CZiPwPwl.mjs → menu-item-styles-IGSFLAHu.mjs} +3 -3
  160. package/dist/menu.cjs.js +7 -7
  161. package/dist/menu.esm.js +29 -28
  162. package/dist/menubar.cjs.js +1 -1
  163. package/dist/menubar.esm.js +2 -2
  164. package/dist/meter.cjs.js +1 -1
  165. package/dist/meter.esm.js +1 -1
  166. package/dist/multi-select.cjs.js +17 -17
  167. package/dist/multi-select.esm.js +51 -43
  168. package/dist/navigation-menu.cjs.js +1 -1
  169. package/dist/navigation-menu.esm.js +1 -1
  170. package/dist/number-field.cjs.js +11 -13
  171. package/dist/number-field.esm.js +29 -27
  172. package/dist/number-ticker.cjs.js +4 -4
  173. package/dist/number-ticker.esm.js +4 -4
  174. package/dist/odometer.cjs.js +2 -2
  175. package/dist/odometer.esm.js +2 -2
  176. package/dist/orbiter.cjs.js +3 -3
  177. package/dist/orbiter.esm.js +3 -3
  178. package/dist/pagination.cjs.js +1 -1
  179. package/dist/pagination.esm.js +1 -1
  180. package/dist/password-field.cjs.js +23 -23
  181. package/dist/password-field.esm.js +48 -47
  182. package/dist/pin-input.cjs.js +8 -6
  183. package/dist/pin-input.esm.js +21 -15
  184. package/dist/placement-grid.cjs.js +4 -4
  185. package/dist/placement-grid.esm.js +58 -58
  186. package/dist/plugin-panel.cjs.js +1 -1
  187. package/dist/plugin-panel.esm.js +1 -1
  188. package/dist/popover.cjs.js +5 -5
  189. package/dist/popover.esm.js +4 -4
  190. package/dist/primitives/control-name.d.ts +30 -0
  191. package/dist/primitives/control-name.d.ts.map +1 -0
  192. package/dist/primitives/trigger.d.ts +2 -0
  193. package/dist/primitives/trigger.d.ts.map +1 -0
  194. package/dist/progress.cjs.js +4 -4
  195. package/dist/progress.esm.js +20 -18
  196. package/dist/quick-actions.cjs.js +3 -3
  197. package/dist/quick-actions.esm.js +3 -3
  198. package/dist/radio-group.cjs.js +1 -1
  199. package/dist/radio-group.esm.js +1 -1
  200. package/dist/radio.cjs.js +2 -2
  201. package/dist/radio.esm.js +2 -2
  202. package/dist/rating.cjs.js +17 -16
  203. package/dist/rating.esm.js +91 -92
  204. package/dist/{runtime-D1gFh1fS.mjs → runtime-CFnK53iC.mjs} +133 -94
  205. package/dist/runtime-DwE-tizc.js +1 -0
  206. package/dist/runtime.cjs.js +1 -1
  207. package/dist/runtime.d.ts +1 -1
  208. package/dist/runtime.d.ts.map +1 -1
  209. package/dist/runtime.esm.js +29 -26
  210. package/dist/select.cjs.js +20 -19
  211. package/dist/select.esm.js +36 -32
  212. package/dist/selection-popup.cjs.js +2 -2
  213. package/dist/selection-popup.esm.js +2 -2
  214. package/dist/separator.cjs.js +7 -7
  215. package/dist/separator.esm.js +7 -7
  216. package/dist/sidebar.cjs.js +7 -7
  217. package/dist/sidebar.esm.js +7 -7
  218. package/dist/skeleton.cjs.js +7 -7
  219. package/dist/skeleton.esm.js +7 -7
  220. package/dist/slider.cjs.js +3 -3
  221. package/dist/slider.esm.js +3 -3
  222. package/dist/slot.cjs.js +3 -3
  223. package/dist/slot.esm.js +3 -3
  224. package/dist/sortable.cjs.js +41 -42
  225. package/dist/sortable.esm.js +98 -99
  226. package/dist/spinning-text.cjs.js +3 -3
  227. package/dist/spinning-text.esm.js +3 -3
  228. package/dist/split-button.cjs.js +1 -1
  229. package/dist/split-button.esm.js +1 -1
  230. package/dist/stepper.cjs.js +1 -1
  231. package/dist/stepper.esm.js +1 -1
  232. package/dist/switch.cjs.js +10 -12
  233. package/dist/switch.esm.js +10 -12
  234. package/dist/table.cjs.js +9 -6
  235. package/dist/table.esm.js +46 -43
  236. package/dist/tabs.cjs.js +20 -21
  237. package/dist/tabs.esm.js +70 -66
  238. package/dist/tags-input.cjs.js +9 -9
  239. package/dist/tags-input.esm.js +32 -25
  240. package/dist/textarea.cjs.js +10 -10
  241. package/dist/textarea.esm.js +30 -21
  242. package/dist/theme.d.ts +18 -0
  243. package/dist/theme.d.ts.map +1 -1
  244. package/dist/time-field.cjs.js +5 -5
  245. package/dist/time-field.esm.js +21 -18
  246. package/dist/time-picker.cjs.js +4 -4
  247. package/dist/time-picker.esm.js +5 -5
  248. package/dist/timeline.cjs.js +2 -2
  249. package/dist/timeline.esm.js +4 -4
  250. package/dist/toast.cjs.js +6 -6
  251. package/dist/toast.esm.js +13 -13
  252. package/dist/toggle-group.cjs.js +5 -6
  253. package/dist/toggle-group.esm.js +63 -60
  254. package/dist/toggle.cjs.js +18 -18
  255. package/dist/toggle.esm.js +32 -31
  256. package/dist/tooltip.cjs.js +4 -4
  257. package/dist/tooltip.esm.js +4 -4
  258. package/dist/transfer-list.cjs.js +3 -3
  259. package/dist/transfer-list.esm.js +3 -3
  260. package/dist/tree-7qbVnpGp.js +39 -0
  261. package/dist/{tree-B3kE8ESs.mjs → tree-Deoft-kO.mjs} +34 -33
  262. package/dist/tree.cjs.js +1 -1
  263. package/dist/tree.esm.js +1 -1
  264. package/dist/trigger-BjnxLCeQ.mjs +9 -0
  265. package/dist/trigger-DkPsKxsP.js +1 -0
  266. package/dist/{ui-button-rXQOS9QJ.js → ui-button-BInsgSbr.js} +27 -26
  267. package/dist/{ui-button-Q0GNNWKC.mjs → ui-button-rfiuUnUD.mjs} +65 -48
  268. package/dist/{ui-icon-YI6lyuqU.mjs → ui-icon-BSi_GtqO.mjs} +2 -2
  269. package/dist/{ui-icon-BzVNC_lr.js → ui-icon-Bvt9oIIR.js} +5 -5
  270. package/dist/wizard.cjs.js +12 -13
  271. package/dist/wizard.esm.js +17 -15
  272. package/package.json +1 -1
  273. package/dist/runtime-CTaOSmBj.js +0 -1
  274. package/dist/tree-Dx_kv_ih.js +0 -39
@@ -12,7 +12,7 @@ const g = `
12
12
  color-mix(in srgb, var(--ui-color-surface-elevated, #f8fafc) 24%, var(--ui-color-surface, #ffffff)) 100%
13
13
  );
14
14
  --ui-popover-text: var(--ui-color-text, #0f172a);
15
- --ui-popover-muted: var(--ui-color-muted, #64748b);
15
+ --ui-popover-muted: var(--ui-color-muted, #526175);
16
16
  --ui-popover-border-color: color-mix(in srgb, var(--ui-color-border, #cbd5e1) 70%, transparent);
17
17
  --ui-popover-border: 1px solid var(--ui-popover-border-color);
18
18
  --ui-popover-shadow:
@@ -49,7 +49,7 @@ const g = `
49
49
  }
50
50
 
51
51
  .popover-shell[data-tone="neutral"] {
52
- --ui-popover-accent: var(--ui-color-muted, #64748b);
52
+ --ui-popover-accent: var(--ui-color-muted, #526175);
53
53
  }
54
54
 
55
55
  .popover-shell[data-tone="brand"],
@@ -58,11 +58,11 @@ const g = `
58
58
  }
59
59
 
60
60
  .popover-shell[data-tone="success"] {
61
- --ui-popover-accent: var(--ui-color-success, #16a34a);
61
+ --ui-popover-accent: var(--ui-color-success, #15803d);
62
62
  }
63
63
 
64
64
  .popover-shell[data-tone="warning"] {
65
- --ui-popover-accent: var(--ui-color-warning, #d97706);
65
+ --ui-popover-accent: var(--ui-color-warning, #b45309);
66
66
  }
67
67
 
68
68
  .popover-shell[data-tone="danger"] {
@@ -0,0 +1,30 @@
1
+ export declare function syncControlName(control: HTMLElement | null | undefined, host: HTMLElement, labelId: string | null, fallbackName?: string): void;
2
+ /**
3
+ * Keeps the text of an `<slot>`'s fallback content in step with an attribute. Fallback text written
4
+ * only at first render goes stale when a framework sets the attribute after the element connects
5
+ * (React does), leaving an empty label or description.
6
+ */
7
+ export declare function syncSlotFallbackText(slot: HTMLSlotElement | null | undefined, text: string): void;
8
+ /**
9
+ * What the host was described with from outside its shadow root: its own `aria-description` plus the text
10
+ * of any `aria-describedby` ids that resolve where the host lives. A `ui-field` supplies its description
11
+ * and error this way; its own ids sit in another shadow root and could never be followed.
12
+ */
13
+ export declare function externalDescriptionText(host: HTMLElement): string;
14
+ /**
15
+ * Keeps one visually hidden element, next to `anchor`, holding the host's external description, and
16
+ * returns its id (or null when there is nothing to say) so a control in the same shadow root can point
17
+ * an aria-describedby at it.
18
+ */
19
+ export declare function syncExternalDescription(anchor: HTMLElement | null | undefined, host: HTMLElement, uid: string): string | null;
20
+ /**
21
+ * Sets `aria-describedby` on a control inside a shadow root: the ids of descriptions that live in that
22
+ * same root (`ownIds`), plus the host's external description (see `syncExternalDescription`).
23
+ */
24
+ export declare function syncControlDescription(control: HTMLElement | null | undefined, host: HTMLElement, uid: string, ownIds?: string[]): void;
25
+ /** The same hidden description as markup, for components that render their shadow root from a template. */
26
+ export declare function externalDescriptionMarkup(host: HTMLElement, uid: string): {
27
+ id: string;
28
+ html: string;
29
+ };
30
+ //# sourceMappingURL=control-name.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"control-name.d.ts","sourceRoot":"","sources":["../../src/primitives/control-name.ts"],"names":[],"mappings":"AAQA,wBAAgB,eAAe,CAC7B,OAAO,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,EACvC,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,MAAM,GAAG,IAAI,EACtB,YAAY,SAAK,GAChB,IAAI,CAaN;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAIjG;AAKD;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAUjE;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAqB7H;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,EACvC,IAAI,EAAE,WAAW,EACjB,GAAG,EAAE,MAAM,EACX,MAAM,GAAE,MAAM,EAAO,GACpB,IAAI,CASN;AAED,2GAA2G;AAC3G,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAMtG"}
@@ -0,0 +1,2 @@
1
+ export declare function resolveTriggerControl(trigger: HTMLElement): HTMLElement;
2
+ //# sourceMappingURL=trigger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trigger.d.ts","sourceRoot":"","sources":["../../src/primitives/trigger.ts"],"names":[],"mappings":"AAMA,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,WAAW,GAAG,WAAW,CAQvE"}
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const f=require("./ElementBase-EV6mVBUV.js"),g=`
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const b=require("./ElementBase-EV6mVBUV.js"),m=`
2
2
  :host {
3
3
  display: block;
4
4
  width: 100%;
@@ -311,8 +311,8 @@
311
311
  border-width: 2px;
312
312
  }
313
313
  }
314
- `;function u(e,r,t){return Number.isNaN(e)||e<r?r:e>t?t:e}function b(e,r){if(e==null)return r;const t=String(e).toLowerCase();return t!=="false"&&t!=="0"}function d(e,r){if(e==null||e==="")return r;const t=Number(e);return Number.isFinite(t)?t:r}function m(e){return e==="xs"||e==="sm"||e==="lg"?e:"md"}function v(e){return e==="solid"||e==="soft"||e==="line"||e==="glass"||e==="contrast"?e:"default"}function _(e){return e==="success"||e==="warning"||e==="danger"||e==="info"||e==="neutral"?e:"brand"}function x(e){return e==="square"||e==="round"?e:"pill"}function E(e){return e==="circle"||e==="radial"?"circle":"line"}class p extends f.ElementBase{constructor(){super(),this._value=0,this._buffer=0,this._max=100,this._min=0,this._percent=0,this._bufferPercent=0,this._indeterminate=!1,this._domReady=!1,this._metaEl=null,this._trackEl=null,this._bufferEl=null,this._valueEl=null,this._radialWrapEl=null,this._radialBufferEl=null,this._radialValueEl=null,this._radialCenterEl=null,this._lastEmitted="",this._completeFired=!1}static get observedAttributes(){return["value","buffer","max","min","indeterminate","size","variant","tone","shape","mode","striped","animated","show-label","label","format","precision","headless"]}connectedCallback(){this._syncFromAttributes(),super.connectedCallback(),this._emitState()}attributeChangedCallback(r,t,i){t!==i&&(this._syncFromAttributes(),this.isConnected&&this.render(),(r==="value"||r==="buffer"||r==="max"||r==="min"||r==="indeterminate")&&this._emitState())}setValue(r){this.setAttribute("value",String(r))}setBuffer(r){this.setAttribute("buffer",String(r))}increment(r=1){this.setValue(this._value+r)}reset(){this.setValue(this._min)}_syncFromAttributes(){const r=d(this.getAttribute("min"),0),t=d(this.getAttribute("max"),100),i=t>r?t:r+1,s=d(this.getAttribute("value"),r),o=d(this.getAttribute("buffer"),s),c=this.hasAttribute("indeterminate"),n=u(s,r,i),a=u(o,r,i),l=Math.max(1e-6,i-r);this._min=r,this._max=i,this._value=n,this._buffer=a,this._indeterminate=c,this._percent=u((n-r)/l*100,0,100),this._bufferPercent=u((a-r)/l*100,0,100)}_formatLabel(r){const t=(this.getAttribute("format")||"percent").toLowerCase(),i=u(Math.round(d(this.getAttribute("precision"),0)),0,3);if(t==="value")return`${this._value.toFixed(i)} / ${this._max.toFixed(i)}`;if(t==="fraction"){const s=Math.max(1,this._max-this._min);return`${Math.max(0,this._value-this._min).toFixed(i)}/${s.toFixed(i)}`}return`${r.toFixed(i)}%`}_emitState(){if(this._indeterminate)return;const r=`${this._value}|${this._buffer}|${this._max}|${this._min}`;r!==this._lastEmitted&&(this._lastEmitted=r,this.dispatchEvent(new CustomEvent("change",{detail:{value:this._value,buffer:this._buffer,max:this._max,min:this._min,percent:this._percent,bufferPercent:this._bufferPercent},bubbles:!0})),this._value>=this._max?this._completeFired||(this.dispatchEvent(new CustomEvent("complete",{detail:{value:this._value,max:this._max},bubbles:!0})),this._completeFired=!0):this._completeFired=!1)}_ensureDom(){this._domReady||(this.setContent(`
315
- <style>${g}</style>
314
+ `;function u(e,r,t){return Number.isNaN(e)||e<r?r:e>t?t:e}function v(e,r){if(e==null)return r;const t=String(e).toLowerCase();return t!=="false"&&t!=="0"}function c(e,r){if(e==null||e==="")return r;const t=Number(e);return Number.isFinite(t)?t:r}function _(e){return e==="xs"||e==="sm"||e==="lg"?e:"md"}function x(e){return e==="solid"||e==="soft"||e==="line"||e==="glass"||e==="contrast"?e:"default"}function E(e){return e==="success"||e==="warning"||e==="danger"||e==="info"||e==="neutral"?e:"brand"}function k(e){return e==="square"||e==="round"?e:"pill"}function A(e){return e==="circle"||e==="radial"?"circle":"line"}class p extends b.ElementBase{constructor(){super(),this._value=0,this._buffer=0,this._max=100,this._min=0,this._percent=0,this._bufferPercent=0,this._indeterminate=!1,this._domReady=!1,this._metaEl=null,this._trackEl=null,this._bufferEl=null,this._valueEl=null,this._radialWrapEl=null,this._radialBufferEl=null,this._radialValueEl=null,this._radialCenterEl=null,this._lastEmitted="",this._completeFired=!1}static get observedAttributes(){return["value","buffer","max","min","indeterminate","size","variant","tone","shape","mode","striped","animated","show-label","label","aria-label","format","precision","headless"]}connectedCallback(){this._syncFromAttributes(),super.connectedCallback(),this._emitState()}attributeChangedCallback(r,t,i){t!==i&&(this._syncFromAttributes(),this.isConnected&&this.render(),(r==="value"||r==="buffer"||r==="max"||r==="min"||r==="indeterminate")&&this._emitState())}setValue(r){this.setAttribute("value",String(r))}setBuffer(r){this.setAttribute("buffer",String(r))}increment(r=1){this.setValue(this._value+r)}reset(){this.setValue(this._min)}_syncFromAttributes(){const r=c(this.getAttribute("min"),0),t=c(this.getAttribute("max"),100),i=t>r?t:r+1,s=c(this.getAttribute("value"),r),o=c(this.getAttribute("buffer"),s),d=this.hasAttribute("indeterminate"),l=u(s,r,i),a=u(o,r,i),n=Math.max(1e-6,i-r);this._min=r,this._max=i,this._value=l,this._buffer=a,this._indeterminate=d,this._percent=u((l-r)/n*100,0,100),this._bufferPercent=u((a-r)/n*100,0,100)}_formatLabel(r){const t=(this.getAttribute("format")||"percent").toLowerCase(),i=u(Math.round(c(this.getAttribute("precision"),0)),0,3);if(t==="value")return`${this._value.toFixed(i)} / ${this._max.toFixed(i)}`;if(t==="fraction"){const s=Math.max(1,this._max-this._min);return`${Math.max(0,this._value-this._min).toFixed(i)}/${s.toFixed(i)}`}return`${r.toFixed(i)}%`}_emitState(){if(this._indeterminate)return;const r=`${this._value}|${this._buffer}|${this._max}|${this._min}`;r!==this._lastEmitted&&(this._lastEmitted=r,this.dispatchEvent(new CustomEvent("change",{detail:{value:this._value,buffer:this._buffer,max:this._max,min:this._min,percent:this._percent,bufferPercent:this._bufferPercent},bubbles:!0})),this._value>=this._max?this._completeFired||(this.dispatchEvent(new CustomEvent("complete",{detail:{value:this._value,max:this._max},bubbles:!0})),this._completeFired=!0):this._completeFired=!1)}_ensureDom(){this._domReady||(this.setContent(`
315
+ <style>${m}</style>
316
316
  <div class="root" part="root">
317
317
  <div class="meta" part="label"></div>
318
318
  <div class="track" part="track" role="progressbar">
@@ -326,4 +326,4 @@
326
326
  <div class="radial-center" part="radial-label"></div>
327
327
  </div>
328
328
  </div>
329
- `),this._metaEl=this.root.querySelector(".meta"),this._trackEl=this.root.querySelector(".track"),this._bufferEl=this.root.querySelector(".buffer"),this._valueEl=this.root.querySelector(".value"),this._radialWrapEl=this.root.querySelector(".radial-wrap"),this._radialBufferEl=this.root.querySelector(".radial-buffer"),this._radialValueEl=this.root.querySelector(".radial-value"),this._radialCenterEl=this.root.querySelector(".radial-center"),this._domReady=!0)}render(){this._ensureDom();const r=b(this.getAttribute("show-label"),!1),t=this.getAttribute("label"),i=t!=null&&t!==""?t:this._indeterminate?"Loading...":this._formatLabel(this._percent),s=m(this.getAttribute("size")),o=v(this.getAttribute("variant")),c=_(this.getAttribute("tone")),n=x(this.getAttribute("shape")),a=E(this.getAttribute("mode")),l=r&&a==="circle",h=r&&a!=="circle";this._metaEl&&(this._metaEl.textContent=h?i:"",this._metaEl.setAttribute("aria-hidden",h?"false":"true")),this._trackEl&&(this._trackEl.dataset.size=s,this._trackEl.dataset.variant=o,this._trackEl.dataset.tone=c,this._trackEl.dataset.shape=n,a==="line"?(this._trackEl.setAttribute("aria-valuemin",String(this._min)),this._trackEl.setAttribute("aria-valuemax",String(this._max)),this._trackEl.setAttribute("aria-busy",this._indeterminate?"true":"false"),this._trackEl.setAttribute("role","progressbar"),this._indeterminate?(this._trackEl.removeAttribute("aria-valuenow"),this._trackEl.setAttribute("aria-valuetext","Loading")):(this._trackEl.removeAttribute("aria-valuetext"),this._trackEl.setAttribute("aria-valuenow",String(this._value)))):(this._trackEl.removeAttribute("role"),this._trackEl.removeAttribute("aria-valuemin"),this._trackEl.removeAttribute("aria-valuemax"),this._trackEl.removeAttribute("aria-valuenow"),this._trackEl.removeAttribute("aria-valuetext"),this._trackEl.removeAttribute("aria-busy"))),this._bufferEl&&(this._bufferEl.style.width=`${this._indeterminate?0:this._bufferPercent}%`),this._valueEl&&(this._valueEl.style.width=`${this._indeterminate?38:this._percent}%`),this._radialWrapEl&&(this._radialWrapEl.dataset.size=s,this._radialWrapEl.dataset.variant=o,this._radialWrapEl.dataset.tone=c,this._radialWrapEl.dataset.shape=n,a==="circle"?(this._radialWrapEl.setAttribute("aria-valuemin",String(this._min)),this._radialWrapEl.setAttribute("aria-valuemax",String(this._max)),this._radialWrapEl.setAttribute("aria-busy",this._indeterminate?"true":"false"),this._radialWrapEl.setAttribute("role","progressbar"),this._indeterminate?(this._radialWrapEl.removeAttribute("aria-valuenow"),this._radialWrapEl.setAttribute("aria-valuetext","Loading")):(this._radialWrapEl.removeAttribute("aria-valuetext"),this._radialWrapEl.setAttribute("aria-valuenow",String(this._value)))):(this._radialWrapEl.removeAttribute("role"),this._radialWrapEl.removeAttribute("aria-valuemin"),this._radialWrapEl.removeAttribute("aria-valuemax"),this._radialWrapEl.removeAttribute("aria-valuenow"),this._radialWrapEl.removeAttribute("aria-valuetext"),this._radialWrapEl.removeAttribute("aria-busy"))),this._radialBufferEl&&this._radialBufferEl.style.setProperty("--ui-radial-buffer",String(this._indeterminate?0:this._bufferPercent)),this._radialValueEl&&this._radialValueEl.style.setProperty("--ui-radial-value",String(this._indeterminate?24:this._percent)),this._radialCenterEl&&(this._radialCenterEl.textContent=l?i:"",this._radialCenterEl.setAttribute("aria-hidden",l?"false":"true"))}}typeof customElements<"u"&&!customElements.get("ui-progress")&&customElements.define("ui-progress",p);exports.UIProgress=p;
329
+ `),this._metaEl=this.root.querySelector(".meta"),this._trackEl=this.root.querySelector(".track"),this._bufferEl=this.root.querySelector(".buffer"),this._valueEl=this.root.querySelector(".value"),this._radialWrapEl=this.root.querySelector(".radial-wrap"),this._radialBufferEl=this.root.querySelector(".radial-buffer"),this._radialValueEl=this.root.querySelector(".radial-value"),this._radialCenterEl=this.root.querySelector(".radial-center"),this._domReady=!0)}render(){this._ensureDom();const r=v(this.getAttribute("show-label"),!1),t=this.getAttribute("label"),i=t!=null&&t!==""?t:this._indeterminate?"Loading...":this._formatLabel(this._percent),s=_(this.getAttribute("size")),o=x(this.getAttribute("variant")),d=E(this.getAttribute("tone")),l=k(this.getAttribute("shape")),a=A(this.getAttribute("mode")),n=r&&a==="circle",h=r&&a!=="circle",f=(this.getAttribute("aria-label")||"").trim()||(t||"").trim()||"Progress";for(const g of[this._trackEl,this._radialWrapEl])g?.setAttribute("aria-label",f);this._metaEl&&(this._metaEl.textContent=h?i:"",this._metaEl.setAttribute("aria-hidden",h?"false":"true")),this._trackEl&&(this._trackEl.dataset.size=s,this._trackEl.dataset.variant=o,this._trackEl.dataset.tone=d,this._trackEl.dataset.shape=l,a==="line"?(this._trackEl.setAttribute("aria-valuemin",String(this._min)),this._trackEl.setAttribute("aria-valuemax",String(this._max)),this._trackEl.setAttribute("aria-busy",this._indeterminate?"true":"false"),this._trackEl.setAttribute("role","progressbar"),this._indeterminate?(this._trackEl.removeAttribute("aria-valuenow"),this._trackEl.setAttribute("aria-valuetext","Loading")):(this._trackEl.removeAttribute("aria-valuetext"),this._trackEl.setAttribute("aria-valuenow",String(this._value)))):(this._trackEl.removeAttribute("role"),this._trackEl.removeAttribute("aria-valuemin"),this._trackEl.removeAttribute("aria-valuemax"),this._trackEl.removeAttribute("aria-valuenow"),this._trackEl.removeAttribute("aria-valuetext"),this._trackEl.removeAttribute("aria-busy"))),this._bufferEl&&(this._bufferEl.style.width=`${this._indeterminate?0:this._bufferPercent}%`),this._valueEl&&(this._valueEl.style.width=`${this._indeterminate?38:this._percent}%`),this._radialWrapEl&&(this._radialWrapEl.dataset.size=s,this._radialWrapEl.dataset.variant=o,this._radialWrapEl.dataset.tone=d,this._radialWrapEl.dataset.shape=l,a==="circle"?(this._radialWrapEl.setAttribute("aria-valuemin",String(this._min)),this._radialWrapEl.setAttribute("aria-valuemax",String(this._max)),this._radialWrapEl.setAttribute("aria-busy",this._indeterminate?"true":"false"),this._radialWrapEl.setAttribute("role","progressbar"),this._indeterminate?(this._radialWrapEl.removeAttribute("aria-valuenow"),this._radialWrapEl.setAttribute("aria-valuetext","Loading")):(this._radialWrapEl.removeAttribute("aria-valuetext"),this._radialWrapEl.setAttribute("aria-valuenow",String(this._value)))):(this._radialWrapEl.removeAttribute("role"),this._radialWrapEl.removeAttribute("aria-valuemin"),this._radialWrapEl.removeAttribute("aria-valuemax"),this._radialWrapEl.removeAttribute("aria-valuenow"),this._radialWrapEl.removeAttribute("aria-valuetext"),this._radialWrapEl.removeAttribute("aria-busy"))),this._radialBufferEl&&this._radialBufferEl.style.setProperty("--ui-radial-buffer",String(this._indeterminate?0:this._bufferPercent)),this._radialValueEl&&this._radialValueEl.style.setProperty("--ui-radial-value",String(this._indeterminate?24:this._percent)),this._radialCenterEl&&(this._radialCenterEl.textContent=n?i:"",this._radialCenterEl.setAttribute("aria-hidden",n?"false":"true"))}}typeof customElements<"u"&&!customElements.get("ui-progress")&&customElements.define("ui-progress",p);exports.UIProgress=p;
@@ -1,5 +1,5 @@
1
- import { E as p } from "./ElementBase-YlTLMsGk.mjs";
2
- const f = `
1
+ import { E as g } from "./ElementBase-YlTLMsGk.mjs";
2
+ const b = `
3
3
  :host {
4
4
  display: block;
5
5
  width: 100%;
@@ -316,32 +316,32 @@ const f = `
316
316
  function u(e, r, t) {
317
317
  return Number.isNaN(e) || e < r ? r : e > t ? t : e;
318
318
  }
319
- function g(e, r) {
319
+ function m(e, r) {
320
320
  if (e == null) return r;
321
321
  const t = String(e).toLowerCase();
322
322
  return t !== "false" && t !== "0";
323
323
  }
324
- function d(e, r) {
324
+ function c(e, r) {
325
325
  if (e == null || e === "") return r;
326
326
  const t = Number(e);
327
327
  return Number.isFinite(t) ? t : r;
328
328
  }
329
- function b(e) {
329
+ function v(e) {
330
330
  return e === "xs" || e === "sm" || e === "lg" ? e : "md";
331
331
  }
332
- function m(e) {
332
+ function _(e) {
333
333
  return e === "solid" || e === "soft" || e === "line" || e === "glass" || e === "contrast" ? e : "default";
334
334
  }
335
- function v(e) {
335
+ function x(e) {
336
336
  return e === "success" || e === "warning" || e === "danger" || e === "info" || e === "neutral" ? e : "brand";
337
337
  }
338
- function _(e) {
338
+ function E(e) {
339
339
  return e === "square" || e === "round" ? e : "pill";
340
340
  }
341
- function x(e) {
341
+ function k(e) {
342
342
  return e === "circle" || e === "radial" ? "circle" : "line";
343
343
  }
344
- class E extends p {
344
+ class A extends g {
345
345
  constructor() {
346
346
  super(), this._value = 0, this._buffer = 0, this._max = 100, this._min = 0, this._percent = 0, this._bufferPercent = 0, this._indeterminate = !1, this._domReady = !1, this._metaEl = null, this._trackEl = null, this._bufferEl = null, this._valueEl = null, this._radialWrapEl = null, this._radialBufferEl = null, this._radialValueEl = null, this._radialCenterEl = null, this._lastEmitted = "", this._completeFired = !1;
347
347
  }
@@ -361,6 +361,7 @@ class E extends p {
361
361
  "animated",
362
362
  "show-label",
363
363
  "label",
364
+ "aria-label",
364
365
  "format",
365
366
  "precision",
366
367
  "headless"
@@ -385,11 +386,11 @@ class E extends p {
385
386
  this.setValue(this._min);
386
387
  }
387
388
  _syncFromAttributes() {
388
- const r = d(this.getAttribute("min"), 0), t = d(this.getAttribute("max"), 100), i = t > r ? t : r + 1, s = d(this.getAttribute("value"), r), o = d(this.getAttribute("buffer"), s), c = this.hasAttribute("indeterminate"), n = u(s, r, i), a = u(o, r, i), l = Math.max(1e-6, i - r);
389
- this._min = r, this._max = i, this._value = n, this._buffer = a, this._indeterminate = c, this._percent = u((n - r) / l * 100, 0, 100), this._bufferPercent = u((a - r) / l * 100, 0, 100);
389
+ const r = c(this.getAttribute("min"), 0), t = c(this.getAttribute("max"), 100), i = t > r ? t : r + 1, s = c(this.getAttribute("value"), r), o = c(this.getAttribute("buffer"), s), d = this.hasAttribute("indeterminate"), l = u(s, r, i), a = u(o, r, i), n = Math.max(1e-6, i - r);
390
+ this._min = r, this._max = i, this._value = l, this._buffer = a, this._indeterminate = d, this._percent = u((l - r) / n * 100, 0, 100), this._bufferPercent = u((a - r) / n * 100, 0, 100);
390
391
  }
391
392
  _formatLabel(r) {
392
- const t = (this.getAttribute("format") || "percent").toLowerCase(), i = u(Math.round(d(this.getAttribute("precision"), 0)), 0, 3);
393
+ const t = (this.getAttribute("format") || "percent").toLowerCase(), i = u(Math.round(c(this.getAttribute("precision"), 0)), 0, 3);
393
394
  if (t === "value") return `${this._value.toFixed(i)} / ${this._max.toFixed(i)}`;
394
395
  if (t === "fraction") {
395
396
  const s = Math.max(1, this._max - this._min);
@@ -421,7 +422,7 @@ class E extends p {
421
422
  }
422
423
  _ensureDom() {
423
424
  this._domReady || (this.setContent(`
424
- <style>${f}</style>
425
+ <style>${b}</style>
425
426
  <div class="root" part="root">
426
427
  <div class="meta" part="label"></div>
427
428
  <div class="track" part="track" role="progressbar">
@@ -439,11 +440,12 @@ class E extends p {
439
440
  }
440
441
  render() {
441
442
  this._ensureDom();
442
- const r = g(this.getAttribute("show-label"), !1), t = this.getAttribute("label"), i = t != null && t !== "" ? t : this._indeterminate ? "Loading..." : this._formatLabel(this._percent), s = b(this.getAttribute("size")), o = m(this.getAttribute("variant")), c = v(this.getAttribute("tone")), n = _(this.getAttribute("shape")), a = x(this.getAttribute("mode")), l = r && a === "circle", h = r && a !== "circle";
443
- this._metaEl && (this._metaEl.textContent = h ? i : "", this._metaEl.setAttribute("aria-hidden", h ? "false" : "true")), this._trackEl && (this._trackEl.dataset.size = s, this._trackEl.dataset.variant = o, this._trackEl.dataset.tone = c, this._trackEl.dataset.shape = n, a === "line" ? (this._trackEl.setAttribute("aria-valuemin", String(this._min)), this._trackEl.setAttribute("aria-valuemax", String(this._max)), this._trackEl.setAttribute("aria-busy", this._indeterminate ? "true" : "false"), this._trackEl.setAttribute("role", "progressbar"), this._indeterminate ? (this._trackEl.removeAttribute("aria-valuenow"), this._trackEl.setAttribute("aria-valuetext", "Loading")) : (this._trackEl.removeAttribute("aria-valuetext"), this._trackEl.setAttribute("aria-valuenow", String(this._value)))) : (this._trackEl.removeAttribute("role"), this._trackEl.removeAttribute("aria-valuemin"), this._trackEl.removeAttribute("aria-valuemax"), this._trackEl.removeAttribute("aria-valuenow"), this._trackEl.removeAttribute("aria-valuetext"), this._trackEl.removeAttribute("aria-busy"))), this._bufferEl && (this._bufferEl.style.width = `${this._indeterminate ? 0 : this._bufferPercent}%`), this._valueEl && (this._valueEl.style.width = `${this._indeterminate ? 38 : this._percent}%`), this._radialWrapEl && (this._radialWrapEl.dataset.size = s, this._radialWrapEl.dataset.variant = o, this._radialWrapEl.dataset.tone = c, this._radialWrapEl.dataset.shape = n, a === "circle" ? (this._radialWrapEl.setAttribute("aria-valuemin", String(this._min)), this._radialWrapEl.setAttribute("aria-valuemax", String(this._max)), this._radialWrapEl.setAttribute("aria-busy", this._indeterminate ? "true" : "false"), this._radialWrapEl.setAttribute("role", "progressbar"), this._indeterminate ? (this._radialWrapEl.removeAttribute("aria-valuenow"), this._radialWrapEl.setAttribute("aria-valuetext", "Loading")) : (this._radialWrapEl.removeAttribute("aria-valuetext"), this._radialWrapEl.setAttribute("aria-valuenow", String(this._value)))) : (this._radialWrapEl.removeAttribute("role"), this._radialWrapEl.removeAttribute("aria-valuemin"), this._radialWrapEl.removeAttribute("aria-valuemax"), this._radialWrapEl.removeAttribute("aria-valuenow"), this._radialWrapEl.removeAttribute("aria-valuetext"), this._radialWrapEl.removeAttribute("aria-busy"))), this._radialBufferEl && this._radialBufferEl.style.setProperty("--ui-radial-buffer", String(this._indeterminate ? 0 : this._bufferPercent)), this._radialValueEl && this._radialValueEl.style.setProperty("--ui-radial-value", String(this._indeterminate ? 24 : this._percent)), this._radialCenterEl && (this._radialCenterEl.textContent = l ? i : "", this._radialCenterEl.setAttribute("aria-hidden", l ? "false" : "true"));
443
+ const r = m(this.getAttribute("show-label"), !1), t = this.getAttribute("label"), i = t != null && t !== "" ? t : this._indeterminate ? "Loading..." : this._formatLabel(this._percent), s = v(this.getAttribute("size")), o = _(this.getAttribute("variant")), d = x(this.getAttribute("tone")), l = E(this.getAttribute("shape")), a = k(this.getAttribute("mode")), n = r && a === "circle", h = r && a !== "circle", p = (this.getAttribute("aria-label") || "").trim() || (t || "").trim() || "Progress";
444
+ for (const f of [this._trackEl, this._radialWrapEl]) f?.setAttribute("aria-label", p);
445
+ this._metaEl && (this._metaEl.textContent = h ? i : "", this._metaEl.setAttribute("aria-hidden", h ? "false" : "true")), this._trackEl && (this._trackEl.dataset.size = s, this._trackEl.dataset.variant = o, this._trackEl.dataset.tone = d, this._trackEl.dataset.shape = l, a === "line" ? (this._trackEl.setAttribute("aria-valuemin", String(this._min)), this._trackEl.setAttribute("aria-valuemax", String(this._max)), this._trackEl.setAttribute("aria-busy", this._indeterminate ? "true" : "false"), this._trackEl.setAttribute("role", "progressbar"), this._indeterminate ? (this._trackEl.removeAttribute("aria-valuenow"), this._trackEl.setAttribute("aria-valuetext", "Loading")) : (this._trackEl.removeAttribute("aria-valuetext"), this._trackEl.setAttribute("aria-valuenow", String(this._value)))) : (this._trackEl.removeAttribute("role"), this._trackEl.removeAttribute("aria-valuemin"), this._trackEl.removeAttribute("aria-valuemax"), this._trackEl.removeAttribute("aria-valuenow"), this._trackEl.removeAttribute("aria-valuetext"), this._trackEl.removeAttribute("aria-busy"))), this._bufferEl && (this._bufferEl.style.width = `${this._indeterminate ? 0 : this._bufferPercent}%`), this._valueEl && (this._valueEl.style.width = `${this._indeterminate ? 38 : this._percent}%`), this._radialWrapEl && (this._radialWrapEl.dataset.size = s, this._radialWrapEl.dataset.variant = o, this._radialWrapEl.dataset.tone = d, this._radialWrapEl.dataset.shape = l, a === "circle" ? (this._radialWrapEl.setAttribute("aria-valuemin", String(this._min)), this._radialWrapEl.setAttribute("aria-valuemax", String(this._max)), this._radialWrapEl.setAttribute("aria-busy", this._indeterminate ? "true" : "false"), this._radialWrapEl.setAttribute("role", "progressbar"), this._indeterminate ? (this._radialWrapEl.removeAttribute("aria-valuenow"), this._radialWrapEl.setAttribute("aria-valuetext", "Loading")) : (this._radialWrapEl.removeAttribute("aria-valuetext"), this._radialWrapEl.setAttribute("aria-valuenow", String(this._value)))) : (this._radialWrapEl.removeAttribute("role"), this._radialWrapEl.removeAttribute("aria-valuemin"), this._radialWrapEl.removeAttribute("aria-valuemax"), this._radialWrapEl.removeAttribute("aria-valuenow"), this._radialWrapEl.removeAttribute("aria-valuetext"), this._radialWrapEl.removeAttribute("aria-busy"))), this._radialBufferEl && this._radialBufferEl.style.setProperty("--ui-radial-buffer", String(this._indeterminate ? 0 : this._bufferPercent)), this._radialValueEl && this._radialValueEl.style.setProperty("--ui-radial-value", String(this._indeterminate ? 24 : this._percent)), this._radialCenterEl && (this._radialCenterEl.textContent = n ? i : "", this._radialCenterEl.setAttribute("aria-hidden", n ? "false" : "true"));
444
446
  }
445
447
  }
446
- typeof customElements < "u" && !customElements.get("ui-progress") && customElements.define("ui-progress", E);
448
+ typeof customElements < "u" && !customElements.get("ui-progress") && customElements.define("ui-progress", A);
447
449
  export {
448
- E as UIProgress
450
+ A as UIProgress
449
451
  };
@@ -3,7 +3,7 @@
3
3
  --ui-quick-bg: color-mix(in srgb, var(--ui-color-surface, #ffffff) 95%, transparent);
4
4
  --ui-quick-border: color-mix(in srgb, var(--ui-color-border, #cbd5e1) 76%, transparent);
5
5
  --ui-quick-text: var(--ui-color-text, #0f172a);
6
- --ui-quick-muted: var(--ui-color-muted, #64748b);
6
+ --ui-quick-muted: var(--ui-color-muted, #526175);
7
7
  --ui-quick-accent: var(--ui-color-primary, #2563eb);
8
8
  --ui-quick-focus: var(--ui-color-focus-ring, #2563eb);
9
9
 
@@ -199,10 +199,10 @@
199
199
  }
200
200
  `;let p=0;function l(u){return u.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}class d extends b.ElementBase{constructor(){super(),this._instanceId=++p,this._onClick=this._onClick.bind(this),this._onKeyDown=this._onKeyDown.bind(this)}static get observedAttributes(){return["open","mode","orientation","variant","floating","placement","collapsible","label","headless"]}connectedCallback(){super.connectedCallback(),this.root.addEventListener("click",this._onClick),this.root.addEventListener("keydown",this._onKeyDown),this.getAttribute("mode")!=="fab"&&!this.hasAttribute("collapsible")&&!this.hasAttribute("open")&&this.setAttribute("open","")}disconnectedCallback(){this.root.removeEventListener("click",this._onClick),this.root.removeEventListener("keydown",this._onKeyDown),super.disconnectedCallback()}attributeChangedCallback(e,o,t){if(o!==t){if(e==="open"){this._syncOpenUi();return}this.isConnected&&this.requestRender()}}get open(){return this.hasAttribute("open")}set open(e){e?this.setAttribute("open",""):this.removeAttribute("open")}show(){this.toggle(!0)}hide(){this.toggle(!1)}toggle(e){const o=typeof e=="boolean"?e:!this.open;this.open=o;const t={open:o};this.dispatchEvent(new CustomEvent(o?"open":"close",{detail:t,bubbles:!0,composed:!0})),this.dispatchEvent(new CustomEvent("change",{detail:t,bubbles:!0,composed:!0})),this.dispatchEvent(new CustomEvent("toggle",{detail:t,bubbles:!0,composed:!0}))}_actions(){const e=this.root.querySelector('slot[name="action"]');return e?e.assignedElements({flatten:!0}).filter(o=>o instanceof HTMLElement):[]}_actionsId(){return`ui-quick-actions-${this._instanceId}-actions`}_syncActionAccessibility(e){this._actions().forEach((t,r)=>{if(t.id||(t.id=`ui-quick-actions-${this._instanceId}-action-${r+1}`),t.hasAttribute("role")||t.setAttribute("role","button"),!t.hasAttribute("aria-label")){const i=t.textContent?.trim();i&&t.setAttribute("aria-label",i)}if(e){const i=t.getAttribute("data-ui-quick-tabindex");i!=null?(i==="__none__"?t.removeAttribute("tabindex"):t.setAttribute("tabindex",i),t.removeAttribute("data-ui-quick-tabindex")):t.hasAttribute("tabindex")||t.setAttribute("tabindex","0"),t.setAttribute("aria-hidden","false");return}t.hasAttribute("data-ui-quick-tabindex")||t.setAttribute("data-ui-quick-tabindex",t.getAttribute("tabindex")??"__none__"),t.setAttribute("tabindex","-1"),t.setAttribute("aria-hidden","true")})}_onClick(e){const o=e.target;if(!o)return;if(o.closest(".toggle")){this.toggle();return}const r=e.composedPath(),i=this._actions(),n=i.find(s=>r.includes(s));if(!n)return;const a=i.indexOf(n),c={index:a,id:n.id||n.getAttribute("data-id")||String(a+1),label:n.getAttribute("aria-label")||n.textContent?.trim()||`Action ${a+1}`};this.dispatchEvent(new CustomEvent("select",{detail:c,bubbles:!0,composed:!0})),this.getAttribute("mode")==="fab"&&this.hide()}_moveFocus(e,o){const t=this._actions();if(!t.length)return;const r=t.indexOf(e);if(r<0)return;const i=(r+o+t.length)%t.length;t[i].focus()}_onKeyDown(e){if(e.key==="Escape"&&this.open&&this.getAttribute("mode")==="fab"){e.preventDefault(),this.hide();return}const o=e.target;if(!o)return;const r=this._actions().find(s=>s===o||s.contains(o));if(!r)return;const i=this.getAttribute("orientation")==="vertical"||this.getAttribute("mode")==="fab",n=!i&&getComputedStyle(this).direction==="rtl",a=i?"ArrowDown":n?"ArrowLeft":"ArrowRight",c=i?"ArrowUp":n?"ArrowRight":"ArrowLeft";if(e.key===a){e.preventDefault(),this._moveFocus(r,1);return}if(e.key===c){e.preventDefault(),this._moveFocus(r,-1);return}if(e.key==="Home"||e.key==="End"){e.preventDefault();const s=this._actions();if(!s.length)return;(e.key==="Home"?s[0]:s[s.length-1]).focus()}}_syncOpenUi(){if(!this.isConnected)return;if(!this.root.querySelector(".root")){this.requestRender();return}const e=this.getAttribute("mode")==="fab"?"fab":"bar",o=this.hasAttribute("collapsible")||e==="fab",t=this.open||!o&&e==="bar",r=this.getAttribute("label")||"Quick actions",i=this.root.querySelector(".toggle");i&&(i.textContent=t?"−":"+",i.setAttribute("aria-label",r),i.setAttribute("aria-expanded",t?"true":"false"));const n=this.root.querySelector(".actions");n&&(t?n.removeAttribute("hidden"):n.setAttribute("hidden","")),this._syncActionAccessibility(t)}render(){const e=this.getAttribute("mode")==="fab"?"fab":"bar",o=this.hasAttribute("collapsible")||e==="fab",t=this.open||!o&&e==="bar",r=this.getAttribute("label")||"Quick actions",i=this._actionsId(),n=this.getAttribute("orientation")==="vertical"||e==="fab"?"vertical":"horizontal";this.setContent(`
201
201
  <style>${h}</style>
202
- <section class="root" part="root" role="toolbar" aria-label="${l(r)}" aria-orientation="${n}">
202
+ <div class="root" part="root" role="toolbar" aria-label="${l(r)}" aria-orientation="${n}">
203
203
  ${o?`<button type="button" class="toggle" part="toggle" aria-label="${l(r)}" aria-controls="${i}" aria-haspopup="true" aria-expanded="${t?"true":"false"}">${t?"−":"+"}</button>`:""}
204
204
  <div id="${i}" class="actions" part="actions" role="group" aria-label="${l(r)} list" ${t?"":"hidden"}>
205
205
  <slot name="action"></slot>
206
206
  </div>
207
- </section>
207
+ </div>
208
208
  `),this._syncActionAccessibility(t)}}typeof customElements<"u"&&!customElements.get("ui-quick-actions")&&customElements.define("ui-quick-actions",d);exports.UIQuickActions=d;
@@ -4,7 +4,7 @@ const b = `
4
4
  --ui-quick-bg: color-mix(in srgb, var(--ui-color-surface, #ffffff) 95%, transparent);
5
5
  --ui-quick-border: color-mix(in srgb, var(--ui-color-border, #cbd5e1) 76%, transparent);
6
6
  --ui-quick-text: var(--ui-color-text, #0f172a);
7
- --ui-quick-muted: var(--ui-color-muted, #64748b);
7
+ --ui-quick-muted: var(--ui-color-muted, #526175);
8
8
  --ui-quick-accent: var(--ui-color-primary, #2563eb);
9
9
  --ui-quick-focus: var(--ui-color-focus-ring, #2563eb);
10
10
 
@@ -338,12 +338,12 @@ class p extends d {
338
338
  const e = this.getAttribute("mode") === "fab" ? "fab" : "bar", o = this.hasAttribute("collapsible") || e === "fab", t = this.open || !o && e === "bar", r = this.getAttribute("label") || "Quick actions", i = this._actionsId(), n = this.getAttribute("orientation") === "vertical" || e === "fab" ? "vertical" : "horizontal";
339
339
  this.setContent(`
340
340
  <style>${b}</style>
341
- <section class="root" part="root" role="toolbar" aria-label="${l(r)}" aria-orientation="${n}">
341
+ <div class="root" part="root" role="toolbar" aria-label="${l(r)}" aria-orientation="${n}">
342
342
  ${o ? `<button type="button" class="toggle" part="toggle" aria-label="${l(r)}" aria-controls="${i}" aria-haspopup="true" aria-expanded="${t ? "true" : "false"}">${t ? "−" : "+"}</button>` : ""}
343
343
  <div id="${i}" class="actions" part="actions" role="group" aria-label="${l(r)} list" ${t ? "" : "hidden"}>
344
344
  <slot name="action"></slot>
345
345
  </div>
346
- </section>
346
+ </div>
347
347
  `), this._syncActionAccessibility(t);
348
348
  }
349
349
  }
@@ -17,7 +17,7 @@
17
17
  --ui-radio-border: color-mix(in srgb, var(--ui-color-border, #cbd5e1) 72%, transparent);
18
18
  --ui-radio-border-selected: var(--ui-color-primary, #2563eb);
19
19
  --ui-radio-text: var(--ui-color-text, #0f172a);
20
- --ui-radio-muted: #64748b;
20
+ --ui-radio-muted: #526175;
21
21
  --ui-radio-shadow: none;
22
22
  --ui-radio-ring: color-mix(in srgb, var(--ui-color-primary, #2563eb) 34%, transparent);
23
23
  }
@@ -19,7 +19,7 @@ const _ = `
19
19
  --ui-radio-border: color-mix(in srgb, var(--ui-color-border, #cbd5e1) 72%, transparent);
20
20
  --ui-radio-border-selected: var(--ui-color-primary, #2563eb);
21
21
  --ui-radio-text: var(--ui-color-text, #0f172a);
22
- --ui-radio-muted: #64748b;
22
+ --ui-radio-muted: #526175;
23
23
  --ui-radio-shadow: none;
24
24
  --ui-radio-ring: color-mix(in srgb, var(--ui-color-primary, #2563eb) 34%, transparent);
25
25
  }
package/dist/radio.cjs.js CHANGED
@@ -13,7 +13,7 @@
13
13
  --ui-radio-disabled-bg: color-mix(in srgb, var(--ui-color-surface-alt, #f1f5f9) 88%, #ffffff 12%);
14
14
  --ui-radio-disabled-border: 1.5px solid color-mix(in srgb, var(--ui-color-border, #cbd5e1) 78%, transparent);
15
15
  --ui-radio-label-color: var(--ui-color-text, var(--ui-text, #0f172a));
16
- --ui-radio-muted: var(--ui-color-muted, #64748b);
16
+ --ui-radio-muted: var(--ui-color-muted, #526175);
17
17
  --ui-radio-duration: 170ms;
18
18
  --ui-radio-easing: cubic-bezier(0.2, 0.8, 0.2, 1);
19
19
 
@@ -245,7 +245,7 @@
245
245
  --ui-radio-label-color: CanvasText;
246
246
  }
247
247
  }
248
- `;function o(r){return r!==null&&r.toLowerCase()!=="false"&&r!=="0"}function c(r){return r instanceof HTMLElement?!!r.closest('a, button, input, select, textarea, [contenteditable="true"], [data-ui-radio-no-toggle]'):!1}class s extends l.ElementBase{constructor(){super(),this._uid=`ui-radio-${Math.random().toString(36).slice(2,9)}`,this._onClick=this._onClick.bind(this),this._onKeyDown=this._onKeyDown.bind(this)}static get observedAttributes(){return["checked","disabled","loading","invalid","required","headless","name","value","tabindex"]}connectedCallback(){super.connectedCallback(),this.addEventListener("click",this._onClick),this.addEventListener("keydown",this._onKeyDown),this.checked&&this._uncheckSiblings(),this._syncA11yState()}disconnectedCallback(){this.removeEventListener("click",this._onClick),this.removeEventListener("keydown",this._onKeyDown),super.disconnectedCallback()}attributeChangedCallback(e,i,t){i!==t&&((e==="checked"||e==="name")&&this.checked&&this._uncheckSiblings(),this._syncA11yState())}get checked(){return o(this.getAttribute("checked"))}set checked(e){const i=!!e;i!==this.checked&&(i?this.setAttribute("checked",""):this.removeAttribute("checked"))}get disabled(){return o(this.getAttribute("disabled"))}set disabled(e){const i=!!e;i!==this.disabled&&(i?this.setAttribute("disabled",""):this.removeAttribute("disabled"))}get loading(){return o(this.getAttribute("loading"))}set loading(e){const i=!!e;i!==this.loading&&(i?this.setAttribute("loading",""):this.removeAttribute("loading"))}get invalid(){return o(this.getAttribute("invalid"))}set invalid(e){const i=!!e;i!==this.invalid&&(i?this.setAttribute("invalid",""):this.removeAttribute("invalid"))}get required(){return o(this.getAttribute("required"))}set required(e){const i=!!e;i!==this.required&&(i?this.setAttribute("required",""):this.removeAttribute("required"))}get headless(){return this.hasAttribute("headless")}set headless(e){e!==this.headless&&(e?this.setAttribute("headless",""):this.removeAttribute("headless"))}get name(){return this.getAttribute("name")||""}set name(e){const i=String(e||"").trim();if(!i){this.removeAttribute("name");return}this.setAttribute("name",i)}get value(){return this.getAttribute("value")||""}set value(e){const i=String(e||"");if(!i){this.removeAttribute("value");return}this.setAttribute("value",i)}get density(){return this.getAttribute("density")||"default"}set density(e){const i=(e||"").trim().toLowerCase();if(!i||i==="default"){this.removeAttribute("density");return}this.setAttribute("density",i)}get tone(){const e=this.getAttribute("tone");return e==="neutral"||e==="success"||e==="warning"||e==="danger"||e==="info"?e:"brand"}set tone(e){const i=(e||"").trim().toLowerCase();if(!i||i==="brand"){this.removeAttribute("tone");return}this.setAttribute("tone",i)}_syncA11yState(){const e=this.disabled||this.loading,i=e?"-1":this.getAttribute("tabindex")||"0",t=`${this._uid}-label`;this.setAttribute("role","radio"),this.setAttribute("aria-checked",this.checked?"true":"false"),this.setAttribute("aria-disabled",e?"true":"false"),this.setAttribute("aria-busy",this.loading?"true":"false"),this.setAttribute("aria-required",this.required?"true":"false"),this.invalid?this.setAttribute("aria-invalid","true"):this.removeAttribute("aria-invalid"),this.setAttribute("aria-labelledby",t),this.setAttribute("tabindex",i)}_resolveQueryScope(){const e=this.closest("form, ui-form");if(e)return e;const i=this.getRootNode();return i instanceof Document||i instanceof ShadowRoot||i instanceof Element?i:null}_getGroupMembers(){const e=this.name.trim();if(!e)return[this];const i=this._resolveQueryScope();return!i||!("querySelectorAll"in i)?[this]:Array.from(i.querySelectorAll("ui-radio")).filter(t=>t instanceof s&&t.name===e)}_uncheckSiblings(){this._getGroupMembers().forEach(i=>{i!==this&&i.checked&&(i.checked=!1)})}_focusSelf(){try{this.focus({preventScroll:!0})}catch{this.focus()}}_checkFromUser(e){if(this.disabled||this.loading||this.checked)return;this.checked=!0;const i={checked:!0,value:this.value||void 0,name:this.name||void 0,reason:e};this.dispatchEvent(new CustomEvent("input",{detail:i,bubbles:!0,composed:!0})),this.dispatchEvent(new CustomEvent("change",{detail:i,bubbles:!0,composed:!0}))}_moveGroupSelection(e){const i=this._getGroupMembers().filter(n=>!n.disabled&&!n.loading);if(i.length<=1)return;const d=(Math.max(i.indexOf(this),0)+e+i.length)%i.length,a=i[d];!a||a===this||(a._checkFromUser("keyboard"),a._focusSelf())}_onClick(e){this.disabled||this.loading||e.composedPath().some(t=>c(t))||this._checkFromUser("click")}_onKeyDown(e){if(!(this.disabled||this.loading)){if(e.key===" "||e.key==="Enter"){e.preventDefault(),this._checkFromUser("keyboard");return}if(this.name){if(e.key==="ArrowRight"||e.key==="ArrowDown"){e.preventDefault(),this._moveGroupSelection(1);return}(e.key==="ArrowLeft"||e.key==="ArrowUp")&&(e.preventDefault(),this._moveGroupSelection(-1))}}}render(){this._syncA11yState(),this.setContent(`
248
+ `;function o(r){return r!==null&&r.toLowerCase()!=="false"&&r!=="0"}function c(r){return r instanceof HTMLElement?!!r.closest('a, button, input, select, textarea, [contenteditable="true"], [data-ui-radio-no-toggle]'):!1}class s extends l.ElementBase{constructor(){super(),this._uid=`ui-radio-${Math.random().toString(36).slice(2,9)}`,this._onClick=this._onClick.bind(this),this._onKeyDown=this._onKeyDown.bind(this)}static get observedAttributes(){return["checked","disabled","loading","invalid","required","headless","name","value","tabindex"]}connectedCallback(){super.connectedCallback(),this.addEventListener("click",this._onClick),this.addEventListener("keydown",this._onKeyDown),this.checked&&this._uncheckSiblings(),this._syncA11yState()}disconnectedCallback(){this.removeEventListener("click",this._onClick),this.removeEventListener("keydown",this._onKeyDown),super.disconnectedCallback()}attributeChangedCallback(e,i,t){i!==t&&((e==="checked"||e==="name")&&this.checked&&this._uncheckSiblings(),this._syncA11yState())}get checked(){return o(this.getAttribute("checked"))}set checked(e){const i=!!e;i!==this.checked&&(i?this.setAttribute("checked",""):this.removeAttribute("checked"))}get disabled(){return o(this.getAttribute("disabled"))}set disabled(e){const i=!!e;i!==this.disabled&&(i?this.setAttribute("disabled",""):this.removeAttribute("disabled"))}get loading(){return o(this.getAttribute("loading"))}set loading(e){const i=!!e;i!==this.loading&&(i?this.setAttribute("loading",""):this.removeAttribute("loading"))}get invalid(){return o(this.getAttribute("invalid"))}set invalid(e){const i=!!e;i!==this.invalid&&(i?this.setAttribute("invalid",""):this.removeAttribute("invalid"))}get required(){return o(this.getAttribute("required"))}set required(e){const i=!!e;i!==this.required&&(i?this.setAttribute("required",""):this.removeAttribute("required"))}get headless(){return this.hasAttribute("headless")}set headless(e){e!==this.headless&&(e?this.setAttribute("headless",""):this.removeAttribute("headless"))}get name(){return this.getAttribute("name")||""}set name(e){const i=String(e||"").trim();if(!i){this.removeAttribute("name");return}this.setAttribute("name",i)}get value(){return this.getAttribute("value")||""}set value(e){const i=String(e||"");if(!i){this.removeAttribute("value");return}this.setAttribute("value",i)}get density(){return this.getAttribute("density")||"default"}set density(e){const i=(e||"").trim().toLowerCase();if(!i||i==="default"){this.removeAttribute("density");return}this.setAttribute("density",i)}get tone(){const e=this.getAttribute("tone");return e==="neutral"||e==="success"||e==="warning"||e==="danger"||e==="info"?e:"brand"}set tone(e){const i=(e||"").trim().toLowerCase();if(!i||i==="brand"){this.removeAttribute("tone");return}this.setAttribute("tone",i)}_syncA11yState(){const e=this.disabled||this.loading,i=e?"-1":this.getAttribute("tabindex")||"0",t=`${this._uid}-label`;this.setAttribute("role","radio"),this.setAttribute("aria-checked",this.checked?"true":"false"),this.setAttribute("aria-disabled",e?"true":"false"),this.setAttribute("aria-busy",this.loading?"true":"false"),this.setAttribute("aria-required",this.required?"true":"false"),this.invalid?this.setAttribute("aria-invalid","true"):this.removeAttribute("aria-invalid"),this.getAttribute("aria-labelledby")===t&&this.removeAttribute("aria-labelledby"),this.setAttribute("tabindex",i)}_resolveQueryScope(){const e=this.closest("form, ui-form");if(e)return e;const i=this.getRootNode();return i instanceof Document||i instanceof ShadowRoot||i instanceof Element?i:null}_getGroupMembers(){const e=this.name.trim();if(!e)return[this];const i=this._resolveQueryScope();return!i||!("querySelectorAll"in i)?[this]:Array.from(i.querySelectorAll("ui-radio")).filter(t=>t instanceof s&&t.name===e)}_uncheckSiblings(){this._getGroupMembers().forEach(i=>{i!==this&&i.checked&&(i.checked=!1)})}_focusSelf(){try{this.focus({preventScroll:!0})}catch{this.focus()}}_checkFromUser(e){if(this.disabled||this.loading||this.checked)return;this.checked=!0;const i={checked:!0,value:this.value||void 0,name:this.name||void 0,reason:e};this.dispatchEvent(new CustomEvent("input",{detail:i,bubbles:!0,composed:!0})),this.dispatchEvent(new CustomEvent("change",{detail:i,bubbles:!0,composed:!0}))}_moveGroupSelection(e){const i=this._getGroupMembers().filter(n=>!n.disabled&&!n.loading);if(i.length<=1)return;const d=(Math.max(i.indexOf(this),0)+e+i.length)%i.length,a=i[d];!a||a===this||(a._checkFromUser("keyboard"),a._focusSelf())}_onClick(e){this.disabled||this.loading||e.composedPath().some(t=>c(t))||this._checkFromUser("click")}_onKeyDown(e){if(!(this.disabled||this.loading)){if(e.key===" "||e.key==="Enter"){e.preventDefault(),this._checkFromUser("keyboard");return}if(this.name){if(e.key==="ArrowRight"||e.key==="ArrowDown"){e.preventDefault(),this._moveGroupSelection(1);return}(e.key==="ArrowLeft"||e.key==="ArrowUp")&&(e.preventDefault(),this._moveGroupSelection(-1))}}}render(){this._syncA11yState(),this.setContent(`
249
249
  <style>${u}</style>
250
250
  <span class="row" part="root">
251
251
  <span class="control-wrap" part="hit-area" aria-hidden="true">
package/dist/radio.esm.js CHANGED
@@ -14,7 +14,7 @@ const u = `
14
14
  --ui-radio-disabled-bg: color-mix(in srgb, var(--ui-color-surface-alt, #f1f5f9) 88%, #ffffff 12%);
15
15
  --ui-radio-disabled-border: 1.5px solid color-mix(in srgb, var(--ui-color-border, #cbd5e1) 78%, transparent);
16
16
  --ui-radio-label-color: var(--ui-color-text, var(--ui-text, #0f172a));
17
- --ui-radio-muted: var(--ui-color-muted, #64748b);
17
+ --ui-radio-muted: var(--ui-color-muted, #526175);
18
18
  --ui-radio-duration: 170ms;
19
19
  --ui-radio-easing: cubic-bezier(0.2, 0.8, 0.2, 1);
20
20
 
@@ -367,7 +367,7 @@ class s extends l {
367
367
  }
368
368
  _syncA11yState() {
369
369
  const e = this.disabled || this.loading, i = e ? "-1" : this.getAttribute("tabindex") || "0", t = `${this._uid}-label`;
370
- this.setAttribute("role", "radio"), this.setAttribute("aria-checked", this.checked ? "true" : "false"), this.setAttribute("aria-disabled", e ? "true" : "false"), this.setAttribute("aria-busy", this.loading ? "true" : "false"), this.setAttribute("aria-required", this.required ? "true" : "false"), this.invalid ? this.setAttribute("aria-invalid", "true") : this.removeAttribute("aria-invalid"), this.setAttribute("aria-labelledby", t), this.setAttribute("tabindex", i);
370
+ this.setAttribute("role", "radio"), this.setAttribute("aria-checked", this.checked ? "true" : "false"), this.setAttribute("aria-disabled", e ? "true" : "false"), this.setAttribute("aria-busy", this.loading ? "true" : "false"), this.setAttribute("aria-required", this.required ? "true" : "false"), this.invalid ? this.setAttribute("aria-invalid", "true") : this.removeAttribute("aria-invalid"), this.getAttribute("aria-labelledby") === t && this.removeAttribute("aria-labelledby"), this.setAttribute("tabindex", i);
371
371
  }
372
372
  _resolveQueryScope() {
373
373
  const e = this.closest("form, ui-form");
@@ -12,6 +12,8 @@
12
12
  --ui-rating-easing: var(--ui-motion-easing, cubic-bezier(0.2, 0.8, 0.2, 1));
13
13
  --ui-rating-radius: var(--ui-control-radius, var(--ui-radius, 4px));
14
14
  display: inline-flex;
15
+ flex-wrap: wrap;
16
+ max-inline-size: 100%;
15
17
  align-items: center;
16
18
  gap: var(--ui-rating-gap);
17
19
  color-scheme: light dark;
@@ -27,7 +29,7 @@
27
29
  }
28
30
 
29
31
  :host([tone="neutral"]) {
30
- --ui-rating-color: color-mix(in srgb, var(--ui-color-muted, #64748b) 74%, var(--ui-color-text, #0f172a) 26%);
32
+ --ui-rating-color: color-mix(in srgb, var(--ui-color-muted, #526175) 74%, var(--ui-color-text, #0f172a) 26%);
31
33
  }
32
34
 
33
35
  :host([tone="info"]) {
@@ -35,7 +37,7 @@
35
37
  }
36
38
 
37
39
  :host([tone="success"]) {
38
- --ui-rating-color: var(--ui-color-success, #16a34a);
40
+ --ui-rating-color: var(--ui-color-success, #15803d);
39
41
  }
40
42
 
41
43
  :host([tone="warning"]) {
@@ -252,7 +254,7 @@
252
254
 
253
255
  .label {
254
256
  font-size: var(--ui-font-size-sm, 12px);
255
- color: var(--ui-color-muted, #64748b);
257
+ color: var(--ui-color-muted, #526175);
256
258
  white-space: nowrap;
257
259
  }
258
260
 
@@ -315,16 +317,15 @@
315
317
  forced-color-adjust: auto;
316
318
  }
317
319
  }
318
- `;function x(e){return e!==null&&e.toLowerCase()!=="false"&&e!=="0"}function $(e){return e==="soft"||e==="glass"||e==="contrast"||e==="minimal"?e:"default"}function N(e){return e==="sm"||e==="lg"?e:"md"}function T(e){return e==="square"||e==="pill"?e:"rounded"}function I(e){return e==="neutral"||e==="info"||e==="success"||e==="warning"||e==="danger"?e:null}function q(e){return e==="hover"||e==="focus"||e==="disabled"?e:"idle"}function y(e){return e==="scale"||e==="pulse"||e==="none"?e:null}function B(e){if(!e)return null;const t=e.trim();return t?t==="full"?"999px":/^-?\\d+(\\.\\d+)?$/.test(t)?`${t}px`:t:null}function A(e){const t=Number(e);return!Number.isFinite(t)||t<=0?1:t===.5?.5:1}function l(e,t,i){return Math.min(i,Math.max(t,e))}function u(e,t){const i=Math.round(e/t)*t;return Number(i.toFixed(2))}function o(e,t){const i=e.getAttribute(t);if(i!=null)return i;const r=e[t];return typeof r=="string"&&r.length>0?r:null}function f(e,t){const i=e.getAttribute(t);if(i!=null)return x(i);const r=e[t];return typeof r=="boolean"?r:typeof r=="string"?x(r):!1}function w(e){return e.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function z(e){return`
319
- <svg viewBox="0 0 24 24" aria-hidden="true"${e?` class="${e}"`:""}>
320
+ `;function x(i){return i!==null&&i.toLowerCase()!=="false"&&i!=="0"}function $(i){return i==="soft"||i==="glass"||i==="contrast"||i==="minimal"?i:"default"}function N(i){return i==="sm"||i==="lg"?i:"md"}function T(i){return i==="square"||i==="pill"?i:"rounded"}function I(i){return i==="neutral"||i==="info"||i==="success"||i==="warning"||i==="danger"?i:null}function q(i){return i==="hover"||i==="focus"||i==="disabled"?i:"idle"}function y(i){return i==="scale"||i==="pulse"||i==="none"?i:null}function B(i){if(!i)return null;const t=i.trim();return t?t==="full"?"999px":/^-?\\d+(\\.\\d+)?$/.test(t)?`${t}px`:t:null}function A(i){const t=Number(i);return!Number.isFinite(t)||t<=0?1:t===.5?.5:1}function n(i,t,e){return Math.min(e,Math.max(t,i))}function u(i,t){const e=Math.round(i/t)*t;return Number(e.toFixed(2))}function o(i,t){const e=i.getAttribute(t);if(e!=null)return e;const r=i[t];return typeof r=="string"&&r.length>0?r:null}function g(i,t){const e=i.getAttribute(t);if(e!=null)return x(e);const r=i[t];return typeof r=="boolean"?r:typeof r=="string"?x(r):!1}function w(i){return i.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function z(i){return`
321
+ <svg viewBox="0 0 24 24" aria-hidden="true"${i?` class="${i}"`:""}>
320
322
  <path d="M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z"></path>
321
323
  </svg>
322
- `}class k extends V.ElementBase{constructor(){super(),this._stars=[],this._value=0,this._max=5,this._precision=1,this._disabled=!1,this._readonly=!1,this._hoverValue=0,this._onRootClick=this._onRootClick.bind(this),this._onRootMouseMove=this._onRootMouseMove.bind(this),this._onRootMouseLeave=this._onRootMouseLeave.bind(this),this._onRootFocusIn=this._onRootFocusIn.bind(this),this._onRootFocusOut=this._onRootFocusOut.bind(this),this._onRootKeyDown=this._onRootKeyDown.bind(this)}static get observedAttributes(){return["value","max","precision","disabled","readonly","variant","size","headless","theme","tone","state","animation","shape","radius","aria-label","aria-labelledby","aria-describedby","label","show-value"]}connectedCallback(){super.connectedCallback(),this.root.addEventListener("click",this._onRootClick,!0),this.root.addEventListener("mousemove",this._onRootMouseMove,!0),this.root.addEventListener("mouseleave",this._onRootMouseLeave,!0),this.root.addEventListener("focusin",this._onRootFocusIn,!0),this.root.addEventListener("focusout",this._onRootFocusOut,!0),this.root.addEventListener("keydown",this._onRootKeyDown,!0)}disconnectedCallback(){this.root.removeEventListener("click",this._onRootClick,!0),this.root.removeEventListener("mousemove",this._onRootMouseMove,!0),this.root.removeEventListener("mouseleave",this._onRootMouseLeave,!0),this.root.removeEventListener("focusin",this._onRootFocusIn,!0),this.root.removeEventListener("focusout",this._onRootFocusOut,!0),this.root.removeEventListener("keydown",this._onRootKeyDown,!0),super.disconnectedCallback()}attributeChangedCallback(t,i,r){if(i!==r){if(t==="value"){const s=Number(r);Number.isFinite(s)&&(this._value=l(u(s,this._precision),0,this._max),this._syncStars(),this._syncAria())}if(t==="max"){const s=Number(r);Number.isFinite(s)&&s>0&&(this._max=Math.max(1,s),this._value>this._max&&(this._value=this._max),this._syncStars(),this._syncAria())}if(t==="precision"&&(this._precision=A(r),this._value=l(u(this._value,this._precision),0,this._max),this._hoverValue=this._hoverValue>0?l(u(this._hoverValue,this._precision),0,this._max):0,this._syncStars(),this._syncAria()),t==="disabled"&&(this._disabled=r!==null),t==="readonly"&&(this._readonly=r!==null),t==="animation"){const s=y(r);s?this.setAttribute("data-animation",s):this.removeAttribute("data-animation")}this.isConnected&&this.requestRender()}}get value(){return this._value}set value(t){const i=Number(t);if(!Number.isFinite(i))return;const r=l(u(i,this._precision),0,this._max);this._value!==r&&(this._value=r,this.setAttribute("value",String(this._value)),this._syncStars(),this._syncAria(),this._emit("change"),this._emit("input"))}get max(){return this._max}set max(t){const i=Number(t);Number.isFinite(i)&&(this._max=Math.max(1,i),this.setAttribute("max",String(this._max)),this._value>this._max&&(this._value=this._max,this.setAttribute("value",String(this._value))),this.requestRender())}get precision(){return this._precision}set precision(t){this._precision=t===.5?.5:1,this.setAttribute("precision",String(this._precision)),this._value=l(u(this._value,this._precision),0,this._max),this.requestRender()}get disabled(){return this._disabled}set disabled(t){this._disabled=!!t,this._disabled?this.setAttribute("disabled",""):this.removeAttribute("disabled"),this.requestRender()}get readonly(){return this._readonly}set readonly(t){this._readonly=!!t,this._readonly?this.setAttribute("readonly",""):this.removeAttribute("readonly"),this.requestRender()}_getStarFromEventTarget(t){return t instanceof Element?t.closest(".star"):null}_getStarIndex(t){if(!t)return-1;const i=Number(t.dataset.index);return Number.isFinite(i)?i:-1}_getValueFromPointer(t,i){const r=this._getStarIndex(i);if(r===-1)return this._value;if(this._precision!==.5)return r+1;const s=i.getBoundingClientRect(),n=t.clientX-s.left<=s.width/2?.5:1;return r+n}_formatValue(t){return Number.isInteger(t)?String(t):t.toFixed(1)}_getAriaValueText(t){return`${this._formatValue(t)} out of ${this._max}`}_onRootClick(t){if(this._disabled||this._readonly)return;const i=t,r=this._getStarFromEventTarget(i.target);r&&(this.value=this._getValueFromPointer(i,r))}_onRootMouseMove(t){if(this._disabled||this._readonly)return;const i=t,r=this._getStarFromEventTarget(i.target);r&&(this._hoverValue=this._getValueFromPointer(i,r),this.setAttribute("state","hover"),this._syncStars())}_onRootMouseLeave(){this._disabled||this._readonly||(this._hoverValue=0,this.removeAttribute("state"),this._syncStars())}_onRootFocusIn(t){if(this._disabled||this._readonly)return;const i=this._getStarFromEventTarget(t.target),r=this._getStarIndex(i);r!==-1&&(this._hoverValue=r+1,this.setAttribute("state","focus"),this._syncStars())}_onRootFocusOut(){this._disabled||this._readonly||(this._hoverValue=0,this.removeAttribute("state"),this._syncStars())}_onRootKeyDown(t){if(this._disabled||this._readonly)return;const i=t,r=this._getStarFromEventTarget(i.target),s=this._getStarIndex(r);if(s===-1)return;let a=this._value;const n=this._precision;switch(i.key){case"ArrowRight":case"ArrowUp":case"+":a=l(this._value+n,0,this._max);break;case"ArrowLeft":case"ArrowDown":case"-":a=l(this._value-n,0,this._max);break;case"Home":a=0;break;case"End":a=this._max;break;case" ":case"Enter":a=s+1;break;default:return}i.preventDefault(),this.value=a}_getFillPercent(t,i){const r=i-(t-1);return r>=1?100:r<=0?0:r*100}_syncStars(){const t=this._hoverValue>0?this._hoverValue:this._value;this._stars.forEach((i,r)=>{const s=r+1,a=this._getFillPercent(s,t);if(i.style.setProperty("--fill-percent",`${a}%`),this._disabled){i.setAttribute("data-state","disabled"),i.setAttribute("aria-disabled","true");return}if(i.removeAttribute("aria-disabled"),this._hoverValue>0){a>0?i.setAttribute("data-state","hover"):i.removeAttribute("data-state");return}a>0?i.setAttribute("data-state","active"):i.removeAttribute("data-state")}),this._syncAria()}_syncAria(){const t=this._getAriaValueText(this._value);this.setAttribute("role","slider"),this.setAttribute("tabindex",this._disabled||this._readonly?"-1":"0"),this.setAttribute("aria-valuemin","0"),this.setAttribute("aria-valuemax",String(this._max)),this.setAttribute("aria-valuenow",String(this._value)),this.setAttribute("aria-valuetext",t),this.setAttribute("aria-orientation","horizontal"),this.setAttribute("aria-disabled",this._disabled?"true":"false"),this.setAttribute("aria-readonly",this._readonly?"true":"false"),this._stars.forEach((i,r)=>{const s=r+1,a=this._getFillPercent(s,this._hoverValue>0?this._hoverValue:this._value);i.setAttribute("role","presentation"),i.setAttribute("tabindex","-1"),i.setAttribute("aria-hidden","true"),i.setAttribute("aria-checked","false");const n=this._precision===.5?`${r+.5} to ${r+1}`:`${r+1}`;i.setAttribute("data-fill",String(a)),i.setAttribute("data-star-value",String(s)),i.setAttribute("aria-label",`${n}`)})}_emit(t){this.dispatchEvent(new CustomEvent(t,{detail:{value:this._value,max:this._max,precision:this._precision,disabled:this._disabled,readonly:this._readonly},bubbles:!0,composed:!0}))}render(){const t=f(this,"disabled"),i=f(this,"readonly"),r=$(o(this,"variant")),s=N(o(this,"size")),a=o(this,"theme"),n=I(o(this,"tone")),h=q(o(this,"state")),g=y(o(this,"animation")),c=T(o(this,"shape")),m=B(o(this,"radius")),R=A(o(this,"precision")),v=o(this,"aria-label"),p=o(this,"aria-labelledby"),_=o(this,"aria-describedby"),d=o(this,"label"),b=f(this,"show-value"),S=o(this,"value"),E=o(this,"max");this._max=Math.max(1,Number(E)||5),this._precision=R,this._value=l(u(Number(S)||0,this._precision),0,this._max),this._disabled=t,this._readonly=i,g?this.setAttribute("data-animation",g):this.removeAttribute("data-animation"),a==="dark"||a==="brand"?this.setAttribute("theme",a):this.removeAttribute("theme"),n?this.setAttribute("tone",n):this.removeAttribute("tone"),h==="disabled"?this.setAttribute("state","disabled"):h!=="idle"?this.setAttribute("state",h):this.removeAttribute("state"),c==="square"||c==="pill"?this.setAttribute("shape",c):this.removeAttribute("shape"),r==="default"?this.removeAttribute("variant"):this.setAttribute("variant",r),s==="md"?this.removeAttribute("size"):this.setAttribute("size",s),m?this.style.setProperty("--ui-rating-radius",m):this.style.removeProperty("--ui-rating-radius"),this.setAttribute("precision",String(this._precision));const F=Array.from({length:this._max},(P,L)=>`
323
- <button
324
- type="button"
324
+ `}class k extends V.ElementBase{constructor(){super(),this._autoAriaLabel=!1,this._stars=[],this._value=0,this._max=5,this._precision=1,this._disabled=!1,this._readonly=!1,this._hoverValue=0,this._onRootClick=this._onRootClick.bind(this),this._onRootMouseMove=this._onRootMouseMove.bind(this),this._onRootMouseLeave=this._onRootMouseLeave.bind(this),this._onRootFocusIn=this._onRootFocusIn.bind(this),this._onRootFocusOut=this._onRootFocusOut.bind(this),this._onRootKeyDown=this._onRootKeyDown.bind(this)}static get observedAttributes(){return["value","max","precision","disabled","readonly","variant","size","headless","theme","tone","state","animation","shape","radius","aria-label","aria-labelledby","aria-describedby","label","show-value"]}connectedCallback(){super.connectedCallback(),this.root.addEventListener("click",this._onRootClick,!0),this.root.addEventListener("mousemove",this._onRootMouseMove,!0),this.root.addEventListener("mouseleave",this._onRootMouseLeave,!0),this.root.addEventListener("focusin",this._onRootFocusIn,!0),this.root.addEventListener("focusout",this._onRootFocusOut,!0),this.root.addEventListener("keydown",this._onRootKeyDown,!0)}disconnectedCallback(){this.root.removeEventListener("click",this._onRootClick,!0),this.root.removeEventListener("mousemove",this._onRootMouseMove,!0),this.root.removeEventListener("mouseleave",this._onRootMouseLeave,!0),this.root.removeEventListener("focusin",this._onRootFocusIn,!0),this.root.removeEventListener("focusout",this._onRootFocusOut,!0),this.root.removeEventListener("keydown",this._onRootKeyDown,!0),super.disconnectedCallback()}attributeChangedCallback(t,e,r){if(e!==r){if(t==="value"){const s=Number(r);Number.isFinite(s)&&(this._value=n(u(s,this._precision),0,this._max),this._syncStars(),this._syncAria())}if(t==="max"){const s=Number(r);Number.isFinite(s)&&s>0&&(this._max=Math.max(1,s),this._value>this._max&&(this._value=this._max),this._syncStars(),this._syncAria())}if(t==="precision"&&(this._precision=A(r),this._value=n(u(this._value,this._precision),0,this._max),this._hoverValue=this._hoverValue>0?n(u(this._hoverValue,this._precision),0,this._max):0,this._syncStars(),this._syncAria()),t==="disabled"&&(this._disabled=r!==null),t==="readonly"&&(this._readonly=r!==null),t==="animation"){const s=y(r);s?this.setAttribute("data-animation",s):this.removeAttribute("data-animation")}this.isConnected&&this.requestRender()}}get value(){return this._value}set value(t){const e=Number(t);if(!Number.isFinite(e))return;const r=n(u(e,this._precision),0,this._max);this._value!==r&&(this._value=r,this.setAttribute("value",String(this._value)),this._syncStars(),this._syncAria(),this._emit("change"),this._emit("input"))}get max(){return this._max}set max(t){const e=Number(t);Number.isFinite(e)&&(this._max=Math.max(1,e),this.setAttribute("max",String(this._max)),this._value>this._max&&(this._value=this._max,this.setAttribute("value",String(this._value))),this.requestRender())}get precision(){return this._precision}set precision(t){this._precision=t===.5?.5:1,this.setAttribute("precision",String(this._precision)),this._value=n(u(this._value,this._precision),0,this._max),this.requestRender()}get disabled(){return this._disabled}set disabled(t){this._disabled=!!t,this._disabled?this.setAttribute("disabled",""):this.removeAttribute("disabled"),this.requestRender()}get readonly(){return this._readonly}set readonly(t){this._readonly=!!t,this._readonly?this.setAttribute("readonly",""):this.removeAttribute("readonly"),this.requestRender()}_getStarFromEventTarget(t){return t instanceof Element?t.closest(".star"):null}_getStarIndex(t){if(!t)return-1;const e=Number(t.dataset.index);return Number.isFinite(e)?e:-1}_getValueFromPointer(t,e){const r=this._getStarIndex(e);if(r===-1)return this._value;if(this._precision!==.5)return r+1;const s=e.getBoundingClientRect(),l=t.clientX-s.left<=s.width/2?.5:1;return r+l}_formatValue(t){return Number.isInteger(t)?String(t):t.toFixed(1)}_getAriaValueText(t){return`${this._formatValue(t)} out of ${this._max}`}_onRootClick(t){if(this._disabled||this._readonly)return;const e=t,r=this._getStarFromEventTarget(e.target);r&&(this.value=this._getValueFromPointer(e,r))}_onRootMouseMove(t){if(this._disabled||this._readonly)return;const e=t,r=this._getStarFromEventTarget(e.target);r&&(this._hoverValue=this._getValueFromPointer(e,r),this.setAttribute("state","hover"),this._syncStars())}_onRootMouseLeave(){this._disabled||this._readonly||(this._hoverValue=0,this.removeAttribute("state"),this._syncStars())}_onRootFocusIn(t){if(this._disabled||this._readonly)return;const e=this._getStarFromEventTarget(t.target),r=this._getStarIndex(e);r!==-1&&(this._hoverValue=r+1,this.setAttribute("state","focus"),this._syncStars())}_onRootFocusOut(){this._disabled||this._readonly||(this._hoverValue=0,this.removeAttribute("state"),this._syncStars())}_onRootKeyDown(t){if(this._disabled||this._readonly)return;const e=t,r=this._getStarFromEventTarget(e.target),s=this._getStarIndex(r);if(s===-1)return;let a=this._value;const l=this._precision;switch(e.key){case"ArrowRight":case"ArrowUp":case"+":a=n(this._value+l,0,this._max);break;case"ArrowLeft":case"ArrowDown":case"-":a=n(this._value-l,0,this._max);break;case"Home":a=0;break;case"End":a=this._max;break;case" ":case"Enter":a=s+1;break;default:return}e.preventDefault(),this.value=a}_getFillPercent(t,e){const r=e-(t-1);return r>=1?100:r<=0?0:r*100}_syncStars(){const t=this._hoverValue>0?this._hoverValue:this._value;this._stars.forEach((e,r)=>{const s=r+1,a=this._getFillPercent(s,t);if(e.style.setProperty("--fill-percent",`${a}%`),this._disabled){e.setAttribute("data-state","disabled"),e.setAttribute("aria-disabled","true");return}if(e.removeAttribute("aria-disabled"),this._hoverValue>0){a>0?e.setAttribute("data-state","hover"):e.removeAttribute("data-state");return}a>0?e.setAttribute("data-state","active"):e.removeAttribute("data-state")}),this._syncAria()}_syncAria(){const t=this._getAriaValueText(this._value);this.setAttribute("role","slider"),this.setAttribute("tabindex",this._disabled||this._readonly?"-1":"0"),this.setAttribute("aria-valuemin","0"),this.setAttribute("aria-valuemax",String(this._max)),this.setAttribute("aria-valuenow",String(this._value)),this.setAttribute("aria-valuetext",t),this.setAttribute("aria-orientation","horizontal"),this.setAttribute("aria-disabled",this._disabled?"true":"false"),this.setAttribute("aria-readonly",this._readonly?"true":"false"),this._stars.forEach((e,r)=>{const s=r+1,a=this._getFillPercent(s,this._hoverValue>0?this._hoverValue:this._value);e.setAttribute("aria-hidden","true"),e.setAttribute("data-fill",String(a)),e.setAttribute("data-star-value",String(s))})}_emit(t){this.dispatchEvent(new CustomEvent(t,{detail:{value:this._value,max:this._max,precision:this._precision,disabled:this._disabled,readonly:this._readonly},bubbles:!0,composed:!0}))}render(){const t=g(this,"disabled"),e=g(this,"readonly"),r=$(o(this,"variant")),s=N(o(this,"size")),a=o(this,"theme"),l=I(o(this,"tone")),c=q(o(this,"state")),m=y(o(this,"animation")),d=T(o(this,"shape")),v=B(o(this,"radius")),R=A(o(this,"precision")),p=this._autoAriaLabel?null:o(this,"aria-label"),f=o(this,"aria-labelledby"),_=o(this,"aria-describedby"),h=o(this,"label"),b=g(this,"show-value"),S=o(this,"value"),E=o(this,"max");this._max=Math.max(1,Number(E)||5),this._precision=R,this._value=n(u(Number(S)||0,this._precision),0,this._max),this._disabled=t,this._readonly=e,m?this.setAttribute("data-animation",m):this.removeAttribute("data-animation"),a==="dark"||a==="brand"?this.setAttribute("theme",a):this.removeAttribute("theme"),l?this.setAttribute("tone",l):this.removeAttribute("tone"),c==="disabled"?this.setAttribute("state","disabled"):c!=="idle"?this.setAttribute("state",c):this.removeAttribute("state"),d==="square"||d==="pill"?this.setAttribute("shape",d):this.removeAttribute("shape"),r==="default"?this.removeAttribute("variant"):this.setAttribute("variant",r),s==="md"?this.removeAttribute("size"):this.setAttribute("size",s),v?this.style.setProperty("--ui-rating-radius",v):this.style.removeProperty("--ui-rating-radius"),this.setAttribute("precision",String(this._precision));const F=Array.from({length:this._max},(P,M)=>`
325
+ <span
325
326
  class="star"
326
- tabindex="-1"
327
- data-index="${L}"
327
+ aria-hidden="true"
328
+ data-index="${M}"
328
329
  part="star"
329
330
  style="--fill-percent: 0%;"
330
331
  >
@@ -336,8 +337,8 @@
336
337
  </span>
337
338
  </span>
338
339
  </span>
339
- </button>
340
- `).join(""),M=b?`${this._formatValue(this._value)} / ${this._max}`:"";this.setContent(`
340
+ </span>
341
+ `).join(""),L=b?`${this._formatValue(this._value)} / ${this._max}`:"";this.setContent(`
341
342
  <style>${C}</style>
342
343
  <div
343
344
  class="stars"
@@ -346,10 +347,10 @@
346
347
  >
347
348
  ${F}
348
349
  </div>
349
- ${d||b?`
350
+ ${h||b?`
350
351
  <div class="label" part="label">
351
- ${d?`<span class="label-text">${w(d)}</span>`:""}
352
- ${b?`<span class="value">${w(M)}</span>`:""}
352
+ ${h?`<span class="label-text">${w(h)}</span>`:""}
353
+ ${b?`<span class="value">${w(L)}</span>`:""}
353
354
  </div>
354
355
  `:""}
355
- `),queueMicrotask(()=>{this._stars=Array.from(this.root.querySelectorAll(".star")),this._syncStars()}),v?this.setAttribute("aria-label",v):this.removeAttribute("aria-label"),p?this.setAttribute("aria-labelledby",p):this.removeAttribute("aria-labelledby"),_?this.setAttribute("aria-describedby",_):this.removeAttribute("aria-describedby"),this._disabled?this.setAttribute("disabled",""):this.removeAttribute("disabled"),this._readonly?this.setAttribute("readonly",""):this.removeAttribute("readonly"),this._syncAria()}}typeof customElements<"u"&&!customElements.get("ui-rating")&&customElements.define("ui-rating",k);exports.UIRating=k;
356
+ `),queueMicrotask(()=>{this._stars=Array.from(this.root.querySelectorAll(".star")),this._syncStars()}),this._autoAriaLabel=!1,p?this.setAttribute("aria-label",p):f?this.removeAttribute("aria-label"):(this.setAttribute("aria-label",(h||"").trim()||"Rating"),this._autoAriaLabel=!0),f?this.setAttribute("aria-labelledby",f):this.removeAttribute("aria-labelledby"),_?this.setAttribute("aria-describedby",_):this.removeAttribute("aria-describedby"),this._disabled?this.setAttribute("disabled",""):this.removeAttribute("disabled"),this._readonly?this.setAttribute("readonly",""):this.removeAttribute("readonly"),this._syncAria()}}typeof customElements<"u"&&!customElements.get("ui-rating")&&customElements.define("ui-rating",k);exports.UIRating=k;