@luzmo/lucero 1.0.1-alpha.18 → 1.0.1-alpha.19

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 (275) hide show
  1. package/components/NumberFormatter-DewVDY5w.cjs +18 -0
  2. package/components/NumberFormatter-DgOUVrge.js +136 -0
  3. package/components/NumberParser-Dik4a0h-.cjs +18 -0
  4. package/components/NumberParser-ci9J5EKv.js +173 -0
  5. package/components/accordion/index.cjs +6 -183
  6. package/components/accordion/index.js +88 -136
  7. package/components/action-bar/index.cjs +4 -85
  8. package/components/action-bar/index.js +50 -72
  9. package/components/action-button/index.cjs +3 -205
  10. package/components/action-button/index.js +93 -167
  11. package/components/action-group/index.cjs +1 -7
  12. package/components/action-group/index.js +8 -12
  13. package/components/action-group-C54IxNZk.cjs +20 -0
  14. package/components/action-group-C9dsPJg-.js +258 -0
  15. package/components/action-menu/index.cjs +11 -91
  16. package/components/action-menu/index.js +47 -66
  17. package/components/async-directive-BwIAw5tB.js +82 -0
  18. package/components/async-directive-DLz6JB0v.cjs +22 -0
  19. package/components/avatar/index.cjs +3 -63
  20. package/components/avatar/index.js +42 -54
  21. package/components/{focusable-selectors-D0t_5P7C.cjs → base-BjTwmyRF.cjs} +5 -16
  22. package/components/base-CFWO09N1.js +684 -0
  23. package/components/base-Cy0MQrPT.cjs +40 -0
  24. package/components/base-D76d76ww.js +26 -0
  25. package/components/button/index.cjs +2 -134
  26. package/components/button/index.js +72 -106
  27. package/components/button-base-B8bWcklV.js +144 -0
  28. package/components/button-base-tf95Lyl4.cjs +25 -0
  29. package/components/button-group/index.cjs +1 -45
  30. package/components/button-group/index.js +25 -37
  31. package/components/calendar/index.cjs +1 -632
  32. package/components/calendar/index.js +7 -637
  33. package/components/checkbox/index.cjs +4 -111
  34. package/components/checkbox/index.js +53 -98
  35. package/components/checkbox-mixin-BOTvuPEu.js +70 -0
  36. package/components/checkbox-mixin-BVPpXtsq.cjs +27 -0
  37. package/components/class-map-CGfNk3Ee.js +51 -0
  38. package/components/class-map-D-Y-hsN5.cjs +22 -0
  39. package/components/clear-button-CuPbWwZY.cjs +18 -0
  40. package/components/clear-button-DzZ5ulBW.js +53 -0
  41. package/components/close-button-BTo4yrFR.cjs +18 -0
  42. package/components/close-button-CuQdsez5.js +51 -0
  43. package/components/color-area/index.cjs +13 -440
  44. package/components/color-area/index.js +187 -322
  45. package/components/color-controller-B0uX6Zso.js +3230 -0
  46. package/components/color-controller-CoUL5f9K.cjs +18 -0
  47. package/components/color-field/index.cjs +2 -95
  48. package/components/color-field/index.js +41 -77
  49. package/components/color-handle/index.cjs +3 -64
  50. package/components/color-handle/index.js +37 -58
  51. package/components/color-loupe/index.cjs +1 -7
  52. package/components/color-loupe/index.js +8 -12
  53. package/components/color-loupe-CrM2DVY3.cjs +56 -0
  54. package/components/color-loupe-DmQe3SpP.js +81 -0
  55. package/components/color-menu/index.cjs +12 -217
  56. package/components/color-menu/index.js +93 -187
  57. package/components/color-palette/index.cjs +1 -89
  58. package/components/color-palette/index.js +51 -78
  59. package/components/color-palette-group/index.cjs +3 -259
  60. package/components/color-palette-group/index.js +105 -193
  61. package/components/color-picker/index.cjs +6 -114
  62. package/components/color-picker/index.js +72 -92
  63. package/components/color-slider/index.cjs +1 -585
  64. package/components/color-slider/index.js +7 -590
  65. package/components/condition-attribute-with-id-DrQYZzFS.cjs +18 -0
  66. package/components/condition-attribute-with-id-Dv4lSRbe.js +31 -0
  67. package/components/date-time-picker/index.cjs +31 -1357
  68. package/components/date-time-picker/index.js +637 -951
  69. package/components/{dependency-manger-XHpQjFgK.js → dependency-manger-CO-VPlqq.js} +14 -24
  70. package/components/dependency-manger-uthev62E.cjs +18 -0
  71. package/components/directive-C7oCP5Bh.cjs +22 -0
  72. package/components/directive-helpers-D4KMv2dC.js +62 -0
  73. package/components/directive-helpers-t-TVum7J.cjs +22 -0
  74. package/components/{slottable-request-event-CANixJnR.cjs → directive-oAbCiebi.js} +25 -14
  75. package/components/divider/index.cjs +1 -54
  76. package/components/divider/index.js +30 -49
  77. package/components/divider.module-DDvBo9zo.cjs +18 -0
  78. package/components/divider.module-DoQWQEIJ.js +21 -0
  79. package/components/element-resolution-BvRLGqIU.cjs +18 -0
  80. package/components/element-resolution-FCUT-wql.js +91 -0
  81. package/components/field-group/index.cjs +1 -7
  82. package/components/field-group/index.js +8 -12
  83. package/components/field-group-5WQMBOk4.cjs +23 -0
  84. package/components/field-group-D4B0IOdA.js +66 -0
  85. package/components/field-label/index.cjs +1 -7
  86. package/components/field-label/index.js +8 -12
  87. package/components/field-label-DxmPiC5p.js +106 -0
  88. package/components/field-label-Dz9kisdW.cjs +25 -0
  89. package/components/flow-D-0MTYCm.js +527 -0
  90. package/components/flow-DM3dNAKs.cjs +30 -0
  91. package/components/focus-group-DHeTq18L.js +218 -0
  92. package/components/focus-group-DnxZUBhQ.cjs +18 -0
  93. package/components/focus-visible-BvScGDCE.js +74 -0
  94. package/components/focus-visible-D4BXb5RB.cjs +18 -0
  95. package/components/focusable-B_KwfEec.cjs +18 -0
  96. package/components/focusable-C5JjRZmT.js +153 -0
  97. package/components/{focusable-selectors-IltOAOd9.js → focusable-selectors-B4YgbghQ.js} +4 -7
  98. package/components/focusable-selectors-BgFlyFcY.cjs +18 -0
  99. package/components/icon/index.cjs +1 -90
  100. package/components/icon/index.js +46 -74
  101. package/components/if-defined-DULpqYwi.js +27 -0
  102. package/components/if-defined-DaXWqfzc.cjs +22 -0
  103. package/components/index-CNK8wHXu.cjs +57 -0
  104. package/components/index-Cf6G4q52.js +1490 -0
  105. package/components/index-D3ICqC7S.js +1174 -0
  106. package/components/index-hqVbNKYy.cjs +113 -0
  107. package/components/index.cjs +1 -174
  108. package/components/index.js +172 -174
  109. package/components/infield-button/index.cjs +2 -46
  110. package/components/infield-button/index.js +30 -41
  111. package/components/label/index.cjs +1 -37
  112. package/components/label/index.js +24 -36
  113. package/components/{language-resolution-BSGJAWiQ.js → language-resolution-B-wjV5bb.js} +17 -21
  114. package/components/language-resolution-EUER43cg.cjs +18 -0
  115. package/components/like-anchor-Bu3pXbjT.cjs +32 -0
  116. package/components/like-anchor-DCFJN0LV.js +69 -0
  117. package/components/luzmo-icons-CiSek5iM.js +229 -0
  118. package/components/luzmo-icons-CtA-TJPd.cjs +29 -0
  119. package/components/manage-help-text-CHfMLzSa.js +92 -0
  120. package/components/manage-help-text-DNqdEkTA.cjs +30 -0
  121. package/components/menu/index.cjs +29 -1297
  122. package/components/menu/index.js +499 -954
  123. package/components/multi-language-field/index.cjs +2 -132
  124. package/components/multi-language-field/index.js +88 -118
  125. package/components/mutation-controller-DH7YOCyj.js +52 -0
  126. package/components/mutation-controller-DkOMCW-c.cjs +22 -0
  127. package/components/number-field/index.cjs +10 -613
  128. package/components/number-field/index.js +243 -442
  129. package/components/observe-slot-presence-CmVi0zTc.js +68 -0
  130. package/components/observe-slot-presence-bc9chhsi.cjs +18 -0
  131. package/components/observe-slot-text-C3moTjwy.js +87 -0
  132. package/components/observe-slot-text-D2VAEFSd.cjs +18 -0
  133. package/components/options/index.cjs +60 -693
  134. package/components/options/index.js +953 -519
  135. package/components/overlay/index.cjs +21 -367
  136. package/components/overlay/index.js +189 -273
  137. package/components/overlay-B3ajDLLq.cjs +47 -0
  138. package/components/overlay-CUKs69yr.js +2745 -0
  139. package/components/{pending-state-CXbe-Xul.js → pending-state-B2wWssTo.js} +13 -28
  140. package/components/pending-state-bJr-nEJl.cjs +26 -0
  141. package/components/picker/index.cjs +1 -9
  142. package/components/picker/index.js +11 -15
  143. package/components/picker-C0LvseZe.cjs +123 -0
  144. package/components/picker-W1qNmtsh.js +461 -0
  145. package/components/picker-button/index.cjs +4 -56
  146. package/components/picker-button/index.js +34 -45
  147. package/components/{condition-attribute-with-id-Cn815e9W.js → platform-BM-uMWpX.js} +49 -24
  148. package/components/platform-BiXhwqk3.cjs +18 -0
  149. package/components/popover/index.cjs +1 -7
  150. package/components/popover/index.js +8 -12
  151. package/components/popover-fwJeZHMQ.cjs +30 -0
  152. package/components/popover-iD8f5Jkp.js +67 -0
  153. package/components/progress-circle/index.cjs +1 -7
  154. package/components/progress-circle/index.js +8 -12
  155. package/components/progress-circle-DZxaMe8L.cjs +33 -0
  156. package/components/progress-circle-USIIU1up.js +97 -0
  157. package/components/query-BL-TJj7K.cjs +22 -0
  158. package/components/query-D_KR_GUc.js +51 -0
  159. package/components/query-assigned-elements-DjfhL1cl.js +36 -0
  160. package/components/query-assigned-elements-DsKsfk7G.cjs +22 -0
  161. package/components/query-assigned-nodes-BcKWmGzy.cjs +22 -0
  162. package/components/query-assigned-nodes-C76XVPWY.js +36 -0
  163. package/components/radio/index.cjs +2 -244
  164. package/components/radio/index.js +110 -192
  165. package/components/{random-id-BEc6QIUL.js → random-id-ByCz1xaq.js} +3 -3
  166. package/components/random-id-CqvckpWe.cjs +18 -0
  167. package/components/roving-tabindex-By_fCy_e.cjs +18 -0
  168. package/components/roving-tabindex-DOg4z6ZU.js +66 -0
  169. package/components/search/index.cjs +8 -115
  170. package/components/search/index.js +66 -96
  171. package/components/select/index.cjs +51 -720
  172. package/components/select/index.js +347 -563
  173. package/components/sized-mixin-CJbBHWRQ.js +63 -0
  174. package/components/sized-mixin-WPHH0a_D.cjs +18 -0
  175. package/components/slider/index.cjs +1 -119
  176. package/components/slider/index.js +1113 -100
  177. package/components/slottable-request-event-BfUUt1Mh.cjs +18 -0
  178. package/components/{slottable-request-event-D9WzrdWv.js → slottable-request-event-DggLA4Rx.js} +9 -12
  179. package/components/state-DwIwYPvt.js +29 -0
  180. package/components/state-vf0PJN3_.cjs +22 -0
  181. package/components/strategies-C6HsQpU2.cjs +18 -0
  182. package/components/strategies-CUMLHtQI.js +195 -0
  183. package/components/streaming-listener-BQ68fKMa.js +91 -0
  184. package/components/streaming-listener-DeGQYM-9.cjs +18 -0
  185. package/components/style-map-Bnhf_mVZ.js +53 -0
  186. package/components/style-map-DuMd5xlY.cjs +22 -0
  187. package/components/swatch/index.cjs +7 -436
  188. package/components/swatch/index.js +205 -350
  189. package/components/switch/index.cjs +2 -61
  190. package/components/switch/index.js +34 -51
  191. package/components/tabs/index.cjs +26 -693
  192. package/components/tabs/index.js +388 -521
  193. package/components/tags/index.cjs +4 -201
  194. package/components/tags/index.js +87 -152
  195. package/components/text-field/index.cjs +3 -49
  196. package/components/text-field/index.js +30 -44
  197. package/components/text-field-BkFPYo7S.cjs +85 -0
  198. package/components/text-field-C2n3rzCK.js +314 -0
  199. package/components/text-field.module-C2KVUJcX.js +21 -0
  200. package/components/text-field.module-DXhFA9G-.cjs +18 -0
  201. package/components/toast/index.cjs +12 -177
  202. package/components/toast/index.js +73 -145
  203. package/components/tooltip/index.cjs +6 -250
  204. package/components/tooltip/index.js +124 -177
  205. package/components/unit-input/index.cjs +8 -232
  206. package/components/unit-input/index.js +108 -201
  207. package/components/utils.cjs +1 -25
  208. package/components/utils.js +22 -22
  209. package/components/{random-id-BE6HA503.cjs → when-CDK1Tt5Y.js} +10 -7
  210. package/components/when-CDZyJPvd.cjs +22 -0
  211. package/package.json +1 -1
  212. package/components/action-group-DHp8RHDf.js +0 -392
  213. package/components/action-group-MPf19RPV.cjs +0 -391
  214. package/components/base-COw9n7UR.cjs +0 -119
  215. package/components/base-DmeVy0cq.js +0 -120
  216. package/components/button-base-7Ak55xFd.cjs +0 -206
  217. package/components/button-base-C3kf6BTK.js +0 -207
  218. package/components/checkbox-mixin-8cL-vfDy.js +0 -84
  219. package/components/checkbox-mixin-CE7dJj3J.cjs +0 -83
  220. package/components/clear-button-Co6oKSgl.js +0 -59
  221. package/components/clear-button-X_HDY2eH.cjs +0 -58
  222. package/components/close-button-DPBK6Kpu.cjs +0 -59
  223. package/components/close-button-Miw9ZjoJ.js +0 -60
  224. package/components/color-controller-BjDZaxhX.js +0 -491
  225. package/components/color-controller-C3c_vb2P.cjs +0 -490
  226. package/components/color-loupe-BQqNR8YD.cjs +0 -88
  227. package/components/color-loupe-B_DDFv8l.js +0 -89
  228. package/components/condition-attribute-with-id-DEc2Yjne.cjs +0 -43
  229. package/components/dependency-manger-CcIE1uvQ.cjs +0 -63
  230. package/components/divider.module-Cm5LcDRV.cjs +0 -20
  231. package/components/divider.module-DauH6k2_.js +0 -21
  232. package/components/element-resolution-DCsrhGZO.cjs +0 -112
  233. package/components/element-resolution-nMlmW4Jy.js +0 -113
  234. package/components/field-group-DNmY8W9v.cjs +0 -86
  235. package/components/field-group-DVdAWCQF.js +0 -87
  236. package/components/field-label-CKH9EXpR.cjs +0 -156
  237. package/components/field-label-Dpsecoc6.js +0 -157
  238. package/components/focus-group-BqDAk9Is.js +0 -337
  239. package/components/focus-group-DFzOlalL.cjs +0 -336
  240. package/components/focus-visible-B-B8-P9R.cjs +0 -104
  241. package/components/focus-visible-BUPRWlsh.js +0 -105
  242. package/components/focusable-BPrTcZPd.cjs +0 -262
  243. package/components/focusable-ChCLg1k4.js +0 -263
  244. package/components/language-resolution-iN9EImbb.cjs +0 -57
  245. package/components/like-anchor-D62faRNG.cjs +0 -79
  246. package/components/like-anchor-v3cJ9RWM.js +0 -80
  247. package/components/manage-help-text-BYx84zZR.cjs +0 -125
  248. package/components/manage-help-text-DOuMTGht.js +0 -126
  249. package/components/observe-slot-presence-9AwLGUQ_.cjs +0 -78
  250. package/components/observe-slot-presence-DcMdoumP.js +0 -79
  251. package/components/observe-slot-text-CSofZeeF.cjs +0 -104
  252. package/components/observe-slot-text-CjnkkBPn.js +0 -105
  253. package/components/overlay-CN8ISP1F.js +0 -2485
  254. package/components/overlay-LViy9VWM.cjs +0 -2484
  255. package/components/pending-state-e4RbXe9u.cjs +0 -75
  256. package/components/picker-DNde3awt.cjs +0 -672
  257. package/components/picker-PfUAF05y.js +0 -673
  258. package/components/platform-CxDar3Dn.cjs +0 -68
  259. package/components/platform-Cxn0WbyT.js +0 -69
  260. package/components/popover-BkbYhl3i.js +0 -74
  261. package/components/popover-BkgUf0kL.cjs +0 -74
  262. package/components/progress-circle-Hu_ivPHf.js +0 -133
  263. package/components/progress-circle-_Etqsj9f.cjs +0 -132
  264. package/components/roving-tabindex-AsmAh2In.cjs +0 -95
  265. package/components/roving-tabindex-DPF9NmrH.js +0 -96
  266. package/components/sized-mixin-DmkrNdWB.js +0 -80
  267. package/components/sized-mixin-UaTVa-AE.cjs +0 -79
  268. package/components/strategies-DlMlaSJR.cjs +0 -317
  269. package/components/strategies-DlPQoTFE.js +0 -318
  270. package/components/streaming-listener-D4sHaMub.cjs +0 -145
  271. package/components/streaming-listener-cAz5zJyk.js +0 -146
  272. package/components/text-field-11tcnftU.cjs +0 -338
  273. package/components/text-field-Chi9J2Cz.js +0 -339
  274. package/components/text-field.module-CMBS0jSL.js +0 -21
  275. package/components/text-field.module-DIJdV_sA.cjs +0 -20
