@semcore/core 17.0.0-prerelease.20 → 17.0.0-prerelease.20-prerelease.20

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 (354) hide show
  1. package/lib/LastInteractionType.js +36 -22
  2. package/lib/LastInteractionType.js.map +1 -1
  3. package/lib/LastInteractionType.mjs +33 -19
  4. package/lib/LastInteractionType.mjs.map +1 -1
  5. package/lib/core-types/Component.js +41 -25
  6. package/lib/core-types/Component.js.map +1 -1
  7. package/lib/core-types/Component.mjs +38 -18
  8. package/lib/core-types/Component.mjs.map +1 -1
  9. package/lib/core-types/symbols.js +9 -9
  10. package/lib/core-types/symbols.js.map +1 -1
  11. package/lib/core-types/symbols.mjs +9 -9
  12. package/lib/core-types/symbols.mjs.map +1 -1
  13. package/lib/coreFactory.js +205 -143
  14. package/lib/coreFactory.js.map +1 -1
  15. package/lib/coreFactory.mjs +164 -118
  16. package/lib/coreFactory.mjs.map +1 -1
  17. package/lib/decorators/propsObserver.js +64 -36
  18. package/lib/decorators/propsObserver.js.map +1 -1
  19. package/lib/decorators/propsObserver.mjs +61 -33
  20. package/lib/decorators/propsObserver.mjs.map +1 -1
  21. package/lib/decorators/reactive.js +17 -17
  22. package/lib/decorators/reactive.js.map +1 -1
  23. package/lib/decorators/reactive.mjs +15 -15
  24. package/lib/decorators/reactive.mjs.map +1 -1
  25. package/lib/enhancement/Children.js +59 -51
  26. package/lib/enhancement/Children.js.map +1 -1
  27. package/lib/enhancement/Children.mjs +41 -47
  28. package/lib/enhancement/Children.mjs.map +1 -1
  29. package/lib/enhancement/Root.js +37 -36
  30. package/lib/enhancement/Root.js.map +1 -1
  31. package/lib/enhancement/Root.mjs +18 -28
  32. package/lib/enhancement/Root.mjs.map +1 -1
  33. package/lib/enhancement/dataName.js +8 -7
  34. package/lib/enhancement/dataName.js.map +1 -1
  35. package/lib/enhancement/dataName.mjs +5 -5
  36. package/lib/enhancement/dataName.mjs.map +1 -1
  37. package/lib/enhancement/enhance.js +9 -6
  38. package/lib/enhancement/enhance.js.map +1 -1
  39. package/lib/enhancement/enhance.mjs +7 -5
  40. package/lib/enhancement/enhance.mjs.map +1 -1
  41. package/lib/enhancement/functionDefaultProps.js +6 -6
  42. package/lib/enhancement/functionDefaultProps.js.map +1 -1
  43. package/lib/enhancement/functionDefaultProps.mjs +4 -4
  44. package/lib/enhancement/functionDefaultProps.mjs.map +1 -1
  45. package/lib/enhancement/i18n.js +13 -13
  46. package/lib/enhancement/i18n.js.map +1 -1
  47. package/lib/enhancement/i18n.mjs +9 -10
  48. package/lib/enhancement/i18n.mjs.map +1 -1
  49. package/lib/enhancement/inheritedName.js +8 -7
  50. package/lib/enhancement/inheritedName.js.map +1 -1
  51. package/lib/enhancement/inheritedName.mjs +5 -5
  52. package/lib/enhancement/inheritedName.mjs.map +1 -1
  53. package/lib/enhancement/staticChildren.js +56 -47
  54. package/lib/enhancement/staticChildren.js.map +1 -1
  55. package/lib/enhancement/staticChildren.mjs +48 -43
  56. package/lib/enhancement/staticChildren.mjs.map +1 -1
  57. package/lib/enhancement/style.js +27 -29
  58. package/lib/enhancement/style.js.map +1 -1
  59. package/lib/enhancement/style.mjs +20 -26
  60. package/lib/enhancement/style.mjs.map +1 -1
  61. package/lib/enhancement/uncontrolledProps.js +65 -46
  62. package/lib/enhancement/uncontrolledProps.js.map +1 -1
  63. package/lib/enhancement/uncontrolledProps.mjs +52 -43
  64. package/lib/enhancement/uncontrolledProps.mjs.map +1 -1
  65. package/lib/esm/LastInteractionType.mjs +33 -19
  66. package/lib/esm/core-types/Component.mjs +38 -18
  67. package/lib/esm/core-types/symbols.mjs +9 -9
  68. package/lib/esm/coreFactory.mjs +164 -118
  69. package/lib/esm/enhancement/Children.mjs +41 -47
  70. package/lib/esm/enhancement/Root.mjs +18 -28
  71. package/lib/esm/enhancement/dataName.mjs +5 -5
  72. package/lib/esm/enhancement/enhance.mjs +7 -5
  73. package/lib/esm/enhancement/functionDefaultProps.mjs +4 -4
  74. package/lib/esm/enhancement/i18n.mjs +9 -10
  75. package/lib/esm/enhancement/inheritedName.mjs +5 -5
  76. package/lib/esm/enhancement/staticChildren.mjs +48 -43
  77. package/lib/esm/enhancement/style.mjs +20 -26
  78. package/lib/esm/enhancement/uncontrolledProps.mjs +52 -43
  79. package/lib/esm/register.mjs +20 -12
  80. package/lib/esm/styled/reshadow-core.mjs +111 -98
  81. package/lib/esm/styled/sstyled.mjs +41 -31
  82. package/lib/esm/utils/assignProps.mjs +36 -32
  83. package/lib/esm/utils/enhances/WithI18n.mjs +17 -15
  84. package/lib/esm/utils/enhances/i18nEnhance.mjs +61 -47
  85. package/lib/esm/utils/logger.mjs +21 -13
  86. package/lib/esm/utils/pick.mjs +4 -4
  87. package/lib/esm/utils/ref.mjs +43 -27
  88. package/lib/esm/utils/use/useEnhancedEffect.mjs +1 -1
  89. package/lib/index.js +17 -17
  90. package/lib/register.js +24 -17
  91. package/lib/register.js.map +1 -1
  92. package/lib/register.mjs +20 -12
  93. package/lib/register.mjs.map +1 -1
  94. package/lib/styled/index.js +4 -4
  95. package/lib/styled/reshadow-core.js +104 -102
  96. package/lib/styled/reshadow-core.js.map +1 -1
  97. package/lib/styled/reshadow-core.mjs +111 -98
  98. package/lib/styled/reshadow-core.mjs.map +1 -1
  99. package/lib/styled/sstyled.js +53 -31
  100. package/lib/styled/sstyled.js.map +1 -1
  101. package/lib/styled/sstyled.mjs +41 -31
  102. package/lib/styled/sstyled.mjs.map +1 -1
  103. package/lib/theme/processor.js +222 -150
  104. package/lib/theme/processor.js.map +1 -1
  105. package/lib/theme/processor.mjs +221 -148
  106. package/lib/theme/processor.mjs.map +1 -1
  107. package/lib/theme/themes/dark.js +2 -2
  108. package/lib/theme/themes/dark.js.map +1 -1
  109. package/lib/theme/themes/default.js +2 -2
  110. package/lib/theme/themes/default.js.map +1 -1
  111. package/lib/theme/themes/highlights-dark.js +2 -2
  112. package/lib/theme/themes/highlights-dark.js.map +1 -1
  113. package/lib/theme/themes/highlights-light.js +2 -2
  114. package/lib/theme/themes/highlights-light.js.map +1 -1
  115. package/lib/theme/themes/light.js +2 -2
  116. package/lib/theme/themes/light.js.map +1 -1
  117. package/lib/theme/utils.js +215 -140
  118. package/lib/theme/utils.js.map +1 -1
  119. package/lib/theme/utils.mjs +214 -135
  120. package/lib/theme/utils.mjs.map +1 -1
  121. package/lib/utils/CSSinJS.js +10 -8
  122. package/lib/utils/CSSinJS.js.map +1 -1
  123. package/lib/utils/CSSinJS.mjs +7 -6
  124. package/lib/utils/CSSinJS.mjs.map +1 -1
  125. package/lib/utils/ThemeProvider.js +51 -44
  126. package/lib/utils/ThemeProvider.js.map +1 -1
  127. package/lib/utils/ThemeProvider.mjs +47 -36
  128. package/lib/utils/ThemeProvider.mjs.map +1 -1
  129. package/lib/utils/addonText.js +7 -4
  130. package/lib/utils/addonText.js.map +1 -1
  131. package/lib/utils/addonText.mjs +5 -2
  132. package/lib/utils/addonText.mjs.map +1 -1
  133. package/lib/utils/addonTextChildren.js +21 -15
  134. package/lib/utils/addonTextChildren.js.map +1 -1
  135. package/lib/utils/addonTextChildren.mjs +13 -7
  136. package/lib/utils/addonTextChildren.mjs.map +1 -1
  137. package/lib/utils/ariaProps.js +5 -7
  138. package/lib/utils/ariaProps.js.map +1 -1
  139. package/lib/utils/ariaProps.mjs +5 -7
  140. package/lib/utils/ariaProps.mjs.map +1 -1
  141. package/lib/utils/assignProps.js +37 -33
  142. package/lib/utils/assignProps.js.map +1 -1
  143. package/lib/utils/assignProps.mjs +36 -32
  144. package/lib/utils/assignProps.mjs.map +1 -1
  145. package/lib/utils/canUseDOM.js +1 -1
  146. package/lib/utils/capitalizeFirstLetter.js +1 -1
  147. package/lib/utils/color.js +95 -72
  148. package/lib/utils/color.js.map +1 -1
  149. package/lib/utils/color.mjs +94 -71
  150. package/lib/utils/color.mjs.map +1 -1
  151. package/lib/utils/compose.js +12 -3
  152. package/lib/utils/compose.js.map +1 -1
  153. package/lib/utils/compose.mjs +11 -2
  154. package/lib/utils/compose.mjs.map +1 -1
  155. package/lib/utils/createUUID.js +5 -5
  156. package/lib/utils/createUUID.js.map +1 -1
  157. package/lib/utils/createUUID.mjs +4 -4
  158. package/lib/utils/createUUID.mjs.map +1 -1
  159. package/lib/utils/cssToIntDefault.js +4 -3
  160. package/lib/utils/cssToIntDefault.js.map +1 -1
  161. package/lib/utils/cssToIntDefault.mjs +3 -2
  162. package/lib/utils/cssToIntDefault.mjs.map +1 -1
  163. package/lib/utils/enhances/WithCSS.js +8 -10
  164. package/lib/utils/enhances/WithCSS.js.map +1 -1
  165. package/lib/utils/enhances/WithCSS.mjs +6 -7
  166. package/lib/utils/enhances/WithCSS.mjs.map +1 -1
  167. package/lib/utils/enhances/WithI18n.js +19 -19
  168. package/lib/utils/enhances/WithI18n.js.map +1 -1
  169. package/lib/utils/enhances/WithI18n.mjs +17 -15
  170. package/lib/utils/enhances/WithI18n.mjs.map +1 -1
  171. package/lib/utils/enhances/a11yEnhance.js +39 -34
  172. package/lib/utils/enhances/a11yEnhance.js.map +1 -1
  173. package/lib/utils/enhances/a11yEnhance.mjs +36 -32
  174. package/lib/utils/enhances/a11yEnhance.mjs.map +1 -1
  175. package/lib/utils/enhances/animatedSizeEnhance.js +63 -55
  176. package/lib/utils/enhances/animatedSizeEnhance.js.map +1 -1
  177. package/lib/utils/enhances/animatedSizeEnhance.mjs +58 -50
  178. package/lib/utils/enhances/animatedSizeEnhance.mjs.map +1 -1
  179. package/lib/utils/enhances/contextEnhance.js +11 -12
  180. package/lib/utils/enhances/contextEnhance.js.map +1 -1
  181. package/lib/utils/enhances/contextEnhance.mjs +8 -9
  182. package/lib/utils/enhances/contextEnhance.mjs.map +1 -1
  183. package/lib/utils/enhances/i18nEnhance.js +67 -51
  184. package/lib/utils/enhances/i18nEnhance.js.map +1 -1
  185. package/lib/utils/enhances/i18nEnhance.mjs +61 -47
  186. package/lib/utils/enhances/i18nEnhance.mjs.map +1 -1
  187. package/lib/utils/enhances/resolveColorEnhance.js +10 -12
  188. package/lib/utils/enhances/resolveColorEnhance.js.map +1 -1
  189. package/lib/utils/enhances/resolveColorEnhance.mjs +6 -8
  190. package/lib/utils/enhances/resolveColorEnhance.mjs.map +1 -1
  191. package/lib/utils/eventEmitter.js +57 -30
  192. package/lib/utils/eventEmitter.js.map +1 -1
  193. package/lib/utils/eventEmitter.mjs +55 -26
  194. package/lib/utils/eventEmitter.mjs.map +1 -1
  195. package/lib/utils/findComponent.js +42 -35
  196. package/lib/utils/findComponent.js.map +1 -1
  197. package/lib/utils/findComponent.mjs +33 -26
  198. package/lib/utils/findComponent.mjs.map +1 -1
  199. package/lib/utils/fire.js +13 -7
  200. package/lib/utils/fire.js.map +1 -1
  201. package/lib/utils/fire.mjs +11 -5
  202. package/lib/utils/fire.mjs.map +1 -1
  203. package/lib/utils/focus-lock/focusBorders.js +32 -28
  204. package/lib/utils/focus-lock/focusBorders.js.map +1 -1
  205. package/lib/utils/focus-lock/focusBorders.mjs +32 -26
  206. package/lib/utils/focus-lock/focusBorders.mjs.map +1 -1
  207. package/lib/utils/focus-lock/getFocusableIn.js +6 -4
  208. package/lib/utils/focus-lock/getFocusableIn.js.map +1 -1
  209. package/lib/utils/focus-lock/getFocusableIn.mjs +6 -3
  210. package/lib/utils/focus-lock/getFocusableIn.mjs.map +1 -1
  211. package/lib/utils/focus-lock/isFocusInside.js +6 -5
  212. package/lib/utils/focus-lock/isFocusInside.js.map +1 -1
  213. package/lib/utils/focus-lock/isFocusInside.mjs +6 -4
  214. package/lib/utils/focus-lock/isFocusInside.mjs.map +1 -1
  215. package/lib/utils/focus-lock/isFocusable.js +12 -9
  216. package/lib/utils/focus-lock/isFocusable.js.map +1 -1
  217. package/lib/utils/focus-lock/isFocusable.mjs +11 -8
  218. package/lib/utils/focus-lock/isFocusable.mjs.map +1 -1
  219. package/lib/utils/focus-lock/setFocus.js +27 -21
  220. package/lib/utils/focus-lock/setFocus.js.map +1 -1
  221. package/lib/utils/focus-lock/setFocus.mjs +25 -19
  222. package/lib/utils/focus-lock/setFocus.mjs.map +1 -1
  223. package/lib/utils/getAccessibleName.js +22 -10
  224. package/lib/utils/getAccessibleName.js.map +1 -1
  225. package/lib/utils/getAccessibleName.mjs +21 -10
  226. package/lib/utils/getAccessibleName.mjs.map +1 -1
  227. package/lib/utils/getDisplayName.js +1 -1
  228. package/lib/utils/getEventTarget.js +32 -13
  229. package/lib/utils/getEventTarget.js.map +1 -1
  230. package/lib/utils/getEventTarget.mjs +31 -12
  231. package/lib/utils/getEventTarget.mjs.map +1 -1
  232. package/lib/utils/getOriginChildren.js +4 -4
  233. package/lib/utils/getOriginChildren.js.map +1 -1
  234. package/lib/utils/getRandomInt.js +1 -1
  235. package/lib/utils/getValue.js +6 -4
  236. package/lib/utils/getValue.js.map +1 -1
  237. package/lib/utils/getValue.mjs +5 -3
  238. package/lib/utils/getValue.mjs.map +1 -1
  239. package/lib/utils/hasLabels.js +27 -16
  240. package/lib/utils/hasLabels.js.map +1 -1
  241. package/lib/utils/hasLabels.mjs +24 -14
  242. package/lib/utils/hasLabels.mjs.map +1 -1
  243. package/lib/utils/hasParent.js +2 -3
  244. package/lib/utils/hasParent.js.map +1 -1
  245. package/lib/utils/hasParent.mjs +3 -2
  246. package/lib/utils/hasParent.mjs.map +1 -1
  247. package/lib/utils/ifChildren.js +4 -6
  248. package/lib/utils/ifChildren.js.map +1 -1
  249. package/lib/utils/ifChildren.mjs +2 -4
  250. package/lib/utils/ifChildren.mjs.map +1 -1
  251. package/lib/utils/injectStyle.js +13 -11
  252. package/lib/utils/injectStyle.js.map +1 -1
  253. package/lib/utils/injectStyle.mjs +10 -9
  254. package/lib/utils/injectStyle.mjs.map +1 -1
  255. package/lib/utils/inputProps.js +5 -5
  256. package/lib/utils/inputProps.js.map +1 -1
  257. package/lib/utils/inputProps.mjs +4 -4
  258. package/lib/utils/inputProps.mjs.map +1 -1
  259. package/lib/utils/isInteractiveElement.js +9 -7
  260. package/lib/utils/isInteractiveElement.js.map +1 -1
  261. package/lib/utils/isInteractiveElement.mjs +9 -7
  262. package/lib/utils/isInteractiveElement.mjs.map +1 -1
  263. package/lib/utils/isNode.js +5 -4
  264. package/lib/utils/isNode.js.map +1 -1
  265. package/lib/utils/isNode.mjs +2 -1
  266. package/lib/utils/isNode.mjs.map +1 -1
  267. package/lib/utils/isPromise.js +1 -1
  268. package/lib/utils/isRetina.js +2 -7
  269. package/lib/utils/isRetina.js.map +1 -1
  270. package/lib/utils/isRetina.mjs +1 -6
  271. package/lib/utils/isRetina.mjs.map +1 -1
  272. package/lib/utils/logger.js +25 -18
  273. package/lib/utils/logger.js.map +1 -1
  274. package/lib/utils/logger.mjs +21 -13
  275. package/lib/utils/logger.mjs.map +1 -1
  276. package/lib/utils/numericChecker.js +18 -11
  277. package/lib/utils/numericChecker.js.map +1 -1
  278. package/lib/utils/numericChecker.mjs +17 -10
  279. package/lib/utils/numericChecker.mjs.map +1 -1
  280. package/lib/utils/ownerDocument.js +2 -2
  281. package/lib/utils/ownerDocument.js.map +1 -1
  282. package/lib/utils/ownerDocument.mjs +1 -1
  283. package/lib/utils/ownerDocument.mjs.map +1 -1
  284. package/lib/utils/pick.js +5 -5
  285. package/lib/utils/pick.js.map +1 -1
  286. package/lib/utils/pick.mjs +4 -4
  287. package/lib/utils/pick.mjs.map +1 -1
  288. package/lib/utils/propsForElement.js +12 -10
  289. package/lib/utils/propsForElement.js.map +1 -1
  290. package/lib/utils/propsForElement.mjs +10 -8
  291. package/lib/utils/propsForElement.mjs.map +1 -1
  292. package/lib/utils/rafTrottle.js +14 -9
  293. package/lib/utils/rafTrottle.js.map +1 -1
  294. package/lib/utils/rafTrottle.mjs +12 -7
  295. package/lib/utils/rafTrottle.mjs.map +1 -1
  296. package/lib/utils/reactToText.js +8 -5
  297. package/lib/utils/reactToText.js.map +1 -1
  298. package/lib/utils/reactToText.mjs +6 -3
  299. package/lib/utils/reactToText.mjs.map +1 -1
  300. package/lib/utils/ref.js +47 -29
  301. package/lib/utils/ref.js.map +1 -1
  302. package/lib/utils/ref.mjs +43 -27
  303. package/lib/utils/ref.mjs.map +1 -1
  304. package/lib/utils/setRef.js +2 -2
  305. package/lib/utils/setRef.js.map +1 -1
  306. package/lib/utils/syncScroll.js +24 -24
  307. package/lib/utils/syncScroll.js.map +1 -1
  308. package/lib/utils/syncScroll.mjs +21 -21
  309. package/lib/utils/syncScroll.mjs.map +1 -1
  310. package/lib/utils/uncontroll.js +18 -8
  311. package/lib/utils/uncontroll.js.map +1 -1
  312. package/lib/utils/uncontroll.mjs +17 -8
  313. package/lib/utils/uncontroll.mjs.map +1 -1
  314. package/lib/utils/uniqueID.js +27 -22
  315. package/lib/utils/uniqueID.js.map +1 -1
  316. package/lib/utils/uniqueID.mjs +25 -18
  317. package/lib/utils/uniqueID.mjs.map +1 -1
  318. package/lib/utils/use/useColorResolver.js +21 -20
  319. package/lib/utils/use/useColorResolver.js.map +1 -1
  320. package/lib/utils/use/useColorResolver.mjs +18 -16
  321. package/lib/utils/use/useColorResolver.mjs.map +1 -1
  322. package/lib/utils/use/useEnhancedEffect.js +4 -4
  323. package/lib/utils/use/useEnhancedEffect.js.map +1 -1
  324. package/lib/utils/use/useEnhancedEffect.mjs +1 -1
  325. package/lib/utils/use/useEnhancedEffect.mjs.map +1 -1
  326. package/lib/utils/use/useEventCallback.js +10 -5
  327. package/lib/utils/use/useEventCallback.js.map +1 -1
  328. package/lib/utils/use/useEventCallback.mjs +8 -3
  329. package/lib/utils/use/useEventCallback.mjs.map +1 -1
  330. package/lib/utils/use/useEventListener.js +15 -11
  331. package/lib/utils/use/useEventListener.js.map +1 -1
  332. package/lib/utils/use/useEventListener.mjs +11 -7
  333. package/lib/utils/use/useEventListener.mjs.map +1 -1
  334. package/lib/utils/use/useFocusLock.js +94 -80
  335. package/lib/utils/use/useFocusLock.js.map +1 -1
  336. package/lib/utils/use/useFocusLock.mjs +88 -71
  337. package/lib/utils/use/useFocusLock.mjs.map +1 -1
  338. package/lib/utils/use/usePreventScroll.js +28 -26
  339. package/lib/utils/use/usePreventScroll.js.map +1 -1
  340. package/lib/utils/use/usePreventScroll.mjs +23 -21
  341. package/lib/utils/use/usePreventScroll.mjs.map +1 -1
  342. package/lib/utils/use/useScrollBarWidth.js +14 -8
  343. package/lib/utils/use/useScrollBarWidth.js.map +1 -1
  344. package/lib/utils/use/useScrollBarWidth.mjs +13 -8
  345. package/lib/utils/use/useScrollBarWidth.mjs.map +1 -1
  346. package/lib/utils/useCssVariable.js +37 -32
  347. package/lib/utils/useCssVariable.js.map +1 -1
  348. package/lib/utils/useCssVariable.mjs +34 -27
  349. package/lib/utils/useCssVariable.mjs.map +1 -1
  350. package/lib/utils/zIndexStacking.js +24 -28
  351. package/lib/utils/zIndexStacking.js.map +1 -1
  352. package/lib/utils/zIndexStacking.mjs +22 -23
  353. package/lib/utils/zIndexStacking.mjs.map +1 -1
  354. package/package.json +1 -1
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
@@ -8,73 +9,91 @@ exports.brightness = brightness;
8
9
  exports.light = void 0;
