@esri/calcite-components 1.4.0-next.4 → 1.4.0-next.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (704) hide show
  1. package/dist/calcite/calcite.esm.js +2 -2
  2. package/dist/calcite/index.esm.js +2 -2
  3. package/dist/calcite/{p-1b48dcda.entry.js → p-00e1b3a8.entry.js} +2 -2
  4. package/dist/calcite/{p-4a86d1ab.js → p-02706e35.js} +1 -1
  5. package/dist/calcite/p-058ac7cb.entry.js +6 -0
  6. package/dist/calcite/{p-be5734f7.js → p-08fb12d7.js} +2 -2
  7. package/dist/calcite/{p-5081856a.entry.js → p-09339f89.entry.js} +2 -2
  8. package/dist/calcite/{p-549d3d07.entry.js → p-0f9e9bef.entry.js} +2 -2
  9. package/dist/calcite/{p-198ab071.entry.js → p-15d26e08.entry.js} +2 -2
  10. package/dist/calcite/{p-c6c82380.entry.js → p-1678bfd5.entry.js} +2 -2
  11. package/dist/calcite/{p-14f78c1b.entry.js → p-18e2b588.entry.js} +2 -2
  12. package/dist/calcite/{p-14eccdb3.entry.js → p-198abcbb.entry.js} +2 -2
  13. package/dist/calcite/p-1bcc4ef2.js +6 -0
  14. package/dist/calcite/{p-4be0d67c.entry.js → p-20c6068d.entry.js} +2 -2
  15. package/dist/calcite/{p-2468ff71.js → p-238464b3.js} +1 -1
  16. package/dist/calcite/{p-10335369.js → p-24833d0f.js} +2 -2
  17. package/dist/calcite/{p-a8ae64d6.js → p-28ee6675.js} +1 -1
  18. package/dist/calcite/{p-f8af9a6c.js → p-2d155925.js} +1 -1
  19. package/dist/calcite/{p-f8ff6c94.entry.js → p-2f987df1.entry.js} +2 -2
  20. package/dist/calcite/{p-a0d99484.entry.js → p-309c88b2.entry.js} +2 -2
  21. package/dist/calcite/{p-460df0b5.js → p-36a4f2c8.js} +1 -1
  22. package/dist/calcite/{p-607951d2.entry.js → p-3c58757e.entry.js} +2 -2
  23. package/dist/calcite/{p-3465fcef.js → p-3d782f5e.js} +1 -1
  24. package/dist/calcite/{p-9170dc8c.entry.js → p-3e4ed9a3.entry.js} +2 -2
  25. package/dist/calcite/{p-29675f69.entry.js → p-3f09b972.entry.js} +2 -2
  26. package/dist/calcite/{p-b88213e9.entry.js → p-3fb7e1e9.entry.js} +2 -2
  27. package/dist/calcite/{p-4094c395.js → p-49e5e96a.js} +1 -1
  28. package/dist/calcite/{p-e4676089.entry.js → p-4ad0e5e7.entry.js} +2 -2
  29. package/dist/calcite/{p-167a7bdc.js → p-50e95bdb.js} +1 -1
  30. package/dist/calcite/{p-e7e84acd.entry.js → p-51f4cb23.entry.js} +2 -2
  31. package/dist/calcite/{p-09b5e911.entry.js → p-520cf1b0.entry.js} +2 -2
  32. package/dist/calcite/{p-690e8224.entry.js → p-56d69bd6.entry.js} +2 -2
  33. package/dist/calcite/{p-4612e3c4.entry.js → p-5b82075d.entry.js} +2 -2
  34. package/dist/calcite/{p-5099d131.entry.js → p-6582a43e.entry.js} +2 -2
  35. package/dist/calcite/{p-99546fc2.entry.js → p-6989f500.entry.js} +2 -2
  36. package/dist/calcite/{p-ac512a57.entry.js → p-6aadaed2.entry.js} +2 -2
  37. package/dist/calcite/{p-eabc3a81.entry.js → p-6c011dac.entry.js} +2 -2
  38. package/dist/calcite/{p-110f836d.js → p-6e1f7f1f.js} +1 -1
  39. package/dist/calcite/{p-762e069e.entry.js → p-70edce50.entry.js} +2 -2
  40. package/dist/calcite/{p-00346107.entry.js → p-71294102.entry.js} +2 -2
  41. package/dist/calcite/{p-c592404b.entry.js → p-721669b1.entry.js} +2 -2
  42. package/dist/calcite/{p-cc5d73b1.entry.js → p-7773ec0c.entry.js} +2 -2
  43. package/dist/calcite/{p-7aac398a.js → p-78ecccfd.js} +2 -2
  44. package/dist/calcite/{p-7c069e47.entry.js → p-794cd7e0.entry.js} +2 -2
  45. package/dist/calcite/{p-1e353e72.js → p-7e85033a.js} +1 -1
  46. package/dist/calcite/{p-37601822.entry.js → p-829a8016.entry.js} +2 -2
  47. package/dist/calcite/{p-bfa1073e.entry.js → p-8576f7a9.entry.js} +2 -2
  48. package/dist/calcite/{p-4dd1d026.entry.js → p-85ce36b4.entry.js} +2 -2
  49. package/dist/calcite/{p-fbb43fd3.entry.js → p-89b037e5.entry.js} +2 -2
  50. package/dist/calcite/{p-7c93f55c.entry.js → p-8bc8392a.entry.js} +2 -2
  51. package/dist/calcite/{p-d83e122d.js → p-8d592b3c.js} +1 -1
  52. package/dist/calcite/{p-bf3b07a8.entry.js → p-8d911c0f.entry.js} +2 -2
  53. package/dist/calcite/{p-518e42e2.js → p-8e4e219a.js} +1 -1
  54. package/dist/calcite/{p-798257c9.js → p-8eb6d3d6.js} +2 -2
  55. package/dist/calcite/{p-9d6d46fb.js → p-8eed6488.js} +1 -1
  56. package/dist/calcite/{p-1f65fd97.entry.js → p-902ccf8c.entry.js} +2 -2
  57. package/dist/calcite/{p-41b1924f.entry.js → p-90faa188.entry.js} +2 -2
  58. package/dist/calcite/{p-5b0e38f4.entry.js → p-94ae14ed.entry.js} +2 -2
  59. package/dist/calcite/{p-2477ffab.js → p-977a7373.js} +2 -2
  60. package/dist/calcite/{p-fc5a05c8.js → p-9c5561f6.js} +2 -2
  61. package/dist/calcite/{p-71ee6c09.js → p-9ecad02c.js} +2 -2
  62. package/dist/calcite/p-a2dcc545.js +6 -0
  63. package/dist/calcite/{p-6c28a6a6.entry.js → p-ac50f328.entry.js} +2 -2
  64. package/dist/calcite/{p-af19d2eb.entry.js → p-acbe9c99.entry.js} +2 -2
  65. package/dist/calcite/p-ad29a95f.js +6 -0
  66. package/dist/calcite/{p-3476e72e.js → p-ae330013.js} +2 -2
  67. package/dist/calcite/{p-88e0c279.js → p-b0388e91.js} +2 -2
  68. package/dist/calcite/{p-07e56bf4.js → p-b086f92d.js} +1 -1
  69. package/dist/calcite/p-b3099221.js +6 -0
  70. package/dist/calcite/{p-c33810ce.js → p-b3f59734.js} +1 -1
  71. package/dist/calcite/{p-12b426c9.entry.js → p-b7f76e88.entry.js} +2 -2
  72. package/dist/calcite/p-bb1f280b.entry.js +6 -0
  73. package/dist/calcite/{p-cafbf219.entry.js → p-bde56e46.entry.js} +2 -2
  74. package/dist/calcite/{p-48071f1a.entry.js → p-bde9a8bf.entry.js} +2 -2
  75. package/dist/calcite/{p-e88938fe.entry.js → p-becceac4.entry.js} +2 -2
  76. package/dist/calcite/p-c3bd1ae0.entry.js +6 -0
  77. package/dist/calcite/{p-8ac1324f.entry.js → p-c477bf75.entry.js} +2 -2
  78. package/dist/calcite/{p-db1f6411.js → p-c4e985ef.js} +2 -2
  79. package/dist/calcite/{p-605ff48d.entry.js → p-c9159a0a.entry.js} +2 -2
  80. package/dist/calcite/{p-4569f702.entry.js → p-ca95c6ed.entry.js} +2 -2
  81. package/dist/calcite/{p-dc554515.entry.js → p-cabf475d.entry.js} +2 -2
  82. package/dist/calcite/p-cc008746.js +6 -0
  83. package/dist/calcite/{p-b6d1694c.entry.js → p-cd8ecd59.entry.js} +2 -2
  84. package/dist/calcite/{p-b1c81dcc.js → p-cf5e973f.js} +2 -2
  85. package/dist/calcite/{p-90b23414.entry.js → p-d4f5d56a.entry.js} +2 -2
  86. package/dist/calcite/{p-0e0a4c8e.entry.js → p-dda5a868.entry.js} +2 -2
  87. package/dist/calcite/p-de460c7f.js +6 -0
  88. package/dist/calcite/p-e907c9d7.entry.js +6 -0
  89. package/dist/calcite/{p-23c694da.entry.js → p-e9dedbc2.entry.js} +2 -2
  90. package/dist/calcite/{p-74a4ac3e.js → p-ece4c169.js} +1 -1
  91. package/dist/calcite/{p-df5d4340.entry.js → p-ef9439cd.entry.js} +2 -2
  92. package/dist/calcite/p-f0eab93a.entry.js +6 -0
  93. package/dist/calcite/{p-01e73d3c.entry.js → p-f1dc743d.entry.js} +2 -2
  94. package/dist/calcite/{p-feb44263.entry.js → p-f2bf5444.entry.js} +2 -2
  95. package/dist/calcite/{p-ab5ba8d8.entry.js → p-f44b8d1c.entry.js} +2 -2
  96. package/dist/calcite/{p-083022ce.entry.js → p-fd37640e.entry.js} +2 -2
  97. package/dist/calcite/{p-18fe3593.entry.js → p-fd38d722.entry.js} +2 -2
  98. package/dist/calcite/p-ff1e2786.js +6 -0
  99. package/dist/cjs/{ExpandToggle-9c9692c9.js → ExpandToggle-34efb36e.js} +5 -5
  100. package/dist/cjs/{FloatingArrow-8cad3e02.js → FloatingArrow-ca4a438c.js} +2 -2
  101. package/dist/cjs/{Heading-a54c437a.js → Heading-16403a18.js} +2 -2
  102. package/dist/cjs/{app-globals-6921d6ca.js → app-globals-08fa4928.js} +2 -2
  103. package/dist/cjs/{array-11eaef78.js → array-a48e72f4.js} +1 -1
  104. package/dist/cjs/calcite-accordion_2.cjs.entry.js +7 -7
  105. package/dist/cjs/calcite-action-bar.cjs.entry.js +15 -15
  106. package/dist/cjs/calcite-action-group.cjs.entry.js +13 -13
  107. package/dist/cjs/calcite-action-menu.cjs.entry.js +9 -9
  108. package/dist/cjs/calcite-action-pad.cjs.entry.js +14 -14
  109. package/dist/cjs/calcite-action.cjs.entry.js +11 -11
  110. package/dist/cjs/calcite-alert.cjs.entry.js +12 -12
  111. package/dist/cjs/calcite-avatar.cjs.entry.js +6 -6
  112. package/dist/cjs/calcite-block_2.cjs.entry.js +12 -12
  113. package/dist/cjs/calcite-button.cjs.entry.js +13 -13
  114. package/dist/cjs/calcite-card.cjs.entry.js +10 -10
  115. package/dist/cjs/calcite-checkbox.cjs.entry.js +10 -10
  116. package/dist/cjs/calcite-chip-group.cjs.entry.js +8 -8
  117. package/dist/cjs/calcite-chip.cjs.entry.js +12 -12
  118. package/dist/cjs/calcite-color-picker_3.cjs.entry.js +585 -339
  119. package/dist/cjs/calcite-combobox_3.cjs.entry.js +18 -18
  120. package/dist/cjs/calcite-date-picker_4.cjs.entry.js +13 -13
  121. package/dist/cjs/calcite-dropdown_3.cjs.entry.js +12 -12
  122. package/dist/cjs/calcite-fab.cjs.entry.js +7 -7
  123. package/dist/cjs/calcite-filter.cjs.entry.js +13 -13
  124. package/dist/cjs/calcite-flow-item.cjs.entry.js +12 -12
  125. package/dist/cjs/calcite-flow.cjs.entry.js +3 -3
  126. package/dist/cjs/calcite-graph_2.cjs.entry.js +13 -13
  127. package/dist/cjs/calcite-handle.cjs.entry.js +10 -10
  128. package/dist/cjs/calcite-icon.cjs.entry.js +6 -6
  129. package/dist/cjs/calcite-inline-editable.cjs.entry.js +12 -12
  130. package/dist/cjs/calcite-input-date-picker.cjs.entry.js +18 -18
  131. package/dist/cjs/calcite-input-message.cjs.entry.js +5 -5
  132. package/dist/cjs/calcite-input-number.cjs.entry.js +13 -13
  133. package/dist/cjs/calcite-input-text.cjs.entry.js +13 -13
  134. package/dist/cjs/calcite-input-time-picker_2.cjs.entry.js +14 -14
  135. package/dist/cjs/calcite-input.cjs.entry.js +13 -13
  136. package/dist/cjs/calcite-label.cjs.entry.js +6 -6
  137. package/dist/cjs/calcite-link.cjs.entry.js +7 -7
  138. package/dist/cjs/calcite-list_3.cjs.entry.js +50 -40
  139. package/dist/cjs/calcite-loader.cjs.entry.js +3 -3
  140. package/dist/cjs/calcite-modal.cjs.entry.js +13 -13
  141. package/dist/cjs/calcite-notice.cjs.entry.js +12 -12
  142. package/dist/cjs/calcite-option_3.cjs.entry.js +10 -10
  143. package/dist/cjs/calcite-pagination.cjs.entry.js +10 -10
  144. package/dist/cjs/calcite-panel.cjs.entry.js +14 -14
  145. package/dist/cjs/calcite-pick-list_3.cjs.entry.js +16 -16
  146. package/dist/cjs/calcite-popover.cjs.entry.js +16 -16
  147. package/dist/cjs/calcite-progress.cjs.entry.js +2 -2
  148. package/dist/cjs/calcite-radio-button-group.cjs.entry.js +3 -3
  149. package/dist/cjs/calcite-radio-button.cjs.entry.js +10 -10
  150. package/dist/cjs/calcite-rating.cjs.entry.js +13 -13
  151. package/dist/cjs/calcite-scrim.cjs.entry.js +9 -9
  152. package/dist/cjs/calcite-segmented-control_2.cjs.entry.js +9 -9
  153. package/dist/cjs/calcite-shell_3.cjs.entry.js +11 -11
  154. package/dist/cjs/calcite-sortable-list.cjs.entry.js +5 -5
  155. package/dist/cjs/calcite-split-button.cjs.entry.js +4 -4
  156. package/dist/cjs/calcite-stepper_2.cjs.entry.js +10 -10
  157. package/dist/cjs/calcite-switch.cjs.entry.js +10 -10
  158. package/dist/cjs/calcite-tab_4.cjs.entry.js +7 -7
  159. package/dist/cjs/calcite-text-area.cjs.entry.js +15 -15
  160. package/dist/cjs/calcite-tile-select_2.cjs.entry.js +5 -5
  161. package/dist/cjs/calcite-tile.cjs.entry.js +8 -8
  162. package/dist/cjs/calcite-tip_3.cjs.entry.js +11 -11
  163. package/dist/cjs/calcite-tooltip.cjs.entry.js +9 -9
  164. package/dist/cjs/calcite-tree_2.cjs.entry.js +9 -9
  165. package/dist/cjs/calcite-value-list_2.cjs.entry.js +16 -16
  166. package/dist/cjs/calcite.cjs.js +5 -5
  167. package/dist/cjs/{composed-offset-position.esm-5a2f9ff8.js → composed-offset-position.esm-00262258.js} +1 -1
  168. package/dist/cjs/{conditionalSlot-39f2741e.js → conditionalSlot-44ce332c.js} +3 -3
  169. package/dist/cjs/{debounce-f09b6263.js → debounce-a2674dc4.js} +1 -1
  170. package/dist/cjs/{dom-1b2f41d1.js → dom-c4a69490.js} +3 -3
  171. package/dist/cjs/{filter-c268fa9a.js → filter-a7677076.js} +2 -2
  172. package/dist/cjs/{floating-ui-86f1cd7e.js → floating-ui-b9ad845e.js} +71 -65
  173. package/dist/cjs/{focusTrapComponent-84a6204d.js → focusTrapComponent-ad111b58.js} +2 -2
  174. package/dist/cjs/{form-c4ef3b01.js → form-4441b5de.js} +3 -3
  175. package/dist/cjs/{guid-053b3b9f.js → guid-3ea77659.js} +1 -1
  176. package/dist/cjs/{index-3f1e65e1.js → index-5631fa22.js} +1 -1
  177. package/dist/cjs/index.cjs.js +2 -2
  178. package/dist/cjs/{interactive-002e7de1.js → interactive-0d0f7af7.js} +1 -1
  179. package/dist/cjs/{key-26c7350c.js → key-5a12f647.js} +1 -1
  180. package/dist/cjs/{label-c5a73703.js → label-81db116a.js} +2 -2
  181. package/dist/cjs/{loadable-21f49ddd.js → loadable-9733bc78.js} +1 -1
  182. package/dist/cjs/loader.cjs.js +5 -5
  183. package/dist/cjs/{locale-bec864db.js → locale-cd52f850.js} +4 -4
  184. package/dist/cjs/{math-b23a2620.js → math-d7fcd025.js} +1 -1
  185. package/dist/cjs/{observers-7b381996.js → observers-6aa64455.js} +1 -1
  186. package/dist/cjs/{openCloseComponent-d285707d.js → openCloseComponent-f2d47f5b.js} +2 -2
  187. package/dist/cjs/{resources-4b35c7c3.js → resources-4a16f695.js} +1 -1
  188. package/dist/cjs/{resources-ccc69560.js → resources-7805e29e.js} +5 -5
  189. package/dist/cjs/{resources-d72b2060.js → resources-9c69ee5f.js} +1 -1
  190. package/dist/cjs/{resources-6603995b.js → resources-a3154079.js} +1 -1
  191. package/dist/cjs/{resources-42c16d2f.js → resources-cb69cc10.js} +1 -1
  192. package/dist/cjs/{resources-adbdd1d0.js → resources-fb8b0a5e.js} +1 -1
  193. package/dist/cjs/{sortable.esm-e90f34c4.js → sortable.esm-b954a413.js} +1 -1
  194. package/dist/cjs/{t9n-d1d3fae9.js → t9n-e49fe20d.js} +3 -3
  195. package/dist/cjs/{throttle-d2814ea6.js → throttle-3df9debd.js} +2 -2
  196. package/dist/cjs/utils-136fb325.js +213 -0
  197. package/dist/cjs/{utils-da168911.js → utils-411455bc.js} +3 -3
  198. package/dist/collection/components/accordion/accordion.js +1 -1
  199. package/dist/collection/components/accordion-item/accordion-item.js +1 -1
  200. package/dist/collection/components/accordion-item/resources.js +1 -1
  201. package/dist/collection/components/action/action.js +1 -1
  202. package/dist/collection/components/action/resources.js +1 -1
  203. package/dist/collection/components/action-bar/action-bar.js +1 -1
  204. package/dist/collection/components/action-bar/resources.js +1 -1
  205. package/dist/collection/components/action-bar/utils.js +1 -1
  206. package/dist/collection/components/action-group/action-group.js +1 -1
  207. package/dist/collection/components/action-group/resources.js +1 -1
  208. package/dist/collection/components/action-menu/action-menu.js +1 -1
  209. package/dist/collection/components/action-menu/resources.js +1 -1
  210. package/dist/collection/components/action-pad/action-pad.js +1 -1
  211. package/dist/collection/components/action-pad/resources.js +1 -1
  212. package/dist/collection/components/alert/alert.js +1 -1
  213. package/dist/collection/components/alert/resources.js +1 -1
  214. package/dist/collection/components/avatar/avatar.js +1 -1
  215. package/dist/collection/components/avatar/utils.js +1 -1
  216. package/dist/collection/components/block/block.js +1 -1
  217. package/dist/collection/components/block/resources.js +1 -1
  218. package/dist/collection/components/block-section/block-section.js +1 -1
  219. package/dist/collection/components/block-section/resources.js +1 -1
  220. package/dist/collection/components/button/button.js +1 -1
  221. package/dist/collection/components/button/resources.js +1 -1
  222. package/dist/collection/components/card/card.js +1 -1
  223. package/dist/collection/components/card/resources.js +1 -1
  224. package/dist/collection/components/checkbox/checkbox.js +1 -1
  225. package/dist/collection/components/chip/chip.js +1 -1
  226. package/dist/collection/components/chip/resources.js +1 -1
  227. package/dist/collection/components/chip-group/chip-group.js +1 -1
  228. package/dist/collection/components/color-picker/color-picker.css +59 -52
  229. package/dist/collection/components/color-picker/color-picker.js +448 -233
  230. package/dist/collection/components/color-picker/resources.js +37 -27
  231. package/dist/collection/components/color-picker/utils.js +116 -30
  232. package/dist/collection/components/color-picker-hex-input/color-picker-hex-input.css +19 -16
  233. package/dist/collection/components/color-picker-hex-input/color-picker-hex-input.js +225 -118
  234. package/dist/collection/components/color-picker-hex-input/resources.js +3 -3
  235. package/dist/collection/components/color-picker-swatch/color-picker-swatch.css +10 -6
  236. package/dist/collection/components/color-picker-swatch/color-picker-swatch.js +34 -7
  237. package/dist/collection/components/color-picker-swatch/resources.js +8 -2
  238. package/dist/collection/components/combobox/combobox.js +1 -1
  239. package/dist/collection/components/combobox/resources.js +1 -1
  240. package/dist/collection/components/combobox/utils.js +1 -1
  241. package/dist/collection/components/combobox-item/combobox-item.js +1 -1
  242. package/dist/collection/components/combobox-item/resources.js +1 -1
  243. package/dist/collection/components/combobox-item-group/combobox-item-group.js +1 -1
  244. package/dist/collection/components/combobox-item-group/resources.js +1 -1
  245. package/dist/collection/components/date-picker/date-picker.js +1 -1
  246. package/dist/collection/components/date-picker/resources.js +1 -1
  247. package/dist/collection/components/date-picker/utils.js +1 -1
  248. package/dist/collection/components/date-picker-day/date-picker-day.js +1 -1
  249. package/dist/collection/components/date-picker-month/date-picker-month.js +1 -1
  250. package/dist/collection/components/date-picker-month-header/date-picker-month-header.js +1 -1
  251. package/dist/collection/components/date-picker-month-header/resources.js +1 -1
  252. package/dist/collection/components/dropdown/dropdown.js +1 -1
  253. package/dist/collection/components/dropdown/resources.js +1 -1
  254. package/dist/collection/components/dropdown-group/dropdown-group.js +1 -1
  255. package/dist/collection/components/dropdown-group/resources.js +1 -1
  256. package/dist/collection/components/dropdown-item/dropdown-item.js +1 -1
  257. package/dist/collection/components/dropdown-item/resources.js +1 -1
  258. package/dist/collection/components/fab/fab.js +1 -1
  259. package/dist/collection/components/fab/resources.js +1 -1
  260. package/dist/collection/components/filter/filter.js +1 -1
  261. package/dist/collection/components/filter/resources.js +1 -1
  262. package/dist/collection/components/flow/flow.js +1 -1
  263. package/dist/collection/components/flow/resources.js +1 -1
  264. package/dist/collection/components/flow-item/flow-item.js +1 -1
  265. package/dist/collection/components/flow-item/resources.js +1 -1
  266. package/dist/collection/components/functional/ExpandToggle.js +1 -1
  267. package/dist/collection/components/functional/FloatingArrow.js +1 -1
  268. package/dist/collection/components/functional/Heading.js +1 -1
  269. package/dist/collection/components/graph/graph.js +1 -1
  270. package/dist/collection/components/graph/util.js +1 -1
  271. package/dist/collection/components/handle/handle.js +1 -1
  272. package/dist/collection/components/handle/resources.js +1 -1
  273. package/dist/collection/components/icon/icon.js +1 -1
  274. package/dist/collection/components/icon/resources.js +1 -1
  275. package/dist/collection/components/icon/utils.js +1 -1
  276. package/dist/collection/components/inline-editable/inline-editable.js +1 -1
  277. package/dist/collection/components/inline-editable/resources.js +1 -1
  278. package/dist/collection/components/input/input.js +1 -1
  279. package/dist/collection/components/input/resources.js +1 -1
  280. package/dist/collection/components/input-date-picker/input-date-picker.js +1 -1
  281. package/dist/collection/components/input-date-picker/resources.js +1 -1
  282. package/dist/collection/components/input-message/input-message.js +1 -1
  283. package/dist/collection/components/input-message/interfaces.js +1 -1
  284. package/dist/collection/components/input-number/input-number.js +1 -1
  285. package/dist/collection/components/input-number/resources.js +1 -1
  286. package/dist/collection/components/input-text/input-text.js +1 -1
  287. package/dist/collection/components/input-text/resources.js +1 -1
  288. package/dist/collection/components/input-time-picker/input-time-picker.js +1 -1
  289. package/dist/collection/components/input-time-picker/resources.js +1 -1
  290. package/dist/collection/components/label/label.js +1 -1
  291. package/dist/collection/components/label/resources.js +1 -1
  292. package/dist/collection/components/link/link.js +1 -1
  293. package/dist/collection/components/list/list.js +60 -30
  294. package/dist/collection/components/list/resources.js +2 -2
  295. package/dist/collection/components/list-item/list-item.js +1 -1
  296. package/dist/collection/components/list-item/resources.js +1 -1
  297. package/dist/collection/components/list-item/utils.js +1 -1
  298. package/dist/collection/components/list-item-group/list-item-group.js +1 -1
  299. package/dist/collection/components/list-item-group/resources.js +1 -1
  300. package/dist/collection/components/loader/loader.js +1 -1
  301. package/dist/collection/components/modal/modal.js +1 -1
  302. package/dist/collection/components/modal/resources.js +1 -1
  303. package/dist/collection/components/notice/notice.js +1 -1
  304. package/dist/collection/components/notice/resources.js +1 -1
  305. package/dist/collection/components/option/option.js +1 -1
  306. package/dist/collection/components/option-group/option-group.js +1 -1
  307. package/dist/collection/components/pagination/pagination.js +1 -1
  308. package/dist/collection/components/pagination/resources.js +1 -1
  309. package/dist/collection/components/panel/panel.js +1 -1
  310. package/dist/collection/components/panel/resources.js +1 -1
  311. package/dist/collection/components/pick-list/pick-list.js +1 -1
  312. package/dist/collection/components/pick-list/resources.js +1 -1
  313. package/dist/collection/components/pick-list/shared-list-logic.js +1 -1
  314. package/dist/collection/components/pick-list/shared-list-render.js +1 -1
  315. package/dist/collection/components/pick-list-group/pick-list-group.js +1 -1
  316. package/dist/collection/components/pick-list-group/resources.js +1 -1
  317. package/dist/collection/components/pick-list-item/pick-list-item.js +1 -1
  318. package/dist/collection/components/pick-list-item/resources.js +1 -1
  319. package/dist/collection/components/popover/PopoverManager.js +1 -1
  320. package/dist/collection/components/popover/popover.js +1 -1
  321. package/dist/collection/components/popover/resources.js +1 -1
  322. package/dist/collection/components/progress/progress.js +1 -1
  323. package/dist/collection/components/radio-button/radio-button.js +1 -1
  324. package/dist/collection/components/radio-button/resources.js +1 -1
  325. package/dist/collection/components/radio-button-group/radio-button-group.js +1 -1
  326. package/dist/collection/components/rating/function/star.js +1 -1
  327. package/dist/collection/components/rating/rating.js +1 -1
  328. package/dist/collection/components/resources.js +1 -1
  329. package/dist/collection/components/scrim/resources.js +1 -1
  330. package/dist/collection/components/scrim/scrim.js +1 -1
  331. package/dist/collection/components/segmented-control/segmented-control.js +1 -1
  332. package/dist/collection/components/segmented-control-item/resources.js +1 -1
  333. package/dist/collection/components/segmented-control-item/segmented-control-item.js +1 -1
  334. package/dist/collection/components/select/resources.js +1 -1
  335. package/dist/collection/components/select/select.js +1 -1
  336. package/dist/collection/components/shell/resources.js +1 -1
  337. package/dist/collection/components/shell/shell.js +1 -1
  338. package/dist/collection/components/shell-center-row/resources.js +1 -1
  339. package/dist/collection/components/shell-center-row/shell-center-row.js +1 -1
  340. package/dist/collection/components/shell-panel/resources.js +1 -1
  341. package/dist/collection/components/shell-panel/shell-panel.js +1 -1
  342. package/dist/collection/components/slider/resources.js +1 -1
  343. package/dist/collection/components/slider/slider.js +1 -1
  344. package/dist/collection/components/sortable-list/resources.js +1 -1
  345. package/dist/collection/components/sortable-list/sortable-list.js +1 -1
  346. package/dist/collection/components/split-button/resources.js +1 -1
  347. package/dist/collection/components/split-button/split-button.js +1 -1
  348. package/dist/collection/components/stepper/stepper.js +1 -1
  349. package/dist/collection/components/stepper-item/stepper-item.js +1 -1
  350. package/dist/collection/components/switch/switch.js +1 -1
  351. package/dist/collection/components/tab/tab.js +1 -1
  352. package/dist/collection/components/tab-nav/tab-nav.js +1 -1
  353. package/dist/collection/components/tab-title/resources.js +1 -1
  354. package/dist/collection/components/tab-title/tab-title.js +1 -1
  355. package/dist/collection/components/tabs/resources.js +1 -1
  356. package/dist/collection/components/tabs/tabs.js +1 -1
  357. package/dist/collection/components/text-area/resources.js +1 -1
  358. package/dist/collection/components/text-area/text-area.js +1 -1
  359. package/dist/collection/components/tile/resources.js +1 -1
  360. package/dist/collection/components/tile/tile.js +1 -1
  361. package/dist/collection/components/tile-select/resources.js +1 -1
  362. package/dist/collection/components/tile-select/tile-select.js +1 -1
  363. package/dist/collection/components/tile-select-group/tile-select-group.js +1 -1
  364. package/dist/collection/components/time-picker/resources.js +1 -1
  365. package/dist/collection/components/time-picker/time-picker.js +1 -1
  366. package/dist/collection/components/tip/resources.js +1 -1
  367. package/dist/collection/components/tip/tip.js +1 -1
  368. package/dist/collection/components/tip-group/tip-group.js +1 -1
  369. package/dist/collection/components/tip-manager/resources.js +1 -1
  370. package/dist/collection/components/tip-manager/tip-manager.js +1 -1
  371. package/dist/collection/components/tooltip/TooltipManager.js +1 -1
  372. package/dist/collection/components/tooltip/resources.js +1 -1
  373. package/dist/collection/components/tooltip/tooltip.js +1 -1
  374. package/dist/collection/components/tooltip/utils.js +1 -1
  375. package/dist/collection/components/tree/tree.js +1 -1
  376. package/dist/collection/components/tree/utils.js +1 -1
  377. package/dist/collection/components/tree-item/resources.js +1 -1
  378. package/dist/collection/components/tree-item/tree-item.js +1 -1
  379. package/dist/collection/components/value-list/resources.js +1 -1
  380. package/dist/collection/components/value-list/utils.js +1 -1
  381. package/dist/collection/components/value-list/value-list.js +1 -1
  382. package/dist/collection/components/value-list-item/resources.js +1 -1
  383. package/dist/collection/components/value-list-item/value-list-item.js +1 -1
  384. package/dist/collection/index.js +1 -1
  385. package/dist/collection/utils/array.js +1 -1
  386. package/dist/collection/utils/conditionalSlot.js +1 -1
  387. package/dist/collection/utils/config.js +1 -1
  388. package/dist/collection/utils/date.js +1 -1
  389. package/dist/collection/utils/dom.js +1 -1
  390. package/dist/collection/utils/filter.js +1 -1
  391. package/dist/collection/utils/floating-ui.js +1 -1
  392. package/dist/collection/utils/focusTrapComponent.js +1 -1
  393. package/dist/collection/utils/form.js +1 -1
  394. package/dist/collection/utils/globalAttributes.js +1 -1
  395. package/dist/collection/utils/globalScript.js +1 -1
  396. package/dist/collection/utils/guid.js +1 -1
  397. package/dist/collection/utils/interactive.js +1 -1
  398. package/dist/collection/utils/key.js +1 -1
  399. package/dist/collection/utils/label.js +1 -1
  400. package/dist/collection/utils/loadable.js +1 -1
  401. package/dist/collection/utils/locale.js +1 -1
  402. package/dist/collection/utils/math.js +1 -1
  403. package/dist/collection/utils/mode.js +1 -1
  404. package/dist/collection/utils/number.js +1 -1
  405. package/dist/collection/utils/observers.js +1 -1
  406. package/dist/collection/utils/openCloseComponent.js +1 -1
  407. package/dist/collection/utils/resources.js +1 -1
  408. package/dist/collection/utils/t9n.js +1 -1
  409. package/dist/collection/utils/time.js +1 -1
  410. package/dist/components/ExpandToggle.js +1 -1
  411. package/dist/components/FloatingArrow.js +1 -1
  412. package/dist/components/Heading.js +1 -1
  413. package/dist/components/action-group.js +1 -1
  414. package/dist/components/action-menu.js +1 -1
  415. package/dist/components/action.js +1 -1
  416. package/dist/components/array.js +1 -1
  417. package/dist/components/button.js +1 -1
  418. package/dist/components/calcite-accordion-item.js +1 -1
  419. package/dist/components/calcite-accordion.js +1 -1
  420. package/dist/components/calcite-action-bar.js +1 -1
  421. package/dist/components/calcite-action-group.js +1 -1
  422. package/dist/components/calcite-action-menu.js +1 -1
  423. package/dist/components/calcite-action-pad.js +1 -1
  424. package/dist/components/calcite-action.js +1 -1
  425. package/dist/components/calcite-alert.js +1 -1
  426. package/dist/components/calcite-avatar.js +1 -1
  427. package/dist/components/calcite-block-section.js +1 -1
  428. package/dist/components/calcite-block.js +1 -1
  429. package/dist/components/calcite-button.js +1 -1
  430. package/dist/components/calcite-card.js +1 -1
  431. package/dist/components/calcite-checkbox.js +1 -1
  432. package/dist/components/calcite-chip-group.js +1 -1
  433. package/dist/components/calcite-chip.js +1 -1
  434. package/dist/components/calcite-color-picker-hex-input.js +2 -2
  435. package/dist/components/calcite-color-picker-swatch.js +1 -1
  436. package/dist/components/calcite-color-picker.js +377 -314
  437. package/dist/components/calcite-combobox-item-group.js +1 -1
  438. package/dist/components/calcite-combobox-item.js +1 -1
  439. package/dist/components/calcite-combobox.js +1 -1
  440. package/dist/components/calcite-date-picker-day.js +1 -1
  441. package/dist/components/calcite-date-picker-month-header.js +1 -1
  442. package/dist/components/calcite-date-picker-month.js +1 -1
  443. package/dist/components/calcite-date-picker.js +1 -1
  444. package/dist/components/calcite-dropdown-group.js +1 -1
  445. package/dist/components/calcite-dropdown-item.js +1 -1
  446. package/dist/components/calcite-dropdown.js +1 -1
  447. package/dist/components/calcite-fab.js +1 -1
  448. package/dist/components/calcite-filter.js +1 -1
  449. package/dist/components/calcite-flow-item.js +1 -1
  450. package/dist/components/calcite-flow.js +1 -1
  451. package/dist/components/calcite-graph.js +1 -1
  452. package/dist/components/calcite-handle.js +1 -1
  453. package/dist/components/calcite-icon.js +1 -1
  454. package/dist/components/calcite-inline-editable.js +1 -1
  455. package/dist/components/calcite-input-date-picker.js +1 -1
  456. package/dist/components/calcite-input-message.js +1 -1
  457. package/dist/components/calcite-input-number.js +2 -617
  458. package/dist/components/calcite-input-text.js +1 -1
  459. package/dist/components/calcite-input-time-picker.js +1 -1
  460. package/dist/components/calcite-input.js +1 -1
  461. package/dist/components/calcite-label.js +1 -1
  462. package/dist/components/calcite-link.js +1 -1
  463. package/dist/components/calcite-list-item-group.js +1 -1
  464. package/dist/components/calcite-list-item.js +1 -1
  465. package/dist/components/calcite-list.js +40 -30
  466. package/dist/components/calcite-loader.js +1 -1
  467. package/dist/components/calcite-modal.js +1 -1
  468. package/dist/components/calcite-notice.js +1 -1
  469. package/dist/components/calcite-option-group.js +1 -1
  470. package/dist/components/calcite-option.js +1 -1
  471. package/dist/components/calcite-pagination.js +1 -1
  472. package/dist/components/calcite-panel.js +1 -1
  473. package/dist/components/calcite-pick-list-group.js +1 -1
  474. package/dist/components/calcite-pick-list-item.js +1 -1
  475. package/dist/components/calcite-pick-list.js +1 -1
  476. package/dist/components/calcite-popover.js +1 -1
  477. package/dist/components/calcite-progress.js +1 -1
  478. package/dist/components/calcite-radio-button-group.js +1 -1
  479. package/dist/components/calcite-radio-button.js +1 -1
  480. package/dist/components/calcite-rating.js +1 -1
  481. package/dist/components/calcite-scrim.js +1 -1
  482. package/dist/components/calcite-segmented-control-item.js +1 -1
  483. package/dist/components/calcite-segmented-control.js +1 -1
  484. package/dist/components/calcite-select.js +1 -1
  485. package/dist/components/calcite-shell-center-row.js +1 -1
  486. package/dist/components/calcite-shell-panel.js +1 -1
  487. package/dist/components/calcite-shell.js +1 -1
  488. package/dist/components/calcite-slider.js +1 -1
  489. package/dist/components/calcite-sortable-list.js +1 -1
  490. package/dist/components/calcite-split-button.js +1 -1
  491. package/dist/components/calcite-stepper-item.js +1 -1
  492. package/dist/components/calcite-stepper.js +1 -1
  493. package/dist/components/calcite-switch.js +1 -1
  494. package/dist/components/calcite-tab-nav.js +1 -1
  495. package/dist/components/calcite-tab-title.js +1 -1
  496. package/dist/components/calcite-tab.js +1 -1
  497. package/dist/components/calcite-tabs.js +1 -1
  498. package/dist/components/calcite-text-area.js +1 -1
  499. package/dist/components/calcite-tile-select-group.js +1 -1
  500. package/dist/components/calcite-tile-select.js +1 -1
  501. package/dist/components/calcite-tile.js +1 -1
  502. package/dist/components/calcite-time-picker.js +1 -1
  503. package/dist/components/calcite-tip-group.js +1 -1
  504. package/dist/components/calcite-tip-manager.js +1 -1
  505. package/dist/components/calcite-tip.js +1 -1
  506. package/dist/components/calcite-tooltip.js +1 -1
  507. package/dist/components/calcite-tree-item.js +1 -1
  508. package/dist/components/calcite-tree.js +1 -1
  509. package/dist/components/calcite-value-list-item.js +1 -1
  510. package/dist/components/calcite-value-list.js +1 -1
  511. package/dist/components/checkbox.js +1 -1
  512. package/dist/components/chip.js +1 -1
  513. package/dist/components/color-picker-hex-input.js +252 -88
  514. package/dist/components/color-picker-swatch.js +42 -2118
  515. package/dist/components/composed-offset-position.esm.js +1 -1
  516. package/dist/components/conditionalSlot.js +1 -1
  517. package/dist/components/date-picker-day.js +1 -1
  518. package/dist/components/date-picker-month-header.js +1 -1
  519. package/dist/components/date-picker-month.js +1 -1
  520. package/dist/components/date-picker.js +2 -2
  521. package/dist/components/date.js +1 -1
  522. package/dist/components/debounce.js +1 -1
  523. package/dist/components/dom.js +1 -1
  524. package/dist/components/dropdown.js +1 -1
  525. package/dist/components/filter.js +1 -1
  526. package/dist/components/filter2.js +1 -1
  527. package/dist/components/floating-ui.js +68 -62
  528. package/dist/components/focusTrapComponent.js +1 -1
  529. package/dist/components/form.js +1 -1
  530. package/dist/components/graph.js +1 -1
  531. package/dist/components/guid.js +1 -1
  532. package/dist/components/handle.js +1 -1
  533. package/dist/components/icon.js +1 -1
  534. package/dist/components/index.js +1 -1
  535. package/dist/components/index2.js +2116 -0
  536. package/dist/components/input-number.js +623 -0
  537. package/dist/components/input.js +2 -2
  538. package/dist/components/interactive.js +1 -1
  539. package/dist/components/key.js +1 -1
  540. package/dist/components/label.js +1 -1
  541. package/dist/components/label2.js +1 -1
  542. package/dist/components/link.js +1 -1
  543. package/dist/components/loadable.js +1 -1
  544. package/dist/components/loader.js +1 -1
  545. package/dist/components/locale.js +2 -2
  546. package/dist/components/math.js +1 -1
  547. package/dist/components/observers.js +1 -1
  548. package/dist/components/openCloseComponent.js +1 -1
  549. package/dist/components/panel.js +1 -1
  550. package/dist/components/pick-list-item.js +1 -1
  551. package/dist/components/popover.js +1 -1
  552. package/dist/components/progress.js +1 -1
  553. package/dist/components/resources.js +1 -1
  554. package/dist/components/resources2.js +1 -1
  555. package/dist/components/resources3.js +1 -1
  556. package/dist/components/scrim.js +1 -1
  557. package/dist/components/shared-list-render.js +1 -1
  558. package/dist/components/sortable.esm.js +1 -1
  559. package/dist/components/switch.js +1 -1
  560. package/dist/components/t9n.js +1 -1
  561. package/dist/components/tab-nav.js +1 -1
  562. package/dist/components/tab-title.js +1 -1
  563. package/dist/components/tab.js +1 -1
  564. package/dist/components/tabs.js +1 -1
  565. package/dist/components/throttle.js +1 -1
  566. package/dist/components/tile.js +1 -1
  567. package/dist/components/time-picker.js +2 -2
  568. package/dist/components/tooltip.js +1 -1
  569. package/dist/components/utils.js +112 -31
  570. package/dist/components/utils2.js +1 -1
  571. package/dist/components/utils3.js +1 -1
  572. package/dist/esm/{ExpandToggle-095e2f69.js → ExpandToggle-84cd3334.js} +5 -5
  573. package/dist/esm/{FloatingArrow-4e190499.js → FloatingArrow-2a728102.js} +2 -2
  574. package/dist/esm/{Heading-08826e02.js → Heading-aa5e7f03.js} +2 -2
  575. package/dist/esm/{app-globals-a86875ad.js → app-globals-9a63f836.js} +2 -2
  576. package/dist/esm/{array-937e8e63.js → array-cba42ef7.js} +1 -1
  577. package/dist/esm/calcite-accordion_2.entry.js +7 -7
  578. package/dist/esm/calcite-action-bar.entry.js +15 -15
  579. package/dist/esm/calcite-action-group.entry.js +13 -13
  580. package/dist/esm/calcite-action-menu.entry.js +9 -9
  581. package/dist/esm/calcite-action-pad.entry.js +14 -14
  582. package/dist/esm/calcite-action.entry.js +11 -11
  583. package/dist/esm/calcite-alert.entry.js +12 -12
  584. package/dist/esm/calcite-avatar.entry.js +6 -6
  585. package/dist/esm/calcite-block_2.entry.js +12 -12
  586. package/dist/esm/calcite-button.entry.js +13 -13
  587. package/dist/esm/calcite-card.entry.js +10 -10
  588. package/dist/esm/calcite-checkbox.entry.js +10 -10
  589. package/dist/esm/calcite-chip-group.entry.js +8 -8
  590. package/dist/esm/calcite-chip.entry.js +12 -12
  591. package/dist/esm/calcite-color-picker_3.entry.js +585 -339
  592. package/dist/esm/calcite-combobox_3.entry.js +18 -18
  593. package/dist/esm/calcite-date-picker_4.entry.js +13 -13
  594. package/dist/esm/calcite-dropdown_3.entry.js +12 -12
  595. package/dist/esm/calcite-fab.entry.js +7 -7
  596. package/dist/esm/calcite-filter.entry.js +13 -13
  597. package/dist/esm/calcite-flow-item.entry.js +12 -12
  598. package/dist/esm/calcite-flow.entry.js +3 -3
  599. package/dist/esm/calcite-graph_2.entry.js +13 -13
  600. package/dist/esm/calcite-handle.entry.js +10 -10
  601. package/dist/esm/calcite-icon.entry.js +6 -6
  602. package/dist/esm/calcite-inline-editable.entry.js +12 -12
  603. package/dist/esm/calcite-input-date-picker.entry.js +18 -18
  604. package/dist/esm/calcite-input-message.entry.js +5 -5
  605. package/dist/esm/calcite-input-number.entry.js +13 -13
  606. package/dist/esm/calcite-input-text.entry.js +13 -13
  607. package/dist/esm/calcite-input-time-picker_2.entry.js +14 -14
  608. package/dist/esm/calcite-input.entry.js +13 -13
  609. package/dist/esm/calcite-label.entry.js +6 -6
  610. package/dist/esm/calcite-link.entry.js +7 -7
  611. package/dist/esm/calcite-list_3.entry.js +50 -40
  612. package/dist/esm/calcite-loader.entry.js +3 -3
  613. package/dist/esm/calcite-modal.entry.js +13 -13
  614. package/dist/esm/calcite-notice.entry.js +12 -12
  615. package/dist/esm/calcite-option_3.entry.js +10 -10
  616. package/dist/esm/calcite-pagination.entry.js +10 -10
  617. package/dist/esm/calcite-panel.entry.js +14 -14
  618. package/dist/esm/calcite-pick-list_3.entry.js +16 -16
  619. package/dist/esm/calcite-popover.entry.js +16 -16
  620. package/dist/esm/calcite-progress.entry.js +2 -2
  621. package/dist/esm/calcite-radio-button-group.entry.js +3 -3
  622. package/dist/esm/calcite-radio-button.entry.js +10 -10
  623. package/dist/esm/calcite-rating.entry.js +13 -13
  624. package/dist/esm/calcite-scrim.entry.js +9 -9
  625. package/dist/esm/calcite-segmented-control_2.entry.js +9 -9
  626. package/dist/esm/calcite-shell_3.entry.js +11 -11
  627. package/dist/esm/calcite-sortable-list.entry.js +5 -5
  628. package/dist/esm/calcite-split-button.entry.js +4 -4
  629. package/dist/esm/calcite-stepper_2.entry.js +10 -10
  630. package/dist/esm/calcite-switch.entry.js +10 -10
  631. package/dist/esm/calcite-tab_4.entry.js +7 -7
  632. package/dist/esm/calcite-text-area.entry.js +15 -15
  633. package/dist/esm/calcite-tile-select_2.entry.js +5 -5
  634. package/dist/esm/calcite-tile.entry.js +8 -8
  635. package/dist/esm/calcite-tip_3.entry.js +11 -11
  636. package/dist/esm/calcite-tooltip.entry.js +9 -9
  637. package/dist/esm/calcite-tree_2.entry.js +9 -9
  638. package/dist/esm/calcite-value-list_2.entry.js +16 -16
  639. package/dist/esm/calcite.js +6 -6
  640. package/dist/esm/{composed-offset-position.esm-fb83e249.js → composed-offset-position.esm-2c2ff148.js} +1 -1
  641. package/dist/esm/{conditionalSlot-98fcfe31.js → conditionalSlot-734f45e3.js} +3 -3
  642. package/dist/esm/{debounce-911eef82.js → debounce-13053af0.js} +1 -1
  643. package/dist/esm/{dom-2b55c6b1.js → dom-3643d47b.js} +3 -3
  644. package/dist/esm/{filter-6a2a0d23.js → filter-c124b3a7.js} +2 -2
  645. package/dist/esm/{floating-ui-1f96fa4e.js → floating-ui-dde330fd.js} +71 -65
  646. package/dist/esm/{focusTrapComponent-9f5c20f0.js → focusTrapComponent-be382f0c.js} +2 -2
  647. package/dist/esm/{form-ef433149.js → form-9b4d08d5.js} +3 -3
  648. package/dist/esm/{guid-08c9d9d2.js → guid-00c961cf.js} +1 -1
  649. package/dist/esm/{index-34f68bbe.js → index-de813188.js} +1 -1
  650. package/dist/esm/index.js +2 -2
  651. package/dist/esm/{interactive-a2eb6b56.js → interactive-7577fa95.js} +1 -1
  652. package/dist/esm/{key-a12e3d36.js → key-204f54dc.js} +1 -1
  653. package/dist/esm/{label-e5638056.js → label-aa3ca023.js} +2 -2
  654. package/dist/esm/{loadable-7ddbc3f7.js → loadable-295e7059.js} +1 -1
  655. package/dist/esm/loader.js +6 -6
  656. package/dist/esm/{locale-cdbef5ac.js → locale-cf07a13b.js} +4 -4
  657. package/dist/esm/{math-2b6a45bc.js → math-81cb18a5.js} +1 -1
  658. package/dist/esm/{observers-58b3356b.js → observers-e24920a0.js} +1 -1
  659. package/dist/esm/{openCloseComponent-6350a6b9.js → openCloseComponent-d6957380.js} +2 -2
  660. package/dist/esm/{resources-f97f2e3d.js → resources-20a9105d.js} +1 -1
  661. package/dist/esm/{resources-95e5c0bc.js → resources-510afe06.js} +1 -1
  662. package/dist/esm/{resources-52988112.js → resources-b814eba0.js} +5 -5
  663. package/dist/esm/{resources-87498192.js → resources-b81c1240.js} +1 -1
  664. package/dist/esm/{resources-66bba32b.js → resources-d27d888f.js} +1 -1
  665. package/dist/esm/{resources-509df361.js → resources-f496ba11.js} +1 -1
  666. package/dist/esm/{sortable.esm-69990d9c.js → sortable.esm-8c3ec43a.js} +1 -1
  667. package/dist/esm/{t9n-c5155b27.js → t9n-62bf4e90.js} +3 -3
  668. package/dist/esm/{throttle-161e1712.js → throttle-ab3e5fce.js} +2 -2
  669. package/dist/esm/utils-119581ee.js +195 -0
  670. package/dist/esm/{utils-4c71f289.js → utils-1692b158.js} +3 -3
  671. package/dist/extras/docs-json.json +156 -30
  672. package/dist/extras/vscode-data.json +22 -2
  673. package/dist/loader/cdn.js +1 -1
  674. package/dist/loader/index.cjs.js +1 -1
  675. package/dist/loader/index.es2017.js +1 -1
  676. package/dist/loader/index.js +1 -1
  677. package/dist/types/components/color-picker/color-picker.d.ts +54 -23
  678. package/dist/types/components/color-picker/interfaces.d.ts +1 -0
  679. package/dist/types/components/color-picker/resources.d.ts +28 -18
  680. package/dist/types/components/color-picker/utils.d.ts +16 -7
  681. package/dist/types/components/color-picker-hex-input/color-picker-hex-input.d.ts +33 -16
  682. package/dist/types/components/color-picker-hex-input/resources.d.ts +2 -2
  683. package/dist/types/components/color-picker-swatch/color-picker-swatch.d.ts +3 -2
  684. package/dist/types/components/color-picker-swatch/resources.d.ts +6 -1
  685. package/dist/types/components/list/list.d.ts +7 -2
  686. package/dist/types/components/list/resources.d.ts +1 -1
  687. package/dist/types/components.d.ts +62 -6
  688. package/dist/types/preact.d.ts +2 -1
  689. package/hydrate/index.js +796 -447
  690. package/package.json +4 -5
  691. package/dist/calcite/p-2927ff1d.js +0 -6
  692. package/dist/calcite/p-3623550f.entry.js +0 -6
  693. package/dist/calcite/p-5782f6ba.js +0 -6
  694. package/dist/calcite/p-5e1869b5.js +0 -6
  695. package/dist/calcite/p-663a4c37.js +0 -6
  696. package/dist/calcite/p-8b7561ca.js +0 -6
  697. package/dist/calcite/p-95860b15.entry.js +0 -6
  698. package/dist/calcite/p-b0a41644.js +0 -6
  699. package/dist/calcite/p-b1dcf567.js +0 -6
  700. package/dist/calcite/p-b73ede81.entry.js +0 -6
  701. package/dist/calcite/p-c107f270.entry.js +0 -6
  702. package/dist/calcite/p-f8d77f71.entry.js +0 -6
  703. package/dist/cjs/utils-78b4120a.js +0 -124
  704. package/dist/esm/utils-ab93be5f.js +0 -114
