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

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 +22 -36
  2. package/lib/LastInteractionType.js.map +1 -1
  3. package/lib/LastInteractionType.mjs +19 -33
  4. package/lib/LastInteractionType.mjs.map +1 -1
  5. package/lib/core-types/Component.js +25 -41
  6. package/lib/core-types/Component.js.map +1 -1
  7. package/lib/core-types/Component.mjs +18 -38
  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 +143 -205
  14. package/lib/coreFactory.js.map +1 -1
  15. package/lib/coreFactory.mjs +118 -164
  16. package/lib/coreFactory.mjs.map +1 -1
  17. package/lib/decorators/propsObserver.js +36 -64
  18. package/lib/decorators/propsObserver.js.map +1 -1
  19. package/lib/decorators/propsObserver.mjs +33 -61
  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 +51 -59
  26. package/lib/enhancement/Children.js.map +1 -1
  27. package/lib/enhancement/Children.mjs +47 -41
  28. package/lib/enhancement/Children.mjs.map +1 -1
  29. package/lib/enhancement/Root.js +36 -37
  30. package/lib/enhancement/Root.js.map +1 -1
  31. package/lib/enhancement/Root.mjs +28 -18
  32. package/lib/enhancement/Root.mjs.map +1 -1
  33. package/lib/enhancement/dataName.js +7 -8
  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 +6 -9
  38. package/lib/enhancement/enhance.js.map +1 -1
  39. package/lib/enhancement/enhance.mjs +5 -7
  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 +10 -9
  48. package/lib/enhancement/i18n.mjs.map +1 -1
  49. package/lib/enhancement/inheritedName.js +7 -8
  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 +47 -56
  54. package/lib/enhancement/staticChildren.js.map +1 -1
  55. package/lib/enhancement/staticChildren.mjs +43 -48
  56. package/lib/enhancement/staticChildren.mjs.map +1 -1
  57. package/lib/enhancement/style.js +29 -27
  58. package/lib/enhancement/style.js.map +1 -1
  59. package/lib/enhancement/style.mjs +26 -20
  60. package/lib/enhancement/style.mjs.map +1 -1
  61. package/lib/enhancement/uncontrolledProps.js +46 -65
  62. package/lib/enhancement/uncontrolledProps.js.map +1 -1
  63. package/lib/enhancement/uncontrolledProps.mjs +43 -52
  64. package/lib/enhancement/uncontrolledProps.mjs.map +1 -1
  65. package/lib/esm/LastInteractionType.mjs +19 -33
  66. package/lib/esm/core-types/Component.mjs +18 -38
  67. package/lib/esm/core-types/symbols.mjs +9 -9
  68. package/lib/esm/coreFactory.mjs +118 -164
  69. package/lib/esm/enhancement/Children.mjs +47 -41
  70. package/lib/esm/enhancement/Root.mjs +28 -18
  71. package/lib/esm/enhancement/dataName.mjs +5 -5
  72. package/lib/esm/enhancement/enhance.mjs +5 -7
  73. package/lib/esm/enhancement/functionDefaultProps.mjs +4 -4
  74. package/lib/esm/enhancement/i18n.mjs +10 -9
  75. package/lib/esm/enhancement/inheritedName.mjs +5 -5
  76. package/lib/esm/enhancement/staticChildren.mjs +43 -48
  77. package/lib/esm/enhancement/style.mjs +26 -20
  78. package/lib/esm/enhancement/uncontrolledProps.mjs +43 -52
  79. package/lib/esm/register.mjs +12 -20
  80. package/lib/esm/styled/reshadow-core.mjs +98 -111
  81. package/lib/esm/styled/sstyled.mjs +31 -41
  82. package/lib/esm/utils/assignProps.mjs +32 -36
  83. package/lib/esm/utils/enhances/WithI18n.mjs +15 -17
  84. package/lib/esm/utils/enhances/i18nEnhance.mjs +47 -61
  85. package/lib/esm/utils/logger.mjs +13 -21
  86. package/lib/esm/utils/pick.mjs +4 -4
  87. package/lib/esm/utils/ref.mjs +27 -43
  88. package/lib/esm/utils/use/useEnhancedEffect.mjs +1 -1
  89. package/lib/index.js +17 -17
  90. package/lib/register.js +17 -24
  91. package/lib/register.js.map +1 -1
  92. package/lib/register.mjs +12 -20
  93. package/lib/register.mjs.map +1 -1
  94. package/lib/styled/index.js +4 -4
  95. package/lib/styled/reshadow-core.js +102 -104
  96. package/lib/styled/reshadow-core.js.map +1 -1
  97. package/lib/styled/reshadow-core.mjs +98 -111
  98. package/lib/styled/reshadow-core.mjs.map +1 -1
  99. package/lib/styled/sstyled.js +31 -53
  100. package/lib/styled/sstyled.js.map +1 -1
  101. package/lib/styled/sstyled.mjs +31 -41
  102. package/lib/styled/sstyled.mjs.map +1 -1
  103. package/lib/theme/processor.js +150 -222
  104. package/lib/theme/processor.js.map +1 -1
  105. package/lib/theme/processor.mjs +148 -221
  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 +140 -215
  118. package/lib/theme/utils.js.map +1 -1
  119. package/lib/theme/utils.mjs +135 -214
  120. package/lib/theme/utils.mjs.map +1 -1
  121. package/lib/utils/CSSinJS.js +8 -10
  122. package/lib/utils/CSSinJS.js.map +1 -1
  123. package/lib/utils/CSSinJS.mjs +6 -7
  124. package/lib/utils/CSSinJS.mjs.map +1 -1
  125. package/lib/utils/ThemeProvider.js +44 -51
  126. package/lib/utils/ThemeProvider.js.map +1 -1
  127. package/lib/utils/ThemeProvider.mjs +36 -47
  128. package/lib/utils/ThemeProvider.mjs.map +1 -1
  129. package/lib/utils/addonText.js +4 -7
  130. package/lib/utils/addonText.js.map +1 -1
  131. package/lib/utils/addonText.mjs +2 -5
  132. package/lib/utils/addonText.mjs.map +1 -1
  133. package/lib/utils/addonTextChildren.js +15 -21
  134. package/lib/utils/addonTextChildren.js.map +1 -1
  135. package/lib/utils/addonTextChildren.mjs +7 -13
  136. package/lib/utils/addonTextChildren.mjs.map +1 -1
  137. package/lib/utils/ariaProps.js +7 -5
  138. package/lib/utils/ariaProps.js.map +1 -1
  139. package/lib/utils/ariaProps.mjs +7 -5
  140. package/lib/utils/ariaProps.mjs.map +1 -1
  141. package/lib/utils/assignProps.js +33 -37
  142. package/lib/utils/assignProps.js.map +1 -1
  143. package/lib/utils/assignProps.mjs +32 -36
  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 +72 -95
  148. package/lib/utils/color.js.map +1 -1
  149. package/lib/utils/color.mjs +71 -94
  150. package/lib/utils/color.mjs.map +1 -1
  151. package/lib/utils/compose.js +3 -12
  152. package/lib/utils/compose.js.map +1 -1
  153. package/lib/utils/compose.mjs +2 -11
  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 +3 -4
  160. package/lib/utils/cssToIntDefault.js.map +1 -1
  161. package/lib/utils/cssToIntDefault.mjs +2 -3
  162. package/lib/utils/cssToIntDefault.mjs.map +1 -1
  163. package/lib/utils/enhances/WithCSS.js +10 -8
  164. package/lib/utils/enhances/WithCSS.js.map +1 -1
  165. package/lib/utils/enhances/WithCSS.mjs +7 -6
  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 +15 -17
  170. package/lib/utils/enhances/WithI18n.mjs.map +1 -1
  171. package/lib/utils/enhances/a11yEnhance.js +34 -39
  172. package/lib/utils/enhances/a11yEnhance.js.map +1 -1
  173. package/lib/utils/enhances/a11yEnhance.mjs +32 -36
  174. package/lib/utils/enhances/a11yEnhance.mjs.map +1 -1
  175. package/lib/utils/enhances/animatedSizeEnhance.js +55 -63
  176. package/lib/utils/enhances/animatedSizeEnhance.js.map +1 -1
  177. package/lib/utils/enhances/animatedSizeEnhance.mjs +50 -58
  178. package/lib/utils/enhances/animatedSizeEnhance.mjs.map +1 -1
  179. package/lib/utils/enhances/contextEnhance.js +12 -11
  180. package/lib/utils/enhances/contextEnhance.js.map +1 -1
  181. package/lib/utils/enhances/contextEnhance.mjs +9 -8
  182. package/lib/utils/enhances/contextEnhance.mjs.map +1 -1
  183. package/lib/utils/enhances/i18nEnhance.js +51 -67
  184. package/lib/utils/enhances/i18nEnhance.js.map +1 -1
  185. package/lib/utils/enhances/i18nEnhance.mjs +47 -61
  186. package/lib/utils/enhances/i18nEnhance.mjs.map +1 -1
  187. package/lib/utils/enhances/resolveColorEnhance.js +12 -10
  188. package/lib/utils/enhances/resolveColorEnhance.js.map +1 -1
  189. package/lib/utils/enhances/resolveColorEnhance.mjs +8 -6
  190. package/lib/utils/enhances/resolveColorEnhance.mjs.map +1 -1
  191. package/lib/utils/eventEmitter.js +30 -57
  192. package/lib/utils/eventEmitter.js.map +1 -1
  193. package/lib/utils/eventEmitter.mjs +26 -55
  194. package/lib/utils/eventEmitter.mjs.map +1 -1
  195. package/lib/utils/findComponent.js +35 -42
  196. package/lib/utils/findComponent.js.map +1 -1
  197. package/lib/utils/findComponent.mjs +26 -33
  198. package/lib/utils/findComponent.mjs.map +1 -1
  199. package/lib/utils/fire.js +7 -13
  200. package/lib/utils/fire.js.map +1 -1
  201. package/lib/utils/fire.mjs +5 -11
  202. package/lib/utils/fire.mjs.map +1 -1
  203. package/lib/utils/focus-lock/focusBorders.js +28 -32
  204. package/lib/utils/focus-lock/focusBorders.js.map +1 -1
  205. package/lib/utils/focus-lock/focusBorders.mjs +26 -32
  206. package/lib/utils/focus-lock/focusBorders.mjs.map +1 -1
  207. package/lib/utils/focus-lock/getFocusableIn.js +4 -6
  208. package/lib/utils/focus-lock/getFocusableIn.js.map +1 -1
  209. package/lib/utils/focus-lock/getFocusableIn.mjs +3 -6
  210. package/lib/utils/focus-lock/getFocusableIn.mjs.map +1 -1
  211. package/lib/utils/focus-lock/isFocusInside.js +5 -6
  212. package/lib/utils/focus-lock/isFocusInside.js.map +1 -1
  213. package/lib/utils/focus-lock/isFocusInside.mjs +4 -6
  214. package/lib/utils/focus-lock/isFocusInside.mjs.map +1 -1
  215. package/lib/utils/focus-lock/isFocusable.js +9 -12
  216. package/lib/utils/focus-lock/isFocusable.js.map +1 -1
  217. package/lib/utils/focus-lock/isFocusable.mjs +8 -11
  218. package/lib/utils/focus-lock/isFocusable.mjs.map +1 -1
  219. package/lib/utils/focus-lock/setFocus.js +21 -27
  220. package/lib/utils/focus-lock/setFocus.js.map +1 -1
  221. package/lib/utils/focus-lock/setFocus.mjs +19 -25
  222. package/lib/utils/focus-lock/setFocus.mjs.map +1 -1
  223. package/lib/utils/getAccessibleName.js +10 -22
  224. package/lib/utils/getAccessibleName.js.map +1 -1
  225. package/lib/utils/getAccessibleName.mjs +10 -21
  226. package/lib/utils/getAccessibleName.mjs.map +1 -1
  227. package/lib/utils/getDisplayName.js +1 -1
  228. package/lib/utils/getEventTarget.js +13 -32
  229. package/lib/utils/getEventTarget.js.map +1 -1
  230. package/lib/utils/getEventTarget.mjs +12 -31
  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 +4 -6
  236. package/lib/utils/getValue.js.map +1 -1
  237. package/lib/utils/getValue.mjs +3 -5
  238. package/lib/utils/getValue.mjs.map +1 -1
  239. package/lib/utils/hasLabels.js +16 -27
  240. package/lib/utils/hasLabels.js.map +1 -1
  241. package/lib/utils/hasLabels.mjs +14 -24
  242. package/lib/utils/hasLabels.mjs.map +1 -1
  243. package/lib/utils/hasParent.js +3 -2
  244. package/lib/utils/hasParent.js.map +1 -1
  245. package/lib/utils/hasParent.mjs +2 -3
  246. package/lib/utils/hasParent.mjs.map +1 -1
  247. package/lib/utils/ifChildren.js +6 -4
  248. package/lib/utils/ifChildren.js.map +1 -1
  249. package/lib/utils/ifChildren.mjs +4 -2
  250. package/lib/utils/ifChildren.mjs.map +1 -1
  251. package/lib/utils/injectStyle.js +11 -13
  252. package/lib/utils/injectStyle.js.map +1 -1
  253. package/lib/utils/injectStyle.mjs +9 -10
  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 +7 -9
  260. package/lib/utils/isInteractiveElement.js.map +1 -1
  261. package/lib/utils/isInteractiveElement.mjs +7 -9
  262. package/lib/utils/isInteractiveElement.mjs.map +1 -1
  263. package/lib/utils/isNode.js +4 -5
  264. package/lib/utils/isNode.js.map +1 -1
  265. package/lib/utils/isNode.mjs +1 -2
  266. package/lib/utils/isNode.mjs.map +1 -1
  267. package/lib/utils/isPromise.js +1 -1
  268. package/lib/utils/isRetina.js +7 -2
  269. package/lib/utils/isRetina.js.map +1 -1
  270. package/lib/utils/isRetina.mjs +6 -1
  271. package/lib/utils/isRetina.mjs.map +1 -1
  272. package/lib/utils/logger.js +18 -25
  273. package/lib/utils/logger.js.map +1 -1
  274. package/lib/utils/logger.mjs +13 -21
  275. package/lib/utils/logger.mjs.map +1 -1
  276. package/lib/utils/numericChecker.js +11 -18
  277. package/lib/utils/numericChecker.js.map +1 -1
  278. package/lib/utils/numericChecker.mjs +10 -17
  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 +10 -12
  289. package/lib/utils/propsForElement.js.map +1 -1
  290. package/lib/utils/propsForElement.mjs +8 -10
  291. package/lib/utils/propsForElement.mjs.map +1 -1
  292. package/lib/utils/rafTrottle.js +9 -14
  293. package/lib/utils/rafTrottle.js.map +1 -1
  294. package/lib/utils/rafTrottle.mjs +7 -12
  295. package/lib/utils/rafTrottle.mjs.map +1 -1
  296. package/lib/utils/reactToText.js +5 -8
  297. package/lib/utils/reactToText.js.map +1 -1
  298. package/lib/utils/reactToText.mjs +3 -6
  299. package/lib/utils/reactToText.mjs.map +1 -1
  300. package/lib/utils/ref.js +29 -47
  301. package/lib/utils/ref.js.map +1 -1
  302. package/lib/utils/ref.mjs +27 -43
  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 +8 -18
  311. package/lib/utils/uncontroll.js.map +1 -1
  312. package/lib/utils/uncontroll.mjs +8 -17
  313. package/lib/utils/uncontroll.mjs.map +1 -1
  314. package/lib/utils/uniqueID.js +22 -27
  315. package/lib/utils/uniqueID.js.map +1 -1
  316. package/lib/utils/uniqueID.mjs +18 -25
  317. package/lib/utils/uniqueID.mjs.map +1 -1
  318. package/lib/utils/use/useColorResolver.js +20 -21
  319. package/lib/utils/use/useColorResolver.js.map +1 -1
  320. package/lib/utils/use/useColorResolver.mjs +16 -18
  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 +5 -10
  327. package/lib/utils/use/useEventCallback.js.map +1 -1
  328. package/lib/utils/use/useEventCallback.mjs +3 -8
  329. package/lib/utils/use/useEventCallback.mjs.map +1 -1
  330. package/lib/utils/use/useEventListener.js +11 -15
  331. package/lib/utils/use/useEventListener.js.map +1 -1
  332. package/lib/utils/use/useEventListener.mjs +7 -11
  333. package/lib/utils/use/useEventListener.mjs.map +1 -1
  334. package/lib/utils/use/useFocusLock.js +80 -94
  335. package/lib/utils/use/useFocusLock.js.map +1 -1
  336. package/lib/utils/use/useFocusLock.mjs +71 -88
  337. package/lib/utils/use/useFocusLock.mjs.map +1 -1
  338. package/lib/utils/use/usePreventScroll.js +26 -28
  339. package/lib/utils/use/usePreventScroll.js.map +1 -1
  340. package/lib/utils/use/usePreventScroll.mjs +21 -23
  341. package/lib/utils/use/usePreventScroll.mjs.map +1 -1
  342. package/lib/utils/use/useScrollBarWidth.js +8 -14
  343. package/lib/utils/use/useScrollBarWidth.js.map +1 -1
  344. package/lib/utils/use/useScrollBarWidth.mjs +8 -13
  345. package/lib/utils/use/useScrollBarWidth.mjs.map +1 -1
  346. package/lib/utils/useCssVariable.js +32 -37
  347. package/lib/utils/useCssVariable.js.map +1 -1
  348. package/lib/utils/useCssVariable.mjs +27 -34
  349. package/lib/utils/useCssVariable.mjs.map +1 -1
  350. package/lib/utils/zIndexStacking.js +28 -24
  351. package/lib/utils/zIndexStacking.js.map +1 -1
  352. package/lib/utils/zIndexStacking.mjs +23 -22
  353. package/lib/utils/zIndexStacking.mjs.map +1 -1
  354. package/package.json +1 -1