9
10
  exports.opacity = opacity;
10
11
  exports.shade = shade;
12
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
14
  function shadeHexColor(color, percent) {
12
- const f = Number.parseInt(color.slice(1), 16);
13
- const t = percent < 0 ? 0 : 255;
14
- const p = percent < 0 ? percent * -1 : percent;
15
- const R = f >> 16;
16
- const G = f >> 8 & 0x00ff;
17
- const B = f & 0x0000ff;
18
- return `#${(0x1000000 + (Math.round((t - R) * p) + R) * 0x10000 + (Math.round((t - G) * p) + G) * 0x100 + (Math.round((t - B) * p) + B)).toString(16).slice(1)}`;
15
+ var f = Number.parseInt(color.slice(1), 16);
16
+ var t = percent < 0 ? 0 : 255;
17
+ var p = percent < 0 ? percent * -1 : percent;
18
+ var R = f >> 16;
19
+ var G = f >> 8 & 0x00ff;
20
+ var B = f & 0x0000ff;
21
+ return "#".concat((0x1000000 + (Math.round((t - R) * p) + R) * 0x10000 + (Math.round((t - G) * p) + G) * 0x100 + (Math.round((t - B) * p) + B)).toString(16).slice(1));
19
22
  }
20
23
  function shadeRGBColor(color, percent) {
21
- const [R, G, B] = colorRGB(color);
22
- const t = percent < 0 ? 0 : 255;
23
- const p = percent < 0 ? percent * -1 : percent;
24
- return `rgb(${Math.round((t - R) * p) + R},${Math.round((t - G) * p) + G},${Math.round((t - B) * p) + B})`;
24
+ var _colorRGB = colorRGB(color),
25
+ _colorRGB2 = (0, _slicedToArray2["default"])(_colorRGB, 3),
26
+ R = _colorRGB2[0],
27
+ G = _colorRGB2[1],
28
+ B = _colorRGB2[2];
29
+ var t = percent < 0 ? 0 : 255;
30
+ var p = percent < 0 ? percent * -1 : percent;
31
+ return "rgb(".concat(Math.round((t - R) * p) + R, ",").concat(Math.round((t - G) * p) + G, ",").concat(Math.round((t - B) * p) + B, ")");
25
32
  }
