@3fn/core 14.0.0 → 15.0.0

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 (1442) hide show
  1. package/.kiro/steering/AI-Collaboration-Principles.md +9 -3
  2. package/.kiro/steering/Agent-Directory.md +31 -7
  3. package/.kiro/steering/Civitas-System-Overview.md +5 -14
  4. package/.kiro/steering/DesignerPunk-Systems-Overview.md +3 -3
  5. package/.kiro/steering/Spec-Feedback-Protocol.md +2 -11
  6. package/.kiro/steering/Task-Completion-Protocol.md +17 -16
  7. package/.kiro/steering/start-up-tasks.md +15 -7
  8. package/CHANGELOG.md +74 -0
  9. package/README.md +26 -21
  10. package/application-mcp-server/src/__tests__/consumerRootLiveReindex.test.ts +118 -0
  11. package/application-mcp-server/src/__tests__/errorCatalogWiring.test.ts +73 -0
  12. package/application-mcp-server/src/__tests__/mcpDataRootsDeclaration.test.ts +107 -0
  13. package/application-mcp-server/src/__tests__/tool-boundary.contract.test.ts +55 -0
  14. package/application-mcp-server/src/index.ts +249 -59
  15. package/application-mcp-server/src/indexer/ComponentIndexer.ts +273 -46
  16. package/application-mcp-server/src/indexer/ModeClassifier.ts +23 -16
  17. package/application-mcp-server/src/indexer/SemanticOverrideReader.ts +113 -0
  18. package/application-mcp-server/src/indexer/TokenIndexer.ts +195 -3
  19. package/application-mcp-server/src/indexer/__tests__/MultiRootIndexing.test.ts +134 -0
  20. package/application-mcp-server/src/indexer/__tests__/ThemeResolution.test.ts +241 -0
  21. package/application-mcp-server/src/indexer/__tests__/ThemeRootFollowsIndex.test.ts +216 -0
  22. package/application-mcp-server/src/indexer/__tests__/fixtures/consumerFixture.ts +84 -0
  23. package/application-mcp-server/src/indexer/resolveThemeTierRoot.ts +61 -0
  24. package/application-mcp-server/src/watcher/FileWatcher.ts +20 -7
  25. package/dist/ComponentTokens.android.kt +12 -12
  26. package/dist/ComponentTokens.ios.swift +12 -12
  27. package/dist/ComponentTokens.web.css +3 -3
  28. package/dist/DesignTokens.android.kt +1 -5
  29. package/dist/DesignTokens.dtcg.json +388 -122
  30. package/dist/DesignTokens.figma.json +281 -941
  31. package/dist/DesignTokens.ios.swift +1 -5
  32. package/dist/DesignTokens.web.css +5 -5
  33. package/dist/browser/designerpunk.esm.js +174 -103
  34. package/dist/browser/designerpunk.esm.min.js +58 -55
  35. package/dist/browser/designerpunk.umd.js +174 -103
  36. package/dist/browser/designerpunk.umd.min.js +58 -55
  37. package/dist/browser/tokens.css +7 -7
  38. package/dist/build/platforms/AndroidMotionTokenFormatter.d.ts +101 -0
  39. package/dist/build/platforms/AndroidMotionTokenFormatter.js +220 -0
  40. package/dist/build/platforms/WebMotionTokenFormatter.d.ts +85 -0
  41. package/dist/build/platforms/WebMotionTokenFormatter.js +167 -0
  42. package/dist/build/platforms/iOSMotionTokenFormatter.d.ts +99 -0
  43. package/dist/build/platforms/iOSMotionTokenFormatter.js +221 -0
  44. package/dist/build/tokens/defineComponentTokens.d.ts +10 -0
  45. package/dist/build/tokens/defineComponentTokens.js +26 -0
  46. package/dist/build/validation/index.d.ts +0 -4
  47. package/dist/build/validation/index.js +1 -8
  48. package/dist/cli/attach.d.ts +153 -0
  49. package/dist/cli/attach.js +423 -0
  50. package/dist/cli/designerpunk.d.ts +46 -0
  51. package/dist/cli/designerpunk.js +171 -34
  52. package/dist/cli/figma-extract.js +10 -1
  53. package/dist/cli/figma-push.js +11 -2
  54. package/dist/cli/init.d.ts +36 -5
  55. package/dist/cli/init.js +348 -143
  56. package/dist/cli/loadComponentTokens.d.ts +25 -0
  57. package/dist/cli/loadComponentTokens.js +87 -8
  58. package/dist/cli/shared/bornRepo.d.ts +50 -0
  59. package/dist/cli/shared/bornRepo.js +199 -0
  60. package/dist/cli/shared/errorCatalog.d.ts +130 -0
  61. package/dist/cli/shared/errorCatalog.js +148 -0
  62. package/dist/cli/shared/mcpConfig/cc.d.ts +25 -0
  63. package/dist/cli/shared/mcpConfig/cc.js +156 -0
  64. package/dist/cli/shared/mcpConfig/kiro.d.ts +53 -0
  65. package/dist/cli/shared/mcpConfig/kiro.js +140 -0
  66. package/dist/cli/shared/mcpDataRoots.d.ts +88 -1
  67. package/dist/cli/shared/mcpDataRoots.js +76 -2
  68. package/dist/cli/shared/transforms.d.ts +64 -0
  69. package/dist/cli/shared/transforms.js +138 -0
  70. package/dist/cli/shared/vocabulary.d.ts +50 -0
  71. package/dist/cli/shared/vocabulary.js +62 -0
  72. package/dist/cli/sync/Applier.d.ts +25 -26
  73. package/dist/cli/sync/Applier.js +37 -73
  74. package/dist/cli/sync/Classifier.d.ts +70 -6
  75. package/dist/cli/sync/Classifier.js +123 -84
  76. package/dist/cli/sync/FileScanner.d.ts +19 -10
  77. package/dist/cli/sync/FileScanner.js +33 -25
  78. package/dist/cli/sync/KeyGrain.d.ts +106 -0
  79. package/dist/cli/sync/KeyGrain.js +301 -0
  80. package/dist/cli/sync/Manifest.d.ts +147 -12
  81. package/dist/cli/sync/Manifest.js +276 -21
  82. package/dist/cli/sync/Migration.d.ts +271 -0
  83. package/dist/cli/sync/Migration.js +764 -0
  84. package/dist/cli/sync/NameContract.d.ts +169 -0
  85. package/dist/cli/sync/NameContract.js +246 -0
  86. package/dist/cli/sync/RegionGrain.d.ts +118 -0
  87. package/dist/cli/sync/RegionGrain.js +167 -0
  88. package/dist/cli/sync/Reporter.d.ts +33 -4
  89. package/dist/cli/sync/Reporter.js +112 -53
  90. package/dist/cli/sync/SteeringDirCheck.d.ts +32 -4
  91. package/dist/cli/sync/SteeringDirCheck.js +62 -14
  92. package/dist/cli/sync/index.d.ts +125 -6
  93. package/dist/cli/sync/index.js +716 -66
  94. package/dist/color/OklchValidator.d.ts +43 -3
  95. package/dist/color/OklchValidator.js +46 -8
  96. package/dist/components/core/Avatar-Base/avatar.tokens.d.ts +21 -26
  97. package/dist/components/core/Avatar-Base/avatar.tokens.js +31 -34
  98. package/dist/components/core/Avatar-Base/index.d.ts +1 -1
  99. package/dist/components/core/Avatar-Base/index.js +2 -2
  100. package/dist/components/core/Button-CTA/Button-CTA.refs.d.ts +83 -0
  101. package/dist/components/core/Button-CTA/Button-CTA.refs.js +86 -0
  102. package/dist/components/core/Button-CTA/Button-CTA.tokens.d.ts +20 -10
  103. package/dist/components/core/Button-CTA/Button-CTA.tokens.js +21 -10
  104. package/dist/components/core/Button-CTA/index.d.ts +2 -2
  105. package/dist/components/core/Button-CTA/index.js +3 -3
  106. package/dist/components/core/Button-Icon/buttonIcon.tokens.d.ts +28 -14
  107. package/dist/components/core/Button-Icon/buttonIcon.tokens.js +35 -20
  108. package/dist/components/core/Button-VerticalList-Item/platforms/web/ButtonVerticalListItem.web.d.ts +11 -30
  109. package/dist/components/core/Button-VerticalList-Item/platforms/web/ButtonVerticalListItem.web.js +16 -49
  110. package/dist/components/core/Container-Base/Container-Base.refs.d.ts +181 -0
  111. package/dist/components/core/Container-Base/Container-Base.refs.js +223 -0
  112. package/dist/components/core/Container-Base/index.d.ts +2 -2
  113. package/dist/components/core/Container-Base/index.js +10 -10
  114. package/dist/components/core/Container-Base/platforms/web/ContainerBase.web.js +1 -1
  115. package/dist/components/core/Container-Base/platforms/web/token-mapping.d.ts +27 -9
  116. package/dist/components/core/Container-Base/platforms/web/token-mapping.js +50 -22
  117. package/dist/components/core/Container-Card-Base/Container-Card-Base.refs.d.ts +149 -0
  118. package/dist/components/core/Container-Card-Base/Container-Card-Base.refs.js +207 -0
  119. package/dist/components/core/Container-Card-Base/index.d.ts +1 -1
  120. package/dist/components/core/Container-Card-Base/index.js +19 -19
  121. package/dist/components/core/Container-Card-Base/platforms/web/ContainerCardBase.web.js +7 -6
  122. package/dist/components/core/Input-Radio-Base/platforms/web/InputRadioBase.web.d.ts +15 -0
  123. package/dist/components/core/Input-Radio-Base/platforms/web/InputRadioBase.web.js +41 -1
  124. package/dist/components/core/Input-Text-Base/Input-Text-Base.refs.d.ts +331 -0
  125. package/dist/components/core/Input-Text-Base/Input-Text-Base.refs.js +164 -0
  126. package/dist/components/core/Input-Text-Base/platforms/web/InputTextBase.web.js +1 -1
  127. package/dist/components/core/Input-Text-Email/Input-Text-Email.refs.d.ts +20 -0
  128. package/dist/components/core/Input-Text-Email/Input-Text-Email.refs.js +34 -0
  129. package/dist/components/core/Input-Text-Password/Input-Text-Password.refs.d.ts +20 -0
  130. package/dist/components/core/Input-Text-Password/Input-Text-Password.refs.js +34 -0
  131. package/dist/components/core/Input-Text-Password/platforms/web/InputTextPassword.web.d.ts +30 -0
  132. package/dist/components/core/Input-Text-Password/platforms/web/InputTextPassword.web.js +72 -3
  133. package/dist/components/core/Input-Text-PhoneNumber/Input-Text-PhoneNumber.refs.d.ts +20 -0
  134. package/dist/components/core/Input-Text-PhoneNumber/Input-Text-PhoneNumber.refs.js +34 -0
  135. package/dist/consumer-canonical/agents/ada.md +331 -0
  136. package/dist/consumer-canonical/agents/data.md +429 -0
  137. package/dist/consumer-canonical/agents/kenya.md +400 -0
  138. package/dist/consumer-canonical/agents/leonardo.md +524 -0
  139. package/dist/consumer-canonical/agents/lina.md +501 -0
  140. package/dist/consumer-canonical/agents/sparky.md +395 -0
  141. package/dist/consumer-canonical/agents/stacy.md +515 -0
  142. package/dist/consumer-canonical/agents/thurgood.md +463 -0
  143. package/dist/consumer-canonical/always-set/agent-directory.dispositions.yaml +21 -0
  144. package/dist/consumer-canonical/always-set/agent-directory.overlay.md +51 -0
  145. package/dist/consumer-canonical/always-set/ai-collaboration-principles.dispositions.yaml +15 -0
  146. package/dist/consumer-canonical/always-set/ai-collaboration-principles.overlay.md +26 -0
  147. package/dist/consumer-canonical/always-set/civitas-system-overview.dispositions.yaml +15 -0
  148. package/dist/consumer-canonical/always-set/civitas-system-overview.overlay.md +70 -0
  149. package/dist/consumer-canonical/always-set/core-goals.dispositions.yaml +9 -0
  150. package/dist/consumer-canonical/always-set/core-goals.overlay.md +74 -0
  151. package/dist/consumer-canonical/always-set/designerpunk-systems-overview.dispositions.yaml +16 -0
  152. package/dist/consumer-canonical/always-set/designerpunk-systems-overview.overlay.md +44 -0
  153. package/dist/consumer-canonical/always-set/spec-feedback-protocol.dispositions.yaml +21 -0
  154. package/dist/consumer-canonical/always-set/spec-feedback-protocol.overlay.md +44 -0
  155. package/dist/consumer-canonical/always-set/start-up-tasks.dispositions.yaml +15 -0
  156. package/dist/consumer-canonical/always-set/start-up-tasks.overlay.md +25 -0
  157. package/dist/consumer-canonical/always-set/task-completion-protocol.dispositions.yaml +19 -0
  158. package/dist/consumer-canonical/always-set/task-completion-protocol.overlay.md +116 -0
  159. package/dist/consumer-canonical/consumer-profile.yaml +9 -0
  160. package/dist/consumer-canonical/shared/always-set.yaml +113 -0
  161. package/dist/consumer-canonical/shared/field-dispositions.yaml +85 -0
  162. package/dist/consumer-canonical/shared/shared-catalog.yaml +19 -0
  163. package/dist/consumer-canonical/shared/skills-map.yaml +33 -0
  164. package/dist/consumer-canonical/skills/adaptive/SKILL.md +301 -0
  165. package/dist/consumer-canonical/skills/adaptive/references/android/develop/ui/compose/layouts/adaptive/flexbox/container-behavior.md +112 -0
  166. package/dist/consumer-canonical/skills/adaptive/references/android/develop/ui/compose/layouts/adaptive/flexbox/get-started.md +69 -0
  167. package/dist/consumer-canonical/skills/adaptive/references/android/develop/ui/compose/layouts/adaptive/flexbox/index.md +81 -0
  168. package/dist/consumer-canonical/skills/adaptive/references/android/develop/ui/compose/layouts/adaptive/flexbox/item-behavior.md +170 -0
  169. package/dist/consumer-canonical/skills/adaptive/references/android/develop/ui/compose/layouts/adaptive/grid/container-properties.md +238 -0
  170. package/dist/consumer-canonical/skills/adaptive/references/android/develop/ui/compose/layouts/adaptive/grid/get-started.md +51 -0
  171. package/dist/consumer-canonical/skills/adaptive/references/android/develop/ui/compose/layouts/adaptive/grid/index.md +73 -0
  172. package/dist/consumer-canonical/skills/adaptive/references/android/develop/ui/compose/layouts/adaptive/grid/item-properties.md +168 -0
  173. package/dist/consumer-canonical/skills/adaptive/references/android/develop/ui/compose/layouts/adaptive/mediaquery/index.md +329 -0
  174. package/dist/consumer-canonical/skills/adaptive/references/android/develop/ui/compose/tooling/debug.md +114 -0
  175. package/dist/consumer-canonical/skills/adaptive/references/android/guide/navigation/navigation-3/recipes/material-listdetail.md +141 -0
  176. package/dist/consumer-canonical/skills/edge-to-edge/SKILL.md +426 -0
  177. package/dist/consumer-canonical/skills/impeccable/SKILL.md +237 -0
  178. package/dist/consumer-canonical/skills/impeccable/detector-exclusions.md +42 -0
  179. package/dist/consumer-canonical/skills/impeccable/reference/adapt.md +190 -0
  180. package/dist/consumer-canonical/skills/impeccable/reference/animate.md +194 -0
  181. package/dist/consumer-canonical/skills/impeccable/reference/audit.md +150 -0
  182. package/dist/consumer-canonical/skills/impeccable/reference/bolder.md +113 -0
  183. package/dist/consumer-canonical/skills/impeccable/reference/brand-dp.md +103 -0
  184. package/dist/consumer-canonical/skills/impeccable/reference/clarify.md +174 -0
  185. package/dist/consumer-canonical/skills/impeccable/reference/codex.md +105 -0
  186. package/dist/consumer-canonical/skills/impeccable/reference/cognitive-load.md +106 -0
  187. package/dist/consumer-canonical/skills/impeccable/reference/color-and-contrast.md +122 -0
  188. package/dist/consumer-canonical/skills/impeccable/reference/colorize.md +155 -0
  189. package/dist/consumer-canonical/skills/impeccable/reference/craft.md +123 -0
  190. package/dist/consumer-canonical/skills/impeccable/reference/critique.md +245 -0
  191. package/dist/consumer-canonical/skills/impeccable/reference/delight.md +302 -0
  192. package/dist/consumer-canonical/skills/impeccable/reference/distill.md +111 -0
  193. package/dist/consumer-canonical/skills/impeccable/reference/extract-dp.md +43 -0
  194. package/dist/consumer-canonical/skills/impeccable/reference/harden.md +347 -0
  195. package/dist/consumer-canonical/skills/impeccable/reference/heuristics-scoring.md +234 -0
  196. package/dist/consumer-canonical/skills/impeccable/reference/interaction-design.md +195 -0
  197. package/dist/consumer-canonical/skills/impeccable/reference/layout.md +141 -0
  198. package/dist/consumer-canonical/skills/impeccable/reference/live.md +622 -0
  199. package/dist/consumer-canonical/skills/impeccable/reference/motion-design.md +109 -0
  200. package/dist/consumer-canonical/skills/impeccable/reference/onboard.md +234 -0
  201. package/dist/consumer-canonical/skills/impeccable/reference/optimize.md +258 -0
  202. package/dist/consumer-canonical/skills/impeccable/reference/overdrive.md +130 -0
  203. package/dist/consumer-canonical/skills/impeccable/reference/personas.md +179 -0
  204. package/dist/consumer-canonical/skills/impeccable/reference/polish.md +242 -0
  205. package/dist/consumer-canonical/skills/impeccable/reference/product-dp.md +79 -0
  206. package/dist/consumer-canonical/skills/impeccable/reference/quieter.md +99 -0
  207. package/dist/consumer-canonical/skills/impeccable/reference/responsive-design.md +114 -0
  208. package/dist/consumer-canonical/skills/impeccable/reference/shape.md +165 -0
  209. package/dist/consumer-canonical/skills/impeccable/reference/spatial-design.md +100 -0
  210. package/dist/consumer-canonical/skills/impeccable/reference/typeset.md +126 -0
  211. package/dist/consumer-canonical/skills/impeccable/reference/typography.md +159 -0
  212. package/dist/consumer-canonical/skills/impeccable/reference/ux-writing.md +107 -0
  213. package/dist/consumer-canonical/skills/impeccable/scripts/detect.mjs +21 -0
  214. package/dist/consumer-canonical/skills/impeccable/scripts/detector/browser/injected/index.mjs +1725 -0
  215. package/dist/consumer-canonical/skills/impeccable/scripts/detector/cli/main.mjs +244 -0
  216. package/dist/consumer-canonical/skills/impeccable/scripts/detector/detect-antipatterns-browser.js +4567 -0
  217. package/dist/consumer-canonical/skills/impeccable/scripts/detector/detect-antipatterns.mjs +43 -0
  218. package/dist/consumer-canonical/skills/impeccable/scripts/detector/engines/browser/detect-url.mjs +252 -0
  219. package/dist/consumer-canonical/skills/impeccable/scripts/detector/engines/regex/detect-text.mjs +535 -0
  220. package/dist/consumer-canonical/skills/impeccable/scripts/detector/engines/static-html/css-cascade.mjs +986 -0
  221. package/dist/consumer-canonical/skills/impeccable/scripts/detector/engines/static-html/detect-html.mjs +208 -0
  222. package/dist/consumer-canonical/skills/impeccable/scripts/detector/engines/visual/screenshot-contrast.mjs +189 -0
  223. package/dist/consumer-canonical/skills/impeccable/scripts/detector/findings.mjs +12 -0
  224. package/dist/consumer-canonical/skills/impeccable/scripts/detector/node/file-system.mjs +198 -0
  225. package/dist/consumer-canonical/skills/impeccable/scripts/detector/profile/profiler.mjs +166 -0
  226. package/dist/consumer-canonical/skills/impeccable/scripts/detector/registry/antipatterns.mjs +419 -0
  227. package/dist/consumer-canonical/skills/impeccable/scripts/detector/rules/checks.mjs +2316 -0
  228. package/dist/consumer-canonical/skills/impeccable/scripts/detector/shared/color.mjs +156 -0
  229. package/dist/consumer-canonical/skills/impeccable/scripts/detector/shared/constants.mjs +101 -0
  230. package/dist/consumer-canonical/skills/impeccable/scripts/detector/shared/page.mjs +7 -0
  231. package/dist/consumer-canonical/skills/navigation-3/SKILL.md +110 -0
  232. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/index.md +38 -0
  233. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/migration-guide.md +498 -0
  234. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/animations.md +147 -0
  235. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/basic.md +89 -0
  236. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/basicdsl.md +85 -0
  237. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/basicsaveable.md +90 -0
  238. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/bottomsheet.md +195 -0
  239. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/common-ui.md +200 -0
  240. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/conditional.md +230 -0
  241. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/deeplinks-advanced.md +155 -0
  242. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/deeplinks-basic.md +744 -0
  243. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/dialog.md +107 -0
  244. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/material-listdetail.md +141 -0
  245. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/material-supportingpane.md +145 -0
  246. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/modular-hilt.md +283 -0
  247. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/modular-koin.md +287 -0
  248. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/multiple-backstacks.md +436 -0
  249. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/passingarguments.md +371 -0
  250. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/results-event.md +272 -0
  251. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/results-state.md +266 -0
  252. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/scenes-listdetail.md +435 -0
  253. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/scenes-twopane.md +244 -0
  254. package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/type-safe-destinations.md +129 -0
  255. package/dist/consumer-canonical/skills/theming-styles/SKILL.md +220 -0
  256. package/dist/consumer-canonical/skills/theming-styles/references/android/develop/ui/compose/designsystems/custom.md +459 -0
  257. package/dist/consumer-canonical/skills/theming-styles/references/android/develop/ui/compose/styles/fundamentals.md +420 -0
  258. package/dist/consumer-canonical/skills/theming-styles/references/android/develop/ui/compose/styles/state-animations.md +461 -0
  259. package/dist/consumer-canonical/skills/theming-styles/references/android/develop/ui/compose/styles/styles-vs-modifiers.md +48 -0
  260. package/dist/consumer-canonical/skills/theming-styles/references/android/develop/ui/compose/styles/theming.md +257 -0
  261. package/dist/generator/consumer-entry.js +5939 -0
  262. package/dist/generators/DTCGFormatGenerator.d.ts +14 -4
  263. package/dist/generators/DTCGFormatGenerator.js +35 -18
  264. package/dist/generators/TokenFileGenerator.js +20 -15
  265. package/dist/generators/generateTokenIndex.d.ts +14 -0
  266. package/dist/generators/generateTokenIndex.js +23 -0
  267. package/dist/generators/transformers/FigmaTransformer.d.ts +35 -0
  268. package/dist/generators/transformers/FigmaTransformer.js +101 -13
  269. package/dist/generators/types/DTCGTypes.d.ts +10 -0
  270. package/dist/mcp/application-mcp.js +1062 -261
  271. package/dist/mcp/docs-mcp.js +93 -13
  272. package/dist/mcp/product-mcp.js +539 -41
  273. package/dist/mcp/tool-manifest.json +184 -0
  274. package/dist/name-contract.json +4283 -0
  275. package/dist/tokens/BlurTokens.d.ts +3 -1
  276. package/dist/tokens/BlurTokens.js +6 -4
  277. package/dist/tokens/ShadowOffsetTokens.js +14 -14
  278. package/dist/tokens/SizingTokens.js +3 -3
  279. package/dist/tokens/TapAreaTokens.d.ts +13 -2
  280. package/dist/tokens/TapAreaTokens.js +19 -8
  281. package/dist/tokens/component/progress.d.ts +65 -5
  282. package/dist/tokens/component/progress.js +79 -18
  283. package/dist/tokens/semantic/ColorTokens.js +50 -5
  284. package/dist/tokens/semantic/TypographyTokens.js +10 -10
  285. package/dist/tokens/themes/dark/SemanticOverrides.js +21 -4
  286. package/dist/tools/integrity/Invariants.d.ts +23 -8
  287. package/dist/tools/integrity/Invariants.js +27 -8
  288. package/dist/tools/integrity/cli/run-audit.js +1 -1
  289. package/dist/types/PrimitiveToken.d.ts +15 -1
  290. package/dist/types/generated/TokenTypes.d.ts +1 -1
  291. package/dist/types/generated/TokenTypes.js +1 -1
  292. package/dist/types/index.d.ts +1 -0
  293. package/governance/AI-Collaboration-Framework.md +19 -10
  294. package/governance/BUILD-SYSTEM-SETUP.md +1 -2
  295. package/governance/Component-Development-Guide.md +1 -1
  296. package/governance/Component-Development-Standards.md +19 -18
  297. package/governance/Component-Family-Avatar.md +6 -6
  298. package/governance/Component-Family-Badge.md +19 -19
  299. package/governance/Component-Family-Button.md +26 -26
  300. package/governance/Component-Family-Chip.md +14 -14
  301. package/governance/Component-Family-Container.md +12 -12
  302. package/governance/Component-Family-Form-Inputs.md +61 -61
  303. package/governance/Component-Family-Icon.md +8 -8
  304. package/governance/Component-Family-Navigation.md +3 -3
  305. package/governance/Component-Inheritance-Structures.md +29 -28
  306. package/governance/Component-Readiness-Status.md +6 -7
  307. package/governance/Component-Templates.md +26 -26
  308. package/governance/Contract-System-Reference.md +1 -1
  309. package/governance/DTCG-Integration-Guide.md +63 -36
  310. package/governance/DesignerPunk-Integration-Guide.md +57 -61
  311. package/governance/Figma-Workflow-Guide.md +15 -8
  312. package/governance/Process-Development-Workflow.md +4 -4
  313. package/governance/Process-File-Organization.md +1 -4
  314. package/governance/Process-Hook-Operations.md +6 -7
  315. package/governance/Process-Integration-Methodology.md +5 -5
  316. package/governance/Process-Spec-Planning.md +187 -68
  317. package/governance/Product-Handoff-Protocol.md +27 -2
  318. package/governance/Rosetta-System-Architecture.md +7 -5
  319. package/governance/Test-Behavioral-Contract-Validation.md +5 -0
  320. package/governance/Test-Development-Standards.md +4 -4
  321. package/governance/Token-Family-Accessibility.md +18 -14
  322. package/governance/Token-Family-Blend.md +5 -4
  323. package/governance/Token-Family-Blur.md +8 -8
  324. package/governance/Token-Family-Color.md +40 -22
  325. package/governance/Token-Family-Glow.md +26 -24
  326. package/governance/Token-Family-Layering.md +1 -0
  327. package/governance/Token-Family-Motion.md +22 -13
  328. package/governance/Token-Family-Opacity.md +20 -34
  329. package/governance/Token-Family-Radius.md +4 -2
  330. package/governance/Token-Family-Responsive.md +4 -4
  331. package/governance/Token-Family-Shadow.md +69 -46
  332. package/governance/Token-Family-Spacing.md +22 -12
  333. package/governance/Token-Family-Typography.md +86 -85
  334. package/governance/Token-Governance.md +5 -1
  335. package/governance/Token-Quick-Reference.md +97 -80
  336. package/governance/Transformer-Development-Guide.md +5 -4
  337. package/governance/Web-Authoring-Standards.md +1 -1
  338. package/governance/classification-map.md +706 -10
  339. package/governance/completion-documentation-guide.md +298 -33
  340. package/governance/platform-implementation-guidelines.md +3 -3
  341. package/governance/release-management-system.md +28 -63
  342. package/mcp-server/src/index.ts +16 -12
  343. package/mcp-server/src/relocation-integrity-gate/__tests__/relocation-integrity-gate.test.ts +3 -3
  344. package/mcp-server/src/relocation-integrity-gate/relocation-integrity-gate.ts +70 -49
  345. package/mcp-server/src/tools/find-docs.ts +1 -0
  346. package/mcp-server/src/tools/get-document-full.ts +1 -0
  347. package/mcp-server/src/tools/get-document-summary.ts +1 -0
  348. package/mcp-server/src/tools/get-index-health.ts +1 -0
  349. package/mcp-server/src/tools/get-section.ts +1 -0
  350. package/mcp-server/src/tools/list-cross-references.ts +1 -0
  351. package/mcp-server/src/tools/rebuild-index.ts +1 -0
  352. package/mcp-server/src/tools/validate-metadata.ts +1 -0
  353. package/package.json +76 -16
  354. package/src/build/tokens/defineComponentTokens.ts +43 -1
  355. package/src/cli/templates/mcp-config.json.template +15 -20
  356. package/src/components/core/Avatar-Base/platforms/android/AvatarPreview.kt +9 -2
  357. package/src/components/core/Container-Base/Container-Base.schema.yaml +9 -11
  358. package/src/components/core/Container-Base/platforms/android/ContainerBase.android.kt +5 -5
  359. package/src/components/core/Container-Base/platforms/ios/ContainerBase.ios.swift +5 -5
  360. package/src/components/core/Container-Card-Base/platforms/android/ContainerCardBase.android.kt +3 -3
  361. package/src/components/core/Container-Card-Base/platforms/ios/ContainerCardBase.ios.swift +2 -2
  362. package/src/components/core/Nav-Header-App/contracts.yaml +1 -1
  363. package/src/components/core/Nav-Header-Base/component-meta.yaml +0 -1
  364. package/src/components/core/Nav-Header-Base/contracts.yaml +1 -1
  365. package/src/components/core/Nav-Header-Page/contracts.yaml +1 -1
  366. package/src/components/core/Nav-TabBar-Base/contracts.yaml +1 -1
  367. package/src/components/core/Progress-Bar-Base/contracts.yaml +1 -1
  368. package/src/tokens/BlurTokens.ts +6 -4
  369. package/src/tokens/ShadowOffsetTokens.ts +14 -14
  370. package/src/tokens/SizingTokens.ts +3 -3
  371. package/src/tokens/TapAreaTokens.ts +20 -8
  372. package/src/tokens/__tests__/BaselineGridAlignmentFlag.test.ts +116 -0
  373. package/src/tokens/__tests__/BlurTokens.test.ts +10 -2
  374. package/src/tokens/__tests__/ProgressTokenCompliance.test.ts +5 -3
  375. package/src/tokens/__tests__/ProgressTokenFormulas.test.ts +11 -11
  376. package/src/tokens/__tests__/ProgressTokenTranslation.test.ts +22 -20
  377. package/src/tokens/__tests__/SemanticColorContrast.test.ts +339 -0
  378. package/src/tokens/__tests__/ShadowOffsetTokens.test.ts +8 -7
  379. package/src/tokens/__tests__/SizingTokens.test.ts +10 -2
  380. package/src/tokens/__tests__/TokenCategories.test.ts +1 -1
  381. package/src/tokens/__tests__/neutral-partition.test.ts +28 -0
  382. package/src/tokens/component/progress.ts +83 -21
  383. package/src/tokens/semantic/AccessibilityTokens.README.md +2 -2
  384. package/src/tokens/semantic/ColorTokens.ts +50 -5
  385. package/src/tokens/semantic/TypographyTokens.ts +10 -10
  386. package/src/tokens/semantic/__tests__/ColorTokens.test.ts +8 -4
  387. package/src/tokens/themes/dark/SemanticOverrides.ts +23 -4
  388. package/src/types/PrimitiveToken.ts +15 -1
  389. package/token-index/components.yaml +8 -8
  390. package/token-index/meta.json +3 -0
  391. package/token-index/semantics.yaml +21 -15
  392. package/.kiro/agents/ada-prompt.md +0 -213
  393. package/.kiro/agents/ada-prompt.md.attribution.json +0 -45
  394. package/.kiro/agents/ada.json +0 -72
  395. package/.kiro/agents/ada.json.attribution.json +0 -13
  396. package/.kiro/agents/data-prompt.md +0 -324
  397. package/.kiro/agents/data-prompt.md.attribution.json +0 -53
  398. package/.kiro/agents/data.json +0 -51
  399. package/.kiro/agents/data.json.attribution.json +0 -13
  400. package/.kiro/agents/kenya-prompt.md +0 -309
  401. package/.kiro/agents/kenya-prompt.md.attribution.json +0 -53
  402. package/.kiro/agents/kenya.json +0 -46
  403. package/.kiro/agents/kenya.json.attribution.json +0 -13
  404. package/.kiro/agents/leonardo-prompt.md +0 -359
  405. package/.kiro/agents/leonardo-prompt.md.attribution.json +0 -45
  406. package/.kiro/agents/leonardo.json +0 -47
  407. package/.kiro/agents/leonardo.json.attribution.json +0 -13
  408. package/.kiro/agents/lina-prompt.md +0 -344
  409. package/.kiro/agents/lina-prompt.md.attribution.json +0 -53
  410. package/.kiro/agents/lina.json +0 -64
  411. package/.kiro/agents/lina.json.attribution.json +0 -13
  412. package/.kiro/agents/sparky-prompt.md +0 -312
  413. package/.kiro/agents/sparky-prompt.md.attribution.json +0 -53
  414. package/.kiro/agents/sparky.json +0 -56
  415. package/.kiro/agents/sparky.json.attribution.json +0 -13
  416. package/.kiro/agents/stacy-prompt.md +0 -304
  417. package/.kiro/agents/stacy-prompt.md.attribution.json +0 -45
  418. package/.kiro/agents/stacy.json +0 -46
  419. package/.kiro/agents/stacy.json.attribution.json +0 -13
  420. package/.kiro/agents/thurgood-prompt.md +0 -363
  421. package/.kiro/agents/thurgood-prompt.md.attribution.json +0 -45
  422. package/.kiro/agents/thurgood.json +0 -47
  423. package/.kiro/agents/thurgood.json.attribution.json +0 -13
  424. package/.kiro/steering/personal-note.md +0 -35
  425. package/designerpunk.config.ts +0 -27
  426. package/dist/android/DesignTokens.android.kt +0 -695
  427. package/dist/components/core/Input-Text-Base/platforms/web/InputTextBase.browser.d.ts +0 -26
  428. package/dist/components/core/Input-Text-Base/platforms/web/InputTextBase.browser.js +0 -224
  429. package/dist/components/core/Input-Text-Email/platforms/web/InputTextEmail.browser.d.ts +0 -30
  430. package/dist/components/core/Input-Text-Email/platforms/web/InputTextEmail.browser.js +0 -254
  431. package/dist/components/core/Input-Text-Password/platforms/web/InputTextPassword.browser.d.ts +0 -44
  432. package/dist/components/core/Input-Text-Password/platforms/web/InputTextPassword.browser.js +0 -376
  433. package/dist/components/core/Input-Text-PhoneNumber/platforms/web/InputTextPhoneNumber.browser.d.ts +0 -38
  434. package/dist/components/core/Input-Text-PhoneNumber/platforms/web/InputTextPhoneNumber.browser.js +0 -328
  435. package/dist/ios/DesignTokens.ios.swift +0 -697
  436. package/dist/web/DesignTokens.web.css +0 -929
  437. package/product-template/agents/README.md +0 -73
  438. package/product-template/agents/ada-prompt.md +0 -83
  439. package/product-template/agents/data-prompt.md +0 -74
  440. package/product-template/agents/kenya-prompt.md +0 -74
  441. package/product-template/agents/leonardo-prompt.md +0 -99
  442. package/product-template/agents/lina-prompt.md +0 -61
  443. package/product-template/agents/sparky-prompt.md +0 -66
  444. package/product-template/agents/stacy-prompt.md +0 -51
  445. package/product-template/agents/thurgood-prompt.md +0 -64
  446. package/src/TokenEngine.ts +0 -628
  447. package/src/__tests__/BuildSystemIntegration.test.ts +0 -485
  448. package/src/__tests__/ProductMCPIntegration.test.ts +0 -204
  449. package/src/__tests__/__mocks__/styleMock.js +0 -18
  450. package/src/__tests__/browser-distribution/build-error-handling.test.ts +0 -143
  451. package/src/__tests__/browser-distribution/bundle-loading.test.ts +0 -353
  452. package/src/__tests__/browser-distribution/bundler-resolution.test.ts +0 -223
  453. package/src/__tests__/browser-distribution/component-registration.test.ts +0 -217
  454. package/src/__tests__/browser-distribution/css-bundling.test.ts +0 -233
  455. package/src/__tests__/browser-distribution/demo-system.test.ts +0 -588
  456. package/src/__tests__/browser-distribution/mcp-format-compliance.property.test.ts +0 -379
  457. package/src/__tests__/browser-distribution/mcp-queryability.test.ts +0 -342
  458. package/src/__tests__/browser-distribution/minification-effectiveness.property.test.ts +0 -188
  459. package/src/__tests__/browser-distribution/registration-idempotency.property.test.ts +0 -372
  460. package/src/__tests__/browser-distribution/soft-ceiling-warning.test.ts +0 -161
  461. package/src/__tests__/browser-distribution/token-completeness.property.test.ts +0 -412
  462. package/src/__tests__/browser-distribution/token-loading.test.ts +0 -344
  463. package/src/__tests__/browser-distribution/umd-bundle-loading.test.ts +0 -169
  464. package/src/__tests__/console-allowlist.json +0 -14
  465. package/src/__tests__/console-fail-setup.ts +0 -169
  466. package/src/__tests__/examples/improved-test-example.test.ts +0 -120
  467. package/src/__tests__/expected-exports.json +0 -66
  468. package/src/__tests__/export-contracts.test.ts +0 -83
  469. package/src/__tests__/fixtures/acknowledged-differences.json +0 -127
  470. package/src/__tests__/fixtures/acknowledged-differences.schema.json +0 -113
  471. package/src/__tests__/fixtures/acknowledged-differences.types.ts +0 -230
  472. package/src/__tests__/fixtures/tokenFixtures.ts +0 -248
  473. package/src/__tests__/helpers/configModuleLoader.ts +0 -20
  474. package/src/__tests__/helpers/tsModuleLoader.ts +0 -24
  475. package/src/__tests__/helpers/web-component-test-utils.ts +0 -39
  476. package/src/__tests__/integration/BlendCrossPlatformConsistency.test.ts +0 -505
  477. package/src/__tests__/integration/BuildSystemCompatibility.test.ts +0 -551
  478. package/src/__tests__/integration/CrossPlatformConsistency.test.ts +0 -855
  479. package/src/__tests__/integration/EndToEndWorkflow.test.ts +0 -601
  480. package/src/__tests__/integration/ErrorHandling.test.ts +0 -459
  481. package/src/__tests__/integration/OpacityPlatformTranslation.test.ts +0 -364
  482. package/src/__tests__/integration/PerformanceValidation.test.ts +0 -887
  483. package/src/__tests__/integration/SemanticTokenGeneration.test.ts +0 -451
  484. package/src/__tests__/integration/Spec107-DesignLanguageContext.test.ts +0 -139
  485. package/src/__tests__/integration/TokenSystemIntegration.test.ts +0 -890
  486. package/src/__tests__/integration/ValidationPipeline.test.ts +0 -404
  487. package/src/__tests__/package-drift-validation.test.ts +0 -249
  488. package/src/__tests__/performance/GenerationPerformance.test.ts +0 -409
  489. package/src/__tests__/performance/OptimizationValidation.test.ts +0 -509
  490. package/src/__tests__/platform-parity/ProgressPlatformParity.test.ts +0 -546
  491. package/src/__tests__/spec073-opacity-architecture.test.ts +0 -344
  492. package/src/__tests__/stemma-system/behavioral-contract-validation.test.ts +0 -520
  493. package/src/__tests__/stemma-system/composition-compliance-validation.test.ts +0 -162
  494. package/src/__tests__/stemma-system/contract-catalog-name-validation.test.ts +0 -184
  495. package/src/__tests__/stemma-system/contract-existence-validation.test.ts +0 -43
  496. package/src/__tests__/stemma-system/contract-test-reporter.ts +0 -269
  497. package/src/__tests__/stemma-system/cross-platform-consistency.test.ts +0 -564
  498. package/src/__tests__/stemma-system/form-inputs-contracts.test.ts +0 -710
  499. package/src/__tests__/stemma-system/input-text-native-base-call-alignment.test.ts +0 -298
  500. package/src/__tests__/stemma-system/mcp-component-integration.test.ts +0 -445
  501. package/src/analytics/PrimitiveTokenFallbackTracker.ts +0 -228
  502. package/src/analytics/SemanticTokenUsageTracker.ts +0 -193
  503. package/src/analytics/StrategicFlexibilityTracker.ts +0 -226
  504. package/src/analytics/TokenUsageTracker.ts +0 -177
  505. package/src/analytics/UsagePatternAnalyzer.ts +0 -177
  506. package/src/analytics/__tests__/UsageTracking.test.ts +0 -647
  507. package/src/analytics/index.ts +0 -42
  508. package/src/assets/fonts/__tests__/androidFontLoadingValidation.test.ts +0 -600
  509. package/src/assets/fonts/__tests__/fontLoading.test.ts +0 -341
  510. package/src/assets/fonts/__tests__/iosFontConfiguration.test.ts +0 -256
  511. package/src/assets/fonts/__tests__/iosFontLoadingValidation.test.ts +0 -465
  512. package/src/assets/fonts/inter/Inter-Bold.ttf +0 -0
  513. package/src/assets/fonts/inter/Inter-Bold.woff2 +0 -0
  514. package/src/assets/fonts/inter/Inter-Medium.ttf +0 -0
  515. package/src/assets/fonts/inter/Inter-Medium.woff2 +0 -0
  516. package/src/assets/fonts/inter/Inter-Regular.ttf +0 -0
  517. package/src/assets/fonts/inter/Inter-Regular.woff2 +0 -0
  518. package/src/assets/fonts/inter/Inter-SemiBold.ttf +0 -0
  519. package/src/assets/fonts/inter/Inter-SemiBold.woff2 +0 -0
  520. package/src/assets/fonts/inter/inter.css +0 -49
  521. package/src/blend/BlendCalculator.ts +0 -120
  522. package/src/blend/ColorSpaceUtils.ts +0 -325
  523. package/src/blend/OklchBlendCalculator.ts +0 -82
  524. package/src/blend/ThemeAwareBlendUtilities.web.ts +0 -323
  525. package/src/blend/__tests__/BlendCalculator.test.ts +0 -393
  526. package/src/blend/__tests__/BlendUtilities.property.test.ts +0 -600
  527. package/src/blend/__tests__/ColorSpaceUtils.test.ts +0 -885
  528. package/src/blend/__tests__/InteractionStateAudit.test.ts +0 -238
  529. package/src/blend/__tests__/OklchBlendCalculator.test.ts +0 -134
  530. package/src/blend/__tests__/ThemeAwareBlendUtilities.test.ts +0 -200
  531. package/src/blend/__tests__/ThemeSwitching.test.ts +0 -508
  532. package/src/blend/index.ts +0 -37
  533. package/src/browser-entry.ts +0 -270
  534. package/src/build/.gitkeep +0 -1
  535. package/src/build/BuildOrchestrator.ts +0 -663
  536. package/src/build/__tests__/AndroidBuildIntegration.test.ts +0 -437
  537. package/src/build/__tests__/AndroidMotionTokenGeneration.test.ts +0 -256
  538. package/src/build/__tests__/BuildOrchestrator.test.ts +0 -562
  539. package/src/build/__tests__/MotionTokenCrossPlatformIntegration.test.ts +0 -424
  540. package/src/build/__tests__/WebCSSTokenGeneration.test.ts +0 -271
  541. package/src/build/__tests__/WebMotionTokenGeneration.test.ts +0 -305
  542. package/src/build/__tests__/WebNPMPackageStructure.test.ts +0 -447
  543. package/src/build/__tests__/iOSMotionTokenGeneration.test.ts +0 -298
  544. package/src/build/errors/BuildError.ts +0 -140
  545. package/src/build/errors/ErrorDocumentation.ts +0 -638
  546. package/src/build/errors/ErrorHandler.ts +0 -406
  547. package/src/build/errors/ErrorReporter.ts +0 -573
  548. package/src/build/errors/PlatformGenerationError.ts +0 -201
  549. package/src/build/errors/README.md +0 -486
  550. package/src/build/errors/RecoveryStrategy.ts +0 -393
  551. package/src/build/errors/TokenGenerationError.ts +0 -196
  552. package/src/build/errors/TokenReferenceError.ts +0 -204
  553. package/src/build/errors/__tests__/BuildError.test.ts +0 -212
  554. package/src/build/errors/__tests__/ErrorDocumentation.example.ts +0 -272
  555. package/src/build/errors/__tests__/ErrorDocumentation.test.ts +0 -458
  556. package/src/build/errors/__tests__/ErrorHandler.integration.test.ts +0 -303
  557. package/src/build/errors/__tests__/ErrorHandler.test.ts +0 -502
  558. package/src/build/errors/__tests__/ErrorReporter.test.ts +0 -581
  559. package/src/build/errors/__tests__/MotionTokenErrors.test.ts +0 -392
  560. package/src/build/errors/__tests__/RecoveryStrategy.test.ts +0 -643
  561. package/src/build/errors/index.ts +0 -90
  562. package/src/build/index.ts +0 -73
  563. package/src/build/orchestration/IncrementalBuilder.ts +0 -532
  564. package/src/build/orchestration/ParallelExecutor.ts +0 -336
  565. package/src/build/orchestration/ProgressTracker.ts +0 -582
  566. package/src/build/orchestration/SequentialExecutor.ts +0 -305
  567. package/src/build/orchestration/__tests__/IncrementalBuilder.test.ts +0 -354
  568. package/src/build/orchestration/__tests__/ParallelExecutor.integration.test.ts +0 -295
  569. package/src/build/orchestration/__tests__/ParallelExecutor.test.ts +0 -493
  570. package/src/build/orchestration/__tests__/ProgressTracker.test.ts +0 -529
  571. package/src/build/orchestration/__tests__/SequentialExecutor.integration.test.ts +0 -202
  572. package/src/build/orchestration/__tests__/SequentialExecutor.test.ts +0 -232
  573. package/src/build/orchestration/index.ts +0 -35
  574. package/src/build/platforms/.gitkeep +0 -1
  575. package/src/build/platforms/AndroidBuilder.ts +0 -1366
  576. package/src/build/platforms/AndroidShadowGenerator.ts +0 -394
  577. package/src/build/platforms/IOSShadowGenerator.ts +0 -324
  578. package/src/build/platforms/PlatformBuilder.ts +0 -131
  579. package/src/build/platforms/WebBuilder.ts +0 -1414
  580. package/src/build/platforms/WebShadowGenerator.ts +0 -288
  581. package/src/build/platforms/__tests__/AndroidBuilder.tokenGeneration.test.ts +0 -146
  582. package/src/build/platforms/__tests__/AndroidShadowGenerator.test.ts +0 -195
  583. package/src/build/platforms/__tests__/IOSShadowGenerator.test.ts +0 -156
  584. package/src/build/platforms/__tests__/WebShadowGenerator.test.ts +0 -123
  585. package/src/build/platforms/__tests__/iOSBuilder.test.ts +0 -1599
  586. package/src/build/platforms/iOSBuilder.ts +0 -1746
  587. package/src/build/platforms/index.ts +0 -9
  588. package/src/build/product/ProductTokenGenerator.ts +0 -162
  589. package/src/build/product/TokenIndexReader.ts +0 -78
  590. package/src/build/product/__tests__/KotlinEmitter.test.ts +0 -109
  591. package/src/build/product/__tests__/ProductTokenGenerator.test.ts +0 -135
  592. package/src/build/product/__tests__/SwiftEmitter.test.ts +0 -90
  593. package/src/build/product/__tests__/TokenIndexReader.test.ts +0 -85
  594. package/src/build/product/__tests__/WebEmitter.test.ts +0 -111
  595. package/src/build/product/__tests__/fixtures/tokens/layout.yaml +0 -21
  596. package/src/build/product/__tests__/fixtures/tokens/motion.yaml +0 -11
  597. package/src/build/product/__tests__/fixtures/tokens/visualization.yaml +0 -8
  598. package/src/build/product/emitters/KotlinEmitter.ts +0 -83
  599. package/src/build/product/emitters/SwiftEmitter.ts +0 -95
  600. package/src/build/product/emitters/WebEmitter.ts +0 -69
  601. package/src/build/tokens/.gitkeep +0 -1
  602. package/src/build/tokens/__tests__/ClassInvariantGuard.test.ts +0 -167
  603. package/src/build/tokens/__tests__/ComponentTokenGenerator.test.ts +0 -285
  604. package/src/build/tokens/__tests__/TokenIntegrator.test.ts +0 -319
  605. package/src/build/tokens/__tests__/TokenSelector.test.ts +0 -264
  606. package/src/build/tokens/__tests__/UnitConverter.applyScaleWithRounding.test.ts +0 -160
  607. package/src/build/tokens/__tests__/UnitConverter.test.ts +0 -331
  608. package/src/build/tokens/__tests__/brand-dual-instance.test.ts +0 -135
  609. package/src/build/tokens/__tests__/defineComponentTokens.test.ts +0 -440
  610. package/src/build/types/.gitkeep +0 -1
  611. package/src/build/types/BuildConfig.ts +0 -123
  612. package/src/build/types/BuildOrchestrator.ts +0 -114
  613. package/src/build/types/BuildResult.ts +0 -125
  614. package/src/build/types/index.ts +0 -39
  615. package/src/build/validation/.gitkeep +0 -1
  616. package/src/build/validation/AndroidBuildValidator.ts +0 -630
  617. package/src/build/validation/CrossPlatformValidationReporter.ts +0 -1267
  618. package/src/build/validation/InterfaceContractValidator.ts +0 -417
  619. package/src/build/validation/InterfaceValidator.ts +0 -326
  620. package/src/build/validation/MathematicalConsistencyValidator.ts +0 -874
  621. package/src/build/validation/MethodSignatureValidator.ts +0 -374
  622. package/src/build/validation/PropertyTypeValidator.ts +0 -312
  623. package/src/build/validation/TokenComparator.ts +0 -796
  624. package/src/build/validation/ValidationReporter.example.ts +0 -310
  625. package/src/build/validation/ValidationReporter.ts +0 -745
  626. package/src/build/validation/WebBuildValidator.ts +0 -583
  627. package/src/build/validation/__tests__/AndroidBuildValidator.test.ts +0 -522
  628. package/src/build/validation/__tests__/CrossPlatformValidationReporter.test.ts +0 -593
  629. package/src/build/validation/__tests__/InterfaceContractValidator.test.ts +0 -647
  630. package/src/build/validation/__tests__/InterfaceValidation.functional.test.ts +0 -360
  631. package/src/build/validation/__tests__/InterfaceValidator.test.ts +0 -318
  632. package/src/build/validation/__tests__/MethodSignatureValidator.test.ts +0 -625
  633. package/src/build/validation/__tests__/MotionTokenCrossPlatformValidation.test.ts +0 -305
  634. package/src/build/validation/__tests__/MotionTokenValidation.test.ts +0 -309
  635. package/src/build/validation/__tests__/PropertyTypeValidator.test.ts +0 -557
  636. package/src/build/validation/__tests__/TokenComparator.test.ts +0 -358
  637. package/src/build/validation/__tests__/ValidationReporter.integration.test.ts +0 -424
  638. package/src/build/validation/__tests__/ValidationReporter.test.ts +0 -793
  639. package/src/build/validation/__tests__/WebBuildValidator.test.ts +0 -495
  640. package/src/build/validation/iOSBuildValidator.ts +0 -783
  641. package/src/build/validation/index.ts +0 -74
  642. package/src/build/validation/types/InterfaceDefinition.ts +0 -101
  643. package/src/build/validation/types/ValidationResult.ts +0 -114
  644. package/src/build/workflow/BuildMode.ts +0 -336
  645. package/src/build/workflow/CICDIntegration.ts +0 -503
  646. package/src/build/workflow/ConfigHelpers.example.ts +0 -317
  647. package/src/build/workflow/ConfigHelpers.ts +0 -834
  648. package/src/build/workflow/README.md +0 -327
  649. package/src/build/workflow/SourceMapGenerator.ts +0 -362
  650. package/src/build/workflow/__tests__/BuildMode.test.ts +0 -544
  651. package/src/build/workflow/__tests__/CICDIntegration.test.ts +0 -602
  652. package/src/build/workflow/__tests__/ConfigHelpers.test.ts +0 -559
  653. package/src/build/workflow/__tests__/SourceMapGenerator.test.ts +0 -421
  654. package/src/build/workflow/index.ts +0 -42
  655. package/src/cli/__tests__/Applier.test.ts +0 -202
  656. package/src/cli/__tests__/Classifier.test.ts +0 -187
  657. package/src/cli/__tests__/FileScanner.test.ts +0 -108
  658. package/src/cli/__tests__/IgnoreFilter.test.ts +0 -92
  659. package/src/cli/__tests__/Manifest.test.ts +0 -107
  660. package/src/cli/__tests__/PackageResolver.test.ts +0 -66
  661. package/src/cli/__tests__/Prompter.test.ts +0 -165
  662. package/src/cli/__tests__/Reporter.test.ts +0 -128
  663. package/src/cli/__tests__/backward-compat.test.ts +0 -142
  664. package/src/cli/__tests__/figma-extract.test.ts +0 -342
  665. package/src/cli/__tests__/figma-push.test.ts +0 -350
  666. package/src/cli/__tests__/init.test.ts +0 -293
  667. package/src/cli/__tests__/loadComponentTokens.test.ts +0 -187
  668. package/src/cli/__tests__/pipeline-independence.test.ts +0 -127
  669. package/src/cli/__tests__/product-only.test.ts +0 -130
  670. package/src/cli/__tests__/resolveTokens.test.ts +0 -88
  671. package/src/cli/__tests__/staleness.test.ts +0 -132
  672. package/src/cli/__tests__/sync.test.ts +0 -199
  673. package/src/cli/__tests__/validate.test.ts +0 -69
  674. package/src/cli/designerpunk.ts +0 -410
  675. package/src/cli/figma-extract.ts +0 -331
  676. package/src/cli/figma-push.ts +0 -288
  677. package/src/cli/generateProductTokens.ts +0 -69
  678. package/src/cli/init.ts +0 -481
  679. package/src/cli/loadComponentTokens.ts +0 -145
  680. package/src/cli/resolveTokens.ts +0 -123
  681. package/src/cli/shared/mcpDataRoots.ts +0 -122
  682. package/src/cli/shared/resolvePackageRoot.ts +0 -58
  683. package/src/cli/shared/transforms.ts +0 -18
  684. package/src/cli/staleness.ts +0 -81
  685. package/src/cli/sync/Applier.ts +0 -128
  686. package/src/cli/sync/Classifier.ts +0 -130
  687. package/src/cli/sync/FileScanner.ts +0 -64
  688. package/src/cli/sync/IgnoreFilter.ts +0 -44
  689. package/src/cli/sync/Manifest.ts +0 -64
  690. package/src/cli/sync/PackageResolver.ts +0 -40
  691. package/src/cli/sync/Prompter.ts +0 -173
  692. package/src/cli/sync/Reporter.ts +0 -78
  693. package/src/cli/sync/SteeringDirCheck.ts +0 -166
  694. package/src/cli/sync/index.ts +0 -115
  695. package/src/cli/validate.ts +0 -135
  696. package/src/cli/validateProductTokens.ts +0 -55
  697. package/src/color/OklchConverter.ts +0 -284
  698. package/src/color/OklchValidator.ts +0 -186
  699. package/src/color/__tests__/OklchConverter.test.ts +0 -232
  700. package/src/color/__tests__/OklchRegression.test.ts +0 -101
  701. package/src/color/__tests__/OklchValidator.test.ts +0 -199
  702. package/src/color/__tests__/WcagContrast.test.ts +0 -76
  703. package/src/components/__tests__/BlendTokenUsageValidation.test.ts +0 -726
  704. package/src/components/__tests__/DynamicImportGuard.test.ts +0 -226
  705. package/src/components/__tests__/ExtensionLintPolicy.test.ts +0 -113
  706. package/src/components/__tests__/TokenCompliance.test.ts +0 -921
  707. package/src/components/__tests__/colorInheritanceValidation.test.ts +0 -267
  708. package/src/components/__tests__/componentTypographyInheritance.test.ts +0 -326
  709. package/src/components/core/Avatar-Base/README.md +0 -366
  710. package/src/components/core/Avatar-Base/__tests__/.gitkeep +0 -3
  711. package/src/components/core/Avatar-Base/__tests__/Avatar.accessibility.test.ts +0 -597
  712. package/src/components/core/Avatar-Base/__tests__/Avatar.icon-integration.test.ts +0 -656
  713. package/src/components/core/Avatar-Base/__tests__/Avatar.image.test.ts +0 -396
  714. package/src/components/core/Avatar-Base/__tests__/Avatar.lifecycle.test.ts +0 -545
  715. package/src/components/core/Avatar-Base/__tests__/Avatar.rendering.test.ts +0 -505
  716. package/src/components/core/Avatar-Base/__tests__/Avatar.test.ts +0 -701
  717. package/src/components/core/Avatar-Base/avatar.tokens.ts +0 -376
  718. package/src/components/core/Avatar-Base/index.ts +0 -25
  719. package/src/components/core/Avatar-Base/platforms/ios/.gitkeep +0 -3
  720. package/src/components/core/Avatar-Base/platforms/web/.gitkeep +0 -3
  721. package/src/components/core/Avatar-Base/platforms/web/Avatar.styles.css +0 -595
  722. package/src/components/core/Avatar-Base/platforms/web/Avatar.web.ts +0 -892
  723. package/src/components/core/Avatar-Base/platforms/web/hexagon-clip.svg +0 -87
  724. package/src/components/core/Avatar-Base/tokens/.gitkeep +0 -4
  725. package/src/components/core/Avatar-Base/types.ts +0 -86
  726. package/src/components/core/Badge-Count-Base/README.md +0 -323
  727. package/src/components/core/Badge-Count-Base/__tests__/BadgeCountBase.stemma.test.ts +0 -548
  728. package/src/components/core/Badge-Count-Base/__tests__/BadgeCountBase.test.ts +0 -452
  729. package/src/components/core/Badge-Count-Base/__tests__/test-utils.ts +0 -244
  730. package/src/components/core/Badge-Count-Base/index.ts +0 -37
  731. package/src/components/core/Badge-Count-Base/platforms/ios/.gitkeep +0 -1
  732. package/src/components/core/Badge-Count-Base/platforms/web/BadgeCountBase.styles.css +0 -148
  733. package/src/components/core/Badge-Count-Base/platforms/web/BadgeCountBase.web.ts +0 -363
  734. package/src/components/core/Badge-Count-Base/types.ts +0 -150
  735. package/src/components/core/Badge-Count-Notification/README.md +0 -396
  736. package/src/components/core/Badge-Count-Notification/__tests__/BadgeCountNotification.stemma.test.ts +0 -571
  737. package/src/components/core/Badge-Count-Notification/__tests__/BadgeCountNotification.test.ts +0 -490
  738. package/src/components/core/Badge-Count-Notification/__tests__/test-utils.ts +0 -256
  739. package/src/components/core/Badge-Count-Notification/index.ts +0 -60
  740. package/src/components/core/Badge-Count-Notification/platforms/web/BadgeCountNotification.styles.css +0 -182
  741. package/src/components/core/Badge-Count-Notification/platforms/web/BadgeCountNotification.web.ts +0 -401
  742. package/src/components/core/Badge-Count-Notification/tokens.ts +0 -124
  743. package/src/components/core/Badge-Count-Notification/types.ts +0 -119
  744. package/src/components/core/Badge-Label-Base/README.md +0 -251
  745. package/src/components/core/Badge-Label-Base/__tests__/BadgeLabelBase.stemma.test.ts +0 -549
  746. package/src/components/core/Badge-Label-Base/__tests__/BadgeLabelBase.test.ts +0 -439
  747. package/src/components/core/Badge-Label-Base/__tests__/test-utils.ts +0 -269
  748. package/src/components/core/Badge-Label-Base/__tests__/tokens.test.ts +0 -88
  749. package/src/components/core/Badge-Label-Base/index.ts +0 -41
  750. package/src/components/core/Badge-Label-Base/platforms/web/BadgeLabelBase.styles.css +0 -166
  751. package/src/components/core/Badge-Label-Base/platforms/web/BadgeLabelBase.web.ts +0 -340
  752. package/src/components/core/Badge-Label-Base/tokens.ts +0 -80
  753. package/src/components/core/Badge-Label-Base/types.ts +0 -148
  754. package/src/components/core/Button-CTA/Button-CTA.tokens.ts +0 -79
  755. package/src/components/core/Button-CTA/README.md +0 -293
  756. package/src/components/core/Button-CTA/__tests__/ButtonCTA.alignment.test.ts +0 -355
  757. package/src/components/core/Button-CTA/__tests__/ButtonCTA.test.ts +0 -698
  758. package/src/components/core/Button-CTA/__tests__/ButtonCTA.tokens.test.ts +0 -89
  759. package/src/components/core/Button-CTA/__tests__/setup.test.ts +0 -209
  760. package/src/components/core/Button-CTA/__tests__/test-utils.ts +0 -185
  761. package/src/components/core/Button-CTA/examples/BasicUsage.html +0 -133
  762. package/src/components/core/Button-CTA/examples/BasicUsage.tsx +0 -219
  763. package/src/components/core/Button-CTA/examples/Variants.html +0 -263
  764. package/src/components/core/Button-CTA/examples/WithIcon.html +0 -166
  765. package/src/components/core/Button-CTA/index.ts +0 -20
  766. package/src/components/core/Button-CTA/platforms/web/ButtonCTA.web.css +0 -395
  767. package/src/components/core/Button-CTA/platforms/web/ButtonCTA.web.ts +0 -644
  768. package/src/components/core/Button-CTA/platforms/web/__tests__/ButtonCTA.icon-integration.test.ts +0 -476
  769. package/src/components/core/Button-CTA/types.ts +0 -239
  770. package/src/components/core/Button-Icon/README.md +0 -371
  771. package/src/components/core/Button-Icon/__tests__/ButtonIcon.alignment.test.ts +0 -358
  772. package/src/components/core/Button-Icon/__tests__/ButtonIcon.properties-8-13.test.ts +0 -953
  773. package/src/components/core/Button-Icon/__tests__/ButtonIcon.properties.test.ts +0 -920
  774. package/src/components/core/Button-Icon/__tests__/ButtonIcon.stemma.test.ts +0 -622
  775. package/src/components/core/Button-Icon/__tests__/ButtonIcon.unit.test.ts +0 -560
  776. package/src/components/core/Button-Icon/__tests__/setup.test.ts +0 -361
  777. package/src/components/core/Button-Icon/__tests__/test-utils.ts +0 -248
  778. package/src/components/core/Button-Icon/buttonIcon.tokens.ts +0 -202
  779. package/src/components/core/Button-Icon/platforms/web/.gitkeep +0 -4
  780. package/src/components/core/Button-Icon/platforms/web/ButtonIcon.web.css +0 -600
  781. package/src/components/core/Button-Icon/platforms/web/ButtonIcon.web.ts +0 -625
  782. package/src/components/core/Button-Icon/types.ts +0 -186
  783. package/src/components/core/Button-VerticalList-Item/Button-VerticalList-Item.tokens.ts +0 -112
  784. package/src/components/core/Button-VerticalList-Item/README.md +0 -450
  785. package/src/components/core/Button-VerticalList-Item/__tests__/.gitkeep +0 -2
  786. package/src/components/core/Button-VerticalList-Item/__tests__/ButtonVerticalListItem.alignment.test.ts +0 -271
  787. package/src/components/core/Button-VerticalList-Item/__tests__/ButtonVerticalListItem.failLoudly.test.ts +0 -106
  788. package/src/components/core/Button-VerticalList-Item/__tests__/ButtonVerticalListItem.integration.test.ts +0 -480
  789. package/src/components/core/Button-VerticalList-Item/__tests__/ButtonVerticalListItem.properties.test.ts +0 -634
  790. package/src/components/core/Button-VerticalList-Item/__tests__/ButtonVerticalListItem.unit.test.ts +0 -746
  791. package/src/components/core/Button-VerticalList-Item/__tests__/rtlSupport.test.ts +0 -206
  792. package/src/components/core/Button-VerticalList-Item/__tests__/test-utils.ts +0 -297
  793. package/src/components/core/Button-VerticalList-Item/__tests__/visualStateMapping.test.ts +0 -419
  794. package/src/components/core/Button-VerticalList-Item/index.ts +0 -49
  795. package/src/components/core/Button-VerticalList-Item/platforms/android/VerticalListButtonItemTest.kt +0 -1109
  796. package/src/components/core/Button-VerticalList-Item/platforms/ios/.gitkeep +0 -2
  797. package/src/components/core/Button-VerticalList-Item/platforms/ios/VerticalListButtonItemTests.swift +0 -794
  798. package/src/components/core/Button-VerticalList-Item/platforms/web/.gitkeep +0 -2
  799. package/src/components/core/Button-VerticalList-Item/platforms/web/ButtonVerticalListItem.styles.css +0 -459
  800. package/src/components/core/Button-VerticalList-Item/platforms/web/ButtonVerticalListItem.web.ts +0 -1030
  801. package/src/components/core/Button-VerticalList-Item/platforms/web/visualStateMapping.ts +0 -411
  802. package/src/components/core/Button-VerticalList-Item/types.ts +0 -338
  803. package/src/components/core/Button-VerticalList-Set/README.md +0 -578
  804. package/src/components/core/Button-VerticalList-Set/__tests__/.gitkeep +0 -5
  805. package/src/components/core/Button-VerticalList-Set/__tests__/ButtonVerticalListSet.integration.test.ts +0 -676
  806. package/src/components/core/Button-VerticalList-Set/__tests__/ButtonVerticalListSet.property.test.ts +0 -786
  807. package/src/components/core/Button-VerticalList-Set/__tests__/ButtonVerticalListSet.property2.test.ts +0 -1109
  808. package/src/components/core/Button-VerticalList-Set/__tests__/ButtonVerticalListSet.unit.test.ts +0 -924
  809. package/src/components/core/Button-VerticalList-Set/__tests__/animationTiming.test.ts +0 -182
  810. package/src/components/core/Button-VerticalList-Set/__tests__/crossPlatformConsistency.test.ts +0 -685
  811. package/src/components/core/Button-VerticalList-Set/__tests__/deriveItemStates.test.ts +0 -179
  812. package/src/components/core/Button-VerticalList-Set/__tests__/validation.test.ts +0 -275
  813. package/src/components/core/Button-VerticalList-Set/index.ts +0 -32
  814. package/src/components/core/Button-VerticalList-Set/platforms/android/ButtonVerticalListSetTest.kt +0 -961
  815. package/src/components/core/Button-VerticalList-Set/platforms/ios/.gitkeep +0 -0
  816. package/src/components/core/Button-VerticalList-Set/platforms/ios/ButtonVerticalListSetTests.swift +0 -475
  817. package/src/components/core/Button-VerticalList-Set/platforms/web/.gitkeep +0 -4
  818. package/src/components/core/Button-VerticalList-Set/platforms/web/Button-VerticalList-Set.styles.css +0 -167
  819. package/src/components/core/Button-VerticalList-Set/platforms/web/ButtonVerticalListSet.web.ts +0 -1446
  820. package/src/components/core/Button-VerticalList-Set/types.ts +0 -788
  821. package/src/components/core/Chip-Base/__tests__/ChipBase.test.ts +0 -534
  822. package/src/components/core/Chip-Base/index.ts +0 -40
  823. package/src/components/core/Chip-Base/platforms/ios/.gitkeep +0 -3
  824. package/src/components/core/Chip-Base/platforms/web/.gitkeep +0 -5
  825. package/src/components/core/Chip-Base/platforms/web/ChipBase.styles.css +0 -280
  826. package/src/components/core/Chip-Base/platforms/web/ChipBase.web.ts +0 -480
  827. package/src/components/core/Chip-Base/types.ts +0 -189
  828. package/src/components/core/Chip-Filter/__tests__/ChipFilter.test.ts +0 -592
  829. package/src/components/core/Chip-Filter/index.ts +0 -34
  830. package/src/components/core/Chip-Filter/platforms/web/ChipFilter.styles.css +0 -105
  831. package/src/components/core/Chip-Filter/platforms/web/ChipFilter.web.ts +0 -539
  832. package/src/components/core/Chip-Filter/types.ts +0 -47
  833. package/src/components/core/Chip-Input/__tests__/ChipInput.test.ts +0 -472
  834. package/src/components/core/Chip-Input/index.ts +0 -35
  835. package/src/components/core/Chip-Input/platforms/ios/.gitkeep +0 -3
  836. package/src/components/core/Chip-Input/platforms/web/ChipInput.styles.css +0 -99
  837. package/src/components/core/Chip-Input/platforms/web/ChipInput.web.ts +0 -485
  838. package/src/components/core/Chip-Input/types.ts +0 -35
  839. package/src/components/core/Container-Base/README.md +0 -450
  840. package/src/components/core/Container-Base/__tests__/ContainerBase.test.ts +0 -712
  841. package/src/components/core/Container-Base/index.ts +0 -47
  842. package/src/components/core/Container-Base/platforms/web/ContainerBase.web.ts +0 -405
  843. package/src/components/core/Container-Base/platforms/web/styles.css +0 -198
  844. package/src/components/core/Container-Base/platforms/web/token-mapping.ts +0 -573
  845. package/src/components/core/Container-Base/tokens.ts +0 -241
  846. package/src/components/core/Container-Base/types.ts +0 -307
  847. package/src/components/core/Container-Card-Base/README.md +0 -506
  848. package/src/components/core/Container-Card-Base/__tests__/ContainerCardBase.composition.test.ts +0 -167
  849. package/src/components/core/Container-Card-Base/__tests__/ContainerCardBase.test.ts +0 -646
  850. package/src/components/core/Container-Card-Base/index.ts +0 -64
  851. package/src/components/core/Container-Card-Base/platforms/web/ContainerCardBase.web.ts +0 -373
  852. package/src/components/core/Container-Card-Base/tokens.ts +0 -224
  853. package/src/components/core/Container-Card-Base/types.ts +0 -332
  854. package/src/components/core/Icon-Base/README.md +0 -168
  855. package/src/components/core/Icon-Base/__tests__/IconBase.test.ts +0 -192
  856. package/src/components/core/Icon-Base/index.ts +0 -34
  857. package/src/components/core/Icon-Base/platforms/ios/ASSET_CATALOG_SETUP.md +0 -239
  858. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Contents.json +0 -6
  859. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/Contents.json +0 -9
  860. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/alert-circle.imageset/Contents.json +0 -15
  861. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/alert-circle.imageset/alert-circle.svg +0 -1
  862. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/arrow-down.imageset/Contents.json +0 -15
  863. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/arrow-down.imageset/arrow-down.svg +0 -1
  864. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/arrow-left.imageset/Contents.json +0 -15
  865. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/arrow-left.imageset/arrow-left.svg +0 -1
  866. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/arrow-right.imageset/Contents.json +0 -15
  867. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/arrow-right.imageset/arrow-right.svg +0 -1
  868. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/arrow-up.imageset/Contents.json +0 -15
  869. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/arrow-up.imageset/arrow-up.svg +0 -1
  870. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/award.imageset/Contents.json +0 -15
  871. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/award.imageset/award.svg +0 -1
  872. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/bell.imageset/Contents.json +0 -15
  873. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/bell.imageset/bell.svg +0 -1
  874. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/briefcase.imageset/Contents.json +0 -15
  875. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/briefcase.imageset/briefcase.svg +0 -1
  876. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/calendar.imageset/Contents.json +0 -15
  877. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/calendar.imageset/calendar.svg +0 -1
  878. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/check-circle.imageset/Contents.json +0 -15
  879. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/check-circle.imageset/check-circle.svg +0 -1
  880. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/check.imageset/Contents.json +0 -15
  881. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/check.imageset/check.svg +0 -1
  882. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/chevron-down.imageset/Contents.json +0 -15
  883. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/chevron-down.imageset/chevron-down.svg +0 -1
  884. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/chevron-left.imageset/Contents.json +0 -15
  885. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/chevron-left.imageset/chevron-left.svg +0 -1
  886. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/chevron-right.imageset/Contents.json +0 -15
  887. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/chevron-right.imageset/chevron-right.svg +0 -1
  888. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/circle.imageset/Contents.json +0 -15
  889. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/circle.imageset/circle.svg +0 -1
  890. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/clock.imageset/Contents.json +0 -15
  891. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/clock.imageset/clock.svg +0 -1
  892. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/credit-card.imageset/Contents.json +0 -15
  893. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/credit-card.imageset/credit-card.svg +0 -1
  894. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/dollar-sign.imageset/Contents.json +0 -15
  895. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/dollar-sign.imageset/dollar-sign.svg +0 -1
  896. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/external-link.imageset/Contents.json +0 -15
  897. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/external-link.imageset/external-link.svg +0 -1
  898. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/eye-off.imageset/Contents.json +0 -15
  899. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/eye-off.imageset/eye-off.svg +0 -1
  900. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/eye.imageset/Contents.json +0 -15
  901. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/eye.imageset/eye.svg +0 -1
  902. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/file-text.imageset/Contents.json +0 -15
  903. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/file-text.imageset/file-text.svg +0 -1
  904. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/filter.imageset/Contents.json +0 -15
  905. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/filter.imageset/filter.svg +0 -1
  906. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/globe.imageset/Contents.json +0 -15
  907. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/globe.imageset/globe.svg +0 -1
  908. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/heart.imageset/Contents.json +0 -15
  909. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/heart.imageset/heart.svg +0 -1
  910. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/info.imageset/Contents.json +0 -15
  911. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/info.imageset/info.svg +0 -1
  912. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/mail.imageset/Contents.json +0 -15
  913. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/mail.imageset/mail.svg +0 -1
  914. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/map-pin.imageset/Contents.json +0 -15
  915. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/map-pin.imageset/map-pin.svg +0 -1
  916. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/minus.imageset/Contents.json +0 -15
  917. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/minus.imageset/minus.svg +0 -1
  918. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/more-horizontal.imageset/Contents.json +0 -15
  919. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/more-horizontal.imageset/more-horizontal.svg +0 -1
  920. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/more-vertical.imageset/Contents.json +0 -15
  921. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/more-vertical.imageset/more-vertical.svg +0 -1
  922. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/phone.imageset/Contents.json +0 -15
  923. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/phone.imageset/phone.svg +0 -1
  924. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/plus.imageset/Contents.json +0 -15
  925. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/plus.imageset/plus.svg +0 -1
  926. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/refresh-cw.imageset/Contents.json +0 -15
  927. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/refresh-cw.imageset/refresh-cw.svg +0 -1
  928. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/save.imageset/Contents.json +0 -15
  929. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/save.imageset/save.svg +0 -1
  930. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/search.imageset/Contents.json +0 -15
  931. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/search.imageset/search.svg +0 -1
  932. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/settings.imageset/Contents.json +0 -15
  933. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/settings.imageset/settings.svg +0 -1
  934. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/share-2.imageset/Contents.json +0 -15
  935. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/share-2.imageset/share-2.svg +0 -1
  936. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/share.imageset/Contents.json +0 -15
  937. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/share.imageset/share.svg +0 -1
  938. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/shield.imageset/Contents.json +0 -15
  939. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/shield.imageset/shield.svg +0 -1
  940. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/smartphone.imageset/Contents.json +0 -15
  941. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/smartphone.imageset/smartphone.svg +0 -1
  942. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/smile.imageset/Contents.json +0 -15
  943. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/smile.imageset/smile.svg +0 -1
  944. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/star.imageset/Contents.json +0 -15
  945. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/star.imageset/star.svg +0 -1
  946. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/trending-up.imageset/Contents.json +0 -15
  947. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/trending-up.imageset/trending-up.svg +0 -1
  948. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/user-check.imageset/Contents.json +0 -15
  949. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/user-check.imageset/user-check.svg +0 -1
  950. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/user-x.imageset/Contents.json +0 -15
  951. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/user-x.imageset/user-x.svg +0 -1
  952. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/user.imageset/Contents.json +0 -15
  953. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/user.imageset/user.svg +0 -1
  954. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/users.imageset/Contents.json +0 -15
  955. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/users.imageset/users.svg +0 -1
  956. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/wifi.imageset/Contents.json +0 -15
  957. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/wifi.imageset/wifi.svg +0 -1
  958. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/x.imageset/Contents.json +0 -15
  959. package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/x.imageset/x.svg +0 -1
  960. package/src/components/core/Icon-Base/platforms/web/IconBase.web.ts +0 -553
  961. package/src/components/core/Icon-Base/platforms/web/assets/alert-circle.svg +0 -1
  962. package/src/components/core/Icon-Base/platforms/web/assets/arrow-down.svg +0 -1
  963. package/src/components/core/Icon-Base/platforms/web/assets/arrow-left.svg +0 -1
  964. package/src/components/core/Icon-Base/platforms/web/assets/arrow-right.svg +0 -1
  965. package/src/components/core/Icon-Base/platforms/web/assets/arrow-up.svg +0 -1
  966. package/src/components/core/Icon-Base/platforms/web/assets/award.svg +0 -1
  967. package/src/components/core/Icon-Base/platforms/web/assets/bell.svg +0 -1
  968. package/src/components/core/Icon-Base/platforms/web/assets/briefcase.svg +0 -1
  969. package/src/components/core/Icon-Base/platforms/web/assets/calendar.svg +0 -1
  970. package/src/components/core/Icon-Base/platforms/web/assets/check-circle.svg +0 -1
  971. package/src/components/core/Icon-Base/platforms/web/assets/check.svg +0 -1
  972. package/src/components/core/Icon-Base/platforms/web/assets/chevron-down.svg +0 -1
  973. package/src/components/core/Icon-Base/platforms/web/assets/chevron-left.svg +0 -1
  974. package/src/components/core/Icon-Base/platforms/web/assets/chevron-right.svg +0 -1
  975. package/src/components/core/Icon-Base/platforms/web/assets/circle.svg +0 -1
  976. package/src/components/core/Icon-Base/platforms/web/assets/clock.svg +0 -1
  977. package/src/components/core/Icon-Base/platforms/web/assets/credit-card.svg +0 -1
  978. package/src/components/core/Icon-Base/platforms/web/assets/dollar-sign.svg +0 -1
  979. package/src/components/core/Icon-Base/platforms/web/assets/external-link.svg +0 -1
  980. package/src/components/core/Icon-Base/platforms/web/assets/eye-off.svg +0 -1
  981. package/src/components/core/Icon-Base/platforms/web/assets/eye.svg +0 -1
  982. package/src/components/core/Icon-Base/platforms/web/assets/file-text.svg +0 -1
  983. package/src/components/core/Icon-Base/platforms/web/assets/filter.svg +0 -1
  984. package/src/components/core/Icon-Base/platforms/web/assets/globe.svg +0 -1
  985. package/src/components/core/Icon-Base/platforms/web/assets/heart.svg +0 -1
  986. package/src/components/core/Icon-Base/platforms/web/assets/info.svg +0 -1
  987. package/src/components/core/Icon-Base/platforms/web/assets/mail.svg +0 -1
  988. package/src/components/core/Icon-Base/platforms/web/assets/map-pin.svg +0 -1
  989. package/src/components/core/Icon-Base/platforms/web/assets/minus.svg +0 -1
  990. package/src/components/core/Icon-Base/platforms/web/assets/more-horizontal.svg +0 -1
  991. package/src/components/core/Icon-Base/platforms/web/assets/more-vertical.svg +0 -1
  992. package/src/components/core/Icon-Base/platforms/web/assets/phone.svg +0 -1
  993. package/src/components/core/Icon-Base/platforms/web/assets/plus.svg +0 -1
  994. package/src/components/core/Icon-Base/platforms/web/assets/refresh-cw.svg +0 -1
  995. package/src/components/core/Icon-Base/platforms/web/assets/save.svg +0 -1
  996. package/src/components/core/Icon-Base/platforms/web/assets/search.svg +0 -1
  997. package/src/components/core/Icon-Base/platforms/web/assets/settings.svg +0 -1
  998. package/src/components/core/Icon-Base/platforms/web/assets/share-2.svg +0 -1
  999. package/src/components/core/Icon-Base/platforms/web/assets/share.svg +0 -1
  1000. package/src/components/core/Icon-Base/platforms/web/assets/shield.svg +0 -1
  1001. package/src/components/core/Icon-Base/platforms/web/assets/smartphone.svg +0 -1
  1002. package/src/components/core/Icon-Base/platforms/web/assets/smile.svg +0 -1
  1003. package/src/components/core/Icon-Base/platforms/web/assets/star.svg +0 -1
  1004. package/src/components/core/Icon-Base/platforms/web/assets/trending-up.svg +0 -1
  1005. package/src/components/core/Icon-Base/platforms/web/assets/user-check.svg +0 -1
  1006. package/src/components/core/Icon-Base/platforms/web/assets/user-x.svg +0 -1
  1007. package/src/components/core/Icon-Base/platforms/web/assets/user.svg +0 -1
  1008. package/src/components/core/Icon-Base/platforms/web/assets/users.svg +0 -1
  1009. package/src/components/core/Icon-Base/platforms/web/assets/wifi.svg +0 -1
  1010. package/src/components/core/Icon-Base/platforms/web/assets/x.svg +0 -1
  1011. package/src/components/core/Icon-Base/platforms/web/styles.css +0 -203
  1012. package/src/components/core/Icon-Base/types.ts +0 -338
  1013. package/src/components/core/Input-Checkbox-Base/README.md +0 -390
  1014. package/src/components/core/Input-Checkbox-Base/__tests__/InputCheckboxBase.stemma.test.ts +0 -552
  1015. package/src/components/core/Input-Checkbox-Base/__tests__/InputCheckboxBase.test.ts +0 -878
  1016. package/src/components/core/Input-Checkbox-Base/checkbox-sizing.tokens.ts +0 -37
  1017. package/src/components/core/Input-Checkbox-Base/platforms/web/InputCheckboxBase.web.css +0 -477
  1018. package/src/components/core/Input-Checkbox-Base/platforms/web/InputCheckboxBase.web.ts +0 -561
  1019. package/src/components/core/Input-Checkbox-Base/types.ts +0 -399
  1020. package/src/components/core/Input-Checkbox-Legal/README.md +0 -554
  1021. package/src/components/core/Input-Checkbox-Legal/__tests__/InputCheckboxLegal.test.ts +0 -727
  1022. package/src/components/core/Input-Checkbox-Legal/platforms/ios/.gitkeep +0 -2
  1023. package/src/components/core/Input-Checkbox-Legal/platforms/web/InputCheckboxLegal.web.css +0 -112
  1024. package/src/components/core/Input-Checkbox-Legal/platforms/web/InputCheckboxLegal.web.ts +0 -505
  1025. package/src/components/core/Input-Checkbox-Legal/types.ts +0 -348
  1026. package/src/components/core/Input-Radio-Base/.gitkeep +0 -2
  1027. package/src/components/core/Input-Radio-Base/README.md +0 -427
  1028. package/src/components/core/Input-Radio-Base/__tests__/.gitkeep +0 -1
  1029. package/src/components/core/Input-Radio-Base/__tests__/InputRadioBase.form.test.ts +0 -299
  1030. package/src/components/core/Input-Radio-Base/__tests__/InputRadioBase.stemma.test.ts +0 -543
  1031. package/src/components/core/Input-Radio-Base/__tests__/InputRadioBase.test.ts +0 -429
  1032. package/src/components/core/Input-Radio-Base/platforms/ios/.gitkeep +0 -1
  1033. package/src/components/core/Input-Radio-Base/platforms/web/.gitkeep +0 -1
  1034. package/src/components/core/Input-Radio-Base/platforms/web/InputRadioBase.web.css +0 -504
  1035. package/src/components/core/Input-Radio-Base/platforms/web/InputRadioBase.web.ts +0 -648
  1036. package/src/components/core/Input-Radio-Base/radio-sizing.tokens.ts +0 -37
  1037. package/src/components/core/Input-Radio-Base/types.ts +0 -362
  1038. package/src/components/core/Input-Radio-Set/README.md +0 -373
  1039. package/src/components/core/Input-Radio-Set/__tests__/.gitkeep +0 -0
  1040. package/src/components/core/Input-Radio-Set/__tests__/InputRadioSet.stemma.test.ts +0 -493
  1041. package/src/components/core/Input-Radio-Set/__tests__/InputRadioSet.test.ts +0 -499
  1042. package/src/components/core/Input-Radio-Set/platforms/web/InputRadioSet.web.css +0 -99
  1043. package/src/components/core/Input-Radio-Set/platforms/web/InputRadioSet.web.ts +0 -790
  1044. package/src/components/core/Input-Radio-Set/types.ts +0 -301
  1045. package/src/components/core/Input-Text-Base/README.md +0 -258
  1046. package/src/components/core/Input-Text-Base/__tests__/focusIndicators.test.ts +0 -311
  1047. package/src/components/core/Input-Text-Base/__tests__/keyboardNavigation.test.ts +0 -444
  1048. package/src/components/core/Input-Text-Base/__tests__/labelAssociation.test.ts +0 -418
  1049. package/src/components/core/Input-Text-Base/__tests__/screenReaderSupport.test.ts +0 -405
  1050. package/src/components/core/Input-Text-Base/__tests__/setup.ts +0 -17
  1051. package/src/components/core/Input-Text-Base/__tests__/stateManagement.test.ts +0 -718
  1052. package/src/components/core/Input-Text-Base/__tests__/test-utils.ts +0 -81
  1053. package/src/components/core/Input-Text-Base/__tests__/touchTargetSizing.test.ts +0 -319
  1054. package/src/components/core/Input-Text-Base/platforms/web/InputTextBase.browser.ts +0 -241
  1055. package/src/components/core/Input-Text-Base/platforms/web/InputTextBase.web.css +0 -293
  1056. package/src/components/core/Input-Text-Base/platforms/web/InputTextBase.web.ts +0 -448
  1057. package/src/components/core/Input-Text-Base/stateManagement.ts +0 -267
  1058. package/src/components/core/Input-Text-Base/tokens.ts +0 -210
  1059. package/src/components/core/Input-Text-Base/types.ts +0 -114
  1060. package/src/components/core/Input-Text-Email/README.md +0 -252
  1061. package/src/components/core/Input-Text-Email/__tests__/validation.test.ts +0 -127
  1062. package/src/components/core/Input-Text-Email/platforms/web/InputTextEmail.browser.ts +0 -276
  1063. package/src/components/core/Input-Text-Email/platforms/web/InputTextEmail.web.ts +0 -319
  1064. package/src/components/core/Input-Text-Email/stateManagement.ts +0 -160
  1065. package/src/components/core/Input-Text-Email/tokens.ts +0 -33
  1066. package/src/components/core/Input-Text-Email/types.ts +0 -72
  1067. package/src/components/core/Input-Text-Email/validation.ts +0 -130
  1068. package/src/components/core/Input-Text-Password/README.md +0 -360
  1069. package/src/components/core/Input-Text-Password/__tests__/validation.test.ts +0 -362
  1070. package/src/components/core/Input-Text-Password/platforms/web/InputTextPassword.browser.ts +0 -434
  1071. package/src/components/core/Input-Text-Password/platforms/web/InputTextPassword.web.ts +0 -512
  1072. package/src/components/core/Input-Text-Password/stateManagement.ts +0 -244
  1073. package/src/components/core/Input-Text-Password/tokens.ts +0 -32
  1074. package/src/components/core/Input-Text-Password/types.ts +0 -177
  1075. package/src/components/core/Input-Text-Password/validation.ts +0 -207
  1076. package/src/components/core/Input-Text-PhoneNumber/README.md +0 -276
  1077. package/src/components/core/Input-Text-PhoneNumber/__tests__/validation.test.ts +0 -301
  1078. package/src/components/core/Input-Text-PhoneNumber/platforms/web/InputTextPhoneNumber.browser.ts +0 -370
  1079. package/src/components/core/Input-Text-PhoneNumber/platforms/web/InputTextPhoneNumber.web.ts +0 -393
  1080. package/src/components/core/Input-Text-PhoneNumber/stateManagement.ts +0 -250
  1081. package/src/components/core/Input-Text-PhoneNumber/tokens.ts +0 -33
  1082. package/src/components/core/Input-Text-PhoneNumber/types.ts +0 -135
  1083. package/src/components/core/Input-Text-PhoneNumber/validation.ts +0 -302
  1084. package/src/components/core/Nav-Header-App/README.md +0 -29
  1085. package/src/components/core/Nav-Header-App/index.ts +0 -5
  1086. package/src/components/core/Nav-Header-App/platforms/web/NavHeaderApp.web.ts +0 -37
  1087. package/src/components/core/Nav-Header-App/types.ts +0 -32
  1088. package/src/components/core/Nav-Header-Base/README.md +0 -21
  1089. package/src/components/core/Nav-Header-Base/index.ts +0 -12
  1090. package/src/components/core/Nav-Header-Base/platforms/web/NavHeaderBase.styles.css +0 -75
  1091. package/src/components/core/Nav-Header-Base/platforms/web/NavHeaderBase.web.ts +0 -120
  1092. package/src/components/core/Nav-Header-Base/types.ts +0 -63
  1093. package/src/components/core/Nav-Header-Page/README.md +0 -34
  1094. package/src/components/core/Nav-Header-Page/__tests__/NavHeaderPage.test.ts +0 -250
  1095. package/src/components/core/Nav-Header-Page/index.ts +0 -12
  1096. package/src/components/core/Nav-Header-Page/platforms/web/NavHeaderPage.styles.css +0 -90
  1097. package/src/components/core/Nav-Header-Page/platforms/web/NavHeaderPage.web.ts +0 -169
  1098. package/src/components/core/Nav-Header-Page/types.ts +0 -55
  1099. package/src/components/core/Nav-SegmentedChoice-Base/README.md +0 -327
  1100. package/src/components/core/Nav-SegmentedChoice-Base/__tests__/NavSegmentedChoiceBase.android.test.ts +0 -218
  1101. package/src/components/core/Nav-SegmentedChoice-Base/__tests__/NavSegmentedChoiceBase.interaction.test.ts +0 -419
  1102. package/src/components/core/Nav-SegmentedChoice-Base/__tests__/NavSegmentedChoiceBase.ios.test.ts +0 -207
  1103. package/src/components/core/Nav-SegmentedChoice-Base/__tests__/NavSegmentedChoiceBase.visual.test.ts +0 -371
  1104. package/src/components/core/Nav-SegmentedChoice-Base/index.ts +0 -38
  1105. package/src/components/core/Nav-SegmentedChoice-Base/platforms/web/NavSegmentedChoiceBase.styles.css +0 -160
  1106. package/src/components/core/Nav-SegmentedChoice-Base/platforms/web/NavSegmentedChoiceBase.web.ts +0 -477
  1107. package/src/components/core/Nav-SegmentedChoice-Base/types.ts +0 -65
  1108. package/src/components/core/Nav-TabBar-Base/README.md +0 -264
  1109. package/src/components/core/Nav-TabBar-Base/__tests__/NavTabBarBase.android.test.ts +0 -270
  1110. package/src/components/core/Nav-TabBar-Base/__tests__/NavTabBarBase.ios.test.ts +0 -221
  1111. package/src/components/core/Nav-TabBar-Base/__tests__/NavTabBarBase.test.ts +0 -421
  1112. package/src/components/core/Nav-TabBar-Base/examples/BasicUsage.html +0 -2
  1113. package/src/components/core/Nav-TabBar-Base/examples/BasicUsage.tsx +0 -2
  1114. package/src/components/core/Nav-TabBar-Base/index.ts +0 -20
  1115. package/src/components/core/Nav-TabBar-Base/platforms/web/NavTabBarBase.styles.css +0 -281
  1116. package/src/components/core/Nav-TabBar-Base/platforms/web/NavTabBarBase.web.ts +0 -420
  1117. package/src/components/core/Nav-TabBar-Base/types.ts +0 -43
  1118. package/src/components/core/Progress-Bar-Base/README.md +0 -31
  1119. package/src/components/core/Progress-Bar-Base/__tests__/ProgressBarBase.test.ts +0 -202
  1120. package/src/components/core/Progress-Bar-Base/index.ts +0 -6
  1121. package/src/components/core/Progress-Bar-Base/platforms/web/ProgressBarBase.styles.css +0 -52
  1122. package/src/components/core/Progress-Bar-Base/platforms/web/ProgressBarBase.web.ts +0 -135
  1123. package/src/components/core/Progress-Bar-Base/types.ts +0 -46
  1124. package/src/components/core/Progress-Indicator-Connector-Base/README.md +0 -169
  1125. package/src/components/core/Progress-Indicator-Connector-Base/index.ts +0 -33
  1126. package/src/components/core/Progress-Indicator-Connector-Base/platforms/web/ProgressIndicatorConnectorBase.styles.css +0 -50
  1127. package/src/components/core/Progress-Indicator-Connector-Base/platforms/web/ProgressIndicatorConnectorBase.web.ts +0 -141
  1128. package/src/components/core/Progress-Indicator-Connector-Base/types.ts +0 -67
  1129. package/src/components/core/Progress-Indicator-Label-Base/README.md +0 -191
  1130. package/src/components/core/Progress-Indicator-Label-Base/index.ts +0 -28
  1131. package/src/components/core/Progress-Indicator-Label-Base/platforms/web/ProgressIndicatorLabelBase.styles.css +0 -81
  1132. package/src/components/core/Progress-Indicator-Label-Base/platforms/web/ProgressIndicatorLabelBase.web.ts +0 -174
  1133. package/src/components/core/Progress-Indicator-Label-Base/types.ts +0 -64
  1134. package/src/components/core/Progress-Indicator-Node-Base/README.md +0 -206
  1135. package/src/components/core/Progress-Indicator-Node-Base/__tests__/VisualStates.test.ts +0 -259
  1136. package/src/components/core/Progress-Indicator-Node-Base/index.ts +0 -36
  1137. package/src/components/core/Progress-Indicator-Node-Base/platforms/web/ProgressIndicatorNodeBase.styles.css +0 -193
  1138. package/src/components/core/Progress-Indicator-Node-Base/platforms/web/ProgressIndicatorNodeBase.web.ts +0 -226
  1139. package/src/components/core/Progress-Indicator-Node-Base/types.ts +0 -142
  1140. package/src/components/core/Progress-Pagination-Base/README.md +0 -290
  1141. package/src/components/core/Progress-Pagination-Base/__tests__/PaginationBase.test.ts +0 -290
  1142. package/src/components/core/Progress-Pagination-Base/index.ts +0 -40
  1143. package/src/components/core/Progress-Pagination-Base/platforms/web/ProgressPaginationBase.styles.css +0 -80
  1144. package/src/components/core/Progress-Pagination-Base/platforms/web/ProgressPaginationBase.web.ts +0 -293
  1145. package/src/components/core/Progress-Pagination-Base/types.ts +0 -112
  1146. package/src/components/core/Progress-Stepper-Base/README.md +0 -311
  1147. package/src/components/core/Progress-Stepper-Base/__tests__/StepperBase.test.ts +0 -345
  1148. package/src/components/core/Progress-Stepper-Base/index.ts +0 -43
  1149. package/src/components/core/Progress-Stepper-Base/platforms/web/ProgressStepperBase.styles.css +0 -49
  1150. package/src/components/core/Progress-Stepper-Base/platforms/web/ProgressStepperBase.web.ts +0 -288
  1151. package/src/components/core/Progress-Stepper-Base/types.ts +0 -175
  1152. package/src/components/core/Progress-Stepper-Detailed/README.md +0 -401
  1153. package/src/components/core/Progress-Stepper-Detailed/__tests__/StepperDetailed.test.ts +0 -481
  1154. package/src/components/core/Progress-Stepper-Detailed/index.ts +0 -48
  1155. package/src/components/core/Progress-Stepper-Detailed/platforms/web/ProgressStepperDetailed.styles.css +0 -106
  1156. package/src/components/core/Progress-Stepper-Detailed/platforms/web/ProgressStepperDetailed.web.ts +0 -336
  1157. package/src/components/core/Progress-Stepper-Detailed/types.ts +0 -195
  1158. package/src/composition/BlendComposition.ts +0 -46
  1159. package/src/composition/BlendCompositionParser.ts +0 -215
  1160. package/src/composition/OpacityComposition.ts +0 -62
  1161. package/src/composition/OpacityCompositionParser.ts +0 -308
  1162. package/src/composition/__tests__/BlendCompositionParser.test.ts +0 -431
  1163. package/src/composition/__tests__/OpacityCompositionParser.test.ts +0 -539
  1164. package/src/composition/index.ts +0 -20
  1165. package/src/config/ConfigLoader.ts +0 -143
  1166. package/src/config/__resolution-matrix__/README.md +0 -76
  1167. package/src/config/__resolution-matrix__/fixtures/faithful-cjs/compiled/defineConfig.js +0 -9
  1168. package/src/config/__resolution-matrix__/fixtures/faithful-cjs/designerpunk.config.ts +0 -20
  1169. package/src/config/__resolution-matrix__/fixtures/faithful-cjs/my-overrides.ts +0 -8
  1170. package/src/config/__resolution-matrix__/fixtures/faithful-esm/compiled/defineConfig.js +0 -11
  1171. package/src/config/__resolution-matrix__/fixtures/faithful-esm/designerpunk.config.ts +0 -23
  1172. package/src/config/__resolution-matrix__/fixtures/faithful-esm/my-overrides.ts +0 -6
  1173. package/src/config/__resolution-matrix__/fixtures/source-dir-cjs/designerpunk.config.ts +0 -11
  1174. package/src/config/__resolution-matrix__/fixtures/source-dir-cjs/src/config/index.ts +0 -15
  1175. package/src/config/__resolution-matrix__/fixtures/source-dir-esm/designerpunk.config.ts +0 -15
  1176. package/src/config/__resolution-matrix__/fixtures/source-dir-esm/src/config/index.ts +0 -13
  1177. package/src/config/__resolution-matrix__/run-matrix.js +0 -107
  1178. package/src/config/__resolution-matrix__/runner.js +0 -153
  1179. package/src/config/__resolution-matrix__/verify-real-loadconfig.js +0 -122
  1180. package/src/config/__tests__/ConfigLoader.test.ts +0 -115
  1181. package/src/config/defineConfig.ts +0 -71
  1182. package/src/config/index.ts +0 -7
  1183. package/src/config/scopedTsRequire.ts +0 -62
  1184. package/src/constants/BaselineGrid.ts +0 -41
  1185. package/src/constants/SpacingTokens.ts +0 -55
  1186. package/src/figma/ComponentAnalysis.ts +0 -292
  1187. package/src/figma/ComponentAnalysisGenerator.ts +0 -444
  1188. package/src/figma/ConsoleMCPClient.ts +0 -168
  1189. package/src/figma/ConsoleMCPClientImpl.ts +0 -1034
  1190. package/src/figma/DesignExtractor.ts +0 -3620
  1191. package/src/figma/TokenSyncWorkflow.ts +0 -915
  1192. package/src/figma/TokenTranslator.ts +0 -891
  1193. package/src/figma/VariantAnalyzer.ts +0 -712
  1194. package/src/figma/__tests__/ComponentAnalysisGenerator.json.test.ts +0 -429
  1195. package/src/figma/__tests__/ComponentAnalysisGenerator.markdown.test.ts +0 -428
  1196. package/src/figma/__tests__/ConsoleMCPClient.bugfix.test.ts +0 -261
  1197. package/src/figma/__tests__/ConsoleMCPClient.preservation.test.ts +0 -395
  1198. package/src/figma/__tests__/ConsoleMCPClient.test.ts +0 -375
  1199. package/src/figma/__tests__/DesignExtractor.boundVariableResolution.test.ts +0 -580
  1200. package/src/figma/__tests__/DesignExtractor.buildNodeTree.test.ts +0 -535
  1201. package/src/figma/__tests__/DesignExtractor.captureComponentScreenshot.test.ts +0 -176
  1202. package/src/figma/__tests__/DesignExtractor.detectBehavioralContracts.test.ts +0 -263
  1203. package/src/figma/__tests__/DesignExtractor.detectComponentTokenDecisions.test.ts +0 -379
  1204. package/src/figma/__tests__/DesignExtractor.detectCompositionPatterns.test.ts +0 -507
  1205. package/src/figma/__tests__/DesignExtractor.detectPlatformParity.test.ts +0 -406
  1206. package/src/figma/__tests__/DesignExtractor.queryContext.test.ts +0 -214
  1207. package/src/figma/__tests__/DesignExtractor.readFigmaComponent.test.ts +0 -431
  1208. package/src/figma/__tests__/DesignExtractor.readStyles.test.ts +0 -204
  1209. package/src/figma/__tests__/DesignExtractor.readTokenBindings.test.ts +0 -268
  1210. package/src/figma/__tests__/DesignExtractor.reconstructCompositeTokens.test.ts +0 -403
  1211. package/src/figma/__tests__/DesignExtractor.resolveUnknownVariableIds.test.ts +0 -259
  1212. package/src/figma/__tests__/DesignExtractor.translateTokens.test.ts +0 -433
  1213. package/src/figma/__tests__/DesignExtractor.validateModes.test.ts +0 -350
  1214. package/src/figma/__tests__/TokenSyncWorkflow.batch.test.ts +0 -277
  1215. package/src/figma/__tests__/TokenSyncWorkflow.drift.test.ts +0 -187
  1216. package/src/figma/__tests__/TokenSyncWorkflow.preservation.test.ts +0 -544
  1217. package/src/figma/__tests__/TokenSyncWorkflow.styles.test.ts +0 -245
  1218. package/src/figma/__tests__/TokenSyncWorkflow.sync.test.ts +0 -217
  1219. package/src/figma/__tests__/TokenTranslator.test.ts +0 -757
  1220. package/src/figma/__tests__/VariantAnalyzer.detectConflicts.test.ts +0 -126
  1221. package/src/figma/__tests__/VariantAnalyzer.test.ts +0 -633
  1222. package/src/figma/__tests__/error-reporting.test.ts +0 -254
  1223. package/src/figma/__tests__/preflight.test.ts +0 -94
  1224. package/src/figma/error-reporting.ts +0 -260
  1225. package/src/figma/index.ts +0 -98
  1226. package/src/figma/portCleanup.ts +0 -86
  1227. package/src/figma/preflight.ts +0 -120
  1228. package/src/generators/BlendUtilityGenerator.ts +0 -847
  1229. package/src/generators/BlendValueGenerator.ts +0 -198
  1230. package/src/generators/DTCGFormatGenerator.ts +0 -1355
  1231. package/src/generators/DTCGGeneratorConfig.ts +0 -46
  1232. package/src/generators/ModeResolvedTokens.ts +0 -58
  1233. package/src/generators/ResponsiveGridGenerator.ts +0 -273
  1234. package/src/generators/TokenFileGenerator.ts +0 -2070
  1235. package/src/generators/__tests__/AccessibilityTokenGeneration.test.ts +0 -350
  1236. package/src/generators/__tests__/BlendUtilityGenerator.test.ts +0 -829
  1237. package/src/generators/__tests__/BlendValueGenerator.test.ts +0 -200
  1238. package/src/generators/__tests__/BreakpointTokenGeneration.test.ts +0 -172
  1239. package/src/generators/__tests__/CSSThemeScoping.test.ts +0 -153
  1240. package/src/generators/__tests__/DTCGConfigOptions.test.ts +0 -271
  1241. package/src/generators/__tests__/DTCGErrorHandling.test.ts +0 -139
  1242. package/src/generators/__tests__/DTCGFormatGenerator.integration.test.ts +0 -346
  1243. package/src/generators/__tests__/DTCGFormatGenerator.property.test.ts +0 -497
  1244. package/src/generators/__tests__/DTCGFormatGenerator.test.ts +0 -469
  1245. package/src/generators/__tests__/FigmaTransformer.styles.test.ts +0 -398
  1246. package/src/generators/__tests__/FigmaTransformer.variables.test.ts +0 -540
  1247. package/src/generators/__tests__/GridSpacingTokenGeneration.test.ts +0 -254
  1248. package/src/generators/__tests__/IconTokenGeneration.test.ts +0 -452
  1249. package/src/generators/__tests__/KotlinThemeTypes.test.ts +0 -110
  1250. package/src/generators/__tests__/ModeAwareGeneration.test.ts +0 -160
  1251. package/src/generators/__tests__/NativeOklchOutput.test.ts +0 -56
  1252. package/src/generators/__tests__/OklchExport.test.ts +0 -71
  1253. package/src/generators/__tests__/ProductRepoSimulation.test.ts +0 -91
  1254. package/src/generators/__tests__/ResponsiveGridGeneration.test.ts +0 -291
  1255. package/src/generators/__tests__/Spec076TokenMigration.test.ts +0 -106
  1256. package/src/generators/__tests__/Spec077ModesVerification.test.ts +0 -52
  1257. package/src/generators/__tests__/SwiftThemeTypes.test.ts +0 -122
  1258. package/src/generators/__tests__/TokenFileGenerator.test.ts +0 -914
  1259. package/src/generators/__tests__/TransformerRegistry.test.ts +0 -118
  1260. package/src/generators/__tests__/WcagValueExportSupport.test.ts +0 -84
  1261. package/src/generators/__tests__/WcagValueInfrastructure.test.ts +0 -122
  1262. package/src/generators/__tests__/WebOklchOutput.test.ts +0 -72
  1263. package/src/generators/__tests__/generateTokenIndex.test.ts +0 -204
  1264. package/src/generators/__tests__/helpers/defaultSemanticOptions.ts +0 -24
  1265. package/src/generators/generateTokenFiles.ts +0 -337
  1266. package/src/generators/generateTokenIndex.ts +0 -258
  1267. package/src/generators/oklch/OklchExportUtils.ts +0 -57
  1268. package/src/generators/oklch/OklchTokenIndexMetadata.ts +0 -30
  1269. package/src/generators/transformers/FigmaTransformer.ts +0 -912
  1270. package/src/generators/transformers/ITokenTransformer.ts +0 -56
  1271. package/src/generators/transformers/TransformerRegistry.ts +0 -63
  1272. package/src/generators/transformers/index.ts +0 -52
  1273. package/src/generators/types/DTCGTypes.ts +0 -101
  1274. package/src/integration/BuildErrorHandler.ts +0 -440
  1275. package/src/integration/BuildSystemInterface.ts +0 -338
  1276. package/src/integration/PlatformFileSelector.ts +0 -288
  1277. package/src/integration/RegistryCoordinator.ts +0 -404
  1278. package/src/integration/TranslationCoordinator.ts +0 -458
  1279. package/src/integration/TreeShakingOptimizer.ts +0 -350
  1280. package/src/integration/ValidationCoordinator.ts +0 -780
  1281. package/src/integration/__tests__/ComponentTokenValidation.test.ts +0 -762
  1282. package/src/integration/__tests__/ValidationCoordinator.test.ts +0 -609
  1283. package/src/integration/__tests__/performance/ComponentTokenValidationPerformance.test.ts +0 -161
  1284. package/src/integration/index.ts +0 -55
  1285. package/src/naming/NamingConventionManager.ts +0 -318
  1286. package/src/naming/PlatformNamingRules.ts +0 -278
  1287. package/src/naming/__tests__/NamingConventions.test.ts +0 -224
  1288. package/src/naming/index.ts +0 -23
  1289. package/src/parent-completion.md +0 -1
  1290. package/src/performance/CachingStrategy.ts +0 -426
  1291. package/src/performance/FileGenerationOptimizer.ts +0 -294
  1292. package/src/performance/PerformanceMonitor.ts +0 -185
  1293. package/src/performance/PerformanceOptimizer.ts +0 -348
  1294. package/src/performance/index.ts +0 -30
  1295. package/src/providers/AndroidFileOrganizer.ts +0 -241
  1296. package/src/providers/AndroidFormatGenerator.ts +0 -750
  1297. package/src/providers/AndroidUnitConverter.ts +0 -177
  1298. package/src/providers/FormatProvider.ts +0 -187
  1299. package/src/providers/PathProvider.ts +0 -197
  1300. package/src/providers/UnitProvider.ts +0 -106
  1301. package/src/providers/WebFileOrganizer.ts +0 -121
  1302. package/src/providers/WebFormatGenerator.ts +0 -611
  1303. package/src/providers/WebUnitConverter.ts +0 -116
  1304. package/src/providers/__tests__/AndroidAccessibilityTokens.test.ts +0 -86
  1305. package/src/providers/__tests__/AndroidFormatGenerator-semantic.test.ts +0 -494
  1306. package/src/providers/__tests__/FormatProviders.test.ts +0 -828
  1307. package/src/providers/__tests__/InsetTokenGeneration.test.ts +0 -627
  1308. package/src/providers/__tests__/PathProviders.test.ts +0 -512
  1309. package/src/providers/__tests__/PlatformOutputFormat.test.ts +0 -252
  1310. package/src/providers/__tests__/UnitProviders.test.ts +0 -721
  1311. package/src/providers/__tests__/WebFormatGenerator-semantic.test.ts +0 -293
  1312. package/src/providers/__tests__/iOSFormatGenerator-semantic.test.ts +0 -410
  1313. package/src/providers/iOSFileOrganizer.ts +0 -162
  1314. package/src/providers/iOSFormatGenerator.ts +0 -599
  1315. package/src/providers/iOSUnitConverter.ts +0 -125
  1316. package/src/providers/index.ts +0 -26
  1317. package/src/registries/ComponentTokenRegistry.ts +0 -292
  1318. package/src/registries/IRegistry.ts +0 -170
  1319. package/src/registries/__tests__/ComponentTokenRegistry.test.ts +0 -446
  1320. package/src/registries/__tests__/IRegistry.test.ts +0 -250
  1321. package/src/registries/__tests__/PrimitiveTokenRegistry.test.ts +0 -342
  1322. package/src/registries/__tests__/SemanticTokenRegistry.test.ts +0 -444
  1323. package/src/resolvers/AndroidColorResolver.ts +0 -333
  1324. package/src/resolvers/ModeThemeResolver.ts +0 -152
  1325. package/src/resolvers/SemanticOverrideResolver.ts +0 -155
  1326. package/src/resolvers/SemanticValueResolver.ts +0 -133
  1327. package/src/resolvers/WebColorResolver.ts +0 -240
  1328. package/src/resolvers/__tests__/AndroidColorResolver.test.ts +0 -507
  1329. package/src/resolvers/__tests__/ModeThemeResolver.test.ts +0 -411
  1330. package/src/resolvers/__tests__/SemanticOverrideResolver.test.ts +0 -186
  1331. package/src/resolvers/__tests__/WebColorResolver.test.ts +0 -405
  1332. package/src/resolvers/__tests__/iOSColorResolver.test.ts +0 -432
  1333. package/src/resolvers/iOSColorResolver.ts +0 -224
  1334. package/src/resolvers/index.ts +0 -11
  1335. package/src/security/AIAgentRestrictions.ts +0 -298
  1336. package/src/security/ContaminationAuditor.ts +0 -393
  1337. package/src/security/ContaminationPrevention.ts +0 -275
  1338. package/src/security/DocumentationGuard.ts +0 -258
  1339. package/src/security/FlexibilityTokenGuard.ts +0 -256
  1340. package/src/security/HumanApprovalWorkflow.ts +0 -319
  1341. package/src/security/__tests__/AIAgentRestrictions.test.ts +0 -482
  1342. package/src/security/__tests__/ContaminationPrevention.test.ts +0 -424
  1343. package/src/security/__tests__/SecurityIntegration.test.ts +0 -505
  1344. package/src/security/index.ts +0 -48
  1345. package/src/testing/__tests__/utilities.test.ts +0 -175
  1346. package/src/testing/index.ts +0 -154
  1347. package/src/testing/jest-preset.ts +0 -62
  1348. package/src/testing/style-mock.ts +0 -7
  1349. package/src/testing/validators.ts +0 -10
  1350. package/src/themes/ResolvedThemeSet.ts +0 -22
  1351. package/src/themes/ThemeRegistry.ts +0 -97
  1352. package/src/themes/__tests__/ThemeRegistry.test.ts +0 -162
  1353. package/src/tools/ThemeFileGenerator.ts +0 -109
  1354. package/src/tools/integrity/DiskFreshGenerator.ts +0 -36
  1355. package/src/tools/integrity/GenerationIntegrityCheck.ts +0 -132
  1356. package/src/tools/integrity/Invariants.ts +0 -228
  1357. package/src/tools/integrity/Normalizer.ts +0 -94
  1358. package/src/tools/integrity/SemanticComparator.ts +0 -127
  1359. package/src/tools/integrity/__tests__/GenerationIntegrityCheck.test.ts +0 -132
  1360. package/src/tools/integrity/__tests__/Invariants.test.ts +0 -142
  1361. package/src/tools/integrity/__tests__/Normalizer.test.ts +0 -65
  1362. package/src/tools/integrity/__tests__/SemanticComparator.test.ts +0 -62
  1363. package/src/tools/integrity/__tests__/consumer-package-mode.test.ts +0 -205
  1364. package/src/tools/integrity/cli/run-audit.ts +0 -150
  1365. package/src/tools/integrity/inventory.ts +0 -51
  1366. package/src/tools/integrity/manifest.ts +0 -56
  1367. package/src/tools/integrity/types/index.ts +0 -183
  1368. package/src/tools/release/__tests__/ChangeClassifier.test.ts +0 -133
  1369. package/src/tools/release/__tests__/ChangeExtractor.test.ts +0 -222
  1370. package/src/tools/release/__tests__/GitHubPublisher.test.ts +0 -240
  1371. package/src/tools/release/__tests__/NotesRenderer.test.ts +0 -142
  1372. package/src/tools/release/__tests__/NpmPublisher.test.ts +0 -289
  1373. package/src/tools/release/__tests__/PipelineIntegration.test.ts +0 -188
  1374. package/src/tools/release/__tests__/ReleasePipeline.test.ts +0 -192
  1375. package/src/tools/release/__tests__/SemanticVersionValidator.test.ts +0 -49
  1376. package/src/tools/release/__tests__/SummaryScanner.test.ts +0 -141
  1377. package/src/tools/release/__tests__/TagResolver.test.ts +0 -91
  1378. package/src/tools/release/__tests__/VersionCalculator.test.ts +0 -270
  1379. package/src/tools/release/__tests__/helpers/NpmMockHelper.ts +0 -80
  1380. package/src/tools/release/cli/ReleasePipeline.ts +0 -165
  1381. package/src/tools/release/cli/release-tool.ts +0 -107
  1382. package/src/tools/release/pipeline/ChangeClassifier.ts +0 -61
  1383. package/src/tools/release/pipeline/ChangeExtractor.ts +0 -87
  1384. package/src/tools/release/pipeline/NotesRenderer.ts +0 -66
  1385. package/src/tools/release/pipeline/SummaryScanner.ts +0 -70
  1386. package/src/tools/release/pipeline/TagResolver.ts +0 -40
  1387. package/src/tools/release/pipeline/VersionCalculator.ts +0 -375
  1388. package/src/tools/release/publishers/GitHubPublisher.ts +0 -228
  1389. package/src/tools/release/publishers/NpmPublisher.ts +0 -196
  1390. package/src/tools/release/release-config.json +0 -5
  1391. package/src/tools/release/types/index.ts +0 -282
  1392. package/src/tools/release/validators/SemanticVersionValidator.ts +0 -67
  1393. package/src/types/ComponentTypes.ts +0 -76
  1394. package/src/types/TranslationOutput.ts +0 -105
  1395. package/src/types/ValidationResult.ts +0 -74
  1396. package/src/types/__tests__/ComponentTypes.test.ts +0 -73
  1397. package/src/types/css.d.ts +0 -35
  1398. package/src/types/generated/TokenTypes.ts +0 -142
  1399. package/src/types/index.ts +0 -42
  1400. package/src/validators/BaselineGridValidator.ts +0 -119
  1401. package/src/validators/CompositionPatternValidator.ts +0 -259
  1402. package/src/validators/CrossPlatformConsistencyValidator.ts +0 -498
  1403. package/src/validators/ErrorValidator.ts +0 -998
  1404. package/src/validators/IValidator.ts +0 -273
  1405. package/src/validators/MathematicalRelationshipParser.ts +0 -434
  1406. package/src/validators/ModeParity.ts +0 -123
  1407. package/src/validators/PassValidator.ts +0 -533
  1408. package/src/validators/PlatformConstraintHandler.ts +0 -453
  1409. package/src/validators/PrimitiveReferenceValidator.ts +0 -284
  1410. package/src/validators/SemanticTokenValidator.ts +0 -496
  1411. package/src/validators/StemmaComponentNamingValidator.ts +0 -524
  1412. package/src/validators/StemmaErrorGuidanceSystem.ts +0 -1600
  1413. package/src/validators/StemmaPropertyAccessibilityValidator.ts +0 -823
  1414. package/src/validators/StemmaTokenUsageValidator.ts +0 -651
  1415. package/src/validators/SyntaxValidator.ts +0 -537
  1416. package/src/validators/ThreeTierValidator.ts +0 -822
  1417. package/src/validators/ToleranceCalculator.ts +0 -324
  1418. package/src/validators/ValidationReasoning.ts +0 -464
  1419. package/src/validators/WCAGValidator.ts +0 -219
  1420. package/src/validators/WarningValidator.ts +0 -626
  1421. package/src/validators/__tests__/BaselineGridValidator.test.ts +0 -292
  1422. package/src/validators/__tests__/BorderWidthValidation.test.ts +0 -595
  1423. package/src/validators/__tests__/CompositionPatterns.test.ts +0 -463
  1424. package/src/validators/__tests__/CrossPlatformConsistency.test.ts +0 -834
  1425. package/src/validators/__tests__/IValidator.test.ts +0 -258
  1426. package/src/validators/__tests__/MathematicalRelationshipParser.test.ts +0 -465
  1427. package/src/validators/__tests__/PlatformConstraints.test.ts +0 -486
  1428. package/src/validators/__tests__/SemanticTokenValidator.test.ts +0 -723
  1429. package/src/validators/__tests__/StemmaComponentNamingValidator.test.ts +0 -597
  1430. package/src/validators/__tests__/StemmaErrorGuidanceSystem.test.ts +0 -717
  1431. package/src/validators/__tests__/StemmaPropertyAccessibilityValidator.test.ts +0 -349
  1432. package/src/validators/__tests__/StemmaTokenUsageValidator.test.ts +0 -432
  1433. package/src/validators/__tests__/SyntaxValidator.test.ts +0 -360
  1434. package/src/validators/__tests__/ThreeTierValidator.test.ts +0 -906
  1435. package/src/validators/__tests__/ValidationReasoning.test.ts +0 -636
  1436. package/src/validators/__tests__/WCAGValidator.test.ts +0 -243
  1437. package/src/validators/buildValidation.ts +0 -170
  1438. package/src/validators/index.ts +0 -144
  1439. package/src/workflows/ConsistencyValidator.ts +0 -339
  1440. package/src/workflows/TokenGenerationWorkflow.ts +0 -460
  1441. package/src/workflows/ValidationPipeline.ts +0 -284
  1442. package/src/workflows/WorkflowErrorHandler.ts +0 -441
