@primer/primitives 9.1.2 → 10.0.0-rc.0c3e84bf

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 (334) hide show
  1. package/README.md +2 -2
  2. package/dist/build/PrimerStyleDictionary.d.ts +1 -2
  3. package/dist/build/PrimerStyleDictionary.js +52 -64
  4. package/dist/build/filters/index.d.ts +14 -13
  5. package/dist/build/filters/index.js +14 -29
  6. package/dist/build/filters/isBorder.d.ts +3 -3
  7. package/dist/build/filters/isBorder.js +2 -6
  8. package/dist/build/filters/isColor.d.ts +3 -3
  9. package/dist/build/filters/isColor.js +8 -7
  10. package/dist/build/filters/isColorWithAlpha.d.ts +3 -3
  11. package/dist/build/filters/isColorWithAlpha.js +4 -8
  12. package/dist/build/filters/isColorWithMix.d.ts +3 -3
  13. package/dist/build/filters/isColorWithMix.js +4 -8
  14. package/dist/build/filters/isCubicBezier.d.ts +7 -0
  15. package/dist/build/filters/isCubicBezier.js +10 -0
  16. package/dist/build/filters/isDeprecated.d.ts +3 -3
  17. package/dist/build/filters/isDeprecated.js +3 -7
  18. package/dist/build/filters/isDimension.d.ts +3 -3
  19. package/dist/build/filters/isDimension.js +2 -6
  20. package/dist/build/filters/isDuration.d.ts +3 -3
  21. package/dist/build/filters/isDuration.js +2 -6
  22. package/dist/build/filters/isFontFamily.d.ts +3 -3
  23. package/dist/build/filters/isFontFamily.js +2 -6
  24. package/dist/build/filters/isFontWeight.d.ts +3 -3
  25. package/dist/build/filters/isFontWeight.js +2 -6
  26. package/dist/build/filters/isFromFile.d.ts +3 -3
  27. package/dist/build/filters/isFromFile.js +2 -6
  28. package/dist/build/filters/isNumber.d.ts +3 -3
  29. package/dist/build/filters/isNumber.js +4 -6
  30. package/dist/build/filters/isShadow.d.ts +3 -3
  31. package/dist/build/filters/isShadow.js +2 -6
  32. package/dist/build/filters/isSource.d.ts +3 -3
  33. package/dist/build/filters/isSource.js +2 -6
  34. package/dist/build/filters/isTypography.d.ts +3 -3
  35. package/dist/build/filters/isTypography.js +2 -6
  36. package/dist/build/formats/cssAdvanced.d.ts +2 -2
  37. package/dist/build/formats/cssAdvanced.js +22 -20
  38. package/dist/build/formats/cssCustomMedia.d.ts +2 -2
  39. package/dist/build/formats/cssCustomMedia.js +16 -15
  40. package/dist/build/formats/index.d.ts +9 -9
  41. package/dist/build/formats/index.js +9 -21
  42. package/dist/build/formats/javascriptCommonJs.d.ts +2 -2
  43. package/dist/build/formats/javascriptCommonJs.js +17 -16
  44. package/dist/build/formats/javascriptEsm.d.ts +2 -2
  45. package/dist/build/formats/javascriptEsm.js +17 -16
  46. package/dist/build/formats/jsonFigma.d.ts +2 -2
  47. package/dist/build/formats/jsonFigma.js +27 -22
  48. package/dist/build/formats/jsonNestedPrefixed.d.ts +3 -3
  49. package/dist/build/formats/jsonNestedPrefixed.js +17 -15
  50. package/dist/build/formats/jsonOneDimensional.d.ts +3 -3
  51. package/dist/build/formats/jsonOneDimensional.js +24 -16
  52. package/dist/build/formats/jsonPostCssFallback.d.ts +3 -3
  53. package/dist/build/formats/jsonPostCssFallback.js +5 -12
  54. package/dist/build/formats/typescriptExportDefinition.d.ts +2 -2
  55. package/dist/build/formats/typescriptExportDefinition.js +50 -46
  56. package/dist/build/formats/utilities/getPropName.d.ts +1 -0
  57. package/dist/build/formats/utilities/getPropName.js +16 -0
  58. package/dist/build/formats/utilities/jsonToFlat.d.ts +2 -2
  59. package/dist/build/formats/utilities/jsonToFlat.js +1 -5
  60. package/dist/build/formats/utilities/jsonToNestedValue.d.ts +2 -2
  61. package/dist/build/formats/utilities/jsonToNestedValue.js +4 -6
  62. package/dist/build/formats/utilities/prefixTokens.d.ts +2 -2
  63. package/dist/build/formats/utilities/prefixTokens.js +1 -5
  64. package/dist/build/parsers/index.d.ts +1 -1
  65. package/dist/build/parsers/index.js +1 -5
  66. package/dist/build/parsers/w3cJsonParser.d.ts +2 -2
  67. package/dist/build/parsers/w3cJsonParser.js +7 -9
  68. package/dist/build/platforms/css.d.ts +1 -1
  69. package/dist/build/platforms/css.js +20 -11
  70. package/dist/build/platforms/deprecatedJson.d.ts +1 -1
  71. package/dist/build/platforms/deprecatedJson.js +3 -7
  72. package/dist/build/platforms/docJson.d.ts +1 -1
  73. package/dist/build/platforms/docJson.js +8 -7
  74. package/dist/build/platforms/fallbacks.d.ts +1 -1
  75. package/dist/build/platforms/fallbacks.js +3 -7
  76. package/dist/build/platforms/figma.d.ts +1 -1
  77. package/dist/build/platforms/figma.js +21 -14
  78. package/dist/build/platforms/index.d.ts +10 -10
  79. package/dist/build/platforms/index.js +10 -23
  80. package/dist/build/platforms/javascript.d.ts +1 -1
  81. package/dist/build/platforms/javascript.js +3 -7
  82. package/dist/build/platforms/json.d.ts +1 -1
  83. package/dist/build/platforms/json.js +3 -7
  84. package/dist/build/platforms/styleLint.d.ts +1 -1
  85. package/dist/build/platforms/styleLint.js +3 -7
  86. package/dist/build/platforms/typeDefinitions.d.ts +1 -1
  87. package/dist/build/platforms/typeDefinitions.js +6 -10
  88. package/dist/build/platforms/typescript.d.ts +1 -1
  89. package/dist/build/platforms/typescript.js +3 -7
  90. package/dist/build/schemas/alphaValue.js +4 -7
  91. package/dist/build/schemas/baseToken.d.ts +3 -3
  92. package/dist/build/schemas/baseToken.js +4 -7
  93. package/dist/build/schemas/borderToken.d.ts +6 -6
  94. package/dist/build/schemas/borderToken.js +13 -16
  95. package/dist/build/schemas/collections.js +8 -14
  96. package/dist/build/schemas/colorHexValue.js +4 -7
  97. package/dist/build/schemas/colorToken.d.ts +37 -25
  98. package/dist/build/schemas/colorToken.js +25 -24
  99. package/dist/build/schemas/cubicBezierToken.d.ts +18 -0
  100. package/dist/build/schemas/cubicBezierToken.js +8 -0
  101. package/dist/build/schemas/designToken.js +30 -32
  102. package/dist/build/schemas/dimensionToken.d.ts +15 -8
  103. package/dist/build/schemas/dimensionToken.js +15 -17
  104. package/dist/build/schemas/dimensionValue.js +7 -10
  105. package/dist/build/schemas/durationToken.d.ts +6 -6
  106. package/dist/build/schemas/durationToken.js +8 -11
  107. package/dist/build/schemas/durationValue.js +4 -7
  108. package/dist/build/schemas/fontFamilyToken.d.ts +8 -8
  109. package/dist/build/schemas/fontFamilyToken.js +13 -16
  110. package/dist/build/schemas/fontWeightToken.d.ts +8 -8
  111. package/dist/build/schemas/fontWeightToken.js +14 -17
  112. package/dist/build/schemas/fontWeightValue.js +4 -7
  113. package/dist/build/schemas/numberToken.d.ts +8 -8
  114. package/dist/build/schemas/numberToken.js +15 -18
  115. package/dist/build/schemas/referenceValue.js +4 -7
  116. package/dist/build/schemas/scopes.js +5 -10
  117. package/dist/build/schemas/shadowToken.d.ts +23 -16
  118. package/dist/build/schemas/shadowToken.js +27 -27
  119. package/dist/build/schemas/stringToken.d.ts +6 -6
  120. package/dist/build/schemas/stringToken.js +7 -10
  121. package/dist/build/schemas/tokenName.js +4 -7
  122. package/dist/build/schemas/tokenType.d.ts +2 -2
  123. package/dist/build/schemas/tokenType.js +2 -6
  124. package/dist/build/schemas/typographyToken.d.ts +6 -6
  125. package/dist/build/schemas/typographyToken.js +14 -17
  126. package/dist/build/schemas/validTokenType.d.ts +1 -1
  127. package/dist/build/schemas/validTokenType.js +10 -13
  128. package/dist/build/schemas/viewportRangeToken.d.ts +6 -6
  129. package/dist/build/schemas/viewportRangeToken.js +7 -10
  130. package/dist/build/transformers/borderToCss.d.ts +3 -3
  131. package/dist/build/transformers/borderToCss.js +16 -16
  132. package/dist/build/transformers/colorToHex.d.ts +2 -2
  133. package/dist/build/transformers/colorToHex.js +11 -13
  134. package/dist/build/transformers/colorToHexMix.d.ts +2 -2
  135. package/dist/build/transformers/colorToHexMix.js +10 -15
  136. package/dist/build/transformers/colorToRgbAlpha.d.ts +2 -2
  137. package/dist/build/transformers/colorToRgbAlpha.js +10 -12
  138. package/dist/build/transformers/colorToRgbaFloat.d.ts +2 -2
  139. package/dist/build/transformers/colorToRgbaFloat.js +24 -28
  140. package/dist/build/transformers/cubicBezierToCss.d.ts +8 -0
  141. package/dist/build/transformers/cubicBezierToCss.js +23 -0
  142. package/dist/build/transformers/dimensionToPixelUnitless.d.ts +2 -2
  143. package/dist/build/transformers/dimensionToPixelUnitless.js +13 -14
  144. package/dist/build/transformers/dimensionToRem.d.ts +2 -2
  145. package/dist/build/transformers/dimensionToRem.js +12 -13
  146. package/dist/build/transformers/dimensionToRemPxArray.d.ts +2 -2
  147. package/dist/build/transformers/dimensionToRemPxArray.js +11 -12
  148. package/dist/build/transformers/durationToCss.d.ts +2 -2
  149. package/dist/build/transformers/durationToCss.js +10 -11
  150. package/dist/build/transformers/figmaAttributes.d.ts +2 -2
  151. package/dist/build/transformers/figmaAttributes.js +5 -7
  152. package/dist/build/transformers/floatToPixel.d.ts +4 -4
  153. package/dist/build/transformers/floatToPixel.js +12 -14
  154. package/dist/build/transformers/fontFamilyToCss.d.ts +2 -2
  155. package/dist/build/transformers/fontFamilyToCss.js +10 -13
  156. package/dist/build/transformers/fontFamilyToFigma.d.ts +3 -3
  157. package/dist/build/transformers/fontFamilyToFigma.js +15 -17
  158. package/dist/build/transformers/fontWeightToNumber.d.ts +2 -2
  159. package/dist/build/transformers/fontWeightToNumber.js +8 -11
  160. package/dist/build/transformers/index.d.ts +25 -24
  161. package/dist/build/transformers/index.js +25 -51
  162. package/dist/build/transformers/jsonDeprecated.d.ts +2 -2
  163. package/dist/build/transformers/jsonDeprecated.js +6 -8
  164. package/dist/build/transformers/namePathToCamelCase.d.ts +2 -2
  165. package/dist/build/transformers/namePathToCamelCase.js +5 -7
  166. package/dist/build/transformers/namePathToDotNotation.d.ts +2 -2
  167. package/dist/build/transformers/namePathToDotNotation.js +6 -8
  168. package/dist/build/transformers/namePathToFigma.d.ts +3 -3
  169. package/dist/build/transformers/namePathToFigma.js +5 -8
  170. package/dist/build/transformers/namePathToKebabCase.d.ts +2 -2
  171. package/dist/build/transformers/namePathToKebabCase.js +4 -6
  172. package/dist/build/transformers/namePathToPascalCase.d.ts +2 -2
  173. package/dist/build/transformers/namePathToPascalCase.js +5 -7
  174. package/dist/build/transformers/namePathToSlashNotation.d.ts +2 -2
  175. package/dist/build/transformers/namePathToSlashNotation.js +4 -6
  176. package/dist/build/transformers/shadowToCss.d.ts +2 -2
  177. package/dist/build/transformers/shadowToCss.js +14 -15
  178. package/dist/build/transformers/typographyToCss.d.ts +2 -2
  179. package/dist/build/transformers/typographyToCss.js +13 -15
  180. package/dist/build/transformers/utilities/alpha.d.ts +1 -1
  181. package/dist/build/transformers/utilities/alpha.js +4 -8
  182. package/dist/build/transformers/utilities/checkRequiredTokenProperties.js +1 -5
  183. package/dist/build/transformers/utilities/getTokenValue.d.ts +2 -2
  184. package/dist/build/transformers/utilities/getTokenValue.js +10 -12
  185. package/dist/build/transformers/utilities/hasSpaceInString.js +1 -5
  186. package/dist/build/transformers/utilities/hexToRgbaFloat.d.ts +1 -1
  187. package/dist/build/transformers/utilities/hexToRgbaFloat.js +1 -5
  188. package/dist/build/transformers/utilities/invalidTokenError.d.ts +1 -1
  189. package/dist/build/transformers/utilities/invalidTokenError.js +11 -10
  190. package/dist/build/transformers/utilities/isRgbaFloat.js +1 -5
  191. package/dist/build/transformers/utilities/mix.js +5 -7
  192. package/dist/build/transformers/utilities/rgbaFloatToHex.js +1 -5
  193. package/dist/build/types/Border.d.ts +5 -0
  194. package/dist/build/types/BorderTokenValue.d.ts +10 -0
  195. package/dist/build/types/ColorHex.d.ts +4 -0
  196. package/dist/build/types/PlatformInitializer.d.ts +11 -0
  197. package/dist/build/types/Shadow.d.ts +5 -0
  198. package/dist/build/types/ShadowTokenValue.d.ts +14 -0
  199. package/dist/build/types/SizeEm.d.ts +4 -0
  200. package/dist/build/types/SizePx.d.ts +4 -0
  201. package/dist/build/types/SizeRem.d.ts +4 -0
  202. package/dist/build/types/StyleDictionaryConfigGenerator.d.ts +15 -0
  203. package/dist/build/types/TokenBuildInput.d.ts +8 -0
  204. package/dist/build/types/TypographyTokenValue.d.ts +12 -0
  205. package/dist/build/types/w3cTransformedToken.d.ts +8 -0
  206. package/dist/build/utilities/copyFromDir.d.ts +2 -2
  207. package/dist/build/utilities/copyFromDir.js +7 -10
  208. package/dist/build/utilities/filterStringArray.js +1 -5
  209. package/dist/build/utilities/getFlag.js +1 -5
  210. package/dist/build/utilities/index.d.ts +9 -3
  211. package/dist/build/utilities/index.js +9 -9
  212. package/dist/build/utilities/joinFriendly.js +1 -5
  213. package/dist/build/utilities/schemaErrorMessage.js +1 -5
  214. package/dist/build/utilities/toCamelCase.js +5 -9
  215. package/dist/build/utilities/toPascalCase.js +5 -9
  216. package/dist/build/utilities/treeWalker.js +2 -6
  217. package/dist/build/utilities/upperCaseFirstCharacter.js +1 -5
  218. package/dist/css/base/motion/motion.css +17 -0
  219. package/dist/css/functional/motion/motion.css +4 -3
  220. package/dist/css/functional/themes/dark-colorblind.css +58 -38
  221. package/dist/css/functional/themes/dark-dimmed.css +44 -24
  222. package/dist/css/functional/themes/dark-high-contrast.css +62 -42
  223. package/dist/css/functional/themes/dark-tritanopia.css +44 -24
  224. package/dist/css/functional/themes/dark.css +42 -22
  225. package/dist/css/functional/themes/light-colorblind.css +60 -40
  226. package/dist/css/functional/themes/light-high-contrast.css +58 -38
  227. package/dist/css/functional/themes/light-tritanopia.css +42 -22
  228. package/dist/css/functional/themes/light.css +42 -22
  229. package/dist/css/functional/typography/typography.css +43 -43
  230. package/dist/css/primitives.css +64 -46
  231. package/dist/docs/base/motion/motion.json +205 -0
  232. package/dist/docs/base/size/size.json +76 -76
  233. package/dist/docs/base/typography/typography.json +16 -16
  234. package/dist/docs/functional/motion/motion.json +33 -18
  235. package/dist/docs/functional/size/border.json +56 -56
  236. package/dist/docs/functional/size/breakpoints.json +24 -24
  237. package/dist/docs/functional/size/size-coarse.json +12 -12
  238. package/dist/docs/functional/size/size-fine.json +12 -12
  239. package/dist/docs/functional/size/size.json +264 -264
  240. package/dist/docs/functional/size/viewport.json +24 -24
  241. package/dist/docs/functional/themes/dark-colorblind.json +2561 -4201
  242. package/dist/docs/functional/themes/dark-dimmed.json +2610 -3892
  243. package/dist/docs/functional/themes/dark-high-contrast.json +2687 -5815
  244. package/dist/docs/functional/themes/dark-tritanopia.json +2613 -4059
  245. package/dist/docs/functional/themes/dark.json +2590 -3450
  246. package/dist/docs/functional/themes/light-colorblind.json +2568 -4168
  247. package/dist/docs/functional/themes/light-high-contrast.json +2686 -5526
  248. package/dist/docs/functional/themes/light-tritanopia.json +2542 -4026
  249. package/dist/docs/functional/themes/light.json +2570 -3436
  250. package/dist/docs/functional/typography/typography.json +206 -206
  251. package/dist/fallbacks/base/motion/motion.json +17 -0
  252. package/dist/fallbacks/functional/motion/motion.json +1 -0
  253. package/dist/figma/dimension/dimension.json +492 -492
  254. package/dist/figma/figma.json +21 -13
  255. package/dist/figma/scales/dark-dimmed.json +3536 -656
  256. package/dist/figma/scales/dark-high-constrast.json +3535 -655
  257. package/dist/figma/scales/dark.json +3371 -491
  258. package/dist/figma/scales/light-high-constrast.json +3532 -652
  259. package/dist/figma/scales/light.json +3367 -487
  260. package/dist/figma/shadows/dark-colorblind.json +199 -199
  261. package/dist/figma/shadows/dark-dimmed.json +199 -199
  262. package/dist/figma/shadows/dark-high-contrast.json +199 -199
  263. package/dist/figma/shadows/dark-tritanopia.json +199 -199
  264. package/dist/figma/shadows/dark.json +199 -199
  265. package/dist/figma/shadows/light-colorblind.json +189 -189
  266. package/dist/figma/shadows/light-high-contrast.json +191 -191
  267. package/dist/figma/shadows/light-tritanopia.json +189 -189
  268. package/dist/figma/shadows/light.json +189 -189
  269. package/dist/figma/themes/dark-colorblind.json +4470 -5204
  270. package/dist/figma/themes/dark-dimmed.json +4771 -5081
  271. package/dist/figma/themes/dark-high-contrast.json +4189 -6548
  272. package/dist/figma/themes/dark-tritanopia.json +4629 -5153
  273. package/dist/figma/themes/dark.json +5072 -4916
  274. package/dist/figma/themes/light-colorblind.json +4490 -5127
  275. package/dist/figma/themes/light-high-contrast.json +4170 -6201
  276. package/dist/figma/themes/light-tritanopia.json +4525 -5027
  277. package/dist/figma/themes/light.json +4982 -4825
  278. package/dist/figma/typography/typography.json +159 -203
  279. package/dist/internalCss/dark-colorblind.css +58 -38
  280. package/dist/internalCss/dark-dimmed.css +44 -24
  281. package/dist/internalCss/dark-high-contrast.css +62 -42
  282. package/dist/internalCss/dark-tritanopia.css +44 -24
  283. package/dist/internalCss/dark.css +42 -22
  284. package/dist/internalCss/light-colorblind.css +60 -40
  285. package/dist/internalCss/light-high-contrast.css +58 -38
  286. package/dist/internalCss/light-tritanopia.css +42 -22
  287. package/dist/internalCss/light.css +42 -22
  288. package/dist/styleLint/base/motion/motion.json +205 -0
  289. package/dist/styleLint/base/size/size.json +38 -38
  290. package/dist/styleLint/base/typography/typography.json +8 -8
  291. package/dist/styleLint/functional/motion/motion.json +27 -12
  292. package/dist/styleLint/functional/size/border.json +30 -30
  293. package/dist/styleLint/functional/size/breakpoints.json +12 -12
  294. package/dist/styleLint/functional/size/size-coarse.json +6 -6
  295. package/dist/styleLint/functional/size/size-fine.json +6 -6
  296. package/dist/styleLint/functional/size/size.json +132 -132
  297. package/dist/styleLint/functional/size/viewport.json +12 -12
  298. package/dist/styleLint/functional/themes/dark-colorblind.json +1442 -3082
  299. package/dist/styleLint/functional/themes/dark-dimmed.json +1486 -2768
  300. package/dist/styleLint/functional/themes/dark-high-contrast.json +1517 -4645
  301. package/dist/styleLint/functional/themes/dark-tritanopia.json +1480 -2926
  302. package/dist/styleLint/functional/themes/dark.json +1474 -2334
  303. package/dist/styleLint/functional/themes/light-colorblind.json +1428 -3028
  304. package/dist/styleLint/functional/themes/light-high-contrast.json +1524 -4364
  305. package/dist/styleLint/functional/themes/light-tritanopia.json +1416 -2900
  306. package/dist/styleLint/functional/themes/light.json +1454 -2320
  307. package/dist/styleLint/functional/typography/typography.json +114 -114
  308. package/package.json +33 -32
  309. package/src/tokens/base/motion/easing.json5 +26 -0
  310. package/src/tokens/base/motion/timing.json5 +50 -0
  311. package/src/tokens/functional/color/dark/app-dark.json5 +236 -121
  312. package/src/tokens/functional/color/dark/data-vis-dark.json5 +40 -40
  313. package/src/tokens/functional/color/dark/display-dark.json5 +95 -95
  314. package/src/tokens/functional/color/dark/overrides/dark.dimmed.json5 +1 -9
  315. package/src/tokens/functional/color/dark/overrides/dark.high-contrast.json5 +44 -31
  316. package/src/tokens/functional/color/dark/overrides/dark.protanopia-deuteranopia.json5 +62 -30
  317. package/src/tokens/functional/color/dark/overrides/dark.tritanopia.json5 +53 -12
  318. package/src/tokens/functional/color/dark/patterns-dark.json +3963 -0
  319. package/src/tokens/functional/color/dark/patterns-dark.json5 +126 -277
  320. package/src/tokens/functional/color/dark/primitives-dark.json5 +81 -81
  321. package/src/tokens/functional/color/dark/syntax-dark.json5 +47 -47
  322. package/src/tokens/functional/color/light/app-light.json5 +179 -118
  323. package/src/tokens/functional/color/light/data-vis-light.json5 +40 -40
  324. package/src/tokens/functional/color/light/display-light.json5 +0 -95
  325. package/src/tokens/functional/color/light/overrides/light.high-contrast.json5 +25 -27
  326. package/src/tokens/functional/color/light/overrides/light.protanopia-deuteranopia.json5 +62 -34
  327. package/src/tokens/functional/color/light/overrides/light.tritanopia.json5 +63 -11
  328. package/src/tokens/functional/color/light/patterns-light.json5 +126 -276
  329. package/src/tokens/functional/color/light/primitives-light.json5 +2 -80
  330. package/src/tokens/functional/color/light/syntax-light.json5 +0 -47
  331. package/src/tokens/functional/motion/loading.json5 +1 -1
  332. package/src/tokens/functional/motion/patterns.json5 +9 -2
  333. package/src/tokens/functional/shadow/dark.json5 +0 -14
  334. package/src/tokens/functional/shadow/light.json5 +0 -13