@@ -1,28 +1,25 @@
1
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
- import _cn from "classnames";
1
+ import cn from "classnames";
3
2
  import { getStyles as getStyles$1 } from "./reshadow-core.mjs";
4
- var RESHADOW_ID = "__reshadow__";
5
- var isSSR = !(typeof window !== "undefined" && window.document && window.document.createElement);
6
- var serverMap = getStyles$1().map;
7
- var getStyles = function getStyles2() {
8
- return {
9
- map: serverMap,
10
- get css() {
11
- var serverStyles = "";
12
- for (var id in serverMap) {
13
- serverStyles += "<style type='text/css' id='".concat(id, "'>").concat(serverMap[id], "</style>");
14
- }
15
- return serverStyles;
3
+ const RESHADOW_ID = "__reshadow__";
4
+ const isSSR = !(typeof window !== "undefined" && window.document && window.document.createElement);
5
+ const serverMap = getStyles$1().map;
6
+ const getStyles = () => ({
7
+ map: serverMap,
8
+ get css() {
9
+ let serverStyles = "";
10
+ for (const id in serverMap) {
11
+ serverStyles += `<style type='text/css' id='${id}'>${serverMap[id]}</style>`;
16
12
  }
17
- };
18
- };
13
+ return serverStyles;
14
+ }
15
+ });
19
16
  function insert(code, hash) {
20
- var id = "reshadow-".concat(hash);
17
+ const id = "reshadow-".concat(hash);
21
18
  if (isSSR) {
22
19
  serverMap[id] = code;
23
20
  return;
24
21
  }
25
- var container = document.getElementById(RESHADOW_ID);
22
+ let container = document.getElementById(RESHADOW_ID);
26
23
  if (!container) {
27
24
  container = document.createElement("object");
28
25
  container.id = RESHADOW_ID;
@@ -34,7 +31,7 @@ function insert(code, hash) {
34
31
  });
35
32
  }
36
33
  }
