@3fn/core 14.1.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.
- package/.kiro/steering/AI-Collaboration-Principles.md +9 -3
- package/.kiro/steering/Agent-Directory.md +31 -7
- package/.kiro/steering/Civitas-System-Overview.md +3 -3
- package/.kiro/steering/DesignerPunk-Systems-Overview.md +3 -3
- package/.kiro/steering/Task-Completion-Protocol.md +12 -11
- package/.kiro/steering/start-up-tasks.md +12 -4
- package/CHANGELOG.md +74 -0
- package/README.md +26 -21
- package/application-mcp-server/src/__tests__/consumerRootLiveReindex.test.ts +118 -0
- package/application-mcp-server/src/__tests__/errorCatalogWiring.test.ts +73 -0
- package/application-mcp-server/src/__tests__/mcpDataRootsDeclaration.test.ts +107 -0
- package/application-mcp-server/src/__tests__/tool-boundary.contract.test.ts +55 -0
- package/application-mcp-server/src/index.ts +249 -59
- package/application-mcp-server/src/indexer/ComponentIndexer.ts +273 -46
- package/application-mcp-server/src/indexer/ModeClassifier.ts +23 -16
- package/application-mcp-server/src/indexer/SemanticOverrideReader.ts +113 -0
- package/application-mcp-server/src/indexer/TokenIndexer.ts +195 -3
- package/application-mcp-server/src/indexer/__tests__/MultiRootIndexing.test.ts +134 -0
- package/application-mcp-server/src/indexer/__tests__/ThemeResolution.test.ts +241 -0
- package/application-mcp-server/src/indexer/__tests__/ThemeRootFollowsIndex.test.ts +216 -0
- package/application-mcp-server/src/indexer/__tests__/fixtures/consumerFixture.ts +84 -0
- package/application-mcp-server/src/indexer/resolveThemeTierRoot.ts +61 -0
- package/application-mcp-server/src/watcher/FileWatcher.ts +20 -7
- package/dist/ComponentTokens.android.kt +1 -1
- package/dist/ComponentTokens.ios.swift +1 -1
- package/dist/ComponentTokens.web.css +1 -1
- package/dist/DesignTokens.android.kt +1 -5
- package/dist/DesignTokens.dtcg.json +388 -122
- package/dist/DesignTokens.figma.json +281 -941
- package/dist/DesignTokens.ios.swift +1 -5
- package/dist/DesignTokens.web.css +5 -5
- package/dist/browser/designerpunk.esm.js +160 -94
- package/dist/browser/designerpunk.esm.min.js +58 -55
- package/dist/browser/designerpunk.umd.js +160 -94
- package/dist/browser/designerpunk.umd.min.js +57 -54
- package/dist/browser/tokens.css +5 -5
- package/dist/build/platforms/AndroidMotionTokenFormatter.d.ts +101 -0
- package/dist/build/platforms/AndroidMotionTokenFormatter.js +220 -0
- package/dist/build/platforms/WebMotionTokenFormatter.d.ts +85 -0
- package/dist/build/platforms/WebMotionTokenFormatter.js +167 -0
- package/dist/build/platforms/iOSMotionTokenFormatter.d.ts +99 -0
- package/dist/build/platforms/iOSMotionTokenFormatter.js +221 -0
- package/dist/build/validation/index.d.ts +0 -4
- package/dist/build/validation/index.js +1 -8
- package/dist/cli/attach.d.ts +153 -0
- package/dist/cli/attach.js +423 -0
- package/dist/cli/designerpunk.d.ts +46 -0
- package/dist/cli/designerpunk.js +171 -34
- package/dist/cli/figma-extract.js +10 -1
- package/dist/cli/figma-push.js +11 -2
- package/dist/cli/init.d.ts +36 -5
- package/dist/cli/init.js +348 -143
- package/dist/cli/loadComponentTokens.d.ts +25 -0
- package/dist/cli/loadComponentTokens.js +87 -8
- package/dist/cli/shared/bornRepo.d.ts +50 -0
- package/dist/cli/shared/bornRepo.js +199 -0
- package/dist/cli/shared/errorCatalog.d.ts +130 -0
- package/dist/cli/shared/errorCatalog.js +148 -0
- package/dist/cli/shared/mcpConfig/cc.d.ts +25 -0
- package/dist/cli/shared/mcpConfig/cc.js +156 -0
- package/dist/cli/shared/mcpConfig/kiro.d.ts +53 -0
- package/dist/cli/shared/mcpConfig/kiro.js +140 -0
- package/dist/cli/shared/mcpDataRoots.d.ts +88 -1
- package/dist/cli/shared/mcpDataRoots.js +76 -2
- package/dist/cli/shared/transforms.d.ts +64 -0
- package/dist/cli/shared/transforms.js +138 -0
- package/dist/cli/shared/vocabulary.d.ts +50 -0
- package/dist/cli/shared/vocabulary.js +62 -0
- package/dist/cli/sync/Applier.d.ts +25 -26
- package/dist/cli/sync/Applier.js +37 -73
- package/dist/cli/sync/Classifier.d.ts +70 -6
- package/dist/cli/sync/Classifier.js +123 -84
- package/dist/cli/sync/FileScanner.d.ts +19 -10
- package/dist/cli/sync/FileScanner.js +33 -25
- package/dist/cli/sync/KeyGrain.d.ts +106 -0
- package/dist/cli/sync/KeyGrain.js +301 -0
- package/dist/cli/sync/Manifest.d.ts +147 -12
- package/dist/cli/sync/Manifest.js +276 -21
- package/dist/cli/sync/Migration.d.ts +271 -0
- package/dist/cli/sync/Migration.js +764 -0
- package/dist/cli/sync/NameContract.d.ts +169 -0
- package/dist/cli/sync/NameContract.js +246 -0
- package/dist/cli/sync/RegionGrain.d.ts +118 -0
- package/dist/cli/sync/RegionGrain.js +167 -0
- package/dist/cli/sync/Reporter.d.ts +33 -4
- package/dist/cli/sync/Reporter.js +112 -53
- package/dist/cli/sync/SteeringDirCheck.d.ts +32 -4
- package/dist/cli/sync/SteeringDirCheck.js +62 -14
- package/dist/cli/sync/index.d.ts +125 -6
- package/dist/cli/sync/index.js +716 -66
- package/dist/color/OklchValidator.d.ts +43 -3
- package/dist/color/OklchValidator.js +46 -8
- package/dist/components/core/Button-CTA/Button-CTA.refs.d.ts +83 -0
- package/dist/components/core/Button-CTA/Button-CTA.refs.js +86 -0
- package/dist/components/core/Button-CTA/Button-CTA.tokens.d.ts +20 -10
- package/dist/components/core/Button-CTA/Button-CTA.tokens.js +21 -10
- package/dist/components/core/Button-CTA/index.d.ts +2 -2
- package/dist/components/core/Button-CTA/index.js +3 -3
- package/dist/components/core/Button-VerticalList-Item/platforms/web/ButtonVerticalListItem.web.d.ts +11 -30
- package/dist/components/core/Button-VerticalList-Item/platforms/web/ButtonVerticalListItem.web.js +16 -49
- package/dist/components/core/Container-Base/Container-Base.refs.d.ts +181 -0
- package/dist/components/core/Container-Base/Container-Base.refs.js +223 -0
- package/dist/components/core/Container-Base/index.d.ts +2 -2
- package/dist/components/core/Container-Base/index.js +10 -10
- package/dist/components/core/Container-Base/platforms/web/ContainerBase.web.js +1 -1
- package/dist/components/core/Container-Base/platforms/web/token-mapping.d.ts +27 -9
- package/dist/components/core/Container-Base/platforms/web/token-mapping.js +50 -22
- package/dist/components/core/Container-Card-Base/Container-Card-Base.refs.d.ts +149 -0
- package/dist/components/core/Container-Card-Base/Container-Card-Base.refs.js +207 -0
- package/dist/components/core/Container-Card-Base/index.d.ts +1 -1
- package/dist/components/core/Container-Card-Base/index.js +19 -19
- package/dist/components/core/Container-Card-Base/platforms/web/ContainerCardBase.web.js +7 -6
- package/dist/components/core/Input-Radio-Base/platforms/web/InputRadioBase.web.d.ts +15 -0
- package/dist/components/core/Input-Radio-Base/platforms/web/InputRadioBase.web.js +41 -1
- package/dist/components/core/Input-Text-Base/Input-Text-Base.refs.d.ts +331 -0
- package/dist/components/core/Input-Text-Base/Input-Text-Base.refs.js +164 -0
- package/dist/components/core/Input-Text-Base/platforms/web/InputTextBase.web.js +1 -1
- package/dist/components/core/Input-Text-Email/Input-Text-Email.refs.d.ts +20 -0
- package/dist/components/core/Input-Text-Email/Input-Text-Email.refs.js +34 -0
- package/dist/components/core/Input-Text-Password/Input-Text-Password.refs.d.ts +20 -0
- package/dist/components/core/Input-Text-Password/Input-Text-Password.refs.js +34 -0
- package/dist/components/core/Input-Text-Password/platforms/web/InputTextPassword.web.d.ts +30 -0
- package/dist/components/core/Input-Text-Password/platforms/web/InputTextPassword.web.js +72 -3
- package/dist/components/core/Input-Text-PhoneNumber/Input-Text-PhoneNumber.refs.d.ts +20 -0
- package/dist/components/core/Input-Text-PhoneNumber/Input-Text-PhoneNumber.refs.js +34 -0
- package/dist/consumer-canonical/agents/ada.md +331 -0
- package/dist/consumer-canonical/agents/data.md +429 -0
- package/dist/consumer-canonical/agents/kenya.md +400 -0
- package/dist/consumer-canonical/agents/leonardo.md +524 -0
- package/dist/consumer-canonical/agents/lina.md +501 -0
- package/dist/consumer-canonical/agents/sparky.md +395 -0
- package/dist/consumer-canonical/agents/stacy.md +515 -0
- package/dist/consumer-canonical/agents/thurgood.md +463 -0
- package/dist/consumer-canonical/always-set/agent-directory.dispositions.yaml +21 -0
- package/dist/consumer-canonical/always-set/agent-directory.overlay.md +51 -0
- package/dist/consumer-canonical/always-set/ai-collaboration-principles.dispositions.yaml +15 -0
- package/dist/consumer-canonical/always-set/ai-collaboration-principles.overlay.md +26 -0
- package/dist/consumer-canonical/always-set/civitas-system-overview.dispositions.yaml +15 -0
- package/dist/consumer-canonical/always-set/civitas-system-overview.overlay.md +70 -0
- package/dist/consumer-canonical/always-set/core-goals.dispositions.yaml +9 -0
- package/dist/consumer-canonical/always-set/core-goals.overlay.md +74 -0
- package/dist/consumer-canonical/always-set/designerpunk-systems-overview.dispositions.yaml +16 -0
- package/dist/consumer-canonical/always-set/designerpunk-systems-overview.overlay.md +44 -0
- package/dist/consumer-canonical/always-set/spec-feedback-protocol.dispositions.yaml +21 -0
- package/dist/consumer-canonical/always-set/spec-feedback-protocol.overlay.md +44 -0
- package/dist/consumer-canonical/always-set/start-up-tasks.dispositions.yaml +15 -0
- package/dist/consumer-canonical/always-set/start-up-tasks.overlay.md +25 -0
- package/dist/consumer-canonical/always-set/task-completion-protocol.dispositions.yaml +19 -0
- package/dist/consumer-canonical/always-set/task-completion-protocol.overlay.md +116 -0
- package/dist/consumer-canonical/consumer-profile.yaml +9 -0
- package/dist/consumer-canonical/shared/always-set.yaml +113 -0
- package/dist/consumer-canonical/shared/field-dispositions.yaml +85 -0
- package/dist/consumer-canonical/shared/shared-catalog.yaml +19 -0
- package/dist/consumer-canonical/shared/skills-map.yaml +33 -0
- package/dist/consumer-canonical/skills/adaptive/SKILL.md +301 -0
- package/dist/consumer-canonical/skills/adaptive/references/android/develop/ui/compose/layouts/adaptive/flexbox/container-behavior.md +112 -0
- package/dist/consumer-canonical/skills/adaptive/references/android/develop/ui/compose/layouts/adaptive/flexbox/get-started.md +69 -0
- package/dist/consumer-canonical/skills/adaptive/references/android/develop/ui/compose/layouts/adaptive/flexbox/index.md +81 -0
- package/dist/consumer-canonical/skills/adaptive/references/android/develop/ui/compose/layouts/adaptive/flexbox/item-behavior.md +170 -0
- package/dist/consumer-canonical/skills/adaptive/references/android/develop/ui/compose/layouts/adaptive/grid/container-properties.md +238 -0
- package/dist/consumer-canonical/skills/adaptive/references/android/develop/ui/compose/layouts/adaptive/grid/get-started.md +51 -0
- package/dist/consumer-canonical/skills/adaptive/references/android/develop/ui/compose/layouts/adaptive/grid/index.md +73 -0
- package/dist/consumer-canonical/skills/adaptive/references/android/develop/ui/compose/layouts/adaptive/grid/item-properties.md +168 -0
- package/dist/consumer-canonical/skills/adaptive/references/android/develop/ui/compose/layouts/adaptive/mediaquery/index.md +329 -0
- package/dist/consumer-canonical/skills/adaptive/references/android/develop/ui/compose/tooling/debug.md +114 -0
- package/dist/consumer-canonical/skills/adaptive/references/android/guide/navigation/navigation-3/recipes/material-listdetail.md +141 -0
- package/dist/consumer-canonical/skills/edge-to-edge/SKILL.md +426 -0
- package/dist/consumer-canonical/skills/impeccable/SKILL.md +237 -0
- package/dist/consumer-canonical/skills/impeccable/detector-exclusions.md +42 -0
- package/dist/consumer-canonical/skills/impeccable/reference/adapt.md +190 -0
- package/dist/consumer-canonical/skills/impeccable/reference/animate.md +194 -0
- package/dist/consumer-canonical/skills/impeccable/reference/audit.md +150 -0
- package/dist/consumer-canonical/skills/impeccable/reference/bolder.md +113 -0
- package/dist/consumer-canonical/skills/impeccable/reference/brand-dp.md +103 -0
- package/dist/consumer-canonical/skills/impeccable/reference/clarify.md +174 -0
- package/dist/consumer-canonical/skills/impeccable/reference/codex.md +105 -0
- package/dist/consumer-canonical/skills/impeccable/reference/cognitive-load.md +106 -0
- package/dist/consumer-canonical/skills/impeccable/reference/color-and-contrast.md +122 -0
- package/dist/consumer-canonical/skills/impeccable/reference/colorize.md +155 -0
- package/dist/consumer-canonical/skills/impeccable/reference/craft.md +123 -0
- package/dist/consumer-canonical/skills/impeccable/reference/critique.md +245 -0
- package/dist/consumer-canonical/skills/impeccable/reference/delight.md +302 -0
- package/dist/consumer-canonical/skills/impeccable/reference/distill.md +111 -0
- package/dist/consumer-canonical/skills/impeccable/reference/extract-dp.md +43 -0
- package/dist/consumer-canonical/skills/impeccable/reference/harden.md +347 -0
- package/dist/consumer-canonical/skills/impeccable/reference/heuristics-scoring.md +234 -0
- package/dist/consumer-canonical/skills/impeccable/reference/interaction-design.md +195 -0
- package/dist/consumer-canonical/skills/impeccable/reference/layout.md +141 -0
- package/dist/consumer-canonical/skills/impeccable/reference/live.md +622 -0
- package/dist/consumer-canonical/skills/impeccable/reference/motion-design.md +109 -0
- package/dist/consumer-canonical/skills/impeccable/reference/onboard.md +234 -0
- package/dist/consumer-canonical/skills/impeccable/reference/optimize.md +258 -0
- package/dist/consumer-canonical/skills/impeccable/reference/overdrive.md +130 -0
- package/dist/consumer-canonical/skills/impeccable/reference/personas.md +179 -0
- package/dist/consumer-canonical/skills/impeccable/reference/polish.md +242 -0
- package/dist/consumer-canonical/skills/impeccable/reference/product-dp.md +79 -0
- package/dist/consumer-canonical/skills/impeccable/reference/quieter.md +99 -0
- package/dist/consumer-canonical/skills/impeccable/reference/responsive-design.md +114 -0
- package/dist/consumer-canonical/skills/impeccable/reference/shape.md +165 -0
- package/dist/consumer-canonical/skills/impeccable/reference/spatial-design.md +100 -0
- package/dist/consumer-canonical/skills/impeccable/reference/typeset.md +126 -0
- package/dist/consumer-canonical/skills/impeccable/reference/typography.md +159 -0
- package/dist/consumer-canonical/skills/impeccable/reference/ux-writing.md +107 -0
- package/dist/consumer-canonical/skills/impeccable/scripts/detect.mjs +21 -0
- package/dist/consumer-canonical/skills/impeccable/scripts/detector/browser/injected/index.mjs +1725 -0
- package/dist/consumer-canonical/skills/impeccable/scripts/detector/cli/main.mjs +244 -0
- package/dist/consumer-canonical/skills/impeccable/scripts/detector/detect-antipatterns-browser.js +4567 -0
- package/dist/consumer-canonical/skills/impeccable/scripts/detector/detect-antipatterns.mjs +43 -0
- package/dist/consumer-canonical/skills/impeccable/scripts/detector/engines/browser/detect-url.mjs +252 -0
- package/dist/consumer-canonical/skills/impeccable/scripts/detector/engines/regex/detect-text.mjs +535 -0
- package/dist/consumer-canonical/skills/impeccable/scripts/detector/engines/static-html/css-cascade.mjs +986 -0
- package/dist/consumer-canonical/skills/impeccable/scripts/detector/engines/static-html/detect-html.mjs +208 -0
- package/dist/consumer-canonical/skills/impeccable/scripts/detector/engines/visual/screenshot-contrast.mjs +189 -0
- package/dist/consumer-canonical/skills/impeccable/scripts/detector/findings.mjs +12 -0
- package/dist/consumer-canonical/skills/impeccable/scripts/detector/node/file-system.mjs +198 -0
- package/dist/consumer-canonical/skills/impeccable/scripts/detector/profile/profiler.mjs +166 -0
- package/dist/consumer-canonical/skills/impeccable/scripts/detector/registry/antipatterns.mjs +419 -0
- package/dist/consumer-canonical/skills/impeccable/scripts/detector/rules/checks.mjs +2316 -0
- package/dist/consumer-canonical/skills/impeccable/scripts/detector/shared/color.mjs +156 -0
- package/dist/consumer-canonical/skills/impeccable/scripts/detector/shared/constants.mjs +101 -0
- package/dist/consumer-canonical/skills/impeccable/scripts/detector/shared/page.mjs +7 -0
- package/dist/consumer-canonical/skills/navigation-3/SKILL.md +110 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/index.md +38 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/migration-guide.md +498 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/animations.md +147 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/basic.md +89 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/basicdsl.md +85 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/basicsaveable.md +90 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/bottomsheet.md +195 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/common-ui.md +200 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/conditional.md +230 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/deeplinks-advanced.md +155 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/deeplinks-basic.md +744 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/dialog.md +107 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/material-listdetail.md +141 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/material-supportingpane.md +145 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/modular-hilt.md +283 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/modular-koin.md +287 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/multiple-backstacks.md +436 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/passingarguments.md +371 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/results-event.md +272 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/results-state.md +266 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/scenes-listdetail.md +435 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/navigation-3/recipes/scenes-twopane.md +244 -0
- package/dist/consumer-canonical/skills/navigation-3/references/android/guide/navigation/type-safe-destinations.md +129 -0
- package/dist/consumer-canonical/skills/theming-styles/SKILL.md +220 -0
- package/dist/consumer-canonical/skills/theming-styles/references/android/develop/ui/compose/designsystems/custom.md +459 -0
- package/dist/consumer-canonical/skills/theming-styles/references/android/develop/ui/compose/styles/fundamentals.md +420 -0
- package/dist/consumer-canonical/skills/theming-styles/references/android/develop/ui/compose/styles/state-animations.md +461 -0
- package/dist/consumer-canonical/skills/theming-styles/references/android/develop/ui/compose/styles/styles-vs-modifiers.md +48 -0
- package/dist/consumer-canonical/skills/theming-styles/references/android/develop/ui/compose/styles/theming.md +257 -0
- package/dist/generator/consumer-entry.js +5939 -0
- package/dist/generators/DTCGFormatGenerator.d.ts +14 -4
- package/dist/generators/DTCGFormatGenerator.js +35 -18
- package/dist/generators/TokenFileGenerator.js +13 -13
- package/dist/generators/generateTokenIndex.d.ts +14 -0
- package/dist/generators/generateTokenIndex.js +23 -0
- package/dist/generators/transformers/FigmaTransformer.d.ts +35 -0
- package/dist/generators/transformers/FigmaTransformer.js +101 -13
- package/dist/generators/types/DTCGTypes.d.ts +10 -0
- package/dist/mcp/application-mcp.js +1062 -261
- package/dist/mcp/docs-mcp.js +93 -13
- package/dist/mcp/product-mcp.js +539 -41
- package/dist/mcp/tool-manifest.json +184 -0
- package/dist/name-contract.json +4283 -0
- package/dist/tokens/BlurTokens.d.ts +3 -1
- package/dist/tokens/BlurTokens.js +6 -4
- package/dist/tokens/ShadowOffsetTokens.js +14 -14
- package/dist/tokens/SizingTokens.js +3 -3
- package/dist/tokens/TapAreaTokens.d.ts +13 -2
- package/dist/tokens/TapAreaTokens.js +19 -8
- package/dist/tokens/semantic/ColorTokens.js +50 -5
- package/dist/tokens/semantic/TypographyTokens.js +10 -10
- package/dist/tokens/themes/dark/SemanticOverrides.js +21 -4
- package/dist/tools/integrity/Invariants.d.ts +23 -8
- package/dist/tools/integrity/Invariants.js +27 -8
- package/dist/tools/integrity/cli/run-audit.js +1 -1
- package/dist/types/PrimitiveToken.d.ts +15 -1
- package/dist/types/generated/TokenTypes.d.ts +1 -1
- package/dist/types/generated/TokenTypes.js +1 -1
- package/dist/types/index.d.ts +1 -0
- package/governance/AI-Collaboration-Framework.md +19 -10
- package/governance/Component-Family-Navigation.md +2 -2
- package/governance/DTCG-Integration-Guide.md +63 -36
- package/governance/DesignerPunk-Integration-Guide.md +57 -61
- package/governance/Figma-Workflow-Guide.md +15 -8
- package/governance/Process-Integration-Methodology.md +5 -5
- package/governance/Process-Spec-Planning.md +179 -54
- package/governance/Product-Handoff-Protocol.md +27 -2
- package/governance/Test-Behavioral-Contract-Validation.md +5 -0
- package/governance/Test-Development-Standards.md +4 -4
- package/governance/Token-Family-Accessibility.md +18 -14
- package/governance/Token-Family-Blend.md +5 -4
- package/governance/Token-Family-Blur.md +8 -8
- package/governance/Token-Family-Color.md +40 -22
- package/governance/Token-Family-Glow.md +26 -24
- package/governance/Token-Family-Layering.md +1 -0
- package/governance/Token-Family-Motion.md +22 -13
- package/governance/Token-Family-Opacity.md +20 -34
- package/governance/Token-Family-Radius.md +4 -2
- package/governance/Token-Family-Responsive.md +4 -4
- package/governance/Token-Family-Shadow.md +69 -46
- package/governance/Token-Family-Spacing.md +22 -12
- package/governance/Token-Family-Typography.md +86 -85
- package/governance/Token-Governance.md +5 -1
- package/governance/Token-Quick-Reference.md +67 -63
- package/governance/Transformer-Development-Guide.md +5 -4
- package/governance/classification-map.md +597 -7
- package/governance/completion-documentation-guide.md +284 -2
- package/governance/platform-implementation-guidelines.md +2 -1
- package/mcp-server/src/index.ts +16 -12
- package/mcp-server/src/relocation-integrity-gate/__tests__/relocation-integrity-gate.test.ts +3 -3
- package/mcp-server/src/relocation-integrity-gate/relocation-integrity-gate.ts +70 -49
- package/mcp-server/src/tools/find-docs.ts +1 -0
- package/mcp-server/src/tools/get-document-full.ts +1 -0
- package/mcp-server/src/tools/get-document-summary.ts +1 -0
- package/mcp-server/src/tools/get-index-health.ts +1 -0
- package/mcp-server/src/tools/get-section.ts +1 -0
- package/mcp-server/src/tools/list-cross-references.ts +1 -0
- package/mcp-server/src/tools/rebuild-index.ts +1 -0
- package/mcp-server/src/tools/validate-metadata.ts +1 -0
- package/package.json +75 -11
- package/src/cli/templates/mcp-config.json.template +15 -20
- package/src/components/core/Avatar-Base/platforms/android/AvatarPreview.kt +9 -2
- package/src/components/core/Container-Base/Container-Base.schema.yaml +9 -11
- package/src/components/core/Container-Base/platforms/android/ContainerBase.android.kt +5 -5
- package/src/components/core/Container-Base/platforms/ios/ContainerBase.ios.swift +5 -5
- package/src/components/core/Container-Card-Base/platforms/android/ContainerCardBase.android.kt +3 -3
- package/src/components/core/Container-Card-Base/platforms/ios/ContainerCardBase.ios.swift +2 -2
- package/src/components/core/Nav-Header-App/contracts.yaml +1 -1
- package/src/components/core/Nav-Header-Base/component-meta.yaml +0 -1
- package/src/components/core/Nav-Header-Base/contracts.yaml +1 -1
- package/src/components/core/Nav-Header-Page/contracts.yaml +1 -1
- package/src/components/core/Nav-TabBar-Base/contracts.yaml +1 -1
- package/src/components/core/Progress-Bar-Base/contracts.yaml +1 -1
- package/src/tokens/BlurTokens.ts +6 -4
- package/src/tokens/ShadowOffsetTokens.ts +14 -14
- package/src/tokens/SizingTokens.ts +3 -3
- package/src/tokens/TapAreaTokens.ts +20 -8
- package/src/tokens/__tests__/BaselineGridAlignmentFlag.test.ts +116 -0
- package/src/tokens/__tests__/BlurTokens.test.ts +10 -2
- package/src/tokens/__tests__/SemanticColorContrast.test.ts +339 -0
- package/src/tokens/__tests__/ShadowOffsetTokens.test.ts +8 -7
- package/src/tokens/__tests__/SizingTokens.test.ts +10 -2
- package/src/tokens/__tests__/TokenCategories.test.ts +1 -1
- package/src/tokens/__tests__/neutral-partition.test.ts +28 -0
- package/src/tokens/semantic/AccessibilityTokens.README.md +2 -2
- package/src/tokens/semantic/ColorTokens.ts +50 -5
- package/src/tokens/semantic/TypographyTokens.ts +10 -10
- package/src/tokens/semantic/__tests__/ColorTokens.test.ts +8 -4
- package/src/tokens/themes/dark/SemanticOverrides.ts +23 -4
- package/src/types/PrimitiveToken.ts +15 -1
- package/token-index/meta.json +3 -0
- package/token-index/semantics.yaml +21 -15
- package/.kiro/agents/ada-prompt.md +0 -213
- package/.kiro/agents/ada-prompt.md.attribution.json +0 -45
- package/.kiro/agents/ada.json +0 -72
- package/.kiro/agents/ada.json.attribution.json +0 -13
- package/.kiro/agents/data-prompt.md +0 -324
- package/.kiro/agents/data-prompt.md.attribution.json +0 -53
- package/.kiro/agents/data.json +0 -51
- package/.kiro/agents/data.json.attribution.json +0 -13
- package/.kiro/agents/kenya-prompt.md +0 -309
- package/.kiro/agents/kenya-prompt.md.attribution.json +0 -53
- package/.kiro/agents/kenya.json +0 -46
- package/.kiro/agents/kenya.json.attribution.json +0 -13
- package/.kiro/agents/leonardo-prompt.md +0 -359
- package/.kiro/agents/leonardo-prompt.md.attribution.json +0 -45
- package/.kiro/agents/leonardo.json +0 -47
- package/.kiro/agents/leonardo.json.attribution.json +0 -13
- package/.kiro/agents/lina-prompt.md +0 -344
- package/.kiro/agents/lina-prompt.md.attribution.json +0 -53
- package/.kiro/agents/lina.json +0 -64
- package/.kiro/agents/lina.json.attribution.json +0 -13
- package/.kiro/agents/sparky-prompt.md +0 -312
- package/.kiro/agents/sparky-prompt.md.attribution.json +0 -53
- package/.kiro/agents/sparky.json +0 -56
- package/.kiro/agents/sparky.json.attribution.json +0 -13
- package/.kiro/agents/stacy-prompt.md +0 -304
- package/.kiro/agents/stacy-prompt.md.attribution.json +0 -45
- package/.kiro/agents/stacy.json +0 -46
- package/.kiro/agents/stacy.json.attribution.json +0 -13
- package/.kiro/agents/thurgood-prompt.md +0 -363
- package/.kiro/agents/thurgood-prompt.md.attribution.json +0 -45
- package/.kiro/agents/thurgood.json +0 -47
- package/.kiro/agents/thurgood.json.attribution.json +0 -13
- package/.kiro/steering/personal-note.md +0 -35
- package/designerpunk.config.ts +0 -27
- package/dist/android/DesignTokens.android.kt +0 -695
- package/dist/components/core/Input-Text-Base/platforms/web/InputTextBase.browser.d.ts +0 -26
- package/dist/components/core/Input-Text-Base/platforms/web/InputTextBase.browser.js +0 -224
- package/dist/components/core/Input-Text-Email/platforms/web/InputTextEmail.browser.d.ts +0 -30
- package/dist/components/core/Input-Text-Email/platforms/web/InputTextEmail.browser.js +0 -254
- package/dist/components/core/Input-Text-Password/platforms/web/InputTextPassword.browser.d.ts +0 -44
- package/dist/components/core/Input-Text-Password/platforms/web/InputTextPassword.browser.js +0 -376
- package/dist/components/core/Input-Text-PhoneNumber/platforms/web/InputTextPhoneNumber.browser.d.ts +0 -38
- package/dist/components/core/Input-Text-PhoneNumber/platforms/web/InputTextPhoneNumber.browser.js +0 -328
- package/dist/ios/DesignTokens.ios.swift +0 -697
- package/dist/web/DesignTokens.web.css +0 -929
- package/product-template/agents/README.md +0 -73
- package/product-template/agents/ada-prompt.md +0 -83
- package/product-template/agents/data-prompt.md +0 -74
- package/product-template/agents/kenya-prompt.md +0 -74
- package/product-template/agents/leonardo-prompt.md +0 -99
- package/product-template/agents/lina-prompt.md +0 -61
- package/product-template/agents/sparky-prompt.md +0 -66
- package/product-template/agents/stacy-prompt.md +0 -51
- package/product-template/agents/thurgood-prompt.md +0 -64
- package/src/TokenEngine.ts +0 -628
- package/src/__tests__/BuildSystemIntegration.test.ts +0 -485
- package/src/__tests__/ProductMCPIntegration.test.ts +0 -204
- package/src/__tests__/__mocks__/styleMock.js +0 -18
- package/src/__tests__/browser-distribution/build-error-handling.test.ts +0 -143
- package/src/__tests__/browser-distribution/bundle-loading.test.ts +0 -353
- package/src/__tests__/browser-distribution/bundler-resolution.test.ts +0 -223
- package/src/__tests__/browser-distribution/component-registration.test.ts +0 -217
- package/src/__tests__/browser-distribution/css-bundling.test.ts +0 -233
- package/src/__tests__/browser-distribution/demo-system.test.ts +0 -588
- package/src/__tests__/browser-distribution/mcp-format-compliance.property.test.ts +0 -379
- package/src/__tests__/browser-distribution/mcp-queryability.test.ts +0 -342
- package/src/__tests__/browser-distribution/minification-effectiveness.property.test.ts +0 -188
- package/src/__tests__/browser-distribution/registration-idempotency.property.test.ts +0 -372
- package/src/__tests__/browser-distribution/soft-ceiling-warning.test.ts +0 -161
- package/src/__tests__/browser-distribution/token-completeness.property.test.ts +0 -412
- package/src/__tests__/browser-distribution/token-loading.test.ts +0 -344
- package/src/__tests__/browser-distribution/umd-bundle-loading.test.ts +0 -169
- package/src/__tests__/console-allowlist.json +0 -14
- package/src/__tests__/console-fail-setup.ts +0 -169
- package/src/__tests__/examples/improved-test-example.test.ts +0 -120
- package/src/__tests__/expected-exports.json +0 -66
- package/src/__tests__/export-contracts.test.ts +0 -83
- package/src/__tests__/fixtures/acknowledged-differences.json +0 -127
- package/src/__tests__/fixtures/acknowledged-differences.schema.json +0 -113
- package/src/__tests__/fixtures/acknowledged-differences.types.ts +0 -230
- package/src/__tests__/fixtures/tokenFixtures.ts +0 -248
- package/src/__tests__/helpers/configModuleLoader.ts +0 -20
- package/src/__tests__/helpers/tsModuleLoader.ts +0 -24
- package/src/__tests__/helpers/web-component-test-utils.ts +0 -39
- package/src/__tests__/integration/BlendCrossPlatformConsistency.test.ts +0 -505
- package/src/__tests__/integration/BuildSystemCompatibility.test.ts +0 -551
- package/src/__tests__/integration/CrossPlatformConsistency.test.ts +0 -855
- package/src/__tests__/integration/EndToEndWorkflow.test.ts +0 -601
- package/src/__tests__/integration/ErrorHandling.test.ts +0 -459
- package/src/__tests__/integration/OpacityPlatformTranslation.test.ts +0 -364
- package/src/__tests__/integration/PerformanceValidation.test.ts +0 -887
- package/src/__tests__/integration/SemanticTokenGeneration.test.ts +0 -451
- package/src/__tests__/integration/Spec107-DesignLanguageContext.test.ts +0 -139
- package/src/__tests__/integration/TokenSystemIntegration.test.ts +0 -890
- package/src/__tests__/integration/ValidationPipeline.test.ts +0 -404
- package/src/__tests__/package-drift-validation.test.ts +0 -249
- package/src/__tests__/performance/GenerationPerformance.test.ts +0 -409
- package/src/__tests__/performance/OptimizationValidation.test.ts +0 -509
- package/src/__tests__/platform-parity/ProgressPlatformParity.test.ts +0 -546
- package/src/__tests__/spec073-opacity-architecture.test.ts +0 -344
- package/src/__tests__/stemma-system/behavioral-contract-validation.test.ts +0 -520
- package/src/__tests__/stemma-system/composition-compliance-validation.test.ts +0 -162
- package/src/__tests__/stemma-system/contract-catalog-name-validation.test.ts +0 -184
- package/src/__tests__/stemma-system/contract-existence-validation.test.ts +0 -43
- package/src/__tests__/stemma-system/contract-test-reporter.ts +0 -269
- package/src/__tests__/stemma-system/cross-platform-consistency.test.ts +0 -564
- package/src/__tests__/stemma-system/form-inputs-contracts.test.ts +0 -710
- package/src/__tests__/stemma-system/input-text-native-base-call-alignment.test.ts +0 -298
- package/src/__tests__/stemma-system/mcp-component-integration.test.ts +0 -445
- package/src/analytics/PrimitiveTokenFallbackTracker.ts +0 -228
- package/src/analytics/SemanticTokenUsageTracker.ts +0 -193
- package/src/analytics/StrategicFlexibilityTracker.ts +0 -226
- package/src/analytics/TokenUsageTracker.ts +0 -177
- package/src/analytics/UsagePatternAnalyzer.ts +0 -177
- package/src/analytics/__tests__/UsageTracking.test.ts +0 -647
- package/src/analytics/index.ts +0 -42
- package/src/assets/fonts/__tests__/androidFontLoadingValidation.test.ts +0 -600
- package/src/assets/fonts/__tests__/fontLoading.test.ts +0 -341
- package/src/assets/fonts/__tests__/iosFontConfiguration.test.ts +0 -256
- package/src/assets/fonts/__tests__/iosFontLoadingValidation.test.ts +0 -465
- package/src/assets/fonts/inter/Inter-Bold.ttf +0 -0
- package/src/assets/fonts/inter/Inter-Bold.woff2 +0 -0
- package/src/assets/fonts/inter/Inter-Medium.ttf +0 -0
- package/src/assets/fonts/inter/Inter-Medium.woff2 +0 -0
- package/src/assets/fonts/inter/Inter-Regular.ttf +0 -0
- package/src/assets/fonts/inter/Inter-Regular.woff2 +0 -0
- package/src/assets/fonts/inter/Inter-SemiBold.ttf +0 -0
- package/src/assets/fonts/inter/Inter-SemiBold.woff2 +0 -0
- package/src/assets/fonts/inter/inter.css +0 -49
- package/src/blend/BlendCalculator.ts +0 -120
- package/src/blend/ColorSpaceUtils.ts +0 -325
- package/src/blend/OklchBlendCalculator.ts +0 -82
- package/src/blend/ThemeAwareBlendUtilities.web.ts +0 -323
- package/src/blend/__tests__/BlendCalculator.test.ts +0 -393
- package/src/blend/__tests__/BlendUtilities.property.test.ts +0 -600
- package/src/blend/__tests__/ColorSpaceUtils.test.ts +0 -885
- package/src/blend/__tests__/InteractionStateAudit.test.ts +0 -238
- package/src/blend/__tests__/OklchBlendCalculator.test.ts +0 -134
- package/src/blend/__tests__/ThemeAwareBlendUtilities.test.ts +0 -200
- package/src/blend/__tests__/ThemeSwitching.test.ts +0 -508
- package/src/blend/index.ts +0 -37
- package/src/browser-entry.ts +0 -270
- package/src/build/.gitkeep +0 -1
- package/src/build/BuildOrchestrator.ts +0 -663
- package/src/build/__tests__/AndroidBuildIntegration.test.ts +0 -437
- package/src/build/__tests__/AndroidMotionTokenGeneration.test.ts +0 -256
- package/src/build/__tests__/BuildOrchestrator.test.ts +0 -562
- package/src/build/__tests__/MotionTokenCrossPlatformIntegration.test.ts +0 -424
- package/src/build/__tests__/WebCSSTokenGeneration.test.ts +0 -271
- package/src/build/__tests__/WebMotionTokenGeneration.test.ts +0 -305
- package/src/build/__tests__/WebNPMPackageStructure.test.ts +0 -447
- package/src/build/__tests__/iOSMotionTokenGeneration.test.ts +0 -298
- package/src/build/errors/BuildError.ts +0 -140
- package/src/build/errors/ErrorDocumentation.ts +0 -638
- package/src/build/errors/ErrorHandler.ts +0 -406
- package/src/build/errors/ErrorReporter.ts +0 -573
- package/src/build/errors/PlatformGenerationError.ts +0 -201
- package/src/build/errors/README.md +0 -486
- package/src/build/errors/RecoveryStrategy.ts +0 -393
- package/src/build/errors/TokenGenerationError.ts +0 -196
- package/src/build/errors/TokenReferenceError.ts +0 -204
- package/src/build/errors/__tests__/BuildError.test.ts +0 -212
- package/src/build/errors/__tests__/ErrorDocumentation.example.ts +0 -272
- package/src/build/errors/__tests__/ErrorDocumentation.test.ts +0 -458
- package/src/build/errors/__tests__/ErrorHandler.integration.test.ts +0 -303
- package/src/build/errors/__tests__/ErrorHandler.test.ts +0 -502
- package/src/build/errors/__tests__/ErrorReporter.test.ts +0 -581
- package/src/build/errors/__tests__/MotionTokenErrors.test.ts +0 -392
- package/src/build/errors/__tests__/RecoveryStrategy.test.ts +0 -643
- package/src/build/errors/index.ts +0 -90
- package/src/build/index.ts +0 -73
- package/src/build/orchestration/IncrementalBuilder.ts +0 -532
- package/src/build/orchestration/ParallelExecutor.ts +0 -336
- package/src/build/orchestration/ProgressTracker.ts +0 -582
- package/src/build/orchestration/SequentialExecutor.ts +0 -305
- package/src/build/orchestration/__tests__/IncrementalBuilder.test.ts +0 -354
- package/src/build/orchestration/__tests__/ParallelExecutor.integration.test.ts +0 -295
- package/src/build/orchestration/__tests__/ParallelExecutor.test.ts +0 -493
- package/src/build/orchestration/__tests__/ProgressTracker.test.ts +0 -529
- package/src/build/orchestration/__tests__/SequentialExecutor.integration.test.ts +0 -202
- package/src/build/orchestration/__tests__/SequentialExecutor.test.ts +0 -232
- package/src/build/orchestration/index.ts +0 -35
- package/src/build/platforms/.gitkeep +0 -1
- package/src/build/platforms/AndroidBuilder.ts +0 -1366
- package/src/build/platforms/AndroidShadowGenerator.ts +0 -394
- package/src/build/platforms/IOSShadowGenerator.ts +0 -324
- package/src/build/platforms/PlatformBuilder.ts +0 -131
- package/src/build/platforms/WebBuilder.ts +0 -1414
- package/src/build/platforms/WebShadowGenerator.ts +0 -288
- package/src/build/platforms/__tests__/AndroidBuilder.tokenGeneration.test.ts +0 -146
- package/src/build/platforms/__tests__/AndroidShadowGenerator.test.ts +0 -195
- package/src/build/platforms/__tests__/IOSShadowGenerator.test.ts +0 -156
- package/src/build/platforms/__tests__/WebShadowGenerator.test.ts +0 -123
- package/src/build/platforms/__tests__/iOSBuilder.test.ts +0 -1599
- package/src/build/platforms/iOSBuilder.ts +0 -1746
- package/src/build/platforms/index.ts +0 -9
- package/src/build/product/ProductTokenGenerator.ts +0 -162
- package/src/build/product/TokenIndexReader.ts +0 -78
- package/src/build/product/__tests__/KotlinEmitter.test.ts +0 -109
- package/src/build/product/__tests__/ProductTokenGenerator.test.ts +0 -135
- package/src/build/product/__tests__/SwiftEmitter.test.ts +0 -90
- package/src/build/product/__tests__/TokenIndexReader.test.ts +0 -85
- package/src/build/product/__tests__/WebEmitter.test.ts +0 -111
- package/src/build/product/__tests__/fixtures/tokens/layout.yaml +0 -21
- package/src/build/product/__tests__/fixtures/tokens/motion.yaml +0 -11
- package/src/build/product/__tests__/fixtures/tokens/visualization.yaml +0 -8
- package/src/build/product/emitters/KotlinEmitter.ts +0 -83
- package/src/build/product/emitters/SwiftEmitter.ts +0 -95
- package/src/build/product/emitters/WebEmitter.ts +0 -69
- package/src/build/tokens/.gitkeep +0 -1
- package/src/build/tokens/__tests__/ClassInvariantGuard.test.ts +0 -167
- package/src/build/tokens/__tests__/ComponentTokenGenerator.test.ts +0 -285
- package/src/build/tokens/__tests__/TokenIntegrator.test.ts +0 -319
- package/src/build/tokens/__tests__/TokenSelector.test.ts +0 -264
- package/src/build/tokens/__tests__/UnitConverter.applyScaleWithRounding.test.ts +0 -160
- package/src/build/tokens/__tests__/UnitConverter.test.ts +0 -331
- package/src/build/tokens/__tests__/brand-dual-instance.test.ts +0 -135
- package/src/build/tokens/__tests__/defineComponentTokens.test.ts +0 -553
- package/src/build/types/.gitkeep +0 -1
- package/src/build/types/BuildConfig.ts +0 -123
- package/src/build/types/BuildOrchestrator.ts +0 -114
- package/src/build/types/BuildResult.ts +0 -125
- package/src/build/types/index.ts +0 -39
- package/src/build/validation/.gitkeep +0 -1
- package/src/build/validation/AndroidBuildValidator.ts +0 -630
- package/src/build/validation/CrossPlatformValidationReporter.ts +0 -1267
- package/src/build/validation/InterfaceContractValidator.ts +0 -417
- package/src/build/validation/InterfaceValidator.ts +0 -326
- package/src/build/validation/MathematicalConsistencyValidator.ts +0 -874
- package/src/build/validation/MethodSignatureValidator.ts +0 -374
- package/src/build/validation/PropertyTypeValidator.ts +0 -312
- package/src/build/validation/TokenComparator.ts +0 -796
- package/src/build/validation/ValidationReporter.example.ts +0 -310
- package/src/build/validation/ValidationReporter.ts +0 -745
- package/src/build/validation/WebBuildValidator.ts +0 -583
- package/src/build/validation/__tests__/AndroidBuildValidator.test.ts +0 -522
- package/src/build/validation/__tests__/CrossPlatformValidationReporter.test.ts +0 -593
- package/src/build/validation/__tests__/InterfaceContractValidator.test.ts +0 -647
- package/src/build/validation/__tests__/InterfaceValidation.functional.test.ts +0 -360
- package/src/build/validation/__tests__/InterfaceValidator.test.ts +0 -318
- package/src/build/validation/__tests__/MethodSignatureValidator.test.ts +0 -625
- package/src/build/validation/__tests__/MotionTokenCrossPlatformValidation.test.ts +0 -305
- package/src/build/validation/__tests__/MotionTokenValidation.test.ts +0 -309
- package/src/build/validation/__tests__/PropertyTypeValidator.test.ts +0 -557
- package/src/build/validation/__tests__/TokenComparator.test.ts +0 -358
- package/src/build/validation/__tests__/ValidationReporter.integration.test.ts +0 -424
- package/src/build/validation/__tests__/ValidationReporter.test.ts +0 -793
- package/src/build/validation/__tests__/WebBuildValidator.test.ts +0 -495
- package/src/build/validation/iOSBuildValidator.ts +0 -783
- package/src/build/validation/index.ts +0 -74
- package/src/build/validation/types/InterfaceDefinition.ts +0 -101
- package/src/build/validation/types/ValidationResult.ts +0 -114
- package/src/build/workflow/BuildMode.ts +0 -336
- package/src/build/workflow/CICDIntegration.ts +0 -503
- package/src/build/workflow/ConfigHelpers.example.ts +0 -317
- package/src/build/workflow/ConfigHelpers.ts +0 -834
- package/src/build/workflow/README.md +0 -327
- package/src/build/workflow/SourceMapGenerator.ts +0 -362
- package/src/build/workflow/__tests__/BuildMode.test.ts +0 -544
- package/src/build/workflow/__tests__/CICDIntegration.test.ts +0 -602
- package/src/build/workflow/__tests__/ConfigHelpers.test.ts +0 -559
- package/src/build/workflow/__tests__/SourceMapGenerator.test.ts +0 -421
- package/src/build/workflow/index.ts +0 -42
- package/src/cli/__tests__/Applier.test.ts +0 -202
- package/src/cli/__tests__/Classifier.test.ts +0 -187
- package/src/cli/__tests__/FileScanner.test.ts +0 -108
- package/src/cli/__tests__/IgnoreFilter.test.ts +0 -92
- package/src/cli/__tests__/Manifest.test.ts +0 -107
- package/src/cli/__tests__/PackageResolver.test.ts +0 -66
- package/src/cli/__tests__/Prompter.test.ts +0 -165
- package/src/cli/__tests__/Reporter.test.ts +0 -128
- package/src/cli/__tests__/backward-compat.test.ts +0 -142
- package/src/cli/__tests__/figma-extract.test.ts +0 -342
- package/src/cli/__tests__/figma-push.test.ts +0 -350
- package/src/cli/__tests__/init.test.ts +0 -293
- package/src/cli/__tests__/loadComponentTokens.test.ts +0 -187
- package/src/cli/__tests__/pipeline-independence.test.ts +0 -127
- package/src/cli/__tests__/product-only.test.ts +0 -130
- package/src/cli/__tests__/resolveTokens.test.ts +0 -88
- package/src/cli/__tests__/staleness.test.ts +0 -132
- package/src/cli/__tests__/sync.test.ts +0 -199
- package/src/cli/__tests__/validate.test.ts +0 -69
- package/src/cli/designerpunk.ts +0 -410
- package/src/cli/figma-extract.ts +0 -331
- package/src/cli/figma-push.ts +0 -288
- package/src/cli/generateProductTokens.ts +0 -69
- package/src/cli/init.ts +0 -481
- package/src/cli/loadComponentTokens.ts +0 -145
- package/src/cli/resolveTokens.ts +0 -123
- package/src/cli/shared/mcpDataRoots.ts +0 -122
- package/src/cli/shared/resolvePackageRoot.ts +0 -58
- package/src/cli/shared/transforms.ts +0 -18
- package/src/cli/staleness.ts +0 -81
- package/src/cli/sync/Applier.ts +0 -128
- package/src/cli/sync/Classifier.ts +0 -130
- package/src/cli/sync/FileScanner.ts +0 -64
- package/src/cli/sync/IgnoreFilter.ts +0 -44
- package/src/cli/sync/Manifest.ts +0 -64
- package/src/cli/sync/PackageResolver.ts +0 -40
- package/src/cli/sync/Prompter.ts +0 -173
- package/src/cli/sync/Reporter.ts +0 -78
- package/src/cli/sync/SteeringDirCheck.ts +0 -166
- package/src/cli/sync/index.ts +0 -115
- package/src/cli/validate.ts +0 -135
- package/src/cli/validateProductTokens.ts +0 -55
- package/src/color/OklchConverter.ts +0 -284
- package/src/color/OklchValidator.ts +0 -186
- package/src/color/__tests__/OklchConverter.test.ts +0 -232
- package/src/color/__tests__/OklchRegression.test.ts +0 -101
- package/src/color/__tests__/OklchValidator.test.ts +0 -199
- package/src/color/__tests__/WcagContrast.test.ts +0 -76
- package/src/components/__tests__/BlendTokenUsageValidation.test.ts +0 -726
- package/src/components/__tests__/DynamicImportGuard.test.ts +0 -226
- package/src/components/__tests__/ExtensionLintPolicy.test.ts +0 -113
- package/src/components/__tests__/TokenCompliance.test.ts +0 -921
- package/src/components/__tests__/colorInheritanceValidation.test.ts +0 -267
- package/src/components/__tests__/componentTypographyInheritance.test.ts +0 -326
- package/src/components/core/Avatar-Base/README.md +0 -366
- package/src/components/core/Avatar-Base/__tests__/.gitkeep +0 -3
- package/src/components/core/Avatar-Base/__tests__/Avatar.accessibility.test.ts +0 -597
- package/src/components/core/Avatar-Base/__tests__/Avatar.icon-integration.test.ts +0 -656
- package/src/components/core/Avatar-Base/__tests__/Avatar.image.test.ts +0 -396
- package/src/components/core/Avatar-Base/__tests__/Avatar.lifecycle.test.ts +0 -545
- package/src/components/core/Avatar-Base/__tests__/Avatar.rendering.test.ts +0 -505
- package/src/components/core/Avatar-Base/__tests__/Avatar.test.ts +0 -701
- package/src/components/core/Avatar-Base/avatar.tokens.ts +0 -373
- package/src/components/core/Avatar-Base/index.ts +0 -25
- package/src/components/core/Avatar-Base/platforms/ios/.gitkeep +0 -3
- package/src/components/core/Avatar-Base/platforms/web/.gitkeep +0 -3
- package/src/components/core/Avatar-Base/platforms/web/Avatar.styles.css +0 -595
- package/src/components/core/Avatar-Base/platforms/web/Avatar.web.ts +0 -892
- package/src/components/core/Avatar-Base/platforms/web/hexagon-clip.svg +0 -87
- package/src/components/core/Avatar-Base/tokens/.gitkeep +0 -4
- package/src/components/core/Avatar-Base/types.ts +0 -86
- package/src/components/core/Badge-Count-Base/README.md +0 -323
- package/src/components/core/Badge-Count-Base/__tests__/BadgeCountBase.stemma.test.ts +0 -548
- package/src/components/core/Badge-Count-Base/__tests__/BadgeCountBase.test.ts +0 -452
- package/src/components/core/Badge-Count-Base/__tests__/test-utils.ts +0 -244
- package/src/components/core/Badge-Count-Base/index.ts +0 -37
- package/src/components/core/Badge-Count-Base/platforms/ios/.gitkeep +0 -1
- package/src/components/core/Badge-Count-Base/platforms/web/BadgeCountBase.styles.css +0 -148
- package/src/components/core/Badge-Count-Base/platforms/web/BadgeCountBase.web.ts +0 -363
- package/src/components/core/Badge-Count-Base/types.ts +0 -150
- package/src/components/core/Badge-Count-Notification/README.md +0 -396
- package/src/components/core/Badge-Count-Notification/__tests__/BadgeCountNotification.stemma.test.ts +0 -571
- package/src/components/core/Badge-Count-Notification/__tests__/BadgeCountNotification.test.ts +0 -490
- package/src/components/core/Badge-Count-Notification/__tests__/test-utils.ts +0 -256
- package/src/components/core/Badge-Count-Notification/index.ts +0 -60
- package/src/components/core/Badge-Count-Notification/platforms/web/BadgeCountNotification.styles.css +0 -182
- package/src/components/core/Badge-Count-Notification/platforms/web/BadgeCountNotification.web.ts +0 -401
- package/src/components/core/Badge-Count-Notification/tokens.ts +0 -124
- package/src/components/core/Badge-Count-Notification/types.ts +0 -119
- package/src/components/core/Badge-Label-Base/README.md +0 -251
- package/src/components/core/Badge-Label-Base/__tests__/BadgeLabelBase.stemma.test.ts +0 -549
- package/src/components/core/Badge-Label-Base/__tests__/BadgeLabelBase.test.ts +0 -439
- package/src/components/core/Badge-Label-Base/__tests__/test-utils.ts +0 -269
- package/src/components/core/Badge-Label-Base/__tests__/tokens.test.ts +0 -88
- package/src/components/core/Badge-Label-Base/index.ts +0 -41
- package/src/components/core/Badge-Label-Base/platforms/web/BadgeLabelBase.styles.css +0 -166
- package/src/components/core/Badge-Label-Base/platforms/web/BadgeLabelBase.web.ts +0 -340
- package/src/components/core/Badge-Label-Base/tokens.ts +0 -80
- package/src/components/core/Badge-Label-Base/types.ts +0 -148
- package/src/components/core/Button-CTA/Button-CTA.tokens.ts +0 -79
- package/src/components/core/Button-CTA/README.md +0 -293
- package/src/components/core/Button-CTA/__tests__/ButtonCTA.alignment.test.ts +0 -355
- package/src/components/core/Button-CTA/__tests__/ButtonCTA.test.ts +0 -698
- package/src/components/core/Button-CTA/__tests__/ButtonCTA.tokens.test.ts +0 -89
- package/src/components/core/Button-CTA/__tests__/setup.test.ts +0 -209
- package/src/components/core/Button-CTA/__tests__/test-utils.ts +0 -185
- package/src/components/core/Button-CTA/examples/BasicUsage.html +0 -133
- package/src/components/core/Button-CTA/examples/BasicUsage.tsx +0 -219
- package/src/components/core/Button-CTA/examples/Variants.html +0 -263
- package/src/components/core/Button-CTA/examples/WithIcon.html +0 -166
- package/src/components/core/Button-CTA/index.ts +0 -20
- package/src/components/core/Button-CTA/platforms/web/ButtonCTA.web.css +0 -395
- package/src/components/core/Button-CTA/platforms/web/ButtonCTA.web.ts +0 -644
- package/src/components/core/Button-CTA/platforms/web/__tests__/ButtonCTA.icon-integration.test.ts +0 -476
- package/src/components/core/Button-CTA/types.ts +0 -239
- package/src/components/core/Button-Icon/README.md +0 -371
- package/src/components/core/Button-Icon/__tests__/ButtonIcon.alignment.test.ts +0 -358
- package/src/components/core/Button-Icon/__tests__/ButtonIcon.properties-8-13.test.ts +0 -953
- package/src/components/core/Button-Icon/__tests__/ButtonIcon.properties.test.ts +0 -920
- package/src/components/core/Button-Icon/__tests__/ButtonIcon.stemma.test.ts +0 -622
- package/src/components/core/Button-Icon/__tests__/ButtonIcon.unit.test.ts +0 -560
- package/src/components/core/Button-Icon/__tests__/setup.test.ts +0 -361
- package/src/components/core/Button-Icon/__tests__/test-utils.ts +0 -248
- package/src/components/core/Button-Icon/buttonIcon.tokens.ts +0 -218
- package/src/components/core/Button-Icon/platforms/web/.gitkeep +0 -4
- package/src/components/core/Button-Icon/platforms/web/ButtonIcon.web.css +0 -600
- package/src/components/core/Button-Icon/platforms/web/ButtonIcon.web.ts +0 -625
- package/src/components/core/Button-Icon/types.ts +0 -186
- package/src/components/core/Button-VerticalList-Item/Button-VerticalList-Item.tokens.ts +0 -112
- package/src/components/core/Button-VerticalList-Item/README.md +0 -450
- package/src/components/core/Button-VerticalList-Item/__tests__/.gitkeep +0 -2
- package/src/components/core/Button-VerticalList-Item/__tests__/ButtonVerticalListItem.alignment.test.ts +0 -271
- package/src/components/core/Button-VerticalList-Item/__tests__/ButtonVerticalListItem.failLoudly.test.ts +0 -106
- package/src/components/core/Button-VerticalList-Item/__tests__/ButtonVerticalListItem.integration.test.ts +0 -480
- package/src/components/core/Button-VerticalList-Item/__tests__/ButtonVerticalListItem.properties.test.ts +0 -634
- package/src/components/core/Button-VerticalList-Item/__tests__/ButtonVerticalListItem.unit.test.ts +0 -746
- package/src/components/core/Button-VerticalList-Item/__tests__/rtlSupport.test.ts +0 -206
- package/src/components/core/Button-VerticalList-Item/__tests__/test-utils.ts +0 -297
- package/src/components/core/Button-VerticalList-Item/__tests__/visualStateMapping.test.ts +0 -419
- package/src/components/core/Button-VerticalList-Item/index.ts +0 -49
- package/src/components/core/Button-VerticalList-Item/platforms/android/VerticalListButtonItemTest.kt +0 -1109
- package/src/components/core/Button-VerticalList-Item/platforms/ios/.gitkeep +0 -2
- package/src/components/core/Button-VerticalList-Item/platforms/ios/VerticalListButtonItemTests.swift +0 -794
- package/src/components/core/Button-VerticalList-Item/platforms/web/.gitkeep +0 -2
- package/src/components/core/Button-VerticalList-Item/platforms/web/ButtonVerticalListItem.styles.css +0 -459
- package/src/components/core/Button-VerticalList-Item/platforms/web/ButtonVerticalListItem.web.ts +0 -1030
- package/src/components/core/Button-VerticalList-Item/platforms/web/visualStateMapping.ts +0 -411
- package/src/components/core/Button-VerticalList-Item/types.ts +0 -338
- package/src/components/core/Button-VerticalList-Set/README.md +0 -578
- package/src/components/core/Button-VerticalList-Set/__tests__/.gitkeep +0 -5
- package/src/components/core/Button-VerticalList-Set/__tests__/ButtonVerticalListSet.integration.test.ts +0 -676
- package/src/components/core/Button-VerticalList-Set/__tests__/ButtonVerticalListSet.property.test.ts +0 -786
- package/src/components/core/Button-VerticalList-Set/__tests__/ButtonVerticalListSet.property2.test.ts +0 -1109
- package/src/components/core/Button-VerticalList-Set/__tests__/ButtonVerticalListSet.unit.test.ts +0 -924
- package/src/components/core/Button-VerticalList-Set/__tests__/animationTiming.test.ts +0 -182
- package/src/components/core/Button-VerticalList-Set/__tests__/crossPlatformConsistency.test.ts +0 -685
- package/src/components/core/Button-VerticalList-Set/__tests__/deriveItemStates.test.ts +0 -179
- package/src/components/core/Button-VerticalList-Set/__tests__/validation.test.ts +0 -275
- package/src/components/core/Button-VerticalList-Set/index.ts +0 -32
- package/src/components/core/Button-VerticalList-Set/platforms/android/ButtonVerticalListSetTest.kt +0 -961
- package/src/components/core/Button-VerticalList-Set/platforms/ios/.gitkeep +0 -0
- package/src/components/core/Button-VerticalList-Set/platforms/ios/ButtonVerticalListSetTests.swift +0 -475
- package/src/components/core/Button-VerticalList-Set/platforms/web/.gitkeep +0 -4
- package/src/components/core/Button-VerticalList-Set/platforms/web/Button-VerticalList-Set.styles.css +0 -167
- package/src/components/core/Button-VerticalList-Set/platforms/web/ButtonVerticalListSet.web.ts +0 -1446
- package/src/components/core/Button-VerticalList-Set/types.ts +0 -788
- package/src/components/core/Chip-Base/__tests__/ChipBase.test.ts +0 -534
- package/src/components/core/Chip-Base/index.ts +0 -40
- package/src/components/core/Chip-Base/platforms/ios/.gitkeep +0 -3
- package/src/components/core/Chip-Base/platforms/web/.gitkeep +0 -5
- package/src/components/core/Chip-Base/platforms/web/ChipBase.styles.css +0 -280
- package/src/components/core/Chip-Base/platforms/web/ChipBase.web.ts +0 -480
- package/src/components/core/Chip-Base/types.ts +0 -189
- package/src/components/core/Chip-Filter/__tests__/ChipFilter.test.ts +0 -592
- package/src/components/core/Chip-Filter/index.ts +0 -34
- package/src/components/core/Chip-Filter/platforms/web/ChipFilter.styles.css +0 -105
- package/src/components/core/Chip-Filter/platforms/web/ChipFilter.web.ts +0 -539
- package/src/components/core/Chip-Filter/types.ts +0 -47
- package/src/components/core/Chip-Input/__tests__/ChipInput.test.ts +0 -472
- package/src/components/core/Chip-Input/index.ts +0 -35
- package/src/components/core/Chip-Input/platforms/ios/.gitkeep +0 -3
- package/src/components/core/Chip-Input/platforms/web/ChipInput.styles.css +0 -99
- package/src/components/core/Chip-Input/platforms/web/ChipInput.web.ts +0 -485
- package/src/components/core/Chip-Input/types.ts +0 -35
- package/src/components/core/Container-Base/README.md +0 -450
- package/src/components/core/Container-Base/__tests__/ContainerBase.test.ts +0 -712
- package/src/components/core/Container-Base/index.ts +0 -47
- package/src/components/core/Container-Base/platforms/web/ContainerBase.web.ts +0 -405
- package/src/components/core/Container-Base/platforms/web/styles.css +0 -198
- package/src/components/core/Container-Base/platforms/web/token-mapping.ts +0 -573
- package/src/components/core/Container-Base/tokens.ts +0 -241
- package/src/components/core/Container-Base/types.ts +0 -307
- package/src/components/core/Container-Card-Base/README.md +0 -506
- package/src/components/core/Container-Card-Base/__tests__/ContainerCardBase.composition.test.ts +0 -167
- package/src/components/core/Container-Card-Base/__tests__/ContainerCardBase.test.ts +0 -646
- package/src/components/core/Container-Card-Base/index.ts +0 -64
- package/src/components/core/Container-Card-Base/platforms/web/ContainerCardBase.web.ts +0 -373
- package/src/components/core/Container-Card-Base/tokens.ts +0 -224
- package/src/components/core/Container-Card-Base/types.ts +0 -332
- package/src/components/core/Icon-Base/README.md +0 -168
- package/src/components/core/Icon-Base/__tests__/IconBase.test.ts +0 -192
- package/src/components/core/Icon-Base/index.ts +0 -34
- package/src/components/core/Icon-Base/platforms/ios/ASSET_CATALOG_SETUP.md +0 -239
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Contents.json +0 -6
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/Contents.json +0 -9
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/alert-circle.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/alert-circle.imageset/alert-circle.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/arrow-down.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/arrow-down.imageset/arrow-down.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/arrow-left.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/arrow-left.imageset/arrow-left.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/arrow-right.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/arrow-right.imageset/arrow-right.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/arrow-up.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/arrow-up.imageset/arrow-up.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/award.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/award.imageset/award.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/bell.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/bell.imageset/bell.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/briefcase.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/briefcase.imageset/briefcase.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/calendar.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/calendar.imageset/calendar.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/check-circle.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/check-circle.imageset/check-circle.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/check.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/check.imageset/check.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/chevron-down.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/chevron-down.imageset/chevron-down.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/chevron-left.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/chevron-left.imageset/chevron-left.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/chevron-right.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/chevron-right.imageset/chevron-right.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/circle.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/circle.imageset/circle.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/clock.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/clock.imageset/clock.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/credit-card.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/credit-card.imageset/credit-card.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/dollar-sign.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/dollar-sign.imageset/dollar-sign.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/external-link.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/external-link.imageset/external-link.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/eye-off.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/eye-off.imageset/eye-off.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/eye.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/eye.imageset/eye.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/file-text.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/file-text.imageset/file-text.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/filter.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/filter.imageset/filter.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/globe.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/globe.imageset/globe.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/heart.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/heart.imageset/heart.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/info.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/info.imageset/info.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/mail.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/mail.imageset/mail.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/map-pin.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/map-pin.imageset/map-pin.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/minus.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/minus.imageset/minus.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/more-horizontal.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/more-horizontal.imageset/more-horizontal.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/more-vertical.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/more-vertical.imageset/more-vertical.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/phone.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/phone.imageset/phone.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/plus.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/plus.imageset/plus.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/refresh-cw.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/refresh-cw.imageset/refresh-cw.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/save.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/save.imageset/save.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/search.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/search.imageset/search.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/settings.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/settings.imageset/settings.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/share-2.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/share-2.imageset/share-2.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/share.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/share.imageset/share.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/shield.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/shield.imageset/shield.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/smartphone.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/smartphone.imageset/smartphone.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/smile.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/smile.imageset/smile.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/star.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/star.imageset/star.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/trending-up.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/trending-up.imageset/trending-up.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/user-check.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/user-check.imageset/user-check.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/user-x.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/user-x.imageset/user-x.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/user.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/user.imageset/user.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/users.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/users.imageset/users.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/wifi.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/wifi.imageset/wifi.svg +0 -1
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/x.imageset/Contents.json +0 -15
- package/src/components/core/Icon-Base/platforms/ios/Icons.xcassets/Icons/x.imageset/x.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/IconBase.web.ts +0 -553
- package/src/components/core/Icon-Base/platforms/web/assets/alert-circle.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/arrow-down.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/arrow-left.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/arrow-right.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/arrow-up.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/award.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/bell.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/briefcase.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/calendar.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/check-circle.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/check.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/chevron-down.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/chevron-left.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/chevron-right.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/circle.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/clock.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/credit-card.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/dollar-sign.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/external-link.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/eye-off.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/eye.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/file-text.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/filter.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/globe.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/heart.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/info.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/mail.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/map-pin.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/minus.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/more-horizontal.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/more-vertical.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/phone.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/plus.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/refresh-cw.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/save.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/search.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/settings.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/share-2.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/share.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/shield.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/smartphone.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/smile.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/star.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/trending-up.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/user-check.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/user-x.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/user.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/users.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/wifi.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/assets/x.svg +0 -1
- package/src/components/core/Icon-Base/platforms/web/styles.css +0 -203
- package/src/components/core/Icon-Base/types.ts +0 -338
- package/src/components/core/Input-Checkbox-Base/README.md +0 -390
- package/src/components/core/Input-Checkbox-Base/__tests__/InputCheckboxBase.stemma.test.ts +0 -552
- package/src/components/core/Input-Checkbox-Base/__tests__/InputCheckboxBase.test.ts +0 -878
- package/src/components/core/Input-Checkbox-Base/checkbox-sizing.tokens.ts +0 -37
- package/src/components/core/Input-Checkbox-Base/platforms/web/InputCheckboxBase.web.css +0 -477
- package/src/components/core/Input-Checkbox-Base/platforms/web/InputCheckboxBase.web.ts +0 -561
- package/src/components/core/Input-Checkbox-Base/types.ts +0 -399
- package/src/components/core/Input-Checkbox-Legal/README.md +0 -554
- package/src/components/core/Input-Checkbox-Legal/__tests__/InputCheckboxLegal.test.ts +0 -727
- package/src/components/core/Input-Checkbox-Legal/platforms/ios/.gitkeep +0 -2
- package/src/components/core/Input-Checkbox-Legal/platforms/web/InputCheckboxLegal.web.css +0 -112
- package/src/components/core/Input-Checkbox-Legal/platforms/web/InputCheckboxLegal.web.ts +0 -505
- package/src/components/core/Input-Checkbox-Legal/types.ts +0 -348
- package/src/components/core/Input-Radio-Base/.gitkeep +0 -2
- package/src/components/core/Input-Radio-Base/README.md +0 -427
- package/src/components/core/Input-Radio-Base/__tests__/.gitkeep +0 -1
- package/src/components/core/Input-Radio-Base/__tests__/InputRadioBase.form.test.ts +0 -299
- package/src/components/core/Input-Radio-Base/__tests__/InputRadioBase.stemma.test.ts +0 -543
- package/src/components/core/Input-Radio-Base/__tests__/InputRadioBase.test.ts +0 -429
- package/src/components/core/Input-Radio-Base/platforms/ios/.gitkeep +0 -1
- package/src/components/core/Input-Radio-Base/platforms/web/.gitkeep +0 -1
- package/src/components/core/Input-Radio-Base/platforms/web/InputRadioBase.web.css +0 -504
- package/src/components/core/Input-Radio-Base/platforms/web/InputRadioBase.web.ts +0 -648
- package/src/components/core/Input-Radio-Base/radio-sizing.tokens.ts +0 -37
- package/src/components/core/Input-Radio-Base/types.ts +0 -362
- package/src/components/core/Input-Radio-Set/README.md +0 -373
- package/src/components/core/Input-Radio-Set/__tests__/.gitkeep +0 -0
- package/src/components/core/Input-Radio-Set/__tests__/InputRadioSet.stemma.test.ts +0 -493
- package/src/components/core/Input-Radio-Set/__tests__/InputRadioSet.test.ts +0 -499
- package/src/components/core/Input-Radio-Set/platforms/web/InputRadioSet.web.css +0 -99
- package/src/components/core/Input-Radio-Set/platforms/web/InputRadioSet.web.ts +0 -790
- package/src/components/core/Input-Radio-Set/types.ts +0 -301
- package/src/components/core/Input-Text-Base/README.md +0 -258
- package/src/components/core/Input-Text-Base/__tests__/focusIndicators.test.ts +0 -311
- package/src/components/core/Input-Text-Base/__tests__/keyboardNavigation.test.ts +0 -444
- package/src/components/core/Input-Text-Base/__tests__/labelAssociation.test.ts +0 -418
- package/src/components/core/Input-Text-Base/__tests__/screenReaderSupport.test.ts +0 -405
- package/src/components/core/Input-Text-Base/__tests__/setup.ts +0 -17
- package/src/components/core/Input-Text-Base/__tests__/stateManagement.test.ts +0 -718
- package/src/components/core/Input-Text-Base/__tests__/test-utils.ts +0 -81
- package/src/components/core/Input-Text-Base/__tests__/touchTargetSizing.test.ts +0 -319
- package/src/components/core/Input-Text-Base/platforms/web/InputTextBase.browser.ts +0 -241
- package/src/components/core/Input-Text-Base/platforms/web/InputTextBase.web.css +0 -293
- package/src/components/core/Input-Text-Base/platforms/web/InputTextBase.web.ts +0 -448
- package/src/components/core/Input-Text-Base/stateManagement.ts +0 -267
- package/src/components/core/Input-Text-Base/tokens.ts +0 -210
- package/src/components/core/Input-Text-Base/types.ts +0 -114
- package/src/components/core/Input-Text-Email/README.md +0 -252
- package/src/components/core/Input-Text-Email/__tests__/validation.test.ts +0 -127
- package/src/components/core/Input-Text-Email/platforms/web/InputTextEmail.browser.ts +0 -276
- package/src/components/core/Input-Text-Email/platforms/web/InputTextEmail.web.ts +0 -319
- package/src/components/core/Input-Text-Email/stateManagement.ts +0 -160
- package/src/components/core/Input-Text-Email/tokens.ts +0 -33
- package/src/components/core/Input-Text-Email/types.ts +0 -72
- package/src/components/core/Input-Text-Email/validation.ts +0 -130
- package/src/components/core/Input-Text-Password/README.md +0 -360
- package/src/components/core/Input-Text-Password/__tests__/validation.test.ts +0 -362
- package/src/components/core/Input-Text-Password/platforms/web/InputTextPassword.browser.ts +0 -434
- package/src/components/core/Input-Text-Password/platforms/web/InputTextPassword.web.ts +0 -512
- package/src/components/core/Input-Text-Password/stateManagement.ts +0 -244
- package/src/components/core/Input-Text-Password/tokens.ts +0 -32
- package/src/components/core/Input-Text-Password/types.ts +0 -177
- package/src/components/core/Input-Text-Password/validation.ts +0 -207
- package/src/components/core/Input-Text-PhoneNumber/README.md +0 -276
- package/src/components/core/Input-Text-PhoneNumber/__tests__/validation.test.ts +0 -301
- package/src/components/core/Input-Text-PhoneNumber/platforms/web/InputTextPhoneNumber.browser.ts +0 -370
- package/src/components/core/Input-Text-PhoneNumber/platforms/web/InputTextPhoneNumber.web.ts +0 -393
- package/src/components/core/Input-Text-PhoneNumber/stateManagement.ts +0 -250
- package/src/components/core/Input-Text-PhoneNumber/tokens.ts +0 -33
- package/src/components/core/Input-Text-PhoneNumber/types.ts +0 -135
- package/src/components/core/Input-Text-PhoneNumber/validation.ts +0 -302
- package/src/components/core/Nav-Header-App/README.md +0 -29
- package/src/components/core/Nav-Header-App/index.ts +0 -5
- package/src/components/core/Nav-Header-App/platforms/web/NavHeaderApp.web.ts +0 -37
- package/src/components/core/Nav-Header-App/types.ts +0 -32
- package/src/components/core/Nav-Header-Base/README.md +0 -21
- package/src/components/core/Nav-Header-Base/index.ts +0 -12
- package/src/components/core/Nav-Header-Base/platforms/web/NavHeaderBase.styles.css +0 -75
- package/src/components/core/Nav-Header-Base/platforms/web/NavHeaderBase.web.ts +0 -120
- package/src/components/core/Nav-Header-Base/types.ts +0 -63
- package/src/components/core/Nav-Header-Page/README.md +0 -34
- package/src/components/core/Nav-Header-Page/__tests__/NavHeaderPage.test.ts +0 -250
- package/src/components/core/Nav-Header-Page/index.ts +0 -12
- package/src/components/core/Nav-Header-Page/platforms/web/NavHeaderPage.styles.css +0 -90
- package/src/components/core/Nav-Header-Page/platforms/web/NavHeaderPage.web.ts +0 -169
- package/src/components/core/Nav-Header-Page/types.ts +0 -55
- package/src/components/core/Nav-SegmentedChoice-Base/README.md +0 -327
- package/src/components/core/Nav-SegmentedChoice-Base/__tests__/NavSegmentedChoiceBase.android.test.ts +0 -218
- package/src/components/core/Nav-SegmentedChoice-Base/__tests__/NavSegmentedChoiceBase.interaction.test.ts +0 -419
- package/src/components/core/Nav-SegmentedChoice-Base/__tests__/NavSegmentedChoiceBase.ios.test.ts +0 -207
- package/src/components/core/Nav-SegmentedChoice-Base/__tests__/NavSegmentedChoiceBase.visual.test.ts +0 -371
- package/src/components/core/Nav-SegmentedChoice-Base/index.ts +0 -38
- package/src/components/core/Nav-SegmentedChoice-Base/platforms/web/NavSegmentedChoiceBase.styles.css +0 -160
- package/src/components/core/Nav-SegmentedChoice-Base/platforms/web/NavSegmentedChoiceBase.web.ts +0 -477
- package/src/components/core/Nav-SegmentedChoice-Base/types.ts +0 -65
- package/src/components/core/Nav-TabBar-Base/README.md +0 -264
- package/src/components/core/Nav-TabBar-Base/__tests__/NavTabBarBase.android.test.ts +0 -270
- package/src/components/core/Nav-TabBar-Base/__tests__/NavTabBarBase.ios.test.ts +0 -221
- package/src/components/core/Nav-TabBar-Base/__tests__/NavTabBarBase.test.ts +0 -421
- package/src/components/core/Nav-TabBar-Base/examples/BasicUsage.html +0 -2
- package/src/components/core/Nav-TabBar-Base/examples/BasicUsage.tsx +0 -2
- package/src/components/core/Nav-TabBar-Base/index.ts +0 -20
- package/src/components/core/Nav-TabBar-Base/platforms/web/NavTabBarBase.styles.css +0 -281
- package/src/components/core/Nav-TabBar-Base/platforms/web/NavTabBarBase.web.ts +0 -420
- package/src/components/core/Nav-TabBar-Base/types.ts +0 -43
- package/src/components/core/Progress-Bar-Base/README.md +0 -31
- package/src/components/core/Progress-Bar-Base/__tests__/ProgressBarBase.test.ts +0 -202
- package/src/components/core/Progress-Bar-Base/index.ts +0 -6
- package/src/components/core/Progress-Bar-Base/platforms/web/ProgressBarBase.styles.css +0 -52
- package/src/components/core/Progress-Bar-Base/platforms/web/ProgressBarBase.web.ts +0 -135
- package/src/components/core/Progress-Bar-Base/types.ts +0 -46
- package/src/components/core/Progress-Indicator-Connector-Base/README.md +0 -169
- package/src/components/core/Progress-Indicator-Connector-Base/index.ts +0 -33
- package/src/components/core/Progress-Indicator-Connector-Base/platforms/web/ProgressIndicatorConnectorBase.styles.css +0 -50
- package/src/components/core/Progress-Indicator-Connector-Base/platforms/web/ProgressIndicatorConnectorBase.web.ts +0 -141
- package/src/components/core/Progress-Indicator-Connector-Base/types.ts +0 -67
- package/src/components/core/Progress-Indicator-Label-Base/README.md +0 -191
- package/src/components/core/Progress-Indicator-Label-Base/index.ts +0 -28
- package/src/components/core/Progress-Indicator-Label-Base/platforms/web/ProgressIndicatorLabelBase.styles.css +0 -81
- package/src/components/core/Progress-Indicator-Label-Base/platforms/web/ProgressIndicatorLabelBase.web.ts +0 -174
- package/src/components/core/Progress-Indicator-Label-Base/types.ts +0 -64
- package/src/components/core/Progress-Indicator-Node-Base/README.md +0 -206
- package/src/components/core/Progress-Indicator-Node-Base/__tests__/VisualStates.test.ts +0 -259
- package/src/components/core/Progress-Indicator-Node-Base/index.ts +0 -36
- package/src/components/core/Progress-Indicator-Node-Base/platforms/web/ProgressIndicatorNodeBase.styles.css +0 -193
- package/src/components/core/Progress-Indicator-Node-Base/platforms/web/ProgressIndicatorNodeBase.web.ts +0 -226
- package/src/components/core/Progress-Indicator-Node-Base/types.ts +0 -142
- package/src/components/core/Progress-Pagination-Base/README.md +0 -290
- package/src/components/core/Progress-Pagination-Base/__tests__/PaginationBase.test.ts +0 -290
- package/src/components/core/Progress-Pagination-Base/index.ts +0 -40
- package/src/components/core/Progress-Pagination-Base/platforms/web/ProgressPaginationBase.styles.css +0 -80
- package/src/components/core/Progress-Pagination-Base/platforms/web/ProgressPaginationBase.web.ts +0 -293
- package/src/components/core/Progress-Pagination-Base/types.ts +0 -112
- package/src/components/core/Progress-Stepper-Base/README.md +0 -311
- package/src/components/core/Progress-Stepper-Base/__tests__/StepperBase.test.ts +0 -345
- package/src/components/core/Progress-Stepper-Base/index.ts +0 -43
- package/src/components/core/Progress-Stepper-Base/platforms/web/ProgressStepperBase.styles.css +0 -49
- package/src/components/core/Progress-Stepper-Base/platforms/web/ProgressStepperBase.web.ts +0 -288
- package/src/components/core/Progress-Stepper-Base/types.ts +0 -175
- package/src/components/core/Progress-Stepper-Detailed/README.md +0 -401
- package/src/components/core/Progress-Stepper-Detailed/__tests__/StepperDetailed.test.ts +0 -481
- package/src/components/core/Progress-Stepper-Detailed/index.ts +0 -48
- package/src/components/core/Progress-Stepper-Detailed/platforms/web/ProgressStepperDetailed.styles.css +0 -106
- package/src/components/core/Progress-Stepper-Detailed/platforms/web/ProgressStepperDetailed.web.ts +0 -336
- package/src/components/core/Progress-Stepper-Detailed/types.ts +0 -195
- package/src/composition/BlendComposition.ts +0 -46
- package/src/composition/BlendCompositionParser.ts +0 -215
- package/src/composition/OpacityComposition.ts +0 -62
- package/src/composition/OpacityCompositionParser.ts +0 -308
- package/src/composition/__tests__/BlendCompositionParser.test.ts +0 -431
- package/src/composition/__tests__/OpacityCompositionParser.test.ts +0 -539
- package/src/composition/index.ts +0 -20
- package/src/config/ConfigLoader.ts +0 -143
- package/src/config/__resolution-matrix__/README.md +0 -76
- package/src/config/__resolution-matrix__/fixtures/faithful-cjs/compiled/defineConfig.js +0 -9
- package/src/config/__resolution-matrix__/fixtures/faithful-cjs/designerpunk.config.ts +0 -20
- package/src/config/__resolution-matrix__/fixtures/faithful-cjs/my-overrides.ts +0 -8
- package/src/config/__resolution-matrix__/fixtures/faithful-esm/compiled/defineConfig.js +0 -11
- package/src/config/__resolution-matrix__/fixtures/faithful-esm/designerpunk.config.ts +0 -23
- package/src/config/__resolution-matrix__/fixtures/faithful-esm/my-overrides.ts +0 -6
- package/src/config/__resolution-matrix__/fixtures/source-dir-cjs/designerpunk.config.ts +0 -11
- package/src/config/__resolution-matrix__/fixtures/source-dir-cjs/src/config/index.ts +0 -15
- package/src/config/__resolution-matrix__/fixtures/source-dir-esm/designerpunk.config.ts +0 -15
- package/src/config/__resolution-matrix__/fixtures/source-dir-esm/src/config/index.ts +0 -13
- package/src/config/__resolution-matrix__/run-matrix.js +0 -107
- package/src/config/__resolution-matrix__/runner.js +0 -153
- package/src/config/__resolution-matrix__/verify-real-loadconfig.js +0 -122
- package/src/config/__tests__/ConfigLoader.test.ts +0 -115
- package/src/config/defineConfig.ts +0 -71
- package/src/config/index.ts +0 -7
- package/src/config/scopedTsRequire.ts +0 -62
- package/src/constants/BaselineGrid.ts +0 -41
- package/src/constants/SpacingTokens.ts +0 -55
- package/src/figma/ComponentAnalysis.ts +0 -292
- package/src/figma/ComponentAnalysisGenerator.ts +0 -444
- package/src/figma/ConsoleMCPClient.ts +0 -168
- package/src/figma/ConsoleMCPClientImpl.ts +0 -1034
- package/src/figma/DesignExtractor.ts +0 -3620
- package/src/figma/TokenSyncWorkflow.ts +0 -915
- package/src/figma/TokenTranslator.ts +0 -891
- package/src/figma/VariantAnalyzer.ts +0 -712
- package/src/figma/__tests__/ComponentAnalysisGenerator.json.test.ts +0 -429
- package/src/figma/__tests__/ComponentAnalysisGenerator.markdown.test.ts +0 -428
- package/src/figma/__tests__/ConsoleMCPClient.bugfix.test.ts +0 -261
- package/src/figma/__tests__/ConsoleMCPClient.preservation.test.ts +0 -395
- package/src/figma/__tests__/ConsoleMCPClient.test.ts +0 -375
- package/src/figma/__tests__/DesignExtractor.boundVariableResolution.test.ts +0 -580
- package/src/figma/__tests__/DesignExtractor.buildNodeTree.test.ts +0 -535
- package/src/figma/__tests__/DesignExtractor.captureComponentScreenshot.test.ts +0 -176
- package/src/figma/__tests__/DesignExtractor.detectBehavioralContracts.test.ts +0 -263
- package/src/figma/__tests__/DesignExtractor.detectComponentTokenDecisions.test.ts +0 -379
- package/src/figma/__tests__/DesignExtractor.detectCompositionPatterns.test.ts +0 -507
- package/src/figma/__tests__/DesignExtractor.detectPlatformParity.test.ts +0 -406
- package/src/figma/__tests__/DesignExtractor.queryContext.test.ts +0 -214
- package/src/figma/__tests__/DesignExtractor.readFigmaComponent.test.ts +0 -431
- package/src/figma/__tests__/DesignExtractor.readStyles.test.ts +0 -204
- package/src/figma/__tests__/DesignExtractor.readTokenBindings.test.ts +0 -268
- package/src/figma/__tests__/DesignExtractor.reconstructCompositeTokens.test.ts +0 -403
- package/src/figma/__tests__/DesignExtractor.resolveUnknownVariableIds.test.ts +0 -259
- package/src/figma/__tests__/DesignExtractor.translateTokens.test.ts +0 -433
- package/src/figma/__tests__/DesignExtractor.validateModes.test.ts +0 -350
- package/src/figma/__tests__/TokenSyncWorkflow.batch.test.ts +0 -277
- package/src/figma/__tests__/TokenSyncWorkflow.drift.test.ts +0 -187
- package/src/figma/__tests__/TokenSyncWorkflow.preservation.test.ts +0 -544
- package/src/figma/__tests__/TokenSyncWorkflow.styles.test.ts +0 -245
- package/src/figma/__tests__/TokenSyncWorkflow.sync.test.ts +0 -217
- package/src/figma/__tests__/TokenTranslator.test.ts +0 -757
- package/src/figma/__tests__/VariantAnalyzer.detectConflicts.test.ts +0 -126
- package/src/figma/__tests__/VariantAnalyzer.test.ts +0 -633
- package/src/figma/__tests__/error-reporting.test.ts +0 -254
- package/src/figma/__tests__/preflight.test.ts +0 -94
- package/src/figma/error-reporting.ts +0 -260
- package/src/figma/index.ts +0 -98
- package/src/figma/portCleanup.ts +0 -86
- package/src/figma/preflight.ts +0 -120
- package/src/generators/BlendUtilityGenerator.ts +0 -847
- package/src/generators/BlendValueGenerator.ts +0 -198
- package/src/generators/DTCGFormatGenerator.ts +0 -1355
- package/src/generators/DTCGGeneratorConfig.ts +0 -46
- package/src/generators/ModeResolvedTokens.ts +0 -58
- package/src/generators/ResponsiveGridGenerator.ts +0 -273
- package/src/generators/TokenFileGenerator.ts +0 -2075
- package/src/generators/__tests__/AccessibilityTokenGeneration.test.ts +0 -350
- package/src/generators/__tests__/BlendUtilityGenerator.test.ts +0 -829
- package/src/generators/__tests__/BlendValueGenerator.test.ts +0 -200
- package/src/generators/__tests__/BreakpointTokenGeneration.test.ts +0 -172
- package/src/generators/__tests__/CSSThemeScoping.test.ts +0 -153
- package/src/generators/__tests__/DTCGConfigOptions.test.ts +0 -271
- package/src/generators/__tests__/DTCGErrorHandling.test.ts +0 -139
- package/src/generators/__tests__/DTCGFormatGenerator.integration.test.ts +0 -346
- package/src/generators/__tests__/DTCGFormatGenerator.property.test.ts +0 -497
- package/src/generators/__tests__/DTCGFormatGenerator.test.ts +0 -469
- package/src/generators/__tests__/FigmaTransformer.styles.test.ts +0 -398
- package/src/generators/__tests__/FigmaTransformer.variables.test.ts +0 -540
- package/src/generators/__tests__/GridSpacingTokenGeneration.test.ts +0 -254
- package/src/generators/__tests__/IconTokenGeneration.test.ts +0 -452
- package/src/generators/__tests__/KotlinThemeTypes.test.ts +0 -110
- package/src/generators/__tests__/ModeAwareGeneration.test.ts +0 -160
- package/src/generators/__tests__/NativeOklchOutput.test.ts +0 -56
- package/src/generators/__tests__/OklchExport.test.ts +0 -71
- package/src/generators/__tests__/ProductRepoSimulation.test.ts +0 -91
- package/src/generators/__tests__/ResponsiveGridGeneration.test.ts +0 -291
- package/src/generators/__tests__/Spec076TokenMigration.test.ts +0 -106
- package/src/generators/__tests__/Spec077ModesVerification.test.ts +0 -52
- package/src/generators/__tests__/SwiftThemeTypes.test.ts +0 -122
- package/src/generators/__tests__/TokenFileGenerator.test.ts +0 -914
- package/src/generators/__tests__/TransformerRegistry.test.ts +0 -118
- package/src/generators/__tests__/WcagValueExportSupport.test.ts +0 -84
- package/src/generators/__tests__/WcagValueInfrastructure.test.ts +0 -122
- package/src/generators/__tests__/WebOklchOutput.test.ts +0 -72
- package/src/generators/__tests__/generateTokenIndex.test.ts +0 -204
- package/src/generators/__tests__/helpers/defaultSemanticOptions.ts +0 -24
- package/src/generators/generateTokenFiles.ts +0 -337
- package/src/generators/generateTokenIndex.ts +0 -258
- package/src/generators/oklch/OklchExportUtils.ts +0 -57
- package/src/generators/oklch/OklchTokenIndexMetadata.ts +0 -30
- package/src/generators/transformers/FigmaTransformer.ts +0 -912
- package/src/generators/transformers/ITokenTransformer.ts +0 -56
- package/src/generators/transformers/TransformerRegistry.ts +0 -63
- package/src/generators/transformers/index.ts +0 -52
- package/src/generators/types/DTCGTypes.ts +0 -101
- package/src/integration/BuildErrorHandler.ts +0 -440
- package/src/integration/BuildSystemInterface.ts +0 -338
- package/src/integration/PlatformFileSelector.ts +0 -288
- package/src/integration/RegistryCoordinator.ts +0 -404
- package/src/integration/TranslationCoordinator.ts +0 -458
- package/src/integration/TreeShakingOptimizer.ts +0 -350
- package/src/integration/ValidationCoordinator.ts +0 -780
- package/src/integration/__tests__/ComponentTokenValidation.test.ts +0 -762
- package/src/integration/__tests__/ValidationCoordinator.test.ts +0 -609
- package/src/integration/__tests__/performance/ComponentTokenValidationPerformance.test.ts +0 -161
- package/src/integration/index.ts +0 -55
- package/src/naming/NamingConventionManager.ts +0 -318
- package/src/naming/PlatformNamingRules.ts +0 -278
- package/src/naming/__tests__/NamingConventions.test.ts +0 -224
- package/src/naming/index.ts +0 -23
- package/src/parent-completion.md +0 -1
- package/src/performance/CachingStrategy.ts +0 -426
- package/src/performance/FileGenerationOptimizer.ts +0 -294
- package/src/performance/PerformanceMonitor.ts +0 -185
- package/src/performance/PerformanceOptimizer.ts +0 -348
- package/src/performance/index.ts +0 -30
- package/src/providers/AndroidFileOrganizer.ts +0 -241
- package/src/providers/AndroidFormatGenerator.ts +0 -750
- package/src/providers/AndroidUnitConverter.ts +0 -177
- package/src/providers/FormatProvider.ts +0 -187
- package/src/providers/PathProvider.ts +0 -197
- package/src/providers/UnitProvider.ts +0 -106
- package/src/providers/WebFileOrganizer.ts +0 -121
- package/src/providers/WebFormatGenerator.ts +0 -611
- package/src/providers/WebUnitConverter.ts +0 -116
- package/src/providers/__tests__/AndroidAccessibilityTokens.test.ts +0 -86
- package/src/providers/__tests__/AndroidFormatGenerator-semantic.test.ts +0 -494
- package/src/providers/__tests__/FormatProviders.test.ts +0 -828
- package/src/providers/__tests__/InsetTokenGeneration.test.ts +0 -627
- package/src/providers/__tests__/PathProviders.test.ts +0 -512
- package/src/providers/__tests__/PlatformOutputFormat.test.ts +0 -252
- package/src/providers/__tests__/UnitProviders.test.ts +0 -721
- package/src/providers/__tests__/WebFormatGenerator-semantic.test.ts +0 -293
- package/src/providers/__tests__/iOSFormatGenerator-semantic.test.ts +0 -410
- package/src/providers/iOSFileOrganizer.ts +0 -162
- package/src/providers/iOSFormatGenerator.ts +0 -599
- package/src/providers/iOSUnitConverter.ts +0 -125
- package/src/providers/index.ts +0 -26
- package/src/registries/ComponentTokenRegistry.ts +0 -292
- package/src/registries/IRegistry.ts +0 -170
- package/src/registries/__tests__/ComponentTokenRegistry.test.ts +0 -446
- package/src/registries/__tests__/IRegistry.test.ts +0 -250
- package/src/registries/__tests__/PrimitiveTokenRegistry.test.ts +0 -342
- package/src/registries/__tests__/SemanticTokenRegistry.test.ts +0 -444
- package/src/resolvers/AndroidColorResolver.ts +0 -333
- package/src/resolvers/ModeThemeResolver.ts +0 -152
- package/src/resolvers/SemanticOverrideResolver.ts +0 -155
- package/src/resolvers/SemanticValueResolver.ts +0 -133
- package/src/resolvers/WebColorResolver.ts +0 -240
- package/src/resolvers/__tests__/AndroidColorResolver.test.ts +0 -507
- package/src/resolvers/__tests__/ModeThemeResolver.test.ts +0 -411
- package/src/resolvers/__tests__/SemanticOverrideResolver.test.ts +0 -186
- package/src/resolvers/__tests__/WebColorResolver.test.ts +0 -405
- package/src/resolvers/__tests__/iOSColorResolver.test.ts +0 -432
- package/src/resolvers/iOSColorResolver.ts +0 -224
- package/src/resolvers/index.ts +0 -11
- package/src/security/AIAgentRestrictions.ts +0 -298
- package/src/security/ContaminationAuditor.ts +0 -393
- package/src/security/ContaminationPrevention.ts +0 -275
- package/src/security/DocumentationGuard.ts +0 -258
- package/src/security/FlexibilityTokenGuard.ts +0 -256
- package/src/security/HumanApprovalWorkflow.ts +0 -319
- package/src/security/__tests__/AIAgentRestrictions.test.ts +0 -482
- package/src/security/__tests__/ContaminationPrevention.test.ts +0 -424
- package/src/security/__tests__/SecurityIntegration.test.ts +0 -505
- package/src/security/index.ts +0 -48
- package/src/testing/__tests__/utilities.test.ts +0 -175
- package/src/testing/index.ts +0 -154
- package/src/testing/jest-preset.ts +0 -62
- package/src/testing/style-mock.ts +0 -7
- package/src/testing/validators.ts +0 -10
- package/src/themes/ResolvedThemeSet.ts +0 -22
- package/src/themes/ThemeRegistry.ts +0 -97
- package/src/themes/__tests__/ThemeRegistry.test.ts +0 -162
- package/src/tools/ThemeFileGenerator.ts +0 -109
- package/src/tools/integrity/DiskFreshGenerator.ts +0 -36
- package/src/tools/integrity/GenerationIntegrityCheck.ts +0 -132
- package/src/tools/integrity/Invariants.ts +0 -228
- package/src/tools/integrity/Normalizer.ts +0 -94
- package/src/tools/integrity/SemanticComparator.ts +0 -127
- package/src/tools/integrity/__tests__/GenerationIntegrityCheck.test.ts +0 -132
- package/src/tools/integrity/__tests__/Invariants.test.ts +0 -142
- package/src/tools/integrity/__tests__/Normalizer.test.ts +0 -65
- package/src/tools/integrity/__tests__/SemanticComparator.test.ts +0 -62
- package/src/tools/integrity/__tests__/consumer-package-mode.test.ts +0 -205
- package/src/tools/integrity/cli/run-audit.ts +0 -150
- package/src/tools/integrity/inventory.ts +0 -51
- package/src/tools/integrity/manifest.ts +0 -56
- package/src/tools/integrity/types/index.ts +0 -183
- package/src/types/ComponentTypes.ts +0 -76
- package/src/types/TranslationOutput.ts +0 -105
- package/src/types/ValidationResult.ts +0 -74
- package/src/types/__tests__/ComponentTypes.test.ts +0 -73
- package/src/types/css.d.ts +0 -35
- package/src/types/generated/TokenTypes.ts +0 -142
- package/src/types/index.ts +0 -42
- package/src/validators/BaselineGridValidator.ts +0 -119
- package/src/validators/CompositionPatternValidator.ts +0 -259
- package/src/validators/CrossPlatformConsistencyValidator.ts +0 -498
- package/src/validators/ErrorValidator.ts +0 -998
- package/src/validators/IValidator.ts +0 -273
- package/src/validators/MathematicalRelationshipParser.ts +0 -434
- package/src/validators/ModeParity.ts +0 -123
- package/src/validators/PassValidator.ts +0 -533
- package/src/validators/PlatformConstraintHandler.ts +0 -453
- package/src/validators/PrimitiveReferenceValidator.ts +0 -284
- package/src/validators/SemanticTokenValidator.ts +0 -496
- package/src/validators/StemmaComponentNamingValidator.ts +0 -524
- package/src/validators/StemmaErrorGuidanceSystem.ts +0 -1600
- package/src/validators/StemmaPropertyAccessibilityValidator.ts +0 -823
- package/src/validators/StemmaTokenUsageValidator.ts +0 -651
- package/src/validators/SyntaxValidator.ts +0 -537
- package/src/validators/ThreeTierValidator.ts +0 -822
- package/src/validators/ToleranceCalculator.ts +0 -324
- package/src/validators/ValidationReasoning.ts +0 -464
- package/src/validators/WCAGValidator.ts +0 -219
- package/src/validators/WarningValidator.ts +0 -626
- package/src/validators/__tests__/BaselineGridValidator.test.ts +0 -292
- package/src/validators/__tests__/BorderWidthValidation.test.ts +0 -595
- package/src/validators/__tests__/CompositionPatterns.test.ts +0 -463
- package/src/validators/__tests__/CrossPlatformConsistency.test.ts +0 -834
- package/src/validators/__tests__/IValidator.test.ts +0 -258
- package/src/validators/__tests__/MathematicalRelationshipParser.test.ts +0 -465
- package/src/validators/__tests__/PlatformConstraints.test.ts +0 -486
- package/src/validators/__tests__/SemanticTokenValidator.test.ts +0 -723
- package/src/validators/__tests__/StemmaComponentNamingValidator.test.ts +0 -597
- package/src/validators/__tests__/StemmaErrorGuidanceSystem.test.ts +0 -717
- package/src/validators/__tests__/StemmaPropertyAccessibilityValidator.test.ts +0 -349
- package/src/validators/__tests__/StemmaTokenUsageValidator.test.ts +0 -432
- package/src/validators/__tests__/SyntaxValidator.test.ts +0 -360
- package/src/validators/__tests__/ThreeTierValidator.test.ts +0 -906
- package/src/validators/__tests__/ValidationReasoning.test.ts +0 -636
- package/src/validators/__tests__/WCAGValidator.test.ts +0 -243
- package/src/validators/buildValidation.ts +0 -170
- package/src/validators/index.ts +0 -144
- package/src/workflows/ConsistencyValidator.ts +0 -339
- package/src/workflows/TokenGenerationWorkflow.ts +0 -460
- package/src/workflows/ValidationPipeline.ts +0 -284
- package/src/workflows/WorkflowErrorHandler.ts +0 -441
|
@@ -1,998 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Error-Level Validation Logic
|
|
3
|
-
*
|
|
4
|
-
* Catches mathematical relationship violations and critical design system errors:
|
|
5
|
-
* - Baseline grid violations (non-strategic flexibility tokens)
|
|
6
|
-
* - Mathematical relationship breakdowns
|
|
7
|
-
* - Cross-platform consistency failures
|
|
8
|
-
* - Invalid token references or compositions
|
|
9
|
-
* - Critical design system constraint violations
|
|
10
|
-
*/
|
|
11
|
-
|
|
12
|
-
import type { PrimitiveToken, SemanticToken, ValidationResult } from '../types';
|
|
13
|
-
import { TokenCategory } from '../types';
|
|
14
|
-
import { isStrategicFlexibilityValue } from '../constants/StrategicFlexibilityTokens';
|
|
15
|
-
import { ValidationReasoning, type ReasoningContext } from './ValidationReasoning';
|
|
16
|
-
import type { IValidator } from './IValidator';
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* Error validation context with detailed mathematical analysis
|
|
20
|
-
*/
|
|
21
|
-
export interface ErrorValidationContext {
|
|
22
|
-
/** Token being validated */
|
|
23
|
-
token: PrimitiveToken | SemanticToken;
|
|
24
|
-
|
|
25
|
-
/** Mathematical validation context */
|
|
26
|
-
mathematicalContext?: {
|
|
27
|
-
/** Expected mathematical relationship */
|
|
28
|
-
expectedRelationship?: string;
|
|
29
|
-
|
|
30
|
-
/** Actual calculated relationship */
|
|
31
|
-
actualRelationship?: string;
|
|
32
|
-
|
|
33
|
-
/** Baseline grid requirements */
|
|
34
|
-
baselineGridRequirement?: {
|
|
35
|
-
required: boolean;
|
|
36
|
-
gridUnit: number;
|
|
37
|
-
expectedAlignment: boolean;
|
|
38
|
-
actualAlignment: boolean;
|
|
39
|
-
};
|
|
40
|
-
|
|
41
|
-
/** Cross-platform consistency data */
|
|
42
|
-
crossPlatformData?: {
|
|
43
|
-
platforms: string[];
|
|
44
|
-
values: Record<string, any>;
|
|
45
|
-
toleranceLevel: number;
|
|
46
|
-
maxDeviation: number;
|
|
47
|
-
failedPairs: string[];
|
|
48
|
-
};
|
|
49
|
-
|
|
50
|
-
/** Family mathematical foundation */
|
|
51
|
-
familyFoundation?: {
|
|
52
|
-
category: TokenCategory;
|
|
53
|
-
baseValue: number;
|
|
54
|
-
expectedProgression: string;
|
|
55
|
-
actualProgression: string;
|
|
56
|
-
validationResult?: any; // RelationshipValidationResult from parser
|
|
57
|
-
};
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
/** Token registry context for reference validation */
|
|
61
|
-
registryContext?: {
|
|
62
|
-
/** Available primitive tokens */
|
|
63
|
-
availablePrimitiveTokens?: string[];
|
|
64
|
-
|
|
65
|
-
/** Available semantic tokens */
|
|
66
|
-
availableSemanticTokens?: string[];
|
|
67
|
-
|
|
68
|
-
/** Token dependency graph */
|
|
69
|
-
dependencyGraph?: Record<string, string[]>;
|
|
70
|
-
|
|
71
|
-
/** Circular reference detection */
|
|
72
|
-
circularReferences?: string[];
|
|
73
|
-
};
|
|
74
|
-
|
|
75
|
-
/** Validation options */
|
|
76
|
-
options?: {
|
|
77
|
-
/** Strict mathematical validation */
|
|
78
|
-
strictMathematics?: boolean;
|
|
79
|
-
|
|
80
|
-
/** Require cross-platform consistency */
|
|
81
|
-
requireCrossPlatformConsistency?: boolean;
|
|
82
|
-
|
|
83
|
-
/** Validate all token references */
|
|
84
|
-
validateReferences?: boolean;
|
|
85
|
-
|
|
86
|
-
/** Check for circular dependencies */
|
|
87
|
-
checkCircularDependencies?: boolean;
|
|
88
|
-
};
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
/**
|
|
92
|
-
* Error-level validator for critical design system violations
|
|
93
|
-
*/
|
|
94
|
-
export class ErrorValidator implements IValidator<ErrorValidationContext> {
|
|
95
|
-
readonly name = 'ErrorValidator';
|
|
96
|
-
private reasoningGenerator: ValidationReasoning;
|
|
97
|
-
|
|
98
|
-
// Mathematical constants
|
|
99
|
-
private readonly BASELINE_GRID_UNIT = 8;
|
|
100
|
-
private readonly CROSS_PLATFORM_TOLERANCE = 0.01; // 1% tolerance
|
|
101
|
-
|
|
102
|
-
constructor(reasoningGenerator?: ValidationReasoning) {
|
|
103
|
-
this.reasoningGenerator = reasoningGenerator || new ValidationReasoning();
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
/**
|
|
107
|
-
* Validate token for Error-level violations
|
|
108
|
-
*/
|
|
109
|
-
validate(context: ErrorValidationContext): ValidationResult | null {
|
|
110
|
-
const { token, mathematicalContext, registryContext, options = {} } = context;
|
|
111
|
-
|
|
112
|
-
// Check for mathematical relationship violations
|
|
113
|
-
const mathematicalError = this.validateMathematicalRelationships(token, mathematicalContext, options);
|
|
114
|
-
if (mathematicalError) {
|
|
115
|
-
return mathematicalError;
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
// Check for border width specific mathematical relationships
|
|
119
|
-
const borderWidthError = this.validateBorderWidthMathematicalRelationships(token, options);
|
|
120
|
-
if (borderWidthError) {
|
|
121
|
-
return borderWidthError;
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
// Check for baseline grid violations
|
|
125
|
-
const baselineGridError = this.validateBaselineGridCompliance(token, mathematicalContext, options);
|
|
126
|
-
if (baselineGridError) {
|
|
127
|
-
return baselineGridError;
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
// Check for cross-platform consistency violations
|
|
131
|
-
const crossPlatformError = this.validateCrossPlatformConsistency(token, mathematicalContext, options);
|
|
132
|
-
if (crossPlatformError) {
|
|
133
|
-
return crossPlatformError;
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
// Check for token reference violations
|
|
137
|
-
const referenceError = this.validateTokenReferences(token, registryContext, options);
|
|
138
|
-
if (referenceError) {
|
|
139
|
-
return referenceError;
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
// Check for border width semantic token reference violations
|
|
143
|
-
const borderWidthSemanticError = this.validateBorderWidthSemanticReferences(token, registryContext, options);
|
|
144
|
-
if (borderWidthSemanticError) {
|
|
145
|
-
return borderWidthSemanticError;
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
// Check for circular dependency violations
|
|
149
|
-
const circularDependencyError = this.validateCircularDependencies(token, registryContext, options);
|
|
150
|
-
if (circularDependencyError) {
|
|
151
|
-
return circularDependencyError;
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
// Check for family foundation violations
|
|
155
|
-
const familyFoundationError = this.validateFamilyFoundation(token, mathematicalContext, options);
|
|
156
|
-
if (familyFoundationError) {
|
|
157
|
-
return familyFoundationError;
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
// No errors detected
|
|
161
|
-
return null;
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
/**
|
|
165
|
-
* Validate mathematical relationships
|
|
166
|
-
*/
|
|
167
|
-
private validateMathematicalRelationships(
|
|
168
|
-
token: PrimitiveToken | SemanticToken,
|
|
169
|
-
mathematicalContext?: ErrorValidationContext['mathematicalContext'],
|
|
170
|
-
options: ErrorValidationContext['options'] = {}
|
|
171
|
-
): ValidationResult | null {
|
|
172
|
-
// Only applies to primitive tokens
|
|
173
|
-
if ('primitiveReferences' in token) {
|
|
174
|
-
return null;
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
const primitiveToken = token as PrimitiveToken;
|
|
178
|
-
|
|
179
|
-
// Check if mathematical relationship is defined and valid
|
|
180
|
-
if (!primitiveToken.mathematicalRelationship || primitiveToken.mathematicalRelationship.trim().length === 0) {
|
|
181
|
-
return this.generateErrorResult(
|
|
182
|
-
token,
|
|
183
|
-
'Missing mathematical relationship',
|
|
184
|
-
`Primitive token ${primitiveToken.name} lacks required mathematical relationship definition`,
|
|
185
|
-
'mathematical-violation',
|
|
186
|
-
{
|
|
187
|
-
relationship: 'Mathematical relationship required for all primitive tokens'
|
|
188
|
-
},
|
|
189
|
-
[
|
|
190
|
-
'Define mathematical relationship to family base value',
|
|
191
|
-
`Specify relationship for ${primitiveToken.category} family (base: ${primitiveToken.familyBaseValue})`,
|
|
192
|
-
'Ensure relationship explains how token value is derived',
|
|
193
|
-
'Follow mathematical progression patterns for token family'
|
|
194
|
-
]
|
|
195
|
-
);
|
|
196
|
-
}
|
|
197
|
-
|
|
198
|
-
// Validate mathematical relationship accuracy
|
|
199
|
-
if (mathematicalContext?.expectedRelationship && mathematicalContext?.actualRelationship) {
|
|
200
|
-
if (mathematicalContext.expectedRelationship !== mathematicalContext.actualRelationship) {
|
|
201
|
-
return this.generateErrorResult(
|
|
202
|
-
token,
|
|
203
|
-
'Mathematical relationship violation',
|
|
204
|
-
'Calculated mathematical relationship does not match expected relationship',
|
|
205
|
-
'mathematical-violation',
|
|
206
|
-
{
|
|
207
|
-
relationship: `Expected: ${mathematicalContext.expectedRelationship}, Actual: ${mathematicalContext.actualRelationship}`
|
|
208
|
-
},
|
|
209
|
-
[
|
|
210
|
-
`Correct mathematical relationship to: ${mathematicalContext.expectedRelationship}`,
|
|
211
|
-
'Verify token value calculation against family base value',
|
|
212
|
-
'Ensure mathematical progression follows family patterns',
|
|
213
|
-
'Review token derivation methodology'
|
|
214
|
-
]
|
|
215
|
-
);
|
|
216
|
-
}
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
// Validate base value consistency
|
|
220
|
-
if (primitiveToken.baseValue <= 0) {
|
|
221
|
-
return this.generateErrorResult(
|
|
222
|
-
token,
|
|
223
|
-
'Invalid base value',
|
|
224
|
-
`Base value ${primitiveToken.baseValue} must be positive`,
|
|
225
|
-
'mathematical-violation',
|
|
226
|
-
{
|
|
227
|
-
actualValue: primitiveToken.baseValue,
|
|
228
|
-
relationship: 'Base values must be positive for mathematical consistency'
|
|
229
|
-
},
|
|
230
|
-
[
|
|
231
|
-
'Use positive base value',
|
|
232
|
-
'Verify token value calculation',
|
|
233
|
-
'Check mathematical relationship derivation'
|
|
234
|
-
]
|
|
235
|
-
);
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
// Validate family base value consistency
|
|
239
|
-
if (primitiveToken.familyBaseValue <= 0) {
|
|
240
|
-
return this.generateErrorResult(
|
|
241
|
-
token,
|
|
242
|
-
'Invalid family base value',
|
|
243
|
-
`Family base value ${primitiveToken.familyBaseValue} must be positive`,
|
|
244
|
-
'mathematical-violation',
|
|
245
|
-
{
|
|
246
|
-
actualValue: primitiveToken.familyBaseValue,
|
|
247
|
-
relationship: 'Family base values must be positive for mathematical consistency'
|
|
248
|
-
},
|
|
249
|
-
[
|
|
250
|
-
'Verify family base value configuration',
|
|
251
|
-
'Check token family mathematical foundation',
|
|
252
|
-
'Ensure consistent family base value across all tokens in family'
|
|
253
|
-
]
|
|
254
|
-
);
|
|
255
|
-
}
|
|
256
|
-
|
|
257
|
-
return null;
|
|
258
|
-
}
|
|
259
|
-
|
|
260
|
-
/**
|
|
261
|
-
* Validate border width mathematical relationships
|
|
262
|
-
*
|
|
263
|
-
* Border width tokens follow a doubling progression:
|
|
264
|
-
* - borderWidth100 = 1 (base value)
|
|
265
|
-
* - borderWidth200 = borderWidth100 × 2 = 2
|
|
266
|
-
* - borderWidth400 = borderWidth100 × 4 = 4
|
|
267
|
-
*/
|
|
268
|
-
private validateBorderWidthMathematicalRelationships(
|
|
269
|
-
token: PrimitiveToken | SemanticToken,
|
|
270
|
-
options: ErrorValidationContext['options'] = {}
|
|
271
|
-
): ValidationResult | null {
|
|
272
|
-
// Only applies to primitive border width tokens
|
|
273
|
-
if ('primitiveReferences' in token) {
|
|
274
|
-
return null;
|
|
275
|
-
}
|
|
276
|
-
|
|
277
|
-
const primitiveToken = token as PrimitiveToken;
|
|
278
|
-
|
|
279
|
-
// Only validate border width tokens
|
|
280
|
-
if (primitiveToken.category !== TokenCategory.BORDER_WIDTH) {
|
|
281
|
-
return null;
|
|
282
|
-
}
|
|
283
|
-
|
|
284
|
-
const baseValue = 1; // Border width base value
|
|
285
|
-
const tokenName = primitiveToken.name;
|
|
286
|
-
|
|
287
|
-
// Validate borderWidth200 = borderWidth100 × 2
|
|
288
|
-
if (tokenName === 'borderWidth200') {
|
|
289
|
-
const expectedValue = baseValue * 2;
|
|
290
|
-
if (primitiveToken.baseValue !== expectedValue) {
|
|
291
|
-
return this.generateErrorResult(
|
|
292
|
-
token,
|
|
293
|
-
'Border width mathematical relationship violation',
|
|
294
|
-
`borderWidth200 must equal borderWidth100 × 2 (expected: ${expectedValue}, actual: ${primitiveToken.baseValue})`,
|
|
295
|
-
'mathematical-violation',
|
|
296
|
-
{
|
|
297
|
-
expectedValue,
|
|
298
|
-
actualValue: primitiveToken.baseValue,
|
|
299
|
-
relationship: 'borderWidth200 = borderWidth100 × 2'
|
|
300
|
-
},
|
|
301
|
-
[
|
|
302
|
-
`Set borderWidth200 base value to ${expectedValue}`,
|
|
303
|
-
'Verify mathematical relationship: borderWidth200 = borderWidth100 × 2',
|
|
304
|
-
'Ensure doubling progression is maintained',
|
|
305
|
-
'Review border width token mathematical foundation'
|
|
306
|
-
]
|
|
307
|
-
);
|
|
308
|
-
}
|
|
309
|
-
}
|
|
310
|
-
|
|
311
|
-
// Validate borderWidth400 = borderWidth100 × 4
|
|
312
|
-
if (tokenName === 'borderWidth400') {
|
|
313
|
-
const expectedValue = baseValue * 4;
|
|
314
|
-
if (primitiveToken.baseValue !== expectedValue) {
|
|
315
|
-
return this.generateErrorResult(
|
|
316
|
-
token,
|
|
317
|
-
'Border width mathematical relationship violation',
|
|
318
|
-
`borderWidth400 must equal borderWidth100 × 4 (expected: ${expectedValue}, actual: ${primitiveToken.baseValue})`,
|
|
319
|
-
'mathematical-violation',
|
|
320
|
-
{
|
|
321
|
-
expectedValue,
|
|
322
|
-
actualValue: primitiveToken.baseValue,
|
|
323
|
-
relationship: 'borderWidth400 = borderWidth100 × 4'
|
|
324
|
-
},
|
|
325
|
-
[
|
|
326
|
-
`Set borderWidth400 base value to ${expectedValue}`,
|
|
327
|
-
'Verify mathematical relationship: borderWidth400 = borderWidth100 × 4',
|
|
328
|
-
'Ensure doubling progression is maintained',
|
|
329
|
-
'Review border width token mathematical foundation'
|
|
330
|
-
]
|
|
331
|
-
);
|
|
332
|
-
}
|
|
333
|
-
}
|
|
334
|
-
|
|
335
|
-
// Validate borderWidth100 base value
|
|
336
|
-
if (tokenName === 'borderWidth100') {
|
|
337
|
-
if (primitiveToken.baseValue !== baseValue) {
|
|
338
|
-
return this.generateErrorResult(
|
|
339
|
-
token,
|
|
340
|
-
'Border width base value violation',
|
|
341
|
-
`borderWidth100 must equal base value (expected: ${baseValue}, actual: ${primitiveToken.baseValue})`,
|
|
342
|
-
'mathematical-violation',
|
|
343
|
-
{
|
|
344
|
-
expectedValue: baseValue,
|
|
345
|
-
actualValue: primitiveToken.baseValue,
|
|
346
|
-
relationship: 'borderWidth100 = 1 (base value)'
|
|
347
|
-
},
|
|
348
|
-
[
|
|
349
|
-
`Set borderWidth100 base value to ${baseValue}`,
|
|
350
|
-
'Verify border width base value is 1',
|
|
351
|
-
'Ensure all border width tokens derive from this base',
|
|
352
|
-
'Review border width token mathematical foundation'
|
|
353
|
-
]
|
|
354
|
-
);
|
|
355
|
-
}
|
|
356
|
-
}
|
|
357
|
-
|
|
358
|
-
return null;
|
|
359
|
-
}
|
|
360
|
-
|
|
361
|
-
/**
|
|
362
|
-
* Validate border width semantic token references
|
|
363
|
-
*
|
|
364
|
-
* Semantic border width tokens must reference the correct primitive tokens:
|
|
365
|
-
* - borderDefault must reference borderWidth100
|
|
366
|
-
* - borderEmphasis must reference borderWidth200
|
|
367
|
-
* - borderHeavy must reference borderWidth400
|
|
368
|
-
*/
|
|
369
|
-
private validateBorderWidthSemanticReferences(
|
|
370
|
-
token: PrimitiveToken | SemanticToken,
|
|
371
|
-
registryContext?: ErrorValidationContext['registryContext'],
|
|
372
|
-
options: ErrorValidationContext['options'] = {}
|
|
373
|
-
): ValidationResult | null {
|
|
374
|
-
// Only applies to semantic tokens
|
|
375
|
-
if (!('primitiveReferences' in token)) {
|
|
376
|
-
return null;
|
|
377
|
-
}
|
|
378
|
-
|
|
379
|
-
const semanticToken = token as SemanticToken;
|
|
380
|
-
|
|
381
|
-
// Only validate border width semantic tokens
|
|
382
|
-
// Border width semantic tokens have names: borderDefault, borderEmphasis, borderHeavy
|
|
383
|
-
const borderWidthSemanticTokens = ['borderDefault', 'borderEmphasis', 'borderHeavy'];
|
|
384
|
-
if (!borderWidthSemanticTokens.includes(semanticToken.name)) {
|
|
385
|
-
return null;
|
|
386
|
-
}
|
|
387
|
-
|
|
388
|
-
// Define expected primitive references for each semantic token
|
|
389
|
-
const expectedReferences: Record<string, string> = {
|
|
390
|
-
borderDefault: 'borderWidth100',
|
|
391
|
-
borderEmphasis: 'borderWidth200',
|
|
392
|
-
borderHeavy: 'borderWidth400'
|
|
393
|
-
};
|
|
394
|
-
|
|
395
|
-
const expectedPrimitive = expectedReferences[semanticToken.name];
|
|
396
|
-
|
|
397
|
-
// Get the actual primitive reference
|
|
398
|
-
// Semantic border width tokens use { value: 'primitiveTokenName' } pattern
|
|
399
|
-
const actualPrimitive = semanticToken.primitiveReferences.value;
|
|
400
|
-
|
|
401
|
-
// Validate that the semantic token references the correct primitive
|
|
402
|
-
if (actualPrimitive !== expectedPrimitive) {
|
|
403
|
-
return this.generateErrorResult(
|
|
404
|
-
token,
|
|
405
|
-
'Border width semantic token reference violation',
|
|
406
|
-
`${semanticToken.name} must reference ${expectedPrimitive} (actual: ${actualPrimitive || 'none'})`,
|
|
407
|
-
'mathematical-violation',
|
|
408
|
-
{
|
|
409
|
-
relationship: `Expected: ${semanticToken.name} → ${expectedPrimitive}, Actual: ${semanticToken.name} → ${actualPrimitive || 'none'}`
|
|
410
|
-
},
|
|
411
|
-
[
|
|
412
|
-
`Update ${semanticToken.name} to reference ${expectedPrimitive}`,
|
|
413
|
-
'Verify semantic token follows border width reference pattern',
|
|
414
|
-
'Ensure semantic tokens maintain mathematical consistency with primitives',
|
|
415
|
-
'Review border width semantic token definitions'
|
|
416
|
-
]
|
|
417
|
-
);
|
|
418
|
-
}
|
|
419
|
-
|
|
420
|
-
// Validate that the referenced primitive token exists (if registry context provided)
|
|
421
|
-
if (registryContext?.availablePrimitiveTokens) {
|
|
422
|
-
const availablePrimitives = registryContext.availablePrimitiveTokens;
|
|
423
|
-
if (!availablePrimitives.includes(expectedPrimitive)) {
|
|
424
|
-
return this.generateErrorResult(
|
|
425
|
-
token,
|
|
426
|
-
'Border width primitive token not found',
|
|
427
|
-
`${semanticToken.name} references ${expectedPrimitive} which does not exist`,
|
|
428
|
-
'mathematical-violation',
|
|
429
|
-
{
|
|
430
|
-
relationship: `${semanticToken.name} → ${expectedPrimitive} (primitive token not found in registry)`
|
|
431
|
-
},
|
|
432
|
-
[
|
|
433
|
-
`Register primitive token ${expectedPrimitive} before semantic token`,
|
|
434
|
-
'Verify primitive border width tokens are defined',
|
|
435
|
-
'Ensure border width token registration order (primitives before semantics)',
|
|
436
|
-
'Review border width token system setup'
|
|
437
|
-
]
|
|
438
|
-
);
|
|
439
|
-
}
|
|
440
|
-
}
|
|
441
|
-
|
|
442
|
-
return null;
|
|
443
|
-
}
|
|
444
|
-
|
|
445
|
-
/**
|
|
446
|
-
* Validate baseline grid compliance
|
|
447
|
-
*/
|
|
448
|
-
private validateBaselineGridCompliance(
|
|
449
|
-
token: PrimitiveToken | SemanticToken,
|
|
450
|
-
mathematicalContext?: ErrorValidationContext['mathematicalContext'],
|
|
451
|
-
options: ErrorValidationContext['options'] = {}
|
|
452
|
-
): ValidationResult | null {
|
|
453
|
-
// Only applies to primitive tokens
|
|
454
|
-
if ('primitiveReferences' in token) {
|
|
455
|
-
return null;
|
|
456
|
-
}
|
|
457
|
-
|
|
458
|
-
const primitiveToken = token as PrimitiveToken;
|
|
459
|
-
|
|
460
|
-
// Only spacing and radius tokens require baseline grid alignment
|
|
461
|
-
if (!this.requiresBaselineGridAlignment(primitiveToken.category)) {
|
|
462
|
-
return null;
|
|
463
|
-
}
|
|
464
|
-
|
|
465
|
-
// Strategic flexibility tokens are exempt from baseline grid requirements
|
|
466
|
-
// Strategic flexibility values: 2, 4, 6, 10, 12, 20
|
|
467
|
-
// - 2: Fine-grain spacing for exceptional component-internal needs
|
|
468
|
-
// - 4, 12: Sub-grid spacing for medium/large adjustments
|
|
469
|
-
// - 6, 10, 20: Specific design requirements that break 8-unit grid
|
|
470
|
-
if (primitiveToken.isStrategicFlexibility || isStrategicFlexibilityValue(primitiveToken.baseValue)) {
|
|
471
|
-
return null;
|
|
472
|
-
}
|
|
473
|
-
|
|
474
|
-
// Check baseline grid alignment (8-unit primary grid)
|
|
475
|
-
// Spacing and radius tokens must align to 8-unit grid or be strategic flexibility
|
|
476
|
-
const gridRequirement = mathematicalContext?.baselineGridRequirement;
|
|
477
|
-
const gridUnit = gridRequirement?.gridUnit || this.BASELINE_GRID_UNIT;
|
|
478
|
-
const isAligned = primitiveToken.baseValue % gridUnit === 0;
|
|
479
|
-
|
|
480
|
-
if (!isAligned) {
|
|
481
|
-
const nearestLower = Math.floor(primitiveToken.baseValue / gridUnit) * gridUnit;
|
|
482
|
-
const nearestUpper = Math.ceil(primitiveToken.baseValue / gridUnit) * gridUnit;
|
|
483
|
-
|
|
484
|
-
return this.generateErrorResult(
|
|
485
|
-
token,
|
|
486
|
-
'Baseline grid alignment violation',
|
|
487
|
-
`Token value ${primitiveToken.baseValue} does not align with ${gridUnit}-unit baseline grid`,
|
|
488
|
-
'mathematical-violation',
|
|
489
|
-
{
|
|
490
|
-
actualValue: primitiveToken.baseValue,
|
|
491
|
-
relationship: `${primitiveToken.baseValue} ÷ ${gridUnit} = ${primitiveToken.baseValue / gridUnit} (non-integer)`,
|
|
492
|
-
baselineGridInfo: {
|
|
493
|
-
gridUnit,
|
|
494
|
-
isAligned: false,
|
|
495
|
-
nearestValid: nearestLower !== primitiveToken.baseValue ? nearestLower : nearestUpper
|
|
496
|
-
}
|
|
497
|
-
},
|
|
498
|
-
[
|
|
499
|
-
`Use ${nearestLower} or ${nearestUpper} for baseline grid alignment`,
|
|
500
|
-
`Ensure value is multiple of ${gridUnit}`,
|
|
501
|
-
'Consider if this should be a strategic flexibility token',
|
|
502
|
-
'Review mathematical relationship to ensure grid alignment'
|
|
503
|
-
]
|
|
504
|
-
);
|
|
505
|
-
}
|
|
506
|
-
|
|
507
|
-
// Validate baseline grid alignment flag consistency
|
|
508
|
-
if (primitiveToken.baselineGridAlignment !== isAligned) {
|
|
509
|
-
return this.generateErrorResult(
|
|
510
|
-
token,
|
|
511
|
-
'Baseline grid alignment flag inconsistency',
|
|
512
|
-
`Token baselineGridAlignment flag (${primitiveToken.baselineGridAlignment}) does not match actual alignment (${isAligned})`,
|
|
513
|
-
'mathematical-violation',
|
|
514
|
-
{
|
|
515
|
-
relationship: 'Baseline grid alignment flag must match actual mathematical alignment'
|
|
516
|
-
},
|
|
517
|
-
[
|
|
518
|
-
`Set baselineGridAlignment to ${isAligned}`,
|
|
519
|
-
'Ensure flag consistency with mathematical calculation',
|
|
520
|
-
'Verify token configuration accuracy'
|
|
521
|
-
]
|
|
522
|
-
);
|
|
523
|
-
}
|
|
524
|
-
|
|
525
|
-
return null;
|
|
526
|
-
}
|
|
527
|
-
|
|
528
|
-
/**
|
|
529
|
-
* Validate cross-platform consistency
|
|
530
|
-
*/
|
|
531
|
-
private validateCrossPlatformConsistency(
|
|
532
|
-
token: PrimitiveToken | SemanticToken,
|
|
533
|
-
mathematicalContext?: ErrorValidationContext['mathematicalContext'],
|
|
534
|
-
options: ErrorValidationContext['options'] = {}
|
|
535
|
-
): ValidationResult | null {
|
|
536
|
-
if (!options.requireCrossPlatformConsistency) {
|
|
537
|
-
return null;
|
|
538
|
-
}
|
|
539
|
-
|
|
540
|
-
// Only applies to primitive tokens
|
|
541
|
-
if ('primitiveReferences' in token) {
|
|
542
|
-
return null;
|
|
543
|
-
}
|
|
544
|
-
|
|
545
|
-
const primitiveToken = token as PrimitiveToken;
|
|
546
|
-
const crossPlatformData = mathematicalContext?.crossPlatformData;
|
|
547
|
-
|
|
548
|
-
if (!crossPlatformData) {
|
|
549
|
-
return null; // Cannot validate without cross-platform data
|
|
550
|
-
}
|
|
551
|
-
|
|
552
|
-
// Check if there are consistency failures
|
|
553
|
-
if (crossPlatformData.failedPairs.length > 0) {
|
|
554
|
-
return this.generateErrorResult(
|
|
555
|
-
token,
|
|
556
|
-
'Cross-platform consistency violation',
|
|
557
|
-
`Mathematical relationships not maintained across platforms: ${crossPlatformData.failedPairs.join(', ')}`,
|
|
558
|
-
'mathematical-violation',
|
|
559
|
-
{
|
|
560
|
-
platformInfo: crossPlatformData.values,
|
|
561
|
-
relationship: `Failed platform pairs: ${crossPlatformData.failedPairs.join(', ')}`,
|
|
562
|
-
expectedValue: crossPlatformData.toleranceLevel,
|
|
563
|
-
actualValue: crossPlatformData.maxDeviation
|
|
564
|
-
},
|
|
565
|
-
[
|
|
566
|
-
'Review unit conversion algorithms for affected platforms',
|
|
567
|
-
'Ensure mathematical relationships are preserved across platforms',
|
|
568
|
-
'Consider platform-specific constraints and limitations',
|
|
569
|
-
'Validate tolerance levels are appropriate for token category'
|
|
570
|
-
]
|
|
571
|
-
);
|
|
572
|
-
}
|
|
573
|
-
|
|
574
|
-
// Check if maximum deviation exceeds tolerance
|
|
575
|
-
if (crossPlatformData.maxDeviation > crossPlatformData.toleranceLevel) {
|
|
576
|
-
return this.generateErrorResult(
|
|
577
|
-
token,
|
|
578
|
-
'Cross-platform tolerance exceeded',
|
|
579
|
-
`Maximum deviation ${crossPlatformData.maxDeviation.toFixed(4)} exceeds tolerance ${crossPlatformData.toleranceLevel.toFixed(4)}`,
|
|
580
|
-
'mathematical-violation',
|
|
581
|
-
{
|
|
582
|
-
platformInfo: crossPlatformData.values,
|
|
583
|
-
expectedValue: crossPlatformData.toleranceLevel,
|
|
584
|
-
actualValue: crossPlatformData.maxDeviation,
|
|
585
|
-
relationship: 'Cross-platform mathematical consistency within tolerance levels'
|
|
586
|
-
},
|
|
587
|
-
[
|
|
588
|
-
'Adjust token value to reduce cross-platform deviation',
|
|
589
|
-
'Review platform-specific unit conversion accuracy',
|
|
590
|
-
'Consider if tolerance level is appropriate for this token category',
|
|
591
|
-
'Validate mathematical relationships across all platforms'
|
|
592
|
-
]
|
|
593
|
-
);
|
|
594
|
-
}
|
|
595
|
-
|
|
596
|
-
return null;
|
|
597
|
-
}
|
|
598
|
-
|
|
599
|
-
/**
|
|
600
|
-
* Validate token references
|
|
601
|
-
*/
|
|
602
|
-
private validateTokenReferences(
|
|
603
|
-
token: PrimitiveToken | SemanticToken,
|
|
604
|
-
registryContext?: ErrorValidationContext['registryContext'],
|
|
605
|
-
options: ErrorValidationContext['options'] = {}
|
|
606
|
-
): ValidationResult | null {
|
|
607
|
-
if (!options.validateReferences || !registryContext) {
|
|
608
|
-
return null;
|
|
609
|
-
}
|
|
610
|
-
|
|
611
|
-
// Only applies to semantic tokens
|
|
612
|
-
if (!('primitiveReferences' in token)) {
|
|
613
|
-
return null;
|
|
614
|
-
}
|
|
615
|
-
|
|
616
|
-
const semanticToken = token as SemanticToken;
|
|
617
|
-
|
|
618
|
-
// Check if primitive references exist
|
|
619
|
-
const availablePrimitives = registryContext.availablePrimitiveTokens || [];
|
|
620
|
-
const invalidReferences: string[] = [];
|
|
621
|
-
|
|
622
|
-
for (const [key, primitiveRef] of Object.entries(semanticToken.primitiveReferences)) {
|
|
623
|
-
if (!availablePrimitives.includes(primitiveRef)) {
|
|
624
|
-
invalidReferences.push(`${key}: ${primitiveRef}`);
|
|
625
|
-
}
|
|
626
|
-
}
|
|
627
|
-
|
|
628
|
-
if (invalidReferences.length > 0) {
|
|
629
|
-
return this.generateErrorResult(
|
|
630
|
-
token,
|
|
631
|
-
'Invalid primitive token reference(s)',
|
|
632
|
-
`Referenced primitive token(s) do not exist: ${invalidReferences.join(', ')}`,
|
|
633
|
-
'mathematical-violation',
|
|
634
|
-
{
|
|
635
|
-
relationship: 'Semantic tokens must reference existing primitive tokens'
|
|
636
|
-
},
|
|
637
|
-
[
|
|
638
|
-
'Reference existing primitive token(s)',
|
|
639
|
-
`Available primitive tokens: ${availablePrimitives.slice(0, 5).join(', ')}${availablePrimitives.length > 5 ? '...' : ''}`,
|
|
640
|
-
'Verify primitive token name spelling and availability',
|
|
641
|
-
'Ensure primitive token(s) are registered before semantic token creation'
|
|
642
|
-
]
|
|
643
|
-
);
|
|
644
|
-
}
|
|
645
|
-
|
|
646
|
-
// Check for self-reference (semantic token referencing itself)
|
|
647
|
-
const selfReferences = Object.values(semanticToken.primitiveReferences).filter(ref => ref === semanticToken.name);
|
|
648
|
-
if (selfReferences.length > 0) {
|
|
649
|
-
return this.generateErrorResult(
|
|
650
|
-
token,
|
|
651
|
-
'Self-reference violation',
|
|
652
|
-
'Semantic token cannot reference itself',
|
|
653
|
-
'mathematical-violation',
|
|
654
|
-
{
|
|
655
|
-
relationship: 'Semantic tokens must reference primitive tokens, not themselves'
|
|
656
|
-
},
|
|
657
|
-
[
|
|
658
|
-
'Reference a different primitive token',
|
|
659
|
-
'Ensure semantic token name differs from primitive reference(s)',
|
|
660
|
-
'Review token naming conventions'
|
|
661
|
-
]
|
|
662
|
-
);
|
|
663
|
-
}
|
|
664
|
-
|
|
665
|
-
return null;
|
|
666
|
-
}
|
|
667
|
-
|
|
668
|
-
/**
|
|
669
|
-
* Validate circular dependencies
|
|
670
|
-
*/
|
|
671
|
-
private validateCircularDependencies(
|
|
672
|
-
token: PrimitiveToken | SemanticToken,
|
|
673
|
-
registryContext?: ErrorValidationContext['registryContext'],
|
|
674
|
-
options: ErrorValidationContext['options'] = {}
|
|
675
|
-
): ValidationResult | null {
|
|
676
|
-
if (!options.checkCircularDependencies || !registryContext) {
|
|
677
|
-
return null;
|
|
678
|
-
}
|
|
679
|
-
|
|
680
|
-
// Check for circular references
|
|
681
|
-
const circularReferences = registryContext.circularReferences || [];
|
|
682
|
-
const tokenName = token.name;
|
|
683
|
-
|
|
684
|
-
if (circularReferences.includes(tokenName)) {
|
|
685
|
-
return this.generateErrorResult(
|
|
686
|
-
token,
|
|
687
|
-
'Circular dependency detected',
|
|
688
|
-
`Token ${tokenName} is part of a circular dependency chain`,
|
|
689
|
-
'mathematical-violation',
|
|
690
|
-
{
|
|
691
|
-
relationship: 'Circular dependencies violate token hierarchy and mathematical consistency'
|
|
692
|
-
},
|
|
693
|
-
[
|
|
694
|
-
'Break circular dependency by restructuring token references',
|
|
695
|
-
'Ensure semantic tokens only reference primitive tokens',
|
|
696
|
-
'Review token dependency graph for cycles',
|
|
697
|
-
'Consider flattening token hierarchy to eliminate cycles'
|
|
698
|
-
]
|
|
699
|
-
);
|
|
700
|
-
}
|
|
701
|
-
|
|
702
|
-
return null;
|
|
703
|
-
}
|
|
704
|
-
|
|
705
|
-
/**
|
|
706
|
-
* Validate family foundation compliance
|
|
707
|
-
*/
|
|
708
|
-
private validateFamilyFoundation(
|
|
709
|
-
token: PrimitiveToken | SemanticToken,
|
|
710
|
-
mathematicalContext?: ErrorValidationContext['mathematicalContext'],
|
|
711
|
-
options: ErrorValidationContext['options'] = {}
|
|
712
|
-
): ValidationResult | null {
|
|
713
|
-
// Only applies to primitive tokens
|
|
714
|
-
if ('primitiveReferences' in token) {
|
|
715
|
-
return null;
|
|
716
|
-
}
|
|
717
|
-
|
|
718
|
-
const primitiveToken = token as PrimitiveToken;
|
|
719
|
-
const familyFoundation = mathematicalContext?.familyFoundation;
|
|
720
|
-
|
|
721
|
-
if (!familyFoundation) {
|
|
722
|
-
return null; // Cannot validate without family foundation data
|
|
723
|
-
}
|
|
724
|
-
|
|
725
|
-
// Use parser validation result if available
|
|
726
|
-
if (familyFoundation.validationResult) {
|
|
727
|
-
const validationResult = familyFoundation.validationResult;
|
|
728
|
-
|
|
729
|
-
// Check if the mathematical relationship is valid and mathematically correct
|
|
730
|
-
if (!validationResult.isValid || !validationResult.mathematicallyCorrect) {
|
|
731
|
-
const errors = validationResult.errors || [];
|
|
732
|
-
const errorMessage = errors.length > 0
|
|
733
|
-
? errors.join('; ')
|
|
734
|
-
: 'Mathematical relationship does not match actual token values';
|
|
735
|
-
|
|
736
|
-
// Build detailed relationship string with calculated vs actual values
|
|
737
|
-
const relationshipDetails = validationResult.calculatedResult !== undefined
|
|
738
|
-
? `Expected: ${familyFoundation.expectedProgression}. Calculated: ${familyFoundation.baseValue} → ${validationResult.calculatedResult}, Actual: ${primitiveToken.baseValue}`
|
|
739
|
-
: `Expected: ${familyFoundation.expectedProgression}`;
|
|
740
|
-
|
|
741
|
-
return this.generateErrorResult(
|
|
742
|
-
token,
|
|
743
|
-
'Family foundation violation',
|
|
744
|
-
`Token does not follow ${familyFoundation.category} family mathematical progression: ${errorMessage}`,
|
|
745
|
-
'mathematical-violation',
|
|
746
|
-
{
|
|
747
|
-
relationship: relationshipDetails,
|
|
748
|
-
expectedValue: validationResult.calculatedResult,
|
|
749
|
-
actualValue: primitiveToken.baseValue
|
|
750
|
-
},
|
|
751
|
-
[
|
|
752
|
-
`Correct mathematical relationship to match: ${familyFoundation.baseValue} (family base) → ${primitiveToken.baseValue} (token base)`,
|
|
753
|
-
`Verify relationship to family base value: ${familyFoundation.baseValue}`,
|
|
754
|
-
'Review family mathematical foundation documentation',
|
|
755
|
-
'Ensure token fits within established family patterns'
|
|
756
|
-
]
|
|
757
|
-
);
|
|
758
|
-
}
|
|
759
|
-
} else {
|
|
760
|
-
// Fallback to simple string comparison for backward compatibility
|
|
761
|
-
// This handles cases where parser validation result is not available
|
|
762
|
-
if (familyFoundation.expectedProgression !== familyFoundation.actualProgression) {
|
|
763
|
-
return this.generateErrorResult(
|
|
764
|
-
token,
|
|
765
|
-
'Family foundation violation',
|
|
766
|
-
`Token does not follow ${familyFoundation.category} family mathematical progression`,
|
|
767
|
-
'mathematical-violation',
|
|
768
|
-
{
|
|
769
|
-
relationship: `Family foundation requires: ${familyFoundation.expectedProgression}`
|
|
770
|
-
},
|
|
771
|
-
[
|
|
772
|
-
`Follow ${familyFoundation.category} family mathematical progression: ${familyFoundation.expectedProgression}`,
|
|
773
|
-
`Verify relationship to family base value: ${familyFoundation.baseValue}`,
|
|
774
|
-
'Review family mathematical foundation documentation',
|
|
775
|
-
'Ensure token fits within established family patterns'
|
|
776
|
-
]
|
|
777
|
-
);
|
|
778
|
-
}
|
|
779
|
-
}
|
|
780
|
-
|
|
781
|
-
// Check family base value consistency
|
|
782
|
-
if (primitiveToken.familyBaseValue !== familyFoundation.baseValue) {
|
|
783
|
-
return this.generateErrorResult(
|
|
784
|
-
token,
|
|
785
|
-
'Family base value inconsistency',
|
|
786
|
-
`Token family base value ${primitiveToken.familyBaseValue} does not match family foundation ${familyFoundation.baseValue}`,
|
|
787
|
-
'mathematical-violation',
|
|
788
|
-
{
|
|
789
|
-
expectedValue: familyFoundation.baseValue,
|
|
790
|
-
actualValue: primitiveToken.familyBaseValue,
|
|
791
|
-
relationship: 'All tokens in family must use consistent family base value'
|
|
792
|
-
},
|
|
793
|
-
[
|
|
794
|
-
`Set family base value to ${familyFoundation.baseValue}`,
|
|
795
|
-
'Ensure consistency across all tokens in family',
|
|
796
|
-
'Verify family foundation configuration',
|
|
797
|
-
'Review token family mathematical specifications'
|
|
798
|
-
]
|
|
799
|
-
);
|
|
800
|
-
}
|
|
801
|
-
|
|
802
|
-
return null;
|
|
803
|
-
}
|
|
804
|
-
|
|
805
|
-
/**
|
|
806
|
-
* Generate error validation result with comprehensive reasoning
|
|
807
|
-
*/
|
|
808
|
-
private generateErrorResult(
|
|
809
|
-
token: PrimitiveToken | SemanticToken,
|
|
810
|
-
message: string,
|
|
811
|
-
rationale: string,
|
|
812
|
-
scenario: 'mathematical-violation',
|
|
813
|
-
contextData: ReasoningContext['contextData'],
|
|
814
|
-
suggestions: string[]
|
|
815
|
-
): ValidationResult {
|
|
816
|
-
const reasoningContext: ReasoningContext = {
|
|
817
|
-
token,
|
|
818
|
-
scenario,
|
|
819
|
-
contextData
|
|
820
|
-
};
|
|
821
|
-
|
|
822
|
-
const mathematicalReasoning = this.reasoningGenerator.generateErrorReasoning(reasoningContext);
|
|
823
|
-
|
|
824
|
-
return {
|
|
825
|
-
level: 'Error',
|
|
826
|
-
token: token.name,
|
|
827
|
-
message,
|
|
828
|
-
rationale,
|
|
829
|
-
mathematicalReasoning,
|
|
830
|
-
suggestions
|
|
831
|
-
};
|
|
832
|
-
}
|
|
833
|
-
|
|
834
|
-
/**
|
|
835
|
-
* Helper methods
|
|
836
|
-
*/
|
|
837
|
-
private requiresBaselineGridAlignment(category: TokenCategory): boolean {
|
|
838
|
-
return category === TokenCategory.SPACING || category === TokenCategory.RADIUS;
|
|
839
|
-
}
|
|
840
|
-
|
|
841
|
-
/**
|
|
842
|
-
* Batch validation for multiple tokens
|
|
843
|
-
*/
|
|
844
|
-
validateBatch(contexts: ErrorValidationContext[]): ValidationResult[] {
|
|
845
|
-
const errors: ValidationResult[] = [];
|
|
846
|
-
|
|
847
|
-
contexts.forEach(context => {
|
|
848
|
-
const error = this.validate(context);
|
|
849
|
-
if (error) {
|
|
850
|
-
errors.push(error);
|
|
851
|
-
}
|
|
852
|
-
});
|
|
853
|
-
|
|
854
|
-
return errors;
|
|
855
|
-
}
|
|
856
|
-
|
|
857
|
-
/**
|
|
858
|
-
* Generate comprehensive error analysis report
|
|
859
|
-
*/
|
|
860
|
-
generateErrorAnalysisReport(contexts: ErrorValidationContext[]): {
|
|
861
|
-
totalTokens: number;
|
|
862
|
-
tokensWithErrors: number;
|
|
863
|
-
errorsByType: Record<string, number>;
|
|
864
|
-
criticalErrors: ValidationResult[];
|
|
865
|
-
mathematicalViolations: ValidationResult[];
|
|
866
|
-
baselineGridViolations: ValidationResult[];
|
|
867
|
-
crossPlatformViolations: ValidationResult[];
|
|
868
|
-
referenceViolations: ValidationResult[];
|
|
869
|
-
circularDependencies: ValidationResult[];
|
|
870
|
-
familyFoundationViolations: ValidationResult[];
|
|
871
|
-
recommendations: string[];
|
|
872
|
-
} {
|
|
873
|
-
const errors = this.validateBatch(contexts);
|
|
874
|
-
const totalTokens = contexts.length;
|
|
875
|
-
const tokensWithErrors = errors.length;
|
|
876
|
-
|
|
877
|
-
// Categorize errors
|
|
878
|
-
const errorsByType: Record<string, number> = {};
|
|
879
|
-
const criticalErrors: ValidationResult[] = [];
|
|
880
|
-
const mathematicalViolations: ValidationResult[] = [];
|
|
881
|
-
const baselineGridViolations: ValidationResult[] = [];
|
|
882
|
-
const crossPlatformViolations: ValidationResult[] = [];
|
|
883
|
-
const referenceViolations: ValidationResult[] = [];
|
|
884
|
-
const circularDependencies: ValidationResult[] = [];
|
|
885
|
-
const familyFoundationViolations: ValidationResult[] = [];
|
|
886
|
-
|
|
887
|
-
errors.forEach(error => {
|
|
888
|
-
const type = this.categorizeError(error);
|
|
889
|
-
errorsByType[type] = (errorsByType[type] || 0) + 1;
|
|
890
|
-
|
|
891
|
-
// Categorize for detailed analysis
|
|
892
|
-
if (error.message.includes('mathematical relationship') || error.message.includes('base value')) {
|
|
893
|
-
mathematicalViolations.push(error);
|
|
894
|
-
}
|
|
895
|
-
if (error.message.includes('Baseline grid')) {
|
|
896
|
-
baselineGridViolations.push(error);
|
|
897
|
-
}
|
|
898
|
-
if (error.message.includes('Cross-platform')) {
|
|
899
|
-
crossPlatformViolations.push(error);
|
|
900
|
-
}
|
|
901
|
-
if (error.message.includes('reference') || error.message.includes('Self-reference')) {
|
|
902
|
-
referenceViolations.push(error);
|
|
903
|
-
}
|
|
904
|
-
if (error.message.includes('Circular dependency')) {
|
|
905
|
-
circularDependencies.push(error);
|
|
906
|
-
}
|
|
907
|
-
if (error.message.includes('Family foundation')) {
|
|
908
|
-
familyFoundationViolations.push(error);
|
|
909
|
-
}
|
|
910
|
-
|
|
911
|
-
// Mark critical errors (those that break mathematical consistency)
|
|
912
|
-
if (this.isCriticalError(error)) {
|
|
913
|
-
criticalErrors.push(error);
|
|
914
|
-
}
|
|
915
|
-
});
|
|
916
|
-
|
|
917
|
-
// Generate system-level recommendations
|
|
918
|
-
const recommendations = this.generateSystemErrorRecommendations(errors);
|
|
919
|
-
|
|
920
|
-
return {
|
|
921
|
-
totalTokens,
|
|
922
|
-
tokensWithErrors,
|
|
923
|
-
errorsByType,
|
|
924
|
-
criticalErrors,
|
|
925
|
-
mathematicalViolations,
|
|
926
|
-
baselineGridViolations,
|
|
927
|
-
crossPlatformViolations,
|
|
928
|
-
referenceViolations,
|
|
929
|
-
circularDependencies,
|
|
930
|
-
familyFoundationViolations,
|
|
931
|
-
recommendations
|
|
932
|
-
};
|
|
933
|
-
}
|
|
934
|
-
|
|
935
|
-
private categorizeError(error: ValidationResult): string {
|
|
936
|
-
if (error.message.includes('mathematical relationship')) return 'mathematical-relationship';
|
|
937
|
-
if (error.message.includes('Baseline grid')) return 'baseline-grid';
|
|
938
|
-
if (error.message.includes('Cross-platform')) return 'cross-platform';
|
|
939
|
-
if (error.message.includes('reference')) return 'token-reference';
|
|
940
|
-
if (error.message.includes('Circular dependency')) return 'circular-dependency';
|
|
941
|
-
if (error.message.includes('Family foundation')) return 'family-foundation';
|
|
942
|
-
if (error.message.includes('base value')) return 'base-value';
|
|
943
|
-
return 'other';
|
|
944
|
-
}
|
|
945
|
-
|
|
946
|
-
private isCriticalError(error: ValidationResult): boolean {
|
|
947
|
-
const criticalPatterns = [
|
|
948
|
-
'mathematical relationship',
|
|
949
|
-
'Circular dependency',
|
|
950
|
-
'Cross-platform consistency',
|
|
951
|
-
'Family foundation'
|
|
952
|
-
];
|
|
953
|
-
|
|
954
|
-
return criticalPatterns.some(pattern => error.message.includes(pattern));
|
|
955
|
-
}
|
|
956
|
-
|
|
957
|
-
private generateSystemErrorRecommendations(errors: ValidationResult[]): string[] {
|
|
958
|
-
const recommendations: string[] = [];
|
|
959
|
-
|
|
960
|
-
// Mathematical relationship recommendations
|
|
961
|
-
if (errors.some(e => e.message.includes('mathematical relationship'))) {
|
|
962
|
-
recommendations.push('Review and establish clear mathematical relationships for all primitive tokens');
|
|
963
|
-
recommendations.push('Implement automated mathematical relationship validation in token creation process');
|
|
964
|
-
}
|
|
965
|
-
|
|
966
|
-
// Baseline grid recommendations
|
|
967
|
-
if (errors.some(e => e.message.includes('Baseline grid'))) {
|
|
968
|
-
recommendations.push('Audit all spacing and radius tokens for baseline grid compliance');
|
|
969
|
-
recommendations.push('Consider strategic flexibility tokens for necessary exceptions to baseline grid');
|
|
970
|
-
}
|
|
971
|
-
|
|
972
|
-
// Cross-platform recommendations
|
|
973
|
-
if (errors.some(e => e.message.includes('Cross-platform'))) {
|
|
974
|
-
recommendations.push('Review unit conversion algorithms and tolerance levels for cross-platform consistency');
|
|
975
|
-
recommendations.push('Implement comprehensive cross-platform testing for all token values');
|
|
976
|
-
}
|
|
977
|
-
|
|
978
|
-
// Reference validation recommendations
|
|
979
|
-
if (errors.some(e => e.message.includes('reference'))) {
|
|
980
|
-
recommendations.push('Implement token registry validation to prevent invalid references');
|
|
981
|
-
recommendations.push('Establish token creation workflow with reference validation');
|
|
982
|
-
}
|
|
983
|
-
|
|
984
|
-
// Circular dependency recommendations
|
|
985
|
-
if (errors.some(e => e.message.includes('Circular dependency'))) {
|
|
986
|
-
recommendations.push('Implement dependency graph analysis to prevent circular references');
|
|
987
|
-
recommendations.push('Establish clear token hierarchy with semantic tokens only referencing primitives');
|
|
988
|
-
}
|
|
989
|
-
|
|
990
|
-
// Family foundation recommendations
|
|
991
|
-
if (errors.some(e => e.message.includes('Family foundation'))) {
|
|
992
|
-
recommendations.push('Review and document mathematical foundations for all token families');
|
|
993
|
-
recommendations.push('Implement family foundation validation in token creation process');
|
|
994
|
-
}
|
|
995
|
-
|
|
996
|
-
return recommendations;
|
|
997
|
-
}
|
|
998
|
-
}
|