@canonical/terrazzo-plugin-css 0.3.0 → 0.3.3

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 (330) hide show
  1. package/README.md +34 -9
  2. package/package.json +2 -2
  3. package/dist/esm/build/buildModifiers.js +0 -114
  4. package/dist/esm/build/buildModifiers.js.map +0 -1
  5. package/dist/esm/build/buildPrimitive.js +0 -78
  6. package/dist/esm/build/buildPrimitive.js.map +0 -1
  7. package/dist/esm/build/buildTheme.js +0 -95
  8. package/dist/esm/build/buildTheme.js.map +0 -1
  9. package/dist/esm/build/buildTypography.js +0 -78
  10. package/dist/esm/build/buildTypography.js.map +0 -1
  11. package/dist/esm/build/filterExtensions.js +0 -21
  12. package/dist/esm/build/filterExtensions.js.map +0 -1
  13. package/dist/esm/css-ast/addDeclUnique.js +0 -7
  14. package/dist/esm/css-ast/addDeclUnique.js.map +0 -1
  15. package/dist/esm/css-ast/decl.js +0 -4
  16. package/dist/esm/css-ast/decl.js.map +0 -1
  17. package/dist/esm/css-ast/hasDecl.js +0 -4
  18. package/dist/esm/css-ast/hasDecl.js.map +0 -1
  19. package/dist/esm/plugin/src/artifact/classifyTier.js +0 -7
  20. package/dist/esm/plugin/src/artifact/classifyTier.js.map +0 -1
  21. package/dist/esm/plugin/src/artifact/index.js +0 -5
  22. package/dist/esm/plugin/src/artifact/index.js.map +0 -1
  23. package/dist/esm/plugin/src/artifact/makeArtifactToken.js +0 -36
  24. package/dist/esm/plugin/src/artifact/makeArtifactToken.js.map +0 -1
  25. package/dist/esm/plugin/src/artifact/makeDerivedArtifactToken.js +0 -29
  26. package/dist/esm/plugin/src/artifact/makeDerivedArtifactToken.js.map +0 -1
  27. package/dist/esm/plugin/src/artifact/serializeArtifact.js +0 -4
  28. package/dist/esm/plugin/src/artifact/serializeArtifact.js.map +0 -1
  29. package/dist/esm/plugin/src/artifact/types.js +0 -2
  30. package/dist/esm/plugin/src/artifact/types.js.map +0 -1
  31. package/dist/esm/plugin/src/build/annotation.js +0 -70
  32. package/dist/esm/plugin/src/build/annotation.js.map +0 -1
  33. package/dist/esm/plugin/src/build/buildModifiers.js +0 -114
  34. package/dist/esm/plugin/src/build/buildModifiers.js.map +0 -1
  35. package/dist/esm/plugin/src/build/buildPrimitive.js +0 -78
  36. package/dist/esm/plugin/src/build/buildPrimitive.js.map +0 -1
  37. package/dist/esm/plugin/src/build/buildStates.js +0 -66
  38. package/dist/esm/plugin/src/build/buildStates.js.map +0 -1
  39. package/dist/esm/plugin/src/build/buildTheme.js +0 -95
  40. package/dist/esm/plugin/src/build/buildTheme.js.map +0 -1
  41. package/dist/esm/plugin/src/build/buildTypography.js +0 -78
  42. package/dist/esm/plugin/src/build/buildTypography.js.map +0 -1
  43. package/dist/esm/plugin/src/build/builders/buildDescriptionLookup.js +0 -11
  44. package/dist/esm/plugin/src/build/builders/buildDescriptionLookup.js.map +0 -1
  45. package/dist/esm/plugin/src/build/builders/buildFallbackChain.js +0 -22
  46. package/dist/esm/plugin/src/build/builders/buildFallbackChain.js.map +0 -1
  47. package/dist/esm/plugin/src/build/builders/buildModifierFamily.js +0 -41
  48. package/dist/esm/plugin/src/build/builders/buildModifierFamily.js.map +0 -1
  49. package/dist/esm/plugin/src/build/builders/buildModifiers.js +0 -2
  50. package/dist/esm/plugin/src/build/builders/buildModifiers.js.map +0 -1
  51. package/dist/esm/plugin/src/build/builders/buildPrimitive.js +0 -2
  52. package/dist/esm/plugin/src/build/builders/buildPrimitive.js.map +0 -1
  53. package/dist/esm/plugin/src/build/builders/buildSetsPrimitive.js +0 -58
  54. package/dist/esm/plugin/src/build/builders/buildSetsPrimitive.js.map +0 -1
  55. package/dist/esm/plugin/src/build/builders/buildSetsSemantic.js +0 -9
  56. package/dist/esm/plugin/src/build/builders/buildSetsSemantic.js.map +0 -1
  57. package/dist/esm/plugin/src/build/builders/buildStates.js +0 -47
  58. package/dist/esm/plugin/src/build/builders/buildStates.js.map +0 -1
  59. package/dist/esm/plugin/src/build/builders/buildSurfaces.js +0 -42
  60. package/dist/esm/plugin/src/build/builders/buildSurfaces.js.map +0 -1
  61. package/dist/esm/plugin/src/build/builders/buildTheme.js +0 -97
  62. package/dist/esm/plugin/src/build/builders/buildTheme.js.map +0 -1
  63. package/dist/esm/plugin/src/build/builders/buildTypography.js +0 -42
  64. package/dist/esm/plugin/src/build/builders/buildTypography.js.map +0 -1
  65. package/dist/esm/plugin/src/build/builders/convertCssValueToString.js +0 -12
  66. package/dist/esm/plugin/src/build/builders/convertCssValueToString.js.map +0 -1
  67. package/dist/esm/plugin/src/build/builders/emitTypographyDecls.js +0 -37
  68. package/dist/esm/plugin/src/build/builders/emitTypographyDecls.js.map +0 -1
  69. package/dist/esm/plugin/src/build/builders/index.js +0 -16
  70. package/dist/esm/plugin/src/build/builders/index.js.map +0 -1
  71. package/dist/esm/plugin/src/build/classification.js +0 -27
  72. package/dist/esm/plugin/src/build/classification.js.map +0 -1
  73. package/dist/esm/plugin/src/build/computeDeltas.js +0 -73
  74. package/dist/esm/plugin/src/build/computeDeltas.js.map +0 -1
  75. package/dist/esm/plugin/src/build/constants/format.js +0 -3
  76. package/dist/esm/plugin/src/build/constants/format.js.map +0 -1
  77. package/dist/esm/plugin/src/build/constants/header.js +0 -3
  78. package/dist/esm/plugin/src/build/constants/header.js.map +0 -1
  79. package/dist/esm/plugin/src/build/constants/interactiveRoles.js +0 -88
  80. package/dist/esm/plugin/src/build/constants/interactiveRoles.js.map +0 -1
  81. package/dist/esm/plugin/src/build/constants/surfaceSelectorMap.js +0 -7
  82. package/dist/esm/plugin/src/build/constants/surfaceSelectorMap.js.map +0 -1
  83. package/dist/esm/plugin/src/build/context.js +0 -2
  84. package/dist/esm/plugin/src/build/context.js.map +0 -1
  85. package/dist/esm/plugin/src/build/deltas.js +0 -178
  86. package/dist/esm/plugin/src/build/deltas.js.map +0 -1
  87. package/dist/esm/plugin/src/build/extractOklchL.js +0 -13
  88. package/dist/esm/plugin/src/build/extractOklchL.js.map +0 -1
  89. package/dist/esm/plugin/src/build/formatDelta.js +0 -5
  90. package/dist/esm/plugin/src/build/formatDelta.js.map +0 -1
  91. package/dist/esm/plugin/src/build/index.js +0 -14
  92. package/dist/esm/plugin/src/build/index.js.map +0 -1
  93. package/dist/esm/plugin/src/build/interactiveRoles.js +0 -88
  94. package/dist/esm/plugin/src/build/interactiveRoles.js.map +0 -1
  95. package/dist/esm/plugin/src/build/modifierIo.js +0 -105
  96. package/dist/esm/plugin/src/build/modifierIo.js.map +0 -1
  97. package/dist/esm/plugin/src/build/recoverPrimitiveRef.js +0 -26
  98. package/dist/esm/plugin/src/build/recoverPrimitiveRef.js.map +0 -1
  99. package/dist/esm/plugin/src/build/shims.js +0 -9
  100. package/dist/esm/plugin/src/build/shims.js.map +0 -1
  101. package/dist/esm/plugin/src/build/types.js +0 -2
  102. package/dist/esm/plugin/src/build/types.js.map +0 -1
  103. package/dist/esm/plugin/src/css-ast/addDeclarationUnique.js +0 -7
  104. package/dist/esm/plugin/src/css-ast/addDeclarationUnique.js.map +0 -1
  105. package/dist/esm/plugin/src/css-ast/createDeclaration.js +0 -4
  106. package/dist/esm/plugin/src/css-ast/createDeclaration.js.map +0 -1
  107. package/dist/esm/plugin/src/css-ast/decl.js +0 -4
  108. package/dist/esm/plugin/src/css-ast/decl.js.map +0 -1
  109. package/dist/esm/plugin/src/css-ast/declaration.js +0 -4
  110. package/dist/esm/plugin/src/css-ast/declaration.js.map +0 -1
  111. package/dist/esm/plugin/src/css-ast/hasDeclaration.js +0 -4
  112. package/dist/esm/plugin/src/css-ast/hasDeclaration.js.map +0 -1
  113. package/dist/esm/plugin/src/css-ast/index.js +0 -7
  114. package/dist/esm/plugin/src/css-ast/index.js.map +0 -1
  115. package/dist/esm/plugin/src/css-ast/printNode.js +0 -28
  116. package/dist/esm/plugin/src/css-ast/printNode.js.map +0 -1
  117. package/dist/esm/plugin/src/css-ast/printRules.js +0 -13
  118. package/dist/esm/plugin/src/css-ast/printRules.js.map +0 -1
  119. package/dist/esm/plugin/src/css-ast/rule.js +0 -4
  120. package/dist/esm/plugin/src/css-ast/rule.js.map +0 -1
  121. package/dist/esm/plugin/src/css-ast/types.js +0 -2
  122. package/dist/esm/plugin/src/css-ast/types.js.map +0 -1
  123. package/dist/esm/plugin/src/index.js +0 -14
  124. package/dist/esm/plugin/src/index.js.map +0 -1
  125. package/dist/esm/plugin/src/layers/index.js +0 -3
  126. package/dist/esm/plugin/src/layers/index.js.map +0 -1
  127. package/dist/esm/plugin/src/layers/resolveLayerConfig.js +0 -10
  128. package/dist/esm/plugin/src/layers/resolveLayerConfig.js.map +0 -1
  129. package/dist/esm/plugin/src/layers/types.js +0 -2
  130. package/dist/esm/plugin/src/layers/types.js.map +0 -1
  131. package/dist/esm/plugin/src/layers/wrapInLayer.js +0 -14
  132. package/dist/esm/plugin/src/layers/wrapInLayer.js.map +0 -1
  133. package/dist/esm/plugin/src/light-dark/buildLightDarkDeclarations.js +0 -14
  134. package/dist/esm/plugin/src/light-dark/buildLightDarkDeclarations.js.map +0 -1
  135. package/dist/esm/plugin/src/light-dark/index.js +0 -3
  136. package/dist/esm/plugin/src/light-dark/index.js.map +0 -1
  137. package/dist/esm/plugin/src/light-dark/types.js +0 -2
  138. package/dist/esm/plugin/src/light-dark/types.js.map +0 -1
  139. package/dist/esm/plugin/src/light-dark/wrapLightDark.js +0 -13
  140. package/dist/esm/plugin/src/light-dark/wrapLightDark.js.map +0 -1
  141. package/dist/esm/plugin/src/modifiers/buildModifierContextCSS.js +0 -11
  142. package/dist/esm/plugin/src/modifiers/buildModifierContextCSS.js.map +0 -1
  143. package/dist/esm/plugin/src/modifiers/computeModifierContext.js +0 -75
  144. package/dist/esm/plugin/src/modifiers/computeModifierContext.js.map +0 -1
  145. package/dist/esm/plugin/src/modifiers/getAliasTarget.js +0 -4
  146. package/dist/esm/plugin/src/modifiers/getAliasTarget.js.map +0 -1
  147. package/dist/esm/plugin/src/modifiers/index.js +0 -4
  148. package/dist/esm/plugin/src/modifiers/index.js.map +0 -1
  149. package/dist/esm/plugin/src/modifiers/types.js +0 -2
  150. package/dist/esm/plugin/src/modifiers/types.js.map +0 -1
  151. package/dist/esm/plugin/src/naming.js +0 -28
  152. package/dist/esm/plugin/src/naming.js.map +0 -1
  153. package/dist/esm/plugin/src/plugin/canonicalPlugin.js +0 -132
  154. package/dist/esm/plugin/src/plugin/canonicalPlugin.js.map +0 -1
  155. package/dist/esm/plugin/src/plugin/index.js +0 -6
  156. package/dist/esm/plugin/src/plugin/index.js.map +0 -1
  157. package/dist/esm/plugin/src/plugin/types.js +0 -2
  158. package/dist/esm/plugin/src/plugin/types.js.map +0 -1
  159. package/dist/esm/plugin/src/plugin.js +0 -134
  160. package/dist/esm/plugin/src/plugin.js.map +0 -1
  161. package/dist/esm/plugin/src/types.js +0 -8
  162. package/dist/esm/plugin/src/types.js.map +0 -1
  163. package/dist/esm/types/src/artifact/types.js +0 -34
  164. package/dist/esm/types/src/artifact/types.js.map +0 -1
  165. package/dist/esm/types/src/index.js +0 -2
  166. package/dist/esm/types/src/index.js.map +0 -1
  167. package/dist/types/build/buildModifiers.d.ts +0 -19
  168. package/dist/types/build/buildModifiers.d.ts.map +0 -1
  169. package/dist/types/build/buildPrimitive.d.ts +0 -15
  170. package/dist/types/build/buildPrimitive.d.ts.map +0 -1
  171. package/dist/types/build/buildTheme.d.ts +0 -4
  172. package/dist/types/build/buildTheme.d.ts.map +0 -1
  173. package/dist/types/build/buildTypography.d.ts +0 -5
  174. package/dist/types/build/buildTypography.d.ts.map +0 -1
  175. package/dist/types/build/filterExtensions.d.ts +0 -9
  176. package/dist/types/build/filterExtensions.d.ts.map +0 -1
  177. package/dist/types/css-ast/addDeclUnique.d.ts +0 -4
  178. package/dist/types/css-ast/addDeclUnique.d.ts.map +0 -1
  179. package/dist/types/css-ast/decl.d.ts +0 -4
  180. package/dist/types/css-ast/decl.d.ts.map +0 -1
  181. package/dist/types/css-ast/hasDecl.d.ts +0 -4
  182. package/dist/types/css-ast/hasDecl.d.ts.map +0 -1
  183. package/dist/types/plugin/src/artifact/classifyTier.d.ts +0 -10
  184. package/dist/types/plugin/src/artifact/classifyTier.d.ts.map +0 -1
  185. package/dist/types/plugin/src/artifact/index.d.ts +0 -5
  186. package/dist/types/plugin/src/artifact/index.d.ts.map +0 -1
  187. package/dist/types/plugin/src/artifact/makeArtifactToken.d.ts +0 -6
  188. package/dist/types/plugin/src/artifact/makeArtifactToken.d.ts.map +0 -1
  189. package/dist/types/plugin/src/artifact/makeDerivedArtifactToken.d.ts +0 -6
  190. package/dist/types/plugin/src/artifact/makeDerivedArtifactToken.d.ts.map +0 -1
  191. package/dist/types/plugin/src/artifact/serializeArtifact.d.ts +0 -6
  192. package/dist/types/plugin/src/artifact/serializeArtifact.d.ts.map +0 -1
  193. package/dist/types/plugin/src/artifact/types.d.ts +0 -28
  194. package/dist/types/plugin/src/artifact/types.d.ts.map +0 -1
  195. package/dist/types/plugin/src/build/annotation.d.ts +0 -14
  196. package/dist/types/plugin/src/build/annotation.d.ts.map +0 -1
  197. package/dist/types/plugin/src/build/buildModifiers.d.ts +0 -19
  198. package/dist/types/plugin/src/build/buildModifiers.d.ts.map +0 -1
  199. package/dist/types/plugin/src/build/buildPrimitive.d.ts +0 -15
  200. package/dist/types/plugin/src/build/buildPrimitive.d.ts.map +0 -1
  201. package/dist/types/plugin/src/build/buildStates.d.ts +0 -11
  202. package/dist/types/plugin/src/build/buildStates.d.ts.map +0 -1
  203. package/dist/types/plugin/src/build/buildTheme.d.ts +0 -4
  204. package/dist/types/plugin/src/build/buildTheme.d.ts.map +0 -1
  205. package/dist/types/plugin/src/build/buildTypography.d.ts +0 -5
  206. package/dist/types/plugin/src/build/buildTypography.d.ts.map +0 -1
  207. package/dist/types/plugin/src/build/builders/buildDescriptionLookup.d.ts +0 -3
  208. package/dist/types/plugin/src/build/builders/buildDescriptionLookup.d.ts.map +0 -1
  209. package/dist/types/plugin/src/build/builders/buildFallbackChain.d.ts +0 -8
  210. package/dist/types/plugin/src/build/builders/buildFallbackChain.d.ts.map +0 -1
  211. package/dist/types/plugin/src/build/builders/buildModifierFamily.d.ts +0 -6
  212. package/dist/types/plugin/src/build/builders/buildModifierFamily.d.ts.map +0 -1
  213. package/dist/types/plugin/src/build/builders/buildModifiers.d.ts +0 -3
  214. package/dist/types/plugin/src/build/builders/buildModifiers.d.ts.map +0 -1
  215. package/dist/types/plugin/src/build/builders/buildPrimitive.d.ts +0 -3
  216. package/dist/types/plugin/src/build/builders/buildPrimitive.d.ts.map +0 -1
  217. package/dist/types/plugin/src/build/builders/buildSetsPrimitive.d.ts +0 -6
  218. package/dist/types/plugin/src/build/builders/buildSetsPrimitive.d.ts.map +0 -1
  219. package/dist/types/plugin/src/build/builders/buildSetsSemantic.d.ts +0 -5
  220. package/dist/types/plugin/src/build/builders/buildSetsSemantic.d.ts.map +0 -1
  221. package/dist/types/plugin/src/build/builders/buildStates.d.ts +0 -6
  222. package/dist/types/plugin/src/build/builders/buildStates.d.ts.map +0 -1
  223. package/dist/types/plugin/src/build/builders/buildSurfaces.d.ts +0 -6
  224. package/dist/types/plugin/src/build/builders/buildSurfaces.d.ts.map +0 -1
  225. package/dist/types/plugin/src/build/builders/buildTheme.d.ts +0 -6
  226. package/dist/types/plugin/src/build/builders/buildTheme.d.ts.map +0 -1
  227. package/dist/types/plugin/src/build/builders/buildTypography.d.ts +0 -9
  228. package/dist/types/plugin/src/build/builders/buildTypography.d.ts.map +0 -1
  229. package/dist/types/plugin/src/build/builders/convertCssValueToString.d.ts +0 -6
  230. package/dist/types/plugin/src/build/builders/convertCssValueToString.d.ts.map +0 -1
  231. package/dist/types/plugin/src/build/builders/emitTypographyDecls.d.ts +0 -5
  232. package/dist/types/plugin/src/build/builders/emitTypographyDecls.d.ts.map +0 -1
  233. package/dist/types/plugin/src/build/builders/index.d.ts +0 -16
  234. package/dist/types/plugin/src/build/builders/index.d.ts.map +0 -1
  235. package/dist/types/plugin/src/build/classification.d.ts +0 -13
  236. package/dist/types/plugin/src/build/classification.d.ts.map +0 -1
  237. package/dist/types/plugin/src/build/computeDeltas.d.ts +0 -17
  238. package/dist/types/plugin/src/build/computeDeltas.d.ts.map +0 -1
  239. package/dist/types/plugin/src/build/constants/format.d.ts +0 -3
  240. package/dist/types/plugin/src/build/constants/format.d.ts.map +0 -1
  241. package/dist/types/plugin/src/build/constants/header.d.ts +0 -3
  242. package/dist/types/plugin/src/build/constants/header.d.ts.map +0 -1
  243. package/dist/types/plugin/src/build/constants/interactiveRoles.d.ts +0 -4
  244. package/dist/types/plugin/src/build/constants/interactiveRoles.d.ts.map +0 -1
  245. package/dist/types/plugin/src/build/constants/surfaceSelectorMap.d.ts +0 -3
  246. package/dist/types/plugin/src/build/constants/surfaceSelectorMap.d.ts.map +0 -1
  247. package/dist/types/plugin/src/build/context.d.ts +0 -30
  248. package/dist/types/plugin/src/build/context.d.ts.map +0 -1
  249. package/dist/types/plugin/src/build/deltas.d.ts +0 -27
  250. package/dist/types/plugin/src/build/deltas.d.ts.map +0 -1
  251. package/dist/types/plugin/src/build/extractOklchL.d.ts +0 -2
  252. package/dist/types/plugin/src/build/extractOklchL.d.ts.map +0 -1
  253. package/dist/types/plugin/src/build/formatDelta.d.ts +0 -2
  254. package/dist/types/plugin/src/build/formatDelta.d.ts.map +0 -1
  255. package/dist/types/plugin/src/build/index.d.ts +0 -17
  256. package/dist/types/plugin/src/build/index.d.ts.map +0 -1
  257. package/dist/types/plugin/src/build/interactiveRoles.d.ts +0 -4
  258. package/dist/types/plugin/src/build/interactiveRoles.d.ts.map +0 -1
  259. package/dist/types/plugin/src/build/modifierIo.d.ts +0 -40
  260. package/dist/types/plugin/src/build/modifierIo.d.ts.map +0 -1
  261. package/dist/types/plugin/src/build/recoverPrimitiveRef.d.ts +0 -17
  262. package/dist/types/plugin/src/build/recoverPrimitiveRef.d.ts.map +0 -1
  263. package/dist/types/plugin/src/build/shims.d.ts +0 -57
  264. package/dist/types/plugin/src/build/shims.d.ts.map +0 -1
  265. package/dist/types/plugin/src/build/types.d.ts +0 -51
  266. package/dist/types/plugin/src/build/types.d.ts.map +0 -1
  267. package/dist/types/plugin/src/css-ast/addDeclarationUnique.d.ts +0 -3
  268. package/dist/types/plugin/src/css-ast/addDeclarationUnique.d.ts.map +0 -1
  269. package/dist/types/plugin/src/css-ast/createDeclaration.d.ts +0 -4
  270. package/dist/types/plugin/src/css-ast/createDeclaration.d.ts.map +0 -1
  271. package/dist/types/plugin/src/css-ast/decl.d.ts +0 -4
  272. package/dist/types/plugin/src/css-ast/decl.d.ts.map +0 -1
  273. package/dist/types/plugin/src/css-ast/declaration.d.ts +0 -4
  274. package/dist/types/plugin/src/css-ast/declaration.d.ts.map +0 -1
  275. package/dist/types/plugin/src/css-ast/hasDeclaration.d.ts +0 -3
  276. package/dist/types/plugin/src/css-ast/hasDeclaration.d.ts.map +0 -1
  277. package/dist/types/plugin/src/css-ast/index.d.ts +0 -7
  278. package/dist/types/plugin/src/css-ast/index.d.ts.map +0 -1
  279. package/dist/types/plugin/src/css-ast/printNode.d.ts +0 -7
  280. package/dist/types/plugin/src/css-ast/printNode.d.ts.map +0 -1
  281. package/dist/types/plugin/src/css-ast/printRules.d.ts +0 -4
  282. package/dist/types/plugin/src/css-ast/printRules.d.ts.map +0 -1
  283. package/dist/types/plugin/src/css-ast/rule.d.ts +0 -4
  284. package/dist/types/plugin/src/css-ast/rule.d.ts.map +0 -1
  285. package/dist/types/plugin/src/css-ast/types.d.ts +0 -21
  286. package/dist/types/plugin/src/css-ast/types.d.ts.map +0 -1
  287. package/dist/types/plugin/src/index.d.ts +0 -15
  288. package/dist/types/plugin/src/index.d.ts.map +0 -1
  289. package/dist/types/plugin/src/layers/index.d.ts +0 -3
  290. package/dist/types/plugin/src/layers/index.d.ts.map +0 -1
  291. package/dist/types/plugin/src/layers/resolveLayerConfig.d.ts +0 -6
  292. package/dist/types/plugin/src/layers/resolveLayerConfig.d.ts.map +0 -1
  293. package/dist/types/plugin/src/layers/types.d.ts +0 -19
  294. package/dist/types/plugin/src/layers/types.d.ts.map +0 -1
  295. package/dist/types/plugin/src/layers/wrapInLayer.d.ts +0 -3
  296. package/dist/types/plugin/src/layers/wrapInLayer.d.ts.map +0 -1
  297. package/dist/types/plugin/src/light-dark/buildLightDarkDeclarations.d.ts +0 -3
  298. package/dist/types/plugin/src/light-dark/buildLightDarkDeclarations.d.ts.map +0 -1
  299. package/dist/types/plugin/src/light-dark/index.d.ts +0 -3
  300. package/dist/types/plugin/src/light-dark/index.d.ts.map +0 -1
  301. package/dist/types/plugin/src/light-dark/types.d.ts +0 -50
  302. package/dist/types/plugin/src/light-dark/types.d.ts.map +0 -1
  303. package/dist/types/plugin/src/light-dark/wrapLightDark.d.ts +0 -8
  304. package/dist/types/plugin/src/light-dark/wrapLightDark.d.ts.map +0 -1
  305. package/dist/types/plugin/src/modifiers/buildModifierContextCSS.d.ts +0 -3
  306. package/dist/types/plugin/src/modifiers/buildModifierContextCSS.d.ts.map +0 -1
  307. package/dist/types/plugin/src/modifiers/computeModifierContext.d.ts +0 -3
  308. package/dist/types/plugin/src/modifiers/computeModifierContext.d.ts.map +0 -1
  309. package/dist/types/plugin/src/modifiers/getAliasTarget.d.ts +0 -6
  310. package/dist/types/plugin/src/modifiers/getAliasTarget.d.ts.map +0 -1
  311. package/dist/types/plugin/src/modifiers/index.d.ts +0 -4
  312. package/dist/types/plugin/src/modifiers/index.d.ts.map +0 -1
  313. package/dist/types/plugin/src/modifiers/types.d.ts +0 -42
  314. package/dist/types/plugin/src/modifiers/types.d.ts.map +0 -1
  315. package/dist/types/plugin/src/naming.d.ts +0 -19
  316. package/dist/types/plugin/src/naming.d.ts.map +0 -1
  317. package/dist/types/plugin/src/plugin/canonicalPlugin.d.ts +0 -18
  318. package/dist/types/plugin/src/plugin/canonicalPlugin.d.ts.map +0 -1
  319. package/dist/types/plugin/src/plugin/index.d.ts +0 -7
  320. package/dist/types/plugin/src/plugin/index.d.ts.map +0 -1
  321. package/dist/types/plugin/src/plugin/types.d.ts +0 -36
  322. package/dist/types/plugin/src/plugin/types.d.ts.map +0 -1
  323. package/dist/types/plugin/src/plugin.d.ts +0 -18
  324. package/dist/types/plugin/src/plugin.d.ts.map +0 -1
  325. package/dist/types/plugin/src/types.d.ts +0 -188
  326. package/dist/types/plugin/src/types.d.ts.map +0 -1
  327. package/dist/types/types/src/artifact/types.d.ts +0 -152
  328. package/dist/types/types/src/artifact/types.d.ts.map +0 -1
  329. package/dist/types/types/src/index.d.ts +0 -3
  330. package/dist/types/types/src/index.d.ts.map +0 -1
