@luzmo/analytics-components-kit 1.0.1-alpha.85 → 1.0.1-alpha.86

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 (251) hide show
  1. package/angular/README.md +1 -0
  2. package/angular/components/ai-interaction-textarea.component.ts +2 -0
  3. package/angular/components/dataset-icon.component.ts +21 -0
  4. package/angular/components/dataset-selector-row.component.ts +2 -0
  5. package/angular/esm/components/ai-interaction-textarea.component.d.ts +2 -1
  6. package/angular/esm/components/ai-interaction-textarea.component.js +7 -2
  7. package/angular/esm/components/dataset-icon.component.d.ts +9 -0
  8. package/angular/esm/components/dataset-icon.component.js +36 -0
  9. package/angular/esm/components/dataset-selector-row.component.d.ts +2 -1
  10. package/angular/esm/components/dataset-selector-row.component.js +7 -2
  11. package/angular/esm/index.d.ts +3 -1
  12. package/angular/esm/index.js +3 -0
  13. package/angular/esm/types.d.ts +14 -0
  14. package/angular/index.ts +3 -0
  15. package/angular/types.ts +13 -0
  16. package/components/ai-chat-messages-container/index.cjs +1 -1
  17. package/components/ai-chat-messages-container/index.js +2 -2
  18. package/components/ai-interaction-textarea/ai-interaction-textarea.d.ts +7 -1
  19. package/components/ai-interaction-textarea/index.cjs +32 -28
  20. package/components/ai-interaction-textarea/index.js +62 -49
  21. package/components/area-chart-options.config-C7sMAHco.cjs +20 -0
  22. package/components/{area-chart-options.config-u8itidsi.js → area-chart-options.config-_J0sG4NF.js} +26 -14
  23. package/components/{bar-chart-options.config-DIirbAJ0.js → bar-chart-options.config-D1mb5TDl.js} +35 -21
  24. package/components/bar-chart-options.config-DcxEkOT5.cjs +20 -0
  25. package/components/box-plot-options.config-SrrbDEYW.cjs +20 -0
  26. package/components/{box-plot-options.config-BWROiguA.js → box-plot-options.config-xu_i6ms7.js} +88 -52
  27. package/components/{bubble-chart-options.config-4QD8VPhU.js → bubble-chart-options.config-BacgXkJ_.js} +18 -9
  28. package/components/bubble-chart-options.config-Ihn6eVQI.cjs +20 -0
  29. package/components/{bullet-chart-options.config-3bH7uekx.js → bullet-chart-options.config-CDPpX1yc.js} +1 -1
  30. package/components/{bullet-chart-options.config-tWb6Fio-.cjs → bullet-chart-options.config-DfS4Bwds.cjs} +1 -1
  31. package/components/calculate-data-item-icon-DZDqb3xu.js +139 -0
  32. package/components/{calculate-data-item-icon-CX4VW9Km.cjs → calculate-data-item-icon-DjW1_RI1.cjs} +1 -1
  33. package/components/{choropleth-map-options.config-CMxx3ORp.js → choropleth-map-options.config-B_W9-rhe.js} +84 -63
  34. package/components/choropleth-map-options.config-ZW8yoZH2.cjs +20 -0
  35. package/components/{circular-gauge-options.config-DhIKn44k.js → circular-gauge-options.config-DAIjz4Rl.js} +36 -23
  36. package/components/circular-gauge-options.config-msZ4mfpN.cjs +20 -0
  37. package/components/color-B6LaL8qz.cjs +20 -0
  38. package/components/{color-B7m0j8lX.js → color-DuJ4-73S.js} +950 -941
  39. package/components/{color-range-utils-BSfqtB3A.js → color-range-utils-Bvo9sm5A.js} +32 -31
  40. package/components/color-range-utils-C5yXW7ZC.cjs +20 -0
  41. package/components/{column-chart-options.config-D5-yR7iq.js → column-chart-options.config-B5SjBVdy.js} +37 -27
  42. package/components/column-chart-options.config-BjDvA7i9.cjs +20 -0
  43. package/components/{conditional-number-options.config-DPYsdML5.js → conditional-number-options.config-BCEpSK9J.js} +40 -24
  44. package/components/conditional-number-options.config-DgzUo0xi.cjs +20 -0
  45. package/components/dataset-icon/dataset-icon.d.ts +45 -0
  46. package/components/dataset-icon/index.cjs +60 -0
  47. package/components/dataset-icon/index.d.ts +7 -0
  48. package/components/dataset-icon/index.js +167 -0
  49. package/components/dataset-selector-list/dataset-selector-list.d.ts +1 -0
  50. package/components/dataset-selector-list/index.cjs +10 -8
  51. package/components/dataset-selector-list/index.js +68 -68
  52. package/components/dataset-selector-row/dataset-selector-row.d.ts +7 -0
  53. package/components/dataset-selector-row/index.cjs +21 -18
  54. package/components/dataset-selector-row/index.js +63 -57
  55. package/components/{date-comparison-filter-options.config-QaoWaFUn.cjs → date-comparison-filter-options.config-DAVncmi0.cjs} +1 -1
  56. package/components/{date-comparison-filter-options.config-CSwGyuBg.js → date-comparison-filter-options.config-JA_yYpJa.js} +6 -3
  57. package/components/{date-filter-options.config-n-zhWaYa.cjs → date-filter-options.config-CWPMtA18.cjs} +1 -1
  58. package/components/{date-filter-options.config-BTVyHRkp.js → date-filter-options.config-DBRxlTWy.js} +6 -3
  59. package/components/display-settings/index.cjs +1 -1
  60. package/components/display-settings/index.js +1 -1
  61. package/components/display-settings-binning/index.cjs +5 -5
  62. package/components/display-settings-binning/index.js +30 -29
  63. package/components/display-settings-datetime/index.cjs +29 -29
  64. package/components/display-settings-datetime/index.js +120 -112
  65. package/components/display-settings-grand-totals/index.cjs +4 -4
  66. package/components/display-settings-grand-totals/index.js +24 -23
  67. package/components/display-settings-numeric/index.cjs +48 -48
  68. package/components/display-settings-numeric/index.js +211 -194
  69. package/components/display-settings-period-over-period/index.cjs +16 -16
  70. package/components/display-settings-period-over-period/index.js +97 -91
  71. package/components/{donut-chart-options.config-3ZqX8Cbb.js → donut-chart-options.config-BulUEiaH.js} +37 -21
  72. package/components/donut-chart-options.config-tNpqBZfR.cjs +20 -0
  73. package/components/draggable-data-item/index.cjs +8 -8
  74. package/components/draggable-data-item/index.js +45 -44
  75. package/components/draggable-data-item-level/index.cjs +11 -11
  76. package/components/draggable-data-item-level/index.js +92 -89
  77. package/components/{dropdown-filter-options.config-CGJTtgAX.js → dropdown-filter-options.config-D9dvPypF.js} +10 -7
  78. package/components/{dropdown-filter-options.config-DJvfCTk7.cjs → dropdown-filter-options.config-DS-MORmq.cjs} +1 -1
  79. package/components/droppable-slot/index.cjs +20 -20
  80. package/components/droppable-slot/index.js +181 -167
  81. package/components/edit-item/index.cjs +9 -9
  82. package/components/edit-item/index.js +119 -116
  83. package/components/edit-option/index.cjs +1 -1
  84. package/components/edit-option/index.js +1 -1
  85. package/components/edit-option-action-button-group/index.cjs +8 -8
  86. package/components/edit-option-action-button-group/index.js +53 -52
  87. package/components/{edit-option-base-Bh29-Cak.js → edit-option-base-DIc7iC-b.js} +1 -1
  88. package/components/{edit-option-base-tFr8Qg2B.cjs → edit-option-base-VhTih9T1.cjs} +1 -1
  89. package/components/edit-option-color-palette-picker/index.cjs +1 -1
  90. package/components/edit-option-color-palette-picker/index.js +1 -1
  91. package/components/edit-option-color-picker/index.cjs +1 -1
  92. package/components/edit-option-color-picker/index.js +1 -1
  93. package/components/edit-option-color-range/index.cjs +19 -19
  94. package/components/edit-option-color-range/index.js +117 -106
  95. package/components/edit-option-multi-language-field/index.cjs +3 -3
  96. package/components/edit-option-multi-language-field/index.js +27 -26
  97. package/components/edit-option-number-field/index.cjs +1 -1
  98. package/components/edit-option-number-field/index.js +1 -1
  99. package/components/edit-option-picker/index.cjs +5 -5
  100. package/components/edit-option-picker/index.js +7 -7
  101. package/components/edit-option-position-picker/index.cjs +4 -4
  102. package/components/edit-option-position-picker/index.js +25 -21
  103. package/components/edit-option-positions-number-field/index.cjs +9 -9
  104. package/components/edit-option-positions-number-field/index.js +81 -76
  105. package/components/edit-option-radio-button-group/index.cjs +6 -6
  106. package/components/edit-option-radio-button-group/index.js +22 -21
  107. package/components/edit-option-slider/index.cjs +1 -1
  108. package/components/edit-option-slider/index.js +1 -1
  109. package/components/edit-option-switch/index.cjs +1 -1
  110. package/components/edit-option-switch/index.js +1 -1
  111. package/components/edit-option-text-field/index.cjs +2 -2
  112. package/components/edit-option-text-field/index.js +23 -22
  113. package/components/en-BKBhKBXY.cjs +20 -0
  114. package/components/en-BOTjhwEc.js +1488 -0
  115. package/components/{en-GB-CbNfyZMo.js → en-GB-CEHEs8F2.js} +1 -1
  116. package/components/{en-GB-CXVKFWyH.cjs → en-GB-DG6uS3sM.cjs} +1 -1
  117. package/components/{evolution-number-options.config-Bc9eKYnn.cjs → evolution-number-options.config-BgIZY4gQ.cjs} +1 -1
  118. package/components/{evolution-number-options.config-BIPO_4n3.js → evolution-number-options.config-DzkfeoIN.js} +14 -11
  119. package/components/{extrapolate-color-C0n1UDs-.cjs → extrapolate-color-0j_AeYkz.cjs} +1 -1
  120. package/components/{extrapolate-color-v1PimdQr.js → extrapolate-color-CC9CURf6.js} +1 -1
  121. package/components/filter-data-item-picker/index.cjs +7 -7
  122. package/components/filter-data-item-picker/index.js +86 -85
  123. package/components/filter-expression-picker/index.cjs +1 -1
  124. package/components/filter-expression-picker/index.js +1 -1
  125. package/components/filter-item/index.cjs +6 -6
  126. package/components/filter-item/index.js +119 -109
  127. package/components/filter-value-picker/index.cjs +2 -2
  128. package/components/filter-value-picker/index.js +36 -34
  129. package/components/filter-value-picker-datetime/index.cjs +8 -8
  130. package/components/filter-value-picker-datetime/index.js +71 -56
  131. package/components/filter-value-picker-hierarchy/index.cjs +12 -12
  132. package/components/filter-value-picker-hierarchy/index.js +124 -113
  133. package/components/filter-value-picker-numeric/index.cjs +8 -8
  134. package/components/filter-value-picker-numeric/index.js +110 -101
  135. package/components/focusable-B3E_hQmm.cjs +20 -0
  136. package/components/{focusable-BS2pbY7w.js → focusable-DCIFkpiW.js} +26 -24
  137. package/components/{funnel-chart-options.config-CrJy2U7_.js → funnel-chart-options.config-C_VjTOvD.js} +20 -5
  138. package/components/funnel-chart-options.config-D7H7gFcx.cjs +20 -0
  139. package/components/{get-css-variable-CuDaWSjr.cjs → get-css-variable-DLiZYZEi.cjs} +2 -2
  140. package/components/{get-css-variable-DEf4GhTH.js → get-css-variable-YlLiVgo8.js} +4 -4
  141. package/components/grid/index.cjs +46 -46
  142. package/components/grid/index.js +1873 -2612
  143. package/components/{heat-map-options.config-CmL87j1j.js → heat-map-options.config-BnLWe8jS.js} +41 -35
  144. package/components/heat-map-options.config-DVH-Bb5-.cjs +20 -0
  145. package/components/heat-table-options.config-B12JEYnp.cjs +20 -0
  146. package/components/{heat-table-options.config-BrCYAgYD.js → heat-table-options.config-CUsDdgUr.js} +88 -60
  147. package/components/helpers-DXQwEH1P.cjs +20 -0
  148. package/components/helpers-v1bPALRP.js +91 -0
  149. package/components/hexbin-map-options.config-DZERRhM8.cjs +20 -0
  150. package/components/{hexbin-map-options.config-BguV1w8q.js → hexbin-map-options.config-F-7uCqxb.js} +38 -20
  151. package/components/index-BPN3bG9X.js +1733 -0
  152. package/components/{index-BNAmjOkm.cjs → index-BPNsFiyq.cjs} +4 -4
  153. package/components/index-CQ9ck-BO.cjs +249 -0
  154. package/components/index-CXn67vdn.cjs +121 -0
  155. package/components/{index-haa7WNrl.js → index-CdIUfo-L.js} +481 -453
  156. package/components/{index-3WsfvkZF.js → index-Do7O9azB.js} +123 -112
  157. package/components/{index-BDFBUGBc.js → index-PMDgRSzR.js} +104 -94
  158. package/components/index-cfj52IbK.cjs +20 -0
  159. package/components/index.cjs +1 -1
  160. package/components/index.js +90 -88
  161. package/components/item-options-configs.cjs +1 -1
  162. package/components/item-options-configs.js +37 -37
  163. package/components/{line-chart-options.config-BhirTGqD.js → line-chart-options.config-DB3IsXXr.js} +28 -13
  164. package/components/line-chart-options.config-DSugoe0t.cjs +20 -0
  165. package/components/{localize-CcDpq940.js → localize-BX7q0S0M.js} +10 -10
  166. package/components/{localize-C4zNlrwK.cjs → localize-r7ALOUy_.cjs} +1 -1
  167. package/components/{marker-map-options.config-Bx17jmiq.js → marker-map-options.config-DPJ955tt.js} +1 -1
  168. package/components/{marker-map-options.config-CvhCylSC.cjs → marker-map-options.config-_FYZzRwA.cjs} +1 -1
  169. package/components/pivot-table-options.config-BiJXKSFR.cjs +20 -0
  170. package/components/{pivot-table-options.config-CFc7y0IT.js → pivot-table-options.config-DNK_AIG7.js} +24 -15
  171. package/components/pyramid-chart-options.config-C4zbFS26.cjs +20 -0
  172. package/components/{pyramid-chart-options.config-2Waxb11l.js → pyramid-chart-options.config-CcVMatYx.js} +43 -29
  173. package/components/{radar-chart-options.config-CPN5fOl8.js → radar-chart-options.config-CUZn_3Fd.js} +23 -11
  174. package/components/radar-chart-options.config-EqQu6PTh.cjs +20 -0
  175. package/components/{regular-table-options.config-CFKCJQK1.js → regular-table-options.config-BoLZsBry.js} +23 -17
  176. package/components/{regular-table-options.config-YRuoijIk.cjs → regular-table-options.config-DTx3RTnS.cjs} +1 -1
  177. package/components/{route-map-options.config-CyolTJfK.js → route-map-options.config-CN86T7c0.js} +109 -87
  178. package/components/route-map-options.config-D7NJePTu.cjs +20 -0
  179. package/components/{sankey-diagram-options.config-D7OSvSqm.cjs → sankey-diagram-options.config-RFB83YLZ.cjs} +1 -1
  180. package/components/{sankey-diagram-options.config-Ldjk84ro.js → sankey-diagram-options.config-tVLKy_Zn.js} +10 -7
  181. package/components/scatter-plot-options.config-CFfGJXsV.cjs +20 -0
  182. package/components/{scatter-plot-options.config-CfxEfkQ1.js → scatter-plot-options.config-Corlzno1.js} +86 -56
  183. package/components/{search-filter-options.config-Oqco9BKj.cjs → search-filter-options.config-BCaDlYqZ.cjs} +1 -1
  184. package/components/{search-filter-options.config-C0syQmP4.js → search-filter-options.config-BE3JhR-F.js} +6 -3
  185. package/components/{set-locale-nv7fWEtl.js → set-locale-B-Tz2sdI.js} +8 -1
  186. package/components/{slicer-filter-options.config-DmOe3440.js → slicer-filter-options.config-3JZZcw5C.js} +18 -9
  187. package/components/slicer-filter-options.config-DNI-XevE.cjs +20 -0
  188. package/components/{slider-filter-options.config-B1M8RcDs.js → slider-filter-options.config-DH4SS8wH.js} +1 -1
  189. package/components/{slider-filter-options.config-k45I-t6G.cjs → slider-filter-options.config-_8Z2zKmU.cjs} +1 -1
  190. package/components/slot-contents-picker/index.cjs +33 -33
  191. package/components/slot-contents-picker/index.js +205 -194
  192. package/components/slot-menu/index.cjs +12 -12
  193. package/components/slot-menu/index.js +184 -171
  194. package/components/slot-menu-list/index.cjs +3 -3
  195. package/components/slot-menu-list/index.js +103 -97
  196. package/components/speedometer-chart-options.config-BX9LTQBH.cjs +20 -0
  197. package/components/{speedometer-chart-options.config-CzOmuEF8.js → speedometer-chart-options.config-SL581yOa.js} +53 -31
  198. package/components/{spike-map-options.config-Cbt1YUw6.js → spike-map-options.config-C5KewecZ.js} +122 -91
  199. package/components/spike-map-options.config-DoBFXPmN.cjs +20 -0
  200. package/components/{sunburst-chart-options.config-Yrxc2i57.cjs → sunburst-chart-options.config-AbNjWS6t.cjs} +1 -1
  201. package/components/{sunburst-chart-options.config-_dyLQxPJ.js → sunburst-chart-options.config-CNauGQJv.js} +20 -9
  202. package/components/{symbol-map-options.config-BORL1NSU.js → symbol-map-options.config-DdDA4aa7.js} +20 -11
  203. package/components/symbol-map-options.config-m-lwLTtu.cjs +20 -0
  204. package/components/treemap-chart-options.config-C0Q9aQ1Z.cjs +20 -0
  205. package/components/{treemap-chart-options.config-B9i9qIm_.js → treemap-chart-options.config-D5AJaF_u.js} +37 -20
  206. package/components/utils.cjs +1 -1
  207. package/components/utils.js +65 -64
  208. package/components/{video-options.config-B0asgYt8.cjs → video-options.config-CGsDTwHc.cjs} +1 -1
  209. package/components/{video-options.config-UX-9MDfS.js → video-options.config-Dk36zJ1B.js} +10 -7
  210. package/components/{wordcloud-chart-options.config-BKtJT8Va.cjs → wordcloud-chart-options.config-vGfCW8kE.cjs} +1 -1
  211. package/components/{wordcloud-chart-options.config-BoB_KuhA.js → wordcloud-chart-options.config-w2NUIWVA.js} +7 -4
  212. package/custom-elements.json +154 -20
  213. package/index.d.ts +1 -0
  214. package/package.json +6 -1
  215. package/types.d.ts +14 -0
  216. package/components/area-chart-options.config-Bl8bhhOo.cjs +0 -20
  217. package/components/bar-chart-options.config-CePAqM83.cjs +0 -20
  218. package/components/box-plot-options.config-BVNrV2eD.cjs +0 -20
  219. package/components/bubble-chart-options.config-BDgOe3GQ.cjs +0 -20
  220. package/components/calculate-data-item-icon-C8CbsMQf.js +0 -139
  221. package/components/choropleth-map-options.config-CWJACFd0.cjs +0 -20
  222. package/components/circular-gauge-options.config-BMxgq3zH.cjs +0 -20
  223. package/components/color-Czp4Im5q.cjs +0 -20
  224. package/components/color-range-utils-DYYR-iwx.cjs +0 -20
  225. package/components/column-chart-options.config-BV9R3ssH.cjs +0 -20
  226. package/components/conditional-number-options.config-Co099Qfm.cjs +0 -20
  227. package/components/donut-chart-options.config-BQyPgnC9.cjs +0 -20
  228. package/components/en--a5SfjnM.cjs +0 -20
  229. package/components/en-CtCctD2c.js +0 -1483
  230. package/components/focusable-QLh-LlNt.cjs +0 -20
  231. package/components/funnel-chart-options.config-DrP4AFgk.cjs +0 -20
  232. package/components/heat-map-options.config-CIHnPdYE.cjs +0 -20
  233. package/components/heat-table-options.config-DTlZRc_i.cjs +0 -20
  234. package/components/helpers-9I0oLoUB.cjs +0 -20
  235. package/components/helpers-bR8Ibjqh.js +0 -79
  236. package/components/hexbin-map-options.config-CKnn3VAB.cjs +0 -20
  237. package/components/index-BGb_wRRW.js +0 -1766
  238. package/components/index-BUal0r_D.cjs +0 -121
  239. package/components/index-D1Y5TRsH.cjs +0 -20
  240. package/components/index-DvkzMbLt.cjs +0 -249
  241. package/components/line-chart-options.config-Cqwou5u6.cjs +0 -20
  242. package/components/pivot-table-options.config-uZDAertf.cjs +0 -20
  243. package/components/pyramid-chart-options.config-DoGfEvzU.cjs +0 -20
  244. package/components/radar-chart-options.config-CtNUMN1l.cjs +0 -20
  245. package/components/route-map-options.config-CVTk5RVL.cjs +0 -20
  246. package/components/scatter-plot-options.config-5gN7pMTm.cjs +0 -20
  247. package/components/slicer-filter-options.config-CrusP6a0.cjs +0 -20
  248. package/components/speedometer-chart-options.config-B4ceg_qI.cjs +0 -20
  249. package/components/spike-map-options.config-BkkDqb4g.cjs +0 -20
  250. package/components/symbol-map-options.config-NpBKm64d.cjs +0 -20
  251. package/components/treemap-chart-options.config-x4J54WSw.cjs +0 -20
@@ -17,38 +17,41 @@
17
17
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
18
  * SOFTWARE.
19
19
  * */