37
- var css = document.getElementById(id);
34
+ let css = document.getElementById(id);
38
35
  if (!css) {
39
36
  css = document.createElement("style");
40
37
  css.id = id;
@@ -43,35 +40,30 @@ function insert(code, hash) {
43
40
  }
44
41
  css.innerHTML = code;
45
42
  }
46
- function merge() {
47
- var s1 = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
48
- var s2 = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
49
- return Object.entries(s2).reduce(function(acc, _ref) {
50
- var _ref2 = _slicedToArray(_ref, 2), key = _ref2[0], value = _ref2[1];
43
+ function merge(s1 = {}, s2 = {}) {
44
+ return Object.entries(s2).reduce((acc, [key, value]) => {
51
45
  if (key.startsWith("@") || key.startsWith("--")) {
52
46
  acc[key] = value;
53
47
  } else {
54
- acc[key] = _cn(acc[key], value);
48
+ acc[key] = cn(acc[key], value);
55
49
  }
56
50
  return acc;
57
51
  }, Object.assign({}, s1));
58
52
  }
59
53
  function getClassAndVars(styles, name, props) {
60
54
  function getPropValue(key, props2) {
61
- var _props;
62
- return (_props = props2["use:".concat(key)]) !== null && _props !== void 0 ? _props : props2[key];
55
+ return props2[`use:${key}`] ?? props2[key];
63
56
  }
64
- return Object.entries(styles).reduce(function(acc, _ref3) {
65
- var _ref4 = _slicedToArray(_ref3, 2), key = _ref4[0], value = _ref4[1];
57
+ return Object.entries(styles).reduce((acc, [key, value]) => {
66
58
  if (key.startsWith("--")) {
67
59
  acc[1][value] = getPropValue(key.substring(2), props);
68
60
  } else if (name === key) {
69
61
  acc[0][value] = true;
70
62
  } else {
71
- var _key$split = key.split("="), _key$split2 = _slicedToArray(_key$split, 2), mod = _key$split2[0], modValue = _key$split2[1];
72
- var propValue = getPropValue(mod, props);
63
+ const [mod, modValue] = key.split("=");
64
+ const propValue = getPropValue(mod, props);
73
65
  if (modValue === void 0) {
74
- acc[0][value] = Boolean(propValue !== null && propValue !== void 0 ? propValue : false);
66
+ acc[0][value] = Boolean(propValue ?? false);
75
67
  } else {
76
68
  acc[0][value] = propValue == modValue;
77
69
  }
@@ -79,14 +71,13 @@ function getClassAndVars(styles, name, props) {
79
71
  return acc;
80
72
  }, [{}, {}]);
81
73
  }
82
- var reshadowMap = /* @__PURE__ */ new WeakMap();
74
+ const reshadowMap = /* @__PURE__ */ new WeakMap();
83
75
  function reshadowToShadow(obj) {
84
76
  if (reshadowMap.has(obj)) {
85
77
  return reshadowMap.get(obj);
86
78
  }
87
- var shadowStyle = Object.entries(obj).reduce(function(style, _ref5) {
88
- var _ref6 = _slicedToArray(_ref5, 2), name = _ref6[0], value = _ref6[1];
89
- var n = name;
79
+ const shadowStyle = Object.entries(obj).reduce((style, [name, value]) => {
80
+ let n = name;
90
81
  if (name.startsWith("__")) {
91
82
  n = name.replace(/^__/, "");
92
83
  } else if (name.startsWith("_")) {
@@ -98,13 +89,12 @@ function reshadowToShadow(obj) {
98
89
  reshadowMap.set(obj, shadowStyle);
99
90
  return shadowStyle;
100
91
  }
101
- function sstyled() {
102
- var styles = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
92
+ function sstyled(styles = {}) {
103
93
  return {
104
- cn: function cn(name, props) {
105
- var _getClassAndVars = getClassAndVars(reshadowToShadow(styles), name, props), _getClassAndVars2 = _slicedToArray(_getClassAndVars, 2), classes = _getClassAndVars2[0], style = _getClassAndVars2[1];
94
+ cn(name, props) {
95
+ const [classes, style] = getClassAndVars(reshadowToShadow(styles), name, props);
106
96
  if (Object.keys(classes).length) {
107
- props.className = _cn(props.className, classes);
97
+ props.className = cn(props.className, classes);
108
98
  }
109
99
  if (Object.keys(style).length) {
110
100
  props.style = Object.assign(style, props.style);
@@ -1 +1 @@
1
- {"version":3,"file":"sstyled.mjs","names":["cn","getStyles","reshadowGetStyles","RESHADOW_ID","isSSR","window","document","createElement","serverMap","map","css","serverStyles","id","concat","insert","code","hash","container","getElementById","head","appendChild","addEventListener","type","innerHTML","merge","s1","arguments","length","undefined","s2","Object","entries","reduce","acc","_ref","_ref2","_slicedToArray","key","value","startsWith","assign","getClassAndVars","styles","name","props","getPropValue","_props","_ref3","_ref4","substring","_key$split","split","_key$split2","mod","modValue","propValue","Boolean","reshadowMap","WeakMap","reshadowToShadow","obj","has","get","shadowStyle","style","_ref5","_ref6","n","replace","set","sstyled","_getClassAndVars","_getClassAndVars2","classes","keys","className","_css","Error","SHADOW_STYLES","Symbol"],"sources":["../../src/styled/sstyled.tsx"],"sourcesContent":["import cn from 'classnames';\nimport type React from 'react';\n\n/** @ts-ignore */\nimport { getStyles as reshadowGetStyles } from './reshadow-core';\n\nconst RESHADOW_ID = '__reshadow__';\n\nconst isSSR = !(typeof window !== 'undefined' && window.document && window.document.createElement);\n\nconst serverMap = reshadowGetStyles().map as any;\n\nconst getStyles = () => ({\n map: serverMap,\n get css() {\n let serverStyles = '';\n for (const id in serverMap) {\n serverStyles += `<style type='text/css' id='${id}'>${serverMap[id]}</style>`;\n }\n return serverStyles;\n },\n});\n\nfunction insert(code: any, hash: any) {\n const id = 'reshadow-'.concat(hash);\n\n if (isSSR) {\n serverMap[id] = code;\n return;\n }\n\n let container = document.getElementById(RESHADOW_ID);\n\n if (!container) {\n container = document.createElement('object');\n container.id = RESHADOW_ID;\n\n if (document.head) {\n document.head.appendChild(container);\n } else {\n document.addEventListener('DOMContentLoaded', function () {\n document.head.appendChild(container as any);\n });\n }\n }\n\n let css = document.getElementById(id);\n\n if (!css) {\n css = document.createElement('style');\n css.id = id;\n // @ts-ignore\n css.type = 'text/css';\n container.appendChild(css);\n }\n\n css.innerHTML = code;\n}\n\nfunction merge(s1 = {}, s2 = {}) {\n return Object.entries(s2).reduce((acc: any, [key, value]: any) => {\n if (key.startsWith('@') || key.startsWith('--')) {\n acc[key] = value;\n } else {\n acc[key] = cn(acc[key], value);\n }\n return acc;\n }, Object.assign({}, s1));\n}\n\nfunction getClassAndVars(styles: any, name: any, props: any) {\n function getPropValue(key: any, props: any) {\n return props[`use:${key}`] ?? props[key];\n }\n\n return Object.entries(styles).reduce(\n (acc, [key, value]) => {\n if (key.startsWith('--')) {\n // @ts-ignore\n acc[1][value] = getPropValue(key.substring(2), props);\n } else if (name === key) {\n // @ts-ignore\n acc[0][value] = true;\n } else {\n const [mod, modValue] = key.split('=');\n const propValue = getPropValue(mod, props);\n if (modValue === undefined) {\n // @ts-ignore\n acc[0][value] = Boolean(propValue ?? false);\n } else {\n // @ts-ignore\n\n acc[0][value] = propValue == modValue;\n }\n }\n return acc;\n },\n [{}, {}],\n );\n}\n\nconst reshadowMap = new WeakMap();\n\nfunction reshadowToShadow(obj: any) {\n if (reshadowMap.has(obj)) {\n return reshadowMap.get(obj);\n }\n\n const shadowStyle = Object.entries(obj).reduce((style: any, [name, value]) => {\n let n = name;\n if (name.startsWith('__')) {\n n = name.replace(/^__/, '');\n } else if (name.startsWith('_')) {\n n = name.replace(/^_/, '').replace('_', '=');\n }\n style[n] = value;\n return style;\n }, {});\n\n reshadowMap.set(obj, shadowStyle);\n\n return shadowStyle;\n}\n\nfunction sstyled(styles = {}): ((ReactNode: any) => React.ReactNode) & {\n cn(name: string, props: any): any;\n} {\n // @ts-ignore\n return {\n cn(name, props) {\n const [classes, style] = getClassAndVars(reshadowToShadow(styles), name, props);\n\n if (Object.keys(classes).length) {\n props.className = cn(props.className, classes);\n }\n\n if (Object.keys(style).length) {\n props.style = Object.assign(style, props.style);\n }\n\n return props;\n },\n };\n}\n\nsstyled.css = function (_css: any): { [key: string]: string } {\n throw new Error('Enable babel plugin');\n};\nsstyled.insert = insert;\nsstyled.merge = merge;\nsstyled.getStyles = getStyles;\nsstyled.SHADOW_STYLES = Symbol('SHADOW_STYLES');\n\nexport { sstyled };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"sstyled.mjs","names":["cn","getStyles","reshadowGetStyles","RESHADOW_ID","isSSR","window","document","createElement","serverMap","map","css","serverStyles","id","insert","code","hash","concat","container","getElementById","head","appendChild","addEventListener","type","innerHTML","merge","s1","s2","Object","entries","reduce","acc","key","value","startsWith","assign","getClassAndVars","styles","name","props","getPropValue","substring","mod","modValue","split","propValue","undefined","Boolean","reshadowMap","WeakMap","reshadowToShadow","obj","has","get","shadowStyle","style","n","replace","set","sstyled","classes","keys","length","className","_css","Error","SHADOW_STYLES","Symbol"],"sources":["../../src/styled/sstyled.tsx"],"sourcesContent":["import cn from 'classnames';\nimport type React from 'react';\n\n/** @ts-ignore */\nimport { getStyles as reshadowGetStyles } from './reshadow-core';\n\nconst RESHADOW_ID = '__reshadow__';\n\nconst isSSR = !(typeof window !== 'undefined' && window.document && window.document.createElement);\n\nconst serverMap = reshadowGetStyles().map as any;\n\nconst getStyles = () => ({\n map: serverMap,\n get css() {\n let serverStyles = '';\n for (const id in serverMap) {\n serverStyles += `<style type='text/css' id='${id}'>${serverMap[id]}</style>`;\n }\n return serverStyles;\n },\n});\n\nfunction insert(code: any, hash: any) {\n const id = 'reshadow-'.concat(hash);\n\n if (isSSR) {\n serverMap[id] = code;\n return;\n }\n\n let container = document.getElementById(RESHADOW_ID);\n\n if (!container) {\n container = document.createElement('object');\n container.id = RESHADOW_ID;\n\n if (document.head) {\n document.head.appendChild(container);\n } else {\n document.addEventListener('DOMContentLoaded', function () {\n document.head.appendChild(container as any);\n });\n }\n }\n\n let css = document.getElementById(id);\n\n if (!css) {\n css = document.createElement('style');\n css.id = id;\n // @ts-ignore\n css.type = 'text/css';\n container.appendChild(css);\n }\n\n css.innerHTML = code;\n}\n\nfunction merge(s1 = {}, s2 = {}) {\n return Object.entries(s2).reduce((acc: any, [key, value]: any) => {\n if (key.startsWith('@') || key.startsWith('--')) {\n acc[key] = value;\n } else {\n acc[key] = cn(acc[key], value);\n }\n return acc;\n }, Object.assign({}, s1));\n}\n\nfunction getClassAndVars(styles: any, name: any, props: any) {\n function getPropValue(key: any, props: any) {\n return props[`use:${key}`] ?? props[key];\n }\n\n return Object.entries(styles).reduce(\n (acc, [key, value]) => {\n if (key.startsWith('--')) {\n // @ts-ignore\n acc[1][value] = getPropValue(key.substring(2), props);\n } else if (name === key) {\n // @ts-ignore\n acc[0][value] = true;\n } else {\n const [mod, modValue] = key.split('=');\n const propValue = getPropValue(mod, props);\n if (modValue === undefined) {\n // @ts-ignore\n acc[0][value] = Boolean(propValue ?? false);\n } else {\n // @ts-ignore\n\n acc[0][value] = propValue == modValue;\n }\n }\n return acc;\n },\n [{}, {}],\n );\n}\n\nconst reshadowMap = new WeakMap();\n\nfunction reshadowToShadow(obj: any) {\n if (reshadowMap.has(obj)) {\n return reshadowMap.get(obj);\n }\n\n const shadowStyle = Object.entries(obj).reduce((style: any, [name, value]) => {\n let n = name;\n if (name.startsWith('__')) {\n n = name.replace(/^__/, '');\n } else if (name.startsWith('_')) {\n n = name.replace(/^_/, '').replace('_', '=');\n }\n style[n] = value;\n return style;\n }, {});\n\n reshadowMap.set(obj, shadowStyle);\n\n return shadowStyle;\n}\n\nfunction sstyled(styles = {}): ((ReactNode: any) => React.ReactNode) & {\n cn(name: string, props: any): any;\n} {\n // @ts-ignore\n return {\n cn(name, props) {\n const [classes, style] = getClassAndVars(reshadowToShadow(styles), name, props);\n\n if (Object.keys(classes).length) {\n props.className = cn(props.className, classes);\n }\n\n if (Object.keys(style).length) {\n props.style = Object.assign(style, props.style);\n }\n\n return props;\n },\n };\n}\n\nsstyled.css = function (_css: any): { [key: string]: string } {\n throw new Error('Enable babel plugin');\n};\nsstyled.insert = insert;\nsstyled.merge = merge;\nsstyled.getStyles = getStyles;\nsstyled.SHADOW_STYLES = Symbol('SHADOW_STYLES');\n\nexport { sstyled };\n"],"mappings":"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","ignoreList":[]}
@@ -1,14 +1,10 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.writeIfChanged = void 0;
8
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
9
- var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/createForOfIteratorHelper"));
10
- var _regenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/regenerator"));
11
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
12
8
  var _nodeChild_process = require("node:child_process");
13
9
  var _promises = _interopRequireDefault(require("node:fs/promises"));
14
10
  var _nodePath = require("node:path");
@@ -17,197 +13,147 @@ var _fastGlob = _interopRequireDefault(require("fast-glob"));
17
13
  var _postcss = _interopRequireDefault(require("postcss"));
18
14
  var _postcssValueParser = _interopRequireDefault(require("postcss-value-parser"));
19
15
  var _utils = require("./utils");
20
- var writeIfChanged = exports.writeIfChanged = /*#__PURE__*/function () {
21
- var _ref = (0, _asyncToGenerator2["default"])(/*#__PURE__*/(0, _regenerator2["default"])().m(function _callee(path, content) {
22
- var originalContent, _t;
23
- return (0, _regenerator2["default"])().w(function (_context) {
24
- while (1) switch (_context.p = _context.n) {
25
- case 0:
26
- _context.p = 0;
27
- _context.n = 1;
28
- return _promises["default"].readFile(path, 'utf-8');
29
- case 1:
30
- originalContent = _context.v;
31
- if (!(originalContent.replace(/[\s\n]/g, '') === content.replace(/[\s\n]/g, ''))) {
32
- _context.n = 2;
33
- break;
34
- }
35
- return _context.a(2);
36
- case 2:
37
- _context.n = 4;
38
- break;
39
- case 3:
40
- _context.p = 3;
41
- _t = _context.v;
42
- case 4:
43
- _context.n = 5;
44
- return _promises["default"].writeFile(path, content);
45
- case 5:
46
- return _context.a(2);
47
- }
48
- }, _callee, null, [[0, 3]]);
49
- }));
50
- return function writeIfChanged(_x, _x2) {
51
- return _ref.apply(this, arguments);
52
- };
53
- }();
54
- var defaultTheme = 'light';
55
- var themes = ['light', 'dark'];
56
- var warning = !process.argv.includes('--no-warning');
57
- var dirname = (0, _nodePath.resolve)((0, _nodeUrl.fileURLToPath)(import.meta.url), '..');
58
- var autoTheme = {};
59
- var _loop = function _loop() {
60
- var theme = _themes[_i];
61
- var prefix = 'intergalactic';
62
- var _JSON$parse = JSON.parse(await _promises["default"].readFile((0, _nodePath.resolve)(dirname, "./".concat(theme, ".json")), 'utf-8')),
63
- base = _JSON$parse.base,
64
- tokens = _JSON$parse.tokens,
65
- featureHighlight = _JSON$parse.featureHighlight;
66
- var processed = (0, _utils.processTokens)(base, tokens, featureHighlight, prefix);
67
- var values = processed.values,
68
- types = processed.types,
69
- rawValues = processed.rawValues,
70
- descriptions = processed.descriptions,
71
- basicTokens = processed.basicTokens,
72
- highlightsTokens = processed.highlightsTokens;
73
- var processedTokens = processed.processedTokens;
74
- await writeIfChanged("./semcore/core/src/theme/themes/".concat(theme, ".css"), (0, _utils.tokensToCss)(processedTokens));
75
- await writeIfChanged("./semcore/core/src/theme/themes/".concat(theme, ".ts"), (0, _utils.tokensToJs)(processedTokens));
16
+ const writeIfChanged = async (path, content) => {
17
+ try {
18
+ const originalContent = await _promises.default.readFile(path, 'utf-8');
19
+ if (originalContent.replace(/[\s\n]/g, '') === content.replace(/[\s\n]/g, '')) {
20
+ return;
21
+ }
22
+ } catch {}
23
+ await _promises.default.writeFile(path, content);
24
+ };
25
+ exports.writeIfChanged = writeIfChanged;
26
+ const defaultTheme = 'light';
27
+ const themes = ['light', 'dark'];
28
+ const warning = !process.argv.includes('--no-warning');
29
+ const dirname = (0, _nodePath.resolve)((0, _nodeUrl.fileURLToPath)(import.meta.url), '..');
30
+ const autoTheme = {};
31
+ for (const theme of themes) {
32
+ const prefix = 'intergalactic';
33
+ const {
34
+ base,
35
+ tokens,
36
+ featureHighlight
37
+ } = JSON.parse(await _promises.default.readFile((0, _nodePath.resolve)(dirname, `./${theme}.json`), 'utf-8'));
38
+ const processed = (0, _utils.processTokens)(base, tokens, featureHighlight, prefix);
39
+ const {
40
+ values,
41
+ types,
42
+ rawValues,
43
+ descriptions,
44
+ basicTokens,
45
+ highlightsTokens
46
+ } = processed;
47
+ const {
48
+ processedTokens
49
+ } = processed;
50
+ await writeIfChanged(`./semcore/core/src/theme/themes/${theme}.css`, (0, _utils.tokensToCss)(processedTokens));
51
+ await writeIfChanged(`./semcore/core/src/theme/themes/${theme}.ts`, (0, _utils.tokensToJs)(processedTokens));
76
52
  if (highlightsTokens.length > 0) {
77
- await writeIfChanged("./semcore/core/src/theme/themes/highlights-".concat(theme, ".css"), (0, _utils.tokensToCss)(highlightsTokens));
78
- await writeIfChanged("./semcore/core/src/theme/themes/highlights-".concat(theme, ".ts"), (0, _utils.tokensToJs)(highlightsTokens));
53
+ await writeIfChanged(`./semcore/core/src/theme/themes/highlights-${theme}.css`, (0, _utils.tokensToCss)(highlightsTokens));
54
+ await writeIfChanged(`./semcore/core/src/theme/themes/highlights-${theme}.ts`, (0, _utils.tokensToJs)(highlightsTokens));
79
55
  }
80
56
  autoTheme[theme] = processedTokens;
81
- var usages = {};
57
+ const usages = {};
82
58
  if (theme === defaultTheme) {
83
59
  await writeIfChanged('./semcore/core/src/theme/themes/default.css', (0, _utils.tokensToCss)(processedTokens));
84
60
  await writeIfChanged('./semcore/core/src/theme/themes/default.ts', (0, _utils.tokensToJs)(processedTokens));
85
- var projectCssPaths = (await (0, _fastGlob["default"])('./semcore/*/src/**/*.shadow.css', {
61
+ const projectCssPaths = (await (0, _fastGlob.default)('./semcore/*/src/**/*.shadow.css', {
86
62
  ignore: ['node_modules', 'lib']
87
- })).filter(function (path) {
88
- if (path.split('/').some(function (pathPart) {
89
- return ['chart', 'email', 'table'].includes(pathPart);
90
- })) {
63
+ })).filter(path => {
64
+ if (path.split('/').some(pathPart => ['chart', 'email', 'table'].includes(pathPart))) {
91
65
  return false;
92
66
  }
93
67
  return true;
94
68
  });
95
- var projectCssContents = await Promise.all(projectCssPaths.map(function (path) {
96
- return _promises["default"].readFile(path, 'utf-8');
97
- }));
98
- var usedVariables = {};
99
- var colorLiterals = [];
100
- var processedCss = await Promise.all(projectCssContents.map(function (cssContent, fileIndex) {
101
- return (0, _postcss["default"])([{
102
- postcssPlugin: 'variables-explored',
103
- prepare: function prepare(result) {
104
- var _traverseAst = function traverseAst(nodes) {
105
- var _iterator = (0, _createForOfIteratorHelper2["default"])(nodes),
106
- _step;
107
- try {
108
- var _loop2 = function _loop2() {
109
- var node = _step.value;
110
- if (node.nodes) {
111
- _traverseAst(node.nodes);
112
- }
113
- if (node.value) {
114
- var valueAst = (0, _postcssValueParser["default"])(node.value);
115
- var _traverseValueAst = function traverseValueAst(nodes, parent) {
116
- var _iterator2 = (0, _createForOfIteratorHelper2["default"])(nodes),
117
- _step2;
118
- try {
119
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
120
- var _usages$withoutPrefix;
121
- var valueNode = _step2.value;
122
- if (valueNode.nodes) _traverseValueAst(valueNode.nodes, valueNode);
123
- if (valueNode.type === 'function' && valueNode.value === 'color-mod') {
124
- throw new Error("Found restricted function color-mod in ".concat(projectCssPaths[fileIndex]));
125
- }
126
- var parentIsVariable = (parent === null || parent === void 0 ? void 0 : parent.type) === 'function' && (parent === null || parent === void 0 ? void 0 : parent.value) === 'var';
127
- if (!parentIsVariable) {
128
- var prevNode = node.parent.nodes[node.parent.nodes.indexOf(node) - 1];
129
- var skipNode = (prevNode === null || prevNode === void 0 ? void 0 : prevNode.type) === 'comment' && prevNode.text.trim() === 'disable-tokens-validator';
130
- if (skipNode) continue;
131
- if (valueNode.type === 'word' && (valueNode.value.startsWith('#') || valueNode.value.startsWith('rgb'))) {
132
- var location = "".concat(node.source.start.line, ":").concat(node.source.start.offset);
133
- colorLiterals.push({
134
- path: "".concat(projectCssPaths[fileIndex], ":").concat(location),
135
- name: valueNode.value
136
- });
137
- }
138
- if (valueNode.type === 'word' && valueNode.value.endsWith('px') && (node.prop.includes('padding') || node.prop.includes('margin') || node.prop.includes('radius') || node.prop.includes('font-size'))) {
139
- var _location = "".concat(node.source.start.line, ":").concat(node.source.start.offset);
140
- colorLiterals.push({
141
- path: "".concat(projectCssPaths[fileIndex], ":").concat(_location),
142
- name: valueNode.value
143
- });
144
- }
145
- }
146
- if (valueNode.type !== 'function' || valueNode.value !== 'var') continue;
147
- var variableName = valueNode.nodes[0].value;
148
- if (!variableName.startsWith("--".concat(prefix))) {
149
- // if (legacyCssVariables[variableName] !== undefined) {
150
- // legacyCssVariables[variableName]++;
151
- // }
152
- continue;
153
- }
154
- var hasDefault = valueNode.nodes.length === 3;
155
- if (!hasDefault) {
156
- valueNode.nodes.push({
157
- type: 'div',
158
- sourceIndex: -1,
159
- value: ',',
160
- before: '',
161
- after: ' '
162
- }, {
163
- type: 'word',
164
- sourceIndex: -1,
165
- value: ''
166
- });
167
- }
168
- var withoutPrefix = variableName.substring("--".concat(prefix, "-").length);
169
- usedVariables[withoutPrefix] = true;
170
- if (!values[withoutPrefix]) {
171
- throw new Error("Variable ".concat(variableName, " is used in project but not presented in design tokens list"));
172
- }
173
- valueNode.nodes[2].type = 'word';
174
- valueNode.nodes[2].value = values[withoutPrefix];
175
- valueNode.nodes[2].nodes = [];
176
- valueNode.nodes.length = 3;
177
- usages[withoutPrefix] = (_usages$withoutPrefix = usages[withoutPrefix]) !== null && _usages$withoutPrefix !== void 0 ? _usages$withoutPrefix : [];
178
- usages[withoutPrefix].push(projectCssPaths[fileIndex]);
179
- }
180
- } catch (err) {
181
- _iterator2.e(err);
182
- } finally {
183
- _iterator2.f();
69
+ const projectCssContents = await Promise.all(projectCssPaths.map(path => _promises.default.readFile(path, 'utf-8')));
70
+ const usedVariables = {};
71
+ const colorLiterals = [];
72
+ const processedCss = await Promise.all(projectCssContents.map((cssContent, fileIndex) => (0, _postcss.default)([{
73
+ postcssPlugin: 'variables-explored',
74
+ prepare: result => {
75
+ const traverseAst = nodes => {
76
+ for (const node of nodes) {
77
+ if (node.nodes) {
78
+ traverseAst(node.nodes);
79
+ }
80
+ if (node.value) {
81
+ const valueAst = (0, _postcssValueParser.default)(node.value);
82
+ const traverseValueAst = (nodes, parent) => {
83
+ for (const valueNode of nodes) {
84
+ if (valueNode.nodes) traverseValueAst(valueNode.nodes, valueNode);
85
+ if (valueNode.type === 'function' && valueNode.value === 'color-mod') {
86
+ throw new Error(`Found restricted function color-mod in ${projectCssPaths[fileIndex]}`);
87
+ }
88
+ const parentIsVariable = parent?.type === 'function' && parent?.value === 'var';
89
+ if (!parentIsVariable) {
90
+ const prevNode = node.parent.nodes[node.parent.nodes.indexOf(node) - 1];
91
+ const skipNode = prevNode?.type === 'comment' && prevNode.text.trim() === 'disable-tokens-validator';
92
+ if (skipNode) continue;
93
+ if (valueNode.type === 'word' && (valueNode.value.startsWith('#') || valueNode.value.startsWith('rgb'))) {
94
+ const location = `${node.source.start.line}:${node.source.start.offset}`;
95
+ colorLiterals.push({
96
+ path: `${projectCssPaths[fileIndex]}:${location}`,
97
+ name: valueNode.value
98
+ });
99
+ }
100
+ if (valueNode.type === 'word' && valueNode.value.endsWith('px') && (node.prop.includes('padding') || node.prop.includes('margin') || node.prop.includes('radius') || node.prop.includes('font-size'))) {
101
+ const location = `${node.source.start.line}:${node.source.start.offset}`;
102
+ colorLiterals.push({
103
+ path: `${projectCssPaths[fileIndex]}:${location}`,
104
+ name: valueNode.value
105
+ });
184
106
  }
185
- };
186
- _traverseValueAst(valueAst.nodes, null);
187
- node.value = valueAst.toString();
107
+ }
108
+ if (valueNode.type !== 'function' || valueNode.value !== 'var') continue;
109
+ const variableName = valueNode.nodes[0].value;
110
+ if (!variableName.startsWith(`--${prefix}`)) {
111
+ // if (legacyCssVariables[variableName] !== undefined) {
112
+ // legacyCssVariables[variableName]++;
113
+ // }
114
+ continue;
115
+ }
116
+ const hasDefault = valueNode.nodes.length === 3;
117
+ if (!hasDefault) {
118
+ valueNode.nodes.push({
119
+ type: 'div',
120
+ sourceIndex: -1,
121
+ value: ',',
122
+ before: '',
123
+ after: ' '
124
+ }, {
125
+ type: 'word',
126
+ sourceIndex: -1,
127
+ value: ''
128
+ });
129
+ }
130
+ const withoutPrefix = variableName.substring(`--${prefix}-`.length);
131
+ usedVariables[withoutPrefix] = true;
132
+ if (!values[withoutPrefix]) {
133
+ throw new Error(`Variable ${variableName} is used in project but not presented in design tokens list`);
134
+ }
135
+ valueNode.nodes[2].type = 'word';
136
+ valueNode.nodes[2].value = values[withoutPrefix];
137
+ valueNode.nodes[2].nodes = [];
138
+ valueNode.nodes.length = 3;
139
+ usages[withoutPrefix] = usages[withoutPrefix] ?? [];
140
+ usages[withoutPrefix].push(projectCssPaths[fileIndex]);
188
141
  }
189
142
  };
190
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
191
- _loop2();
192
- }
193
- } catch (err) {
194
- _iterator.e(err);
195
- } finally {
196
- _iterator.f();
143
+ traverseValueAst(valueAst.nodes, null);
144
+ node.value = valueAst.toString();
197
145
  }
198
- };
199
- _traverseAst(result.root.nodes);
200
- return {};
201
- }
202
- }]).process(cssContent, {
203
- from: undefined
204
- });
205
- }));
206
- await Promise.all(projectCssPaths.map(function (path, index) {
207
- return writeIfChanged(path, processedCss[index].css);
208
- }));
209
- var unusedVariables = [];
210
- for (var variable in values) {
146
+ }
147
+ };
148
+ traverseAst(result.root.nodes);
149
+ return {};
150
+ }
151
+ }]).process(cssContent, {
152
+ from: undefined
153
+ })));
154
+ await Promise.all(projectCssPaths.map((path, index) => writeIfChanged(path, processedCss[index].css)));
155
+ const unusedVariables = [];
156
+ for (const variable in values) {
211
157
  if (!usedVariables[variable]) {
212
158
  unusedVariables.push(variable);
213
159
  }
@@ -222,72 +168,54 @@ var _loop = function _loop() {
222
168
  if (colorLiterals.length > 0) {
223
169
  // eslint-disable-next-line no-console
224
170
  console.log('Unexpected color literals:');
225
- var _iterator3 = (0, _createForOfIteratorHelper2["default"])(colorLiterals),
226
- _step3;
227
- try {
228
- for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
229
- var literal = _step3.value;
230
- // eslint-disable-next-line no-console
231
- console.log("".concat(literal.name, " in ").concat(literal.path));
232
- }
233
- } catch (err) {
234
- _iterator3.e(err);
235
- } finally {
236
- _iterator3.f();
171
+ for (const literal of colorLiterals) {
172
+ // eslint-disable-next-line no-console
173
+ console.log(`${literal.name} in ${literal.path}`);
237
174
  }
238
175
  }
239
176
  }
240
- var designTokensDocumentation = [];
241
- for (var token in values) {
177
+ const designTokensDocumentation = [];
178
+ for (const token in values) {
242
179
  if (!basicTokens.has(token)) {
243
- var _usages$token;
244
- var components = (0, _toConsumableArray2["default"])(new Set(((_usages$token = usages[token]) !== null && _usages$token !== void 0 ? _usages$token : []).map(function (cssPath) {
245
- return cssPath.split('/')[2];
246
- })));
247
- components.sort(function (a, b) {
248
- return a.localeCompare(b);
249
- });
180
+ const components = [...new Set((usages[token] ?? []).map(cssPath => cssPath.split('/')[2]))];
181
+ components.sort((a, b) => a.localeCompare(b));
250
182
  designTokensDocumentation.push({
251
- name: "--".concat(prefix, "-").concat(token),
183
+ name: `--${prefix}-${token}`,
252
184
  type: types[token],
253
185
  rawValue: rawValues[token],
254
186
  computedValue: values[token],
255
187
  description: descriptions[token],
256
- components: components
188
+ components
257
189
  });
258
190
  }
259
191
  }
260
- var baseTokensDocumentation = [];
261
- var _processGroup = function processGroup(group, data) {
262
- for (var key in data) {
192
+ const baseTokensDocumentation = [];
193
+ const processGroup = (group, data) => {
194
+ for (const key in data) {
263
195
  if (data[key].value) {
264
- var _data$key$description;
265
- var _token = {
266
- name: "--".concat(group, "-").concat(key),
196
+ const token = {
197
+ name: `--${group}-${key}`,
267
198
  value: data[key].value
268
199
  };
269
- if ((_data$key$description = data[key].description) !== null && _data$key$description !== void 0 && _data$key$description.trim()) {
270
- _token.description = data[key].description;
200
+ if (data[key].description?.trim()) {
201
+ token.description = data[key].description;
271
202
  }
272
- baseTokensDocumentation.push(_token);
203
+ baseTokensDocumentation.push(token);
273
204
  } else {
274
- _processGroup("".concat(group, "-").concat(key), data[key]);
205
+ processGroup(`${group}-${key}`, data[key]);
275
206
  }
276
207
  }
277
208
  };
278
- for (var group in base) {
279
- _processGroup(group, base[group]);
209
+ for (const group in base) {
210
+ processGroup(group, base[group]);
280
211
  }
281
212
  await writeIfChanged((0, _nodePath.resolve)(dirname, '../../../../website/docs/style/design-tokens/design-tokens.json'), JSON.stringify(designTokensDocumentation, null, 2) + '\n');
282
213
  await writeIfChanged((0, _nodePath.resolve)(dirname, '../../../../website/docs/style/design-tokens/base-tokens.json'), JSON.stringify(baseTokensDocumentation, null, 2) + '\n');
283
214
  }
284
- };
285
- for (var _i = 0, _themes = themes; _i < _themes.length; _i++) {
286
- _loop();
287
215
  }
288
- var autoThemeLines = [];
289
- for (var theme in autoTheme) {
290
- var selector = theme === defaultTheme ? ':root' : ".".concat(theme);
216
+ const autoThemeLines = [];
217
+ for (const theme in autoTheme) {
218
+ const selector = theme === defaultTheme ? ':root' : `.${theme}`;
291
219
  autoThemeLines.push((0, _utils.tokensToCss)(autoTheme[theme], selector));
292
220
  }
293
221
  await writeIfChanged('./semcore/core/src/theme/themes/auto.css', autoThemeLines.join('\n'));