@@ -1,4 +0,0 @@
1
- export default function serializeArtifact(artifact) {
2
- return JSON.stringify(artifact, null, 2);
3
- }
4
- //# sourceMappingURL=serializeArtifact.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"serializeArtifact.js","sourceRoot":"","sources":["../../../../../src/artifact/serializeArtifact.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,QAAkB;IAC1D,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAC3C,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/artifact/types.ts"],"names":[],"mappings":""}
@@ -1,70 +0,0 @@
1
- /**
2
- * Scan CSS output strings and annotate artifact tokens with their
3
- * declaration sites (selector, file, line).
4
- *
5
- * Parses each CSS file to find custom property declarations (`--var: ...`)
6
- * and records the enclosing selector and line number. Tokens appearing in
7
- * multiple selectors (e.g. modifier channels in `.warning`, `.error`, etc.)
8
- * accumulate all their declaration sites.
9
- *
10
- * @note impure: mutates artifact token entries in-place (adds declaration arrays).
11
- */
12
- export function annotateDeclarations(artifact, cssOutputs) {
13
- for (const [file, css] of cssOutputs) {
14
- const lines = css.split("\n");
15
- const selectorStack = [];
16
- const atRuleStack = [];
17
- for (let i = 0; i < lines.length; i++) {
18
- const line = lines[i];
19
- const trimmed = line.trim();
20
- // Track selector entries: line ending with `{`
21
- if (trimmed.endsWith("{")) {
22
- const selector = trimmed.slice(0, -1).trim();
23
- if (selector.startsWith("@")) {
24
- // at-rule — parse name and prelude, keep current selector
25
- const atMatch = selector.match(/^@(\w+)\s*(.*)/);
26
- const atRule = atMatch
27
- ? { name: atMatch[1], prelude: atMatch[2] }
28
- : { name: selector.slice(1), prelude: "" };
29
- const parentAtRules = atRuleStack[atRuleStack.length - 1] ?? [];
30
- atRuleStack.push([...parentAtRules, atRule]);
31
- selectorStack.push(selectorStack[selectorStack.length - 1] ?? ":root");
32
- }
33
- else {
34
- atRuleStack.push(atRuleStack[atRuleStack.length - 1] ?? []);
35
- selectorStack.push(selector);
36
- }
37
- continue;
38
- }
39
- // Track block exits
40
- if (trimmed === "}") {
41
- selectorStack.pop();
42
- atRuleStack.pop();
43
- continue;
44
- }
45
- // Match custom property declarations
46
- const m = trimmed.match(/^(--[\w-]+)\s*:/);
47
- if (!m)
48
- continue;
49
- const cssVar = m[1];
50
- const entry = artifact[cssVar];
51
- if (!entry)
52
- continue;
53
- const selector = selectorStack[selectorStack.length - 1] ?? ":root";
54
- const currentAtRules = atRuleStack[atRuleStack.length - 1] ?? [];
55
- const declSite = {
56
- selector,
57
- file,
58
- line: i,
59
- ...(currentAtRules.length > 0 ? { atRules: currentAtRules } : {}),
60
- };
61
- if (entry.declarations) {
62
- entry.declarations.push(declSite);
63
- }
64
- else {
65
- entry.declarations = [declSite];
66
- }
67
- }
68
- }
69
- }
70
- //# sourceMappingURL=annotation.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"annotation.js","sourceRoot":"","sources":["../../../../../src/build/annotation.ts"],"names":[],"mappings":"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"}
@@ -1,114 +0,0 @@
1
- /**
2
- * Build helpers for modifiers.{family}.css and modifiers.surfaces.css.
3
- */
4
- import { makeDerivedArtifactToken } from "../artifact/index.js";
5
- import { printRules } from "../css-ast/index.js";
6
- import { wrapInLayer } from "../layers/index.js";
7
- import { buildModifierContextCSS, computeModifierContext, } from "../modifiers/index.js";
8
- import { convertTokenIdToCssVar, prefixVar } from "../naming.js";
9
- import { HEADER } from "./buildPrimitive.js";
10
- import { loadModifierData } from "./modifierIo.js";
11
- // ---------------------------------------------------------------------------
12
- // Description lookup helper
13
- // ---------------------------------------------------------------------------
14
- /**
15
- * Build a map from channel CSS variable to description.
16
- *
17
- * Converts token IDs (e.g. `color.foreground.primary`) into their
18
- * channel CSS var form (e.g. `--modifier-color-foreground-primary`)
19
- * and maps each to its description.
20
- */
21
- export function buildDescriptionLookup(descriptions, prefix) {
22
- const lookup = {};
23
- for (const [tokenId, desc] of Object.entries(descriptions)) {
24
- const channelVar = prefixVar(convertTokenIdToCssVar(tokenId), prefix);
25
- lookup[channelVar] = desc;
26
- }
27
- return lookup;
28
- }
29
- // ---------------------------------------------------------------------------
30
- // Surface selector map
31
- // ---------------------------------------------------------------------------
32
- /**
33
- * Surface selector compounding: map resolver context names to compound
34
- * `.surface` descendant selectors based on depth.
35
- */
36
- export const SURFACE_SELECTOR_MAP = {
37
- layer1: ".surface",
38
- layer2: ".surface .surface",
39
- layer3: ".surface .surface .surface",
40
- };
41
- // ---------------------------------------------------------------------------
42
- // Family build
43
- // ---------------------------------------------------------------------------
44
- /** @note Mutates `artifact`, calls `outputFile` and `loadModifierData` (file I/O). */
45
- export function buildFamily(family, resolver, layers, artifact, outputFile, tokensDir) {
46
- const baseTokens = resolver.apply({});
47
- const modifiers = resolver.source?.modifiers;
48
- const familyMod = modifiers?.[family];
49
- if (!familyMod?.contexts)
50
- return;
51
- const allNodes = [];
52
- for (const context of Object.keys(familyMod.contexts)) {
53
- if (context === "none")
54
- continue; // skip the empty default context
55
- const { aliases: aliasMap, descriptions } = loadModifierData(tokensDir, family, context);
56
- const overlayTokens = resolver.apply({ [family]: context });
57
- // Build channel-var → description lookup
58
- const descByChannelVar = buildDescriptionLookup(descriptions, "modifier");
59
- const ctx = computeModifierContext(family, context, baseTokens, overlayTokens, "modifier", aliasMap);
60
- const nodes = buildModifierContextCSS(ctx);
61
- allNodes.push(...nodes);
62
- // Register channel declarations in artifact
63
- for (const d of ctx.declarations) {
64
- artifact[d.property] = makeDerivedArtifactToken({
65
- cssVar: d.property,
66
- type: "color",
67
- tier: "semantic",
68
- cssOutputFile: `modifiers.${family}.css`,
69
- derivedFrom: d.value.replace(/^var\(/, "").replace(/\)$/, ""),
70
- derivation: "channel-modifier",
71
- description: descByChannelVar[d.property],
72
- });
73
- }
74
- }
75
- const wrapped = wrapInLayer(layers.modifiers, allNodes);
76
- outputFile(`modifiers.${family}.css`, `${HEADER}\n${printRules(wrapped)}\n`);
77
- }
78
- // ---------------------------------------------------------------------------
79
- // Surfaces build
80
- // ---------------------------------------------------------------------------
81
- /** @note Mutates `artifact`, calls `outputFile` and `loadModifierData` (file I/O). */
82
- export function buildSurfaces(resolver, layers, artifact, outputFile, tokensDir) {
83
- const baseTokens = resolver.apply({});
84
- const modifiers = resolver.source?.modifiers;
85
- const surfaceMod = modifiers?.surface;
86
- if (!surfaceMod?.contexts)
87
- return;
88
- const allNodes = [];
89
- for (const context of Object.keys(surfaceMod.contexts)) {
90
- if (context === "none")
91
- continue; // skip the empty default context
92
- const { aliases: aliasMap, descriptions } = loadModifierData(tokensDir, "surface", context);
93
- const overlayTokens = resolver.apply({ surface: context });
94
- // Build channel-var → description lookup
95
- const descByChannelVar = buildDescriptionLookup(descriptions, "surface");
96
- const ctx = computeModifierContext("surface", context, baseTokens, overlayTokens, "surface", aliasMap, SURFACE_SELECTOR_MAP[context]);
97
- const nodes = buildModifierContextCSS(ctx);
98
- allNodes.push(...nodes);
99
- for (const d of ctx.declarations) {
100
- artifact[d.property] = makeDerivedArtifactToken({
101
- cssVar: d.property,
102
- type: "color",
103
- tier: "semantic",
104
- cssOutputFile: "modifiers.surfaces.css",
105
- derivedFrom: d.value.replace(/^var\(/, "").replace(/\)$/, ""),
106
- derivation: "channel-surface",
107
- description: descByChannelVar[d.property],
108
- });
109
- }
110
- }
111
- const wrapped = wrapInLayer(layers.surfaces, allNodes);
112
- outputFile("modifiers.surfaces.css", `${HEADER}\n${printRules(wrapped)}\n`);
113
- }
114
- //# sourceMappingURL=buildModifiers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"buildModifiers.js","sourceRoot":"","sources":["../../../../../src/build/buildModifiers.ts"],"names":[],"mappings":"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"}
@@ -1,78 +0,0 @@
1
- import { makeArtifactToken } from "../artifact/index.js";
2
- import { createDecl, createRule, printRules } from "../css-ast/index.js";
3
- import { wrapInLayer } from "../layers/index.js";
4
- import { convertTokenIdToCssVar } from "../naming.js";
5
- import { isPrimitive } from "./classification.js";
6
- /** Plugin output format identifier. */
7
- const FORMAT = "canonical-css";
8
- const HEADER = "/* Generated by @canonical/terrazzo-plugin-css. DO NOT EDIT. */";
9
- /**
10
- * Convert a Terrazzo CSS value (string or multi-value record) to a plain string.
11
- * Returns `null` for multi-value composites (typography).
12
- */
13
- export function convertCssValueToString(val) {
14
- if (typeof val === "string")
15
- return val;
16
- if ("." in val)
17
- return val["."]; // WideGamutColorValue sRGB fallback
18
- return null; // multi-value (typography)
19
- }
20
- /** @note Mutates `artifact`, calls `outputFile`. */
21
- export function buildSetsPrimitive(getTransforms, layers, artifact, outputFile) {
22
- const transforms = getTransforms({ format: FORMAT });
23
- const nodes = [];
24
- for (const t of transforms) {
25
- if (!isPrimitive(t.id))
26
- continue;
27
- if (t.id.startsWith("number."))
28
- continue;
29
- // Skip dark / per-product permutations — only use the base
30
- if (t.input &&
31
- Object.keys(t.input).some((k) => k === "theme" && t.input[k] !== "light"))
32
- continue;
33
- if (t.input && "typography" in t.input && t.input.typography !== "global")
34
- continue;
35
- const cssVar = t.localID ?? convertTokenIdToCssVar(t.id);
36
- if (t.type === "SINGLE_VALUE") {
37
- nodes.push(createDecl(cssVar, t.value));
38
- artifact[cssVar] = makeArtifactToken({
39
- cssVar,
40
- id: t.id,
41
- type: t.token.$type ?? "unknown",
42
- tier: "primitive",
43
- cssOutputFile: "sets.primitive.css",
44
- description: t.token.$description,
45
- valueLight: t.value,
46
- valueDark: t.value,
47
- });
48
- }
49
- else {
50
- // Multi-value — emit each sub-property
51
- for (const [suffix, val] of Object.entries(t.value)) {
52
- const subVar = `${cssVar}-${suffix}`;
53
- nodes.push(createDecl(subVar, val));
54
- artifact[subVar] = makeArtifactToken({
55
- cssVar: subVar,
56
- id: `${t.id}.${suffix}`,
57
- type: t.token.$type ?? "unknown",
58
- tier: "primitive",
59
- cssOutputFile: "sets.primitive.css",
60
- description: t.token.$description,
61
- valueLight: val,
62
- valueDark: val,
63
- });
64
- }
65
- }
66
- }
67
- const wrapped = wrapInLayer(layers.tokens, [createRule([":root"], nodes)]);
68
- outputFile("sets.primitive.css", `${HEADER}\n${printRules(wrapped)}\n`);
69
- }
70
- /** @note Calls `outputFile`. */
71
- export function buildSetsSemantic(_layers, outputFile) {
72
- // In V2, most semantic tokens come via modifier contexts (theme, typography).
73
- // This file may be empty. Emit a comment-only placeholder.
74
- const comment = "/* sets.semantic.css — no mode-invariant semantic tokens in V2. */";
75
- outputFile("sets.semantic.css", `${HEADER}\n${comment}\n`);
76
- }
77
- export { FORMAT, HEADER };
78
- //# sourceMappingURL=buildPrimitive.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"buildPrimitive.js","sourceRoot":"","sources":["../../../../../src/build/buildPrimitive.ts"],"names":[],"mappings":"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"}
@@ -1,66 +0,0 @@
1
- /**
2
- * Build helper for states.css — NativeState derivation layer.
3
- */
4
- import { makeDerivedArtifactToken } from "../artifact/index.js";
5
- import { createDecl, createRule, printRules } from "../css-ast/index.js";
6
- import { wrapInLayer } from "../layers/index.js";
7
- import { convertTokenIdToCssVar, prefixVar } from "../naming.js";
8
- import { HEADER } from "./buildPrimitive.js";
9
- import { INTERACTIVE_ROLES } from "./deltas.js";
10
- /**
11
- * Build the fallback chain for a CSS custom property, accounting for
12
- * modifier and surface channel overrides.
13
- *
14
- * @returns A `var()` expression with the correct fallback order.
15
- */
16
- export function buildFallbackChain(cssVar, hasModifier, hasSurface) {
17
- const modVar = prefixVar(cssVar, "modifier");
18
- const surfVar = prefixVar(cssVar, "surface");
19
- if (hasModifier && hasSurface) {
20
- return `var(${modVar}, var(${surfVar}, var(${cssVar})))`;
21
- }
22
- if (hasModifier) {
23
- return `var(${modVar}, var(${cssVar}))`;
24
- }
25
- if (hasSurface) {
26
- return `var(${surfVar}, var(${cssVar}))`;
27
- }
28
- return `var(${cssVar})`;
29
- }
30
- /** @note Mutates `artifact`, calls `outputFile`. */
31
- export function buildStates(_tokens, _resolver, layers, artifact, outputFile) {
32
- const derivedDecls = [];
33
- for (const { role, states, hasSurface, hasModifier } of INTERACTIVE_ROLES) {
34
- const cssRole = convertTokenIdToCssVar(role); // e.g. --color-foreground-primary
35
- const rolePath = cssRole.slice(2); // color-foreground-primary
36
- // Build fallback chain: modifier → surface → base
37
- const restFallback = buildFallbackChain(cssRole, hasModifier, hasSurface);
38
- const bgFallback = buildFallbackChain("--color-background", false, true);
39
- for (const state of states) {
40
- const derivedVar = `--${state}--${rolePath}`;
41
- let formula;
42
- if (state === "disabled") {
43
- // color-mix(in oklch, <rest> 34%, <background>)
44
- formula = `color-mix(in oklch, ${restFallback} 34%, ${bgFallback})`;
45
- }
46
- else {
47
- // oklch(from <rest> calc(l + var(--delta-{state}-{role})) c h)
48
- const deltaVar = `--delta-${state}-${rolePath}`;
49
- formula = `oklch(from ${restFallback} calc(l + var(${deltaVar})) c h)`;
50
- }
51
- derivedDecls.push(createDecl(derivedVar, formula));
52
- artifact[derivedVar] = makeDerivedArtifactToken({
53
- cssVar: derivedVar,
54
- type: "color",
55
- tier: "derived",
56
- cssOutputFile: "states.css",
57
- derivedFrom: cssRole,
58
- derivation: state,
59
- });
60
- }
61
- }
62
- const starRule = createRule(["*"], derivedDecls);
63
- const wrapped = wrapInLayer(layers.states, [starRule]);
64
- outputFile("states.css", `${HEADER}\n${printRules(wrapped)}\n`);
65
- }
66
- //# sourceMappingURL=buildStates.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"buildStates.js","sourceRoot":"","sources":["../../../../../src/build/buildStates.ts"],"names":[],"mappings":"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"}
@@ -1,95 +0,0 @@
1
- /**
2
- * Build helper for modifiers.theme.css — light-dark colour tokens and deltas.
3
- */
4
- import { makeArtifactToken } from "../artifact/index.js";
5
- import { createDecl, createRule, printRules } from "../css-ast/index.js";
6
- import { wrapInLayer } from "../layers/index.js";
7
- import { buildLightDarkDeclarations } from "../light-dark/index.js";
8
- import { convertTokenIdToCssVar } from "../naming.js";
9
- import { FORMAT, HEADER } from "./buildPrimitive.js";
10
- import { isSemanticColor } from "./classification.js";
11
- import { computeDeltas } from "./deltas.js";
12
- import { recoverPrimitiveRef } from "./recoverPrimitiveRef.js";
13
- /** @note Mutates `artifact`, calls `outputFile`. */
14
- export function buildTheme(tokens, getTransforms, resolver, layers, artifact, outputFile) {
15
- // Collect base (light) and dark transforms for colour tokens
16
- const baseTransforms = getTransforms({ format: FORMAT });
17
- const darkTransforms = getTransforms({
18
- format: FORMAT,
19
- input: { theme: "dark" },
20
- });
21
- // Index dark transforms by token ID
22
- const darkById = new Map();
23
- for (const t of darkTransforms) {
24
- if (t.type !== "SINGLE_VALUE")
25
- continue;
26
- darkById.set(t.id, t.value);
27
- }
28
- // Build a reverse index: resolved literal value → primitive var name.
29
- // When a semantic token resolves to the same literal as a primitive,
30
- // we emit var(--primitive) instead of the raw oklch value.
31
- const primitiveByValue = new Map();
32
- for (const [cssVar, entry] of Object.entries(artifact)) {
33
- if (entry.tier === "primitive" &&
34
- entry.type === "color" &&
35
- entry.valueLight) {
36
- if (!primitiveByValue.has(entry.valueLight)) {
37
- primitiveByValue.set(entry.valueLight, cssVar);
38
- }
39
- }
40
- }
41
- // Build light-dark pairs for semantic colour tokens
42
- const pairs = [];
43
- const seenIds = new Set();
44
- for (const t of baseTransforms) {
45
- if (!isSemanticColor(t.id))
46
- continue;
47
- if (t.type !== "SINGLE_VALUE")
48
- continue;
49
- if (seenIds.has(t.id))
50
- continue;
51
- seenIds.add(t.id);
52
- const cssVar = t.localID ?? convertTokenIdToCssVar(t.id);
53
- const rawLight = t.value;
54
- const rawDark = darkById.get(t.id) ?? rawLight;
55
- // Recover var() references to primitives
56
- const lightVal = recoverPrimitiveRef(rawLight, cssVar, primitiveByValue);
57
- const darkVal = recoverPrimitiveRef(rawDark, cssVar, primitiveByValue);
58
- pairs.push({ property: cssVar, light: lightVal, dark: darkVal });
59
- artifact[cssVar] = makeArtifactToken({
60
- cssVar,
61
- id: t.id,
62
- type: "color",
63
- tier: "semantic",
64
- cssOutputFile: "modifiers.theme.css",
65
- description: t.token.$description,
66
- valueLight: lightVal,
67
- valueDark: darkVal,
68
- });
69
- }
70
- // Build CSS
71
- const themeDecls = buildLightDarkDeclarations(pairs);
72
- // Compute NativeState deltas (task 2.9)
73
- const { lightDeltaDecls, darkDeltaDecls } = computeDeltas(tokens, resolver, artifact);
74
- // Assemble :root block
75
- const rootNodes = [
76
- createDecl("color-scheme", "light dark"),
77
- ...themeDecls,
78
- ...lightDeltaDecls,
79
- ];
80
- const rootRule = createRule([":root"], rootNodes);
81
- // Override selectors
82
- const lightOverride = createRule([".light"], [createDecl("color-scheme", "light")]);
83
- const darkOverride = createRule([".dark"], [createDecl("color-scheme", "dark"), ...darkDeltaDecls]);
84
- const mediaQuery = createRule(["@media (prefers-color-scheme: dark)"], [
85
- createRule([":root"], [createDecl("color-scheme", "dark"), ...darkDeltaDecls]),
86
- ]);
87
- const wrapped = wrapInLayer(layers.modifiers, [
88
- rootRule,
89
- lightOverride,
90
- darkOverride,
91
- mediaQuery,
92
- ]);
93
- outputFile("modifiers.theme.css", `${HEADER}\n${printRules(wrapped)}\n`);
94
- }
95
- //# sourceMappingURL=buildTheme.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"buildTheme.js","sourceRoot":"","sources":["../../../../../src/build/buildTheme.ts"],"names":[],"mappings":"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"}
@@ -1,78 +0,0 @@
1
- /**
2
- * Build helper for modifiers.typography.css — base + per-product typography.
3
- */
4
- import { makeArtifactToken } from "../artifact/index.js";
5
- import { createDecl, createRule, printRules } from "../css-ast/index.js";
6
- import { wrapInLayer } from "../layers/index.js";
7
- import { convertTokenIdToCssVar } from "../naming.js";
8
- import { FORMAT, HEADER } from "./buildPrimitive.js";
9
- import { isSemanticTypography } from "./classification.js";
10
- /** @note Mutates `artifact`, calls `outputFile`. */
11
- export function buildTypography(getTransforms, layers, artifact, outputFile) {
12
- const allNodes = [];
13
- // Base (global) typography → :root
14
- const baseTransforms = getTransforms({ format: FORMAT });
15
- const rootDecls = [];
16
- const seenIds = new Set();
17
- for (const t of baseTransforms) {
18
- if (!isSemanticTypography(t.id))
19
- continue;
20
- if (seenIds.has(t.id))
21
- continue;
22
- seenIds.add(t.id);
23
- emitTypographyDecls(t, rootDecls, artifact, "modifiers.typography.css");
24
- }
25
- allNodes.push(createRule([":root"], rootDecls));
26
- // Per-product contexts → class selectors
27
- for (const ctx of ["apps", "docs", "sites"]) {
28
- const contextTransforms = getTransforms({
29
- format: FORMAT,
30
- input: { typography: ctx },
31
- });
32
- const contextDecls = [];
33
- for (const t of contextTransforms) {
34
- if (!isSemanticTypography(t.id))
35
- continue;
36
- emitTypographyDecls(t, contextDecls, artifact, "modifiers.typography.css");
37
- }
38
- if (contextDecls.length > 0) {
39
- allNodes.push(createRule([`.${ctx}`], contextDecls));
40
- }
41
- }
42
- const wrapped = wrapInLayer(layers.modifiers, allNodes);
43
- outputFile("modifiers.typography.css", `${HEADER}\n${printRules(wrapped)}\n`);
44
- }
45
- export function emitTypographyDecls(t, decls, artifact, outputFile) {
46
- const cssVar = t.localID ?? convertTokenIdToCssVar(t.id);
47
- if (t.type === "SINGLE_VALUE") {
48
- decls.push(createDecl(cssVar, t.value));
49
- artifact[cssVar] = makeArtifactToken({
50
- cssVar,
51
- id: t.id,
52
- type: t.token.$type ?? "unknown",
53
- tier: "semantic",
54
- cssOutputFile: outputFile,
55
- description: t.token.$description,
56
- valueLight: t.value,
57
- valueDark: t.value,
58
- });
59
- }
60
- else {
61
- // Multi-value: typography composite → individual sub-properties
62
- for (const [suffix, val] of Object.entries(t.value)) {
63
- const subVar = `${cssVar}-${suffix}`;
64
- decls.push(createDecl(subVar, val));
65
- artifact[subVar] = makeArtifactToken({
66
- cssVar: subVar,
67
- id: `${t.id}.${suffix}`,
68
- type: t.token.$type ?? "unknown",
69
- tier: "semantic",
70
- cssOutputFile: outputFile,
71
- description: t.token.$description,
72
- valueLight: val,
73
- valueDark: val,
74
- });
75
- }
76
- }
77
- }
78
- //# sourceMappingURL=buildTypography.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"buildTypography.js","sourceRoot":"","sources":["../../../../../src/build/buildTypography.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- import { convertTokenIdToCssVar, prefixVar } from "../../naming.js";
2
- /** Build a map from channel CSS variable to description. */
3
- export default function buildDescriptionLookup(descriptions, prefix) {
4
- const lookup = {};
5
- for (const [tokenId, description] of Object.entries(descriptions)) {
6
- const channelVar = prefixVar(convertTokenIdToCssVar(tokenId), prefix);
7
- lookup[channelVar] = description;
8
- }
9
- return lookup;
10
- }
11
- //# sourceMappingURL=buildDescriptionLookup.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"buildDescriptionLookup.js","sourceRoot":"","sources":["../../../../../../src/build/builders/buildDescriptionLookup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEpE,4DAA4D;AAC5D,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAC5C,YAAoC,EACpC,MAAc;IAEd,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,KAAK,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QAClE,MAAM,UAAU,GAAG,SAAS,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;QACtE,MAAM,CAAC,UAAU,CAAC,GAAG,WAAW,CAAC;IACnC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,22 +0,0 @@
1
- import { prefixVar } from "../../naming.js";
2
- /**
3
- * Build the fallback chain for a CSS custom property, accounting for
4
- * modifier and surface channel overrides.
5
- *
6
- * @returns A `var()` expression with the correct fallback order.
7
- */
8
- export default function buildFallbackChain(cssVar, hasModifier, hasSurface) {
9
- const modVar = prefixVar(cssVar, "modifier");
10
- const surfVar = prefixVar(cssVar, "surface");
11
- if (hasModifier && hasSurface) {
12
- return `var(${modVar}, var(${surfVar}, var(${cssVar})))`;
13
- }
14
- if (hasModifier) {
15
- return `var(${modVar}, var(${cssVar}))`;
16
- }
17
- if (hasSurface) {
18
- return `var(${surfVar}, var(${cssVar}))`;
19
- }
20
- return `var(${cssVar})`;
21
- }
22
- //# sourceMappingURL=buildFallbackChain.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"buildFallbackChain.js","sourceRoot":"","sources":["../../../../../../src/build/builders/buildFallbackChain.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,kBAAkB,CACxC,MAAc,EACd,WAAoB,EACpB,UAAmB;IAEnB,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAE7C,IAAI,WAAW,IAAI,UAAU,EAAE,CAAC;QAC9B,OAAO,OAAO,MAAM,SAAS,OAAO,SAAS,MAAM,KAAK,CAAC;IAC3D,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,OAAO,MAAM,SAAS,MAAM,IAAI,CAAC;IAC1C,CAAC;IACD,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,OAAO,OAAO,SAAS,MAAM,IAAI,CAAC;IAC3C,CAAC;IACD,OAAO,OAAO,MAAM,GAAG,CAAC;AAC1B,CAAC"}