@esri/calcite-components 2.2.0-next.0 → 2.2.0-next.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2549) hide show
  1. package/dist/.storybook/placeholderImage.js +1 -1
  2. package/dist/calcite/assets/combobox/t9n/messages_ar.json +4 -1
  3. package/dist/calcite/assets/combobox/t9n/messages_bg.json +4 -1
  4. package/dist/calcite/assets/combobox/t9n/messages_bs.json +4 -1
  5. package/dist/calcite/assets/combobox/t9n/messages_ca.json +4 -1
  6. package/dist/calcite/assets/combobox/t9n/messages_cs.json +4 -1
  7. package/dist/calcite/assets/combobox/t9n/messages_da.json +4 -1
  8. package/dist/calcite/assets/combobox/t9n/messages_de.json +4 -1
  9. package/dist/calcite/assets/combobox/t9n/messages_el.json +4 -1
  10. package/dist/calcite/assets/combobox/t9n/messages_es.json +4 -1
  11. package/dist/calcite/assets/combobox/t9n/messages_et.json +4 -1
  12. package/dist/calcite/assets/combobox/t9n/messages_fi.json +4 -1
  13. package/dist/calcite/assets/combobox/t9n/messages_fr.json +4 -1
  14. package/dist/calcite/assets/combobox/t9n/messages_he.json +4 -1
  15. package/dist/calcite/assets/combobox/t9n/messages_hr.json +4 -1
  16. package/dist/calcite/assets/combobox/t9n/messages_hu.json +4 -1
  17. package/dist/calcite/assets/combobox/t9n/messages_id.json +4 -1
  18. package/dist/calcite/assets/combobox/t9n/messages_it.json +4 -1
  19. package/dist/calcite/assets/combobox/t9n/messages_ja.json +4 -1
  20. package/dist/calcite/assets/combobox/t9n/messages_ko.json +4 -1
  21. package/dist/calcite/assets/combobox/t9n/messages_lt.json +4 -1
  22. package/dist/calcite/assets/combobox/t9n/messages_lv.json +4 -1
  23. package/dist/calcite/assets/combobox/t9n/messages_nl.json +4 -1
  24. package/dist/calcite/assets/combobox/t9n/messages_no.json +4 -1
  25. package/dist/calcite/assets/combobox/t9n/messages_pl.json +4 -1
  26. package/dist/calcite/assets/combobox/t9n/messages_pt-BR.json +4 -1
  27. package/dist/calcite/assets/combobox/t9n/messages_pt-PT.json +4 -1
  28. package/dist/calcite/assets/combobox/t9n/messages_ro.json +4 -1
  29. package/dist/calcite/assets/combobox/t9n/messages_ru.json +4 -1
  30. package/dist/calcite/assets/combobox/t9n/messages_sk.json +4 -1
  31. package/dist/calcite/assets/combobox/t9n/messages_sl.json +4 -1
  32. package/dist/calcite/assets/combobox/t9n/messages_sr.json +4 -1
  33. package/dist/calcite/assets/combobox/t9n/messages_sv.json +4 -1
  34. package/dist/calcite/assets/combobox/t9n/messages_th.json +4 -1
  35. package/dist/calcite/assets/combobox/t9n/messages_tr.json +4 -1
  36. package/dist/calcite/assets/combobox/t9n/messages_uk.json +4 -1
  37. package/dist/calcite/assets/combobox/t9n/messages_vi.json +4 -1
  38. package/dist/calcite/assets/combobox/t9n/messages_zh-CN.json +4 -1
  39. package/dist/calcite/assets/combobox/t9n/messages_zh-HK.json +4 -1
  40. package/dist/calcite/assets/combobox/t9n/messages_zh-TW.json +4 -1
  41. package/dist/calcite/assets/input-time-zone/t9n/messages_fr.json +1 -1
  42. package/dist/calcite/assets/list/t9n/messages_ar.json +4 -0
  43. package/dist/calcite/assets/list/t9n/messages_bg.json +4 -0
  44. package/dist/calcite/assets/list/t9n/messages_bs.json +4 -0
  45. package/dist/calcite/assets/list/t9n/messages_ca.json +4 -0
  46. package/dist/calcite/assets/list/t9n/messages_cs.json +4 -0
  47. package/dist/calcite/assets/list/t9n/messages_da.json +4 -0
  48. package/dist/calcite/assets/list/t9n/messages_de.json +4 -0
  49. package/dist/calcite/assets/list/t9n/messages_el.json +4 -0
  50. package/dist/calcite/assets/list/t9n/messages_es.json +4 -0
  51. package/dist/calcite/assets/list/t9n/messages_et.json +4 -0
  52. package/dist/calcite/assets/list/t9n/messages_fi.json +4 -0
  53. package/dist/calcite/assets/list/t9n/messages_fr.json +4 -0
  54. package/dist/calcite/assets/list/t9n/messages_he.json +4 -0
  55. package/dist/calcite/assets/list/t9n/messages_hr.json +4 -0
  56. package/dist/calcite/assets/list/t9n/messages_hu.json +4 -0
  57. package/dist/calcite/assets/list/t9n/messages_id.json +4 -0
  58. package/dist/calcite/assets/list/t9n/messages_it.json +4 -0
  59. package/dist/calcite/assets/list/t9n/messages_ja.json +4 -0
  60. package/dist/calcite/assets/list/t9n/messages_ko.json +4 -0
  61. package/dist/calcite/assets/list/t9n/messages_lt.json +4 -0
  62. package/dist/calcite/assets/list/t9n/messages_lv.json +4 -0
  63. package/dist/calcite/assets/list/t9n/messages_nl.json +4 -0
  64. package/dist/calcite/assets/list/t9n/messages_no.json +4 -0
  65. package/dist/calcite/assets/list/t9n/messages_pl.json +4 -0
  66. package/dist/calcite/assets/list/t9n/messages_pt-BR.json +4 -0
  67. package/dist/calcite/assets/list/t9n/messages_pt-PT.json +4 -0
  68. package/dist/calcite/assets/list/t9n/messages_ro.json +4 -0
  69. package/dist/calcite/assets/list/t9n/messages_ru.json +4 -0
  70. package/dist/calcite/assets/list/t9n/messages_sk.json +4 -0
  71. package/dist/calcite/assets/list/t9n/messages_sl.json +4 -0
  72. package/dist/calcite/assets/list/t9n/messages_sr.json +4 -0
  73. package/dist/calcite/assets/list/t9n/messages_sv.json +4 -0
  74. package/dist/calcite/assets/list/t9n/messages_th.json +4 -0
  75. package/dist/calcite/assets/list/t9n/messages_tr.json +4 -0
  76. package/dist/calcite/assets/list/t9n/messages_uk.json +4 -0
  77. package/dist/calcite/assets/list/t9n/messages_vi.json +4 -0
  78. package/dist/calcite/assets/list/t9n/messages_zh-CN.json +4 -0
  79. package/dist/calcite/assets/list/t9n/messages_zh-HK.json +4 -0
  80. package/dist/calcite/assets/list/t9n/messages_zh-TW.json +4 -0
  81. package/dist/calcite/assets/pagination/t9n/messages_ar.json +2 -2
  82. package/dist/calcite/assets/pagination/t9n/messages_bg.json +2 -2
  83. package/dist/calcite/assets/pagination/t9n/messages_bs.json +2 -2
  84. package/dist/calcite/assets/pagination/t9n/messages_ca.json +2 -2
  85. package/dist/calcite/assets/pagination/t9n/messages_cs.json +2 -2
  86. package/dist/calcite/assets/pagination/t9n/messages_da.json +2 -2
  87. package/dist/calcite/assets/pagination/t9n/messages_de.json +2 -2
  88. package/dist/calcite/assets/pagination/t9n/messages_el.json +2 -2
  89. package/dist/calcite/assets/pagination/t9n/messages_es.json +2 -2
  90. package/dist/calcite/assets/pagination/t9n/messages_et.json +2 -2
  91. package/dist/calcite/assets/pagination/t9n/messages_fi.json +2 -2
  92. package/dist/calcite/assets/pagination/t9n/messages_fr.json +2 -2
  93. package/dist/calcite/assets/pagination/t9n/messages_he.json +2 -2
  94. package/dist/calcite/assets/pagination/t9n/messages_hr.json +2 -2
  95. package/dist/calcite/assets/pagination/t9n/messages_hu.json +2 -2
  96. package/dist/calcite/assets/pagination/t9n/messages_id.json +2 -2
  97. package/dist/calcite/assets/pagination/t9n/messages_it.json +2 -2
  98. package/dist/calcite/assets/pagination/t9n/messages_ja.json +2 -2
  99. package/dist/calcite/assets/pagination/t9n/messages_ko.json +2 -2
  100. package/dist/calcite/assets/pagination/t9n/messages_lt.json +2 -2
  101. package/dist/calcite/assets/pagination/t9n/messages_lv.json +2 -2
  102. package/dist/calcite/assets/pagination/t9n/messages_nl.json +2 -2
  103. package/dist/calcite/assets/pagination/t9n/messages_no.json +2 -2
  104. package/dist/calcite/assets/pagination/t9n/messages_pl.json +2 -2
  105. package/dist/calcite/assets/pagination/t9n/messages_pt-BR.json +2 -2
  106. package/dist/calcite/assets/pagination/t9n/messages_pt-PT.json +2 -2
  107. package/dist/calcite/assets/pagination/t9n/messages_ro.json +2 -2
  108. package/dist/calcite/assets/pagination/t9n/messages_ru.json +2 -2
  109. package/dist/calcite/assets/pagination/t9n/messages_sk.json +2 -2
  110. package/dist/calcite/assets/pagination/t9n/messages_sl.json +2 -2
  111. package/dist/calcite/assets/pagination/t9n/messages_sr.json +2 -2
  112. package/dist/calcite/assets/pagination/t9n/messages_sv.json +2 -2
  113. package/dist/calcite/assets/pagination/t9n/messages_th.json +2 -2
  114. package/dist/calcite/assets/pagination/t9n/messages_tr.json +2 -2
  115. package/dist/calcite/assets/pagination/t9n/messages_uk.json +2 -2
  116. package/dist/calcite/assets/pagination/t9n/messages_vi.json +2 -2
  117. package/dist/calcite/assets/pagination/t9n/messages_zh-CN.json +2 -2
  118. package/dist/calcite/assets/pagination/t9n/messages_zh-HK.json +2 -2
  119. package/dist/calcite/assets/pagination/t9n/messages_zh-TW.json +2 -2
  120. package/dist/calcite/calcite.css +3 -3
  121. package/dist/calcite/calcite.esm.js +2 -2
  122. package/dist/calcite/index.esm.js +1 -1
  123. package/dist/calcite/p-003ca0f3.js +7 -0
  124. package/dist/calcite/p-0147c6f7.entry.js +7 -0
  125. package/dist/calcite/p-0147c6f7.entry.js.map +1 -0
  126. package/dist/calcite/p-0237ff4a.entry.js +7 -0
  127. package/dist/calcite/p-0237ff4a.entry.js.map +1 -0
  128. package/dist/calcite/p-02458357.entry.js +7 -0
  129. package/dist/calcite/p-02458357.entry.js.map +1 -0
  130. package/dist/calcite/p-03e71304.entry.js +7 -0
  131. package/dist/calcite/p-0831819b.entry.js +7 -0
  132. package/dist/calcite/p-0831819b.entry.js.map +1 -0
  133. package/dist/calcite/p-0de2a651.js +7 -0
  134. package/dist/calcite/p-0f356712.entry.js +7 -0
  135. package/dist/calcite/p-0f356712.entry.js.map +1 -0
  136. package/dist/calcite/p-0f64aea9.js +7 -0
  137. package/dist/calcite/p-130cf3df.entry.js +7 -0
  138. package/dist/calcite/p-130cf3df.entry.js.map +1 -0
  139. package/dist/calcite/p-134f54bf.entry.js +7 -0
  140. package/dist/calcite/p-134f54bf.entry.js.map +1 -0
  141. package/dist/calcite/p-14f38eac.js +7 -0
  142. package/dist/calcite/p-158fbf06.entry.js +7 -0
  143. package/dist/calcite/p-158fbf06.entry.js.map +1 -0
  144. package/dist/calcite/p-15a931c2.js +7 -0
  145. package/dist/calcite/p-18fe9d9f.entry.js +7 -0
  146. package/dist/calcite/p-18fe9d9f.entry.js.map +1 -0
  147. package/dist/calcite/p-1a7be884.js +13 -0
  148. package/dist/calcite/p-1abd7d95.js +7 -0
  149. package/dist/calcite/p-1c40411d.js +7 -0
  150. package/dist/calcite/p-1d2d14f7.js +7 -0
  151. package/dist/calcite/p-1d2d14f7.js.map +1 -0
  152. package/dist/calcite/p-1e034848.js +7 -0
  153. package/dist/calcite/p-1f4f0978.entry.js +7 -0
  154. package/dist/calcite/p-211bf0aa.entry.js +7 -0
  155. package/dist/calcite/p-211bf0aa.entry.js.map +1 -0
  156. package/dist/calcite/p-211c55f5.entry.js +7 -0
  157. package/dist/calcite/p-22cd60dc.entry.js +7 -0
  158. package/dist/calcite/p-22d0e71c.entry.js +7 -0
  159. package/dist/calcite/p-26b5ebc3.js +7 -0
  160. package/dist/calcite/p-27a333ee.entry.js +7 -0
  161. package/dist/calcite/p-2897690e.js +7 -0
  162. package/dist/calcite/p-2c92d55b.js +7 -0
  163. package/dist/calcite/p-2cd07cf1.entry.js +7 -0
  164. package/dist/calcite/p-2cf923a1.entry.js +7 -0
  165. package/dist/calcite/p-2cf923a1.entry.js.map +1 -0
  166. package/dist/calcite/p-2f9ada20.js +7 -0
  167. package/dist/calcite/p-35daea60.entry.js +7 -0
  168. package/dist/calcite/p-3aa037b8.entry.js +7 -0
  169. package/dist/calcite/p-3aa037b8.entry.js.map +1 -0
  170. package/dist/calcite/p-3c6368cc.entry.js +7 -0
  171. package/dist/calcite/p-3d14171e.js +7 -0
  172. package/dist/calcite/p-3d6050cc.js +7 -0
  173. package/dist/calcite/p-3f5b8310.js +7 -0
  174. package/dist/calcite/p-3f5b8310.js.map +1 -0
  175. package/dist/calcite/p-3fbbb013.entry.js +7 -0
  176. package/dist/calcite/p-3fbbb013.entry.js.map +1 -0
  177. package/dist/calcite/p-4078dbb9.js +7 -0
  178. package/dist/calcite/p-42d57183.js +7 -0
  179. package/dist/calcite/p-42d57183.js.map +1 -0
  180. package/dist/calcite/p-440147ae.js +7 -0
  181. package/dist/calcite/p-45a2710e.js +12 -0
  182. package/dist/calcite/p-46aa9fd5.js +7 -0
  183. package/dist/calcite/p-49630957.js +7 -0
  184. package/dist/calcite/p-4c5be3a9.entry.js +7 -0
  185. package/dist/calcite/p-4c5be3a9.entry.js.map +1 -0
  186. package/dist/calcite/p-4f0af5b6.js +7 -0
  187. package/dist/calcite/p-53a58d9c.js +7 -0
  188. package/dist/calcite/p-54658226.js +7 -0
  189. package/dist/calcite/p-5584db37.js +7 -0
  190. package/dist/calcite/p-5692fc28.entry.js +7 -0
  191. package/dist/calcite/p-5692fc28.entry.js.map +1 -0
  192. package/dist/calcite/p-59f2a26a.js +7 -0
  193. package/dist/calcite/p-5d018e37.entry.js +7 -0
  194. package/dist/calcite/p-5e2c60c7.entry.js +7 -0
  195. package/dist/calcite/p-5e2c60c7.entry.js.map +1 -0
  196. package/dist/calcite/p-5e6ed7fc.entry.js +7 -0
  197. package/dist/calcite/p-5f6d09bb.js +7 -0
  198. package/dist/calcite/p-5f864b8a.entry.js +7 -0
  199. package/dist/calcite/p-5f864b8a.entry.js.map +1 -0
  200. package/dist/calcite/p-5f9b3359.js +7 -0
  201. package/dist/calcite/p-62afe875.js +7 -0
  202. package/dist/calcite/p-66dec48a.entry.js +7 -0
  203. package/dist/calcite/p-6a6126d9.js +7 -0
  204. package/dist/calcite/p-6bdc50f3.entry.js +7 -0
  205. package/dist/calcite/p-6c188b2d.entry.js +7 -0
  206. package/dist/calcite/p-6c188b2d.entry.js.map +1 -0
  207. package/dist/calcite/p-705ec6ff.js +7 -0
  208. package/dist/calcite/p-77fc8314.js +7 -0
  209. package/dist/calcite/p-782184a2.entry.js +7 -0
  210. package/dist/calcite/p-797254a9.entry.js +7 -0
  211. package/dist/calcite/p-797254a9.entry.js.map +1 -0
  212. package/dist/calcite/p-79c02fee.js +7 -0
  213. package/dist/calcite/p-7c4fe654.js +7 -0
  214. package/dist/calcite/p-7e85e753.entry.js +7 -0
  215. package/dist/calcite/p-7e85e753.entry.js.map +1 -0
  216. package/dist/calcite/p-7f125972.js +8 -0
  217. package/dist/calcite/p-7fa05a35.entry.js +7 -0
  218. package/dist/calcite/p-7fa05a35.entry.js.map +1 -0
  219. package/dist/calcite/p-8098ac71.js +7 -0
  220. package/dist/calcite/p-80d2a6e8.entry.js +7 -0
  221. package/dist/calcite/p-82d2693e.entry.js +7 -0
  222. package/dist/calcite/p-82dd6896.js +7 -0
  223. package/dist/calcite/p-835ab73d.js +7 -0
  224. package/dist/calcite/p-86b76b8c.entry.js +7 -0
  225. package/dist/calcite/p-86b76b8c.entry.js.map +1 -0
  226. package/dist/calcite/p-886befa9.entry.js +7 -0
  227. package/dist/calcite/p-886befa9.entry.js.map +1 -0
  228. package/dist/calcite/p-8aba18a4.js +7 -0
  229. package/dist/calcite/p-8b9de6d9.entry.js +7 -0
  230. package/dist/calcite/p-8b9de6d9.entry.js.map +1 -0
  231. package/dist/calcite/p-8d106c74.entry.js +7 -0
  232. package/dist/calcite/p-8d106c74.entry.js.map +1 -0
  233. package/dist/calcite/p-8e691781.entry.js +7 -0
  234. package/dist/calcite/p-90f83cb9.js +7 -0
  235. package/dist/calcite/p-91d3a97a.js +7 -0
  236. package/dist/calcite/p-9402d09f.js +7 -0
  237. package/dist/calcite/p-9610a634.js +7 -0
  238. package/dist/calcite/p-98645f51.js +7 -0
  239. package/dist/calcite/p-98872134.js +7 -0
  240. package/dist/calcite/p-9be7d232.entry.js +7 -0
  241. package/dist/calcite/p-9be7d232.entry.js.map +1 -0
  242. package/dist/calcite/p-9d793473.js +7 -0
  243. package/dist/calcite/p-a15674ad.js +7 -0
  244. package/dist/calcite/p-a159b523.js +7 -0
  245. package/dist/calcite/p-a177e98d.js +7 -0
  246. package/dist/calcite/p-a2ab03b5.js +7 -0
  247. package/dist/calcite/p-a3ba09ec.entry.js +7 -0
  248. package/dist/calcite/p-a3ba09ec.entry.js.map +1 -0
  249. package/dist/calcite/p-a4f3d084.entry.js +7 -0
  250. package/dist/calcite/p-a68f11a7.js +7 -0
  251. package/dist/calcite/p-a6f376c8.js +7 -0
  252. package/dist/calcite/p-a73f6b83.entry.js +7 -0
  253. package/dist/calcite/p-a9aa33b0.js +7 -0
  254. package/dist/calcite/p-ab352017.js +7 -0
  255. package/dist/calcite/p-ae8651e0.js +7 -0
  256. package/dist/calcite/p-af622206.entry.js +7 -0
  257. package/dist/calcite/p-afb156ef.js +7 -0
  258. package/dist/calcite/p-b208ecb0.entry.js +7 -0
  259. package/dist/calcite/p-b208ecb0.entry.js.map +1 -0
  260. package/dist/calcite/p-b2dd3f6b.entry.js +7 -0
  261. package/dist/calcite/p-b2dd3f6b.entry.js.map +1 -0
  262. package/dist/calcite/p-b6465955.js +7 -0
  263. package/dist/calcite/p-b6f054d2.entry.js +7 -0
  264. package/dist/calcite/p-b6f054d2.entry.js.map +1 -0
  265. package/dist/calcite/p-b9d31cbe.entry.js +7 -0
  266. package/dist/calcite/p-b9d31cbe.entry.js.map +1 -0
  267. package/dist/calcite/p-ba0ad3cb.js +7 -0
  268. package/dist/calcite/p-bbf0b7bf.js +7 -0
  269. package/dist/calcite/p-be5ee253.entry.js +7 -0
  270. package/dist/calcite/p-be5ee253.entry.js.map +1 -0
  271. package/dist/calcite/p-beabd92d.js +7 -0
  272. package/dist/calcite/p-c3c81b16.js +7 -0
  273. package/dist/calcite/p-c564f3df.entry.js +7 -0
  274. package/dist/calcite/p-c564f3df.entry.js.map +1 -0
  275. package/dist/calcite/p-c5d20a3c.js +7 -0
  276. package/dist/calcite/p-c71e3c45.js +7 -0
  277. package/dist/calcite/p-c791d921.js +7 -0
  278. package/dist/calcite/p-c955b966.entry.js +7 -0
  279. package/dist/calcite/p-c955b966.entry.js.map +1 -0
  280. package/dist/calcite/p-ca7e2141.js +7 -0
  281. package/dist/calcite/p-cbd5152a.js +7 -0
  282. package/dist/calcite/p-cc3cd8a9.entry.js +7 -0
  283. package/dist/calcite/p-cd3b4156.js +7 -0
  284. package/dist/calcite/p-cf067db4.js +7 -0
  285. package/dist/calcite/p-cf3ad5bd.js +7 -0
  286. package/dist/calcite/p-cfbda139.entry.js +7 -0
  287. package/dist/calcite/p-d05f6cd5.js +7 -0
  288. package/dist/calcite/p-d218023a.js +7 -0
  289. package/dist/calcite/p-d2c65e0b.js +7 -0
  290. package/dist/calcite/p-d2f61d21.entry.js +7 -0
  291. package/dist/calcite/p-d2f61d21.entry.js.map +1 -0
  292. package/dist/calcite/p-d45a0e1b.entry.js +7 -0
  293. package/dist/calcite/p-d45a0e1b.entry.js.map +1 -0
  294. package/dist/calcite/p-d4ba102f.js +7 -0
  295. package/dist/calcite/p-d5a7de52.entry.js +7 -0
  296. package/dist/calcite/p-d5a7de52.entry.js.map +1 -0
  297. package/dist/calcite/p-d6d623ac.entry.js +7 -0
  298. package/dist/calcite/p-dd4fc754.js +7 -0
  299. package/dist/calcite/p-de442a9c.entry.js +7 -0
  300. package/dist/calcite/p-df766122.js +7 -0
  301. package/dist/calcite/p-dfd01370.js +11 -0
  302. package/dist/calcite/p-e30438ff.js +7 -0
  303. package/dist/calcite/p-e605624d.entry.js +7 -0
  304. package/dist/calcite/p-e605624d.entry.js.map +1 -0
  305. package/dist/calcite/p-e84374ce.entry.js +7 -0
  306. package/dist/calcite/p-ec54aec5.js +7 -0
  307. package/dist/calcite/p-ecb8bcb9.entry.js +7 -0
  308. package/dist/calcite/p-ee26a44c.entry.js +7 -0
  309. package/dist/calcite/p-ee26a44c.entry.js.map +1 -0
  310. package/dist/calcite/p-ee7c627c.entry.js +7 -0
  311. package/dist/calcite/p-ee7c627c.entry.js.map +1 -0
  312. package/dist/calcite/p-ef6e9b39.entry.js +7 -0
  313. package/dist/calcite/p-ef6e9b39.entry.js.map +1 -0
  314. package/dist/calcite/p-efb11a3a.js +7 -0
  315. package/dist/calcite/p-f382c5cb.entry.js +7 -0
  316. package/dist/calcite/p-f382c5cb.entry.js.map +1 -0
  317. package/dist/calcite/p-f3bd8190.entry.js +7 -0
  318. package/dist/calcite/p-f48b9584.js +7 -0
  319. package/dist/calcite/p-f4de0feb.js +7 -0
  320. package/dist/calcite/p-f7bea0da.js +7 -0
  321. package/dist/calcite/p-f8251642.js +7 -0
  322. package/dist/calcite/p-fa43461d.js +7 -0
  323. package/dist/calcite/p-fa52350d.entry.js +7 -0
  324. package/dist/calcite/p-fa52350d.entry.js.map +1 -0
  325. package/dist/calcite/p-fcf2ba73.js +7 -0
  326. package/dist/calcite/p-fd1b1de1.entry.js +7 -0
  327. package/dist/calcite/p-fd1b1de1.entry.js.map +1 -0
  328. package/dist/calcite/p-fda4c45c.js +7 -0
  329. package/dist/calcite/p-ff72942c.js +7 -0
  330. package/dist/calcite-preset.js +1 -1
  331. package/dist/cjs/ExpandToggle-baef0c0e.js +110 -0
  332. package/dist/cjs/ExpandToggle-baef0c0e.js.map +1 -0
  333. package/dist/cjs/FloatingArrow-efd489b7.js +49 -0
  334. package/dist/cjs/FloatingArrow-efd489b7.js.map +1 -0
  335. package/dist/cjs/Heading-1df6c522.js +22 -0
  336. package/dist/cjs/Heading-1df6c522.js.map +1 -0
  337. package/dist/cjs/Validation-56f7f6dd.js +18 -0
  338. package/dist/cjs/Validation-56f7f6dd.js.map +1 -0
  339. package/dist/cjs/app-globals-374e9b82.js +61 -0
  340. package/dist/cjs/app-globals-374e9b82.js.map +1 -0
  341. package/dist/cjs/ar-1223be58.js +106 -0
  342. package/dist/cjs/ar-1223be58.js.map +1 -0
  343. package/dist/cjs/array-49c4c888.js +14 -0
  344. package/dist/cjs/array-49c4c888.js.map +1 -0
  345. package/dist/cjs/bg-db68f88d.js +84 -0
  346. package/dist/cjs/bg-db68f88d.js.map +1 -0
  347. package/dist/cjs/browser-767f345c.js +20 -0
  348. package/dist/cjs/browser-767f345c.js.map +1 -0
  349. package/dist/cjs/bs-6890da43.js +53 -0
  350. package/dist/cjs/bs-6890da43.js.map +1 -0
  351. package/dist/cjs/ca-3d50f713.js +73 -0
  352. package/dist/cjs/ca-3d50f713.js.map +1 -0
  353. package/dist/cjs/calcite-accordion_2.cjs.entry.js +8 -8
  354. package/dist/cjs/calcite-action-bar.cjs.entry.js +15 -15
  355. package/dist/cjs/calcite-action-group.cjs.entry.js +13 -13
  356. package/dist/cjs/calcite-action-menu.cjs.entry.js +9 -9
  357. package/dist/cjs/calcite-action-pad.cjs.entry.js +14 -14
  358. package/dist/cjs/calcite-action.cjs.entry.js +16 -16
  359. package/dist/cjs/calcite-action.cjs.entry.js.map +1 -1
  360. package/dist/cjs/calcite-alert.cjs.entry.js +13 -13
  361. package/dist/cjs/calcite-avatar.cjs.entry.js +6 -6
  362. package/dist/cjs/calcite-block_2.cjs.entry.js +18 -18
  363. package/dist/cjs/calcite-block_2.cjs.entry.js.map +1 -1
  364. package/dist/cjs/calcite-button.cjs.entry.js +18 -18
  365. package/dist/cjs/calcite-button.cjs.entry.js.map +1 -1
  366. package/dist/cjs/calcite-card.cjs.entry.js +10 -10
  367. package/dist/cjs/calcite-checkbox.cjs.entry.js +15 -15
  368. package/dist/cjs/calcite-checkbox.cjs.entry.js.map +1 -1
  369. package/dist/cjs/calcite-chip-group.cjs.entry.js +12 -11
  370. package/dist/cjs/calcite-chip-group.cjs.entry.js.map +1 -1
  371. package/dist/cjs/calcite-chip.cjs.entry.js +20 -19
  372. package/dist/cjs/calcite-chip.cjs.entry.js.map +1 -1
  373. package/dist/cjs/calcite-color-picker_3.cjs.entry.js +19 -19
  374. package/dist/cjs/calcite-color-picker_3.cjs.entry.js.map +1 -1
  375. package/dist/cjs/calcite-combobox_3.cjs.entry.js +30 -29
  376. package/dist/cjs/calcite-combobox_3.cjs.entry.js.map +1 -1
  377. package/dist/cjs/calcite-date-picker_4.cjs.entry.js +18 -21
  378. package/dist/cjs/calcite-date-picker_4.cjs.entry.js.map +1 -1
  379. package/dist/cjs/calcite-dropdown_3.cjs.entry.js +22 -21
  380. package/dist/cjs/calcite-dropdown_3.cjs.entry.js.map +1 -1
  381. package/dist/cjs/calcite-fab.cjs.entry.js +11 -11
  382. package/dist/cjs/calcite-fab.cjs.entry.js.map +1 -1
  383. package/dist/cjs/calcite-filter.cjs.entry.js +20 -18
  384. package/dist/cjs/calcite-filter.cjs.entry.js.map +1 -1
  385. package/dist/cjs/calcite-flow-item.cjs.entry.js +16 -16
  386. package/dist/cjs/calcite-flow-item.cjs.entry.js.map +1 -1
  387. package/dist/cjs/calcite-flow.cjs.entry.js +4 -4
  388. package/dist/cjs/calcite-graph_2.cjs.entry.js +18 -18
  389. package/dist/cjs/calcite-graph_2.cjs.entry.js.map +1 -1
  390. package/dist/cjs/calcite-handle.cjs.entry.js +13 -13
  391. package/dist/cjs/calcite-handle.cjs.entry.js.map +1 -1
  392. package/dist/cjs/calcite-icon.cjs.entry.js +6 -6
  393. package/dist/cjs/calcite-inline-editable.cjs.entry.js +17 -17
  394. package/dist/cjs/calcite-inline-editable.cjs.entry.js.map +1 -1
  395. package/dist/cjs/calcite-input-date-picker.cjs.entry.js +27 -25
  396. package/dist/cjs/calcite-input-date-picker.cjs.entry.js.map +1 -1
  397. package/dist/cjs/calcite-input-message.cjs.entry.js +5 -5
  398. package/dist/cjs/calcite-input-number.cjs.entry.js +19 -19
  399. package/dist/cjs/calcite-input-number.cjs.entry.js.map +1 -1
  400. package/dist/cjs/calcite-input-text.cjs.entry.js +18 -18
  401. package/dist/cjs/calcite-input-text.cjs.entry.js.map +1 -1
  402. package/dist/cjs/calcite-input-time-picker.calcite-time-picker-6fc2f823.js +2918 -0
  403. package/dist/cjs/calcite-input-time-picker.calcite-time-picker-6fc2f823.js.map +1 -0
  404. package/dist/cjs/calcite-input-time-picker_2.cjs.entry.js +20 -20
  405. package/dist/cjs/calcite-input-time-zone.cjs.entry.js +20 -20
  406. package/dist/cjs/calcite-input-time-zone.cjs.entry.js.map +1 -1
  407. package/dist/cjs/calcite-input.cjs.entry.js +19 -19
  408. package/dist/cjs/calcite-input.cjs.entry.js.map +1 -1
  409. package/dist/cjs/calcite-label.cjs.entry.js +8 -8
  410. package/dist/cjs/calcite-label.cjs.entry.js.map +1 -1
  411. package/dist/cjs/calcite-link.cjs.entry.js +14 -14
  412. package/dist/cjs/calcite-link.cjs.entry.js.map +1 -1
  413. package/dist/cjs/calcite-list_3.cjs.entry.js +26 -26
  414. package/dist/cjs/calcite-list_3.cjs.entry.js.map +1 -1
  415. package/dist/cjs/calcite-loader.cjs.entry.js +3 -3
  416. package/dist/cjs/calcite-menu_2.cjs.entry.js +10 -10
  417. package/dist/cjs/calcite-meter.cjs.entry.js +11 -11
  418. package/dist/cjs/calcite-meter.cjs.entry.js.map +1 -1
  419. package/dist/cjs/calcite-modal.cjs.entry.js +14 -14
  420. package/dist/cjs/calcite-navigation_3.cjs.entry.js +6 -6
  421. package/dist/cjs/calcite-notice.cjs.entry.js +14 -14
  422. package/dist/cjs/calcite-option_3.cjs.entry.js +17 -16
  423. package/dist/cjs/calcite-option_3.cjs.entry.js.map +1 -1
  424. package/dist/cjs/calcite-pagination.cjs.entry.js +12 -12
  425. package/dist/cjs/calcite-pagination.cjs.entry.js.map +1 -1
  426. package/dist/cjs/calcite-panel.cjs.entry.js +18 -18
  427. package/dist/cjs/calcite-panel.cjs.entry.js.map +1 -1
  428. package/dist/cjs/calcite-pick-list_3.cjs.entry.js +21 -21
  429. package/dist/cjs/calcite-pick-list_3.cjs.entry.js.map +1 -1
  430. package/dist/cjs/calcite-popover.cjs.entry.js +17 -17
  431. package/dist/cjs/calcite-progress.cjs.entry.js +5 -5
  432. package/dist/cjs/calcite-radio-button-group.cjs.entry.js +4 -4
  433. package/dist/cjs/calcite-radio-button.cjs.entry.js +15 -15
  434. package/dist/cjs/calcite-radio-button.cjs.entry.js.map +1 -1
  435. package/dist/cjs/calcite-rating.cjs.entry.js +18 -18
  436. package/dist/cjs/calcite-rating.cjs.entry.js.map +1 -1
  437. package/dist/cjs/calcite-scrim.cjs.entry.js +9 -9
  438. package/dist/cjs/calcite-segmented-control_2.cjs.entry.js +14 -14
  439. package/dist/cjs/calcite-segmented-control_2.cjs.entry.js.map +1 -1
  440. package/dist/cjs/calcite-sheet.cjs.entry.js +9 -9
  441. package/dist/cjs/calcite-shell_3.cjs.entry.js +11 -11
  442. package/dist/cjs/calcite-sortable-list.cjs.entry.js +13 -13
  443. package/dist/cjs/calcite-sortable-list.cjs.entry.js.map +1 -1
  444. package/dist/cjs/calcite-split-button.cjs.entry.js +7 -7
  445. package/dist/cjs/calcite-split-button.cjs.entry.js.map +1 -1
  446. package/dist/cjs/calcite-stack.cjs.entry.js +6 -6
  447. package/dist/cjs/calcite-stepper_2.cjs.entry.js +16 -16
  448. package/dist/cjs/calcite-stepper_2.cjs.entry.js.map +1 -1
  449. package/dist/cjs/calcite-switch.cjs.entry.js +15 -15
  450. package/dist/cjs/calcite-switch.cjs.entry.js.map +1 -1
  451. package/dist/cjs/calcite-tab_4.cjs.entry.js +16 -18
  452. package/dist/cjs/calcite-tab_4.cjs.entry.js.map +1 -1
  453. package/dist/cjs/calcite-table-cell_2.cjs.entry.js +16 -16
  454. package/dist/cjs/calcite-table-cell_2.cjs.entry.js.map +1 -1
  455. package/dist/cjs/calcite-table-row.cjs.entry.js +12 -12
  456. package/dist/cjs/calcite-table-row.cjs.entry.js.map +1 -1
  457. package/dist/cjs/calcite-table.cjs.entry.js +11 -11
  458. package/dist/cjs/calcite-text-area.cjs.entry.js +21 -21
  459. package/dist/cjs/calcite-text-area.cjs.entry.js.map +1 -1
  460. package/dist/cjs/calcite-tile-select_2.cjs.entry.js +11 -11
  461. package/dist/cjs/calcite-tile-select_2.cjs.entry.js.map +1 -1
  462. package/dist/cjs/calcite-tile.cjs.entry.js +12 -11
  463. package/dist/cjs/calcite-tile.cjs.entry.js.map +1 -1
  464. package/dist/cjs/calcite-tip_3.cjs.entry.js +11 -11
  465. package/dist/cjs/calcite-tooltip.cjs.entry.js +9 -9
  466. package/dist/cjs/calcite-tree_2.cjs.entry.js +14 -15
  467. package/dist/cjs/calcite-tree_2.cjs.entry.js.map +1 -1
  468. package/dist/cjs/calcite-value-list_2.cjs.entry.js +22 -22
  469. package/dist/cjs/calcite-value-list_2.cjs.entry.js.map +1 -1
  470. package/dist/cjs/calcite.cjs.js +4 -4
  471. package/dist/cjs/component-8b8d846d.js +30 -0
  472. package/dist/cjs/component-8b8d846d.js.map +1 -0
  473. package/dist/cjs/conditionalSlot-d6481e20.js +60 -0
  474. package/dist/cjs/conditionalSlot-d6481e20.js.map +1 -0
  475. package/dist/cjs/cs-2f6523cd.js +149 -0
  476. package/dist/cjs/cs-2f6523cd.js.map +1 -0
  477. package/dist/cjs/da-50fbf6a3.js +68 -0
  478. package/dist/cjs/da-50fbf6a3.js.map +1 -0
  479. package/dist/cjs/de-07662763.js +93 -0
  480. package/dist/cjs/de-07662763.js.map +1 -0
  481. package/dist/cjs/de-at-3aeb0cc6.js +92 -0
  482. package/dist/cjs/de-at-3aeb0cc6.js.map +1 -0
  483. package/dist/cjs/de-ch-465e4f88.js +92 -0
  484. package/dist/cjs/de-ch-465e4f88.js.map +1 -0
  485. package/dist/cjs/debounce-b72abe80.js +498 -0
  486. package/dist/cjs/debounce-b72abe80.js.map +1 -0
  487. package/dist/cjs/dom-526ae93a.js +1084 -0
  488. package/dist/cjs/dom-526ae93a.js.map +1 -0
  489. package/dist/cjs/el-b206b8a1.js +68 -0
  490. package/dist/cjs/el-b206b8a1.js.map +1 -0
  491. package/dist/cjs/en-au-939b6d23.js +68 -0
  492. package/dist/cjs/en-au-939b6d23.js.map +1 -0
  493. package/dist/cjs/en-ca-3baa3dab.js +67 -0
  494. package/dist/cjs/en-ca-3baa3dab.js.map +1 -0
  495. package/dist/cjs/en-gb-693a987a.js +71 -0
  496. package/dist/cjs/en-gb-693a987a.js.map +1 -0
  497. package/dist/cjs/es-b77f84b3.js +68 -0
  498. package/dist/cjs/es-b77f84b3.js.map +1 -0
  499. package/dist/cjs/es-mx-9da97820.js +67 -0
  500. package/dist/cjs/es-mx-9da97820.js.map +1 -0
  501. package/dist/cjs/et-85f4b08c.js +94 -0
  502. package/dist/cjs/et-85f4b08c.js.map +1 -0
  503. package/dist/cjs/fi-75c08f95.js +117 -0
  504. package/dist/cjs/fi-75c08f95.js.map +1 -0
  505. package/dist/cjs/filter-52af3a71.js +762 -0
  506. package/dist/cjs/filter-52af3a71.js.map +1 -0
  507. package/dist/cjs/floating-ui-0f73db12.js +1916 -0
  508. package/dist/cjs/floating-ui-0f73db12.js.map +1 -0
  509. package/dist/cjs/focusTrapComponent-3f2ebaaa.js +1020 -0
  510. package/dist/cjs/focusTrapComponent-3f2ebaaa.js.map +1 -0
  511. package/dist/cjs/form-ef534f10.js +257 -0
  512. package/dist/cjs/form-ef534f10.js.map +1 -0
  513. package/dist/cjs/fr-8e67a0d6.js +70 -0
  514. package/dist/cjs/fr-8e67a0d6.js.map +1 -0
  515. package/dist/cjs/fr-ch-454993f8.js +68 -0
  516. package/dist/cjs/fr-ch-454993f8.js.map +1 -0
  517. package/dist/cjs/guid-2999da4b.js +23 -0
  518. package/dist/cjs/guid-2999da4b.js.map +1 -0
  519. package/dist/cjs/he-51b79365.js +107 -0
  520. package/dist/cjs/he-51b79365.js.map +1 -0
  521. package/dist/cjs/hi-65d46804.js +67 -0
  522. package/dist/cjs/hi-65d46804.js.map +1 -0
  523. package/dist/cjs/hr-b6c80f49.js +82 -0
  524. package/dist/cjs/hr-b6c80f49.js.map +1 -0
  525. package/dist/cjs/hu-9bc48ca7.js +90 -0
  526. package/dist/cjs/hu-9bc48ca7.js.map +1 -0
  527. package/dist/cjs/id-8a520e24.js +68 -0
  528. package/dist/cjs/id-8a520e24.js.map +1 -0
  529. package/dist/cjs/index-369754ae.js +208 -0
  530. package/dist/cjs/index-369754ae.js.map +1 -0
  531. package/dist/cjs/index-67c4b632.js +75 -0
  532. package/dist/cjs/index-67c4b632.js.map +1 -0
  533. package/dist/cjs/index-c3a85d17.js +2647 -0
  534. package/dist/cjs/index-c3a85d17.js.map +1 -0
  535. package/dist/cjs/index.cjs.js +1 -1
  536. package/dist/cjs/interactive-77fbebed.js +144 -0
  537. package/dist/cjs/interactive-77fbebed.js.map +1 -0
  538. package/dist/cjs/it-7bc98f91.js +68 -0
  539. package/dist/cjs/it-7bc98f91.js.map +1 -0
  540. package/dist/cjs/it-ch-ce182975.js +68 -0
  541. package/dist/cjs/it-ch-ce182975.js.map +1 -0
  542. package/dist/cjs/ja-203da357.js +74 -0
  543. package/dist/cjs/ja-203da357.js.map +1 -0
  544. package/dist/cjs/key-c7167eca.js +16 -0
  545. package/dist/cjs/key-c7167eca.js.map +1 -0
  546. package/dist/cjs/ko-e27e77cc.js +74 -0
  547. package/dist/cjs/ko-e27e77cc.js.map +1 -0
  548. package/dist/cjs/label-cadbadfd.js +183 -0
  549. package/dist/cjs/label-cadbadfd.js.map +1 -0
  550. package/dist/cjs/loadable-3315b101.js +91 -0
  551. package/dist/cjs/loadable-3315b101.js.map +1 -0
  552. package/dist/cjs/loader.cjs.js +4 -4
  553. package/dist/cjs/locale-cb432455.js +575 -0
  554. package/dist/cjs/locale-cb432455.js.map +1 -0
  555. package/dist/cjs/lt-cbb1cfdf.js +99 -0
  556. package/dist/cjs/lt-cbb1cfdf.js.map +1 -0
  557. package/dist/cjs/lv-8d8ee484.js +68 -0
  558. package/dist/cjs/lv-8d8ee484.js.map +1 -0
  559. package/dist/cjs/math-e3591dc1.js +57 -0
  560. package/dist/cjs/math-e3591dc1.js.map +1 -0
  561. package/dist/cjs/mk-f414f5a5.js +68 -0
  562. package/dist/cjs/mk-f414f5a5.js.map +1 -0
  563. package/dist/cjs/nb-eadaf2ef.js +69 -0
  564. package/dist/cjs/nb-eadaf2ef.js.map +1 -0
  565. package/dist/cjs/nl-199f4e15.js +69 -0
  566. package/dist/cjs/nl-199f4e15.js.map +1 -0
  567. package/dist/cjs/observers-63095bd4.js +50 -0
  568. package/dist/cjs/observers-63095bd4.js.map +1 -0
  569. package/dist/cjs/openCloseComponent-38872c79.js +89 -0
  570. package/dist/cjs/openCloseComponent-38872c79.js.map +1 -0
  571. package/dist/cjs/pl-46b17664.js +116 -0
  572. package/dist/cjs/pl-46b17664.js.map +1 -0
  573. package/dist/cjs/pt-5cc644c4.js +69 -0
  574. package/dist/cjs/pt-5cc644c4.js.map +1 -0
  575. package/dist/cjs/pt-br-7b7e8e8e.js +67 -0
  576. package/dist/cjs/pt-br-7b7e8e8e.js.map +1 -0
  577. package/dist/cjs/resources-04ad1fb0.js +26 -0
  578. package/dist/cjs/resources-04ad1fb0.js.map +1 -0
  579. package/dist/cjs/resources-2f0b38c2.js +29 -0
  580. package/dist/cjs/resources-2f0b38c2.js.map +1 -0
  581. package/dist/cjs/resources-37db5f37.js +414 -0
  582. package/dist/cjs/resources-37db5f37.js.map +1 -0
  583. package/dist/cjs/resources-3af05f82.js +23 -0
  584. package/dist/cjs/resources-3af05f82.js.map +1 -0
  585. package/dist/cjs/resources-3e941f1a.js +17 -0
  586. package/dist/cjs/resources-3e941f1a.js.map +1 -0
  587. package/dist/cjs/resources-4231bddf.js +26 -0
  588. package/dist/cjs/resources-4231bddf.js.map +1 -0
  589. package/dist/cjs/resources-847c1e28.js +49 -0
  590. package/dist/cjs/resources-847c1e28.js.map +1 -0
  591. package/dist/cjs/ro-be888666.js +68 -0
  592. package/dist/cjs/ro-be888666.js.map +1 -0
  593. package/dist/cjs/ru-e859e98a.js +128 -0
  594. package/dist/cjs/ru-e859e98a.js.map +1 -0
  595. package/dist/cjs/sk-7a1d552b.js +150 -0
  596. package/dist/cjs/sk-7a1d552b.js.map +1 -0
  597. package/dist/cjs/sl-c96d7cbf.js +170 -0
  598. package/dist/cjs/sl-c96d7cbf.js.map +1 -0
  599. package/dist/cjs/sortableComponent-5faabf8f.js +2739 -0
  600. package/dist/cjs/sortableComponent-5faabf8f.js.map +1 -0
  601. package/dist/cjs/sr-ad053e41.js +103 -0
  602. package/dist/cjs/sr-ad053e41.js.map +1 -0
  603. package/dist/cjs/sv-9c273e1b.js +73 -0
  604. package/dist/cjs/sv-9c273e1b.js.map +1 -0
  605. package/dist/cjs/t9n-f6dc9b37.js +97 -0
  606. package/dist/cjs/t9n-f6dc9b37.js.map +1 -0
  607. package/dist/cjs/th-2cf13b2e.js +67 -0
  608. package/dist/cjs/th-2cf13b2e.js.map +1 -0
  609. package/dist/cjs/throttle-0fdb618c.js +77 -0
  610. package/dist/cjs/throttle-0fdb618c.js.map +1 -0
  611. package/dist/cjs/tr-959a43c5.js +68 -0
  612. package/dist/cjs/tr-959a43c5.js.map +1 -0
  613. package/dist/cjs/uk-dd3c4198.js +106 -0
  614. package/dist/cjs/uk-dd3c4198.js.map +1 -0
  615. package/dist/cjs/utils-653f2648.js +307 -0
  616. package/dist/cjs/utils-653f2648.js.map +1 -0
  617. package/dist/cjs/utils-912cb341.js +218 -0
  618. package/dist/cjs/utils-912cb341.js.map +1 -0
  619. package/dist/cjs/vi-d7171ec4.js +72 -0
  620. package/dist/cjs/vi-d7171ec4.js.map +1 -0
  621. package/dist/cjs/zh-cn-129427c3.js +96 -0
  622. package/dist/cjs/zh-cn-129427c3.js.map +1 -0
  623. package/dist/cjs/zh-hk-4cf50857.js +73 -0
  624. package/dist/cjs/zh-hk-4cf50857.js.map +1 -0
  625. package/dist/cjs/zh-tw-7bfc33b5.js +94 -0
  626. package/dist/cjs/zh-tw-7bfc33b5.js.map +1 -0
  627. package/dist/collection/components/accordion/accordion.css +5 -5
  628. package/dist/collection/components/accordion/accordion.e2e.js +1 -1
  629. package/dist/collection/components/accordion/accordion.js +1 -1
  630. package/dist/collection/components/accordion-item/accordion-item.css +5 -5
  631. package/dist/collection/components/accordion-item/accordion-item.e2e.js +1 -1
  632. package/dist/collection/components/accordion-item/accordion-item.js +1 -1
  633. package/dist/collection/components/accordion-item/resources.js +1 -1
  634. package/dist/collection/components/action/action.css +9 -5
  635. package/dist/collection/components/action/action.e2e.js +1 -1
  636. package/dist/collection/components/action/action.js +4 -4
  637. package/dist/collection/components/action/action.js.map +1 -1
  638. package/dist/collection/components/action/resources.js +1 -1
  639. package/dist/collection/components/action-bar/action-bar.css +5 -5
  640. package/dist/collection/components/action-bar/action-bar.e2e.js +1 -1
  641. package/dist/collection/components/action-bar/action-bar.js +1 -1
  642. package/dist/collection/components/action-bar/resources.js +1 -1
  643. package/dist/collection/components/action-bar/utils.js +1 -1
  644. package/dist/collection/components/action-group/action-group.css +5 -5
  645. package/dist/collection/components/action-group/action-group.e2e.js +1 -1
  646. package/dist/collection/components/action-group/action-group.js +1 -1
  647. package/dist/collection/components/action-group/resources.js +1 -1
  648. package/dist/collection/components/action-menu/action-menu.css +5 -5
  649. package/dist/collection/components/action-menu/action-menu.e2e.js +1 -1
  650. package/dist/collection/components/action-menu/action-menu.js +1 -1
  651. package/dist/collection/components/action-menu/resources.js +1 -1
  652. package/dist/collection/components/action-pad/action-pad.css +5 -5
  653. package/dist/collection/components/action-pad/action-pad.e2e.js +1 -1
  654. package/dist/collection/components/action-pad/action-pad.js +1 -1
  655. package/dist/collection/components/action-pad/resources.js +1 -1
  656. package/dist/collection/components/alert/alert.css +5 -5
  657. package/dist/collection/components/alert/alert.e2e.js +1 -1
  658. package/dist/collection/components/alert/alert.js +1 -1
  659. package/dist/collection/components/alert/resources.js +1 -1
  660. package/dist/collection/components/avatar/avatar.css +5 -5
  661. package/dist/collection/components/avatar/avatar.e2e.js +1 -1
  662. package/dist/collection/components/avatar/avatar.js +1 -1
  663. package/dist/collection/components/avatar/avatar.spec.js +1 -1
  664. package/dist/collection/components/avatar/utils.js +1 -1
  665. package/dist/collection/components/block/block.css +9 -5
  666. package/dist/collection/components/block/block.e2e.js +1 -1
  667. package/dist/collection/components/block/block.js +4 -4
  668. package/dist/collection/components/block/block.js.map +1 -1
  669. package/dist/collection/components/block/resources.js +1 -1
  670. package/dist/collection/components/block-section/block-section.css +5 -5
  671. package/dist/collection/components/block-section/block-section.e2e.js +1 -1
  672. package/dist/collection/components/block-section/block-section.js +1 -1
  673. package/dist/collection/components/block-section/resources.js +1 -1
  674. package/dist/collection/components/button/button.css +9 -5
  675. package/dist/collection/components/button/button.e2e.js +1 -1
  676. package/dist/collection/components/button/button.js +4 -4
  677. package/dist/collection/components/button/button.js.map +1 -1
  678. package/dist/collection/components/button/resources.js +1 -1
  679. package/dist/collection/components/card/card.css +5 -5
  680. package/dist/collection/components/card/card.e2e.js +1 -1
  681. package/dist/collection/components/card/card.js +1 -1
  682. package/dist/collection/components/card/resources.js +1 -1
  683. package/dist/collection/components/checkbox/checkbox.css +9 -5
  684. package/dist/collection/components/checkbox/checkbox.e2e.js +1 -1
  685. package/dist/collection/components/checkbox/checkbox.js +4 -4
  686. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  687. package/dist/collection/components/chip/chip.css +9 -5
  688. package/dist/collection/components/chip/chip.e2e.js +1 -1
  689. package/dist/collection/components/chip/chip.js +7 -6
  690. package/dist/collection/components/chip/chip.js.map +1 -1
  691. package/dist/collection/components/chip/resources.js +1 -1
  692. package/dist/collection/components/chip-group/chip-group.css +9 -5
  693. package/dist/collection/components/chip-group/chip-group.e2e.js +1 -1
  694. package/dist/collection/components/chip-group/chip-group.js +4 -3
  695. package/dist/collection/components/chip-group/chip-group.js.map +1 -1
  696. package/dist/collection/components/color-picker/color-picker.css +9 -5
  697. package/dist/collection/components/color-picker/color-picker.e2e.js +1 -1
  698. package/dist/collection/components/color-picker/color-picker.js +4 -4
  699. package/dist/collection/components/color-picker/color-picker.js.map +1 -1
  700. package/dist/collection/components/color-picker/resources.js +1 -1
  701. package/dist/collection/components/color-picker/utils.js +1 -1
  702. package/dist/collection/components/color-picker/utils.spec.js +1 -1
  703. package/dist/collection/components/color-picker-hex-input/color-picker-hex-input.css +5 -5
  704. package/dist/collection/components/color-picker-hex-input/color-picker-hex-input.e2e.js +1 -1
  705. package/dist/collection/components/color-picker-hex-input/color-picker-hex-input.js +1 -1
  706. package/dist/collection/components/color-picker-hex-input/resources.js +1 -1
  707. package/dist/collection/components/color-picker-swatch/color-picker-swatch.css +5 -5
  708. package/dist/collection/components/color-picker-swatch/color-picker-swatch.e2e.js +1 -1
  709. package/dist/collection/components/color-picker-swatch/color-picker-swatch.js +1 -1
  710. package/dist/collection/components/color-picker-swatch/resources.js +1 -1
  711. package/dist/collection/components/combobox/assets/combobox/t9n/messages_ar.json +4 -1
  712. package/dist/collection/components/combobox/assets/combobox/t9n/messages_bg.json +4 -1
  713. package/dist/collection/components/combobox/assets/combobox/t9n/messages_bs.json +4 -1
  714. package/dist/collection/components/combobox/assets/combobox/t9n/messages_ca.json +4 -1
  715. package/dist/collection/components/combobox/assets/combobox/t9n/messages_cs.json +4 -1
  716. package/dist/collection/components/combobox/assets/combobox/t9n/messages_da.json +4 -1
  717. package/dist/collection/components/combobox/assets/combobox/t9n/messages_de.json +4 -1
  718. package/dist/collection/components/combobox/assets/combobox/t9n/messages_el.json +4 -1
  719. package/dist/collection/components/combobox/assets/combobox/t9n/messages_es.json +4 -1
  720. package/dist/collection/components/combobox/assets/combobox/t9n/messages_et.json +4 -1
  721. package/dist/collection/components/combobox/assets/combobox/t9n/messages_fi.json +4 -1
  722. package/dist/collection/components/combobox/assets/combobox/t9n/messages_fr.json +4 -1
  723. package/dist/collection/components/combobox/assets/combobox/t9n/messages_he.json +4 -1
  724. package/dist/collection/components/combobox/assets/combobox/t9n/messages_hr.json +4 -1
  725. package/dist/collection/components/combobox/assets/combobox/t9n/messages_hu.json +4 -1
  726. package/dist/collection/components/combobox/assets/combobox/t9n/messages_id.json +4 -1
  727. package/dist/collection/components/combobox/assets/combobox/t9n/messages_it.json +4 -1
  728. package/dist/collection/components/combobox/assets/combobox/t9n/messages_ja.json +4 -1
  729. package/dist/collection/components/combobox/assets/combobox/t9n/messages_ko.json +4 -1
  730. package/dist/collection/components/combobox/assets/combobox/t9n/messages_lt.json +4 -1
  731. package/dist/collection/components/combobox/assets/combobox/t9n/messages_lv.json +4 -1
  732. package/dist/collection/components/combobox/assets/combobox/t9n/messages_nl.json +4 -1
  733. package/dist/collection/components/combobox/assets/combobox/t9n/messages_no.json +4 -1
  734. package/dist/collection/components/combobox/assets/combobox/t9n/messages_pl.json +4 -1
  735. package/dist/collection/components/combobox/assets/combobox/t9n/messages_pt-BR.json +4 -1
  736. package/dist/collection/components/combobox/assets/combobox/t9n/messages_pt-PT.json +4 -1
  737. package/dist/collection/components/combobox/assets/combobox/t9n/messages_ro.json +4 -1
  738. package/dist/collection/components/combobox/assets/combobox/t9n/messages_ru.json +4 -1
  739. package/dist/collection/components/combobox/assets/combobox/t9n/messages_sk.json +4 -1
  740. package/dist/collection/components/combobox/assets/combobox/t9n/messages_sl.json +4 -1
  741. package/dist/collection/components/combobox/assets/combobox/t9n/messages_sr.json +4 -1
  742. package/dist/collection/components/combobox/assets/combobox/t9n/messages_sv.json +4 -1
  743. package/dist/collection/components/combobox/assets/combobox/t9n/messages_th.json +4 -1
  744. package/dist/collection/components/combobox/assets/combobox/t9n/messages_tr.json +4 -1
  745. package/dist/collection/components/combobox/assets/combobox/t9n/messages_uk.json +4 -1
  746. package/dist/collection/components/combobox/assets/combobox/t9n/messages_vi.json +4 -1
  747. package/dist/collection/components/combobox/assets/combobox/t9n/messages_zh-CN.json +4 -1
  748. package/dist/collection/components/combobox/assets/combobox/t9n/messages_zh-HK.json +4 -1
  749. package/dist/collection/components/combobox/assets/combobox/t9n/messages_zh-TW.json +4 -1
  750. package/dist/collection/components/combobox/combobox.css +9 -5
  751. package/dist/collection/components/combobox/combobox.e2e.js +1 -1
  752. package/dist/collection/components/combobox/combobox.js +4 -4
  753. package/dist/collection/components/combobox/combobox.js.map +1 -1
  754. package/dist/collection/components/combobox/resources.js +1 -1
  755. package/dist/collection/components/combobox/utils.js +1 -1
  756. package/dist/collection/components/combobox-item/combobox-item.css +9 -5
  757. package/dist/collection/components/combobox-item/combobox-item.e2e.js +1 -1
  758. package/dist/collection/components/combobox-item/combobox-item.js +6 -5
  759. package/dist/collection/components/combobox-item/combobox-item.js.map +1 -1
  760. package/dist/collection/components/combobox-item/resources.js +1 -1
  761. package/dist/collection/components/combobox-item-group/combobox-item-group.css +5 -5
  762. package/dist/collection/components/combobox-item-group/combobox-item-group.js +1 -1
  763. package/dist/collection/components/combobox-item-group/resources.js +1 -1
  764. package/dist/collection/components/date-picker/date-picker.css +5 -5
  765. package/dist/collection/components/date-picker/date-picker.e2e.js +1 -1
  766. package/dist/collection/components/date-picker/date-picker.js +1 -1
  767. package/dist/collection/components/date-picker/resources.js +1 -1
  768. package/dist/collection/components/date-picker/utils.js +1 -1
  769. package/dist/collection/components/date-picker/utils.spec.js +1 -1
  770. package/dist/collection/components/date-picker-day/date-picker-day.css +9 -5
  771. package/dist/collection/components/date-picker-day/date-picker-day.e2e.js +1 -1
  772. package/dist/collection/components/date-picker-day/date-picker-day.js +4 -7
  773. package/dist/collection/components/date-picker-day/date-picker-day.js.map +1 -1
  774. package/dist/collection/components/date-picker-month/date-picker-month.css +5 -5
  775. package/dist/collection/components/date-picker-month/date-picker-month.js +1 -1
  776. package/dist/collection/components/date-picker-month-header/date-picker-month-header.css +5 -5
  777. package/dist/collection/components/date-picker-month-header/date-picker-month-header.e2e.js +1 -1
  778. package/dist/collection/components/date-picker-month-header/date-picker-month-header.js +1 -1
  779. package/dist/collection/components/date-picker-month-header/resources.js +1 -1
  780. package/dist/collection/components/dropdown/dropdown.css +9 -5
  781. package/dist/collection/components/dropdown/dropdown.e2e.js +1 -1
  782. package/dist/collection/components/dropdown/dropdown.js +4 -4
  783. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  784. package/dist/collection/components/dropdown/resources.js +1 -1
  785. package/dist/collection/components/dropdown-group/dropdown-group.css +5 -5
  786. package/dist/collection/components/dropdown-group/dropdown-group.e2e.js +1 -1
  787. package/dist/collection/components/dropdown-group/dropdown-group.js +1 -1
  788. package/dist/collection/components/dropdown-item/dropdown-item.css +9 -5
  789. package/dist/collection/components/dropdown-item/dropdown-item.e2e.js +1 -1
  790. package/dist/collection/components/dropdown-item/dropdown-item.js +6 -5
  791. package/dist/collection/components/dropdown-item/dropdown-item.js.map +1 -1
  792. package/dist/collection/components/dropdown-item/resources.js +1 -1
  793. package/dist/collection/components/fab/fab.css +9 -5
  794. package/dist/collection/components/fab/fab.e2e.js +1 -1
  795. package/dist/collection/components/fab/fab.js +4 -4
  796. package/dist/collection/components/fab/fab.js.map +1 -1
  797. package/dist/collection/components/fab/resources.js +1 -1
  798. package/dist/collection/components/filter/filter.css +9 -5
  799. package/dist/collection/components/filter/filter.e2e.js +1 -1
  800. package/dist/collection/components/filter/filter.js +8 -6
  801. package/dist/collection/components/filter/filter.js.map +1 -1
  802. package/dist/collection/components/filter/resources.js +1 -1
  803. package/dist/collection/components/flow/flow.css +5 -5
  804. package/dist/collection/components/flow/flow.e2e.js +1 -1
  805. package/dist/collection/components/flow/flow.js +1 -1
  806. package/dist/collection/components/flow/resources.js +1 -1
  807. package/dist/collection/components/flow-item/flow-item.css +9 -5
  808. package/dist/collection/components/flow-item/flow-item.e2e.js +1 -1
  809. package/dist/collection/components/flow-item/flow-item.js +4 -4
  810. package/dist/collection/components/flow-item/flow-item.js.map +1 -1
  811. package/dist/collection/components/flow-item/resources.js +1 -1
  812. package/dist/collection/components/functional/ExpandToggle.js +1 -1
  813. package/dist/collection/components/functional/FloatingArrow.js +1 -1
  814. package/dist/collection/components/functional/Heading.js +1 -1
  815. package/dist/collection/components/functional/Heading.spec.js +1 -1
  816. package/dist/collection/components/functional/Validation.js +1 -1
  817. package/dist/collection/components/functional/XButton.js +1 -1
  818. package/dist/collection/components/graph/graph.css +5 -5
  819. package/dist/collection/components/graph/graph.e2e.js +1 -1
  820. package/dist/collection/components/graph/graph.js +1 -1
  821. package/dist/collection/components/graph/util.js +1 -1
  822. package/dist/collection/components/handle/handle.css +9 -5
  823. package/dist/collection/components/handle/handle.e2e.js +1 -1
  824. package/dist/collection/components/handle/handle.js +1 -1
  825. package/dist/collection/components/handle/resources.js +1 -1
  826. package/dist/collection/components/icon/icon.css +5 -5
  827. package/dist/collection/components/icon/icon.e2e.js +1 -1
  828. package/dist/collection/components/icon/icon.js +1 -1
  829. package/dist/collection/components/icon/resources.js +1 -1
  830. package/dist/collection/components/icon/utils.js +1 -1
  831. package/dist/collection/components/icon/utils.spec.js +1 -1
  832. package/dist/collection/components/inline-editable/inline-editable.css +9 -5
  833. package/dist/collection/components/inline-editable/inline-editable.e2e.js +1 -1
  834. package/dist/collection/components/inline-editable/inline-editable.js +4 -4
  835. package/dist/collection/components/inline-editable/inline-editable.js.map +1 -1
  836. package/dist/collection/components/inline-editable/resources.js +1 -1
  837. package/dist/collection/components/input/input.css +9 -5
  838. package/dist/collection/components/input/input.e2e.js +1 -1
  839. package/dist/collection/components/input/input.js +4 -4
  840. package/dist/collection/components/input/input.js.map +1 -1
  841. package/dist/collection/components/input/resources.js +1 -1
  842. package/dist/collection/components/input-date-picker/input-date-picker.css +9 -5
  843. package/dist/collection/components/input-date-picker/input-date-picker.e2e.js +1 -1
  844. package/dist/collection/components/input-date-picker/input-date-picker.js +7 -5
  845. package/dist/collection/components/input-date-picker/input-date-picker.js.map +1 -1
  846. package/dist/collection/components/input-date-picker/resources.js +1 -1
  847. package/dist/collection/components/input-date-picker/util.spec.js +1 -1
  848. package/dist/collection/components/input-date-picker/utils.js +1 -1
  849. package/dist/collection/components/input-message/input-message.css +5 -5
  850. package/dist/collection/components/input-message/input-message.e2e.js +1 -1
  851. package/dist/collection/components/input-message/input-message.js +1 -1
  852. package/dist/collection/components/input-message/interfaces.js +1 -1
  853. package/dist/collection/components/input-number/input-number.css +9 -5
  854. package/dist/collection/components/input-number/input-number.e2e.js +1 -1
  855. package/dist/collection/components/input-number/input-number.js +4 -4
  856. package/dist/collection/components/input-number/input-number.js.map +1 -1
  857. package/dist/collection/components/input-number/resources.js +1 -1
  858. package/dist/collection/components/input-text/input-text.css +9 -5
  859. package/dist/collection/components/input-text/input-text.e2e.js +1 -1
  860. package/dist/collection/components/input-text/input-text.js +3 -3
  861. package/dist/collection/components/input-text/input-text.js.map +1 -1
  862. package/dist/collection/components/input-text/resources.js +1 -1
  863. package/dist/collection/components/input-time-picker/input-time-picker.css +9 -5
  864. package/dist/collection/components/input-time-picker/input-time-picker.e2e.js +1 -1
  865. package/dist/collection/components/input-time-picker/input-time-picker.js +4 -4
  866. package/dist/collection/components/input-time-picker/input-time-picker.js.map +1 -1
  867. package/dist/collection/components/input-time-picker/resources.js +1 -1
  868. package/dist/collection/components/input-time-zone/assets/input-time-zone/t9n/messages_fr.json +1 -1
  869. package/dist/collection/components/input-time-zone/input-time-zone.css +9 -5
  870. package/dist/collection/components/input-time-zone/input-time-zone.e2e.js +1 -1
  871. package/dist/collection/components/input-time-zone/input-time-zone.js +4 -4
  872. package/dist/collection/components/input-time-zone/input-time-zone.js.map +1 -1
  873. package/dist/collection/components/input-time-zone/utils.js +1 -1
  874. package/dist/collection/components/label/label.css +9 -5
  875. package/dist/collection/components/label/label.e2e.js +1 -1
  876. package/dist/collection/components/label/label.js +1 -1
  877. package/dist/collection/components/label/resources.js +1 -1
  878. package/dist/collection/components/link/link.css +9 -5
  879. package/dist/collection/components/link/link.e2e.js +1 -1
  880. package/dist/collection/components/link/link.js +7 -7
  881. package/dist/collection/components/link/link.js.map +1 -1
  882. package/dist/collection/components/list/assets/list/t9n/messages_ar.json +4 -0
  883. package/dist/collection/components/list/assets/list/t9n/messages_bg.json +4 -0
  884. package/dist/collection/components/list/assets/list/t9n/messages_bs.json +4 -0
  885. package/dist/collection/components/list/assets/list/t9n/messages_ca.json +4 -0
  886. package/dist/collection/components/list/assets/list/t9n/messages_cs.json +4 -0
  887. package/dist/collection/components/list/assets/list/t9n/messages_da.json +4 -0
  888. package/dist/collection/components/list/assets/list/t9n/messages_de.json +4 -0
  889. package/dist/collection/components/list/assets/list/t9n/messages_el.json +4 -0
  890. package/dist/collection/components/list/assets/list/t9n/messages_es.json +4 -0
  891. package/dist/collection/components/list/assets/list/t9n/messages_et.json +4 -0
  892. package/dist/collection/components/list/assets/list/t9n/messages_fi.json +4 -0
  893. package/dist/collection/components/list/assets/list/t9n/messages_fr.json +4 -0
  894. package/dist/collection/components/list/assets/list/t9n/messages_he.json +4 -0
  895. package/dist/collection/components/list/assets/list/t9n/messages_hr.json +4 -0
  896. package/dist/collection/components/list/assets/list/t9n/messages_hu.json +4 -0
  897. package/dist/collection/components/list/assets/list/t9n/messages_id.json +4 -0
  898. package/dist/collection/components/list/assets/list/t9n/messages_it.json +4 -0
  899. package/dist/collection/components/list/assets/list/t9n/messages_ja.json +4 -0
  900. package/dist/collection/components/list/assets/list/t9n/messages_ko.json +4 -0
  901. package/dist/collection/components/list/assets/list/t9n/messages_lt.json +4 -0
  902. package/dist/collection/components/list/assets/list/t9n/messages_lv.json +4 -0
  903. package/dist/collection/components/list/assets/list/t9n/messages_nl.json +4 -0
  904. package/dist/collection/components/list/assets/list/t9n/messages_no.json +4 -0
  905. package/dist/collection/components/list/assets/list/t9n/messages_pl.json +4 -0
  906. package/dist/collection/components/list/assets/list/t9n/messages_pt-BR.json +4 -0
  907. package/dist/collection/components/list/assets/list/t9n/messages_pt-PT.json +4 -0
  908. package/dist/collection/components/list/assets/list/t9n/messages_ro.json +4 -0
  909. package/dist/collection/components/list/assets/list/t9n/messages_ru.json +4 -0
  910. package/dist/collection/components/list/assets/list/t9n/messages_sk.json +4 -0
  911. package/dist/collection/components/list/assets/list/t9n/messages_sl.json +4 -0
  912. package/dist/collection/components/list/assets/list/t9n/messages_sr.json +4 -0
  913. package/dist/collection/components/list/assets/list/t9n/messages_sv.json +4 -0
  914. package/dist/collection/components/list/assets/list/t9n/messages_th.json +4 -0
  915. package/dist/collection/components/list/assets/list/t9n/messages_tr.json +4 -0
  916. package/dist/collection/components/list/assets/list/t9n/messages_uk.json +4 -0
  917. package/dist/collection/components/list/assets/list/t9n/messages_vi.json +4 -0
  918. package/dist/collection/components/list/assets/list/t9n/messages_zh-CN.json +4 -0
  919. package/dist/collection/components/list/assets/list/t9n/messages_zh-HK.json +4 -0
  920. package/dist/collection/components/list/assets/list/t9n/messages_zh-TW.json +4 -0
  921. package/dist/collection/components/list/list.css +9 -5
  922. package/dist/collection/components/list/list.e2e.js +22 -11
  923. package/dist/collection/components/list/list.e2e.js.map +1 -1
  924. package/dist/collection/components/list/list.js +6 -6
  925. package/dist/collection/components/list/list.js.map +1 -1
  926. package/dist/collection/components/list/resources.js +1 -1
  927. package/dist/collection/components/list-item/list-item.css +9 -5
  928. package/dist/collection/components/list-item/list-item.e2e.js +1 -1
  929. package/dist/collection/components/list-item/list-item.js +4 -4
  930. package/dist/collection/components/list-item/list-item.js.map +1 -1
  931. package/dist/collection/components/list-item/resources.js +1 -1
  932. package/dist/collection/components/list-item/utils.js +1 -1
  933. package/dist/collection/components/list-item-group/list-item-group.css +9 -5
  934. package/dist/collection/components/list-item-group/list-item-group.e2e.js +1 -1
  935. package/dist/collection/components/list-item-group/list-item-group.js +4 -4
  936. package/dist/collection/components/list-item-group/list-item-group.js.map +1 -1
  937. package/dist/collection/components/list-item-group/resources.js +1 -1
  938. package/dist/collection/components/loader/loader.css +5 -5
  939. package/dist/collection/components/loader/loader.e2e.js +1 -1
  940. package/dist/collection/components/loader/loader.js +1 -1
  941. package/dist/collection/components/menu/menu.css +5 -5
  942. package/dist/collection/components/menu/menu.e2e.js +1 -1
  943. package/dist/collection/components/menu/menu.js +1 -1
  944. package/dist/collection/components/menu-item/menu-item.css +5 -5
  945. package/dist/collection/components/menu-item/menu-item.e2e.js +1 -1
  946. package/dist/collection/components/menu-item/menu-item.js +1 -1
  947. package/dist/collection/components/menu-item/resources.js +1 -1
  948. package/dist/collection/components/meter/meter.css +9 -5
  949. package/dist/collection/components/meter/meter.e2e.js +1 -1
  950. package/dist/collection/components/meter/meter.js +1 -1
  951. package/dist/collection/components/meter/resources.js +1 -1
  952. package/dist/collection/components/modal/modal.css +6 -6
  953. package/dist/collection/components/modal/modal.e2e.js +1 -1
  954. package/dist/collection/components/modal/modal.js +1 -1
  955. package/dist/collection/components/modal/resources.js +1 -1
  956. package/dist/collection/components/navigation/navigation.css +5 -5
  957. package/dist/collection/components/navigation/navigation.e2e.js +1 -1
  958. package/dist/collection/components/navigation/navigation.js +1 -1
  959. package/dist/collection/components/navigation/resources.js +1 -1
  960. package/dist/collection/components/navigation-logo/navigation-logo.css +5 -5
  961. package/dist/collection/components/navigation-logo/navigation-logo.e2e.js +1 -1
  962. package/dist/collection/components/navigation-logo/navigation-logo.js +1 -1
  963. package/dist/collection/components/navigation-logo/resources.js +1 -1
  964. package/dist/collection/components/navigation-user/navigation-user.css +5 -5
  965. package/dist/collection/components/navigation-user/navigation-user.e2e.js +1 -1
  966. package/dist/collection/components/navigation-user/navigation-user.js +1 -1
  967. package/dist/collection/components/navigation-user/resources.js +1 -1
  968. package/dist/collection/components/notice/notice.css +5 -5
  969. package/dist/collection/components/notice/notice.e2e.js +1 -1
  970. package/dist/collection/components/notice/notice.js +1 -1
  971. package/dist/collection/components/notice/resources.js +1 -1
  972. package/dist/collection/components/option/option.css +5 -5
  973. package/dist/collection/components/option/option.e2e.js +1 -1
  974. package/dist/collection/components/option/option.js +1 -1
  975. package/dist/collection/components/option-group/option-group.css +5 -5
  976. package/dist/collection/components/option-group/option-group.e2e.js +1 -1
  977. package/dist/collection/components/option-group/option-group.js +1 -1
  978. package/dist/collection/components/pagination/assets/pagination/t9n/messages_ar.json +2 -2
  979. package/dist/collection/components/pagination/assets/pagination/t9n/messages_bg.json +2 -2
  980. package/dist/collection/components/pagination/assets/pagination/t9n/messages_bs.json +2 -2
  981. package/dist/collection/components/pagination/assets/pagination/t9n/messages_ca.json +2 -2
  982. package/dist/collection/components/pagination/assets/pagination/t9n/messages_cs.json +2 -2
  983. package/dist/collection/components/pagination/assets/pagination/t9n/messages_da.json +2 -2
  984. package/dist/collection/components/pagination/assets/pagination/t9n/messages_de.json +2 -2
  985. package/dist/collection/components/pagination/assets/pagination/t9n/messages_el.json +2 -2
  986. package/dist/collection/components/pagination/assets/pagination/t9n/messages_es.json +2 -2
  987. package/dist/collection/components/pagination/assets/pagination/t9n/messages_et.json +2 -2
  988. package/dist/collection/components/pagination/assets/pagination/t9n/messages_fi.json +2 -2
  989. package/dist/collection/components/pagination/assets/pagination/t9n/messages_fr.json +2 -2
  990. package/dist/collection/components/pagination/assets/pagination/t9n/messages_he.json +2 -2
  991. package/dist/collection/components/pagination/assets/pagination/t9n/messages_hr.json +2 -2
  992. package/dist/collection/components/pagination/assets/pagination/t9n/messages_hu.json +2 -2
  993. package/dist/collection/components/pagination/assets/pagination/t9n/messages_id.json +2 -2
  994. package/dist/collection/components/pagination/assets/pagination/t9n/messages_it.json +2 -2
  995. package/dist/collection/components/pagination/assets/pagination/t9n/messages_ja.json +2 -2
  996. package/dist/collection/components/pagination/assets/pagination/t9n/messages_ko.json +2 -2
  997. package/dist/collection/components/pagination/assets/pagination/t9n/messages_lt.json +2 -2
  998. package/dist/collection/components/pagination/assets/pagination/t9n/messages_lv.json +2 -2
  999. package/dist/collection/components/pagination/assets/pagination/t9n/messages_nl.json +2 -2
  1000. package/dist/collection/components/pagination/assets/pagination/t9n/messages_no.json +2 -2
  1001. package/dist/collection/components/pagination/assets/pagination/t9n/messages_pl.json +2 -2
  1002. package/dist/collection/components/pagination/assets/pagination/t9n/messages_pt-BR.json +2 -2
  1003. package/dist/collection/components/pagination/assets/pagination/t9n/messages_pt-PT.json +2 -2
  1004. package/dist/collection/components/pagination/assets/pagination/t9n/messages_ro.json +2 -2
  1005. package/dist/collection/components/pagination/assets/pagination/t9n/messages_ru.json +2 -2
  1006. package/dist/collection/components/pagination/assets/pagination/t9n/messages_sk.json +2 -2
  1007. package/dist/collection/components/pagination/assets/pagination/t9n/messages_sl.json +2 -2
  1008. package/dist/collection/components/pagination/assets/pagination/t9n/messages_sr.json +2 -2
  1009. package/dist/collection/components/pagination/assets/pagination/t9n/messages_sv.json +2 -2
  1010. package/dist/collection/components/pagination/assets/pagination/t9n/messages_th.json +2 -2
  1011. package/dist/collection/components/pagination/assets/pagination/t9n/messages_tr.json +2 -2
  1012. package/dist/collection/components/pagination/assets/pagination/t9n/messages_uk.json +2 -2
  1013. package/dist/collection/components/pagination/assets/pagination/t9n/messages_vi.json +2 -2
  1014. package/dist/collection/components/pagination/assets/pagination/t9n/messages_zh-CN.json +2 -2
  1015. package/dist/collection/components/pagination/assets/pagination/t9n/messages_zh-HK.json +2 -2
  1016. package/dist/collection/components/pagination/assets/pagination/t9n/messages_zh-TW.json +2 -2
  1017. package/dist/collection/components/pagination/pagination.css +5 -5
  1018. package/dist/collection/components/pagination/pagination.e2e.js +1 -1
  1019. package/dist/collection/components/pagination/pagination.js +1 -1
  1020. package/dist/collection/components/pagination/resources.js +1 -1
  1021. package/dist/collection/components/panel/panel.css +9 -5
  1022. package/dist/collection/components/panel/panel.e2e.js +1 -1
  1023. package/dist/collection/components/panel/panel.js +5 -5
  1024. package/dist/collection/components/panel/panel.js.map +1 -1
  1025. package/dist/collection/components/panel/resources.js +1 -1
  1026. package/dist/collection/components/pick-list/pick-list.css +9 -5
  1027. package/dist/collection/components/pick-list/pick-list.e2e.js +1 -1
  1028. package/dist/collection/components/pick-list/pick-list.js +1 -1
  1029. package/dist/collection/components/pick-list/resources.js +1 -1
  1030. package/dist/collection/components/pick-list/shared-list-logic.js +1 -1
  1031. package/dist/collection/components/pick-list/shared-list-render.js +4 -3
  1032. package/dist/collection/components/pick-list/shared-list-render.js.map +1 -1
  1033. package/dist/collection/components/pick-list/shared-list-tests.js +1 -1
  1034. package/dist/collection/components/pick-list-group/pick-list-group.css +5 -5
  1035. package/dist/collection/components/pick-list-group/pick-list-group.e2e.js +1 -1
  1036. package/dist/collection/components/pick-list-group/pick-list-group.js +1 -1
  1037. package/dist/collection/components/pick-list-group/resources.js +1 -1
  1038. package/dist/collection/components/pick-list-item/pick-list-item.css +9 -5
  1039. package/dist/collection/components/pick-list-item/pick-list-item.e2e.js +1 -1
  1040. package/dist/collection/components/pick-list-item/pick-list-item.js +5 -5
  1041. package/dist/collection/components/pick-list-item/pick-list-item.js.map +1 -1
  1042. package/dist/collection/components/pick-list-item/resources.js +1 -1
  1043. package/dist/collection/components/popover/PopoverManager.js +1 -1
  1044. package/dist/collection/components/popover/popover.css +5 -5
  1045. package/dist/collection/components/popover/popover.e2e.js +1 -1
  1046. package/dist/collection/components/popover/popover.js +1 -1
  1047. package/dist/collection/components/popover/resources.js +1 -1
  1048. package/dist/collection/components/progress/progress.css +5 -5
  1049. package/dist/collection/components/progress/progress.e2e.js +1 -1
  1050. package/dist/collection/components/progress/progress.js +1 -1
  1051. package/dist/collection/components/radio-button/radio-button.css +9 -5
  1052. package/dist/collection/components/radio-button/radio-button.e2e.js +1 -1
  1053. package/dist/collection/components/radio-button/radio-button.js +4 -4
  1054. package/dist/collection/components/radio-button/radio-button.js.map +1 -1
  1055. package/dist/collection/components/radio-button/resources.js +1 -1
  1056. package/dist/collection/components/radio-button-group/radio-button-group.css +5 -5
  1057. package/dist/collection/components/radio-button-group/radio-button-group.e2e.js +1 -1
  1058. package/dist/collection/components/radio-button-group/radio-button-group.js +1 -1
  1059. package/dist/collection/components/rating/functional/star.js +1 -1
  1060. package/dist/collection/components/rating/rating.css +9 -5
  1061. package/dist/collection/components/rating/rating.e2e.js +1 -1
  1062. package/dist/collection/components/rating/rating.js +4 -4
  1063. package/dist/collection/components/rating/rating.js.map +1 -1
  1064. package/dist/collection/components/resources.js +1 -1
  1065. package/dist/collection/components/scrim/resources.js +1 -1
  1066. package/dist/collection/components/scrim/scrim.css +5 -5
  1067. package/dist/collection/components/scrim/scrim.e2e.js +1 -1
  1068. package/dist/collection/components/scrim/scrim.js +1 -1
  1069. package/dist/collection/components/segmented-control/segmented-control.css +9 -5
  1070. package/dist/collection/components/segmented-control/segmented-control.e2e.js +1 -1
  1071. package/dist/collection/components/segmented-control/segmented-control.js +3 -3
  1072. package/dist/collection/components/segmented-control/segmented-control.js.map +1 -1
  1073. package/dist/collection/components/segmented-control-item/resources.js +1 -1
  1074. package/dist/collection/components/segmented-control-item/segmented-control-item.css +5 -5
  1075. package/dist/collection/components/segmented-control-item/segmented-control-item.e2e.js +1 -1
  1076. package/dist/collection/components/segmented-control-item/segmented-control-item.js +1 -1
  1077. package/dist/collection/components/select/resources.js +1 -1
  1078. package/dist/collection/components/select/select.css +9 -5
  1079. package/dist/collection/components/select/select.e2e.js +1 -1
  1080. package/dist/collection/components/select/select.js +5 -4
  1081. package/dist/collection/components/select/select.js.map +1 -1
  1082. package/dist/collection/components/sheet/resources.js +1 -1
  1083. package/dist/collection/components/sheet/sheet.css +5 -5
  1084. package/dist/collection/components/sheet/sheet.e2e.js +1 -1
  1085. package/dist/collection/components/sheet/sheet.js +1 -1
  1086. package/dist/collection/components/shell/resources.js +1 -1
  1087. package/dist/collection/components/shell/shell.css +5 -5
  1088. package/dist/collection/components/shell/shell.e2e.js +1 -1
  1089. package/dist/collection/components/shell/shell.js +1 -1
  1090. package/dist/collection/components/shell-center-row/resources.js +1 -1
  1091. package/dist/collection/components/shell-center-row/shell-center-row.css +5 -5
  1092. package/dist/collection/components/shell-center-row/shell-center-row.e2e.js +1 -1
  1093. package/dist/collection/components/shell-center-row/shell-center-row.js +1 -1
  1094. package/dist/collection/components/shell-panel/resources.js +1 -1
  1095. package/dist/collection/components/shell-panel/shell-panel.css +5 -5
  1096. package/dist/collection/components/shell-panel/shell-panel.e2e.js +1 -1
  1097. package/dist/collection/components/shell-panel/shell-panel.js +1 -1
  1098. package/dist/collection/components/slider/resources.js +1 -1
  1099. package/dist/collection/components/slider/slider.css +9 -5
  1100. package/dist/collection/components/slider/slider.e2e.js +1 -1
  1101. package/dist/collection/components/slider/slider.js +4 -4
  1102. package/dist/collection/components/slider/slider.js.map +1 -1
  1103. package/dist/collection/components/sortable-list/resources.js +1 -1
  1104. package/dist/collection/components/sortable-list/sortable-list.css +9 -5
  1105. package/dist/collection/components/sortable-list/sortable-list.e2e.js +1 -1
  1106. package/dist/collection/components/sortable-list/sortable-list.js +5 -5
  1107. package/dist/collection/components/sortable-list/sortable-list.js.map +1 -1
  1108. package/dist/collection/components/split-button/resources.js +1 -1
  1109. package/dist/collection/components/split-button/split-button.css +9 -5
  1110. package/dist/collection/components/split-button/split-button.e2e.js +1 -1
  1111. package/dist/collection/components/split-button/split-button.js +3 -3
  1112. package/dist/collection/components/split-button/split-button.js.map +1 -1
  1113. package/dist/collection/components/stack/resources.js +1 -1
  1114. package/dist/collection/components/stack/stack.css +5 -5
  1115. package/dist/collection/components/stack/stack.e2e.js +1 -1
  1116. package/dist/collection/components/stack/stack.js +1 -1
  1117. package/dist/collection/components/stepper/functional/step-bar.js +1 -1
  1118. package/dist/collection/components/stepper/resources.js +1 -1
  1119. package/dist/collection/components/stepper/stepper.css +5 -5
  1120. package/dist/collection/components/stepper/stepper.e2e.js +1 -1
  1121. package/dist/collection/components/stepper/stepper.js +1 -1
  1122. package/dist/collection/components/stepper-item/resources.js +1 -1
  1123. package/dist/collection/components/stepper-item/stepper-item.css +9 -5
  1124. package/dist/collection/components/stepper-item/stepper-item.e2e.js +1 -1
  1125. package/dist/collection/components/stepper-item/stepper-item.js +5 -5
  1126. package/dist/collection/components/stepper-item/stepper-item.js.map +1 -1
  1127. package/dist/collection/components/switch/switch.css +9 -5
  1128. package/dist/collection/components/switch/switch.e2e.js +1 -1
  1129. package/dist/collection/components/switch/switch.js +4 -4
  1130. package/dist/collection/components/switch/switch.js.map +1 -1
  1131. package/dist/collection/components/tab/resources.js +1 -1
  1132. package/dist/collection/components/tab/tab.css +5 -5
  1133. package/dist/collection/components/tab/tab.e2e.js +1 -1
  1134. package/dist/collection/components/tab/tab.js +1 -1
  1135. package/dist/collection/components/tab-nav/resources.js +1 -1
  1136. package/dist/collection/components/tab-nav/tab-nav.css +5 -5
  1137. package/dist/collection/components/tab-nav/tab-nav.e2e.js +1 -1
  1138. package/dist/collection/components/tab-nav/tab-nav.js +1 -1
  1139. package/dist/collection/components/tab-title/resources.js +1 -1
  1140. package/dist/collection/components/tab-title/tab-title.css +9 -5
  1141. package/dist/collection/components/tab-title/tab-title.e2e.js +1 -1
  1142. package/dist/collection/components/tab-title/tab-title.js +5 -7
  1143. package/dist/collection/components/tab-title/tab-title.js.map +1 -1
  1144. package/dist/collection/components/table/resources.js +1 -1
  1145. package/dist/collection/components/table/table.css +5 -5
  1146. package/dist/collection/components/table/table.e2e.js +1 -1
  1147. package/dist/collection/components/table/table.js +1 -1
  1148. package/dist/collection/components/table-cell/resources.js +1 -1
  1149. package/dist/collection/components/table-cell/table-cell.css +27 -5
  1150. package/dist/collection/components/table-cell/table-cell.js +4 -4
  1151. package/dist/collection/components/table-cell/table-cell.js.map +1 -1
  1152. package/dist/collection/components/table-header/resources.js +1 -1
  1153. package/dist/collection/components/table-header/table-header.css +5 -5
  1154. package/dist/collection/components/table-header/table-header.js +1 -1
  1155. package/dist/collection/components/table-row/table-row.css +9 -5
  1156. package/dist/collection/components/table-row/table-row.js +4 -4
  1157. package/dist/collection/components/table-row/table-row.js.map +1 -1
  1158. package/dist/collection/components/tabs/resources.js +1 -1
  1159. package/dist/collection/components/tabs/tabs.css +5 -5
  1160. package/dist/collection/components/tabs/tabs.e2e.js +1 -1
  1161. package/dist/collection/components/tabs/tabs.js +1 -1
  1162. package/dist/collection/components/text-area/resources.js +1 -1
  1163. package/dist/collection/components/text-area/text-area.css +9 -5
  1164. package/dist/collection/components/text-area/text-area.e2e.js +1 -1
  1165. package/dist/collection/components/text-area/text-area.js +4 -4
  1166. package/dist/collection/components/text-area/text-area.js.map +1 -1
  1167. package/dist/collection/components/tile/resources.js +1 -1
  1168. package/dist/collection/components/tile/tile.css +9 -5
  1169. package/dist/collection/components/tile/tile.e2e.js +1 -1
  1170. package/dist/collection/components/tile/tile.js +5 -4
  1171. package/dist/collection/components/tile/tile.js.map +1 -1
  1172. package/dist/collection/components/tile-select/resources.js +1 -1
  1173. package/dist/collection/components/tile-select/tile-select.css +9 -5
  1174. package/dist/collection/components/tile-select/tile-select.e2e.js +1 -1
  1175. package/dist/collection/components/tile-select/tile-select.js +4 -4
  1176. package/dist/collection/components/tile-select/tile-select.js.map +1 -1
  1177. package/dist/collection/components/tile-select-group/tile-select-group.css +9 -5
  1178. package/dist/collection/components/tile-select-group/tile-select-group.e2e.js +1 -1
  1179. package/dist/collection/components/tile-select-group/tile-select-group.js +3 -3
  1180. package/dist/collection/components/tile-select-group/tile-select-group.js.map +1 -1
  1181. package/dist/collection/components/time-picker/resources.js +1 -1
  1182. package/dist/collection/components/time-picker/time-picker.css +5 -5
  1183. package/dist/collection/components/time-picker/time-picker.e2e.js +1 -1
  1184. package/dist/collection/components/time-picker/time-picker.js +1 -1
  1185. package/dist/collection/components/tip/resources.js +1 -1
  1186. package/dist/collection/components/tip/tip.css +5 -5
  1187. package/dist/collection/components/tip/tip.e2e.js +1 -1
  1188. package/dist/collection/components/tip/tip.js +1 -1
  1189. package/dist/collection/components/tip-group/tip-group.css +5 -5
  1190. package/dist/collection/components/tip-group/tip-group.e2e.js +1 -1
  1191. package/dist/collection/components/tip-group/tip-group.js +1 -1
  1192. package/dist/collection/components/tip-manager/resources.js +1 -1
  1193. package/dist/collection/components/tip-manager/tip-manager.css +5 -5
  1194. package/dist/collection/components/tip-manager/tip-manager.e2e.js +1 -1
  1195. package/dist/collection/components/tip-manager/tip-manager.js +1 -1
  1196. package/dist/collection/components/tip-manager/tip-manager.spec.js +1 -1
  1197. package/dist/collection/components/tooltip/TooltipManager.js +1 -1
  1198. package/dist/collection/components/tooltip/resources.js +1 -1
  1199. package/dist/collection/components/tooltip/tooltip.css +5 -5
  1200. package/dist/collection/components/tooltip/tooltip.e2e.js +1 -1
  1201. package/dist/collection/components/tooltip/tooltip.js +1 -1
  1202. package/dist/collection/components/tooltip/utils.js +1 -1
  1203. package/dist/collection/components/tree/tree.css +5 -5
  1204. package/dist/collection/components/tree/tree.e2e.js +1 -1
  1205. package/dist/collection/components/tree/tree.js +1 -1
  1206. package/dist/collection/components/tree/utils.js +1 -1
  1207. package/dist/collection/components/tree-item/resources.js +1 -1
  1208. package/dist/collection/components/tree-item/tree-item.css +9 -5
  1209. package/dist/collection/components/tree-item/tree-item.e2e.js +2 -2
  1210. package/dist/collection/components/tree-item/tree-item.e2e.js.map +1 -1
  1211. package/dist/collection/components/tree-item/tree-item.js +5 -6
  1212. package/dist/collection/components/tree-item/tree-item.js.map +1 -1
  1213. package/dist/collection/components/value-list/resources.js +1 -1
  1214. package/dist/collection/components/value-list/utils.js +1 -1
  1215. package/dist/collection/components/value-list/value-list.css +9 -5
  1216. package/dist/collection/components/value-list/value-list.e2e.js +1 -1
  1217. package/dist/collection/components/value-list/value-list.js +1 -1
  1218. package/dist/collection/components/value-list-item/resources.js +1 -1
  1219. package/dist/collection/components/value-list-item/value-list-item.css +9 -5
  1220. package/dist/collection/components/value-list-item/value-list-item.e2e.js +1 -1
  1221. package/dist/collection/components/value-list-item/value-list-item.js +5 -5
  1222. package/dist/collection/components/value-list-item/value-list-item.js.map +1 -1
  1223. package/dist/collection/index.js +1 -1
  1224. package/dist/collection/tests/commonTests.js +1 -1
  1225. package/dist/collection/tests/utils.js +1 -1
  1226. package/dist/collection/utils/array.js +1 -1
  1227. package/dist/collection/utils/browser.js +1 -1
  1228. package/dist/collection/utils/component.js +1 -1
  1229. package/dist/collection/utils/component.spec.js +1 -1
  1230. package/dist/collection/utils/conditionalSlot.js +1 -1
  1231. package/dist/collection/utils/config.js +1 -1
  1232. package/dist/collection/utils/config.spec.js +1 -1
  1233. package/dist/collection/utils/date.js +1 -1
  1234. package/dist/collection/utils/date.spec.js +1 -1
  1235. package/dist/collection/utils/dom.e2e.js +1 -1
  1236. package/dist/collection/utils/dom.js +1 -1
  1237. package/dist/collection/utils/dom.spec.js +1 -1
  1238. package/dist/collection/utils/filter.js +1 -1
  1239. package/dist/collection/utils/floating-ui.js +1 -1
  1240. package/dist/collection/utils/floating-ui.spec.js +1 -1
  1241. package/dist/collection/utils/focusTrapComponent.js +1 -1
  1242. package/dist/collection/utils/focusTrapComponent.spec.js +1 -1
  1243. package/dist/collection/utils/form.js +1 -1
  1244. package/dist/collection/utils/form.spec.js +1 -1
  1245. package/dist/collection/utils/globalScript.js +1 -1
  1246. package/dist/collection/utils/guid.js +1 -1
  1247. package/dist/collection/utils/guid.spec.js +1 -1
  1248. package/dist/collection/utils/interactive.js +14 -17
  1249. package/dist/collection/utils/interactive.js.map +1 -1
  1250. package/dist/collection/utils/interactive.spec.js +1 -3
  1251. package/dist/collection/utils/interactive.spec.js.map +1 -1
  1252. package/dist/collection/utils/key.js +1 -1
  1253. package/dist/collection/utils/label.js +1 -1
  1254. package/dist/collection/utils/label.spec.js +1 -1
  1255. package/dist/collection/utils/loadable.js +1 -1
  1256. package/dist/collection/utils/loadable.spec.js +1 -1
  1257. package/dist/collection/utils/locale.js +1 -1
  1258. package/dist/collection/utils/locale.spec.js +1 -1
  1259. package/dist/collection/utils/math.js +1 -1
  1260. package/dist/collection/utils/math.spec.js +1 -1
  1261. package/dist/collection/utils/mode.js +1 -1
  1262. package/dist/collection/utils/number.js +1 -1
  1263. package/dist/collection/utils/number.spec.js +1 -1
  1264. package/dist/collection/utils/observers.js +1 -1
  1265. package/dist/collection/utils/openCloseComponent.js +1 -1
  1266. package/dist/collection/utils/resources.js +1 -1
  1267. package/dist/collection/utils/responsive.js +1 -1
  1268. package/dist/collection/utils/responsive.spec.js +1 -1
  1269. package/dist/collection/utils/sortableComponent.js +1 -1
  1270. package/dist/collection/utils/t9n.js +1 -1
  1271. package/dist/collection/utils/time.js +1 -1
  1272. package/dist/collection/utils/time.spec.js +1 -1
  1273. package/dist/components/ExpandToggle.js +1 -1
  1274. package/dist/components/FloatingArrow.js +1 -1
  1275. package/dist/components/Heading.js +1 -1
  1276. package/dist/components/Validation.js +1 -1
  1277. package/dist/components/action-group.js +1 -1
  1278. package/dist/components/action-menu.js +1 -1
  1279. package/dist/components/action.js +5 -5
  1280. package/dist/components/action.js.map +1 -1
  1281. package/dist/components/ar.js +1 -1
  1282. package/dist/components/array.js +1 -1
  1283. package/dist/components/avatar.js +1 -1
  1284. package/dist/components/bg.js +1 -1
  1285. package/dist/components/bs.js +1 -1
  1286. package/dist/components/button.js +5 -5
  1287. package/dist/components/button.js.map +1 -1
  1288. package/dist/components/ca.js +1 -1
  1289. package/dist/components/calcite-accordion-item.js +1 -1
  1290. package/dist/components/calcite-accordion.js +1 -1
  1291. package/dist/components/calcite-action-bar.js +1 -1
  1292. package/dist/components/calcite-action-group.js +1 -1
  1293. package/dist/components/calcite-action-menu.js +1 -1
  1294. package/dist/components/calcite-action-pad.js +1 -1
  1295. package/dist/components/calcite-action.js +1 -1
  1296. package/dist/components/calcite-alert.js +1 -1
  1297. package/dist/components/calcite-avatar.js +1 -1
  1298. package/dist/components/calcite-block-section.js +1 -1
  1299. package/dist/components/calcite-block.js +5 -5
  1300. package/dist/components/calcite-block.js.map +1 -1
  1301. package/dist/components/calcite-button.js +1 -1
  1302. package/dist/components/calcite-card.js +1 -1
  1303. package/dist/components/calcite-checkbox.js +1 -1
  1304. package/dist/components/calcite-chip-group.js +5 -4
  1305. package/dist/components/calcite-chip-group.js.map +1 -1
  1306. package/dist/components/calcite-chip.js +1 -1
  1307. package/dist/components/calcite-color-picker-hex-input.js +1 -1
  1308. package/dist/components/calcite-color-picker-swatch.js +1 -1
  1309. package/dist/components/calcite-color-picker.js +5 -5
  1310. package/dist/components/calcite-color-picker.js.map +1 -1
  1311. package/dist/components/calcite-combobox-item-group.js +1 -1
  1312. package/dist/components/calcite-combobox-item.js +1 -1
  1313. package/dist/components/calcite-combobox.js +1 -1
  1314. package/dist/components/calcite-date-picker-day.js +1 -1
  1315. package/dist/components/calcite-date-picker-month-header.js +1 -1
  1316. package/dist/components/calcite-date-picker-month.js +1 -1
  1317. package/dist/components/calcite-date-picker.js +1 -1
  1318. package/dist/components/calcite-dropdown-group.js +1 -1
  1319. package/dist/components/calcite-dropdown-item.js +7 -6
  1320. package/dist/components/calcite-dropdown-item.js.map +1 -1
  1321. package/dist/components/calcite-dropdown.js +1 -1
  1322. package/dist/components/calcite-fab.js +5 -5
  1323. package/dist/components/calcite-fab.js.map +1 -1
  1324. package/dist/components/calcite-filter.js +1 -1
  1325. package/dist/components/calcite-flow-item.js +5 -5
  1326. package/dist/components/calcite-flow-item.js.map +1 -1
  1327. package/dist/components/calcite-flow.js +1 -1
  1328. package/dist/components/calcite-graph.js +1 -1
  1329. package/dist/components/calcite-handle.js +1 -1
  1330. package/dist/components/calcite-icon.js +1 -1
  1331. package/dist/components/calcite-inline-editable.js +5 -5
  1332. package/dist/components/calcite-inline-editable.js.map +1 -1
  1333. package/dist/components/calcite-input-date-picker.js +8 -6
  1334. package/dist/components/calcite-input-date-picker.js.map +1 -1
  1335. package/dist/components/calcite-input-message.js +1 -1
  1336. package/dist/components/calcite-input-number.js +1 -1
  1337. package/dist/components/calcite-input-text.js +1 -1
  1338. package/dist/components/calcite-input-time-picker.js +5 -5
  1339. package/dist/components/calcite-input-time-picker.js.map +1 -1
  1340. package/dist/components/calcite-input-time-zone.js +5 -5
  1341. package/dist/components/calcite-input-time-zone.js.map +1 -1
  1342. package/dist/components/calcite-input.js +1 -1
  1343. package/dist/components/calcite-label.js +1 -1
  1344. package/dist/components/calcite-link.js +1 -1
  1345. package/dist/components/calcite-list-item-group.js +5 -5
  1346. package/dist/components/calcite-list-item-group.js.map +1 -1
  1347. package/dist/components/calcite-list-item.js +5 -5
  1348. package/dist/components/calcite-list-item.js.map +1 -1
  1349. package/dist/components/calcite-list.js +7 -7
  1350. package/dist/components/calcite-list.js.map +1 -1
  1351. package/dist/components/calcite-loader.js +1 -1
  1352. package/dist/components/calcite-menu-item.js +1 -1
  1353. package/dist/components/calcite-menu.js +1 -1
  1354. package/dist/components/calcite-meter.js +2 -2
  1355. package/dist/components/calcite-meter.js.map +1 -1
  1356. package/dist/components/calcite-modal.js +1 -1
  1357. package/dist/components/calcite-navigation-logo.js +1 -1
  1358. package/dist/components/calcite-navigation-user.js +1 -1
  1359. package/dist/components/calcite-navigation.js +1 -1
  1360. package/dist/components/calcite-notice.js +1 -1
  1361. package/dist/components/calcite-option-group.js +1 -1
  1362. package/dist/components/calcite-option.js +1 -1
  1363. package/dist/components/calcite-pagination.js +1 -1
  1364. package/dist/components/calcite-panel.js +1 -1
  1365. package/dist/components/calcite-pick-list-group.js +1 -1
  1366. package/dist/components/calcite-pick-list-item.js +1 -1
  1367. package/dist/components/calcite-pick-list.js +2 -2
  1368. package/dist/components/calcite-pick-list.js.map +1 -1
  1369. package/dist/components/calcite-popover.js +1 -1
  1370. package/dist/components/calcite-progress.js +1 -1
  1371. package/dist/components/calcite-radio-button-group.js +1 -1
  1372. package/dist/components/calcite-radio-button.js +5 -5
  1373. package/dist/components/calcite-radio-button.js.map +1 -1
  1374. package/dist/components/calcite-rating.js +5 -5
  1375. package/dist/components/calcite-rating.js.map +1 -1
  1376. package/dist/components/calcite-scrim.js +1 -1
  1377. package/dist/components/calcite-segmented-control-item.js +1 -1
  1378. package/dist/components/calcite-segmented-control.js +4 -4
  1379. package/dist/components/calcite-segmented-control.js.map +1 -1
  1380. package/dist/components/calcite-select.js +6 -5
  1381. package/dist/components/calcite-select.js.map +1 -1
  1382. package/dist/components/calcite-sheet.js +1 -1
  1383. package/dist/components/calcite-shell-center-row.js +1 -1
  1384. package/dist/components/calcite-shell-panel.js +1 -1
  1385. package/dist/components/calcite-shell.js +1 -1
  1386. package/dist/components/calcite-slider.js +5 -5
  1387. package/dist/components/calcite-slider.js.map +1 -1
  1388. package/dist/components/calcite-sortable-list.js +6 -6
  1389. package/dist/components/calcite-sortable-list.js.map +1 -1
  1390. package/dist/components/calcite-split-button.js +4 -4
  1391. package/dist/components/calcite-split-button.js.map +1 -1
  1392. package/dist/components/calcite-stack.js +1 -1
  1393. package/dist/components/calcite-stepper-item.js +6 -6
  1394. package/dist/components/calcite-stepper-item.js.map +1 -1
  1395. package/dist/components/calcite-stepper.js +1 -1
  1396. package/dist/components/calcite-switch.js +1 -1
  1397. package/dist/components/calcite-tab-nav.js +1 -1
  1398. package/dist/components/calcite-tab-title.js +1 -1
  1399. package/dist/components/calcite-tab.js +1 -1
  1400. package/dist/components/calcite-table-cell.js +1 -1
  1401. package/dist/components/calcite-table-header.js +1 -1
  1402. package/dist/components/calcite-table-row.js +5 -5
  1403. package/dist/components/calcite-table-row.js.map +1 -1
  1404. package/dist/components/calcite-table.js +1 -1
  1405. package/dist/components/calcite-tabs.js +1 -1
  1406. package/dist/components/calcite-text-area.js +5 -5
  1407. package/dist/components/calcite-text-area.js.map +1 -1
  1408. package/dist/components/calcite-tile-select-group.js +4 -4
  1409. package/dist/components/calcite-tile-select-group.js.map +1 -1
  1410. package/dist/components/calcite-tile-select.js +5 -5
  1411. package/dist/components/calcite-tile-select.js.map +1 -1
  1412. package/dist/components/calcite-tile.js +6 -5
  1413. package/dist/components/calcite-tile.js.map +1 -1
  1414. package/dist/components/calcite-time-picker.js +1 -1
  1415. package/dist/components/calcite-tip-group.js +1 -1
  1416. package/dist/components/calcite-tip-manager.js +1 -1
  1417. package/dist/components/calcite-tip.js +1 -1
  1418. package/dist/components/calcite-tooltip.js +1 -1
  1419. package/dist/components/calcite-tree-item.js +6 -7
  1420. package/dist/components/calcite-tree-item.js.map +1 -1
  1421. package/dist/components/calcite-tree.js +1 -1
  1422. package/dist/components/calcite-value-list-item.js +6 -6
  1423. package/dist/components/calcite-value-list-item.js.map +1 -1
  1424. package/dist/components/calcite-value-list.js +2 -2
  1425. package/dist/components/calcite-value-list.js.map +1 -1
  1426. package/dist/components/checkbox.js +5 -5
  1427. package/dist/components/checkbox.js.map +1 -1
  1428. package/dist/components/chip.js +8 -7
  1429. package/dist/components/chip.js.map +1 -1
  1430. package/dist/components/color-picker-hex-input.js +1 -1
  1431. package/dist/components/color-picker-swatch.js +1 -1
  1432. package/dist/components/combobox-item.js +7 -6
  1433. package/dist/components/combobox-item.js.map +1 -1
  1434. package/dist/components/combobox.js +6 -6
  1435. package/dist/components/combobox.js.map +1 -1
  1436. package/dist/components/component.js +1 -1
  1437. package/dist/components/conditionalSlot.js +1 -1
  1438. package/dist/components/cs.js +1 -1
  1439. package/dist/components/da.js +1 -1
  1440. package/dist/components/date-picker-day.js +5 -8
  1441. package/dist/components/date-picker-day.js.map +1 -1
  1442. package/dist/components/date-picker-month-header.js +1 -1
  1443. package/dist/components/date-picker-month.js +1 -1
  1444. package/dist/components/date-picker.js +1 -1
  1445. package/dist/components/date.js +1 -1
  1446. package/dist/components/de-at.js +1 -1
  1447. package/dist/components/de-ch.js +1 -1
  1448. package/dist/components/de.js +1 -1
  1449. package/dist/components/debounce.js +1 -1
  1450. package/dist/components/dom.js +1 -1
  1451. package/dist/components/dropdown.js +5 -5
  1452. package/dist/components/dropdown.js.map +1 -1
  1453. package/dist/components/el.js +1 -1
  1454. package/dist/components/en-au.js +1 -1
  1455. package/dist/components/en-ca.js +1 -1
  1456. package/dist/components/en-gb.js +1 -1
  1457. package/dist/components/es-mx.js +1 -1
  1458. package/dist/components/es.js +1 -1
  1459. package/dist/components/et.js +1 -1
  1460. package/dist/components/fi.js +1 -1
  1461. package/dist/components/filter.js +1 -1
  1462. package/dist/components/filter2.js +9 -7
  1463. package/dist/components/filter2.js.map +1 -1
  1464. package/dist/components/floating-ui.js +1 -1
  1465. package/dist/components/focusTrapComponent.js +1 -1
  1466. package/dist/components/form.js +1 -1
  1467. package/dist/components/fr-ch.js +1 -1
  1468. package/dist/components/fr.js +1 -1
  1469. package/dist/components/graph.js +1 -1
  1470. package/dist/components/guid.js +1 -1
  1471. package/dist/components/handle.js +2 -2
  1472. package/dist/components/handle.js.map +1 -1
  1473. package/dist/components/he.js +1 -1
  1474. package/dist/components/hi.js +1 -1
  1475. package/dist/components/hr.js +1 -1
  1476. package/dist/components/hu.js +1 -1
  1477. package/dist/components/icon.js +1 -1
  1478. package/dist/components/id.js +1 -1
  1479. package/dist/components/index.js +1 -1
  1480. package/dist/components/index2.js +1 -1
  1481. package/dist/components/index3.js +1 -1
  1482. package/dist/components/index4.js +1 -1
  1483. package/dist/components/input-message.js +1 -1
  1484. package/dist/components/input-number.js +5 -5
  1485. package/dist/components/input-number.js.map +1 -1
  1486. package/dist/components/input-text.js +4 -4
  1487. package/dist/components/input-text.js.map +1 -1
  1488. package/dist/components/input.js +5 -5
  1489. package/dist/components/input.js.map +1 -1
  1490. package/dist/components/interactive.js +15 -17
  1491. package/dist/components/interactive.js.map +1 -1
  1492. package/dist/components/it-ch.js +1 -1
  1493. package/dist/components/it.js +1 -1
  1494. package/dist/components/ja.js +1 -1
  1495. package/dist/components/key.js +1 -1
  1496. package/dist/components/ko.js +1 -1
  1497. package/dist/components/label.js +2 -2
  1498. package/dist/components/label.js.map +1 -1
  1499. package/dist/components/label2.js +1 -1
  1500. package/dist/components/link.js +8 -8
  1501. package/dist/components/link.js.map +1 -1
  1502. package/dist/components/loadable.js +1 -1
  1503. package/dist/components/loader.js +1 -1
  1504. package/dist/components/locale.js +1 -1
  1505. package/dist/components/lt.js +1 -1
  1506. package/dist/components/lv.js +1 -1
  1507. package/dist/components/math.js +1 -1
  1508. package/dist/components/menu.js +1 -1
  1509. package/dist/components/mk.js +1 -1
  1510. package/dist/components/nb.js +1 -1
  1511. package/dist/components/nl.js +1 -1
  1512. package/dist/components/observers.js +1 -1
  1513. package/dist/components/openCloseComponent.js +1 -1
  1514. package/dist/components/pagination.js +2 -2
  1515. package/dist/components/pagination.js.map +1 -1
  1516. package/dist/components/panel.js +6 -6
  1517. package/dist/components/panel.js.map +1 -1
  1518. package/dist/components/pick-list-item.js +6 -6
  1519. package/dist/components/pick-list-item.js.map +1 -1
  1520. package/dist/components/pl.js +1 -1
  1521. package/dist/components/popover.js +1 -1
  1522. package/dist/components/progress.js +1 -1
  1523. package/dist/components/pt-br.js +1 -1
  1524. package/dist/components/pt.js +1 -1
  1525. package/dist/components/resources.js +1 -1
  1526. package/dist/components/resources2.js +1 -1
  1527. package/dist/components/resources3.js +1 -1
  1528. package/dist/components/resources4.js +1 -1
  1529. package/dist/components/resources5.js +1 -1
  1530. package/dist/components/ro.js +1 -1
  1531. package/dist/components/ru.js +1 -1
  1532. package/dist/components/scrim.js +1 -1
  1533. package/dist/components/shared-list-render.js +13 -11
  1534. package/dist/components/shared-list-render.js.map +1 -1
  1535. package/dist/components/sk.js +1 -1
  1536. package/dist/components/sl.js +1 -1
  1537. package/dist/components/sortableComponent.js +1 -1
  1538. package/dist/components/sr.js +1 -1
  1539. package/dist/components/stack.js +1 -1
  1540. package/dist/components/sv.js +1 -1
  1541. package/dist/components/switch.js +5 -5
  1542. package/dist/components/switch.js.map +1 -1
  1543. package/dist/components/t9n.js +1 -1
  1544. package/dist/components/tab-nav.js +1 -1
  1545. package/dist/components/tab-title.js +6 -8
  1546. package/dist/components/tab-title.js.map +1 -1
  1547. package/dist/components/tab.js +1 -1
  1548. package/dist/components/table-cell.js +5 -5
  1549. package/dist/components/table-cell.js.map +1 -1
  1550. package/dist/components/table-header.js +1 -1
  1551. package/dist/components/tabs.js +1 -1
  1552. package/dist/components/th.js +1 -1
  1553. package/dist/components/throttle.js +1 -1
  1554. package/dist/components/time-picker.js +1 -1
  1555. package/dist/components/tr.js +1 -1
  1556. package/dist/components/uk.js +1 -1
  1557. package/dist/components/utils.js +1 -1
  1558. package/dist/components/utils2.js +1 -1
  1559. package/dist/components/utils3.js +1 -1
  1560. package/dist/components/vi.js +1 -1
  1561. package/dist/components/zh-cn.js +1 -1
  1562. package/dist/components/zh-hk.js +1 -1
  1563. package/dist/components/zh-tw.js +1 -1
  1564. package/dist/esm/ExpandToggle-edb9485e.js +102 -0
  1565. package/dist/esm/ExpandToggle-edb9485e.js.map +1 -0
  1566. package/dist/esm/FloatingArrow-c5477ca2.js +47 -0
  1567. package/dist/esm/FloatingArrow-c5477ca2.js.map +1 -0
  1568. package/dist/esm/Heading-cbd54738.js +19 -0
  1569. package/dist/esm/Heading-cbd54738.js.map +1 -0
  1570. package/dist/esm/Validation-9bd743c3.js +16 -0
  1571. package/dist/esm/Validation-9bd743c3.js.map +1 -0
  1572. package/dist/esm/app-globals-5d2e1be3.js +59 -0
  1573. package/dist/esm/app-globals-5d2e1be3.js.map +1 -0
  1574. package/dist/esm/ar-fd708bbf.js +104 -0
  1575. package/dist/esm/ar-fd708bbf.js.map +1 -0
  1576. package/dist/esm/array-dd5632a3.js +12 -0
  1577. package/dist/esm/array-dd5632a3.js.map +1 -0
  1578. package/dist/esm/bg-e61d97df.js +82 -0
  1579. package/dist/esm/bg-e61d97df.js.map +1 -0
  1580. package/dist/esm/browser-e4f0e125.js +18 -0
  1581. package/dist/esm/browser-e4f0e125.js.map +1 -0
  1582. package/dist/esm/bs-6eed7f36.js +51 -0
  1583. package/dist/esm/bs-6eed7f36.js.map +1 -0
  1584. package/dist/esm/ca-89ea8825.js +71 -0
  1585. package/dist/esm/ca-89ea8825.js.map +1 -0
  1586. package/dist/esm/calcite-accordion_2.entry.js +8 -8
  1587. package/dist/esm/calcite-action-bar.entry.js +15 -15
  1588. package/dist/esm/calcite-action-group.entry.js +13 -13
  1589. package/dist/esm/calcite-action-menu.entry.js +9 -9
  1590. package/dist/esm/calcite-action-pad.entry.js +14 -14
  1591. package/dist/esm/calcite-action.entry.js +16 -16
  1592. package/dist/esm/calcite-action.entry.js.map +1 -1
  1593. package/dist/esm/calcite-alert.entry.js +13 -13
  1594. package/dist/esm/calcite-avatar.entry.js +6 -6
  1595. package/dist/esm/calcite-block_2.entry.js +18 -18
  1596. package/dist/esm/calcite-block_2.entry.js.map +1 -1
  1597. package/dist/esm/calcite-button.entry.js +18 -18
  1598. package/dist/esm/calcite-button.entry.js.map +1 -1
  1599. package/dist/esm/calcite-card.entry.js +10 -10
  1600. package/dist/esm/calcite-checkbox.entry.js +15 -15
  1601. package/dist/esm/calcite-checkbox.entry.js.map +1 -1
  1602. package/dist/esm/calcite-chip-group.entry.js +12 -11
  1603. package/dist/esm/calcite-chip-group.entry.js.map +1 -1
  1604. package/dist/esm/calcite-chip.entry.js +20 -19
  1605. package/dist/esm/calcite-chip.entry.js.map +1 -1
  1606. package/dist/esm/calcite-color-picker_3.entry.js +19 -19
  1607. package/dist/esm/calcite-color-picker_3.entry.js.map +1 -1
  1608. package/dist/esm/calcite-combobox_3.entry.js +30 -29
  1609. package/dist/esm/calcite-combobox_3.entry.js.map +1 -1
  1610. package/dist/esm/calcite-date-picker_4.entry.js +18 -21
  1611. package/dist/esm/calcite-date-picker_4.entry.js.map +1 -1
  1612. package/dist/esm/calcite-dropdown_3.entry.js +22 -21
  1613. package/dist/esm/calcite-dropdown_3.entry.js.map +1 -1
  1614. package/dist/esm/calcite-fab.entry.js +11 -11
  1615. package/dist/esm/calcite-fab.entry.js.map +1 -1
  1616. package/dist/esm/calcite-filter.entry.js +20 -18
  1617. package/dist/esm/calcite-filter.entry.js.map +1 -1
  1618. package/dist/esm/calcite-flow-item.entry.js +16 -16
  1619. package/dist/esm/calcite-flow-item.entry.js.map +1 -1
  1620. package/dist/esm/calcite-flow.entry.js +4 -4
  1621. package/dist/esm/calcite-graph_2.entry.js +18 -18
  1622. package/dist/esm/calcite-graph_2.entry.js.map +1 -1
  1623. package/dist/esm/calcite-handle.entry.js +13 -13
  1624. package/dist/esm/calcite-handle.entry.js.map +1 -1
  1625. package/dist/esm/calcite-icon.entry.js +6 -6
  1626. package/dist/esm/calcite-inline-editable.entry.js +17 -17
  1627. package/dist/esm/calcite-inline-editable.entry.js.map +1 -1
  1628. package/dist/esm/calcite-input-date-picker.entry.js +27 -25
  1629. package/dist/esm/calcite-input-date-picker.entry.js.map +1 -1
  1630. package/dist/esm/calcite-input-message.entry.js +5 -5
  1631. package/dist/esm/calcite-input-number.entry.js +19 -19
  1632. package/dist/esm/calcite-input-number.entry.js.map +1 -1
  1633. package/dist/esm/calcite-input-text.entry.js +18 -18
  1634. package/dist/esm/calcite-input-text.entry.js.map +1 -1
  1635. package/dist/esm/calcite-input-time-picker.calcite-time-picker-468293cc.js +2914 -0
  1636. package/dist/esm/calcite-input-time-picker.calcite-time-picker-468293cc.js.map +1 -0
  1637. package/dist/esm/calcite-input-time-picker_2.entry.js +20 -20
  1638. package/dist/esm/calcite-input-time-zone.entry.js +20 -20
  1639. package/dist/esm/calcite-input-time-zone.entry.js.map +1 -1
  1640. package/dist/esm/calcite-input.entry.js +19 -19
  1641. package/dist/esm/calcite-input.entry.js.map +1 -1
  1642. package/dist/esm/calcite-label.entry.js +8 -8
  1643. package/dist/esm/calcite-label.entry.js.map +1 -1
  1644. package/dist/esm/calcite-link.entry.js +14 -14
  1645. package/dist/esm/calcite-link.entry.js.map +1 -1
  1646. package/dist/esm/calcite-list_3.entry.js +26 -26
  1647. package/dist/esm/calcite-list_3.entry.js.map +1 -1
  1648. package/dist/esm/calcite-loader.entry.js +3 -3
  1649. package/dist/esm/calcite-menu_2.entry.js +10 -10
  1650. package/dist/esm/calcite-meter.entry.js +11 -11
  1651. package/dist/esm/calcite-meter.entry.js.map +1 -1
  1652. package/dist/esm/calcite-modal.entry.js +14 -14
  1653. package/dist/esm/calcite-navigation_3.entry.js +6 -6
  1654. package/dist/esm/calcite-notice.entry.js +14 -14
  1655. package/dist/esm/calcite-option_3.entry.js +17 -16
  1656. package/dist/esm/calcite-option_3.entry.js.map +1 -1
  1657. package/dist/esm/calcite-pagination.entry.js +12 -12
  1658. package/dist/esm/calcite-pagination.entry.js.map +1 -1
  1659. package/dist/esm/calcite-panel.entry.js +18 -18
  1660. package/dist/esm/calcite-panel.entry.js.map +1 -1
  1661. package/dist/esm/calcite-pick-list_3.entry.js +21 -21
  1662. package/dist/esm/calcite-pick-list_3.entry.js.map +1 -1
  1663. package/dist/esm/calcite-popover.entry.js +17 -17
  1664. package/dist/esm/calcite-progress.entry.js +5 -5
  1665. package/dist/esm/calcite-radio-button-group.entry.js +4 -4
  1666. package/dist/esm/calcite-radio-button.entry.js +15 -15
  1667. package/dist/esm/calcite-radio-button.entry.js.map +1 -1
  1668. package/dist/esm/calcite-rating.entry.js +18 -18
  1669. package/dist/esm/calcite-rating.entry.js.map +1 -1
  1670. package/dist/esm/calcite-scrim.entry.js +9 -9
  1671. package/dist/esm/calcite-segmented-control_2.entry.js +14 -14
  1672. package/dist/esm/calcite-segmented-control_2.entry.js.map +1 -1
  1673. package/dist/esm/calcite-sheet.entry.js +9 -9
  1674. package/dist/esm/calcite-shell_3.entry.js +11 -11
  1675. package/dist/esm/calcite-sortable-list.entry.js +13 -13
  1676. package/dist/esm/calcite-sortable-list.entry.js.map +1 -1
  1677. package/dist/esm/calcite-split-button.entry.js +7 -7
  1678. package/dist/esm/calcite-split-button.entry.js.map +1 -1
  1679. package/dist/esm/calcite-stack.entry.js +6 -6
  1680. package/dist/esm/calcite-stepper_2.entry.js +16 -16
  1681. package/dist/esm/calcite-stepper_2.entry.js.map +1 -1
  1682. package/dist/esm/calcite-switch.entry.js +15 -15
  1683. package/dist/esm/calcite-switch.entry.js.map +1 -1
  1684. package/dist/esm/calcite-tab_4.entry.js +16 -18
  1685. package/dist/esm/calcite-tab_4.entry.js.map +1 -1
  1686. package/dist/esm/calcite-table-cell_2.entry.js +16 -16
  1687. package/dist/esm/calcite-table-cell_2.entry.js.map +1 -1
  1688. package/dist/esm/calcite-table-row.entry.js +12 -12
  1689. package/dist/esm/calcite-table-row.entry.js.map +1 -1
  1690. package/dist/esm/calcite-table.entry.js +11 -11
  1691. package/dist/esm/calcite-text-area.entry.js +21 -21
  1692. package/dist/esm/calcite-text-area.entry.js.map +1 -1
  1693. package/dist/esm/calcite-tile-select_2.entry.js +11 -11
  1694. package/dist/esm/calcite-tile-select_2.entry.js.map +1 -1
  1695. package/dist/esm/calcite-tile.entry.js +12 -11
  1696. package/dist/esm/calcite-tile.entry.js.map +1 -1
  1697. package/dist/esm/calcite-tip_3.entry.js +11 -11
  1698. package/dist/esm/calcite-tooltip.entry.js +9 -9
  1699. package/dist/esm/calcite-tree_2.entry.js +14 -15
  1700. package/dist/esm/calcite-tree_2.entry.js.map +1 -1
  1701. package/dist/esm/calcite-value-list_2.entry.js +22 -22
  1702. package/dist/esm/calcite-value-list_2.entry.js.map +1 -1
  1703. package/dist/esm/calcite.js +5 -5
  1704. package/dist/esm/component-8e88e07a.js +27 -0
  1705. package/dist/esm/component-8e88e07a.js.map +1 -0
  1706. package/dist/esm/conditionalSlot-9c98f342.js +57 -0
  1707. package/dist/esm/conditionalSlot-9c98f342.js.map +1 -0
  1708. package/dist/esm/cs-4e817691.js +147 -0
  1709. package/dist/esm/cs-4e817691.js.map +1 -0
  1710. package/dist/esm/da-43b77376.js +66 -0
  1711. package/dist/esm/da-43b77376.js.map +1 -0
  1712. package/dist/esm/de-416d5c11.js +91 -0
  1713. package/dist/esm/de-416d5c11.js.map +1 -0
  1714. package/dist/esm/de-at-f79550ab.js +90 -0
  1715. package/dist/esm/de-at-f79550ab.js.map +1 -0
  1716. package/dist/esm/de-ch-5c0dd30a.js +90 -0
  1717. package/dist/esm/de-ch-5c0dd30a.js.map +1 -0
  1718. package/dist/esm/debounce-b9ba4f70.js +489 -0
  1719. package/dist/esm/debounce-b9ba4f70.js.map +1 -0
  1720. package/dist/esm/dom-168a47e4.js +1053 -0
  1721. package/dist/esm/dom-168a47e4.js.map +1 -0
  1722. package/dist/esm/el-c2db3ffd.js +66 -0
  1723. package/dist/esm/el-c2db3ffd.js.map +1 -0
  1724. package/dist/esm/en-au-0ed2bb7e.js +66 -0
  1725. package/dist/esm/en-au-0ed2bb7e.js.map +1 -0
  1726. package/dist/esm/en-ca-8b873f52.js +65 -0
  1727. package/dist/esm/en-ca-8b873f52.js.map +1 -0
  1728. package/dist/esm/en-gb-7329d4df.js +69 -0
  1729. package/dist/esm/en-gb-7329d4df.js.map +1 -0
  1730. package/dist/esm/es-e93e0cdf.js +66 -0
  1731. package/dist/esm/es-e93e0cdf.js.map +1 -0
  1732. package/dist/esm/es-mx-b9c721a0.js +65 -0
  1733. package/dist/esm/es-mx-b9c721a0.js.map +1 -0
  1734. package/dist/esm/et-38b8de59.js +92 -0
  1735. package/dist/esm/et-38b8de59.js.map +1 -0
  1736. package/dist/esm/fi-b7e13179.js +115 -0
  1737. package/dist/esm/fi-b7e13179.js.map +1 -0
  1738. package/dist/esm/filter-c0bc37ee.js +760 -0
  1739. package/dist/esm/filter-c0bc37ee.js.map +1 -0
  1740. package/dist/esm/floating-ui-c6393b6b.js +1908 -0
  1741. package/dist/esm/floating-ui-c6393b6b.js.map +1 -0
  1742. package/dist/esm/focusTrapComponent-28d8abe1.js +1015 -0
  1743. package/dist/esm/focusTrapComponent-28d8abe1.js.map +1 -0
  1744. package/dist/esm/form-1823324e.js +249 -0
  1745. package/dist/esm/form-1823324e.js.map +1 -0
  1746. package/dist/esm/fr-261d1187.js +68 -0
  1747. package/dist/esm/fr-261d1187.js.map +1 -0
  1748. package/dist/esm/fr-ch-4f647871.js +66 -0
  1749. package/dist/esm/fr-ch-4f647871.js.map +1 -0
  1750. package/dist/esm/guid-7dc4951c.js +21 -0
  1751. package/dist/esm/guid-7dc4951c.js.map +1 -0
  1752. package/dist/esm/he-6e36e307.js +105 -0
  1753. package/dist/esm/he-6e36e307.js.map +1 -0
  1754. package/dist/esm/hi-b2397c39.js +65 -0
  1755. package/dist/esm/hi-b2397c39.js.map +1 -0
  1756. package/dist/esm/hr-fdd2b772.js +80 -0
  1757. package/dist/esm/hr-fdd2b772.js.map +1 -0
  1758. package/dist/esm/hu-88427f98.js +88 -0
  1759. package/dist/esm/hu-88427f98.js.map +1 -0
  1760. package/dist/esm/id-5b069eee.js +66 -0
  1761. package/dist/esm/id-5b069eee.js.map +1 -0
  1762. package/dist/esm/index-0756ca9c.js +73 -0
  1763. package/dist/esm/index-0756ca9c.js.map +1 -0
  1764. package/dist/esm/index-11fbae42.js +2612 -0
  1765. package/dist/esm/index-11fbae42.js.map +1 -0
  1766. package/dist/esm/index-32ae04ac.js +206 -0
  1767. package/dist/esm/index-32ae04ac.js.map +1 -0
  1768. package/dist/esm/index.js +1 -1
  1769. package/dist/esm/interactive-b16eedd3.js +139 -0
  1770. package/dist/esm/interactive-b16eedd3.js.map +1 -0
  1771. package/dist/esm/it-a26431bd.js +66 -0
  1772. package/dist/esm/it-a26431bd.js.map +1 -0
  1773. package/dist/esm/it-ch-e62c9782.js +66 -0
  1774. package/dist/esm/it-ch-e62c9782.js.map +1 -0
  1775. package/dist/esm/ja-065b0ad4.js +72 -0
  1776. package/dist/esm/ja-065b0ad4.js.map +1 -0
  1777. package/dist/esm/key-e5879ef9.js +13 -0
  1778. package/dist/esm/key-e5879ef9.js.map +1 -0
  1779. package/dist/esm/ko-fe45b618.js +72 -0
  1780. package/dist/esm/ko-fe45b618.js.map +1 -0
  1781. package/dist/esm/label-0d08938c.js +176 -0
  1782. package/dist/esm/label-0d08938c.js.map +1 -0
  1783. package/dist/esm/loadable-d85f39c9.js +86 -0
  1784. package/dist/esm/loadable-d85f39c9.js.map +1 -0
  1785. package/dist/esm/loader.js +5 -5
  1786. package/dist/esm/locale-06c0a36c.js +563 -0
  1787. package/dist/esm/locale-06c0a36c.js.map +1 -0
  1788. package/dist/esm/lt-8097d4f0.js +97 -0
  1789. package/dist/esm/lt-8097d4f0.js.map +1 -0
  1790. package/dist/esm/lv-e17163bc.js +66 -0
  1791. package/dist/esm/lv-e17163bc.js.map +1 -0
  1792. package/dist/esm/math-23599965.js +51 -0
  1793. package/dist/esm/math-23599965.js.map +1 -0
  1794. package/dist/esm/mk-8bf879f8.js +66 -0
  1795. package/dist/esm/mk-8bf879f8.js.map +1 -0
  1796. package/dist/esm/nb-8bcdfd13.js +67 -0
  1797. package/dist/esm/nb-8bcdfd13.js.map +1 -0
  1798. package/dist/esm/nl-4e4f88bd.js +67 -0
  1799. package/dist/esm/nl-4e4f88bd.js.map +1 -0
  1800. package/dist/esm/observers-473d9af3.js +48 -0
  1801. package/dist/esm/observers-473d9af3.js.map +1 -0
  1802. package/dist/esm/openCloseComponent-babbe81b.js +87 -0
  1803. package/dist/esm/openCloseComponent-babbe81b.js.map +1 -0
  1804. package/dist/esm/pl-74578bbf.js +114 -0
  1805. package/dist/esm/pl-74578bbf.js.map +1 -0
  1806. package/dist/esm/pt-74d25205.js +67 -0
  1807. package/dist/esm/pt-74d25205.js.map +1 -0
  1808. package/dist/esm/pt-br-9444b7dd.js +65 -0
  1809. package/dist/esm/pt-br-9444b7dd.js.map +1 -0
  1810. package/dist/esm/resources-1cc1f6cc.js +19 -0
  1811. package/dist/esm/resources-1cc1f6cc.js.map +1 -0
  1812. package/dist/esm/resources-9e813f2a.js +387 -0
  1813. package/dist/esm/resources-9e813f2a.js.map +1 -0
  1814. package/dist/esm/resources-a9f954bc.js +17 -0
  1815. package/dist/esm/resources-a9f954bc.js.map +1 -0
  1816. package/dist/esm/resources-b3394f92.js +45 -0
  1817. package/dist/esm/resources-b3394f92.js.map +1 -0
  1818. package/dist/esm/resources-d809ea6c.js +25 -0
  1819. package/dist/esm/resources-d809ea6c.js.map +1 -0
  1820. package/dist/esm/resources-eacb5556.js +21 -0
  1821. package/dist/esm/resources-eacb5556.js.map +1 -0
  1822. package/dist/esm/resources-ff24aaf8.js +23 -0
  1823. package/dist/esm/resources-ff24aaf8.js.map +1 -0
  1824. package/dist/esm/ro-b348c454.js +66 -0
  1825. package/dist/esm/ro-b348c454.js.map +1 -0
  1826. package/dist/esm/ru-6244b0a1.js +126 -0
  1827. package/dist/esm/ru-6244b0a1.js.map +1 -0
  1828. package/dist/esm/sk-ce73cd46.js +148 -0
  1829. package/dist/esm/sk-ce73cd46.js.map +1 -0
  1830. package/dist/esm/sl-ac3de93c.js +168 -0
  1831. package/dist/esm/sl-ac3de93c.js.map +1 -0
  1832. package/dist/esm/sortableComponent-61cf7502.js +2735 -0
  1833. package/dist/esm/sortableComponent-61cf7502.js.map +1 -0
  1834. package/dist/esm/sr-067978ec.js +101 -0
  1835. package/dist/esm/sr-067978ec.js.map +1 -0
  1836. package/dist/esm/sv-84b1a783.js +71 -0
  1837. package/dist/esm/sv-84b1a783.js.map +1 -0
  1838. package/dist/esm/t9n-396cc012.js +92 -0
  1839. package/dist/esm/t9n-396cc012.js.map +1 -0
  1840. package/dist/esm/th-b3d0621d.js +65 -0
  1841. package/dist/esm/th-b3d0621d.js.map +1 -0
  1842. package/dist/esm/throttle-a1b7b256.js +75 -0
  1843. package/dist/esm/throttle-a1b7b256.js.map +1 -0
  1844. package/dist/esm/tr-3e758aba.js +66 -0
  1845. package/dist/esm/tr-3e758aba.js.map +1 -0
  1846. package/dist/esm/uk-b504d22b.js +104 -0
  1847. package/dist/esm/uk-b504d22b.js.map +1 -0
  1848. package/dist/esm/utils-2dd3bb76.js +200 -0
  1849. package/dist/esm/utils-2dd3bb76.js.map +1 -0
  1850. package/dist/esm/utils-d4488723.js +289 -0
  1851. package/dist/esm/utils-d4488723.js.map +1 -0
  1852. package/dist/esm/vi-8dddd4db.js +70 -0
  1853. package/dist/esm/vi-8dddd4db.js.map +1 -0
  1854. package/dist/esm/zh-cn-5f178a0a.js +94 -0
  1855. package/dist/esm/zh-cn-5f178a0a.js.map +1 -0
  1856. package/dist/esm/zh-hk-19b0f47a.js +71 -0
  1857. package/dist/esm/zh-hk-19b0f47a.js.map +1 -0
  1858. package/dist/esm/zh-tw-621425e6.js +92 -0
  1859. package/dist/esm/zh-tw-621425e6.js.map +1 -0
  1860. package/dist/extras/docs-json.json +1 -1
  1861. package/dist/extras/translations-json.json +1 -1
  1862. package/dist/loader/cdn.js +1 -1
  1863. package/dist/loader/index.cjs.js +1 -1
  1864. package/dist/loader/index.es2017.js +1 -1
  1865. package/dist/loader/index.js +1 -1
  1866. package/dist/stencil.config.js +1 -1
  1867. package/dist/support/formatting.js +1 -1
  1868. package/dist/support/preact.js +1 -1
  1869. package/dist/tailwind.config.js +1 -1
  1870. package/dist/types/components/date-picker-day/date-picker-day.d.ts +0 -1
  1871. package/dist/types/utils/interactive.d.ts +10 -4
  1872. package/hydrate/index.js +196 -193
  1873. package/package.json +3 -3
  1874. package/dist/calcite/p-028e43a6.js +0 -7
  1875. package/dist/calcite/p-04a1a09b.entry.js +0 -7
  1876. package/dist/calcite/p-04a1a09b.entry.js.map +0 -1
  1877. package/dist/calcite/p-04ff8a80.js +0 -7
  1878. package/dist/calcite/p-067d6535.js +0 -7
  1879. package/dist/calcite/p-07c39ac8.js +0 -7
  1880. package/dist/calcite/p-0db1222f.js +0 -7
  1881. package/dist/calcite/p-0db1222f.js.map +0 -1
  1882. package/dist/calcite/p-0f3afb46.entry.js +0 -7
  1883. package/dist/calcite/p-1235be9f.entry.js +0 -7
  1884. package/dist/calcite/p-1235be9f.entry.js.map +0 -1
  1885. package/dist/calcite/p-12a478b3.js +0 -12
  1886. package/dist/calcite/p-12ac2434.js +0 -7
  1887. package/dist/calcite/p-14e68369.entry.js +0 -7
  1888. package/dist/calcite/p-155be568.js +0 -7
  1889. package/dist/calcite/p-179530c9.entry.js +0 -7
  1890. package/dist/calcite/p-18691380.entry.js +0 -7
  1891. package/dist/calcite/p-18691380.entry.js.map +0 -1
  1892. package/dist/calcite/p-19113674.entry.js +0 -7
  1893. package/dist/calcite/p-19a3dd82.entry.js +0 -7
  1894. package/dist/calcite/p-19a3dd82.entry.js.map +0 -1
  1895. package/dist/calcite/p-1bace9e2.js +0 -7
  1896. package/dist/calcite/p-1bcc2962.js +0 -7
  1897. package/dist/calcite/p-1bcc2962.js.map +0 -1
  1898. package/dist/calcite/p-1bd0d224.js +0 -7
  1899. package/dist/calcite/p-1c9e71c8.entry.js +0 -7
  1900. package/dist/calcite/p-1ea97465.entry.js +0 -7
  1901. package/dist/calcite/p-1ea97465.entry.js.map +0 -1
  1902. package/dist/calcite/p-20409563.js +0 -7
  1903. package/dist/calcite/p-24fb5c4d.js +0 -7
  1904. package/dist/calcite/p-255133d2.entry.js +0 -7
  1905. package/dist/calcite/p-2765ec53.js +0 -7
  1906. package/dist/calcite/p-296fa714.js +0 -7
  1907. package/dist/calcite/p-297b91b7.js +0 -7
  1908. package/dist/calcite/p-2e1e8da8.js +0 -7
  1909. package/dist/calcite/p-2f3fc25f.js +0 -7
  1910. package/dist/calcite/p-313c9828.js +0 -7
  1911. package/dist/calcite/p-3235386f.js +0 -7
  1912. package/dist/calcite/p-323e64e5.js +0 -7
  1913. package/dist/calcite/p-3317db6a.entry.js +0 -7
  1914. package/dist/calcite/p-34d69561.entry.js +0 -7
  1915. package/dist/calcite/p-3a23049f.entry.js +0 -7
  1916. package/dist/calcite/p-3c4ffa03.entry.js +0 -7
  1917. package/dist/calcite/p-3c4ffa03.entry.js.map +0 -1
  1918. package/dist/calcite/p-3ee35124.entry.js +0 -7
  1919. package/dist/calcite/p-3ee35124.entry.js.map +0 -1
  1920. package/dist/calcite/p-406ee8b3.js +0 -7
  1921. package/dist/calcite/p-4124d581.entry.js +0 -7
  1922. package/dist/calcite/p-41baa2f3.js +0 -7
  1923. package/dist/calcite/p-41fa000d.entry.js +0 -7
  1924. package/dist/calcite/p-41fa000d.entry.js.map +0 -1
  1925. package/dist/calcite/p-424e6d94.entry.js +0 -7
  1926. package/dist/calcite/p-424e6d94.entry.js.map +0 -1
  1927. package/dist/calcite/p-42b13177.js +0 -7
  1928. package/dist/calcite/p-448db42f.js +0 -7
  1929. package/dist/calcite/p-4490335e.js +0 -7
  1930. package/dist/calcite/p-44defce5.js +0 -7
  1931. package/dist/calcite/p-456bf4d5.js +0 -7
  1932. package/dist/calcite/p-461cfca7.js +0 -11
  1933. package/dist/calcite/p-4708e1b3.entry.js +0 -7
  1934. package/dist/calcite/p-47c69479.entry.js +0 -7
  1935. package/dist/calcite/p-47c69479.entry.js.map +0 -1
  1936. package/dist/calcite/p-482a215e.js +0 -7
  1937. package/dist/calcite/p-4a92783a.entry.js +0 -7
  1938. package/dist/calcite/p-4a92783a.entry.js.map +0 -1
  1939. package/dist/calcite/p-4d7999ab.entry.js +0 -7
  1940. package/dist/calcite/p-4d7999ab.entry.js.map +0 -1
  1941. package/dist/calcite/p-5118bed5.js +0 -7
  1942. package/dist/calcite/p-51d80858.entry.js +0 -7
  1943. package/dist/calcite/p-542a8741.entry.js +0 -7
  1944. package/dist/calcite/p-54b93ebf.entry.js +0 -7
  1945. package/dist/calcite/p-54b93ebf.entry.js.map +0 -1
  1946. package/dist/calcite/p-54caab63.entry.js +0 -7
  1947. package/dist/calcite/p-54caab63.entry.js.map +0 -1
  1948. package/dist/calcite/p-588a657c.entry.js +0 -7
  1949. package/dist/calcite/p-588a657c.entry.js.map +0 -1
  1950. package/dist/calcite/p-59cd57a9.js +0 -7
  1951. package/dist/calcite/p-5ac783f8.js +0 -7
  1952. package/dist/calcite/p-5ff2ed62.js +0 -7
  1953. package/dist/calcite/p-655691bf.entry.js +0 -7
  1954. package/dist/calcite/p-655691bf.entry.js.map +0 -1
  1955. package/dist/calcite/p-6623d005.js +0 -7
  1956. package/dist/calcite/p-675c5ece.js +0 -7
  1957. package/dist/calcite/p-684aa58e.js +0 -7
  1958. package/dist/calcite/p-69a843cf.entry.js +0 -7
  1959. package/dist/calcite/p-69a843cf.entry.js.map +0 -1
  1960. package/dist/calcite/p-6c2a638b.js +0 -7
  1961. package/dist/calcite/p-6c7336e9.js +0 -7
  1962. package/dist/calcite/p-708d784b.entry.js +0 -7
  1963. package/dist/calcite/p-713c6582.js +0 -7
  1964. package/dist/calcite/p-75375100.entry.js +0 -7
  1965. package/dist/calcite/p-75375100.entry.js.map +0 -1
  1966. package/dist/calcite/p-77fadb18.js +0 -7
  1967. package/dist/calcite/p-7c2925c2.js +0 -7
  1968. package/dist/calcite/p-7ccc8cd0.entry.js +0 -7
  1969. package/dist/calcite/p-7ccc8cd0.entry.js.map +0 -1
  1970. package/dist/calcite/p-7cd6634d.js +0 -7
  1971. package/dist/calcite/p-7d4f3dc7.entry.js +0 -7
  1972. package/dist/calcite/p-7e8ae5cf.entry.js +0 -7
  1973. package/dist/calcite/p-8196758d.js +0 -7
  1974. package/dist/calcite/p-85bcaffe.js +0 -7
  1975. package/dist/calcite/p-8602260c.js +0 -7
  1976. package/dist/calcite/p-87276ff7.entry.js +0 -7
  1977. package/dist/calcite/p-87276ff7.entry.js.map +0 -1
  1978. package/dist/calcite/p-8741f360.entry.js +0 -7
  1979. package/dist/calcite/p-875afa43.entry.js +0 -7
  1980. package/dist/calcite/p-875afa43.entry.js.map +0 -1
  1981. package/dist/calcite/p-8820b012.entry.js +0 -7
  1982. package/dist/calcite/p-8820b012.entry.js.map +0 -1
  1983. package/dist/calcite/p-8d0ad926.entry.js +0 -7
  1984. package/dist/calcite/p-8d0ad926.entry.js.map +0 -1
  1985. package/dist/calcite/p-8f149529.entry.js +0 -7
  1986. package/dist/calcite/p-8f149529.entry.js.map +0 -1
  1987. package/dist/calcite/p-92045ec5.entry.js +0 -7
  1988. package/dist/calcite/p-92045ec5.entry.js.map +0 -1
  1989. package/dist/calcite/p-924fc7b9.entry.js +0 -7
  1990. package/dist/calcite/p-924fc7b9.entry.js.map +0 -1
  1991. package/dist/calcite/p-937586cf.entry.js +0 -7
  1992. package/dist/calcite/p-941bc8d1.js +0 -7
  1993. package/dist/calcite/p-9479e08b.js +0 -7
  1994. package/dist/calcite/p-95b48f8d.js +0 -7
  1995. package/dist/calcite/p-961a2d14.js +0 -7
  1996. package/dist/calcite/p-975df908.js +0 -7
  1997. package/dist/calcite/p-9a7cb976.js +0 -7
  1998. package/dist/calcite/p-9d5e6159.entry.js +0 -7
  1999. package/dist/calcite/p-9f5112cd.js +0 -7
  2000. package/dist/calcite/p-9f5a55f5.entry.js +0 -7
  2001. package/dist/calcite/p-9f5a55f5.entry.js.map +0 -1
  2002. package/dist/calcite/p-9fb472eb.js +0 -7
  2003. package/dist/calcite/p-a0216ff2.js +0 -7
  2004. package/dist/calcite/p-a1c5f5e3.entry.js +0 -7
  2005. package/dist/calcite/p-a1c77a82.entry.js +0 -7
  2006. package/dist/calcite/p-a1c77a82.entry.js.map +0 -1
  2007. package/dist/calcite/p-a4149463.entry.js +0 -7
  2008. package/dist/calcite/p-a698cb09.js +0 -7
  2009. package/dist/calcite/p-a825c716.js +0 -7
  2010. package/dist/calcite/p-a8e2f744.entry.js +0 -7
  2011. package/dist/calcite/p-a8e2f744.entry.js.map +0 -1
  2012. package/dist/calcite/p-a9084938.js +0 -7
  2013. package/dist/calcite/p-a917e40a.js +0 -7
  2014. package/dist/calcite/p-a917e40a.js.map +0 -1
  2015. package/dist/calcite/p-a9abd43d.js +0 -7
  2016. package/dist/calcite/p-a9c39fd2.js +0 -7
  2017. package/dist/calcite/p-ac1461fd.js +0 -7
  2018. package/dist/calcite/p-ae1ba3d0.js +0 -7
  2019. package/dist/calcite/p-b05c7846.entry.js +0 -7
  2020. package/dist/calcite/p-b05c7846.entry.js.map +0 -1
  2021. package/dist/calcite/p-b2a4e71b.js +0 -7
  2022. package/dist/calcite/p-b4e34aa8.entry.js +0 -7
  2023. package/dist/calcite/p-b4e34aa8.entry.js.map +0 -1
  2024. package/dist/calcite/p-b6d34f71.js +0 -7
  2025. package/dist/calcite/p-bab2d75e.entry.js +0 -7
  2026. package/dist/calcite/p-bab2d75e.entry.js.map +0 -1
  2027. package/dist/calcite/p-bb78d0f7.js +0 -7
  2028. package/dist/calcite/p-bc82f7aa.entry.js +0 -7
  2029. package/dist/calcite/p-bc82f7aa.entry.js.map +0 -1
  2030. package/dist/calcite/p-c0abe5c8.entry.js +0 -7
  2031. package/dist/calcite/p-c0abe5c8.entry.js.map +0 -1
  2032. package/dist/calcite/p-c2cf8d68.js +0 -7
  2033. package/dist/calcite/p-c3d03763.entry.js +0 -7
  2034. package/dist/calcite/p-c3d03763.entry.js.map +0 -1
  2035. package/dist/calcite/p-c4036842.js +0 -7
  2036. package/dist/calcite/p-c5e6294c.entry.js +0 -7
  2037. package/dist/calcite/p-c8abb3e4.js +0 -7
  2038. package/dist/calcite/p-c8fd546e.entry.js +0 -7
  2039. package/dist/calcite/p-c9d56bea.js +0 -7
  2040. package/dist/calcite/p-cae75aea.entry.js +0 -7
  2041. package/dist/calcite/p-cb2ea42f.js +0 -7
  2042. package/dist/calcite/p-ce27299c.js +0 -7
  2043. package/dist/calcite/p-cfd87c82.entry.js +0 -7
  2044. package/dist/calcite/p-cfd87c82.entry.js.map +0 -1
  2045. package/dist/calcite/p-d00c1493.js +0 -7
  2046. package/dist/calcite/p-d6a368e1.js +0 -7
  2047. package/dist/calcite/p-d73f4d6f.js +0 -7
  2048. package/dist/calcite/p-d7695581.js +0 -7
  2049. package/dist/calcite/p-d9081105.js +0 -7
  2050. package/dist/calcite/p-dc8f6790.js +0 -8
  2051. package/dist/calcite/p-dcb3af07.entry.js +0 -7
  2052. package/dist/calcite/p-dcb3af07.entry.js.map +0 -1
  2053. package/dist/calcite/p-dd5c1a25.entry.js +0 -7
  2054. package/dist/calcite/p-dd5c1a25.entry.js.map +0 -1
  2055. package/dist/calcite/p-dddf9e65.js +0 -7
  2056. package/dist/calcite/p-ddf9f37f.entry.js +0 -7
  2057. package/dist/calcite/p-dfd45c49.entry.js +0 -7
  2058. package/dist/calcite/p-dfd45c49.entry.js.map +0 -1
  2059. package/dist/calcite/p-e13cae9a.js +0 -13
  2060. package/dist/calcite/p-e499ebc4.entry.js +0 -7
  2061. package/dist/calcite/p-e6bc2c91.entry.js +0 -7
  2062. package/dist/calcite/p-e6bc2c91.entry.js.map +0 -1
  2063. package/dist/calcite/p-e6c3e52c.js +0 -7
  2064. package/dist/calcite/p-e7367bb7.js +0 -7
  2065. package/dist/calcite/p-e888f5ce.entry.js +0 -7
  2066. package/dist/calcite/p-e888f5ce.entry.js.map +0 -1
  2067. package/dist/calcite/p-eb36b847.js +0 -7
  2068. package/dist/calcite/p-ecf00ea5.js +0 -7
  2069. package/dist/calcite/p-ed4845b4.js +0 -7
  2070. package/dist/calcite/p-ef273879.entry.js +0 -7
  2071. package/dist/calcite/p-ef273879.entry.js.map +0 -1
  2072. package/dist/calcite/p-f15f5018.js +0 -7
  2073. package/dist/calcite/p-f3030b0c.entry.js +0 -7
  2074. package/dist/calcite/p-f3030b0c.entry.js.map +0 -1
  2075. package/dist/calcite/p-f37eb146.js +0 -7
  2076. package/dist/calcite/p-f9cac1ec.js +0 -7
  2077. package/dist/calcite/p-fdef322a.entry.js +0 -7
  2078. package/dist/calcite/p-fdef322a.entry.js.map +0 -1
  2079. package/dist/calcite/p-fe853aec.entry.js +0 -7
  2080. package/dist/calcite/p-fecfba54.js +0 -7
  2081. package/dist/cjs/ExpandToggle-6fb1342a.js +0 -110
  2082. package/dist/cjs/ExpandToggle-6fb1342a.js.map +0 -1
  2083. package/dist/cjs/FloatingArrow-cc9cd375.js +0 -49
  2084. package/dist/cjs/FloatingArrow-cc9cd375.js.map +0 -1
  2085. package/dist/cjs/Heading-b270a97e.js +0 -22
  2086. package/dist/cjs/Heading-b270a97e.js.map +0 -1
  2087. package/dist/cjs/Validation-6d62ae6d.js +0 -18
  2088. package/dist/cjs/Validation-6d62ae6d.js.map +0 -1
  2089. package/dist/cjs/app-globals-ad20b1a1.js +0 -61
  2090. package/dist/cjs/app-globals-ad20b1a1.js.map +0 -1
  2091. package/dist/cjs/ar-f1e34f90.js +0 -106
  2092. package/dist/cjs/ar-f1e34f90.js.map +0 -1
  2093. package/dist/cjs/array-6e6bf0fa.js +0 -14
  2094. package/dist/cjs/array-6e6bf0fa.js.map +0 -1
  2095. package/dist/cjs/bg-cdca23e8.js +0 -84
  2096. package/dist/cjs/bg-cdca23e8.js.map +0 -1
  2097. package/dist/cjs/browser-843700f4.js +0 -20
  2098. package/dist/cjs/browser-843700f4.js.map +0 -1
  2099. package/dist/cjs/bs-188c9722.js +0 -53
  2100. package/dist/cjs/bs-188c9722.js.map +0 -1
  2101. package/dist/cjs/ca-af40f0d0.js +0 -73
  2102. package/dist/cjs/ca-af40f0d0.js.map +0 -1
  2103. package/dist/cjs/calcite-input-time-picker.calcite-time-picker-4d0b44b8.js +0 -2918
  2104. package/dist/cjs/calcite-input-time-picker.calcite-time-picker-4d0b44b8.js.map +0 -1
  2105. package/dist/cjs/component-f4c2ecd4.js +0 -30
  2106. package/dist/cjs/component-f4c2ecd4.js.map +0 -1
  2107. package/dist/cjs/conditionalSlot-a6a1ea4e.js +0 -60
  2108. package/dist/cjs/conditionalSlot-a6a1ea4e.js.map +0 -1
  2109. package/dist/cjs/cs-1b23496b.js +0 -149
  2110. package/dist/cjs/cs-1b23496b.js.map +0 -1
  2111. package/dist/cjs/da-1acb75cd.js +0 -68
  2112. package/dist/cjs/da-1acb75cd.js.map +0 -1
  2113. package/dist/cjs/de-37e4067c.js +0 -93
  2114. package/dist/cjs/de-37e4067c.js.map +0 -1
  2115. package/dist/cjs/de-at-c93c7ac1.js +0 -92
  2116. package/dist/cjs/de-at-c93c7ac1.js.map +0 -1
  2117. package/dist/cjs/de-ch-3ff4bc55.js +0 -92
  2118. package/dist/cjs/de-ch-3ff4bc55.js.map +0 -1
  2119. package/dist/cjs/debounce-5f6f9a5a.js +0 -498
  2120. package/dist/cjs/debounce-5f6f9a5a.js.map +0 -1
  2121. package/dist/cjs/dom-afcc4f08.js +0 -1084
  2122. package/dist/cjs/dom-afcc4f08.js.map +0 -1
  2123. package/dist/cjs/el-6213f3e2.js +0 -68
  2124. package/dist/cjs/el-6213f3e2.js.map +0 -1
  2125. package/dist/cjs/en-au-c26b8669.js +0 -68
  2126. package/dist/cjs/en-au-c26b8669.js.map +0 -1
  2127. package/dist/cjs/en-ca-81367dee.js +0 -67
  2128. package/dist/cjs/en-ca-81367dee.js.map +0 -1
  2129. package/dist/cjs/en-gb-f5aed307.js +0 -71
  2130. package/dist/cjs/en-gb-f5aed307.js.map +0 -1
  2131. package/dist/cjs/es-58c2f16e.js +0 -68
  2132. package/dist/cjs/es-58c2f16e.js.map +0 -1
  2133. package/dist/cjs/es-mx-15397b04.js +0 -67
  2134. package/dist/cjs/es-mx-15397b04.js.map +0 -1
  2135. package/dist/cjs/et-ce2454a7.js +0 -94
  2136. package/dist/cjs/et-ce2454a7.js.map +0 -1
  2137. package/dist/cjs/fi-02a21d80.js +0 -117
  2138. package/dist/cjs/fi-02a21d80.js.map +0 -1
  2139. package/dist/cjs/filter-84717b3c.js +0 -762
  2140. package/dist/cjs/filter-84717b3c.js.map +0 -1
  2141. package/dist/cjs/floating-ui-4820f72b.js +0 -1916
  2142. package/dist/cjs/floating-ui-4820f72b.js.map +0 -1
  2143. package/dist/cjs/focusTrapComponent-aca73790.js +0 -1020
  2144. package/dist/cjs/focusTrapComponent-aca73790.js.map +0 -1
  2145. package/dist/cjs/form-a4b759d2.js +0 -257
  2146. package/dist/cjs/form-a4b759d2.js.map +0 -1
  2147. package/dist/cjs/fr-ch-fd22f6ee.js +0 -68
  2148. package/dist/cjs/fr-ch-fd22f6ee.js.map +0 -1
  2149. package/dist/cjs/fr-ee66cd29.js +0 -70
  2150. package/dist/cjs/fr-ee66cd29.js.map +0 -1
  2151. package/dist/cjs/guid-9272df1b.js +0 -23
  2152. package/dist/cjs/guid-9272df1b.js.map +0 -1
  2153. package/dist/cjs/he-49dfb648.js +0 -107
  2154. package/dist/cjs/he-49dfb648.js.map +0 -1
  2155. package/dist/cjs/hi-6980ec07.js +0 -67
  2156. package/dist/cjs/hi-6980ec07.js.map +0 -1
  2157. package/dist/cjs/hr-18cd2e21.js +0 -82
  2158. package/dist/cjs/hr-18cd2e21.js.map +0 -1
  2159. package/dist/cjs/hu-d8cd64ce.js +0 -90
  2160. package/dist/cjs/hu-d8cd64ce.js.map +0 -1
  2161. package/dist/cjs/id-3e48dcb2.js +0 -68
  2162. package/dist/cjs/id-3e48dcb2.js.map +0 -1
  2163. package/dist/cjs/index-0e727ea5.js +0 -208
  2164. package/dist/cjs/index-0e727ea5.js.map +0 -1
  2165. package/dist/cjs/index-96b85efe.js +0 -2647
  2166. package/dist/cjs/index-96b85efe.js.map +0 -1
  2167. package/dist/cjs/index-bc6d79cc.js +0 -75
  2168. package/dist/cjs/index-bc6d79cc.js.map +0 -1
  2169. package/dist/cjs/interactive-04057cf9.js +0 -144
  2170. package/dist/cjs/interactive-04057cf9.js.map +0 -1
  2171. package/dist/cjs/it-042a4810.js +0 -68
  2172. package/dist/cjs/it-042a4810.js.map +0 -1
  2173. package/dist/cjs/it-ch-af72544b.js +0 -68
  2174. package/dist/cjs/it-ch-af72544b.js.map +0 -1
  2175. package/dist/cjs/ja-16154b85.js +0 -74
  2176. package/dist/cjs/ja-16154b85.js.map +0 -1
  2177. package/dist/cjs/key-f65f1f51.js +0 -16
  2178. package/dist/cjs/key-f65f1f51.js.map +0 -1
  2179. package/dist/cjs/ko-7b96fce3.js +0 -74
  2180. package/dist/cjs/ko-7b96fce3.js.map +0 -1
  2181. package/dist/cjs/label-bc01a1b7.js +0 -183
  2182. package/dist/cjs/label-bc01a1b7.js.map +0 -1
  2183. package/dist/cjs/loadable-488230d3.js +0 -91
  2184. package/dist/cjs/loadable-488230d3.js.map +0 -1
  2185. package/dist/cjs/locale-f3c5ce8e.js +0 -575
  2186. package/dist/cjs/locale-f3c5ce8e.js.map +0 -1
  2187. package/dist/cjs/lt-39837064.js +0 -99
  2188. package/dist/cjs/lt-39837064.js.map +0 -1
  2189. package/dist/cjs/lv-68d13677.js +0 -68
  2190. package/dist/cjs/lv-68d13677.js.map +0 -1
  2191. package/dist/cjs/math-40c525c1.js +0 -57
  2192. package/dist/cjs/math-40c525c1.js.map +0 -1
  2193. package/dist/cjs/mk-8b6c95db.js +0 -68
  2194. package/dist/cjs/mk-8b6c95db.js.map +0 -1
  2195. package/dist/cjs/nb-826579d7.js +0 -69
  2196. package/dist/cjs/nb-826579d7.js.map +0 -1
  2197. package/dist/cjs/nl-e0ad9898.js +0 -69
  2198. package/dist/cjs/nl-e0ad9898.js.map +0 -1
  2199. package/dist/cjs/observers-20febba7.js +0 -50
  2200. package/dist/cjs/observers-20febba7.js.map +0 -1
  2201. package/dist/cjs/openCloseComponent-a24661c6.js +0 -89
  2202. package/dist/cjs/openCloseComponent-a24661c6.js.map +0 -1
  2203. package/dist/cjs/pl-61351591.js +0 -116
  2204. package/dist/cjs/pl-61351591.js.map +0 -1
  2205. package/dist/cjs/pt-3eaf77f6.js +0 -69
  2206. package/dist/cjs/pt-3eaf77f6.js.map +0 -1
  2207. package/dist/cjs/pt-br-be0c9ac9.js +0 -67
  2208. package/dist/cjs/pt-br-be0c9ac9.js.map +0 -1
  2209. package/dist/cjs/resources-4b058a7e.js +0 -23
  2210. package/dist/cjs/resources-4b058a7e.js.map +0 -1
  2211. package/dist/cjs/resources-51ff7835.js +0 -49
  2212. package/dist/cjs/resources-51ff7835.js.map +0 -1
  2213. package/dist/cjs/resources-6262c3d3.js +0 -26
  2214. package/dist/cjs/resources-6262c3d3.js.map +0 -1
  2215. package/dist/cjs/resources-765e8157.js +0 -26
  2216. package/dist/cjs/resources-765e8157.js.map +0 -1
  2217. package/dist/cjs/resources-94aecf21.js +0 -17
  2218. package/dist/cjs/resources-94aecf21.js.map +0 -1
  2219. package/dist/cjs/resources-aeedfe4f.js +0 -29
  2220. package/dist/cjs/resources-aeedfe4f.js.map +0 -1
  2221. package/dist/cjs/resources-b29175c3.js +0 -412
  2222. package/dist/cjs/resources-b29175c3.js.map +0 -1
  2223. package/dist/cjs/ro-9d0fc0e2.js +0 -68
  2224. package/dist/cjs/ro-9d0fc0e2.js.map +0 -1
  2225. package/dist/cjs/ru-a021e665.js +0 -128
  2226. package/dist/cjs/ru-a021e665.js.map +0 -1
  2227. package/dist/cjs/sk-a7391e45.js +0 -150
  2228. package/dist/cjs/sk-a7391e45.js.map +0 -1
  2229. package/dist/cjs/sl-12853ba7.js +0 -170
  2230. package/dist/cjs/sl-12853ba7.js.map +0 -1
  2231. package/dist/cjs/sortableComponent-f0f35d93.js +0 -2739
  2232. package/dist/cjs/sortableComponent-f0f35d93.js.map +0 -1
  2233. package/dist/cjs/sr-5aea0cb4.js +0 -103
  2234. package/dist/cjs/sr-5aea0cb4.js.map +0 -1
  2235. package/dist/cjs/sv-c50d619e.js +0 -73
  2236. package/dist/cjs/sv-c50d619e.js.map +0 -1
  2237. package/dist/cjs/t9n-7ada50fb.js +0 -97
  2238. package/dist/cjs/t9n-7ada50fb.js.map +0 -1
  2239. package/dist/cjs/th-563a11e1.js +0 -67
  2240. package/dist/cjs/th-563a11e1.js.map +0 -1
  2241. package/dist/cjs/throttle-faf88fa7.js +0 -77
  2242. package/dist/cjs/throttle-faf88fa7.js.map +0 -1
  2243. package/dist/cjs/tr-d5e32036.js +0 -68
  2244. package/dist/cjs/tr-d5e32036.js.map +0 -1
  2245. package/dist/cjs/uk-4201c7d9.js +0 -106
  2246. package/dist/cjs/uk-4201c7d9.js.map +0 -1
  2247. package/dist/cjs/utils-108572ed.js +0 -307
  2248. package/dist/cjs/utils-108572ed.js.map +0 -1
  2249. package/dist/cjs/utils-c74cca03.js +0 -218
  2250. package/dist/cjs/utils-c74cca03.js.map +0 -1
  2251. package/dist/cjs/vi-5e308f65.js +0 -72
  2252. package/dist/cjs/vi-5e308f65.js.map +0 -1
  2253. package/dist/cjs/zh-cn-8d67258b.js +0 -96
  2254. package/dist/cjs/zh-cn-8d67258b.js.map +0 -1
  2255. package/dist/cjs/zh-hk-76ef3753.js +0 -73
  2256. package/dist/cjs/zh-hk-76ef3753.js.map +0 -1
  2257. package/dist/cjs/zh-tw-8820ae38.js +0 -94
  2258. package/dist/cjs/zh-tw-8820ae38.js.map +0 -1
  2259. package/dist/esm/ExpandToggle-b860687d.js +0 -102
  2260. package/dist/esm/ExpandToggle-b860687d.js.map +0 -1
  2261. package/dist/esm/FloatingArrow-72e2fccc.js +0 -47
  2262. package/dist/esm/FloatingArrow-72e2fccc.js.map +0 -1
  2263. package/dist/esm/Heading-bb91f7eb.js +0 -19
  2264. package/dist/esm/Heading-bb91f7eb.js.map +0 -1
  2265. package/dist/esm/Validation-b0c160a7.js +0 -16
  2266. package/dist/esm/Validation-b0c160a7.js.map +0 -1
  2267. package/dist/esm/app-globals-912309c6.js +0 -59
  2268. package/dist/esm/app-globals-912309c6.js.map +0 -1
  2269. package/dist/esm/ar-e701fed1.js +0 -104
  2270. package/dist/esm/ar-e701fed1.js.map +0 -1
  2271. package/dist/esm/array-63e38ff2.js +0 -12
  2272. package/dist/esm/array-63e38ff2.js.map +0 -1
  2273. package/dist/esm/bg-460ba890.js +0 -82
  2274. package/dist/esm/bg-460ba890.js.map +0 -1
  2275. package/dist/esm/browser-6ec8885b.js +0 -18
  2276. package/dist/esm/browser-6ec8885b.js.map +0 -1
  2277. package/dist/esm/bs-5e265013.js +0 -51
  2278. package/dist/esm/bs-5e265013.js.map +0 -1
  2279. package/dist/esm/ca-204aa888.js +0 -71
  2280. package/dist/esm/ca-204aa888.js.map +0 -1
  2281. package/dist/esm/calcite-input-time-picker.calcite-time-picker-630f48cf.js +0 -2914
  2282. package/dist/esm/calcite-input-time-picker.calcite-time-picker-630f48cf.js.map +0 -1
  2283. package/dist/esm/component-cf7d6ffe.js +0 -27
  2284. package/dist/esm/component-cf7d6ffe.js.map +0 -1
  2285. package/dist/esm/conditionalSlot-70a8d126.js +0 -57
  2286. package/dist/esm/conditionalSlot-70a8d126.js.map +0 -1
  2287. package/dist/esm/cs-c96ba882.js +0 -147
  2288. package/dist/esm/cs-c96ba882.js.map +0 -1
  2289. package/dist/esm/da-8dfd4d39.js +0 -66
  2290. package/dist/esm/da-8dfd4d39.js.map +0 -1
  2291. package/dist/esm/de-7228fc5c.js +0 -91
  2292. package/dist/esm/de-7228fc5c.js.map +0 -1
  2293. package/dist/esm/de-at-53878653.js +0 -90
  2294. package/dist/esm/de-at-53878653.js.map +0 -1
  2295. package/dist/esm/de-ch-74e08354.js +0 -90
  2296. package/dist/esm/de-ch-74e08354.js.map +0 -1
  2297. package/dist/esm/debounce-0d7b3aa7.js +0 -489
  2298. package/dist/esm/debounce-0d7b3aa7.js.map +0 -1
  2299. package/dist/esm/dom-028fde80.js +0 -1053
  2300. package/dist/esm/dom-028fde80.js.map +0 -1
  2301. package/dist/esm/el-fee9a2b1.js +0 -66
  2302. package/dist/esm/el-fee9a2b1.js.map +0 -1
  2303. package/dist/esm/en-au-7ed8c3fb.js +0 -66
  2304. package/dist/esm/en-au-7ed8c3fb.js.map +0 -1
  2305. package/dist/esm/en-ca-f3c03fba.js +0 -65
  2306. package/dist/esm/en-ca-f3c03fba.js.map +0 -1
  2307. package/dist/esm/en-gb-4f6a8ca7.js +0 -69
  2308. package/dist/esm/en-gb-4f6a8ca7.js.map +0 -1
  2309. package/dist/esm/es-a3536da8.js +0 -66
  2310. package/dist/esm/es-a3536da8.js.map +0 -1
  2311. package/dist/esm/es-mx-58cb849e.js +0 -65
  2312. package/dist/esm/es-mx-58cb849e.js.map +0 -1
  2313. package/dist/esm/et-7b9429c8.js +0 -92
  2314. package/dist/esm/et-7b9429c8.js.map +0 -1
  2315. package/dist/esm/fi-98e55394.js +0 -115
  2316. package/dist/esm/fi-98e55394.js.map +0 -1
  2317. package/dist/esm/filter-048cf028.js +0 -760
  2318. package/dist/esm/filter-048cf028.js.map +0 -1
  2319. package/dist/esm/floating-ui-e27c9dbc.js +0 -1908
  2320. package/dist/esm/floating-ui-e27c9dbc.js.map +0 -1
  2321. package/dist/esm/focusTrapComponent-e65dda9e.js +0 -1015
  2322. package/dist/esm/focusTrapComponent-e65dda9e.js.map +0 -1
  2323. package/dist/esm/form-cd0185ab.js +0 -249
  2324. package/dist/esm/form-cd0185ab.js.map +0 -1
  2325. package/dist/esm/fr-bd5e1115.js +0 -68
  2326. package/dist/esm/fr-bd5e1115.js.map +0 -1
  2327. package/dist/esm/fr-ch-8a8dd905.js +0 -66
  2328. package/dist/esm/fr-ch-8a8dd905.js.map +0 -1
  2329. package/dist/esm/guid-37b06f58.js +0 -21
  2330. package/dist/esm/guid-37b06f58.js.map +0 -1
  2331. package/dist/esm/he-298bbe11.js +0 -105
  2332. package/dist/esm/he-298bbe11.js.map +0 -1
  2333. package/dist/esm/hi-5683e2b0.js +0 -65
  2334. package/dist/esm/hi-5683e2b0.js.map +0 -1
  2335. package/dist/esm/hr-f77c401b.js +0 -80
  2336. package/dist/esm/hr-f77c401b.js.map +0 -1
  2337. package/dist/esm/hu-521d9903.js +0 -88
  2338. package/dist/esm/hu-521d9903.js.map +0 -1
  2339. package/dist/esm/id-4e6cb6d2.js +0 -66
  2340. package/dist/esm/id-4e6cb6d2.js.map +0 -1
  2341. package/dist/esm/index-1e95e061.js +0 -206
  2342. package/dist/esm/index-1e95e061.js.map +0 -1
  2343. package/dist/esm/index-c56bfc19.js +0 -2612
  2344. package/dist/esm/index-c56bfc19.js.map +0 -1
  2345. package/dist/esm/index-e0a93df4.js +0 -73
  2346. package/dist/esm/index-e0a93df4.js.map +0 -1
  2347. package/dist/esm/interactive-bcdeadc9.js +0 -140
  2348. package/dist/esm/interactive-bcdeadc9.js.map +0 -1
  2349. package/dist/esm/it-8a226a7c.js +0 -66
  2350. package/dist/esm/it-8a226a7c.js.map +0 -1
  2351. package/dist/esm/it-ch-29617c59.js +0 -66
  2352. package/dist/esm/it-ch-29617c59.js.map +0 -1
  2353. package/dist/esm/ja-fab51d50.js +0 -72
  2354. package/dist/esm/ja-fab51d50.js.map +0 -1
  2355. package/dist/esm/key-ed8f1171.js +0 -13
  2356. package/dist/esm/key-ed8f1171.js.map +0 -1
  2357. package/dist/esm/ko-c670df48.js +0 -72
  2358. package/dist/esm/ko-c670df48.js.map +0 -1
  2359. package/dist/esm/label-fea527f5.js +0 -176
  2360. package/dist/esm/label-fea527f5.js.map +0 -1
  2361. package/dist/esm/loadable-080faed9.js +0 -86
  2362. package/dist/esm/loadable-080faed9.js.map +0 -1
  2363. package/dist/esm/locale-15633ed5.js +0 -563
  2364. package/dist/esm/locale-15633ed5.js.map +0 -1
  2365. package/dist/esm/lt-4f272bfa.js +0 -97
  2366. package/dist/esm/lt-4f272bfa.js.map +0 -1
  2367. package/dist/esm/lv-e3770bdb.js +0 -66
  2368. package/dist/esm/lv-e3770bdb.js.map +0 -1
  2369. package/dist/esm/math-c03cc107.js +0 -51
  2370. package/dist/esm/math-c03cc107.js.map +0 -1
  2371. package/dist/esm/mk-c68b1d3e.js +0 -66
  2372. package/dist/esm/mk-c68b1d3e.js.map +0 -1
  2373. package/dist/esm/nb-bb665d42.js +0 -67
  2374. package/dist/esm/nb-bb665d42.js.map +0 -1
  2375. package/dist/esm/nl-061cbdb3.js +0 -67
  2376. package/dist/esm/nl-061cbdb3.js.map +0 -1
  2377. package/dist/esm/observers-41824630.js +0 -48
  2378. package/dist/esm/observers-41824630.js.map +0 -1
  2379. package/dist/esm/openCloseComponent-1038e013.js +0 -87
  2380. package/dist/esm/openCloseComponent-1038e013.js.map +0 -1
  2381. package/dist/esm/pl-2bbe05f0.js +0 -114
  2382. package/dist/esm/pl-2bbe05f0.js.map +0 -1
  2383. package/dist/esm/pt-93b37af1.js +0 -67
  2384. package/dist/esm/pt-93b37af1.js.map +0 -1
  2385. package/dist/esm/pt-br-c481fa3a.js +0 -65
  2386. package/dist/esm/pt-br-c481fa3a.js.map +0 -1
  2387. package/dist/esm/resources-3bc6ba89.js +0 -21
  2388. package/dist/esm/resources-3bc6ba89.js.map +0 -1
  2389. package/dist/esm/resources-514b7b45.js +0 -19
  2390. package/dist/esm/resources-514b7b45.js.map +0 -1
  2391. package/dist/esm/resources-64cbd556.js +0 -25
  2392. package/dist/esm/resources-64cbd556.js.map +0 -1
  2393. package/dist/esm/resources-a16a03ff.js +0 -45
  2394. package/dist/esm/resources-a16a03ff.js.map +0 -1
  2395. package/dist/esm/resources-afc66796.js +0 -17
  2396. package/dist/esm/resources-afc66796.js.map +0 -1
  2397. package/dist/esm/resources-c61c0d88.js +0 -385
  2398. package/dist/esm/resources-c61c0d88.js.map +0 -1
  2399. package/dist/esm/resources-d931bd0f.js +0 -23
  2400. package/dist/esm/resources-d931bd0f.js.map +0 -1
  2401. package/dist/esm/ro-a28a3f0e.js +0 -66
  2402. package/dist/esm/ro-a28a3f0e.js.map +0 -1
  2403. package/dist/esm/ru-2d95a530.js +0 -126
  2404. package/dist/esm/ru-2d95a530.js.map +0 -1
  2405. package/dist/esm/sk-3846cd5d.js +0 -148
  2406. package/dist/esm/sk-3846cd5d.js.map +0 -1
  2407. package/dist/esm/sl-28078ffa.js +0 -168
  2408. package/dist/esm/sl-28078ffa.js.map +0 -1
  2409. package/dist/esm/sortableComponent-5a3899b1.js +0 -2735
  2410. package/dist/esm/sortableComponent-5a3899b1.js.map +0 -1
  2411. package/dist/esm/sr-f96150c8.js +0 -101
  2412. package/dist/esm/sr-f96150c8.js.map +0 -1
  2413. package/dist/esm/sv-fa881418.js +0 -71
  2414. package/dist/esm/sv-fa881418.js.map +0 -1
  2415. package/dist/esm/t9n-048cdf0b.js +0 -92
  2416. package/dist/esm/t9n-048cdf0b.js.map +0 -1
  2417. package/dist/esm/th-4177bf3c.js +0 -65
  2418. package/dist/esm/th-4177bf3c.js.map +0 -1
  2419. package/dist/esm/throttle-51ece42f.js +0 -75
  2420. package/dist/esm/throttle-51ece42f.js.map +0 -1
  2421. package/dist/esm/tr-f43e4fff.js +0 -66
  2422. package/dist/esm/tr-f43e4fff.js.map +0 -1
  2423. package/dist/esm/uk-d607bb88.js +0 -104
  2424. package/dist/esm/uk-d607bb88.js.map +0 -1
  2425. package/dist/esm/utils-77658783.js +0 -200
  2426. package/dist/esm/utils-77658783.js.map +0 -1
  2427. package/dist/esm/utils-a66720fa.js +0 -289
  2428. package/dist/esm/utils-a66720fa.js.map +0 -1
  2429. package/dist/esm/vi-a769b838.js +0 -70
  2430. package/dist/esm/vi-a769b838.js.map +0 -1
  2431. package/dist/esm/zh-cn-a42bb38a.js +0 -94
  2432. package/dist/esm/zh-cn-a42bb38a.js.map +0 -1
  2433. package/dist/esm/zh-hk-27570bd6.js +0 -71
  2434. package/dist/esm/zh-hk-27570bd6.js.map +0 -1
  2435. package/dist/esm/zh-tw-fd30c65c.js +0 -92
  2436. package/dist/esm/zh-tw-fd30c65c.js.map +0 -1
  2437. /package/dist/calcite/{p-d6a368e1.js.map → p-003ca0f3.js.map} +0 -0
  2438. /package/dist/calcite/{p-cae75aea.entry.js.map → p-03e71304.entry.js.map} +0 -0
  2439. /package/dist/calcite/{p-8196758d.js.map → p-0de2a651.js.map} +0 -0
  2440. /package/dist/calcite/{p-ae1ba3d0.js.map → p-0f64aea9.js.map} +0 -0
  2441. /package/dist/calcite/{p-77fadb18.js.map → p-14f38eac.js.map} +0 -0
  2442. /package/dist/calcite/{p-2e1e8da8.js.map → p-15a931c2.js.map} +0 -0
  2443. /package/dist/calcite/{p-e13cae9a.js.map → p-1a7be884.js.map} +0 -0
  2444. /package/dist/calcite/{p-a825c716.js.map → p-1abd7d95.js.map} +0 -0
  2445. /package/dist/calcite/{p-cb2ea42f.js.map → p-1c40411d.js.map} +0 -0
  2446. /package/dist/calcite/{p-713c6582.js.map → p-1e034848.js.map} +0 -0
  2447. /package/dist/calcite/{p-a1c5f5e3.entry.js.map → p-1f4f0978.entry.js.map} +0 -0
  2448. /package/dist/calcite/{p-a4149463.entry.js.map → p-211c55f5.entry.js.map} +0 -0
  2449. /package/dist/calcite/{p-8741f360.entry.js.map → p-22cd60dc.entry.js.map} +0 -0
  2450. /package/dist/calcite/{p-542a8741.entry.js.map → p-22d0e71c.entry.js.map} +0 -0
  2451. /package/dist/calcite/{p-675c5ece.js.map → p-26b5ebc3.js.map} +0 -0
  2452. /package/dist/calcite/{p-179530c9.entry.js.map → p-27a333ee.entry.js.map} +0 -0
  2453. /package/dist/calcite/{p-323e64e5.js.map → p-2897690e.js.map} +0 -0
  2454. /package/dist/calcite/{p-028e43a6.js.map → p-2c92d55b.js.map} +0 -0
  2455. /package/dist/calcite/{p-4708e1b3.entry.js.map → p-2cd07cf1.entry.js.map} +0 -0
  2456. /package/dist/calcite/{p-8602260c.js.map → p-2f9ada20.js.map} +0 -0
  2457. /package/dist/calcite/{p-ddf9f37f.entry.js.map → p-35daea60.entry.js.map} +0 -0
  2458. /package/dist/calcite/{p-51d80858.entry.js.map → p-3c6368cc.entry.js.map} +0 -0
  2459. /package/dist/calcite/{p-a9084938.js.map → p-3d14171e.js.map} +0 -0
  2460. /package/dist/calcite/{p-c9d56bea.js.map → p-3d6050cc.js.map} +0 -0
  2461. /package/dist/calcite/{p-9f5112cd.js.map → p-4078dbb9.js.map} +0 -0
  2462. /package/dist/calcite/{p-95b48f8d.js.map → p-440147ae.js.map} +0 -0
  2463. /package/dist/calcite/{p-12a478b3.js.map → p-45a2710e.js.map} +0 -0
  2464. /package/dist/calcite/{p-d9081105.js.map → p-46aa9fd5.js.map} +0 -0
  2465. /package/dist/calcite/{p-3235386f.js.map → p-49630957.js.map} +0 -0
  2466. /package/dist/calcite/{p-7cd6634d.js.map → p-4f0af5b6.js.map} +0 -0
  2467. /package/dist/calcite/{p-9479e08b.js.map → p-53a58d9c.js.map} +0 -0
  2468. /package/dist/calcite/{p-a9abd43d.js.map → p-54658226.js.map} +0 -0
  2469. /package/dist/calcite/{p-a0216ff2.js.map → p-5584db37.js.map} +0 -0
  2470. /package/dist/calcite/{p-5118bed5.js.map → p-59f2a26a.js.map} +0 -0
  2471. /package/dist/calcite/{p-0f3afb46.entry.js.map → p-5d018e37.entry.js.map} +0 -0
  2472. /package/dist/calcite/{p-c8fd546e.entry.js.map → p-5e6ed7fc.entry.js.map} +0 -0
  2473. /package/dist/calcite/{p-b6d34f71.js.map → p-5f6d09bb.js.map} +0 -0
  2474. /package/dist/calcite/{p-482a215e.js.map → p-5f9b3359.js.map} +0 -0
  2475. /package/dist/calcite/{p-44defce5.js.map → p-62afe875.js.map} +0 -0
  2476. /package/dist/calcite/{p-255133d2.entry.js.map → p-66dec48a.entry.js.map} +0 -0
  2477. /package/dist/calcite/{p-313c9828.js.map → p-6a6126d9.js.map} +0 -0
  2478. /package/dist/calcite/{p-14e68369.entry.js.map → p-6bdc50f3.entry.js.map} +0 -0
  2479. /package/dist/calcite/{p-e6c3e52c.js.map → p-705ec6ff.js.map} +0 -0
  2480. /package/dist/calcite/{p-85bcaffe.js.map → p-77fc8314.js.map} +0 -0
  2481. /package/dist/calcite/{p-9d5e6159.entry.js.map → p-782184a2.entry.js.map} +0 -0
  2482. /package/dist/calcite/{p-2765ec53.js.map → p-79c02fee.js.map} +0 -0
  2483. /package/dist/calcite/{p-1bace9e2.js.map → p-7c4fe654.js.map} +0 -0
  2484. /package/dist/calcite/{p-dc8f6790.js.map → p-7f125972.js.map} +0 -0
  2485. /package/dist/calcite/{p-b2a4e71b.js.map → p-8098ac71.js.map} +0 -0
  2486. /package/dist/calcite/{p-4124d581.entry.js.map → p-80d2a6e8.entry.js.map} +0 -0
  2487. /package/dist/calcite/{p-c5e6294c.entry.js.map → p-82d2693e.entry.js.map} +0 -0
  2488. /package/dist/calcite/{p-ecf00ea5.js.map → p-82dd6896.js.map} +0 -0
  2489. /package/dist/calcite/{p-f37eb146.js.map → p-835ab73d.js.map} +0 -0
  2490. /package/dist/calcite/{p-bb78d0f7.js.map → p-8aba18a4.js.map} +0 -0
  2491. /package/dist/calcite/{p-7e8ae5cf.entry.js.map → p-8e691781.entry.js.map} +0 -0
  2492. /package/dist/calcite/{p-f15f5018.js.map → p-90f83cb9.js.map} +0 -0
  2493. /package/dist/calcite/{p-975df908.js.map → p-91d3a97a.js.map} +0 -0
  2494. /package/dist/calcite/{p-a9c39fd2.js.map → p-9402d09f.js.map} +0 -0
  2495. /package/dist/calcite/{p-6c7336e9.js.map → p-9610a634.js.map} +0 -0
  2496. /package/dist/calcite/{p-297b91b7.js.map → p-98645f51.js.map} +0 -0
  2497. /package/dist/calcite/{p-12ac2434.js.map → p-98872134.js.map} +0 -0
  2498. /package/dist/calcite/{p-ce27299c.js.map → p-9d793473.js.map} +0 -0
  2499. /package/dist/calcite/{p-d7695581.js.map → p-a15674ad.js.map} +0 -0
  2500. /package/dist/calcite/{p-e7367bb7.js.map → p-a159b523.js.map} +0 -0
  2501. /package/dist/calcite/{p-ac1461fd.js.map → p-a177e98d.js.map} +0 -0
  2502. /package/dist/calcite/{p-24fb5c4d.js.map → p-a2ab03b5.js.map} +0 -0
  2503. /package/dist/calcite/{p-19113674.entry.js.map → p-a4f3d084.entry.js.map} +0 -0
  2504. /package/dist/calcite/{p-c4036842.js.map → p-a68f11a7.js.map} +0 -0
  2505. /package/dist/calcite/{p-406ee8b3.js.map → p-a6f376c8.js.map} +0 -0
  2506. /package/dist/calcite/{p-1c9e71c8.entry.js.map → p-a73f6b83.entry.js.map} +0 -0
  2507. /package/dist/calcite/{p-941bc8d1.js.map → p-a9aa33b0.js.map} +0 -0
  2508. /package/dist/calcite/{p-684aa58e.js.map → p-ab352017.js.map} +0 -0
  2509. /package/dist/calcite/{p-4490335e.js.map → p-ae8651e0.js.map} +0 -0
  2510. /package/dist/calcite/{p-3a23049f.entry.js.map → p-af622206.entry.js.map} +0 -0
  2511. /package/dist/calcite/{p-6623d005.js.map → p-afb156ef.js.map} +0 -0
  2512. /package/dist/calcite/{p-eb36b847.js.map → p-b6465955.js.map} +0 -0
  2513. /package/dist/calcite/{p-04ff8a80.js.map → p-ba0ad3cb.js.map} +0 -0
  2514. /package/dist/calcite/{p-067d6535.js.map → p-bbf0b7bf.js.map} +0 -0
  2515. /package/dist/calcite/{p-c8abb3e4.js.map → p-beabd92d.js.map} +0 -0
  2516. /package/dist/calcite/{p-2f3fc25f.js.map → p-c3c81b16.js.map} +0 -0
  2517. /package/dist/calcite/{p-d00c1493.js.map → p-c5d20a3c.js.map} +0 -0
  2518. /package/dist/calcite/{p-c2cf8d68.js.map → p-c71e3c45.js.map} +0 -0
  2519. /package/dist/calcite/{p-155be568.js.map → p-c791d921.js.map} +0 -0
  2520. /package/dist/calcite/{p-f9cac1ec.js.map → p-ca7e2141.js.map} +0 -0
  2521. /package/dist/calcite/{p-9fb472eb.js.map → p-cbd5152a.js.map} +0 -0
  2522. /package/dist/calcite/{p-fe853aec.entry.js.map → p-cc3cd8a9.entry.js.map} +0 -0
  2523. /package/dist/calcite/{p-5ac783f8.js.map → p-cd3b4156.js.map} +0 -0
  2524. /package/dist/calcite/{p-d73f4d6f.js.map → p-cf067db4.js.map} +0 -0
  2525. /package/dist/calcite/{p-7c2925c2.js.map → p-cf3ad5bd.js.map} +0 -0
  2526. /package/dist/calcite/{p-708d784b.entry.js.map → p-cfbda139.entry.js.map} +0 -0
  2527. /package/dist/calcite/{p-fecfba54.js.map → p-d05f6cd5.js.map} +0 -0
  2528. /package/dist/calcite/{p-5ff2ed62.js.map → p-d218023a.js.map} +0 -0
  2529. /package/dist/calcite/{p-59cd57a9.js.map → p-d2c65e0b.js.map} +0 -0
  2530. /package/dist/calcite/{p-a698cb09.js.map → p-d4ba102f.js.map} +0 -0
  2531. /package/dist/calcite/{p-7d4f3dc7.entry.js.map → p-d6d623ac.entry.js.map} +0 -0
  2532. /package/dist/calcite/{p-296fa714.js.map → p-dd4fc754.js.map} +0 -0
  2533. /package/dist/calcite/{p-3317db6a.entry.js.map → p-de442a9c.entry.js.map} +0 -0
  2534. /package/dist/calcite/{p-20409563.js.map → p-df766122.js.map} +0 -0
  2535. /package/dist/calcite/{p-461cfca7.js.map → p-dfd01370.js.map} +0 -0
  2536. /package/dist/calcite/{p-41baa2f3.js.map → p-e30438ff.js.map} +0 -0
  2537. /package/dist/calcite/{p-e499ebc4.entry.js.map → p-e84374ce.entry.js.map} +0 -0
  2538. /package/dist/calcite/{p-961a2d14.js.map → p-ec54aec5.js.map} +0 -0
  2539. /package/dist/calcite/{p-937586cf.entry.js.map → p-ecb8bcb9.entry.js.map} +0 -0
  2540. /package/dist/calcite/{p-6c2a638b.js.map → p-efb11a3a.js.map} +0 -0
  2541. /package/dist/calcite/{p-34d69561.entry.js.map → p-f3bd8190.entry.js.map} +0 -0
  2542. /package/dist/calcite/{p-448db42f.js.map → p-f48b9584.js.map} +0 -0
  2543. /package/dist/calcite/{p-ed4845b4.js.map → p-f4de0feb.js.map} +0 -0
  2544. /package/dist/calcite/{p-07c39ac8.js.map → p-f7bea0da.js.map} +0 -0
  2545. /package/dist/calcite/{p-dddf9e65.js.map → p-f8251642.js.map} +0 -0
  2546. /package/dist/calcite/{p-42b13177.js.map → p-fa43461d.js.map} +0 -0
  2547. /package/dist/calcite/{p-9a7cb976.js.map → p-fcf2ba73.js.map} +0 -0
  2548. /package/dist/calcite/{p-456bf4d5.js.map → p-fda4c45c.js.map} +0 -0
  2549. /package/dist/calcite/{p-1bd0d224.js.map → p-ff72942c.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"calcite-color-picker.calcite-color-picker-hex-input.calcite-color-picker-swatch.entry.cjs.js","mappings":"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","names":["colorNames","swizzle","cssKeywords","convert","CSS","DEFAULT_COLOR","Color","CSSColorMode","color","normalizeHex","hexify","alphaCompatible","clamp","opacityToAlpha","isActivationKey","isPrimaryPointerButton","h","getElementDir","alphaToOpacity","index","throttle","parseMode","normalizeColor","colorEqual","updateMessages","componentFocusable","setUpLoadableComponent","setUpMessages","connectInteractive","connectLocalized","connectMessages","setComponentLoaded","disconnectInteractive","disconnectLocalized","disconnectMessages","updateHostInteraction","toAlphaMode","toNonAlphaMode","normalizeAlpha","closeToRangeEdge","remap","isLonghandHex","isValidHex","rgbToHex","hexChar","focusElement","getModeName","Fragment"],"sources":["../../node_modules/color-name/index.js","../../node_modules/simple-swizzle/node_modules/is-arrayish/index.js","../../node_modules/simple-swizzle/index.js","../../node_modules/color-string/index.js","../../node_modules/color/node_modules/color-name/index.js","../../node_modules/color/node_modules/color-convert/conversions.js","../../node_modules/color/node_modules/color-convert/route.js","../../node_modules/color/node_modules/color-convert/index.js","../../node_modules/color/index.js","src/components/color-picker/resources.ts","src/components/color-picker/color-picker.scss?tag=calcite-color-picker&encapsulation=shadow","src/components/color-picker/color-picker.tsx","src/components/color-picker-hex-input/resources.ts","src/components/color-picker-hex-input/color-picker-hex-input.scss?tag=calcite-color-picker-hex-input&encapsulation=shadow","src/components/color-picker-hex-input/color-picker-hex-input.tsx","src/components/color-picker-swatch/resources.ts","src/components/color-picker-swatch/color-picker-swatch.scss?tag=calcite-color-picker-swatch&encapsulation=shadow","src/components/color-picker-swatch/color-picker-swatch.tsx"],"sourcesContent":["'use strict'\r\n\r\nmodule.exports = {\r\n\t\"aliceblue\": [240, 248, 255],\r\n\t\"antiquewhite\": [250, 235, 215],\r\n\t\"aqua\": [0, 255, 255],\r\n\t\"aquamarine\": [127, 255, 212],\r\n\t\"azure\": [240, 255, 255],\r\n\t\"beige\": [245, 245, 220],\r\n\t\"bisque\": [255, 228, 196],\r\n\t\"black\": [0, 0, 0],\r\n\t\"blanchedalmond\": [255, 235, 205],\r\n\t\"blue\": [0, 0, 255],\r\n\t\"blueviolet\": [138, 43, 226],\r\n\t\"brown\": [165, 42, 42],\r\n\t\"burlywood\": [222, 184, 135],\r\n\t\"cadetblue\": [95, 158, 160],\r\n\t\"chartreuse\": [127, 255, 0],\r\n\t\"chocolate\": [210, 105, 30],\r\n\t\"coral\": [255, 127, 80],\r\n\t\"cornflowerblue\": [100, 149, 237],\r\n\t\"cornsilk\": [255, 248, 220],\r\n\t\"crimson\": [220, 20, 60],\r\n\t\"cyan\": [0, 255, 255],\r\n\t\"darkblue\": [0, 0, 139],\r\n\t\"darkcyan\": [0, 139, 139],\r\n\t\"darkgoldenrod\": [184, 134, 11],\r\n\t\"darkgray\": [169, 169, 169],\r\n\t\"darkgreen\": [0, 100, 0],\r\n\t\"darkgrey\": [169, 169, 169],\r\n\t\"darkkhaki\": [189, 183, 107],\r\n\t\"darkmagenta\": [139, 0, 139],\r\n\t\"darkolivegreen\": [85, 107, 47],\r\n\t\"darkorange\": [255, 140, 0],\r\n\t\"darkorchid\": [153, 50, 204],\r\n\t\"darkred\": [139, 0, 0],\r\n\t\"darksalmon\": [233, 150, 122],\r\n\t\"darkseagreen\": [143, 188, 143],\r\n\t\"darkslateblue\": [72, 61, 139],\r\n\t\"darkslategray\": [47, 79, 79],\r\n\t\"darkslategrey\": [47, 79, 79],\r\n\t\"darkturquoise\": [0, 206, 209],\r\n\t\"darkviolet\": [148, 0, 211],\r\n\t\"deeppink\": [255, 20, 147],\r\n\t\"deepskyblue\": [0, 191, 255],\r\n\t\"dimgray\": [105, 105, 105],\r\n\t\"dimgrey\": [105, 105, 105],\r\n\t\"dodgerblue\": [30, 144, 255],\r\n\t\"firebrick\": [178, 34, 34],\r\n\t\"floralwhite\": [255, 250, 240],\r\n\t\"forestgreen\": [34, 139, 34],\r\n\t\"fuchsia\": [255, 0, 255],\r\n\t\"gainsboro\": [220, 220, 220],\r\n\t\"ghostwhite\": [248, 248, 255],\r\n\t\"gold\": [255, 215, 0],\r\n\t\"goldenrod\": [218, 165, 32],\r\n\t\"gray\": [128, 128, 128],\r\n\t\"green\": [0, 128, 0],\r\n\t\"greenyellow\": [173, 255, 47],\r\n\t\"grey\": [128, 128, 128],\r\n\t\"honeydew\": [240, 255, 240],\r\n\t\"hotpink\": [255, 105, 180],\r\n\t\"indianred\": [205, 92, 92],\r\n\t\"indigo\": [75, 0, 130],\r\n\t\"ivory\": [255, 255, 240],\r\n\t\"khaki\": [240, 230, 140],\r\n\t\"lavender\": [230, 230, 250],\r\n\t\"lavenderblush\": [255, 240, 245],\r\n\t\"lawngreen\": [124, 252, 0],\r\n\t\"lemonchiffon\": [255, 250, 205],\r\n\t\"lightblue\": [173, 216, 230],\r\n\t\"lightcoral\": [240, 128, 128],\r\n\t\"lightcyan\": [224, 255, 255],\r\n\t\"lightgoldenrodyellow\": [250, 250, 210],\r\n\t\"lightgray\": [211, 211, 211],\r\n\t\"lightgreen\": [144, 238, 144],\r\n\t\"lightgrey\": [211, 211, 211],\r\n\t\"lightpink\": [255, 182, 193],\r\n\t\"lightsalmon\": [255, 160, 122],\r\n\t\"lightseagreen\": [32, 178, 170],\r\n\t\"lightskyblue\": [135, 206, 250],\r\n\t\"lightslategray\": [119, 136, 153],\r\n\t\"lightslategrey\": [119, 136, 153],\r\n\t\"lightsteelblue\": [176, 196, 222],\r\n\t\"lightyellow\": [255, 255, 224],\r\n\t\"lime\": [0, 255, 0],\r\n\t\"limegreen\": [50, 205, 50],\r\n\t\"linen\": [250, 240, 230],\r\n\t\"magenta\": [255, 0, 255],\r\n\t\"maroon\": [128, 0, 0],\r\n\t\"mediumaquamarine\": [102, 205, 170],\r\n\t\"mediumblue\": [0, 0, 205],\r\n\t\"mediumorchid\": [186, 85, 211],\r\n\t\"mediumpurple\": [147, 112, 219],\r\n\t\"mediumseagreen\": [60, 179, 113],\r\n\t\"mediumslateblue\": [123, 104, 238],\r\n\t\"mediumspringgreen\": [0, 250, 154],\r\n\t\"mediumturquoise\": [72, 209, 204],\r\n\t\"mediumvioletred\": [199, 21, 133],\r\n\t\"midnightblue\": [25, 25, 112],\r\n\t\"mintcream\": [245, 255, 250],\r\n\t\"mistyrose\": [255, 228, 225],\r\n\t\"moccasin\": [255, 228, 181],\r\n\t\"navajowhite\": [255, 222, 173],\r\n\t\"navy\": [0, 0, 128],\r\n\t\"oldlace\": [253, 245, 230],\r\n\t\"olive\": [128, 128, 0],\r\n\t\"olivedrab\": [107, 142, 35],\r\n\t\"orange\": [255, 165, 0],\r\n\t\"orangered\": [255, 69, 0],\r\n\t\"orchid\": [218, 112, 214],\r\n\t\"palegoldenrod\": [238, 232, 170],\r\n\t\"palegreen\": [152, 251, 152],\r\n\t\"paleturquoise\": [175, 238, 238],\r\n\t\"palevioletred\": [219, 112, 147],\r\n\t\"papayawhip\": [255, 239, 213],\r\n\t\"peachpuff\": [255, 218, 185],\r\n\t\"peru\": [205, 133, 63],\r\n\t\"pink\": [255, 192, 203],\r\n\t\"plum\": [221, 160, 221],\r\n\t\"powderblue\": [176, 224, 230],\r\n\t\"purple\": [128, 0, 128],\r\n\t\"rebeccapurple\": [102, 51, 153],\r\n\t\"red\": [255, 0, 0],\r\n\t\"rosybrown\": [188, 143, 143],\r\n\t\"royalblue\": [65, 105, 225],\r\n\t\"saddlebrown\": [139, 69, 19],\r\n\t\"salmon\": [250, 128, 114],\r\n\t\"sandybrown\": [244, 164, 96],\r\n\t\"seagreen\": [46, 139, 87],\r\n\t\"seashell\": [255, 245, 238],\r\n\t\"sienna\": [160, 82, 45],\r\n\t\"silver\": [192, 192, 192],\r\n\t\"skyblue\": [135, 206, 235],\r\n\t\"slateblue\": [106, 90, 205],\r\n\t\"slategray\": [112, 128, 144],\r\n\t\"slategrey\": [112, 128, 144],\r\n\t\"snow\": [255, 250, 250],\r\n\t\"springgreen\": [0, 255, 127],\r\n\t\"steelblue\": [70, 130, 180],\r\n\t\"tan\": [210, 180, 140],\r\n\t\"teal\": [0, 128, 128],\r\n\t\"thistle\": [216, 191, 216],\r\n\t\"tomato\": [255, 99, 71],\r\n\t\"turquoise\": [64, 224, 208],\r\n\t\"violet\": [238, 130, 238],\r\n\t\"wheat\": [245, 222, 179],\r\n\t\"white\": [255, 255, 255],\r\n\t\"whitesmoke\": [245, 245, 245],\r\n\t\"yellow\": [255, 255, 0],\r\n\t\"yellowgreen\": [154, 205, 50]\r\n};\r\n","module.exports = function isArrayish(obj) {\n\tif (!obj || typeof obj === 'string') {\n\t\treturn false;\n\t}\n\n\treturn obj instanceof Array || Array.isArray(obj) ||\n\t\t(obj.length >= 0 && (obj.splice instanceof Function ||\n\t\t\t(Object.getOwnPropertyDescriptor(obj, (obj.length - 1)) && obj.constructor.name !== 'String')));\n};\n","'use strict';\n\nvar isArrayish = require('is-arrayish');\n\nvar concat = Array.prototype.concat;\nvar slice = Array.prototype.slice;\n\nvar swizzle = module.exports = function swizzle(args) {\n\tvar results = [];\n\n\tfor (var i = 0, len = args.length; i < len; i++) {\n\t\tvar arg = args[i];\n\n\t\tif (isArrayish(arg)) {\n\t\t\t// http://jsperf.com/javascript-array-concat-vs-push/98\n\t\t\tresults = concat.call(results, slice.call(arg));\n\t\t} else {\n\t\t\tresults.push(arg);\n\t\t}\n\t}\n\n\treturn results;\n};\n\nswizzle.wrap = function (fn) {\n\treturn function () {\n\t\treturn fn(swizzle(arguments));\n\t};\n};\n","/* MIT license */\nvar colorNames = require('color-name');\nvar swizzle = require('simple-swizzle');\nvar hasOwnProperty = Object.hasOwnProperty;\n\nvar reverseNames = Object.create(null);\n\n// create a list of reverse color names\nfor (var name in colorNames) {\n\tif (hasOwnProperty.call(colorNames, name)) {\n\t\treverseNames[colorNames[name]] = name;\n\t}\n}\n\nvar cs = module.exports = {\n\tto: {},\n\tget: {}\n};\n\ncs.get = function (string) {\n\tvar prefix = string.substring(0, 3).toLowerCase();\n\tvar val;\n\tvar model;\n\tswitch (prefix) {\n\t\tcase 'hsl':\n\t\t\tval = cs.get.hsl(string);\n\t\t\tmodel = 'hsl';\n\t\t\tbreak;\n\t\tcase 'hwb':\n\t\t\tval = cs.get.hwb(string);\n\t\t\tmodel = 'hwb';\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tval = cs.get.rgb(string);\n\t\t\tmodel = 'rgb';\n\t\t\tbreak;\n\t}\n\n\tif (!val) {\n\t\treturn null;\n\t}\n\n\treturn {model: model, value: val};\n};\n\ncs.get.rgb = function (string) {\n\tif (!string) {\n\t\treturn null;\n\t}\n\n\tvar abbr = /^#([a-f0-9]{3,4})$/i;\n\tvar hex = /^#([a-f0-9]{6})([a-f0-9]{2})?$/i;\n\tvar rgba = /^rgba?\\(\\s*([+-]?\\d+)(?=[\\s,])\\s*(?:,\\s*)?([+-]?\\d+)(?=[\\s,])\\s*(?:,\\s*)?([+-]?\\d+)\\s*(?:[,|\\/]\\s*([+-]?[\\d\\.]+)(%?)\\s*)?\\)$/;\n\tvar per = /^rgba?\\(\\s*([+-]?[\\d\\.]+)\\%\\s*,?\\s*([+-]?[\\d\\.]+)\\%\\s*,?\\s*([+-]?[\\d\\.]+)\\%\\s*(?:[,|\\/]\\s*([+-]?[\\d\\.]+)(%?)\\s*)?\\)$/;\n\tvar keyword = /^(\\w+)$/;\n\n\tvar rgb = [0, 0, 0, 1];\n\tvar match;\n\tvar i;\n\tvar hexAlpha;\n\n\tif (match = string.match(hex)) {\n\t\thexAlpha = match[2];\n\t\tmatch = match[1];\n\n\t\tfor (i = 0; i < 3; i++) {\n\t\t\t// https://jsperf.com/slice-vs-substr-vs-substring-methods-long-string/19\n\t\t\tvar i2 = i * 2;\n\t\t\trgb[i] = parseInt(match.slice(i2, i2 + 2), 16);\n\t\t}\n\n\t\tif (hexAlpha) {\n\t\t\trgb[3] = parseInt(hexAlpha, 16) / 255;\n\t\t}\n\t} else if (match = string.match(abbr)) {\n\t\tmatch = match[1];\n\t\thexAlpha = match[3];\n\n\t\tfor (i = 0; i < 3; i++) {\n\t\t\trgb[i] = parseInt(match[i] + match[i], 16);\n\t\t}\n\n\t\tif (hexAlpha) {\n\t\t\trgb[3] = parseInt(hexAlpha + hexAlpha, 16) / 255;\n\t\t}\n\t} else if (match = string.match(rgba)) {\n\t\tfor (i = 0; i < 3; i++) {\n\t\t\trgb[i] = parseInt(match[i + 1], 0);\n\t\t}\n\n\t\tif (match[4]) {\n\t\t\tif (match[5]) {\n\t\t\t\trgb[3] = parseFloat(match[4]) * 0.01;\n\t\t\t} else {\n\t\t\t\trgb[3] = parseFloat(match[4]);\n\t\t\t}\n\t\t}\n\t} else if (match = string.match(per)) {\n\t\tfor (i = 0; i < 3; i++) {\n\t\t\trgb[i] = Math.round(parseFloat(match[i + 1]) * 2.55);\n\t\t}\n\n\t\tif (match[4]) {\n\t\t\tif (match[5]) {\n\t\t\t\trgb[3] = parseFloat(match[4]) * 0.01;\n\t\t\t} else {\n\t\t\t\trgb[3] = parseFloat(match[4]);\n\t\t\t}\n\t\t}\n\t} else if (match = string.match(keyword)) {\n\t\tif (match[1] === 'transparent') {\n\t\t\treturn [0, 0, 0, 0];\n\t\t}\n\n\t\tif (!hasOwnProperty.call(colorNames, match[1])) {\n\t\t\treturn null;\n\t\t}\n\n\t\trgb = colorNames[match[1]];\n\t\trgb[3] = 1;\n\n\t\treturn rgb;\n\t} else {\n\t\treturn null;\n\t}\n\n\tfor (i = 0; i < 3; i++) {\n\t\trgb[i] = clamp(rgb[i], 0, 255);\n\t}\n\trgb[3] = clamp(rgb[3], 0, 1);\n\n\treturn rgb;\n};\n\ncs.get.hsl = function (string) {\n\tif (!string) {\n\t\treturn null;\n\t}\n\n\tvar hsl = /^hsla?\\(\\s*([+-]?(?:\\d{0,3}\\.)?\\d+)(?:deg)?\\s*,?\\s*([+-]?[\\d\\.]+)%\\s*,?\\s*([+-]?[\\d\\.]+)%\\s*(?:[,|\\/]\\s*([+-]?(?=\\.\\d|\\d)(?:0|[1-9]\\d*)?(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)\\s*)?\\)$/;\n\tvar match = string.match(hsl);\n\n\tif (match) {\n\t\tvar alpha = parseFloat(match[4]);\n\t\tvar h = ((parseFloat(match[1]) % 360) + 360) % 360;\n\t\tvar s = clamp(parseFloat(match[2]), 0, 100);\n\t\tvar l = clamp(parseFloat(match[3]), 0, 100);\n\t\tvar a = clamp(isNaN(alpha) ? 1 : alpha, 0, 1);\n\n\t\treturn [h, s, l, a];\n\t}\n\n\treturn null;\n};\n\ncs.get.hwb = function (string) {\n\tif (!string) {\n\t\treturn null;\n\t}\n\n\tvar hwb = /^hwb\\(\\s*([+-]?\\d{0,3}(?:\\.\\d+)?)(?:deg)?\\s*,\\s*([+-]?[\\d\\.]+)%\\s*,\\s*([+-]?[\\d\\.]+)%\\s*(?:,\\s*([+-]?(?=\\.\\d|\\d)(?:0|[1-9]\\d*)?(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)\\s*)?\\)$/;\n\tvar match = string.match(hwb);\n\n\tif (match) {\n\t\tvar alpha = parseFloat(match[4]);\n\t\tvar h = ((parseFloat(match[1]) % 360) + 360) % 360;\n\t\tvar w = clamp(parseFloat(match[2]), 0, 100);\n\t\tvar b = clamp(parseFloat(match[3]), 0, 100);\n\t\tvar a = clamp(isNaN(alpha) ? 1 : alpha, 0, 1);\n\t\treturn [h, w, b, a];\n\t}\n\n\treturn null;\n};\n\ncs.to.hex = function () {\n\tvar rgba = swizzle(arguments);\n\n\treturn (\n\t\t'#' +\n\t\thexDouble(rgba[0]) +\n\t\thexDouble(rgba[1]) +\n\t\thexDouble(rgba[2]) +\n\t\t(rgba[3] < 1\n\t\t\t? (hexDouble(Math.round(rgba[3] * 255)))\n\t\t\t: '')\n\t);\n};\n\ncs.to.rgb = function () {\n\tvar rgba = swizzle(arguments);\n\n\treturn rgba.length < 4 || rgba[3] === 1\n\t\t? 'rgb(' + Math.round(rgba[0]) + ', ' + Math.round(rgba[1]) + ', ' + Math.round(rgba[2]) + ')'\n\t\t: 'rgba(' + Math.round(rgba[0]) + ', ' + Math.round(rgba[1]) + ', ' + Math.round(rgba[2]) + ', ' + rgba[3] + ')';\n};\n\ncs.to.rgb.percent = function () {\n\tvar rgba = swizzle(arguments);\n\n\tvar r = Math.round(rgba[0] / 255 * 100);\n\tvar g = Math.round(rgba[1] / 255 * 100);\n\tvar b = Math.round(rgba[2] / 255 * 100);\n\n\treturn rgba.length < 4 || rgba[3] === 1\n\t\t? 'rgb(' + r + '%, ' + g + '%, ' + b + '%)'\n\t\t: 'rgba(' + r + '%, ' + g + '%, ' + b + '%, ' + rgba[3] + ')';\n};\n\ncs.to.hsl = function () {\n\tvar hsla = swizzle(arguments);\n\treturn hsla.length < 4 || hsla[3] === 1\n\t\t? 'hsl(' + hsla[0] + ', ' + hsla[1] + '%, ' + hsla[2] + '%)'\n\t\t: 'hsla(' + hsla[0] + ', ' + hsla[1] + '%, ' + hsla[2] + '%, ' + hsla[3] + ')';\n};\n\n// hwb is a bit different than rgb(a) & hsl(a) since there is no alpha specific syntax\n// (hwb have alpha optional & 1 is default value)\ncs.to.hwb = function () {\n\tvar hwba = swizzle(arguments);\n\n\tvar a = '';\n\tif (hwba.length >= 4 && hwba[3] !== 1) {\n\t\ta = ', ' + hwba[3];\n\t}\n\n\treturn 'hwb(' + hwba[0] + ', ' + hwba[1] + '%, ' + hwba[2] + '%' + a + ')';\n};\n\ncs.to.keyword = function (rgb) {\n\treturn reverseNames[rgb.slice(0, 3)];\n};\n\n// helpers\nfunction clamp(num, min, max) {\n\treturn Math.min(Math.max(min, num), max);\n}\n\nfunction hexDouble(num) {\n\tvar str = Math.round(num).toString(16).toUpperCase();\n\treturn (str.length < 2) ? '0' + str : str;\n}\n","'use strict'\r\n\r\nmodule.exports = {\r\n\t\"aliceblue\": [240, 248, 255],\r\n\t\"antiquewhite\": [250, 235, 215],\r\n\t\"aqua\": [0, 255, 255],\r\n\t\"aquamarine\": [127, 255, 212],\r\n\t\"azure\": [240, 255, 255],\r\n\t\"beige\": [245, 245, 220],\r\n\t\"bisque\": [255, 228, 196],\r\n\t\"black\": [0, 0, 0],\r\n\t\"blanchedalmond\": [255, 235, 205],\r\n\t\"blue\": [0, 0, 255],\r\n\t\"blueviolet\": [138, 43, 226],\r\n\t\"brown\": [165, 42, 42],\r\n\t\"burlywood\": [222, 184, 135],\r\n\t\"cadetblue\": [95, 158, 160],\r\n\t\"chartreuse\": [127, 255, 0],\r\n\t\"chocolate\": [210, 105, 30],\r\n\t\"coral\": [255, 127, 80],\r\n\t\"cornflowerblue\": [100, 149, 237],\r\n\t\"cornsilk\": [255, 248, 220],\r\n\t\"crimson\": [220, 20, 60],\r\n\t\"cyan\": [0, 255, 255],\r\n\t\"darkblue\": [0, 0, 139],\r\n\t\"darkcyan\": [0, 139, 139],\r\n\t\"darkgoldenrod\": [184, 134, 11],\r\n\t\"darkgray\": [169, 169, 169],\r\n\t\"darkgreen\": [0, 100, 0],\r\n\t\"darkgrey\": [169, 169, 169],\r\n\t\"darkkhaki\": [189, 183, 107],\r\n\t\"darkmagenta\": [139, 0, 139],\r\n\t\"darkolivegreen\": [85, 107, 47],\r\n\t\"darkorange\": [255, 140, 0],\r\n\t\"darkorchid\": [153, 50, 204],\r\n\t\"darkred\": [139, 0, 0],\r\n\t\"darksalmon\": [233, 150, 122],\r\n\t\"darkseagreen\": [143, 188, 143],\r\n\t\"darkslateblue\": [72, 61, 139],\r\n\t\"darkslategray\": [47, 79, 79],\r\n\t\"darkslategrey\": [47, 79, 79],\r\n\t\"darkturquoise\": [0, 206, 209],\r\n\t\"darkviolet\": [148, 0, 211],\r\n\t\"deeppink\": [255, 20, 147],\r\n\t\"deepskyblue\": [0, 191, 255],\r\n\t\"dimgray\": [105, 105, 105],\r\n\t\"dimgrey\": [105, 105, 105],\r\n\t\"dodgerblue\": [30, 144, 255],\r\n\t\"firebrick\": [178, 34, 34],\r\n\t\"floralwhite\": [255, 250, 240],\r\n\t\"forestgreen\": [34, 139, 34],\r\n\t\"fuchsia\": [255, 0, 255],\r\n\t\"gainsboro\": [220, 220, 220],\r\n\t\"ghostwhite\": [248, 248, 255],\r\n\t\"gold\": [255, 215, 0],\r\n\t\"goldenrod\": [218, 165, 32],\r\n\t\"gray\": [128, 128, 128],\r\n\t\"green\": [0, 128, 0],\r\n\t\"greenyellow\": [173, 255, 47],\r\n\t\"grey\": [128, 128, 128],\r\n\t\"honeydew\": [240, 255, 240],\r\n\t\"hotpink\": [255, 105, 180],\r\n\t\"indianred\": [205, 92, 92],\r\n\t\"indigo\": [75, 0, 130],\r\n\t\"ivory\": [255, 255, 240],\r\n\t\"khaki\": [240, 230, 140],\r\n\t\"lavender\": [230, 230, 250],\r\n\t\"lavenderblush\": [255, 240, 245],\r\n\t\"lawngreen\": [124, 252, 0],\r\n\t\"lemonchiffon\": [255, 250, 205],\r\n\t\"lightblue\": [173, 216, 230],\r\n\t\"lightcoral\": [240, 128, 128],\r\n\t\"lightcyan\": [224, 255, 255],\r\n\t\"lightgoldenrodyellow\": [250, 250, 210],\r\n\t\"lightgray\": [211, 211, 211],\r\n\t\"lightgreen\": [144, 238, 144],\r\n\t\"lightgrey\": [211, 211, 211],\r\n\t\"lightpink\": [255, 182, 193],\r\n\t\"lightsalmon\": [255, 160, 122],\r\n\t\"lightseagreen\": [32, 178, 170],\r\n\t\"lightskyblue\": [135, 206, 250],\r\n\t\"lightslategray\": [119, 136, 153],\r\n\t\"lightslategrey\": [119, 136, 153],\r\n\t\"lightsteelblue\": [176, 196, 222],\r\n\t\"lightyellow\": [255, 255, 224],\r\n\t\"lime\": [0, 255, 0],\r\n\t\"limegreen\": [50, 205, 50],\r\n\t\"linen\": [250, 240, 230],\r\n\t\"magenta\": [255, 0, 255],\r\n\t\"maroon\": [128, 0, 0],\r\n\t\"mediumaquamarine\": [102, 205, 170],\r\n\t\"mediumblue\": [0, 0, 205],\r\n\t\"mediumorchid\": [186, 85, 211],\r\n\t\"mediumpurple\": [147, 112, 219],\r\n\t\"mediumseagreen\": [60, 179, 113],\r\n\t\"mediumslateblue\": [123, 104, 238],\r\n\t\"mediumspringgreen\": [0, 250, 154],\r\n\t\"mediumturquoise\": [72, 209, 204],\r\n\t\"mediumvioletred\": [199, 21, 133],\r\n\t\"midnightblue\": [25, 25, 112],\r\n\t\"mintcream\": [245, 255, 250],\r\n\t\"mistyrose\": [255, 228, 225],\r\n\t\"moccasin\": [255, 228, 181],\r\n\t\"navajowhite\": [255, 222, 173],\r\n\t\"navy\": [0, 0, 128],\r\n\t\"oldlace\": [253, 245, 230],\r\n\t\"olive\": [128, 128, 0],\r\n\t\"olivedrab\": [107, 142, 35],\r\n\t\"orange\": [255, 165, 0],\r\n\t\"orangered\": [255, 69, 0],\r\n\t\"orchid\": [218, 112, 214],\r\n\t\"palegoldenrod\": [238, 232, 170],\r\n\t\"palegreen\": [152, 251, 152],\r\n\t\"paleturquoise\": [175, 238, 238],\r\n\t\"palevioletred\": [219, 112, 147],\r\n\t\"papayawhip\": [255, 239, 213],\r\n\t\"peachpuff\": [255, 218, 185],\r\n\t\"peru\": [205, 133, 63],\r\n\t\"pink\": [255, 192, 203],\r\n\t\"plum\": [221, 160, 221],\r\n\t\"powderblue\": [176, 224, 230],\r\n\t\"purple\": [128, 0, 128],\r\n\t\"rebeccapurple\": [102, 51, 153],\r\n\t\"red\": [255, 0, 0],\r\n\t\"rosybrown\": [188, 143, 143],\r\n\t\"royalblue\": [65, 105, 225],\r\n\t\"saddlebrown\": [139, 69, 19],\r\n\t\"salmon\": [250, 128, 114],\r\n\t\"sandybrown\": [244, 164, 96],\r\n\t\"seagreen\": [46, 139, 87],\r\n\t\"seashell\": [255, 245, 238],\r\n\t\"sienna\": [160, 82, 45],\r\n\t\"silver\": [192, 192, 192],\r\n\t\"skyblue\": [135, 206, 235],\r\n\t\"slateblue\": [106, 90, 205],\r\n\t\"slategray\": [112, 128, 144],\r\n\t\"slategrey\": [112, 128, 144],\r\n\t\"snow\": [255, 250, 250],\r\n\t\"springgreen\": [0, 255, 127],\r\n\t\"steelblue\": [70, 130, 180],\r\n\t\"tan\": [210, 180, 140],\r\n\t\"teal\": [0, 128, 128],\r\n\t\"thistle\": [216, 191, 216],\r\n\t\"tomato\": [255, 99, 71],\r\n\t\"turquoise\": [64, 224, 208],\r\n\t\"violet\": [238, 130, 238],\r\n\t\"wheat\": [245, 222, 179],\r\n\t\"white\": [255, 255, 255],\r\n\t\"whitesmoke\": [245, 245, 245],\r\n\t\"yellow\": [255, 255, 0],\r\n\t\"yellowgreen\": [154, 205, 50]\r\n};\r\n","/* MIT license */\n/* eslint-disable no-mixed-operators */\nconst cssKeywords = require('color-name');\n\n// NOTE: conversions should only return primitive values (i.e. arrays, or\n// values that give correct `typeof` results).\n// do not use box values types (i.e. Number(), String(), etc.)\n\nconst reverseKeywords = {};\nfor (const key of Object.keys(cssKeywords)) {\n\treverseKeywords[cssKeywords[key]] = key;\n}\n\nconst convert = {\n\trgb: {channels: 3, labels: 'rgb'},\n\thsl: {channels: 3, labels: 'hsl'},\n\thsv: {channels: 3, labels: 'hsv'},\n\thwb: {channels: 3, labels: 'hwb'},\n\tcmyk: {channels: 4, labels: 'cmyk'},\n\txyz: {channels: 3, labels: 'xyz'},\n\tlab: {channels: 3, labels: 'lab'},\n\tlch: {channels: 3, labels: 'lch'},\n\thex: {channels: 1, labels: ['hex']},\n\tkeyword: {channels: 1, labels: ['keyword']},\n\tansi16: {channels: 1, labels: ['ansi16']},\n\tansi256: {channels: 1, labels: ['ansi256']},\n\thcg: {channels: 3, labels: ['h', 'c', 'g']},\n\tapple: {channels: 3, labels: ['r16', 'g16', 'b16']},\n\tgray: {channels: 1, labels: ['gray']}\n};\n\nmodule.exports = convert;\n\n// Hide .channels and .labels properties\nfor (const model of Object.keys(convert)) {\n\tif (!('channels' in convert[model])) {\n\t\tthrow new Error('missing channels property: ' + model);\n\t}\n\n\tif (!('labels' in convert[model])) {\n\t\tthrow new Error('missing channel labels property: ' + model);\n\t}\n\n\tif (convert[model].labels.length !== convert[model].channels) {\n\t\tthrow new Error('channel and label counts mismatch: ' + model);\n\t}\n\n\tconst {channels, labels} = convert[model];\n\tdelete convert[model].channels;\n\tdelete convert[model].labels;\n\tObject.defineProperty(convert[model], 'channels', {value: channels});\n\tObject.defineProperty(convert[model], 'labels', {value: labels});\n}\n\nconvert.rgb.hsl = function (rgb) {\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\tconst min = Math.min(r, g, b);\n\tconst max = Math.max(r, g, b);\n\tconst delta = max - min;\n\tlet h;\n\tlet s;\n\n\tif (max === min) {\n\t\th = 0;\n\t} else if (r === max) {\n\t\th = (g - b) / delta;\n\t} else if (g === max) {\n\t\th = 2 + (b - r) / delta;\n\t} else if (b === max) {\n\t\th = 4 + (r - g) / delta;\n\t}\n\n\th = Math.min(h * 60, 360);\n\n\tif (h < 0) {\n\t\th += 360;\n\t}\n\n\tconst l = (min + max) / 2;\n\n\tif (max === min) {\n\t\ts = 0;\n\t} else if (l <= 0.5) {\n\t\ts = delta / (max + min);\n\t} else {\n\t\ts = delta / (2 - max - min);\n\t}\n\n\treturn [h, s * 100, l * 100];\n};\n\nconvert.rgb.hsv = function (rgb) {\n\tlet rdif;\n\tlet gdif;\n\tlet bdif;\n\tlet h;\n\tlet s;\n\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\tconst v = Math.max(r, g, b);\n\tconst diff = v - Math.min(r, g, b);\n\tconst diffc = function (c) {\n\t\treturn (v - c) / 6 / diff + 1 / 2;\n\t};\n\n\tif (diff === 0) {\n\t\th = 0;\n\t\ts = 0;\n\t} else {\n\t\ts = diff / v;\n\t\trdif = diffc(r);\n\t\tgdif = diffc(g);\n\t\tbdif = diffc(b);\n\n\t\tif (r === v) {\n\t\t\th = bdif - gdif;\n\t\t} else if (g === v) {\n\t\t\th = (1 / 3) + rdif - bdif;\n\t\t} else if (b === v) {\n\t\t\th = (2 / 3) + gdif - rdif;\n\t\t}\n\n\t\tif (h < 0) {\n\t\t\th += 1;\n\t\t} else if (h > 1) {\n\t\t\th -= 1;\n\t\t}\n\t}\n\n\treturn [\n\t\th * 360,\n\t\ts * 100,\n\t\tv * 100\n\t];\n};\n\nconvert.rgb.hwb = function (rgb) {\n\tconst r = rgb[0];\n\tconst g = rgb[1];\n\tlet b = rgb[2];\n\tconst h = convert.rgb.hsl(rgb)[0];\n\tconst w = 1 / 255 * Math.min(r, Math.min(g, b));\n\n\tb = 1 - 1 / 255 * Math.max(r, Math.max(g, b));\n\n\treturn [h, w * 100, b * 100];\n};\n\nconvert.rgb.cmyk = function (rgb) {\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\n\tconst k = Math.min(1 - r, 1 - g, 1 - b);\n\tconst c = (1 - r - k) / (1 - k) || 0;\n\tconst m = (1 - g - k) / (1 - k) || 0;\n\tconst y = (1 - b - k) / (1 - k) || 0;\n\n\treturn [c * 100, m * 100, y * 100, k * 100];\n};\n\nfunction comparativeDistance(x, y) {\n\t/*\n\t\tSee https://en.m.wikipedia.org/wiki/Euclidean_distance#Squared_Euclidean_distance\n\t*/\n\treturn (\n\t\t((x[0] - y[0]) ** 2) +\n\t\t((x[1] - y[1]) ** 2) +\n\t\t((x[2] - y[2]) ** 2)\n\t);\n}\n\nconvert.rgb.keyword = function (rgb) {\n\tconst reversed = reverseKeywords[rgb];\n\tif (reversed) {\n\t\treturn reversed;\n\t}\n\n\tlet currentClosestDistance = Infinity;\n\tlet currentClosestKeyword;\n\n\tfor (const keyword of Object.keys(cssKeywords)) {\n\t\tconst value = cssKeywords[keyword];\n\n\t\t// Compute comparative distance\n\t\tconst distance = comparativeDistance(rgb, value);\n\n\t\t// Check if its less, if so set as closest\n\t\tif (distance < currentClosestDistance) {\n\t\t\tcurrentClosestDistance = distance;\n\t\t\tcurrentClosestKeyword = keyword;\n\t\t}\n\t}\n\n\treturn currentClosestKeyword;\n};\n\nconvert.keyword.rgb = function (keyword) {\n\treturn cssKeywords[keyword];\n};\n\nconvert.rgb.xyz = function (rgb) {\n\tlet r = rgb[0] / 255;\n\tlet g = rgb[1] / 255;\n\tlet b = rgb[2] / 255;\n\n\t// Assume sRGB\n\tr = r > 0.04045 ? (((r + 0.055) / 1.055) ** 2.4) : (r / 12.92);\n\tg = g > 0.04045 ? (((g + 0.055) / 1.055) ** 2.4) : (g / 12.92);\n\tb = b > 0.04045 ? (((b + 0.055) / 1.055) ** 2.4) : (b / 12.92);\n\n\tconst x = (r * 0.4124) + (g * 0.3576) + (b * 0.1805);\n\tconst y = (r * 0.2126) + (g * 0.7152) + (b * 0.0722);\n\tconst z = (r * 0.0193) + (g * 0.1192) + (b * 0.9505);\n\n\treturn [x * 100, y * 100, z * 100];\n};\n\nconvert.rgb.lab = function (rgb) {\n\tconst xyz = convert.rgb.xyz(rgb);\n\tlet x = xyz[0];\n\tlet y = xyz[1];\n\tlet z = xyz[2];\n\n\tx /= 95.047;\n\ty /= 100;\n\tz /= 108.883;\n\n\tx = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116);\n\ty = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116);\n\tz = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116);\n\n\tconst l = (116 * y) - 16;\n\tconst a = 500 * (x - y);\n\tconst b = 200 * (y - z);\n\n\treturn [l, a, b];\n};\n\nconvert.hsl.rgb = function (hsl) {\n\tconst h = hsl[0] / 360;\n\tconst s = hsl[1] / 100;\n\tconst l = hsl[2] / 100;\n\tlet t2;\n\tlet t3;\n\tlet val;\n\n\tif (s === 0) {\n\t\tval = l * 255;\n\t\treturn [val, val, val];\n\t}\n\n\tif (l < 0.5) {\n\t\tt2 = l * (1 + s);\n\t} else {\n\t\tt2 = l + s - l * s;\n\t}\n\n\tconst t1 = 2 * l - t2;\n\n\tconst rgb = [0, 0, 0];\n\tfor (let i = 0; i < 3; i++) {\n\t\tt3 = h + 1 / 3 * -(i - 1);\n\t\tif (t3 < 0) {\n\t\t\tt3++;\n\t\t}\n\n\t\tif (t3 > 1) {\n\t\t\tt3--;\n\t\t}\n\n\t\tif (6 * t3 < 1) {\n\t\t\tval = t1 + (t2 - t1) * 6 * t3;\n\t\t} else if (2 * t3 < 1) {\n\t\t\tval = t2;\n\t\t} else if (3 * t3 < 2) {\n\t\t\tval = t1 + (t2 - t1) * (2 / 3 - t3) * 6;\n\t\t} else {\n\t\t\tval = t1;\n\t\t}\n\n\t\trgb[i] = val * 255;\n\t}\n\n\treturn rgb;\n};\n\nconvert.hsl.hsv = function (hsl) {\n\tconst h = hsl[0];\n\tlet s = hsl[1] / 100;\n\tlet l = hsl[2] / 100;\n\tlet smin = s;\n\tconst lmin = Math.max(l, 0.01);\n\n\tl *= 2;\n\ts *= (l <= 1) ? l : 2 - l;\n\tsmin *= lmin <= 1 ? lmin : 2 - lmin;\n\tconst v = (l + s) / 2;\n\tconst sv = l === 0 ? (2 * smin) / (lmin + smin) : (2 * s) / (l + s);\n\n\treturn [h, sv * 100, v * 100];\n};\n\nconvert.hsv.rgb = function (hsv) {\n\tconst h = hsv[0] / 60;\n\tconst s = hsv[1] / 100;\n\tlet v = hsv[2] / 100;\n\tconst hi = Math.floor(h) % 6;\n\n\tconst f = h - Math.floor(h);\n\tconst p = 255 * v * (1 - s);\n\tconst q = 255 * v * (1 - (s * f));\n\tconst t = 255 * v * (1 - (s * (1 - f)));\n\tv *= 255;\n\n\tswitch (hi) {\n\t\tcase 0:\n\t\t\treturn [v, t, p];\n\t\tcase 1:\n\t\t\treturn [q, v, p];\n\t\tcase 2:\n\t\t\treturn [p, v, t];\n\t\tcase 3:\n\t\t\treturn [p, q, v];\n\t\tcase 4:\n\t\t\treturn [t, p, v];\n\t\tcase 5:\n\t\t\treturn [v, p, q];\n\t}\n};\n\nconvert.hsv.hsl = function (hsv) {\n\tconst h = hsv[0];\n\tconst s = hsv[1] / 100;\n\tconst v = hsv[2] / 100;\n\tconst vmin = Math.max(v, 0.01);\n\tlet sl;\n\tlet l;\n\n\tl = (2 - s) * v;\n\tconst lmin = (2 - s) * vmin;\n\tsl = s * vmin;\n\tsl /= (lmin <= 1) ? lmin : 2 - lmin;\n\tsl = sl || 0;\n\tl /= 2;\n\n\treturn [h, sl * 100, l * 100];\n};\n\n// http://dev.w3.org/csswg/css-color/#hwb-to-rgb\nconvert.hwb.rgb = function (hwb) {\n\tconst h = hwb[0] / 360;\n\tlet wh = hwb[1] / 100;\n\tlet bl = hwb[2] / 100;\n\tconst ratio = wh + bl;\n\tlet f;\n\n\t// Wh + bl cant be > 1\n\tif (ratio > 1) {\n\t\twh /= ratio;\n\t\tbl /= ratio;\n\t}\n\n\tconst i = Math.floor(6 * h);\n\tconst v = 1 - bl;\n\tf = 6 * h - i;\n\n\tif ((i & 0x01) !== 0) {\n\t\tf = 1 - f;\n\t}\n\n\tconst n = wh + f * (v - wh); // Linear interpolation\n\n\tlet r;\n\tlet g;\n\tlet b;\n\t/* eslint-disable max-statements-per-line,no-multi-spaces */\n\tswitch (i) {\n\t\tdefault:\n\t\tcase 6:\n\t\tcase 0: r = v; g = n; b = wh; break;\n\t\tcase 1: r = n; g = v; b = wh; break;\n\t\tcase 2: r = wh; g = v; b = n; break;\n\t\tcase 3: r = wh; g = n; b = v; break;\n\t\tcase 4: r = n; g = wh; b = v; break;\n\t\tcase 5: r = v; g = wh; b = n; break;\n\t}\n\t/* eslint-enable max-statements-per-line,no-multi-spaces */\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.cmyk.rgb = function (cmyk) {\n\tconst c = cmyk[0] / 100;\n\tconst m = cmyk[1] / 100;\n\tconst y = cmyk[2] / 100;\n\tconst k = cmyk[3] / 100;\n\n\tconst r = 1 - Math.min(1, c * (1 - k) + k);\n\tconst g = 1 - Math.min(1, m * (1 - k) + k);\n\tconst b = 1 - Math.min(1, y * (1 - k) + k);\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.xyz.rgb = function (xyz) {\n\tconst x = xyz[0] / 100;\n\tconst y = xyz[1] / 100;\n\tconst z = xyz[2] / 100;\n\tlet r;\n\tlet g;\n\tlet b;\n\n\tr = (x * 3.2406) + (y * -1.5372) + (z * -0.4986);\n\tg = (x * -0.9689) + (y * 1.8758) + (z * 0.0415);\n\tb = (x * 0.0557) + (y * -0.2040) + (z * 1.0570);\n\n\t// Assume sRGB\n\tr = r > 0.0031308\n\t\t? ((1.055 * (r ** (1.0 / 2.4))) - 0.055)\n\t\t: r * 12.92;\n\n\tg = g > 0.0031308\n\t\t? ((1.055 * (g ** (1.0 / 2.4))) - 0.055)\n\t\t: g * 12.92;\n\n\tb = b > 0.0031308\n\t\t? ((1.055 * (b ** (1.0 / 2.4))) - 0.055)\n\t\t: b * 12.92;\n\n\tr = Math.min(Math.max(0, r), 1);\n\tg = Math.min(Math.max(0, g), 1);\n\tb = Math.min(Math.max(0, b), 1);\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.xyz.lab = function (xyz) {\n\tlet x = xyz[0];\n\tlet y = xyz[1];\n\tlet z = xyz[2];\n\n\tx /= 95.047;\n\ty /= 100;\n\tz /= 108.883;\n\n\tx = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116);\n\ty = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116);\n\tz = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116);\n\n\tconst l = (116 * y) - 16;\n\tconst a = 500 * (x - y);\n\tconst b = 200 * (y - z);\n\n\treturn [l, a, b];\n};\n\nconvert.lab.xyz = function (lab) {\n\tconst l = lab[0];\n\tconst a = lab[1];\n\tconst b = lab[2];\n\tlet x;\n\tlet y;\n\tlet z;\n\n\ty = (l + 16) / 116;\n\tx = a / 500 + y;\n\tz = y - b / 200;\n\n\tconst y2 = y ** 3;\n\tconst x2 = x ** 3;\n\tconst z2 = z ** 3;\n\ty = y2 > 0.008856 ? y2 : (y - 16 / 116) / 7.787;\n\tx = x2 > 0.008856 ? x2 : (x - 16 / 116) / 7.787;\n\tz = z2 > 0.008856 ? z2 : (z - 16 / 116) / 7.787;\n\n\tx *= 95.047;\n\ty *= 100;\n\tz *= 108.883;\n\n\treturn [x, y, z];\n};\n\nconvert.lab.lch = function (lab) {\n\tconst l = lab[0];\n\tconst a = lab[1];\n\tconst b = lab[2];\n\tlet h;\n\n\tconst hr = Math.atan2(b, a);\n\th = hr * 360 / 2 / Math.PI;\n\n\tif (h < 0) {\n\t\th += 360;\n\t}\n\n\tconst c = Math.sqrt(a * a + b * b);\n\n\treturn [l, c, h];\n};\n\nconvert.lch.lab = function (lch) {\n\tconst l = lch[0];\n\tconst c = lch[1];\n\tconst h = lch[2];\n\n\tconst hr = h / 360 * 2 * Math.PI;\n\tconst a = c * Math.cos(hr);\n\tconst b = c * Math.sin(hr);\n\n\treturn [l, a, b];\n};\n\nconvert.rgb.ansi16 = function (args, saturation = null) {\n\tconst [r, g, b] = args;\n\tlet value = saturation === null ? convert.rgb.hsv(args)[2] : saturation; // Hsv -> ansi16 optimization\n\n\tvalue = Math.round(value / 50);\n\n\tif (value === 0) {\n\t\treturn 30;\n\t}\n\n\tlet ansi = 30\n\t\t+ ((Math.round(b / 255) << 2)\n\t\t| (Math.round(g / 255) << 1)\n\t\t| Math.round(r / 255));\n\n\tif (value === 2) {\n\t\tansi += 60;\n\t}\n\n\treturn ansi;\n};\n\nconvert.hsv.ansi16 = function (args) {\n\t// Optimization here; we already know the value and don't need to get\n\t// it converted for us.\n\treturn convert.rgb.ansi16(convert.hsv.rgb(args), args[2]);\n};\n\nconvert.rgb.ansi256 = function (args) {\n\tconst r = args[0];\n\tconst g = args[1];\n\tconst b = args[2];\n\n\t// We use the extended greyscale palette here, with the exception of\n\t// black and white. normal palette only has 4 greyscale shades.\n\tif (r === g && g === b) {\n\t\tif (r < 8) {\n\t\t\treturn 16;\n\t\t}\n\n\t\tif (r > 248) {\n\t\t\treturn 231;\n\t\t}\n\n\t\treturn Math.round(((r - 8) / 247) * 24) + 232;\n\t}\n\n\tconst ansi = 16\n\t\t+ (36 * Math.round(r / 255 * 5))\n\t\t+ (6 * Math.round(g / 255 * 5))\n\t\t+ Math.round(b / 255 * 5);\n\n\treturn ansi;\n};\n\nconvert.ansi16.rgb = function (args) {\n\tlet color = args % 10;\n\n\t// Handle greyscale\n\tif (color === 0 || color === 7) {\n\t\tif (args > 50) {\n\t\t\tcolor += 3.5;\n\t\t}\n\n\t\tcolor = color / 10.5 * 255;\n\n\t\treturn [color, color, color];\n\t}\n\n\tconst mult = (~~(args > 50) + 1) * 0.5;\n\tconst r = ((color & 1) * mult) * 255;\n\tconst g = (((color >> 1) & 1) * mult) * 255;\n\tconst b = (((color >> 2) & 1) * mult) * 255;\n\n\treturn [r, g, b];\n};\n\nconvert.ansi256.rgb = function (args) {\n\t// Handle greyscale\n\tif (args >= 232) {\n\t\tconst c = (args - 232) * 10 + 8;\n\t\treturn [c, c, c];\n\t}\n\n\targs -= 16;\n\n\tlet rem;\n\tconst r = Math.floor(args / 36) / 5 * 255;\n\tconst g = Math.floor((rem = args % 36) / 6) / 5 * 255;\n\tconst b = (rem % 6) / 5 * 255;\n\n\treturn [r, g, b];\n};\n\nconvert.rgb.hex = function (args) {\n\tconst integer = ((Math.round(args[0]) & 0xFF) << 16)\n\t\t+ ((Math.round(args[1]) & 0xFF) << 8)\n\t\t+ (Math.round(args[2]) & 0xFF);\n\n\tconst string = integer.toString(16).toUpperCase();\n\treturn '000000'.substring(string.length) + string;\n};\n\nconvert.hex.rgb = function (args) {\n\tconst match = args.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);\n\tif (!match) {\n\t\treturn [0, 0, 0];\n\t}\n\n\tlet colorString = match[0];\n\n\tif (match[0].length === 3) {\n\t\tcolorString = colorString.split('').map(char => {\n\t\t\treturn char + char;\n\t\t}).join('');\n\t}\n\n\tconst integer = parseInt(colorString, 16);\n\tconst r = (integer >> 16) & 0xFF;\n\tconst g = (integer >> 8) & 0xFF;\n\tconst b = integer & 0xFF;\n\n\treturn [r, g, b];\n};\n\nconvert.rgb.hcg = function (rgb) {\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\tconst max = Math.max(Math.max(r, g), b);\n\tconst min = Math.min(Math.min(r, g), b);\n\tconst chroma = (max - min);\n\tlet grayscale;\n\tlet hue;\n\n\tif (chroma < 1) {\n\t\tgrayscale = min / (1 - chroma);\n\t} else {\n\t\tgrayscale = 0;\n\t}\n\n\tif (chroma <= 0) {\n\t\thue = 0;\n\t} else\n\tif (max === r) {\n\t\thue = ((g - b) / chroma) % 6;\n\t} else\n\tif (max === g) {\n\t\thue = 2 + (b - r) / chroma;\n\t} else {\n\t\thue = 4 + (r - g) / chroma;\n\t}\n\n\thue /= 6;\n\thue %= 1;\n\n\treturn [hue * 360, chroma * 100, grayscale * 100];\n};\n\nconvert.hsl.hcg = function (hsl) {\n\tconst s = hsl[1] / 100;\n\tconst l = hsl[2] / 100;\n\n\tconst c = l < 0.5 ? (2.0 * s * l) : (2.0 * s * (1.0 - l));\n\n\tlet f = 0;\n\tif (c < 1.0) {\n\t\tf = (l - 0.5 * c) / (1.0 - c);\n\t}\n\n\treturn [hsl[0], c * 100, f * 100];\n};\n\nconvert.hsv.hcg = function (hsv) {\n\tconst s = hsv[1] / 100;\n\tconst v = hsv[2] / 100;\n\n\tconst c = s * v;\n\tlet f = 0;\n\n\tif (c < 1.0) {\n\t\tf = (v - c) / (1 - c);\n\t}\n\n\treturn [hsv[0], c * 100, f * 100];\n};\n\nconvert.hcg.rgb = function (hcg) {\n\tconst h = hcg[0] / 360;\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\n\tif (c === 0.0) {\n\t\treturn [g * 255, g * 255, g * 255];\n\t}\n\n\tconst pure = [0, 0, 0];\n\tconst hi = (h % 1) * 6;\n\tconst v = hi % 1;\n\tconst w = 1 - v;\n\tlet mg = 0;\n\n\t/* eslint-disable max-statements-per-line */\n\tswitch (Math.floor(hi)) {\n\t\tcase 0:\n\t\t\tpure[0] = 1; pure[1] = v; pure[2] = 0; break;\n\t\tcase 1:\n\t\t\tpure[0] = w; pure[1] = 1; pure[2] = 0; break;\n\t\tcase 2:\n\t\t\tpure[0] = 0; pure[1] = 1; pure[2] = v; break;\n\t\tcase 3:\n\t\t\tpure[0] = 0; pure[1] = w; pure[2] = 1; break;\n\t\tcase 4:\n\t\t\tpure[0] = v; pure[1] = 0; pure[2] = 1; break;\n\t\tdefault:\n\t\t\tpure[0] = 1; pure[1] = 0; pure[2] = w;\n\t}\n\t/* eslint-enable max-statements-per-line */\n\n\tmg = (1.0 - c) * g;\n\n\treturn [\n\t\t(c * pure[0] + mg) * 255,\n\t\t(c * pure[1] + mg) * 255,\n\t\t(c * pure[2] + mg) * 255\n\t];\n};\n\nconvert.hcg.hsv = function (hcg) {\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\n\tconst v = c + g * (1.0 - c);\n\tlet f = 0;\n\n\tif (v > 0.0) {\n\t\tf = c / v;\n\t}\n\n\treturn [hcg[0], f * 100, v * 100];\n};\n\nconvert.hcg.hsl = function (hcg) {\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\n\tconst l = g * (1.0 - c) + 0.5 * c;\n\tlet s = 0;\n\n\tif (l > 0.0 && l < 0.5) {\n\t\ts = c / (2 * l);\n\t} else\n\tif (l >= 0.5 && l < 1.0) {\n\t\ts = c / (2 * (1 - l));\n\t}\n\n\treturn [hcg[0], s * 100, l * 100];\n};\n\nconvert.hcg.hwb = function (hcg) {\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\tconst v = c + g * (1.0 - c);\n\treturn [hcg[0], (v - c) * 100, (1 - v) * 100];\n};\n\nconvert.hwb.hcg = function (hwb) {\n\tconst w = hwb[1] / 100;\n\tconst b = hwb[2] / 100;\n\tconst v = 1 - b;\n\tconst c = v - w;\n\tlet g = 0;\n\n\tif (c < 1) {\n\t\tg = (v - c) / (1 - c);\n\t}\n\n\treturn [hwb[0], c * 100, g * 100];\n};\n\nconvert.apple.rgb = function (apple) {\n\treturn [(apple[0] / 65535) * 255, (apple[1] / 65535) * 255, (apple[2] / 65535) * 255];\n};\n\nconvert.rgb.apple = function (rgb) {\n\treturn [(rgb[0] / 255) * 65535, (rgb[1] / 255) * 65535, (rgb[2] / 255) * 65535];\n};\n\nconvert.gray.rgb = function (args) {\n\treturn [args[0] / 100 * 255, args[0] / 100 * 255, args[0] / 100 * 255];\n};\n\nconvert.gray.hsl = function (args) {\n\treturn [0, 0, args[0]];\n};\n\nconvert.gray.hsv = convert.gray.hsl;\n\nconvert.gray.hwb = function (gray) {\n\treturn [0, 100, gray[0]];\n};\n\nconvert.gray.cmyk = function (gray) {\n\treturn [0, 0, 0, gray[0]];\n};\n\nconvert.gray.lab = function (gray) {\n\treturn [gray[0], 0, 0];\n};\n\nconvert.gray.hex = function (gray) {\n\tconst val = Math.round(gray[0] / 100 * 255) & 0xFF;\n\tconst integer = (val << 16) + (val << 8) + val;\n\n\tconst string = integer.toString(16).toUpperCase();\n\treturn '000000'.substring(string.length) + string;\n};\n\nconvert.rgb.gray = function (rgb) {\n\tconst val = (rgb[0] + rgb[1] + rgb[2]) / 3;\n\treturn [val / 255 * 100];\n};\n","const conversions = require('./conversions');\n\n/*\n\tThis function routes a model to all other models.\n\n\tall functions that are routed have a property `.conversion` attached\n\tto the returned synthetic function. This property is an array\n\tof strings, each with the steps in between the 'from' and 'to'\n\tcolor models (inclusive).\n\n\tconversions that are not possible simply are not included.\n*/\n\nfunction buildGraph() {\n\tconst graph = {};\n\t// https://jsperf.com/object-keys-vs-for-in-with-closure/3\n\tconst models = Object.keys(conversions);\n\n\tfor (let len = models.length, i = 0; i < len; i++) {\n\t\tgraph[models[i]] = {\n\t\t\t// http://jsperf.com/1-vs-infinity\n\t\t\t// micro-opt, but this is simple.\n\t\t\tdistance: -1,\n\t\t\tparent: null\n\t\t};\n\t}\n\n\treturn graph;\n}\n\n// https://en.wikipedia.org/wiki/Breadth-first_search\nfunction deriveBFS(fromModel) {\n\tconst graph = buildGraph();\n\tconst queue = [fromModel]; // Unshift -> queue -> pop\n\n\tgraph[fromModel].distance = 0;\n\n\twhile (queue.length) {\n\t\tconst current = queue.pop();\n\t\tconst adjacents = Object.keys(conversions[current]);\n\n\t\tfor (let len = adjacents.length, i = 0; i < len; i++) {\n\t\t\tconst adjacent = adjacents[i];\n\t\t\tconst node = graph[adjacent];\n\n\t\t\tif (node.distance === -1) {\n\t\t\t\tnode.distance = graph[current].distance + 1;\n\t\t\t\tnode.parent = current;\n\t\t\t\tqueue.unshift(adjacent);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn graph;\n}\n\nfunction link(from, to) {\n\treturn function (args) {\n\t\treturn to(from(args));\n\t};\n}\n\nfunction wrapConversion(toModel, graph) {\n\tconst path = [graph[toModel].parent, toModel];\n\tlet fn = conversions[graph[toModel].parent][toModel];\n\n\tlet cur = graph[toModel].parent;\n\twhile (graph[cur].parent) {\n\t\tpath.unshift(graph[cur].parent);\n\t\tfn = link(conversions[graph[cur].parent][cur], fn);\n\t\tcur = graph[cur].parent;\n\t}\n\n\tfn.conversion = path;\n\treturn fn;\n}\n\nmodule.exports = function (fromModel) {\n\tconst graph = deriveBFS(fromModel);\n\tconst conversion = {};\n\n\tconst models = Object.keys(graph);\n\tfor (let len = models.length, i = 0; i < len; i++) {\n\t\tconst toModel = models[i];\n\t\tconst node = graph[toModel];\n\n\t\tif (node.parent === null) {\n\t\t\t// No possible conversion, or this node is the source model.\n\t\t\tcontinue;\n\t\t}\n\n\t\tconversion[toModel] = wrapConversion(toModel, graph);\n\t}\n\n\treturn conversion;\n};\n\n","const conversions = require('./conversions');\nconst route = require('./route');\n\nconst convert = {};\n\nconst models = Object.keys(conversions);\n\nfunction wrapRaw(fn) {\n\tconst wrappedFn = function (...args) {\n\t\tconst arg0 = args[0];\n\t\tif (arg0 === undefined || arg0 === null) {\n\t\t\treturn arg0;\n\t\t}\n\n\t\tif (arg0.length > 1) {\n\t\t\targs = arg0;\n\t\t}\n\n\t\treturn fn(args);\n\t};\n\n\t// Preserve .conversion property if there is one\n\tif ('conversion' in fn) {\n\t\twrappedFn.conversion = fn.conversion;\n\t}\n\n\treturn wrappedFn;\n}\n\nfunction wrapRounded(fn) {\n\tconst wrappedFn = function (...args) {\n\t\tconst arg0 = args[0];\n\n\t\tif (arg0 === undefined || arg0 === null) {\n\t\t\treturn arg0;\n\t\t}\n\n\t\tif (arg0.length > 1) {\n\t\t\targs = arg0;\n\t\t}\n\n\t\tconst result = fn(args);\n\n\t\t// We're assuming the result is an array here.\n\t\t// see notice in conversions.js; don't use box types\n\t\t// in conversion functions.\n\t\tif (typeof result === 'object') {\n\t\t\tfor (let len = result.length, i = 0; i < len; i++) {\n\t\t\t\tresult[i] = Math.round(result[i]);\n\t\t\t}\n\t\t}\n\n\t\treturn result;\n\t};\n\n\t// Preserve .conversion property if there is one\n\tif ('conversion' in fn) {\n\t\twrappedFn.conversion = fn.conversion;\n\t}\n\n\treturn wrappedFn;\n}\n\nmodels.forEach(fromModel => {\n\tconvert[fromModel] = {};\n\n\tObject.defineProperty(convert[fromModel], 'channels', {value: conversions[fromModel].channels});\n\tObject.defineProperty(convert[fromModel], 'labels', {value: conversions[fromModel].labels});\n\n\tconst routes = route(fromModel);\n\tconst routeModels = Object.keys(routes);\n\n\trouteModels.forEach(toModel => {\n\t\tconst fn = routes[toModel];\n\n\t\tconvert[fromModel][toModel] = wrapRounded(fn);\n\t\tconvert[fromModel][toModel].raw = wrapRaw(fn);\n\t});\n});\n\nmodule.exports = convert;\n","const colorString = require('color-string');\nconst convert = require('color-convert');\n\nconst skippedModels = [\n\t// To be honest, I don't really feel like keyword belongs in color convert, but eh.\n\t'keyword',\n\n\t// Gray conflicts with some method names, and has its own method defined.\n\t'gray',\n\n\t// Shouldn't really be in color-convert either...\n\t'hex',\n];\n\nconst hashedModelKeys = {};\nfor (const model of Object.keys(convert)) {\n\thashedModelKeys[[...convert[model].labels].sort().join('')] = model;\n}\n\nconst limiters = {};\n\nfunction Color(object, model) {\n\tif (!(this instanceof Color)) {\n\t\treturn new Color(object, model);\n\t}\n\n\tif (model && model in skippedModels) {\n\t\tmodel = null;\n\t}\n\n\tif (model && !(model in convert)) {\n\t\tthrow new Error('Unknown model: ' + model);\n\t}\n\n\tlet i;\n\tlet channels;\n\n\tif (object == null) { // eslint-disable-line no-eq-null,eqeqeq\n\t\tthis.model = 'rgb';\n\t\tthis.color = [0, 0, 0];\n\t\tthis.valpha = 1;\n\t} else if (object instanceof Color) {\n\t\tthis.model = object.model;\n\t\tthis.color = [...object.color];\n\t\tthis.valpha = object.valpha;\n\t} else if (typeof object === 'string') {\n\t\tconst result = colorString.get(object);\n\t\tif (result === null) {\n\t\t\tthrow new Error('Unable to parse color from string: ' + object);\n\t\t}\n\n\t\tthis.model = result.model;\n\t\tchannels = convert[this.model].channels;\n\t\tthis.color = result.value.slice(0, channels);\n\t\tthis.valpha = typeof result.value[channels] === 'number' ? result.value[channels] : 1;\n\t} else if (object.length > 0) {\n\t\tthis.model = model || 'rgb';\n\t\tchannels = convert[this.model].channels;\n\t\tconst newArray = Array.prototype.slice.call(object, 0, channels);\n\t\tthis.color = zeroArray(newArray, channels);\n\t\tthis.valpha = typeof object[channels] === 'number' ? object[channels] : 1;\n\t} else if (typeof object === 'number') {\n\t\t// This is always RGB - can be converted later on.\n\t\tthis.model = 'rgb';\n\t\tthis.color = [\n\t\t\t(object >> 16) & 0xFF,\n\t\t\t(object >> 8) & 0xFF,\n\t\t\tobject & 0xFF,\n\t\t];\n\t\tthis.valpha = 1;\n\t} else {\n\t\tthis.valpha = 1;\n\n\t\tconst keys = Object.keys(object);\n\t\tif ('alpha' in object) {\n\t\t\tkeys.splice(keys.indexOf('alpha'), 1);\n\t\t\tthis.valpha = typeof object.alpha === 'number' ? object.alpha : 0;\n\t\t}\n\n\t\tconst hashedKeys = keys.sort().join('');\n\t\tif (!(hashedKeys in hashedModelKeys)) {\n\t\t\tthrow new Error('Unable to parse color from object: ' + JSON.stringify(object));\n\t\t}\n\n\t\tthis.model = hashedModelKeys[hashedKeys];\n\n\t\tconst {labels} = convert[this.model];\n\t\tconst color = [];\n\t\tfor (i = 0; i < labels.length; i++) {\n\t\t\tcolor.push(object[labels[i]]);\n\t\t}\n\n\t\tthis.color = zeroArray(color);\n\t}\n\n\t// Perform limitations (clamping, etc.)\n\tif (limiters[this.model]) {\n\t\tchannels = convert[this.model].channels;\n\t\tfor (i = 0; i < channels; i++) {\n\t\t\tconst limit = limiters[this.model][i];\n\t\t\tif (limit) {\n\t\t\t\tthis.color[i] = limit(this.color[i]);\n\t\t\t}\n\t\t}\n\t}\n\n\tthis.valpha = Math.max(0, Math.min(1, this.valpha));\n\n\tif (Object.freeze) {\n\t\tObject.freeze(this);\n\t}\n}\n\nColor.prototype = {\n\ttoString() {\n\t\treturn this.string();\n\t},\n\n\ttoJSON() {\n\t\treturn this[this.model]();\n\t},\n\n\tstring(places) {\n\t\tlet self = this.model in colorString.to ? this : this.rgb();\n\t\tself = self.round(typeof places === 'number' ? places : 1);\n\t\tconst args = self.valpha === 1 ? self.color : [...self.color, this.valpha];\n\t\treturn colorString.to[self.model](args);\n\t},\n\n\tpercentString(places) {\n\t\tconst self = this.rgb().round(typeof places === 'number' ? places : 1);\n\t\tconst args = self.valpha === 1 ? self.color : [...self.color, this.valpha];\n\t\treturn colorString.to.rgb.percent(args);\n\t},\n\n\tarray() {\n\t\treturn this.valpha === 1 ? [...this.color] : [...this.color, this.valpha];\n\t},\n\n\tobject() {\n\t\tconst result = {};\n\t\tconst {channels} = convert[this.model];\n\t\tconst {labels} = convert[this.model];\n\n\t\tfor (let i = 0; i < channels; i++) {\n\t\t\tresult[labels[i]] = this.color[i];\n\t\t}\n\n\t\tif (this.valpha !== 1) {\n\t\t\tresult.alpha = this.valpha;\n\t\t}\n\n\t\treturn result;\n\t},\n\n\tunitArray() {\n\t\tconst rgb = this.rgb().color;\n\t\trgb[0] /= 255;\n\t\trgb[1] /= 255;\n\t\trgb[2] /= 255;\n\n\t\tif (this.valpha !== 1) {\n\t\t\trgb.push(this.valpha);\n\t\t}\n\n\t\treturn rgb;\n\t},\n\n\tunitObject() {\n\t\tconst rgb = this.rgb().object();\n\t\trgb.r /= 255;\n\t\trgb.g /= 255;\n\t\trgb.b /= 255;\n\n\t\tif (this.valpha !== 1) {\n\t\t\trgb.alpha = this.valpha;\n\t\t}\n\n\t\treturn rgb;\n\t},\n\n\tround(places) {\n\t\tplaces = Math.max(places || 0, 0);\n\t\treturn new Color([...this.color.map(roundToPlace(places)), this.valpha], this.model);\n\t},\n\n\talpha(value) {\n\t\tif (value !== undefined) {\n\t\t\treturn new Color([...this.color, Math.max(0, Math.min(1, value))], this.model);\n\t\t}\n\n\t\treturn this.valpha;\n\t},\n\n\t// Rgb\n\tred: getset('rgb', 0, maxfn(255)),\n\tgreen: getset('rgb', 1, maxfn(255)),\n\tblue: getset('rgb', 2, maxfn(255)),\n\n\thue: getset(['hsl', 'hsv', 'hsl', 'hwb', 'hcg'], 0, value => ((value % 360) + 360) % 360),\n\n\tsaturationl: getset('hsl', 1, maxfn(100)),\n\tlightness: getset('hsl', 2, maxfn(100)),\n\n\tsaturationv: getset('hsv', 1, maxfn(100)),\n\tvalue: getset('hsv', 2, maxfn(100)),\n\n\tchroma: getset('hcg', 1, maxfn(100)),\n\tgray: getset('hcg', 2, maxfn(100)),\n\n\twhite: getset('hwb', 1, maxfn(100)),\n\twblack: getset('hwb', 2, maxfn(100)),\n\n\tcyan: getset('cmyk', 0, maxfn(100)),\n\tmagenta: getset('cmyk', 1, maxfn(100)),\n\tyellow: getset('cmyk', 2, maxfn(100)),\n\tblack: getset('cmyk', 3, maxfn(100)),\n\n\tx: getset('xyz', 0, maxfn(95.047)),\n\ty: getset('xyz', 1, maxfn(100)),\n\tz: getset('xyz', 2, maxfn(108.833)),\n\n\tl: getset('lab', 0, maxfn(100)),\n\ta: getset('lab', 1),\n\tb: getset('lab', 2),\n\n\tkeyword(value) {\n\t\tif (value !== undefined) {\n\t\t\treturn new Color(value);\n\t\t}\n\n\t\treturn convert[this.model].keyword(this.color);\n\t},\n\n\thex(value) {\n\t\tif (value !== undefined) {\n\t\t\treturn new Color(value);\n\t\t}\n\n\t\treturn colorString.to.hex(this.rgb().round().color);\n\t},\n\n\thexa(value) {\n\t\tif (value !== undefined) {\n\t\t\treturn new Color(value);\n\t\t}\n\n\t\tconst rgbArray = this.rgb().round().color;\n\n\t\tlet alphaHex = Math.round(this.valpha * 255).toString(16).toUpperCase();\n\t\tif (alphaHex.length === 1) {\n\t\t\talphaHex = '0' + alphaHex;\n\t\t}\n\n\t\treturn colorString.to.hex(rgbArray) + alphaHex;\n\t},\n\n\trgbNumber() {\n\t\tconst rgb = this.rgb().color;\n\t\treturn ((rgb[0] & 0xFF) << 16) | ((rgb[1] & 0xFF) << 8) | (rgb[2] & 0xFF);\n\t},\n\n\tluminosity() {\n\t\t// http://www.w3.org/TR/WCAG20/#relativeluminancedef\n\t\tconst rgb = this.rgb().color;\n\n\t\tconst lum = [];\n\t\tfor (const [i, element] of rgb.entries()) {\n\t\t\tconst chan = element / 255;\n\t\t\tlum[i] = (chan <= 0.04045) ? chan / 12.92 : ((chan + 0.055) / 1.055) ** 2.4;\n\t\t}\n\n\t\treturn 0.2126 * lum[0] + 0.7152 * lum[1] + 0.0722 * lum[2];\n\t},\n\n\tcontrast(color2) {\n\t\t// http://www.w3.org/TR/WCAG20/#contrast-ratiodef\n\t\tconst lum1 = this.luminosity();\n\t\tconst lum2 = color2.luminosity();\n\n\t\tif (lum1 > lum2) {\n\t\t\treturn (lum1 + 0.05) / (lum2 + 0.05);\n\t\t}\n\n\t\treturn (lum2 + 0.05) / (lum1 + 0.05);\n\t},\n\n\tlevel(color2) {\n\t\t// https://www.w3.org/TR/WCAG/#contrast-enhanced\n\t\tconst contrastRatio = this.contrast(color2);\n\t\tif (contrastRatio >= 7) {\n\t\t\treturn 'AAA';\n\t\t}\n\n\t\treturn (contrastRatio >= 4.5) ? 'AA' : '';\n\t},\n\n\tisDark() {\n\t\t// YIQ equation from http://24ways.org/2010/calculating-color-contrast\n\t\tconst rgb = this.rgb().color;\n\t\tconst yiq = (rgb[0] * 2126 + rgb[1] * 7152 + rgb[2] * 722) / 10000;\n\t\treturn yiq < 128;\n\t},\n\n\tisLight() {\n\t\treturn !this.isDark();\n\t},\n\n\tnegate() {\n\t\tconst rgb = this.rgb();\n\t\tfor (let i = 0; i < 3; i++) {\n\t\t\trgb.color[i] = 255 - rgb.color[i];\n\t\t}\n\n\t\treturn rgb;\n\t},\n\n\tlighten(ratio) {\n\t\tconst hsl = this.hsl();\n\t\thsl.color[2] += hsl.color[2] * ratio;\n\t\treturn hsl;\n\t},\n\n\tdarken(ratio) {\n\t\tconst hsl = this.hsl();\n\t\thsl.color[2] -= hsl.color[2] * ratio;\n\t\treturn hsl;\n\t},\n\n\tsaturate(ratio) {\n\t\tconst hsl = this.hsl();\n\t\thsl.color[1] += hsl.color[1] * ratio;\n\t\treturn hsl;\n\t},\n\n\tdesaturate(ratio) {\n\t\tconst hsl = this.hsl();\n\t\thsl.color[1] -= hsl.color[1] * ratio;\n\t\treturn hsl;\n\t},\n\n\twhiten(ratio) {\n\t\tconst hwb = this.hwb();\n\t\thwb.color[1] += hwb.color[1] * ratio;\n\t\treturn hwb;\n\t},\n\n\tblacken(ratio) {\n\t\tconst hwb = this.hwb();\n\t\thwb.color[2] += hwb.color[2] * ratio;\n\t\treturn hwb;\n\t},\n\n\tgrayscale() {\n\t\t// http://en.wikipedia.org/wiki/Grayscale#Converting_color_to_grayscale\n\t\tconst rgb = this.rgb().color;\n\t\tconst value = rgb[0] * 0.3 + rgb[1] * 0.59 + rgb[2] * 0.11;\n\t\treturn Color.rgb(value, value, value);\n\t},\n\n\tfade(ratio) {\n\t\treturn this.alpha(this.valpha - (this.valpha * ratio));\n\t},\n\n\topaquer(ratio) {\n\t\treturn this.alpha(this.valpha + (this.valpha * ratio));\n\t},\n\n\trotate(degrees) {\n\t\tconst hsl = this.hsl();\n\t\tlet hue = hsl.color[0];\n\t\thue = (hue + degrees) % 360;\n\t\thue = hue < 0 ? 360 + hue : hue;\n\t\thsl.color[0] = hue;\n\t\treturn hsl;\n\t},\n\n\tmix(mixinColor, weight) {\n\t\t// Ported from sass implementation in C\n\t\t// https://github.com/sass/libsass/blob/0e6b4a2850092356aa3ece07c6b249f0221caced/functions.cpp#L209\n\t\tif (!mixinColor || !mixinColor.rgb) {\n\t\t\tthrow new Error('Argument to \"mix\" was not a Color instance, but rather an instance of ' + typeof mixinColor);\n\t\t}\n\n\t\tconst color1 = mixinColor.rgb();\n\t\tconst color2 = this.rgb();\n\t\tconst p = weight === undefined ? 0.5 : weight;\n\n\t\tconst w = 2 * p - 1;\n\t\tconst a = color1.alpha() - color2.alpha();\n\n\t\tconst w1 = (((w * a === -1) ? w : (w + a) / (1 + w * a)) + 1) / 2;\n\t\tconst w2 = 1 - w1;\n\n\t\treturn Color.rgb(\n\t\t\tw1 * color1.red() + w2 * color2.red(),\n\t\t\tw1 * color1.green() + w2 * color2.green(),\n\t\t\tw1 * color1.blue() + w2 * color2.blue(),\n\t\t\tcolor1.alpha() * p + color2.alpha() * (1 - p));\n\t},\n};\n\n// Model conversion methods and static constructors\nfor (const model of Object.keys(convert)) {\n\tif (skippedModels.includes(model)) {\n\t\tcontinue;\n\t}\n\n\tconst {channels} = convert[model];\n\n\t// Conversion methods\n\tColor.prototype[model] = function (...args) {\n\t\tif (this.model === model) {\n\t\t\treturn new Color(this);\n\t\t}\n\n\t\tif (args.length > 0) {\n\t\t\treturn new Color(args, model);\n\t\t}\n\n\t\treturn new Color([...assertArray(convert[this.model][model].raw(this.color)), this.valpha], model);\n\t};\n\n\t// 'static' construction methods\n\tColor[model] = function (...args) {\n\t\tlet color = args[0];\n\t\tif (typeof color === 'number') {\n\t\t\tcolor = zeroArray(args, channels);\n\t\t}\n\n\t\treturn new Color(color, model);\n\t};\n}\n\nfunction roundTo(number, places) {\n\treturn Number(number.toFixed(places));\n}\n\nfunction roundToPlace(places) {\n\treturn function (number) {\n\t\treturn roundTo(number, places);\n\t};\n}\n\nfunction getset(model, channel, modifier) {\n\tmodel = Array.isArray(model) ? model : [model];\n\n\tfor (const m of model) {\n\t\t(limiters[m] || (limiters[m] = []))[channel] = modifier;\n\t}\n\n\tmodel = model[0];\n\n\treturn function (value) {\n\t\tlet result;\n\n\t\tif (value !== undefined) {\n\t\t\tif (modifier) {\n\t\t\t\tvalue = modifier(value);\n\t\t\t}\n\n\t\t\tresult = this[model]();\n\t\t\tresult.color[channel] = value;\n\t\t\treturn result;\n\t\t}\n\n\t\tresult = this[model]().color[channel];\n\t\tif (modifier) {\n\t\t\tresult = modifier(result);\n\t\t}\n\n\t\treturn result;\n\t};\n}\n\nfunction maxfn(max) {\n\treturn function (v) {\n\t\treturn Math.max(0, Math.min(max, v));\n\t};\n}\n\nfunction assertArray(value) {\n\treturn Array.isArray(value) ? value : [value];\n}\n\nfunction zeroArray(array, length) {\n\tfor (let i = 0; i < length; i++) {\n\t\tif (typeof array[i] !== 'number') {\n\t\t\tarray[i] = 0;\n\t\t}\n\t}\n\n\treturn array;\n}\n\nmodule.exports = Color;\n","import Color from \"color\";\n\nexport const CSS = {\n channel: \"channel\",\n channels: \"channels\",\n colorField: \"color-field\",\n colorFieldScope: \"scope--color-field\",\n colorMode: \"color-mode\",\n colorModeContainer: \"color-mode-container\",\n container: \"container\",\n control: \"control\",\n controlAndScope: \"control-and-scope\",\n controlSection: \"control-section\",\n deleteColor: \"delete-color\",\n header: \"header\",\n hexAndChannelsGroup: \"hex-and-channels-group\",\n hexOptions: \"color-hex-options\",\n hueScope: \"scope--hue\",\n hueSlider: \"hue-slider\",\n opacityScope: \"scope--opacity\",\n opacitySlider: \"opacity-slider\",\n preview: \"preview\",\n previewAndSliders: \"preview-and-sliders\",\n saveColor: \"save-color\",\n savedColor: \"saved-color\",\n savedColors: \"saved-colors\",\n savedColorsButtons: \"saved-colors-buttons\",\n savedColorsSection: \"saved-colors-section\",\n scope: \"scope\",\n section: \"section\",\n slider: \"slider\",\n sliders: \"sliders\",\n splitSection: \"section--split\",\n};\n\nexport const DEFAULT_COLOR = Color(\"#007AC2\");\nexport const DEFAULT_STORAGE_KEY_PREFIX = \"calcite-color-\";\n\nexport const RGB_LIMITS = {\n r: 255,\n g: 255,\n b: 255,\n};\n\nexport const HSV_LIMITS = {\n h: 360,\n s: 100,\n v: 100,\n};\n\n// 0 and 360 represent the same value, so we limit the hue to 359\nexport const HUE_LIMIT_CONSTRAINED = HSV_LIMITS.h - 1;\n\nexport const OPACITY_LIMITS = {\n min: 0,\n max: 100,\n};\n\nexport const DIMENSIONS = {\n s: {\n slider: {\n height: 12,\n width: 104,\n },\n colorField: {\n height: 80,\n width: 160,\n },\n thumb: {\n radius: 10,\n },\n },\n m: {\n slider: {\n height: 12,\n width: 204,\n },\n colorField: {\n height: 150,\n width: 272,\n },\n thumb: {\n radius: 10,\n },\n },\n l: {\n slider: {\n height: 12,\n width: 384,\n },\n colorField: {\n height: 200,\n width: 464,\n },\n thumb: {\n radius: 10,\n },\n },\n};\n\nexport const SCOPE_SIZE = 1;\n",":host {\n @apply text-n2h inline-block font-normal;\n}\n\n@include disabled();\n\n:host([scale=\"s\"]) {\n --calcite-color-picker-spacing: 8px;\n\n .container {\n inline-size: 160px;\n }\n\n .saved-colors {\n @apply gap-1;\n grid-template-columns: repeat(auto-fill, 20px);\n }\n}\n\n:host([scale=\"m\"]) {\n --calcite-color-picker-spacing: 12px;\n\n .container {\n inline-size: 272px;\n }\n}\n\n:host([scale=\"l\"]) {\n --calcite-color-picker-spacing: 16px;\n\n @apply text-n1h;\n\n .container {\n inline-size: 464px;\n }\n\n .section {\n &:first-of-type {\n padding-block-start: var(--calcite-color-picker-spacing);\n }\n }\n\n .saved-colors {\n grid-template-columns: repeat(auto-fill, 32px);\n }\n\n .control-section {\n @apply flex-nowrap items-baseline;\n }\n\n .control-section {\n @apply flex-wrap;\n }\n\n .color-hex-options {\n @apply flex\n flex-shrink\n flex-col\n justify-around;\n }\n\n .color-mode-container {\n flex-shrink: 3;\n }\n}\n\n.container {\n @apply bg-foreground-1;\n display: inline-block;\n border: 1px solid var(--calcite-color-border-1);\n}\n\n.control-and-scope {\n @apply flex relative cursor-pointer touch-none;\n}\n\n.scope {\n @apply text-n1\n focus-base\n absolute\n z-default\n rounded-full\n bg-transparent\n w-px\n h-px\n pointer-events-none;\n &:focus {\n @apply focus-outset;\n outline-offset: 11px;\n }\n}\n\n.hex-and-channels-group {\n @apply w-full;\n}\n\n.hex-and-channels-group,\n.control-section {\n @apply flex flex-row flex-wrap;\n}\n\n.section {\n padding-block: 0 var(--calcite-color-picker-spacing);\n padding-inline: var(--calcite-color-picker-spacing);\n\n &:first-of-type {\n padding-block-start: var(--calcite-color-picker-spacing);\n }\n}\n\n.sliders {\n @apply flex flex-col justify-between;\n margin-inline-start: var(--calcite-color-picker-spacing);\n}\n\n.preview-and-sliders {\n @apply flex items-center;\n padding: var(--calcite-color-picker-spacing);\n}\n\n.color-hex-options,\n.section--split {\n flex-grow: 1;\n}\n\n.header {\n @apply text-color-1\n flex\n items-center\n justify-between;\n}\n\n.color-mode-container {\n padding-block-start: var(--calcite-color-picker-spacing);\n}\n\n.channels {\n @apply flex gap-y-0.5;\n}\n\n.channel {\n &[data-channel-index=\"3\"] {\n inline-size: 159px;\n }\n}\n\n:host([scale=\"s\"]) {\n .channels {\n @apply flex-wrap;\n }\n\n .channel {\n flex-basis: 30%;\n flex-grow: 1;\n\n &[data-channel-index=\"3\"] {\n inline-size: unset;\n margin-inline-start: unset;\n }\n }\n}\n\n:host([scale=\"l\"]) {\n .channel {\n &[data-channel-index=\"3\"] {\n inline-size: 131px;\n }\n }\n}\n\n.saved-colors {\n @apply grid gap-2;\n padding-block-start: var(--calcite-color-picker-spacing);\n grid-template-columns: repeat(auto-fill, 24px);\n}\n\n.saved-colors-buttons {\n display: flex;\n}\n\n.saved-color {\n @include focus-style-base();\n\n cursor: pointer;\n\n &:focus {\n @include focus-style-outset();\n }\n\n &:hover {\n transition: outline-color var(--calcite-internal-animation-timing-fast) ease-in-out;\n outline: 2px solid var(--calcite-color-border-2);\n outline-offset: 2px;\n }\n}\n\n@include base-component();\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Listen,\n Method,\n Prop,\n State,\n VNode,\n Watch,\n} from \"@stencil/core\";\n\nimport Color from \"color\";\nimport { Channels, ColorMode, ColorValue, HSLA, HSVA, InternalColor, RGBA } from \"./interfaces\";\nimport { throttle } from \"lodash-es\";\nimport { Direction, getElementDir, isPrimaryPointerButton } from \"../../utils/dom\";\nimport { Scale } from \"../interfaces\";\nimport {\n CSS,\n DEFAULT_COLOR,\n DEFAULT_STORAGE_KEY_PREFIX,\n DIMENSIONS,\n HSV_LIMITS,\n HUE_LIMIT_CONSTRAINED,\n OPACITY_LIMITS,\n RGB_LIMITS,\n SCOPE_SIZE,\n} from \"./resources\";\nimport {\n alphaCompatible,\n alphaToOpacity,\n colorEqual,\n CSSColorMode,\n Format,\n hexify,\n normalizeAlpha,\n normalizeColor,\n normalizeHex,\n opacityToAlpha,\n parseMode,\n SupportedMode,\n toAlphaMode,\n toNonAlphaMode,\n} from \"./utils\";\n\nimport {\n connectInteractive,\n disconnectInteractive,\n InteractiveComponent,\n updateHostInteraction,\n} from \"../../utils/interactive\";\nimport { isActivationKey } from \"../../utils/key\";\nimport {\n componentFocusable,\n LoadableComponent,\n setComponentLoaded,\n setUpLoadableComponent,\n} from \"../../utils/loadable\";\nimport {\n connectLocalized,\n disconnectLocalized,\n LocalizedComponent,\n NumberingSystem,\n} from \"../../utils/locale\";\nimport { clamp, closeToRangeEdge, remap } from \"../../utils/math\";\nimport {\n connectMessages,\n disconnectMessages,\n setUpMessages,\n T9nComponent,\n updateMessages,\n} from \"../../utils/t9n\";\nimport { ColorPickerMessages } from \"./assets/color-picker/t9n\";\n\nconst throttleFor60FpsInMs = 16;\n\n@Component({\n tag: \"calcite-color-picker\",\n styleUrl: \"color-picker.scss\",\n shadow: {\n delegatesFocus: true,\n },\n assetsDirs: [\"assets\"],\n})\nexport class ColorPicker\n implements InteractiveComponent, LoadableComponent, LocalizedComponent, T9nComponent\n{\n //--------------------------------------------------------------------------\n //\n // Public properties\n //\n //--------------------------------------------------------------------------\n\n /**\n * When `true`, an empty color (`null`) will be allowed as a `value`. When `false`, a color value is enforced, and clearing the input or blurring will restore the last valid `value`.\n */\n @Prop({ reflect: true }) allowEmpty = false;\n\n /**\n * When true, the component will allow updates to the color's alpha value.\n */\n @Prop() alphaChannel = false;\n\n @Watch(\"alphaChannel\")\n handleAlphaChannelChange(alphaChannel: boolean): void {\n const { format } = this;\n\n if (alphaChannel && format !== \"auto\" && !alphaCompatible(format)) {\n console.warn(\n `ignoring alphaChannel as the current format (${format}) does not support alpha`\n );\n this.alphaChannel = false;\n }\n }\n\n /** When true, hides the RGB/HSV channel inputs */\n @Prop() channelsDisabled = false;\n\n /**\n * Internal prop for advanced use-cases.\n *\n * @internal\n */\n @Prop({ mutable: true }) color: InternalColor | null = DEFAULT_COLOR;\n\n @Watch(\"color\")\n handleColorChange(color: Color | null, oldColor: Color | null): void {\n this.drawColorControls();\n this.updateChannelsFromColor(color);\n this.previousColor = oldColor;\n }\n\n /**\n * When `true`, interaction is prevented and the component is displayed with lower opacity.\n */\n @Prop({ reflect: true }) disabled = false;\n\n /**\n * The format of `value`.\n *\n * When `\"auto\"`, the format will be inferred from `value` when set.\n *\n * @default \"auto\"\n */\n @Prop({ reflect: true }) format: Format = \"auto\";\n\n @Watch(\"alphaChannel\")\n @Watch(\"format\")\n handleFormatOrAlphaChannelChange(): void {\n this.setMode(this.format);\n this.internalColorSet(this.color, false, \"internal\");\n }\n\n /**\n * When `true`, hides the RGB/HSV channel inputs.\n *\n * @deprecated use `channelsDisabled` instead\n */\n @Prop({ reflect: true }) hideChannels = false;\n\n /** When true, hides the hex input */\n @Prop() hexDisabled = false;\n\n /**\n * When `true`, hides the hex input.\n *\n * @deprecated use `hexDisabled` instead\n */\n @Prop({ reflect: true }) hideHex = false;\n\n /**\n * When `true`, hides the saved colors section.\n *\n * @deprecated use `savedDisabled` instead\n */\n @Prop({ reflect: true }) hideSaved = false;\n\n /** When true, hides the saved colors section */\n @Prop({ reflect: true }) savedDisabled = false;\n\n /** Specifies the size of the component. */\n @Prop({ reflect: true }) scale: Scale = \"m\";\n\n @Watch(\"scale\")\n handleScaleChange(scale: Scale = \"m\"): void {\n this.updateDimensions(scale);\n this.updateCanvasSize(\"all\");\n this.drawColorControls();\n }\n\n /** Specifies the storage ID for colors. */\n @Prop({ reflect: true }) storageId: string;\n\n /**\n * Use this property to override individual strings used by the component.\n */\n // eslint-disable-next-line @stencil-community/strict-mutable -- updated by t9n module\n @Prop({ mutable: true }) messageOverrides: Partial<ColorPickerMessages>;\n\n @Watch(\"messageOverrides\")\n onMessagesChange(): void {\n /* wired up by t9n util */\n }\n\n /** Specifies the Unicode numeral system used by the component for localization. */\n @Prop({ reflect: true }) numberingSystem: NumberingSystem;\n\n /**\n * The component's value, where the value can be a CSS color string, or a RGB, HSL or HSV object.\n *\n * The type will be preserved as the color is updated.\n *\n * @default \"#007ac2\"\n * @see [CSS Color](https://developer.mozilla.org/en-US/docs/Web/CSS/color)\n * @see [ColorValue](https://github.com/Esri/calcite-design-system/blob/main/src/components/color-picker/interfaces.ts#L10)\n */\n @Prop({ mutable: true }) value: ColorValue | null = normalizeHex(\n hexify(DEFAULT_COLOR, this.alphaChannel)\n );\n\n @Watch(\"value\")\n handleValueChange(value: ColorValue | null, oldValue: ColorValue | null): void {\n const { allowEmpty, format } = this;\n const checkMode = !allowEmpty || value;\n let modeChanged = false;\n\n if (checkMode) {\n const nextMode = parseMode(value);\n\n if (!nextMode || (format !== \"auto\" && nextMode !== format)) {\n this.showIncompatibleColorWarning(value, format);\n this.value = oldValue;\n return;\n }\n\n modeChanged = this.mode !== nextMode;\n this.setMode(nextMode, this.internalColorUpdateContext === null);\n }\n\n const dragging = this.activeCanvasInfo;\n\n if (this.internalColorUpdateContext === \"initial\") {\n return;\n }\n\n if (this.internalColorUpdateContext === \"user-interaction\") {\n this.calciteColorPickerInput.emit();\n\n if (!dragging) {\n this.calciteColorPickerChange.emit();\n }\n return;\n }\n\n const color =\n allowEmpty && !value\n ? null\n : Color(\n value != null && typeof value === \"object\" && alphaCompatible(this.mode)\n ? normalizeColor(value as RGBA | HSVA | HSLA)\n : value\n );\n const colorChanged = !colorEqual(color, this.color);\n\n if (modeChanged || colorChanged) {\n this.internalColorSet(\n color,\n this.alphaChannel && !(this.mode.endsWith(\"a\") || this.mode.endsWith(\"a-css\")),\n \"internal\"\n );\n }\n }\n\n //--------------------------------------------------------------------------\n //\n // Internal State/Props\n //\n //--------------------------------------------------------------------------\n\n @Element() el: HTMLCalciteColorPickerElement;\n\n private activeCanvasInfo: {\n context: CanvasRenderingContext2D;\n bounds: DOMRect;\n };\n\n private get baseColorFieldColor(): Color {\n return this.color || this.previousColor || DEFAULT_COLOR;\n }\n\n private checkerPattern: HTMLCanvasElement;\n\n private colorFieldRenderingContext: CanvasRenderingContext2D;\n\n private colorFieldScopeNode: HTMLDivElement;\n\n private hueSliderRenderingContext: CanvasRenderingContext2D;\n\n private hueScopeNode: HTMLDivElement;\n\n private internalColorUpdateContext: \"internal\" | \"initial\" | \"user-interaction\" | null = null;\n\n private mode: SupportedMode = CSSColorMode.HEX;\n\n private opacityScopeNode: HTMLDivElement;\n\n private opacitySliderRenderingContext: CanvasRenderingContext2D;\n\n private previousColor: InternalColor | null;\n\n private shiftKeyChannelAdjustment = 0;\n\n @State() defaultMessages: ColorPickerMessages;\n\n @State() channelMode: ColorMode = \"rgb\";\n\n @State() channels: Channels = this.toChannels(DEFAULT_COLOR);\n\n @State() dimensions = DIMENSIONS.m;\n\n @State() effectiveLocale = \"\";\n\n @Watch(\"effectiveLocale\")\n effectiveLocaleChange(): void {\n updateMessages(this, this.effectiveLocale);\n }\n\n /**\n * Made into a prop for testing purposes only\n *\n * @internal\n */\n // eslint-disable-next-line @stencil-community/strict-mutable -- updated by t9n module\n @Prop({ mutable: true }) messages: ColorPickerMessages;\n\n @State() savedColors: string[] = [];\n\n @State() colorFieldScopeTop: number;\n\n @State() colorFieldScopeLeft: number;\n\n @State() hueScopeLeft: number;\n\n @State() opacityScopeLeft: number;\n\n @State() scopeOrientation: \"vertical\" | \"horizontal\";\n\n //--------------------------------------------------------------------------\n //\n // Events\n //\n //--------------------------------------------------------------------------\n\n /**\n * Fires when the color value has changed.\n */\n @Event({ cancelable: false }) calciteColorPickerChange: EventEmitter<void>;\n\n /**\n * Fires as the color value changes.\n *\n * Similar to the `calciteColorPickerChange` event with the exception of dragging. When dragging the color field or hue slider thumb, this event fires as the thumb is moved.\n */\n @Event({ cancelable: false }) calciteColorPickerInput: EventEmitter<void>;\n\n private handleTabActivate = (event: Event): void => {\n this.channelMode = (event.currentTarget as HTMLElement).getAttribute(\n \"data-color-mode\"\n ) as ColorMode;\n\n this.updateChannelsFromColor(this.color);\n };\n\n private handleColorFieldScopeKeyDown = (event: KeyboardEvent): void => {\n const { key } = event;\n const arrowKeyToXYOffset = {\n ArrowUp: { x: 0, y: -10 },\n ArrowRight: { x: 10, y: 0 },\n ArrowDown: { x: 0, y: 10 },\n ArrowLeft: { x: -10, y: 0 },\n };\n\n if (arrowKeyToXYOffset[key]) {\n event.preventDefault();\n this.scopeOrientation = key === \"ArrowDown\" || key === \"ArrowUp\" ? \"vertical\" : \"horizontal\";\n this.captureColorFieldColor(\n this.colorFieldScopeLeft + arrowKeyToXYOffset[key].x || 0,\n this.colorFieldScopeTop + arrowKeyToXYOffset[key].y || 0,\n false\n );\n }\n };\n\n private handleHueScopeKeyDown = (event: KeyboardEvent): void => {\n const modifier = event.shiftKey ? 10 : 1;\n const { key } = event;\n const arrowKeyToXOffset = {\n ArrowUp: 1,\n ArrowRight: 1,\n ArrowDown: -1,\n ArrowLeft: -1,\n };\n\n if (arrowKeyToXOffset[key]) {\n event.preventDefault();\n const delta = arrowKeyToXOffset[key] * modifier;\n const hue = this.baseColorFieldColor.hue();\n const color = this.baseColorFieldColor.hue(hue + delta);\n this.internalColorSet(color, false);\n }\n };\n\n private handleHexInputChange = (event: Event): void => {\n event.stopPropagation();\n const { allowEmpty, color } = this;\n const input = event.target as HTMLCalciteColorPickerHexInputElement;\n const hex = input.value;\n\n if (allowEmpty && !hex) {\n this.internalColorSet(null);\n return;\n }\n\n const normalizedHex = color && normalizeHex(hexify(color, alphaCompatible(this.mode)));\n\n if (hex !== normalizedHex) {\n this.internalColorSet(Color(hex));\n }\n };\n\n private handleSavedColorSelect = (event: Event): void => {\n const swatch = event.currentTarget as HTMLCalciteColorPickerSwatchElement;\n this.internalColorSet(Color(swatch.color));\n };\n\n private handleChannelInput = (event: CustomEvent): void => {\n const input = event.currentTarget as HTMLCalciteInputNumberElement;\n const channelIndex = Number(input.getAttribute(\"data-channel-index\"));\n const isAlphaChannel = channelIndex === 3;\n\n const limit = isAlphaChannel\n ? OPACITY_LIMITS.max\n : this.channelMode === \"rgb\"\n ? RGB_LIMITS[Object.keys(RGB_LIMITS)[channelIndex]]\n : HSV_LIMITS[Object.keys(HSV_LIMITS)[channelIndex]];\n\n let inputValue: string;\n\n if (this.allowEmpty && !input.value) {\n inputValue = \"\";\n } else {\n const value = Number(input.value);\n const adjustedValue = value + this.shiftKeyChannelAdjustment;\n const clamped = clamp(adjustedValue, 0, limit);\n\n inputValue = clamped.toString();\n }\n\n input.value = inputValue;\n };\n\n // using @Listen as a workaround for VDOM listener not firing\n @Listen(\"keydown\", { capture: true })\n @Listen(\"keyup\", { capture: true })\n protected handleChannelKeyUpOrDown(event: KeyboardEvent): void {\n this.shiftKeyChannelAdjustment = 0;\n const { key } = event;\n\n if (\n (key !== \"ArrowUp\" && key !== \"ArrowDown\") ||\n !event.composedPath().some((node: HTMLElement) => node.classList?.contains(CSS.channel))\n ) {\n return;\n }\n\n const { shiftKey } = event;\n event.preventDefault();\n\n if (!this.color) {\n this.internalColorSet(this.previousColor);\n event.stopPropagation();\n return;\n }\n\n // this gets applied to the input's up/down arrow increment/decrement\n const complementaryBump = 9;\n\n this.shiftKeyChannelAdjustment =\n key === \"ArrowUp\" && shiftKey\n ? complementaryBump\n : key === \"ArrowDown\" && shiftKey\n ? -complementaryBump\n : 0;\n }\n\n private handleChannelChange = (event: CustomEvent): void => {\n const input = event.currentTarget as HTMLCalciteInputNumberElement;\n const channelIndex = Number(input.getAttribute(\"data-channel-index\"));\n const channels = [...this.channels] as this[\"channels\"];\n\n const shouldClearChannels = this.allowEmpty && !input.value;\n\n if (shouldClearChannels) {\n this.channels = [null, null, null, null];\n this.internalColorSet(null);\n return;\n }\n\n const isAlphaChannel = channelIndex === 3;\n const value = Number(input.value);\n\n channels[channelIndex] = isAlphaChannel ? opacityToAlpha(value) : value;\n this.updateColorFromChannels(channels);\n };\n\n private handleSavedColorKeyDown = (event: KeyboardEvent): void => {\n if (isActivationKey(event.key)) {\n event.preventDefault();\n this.handleSavedColorSelect(event);\n }\n };\n\n private handleColorFieldPointerDown = (event: PointerEvent): void => {\n if (!isPrimaryPointerButton(event)) {\n return;\n }\n\n const { offsetX, offsetY } = event;\n\n window.addEventListener(\"pointermove\", this.globalPointerMoveHandler);\n window.addEventListener(\"pointerup\", this.globalPointerUpHandler, { once: true });\n\n this.activeCanvasInfo = {\n context: this.colorFieldRenderingContext,\n bounds: this.colorFieldRenderingContext.canvas.getBoundingClientRect(),\n };\n this.captureColorFieldColor(offsetX, offsetY);\n this.colorFieldScopeNode.focus();\n };\n\n private handleHueSliderPointerDown = (event: PointerEvent): void => {\n if (!isPrimaryPointerButton(event)) {\n return;\n }\n\n const { offsetX } = event;\n\n window.addEventListener(\"pointermove\", this.globalPointerMoveHandler);\n window.addEventListener(\"pointerup\", this.globalPointerUpHandler, { once: true });\n\n this.activeCanvasInfo = {\n context: this.hueSliderRenderingContext,\n bounds: this.hueSliderRenderingContext.canvas.getBoundingClientRect(),\n };\n this.captureHueSliderColor(offsetX);\n this.hueScopeNode.focus();\n };\n\n private handleOpacitySliderPointerDown = (event: PointerEvent): void => {\n if (!isPrimaryPointerButton(event)) {\n return;\n }\n\n const { offsetX } = event;\n\n window.addEventListener(\"pointermove\", this.globalPointerMoveHandler);\n window.addEventListener(\"pointerup\", this.globalPointerUpHandler, { once: true });\n\n this.activeCanvasInfo = {\n context: this.opacitySliderRenderingContext,\n bounds: this.opacitySliderRenderingContext.canvas.getBoundingClientRect(),\n };\n this.captureOpacitySliderValue(offsetX);\n this.opacityScopeNode.focus();\n };\n\n private globalPointerUpHandler = (event: PointerEvent): void => {\n if (!isPrimaryPointerButton(event)) {\n return;\n }\n\n const previouslyDragging = this.activeCanvasInfo;\n this.activeCanvasInfo = null;\n this.drawColorControls();\n\n if (previouslyDragging) {\n this.calciteColorPickerChange.emit();\n }\n };\n\n private globalPointerMoveHandler = (event: PointerEvent): void => {\n const { activeCanvasInfo, el } = this;\n\n if (!el.isConnected || !activeCanvasInfo) {\n return;\n }\n\n const { context, bounds } = activeCanvasInfo;\n\n let samplingX: number;\n let samplingY: number;\n\n const { clientX, clientY } = event;\n\n if (context.canvas.matches(\":hover\")) {\n samplingX = clientX - bounds.x;\n samplingY = clientY - bounds.y;\n } else {\n // snap x and y to the closest edge\n\n if (clientX < bounds.x + bounds.width && clientX > bounds.x) {\n samplingX = clientX - bounds.x;\n } else if (clientX < bounds.x) {\n samplingX = 0;\n } else {\n samplingX = bounds.width;\n }\n\n if (clientY < bounds.y + bounds.height && clientY > bounds.y) {\n samplingY = clientY - bounds.y;\n } else if (clientY < bounds.y) {\n samplingY = 0;\n } else {\n samplingY = bounds.height;\n }\n }\n\n if (context === this.colorFieldRenderingContext) {\n this.captureColorFieldColor(samplingX, samplingY, false);\n } else if (context === this.hueSliderRenderingContext) {\n this.captureHueSliderColor(samplingX);\n } else if (context === this.opacitySliderRenderingContext) {\n this.captureOpacitySliderValue(samplingX);\n }\n };\n\n //--------------------------------------------------------------------------\n //\n // Public Methods\n //\n //--------------------------------------------------------------------------\n\n /** Sets focus on the component's first focusable element. */\n @Method()\n async setFocus(): Promise<void> {\n await componentFocusable(this);\n this.el.focus();\n }\n\n //--------------------------------------------------------------------------\n //\n // Lifecycle\n //\n //--------------------------------------------------------------------------\n\n async componentWillLoad(): Promise<void> {\n setUpLoadableComponent(this);\n\n const { allowEmpty, color, format, value } = this;\n\n const willSetNoColor = allowEmpty && !value;\n const parsedMode = parseMode(value);\n const valueIsCompatible =\n willSetNoColor || (format === \"auto\" && parsedMode) || format === parsedMode;\n const initialColor = willSetNoColor ? null : valueIsCompatible ? Color(value) : color;\n\n if (!valueIsCompatible) {\n this.showIncompatibleColorWarning(value, format);\n }\n\n this.setMode(format, false);\n this.internalColorSet(initialColor, false, \"initial\");\n\n this.updateDimensions(this.scale);\n\n const storageKey = `${DEFAULT_STORAGE_KEY_PREFIX}${this.storageId}`;\n\n if (this.storageId && localStorage.getItem(storageKey)) {\n this.savedColors = JSON.parse(localStorage.getItem(storageKey));\n }\n\n await setUpMessages(this);\n }\n\n connectedCallback(): void {\n connectInteractive(this);\n connectLocalized(this);\n connectMessages(this);\n }\n\n componentDidLoad(): void {\n setComponentLoaded(this);\n }\n\n disconnectedCallback(): void {\n window.removeEventListener(\"pointermove\", this.globalPointerMoveHandler);\n window.removeEventListener(\"pointerup\", this.globalPointerUpHandler);\n disconnectInteractive(this);\n disconnectLocalized(this);\n disconnectMessages(this);\n }\n\n componentDidRender(): void {\n updateHostInteraction(this);\n }\n\n //--------------------------------------------------------------------------\n //\n // Render Methods\n //\n //--------------------------------------------------------------------------\n\n render(): VNode {\n const {\n allowEmpty,\n channelsDisabled,\n color,\n colorFieldScopeLeft,\n colorFieldScopeTop,\n dimensions: {\n slider: { width: sliderWidth },\n thumb: { radius: thumbRadius },\n },\n hexDisabled,\n hideChannels,\n hideHex,\n hideSaved,\n hueScopeLeft,\n messages,\n alphaChannel,\n opacityScopeLeft,\n savedColors,\n savedDisabled,\n scale,\n scopeOrientation,\n } = this;\n const selectedColorInHex = color ? hexify(color, alphaChannel) : null;\n const hueTop = thumbRadius;\n const hueLeft = hueScopeLeft ?? (sliderWidth * DEFAULT_COLOR.hue()) / HSV_LIMITS.h;\n const opacityTop = thumbRadius;\n const opacityLeft =\n opacityScopeLeft ??\n (sliderWidth * alphaToOpacity(DEFAULT_COLOR.alpha())) / OPACITY_LIMITS.max;\n const noColor = color === null;\n const vertical = scopeOrientation === \"vertical\";\n const noHex = hexDisabled || hideHex;\n const noChannels = channelsDisabled || hideChannels;\n const noSaved = savedDisabled || hideSaved;\n const [adjustedColorFieldScopeLeft, adjustedColorFieldScopeTop] = this.getAdjustedScopePosition(\n colorFieldScopeLeft,\n colorFieldScopeTop\n );\n const [adjustedHueScopeLeft, adjustedHueScopeTop] = this.getAdjustedScopePosition(\n hueLeft,\n hueTop\n );\n const [adjustedOpacityScopeLeft, adjustedOpacityScopeTop] = this.getAdjustedScopePosition(\n opacityLeft,\n opacityTop\n );\n\n return (\n <div class={CSS.container}>\n <div class={CSS.controlAndScope}>\n <canvas\n class={CSS.colorField}\n onPointerDown={this.handleColorFieldPointerDown}\n // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530)\n ref={this.initColorField}\n />\n <div\n aria-label={vertical ? messages.value : messages.saturation}\n aria-valuemax={vertical ? HSV_LIMITS.v : HSV_LIMITS.s}\n aria-valuemin=\"0\"\n aria-valuenow={(vertical ? color?.saturationv() : color?.value()) || \"0\"}\n class={{ [CSS.scope]: true, [CSS.colorFieldScope]: true }}\n onKeyDown={this.handleColorFieldScopeKeyDown}\n role=\"slider\"\n style={{\n top: `${adjustedColorFieldScopeTop || 0}px`,\n left: `${adjustedColorFieldScopeLeft || 0}px`,\n }}\n tabindex=\"0\"\n // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530)\n ref={this.storeColorFieldScope}\n />\n </div>\n <div class={CSS.previewAndSliders}>\n <calcite-color-picker-swatch class={CSS.preview} color={selectedColorInHex} scale=\"l\" />\n <div class={CSS.sliders}>\n <div class={CSS.controlAndScope}>\n <canvas\n class={{ [CSS.slider]: true, [CSS.hueSlider]: true }}\n onPointerDown={this.handleHueSliderPointerDown}\n // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530)\n ref={this.initHueSlider}\n />\n <div\n aria-label={messages.hue}\n aria-valuemax={HSV_LIMITS.h}\n aria-valuemin=\"0\"\n aria-valuenow={color?.round().hue() || DEFAULT_COLOR.round().hue()}\n class={{ [CSS.scope]: true, [CSS.hueScope]: true }}\n onKeyDown={this.handleHueScopeKeyDown}\n role=\"slider\"\n style={{\n top: `${adjustedHueScopeTop}px`,\n left: `${adjustedHueScopeLeft}px`,\n }}\n tabindex=\"0\"\n // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530)\n ref={this.storeHueScope}\n />\n </div>\n {alphaChannel ? (\n <div class={CSS.controlAndScope}>\n <canvas\n class={{ [CSS.slider]: true, [CSS.opacitySlider]: true }}\n onPointerDown={this.handleOpacitySliderPointerDown}\n // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530)\n ref={this.initOpacitySlider}\n />\n <div\n aria-label={messages.opacity}\n aria-valuemax={OPACITY_LIMITS.max}\n aria-valuemin={OPACITY_LIMITS.min}\n aria-valuenow={(color || DEFAULT_COLOR).round().alpha()}\n class={{ [CSS.scope]: true, [CSS.opacityScope]: true }}\n onKeyDown={this.handleOpacityScopeKeyDown}\n role=\"slider\"\n style={{\n top: `${adjustedOpacityScopeTop}px`,\n left: `${adjustedOpacityScopeLeft}px`,\n }}\n tabindex=\"0\"\n // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530)\n ref={this.storeOpacityScope}\n />\n </div>\n ) : null}\n </div>\n </div>\n {noHex && noChannels ? null : (\n <div\n class={{\n [CSS.controlSection]: true,\n [CSS.section]: true,\n }}\n >\n <div class={CSS.hexAndChannelsGroup}>\n {noHex ? null : (\n <div class={CSS.hexOptions}>\n <calcite-color-picker-hex-input\n allowEmpty={allowEmpty}\n alphaChannel={alphaChannel}\n class={CSS.control}\n messages={messages}\n numberingSystem={this.numberingSystem}\n onCalciteColorPickerHexInputChange={this.handleHexInputChange}\n scale={scale}\n value={selectedColorInHex}\n />\n </div>\n )}\n {noChannels ? null : (\n <calcite-tabs\n class={{\n [CSS.colorModeContainer]: true,\n [CSS.splitSection]: true,\n }}\n scale={scale === \"l\" ? \"m\" : \"s\"}\n >\n <calcite-tab-nav slot=\"title-group\">\n {this.renderChannelsTabTitle(\"rgb\")}\n {this.renderChannelsTabTitle(\"hsv\")}\n </calcite-tab-nav>\n {this.renderChannelsTab(\"rgb\")}\n {this.renderChannelsTab(\"hsv\")}\n </calcite-tabs>\n )}\n </div>\n </div>\n )}\n {noSaved ? null : (\n <div class={{ [CSS.savedColorsSection]: true, [CSS.section]: true }}>\n <div class={CSS.header}>\n <label>{messages.saved}</label>\n <div class={CSS.savedColorsButtons}>\n <calcite-button\n appearance=\"transparent\"\n class={CSS.deleteColor}\n disabled={noColor}\n iconStart=\"minus\"\n kind=\"neutral\"\n label={messages.deleteColor}\n onClick={this.deleteColor}\n scale={scale}\n type=\"button\"\n />\n <calcite-button\n appearance=\"transparent\"\n class={CSS.saveColor}\n disabled={noColor}\n iconStart=\"plus\"\n kind=\"neutral\"\n label={messages.saveColor}\n onClick={this.saveColor}\n scale={scale}\n type=\"button\"\n />\n </div>\n </div>\n {savedColors.length > 0 ? (\n <div class={CSS.savedColors}>\n {[\n ...savedColors.map((color) => (\n <calcite-color-picker-swatch\n class={CSS.savedColor}\n color={color}\n key={color}\n onClick={this.handleSavedColorSelect}\n onKeyDown={this.handleSavedColorKeyDown}\n scale={scale}\n tabIndex={0}\n />\n )),\n ]}\n </div>\n ) : null}\n </div>\n )}\n </div>\n );\n }\n\n private storeColorFieldScope = (node: HTMLDivElement): void => {\n this.colorFieldScopeNode = node;\n };\n\n private storeHueScope = (node: HTMLDivElement): void => {\n this.hueScopeNode = node;\n };\n\n private renderChannelsTabTitle = (channelMode: this[\"channelMode\"]): VNode => {\n const { channelMode: activeChannelMode, messages } = this;\n const selected = channelMode === activeChannelMode;\n const label = channelMode === \"rgb\" ? messages.rgb : messages.hsv;\n\n return (\n <calcite-tab-title\n class={CSS.colorMode}\n data-color-mode={channelMode}\n key={channelMode}\n onCalciteTabsActivate={this.handleTabActivate}\n selected={selected}\n >\n {label}\n </calcite-tab-title>\n );\n };\n\n private renderChannelsTab = (channelMode: this[\"channelMode\"]): VNode => {\n const { allowEmpty, channelMode: activeChannelMode, channels, messages, alphaChannel } = this;\n const selected = channelMode === activeChannelMode;\n const isRgb = channelMode === \"rgb\";\n const channelAriaLabels = isRgb\n ? [messages.red, messages.green, messages.blue]\n : [messages.hue, messages.saturation, messages.value];\n const direction = getElementDir(this.el);\n const channelsToRender = alphaChannel ? channels : channels.slice(0, 3);\n\n return (\n <calcite-tab class={CSS.control} key={channelMode} selected={selected}>\n {/* channel order should not be mirrored */}\n <div class={CSS.channels} dir=\"ltr\">\n {channelsToRender.map((channelValue, index) => {\n const isAlphaChannel = index === 3;\n\n if (isAlphaChannel) {\n channelValue =\n allowEmpty && !channelValue ? channelValue : alphaToOpacity(channelValue);\n }\n\n /* the channel container is ltr, so we apply the host's direction */\n return this.renderChannel(\n channelValue,\n index,\n channelAriaLabels[index],\n direction,\n isAlphaChannel ? \"%\" : \"\"\n );\n })}\n </div>\n </calcite-tab>\n );\n };\n\n private renderChannel = (\n value: number | null,\n index: number,\n ariaLabel: string,\n direction: Direction,\n suffix?: string\n ): VNode => {\n return (\n <calcite-input-number\n class={CSS.channel}\n data-channel-index={index}\n dir={direction}\n key={index}\n label={ariaLabel}\n lang={this.effectiveLocale}\n numberButtonType=\"none\"\n numberingSystem={this.numberingSystem}\n onCalciteInputNumberChange={this.handleChannelChange}\n onCalciteInputNumberInput={this.handleChannelInput}\n onKeyDown={this.handleKeyDown}\n scale={this.scale === \"l\" ? \"m\" : \"s\"}\n // workaround to ensure input borders overlap as desired\n // this is because the build transforms margin-left to its\n // logical-prop, which is undesired as channels are always ltr\n style={{\n marginLeft:\n index > 0 && !(this.scale === \"s\" && this.alphaChannel && index === 3) ? \"-1px\" : \"\",\n }}\n suffixText={suffix}\n value={value?.toString()}\n />\n );\n };\n\n // --------------------------------------------------------------------------\n //\n // Private Methods\n //\n //--------------------------------------------------------------------------\n\n handleKeyDown(event: KeyboardEvent): void {\n if (event.key === \"Enter\") {\n event.preventDefault();\n }\n }\n\n private showIncompatibleColorWarning(value: ColorValue, format: Format): void {\n console.warn(\n `ignoring color value (${value}) as it is not compatible with the current format (${format})`\n );\n }\n\n private setMode(format: ColorPicker[\"format\"], warn = true): void {\n const mode = format === \"auto\" ? this.mode : format;\n this.mode = this.ensureCompatibleMode(mode, warn);\n }\n\n private ensureCompatibleMode(mode: SupportedMode, warn): SupportedMode {\n const { alphaChannel } = this;\n const isAlphaCompatible = alphaCompatible(mode);\n\n if (alphaChannel && !isAlphaCompatible) {\n const alphaMode = toAlphaMode(mode);\n\n if (warn) {\n console.warn(\n `setting format to (${alphaMode}) as the provided one (${mode}) does not support alpha`\n );\n }\n\n return alphaMode;\n }\n\n if (!alphaChannel && isAlphaCompatible) {\n const nonAlphaMode = toNonAlphaMode(mode);\n\n if (warn) {\n console.warn(\n `setting format to (${nonAlphaMode}) as the provided one (${mode}) does not support alpha`\n );\n }\n\n return nonAlphaMode;\n }\n\n return mode;\n }\n\n private captureHueSliderColor(x: number): void {\n const {\n dimensions: {\n slider: { width },\n },\n } = this;\n const hue = (HUE_LIMIT_CONSTRAINED / width) * x;\n\n this.internalColorSet(this.baseColorFieldColor.hue(hue), false);\n }\n\n private captureOpacitySliderValue(x: number): void {\n const {\n dimensions: {\n slider: { width },\n },\n } = this;\n const alpha = opacityToAlpha((OPACITY_LIMITS.max / width) * x);\n\n this.internalColorSet(this.baseColorFieldColor.alpha(alpha), false);\n }\n\n private internalColorSet(\n color: Color | null,\n skipEqual = true,\n context: ColorPicker[\"internalColorUpdateContext\"] = \"user-interaction\"\n ): void {\n if (skipEqual && colorEqual(color, this.color)) {\n return;\n }\n\n this.internalColorUpdateContext = context;\n this.color = color;\n this.value = this.toValue(color);\n this.internalColorUpdateContext = null;\n }\n\n private toValue(color: Color | null, format: SupportedMode = this.mode): ColorValue | null {\n if (!color) {\n return null;\n }\n\n const hexMode = \"hex\";\n\n if (format.includes(hexMode)) {\n const hasAlpha = format === CSSColorMode.HEXA;\n return normalizeHex(hexify(color.round(), hasAlpha), hasAlpha);\n }\n\n if (format.includes(\"-css\")) {\n const value = color[format.replace(\"-css\", \"\").replace(\"a\", \"\")]().round().string();\n\n // Color omits alpha values when alpha is 1\n const needToInjectAlpha =\n (format.endsWith(\"a\") || format.endsWith(\"a-css\")) && color.alpha() === 1;\n if (needToInjectAlpha) {\n const model = value.slice(0, 3);\n const values = value.slice(4, -1);\n return `${model}a(${values}, ${color.alpha()})`;\n }\n\n return value;\n }\n\n const colorObject =\n /* Color() does not support hsva, hsla nor rgba, so we use the non-alpha mode */\n color[toNonAlphaMode(format)]().round().object();\n\n if (format.endsWith(\"a\")) {\n return normalizeAlpha(colorObject);\n }\n\n return colorObject;\n }\n\n private getSliderCapSpacing(): number {\n const {\n dimensions: {\n slider: { height },\n thumb: { radius },\n },\n } = this;\n\n return radius * 2 - height;\n }\n\n private updateDimensions(scale: Scale = \"m\"): void {\n this.dimensions = DIMENSIONS[scale];\n }\n\n private deleteColor = (): void => {\n const colorToDelete = hexify(this.color, this.alphaChannel);\n const inStorage = this.savedColors.indexOf(colorToDelete) > -1;\n\n if (!inStorage) {\n return;\n }\n\n const savedColors = this.savedColors.filter((color) => color !== colorToDelete);\n\n this.savedColors = savedColors;\n\n const storageKey = `${DEFAULT_STORAGE_KEY_PREFIX}${this.storageId}`;\n\n if (this.storageId) {\n localStorage.setItem(storageKey, JSON.stringify(savedColors));\n }\n };\n\n private saveColor = (): void => {\n const colorToSave = hexify(this.color, this.alphaChannel);\n const alreadySaved = this.savedColors.indexOf(colorToSave) > -1;\n\n if (alreadySaved) {\n return;\n }\n\n const savedColors = [...this.savedColors, colorToSave];\n\n this.savedColors = savedColors;\n\n const storageKey = `${DEFAULT_STORAGE_KEY_PREFIX}${this.storageId}`;\n\n if (this.storageId) {\n localStorage.setItem(storageKey, JSON.stringify(savedColors));\n }\n };\n\n private drawColorControls = throttle(\n (type: \"all\" | \"color-field\" | \"hue-slider\" | \"opacity-slider\" = \"all\"): void => {\n if ((type === \"all\" || type === \"color-field\") && this.colorFieldRenderingContext) {\n this.drawColorField();\n }\n\n if ((type === \"all\" || type === \"hue-slider\") && this.hueSliderRenderingContext) {\n this.drawHueSlider();\n }\n\n if (\n this.alphaChannel &&\n (type === \"all\" || type === \"opacity-slider\") &&\n this.opacitySliderRenderingContext\n ) {\n this.drawOpacitySlider();\n }\n },\n throttleFor60FpsInMs\n );\n\n private drawColorField(): void {\n const context = this.colorFieldRenderingContext;\n const {\n dimensions: {\n colorField: { height, width },\n },\n } = this;\n\n context.fillStyle = this.baseColorFieldColor\n .hsv()\n .saturationv(100)\n .value(100)\n .alpha(1)\n .string();\n context.fillRect(0, 0, width, height);\n\n const whiteGradient = context.createLinearGradient(0, 0, width, 0);\n whiteGradient.addColorStop(0, \"rgba(255,255,255,1)\");\n whiteGradient.addColorStop(1, \"rgba(255,255,255,0)\");\n context.fillStyle = whiteGradient;\n context.fillRect(0, 0, width, height);\n\n const blackGradient = context.createLinearGradient(0, 0, 0, height);\n blackGradient.addColorStop(0, \"rgba(0,0,0,0)\");\n blackGradient.addColorStop(1, \"rgba(0,0,0,1)\");\n context.fillStyle = blackGradient;\n context.fillRect(0, 0, width, height);\n\n this.drawActiveColorFieldColor();\n }\n\n private setCanvasContextSize(\n canvas: HTMLCanvasElement,\n { height, width }: { height: number; width: number }\n ): void {\n if (!canvas) {\n return;\n }\n\n const devicePixelRatio = window.devicePixelRatio || 1;\n\n canvas.width = width * devicePixelRatio;\n canvas.height = height * devicePixelRatio;\n canvas.style.height = `${height}px`;\n canvas.style.width = `${width}px`;\n\n const context = canvas.getContext(\"2d\");\n context.scale(devicePixelRatio, devicePixelRatio);\n }\n\n private captureColorFieldColor = (x: number, y: number, skipEqual = true): void => {\n const {\n dimensions: {\n colorField: { height, width },\n },\n } = this;\n const saturation = Math.round((HSV_LIMITS.s / width) * x);\n const value = Math.round((HSV_LIMITS.v / height) * (height - y));\n\n this.internalColorSet(\n this.baseColorFieldColor.hsv().saturationv(saturation).value(value),\n skipEqual\n );\n };\n\n private initColorField = (canvas: HTMLCanvasElement): void => {\n this.colorFieldRenderingContext = canvas.getContext(\"2d\");\n this.updateCanvasSize(\"color-field\");\n this.drawColorControls();\n };\n\n private initHueSlider = (canvas: HTMLCanvasElement): void => {\n this.hueSliderRenderingContext = canvas.getContext(\"2d\");\n this.updateCanvasSize(\"hue-slider\");\n this.drawHueSlider();\n };\n\n private initOpacitySlider = (canvas: HTMLCanvasElement): void => {\n if (!canvas) {\n return;\n }\n\n this.opacitySliderRenderingContext = canvas.getContext(\"2d\");\n this.updateCanvasSize(\"opacity-slider\");\n this.drawOpacitySlider();\n };\n\n private updateCanvasSize(\n context: \"all\" | \"color-field\" | \"hue-slider\" | \"opacity-slider\" = \"all\"\n ): void {\n const { dimensions } = this;\n\n if (context === \"all\" || context === \"color-field\") {\n this.setCanvasContextSize(this.colorFieldRenderingContext?.canvas, dimensions.colorField);\n }\n\n const adjustedSliderDimensions = {\n width: dimensions.slider.width,\n height:\n dimensions.slider.height + (dimensions.thumb.radius - dimensions.slider.height / 2) * 2,\n };\n\n if (context === \"all\" || context === \"hue-slider\") {\n this.setCanvasContextSize(this.hueSliderRenderingContext?.canvas, adjustedSliderDimensions);\n }\n\n if (context === \"all\" || context === \"opacity-slider\") {\n this.setCanvasContextSize(\n this.opacitySliderRenderingContext?.canvas,\n adjustedSliderDimensions\n );\n }\n }\n\n private drawActiveColorFieldColor(): void {\n const { color } = this;\n\n if (!color) {\n return;\n }\n\n const hsvColor = color.hsv();\n\n const {\n dimensions: {\n colorField: { height, width },\n thumb: { radius },\n },\n } = this;\n\n const x = hsvColor.saturationv() / (HSV_LIMITS.s / width);\n const y = height - hsvColor.value() / (HSV_LIMITS.v / height);\n\n requestAnimationFrame(() => {\n this.colorFieldScopeLeft = x;\n this.colorFieldScopeTop = y;\n });\n\n this.drawThumb(this.colorFieldRenderingContext, radius, x, y, hsvColor);\n }\n\n private drawThumb(\n context: CanvasRenderingContext2D,\n radius: number,\n x: number,\n y: number,\n color: Color\n ): void {\n const startAngle = 0;\n const endAngle = 2 * Math.PI;\n const outlineWidth = 1;\n\n context.beginPath();\n context.arc(x, y, radius, startAngle, endAngle);\n context.fillStyle = \"#fff\";\n context.fill();\n context.strokeStyle = \"rgba(0,0,0,0.3)\";\n context.lineWidth = outlineWidth;\n context.stroke();\n\n context.beginPath();\n context.arc(x, y, radius - 3, startAngle, endAngle);\n context.fillStyle = color.rgb().alpha(1).string();\n context.fill();\n }\n\n private drawActiveHueSliderColor(): void {\n const { color } = this;\n\n if (!color) {\n return;\n }\n\n const hsvColor = color.hsv().saturationv(100).value(100);\n\n const {\n dimensions: {\n slider: { width },\n thumb: { radius },\n },\n } = this;\n\n const x = hsvColor.hue() / (HUE_LIMIT_CONSTRAINED / width);\n const y = radius;\n const sliderBoundX = this.getSliderBoundX(x, width, radius);\n\n requestAnimationFrame(() => {\n this.hueScopeLeft = sliderBoundX;\n });\n\n this.drawThumb(this.hueSliderRenderingContext, radius, sliderBoundX, y, hsvColor);\n }\n\n private drawHueSlider(): void {\n const context = this.hueSliderRenderingContext;\n const {\n dimensions: {\n slider: { height, width },\n thumb: { radius: thumbRadius },\n },\n } = this;\n\n const x = 0;\n const y = thumbRadius - height / 2;\n\n const gradient = context.createLinearGradient(0, 0, width, 0);\n\n const hueSliderColorStopKeywords = [\n \"red\",\n \"yellow\",\n \"lime\",\n \"cyan\",\n \"blue\",\n \"magenta\",\n \"#ff0004\" /* 1 unit less than #ff0 to avoid duplicate values within range */,\n ];\n\n const offset = 1 / (hueSliderColorStopKeywords.length - 1);\n let currentOffset = 0;\n\n hueSliderColorStopKeywords.forEach((keyword) => {\n gradient.addColorStop(currentOffset, Color(keyword).string());\n currentOffset += offset;\n });\n\n context.clearRect(0, 0, width, height + this.getSliderCapSpacing() * 2);\n\n this.drawSliderPath(context, height, width, x, y);\n\n context.fillStyle = gradient;\n context.fill();\n\n context.strokeStyle = \"rgba(0,0,0,0.3)\";\n context.lineWidth = 1;\n context.stroke();\n\n this.drawActiveHueSliderColor();\n }\n\n private drawOpacitySlider(): void {\n const context = this.opacitySliderRenderingContext;\n const {\n baseColorFieldColor: previousColor,\n dimensions: {\n slider: { height, width },\n thumb: { radius: thumbRadius },\n },\n } = this;\n\n const x = 0;\n const y = thumbRadius - height / 2;\n\n context.clearRect(0, 0, width, height + this.getSliderCapSpacing() * 2);\n\n const gradient = context.createLinearGradient(0, y, width, 0);\n const startColor = previousColor.rgb().alpha(0);\n const midColor = previousColor.rgb().alpha(0.5);\n const endColor = previousColor.rgb().alpha(1);\n\n gradient.addColorStop(0, startColor.string());\n gradient.addColorStop(0.5, midColor.string());\n gradient.addColorStop(1, endColor.string());\n\n this.drawSliderPath(context, height, width, x, y);\n\n const pattern = context.createPattern(this.getCheckeredBackgroundPattern(), \"repeat\");\n context.fillStyle = pattern;\n context.fill();\n\n context.fillStyle = gradient;\n context.fill();\n\n context.strokeStyle = \"rgba(0,0,0,0.3)\";\n context.lineWidth = 1;\n context.stroke();\n\n this.drawActiveOpacitySliderColor();\n }\n\n private drawSliderPath(\n context: CanvasRenderingContext2D,\n height: number,\n width: number,\n x: number,\n y: number\n ): void {\n const radius = height / 2 + 1;\n context.beginPath();\n context.moveTo(x + radius, y);\n context.lineTo(x + width - radius, y);\n context.quadraticCurveTo(x + width, y, x + width, y + radius);\n context.lineTo(x + width, y + height - radius);\n context.quadraticCurveTo(x + width, y + height, x + width - radius, y + height);\n context.lineTo(x + radius, y + height);\n context.quadraticCurveTo(x, y + height, x, y + height - radius);\n context.lineTo(x, y + radius);\n context.quadraticCurveTo(x, y, x + radius, y);\n context.closePath();\n }\n\n private getCheckeredBackgroundPattern(): HTMLCanvasElement {\n if (this.checkerPattern) {\n return this.checkerPattern;\n }\n\n const pattern = document.createElement(\"canvas\");\n pattern.width = 10;\n pattern.height = 10;\n const patternContext = pattern.getContext(\"2d\");\n\n patternContext.fillStyle = \"#ccc\";\n patternContext.fillRect(0, 0, 10, 10);\n patternContext.fillStyle = \"#fff\";\n patternContext.fillRect(0, 0, 5, 5);\n patternContext.fillRect(5, 5, 5, 5);\n\n this.checkerPattern = pattern;\n\n return pattern;\n }\n\n private drawActiveOpacitySliderColor(): void {\n const { color } = this;\n\n if (!color) {\n return;\n }\n\n const hsvColor = color;\n\n const {\n dimensions: {\n slider: { width },\n thumb: { radius },\n },\n } = this;\n\n const x = alphaToOpacity(hsvColor.alpha()) / (OPACITY_LIMITS.max / width);\n const y = radius;\n const sliderBoundX = this.getSliderBoundX(x, width, radius);\n\n requestAnimationFrame(() => {\n this.opacityScopeLeft = sliderBoundX;\n });\n\n this.drawThumb(this.opacitySliderRenderingContext, radius, sliderBoundX, y, hsvColor);\n }\n\n private getSliderBoundX(x: number, width: number, radius: number): number {\n const closeToEdge = closeToRangeEdge(x, width, radius);\n\n return closeToEdge === 0\n ? x\n : closeToEdge === -1\n ? remap(x, 0, width, radius, radius * 2)\n : remap(x, 0, width, width - radius * 2, width - radius);\n }\n\n private storeOpacityScope = (node: HTMLDivElement): void => {\n this.opacityScopeNode = node;\n };\n\n private handleOpacityScopeKeyDown = (event: KeyboardEvent): void => {\n const modifier = event.shiftKey ? 10 : 1;\n const { key } = event;\n const arrowKeyToXOffset = {\n ArrowUp: 0.01,\n ArrowRight: 0.01,\n ArrowDown: -0.01,\n ArrowLeft: -0.01,\n };\n\n if (arrowKeyToXOffset[key]) {\n event.preventDefault();\n const delta = arrowKeyToXOffset[key] * modifier;\n const alpha = this.baseColorFieldColor.alpha();\n const color = this.baseColorFieldColor.alpha(alpha + delta);\n this.internalColorSet(color, false);\n }\n };\n\n private updateColorFromChannels(channels: this[\"channels\"]): void {\n this.internalColorSet(Color(channels, this.channelMode));\n }\n\n private updateChannelsFromColor(color: Color | null): void {\n this.channels = color ? this.toChannels(color) : [null, null, null, null];\n }\n\n private toChannels(color: Color): Channels {\n const { channelMode } = this;\n\n const channels = color[channelMode]()\n .array()\n .map((value, index) => {\n const isAlpha = index === 3;\n return isAlpha ? value : Math.floor(value);\n });\n\n if (channels.length === 3) {\n channels.push(1); // Color omits alpha when 1\n }\n\n return channels as Channels;\n }\n\n private getAdjustedScopePosition(left: number, top: number): [number, number] {\n return [left - SCOPE_SIZE / 2, top - SCOPE_SIZE / 2];\n }\n}\n","export const CSS = {\n container: \"container\",\n hexInput: \"hex-input\",\n opacityInput: \"opacity-input\",\n};\n",":host {\n @apply block;\n}\n\n.container {\n @apply flex w-full items-center flex-nowrap;\n}\n\n.hex-input {\n @apply grow uppercase;\n}\n\n.opacity-input {\n inline-size: 68px;\n margin-inline-start: -1px;\n}\n\n:host([scale=\"s\"]) {\n .container {\n @apply flex-wrap gap-y-0.5;\n }\n\n .opacity-input {\n inline-size: unset;\n margin-inline-start: unset;\n }\n}\n\n:host([scale=\"l\"]) {\n .opacity-input {\n inline-size: 88px;\n }\n}\n\n@include base-component();\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Method,\n Prop,\n State,\n VNode,\n Watch,\n} from \"@stencil/core\";\nimport {\n alphaToOpacity,\n hexChar,\n hexify,\n isLonghandHex,\n isValidHex,\n normalizeHex,\n opacityToAlpha,\n rgbToHex,\n} from \"../color-picker/utils\";\nimport { CSS } from \"./resources\";\nimport { Scale } from \"../interfaces\";\nimport { Channels, RGB } from \"../color-picker/interfaces\";\nimport Color from \"color\";\nimport { focusElement } from \"../../utils/dom\";\nimport {\n componentFocusable,\n LoadableComponent,\n setComponentLoaded,\n setUpLoadableComponent,\n} from \"../../utils/loadable\";\nimport { NumberingSystem } from \"../../utils/locale\";\nimport { OPACITY_LIMITS } from \"../color-picker/resources\";\nimport { ColorPickerMessages } from \"../color-picker/assets/color-picker/t9n\";\n\nconst DEFAULT_COLOR = Color();\n\n@Component({\n tag: \"calcite-color-picker-hex-input\",\n styleUrl: \"color-picker-hex-input.scss\",\n shadow: true,\n})\nexport class ColorPickerHexInput implements LoadableComponent {\n //--------------------------------------------------------------------------\n //\n // Lifecycle\n //\n //--------------------------------------------------------------------------\n\n connectedCallback(): void {\n const { allowEmpty, alphaChannel, value } = this;\n\n if (value) {\n const normalized = normalizeHex(value, alphaChannel);\n\n if (isValidHex(normalized, alphaChannel)) {\n this.internalSetValue(normalized, normalized, false);\n }\n\n return;\n }\n\n if (allowEmpty) {\n this.internalSetValue(null, null, false);\n }\n }\n\n componentWillLoad(): void {\n setUpLoadableComponent(this);\n }\n\n componentDidLoad(): void {\n setComponentLoaded(this);\n }\n\n //--------------------------------------------------------------------------\n //\n // Public Properties\n //\n //--------------------------------------------------------------------------\n\n /**\n * When `false`, an empty color (`null`) will be allowed as a `value`. Otherwise, a color value is enforced on the component.\n *\n * When `true`, a color value is enforced, and clearing the input or blurring will restore the last valid `value`. When `false`, an empty color (`null`) will be allowed as a `value`.\n */\n @Prop() allowEmpty = false;\n\n /**\n * When true, the component will allow updates to the color's alpha value.\n */\n @Prop() alphaChannel = false;\n\n /**\n * Specifies accessible label for the input field.\n *\n * @deprecated use `messages` instead\n */\n @Prop() hexLabel = \"Hex\";\n\n /**\n * Messages are passed by parent component for accessible labels.\n *\n * @internal\n */\n @Prop() messages: ColorPickerMessages;\n\n /** Specifies the Unicode numeral system used by the component for localization. */\n @Prop() numberingSystem?: NumberingSystem;\n\n /** Specifies the size of the component. */\n @Prop({ reflect: true }) scale: Scale = \"m\";\n\n /**\n * The hex value.\n */\n @Prop({ mutable: true, reflect: true }) value: string = normalizeHex(\n hexify(DEFAULT_COLOR, this.alphaChannel),\n this.alphaChannel,\n true\n );\n\n @Watch(\"value\")\n handleValueChange(value: string, oldValue: string): void {\n this.internalSetValue(value, oldValue, false);\n }\n\n //--------------------------------------------------------------------------\n //\n // Events\n //\n //--------------------------------------------------------------------------\n\n /**\n * Emitted when the hex value changes.\n */\n @Event({ cancelable: false }) calciteColorPickerHexInputChange: EventEmitter<void>;\n\n private onHexInputBlur = (): void => {\n const node = this.hexInputNode;\n const inputValue = node.value;\n const hex = `#${inputValue}`;\n const { allowEmpty, internalColor } = this;\n const willClearValue = allowEmpty && !inputValue;\n const isLonghand = isLonghandHex(hex);\n\n // ensure modified pasted hex values are committed since we prevent default to remove the # char.\n this.onHexInputChange();\n\n if (willClearValue || (isValidHex(hex) && isLonghand)) {\n return;\n }\n\n // manipulating DOM directly since rerender doesn't update input value\n node.value =\n allowEmpty && !internalColor\n ? \"\"\n : this.formatHexForInternalInput(\n rgbToHex(\n // always display hex input in RRGGBB format\n internalColor.object() as any as RGB\n )\n );\n };\n\n private onOpacityInputBlur = (): void => {\n const node = this.opacityInputNode;\n const inputValue = node.value;\n const { allowEmpty, internalColor } = this;\n const willClearValue = allowEmpty && !inputValue;\n\n if (willClearValue) {\n return;\n }\n\n // manipulating DOM directly since rerender doesn't update input value\n node.value =\n allowEmpty && !internalColor ? \"\" : this.formatOpacityForInternalInput(internalColor);\n };\n\n private onHexInputChange = (): void => {\n const nodeValue = this.hexInputNode.value;\n let value = nodeValue;\n\n if (value) {\n const normalized = normalizeHex(value, false);\n const preserveExistingAlpha = isValidHex(normalized) && this.alphaChannel;\n if (preserveExistingAlpha && this.internalColor) {\n const alphaHex = normalizeHex(this.internalColor.hexa(), true).slice(-2);\n value = `${normalized + alphaHex}`;\n }\n }\n\n this.internalSetValue(value, this.value);\n };\n\n private onOpacityInputChange = (): void => {\n const node = this.opacityInputNode;\n let value: number | string;\n\n if (!node.value) {\n value = node.value;\n } else {\n const alpha = opacityToAlpha(Number(node.value));\n value = this.internalColor?.alpha(alpha).hexa();\n }\n\n this.internalSetValue(value, this.value);\n };\n\n protected onInputKeyDown = (event: KeyboardEvent): void => {\n const { altKey, ctrlKey, metaKey, shiftKey } = event;\n const { alphaChannel, hexInputNode, internalColor, value } = this;\n const { key } = event;\n const composedPath = event.composedPath();\n\n if (key === \"Tab\" || key === \"Enter\") {\n if (composedPath.includes(hexInputNode)) {\n this.onHexInputChange();\n } else {\n this.onOpacityInputChange();\n }\n\n if (key === \"Enter\") {\n event.preventDefault();\n }\n\n return;\n }\n\n const isNudgeKey = key === \"ArrowDown\" || key === \"ArrowUp\";\n const oldValue = this.value;\n\n if (isNudgeKey) {\n if (!value) {\n this.internalSetValue(this.previousNonNullValue, oldValue);\n event.preventDefault();\n return;\n }\n\n const direction = key === \"ArrowUp\" ? 1 : -1;\n const bump = shiftKey ? 10 : 1;\n\n this.internalSetValue(\n hexify(\n this.nudgeRGBChannels(\n internalColor,\n bump * direction,\n composedPath.includes(hexInputNode) ? \"rgb\" : \"a\"\n ),\n alphaChannel\n ),\n oldValue\n );\n\n event.preventDefault();\n return;\n }\n\n const withModifiers = altKey || ctrlKey || metaKey;\n const singleChar = key.length === 1;\n const validHexChar = hexChar.test(key);\n\n if (singleChar && !withModifiers && !validHexChar) {\n event.preventDefault();\n }\n };\n\n private onHexInputPaste = (event: ClipboardEvent): void => {\n const hex = event.clipboardData.getData(\"text\");\n\n if (isValidHex(hex)) {\n event.preventDefault();\n this.hexInputNode.value = hex.slice(1);\n }\n };\n\n //--------------------------------------------------------------------------\n //\n // Private State/Props\n //\n //--------------------------------------------------------------------------\n\n @Element() el: HTMLCalciteColorPickerHexInputElement;\n\n private hexInputNode: HTMLCalciteInputTextElement;\n\n /**\n * The last valid/selected color. Used as a fallback if an invalid hex code is entered.\n */\n @State() internalColor: Color | null = DEFAULT_COLOR;\n\n private opacityInputNode: HTMLCalciteInputNumberElement;\n\n private previousNonNullValue: string = this.value;\n\n //--------------------------------------------------------------------------\n //\n // Lifecycle\n //\n //--------------------------------------------------------------------------\n\n render(): VNode {\n const { alphaChannel, hexLabel, internalColor, messages, scale, value } = this;\n const hexInputValue = this.formatHexForInternalInput(value);\n const opacityInputValue = this.formatOpacityForInternalInput(internalColor);\n const inputScale = scale === \"l\" ? \"m\" : \"s\";\n\n return (\n <div class={CSS.container}>\n <calcite-input-text\n class={CSS.hexInput}\n label={messages?.hex || hexLabel}\n maxLength={6}\n onCalciteInputTextChange={this.onHexInputChange}\n onCalciteInternalInputTextBlur={this.onHexInputBlur}\n onKeyDown={this.onInputKeyDown}\n onPaste={this.onHexInputPaste}\n prefixText=\"#\"\n scale={inputScale}\n value={hexInputValue}\n // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530)\n ref={this.storeHexInputRef}\n />\n {alphaChannel ? (\n <calcite-input-number\n class={CSS.opacityInput}\n key=\"opacity-input\"\n label={messages?.opacity}\n max={OPACITY_LIMITS.max}\n maxLength={3}\n min={OPACITY_LIMITS.min}\n numberButtonType=\"none\"\n numberingSystem={this.numberingSystem}\n onCalciteInputNumberChange={this.onOpacityInputChange}\n onCalciteInternalInputNumberBlur={this.onOpacityInputBlur}\n onKeyDown={this.onInputKeyDown}\n scale={inputScale}\n suffixText=\"%\"\n value={opacityInputValue}\n // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530)\n ref={this.storeOpacityInputRef}\n />\n ) : null}\n </div>\n );\n }\n\n //--------------------------------------------------------------------------\n //\n // Public Methods\n //\n //--------------------------------------------------------------------------\n\n /** Sets focus on the component. */\n @Method()\n async setFocus(): Promise<void> {\n await componentFocusable(this);\n\n return focusElement(this.hexInputNode);\n }\n\n //--------------------------------------------------------------------------\n //\n // Private Methods\n //\n //--------------------------------------------------------------------------\n\n private internalSetValue(value: string | null, oldValue: string | null, emit = true): void {\n if (value) {\n const { alphaChannel } = this;\n const normalized = normalizeHex(value, alphaChannel, alphaChannel);\n\n if (isValidHex(normalized, alphaChannel)) {\n const { internalColor: currentColor } = this;\n const nextColor = Color(normalized);\n const normalizedLonghand = normalizeHex(hexify(nextColor, alphaChannel), alphaChannel);\n\n const changed =\n !currentColor ||\n normalizedLonghand !== normalizeHex(hexify(currentColor, alphaChannel), alphaChannel);\n\n this.internalColor = nextColor;\n this.previousNonNullValue = normalizedLonghand;\n this.value = normalizedLonghand;\n\n if (changed && emit) {\n this.calciteColorPickerHexInputChange.emit();\n }\n\n return;\n }\n } else if (this.allowEmpty) {\n this.internalColor = null;\n this.value = null;\n\n if (emit) {\n this.calciteColorPickerHexInputChange.emit();\n }\n\n return;\n }\n\n this.value = oldValue;\n }\n\n private storeHexInputRef = (node: HTMLCalciteInputTextElement): void => {\n this.hexInputNode = node;\n };\n\n private storeOpacityInputRef = (node: HTMLCalciteInputNumberElement): void => {\n this.opacityInputNode = node;\n };\n\n private formatHexForInternalInput(hex: string): string {\n return hex ? hex.replace(\"#\", \"\").slice(0, 6) : \"\";\n }\n\n private formatOpacityForInternalInput(color: Color): string {\n return color ? `${alphaToOpacity(color.alpha())}` : \"\";\n }\n\n private nudgeRGBChannels(color: Color, amount: number, context: \"rgb\" | \"a\"): Color {\n let nudgedChannels: Channels;\n const channels = color.array();\n const rgbChannels = channels.slice(0, 3);\n\n if (context === \"rgb\") {\n const nudgedRGBChannels = rgbChannels.map((channel) => channel + amount);\n nudgedChannels = [\n ...nudgedRGBChannels,\n this.alphaChannel ? channels[3] : undefined,\n ] as Channels;\n } else {\n const nudgedAlpha = opacityToAlpha(alphaToOpacity(color.alpha()) + amount);\n nudgedChannels = [...rgbChannels, nudgedAlpha] as Channels;\n }\n\n return Color(nudgedChannels);\n }\n}\n","export const CSS = {\n swatch: \"swatch\",\n noColorSwatch: \"swatch--no-color\",\n checker: \"checker\",\n};\n\nexport const COLORS = {\n borderLight: \"rgba(0, 0, 0, 0.3)\",\n borderDark: \"rgba(255, 255, 255, 0.15)\",\n};\n\nconst checkerSquareSize = 4;\n\nexport const CHECKER_DIMENSIONS = {\n squareSize: checkerSquareSize,\n size: checkerSquareSize * 2,\n};\n","$size-s: 20px;\n$size-m: 24px;\n$size-l: 28px;\n\n:host {\n @apply relative inline-flex;\n}\n\n:host([scale=\"s\"]) {\n @apply h-5 w-5;\n}\n\n:host([scale=\"m\"]) {\n @apply h-6 w-6;\n}\n\n:host([scale=\"l\"]) {\n @apply h-8 w-8;\n}\n\n.swatch {\n @apply overflow-hidden;\n block-size: inherit;\n inline-size: inherit;\n\n rect {\n @apply transition-all duration-150 ease-in-out;\n }\n}\n\n.swatch--no-color {\n rect {\n fill: var(--calcite-color-foreground-1);\n }\n\n line {\n stroke: var(--calcite-color-status-danger);\n }\n}\n\n.checker {\n fill: #cacaca;\n}\n\n@include base-component();\n","import { Component, Element, Fragment, h, Prop, VNode, Watch } from \"@stencil/core\";\nimport Color from \"color\";\nimport { getModeName } from \"../../utils/dom\";\nimport { Scale } from \"../interfaces\";\nimport { hexify } from \"../color-picker/utils\";\nimport { CHECKER_DIMENSIONS, COLORS, CSS } from \"./resources\";\n\n@Component({\n tag: \"calcite-color-picker-swatch\",\n styleUrl: \"color-picker-swatch.scss\",\n shadow: true,\n})\nexport class ColorPickerSwatch {\n //--------------------------------------------------------------------------\n //\n // Properties\n //\n //--------------------------------------------------------------------------\n\n /**\n * When `true`, the component is active.\n */\n @Prop({\n reflect: true,\n })\n active = false;\n\n /**\n * The color value.\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/CSS/color_value\n */\n @Prop()\n color: string | null;\n\n @Watch(\"color\")\n handleColorChange(color: string | null): void {\n this.internalColor = color ? Color(color) : null;\n }\n\n /**\n * Specifies the size of the component.\n */\n @Prop({\n reflect: true,\n })\n scale: Scale = \"m\";\n\n //--------------------------------------------------------------------------\n //\n // Private State/Props\n //\n //--------------------------------------------------------------------------\n\n @Element() el: HTMLCalciteColorPickerSwatchElement;\n\n private internalColor: Color;\n\n //--------------------------------------------------------------------------\n //\n // Lifecycle\n //\n //--------------------------------------------------------------------------\n\n componentWillLoad(): void {\n this.handleColorChange(this.color);\n }\n\n render(): VNode {\n const isEmpty = !this.internalColor;\n const classes = {\n [CSS.swatch]: true,\n [CSS.noColorSwatch]: isEmpty,\n };\n\n return (\n <svg class={classes} xmlns=\"http://www.w3.org/2000/svg\">\n {this.renderSwatch()}\n </svg>\n );\n }\n\n renderSwatch(): VNode {\n const { active, el, internalColor } = this;\n const borderRadius = active ? \"100%\" : \"0\";\n const theme = getModeName(el);\n const borderColor = theme === \"light\" ? COLORS.borderLight : COLORS.borderDark;\n const commonSwatchProps = {\n height: \"100%\",\n rx: borderRadius,\n stroke: borderColor,\n\n // stroke-width and clip-path are needed to hide overflowing portion of stroke\n // see https://stackoverflow.com/a/7273346/194216\n\n // using attribute to work around Stencil using the prop name vs the attribute when rendering\n [\"stroke-width\"]: \"2\",\n width: \"100%\",\n };\n\n const isEmpty = !internalColor;\n\n if (isEmpty) {\n return (\n <Fragment>\n <clipPath id=\"shape\">\n <rect height=\"100%\" rx={borderRadius} width=\"100%\" />\n </clipPath>\n <rect\n clip-path={`inset(0 round ${borderRadius})`}\n rx={borderRadius}\n {...commonSwatchProps}\n />\n <line clip-path=\"url(#shape)\" stroke-width=\"3\" x1=\"100%\" x2=\"0\" y1=\"0\" y2=\"100%\" />\n </Fragment>\n );\n }\n\n const alpha = internalColor.alpha();\n const hex = hexify(internalColor);\n const hexa = hexify(internalColor, alpha < 1);\n\n return (\n <Fragment>\n <title>{hexa}</title>\n <defs>\n <pattern\n height={CHECKER_DIMENSIONS.size}\n id=\"checker\"\n patternUnits=\"userSpaceOnUse\"\n width={CHECKER_DIMENSIONS.size}\n x=\"0\"\n y=\"0\"\n >\n <rect\n class={CSS.checker}\n height={CHECKER_DIMENSIONS.squareSize}\n width={CHECKER_DIMENSIONS.squareSize}\n x=\"0\"\n y=\"0\"\n />\n <rect\n class={CSS.checker}\n height={CHECKER_DIMENSIONS.squareSize}\n width={CHECKER_DIMENSIONS.squareSize}\n x={CHECKER_DIMENSIONS.squareSize}\n y={CHECKER_DIMENSIONS.squareSize}\n />\n </pattern>\n </defs>\n <rect fill=\"url(#checker)\" height=\"100%\" rx={borderRadius} width=\"100%\" />\n <rect\n fill={hex}\n style={{\n \"clip-path\":\n alpha < 1 ? \"polygon(100% 0, 0 0, 0 100%)\" : `inset(0 round ${borderRadius})`,\n }}\n {...commonSwatchProps}\n />\n {alpha < 1 ? (\n <rect\n fill={hexa}\n key=\"opacity-fill\"\n style={{ \"clip-path\": \"polygon(100% 0, 100% 100%, 0 100%)\" }}\n {...commonSwatchProps}\n />\n ) : null}\n </Fragment>\n );\n }\n}\n"],"version":3}
1
+ {"file":"calcite-color-picker.calcite-color-picker-hex-input.calcite-color-picker-swatch.entry.cjs.js","mappings":"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","names":["colorNames","swizzle","cssKeywords","convert","CSS","DEFAULT_COLOR","Color","CSSColorMode","color","normalizeHex","hexify","alphaCompatible","clamp","opacityToAlpha","isActivationKey","isPrimaryPointerButton","h","getElementDir","alphaToOpacity","index","throttle","parseMode","normalizeColor","colorEqual","updateMessages","componentFocusable","setUpLoadableComponent","setUpMessages","connectInteractive","connectLocalized","connectMessages","setComponentLoaded","disconnectInteractive","disconnectLocalized","disconnectMessages","updateHostInteraction","InteractiveContainer","toAlphaMode","toNonAlphaMode","normalizeAlpha","closeToRangeEdge","remap","isLonghandHex","isValidHex","rgbToHex","hexChar","focusElement","getModeName","Fragment"],"sources":["../../node_modules/color-name/index.js","../../node_modules/simple-swizzle/node_modules/is-arrayish/index.js","../../node_modules/simple-swizzle/index.js","../../node_modules/color-string/index.js","../../node_modules/color/node_modules/color-name/index.js","../../node_modules/color/node_modules/color-convert/conversions.js","../../node_modules/color/node_modules/color-convert/route.js","../../node_modules/color/node_modules/color-convert/index.js","../../node_modules/color/index.js","src/components/color-picker/resources.ts","src/components/color-picker/color-picker.scss?tag=calcite-color-picker&encapsulation=shadow","src/components/color-picker/color-picker.tsx","src/components/color-picker-hex-input/resources.ts","src/components/color-picker-hex-input/color-picker-hex-input.scss?tag=calcite-color-picker-hex-input&encapsulation=shadow","src/components/color-picker-hex-input/color-picker-hex-input.tsx","src/components/color-picker-swatch/resources.ts","src/components/color-picker-swatch/color-picker-swatch.scss?tag=calcite-color-picker-swatch&encapsulation=shadow","src/components/color-picker-swatch/color-picker-swatch.tsx"],"sourcesContent":["'use strict'\r\n\r\nmodule.exports = {\r\n\t\"aliceblue\": [240, 248, 255],\r\n\t\"antiquewhite\": [250, 235, 215],\r\n\t\"aqua\": [0, 255, 255],\r\n\t\"aquamarine\": [127, 255, 212],\r\n\t\"azure\": [240, 255, 255],\r\n\t\"beige\": [245, 245, 220],\r\n\t\"bisque\": [255, 228, 196],\r\n\t\"black\": [0, 0, 0],\r\n\t\"blanchedalmond\": [255, 235, 205],\r\n\t\"blue\": [0, 0, 255],\r\n\t\"blueviolet\": [138, 43, 226],\r\n\t\"brown\": [165, 42, 42],\r\n\t\"burlywood\": [222, 184, 135],\r\n\t\"cadetblue\": [95, 158, 160],\r\n\t\"chartreuse\": [127, 255, 0],\r\n\t\"chocolate\": [210, 105, 30],\r\n\t\"coral\": [255, 127, 80],\r\n\t\"cornflowerblue\": [100, 149, 237],\r\n\t\"cornsilk\": [255, 248, 220],\r\n\t\"crimson\": [220, 20, 60],\r\n\t\"cyan\": [0, 255, 255],\r\n\t\"darkblue\": [0, 0, 139],\r\n\t\"darkcyan\": [0, 139, 139],\r\n\t\"darkgoldenrod\": [184, 134, 11],\r\n\t\"darkgray\": [169, 169, 169],\r\n\t\"darkgreen\": [0, 100, 0],\r\n\t\"darkgrey\": [169, 169, 169],\r\n\t\"darkkhaki\": [189, 183, 107],\r\n\t\"darkmagenta\": [139, 0, 139],\r\n\t\"darkolivegreen\": [85, 107, 47],\r\n\t\"darkorange\": [255, 140, 0],\r\n\t\"darkorchid\": [153, 50, 204],\r\n\t\"darkred\": [139, 0, 0],\r\n\t\"darksalmon\": [233, 150, 122],\r\n\t\"darkseagreen\": [143, 188, 143],\r\n\t\"darkslateblue\": [72, 61, 139],\r\n\t\"darkslategray\": [47, 79, 79],\r\n\t\"darkslategrey\": [47, 79, 79],\r\n\t\"darkturquoise\": [0, 206, 209],\r\n\t\"darkviolet\": [148, 0, 211],\r\n\t\"deeppink\": [255, 20, 147],\r\n\t\"deepskyblue\": [0, 191, 255],\r\n\t\"dimgray\": [105, 105, 105],\r\n\t\"dimgrey\": [105, 105, 105],\r\n\t\"dodgerblue\": [30, 144, 255],\r\n\t\"firebrick\": [178, 34, 34],\r\n\t\"floralwhite\": [255, 250, 240],\r\n\t\"forestgreen\": [34, 139, 34],\r\n\t\"fuchsia\": [255, 0, 255],\r\n\t\"gainsboro\": [220, 220, 220],\r\n\t\"ghostwhite\": [248, 248, 255],\r\n\t\"gold\": [255, 215, 0],\r\n\t\"goldenrod\": [218, 165, 32],\r\n\t\"gray\": [128, 128, 128],\r\n\t\"green\": [0, 128, 0],\r\n\t\"greenyellow\": [173, 255, 47],\r\n\t\"grey\": [128, 128, 128],\r\n\t\"honeydew\": [240, 255, 240],\r\n\t\"hotpink\": [255, 105, 180],\r\n\t\"indianred\": [205, 92, 92],\r\n\t\"indigo\": [75, 0, 130],\r\n\t\"ivory\": [255, 255, 240],\r\n\t\"khaki\": [240, 230, 140],\r\n\t\"lavender\": [230, 230, 250],\r\n\t\"lavenderblush\": [255, 240, 245],\r\n\t\"lawngreen\": [124, 252, 0],\r\n\t\"lemonchiffon\": [255, 250, 205],\r\n\t\"lightblue\": [173, 216, 230],\r\n\t\"lightcoral\": [240, 128, 128],\r\n\t\"lightcyan\": [224, 255, 255],\r\n\t\"lightgoldenrodyellow\": [250, 250, 210],\r\n\t\"lightgray\": [211, 211, 211],\r\n\t\"lightgreen\": [144, 238, 144],\r\n\t\"lightgrey\": [211, 211, 211],\r\n\t\"lightpink\": [255, 182, 193],\r\n\t\"lightsalmon\": [255, 160, 122],\r\n\t\"lightseagreen\": [32, 178, 170],\r\n\t\"lightskyblue\": [135, 206, 250],\r\n\t\"lightslategray\": [119, 136, 153],\r\n\t\"lightslategrey\": [119, 136, 153],\r\n\t\"lightsteelblue\": [176, 196, 222],\r\n\t\"lightyellow\": [255, 255, 224],\r\n\t\"lime\": [0, 255, 0],\r\n\t\"limegreen\": [50, 205, 50],\r\n\t\"linen\": [250, 240, 230],\r\n\t\"magenta\": [255, 0, 255],\r\n\t\"maroon\": [128, 0, 0],\r\n\t\"mediumaquamarine\": [102, 205, 170],\r\n\t\"mediumblue\": [0, 0, 205],\r\n\t\"mediumorchid\": [186, 85, 211],\r\n\t\"mediumpurple\": [147, 112, 219],\r\n\t\"mediumseagreen\": [60, 179, 113],\r\n\t\"mediumslateblue\": [123, 104, 238],\r\n\t\"mediumspringgreen\": [0, 250, 154],\r\n\t\"mediumturquoise\": [72, 209, 204],\r\n\t\"mediumvioletred\": [199, 21, 133],\r\n\t\"midnightblue\": [25, 25, 112],\r\n\t\"mintcream\": [245, 255, 250],\r\n\t\"mistyrose\": [255, 228, 225],\r\n\t\"moccasin\": [255, 228, 181],\r\n\t\"navajowhite\": [255, 222, 173],\r\n\t\"navy\": [0, 0, 128],\r\n\t\"oldlace\": [253, 245, 230],\r\n\t\"olive\": [128, 128, 0],\r\n\t\"olivedrab\": [107, 142, 35],\r\n\t\"orange\": [255, 165, 0],\r\n\t\"orangered\": [255, 69, 0],\r\n\t\"orchid\": [218, 112, 214],\r\n\t\"palegoldenrod\": [238, 232, 170],\r\n\t\"palegreen\": [152, 251, 152],\r\n\t\"paleturquoise\": [175, 238, 238],\r\n\t\"palevioletred\": [219, 112, 147],\r\n\t\"papayawhip\": [255, 239, 213],\r\n\t\"peachpuff\": [255, 218, 185],\r\n\t\"peru\": [205, 133, 63],\r\n\t\"pink\": [255, 192, 203],\r\n\t\"plum\": [221, 160, 221],\r\n\t\"powderblue\": [176, 224, 230],\r\n\t\"purple\": [128, 0, 128],\r\n\t\"rebeccapurple\": [102, 51, 153],\r\n\t\"red\": [255, 0, 0],\r\n\t\"rosybrown\": [188, 143, 143],\r\n\t\"royalblue\": [65, 105, 225],\r\n\t\"saddlebrown\": [139, 69, 19],\r\n\t\"salmon\": [250, 128, 114],\r\n\t\"sandybrown\": [244, 164, 96],\r\n\t\"seagreen\": [46, 139, 87],\r\n\t\"seashell\": [255, 245, 238],\r\n\t\"sienna\": [160, 82, 45],\r\n\t\"silver\": [192, 192, 192],\r\n\t\"skyblue\": [135, 206, 235],\r\n\t\"slateblue\": [106, 90, 205],\r\n\t\"slategray\": [112, 128, 144],\r\n\t\"slategrey\": [112, 128, 144],\r\n\t\"snow\": [255, 250, 250],\r\n\t\"springgreen\": [0, 255, 127],\r\n\t\"steelblue\": [70, 130, 180],\r\n\t\"tan\": [210, 180, 140],\r\n\t\"teal\": [0, 128, 128],\r\n\t\"thistle\": [216, 191, 216],\r\n\t\"tomato\": [255, 99, 71],\r\n\t\"turquoise\": [64, 224, 208],\r\n\t\"violet\": [238, 130, 238],\r\n\t\"wheat\": [245, 222, 179],\r\n\t\"white\": [255, 255, 255],\r\n\t\"whitesmoke\": [245, 245, 245],\r\n\t\"yellow\": [255, 255, 0],\r\n\t\"yellowgreen\": [154, 205, 50]\r\n};\r\n","module.exports = function isArrayish(obj) {\n\tif (!obj || typeof obj === 'string') {\n\t\treturn false;\n\t}\n\n\treturn obj instanceof Array || Array.isArray(obj) ||\n\t\t(obj.length >= 0 && (obj.splice instanceof Function ||\n\t\t\t(Object.getOwnPropertyDescriptor(obj, (obj.length - 1)) && obj.constructor.name !== 'String')));\n};\n","'use strict';\n\nvar isArrayish = require('is-arrayish');\n\nvar concat = Array.prototype.concat;\nvar slice = Array.prototype.slice;\n\nvar swizzle = module.exports = function swizzle(args) {\n\tvar results = [];\n\n\tfor (var i = 0, len = args.length; i < len; i++) {\n\t\tvar arg = args[i];\n\n\t\tif (isArrayish(arg)) {\n\t\t\t// http://jsperf.com/javascript-array-concat-vs-push/98\n\t\t\tresults = concat.call(results, slice.call(arg));\n\t\t} else {\n\t\t\tresults.push(arg);\n\t\t}\n\t}\n\n\treturn results;\n};\n\nswizzle.wrap = function (fn) {\n\treturn function () {\n\t\treturn fn(swizzle(arguments));\n\t};\n};\n","/* MIT license */\nvar colorNames = require('color-name');\nvar swizzle = require('simple-swizzle');\nvar hasOwnProperty = Object.hasOwnProperty;\n\nvar reverseNames = Object.create(null);\n\n// create a list of reverse color names\nfor (var name in colorNames) {\n\tif (hasOwnProperty.call(colorNames, name)) {\n\t\treverseNames[colorNames[name]] = name;\n\t}\n}\n\nvar cs = module.exports = {\n\tto: {},\n\tget: {}\n};\n\ncs.get = function (string) {\n\tvar prefix = string.substring(0, 3).toLowerCase();\n\tvar val;\n\tvar model;\n\tswitch (prefix) {\n\t\tcase 'hsl':\n\t\t\tval = cs.get.hsl(string);\n\t\t\tmodel = 'hsl';\n\t\t\tbreak;\n\t\tcase 'hwb':\n\t\t\tval = cs.get.hwb(string);\n\t\t\tmodel = 'hwb';\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tval = cs.get.rgb(string);\n\t\t\tmodel = 'rgb';\n\t\t\tbreak;\n\t}\n\n\tif (!val) {\n\t\treturn null;\n\t}\n\n\treturn {model: model, value: val};\n};\n\ncs.get.rgb = function (string) {\n\tif (!string) {\n\t\treturn null;\n\t}\n\n\tvar abbr = /^#([a-f0-9]{3,4})$/i;\n\tvar hex = /^#([a-f0-9]{6})([a-f0-9]{2})?$/i;\n\tvar rgba = /^rgba?\\(\\s*([+-]?\\d+)(?=[\\s,])\\s*(?:,\\s*)?([+-]?\\d+)(?=[\\s,])\\s*(?:,\\s*)?([+-]?\\d+)\\s*(?:[,|\\/]\\s*([+-]?[\\d\\.]+)(%?)\\s*)?\\)$/;\n\tvar per = /^rgba?\\(\\s*([+-]?[\\d\\.]+)\\%\\s*,?\\s*([+-]?[\\d\\.]+)\\%\\s*,?\\s*([+-]?[\\d\\.]+)\\%\\s*(?:[,|\\/]\\s*([+-]?[\\d\\.]+)(%?)\\s*)?\\)$/;\n\tvar keyword = /^(\\w+)$/;\n\n\tvar rgb = [0, 0, 0, 1];\n\tvar match;\n\tvar i;\n\tvar hexAlpha;\n\n\tif (match = string.match(hex)) {\n\t\thexAlpha = match[2];\n\t\tmatch = match[1];\n\n\t\tfor (i = 0; i < 3; i++) {\n\t\t\t// https://jsperf.com/slice-vs-substr-vs-substring-methods-long-string/19\n\t\t\tvar i2 = i * 2;\n\t\t\trgb[i] = parseInt(match.slice(i2, i2 + 2), 16);\n\t\t}\n\n\t\tif (hexAlpha) {\n\t\t\trgb[3] = parseInt(hexAlpha, 16) / 255;\n\t\t}\n\t} else if (match = string.match(abbr)) {\n\t\tmatch = match[1];\n\t\thexAlpha = match[3];\n\n\t\tfor (i = 0; i < 3; i++) {\n\t\t\trgb[i] = parseInt(match[i] + match[i], 16);\n\t\t}\n\n\t\tif (hexAlpha) {\n\t\t\trgb[3] = parseInt(hexAlpha + hexAlpha, 16) / 255;\n\t\t}\n\t} else if (match = string.match(rgba)) {\n\t\tfor (i = 0; i < 3; i++) {\n\t\t\trgb[i] = parseInt(match[i + 1], 0);\n\t\t}\n\n\t\tif (match[4]) {\n\t\t\tif (match[5]) {\n\t\t\t\trgb[3] = parseFloat(match[4]) * 0.01;\n\t\t\t} else {\n\t\t\t\trgb[3] = parseFloat(match[4]);\n\t\t\t}\n\t\t}\n\t} else if (match = string.match(per)) {\n\t\tfor (i = 0; i < 3; i++) {\n\t\t\trgb[i] = Math.round(parseFloat(match[i + 1]) * 2.55);\n\t\t}\n\n\t\tif (match[4]) {\n\t\t\tif (match[5]) {\n\t\t\t\trgb[3] = parseFloat(match[4]) * 0.01;\n\t\t\t} else {\n\t\t\t\trgb[3] = parseFloat(match[4]);\n\t\t\t}\n\t\t}\n\t} else if (match = string.match(keyword)) {\n\t\tif (match[1] === 'transparent') {\n\t\t\treturn [0, 0, 0, 0];\n\t\t}\n\n\t\tif (!hasOwnProperty.call(colorNames, match[1])) {\n\t\t\treturn null;\n\t\t}\n\n\t\trgb = colorNames[match[1]];\n\t\trgb[3] = 1;\n\n\t\treturn rgb;\n\t} else {\n\t\treturn null;\n\t}\n\n\tfor (i = 0; i < 3; i++) {\n\t\trgb[i] = clamp(rgb[i], 0, 255);\n\t}\n\trgb[3] = clamp(rgb[3], 0, 1);\n\n\treturn rgb;\n};\n\ncs.get.hsl = function (string) {\n\tif (!string) {\n\t\treturn null;\n\t}\n\n\tvar hsl = /^hsla?\\(\\s*([+-]?(?:\\d{0,3}\\.)?\\d+)(?:deg)?\\s*,?\\s*([+-]?[\\d\\.]+)%\\s*,?\\s*([+-]?[\\d\\.]+)%\\s*(?:[,|\\/]\\s*([+-]?(?=\\.\\d|\\d)(?:0|[1-9]\\d*)?(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)\\s*)?\\)$/;\n\tvar match = string.match(hsl);\n\n\tif (match) {\n\t\tvar alpha = parseFloat(match[4]);\n\t\tvar h = ((parseFloat(match[1]) % 360) + 360) % 360;\n\t\tvar s = clamp(parseFloat(match[2]), 0, 100);\n\t\tvar l = clamp(parseFloat(match[3]), 0, 100);\n\t\tvar a = clamp(isNaN(alpha) ? 1 : alpha, 0, 1);\n\n\t\treturn [h, s, l, a];\n\t}\n\n\treturn null;\n};\n\ncs.get.hwb = function (string) {\n\tif (!string) {\n\t\treturn null;\n\t}\n\n\tvar hwb = /^hwb\\(\\s*([+-]?\\d{0,3}(?:\\.\\d+)?)(?:deg)?\\s*,\\s*([+-]?[\\d\\.]+)%\\s*,\\s*([+-]?[\\d\\.]+)%\\s*(?:,\\s*([+-]?(?=\\.\\d|\\d)(?:0|[1-9]\\d*)?(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)\\s*)?\\)$/;\n\tvar match = string.match(hwb);\n\n\tif (match) {\n\t\tvar alpha = parseFloat(match[4]);\n\t\tvar h = ((parseFloat(match[1]) % 360) + 360) % 360;\n\t\tvar w = clamp(parseFloat(match[2]), 0, 100);\n\t\tvar b = clamp(parseFloat(match[3]), 0, 100);\n\t\tvar a = clamp(isNaN(alpha) ? 1 : alpha, 0, 1);\n\t\treturn [h, w, b, a];\n\t}\n\n\treturn null;\n};\n\ncs.to.hex = function () {\n\tvar rgba = swizzle(arguments);\n\n\treturn (\n\t\t'#' +\n\t\thexDouble(rgba[0]) +\n\t\thexDouble(rgba[1]) +\n\t\thexDouble(rgba[2]) +\n\t\t(rgba[3] < 1\n\t\t\t? (hexDouble(Math.round(rgba[3] * 255)))\n\t\t\t: '')\n\t);\n};\n\ncs.to.rgb = function () {\n\tvar rgba = swizzle(arguments);\n\n\treturn rgba.length < 4 || rgba[3] === 1\n\t\t? 'rgb(' + Math.round(rgba[0]) + ', ' + Math.round(rgba[1]) + ', ' + Math.round(rgba[2]) + ')'\n\t\t: 'rgba(' + Math.round(rgba[0]) + ', ' + Math.round(rgba[1]) + ', ' + Math.round(rgba[2]) + ', ' + rgba[3] + ')';\n};\n\ncs.to.rgb.percent = function () {\n\tvar rgba = swizzle(arguments);\n\n\tvar r = Math.round(rgba[0] / 255 * 100);\n\tvar g = Math.round(rgba[1] / 255 * 100);\n\tvar b = Math.round(rgba[2] / 255 * 100);\n\n\treturn rgba.length < 4 || rgba[3] === 1\n\t\t? 'rgb(' + r + '%, ' + g + '%, ' + b + '%)'\n\t\t: 'rgba(' + r + '%, ' + g + '%, ' + b + '%, ' + rgba[3] + ')';\n};\n\ncs.to.hsl = function () {\n\tvar hsla = swizzle(arguments);\n\treturn hsla.length < 4 || hsla[3] === 1\n\t\t? 'hsl(' + hsla[0] + ', ' + hsla[1] + '%, ' + hsla[2] + '%)'\n\t\t: 'hsla(' + hsla[0] + ', ' + hsla[1] + '%, ' + hsla[2] + '%, ' + hsla[3] + ')';\n};\n\n// hwb is a bit different than rgb(a) & hsl(a) since there is no alpha specific syntax\n// (hwb have alpha optional & 1 is default value)\ncs.to.hwb = function () {\n\tvar hwba = swizzle(arguments);\n\n\tvar a = '';\n\tif (hwba.length >= 4 && hwba[3] !== 1) {\n\t\ta = ', ' + hwba[3];\n\t}\n\n\treturn 'hwb(' + hwba[0] + ', ' + hwba[1] + '%, ' + hwba[2] + '%' + a + ')';\n};\n\ncs.to.keyword = function (rgb) {\n\treturn reverseNames[rgb.slice(0, 3)];\n};\n\n// helpers\nfunction clamp(num, min, max) {\n\treturn Math.min(Math.max(min, num), max);\n}\n\nfunction hexDouble(num) {\n\tvar str = Math.round(num).toString(16).toUpperCase();\n\treturn (str.length < 2) ? '0' + str : str;\n}\n","'use strict'\r\n\r\nmodule.exports = {\r\n\t\"aliceblue\": [240, 248, 255],\r\n\t\"antiquewhite\": [250, 235, 215],\r\n\t\"aqua\": [0, 255, 255],\r\n\t\"aquamarine\": [127, 255, 212],\r\n\t\"azure\": [240, 255, 255],\r\n\t\"beige\": [245, 245, 220],\r\n\t\"bisque\": [255, 228, 196],\r\n\t\"black\": [0, 0, 0],\r\n\t\"blanchedalmond\": [255, 235, 205],\r\n\t\"blue\": [0, 0, 255],\r\n\t\"blueviolet\": [138, 43, 226],\r\n\t\"brown\": [165, 42, 42],\r\n\t\"burlywood\": [222, 184, 135],\r\n\t\"cadetblue\": [95, 158, 160],\r\n\t\"chartreuse\": [127, 255, 0],\r\n\t\"chocolate\": [210, 105, 30],\r\n\t\"coral\": [255, 127, 80],\r\n\t\"cornflowerblue\": [100, 149, 237],\r\n\t\"cornsilk\": [255, 248, 220],\r\n\t\"crimson\": [220, 20, 60],\r\n\t\"cyan\": [0, 255, 255],\r\n\t\"darkblue\": [0, 0, 139],\r\n\t\"darkcyan\": [0, 139, 139],\r\n\t\"darkgoldenrod\": [184, 134, 11],\r\n\t\"darkgray\": [169, 169, 169],\r\n\t\"darkgreen\": [0, 100, 0],\r\n\t\"darkgrey\": [169, 169, 169],\r\n\t\"darkkhaki\": [189, 183, 107],\r\n\t\"darkmagenta\": [139, 0, 139],\r\n\t\"darkolivegreen\": [85, 107, 47],\r\n\t\"darkorange\": [255, 140, 0],\r\n\t\"darkorchid\": [153, 50, 204],\r\n\t\"darkred\": [139, 0, 0],\r\n\t\"darksalmon\": [233, 150, 122],\r\n\t\"darkseagreen\": [143, 188, 143],\r\n\t\"darkslateblue\": [72, 61, 139],\r\n\t\"darkslategray\": [47, 79, 79],\r\n\t\"darkslategrey\": [47, 79, 79],\r\n\t\"darkturquoise\": [0, 206, 209],\r\n\t\"darkviolet\": [148, 0, 211],\r\n\t\"deeppink\": [255, 20, 147],\r\n\t\"deepskyblue\": [0, 191, 255],\r\n\t\"dimgray\": [105, 105, 105],\r\n\t\"dimgrey\": [105, 105, 105],\r\n\t\"dodgerblue\": [30, 144, 255],\r\n\t\"firebrick\": [178, 34, 34],\r\n\t\"floralwhite\": [255, 250, 240],\r\n\t\"forestgreen\": [34, 139, 34],\r\n\t\"fuchsia\": [255, 0, 255],\r\n\t\"gainsboro\": [220, 220, 220],\r\n\t\"ghostwhite\": [248, 248, 255],\r\n\t\"gold\": [255, 215, 0],\r\n\t\"goldenrod\": [218, 165, 32],\r\n\t\"gray\": [128, 128, 128],\r\n\t\"green\": [0, 128, 0],\r\n\t\"greenyellow\": [173, 255, 47],\r\n\t\"grey\": [128, 128, 128],\r\n\t\"honeydew\": [240, 255, 240],\r\n\t\"hotpink\": [255, 105, 180],\r\n\t\"indianred\": [205, 92, 92],\r\n\t\"indigo\": [75, 0, 130],\r\n\t\"ivory\": [255, 255, 240],\r\n\t\"khaki\": [240, 230, 140],\r\n\t\"lavender\": [230, 230, 250],\r\n\t\"lavenderblush\": [255, 240, 245],\r\n\t\"lawngreen\": [124, 252, 0],\r\n\t\"lemonchiffon\": [255, 250, 205],\r\n\t\"lightblue\": [173, 216, 230],\r\n\t\"lightcoral\": [240, 128, 128],\r\n\t\"lightcyan\": [224, 255, 255],\r\n\t\"lightgoldenrodyellow\": [250, 250, 210],\r\n\t\"lightgray\": [211, 211, 211],\r\n\t\"lightgreen\": [144, 238, 144],\r\n\t\"lightgrey\": [211, 211, 211],\r\n\t\"lightpink\": [255, 182, 193],\r\n\t\"lightsalmon\": [255, 160, 122],\r\n\t\"lightseagreen\": [32, 178, 170],\r\n\t\"lightskyblue\": [135, 206, 250],\r\n\t\"lightslategray\": [119, 136, 153],\r\n\t\"lightslategrey\": [119, 136, 153],\r\n\t\"lightsteelblue\": [176, 196, 222],\r\n\t\"lightyellow\": [255, 255, 224],\r\n\t\"lime\": [0, 255, 0],\r\n\t\"limegreen\": [50, 205, 50],\r\n\t\"linen\": [250, 240, 230],\r\n\t\"magenta\": [255, 0, 255],\r\n\t\"maroon\": [128, 0, 0],\r\n\t\"mediumaquamarine\": [102, 205, 170],\r\n\t\"mediumblue\": [0, 0, 205],\r\n\t\"mediumorchid\": [186, 85, 211],\r\n\t\"mediumpurple\": [147, 112, 219],\r\n\t\"mediumseagreen\": [60, 179, 113],\r\n\t\"mediumslateblue\": [123, 104, 238],\r\n\t\"mediumspringgreen\": [0, 250, 154],\r\n\t\"mediumturquoise\": [72, 209, 204],\r\n\t\"mediumvioletred\": [199, 21, 133],\r\n\t\"midnightblue\": [25, 25, 112],\r\n\t\"mintcream\": [245, 255, 250],\r\n\t\"mistyrose\": [255, 228, 225],\r\n\t\"moccasin\": [255, 228, 181],\r\n\t\"navajowhite\": [255, 222, 173],\r\n\t\"navy\": [0, 0, 128],\r\n\t\"oldlace\": [253, 245, 230],\r\n\t\"olive\": [128, 128, 0],\r\n\t\"olivedrab\": [107, 142, 35],\r\n\t\"orange\": [255, 165, 0],\r\n\t\"orangered\": [255, 69, 0],\r\n\t\"orchid\": [218, 112, 214],\r\n\t\"palegoldenrod\": [238, 232, 170],\r\n\t\"palegreen\": [152, 251, 152],\r\n\t\"paleturquoise\": [175, 238, 238],\r\n\t\"palevioletred\": [219, 112, 147],\r\n\t\"papayawhip\": [255, 239, 213],\r\n\t\"peachpuff\": [255, 218, 185],\r\n\t\"peru\": [205, 133, 63],\r\n\t\"pink\": [255, 192, 203],\r\n\t\"plum\": [221, 160, 221],\r\n\t\"powderblue\": [176, 224, 230],\r\n\t\"purple\": [128, 0, 128],\r\n\t\"rebeccapurple\": [102, 51, 153],\r\n\t\"red\": [255, 0, 0],\r\n\t\"rosybrown\": [188, 143, 143],\r\n\t\"royalblue\": [65, 105, 225],\r\n\t\"saddlebrown\": [139, 69, 19],\r\n\t\"salmon\": [250, 128, 114],\r\n\t\"sandybrown\": [244, 164, 96],\r\n\t\"seagreen\": [46, 139, 87],\r\n\t\"seashell\": [255, 245, 238],\r\n\t\"sienna\": [160, 82, 45],\r\n\t\"silver\": [192, 192, 192],\r\n\t\"skyblue\": [135, 206, 235],\r\n\t\"slateblue\": [106, 90, 205],\r\n\t\"slategray\": [112, 128, 144],\r\n\t\"slategrey\": [112, 128, 144],\r\n\t\"snow\": [255, 250, 250],\r\n\t\"springgreen\": [0, 255, 127],\r\n\t\"steelblue\": [70, 130, 180],\r\n\t\"tan\": [210, 180, 140],\r\n\t\"teal\": [0, 128, 128],\r\n\t\"thistle\": [216, 191, 216],\r\n\t\"tomato\": [255, 99, 71],\r\n\t\"turquoise\": [64, 224, 208],\r\n\t\"violet\": [238, 130, 238],\r\n\t\"wheat\": [245, 222, 179],\r\n\t\"white\": [255, 255, 255],\r\n\t\"whitesmoke\": [245, 245, 245],\r\n\t\"yellow\": [255, 255, 0],\r\n\t\"yellowgreen\": [154, 205, 50]\r\n};\r\n","/* MIT license */\n/* eslint-disable no-mixed-operators */\nconst cssKeywords = require('color-name');\n\n// NOTE: conversions should only return primitive values (i.e. arrays, or\n// values that give correct `typeof` results).\n// do not use box values types (i.e. Number(), String(), etc.)\n\nconst reverseKeywords = {};\nfor (const key of Object.keys(cssKeywords)) {\n\treverseKeywords[cssKeywords[key]] = key;\n}\n\nconst convert = {\n\trgb: {channels: 3, labels: 'rgb'},\n\thsl: {channels: 3, labels: 'hsl'},\n\thsv: {channels: 3, labels: 'hsv'},\n\thwb: {channels: 3, labels: 'hwb'},\n\tcmyk: {channels: 4, labels: 'cmyk'},\n\txyz: {channels: 3, labels: 'xyz'},\n\tlab: {channels: 3, labels: 'lab'},\n\tlch: {channels: 3, labels: 'lch'},\n\thex: {channels: 1, labels: ['hex']},\n\tkeyword: {channels: 1, labels: ['keyword']},\n\tansi16: {channels: 1, labels: ['ansi16']},\n\tansi256: {channels: 1, labels: ['ansi256']},\n\thcg: {channels: 3, labels: ['h', 'c', 'g']},\n\tapple: {channels: 3, labels: ['r16', 'g16', 'b16']},\n\tgray: {channels: 1, labels: ['gray']}\n};\n\nmodule.exports = convert;\n\n// Hide .channels and .labels properties\nfor (const model of Object.keys(convert)) {\n\tif (!('channels' in convert[model])) {\n\t\tthrow new Error('missing channels property: ' + model);\n\t}\n\n\tif (!('labels' in convert[model])) {\n\t\tthrow new Error('missing channel labels property: ' + model);\n\t}\n\n\tif (convert[model].labels.length !== convert[model].channels) {\n\t\tthrow new Error('channel and label counts mismatch: ' + model);\n\t}\n\n\tconst {channels, labels} = convert[model];\n\tdelete convert[model].channels;\n\tdelete convert[model].labels;\n\tObject.defineProperty(convert[model], 'channels', {value: channels});\n\tObject.defineProperty(convert[model], 'labels', {value: labels});\n}\n\nconvert.rgb.hsl = function (rgb) {\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\tconst min = Math.min(r, g, b);\n\tconst max = Math.max(r, g, b);\n\tconst delta = max - min;\n\tlet h;\n\tlet s;\n\n\tif (max === min) {\n\t\th = 0;\n\t} else if (r === max) {\n\t\th = (g - b) / delta;\n\t} else if (g === max) {\n\t\th = 2 + (b - r) / delta;\n\t} else if (b === max) {\n\t\th = 4 + (r - g) / delta;\n\t}\n\n\th = Math.min(h * 60, 360);\n\n\tif (h < 0) {\n\t\th += 360;\n\t}\n\n\tconst l = (min + max) / 2;\n\n\tif (max === min) {\n\t\ts = 0;\n\t} else if (l <= 0.5) {\n\t\ts = delta / (max + min);\n\t} else {\n\t\ts = delta / (2 - max - min);\n\t}\n\n\treturn [h, s * 100, l * 100];\n};\n\nconvert.rgb.hsv = function (rgb) {\n\tlet rdif;\n\tlet gdif;\n\tlet bdif;\n\tlet h;\n\tlet s;\n\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\tconst v = Math.max(r, g, b);\n\tconst diff = v - Math.min(r, g, b);\n\tconst diffc = function (c) {\n\t\treturn (v - c) / 6 / diff + 1 / 2;\n\t};\n\n\tif (diff === 0) {\n\t\th = 0;\n\t\ts = 0;\n\t} else {\n\t\ts = diff / v;\n\t\trdif = diffc(r);\n\t\tgdif = diffc(g);\n\t\tbdif = diffc(b);\n\n\t\tif (r === v) {\n\t\t\th = bdif - gdif;\n\t\t} else if (g === v) {\n\t\t\th = (1 / 3) + rdif - bdif;\n\t\t} else if (b === v) {\n\t\t\th = (2 / 3) + gdif - rdif;\n\t\t}\n\n\t\tif (h < 0) {\n\t\t\th += 1;\n\t\t} else if (h > 1) {\n\t\t\th -= 1;\n\t\t}\n\t}\n\n\treturn [\n\t\th * 360,\n\t\ts * 100,\n\t\tv * 100\n\t];\n};\n\nconvert.rgb.hwb = function (rgb) {\n\tconst r = rgb[0];\n\tconst g = rgb[1];\n\tlet b = rgb[2];\n\tconst h = convert.rgb.hsl(rgb)[0];\n\tconst w = 1 / 255 * Math.min(r, Math.min(g, b));\n\n\tb = 1 - 1 / 255 * Math.max(r, Math.max(g, b));\n\n\treturn [h, w * 100, b * 100];\n};\n\nconvert.rgb.cmyk = function (rgb) {\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\n\tconst k = Math.min(1 - r, 1 - g, 1 - b);\n\tconst c = (1 - r - k) / (1 - k) || 0;\n\tconst m = (1 - g - k) / (1 - k) || 0;\n\tconst y = (1 - b - k) / (1 - k) || 0;\n\n\treturn [c * 100, m * 100, y * 100, k * 100];\n};\n\nfunction comparativeDistance(x, y) {\n\t/*\n\t\tSee https://en.m.wikipedia.org/wiki/Euclidean_distance#Squared_Euclidean_distance\n\t*/\n\treturn (\n\t\t((x[0] - y[0]) ** 2) +\n\t\t((x[1] - y[1]) ** 2) +\n\t\t((x[2] - y[2]) ** 2)\n\t);\n}\n\nconvert.rgb.keyword = function (rgb) {\n\tconst reversed = reverseKeywords[rgb];\n\tif (reversed) {\n\t\treturn reversed;\n\t}\n\n\tlet currentClosestDistance = Infinity;\n\tlet currentClosestKeyword;\n\n\tfor (const keyword of Object.keys(cssKeywords)) {\n\t\tconst value = cssKeywords[keyword];\n\n\t\t// Compute comparative distance\n\t\tconst distance = comparativeDistance(rgb, value);\n\n\t\t// Check if its less, if so set as closest\n\t\tif (distance < currentClosestDistance) {\n\t\t\tcurrentClosestDistance = distance;\n\t\t\tcurrentClosestKeyword = keyword;\n\t\t}\n\t}\n\n\treturn currentClosestKeyword;\n};\n\nconvert.keyword.rgb = function (keyword) {\n\treturn cssKeywords[keyword];\n};\n\nconvert.rgb.xyz = function (rgb) {\n\tlet r = rgb[0] / 255;\n\tlet g = rgb[1] / 255;\n\tlet b = rgb[2] / 255;\n\n\t// Assume sRGB\n\tr = r > 0.04045 ? (((r + 0.055) / 1.055) ** 2.4) : (r / 12.92);\n\tg = g > 0.04045 ? (((g + 0.055) / 1.055) ** 2.4) : (g / 12.92);\n\tb = b > 0.04045 ? (((b + 0.055) / 1.055) ** 2.4) : (b / 12.92);\n\n\tconst x = (r * 0.4124) + (g * 0.3576) + (b * 0.1805);\n\tconst y = (r * 0.2126) + (g * 0.7152) + (b * 0.0722);\n\tconst z = (r * 0.0193) + (g * 0.1192) + (b * 0.9505);\n\n\treturn [x * 100, y * 100, z * 100];\n};\n\nconvert.rgb.lab = function (rgb) {\n\tconst xyz = convert.rgb.xyz(rgb);\n\tlet x = xyz[0];\n\tlet y = xyz[1];\n\tlet z = xyz[2];\n\n\tx /= 95.047;\n\ty /= 100;\n\tz /= 108.883;\n\n\tx = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116);\n\ty = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116);\n\tz = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116);\n\n\tconst l = (116 * y) - 16;\n\tconst a = 500 * (x - y);\n\tconst b = 200 * (y - z);\n\n\treturn [l, a, b];\n};\n\nconvert.hsl.rgb = function (hsl) {\n\tconst h = hsl[0] / 360;\n\tconst s = hsl[1] / 100;\n\tconst l = hsl[2] / 100;\n\tlet t2;\n\tlet t3;\n\tlet val;\n\n\tif (s === 0) {\n\t\tval = l * 255;\n\t\treturn [val, val, val];\n\t}\n\n\tif (l < 0.5) {\n\t\tt2 = l * (1 + s);\n\t} else {\n\t\tt2 = l + s - l * s;\n\t}\n\n\tconst t1 = 2 * l - t2;\n\n\tconst rgb = [0, 0, 0];\n\tfor (let i = 0; i < 3; i++) {\n\t\tt3 = h + 1 / 3 * -(i - 1);\n\t\tif (t3 < 0) {\n\t\t\tt3++;\n\t\t}\n\n\t\tif (t3 > 1) {\n\t\t\tt3--;\n\t\t}\n\n\t\tif (6 * t3 < 1) {\n\t\t\tval = t1 + (t2 - t1) * 6 * t3;\n\t\t} else if (2 * t3 < 1) {\n\t\t\tval = t2;\n\t\t} else if (3 * t3 < 2) {\n\t\t\tval = t1 + (t2 - t1) * (2 / 3 - t3) * 6;\n\t\t} else {\n\t\t\tval = t1;\n\t\t}\n\n\t\trgb[i] = val * 255;\n\t}\n\n\treturn rgb;\n};\n\nconvert.hsl.hsv = function (hsl) {\n\tconst h = hsl[0];\n\tlet s = hsl[1] / 100;\n\tlet l = hsl[2] / 100;\n\tlet smin = s;\n\tconst lmin = Math.max(l, 0.01);\n\n\tl *= 2;\n\ts *= (l <= 1) ? l : 2 - l;\n\tsmin *= lmin <= 1 ? lmin : 2 - lmin;\n\tconst v = (l + s) / 2;\n\tconst sv = l === 0 ? (2 * smin) / (lmin + smin) : (2 * s) / (l + s);\n\n\treturn [h, sv * 100, v * 100];\n};\n\nconvert.hsv.rgb = function (hsv) {\n\tconst h = hsv[0] / 60;\n\tconst s = hsv[1] / 100;\n\tlet v = hsv[2] / 100;\n\tconst hi = Math.floor(h) % 6;\n\n\tconst f = h - Math.floor(h);\n\tconst p = 255 * v * (1 - s);\n\tconst q = 255 * v * (1 - (s * f));\n\tconst t = 255 * v * (1 - (s * (1 - f)));\n\tv *= 255;\n\n\tswitch (hi) {\n\t\tcase 0:\n\t\t\treturn [v, t, p];\n\t\tcase 1:\n\t\t\treturn [q, v, p];\n\t\tcase 2:\n\t\t\treturn [p, v, t];\n\t\tcase 3:\n\t\t\treturn [p, q, v];\n\t\tcase 4:\n\t\t\treturn [t, p, v];\n\t\tcase 5:\n\t\t\treturn [v, p, q];\n\t}\n};\n\nconvert.hsv.hsl = function (hsv) {\n\tconst h = hsv[0];\n\tconst s = hsv[1] / 100;\n\tconst v = hsv[2] / 100;\n\tconst vmin = Math.max(v, 0.01);\n\tlet sl;\n\tlet l;\n\n\tl = (2 - s) * v;\n\tconst lmin = (2 - s) * vmin;\n\tsl = s * vmin;\n\tsl /= (lmin <= 1) ? lmin : 2 - lmin;\n\tsl = sl || 0;\n\tl /= 2;\n\n\treturn [h, sl * 100, l * 100];\n};\n\n// http://dev.w3.org/csswg/css-color/#hwb-to-rgb\nconvert.hwb.rgb = function (hwb) {\n\tconst h = hwb[0] / 360;\n\tlet wh = hwb[1] / 100;\n\tlet bl = hwb[2] / 100;\n\tconst ratio = wh + bl;\n\tlet f;\n\n\t// Wh + bl cant be > 1\n\tif (ratio > 1) {\n\t\twh /= ratio;\n\t\tbl /= ratio;\n\t}\n\n\tconst i = Math.floor(6 * h);\n\tconst v = 1 - bl;\n\tf = 6 * h - i;\n\n\tif ((i & 0x01) !== 0) {\n\t\tf = 1 - f;\n\t}\n\n\tconst n = wh + f * (v - wh); // Linear interpolation\n\n\tlet r;\n\tlet g;\n\tlet b;\n\t/* eslint-disable max-statements-per-line,no-multi-spaces */\n\tswitch (i) {\n\t\tdefault:\n\t\tcase 6:\n\t\tcase 0: r = v; g = n; b = wh; break;\n\t\tcase 1: r = n; g = v; b = wh; break;\n\t\tcase 2: r = wh; g = v; b = n; break;\n\t\tcase 3: r = wh; g = n; b = v; break;\n\t\tcase 4: r = n; g = wh; b = v; break;\n\t\tcase 5: r = v; g = wh; b = n; break;\n\t}\n\t/* eslint-enable max-statements-per-line,no-multi-spaces */\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.cmyk.rgb = function (cmyk) {\n\tconst c = cmyk[0] / 100;\n\tconst m = cmyk[1] / 100;\n\tconst y = cmyk[2] / 100;\n\tconst k = cmyk[3] / 100;\n\n\tconst r = 1 - Math.min(1, c * (1 - k) + k);\n\tconst g = 1 - Math.min(1, m * (1 - k) + k);\n\tconst b = 1 - Math.min(1, y * (1 - k) + k);\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.xyz.rgb = function (xyz) {\n\tconst x = xyz[0] / 100;\n\tconst y = xyz[1] / 100;\n\tconst z = xyz[2] / 100;\n\tlet r;\n\tlet g;\n\tlet b;\n\n\tr = (x * 3.2406) + (y * -1.5372) + (z * -0.4986);\n\tg = (x * -0.9689) + (y * 1.8758) + (z * 0.0415);\n\tb = (x * 0.0557) + (y * -0.2040) + (z * 1.0570);\n\n\t// Assume sRGB\n\tr = r > 0.0031308\n\t\t? ((1.055 * (r ** (1.0 / 2.4))) - 0.055)\n\t\t: r * 12.92;\n\n\tg = g > 0.0031308\n\t\t? ((1.055 * (g ** (1.0 / 2.4))) - 0.055)\n\t\t: g * 12.92;\n\n\tb = b > 0.0031308\n\t\t? ((1.055 * (b ** (1.0 / 2.4))) - 0.055)\n\t\t: b * 12.92;\n\n\tr = Math.min(Math.max(0, r), 1);\n\tg = Math.min(Math.max(0, g), 1);\n\tb = Math.min(Math.max(0, b), 1);\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.xyz.lab = function (xyz) {\n\tlet x = xyz[0];\n\tlet y = xyz[1];\n\tlet z = xyz[2];\n\n\tx /= 95.047;\n\ty /= 100;\n\tz /= 108.883;\n\n\tx = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116);\n\ty = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116);\n\tz = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116);\n\n\tconst l = (116 * y) - 16;\n\tconst a = 500 * (x - y);\n\tconst b = 200 * (y - z);\n\n\treturn [l, a, b];\n};\n\nconvert.lab.xyz = function (lab) {\n\tconst l = lab[0];\n\tconst a = lab[1];\n\tconst b = lab[2];\n\tlet x;\n\tlet y;\n\tlet z;\n\n\ty = (l + 16) / 116;\n\tx = a / 500 + y;\n\tz = y - b / 200;\n\n\tconst y2 = y ** 3;\n\tconst x2 = x ** 3;\n\tconst z2 = z ** 3;\n\ty = y2 > 0.008856 ? y2 : (y - 16 / 116) / 7.787;\n\tx = x2 > 0.008856 ? x2 : (x - 16 / 116) / 7.787;\n\tz = z2 > 0.008856 ? z2 : (z - 16 / 116) / 7.787;\n\n\tx *= 95.047;\n\ty *= 100;\n\tz *= 108.883;\n\n\treturn [x, y, z];\n};\n\nconvert.lab.lch = function (lab) {\n\tconst l = lab[0];\n\tconst a = lab[1];\n\tconst b = lab[2];\n\tlet h;\n\n\tconst hr = Math.atan2(b, a);\n\th = hr * 360 / 2 / Math.PI;\n\n\tif (h < 0) {\n\t\th += 360;\n\t}\n\n\tconst c = Math.sqrt(a * a + b * b);\n\n\treturn [l, c, h];\n};\n\nconvert.lch.lab = function (lch) {\n\tconst l = lch[0];\n\tconst c = lch[1];\n\tconst h = lch[2];\n\n\tconst hr = h / 360 * 2 * Math.PI;\n\tconst a = c * Math.cos(hr);\n\tconst b = c * Math.sin(hr);\n\n\treturn [l, a, b];\n};\n\nconvert.rgb.ansi16 = function (args, saturation = null) {\n\tconst [r, g, b] = args;\n\tlet value = saturation === null ? convert.rgb.hsv(args)[2] : saturation; // Hsv -> ansi16 optimization\n\n\tvalue = Math.round(value / 50);\n\n\tif (value === 0) {\n\t\treturn 30;\n\t}\n\n\tlet ansi = 30\n\t\t+ ((Math.round(b / 255) << 2)\n\t\t| (Math.round(g / 255) << 1)\n\t\t| Math.round(r / 255));\n\n\tif (value === 2) {\n\t\tansi += 60;\n\t}\n\n\treturn ansi;\n};\n\nconvert.hsv.ansi16 = function (args) {\n\t// Optimization here; we already know the value and don't need to get\n\t// it converted for us.\n\treturn convert.rgb.ansi16(convert.hsv.rgb(args), args[2]);\n};\n\nconvert.rgb.ansi256 = function (args) {\n\tconst r = args[0];\n\tconst g = args[1];\n\tconst b = args[2];\n\n\t// We use the extended greyscale palette here, with the exception of\n\t// black and white. normal palette only has 4 greyscale shades.\n\tif (r === g && g === b) {\n\t\tif (r < 8) {\n\t\t\treturn 16;\n\t\t}\n\n\t\tif (r > 248) {\n\t\t\treturn 231;\n\t\t}\n\n\t\treturn Math.round(((r - 8) / 247) * 24) + 232;\n\t}\n\n\tconst ansi = 16\n\t\t+ (36 * Math.round(r / 255 * 5))\n\t\t+ (6 * Math.round(g / 255 * 5))\n\t\t+ Math.round(b / 255 * 5);\n\n\treturn ansi;\n};\n\nconvert.ansi16.rgb = function (args) {\n\tlet color = args % 10;\n\n\t// Handle greyscale\n\tif (color === 0 || color === 7) {\n\t\tif (args > 50) {\n\t\t\tcolor += 3.5;\n\t\t}\n\n\t\tcolor = color / 10.5 * 255;\n\n\t\treturn [color, color, color];\n\t}\n\n\tconst mult = (~~(args > 50) + 1) * 0.5;\n\tconst r = ((color & 1) * mult) * 255;\n\tconst g = (((color >> 1) & 1) * mult) * 255;\n\tconst b = (((color >> 2) & 1) * mult) * 255;\n\n\treturn [r, g, b];\n};\n\nconvert.ansi256.rgb = function (args) {\n\t// Handle greyscale\n\tif (args >= 232) {\n\t\tconst c = (args - 232) * 10 + 8;\n\t\treturn [c, c, c];\n\t}\n\n\targs -= 16;\n\n\tlet rem;\n\tconst r = Math.floor(args / 36) / 5 * 255;\n\tconst g = Math.floor((rem = args % 36) / 6) / 5 * 255;\n\tconst b = (rem % 6) / 5 * 255;\n\n\treturn [r, g, b];\n};\n\nconvert.rgb.hex = function (args) {\n\tconst integer = ((Math.round(args[0]) & 0xFF) << 16)\n\t\t+ ((Math.round(args[1]) & 0xFF) << 8)\n\t\t+ (Math.round(args[2]) & 0xFF);\n\n\tconst string = integer.toString(16).toUpperCase();\n\treturn '000000'.substring(string.length) + string;\n};\n\nconvert.hex.rgb = function (args) {\n\tconst match = args.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);\n\tif (!match) {\n\t\treturn [0, 0, 0];\n\t}\n\n\tlet colorString = match[0];\n\n\tif (match[0].length === 3) {\n\t\tcolorString = colorString.split('').map(char => {\n\t\t\treturn char + char;\n\t\t}).join('');\n\t}\n\n\tconst integer = parseInt(colorString, 16);\n\tconst r = (integer >> 16) & 0xFF;\n\tconst g = (integer >> 8) & 0xFF;\n\tconst b = integer & 0xFF;\n\n\treturn [r, g, b];\n};\n\nconvert.rgb.hcg = function (rgb) {\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\tconst max = Math.max(Math.max(r, g), b);\n\tconst min = Math.min(Math.min(r, g), b);\n\tconst chroma = (max - min);\n\tlet grayscale;\n\tlet hue;\n\n\tif (chroma < 1) {\n\t\tgrayscale = min / (1 - chroma);\n\t} else {\n\t\tgrayscale = 0;\n\t}\n\n\tif (chroma <= 0) {\n\t\thue = 0;\n\t} else\n\tif (max === r) {\n\t\thue = ((g - b) / chroma) % 6;\n\t} else\n\tif (max === g) {\n\t\thue = 2 + (b - r) / chroma;\n\t} else {\n\t\thue = 4 + (r - g) / chroma;\n\t}\n\n\thue /= 6;\n\thue %= 1;\n\n\treturn [hue * 360, chroma * 100, grayscale * 100];\n};\n\nconvert.hsl.hcg = function (hsl) {\n\tconst s = hsl[1] / 100;\n\tconst l = hsl[2] / 100;\n\n\tconst c = l < 0.5 ? (2.0 * s * l) : (2.0 * s * (1.0 - l));\n\n\tlet f = 0;\n\tif (c < 1.0) {\n\t\tf = (l - 0.5 * c) / (1.0 - c);\n\t}\n\n\treturn [hsl[0], c * 100, f * 100];\n};\n\nconvert.hsv.hcg = function (hsv) {\n\tconst s = hsv[1] / 100;\n\tconst v = hsv[2] / 100;\n\n\tconst c = s * v;\n\tlet f = 0;\n\n\tif (c < 1.0) {\n\t\tf = (v - c) / (1 - c);\n\t}\n\n\treturn [hsv[0], c * 100, f * 100];\n};\n\nconvert.hcg.rgb = function (hcg) {\n\tconst h = hcg[0] / 360;\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\n\tif (c === 0.0) {\n\t\treturn [g * 255, g * 255, g * 255];\n\t}\n\n\tconst pure = [0, 0, 0];\n\tconst hi = (h % 1) * 6;\n\tconst v = hi % 1;\n\tconst w = 1 - v;\n\tlet mg = 0;\n\n\t/* eslint-disable max-statements-per-line */\n\tswitch (Math.floor(hi)) {\n\t\tcase 0:\n\t\t\tpure[0] = 1; pure[1] = v; pure[2] = 0; break;\n\t\tcase 1:\n\t\t\tpure[0] = w; pure[1] = 1; pure[2] = 0; break;\n\t\tcase 2:\n\t\t\tpure[0] = 0; pure[1] = 1; pure[2] = v; break;\n\t\tcase 3:\n\t\t\tpure[0] = 0; pure[1] = w; pure[2] = 1; break;\n\t\tcase 4:\n\t\t\tpure[0] = v; pure[1] = 0; pure[2] = 1; break;\n\t\tdefault:\n\t\t\tpure[0] = 1; pure[1] = 0; pure[2] = w;\n\t}\n\t/* eslint-enable max-statements-per-line */\n\n\tmg = (1.0 - c) * g;\n\n\treturn [\n\t\t(c * pure[0] + mg) * 255,\n\t\t(c * pure[1] + mg) * 255,\n\t\t(c * pure[2] + mg) * 255\n\t];\n};\n\nconvert.hcg.hsv = function (hcg) {\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\n\tconst v = c + g * (1.0 - c);\n\tlet f = 0;\n\n\tif (v > 0.0) {\n\t\tf = c / v;\n\t}\n\n\treturn [hcg[0], f * 100, v * 100];\n};\n\nconvert.hcg.hsl = function (hcg) {\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\n\tconst l = g * (1.0 - c) + 0.5 * c;\n\tlet s = 0;\n\n\tif (l > 0.0 && l < 0.5) {\n\t\ts = c / (2 * l);\n\t} else\n\tif (l >= 0.5 && l < 1.0) {\n\t\ts = c / (2 * (1 - l));\n\t}\n\n\treturn [hcg[0], s * 100, l * 100];\n};\n\nconvert.hcg.hwb = function (hcg) {\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\tconst v = c + g * (1.0 - c);\n\treturn [hcg[0], (v - c) * 100, (1 - v) * 100];\n};\n\nconvert.hwb.hcg = function (hwb) {\n\tconst w = hwb[1] / 100;\n\tconst b = hwb[2] / 100;\n\tconst v = 1 - b;\n\tconst c = v - w;\n\tlet g = 0;\n\n\tif (c < 1) {\n\t\tg = (v - c) / (1 - c);\n\t}\n\n\treturn [hwb[0], c * 100, g * 100];\n};\n\nconvert.apple.rgb = function (apple) {\n\treturn [(apple[0] / 65535) * 255, (apple[1] / 65535) * 255, (apple[2] / 65535) * 255];\n};\n\nconvert.rgb.apple = function (rgb) {\n\treturn [(rgb[0] / 255) * 65535, (rgb[1] / 255) * 65535, (rgb[2] / 255) * 65535];\n};\n\nconvert.gray.rgb = function (args) {\n\treturn [args[0] / 100 * 255, args[0] / 100 * 255, args[0] / 100 * 255];\n};\n\nconvert.gray.hsl = function (args) {\n\treturn [0, 0, args[0]];\n};\n\nconvert.gray.hsv = convert.gray.hsl;\n\nconvert.gray.hwb = function (gray) {\n\treturn [0, 100, gray[0]];\n};\n\nconvert.gray.cmyk = function (gray) {\n\treturn [0, 0, 0, gray[0]];\n};\n\nconvert.gray.lab = function (gray) {\n\treturn [gray[0], 0, 0];\n};\n\nconvert.gray.hex = function (gray) {\n\tconst val = Math.round(gray[0] / 100 * 255) & 0xFF;\n\tconst integer = (val << 16) + (val << 8) + val;\n\n\tconst string = integer.toString(16).toUpperCase();\n\treturn '000000'.substring(string.length) + string;\n};\n\nconvert.rgb.gray = function (rgb) {\n\tconst val = (rgb[0] + rgb[1] + rgb[2]) / 3;\n\treturn [val / 255 * 100];\n};\n","const conversions = require('./conversions');\n\n/*\n\tThis function routes a model to all other models.\n\n\tall functions that are routed have a property `.conversion` attached\n\tto the returned synthetic function. This property is an array\n\tof strings, each with the steps in between the 'from' and 'to'\n\tcolor models (inclusive).\n\n\tconversions that are not possible simply are not included.\n*/\n\nfunction buildGraph() {\n\tconst graph = {};\n\t// https://jsperf.com/object-keys-vs-for-in-with-closure/3\n\tconst models = Object.keys(conversions);\n\n\tfor (let len = models.length, i = 0; i < len; i++) {\n\t\tgraph[models[i]] = {\n\t\t\t// http://jsperf.com/1-vs-infinity\n\t\t\t// micro-opt, but this is simple.\n\t\t\tdistance: -1,\n\t\t\tparent: null\n\t\t};\n\t}\n\n\treturn graph;\n}\n\n// https://en.wikipedia.org/wiki/Breadth-first_search\nfunction deriveBFS(fromModel) {\n\tconst graph = buildGraph();\n\tconst queue = [fromModel]; // Unshift -> queue -> pop\n\n\tgraph[fromModel].distance = 0;\n\n\twhile (queue.length) {\n\t\tconst current = queue.pop();\n\t\tconst adjacents = Object.keys(conversions[current]);\n\n\t\tfor (let len = adjacents.length, i = 0; i < len; i++) {\n\t\t\tconst adjacent = adjacents[i];\n\t\t\tconst node = graph[adjacent];\n\n\t\t\tif (node.distance === -1) {\n\t\t\t\tnode.distance = graph[current].distance + 1;\n\t\t\t\tnode.parent = current;\n\t\t\t\tqueue.unshift(adjacent);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn graph;\n}\n\nfunction link(from, to) {\n\treturn function (args) {\n\t\treturn to(from(args));\n\t};\n}\n\nfunction wrapConversion(toModel, graph) {\n\tconst path = [graph[toModel].parent, toModel];\n\tlet fn = conversions[graph[toModel].parent][toModel];\n\n\tlet cur = graph[toModel].parent;\n\twhile (graph[cur].parent) {\n\t\tpath.unshift(graph[cur].parent);\n\t\tfn = link(conversions[graph[cur].parent][cur], fn);\n\t\tcur = graph[cur].parent;\n\t}\n\n\tfn.conversion = path;\n\treturn fn;\n}\n\nmodule.exports = function (fromModel) {\n\tconst graph = deriveBFS(fromModel);\n\tconst conversion = {};\n\n\tconst models = Object.keys(graph);\n\tfor (let len = models.length, i = 0; i < len; i++) {\n\t\tconst toModel = models[i];\n\t\tconst node = graph[toModel];\n\n\t\tif (node.parent === null) {\n\t\t\t// No possible conversion, or this node is the source model.\n\t\t\tcontinue;\n\t\t}\n\n\t\tconversion[toModel] = wrapConversion(toModel, graph);\n\t}\n\n\treturn conversion;\n};\n\n","const conversions = require('./conversions');\nconst route = require('./route');\n\nconst convert = {};\n\nconst models = Object.keys(conversions);\n\nfunction wrapRaw(fn) {\n\tconst wrappedFn = function (...args) {\n\t\tconst arg0 = args[0];\n\t\tif (arg0 === undefined || arg0 === null) {\n\t\t\treturn arg0;\n\t\t}\n\n\t\tif (arg0.length > 1) {\n\t\t\targs = arg0;\n\t\t}\n\n\t\treturn fn(args);\n\t};\n\n\t// Preserve .conversion property if there is one\n\tif ('conversion' in fn) {\n\t\twrappedFn.conversion = fn.conversion;\n\t}\n\n\treturn wrappedFn;\n}\n\nfunction wrapRounded(fn) {\n\tconst wrappedFn = function (...args) {\n\t\tconst arg0 = args[0];\n\n\t\tif (arg0 === undefined || arg0 === null) {\n\t\t\treturn arg0;\n\t\t}\n\n\t\tif (arg0.length > 1) {\n\t\t\targs = arg0;\n\t\t}\n\n\t\tconst result = fn(args);\n\n\t\t// We're assuming the result is an array here.\n\t\t// see notice in conversions.js; don't use box types\n\t\t// in conversion functions.\n\t\tif (typeof result === 'object') {\n\t\t\tfor (let len = result.length, i = 0; i < len; i++) {\n\t\t\t\tresult[i] = Math.round(result[i]);\n\t\t\t}\n\t\t}\n\n\t\treturn result;\n\t};\n\n\t// Preserve .conversion property if there is one\n\tif ('conversion' in fn) {\n\t\twrappedFn.conversion = fn.conversion;\n\t}\n\n\treturn wrappedFn;\n}\n\nmodels.forEach(fromModel => {\n\tconvert[fromModel] = {};\n\n\tObject.defineProperty(convert[fromModel], 'channels', {value: conversions[fromModel].channels});\n\tObject.defineProperty(convert[fromModel], 'labels', {value: conversions[fromModel].labels});\n\n\tconst routes = route(fromModel);\n\tconst routeModels = Object.keys(routes);\n\n\trouteModels.forEach(toModel => {\n\t\tconst fn = routes[toModel];\n\n\t\tconvert[fromModel][toModel] = wrapRounded(fn);\n\t\tconvert[fromModel][toModel].raw = wrapRaw(fn);\n\t});\n});\n\nmodule.exports = convert;\n","const colorString = require('color-string');\nconst convert = require('color-convert');\n\nconst skippedModels = [\n\t// To be honest, I don't really feel like keyword belongs in color convert, but eh.\n\t'keyword',\n\n\t// Gray conflicts with some method names, and has its own method defined.\n\t'gray',\n\n\t// Shouldn't really be in color-convert either...\n\t'hex',\n];\n\nconst hashedModelKeys = {};\nfor (const model of Object.keys(convert)) {\n\thashedModelKeys[[...convert[model].labels].sort().join('')] = model;\n}\n\nconst limiters = {};\n\nfunction Color(object, model) {\n\tif (!(this instanceof Color)) {\n\t\treturn new Color(object, model);\n\t}\n\n\tif (model && model in skippedModels) {\n\t\tmodel = null;\n\t}\n\n\tif (model && !(model in convert)) {\n\t\tthrow new Error('Unknown model: ' + model);\n\t}\n\n\tlet i;\n\tlet channels;\n\n\tif (object == null) { // eslint-disable-line no-eq-null,eqeqeq\n\t\tthis.model = 'rgb';\n\t\tthis.color = [0, 0, 0];\n\t\tthis.valpha = 1;\n\t} else if (object instanceof Color) {\n\t\tthis.model = object.model;\n\t\tthis.color = [...object.color];\n\t\tthis.valpha = object.valpha;\n\t} else if (typeof object === 'string') {\n\t\tconst result = colorString.get(object);\n\t\tif (result === null) {\n\t\t\tthrow new Error('Unable to parse color from string: ' + object);\n\t\t}\n\n\t\tthis.model = result.model;\n\t\tchannels = convert[this.model].channels;\n\t\tthis.color = result.value.slice(0, channels);\n\t\tthis.valpha = typeof result.value[channels] === 'number' ? result.value[channels] : 1;\n\t} else if (object.length > 0) {\n\t\tthis.model = model || 'rgb';\n\t\tchannels = convert[this.model].channels;\n\t\tconst newArray = Array.prototype.slice.call(object, 0, channels);\n\t\tthis.color = zeroArray(newArray, channels);\n\t\tthis.valpha = typeof object[channels] === 'number' ? object[channels] : 1;\n\t} else if (typeof object === 'number') {\n\t\t// This is always RGB - can be converted later on.\n\t\tthis.model = 'rgb';\n\t\tthis.color = [\n\t\t\t(object >> 16) & 0xFF,\n\t\t\t(object >> 8) & 0xFF,\n\t\t\tobject & 0xFF,\n\t\t];\n\t\tthis.valpha = 1;\n\t} else {\n\t\tthis.valpha = 1;\n\n\t\tconst keys = Object.keys(object);\n\t\tif ('alpha' in object) {\n\t\t\tkeys.splice(keys.indexOf('alpha'), 1);\n\t\t\tthis.valpha = typeof object.alpha === 'number' ? object.alpha : 0;\n\t\t}\n\n\t\tconst hashedKeys = keys.sort().join('');\n\t\tif (!(hashedKeys in hashedModelKeys)) {\n\t\t\tthrow new Error('Unable to parse color from object: ' + JSON.stringify(object));\n\t\t}\n\n\t\tthis.model = hashedModelKeys[hashedKeys];\n\n\t\tconst {labels} = convert[this.model];\n\t\tconst color = [];\n\t\tfor (i = 0; i < labels.length; i++) {\n\t\t\tcolor.push(object[labels[i]]);\n\t\t}\n\n\t\tthis.color = zeroArray(color);\n\t}\n\n\t// Perform limitations (clamping, etc.)\n\tif (limiters[this.model]) {\n\t\tchannels = convert[this.model].channels;\n\t\tfor (i = 0; i < channels; i++) {\n\t\t\tconst limit = limiters[this.model][i];\n\t\t\tif (limit) {\n\t\t\t\tthis.color[i] = limit(this.color[i]);\n\t\t\t}\n\t\t}\n\t}\n\n\tthis.valpha = Math.max(0, Math.min(1, this.valpha));\n\n\tif (Object.freeze) {\n\t\tObject.freeze(this);\n\t}\n}\n\nColor.prototype = {\n\ttoString() {\n\t\treturn this.string();\n\t},\n\n\ttoJSON() {\n\t\treturn this[this.model]();\n\t},\n\n\tstring(places) {\n\t\tlet self = this.model in colorString.to ? this : this.rgb();\n\t\tself = self.round(typeof places === 'number' ? places : 1);\n\t\tconst args = self.valpha === 1 ? self.color : [...self.color, this.valpha];\n\t\treturn colorString.to[self.model](args);\n\t},\n\n\tpercentString(places) {\n\t\tconst self = this.rgb().round(typeof places === 'number' ? places : 1);\n\t\tconst args = self.valpha === 1 ? self.color : [...self.color, this.valpha];\n\t\treturn colorString.to.rgb.percent(args);\n\t},\n\n\tarray() {\n\t\treturn this.valpha === 1 ? [...this.color] : [...this.color, this.valpha];\n\t},\n\n\tobject() {\n\t\tconst result = {};\n\t\tconst {channels} = convert[this.model];\n\t\tconst {labels} = convert[this.model];\n\n\t\tfor (let i = 0; i < channels; i++) {\n\t\t\tresult[labels[i]] = this.color[i];\n\t\t}\n\n\t\tif (this.valpha !== 1) {\n\t\t\tresult.alpha = this.valpha;\n\t\t}\n\n\t\treturn result;\n\t},\n\n\tunitArray() {\n\t\tconst rgb = this.rgb().color;\n\t\trgb[0] /= 255;\n\t\trgb[1] /= 255;\n\t\trgb[2] /= 255;\n\n\t\tif (this.valpha !== 1) {\n\t\t\trgb.push(this.valpha);\n\t\t}\n\n\t\treturn rgb;\n\t},\n\n\tunitObject() {\n\t\tconst rgb = this.rgb().object();\n\t\trgb.r /= 255;\n\t\trgb.g /= 255;\n\t\trgb.b /= 255;\n\n\t\tif (this.valpha !== 1) {\n\t\t\trgb.alpha = this.valpha;\n\t\t}\n\n\t\treturn rgb;\n\t},\n\n\tround(places) {\n\t\tplaces = Math.max(places || 0, 0);\n\t\treturn new Color([...this.color.map(roundToPlace(places)), this.valpha], this.model);\n\t},\n\n\talpha(value) {\n\t\tif (value !== undefined) {\n\t\t\treturn new Color([...this.color, Math.max(0, Math.min(1, value))], this.model);\n\t\t}\n\n\t\treturn this.valpha;\n\t},\n\n\t// Rgb\n\tred: getset('rgb', 0, maxfn(255)),\n\tgreen: getset('rgb', 1, maxfn(255)),\n\tblue: getset('rgb', 2, maxfn(255)),\n\n\thue: getset(['hsl', 'hsv', 'hsl', 'hwb', 'hcg'], 0, value => ((value % 360) + 360) % 360),\n\n\tsaturationl: getset('hsl', 1, maxfn(100)),\n\tlightness: getset('hsl', 2, maxfn(100)),\n\n\tsaturationv: getset('hsv', 1, maxfn(100)),\n\tvalue: getset('hsv', 2, maxfn(100)),\n\n\tchroma: getset('hcg', 1, maxfn(100)),\n\tgray: getset('hcg', 2, maxfn(100)),\n\n\twhite: getset('hwb', 1, maxfn(100)),\n\twblack: getset('hwb', 2, maxfn(100)),\n\n\tcyan: getset('cmyk', 0, maxfn(100)),\n\tmagenta: getset('cmyk', 1, maxfn(100)),\n\tyellow: getset('cmyk', 2, maxfn(100)),\n\tblack: getset('cmyk', 3, maxfn(100)),\n\n\tx: getset('xyz', 0, maxfn(95.047)),\n\ty: getset('xyz', 1, maxfn(100)),\n\tz: getset('xyz', 2, maxfn(108.833)),\n\n\tl: getset('lab', 0, maxfn(100)),\n\ta: getset('lab', 1),\n\tb: getset('lab', 2),\n\n\tkeyword(value) {\n\t\tif (value !== undefined) {\n\t\t\treturn new Color(value);\n\t\t}\n\n\t\treturn convert[this.model].keyword(this.color);\n\t},\n\n\thex(value) {\n\t\tif (value !== undefined) {\n\t\t\treturn new Color(value);\n\t\t}\n\n\t\treturn colorString.to.hex(this.rgb().round().color);\n\t},\n\n\thexa(value) {\n\t\tif (value !== undefined) {\n\t\t\treturn new Color(value);\n\t\t}\n\n\t\tconst rgbArray = this.rgb().round().color;\n\n\t\tlet alphaHex = Math.round(this.valpha * 255).toString(16).toUpperCase();\n\t\tif (alphaHex.length === 1) {\n\t\t\talphaHex = '0' + alphaHex;\n\t\t}\n\n\t\treturn colorString.to.hex(rgbArray) + alphaHex;\n\t},\n\n\trgbNumber() {\n\t\tconst rgb = this.rgb().color;\n\t\treturn ((rgb[0] & 0xFF) << 16) | ((rgb[1] & 0xFF) << 8) | (rgb[2] & 0xFF);\n\t},\n\n\tluminosity() {\n\t\t// http://www.w3.org/TR/WCAG20/#relativeluminancedef\n\t\tconst rgb = this.rgb().color;\n\n\t\tconst lum = [];\n\t\tfor (const [i, element] of rgb.entries()) {\n\t\t\tconst chan = element / 255;\n\t\t\tlum[i] = (chan <= 0.04045) ? chan / 12.92 : ((chan + 0.055) / 1.055) ** 2.4;\n\t\t}\n\n\t\treturn 0.2126 * lum[0] + 0.7152 * lum[1] + 0.0722 * lum[2];\n\t},\n\n\tcontrast(color2) {\n\t\t// http://www.w3.org/TR/WCAG20/#contrast-ratiodef\n\t\tconst lum1 = this.luminosity();\n\t\tconst lum2 = color2.luminosity();\n\n\t\tif (lum1 > lum2) {\n\t\t\treturn (lum1 + 0.05) / (lum2 + 0.05);\n\t\t}\n\n\t\treturn (lum2 + 0.05) / (lum1 + 0.05);\n\t},\n\n\tlevel(color2) {\n\t\t// https://www.w3.org/TR/WCAG/#contrast-enhanced\n\t\tconst contrastRatio = this.contrast(color2);\n\t\tif (contrastRatio >= 7) {\n\t\t\treturn 'AAA';\n\t\t}\n\n\t\treturn (contrastRatio >= 4.5) ? 'AA' : '';\n\t},\n\n\tisDark() {\n\t\t// YIQ equation from http://24ways.org/2010/calculating-color-contrast\n\t\tconst rgb = this.rgb().color;\n\t\tconst yiq = (rgb[0] * 2126 + rgb[1] * 7152 + rgb[2] * 722) / 10000;\n\t\treturn yiq < 128;\n\t},\n\n\tisLight() {\n\t\treturn !this.isDark();\n\t},\n\n\tnegate() {\n\t\tconst rgb = this.rgb();\n\t\tfor (let i = 0; i < 3; i++) {\n\t\t\trgb.color[i] = 255 - rgb.color[i];\n\t\t}\n\n\t\treturn rgb;\n\t},\n\n\tlighten(ratio) {\n\t\tconst hsl = this.hsl();\n\t\thsl.color[2] += hsl.color[2] * ratio;\n\t\treturn hsl;\n\t},\n\n\tdarken(ratio) {\n\t\tconst hsl = this.hsl();\n\t\thsl.color[2] -= hsl.color[2] * ratio;\n\t\treturn hsl;\n\t},\n\n\tsaturate(ratio) {\n\t\tconst hsl = this.hsl();\n\t\thsl.color[1] += hsl.color[1] * ratio;\n\t\treturn hsl;\n\t},\n\n\tdesaturate(ratio) {\n\t\tconst hsl = this.hsl();\n\t\thsl.color[1] -= hsl.color[1] * ratio;\n\t\treturn hsl;\n\t},\n\n\twhiten(ratio) {\n\t\tconst hwb = this.hwb();\n\t\thwb.color[1] += hwb.color[1] * ratio;\n\t\treturn hwb;\n\t},\n\n\tblacken(ratio) {\n\t\tconst hwb = this.hwb();\n\t\thwb.color[2] += hwb.color[2] * ratio;\n\t\treturn hwb;\n\t},\n\n\tgrayscale() {\n\t\t// http://en.wikipedia.org/wiki/Grayscale#Converting_color_to_grayscale\n\t\tconst rgb = this.rgb().color;\n\t\tconst value = rgb[0] * 0.3 + rgb[1] * 0.59 + rgb[2] * 0.11;\n\t\treturn Color.rgb(value, value, value);\n\t},\n\n\tfade(ratio) {\n\t\treturn this.alpha(this.valpha - (this.valpha * ratio));\n\t},\n\n\topaquer(ratio) {\n\t\treturn this.alpha(this.valpha + (this.valpha * ratio));\n\t},\n\n\trotate(degrees) {\n\t\tconst hsl = this.hsl();\n\t\tlet hue = hsl.color[0];\n\t\thue = (hue + degrees) % 360;\n\t\thue = hue < 0 ? 360 + hue : hue;\n\t\thsl.color[0] = hue;\n\t\treturn hsl;\n\t},\n\n\tmix(mixinColor, weight) {\n\t\t// Ported from sass implementation in C\n\t\t// https://github.com/sass/libsass/blob/0e6b4a2850092356aa3ece07c6b249f0221caced/functions.cpp#L209\n\t\tif (!mixinColor || !mixinColor.rgb) {\n\t\t\tthrow new Error('Argument to \"mix\" was not a Color instance, but rather an instance of ' + typeof mixinColor);\n\t\t}\n\n\t\tconst color1 = mixinColor.rgb();\n\t\tconst color2 = this.rgb();\n\t\tconst p = weight === undefined ? 0.5 : weight;\n\n\t\tconst w = 2 * p - 1;\n\t\tconst a = color1.alpha() - color2.alpha();\n\n\t\tconst w1 = (((w * a === -1) ? w : (w + a) / (1 + w * a)) + 1) / 2;\n\t\tconst w2 = 1 - w1;\n\n\t\treturn Color.rgb(\n\t\t\tw1 * color1.red() + w2 * color2.red(),\n\t\t\tw1 * color1.green() + w2 * color2.green(),\n\t\t\tw1 * color1.blue() + w2 * color2.blue(),\n\t\t\tcolor1.alpha() * p + color2.alpha() * (1 - p));\n\t},\n};\n\n// Model conversion methods and static constructors\nfor (const model of Object.keys(convert)) {\n\tif (skippedModels.includes(model)) {\n\t\tcontinue;\n\t}\n\n\tconst {channels} = convert[model];\n\n\t// Conversion methods\n\tColor.prototype[model] = function (...args) {\n\t\tif (this.model === model) {\n\t\t\treturn new Color(this);\n\t\t}\n\n\t\tif (args.length > 0) {\n\t\t\treturn new Color(args, model);\n\t\t}\n\n\t\treturn new Color([...assertArray(convert[this.model][model].raw(this.color)), this.valpha], model);\n\t};\n\n\t// 'static' construction methods\n\tColor[model] = function (...args) {\n\t\tlet color = args[0];\n\t\tif (typeof color === 'number') {\n\t\t\tcolor = zeroArray(args, channels);\n\t\t}\n\n\t\treturn new Color(color, model);\n\t};\n}\n\nfunction roundTo(number, places) {\n\treturn Number(number.toFixed(places));\n}\n\nfunction roundToPlace(places) {\n\treturn function (number) {\n\t\treturn roundTo(number, places);\n\t};\n}\n\nfunction getset(model, channel, modifier) {\n\tmodel = Array.isArray(model) ? model : [model];\n\n\tfor (const m of model) {\n\t\t(limiters[m] || (limiters[m] = []))[channel] = modifier;\n\t}\n\n\tmodel = model[0];\n\n\treturn function (value) {\n\t\tlet result;\n\n\t\tif (value !== undefined) {\n\t\t\tif (modifier) {\n\t\t\t\tvalue = modifier(value);\n\t\t\t}\n\n\t\t\tresult = this[model]();\n\t\t\tresult.color[channel] = value;\n\t\t\treturn result;\n\t\t}\n\n\t\tresult = this[model]().color[channel];\n\t\tif (modifier) {\n\t\t\tresult = modifier(result);\n\t\t}\n\n\t\treturn result;\n\t};\n}\n\nfunction maxfn(max) {\n\treturn function (v) {\n\t\treturn Math.max(0, Math.min(max, v));\n\t};\n}\n\nfunction assertArray(value) {\n\treturn Array.isArray(value) ? value : [value];\n}\n\nfunction zeroArray(array, length) {\n\tfor (let i = 0; i < length; i++) {\n\t\tif (typeof array[i] !== 'number') {\n\t\t\tarray[i] = 0;\n\t\t}\n\t}\n\n\treturn array;\n}\n\nmodule.exports = Color;\n","import Color from \"color\";\n\nexport const CSS = {\n channel: \"channel\",\n channels: \"channels\",\n colorField: \"color-field\",\n colorFieldScope: \"scope--color-field\",\n colorMode: \"color-mode\",\n colorModeContainer: \"color-mode-container\",\n container: \"container\",\n control: \"control\",\n controlAndScope: \"control-and-scope\",\n controlSection: \"control-section\",\n deleteColor: \"delete-color\",\n header: \"header\",\n hexAndChannelsGroup: \"hex-and-channels-group\",\n hexOptions: \"color-hex-options\",\n hueScope: \"scope--hue\",\n hueSlider: \"hue-slider\",\n opacityScope: \"scope--opacity\",\n opacitySlider: \"opacity-slider\",\n preview: \"preview\",\n previewAndSliders: \"preview-and-sliders\",\n saveColor: \"save-color\",\n savedColor: \"saved-color\",\n savedColors: \"saved-colors\",\n savedColorsButtons: \"saved-colors-buttons\",\n savedColorsSection: \"saved-colors-section\",\n scope: \"scope\",\n section: \"section\",\n slider: \"slider\",\n sliders: \"sliders\",\n splitSection: \"section--split\",\n};\n\nexport const DEFAULT_COLOR = Color(\"#007AC2\");\nexport const DEFAULT_STORAGE_KEY_PREFIX = \"calcite-color-\";\n\nexport const RGB_LIMITS = {\n r: 255,\n g: 255,\n b: 255,\n};\n\nexport const HSV_LIMITS = {\n h: 360,\n s: 100,\n v: 100,\n};\n\n// 0 and 360 represent the same value, so we limit the hue to 359\nexport const HUE_LIMIT_CONSTRAINED = HSV_LIMITS.h - 1;\n\nexport const OPACITY_LIMITS = {\n min: 0,\n max: 100,\n};\n\nexport const DIMENSIONS = {\n s: {\n slider: {\n height: 12,\n width: 104,\n },\n colorField: {\n height: 80,\n width: 160,\n },\n thumb: {\n radius: 10,\n },\n },\n m: {\n slider: {\n height: 12,\n width: 204,\n },\n colorField: {\n height: 150,\n width: 272,\n },\n thumb: {\n radius: 10,\n },\n },\n l: {\n slider: {\n height: 12,\n width: 384,\n },\n colorField: {\n height: 200,\n width: 464,\n },\n thumb: {\n radius: 10,\n },\n },\n};\n\nexport const SCOPE_SIZE = 1;\n",":host {\n @apply text-n2h inline-block font-normal;\n}\n\n@include disabled();\n\n:host([scale=\"s\"]) {\n --calcite-color-picker-spacing: 8px;\n\n .container {\n inline-size: 160px;\n }\n\n .saved-colors {\n @apply gap-1;\n grid-template-columns: repeat(auto-fill, 20px);\n }\n}\n\n:host([scale=\"m\"]) {\n --calcite-color-picker-spacing: 12px;\n\n .container {\n inline-size: 272px;\n }\n}\n\n:host([scale=\"l\"]) {\n --calcite-color-picker-spacing: 16px;\n\n @apply text-n1h;\n\n .container {\n inline-size: 464px;\n }\n\n .section {\n &:first-of-type {\n padding-block-start: var(--calcite-color-picker-spacing);\n }\n }\n\n .saved-colors {\n grid-template-columns: repeat(auto-fill, 32px);\n }\n\n .control-section {\n @apply flex-nowrap items-baseline;\n }\n\n .control-section {\n @apply flex-wrap;\n }\n\n .color-hex-options {\n @apply flex\n flex-shrink\n flex-col\n justify-around;\n }\n\n .color-mode-container {\n flex-shrink: 3;\n }\n}\n\n.container {\n @apply bg-foreground-1;\n display: inline-block;\n border: 1px solid var(--calcite-color-border-1);\n}\n\n.control-and-scope {\n @apply flex relative cursor-pointer touch-none;\n}\n\n.scope {\n @apply text-n1\n focus-base\n absolute\n z-default\n rounded-full\n bg-transparent\n w-px\n h-px\n pointer-events-none;\n &:focus {\n @apply focus-outset;\n outline-offset: 11px;\n }\n}\n\n.hex-and-channels-group {\n @apply w-full;\n}\n\n.hex-and-channels-group,\n.control-section {\n @apply flex flex-row flex-wrap;\n}\n\n.section {\n padding-block: 0 var(--calcite-color-picker-spacing);\n padding-inline: var(--calcite-color-picker-spacing);\n\n &:first-of-type {\n padding-block-start: var(--calcite-color-picker-spacing);\n }\n}\n\n.sliders {\n @apply flex flex-col justify-between;\n margin-inline-start: var(--calcite-color-picker-spacing);\n}\n\n.preview-and-sliders {\n @apply flex items-center;\n padding: var(--calcite-color-picker-spacing);\n}\n\n.color-hex-options,\n.section--split {\n flex-grow: 1;\n}\n\n.header {\n @apply text-color-1\n flex\n items-center\n justify-between;\n}\n\n.color-mode-container {\n padding-block-start: var(--calcite-color-picker-spacing);\n}\n\n.channels {\n @apply flex gap-y-0.5;\n}\n\n.channel {\n &[data-channel-index=\"3\"] {\n inline-size: 159px;\n }\n}\n\n:host([scale=\"s\"]) {\n .channels {\n @apply flex-wrap;\n }\n\n .channel {\n flex-basis: 30%;\n flex-grow: 1;\n\n &[data-channel-index=\"3\"] {\n inline-size: unset;\n margin-inline-start: unset;\n }\n }\n}\n\n:host([scale=\"l\"]) {\n .channel {\n &[data-channel-index=\"3\"] {\n inline-size: 131px;\n }\n }\n}\n\n.saved-colors {\n @apply grid gap-2;\n padding-block-start: var(--calcite-color-picker-spacing);\n grid-template-columns: repeat(auto-fill, 24px);\n}\n\n.saved-colors-buttons {\n display: flex;\n}\n\n.saved-color {\n @include focus-style-base();\n\n cursor: pointer;\n\n &:focus {\n @include focus-style-outset();\n }\n\n &:hover {\n transition: outline-color var(--calcite-internal-animation-timing-fast) ease-in-out;\n outline: 2px solid var(--calcite-color-border-2);\n outline-offset: 2px;\n }\n}\n\n@include base-component();\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Listen,\n Method,\n Prop,\n State,\n VNode,\n Watch,\n} from \"@stencil/core\";\n\nimport Color from \"color\";\nimport { Channels, ColorMode, ColorValue, HSLA, HSVA, InternalColor, RGBA } from \"./interfaces\";\nimport { throttle } from \"lodash-es\";\nimport { Direction, getElementDir, isPrimaryPointerButton } from \"../../utils/dom\";\nimport { Scale } from \"../interfaces\";\nimport {\n CSS,\n DEFAULT_COLOR,\n DEFAULT_STORAGE_KEY_PREFIX,\n DIMENSIONS,\n HSV_LIMITS,\n HUE_LIMIT_CONSTRAINED,\n OPACITY_LIMITS,\n RGB_LIMITS,\n SCOPE_SIZE,\n} from \"./resources\";\nimport {\n alphaCompatible,\n alphaToOpacity,\n colorEqual,\n CSSColorMode,\n Format,\n hexify,\n normalizeAlpha,\n normalizeColor,\n normalizeHex,\n opacityToAlpha,\n parseMode,\n SupportedMode,\n toAlphaMode,\n toNonAlphaMode,\n} from \"./utils\";\n\nimport {\n connectInteractive,\n disconnectInteractive,\n InteractiveComponent,\n InteractiveContainer,\n updateHostInteraction,\n} from \"../../utils/interactive\";\nimport { isActivationKey } from \"../../utils/key\";\nimport {\n componentFocusable,\n LoadableComponent,\n setComponentLoaded,\n setUpLoadableComponent,\n} from \"../../utils/loadable\";\nimport {\n connectLocalized,\n disconnectLocalized,\n LocalizedComponent,\n NumberingSystem,\n} from \"../../utils/locale\";\nimport { clamp, closeToRangeEdge, remap } from \"../../utils/math\";\nimport {\n connectMessages,\n disconnectMessages,\n setUpMessages,\n T9nComponent,\n updateMessages,\n} from \"../../utils/t9n\";\nimport { ColorPickerMessages } from \"./assets/color-picker/t9n\";\n\nconst throttleFor60FpsInMs = 16;\n\n@Component({\n tag: \"calcite-color-picker\",\n styleUrl: \"color-picker.scss\",\n shadow: {\n delegatesFocus: true,\n },\n assetsDirs: [\"assets\"],\n})\nexport class ColorPicker\n implements InteractiveComponent, LoadableComponent, LocalizedComponent, T9nComponent\n{\n //--------------------------------------------------------------------------\n //\n // Public properties\n //\n //--------------------------------------------------------------------------\n\n /**\n * When `true`, an empty color (`null`) will be allowed as a `value`. When `false`, a color value is enforced, and clearing the input or blurring will restore the last valid `value`.\n */\n @Prop({ reflect: true }) allowEmpty = false;\n\n /**\n * When true, the component will allow updates to the color's alpha value.\n */\n @Prop() alphaChannel = false;\n\n @Watch(\"alphaChannel\")\n handleAlphaChannelChange(alphaChannel: boolean): void {\n const { format } = this;\n\n if (alphaChannel && format !== \"auto\" && !alphaCompatible(format)) {\n console.warn(\n `ignoring alphaChannel as the current format (${format}) does not support alpha`\n );\n this.alphaChannel = false;\n }\n }\n\n /** When true, hides the RGB/HSV channel inputs */\n @Prop() channelsDisabled = false;\n\n /**\n * Internal prop for advanced use-cases.\n *\n * @internal\n */\n @Prop({ mutable: true }) color: InternalColor | null = DEFAULT_COLOR;\n\n @Watch(\"color\")\n handleColorChange(color: Color | null, oldColor: Color | null): void {\n this.drawColorControls();\n this.updateChannelsFromColor(color);\n this.previousColor = oldColor;\n }\n\n /**\n * When `true`, interaction is prevented and the component is displayed with lower opacity.\n */\n @Prop({ reflect: true }) disabled = false;\n\n /**\n * The format of `value`.\n *\n * When `\"auto\"`, the format will be inferred from `value` when set.\n *\n * @default \"auto\"\n */\n @Prop({ reflect: true }) format: Format = \"auto\";\n\n @Watch(\"alphaChannel\")\n @Watch(\"format\")\n handleFormatOrAlphaChannelChange(): void {\n this.setMode(this.format);\n this.internalColorSet(this.color, false, \"internal\");\n }\n\n /**\n * When `true`, hides the RGB/HSV channel inputs.\n *\n * @deprecated use `channelsDisabled` instead\n */\n @Prop({ reflect: true }) hideChannels = false;\n\n /** When true, hides the hex input */\n @Prop() hexDisabled = false;\n\n /**\n * When `true`, hides the hex input.\n *\n * @deprecated use `hexDisabled` instead\n */\n @Prop({ reflect: true }) hideHex = false;\n\n /**\n * When `true`, hides the saved colors section.\n *\n * @deprecated use `savedDisabled` instead\n */\n @Prop({ reflect: true }) hideSaved = false;\n\n /** When true, hides the saved colors section */\n @Prop({ reflect: true }) savedDisabled = false;\n\n /** Specifies the size of the component. */\n @Prop({ reflect: true }) scale: Scale = \"m\";\n\n @Watch(\"scale\")\n handleScaleChange(scale: Scale = \"m\"): void {\n this.updateDimensions(scale);\n this.updateCanvasSize(\"all\");\n this.drawColorControls();\n }\n\n /** Specifies the storage ID for colors. */\n @Prop({ reflect: true }) storageId: string;\n\n /**\n * Use this property to override individual strings used by the component.\n */\n // eslint-disable-next-line @stencil-community/strict-mutable -- updated by t9n module\n @Prop({ mutable: true }) messageOverrides: Partial<ColorPickerMessages>;\n\n @Watch(\"messageOverrides\")\n onMessagesChange(): void {\n /* wired up by t9n util */\n }\n\n /** Specifies the Unicode numeral system used by the component for localization. */\n @Prop({ reflect: true }) numberingSystem: NumberingSystem;\n\n /**\n * The component's value, where the value can be a CSS color string, or a RGB, HSL or HSV object.\n *\n * The type will be preserved as the color is updated.\n *\n * @default \"#007ac2\"\n * @see [CSS Color](https://developer.mozilla.org/en-US/docs/Web/CSS/color)\n * @see [ColorValue](https://github.com/Esri/calcite-design-system/blob/main/src/components/color-picker/interfaces.ts#L10)\n */\n @Prop({ mutable: true }) value: ColorValue | null = normalizeHex(\n hexify(DEFAULT_COLOR, this.alphaChannel)\n );\n\n @Watch(\"value\")\n handleValueChange(value: ColorValue | null, oldValue: ColorValue | null): void {\n const { allowEmpty, format } = this;\n const checkMode = !allowEmpty || value;\n let modeChanged = false;\n\n if (checkMode) {\n const nextMode = parseMode(value);\n\n if (!nextMode || (format !== \"auto\" && nextMode !== format)) {\n this.showIncompatibleColorWarning(value, format);\n this.value = oldValue;\n return;\n }\n\n modeChanged = this.mode !== nextMode;\n this.setMode(nextMode, this.internalColorUpdateContext === null);\n }\n\n const dragging = this.activeCanvasInfo;\n\n if (this.internalColorUpdateContext === \"initial\") {\n return;\n }\n\n if (this.internalColorUpdateContext === \"user-interaction\") {\n this.calciteColorPickerInput.emit();\n\n if (!dragging) {\n this.calciteColorPickerChange.emit();\n }\n return;\n }\n\n const color =\n allowEmpty && !value\n ? null\n : Color(\n value != null && typeof value === \"object\" && alphaCompatible(this.mode)\n ? normalizeColor(value as RGBA | HSVA | HSLA)\n : value\n );\n const colorChanged = !colorEqual(color, this.color);\n\n if (modeChanged || colorChanged) {\n this.internalColorSet(\n color,\n this.alphaChannel && !(this.mode.endsWith(\"a\") || this.mode.endsWith(\"a-css\")),\n \"internal\"\n );\n }\n }\n\n //--------------------------------------------------------------------------\n //\n // Internal State/Props\n //\n //--------------------------------------------------------------------------\n\n @Element() el: HTMLCalciteColorPickerElement;\n\n private activeCanvasInfo: {\n context: CanvasRenderingContext2D;\n bounds: DOMRect;\n };\n\n private get baseColorFieldColor(): Color {\n return this.color || this.previousColor || DEFAULT_COLOR;\n }\n\n private checkerPattern: HTMLCanvasElement;\n\n private colorFieldRenderingContext: CanvasRenderingContext2D;\n\n private colorFieldScopeNode: HTMLDivElement;\n\n private hueSliderRenderingContext: CanvasRenderingContext2D;\n\n private hueScopeNode: HTMLDivElement;\n\n private internalColorUpdateContext: \"internal\" | \"initial\" | \"user-interaction\" | null = null;\n\n private mode: SupportedMode = CSSColorMode.HEX;\n\n private opacityScopeNode: HTMLDivElement;\n\n private opacitySliderRenderingContext: CanvasRenderingContext2D;\n\n private previousColor: InternalColor | null;\n\n private shiftKeyChannelAdjustment = 0;\n\n @State() defaultMessages: ColorPickerMessages;\n\n @State() channelMode: ColorMode = \"rgb\";\n\n @State() channels: Channels = this.toChannels(DEFAULT_COLOR);\n\n @State() dimensions = DIMENSIONS.m;\n\n @State() effectiveLocale = \"\";\n\n @Watch(\"effectiveLocale\")\n effectiveLocaleChange(): void {\n updateMessages(this, this.effectiveLocale);\n }\n\n /**\n * Made into a prop for testing purposes only\n *\n * @internal\n */\n // eslint-disable-next-line @stencil-community/strict-mutable -- updated by t9n module\n @Prop({ mutable: true }) messages: ColorPickerMessages;\n\n @State() savedColors: string[] = [];\n\n @State() colorFieldScopeTop: number;\n\n @State() colorFieldScopeLeft: number;\n\n @State() hueScopeLeft: number;\n\n @State() opacityScopeLeft: number;\n\n @State() scopeOrientation: \"vertical\" | \"horizontal\";\n\n //--------------------------------------------------------------------------\n //\n // Events\n //\n //--------------------------------------------------------------------------\n\n /**\n * Fires when the color value has changed.\n */\n @Event({ cancelable: false }) calciteColorPickerChange: EventEmitter<void>;\n\n /**\n * Fires as the color value changes.\n *\n * Similar to the `calciteColorPickerChange` event with the exception of dragging. When dragging the color field or hue slider thumb, this event fires as the thumb is moved.\n */\n @Event({ cancelable: false }) calciteColorPickerInput: EventEmitter<void>;\n\n private handleTabActivate = (event: Event): void => {\n this.channelMode = (event.currentTarget as HTMLElement).getAttribute(\n \"data-color-mode\"\n ) as ColorMode;\n\n this.updateChannelsFromColor(this.color);\n };\n\n private handleColorFieldScopeKeyDown = (event: KeyboardEvent): void => {\n const { key } = event;\n const arrowKeyToXYOffset = {\n ArrowUp: { x: 0, y: -10 },\n ArrowRight: { x: 10, y: 0 },\n ArrowDown: { x: 0, y: 10 },\n ArrowLeft: { x: -10, y: 0 },\n };\n\n if (arrowKeyToXYOffset[key]) {\n event.preventDefault();\n this.scopeOrientation = key === \"ArrowDown\" || key === \"ArrowUp\" ? \"vertical\" : \"horizontal\";\n this.captureColorFieldColor(\n this.colorFieldScopeLeft + arrowKeyToXYOffset[key].x || 0,\n this.colorFieldScopeTop + arrowKeyToXYOffset[key].y || 0,\n false\n );\n }\n };\n\n private handleHueScopeKeyDown = (event: KeyboardEvent): void => {\n const modifier = event.shiftKey ? 10 : 1;\n const { key } = event;\n const arrowKeyToXOffset = {\n ArrowUp: 1,\n ArrowRight: 1,\n ArrowDown: -1,\n ArrowLeft: -1,\n };\n\n if (arrowKeyToXOffset[key]) {\n event.preventDefault();\n const delta = arrowKeyToXOffset[key] * modifier;\n const hue = this.baseColorFieldColor.hue();\n const color = this.baseColorFieldColor.hue(hue + delta);\n this.internalColorSet(color, false);\n }\n };\n\n private handleHexInputChange = (event: Event): void => {\n event.stopPropagation();\n const { allowEmpty, color } = this;\n const input = event.target as HTMLCalciteColorPickerHexInputElement;\n const hex = input.value;\n\n if (allowEmpty && !hex) {\n this.internalColorSet(null);\n return;\n }\n\n const normalizedHex = color && normalizeHex(hexify(color, alphaCompatible(this.mode)));\n\n if (hex !== normalizedHex) {\n this.internalColorSet(Color(hex));\n }\n };\n\n private handleSavedColorSelect = (event: Event): void => {\n const swatch = event.currentTarget as HTMLCalciteColorPickerSwatchElement;\n this.internalColorSet(Color(swatch.color));\n };\n\n private handleChannelInput = (event: CustomEvent): void => {\n const input = event.currentTarget as HTMLCalciteInputNumberElement;\n const channelIndex = Number(input.getAttribute(\"data-channel-index\"));\n const isAlphaChannel = channelIndex === 3;\n\n const limit = isAlphaChannel\n ? OPACITY_LIMITS.max\n : this.channelMode === \"rgb\"\n ? RGB_LIMITS[Object.keys(RGB_LIMITS)[channelIndex]]\n : HSV_LIMITS[Object.keys(HSV_LIMITS)[channelIndex]];\n\n let inputValue: string;\n\n if (this.allowEmpty && !input.value) {\n inputValue = \"\";\n } else {\n const value = Number(input.value);\n const adjustedValue = value + this.shiftKeyChannelAdjustment;\n const clamped = clamp(adjustedValue, 0, limit);\n\n inputValue = clamped.toString();\n }\n\n input.value = inputValue;\n };\n\n // using @Listen as a workaround for VDOM listener not firing\n @Listen(\"keydown\", { capture: true })\n @Listen(\"keyup\", { capture: true })\n protected handleChannelKeyUpOrDown(event: KeyboardEvent): void {\n this.shiftKeyChannelAdjustment = 0;\n const { key } = event;\n\n if (\n (key !== \"ArrowUp\" && key !== \"ArrowDown\") ||\n !event.composedPath().some((node: HTMLElement) => node.classList?.contains(CSS.channel))\n ) {\n return;\n }\n\n const { shiftKey } = event;\n event.preventDefault();\n\n if (!this.color) {\n this.internalColorSet(this.previousColor);\n event.stopPropagation();\n return;\n }\n\n // this gets applied to the input's up/down arrow increment/decrement\n const complementaryBump = 9;\n\n this.shiftKeyChannelAdjustment =\n key === \"ArrowUp\" && shiftKey\n ? complementaryBump\n : key === \"ArrowDown\" && shiftKey\n ? -complementaryBump\n : 0;\n }\n\n private handleChannelChange = (event: CustomEvent): void => {\n const input = event.currentTarget as HTMLCalciteInputNumberElement;\n const channelIndex = Number(input.getAttribute(\"data-channel-index\"));\n const channels = [...this.channels] as this[\"channels\"];\n\n const shouldClearChannels = this.allowEmpty && !input.value;\n\n if (shouldClearChannels) {\n this.channels = [null, null, null, null];\n this.internalColorSet(null);\n return;\n }\n\n const isAlphaChannel = channelIndex === 3;\n const value = Number(input.value);\n\n channels[channelIndex] = isAlphaChannel ? opacityToAlpha(value) : value;\n this.updateColorFromChannels(channels);\n };\n\n private handleSavedColorKeyDown = (event: KeyboardEvent): void => {\n if (isActivationKey(event.key)) {\n event.preventDefault();\n this.handleSavedColorSelect(event);\n }\n };\n\n private handleColorFieldPointerDown = (event: PointerEvent): void => {\n if (!isPrimaryPointerButton(event)) {\n return;\n }\n\n const { offsetX, offsetY } = event;\n\n window.addEventListener(\"pointermove\", this.globalPointerMoveHandler);\n window.addEventListener(\"pointerup\", this.globalPointerUpHandler, { once: true });\n\n this.activeCanvasInfo = {\n context: this.colorFieldRenderingContext,\n bounds: this.colorFieldRenderingContext.canvas.getBoundingClientRect(),\n };\n this.captureColorFieldColor(offsetX, offsetY);\n this.colorFieldScopeNode.focus();\n };\n\n private handleHueSliderPointerDown = (event: PointerEvent): void => {\n if (!isPrimaryPointerButton(event)) {\n return;\n }\n\n const { offsetX } = event;\n\n window.addEventListener(\"pointermove\", this.globalPointerMoveHandler);\n window.addEventListener(\"pointerup\", this.globalPointerUpHandler, { once: true });\n\n this.activeCanvasInfo = {\n context: this.hueSliderRenderingContext,\n bounds: this.hueSliderRenderingContext.canvas.getBoundingClientRect(),\n };\n this.captureHueSliderColor(offsetX);\n this.hueScopeNode.focus();\n };\n\n private handleOpacitySliderPointerDown = (event: PointerEvent): void => {\n if (!isPrimaryPointerButton(event)) {\n return;\n }\n\n const { offsetX } = event;\n\n window.addEventListener(\"pointermove\", this.globalPointerMoveHandler);\n window.addEventListener(\"pointerup\", this.globalPointerUpHandler, { once: true });\n\n this.activeCanvasInfo = {\n context: this.opacitySliderRenderingContext,\n bounds: this.opacitySliderRenderingContext.canvas.getBoundingClientRect(),\n };\n this.captureOpacitySliderValue(offsetX);\n this.opacityScopeNode.focus();\n };\n\n private globalPointerUpHandler = (event: PointerEvent): void => {\n if (!isPrimaryPointerButton(event)) {\n return;\n }\n\n const previouslyDragging = this.activeCanvasInfo;\n this.activeCanvasInfo = null;\n this.drawColorControls();\n\n if (previouslyDragging) {\n this.calciteColorPickerChange.emit();\n }\n };\n\n private globalPointerMoveHandler = (event: PointerEvent): void => {\n const { activeCanvasInfo, el } = this;\n\n if (!el.isConnected || !activeCanvasInfo) {\n return;\n }\n\n const { context, bounds } = activeCanvasInfo;\n\n let samplingX: number;\n let samplingY: number;\n\n const { clientX, clientY } = event;\n\n if (context.canvas.matches(\":hover\")) {\n samplingX = clientX - bounds.x;\n samplingY = clientY - bounds.y;\n } else {\n // snap x and y to the closest edge\n\n if (clientX < bounds.x + bounds.width && clientX > bounds.x) {\n samplingX = clientX - bounds.x;\n } else if (clientX < bounds.x) {\n samplingX = 0;\n } else {\n samplingX = bounds.width;\n }\n\n if (clientY < bounds.y + bounds.height && clientY > bounds.y) {\n samplingY = clientY - bounds.y;\n } else if (clientY < bounds.y) {\n samplingY = 0;\n } else {\n samplingY = bounds.height;\n }\n }\n\n if (context === this.colorFieldRenderingContext) {\n this.captureColorFieldColor(samplingX, samplingY, false);\n } else if (context === this.hueSliderRenderingContext) {\n this.captureHueSliderColor(samplingX);\n } else if (context === this.opacitySliderRenderingContext) {\n this.captureOpacitySliderValue(samplingX);\n }\n };\n\n //--------------------------------------------------------------------------\n //\n // Public Methods\n //\n //--------------------------------------------------------------------------\n\n /** Sets focus on the component's first focusable element. */\n @Method()\n async setFocus(): Promise<void> {\n await componentFocusable(this);\n this.el.focus();\n }\n\n //--------------------------------------------------------------------------\n //\n // Lifecycle\n //\n //--------------------------------------------------------------------------\n\n async componentWillLoad(): Promise<void> {\n setUpLoadableComponent(this);\n\n const { allowEmpty, color, format, value } = this;\n\n const willSetNoColor = allowEmpty && !value;\n const parsedMode = parseMode(value);\n const valueIsCompatible =\n willSetNoColor || (format === \"auto\" && parsedMode) || format === parsedMode;\n const initialColor = willSetNoColor ? null : valueIsCompatible ? Color(value) : color;\n\n if (!valueIsCompatible) {\n this.showIncompatibleColorWarning(value, format);\n }\n\n this.setMode(format, false);\n this.internalColorSet(initialColor, false, \"initial\");\n\n this.updateDimensions(this.scale);\n\n const storageKey = `${DEFAULT_STORAGE_KEY_PREFIX}${this.storageId}`;\n\n if (this.storageId && localStorage.getItem(storageKey)) {\n this.savedColors = JSON.parse(localStorage.getItem(storageKey));\n }\n\n await setUpMessages(this);\n }\n\n connectedCallback(): void {\n connectInteractive(this);\n connectLocalized(this);\n connectMessages(this);\n }\n\n componentDidLoad(): void {\n setComponentLoaded(this);\n }\n\n disconnectedCallback(): void {\n window.removeEventListener(\"pointermove\", this.globalPointerMoveHandler);\n window.removeEventListener(\"pointerup\", this.globalPointerUpHandler);\n disconnectInteractive(this);\n disconnectLocalized(this);\n disconnectMessages(this);\n }\n\n componentDidRender(): void {\n updateHostInteraction(this);\n }\n\n //--------------------------------------------------------------------------\n //\n // Render Methods\n //\n //--------------------------------------------------------------------------\n\n render(): VNode {\n const {\n allowEmpty,\n channelsDisabled,\n color,\n colorFieldScopeLeft,\n colorFieldScopeTop,\n dimensions: {\n slider: { width: sliderWidth },\n thumb: { radius: thumbRadius },\n },\n hexDisabled,\n hideChannels,\n hideHex,\n hideSaved,\n hueScopeLeft,\n messages,\n alphaChannel,\n opacityScopeLeft,\n savedColors,\n savedDisabled,\n scale,\n scopeOrientation,\n } = this;\n const selectedColorInHex = color ? hexify(color, alphaChannel) : null;\n const hueTop = thumbRadius;\n const hueLeft = hueScopeLeft ?? (sliderWidth * DEFAULT_COLOR.hue()) / HSV_LIMITS.h;\n const opacityTop = thumbRadius;\n const opacityLeft =\n opacityScopeLeft ??\n (sliderWidth * alphaToOpacity(DEFAULT_COLOR.alpha())) / OPACITY_LIMITS.max;\n const noColor = color === null;\n const vertical = scopeOrientation === \"vertical\";\n const noHex = hexDisabled || hideHex;\n const noChannels = channelsDisabled || hideChannels;\n const noSaved = savedDisabled || hideSaved;\n const [adjustedColorFieldScopeLeft, adjustedColorFieldScopeTop] = this.getAdjustedScopePosition(\n colorFieldScopeLeft,\n colorFieldScopeTop\n );\n const [adjustedHueScopeLeft, adjustedHueScopeTop] = this.getAdjustedScopePosition(\n hueLeft,\n hueTop\n );\n const [adjustedOpacityScopeLeft, adjustedOpacityScopeTop] = this.getAdjustedScopePosition(\n opacityLeft,\n opacityTop\n );\n\n return (\n <InteractiveContainer disabled={this.disabled}>\n <div class={CSS.container}>\n <div class={CSS.controlAndScope}>\n <canvas\n class={CSS.colorField}\n onPointerDown={this.handleColorFieldPointerDown}\n // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530)\n ref={this.initColorField}\n />\n <div\n aria-label={vertical ? messages.value : messages.saturation}\n aria-valuemax={vertical ? HSV_LIMITS.v : HSV_LIMITS.s}\n aria-valuemin=\"0\"\n aria-valuenow={(vertical ? color?.saturationv() : color?.value()) || \"0\"}\n class={{ [CSS.scope]: true, [CSS.colorFieldScope]: true }}\n onKeyDown={this.handleColorFieldScopeKeyDown}\n role=\"slider\"\n style={{\n top: `${adjustedColorFieldScopeTop || 0}px`,\n left: `${adjustedColorFieldScopeLeft || 0}px`,\n }}\n tabindex=\"0\"\n // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530)\n ref={this.storeColorFieldScope}\n />\n </div>\n <div class={CSS.previewAndSliders}>\n <calcite-color-picker-swatch class={CSS.preview} color={selectedColorInHex} scale=\"l\" />\n <div class={CSS.sliders}>\n <div class={CSS.controlAndScope}>\n <canvas\n class={{ [CSS.slider]: true, [CSS.hueSlider]: true }}\n onPointerDown={this.handleHueSliderPointerDown}\n // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530)\n ref={this.initHueSlider}\n />\n <div\n aria-label={messages.hue}\n aria-valuemax={HSV_LIMITS.h}\n aria-valuemin=\"0\"\n aria-valuenow={color?.round().hue() || DEFAULT_COLOR.round().hue()}\n class={{ [CSS.scope]: true, [CSS.hueScope]: true }}\n onKeyDown={this.handleHueScopeKeyDown}\n role=\"slider\"\n style={{\n top: `${adjustedHueScopeTop}px`,\n left: `${adjustedHueScopeLeft}px`,\n }}\n tabindex=\"0\"\n // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530)\n ref={this.storeHueScope}\n />\n </div>\n {alphaChannel ? (\n <div class={CSS.controlAndScope}>\n <canvas\n class={{ [CSS.slider]: true, [CSS.opacitySlider]: true }}\n onPointerDown={this.handleOpacitySliderPointerDown}\n // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530)\n ref={this.initOpacitySlider}\n />\n <div\n aria-label={messages.opacity}\n aria-valuemax={OPACITY_LIMITS.max}\n aria-valuemin={OPACITY_LIMITS.min}\n aria-valuenow={(color || DEFAULT_COLOR).round().alpha()}\n class={{ [CSS.scope]: true, [CSS.opacityScope]: true }}\n onKeyDown={this.handleOpacityScopeKeyDown}\n role=\"slider\"\n style={{\n top: `${adjustedOpacityScopeTop}px`,\n left: `${adjustedOpacityScopeLeft}px`,\n }}\n tabindex=\"0\"\n // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530)\n ref={this.storeOpacityScope}\n />\n </div>\n ) : null}\n </div>\n </div>\n {noHex && noChannels ? null : (\n <div\n class={{\n [CSS.controlSection]: true,\n [CSS.section]: true,\n }}\n >\n <div class={CSS.hexAndChannelsGroup}>\n {noHex ? null : (\n <div class={CSS.hexOptions}>\n <calcite-color-picker-hex-input\n allowEmpty={allowEmpty}\n alphaChannel={alphaChannel}\n class={CSS.control}\n messages={messages}\n numberingSystem={this.numberingSystem}\n onCalciteColorPickerHexInputChange={this.handleHexInputChange}\n scale={scale}\n value={selectedColorInHex}\n />\n </div>\n )}\n {noChannels ? null : (\n <calcite-tabs\n class={{\n [CSS.colorModeContainer]: true,\n [CSS.splitSection]: true,\n }}\n scale={scale === \"l\" ? \"m\" : \"s\"}\n >\n <calcite-tab-nav slot=\"title-group\">\n {this.renderChannelsTabTitle(\"rgb\")}\n {this.renderChannelsTabTitle(\"hsv\")}\n </calcite-tab-nav>\n {this.renderChannelsTab(\"rgb\")}\n {this.renderChannelsTab(\"hsv\")}\n </calcite-tabs>\n )}\n </div>\n </div>\n )}\n {noSaved ? null : (\n <div class={{ [CSS.savedColorsSection]: true, [CSS.section]: true }}>\n <div class={CSS.header}>\n <label>{messages.saved}</label>\n <div class={CSS.savedColorsButtons}>\n <calcite-button\n appearance=\"transparent\"\n class={CSS.deleteColor}\n disabled={noColor}\n iconStart=\"minus\"\n kind=\"neutral\"\n label={messages.deleteColor}\n onClick={this.deleteColor}\n scale={scale}\n type=\"button\"\n />\n <calcite-button\n appearance=\"transparent\"\n class={CSS.saveColor}\n disabled={noColor}\n iconStart=\"plus\"\n kind=\"neutral\"\n label={messages.saveColor}\n onClick={this.saveColor}\n scale={scale}\n type=\"button\"\n />\n </div>\n </div>\n {savedColors.length > 0 ? (\n <div class={CSS.savedColors}>\n {[\n ...savedColors.map((color) => (\n <calcite-color-picker-swatch\n class={CSS.savedColor}\n color={color}\n key={color}\n onClick={this.handleSavedColorSelect}\n onKeyDown={this.handleSavedColorKeyDown}\n scale={scale}\n tabIndex={0}\n />\n )),\n ]}\n </div>\n ) : null}\n </div>\n )}\n </div>\n </InteractiveContainer>\n );\n }\n\n private storeColorFieldScope = (node: HTMLDivElement): void => {\n this.colorFieldScopeNode = node;\n };\n\n private storeHueScope = (node: HTMLDivElement): void => {\n this.hueScopeNode = node;\n };\n\n private renderChannelsTabTitle = (channelMode: this[\"channelMode\"]): VNode => {\n const { channelMode: activeChannelMode, messages } = this;\n const selected = channelMode === activeChannelMode;\n const label = channelMode === \"rgb\" ? messages.rgb : messages.hsv;\n\n return (\n <calcite-tab-title\n class={CSS.colorMode}\n data-color-mode={channelMode}\n key={channelMode}\n onCalciteTabsActivate={this.handleTabActivate}\n selected={selected}\n >\n {label}\n </calcite-tab-title>\n );\n };\n\n private renderChannelsTab = (channelMode: this[\"channelMode\"]): VNode => {\n const { allowEmpty, channelMode: activeChannelMode, channels, messages, alphaChannel } = this;\n const selected = channelMode === activeChannelMode;\n const isRgb = channelMode === \"rgb\";\n const channelAriaLabels = isRgb\n ? [messages.red, messages.green, messages.blue]\n : [messages.hue, messages.saturation, messages.value];\n const direction = getElementDir(this.el);\n const channelsToRender = alphaChannel ? channels : channels.slice(0, 3);\n\n return (\n <calcite-tab class={CSS.control} key={channelMode} selected={selected}>\n {/* channel order should not be mirrored */}\n <div class={CSS.channels} dir=\"ltr\">\n {channelsToRender.map((channelValue, index) => {\n const isAlphaChannel = index === 3;\n\n if (isAlphaChannel) {\n channelValue =\n allowEmpty && !channelValue ? channelValue : alphaToOpacity(channelValue);\n }\n\n /* the channel container is ltr, so we apply the host's direction */\n return this.renderChannel(\n channelValue,\n index,\n channelAriaLabels[index],\n direction,\n isAlphaChannel ? \"%\" : \"\"\n );\n })}\n </div>\n </calcite-tab>\n );\n };\n\n private renderChannel = (\n value: number | null,\n index: number,\n ariaLabel: string,\n direction: Direction,\n suffix?: string\n ): VNode => {\n return (\n <calcite-input-number\n class={CSS.channel}\n data-channel-index={index}\n dir={direction}\n key={index}\n label={ariaLabel}\n lang={this.effectiveLocale}\n numberButtonType=\"none\"\n numberingSystem={this.numberingSystem}\n onCalciteInputNumberChange={this.handleChannelChange}\n onCalciteInputNumberInput={this.handleChannelInput}\n onKeyDown={this.handleKeyDown}\n scale={this.scale === \"l\" ? \"m\" : \"s\"}\n // workaround to ensure input borders overlap as desired\n // this is because the build transforms margin-left to its\n // logical-prop, which is undesired as channels are always ltr\n style={{\n marginLeft:\n index > 0 && !(this.scale === \"s\" && this.alphaChannel && index === 3) ? \"-1px\" : \"\",\n }}\n suffixText={suffix}\n value={value?.toString()}\n />\n );\n };\n\n // --------------------------------------------------------------------------\n //\n // Private Methods\n //\n //--------------------------------------------------------------------------\n\n handleKeyDown(event: KeyboardEvent): void {\n if (event.key === \"Enter\") {\n event.preventDefault();\n }\n }\n\n private showIncompatibleColorWarning(value: ColorValue, format: Format): void {\n console.warn(\n `ignoring color value (${value}) as it is not compatible with the current format (${format})`\n );\n }\n\n private setMode(format: ColorPicker[\"format\"], warn = true): void {\n const mode = format === \"auto\" ? this.mode : format;\n this.mode = this.ensureCompatibleMode(mode, warn);\n }\n\n private ensureCompatibleMode(mode: SupportedMode, warn): SupportedMode {\n const { alphaChannel } = this;\n const isAlphaCompatible = alphaCompatible(mode);\n\n if (alphaChannel && !isAlphaCompatible) {\n const alphaMode = toAlphaMode(mode);\n\n if (warn) {\n console.warn(\n `setting format to (${alphaMode}) as the provided one (${mode}) does not support alpha`\n );\n }\n\n return alphaMode;\n }\n\n if (!alphaChannel && isAlphaCompatible) {\n const nonAlphaMode = toNonAlphaMode(mode);\n\n if (warn) {\n console.warn(\n `setting format to (${nonAlphaMode}) as the provided one (${mode}) does not support alpha`\n );\n }\n\n return nonAlphaMode;\n }\n\n return mode;\n }\n\n private captureHueSliderColor(x: number): void {\n const {\n dimensions: {\n slider: { width },\n },\n } = this;\n const hue = (HUE_LIMIT_CONSTRAINED / width) * x;\n\n this.internalColorSet(this.baseColorFieldColor.hue(hue), false);\n }\n\n private captureOpacitySliderValue(x: number): void {\n const {\n dimensions: {\n slider: { width },\n },\n } = this;\n const alpha = opacityToAlpha((OPACITY_LIMITS.max / width) * x);\n\n this.internalColorSet(this.baseColorFieldColor.alpha(alpha), false);\n }\n\n private internalColorSet(\n color: Color | null,\n skipEqual = true,\n context: ColorPicker[\"internalColorUpdateContext\"] = \"user-interaction\"\n ): void {\n if (skipEqual && colorEqual(color, this.color)) {\n return;\n }\n\n this.internalColorUpdateContext = context;\n this.color = color;\n this.value = this.toValue(color);\n this.internalColorUpdateContext = null;\n }\n\n private toValue(color: Color | null, format: SupportedMode = this.mode): ColorValue | null {\n if (!color) {\n return null;\n }\n\n const hexMode = \"hex\";\n\n if (format.includes(hexMode)) {\n const hasAlpha = format === CSSColorMode.HEXA;\n return normalizeHex(hexify(color.round(), hasAlpha), hasAlpha);\n }\n\n if (format.includes(\"-css\")) {\n const value = color[format.replace(\"-css\", \"\").replace(\"a\", \"\")]().round().string();\n\n // Color omits alpha values when alpha is 1\n const needToInjectAlpha =\n (format.endsWith(\"a\") || format.endsWith(\"a-css\")) && color.alpha() === 1;\n if (needToInjectAlpha) {\n const model = value.slice(0, 3);\n const values = value.slice(4, -1);\n return `${model}a(${values}, ${color.alpha()})`;\n }\n\n return value;\n }\n\n const colorObject =\n /* Color() does not support hsva, hsla nor rgba, so we use the non-alpha mode */\n color[toNonAlphaMode(format)]().round().object();\n\n if (format.endsWith(\"a\")) {\n return normalizeAlpha(colorObject);\n }\n\n return colorObject;\n }\n\n private getSliderCapSpacing(): number {\n const {\n dimensions: {\n slider: { height },\n thumb: { radius },\n },\n } = this;\n\n return radius * 2 - height;\n }\n\n private updateDimensions(scale: Scale = \"m\"): void {\n this.dimensions = DIMENSIONS[scale];\n }\n\n private deleteColor = (): void => {\n const colorToDelete = hexify(this.color, this.alphaChannel);\n const inStorage = this.savedColors.indexOf(colorToDelete) > -1;\n\n if (!inStorage) {\n return;\n }\n\n const savedColors = this.savedColors.filter((color) => color !== colorToDelete);\n\n this.savedColors = savedColors;\n\n const storageKey = `${DEFAULT_STORAGE_KEY_PREFIX}${this.storageId}`;\n\n if (this.storageId) {\n localStorage.setItem(storageKey, JSON.stringify(savedColors));\n }\n };\n\n private saveColor = (): void => {\n const colorToSave = hexify(this.color, this.alphaChannel);\n const alreadySaved = this.savedColors.indexOf(colorToSave) > -1;\n\n if (alreadySaved) {\n return;\n }\n\n const savedColors = [...this.savedColors, colorToSave];\n\n this.savedColors = savedColors;\n\n const storageKey = `${DEFAULT_STORAGE_KEY_PREFIX}${this.storageId}`;\n\n if (this.storageId) {\n localStorage.setItem(storageKey, JSON.stringify(savedColors));\n }\n };\n\n private drawColorControls = throttle(\n (type: \"all\" | \"color-field\" | \"hue-slider\" | \"opacity-slider\" = \"all\"): void => {\n if ((type === \"all\" || type === \"color-field\") && this.colorFieldRenderingContext) {\n this.drawColorField();\n }\n\n if ((type === \"all\" || type === \"hue-slider\") && this.hueSliderRenderingContext) {\n this.drawHueSlider();\n }\n\n if (\n this.alphaChannel &&\n (type === \"all\" || type === \"opacity-slider\") &&\n this.opacitySliderRenderingContext\n ) {\n this.drawOpacitySlider();\n }\n },\n throttleFor60FpsInMs\n );\n\n private drawColorField(): void {\n const context = this.colorFieldRenderingContext;\n const {\n dimensions: {\n colorField: { height, width },\n },\n } = this;\n\n context.fillStyle = this.baseColorFieldColor\n .hsv()\n .saturationv(100)\n .value(100)\n .alpha(1)\n .string();\n context.fillRect(0, 0, width, height);\n\n const whiteGradient = context.createLinearGradient(0, 0, width, 0);\n whiteGradient.addColorStop(0, \"rgba(255,255,255,1)\");\n whiteGradient.addColorStop(1, \"rgba(255,255,255,0)\");\n context.fillStyle = whiteGradient;\n context.fillRect(0, 0, width, height);\n\n const blackGradient = context.createLinearGradient(0, 0, 0, height);\n blackGradient.addColorStop(0, \"rgba(0,0,0,0)\");\n blackGradient.addColorStop(1, \"rgba(0,0,0,1)\");\n context.fillStyle = blackGradient;\n context.fillRect(0, 0, width, height);\n\n this.drawActiveColorFieldColor();\n }\n\n private setCanvasContextSize(\n canvas: HTMLCanvasElement,\n { height, width }: { height: number; width: number }\n ): void {\n if (!canvas) {\n return;\n }\n\n const devicePixelRatio = window.devicePixelRatio || 1;\n\n canvas.width = width * devicePixelRatio;\n canvas.height = height * devicePixelRatio;\n canvas.style.height = `${height}px`;\n canvas.style.width = `${width}px`;\n\n const context = canvas.getContext(\"2d\");\n context.scale(devicePixelRatio, devicePixelRatio);\n }\n\n private captureColorFieldColor = (x: number, y: number, skipEqual = true): void => {\n const {\n dimensions: {\n colorField: { height, width },\n },\n } = this;\n const saturation = Math.round((HSV_LIMITS.s / width) * x);\n const value = Math.round((HSV_LIMITS.v / height) * (height - y));\n\n this.internalColorSet(\n this.baseColorFieldColor.hsv().saturationv(saturation).value(value),\n skipEqual\n );\n };\n\n private initColorField = (canvas: HTMLCanvasElement): void => {\n this.colorFieldRenderingContext = canvas.getContext(\"2d\");\n this.updateCanvasSize(\"color-field\");\n this.drawColorControls();\n };\n\n private initHueSlider = (canvas: HTMLCanvasElement): void => {\n this.hueSliderRenderingContext = canvas.getContext(\"2d\");\n this.updateCanvasSize(\"hue-slider\");\n this.drawHueSlider();\n };\n\n private initOpacitySlider = (canvas: HTMLCanvasElement): void => {\n if (!canvas) {\n return;\n }\n\n this.opacitySliderRenderingContext = canvas.getContext(\"2d\");\n this.updateCanvasSize(\"opacity-slider\");\n this.drawOpacitySlider();\n };\n\n private updateCanvasSize(\n context: \"all\" | \"color-field\" | \"hue-slider\" | \"opacity-slider\" = \"all\"\n ): void {\n const { dimensions } = this;\n\n if (context === \"all\" || context === \"color-field\") {\n this.setCanvasContextSize(this.colorFieldRenderingContext?.canvas, dimensions.colorField);\n }\n\n const adjustedSliderDimensions = {\n width: dimensions.slider.width,\n height:\n dimensions.slider.height + (dimensions.thumb.radius - dimensions.slider.height / 2) * 2,\n };\n\n if (context === \"all\" || context === \"hue-slider\") {\n this.setCanvasContextSize(this.hueSliderRenderingContext?.canvas, adjustedSliderDimensions);\n }\n\n if (context === \"all\" || context === \"opacity-slider\") {\n this.setCanvasContextSize(\n this.opacitySliderRenderingContext?.canvas,\n adjustedSliderDimensions\n );\n }\n }\n\n private drawActiveColorFieldColor(): void {\n const { color } = this;\n\n if (!color) {\n return;\n }\n\n const hsvColor = color.hsv();\n\n const {\n dimensions: {\n colorField: { height, width },\n thumb: { radius },\n },\n } = this;\n\n const x = hsvColor.saturationv() / (HSV_LIMITS.s / width);\n const y = height - hsvColor.value() / (HSV_LIMITS.v / height);\n\n requestAnimationFrame(() => {\n this.colorFieldScopeLeft = x;\n this.colorFieldScopeTop = y;\n });\n\n this.drawThumb(this.colorFieldRenderingContext, radius, x, y, hsvColor);\n }\n\n private drawThumb(\n context: CanvasRenderingContext2D,\n radius: number,\n x: number,\n y: number,\n color: Color\n ): void {\n const startAngle = 0;\n const endAngle = 2 * Math.PI;\n const outlineWidth = 1;\n\n context.beginPath();\n context.arc(x, y, radius, startAngle, endAngle);\n context.fillStyle = \"#fff\";\n context.fill();\n context.strokeStyle = \"rgba(0,0,0,0.3)\";\n context.lineWidth = outlineWidth;\n context.stroke();\n\n context.beginPath();\n context.arc(x, y, radius - 3, startAngle, endAngle);\n context.fillStyle = color.rgb().alpha(1).string();\n context.fill();\n }\n\n private drawActiveHueSliderColor(): void {\n const { color } = this;\n\n if (!color) {\n return;\n }\n\n const hsvColor = color.hsv().saturationv(100).value(100);\n\n const {\n dimensions: {\n slider: { width },\n thumb: { radius },\n },\n } = this;\n\n const x = hsvColor.hue() / (HUE_LIMIT_CONSTRAINED / width);\n const y = radius;\n const sliderBoundX = this.getSliderBoundX(x, width, radius);\n\n requestAnimationFrame(() => {\n this.hueScopeLeft = sliderBoundX;\n });\n\n this.drawThumb(this.hueSliderRenderingContext, radius, sliderBoundX, y, hsvColor);\n }\n\n private drawHueSlider(): void {\n const context = this.hueSliderRenderingContext;\n const {\n dimensions: {\n slider: { height, width },\n thumb: { radius: thumbRadius },\n },\n } = this;\n\n const x = 0;\n const y = thumbRadius - height / 2;\n\n const gradient = context.createLinearGradient(0, 0, width, 0);\n\n const hueSliderColorStopKeywords = [\n \"red\",\n \"yellow\",\n \"lime\",\n \"cyan\",\n \"blue\",\n \"magenta\",\n \"#ff0004\" /* 1 unit less than #ff0 to avoid duplicate values within range */,\n ];\n\n const offset = 1 / (hueSliderColorStopKeywords.length - 1);\n let currentOffset = 0;\n\n hueSliderColorStopKeywords.forEach((keyword) => {\n gradient.addColorStop(currentOffset, Color(keyword).string());\n currentOffset += offset;\n });\n\n context.clearRect(0, 0, width, height + this.getSliderCapSpacing() * 2);\n\n this.drawSliderPath(context, height, width, x, y);\n\n context.fillStyle = gradient;\n context.fill();\n\n context.strokeStyle = \"rgba(0,0,0,0.3)\";\n context.lineWidth = 1;\n context.stroke();\n\n this.drawActiveHueSliderColor();\n }\n\n private drawOpacitySlider(): void {\n const context = this.opacitySliderRenderingContext;\n const {\n baseColorFieldColor: previousColor,\n dimensions: {\n slider: { height, width },\n thumb: { radius: thumbRadius },\n },\n } = this;\n\n const x = 0;\n const y = thumbRadius - height / 2;\n\n context.clearRect(0, 0, width, height + this.getSliderCapSpacing() * 2);\n\n const gradient = context.createLinearGradient(0, y, width, 0);\n const startColor = previousColor.rgb().alpha(0);\n const midColor = previousColor.rgb().alpha(0.5);\n const endColor = previousColor.rgb().alpha(1);\n\n gradient.addColorStop(0, startColor.string());\n gradient.addColorStop(0.5, midColor.string());\n gradient.addColorStop(1, endColor.string());\n\n this.drawSliderPath(context, height, width, x, y);\n\n const pattern = context.createPattern(this.getCheckeredBackgroundPattern(), \"repeat\");\n context.fillStyle = pattern;\n context.fill();\n\n context.fillStyle = gradient;\n context.fill();\n\n context.strokeStyle = \"rgba(0,0,0,0.3)\";\n context.lineWidth = 1;\n context.stroke();\n\n this.drawActiveOpacitySliderColor();\n }\n\n private drawSliderPath(\n context: CanvasRenderingContext2D,\n height: number,\n width: number,\n x: number,\n y: number\n ): void {\n const radius = height / 2 + 1;\n context.beginPath();\n context.moveTo(x + radius, y);\n context.lineTo(x + width - radius, y);\n context.quadraticCurveTo(x + width, y, x + width, y + radius);\n context.lineTo(x + width, y + height - radius);\n context.quadraticCurveTo(x + width, y + height, x + width - radius, y + height);\n context.lineTo(x + radius, y + height);\n context.quadraticCurveTo(x, y + height, x, y + height - radius);\n context.lineTo(x, y + radius);\n context.quadraticCurveTo(x, y, x + radius, y);\n context.closePath();\n }\n\n private getCheckeredBackgroundPattern(): HTMLCanvasElement {\n if (this.checkerPattern) {\n return this.checkerPattern;\n }\n\n const pattern = document.createElement(\"canvas\");\n pattern.width = 10;\n pattern.height = 10;\n const patternContext = pattern.getContext(\"2d\");\n\n patternContext.fillStyle = \"#ccc\";\n patternContext.fillRect(0, 0, 10, 10);\n patternContext.fillStyle = \"#fff\";\n patternContext.fillRect(0, 0, 5, 5);\n patternContext.fillRect(5, 5, 5, 5);\n\n this.checkerPattern = pattern;\n\n return pattern;\n }\n\n private drawActiveOpacitySliderColor(): void {\n const { color } = this;\n\n if (!color) {\n return;\n }\n\n const hsvColor = color;\n\n const {\n dimensions: {\n slider: { width },\n thumb: { radius },\n },\n } = this;\n\n const x = alphaToOpacity(hsvColor.alpha()) / (OPACITY_LIMITS.max / width);\n const y = radius;\n const sliderBoundX = this.getSliderBoundX(x, width, radius);\n\n requestAnimationFrame(() => {\n this.opacityScopeLeft = sliderBoundX;\n });\n\n this.drawThumb(this.opacitySliderRenderingContext, radius, sliderBoundX, y, hsvColor);\n }\n\n private getSliderBoundX(x: number, width: number, radius: number): number {\n const closeToEdge = closeToRangeEdge(x, width, radius);\n\n return closeToEdge === 0\n ? x\n : closeToEdge === -1\n ? remap(x, 0, width, radius, radius * 2)\n : remap(x, 0, width, width - radius * 2, width - radius);\n }\n\n private storeOpacityScope = (node: HTMLDivElement): void => {\n this.opacityScopeNode = node;\n };\n\n private handleOpacityScopeKeyDown = (event: KeyboardEvent): void => {\n const modifier = event.shiftKey ? 10 : 1;\n const { key } = event;\n const arrowKeyToXOffset = {\n ArrowUp: 0.01,\n ArrowRight: 0.01,\n ArrowDown: -0.01,\n ArrowLeft: -0.01,\n };\n\n if (arrowKeyToXOffset[key]) {\n event.preventDefault();\n const delta = arrowKeyToXOffset[key] * modifier;\n const alpha = this.baseColorFieldColor.alpha();\n const color = this.baseColorFieldColor.alpha(alpha + delta);\n this.internalColorSet(color, false);\n }\n };\n\n private updateColorFromChannels(channels: this[\"channels\"]): void {\n this.internalColorSet(Color(channels, this.channelMode));\n }\n\n private updateChannelsFromColor(color: Color | null): void {\n this.channels = color ? this.toChannels(color) : [null, null, null, null];\n }\n\n private toChannels(color: Color): Channels {\n const { channelMode } = this;\n\n const channels = color[channelMode]()\n .array()\n .map((value, index) => {\n const isAlpha = index === 3;\n return isAlpha ? value : Math.floor(value);\n });\n\n if (channels.length === 3) {\n channels.push(1); // Color omits alpha when 1\n }\n\n return channels as Channels;\n }\n\n private getAdjustedScopePosition(left: number, top: number): [number, number] {\n return [left - SCOPE_SIZE / 2, top - SCOPE_SIZE / 2];\n }\n}\n","export const CSS = {\n container: \"container\",\n hexInput: \"hex-input\",\n opacityInput: \"opacity-input\",\n};\n",":host {\n @apply block;\n}\n\n.container {\n @apply flex w-full items-center flex-nowrap;\n}\n\n.hex-input {\n @apply grow uppercase;\n}\n\n.opacity-input {\n inline-size: 68px;\n margin-inline-start: -1px;\n}\n\n:host([scale=\"s\"]) {\n .container {\n @apply flex-wrap gap-y-0.5;\n }\n\n .opacity-input {\n inline-size: unset;\n margin-inline-start: unset;\n }\n}\n\n:host([scale=\"l\"]) {\n .opacity-input {\n inline-size: 88px;\n }\n}\n\n@include base-component();\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Method,\n Prop,\n State,\n VNode,\n Watch,\n} from \"@stencil/core\";\nimport {\n alphaToOpacity,\n hexChar,\n hexify,\n isLonghandHex,\n isValidHex,\n normalizeHex,\n opacityToAlpha,\n rgbToHex,\n} from \"../color-picker/utils\";\nimport { CSS } from \"./resources\";\nimport { Scale } from \"../interfaces\";\nimport { Channels, RGB } from \"../color-picker/interfaces\";\nimport Color from \"color\";\nimport { focusElement } from \"../../utils/dom\";\nimport {\n componentFocusable,\n LoadableComponent,\n setComponentLoaded,\n setUpLoadableComponent,\n} from \"../../utils/loadable\";\nimport { NumberingSystem } from \"../../utils/locale\";\nimport { OPACITY_LIMITS } from \"../color-picker/resources\";\nimport { ColorPickerMessages } from \"../color-picker/assets/color-picker/t9n\";\n\nconst DEFAULT_COLOR = Color();\n\n@Component({\n tag: \"calcite-color-picker-hex-input\",\n styleUrl: \"color-picker-hex-input.scss\",\n shadow: true,\n})\nexport class ColorPickerHexInput implements LoadableComponent {\n //--------------------------------------------------------------------------\n //\n // Lifecycle\n //\n //--------------------------------------------------------------------------\n\n connectedCallback(): void {\n const { allowEmpty, alphaChannel, value } = this;\n\n if (value) {\n const normalized = normalizeHex(value, alphaChannel);\n\n if (isValidHex(normalized, alphaChannel)) {\n this.internalSetValue(normalized, normalized, false);\n }\n\n return;\n }\n\n if (allowEmpty) {\n this.internalSetValue(null, null, false);\n }\n }\n\n componentWillLoad(): void {\n setUpLoadableComponent(this);\n }\n\n componentDidLoad(): void {\n setComponentLoaded(this);\n }\n\n //--------------------------------------------------------------------------\n //\n // Public Properties\n //\n //--------------------------------------------------------------------------\n\n /**\n * When `false`, an empty color (`null`) will be allowed as a `value`. Otherwise, a color value is enforced on the component.\n *\n * When `true`, a color value is enforced, and clearing the input or blurring will restore the last valid `value`. When `false`, an empty color (`null`) will be allowed as a `value`.\n */\n @Prop() allowEmpty = false;\n\n /**\n * When true, the component will allow updates to the color's alpha value.\n */\n @Prop() alphaChannel = false;\n\n /**\n * Specifies accessible label for the input field.\n *\n * @deprecated use `messages` instead\n */\n @Prop() hexLabel = \"Hex\";\n\n /**\n * Messages are passed by parent component for accessible labels.\n *\n * @internal\n */\n @Prop() messages: ColorPickerMessages;\n\n /** Specifies the Unicode numeral system used by the component for localization. */\n @Prop() numberingSystem?: NumberingSystem;\n\n /** Specifies the size of the component. */\n @Prop({ reflect: true }) scale: Scale = \"m\";\n\n /**\n * The hex value.\n */\n @Prop({ mutable: true, reflect: true }) value: string = normalizeHex(\n hexify(DEFAULT_COLOR, this.alphaChannel),\n this.alphaChannel,\n true\n );\n\n @Watch(\"value\")\n handleValueChange(value: string, oldValue: string): void {\n this.internalSetValue(value, oldValue, false);\n }\n\n //--------------------------------------------------------------------------\n //\n // Events\n //\n //--------------------------------------------------------------------------\n\n /**\n * Emitted when the hex value changes.\n */\n @Event({ cancelable: false }) calciteColorPickerHexInputChange: EventEmitter<void>;\n\n private onHexInputBlur = (): void => {\n const node = this.hexInputNode;\n const inputValue = node.value;\n const hex = `#${inputValue}`;\n const { allowEmpty, internalColor } = this;\n const willClearValue = allowEmpty && !inputValue;\n const isLonghand = isLonghandHex(hex);\n\n // ensure modified pasted hex values are committed since we prevent default to remove the # char.\n this.onHexInputChange();\n\n if (willClearValue || (isValidHex(hex) && isLonghand)) {\n return;\n }\n\n // manipulating DOM directly since rerender doesn't update input value\n node.value =\n allowEmpty && !internalColor\n ? \"\"\n : this.formatHexForInternalInput(\n rgbToHex(\n // always display hex input in RRGGBB format\n internalColor.object() as any as RGB\n )\n );\n };\n\n private onOpacityInputBlur = (): void => {\n const node = this.opacityInputNode;\n const inputValue = node.value;\n const { allowEmpty, internalColor } = this;\n const willClearValue = allowEmpty && !inputValue;\n\n if (willClearValue) {\n return;\n }\n\n // manipulating DOM directly since rerender doesn't update input value\n node.value =\n allowEmpty && !internalColor ? \"\" : this.formatOpacityForInternalInput(internalColor);\n };\n\n private onHexInputChange = (): void => {\n const nodeValue = this.hexInputNode.value;\n let value = nodeValue;\n\n if (value) {\n const normalized = normalizeHex(value, false);\n const preserveExistingAlpha = isValidHex(normalized) && this.alphaChannel;\n if (preserveExistingAlpha && this.internalColor) {\n const alphaHex = normalizeHex(this.internalColor.hexa(), true).slice(-2);\n value = `${normalized + alphaHex}`;\n }\n }\n\n this.internalSetValue(value, this.value);\n };\n\n private onOpacityInputChange = (): void => {\n const node = this.opacityInputNode;\n let value: number | string;\n\n if (!node.value) {\n value = node.value;\n } else {\n const alpha = opacityToAlpha(Number(node.value));\n value = this.internalColor?.alpha(alpha).hexa();\n }\n\n this.internalSetValue(value, this.value);\n };\n\n protected onInputKeyDown = (event: KeyboardEvent): void => {\n const { altKey, ctrlKey, metaKey, shiftKey } = event;\n const { alphaChannel, hexInputNode, internalColor, value } = this;\n const { key } = event;\n const composedPath = event.composedPath();\n\n if (key === \"Tab\" || key === \"Enter\") {\n if (composedPath.includes(hexInputNode)) {\n this.onHexInputChange();\n } else {\n this.onOpacityInputChange();\n }\n\n if (key === \"Enter\") {\n event.preventDefault();\n }\n\n return;\n }\n\n const isNudgeKey = key === \"ArrowDown\" || key === \"ArrowUp\";\n const oldValue = this.value;\n\n if (isNudgeKey) {\n if (!value) {\n this.internalSetValue(this.previousNonNullValue, oldValue);\n event.preventDefault();\n return;\n }\n\n const direction = key === \"ArrowUp\" ? 1 : -1;\n const bump = shiftKey ? 10 : 1;\n\n this.internalSetValue(\n hexify(\n this.nudgeRGBChannels(\n internalColor,\n bump * direction,\n composedPath.includes(hexInputNode) ? \"rgb\" : \"a\"\n ),\n alphaChannel\n ),\n oldValue\n );\n\n event.preventDefault();\n return;\n }\n\n const withModifiers = altKey || ctrlKey || metaKey;\n const singleChar = key.length === 1;\n const validHexChar = hexChar.test(key);\n\n if (singleChar && !withModifiers && !validHexChar) {\n event.preventDefault();\n }\n };\n\n private onHexInputPaste = (event: ClipboardEvent): void => {\n const hex = event.clipboardData.getData(\"text\");\n\n if (isValidHex(hex)) {\n event.preventDefault();\n this.hexInputNode.value = hex.slice(1);\n }\n };\n\n //--------------------------------------------------------------------------\n //\n // Private State/Props\n //\n //--------------------------------------------------------------------------\n\n @Element() el: HTMLCalciteColorPickerHexInputElement;\n\n private hexInputNode: HTMLCalciteInputTextElement;\n\n /**\n * The last valid/selected color. Used as a fallback if an invalid hex code is entered.\n */\n @State() internalColor: Color | null = DEFAULT_COLOR;\n\n private opacityInputNode: HTMLCalciteInputNumberElement;\n\n private previousNonNullValue: string = this.value;\n\n //--------------------------------------------------------------------------\n //\n // Lifecycle\n //\n //--------------------------------------------------------------------------\n\n render(): VNode {\n const { alphaChannel, hexLabel, internalColor, messages, scale, value } = this;\n const hexInputValue = this.formatHexForInternalInput(value);\n const opacityInputValue = this.formatOpacityForInternalInput(internalColor);\n const inputScale = scale === \"l\" ? \"m\" : \"s\";\n\n return (\n <div class={CSS.container}>\n <calcite-input-text\n class={CSS.hexInput}\n label={messages?.hex || hexLabel}\n maxLength={6}\n onCalciteInputTextChange={this.onHexInputChange}\n onCalciteInternalInputTextBlur={this.onHexInputBlur}\n onKeyDown={this.onInputKeyDown}\n onPaste={this.onHexInputPaste}\n prefixText=\"#\"\n scale={inputScale}\n value={hexInputValue}\n // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530)\n ref={this.storeHexInputRef}\n />\n {alphaChannel ? (\n <calcite-input-number\n class={CSS.opacityInput}\n key=\"opacity-input\"\n label={messages?.opacity}\n max={OPACITY_LIMITS.max}\n maxLength={3}\n min={OPACITY_LIMITS.min}\n numberButtonType=\"none\"\n numberingSystem={this.numberingSystem}\n onCalciteInputNumberChange={this.onOpacityInputChange}\n onCalciteInternalInputNumberBlur={this.onOpacityInputBlur}\n onKeyDown={this.onInputKeyDown}\n scale={inputScale}\n suffixText=\"%\"\n value={opacityInputValue}\n // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530)\n ref={this.storeOpacityInputRef}\n />\n ) : null}\n </div>\n );\n }\n\n //--------------------------------------------------------------------------\n //\n // Public Methods\n //\n //--------------------------------------------------------------------------\n\n /** Sets focus on the component. */\n @Method()\n async setFocus(): Promise<void> {\n await componentFocusable(this);\n\n return focusElement(this.hexInputNode);\n }\n\n //--------------------------------------------------------------------------\n //\n // Private Methods\n //\n //--------------------------------------------------------------------------\n\n private internalSetValue(value: string | null, oldValue: string | null, emit = true): void {\n if (value) {\n const { alphaChannel } = this;\n const normalized = normalizeHex(value, alphaChannel, alphaChannel);\n\n if (isValidHex(normalized, alphaChannel)) {\n const { internalColor: currentColor } = this;\n const nextColor = Color(normalized);\n const normalizedLonghand = normalizeHex(hexify(nextColor, alphaChannel), alphaChannel);\n\n const changed =\n !currentColor ||\n normalizedLonghand !== normalizeHex(hexify(currentColor, alphaChannel), alphaChannel);\n\n this.internalColor = nextColor;\n this.previousNonNullValue = normalizedLonghand;\n this.value = normalizedLonghand;\n\n if (changed && emit) {\n this.calciteColorPickerHexInputChange.emit();\n }\n\n return;\n }\n } else if (this.allowEmpty) {\n this.internalColor = null;\n this.value = null;\n\n if (emit) {\n this.calciteColorPickerHexInputChange.emit();\n }\n\n return;\n }\n\n this.value = oldValue;\n }\n\n private storeHexInputRef = (node: HTMLCalciteInputTextElement): void => {\n this.hexInputNode = node;\n };\n\n private storeOpacityInputRef = (node: HTMLCalciteInputNumberElement): void => {\n this.opacityInputNode = node;\n };\n\n private formatHexForInternalInput(hex: string): string {\n return hex ? hex.replace(\"#\", \"\").slice(0, 6) : \"\";\n }\n\n private formatOpacityForInternalInput(color: Color): string {\n return color ? `${alphaToOpacity(color.alpha())}` : \"\";\n }\n\n private nudgeRGBChannels(color: Color, amount: number, context: \"rgb\" | \"a\"): Color {\n let nudgedChannels: Channels;\n const channels = color.array();\n const rgbChannels = channels.slice(0, 3);\n\n if (context === \"rgb\") {\n const nudgedRGBChannels = rgbChannels.map((channel) => channel + amount);\n nudgedChannels = [\n ...nudgedRGBChannels,\n this.alphaChannel ? channels[3] : undefined,\n ] as Channels;\n } else {\n const nudgedAlpha = opacityToAlpha(alphaToOpacity(color.alpha()) + amount);\n nudgedChannels = [...rgbChannels, nudgedAlpha] as Channels;\n }\n\n return Color(nudgedChannels);\n }\n}\n","export const CSS = {\n swatch: \"swatch\",\n noColorSwatch: \"swatch--no-color\",\n checker: \"checker\",\n};\n\nexport const COLORS = {\n borderLight: \"rgba(0, 0, 0, 0.3)\",\n borderDark: \"rgba(255, 255, 255, 0.15)\",\n};\n\nconst checkerSquareSize = 4;\n\nexport const CHECKER_DIMENSIONS = {\n squareSize: checkerSquareSize,\n size: checkerSquareSize * 2,\n};\n","$size-s: 20px;\n$size-m: 24px;\n$size-l: 28px;\n\n:host {\n @apply relative inline-flex;\n}\n\n:host([scale=\"s\"]) {\n @apply h-5 w-5;\n}\n\n:host([scale=\"m\"]) {\n @apply h-6 w-6;\n}\n\n:host([scale=\"l\"]) {\n @apply h-8 w-8;\n}\n\n.swatch {\n @apply overflow-hidden;\n block-size: inherit;\n inline-size: inherit;\n\n rect {\n @apply transition-all duration-150 ease-in-out;\n }\n}\n\n.swatch--no-color {\n rect {\n fill: var(--calcite-color-foreground-1);\n }\n\n line {\n stroke: var(--calcite-color-status-danger);\n }\n}\n\n.checker {\n fill: #cacaca;\n}\n\n@include base-component();\n","import { Component, Element, Fragment, h, Prop, VNode, Watch } from \"@stencil/core\";\nimport Color from \"color\";\nimport { getModeName } from \"../../utils/dom\";\nimport { Scale } from \"../interfaces\";\nimport { hexify } from \"../color-picker/utils\";\nimport { CHECKER_DIMENSIONS, COLORS, CSS } from \"./resources\";\n\n@Component({\n tag: \"calcite-color-picker-swatch\",\n styleUrl: \"color-picker-swatch.scss\",\n shadow: true,\n})\nexport class ColorPickerSwatch {\n //--------------------------------------------------------------------------\n //\n // Properties\n //\n //--------------------------------------------------------------------------\n\n /**\n * When `true`, the component is active.\n */\n @Prop({\n reflect: true,\n })\n active = false;\n\n /**\n * The color value.\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/CSS/color_value\n */\n @Prop()\n color: string | null;\n\n @Watch(\"color\")\n handleColorChange(color: string | null): void {\n this.internalColor = color ? Color(color) : null;\n }\n\n /**\n * Specifies the size of the component.\n */\n @Prop({\n reflect: true,\n })\n scale: Scale = \"m\";\n\n //--------------------------------------------------------------------------\n //\n // Private State/Props\n //\n //--------------------------------------------------------------------------\n\n @Element() el: HTMLCalciteColorPickerSwatchElement;\n\n private internalColor: Color;\n\n //--------------------------------------------------------------------------\n //\n // Lifecycle\n //\n //--------------------------------------------------------------------------\n\n componentWillLoad(): void {\n this.handleColorChange(this.color);\n }\n\n render(): VNode {\n const isEmpty = !this.internalColor;\n const classes = {\n [CSS.swatch]: true,\n [CSS.noColorSwatch]: isEmpty,\n };\n\n return (\n <svg class={classes} xmlns=\"http://www.w3.org/2000/svg\">\n {this.renderSwatch()}\n </svg>\n );\n }\n\n renderSwatch(): VNode {\n const { active, el, internalColor } = this;\n const borderRadius = active ? \"100%\" : \"0\";\n const theme = getModeName(el);\n const borderColor = theme === \"light\" ? COLORS.borderLight : COLORS.borderDark;\n const commonSwatchProps = {\n height: \"100%\",\n rx: borderRadius,\n stroke: borderColor,\n\n // stroke-width and clip-path are needed to hide overflowing portion of stroke\n // see https://stackoverflow.com/a/7273346/194216\n\n // using attribute to work around Stencil using the prop name vs the attribute when rendering\n [\"stroke-width\"]: \"2\",\n width: \"100%\",\n };\n\n const isEmpty = !internalColor;\n\n if (isEmpty) {\n return (\n <Fragment>\n <clipPath id=\"shape\">\n <rect height=\"100%\" rx={borderRadius} width=\"100%\" />\n </clipPath>\n <rect\n clip-path={`inset(0 round ${borderRadius})`}\n rx={borderRadius}\n {...commonSwatchProps}\n />\n <line clip-path=\"url(#shape)\" stroke-width=\"3\" x1=\"100%\" x2=\"0\" y1=\"0\" y2=\"100%\" />\n </Fragment>\n );\n }\n\n const alpha = internalColor.alpha();\n const hex = hexify(internalColor);\n const hexa = hexify(internalColor, alpha < 1);\n\n return (\n <Fragment>\n <title>{hexa}</title>\n <defs>\n <pattern\n height={CHECKER_DIMENSIONS.size}\n id=\"checker\"\n patternUnits=\"userSpaceOnUse\"\n width={CHECKER_DIMENSIONS.size}\n x=\"0\"\n y=\"0\"\n >\n <rect\n class={CSS.checker}\n height={CHECKER_DIMENSIONS.squareSize}\n width={CHECKER_DIMENSIONS.squareSize}\n x=\"0\"\n y=\"0\"\n />\n <rect\n class={CSS.checker}\n height={CHECKER_DIMENSIONS.squareSize}\n width={CHECKER_DIMENSIONS.squareSize}\n x={CHECKER_DIMENSIONS.squareSize}\n y={CHECKER_DIMENSIONS.squareSize}\n />\n </pattern>\n </defs>\n <rect fill=\"url(#checker)\" height=\"100%\" rx={borderRadius} width=\"100%\" />\n <rect\n fill={hex}\n style={{\n \"clip-path\":\n alpha < 1 ? \"polygon(100% 0, 0 0, 0 100%)\" : `inset(0 round ${borderRadius})`,\n }}\n {...commonSwatchProps}\n />\n {alpha < 1 ? (\n <rect\n fill={hexa}\n key=\"opacity-fill\"\n style={{ \"clip-path\": \"polygon(100% 0, 100% 100%, 0 100%)\" }}\n {...commonSwatchProps}\n />\n ) : null}\n </Fragment>\n );\n }\n}\n"],"version":3}