@@ -1,1355 +0,0 @@
1
- /**
2
- * DTCG Token Format Generator
3
- *
4
- * Transforms DesignerPunk Rosetta System tokens into DTCG (Design Tokens Community Group)
5
- * Format Module 2025.10 compliant JSON output. Enables integration with industry-standard
6
- * design tools (Figma, Style Dictionary, Tokens Studio, Terrazzo) while preserving
7
- * DesignerPunk's mathematical foundations and governance rules through extensions.
8
- *
9
- * Key Principle: DTCG output is a parallel export for external tools.
10
- * DesignerPunk components continue importing tokens from TypeScript sources.
11
- * Code (Rosetta) remains the source of truth.
12
- *
13
- * @see https://tr.designtokens.org/format/
14
- * @requirements 7.1, 10.1-10.5
15
- */
16
-
17
- import * as fs from 'fs';
18
- import * as path from 'path';
19
- import { DTCGGeneratorConfig, DEFAULT_DTCG_GENERATOR_CONFIG } from './DTCGGeneratorConfig';
20
- import type { DTCGTokenFile, DTCGGroup, DTCGToken, DTCGType, DesignerPunkExtensions } from './types/DTCGTypes';
21
- import { getAllPrimitiveTokens } from '../tokens/index';
22
- import { getAllSemanticTokens } from '../tokens/semantic/index';
23
- import type { SemanticToken } from '../types/SemanticToken';
24
- import type { PrimitiveToken, ColorTokenValue } from '../types/PrimitiveToken';
25
-
26
- // Primitive token imports
27
- import { spacingTokens, SPACING_BASE_VALUE } from '../tokens/SpacingTokens';
28
- import { colorTokens } from '../tokens/ColorTokens';
29
- import { fontSizeTokens, FONT_SIZE_BASE_VALUE } from '../tokens/FontSizeTokens';
30
- import { fontWeightTokens, FONT_WEIGHT_BASE_VALUE } from '../tokens/FontWeightTokens';
31
- import { fontFamilyTokens } from '../tokens/FontFamilyTokens';
32
- import { lineHeightTokens, LINE_HEIGHT_BASE_VALUE } from '../tokens/LineHeightTokens';
33
- import { letterSpacingTokens, LETTER_SPACING_BASE_VALUE } from '../tokens/LetterSpacingTokens';
34
- import { radiusTokens, RADIUS_BASE_VALUE } from '../tokens/RadiusTokens';
35
- import { borderWidthTokens, BORDER_WIDTH_BASE_VALUE } from '../tokens/BorderWidthTokens';
36
- import { tapAreaTokens, TAP_AREA_BASE_VALUE } from '../tokens/TapAreaTokens';
37
- import { densityTokens, DENSITY_BASE_VALUE } from '../tokens/DensityTokens';
38
- import { breakpointTokens, BREAKPOINT_BASE_VALUE } from '../tokens/BreakpointTokens';
39
- import { opacityTokens, OPACITY_BASE_VALUE } from '../tokens/OpacityTokens';
40
- import { durationTokens, DURATION_BASE_VALUE } from '../tokens/DurationTokens';
41
- import { easingTokens } from '../tokens/EasingTokens';
42
- import { scaleTokens, SCALE_BASE_VALUE } from '../tokens/ScaleTokens';
43
- import { blendTokens, BLEND_BASE_VALUE } from '../tokens/BlendTokens';
44
-
45
- // Shadow primitive token imports
46
- import { blur as blurTokens, BLUR_BASE_VALUE } from '../tokens/BlurTokens';
47
- import { sizingTokens, SIZING_BASE_VALUE } from '../tokens/SizingTokens';
48
- import { shadowOffsetX, shadowOffsetY, SHADOW_OFFSET_BASE_VALUE } from '../tokens/ShadowOffsetTokens';
49
- import { shadowOpacityTokens, SHADOW_OPACITY_BASE_VALUE } from '../tokens/ShadowOpacityTokens';
50
-
51
- // Glow primitive token imports
52
- import { glowOpacity, GLOW_OPACITY_BASE_VALUE } from '../tokens/GlowOpacityTokens';
53
-
54
- // Semantic token imports
55
- import { colorTokens as semanticColorTokens } from '../tokens/semantic/ColorTokens';
56
- import { spacingTokens as semanticSpacingTokens } from '../tokens/semantic/SpacingTokens';
57
- import { SemanticBorderWidthTokens } from '../tokens/semantic/BorderWidthTokens';
58
- import { SemanticRadiusTokens } from '../tokens/semantic/RadiusTokens';
59
- import { opacityTokens as semanticOpacityTokens } from '../tokens/semantic/OpacityTokens';
60
- import { blendTokens as semanticBlendTokens } from '../tokens/semantic/BlendTokens';
61
- import { zIndexTokens } from '../tokens/semantic/ZIndexTokens';
62
- import { elevationTokens } from '../tokens/semantic/ElevationTokens';
63
- import { gridSpacingTokens } from '../tokens/semantic/GridSpacingTokens';
64
- import { iconTokens } from '../tokens/semantic/IconTokens';
65
- import { accessibilityTokens } from '../tokens/semantic/AccessibilityTokens';
66
- import { motionTokens as semanticMotionTokens } from '../tokens/semantic/MotionTokens';
67
- import { typographyTokens } from '../tokens/semantic/TypographyTokens';
68
- import { progressColorTokens } from '../tokens/semantic/ColorTokens';
69
- import { shadowTokens as semanticShadowTokens } from '../tokens/semantic/ShadowTokens';
70
- import { darkSemanticOverrides } from '../tokens/themes/dark/SemanticOverrides';
71
- import { resolveSemanticTokenValue } from '../resolvers/SemanticValueResolver';
72
- import type { ThemeOverrideSet } from './TokenFileGenerator';
73
-
74
- /** Set of valid DTCG types for validation (Format Module 2025.10) */
75
- const VALID_DTCG_TYPES: ReadonlySet<string> = new Set([
76
- 'color', 'dimension', 'fontFamily', 'fontWeight', 'duration',
77
- 'cubicBezier', 'linearEasing', 'number', 'shadow', 'typography', 'transition',
78
- ]);
79
-
80
- /** Minimum expected primitive token count (programmatic validation threshold) */
81
- const MIN_PRIMITIVE_TOKEN_COUNT = 200;
82
-
83
- /** Minimum expected semantic token count (programmatic validation threshold) */
84
- const MIN_SEMANTIC_TOKEN_COUNT = 180;
85
-
86
- /**
87
- * DTCGFormatGenerator — Main generator class that orchestrates token transformation
88
- * from Rosetta System tokens to DTCG Format Module 2025.10 compliant JSON.
89
- *
90
- * Usage:
91
- * ```typescript
92
- * const generator = new DTCGFormatGenerator();
93
- * const output = generator.generate();
94
- * generator.writeToFile('dist/DesignTokens.dtcg.json');
95
- * ```
96
- */
97
- export class DTCGFormatGenerator {
98
- private readonly config: DTCGGeneratorConfig;
99
-
100
- constructor(config: Partial<DTCGGeneratorConfig> = {}) {
101
- this.config = { ...DEFAULT_DTCG_GENERATOR_CONFIG, ...config };
102
- }
103
-
104
- /**
105
- * Generate DTCG-compliant JSON from Rosetta tokens.
106
- *
107
- * Orchestrates all token generation methods, adds root-level metadata,
108
- * and validates token counts before returning the complete DTCG output.
109
- *
110
- * @returns Complete DTCGTokenFile ready for serialization
111
- * @throws Error if token count validation fails
112
- */
113
- generate(): DTCGTokenFile {
114
- const output: DTCGTokenFile = {
115
- $schema: this.config.schemaUrl,
116
- };
117
-
118
- // Add root-level DesignerPunk extensions (version, generatedAt, rosettaVersion)
119
- if (this.config.includeExtensions) {
120
- output.$extensions = {
121
- designerpunk: this.generateRootExtensions(),
122
- };
123
- }
124
-
125
- // --- Primitive token groups ---
126
- // Each method will be implemented in Task 2.2
127
- output.space = this.generateSpacingTokens();
128
- output.color = this.generateColorTokens();
129
- output.fontSize = this.generateFontSizeTokens();
130
- output.fontWeight = this.generateFontWeightTokens();
131
- output.fontFamily = this.generateFontFamilyTokens();
132
- output.lineHeight = this.generateLineHeightTokens();
133
- output.letterSpacing = this.generateLetterSpacingTokens();
134
- output.radius = this.generateRadiusTokens();
135
- output.borderWidth = this.generateBorderWidthTokens();
136
- output.tapArea = this.generateTapAreaTokens();
137
- output.density = this.generateDensityTokens();
138
- output.breakpoint = this.generateBreakpointTokens();
139
- output.opacity = this.generateOpacityTokens();
140
- output.duration = this.generateDurationTokens();
141
- output.easing = this.generateEasingTokens();
142
- output.scale = this.generateScaleTokens();
143
- output.blend = this.generateBlendTokens();
144
- output.blur = this.generateBlurTokens();
145
- output.sizing = this.generateSizingTokens();
146
-
147
- // --- Semantic token groups ---
148
- output.semanticColor = this.generateSemanticColorTokens();
149
- output.semanticSpace = this.generateSemanticSpacingTokens();
150
- output.semanticBorderWidth = this.generateSemanticBorderWidthTokens();
151
- output.semanticRadius = this.generateSemanticRadiusTokens();
152
- output.semanticOpacity = this.generateSemanticOpacityTokens();
153
- output.semanticBlend = this.generateSemanticBlendTokens();
154
- output.gridSpacing = this.generateGridSpacingTokens();
155
- output.icon = this.generateIconTokens();
156
- output.accessibility = this.generateAccessibilityTokens();
157
- output.progressColor = this.generateProgressColorTokens();
158
- output.zIndex = this.generateZIndexTokens();
159
- output.elevation = this.generateElevationTokens();
160
-
161
- // --- Shadow & glow token groups (Tasks 2.4, 2.5) ---
162
- output.shadow = this.generateShadowTokens();
163
- output.glow = this.generateGlowTokens();
164
-
165
- // --- Composite token groups (Task 2.6) ---
166
- output.typography = this.generateTypographyTokens();
167
- output.motion = this.generateMotionTokens();
168
-
169
- // Validate token counts against expected minimums
170
- this.validateTokenCounts(output);
171
-
172
- // Post-processing: strip deprecated tokens if configured
173
- if (!this.config.includeDeprecated) {
174
- this.stripDeprecatedTokens(output);
175
- }
176
-
177
- return output;
178
- }
179
-
180
- /**
181
- * Write generated DTCG output to a JSON file.
182
- *
183
- * Creates the output directory if it doesn't exist. Overwrites existing files
184
- * without prompting (generation is idempotent).
185
- *
186
- * @param outputPath - File path for the output (e.g., 'dist/DesignTokens.dtcg.json')
187
- * @throws Error if file write fails (permissions, disk full, etc.)
188
- */
189
- writeToFile(outputPath: string): void {
190
- const output = this.generate();
191
- const indent = this.config.prettyPrint ? 2 : undefined;
192
- const json = JSON.stringify(output, null, indent);
193
-
194
- try {
195
- const dir = path.dirname(outputPath);
196
- if (!fs.existsSync(dir)) {
197
- fs.mkdirSync(dir, { recursive: true });
198
- }
199
- fs.writeFileSync(outputPath, json, 'utf-8');
200
-
201
- // Log generation summary
202
- const primitiveCount = getAllPrimitiveTokens().length;
203
- const semanticCount = getAllSemanticTokens().length;
204
- console.log(
205
- `✅ DTCG output written to ${outputPath} — Generated ${primitiveCount} primitive tokens, ${semanticCount} semantic tokens`
206
- );
207
- } catch (error: unknown) {
208
- const message = error instanceof Error ? error.message : String(error);
209
- throw new Error(`Failed to write DTCG output to ${outputPath}: ${message}`);
210
- }
211
- }
212
-
213
- // ---------------------------------------------------------------------------
214
- // Private helpers
215
- // ---------------------------------------------------------------------------
216
-
217
- /**
218
- * Generate root-level DesignerPunk extension metadata.
219
- *
220
- * Includes generator version, generation timestamp, and Rosetta system version
221
- * for traceability and debugging.
222
- */
223
- private generateRootExtensions(): NonNullable<NonNullable<DTCGTokenFile['$extensions']>['designerpunk']> {
224
- // Read version from package.json at runtime
225
- let rosettaVersion = 'unknown';
226
- try {
227
- const pkgPath = path.resolve(__dirname, '../../package.json');
228
- const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf-8'));
229
- rosettaVersion = pkg.version || 'unknown';
230
- } catch {
231
- // Fallback — package.json not found or unreadable
232
- }
233
-
234
- const extensions: NonNullable<NonNullable<DTCGTokenFile['$extensions']>['designerpunk']> = {
235
- version: '1.0.0',
236
- generatedAt: new Date().toISOString(),
237
- rosettaVersion,
238
- };
239
-
240
- // Include registered theme metadata when themes are configured (Spec 094)
241
- if (this.config.registeredThemes.length > 0) {
242
- extensions.themes = this.config.registeredThemes;
243
- }
244
-
245
- return extensions;
246
- }
247
-
248
- /**
249
- * Validate that generated token counts meet expected minimums.
250
- *
251
- * Uses programmatic counting via getAllPrimitiveTokens() and getAllSemanticTokens()
252
- * rather than hard-coded values, so validation stays current as the token system grows.
253
- *
254
- * @param _output - The generated DTCGTokenFile (reserved for future per-group validation)
255
- * @throws Error if primitive or semantic token counts fall below minimum thresholds
256
- */
257
- private validateTokenCounts(_output: DTCGTokenFile): void {
258
- const primitiveCount = getAllPrimitiveTokens().length;
259
- const semanticCount = getAllSemanticTokens().length;
260
-
261
- if (primitiveCount < MIN_PRIMITIVE_TOKEN_COUNT) {
262
- throw new Error(
263
- `Token count validation failed. Expected at least ${MIN_PRIMITIVE_TOKEN_COUNT} primitive tokens, got ${primitiveCount}. ` +
264
- `This may indicate a missing token category in the generator.`
265
- );
266
- }
267
-
268
- if (semanticCount < MIN_SEMANTIC_TOKEN_COUNT) {
269
- throw new Error(
270
- `Token count validation failed. Expected at least ${MIN_SEMANTIC_TOKEN_COUNT} semantic tokens, got ${semanticCount}. ` +
271
- `This may indicate a missing semantic token category in the generator.`
272
- );
273
- }
274
- }
275
-
276
- /**
277
- * Remove deprecated tokens from the output when includeDeprecated is false.
278
- *
279
- * Recursively walks the DTCG output tree and removes any token that has
280
- * `$extensions.designerpunk.deprecated: true`. This preserves the group structure
281
- * while filtering out individual deprecated tokens.
282
- *
283
- * @param obj - The DTCG output object to filter (mutated in place)
284
- */
285
- private stripDeprecatedTokens(obj: Record<string, unknown>): void {
286
- for (const key of Object.keys(obj)) {
287
- if (key.startsWith('$')) continue; // Skip DTCG meta-properties
288
- const value = obj[key];
289
- if (value && typeof value === 'object') {
290
- const token = value as Record<string, unknown>;
291
- // Check if this is a token with deprecated extension
292
- const extensions = token.$extensions as { designerpunk?: DesignerPunkExtensions } | undefined;
293
- if (extensions?.designerpunk?.deprecated) {
294
- delete obj[key];
295
- } else {
296
- // Recurse into groups
297
- this.stripDeprecatedTokens(token);
298
- }
299
- }
300
- }
301
- }
302
-
303
- // ---------------------------------------------------------------------------
304
- // Token generation stubs — implemented in Tasks 2.2–2.6
305
- // ---------------------------------------------------------------------------
306
-
307
- // ---------------------------------------------------------------------------
308
- // Primitive token generation (Task 2.2)
309
- // ---------------------------------------------------------------------------
310
-
311
- /**
312
- * Generate spacing primitive tokens as DTCG dimension type.
313
- * Maps spacing baseValue to `{value}px` dimension format.
314
- */
315
- private generateSpacingTokens(): DTCGGroup {
316
- return this.generateDimensionGroup(spacingTokens, 'spacing', SPACING_BASE_VALUE);
317
- }
318
-
319
- /**
320
- * Generate color primitive tokens as DTCG color type.
321
- * Resolves mode-aware RGBA values using light.base as default.
322
- */
323
- private generateColorTokens(): DTCGGroup {
324
- const group: DTCGGroup = { $type: 'color' };
325
- for (const [key, token] of Object.entries(colorTokens)) {
326
- const colorValue = this.resolveColorValue(token, key);
327
- const extensions = this.buildPrimitiveExtensions(token, 'color');
328
- group[key] = this.toDTCGToken(colorValue, 'color', token.description, extensions);
329
- }
330
- return group;
331
- }
332
-
333
- /**
334
- * Generate font size primitive tokens as DTCG dimension type.
335
- * Uses baseValue (unitless) converted to `{value}px`.
336
- */
337
- private generateFontSizeTokens(): DTCGGroup {
338
- return this.generateDimensionGroup(fontSizeTokens, 'fontSize', FONT_SIZE_BASE_VALUE);
339
- }
340
-
341
- /**
342
- * Generate font weight primitive tokens as DTCG fontWeight type.
343
- * Font weights are numeric values (100–900).
344
- */
345
- private generateFontWeightTokens(): DTCGGroup {
346
- const group: DTCGGroup = { $type: 'fontWeight' };
347
- for (const [key, token] of Object.entries(fontWeightTokens)) {
348
- const extensions = this.buildPrimitiveExtensions(token, 'fontWeight', FONT_WEIGHT_BASE_VALUE);
349
- group[key] = this.toDTCGToken(token.baseValue, 'fontWeight', token.description, extensions);
350
- }
351
- return group;
352
- }
353
-
354
- /**
355
- * Generate font family primitive tokens as DTCG fontFamily type.
356
- * DTCG fontFamily expects an array of font names.
357
- */
358
- private generateFontFamilyTokens(): DTCGGroup {
359
- const group: DTCGGroup = { $type: 'fontFamily' };
360
- for (const [key, token] of Object.entries(fontFamilyTokens)) {
361
- const fontStack = String(token.platforms.web.value);
362
- const families = fontStack.split(',').map(f => f.trim().replace(/^["']|["']$/g, ''));
363
- const extensions = this.buildPrimitiveExtensions(token, 'fontFamily');
364
- group[key] = this.toDTCGToken(families, 'fontFamily', token.description, extensions);
365
- }
366
- return group;
367
- }
368
-
369
- /**
370
- * Generate line height primitive tokens as DTCG number type.
371
- * Line heights are unitless multipliers.
372
- */
373
- private generateLineHeightTokens(): DTCGGroup {
374
- const group: DTCGGroup = { $type: 'number' };
375
- for (const [key, token] of Object.entries(lineHeightTokens)) {
376
- const extensions = this.buildPrimitiveExtensions(token, 'lineHeight', LINE_HEIGHT_BASE_VALUE);
377
- group[key] = this.toDTCGToken(token.baseValue, 'number', token.description, extensions);
378
- }
379
- return group;
380
- }
381
-
382
- /**
383
- * Generate letter spacing primitive tokens as DTCG dimension type.
384
- * Letter spacing uses em units.
385
- */
386
- private generateLetterSpacingTokens(): DTCGGroup {
387
- const group: DTCGGroup = { $type: 'dimension' };
388
- for (const [key, token] of Object.entries(letterSpacingTokens)) {
389
- const extensions = this.buildPrimitiveExtensions(token, 'letterSpacing', LETTER_SPACING_BASE_VALUE);
390
- group[key] = this.toDTCGToken(`${token.baseValue}em`, 'dimension', token.description, extensions);
391
- }
392
- return group;
393
- }
394
-
395
- /**
396
- * Generate radius primitive tokens as DTCG dimension type.
397
- * Handles special cases: radiusMax (9999px), radiusHalf (50%).
398
- */
399
- private generateRadiusTokens(): DTCGGroup {
400
- const group: DTCGGroup = { $type: 'dimension' };
401
- for (const [key, token] of Object.entries(radiusTokens)) {
402
- let value: string;
403
- if (token.name === 'radiusHalf') {
404
- value = '50%';
405
- } else {
406
- value = `${token.baseValue}px`;
407
- }
408
- const extensions = this.buildPrimitiveExtensions(token, 'radius', RADIUS_BASE_VALUE);
409
- group[key] = this.toDTCGToken(value, 'dimension', token.description, extensions);
410
- }
411
- return group;
412
- }
413
-
414
- /**
415
- * Generate border width primitive tokens as DTCG dimension type.
416
- */
417
- private generateBorderWidthTokens(): DTCGGroup {
418
- return this.generateDimensionGroup(borderWidthTokens, 'borderWidth', BORDER_WIDTH_BASE_VALUE);
419
- }
420
-
421
- /**
422
- * Generate tap area primitive tokens as DTCG dimension type.
423
- */
424
- private generateTapAreaTokens(): DTCGGroup {
425
- return this.generateDimensionGroup(tapAreaTokens, 'tapArea', TAP_AREA_BASE_VALUE);
426
- }
427
-
428
- /**
429
- * Generate density primitive tokens as DTCG number type.
430
- * Density values are unitless multipliers.
431
- */
432
- private generateDensityTokens(): DTCGGroup {
433
- const group: DTCGGroup = { $type: 'number' };
434
- for (const [key, token] of Object.entries(densityTokens)) {
435
- const extensions = this.buildPrimitiveExtensions(token, 'density', DENSITY_BASE_VALUE);
436
- group[key] = this.toDTCGToken(token.baseValue, 'number', token.description, extensions);
437
- }
438
- return group;
439
- }
440
-
441
- /**
442
- * Generate breakpoint primitive tokens as DTCG dimension type.
443
- */
444
- private generateBreakpointTokens(): DTCGGroup {
445
- return this.generateDimensionGroup(breakpointTokens, 'breakpoint', BREAKPOINT_BASE_VALUE);
446
- }
447
-
448
- /**
449
- * Generate opacity primitive tokens as DTCG number type.
450
- * Opacity values are unitless (0–1).
451
- */
452
- private generateOpacityTokens(): DTCGGroup {
453
- const group: DTCGGroup = { $type: 'number' };
454
- for (const [key, token] of Object.entries(opacityTokens)) {
455
- const extensions = this.buildPrimitiveExtensions(token, 'opacity', OPACITY_BASE_VALUE);
456
- group[key] = this.toDTCGToken(token.baseValue, 'number', token.description, extensions);
457
- }
458
- return group;
459
- }
460
-
461
- /**
462
- * Generate duration primitive tokens as DTCG duration type.
463
- * DTCG duration format: `{value}ms`.
464
- */
465
- private generateDurationTokens(): DTCGGroup {
466
- const group: DTCGGroup = { $type: 'duration' };
467
- for (const [key, token] of Object.entries(durationTokens)) {
468
- const extensions = this.buildPrimitiveExtensions(token, 'duration', DURATION_BASE_VALUE);
469
- group[key] = this.toDTCGToken(`${token.baseValue}ms`, 'duration', token.description, extensions);
470
- }
471
- return group;
472
- }
473
-
474
- /**
475
- * Generate easing primitive tokens as DTCG cubicBezier type.
476
- * Parses cubic-bezier CSS string into [p1, p2, p3, p4] array.
477
- */
478
- private generateEasingTokens(): DTCGGroup {
479
- const group: DTCGGroup = {};
480
- for (const [key, token] of Object.entries(easingTokens)) {
481
- const extensions = this.buildPrimitiveExtensions(token, 'easing');
482
- if (token.easingType === 'linear' && token.stops) {
483
- group[key] = this.toDTCGToken(token.stops, 'linearEasing', token.description, extensions);
484
- } else {
485
- const bezierStr = String(token.platforms.web.value);
486
- const match = bezierStr.match(/cubic-bezier\(\s*([\d.]+)\s*,\s*([\d.]+)\s*,\s*([\d.]+)\s*,\s*([\d.]+)\s*\)/);
487
- if (!match) {
488
- throw new Error(`Invalid easing value for ${token.name}: ${bezierStr}. Expected cubic-bezier(p1, p2, p3, p4) format.`);
489
- }
490
- const bezierArray = [parseFloat(match[1]), parseFloat(match[2]), parseFloat(match[3]), parseFloat(match[4])];
491
- group[key] = this.toDTCGToken(bezierArray, 'cubicBezier', token.description, extensions);
492
- }
493
- }
494
- return group;
495
- }
496
-
497
- /**
498
- * Generate scale primitive tokens as DTCG number type.
499
- * Scale values are unitless multipliers.
500
- */
501
- private generateScaleTokens(): DTCGGroup {
502
- const group: DTCGGroup = { $type: 'number' };
503
- for (const [key, token] of Object.entries(scaleTokens)) {
504
- const extensions = this.buildPrimitiveExtensions(token, 'scale', SCALE_BASE_VALUE);
505
- group[key] = this.toDTCGToken(token.baseValue, 'number', token.description, extensions);
506
- }
507
- return group;
508
- }
509
-
510
- /**
511
- * Generate blur primitive tokens as DTCG dimension type.
512
- */
513
- private generateBlurTokens(): DTCGGroup {
514
- const group: DTCGGroup = { $type: 'dimension' };
515
- for (const [key, token] of Object.entries(blurTokens)) {
516
- const extensions = this.buildPrimitiveExtensions(token, 'blur', BLUR_BASE_VALUE);
517
- group[key] = this.toDTCGToken(`${token.baseValue}px`, 'dimension', token.description, extensions);
518
- }
519
- return group;
520
- }
521
-
522
- /**
523
- * Generate sizing primitive tokens as DTCG dimension type.
524
- */
525
- private generateSizingTokens(): DTCGGroup {
526
- const group: DTCGGroup = { $type: 'dimension' };
527
- for (const [key, token] of Object.entries(sizingTokens)) {
528
- const extensions = this.buildPrimitiveExtensions(token, 'sizing', SIZING_BASE_VALUE);
529
- group[key] = this.toDTCGToken(`${token.baseValue}px`, 'dimension', token.description, extensions);
530
- }
531
- return group;
532
- }
533
-
534
- /**
535
- * Generate blend primitive tokens as DTCG number type with blendType extension.
536
- * Blend values are unitless (0–1) with blendType metadata.
537
- */
538
- private generateBlendTokens(): DTCGGroup {
539
- const group: DTCGGroup = { $type: 'number' };
540
- for (const [key, token] of Object.entries(blendTokens)) {
541
- const extensions = this.buildPrimitiveExtensions(token, 'blend', BLEND_BASE_VALUE);
542
- group[key] = this.toDTCGToken(token.baseValue, 'number', token.description, extensions);
543
- }
544
- return group;
545
- }
546
-
547
- // ---------------------------------------------------------------------------
548
- // Semantic token generation (Task 2.3)
549
- // ---------------------------------------------------------------------------
550
-
551
- /**
552
- * Generate semantic color tokens with alias references to primitive colors.
553
- * Uses `{color.primitiveRef}` syntax to preserve primitive→semantic hierarchy.
554
- */
555
- private generateSemanticColorTokens(): DTCGGroup {
556
- const group: DTCGGroup = { $type: 'color' };
557
- for (const [key, token] of Object.entries(semanticColorTokens)) {
558
- const refs = token.primitiveReferences;
559
-
560
- // Determine alias value — use {color.primitiveRef} syntax
561
- const primaryRef = refs.value || refs.color;
562
- if (!primaryRef) continue;
563
-
564
- const aliasValue = this.config.resolveAliases
565
- ? this.resolvePrimitiveColorAlias(primaryRef)
566
- : `{color.${primaryRef}}`;
567
-
568
- const extensions: DesignerPunkExtensions = {
569
- family: 'color',
570
- };
571
-
572
- // Spec 080: emit mode contexts for Level 2 overrides or Level 1 primitive differences
573
- const override = darkSemanticOverrides[key];
574
- if (override) {
575
- // Level 2: semantic override swaps primitive name in dark mode
576
- // Resolve both modes to concrete rgba values
577
- const lightResolved = resolveSemanticTokenValue(token as any, 'light');
578
- const darkToken = { ...token, primitiveReferences: override.primitiveReferences } as any;
579
- const darkResolved = resolveSemanticTokenValue(darkToken, 'dark');
580
- const lightVal = lightResolved.primitiveReferences?.value;
581
- const darkVal = darkResolved.primitiveReferences?.value;
582
- if (lightVal && darkVal && lightVal !== darkVal) {
583
- if (!extensions.modes) extensions.modes = {};
584
- extensions.modes.light = lightVal;
585
- extensions.modes.dark = darkVal;
586
- }
587
- } else {
588
- // Level 1: check if primitive itself has distinct light/dark values
589
- const primitiveToken = (colorTokens as Record<string, PrimitiveToken>)[primaryRef];
590
- if (primitiveToken) {
591
- const colorVal = primitiveToken.platforms.web.value as ColorTokenValue;
592
- if (colorVal?.light?.base && colorVal?.dark?.base && colorVal.light.base !== colorVal.dark.base) {
593
- if (!extensions.modes) extensions.modes = {};
594
- extensions.modes.light = colorVal.light.base;
595
- extensions.modes.dark = colorVal.dark.base;
596
- }
597
- }
598
- }
599
- // If token has separate color + opacity composition, note it
600
- if (refs.color && refs.opacity) {
601
- extensions.primitiveRefs = { color: refs.color, opacity: refs.opacity };
602
- }
603
-
604
- // If token has modifier-based opacity composition, note it
605
- const semanticToken = token as unknown as SemanticToken;
606
- if (semanticToken.modifiers?.length) {
607
- const opacityMod = semanticToken.modifiers.find((m: { type: string }) => m.type === 'opacity');
608
- if (opacityMod) {
609
- extensions.primitiveRefs = { color: refs.value, opacity: opacityMod.reference };
610
- extensions.modifiers = semanticToken.modifiers;
611
- }
612
- }
613
-
614
- group[key] = this.toDTCGToken(aliasValue, 'color', token.description, extensions);
615
- }
616
- return group;
617
- }
618
-
619
- /**
620
- * Generate semantic spacing tokens with alias references to primitive spacing.
621
- * Preserves hierarchical structure: grouped/related/separated/sectioned + inset.
622
- */
623
- private generateSemanticSpacingTokens(): DTCGGroup {
624
- const group: DTCGGroup = { $type: 'dimension' };
625
- for (const [category, levels] of Object.entries(semanticSpacingTokens)) {
626
- const subGroup: DTCGGroup = { $type: 'dimension' };
627
- for (const [level, token] of Object.entries(levels as Record<string, { value: string }>)) {
628
- const aliasValue = this.config.resolveAliases
629
- ? this.resolvePrimitiveDimensionAlias(token.value, spacingTokens)
630
- : `{space.${token.value}}`;
631
-
632
- const extensions: DesignerPunkExtensions = {
633
- family: 'spacing',
634
- primitiveRefs: { value: token.value },
635
- };
636
-
637
- subGroup[level] = this.toDTCGToken(aliasValue, 'dimension', `Semantic spacing: ${category}.${level}`, extensions);
638
- }
639
- group[category] = subGroup;
640
- }
641
- return group;
642
- }
643
-
644
- /**
645
- * Generate semantic border width tokens with alias references to primitive border widths.
646
- */
647
- private generateSemanticBorderWidthTokens(): DTCGGroup {
648
- const group: DTCGGroup = { $type: 'dimension' };
649
- for (const [key, token] of Object.entries(SemanticBorderWidthTokens)) {
650
- const aliasValue = this.config.resolveAliases
651
- ? this.resolvePrimitiveDimensionAlias(token.value, borderWidthTokens)
652
- : `{borderWidth.${token.value}}`;
653
-
654
- const extensions: DesignerPunkExtensions = {
655
- family: 'borderWidth',
656
- primitiveRefs: { value: token.value },
657
- };
658
-
659
- group[key] = this.toDTCGToken(aliasValue, 'dimension', `Semantic border width: ${key}`, extensions);
660
- }
661
- return group;
662
- }
663
-
664
- /**
665
- * Generate semantic radius tokens with alias references to primitive radius.
666
- */
667
- private generateSemanticRadiusTokens(): DTCGGroup {
668
- const group: DTCGGroup = { $type: 'dimension' };
669
- for (const [key, token] of Object.entries(SemanticRadiusTokens)) {
670
- const aliasValue = this.config.resolveAliases
671
- ? this.resolvePrimitiveDimensionAlias(token.value, radiusTokens)
672
- : `{radius.${token.value}}`;
673
-
674
- const extensions: DesignerPunkExtensions = {
675
- family: 'radius',
676
- primitiveRefs: { value: token.value },
677
- };
678
-
679
- group[key] = this.toDTCGToken(aliasValue, 'dimension', `Semantic radius: ${key}`, extensions);
680
- }
681
- return group;
682
- }
683
-
684
- /**
685
- * Generate semantic opacity tokens with alias references to primitive opacity.
686
- */
687
- private generateSemanticOpacityTokens(): DTCGGroup {
688
- const group: DTCGGroup = { $type: 'number' };
689
- for (const [key, token] of Object.entries(semanticOpacityTokens)) {
690
- const ref = token.primitiveReferences.value;
691
- const aliasValue = this.config.resolveAliases
692
- ? this.resolvePrimitiveNumberAlias(ref, opacityTokens)
693
- : `{opacity.${ref}}`;
694
-
695
- const extensions: DesignerPunkExtensions = {
696
- family: 'opacity',
697
- primitiveRefs: { value: ref },
698
- };
699
-
700
- group[key] = this.toDTCGToken(aliasValue, 'number', token.description, extensions);
701
- }
702
- return group;
703
- }
704
-
705
- /**
706
- * Generate semantic blend tokens with alias references to primitive blend values.
707
- * Includes blendType extension for blend direction.
708
- */
709
- private generateSemanticBlendTokens(): DTCGGroup {
710
- const group: DTCGGroup = { $type: 'number' };
711
- for (const [key, token] of Object.entries(semanticBlendTokens)) {
712
- const ref = token.primitiveReferences.value;
713
- const aliasValue = this.config.resolveAliases
714
- ? this.resolvePrimitiveNumberAlias(ref, blendTokens)
715
- : `{blend.${ref}}`;
716
-
717
- const extensions: DesignerPunkExtensions = {
718
- family: 'blend',
719
- primitiveRefs: { value: ref },
720
- };
721
- // Map BlendDirection to DesignerPunk blendType extension
722
- if (token.direction === 'darker') {
723
- extensions.blendType = 'darkerBlend';
724
- } else if (token.direction === 'lighter') {
725
- extensions.blendType = 'lighterBlend';
726
- }
727
- // Deprecation metadata (e.g. blend.disabledDesaturate) — lets includeDeprecated: false strip it
728
- if (token.deprecated) {
729
- extensions.deprecated = true;
730
- if (token.deprecatedSince) extensions.deprecatedSince = token.deprecatedSince;
731
- if (token.deprecatedReason) extensions.deprecatedReason = token.deprecatedReason;
732
- }
733
-
734
- group[key] = this.toDTCGToken(aliasValue, 'number', token.description, extensions);
735
- }
736
- return group;
737
- }
738
-
739
- /**
740
- * Generate z-index tokens as DTCG number type.
741
- * Z-index tokens are semantic-only (no primitive layer).
742
- */
743
- private generateZIndexTokens(): DTCGGroup {
744
- const group: DTCGGroup = { $type: 'number' };
745
- for (const [key, token] of Object.entries(zIndexTokens)) {
746
- const extensions: DesignerPunkExtensions = {
747
- family: 'zIndex',
748
- platforms: {
749
- web: { supported: true },
750
- ios: { supported: true },
751
- android: { supported: false, note: 'Use elevation tokens instead' },
752
- },
753
- };
754
-
755
- group[key] = this.toDTCGToken(token.value, 'number', token.description, extensions);
756
- }
757
- return group;
758
- }
759
-
760
- /**
761
- * Generate elevation tokens as DTCG number type with platform extensions.
762
- * Elevation tokens are Android-only semantic tokens.
763
- */
764
- private generateElevationTokens(): DTCGGroup {
765
- const group: DTCGGroup = { $type: 'number' };
766
- for (const [key, token] of Object.entries(elevationTokens)) {
767
- const extensions: DesignerPunkExtensions = {
768
- family: 'elevation',
769
- platforms: {
770
- web: { supported: false, note: 'Use z-index + shadow tokens instead' },
771
- ios: { supported: false, note: 'Use z-index + shadow tokens instead' },
772
- android: { supported: true, elevation: token.value },
773
- },
774
- };
775
-
776
- group[key] = this.toDTCGToken(token.value, 'number', token.description, extensions);
777
- }
778
- return group;
779
- }
780
-
781
- /**
782
- * Generate grid spacing tokens with alias references to primitive spacing.
783
- */
784
- private generateGridSpacingTokens(): DTCGGroup {
785
- const group: DTCGGroup = { $type: 'dimension' };
786
- for (const [key, token] of Object.entries(gridSpacingTokens)) {
787
- const ref = token.primitiveReferences.spacing;
788
- const aliasValue = this.config.resolveAliases
789
- ? this.resolvePrimitiveDimensionAlias(ref, spacingTokens)
790
- : `{space.${ref}}`;
791
-
792
- const extensions: DesignerPunkExtensions = {
793
- family: 'gridSpacing',
794
- primitiveRefs: { spacing: ref },
795
- };
796
-
797
- group[key] = this.toDTCGToken(aliasValue, 'dimension', token.description, extensions);
798
- }
799
- return group;
800
- }
801
-
802
- /**
803
- * Generate icon tokens as DTCG dimension type.
804
- * Icon sizes are calculated from fontSize × multiplier.
805
- */
806
- private generateIconTokens(): DTCGGroup {
807
- const group: DTCGGroup = { $type: 'dimension' };
808
- for (const [key, token] of Object.entries(iconTokens)) {
809
- const refs = token.primitiveReferences;
810
-
811
- // icon.strokeWidth references a borderWidth primitive
812
- if (refs.value) {
813
- const aliasValue = this.config.resolveAliases
814
- ? this.resolvePrimitiveDimensionAlias(refs.value, borderWidthTokens)
815
- : `{borderWidth.${refs.value}}`;
816
-
817
- const extensions: DesignerPunkExtensions = {
818
- family: 'icon',
819
- primitiveRefs: { value: refs.value },
820
- };
821
-
822
- group[key] = this.toDTCGToken(aliasValue, 'dimension', token.description, extensions);
823
- } else if (refs.fontSize && refs.multiplier) {
824
- // Icon size tokens — calculated value, include formula in extensions
825
- const extensions: DesignerPunkExtensions = {
826
- family: 'icon',
827
- primitiveRefs: { fontSize: refs.fontSize, multiplier: refs.multiplier },
828
- };
829
-
830
- // For icon sizes, use the alias to fontSize as the value
831
- const aliasValue = this.config.resolveAliases
832
- ? this.resolvePrimitiveDimensionAlias(refs.fontSize, fontSizeTokens)
833
- : `{fontSize.${refs.fontSize}}`;
834
-
835
- group[key] = this.toDTCGToken(aliasValue, 'dimension', token.description, extensions);
836
- }
837
- }
838
- return group;
839
- }
840
-
841
- /**
842
- * Generate accessibility tokens with alias references to their primitive sources.
843
- */
844
- private generateAccessibilityTokens(): DTCGGroup {
845
- const group: DTCGGroup = {};
846
- for (const [key, token] of Object.entries(accessibilityTokens)) {
847
- const ref = token.primitiveReferences.value;
848
-
849
- // Determine DTCG type based on what the token references
850
- let dtcgType: DTCGType;
851
- let aliasValue: string;
852
- if (key.includes('color')) {
853
- dtcgType = 'color';
854
- aliasValue = this.config.resolveAliases
855
- ? this.resolvePrimitiveColorAlias(ref)
856
- : `{color.${ref}}`;
857
- } else if (key.includes('width')) {
858
- dtcgType = 'dimension';
859
- aliasValue = this.config.resolveAliases
860
- ? this.resolvePrimitiveDimensionAlias(ref, borderWidthTokens)
861
- : `{borderWidth.${ref}}`;
862
- } else {
863
- // offset references a spacing primitive
864
- dtcgType = 'dimension';
865
- aliasValue = this.config.resolveAliases
866
- ? this.resolvePrimitiveDimensionAlias(ref, spacingTokens)
867
- : `{space.${ref}}`;
868
- }
869
-
870
- const extensions: DesignerPunkExtensions = {
871
- family: 'accessibility',
872
- primitiveRefs: { value: ref },
873
- };
874
-
875
- group[key] = this.toDTCGToken(aliasValue, dtcgType, token.description, extensions);
876
- }
877
- return group;
878
- }
879
-
880
- /**
881
- * Generate progress color tokens with alias references to primitive colors.
882
- */
883
- private generateProgressColorTokens(): DTCGGroup {
884
- const group: DTCGGroup = { $type: 'color' };
885
- for (const [key, token] of Object.entries(progressColorTokens)) {
886
- const ref = token.primitiveReferences.value;
887
- const aliasValue = this.config.resolveAliases
888
- ? this.resolvePrimitiveColorAlias(ref)
889
- : `{color.${ref}}`;
890
-
891
- const extensions: DesignerPunkExtensions = {
892
- family: 'color',
893
- primitiveRefs: { value: ref },
894
- };
895
-
896
- group[key] = this.toDTCGToken(aliasValue, 'color', token.description, extensions);
897
- }
898
- return group;
899
- }
900
-
901
- /**
902
- * Resolve a primitive color alias to its actual value.
903
- * Used when resolveAliases is true.
904
- */
905
- private resolvePrimitiveColorAlias(primitiveName: string): string {
906
- const primitiveToken = (colorTokens as Record<string, PrimitiveToken>)[primitiveName];
907
- if (primitiveToken) {
908
- return this.resolveColorValue(primitiveToken, primitiveName);
909
- }
910
- // Fallback: return alias syntax if primitive not found
911
- return `{color.${primitiveName}}`;
912
- }
913
-
914
- /**
915
- * Resolve a primitive dimension alias to its actual `{value}px` value.
916
- * Used when resolveAliases is true.
917
- */
918
- private resolvePrimitiveDimensionAlias(primitiveName: string, registry: Record<string, PrimitiveToken>): string {
919
- const primitiveToken = registry[primitiveName];
920
- if (primitiveToken) {
921
- return `${primitiveToken.baseValue}px`;
922
- }
923
- // Fallback: return alias syntax if primitive not found
924
- return `{${primitiveName}}`;
925
- }
926
-
927
- /**
928
- * Resolve a primitive number alias to its actual numeric value.
929
- * Used when resolveAliases is true for unitless tokens (opacity, blend, etc.).
930
- */
931
- private resolvePrimitiveNumberAlias(primitiveName: string, registry: Record<string, PrimitiveToken>): number {
932
- const primitiveToken = registry[primitiveName];
933
- if (primitiveToken) {
934
- return primitiveToken.baseValue;
935
- }
936
- return 0;
937
- }
938
-
939
- // Shadow token generation (Task 2.4)
940
-
941
- /**
942
- * Generate shadow composition tokens as DTCG shadow type.
943
- *
944
- * Each semantic shadow token references primitives for offsetX, offsetY, blur,
945
- * opacity, and color. The generator resolves these primitives, merges color+opacity
946
- * into a single RGBA value (shadow opacity replaces color alpha per Design Decision 3),
947
- * and outputs a DTCG shadow composite value.
948
- *
949
- * @requirements 5.1-5.5
950
- */
951
- private generateShadowTokens(): DTCGGroup {
952
- const group: DTCGGroup = { $type: 'shadow' };
953
-
954
- for (const [key, token] of Object.entries(semanticShadowTokens)) {
955
- const refs = token.primitiveReferences;
956
-
957
- // Resolve primitive values
958
- const offsetXToken = this.resolveShadowPrimitive(refs.offsetX, shadowOffsetX);
959
- const offsetYToken = this.resolveShadowPrimitive(refs.offsetY, shadowOffsetY);
960
- const blurToken = this.resolveShadowPrimitive(refs.blur, blurTokens);
961
- const opacityToken = this.resolveShadowPrimitive(refs.opacity, shadowOpacityTokens);
962
- const colorToken = (colorTokens as Record<string, PrimitiveToken>)[refs.color];
963
-
964
- if (!offsetXToken || !offsetYToken || !blurToken || !opacityToken || !colorToken) {
965
- throw new Error(
966
- `Shadow token "${key}" has unresolvable primitive references. ` +
967
- `Missing: ${[
968
- !offsetXToken && `offsetX(${refs.offsetX})`,
969
- !offsetYToken && `offsetY(${refs.offsetY})`,
970
- !blurToken && `blur(${refs.blur})`,
971
- !opacityToken && `opacity(${refs.opacity})`,
972
- !colorToken && `color(${refs.color})`,
973
- ].filter(Boolean).join(', ')}`
974
- );
975
- }
976
-
977
- // Resolve color RGBA and merge with shadow opacity (replace alpha, don't multiply)
978
- const colorRgba = this.resolveColorValue(colorToken, `shadow.${key}.color`);
979
- const opacityValue = opacityToken.baseValue;
980
- const mergedColor = this.mergeShadowColor(colorRgba, opacityValue, key);
981
-
982
- // Build DTCG shadow composite value
983
- const shadowValue = {
984
- offsetX: `${offsetXToken.baseValue}px`,
985
- offsetY: `${offsetYToken.baseValue}px`,
986
- blur: `${blurToken.baseValue}px`,
987
- spread: '0px',
988
- color: mergedColor,
989
- };
990
-
991
- // Build extensions
992
- const extensions: DesignerPunkExtensions = {
993
- family: 'shadow',
994
- primitiveRefs: {
995
- offsetX: refs.offsetX,
996
- offsetY: refs.offsetY,
997
- blur: refs.blur,
998
- opacity: refs.opacity,
999
- color: refs.color,
1000
- },
1001
- };
1002
-
1003
- // Include Android elevation
1004
- if (token.platforms?.android?.elevation !== undefined) {
1005
- extensions.platforms = {
1006
- android: {
1007
- supported: true,
1008
- elevation: token.platforms.android.elevation,
1009
- },
1010
- };
1011
- }
1012
-
1013
- // Use dot-separated key for DTCG group (shadow.container → container)
1014
- const dtcgKey = key.startsWith('shadow.') ? key.slice('shadow.'.length) : key;
1015
- group[dtcgKey] = this.toDTCGToken(shadowValue, 'shadow', token.description, extensions);
1016
- }
1017
-
1018
- return group;
1019
- }
1020
-
1021
- /**
1022
- * Resolve a shadow primitive token from its registry.
1023
- * Handles dot-notation names (e.g., 'shadowOffsetX.000' → key '000').
1024
- */
1025
- private resolveShadowPrimitive(
1026
- tokenName: string,
1027
- registry: Record<string, PrimitiveToken>
1028
- ): PrimitiveToken | null {
1029
- // Try direct lookup first
1030
- if (registry[tokenName]) {
1031
- return registry[tokenName];
1032
- }
1033
- // Handle dot notation (e.g., 'shadowOffsetX.000' → '000')
1034
- const dotIndex = tokenName.lastIndexOf('.');
1035
- if (dotIndex !== -1) {
1036
- const shortKey = tokenName.slice(dotIndex + 1);
1037
- if (registry[shortKey]) {
1038
- return registry[shortKey];
1039
- }
1040
- }
1041
- return null;
1042
- }
1043
- /**
1044
- * Generate glow primitive tokens as individual DTCG tokens.
1045
- *
1046
- * Glow primitives (blur, opacity) are exported individually — composed glow tokens
1047
- * are not yet implemented. Glows share offset primitives with shadows (shadowOffsetX,
1048
- * shadowOffsetY) and use the same color primitives.
1049
- *
1050
- * All glow tokens include:
1051
- * - `$extensions.designerpunk.glowType: "emission"` — identifies glow effect type
1052
- * - `$extensions.designerpunk.status: "partial"` — composed glows not yet implemented
1053
- *
1054
- * @requirements 5.6, 5.7
1055
- */
1056
- private generateGlowTokens(): DTCGGroup {
1057
- const group: DTCGGroup = {
1058
- $description: 'Glow effect primitives. Composed glows not yet implemented — glows share offset primitives with shadows (shadowOffsetX, shadowOffsetY).',
1059
- };
1060
-
1061
- // Glow blur tokens → DTCG dimension type (blur050–blur250 from unified blur family)
1062
- const blur: DTCGGroup = { $type: 'dimension' };
1063
- const glowBlurRange = ['blur050', 'blur100', 'blur150', 'blur200', 'blur250'];
1064
- for (const key of glowBlurRange) {
1065
- const token = blurTokens[key];
1066
- if (!token) continue;
1067
- const extensions = this.buildPrimitiveExtensions(token, 'glow', BLUR_BASE_VALUE);
1068
- extensions.glowType = 'emission';
1069
- extensions.status = 'partial';
1070
- blur[key] = this.toDTCGToken(`${token.baseValue}px`, 'dimension', token.description, extensions);
1071
- }
1072
- group.blur = blur;
1073
-
1074
- // Glow opacity tokens → DTCG number type
1075
- const opacity: DTCGGroup = { $type: 'number' };
1076
- for (const [key, token] of Object.entries(glowOpacity)) {
1077
- const extensions = this.buildPrimitiveExtensions(token, 'glow', GLOW_OPACITY_BASE_VALUE);
1078
- extensions.glowType = 'emission';
1079
- extensions.status = 'partial';
1080
- opacity[key] = this.toDTCGToken(token.baseValue, 'number', token.description, extensions);
1081
- }
1082
- group.opacity = opacity;
1083
-
1084
- return group;
1085
- }
1086
-
1087
- /**
1088
- * Generate typography composition tokens as DTCG typography type.
1089
- *
1090
- * Typography tokens compose primitive references (fontFamily, fontSize, fontWeight,
1091
- * lineHeight, letterSpacing) into DTCG typography composite values using alias syntax.
1092
- *
1093
- * @requirements 6.1, 6.5
1094
- */
1095
- private generateTypographyTokens(): DTCGGroup {
1096
- const group: DTCGGroup = { $type: 'typography' };
1097
-
1098
- for (const [key, token] of Object.entries(typographyTokens)) {
1099
- const refs = token.primitiveReferences;
1100
-
1101
- // Build DTCG typography composite value — resolve or alias based on config
1102
- let typographyValue: Record<string, unknown>;
1103
- if (this.config.resolveAliases) {
1104
- const ffToken = (fontFamilyTokens as Record<string, PrimitiveToken>)[refs.fontFamily];
1105
- const fontStack = ffToken ? String(ffToken.platforms.web.value) : refs.fontFamily;
1106
- const families = fontStack.split(',').map(f => f.trim().replace(/^["']|["']$/g, ''));
1107
-
1108
- typographyValue = {
1109
- fontFamily: families,
1110
- fontSize: this.resolvePrimitiveDimensionAlias(refs.fontSize, fontSizeTokens),
1111
- fontWeight: (fontWeightTokens as Record<string, PrimitiveToken>)[refs.fontWeight]?.baseValue ?? refs.fontWeight,
1112
- lineHeight: (lineHeightTokens as Record<string, PrimitiveToken>)[refs.lineHeight]?.baseValue ?? refs.lineHeight,
1113
- letterSpacing: (letterSpacingTokens as Record<string, PrimitiveToken>)[refs.letterSpacing]
1114
- ? `${(letterSpacingTokens as Record<string, PrimitiveToken>)[refs.letterSpacing].baseValue}em`
1115
- : refs.letterSpacing,
1116
- };
1117
- } else {
1118
- typographyValue = {
1119
- fontFamily: `{fontFamily.${refs.fontFamily}}`,
1120
- fontSize: `{fontSize.${refs.fontSize}}`,
1121
- fontWeight: `{fontWeight.${refs.fontWeight}}`,
1122
- lineHeight: `{lineHeight.${refs.lineHeight}}`,
1123
- letterSpacing: `{letterSpacing.${refs.letterSpacing}}`,
1124
- };
1125
- }
1126
-
1127
- // Build extensions with primitive references
1128
- const extensions: DesignerPunkExtensions = {
1129
- family: 'typography',
1130
- primitiveRefs: { ...refs },
1131
- };
1132
-
1133
- // Use dot-separated key for DTCG group (typography.bodyMd → bodyMd)
1134
- const dtcgKey = key.startsWith('typography.') ? key.slice('typography.'.length) : key;
1135
- group[dtcgKey] = this.toDTCGToken(typographyValue, 'typography', token.description, extensions);
1136
- }
1137
-
1138
- return group;
1139
- }
1140
-
1141
- /**
1142
- * Generate motion composition tokens as DTCG transition type.
1143
- *
1144
- * Motion tokens compose primitive duration and easing references into DTCG transition
1145
- * composite values. Delay defaults to '0ms' when not defined. Scale is included in
1146
- * extensions when present.
1147
- *
1148
- * @requirements 6.2, 6.3, 6.4, 6.5
1149
- */
1150
- private generateMotionTokens(): DTCGGroup {
1151
- const group: DTCGGroup = { $type: 'transition' };
1152
-
1153
- for (const [key, token] of Object.entries(semanticMotionTokens)) {
1154
- const refs = token.primitiveReferences;
1155
-
1156
- // Build DTCG transition composite value — resolve or alias based on config
1157
- let transitionValue: Record<string, unknown>;
1158
- if (this.config.resolveAliases) {
1159
- const durToken = (durationTokens as Record<string, PrimitiveToken>)[refs.duration];
1160
- const easToken = (easingTokens as Record<string, PrimitiveToken>)[refs.easing];
1161
-
1162
- // Resolve easing to cubicBezier array
1163
- let timingFunction: unknown = refs.easing;
1164
- if (easToken) {
1165
- const bezierStr = String(easToken.platforms.web.value);
1166
- const match = bezierStr.match(/cubic-bezier\(\s*([\d.]+)\s*,\s*([\d.]+)\s*,\s*([\d.]+)\s*,\s*([\d.]+)\s*\)/);
1167
- if (match) {
1168
- timingFunction = [parseFloat(match[1]), parseFloat(match[2]), parseFloat(match[3]), parseFloat(match[4])];
1169
- }
1170
- }
1171
-
1172
- transitionValue = {
1173
- duration: durToken ? `${durToken.baseValue}ms` : `{duration.${refs.duration}}`,
1174
- timingFunction,
1175
- delay: '0ms',
1176
- };
1177
- } else {
1178
- transitionValue = {
1179
- duration: `{duration.${refs.duration}}`,
1180
- timingFunction: `{easing.${refs.easing}}`,
1181
- delay: '0ms',
1182
- };
1183
- }
1184
-
1185
- // Build extensions with primitive references
1186
- const extensions: DesignerPunkExtensions = {
1187
- family: 'motion',
1188
- primitiveRefs: {
1189
- duration: refs.duration,
1190
- easing: refs.easing,
1191
- },
1192
- };
1193
-
1194
- // Include scale in extensions when present (Requirement 6.4)
1195
- if (refs.scale) {
1196
- extensions.primitiveRefs!.scale = refs.scale;
1197
- (extensions as Record<string, unknown>).scale = this.config.resolveAliases
1198
- ? (scaleTokens as Record<string, PrimitiveToken>)[refs.scale]?.baseValue ?? `{scale.${refs.scale}}`
1199
- : `{scale.${refs.scale}}`;
1200
- }
1201
-
1202
- // Use dot-separated key for DTCG group (motion.floatLabel → floatLabel)
1203
- const dtcgKey = key.startsWith('motion.') ? key.slice('motion.'.length) : key;
1204
- group[dtcgKey] = this.toDTCGToken(transitionValue, 'transition', token.description, extensions);
1205
- }
1206
-
1207
- return group;
1208
- }
1209
-
1210
- // ---------------------------------------------------------------------------
1211
- // Shared helpers for primitive token generation
1212
- // ---------------------------------------------------------------------------
1213
-
1214
- /**
1215
- * Generate a DTCG group of dimension tokens from a record of PrimitiveTokens.
1216
- * Converts baseValue to `{value}px` format.
1217
- */
1218
- private generateDimensionGroup(
1219
- tokens: Record<string, PrimitiveToken>,
1220
- family: string,
1221
- familyBase?: number
1222
- ): DTCGGroup {
1223
- const group: DTCGGroup = { $type: 'dimension' };
1224
- for (const [key, token] of Object.entries(tokens)) {
1225
- const extensions = this.buildPrimitiveExtensions(token, family, familyBase);
1226
- group[key] = this.toDTCGToken(`${token.baseValue}px`, 'dimension', token.description, extensions);
1227
- }
1228
- return group;
1229
- }
1230
-
1231
- /**
1232
- * Resolve a color token's RGBA value from its mode/theme structure.
1233
- * Uses light.base as the default resolved value for DTCG output.
1234
- *
1235
- * @param token - The primitive color token to resolve
1236
- * @param tokenName - Optional token name for error messages
1237
- * @returns Resolved color string (e.g., "rgba(255, 0, 0, 1)")
1238
- * @throws Error if the resolved color value is not a valid color format
1239
- */
1240
- private resolveColorValue(token: PrimitiveToken, tokenName?: string): string {
1241
- const webValue = token.platforms.web.value;
1242
- let resolved: string;
1243
- if (typeof webValue === 'string') {
1244
- resolved = webValue;
1245
- } else {
1246
- // ColorTokenValue structure: { light: { base, wcag }, dark: { base, wcag } }
1247
- const colorVal = webValue as ColorTokenValue;
1248
- resolved = colorVal.light.base;
1249
- }
1250
-
1251
- // Validate the resolved color is a recognizable format
1252
- if (!resolved || typeof resolved !== 'string') {
1253
- const name = tokenName || token.name || 'unknown';
1254
- throw new Error(
1255
- `Invalid token value for "${name}": ${String(resolved)}. Expected valid color format (hex, rgb, rgba).`
1256
- );
1257
- }
1258
-
1259
- const isValidColor =
1260
- /^#([0-9A-Fa-f]{3}|[0-9A-Fa-f]{6}|[0-9A-Fa-f]{8})$/.test(resolved) ||
1261
- /^rgba?\(\s*\d+\s*,\s*\d+\s*,\s*\d+\s*(,\s*[\d.]+\s*)?\)$/.test(resolved);
1262
-
1263
- if (!isValidColor) {
1264
- const name = tokenName || token.name || 'unknown';
1265
- throw new Error(
1266
- `Invalid token value for "${name}": ${resolved}. Expected valid color format (hex, rgb, rgba).`
1267
- );
1268
- }
1269
-
1270
- return resolved;
1271
- }
1272
-
1273
- /**
1274
- * Build DesignerPunk extension metadata for a primitive token.
1275
- * Includes formula, family, and baseValue when includeExtensions is true.
1276
- */
1277
- private buildPrimitiveExtensions(
1278
- token: PrimitiveToken,
1279
- family: string,
1280
- familyBase?: number
1281
- ): DesignerPunkExtensions {
1282
- const ext: DesignerPunkExtensions = {
1283
- formula: token.mathematicalRelationship,
1284
- family,
1285
- };
1286
- if (familyBase !== undefined && familyBase !== 0) {
1287
- ext.baseValue = familyBase;
1288
- }
1289
- return ext;
1290
- }
1291
-
1292
- /**
1293
- * Merge shadow color and opacity into a single RGBA value.
1294
- *
1295
- * Replaces the color's alpha channel with the shadow's opacity value
1296
- * (does NOT multiply). Shadow opacity is authoritative per Design Decision 3.
1297
- *
1298
- * @param colorRgba - Color in rgba(r, g, b, a) format
1299
- * @param opacity - Shadow opacity value (0–1)
1300
- * @param shadowName - Optional shadow token name for error messages
1301
- * @returns Merged rgba string with shadow opacity as alpha
1302
- * @throws Error if colorRgba is not in valid rgba format
1303
- */
1304
- mergeShadowColor(colorRgba: string, opacity: number, shadowName?: string): string {
1305
- const match = colorRgba.match(/^rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*[\d.eE+-]+\s*)?\)$/);
1306
- if (!match) {
1307
- const context = shadowName ? ` for "${shadowName}"` : '';
1308
- throw new Error(
1309
- `Shadow color merge failed${context}: ${colorRgba}. Expected rgba(r, g, b, a) format.`
1310
- );
1311
- }
1312
- const [, r, g, b] = match;
1313
- return `rgba(${r}, ${g}, ${b}, ${opacity})`;
1314
- }
1315
-
1316
- /**
1317
- * Convert a Rosetta primitive token to a DTCG token with optional extensions.
1318
- *
1319
- * @param value - The token value in DTCG format
1320
- * @param type - The DTCG type for this token
1321
- * @param description - Optional token description
1322
- * @param extensions - Optional DesignerPunk extension metadata
1323
- * @returns A DTCGToken object
1324
- * @throws Error if the type is not a valid DTCG type
1325
- */
1326
- toDTCGToken(
1327
- value: unknown,
1328
- type: DTCGType,
1329
- description?: string,
1330
- extensions?: DesignerPunkExtensions
1331
- ): DTCGToken {
1332
- // Validate DTCG type
1333
- if (!VALID_DTCG_TYPES.has(type)) {
1334
- throw new Error(
1335
- `Invalid token type: "${type}". No DTCG mapping exists. ` +
1336
- `Valid types: ${Array.from(VALID_DTCG_TYPES).join(', ')}.`
1337
- );
1338
- }
1339
-
1340
- const token: DTCGToken = {
1341
- $value: value,
1342
- $type: type,
1343
- };
1344
-
1345
- if (description) {
1346
- token.$description = description;
1347
- }
1348
-
1349
- if (this.config.includeExtensions && extensions && Object.keys(extensions).length > 0) {
1350
- token.$extensions = { designerpunk: extensions };
1351
- }
1352
-
1353
- return token;
1354
- }
1355
- }