@3fn/core 13.0.0 → 14.1.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/agents/ada-prompt.md +80 -132
- package/.kiro/agents/ada-prompt.md.attribution.json +45 -0
- package/.kiro/agents/ada.json +44 -59
- package/.kiro/agents/ada.json.attribution.json +13 -0
- package/.kiro/agents/data-prompt.md +83 -74
- package/.kiro/agents/data-prompt.md.attribution.json +53 -0
- package/.kiro/agents/data.json +31 -38
- package/.kiro/agents/data.json.attribution.json +13 -0
- package/.kiro/agents/kenya-prompt.md +83 -72
- package/.kiro/agents/kenya-prompt.md.attribution.json +53 -0
- package/.kiro/agents/kenya.json +27 -35
- package/.kiro/agents/kenya.json.attribution.json +13 -0
- package/.kiro/agents/leonardo-prompt.md +176 -234
- package/.kiro/agents/leonardo-prompt.md.attribution.json +45 -0
- package/.kiro/agents/leonardo.json +28 -36
- package/.kiro/agents/leonardo.json.attribution.json +13 -0
- package/.kiro/agents/lina-prompt.md +110 -151
- package/.kiro/agents/lina-prompt.md.attribution.json +53 -0
- package/.kiro/agents/lina.json +46 -59
- package/.kiro/agents/lina.json.attribution.json +13 -0
- package/.kiro/agents/sparky-prompt.md +89 -72
- package/.kiro/agents/sparky-prompt.md.attribution.json +53 -0
- package/.kiro/agents/sparky.json +37 -37
- package/.kiro/agents/sparky.json.attribution.json +13 -0
- package/.kiro/agents/stacy-prompt.md +74 -48
- package/.kiro/agents/stacy-prompt.md.attribution.json +45 -0
- package/.kiro/agents/stacy.json +28 -30
- package/.kiro/agents/stacy.json.attribution.json +13 -0
- package/.kiro/agents/thurgood-prompt.md +94 -138
- package/.kiro/agents/thurgood-prompt.md.attribution.json +45 -0
- package/.kiro/agents/thurgood.json +31 -35
- package/.kiro/agents/thurgood.json.attribution.json +13 -0
- package/.kiro/steering/AI-Collaboration-Principles.md +3 -3
- package/.kiro/steering/Civitas-System-Overview.md +7 -16
- package/.kiro/steering/DesignerPunk-Systems-Overview.md +6 -6
- package/.kiro/steering/Spec-Feedback-Protocol.md +2 -11
- package/.kiro/steering/Task-Completion-Protocol.md +98 -17
- package/.kiro/steering/core-goals.md +3 -3
- package/.kiro/steering/personal-note.md +1 -1
- package/.kiro/steering/start-up-tasks.md +17 -6
- package/application-mcp-server/src/index.ts +26 -0
- package/dist/ComponentTokens.android.kt +12 -12
- package/dist/ComponentTokens.ios.swift +12 -12
- package/dist/ComponentTokens.web.css +3 -3
- package/dist/DesignTokens.android.kt +1 -1
- package/dist/DesignTokens.dtcg.json +8 -5
- package/dist/DesignTokens.figma.json +2 -2
- package/dist/DesignTokens.ios.swift +1 -1
- package/dist/DesignTokens.web.css +1 -1
- package/dist/android/DesignTokens.android.kt +1 -1
- package/dist/blend/OklchBlendCalculator.js +1 -0
- package/dist/blend/ThemeAwareBlendUtilities.web.d.ts +13 -2
- package/dist/blend/ThemeAwareBlendUtilities.web.js +6 -1
- package/dist/browser/designerpunk.esm.js +36 -90
- package/dist/browser/designerpunk.esm.min.js +33 -36
- package/dist/browser/designerpunk.umd.js +36 -90
- package/dist/browser/designerpunk.umd.min.js +47 -50
- package/dist/browser/tokens.css +3 -3
- package/dist/build/tokens/defineComponentTokens.d.ts +10 -0
- package/dist/build/tokens/defineComponentTokens.js +26 -0
- package/dist/components/core/Avatar-Base/avatar.tokens.d.ts +21 -26
- package/dist/components/core/Avatar-Base/avatar.tokens.js +31 -34
- package/dist/components/core/Avatar-Base/index.d.ts +1 -1
- package/dist/components/core/Avatar-Base/index.js +2 -2
- package/dist/components/core/Avatar-Base/platforms/web/Avatar.web.js +24 -5
- package/dist/components/core/Button-CTA/examples/BasicUsage.d.ts +16 -28
- package/dist/components/core/Button-CTA/examples/BasicUsage.js +18 -43
- package/dist/components/core/Button-CTA/platforms/web/ButtonCTA.web.d.ts +3 -15
- package/dist/components/core/Button-CTA/platforms/web/ButtonCTA.web.js +9 -58
- package/dist/components/core/Button-CTA/types.d.ts +0 -24
- package/dist/components/core/Button-CTA/types.js +6 -0
- package/dist/components/core/Button-Icon/buttonIcon.tokens.d.ts +28 -14
- package/dist/components/core/Button-Icon/buttonIcon.tokens.js +35 -20
- package/dist/components/core/Input-Text-Base/types.d.ts +13 -1
- package/dist/components/core/Input-Text-Password/platforms/web/InputTextPassword.web.js +11 -2
- package/dist/generators/DTCGFormatGenerator.js +8 -0
- package/dist/generators/TokenFileGenerator.js +7 -2
- package/dist/integration/BuildErrorHandler.js +2 -2
- package/dist/ios/DesignTokens.ios.swift +1 -1
- package/dist/mcp/application-mcp.js +24 -0
- package/dist/mcp/docs-mcp.js +130 -15
- package/dist/mcp/product-mcp.js +25 -0
- package/dist/tokens/OpacityTokens.js +1 -1
- package/dist/tokens/component/progress.d.ts +65 -5
- package/dist/tokens/component/progress.js +79 -18
- package/dist/tokens/semantic/BlendTokens.d.ts +10 -3
- package/dist/tokens/semantic/BlendTokens.js +17 -5
- package/dist/tokens/semantic/OpacityTokens.d.ts +4 -4
- package/dist/tokens/semantic/OpacityTokens.js +4 -4
- package/dist/types/ComponentTypes.d.ts +1 -1
- package/dist/types/generated/TokenTypes.d.ts +1 -1
- package/dist/types/generated/TokenTypes.js +1 -1
- package/dist/validators/StemmaTokenUsageValidator.js +3 -2
- package/dist/web/DesignTokens.web.css +1 -1
- package/governance/BUILD-SYSTEM-SETUP.md +1 -2
- package/governance/Component-Development-Guide.md +23 -13
- package/governance/Component-Development-Standards.md +21 -20
- package/governance/Component-Family-Avatar.md +6 -7
- package/governance/Component-Family-Badge.md +19 -20
- package/governance/Component-Family-Button.md +30 -43
- package/governance/Component-Family-Chip.md +14 -15
- package/governance/Component-Family-Container.md +12 -13
- package/governance/Component-Family-Data-Display.md +1 -2
- package/governance/Component-Family-Divider.md +1 -2
- package/governance/Component-Family-Form-Inputs.md +65 -65
- package/governance/Component-Family-Icon.md +9 -10
- package/governance/Component-Family-Loading.md +1 -2
- package/governance/Component-Family-Modal.md +1 -2
- package/governance/Component-Family-Navigation.md +1 -2
- package/governance/Component-Family-Progress.md +0 -1
- package/governance/Component-Inheritance-Structures.md +219 -99
- package/governance/Component-MCP-Document-Template.md +6 -5
- package/governance/Component-Primitive-vs-Semantic-Philosophy.md +1 -1
- package/governance/Component-Quick-Reference.md +33 -33
- package/governance/Component-Readiness-Status.md +59 -44
- package/governance/Component-Templates.md +57 -61
- package/governance/Contract-System-Reference.md +7 -7
- package/governance/MCP-Integration-Guide.md +1 -1
- package/governance/Process-Cross-Reference-Standards.md +31 -13
- package/governance/Process-Development-Workflow.md +49 -59
- package/governance/Process-File-Organization.md +25 -28
- package/governance/Process-Hook-Operations.md +22 -11
- package/governance/Process-Orchestration-Model-Selection.md +92 -0
- package/governance/Process-Spec-Planning.md +98 -52
- package/governance/Process-Task-Type-Definitions.md +80 -4
- package/governance/Product-Handoff-Protocol.md +2 -0
- package/governance/Rosetta-System-Architecture.md +13 -11
- package/governance/Test-Behavioral-Contract-Validation.md +38 -31
- package/governance/Test-Failure-Audit-Methodology.md +1 -1
- package/governance/Token-Family-Accessibility.md +1 -2
- package/governance/Token-Family-Blend.md +18 -16
- package/governance/Token-Family-Blur.md +0 -1
- package/governance/Token-Family-Border.md +1 -2
- package/governance/Token-Family-Color.md +0 -1
- package/governance/Token-Family-Glow.md +1 -2
- package/governance/Token-Family-Layering.md +0 -1
- package/governance/Token-Family-Motion.md +1 -2
- package/governance/Token-Family-Opacity.md +0 -1
- package/governance/Token-Family-Radius.md +1 -2
- package/governance/Token-Family-Responsive.md +1 -2
- package/governance/Token-Family-Shadow.md +1 -2
- package/governance/Token-Family-Sizing.md +0 -1
- package/governance/Token-Family-Spacing.md +1 -2
- package/governance/Token-Family-Typography.md +1 -2
- package/governance/Token-Governance.md +8 -8
- package/governance/Token-Quick-Reference.md +47 -34
- package/governance/Token-Resolution-Patterns.md +1 -1
- package/governance/Token-Semantic-Structure.md +1 -1
- package/governance/Web-Authoring-Standards.md +5 -5
- package/governance/browser-distribution-guide.md +1 -4
- package/governance/classification-map.md +474 -0
- package/governance/completion-documentation-guide.md +23 -37
- package/governance/component-meta-authoring-guide.md +1 -1
- package/governance/cross-platform-vs-platform-specific-decision-framework.md +1 -1
- package/governance/platform-implementation-guidelines.md +2 -3
- package/governance/release-management-system.md +28 -63
- package/governance/rosetta-system-principles.md +8 -6
- package/governance/stemma-system-principles.md +18 -17
- package/mcp-server/src/index.ts +24 -6
- package/mcp-server/src/indexer/DocumentIndexer.ts +119 -9
- package/mcp-server/src/indexer/__tests__/bare-id-crossrefs.test.ts +250 -0
- package/mcp-server/src/indexer/cross-ref-parser.ts +29 -1
- package/mcp-server/src/indexer/index-health.ts +27 -2
- package/mcp-server/src/query/__tests__/find-docs-calibration.test.ts +11 -26
- package/mcp-server/src/relocation-integrity-gate/__tests__/relocation-integrity-gate.test.ts +72 -5
- package/mcp-server/src/relocation-integrity-gate/relocation-integrity-gate.ts +81 -24
- package/mcp-server/src/tools/list-cross-references.ts +2 -2
- package/package.json +24 -26
- package/src/__tests__/browser-distribution/css-bundling.test.ts +6 -4
- package/src/__tests__/console-allowlist.json +14 -0
- package/src/__tests__/console-fail-setup.ts +169 -0
- package/src/__tests__/integration/Spec107-DesignLanguageContext.test.ts +16 -0
- package/src/__tests__/stemma-system/behavioral-contract-validation.test.ts +70 -17
- package/src/__tests__/stemma-system/contract-catalog-name-validation.test.ts +28 -0
- package/src/__tests__/stemma-system/form-inputs-contracts.test.ts +223 -16
- package/src/__tests__/stemma-system/input-text-native-base-call-alignment.test.ts +298 -0
- package/src/blend/OklchBlendCalculator.ts +3 -0
- package/src/blend/ThemeAwareBlendUtilities.android.kt +3 -0
- package/src/blend/ThemeAwareBlendUtilities.ios.swift +3 -0
- package/src/blend/ThemeAwareBlendUtilities.web.ts +9 -1
- package/src/blend/__tests__/InteractionStateAudit.test.ts +12 -9
- package/src/build/errors/__tests__/ErrorHandler.integration.test.ts +8 -0
- package/src/build/errors/__tests__/ErrorHandler.test.ts +5 -0
- package/src/build/tokens/__tests__/defineComponentTokens.test.ts +113 -0
- package/src/build/tokens/defineComponentTokens.ts +43 -1
- package/src/build/workflow/__tests__/CICDIntegration.test.ts +12 -1
- package/src/cli/__tests__/init.test.ts +45 -11
- package/src/components/core/Avatar-Base/Avatar-Base.schema.yaml +1 -1
- package/src/components/core/Avatar-Base/__tests__/Avatar.accessibility.test.ts +121 -7
- package/src/components/core/Avatar-Base/__tests__/Avatar.image.test.ts +3 -0
- package/src/components/core/Avatar-Base/__tests__/Avatar.test.ts +15 -6
- package/src/components/core/Avatar-Base/avatar.tokens.ts +31 -34
- package/src/components/core/Avatar-Base/contracts.yaml +11 -1
- package/src/components/core/Avatar-Base/index.ts +1 -1
- package/src/components/core/Avatar-Base/platforms/web/Avatar.web.ts +24 -5
- package/src/components/core/Badge-Count-Base/contracts.yaml +1 -1
- package/src/components/core/Badge-Label-Base/contracts.yaml +1 -1
- package/src/components/core/Button-CTA/Button-CTA.schema.yaml +2 -12
- package/src/components/core/Button-CTA/README.md +3 -6
- package/src/components/core/Button-CTA/__tests__/ButtonCTA.test.ts +35 -89
- package/src/components/core/Button-CTA/__tests__/setup.test.ts +0 -2
- package/src/components/core/Button-CTA/__tests__/test-utils.ts +0 -2
- package/src/components/core/Button-CTA/contracts.yaml +6 -29
- package/src/components/core/Button-CTA/examples/BasicUsage.html +2 -14
- package/src/components/core/Button-CTA/examples/BasicUsage.tsx +17 -44
- package/src/components/core/Button-CTA/platforms/android/ButtonCTA.android.kt +12 -20
- package/src/components/core/Button-CTA/platforms/ios/ButtonCTA.ios.swift +12 -51
- package/src/components/core/Button-CTA/platforms/web/ButtonCTA.web.css +2 -26
- package/src/components/core/Button-CTA/platforms/web/ButtonCTA.web.ts +18 -71
- package/src/components/core/Button-CTA/types.ts +10 -28
- package/src/components/core/Button-Icon/buttonIcon.tokens.ts +43 -27
- package/src/components/core/Chip-Base/__tests__/ChipBase.test.ts +13 -0
- package/src/components/core/Chip-Filter/__tests__/ChipFilter.test.ts +13 -0
- package/src/components/core/Chip-Input/__tests__/ChipInput.test.ts +13 -0
- package/src/components/core/Input-Text-Base/Input-Text-Base.schema.yaml +30 -2
- package/src/components/core/Input-Text-Base/README.md +25 -2
- package/src/components/core/Input-Text-Base/__tests__/focusIndicators.test.ts +16 -15
- package/src/components/core/Input-Text-Base/contracts.yaml +90 -0
- package/src/components/core/Input-Text-Base/platforms/android/InputTextBase.android.kt +26 -12
- package/src/components/core/Input-Text-Base/platforms/ios/InputTextBase.ios.swift +195 -59
- package/src/components/core/Input-Text-Base/types.ts +13 -1
- package/src/components/core/Input-Text-Email/Input-Text-Email.schema.yaml +5 -1
- package/src/components/core/Input-Text-Email/README.md +8 -7
- package/src/components/core/Input-Text-Email/platforms/android/InputTextEmail.android.kt +1 -4
- package/src/components/core/Input-Text-Email/platforms/ios/InputTextEmail.ios.swift +2 -16
- package/src/components/core/Input-Text-Password/Input-Text-Password.schema.yaml +10 -3
- package/src/components/core/Input-Text-Password/README.md +9 -8
- package/src/components/core/Input-Text-Password/contracts.yaml +5 -0
- package/src/components/core/Input-Text-Password/platforms/android/InputTextPassword.android.kt +17 -7
- package/src/components/core/Input-Text-Password/platforms/ios/InputTextPassword.ios.swift +22 -20
- package/src/components/core/Input-Text-Password/platforms/web/InputTextPassword.web.ts +11 -2
- package/src/components/core/Input-Text-PhoneNumber/Input-Text-PhoneNumber.schema.yaml +5 -1
- package/src/components/core/Input-Text-PhoneNumber/README.md +9 -8
- package/src/components/core/Input-Text-PhoneNumber/platforms/android/InputTextPhoneNumber.android.kt +2 -5
- package/src/components/core/Input-Text-PhoneNumber/platforms/ios/InputTextPhoneNumber.ios.swift +3 -17
- package/src/components/core/Nav-Header-App/contracts.yaml +1 -1
- package/src/components/core/Nav-SegmentedChoice-Base/contracts.yaml +1 -1
- package/src/components/core/Progress-Indicator-Connector-Base/contracts.yaml +1 -1
- package/src/components/core/Progress-Indicator-Label-Base/contracts.yaml +1 -1
- package/src/components/core/Progress-Indicator-Node-Base/contracts.yaml +1 -1
- package/src/components/core/Progress-Stepper-Base/__tests__/StepperBase.test.ts +5 -2
- package/src/components/core/Progress-Stepper-Detailed/__tests__/StepperDetailed.test.ts +5 -2
- package/src/generators/DTCGFormatGenerator.ts +6 -0
- package/src/generators/TokenFileGenerator.ts +7 -2
- package/src/generators/__tests__/DTCGConfigOptions.test.ts +14 -5
- package/src/integration/BuildErrorHandler.ts +2 -2
- package/src/tokens/OpacityTokens.ts +1 -1
- package/src/tokens/__tests__/OpacityTokens.test.ts +3 -1
- package/src/tokens/__tests__/ProgressTokenCompliance.test.ts +5 -3
- package/src/tokens/__tests__/ProgressTokenFormulas.test.ts +11 -11
- package/src/tokens/__tests__/ProgressTokenTranslation.test.ts +22 -20
- package/src/tokens/component/progress.ts +83 -21
- package/src/tokens/semantic/BlendTokens.ts +26 -5
- package/src/tokens/semantic/OpacityTokens.ts +4 -4
- package/src/types/ComponentTypes.ts +1 -1
- package/src/types/generated/TokenTypes.ts +1 -1
- package/src/validators/StemmaTokenUsageValidator.ts +3 -2
- package/token-index/components.yaml +8 -8
- package/token-index/semantics.yaml +1 -2
- package/src/tools/release/__tests__/ChangeClassifier.test.ts +0 -133
- package/src/tools/release/__tests__/ChangeExtractor.test.ts +0 -222
- package/src/tools/release/__tests__/GitHubPublisher.test.ts +0 -240
- package/src/tools/release/__tests__/NotesRenderer.test.ts +0 -142
- package/src/tools/release/__tests__/NpmPublisher.test.ts +0 -289
- package/src/tools/release/__tests__/PipelineIntegration.test.ts +0 -188
- package/src/tools/release/__tests__/ReleasePipeline.test.ts +0 -192
- package/src/tools/release/__tests__/SemanticVersionValidator.test.ts +0 -49
- package/src/tools/release/__tests__/SummaryScanner.test.ts +0 -141
- package/src/tools/release/__tests__/TagResolver.test.ts +0 -91
- package/src/tools/release/__tests__/VersionCalculator.test.ts +0 -270
- package/src/tools/release/__tests__/helpers/NpmMockHelper.ts +0 -80
- package/src/tools/release/cli/ReleasePipeline.ts +0 -165
- package/src/tools/release/cli/release-tool.ts +0 -107
- package/src/tools/release/pipeline/ChangeClassifier.ts +0 -61
- package/src/tools/release/pipeline/ChangeExtractor.ts +0 -87
- package/src/tools/release/pipeline/NotesRenderer.ts +0 -66
- package/src/tools/release/pipeline/SummaryScanner.ts +0 -70
- package/src/tools/release/pipeline/TagResolver.ts +0 -40
- package/src/tools/release/pipeline/VersionCalculator.ts +0 -375
- package/src/tools/release/publishers/GitHubPublisher.ts +0 -228
- package/src/tools/release/publishers/NpmPublisher.ts +0 -196
- package/src/tools/release/release-config.json +0 -5
- package/src/tools/release/types/index.ts +0 -282
- package/src/tools/release/validators/SemanticVersionValidator.ts +0 -67
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
id: component-family-chip
|
|
3
3
|
inclusion: manual
|
|
4
4
|
name: Component-Family-Chip
|
|
5
|
-
aliases: chip family work
|
|
6
5
|
description: Chip component family — compact, interactive elements for filtering, selection, or input management (tags, toggles). Load when working with chip components, filter controls, or tag inputs.
|
|
7
6
|
---
|
|
8
7
|
|
|
@@ -84,13 +83,13 @@ Chip (Family)
|
|
|
84
83
|
|
|
85
84
|
| Contract | Description | WCAG | Platforms |
|
|
86
85
|
|----------|-------------|------|-----------|
|
|
87
|
-
|
|
|
88
|
-
|
|
|
89
|
-
|
|
|
86
|
+
| visual_pill_container | Renders pill-shaped container with label text | — | web, ios, android |
|
|
87
|
+
| visual_renders_icon | Optionally displays leading icon via Icon-Base at icon.size075 | — | web, ios, android |
|
|
88
|
+
| interaction_pressable | Responds to press/click/tap events, calls onPress callback | 2.1.1 | web, ios, android |
|
|
90
89
|
| state_styling | Visual feedback for default, hover, pressed states | 1.4.13 | web, ios, android |
|
|
91
|
-
|
|
|
92
|
-
|
|
|
93
|
-
|
|
|
90
|
+
| interaction_focusable | Can receive keyboard focus via Tab key | 2.1.1, 2.4.7 | web, ios, android |
|
|
91
|
+
| interaction_keyboard_activation | Activates on Space/Enter key press | 2.1.1 | web |
|
|
92
|
+
| interaction_expanded_tap_area | 48px tap area exceeds WCAG 44px minimum | 2.5.5 | web, ios, android |
|
|
94
93
|
| accessibility_role | Announces as button to assistive technology | 4.1.2 | web, ios, android |
|
|
95
94
|
|
|
96
95
|
### Extended Contracts (Chip-Filter)
|
|
@@ -99,10 +98,10 @@ Inherits all contracts from Chip-Base, plus:
|
|
|
99
98
|
|
|
100
99
|
| Contract | Description | WCAG | Platforms |
|
|
101
100
|
|----------|-------------|------|-----------|
|
|
102
|
-
|
|
|
103
|
-
|
|
|
104
|
-
|
|
|
105
|
-
|
|
|
101
|
+
| interaction_toggle_selection | Toggles selected state on press, calls onSelectionChange | 4.1.2 | web, ios, android |
|
|
102
|
+
| state_selected_styling | Visual feedback for selected state using select feedback colors | 1.4.1 | web, ios, android |
|
|
103
|
+
| visual_checkmark_icon | Displays checkmark icon when selected (replaces leading icon) | — | web, ios, android |
|
|
104
|
+
| accessibility_aria_pressed | Announces selection state via aria-pressed attribute | 4.1.2 | web |
|
|
106
105
|
|
|
107
106
|
### Extended Contracts (Chip-Input)
|
|
108
107
|
|
|
@@ -110,10 +109,10 @@ Inherits most contracts from Chip-Base, plus:
|
|
|
110
109
|
|
|
111
110
|
| Contract | Description | WCAG | Platforms |
|
|
112
111
|
|----------|-------------|------|-----------|
|
|
113
|
-
|
|
|
114
|
-
|
|
|
115
|
-
|
|
|
116
|
-
|
|
|
112
|
+
| interaction_dismiss | Dismisses chip on press anywhere, calls onDismiss | 2.1.1 | web, ios, android |
|
|
113
|
+
| content_trailing_dismiss_icon | Always displays X icon as trailing element | — | web, ios, android |
|
|
114
|
+
| content_dual_icons | Supports both leading icon AND trailing X icon | — | web, ios, android |
|
|
115
|
+
| accessibility_dismiss_label | X icon has accessible label "Remove [label]" | 4.1.2 | web, ios, android |
|
|
117
116
|
|
|
118
117
|
---
|
|
119
118
|
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
id: component-family-container
|
|
3
3
|
inclusion: manual
|
|
4
4
|
name: Component-Family-Container
|
|
5
|
-
aliases: container family work
|
|
6
5
|
description: Container component family — layout and content organization with granular styling props (padding, background, shadow, border, radius, opacity, layering) and semantic HTML support. Load when working with container components or layout composition.
|
|
7
6
|
---
|
|
8
7
|
|
|
@@ -98,17 +97,17 @@ All components in the Containers family inherit these 7 foundational contracts f
|
|
|
98
97
|
|
|
99
98
|
| Contract | Description | WCAG | Platforms |
|
|
100
99
|
|----------|-------------|------|-----------|
|
|
101
|
-
| `
|
|
102
|
-
| `
|
|
103
|
-
| `
|
|
104
|
-
| `
|
|
105
|
-
| `
|
|
106
|
-
| `
|
|
107
|
-
| `
|
|
100
|
+
| `layout_contains_children` | Can contain child components | 1.3.1 | web, ios, android |
|
|
101
|
+
| `layout_padding` | Applies consistent internal padding | 1.4.12 | web, ios, android |
|
|
102
|
+
| `visual_background` | Applies background color styling | 1.4.3 | web, ios, android |
|
|
103
|
+
| `visual_shadow` | Applies shadow/elevation styling | 1.4.11 | web, ios, android |
|
|
104
|
+
| `visual_border` | Applies border styling | 1.4.11 | web, ios, android |
|
|
105
|
+
| `visual_radius` | Applies border radius styling | N/A | web, ios, android |
|
|
106
|
+
| `interaction_hover` | Visual feedback on hover (pointer devices) | 1.4.13 | web, ios, android |
|
|
108
107
|
|
|
109
108
|
### Contract Details
|
|
110
109
|
|
|
111
|
-
####
|
|
110
|
+
#### layout_contains_children
|
|
112
111
|
|
|
113
112
|
**Description**: Container-Base can contain any child components or content.
|
|
114
113
|
|
|
@@ -116,7 +115,7 @@ All components in the Containers family inherit these 7 foundational contracts f
|
|
|
116
115
|
|
|
117
116
|
**WCAG Compliance**: 1.3.1 Info and Relationships
|
|
118
117
|
|
|
119
|
-
####
|
|
118
|
+
#### layout_padding
|
|
120
119
|
|
|
121
120
|
**Description**: Applies consistent internal padding using space.inset tokens.
|
|
122
121
|
|
|
@@ -124,7 +123,7 @@ All components in the Containers family inherit these 7 foundational contracts f
|
|
|
124
123
|
|
|
125
124
|
**WCAG Compliance**: 1.4.12 Text Spacing
|
|
126
125
|
|
|
127
|
-
####
|
|
126
|
+
#### visual_background
|
|
128
127
|
|
|
129
128
|
**Description**: Applies background color styling.
|
|
130
129
|
|
|
@@ -132,7 +131,7 @@ All components in the Containers family inherit these 7 foundational contracts f
|
|
|
132
131
|
|
|
133
132
|
**WCAG Compliance**: 1.4.3 Contrast (Minimum)
|
|
134
133
|
|
|
135
|
-
####
|
|
134
|
+
#### visual_shadow
|
|
136
135
|
|
|
137
136
|
**Description**: Applies shadow/elevation styling.
|
|
138
137
|
|
|
@@ -140,7 +139,7 @@ All components in the Containers family inherit these 7 foundational contracts f
|
|
|
140
139
|
|
|
141
140
|
**WCAG Compliance**: 1.4.11 Non-text Contrast
|
|
142
141
|
|
|
143
|
-
####
|
|
142
|
+
#### interaction_hover
|
|
144
143
|
|
|
145
144
|
**Description**: Visual feedback on hover (pointer devices only).
|
|
146
145
|
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
id: component-family-data-display
|
|
3
3
|
inclusion: manual
|
|
4
4
|
name: Component-Family-Data-Display
|
|
5
|
-
aliases: data display family work
|
|
6
5
|
description: Data Display component family (placeholder) — planned components for structured information presentation including text formatting, lists, tables, and media display. Load when planning data display components or reviewing family architecture.
|
|
7
6
|
---
|
|
8
7
|
|
|
@@ -14,7 +13,7 @@ description: Data Display component family (placeholder) — planned components
|
|
|
14
13
|
**Scope**: cross-project
|
|
15
14
|
**Layer**: 3
|
|
16
15
|
**Relevant Tasks**: component-development, architecture-planning
|
|
17
|
-
**Last Reviewed**: 2026-
|
|
16
|
+
**Last Reviewed**: 2026-07-08
|
|
18
17
|
|
|
19
18
|
---
|
|
20
19
|
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
id: component-family-divider
|
|
3
3
|
inclusion: manual
|
|
4
4
|
name: Component-Family-Divider
|
|
5
|
-
aliases: divider family work
|
|
6
5
|
description: Divider component family (placeholder) — planned components for visual separation between content sections with horizontal and vertical orientations. Load when planning divider components or reviewing family architecture.
|
|
7
6
|
---
|
|
8
7
|
|
|
@@ -14,7 +13,7 @@ description: Divider component family (placeholder) — planned components for v
|
|
|
14
13
|
**Scope**: cross-project
|
|
15
14
|
**Layer**: 3
|
|
16
15
|
**Relevant Tasks**: component-development, architecture-planning
|
|
17
|
-
**Last Reviewed**: 2026-
|
|
16
|
+
**Last Reviewed**: 2026-07-08
|
|
18
17
|
|
|
19
18
|
---
|
|
20
19
|
|
|
@@ -3,7 +3,7 @@ id: component-family-form-inputs
|
|
|
3
3
|
inclusion: manual
|
|
4
4
|
name: Component-Family-Form-Inputs
|
|
5
5
|
description: Form Inputs component family — text input (float label pattern), checkbox, and radio components with built-in validation, accessibility, and cross-platform consistency. Load when working with form components, input validation, or selection controls.
|
|
6
|
-
aliases:
|
|
6
|
+
aliases: textfield, text field, textbox, form field, input field, form controls
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
# Form Inputs Components
|
|
@@ -14,7 +14,7 @@ aliases: RTL, internationalization, i18n, bidi, right-to-left, text direction
|
|
|
14
14
|
**Scope**: cross-project
|
|
15
15
|
**Layer**: 3
|
|
16
16
|
**Relevant Tasks**: component-development, ui-composition, component-implementation
|
|
17
|
-
**Last Reviewed**: 2026-02
|
|
17
|
+
**Last Reviewed**: 2026-08-02
|
|
18
18
|
|
|
19
19
|
---
|
|
20
20
|
|
|
@@ -102,23 +102,24 @@ Input-Radio-Base (Primitive)
|
|
|
102
102
|
|
|
103
103
|
### Text Input Base Contracts (Inherited by Text Input Components)
|
|
104
104
|
|
|
105
|
-
All text input components in the Form Inputs family inherit these
|
|
105
|
+
All text input components in the Form Inputs family inherit these 8 foundational contracts from Input-Text-Base:
|
|
106
106
|
|
|
107
107
|
| Contract | Description | WCAG | Platforms |
|
|
108
108
|
|----------|-------------|------|-----------|
|
|
109
|
-
| `
|
|
110
|
-
| `
|
|
111
|
-
| `
|
|
112
|
-
| `
|
|
113
|
-
| `
|
|
114
|
-
| `
|
|
115
|
-
| `
|
|
116
|
-
| `
|
|
117
|
-
|
|
109
|
+
| `interaction_focusable` | Can receive keyboard focus | 2.1.1 | web, ios, android |
|
|
110
|
+
| `content_float_label` | Label animates on focus | 2.3.3 | web, ios, android |
|
|
111
|
+
| `validation_on_blur` | Validation triggers on blur | 3.3.1 | web, ios, android |
|
|
112
|
+
| `state_error` | Shows error message and styling | 3.3.1, 1.4.1 | web, ios, android |
|
|
113
|
+
| `state_success` | Shows success styling | 1.4.1 | web, ios, android |
|
|
114
|
+
| `content_trailing_icon` | Shows contextual trailing icons | 1.4.1 | web, ios, android |
|
|
115
|
+
| `interaction_focus_ring` | WCAG 2.4.7 focus visible indicator | 2.4.7 | web, ios, android |
|
|
116
|
+
| `accessibility_reduced_motion` | Respects prefers-reduced-motion | 2.3.3 | web, ios, android |
|
|
117
|
+
|
|
118
|
+
**Excluded**: `state_disabled` — DesignerPunk does not support disabled states for usability and accessibility reasons. If an input is unavailable, it should not be rendered (adjudicated 2026-07-15; see `.kiro/issues/button-cta-disabled-state-adjudication.md`).
|
|
118
119
|
|
|
119
120
|
### Contract Details
|
|
120
121
|
|
|
121
|
-
####
|
|
122
|
+
#### interaction_focusable
|
|
122
123
|
|
|
123
124
|
**Description**: Component can receive keyboard focus via Tab key navigation.
|
|
124
125
|
|
|
@@ -126,7 +127,7 @@ All text input components in the Form Inputs family inherit these 9 foundational
|
|
|
126
127
|
|
|
127
128
|
**WCAG Compliance**: 2.1.1 Keyboard
|
|
128
129
|
|
|
129
|
-
####
|
|
130
|
+
#### content_float_label
|
|
130
131
|
|
|
131
132
|
**Description**: Label smoothly transitions from placeholder position inside input to floated position above input when focused or filled.
|
|
132
133
|
|
|
@@ -134,7 +135,7 @@ All text input components in the Form Inputs family inherit these 9 foundational
|
|
|
134
135
|
|
|
135
136
|
**WCAG Compliance**: 2.3.3 Animation from Interactions
|
|
136
137
|
|
|
137
|
-
####
|
|
138
|
+
#### state_error
|
|
138
139
|
|
|
139
140
|
**Description**: When in error state, component displays red border, red label text, error icon, and error message.
|
|
140
141
|
|
|
@@ -142,7 +143,7 @@ All text input components in the Form Inputs family inherit these 9 foundational
|
|
|
142
143
|
|
|
143
144
|
**WCAG Compliance**: 3.3.1 Error Identification, 1.4.1 Use of Color
|
|
144
145
|
|
|
145
|
-
####
|
|
146
|
+
#### interaction_focus_ring
|
|
146
147
|
|
|
147
148
|
**Description**: When focused via keyboard, component displays a visible focus indicator.
|
|
148
149
|
|
|
@@ -156,24 +157,24 @@ All text input components in the Form Inputs family inherit these 9 foundational
|
|
|
156
157
|
|
|
157
158
|
| Contract | Description | WCAG |
|
|
158
159
|
|----------|-------------|------|
|
|
159
|
-
| `
|
|
160
|
-
| `
|
|
160
|
+
| `validation_email_format` | Validates email against RFC 5322 pattern | 3.3.1 |
|
|
161
|
+
| `interaction_email_autocomplete` | Enables browser/platform email autofill | 1.3.5 |
|
|
161
162
|
|
|
162
163
|
#### Input-Text-Password Extended Contracts
|
|
163
164
|
|
|
164
165
|
| Contract | Description | WCAG |
|
|
165
166
|
|----------|-------------|------|
|
|
166
|
-
| `
|
|
167
|
-
| `
|
|
168
|
-
| `
|
|
167
|
+
| `interaction_secure_input` | Masks password input by default | 3.3.2 |
|
|
168
|
+
| `interaction_password_toggle` | Provides show/hide password functionality | 2.1.1, 4.1.2 |
|
|
169
|
+
| `interaction_password_autocomplete` | Enables browser/platform password autofill | 1.3.5 |
|
|
169
170
|
|
|
170
171
|
#### Input-Text-PhoneNumber Extended Contracts
|
|
171
172
|
|
|
172
173
|
| Contract | Description | WCAG |
|
|
173
174
|
|----------|-------------|------|
|
|
174
|
-
| `
|
|
175
|
-
| `
|
|
176
|
-
| `
|
|
175
|
+
| `validation_phone_format` | Validates phone number against country-specific patterns | 3.3.1 |
|
|
176
|
+
| `content_phone_formatting` | Formats phone numbers as user types | 3.3.2 |
|
|
177
|
+
| `content_international_formats` | Handles multiple country phone number formats | 3.3.2 |
|
|
177
178
|
|
|
178
179
|
### Checkbox Base Contracts (Inherited by Checkbox Components)
|
|
179
180
|
|
|
@@ -181,19 +182,19 @@ All checkbox components in the Form Inputs family inherit these 9 foundational c
|
|
|
181
182
|
|
|
182
183
|
| Contract | Description | WCAG | Platforms |
|
|
183
184
|
|----------|-------------|------|-----------|
|
|
184
|
-
| `
|
|
185
|
-
| `
|
|
186
|
-
| `
|
|
187
|
-
| `
|
|
188
|
-
| `
|
|
189
|
-
| `
|
|
190
|
-
| `
|
|
191
|
-
| `
|
|
192
|
-
| `
|
|
185
|
+
| `interaction_focusable` | Can receive keyboard focus | 2.1.1 | web, ios, android |
|
|
186
|
+
| `interaction_pressable` | Responds to click/tap on entire label area | 2.1.1 | web, ios, android |
|
|
187
|
+
| `interaction_hover` | Visual feedback on hover (web) | 1.4.13 | web |
|
|
188
|
+
| `interaction_pressed` | Visual feedback when pressed | 2.4.7 | web, ios, android |
|
|
189
|
+
| `state_checked` | Shows checkmark icon when checked | 1.4.1 | web, ios, android |
|
|
190
|
+
| `state_indeterminate` | Shows minus icon for partial selection | 1.4.1 | web, ios, android |
|
|
191
|
+
| `state_error` | Shows error border and message | 3.3.1 | web, ios, android |
|
|
192
|
+
| `interaction_focus_ring` | WCAG 2.4.7 focus visible indicator | 2.4.7 | web, ios, android |
|
|
193
|
+
| `validation_form_integration` | Native form submission and reset | 4.1.2 | web, ios, android |
|
|
193
194
|
|
|
194
195
|
### Checkbox Contract Details
|
|
195
196
|
|
|
196
|
-
####
|
|
197
|
+
#### state_checked
|
|
197
198
|
|
|
198
199
|
**Description**: When checked, component displays filled background with checkmark icon via Icon-Base.
|
|
199
200
|
|
|
@@ -201,7 +202,7 @@ All checkbox components in the Form Inputs family inherit these 9 foundational c
|
|
|
201
202
|
|
|
202
203
|
**WCAG Compliance**: 1.4.1 Use of Color (icon provides non-color indication)
|
|
203
204
|
|
|
204
|
-
####
|
|
205
|
+
#### state_indeterminate
|
|
205
206
|
|
|
206
207
|
**Description**: When indeterminate, component displays filled background with horizontal minus icon via Icon-Base.
|
|
207
208
|
|
|
@@ -209,7 +210,7 @@ All checkbox components in the Form Inputs family inherit these 9 foundational c
|
|
|
209
210
|
|
|
210
211
|
**WCAG Compliance**: 1.4.1 Use of Color (icon provides non-color indication)
|
|
211
212
|
|
|
212
|
-
####
|
|
213
|
+
#### validation_form_integration
|
|
213
214
|
|
|
214
215
|
**Description**: Checkbox integrates with native form submission and reset.
|
|
215
216
|
|
|
@@ -221,8 +222,8 @@ All checkbox components in the Form Inputs family inherit these 9 foundational c
|
|
|
221
222
|
|
|
222
223
|
| Contract | Description | WCAG |
|
|
223
224
|
|----------|-------------|------|
|
|
224
|
-
| `
|
|
225
|
-
| `
|
|
225
|
+
| `validation_explicit_consent` | Prevents pre-checking with console warning | N/A |
|
|
226
|
+
| `validation_audit_trail` | Provides ISO 8601 timestamp and metadata | N/A |
|
|
226
227
|
| `required_indicator` | Shows "Required" indicator by default | 3.3.2 |
|
|
227
228
|
|
|
228
229
|
### Radio Base Contracts (Inherited by Radio Components)
|
|
@@ -231,18 +232,18 @@ All radio components in the Form Inputs family inherit these 8 foundational cont
|
|
|
231
232
|
|
|
232
233
|
| Contract | Description | WCAG | Platforms |
|
|
233
234
|
|----------|-------------|------|-----------|
|
|
234
|
-
| `
|
|
235
|
-
| `
|
|
236
|
-
| `
|
|
237
|
-
| `
|
|
238
|
-
| `
|
|
239
|
-
| `
|
|
240
|
-
| `
|
|
241
|
-
| `
|
|
235
|
+
| `interaction_focusable` | Can receive keyboard focus | 2.1.1 | web, ios, android |
|
|
236
|
+
| `interaction_pressable` | Responds to click/tap on entire label area | 2.1.1 | web, ios, android |
|
|
237
|
+
| `interaction_hover` | Visual feedback on hover (web) | 1.4.13 | web |
|
|
238
|
+
| `interaction_pressed` | Visual feedback when pressed | 2.4.7 | web, ios, android |
|
|
239
|
+
| `state_selected` | Shows filled dot when selected | 1.4.1 | web, ios, android |
|
|
240
|
+
| `state_error` | Shows error border and message | 3.3.1 | web, ios, android |
|
|
241
|
+
| `interaction_focus_ring` | WCAG 2.4.7 focus visible indicator | 2.4.7 | web, ios, android |
|
|
242
|
+
| `validation_form_integration` | Native form submission | 4.1.2 | web, ios, android |
|
|
242
243
|
|
|
243
244
|
### Radio Contract Details
|
|
244
245
|
|
|
245
|
-
####
|
|
246
|
+
#### state_selected
|
|
246
247
|
|
|
247
248
|
**Description**: When selected, component displays a filled circular dot centered within the outer circle.
|
|
248
249
|
|
|
@@ -262,21 +263,21 @@ All radio components in the Form Inputs family inherit these 8 foundational cont
|
|
|
262
263
|
|
|
263
264
|
| Contract | Description | WCAG | Platforms |
|
|
264
265
|
|----------|-------------|------|-----------|
|
|
265
|
-
| `
|
|
266
|
-
| `
|
|
267
|
-
| `
|
|
268
|
-
| `
|
|
269
|
-
| `
|
|
266
|
+
| `composition_mutual_exclusivity` | Only one radio selected at a time | N/A | web, ios, android |
|
|
267
|
+
| `interaction_keyboard_navigation` | Arrow keys navigate within group | 2.1.1 | web, ios, android |
|
|
268
|
+
| `validation_group_required` | Required validation at group level | 3.3.1 | web, ios, android |
|
|
269
|
+
| `accessibility_error_announcement` | Error message announced to screen readers | 4.1.3 | web, ios, android |
|
|
270
|
+
| `accessibility_radiogroup_role` | Proper ARIA role for group | 4.1.2 | web, ios, android |
|
|
270
271
|
|
|
271
272
|
### Radio Set Contract Details
|
|
272
273
|
|
|
273
|
-
####
|
|
274
|
+
#### composition_mutual_exclusivity
|
|
274
275
|
|
|
275
276
|
**Description**: Only one radio within the group can be selected at any time.
|
|
276
277
|
|
|
277
278
|
**Behavior**: When a user selects a radio, the previously selected radio becomes unselected. Clicking an already-selected radio does NOT deselect it (radio convention). The Set coordinates this via event listening (web), environment values (iOS), or CompositionLocal (Android).
|
|
278
279
|
|
|
279
|
-
####
|
|
280
|
+
#### interaction_keyboard_navigation
|
|
280
281
|
|
|
281
282
|
**Description**: Arrow keys navigate between radios within the group following WAI-ARIA radio group pattern.
|
|
282
283
|
|
|
@@ -371,8 +372,8 @@ InputTextBase(
|
|
|
371
372
|
|
|
372
373
|
| Contract | Description | Platforms |
|
|
373
374
|
|----------|-------------|-----------|
|
|
374
|
-
| `
|
|
375
|
-
| `
|
|
375
|
+
| `validation_email_format` | Validates email against RFC 5322 pattern on blur | web, ios, android |
|
|
376
|
+
| `interaction_email_autocomplete` | Enables browser/platform email autofill | web, ios, android |
|
|
376
377
|
|
|
377
378
|
#### Usage Example
|
|
378
379
|
|
|
@@ -425,9 +426,9 @@ InputTextEmail(
|
|
|
425
426
|
|
|
426
427
|
| Contract | Description | Platforms |
|
|
427
428
|
|----------|-------------|-----------|
|
|
428
|
-
| `
|
|
429
|
-
| `
|
|
430
|
-
| `
|
|
429
|
+
| `interaction_secure_input` | Masks password input by default | web, ios, android |
|
|
430
|
+
| `interaction_password_toggle` | Provides show/hide password functionality | web, ios, android |
|
|
431
|
+
| `interaction_password_autocomplete` | Enables browser/platform password autofill | web, ios, android |
|
|
431
432
|
|
|
432
433
|
#### Usage Example
|
|
433
434
|
|
|
@@ -479,9 +480,9 @@ InputTextPassword(
|
|
|
479
480
|
|
|
480
481
|
| Contract | Description | Platforms |
|
|
481
482
|
|----------|-------------|-----------|
|
|
482
|
-
| `
|
|
483
|
-
| `
|
|
484
|
-
| `
|
|
483
|
+
| `validation_phone_format` | Validates phone number against country-specific patterns | web, ios, android |
|
|
484
|
+
| `content_phone_formatting` | Formats phone numbers as user types | web, ios, android |
|
|
485
|
+
| `content_international_formats` | Handles multiple country phone number formats | web, ios, android |
|
|
485
486
|
|
|
486
487
|
#### Supported Countries
|
|
487
488
|
|
|
@@ -665,8 +666,8 @@ interface ConsentChangeData {
|
|
|
665
666
|
|
|
666
667
|
| Contract | Description | Platforms |
|
|
667
668
|
|----------|-------------|-----------|
|
|
668
|
-
| `
|
|
669
|
-
| `
|
|
669
|
+
| `validation_explicit_consent` | Prevents pre-checking with console warning | web, ios, android |
|
|
670
|
+
| `validation_audit_trail` | Provides ISO 8601 timestamp and metadata | web, ios, android |
|
|
670
671
|
| `required_indicator` | Shows "Required" indicator by default | web, ios, android |
|
|
671
672
|
|
|
672
673
|
#### Usage Example
|
|
@@ -908,7 +909,6 @@ Components in the Form Inputs family consume these design tokens:
|
|
|
908
909
|
| Accessibility | `accessibility.focus.color` | Focus ring color |
|
|
909
910
|
| Icon | `icon.size100` | Icon size |
|
|
910
911
|
| Blend | `blend.focusSaturate` | Focus state saturation |
|
|
911
|
-
| Blend | `blend.disabledDesaturate` | Disabled state desaturation |
|
|
912
912
|
|
|
913
913
|
#### Checkbox Tokens
|
|
914
914
|
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
id: component-family-icon
|
|
3
3
|
inclusion: manual
|
|
4
4
|
name: Component-Family-Icon
|
|
5
|
-
aliases: icon family work
|
|
6
5
|
description: Icon component family — inline SVG icons with automatic color inheritance and typography-aligned sizing across 11 size variants. Load when working with icon components, icon sizing, or icon color integration.
|
|
7
6
|
---
|
|
8
7
|
|
|
@@ -14,7 +13,7 @@ description: Icon component family — inline SVG icons with automatic color inh
|
|
|
14
13
|
**Scope**: cross-project
|
|
15
14
|
**Layer**: 3
|
|
16
15
|
**Relevant Tasks**: component-development, ui-composition, component-implementation
|
|
17
|
-
**Last Reviewed**: 2026-
|
|
16
|
+
**Last Reviewed**: 2026-07-08
|
|
18
17
|
|
|
19
18
|
---
|
|
20
19
|
|
|
@@ -85,15 +84,15 @@ All components in the Icons family inherit these 5 foundational contracts from I
|
|
|
85
84
|
|
|
86
85
|
| Contract | Description | WCAG | Platforms |
|
|
87
86
|
|----------|-------------|------|-----------|
|
|
88
|
-
| `
|
|
89
|
-
| `
|
|
90
|
-
| `
|
|
91
|
-
| `
|
|
87
|
+
| `visual_renders_svg` | Renders inline SVG with correct viewBox and stroke | N/A | web, ios, android |
|
|
88
|
+
| `visual_color_inheritance` | Inherits color from parent via currentColor | 1.4.1 | web, ios, android |
|
|
89
|
+
| `visual_size_variants` | Supports 11 size variants from typography scale | N/A | web, ios, android |
|
|
90
|
+
| `visual_optical_balance` | Optional 8% lighter blend for icon-text pairing | 1.4.3 | web, ios, android |
|
|
92
91
|
| `accessibility_hidden` | Decorative icons hidden from assistive technology | 1.1.1 | web, ios, android |
|
|
93
92
|
|
|
94
93
|
### Contract Details
|
|
95
94
|
|
|
96
|
-
####
|
|
95
|
+
#### visual_renders_svg
|
|
97
96
|
|
|
98
97
|
**Description**: Renders inline SVG with correct viewBox and stroke attributes.
|
|
99
98
|
|
|
@@ -101,7 +100,7 @@ All components in the Icons family inherit these 5 foundational contracts from I
|
|
|
101
100
|
|
|
102
101
|
**WCAG Compliance**: N/A
|
|
103
102
|
|
|
104
|
-
####
|
|
103
|
+
#### visual_color_inheritance
|
|
105
104
|
|
|
106
105
|
**Description**: Inherits color from parent via currentColor.
|
|
107
106
|
|
|
@@ -109,7 +108,7 @@ All components in the Icons family inherit these 5 foundational contracts from I
|
|
|
109
108
|
|
|
110
109
|
**WCAG Compliance**: 1.4.1 Use of Color
|
|
111
110
|
|
|
112
|
-
####
|
|
111
|
+
#### visual_size_variants
|
|
113
112
|
|
|
114
113
|
**Description**: Supports 11 size variants calculated from typography scale.
|
|
115
114
|
|
|
@@ -126,7 +125,7 @@ All components in the Icons family inherit these 5 foundational contracts from I
|
|
|
126
125
|
|
|
127
126
|
**WCAG Compliance**: N/A
|
|
128
127
|
|
|
129
|
-
####
|
|
128
|
+
#### visual_optical_balance
|
|
130
129
|
|
|
131
130
|
**Description**: Optional 8% lighter blend for icon-text pairing.
|
|
132
131
|
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
id: component-family-loading
|
|
3
3
|
inclusion: manual
|
|
4
4
|
name: Component-Family-Loading
|
|
5
|
-
aliases: loading family work
|
|
6
5
|
description: Loading component family (placeholder) — planned components for progress indication including indeterminate spinners, determinate progress bars, and skeleton placeholders. Load when planning loading components or reviewing family architecture.
|
|
7
6
|
---
|
|
8
7
|
|
|
@@ -14,7 +13,7 @@ description: Loading component family (placeholder) — planned components for p
|
|
|
14
13
|
**Scope**: cross-project
|
|
15
14
|
**Layer**: 3
|
|
16
15
|
**Relevant Tasks**: component-development, architecture-planning
|
|
17
|
-
**Last Reviewed**: 2026-
|
|
16
|
+
**Last Reviewed**: 2026-07-08
|
|
18
17
|
|
|
19
18
|
---
|
|
20
19
|
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
id: component-family-modal
|
|
3
3
|
inclusion: manual
|
|
4
4
|
name: Component-Family-Modal
|
|
5
|
-
aliases: modal family work
|
|
6
5
|
description: Modal component family (placeholder) — planned overlay components for focused user interactions with focus trapping, backdrop interactions, and accessible dismissal patterns. Load when planning modal components or reviewing family architecture.
|
|
7
6
|
---
|
|
8
7
|
|
|
@@ -14,7 +13,7 @@ description: Modal component family (placeholder) — planned overlay components
|
|
|
14
13
|
**Scope**: cross-project
|
|
15
14
|
**Layer**: 3
|
|
16
15
|
**Relevant Tasks**: component-development, architecture-planning
|
|
17
|
-
**Last Reviewed**: 2026-
|
|
16
|
+
**Last Reviewed**: 2026-07-08
|
|
18
17
|
|
|
19
18
|
---
|
|
20
19
|
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
id: component-family-navigation
|
|
3
3
|
inclusion: manual
|
|
4
4
|
name: Component-Family-Navigation
|
|
5
|
-
aliases: navigation family work
|
|
6
5
|
description: Navigation component family — wayfinding and view-switching components including segmented controls and tab bars. Load when building navigation components or reviewing family architecture.
|
|
7
6
|
---
|
|
8
7
|
|
|
@@ -144,7 +143,7 @@ Nav-Header-Base (Primitive) [PLANNED]
|
|
|
144
143
|
| `accessibility_touch_target` | accessibility | 2.5.5 | web, ios, android |
|
|
145
144
|
| `validation_selection_constraints` | validation | — | web, ios, android |
|
|
146
145
|
|
|
147
|
-
**Exclusions**: `state_disabled`, `
|
|
146
|
+
**Exclusions**: `state_disabled`, `interaction_hover` — No disabled or hover states on tab bar.
|
|
148
147
|
|
|
149
148
|
---
|
|
150
149
|
|