@luzmo/lucero 0.0.3 → 0.0.6

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 (323) hide show
  1. package/components/accordion/accordion-item.d.ts +24 -0
  2. package/components/accordion/accordion.d.ts +42 -0
  3. package/components/accordion/index.cjs +43 -0
  4. package/components/accordion/index.d.ts +10 -0
  5. package/components/accordion/index.js +181 -0
  6. package/components/action-bar/action-bar.d.ts +42 -0
  7. package/components/action-bar/index.cjs +39 -0
  8. package/components/action-bar/index.d.ts +7 -0
  9. package/components/action-bar/index.js +107 -0
  10. package/components/action-button/action-button.d.ts +81 -0
  11. package/components/action-button/index.cjs +24 -0
  12. package/components/action-button/index.d.ts +7 -0
  13. package/components/action-button/index.js +161 -0
  14. package/components/action-group/action-group.d.ts +50 -0
  15. package/components/action-group/index.cjs +18 -0
  16. package/components/action-group/index.d.ts +7 -0
  17. package/components/action-group/index.js +29 -0
  18. package/components/action-group-B7oQXv30.js +258 -0
  19. package/components/action-group-C8YUQzt8.cjs +20 -0
  20. package/components/action-menu/action-menu.d.ts +40 -0
  21. package/components/action-menu/index.cjs +56 -0
  22. package/components/action-menu/index.d.ts +7 -0
  23. package/components/action-menu/index.js +126 -0
  24. package/components/async-directive-BhRGSTWB.js +82 -0
  25. package/components/async-directive-_65ULPLK.cjs +22 -0
  26. package/components/avatar/avatar.d.ts +31 -0
  27. package/components/avatar/index.cjs +24 -0
  28. package/components/avatar/index.d.ts +7 -0
  29. package/components/avatar/index.js +81 -0
  30. package/components/base-BjTwmyRF.cjs +22 -0
  31. package/components/base-CxUap9HL.js +665 -0
  32. package/components/base-D76d76ww.js +26 -0
  33. package/components/base-rtxi7uaR.cjs +40 -0
  34. package/components/button/button-base.d.ts +44 -0
  35. package/components/button/button.d.ts +59 -0
  36. package/components/button/clear-button.d.ts +22 -0
  37. package/components/button/close-button.d.ts +24 -0
  38. package/components/button/index.cjs +20 -0
  39. package/components/button/index.d.ts +13 -0
  40. package/components/button/index.js +127 -0
  41. package/components/button-base-CgrTYVgq.js +142 -0
  42. package/components/button-base-DjqSZyn2.cjs +25 -0
  43. package/components/button-group/button-group.d.ts +19 -0
  44. package/components/button-group/index.cjs +18 -0
  45. package/components/button-group/index.d.ts +7 -0
  46. package/components/button-group/index.js +59 -0
  47. package/components/checkbox/checkbox-base.d.ts +9 -0
  48. package/components/checkbox/checkbox-mixin.d.ts +14 -0
  49. package/components/checkbox/checkbox.d.ts +54 -0
  50. package/components/checkbox/index.cjs +25 -0
  51. package/components/checkbox/index.d.ts +7 -0
  52. package/components/checkbox/index.js +96 -0
  53. package/components/checkbox-mixin-BRluTF9s.js +70 -0
  54. package/components/checkbox-mixin-iB-0ivgo.cjs +27 -0
  55. package/components/clear-button-CyLF5dx_.js +53 -0
  56. package/components/clear-button-DFXE6MLx.cjs +18 -0
  57. package/components/close-button-CcD-aVqh.cjs +18 -0
  58. package/components/close-button-CzpdWCWI.js +51 -0
  59. package/components/color-Bg3tYsAQ.js +178 -0
  60. package/components/color-DphK4hwx.cjs +18 -0
  61. package/components/color-area/color-area.d.ts +67 -0
  62. package/components/color-area/index.cjs +80 -0
  63. package/components/color-area/index.d.ts +7 -0
  64. package/components/color-area/index.js +372 -0
  65. package/components/color-field/color-field.d.ts +20 -0
  66. package/components/color-field/index.cjs +23 -0
  67. package/components/color-field/index.d.ts +7 -0
  68. package/components/color-field/index.js +80 -0
  69. package/components/color-handle/color-handle.d.ts +13 -0
  70. package/components/color-handle/index.cjs +24 -0
  71. package/components/color-handle/index.d.ts +7 -0
  72. package/components/color-handle/index.js +73 -0
  73. package/components/color-loupe/color-loupe.d.ts +7 -0
  74. package/components/color-loupe/index.cjs +18 -0
  75. package/components/color-loupe/index.d.ts +7 -0
  76. package/components/color-loupe/index.js +29 -0
  77. package/components/color-loupe-BN3k1ACF.cjs +56 -0
  78. package/components/color-loupe-CD-dhmB1.js +81 -0
  79. package/components/color-menu/color-menu.d.ts +54 -0
  80. package/components/color-menu/index.cjs +86 -0
  81. package/components/color-menu/index.d.ts +7 -0
  82. package/components/color-menu/index.js +203 -0
  83. package/components/color-picker/color-picker.d.ts +39 -0
  84. package/components/color-picker/index.cjs +48 -0
  85. package/components/color-picker/index.d.ts +7 -0
  86. package/components/color-picker/index.js +141 -0
  87. package/components/color-slider/color-slider.d.ts +57 -0
  88. package/components/color-slider/index.cjs +57 -0
  89. package/components/color-slider/index.d.ts +7 -0
  90. package/components/color-slider/index.js +317 -0
  91. package/components/condition-attribute-with-id-DrQYZzFS.cjs +18 -0
  92. package/components/condition-attribute-with-id-Dv4lSRbe.js +31 -0
  93. package/components/dependency-manger-C5HCkMMB.cjs +18 -0
  94. package/components/dependency-manger-CEXvGQUV.js +54 -0
  95. package/components/directive-C7oCP5Bh.cjs +22 -0
  96. package/components/directive-helpers-C3pAxRR3.cjs +22 -0
  97. package/components/directive-helpers-D0vm0gvF.js +28 -0
  98. package/components/directive-oAbCiebi.js +44 -0
  99. package/components/divider/divider.d.ts +24 -0
  100. package/components/divider/index.cjs +18 -0
  101. package/components/divider/index.d.ts +7 -0
  102. package/components/divider/index.js +61 -0
  103. package/components/divider.module-CXMNveQc.cjs +18 -0
  104. package/components/divider.module-DwOuLGU3.js +21 -0
  105. package/components/element-resolution-BvRLGqIU.cjs +18 -0
  106. package/components/element-resolution-FCUT-wql.js +91 -0
  107. package/components/field-group/field-group.d.ts +24 -0
  108. package/components/field-group/index.cjs +18 -0
  109. package/components/field-group/index.d.ts +7 -0
  110. package/components/field-group/index.js +29 -0
  111. package/components/field-group-DAImvhSF.js +66 -0
  112. package/components/field-group-d5Hkb8UW.cjs +23 -0
  113. package/components/field-label/field-label.d.ts +50 -0
  114. package/components/field-label/index.cjs +18 -0
  115. package/components/field-label/index.d.ts +7 -0
  116. package/components/field-label/index.js +29 -0
  117. package/components/field-label-D1zKXSG6.cjs +25 -0
  118. package/components/field-label-DY9iRmRI.js +106 -0
  119. package/components/focus-group-DHeTq18L.js +218 -0
  120. package/components/focus-group-DnxZUBhQ.cjs +18 -0
  121. package/components/focus-visible-B0P9aY_G.cjs +18 -0
  122. package/components/focus-visible-DBlJGoEW.js +74 -0
  123. package/components/focusable-Bze9xE25.js +153 -0
  124. package/components/focusable-DyyBr-J-.cjs +18 -0
  125. package/components/focusable-selectors-B4YgbghQ.js +31 -0
  126. package/components/focusable-selectors-BgFlyFcY.cjs +18 -0
  127. package/components/icon/icon-base.d.ts +11 -0
  128. package/components/icon/icon.d.ts +12 -0
  129. package/components/icon/index.cjs +18 -0
  130. package/components/icon/index.d.ts +7 -0
  131. package/components/icon/index.js +88 -0
  132. package/components/if-defined-C-8FyBSN.cjs +22 -0
  133. package/components/if-defined-XzWkhMhg.js +27 -0
  134. package/components/index-C1chwzNp.js +727 -0
  135. package/components/index-CNtoBntg.cjs +77 -0
  136. package/components/index-Ci6Jnhu4.js +927 -0
  137. package/components/index-DCKCHDTt.cjs +18 -0
  138. package/components/index.cjs +27 -0
  139. package/components/index.js +207 -0
  140. package/components/infield-button/index.cjs +22 -0
  141. package/components/infield-button/index.d.ts +7 -0
  142. package/components/infield-button/index.js +64 -0
  143. package/components/infield-button/infield-button.d.ts +25 -0
  144. package/components/label/index.cjs +18 -0
  145. package/components/label/index.d.ts +7 -0
  146. package/components/label/index.js +51 -0
  147. package/components/label/label.d.ts +7 -0
  148. package/components/legend-position/index.d.ts +7 -0
  149. package/components/legend-position/legend-position.d.ts +10 -0
  150. package/components/like-anchor-DKuw8fJA.cjs +32 -0
  151. package/components/like-anchor-DnsAwo_O.js +69 -0
  152. package/components/manage-help-text-B-FXFXgT.js +92 -0
  153. package/components/manage-help-text-I5aYDAKT.cjs +30 -0
  154. package/components/menu/index.cjs +18 -0
  155. package/components/menu/index.d.ts +16 -0
  156. package/components/menu/index.js +32 -0
  157. package/components/menu/menu-divider.d.ts +14 -0
  158. package/components/menu/menu-group.d.ts +17 -0
  159. package/components/menu/menu-item.d.ts +125 -0
  160. package/components/menu/menu.d.ts +119 -0
  161. package/components/multi-language-field/index.cjs +39 -0
  162. package/components/multi-language-field/index.d.ts +7 -0
  163. package/components/multi-language-field/index.js +148 -0
  164. package/components/multi-language-field/multi-language-field.d.ts +41 -0
  165. package/components/mutation-controller-DH7YOCyj.js +52 -0
  166. package/components/mutation-controller-DkOMCW-c.cjs +22 -0
  167. package/components/number-field/index.cjs +57 -0
  168. package/components/number-field/index.d.ts +7 -0
  169. package/components/number-field/index.js +735 -0
  170. package/components/number-field/number-field.d.ts +113 -0
  171. package/components/observe-slot-text-DeSKIzvP.cjs +18 -0
  172. package/components/observe-slot-text-DrM71me1.js +87 -0
  173. package/components/overlay/abstract-overlay.d.ts +72 -0
  174. package/components/overlay/click-controller.d.ts +14 -0
  175. package/components/overlay/events.d.ts +23 -0
  176. package/components/overlay/full-size-plugin.d.ts +12 -0
  177. package/components/overlay/hover-controller.d.ts +20 -0
  178. package/components/overlay/index.cjs +73 -0
  179. package/components/overlay/index.d.ts +22 -0
  180. package/components/overlay/index.js +342 -0
  181. package/components/overlay/interaction-controller.d.ts +38 -0
  182. package/components/overlay/loader.d.ts +4 -0
  183. package/components/overlay/longpress-controller.d.ts +21 -0
  184. package/components/overlay/overlay-dialog.d.ts +4 -0
  185. package/components/overlay/overlay-events.d.ts +11 -0
  186. package/components/overlay/overlay-no-popover.d.ts +4 -0
  187. package/components/overlay/overlay-popover.d.ts +4 -0
  188. package/components/overlay/overlay-stack.d.ts +44 -0
  189. package/components/overlay/overlay-timer.d.ts +21 -0
  190. package/components/overlay/overlay-trigger-directive.d.ts +26 -0
  191. package/components/overlay/overlay-trigger.d.ts +53 -0
  192. package/components/overlay/overlay-types.d.ts +50 -0
  193. package/components/overlay/overlay.d.ts +464 -0
  194. package/components/overlay/placement-controller.d.ts +157 -0
  195. package/components/overlay/slottable-request-directive.d.ts +17 -0
  196. package/components/overlay/slottable-request-event.d.ts +12 -0
  197. package/components/overlay/strategies.d.ts +8 -0
  198. package/components/overlay/virtual-trigger.d.ts +7 -0
  199. package/components/overlay-C2Cck0Az.js +2712 -0
  200. package/components/overlay-dn6Xe_vz.cjs +47 -0
  201. package/components/pending-state--XOfTjzE.js +61 -0
  202. package/components/pending-state-BeJ7iP-O.cjs +26 -0
  203. package/components/picker/desktop-controller.d.ts +7 -0
  204. package/components/picker/index.cjs +18 -0
  205. package/components/picker/index.d.ts +7 -0
  206. package/components/picker/index.js +32 -0
  207. package/components/picker/interaction-controller.d.ts +43 -0
  208. package/components/picker/mobile-controller.d.ts +9 -0
  209. package/components/picker/picker.d.ts +154 -0
  210. package/components/picker/strategies.d.ts +6 -0
  211. package/components/picker-8cOc-jjh.cjs +127 -0
  212. package/components/picker-BZAWrSDk.js +655 -0
  213. package/components/platform-CQzYNWKq.cjs +18 -0
  214. package/components/platform-DQYMG7JI.js +54 -0
  215. package/components/popover/index.cjs +18 -0
  216. package/components/popover/index.d.ts +7 -0
  217. package/components/popover/index.js +29 -0
  218. package/components/popover/popover.d.ts +29 -0
  219. package/components/popover-CCzs4VH8.cjs +30 -0
  220. package/components/popover-D0EliN0L.js +67 -0
  221. package/components/progress-circle/index.cjs +18 -0
  222. package/components/progress-circle/index.d.ts +7 -0
  223. package/components/progress-circle/index.js +29 -0
  224. package/components/progress-circle/progress-circle.d.ts +35 -0
  225. package/components/progress-circle-DYSSkjlY.cjs +33 -0
  226. package/components/progress-circle-_-9sAlMM.js +97 -0
  227. package/components/query-BL-TJj7K.cjs +22 -0
  228. package/components/query-D_KR_GUc.js +51 -0
  229. package/components/query-assigned-elements-DjfhL1cl.js +36 -0
  230. package/components/query-assigned-elements-DsKsfk7G.cjs +22 -0
  231. package/components/query-assigned-nodes-BcKWmGzy.cjs +22 -0
  232. package/components/query-assigned-nodes-C76XVPWY.js +36 -0
  233. package/components/radio/index.cjs +22 -0
  234. package/components/radio/index.d.ts +10 -0
  235. package/components/radio/index.js +191 -0
  236. package/components/radio/radio-group.d.ts +27 -0
  237. package/components/radio/radio.d.ts +39 -0
  238. package/components/random-id-ByCz1xaq.js +26 -0
  239. package/components/random-id-CqvckpWe.cjs +18 -0
  240. package/components/roving-tabindex-By_fCy_e.cjs +18 -0
  241. package/components/roving-tabindex-DOg4z6ZU.js +66 -0
  242. package/components/search/index.cjs +45 -0
  243. package/components/search/index.d.ts +7 -0
  244. package/components/search/index.js +131 -0
  245. package/components/search/search.d.ts +27 -0
  246. package/components/sized-mixin-BAI6NiE2.cjs +18 -0
  247. package/components/sized-mixin-DcJTTohI.js +63 -0
  248. package/components/slider/index.cjs +18 -0
  249. package/components/slider/index.d.ts +7 -0
  250. package/components/slider/index.js +1158 -0
  251. package/components/slider/slider.d.ts +24 -0
  252. package/components/slottable-request-event-BfUUt1Mh.cjs +18 -0
  253. package/components/slottable-request-event-DggLA4Rx.js +31 -0
  254. package/components/state-D8vot9IB.js +29 -0
  255. package/components/state-WWHLNMRG.cjs +22 -0
  256. package/components/streaming-listener-BbmNyKWO.js +125 -0
  257. package/components/streaming-listener-C2A7ZJZP.cjs +18 -0
  258. package/components/style-map-CoBJRbvu.js +53 -0
  259. package/components/style-map-DH0jkl7s.cjs +22 -0
  260. package/components/swatch/index.cjs +49 -0
  261. package/components/swatch/index.d.ts +10 -0
  262. package/components/swatch/index.js +342 -0
  263. package/components/swatch/swatch-group.d.ts +41 -0
  264. package/components/swatch/swatch.d.ts +40 -0
  265. package/components/switch/index.cjs +22 -0
  266. package/components/switch/index.d.ts +7 -0
  267. package/components/switch/index.js +73 -0
  268. package/components/switch/switch.d.ts +27 -0
  269. package/components/tags/index.cjs +32 -0
  270. package/components/tags/index.d.ts +10 -0
  271. package/components/tags/index.js +173 -0
  272. package/components/tags/tag.d.ts +29 -0
  273. package/components/tags/tags.d.ts +28 -0
  274. package/components/text-field/help-text-manager.d.ts +19 -0
  275. package/components/text-field/help-text.d.ts +20 -0
  276. package/components/text-field/index.cjs +21 -0
  277. package/components/text-field/index.d.ts +14 -0
  278. package/components/text-field/index.js +62 -0
  279. package/components/text-field/manage-help-text.d.ts +13 -0
  280. package/components/text-field/text-field.d.ts +142 -0
  281. package/components/text-field-05QNK_Lj.js +313 -0
  282. package/components/text-field-BU7yxiOR.cjs +85 -0
  283. package/components/toast/index.cjs +51 -0
  284. package/components/toast/index.d.ts +7 -0
  285. package/components/toast/index.js +153 -0
  286. package/components/toast/toast.d.ts +77 -0
  287. package/components/tooltip/index.cjs +45 -0
  288. package/components/tooltip/index.d.ts +8 -0
  289. package/components/tooltip/index.js +220 -0
  290. package/components/tooltip/tooltip-directive.d.ts +5 -0
  291. package/components/tooltip/tooltip.d.ts +55 -0
  292. package/components/unit-input/index.cjs +43 -0
  293. package/components/unit-input/index.d.ts +7 -0
  294. package/components/unit-input/index.js +183 -0
  295. package/components/unit-input/unit-input.d.ts +33 -0
  296. package/components/when-CDK1Tt5Y.js +28 -0
  297. package/components/when-CDZyJPvd.cjs +22 -0
  298. package/index.d.ts +39 -0
  299. package/package.json +139 -101
  300. package/utils/base.d.ts +16 -0
  301. package/utils/condition-attribute-with-id.d.ts +2 -0
  302. package/utils/first-focusable-in.d.ts +3 -0
  303. package/utils/focus-visible.d.ts +29 -0
  304. package/utils/focusable-selectors.d.ts +2 -0
  305. package/utils/focusable.d.ts +58 -0
  306. package/utils/get-css-variable.d.ts +1 -0
  307. package/utils/get-label-from-slot.d.ts +1 -0
  308. package/utils/like-anchor.d.ts +23 -0
  309. package/utils/observe-slot-presence.d.ts +12 -0
  310. package/utils/observe-slot-text.d.ts +11 -0
  311. package/utils/platform.d.ts +10 -0
  312. package/utils/random-id.d.ts +1 -0
  313. package/utils/reactive-controllers/color.d.ts +54 -0
  314. package/utils/reactive-controllers/dependency-manger.d.ts +26 -0
  315. package/utils/reactive-controllers/element-resolution.d.ts +23 -0
  316. package/utils/reactive-controllers/focus-group.d.ts +62 -0
  317. package/utils/reactive-controllers/language-resolution.d.ts +11 -0
  318. package/utils/reactive-controllers/match-media.d.ts +13 -0
  319. package/utils/reactive-controllers/pending-state.d.ts +41 -0
  320. package/utils/reactive-controllers/roving-tabindex.d.ts +19 -0
  321. package/utils/reparent-child.d.ts +4 -0
  322. package/utils/sized-mixin.d.ts +17 -0
  323. package/utils/streaming-listener.d.ts +48 -0
