@esri/solutions-components 0.2.1 → 0.2.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (530) hide show
  1. package/dist/cjs/calcite-shell-panel_14.cjs.entry.js +16 -6
  2. package/dist/cjs/calcite-shell-panel_14.cjs.entry.js.map +1 -1
  3. package/dist/cjs/solution-configuration.cjs.entry.js +10 -3
  4. package/dist/cjs/solution-configuration.cjs.entry.js.map +1 -1
  5. package/dist/cjs/solution-contents_3.cjs.entry.js +3 -1
  6. package/dist/cjs/solution-contents_3.cjs.entry.js.map +1 -1
  7. package/dist/cjs/{solution-store-e2fc11ac.js → solution-store-893499a5.js} +3 -1
  8. package/dist/cjs/solution-store-893499a5.js.map +1 -0
  9. package/dist/collection/components/solution-configuration/solution-configuration.js +9 -2
  10. package/dist/collection/components/solution-configuration/solution-configuration.js.map +1 -1
  11. package/dist/collection/components/solution-item/solution-item.js +2 -0
  12. package/dist/collection/components/solution-item/solution-item.js.map +1 -1
  13. package/dist/collection/components/solution-item-details/solution-item-details.js +15 -5
  14. package/dist/collection/components/solution-item-details/solution-item-details.js.map +1 -1
  15. package/dist/collection/utils/solution-store.js +2 -0
  16. package/dist/collection/utils/solution-store.js.map +1 -1
  17. package/dist/collection/utils/solution-store.ts +2 -0
  18. package/dist/esm/calcite-shell-panel_14.entry.js +16 -6
  19. package/dist/esm/calcite-shell-panel_14.entry.js.map +1 -1
  20. package/dist/esm/solution-configuration.entry.js +10 -3
  21. package/dist/esm/solution-configuration.entry.js.map +1 -1
  22. package/dist/esm/solution-contents_3.entry.js +3 -1
  23. package/dist/esm/solution-contents_3.entry.js.map +1 -1
  24. package/dist/esm/{solution-store-b3c65467.js → solution-store-0c58c852.js} +3 -1
  25. package/dist/esm/solution-store-0c58c852.js.map +1 -0
  26. package/dist/solutions-components/{p-b25f6ebe.js → p-659edb14.js} +3 -1
  27. package/dist/solutions-components/p-659edb14.js.map +1 -0
  28. package/dist/solutions-components/{p-638738f2.entry.js → p-77c75f3a.entry.js} +4 -2
  29. package/dist/solutions-components/p-77c75f3a.entry.js.map +1 -0
  30. package/dist/solutions-components/{p-7e8985f2.entry.js → p-90629c1d.entry.js} +11 -4
  31. package/dist/solutions-components/p-90629c1d.entry.js.map +1 -0
  32. package/dist/solutions-components/{p-542189bc.entry.js → p-984cb687.entry.js} +17 -7
  33. package/dist/solutions-components/p-984cb687.entry.js.map +1 -0
  34. package/dist/solutions-components/solutions-components.esm.js +1 -1
  35. package/dist/solutions-components/utils/solution-store.ts +2 -0
  36. package/dist/solutions-components_commit.txt +9 -6
  37. package/dist/types/components/solution-item-details/solution-item-details.d.ts +2 -1
  38. package/package.json +1 -1
  39. package/dist/cjs/solution-store-e2fc11ac.js.map +0 -1
  40. package/dist/components/ExpandToggle.js +0 -112
  41. package/dist/components/ExpandToggle.js.map +0 -1
  42. package/dist/components/Heading.js +0 -24
  43. package/dist/components/Heading.js.map +0 -1
  44. package/dist/components/_commonjsHelpers.js +0 -24
  45. package/dist/components/_commonjsHelpers.js.map +0 -1
  46. package/dist/components/action-bar.js +0 -278
  47. package/dist/components/action-bar.js.map +0 -1
  48. package/dist/components/action-group.js +0 -151
  49. package/dist/components/action-group.js.map +0 -1
  50. package/dist/components/action-menu.js +0 -358
  51. package/dist/components/action-menu.js.map +0 -1
  52. package/dist/components/action.js +0 -216
  53. package/dist/components/action.js.map +0 -1
  54. package/dist/components/array.js +0 -17
  55. package/dist/components/array.js.map +0 -1
  56. package/dist/components/buffer-tools.d.ts +0 -11
  57. package/dist/components/buffer-tools.js +0 -13
  58. package/dist/components/buffer-tools.js.map +0 -1
  59. package/dist/components/buffer-tools2.js +0 -256
  60. package/dist/components/buffer-tools2.js.map +0 -1
  61. package/dist/components/button.js +0 -265
  62. package/dist/components/button.js.map +0 -1
  63. package/dist/components/calcite-accordion-item.js +0 -246
  64. package/dist/components/calcite-accordion-item.js.map +0 -1
  65. package/dist/components/calcite-accordion.js +0 -182
  66. package/dist/components/calcite-accordion.js.map +0 -1
  67. package/dist/components/calcite-action-bar.js +0 -13
  68. package/dist/components/calcite-action-bar.js.map +0 -1
  69. package/dist/components/calcite-action-group.js +0 -13
  70. package/dist/components/calcite-action-group.js.map +0 -1
  71. package/dist/components/calcite-action-menu.js +0 -13
  72. package/dist/components/calcite-action-menu.js.map +0 -1
  73. package/dist/components/calcite-action-pad.js +0 -199
  74. package/dist/components/calcite-action-pad.js.map +0 -1
  75. package/dist/components/calcite-action.js +0 -13
  76. package/dist/components/calcite-action.js.map +0 -1
  77. package/dist/components/calcite-alert.js +0 -299
  78. package/dist/components/calcite-alert.js.map +0 -1
  79. package/dist/components/calcite-avatar.js +0 -184
  80. package/dist/components/calcite-avatar.js.map +0 -1
  81. package/dist/components/calcite-block-section.js +0 -157
  82. package/dist/components/calcite-block-section.js.map +0 -1
  83. package/dist/components/calcite-block.js +0 -277
  84. package/dist/components/calcite-block.js.map +0 -1
  85. package/dist/components/calcite-button.js +0 -13
  86. package/dist/components/calcite-button.js.map +0 -1
  87. package/dist/components/calcite-card.js +0 -189
  88. package/dist/components/calcite-card.js.map +0 -1
  89. package/dist/components/calcite-checkbox.js +0 -13
  90. package/dist/components/calcite-checkbox.js.map +0 -1
  91. package/dist/components/calcite-chip.js +0 -13
  92. package/dist/components/calcite-chip.js.map +0 -1
  93. package/dist/components/calcite-color-picker-hex-input.js +0 -13
  94. package/dist/components/calcite-color-picker-hex-input.js.map +0 -1
  95. package/dist/components/calcite-color-picker-swatch.js +0 -13
  96. package/dist/components/calcite-color-picker-swatch.js.map +0 -1
  97. package/dist/components/calcite-color-picker.js +0 -1038
  98. package/dist/components/calcite-color-picker.js.map +0 -1
  99. package/dist/components/calcite-combobox-item-group.js +0 -77
  100. package/dist/components/calcite-combobox-item-group.js.map +0 -1
  101. package/dist/components/calcite-combobox-item.js +0 -13
  102. package/dist/components/calcite-combobox-item.js.map +0 -1
  103. package/dist/components/calcite-combobox.js +0 -13
  104. package/dist/components/calcite-combobox.js.map +0 -1
  105. package/dist/components/calcite-date-picker-day.js +0 -13
  106. package/dist/components/calcite-date-picker-day.js.map +0 -1
  107. package/dist/components/calcite-date-picker-month-header.js +0 -13
  108. package/dist/components/calcite-date-picker-month-header.js.map +0 -1
  109. package/dist/components/calcite-date-picker-month.js +0 -13
  110. package/dist/components/calcite-date-picker-month.js.map +0 -1
  111. package/dist/components/calcite-date-picker.js +0 -13
  112. package/dist/components/calcite-date-picker.js.map +0 -1
  113. package/dist/components/calcite-dropdown-group.js +0 -101
  114. package/dist/components/calcite-dropdown-group.js.map +0 -1
  115. package/dist/components/calcite-dropdown-item.js +0 -237
  116. package/dist/components/calcite-dropdown-item.js.map +0 -1
  117. package/dist/components/calcite-dropdown.js +0 -13
  118. package/dist/components/calcite-dropdown.js.map +0 -1
  119. package/dist/components/calcite-fab.js +0 -146
  120. package/dist/components/calcite-fab.js.map +0 -1
  121. package/dist/components/calcite-filter.js +0 -197
  122. package/dist/components/calcite-filter.js.map +0 -1
  123. package/dist/components/calcite-flow-item.js +0 -245
  124. package/dist/components/calcite-flow-item.js.map +0 -1
  125. package/dist/components/calcite-flow.js +0 -149
  126. package/dist/components/calcite-flow.js.map +0 -1
  127. package/dist/components/calcite-graph.js +0 -13
  128. package/dist/components/calcite-graph.js.map +0 -1
  129. package/dist/components/calcite-handle.js +0 -13
  130. package/dist/components/calcite-handle.js.map +0 -1
  131. package/dist/components/calcite-icon.js +0 -13
  132. package/dist/components/calcite-icon.js.map +0 -1
  133. package/dist/components/calcite-inline-editable.js +0 -296
  134. package/dist/components/calcite-inline-editable.js.map +0 -1
  135. package/dist/components/calcite-input-date-picker.js +0 -715
  136. package/dist/components/calcite-input-date-picker.js.map +0 -1
  137. package/dist/components/calcite-input-message.js +0 -13
  138. package/dist/components/calcite-input-message.js.map +0 -1
  139. package/dist/components/calcite-input-number.js +0 -639
  140. package/dist/components/calcite-input-number.js.map +0 -1
  141. package/dist/components/calcite-input-text.js +0 -402
  142. package/dist/components/calcite-input-text.js.map +0 -1
  143. package/dist/components/calcite-input-time-picker.js +0 -436
  144. package/dist/components/calcite-input-time-picker.js.map +0 -1
  145. package/dist/components/calcite-input.js +0 -13
  146. package/dist/components/calcite-input.js.map +0 -1
  147. package/dist/components/calcite-label.js +0 -13
  148. package/dist/components/calcite-label.js.map +0 -1
  149. package/dist/components/calcite-link.js +0 -13
  150. package/dist/components/calcite-link.js.map +0 -1
  151. package/dist/components/calcite-list-item-group.js +0 -67
  152. package/dist/components/calcite-list-item-group.js.map +0 -1
  153. package/dist/components/calcite-list-item.js +0 -13
  154. package/dist/components/calcite-list-item.js.map +0 -1
  155. package/dist/components/calcite-list.js +0 -13
  156. package/dist/components/calcite-list.js.map +0 -1
  157. package/dist/components/calcite-loader.js +0 -13
  158. package/dist/components/calcite-loader.js.map +0 -1
  159. package/dist/components/calcite-modal.js +0 -500
  160. package/dist/components/calcite-modal.js.map +0 -1
  161. package/dist/components/calcite-notice.js +0 -13
  162. package/dist/components/calcite-notice.js.map +0 -1
  163. package/dist/components/calcite-option-group.js +0 -66
  164. package/dist/components/calcite-option-group.js.map +0 -1
  165. package/dist/components/calcite-option.js +0 -13
  166. package/dist/components/calcite-option.js.map +0 -1
  167. package/dist/components/calcite-pagination.js +0 -260
  168. package/dist/components/calcite-pagination.js.map +0 -1
  169. package/dist/components/calcite-panel.js +0 -13
  170. package/dist/components/calcite-panel.js.map +0 -1
  171. package/dist/components/calcite-pick-list-group.js +0 -76
  172. package/dist/components/calcite-pick-list-group.js.map +0 -1
  173. package/dist/components/calcite-pick-list-item.js +0 -13
  174. package/dist/components/calcite-pick-list-item.js.map +0 -1
  175. package/dist/components/calcite-pick-list.js +0 -175
  176. package/dist/components/calcite-pick-list.js.map +0 -1
  177. package/dist/components/calcite-popover-manager.js +0 -96
  178. package/dist/components/calcite-popover-manager.js.map +0 -1
  179. package/dist/components/calcite-popover.js +0 -13
  180. package/dist/components/calcite-popover.js.map +0 -1
  181. package/dist/components/calcite-progress.js +0 -13
  182. package/dist/components/calcite-progress.js.map +0 -1
  183. package/dist/components/calcite-radio-button-group.js +0 -134
  184. package/dist/components/calcite-radio-button-group.js.map +0 -1
  185. package/dist/components/calcite-radio-button.js +0 -312
  186. package/dist/components/calcite-radio-button.js.map +0 -1
  187. package/dist/components/calcite-radio-group-item.js +0 -13
  188. package/dist/components/calcite-radio-group-item.js.map +0 -1
  189. package/dist/components/calcite-radio-group.js +0 -13
  190. package/dist/components/calcite-radio-group.js.map +0 -1
  191. package/dist/components/calcite-rating.js +0 -203
  192. package/dist/components/calcite-rating.js.map +0 -1
  193. package/dist/components/calcite-scrim.js +0 -13
  194. package/dist/components/calcite-scrim.js.map +0 -1
  195. package/dist/components/calcite-select.js +0 -13
  196. package/dist/components/calcite-select.js.map +0 -1
  197. package/dist/components/calcite-shell-center-row.js +0 -102
  198. package/dist/components/calcite-shell-center-row.js.map +0 -1
  199. package/dist/components/calcite-shell-panel.js +0 -13
  200. package/dist/components/calcite-shell-panel.js.map +0 -1
  201. package/dist/components/calcite-shell.js +0 -13
  202. package/dist/components/calcite-shell.js.map +0 -1
  203. package/dist/components/calcite-slider.js +0 -13
  204. package/dist/components/calcite-slider.js.map +0 -1
  205. package/dist/components/calcite-sortable-list.js +0 -204
  206. package/dist/components/calcite-sortable-list.js.map +0 -1
  207. package/dist/components/calcite-split-button.js +0 -170
  208. package/dist/components/calcite-split-button.js.map +0 -1
  209. package/dist/components/calcite-stepper-item.js +0 -273
  210. package/dist/components/calcite-stepper-item.js.map +0 -1
  211. package/dist/components/calcite-stepper.js +0 -258
  212. package/dist/components/calcite-stepper.js.map +0 -1
  213. package/dist/components/calcite-switch.js +0 -13
  214. package/dist/components/calcite-switch.js.map +0 -1
  215. package/dist/components/calcite-tab-nav.js +0 -13
  216. package/dist/components/calcite-tab-nav.js.map +0 -1
  217. package/dist/components/calcite-tab-title.js +0 -13
  218. package/dist/components/calcite-tab-title.js.map +0 -1
  219. package/dist/components/calcite-tab.js +0 -13
  220. package/dist/components/calcite-tab.js.map +0 -1
  221. package/dist/components/calcite-tabs.js +0 -13
  222. package/dist/components/calcite-tabs.js.map +0 -1
  223. package/dist/components/calcite-tile-select-group.js +0 -67
  224. package/dist/components/calcite-tile-select-group.js.map +0 -1
  225. package/dist/components/calcite-tile-select.js +0 -268
  226. package/dist/components/calcite-tile-select.js.map +0 -1
  227. package/dist/components/calcite-tile.js +0 -13
  228. package/dist/components/calcite-tile.js.map +0 -1
  229. package/dist/components/calcite-time-picker.js +0 -13
  230. package/dist/components/calcite-time-picker.js.map +0 -1
  231. package/dist/components/calcite-tip-group.js +0 -43
  232. package/dist/components/calcite-tip-group.js.map +0 -1
  233. package/dist/components/calcite-tip-manager.js +0 -225
  234. package/dist/components/calcite-tip-manager.js.map +0 -1
  235. package/dist/components/calcite-tip.js +0 -164
  236. package/dist/components/calcite-tip.js.map +0 -1
  237. package/dist/components/calcite-tooltip-manager.js +0 -59
  238. package/dist/components/calcite-tooltip-manager.js.map +0 -1
  239. package/dist/components/calcite-tooltip.js +0 -13
  240. package/dist/components/calcite-tooltip.js.map +0 -1
  241. package/dist/components/calcite-tree-item.js +0 -13
  242. package/dist/components/calcite-tree-item.js.map +0 -1
  243. package/dist/components/calcite-tree.js +0 -13
  244. package/dist/components/calcite-tree.js.map +0 -1
  245. package/dist/components/calcite-value-list-item.js +0 -13
  246. package/dist/components/calcite-value-list-item.js.map +0 -1
  247. package/dist/components/calcite-value-list.js +0 -13
  248. package/dist/components/calcite-value-list.js.map +0 -1
  249. package/dist/components/check-list.d.ts +0 -11
  250. package/dist/components/check-list.js +0 -13
  251. package/dist/components/check-list.js.map +0 -1
  252. package/dist/components/check-list2.js +0 -128
  253. package/dist/components/check-list2.js.map +0 -1
  254. package/dist/components/checkbox.js +0 -167
  255. package/dist/components/checkbox.js.map +0 -1
  256. package/dist/components/chip.js +0 -172
  257. package/dist/components/chip.js.map +0 -1
  258. package/dist/components/color-picker-hex-input.js +0 -365
  259. package/dist/components/color-picker-hex-input.js.map +0 -1
  260. package/dist/components/color-picker-swatch.js +0 -2036
  261. package/dist/components/color-picker-swatch.js.map +0 -1
  262. package/dist/components/combobox-item.js +0 -184
  263. package/dist/components/combobox-item.js.map +0 -1
  264. package/dist/components/combobox.js +0 -914
  265. package/dist/components/combobox.js.map +0 -1
  266. package/dist/components/conditionalSlot.js +0 -52
  267. package/dist/components/conditionalSlot.js.map +0 -1
  268. package/dist/components/config-buffer-tools.d.ts +0 -11
  269. package/dist/components/config-buffer-tools.js +0 -185
  270. package/dist/components/config-buffer-tools.js.map +0 -1
  271. package/dist/components/config-draw-tools.d.ts +0 -11
  272. package/dist/components/config-draw-tools.js +0 -124
  273. package/dist/components/config-draw-tools.js.map +0 -1
  274. package/dist/components/config-layer-picker.d.ts +0 -11
  275. package/dist/components/config-layer-picker.js +0 -148
  276. package/dist/components/config-layer-picker.js.map +0 -1
  277. package/dist/components/config-pdf-download.d.ts +0 -11
  278. package/dist/components/config-pdf-download.js +0 -157
  279. package/dist/components/config-pdf-download.js.map +0 -1
  280. package/dist/components/date-picker-day.js +0 -113
  281. package/dist/components/date-picker-day.js.map +0 -1
  282. package/dist/components/date-picker-month-header.js +0 -226
  283. package/dist/components/date-picker-month-header.js.map +0 -1
  284. package/dist/components/date-picker-month.js +0 -346
  285. package/dist/components/date-picker-month.js.map +0 -1
  286. package/dist/components/date-picker.js +0 -577
  287. package/dist/components/date-picker.js.map +0 -1
  288. package/dist/components/date.js +0 -182
  289. package/dist/components/date.js.map +0 -1
  290. package/dist/components/debounce.js +0 -489
  291. package/dist/components/debounce.js.map +0 -1
  292. package/dist/components/dom.js +0 -233
  293. package/dist/components/dom.js.map +0 -1
  294. package/dist/components/dropdown.js +0 -507
  295. package/dist/components/dropdown.js.map +0 -1
  296. package/dist/components/filter.js +0 -765
  297. package/dist/components/filter.js.map +0 -1
  298. package/dist/components/floating-ui.js +0 -1787
  299. package/dist/components/floating-ui.js.map +0 -1
  300. package/dist/components/form.js +0 -230
  301. package/dist/components/form.js.map +0 -1
  302. package/dist/components/graph.js +0 -256
  303. package/dist/components/graph.js.map +0 -1
  304. package/dist/components/guid.js +0 -26
  305. package/dist/components/guid.js.map +0 -1
  306. package/dist/components/handle.js +0 -121
  307. package/dist/components/handle.js.map +0 -1
  308. package/dist/components/icon.js +0 -204
  309. package/dist/components/icon.js.map +0 -1
  310. package/dist/components/index.d.ts +0 -48
  311. package/dist/components/index.js +0 -190
  312. package/dist/components/index.js.map +0 -1
  313. package/dist/components/index2.js +0 -201
  314. package/dist/components/index2.js.map +0 -1
  315. package/dist/components/input-message.js +0 -103
  316. package/dist/components/input-message.js.map +0 -1
  317. package/dist/components/input.js +0 -742
  318. package/dist/components/input.js.map +0 -1
  319. package/dist/components/interactive.js +0 -53
  320. package/dist/components/interactive.js.map +0 -1
  321. package/dist/components/interfaces.js +0 -21
  322. package/dist/components/interfaces.js.map +0 -1
  323. package/dist/components/interfaces2.js +0 -23
  324. package/dist/components/interfaces2.js.map +0 -1
  325. package/dist/components/interfaces3.js +0 -72
  326. package/dist/components/interfaces3.js.map +0 -1
  327. package/dist/components/json-editor.d.ts +0 -11
  328. package/dist/components/json-editor.js +0 -13
  329. package/dist/components/json-editor.js.map +0 -1
  330. package/dist/components/json-editor2.js +0 -443
  331. package/dist/components/json-editor2.js.map +0 -1
  332. package/dist/components/key.js +0 -18
  333. package/dist/components/key.js.map +0 -1
  334. package/dist/components/label.js +0 -108
  335. package/dist/components/label.js.map +0 -1
  336. package/dist/components/label2.js +0 -133
  337. package/dist/components/label2.js.map +0 -1
  338. package/dist/components/labelFormats.js +0 -212
  339. package/dist/components/labelFormats.js.map +0 -1
  340. package/dist/components/link.js +0 -125
  341. package/dist/components/link.js.map +0 -1
  342. package/dist/components/list-item.js +0 -151
  343. package/dist/components/list-item.js.map +0 -1
  344. package/dist/components/list.js +0 -85
  345. package/dist/components/list.js.map +0 -1
  346. package/dist/components/loadModules.js +0 -30
  347. package/dist/components/loadModules.js.map +0 -1
  348. package/dist/components/loader.js +0 -118
  349. package/dist/components/loader.js.map +0 -1
  350. package/dist/components/locale.js +0 -414
  351. package/dist/components/locale.js.map +0 -1
  352. package/dist/components/locale2.js +0 -415
  353. package/dist/components/locale2.js.map +0 -1
  354. package/dist/components/map-draw-tools.d.ts +0 -11
  355. package/dist/components/map-draw-tools.js +0 -13
  356. package/dist/components/map-draw-tools.js.map +0 -1
  357. package/dist/components/map-draw-tools2.js +0 -230
  358. package/dist/components/map-draw-tools2.js.map +0 -1
  359. package/dist/components/map-layer-picker.d.ts +0 -11
  360. package/dist/components/map-layer-picker.js +0 -13
  361. package/dist/components/map-layer-picker.js.map +0 -1
  362. package/dist/components/map-layer-picker2.js +0 -190
  363. package/dist/components/map-layer-picker2.js.map +0 -1
  364. package/dist/components/map-search.d.ts +0 -11
  365. package/dist/components/map-search.js +0 -157
  366. package/dist/components/map-search.js.map +0 -1
  367. package/dist/components/map-select-tools.d.ts +0 -11
  368. package/dist/components/map-select-tools.js +0 -13
  369. package/dist/components/map-select-tools.js.map +0 -1
  370. package/dist/components/map-select-tools2.js +0 -555
  371. package/dist/components/map-select-tools2.js.map +0 -1
  372. package/dist/components/mapViewUtils.js +0 -131
  373. package/dist/components/mapViewUtils.js.map +0 -1
  374. package/dist/components/math.js +0 -26
  375. package/dist/components/math.js.map +0 -1
  376. package/dist/components/nonChromiumPlatformUtils.js +0 -505
  377. package/dist/components/nonChromiumPlatformUtils.js.map +0 -1
  378. package/dist/components/notice.js +0 -194
  379. package/dist/components/notice.js.map +0 -1
  380. package/dist/components/observers.js +0 -58
  381. package/dist/components/observers.js.map +0 -1
  382. package/dist/components/openCloseComponent.js +0 -58
  383. package/dist/components/openCloseComponent.js.map +0 -1
  384. package/dist/components/option.js +0 -111
  385. package/dist/components/option.js.map +0 -1
  386. package/dist/components/panel.js +0 -461
  387. package/dist/components/panel.js.map +0 -1
  388. package/dist/components/pdf-download.d.ts +0 -11
  389. package/dist/components/pdf-download.js +0 -13
  390. package/dist/components/pdf-download.js.map +0 -1
  391. package/dist/components/pdf-download2.js +0 -243
  392. package/dist/components/pdf-download2.js.map +0 -1
  393. package/dist/components/pick-list-item.js +0 -257
  394. package/dist/components/pick-list-item.js.map +0 -1
  395. package/dist/components/popover.js +0 -502
  396. package/dist/components/popover.js.map +0 -1
  397. package/dist/components/progress.js +0 -62
  398. package/dist/components/progress.js.map +0 -1
  399. package/dist/components/public-notification.d.ts +0 -11
  400. package/dist/components/public-notification.js +0 -784
  401. package/dist/components/public-notification.js.map +0 -1
  402. package/dist/components/publicNotificationStore.js +0 -40
  403. package/dist/components/publicNotificationStore.js.map +0 -1
  404. package/dist/components/queryUtils.js +0 -163
  405. package/dist/components/queryUtils.js.map +0 -1
  406. package/dist/components/radio-group-item.js +0 -103
  407. package/dist/components/radio-group-item.js.map +0 -1
  408. package/dist/components/radio-group.js +0 -237
  409. package/dist/components/radio-group.js.map +0 -1
  410. package/dist/components/refine-selection-tools.d.ts +0 -11
  411. package/dist/components/refine-selection-tools.js +0 -13
  412. package/dist/components/refine-selection-tools.js.map +0 -1
  413. package/dist/components/refine-selection-tools2.js +0 -500
  414. package/dist/components/refine-selection-tools2.js.map +0 -1
  415. package/dist/components/refine-selection.d.ts +0 -11
  416. package/dist/components/refine-selection.js +0 -13
  417. package/dist/components/refine-selection.js.map +0 -1
  418. package/dist/components/refine-selection2.js +0 -369
  419. package/dist/components/refine-selection2.js.map +0 -1
  420. package/dist/components/resources.js +0 -26
  421. package/dist/components/resources.js.map +0 -1
  422. package/dist/components/resources2.js +0 -23
  423. package/dist/components/resources2.js.map +0 -1
  424. package/dist/components/resources3.js +0 -40
  425. package/dist/components/resources3.js.map +0 -1
  426. package/dist/components/scrim.js +0 -85
  427. package/dist/components/scrim.js.map +0 -1
  428. package/dist/components/select.js +0 -261
  429. package/dist/components/select.js.map +0 -1
  430. package/dist/components/shared-list-render.js +0 -321
  431. package/dist/components/shared-list-render.js.map +0 -1
  432. package/dist/components/shell-panel.js +0 -283
  433. package/dist/components/shell-panel.js.map +0 -1
  434. package/dist/components/shell.js +0 -123
  435. package/dist/components/shell.js.map +0 -1
  436. package/dist/components/slider.js +0 -898
  437. package/dist/components/slider.js.map +0 -1
  438. package/dist/components/solution-configuration.d.ts +0 -11
  439. package/dist/components/solution-configuration.js +0 -2225
  440. package/dist/components/solution-configuration.js.map +0 -1
  441. package/dist/components/solution-contents.d.ts +0 -11
  442. package/dist/components/solution-contents.js +0 -13
  443. package/dist/components/solution-contents.js.map +0 -1
  444. package/dist/components/solution-contents2.js +0 -130
  445. package/dist/components/solution-contents2.js.map +0 -1
  446. package/dist/components/solution-item-details.d.ts +0 -11
  447. package/dist/components/solution-item-details.js +0 -13
  448. package/dist/components/solution-item-details.js.map +0 -1
  449. package/dist/components/solution-item-details2.js +0 -236
  450. package/dist/components/solution-item-details2.js.map +0 -1
  451. package/dist/components/solution-item-icon.d.ts +0 -11
  452. package/dist/components/solution-item-icon.js +0 -13
  453. package/dist/components/solution-item-icon.js.map +0 -1
  454. package/dist/components/solution-item-icon2.js +0 -344
  455. package/dist/components/solution-item-icon2.js.map +0 -1
  456. package/dist/components/solution-item-sharing.d.ts +0 -11
  457. package/dist/components/solution-item-sharing.js +0 -13
  458. package/dist/components/solution-item-sharing.js.map +0 -1
  459. package/dist/components/solution-item-sharing2.js +0 -169
  460. package/dist/components/solution-item-sharing2.js.map +0 -1
  461. package/dist/components/solution-item.d.ts +0 -11
  462. package/dist/components/solution-item.js +0 -13
  463. package/dist/components/solution-item.js.map +0 -1
  464. package/dist/components/solution-item2.js +0 -317
  465. package/dist/components/solution-item2.js.map +0 -1
  466. package/dist/components/solution-organization-variables.d.ts +0 -11
  467. package/dist/components/solution-organization-variables.js +0 -13
  468. package/dist/components/solution-organization-variables.js.map +0 -1
  469. package/dist/components/solution-organization-variables2.js +0 -134
  470. package/dist/components/solution-organization-variables2.js.map +0 -1
  471. package/dist/components/solution-resource-item.d.ts +0 -11
  472. package/dist/components/solution-resource-item.js +0 -13
  473. package/dist/components/solution-resource-item.js.map +0 -1
  474. package/dist/components/solution-resource-item2.js +0 -358
  475. package/dist/components/solution-resource-item2.js.map +0 -1
  476. package/dist/components/solution-spatial-ref.d.ts +0 -11
  477. package/dist/components/solution-spatial-ref.js +0 -13
  478. package/dist/components/solution-spatial-ref.js.map +0 -1
  479. package/dist/components/solution-spatial-ref2.js +0 -21448
  480. package/dist/components/solution-spatial-ref2.js.map +0 -1
  481. package/dist/components/solution-store.js +0 -4094
  482. package/dist/components/solution-store.js.map +0 -1
  483. package/dist/components/solution-template-data.d.ts +0 -11
  484. package/dist/components/solution-template-data.js +0 -13
  485. package/dist/components/solution-template-data.js.map +0 -1
  486. package/dist/components/solution-template-data2.js +0 -235
  487. package/dist/components/solution-template-data2.js.map +0 -1
  488. package/dist/components/solution-variables.d.ts +0 -11
  489. package/dist/components/solution-variables.js +0 -13
  490. package/dist/components/solution-variables.js.map +0 -1
  491. package/dist/components/solution-variables2.js +0 -152
  492. package/dist/components/solution-variables2.js.map +0 -1
  493. package/dist/components/sortable.esm.js +0 -3028
  494. package/dist/components/sortable.esm.js.map +0 -1
  495. package/dist/components/store-manager.d.ts +0 -11
  496. package/dist/components/store-manager.js +0 -85
  497. package/dist/components/store-manager.js.map +0 -1
  498. package/dist/components/switch.js +0 -141
  499. package/dist/components/switch.js.map +0 -1
  500. package/dist/components/tab-nav.js +0 -243
  501. package/dist/components/tab-nav.js.map +0 -1
  502. package/dist/components/tab-title.js +0 -278
  503. package/dist/components/tab-title.js.map +0 -1
  504. package/dist/components/tab.js +0 -156
  505. package/dist/components/tab.js.map +0 -1
  506. package/dist/components/tabs.js +0 -190
  507. package/dist/components/tabs.js.map +0 -1
  508. package/dist/components/tile.js +0 -131
  509. package/dist/components/tile.js.map +0 -1
  510. package/dist/components/time-picker.js +0 -945
  511. package/dist/components/time-picker.js.map +0 -1
  512. package/dist/components/tooltip.js +0 -401
  513. package/dist/components/tooltip.js.map +0 -1
  514. package/dist/components/tree-item.js +0 -296
  515. package/dist/components/tree-item.js.map +0 -1
  516. package/dist/components/tree.js +0 -329
  517. package/dist/components/tree.js.map +0 -1
  518. package/dist/components/utils.js +0 -121
  519. package/dist/components/utils.js.map +0 -1
  520. package/dist/components/utils2.js +0 -53
  521. package/dist/components/utils2.js.map +0 -1
  522. package/dist/components/value-list-item.js +0 -206
  523. package/dist/components/value-list-item.js.map +0 -1
  524. package/dist/components/value-list.js +0 -335
  525. package/dist/components/value-list.js.map +0 -1
  526. package/dist/esm/solution-store-b3c65467.js.map +0 -1
  527. package/dist/solutions-components/p-542189bc.entry.js.map +0 -1
  528. package/dist/solutions-components/p-638738f2.entry.js.map +0 -1
  529. package/dist/solutions-components/p-7e8985f2.entry.js.map +0 -1
  530. package/dist/solutions-components/p-b25f6ebe.js.map +0 -1