26
- function shade(color, percent = 1) {
33
+ function shade(color) {
34
+ var percent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
27
35
  if (!color) return;
28
36
  // TODO error for color name, example 'aqua'
29
37
  if (color.length > 7) return shadeRGBColor(color, percent);
30
38
  return shadeHexColor(color, percent);
31
39
  }
32
40
  function blendHexColors(colorOne, colorTwo, percent) {
33
- const f = Number.parseInt(colorOne.slice(1), 16);
34
- const t = Number.parseInt(colorTwo.slice(1), 16);
35
- const R1 = f >> 16;
36
- const G1 = f >> 8 & 0x00ff;
37
- const B1 = f & 0x0000ff;
38
- const R2 = t >> 16;
39
- const G2 = t >> 8 & 0x00ff;
40
- const B2 = t & 0x0000ff;
41
- return `#${(0x1000000 + (Math.round((R2 - R1) * percent) + R1) * 0x10000 + (Math.round((G2 - G1) * percent) + G1) * 0x100 + (Math.round((B2 - B1) * percent) + B1)).toString(16).slice(1)}`;
41
+ var f = Number.parseInt(colorOne.slice(1), 16);
42
+ var t = Number.parseInt(colorTwo.slice(1), 16);
43
+ var R1 = f >> 16;
44
+ var G1 = f >> 8 & 0x00ff;
45
+ var B1 = f & 0x0000ff;
46
+ var R2 = t >> 16;
47
+ var G2 = t >> 8 & 0x00ff;
48
+ var B2 = t & 0x0000ff;
49
+ return "#".concat((0x1000000 + (Math.round((R2 - R1) * percent) + R1) * 0x10000 + (Math.round((G2 - G1) * percent) + G1) * 0x100 + (Math.round((B2 - B1) * percent) + B1)).toString(16).slice(1));
42
50
  }
43
51
  function blendRGBColors(colorOne, colorTwo, percent) {
44
- const [R, G, B] = colorRGB(colorOne);
45
- const t = colorTwo.split(',');
46
- return `rgb(${Math.round((Number.parseInt(t[0].slice(4)) - R) * percent) + R},${Math.round((Number.parseInt(t[1]) - G) * percent) + G},${Math.round((Number.parseInt(t[2]) - B) * percent) + B})`;
52
+ var _colorRGB3 = colorRGB(colorOne),
53
+ _colorRGB4 = (0, _slicedToArray2["default"])(_colorRGB3, 3),
54
+ R = _colorRGB4[0],
55
+ G = _colorRGB4[1],
56
+ B = _colorRGB4[2];
57
+ var t = colorTwo.split(',');
58
+ return "rgb(".concat(Math.round((Number.parseInt(t[0].slice(4)) - R) * percent) + R, ",").concat(Math.round((Number.parseInt(t[1]) - G) * percent) + G, ",").concat(Math.round((Number.parseInt(t[2]) - B) * percent) + B, ")");
47
59
  }
48
- function blend(colorOne, colorTwo, percent = 1) {
60
+ function blend(colorOne, colorTwo) {
61
+ var percent = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
49
62
  if (!colorOne || !colorTwo) return;
50
63
  if (colorOne.length > 7) {
51
64
  if (colorTwo.length > 7) {
52
65
  return blendRGBColors(colorOne, colorTwo, percent);
53
66
  }
54
- return blendRGBColors(colorOne, `rgb(${hex2rgb(colorTwo)})`, percent);
67
+ return blendRGBColors(colorOne, "rgb(".concat(hex2rgb(colorTwo), ")"), percent);
55
68
  }
56
69
  if (colorTwo.length > 7) {
57
- return blendRGBColors(`rgb(${hex2rgb(colorOne).join(',')})`, colorTwo, percent);
70
+ return blendRGBColors("rgb(".concat(hex2rgb(colorOne).join(','), ")"), colorTwo, percent);
58
71
  }
59
72
  return blendHexColors(colorOne, colorTwo, percent);
60
73
  }
61
74
  function colorRGB(color) {
62
- const f = color.split(',');
63
- const R = Number.parseInt(f[0].slice(4));
64
- const G = Number.parseInt(f[1]);
65
- const B = Number.parseInt(f[2]);
75
+ var f = color.split(',');
76
+ var R = Number.parseInt(f[0].slice(4));
77
+ var G = Number.parseInt(f[1]);
78
+ var B = Number.parseInt(f[2]);
66
79
  return [R, G, B];
67
80
  }
68
81
  function hex2rgb(hex) {
82
+ var _hex$replace$substrin;
69
83
  // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain
70
- return hex.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i, (_m, r, g, b) => `#${r}${r}${g}${g}${b}${b}`).substring(1).match(/.{2}/g)?.map(x => Number.parseInt(x, 16));
84
+ return (_hex$replace$substrin = hex.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i, function (_m, r, g, b) {
85
+ return "#".concat(r).concat(r).concat(g).concat(g).concat(b).concat(b);
86
+ }).substring(1).match(/.{2}/g)) === null || _hex$replace$substrin === void 0 ? void 0 : _hex$replace$substrin.map(function (x) {
87
+ return Number.parseInt(x, 16);
88
+ });
71
89
  }