20
- function C(t, e) {
20
+ var tr = Object.defineProperty;
21
+ var rr = (t, e, r) => e in t ? tr(t, e, { enumerable: !0, configurable: !0, writable: !0, value: r }) : t[e] = r;
22
+ var ve = (t, e, r) => rr(t, typeof e != "symbol" ? e + "" : e, r);
23
+ function L(t, e) {
21
24
  let r = t.length;
22
- Array.isArray(t[0]) || (t = [t]), Array.isArray(e[0]) || (e = e.map((o) => [o]));
23
- let n = e[0].length, a = e[0].map((o, i) => e.map((l) => l[i])), s = t.map((o) => a.map((i) => {
25
+ Array.isArray(t[0]) || (t = [t]), Array.isArray(e[0]) || (e = e.map((i) => [i]));
26
+ let n = e[0].length, a = e[0].map((i, o) => e.map((l) => l[o])), s = t.map((i) => a.map((o) => {
24
27
  let l = 0;
25
- if (!Array.isArray(o)) {
26
- for (let f of i)
27
- l += o * f;
28
+ if (!Array.isArray(i)) {
29
+ for (let c of o)
30
+ l += i * c;
28
31
  return l;
29
32
  }
30
- for (let f = 0; f < o.length; f++)
31
- l += o[f] * (i[f] || 0);
33
+ for (let c = 0; c < i.length; c++)
34
+ l += i[c] * (o[c] || 0);
32
35
  return l;
33
36
  }));
34
- return r === 1 && (s = s[0]), n === 1 ? s.map((o) => o[0]) : s;
37
+ return r === 1 && (s = s[0]), n === 1 ? s.map((i) => i[0]) : s;
35
38
  }
36
- function ce(t) {
37
- return Y(t) === "string";
39
+ function ue(t) {
40
+ return D(t) === "string";
38
41
  }
39
- function Y(t) {
42
+ function D(t) {
40
43
  return (Object.prototype.toString.call(t).match(/^\[object\s+(.*?)\]$/)[1] || "").toLowerCase();
41
44
  }
42
- function Se(t, { precision: e, unit: r }) {
43
- return D(t) ? "none" : lr(t, e) + (r ?? "");
45
+ function Re(t, { precision: e, unit: r }) {
46
+ return X(t) ? "none" : d0(t, e) + (r ?? "");
44
47
  }
45
- function D(t) {
46
- return Number.isNaN(t) || t instanceof Number && t?.none;
48
+ function X(t) {
49
+ return Number.isNaN(t) || t instanceof Number && (t == null ? void 0 : t.none);
47
50
  }
48
- function S(t) {
49
- return D(t) ? 0 : t;
51
+ function R(t) {
52
+ return X(t) ? 0 : t;
50
53
  }
51
- function lr(t, e) {
54
+ function d0(t, e) {
52
55
  if (t === 0)
53
56
  return 0;
54
57
  let r = ~~t, n = 0;
@@ -56,50 +59,50 @@ function lr(t, e) {
56
59
  const a = 10 ** (e - n);
57
60
  return Math.floor(t * a + 0.5) / a;
58
61
  }
59
- const Qr = {
62
+ const nr = {
60
63
  deg: 1,
61
64
  grad: 0.9,
62
65
  rad: 180 / Math.PI,
63
66
  turn: 360
64
67
  };
65
- function cr(t) {
68
+ function m0(t) {
66
69
  if (!t)
67
70
  return;
68
71
  t = t.trim();
69
72
  const e = /^([a-z]+)\((.+?)\)$/i, r = /^-?[\d.]+$/, n = /%|deg|g?rad|turn$/, a = /\/?\s*(none|[-\w.]+(?:%|deg|g?rad|turn)?)/g;
70
73
  let s = t.match(e);
71
74
  if (s) {
72
- let o = [];
73
- return s[2].replace(a, (i, l) => {
74
- let f = l.match(n), u = l;
75
- if (f) {
76
- let c = f[0], h = u.slice(0, -c.length);
77
- c === "%" ? (u = new Number(h / 100), u.type = "<percentage>") : (u = new Number(h * Qr[c]), u.type = "<angle>", u.unit = c);
75
+ let i = [];
76
+ return s[2].replace(a, (o, l) => {
77
+ let c = l.match(n), u = l;
78
+ if (c) {
79
+ let f = c[0], h = u.slice(0, -f.length);
80
+ f === "%" ? (u = new Number(h / 100), u.type = "<percentage>") : (u = new Number(h * nr[f]), u.type = "<angle>", u.unit = f);
78
81
  } else r.test(u) ? (u = new Number(u), u.type = "<number>") : u === "none" && (u = new Number(NaN), u.none = !0);
79
- i.startsWith("/") && (u = u instanceof Number ? u : new Number(u), u.alpha = !0), typeof u == "object" && u instanceof Number && (u.raw = l), o.push(u);
82
+ o.startsWith("/") && (u = u instanceof Number ? u : new Number(u), u.alpha = !0), typeof u == "object" && u instanceof Number && (u.raw = l), i.push(u);
80
83
  }), {
81
84
  name: s[1].toLowerCase(),
82
85
  rawName: s[1],
83
86
  rawArgs: s[2],
84
87
  // An argument could be (as of css-color-4):
85
88
  // a number, percentage, degrees (hue), ident (in color())
86
- args: o
89
+ args: i
87
90
  };
88
91
  }
89
92
  }
90
- function ur(t) {
93
+ function g0(t) {
91
94
  return t[t.length - 1];
92
95
  }
93
96
  function oe(t, e, r) {
94
97
  return isNaN(t) ? e : isNaN(e) ? t : t + (e - t) * r;
95
98
  }
96
- function fr(t, e, r) {
99
+ function p0(t, e, r) {
97
100
  return (r - t) / (e - t);
98
101
  }
99
- function Ue(t, e, r) {
100
- return oe(e[0], e[1], fr(t[0], t[1], r));
102
+ function Ve(t, e, r) {
103
+ return oe(e[0], e[1], p0(t[0], t[1], r));
101
104
  }
102
- function hr(t) {
105
+ function b0(t) {
103
106
  return t.map((e) => e.split("|").map((r) => {
104
107
  r = r.trim();
105
108
  let n = r.match(/^(<[a-z]+>)\[(-?[.\d]+),\s*(-?[.\d]+)\]?$/);
@@ -110,47 +113,47 @@ function hr(t) {
110
113
  return r;
111
114
  }));
112
115
  }
113
- function dr(t, e, r) {
116
+ function M0(t, e, r) {
114
117
  return Math.max(Math.min(r, e), t);
115
118
  }
116
- function Be(t, e) {
119
+ function Ie(t, e) {
117
120
  return Math.sign(t) === Math.sign(e) ? t : -t;
118
121
  }
119
- function A(t, e) {
120
- return Be(Math.abs(t) ** e, t);
122
+ function k(t, e) {
123
+ return Ie(Math.abs(t) ** e, t);
121
124
  }
122
- function Ke(t, e) {
125
+ function et(t, e) {
123
126
  return e === 0 ? 0 : t / e;
124
127
  }
125
- function mr(t, e, r = 0, n = t.length) {
128
+ function w0(t, e, r = 0, n = t.length) {
126
129
  for (; r < n; ) {
127
130
  const a = r + n >> 1;
128
131
  t[a] < e ? r = a + 1 : n = a;
129
132
  }
130
133
  return r;
131
134
  }
132
- var Ur = /* @__PURE__ */ Object.freeze({
135
+ var ar = /* @__PURE__ */ Object.freeze({
133
136
  __proto__: null,
134
- bisectLeft: mr,
135
- clamp: dr,
136
- copySign: Be,
137
+ bisectLeft: w0,
138
+ clamp: M0,
139
+ copySign: Ie,
137
140
  interpolate: oe,
138
- interpolateInv: fr,
139
- isNone: D,
140
- isString: ce,
141
- last: ur,
142
- mapRange: Ue,
143
- multiplyMatrices: C,
144
- parseCoordGrammar: hr,
145
- parseFunction: cr,
146
- serializeNumber: Se,
147
- skipNone: S,
148
- spow: A,
149
- toPrecision: lr,
150
- type: Y,
151
- zdiv: Ke
141
+ interpolateInv: p0,
142
+ isNone: X,
143
+ isString: ue,
144
+ last: g0,
145
+ mapRange: Ve,
146
+ multiplyMatrices: L,
147
+ parseCoordGrammar: b0,
148
+ parseFunction: m0,
149
+ serializeNumber: Re,
150
+ skipNone: R,
151
+ spow: k,
152
+ toPrecision: d0,
153
+ type: D,
154
+ zdiv: et
152
155
  });
153
- class Kr {
156
+ class sr {
154
157
  add(e, r, n) {
155
158
  if (typeof arguments[0] != "string") {
156
159
  for (var e in arguments[0])
@@ -167,15 +170,16 @@ class Kr {
167
170
  });
168
171
  }
169
172
  }
170
- const j = new Kr();
171
- var P = {
173
+ const j = new sr();
174
+ var u0, f0, h0, v = {
172
175
  gamut_mapping: "css",
173
176
  precision: 5,
174
177
  deltaE: "76",
175
178
  // Default deltaE method
176
- verbose: globalThis?.process?.env?.NODE_ENV?.toLowerCase() !== "test",
179
+ verbose: ((h0 = (f0 = (u0 = globalThis == null ? void 0 : globalThis.process) == null ? void 0 : u0.env) == null ? void 0 : f0.NODE_ENV) == null ? void 0 : h0.toLowerCase()) !== "test",
177
180
  warn: function(e) {
178
- this.verbose && globalThis?.console?.warn?.(e);
181
+ var r, n;
182
+ this.verbose && ((n = (r = globalThis == null ? void 0 : globalThis.console) == null ? void 0 : r.warn) == null || n.call(r, e));
179
183
  }
180
184
  };
181
185
  const B = {
@@ -183,11 +187,11 @@ const B = {
183
187
  D50: [0.3457 / 0.3585, 1, (1 - 0.3457 - 0.3585) / 0.3585],
184
188
  D65: [0.3127 / 0.329, 1, (1 - 0.3127 - 0.329) / 0.329]
185
189
  };
186
- function Xe(t) {
190
+ function Ze(t) {
187
191
  return Array.isArray(t) ? t : B[t];
188
192
  }
189
- function Re(t, e, r, n = {}) {
190
- if (t = Xe(t), e = Xe(e), !t || !e)
193
+ function xe(t, e, r, n = {}) {
194
+ if (t = Ze(t), e = Ze(e), !t || !e)
191
195
  throw new TypeError(`Missing white point to convert ${t ? "" : "from"}${!t && !e ? "/" : ""}${e ? "" : "to"}`);
192
196
  if (t === e)
193
197
  return r;
@@ -201,115 +205,116 @@ function Re(t, e, r, n = {}) {
201
205
  [-0.0283697093338637, 1.0099953980813041, 0.021041441191917323],
202
206
  [0.012314014864481998, -0.020507649298898964, 1.330365926242124]
203
207
  ])), j.run("chromatic-adaptation-end", a), a.M)
204
- return C(a.M, a.XYZ);
208
+ return L(a.M, a.XYZ);
205
209
  throw new TypeError("Only Bradford CAT with white points D50 and D65 supported for now.");
206
210
  }
207
- const Vr = /* @__PURE__ */ new Set(["<number>", "<percentage>", "<angle>"]);
208
- function ft(t, e, r, n) {
209
- return Object.entries(t.coords).map(([s, o], i) => {
210
- let l = e.coordGrammar[i], f = n[i], u = f?.type, c;
211
- if (f.none ? c = l.find((m) => Vr.has(m)) : c = l.find((m) => m == u), !c) {
212
- let m = o.name || s;
213
- throw new TypeError(`${u ?? f.raw} not allowed for ${m} in ${r}()`);
211
+ const ir = /* @__PURE__ */ new Set(["<number>", "<percentage>", "<angle>"]);
212
+ function dt(t, e, r, n) {
213
+ return Object.entries(t.coords).map(([s, i], o) => {
214
+ let l = e.coordGrammar[o], c = n[o], u = c == null ? void 0 : c.type, f;
215
+ if (c.none ? f = l.find((d) => ir.has(d)) : f = l.find((d) => d == u), !f) {
216
+ let d = i.name || s;
217
+ throw new TypeError(`${u ?? c.raw} not allowed for ${d} in ${r}()`);
214
218
  }
215
- let h = c.range;
216
- u === "<percentage>" && (h ||= [0, 1]);
217
- let p = o.range || o.refRange;
218
- return h && p && (n[i] = Ue(h, p, n[i])), c;
219
+ let h = f.range;
220
+ u === "<percentage>" && (h || (h = [0, 1]));
221
+ let p = i.range || i.refRange;
222
+ return h && p && (n[o] = Ve(h, p, n[o])), f;
219
223
  });
220
224
  }
221
- function gr(t, { meta: e } = {}) {
222
- let r = { str: String(t)?.trim() };
225
+ function y0(t, { meta: e } = {}) {
226
+ var n, a, s, i;
227
+ let r = { str: (n = String(t)) == null ? void 0 : n.trim() };
223
228
  if (j.run("parse-start", r), r.color)
224
229
  return r.color;
225
- if (r.parsed = cr(r.str), r.parsed) {
226
- let n = r.parsed.name;
227
- if (n === "color") {
228
- let a = r.parsed.args.shift(), s = a.startsWith("--") ? a.substring(2) : `--${a}`, o = [a, s], i = r.parsed.rawArgs.indexOf("/") > 0 ? r.parsed.args.pop() : 1;
229
- for (let u of d.all) {
230
- let c = u.getFormat("color");
231
- if (c && (o.includes(c.id) || c.ids?.filter((h) => o.includes(h)).length)) {
232
- const h = Object.keys(u.coords).map((m, b) => r.parsed.args[b] || 0);
233
- let p;
234
- return c.coordGrammar && (p = ft(u, c, "color", h)), e && Object.assign(e, { formatId: "color", types: p }), c.id.startsWith("--") && !a.startsWith("--") && P.warn(`${u.name} is a non-standard space and not currently supported in the CSS spec. Use prefixed color(${c.id}) instead of color(${a}).`), a.startsWith("--") && !c.id.startsWith("--") && P.warn(`${u.name} is a standard space and supported in the CSS spec. Use color(${c.id}) instead of prefixed color(${a}).`), { spaceId: u.id, coords: h, alpha: i };
230
+ if (r.parsed = m0(r.str), r.parsed) {
231
+ let o = r.parsed.name;
232
+ if (o === "color") {
233
+ let l = r.parsed.args.shift(), c = l.startsWith("--") ? l.substring(2) : `--${l}`, u = [l, c], f = r.parsed.rawArgs.indexOf("/") > 0 ? r.parsed.args.pop() : 1;
234
+ for (let d of m.all) {
235
+ let g = d.getFormat("color");
236
+ if (g && (u.includes(g.id) || (a = g.ids) != null && a.filter((M) => u.includes(M)).length)) {
237
+ const M = Object.keys(d.coords).map((S, y) => r.parsed.args[y] || 0);
238
+ let _;
239
+ return g.coordGrammar && (_ = dt(d, g, "color", M)), e && Object.assign(e, { formatId: "color", types: _ }), g.id.startsWith("--") && !l.startsWith("--") && v.warn(`${d.name} is a non-standard space and not currently supported in the CSS spec. Use prefixed color(${g.id}) instead of color(${l}).`), l.startsWith("--") && !g.id.startsWith("--") && v.warn(`${d.name} is a standard space and supported in the CSS spec. Use color(${g.id}) instead of prefixed color(${l}).`), { spaceId: d.id, coords: M, alpha: f };
235
240
  }
236
241
  }
237
- let l = "", f = a in d.registry ? a : s;
238
- if (f in d.registry) {
239
- let u = d.registry[f].formats?.color?.id;
240
- u && (l = `Did you mean color(${u})?`);
242
+ let h = "", p = l in m.registry ? l : c;
243
+ if (p in m.registry) {
244
+ let d = (i = (s = m.registry[p].formats) == null ? void 0 : s.color) == null ? void 0 : i.id;
245
+ d && (h = `Did you mean color(${d})?`);
241
246
  }
242
- throw new TypeError(`Cannot parse color(${a}). ` + (l || "Missing a plugin?"));
247
+ throw new TypeError(`Cannot parse color(${l}). ` + (h || "Missing a plugin?"));
243
248
  } else
244
- for (let a of d.all) {
245
- let s = a.getFormat(n);
246
- if (s && s.type === "function") {
247
- let o = 1;
248
- (s.lastAlpha || ur(r.parsed.args).alpha) && (o = r.parsed.args.pop());
249
- let i = r.parsed.args, l;
250
- return s.coordGrammar && (l = ft(a, s, n, i)), e && Object.assign(e, { formatId: s.name, types: l }), {
251
- spaceId: a.id,
252
- coords: i,
253
- alpha: o
249
+ for (let l of m.all) {
250
+ let c = l.getFormat(o);
251
+ if (c && c.type === "function") {
252
+ let u = 1;
253
+ (c.lastAlpha || g0(r.parsed.args).alpha) && (u = r.parsed.args.pop());
254
+ let f = r.parsed.args, h;
255
+ return c.coordGrammar && (h = dt(l, c, o, f)), e && Object.assign(e, { formatId: c.name, types: h }), {
256
+ spaceId: l.id,
257
+ coords: f,
258
+ alpha: u
254
259
  };
255
260
  }
256
261
  }
257
262
  } else
258
- for (let n of d.all)
259
- for (let a in n.formats) {
260
- let s = n.formats[a];
261
- if (s.type !== "custom" || s.test && !s.test(r.str))
263
+ for (let o of m.all)
264
+ for (let l in o.formats) {
265
+ let c = o.formats[l];
266
+ if (c.type !== "custom" || c.test && !c.test(r.str))
262
267
  continue;
263
- let o = s.parse(r.str);
264
- if (o)
265
- return o.alpha ??= 1, e && (e.formatId = a), o;
268
+ let u = c.parse(r.str);
269
+ if (u)
270
+ return u.alpha ?? (u.alpha = 1), e && (e.formatId = l), u;
266
271
  }
267
272
  throw new TypeError(`Could not parse ${t} as a color. Missing a plugin?`);
268
273
  }
269
- function g(t) {
274
+ function b(t) {
270
275
  if (Array.isArray(t))
271
- return t.map(g);
276
+ return t.map(b);
272
277
  if (!t)
273
278
  throw new TypeError("Empty color reference");
274
- ce(t) && (t = gr(t));
279
+ ue(t) && (t = y0(t));
275
280
  let e = t.space || t.spaceId;
276
- return e instanceof d || (t.space = d.get(e)), t.alpha === void 0 && (t.alpha = 1), t;
281
+ return e instanceof m || (t.space = m.get(e)), t.alpha === void 0 && (t.alpha = 1), t;
277
282
  }
278
- const en = 75e-6;
279
- class d {
283
+ const or = 75e-6, I = class I {
280
284
  constructor(e) {
281
- this.id = e.id, this.name = e.name, this.base = e.base ? d.get(e.base) : null, this.aliases = e.aliases, this.base && (this.fromBase = e.fromBase, this.toBase = e.toBase);
285
+ var a;
286
+ this.id = e.id, this.name = e.name, this.base = e.base ? I.get(e.base) : null, this.aliases = e.aliases, this.base && (this.fromBase = e.fromBase, this.toBase = e.toBase);
282
287
  let r = e.coords ?? this.base.coords;
283
- for (let a in r)
284
- "name" in r[a] || (r[a].name = a);
288
+ for (let s in r)
289
+ "name" in r[s] || (r[s].name = s);
285
290
  this.coords = r;
286
291
  let n = e.white ?? this.base.white ?? "D65";
287
- this.white = Xe(n), this.formats = e.formats ?? {};
288
- for (let a in this.formats) {
289
- let s = this.formats[a];
290
- s.type ||= "function", s.name ||= a;
292
+ this.white = Ze(n), this.formats = e.formats ?? {};
293
+ for (let s in this.formats) {
294
+ let i = this.formats[s];
295
+ i.type || (i.type = "function"), i.name || (i.name = s);
291
296
  }
292
- this.formats.color?.id || (this.formats.color = {
297
+ (a = this.formats.color) != null && a.id || (this.formats.color = {
293
298
  ...this.formats.color ?? {},
294
299
  id: e.cssId || this.id
295
- }), e.gamutSpace ? this.gamutSpace = e.gamutSpace === "self" ? this : d.get(e.gamutSpace) : this.isPolar ? this.gamutSpace = this.base : this.gamutSpace = this, this.gamutSpace.isUnbounded && (this.inGamut = (a, s) => !0), this.referred = e.referred, Object.defineProperty(this, "path", {
296
- value: tn(this).reverse(),
300
+ }), e.gamutSpace ? this.gamutSpace = e.gamutSpace === "self" ? this : I.get(e.gamutSpace) : this.isPolar ? this.gamutSpace = this.base : this.gamutSpace = this, this.gamutSpace.isUnbounded && (this.inGamut = (s, i) => !0), this.referred = e.referred, Object.defineProperty(this, "path", {
301
+ value: lr(this).reverse(),
297
302
  writable: !1,
298
303
  enumerable: !0,
299
304
  configurable: !0
300
305
  }), j.run("colorspace-init-end", this);
301
306
  }
302
- inGamut(e, { epsilon: r = en } = {}) {
307
+ inGamut(e, { epsilon: r = or } = {}) {
303
308
  if (!this.equals(this.gamutSpace))
304
309
  return e = this.to(this.gamutSpace, e), this.gamutSpace.inGamut(e, { epsilon: r });
305
310
  let n = Object.values(this.coords);
306
311
  return e.every((a, s) => {
307
- let o = n[s];
308
- if (o.type !== "angle" && o.range) {
312
+ let i = n[s];
313
+ if (i.type !== "angle" && i.range) {
309
314
  if (Number.isNaN(a))
310
315
  return !0;
311
- let [i, l] = o.range;
312
- return (i === void 0 || a >= i - r) && (l === void 0 || a <= l + r);
316
+ let [o, l] = i.range;
317
+ return (o === void 0 || a >= o - r) && (l === void 0 || a <= l + r);
313
318
  }
314
319
  return !0;
315
320
  });
@@ -318,7 +323,8 @@ class d {
318
323
  return Object.values(this.coords).every((e) => !("range" in e));
319
324
  }
320
325
  get cssId() {
321
- return this.formats?.color?.id || this.id;
326
+ var e, r;
327
+ return ((r = (e = this.formats) == null ? void 0 : e.color) == null ? void 0 : r.id) || this.id;
322
328
  }
323
329
  get isPolar() {
324
330
  for (let e in this.coords)
@@ -328,9 +334,9 @@ class d {
328
334
  }
329
335
  getFormat(e) {
330
336
  if (typeof e == "object")
331
- return e = ht(e, this), e;
337
+ return e = mt(e, this), e;
332
338
  let r;
333
- return e === "default" ? r = Object.values(this.formats)[0] : r = this.formats[e], r ? (r = ht(r, this), r) : null;
339
+ return e === "default" ? r = Object.values(this.formats)[0] : r = this.formats[e], r ? (r = mt(r, this), r) : null;
334
340
  }
335
341
  /**
336
342
  * Check if this color space is the same as another color space reference.
@@ -343,29 +349,29 @@ class d {
343
349
  }
344
350
  to(e, r) {
345
351
  if (arguments.length === 1) {
346
- const i = g(e);
347
- [e, r] = [i.space, i.coords];
352
+ const o = b(e);
353
+ [e, r] = [o.space, o.coords];
348
354
  }
349
- if (e = d.get(e), this.equals(e))
355
+ if (e = I.get(e), this.equals(e))
350
356
  return r;
351
- r = r.map((i) => Number.isNaN(i) ? 0 : i);
352
- let n = this.path, a = e.path, s, o;
353
- for (let i = 0; i < n.length && n[i].equals(a[i]); i++)
354
- s = n[i], o = i;
357
+ r = r.map((o) => Number.isNaN(o) ? 0 : o);
358
+ let n = this.path, a = e.path, s, i;
359
+ for (let o = 0; o < n.length && n[o].equals(a[o]); o++)
360
+ s = n[o], i = o;
355
361
  if (!s)
356
362
  throw new Error(`Cannot convert between color spaces ${this} and ${e}: no connection space was found`);
357
- for (let i = n.length - 1; i > o; i--)
358
- r = n[i].toBase(r);
359
- for (let i = o + 1; i < a.length; i++)
360
- r = a[i].fromBase(r);
363
+ for (let o = n.length - 1; o > i; o--)
364
+ r = n[o].toBase(r);
365
+ for (let o = i + 1; o < a.length; o++)
366
+ r = a[o].fromBase(r);
361
367
  return r;
362
368
  }
363
369
  from(e, r) {
364
370
  if (arguments.length === 1) {
365
- const n = g(e);
371
+ const n = b(e);
366
372
  [e, r] = [n.space, n.coords];
367
373
  }
368
- return e = d.get(e), e.to(this, r);
374
+ return e = I.get(e), e.to(this, r);
369
375
  }
370
376
  toString() {
371
377
  return `${this.name} (${this.id})`;
@@ -374,14 +380,13 @@ class d {
374
380
  let e = [];
375
381
  for (let r in this.coords) {
376
382
  let n = this.coords[r], a = n.range || n.refRange;
377
- e.push(a?.min ?? 0);
383
+ e.push((a == null ? void 0 : a.min) ?? 0);
378
384
  }
379
385
  return e;
380
386
  }
381
- static registry = {};
382
387
  // Returns array of unique color spaces
383
388
  static get all() {
384
- return [...new Set(Object.values(d.registry))];
389
+ return [...new Set(Object.values(I.registry))];
385
390
  }
386
391
  static register(e, r) {
387
392
  if (arguments.length === 1 && (r = arguments[0], e = r.id), r = this.get(r), this.registry[e] && this.registry[e] !== r)
@@ -396,16 +401,16 @@ class d {
396
401
  * @param {ColorSpace | string} name
397
402
  */
398
403
  static get(e, ...r) {
399
- if (!e || e instanceof d)
404
+ if (!e || e instanceof I)
400
405
  return e;
401
- if (Y(e) === "string") {
402
- let a = d.registry[e.toLowerCase()];
406
+ if (D(e) === "string") {
407
+ let a = I.registry[e.toLowerCase()];
403
408
  if (!a)
404
409
  throw new TypeError(`No color space found with id = "${e}"`);
405
410
  return a;
406
411
  }
407
412
  if (r.length)
408
- return d.get(...r);
413
+ return I.get(...r);
409
414
  throw new TypeError(`${e} is not a valid color space`);
410
415
  }
411
416
  /**
@@ -417,50 +422,52 @@ class d {
417
422
  * @return {Object}
418
423
  */
419
424
  static resolveCoord(e, r) {
420
- let n = Y(e), a, s;
421
- if (n === "string" ? e.includes(".") ? [a, s] = e.split(".") : [a, s] = [, e] : Array.isArray(e) ? [a, s] = e : (a = e.space, s = e.coordId), a = d.get(a), a || (a = r), !a)
425
+ var l;
426
+ let n = D(e), a, s;
427
+ if (n === "string" ? e.includes(".") ? [a, s] = e.split(".") : [a, s] = [, e] : Array.isArray(e) ? [a, s] = e : (a = e.space, s = e.coordId), a = I.get(a), a || (a = r), !a)
422
428
  throw new TypeError(`Cannot resolve coordinate reference ${e}: No color space specified and relative references are not allowed here`);
423
- if (n = Y(s), n === "number" || n === "string" && s >= 0) {
424
- let l = Object.entries(a.coords)[s];
425
- if (l)
426
- return { space: a, id: l[0], index: s, ...l[1] };
429
+ if (n = D(s), n === "number" || n === "string" && s >= 0) {
430
+ let c = Object.entries(a.coords)[s];
431
+ if (c)
432
+ return { space: a, id: c[0], index: s, ...c[1] };
427
433
  }
428
- a = d.get(a);
429
- let o = s.toLowerCase(), i = 0;
430
- for (let l in a.coords) {
431
- let f = a.coords[l];
432
- if (l.toLowerCase() === o || f.name?.toLowerCase() === o)
433
- return { space: a, id: l, index: i, ...f };
434
- i++;
434
+ a = I.get(a);
435
+ let i = s.toLowerCase(), o = 0;
436
+ for (let c in a.coords) {
437
+ let u = a.coords[c];
438
+ if (c.toLowerCase() === i || ((l = u.name) == null ? void 0 : l.toLowerCase()) === i)
439
+ return { space: a, id: c, index: o, ...u };
440
+ o++;
435
441
  }
436
442
  throw new TypeError(`No "${s}" coordinate found in ${a.name}. Its coordinates are: ${Object.keys(a.coords).join(", ")}`);
437
443
  }
438
- static DEFAULT_FORMAT = {
439
- type: "functions",
440
- name: "color"
441
- };
442
- }
443
- function tn(t) {
444
+ };
445
+ ve(I, "registry", {}), ve(I, "DEFAULT_FORMAT", {
446
+ type: "functions",
447
+ name: "color"
448
+ });
449
+ let m = I;
450
+ function lr(t) {
444
451
  let e = [t];
445
452
  for (let r = t; r = r.base; )
446
453
  e.push(r);
447
454
  return e;
448
455
  }
449
- function ht(t, { coords: e } = {}) {
456
+ function mt(t, { coords: e } = {}) {
450
457
  if (t.coords && !t.coordGrammar) {
451
- t.type ||= "function", t.name ||= "color", t.coordGrammar = hr(t.coords);
458
+ t.type || (t.type = "function"), t.name || (t.name = "color"), t.coordGrammar = b0(t.coords);
452
459
  let r = Object.entries(e).map(([n, a], s) => {
453
- let o = t.coordGrammar[s][0], i = a.range || a.refRange, l = o.range, f = "";
454
- return o == "<percentage>" ? (l = [0, 100], f = "%") : o == "<angle>" && (f = "deg"), { fromRange: i, toRange: l, suffix: f };
460
+ let i = t.coordGrammar[s][0], o = a.range || a.refRange, l = i.range, c = "";
461
+ return i == "<percentage>" ? (l = [0, 100], c = "%") : i == "<angle>" && (c = "deg"), { fromRange: o, toRange: l, suffix: c };
455
462
  });
456
- t.serializeCoords = (n, a) => n.map((s, o) => {
457
- let { fromRange: i, toRange: l, suffix: f } = r[o];
458
- return i && l && (s = Ue(i, l, s)), s = Se(s, { precision: a, unit: f }), s;
463
+ t.serializeCoords = (n, a) => n.map((s, i) => {
464
+ let { fromRange: o, toRange: l, suffix: c } = r[i];
465
+ return o && l && (s = Ve(o, l, s)), s = Re(s, { precision: a, unit: c }), s;
459
466
  });
460
467
  }
461
468
  return t;
462
469
  }
463
- var v = new d({
470
+ var N = new m({
464
471
  id: "xyz-d65",
465
472
  name: "XYZ D65",
466
473
  coords: {
@@ -476,7 +483,7 @@ var v = new d({
476
483
  },
477
484
  aliases: ["xyz"]
478
485
  });
479
- class N extends d {
486
+ class z extends m {
480
487
  /**
481
488
  * Creates a new RGB ColorSpace.
482
489
  * If coords are not specified, they will use the default RGB coords.
@@ -500,48 +507,48 @@ class N extends d {
500
507
  range: [0, 1],
501
508
  name: "Blue"
502
509
  }
503
- }), e.base || (e.base = v), e.toXYZ_M && e.fromXYZ_M && (e.toBase ??= (r) => {
504
- let n = C(e.toXYZ_M, r);
505
- return this.white !== this.base.white && (n = Re(this.white, this.base.white, n)), n;
506
- }, e.fromBase ??= (r) => (r = Re(this.base.white, this.white, r), C(e.fromXYZ_M, r))), e.referred ??= "display", super(e);
510
+ }), e.base || (e.base = N), e.toXYZ_M && e.fromXYZ_M && (e.toBase ?? (e.toBase = (r) => {
511
+ let n = L(e.toXYZ_M, r);
512
+ return this.white !== this.base.white && (n = xe(this.white, this.base.white, n)), n;
513
+ }), e.fromBase ?? (e.fromBase = (r) => (r = xe(this.base.white, this.white, r), L(e.fromXYZ_M, r)))), e.referred ?? (e.referred = "display"), super(e);
507
514
  }
508
515
  }
509
- function ue(t, e) {
510
- return t = g(t), !e || t.space.equals(e) ? t.coords.slice() : (e = d.get(e), e.from(t));
516
+ function fe(t, e) {
517
+ return t = b(t), !e || t.space.equals(e) ? t.coords.slice() : (e = m.get(e), e.from(t));
511
518
  }
512
- function $(t, e) {
513
- t = g(t);
514
- let { space: r, index: n } = d.resolveCoord(e, t.space);
515
- return ue(t, r)[n];
519
+ function P(t, e) {
520
+ t = b(t);
521
+ let { space: r, index: n } = m.resolveCoord(e, t.space);
522
+ return fe(t, r)[n];
516
523
  }
517
- function Ve(t, e, r) {
518
- return t = g(t), e = d.get(e), t.coords = e.to(t.space, r), t;
524
+ function tt(t, e, r) {
525
+ return t = b(t), e = m.get(e), t.coords = e.to(t.space, r), t;
519
526
  }
520
- Ve.returns = "color";
521
- function T(t, e, r) {
522
- if (t = g(t), arguments.length === 2 && Y(arguments[1]) === "object") {
527
+ tt.returns = "color";
528
+ function O(t, e, r) {
529
+ if (t = b(t), arguments.length === 2 && D(arguments[1]) === "object") {
523
530
  let n = arguments[1];
524
531
  for (let a in n)
525
- T(t, a, n[a]);
532
+ O(t, a, n[a]);
526
533
  } else {
527
- typeof r == "function" && (r = r($(t, e)));
528
- let { space: n, index: a } = d.resolveCoord(e, t.space), s = ue(t, n);
529
- s[a] = r, Ve(t, n, s);
534
+ typeof r == "function" && (r = r(P(t, e)));
535
+ let { space: n, index: a } = m.resolveCoord(e, t.space), s = fe(t, n);
536
+ s[a] = r, tt(t, n, s);
530
537
  }
531
538
  return t;
532
539
  }
533
- T.returns = "color";
534
- var et = new d({
540
+ O.returns = "color";
541
+ var rt = new m({
535
542
  id: "xyz-d50",
536
543
  name: "XYZ D50",
537
544
  white: "D50",
538
- base: v,
539
- fromBase: (t) => Re(v.white, "D50", t),
540
- toBase: (t) => Re("D50", v.white, t)
545
+ base: N,
546
+ fromBase: (t) => xe(N.white, "D50", t),
547
+ toBase: (t) => xe("D50", N.white, t)
541
548
  });
542
- const rn = 216 / 24389, dt = 24 / 116, ge = 24389 / 27;
543
- let Pe = B.D50;
544
- var z = new d({
549
+ const cr = 216 / 24389, gt = 24 / 116, pe = 24389 / 27;
550
+ let Ae = B.D50;
551
+ var E = new m({
545
552
  id: "lab",
546
553
  name: "Lab",
547
554
  coords: {
@@ -558,12 +565,12 @@ var z = new d({
558
565
  },
559
566
  // Assuming XYZ is relative to D50, convert to CIE Lab
560
567
  // from CIE standard, which now defines these as a rational fraction
561
- white: Pe,
562
- base: et,
568
+ white: Ae,
569
+ base: rt,
563
570
  // Convert D50-adapted XYX to Lab
564
571
  // CIE 15.3:2004 section 8.2.1.1
565
572
  fromBase(t) {
566
- let r = t.map((n, a) => n / Pe[a]).map((n) => n > rn ? Math.cbrt(n) : (ge * n + 16) / 116);
573
+ let r = t.map((n, a) => n / Ae[a]).map((n) => n > cr ? Math.cbrt(n) : (pe * n + 16) / 116);
567
574
  return [
568
575
  116 * r[1] - 16,
569
576
  // L
@@ -579,10 +586,10 @@ var z = new d({
579
586
  toBase(t) {
580
587
  let e = [];
581
588
  return e[1] = (t[0] + 16) / 116, e[0] = t[1] / 500 + e[1], e[2] = e[1] - t[2] / 200, [
582
- e[0] > dt ? Math.pow(e[0], 3) : (116 * e[0] - 16) / ge,
583
- t[0] > 8 ? Math.pow((t[0] + 16) / 116, 3) : t[0] / ge,
584
- e[2] > dt ? Math.pow(e[2], 3) : (116 * e[2] - 16) / ge
585
- ].map((n, a) => n * Pe[a]);
589
+ e[0] > gt ? Math.pow(e[0], 3) : (116 * e[0] - 16) / pe,
590
+ t[0] > 8 ? Math.pow((t[0] + 16) / 116, 3) : t[0] / pe,
591
+ e[2] > gt ? Math.pow(e[2], 3) : (116 * e[2] - 16) / pe
592
+ ].map((n, a) => n * Ae[a]);
586
593
  },
587
594
  formats: {
588
595
  lab: {
@@ -590,16 +597,16 @@ var z = new d({
590
597
  }
591
598
  }
592
599
  });
593
- function k(t) {
600
+ function H(t) {
594
601
  return (t % 360 + 360) % 360;
595
602
  }
596
- function nn(t, e) {
603
+ function ur(t, e) {
597
604
  if (t === "raw")
598
605
  return e;
599
- let [r, n] = e.map(k), a = n - r;
606
+ let [r, n] = e.map(H), a = n - r;
600
607
  return t === "increasing" ? a < 0 && (n += 360) : t === "decreasing" ? a > 0 && (r += 360) : t === "longer" ? -180 < a && a < 180 && (a > 0 ? r += 360 : n += 360) : t === "shorter" && (a > 180 ? r += 360 : a < -180 && (n += 360)), [r, n];
601
608
  }
602
- var ie = new d({
609
+ var le = new m({
603
610
  id: "lch",
604
611
  name: "LCH",
605
612
  coords: {
@@ -617,7 +624,7 @@ var ie = new d({
617
624
  name: "Hue"
618
625
  }
619
626
  },
620
- base: z,
627
+ base: E,
621
628
  fromBase(t) {
622
629
  let [e, r, n] = t, a;
623
630
  const s = 0.02;
@@ -626,7 +633,7 @@ var ie = new d({
626
633
  // L is still L
627
634
  Math.sqrt(r ** 2 + n ** 2),
628
635
  // Chroma
629
- k(a)
636
+ H(a)
630
637
  // Hue, in degrees [0 to 360)
631
638
  ];
632
639
  },
@@ -647,44 +654,44 @@ var ie = new d({
647
654
  }
648
655
  }
649
656
  });
650
- const mt = 25 ** 7, xe = Math.PI, gt = 180 / xe, J = xe / 180;
651
- function pt(t) {
657
+ const pt = 25 ** 7, Ne = Math.PI, bt = 180 / Ne, F = Ne / 180;
658
+ function Mt(t) {
652
659
  const e = t * t;
653
660
  return e * e * e * t;
654
661
  }
655
- function pr(t, e, { kL: r = 1, kC: n = 1, kH: a = 1 } = {}) {
656
- [t, e] = g([t, e]);
657
- let [s, o, i] = z.from(t), l = ie.from(z, [s, o, i])[1], [f, u, c] = z.from(e), h = ie.from(z, [f, u, c])[1];
662
+ function C0(t, e, { kL: r = 1, kC: n = 1, kH: a = 1 } = {}) {
663
+ [t, e] = b([t, e]);
664
+ let [s, i, o] = E.from(t), l = le.from(E, [s, i, o])[1], [c, u, f] = E.from(e), h = le.from(E, [c, u, f])[1];
658
665
  l < 0 && (l = 0), h < 0 && (h = 0);
659
- let p = (l + h) / 2, m = pt(p), b = 0.5 * (1 - Math.sqrt(m / (m + mt))), M = (1 + b) * o, R = (1 + b) * u, _ = Math.sqrt(M ** 2 + i ** 2), L = Math.sqrt(R ** 2 + c ** 2), I = M === 0 && i === 0 ? 0 : Math.atan2(i, M), O = R === 0 && c === 0 ? 0 : Math.atan2(c, R);
660
- I < 0 && (I += 2 * xe), O < 0 && (O += 2 * xe), I *= gt, O *= gt;
661
- let he = f - s, de = L - _, E = O - I, te = I + O, st = Math.abs(E), re;
662
- _ * L === 0 ? re = 0 : st <= 180 ? re = E : E > 180 ? re = E - 360 : E < -180 ? re = E + 360 : P.warn("the unthinkable has happened");
663
- let ot = 2 * Math.sqrt(L * _) * Math.sin(re * J / 2), Zr = (s + f) / 2, ze = (_ + L) / 2, it = pt(ze), H;
664
- _ * L === 0 ? H = te : st <= 180 ? H = te / 2 : te < 360 ? H = (te + 360) / 2 : H = (te - 360) / 2;
665
- let lt = (Zr - 50) ** 2, Gr = 1 + 0.015 * lt / Math.sqrt(20 + lt), ct = 1 + 0.045 * ze, ne = 1;
666
- ne -= 0.17 * Math.cos((H - 30) * J), ne += 0.24 * Math.cos(2 * H * J), ne += 0.32 * Math.cos((3 * H + 6) * J), ne -= 0.2 * Math.cos((4 * H - 63) * J);
667
- let ut = 1 + 0.015 * ze * ne, Jr = 30 * Math.exp(-1 * ((H - 275) / 25) ** 2), Fr = 2 * Math.sqrt(it / (it + mt)), Wr = -1 * Math.sin(2 * Jr * J) * Fr, me = (he / (r * Gr)) ** 2;
668
- return me += (de / (n * ct)) ** 2, me += (ot / (a * ut)) ** 2, me += Wr * (de / (n * ct)) * (ot / (a * ut)), Math.sqrt(me);
669
- }
670
- const an = [
666
+ let p = (l + h) / 2, d = Mt(p), g = 0.5 * (1 - Math.sqrt(d / (d + pt))), M = (1 + g) * i, _ = (1 + g) * u, S = Math.sqrt(M ** 2 + o ** 2), y = Math.sqrt(_ ** 2 + f ** 2), $ = M === 0 && o === 0 ? 0 : Math.atan2(o, M), Y = _ === 0 && f === 0 ? 0 : Math.atan2(f, _);
667
+ $ < 0 && ($ += 2 * Ne), Y < 0 && (Y += 2 * Ne), $ *= bt, Y *= bt;
668
+ let de = c - s, me = y - S, A = Y - $, re = $ + Y, ot = Math.abs(A), ne;
669
+ S * y === 0 ? ne = 0 : ot <= 180 ? ne = A : A > 180 ? ne = A - 360 : A < -180 ? ne = A + 360 : v.warn("the unthinkable has happened");
670
+ let lt = 2 * Math.sqrt(y * S) * Math.sin(ne * F / 2), Q0 = (s + c) / 2, Ee = (S + y) / 2, ct = Mt(Ee), T;
671
+ S * y === 0 ? T = re : ot <= 180 ? T = re / 2 : re < 360 ? T = (re + 360) / 2 : T = (re - 360) / 2;
672
+ let ut = (Q0 - 50) ** 2, U0 = 1 + 0.015 * ut / Math.sqrt(20 + ut), ft = 1 + 0.045 * Ee, ae = 1;
673
+ ae -= 0.17 * Math.cos((T - 30) * F), ae += 0.24 * Math.cos(2 * T * F), ae += 0.32 * Math.cos((3 * T + 6) * F), ae -= 0.2 * Math.cos((4 * T - 63) * F);
674
+ let ht = 1 + 0.015 * Ee * ae, K0 = 30 * Math.exp(-1 * ((T - 275) / 25) ** 2), V0 = 2 * Math.sqrt(ct / (ct + pt)), er = -1 * Math.sin(2 * K0 * F) * V0, ge = (de / (r * U0)) ** 2;
675
+ return ge += (me / (n * ft)) ** 2, ge += (lt / (a * ht)) ** 2, ge += er * (me / (n * ft)) * (lt / (a * ht)), Math.sqrt(ge);
676
+ }
677
+ const fr = [
671
678
  [0.819022437996703, 0.3619062600528904, -0.1288737815209879],
672
679
  [0.0329836539323885, 0.9292868615863434, 0.0361446663506424],
673
680
  [0.0481771893596242, 0.2642395317527308, 0.6335478284694309]
674
- ], sn = [
681
+ ], hr = [
675
682
  [1.2268798758459243, -0.5578149944602171, 0.2813910456659647],
676
683
  [-0.0405757452148008, 1.112286803280317, -0.0717110580655164],
677
684
  [-0.0763729366746601, -0.4214933324022432, 1.5869240198367816]
678
- ], on = [
685
+ ], dr = [
679
686
  [0.210454268309314, 0.7936177747023054, -0.0040720430116193],
680
687
  [1.9779985324311684, -2.42859224204858, 0.450593709617411],
681
688
  [0.0259040424655478, 0.7827717124575296, -0.8086757549230774]
682
- ], ln = [
689
+ ], mr = [
683
690
  [1, 0.3963377773761749, 0.2158037573099136],
684
691
  [1, -0.1055613458156586, -0.0638541728258133],
685
692
  [1, -0.0894841775298119, -1.2914855480194092]
686
693
  ];
687
- var U = new d({
694
+ var K = new m({
688
695
  id: "oklab",
689
696
  name: "Oklab",
690
697
  coords: {
@@ -701,14 +708,14 @@ var U = new d({
701
708
  },
702
709
  // Note that XYZ is relative to D65
703
710
  white: "D65",
704
- base: v,
711
+ base: N,
705
712
  fromBase(t) {
706
- let r = C(an, t).map((n) => Math.cbrt(n));
707
- return C(on, r);
713
+ let r = L(fr, t).map((n) => Math.cbrt(n));
714
+ return L(dr, r);
708
715
  },
709
716
  toBase(t) {
710
- let r = C(ln, t).map((n) => n ** 3);
711
- return C(sn, r);
717
+ let r = L(mr, t).map((n) => n ** 3);
718
+ return L(hr, r);
712
719
  },
713
720
  formats: {
714
721
  oklab: {
@@ -716,49 +723,49 @@ var U = new d({
716
723
  }
717
724
  }
718
725
  });
719
- function qe(t, e) {
720
- [t, e] = g([t, e]);
721
- let [r, n, a] = U.from(t), [s, o, i] = U.from(e), l = r - s, f = n - o, u = a - i;
722
- return Math.sqrt(l ** 2 + f ** 2 + u ** 2);
723
- }
724
- const cn = 75e-6;
725
- function G(t, e, { epsilon: r = cn } = {}) {
726
- t = g(t), e || (e = t.space), e = d.get(e);
726
+ function Ge(t, e) {
727
+ [t, e] = b([t, e]);
728
+ let [r, n, a] = K.from(t), [s, i, o] = K.from(e), l = r - s, c = n - i, u = a - o;
729
+ return Math.sqrt(l ** 2 + c ** 2 + u ** 2);
730
+ }
731
+ const gr = 75e-6;
732
+ function J(t, e, { epsilon: r = gr } = {}) {
733
+ t = b(t), e || (e = t.space), e = m.get(e);
727
734
  let n = t.coords;
728
735
  return e !== t.space && (n = e.from(t)), e.inGamut(n, { epsilon: r });
729
736
  }
730
- function K(t) {
737
+ function V(t) {
731
738
  return {
732
739
  space: t.space,
733
740
  coords: t.coords.slice(),
734
741
  alpha: t.alpha
735
742
  };
736
743
  }
737
- function br(t, e, r = "lab") {
738
- r = d.get(r);
744
+ function L0(t, e, r = "lab") {
745
+ r = m.get(r);
739
746
  let n = r.from(t), a = r.from(e);
740
- return Math.sqrt(n.reduce((s, o, i) => {
741
- let l = a[i];
742
- return isNaN(o) || isNaN(l) ? s : s + (l - o) ** 2;
747
+ return Math.sqrt(n.reduce((s, i, o) => {
748
+ let l = a[o];
749
+ return isNaN(i) || isNaN(l) ? s : s + (l - i) ** 2;
743
750
  }, 0));
744
751
  }
745
- function un(t, e) {
746
- return br(t, e, "lab");
747
- }
748
- const fn = Math.PI, bt = fn / 180;
749
- function hn(t, e, { l: r = 2, c: n = 1 } = {}) {
750
- [t, e] = g([t, e]);
751
- let [a, s, o] = z.from(t), [, i, l] = ie.from(z, [a, s, o]), [f, u, c] = z.from(e), h = ie.from(z, [f, u, c])[1];
752
- i < 0 && (i = 0), h < 0 && (h = 0);
753
- let p = a - f, m = i - h, b = s - u, M = o - c, R = b ** 2 + M ** 2 - m ** 2, _ = 0.511;
754
- a >= 16 && (_ = 0.040975 * a / (1 + 0.01765 * a));
755
- let L = 0.0638 * i / (1 + 0.0131 * i) + 0.638, I;
756
- Number.isNaN(l) && (l = 0), l >= 164 && l <= 345 ? I = 0.56 + Math.abs(0.2 * Math.cos((l + 168) * bt)) : I = 0.36 + Math.abs(0.4 * Math.cos((l + 35) * bt));
757
- let O = Math.pow(i, 4), he = Math.sqrt(O / (O + 1900)), de = L * (he * I + 1 - he), E = (p / (r * _)) ** 2;
758
- return E += (m / (n * L)) ** 2, E += R / de ** 2, Math.sqrt(E);
759
- }
760
- const Mt = 203;
761
- var tt = new d({
752
+ function pr(t, e) {
753
+ return L0(t, e, "lab");
754
+ }
755
+ const br = Math.PI, wt = br / 180;
756
+ function Mr(t, e, { l: r = 2, c: n = 1 } = {}) {
757
+ [t, e] = b([t, e]);
758
+ let [a, s, i] = E.from(t), [, o, l] = le.from(E, [a, s, i]), [c, u, f] = E.from(e), h = le.from(E, [c, u, f])[1];
759
+ o < 0 && (o = 0), h < 0 && (h = 0);
760
+ let p = a - c, d = o - h, g = s - u, M = i - f, _ = g ** 2 + M ** 2 - d ** 2, S = 0.511;
761
+ a >= 16 && (S = 0.040975 * a / (1 + 0.01765 * a));
762
+ let y = 0.0638 * o / (1 + 0.0131 * o) + 0.638, $;
763
+ Number.isNaN(l) && (l = 0), l >= 164 && l <= 345 ? $ = 0.56 + Math.abs(0.2 * Math.cos((l + 168) * wt)) : $ = 0.36 + Math.abs(0.4 * Math.cos((l + 35) * wt));
764
+ let Y = Math.pow(o, 4), de = Math.sqrt(Y / (Y + 1900)), me = y * (de * $ + 1 - de), A = (p / (r * S)) ** 2;
765
+ return A += (d / (n * y)) ** 2, A += _ / me ** 2, Math.sqrt(A);
766
+ }
767
+ const yt = 203;
768
+ var nt = new m({
762
769
  // Absolute CIE XYZ, with a D65 whitepoint,
763
770
  // as used in most HDR colorspaces as a starting point.
764
771
  // SDR spaces are converted per BT.2048
@@ -780,32 +787,32 @@ var tt = new d({
780
787
  name: "Za"
781
788
  }
782
789
  },
783
- base: v,
790
+ base: N,
784
791
  fromBase(t) {
785
- return t.map((e) => Math.max(e * Mt, 0));
792
+ return t.map((e) => Math.max(e * yt, 0));
786
793
  },
787
794
  toBase(t) {
788
- return t.map((e) => Math.max(e / Mt, 0));
795
+ return t.map((e) => Math.max(e / yt, 0));
789
796
  }
790
797
  });
791
- const pe = 1.15, be = 0.66, wt = 2610 / 2 ** 14, dn = 2 ** 14 / 2610, yt = 3424 / 2 ** 12, Ct = 2413 / 2 ** 7, _t = 2392 / 2 ** 7, mn = 1.7 * 2523 / 2 ** 5, Lt = 2 ** 5 / (1.7 * 2523), Me = -0.56, Ee = 16295499532821565e-27, gn = [
798
+ const be = 1.15, Me = 0.66, Ct = 2610 / 2 ** 14, wr = 2 ** 14 / 2610, Lt = 3424 / 2 ** 12, St = 2413 / 2 ** 7, _t = 2392 / 2 ** 7, yr = 1.7 * 2523 / 2 ** 5, Rt = 2 ** 5 / (1.7 * 2523), we = -0.56, ke = 16295499532821565e-27, Cr = [
792
799
  [0.41478972, 0.579999, 0.014648],
793
800
  [-0.20151, 1.120649, 0.0531008],
794
801
  [-0.0166008, 0.2648, 0.6684799]
795
- ], pn = [
802
+ ], Lr = [
796
803
  [1.9242264357876067, -1.0047923125953657, 0.037651404030618],
797
804
  [0.35031676209499907, 0.7264811939316552, -0.06538442294808501],
798
805
  [-0.09098281098284752, -0.3127282905230739, 1.5227665613052603]
799
- ], bn = [
806
+ ], Sr = [
800
807
  [0.5, 0.5, 0],
801
808
  [3.524, -4.066708, 0.542708],
802
809
  [0.199076, 1.096799, -1.295875]
803
- ], Mn = [
810
+ ], _r = [
804
811
  [1, 0.1386050432715393, 0.05804731615611886],
805
812
  [0.9999999999999999, -0.1386050432715393, -0.05804731615611886],
806
813
  [0.9999999999999998, -0.09601924202631895, -0.8118918960560388]
807
814
  ];
808
- var Mr = new d({
815
+ var S0 = new m({
809
816
  id: "jzazbz",
810
817
  name: "Jzazbz",
811
818
  coords: {
@@ -820,20 +827,20 @@ var Mr = new d({
820
827
  refRange: [-0.5, 0.5]
821
828
  }
822
829
  },
823
- base: tt,
830
+ base: nt,
824
831
  fromBase(t) {
825
- let [e, r, n] = t, a = pe * e - (pe - 1) * n, s = be * r - (be - 1) * e, i = C(gn, [a, s, n]).map(function(h) {
826
- let p = yt + Ct * (h / 1e4) ** wt, m = 1 + _t * (h / 1e4) ** wt;
827
- return (p / m) ** mn;
828
- }), [l, f, u] = C(bn, i);
829
- return [(1 + Me) * l / (1 + Me * l) - Ee, f, u];
832
+ let [e, r, n] = t, a = be * e - (be - 1) * n, s = Me * r - (Me - 1) * e, o = L(Cr, [a, s, n]).map(function(h) {
833
+ let p = Lt + St * (h / 1e4) ** Ct, d = 1 + _t * (h / 1e4) ** Ct;
834
+ return (p / d) ** yr;
835
+ }), [l, c, u] = L(Sr, o);
836
+ return [(1 + we) * l / (1 + we * l) - ke, c, u];
830
837
  },
831
838
  toBase(t) {
832
- let [e, r, n] = t, a = (e + Ee) / (1 + Me - Me * (e + Ee)), o = C(Mn, [a, r, n]).map(function(h) {
833
- let p = yt - h ** Lt, m = _t * h ** Lt - Ct;
834
- return 1e4 * (p / m) ** dn;
835
- }), [i, l, f] = C(pn, o), u = (i + (pe - 1) * f) / pe, c = (l + (be - 1) * u) / be;
836
- return [u, c, f];
839
+ let [e, r, n] = t, a = (e + ke) / (1 + we - we * (e + ke)), i = L(_r, [a, r, n]).map(function(h) {
840
+ let p = Lt - h ** Rt, d = _t * h ** Rt - St;
841
+ return 1e4 * (p / d) ** wr;
842
+ }), [o, l, c] = L(Lr, i), u = (o + (be - 1) * c) / be, f = (l + (Me - 1) * u) / Me;
843
+ return [u, f, c];
837
844
  },
838
845
  formats: {
839
846
  // https://drafts.csswg.org/css-color-hdr/#Jzazbz
@@ -841,7 +848,7 @@ var Mr = new d({
841
848
  coords: ["<number> | <percentage>", "<number> | <percentage>[-1,1]", "<number> | <percentage>[-1,1]"]
842
849
  }
843
850
  }
844
- }), Ze = new d({
851
+ }), Je = new m({
845
852
  id: "jzczhz",
846
853
  name: "JzCzHz",
847
854
  coords: {
@@ -859,7 +866,7 @@ var Mr = new d({
859
866
  name: "Hue"
860
867
  }
861
868
  },
862
- base: Mr,
869
+ base: S0,
863
870
  fromBase(t) {
864
871
  let [e, r, n] = t, a;
865
872
  const s = 2e-4;
@@ -868,7 +875,7 @@ var Mr = new d({
868
875
  // Jz is still Jz
869
876
  Math.sqrt(r ** 2 + n ** 2),
870
877
  // Chroma
871
- k(a)
878
+ H(a)
872
879
  // Hue, in degrees [0 to 360)
873
880
  ];
874
881
  },
@@ -883,31 +890,31 @@ var Mr = new d({
883
890
  ];
884
891
  }
885
892
  });
886
- function wn(t, e) {
887
- [t, e] = g([t, e]);
888
- let [r, n, a] = Ze.from(t), [s, o, i] = Ze.from(e), l = r - s, f = n - o;
889
- Number.isNaN(a) && Number.isNaN(i) ? (a = 0, i = 0) : Number.isNaN(a) ? a = i : Number.isNaN(i) && (i = a);
890
- let u = a - i, c = 2 * Math.sqrt(n * o) * Math.sin(u / 2 * (Math.PI / 180));
891
- return Math.sqrt(l ** 2 + f ** 2 + c ** 2);
892
- }
893
- const wr = 3424 / 4096, yr = 2413 / 128, Cr = 2392 / 128, St = 2610 / 16384, yn = 2523 / 32, Cn = 16384 / 2610, Rt = 32 / 2523, _n = [
893
+ function Rr(t, e) {
894
+ [t, e] = b([t, e]);
895
+ let [r, n, a] = Je.from(t), [s, i, o] = Je.from(e), l = r - s, c = n - i;
896
+ Number.isNaN(a) && Number.isNaN(o) ? (a = 0, o = 0) : Number.isNaN(a) ? a = o : Number.isNaN(o) && (o = a);
897
+ let u = a - o, f = 2 * Math.sqrt(n * i) * Math.sin(u / 2 * (Math.PI / 180));
898
+ return Math.sqrt(l ** 2 + c ** 2 + f ** 2);
899
+ }
900
+ const _0 = 3424 / 4096, R0 = 2413 / 128, x0 = 2392 / 128, xt = 2610 / 16384, xr = 2523 / 32, Nr = 16384 / 2610, Nt = 32 / 2523, Br = [
894
901
  [0.3592832590121217, 0.6976051147779502, -0.035891593232029],
895
902
  [-0.1920808463704993, 1.100476797037432, 0.0753748658519118],
896
903
  [0.0070797844607479, 0.0748396662186362, 0.8433265453898765]
897
- ], Ln = [
904
+ ], Ir = [
898
905
  [2048 / 4096, 2048 / 4096, 0],
899
906
  [6610 / 4096, -13613 / 4096, 7003 / 4096],
900
907
  [17933 / 4096, -17390 / 4096, -543 / 4096]
901
- ], Sn = [
908
+ ], zr = [
902
909
  [0.9999999999999998, 0.0086090370379328, 0.111029625003026],
903
910
  [0.9999999999999998, -0.0086090370379328, -0.1110296250030259],
904
911
  [0.9999999999999998, 0.5600313357106791, -0.3206271749873188]
905
- ], Rn = [
912
+ ], $r = [
906
913
  [2.0701522183894223, -1.3263473389671563, 0.2066510476294053],
907
914
  [0.3647385209748072, 0.6805660249472273, -0.0453045459220347],
908
915
  [-0.0497472075358123, -0.0492609666966131, 1.1880659249923042]
909
916
  ];
910
- var Ge = new d({
917
+ var Fe = new m({
911
918
  id: "ictcp",
912
919
  name: "ICTCP",
913
920
  // From BT.2100-2 page 7:
@@ -935,111 +942,111 @@ var Ge = new d({
935
942
  name: "CP"
936
943
  }
937
944
  },
938
- base: tt,
945
+ base: nt,
939
946
  fromBase(t) {
940
- let e = C(_n, t);
941
- return xn(e);
947
+ let e = L(Br, t);
948
+ return Pr(e);
942
949
  },
943
950
  toBase(t) {
944
- let e = vn(t);
945
- return C(Rn, e);
951
+ let e = Er(t);
952
+ return L($r, e);
946
953
  }
947
954
  });
948
- function xn(t) {
955
+ function Pr(t) {
949
956
  let e = t.map(function(r) {
950
- let n = wr + yr * (r / 1e4) ** St, a = 1 + Cr * (r / 1e4) ** St;
951
- return (n / a) ** yn;
957
+ let n = _0 + R0 * (r / 1e4) ** xt, a = 1 + x0 * (r / 1e4) ** xt;
958
+ return (n / a) ** xr;
952
959
  });
953
- return C(Ln, e);
960
+ return L(Ir, e);
954
961
  }
955
- function vn(t) {
956
- return C(Sn, t).map(function(n) {
957
- let a = Math.max(n ** Rt - wr, 0), s = yr - Cr * n ** Rt;
958
- return 1e4 * (a / s) ** Cn;
962
+ function Er(t) {
963
+ return L(zr, t).map(function(n) {
964
+ let a = Math.max(n ** Nt - _0, 0), s = R0 - x0 * n ** Nt;
965
+ return 1e4 * (a / s) ** Nr;
959
966
  });
960
967
  }
961
- function Bn(t, e) {
962
- [t, e] = g([t, e]);
963
- let [r, n, a] = Ge.from(t), [s, o, i] = Ge.from(e);
964
- return 720 * Math.sqrt((r - s) ** 2 + 0.25 * (n - o) ** 2 + (a - i) ** 2);
968
+ function vr(t, e) {
969
+ [t, e] = b([t, e]);
970
+ let [r, n, a] = Fe.from(t), [s, i, o] = Fe.from(e);
971
+ return 720 * Math.sqrt((r - s) ** 2 + 0.25 * (n - i) ** 2 + (a - o) ** 2);
965
972
  }
966
- const Nn = B.D65, _r = 0.42, xt = 1 / _r, Ae = 2 * Math.PI, Lr = [
973
+ const Ar = B.D65, N0 = 0.42, Bt = 1 / N0, He = 2 * Math.PI, B0 = [
967
974
  [0.401288, 0.650173, -0.051461],
968
975
  [-0.250268, 1.204414, 0.045854],
969
976
  [-2079e-6, 0.048952, 0.953127]
970
- ], In = [
977
+ ], kr = [
971
978
  [1.8620678550872327, -1.0112546305316843, 0.14918677544445175],
972
979
  [0.38752654323613717, 0.6214474419314753, -0.008973985167612518],
973
980
  [-0.015841498849333856, -0.03412293802851557, 1.0499644368778496]
974
- ], $n = [
981
+ ], Hr = [
975
982
  [460, 451, 288],
976
983
  [460, -891, -261],
977
984
  [460, -220, -6300]
978
- ], zn = {
985
+ ], Tr = {
979
986
  dark: [0.8, 0.525, 0.8],
980
987
  dim: [0.9, 0.59, 0.9],
981
988
  average: [1, 0.69, 1]
982
- }, Z = {
989
+ }, G = {
983
990
  // Red, Yellow, Green, Blue, Red
984
991
  h: [20.14, 90, 164.25, 237.53, 380.14],
985
992
  e: [0.8, 0.7, 1, 1.2, 0.8],
986
993
  H: [0, 100, 200, 300, 400]
987
- }, Pn = 180 / Math.PI, vt = Math.PI / 180;
988
- function Sr(t, e) {
994
+ }, Or = 180 / Math.PI, It = Math.PI / 180;
995
+ function I0(t, e) {
989
996
  return t.map((n) => {
990
- const a = A(e * Math.abs(n) * 0.01, _r);
991
- return 400 * Be(a, n) / (a + 27.13);
997
+ const a = k(e * Math.abs(n) * 0.01, N0);
998
+ return 400 * Ie(a, n) / (a + 27.13);
992
999
  });
993
1000
  }
994
- function En(t, e) {
995
- const r = 100 / e * 27.13 ** xt;
1001
+ function Yr(t, e) {
1002
+ const r = 100 / e * 27.13 ** Bt;
996
1003
  return t.map((n) => {
997
1004
  const a = Math.abs(n);
998
- return Be(r * A(a / (400 - a), xt), n);
1005
+ return Ie(r * k(a / (400 - a), Bt), n);
999
1006
  });
1000
1007
  }
1001
- function An(t) {
1002
- let e = k(t);
1003
- e <= Z.h[0] && (e += 360);
1004
- const r = mr(Z.h, e) - 1, [n, a] = Z.h.slice(r, r + 2), [s, o] = Z.e.slice(r, r + 2), i = Z.H[r], l = (e - n) / s;
1005
- return i + 100 * l / (l + (a - e) / o);
1008
+ function Dr(t) {
1009
+ let e = H(t);
1010
+ e <= G.h[0] && (e += 360);
1011
+ const r = w0(G.h, e) - 1, [n, a] = G.h.slice(r, r + 2), [s, i] = G.e.slice(r, r + 2), o = G.H[r], l = (e - n) / s;
1012
+ return o + 100 * l / (l + (a - e) / i);
1006
1013
  }
1007
- function kn(t) {
1014
+ function Xr(t) {
1008
1015
  let e = (t % 400 + 400) % 400;
1009
1016
  const r = Math.floor(0.01 * e);
1010
1017
  e = e % 100;
1011
- const [n, a] = Z.h.slice(r, r + 2), [s, o] = Z.e.slice(r, r + 2);
1012
- return k(
1013
- (e * (o * n - s * a) - 100 * n * o) / (e * (o - s) - 100 * o)
1018
+ const [n, a] = G.h.slice(r, r + 2), [s, i] = G.e.slice(r, r + 2);
1019
+ return H(
1020
+ (e * (i * n - s * a) - 100 * n * i) / (e * (i - s) - 100 * i)
1014
1021
  );
1015
1022
  }
1016
- function Rr(t, e, r, n, a) {
1023
+ function z0(t, e, r, n, a) {
1017
1024
  const s = {};
1018
1025
  s.discounting = a, s.refWhite = t, s.surround = n;
1019
- const o = t.map((b) => b * 100);
1026
+ const i = t.map((g) => g * 100);
1020
1027
  s.la = e, s.yb = r;
1021
- const i = o[1], l = C(Lr, o);
1022
- n = zn[s.surround];
1023
- const f = n[0];
1028
+ const o = i[1], l = L(B0, i);
1029
+ n = Tr[s.surround];
1030
+ const c = n[0];
1024
1031
  s.c = n[1], s.nc = n[2];
1025
- const c = (1 / (5 * s.la + 1)) ** 4;
1026
- s.fl = c * s.la + 0.1 * (1 - c) * (1 - c) * Math.cbrt(5 * s.la), s.flRoot = s.fl ** 0.25, s.n = s.yb / i, s.z = 1.48 + Math.sqrt(s.n), s.nbb = 0.725 * s.n ** -0.2, s.ncb = s.nbb;
1032
+ const f = (1 / (5 * s.la + 1)) ** 4;
1033
+ s.fl = f * s.la + 0.1 * (1 - f) * (1 - f) * Math.cbrt(5 * s.la), s.flRoot = s.fl ** 0.25, s.n = s.yb / o, s.z = 1.48 + Math.sqrt(s.n), s.nbb = 0.725 * s.n ** -0.2, s.ncb = s.nbb;
1027
1034
  const h = Math.max(
1028
- Math.min(f * (1 - 1 / 3.6 * Math.exp((-s.la - 42) / 92)), 1),
1035
+ Math.min(c * (1 - 1 / 3.6 * Math.exp((-s.la - 42) / 92)), 1),
1029
1036
  0
1030
1037
  );
1031
- s.dRgb = l.map((b) => oe(1, i / b, h)), s.dRgbInv = s.dRgb.map((b) => 1 / b);
1032
- const p = l.map((b, M) => b * s.dRgb[M]), m = Sr(p, s.fl);
1033
- return s.aW = s.nbb * (2 * m[0] + m[1] + 0.05 * m[2]), s;
1038
+ s.dRgb = l.map((g) => oe(1, o / g, h)), s.dRgbInv = s.dRgb.map((g) => 1 / g);
1039
+ const p = l.map((g, M) => g * s.dRgb[M]), d = I0(p, s.fl);
1040
+ return s.aW = s.nbb * (2 * d[0] + d[1] + 0.05 * d[2]), s;
1034
1041
  }
1035
- const Bt = Rr(
1036
- Nn,
1042
+ const zt = z0(
1043
+ Ar,
1037
1044
  64 / Math.PI * 0.2,
1038
1045
  20,
1039
1046
  "average",
1040
1047
  !1
1041
1048
  );
1042
- function Je(t, e) {
1049
+ function We(t, e) {
1043
1050
  if (!(t.J !== void 0 ^ t.Q !== void 0))
1044
1051
  throw new Error("Conversion requires one and only one: 'J' or 'Q'");
1045
1052
  if (!(t.C !== void 0 ^ t.M !== void 0 ^ t.s !== void 0))
@@ -1049,35 +1056,35 @@ function Je(t, e) {
1049
1056
  if (t.J === 0 || t.Q === 0)
1050
1057
  return [0, 0, 0];
1051
1058
  let r = 0;
1052
- t.h !== void 0 ? r = k(t.h) * vt : r = kn(t.H) * vt;
1059
+ t.h !== void 0 ? r = H(t.h) * It : r = Xr(t.H) * It;
1053
1060
  const n = Math.cos(r), a = Math.sin(r);
1054
1061
  let s = 0;
1055
- t.J !== void 0 ? s = A(t.J, 1 / 2) * 0.1 : t.Q !== void 0 && (s = 0.25 * e.c * t.Q / ((e.aW + 4) * e.flRoot));
1056
- let o = 0;
1057
- t.C !== void 0 ? o = t.C / s : t.M !== void 0 ? o = t.M / e.flRoot / s : t.s !== void 0 && (o = 4e-4 * t.s ** 2 * (e.aW + 4) / e.c);
1058
- const i = A(
1059
- o * Math.pow(1.64 - Math.pow(0.29, e.n), -0.73),
1062
+ t.J !== void 0 ? s = k(t.J, 1 / 2) * 0.1 : t.Q !== void 0 && (s = 0.25 * e.c * t.Q / ((e.aW + 4) * e.flRoot));
1063
+ let i = 0;
1064
+ t.C !== void 0 ? i = t.C / s : t.M !== void 0 ? i = t.M / e.flRoot / s : t.s !== void 0 && (i = 4e-4 * t.s ** 2 * (e.aW + 4) / e.c);
1065
+ const o = k(
1066
+ i * Math.pow(1.64 - Math.pow(0.29, e.n), -0.73),
1060
1067
  10 / 9
1061
- ), l = 0.25 * (Math.cos(r + 2) + 3.8), f = e.aW * A(s, 2 / e.c / e.z), u = 5e4 / 13 * e.nc * e.ncb * l, c = f / e.nbb, h = 23 * (c + 0.305) * Ke(i, 23 * u + i * (11 * n + 108 * a)), p = h * n, m = h * a, b = En(
1062
- C($n, [c, p, m]).map((M) => M * 1 / 1403),
1068
+ ), l = 0.25 * (Math.cos(r + 2) + 3.8), c = e.aW * k(s, 2 / e.c / e.z), u = 5e4 / 13 * e.nc * e.ncb * l, f = c / e.nbb, h = 23 * (f + 0.305) * et(o, 23 * u + o * (11 * n + 108 * a)), p = h * n, d = h * a, g = Yr(
1069
+ L(Hr, [f, p, d]).map((M) => M * 1 / 1403),
1063
1070
  e.fl
1064
1071
  );
1065
- return C(
1066
- In,
1067
- b.map((M, R) => M * e.dRgbInv[R])
1072
+ return L(
1073
+ kr,
1074
+ g.map((M, _) => M * e.dRgbInv[_])
1068
1075
  ).map((M) => M / 100);
1069
1076
  }
1070
- function xr(t, e) {
1071
- const r = t.map((L) => L * 100), n = Sr(
1072
- C(Lr, r).map((L, I) => L * e.dRgb[I]),
1077
+ function $0(t, e) {
1078
+ const r = t.map((y) => y * 100), n = I0(
1079
+ L(B0, r).map((y, $) => y * e.dRgb[$]),
1073
1080
  e.fl
1074
- ), a = n[0] + (-12 * n[1] + n[2]) / 11, s = (n[0] + n[1] - 2 * n[2]) / 9, o = (Math.atan2(s, a) % Ae + Ae) % Ae, i = 0.25 * (Math.cos(o + 2) + 3.8), l = 5e4 / 13 * e.nc * e.ncb * Ke(
1075
- i * Math.sqrt(a ** 2 + s ** 2),
1081
+ ), a = n[0] + (-12 * n[1] + n[2]) / 11, s = (n[0] + n[1] - 2 * n[2]) / 9, i = (Math.atan2(s, a) % He + He) % He, o = 0.25 * (Math.cos(i + 2) + 3.8), l = 5e4 / 13 * e.nc * e.ncb * et(
1082
+ o * Math.sqrt(a ** 2 + s ** 2),
1076
1083
  n[0] + n[1] + 1.05 * n[2] + 0.305
1077
- ), f = A(l, 0.9) * Math.pow(1.64 - Math.pow(0.29, e.n), 0.73), u = e.nbb * (2 * n[0] + n[1] + 0.05 * n[2]), c = A(u / e.aW, 0.5 * e.c * e.z), h = 100 * A(c, 2), p = 4 / e.c * c * (e.aW + 4) * e.flRoot, m = f * c, b = m * e.flRoot, M = k(o * Pn), R = An(M), _ = 50 * A(e.c * f / (e.aW + 4), 1 / 2);
1078
- return { J: h, C: m, h: M, s: _, Q: p, M: b, H: R };
1084
+ ), c = k(l, 0.9) * Math.pow(1.64 - Math.pow(0.29, e.n), 0.73), u = e.nbb * (2 * n[0] + n[1] + 0.05 * n[2]), f = k(u / e.aW, 0.5 * e.c * e.z), h = 100 * k(f, 2), p = 4 / e.c * f * (e.aW + 4) * e.flRoot, d = c * f, g = d * e.flRoot, M = H(i * Or), _ = Dr(M), S = 50 * k(e.c * c / (e.aW + 4), 1 / 2);
1085
+ return { J: h, C: d, h: M, s: S, Q: p, M: g, H: _ };
1079
1086
  }
1080
- var Hn = new d({
1087
+ var jr = new m({
1081
1088
  id: "cam16-jmh",
1082
1089
  cssId: "--cam16-jmh",
1083
1090
  name: "CAM16-JMh",
@@ -1096,60 +1103,60 @@ var Hn = new d({
1096
1103
  name: "Hue"
1097
1104
  }
1098
1105
  },
1099
- base: v,
1106
+ base: N,
1100
1107
  fromBase(t) {
1101
- const e = xr(t, Bt);
1108
+ const e = $0(t, zt);
1102
1109
  return [e.J, e.M, e.h];
1103
1110
  },
1104
1111
  toBase(t) {
1105
- return Je(
1112
+ return We(
1106
1113
  { J: t[0], M: t[1], h: t[2] },
1107
- Bt
1114
+ zt
1108
1115
  );
1109
1116
  }
1110
1117
  });
1111
- const Tn = B.D65, On = 216 / 24389, vr = 24389 / 27;
1112
- function Yn(t) {
1113
- return 116 * (t > On ? Math.cbrt(t) : (vr * t + 16) / 116) - 16;
1118
+ const qr = B.D65, Zr = 216 / 24389, P0 = 24389 / 27;
1119
+ function Gr(t) {
1120
+ return 116 * (t > Zr ? Math.cbrt(t) : (P0 * t + 16) / 116) - 16;
1114
1121
  }
1115
- function Fe(t) {
1116
- return t > 8 ? Math.pow((t + 16) / 116, 3) : t / vr;
1122
+ function Qe(t) {
1123
+ return t > 8 ? Math.pow((t + 16) / 116, 3) : t / P0;
1117
1124
  }
1118
- function Dn(t, e) {
1119
- let [r, n, a] = t, s = [], o = 0;
1125
+ function Jr(t, e) {
1126
+ let [r, n, a] = t, s = [], i = 0;
1120
1127
  if (a === 0)
1121
1128
  return [0, 0, 0];
1122
- let i = Fe(a);
1123
- a > 0 ? o = 0.00379058511492914 * a ** 2 + 0.608983189401032 * a + 0.9155088574762233 : o = 9514440756550361e-21 * a ** 2 + 0.08693057439788597 * a - 21.928975842194614;
1124
- const l = 2e-12, f = 15;
1125
- let u = 0, c = 1 / 0;
1126
- for (; u <= f; ) {
1127
- s = Je({ J: o, C: n, h: r }, e);
1128
- const h = Math.abs(s[1] - i);
1129
- if (h < c) {
1129
+ let o = Qe(a);
1130
+ a > 0 ? i = 0.00379058511492914 * a ** 2 + 0.608983189401032 * a + 0.9155088574762233 : i = 9514440756550361e-21 * a ** 2 + 0.08693057439788597 * a - 21.928975842194614;
1131
+ const l = 2e-12, c = 15;
1132
+ let u = 0, f = 1 / 0;
1133
+ for (; u <= c; ) {
1134
+ s = We({ J: i, C: n, h: r }, e);
1135
+ const h = Math.abs(s[1] - o);
1136
+ if (h < f) {
1130
1137
  if (h <= l)
1131
1138
  return s;
1132
- c = h;
1139
+ f = h;
1133
1140
  }
1134
- o = o - (s[1] - i) * o / (2 * s[1]), u += 1;
1141
+ i = i - (s[1] - o) * i / (2 * s[1]), u += 1;
1135
1142
  }
1136
- return Je({ J: o, C: n, h: r }, e);
1143
+ return We({ J: i, C: n, h: r }, e);
1137
1144
  }
1138
- function jn(t, e) {
1139
- const r = Yn(t[1]);
1145
+ function Fr(t, e) {
1146
+ const r = Gr(t[1]);
1140
1147
  if (r === 0)
1141
1148
  return [0, 0, 0];
1142
- const n = xr(t, rt);
1143
- return [k(n.h), n.C, r];
1149
+ const n = $0(t, at);
1150
+ return [H(n.h), n.C, r];
1144
1151
  }
1145
- const rt = Rr(
1146
- Tn,
1147
- 200 / Math.PI * Fe(50),
1148
- Fe(50) * 100,
1152
+ const at = z0(
1153
+ qr,
1154
+ 200 / Math.PI * Qe(50),
1155
+ Qe(50) * 100,
1149
1156
  "average",
1150
1157
  !1
1151
1158
  );
1152
- var le = new d({
1159
+ var ce = new m({
1153
1160
  id: "hct",
1154
1161
  name: "HCT",
1155
1162
  coords: {
@@ -1167,12 +1174,12 @@ var le = new d({
1167
1174
  name: "Tone"
1168
1175
  }
1169
1176
  },
1170
- base: v,
1177
+ base: N,
1171
1178
  fromBase(t) {
1172
- return jn(t);
1179
+ return Fr(t);
1173
1180
  },
1174
1181
  toBase(t) {
1175
- return Dn(t, rt);
1182
+ return Jr(t, at);
1176
1183
  },
1177
1184
  formats: {
1178
1185
  color: {
@@ -1181,31 +1188,31 @@ var le = new d({
1181
1188
  }
1182
1189
  }
1183
1190
  });
1184
- const Xn = Math.PI / 180, Nt = [1, 7e-3, 0.0228];
1185
- function It(t) {
1186
- t[1] < 0 && (t = le.fromBase(le.toBase(t)));
1187
- const e = Math.log(Math.max(1 + Nt[2] * t[1] * rt.flRoot, 1)) / Nt[2], r = t[0] * Xn, n = e * Math.cos(r), a = e * Math.sin(r);
1191
+ const Wr = Math.PI / 180, $t = [1, 7e-3, 0.0228];
1192
+ function Pt(t) {
1193
+ t[1] < 0 && (t = ce.fromBase(ce.toBase(t)));
1194
+ const e = Math.log(Math.max(1 + $t[2] * t[1] * at.flRoot, 1)) / $t[2], r = t[0] * Wr, n = e * Math.cos(r), a = e * Math.sin(r);
1188
1195
  return [t[2], n, a];
1189
1196
  }
1190
- function qn(t, e) {
1191
- [t, e] = g([t, e]);
1192
- let [r, n, a] = It(le.from(t)), [s, o, i] = It(le.from(e));
1193
- return Math.sqrt((r - s) ** 2 + (n - o) ** 2 + (a - i) ** 2);
1194
- }
1195
- var V = {
1196
- deltaE76: un,
1197
- deltaECMC: hn,
1198
- deltaE2000: pr,
1199
- deltaEJz: wn,
1200
- deltaEITP: Bn,
1201
- deltaEOK: qe,
1202
- deltaEHCT: qn
1197
+ function Qr(t, e) {
1198
+ [t, e] = b([t, e]);
1199
+ let [r, n, a] = Pt(ce.from(t)), [s, i, o] = Pt(ce.from(e));
1200
+ return Math.sqrt((r - s) ** 2 + (n - i) ** 2 + (a - o) ** 2);
1201
+ }
1202
+ var ee = {
1203
+ deltaE76: pr,
1204
+ deltaECMC: Mr,
1205
+ deltaE2000: C0,
1206
+ deltaEJz: Rr,
1207
+ deltaEITP: vr,
1208
+ deltaEOK: Ge,
1209
+ deltaEHCT: Qr
1203
1210
  };
1204
- function Zn(t) {
1211
+ function Ur(t) {
1205
1212
  const e = t ? Math.floor(Math.log10(Math.abs(t))) : 0;
1206
1213
  return Math.max(parseFloat(`1e${e - 2}`), 1e-6);
1207
1214
  }
1208
- const $t = {
1215
+ const Et = {
1209
1216
  hct: {
1210
1217
  method: "hct.c",
1211
1218
  jnd: 2,
@@ -1219,199 +1226,200 @@ const $t = {
1219
1226
  blackWhiteClamp: { channel: "hct.t", min: 0, max: 100 }
1220
1227
  }
1221
1228
  };
1222
- function X(t, {
1223
- method: e = P.gamut_mapping,
1229
+ function q(t, {
1230
+ method: e = v.gamut_mapping,
1224
1231
  space: r = void 0,
1225
1232
  deltaEMethod: n = "",
1226
1233
  jnd: a = 2,
1227
1234
  blackWhiteClamp: s = {}
1228
1235
  } = {}) {
1229
- if (t = g(t), ce(arguments[1]) ? r = arguments[1] : r || (r = t.space), r = d.get(r), G(t, r, { epsilon: 0 }))
1236
+ if (t = b(t), ue(arguments[1]) ? r = arguments[1] : r || (r = t.space), r = m.get(r), J(t, r, { epsilon: 0 }))
1230
1237
  return t;
1231
- let o;
1238
+ let i;
1232
1239
  if (e === "css")
1233
- o = Gn(t, { space: r });
1240
+ i = Kr(t, { space: r });
1234
1241
  else {
1235
- if (e !== "clip" && !G(t, r)) {
1236
- Object.prototype.hasOwnProperty.call($t, e) && ({ method: e, jnd: a, deltaEMethod: n, blackWhiteClamp: s } = $t[e]);
1237
- let i = pr;
1242
+ if (e !== "clip" && !J(t, r)) {
1243
+ Object.prototype.hasOwnProperty.call(Et, e) && ({ method: e, jnd: a, deltaEMethod: n, blackWhiteClamp: s } = Et[e]);
1244
+ let o = C0;
1238
1245
  if (n !== "") {
1239
- for (let f in V)
1240
- if ("deltae" + n.toLowerCase() === f.toLowerCase()) {
1241
- i = V[f];
1246
+ for (let c in ee)
1247
+ if ("deltae" + n.toLowerCase() === c.toLowerCase()) {
1248
+ o = ee[c];
1242
1249
  break;
1243
1250
  }
1244
1251
  }
1245
- let l = X(y(t, r), { method: "clip", space: r });
1246
- if (i(t, l) > a) {
1252
+ let l = q(C(t, r), { method: "clip", space: r });
1253
+ if (o(t, l) > a) {
1247
1254
  if (Object.keys(s).length === 3) {
1248
- let _ = d.resolveCoord(s.channel), L = $(y(t, _.space), _.id);
1249
- if (D(L) && (L = 0), L >= s.max)
1250
- return y({ space: "xyz-d65", coords: B.D65 }, t.space);
1251
- if (L <= s.min)
1252
- return y({ space: "xyz-d65", coords: [0, 0, 0] }, t.space);
1255
+ let S = m.resolveCoord(s.channel), y = P(C(t, S.space), S.id);
1256
+ if (X(y) && (y = 0), y >= s.max)
1257
+ return C({ space: "xyz-d65", coords: B.D65 }, t.space);
1258
+ if (y <= s.min)
1259
+ return C({ space: "xyz-d65", coords: [0, 0, 0] }, t.space);
1253
1260
  }
1254
- let f = d.resolveCoord(e), u = f.space, c = f.id, h = y(t, u);
1255
- h.coords.forEach((_, L) => {
1256
- D(_) && (h.coords[L] = 0);
1261
+ let c = m.resolveCoord(e), u = c.space, f = c.id, h = C(t, u);
1262
+ h.coords.forEach((S, y) => {
1263
+ X(S) && (h.coords[y] = 0);
1257
1264
  });
1258
- let m = (f.range || f.refRange)[0], b = Zn(a), M = m, R = $(h, c);
1259
- for (; R - M > b; ) {
1260
- let _ = K(h);
1261
- _ = X(_, { space: r, method: "clip" }), i(h, _) - a < b ? M = $(h, c) : R = $(h, c), T(h, c, (M + R) / 2);
1265
+ let d = (c.range || c.refRange)[0], g = Ur(a), M = d, _ = P(h, f);
1266
+ for (; _ - M > g; ) {
1267
+ let S = V(h);
1268
+ S = q(S, { space: r, method: "clip" }), o(h, S) - a < g ? M = P(h, f) : _ = P(h, f), O(h, f, (M + _) / 2);
1262
1269
  }
1263
- o = y(h, r);
1270
+ i = C(h, r);
1264
1271
  } else
1265
- o = l;
1272
+ i = l;
1266
1273
  } else
1267
- o = y(t, r);
1268
- if (e === "clip" || !G(o, r, { epsilon: 0 })) {
1269
- let i = Object.values(r.coords).map((l) => l.range || []);
1270
- o.coords = o.coords.map((l, f) => {
1271
- let [u, c] = i[f];
1272
- return u !== void 0 && (l = Math.max(u, l)), c !== void 0 && (l = Math.min(l, c)), l;
1274
+ i = C(t, r);
1275
+ if (e === "clip" || !J(i, r, { epsilon: 0 })) {
1276
+ let o = Object.values(r.coords).map((l) => l.range || []);
1277
+ i.coords = i.coords.map((l, c) => {
1278
+ let [u, f] = o[c];
1279
+ return u !== void 0 && (l = Math.max(u, l)), f !== void 0 && (l = Math.min(l, f)), l;
1273
1280
  });
1274
1281
  }
1275
1282
  }
1276
- return r !== t.space && (o = y(o, t.space)), t.coords = o.coords, t;
1283
+ return r !== t.space && (i = C(i, t.space)), t.coords = i.coords, t;
1277
1284
  }
1278
- X.returns = "color";
1279
- const zt = {
1280
- WHITE: { space: U, coords: [1, 0, 0] },
1281
- BLACK: { space: U, coords: [0, 0, 0] }
1285
+ q.returns = "color";
1286
+ const vt = {
1287
+ WHITE: { space: K, coords: [1, 0, 0] },
1288
+ BLACK: { space: K, coords: [0, 0, 0] }
1282
1289
  };
1283
- function Gn(t, { space: e } = {}) {
1284
- t = g(t), e || (e = t.space), e = d.get(e);
1285
- const a = d.get("oklch");
1290
+ function Kr(t, { space: e } = {}) {
1291
+ t = b(t), e || (e = t.space), e = m.get(e);
1292
+ const a = m.get("oklch");
1286
1293
  if (e.isUnbounded)
1287
- return y(t, e);
1288
- const s = y(t, a);
1289
- let o = s.coords[0];
1290
- if (o >= 1) {
1291
- const m = y(zt.WHITE, e);
1292
- return m.alpha = t.alpha, y(m, e);
1293
- }
1294
- if (o <= 0) {
1295
- const m = y(zt.BLACK, e);
1296
- return m.alpha = t.alpha, y(m, e);
1297
- }
1298
- if (G(s, e, { epsilon: 0 }))
1299
- return y(s, e);
1300
- function i(m) {
1301
- const b = y(m, e), M = Object.values(e.coords);
1302
- return b.coords = b.coords.map((R, _) => {
1303
- if ("range" in M[_]) {
1304
- const [L, I] = M[_].range;
1305
- return dr(L, R, I);
1294
+ return C(t, e);
1295
+ const s = C(t, a);
1296
+ let i = s.coords[0];
1297
+ if (i >= 1) {
1298
+ const d = C(vt.WHITE, e);
1299
+ return d.alpha = t.alpha, C(d, e);
1300
+ }
1301
+ if (i <= 0) {
1302
+ const d = C(vt.BLACK, e);
1303
+ return d.alpha = t.alpha, C(d, e);
1304
+ }
1305
+ if (J(s, e, { epsilon: 0 }))
1306
+ return C(s, e);
1307
+ function o(d) {
1308
+ const g = C(d, e), M = Object.values(e.coords);
1309
+ return g.coords = g.coords.map((_, S) => {
1310
+ if ("range" in M[S]) {
1311
+ const [y, $] = M[S].range;
1312
+ return M0(y, _, $);
1306
1313
  }
1307
- return R;
1308
- }), b;
1314
+ return _;
1315
+ }), g;
1309
1316
  }
1310
- let l = 0, f = s.coords[1], u = !0, c = K(s), h = i(c), p = qe(h, c);
1317
+ let l = 0, c = s.coords[1], u = !0, f = V(s), h = o(f), p = Ge(h, f);
1311
1318
  if (p < 0.02)
1312
1319
  return h;
1313
- for (; f - l > 1e-4; ) {
1314
- const m = (l + f) / 2;
1315
- if (c.coords[1] = m, u && G(c, e, { epsilon: 0 }))
1316
- l = m;
1317
- else if (h = i(c), p = qe(h, c), p < 0.02) {
1320
+ for (; c - l > 1e-4; ) {
1321
+ const d = (l + c) / 2;
1322
+ if (f.coords[1] = d, u && J(f, e, { epsilon: 0 }))
1323
+ l = d;
1324
+ else if (h = o(f), p = Ge(h, f), p < 0.02) {
1318
1325
  if (0.02 - p < 1e-4)
1319
1326
  break;
1320
- u = !1, l = m;
1327
+ u = !1, l = d;
1321
1328
  } else
1322
- f = m;
1329
+ c = d;
1323
1330
  }
1324
1331
  return h;
1325
1332
  }
1326
- function y(t, e, { inGamut: r } = {}) {
1327
- t = g(t), e = d.get(e);
1333
+ function C(t, e, { inGamut: r } = {}) {
1334
+ t = b(t), e = m.get(e);
1328
1335
  let n = e.from(t), a = { space: e, coords: n, alpha: t.alpha };
1329
- return r && (a = X(a, r === !0 ? void 0 : r)), a;
1336
+ return r && (a = q(a, r === !0 ? void 0 : r)), a;
1330
1337
  }
1331
- y.returns = "color";
1332
- function se(t, {
1333
- precision: e = P.precision,
1338
+ C.returns = "color";
1339
+ function ie(t, {
1340
+ precision: e = v.precision,
1334
1341
  format: r = "default",
1335
1342
  inGamut: n = !0,
1336
1343
  ...a
1337
1344
  } = {}) {
1345
+ var l;
1338
1346
  let s;
1339
- t = g(t);
1340
- let o = r;
1341
- r = t.space.getFormat(r) ?? t.space.getFormat("default") ?? d.DEFAULT_FORMAT;
1342
- let i = t.coords.slice();
1343
- if (n ||= r.toGamut, n && !G(t) && (i = X(K(t), n === !0 ? void 0 : n).coords), r.type === "custom")
1347
+ t = b(t);
1348
+ let i = r;
1349
+ r = t.space.getFormat(r) ?? t.space.getFormat("default") ?? m.DEFAULT_FORMAT;
1350
+ let o = t.coords.slice();
1351
+ if (n || (n = r.toGamut), n && !J(t) && (o = q(V(t), n === !0 ? void 0 : n).coords), r.type === "custom")
1344
1352
  if (a.precision = e, r.serialize)
1345
- s = r.serialize(i, t.alpha, a);
1353
+ s = r.serialize(o, t.alpha, a);
1346
1354
  else
1347
- throw new TypeError(`format ${o} can only be used to parse colors, not for serialization`);
1355
+ throw new TypeError(`format ${i} can only be used to parse colors, not for serialization`);
1348
1356
  else {
1349
- let l = r.name || "color";
1350
- r.serializeCoords ? i = r.serializeCoords(i, e) : e !== null && (i = i.map((h) => Se(h, { precision: e })));
1351
- let f = [...i];
1352
- if (l === "color") {
1353
- let h = r.id || r.ids?.[0] || t.space.id;
1354
- f.unshift(h);
1357
+ let c = r.name || "color";
1358
+ r.serializeCoords ? o = r.serializeCoords(o, e) : e !== null && (o = o.map((p) => Re(p, { precision: e })));
1359
+ let u = [...o];
1360
+ if (c === "color") {
1361
+ let p = r.id || ((l = r.ids) == null ? void 0 : l[0]) || t.space.id;
1362
+ u.unshift(p);
1355
1363
  }
1356
- let u = t.alpha;
1357
- e !== null && (u = Se(u, { precision: e }));
1358
- let c = t.alpha >= 1 || r.noAlpha ? "" : `${r.commas ? "," : " /"} ${u}`;
1359
- s = `${l}(${f.join(r.commas ? ", " : " ")}${c})`;
1364
+ let f = t.alpha;
1365
+ e !== null && (f = Re(f, { precision: e }));
1366
+ let h = t.alpha >= 1 || r.noAlpha ? "" : `${r.commas ? "," : " /"} ${f}`;
1367
+ s = `${c}(${u.join(r.commas ? ", " : " ")}${h})`;
1360
1368
  }
1361
1369
  return s;
1362
1370
  }
1363
- const Jn = [
1371
+ const Vr = [
1364
1372
  [0.6369580483012914, 0.14461690358620832, 0.1688809751641721],
1365
1373
  [0.2627002120112671, 0.6779980715188708, 0.05930171646986196],
1366
1374
  [0, 0.028072693049087428, 1.060985057710791]
1367
- ], Fn = [
1375
+ ], en = [
1368
1376
  [1.716651187971268, -0.355670783776392, -0.25336628137366],
1369
1377
  [-0.666684351832489, 1.616481236634939, 0.0157685458139111],
1370
1378
  [0.017639857445311, -0.042770613257809, 0.942103121235474]
1371
1379
  ];
1372
- var Ne = new N({
1380
+ var ze = new z({
1373
1381
  id: "rec2020-linear",
1374
1382
  cssId: "--rec2020-linear",
1375
1383
  name: "Linear REC.2020",
1376
1384
  white: "D65",
1377
- toXYZ_M: Jn,
1378
- fromXYZ_M: Fn
1385
+ toXYZ_M: Vr,
1386
+ fromXYZ_M: en
1379
1387
  });
1380
- const we = 1.09929682680944, Pt = 0.018053968510807;
1381
- var Br = new N({
1388
+ const ye = 1.09929682680944, At = 0.018053968510807;
1389
+ var E0 = new z({
1382
1390
  id: "rec2020",
1383
1391
  name: "REC.2020",
1384
- base: Ne,
1392
+ base: ze,
1385
1393
  // Non-linear transfer function from Rec. ITU-R BT.2020-2 table 4
1386
1394
  toBase(t) {
1387
1395
  return t.map(function(e) {
1388
- return e < Pt * 4.5 ? e / 4.5 : Math.pow((e + we - 1) / we, 1 / 0.45);
1396
+ return e < At * 4.5 ? e / 4.5 : Math.pow((e + ye - 1) / ye, 1 / 0.45);
1389
1397
  });
1390
1398
  },
1391
1399
  fromBase(t) {
1392
1400
  return t.map(function(e) {
1393
- return e >= Pt ? we * Math.pow(e, 0.45) - (we - 1) : 4.5 * e;
1401
+ return e >= At ? ye * Math.pow(e, 0.45) - (ye - 1) : 4.5 * e;
1394
1402
  });
1395
1403
  }
1396
1404
  });
1397
- const Wn = [
1405
+ const tn = [
1398
1406
  [0.4865709486482162, 0.26566769316909306, 0.1982172852343625],
1399
1407
  [0.2289745640697488, 0.6917385218365064, 0.079286914093745],
1400
1408
  [0, 0.04511338185890264, 1.043944368900976]
1401
- ], Qn = [
1409
+ ], rn = [
1402
1410
  [2.493496911941425, -0.9313836179191239, -0.40271078445071684],
1403
1411
  [-0.8294889695615747, 1.7626640603183463, 0.023624685841943577],
1404
1412
  [0.03584583024378447, -0.07617238926804182, 0.9568845240076872]
1405
1413
  ];
1406
- var Nr = new N({
1414
+ var v0 = new z({
1407
1415
  id: "p3-linear",
1408
1416
  cssId: "--display-p3-linear",
1409
1417
  name: "Linear P3",
1410
1418
  white: "D65",
1411
- toXYZ_M: Wn,
1412
- fromXYZ_M: Qn
1419
+ toXYZ_M: tn,
1420
+ fromXYZ_M: rn
1413
1421
  });
1414
- const Un = [
1422
+ const nn = [
1415
1423
  [0.41239079926595934, 0.357584339383878, 0.1804807884018343],
1416
1424
  [0.21263900587151027, 0.715168678767756, 0.07219231536073371],
1417
1425
  [0.01933081871559182, 0.11919477979462598, 0.9505321522496607]
@@ -1420,13 +1428,13 @@ const Un = [
1420
1428
  [-0.9692436362808796, 1.8759675015077202, 0.04155505740717559],
1421
1429
  [0.05563007969699366, -0.20397695888897652, 1.0569715142428786]
1422
1430
  ];
1423
- var Ir = new N({
1431
+ var A0 = new z({
1424
1432
  id: "srgb-linear",
1425
1433
  name: "Linear sRGB",
1426
1434
  white: "D65",
1427
- toXYZ_M: Un,
1435
+ toXYZ_M: nn,
1428
1436
  fromXYZ_M: x
1429
- }), Et = {
1437
+ }), kt = {
1430
1438
  aliceblue: [240 / 255, 248 / 255, 1],
1431
1439
  antiquewhite: [250 / 255, 235 / 255, 215 / 255],
1432
1440
  aqua: [0, 1, 1],
@@ -1576,11 +1584,11 @@ var Ir = new N({
1576
1584
  yellow: [1, 1, 0],
1577
1585
  yellowgreen: [154 / 255, 205 / 255, 50 / 255]
1578
1586
  };
1579
- let At = Array(3).fill("<percentage> | <number>[0, 255]"), kt = Array(3).fill("<number>[0, 255]");
1580
- var ee = new N({
1587
+ let Ht = Array(3).fill("<percentage> | <number>[0, 255]"), Tt = Array(3).fill("<number>[0, 255]");
1588
+ var te = new z({
1581
1589
  id: "srgb",
1582
1590
  name: "sRGB",
1583
- base: Ir,
1591
+ base: A0,
1584
1592
  fromBase: (t) => t.map((e) => {
1585
1593
  let r = e < 0 ? -1 : 1, n = e * r;
1586
1594
  return n > 31308e-7 ? r * (1.055 * n ** (1 / 2.4) - 0.055) : 12.92 * e;
@@ -1591,26 +1599,26 @@ var ee = new N({
1591
1599
  }),
1592
1600
  formats: {
1593
1601
  rgb: {
1594
- coords: At
1602
+ coords: Ht
1595
1603
  },
1596
1604
  rgb_number: {
1597
1605
  name: "rgb",
1598
1606
  commas: !0,
1599
- coords: kt,
1607
+ coords: Tt,
1600
1608
  noAlpha: !0
1601
1609
  },
1602
1610
  color: {
1603
1611
  /* use defaults */
1604
1612
  },
1605
1613
  rgba: {
1606
- coords: At,
1614
+ coords: Ht,
1607
1615
  commas: !0,
1608
1616
  lastAlpha: !0
1609
1617
  },
1610
1618
  rgba_number: {
1611
1619
  name: "rgba",
1612
1620
  commas: !0,
1613
- coords: kt
1621
+ coords: Tt
1614
1622
  },
1615
1623
  hex: {
1616
1624
  type: "custom",
@@ -1642,110 +1650,110 @@ var ee = new N({
1642
1650
  parse(t) {
1643
1651
  t = t.toLowerCase();
1644
1652
  let e = { spaceId: "srgb", coords: null, alpha: 1 };
1645
- if (t === "transparent" ? (e.coords = Et.black, e.alpha = 0) : e.coords = Et[t], e.coords)
1653
+ if (t === "transparent" ? (e.coords = kt.black, e.alpha = 0) : e.coords = kt[t], e.coords)
1646
1654
  return e;
1647
1655
  }
1648
1656
  }
1649
1657
  }
1650
- }), $r = new N({
1658
+ }), k0 = new z({
1651
1659
  id: "p3",
1652
1660
  cssId: "display-p3",
1653
1661
  name: "P3",
1654
- base: Nr,
1662
+ base: v0,
1655
1663
  // Gamma encoding/decoding is the same as sRGB
1656
- fromBase: ee.fromBase,
1657
- toBase: ee.toBase
1664
+ fromBase: te.fromBase,
1665
+ toBase: te.toBase
1658
1666
  });
1659
- P.display_space = ee;
1660
- let Kn;
1667
+ v.display_space = te;
1668
+ let an;
1661
1669
  if (typeof CSS < "u" && CSS.supports)
1662
- for (let t of [z, Br, $r]) {
1663
- let e = t.getMinCoords(), n = se({ space: t, coords: e, alpha: 1 });
1670
+ for (let t of [E, E0, k0]) {
1671
+ let e = t.getMinCoords(), n = ie({ space: t, coords: e, alpha: 1 });
1664
1672
  if (CSS.supports("color", n)) {
1665
- P.display_space = t;
1673
+ v.display_space = t;
1666
1674
  break;
1667
1675
  }
1668
1676
  }
1669
- function Vn(t, { space: e = P.display_space, ...r } = {}) {
1670
- let n = se(t, r);
1671
- if (typeof CSS > "u" || CSS.supports("color", n) || !P.display_space)
1677
+ function sn(t, { space: e = v.display_space, ...r } = {}) {
1678
+ let n = ie(t, r);
1679
+ if (typeof CSS > "u" || CSS.supports("color", n) || !v.display_space)
1672
1680
  n = new String(n), n.color = t;
1673
1681
  else {
1674
1682
  let a = t;
1675
- if ((t.coords.some(D) || D(t.alpha)) && !(Kn ??= CSS.supports("color", "hsl(none 50% 50%)")) && (a = K(t), a.coords = a.coords.map(S), a.alpha = S(a.alpha), n = se(a, r), CSS.supports("color", n)))
1683
+ if ((t.coords.some(X) || X(t.alpha)) && !(an ?? (an = CSS.supports("color", "hsl(none 50% 50%)"))) && (a = V(t), a.coords = a.coords.map(R), a.alpha = R(a.alpha), n = ie(a, r), CSS.supports("color", n)))
1676
1684
  return n = new String(n), n.color = a, n;
1677
- a = y(a, e), n = new String(se(a, r)), n.color = a;
1685
+ a = C(a, e), n = new String(ie(a, r)), n.color = a;
1678
1686
  }
1679
1687
  return n;
1680
1688
  }
1681
- function e0(t, e) {
1682
- return t = g(t), e = g(e), t.space === e.space && t.alpha === e.alpha && t.coords.every((r, n) => r === e.coords[n]);
1689
+ function on(t, e) {
1690
+ return t = b(t), e = b(e), t.space === e.space && t.alpha === e.alpha && t.coords.every((r, n) => r === e.coords[n]);
1683
1691
  }
1684
- function q(t) {
1685
- return $(t, [v, "y"]);
1692
+ function Z(t) {
1693
+ return P(t, [N, "y"]);
1686
1694
  }
1687
- function zr(t, e) {
1688
- T(t, [v, "y"], e);
1695
+ function H0(t, e) {
1696
+ O(t, [N, "y"], e);
1689
1697
  }
1690
- function t0(t) {
1698
+ function ln(t) {
1691
1699
  Object.defineProperty(t.prototype, "luminance", {
1692
1700
  get() {
1693
- return q(this);
1701
+ return Z(this);
1694
1702
  },
1695
1703
  set(e) {
1696
- zr(this, e);
1704
+ H0(this, e);
1697
1705
  }
1698
1706
  });
1699
1707
  }
1700
- var r0 = /* @__PURE__ */ Object.freeze({
1708
+ var cn = /* @__PURE__ */ Object.freeze({
1701
1709
  __proto__: null,
1702
- getLuminance: q,
1703
- register: t0,
1704
- setLuminance: zr
1710
+ getLuminance: Z,
1711
+ register: ln,
1712
+ setLuminance: H0
1705
1713
  });
1706
- function n0(t, e) {
1707
- t = g(t), e = g(e);
1708
- let r = Math.max(q(t), 0), n = Math.max(q(e), 0);
1714
+ function un(t, e) {
1715
+ t = b(t), e = b(e);
1716
+ let r = Math.max(Z(t), 0), n = Math.max(Z(e), 0);
1709
1717
  return n > r && ([r, n] = [n, r]), (r + 0.05) / (n + 0.05);
1710
1718
  }
1711
- const a0 = 0.56, s0 = 0.57, o0 = 0.62, i0 = 0.65, Ht = 0.022, l0 = 1.414, c0 = 0.1, u0 = 5e-4, f0 = 1.14, Tt = 0.027, h0 = 1.14;
1712
- function Ot(t) {
1713
- return t >= Ht ? t : t + (Ht - t) ** l0;
1719
+ const fn = 0.56, hn = 0.57, dn = 0.62, mn = 0.65, Ot = 0.022, gn = 1.414, pn = 0.1, bn = 5e-4, Mn = 1.14, Yt = 0.027, wn = 1.14;
1720
+ function Dt(t) {
1721
+ return t >= Ot ? t : t + (Ot - t) ** gn;
1714
1722
  }
1715
- function F(t) {
1723
+ function W(t) {
1716
1724
  let e = t < 0 ? -1 : 1, r = Math.abs(t);
1717
1725
  return e * Math.pow(r, 2.4);
1718
1726
  }
1719
- function d0(t, e) {
1720
- e = g(e), t = g(t);
1721
- let r, n, a, s, o, i;
1722
- e = y(e, "srgb"), [s, o, i] = e.coords;
1723
- let l = F(s) * 0.2126729 + F(o) * 0.7151522 + F(i) * 0.072175;
1724
- t = y(t, "srgb"), [s, o, i] = t.coords;
1725
- let f = F(s) * 0.2126729 + F(o) * 0.7151522 + F(i) * 0.072175, u = Ot(l), c = Ot(f), h = c > u;
1726
- return Math.abs(c - u) < u0 ? n = 0 : h ? (r = c ** a0 - u ** s0, n = r * f0) : (r = c ** i0 - u ** o0, n = r * h0), Math.abs(n) < c0 ? a = 0 : n > 0 ? a = n - Tt : a = n + Tt, a * 100;
1727
- }
1728
- function m0(t, e) {
1729
- t = g(t), e = g(e);
1730
- let r = Math.max(q(t), 0), n = Math.max(q(e), 0);
1727
+ function yn(t, e) {
1728
+ e = b(e), t = b(t);
1729
+ let r, n, a, s, i, o;
1730
+ e = C(e, "srgb"), [s, i, o] = e.coords;
1731
+ let l = W(s) * 0.2126729 + W(i) * 0.7151522 + W(o) * 0.072175;
1732
+ t = C(t, "srgb"), [s, i, o] = t.coords;
1733
+ let c = W(s) * 0.2126729 + W(i) * 0.7151522 + W(o) * 0.072175, u = Dt(l), f = Dt(c), h = f > u;
1734
+ return Math.abs(f - u) < bn ? n = 0 : h ? (r = f ** fn - u ** hn, n = r * Mn) : (r = f ** mn - u ** dn, n = r * wn), Math.abs(n) < pn ? a = 0 : n > 0 ? a = n - Yt : a = n + Yt, a * 100;
1735
+ }
1736
+ function Cn(t, e) {
1737
+ t = b(t), e = b(e);
1738
+ let r = Math.max(Z(t), 0), n = Math.max(Z(e), 0);
1731
1739
  n > r && ([r, n] = [n, r]);
1732
1740
  let a = r + n;
1733
1741
  return a === 0 ? 0 : (r - n) / a;
1734
1742
  }
1735
- const g0 = 5e4;
1736
- function p0(t, e) {
1737
- t = g(t), e = g(e);
1738
- let r = Math.max(q(t), 0), n = Math.max(q(e), 0);
1739
- return n > r && ([r, n] = [n, r]), n === 0 ? g0 : (r - n) / n;
1743
+ const Ln = 5e4;
1744
+ function Sn(t, e) {
1745
+ t = b(t), e = b(e);
1746
+ let r = Math.max(Z(t), 0), n = Math.max(Z(e), 0);
1747
+ return n > r && ([r, n] = [n, r]), n === 0 ? Ln : (r - n) / n;
1740
1748
  }
1741
- function b0(t, e) {
1742
- t = g(t), e = g(e);
1743
- let r = $(t, [z, "l"]), n = $(e, [z, "l"]);
1749
+ function _n(t, e) {
1750
+ t = b(t), e = b(e);
1751
+ let r = P(t, [E, "l"]), n = P(e, [E, "l"]);
1744
1752
  return Math.abs(r - n);
1745
1753
  }
1746
- const M0 = 216 / 24389, Yt = 24 / 116, ye = 24389 / 27;
1747
- let ke = B.D65;
1748
- var We = new d({
1754
+ const Rn = 216 / 24389, Xt = 24 / 116, Ce = 24389 / 27;
1755
+ let Te = B.D65;
1756
+ var Ue = new m({
1749
1757
  id: "lab-d65",
1750
1758
  name: "Lab D65",
1751
1759
  coords: {
@@ -1762,12 +1770,12 @@ var We = new d({
1762
1770
  },
1763
1771
  // Assuming XYZ is relative to D65, convert to CIE Lab
1764
1772
  // from CIE standard, which now defines these as a rational fraction
1765
- white: ke,
1766
- base: v,
1773
+ white: Te,
1774
+ base: N,
1767
1775
  // Convert D65-adapted XYZ to Lab
1768
1776
  // CIE 15.3:2004 section 8.2.1.1
1769
1777
  fromBase(t) {
1770
- let r = t.map((n, a) => n / ke[a]).map((n) => n > M0 ? Math.cbrt(n) : (ye * n + 16) / 116);
1778
+ let r = t.map((n, a) => n / Te[a]).map((n) => n > Rn ? Math.cbrt(n) : (Ce * n + 16) / 116);
1771
1779
  return [
1772
1780
  116 * r[1] - 16,
1773
1781
  // L
@@ -1783,10 +1791,10 @@ var We = new d({
1783
1791
  toBase(t) {
1784
1792
  let e = [];
1785
1793
  return e[1] = (t[0] + 16) / 116, e[0] = t[1] / 500 + e[1], e[2] = e[1] - t[2] / 200, [
1786
- e[0] > Yt ? Math.pow(e[0], 3) : (116 * e[0] - 16) / ye,
1787
- t[0] > 8 ? Math.pow((t[0] + 16) / 116, 3) : t[0] / ye,
1788
- e[2] > Yt ? Math.pow(e[2], 3) : (116 * e[2] - 16) / ye
1789
- ].map((n, a) => n * ke[a]);
1794
+ e[0] > Xt ? Math.pow(e[0], 3) : (116 * e[0] - 16) / Ce,
1795
+ t[0] > 8 ? Math.pow((t[0] + 16) / 116, 3) : t[0] / Ce,
1796
+ e[2] > Xt ? Math.pow(e[2], 3) : (116 * e[2] - 16) / Ce
1797
+ ].map((n, a) => n * Te[a]);
1790
1798
  },
1791
1799
  formats: {
1792
1800
  "lab-d65": {
@@ -1794,159 +1802,159 @@ var We = new d({
1794
1802
  }
1795
1803
  }
1796
1804
  });
1797
- const He = Math.pow(5, 0.5) * 0.5 + 0.5;
1798
- function w0(t, e) {
1799
- t = g(t), e = g(e);
1800
- let r = $(t, [We, "l"]), n = $(e, [We, "l"]), a = Math.abs(Math.pow(r, He) - Math.pow(n, He)), s = Math.pow(a, 1 / He) * Math.SQRT2 - 40;
1805
+ const Oe = Math.pow(5, 0.5) * 0.5 + 0.5;
1806
+ function xn(t, e) {
1807
+ t = b(t), e = b(e);
1808
+ let r = P(t, [Ue, "l"]), n = P(e, [Ue, "l"]), a = Math.abs(Math.pow(r, Oe) - Math.pow(n, Oe)), s = Math.pow(a, 1 / Oe) * Math.SQRT2 - 40;
1801
1809
  return s < 7.5 ? 0 : s;
1802
1810
  }
1803
- var Le = /* @__PURE__ */ Object.freeze({
1811
+ var _e = /* @__PURE__ */ Object.freeze({
1804
1812
  __proto__: null,
1805
- contrastAPCA: d0,
1806
- contrastDeltaPhi: w0,
1807
- contrastLstar: b0,
1808
- contrastMichelson: m0,
1809
- contrastWCAG21: n0,
1810
- contrastWeber: p0
1813
+ contrastAPCA: yn,
1814
+ contrastDeltaPhi: xn,
1815
+ contrastLstar: _n,
1816
+ contrastMichelson: Cn,
1817
+ contrastWCAG21: un,
1818
+ contrastWeber: Sn
1811
1819
  });
1812
- function y0(t, e, r = {}) {
1813
- ce(r) && (r = { algorithm: r });
1820
+ function Nn(t, e, r = {}) {
1821
+ ue(r) && (r = { algorithm: r });
1814
1822
  let { algorithm: n, ...a } = r;
1815
1823
  if (!n) {
1816
- let s = Object.keys(Le).map((o) => o.replace(/^contrast/, "")).join(", ");
1824
+ let s = Object.keys(_e).map((i) => i.replace(/^contrast/, "")).join(", ");
1817
1825
  throw new TypeError(`contrast() function needs a contrast algorithm. Please specify one of: ${s}`);
1818
1826
  }
1819
- t = g(t), e = g(e);
1820
- for (let s in Le)
1827
+ t = b(t), e = b(e);
1828
+ for (let s in _e)
1821
1829
  if ("contrast" + n.toLowerCase() === s.toLowerCase())
1822
- return Le[s](t, e, a);
1830
+ return _e[s](t, e, a);
1823
1831
  throw new TypeError(`Unknown contrast algorithm: ${n}`);
1824
1832
  }
1825
- function Ie(t) {
1826
- let [e, r, n] = ue(t, v), a = e + 15 * r + 3 * n;
1833
+ function $e(t) {
1834
+ let [e, r, n] = fe(t, N), a = e + 15 * r + 3 * n;
1827
1835
  return [4 * e / a, 9 * r / a];
1828
1836
  }
1829
- function Pr(t) {
1830
- let [e, r, n] = ue(t, v), a = e + r + n;
1837
+ function T0(t) {
1838
+ let [e, r, n] = fe(t, N), a = e + r + n;
1831
1839
  return [e / a, r / a];
1832
1840
  }
1833
- function C0(t) {
1841
+ function Bn(t) {
1834
1842
  Object.defineProperty(t.prototype, "uv", {
1835
1843
  get() {
1836
- return Ie(this);
1844
+ return $e(this);
1837
1845
  }
1838
1846
  }), Object.defineProperty(t.prototype, "xy", {
1839
1847
  get() {
1840
- return Pr(this);
1848
+ return T0(this);
1841
1849
  }
1842
1850
  });
1843
1851
  }
1844
- var _0 = /* @__PURE__ */ Object.freeze({
1852
+ var In = /* @__PURE__ */ Object.freeze({
1845
1853
  __proto__: null,
1846
- register: C0,
1847
- uv: Ie,
1848
- xy: Pr
1854
+ register: Bn,
1855
+ uv: $e,
1856
+ xy: T0
1849
1857
  });
1850
- function ae(t, e, r = {}) {
1851
- ce(r) && (r = { method: r });
1852
- let { method: n = P.deltaE, ...a } = r;
1853
- for (let s in V)
1858
+ function se(t, e, r = {}) {
1859
+ ue(r) && (r = { method: r });
1860
+ let { method: n = v.deltaE, ...a } = r;
1861
+ for (let s in ee)
1854
1862
  if ("deltae" + n.toLowerCase() === s.toLowerCase())
1855
- return V[s](t, e, a);
1863
+ return ee[s](t, e, a);
1856
1864
  throw new TypeError(`Unknown deltaE method: ${n}`);
1857
1865
  }
1858
- function L0(t, e = 0.25) {
1859
- let n = [d.get("oklch", "lch"), "l"];
1860
- return T(t, n, (a) => a * (1 + e));
1866
+ function zn(t, e = 0.25) {
1867
+ let n = [m.get("oklch", "lch"), "l"];
1868
+ return O(t, n, (a) => a * (1 + e));
1861
1869
  }
1862
- function S0(t, e = 0.25) {
1863
- let n = [d.get("oklch", "lch"), "l"];
1864
- return T(t, n, (a) => a * (1 - e));
1870
+ function $n(t, e = 0.25) {
1871
+ let n = [m.get("oklch", "lch"), "l"];
1872
+ return O(t, n, (a) => a * (1 - e));
1865
1873
  }
1866
- var R0 = /* @__PURE__ */ Object.freeze({
1874
+ var Pn = /* @__PURE__ */ Object.freeze({
1867
1875
  __proto__: null,
1868
- darken: S0,
1869
- lighten: L0
1876
+ darken: $n,
1877
+ lighten: zn
1870
1878
  });
1871
- function Er(t, e, r = 0.5, n = {}) {
1872
- return [t, e] = [g(t), g(e)], Y(r) === "object" && ([r, n] = [0.5, r]), fe(t, e, n)(r);
1879
+ function O0(t, e, r = 0.5, n = {}) {
1880
+ return [t, e] = [b(t), b(e)], D(r) === "object" && ([r, n] = [0.5, r]), he(t, e, n)(r);
1873
1881
  }
1874
- function Ar(t, e, r = {}) {
1882
+ function Y0(t, e, r = {}) {
1875
1883
  let n;
1876
- nt(t) && ([n, r] = [t, e], [t, e] = n.rangeArgs.colors);
1884
+ st(t) && ([n, r] = [t, e], [t, e] = n.rangeArgs.colors);
1877
1885
  let {
1878
1886
  maxDeltaE: a,
1879
1887
  deltaEMethod: s,
1880
- steps: o = 2,
1881
- maxSteps: i = 1e3,
1888
+ steps: i = 2,
1889
+ maxSteps: o = 1e3,
1882
1890
  ...l
1883
1891
  } = r;
1884
- n || ([t, e] = [g(t), g(e)], n = fe(t, e, l));
1885
- let f = ae(t, e), u = a > 0 ? Math.max(o, Math.ceil(f / a) + 1) : o, c = [];
1886
- if (i !== void 0 && (u = Math.min(u, i)), u === 1)
1887
- c = [{ p: 0.5, color: n(0.5) }];
1892
+ n || ([t, e] = [b(t), b(e)], n = he(t, e, l));
1893
+ let c = se(t, e), u = a > 0 ? Math.max(i, Math.ceil(c / a) + 1) : i, f = [];
1894
+ if (o !== void 0 && (u = Math.min(u, o)), u === 1)
1895
+ f = [{ p: 0.5, color: n(0.5) }];
1888
1896
  else {
1889
1897
  let h = 1 / (u - 1);
1890
- c = Array.from({ length: u }, (p, m) => {
1891
- let b = m * h;
1892
- return { p: b, color: n(b) };
1898
+ f = Array.from({ length: u }, (p, d) => {
1899
+ let g = d * h;
1900
+ return { p: g, color: n(g) };
1893
1901
  });
1894
1902
  }
1895
1903
  if (a > 0) {
1896
- let h = c.reduce((p, m, b) => {
1897
- if (b === 0)
1904
+ let h = f.reduce((p, d, g) => {
1905
+ if (g === 0)
1898
1906
  return 0;
1899
- let M = ae(m.color, c[b - 1].color, s);
1907
+ let M = se(d.color, f[g - 1].color, s);
1900
1908
  return Math.max(p, M);
1901
1909
  }, 0);
1902
1910
  for (; h > a; ) {
1903
1911
  h = 0;
1904
- for (let p = 1; p < c.length && c.length < i; p++) {
1905
- let m = c[p - 1], b = c[p], M = (b.p + m.p) / 2, R = n(M);
1906
- h = Math.max(h, ae(R, m.color), ae(R, b.color)), c.splice(p, 0, { p: M, color: n(M) }), p++;
1912
+ for (let p = 1; p < f.length && f.length < o; p++) {
1913
+ let d = f[p - 1], g = f[p], M = (g.p + d.p) / 2, _ = n(M);
1914
+ h = Math.max(h, se(_, d.color), se(_, g.color)), f.splice(p, 0, { p: M, color: n(M) }), p++;
1907
1915
  }
1908
1916
  }
1909
1917
  }
1910
- return c = c.map((h) => h.color), c;
1918
+ return f = f.map((h) => h.color), f;
1911
1919
  }
1912
- function fe(t, e, r = {}) {
1913
- if (nt(t)) {
1914
- let [l, f] = [t, e];
1915
- return fe(...l.rangeArgs.colors, { ...l.rangeArgs.options, ...f });
1920
+ function he(t, e, r = {}) {
1921
+ if (st(t)) {
1922
+ let [l, c] = [t, e];
1923
+ return he(...l.rangeArgs.colors, { ...l.rangeArgs.options, ...c });
1916
1924
  }
1917
- let { space: n, outputSpace: a, progression: s, premultiplied: o } = r;
1918
- t = g(t), e = g(e), t = K(t), e = K(e);
1919
- let i = { colors: [t, e], options: r };
1920
- if (n ? n = d.get(n) : n = d.registry[P.interpolationSpace] || t.space, a = a ? d.get(a) : n, t = y(t, n), e = y(e, n), t = X(t), e = X(e), n.coords.h && n.coords.h.type === "angle") {
1921
- let l = r.hue = r.hue || "shorter", f = [n, "h"], [u, c] = [$(t, f), $(e, f)];
1922
- isNaN(u) && !isNaN(c) ? u = c : isNaN(c) && !isNaN(u) && (c = u), [u, c] = nn(l, [u, c]), T(t, f, u), T(e, f, c);
1925
+ let { space: n, outputSpace: a, progression: s, premultiplied: i } = r;
1926
+ t = b(t), e = b(e), t = V(t), e = V(e);
1927
+ let o = { colors: [t, e], options: r };
1928
+ if (n ? n = m.get(n) : n = m.registry[v.interpolationSpace] || t.space, a = a ? m.get(a) : n, t = C(t, n), e = C(e, n), t = q(t), e = q(e), n.coords.h && n.coords.h.type === "angle") {
1929
+ let l = r.hue = r.hue || "shorter", c = [n, "h"], [u, f] = [P(t, c), P(e, c)];
1930
+ isNaN(u) && !isNaN(f) ? u = f : isNaN(f) && !isNaN(u) && (f = u), [u, f] = ur(l, [u, f]), O(t, c, u), O(e, c, f);
1923
1931
  }
1924
- return o && (t.coords = t.coords.map((l) => l * t.alpha), e.coords = e.coords.map((l) => l * e.alpha)), Object.assign((l) => {
1932
+ return i && (t.coords = t.coords.map((l) => l * t.alpha), e.coords = e.coords.map((l) => l * e.alpha)), Object.assign((l) => {
1925
1933
  l = s ? s(l) : l;
1926
- let f = t.coords.map((h, p) => {
1927
- let m = e.coords[p];
1928
- return oe(h, m, l);
1929
- }), u = oe(t.alpha, e.alpha, l), c = { space: n, coords: f, alpha: u };
1930
- return o && (c.coords = c.coords.map((h) => h / u)), a !== n && (c = y(c, a)), c;
1934
+ let c = t.coords.map((h, p) => {
1935
+ let d = e.coords[p];
1936
+ return oe(h, d, l);
1937
+ }), u = oe(t.alpha, e.alpha, l), f = { space: n, coords: c, alpha: u };
1938
+ return i && (f.coords = f.coords.map((h) => h / u)), a !== n && (f = C(f, a)), f;
1931
1939
  }, {
1932
- rangeArgs: i
1940
+ rangeArgs: o
1933
1941
  });
1934
1942
  }
1935
- function nt(t) {
1936
- return Y(t) === "function" && !!t.rangeArgs;
1943
+ function st(t) {
1944
+ return D(t) === "function" && !!t.rangeArgs;
1937
1945
  }
1938
- P.interpolationSpace = "lab";
1939
- function x0(t) {
1940
- t.defineFunction("mix", Er, { returns: "color" }), t.defineFunction("range", fe, { returns: "function<color>" }), t.defineFunction("steps", Ar, { returns: "array<color>" });
1946
+ v.interpolationSpace = "lab";
1947
+ function En(t) {
1948
+ t.defineFunction("mix", O0, { returns: "color" }), t.defineFunction("range", he, { returns: "function<color>" }), t.defineFunction("steps", Y0, { returns: "array<color>" });
1941
1949
  }
1942
- var v0 = /* @__PURE__ */ Object.freeze({
1950
+ var vn = /* @__PURE__ */ Object.freeze({
1943
1951
  __proto__: null,
1944
- isRange: nt,
1945
- mix: Er,
1946
- range: fe,
1947
- register: x0,
1948
- steps: Ar
1949
- }), kr = new d({
1952
+ isRange: st,
1953
+ mix: O0,
1954
+ range: he,
1955
+ register: En,
1956
+ steps: Y0
1957
+ }), D0 = new m({
1950
1958
  id: "hsl",
1951
1959
  name: "HSL",
1952
1960
  coords: {
@@ -1964,32 +1972,32 @@ var v0 = /* @__PURE__ */ Object.freeze({
1964
1972
  name: "Lightness"
1965
1973
  }
1966
1974
  },
1967
- base: ee,
1975
+ base: te,
1968
1976
  // Adapted from https://drafts.csswg.org/css-color-4/better-rgbToHsl.js
1969
1977
  fromBase: (t) => {
1970
- let e = Math.max(...t), r = Math.min(...t), [n, a, s] = t, [o, i, l] = [NaN, 0, (r + e) / 2], f = e - r;
1971
- if (f !== 0) {
1972
- switch (i = l === 0 || l === 1 ? 0 : (e - l) / Math.min(l, 1 - l), e) {
1978
+ let e = Math.max(...t), r = Math.min(...t), [n, a, s] = t, [i, o, l] = [NaN, 0, (r + e) / 2], c = e - r;
1979
+ if (c !== 0) {
1980
+ switch (o = l === 0 || l === 1 ? 0 : (e - l) / Math.min(l, 1 - l), e) {
1973
1981
  case n:
1974
- o = (a - s) / f + (a < s ? 6 : 0);
1982
+ i = (a - s) / c + (a < s ? 6 : 0);
1975
1983
  break;
1976
1984
  case a:
1977
- o = (s - n) / f + 2;
1985
+ i = (s - n) / c + 2;
1978
1986
  break;
1979
1987
  case s:
1980
- o = (n - a) / f + 4;
1988
+ i = (n - a) / c + 4;
1981
1989
  }
1982
- o = o * 60;
1990
+ i = i * 60;
1983
1991
  }
1984
- return i < 0 && (o += 180, i = Math.abs(i)), o >= 360 && (o -= 360), [o, i * 100, l * 100];
1992
+ return o < 0 && (i += 180, o = Math.abs(o)), i >= 360 && (i -= 360), [i, o * 100, l * 100];
1985
1993
  },
1986
1994
  // Adapted from https://en.wikipedia.org/wiki/HSL_and_HSV#HSL_to_RGB_alternative
1987
1995
  toBase: (t) => {
1988
1996
  let [e, r, n] = t;
1989
1997
  e = e % 360, e < 0 && (e += 360), r /= 100, n /= 100;
1990
1998
  function a(s) {
1991
- let o = (s + e / 30) % 12, i = r * Math.min(n, 1 - n);
1992
- return n - i * Math.max(-1, Math.min(o - 3, 9 - o, 1));
1999
+ let i = (s + e / 30) % 12, o = r * Math.min(n, 1 - n);
2000
+ return n - o * Math.max(-1, Math.min(i - 3, 9 - i, 1));
1993
2001
  }
1994
2002
  return [a(0), a(8), a(4)];
1995
2003
  },
@@ -2003,7 +2011,7 @@ var v0 = /* @__PURE__ */ Object.freeze({
2003
2011
  lastAlpha: !0
2004
2012
  }
2005
2013
  }
2006
- }), Hr = new d({
2014
+ }), X0 = new m({
2007
2015
  id: "hsv",
2008
2016
  name: "HSV",
2009
2017
  coords: {
@@ -2021,7 +2029,7 @@ var v0 = /* @__PURE__ */ Object.freeze({
2021
2029
  name: "Value"
2022
2030
  }
2023
2031
  },
2024
- base: kr,
2032
+ base: D0,
2025
2033
  // https://en.wikipedia.org/wiki/HSL_and_HSV#Interconversion
2026
2034
  fromBase(t) {
2027
2035
  let [e, r, n] = t;
@@ -2053,7 +2061,7 @@ var v0 = /* @__PURE__ */ Object.freeze({
2053
2061
  coords: ["<number> | <angle>", "<percentage> | <number>", "<percentage> | <number>"]
2054
2062
  }
2055
2063
  }
2056
- }), B0 = new d({
2064
+ }), An = new m({
2057
2065
  id: "hwb",
2058
2066
  name: "HWB",
2059
2067
  coords: {
@@ -2071,7 +2079,7 @@ var v0 = /* @__PURE__ */ Object.freeze({
2071
2079
  name: "Blackness"
2072
2080
  }
2073
2081
  },
2074
- base: Hr,
2082
+ base: X0,
2075
2083
  fromBase(t) {
2076
2084
  let [e, r, n] = t;
2077
2085
  return [e, n * (100 - r) / 100, 100 - n];
@@ -2081,11 +2089,11 @@ var v0 = /* @__PURE__ */ Object.freeze({
2081
2089
  r /= 100, n /= 100;
2082
2090
  let a = r + n;
2083
2091
  if (a >= 1) {
2084
- let i = r / a;
2085
- return [e, 0, i * 100];
2092
+ let o = r / a;
2093
+ return [e, 0, o * 100];
2086
2094
  }
2087
- let s = 1 - n, o = s === 0 ? 0 : 1 - r / s;
2088
- return [e, o * 100, s * 100];
2095
+ let s = 1 - n, i = s === 0 ? 0 : 1 - r / s;
2096
+ return [e, i * 100, s * 100];
2089
2097
  },
2090
2098
  formats: {
2091
2099
  hwb: {
@@ -2093,61 +2101,61 @@ var v0 = /* @__PURE__ */ Object.freeze({
2093
2101
  }
2094
2102
  }
2095
2103
  });
2096
- const N0 = [
2104
+ const kn = [
2097
2105
  [0.5766690429101305, 0.1855582379065463, 0.1882286462349947],
2098
2106
  [0.29734497525053605, 0.6273635662554661, 0.07529145849399788],
2099
2107
  [0.02703136138641234, 0.07068885253582723, 0.9913375368376388]
2100
- ], I0 = [
2108
+ ], Hn = [
2101
2109
  [2.0415879038107465, -0.5650069742788596, -0.34473135077832956],
2102
2110
  [-0.9692436362808795, 1.8759675015077202, 0.04155505740717557],
2103
2111
  [0.013444280632031142, -0.11836239223101838, 1.0151749943912054]
2104
2112
  ];
2105
- var Tr = new N({
2113
+ var j0 = new z({
2106
2114
  id: "a98rgb-linear",
2107
2115
  cssId: "--a98-rgb-linear",
2108
2116
  name: "Linear Adobe® 98 RGB compatible",
2109
2117
  white: "D65",
2110
- toXYZ_M: N0,
2111
- fromXYZ_M: I0
2112
- }), $0 = new N({
2118
+ toXYZ_M: kn,
2119
+ fromXYZ_M: Hn
2120
+ }), Tn = new z({
2113
2121
  id: "a98rgb",
2114
2122
  cssId: "a98-rgb",
2115
2123
  name: "Adobe® 98 RGB compatible",
2116
- base: Tr,
2124
+ base: j0,
2117
2125
  toBase: (t) => t.map((e) => Math.pow(Math.abs(e), 563 / 256) * Math.sign(e)),
2118
2126
  fromBase: (t) => t.map((e) => Math.pow(Math.abs(e), 256 / 563) * Math.sign(e))
2119
2127
  });
2120
- const z0 = [
2128
+ const On = [
2121
2129
  [0.7977666449006423, 0.13518129740053308, 0.0313477341283922],
2122
2130
  [0.2880748288194013, 0.711835234241873, 8993693872564e-17],
2123
2131
  [0, 0, 0.8251046025104602]
2124
- ], P0 = [
2132
+ ], Yn = [
2125
2133
  [1.3457868816471583, -0.25557208737979464, -0.05110186497554526],
2126
2134
  [-0.5446307051249019, 1.5082477428451468, 0.02052744743642139],
2127
2135
  [0, 0, 1.2119675456389452]
2128
2136
  ];
2129
- var Or = new N({
2137
+ var q0 = new z({
2130
2138
  id: "prophoto-linear",
2131
2139
  cssId: "--prophoto-rgb-linear",
2132
2140
  name: "Linear ProPhoto",
2133
2141
  white: "D50",
2134
- base: et,
2135
- toXYZ_M: z0,
2136
- fromXYZ_M: P0
2142
+ base: rt,
2143
+ toXYZ_M: On,
2144
+ fromXYZ_M: Yn
2137
2145
  });
2138
- const E0 = 1 / 512, A0 = 16 / 512;
2139
- var k0 = new N({
2146
+ const Dn = 1 / 512, Xn = 16 / 512;
2147
+ var jn = new z({
2140
2148
  id: "prophoto",
2141
2149
  cssId: "prophoto-rgb",
2142
2150
  name: "ProPhoto",
2143
- base: Or,
2151
+ base: q0,
2144
2152
  toBase(t) {
2145
- return t.map((e) => e < A0 ? e / 16 : e ** 1.8);
2153
+ return t.map((e) => e < Xn ? e / 16 : e ** 1.8);
2146
2154
  },
2147
2155
  fromBase(t) {
2148
- return t.map((e) => e >= E0 ? e ** (1 / 1.8) : 16 * e);
2156
+ return t.map((e) => e >= Dn ? e ** (1 / 1.8) : 16 * e);
2149
2157
  }
2150
- }), H0 = new d({
2158
+ }), qn = new m({
2151
2159
  id: "oklch",
2152
2160
  name: "Oklch",
2153
2161
  coords: {
@@ -2166,7 +2174,7 @@ var k0 = new N({
2166
2174
  }
2167
2175
  },
2168
2176
  white: "D65",
2169
- base: U,
2177
+ base: K,
2170
2178
  fromBase(t) {
2171
2179
  let [e, r, n] = t, a;
2172
2180
  const s = 2e-4;
@@ -2175,7 +2183,7 @@ var k0 = new N({
2175
2183
  // OKLab L is still L
2176
2184
  Math.sqrt(r ** 2 + n ** 2),
2177
2185
  // Chroma
2178
- k(a)
2186
+ H(a)
2179
2187
  // Hue, in degrees [0 to 360)
2180
2188
  ];
2181
2189
  },
@@ -2190,9 +2198,9 @@ var k0 = new N({
2190
2198
  }
2191
2199
  }
2192
2200
  });
2193
- let Yr = B.D65;
2194
- const T0 = 216 / 24389, Dt = 24389 / 27, [jt, Xt] = Ie({ space: v, coords: Yr });
2195
- var Dr = new d({
2201
+ let Z0 = B.D65;
2202
+ const Zn = 216 / 24389, jt = 24389 / 27, [qt, Zt] = $e({ space: N, coords: Z0 });
2203
+ var G0 = new m({
2196
2204
  id: "luv",
2197
2205
  name: "Luv",
2198
2206
  coords: {
@@ -2208,33 +2216,33 @@ var Dr = new d({
2208
2216
  refRange: [-215, 215]
2209
2217
  }
2210
2218
  },
2211
- white: Yr,
2212
- base: v,
2219
+ white: Z0,
2220
+ base: N,
2213
2221
  // Convert D65-adapted XYZ to Luv
2214
2222
  // https://en.wikipedia.org/wiki/CIELUV#The_forward_transformation
2215
2223
  fromBase(t) {
2216
- let e = [S(t[0]), S(t[1]), S(t[2])], r = e[1], [n, a] = Ie({ space: v, coords: e });
2224
+ let e = [R(t[0]), R(t[1]), R(t[2])], r = e[1], [n, a] = $e({ space: N, coords: e });
2217
2225
  if (!Number.isFinite(n) || !Number.isFinite(a))
2218
2226
  return [0, 0, 0];
2219
- let s = r <= T0 ? Dt * r : 116 * Math.cbrt(r) - 16;
2227
+ let s = r <= Zn ? jt * r : 116 * Math.cbrt(r) - 16;
2220
2228
  return [
2221
2229
  s,
2222
- 13 * s * (n - jt),
2223
- 13 * s * (a - Xt)
2230
+ 13 * s * (n - qt),
2231
+ 13 * s * (a - Zt)
2224
2232
  ];
2225
2233
  },
2226
2234
  // Convert Luv to D65-adapted XYZ
2227
2235
  // https://en.wikipedia.org/wiki/CIELUV#The_reverse_transformation
2228
2236
  toBase(t) {
2229
2237
  let [e, r, n] = t;
2230
- if (e === 0 || D(e))
2238
+ if (e === 0 || X(e))
2231
2239
  return [0, 0, 0];
2232
- r = S(r), n = S(n);
2233
- let a = r / (13 * e) + jt, s = n / (13 * e) + Xt, o = e <= 8 ? e / Dt : Math.pow((e + 16) / 116, 3);
2240
+ r = R(r), n = R(n);
2241
+ let a = r / (13 * e) + qt, s = n / (13 * e) + Zt, i = e <= 8 ? e / jt : Math.pow((e + 16) / 116, 3);
2234
2242
  return [
2235
- o * (9 * a / (4 * s)),
2236
- o,
2237
- o * ((12 - 3 * a - 20 * s) / (4 * s))
2243
+ i * (9 * a / (4 * s)),
2244
+ i,
2245
+ i * ((12 - 3 * a - 20 * s) / (4 * s))
2238
2246
  ];
2239
2247
  },
2240
2248
  formats: {
@@ -2243,7 +2251,7 @@ var Dr = new d({
2243
2251
  coords: ["<number> | <percentage>", "<number> | <percentage>[-1,1]", "<number> | <percentage>[-1,1]"]
2244
2252
  }
2245
2253
  }
2246
- }), at = new d({
2254
+ }), it = new m({
2247
2255
  id: "lchuv",
2248
2256
  name: "LChuv",
2249
2257
  coords: {
@@ -2261,7 +2269,7 @@ var Dr = new d({
2261
2269
  name: "Hue"
2262
2270
  }
2263
2271
  },
2264
- base: Dr,
2272
+ base: G0,
2265
2273
  fromBase(t) {
2266
2274
  let [e, r, n] = t, a;
2267
2275
  const s = 0.02;
@@ -2270,7 +2278,7 @@ var Dr = new d({
2270
2278
  // L is still L
2271
2279
  Math.sqrt(r ** 2 + n ** 2),
2272
2280
  // Chroma
2273
- k(a)
2281
+ H(a)
2274
2282
  // Hue, in degrees [0 to 360)
2275
2283
  ];
2276
2284
  },
@@ -2292,33 +2300,33 @@ var Dr = new d({
2292
2300
  }
2293
2301
  }
2294
2302
  });
2295
- const O0 = 216 / 24389, Y0 = 24389 / 27, qt = x[0][0], Zt = x[0][1], Te = x[0][2], Gt = x[1][0], Jt = x[1][1], Oe = x[1][2], Ft = x[2][0], Wt = x[2][1], Ye = x[2][2];
2296
- function W(t, e, r) {
2303
+ const Gn = 216 / 24389, Jn = 24389 / 27, Gt = x[0][0], Jt = x[0][1], Ye = x[0][2], Ft = x[1][0], Wt = x[1][1], De = x[1][2], Qt = x[2][0], Ut = x[2][1], Xe = x[2][2];
2304
+ function Q(t, e, r) {
2297
2305
  const n = e / (Math.sin(r) - t * Math.cos(r));
2298
2306
  return n < 0 ? 1 / 0 : n;
2299
2307
  }
2300
- function ve(t) {
2301
- const e = Math.pow(t + 16, 3) / 1560896, r = e > O0 ? e : t / Y0, n = r * (284517 * qt - 94839 * Te), a = r * (838422 * Te + 769860 * Zt + 731718 * qt), s = r * (632260 * Te - 126452 * Zt), o = r * (284517 * Gt - 94839 * Oe), i = r * (838422 * Oe + 769860 * Jt + 731718 * Gt), l = r * (632260 * Oe - 126452 * Jt), f = r * (284517 * Ft - 94839 * Ye), u = r * (838422 * Ye + 769860 * Wt + 731718 * Ft), c = r * (632260 * Ye - 126452 * Wt);
2308
+ function Be(t) {
2309
+ const e = Math.pow(t + 16, 3) / 1560896, r = e > Gn ? e : t / Jn, n = r * (284517 * Gt - 94839 * Ye), a = r * (838422 * Ye + 769860 * Jt + 731718 * Gt), s = r * (632260 * Ye - 126452 * Jt), i = r * (284517 * Ft - 94839 * De), o = r * (838422 * De + 769860 * Wt + 731718 * Ft), l = r * (632260 * De - 126452 * Wt), c = r * (284517 * Qt - 94839 * Xe), u = r * (838422 * Xe + 769860 * Ut + 731718 * Qt), f = r * (632260 * Xe - 126452 * Ut);
2302
2310
  return {
2303
2311
  r0s: n / s,
2304
2312
  r0i: a * t / s,
2305
2313
  r1s: n / (s + 126452),
2306
2314
  r1i: (a - 769860) * t / (s + 126452),
2307
- g0s: o / l,
2308
- g0i: i * t / l,
2309
- g1s: o / (l + 126452),
2310
- g1i: (i - 769860) * t / (l + 126452),
2311
- b0s: f / c,
2312
- b0i: u * t / c,
2313
- b1s: f / (c + 126452),
2314
- b1i: (u - 769860) * t / (c + 126452)
2315
+ g0s: i / l,
2316
+ g0i: o * t / l,
2317
+ g1s: i / (l + 126452),
2318
+ g1i: (o - 769860) * t / (l + 126452),
2319
+ b0s: c / f,
2320
+ b0i: u * t / f,
2321
+ b1s: c / (f + 126452),
2322
+ b1i: (u - 769860) * t / (f + 126452)
2315
2323
  };
2316
2324
  }
2317
- function Qt(t, e) {
2318
- const r = e / 360 * Math.PI * 2, n = W(t.r0s, t.r0i, r), a = W(t.r1s, t.r1i, r), s = W(t.g0s, t.g0i, r), o = W(t.g1s, t.g1i, r), i = W(t.b0s, t.b0i, r), l = W(t.b1s, t.b1i, r);
2319
- return Math.min(n, a, s, o, i, l);
2325
+ function Kt(t, e) {
2326
+ const r = e / 360 * Math.PI * 2, n = Q(t.r0s, t.r0i, r), a = Q(t.r1s, t.r1i, r), s = Q(t.g0s, t.g0i, r), i = Q(t.g1s, t.g1i, r), o = Q(t.b0s, t.b0i, r), l = Q(t.b1s, t.b1i, r);
2327
+ return Math.min(n, a, s, i, o, l);
2320
2328
  }
2321
- var D0 = new d({
2329
+ var Fn = new m({
2322
2330
  id: "hsluv",
2323
2331
  name: "HSLuv",
2324
2332
  coords: {
@@ -2336,31 +2344,31 @@ var D0 = new d({
2336
2344
  name: "Lightness"
2337
2345
  }
2338
2346
  },
2339
- base: at,
2340
- gamutSpace: ee,
2347
+ base: it,
2348
+ gamutSpace: te,
2341
2349
  // Convert LCHuv to HSLuv
2342
2350
  fromBase(t) {
2343
- let [e, r, n] = [S(t[0]), S(t[1]), S(t[2])], a;
2351
+ let [e, r, n] = [R(t[0]), R(t[1]), R(t[2])], a;
2344
2352
  if (e > 99.9999999)
2345
2353
  a = 0, e = 100;
2346
2354
  else if (e < 1e-8)
2347
2355
  a = 0, e = 0;
2348
2356
  else {
2349
- let s = ve(e), o = Qt(s, n);
2350
- a = r / o * 100;
2357
+ let s = Be(e), i = Kt(s, n);
2358
+ a = r / i * 100;
2351
2359
  }
2352
2360
  return [n, a, e];
2353
2361
  },
2354
2362
  // Convert HSLuv to LCHuv
2355
2363
  toBase(t) {
2356
- let [e, r, n] = [S(t[0]), S(t[1]), S(t[2])], a;
2364
+ let [e, r, n] = [R(t[0]), R(t[1]), R(t[2])], a;
2357
2365
  if (n > 99.9999999)
2358
2366
  n = 100, a = 0;
2359
2367
  else if (n < 1e-8)
2360
2368
  n = 0, a = 0;
2361
2369
  else {
2362
- let s = ve(n);
2363
- a = Qt(s, e) / 100 * r;
2370
+ let s = Be(n);
2371
+ a = Kt(s, e) / 100 * r;
2364
2372
  }
2365
2373
  return [n, a, e];
2366
2374
  },
@@ -2380,14 +2388,14 @@ x[1][2];
2380
2388
  x[2][0];
2381
2389
  x[2][1];
2382
2390
  x[2][2];
2383
- function Q(t, e) {
2391
+ function U(t, e) {
2384
2392
  return Math.abs(e) / Math.sqrt(Math.pow(t, 2) + 1);
2385
2393
  }
2386
- function Ut(t) {
2387
- let e = Q(t.r0s, t.r0i), r = Q(t.r1s, t.r1i), n = Q(t.g0s, t.g0i), a = Q(t.g1s, t.g1i), s = Q(t.b0s, t.b0i), o = Q(t.b1s, t.b1i);
2388
- return Math.min(e, r, n, a, s, o);
2394
+ function Vt(t) {
2395
+ let e = U(t.r0s, t.r0i), r = U(t.r1s, t.r1i), n = U(t.g0s, t.g0i), a = U(t.g1s, t.g1i), s = U(t.b0s, t.b0i), i = U(t.b1s, t.b1i);
2396
+ return Math.min(e, r, n, a, s, i);
2389
2397
  }
2390
- var j0 = new d({
2398
+ var Wn = new m({
2391
2399
  id: "hpluv",
2392
2400
  name: "HPLuv",
2393
2401
  coords: {
@@ -2405,31 +2413,31 @@ var j0 = new d({
2405
2413
  name: "Lightness"
2406
2414
  }
2407
2415
  },
2408
- base: at,
2416
+ base: it,
2409
2417
  gamutSpace: "self",
2410
2418
  // Convert LCHuv to HPLuv
2411
2419
  fromBase(t) {
2412
- let [e, r, n] = [S(t[0]), S(t[1]), S(t[2])], a;
2420
+ let [e, r, n] = [R(t[0]), R(t[1]), R(t[2])], a;
2413
2421
  if (e > 99.9999999)
2414
2422
  a = 0, e = 100;
2415
2423
  else if (e < 1e-8)
2416
2424
  a = 0, e = 0;
2417
2425
  else {
2418
- let s = ve(e), o = Ut(s);
2419
- a = r / o * 100;
2426
+ let s = Be(e), i = Vt(s);
2427
+ a = r / i * 100;
2420
2428
  }
2421
2429
  return [n, a, e];
2422
2430
  },
2423
2431
  // Convert HPLuv to LCHuv
2424
2432
  toBase(t) {
2425
- let [e, r, n] = [S(t[0]), S(t[1]), S(t[2])], a;
2433
+ let [e, r, n] = [R(t[0]), R(t[1]), R(t[2])], a;
2426
2434
  if (n > 99.9999999)
2427
2435
  n = 100, a = 0;
2428
2436
  else if (n < 1e-8)
2429
2437
  n = 0, a = 0;
2430
2438
  else {
2431
- let s = ve(n);
2432
- a = Ut(s) / 100 * r;
2439
+ let s = Be(n);
2440
+ a = Vt(s) / 100 * r;
2433
2441
  }
2434
2442
  return [n, a, e];
2435
2443
  },
@@ -2440,61 +2448,61 @@ var j0 = new d({
2440
2448
  }
2441
2449
  }
2442
2450
  });
2443
- const Kt = 203, Vt = 2610 / 2 ** 14, X0 = 2 ** 14 / 2610, q0 = 2523 / 2 ** 5, er = 2 ** 5 / 2523, tr = 3424 / 2 ** 12, rr = 2413 / 2 ** 7, nr = 2392 / 2 ** 7;
2444
- var Z0 = new N({
2451
+ const e0 = 203, t0 = 2610 / 2 ** 14, Qn = 2 ** 14 / 2610, Un = 2523 / 2 ** 5, r0 = 2 ** 5 / 2523, n0 = 3424 / 2 ** 12, a0 = 2413 / 2 ** 7, s0 = 2392 / 2 ** 7;
2452
+ var Kn = new z({
2445
2453
  id: "rec2100pq",
2446
2454
  cssId: "rec2100-pq",
2447
2455
  name: "REC.2100-PQ",
2448
- base: Ne,
2456
+ base: ze,
2449
2457
  toBase(t) {
2450
2458
  return t.map(function(e) {
2451
- return (Math.max(e ** er - tr, 0) / (rr - nr * e ** er)) ** X0 * 1e4 / Kt;
2459
+ return (Math.max(e ** r0 - n0, 0) / (a0 - s0 * e ** r0)) ** Qn * 1e4 / e0;
2452
2460
  });
2453
2461
  },
2454
2462
  fromBase(t) {
2455
2463
  return t.map(function(e) {
2456
- let r = Math.max(e * Kt / 1e4, 0), n = tr + rr * r ** Vt, a = 1 + nr * r ** Vt;
2457
- return (n / a) ** q0;
2464
+ let r = Math.max(e * e0 / 1e4, 0), n = n0 + a0 * r ** t0, a = 1 + s0 * r ** t0;
2465
+ return (n / a) ** Un;
2458
2466
  });
2459
2467
  }
2460
2468
  });
2461
- const ar = 0.17883277, sr = 0.28466892, or = 0.55991073, De = 3.7743;
2462
- var G0 = new N({
2469
+ const i0 = 0.17883277, o0 = 0.28466892, l0 = 0.55991073, je = 3.7743;
2470
+ var Vn = new z({
2463
2471
  id: "rec2100hlg",
2464
2472
  cssId: "rec2100-hlg",
2465
2473
  name: "REC.2100-HLG",
2466
2474
  referred: "scene",
2467
- base: Ne,
2475
+ base: ze,
2468
2476
  toBase(t) {
2469
2477
  return t.map(function(e) {
2470
- return e <= 0.5 ? e ** 2 / 3 * De : (Math.exp((e - or) / ar) + sr) / 12 * De;
2478
+ return e <= 0.5 ? e ** 2 / 3 * je : (Math.exp((e - l0) / i0) + o0) / 12 * je;
2471
2479
  });
2472
2480
  },
2473
2481
  fromBase(t) {
2474
2482
  return t.map(function(e) {
2475
- return e /= De, e <= 1 / 12 ? Math.sqrt(3 * e) : ar * Math.log(12 * e - sr) + or;
2483
+ return e /= je, e <= 1 / 12 ? Math.sqrt(3 * e) : i0 * Math.log(12 * e - o0) + l0;
2476
2484
  });
2477
2485
  }
2478
2486
  });
2479
- const jr = {};
2487
+ const J0 = {};
2480
2488
  j.add("chromatic-adaptation-start", (t) => {
2481
- t.options.method && (t.M = Xr(t.W1, t.W2, t.options.method));
2489
+ t.options.method && (t.M = F0(t.W1, t.W2, t.options.method));
2482
2490
  });
2483
2491
  j.add("chromatic-adaptation-end", (t) => {
2484
- t.M || (t.M = Xr(t.W1, t.W2, t.options.method));
2492
+ t.M || (t.M = F0(t.W1, t.W2, t.options.method));
2485
2493
  });
2486
- function $e({ id: t, toCone_M: e, fromCone_M: r }) {
2487
- jr[t] = arguments[0];
2494
+ function Pe({ id: t, toCone_M: e, fromCone_M: r }) {
2495
+ J0[t] = arguments[0];
2488
2496
  }
2489
- function Xr(t, e, r = "Bradford") {
2490
- let n = jr[r], [a, s, o] = C(n.toCone_M, t), [i, l, f] = C(n.toCone_M, e), u = [
2491
- [i / a, 0, 0],
2497
+ function F0(t, e, r = "Bradford") {
2498
+ let n = J0[r], [a, s, i] = L(n.toCone_M, t), [o, l, c] = L(n.toCone_M, e), u = [
2499
+ [o / a, 0, 0],
2492
2500
  [0, l / s, 0],
2493
- [0, 0, f / o]
2494
- ], c = C(u, n.toCone_M);
2495
- return C(n.fromCone_M, c);
2501
+ [0, 0, c / i]
2502
+ ], f = L(u, n.toCone_M);
2503
+ return L(n.fromCone_M, f);
2496
2504
  }
2497
- $e({
2505
+ Pe({
2498
2506
  id: "von Kries",
2499
2507
  toCone_M: [
2500
2508
  [0.40024, 0.7076, -0.08081],
@@ -2507,7 +2515,7 @@ $e({
2507
2515
  [0, 0, 1.0890636230968613]
2508
2516
  ]
2509
2517
  });
2510
- $e({
2518
+ Pe({
2511
2519
  id: "Bradford",
2512
2520
  // Convert an array of XYZ values in the range 0.0 - 1.0
2513
2521
  // to cone fundamentals
@@ -2523,7 +2531,7 @@ $e({
2523
2531
  [-0.00852866457517732, 0.04004282165408486, 0.96848669578755]
2524
2532
  ]
2525
2533
  });
2526
- $e({
2534
+ Pe({
2527
2535
  id: "CAT02",
2528
2536
  // with complete chromatic adaptation to W2, so D = 1.0
2529
2537
  toCone_M: [
@@ -2537,7 +2545,7 @@ $e({
2537
2545
  [-0.009627608738429355, -0.00569803121611342, 1.0153256399545427]
2538
2546
  ]
2539
2547
  });
2540
- $e({
2548
+ Pe({
2541
2549
  id: "CAT16",
2542
2550
  toCone_M: [
2543
2551
  [0.401288, 0.650173, -0.051461],
@@ -2571,16 +2579,16 @@ Object.assign(B, {
2571
2579
  F11: [1.00962, 1, 0.6435]
2572
2580
  });
2573
2581
  B.ACES = [0.32168 / 0.33767, 1, (1 - 0.32168 - 0.33767) / 0.33767];
2574
- const J0 = [
2582
+ const ea = [
2575
2583
  [0.6624541811085053, 0.13400420645643313, 0.1561876870049078],
2576
2584
  [0.27222871678091454, 0.6740817658111484, 0.05368951740793705],
2577
2585
  [-0.005574649490394108, 0.004060733528982826, 1.0103391003129971]
2578
- ], F0 = [
2586
+ ], ta = [
2579
2587
  [1.6410233796943257, -0.32480329418479, -0.23642469523761225],
2580
2588
  [-0.6636628587229829, 1.6153315916573379, 0.016756347685530137],
2581
2589
  [0.011721894328375376, -0.008284441996237409, 0.9883948585390215]
2582
2590
  ];
2583
- var qr = new N({
2591
+ var W0 = new z({
2584
2592
  id: "acescg",
2585
2593
  cssId: "--acescg",
2586
2594
  name: "ACEScg",
@@ -2603,11 +2611,11 @@ var qr = new N({
2603
2611
  },
2604
2612
  referred: "scene",
2605
2613
  white: B.ACES,
2606
- toXYZ_M: J0,
2607
- fromXYZ_M: F0
2614
+ toXYZ_M: ea,
2615
+ fromXYZ_M: ta
2608
2616
  });
2609
- const Ce = 2 ** -16, je = -0.35828683, _e = (Math.log2(65504) + 9.72) / 17.52;
2610
- var W0 = new N({
2617
+ const Le = 2 ** -16, qe = -0.35828683, Se = (Math.log2(65504) + 9.72) / 17.52;
2618
+ var ra = new z({
2611
2619
  id: "acescc",
2612
2620
  cssId: "--acescc",
2613
2621
  name: "ACEScc",
@@ -2620,71 +2628,71 @@ var W0 = new N({
2620
2628
  // so that all positive ACES values are maintained."
2621
2629
  coords: {
2622
2630
  r: {
2623
- range: [je, _e],
2631
+ range: [qe, Se],
2624
2632
  name: "Red"
2625
2633
  },
2626
2634
  g: {
2627
- range: [je, _e],
2635
+ range: [qe, Se],
2628
2636
  name: "Green"
2629
2637
  },
2630
2638
  b: {
2631
- range: [je, _e],
2639
+ range: [qe, Se],
2632
2640
  name: "Blue"
2633
2641
  }
2634
2642
  },
2635
2643
  referred: "scene",
2636
- base: qr,
2644
+ base: W0,
2637
2645
  // from section 4.4.2 Decoding Function
2638
2646
  toBase(t) {
2639
2647
  const e = -0.3013698630136986;
2640
2648
  return t.map(function(r) {
2641
- return r <= e ? (2 ** (r * 17.52 - 9.72) - Ce) * 2 : r < _e ? 2 ** (r * 17.52 - 9.72) : 65504;
2649
+ return r <= e ? (2 ** (r * 17.52 - 9.72) - Le) * 2 : r < Se ? 2 ** (r * 17.52 - 9.72) : 65504;
2642
2650
  });
2643
2651
  },
2644
2652
  // Non-linear encoding function from S-2014-003, section 4.4.1 Encoding Function
2645
2653
  fromBase(t) {
2646
2654
  return t.map(function(e) {
2647
- return e <= 0 ? (Math.log2(Ce) + 9.72) / 17.52 : e < Ce ? (Math.log2(Ce + e * 0.5) + 9.72) / 17.52 : (Math.log2(e) + 9.72) / 17.52;
2655
+ return e <= 0 ? (Math.log2(Le) + 9.72) / 17.52 : e < Le ? (Math.log2(Le + e * 0.5) + 9.72) / 17.52 : (Math.log2(e) + 9.72) / 17.52;
2648
2656
  });
2649
2657
  }
2650
2658
  // encoded media white (rgb 1,1,1) => linear [ 222.861, 222.861, 222.861 ]
2651
2659
  // encoded media black (rgb 0,0,0) => linear [ 0.0011857, 0.0011857, 0.0011857]
2652
- }), ir = /* @__PURE__ */ Object.freeze({
2660
+ }), c0 = /* @__PURE__ */ Object.freeze({
2653
2661
  __proto__: null,
2654
- A98RGB: $0,
2655
- A98RGB_Linear: Tr,
2656
- ACEScc: W0,
2657
- ACEScg: qr,
2658
- CAM16_JMh: Hn,
2659
- HCT: le,
2660
- HPLuv: j0,
2661
- HSL: kr,
2662
- HSLuv: D0,
2663
- HSV: Hr,
2664
- HWB: B0,
2665
- ICTCP: Ge,
2666
- JzCzHz: Ze,
2667
- Jzazbz: Mr,
2668
- LCH: ie,
2669
- LCHuv: at,
2670
- Lab: z,
2671
- Lab_D65: We,
2672
- Luv: Dr,
2673
- OKLCH: H0,
2674
- OKLab: U,
2675
- P3: $r,
2676
- P3_Linear: Nr,
2677
- ProPhoto: k0,
2678
- ProPhoto_Linear: Or,
2679
- REC_2020: Br,
2680
- REC_2020_Linear: Ne,
2681
- REC_2100_HLG: G0,
2682
- REC_2100_PQ: Z0,
2683
- XYZ_ABS_D65: tt,
2684
- XYZ_D50: et,
2685
- XYZ_D65: v,
2686
- sRGB: ee,
2687
- sRGB_Linear: Ir
2662
+ A98RGB: Tn,
2663
+ A98RGB_Linear: j0,
2664
+ ACEScc: ra,
2665
+ ACEScg: W0,
2666
+ CAM16_JMh: jr,
2667
+ HCT: ce,
2668
+ HPLuv: Wn,
2669
+ HSL: D0,
2670
+ HSLuv: Fn,
2671
+ HSV: X0,
2672
+ HWB: An,
2673
+ ICTCP: Fe,
2674
+ JzCzHz: Je,
2675
+ Jzazbz: S0,
2676
+ LCH: le,
2677
+ LCHuv: it,
2678
+ Lab: E,
2679
+ Lab_D65: Ue,
2680
+ Luv: G0,
2681
+ OKLCH: qn,
2682
+ OKLab: K,
2683
+ P3: k0,
2684
+ P3_Linear: v0,
2685
+ ProPhoto: jn,
2686
+ ProPhoto_Linear: q0,
2687
+ REC_2020: E0,
2688
+ REC_2020_Linear: ze,
2689
+ REC_2100_HLG: Vn,
2690
+ REC_2100_PQ: Kn,
2691
+ XYZ_ABS_D65: nt,
2692
+ XYZ_D50: rt,
2693
+ XYZ_D65: N,
2694
+ sRGB: te,
2695
+ sRGB_Linear: A0
2688
2696
  });
2689
2697
  class w {
2690
2698
  /**
@@ -2698,21 +2706,21 @@ class w {
2698
2706
  */
2699
2707
  constructor(...e) {
2700
2708
  let r;
2701
- e.length === 1 && (r = g(e[0]));
2709
+ e.length === 1 && (r = b(e[0]));
2702
2710
  let n, a, s;
2703
2711
  r ? (n = r.space || r.spaceId, a = r.coords, s = r.alpha) : [n, a, s] = e, Object.defineProperty(this, "space", {
2704
- value: d.get(n),
2712
+ value: m.get(n),
2705
2713
  writable: !1,
2706
2714
  enumerable: !0,
2707
2715
  configurable: !0
2708
2716
  // see note in https://262.ecma-international.org/8.0/#sec-proxy-object-internal-methods-and-internal-slots-get-p-receiver
2709
2717
  }), this.coords = a ? a.slice() : [0, 0, 0], this.alpha = s > 1 || s === void 0 ? 1 : s < 0 ? 0 : s;
2710
- for (let o = 0; o < this.coords.length; o++)
2711
- this.coords[o] === "NaN" && (this.coords[o] = NaN);
2712
- for (let o in this.space.coords)
2713
- Object.defineProperty(this, o, {
2714
- get: () => this.get(o),
2715
- set: (i) => this.set(o, i)
2718
+ for (let i = 0; i < this.coords.length; i++)
2719
+ this.coords[i] === "NaN" && (this.coords[i] = NaN);
2720
+ for (let i in this.space.coords)
2721
+ Object.defineProperty(this, i, {
2722
+ get: () => this.get(i),
2723
+ set: (o) => this.set(i, o)
2716
2724
  });
2717
2725
  }
2718
2726
  get spaceId() {
@@ -2729,7 +2737,7 @@ class w {
2729
2737
  };
2730
2738
  }
2731
2739
  display(...e) {
2732
- let r = Vn(this, ...e);
2740
+ let r = sn(this, ...e);
2733
2741
  return r.color = new w(r.color), r;
2734
2742
  }
2735
2743
  /**
@@ -2740,21 +2748,21 @@ class w {
2740
2748
  return e instanceof w ? e : new w(e, ...r);
2741
2749
  }
2742
2750
  static defineFunction(e, r, n = r) {
2743
- let { instance: a = !0, returns: s } = n, o = function(...i) {
2744
- let l = r(...i);
2751
+ let { instance: a = !0, returns: s } = n, i = function(...o) {
2752
+ let l = r(...o);
2745
2753
  if (s === "color")
2746
2754
  l = w.get(l);
2747
2755
  else if (s === "function<color>") {
2748
- let f = l;
2756
+ let c = l;
2749
2757
  l = function(...u) {
2750
- let c = f(...u);
2751
- return w.get(c);
2752
- }, Object.assign(l, f);
2753
- } else s === "array<color>" && (l = l.map((f) => w.get(f)));
2758
+ let f = c(...u);
2759
+ return w.get(f);
2760
+ }, Object.assign(l, c);
2761
+ } else s === "array<color>" && (l = l.map((c) => w.get(c)));
2754
2762
  return l;
2755
2763
  };
2756
- e in w || (w[e] = o), a && (w.prototype[e] = function(...i) {
2757
- return o(this, ...i);
2764
+ e in w || (w[e] = i), a && (w.prototype[e] = function(...o) {
2765
+ return i(this, ...o);
2758
2766
  });
2759
2767
  }
2760
2768
  static defineFunctions(e) {
@@ -2770,37 +2778,38 @@ class w {
2770
2778
  }
2771
2779
  }
2772
2780
  w.defineFunctions({
2773
- get: $,
2774
- getAll: ue,
2775
- set: T,
2776
- setAll: Ve,
2777
- to: y,
2778
- equals: e0,
2779
- inGamut: G,
2780
- toGamut: X,
2781
- distance: br,
2782
- toString: se
2781
+ get: P,
2782
+ getAll: fe,
2783
+ set: O,
2784
+ setAll: tt,
2785
+ to: C,
2786
+ equals: on,
2787
+ inGamut: J,
2788
+ toGamut: q,
2789
+ distance: L0,
2790
+ toString: ie
2783
2791
  });
2784
2792
  Object.assign(w, {
2785
- util: Ur,
2793
+ util: ar,
2786
2794
  hooks: j,
2787
2795
  WHITES: B,
2788
- Space: d,
2789
- spaces: d.registry,
2790
- parse: gr,
2796
+ Space: m,
2797
+ spaces: m.registry,
2798
+ parse: y0,
2791
2799
  // Global defaults one may want to configure
2792
- defaults: P
2800
+ defaults: v
2793
2801
  });
2794
- for (let t of Object.keys(ir))
2795
- d.register(ir[t]);
2796
- for (let t in d.registry)
2797
- Qe(t, d.registry[t]);
2802
+ for (let t of Object.keys(c0))
2803
+ m.register(c0[t]);
2804
+ for (let t in m.registry)
2805
+ Ke(t, m.registry[t]);
2798
2806
  j.add("colorspace-init-end", (t) => {
2799
- Qe(t.id, t), t.aliases?.forEach((e) => {
2800
- Qe(e, t);
2807
+ var e;
2808
+ Ke(t.id, t), (e = t.aliases) == null || e.forEach((r) => {
2809
+ Ke(r, t);
2801
2810
  });
2802
2811
  });
2803
- function Qe(t, e) {
2812
+ function Ke(t, e) {
2804
2813
  let r = t.replace(/-/g, "_");
2805
2814
  Object.defineProperty(w.prototype, r, {
2806
2815
  // Convert coords to coords in another colorspace and return them
@@ -2811,26 +2820,26 @@ function Qe(t, e) {
2811
2820
  return typeof Proxy > "u" ? n : new Proxy(n, {
2812
2821
  has: (a, s) => {
2813
2822
  try {
2814
- return d.resolveCoord([e, s]), !0;
2823
+ return m.resolveCoord([e, s]), !0;
2815
2824
  } catch {
2816
2825
  }
2817
2826
  return Reflect.has(a, s);
2818
2827
  },
2819
- get: (a, s, o) => {
2828
+ get: (a, s, i) => {
2820
2829
  if (s && typeof s != "symbol" && !(s in a)) {
2821
- let { index: i } = d.resolveCoord([e, s]);
2822
- if (i >= 0)
2823
- return a[i];
2830
+ let { index: o } = m.resolveCoord([e, s]);
2831
+ if (o >= 0)
2832
+ return a[o];
2824
2833
  }
2825
- return Reflect.get(a, s, o);
2834
+ return Reflect.get(a, s, i);
2826
2835
  },
2827
- set: (a, s, o, i) => {
2836
+ set: (a, s, i, o) => {
2828
2837
  if (s && typeof s != "symbol" && !(s in a) || s >= 0) {
2829
- let { index: l } = d.resolveCoord([e, s]);
2838
+ let { index: l } = m.resolveCoord([e, s]);
2830
2839
  if (l >= 0)
2831
- return a[l] = o, this.setAll(t, a), !0;
2840
+ return a[l] = i, this.setAll(t, a), !0;
2832
2841
  }
2833
- return Reflect.set(a, s, o, i);
2842
+ return Reflect.set(a, s, i, o);
2834
2843
  }
2835
2844
  });
2836
2845
  },
@@ -2844,15 +2853,15 @@ function Qe(t, e) {
2844
2853
  enumerable: !0
2845
2854
  });
2846
2855
  }
2847
- w.extend(V);
2848
- w.extend({ deltaE: ae });
2849
- Object.assign(w, { deltaEMethods: V });
2850
- w.extend(R0);
2851
- w.extend({ contrast: y0 });
2852
- w.extend(_0);
2853
- w.extend(r0);
2854
- w.extend(v0);
2855
- w.extend(Le);
2856
+ w.extend(ee);
2857
+ w.extend({ deltaE: se });
2858
+ Object.assign(w, { deltaEMethods: ee });
2859
+ w.extend(Pn);
2860
+ w.extend({ contrast: Nn });
2861
+ w.extend(In);
2862
+ w.extend(cn);
2863
+ w.extend(vn);
2864
+ w.extend(_e);
2856
2865
  export {
2857
2866
  w as C
2858
2867
  };