@@ -0,0 +1,24 @@
1
+ import { API as NoUiSlider } from 'nouislider';
2
+ import { LuzmoElement } from '../../utils/base';
3
+ declare const LuzmoSlider_base: typeof LuzmoElement & {
4
+ new (...args: any[]): import("../../utils/sized-mixin").SizedElementInterface;
5
+ prototype: import("../../utils/sized-mixin").SizedElementInterface;
6
+ };
7
+ export declare class LuzmoSlider extends LuzmoSlider_base {
8
+ static styles: import("lit").CSSResult[];
9
+ get _slider(): HTMLDivElement | null;
10
+ value: number;
11
+ min: number;
12
+ max: number;
13
+ step: number;
14
+ disabled: boolean;
15
+ debounce: number;
16
+ noUiSlider: NoUiSlider;
17
+ debounceTimeout: any;
18
+ _doingUpdate: boolean;
19
+ firstUpdated(): void;
20
+ updated(changedProperties: Map<string, any>): void;
21
+ private setValue;
22
+ render(): import("lit-html").TemplateResult<1>;
23
+ }
24
+ export {};
@@ -0,0 +1,18 @@
1
+ /*! * Lucero - The design system for Luzmo.
2
+ *
3
+ * Copyright © 2025 Luzmo
4
+ * All rights reserved.
5
+ * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
+ * This license allows users with a current active Luzmo account to use Lucero.
7
+ * This license terminates automatically if a user no longer has an active Luzmo account.
8
+ * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
+ *
10
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
+ * SOFTWARE.
17
+ * */
18
+ "use strict";class l extends Event{constructor(e,s,t){super("slottable-request",{bubbles:!1,cancelable:!0,composed:!1}),this.name=e,this.data=s,this.slotName=t===void 0?e:`${e}.${t}`}}const o=Symbol("remove-slottable-request");exports.SlottableRequestEvent=l;exports.removeSlottableRequest=o;
@@ -0,0 +1,31 @@
1
+ /*! * Lucero - The design system for Luzmo.
2
+ *
3
+ * Copyright © 2025 Luzmo
4
+ * All rights reserved.
5
+ * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
+ * This license allows users with a current active Luzmo account to use Lucero.
7
+ * This license terminates automatically if a user no longer has an active Luzmo account.
8
+ * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
+ *
10
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
+ * SOFTWARE.
17
+ * */
18
+ class o extends Event {
19
+ constructor(e, s, t) {
20
+ super("slottable-request", {
21
+ bubbles: !1,
22
+ cancelable: !0,
23
+ composed: !1
24
+ }), this.name = e, this.data = s, this.slotName = t === void 0 ? e : `${e}.${t}`;
25
+ }
26
+ }
27
+ const a = Symbol("remove-slottable-request");
28
+ export {
29
+ o as S,
30
+ a as r
31
+ };
@@ -0,0 +1,29 @@
1
+ /*! * Lucero - The design system for Luzmo.
2
+ *
3
+ * Copyright © 2025 Luzmo
4
+ * All rights reserved.
5
+ * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
+ * This license allows users with a current active Luzmo account to use Lucero.
7
+ * This license terminates automatically if a user no longer has an active Luzmo account.
8
+ * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
+ *
10
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
+ * SOFTWARE.
17
+ * */
18
+ import { n as r } from "./base-CxUap9HL.js";
19
+ /**
20
+ * @license
21
+ * Copyright 2017 Google LLC
22
+ * SPDX-License-Identifier: BSD-3-Clause
23
+ */
24
+ function n(t) {
25
+ return r({ ...t, state: !0, attribute: !1 });
26
+ }
27
+ export {
28
+ n as r
29
+ };
@@ -0,0 +1,22 @@
1
+ /*! * Lucero - The design system for Luzmo.
2
+ *
3
+ * Copyright © 2025 Luzmo
4
+ * All rights reserved.
5
+ * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
+ * This license allows users with a current active Luzmo account to use Lucero.
7
+ * This license terminates automatically if a user no longer has an active Luzmo account.
8
+ * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
+ *
10
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
+ * SOFTWARE.
17
+ * */
18
+ "use strict";const e=require("./base-rtxi7uaR.cjs");/**
19
+ * @license
20
+ * Copyright 2017 Google LLC
21
+ * SPDX-License-Identifier: BSD-3-Clause
22
+ */function r(t){return e.n({...t,state:!0,attribute:!1})}exports.r=r;
@@ -0,0 +1,125 @@
1
+ /*! * Lucero - The design system for Luzmo.
2
+ *
3
+ * Copyright © 2025 Luzmo
4
+ * All rights reserved.
5
+ * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
+ * This license allows users with a current active Luzmo account to use Lucero.
7
+ * This license terminates automatically if a user no longer has an active Luzmo account.
8
+ * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
+ *
10
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
+ * SOFTWARE.
17
+ * */
18
+ import { E as d } from "./base-CxUap9HL.js";
19
+ import { f as l } from "./async-directive-BhRGSTWB.js";
20
+ import { e as o } from "./directive-oAbCiebi.js";
21
+ const m = Symbol(
22
+ "language resolver updated"
23
+ );
24
+ class v {
25
+ constructor(e) {
26
+ this.language = document.documentElement.lang || navigator.language, this.host = e, this.host.addController(this);
27
+ }
28
+ hostConnected() {
29
+ this.resolveLanguage();
30
+ }
31
+ hostDisconnected() {
32
+ var e;
33
+ (e = this.unsubscribe) == null || e.call(this);
34
+ }
35
+ resolveLanguage() {
36
+ const e = new CustomEvent(
37
+ "luzmo-language-context",
38
+ {
39
+ bubbles: !0,
40
+ composed: !0,
41
+ detail: {
42
+ callback: (t, s) => {
43
+ const n = this.language;
44
+ this.language = t, this.unsubscribe = s, this.host.requestUpdate(m, n);
45
+ }
46
+ },
47
+ cancelable: !0
48
+ }
49
+ );
50
+ this.host.dispatchEvent(e);
51
+ }
52
+ }
53
+ const i = ["", () => {
54
+ }];
55
+ class u extends l {
56
+ constructor() {
57
+ super(...arguments), this.start = i, this.streamInside = i, this.end = i, this.streamOutside = i, this.state = "off", this.handleStart = (e) => {
58
+ this.clearStream(), this.callHandler(this.start[1], e), !e.defaultPrevented && (this.removeListeners(), this.addListeners("on"));
59
+ }, this.handleInside = (e) => {
60
+ this.handleStream(this.streamInside[1], e);
61
+ }, this.handleEnd = (e) => {
62
+ this.clearStream(), this.callHandler(this.end[1], e), this.removeListeners(), this.addListeners("off");
63
+ }, this.handleOutside = (e) => {
64
+ this.handleStream(this.streamOutside[1], e);
65
+ };
66
+ }
67
+ /* c8 ignore next 4 */
68
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
69
+ render(e) {
70
+ return d;
71
+ }
72
+ update(e, [
73
+ {
74
+ start: t,
75
+ end: s,
76
+ streamInside: n = i,
77
+ streamOutside: h = i
78
+ }
79
+ ]) {
80
+ var r;
81
+ this.element !== e.element && (this.element = e.element, this.removeListeners()), this.host = ((r = e.options) == null ? void 0 : r.host) || this.element, this.start = t, this.end = s, this.streamInside = n, this.streamOutside = h, this.addListeners();
82
+ }
83
+ addListeners(e) {
84
+ this.state = e || this.state, this.state === "off" ? (this.addListener(this.streamOutside[0], this.handleOutside), this.addListener(this.start[0], this.handleStart)) : this.state === "on" && (this.addListener(this.streamInside[0], this.handleInside), this.addListener(this.end[0], this.handleEnd));
85
+ }
86
+ callHandler(e, t) {
87
+ typeof e == "function" ? e.call(this.host, t) : e.handleEvent(t);
88
+ }
89
+ handleStream(e, t) {
90
+ this.stream || (this.callHandler(e, t), this.stream = requestAnimationFrame(() => {
91
+ this.stream = void 0;
92
+ }));
93
+ }
94
+ clearStream() {
95
+ this.stream != null && (cancelAnimationFrame(this.stream), this.stream = void 0);
96
+ }
97
+ addListener(e, t) {
98
+ Array.isArray(e) ? e.map((s) => {
99
+ this.element.addEventListener(s, t);
100
+ }) : this.element.addEventListener(e, t);
101
+ }
102
+ removeListener(e, t) {
103
+ Array.isArray(e) ? e.map((s) => {
104
+ this.element.removeEventListener(s, t);
105
+ }) : this.element.removeEventListener(e, t);
106
+ }
107
+ removeListeners() {
108
+ this.removeListener(this.start[0], this.handleStart), this.removeListener(this.streamInside[0], this.handleInside), this.removeListener(this.end[0], this.handleEnd), this.removeListener(this.streamOutside[0], this.handleOutside);
109
+ }
110
+ disconnected() {
111
+ this.removeListeners();
112
+ }
113
+ /* c8 ignore next 3 */
114
+ reconnected() {
115
+ this.addListeners();
116
+ }
117
+ }
118
+ const f = o(
119
+ u
120
+ );
121
+ export {
122
+ v as L,
123
+ m as l,
124
+ f as s
125
+ };
@@ -0,0 +1,18 @@
1
+ /*! * Lucero - The design system for Luzmo.
2
+ *
3
+ * Copyright © 2025 Luzmo
4
+ * All rights reserved.
5
+ * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
+ * This license allows users with a current active Luzmo account to use Lucero.
7
+ * This license terminates automatically if a user no longer has an active Luzmo account.
8
+ * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
+ *
10
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
+ * SOFTWARE.
17
+ * */
18
+ "use strict";const l=require("./base-rtxi7uaR.cjs"),o=require("./async-directive-_65ULPLK.cjs"),m=require("./directive-C7oCP5Bh.cjs"),a=Symbol("language resolver updated");class u{constructor(e){this.language=document.documentElement.lang||navigator.language,this.host=e,this.host.addController(this)}hostConnected(){this.resolveLanguage()}hostDisconnected(){var e;(e=this.unsubscribe)==null||e.call(this)}resolveLanguage(){const e=new CustomEvent("luzmo-language-context",{bubbles:!0,composed:!0,detail:{callback:(t,s)=>{const n=this.language;this.language=t,this.unsubscribe=s,this.host.requestUpdate(a,n)}},cancelable:!0});this.host.dispatchEvent(e)}}const i=["",()=>{}];class c extends o.f{constructor(){super(...arguments),this.start=i,this.streamInside=i,this.end=i,this.streamOutside=i,this.state="off",this.handleStart=e=>{this.clearStream(),this.callHandler(this.start[1],e),!e.defaultPrevented&&(this.removeListeners(),this.addListeners("on"))},this.handleInside=e=>{this.handleStream(this.streamInside[1],e)},this.handleEnd=e=>{this.clearStream(),this.callHandler(this.end[1],e),this.removeListeners(),this.addListeners("off")},this.handleOutside=e=>{this.handleStream(this.streamOutside[1],e)}}render(e){return l.E}update(e,[{start:t,end:s,streamInside:n=i,streamOutside:d=i}]){var r;this.element!==e.element&&(this.element=e.element,this.removeListeners()),this.host=((r=e.options)==null?void 0:r.host)||this.element,this.start=t,this.end=s,this.streamInside=n,this.streamOutside=d,this.addListeners()}addListeners(e){this.state=e||this.state,this.state==="off"?(this.addListener(this.streamOutside[0],this.handleOutside),this.addListener(this.start[0],this.handleStart)):this.state==="on"&&(this.addListener(this.streamInside[0],this.handleInside),this.addListener(this.end[0],this.handleEnd))}callHandler(e,t){typeof e=="function"?e.call(this.host,t):e.handleEvent(t)}handleStream(e,t){this.stream||(this.callHandler(e,t),this.stream=requestAnimationFrame(()=>{this.stream=void 0}))}clearStream(){this.stream!=null&&(cancelAnimationFrame(this.stream),this.stream=void 0)}addListener(e,t){Array.isArray(e)?e.map(s=>{this.element.addEventListener(s,t)}):this.element.addEventListener(e,t)}removeListener(e,t){Array.isArray(e)?e.map(s=>{this.element.removeEventListener(s,t)}):this.element.removeEventListener(e,t)}removeListeners(){this.removeListener(this.start[0],this.handleStart),this.removeListener(this.streamInside[0],this.handleInside),this.removeListener(this.end[0],this.handleEnd),this.removeListener(this.streamOutside[0],this.handleOutside)}disconnected(){this.removeListeners()}reconnected(){this.addListeners()}}const L=m.e(c);exports.LanguageResolutionController=u;exports.languageResolverUpdatedSymbol=a;exports.streamingListener=L;
@@ -0,0 +1,53 @@
1
+ /*! * Lucero - The design system for Luzmo.
2
+ *
3
+ * Copyright © 2025 Luzmo
4
+ * All rights reserved.
5
+ * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
+ * This license allows users with a current active Luzmo account to use Lucero.
7
+ * This license terminates automatically if a user no longer has an active Luzmo account.
8
+ * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
+ *
10
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
+ * SOFTWARE.
17
+ * */
18
+ import { T as l } from "./base-CxUap9HL.js";
19
+ import { e as u, i as c, t as d } from "./directive-oAbCiebi.js";
20
+ /**
21
+ * @license
22
+ * Copyright 2018 Google LLC
23
+ * SPDX-License-Identifier: BSD-3-Clause
24
+ */
25
+ const o = "important", f = " !" + o, p = u(class extends c {
26
+ constructor(n) {
27
+ var e;
28
+ if (super(n), n.type !== d.ATTRIBUTE || n.name !== "style" || ((e = n.strings) == null ? void 0 : e.length) > 2) throw Error("The `styleMap` directive must be used in the `style` attribute and must be the only part in the attribute.");
29
+ }
30
+ render(n) {
31
+ return Object.keys(n).reduce((e, s) => {
32
+ const t = n[s];
33
+ return t == null ? e : e + `${s = s.includes("-") ? s : s.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g, "-$&").toLowerCase()}:${t};`;
34
+ }, "");
35
+ }
36
+ update(n, [e]) {
37
+ const { style: s } = n.element;
38
+ if (this.ft === void 0) return this.ft = new Set(Object.keys(e)), this.render(e);
39
+ for (const t of this.ft) e[t] == null && (this.ft.delete(t), t.includes("-") ? s.removeProperty(t) : s[t] = null);
40
+ for (const t in e) {
41
+ const r = e[t];
42
+ if (r != null) {
43
+ this.ft.add(t);
44
+ const i = typeof r == "string" && r.endsWith(f);
45
+ t.includes("-") || i ? s.setProperty(t, i ? r.slice(0, -11) : r, i ? o : "") : s[t] = r;
46
+ }
47
+ }
48
+ return l;
49
+ }
50
+ });
51
+ export {
52
+ p as o
53
+ };
@@ -0,0 +1,22 @@
1
+ /*! * Lucero - The design system for Luzmo.
2
+ *
3
+ * Copyright © 2025 Luzmo
4
+ * All rights reserved.
5
+ * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
+ * This license allows users with a current active Luzmo account to use Lucero.
7
+ * This license terminates automatically if a user no longer has an active Luzmo account.
8
+ * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
+ *
10
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
+ * SOFTWARE.
17
+ * */
18
+ "use strict";const u=require("./base-rtxi7uaR.cjs"),o=require("./directive-C7oCP5Bh.cjs");/**
19
+ * @license
20
+ * Copyright 2018 Google LLC
21
+ * SPDX-License-Identifier: BSD-3-Clause
22
+ */const c="important",l=" !"+c,d=o.e(class extends o.i{constructor(n){var t;if(super(n),n.type!==o.t.ATTRIBUTE||n.name!=="style"||((t=n.strings)==null?void 0:t.length)>2)throw Error("The `styleMap` directive must be used in the `style` attribute and must be the only part in the attribute.")}render(n){return Object.keys(n).reduce((t,s)=>{const e=n[s];return e==null?t:t+`${s=s.includes("-")?s:s.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g,"-$&").toLowerCase()}:${e};`},"")}update(n,[t]){const{style:s}=n.element;if(this.ft===void 0)return this.ft=new Set(Object.keys(t)),this.render(t);for(const e of this.ft)t[e]==null&&(this.ft.delete(e),e.includes("-")?s.removeProperty(e):s[e]=null);for(const e in t){const r=t[e];if(r!=null){this.ft.add(e);const i=typeof r=="string"&&r.endsWith(l);e.includes("-")||i?s.setProperty(e,i?r.slice(0,-11):r,i?c:""):s[e]=r}}return u.T}});exports.o=d;
@@ -0,0 +1,49 @@
1
+ /*! * Lucero - The design system for Luzmo.
2
+ *
3
+ * Copyright © 2025 Luzmo
4
+ * All rights reserved.
5
+ * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
+ * This license allows users with a current active Luzmo account to use Lucero.
7
+ * This license terminates automatically if a user no longer has an active Luzmo account.
8
+ * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
+ *
10
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
+ * SOFTWARE.
17
+ * */
18
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("@luzmo/icons"),r=require("../base-rtxi7uaR.cjs"),w=require("../if-defined-C-8FyBSN.cjs"),b=require("../when-CDZyJPvd.cjs"),g=require("../focusable-DyyBr-J-.cjs"),p=require("../sized-mixin-BAI6NiE2.cjs"),v=require("../mutation-controller-DkOMCW-c.cjs"),m=require("../query-assigned-elements-DsKsfk7G.cjs"),z=require("../roving-tabindex-By_fCy_e.cjs"),x='@media (forced-colors: active){:host{--highcontrast-swatch-disabled-icon-color: GrayText;--highcontrast-swatch-focus-indicator-color: ButtonText;--highcontrast-swatch-background-color-selected: Background;--highcontrast-swatch-border-color-selected: Highlight;--highcontrast-swatch-border-color: ButtonText;--highcontrast-swatch-fill-foreground-color: ButtonText}.fill{forced-color-adjust:none}:host([disabled]){--highcontrast-swatch-border-color: GrayText}}:host{box-sizing:border-box;inline-size:var(--luzmo-swatch-size, var(--swatch-size));block-size:var(--luzmo-swatch-size, var(--swatch-size));-webkit-user-select:none;user-select:none;outline:none;justify-content:center;align-items:center;display:flex;position:relative}.disabled-icon{inline-size:var(--luzmo-swatch-disabled-icon-size, var(--swatch-disabled-icon-size));block-size:var(--luzmo-swatch-disabled-icon-size, var(--swatch-disabled-icon-size))}:host,:host:before{border-radius:var(--luzmo-swatch-border-radius, var(--swatch-border-radius))}:host([selected]){background-color:var(--highcontrast-swatch-background-color-selected, var(--luzmo-swatch-inner-border-color-selected, var(--swatch-inner-border-color-selected)))}:host([selected]) .fill:before{box-shadow:none;border-radius:0}:host([selected]):before{opacity:1}:host .is-image .fill:before{background-color:initial}:host([mixed-value]) .fill{background:none;background:var(--picked-color, transparent)}:host([mixed-value]) .mixed-value-icon{color:var(--swatch-dash-icon-color);display:block}:host([nothing]) .fill{background-color:initial;background-color:var(--picked-color, transparent);background-image:none}:host([nothing]) .fill:after{inline-size:var(--luzmo-swatch-slash-thickness, var(--swatch-slash-thickness));content:"";block-size:200%;background:var(--highcontrast-swatch-fill-foreground-color, var(--luzmo-swatch-slash-icon-color, var(--swatch-slash-icon-color)));position:absolute;transform:rotate(-45deg)}:host([nothing][shape=rectangle]) .fill:after{transform:rotate(-25deg)}:host([disabled]) .disabled-icon{display:block}:host:before{content:"";border-width:var(--luzmo-swatch-border-thickness-selected, var(--swatch-border-thickness-selected));border-style:solid;border-color:var(--highcontrast-swatch-border-color-selected, var(--luzmo-swatch-border-color-selected, var(--swatch-border-color-selected)));opacity:0;pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}:host:after{content:"";inset:calc(var(--luzmo-swatch-focus-indicator-gap, var(--swatch-focus-indicator-gap)) * -2);opacity:0;border-width:var(--luzmo-swatch-focus-indicator-width, var(--swatch-focus-indicator-width));border-style:solid;border-color:var(--highcontrast-swatch-focus-indicator-color, var(--luzmo-swatch-focus-indicator-color, var(--swatch-focus-indicator-color)));border-radius:var(--luzmo-swatch-focus-indicator-border-radius, var(--swatch-focus-indicator-border-radius));transition:opacity var(--luzmo-animation-duration) ease-in-out;position:absolute}:host(:focus-visible):after{opacity:1}.fill{inline-size:100%;block-size:100%;box-sizing:border-box;border-radius:var(--luzmo-swatch-border-radius, var(--swatch-border-radius));justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.fill:before{content:"";z-index:0;box-sizing:border-box;box-shadow:inset 0 0 0 var(--luzmo-swatch-border-thickness, var(--swatch-border-thickness)) var(--highcontrast-swatch-border-color, var(--luzmo-swatch-border-color, var(--swatch-border-color)));border-radius:var(--luzmo-swatch-border-radius, var(--swatch-border-radius));position:absolute;top:0;right:0;bottom:0;left:0}:host([border=none]) .fill:before,.fill:before{background-color:initial;background-color:var(--picked-color, transparent)}:host([border=none]) .fill:before{box-shadow:none}.mixed-value-icon{pointer-events:none;color:#0000;color:var(--picked-color, transparent);display:none}.disabled-icon{z-index:1;pointer-events:none;color:var(--highcontrast-swatch-disabled-icon-color, var(--luzmo-swatch-disabled-icon-color, var(--swatch-disabled-icon-color)));stroke:var(--highcontrast-swatch-disabled-icon-color, var(--luzmo-swatch-disabled-icon-color, var(--swatch-disabled-icon-color)));display:none;position:relative}.disabled-icon path:first-child{fill:var(--highcontrast-swatch-disabled-icon-color, var(--luzmo-swatch-disabled-icon-color, var(--swatch-disabled-icon-color)))}.disabled-icon path:last-child{fill:var(--luzmo-swatch-icon-border-color, var(--swatch-icon-border-color))}:host([shape=rectangle]){inline-size:calc(var(--luzmo-swatch-size, var(--swatch-size)) * 2)}:host([rounding=none]),:host([rounding=none]) .fill,:host([rounding=none]) .fill:before,:host([rounding=none][selected]) .fill,:host([rounding=none][selected]) .fill:before,:host([rounding=none]):after,:host([rounding=none]):before{border-radius:0}:host([rounding=full][selected]:not([shape=rectangle])) .fill,:host([rounding=full][selected]:not([shape=rectangle])) .fill:before,:host([rounding=full]:not([shape=rectangle])),:host([rounding=full]:not([shape=rectangle])) .fill,:host([rounding=full]:not([shape=rectangle])) .fill:before,:host([rounding=full]:not([shape=rectangle])):after,:host([rounding=full]:not([shape=rectangle])):before{border-radius:100%}:host([selected]) .fill{width:calc(var(--luzmo-swatch-size, var(--swatch-size)) - 2 * var(--luzmo-swatch-border-thickness-selected, var(--swatch-border-thickness-selected)) + -2 * var(--luzmo-swatch-focus-indicator-gap, var(--swatch-focus-indicator-gap)));height:calc(var(--luzmo-swatch-size, var(--swatch-size)) - 2 * var(--luzmo-swatch-border-thickness-selected, var(--swatch-border-thickness-selected)) + -2 * var(--luzmo-swatch-focus-indicator-gap, var(--swatch-focus-indicator-gap)))}:host([selected][shape=rectangle]) .fill{width:calc(var(--luzmo-swatch-size, var(--swatch-size)) * 2 - 2 * var(--luzmo-swatch-border-thickness-selected, var(--swatch-border-thickness-selected)) + -2 * var(--luzmo-swatch-focus-indicator-gap, var(--swatch-focus-indicator-gap)))}::slotted([slot=image]){object-fit:contain;inline-size:100%;block-size:100%;transition:width var(--luzmo-animation-duration) ease-in-out,height var(--luzmo-animation-duration) ease-in-out}:host([size=xl]){--swatch-size: var(--luzmo-component-height-xl);--swatch-disabled-icon-size: 24px;--swatch-slash-thickness: 6px}:host([size=l]){--swatch-size: var(--luzmo-component-height-l);--swatch-disabled-icon-size: 20px;--swatch-slash-thickness: 5px}:host([size=s]){--swatch-size: var(--luzmo-component-height-s);--swatch-disabled-icon-size: 16px;--swatch-slash-thickness: 3px}:host([size=xs]){--swatch-size: var(--luzmo-component-height-xs);--swatch-disabled-icon-size: 16px;--swatch-slash-thickness: 2px}:host([size=xxs]){--swatch-size: var(--luzmo-component-height-xxs);--swatch-disabled-icon-size: 14px;--swatch-slash-thickness: 2px}:host{--swatch-size: var(--luzmo-component-height);--swatch-disabled-icon-size: 18px;--swatch-slash-thickness: 4px}:host{--swatch-border-radius: var(--luzmo-border-radius-s);--swatch-focus-indicator-border-radius: var(--luzmo-border-radius-s);--swatch-border-thickness: var(--luzmo-border-width);--swatch-border-thickness-selected: var(--luzmo-border-width);--swatch-focus-indicator-width: var(--luzmo-indicator-width);--swatch-focus-indicator-gap: var(--luzmo-indicator-gap);--swatch-border-color: var(--luzmo-border-color-down);--swatch-icon-border-color: var(--luzmo-border-color);--swatch-border-color-selected: var(--luzmo-border-color-full-down);--swatch-inner-border-color-selected: var(--luzmo-background-color);--swatch-disabled-icon-color: rgb(255, 255, 255);--swatch-dash-icon-color: var(--luzmo-font-color);--swatch-slash-icon-color: var(--luzmo-color-negative);--swatch-focus-indicator-color: var(--luzmo-primary)}.fill:before{background:var(--picked-color, transparent)}:host([border=none]) .fill:before{background:var(--picked-color, transparent)}:host .is-image .fill:before{background:#0000}:host .opacity-checkerboard{background:repeating-conic-gradient(var(--luzmo-swatch-checkerboard-light, rgb(255, 255, 255)) 0 25%,var(--luzmo-swatch-checkerboard-dark, rgb(230, 230, 230)) 0 50%) var(--luzmo-swatch-checkerboard-position, left top)/calc(var(--luzmo-swatch-checkerboard-size, 8px) * 2) calc(var(--luzmo-swatch-checkerboard-size, 8px) * 2)}';var y=Object.defineProperty,k=Object.getOwnPropertyDescriptor,c=(h,e,t,o)=>{for(var s=o>1?void 0:o?k(e,t):e,i=h.length-1,a;i>=0;i--)(a=h[i])&&(s=(o?a(e,t,s):a(s))||s);return o&&s&&y(e,t,s),s};class l extends p.SizedMixin(g.Focusable,{validSizes:["xxs","xs","s","m","l","xl"],noDefaultSize:!0}){constructor(){super(...arguments),this.color="",this.label="",this.mixedValue=!1,this.nothing=!1,this.role="button",this.selected=!1,this.readonly=!1,this.renderDisabled=()=>r.x`
19
+ <svg
20
+ xmlns="http://www.w3.org/2000/svg"
21
+ class="disabled-icon"
22
+ viewBox="0 0 20 20"
23
+ >
24
+ <path
25
+ d="M9.889,1a8.889,8.889,0,1,0,8.889,8.889A8.889,8.889,0,0,0,9.889,1Zm6.667,8.889a6.635,6.635,0,0,1-1.233,3.863l-9.3-9.3A6.667,6.667,0,0,1,16.556,9.889Zm-13.333,0A6.636,6.636,0,0,1,4.455,6.026l9.3,9.3A6.667,6.667,0,0,1,3.222,9.889Z"
26
+ stroke="none"
27
+ fill="var(--swatch-disabled-icon-color)"
28
+ />
29
+ <path
30
+ d="M 9.888889312744141 1 C 4.979689598083496 1 1 4.979689598083496 1 9.888889312744141 C 1 14.7980899810791 4.979689598083496 18.77777862548828 9.888889312744141 18.77777862548828 C 14.7980899810791 18.77777862548828 18.77777862548828 14.7980899810791 18.77777862548828 9.888889312744141 C 18.77777862548828 4.979689598083496 14.7980899810791 1 9.888889312744141 1 M 15.32277870178223 13.75166893005371 L 6.02610969543457 4.454998970031738 C 8.059318542480469 3.009572982788086 10.72937774658203 2.820217132568359 12.9462194442749 3.964249610900879 C 15.16304969787598 5.10828971862793 16.55568885803223 7.394259452819824 16.5555591583252 9.888889312744141 C 16.55776977539062 11.27357959747314 16.126708984375 12.62425994873047 15.32277870178223 13.75166893005371 M 9.888258934020996 16.55648612976074 C 8.843273162841797 16.55648612976074 7.794573783874512 16.31111145019531 6.831318855285645 15.8139591217041 C 4.614439010620117 14.66977882385254 3.221879959106445 12.38361930847168 3.222219467163086 9.888889312744141 C 3.220088958740234 8.504219055175781 3.651140213012695 7.153559684753418 4.454998970031738 6.02610969543457 L 13.75166893005371 15.32333946228027 C 12.60186290740967 16.14075088500977 11.24825286865234 16.55648612976074 9.888258934020996 16.55648612976074 M 9.888889312744141 0 C 15.34163951873779 0 19.77777862548828 4.436139106750488 19.77777862548828 9.888889312744141 C 19.77777862548828 15.34163951873779 15.34163951873779 19.77777862548828 9.888889312744141 19.77777862548828 C 4.436139106750488 19.77777862548828 0 15.34163951873779 0 9.888889312744141 C 0 4.436139106750488 4.436139106750488 0 9.888889312744141 0 Z M 15.10232830047607 12.11699867248535 C 15.40205764770508 11.41858959197998 15.55679702758789 10.66494941711426 15.5555591583252 9.89048957824707 C 15.5556697845459 7.759209632873535 14.38009929656982 5.829549789428711 12.48761940002441 4.852889060974121 C 11.68764972686768 4.440059661865234 10.78924942016602 4.22184944152832 9.889529228210449 4.22184944152832 C 9.114802360534668 4.22184944152832 8.360831260681152 4.377038955688477 7.661839485168457 4.676509857177734 L 15.10232830047607 12.11699867248535 Z M 12.11597919464111 15.10181331634521 L 4.675475120544434 7.660861015319824 C 4.375750541687012 8.359296798706055 4.221027374267578 9.112875938415527 4.222219467163086 9.887349128723145 C 4.221929550170898 12.01874923706055 5.397418975830078 13.94855880737305 7.289958953857422 14.92533874511719 C 8.08997917175293 15.3382396697998 8.988459587097168 15.55648994445801 9.888258934020996 15.55648994445801 C 10.66298007965088 15.55648994445801 11.41698551177979 15.40128421783447 12.11597919464111 15.10181331634521 Z"
31
+ stroke="none"
32
+ fill="var(--swatch-disabled-icon-stroke-color)"
33
+ />
34
+ </svg>
35
+ `,this.renderMixedValue=()=>u.luzmoIcon(u.luzmoDash)}static get styles(){return[r.r(x)]}get value(){return this._value||this.color||this.label}set value(e){if(e===this._value)return;const t=this.value;this._value=e,this.requestUpdate("value",t)}get focusElement(){return this}toggle(e){this.readonly||(this.selected=e??!this.selected)}handleClick(){if(this.disabled||this.mixedValue)return;this.toggle(),this.dispatchEvent(new Event("change",{cancelable:!0,bubbles:!0}))||this.toggle()}handleKeydown(e){const{code:t}=e;switch(t){case"Space":{e.preventDefault(),this.addEventListener("keyup",this.handleKeyup);break}}}handleKeypress(e){const{code:t}=e;switch(t){case"Enter":case"NumpadEnter":{this.click();break}}}handleKeyup(e){const{code:t}=e;switch(t){case"Space":{this.removeEventListener("keyup",this.handleKeyup),this.click();break}}}render(){return r.x`
36
+ <div
37
+ class="opacity-checkerboard fill"
38
+ style=${w.o(this.color?`--picked-color: ${this.color}`:void 0)}
39
+ >
40
+ <slot name="image"></slot>
41
+ ${b.n(this.disabled,this.renderDisabled)}
42
+ ${b.n(this.mixedValue,this.renderMixedValue)}
43
+ </div>
44
+ `}willUpdate(e){var t;if(this.getAttribute("role")||this.setAttribute("role","button"),(e.has("selected")||e.has("role"))&&!this.readonly){const o=this.role==="button"?"aria-pressed":"aria-checked",s=this.role==="button"?"aria-checked":"aria-pressed";e.has("role")&&this.removeAttribute(s),this.setAttribute(o,this.selected?"true":"false")}(e.has("label")||e.has("color")||e.has("mixedValue"))&&(this.label!==this.color&&((t=this.label)!=null&&t.length)?this.setAttribute("aria-label",this.label):this.color?this.setAttribute("aria-label",this.color):this.mixedValue?this.setAttribute("aria-label","Mixed"):this.removeAttribute("aria-label"))}firstUpdated(e){super.firstUpdated(e),this.addEventListener("click",this.handleClick),this.addEventListener("keydown",this.handleKeydown),this.addEventListener("keypress",this.handleKeypress),this.hasAttribute("tabindex")||this.setAttribute("tabindex","0")}}c([r.n({reflect:!0})],l.prototype,"border",2);c([r.n()],l.prototype,"color",2);c([r.n()],l.prototype,"label",2);c([r.n({type:Boolean,reflect:!0,attribute:"mixed-value"})],l.prototype,"mixedValue",2);c([r.n({type:Boolean,reflect:!0})],l.prototype,"nothing",2);c([r.n({reflect:!0})],l.prototype,"role",2);c([r.n({reflect:!0})],l.prototype,"rounding",2);c([r.n({type:Boolean,reflect:!0})],l.prototype,"selected",2);c([r.n({type:Boolean,reflect:!0})],l.prototype,"readonly",2);c([r.n({reflect:!0})],l.prototype,"shape",2);c([r.n()],l.prototype,"value",1);const S=":host{justify-content:flex-start;align-items:flex-start;gap:var(--luzmo-swatch-group-spacing-regular, var(--swatch-group-spacing-regular));flex-flow:wrap;display:inline-flex}:host([density=compact]){gap:var(--luzmo-swatch-group-spacing-compact, var(--swatch-group-spacing-compact))}:host([density=spacious]){gap:var(--luzmo-swatch-group-spacing-spacious, var(--swatch-group-spacing-spacious))}:host{--swatch-group-spacing-compact: 2px;--swatch-group-spacing-regular: 4px;--swatch-group-spacing-spacious: 8px}";var C=Object.defineProperty,A=Object.getOwnPropertyDescriptor,d=(h,e,t,o)=>{for(var s=o>1?void 0:o?A(e,t):e,i=h.length-1,a;i>=0;i--)(a=h[i])&&(s=(o?a(e,t,s):a(s))||s);return o&&s&&C(e,t,s),s};class n extends p.SizedMixin(r.LuzmoElement,{validSizes:["xs","s","m","l"],noDefaultSize:!0}){constructor(){super(),this._selected=[],this.selectedSet=new Set,this.rovingTabindexController=new z.RovingTabindexController(this,{focusInIndex:e=>{let t=-1;const o=e.findIndex((s,i)=>(!e[t]&&!s.disabled&&(t=i),s.selected&&!s.disabled));return e[o]?o:t},elements:()=>this.swatches,isFocusableElement:e=>!e.disabled}),this.manageChange=async()=>{const e=new Set;this.selectedSet=new Set(this.selected),await Promise.all(this.swatches.map(t=>t.updateComplete)),this.swatches.forEach(t=>{e.add(t.value),t.selected&&this.selectedSet.add(t.value)}),this.selectedSet.forEach(t=>{e.has(t)||this.selectedSet.delete(t)}),this._selected=[...this.selectedSet],this.rovingTabindexController.clearElementCache()},new v.s(this,{config:{attributes:!0,childList:!0,subtree:!0},callback:()=>{this.manageChange()}})}static get styles(){return[r.r(S)]}get selected(){return this._selected}set selected(e){if(e===this.selected)return;const t=this.selected;this._selected=e,this.requestUpdate("selected",t)}focus(e){this.rovingTabindexController.focus(e)}handleChange(e){e.stopPropagation();const t=this.selected;if(!this.selects){e.preventDefault();return}if(this.selects==="single"){const{target:s}=e;if(s.tabIndex=0,s.selected=!0,this.selectedSet.has(s.value))return;this.selectedSet.clear(),this.selectedSet.add(s.value),this.rovingTabindexController.elements.forEach(i=>{i!==s&&(i.selected=!1)})}else if(this.selects==="multiple"){const{target:s}=e;s.selected?this.selectedSet.add(s.value):this.selectedSet.delete(s.value)}this._selected=[...this.selectedSet],this.dispatchEvent(new Event("change",{cancelable:!0,bubbles:!0}))||(this._selected=t,e.preventDefault())}getPassthroughSwatchActions(e){const t={};e.has("selects")&&(this.selects||e.get("selects")!==void 0)&&(t.selects=this.selects),e.has("border")&&(this.border||e.get("border")!==void 0)&&(t.border=this.border),e.has("rounding")&&(this.rounding||e.get("rounding")!==void 0)&&(t.rounding=this.rounding),e.has("size")&&(this.size!=="m"||e.get("size")!==void 0)&&(t.size=this.size),e.has("shape")&&(this.shape||e.get("shape")!==void 0)&&(t.shape=this.shape);const o=[];return Object.keys(t).length>0&&o.push(s=>{"border"in t&&(s.border=t.border),"rounding"in t&&(s.rounding=t.rounding),"shape"in t&&(s.shape=t.shape),"size"in t&&(s.size=t.size)}),o}getSelectionSwatchActions(e){const t=[];if(!e.has("selects"))return t;this.selects?this.setAttribute("role",this.selects==="single"?"radiogroup":"group"):this.removeAttribute("role");const o={single:"radio",multiple:"checkbox"},s=this.selects?o[this.selects]:"button";return t.push(i=>{i.setAttribute("role",s)}),t}render(){return r.x`
45
+ <slot
46
+ @change=${this.handleChange}
47
+ @slotchange=${this.manageChange}
48
+ ></slot>
49
+ `}willUpdate(e){const t=[...this.getPassthroughSwatchActions(e),...this.getSelectionSwatchActions(e)];let o=new Set(this.selected);const s=new Set;e.has("selected")&&t.push(a=>{s.add(a.value),a.selected=!!(o.has(a.value)||!this.hasUpdated&&a.selected)});const i=()=>{o=new Set(this.selected),this.swatches.forEach(a=>{t.forEach(f=>{f(a)})}),e.has("selected")&&(this._selected=[...o.values()].filter(a=>s.has(a)))};this.hasUpdated?i():this.renderRoot.addEventListener("slotchange",()=>{requestAnimationFrame(i)},{once:!0})}}d([r.n({reflect:!0})],n.prototype,"border",2);d([r.n({reflect:!0})],n.prototype,"density",2);d([r.n({reflect:!0})],n.prototype,"rounding",2);d([r.n({type:Array})],n.prototype,"selected",1);d([r.n()],n.prototype,"selects",2);d([r.n({reflect:!0})],n.prototype,"shape",2);d([m.o({flatten:!0})],n.prototype,"swatches",2);customElements.get("luzmo-swatch")||customElements.define("luzmo-swatch",l);customElements.get("luzmo-swatch-group")||customElements.define("luzmo-swatch-group",n);exports.LuzmoSwatch=l;exports.LuzmoSwatchGroup=n;
@@ -0,0 +1,10 @@
1
+ import { LuzmoSwatch } from './swatch';
2
+ import { LuzmoSwatchGroup } from './swatch-group';
3
+ declare global {
4
+ interface HTMLElementTagNameMap {
5
+ 'luzmo-swatch': LuzmoSwatch;
6
+ 'luzmo-swatch-group': LuzmoSwatchGroup;
7
+ }
8
+ }
9
+ export { LuzmoSwatch } from './swatch';
10
+ export { LuzmoSwatchGroup } from './swatch-group';