@@ -1,2036 +0,0 @@
1
- /*!
2
- * Copyright 2022 Esri
3
- * Licensed under the Apache License, Version 2.0
4
- * http://www.apache.org/licenses/LICENSE-2.0
5
- */
6
- import { proxyCustomElement, HTMLElement, h } from '@stencil/core/internal/client';
7
- import { c as createCommonjsModule } from './_commonjsHelpers.js';
8
- import { e as getThemeName } from './dom.js';
9
-
10
- var colorName = {
11
- "aliceblue": [240, 248, 255],
12
- "antiquewhite": [250, 235, 215],
13
- "aqua": [0, 255, 255],
14
- "aquamarine": [127, 255, 212],
15
- "azure": [240, 255, 255],
16
- "beige": [245, 245, 220],
17
- "bisque": [255, 228, 196],
18
- "black": [0, 0, 0],
19
- "blanchedalmond": [255, 235, 205],
20
- "blue": [0, 0, 255],
21
- "blueviolet": [138, 43, 226],
22
- "brown": [165, 42, 42],
23
- "burlywood": [222, 184, 135],
24
- "cadetblue": [95, 158, 160],
25
- "chartreuse": [127, 255, 0],
26
- "chocolate": [210, 105, 30],
27
- "coral": [255, 127, 80],
28
- "cornflowerblue": [100, 149, 237],
29
- "cornsilk": [255, 248, 220],
30
- "crimson": [220, 20, 60],
31
- "cyan": [0, 255, 255],
32
- "darkblue": [0, 0, 139],
33
- "darkcyan": [0, 139, 139],
34
- "darkgoldenrod": [184, 134, 11],
35
- "darkgray": [169, 169, 169],
36
- "darkgreen": [0, 100, 0],
37
- "darkgrey": [169, 169, 169],
38
- "darkkhaki": [189, 183, 107],
39
- "darkmagenta": [139, 0, 139],
40
- "darkolivegreen": [85, 107, 47],
41
- "darkorange": [255, 140, 0],
42
- "darkorchid": [153, 50, 204],
43
- "darkred": [139, 0, 0],
44
- "darksalmon": [233, 150, 122],
45
- "darkseagreen": [143, 188, 143],
46
- "darkslateblue": [72, 61, 139],
47
- "darkslategray": [47, 79, 79],
48
- "darkslategrey": [47, 79, 79],
49
- "darkturquoise": [0, 206, 209],
50
- "darkviolet": [148, 0, 211],
51
- "deeppink": [255, 20, 147],
52
- "deepskyblue": [0, 191, 255],
53
- "dimgray": [105, 105, 105],
54
- "dimgrey": [105, 105, 105],
55
- "dodgerblue": [30, 144, 255],
56
- "firebrick": [178, 34, 34],
57
- "floralwhite": [255, 250, 240],
58
- "forestgreen": [34, 139, 34],
59
- "fuchsia": [255, 0, 255],
60
- "gainsboro": [220, 220, 220],
61
- "ghostwhite": [248, 248, 255],
62
- "gold": [255, 215, 0],
63
- "goldenrod": [218, 165, 32],
64
- "gray": [128, 128, 128],
65
- "green": [0, 128, 0],
66
- "greenyellow": [173, 255, 47],
67
- "grey": [128, 128, 128],
68
- "honeydew": [240, 255, 240],
69
- "hotpink": [255, 105, 180],
70
- "indianred": [205, 92, 92],
71
- "indigo": [75, 0, 130],
72
- "ivory": [255, 255, 240],
73
- "khaki": [240, 230, 140],
74
- "lavender": [230, 230, 250],
75
- "lavenderblush": [255, 240, 245],
76
- "lawngreen": [124, 252, 0],
77
- "lemonchiffon": [255, 250, 205],
78
- "lightblue": [173, 216, 230],
79
- "lightcoral": [240, 128, 128],
80
- "lightcyan": [224, 255, 255],
81
- "lightgoldenrodyellow": [250, 250, 210],
82
- "lightgray": [211, 211, 211],
83
- "lightgreen": [144, 238, 144],
84
- "lightgrey": [211, 211, 211],
85
- "lightpink": [255, 182, 193],
86
- "lightsalmon": [255, 160, 122],
87
- "lightseagreen": [32, 178, 170],
88
- "lightskyblue": [135, 206, 250],
89
- "lightslategray": [119, 136, 153],
90
- "lightslategrey": [119, 136, 153],
91
- "lightsteelblue": [176, 196, 222],
92
- "lightyellow": [255, 255, 224],
93
- "lime": [0, 255, 0],
94
- "limegreen": [50, 205, 50],
95
- "linen": [250, 240, 230],
96
- "magenta": [255, 0, 255],
97
- "maroon": [128, 0, 0],
98
- "mediumaquamarine": [102, 205, 170],
99
- "mediumblue": [0, 0, 205],
100
- "mediumorchid": [186, 85, 211],
101
- "mediumpurple": [147, 112, 219],
102
- "mediumseagreen": [60, 179, 113],
103
- "mediumslateblue": [123, 104, 238],
104
- "mediumspringgreen": [0, 250, 154],
105
- "mediumturquoise": [72, 209, 204],
106
- "mediumvioletred": [199, 21, 133],
107
- "midnightblue": [25, 25, 112],
108
- "mintcream": [245, 255, 250],
109
- "mistyrose": [255, 228, 225],
110
- "moccasin": [255, 228, 181],
111
- "navajowhite": [255, 222, 173],
112
- "navy": [0, 0, 128],
113
- "oldlace": [253, 245, 230],
114
- "olive": [128, 128, 0],
115
- "olivedrab": [107, 142, 35],
116
- "orange": [255, 165, 0],
117
- "orangered": [255, 69, 0],
118
- "orchid": [218, 112, 214],
119
- "palegoldenrod": [238, 232, 170],
120
- "palegreen": [152, 251, 152],
121
- "paleturquoise": [175, 238, 238],
122
- "palevioletred": [219, 112, 147],
123
- "papayawhip": [255, 239, 213],
124
- "peachpuff": [255, 218, 185],
125
- "peru": [205, 133, 63],
126
- "pink": [255, 192, 203],
127
- "plum": [221, 160, 221],
128
- "powderblue": [176, 224, 230],
129
- "purple": [128, 0, 128],
130
- "rebeccapurple": [102, 51, 153],
131
- "red": [255, 0, 0],
132
- "rosybrown": [188, 143, 143],
133
- "royalblue": [65, 105, 225],
134
- "saddlebrown": [139, 69, 19],
135
- "salmon": [250, 128, 114],
136
- "sandybrown": [244, 164, 96],
137
- "seagreen": [46, 139, 87],
138
- "seashell": [255, 245, 238],
139
- "sienna": [160, 82, 45],
140
- "silver": [192, 192, 192],
141
- "skyblue": [135, 206, 235],
142
- "slateblue": [106, 90, 205],
143
- "slategray": [112, 128, 144],
144
- "slategrey": [112, 128, 144],
145
- "snow": [255, 250, 250],
146
- "springgreen": [0, 255, 127],
147
- "steelblue": [70, 130, 180],
148
- "tan": [210, 180, 140],
149
- "teal": [0, 128, 128],
150
- "thistle": [216, 191, 216],
151
- "tomato": [255, 99, 71],
152
- "turquoise": [64, 224, 208],
153
- "violet": [238, 130, 238],
154
- "wheat": [245, 222, 179],
155
- "white": [255, 255, 255],
156
- "whitesmoke": [245, 245, 245],
157
- "yellow": [255, 255, 0],
158
- "yellowgreen": [154, 205, 50]
159
- };
160
-
161
- var isArrayish = function isArrayish(obj) {
162
- if (!obj || typeof obj === 'string') {
163
- return false;
164
- }
165
-
166
- return obj instanceof Array || Array.isArray(obj) ||
167
- (obj.length >= 0 && (obj.splice instanceof Function ||
168
- (Object.getOwnPropertyDescriptor(obj, (obj.length - 1)) && obj.constructor.name !== 'String')));
169
- };
170
-
171
- var simpleSwizzle = createCommonjsModule(function (module) {
172
-
173
-
174
-
175
- var concat = Array.prototype.concat;
176
- var slice = Array.prototype.slice;
177
-
178
- var swizzle = module.exports = function swizzle(args) {
179
- var results = [];
180
-
181
- for (var i = 0, len = args.length; i < len; i++) {
182
- var arg = args[i];
183
-
184
- if (isArrayish(arg)) {
185
- // http://jsperf.com/javascript-array-concat-vs-push/98
186
- results = concat.call(results, slice.call(arg));
187
- } else {
188
- results.push(arg);
189
- }
190
- }
191
-
192
- return results;
193
- };
194
-
195
- swizzle.wrap = function (fn) {
196
- return function () {
197
- return fn(swizzle(arguments));
198
- };
199
- };
200
- });
201
-
202
- var colorString = createCommonjsModule(function (module) {
203
- /* MIT license */
204
-
205
-
206
- var hasOwnProperty = Object.hasOwnProperty;
207
-
208
- var reverseNames = Object.create(null);
209
-
210
- // create a list of reverse color names
211
- for (var name in colorName) {
212
- if (hasOwnProperty.call(colorName, name)) {
213
- reverseNames[colorName[name]] = name;
214
- }
215
- }
216
-
217
- var cs = module.exports = {
218
- to: {},
219
- get: {}
220
- };
221
-
222
- cs.get = function (string) {
223
- var prefix = string.substring(0, 3).toLowerCase();
224
- var val;
225
- var model;
226
- switch (prefix) {
227
- case 'hsl':
228
- val = cs.get.hsl(string);
229
- model = 'hsl';
230
- break;
231
- case 'hwb':
232
- val = cs.get.hwb(string);
233
- model = 'hwb';
234
- break;
235
- default:
236
- val = cs.get.rgb(string);
237
- model = 'rgb';
238
- break;
239
- }
240
-
241
- if (!val) {
242
- return null;
243
- }
244
-
245
- return {model: model, value: val};
246
- };
247
-
248
- cs.get.rgb = function (string) {
249
- if (!string) {
250
- return null;
251
- }
252
-
253
- var abbr = /^#([a-f0-9]{3,4})$/i;
254
- var hex = /^#([a-f0-9]{6})([a-f0-9]{2})?$/i;
255
- var rgba = /^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/;
256
- var per = /^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/;
257
- var keyword = /^(\w+)$/;
258
-
259
- var rgb = [0, 0, 0, 1];
260
- var match;
261
- var i;
262
- var hexAlpha;
263
-
264
- if (match = string.match(hex)) {
265
- hexAlpha = match[2];
266
- match = match[1];
267
-
268
- for (i = 0; i < 3; i++) {
269
- // https://jsperf.com/slice-vs-substr-vs-substring-methods-long-string/19
270
- var i2 = i * 2;
271
- rgb[i] = parseInt(match.slice(i2, i2 + 2), 16);
272
- }
273
-
274
- if (hexAlpha) {
275
- rgb[3] = parseInt(hexAlpha, 16) / 255;
276
- }
277
- } else if (match = string.match(abbr)) {
278
- match = match[1];
279
- hexAlpha = match[3];
280
-
281
- for (i = 0; i < 3; i++) {
282
- rgb[i] = parseInt(match[i] + match[i], 16);
283
- }
284
-
285
- if (hexAlpha) {
286
- rgb[3] = parseInt(hexAlpha + hexAlpha, 16) / 255;
287
- }
288
- } else if (match = string.match(rgba)) {
289
- for (i = 0; i < 3; i++) {
290
- rgb[i] = parseInt(match[i + 1], 0);
291
- }
292
-
293
- if (match[4]) {
294
- if (match[5]) {
295
- rgb[3] = parseFloat(match[4]) * 0.01;
296
- } else {
297
- rgb[3] = parseFloat(match[4]);
298
- }
299
- }
300
- } else if (match = string.match(per)) {
301
- for (i = 0; i < 3; i++) {
302
- rgb[i] = Math.round(parseFloat(match[i + 1]) * 2.55);
303
- }
304
-
305
- if (match[4]) {
306
- if (match[5]) {
307
- rgb[3] = parseFloat(match[4]) * 0.01;
308
- } else {
309
- rgb[3] = parseFloat(match[4]);
310
- }
311
- }
312
- } else if (match = string.match(keyword)) {
313
- if (match[1] === 'transparent') {
314
- return [0, 0, 0, 0];
315
- }
316
-
317
- if (!hasOwnProperty.call(colorName, match[1])) {
318
- return null;
319
- }
320
-
321
- rgb = colorName[match[1]];
322
- rgb[3] = 1;
323
-
324
- return rgb;
325
- } else {
326
- return null;
327
- }
328
-
329
- for (i = 0; i < 3; i++) {
330
- rgb[i] = clamp(rgb[i], 0, 255);
331
- }
332
- rgb[3] = clamp(rgb[3], 0, 1);
333
-
334
- return rgb;
335
- };
336
-
337
- cs.get.hsl = function (string) {
338
- if (!string) {
339
- return null;
340
- }
341
-
342
- 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*)?\)$/;
343
- var match = string.match(hsl);
344
-
345
- if (match) {
346
- var alpha = parseFloat(match[4]);
347
- var h = ((parseFloat(match[1]) % 360) + 360) % 360;
348
- var s = clamp(parseFloat(match[2]), 0, 100);
349
- var l = clamp(parseFloat(match[3]), 0, 100);
350
- var a = clamp(isNaN(alpha) ? 1 : alpha, 0, 1);
351
-
352
- return [h, s, l, a];
353
- }
354
-
355
- return null;
356
- };
357
-
358
- cs.get.hwb = function (string) {
359
- if (!string) {
360
- return null;
361
- }
362
-
363
- 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*)?\)$/;
364
- var match = string.match(hwb);
365
-
366
- if (match) {
367
- var alpha = parseFloat(match[4]);
368
- var h = ((parseFloat(match[1]) % 360) + 360) % 360;
369
- var w = clamp(parseFloat(match[2]), 0, 100);
370
- var b = clamp(parseFloat(match[3]), 0, 100);
371
- var a = clamp(isNaN(alpha) ? 1 : alpha, 0, 1);
372
- return [h, w, b, a];
373
- }
374
-
375
- return null;
376
- };
377
-
378
- cs.to.hex = function () {
379
- var rgba = simpleSwizzle(arguments);
380
-
381
- return (
382
- '#' +
383
- hexDouble(rgba[0]) +
384
- hexDouble(rgba[1]) +
385
- hexDouble(rgba[2]) +
386
- (rgba[3] < 1
387
- ? (hexDouble(Math.round(rgba[3] * 255)))
388
- : '')
389
- );
390
- };
391
-
392
- cs.to.rgb = function () {
393
- var rgba = simpleSwizzle(arguments);
394
-
395
- return rgba.length < 4 || rgba[3] === 1
396
- ? 'rgb(' + Math.round(rgba[0]) + ', ' + Math.round(rgba[1]) + ', ' + Math.round(rgba[2]) + ')'
397
- : 'rgba(' + Math.round(rgba[0]) + ', ' + Math.round(rgba[1]) + ', ' + Math.round(rgba[2]) + ', ' + rgba[3] + ')';
398
- };
399
-
400
- cs.to.rgb.percent = function () {
401
- var rgba = simpleSwizzle(arguments);
402
-
403
- var r = Math.round(rgba[0] / 255 * 100);
404
- var g = Math.round(rgba[1] / 255 * 100);
405
- var b = Math.round(rgba[2] / 255 * 100);
406
-
407
- return rgba.length < 4 || rgba[3] === 1
408
- ? 'rgb(' + r + '%, ' + g + '%, ' + b + '%)'
409
- : 'rgba(' + r + '%, ' + g + '%, ' + b + '%, ' + rgba[3] + ')';
410
- };
411
-
412
- cs.to.hsl = function () {
413
- var hsla = simpleSwizzle(arguments);
414
- return hsla.length < 4 || hsla[3] === 1
415
- ? 'hsl(' + hsla[0] + ', ' + hsla[1] + '%, ' + hsla[2] + '%)'
416
- : 'hsla(' + hsla[0] + ', ' + hsla[1] + '%, ' + hsla[2] + '%, ' + hsla[3] + ')';
417
- };
418
-
419
- // hwb is a bit different than rgb(a) & hsl(a) since there is no alpha specific syntax
420
- // (hwb have alpha optional & 1 is default value)
421
- cs.to.hwb = function () {
422
- var hwba = simpleSwizzle(arguments);
423
-
424
- var a = '';
425
- if (hwba.length >= 4 && hwba[3] !== 1) {
426
- a = ', ' + hwba[3];
427
- }
428
-
429
- return 'hwb(' + hwba[0] + ', ' + hwba[1] + '%, ' + hwba[2] + '%' + a + ')';
430
- };
431
-
432
- cs.to.keyword = function (rgb) {
433
- return reverseNames[rgb.slice(0, 3)];
434
- };
435
-
436
- // helpers
437
- function clamp(num, min, max) {
438
- return Math.min(Math.max(min, num), max);
439
- }
440
-
441
- function hexDouble(num) {
442
- var str = Math.round(num).toString(16).toUpperCase();
443
- return (str.length < 2) ? '0' + str : str;
444
- }
445
- });
446
-
447
- /* MIT license */
448
- /* eslint-disable no-mixed-operators */
449
-
450
-
451
- // NOTE: conversions should only return primitive values (i.e. arrays, or
452
- // values that give correct `typeof` results).
453
- // do not use box values types (i.e. Number(), String(), etc.)
454
-
455
- const reverseKeywords = {};
456
- for (const key of Object.keys(colorName)) {
457
- reverseKeywords[colorName[key]] = key;
458
- }
459
-
460
- const convert$1 = {
461
- rgb: {channels: 3, labels: 'rgb'},
462
- hsl: {channels: 3, labels: 'hsl'},
463
- hsv: {channels: 3, labels: 'hsv'},
464
- hwb: {channels: 3, labels: 'hwb'},
465
- cmyk: {channels: 4, labels: 'cmyk'},
466
- xyz: {channels: 3, labels: 'xyz'},
467
- lab: {channels: 3, labels: 'lab'},
468
- lch: {channels: 3, labels: 'lch'},
469
- hex: {channels: 1, labels: ['hex']},
470
- keyword: {channels: 1, labels: ['keyword']},
471
- ansi16: {channels: 1, labels: ['ansi16']},
472
- ansi256: {channels: 1, labels: ['ansi256']},
473
- hcg: {channels: 3, labels: ['h', 'c', 'g']},
474
- apple: {channels: 3, labels: ['r16', 'g16', 'b16']},
475
- gray: {channels: 1, labels: ['gray']}
476
- };
477
-
478
- var conversions = convert$1;
479
-
480
- // Hide .channels and .labels properties
481
- for (const model of Object.keys(convert$1)) {
482
- if (!('channels' in convert$1[model])) {
483
- throw new Error('missing channels property: ' + model);
484
- }
485
-
486
- if (!('labels' in convert$1[model])) {
487
- throw new Error('missing channel labels property: ' + model);
488
- }
489
-
490
- if (convert$1[model].labels.length !== convert$1[model].channels) {
491
- throw new Error('channel and label counts mismatch: ' + model);
492
- }
493
-
494
- const {channels, labels} = convert$1[model];
495
- delete convert$1[model].channels;
496
- delete convert$1[model].labels;
497
- Object.defineProperty(convert$1[model], 'channels', {value: channels});
498
- Object.defineProperty(convert$1[model], 'labels', {value: labels});
499
- }
500
-
501
- convert$1.rgb.hsl = function (rgb) {
502
- const r = rgb[0] / 255;
503
- const g = rgb[1] / 255;
504
- const b = rgb[2] / 255;
505
- const min = Math.min(r, g, b);
506
- const max = Math.max(r, g, b);
507
- const delta = max - min;
508
- let h;
509
- let s;
510
-
511
- if (max === min) {
512
- h = 0;
513
- } else if (r === max) {
514
- h = (g - b) / delta;
515
- } else if (g === max) {
516
- h = 2 + (b - r) / delta;
517
- } else if (b === max) {
518
- h = 4 + (r - g) / delta;
519
- }
520
-
521
- h = Math.min(h * 60, 360);
522
-
523
- if (h < 0) {
524
- h += 360;
525
- }
526
-
527
- const l = (min + max) / 2;
528
-
529
- if (max === min) {
530
- s = 0;
531
- } else if (l <= 0.5) {
532
- s = delta / (max + min);
533
- } else {
534
- s = delta / (2 - max - min);
535
- }
536
-
537
- return [h, s * 100, l * 100];
538
- };
539
-
540
- convert$1.rgb.hsv = function (rgb) {
541
- let rdif;
542
- let gdif;
543
- let bdif;
544
- let h;
545
- let s;
546
-
547
- const r = rgb[0] / 255;
548
- const g = rgb[1] / 255;
549
- const b = rgb[2] / 255;
550
- const v = Math.max(r, g, b);
551
- const diff = v - Math.min(r, g, b);
552
- const diffc = function (c) {
553
- return (v - c) / 6 / diff + 1 / 2;
554
- };
555
-
556
- if (diff === 0) {
557
- h = 0;
558
- s = 0;
559
- } else {
560
- s = diff / v;
561
- rdif = diffc(r);
562
- gdif = diffc(g);
563
- bdif = diffc(b);
564
-
565
- if (r === v) {
566
- h = bdif - gdif;
567
- } else if (g === v) {
568
- h = (1 / 3) + rdif - bdif;
569
- } else if (b === v) {
570
- h = (2 / 3) + gdif - rdif;
571
- }
572
-
573
- if (h < 0) {
574
- h += 1;
575
- } else if (h > 1) {
576
- h -= 1;
577
- }
578
- }
579
-
580
- return [
581
- h * 360,
582
- s * 100,
583
- v * 100
584
- ];
585
- };
586
-
587
- convert$1.rgb.hwb = function (rgb) {
588
- const r = rgb[0];
589
- const g = rgb[1];
590
- let b = rgb[2];
591
- const h = convert$1.rgb.hsl(rgb)[0];
592
- const w = 1 / 255 * Math.min(r, Math.min(g, b));
593
-
594
- b = 1 - 1 / 255 * Math.max(r, Math.max(g, b));
595
-
596
- return [h, w * 100, b * 100];
597
- };
598
-
599
- convert$1.rgb.cmyk = function (rgb) {
600
- const r = rgb[0] / 255;
601
- const g = rgb[1] / 255;
602
- const b = rgb[2] / 255;
603
-
604
- const k = Math.min(1 - r, 1 - g, 1 - b);
605
- const c = (1 - r - k) / (1 - k) || 0;
606
- const m = (1 - g - k) / (1 - k) || 0;
607
- const y = (1 - b - k) / (1 - k) || 0;
608
-
609
- return [c * 100, m * 100, y * 100, k * 100];
610
- };
611
-
612
- function comparativeDistance(x, y) {
613
- /*
614
- See https://en.m.wikipedia.org/wiki/Euclidean_distance#Squared_Euclidean_distance
615
- */
616
- return (
617
- ((x[0] - y[0]) ** 2) +
618
- ((x[1] - y[1]) ** 2) +
619
- ((x[2] - y[2]) ** 2)
620
- );
621
- }
622
-
623
- convert$1.rgb.keyword = function (rgb) {
624
- const reversed = reverseKeywords[rgb];
625
- if (reversed) {
626
- return reversed;
627
- }
628
-
629
- let currentClosestDistance = Infinity;
630
- let currentClosestKeyword;
631
-
632
- for (const keyword of Object.keys(colorName)) {
633
- const value = colorName[keyword];
634
-
635
- // Compute comparative distance
636
- const distance = comparativeDistance(rgb, value);
637
-
638
- // Check if its less, if so set as closest
639
- if (distance < currentClosestDistance) {
640
- currentClosestDistance = distance;
641
- currentClosestKeyword = keyword;
642
- }
643
- }
644
-
645
- return currentClosestKeyword;
646
- };
647
-
648
- convert$1.keyword.rgb = function (keyword) {
649
- return colorName[keyword];
650
- };
651
-
652
- convert$1.rgb.xyz = function (rgb) {
653
- let r = rgb[0] / 255;
654
- let g = rgb[1] / 255;
655
- let b = rgb[2] / 255;
656
-
657
- // Assume sRGB
658
- r = r > 0.04045 ? (((r + 0.055) / 1.055) ** 2.4) : (r / 12.92);
659
- g = g > 0.04045 ? (((g + 0.055) / 1.055) ** 2.4) : (g / 12.92);
660
- b = b > 0.04045 ? (((b + 0.055) / 1.055) ** 2.4) : (b / 12.92);
661
-
662
- const x = (r * 0.4124) + (g * 0.3576) + (b * 0.1805);
663
- const y = (r * 0.2126) + (g * 0.7152) + (b * 0.0722);
664
- const z = (r * 0.0193) + (g * 0.1192) + (b * 0.9505);
665
-
666
- return [x * 100, y * 100, z * 100];
667
- };
668
-
669
- convert$1.rgb.lab = function (rgb) {
670
- const xyz = convert$1.rgb.xyz(rgb);
671
- let x = xyz[0];
672
- let y = xyz[1];
673
- let z = xyz[2];
674
-
675
- x /= 95.047;
676
- y /= 100;
677
- z /= 108.883;
678
-
679
- x = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116);
680
- y = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116);
681
- z = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116);
682
-
683
- const l = (116 * y) - 16;
684
- const a = 500 * (x - y);
685
- const b = 200 * (y - z);
686
-
687
- return [l, a, b];
688
- };
689
-
690
- convert$1.hsl.rgb = function (hsl) {
691
- const h = hsl[0] / 360;
692
- const s = hsl[1] / 100;
693
- const l = hsl[2] / 100;
694
- let t2;
695
- let t3;
696
- let val;
697
-
698
- if (s === 0) {
699
- val = l * 255;
700
- return [val, val, val];
701
- }
702
-
703
- if (l < 0.5) {
704
- t2 = l * (1 + s);
705
- } else {
706
- t2 = l + s - l * s;
707
- }
708
-
709
- const t1 = 2 * l - t2;
710
-
711
- const rgb = [0, 0, 0];
712
- for (let i = 0; i < 3; i++) {
713
- t3 = h + 1 / 3 * -(i - 1);
714
- if (t3 < 0) {
715
- t3++;
716
- }
717
-
718
- if (t3 > 1) {
719
- t3--;
720
- }
721
-
722
- if (6 * t3 < 1) {
723
- val = t1 + (t2 - t1) * 6 * t3;
724
- } else if (2 * t3 < 1) {
725
- val = t2;
726
- } else if (3 * t3 < 2) {
727
- val = t1 + (t2 - t1) * (2 / 3 - t3) * 6;
728
- } else {
729
- val = t1;
730
- }
731
-
732
- rgb[i] = val * 255;
733
- }
734
-
735
- return rgb;
736
- };
737
-
738
- convert$1.hsl.hsv = function (hsl) {
739
- const h = hsl[0];
740
- let s = hsl[1] / 100;
741
- let l = hsl[2] / 100;
742
- let smin = s;
743
- const lmin = Math.max(l, 0.01);
744
-
745
- l *= 2;
746
- s *= (l <= 1) ? l : 2 - l;
747
- smin *= lmin <= 1 ? lmin : 2 - lmin;
748
- const v = (l + s) / 2;
749
- const sv = l === 0 ? (2 * smin) / (lmin + smin) : (2 * s) / (l + s);
750
-
751
- return [h, sv * 100, v * 100];
752
- };
753
-
754
- convert$1.hsv.rgb = function (hsv) {
755
- const h = hsv[0] / 60;
756
- const s = hsv[1] / 100;
757
- let v = hsv[2] / 100;
758
- const hi = Math.floor(h) % 6;
759
-
760
- const f = h - Math.floor(h);
761
- const p = 255 * v * (1 - s);
762
- const q = 255 * v * (1 - (s * f));
763
- const t = 255 * v * (1 - (s * (1 - f)));
764
- v *= 255;
765
-
766
- switch (hi) {
767
- case 0:
768
- return [v, t, p];
769
- case 1:
770
- return [q, v, p];
771
- case 2:
772
- return [p, v, t];
773
- case 3:
774
- return [p, q, v];
775
- case 4:
776
- return [t, p, v];
777
- case 5:
778
- return [v, p, q];
779
- }
780
- };
781
-
782
- convert$1.hsv.hsl = function (hsv) {
783
- const h = hsv[0];
784
- const s = hsv[1] / 100;
785
- const v = hsv[2] / 100;
786
- const vmin = Math.max(v, 0.01);
787
- let sl;
788
- let l;
789
-
790
- l = (2 - s) * v;
791
- const lmin = (2 - s) * vmin;
792
- sl = s * vmin;
793
- sl /= (lmin <= 1) ? lmin : 2 - lmin;
794
- sl = sl || 0;
795
- l /= 2;
796
-
797
- return [h, sl * 100, l * 100];
798
- };
799
-
800
- // http://dev.w3.org/csswg/css-color/#hwb-to-rgb
801
- convert$1.hwb.rgb = function (hwb) {
802
- const h = hwb[0] / 360;
803
- let wh = hwb[1] / 100;
804
- let bl = hwb[2] / 100;
805
- const ratio = wh + bl;
806
- let f;
807
-
808
- // Wh + bl cant be > 1
809
- if (ratio > 1) {
810
- wh /= ratio;
811
- bl /= ratio;
812
- }
813
-
814
- const i = Math.floor(6 * h);
815
- const v = 1 - bl;
816
- f = 6 * h - i;
817
-
818
- if ((i & 0x01) !== 0) {
819
- f = 1 - f;
820
- }
821
-
822
- const n = wh + f * (v - wh); // Linear interpolation
823
-
824
- let r;
825
- let g;
826
- let b;
827
- /* eslint-disable max-statements-per-line,no-multi-spaces */
828
- switch (i) {
829
- default:
830
- case 6:
831
- case 0: r = v; g = n; b = wh; break;
832
- case 1: r = n; g = v; b = wh; break;
833
- case 2: r = wh; g = v; b = n; break;
834
- case 3: r = wh; g = n; b = v; break;
835
- case 4: r = n; g = wh; b = v; break;
836
- case 5: r = v; g = wh; b = n; break;
837
- }
838
- /* eslint-enable max-statements-per-line,no-multi-spaces */
839
-
840
- return [r * 255, g * 255, b * 255];
841
- };
842
-
843
- convert$1.cmyk.rgb = function (cmyk) {
844
- const c = cmyk[0] / 100;
845
- const m = cmyk[1] / 100;
846
- const y = cmyk[2] / 100;
847
- const k = cmyk[3] / 100;
848
-
849
- const r = 1 - Math.min(1, c * (1 - k) + k);
850
- const g = 1 - Math.min(1, m * (1 - k) + k);
851
- const b = 1 - Math.min(1, y * (1 - k) + k);
852
-
853
- return [r * 255, g * 255, b * 255];
854
- };
855
-
856
- convert$1.xyz.rgb = function (xyz) {
857
- const x = xyz[0] / 100;
858
- const y = xyz[1] / 100;
859
- const z = xyz[2] / 100;
860
- let r;
861
- let g;
862
- let b;
863
-
864
- r = (x * 3.2406) + (y * -1.5372) + (z * -0.4986);
865
- g = (x * -0.9689) + (y * 1.8758) + (z * 0.0415);
866
- b = (x * 0.0557) + (y * -0.2040) + (z * 1.0570);
867
-
868
- // Assume sRGB
869
- r = r > 0.0031308
870
- ? ((1.055 * (r ** (1.0 / 2.4))) - 0.055)
871
- : r * 12.92;
872
-
873
- g = g > 0.0031308
874
- ? ((1.055 * (g ** (1.0 / 2.4))) - 0.055)
875
- : g * 12.92;
876
-
877
- b = b > 0.0031308
878
- ? ((1.055 * (b ** (1.0 / 2.4))) - 0.055)
879
- : b * 12.92;
880
-
881
- r = Math.min(Math.max(0, r), 1);
882
- g = Math.min(Math.max(0, g), 1);
883
- b = Math.min(Math.max(0, b), 1);
884
-
885
- return [r * 255, g * 255, b * 255];
886
- };
887
-
888
- convert$1.xyz.lab = function (xyz) {
889
- let x = xyz[0];
890
- let y = xyz[1];
891
- let z = xyz[2];
892
-
893
- x /= 95.047;
894
- y /= 100;
895
- z /= 108.883;
896
-
897
- x = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116);
898
- y = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116);
899
- z = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116);
900
-
901
- const l = (116 * y) - 16;
902
- const a = 500 * (x - y);
903
- const b = 200 * (y - z);
904
-
905
- return [l, a, b];
906
- };
907
-
908
- convert$1.lab.xyz = function (lab) {
909
- const l = lab[0];
910
- const a = lab[1];
911
- const b = lab[2];
912
- let x;
913
- let y;
914
- let z;
915
-
916
- y = (l + 16) / 116;
917
- x = a / 500 + y;
918
- z = y - b / 200;
919
-
920
- const y2 = y ** 3;
921
- const x2 = x ** 3;
922
- const z2 = z ** 3;
923
- y = y2 > 0.008856 ? y2 : (y - 16 / 116) / 7.787;
924
- x = x2 > 0.008856 ? x2 : (x - 16 / 116) / 7.787;
925
- z = z2 > 0.008856 ? z2 : (z - 16 / 116) / 7.787;
926
-
927
- x *= 95.047;
928
- y *= 100;
929
- z *= 108.883;
930
-
931
- return [x, y, z];
932
- };
933
-
934
- convert$1.lab.lch = function (lab) {
935
- const l = lab[0];
936
- const a = lab[1];
937
- const b = lab[2];
938
- let h;
939
-
940
- const hr = Math.atan2(b, a);
941
- h = hr * 360 / 2 / Math.PI;
942
-
943
- if (h < 0) {
944
- h += 360;
945
- }
946
-
947
- const c = Math.sqrt(a * a + b * b);
948
-
949
- return [l, c, h];
950
- };
951
-
952
- convert$1.lch.lab = function (lch) {
953
- const l = lch[0];
954
- const c = lch[1];
955
- const h = lch[2];
956
-
957
- const hr = h / 360 * 2 * Math.PI;
958
- const a = c * Math.cos(hr);
959
- const b = c * Math.sin(hr);
960
-
961
- return [l, a, b];
962
- };
963
-
964
- convert$1.rgb.ansi16 = function (args, saturation = null) {
965
- const [r, g, b] = args;
966
- let value = saturation === null ? convert$1.rgb.hsv(args)[2] : saturation; // Hsv -> ansi16 optimization
967
-
968
- value = Math.round(value / 50);
969
-
970
- if (value === 0) {
971
- return 30;
972
- }
973
-
974
- let ansi = 30
975
- + ((Math.round(b / 255) << 2)
976
- | (Math.round(g / 255) << 1)
977
- | Math.round(r / 255));
978
-
979
- if (value === 2) {
980
- ansi += 60;
981
- }
982
-
983
- return ansi;
984
- };
985
-
986
- convert$1.hsv.ansi16 = function (args) {
987
- // Optimization here; we already know the value and don't need to get
988
- // it converted for us.
989
- return convert$1.rgb.ansi16(convert$1.hsv.rgb(args), args[2]);
990
- };
991
-
992
- convert$1.rgb.ansi256 = function (args) {
993
- const r = args[0];
994
- const g = args[1];
995
- const b = args[2];
996
-
997
- // We use the extended greyscale palette here, with the exception of
998
- // black and white. normal palette only has 4 greyscale shades.
999
- if (r === g && g === b) {
1000
- if (r < 8) {
1001
- return 16;
1002
- }
1003
-
1004
- if (r > 248) {
1005
- return 231;
1006
- }
1007
-
1008
- return Math.round(((r - 8) / 247) * 24) + 232;
1009
- }
1010
-
1011
- const ansi = 16
1012
- + (36 * Math.round(r / 255 * 5))
1013
- + (6 * Math.round(g / 255 * 5))
1014
- + Math.round(b / 255 * 5);
1015
-
1016
- return ansi;
1017
- };
1018
-
1019
- convert$1.ansi16.rgb = function (args) {
1020
- let color = args % 10;
1021
-
1022
- // Handle greyscale
1023
- if (color === 0 || color === 7) {
1024
- if (args > 50) {
1025
- color += 3.5;
1026
- }
1027
-
1028
- color = color / 10.5 * 255;
1029
-
1030
- return [color, color, color];
1031
- }
1032
-
1033
- const mult = (~~(args > 50) + 1) * 0.5;
1034
- const r = ((color & 1) * mult) * 255;
1035
- const g = (((color >> 1) & 1) * mult) * 255;
1036
- const b = (((color >> 2) & 1) * mult) * 255;
1037
-
1038
- return [r, g, b];
1039
- };
1040
-
1041
- convert$1.ansi256.rgb = function (args) {
1042
- // Handle greyscale
1043
- if (args >= 232) {
1044
- const c = (args - 232) * 10 + 8;
1045
- return [c, c, c];
1046
- }
1047
-
1048
- args -= 16;
1049
-
1050
- let rem;
1051
- const r = Math.floor(args / 36) / 5 * 255;
1052
- const g = Math.floor((rem = args % 36) / 6) / 5 * 255;
1053
- const b = (rem % 6) / 5 * 255;
1054
-
1055
- return [r, g, b];
1056
- };
1057
-
1058
- convert$1.rgb.hex = function (args) {
1059
- const integer = ((Math.round(args[0]) & 0xFF) << 16)
1060
- + ((Math.round(args[1]) & 0xFF) << 8)
1061
- + (Math.round(args[2]) & 0xFF);
1062
-
1063
- const string = integer.toString(16).toUpperCase();
1064
- return '000000'.substring(string.length) + string;
1065
- };
1066
-
1067
- convert$1.hex.rgb = function (args) {
1068
- const match = args.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);
1069
- if (!match) {
1070
- return [0, 0, 0];
1071
- }
1072
-
1073
- let colorString = match[0];
1074
-
1075
- if (match[0].length === 3) {
1076
- colorString = colorString.split('').map(char => {
1077
- return char + char;
1078
- }).join('');
1079
- }
1080
-
1081
- const integer = parseInt(colorString, 16);
1082
- const r = (integer >> 16) & 0xFF;
1083
- const g = (integer >> 8) & 0xFF;
1084
- const b = integer & 0xFF;
1085
-
1086
- return [r, g, b];
1087
- };
1088
-
1089
- convert$1.rgb.hcg = function (rgb) {
1090
- const r = rgb[0] / 255;
1091
- const g = rgb[1] / 255;
1092
- const b = rgb[2] / 255;
1093
- const max = Math.max(Math.max(r, g), b);
1094
- const min = Math.min(Math.min(r, g), b);
1095
- const chroma = (max - min);
1096
- let grayscale;
1097
- let hue;
1098
-
1099
- if (chroma < 1) {
1100
- grayscale = min / (1 - chroma);
1101
- } else {
1102
- grayscale = 0;
1103
- }
1104
-
1105
- if (chroma <= 0) {
1106
- hue = 0;
1107
- } else
1108
- if (max === r) {
1109
- hue = ((g - b) / chroma) % 6;
1110
- } else
1111
- if (max === g) {
1112
- hue = 2 + (b - r) / chroma;
1113
- } else {
1114
- hue = 4 + (r - g) / chroma;
1115
- }
1116
-
1117
- hue /= 6;
1118
- hue %= 1;
1119
-
1120
- return [hue * 360, chroma * 100, grayscale * 100];
1121
- };
1122
-
1123
- convert$1.hsl.hcg = function (hsl) {
1124
- const s = hsl[1] / 100;
1125
- const l = hsl[2] / 100;
1126
-
1127
- const c = l < 0.5 ? (2.0 * s * l) : (2.0 * s * (1.0 - l));
1128
-
1129
- let f = 0;
1130
- if (c < 1.0) {
1131
- f = (l - 0.5 * c) / (1.0 - c);
1132
- }
1133
-
1134
- return [hsl[0], c * 100, f * 100];
1135
- };
1136
-
1137
- convert$1.hsv.hcg = function (hsv) {
1138
- const s = hsv[1] / 100;
1139
- const v = hsv[2] / 100;
1140
-
1141
- const c = s * v;
1142
- let f = 0;
1143
-
1144
- if (c < 1.0) {
1145
- f = (v - c) / (1 - c);
1146
- }
1147
-
1148
- return [hsv[0], c * 100, f * 100];
1149
- };
1150
-
1151
- convert$1.hcg.rgb = function (hcg) {
1152
- const h = hcg[0] / 360;
1153
- const c = hcg[1] / 100;
1154
- const g = hcg[2] / 100;
1155
-
1156
- if (c === 0.0) {
1157
- return [g * 255, g * 255, g * 255];
1158
- }
1159
-
1160
- const pure = [0, 0, 0];
1161
- const hi = (h % 1) * 6;
1162
- const v = hi % 1;
1163
- const w = 1 - v;
1164
- let mg = 0;
1165
-
1166
- /* eslint-disable max-statements-per-line */
1167
- switch (Math.floor(hi)) {
1168
- case 0:
1169
- pure[0] = 1; pure[1] = v; pure[2] = 0; break;
1170
- case 1:
1171
- pure[0] = w; pure[1] = 1; pure[2] = 0; break;
1172
- case 2:
1173
- pure[0] = 0; pure[1] = 1; pure[2] = v; break;
1174
- case 3:
1175
- pure[0] = 0; pure[1] = w; pure[2] = 1; break;
1176
- case 4:
1177
- pure[0] = v; pure[1] = 0; pure[2] = 1; break;
1178
- default:
1179
- pure[0] = 1; pure[1] = 0; pure[2] = w;
1180
- }
1181
- /* eslint-enable max-statements-per-line */
1182
-
1183
- mg = (1.0 - c) * g;
1184
-
1185
- return [
1186
- (c * pure[0] + mg) * 255,
1187
- (c * pure[1] + mg) * 255,
1188
- (c * pure[2] + mg) * 255
1189
- ];
1190
- };
1191
-
1192
- convert$1.hcg.hsv = function (hcg) {
1193
- const c = hcg[1] / 100;
1194
- const g = hcg[2] / 100;
1195
-
1196
- const v = c + g * (1.0 - c);
1197
- let f = 0;
1198
-
1199
- if (v > 0.0) {
1200
- f = c / v;
1201
- }
1202
-
1203
- return [hcg[0], f * 100, v * 100];
1204
- };
1205
-
1206
- convert$1.hcg.hsl = function (hcg) {
1207
- const c = hcg[1] / 100;
1208
- const g = hcg[2] / 100;
1209
-
1210
- const l = g * (1.0 - c) + 0.5 * c;
1211
- let s = 0;
1212
-
1213
- if (l > 0.0 && l < 0.5) {
1214
- s = c / (2 * l);
1215
- } else
1216
- if (l >= 0.5 && l < 1.0) {
1217
- s = c / (2 * (1 - l));
1218
- }
1219
-
1220
- return [hcg[0], s * 100, l * 100];
1221
- };
1222
-
1223
- convert$1.hcg.hwb = function (hcg) {
1224
- const c = hcg[1] / 100;
1225
- const g = hcg[2] / 100;
1226
- const v = c + g * (1.0 - c);
1227
- return [hcg[0], (v - c) * 100, (1 - v) * 100];
1228
- };
1229
-
1230
- convert$1.hwb.hcg = function (hwb) {
1231
- const w = hwb[1] / 100;
1232
- const b = hwb[2] / 100;
1233
- const v = 1 - b;
1234
- const c = v - w;
1235
- let g = 0;
1236
-
1237
- if (c < 1) {
1238
- g = (v - c) / (1 - c);
1239
- }
1240
-
1241
- return [hwb[0], c * 100, g * 100];
1242
- };
1243
-
1244
- convert$1.apple.rgb = function (apple) {
1245
- return [(apple[0] / 65535) * 255, (apple[1] / 65535) * 255, (apple[2] / 65535) * 255];
1246
- };
1247
-
1248
- convert$1.rgb.apple = function (rgb) {
1249
- return [(rgb[0] / 255) * 65535, (rgb[1] / 255) * 65535, (rgb[2] / 255) * 65535];
1250
- };
1251
-
1252
- convert$1.gray.rgb = function (args) {
1253
- return [args[0] / 100 * 255, args[0] / 100 * 255, args[0] / 100 * 255];
1254
- };
1255
-
1256
- convert$1.gray.hsl = function (args) {
1257
- return [0, 0, args[0]];
1258
- };
1259
-
1260
- convert$1.gray.hsv = convert$1.gray.hsl;
1261
-
1262
- convert$1.gray.hwb = function (gray) {
1263
- return [0, 100, gray[0]];
1264
- };
1265
-
1266
- convert$1.gray.cmyk = function (gray) {
1267
- return [0, 0, 0, gray[0]];
1268
- };
1269
-
1270
- convert$1.gray.lab = function (gray) {
1271
- return [gray[0], 0, 0];
1272
- };
1273
-
1274
- convert$1.gray.hex = function (gray) {
1275
- const val = Math.round(gray[0] / 100 * 255) & 0xFF;
1276
- const integer = (val << 16) + (val << 8) + val;
1277
-
1278
- const string = integer.toString(16).toUpperCase();
1279
- return '000000'.substring(string.length) + string;
1280
- };
1281
-
1282
- convert$1.rgb.gray = function (rgb) {
1283
- const val = (rgb[0] + rgb[1] + rgb[2]) / 3;
1284
- return [val / 255 * 100];
1285
- };
1286
-
1287
- /*
1288
- This function routes a model to all other models.
1289
-
1290
- all functions that are routed have a property `.conversion` attached
1291
- to the returned synthetic function. This property is an array
1292
- of strings, each with the steps in between the 'from' and 'to'
1293
- color models (inclusive).
1294
-
1295
- conversions that are not possible simply are not included.
1296
- */
1297
-
1298
- function buildGraph() {
1299
- const graph = {};
1300
- // https://jsperf.com/object-keys-vs-for-in-with-closure/3
1301
- const models = Object.keys(conversions);
1302
-
1303
- for (let len = models.length, i = 0; i < len; i++) {
1304
- graph[models[i]] = {
1305
- // http://jsperf.com/1-vs-infinity
1306
- // micro-opt, but this is simple.
1307
- distance: -1,
1308
- parent: null
1309
- };
1310
- }
1311
-
1312
- return graph;
1313
- }
1314
-
1315
- // https://en.wikipedia.org/wiki/Breadth-first_search
1316
- function deriveBFS(fromModel) {
1317
- const graph = buildGraph();
1318
- const queue = [fromModel]; // Unshift -> queue -> pop
1319
-
1320
- graph[fromModel].distance = 0;
1321
-
1322
- while (queue.length) {
1323
- const current = queue.pop();
1324
- const adjacents = Object.keys(conversions[current]);
1325
-
1326
- for (let len = adjacents.length, i = 0; i < len; i++) {
1327
- const adjacent = adjacents[i];
1328
- const node = graph[adjacent];
1329
-
1330
- if (node.distance === -1) {
1331
- node.distance = graph[current].distance + 1;
1332
- node.parent = current;
1333
- queue.unshift(adjacent);
1334
- }
1335
- }
1336
- }
1337
-
1338
- return graph;
1339
- }
1340
-
1341
- function link(from, to) {
1342
- return function (args) {
1343
- return to(from(args));
1344
- };
1345
- }
1346
-
1347
- function wrapConversion(toModel, graph) {
1348
- const path = [graph[toModel].parent, toModel];
1349
- let fn = conversions[graph[toModel].parent][toModel];
1350
-
1351
- let cur = graph[toModel].parent;
1352
- while (graph[cur].parent) {
1353
- path.unshift(graph[cur].parent);
1354
- fn = link(conversions[graph[cur].parent][cur], fn);
1355
- cur = graph[cur].parent;
1356
- }
1357
-
1358
- fn.conversion = path;
1359
- return fn;
1360
- }
1361
-
1362
- var route = function (fromModel) {
1363
- const graph = deriveBFS(fromModel);
1364
- const conversion = {};
1365
-
1366
- const models = Object.keys(graph);
1367
- for (let len = models.length, i = 0; i < len; i++) {
1368
- const toModel = models[i];
1369
- const node = graph[toModel];
1370
-
1371
- if (node.parent === null) {
1372
- // No possible conversion, or this node is the source model.
1373
- continue;
1374
- }
1375
-
1376
- conversion[toModel] = wrapConversion(toModel, graph);
1377
- }
1378
-
1379
- return conversion;
1380
- };
1381
-
1382
- const convert = {};
1383
-
1384
- const models = Object.keys(conversions);
1385
-
1386
- function wrapRaw(fn) {
1387
- const wrappedFn = function (...args) {
1388
- const arg0 = args[0];
1389
- if (arg0 === undefined || arg0 === null) {
1390
- return arg0;
1391
- }
1392
-
1393
- if (arg0.length > 1) {
1394
- args = arg0;
1395
- }
1396
-
1397
- return fn(args);
1398
- };
1399
-
1400
- // Preserve .conversion property if there is one
1401
- if ('conversion' in fn) {
1402
- wrappedFn.conversion = fn.conversion;
1403
- }
1404
-
1405
- return wrappedFn;
1406
- }
1407
-
1408
- function wrapRounded(fn) {
1409
- const wrappedFn = function (...args) {
1410
- const arg0 = args[0];
1411
-
1412
- if (arg0 === undefined || arg0 === null) {
1413
- return arg0;
1414
- }
1415
-
1416
- if (arg0.length > 1) {
1417
- args = arg0;
1418
- }
1419
-
1420
- const result = fn(args);
1421
-
1422
- // We're assuming the result is an array here.
1423
- // see notice in conversions.js; don't use box types
1424
- // in conversion functions.
1425
- if (typeof result === 'object') {
1426
- for (let len = result.length, i = 0; i < len; i++) {
1427
- result[i] = Math.round(result[i]);
1428
- }
1429
- }
1430
-
1431
- return result;
1432
- };
1433
-
1434
- // Preserve .conversion property if there is one
1435
- if ('conversion' in fn) {
1436
- wrappedFn.conversion = fn.conversion;
1437
- }
1438
-
1439
- return wrappedFn;
1440
- }
1441
-
1442
- models.forEach(fromModel => {
1443
- convert[fromModel] = {};
1444
-
1445
- Object.defineProperty(convert[fromModel], 'channels', {value: conversions[fromModel].channels});
1446
- Object.defineProperty(convert[fromModel], 'labels', {value: conversions[fromModel].labels});
1447
-
1448
- const routes = route(fromModel);
1449
- const routeModels = Object.keys(routes);
1450
-
1451
- routeModels.forEach(toModel => {
1452
- const fn = routes[toModel];
1453
-
1454
- convert[fromModel][toModel] = wrapRounded(fn);
1455
- convert[fromModel][toModel].raw = wrapRaw(fn);
1456
- });
1457
- });
1458
-
1459
- var colorConvert = convert;
1460
-
1461
- const skippedModels = [
1462
- // To be honest, I don't really feel like keyword belongs in color convert, but eh.
1463
- 'keyword',
1464
-
1465
- // Gray conflicts with some method names, and has its own method defined.
1466
- 'gray',
1467
-
1468
- // Shouldn't really be in color-convert either...
1469
- 'hex',
1470
- ];
1471
-
1472
- const hashedModelKeys = {};
1473
- for (const model of Object.keys(colorConvert)) {
1474
- hashedModelKeys[[...colorConvert[model].labels].sort().join('')] = model;
1475
- }
1476
-
1477
- const limiters = {};
1478
-
1479
- function Color(object, model) {
1480
- if (!(this instanceof Color)) {
1481
- return new Color(object, model);
1482
- }
1483
-
1484
- if (model && model in skippedModels) {
1485
- model = null;
1486
- }
1487
-
1488
- if (model && !(model in colorConvert)) {
1489
- throw new Error('Unknown model: ' + model);
1490
- }
1491
-
1492
- let i;
1493
- let channels;
1494
-
1495
- if (object == null) { // eslint-disable-line no-eq-null,eqeqeq
1496
- this.model = 'rgb';
1497
- this.color = [0, 0, 0];
1498
- this.valpha = 1;
1499
- } else if (object instanceof Color) {
1500
- this.model = object.model;
1501
- this.color = [...object.color];
1502
- this.valpha = object.valpha;
1503
- } else if (typeof object === 'string') {
1504
- const result = colorString.get(object);
1505
- if (result === null) {
1506
- throw new Error('Unable to parse color from string: ' + object);
1507
- }
1508
-
1509
- this.model = result.model;
1510
- channels = colorConvert[this.model].channels;
1511
- this.color = result.value.slice(0, channels);
1512
- this.valpha = typeof result.value[channels] === 'number' ? result.value[channels] : 1;
1513
- } else if (object.length > 0) {
1514
- this.model = model || 'rgb';
1515
- channels = colorConvert[this.model].channels;
1516
- const newArray = Array.prototype.slice.call(object, 0, channels);
1517
- this.color = zeroArray(newArray, channels);
1518
- this.valpha = typeof object[channels] === 'number' ? object[channels] : 1;
1519
- } else if (typeof object === 'number') {
1520
- // This is always RGB - can be converted later on.
1521
- this.model = 'rgb';
1522
- this.color = [
1523
- (object >> 16) & 0xFF,
1524
- (object >> 8) & 0xFF,
1525
- object & 0xFF,
1526
- ];
1527
- this.valpha = 1;
1528
- } else {
1529
- this.valpha = 1;
1530
-
1531
- const keys = Object.keys(object);
1532
- if ('alpha' in object) {
1533
- keys.splice(keys.indexOf('alpha'), 1);
1534
- this.valpha = typeof object.alpha === 'number' ? object.alpha : 0;
1535
- }
1536
-
1537
- const hashedKeys = keys.sort().join('');
1538
- if (!(hashedKeys in hashedModelKeys)) {
1539
- throw new Error('Unable to parse color from object: ' + JSON.stringify(object));
1540
- }
1541
-
1542
- this.model = hashedModelKeys[hashedKeys];
1543
-
1544
- const {labels} = colorConvert[this.model];
1545
- const color = [];
1546
- for (i = 0; i < labels.length; i++) {
1547
- color.push(object[labels[i]]);
1548
- }
1549
-
1550
- this.color = zeroArray(color);
1551
- }
1552
-
1553
- // Perform limitations (clamping, etc.)
1554
- if (limiters[this.model]) {
1555
- channels = colorConvert[this.model].channels;
1556
- for (i = 0; i < channels; i++) {
1557
- const limit = limiters[this.model][i];
1558
- if (limit) {
1559
- this.color[i] = limit(this.color[i]);
1560
- }
1561
- }
1562
- }
1563
-
1564
- this.valpha = Math.max(0, Math.min(1, this.valpha));
1565
-
1566
- if (Object.freeze) {
1567
- Object.freeze(this);
1568
- }
1569
- }
1570
-
1571
- Color.prototype = {
1572
- toString() {
1573
- return this.string();
1574
- },
1575
-
1576
- toJSON() {
1577
- return this[this.model]();
1578
- },
1579
-
1580
- string(places) {
1581
- let self = this.model in colorString.to ? this : this.rgb();
1582
- self = self.round(typeof places === 'number' ? places : 1);
1583
- const args = self.valpha === 1 ? self.color : [...self.color, this.valpha];
1584
- return colorString.to[self.model](args);
1585
- },
1586
-
1587
- percentString(places) {
1588
- const self = this.rgb().round(typeof places === 'number' ? places : 1);
1589
- const args = self.valpha === 1 ? self.color : [...self.color, this.valpha];
1590
- return colorString.to.rgb.percent(args);
1591
- },
1592
-
1593
- array() {
1594
- return this.valpha === 1 ? [...this.color] : [...this.color, this.valpha];
1595
- },
1596
-
1597
- object() {
1598
- const result = {};
1599
- const {channels} = colorConvert[this.model];
1600
- const {labels} = colorConvert[this.model];
1601
-
1602
- for (let i = 0; i < channels; i++) {
1603
- result[labels[i]] = this.color[i];
1604
- }
1605
-
1606
- if (this.valpha !== 1) {
1607
- result.alpha = this.valpha;
1608
- }
1609
-
1610
- return result;
1611
- },
1612
-
1613
- unitArray() {
1614
- const rgb = this.rgb().color;
1615
- rgb[0] /= 255;
1616
- rgb[1] /= 255;
1617
- rgb[2] /= 255;
1618
-
1619
- if (this.valpha !== 1) {
1620
- rgb.push(this.valpha);
1621
- }
1622
-
1623
- return rgb;
1624
- },
1625
-
1626
- unitObject() {
1627
- const rgb = this.rgb().object();
1628
- rgb.r /= 255;
1629
- rgb.g /= 255;
1630
- rgb.b /= 255;
1631
-
1632
- if (this.valpha !== 1) {
1633
- rgb.alpha = this.valpha;
1634
- }
1635
-
1636
- return rgb;
1637
- },
1638
-
1639
- round(places) {
1640
- places = Math.max(places || 0, 0);
1641
- return new Color([...this.color.map(roundToPlace(places)), this.valpha], this.model);
1642
- },
1643
-
1644
- alpha(value) {
1645
- if (value !== undefined) {
1646
- return new Color([...this.color, Math.max(0, Math.min(1, value))], this.model);
1647
- }
1648
-
1649
- return this.valpha;
1650
- },
1651
-
1652
- // Rgb
1653
- red: getset('rgb', 0, maxfn(255)),
1654
- green: getset('rgb', 1, maxfn(255)),
1655
- blue: getset('rgb', 2, maxfn(255)),
1656
-
1657
- hue: getset(['hsl', 'hsv', 'hsl', 'hwb', 'hcg'], 0, value => ((value % 360) + 360) % 360),
1658
-
1659
- saturationl: getset('hsl', 1, maxfn(100)),
1660
- lightness: getset('hsl', 2, maxfn(100)),
1661
-
1662
- saturationv: getset('hsv', 1, maxfn(100)),
1663
- value: getset('hsv', 2, maxfn(100)),
1664
-
1665
- chroma: getset('hcg', 1, maxfn(100)),
1666
- gray: getset('hcg', 2, maxfn(100)),
1667
-
1668
- white: getset('hwb', 1, maxfn(100)),
1669
- wblack: getset('hwb', 2, maxfn(100)),
1670
-
1671
- cyan: getset('cmyk', 0, maxfn(100)),
1672
- magenta: getset('cmyk', 1, maxfn(100)),
1673
- yellow: getset('cmyk', 2, maxfn(100)),
1674
- black: getset('cmyk', 3, maxfn(100)),
1675
-
1676
- x: getset('xyz', 0, maxfn(95.047)),
1677
- y: getset('xyz', 1, maxfn(100)),
1678
- z: getset('xyz', 2, maxfn(108.833)),
1679
-
1680
- l: getset('lab', 0, maxfn(100)),
1681
- a: getset('lab', 1),
1682
- b: getset('lab', 2),
1683
-
1684
- keyword(value) {
1685
- if (value !== undefined) {
1686
- return new Color(value);
1687
- }
1688
-
1689
- return colorConvert[this.model].keyword(this.color);
1690
- },
1691
-
1692
- hex(value) {
1693
- if (value !== undefined) {
1694
- return new Color(value);
1695
- }
1696
-
1697
- return colorString.to.hex(this.rgb().round().color);
1698
- },
1699
-
1700
- hexa(value) {
1701
- if (value !== undefined) {
1702
- return new Color(value);
1703
- }
1704
-
1705
- const rgbArray = this.rgb().round().color;
1706
-
1707
- let alphaHex = Math.round(this.valpha * 255).toString(16).toUpperCase();
1708
- if (alphaHex.length === 1) {
1709
- alphaHex = '0' + alphaHex;
1710
- }
1711
-
1712
- return colorString.to.hex(rgbArray) + alphaHex;
1713
- },
1714
-
1715
- rgbNumber() {
1716
- const rgb = this.rgb().color;
1717
- return ((rgb[0] & 0xFF) << 16) | ((rgb[1] & 0xFF) << 8) | (rgb[2] & 0xFF);
1718
- },
1719
-
1720
- luminosity() {
1721
- // http://www.w3.org/TR/WCAG20/#relativeluminancedef
1722
- const rgb = this.rgb().color;
1723
-
1724
- const lum = [];
1725
- for (const [i, element] of rgb.entries()) {
1726
- const chan = element / 255;
1727
- lum[i] = (chan <= 0.04045) ? chan / 12.92 : ((chan + 0.055) / 1.055) ** 2.4;
1728
- }
1729
-
1730
- return 0.2126 * lum[0] + 0.7152 * lum[1] + 0.0722 * lum[2];
1731
- },
1732
-
1733
- contrast(color2) {
1734
- // http://www.w3.org/TR/WCAG20/#contrast-ratiodef
1735
- const lum1 = this.luminosity();
1736
- const lum2 = color2.luminosity();
1737
-
1738
- if (lum1 > lum2) {
1739
- return (lum1 + 0.05) / (lum2 + 0.05);
1740
- }
1741
-
1742
- return (lum2 + 0.05) / (lum1 + 0.05);
1743
- },
1744
-
1745
- level(color2) {
1746
- // https://www.w3.org/TR/WCAG/#contrast-enhanced
1747
- const contrastRatio = this.contrast(color2);
1748
- if (contrastRatio >= 7) {
1749
- return 'AAA';
1750
- }
1751
-
1752
- return (contrastRatio >= 4.5) ? 'AA' : '';
1753
- },
1754
-
1755
- isDark() {
1756
- // YIQ equation from http://24ways.org/2010/calculating-color-contrast
1757
- const rgb = this.rgb().color;
1758
- const yiq = (rgb[0] * 2126 + rgb[1] * 7152 + rgb[2] * 722) / 10000;
1759
- return yiq < 128;
1760
- },
1761
-
1762
- isLight() {
1763
- return !this.isDark();
1764
- },
1765
-
1766
- negate() {
1767
- const rgb = this.rgb();
1768
- for (let i = 0; i < 3; i++) {
1769
- rgb.color[i] = 255 - rgb.color[i];
1770
- }
1771
-
1772
- return rgb;
1773
- },
1774
-
1775
- lighten(ratio) {
1776
- const hsl = this.hsl();
1777
- hsl.color[2] += hsl.color[2] * ratio;
1778
- return hsl;
1779
- },
1780
-
1781
- darken(ratio) {
1782
- const hsl = this.hsl();
1783
- hsl.color[2] -= hsl.color[2] * ratio;
1784
- return hsl;
1785
- },
1786
-
1787
- saturate(ratio) {
1788
- const hsl = this.hsl();
1789
- hsl.color[1] += hsl.color[1] * ratio;
1790
- return hsl;
1791
- },
1792
-
1793
- desaturate(ratio) {
1794
- const hsl = this.hsl();
1795
- hsl.color[1] -= hsl.color[1] * ratio;
1796
- return hsl;
1797
- },
1798
-
1799
- whiten(ratio) {
1800
- const hwb = this.hwb();
1801
- hwb.color[1] += hwb.color[1] * ratio;
1802
- return hwb;
1803
- },
1804
-
1805
- blacken(ratio) {
1806
- const hwb = this.hwb();
1807
- hwb.color[2] += hwb.color[2] * ratio;
1808
- return hwb;
1809
- },
1810
-
1811
- grayscale() {
1812
- // http://en.wikipedia.org/wiki/Grayscale#Converting_color_to_grayscale
1813
- const rgb = this.rgb().color;
1814
- const value = rgb[0] * 0.3 + rgb[1] * 0.59 + rgb[2] * 0.11;
1815
- return Color.rgb(value, value, value);
1816
- },
1817
-
1818
- fade(ratio) {
1819
- return this.alpha(this.valpha - (this.valpha * ratio));
1820
- },
1821
-
1822
- opaquer(ratio) {
1823
- return this.alpha(this.valpha + (this.valpha * ratio));
1824
- },
1825
-
1826
- rotate(degrees) {
1827
- const hsl = this.hsl();
1828
- let hue = hsl.color[0];
1829
- hue = (hue + degrees) % 360;
1830
- hue = hue < 0 ? 360 + hue : hue;
1831
- hsl.color[0] = hue;
1832
- return hsl;
1833
- },
1834
-
1835
- mix(mixinColor, weight) {
1836
- // Ported from sass implementation in C
1837
- // https://github.com/sass/libsass/blob/0e6b4a2850092356aa3ece07c6b249f0221caced/functions.cpp#L209
1838
- if (!mixinColor || !mixinColor.rgb) {
1839
- throw new Error('Argument to "mix" was not a Color instance, but rather an instance of ' + typeof mixinColor);
1840
- }
1841
-
1842
- const color1 = mixinColor.rgb();
1843
- const color2 = this.rgb();
1844
- const p = weight === undefined ? 0.5 : weight;
1845
-
1846
- const w = 2 * p - 1;
1847
- const a = color1.alpha() - color2.alpha();
1848
-
1849
- const w1 = (((w * a === -1) ? w : (w + a) / (1 + w * a)) + 1) / 2;
1850
- const w2 = 1 - w1;
1851
-
1852
- return Color.rgb(
1853
- w1 * color1.red() + w2 * color2.red(),
1854
- w1 * color1.green() + w2 * color2.green(),
1855
- w1 * color1.blue() + w2 * color2.blue(),
1856
- color1.alpha() * p + color2.alpha() * (1 - p));
1857
- },
1858
- };
1859
-
1860
- // Model conversion methods and static constructors
1861
- for (const model of Object.keys(colorConvert)) {
1862
- if (skippedModels.includes(model)) {
1863
- continue;
1864
- }
1865
-
1866
- const {channels} = colorConvert[model];
1867
-
1868
- // Conversion methods
1869
- Color.prototype[model] = function (...args) {
1870
- if (this.model === model) {
1871
- return new Color(this);
1872
- }
1873
-
1874
- if (args.length > 0) {
1875
- return new Color(args, model);
1876
- }
1877
-
1878
- return new Color([...assertArray(colorConvert[this.model][model].raw(this.color)), this.valpha], model);
1879
- };
1880
-
1881
- // 'static' construction methods
1882
- Color[model] = function (...args) {
1883
- let color = args[0];
1884
- if (typeof color === 'number') {
1885
- color = zeroArray(args, channels);
1886
- }
1887
-
1888
- return new Color(color, model);
1889
- };
1890
- }
1891
-
1892
- function roundTo(number, places) {
1893
- return Number(number.toFixed(places));
1894
- }
1895
-
1896
- function roundToPlace(places) {
1897
- return function (number) {
1898
- return roundTo(number, places);
1899
- };
1900
- }
1901
-
1902
- function getset(model, channel, modifier) {
1903
- model = Array.isArray(model) ? model : [model];
1904
-
1905
- for (const m of model) {
1906
- (limiters[m] || (limiters[m] = []))[channel] = modifier;
1907
- }
1908
-
1909
- model = model[0];
1910
-
1911
- return function (value) {
1912
- let result;
1913
-
1914
- if (value !== undefined) {
1915
- if (modifier) {
1916
- value = modifier(value);
1917
- }
1918
-
1919
- result = this[model]();
1920
- result.color[channel] = value;
1921
- return result;
1922
- }
1923
-
1924
- result = this[model]().color[channel];
1925
- if (modifier) {
1926
- result = modifier(result);
1927
- }
1928
-
1929
- return result;
1930
- };
1931
- }
1932
-
1933
- function maxfn(max) {
1934
- return function (v) {
1935
- return Math.max(0, Math.min(max, v));
1936
- };
1937
- }
1938
-
1939
- function assertArray(value) {
1940
- return Array.isArray(value) ? value : [value];
1941
- }
1942
-
1943
- function zeroArray(array, length) {
1944
- for (let i = 0; i < length; i++) {
1945
- if (typeof array[i] !== 'number') {
1946
- array[i] = 0;
1947
- }
1948
- }
1949
-
1950
- return array;
1951
- }
1952
-
1953
- var color = Color;
1954
-
1955
- /*!
1956
- * All material copyright ESRI, All Rights Reserved, unless otherwise specified.
1957
- * See https://github.com/Esri/calcite-components/blob/master/LICENSE.md for details.
1958
- * v1.0.0-beta.97
1959
- */
1960
- const CSS = {
1961
- swatch: "swatch",
1962
- noColorIcon: "no-color-icon"
1963
- };
1964
- const COLORS = {
1965
- borderLight: "rgba(0, 0, 0, 0.3)",
1966
- borderDark: "rgba(255, 255, 255, 0.15)"
1967
- };
1968
-
1969
- const colorPickerSwatchCss = "@keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in-down{0%{opacity:0;transform:translate3D(0, -5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;transform:translate3D(0, 5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-scale{0%{opacity:0;transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;transform:scale3D(1, 1, 1)}}:root{--calcite-animation-timing:calc(150ms * var(--calcite-internal-duration-factor));--calcite-internal-duration-factor:var(--calcite-duration-factor, 1);--calcite-internal-animation-timing-fast:calc(100ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-medium:calc(200ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-slow:calc(300ms * var(--calcite-internal-duration-factor))}.calcite-animate{opacity:0;animation-fill-mode:both;animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{animation-name:in}.calcite-animate__in-down{animation-name:in-down}.calcite-animate__in-up{animation-name:in-up}.calcite-animate__in-scale{animation-name:in-scale}@media (prefers-reduced-motion: reduce){:root{--calcite-internal-duration-factor:0.01}}:root{--calcite-floating-ui-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host{position:relative;display:inline-flex}:host([scale=s]){block-size:1.25rem;inline-size:1.25rem}:host([scale=m]){block-size:1.5rem;inline-size:1.5rem}:host([scale=l]){block-size:2rem;inline-size:2rem}.swatch{overflow:visible;block-size:inherit;inline-size:inherit}.swatch rect{transition-property:all;transition-duration:150ms;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1)}.no-color-icon{position:absolute;inset:0px;block-size:100%;inline-size:100%}";
1970
-
1971
- const ColorPickerSwatch = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1972
- constructor() {
1973
- super();
1974
- this.__registerHost();
1975
- this.__attachShadow();
1976
- //--------------------------------------------------------------------------
1977
- //
1978
- // Properties
1979
- //
1980
- //--------------------------------------------------------------------------
1981
- /**
1982
- * When `true`, the component is active.
1983
- */
1984
- this.active = false;
1985
- /**
1986
- * Specifies the size of the component.
1987
- */
1988
- this.scale = "m";
1989
- }
1990
- handleColorChange(color$1) {
1991
- this.internalColor = color(color$1);
1992
- }
1993
- //--------------------------------------------------------------------------
1994
- //
1995
- // Lifecycle
1996
- //
1997
- //--------------------------------------------------------------------------
1998
- componentWillLoad() {
1999
- this.handleColorChange(this.color);
2000
- }
2001
- render() {
2002
- const { active, el, internalColor } = this;
2003
- const borderRadius = active ? "100%" : "0";
2004
- const hex = internalColor.hex();
2005
- const theme = getThemeName(el);
2006
- const borderColor = theme === "light" ? COLORS.borderLight : COLORS.borderDark;
2007
- return (h("svg", { class: CSS.swatch, xmlns: "http://www.w3.org/2000/svg" }, h("title", null, hex), h("rect", { fill: hex, height: "100%", id: "swatch", rx: borderRadius, stroke: borderColor, "stroke-width": "2", style: { "clip-path": `inset(0 round ${borderRadius})` }, width: "100%" })));
2008
- }
2009
- get el() { return this; }
2010
- static get watchers() { return {
2011
- "color": ["handleColorChange"]
2012
- }; }
2013
- static get style() { return colorPickerSwatchCss; }
2014
- }, [1, "calcite-color-picker-swatch", {
2015
- "active": [516],
2016
- "color": [1],
2017
- "scale": [513]
2018
- }]);
2019
- function defineCustomElement() {
2020
- if (typeof customElements === "undefined") {
2021
- return;
2022
- }
2023
- const components = ["calcite-color-picker-swatch"];
2024
- components.forEach(tagName => { switch (tagName) {
2025
- case "calcite-color-picker-swatch":
2026
- if (!customElements.get(tagName)) {
2027
- customElements.define(tagName, ColorPickerSwatch);
2028
- }
2029
- break;
2030
- } });
2031
- }
2032
- defineCustomElement();
2033
-
2034
- export { ColorPickerSwatch as C, color as c, defineCustomElement as d };
2035
-
2036
- //# sourceMappingURL=color-picker-swatch.js.map