@@ -1,24 +1,23 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.shadowToCss = void 0;
4
- const color2k_1 = require("color2k");
5
- const filters_1 = require("../filters");
6
- const alpha_1 = require("./utilities/alpha");
7
- const checkRequiredTokenProperties_1 = require("./utilities/checkRequiredTokenProperties");
8
- const getTokenValue_1 = require("./utilities/getTokenValue");
1
+ import { toHex } from 'color2k';
2
+ import { isShadow } from '../filters/index.js';
3
+ import { alpha } from './utilities/alpha.js';
4
+ import { checkRequiredTokenProperties } from './utilities/checkRequiredTokenProperties.js';
5
+ import { getTokenValue } from './utilities/getTokenValue.js';
9
6
  /**
10
7
  * @description converts w3c shadow tokens in css shadow string
11
8
  * @type value transformer — [StyleDictionary.ValueTransform](https://github.com/amzn/style-dictionary/blob/main/types/Transform.d.ts)
12
9
  * @matcher matches all tokens of $type `shadow`
13
10
  * @transformer returns css shadow `string`
14
11
  */
15
- exports.shadowToCss = {
16
- type: `value`,
12
+ export const shadowToCss = {
13
+ name: 'shadow/css',
14
+ type: 'value',
17
15
  transitive: true,
18
- matcher: filters_1.isShadow,
19
- transformer: (token) => {
16
+ filter: isShadow,
17
+ transform: (token) => {
20
18
  // extract value
21
- const { value } = token;
19
+ const value = getTokenValue(token);
20
+ const valueProp = token.$value ? '$value' : 'value';
22
21
  // turn value into array
23
22
  const shadowValues = !Array.isArray(value) ? [value] : value;
24
23
  return shadowValues
@@ -26,9 +25,9 @@ exports.shadowToCss = {
26
25
  // if value === string it was probably already transformed
27
26
  if (typeof shadow === 'string')
28
27
  return shadow;
29
- (0, checkRequiredTokenProperties_1.checkRequiredTokenProperties)(shadow, ['color', 'offsetX', 'offsetY', 'blur', 'spread']);
28
+ checkRequiredTokenProperties(shadow, ['color', 'offsetX', 'offsetY', 'blur', 'spread']);
30
29
  /*css box shadow: inset? | offset-x | offset-y | blur-radius | spread-radius | color */
31
- return `${shadow.inset === true ? 'inset ' : ''}${shadow.offsetX} ${shadow.offsetY} ${shadow.blur} ${shadow.spread} ${(0, color2k_1.toHex)((0, alpha_1.alpha)((0, getTokenValue_1.getTokenValue)(Object.assign(Object.assign({}, token), { value: shadow }), 'color'), shadow.alpha || 1, token))}`;
30
+ return `${shadow.inset === true ? 'inset ' : ''}${shadow.offsetX} ${shadow.offsetY} ${shadow.blur} ${shadow.spread} ${toHex(alpha(getTokenValue(Object.assign(Object.assign({}, token), { [valueProp]: shadow }), 'color'), shadow.alpha || 1, token))}`;
32
31
  })
33
32
  .join(', ');
34
33
  },
@@ -1,8 +1,8 @@
1
- import type StyleDictionary from 'style-dictionary';
1
+ import type { Transform } from 'style-dictionary/types';
2
2
  /**
3
3
  * @description converts typograhy token value to css font shorthand
4
4
  * @type value transformer — [StyleDictionary.ValueTransform](https://github.com/amzn/style-dictionary/blob/main/types/Transform.d.ts)
5
5
  * @matcher matches all tokens of $type `typography`
6
6
  * @transformer returns a css font string
7
7
  */
8
- export declare const typographyToCss: StyleDictionary.Transform;
8
+ export declare const typographyToCss: Transform;
@@ -1,28 +1,26 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.typographyToCss = void 0;
4
- const filters_1 = require("../filters");
5
- const checkRequiredTokenProperties_1 = require("./utilities/checkRequiredTokenProperties");
6
- const fontFamilyToCss_1 = require("./fontFamilyToCss");
7
- const fontWeightToNumber_1 = require("./fontWeightToNumber");
8
- const getTokenValue_1 = require("./utilities/getTokenValue");
1
+ import { isTypography } from '../filters/index.js';
2
+ import { checkRequiredTokenProperties } from './utilities/checkRequiredTokenProperties.js';
3
+ import { parseFontFamily } from './fontFamilyToCss.js';
4
+ import { parseFontWeight } from './fontWeightToNumber.js';
5
+ import { getTokenValue } from './utilities/getTokenValue.js';
9
6
  /**
10
7
  * @description converts typograhy token value to css font shorthand
11
8
  * @type value transformer — [StyleDictionary.ValueTransform](https://github.com/amzn/style-dictionary/blob/main/types/Transform.d.ts)
12
9
  * @matcher matches all tokens of $type `typography`
13
10
  * @transformer returns a css font string
14
11
  */
15
- exports.typographyToCss = {
16
- type: `value`,
12
+ export const typographyToCss = {
13
+ name: 'typography/css',
14
+ type: 'value',
17
15
  transitive: true,
18
- matcher: filters_1.isTypography,
19
- transformer: (token) => {
16
+ filter: isTypography,
17
+ transform: (token) => {
20
18
  // extract value
21
- const value = (0, getTokenValue_1.getTokenValue)(token);
19
+ const value = getTokenValue(token);
22
20
  // validate token properties
23
- (0, checkRequiredTokenProperties_1.checkRequiredTokenProperties)(value, ['fontWeight', 'fontSize', 'fontFamily']);
21
+ checkRequiredTokenProperties(value, ['fontWeight', 'fontSize', 'fontFamily']);
24
22
  // format output
25
- return `${value.fontStyle || ''} ${(0, fontWeightToNumber_1.parseFontWeight)((0, getTokenValue_1.getTokenValue)(token, 'fontWeight'))} ${value.fontSize}${value.lineHeight ? `/${value.lineHeight}` : ''} ${(0, fontFamilyToCss_1.parseFontFamily)((0, getTokenValue_1.getTokenValue)(token, 'fontFamily'))}`
23
+ return `${value.fontStyle || ''} ${parseFontWeight(getTokenValue(token, 'fontWeight'))} ${value.fontSize}${value.lineHeight ? `/${value.lineHeight}` : ''} ${parseFontFamily(getTokenValue(token, 'fontFamily'))}`
26
24
  .trim()
27
25
  .replace(/\s\s+/g, ' ');
28
26
  },
@@ -1,4 +1,4 @@
1
- import type { TransformedToken } from 'style-dictionary';
1
+ import type { TransformedToken } from 'style-dictionary/types';
2
2
  /**
3
3
  * alpha
4
4
  * @description takes a colors string like hex or rgba and returns an rgba color with the specified alpha value
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.alpha = void 0;
4
- const color2k_1 = require("color2k");
1
+ import { rgba, parseToRgba } from 'color2k';
5
2
  /**
6
3
  * alpha
7
4
  * @description takes a colors string like hex or rgba and returns an rgba color with the specified alpha value
@@ -9,12 +6,11 @@ const color2k_1 = require("color2k");
9
6
  * @param desiredAlpha number
10
7
  * @returns rgba value
11
8
  */
12
- const alpha = (color, desiredAlpha, token) => {
13
- const [r, g, b, a] = (0, color2k_1.parseToRgba)(color);
9
+ export const alpha = (color, desiredAlpha, token) => {
10
+ const [r, g, b, a] = parseToRgba(color);
14
11
  if (a < 1 && desiredAlpha < 1) {
15
12
  // eslint-disable-next-line no-console
16
13
  console.warn(`🚨 You are setting an alpha value of "${desiredAlpha}" for a color with an alpha value (${color}). The previous alpha value will be disregarded as if the color would have been 100% opaque.${token !== undefined ? `\n ↳ Token: "${token.name}" in file: "${token.filePath}"` : ''}`);
17
14
  }
18
- return (0, color2k_1.rgba)(r, g, b, desiredAlpha);
15
+ return rgba(r, g, b, desiredAlpha);
19
16
  };
20
- exports.alpha = alpha;
@@ -1,17 +1,13 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.checkRequiredTokenProperties = void 0;
4
1
  /**
5
2
  * checks if all required properties exist on token
6
3
  * @param object - tokenValue
7
4
  * @param array - property names
8
5
  * @returns void or throws error
9
6
  */
10
- const checkRequiredTokenProperties = (tokenValue, requiredProperties) => {
7
+ export const checkRequiredTokenProperties = (tokenValue, requiredProperties) => {
11
8
  for (const prop of requiredProperties) {
12
9
  if (prop in tokenValue === false) {
13
10
  throw new Error(`Missing property: ${prop} on token with value ${JSON.stringify(tokenValue)}`);
14
11
  }
15
12
  }
16
13
  };
17
- exports.checkRequiredTokenProperties = checkRequiredTokenProperties;
@@ -1,2 +1,2 @@
1
- import type StyleDictionary from 'style-dictionary';
2
- export declare const getTokenValue: (token: StyleDictionary.TransformedToken, property?: string) => any;
1
+ import type { TransformedToken } from 'style-dictionary/types';
2
+ export declare const getTokenValue: (token: TransformedToken, property?: string) => any;
@@ -1,18 +1,16 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getTokenValue = void 0;
4
- const invalidTokenError_1 = require("./invalidTokenError");
5
- const getTokenValue = (token, property) => {
6
- if (token.value === undefined) {
7
- throw new invalidTokenError_1.invalidTokenValueError(token);
1
+ import { invalidTokenValueError, invalidTokenValuePropertyError } from './invalidTokenError.js';
2
+ export const getTokenValue = (token, property) => {
3
+ var _a;
4
+ const value = (_a = token.$value) !== null && _a !== void 0 ? _a : token.value;
5
+ if (value === undefined) {
6
+ throw new invalidTokenValueError(token);
8
7
  }
9
8
  // for composite token if subproperty is needed
10
- if (typeof property === 'string' && token.value[property] === undefined) {
11
- throw new invalidTokenError_1.invalidTokenValuePropertyError(token, property);
9
+ if (typeof property === 'string' && value[property] === undefined) {
10
+ throw new invalidTokenValuePropertyError(token, property);
12
11
  }
13
12
  if (typeof property === 'string') {
14
- return token.value[property];
13
+ return value[property];
15
14
  }
16
- return token.value;
15
+ return value;
17
16
  };
18
- exports.getTokenValue = getTokenValue;
@@ -1,10 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.hasSpaceInString = void 0;
4
- const hasSpaceInString = (string) => {
1
+ export const hasSpaceInString = (string) => {
5
2
  if (typeof string !== 'string') {
6
3
  throw new TypeError(`Invalid input. Input must be a string, ${typeof string} provided`);
7
4
  }
8
5
  return /\s/g.test(string);
9
6
  };
10
- exports.hasSpaceInString = hasSpaceInString;
@@ -1,2 +1,2 @@
1
- import type { RgbaFloat } from './isRgbaFloat';
1
+ import type { RgbaFloat } from './isRgbaFloat.js';
2
2
  export declare const hexToRgbaFloat: (hex: string, alpha?: number) => RgbaFloat;
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.hexToRgbaFloat = void 0;
4
- const hexToRgbaFloat = (hex, alpha) => {
1
+ export const hexToRgbaFloat = (hex, alpha) => {
5
2
  // retrieve spots from hex value (hex 3, hex 4, hex 6 or hex 8)
6
3
  let result;
7
4
  if (hex.length > 5) {
@@ -30,4 +27,3 @@ const hexToRgbaFloat = (hex, alpha) => {
30
27
  a: alpha !== undefined ? alpha : result[4] ? parseInt(result[4], 16) / 255 : 1,
31
28
  };
32
29
  };
33
- exports.hexToRgbaFloat = hexToRgbaFloat;
@@ -1,4 +1,4 @@
1
- import type { TransformedToken } from 'style-dictionary';
1
+ import type { TransformedToken } from 'style-dictionary/types';
2
2
  export declare class invalidTokenValueError extends Error {
3
3
  constructor(token: TransformedToken);
4
4
  }
@@ -1,26 +1,27 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.invalidTokenValuePropertyError = exports.invalidTokenValueError = void 0;
4
- const namePathToDotNotation_1 = require("../namePathToDotNotation");
1
+ import { namePathToDotNotation } from '../namePathToDotNotation.js';
5
2
  const composeValueErrorMessage = (token) => {
3
+ var _a, _b;
4
+ const originalValue = (_a = token.original.$value) !== null && _a !== void 0 ? _a : token.original.value;
5
+ const value = (_b = token.$value) !== null && _b !== void 0 ? _b : token.value;
6
6
  // eslint-disable-next-line i18n-text/no-en
7
- return `Invalid token "${namePathToDotNotation_1.namePathToDotNotation.transformer(token, {})}" in file "${token.filePath}". Transformed value: "${JSON.stringify(token.value)}". ${token.original.value ? `Original value: "${JSON.stringify(token.original.value)}" ` : ''}This may be due to referencing a token that does not exists.`;
7
+ return `Invalid token "${namePathToDotNotation.transform(token, {}, {})}" in file "${token.filePath}". Transformed value: "${JSON.stringify(value)}". ${originalValue ? `Original value: "${JSON.stringify(originalValue)}" ` : ''}This may be due to referencing a token that does not exists.`;
8
8
  };
9
9
  const composeValuePropertyErrorMessage = (token, property) => {
10
+ var _a, _b;
11
+ const originalValue = (_a = token.original.$value) !== null && _a !== void 0 ? _a : token.original.value;
12
+ const value = (_b = token.$value) !== null && _b !== void 0 ? _b : token.value;
10
13
  // eslint-disable-next-line i18n-text/no-en
11
- return `Invalid property "${property}" of token "${namePathToDotNotation_1.namePathToDotNotation.transformer(token, {})}" in file "${token.filePath}". Transformed property value: "${token.value[property]}". ${token.original.value ? `Original value: "${token.original.value[property]}" ` : ''}This may be due to referencing a token that does not exists.`;
14
+ return `Invalid property "${property}" of token "${namePathToDotNotation.transform(token, {}, {})}" in file "${token.filePath}". Transformed property value: "${value[property]}". ${originalValue ? `Original value: "${originalValue[property]}" ` : ''}This may be due to referencing a token that does not exists.`;
12
15
  };
13
- class invalidTokenValueError extends Error {
16
+ export class invalidTokenValueError extends Error {
14
17
  constructor(token) {
15
18
  super(composeValueErrorMessage(token));
16
19
  Error.captureStackTrace(this, invalidTokenValueError);
17
20
  }
18
21
  }
19
- exports.invalidTokenValueError = invalidTokenValueError;
20
- class invalidTokenValuePropertyError extends Error {
22
+ export class invalidTokenValuePropertyError extends Error {
21
23
  constructor(token, property) {
22
24
  super(composeValuePropertyErrorMessage(token, property));
23
25
  Error.captureStackTrace(this, invalidTokenValuePropertyError);
24
26
  }
25
27
  }
26
- exports.invalidTokenValuePropertyError = invalidTokenValuePropertyError;
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isRgbaFloat = void 0;
4
1
  // check if a value is an rgba float object
5
- const isRgbaFloat = (value) => {
2
+ export const isRgbaFloat = (value) => {
6
3
  if (value &&
7
4
  typeof value === `object` &&
8
5
  'r' in value &&
@@ -21,4 +18,3 @@ const isRgbaFloat = (value) => {
21
18
  }
22
19
  return false;
23
20
  };
24
- exports.isRgbaFloat = isRgbaFloat;
@@ -1,6 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const color2k_1 = require("color2k");
1
+ import { rgba, parseToRgba } from 'color2k';
4
2
  /**
5
3
  * Mixes two colors together. Taken from sass's implementation.
6
4
  */
@@ -8,8 +6,8 @@ function mix(color1, color2, weight) {
8
6
  const normalize = (n, index) =>
9
7
  // 3rd index is alpha channel which is already normalized
10
8
  index === 3 ? n : n / 255;
11
- const [r1, g1, b1, a1] = (0, color2k_1.parseToRgba)(color1).map(normalize);
12
- const [r2, g2, b2, a2] = (0, color2k_1.parseToRgba)(color2).map(normalize);
9
+ const [r1, g1, b1, a1] = parseToRgba(color1).map(normalize);
10
+ const [r2, g2, b2, a2] = parseToRgba(color2).map(normalize);
13
11
  // The formula is copied from the original Sass implementation:
14
12
  // http://sass-lang.com/documentation/Sass/Script/Functions.html#mix-instance_method
15
13
  const normalizedWeight = 2 * weight - 1;
@@ -23,9 +21,9 @@ function mix(color1, color2, weight) {
23
21
  const g = Math.round((g1 * weight1 + g2 * weight2) * 255);
24
22
  const b = Math.round((b1 * weight1 + b2 * weight2) * 255);
25
23
  const a = a2 * weight + a1 * (1 - weight);
26
- return (0, color2k_1.rgba)(r, g, b, a);
24
+ return rgba(r, g, b, a);
27
25
  }
28
- exports.default = mix;
26
+ export default mix;
29
27
  // Number* weight = ARGR("$weight", Number, 0, 100);
30
28
  // double p = weight->value()/100;
31
29
  // double w = 2*p - 1;
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.rgbaFloatToHex = void 0;
4
- const rgbaFloatToHex = ({ r, g, b, a }, alpha = true) => {
1
+ export const rgbaFloatToHex = ({ r, g, b, a }, alpha = true) => {
5
2
  const values = [r, g, b, alpha === true && a && a < 1 ? a : undefined].filter(item => item !== undefined);
6
3
  if (r > 1 || r < 0 || g > 1 || g < 0 || b > 1 || b < 0) {
7
4
  throw new Error('Invalid RgbaFloat value. R, G and B values must be between 0 and 1.');
@@ -12,4 +9,3 @@ const rgbaFloatToHex = ({ r, g, b, a }, alpha = true) => {
12
9
  .padStart(2, '0'))
13
10
  .join('')}`;
14
11
  };
15
- exports.rgbaFloatToHex = rgbaFloatToHex;
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @description a css border string
3
+ * @format color | style | width
4
+ */
5
+ type Border = `${string} ${string} ${string}`
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Type definition for w3c border composite token value
3
+ * @link https://design-tokens.github.io/community-group/format/#border
4
+ */
5
+ export type StrokeStyleString = 'solid' | 'dashed' | 'dotted' | 'double' | 'groove' | 'ridge' | 'outset' | 'inset'
6
+ export type BorderTokenValue = {
7
+ color: string
8
+ width: string
9
+ style: StrokeStyleString
10
+ }
@@ -0,0 +1,4 @@
1
+ /**
2
+ * @description hex string (6 or 8-digit)
3
+ */
4
+ type ColorHex = string
@@ -0,0 +1,11 @@
1
+ import type {LocalOptions, PlatformConfig} from 'style-dictionary/types'
2
+
3
+ export type PlatformInitializer = (
4
+ // the filename including the extension (e.g. `.css`) and any subfolders after the buildPath (e.g. `functional`)
5
+ outputFile: string,
6
+ // the prefix is prepended to all tokens
7
+ prefix: string | undefined,
8
+ // the build path in which the `outputFile` is placed
9
+ buildPath: string,
10
+ options?: LocalOptions,
11
+ ) => PlatformConfig
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @description a css shadow
3
+ * @format inset? | offset-x | offset-y | blur-radius? | spread-radius? | color?
4
+ */
5
+ type Shadow = string
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Type definition for w3c shadow composite token value
3
+ * @link https://design-tokens.github.io/community-group/format/#shadow
4
+ */
5
+ export type ShadowTokenValue = {
6
+ color: string
7
+ offsetX: string
8
+ offsetY: string
9
+ blur: string
10
+ spread: string
11
+ // custom non w3c values
12
+ inset?: boolean
13
+ alpha?: number
14
+ }
@@ -0,0 +1,4 @@
1
+ /**
2
+ * @description size in em
3
+ */
4
+ type SizeEm = `${number}em`
@@ -0,0 +1,4 @@
1
+ /**
2
+ * @description size in px
3
+ */
4
+ type SizePx = `${number}px`
@@ -0,0 +1,4 @@
1
+ /**
2
+ * @description size in rem
3
+ */
4
+ type SizeRem = `${number}rem`
@@ -0,0 +1,15 @@
1
+ import type {Config, PlatformConfig} from 'style-dictionary/types'
2
+
3
+ export type ConfigGeneratorOptions = {
4
+ buildPath: string
5
+ prefix?: string
6
+ themed?: boolean
7
+ }
8
+
9
+ export type StyleDictionaryConfigGenerator = (
10
+ outputName: string,
11
+ source: string[],
12
+ include: string[],
13
+ options: ConfigGeneratorOptions,
14
+ platforms?: Record<string, PlatformConfig | undefined>,
15
+ ) => Config
@@ -0,0 +1,8 @@
1
+ export type TokenBuildInput = {
2
+ // The output filename WITHOUT the extension
3
+ filename: string
4
+ // Array of `filepaths` to token files that should be converted and included in the output. Accepts relative or glob paths.
5
+ source: string[]
6
+ // Array of `filepaths` to token fils that should NOT be included in the output, but should be available to reference during compilation e.g. base color scales
7
+ include: string[]
8
+ }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Type definition for w3c typography composite token value
3
+ * @link https://design-tokens.github.io/community-group/format/#typography
4
+ */
5
+ export type TypographyTokenValue = {
6
+ fontFamily: string
7
+ fontSize: number
8
+ fontWeight: number
9
+ lineHeight: number
10
+ fontStyle?: string
11
+ letterSpacing?: number
12
+ }
@@ -0,0 +1,8 @@
1
+ import type {TransformedToken} from 'style-dictionary/types'
2
+
3
+ export type w3cTokenType = 'color' | 'dimension' | 'fontFamily' | 'fontWeight' | 'duration' | 'cubicBezier'
4
+ export type w3cCompositeTokenType = 'shadow' | 'border' | 'gradient' | 'transition' | 'strokeStyle' | 'typography'
5
+
6
+ export interface w3cTransformedToken extends TransformedToken {
7
+ $type?: w3cTokenType | w3cCompositeTokenType
8
+ }
@@ -3,6 +3,6 @@
3
3
  * @description Copies all files from source folder to destination
4
4
  * @param source path
5
5
  * @param destination path
6
- * @returns promise
6
+ * @returns promise of file name array
7
7
  */
8
- export declare const copyFromDir: (source: string, destination: string) => Promise<void>;
8
+ export declare const copyFromDir: (source: string, destination: string) => Promise<string[]>;
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
2
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
3
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -8,27 +7,25 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
8
  });
10
9
  };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.copyFromDir = void 0;
13
10
  /* istanbul ignore file */
14
- const promises_1 = require("fs/promises");
11
+ import { copyFile, readdir, mkdir } from 'fs/promises';
15
12
  /**
16
13
  * copyFromDir
17
14
  * @description Copies all files from source folder to destination
18
15
  * @param source path
19
16
  * @param destination path
20
- * @returns promise
17
+ * @returns promise of file name array
21
18
  */
22
- const copyFromDir = (source, destination) => __awaiter(void 0, void 0, void 0, function* () {
19
+ export const copyFromDir = (source, destination) => __awaiter(void 0, void 0, void 0, function* () {
23
20
  // adjust trailing slash
24
21
  const src = `${source.replace(/\/$/, '')}`;
25
22
  const dest = `${destination.replace(/\/$/, '')}`;
26
23
  // create dest if it does not exists
27
- yield (0, promises_1.mkdir)(dest, { recursive: true });
24
+ yield mkdir(dest, { recursive: true });
28
25
  // read files from source
29
- const files = yield (0, promises_1.readdir)(src);
26
+ const files = yield readdir(src);
30
27
  for (const file of files) {
31
- (0, promises_1.copyFile)(`${src}/${file}`, `${dest}/${file}`);
28
+ copyFile(`${src}/${file}`, `${dest}/${file}`);
32
29
  }
30
+ return files;
33
31
  });
34
- exports.copyFromDir = copyFromDir;
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.filterStringArray = void 0;
4
- const filterStringArray = (string) => {
1
+ export const filterStringArray = (string) => {
5
2
  // match unsupported characters
6
3
  const regex = /[^a-zA-Z0-9]+/g;
7
4
  // replace any non-letter and non-number character and split into word array
@@ -14,4 +11,3 @@ const filterStringArray = (string) => {
14
11
  .filter((part) => Boolean(part) && typeof part === 'string');
15
12
  return stringArray;
16
13
  };
17
- exports.filterStringArray = filterStringArray;
@@ -1,6 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getFlag = void 0;
4
1
  /**
5
2
  * Get the value of a flag from the command line
6
3
  * @param flag name of the flag to get
@@ -8,9 +5,8 @@ exports.getFlag = void 0;
8
5
  * @returns null if flag is not found, otherwise the value of the flag or the flag name if the flag has no value
9
6
  * @example `getFlag('--silent')` returns `null` if `--silent` is not found, `--silent` if `--silent` is found with no value, and `true` if `--silent=true` is found
10
7
  */
11
- const getFlag = (flag, prefix = '--') => {
8
+ export const getFlag = (flag, prefix = '--') => {
12
9
  flag = `${prefix}${flag.replace(prefix, '')}`;
13
10
  const index = process.argv.findIndex(arg => arg === flag || arg.startsWith(`${flag}=`));
14
11
  return index === -1 ? null : process.argv[index].replace(`${flag}=`, '');
15
12
  };
16
- exports.getFlag = getFlag;
@@ -1,3 +1,9 @@
1
- export { copyFromDir } from './copyFromDir';
2
- export { upperCaseFirstCharacter } from './upperCaseFirstCharacter';
3
- export { toCamelCase } from './toCamelCase';
1
+ export { copyFromDir } from './copyFromDir.js';
2
+ export { filterStringArray } from './filterStringArray.js';
3
+ export { getFlag } from './getFlag.js';
4
+ export { joinFriendly } from './joinFriendly.js';
5
+ export { schemaErrorMessage } from './schemaErrorMessage.js';
6
+ export { toCamelCase } from './toCamelCase.js';
7
+ export { toPascalCase } from './toPascalCase.js';
8
+ export { treeWalker } from './treeWalker.js';
9
+ export { upperCaseFirstCharacter } from './upperCaseFirstCharacter.js';
@@ -1,9 +1,9 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.toCamelCase = exports.upperCaseFirstCharacter = exports.copyFromDir = void 0;
4
- var copyFromDir_1 = require("./copyFromDir");
5
- Object.defineProperty(exports, "copyFromDir", { enumerable: true, get: function () { return copyFromDir_1.copyFromDir; } });
6
- var upperCaseFirstCharacter_1 = require("./upperCaseFirstCharacter");
7
- Object.defineProperty(exports, "upperCaseFirstCharacter", { enumerable: true, get: function () { return upperCaseFirstCharacter_1.upperCaseFirstCharacter; } });
8
- var toCamelCase_1 = require("./toCamelCase");
9
- Object.defineProperty(exports, "toCamelCase", { enumerable: true, get: function () { return toCamelCase_1.toCamelCase; } });
1
+ export { copyFromDir } from './copyFromDir.js';
2
+ export { filterStringArray } from './filterStringArray.js';
3
+ export { getFlag } from './getFlag.js';
4
+ export { joinFriendly } from './joinFriendly.js';
5
+ export { schemaErrorMessage } from './schemaErrorMessage.js';
6
+ export { toCamelCase } from './toCamelCase.js';
7
+ export { toPascalCase } from './toPascalCase.js';
8
+ export { treeWalker } from './treeWalker.js';
9
+ export { upperCaseFirstCharacter } from './upperCaseFirstCharacter.js';
@@ -1,5 +1 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.joinFriendly = void 0;
4
- const joinFriendly = (array, lastJoin = 'and') => array.length > 1 ? `${array.slice(0, -1).join(', ')} ${lastJoin} ${array.slice(-1)}` : `${array[0]}`;
5
- exports.joinFriendly = joinFriendly;
1
+ export const joinFriendly = (array, lastJoin = 'and') => array.length > 1 ? `${array.slice(0, -1).join(', ')} ${lastJoin} ${array.slice(-1)}` : `${array[0]}`;
@@ -1,5 +1 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.schemaErrorMessage = void 0;
4
- const schemaErrorMessage = (title, description) => `**${title}**${description ? `\n${description}` : ``}`;
5
- exports.schemaErrorMessage = schemaErrorMessage;
1
+ export const schemaErrorMessage = (title, description) => `**${title}**${description ? `\n${description}` : ``}`;
@@ -1,20 +1,16 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.toCamelCase = void 0;
4
- const filterStringArray_1 = require("./filterStringArray");
5
- const upperCaseFirstCharacter_1 = require("./upperCaseFirstCharacter");
6
- const toCamelCase = (string) => {
1
+ import { filterStringArray } from './filterStringArray.js';
2
+ import { upperCaseFirstCharacter } from './upperCaseFirstCharacter.js';
3
+ export const toCamelCase = (string) => {
7
4
  if (!Array.isArray(string)) {
8
5
  string = [string];
9
6
  }
10
- return ((0, filterStringArray_1.filterStringArray)(string)
7
+ return (filterStringArray(string)
11
8
  // ucFirst all but first part
12
9
  .map((part, index) => {
13
10
  if (index > 0) {
14
- return (0, upperCaseFirstCharacter_1.upperCaseFirstCharacter)(part);
11
+ return upperCaseFirstCharacter(part);
15
12
  }
16
13
  return part;
17
14
  })
18
15
  .join(''));
19
16
  };
20
- exports.toCamelCase = toCamelCase;