@@ -0,0 +1,2116 @@
1
+ /*!
2
+ * All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
+ * See https://github.com/Esri/calcite-components/blob/master/LICENSE.md for details.
4
+ * v1.4.0-next.6
5
+ */
6
+ function createCommonjsModule(fn, basedir, module) {
7
+ return module = {
8
+ path: basedir,
9
+ exports: {},
10
+ require: function (path, base) {
11
+ return commonjsRequire();
12
+ }
13
+ }, fn(module, module.exports), module.exports;
14
+ }
15
+
16
+ function commonjsRequire () {
17
+ throw new Error('Dynamic requires are not currently supported by @rollup/plugin-commonjs');
18
+ }
19
+
20
+ var colorName$1 = {
21
+ "aliceblue": [240, 248, 255],
22
+ "antiquewhite": [250, 235, 215],
23
+ "aqua": [0, 255, 255],
24
+ "aquamarine": [127, 255, 212],
25
+ "azure": [240, 255, 255],
26
+ "beige": [245, 245, 220],
27
+ "bisque": [255, 228, 196],
28
+ "black": [0, 0, 0],
29
+ "blanchedalmond": [255, 235, 205],
30
+ "blue": [0, 0, 255],
31
+ "blueviolet": [138, 43, 226],
32
+ "brown": [165, 42, 42],
33
+ "burlywood": [222, 184, 135],
34
+ "cadetblue": [95, 158, 160],
35
+ "chartreuse": [127, 255, 0],
36
+ "chocolate": [210, 105, 30],
37
+ "coral": [255, 127, 80],
38
+ "cornflowerblue": [100, 149, 237],
39
+ "cornsilk": [255, 248, 220],
40
+ "crimson": [220, 20, 60],
41
+ "cyan": [0, 255, 255],
42
+ "darkblue": [0, 0, 139],
43
+ "darkcyan": [0, 139, 139],
44
+ "darkgoldenrod": [184, 134, 11],
45
+ "darkgray": [169, 169, 169],
46
+ "darkgreen": [0, 100, 0],
47
+ "darkgrey": [169, 169, 169],
48
+ "darkkhaki": [189, 183, 107],
49
+ "darkmagenta": [139, 0, 139],
50
+ "darkolivegreen": [85, 107, 47],
51
+ "darkorange": [255, 140, 0],
52
+ "darkorchid": [153, 50, 204],
53
+ "darkred": [139, 0, 0],
54
+ "darksalmon": [233, 150, 122],
55
+ "darkseagreen": [143, 188, 143],
56
+ "darkslateblue": [72, 61, 139],
57
+ "darkslategray": [47, 79, 79],
58
+ "darkslategrey": [47, 79, 79],
59
+ "darkturquoise": [0, 206, 209],
60
+ "darkviolet": [148, 0, 211],
61
+ "deeppink": [255, 20, 147],
62
+ "deepskyblue": [0, 191, 255],
63
+ "dimgray": [105, 105, 105],
64
+ "dimgrey": [105, 105, 105],
65
+ "dodgerblue": [30, 144, 255],
66
+ "firebrick": [178, 34, 34],
67
+ "floralwhite": [255, 250, 240],
68
+ "forestgreen": [34, 139, 34],
69
+ "fuchsia": [255, 0, 255],
70
+ "gainsboro": [220, 220, 220],
71
+ "ghostwhite": [248, 248, 255],
72
+ "gold": [255, 215, 0],
73
+ "goldenrod": [218, 165, 32],
74
+ "gray": [128, 128, 128],
75
+ "green": [0, 128, 0],
76
+ "greenyellow": [173, 255, 47],
77
+ "grey": [128, 128, 128],
78
+ "honeydew": [240, 255, 240],
79
+ "hotpink": [255, 105, 180],
80
+ "indianred": [205, 92, 92],
81
+ "indigo": [75, 0, 130],
82
+ "ivory": [255, 255, 240],
83
+ "khaki": [240, 230, 140],
84
+ "lavender": [230, 230, 250],
85
+ "lavenderblush": [255, 240, 245],
86
+ "lawngreen": [124, 252, 0],
87
+ "lemonchiffon": [255, 250, 205],
88
+ "lightblue": [173, 216, 230],
89
+ "lightcoral": [240, 128, 128],
90
+ "lightcyan": [224, 255, 255],
91
+ "lightgoldenrodyellow": [250, 250, 210],
92
+ "lightgray": [211, 211, 211],
93
+ "lightgreen": [144, 238, 144],
94
+ "lightgrey": [211, 211, 211],
95
+ "lightpink": [255, 182, 193],
96
+ "lightsalmon": [255, 160, 122],
97
+ "lightseagreen": [32, 178, 170],
98
+ "lightskyblue": [135, 206, 250],
99
+ "lightslategray": [119, 136, 153],
100
+ "lightslategrey": [119, 136, 153],
101
+ "lightsteelblue": [176, 196, 222],
102
+ "lightyellow": [255, 255, 224],
103
+ "lime": [0, 255, 0],
104
+ "limegreen": [50, 205, 50],
105
+ "linen": [250, 240, 230],
106
+ "magenta": [255, 0, 255],
107
+ "maroon": [128, 0, 0],
108
+ "mediumaquamarine": [102, 205, 170],
109
+ "mediumblue": [0, 0, 205],
110
+ "mediumorchid": [186, 85, 211],
111
+ "mediumpurple": [147, 112, 219],
112
+ "mediumseagreen": [60, 179, 113],
113
+ "mediumslateblue": [123, 104, 238],
114
+ "mediumspringgreen": [0, 250, 154],
115
+ "mediumturquoise": [72, 209, 204],
116
+ "mediumvioletred": [199, 21, 133],
117
+ "midnightblue": [25, 25, 112],
118
+ "mintcream": [245, 255, 250],
119
+ "mistyrose": [255, 228, 225],
120
+ "moccasin": [255, 228, 181],
121
+ "navajowhite": [255, 222, 173],
122
+ "navy": [0, 0, 128],
123
+ "oldlace": [253, 245, 230],
124
+ "olive": [128, 128, 0],
125
+ "olivedrab": [107, 142, 35],
126
+ "orange": [255, 165, 0],
127
+ "orangered": [255, 69, 0],
128
+ "orchid": [218, 112, 214],
129
+ "palegoldenrod": [238, 232, 170],
130
+ "palegreen": [152, 251, 152],
131
+ "paleturquoise": [175, 238, 238],
132
+ "palevioletred": [219, 112, 147],
133
+ "papayawhip": [255, 239, 213],
134
+ "peachpuff": [255, 218, 185],
135
+ "peru": [205, 133, 63],
136
+ "pink": [255, 192, 203],
137
+ "plum": [221, 160, 221],
138
+ "powderblue": [176, 224, 230],
139
+ "purple": [128, 0, 128],
140
+ "rebeccapurple": [102, 51, 153],
141
+ "red": [255, 0, 0],
142
+ "rosybrown": [188, 143, 143],
143
+ "royalblue": [65, 105, 225],
144
+ "saddlebrown": [139, 69, 19],
145
+ "salmon": [250, 128, 114],
146
+ "sandybrown": [244, 164, 96],
147
+ "seagreen": [46, 139, 87],
148
+ "seashell": [255, 245, 238],
149
+ "sienna": [160, 82, 45],
150
+ "silver": [192, 192, 192],
151
+ "skyblue": [135, 206, 235],
152
+ "slateblue": [106, 90, 205],
153
+ "slategray": [112, 128, 144],
154
+ "slategrey": [112, 128, 144],
155
+ "snow": [255, 250, 250],
156
+ "springgreen": [0, 255, 127],
157
+ "steelblue": [70, 130, 180],
158
+ "tan": [210, 180, 140],
159
+ "teal": [0, 128, 128],
160
+ "thistle": [216, 191, 216],
161
+ "tomato": [255, 99, 71],
162
+ "turquoise": [64, 224, 208],
163
+ "violet": [238, 130, 238],
164
+ "wheat": [245, 222, 179],
165
+ "white": [255, 255, 255],
166
+ "whitesmoke": [245, 245, 245],
167
+ "yellow": [255, 255, 0],
168
+ "yellowgreen": [154, 205, 50]
169
+ };
170
+
171
+ var isArrayish = function isArrayish(obj) {
172
+ if (!obj || typeof obj === 'string') {
173
+ return false;
174
+ }
175
+
176
+ return obj instanceof Array || Array.isArray(obj) ||
177
+ (obj.length >= 0 && (obj.splice instanceof Function ||
178
+ (Object.getOwnPropertyDescriptor(obj, (obj.length - 1)) && obj.constructor.name !== 'String')));
179
+ };
180
+
181
+ var simpleSwizzle = createCommonjsModule(function (module) {
182
+
183
+
184
+
185
+ var concat = Array.prototype.concat;
186
+ var slice = Array.prototype.slice;
187
+
188
+ var swizzle = module.exports = function swizzle(args) {
189
+ var results = [];
190
+
191
+ for (var i = 0, len = args.length; i < len; i++) {
192
+ var arg = args[i];
193
+
194
+ if (isArrayish(arg)) {
195
+ // http://jsperf.com/javascript-array-concat-vs-push/98
196
+ results = concat.call(results, slice.call(arg));
197
+ } else {
198
+ results.push(arg);
199
+ }
200
+ }
201
+
202
+ return results;
203
+ };
204
+
205
+ swizzle.wrap = function (fn) {
206
+ return function () {
207
+ return fn(swizzle(arguments));
208
+ };
209
+ };
210
+ });
211
+
212
+ var colorString = createCommonjsModule(function (module) {
213
+ /* MIT license */
214
+
215
+
216
+ var hasOwnProperty = Object.hasOwnProperty;
217
+
218
+ var reverseNames = {};
219
+
220
+ // create a list of reverse color names
221
+ for (var name in colorName$1) {
222
+ if (hasOwnProperty.call(colorName$1, name)) {
223
+ reverseNames[colorName$1[name]] = name;
224
+ }
225
+ }
226
+
227
+ var cs = module.exports = {
228
+ to: {},
229
+ get: {}
230
+ };
231
+
232
+ cs.get = function (string) {
233
+ var prefix = string.substring(0, 3).toLowerCase();
234
+ var val;
235
+ var model;
236
+ switch (prefix) {
237
+ case 'hsl':
238
+ val = cs.get.hsl(string);
239
+ model = 'hsl';
240
+ break;
241
+ case 'hwb':
242
+ val = cs.get.hwb(string);
243
+ model = 'hwb';
244
+ break;
245
+ default:
246
+ val = cs.get.rgb(string);
247
+ model = 'rgb';
248
+ break;
249
+ }
250
+
251
+ if (!val) {
252
+ return null;
253
+ }
254
+
255
+ return {model: model, value: val};
256
+ };
257
+
258
+ cs.get.rgb = function (string) {
259
+ if (!string) {
260
+ return null;
261
+ }
262
+
263
+ var abbr = /^#([a-f0-9]{3,4})$/i;
264
+ var hex = /^#([a-f0-9]{6})([a-f0-9]{2})?$/i;
265
+ var rgba = /^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/;
266
+ var per = /^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/;
267
+ var keyword = /^(\w+)$/;
268
+
269
+ var rgb = [0, 0, 0, 1];
270
+ var match;
271
+ var i;
272
+ var hexAlpha;
273
+
274
+ if (match = string.match(hex)) {
275
+ hexAlpha = match[2];
276
+ match = match[1];
277
+
278
+ for (i = 0; i < 3; i++) {
279
+ // https://jsperf.com/slice-vs-substr-vs-substring-methods-long-string/19
280
+ var i2 = i * 2;
281
+ rgb[i] = parseInt(match.slice(i2, i2 + 2), 16);
282
+ }
283
+
284
+ if (hexAlpha) {
285
+ rgb[3] = parseInt(hexAlpha, 16) / 255;
286
+ }
287
+ } else if (match = string.match(abbr)) {
288
+ match = match[1];
289
+ hexAlpha = match[3];
290
+
291
+ for (i = 0; i < 3; i++) {
292
+ rgb[i] = parseInt(match[i] + match[i], 16);
293
+ }
294
+
295
+ if (hexAlpha) {
296
+ rgb[3] = parseInt(hexAlpha + hexAlpha, 16) / 255;
297
+ }
298
+ } else if (match = string.match(rgba)) {
299
+ for (i = 0; i < 3; i++) {
300
+ rgb[i] = parseInt(match[i + 1], 0);
301
+ }
302
+
303
+ if (match[4]) {
304
+ if (match[5]) {
305
+ rgb[3] = parseFloat(match[4]) * 0.01;
306
+ } else {
307
+ rgb[3] = parseFloat(match[4]);
308
+ }
309
+ }
310
+ } else if (match = string.match(per)) {
311
+ for (i = 0; i < 3; i++) {
312
+ rgb[i] = Math.round(parseFloat(match[i + 1]) * 2.55);
313
+ }
314
+
315
+ if (match[4]) {
316
+ if (match[5]) {
317
+ rgb[3] = parseFloat(match[4]) * 0.01;
318
+ } else {
319
+ rgb[3] = parseFloat(match[4]);
320
+ }
321
+ }
322
+ } else if (match = string.match(keyword)) {
323
+ if (match[1] === 'transparent') {
324
+ return [0, 0, 0, 0];
325
+ }
326
+
327
+ if (!hasOwnProperty.call(colorName$1, match[1])) {
328
+ return null;
329
+ }
330
+
331
+ rgb = colorName$1[match[1]];
332
+ rgb[3] = 1;
333
+
334
+ return rgb;
335
+ } else {
336
+ return null;
337
+ }
338
+
339
+ for (i = 0; i < 3; i++) {
340
+ rgb[i] = clamp(rgb[i], 0, 255);
341
+ }
342
+ rgb[3] = clamp(rgb[3], 0, 1);
343
+
344
+ return rgb;
345
+ };
346
+
347
+ cs.get.hsl = function (string) {
348
+ if (!string) {
349
+ return null;
350
+ }
351
+
352
+ var hsl = /^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d\.]+)%\s*,?\s*([+-]?[\d\.]+)%\s*(?:[,|\/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/;
353
+ var match = string.match(hsl);
354
+
355
+ if (match) {
356
+ var alpha = parseFloat(match[4]);
357
+ var h = ((parseFloat(match[1]) % 360) + 360) % 360;
358
+ var s = clamp(parseFloat(match[2]), 0, 100);
359
+ var l = clamp(parseFloat(match[3]), 0, 100);
360
+ var a = clamp(isNaN(alpha) ? 1 : alpha, 0, 1);
361
+
362
+ return [h, s, l, a];
363
+ }
364
+
365
+ return null;
366
+ };
367
+
368
+ cs.get.hwb = function (string) {
369
+ if (!string) {
370
+ return null;
371
+ }
372
+
373
+ var hwb = /^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/;
374
+ var match = string.match(hwb);
375
+
376
+ if (match) {
377
+ var alpha = parseFloat(match[4]);
378
+ var h = ((parseFloat(match[1]) % 360) + 360) % 360;
379
+ var w = clamp(parseFloat(match[2]), 0, 100);
380
+ var b = clamp(parseFloat(match[3]), 0, 100);
381
+ var a = clamp(isNaN(alpha) ? 1 : alpha, 0, 1);
382
+ return [h, w, b, a];
383
+ }
384
+
385
+ return null;
386
+ };
387
+
388
+ cs.to.hex = function () {
389
+ var rgba = simpleSwizzle(arguments);
390
+
391
+ return (
392
+ '#' +
393
+ hexDouble(rgba[0]) +
394
+ hexDouble(rgba[1]) +
395
+ hexDouble(rgba[2]) +
396
+ (rgba[3] < 1
397
+ ? (hexDouble(Math.round(rgba[3] * 255)))
398
+ : '')
399
+ );
400
+ };
401
+
402
+ cs.to.rgb = function () {
403
+ var rgba = simpleSwizzle(arguments);
404
+
405
+ return rgba.length < 4 || rgba[3] === 1
406
+ ? 'rgb(' + Math.round(rgba[0]) + ', ' + Math.round(rgba[1]) + ', ' + Math.round(rgba[2]) + ')'
407
+ : 'rgba(' + Math.round(rgba[0]) + ', ' + Math.round(rgba[1]) + ', ' + Math.round(rgba[2]) + ', ' + rgba[3] + ')';
408
+ };
409
+
410
+ cs.to.rgb.percent = function () {
411
+ var rgba = simpleSwizzle(arguments);
412
+
413
+ var r = Math.round(rgba[0] / 255 * 100);
414
+ var g = Math.round(rgba[1] / 255 * 100);
415
+ var b = Math.round(rgba[2] / 255 * 100);
416
+
417
+ return rgba.length < 4 || rgba[3] === 1
418
+ ? 'rgb(' + r + '%, ' + g + '%, ' + b + '%)'
419
+ : 'rgba(' + r + '%, ' + g + '%, ' + b + '%, ' + rgba[3] + ')';
420
+ };
421
+
422
+ cs.to.hsl = function () {
423
+ var hsla = simpleSwizzle(arguments);
424
+ return hsla.length < 4 || hsla[3] === 1
425
+ ? 'hsl(' + hsla[0] + ', ' + hsla[1] + '%, ' + hsla[2] + '%)'
426
+ : 'hsla(' + hsla[0] + ', ' + hsla[1] + '%, ' + hsla[2] + '%, ' + hsla[3] + ')';
427
+ };
428
+
429
+ // hwb is a bit different than rgb(a) & hsl(a) since there is no alpha specific syntax
430
+ // (hwb have alpha optional & 1 is default value)
431
+ cs.to.hwb = function () {
432
+ var hwba = simpleSwizzle(arguments);
433
+
434
+ var a = '';
435
+ if (hwba.length >= 4 && hwba[3] !== 1) {
436
+ a = ', ' + hwba[3];
437
+ }
438
+
439
+ return 'hwb(' + hwba[0] + ', ' + hwba[1] + '%, ' + hwba[2] + '%' + a + ')';
440
+ };
441
+
442
+ cs.to.keyword = function (rgb) {
443
+ return reverseNames[rgb.slice(0, 3)];
444
+ };
445
+
446
+ // helpers
447
+ function clamp(num, min, max) {
448
+ return Math.min(Math.max(min, num), max);
449
+ }
450
+
451
+ function hexDouble(num) {
452
+ var str = Math.round(num).toString(16).toUpperCase();
453
+ return (str.length < 2) ? '0' + str : str;
454
+ }
455
+ });
456
+
457
+ var colorName = {
458
+ "aliceblue": [240, 248, 255],
459
+ "antiquewhite": [250, 235, 215],
460
+ "aqua": [0, 255, 255],
461
+ "aquamarine": [127, 255, 212],
462
+ "azure": [240, 255, 255],
463
+ "beige": [245, 245, 220],
464
+ "bisque": [255, 228, 196],
465
+ "black": [0, 0, 0],
466
+ "blanchedalmond": [255, 235, 205],
467
+ "blue": [0, 0, 255],
468
+ "blueviolet": [138, 43, 226],
469
+ "brown": [165, 42, 42],
470
+ "burlywood": [222, 184, 135],
471
+ "cadetblue": [95, 158, 160],
472
+ "chartreuse": [127, 255, 0],
473
+ "chocolate": [210, 105, 30],
474
+ "coral": [255, 127, 80],
475
+ "cornflowerblue": [100, 149, 237],
476
+ "cornsilk": [255, 248, 220],
477
+ "crimson": [220, 20, 60],
478
+ "cyan": [0, 255, 255],
479
+ "darkblue": [0, 0, 139],
480
+ "darkcyan": [0, 139, 139],
481
+ "darkgoldenrod": [184, 134, 11],
482
+ "darkgray": [169, 169, 169],
483
+ "darkgreen": [0, 100, 0],
484
+ "darkgrey": [169, 169, 169],
485
+ "darkkhaki": [189, 183, 107],
486
+ "darkmagenta": [139, 0, 139],
487
+ "darkolivegreen": [85, 107, 47],
488
+ "darkorange": [255, 140, 0],
489
+ "darkorchid": [153, 50, 204],
490
+ "darkred": [139, 0, 0],
491
+ "darksalmon": [233, 150, 122],
492
+ "darkseagreen": [143, 188, 143],
493
+ "darkslateblue": [72, 61, 139],
494
+ "darkslategray": [47, 79, 79],
495
+ "darkslategrey": [47, 79, 79],
496
+ "darkturquoise": [0, 206, 209],
497
+ "darkviolet": [148, 0, 211],
498
+ "deeppink": [255, 20, 147],
499
+ "deepskyblue": [0, 191, 255],
500
+ "dimgray": [105, 105, 105],
501
+ "dimgrey": [105, 105, 105],
502
+ "dodgerblue": [30, 144, 255],
503
+ "firebrick": [178, 34, 34],
504
+ "floralwhite": [255, 250, 240],
505
+ "forestgreen": [34, 139, 34],
506
+ "fuchsia": [255, 0, 255],
507
+ "gainsboro": [220, 220, 220],
508
+ "ghostwhite": [248, 248, 255],
509
+ "gold": [255, 215, 0],
510
+ "goldenrod": [218, 165, 32],
511
+ "gray": [128, 128, 128],
512
+ "green": [0, 128, 0],
513
+ "greenyellow": [173, 255, 47],
514
+ "grey": [128, 128, 128],
515
+ "honeydew": [240, 255, 240],
516
+ "hotpink": [255, 105, 180],
517
+ "indianred": [205, 92, 92],
518
+ "indigo": [75, 0, 130],
519
+ "ivory": [255, 255, 240],
520
+ "khaki": [240, 230, 140],
521
+ "lavender": [230, 230, 250],
522
+ "lavenderblush": [255, 240, 245],
523
+ "lawngreen": [124, 252, 0],
524
+ "lemonchiffon": [255, 250, 205],
525
+ "lightblue": [173, 216, 230],
526
+ "lightcoral": [240, 128, 128],
527
+ "lightcyan": [224, 255, 255],
528
+ "lightgoldenrodyellow": [250, 250, 210],
529
+ "lightgray": [211, 211, 211],
530
+ "lightgreen": [144, 238, 144],
531
+ "lightgrey": [211, 211, 211],
532
+ "lightpink": [255, 182, 193],
533
+ "lightsalmon": [255, 160, 122],
534
+ "lightseagreen": [32, 178, 170],
535
+ "lightskyblue": [135, 206, 250],
536
+ "lightslategray": [119, 136, 153],
537
+ "lightslategrey": [119, 136, 153],
538
+ "lightsteelblue": [176, 196, 222],
539
+ "lightyellow": [255, 255, 224],
540
+ "lime": [0, 255, 0],
541
+ "limegreen": [50, 205, 50],
542
+ "linen": [250, 240, 230],
543
+ "magenta": [255, 0, 255],
544
+ "maroon": [128, 0, 0],
545
+ "mediumaquamarine": [102, 205, 170],
546
+ "mediumblue": [0, 0, 205],
547
+ "mediumorchid": [186, 85, 211],
548
+ "mediumpurple": [147, 112, 219],
549
+ "mediumseagreen": [60, 179, 113],
550
+ "mediumslateblue": [123, 104, 238],
551
+ "mediumspringgreen": [0, 250, 154],
552
+ "mediumturquoise": [72, 209, 204],
553
+ "mediumvioletred": [199, 21, 133],
554
+ "midnightblue": [25, 25, 112],
555
+ "mintcream": [245, 255, 250],
556
+ "mistyrose": [255, 228, 225],
557
+ "moccasin": [255, 228, 181],
558
+ "navajowhite": [255, 222, 173],
559
+ "navy": [0, 0, 128],
560
+ "oldlace": [253, 245, 230],
561
+ "olive": [128, 128, 0],
562
+ "olivedrab": [107, 142, 35],
563
+ "orange": [255, 165, 0],
564
+ "orangered": [255, 69, 0],
565
+ "orchid": [218, 112, 214],
566
+ "palegoldenrod": [238, 232, 170],
567
+ "palegreen": [152, 251, 152],
568
+ "paleturquoise": [175, 238, 238],
569
+ "palevioletred": [219, 112, 147],
570
+ "papayawhip": [255, 239, 213],
571
+ "peachpuff": [255, 218, 185],
572
+ "peru": [205, 133, 63],
573
+ "pink": [255, 192, 203],
574
+ "plum": [221, 160, 221],
575
+ "powderblue": [176, 224, 230],
576
+ "purple": [128, 0, 128],
577
+ "rebeccapurple": [102, 51, 153],
578
+ "red": [255, 0, 0],
579
+ "rosybrown": [188, 143, 143],
580
+ "royalblue": [65, 105, 225],
581
+ "saddlebrown": [139, 69, 19],
582
+ "salmon": [250, 128, 114],
583
+ "sandybrown": [244, 164, 96],
584
+ "seagreen": [46, 139, 87],
585
+ "seashell": [255, 245, 238],
586
+ "sienna": [160, 82, 45],
587
+ "silver": [192, 192, 192],
588
+ "skyblue": [135, 206, 235],
589
+ "slateblue": [106, 90, 205],
590
+ "slategray": [112, 128, 144],
591
+ "slategrey": [112, 128, 144],
592
+ "snow": [255, 250, 250],
593
+ "springgreen": [0, 255, 127],
594
+ "steelblue": [70, 130, 180],
595
+ "tan": [210, 180, 140],
596
+ "teal": [0, 128, 128],
597
+ "thistle": [216, 191, 216],
598
+ "tomato": [255, 99, 71],
599
+ "turquoise": [64, 224, 208],
600
+ "violet": [238, 130, 238],
601
+ "wheat": [245, 222, 179],
602
+ "white": [255, 255, 255],
603
+ "whitesmoke": [245, 245, 245],
604
+ "yellow": [255, 255, 0],
605
+ "yellowgreen": [154, 205, 50]
606
+ };
607
+
608
+ /* MIT license */
609
+ /* eslint-disable no-mixed-operators */
610
+
611
+
612
+ // NOTE: conversions should only return primitive values (i.e. arrays, or
613
+ // values that give correct `typeof` results).
614
+ // do not use box values types (i.e. Number(), String(), etc.)
615
+
616
+ const reverseKeywords = {};
617
+ for (const key of Object.keys(colorName)) {
618
+ reverseKeywords[colorName[key]] = key;
619
+ }
620
+
621
+ const convert$1 = {
622
+ rgb: {channels: 3, labels: 'rgb'},
623
+ hsl: {channels: 3, labels: 'hsl'},
624
+ hsv: {channels: 3, labels: 'hsv'},
625
+ hwb: {channels: 3, labels: 'hwb'},
626
+ cmyk: {channels: 4, labels: 'cmyk'},
627
+ xyz: {channels: 3, labels: 'xyz'},
628
+ lab: {channels: 3, labels: 'lab'},
629
+ lch: {channels: 3, labels: 'lch'},
630
+ hex: {channels: 1, labels: ['hex']},
631
+ keyword: {channels: 1, labels: ['keyword']},
632
+ ansi16: {channels: 1, labels: ['ansi16']},
633
+ ansi256: {channels: 1, labels: ['ansi256']},
634
+ hcg: {channels: 3, labels: ['h', 'c', 'g']},
635
+ apple: {channels: 3, labels: ['r16', 'g16', 'b16']},
636
+ gray: {channels: 1, labels: ['gray']}
637
+ };
638
+
639
+ var conversions = convert$1;
640
+
641
+ // Hide .channels and .labels properties
642
+ for (const model of Object.keys(convert$1)) {
643
+ if (!('channels' in convert$1[model])) {
644
+ throw new Error('missing channels property: ' + model);
645
+ }
646
+
647
+ if (!('labels' in convert$1[model])) {
648
+ throw new Error('missing channel labels property: ' + model);
649
+ }
650
+
651
+ if (convert$1[model].labels.length !== convert$1[model].channels) {
652
+ throw new Error('channel and label counts mismatch: ' + model);
653
+ }
654
+
655
+ const {channels, labels} = convert$1[model];
656
+ delete convert$1[model].channels;
657
+ delete convert$1[model].labels;
658
+ Object.defineProperty(convert$1[model], 'channels', {value: channels});
659
+ Object.defineProperty(convert$1[model], 'labels', {value: labels});
660
+ }
661
+
662
+ convert$1.rgb.hsl = function (rgb) {
663
+ const r = rgb[0] / 255;
664
+ const g = rgb[1] / 255;
665
+ const b = rgb[2] / 255;
666
+ const min = Math.min(r, g, b);
667
+ const max = Math.max(r, g, b);
668
+ const delta = max - min;
669
+ let h;
670
+ let s;
671
+
672
+ if (max === min) {
673
+ h = 0;
674
+ } else if (r === max) {
675
+ h = (g - b) / delta;
676
+ } else if (g === max) {
677
+ h = 2 + (b - r) / delta;
678
+ } else if (b === max) {
679
+ h = 4 + (r - g) / delta;
680
+ }
681
+
682
+ h = Math.min(h * 60, 360);
683
+
684
+ if (h < 0) {
685
+ h += 360;
686
+ }
687
+
688
+ const l = (min + max) / 2;
689
+
690
+ if (max === min) {
691
+ s = 0;
692
+ } else if (l <= 0.5) {
693
+ s = delta / (max + min);
694
+ } else {
695
+ s = delta / (2 - max - min);
696
+ }
697
+
698
+ return [h, s * 100, l * 100];
699
+ };
700
+
701
+ convert$1.rgb.hsv = function (rgb) {
702
+ let rdif;
703
+ let gdif;
704
+ let bdif;
705
+ let h;
706
+ let s;
707
+
708
+ const r = rgb[0] / 255;
709
+ const g = rgb[1] / 255;
710
+ const b = rgb[2] / 255;
711
+ const v = Math.max(r, g, b);
712
+ const diff = v - Math.min(r, g, b);
713
+ const diffc = function (c) {
714
+ return (v - c) / 6 / diff + 1 / 2;
715
+ };
716
+
717
+ if (diff === 0) {
718
+ h = 0;
719
+ s = 0;
720
+ } else {
721
+ s = diff / v;
722
+ rdif = diffc(r);
723
+ gdif = diffc(g);
724
+ bdif = diffc(b);
725
+
726
+ if (r === v) {
727
+ h = bdif - gdif;
728
+ } else if (g === v) {
729
+ h = (1 / 3) + rdif - bdif;
730
+ } else if (b === v) {
731
+ h = (2 / 3) + gdif - rdif;
732
+ }
733
+
734
+ if (h < 0) {
735
+ h += 1;
736
+ } else if (h > 1) {
737
+ h -= 1;
738
+ }
739
+ }
740
+
741
+ return [
742
+ h * 360,
743
+ s * 100,
744
+ v * 100
745
+ ];
746
+ };
747
+
748
+ convert$1.rgb.hwb = function (rgb) {
749
+ const r = rgb[0];
750
+ const g = rgb[1];
751
+ let b = rgb[2];
752
+ const h = convert$1.rgb.hsl(rgb)[0];
753
+ const w = 1 / 255 * Math.min(r, Math.min(g, b));
754
+
755
+ b = 1 - 1 / 255 * Math.max(r, Math.max(g, b));
756
+
757
+ return [h, w * 100, b * 100];
758
+ };
759
+
760
+ convert$1.rgb.cmyk = function (rgb) {
761
+ const r = rgb[0] / 255;
762
+ const g = rgb[1] / 255;
763
+ const b = rgb[2] / 255;
764
+
765
+ const k = Math.min(1 - r, 1 - g, 1 - b);
766
+ const c = (1 - r - k) / (1 - k) || 0;
767
+ const m = (1 - g - k) / (1 - k) || 0;
768
+ const y = (1 - b - k) / (1 - k) || 0;
769
+
770
+ return [c * 100, m * 100, y * 100, k * 100];
771
+ };
772
+
773
+ function comparativeDistance(x, y) {
774
+ /*
775
+ See https://en.m.wikipedia.org/wiki/Euclidean_distance#Squared_Euclidean_distance
776
+ */
777
+ return (
778
+ ((x[0] - y[0]) ** 2) +
779
+ ((x[1] - y[1]) ** 2) +
780
+ ((x[2] - y[2]) ** 2)
781
+ );
782
+ }
783
+
784
+ convert$1.rgb.keyword = function (rgb) {
785
+ const reversed = reverseKeywords[rgb];
786
+ if (reversed) {
787
+ return reversed;
788
+ }
789
+
790
+ let currentClosestDistance = Infinity;
791
+ let currentClosestKeyword;
792
+
793
+ for (const keyword of Object.keys(colorName)) {
794
+ const value = colorName[keyword];
795
+
796
+ // Compute comparative distance
797
+ const distance = comparativeDistance(rgb, value);
798
+
799
+ // Check if its less, if so set as closest
800
+ if (distance < currentClosestDistance) {
801
+ currentClosestDistance = distance;
802
+ currentClosestKeyword = keyword;
803
+ }
804
+ }
805
+
806
+ return currentClosestKeyword;
807
+ };
808
+
809
+ convert$1.keyword.rgb = function (keyword) {
810
+ return colorName[keyword];
811
+ };
812
+
813
+ convert$1.rgb.xyz = function (rgb) {
814
+ let r = rgb[0] / 255;
815
+ let g = rgb[1] / 255;
816
+ let b = rgb[2] / 255;
817
+
818
+ // Assume sRGB
819
+ r = r > 0.04045 ? (((r + 0.055) / 1.055) ** 2.4) : (r / 12.92);
820
+ g = g > 0.04045 ? (((g + 0.055) / 1.055) ** 2.4) : (g / 12.92);
821
+ b = b > 0.04045 ? (((b + 0.055) / 1.055) ** 2.4) : (b / 12.92);
822
+
823
+ const x = (r * 0.4124) + (g * 0.3576) + (b * 0.1805);
824
+ const y = (r * 0.2126) + (g * 0.7152) + (b * 0.0722);
825
+ const z = (r * 0.0193) + (g * 0.1192) + (b * 0.9505);
826
+
827
+ return [x * 100, y * 100, z * 100];
828
+ };
829
+
830
+ convert$1.rgb.lab = function (rgb) {
831
+ const xyz = convert$1.rgb.xyz(rgb);
832
+ let x = xyz[0];
833
+ let y = xyz[1];
834
+ let z = xyz[2];
835
+
836
+ x /= 95.047;
837
+ y /= 100;
838
+ z /= 108.883;
839
+
840
+ x = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116);
841
+ y = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116);
842
+ z = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116);
843
+
844
+ const l = (116 * y) - 16;
845
+ const a = 500 * (x - y);
846
+ const b = 200 * (y - z);
847
+
848
+ return [l, a, b];
849
+ };
850
+
851
+ convert$1.hsl.rgb = function (hsl) {
852
+ const h = hsl[0] / 360;
853
+ const s = hsl[1] / 100;
854
+ const l = hsl[2] / 100;
855
+ let t2;
856
+ let t3;
857
+ let val;
858
+
859
+ if (s === 0) {
860
+ val = l * 255;
861
+ return [val, val, val];
862
+ }
863
+
864
+ if (l < 0.5) {
865
+ t2 = l * (1 + s);
866
+ } else {
867
+ t2 = l + s - l * s;
868
+ }
869
+
870
+ const t1 = 2 * l - t2;
871
+
872
+ const rgb = [0, 0, 0];
873
+ for (let i = 0; i < 3; i++) {
874
+ t3 = h + 1 / 3 * -(i - 1);
875
+ if (t3 < 0) {
876
+ t3++;
877
+ }
878
+
879
+ if (t3 > 1) {
880
+ t3--;
881
+ }
882
+
883
+ if (6 * t3 < 1) {
884
+ val = t1 + (t2 - t1) * 6 * t3;
885
+ } else if (2 * t3 < 1) {
886
+ val = t2;
887
+ } else if (3 * t3 < 2) {
888
+ val = t1 + (t2 - t1) * (2 / 3 - t3) * 6;
889
+ } else {
890
+ val = t1;
891
+ }
892
+
893
+ rgb[i] = val * 255;
894
+ }
895
+
896
+ return rgb;
897
+ };
898
+
899
+ convert$1.hsl.hsv = function (hsl) {
900
+ const h = hsl[0];
901
+ let s = hsl[1] / 100;
902
+ let l = hsl[2] / 100;
903
+ let smin = s;
904
+ const lmin = Math.max(l, 0.01);
905
+
906
+ l *= 2;
907
+ s *= (l <= 1) ? l : 2 - l;
908
+ smin *= lmin <= 1 ? lmin : 2 - lmin;
909
+ const v = (l + s) / 2;
910
+ const sv = l === 0 ? (2 * smin) / (lmin + smin) : (2 * s) / (l + s);
911
+
912
+ return [h, sv * 100, v * 100];
913
+ };
914
+
915
+ convert$1.hsv.rgb = function (hsv) {
916
+ const h = hsv[0] / 60;
917
+ const s = hsv[1] / 100;
918
+ let v = hsv[2] / 100;
919
+ const hi = Math.floor(h) % 6;
920
+
921
+ const f = h - Math.floor(h);
922
+ const p = 255 * v * (1 - s);
923
+ const q = 255 * v * (1 - (s * f));
924
+ const t = 255 * v * (1 - (s * (1 - f)));
925
+ v *= 255;
926
+
927
+ switch (hi) {
928
+ case 0:
929
+ return [v, t, p];
930
+ case 1:
931
+ return [q, v, p];
932
+ case 2:
933
+ return [p, v, t];
934
+ case 3:
935
+ return [p, q, v];
936
+ case 4:
937
+ return [t, p, v];
938
+ case 5:
939
+ return [v, p, q];
940
+ }
941
+ };
942
+
943
+ convert$1.hsv.hsl = function (hsv) {
944
+ const h = hsv[0];
945
+ const s = hsv[1] / 100;
946
+ const v = hsv[2] / 100;
947
+ const vmin = Math.max(v, 0.01);
948
+ let sl;
949
+ let l;
950
+
951
+ l = (2 - s) * v;
952
+ const lmin = (2 - s) * vmin;
953
+ sl = s * vmin;
954
+ sl /= (lmin <= 1) ? lmin : 2 - lmin;
955
+ sl = sl || 0;
956
+ l /= 2;
957
+
958
+ return [h, sl * 100, l * 100];
959
+ };
960
+
961
+ // http://dev.w3.org/csswg/css-color/#hwb-to-rgb
962
+ convert$1.hwb.rgb = function (hwb) {
963
+ const h = hwb[0] / 360;
964
+ let wh = hwb[1] / 100;
965
+ let bl = hwb[2] / 100;
966
+ const ratio = wh + bl;
967
+ let f;
968
+
969
+ // Wh + bl cant be > 1
970
+ if (ratio > 1) {
971
+ wh /= ratio;
972
+ bl /= ratio;
973
+ }
974
+
975
+ const i = Math.floor(6 * h);
976
+ const v = 1 - bl;
977
+ f = 6 * h - i;
978
+
979
+ if ((i & 0x01) !== 0) {
980
+ f = 1 - f;
981
+ }
982
+
983
+ const n = wh + f * (v - wh); // Linear interpolation
984
+
985
+ let r;
986
+ let g;
987
+ let b;
988
+ /* eslint-disable max-statements-per-line,no-multi-spaces */
989
+ switch (i) {
990
+ default:
991
+ case 6:
992
+ case 0: r = v; g = n; b = wh; break;
993
+ case 1: r = n; g = v; b = wh; break;
994
+ case 2: r = wh; g = v; b = n; break;
995
+ case 3: r = wh; g = n; b = v; break;
996
+ case 4: r = n; g = wh; b = v; break;
997
+ case 5: r = v; g = wh; b = n; break;
998
+ }
999
+ /* eslint-enable max-statements-per-line,no-multi-spaces */
1000
+
1001
+ return [r * 255, g * 255, b * 255];
1002
+ };
1003
+
1004
+ convert$1.cmyk.rgb = function (cmyk) {
1005
+ const c = cmyk[0] / 100;
1006
+ const m = cmyk[1] / 100;
1007
+ const y = cmyk[2] / 100;
1008
+ const k = cmyk[3] / 100;
1009
+
1010
+ const r = 1 - Math.min(1, c * (1 - k) + k);
1011
+ const g = 1 - Math.min(1, m * (1 - k) + k);
1012
+ const b = 1 - Math.min(1, y * (1 - k) + k);
1013
+
1014
+ return [r * 255, g * 255, b * 255];
1015
+ };
1016
+
1017
+ convert$1.xyz.rgb = function (xyz) {
1018
+ const x = xyz[0] / 100;
1019
+ const y = xyz[1] / 100;
1020
+ const z = xyz[2] / 100;
1021
+ let r;
1022
+ let g;
1023
+ let b;
1024
+
1025
+ r = (x * 3.2406) + (y * -1.5372) + (z * -0.4986);
1026
+ g = (x * -0.9689) + (y * 1.8758) + (z * 0.0415);
1027
+ b = (x * 0.0557) + (y * -0.2040) + (z * 1.0570);
1028
+
1029
+ // Assume sRGB
1030
+ r = r > 0.0031308
1031
+ ? ((1.055 * (r ** (1.0 / 2.4))) - 0.055)
1032
+ : r * 12.92;
1033
+
1034
+ g = g > 0.0031308
1035
+ ? ((1.055 * (g ** (1.0 / 2.4))) - 0.055)
1036
+ : g * 12.92;
1037
+
1038
+ b = b > 0.0031308
1039
+ ? ((1.055 * (b ** (1.0 / 2.4))) - 0.055)
1040
+ : b * 12.92;
1041
+
1042
+ r = Math.min(Math.max(0, r), 1);
1043
+ g = Math.min(Math.max(0, g), 1);
1044
+ b = Math.min(Math.max(0, b), 1);
1045
+
1046
+ return [r * 255, g * 255, b * 255];
1047
+ };
1048
+
1049
+ convert$1.xyz.lab = function (xyz) {
1050
+ let x = xyz[0];
1051
+ let y = xyz[1];
1052
+ let z = xyz[2];
1053
+
1054
+ x /= 95.047;
1055
+ y /= 100;
1056
+ z /= 108.883;
1057
+
1058
+ x = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116);
1059
+ y = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116);
1060
+ z = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116);
1061
+
1062
+ const l = (116 * y) - 16;
1063
+ const a = 500 * (x - y);
1064
+ const b = 200 * (y - z);
1065
+
1066
+ return [l, a, b];
1067
+ };
1068
+
1069
+ convert$1.lab.xyz = function (lab) {
1070
+ const l = lab[0];
1071
+ const a = lab[1];
1072
+ const b = lab[2];
1073
+ let x;
1074
+ let y;
1075
+ let z;
1076
+
1077
+ y = (l + 16) / 116;
1078
+ x = a / 500 + y;
1079
+ z = y - b / 200;
1080
+
1081
+ const y2 = y ** 3;
1082
+ const x2 = x ** 3;
1083
+ const z2 = z ** 3;
1084
+ y = y2 > 0.008856 ? y2 : (y - 16 / 116) / 7.787;
1085
+ x = x2 > 0.008856 ? x2 : (x - 16 / 116) / 7.787;
1086
+ z = z2 > 0.008856 ? z2 : (z - 16 / 116) / 7.787;
1087
+
1088
+ x *= 95.047;
1089
+ y *= 100;
1090
+ z *= 108.883;
1091
+
1092
+ return [x, y, z];
1093
+ };
1094
+
1095
+ convert$1.lab.lch = function (lab) {
1096
+ const l = lab[0];
1097
+ const a = lab[1];
1098
+ const b = lab[2];
1099
+ let h;
1100
+
1101
+ const hr = Math.atan2(b, a);
1102
+ h = hr * 360 / 2 / Math.PI;
1103
+
1104
+ if (h < 0) {
1105
+ h += 360;
1106
+ }
1107
+
1108
+ const c = Math.sqrt(a * a + b * b);
1109
+
1110
+ return [l, c, h];
1111
+ };
1112
+
1113
+ convert$1.lch.lab = function (lch) {
1114
+ const l = lch[0];
1115
+ const c = lch[1];
1116
+ const h = lch[2];
1117
+
1118
+ const hr = h / 360 * 2 * Math.PI;
1119
+ const a = c * Math.cos(hr);
1120
+ const b = c * Math.sin(hr);
1121
+
1122
+ return [l, a, b];
1123
+ };
1124
+
1125
+ convert$1.rgb.ansi16 = function (args, saturation = null) {
1126
+ const [r, g, b] = args;
1127
+ let value = saturation === null ? convert$1.rgb.hsv(args)[2] : saturation; // Hsv -> ansi16 optimization
1128
+
1129
+ value = Math.round(value / 50);
1130
+
1131
+ if (value === 0) {
1132
+ return 30;
1133
+ }
1134
+
1135
+ let ansi = 30
1136
+ + ((Math.round(b / 255) << 2)
1137
+ | (Math.round(g / 255) << 1)
1138
+ | Math.round(r / 255));
1139
+
1140
+ if (value === 2) {
1141
+ ansi += 60;
1142
+ }
1143
+
1144
+ return ansi;
1145
+ };
1146
+
1147
+ convert$1.hsv.ansi16 = function (args) {
1148
+ // Optimization here; we already know the value and don't need to get
1149
+ // it converted for us.
1150
+ return convert$1.rgb.ansi16(convert$1.hsv.rgb(args), args[2]);
1151
+ };
1152
+
1153
+ convert$1.rgb.ansi256 = function (args) {
1154
+ const r = args[0];
1155
+ const g = args[1];
1156
+ const b = args[2];
1157
+
1158
+ // We use the extended greyscale palette here, with the exception of
1159
+ // black and white. normal palette only has 4 greyscale shades.
1160
+ if (r === g && g === b) {
1161
+ if (r < 8) {
1162
+ return 16;
1163
+ }
1164
+
1165
+ if (r > 248) {
1166
+ return 231;
1167
+ }
1168
+
1169
+ return Math.round(((r - 8) / 247) * 24) + 232;
1170
+ }
1171
+
1172
+ const ansi = 16
1173
+ + (36 * Math.round(r / 255 * 5))
1174
+ + (6 * Math.round(g / 255 * 5))
1175
+ + Math.round(b / 255 * 5);
1176
+
1177
+ return ansi;
1178
+ };
1179
+
1180
+ convert$1.ansi16.rgb = function (args) {
1181
+ let color = args % 10;
1182
+
1183
+ // Handle greyscale
1184
+ if (color === 0 || color === 7) {
1185
+ if (args > 50) {
1186
+ color += 3.5;
1187
+ }
1188
+
1189
+ color = color / 10.5 * 255;
1190
+
1191
+ return [color, color, color];
1192
+ }
1193
+
1194
+ const mult = (~~(args > 50) + 1) * 0.5;
1195
+ const r = ((color & 1) * mult) * 255;
1196
+ const g = (((color >> 1) & 1) * mult) * 255;
1197
+ const b = (((color >> 2) & 1) * mult) * 255;
1198
+
1199
+ return [r, g, b];
1200
+ };
1201
+
1202
+ convert$1.ansi256.rgb = function (args) {
1203
+ // Handle greyscale
1204
+ if (args >= 232) {
1205
+ const c = (args - 232) * 10 + 8;
1206
+ return [c, c, c];
1207
+ }
1208
+
1209
+ args -= 16;
1210
+
1211
+ let rem;
1212
+ const r = Math.floor(args / 36) / 5 * 255;
1213
+ const g = Math.floor((rem = args % 36) / 6) / 5 * 255;
1214
+ const b = (rem % 6) / 5 * 255;
1215
+
1216
+ return [r, g, b];
1217
+ };
1218
+
1219
+ convert$1.rgb.hex = function (args) {
1220
+ const integer = ((Math.round(args[0]) & 0xFF) << 16)
1221
+ + ((Math.round(args[1]) & 0xFF) << 8)
1222
+ + (Math.round(args[2]) & 0xFF);
1223
+
1224
+ const string = integer.toString(16).toUpperCase();
1225
+ return '000000'.substring(string.length) + string;
1226
+ };
1227
+
1228
+ convert$1.hex.rgb = function (args) {
1229
+ const match = args.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);
1230
+ if (!match) {
1231
+ return [0, 0, 0];
1232
+ }
1233
+
1234
+ let colorString = match[0];
1235
+
1236
+ if (match[0].length === 3) {
1237
+ colorString = colorString.split('').map(char => {
1238
+ return char + char;
1239
+ }).join('');
1240
+ }
1241
+
1242
+ const integer = parseInt(colorString, 16);
1243
+ const r = (integer >> 16) & 0xFF;
1244
+ const g = (integer >> 8) & 0xFF;
1245
+ const b = integer & 0xFF;
1246
+
1247
+ return [r, g, b];
1248
+ };
1249
+
1250
+ convert$1.rgb.hcg = function (rgb) {
1251
+ const r = rgb[0] / 255;
1252
+ const g = rgb[1] / 255;
1253
+ const b = rgb[2] / 255;
1254
+ const max = Math.max(Math.max(r, g), b);
1255
+ const min = Math.min(Math.min(r, g), b);
1256
+ const chroma = (max - min);
1257
+ let grayscale;
1258
+ let hue;
1259
+
1260
+ if (chroma < 1) {
1261
+ grayscale = min / (1 - chroma);
1262
+ } else {
1263
+ grayscale = 0;
1264
+ }
1265
+
1266
+ if (chroma <= 0) {
1267
+ hue = 0;
1268
+ } else
1269
+ if (max === r) {
1270
+ hue = ((g - b) / chroma) % 6;
1271
+ } else
1272
+ if (max === g) {
1273
+ hue = 2 + (b - r) / chroma;
1274
+ } else {
1275
+ hue = 4 + (r - g) / chroma;
1276
+ }
1277
+
1278
+ hue /= 6;
1279
+ hue %= 1;
1280
+
1281
+ return [hue * 360, chroma * 100, grayscale * 100];
1282
+ };
1283
+
1284
+ convert$1.hsl.hcg = function (hsl) {
1285
+ const s = hsl[1] / 100;
1286
+ const l = hsl[2] / 100;
1287
+
1288
+ const c = l < 0.5 ? (2.0 * s * l) : (2.0 * s * (1.0 - l));
1289
+
1290
+ let f = 0;
1291
+ if (c < 1.0) {
1292
+ f = (l - 0.5 * c) / (1.0 - c);
1293
+ }
1294
+
1295
+ return [hsl[0], c * 100, f * 100];
1296
+ };
1297
+
1298
+ convert$1.hsv.hcg = function (hsv) {
1299
+ const s = hsv[1] / 100;
1300
+ const v = hsv[2] / 100;
1301
+
1302
+ const c = s * v;
1303
+ let f = 0;
1304
+
1305
+ if (c < 1.0) {
1306
+ f = (v - c) / (1 - c);
1307
+ }
1308
+
1309
+ return [hsv[0], c * 100, f * 100];
1310
+ };
1311
+
1312
+ convert$1.hcg.rgb = function (hcg) {
1313
+ const h = hcg[0] / 360;
1314
+ const c = hcg[1] / 100;
1315
+ const g = hcg[2] / 100;
1316
+
1317
+ if (c === 0.0) {
1318
+ return [g * 255, g * 255, g * 255];
1319
+ }
1320
+
1321
+ const pure = [0, 0, 0];
1322
+ const hi = (h % 1) * 6;
1323
+ const v = hi % 1;
1324
+ const w = 1 - v;
1325
+ let mg = 0;
1326
+
1327
+ /* eslint-disable max-statements-per-line */
1328
+ switch (Math.floor(hi)) {
1329
+ case 0:
1330
+ pure[0] = 1; pure[1] = v; pure[2] = 0; break;
1331
+ case 1:
1332
+ pure[0] = w; pure[1] = 1; pure[2] = 0; break;
1333
+ case 2:
1334
+ pure[0] = 0; pure[1] = 1; pure[2] = v; break;
1335
+ case 3:
1336
+ pure[0] = 0; pure[1] = w; pure[2] = 1; break;
1337
+ case 4:
1338
+ pure[0] = v; pure[1] = 0; pure[2] = 1; break;
1339
+ default:
1340
+ pure[0] = 1; pure[1] = 0; pure[2] = w;
1341
+ }
1342
+ /* eslint-enable max-statements-per-line */
1343
+
1344
+ mg = (1.0 - c) * g;
1345
+
1346
+ return [
1347
+ (c * pure[0] + mg) * 255,
1348
+ (c * pure[1] + mg) * 255,
1349
+ (c * pure[2] + mg) * 255
1350
+ ];
1351
+ };
1352
+
1353
+ convert$1.hcg.hsv = function (hcg) {
1354
+ const c = hcg[1] / 100;
1355
+ const g = hcg[2] / 100;
1356
+
1357
+ const v = c + g * (1.0 - c);
1358
+ let f = 0;
1359
+
1360
+ if (v > 0.0) {
1361
+ f = c / v;
1362
+ }
1363
+
1364
+ return [hcg[0], f * 100, v * 100];
1365
+ };
1366
+
1367
+ convert$1.hcg.hsl = function (hcg) {
1368
+ const c = hcg[1] / 100;
1369
+ const g = hcg[2] / 100;
1370
+
1371
+ const l = g * (1.0 - c) + 0.5 * c;
1372
+ let s = 0;
1373
+
1374
+ if (l > 0.0 && l < 0.5) {
1375
+ s = c / (2 * l);
1376
+ } else
1377
+ if (l >= 0.5 && l < 1.0) {
1378
+ s = c / (2 * (1 - l));
1379
+ }
1380
+
1381
+ return [hcg[0], s * 100, l * 100];
1382
+ };
1383
+
1384
+ convert$1.hcg.hwb = function (hcg) {
1385
+ const c = hcg[1] / 100;
1386
+ const g = hcg[2] / 100;
1387
+ const v = c + g * (1.0 - c);
1388
+ return [hcg[0], (v - c) * 100, (1 - v) * 100];
1389
+ };
1390
+
1391
+ convert$1.hwb.hcg = function (hwb) {
1392
+ const w = hwb[1] / 100;
1393
+ const b = hwb[2] / 100;
1394
+ const v = 1 - b;
1395
+ const c = v - w;
1396
+ let g = 0;
1397
+
1398
+ if (c < 1) {
1399
+ g = (v - c) / (1 - c);
1400
+ }
1401
+
1402
+ return [hwb[0], c * 100, g * 100];
1403
+ };
1404
+
1405
+ convert$1.apple.rgb = function (apple) {
1406
+ return [(apple[0] / 65535) * 255, (apple[1] / 65535) * 255, (apple[2] / 65535) * 255];
1407
+ };
1408
+
1409
+ convert$1.rgb.apple = function (rgb) {
1410
+ return [(rgb[0] / 255) * 65535, (rgb[1] / 255) * 65535, (rgb[2] / 255) * 65535];
1411
+ };
1412
+
1413
+ convert$1.gray.rgb = function (args) {
1414
+ return [args[0] / 100 * 255, args[0] / 100 * 255, args[0] / 100 * 255];
1415
+ };
1416
+
1417
+ convert$1.gray.hsl = function (args) {
1418
+ return [0, 0, args[0]];
1419
+ };
1420
+
1421
+ convert$1.gray.hsv = convert$1.gray.hsl;
1422
+
1423
+ convert$1.gray.hwb = function (gray) {
1424
+ return [0, 100, gray[0]];
1425
+ };
1426
+
1427
+ convert$1.gray.cmyk = function (gray) {
1428
+ return [0, 0, 0, gray[0]];
1429
+ };
1430
+
1431
+ convert$1.gray.lab = function (gray) {
1432
+ return [gray[0], 0, 0];
1433
+ };
1434
+
1435
+ convert$1.gray.hex = function (gray) {
1436
+ const val = Math.round(gray[0] / 100 * 255) & 0xFF;
1437
+ const integer = (val << 16) + (val << 8) + val;
1438
+
1439
+ const string = integer.toString(16).toUpperCase();
1440
+ return '000000'.substring(string.length) + string;
1441
+ };
1442
+
1443
+ convert$1.rgb.gray = function (rgb) {
1444
+ const val = (rgb[0] + rgb[1] + rgb[2]) / 3;
1445
+ return [val / 255 * 100];
1446
+ };
1447
+
1448
+ /*
1449
+ This function routes a model to all other models.
1450
+
1451
+ all functions that are routed have a property `.conversion` attached
1452
+ to the returned synthetic function. This property is an array
1453
+ of strings, each with the steps in between the 'from' and 'to'
1454
+ color models (inclusive).
1455
+
1456
+ conversions that are not possible simply are not included.
1457
+ */
1458
+
1459
+ function buildGraph() {
1460
+ const graph = {};
1461
+ // https://jsperf.com/object-keys-vs-for-in-with-closure/3
1462
+ const models = Object.keys(conversions);
1463
+
1464
+ for (let len = models.length, i = 0; i < len; i++) {
1465
+ graph[models[i]] = {
1466
+ // http://jsperf.com/1-vs-infinity
1467
+ // micro-opt, but this is simple.
1468
+ distance: -1,
1469
+ parent: null
1470
+ };
1471
+ }
1472
+
1473
+ return graph;
1474
+ }
1475
+
1476
+ // https://en.wikipedia.org/wiki/Breadth-first_search
1477
+ function deriveBFS(fromModel) {
1478
+ const graph = buildGraph();
1479
+ const queue = [fromModel]; // Unshift -> queue -> pop
1480
+
1481
+ graph[fromModel].distance = 0;
1482
+
1483
+ while (queue.length) {
1484
+ const current = queue.pop();
1485
+ const adjacents = Object.keys(conversions[current]);
1486
+
1487
+ for (let len = adjacents.length, i = 0; i < len; i++) {
1488
+ const adjacent = adjacents[i];
1489
+ const node = graph[adjacent];
1490
+
1491
+ if (node.distance === -1) {
1492
+ node.distance = graph[current].distance + 1;
1493
+ node.parent = current;
1494
+ queue.unshift(adjacent);
1495
+ }
1496
+ }
1497
+ }
1498
+
1499
+ return graph;
1500
+ }
1501
+
1502
+ function link(from, to) {
1503
+ return function (args) {
1504
+ return to(from(args));
1505
+ };
1506
+ }
1507
+
1508
+ function wrapConversion(toModel, graph) {
1509
+ const path = [graph[toModel].parent, toModel];
1510
+ let fn = conversions[graph[toModel].parent][toModel];
1511
+
1512
+ let cur = graph[toModel].parent;
1513
+ while (graph[cur].parent) {
1514
+ path.unshift(graph[cur].parent);
1515
+ fn = link(conversions[graph[cur].parent][cur], fn);
1516
+ cur = graph[cur].parent;
1517
+ }
1518
+
1519
+ fn.conversion = path;
1520
+ return fn;
1521
+ }
1522
+
1523
+ var route = function (fromModel) {
1524
+ const graph = deriveBFS(fromModel);
1525
+ const conversion = {};
1526
+
1527
+ const models = Object.keys(graph);
1528
+ for (let len = models.length, i = 0; i < len; i++) {
1529
+ const toModel = models[i];
1530
+ const node = graph[toModel];
1531
+
1532
+ if (node.parent === null) {
1533
+ // No possible conversion, or this node is the source model.
1534
+ continue;
1535
+ }
1536
+
1537
+ conversion[toModel] = wrapConversion(toModel, graph);
1538
+ }
1539
+
1540
+ return conversion;
1541
+ };
1542
+
1543
+ const convert = {};
1544
+
1545
+ const models = Object.keys(conversions);
1546
+
1547
+ function wrapRaw(fn) {
1548
+ const wrappedFn = function (...args) {
1549
+ const arg0 = args[0];
1550
+ if (arg0 === undefined || arg0 === null) {
1551
+ return arg0;
1552
+ }
1553
+
1554
+ if (arg0.length > 1) {
1555
+ args = arg0;
1556
+ }
1557
+
1558
+ return fn(args);
1559
+ };
1560
+
1561
+ // Preserve .conversion property if there is one
1562
+ if ('conversion' in fn) {
1563
+ wrappedFn.conversion = fn.conversion;
1564
+ }
1565
+
1566
+ return wrappedFn;
1567
+ }
1568
+
1569
+ function wrapRounded(fn) {
1570
+ const wrappedFn = function (...args) {
1571
+ const arg0 = args[0];
1572
+
1573
+ if (arg0 === undefined || arg0 === null) {
1574
+ return arg0;
1575
+ }
1576
+
1577
+ if (arg0.length > 1) {
1578
+ args = arg0;
1579
+ }
1580
+
1581
+ const result = fn(args);
1582
+
1583
+ // We're assuming the result is an array here.
1584
+ // see notice in conversions.js; don't use box types
1585
+ // in conversion functions.
1586
+ if (typeof result === 'object') {
1587
+ for (let len = result.length, i = 0; i < len; i++) {
1588
+ result[i] = Math.round(result[i]);
1589
+ }
1590
+ }
1591
+
1592
+ return result;
1593
+ };
1594
+
1595
+ // Preserve .conversion property if there is one
1596
+ if ('conversion' in fn) {
1597
+ wrappedFn.conversion = fn.conversion;
1598
+ }
1599
+
1600
+ return wrappedFn;
1601
+ }
1602
+
1603
+ models.forEach(fromModel => {
1604
+ convert[fromModel] = {};
1605
+
1606
+ Object.defineProperty(convert[fromModel], 'channels', {value: conversions[fromModel].channels});
1607
+ Object.defineProperty(convert[fromModel], 'labels', {value: conversions[fromModel].labels});
1608
+
1609
+ const routes = route(fromModel);
1610
+ const routeModels = Object.keys(routes);
1611
+
1612
+ routeModels.forEach(toModel => {
1613
+ const fn = routes[toModel];
1614
+
1615
+ convert[fromModel][toModel] = wrapRounded(fn);
1616
+ convert[fromModel][toModel].raw = wrapRaw(fn);
1617
+ });
1618
+ });
1619
+
1620
+ var colorConvert = convert;
1621
+
1622
+ const skippedModels = [
1623
+ // To be honest, I don't really feel like keyword belongs in color convert, but eh.
1624
+ 'keyword',
1625
+
1626
+ // Gray conflicts with some method names, and has its own method defined.
1627
+ 'gray',
1628
+
1629
+ // Shouldn't really be in color-convert either...
1630
+ 'hex',
1631
+ ];
1632
+
1633
+ const hashedModelKeys = {};
1634
+ for (const model of Object.keys(colorConvert)) {
1635
+ hashedModelKeys[[...colorConvert[model].labels].sort().join('')] = model;
1636
+ }
1637
+
1638
+ const limiters = {};
1639
+
1640
+ function Color(object, model) {
1641
+ if (!(this instanceof Color)) {
1642
+ return new Color(object, model);
1643
+ }
1644
+
1645
+ if (model && model in skippedModels) {
1646
+ model = null;
1647
+ }
1648
+
1649
+ if (model && !(model in colorConvert)) {
1650
+ throw new Error('Unknown model: ' + model);
1651
+ }
1652
+
1653
+ let i;
1654
+ let channels;
1655
+
1656
+ if (object == null) { // eslint-disable-line no-eq-null,eqeqeq
1657
+ this.model = 'rgb';
1658
+ this.color = [0, 0, 0];
1659
+ this.valpha = 1;
1660
+ } else if (object instanceof Color) {
1661
+ this.model = object.model;
1662
+ this.color = [...object.color];
1663
+ this.valpha = object.valpha;
1664
+ } else if (typeof object === 'string') {
1665
+ const result = colorString.get(object);
1666
+ if (result === null) {
1667
+ throw new Error('Unable to parse color from string: ' + object);
1668
+ }
1669
+
1670
+ this.model = result.model;
1671
+ channels = colorConvert[this.model].channels;
1672
+ this.color = result.value.slice(0, channels);
1673
+ this.valpha = typeof result.value[channels] === 'number' ? result.value[channels] : 1;
1674
+ } else if (object.length > 0) {
1675
+ this.model = model || 'rgb';
1676
+ channels = colorConvert[this.model].channels;
1677
+ const newArray = Array.prototype.slice.call(object, 0, channels);
1678
+ this.color = zeroArray(newArray, channels);
1679
+ this.valpha = typeof object[channels] === 'number' ? object[channels] : 1;
1680
+ } else if (typeof object === 'number') {
1681
+ // This is always RGB - can be converted later on.
1682
+ this.model = 'rgb';
1683
+ this.color = [
1684
+ (object >> 16) & 0xFF,
1685
+ (object >> 8) & 0xFF,
1686
+ object & 0xFF,
1687
+ ];
1688
+ this.valpha = 1;
1689
+ } else {
1690
+ this.valpha = 1;
1691
+
1692
+ const keys = Object.keys(object);
1693
+ if ('alpha' in object) {
1694
+ keys.splice(keys.indexOf('alpha'), 1);
1695
+ this.valpha = typeof object.alpha === 'number' ? object.alpha : 0;
1696
+ }
1697
+
1698
+ const hashedKeys = keys.sort().join('');
1699
+ if (!(hashedKeys in hashedModelKeys)) {
1700
+ throw new Error('Unable to parse color from object: ' + JSON.stringify(object));
1701
+ }
1702
+
1703
+ this.model = hashedModelKeys[hashedKeys];
1704
+
1705
+ const {labels} = colorConvert[this.model];
1706
+ const color = [];
1707
+ for (i = 0; i < labels.length; i++) {
1708
+ color.push(object[labels[i]]);
1709
+ }
1710
+
1711
+ this.color = zeroArray(color);
1712
+ }
1713
+
1714
+ // Perform limitations (clamping, etc.)
1715
+ if (limiters[this.model]) {
1716
+ channels = colorConvert[this.model].channels;
1717
+ for (i = 0; i < channels; i++) {
1718
+ const limit = limiters[this.model][i];
1719
+ if (limit) {
1720
+ this.color[i] = limit(this.color[i]);
1721
+ }
1722
+ }
1723
+ }
1724
+
1725
+ this.valpha = Math.max(0, Math.min(1, this.valpha));
1726
+
1727
+ if (Object.freeze) {
1728
+ Object.freeze(this);
1729
+ }
1730
+ }
1731
+
1732
+ Color.prototype = {
1733
+ toString() {
1734
+ return this.string();
1735
+ },
1736
+
1737
+ toJSON() {
1738
+ return this[this.model]();
1739
+ },
1740
+
1741
+ string(places) {
1742
+ let self = this.model in colorString.to ? this : this.rgb();
1743
+ self = self.round(typeof places === 'number' ? places : 1);
1744
+ const args = self.valpha === 1 ? self.color : [...self.color, this.valpha];
1745
+ return colorString.to[self.model](args);
1746
+ },
1747
+
1748
+ percentString(places) {
1749
+ const self = this.rgb().round(typeof places === 'number' ? places : 1);
1750
+ const args = self.valpha === 1 ? self.color : [...self.color, this.valpha];
1751
+ return colorString.to.rgb.percent(args);
1752
+ },
1753
+
1754
+ array() {
1755
+ return this.valpha === 1 ? [...this.color] : [...this.color, this.valpha];
1756
+ },
1757
+
1758
+ object() {
1759
+ const result = {};
1760
+ const {channels} = colorConvert[this.model];
1761
+ const {labels} = colorConvert[this.model];
1762
+
1763
+ for (let i = 0; i < channels; i++) {
1764
+ result[labels[i]] = this.color[i];
1765
+ }
1766
+
1767
+ if (this.valpha !== 1) {
1768
+ result.alpha = this.valpha;
1769
+ }
1770
+
1771
+ return result;
1772
+ },
1773
+
1774
+ unitArray() {
1775
+ const rgb = this.rgb().color;
1776
+ rgb[0] /= 255;
1777
+ rgb[1] /= 255;
1778
+ rgb[2] /= 255;
1779
+
1780
+ if (this.valpha !== 1) {
1781
+ rgb.push(this.valpha);
1782
+ }
1783
+
1784
+ return rgb;
1785
+ },
1786
+
1787
+ unitObject() {
1788
+ const rgb = this.rgb().object();
1789
+ rgb.r /= 255;
1790
+ rgb.g /= 255;
1791
+ rgb.b /= 255;
1792
+
1793
+ if (this.valpha !== 1) {
1794
+ rgb.alpha = this.valpha;
1795
+ }
1796
+
1797
+ return rgb;
1798
+ },
1799
+
1800
+ round(places) {
1801
+ places = Math.max(places || 0, 0);
1802
+ return new Color([...this.color.map(roundToPlace(places)), this.valpha], this.model);
1803
+ },
1804
+
1805
+ alpha(value) {
1806
+ if (value !== undefined) {
1807
+ return new Color([...this.color, Math.max(0, Math.min(1, value))], this.model);
1808
+ }
1809
+
1810
+ return this.valpha;
1811
+ },
1812
+
1813
+ // Rgb
1814
+ red: getset('rgb', 0, maxfn(255)),
1815
+ green: getset('rgb', 1, maxfn(255)),
1816
+ blue: getset('rgb', 2, maxfn(255)),
1817
+
1818
+ hue: getset(['hsl', 'hsv', 'hsl', 'hwb', 'hcg'], 0, value => ((value % 360) + 360) % 360),
1819
+
1820
+ saturationl: getset('hsl', 1, maxfn(100)),
1821
+ lightness: getset('hsl', 2, maxfn(100)),
1822
+
1823
+ saturationv: getset('hsv', 1, maxfn(100)),
1824
+ value: getset('hsv', 2, maxfn(100)),
1825
+
1826
+ chroma: getset('hcg', 1, maxfn(100)),
1827
+ gray: getset('hcg', 2, maxfn(100)),
1828
+
1829
+ white: getset('hwb', 1, maxfn(100)),
1830
+ wblack: getset('hwb', 2, maxfn(100)),
1831
+
1832
+ cyan: getset('cmyk', 0, maxfn(100)),
1833
+ magenta: getset('cmyk', 1, maxfn(100)),
1834
+ yellow: getset('cmyk', 2, maxfn(100)),
1835
+ black: getset('cmyk', 3, maxfn(100)),
1836
+
1837
+ x: getset('xyz', 0, maxfn(95.047)),
1838
+ y: getset('xyz', 1, maxfn(100)),
1839
+ z: getset('xyz', 2, maxfn(108.833)),
1840
+
1841
+ l: getset('lab', 0, maxfn(100)),
1842
+ a: getset('lab', 1),
1843
+ b: getset('lab', 2),
1844
+
1845
+ keyword(value) {
1846
+ if (value !== undefined) {
1847
+ return new Color(value);
1848
+ }
1849
+
1850
+ return colorConvert[this.model].keyword(this.color);
1851
+ },
1852
+
1853
+ hex(value) {
1854
+ if (value !== undefined) {
1855
+ return new Color(value);
1856
+ }
1857
+
1858
+ return colorString.to.hex(this.rgb().round().color);
1859
+ },
1860
+
1861
+ hexa(value) {
1862
+ if (value !== undefined) {
1863
+ return new Color(value);
1864
+ }
1865
+
1866
+ const rgbArray = this.rgb().round().color;
1867
+
1868
+ let alphaHex = Math.round(this.valpha * 255).toString(16).toUpperCase();
1869
+ if (alphaHex.length === 1) {
1870
+ alphaHex = '0' + alphaHex;
1871
+ }
1872
+
1873
+ return colorString.to.hex(rgbArray) + alphaHex;
1874
+ },
1875
+
1876
+ rgbNumber() {
1877
+ const rgb = this.rgb().color;
1878
+ return ((rgb[0] & 0xFF) << 16) | ((rgb[1] & 0xFF) << 8) | (rgb[2] & 0xFF);
1879
+ },
1880
+
1881
+ luminosity() {
1882
+ // http://www.w3.org/TR/WCAG20/#relativeluminancedef
1883
+ const rgb = this.rgb().color;
1884
+
1885
+ const lum = [];
1886
+ for (const [i, element] of rgb.entries()) {
1887
+ const chan = element / 255;
1888
+ lum[i] = (chan <= 0.04045) ? chan / 12.92 : ((chan + 0.055) / 1.055) ** 2.4;
1889
+ }
1890
+
1891
+ return 0.2126 * lum[0] + 0.7152 * lum[1] + 0.0722 * lum[2];
1892
+ },
1893
+
1894
+ contrast(color2) {
1895
+ // http://www.w3.org/TR/WCAG20/#contrast-ratiodef
1896
+ const lum1 = this.luminosity();
1897
+ const lum2 = color2.luminosity();
1898
+
1899
+ if (lum1 > lum2) {
1900
+ return (lum1 + 0.05) / (lum2 + 0.05);
1901
+ }
1902
+
1903
+ return (lum2 + 0.05) / (lum1 + 0.05);
1904
+ },
1905
+
1906
+ level(color2) {
1907
+ // https://www.w3.org/TR/WCAG/#contrast-enhanced
1908
+ const contrastRatio = this.contrast(color2);
1909
+ if (contrastRatio >= 7) {
1910
+ return 'AAA';
1911
+ }
1912
+
1913
+ return (contrastRatio >= 4.5) ? 'AA' : '';
1914
+ },
1915
+
1916
+ isDark() {
1917
+ // YIQ equation from http://24ways.org/2010/calculating-color-contrast
1918
+ const rgb = this.rgb().color;
1919
+ const yiq = (rgb[0] * 2126 + rgb[1] * 7152 + rgb[2] * 722) / 10000;
1920
+ return yiq < 128;
1921
+ },
1922
+
1923
+ isLight() {
1924
+ return !this.isDark();
1925
+ },
1926
+
1927
+ negate() {
1928
+ const rgb = this.rgb();
1929
+ for (let i = 0; i < 3; i++) {
1930
+ rgb.color[i] = 255 - rgb.color[i];
1931
+ }
1932
+
1933
+ return rgb;
1934
+ },
1935
+
1936
+ lighten(ratio) {
1937
+ const hsl = this.hsl();
1938
+ hsl.color[2] += hsl.color[2] * ratio;
1939
+ return hsl;
1940
+ },
1941
+
1942
+ darken(ratio) {
1943
+ const hsl = this.hsl();
1944
+ hsl.color[2] -= hsl.color[2] * ratio;
1945
+ return hsl;
1946
+ },
1947
+
1948
+ saturate(ratio) {
1949
+ const hsl = this.hsl();
1950
+ hsl.color[1] += hsl.color[1] * ratio;
1951
+ return hsl;
1952
+ },
1953
+
1954
+ desaturate(ratio) {
1955
+ const hsl = this.hsl();
1956
+ hsl.color[1] -= hsl.color[1] * ratio;
1957
+ return hsl;
1958
+ },
1959
+
1960
+ whiten(ratio) {
1961
+ const hwb = this.hwb();
1962
+ hwb.color[1] += hwb.color[1] * ratio;
1963
+ return hwb;
1964
+ },
1965
+
1966
+ blacken(ratio) {
1967
+ const hwb = this.hwb();
1968
+ hwb.color[2] += hwb.color[2] * ratio;
1969
+ return hwb;
1970
+ },
1971
+
1972
+ grayscale() {
1973
+ // http://en.wikipedia.org/wiki/Grayscale#Converting_color_to_grayscale
1974
+ const rgb = this.rgb().color;
1975
+ const value = rgb[0] * 0.3 + rgb[1] * 0.59 + rgb[2] * 0.11;
1976
+ return Color.rgb(value, value, value);
1977
+ },
1978
+
1979
+ fade(ratio) {
1980
+ return this.alpha(this.valpha - (this.valpha * ratio));
1981
+ },
1982
+
1983
+ opaquer(ratio) {
1984
+ return this.alpha(this.valpha + (this.valpha * ratio));
1985
+ },
1986
+
1987
+ rotate(degrees) {
1988
+ const hsl = this.hsl();
1989
+ let hue = hsl.color[0];
1990
+ hue = (hue + degrees) % 360;
1991
+ hue = hue < 0 ? 360 + hue : hue;
1992
+ hsl.color[0] = hue;
1993
+ return hsl;
1994
+ },
1995
+
1996
+ mix(mixinColor, weight) {
1997
+ // Ported from sass implementation in C
1998
+ // https://github.com/sass/libsass/blob/0e6b4a2850092356aa3ece07c6b249f0221caced/functions.cpp#L209
1999
+ if (!mixinColor || !mixinColor.rgb) {
2000
+ throw new Error('Argument to "mix" was not a Color instance, but rather an instance of ' + typeof mixinColor);
2001
+ }
2002
+
2003
+ const color1 = mixinColor.rgb();
2004
+ const color2 = this.rgb();
2005
+ const p = weight === undefined ? 0.5 : weight;
2006
+
2007
+ const w = 2 * p - 1;
2008
+ const a = color1.alpha() - color2.alpha();
2009
+
2010
+ const w1 = (((w * a === -1) ? w : (w + a) / (1 + w * a)) + 1) / 2;
2011
+ const w2 = 1 - w1;
2012
+
2013
+ return Color.rgb(
2014
+ w1 * color1.red() + w2 * color2.red(),
2015
+ w1 * color1.green() + w2 * color2.green(),
2016
+ w1 * color1.blue() + w2 * color2.blue(),
2017
+ color1.alpha() * p + color2.alpha() * (1 - p));
2018
+ },
2019
+ };
2020
+
2021
+ // Model conversion methods and static constructors
2022
+ for (const model of Object.keys(colorConvert)) {
2023
+ if (skippedModels.includes(model)) {
2024
+ continue;
2025
+ }
2026
+
2027
+ const {channels} = colorConvert[model];
2028
+
2029
+ // Conversion methods
2030
+ Color.prototype[model] = function (...args) {
2031
+ if (this.model === model) {
2032
+ return new Color(this);
2033
+ }
2034
+
2035
+ if (args.length > 0) {
2036
+ return new Color(args, model);
2037
+ }
2038
+
2039
+ return new Color([...assertArray(colorConvert[this.model][model].raw(this.color)), this.valpha], model);
2040
+ };
2041
+
2042
+ // 'static' construction methods
2043
+ Color[model] = function (...args) {
2044
+ let color = args[0];
2045
+ if (typeof color === 'number') {
2046
+ color = zeroArray(args, channels);
2047
+ }
2048
+
2049
+ return new Color(color, model);
2050
+ };
2051
+ }
2052
+
2053
+ function roundTo(number, places) {
2054
+ return Number(number.toFixed(places));
2055
+ }
2056
+
2057
+ function roundToPlace(places) {
2058
+ return function (number) {
2059
+ return roundTo(number, places);
2060
+ };
2061
+ }
2062
+
2063
+ function getset(model, channel, modifier) {
2064
+ model = Array.isArray(model) ? model : [model];
2065
+
2066
+ for (const m of model) {
2067
+ (limiters[m] || (limiters[m] = []))[channel] = modifier;
2068
+ }
2069
+
2070
+ model = model[0];
2071
+
2072
+ return function (value) {
2073
+ let result;
2074
+
2075
+ if (value !== undefined) {
2076
+ if (modifier) {
2077
+ value = modifier(value);
2078
+ }
2079
+
2080
+ result = this[model]();
2081
+ result.color[channel] = value;
2082
+ return result;
2083
+ }
2084
+
2085
+ result = this[model]().color[channel];
2086
+ if (modifier) {
2087
+ result = modifier(result);
2088
+ }
2089
+
2090
+ return result;
2091
+ };
2092
+ }
2093
+
2094
+ function maxfn(max) {
2095
+ return function (v) {
2096
+ return Math.max(0, Math.min(max, v));
2097
+ };
2098
+ }
2099
+
2100
+ function assertArray(value) {
2101
+ return Array.isArray(value) ? value : [value];
2102
+ }
2103
+
2104
+ function zeroArray(array, length) {
2105
+ for (let i = 0; i < length; i++) {
2106
+ if (typeof array[i] !== 'number') {
2107
+ array[i] = 0;
2108
+ }
2109
+ }
2110
+
2111
+ return array;
2112
+ }
2113
+
2114
+ var color = Color;
2115
+
2116
+ export { color as c };