72
- function opacity(color, percent = 1) {
90
+ function opacity(color) {
91
+ var percent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
73
92
  if (!color) return;
74
93
  if (color.includes('#') && color.match(/^#?[a-fA-F\d]{6}$/)) {
75
- color = `rgba(${hex2rgb(color).join(', ')}, ${percent})`;
94
+ color = "rgba(".concat(hex2rgb(color).join(', '), ", ").concat(percent, ")");
76
95
  } else if (color.includes('rgb')) {
77
- color = `rgba(${colorRGB(color).join(', ')}, ${percent})`;
96
+ color = "rgba(".concat(colorRGB(color).join(', '), ", ").concat(percent, ")");
78
97
  } else {
79
98
  return;
80
99
  }
@@ -89,60 +108,64 @@ function brightness(color) {
89
108
  }
90
109
  return Math.round((Number.parseInt(color[0]) * 299 + Number.parseInt(color[1]) * 587 + Number.parseInt(color[2]) * 114) / 1000);
91
110
  }
92
- const lightMemo = {};
93
- const light = (color, factor = 1) => {
111
+ var lightMemo = {};
112
+ var light = exports.light = function light(color) {
113
+ var factor = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
94
114
  if (!color) return;
95
- const inputKey = `${color}_${factor}`;
115
+ var inputKey = "".concat(color, "_").concat(factor);
96
116
  if (lightMemo[inputKey]) return lightMemo[inputKey];
97
- let r = 0;
98
- let g = 0;
99
- let b = 0;
100
- let a = 1;
117
+ var r = 0;
118
+ var g = 0;
119
+ var b = 0;
120
+ var a = 1;
101
121
  if (color.startsWith('#')) {
102
122
  if (color.length !== 4 && color.length !== 7) {
103
- throw new Error(`Got invalid color ${color}`);
123
+ throw new Error("Got invalid color ".concat(color));
104
124
  }
105
- const partSize = color.length === 4 ? 1 : 2;
125
+ var partSize = color.length === 4 ? 1 : 2;
106
126
  r = Number.parseInt(color.substring(1, 1 + partSize), 16);
107
127
  g = Number.parseInt(color.substring(1 + partSize, 1 + partSize * 2), 16);
108
128
  b = Number.parseInt(color.substring(1 + partSize * 2, 1 + partSize * 3), 16);
109
129
  a = 1; // not handled for now
110
130
  } else if (color.startsWith('rgb(')) {
111
- const trimmed = color.substring('rgb('.length, color.length - ')'.length);
112
- const parts = trimmed.split(',').map(part => Number.parseInt(part.trim(), 10));
131
+ var trimmed = color.substring('rgb('.length, color.length - ')'.length);
132
+ var parts = trimmed.split(',').map(function (part) {
133
+ return Number.parseInt(part.trim(), 10);
134
+ });
113
135
  r = parts[0];
114
136
  g = parts[1];
115
137
  b = parts[2];
116
138
  a = 1;
117
139
  } else if (color.startsWith('rgba(')) {
118
- const trimmed = color.substring('rgba('.length, color.length - ')'.length);
119
- const parts = trimmed.split(',').map(part => Number.parseInt(part.trim(), 10));
120
- r = parts[0];
121
- g = parts[1];
122
- b = parts[2];
123
- a = parts[2];
140
+ var _trimmed = color.substring('rgba('.length, color.length - ')'.length);
141
+ var _parts = _trimmed.split(',').map(function (part) {
142
+ return Number.parseInt(part.trim(), 10);
143
+ });
144
+ r = _parts[0];
145
+ g = _parts[1];
146
+ b = _parts[2];
147
+ a = _parts[2];
124
148
  } else {
125
- throw new Error(`Got invalid color ${color}`);
149
+ throw new Error("Got invalid color ".concat(color));
126
150
  }
127
- const hsl = rgbToHsl(r, g, b);
151
+ var hsl = rgbToHsl(r, g, b);
128
152
  hsl[2] += (1 - hsl[2]) * factor;
129
- const rgb = hslToRgb(...hsl);
130
- return lightMemo[inputKey] === `rgba(${rgb[0]}, ${rgb[1]}, ${rgb[2]}, ${a})`;
153
+ var rgb = hslToRgb.apply(void 0, (0, _toConsumableArray2["default"])(hsl));
154
+ return lightMemo[inputKey] === "rgba(".concat(rgb[0], ", ").concat(rgb[1], ", ").concat(rgb[2], ", ").concat(a, ")");
131
155
  };
132
- exports.light = light;
133
- const rgbToHsl = (r, g, b) => {
156
+ var rgbToHsl = function rgbToHsl(r, g, b) {
134
157
  r /= 255;
135
158
  g /= 255;
136
159
  b /= 255;
137
- const max = Math.max(r, g, b);
138
- const min = Math.min(r, g, b);
139
- let h = 0;
140
- let s = 0;
141
- const l = (max + min) / 2;
160
+ var max = Math.max(r, g, b);
161
+ var min = Math.min(r, g, b);
162
+ var h = 0;
163
+ var s = 0;
164
+ var l = (max + min) / 2;
142
165
  if (max === min) {
143
166
  h = s = 0;
144
167
  } else {
145
- const d = max - min;
168
+ var d = max - min;
146
169
  s = l > 0.5 ? d / (2 - max - min) : d / (max + min);
147
170
  switch (max) {
148
171
  case r:
@@ -159,23 +182,23 @@ const rgbToHsl = (r, g, b) => {
159
182
  }
160
183
  return [h, s, l];
161
184
  };
162
- const hslToRgb = (h, s, l) => {
163
- let r = 0;
164
- let g = 0;
165
- let b = 0;
185
+ var hslToRgb = function hslToRgb(h, s, l) {
186
+ var r = 0;
187
+ var g = 0;
188
+ var b = 0;
166
189
  if (s === 0) {
167
190
  r = g = b = l;
168
191
  } else {
169
- function hue2rgb(p, q, t) {
192
+ var hue2rgb = function hue2rgb(p, q, t) {
170
193
  if (t < 0) t += 1;
171
194
  if (t > 1) t -= 1;
172
195
  if (t < 1 / 6) return p + (q - p) * 6 * t;
173
196
  if (t < 1 / 2) return q;
174
197
  if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;
175
198
  return p;
176
- }
177
- const q = l < 0.5 ? l * (1 + s) : l + s - l * s;
178
- const p = 2 * l - q;
199
+ };
200
+ var q = l < 0.5 ? l * (1 + s) : l + s - l * s;
201
+ var p = 2 * l - q;
179
202
  r = hue2rgb(p, q, h + 1 / 3);
180
203
  g = hue2rgb(p, q, h);
181
204
  b = hue2rgb(p, q, h - 1 / 3);
@@ -1 +1 @@
1
- {"version":3,"file":"color.js","names":["shadeHexColor","color","percent","f","Number","parseInt","slice","t","p","R","G","B","Math","round","toString","shadeRGBColor","colorRGB","shade","length","blendHexColors","colorOne","colorTwo","R1","G1","B1","R2","G2","B2","blendRGBColors","split","blend","hex2rgb","join","hex","replace","_m","r","g","b","substring","match","map","x","opacity","includes","brightness","lightMemo","light","factor","inputKey","a","startsWith","Error","partSize","trimmed","parts","part","trim","hsl","rgbToHsl","rgb","hslToRgb","exports","max","min","h","s","l","d","hue2rgb","q"],"sources":["../../src/utils/color.ts"],"sourcesContent":["function shadeHexColor(color: string, percent: number) {\n const f = Number.parseInt(color.slice(1), 16);\n const t = percent < 0 ? 0 : 255;\n const p = percent < 0 ? percent * -1 : percent;\n const R = f >> 16;\n const G = (f >> 8) & 0x00ff;\n const B = f & 0x0000ff;\n return `#${(\n 0x1000000 +\n (Math.round((t - R) * p) + R) * 0x10000 +\n (Math.round((t - G) * p) + G) * 0x100 +\n (Math.round((t - B) * p) + B)\n )\n .toString(16)\n .slice(1)}`;\n}\n\nfunction shadeRGBColor(color: string, percent: number) {\n const [R, G, B] = colorRGB(color);\n const t = percent < 0 ? 0 : 255;\n const p = percent < 0 ? percent * -1 : percent;\n\n return `rgb(${Math.round((t - R) * p) + R},${Math.round((t - G) * p) + G},${\n Math.round((t - B) * p) + B\n })`;\n}\n\nexport function shade(color?: string, percent = 1) {\n if (!color) return;\n // TODO error for color name, example 'aqua'\n if (color.length > 7) return shadeRGBColor(color, percent);\n return shadeHexColor(color, percent);\n}\n\nfunction blendHexColors(colorOne: string, colorTwo: string, percent: number) {\n const f = Number.parseInt(colorOne.slice(1), 16);\n const t = Number.parseInt(colorTwo.slice(1), 16);\n const R1 = f >> 16;\n const G1 = (f >> 8) & 0x00ff;\n const B1 = f & 0x0000ff;\n const R2 = t >> 16;\n const G2 = (t >> 8) & 0x00ff;\n const B2 = t & 0x0000ff;\n return `#${(\n 0x1000000 +\n (Math.round((R2 - R1) * percent) + R1) * 0x10000 +\n (Math.round((G2 - G1) * percent) + G1) * 0x100 +\n (Math.round((B2 - B1) * percent) + B1)\n )\n .toString(16)\n .slice(1)}`;\n}\n\nfunction blendRGBColors(colorOne: string, colorTwo: string, percent: number) {\n const [R, G, B] = colorRGB(colorOne);\n const t = colorTwo.split(',');\n\n return `rgb(${Math.round((Number.parseInt(t[0].slice(4)) - R) * percent) + R},${\n Math.round((Number.parseInt(t[1]) - G) * percent) + G\n },${Math.round((Number.parseInt(t[2]) - B) * percent) + B})`;\n}\n\nexport function blend(colorOne?: string, colorTwo?: string, percent = 1) {\n if (!colorOne || !colorTwo) return;\n\n if (colorOne.length > 7) {\n if (colorTwo.length > 7) {\n return blendRGBColors(colorOne, colorTwo, percent);\n }\n return blendRGBColors(colorOne, `rgb(${hex2rgb(colorTwo)})`, percent);\n }\n if (colorTwo.length > 7) {\n return blendRGBColors(`rgb(${hex2rgb(colorOne).join(',')})`, colorTwo, percent);\n }\n return blendHexColors(colorOne, colorTwo, percent);\n}\n\nfunction colorRGB(color: string) {\n const f = color.split(',');\n const R = Number.parseInt(f[0].slice(4));\n const G = Number.parseInt(f[1]);\n const B = Number.parseInt(f[2]);\n return [R, G, B];\n}\n\nfunction hex2rgb(hex: string) {\n // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain\n return hex\n .replace(/^#?([a-f\\d])([a-f\\d])([a-f\\d])$/i, (_m, r, g, b) => `#${r}${r}${g}${g}${b}${b}`)\n .substring(1)\n .match(/.{2}/g)\n ?.map((x) => Number.parseInt(x, 16))!;\n}\n\nexport function opacity(color?: string, percent = 1) {\n if (!color) return;\n if (color.includes('#') && color.match(/^#?[a-fA-F\\d]{6}$/)) {\n color = `rgba(${hex2rgb(color).join(', ')}, ${percent})`;\n } else if (color.includes('rgb')) {\n color = `rgba(${colorRGB(color).join(', ')}, ${percent})`;\n } else {\n return;\n }\n return color;\n}\n\nexport function brightness(color: any) {\n if (!color) return;\n if (color.length <= 7) {\n color = hex2rgb(color);\n } else {\n color = colorRGB(color);\n }\n return Math.round(\n (Number.parseInt(color[0]) * 299 + Number.parseInt(color[1]) * 587 + Number.parseInt(color[2]) * 114) / 1000,\n );\n}\n\nconst lightMemo: { [input: string]: string } = {};\nexport const light = (color?: string, factor = 1) => {\n if (!color) return;\n const inputKey = `${color}_${factor}`;\n if (lightMemo[inputKey]) return lightMemo[inputKey];\n\n let r = 0;\n let g = 0;\n let b = 0;\n let a = 1;\n if (color.startsWith('#')) {\n if (color.length !== 4 && color.length !== 7) {\n throw new Error(`Got invalid color ${color}`);\n }\n const partSize = color.length === 4 ? 1 : 2;\n r = Number.parseInt(color.substring(1, 1 + partSize), 16);\n g = Number.parseInt(color.substring(1 + partSize, 1 + partSize * 2), 16);\n b = Number.parseInt(color.substring(1 + partSize * 2, 1 + partSize * 3), 16);\n a = 1; // not handled for now\n } else if (color.startsWith('rgb(')) {\n const trimmed = color.substring('rgb('.length, color.length - ')'.length);\n const parts = trimmed.split(',').map((part) => Number.parseInt(part.trim(), 10));\n r = parts[0];\n g = parts[1];\n b = parts[2];\n a = 1;\n } else if (color.startsWith('rgba(')) {\n const trimmed = color.substring('rgba('.length, color.length - ')'.length);\n const parts = trimmed.split(',').map((part) => Number.parseInt(part.trim(), 10));\n r = parts[0];\n g = parts[1];\n b = parts[2];\n a = parts[2];\n } else {\n throw new Error(`Got invalid color ${color}`);\n }\n\n const hsl = rgbToHsl(r, g, b);\n\n hsl[2] += (1 - hsl[2]) * factor;\n\n const rgb = hslToRgb(...hsl);\n\n return lightMemo[inputKey] === `rgba(${rgb[0]}, ${rgb[1]}, ${rgb[2]}, ${a})`;\n};\n\nconst rgbToHsl = (r: number, g: number, b: number) => {\n r /= 255;\n g /= 255;\n b /= 255;\n\n const max = Math.max(r, g, b);\n const min = Math.min(r, g, b);\n let h = 0;\n let s = 0;\n const l = (max + min) / 2;\n\n if (max === min) {\n h = s = 0;\n } else {\n const d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n }\n\n h! /= 6;\n }\n\n return [h, s, l] as [h: number, s: number, l: number];\n};\n\nconst hslToRgb = (h: number, s: number, l: number) => {\n let r = 0;\n let g = 0;\n let b = 0;\n\n if (s === 0) {\n r = g = b = l;\n } else {\n function hue2rgb(p: number, q: number, t: number) {\n if (t < 0) t += 1;\n if (t > 1) t -= 1;\n if (t < 1 / 6) return p + (q - p) * 6 * t;\n if (t < 1 / 2) return q;\n if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;\n return p;\n }\n\n const q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n const p = 2 * l - q;\n\n r = hue2rgb(p, q, h + 1 / 3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - 1 / 3);\n }\n\n return [r * 255, g * 255, b * 255] as [r: number, g: number, b: number];\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"color.js","names":["shadeHexColor","color","percent","f","Number","parseInt","slice","t","p","R","G","B","concat","Math","round","toString","shadeRGBColor","_colorRGB","colorRGB","_colorRGB2","_slicedToArray2","shade","arguments","length","undefined","blendHexColors","colorOne","colorTwo","R1","G1","B1","R2","G2","B2","blendRGBColors","_colorRGB3","_colorRGB4","split","blend","hex2rgb","join","hex","_hex$replace$substrin","replace","_m","r","g","b","substring","match","map","x","opacity","includes","brightness","lightMemo","light","exports","factor","inputKey","a","startsWith","Error","partSize","trimmed","parts","part","trim","hsl","rgbToHsl","rgb","hslToRgb","apply","_toConsumableArray2","max","min","h","s","l","d","hue2rgb","q"],"sources":["../../src/utils/color.ts"],"sourcesContent":["function shadeHexColor(color: string, percent: number) {\n const f = Number.parseInt(color.slice(1), 16);\n const t = percent < 0 ? 0 : 255;\n const p = percent < 0 ? percent * -1 : percent;\n const R = f >> 16;\n const G = (f >> 8) & 0x00ff;\n const B = f & 0x0000ff;\n return `#${(\n 0x1000000 +\n (Math.round((t - R) * p) + R) * 0x10000 +\n (Math.round((t - G) * p) + G) * 0x100 +\n (Math.round((t - B) * p) + B)\n )\n .toString(16)\n .slice(1)}`;\n}\n\nfunction shadeRGBColor(color: string, percent: number) {\n const [R, G, B] = colorRGB(color);\n const t = percent < 0 ? 0 : 255;\n const p = percent < 0 ? percent * -1 : percent;\n\n return `rgb(${Math.round((t - R) * p) + R},${Math.round((t - G) * p) + G},${\n Math.round((t - B) * p) + B\n })`;\n}\n\nexport function shade(color?: string, percent = 1) {\n if (!color) return;\n // TODO error for color name, example 'aqua'\n if (color.length > 7) return shadeRGBColor(color, percent);\n return shadeHexColor(color, percent);\n}\n\nfunction blendHexColors(colorOne: string, colorTwo: string, percent: number) {\n const f = Number.parseInt(colorOne.slice(1), 16);\n const t = Number.parseInt(colorTwo.slice(1), 16);\n const R1 = f >> 16;\n const G1 = (f >> 8) & 0x00ff;\n const B1 = f & 0x0000ff;\n const R2 = t >> 16;\n const G2 = (t >> 8) & 0x00ff;\n const B2 = t & 0x0000ff;\n return `#${(\n 0x1000000 +\n (Math.round((R2 - R1) * percent) + R1) * 0x10000 +\n (Math.round((G2 - G1) * percent) + G1) * 0x100 +\n (Math.round((B2 - B1) * percent) + B1)\n )\n .toString(16)\n .slice(1)}`;\n}\n\nfunction blendRGBColors(colorOne: string, colorTwo: string, percent: number) {\n const [R, G, B] = colorRGB(colorOne);\n const t = colorTwo.split(',');\n\n return `rgb(${Math.round((Number.parseInt(t[0].slice(4)) - R) * percent) + R},${\n Math.round((Number.parseInt(t[1]) - G) * percent) + G\n },${Math.round((Number.parseInt(t[2]) - B) * percent) + B})`;\n}\n\nexport function blend(colorOne?: string, colorTwo?: string, percent = 1) {\n if (!colorOne || !colorTwo) return;\n\n if (colorOne.length > 7) {\n if (colorTwo.length > 7) {\n return blendRGBColors(colorOne, colorTwo, percent);\n }\n return blendRGBColors(colorOne, `rgb(${hex2rgb(colorTwo)})`, percent);\n }\n if (colorTwo.length > 7) {\n return blendRGBColors(`rgb(${hex2rgb(colorOne).join(',')})`, colorTwo, percent);\n }\n return blendHexColors(colorOne, colorTwo, percent);\n}\n\nfunction colorRGB(color: string) {\n const f = color.split(',');\n const R = Number.parseInt(f[0].slice(4));\n const G = Number.parseInt(f[1]);\n const B = Number.parseInt(f[2]);\n return [R, G, B];\n}\n\nfunction hex2rgb(hex: string) {\n // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain\n return hex\n .replace(/^#?([a-f\\d])([a-f\\d])([a-f\\d])$/i, (_m, r, g, b) => `#${r}${r}${g}${g}${b}${b}`)\n .substring(1)\n .match(/.{2}/g)\n ?.map((x) => Number.parseInt(x, 16))!;\n}\n\nexport function opacity(color?: string, percent = 1) {\n if (!color) return;\n if (color.includes('#') && color.match(/^#?[a-fA-F\\d]{6}$/)) {\n color = `rgba(${hex2rgb(color).join(', ')}, ${percent})`;\n } else if (color.includes('rgb')) {\n color = `rgba(${colorRGB(color).join(', ')}, ${percent})`;\n } else {\n return;\n }\n return color;\n}\n\nexport function brightness(color: any) {\n if (!color) return;\n if (color.length <= 7) {\n color = hex2rgb(color);\n } else {\n color = colorRGB(color);\n }\n return Math.round(\n (Number.parseInt(color[0]) * 299 + Number.parseInt(color[1]) * 587 + Number.parseInt(color[2]) * 114) / 1000,\n );\n}\n\nconst lightMemo: { [input: string]: string } = {};\nexport const light = (color?: string, factor = 1) => {\n if (!color) return;\n const inputKey = `${color}_${factor}`;\n if (lightMemo[inputKey]) return lightMemo[inputKey];\n\n let r = 0;\n let g = 0;\n let b = 0;\n let a = 1;\n if (color.startsWith('#')) {\n if (color.length !== 4 && color.length !== 7) {\n throw new Error(`Got invalid color ${color}`);\n }\n const partSize = color.length === 4 ? 1 : 2;\n r = Number.parseInt(color.substring(1, 1 + partSize), 16);\n g = Number.parseInt(color.substring(1 + partSize, 1 + partSize * 2), 16);\n b = Number.parseInt(color.substring(1 + partSize * 2, 1 + partSize * 3), 16);\n a = 1; // not handled for now\n } else if (color.startsWith('rgb(')) {\n const trimmed = color.substring('rgb('.length, color.length - ')'.length);\n const parts = trimmed.split(',').map((part) => Number.parseInt(part.trim(), 10));\n r = parts[0];\n g = parts[1];\n b = parts[2];\n a = 1;\n } else if (color.startsWith('rgba(')) {\n const trimmed = color.substring('rgba('.length, color.length - ')'.length);\n const parts = trimmed.split(',').map((part) => Number.parseInt(part.trim(), 10));\n r = parts[0];\n g = parts[1];\n b = parts[2];\n a = parts[2];\n } else {\n throw new Error(`Got invalid color ${color}`);\n }\n\n const hsl = rgbToHsl(r, g, b);\n\n hsl[2] += (1 - hsl[2]) * factor;\n\n const rgb = hslToRgb(...hsl);\n\n return lightMemo[inputKey] === `rgba(${rgb[0]}, ${rgb[1]}, ${rgb[2]}, ${a})`;\n};\n\nconst rgbToHsl = (r: number, g: number, b: number) => {\n r /= 255;\n g /= 255;\n b /= 255;\n\n const max = Math.max(r, g, b);\n const min = Math.min(r, g, b);\n let h = 0;\n let s = 0;\n const l = (max + min) / 2;\n\n if (max === min) {\n h = s = 0;\n } else {\n const d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n }\n\n h! /= 6;\n }\n\n return [h, s, l] as [h: number, s: number, l: number];\n};\n\nconst hslToRgb = (h: number, s: number, l: number) => {\n let r = 0;\n let g = 0;\n let b = 0;\n\n if (s === 0) {\n r = g = b = l;\n } else {\n function hue2rgb(p: number, q: number, t: number) {\n if (t < 0) t += 1;\n if (t > 1) t -= 1;\n if (t < 1 / 6) return p + (q - p) * 6 * t;\n if (t < 1 / 2) return q;\n if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;\n return p;\n }\n\n const q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n const p = 2 * l - q;\n\n r = hue2rgb(p, q, h + 1 / 3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - 1 / 3);\n }\n\n return [r * 255, g * 255, b * 255] as [r: number, g: number, b: number];\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,70 +1,88 @@
1
+ import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
2
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
1
3
  function shadeHexColor(color, percent) {
2
- const f = Number.parseInt(color.slice(1), 16);
3
- const t = percent < 0 ? 0 : 255;
4
- const p = percent < 0 ? percent * -1 : percent;
5
- const R = f >> 16;
6
- const G = f >> 8 & 0x00ff;
7
- const B = f & 0x0000ff;
8
- return `#${(0x1000000 + (Math.round((t - R) * p) + R) * 0x10000 + (Math.round((t - G) * p) + G) * 0x100 + (Math.round((t - B) * p) + B)).toString(16).slice(1)}`;
4
+ var f = Number.parseInt(color.slice(1), 16);
5
+ var t = percent < 0 ? 0 : 255;
6
+ var p = percent < 0 ? percent * -1 : percent;
7
+ var R = f >> 16;
8
+ var G = f >> 8 & 0x00ff;
9
+ var B = f & 0x0000ff;
10
+ return "#".concat((0x1000000 + (Math.round((t - R) * p) + R) * 0x10000 + (Math.round((t - G) * p) + G) * 0x100 + (Math.round((t - B) * p) + B)).toString(16).slice(1));
9
11
  }
10
12
  function shadeRGBColor(color, percent) {
11
- const [R, G, B] = colorRGB(color);
12
- const t = percent < 0 ? 0 : 255;
13
- const p = percent < 0 ? percent * -1 : percent;
14
- return `rgb(${Math.round((t - R) * p) + R},${Math.round((t - G) * p) + G},${Math.round((t - B) * p) + B})`;
13
+ var _colorRGB = colorRGB(color),
14
+ _colorRGB2 = _slicedToArray(_colorRGB, 3),
15
+ R = _colorRGB2[0],
16
+ G = _colorRGB2[1],
17
+ B = _colorRGB2[2];
18
+ var t = percent < 0 ? 0 : 255;
19
+ var p = percent < 0 ? percent * -1 : percent;
20
+ return "rgb(".concat(Math.round((t - R) * p) + R, ",").concat(Math.round((t - G) * p) + G, ",").concat(Math.round((t - B) * p) + B, ")");
15
21
  }
16
- export function shade(color, percent = 1) {
22
+ export function shade(color) {
23
+ var percent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
17
24
  if (!color) return;
18
25
  // TODO error for color name, example 'aqua'
19
26
  if (color.length > 7) return shadeRGBColor(color, percent);
20
27
  return shadeHexColor(color, percent);
21
28
  }
22
29
  function blendHexColors(colorOne, colorTwo, percent) {
23
- const f = Number.parseInt(colorOne.slice(1), 16);
24
- const t = Number.parseInt(colorTwo.slice(1), 16);
25
- const R1 = f >> 16;
26
- const G1 = f >> 8 & 0x00ff;
27
- const B1 = f & 0x0000ff;
28
- const R2 = t >> 16;
29
- const G2 = t >> 8 & 0x00ff;
30
- const B2 = t & 0x0000ff;
31
- return `#${(0x1000000 + (Math.round((R2 - R1) * percent) + R1) * 0x10000 + (Math.round((G2 - G1) * percent) + G1) * 0x100 + (Math.round((B2 - B1) * percent) + B1)).toString(16).slice(1)}`;
30
+ var f = Number.parseInt(colorOne.slice(1), 16);
31
+ var t = Number.parseInt(colorTwo.slice(1), 16);
32
+ var R1 = f >> 16;
33
+ var G1 = f >> 8 & 0x00ff;
34
+ var B1 = f & 0x0000ff;
35
+ var R2 = t >> 16;
36
+ var G2 = t >> 8 & 0x00ff;
37
+ var B2 = t & 0x0000ff;
38
+ return "#".concat((0x1000000 + (Math.round((R2 - R1) * percent) + R1) * 0x10000 + (Math.round((G2 - G1) * percent) + G1) * 0x100 + (Math.round((B2 - B1) * percent) + B1)).toString(16).slice(1));
32
39
  }
33
40
  function blendRGBColors(colorOne, colorTwo, percent) {
34
- const [R, G, B] = colorRGB(colorOne);
35
- const t = colorTwo.split(',');
36
- return `rgb(${Math.round((Number.parseInt(t[0].slice(4)) - R) * percent) + R},${Math.round((Number.parseInt(t[1]) - G) * percent) + G},${Math.round((Number.parseInt(t[2]) - B) * percent) + B})`;
41
+ var _colorRGB3 = colorRGB(colorOne),
42
+ _colorRGB4 = _slicedToArray(_colorRGB3, 3),
43
+ R = _colorRGB4[0],
44
+ G = _colorRGB4[1],
45
+ B = _colorRGB4[2];
46
+ var t = colorTwo.split(',');
47
+ return "rgb(".concat(Math.round((Number.parseInt(t[0].slice(4)) - R) * percent) + R, ",").concat(Math.round((Number.parseInt(t[1]) - G) * percent) + G, ",").concat(Math.round((Number.parseInt(t[2]) - B) * percent) + B, ")");
37
48
  }
38
- export function blend(colorOne, colorTwo, percent = 1) {
49
+ export function blend(colorOne, colorTwo) {
50
+ var percent = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
39
51
  if (!colorOne || !colorTwo) return;
40
52
  if (colorOne.length > 7) {
41
53
  if (colorTwo.length > 7) {
42
54
  return blendRGBColors(colorOne, colorTwo, percent);
43
55
  }
44
- return blendRGBColors(colorOne, `rgb(${hex2rgb(colorTwo)})`, percent);
56
+ return blendRGBColors(colorOne, "rgb(".concat(hex2rgb(colorTwo), ")"), percent);
45
57
  }
46
58
  if (colorTwo.length > 7) {
47
- return blendRGBColors(`rgb(${hex2rgb(colorOne).join(',')})`, colorTwo, percent);
59
+ return blendRGBColors("rgb(".concat(hex2rgb(colorOne).join(','), ")"), colorTwo, percent);
48
60
  }
49
61
  return blendHexColors(colorOne, colorTwo, percent);
50
62
  }
51
63
  function colorRGB(color) {
52
- const f = color.split(',');
53
- const R = Number.parseInt(f[0].slice(4));
54
- const G = Number.parseInt(f[1]);
55
- const B = Number.parseInt(f[2]);
64
+ var f = color.split(',');
65
+ var R = Number.parseInt(f[0].slice(4));
66
+ var G = Number.parseInt(f[1]);
67
+ var B = Number.parseInt(f[2]);
56
68
  return [R, G, B];
57
69
  }
58
70
  function hex2rgb(hex) {
71
+ var _hex$replace$substrin;
59
72
  // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain
60
- return hex.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i, (_m, r, g, b) => `#${r}${r}${g}${g}${b}${b}`).substring(1).match(/.{2}/g)?.map(x => Number.parseInt(x, 16));
73
+ return (_hex$replace$substrin = hex.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i, function (_m, r, g, b) {
74
+ return "#".concat(r).concat(r).concat(g).concat(g).concat(b).concat(b);
75
+ }).substring(1).match(/.{2}/g)) === null || _hex$replace$substrin === void 0 ? void 0 : _hex$replace$substrin.map(function (x) {
76
+ return Number.parseInt(x, 16);
77
+ });
61
78
  }
62
- export function opacity(color, percent = 1) {
79
+ export function opacity(color) {
80
+ var percent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
63
81
  if (!color) return;
64
82
  if (color.includes('#') && color.match(/^#?[a-fA-F\d]{6}$/)) {
65
- color = `rgba(${hex2rgb(color).join(', ')}, ${percent})`;
83
+ color = "rgba(".concat(hex2rgb(color).join(', '), ", ").concat(percent, ")");
66
84
  } else if (color.includes('rgb')) {
67
- color = `rgba(${colorRGB(color).join(', ')}, ${percent})`;
85
+ color = "rgba(".concat(colorRGB(color).join(', '), ", ").concat(percent, ")");
68
86
  } else {
69
87
  return;
70
88
  }
@@ -79,59 +97,64 @@ export function brightness(color) {
79
97
  }
80
98
  return Math.round((Number.parseInt(color[0]) * 299 + Number.parseInt(color[1]) * 587 + Number.parseInt(color[2]) * 114) / 1000);
81
99
  }
82
- const lightMemo = {};
83
- export const light = (color, factor = 1) => {
100
+ var lightMemo = {};
101
+ export var light = function light(color) {
102
+ var factor = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
84
103
  if (!color) return;
85
- const inputKey = `${color}_${factor}`;
104
+ var inputKey = "".concat(color, "_").concat(factor);
86
105
  if (lightMemo[inputKey]) return lightMemo[inputKey];
87
- let r = 0;
88
- let g = 0;
89
- let b = 0;
90
- let a = 1;
106
+ var r = 0;
107
+ var g = 0;
108
+ var b = 0;
109
+ var a = 1;
91
110
  if (color.startsWith('#')) {
92
111
  if (color.length !== 4 && color.length !== 7) {
93
- throw new Error(`Got invalid color ${color}`);
112
+ throw new Error("Got invalid color ".concat(color));
94
113
  }
95
- const partSize = color.length === 4 ? 1 : 2;
114
+ var partSize = color.length === 4 ? 1 : 2;
96
115
  r = Number.parseInt(color.substring(1, 1 + partSize), 16);
97
116
  g = Number.parseInt(color.substring(1 + partSize, 1 + partSize * 2), 16);
98
117
  b = Number.parseInt(color.substring(1 + partSize * 2, 1 + partSize * 3), 16);
99
118
  a = 1; // not handled for now
100
119
  } else if (color.startsWith('rgb(')) {
101
- const trimmed = color.substring('rgb('.length, color.length - ')'.length);
102
- const parts = trimmed.split(',').map(part => Number.parseInt(part.trim(), 10));
120
+ var trimmed = color.substring('rgb('.length, color.length - ')'.length);
121
+ var parts = trimmed.split(',').map(function (part) {
122
+ return Number.parseInt(part.trim(), 10);
123
+ });
103
124
  r = parts[0];
104
125
  g = parts[1];
105
126
  b = parts[2];
106
127
  a = 1;
107
128
  } else if (color.startsWith('rgba(')) {
108
- const trimmed = color.substring('rgba('.length, color.length - ')'.length);
109
- const parts = trimmed.split(',').map(part => Number.parseInt(part.trim(), 10));
110
- r = parts[0];
111
- g = parts[1];
112
- b = parts[2];
113
- a = parts[2];
129
+ var _trimmed = color.substring('rgba('.length, color.length - ')'.length);
130
+ var _parts = _trimmed.split(',').map(function (part) {
131
+ return Number.parseInt(part.trim(), 10);
132
+ });
133
+ r = _parts[0];
134
+ g = _parts[1];
135
+ b = _parts[2];
136
+ a = _parts[2];
114
137
  } else {
115
- throw new Error(`Got invalid color ${color}`);
138
+ throw new Error("Got invalid color ".concat(color));
116
139
  }
117
- const hsl = rgbToHsl(r, g, b);
140
+ var hsl = rgbToHsl(r, g, b);
118
141
  hsl[2] += (1 - hsl[2]) * factor;
119
- const rgb = hslToRgb(...hsl);
120
- return lightMemo[inputKey] === `rgba(${rgb[0]}, ${rgb[1]}, ${rgb[2]}, ${a})`;
142
+ var rgb = hslToRgb.apply(void 0, _toConsumableArray(hsl));
143
+ return lightMemo[inputKey] === "rgba(".concat(rgb[0], ", ").concat(rgb[1], ", ").concat(rgb[2], ", ").concat(a, ")");
121
144
  };
122
- const rgbToHsl = (r, g, b) => {
145
+ var rgbToHsl = function rgbToHsl(r, g, b) {
123
146
  r /= 255;
124
147
  g /= 255;
125
148
  b /= 255;
126
- const max = Math.max(r, g, b);
127
- const min = Math.min(r, g, b);
128
- let h = 0;
129
- let s = 0;
130
- const l = (max + min) / 2;
149
+ var max = Math.max(r, g, b);
150
+ var min = Math.min(r, g, b);
151
+ var h = 0;
152
+ var s = 0;
153
+ var l = (max + min) / 2;
131
154
  if (max === min) {
132
155
  h = s = 0;
133
156
  } else {
134
- const d = max - min;
157
+ var d = max - min;
135
158
  s = l > 0.5 ? d / (2 - max - min) : d / (max + min);
136
159
  switch (max) {
137
160
  case r:
@@ -148,23 +171,23 @@ const rgbToHsl = (r, g, b) => {
148
171
  }
149
172
  return [h, s, l];
150
173
  };
151
- const hslToRgb = (h, s, l) => {
152
- let r = 0;
153
- let g = 0;
154
- let b = 0;
174
+ var hslToRgb = function hslToRgb(h, s, l) {
175
+ var r = 0;
176
+ var g = 0;
177
+ var b = 0;
155
178
  if (s === 0) {
156
179
  r = g = b = l;
157
180
  } else {
158
- function hue2rgb(p, q, t) {
181
+ var hue2rgb = function hue2rgb(p, q, t) {
159
182
  if (t < 0) t += 1;
160
183
  if (t > 1) t -= 1;
161
184
  if (t < 1 / 6) return p + (q - p) * 6 * t;
162
185
  if (t < 1 / 2) return q;
163
186
  if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;
164
187
  return p;
165
- }
166
- const q = l < 0.5 ? l * (1 + s) : l + s - l * s;
167
- const p = 2 * l - q;
188
+ };
189
+ var q = l < 0.5 ? l * (1 + s) : l + s - l * s;
190
+ var p = 2 * l - q;
168
191
  r = hue2rgb(p, q, h + 1 / 3);
169
192
  g = hue2rgb(p, q, h);
170
193
  b = hue2rgb(p, q, h - 1 / 3);