@@ -15,351 +15,39 @@
15
15
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
16
  * SOFTWARE.
17
17
  * */
18
- "use strict";
19
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
20
- const lit = require("lit");
21
- const decorators_js = require("lit/decorators.js");
22
- const ifDefined_js = require("lit/directives/if-defined.js");
23
- require("../color-handle/index.cjs");
24
- const base = require("../base-COw9n7UR.cjs");
25
- const platform = require("../platform-CxDar3Dn.cjs");
26
- const colorController = require("../color-controller-C3c_vb2P.cjs");
27
- const languageResolution = require("../language-resolution-iN9EImbb.cjs");
28
- const streamingListener = require("../streaming-listener-D4sHaMub.cjs");
29
- const styles = "@media (forced-colors: active){:host{--highcontrast-color-area-border-color-disabled: GrayText;--highcontrast-color-area-border-color: Canvas;--highcontrast-color-area-fill-color-disabled: Canvas}.gradient,:host([disabled]){forced-color-adjust:none}}:host{cursor:default;-webkit-user-select:none;user-select:none;min-inline-size:var(--luzmo-color-area-min-width, 64px);min-block-size:var(--luzmo-color-area-min-height, 64px);inline-size:var(--luzmo-color-area-width, 192px);block-size:var(--luzmo-color-area-height, 192px);box-sizing:border-box;border-radius:var(--luzmo-color-area-border-radius, var(--luzmo-border-radius-s));border:var(--luzmo-color-area-border-width, var(--luzmo-border-width)) solid var(--highcontrast-color-area-border-color, var(--luzmo-color-area-border-color, var(--luzmo-border-color)));display:inline-block;position:relative}:host([focused]){z-index:1}:host([disabled]){pointer-events:none;background:var(--highcontrast-color-area-fill-color-disabled, var(--luzmo-color-area-disabled-background-color, var(--luzmo-dimmed-color)));border:var(--luzmo-color-area-border-width, var(--luzmo-border-width)) solid var(--highcontrast-color-area-border-color-disabled)}:host([disabled]) .gradient{display:none}.handle{transform:translate(calc(var(--luzmo-color-area-width, 192px) - var(--luzmo-border-width)));inset-block-start:0}.handle:dir(rtl),:host([dir=rtl]) .handle{inset-inline-end:0}.gradient{inline-size:100%;block-size:100%;border-radius:var(--luzmo-color-area-border-radius, var(--luzmo-border-radius-s))}.slider{opacity:0;inline-size:100%;block-size:100%;z-index:0;pointer-events:none;margin:0;position:absolute;inset-block-start:0;inset-inline-start:0}:host{touch-action:none}:host:before{pointer-events:none}.gradient{overflow:hidden}.handle{transform:translate(var(--luzmo-color-area-default-width))}::slotted(*){width:100%;height:100%}:host([dir=rtl]) .gradient{transform:scaleX(-1)}.slider[orient=vertical]{-webkit-appearance:slider-vertical;-moz-appearance:slider-vertical;appearance:slider-vertical}.slider:focus{z-index:1}.fieldset{border:0;margin:0;padding:0}";
30
- var __defProp = Object.defineProperty;
31
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
32
- var __decorateClass = (decorators, target, key, kind) => {
33
- var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
34
- for (var i = decorators.length - 1, decorator; i >= 0; i--)
35
- if (decorator = decorators[i])
36
- result = (kind ? decorator(target, key, result) : decorator(result)) || result;
37
- if (kind && result) __defProp(target, key, result);
38
- return result;
39
- };
40
- class LuzmoColorArea extends base.LuzmoElement {
41
- constructor() {
42
- super(...arguments);
43
- this.disabled = false;
44
- this.focused = false;
45
- this.labelX = "saturation";
46
- this.labelY = "luminosity";
47
- this.isLTR = true;
48
- this.languageResolver = new languageResolution.LanguageResolutionController(this);
49
- this.colorController = new colorController.ColorController(this, { manageAs: "hsv" });
50
- this.activeAxis = "x";
51
- this.step = 0.01;
52
- this.altered = 0;
53
- this.activeKeys = /* @__PURE__ */ new Set();
54
- this._valueChanged = false;
55
- this._pointerDown = false;
56
- }
57
- static get styles() {
58
- return [lit.unsafeCSS(styles)];
59
- }
60
- get hue() {
61
- return this.colorController.hue;
62
- }
63
- set hue(value) {
64
- this.colorController.hue = value;
65
- }
66
- get value() {
67
- return this.colorController.colorValue;
68
- }
69
- get color() {
70
- return this.colorController.colorValue;
71
- }
72
- set color(color) {
73
- this.colorController.color = color;
74
- }
75
- get x() {
76
- return this.colorController.color.hsv.s / 100;
77
- }
78
- set x(x) {
79
- if (x === this.x) {
80
- return;
81
- }
82
- const oldValue = this.x;
83
- if (this.inputX) {
84
- this.inputX.value = x.toString();
85
- this.colorController.color.set("s", this.inputX.valueAsNumber * 100);
86
- } else {
87
- this.colorController.color.set("s", x * 100);
88
- }
89
- this.requestUpdate("x", oldValue);
90
- }
91
- get y() {
92
- return this.colorController.color.hsv.v / 100;
93
- }
94
- set y(y) {
95
- if (y === this.y) {
96
- return;
97
- }
98
- const oldValue = this.y;
99
- if (this.inputY) {
100
- this.inputY.value = y.toString();
101
- this.colorController.color.set("v", this.inputY.valueAsNumber * 100);
102
- }
103
- this.requestUpdate("y", oldValue);
104
- }
105
- focus(focusOptions = {}) {
106
- super.focus(focusOptions);
107
- this.forwardFocus();
108
- }
109
- forwardFocus() {
110
- if (this.activeAxis === "x") {
111
- this.inputX.focus();
112
- } else {
113
- this.inputY.focus();
114
- }
115
- }
116
- handleFocus() {
117
- this.focused = true;
118
- this._valueChanged = false;
119
- }
120
- handleBlur() {
121
- if (this._pointerDown) {
122
- return;
123
- }
124
- this.altered = 0;
125
- this.focused = false;
126
- this._valueChanged = false;
127
- }
128
- handleKeydown(event) {
129
- const { code } = event;
130
- this.focused = true;
131
- this.altered = [event.shiftKey, event.ctrlKey, event.altKey].filter(
132
- (key) => !!key
133
- ).length;
134
- const isArrowKey = code.search("Arrow") === 0 || code.search("Page") === 0 || code.search("Home") === 0 || code.search("End") === 0;
135
- if (isArrowKey) {
136
- event.preventDefault();
137
- this.activeKeys.add(code);
138
- this.handleKeypress();
139
- }
140
- }
141
- handleKeypress() {
142
- let deltaX = 0;
143
- let deltaY = 0;
144
- const step = Math.max(this.step, this.altered * 5 * this.step);
145
- this.activeKeys.forEach((code) => {
146
- switch (code) {
147
- case "ArrowUp": {
148
- deltaY = step;
149
- break;
150
- }
151
- case "ArrowDown": {
152
- deltaY = step * -1;
153
- break;
154
- }
155
- case "ArrowLeft": {
156
- deltaX = this.step * (this.isLTR ? -1 : 1);
157
- break;
158
- }
159
- case "ArrowRight": {
160
- deltaX = this.step * (this.isLTR ? 1 : -1);
161
- break;
162
- }
163
- case "PageUp": {
164
- deltaY = step * 10;
165
- break;
166
- }
167
- case "PageDown": {
168
- deltaY = step * -10;
169
- break;
170
- }
171
- case "Home": {
172
- deltaX = step * (this.isLTR ? -10 : 10);
173
- break;
174
- }
175
- case "End": {
176
- deltaX = step * (this.isLTR ? 10 : -10);
177
- break;
178
- }
179
- }
180
- });
181
- if (deltaX !== 0) {
182
- this.activeAxis = "x";
183
- this.inputX.focus();
184
- } else if (deltaY !== 0) {
185
- this.activeAxis = "y";
186
- this.inputY.focus();
187
- }
188
- this.x = Math.min(1, Math.max(this.x + deltaX, 0));
189
- this.y = Math.min(1, Math.max(this.y + deltaY, 0));
190
- this.colorController.savePreviousColor();
191
- if (deltaX !== 0 || deltaY !== 0) {
192
- this._valueChanged = true;
193
- this.dispatchEvent(
194
- new Event("input", {
195
- bubbles: true,
196
- composed: true
197
- })
198
- );
199
- const applyDefault = this.dispatchEvent(
200
- new Event("change", {
201
- bubbles: true,
202
- composed: true,
203
- cancelable: true
204
- })
205
- );
206
- if (!applyDefault) {
207
- this.colorController.restorePreviousColor();
208
- }
209
- }
210
- }
211
- handleKeyup(event) {
212
- event.preventDefault();
213
- const { code } = event;
214
- this.activeKeys.delete(code);
215
- }
216
- handleInput(event) {
217
- const { valueAsNumber, name } = event.target;
218
- this[name] = valueAsNumber;
219
- }
220
- handleChange(event) {
221
- this.handleInput(event);
222
- this.dispatchEvent(
223
- new Event("change", {
224
- bubbles: true,
225
- composed: true,
226
- cancelable: true
227
- })
228
- );
229
- }
230
- handlePointerdown(event) {
231
- if (event.button !== 0) {
232
- event.preventDefault();
233
- return;
234
- }
235
- this._pointerDown = true;
236
- this.colorController.savePreviousColor();
237
- this.boundingClientRect = this.getBoundingClientRect();
238
- event.target.setPointerCapture(event.pointerId);
239
- if (event.pointerType === "mouse") {
240
- this.focused = true;
241
- }
242
- }
243
- handlePointermove(event) {
244
- const [x, y] = this.calculateHandlePosition(event);
245
- this._valueChanged = false;
246
- this.x = x;
247
- this.y = y;
248
- this.dispatchEvent(
249
- new Event("input", {
250
- bubbles: true,
251
- composed: true,
252
- cancelable: true
253
- })
254
- );
255
- }
256
- handlePointerup(event) {
257
- event.preventDefault();
258
- this._pointerDown = false;
259
- event.target.releasePointerCapture(event.pointerId);
260
- const applyDefault = this.dispatchEvent(
261
- new Event("change", {
262
- bubbles: true,
263
- composed: true,
264
- cancelable: true
265
- })
266
- );
267
- this.inputX.focus();
268
- if (event.pointerType === "mouse") {
269
- this.focused = false;
270
- }
271
- if (!applyDefault) {
272
- this.colorController.restorePreviousColor();
273
- }
274
- }
275
- /**
276
- * Returns the value under the cursor
277
- * @param: PointerEvent on slider
278
- * @return: Slider value that correlates to the position under the pointer
279
- */
280
- calculateHandlePosition(event) {
281
- if (!this.boundingClientRect) {
282
- return [this.x, this.y];
283
- }
284
- const rect = this.boundingClientRect;
285
- const minOffsetX = rect.left;
286
- const minOffsetY = rect.top;
287
- const offsetX = event.clientX;
288
- const offsetY = event.clientY;
289
- const width = rect.width;
290
- const height = rect.height;
291
- const percentX = Math.max(0, Math.min(1, (offsetX - minOffsetX) / width));
292
- const percentY = Math.max(0, Math.min(1, (offsetY - minOffsetY) / height));
293
- return [this.isLTR ? percentX : 1 - percentX, 1 - percentY];
294
- }
295
- handleAreaPointerdown(event) {
296
- if (event.button !== 0) {
297
- return;
298
- }
299
- event.stopPropagation();
300
- event.preventDefault();
301
- this.handle.dispatchEvent(new PointerEvent("pointerdown", event));
302
- this.handlePointermove(event);
303
- }
304
- render() {
305
- const { width = 0, height = 0 } = this.boundingClientRect || {};
306
- const isMobile = platform.isAndroid() || platform.isIOS();
307
- const defaultAriaLabel = "Color Picker";
308
- const ariaLabel = defaultAriaLabel;
309
- const ariaRoleDescription = ifDefined_js.ifDefined(isMobile ? void 0 : "2d slider");
310
- const ariaLabelX = this.labelX;
311
- const ariaLabelY = this.labelY;
312
- const ariaValueX = new Intl.NumberFormat(this.languageResolver.language, {
313
- style: "percent",
314
- unitDisplay: "narrow"
315
- }).format(this.x);
316
- const ariaValueY = new Intl.NumberFormat(this.languageResolver.language, {
317
- style: "percent",
318
- unitDisplay: "narrow"
319
- }).format(this.y);
320
- const style = {
321
- background: `linear-gradient(to top, black 0%, hsla(${this.hue}, 100%, 0.01%, 0) 100%),linear-gradient(to right, white 0%, hsla(${this.hue}, 100%, 0.01%, 0) 100%), hsl(${this.hue}, 100%, 50%);`
322
- };
323
- return lit.html`
18
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("../base-Cy0MQrPT.cjs"),f=require("../query-BL-TJj7K.cjs"),b=require("../if-defined-DaXWqfzc.cjs");require("../color-handle/index.cjs");const v=require("../platform-BiXhwqk3.cjs"),g=require("../color-controller-CoUL5f9K.cjs"),y=require("../language-resolution-EUER43cg.cjs"),w=require("../streaming-listener-DeGQYM-9.cjs"),C="@media (forced-colors: active){:host{--highcontrast-color-area-border-color-disabled: GrayText;--highcontrast-color-area-border-color: Canvas;--highcontrast-color-area-fill-color-disabled: Canvas}.gradient,:host([disabled]){forced-color-adjust:none}}:host{cursor:default;-webkit-user-select:none;user-select:none;min-inline-size:var(--luzmo-color-area-min-width, 64px);min-block-size:var(--luzmo-color-area-min-height, 64px);inline-size:var(--luzmo-color-area-width, 192px);block-size:var(--luzmo-color-area-height, 192px);box-sizing:border-box;border-radius:var(--luzmo-color-area-border-radius, var(--luzmo-border-radius-s));border:var(--luzmo-color-area-border-width, var(--luzmo-border-width)) solid var(--highcontrast-color-area-border-color, var(--luzmo-color-area-border-color, var(--luzmo-border-color)));display:inline-block;position:relative}:host([focused]){z-index:1}:host([disabled]){pointer-events:none;background:var(--highcontrast-color-area-fill-color-disabled, var(--luzmo-color-area-disabled-background-color, var(--luzmo-dimmed-color)));border:var(--luzmo-color-area-border-width, var(--luzmo-border-width)) solid var(--highcontrast-color-area-border-color-disabled)}:host([disabled]) .gradient{display:none}.handle{transform:translate(calc(var(--luzmo-color-area-width, 192px) - var(--luzmo-border-width)));inset-block-start:0}.handle:dir(rtl),:host([dir=rtl]) .handle{inset-inline-end:0}.gradient{inline-size:100%;block-size:100%;border-radius:var(--luzmo-color-area-border-radius, var(--luzmo-border-radius-s))}.slider{opacity:0;inline-size:100%;block-size:100%;z-index:0;pointer-events:none;margin:0;position:absolute;inset-block-start:0;inset-inline-start:0}:host{touch-action:none}:host:before{pointer-events:none}.gradient{overflow:hidden}.handle{transform:translate(var(--luzmo-color-area-default-width))}::slotted(*){width:100%;height:100%}:host([dir=rtl]) .gradient{transform:scaleX(-1)}.slider[orient=vertical]{-webkit-appearance:slider-vertical;-moz-appearance:slider-vertical;appearance:slider-vertical}.slider:focus{z-index:1}.fieldset{border:0;margin:0;padding:0}";var x=Object.defineProperty,$=Object.getOwnPropertyDescriptor,a=(p,e,t,r)=>{for(var o=r>1?void 0:r?$(e,t):e,n=p.length-1,l;n>=0;n--)(l=p[n])&&(o=(r?l(e,t,o):l(o))||o);return r&&o&&x(e,t,o),o};class i extends s.LuzmoElement{constructor(){super(...arguments),this.disabled=!1,this.focused=!1,this.labelX="saturation",this.labelY="luminosity",this.isLTR=!0,this.languageResolver=new y.LanguageResolutionController(this),this.colorController=new g.ColorController(this,{manageAs:"hsv"}),this.activeAxis="x",this.step=.01,this.altered=0,this.activeKeys=new Set,this._valueChanged=!1,this._pointerDown=!1}static get styles(){return[s.r(C)]}get hue(){return this.colorController.hue}set hue(e){this.colorController.hue=e}get value(){return this.colorController.colorValue}get color(){return this.colorController.colorValue}set color(e){this.colorController.color=e}get x(){return this.colorController.color.hsv.s/100}set x(e){if(e===this.x)return;const t=this.x;this.inputX?(this.inputX.value=e.toString(),this.colorController.color.set("s",this.inputX.valueAsNumber*100)):this.colorController.color.set("s",e*100),this.requestUpdate("x",t)}get y(){return this.colorController.color.hsv.v/100}set y(e){if(e===this.y)return;const t=this.y;this.inputY&&(this.inputY.value=e.toString(),this.colorController.color.set("v",this.inputY.valueAsNumber*100)),this.requestUpdate("y",t)}focus(e={}){super.focus(e),this.forwardFocus()}forwardFocus(){this.activeAxis==="x"?this.inputX.focus():this.inputY.focus()}handleFocus(){this.focused=!0,this._valueChanged=!1}handleBlur(){this._pointerDown||(this.altered=0,this.focused=!1,this._valueChanged=!1)}handleKeydown(e){const{code:t}=e;this.focused=!0,this.altered=[e.shiftKey,e.ctrlKey,e.altKey].filter(o=>!!o).length,(t.search("Arrow")===0||t.search("Page")===0||t.search("Home")===0||t.search("End")===0)&&(e.preventDefault(),this.activeKeys.add(t),this.handleKeypress())}handleKeypress(){let e=0,t=0;const r=Math.max(this.step,this.altered*5*this.step);this.activeKeys.forEach(o=>{switch(o){case"ArrowUp":{t=r;break}case"ArrowDown":{t=r*-1;break}case"ArrowLeft":{e=this.step*(this.isLTR?-1:1);break}case"ArrowRight":{e=this.step*(this.isLTR?1:-1);break}case"PageUp":{t=r*10;break}case"PageDown":{t=r*-10;break}case"Home":{e=r*(this.isLTR?-10:10);break}case"End":{e=r*(this.isLTR?10:-10);break}}}),e!==0?(this.activeAxis="x",this.inputX.focus()):t!==0&&(this.activeAxis="y",this.inputY.focus()),this.x=Math.min(1,Math.max(this.x+e,0)),this.y=Math.min(1,Math.max(this.y+t,0)),this.colorController.savePreviousColor(),(e!==0||t!==0)&&(this._valueChanged=!0,this.dispatchEvent(new Event("input",{bubbles:!0,composed:!0})),this.dispatchEvent(new Event("change",{bubbles:!0,composed:!0,cancelable:!0}))||this.colorController.restorePreviousColor())}handleKeyup(e){e.preventDefault();const{code:t}=e;this.activeKeys.delete(t)}handleInput(e){const{valueAsNumber:t,name:r}=e.target;this[r]=t}handleChange(e){this.handleInput(e),this.dispatchEvent(new Event("change",{bubbles:!0,composed:!0,cancelable:!0}))}handlePointerdown(e){if(e.button!==0){e.preventDefault();return}this._pointerDown=!0,this.colorController.savePreviousColor(),this.boundingClientRect=this.getBoundingClientRect(),e.target.setPointerCapture(e.pointerId),e.pointerType==="mouse"&&(this.focused=!0)}handlePointermove(e){const[t,r]=this.calculateHandlePosition(e);this._valueChanged=!1,this.x=t,this.y=r,this.dispatchEvent(new Event("input",{bubbles:!0,composed:!0,cancelable:!0}))}handlePointerup(e){e.preventDefault(),this._pointerDown=!1,e.target.releasePointerCapture(e.pointerId);const t=this.dispatchEvent(new Event("change",{bubbles:!0,composed:!0,cancelable:!0}));this.inputX.focus(),e.pointerType==="mouse"&&(this.focused=!1),t||this.colorController.restorePreviousColor()}calculateHandlePosition(e){if(!this.boundingClientRect)return[this.x,this.y];const t=this.boundingClientRect,r=t.left,o=t.top,n=e.clientX,l=e.clientY,h=t.width,d=t.height,c=Math.max(0,Math.min(1,(n-r)/h)),u=Math.max(0,Math.min(1,(l-o)/d));return[this.isLTR?c:1-c,1-u]}handleAreaPointerdown(e){e.button===0&&(e.stopPropagation(),e.preventDefault(),this.handle.dispatchEvent(new PointerEvent("pointerdown",e)),this.handlePointermove(e))}render(){const{width:e=0,height:t=0}=this.boundingClientRect||{},r=v.isAndroid()||v.isIOS(),n="Color Picker",l=b.o(r?void 0:"2d slider"),h=this.labelX,d=this.labelY,c=new Intl.NumberFormat(this.languageResolver.language,{style:"percent",unitDisplay:"narrow"}).format(this.x),u=new Intl.NumberFormat(this.languageResolver.language,{style:"percent",unitDisplay:"narrow"}).format(this.y),m={background:`linear-gradient(to top, black 0%, hsla(${this.hue}, 100%, 0.01%, 0) 100%),linear-gradient(to right, white 0%, hsla(${this.hue}, 100%, 0.01%, 0) 100%), hsl(${this.hue}, 100%, 50%);`};return s.x`
324
19
  <div
325
20
  @pointerdown=${this.handleAreaPointerdown}
326
21
  class="gradient"
327
- style="background: ${style.background}"
22
+ style="background: ${m.background}"
328
23
  >
329
24
  <slot name="gradient"></slot>
330
25
  </div>
331
26
 
332
27
  <luzmo-color-handle
333
- tabindex=${ifDefined_js.ifDefined(this.focused ? void 0 : "0")}
28
+ tabindex=${b.o(this.focused?void 0:"0")}
334
29
  @focus=${this.forwardFocus}
335
30
  ?focused=${this.focused}
336
31
  class="handle"
337
32
  color=${this.colorController.getHslString()}
338
33
  ?disabled=${this.disabled}
339
- style=${`transform: translate(${(this.isLTR ? this.x : 1 - this.x) * width}px, ${height - this.y * height}px);`}
340
- ${streamingListener.streamingListener({
341
- start: ["pointerdown", this.handlePointerdown],
342
- streamInside: ["pointermove", this.handlePointermove],
343
- end: [
344
- ["pointerup", "pointercancel", "pointerleave"],
345
- this.handlePointerup
346
- ]
347
- })}
34
+ style=${`transform: translate(${(this.isLTR?this.x:1-this.x)*e}px, ${t-this.y*t}px);`}
35
+ ${w.streamingListener({start:["pointerdown",this.handlePointerdown],streamInside:["pointermove",this.handlePointermove],end:[["pointerup","pointercancel","pointerleave"],this.handlePointerup]})}
348
36
  ></luzmo-color-handle>
349
37
 
350
38
  <fieldset
351
39
  class="fieldset"
352
- aria-label=${ifDefined_js.ifDefined(isMobile ? ariaLabel : void 0)}
40
+ aria-label=${b.o(r?n:void 0)}
353
41
  >
354
42
  <div role="presentation">
355
43
  <input
356
44
  type="range"
357
45
  class="slider"
358
46
  name="x"
359
- aria-label=${isMobile ? ariaLabelX : `${ariaLabelX} ${ariaLabel}`}
360
- aria-roledescription=${ariaRoleDescription}
47
+ aria-label=${r?h:`${h} ${n}`}
48
+ aria-roledescription=${l}
361
49
  aria-orientation="horizontal"
362
- aria-valuetext=${isMobile ? ariaValueX : `${ariaValueX}, ${ariaLabelX}${this._valueChanged ? "" : `, ${ariaValueY}, ${ariaLabelY}`}`}
50
+ aria-valuetext=${r?c:`${c}, ${h}${this._valueChanged?"":`, ${u}, ${d}`}`}
363
51
  min="0"
364
52
  max="1"
365
53
  step=${this.step}
@@ -374,10 +62,10 @@ class LuzmoColorArea extends base.LuzmoElement {
374
62
  type="range"
375
63
  class="slider"
376
64
  name="y"
377
- aria-label=${isMobile ? ariaLabelY : `${ariaLabelY} ${ariaLabel}`}
378
- aria-roledescription=${ariaRoleDescription}
65
+ aria-label=${r?d:`${d} ${n}`}
66
+ aria-roledescription=${l}
379
67
  aria-orientation="vertical"
380
- aria-valuetext=${isMobile ? ariaValueY : `${ariaValueY}, ${ariaLabelY}${this._valueChanged ? "" : `, ${ariaValueX}, ${ariaLabelX}`}`}
68
+ aria-valuetext=${r?u:`${u}, ${d}${this._valueChanged?"":`, ${c}, ${h}`}`}
381
69
  orient="vertical"
382
70
  min="0"
383
71
  max="1"
@@ -389,119 +77,4 @@ class LuzmoColorArea extends base.LuzmoElement {
389
77
  />
390
78
  </div>
391
79
  </fieldset>
392
- `;
393
- }
394
- firstUpdated(changed) {
395
- super.firstUpdated(changed);
396
- this.boundingClientRect = this.getBoundingClientRect();
397
- this.addEventListener("focus", this.handleFocus);
398
- this.addEventListener("blur", this.handleBlur);
399
- this.addEventListener("keyup", this.handleKeyup);
400
- this.addEventListener("keydown", this.handleKeydown);
401
- }
402
- /**
403
- * Overrides the `updated` method to handle changes in property values.
404
- *
405
- * @param changed - A map of changed properties with their previous values.
406
- *
407
- * This method performs the following actions:
408
- * - Updates the saturation (`s`) of the color if `x` has changed.
409
- * - Updates the value (`v`) of the color if `y` has changed.
410
- * - If the `focused` property has changed and is now true, it lazily binds
411
- * the `input[type="range"]` elements in shadow roots to prevent multiple
412
- * tab stops within the Color Area for certain browser settings (e.g., Webkit).
413
- */
414
- updated(changed) {
415
- super.updated(changed);
416
- if (this.x !== this.inputX.valueAsNumber) {
417
- this.colorController.color.set("s", this.inputX.valueAsNumber * 100);
418
- }
419
- if (this.y !== this.inputY.valueAsNumber) {
420
- this.colorController.color.set(
421
- "v",
422
- (1 - this.inputY.valueAsNumber) * 100
423
- );
424
- }
425
- if (changed.has("focused") && this.focused) {
426
- const parentX = this.inputX.parentElement;
427
- const parentY = this.inputY.parentElement;
428
- if (!parentX.shadowRoot && !parentY.shadowRoot) {
429
- parentX.attachShadow({ mode: "open" });
430
- parentY.attachShadow({ mode: "open" });
431
- const slot = '<div tabindex="-1"><slot></slot></div>';
432
- parentX.shadowRoot.innerHTML = slot;
433
- parentY.shadowRoot.innerHTML = slot;
434
- }
435
- }
436
- }
437
- connectedCallback() {
438
- var _a;
439
- super.connectedCallback();
440
- if (!this.observer && window.ResizeObserver) {
441
- this.observer = new window.ResizeObserver((entries) => {
442
- for (const entry of entries) {
443
- this.boundingClientRect = entry.contentRect;
444
- }
445
- this.requestUpdate();
446
- });
447
- }
448
- (_a = this.observer) == null ? void 0 : _a.observe(this);
449
- }
450
- disconnectedCallback() {
451
- var _a;
452
- (_a = this.observer) == null ? void 0 : _a.unobserve(this);
453
- super.disconnectedCallback();
454
- }
455
- }
456
- __decorateClass([
457
- decorators_js.property({ type: String, reflect: true })
458
- ], LuzmoColorArea.prototype, "dir", 2);
459
- __decorateClass([
460
- decorators_js.property({ type: Boolean, reflect: true })
461
- ], LuzmoColorArea.prototype, "disabled", 2);
462
- __decorateClass([
463
- decorators_js.property({ type: Boolean, reflect: true })
464
- ], LuzmoColorArea.prototype, "focused", 2);
465
- __decorateClass([
466
- decorators_js.property({ type: String, attribute: "label-x" })
467
- ], LuzmoColorArea.prototype, "labelX", 2);
468
- __decorateClass([
469
- decorators_js.property({ type: String, attribute: "label-y" })
470
- ], LuzmoColorArea.prototype, "labelY", 2);
471
- __decorateClass([
472
- decorators_js.property({ type: Boolean, attribute: "is-ltr" })
473
- ], LuzmoColorArea.prototype, "isLTR", 2);
474
- __decorateClass([
475
- decorators_js.query(".handle")
476
- ], LuzmoColorArea.prototype, "handle", 2);
477
- __decorateClass([
478
- decorators_js.property({ type: Number })
479
- ], LuzmoColorArea.prototype, "hue", 1);
480
- __decorateClass([
481
- decorators_js.property({ type: String })
482
- ], LuzmoColorArea.prototype, "value", 1);
483
- __decorateClass([
484
- decorators_js.property({ type: String })
485
- ], LuzmoColorArea.prototype, "color", 1);
486
- __decorateClass([
487
- decorators_js.property({ attribute: false })
488
- ], LuzmoColorArea.prototype, "activeAxis", 2);
489
- __decorateClass([
490
- decorators_js.property({ type: Number })
491
- ], LuzmoColorArea.prototype, "x", 1);
492
- __decorateClass([
493
- decorators_js.property({ type: Number })
494
- ], LuzmoColorArea.prototype, "y", 1);
495
- __decorateClass([
496
- decorators_js.property({ type: Number })
497
- ], LuzmoColorArea.prototype, "step", 2);
498
- __decorateClass([
499
- decorators_js.query('[name="x"]')
500
- ], LuzmoColorArea.prototype, "inputX", 2);
501
- __decorateClass([
502
- decorators_js.query('[name="y"]')
503
- ], LuzmoColorArea.prototype, "inputY", 2);
504
- if (!customElements.get("luzmo-color-area")) {
505
- customElements.define("luzmo-color-area", LuzmoColorArea);
506
- }
507
- exports.LuzmoColorArea = LuzmoColorArea;
80
+ `}firstUpdated(e){super.firstUpdated(e),this.boundingClientRect=this.getBoundingClientRect(),this.addEventListener("focus",this.handleFocus),this.addEventListener("blur",this.handleBlur),this.addEventListener("keyup",this.handleKeyup),this.addEventListener("keydown",this.handleKeydown)}updated(e){if(super.updated(e),this.x!==this.inputX.valueAsNumber&&this.colorController.color.set("s",this.inputX.valueAsNumber*100),this.y!==this.inputY.valueAsNumber&&this.colorController.color.set("v",(1-this.inputY.valueAsNumber)*100),e.has("focused")&&this.focused){const t=this.inputX.parentElement,r=this.inputY.parentElement;if(!t.shadowRoot&&!r.shadowRoot){t.attachShadow({mode:"open"}),r.attachShadow({mode:"open"});const o='<div tabindex="-1"><slot></slot></div>';t.shadowRoot.innerHTML=o,r.shadowRoot.innerHTML=o}}}connectedCallback(){var e;super.connectedCallback(),!this.observer&&window.ResizeObserver&&(this.observer=new window.ResizeObserver(t=>{for(const r of t)this.boundingClientRect=r.contentRect;this.requestUpdate()})),(e=this.observer)==null||e.observe(this)}disconnectedCallback(){var e;(e=this.observer)==null||e.unobserve(this),super.disconnectedCallback()}}a([s.n({type:String,reflect:!0})],i.prototype,"dir",2);a([s.n({type:Boolean,reflect:!0})],i.prototype,"disabled",2);a([s.n({type:Boolean,reflect:!0})],i.prototype,"focused",2);a([s.n({type:String,attribute:"label-x"})],i.prototype,"labelX",2);a([s.n({type:String,attribute:"label-y"})],i.prototype,"labelY",2);a([s.n({type:Boolean,attribute:"is-ltr"})],i.prototype,"isLTR",2);a([f.e(".handle")],i.prototype,"handle",2);a([s.n({type:Number})],i.prototype,"hue",1);a([s.n({type:String})],i.prototype,"value",1);a([s.n({type:String})],i.prototype,"color",1);a([s.n({attribute:!1})],i.prototype,"activeAxis",2);a([s.n({type:Number})],i.prototype,"x",1);a([s.n({type:Number})],i.prototype,"y",1);a([s.n({type:Number})],i.prototype,"step",2);a([f.e('[name="x"]')],i.prototype,"inputX",2);a([f.e('[name="y"]')],i.prototype,"inputY",2);customElements.get("luzmo-color-area")||customElements.define("luzmo-color-area",i);exports.LuzmoColorArea=i;