@mich8060/unified-design-system 0.2.11 → 0.2.14
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/README.md +8 -0
- package/dist/ai/audit/auditLogger.cjs +2 -0
- package/dist/ai/audit/auditLogger.js +2 -0
- package/dist/ai/discovery.json +33 -0
- package/dist/ai/examples/index.cjs +1 -0
- package/dist/ai/examples/index.js +1 -0
- package/dist/ai/examples/training.examples.cjs +1 -0
- package/dist/ai/examples/training.examples.js +1 -0
- package/dist/ai/examples/trees.example.cjs +1 -0
- package/dist/ai/examples/trees.example.js +1 -0
- package/dist/ai/examples/validation-run.example.cjs +1 -0
- package/dist/ai/examples/validation-run.example.js +1 -0
- package/dist/ai/index.cjs +1 -0
- package/dist/ai/index.js +1 -0
- package/dist/ai/manifest/components.manifest.cjs +1 -0
- package/dist/ai/manifest/components.manifest.js +1 -0
- package/dist/ai/manifest/composition.manifest.cjs +1 -0
- package/dist/ai/manifest/composition.manifest.js +1 -0
- package/dist/ai/manifest/governance.manifest.cjs +1 -0
- package/dist/ai/manifest/governance.manifest.js +1 -0
- package/dist/ai/manifest/index.cjs +1 -0
- package/dist/ai/manifest/index.js +1 -0
- package/dist/ai/manifest/layout.manifest.cjs +1 -0
- package/dist/ai/manifest/layout.manifest.js +1 -0
- package/dist/ai/manifest/patterns.manifest.cjs +1 -0
- package/dist/ai/manifest/patterns.manifest.js +1 -0
- package/dist/ai/manifest/prop-aliases.manifest.cjs +1 -0
- package/dist/ai/manifest/prop-aliases.manifest.js +1 -0
- package/dist/ai/manifest/system.manifest.cjs +1 -0
- package/dist/ai/manifest/system.manifest.js +1 -0
- package/dist/ai/manifest/tokens.intent.manifest.cjs +1 -0
- package/dist/ai/manifest/tokens.intent.manifest.js +1 -0
- package/dist/ai/manifest.json +2801 -0
- package/dist/ai/policies/policy.engine.cjs +1 -0
- package/dist/ai/policies/policy.engine.js +1 -0
- package/dist/ai/policies/rules/accessibility.rules.cjs +1 -0
- package/dist/ai/policies/rules/accessibility.rules.js +1 -0
- package/dist/ai/policies/rules/action.rules.cjs +1 -0
- package/dist/ai/policies/rules/action.rules.js +1 -0
- package/dist/ai/policies/rules/composition.rules.cjs +1 -0
- package/dist/ai/policies/rules/composition.rules.js +1 -0
- package/dist/ai/policies/rules/props.rules.cjs +1 -0
- package/dist/ai/policies/rules/props.rules.js +1 -0
- package/dist/ai/policies/rules/spacing.rules.cjs +1 -0
- package/dist/ai/policies/rules/spacing.rules.js +1 -0
- package/dist/ai/schemas/ai-output.schema.json +71 -0
- package/dist/ai/sdk/index.cjs +1 -0
- package/dist/ai/sdk/index.js +1 -0
- package/dist/ai/sdk/runtime-sdk.cjs +2 -0
- package/dist/ai/sdk/runtime-sdk.js +2 -0
- package/dist/ai/telemetry/usageMetrics.cjs +1 -0
- package/dist/ai/telemetry/usageMetrics.js +1 -0
- package/dist/ai/templates/layouts.json +181 -0
- package/dist/ai/validation/deterministicFeedback.cjs +1 -0
- package/dist/ai/validation/deterministicFeedback.js +1 -0
- package/dist/ai/validation/driftDetection.cjs +1 -0
- package/dist/ai/validation/driftDetection.js +1 -0
- package/dist/ai/validation/index.cjs +1 -0
- package/dist/ai/validation/index.js +1 -0
- package/dist/ai/validation/schemaValidation.cjs +1 -0
- package/dist/ai/validation/schemaValidation.js +1 -0
- package/dist/ai/validation/validateAIOutput.cjs +1 -0
- package/dist/ai/validation/validateAIOutput.js +1 -0
- package/dist/ai/validation/validateTree.cjs +1 -0
- package/dist/ai/validation/validateTree.js +1 -0
- package/dist/components/Breadcrumb/Breadcrumb.cjs +1 -1
- package/dist/components/Breadcrumb/Breadcrumb.js +1 -1
- package/dist/components/Button/Button.cjs +1 -1
- package/dist/components/Button/Button.js +1 -1
- package/dist/components/Chip/Chip.cjs +1 -1
- package/dist/components/Chip/Chip.js +1 -1
- package/dist/components/Dialog/Dialog.cjs +1 -1
- package/dist/components/Dialog/Dialog.js +1 -1
- package/dist/components/DotStatus/DotStatus.cjs +1 -1
- package/dist/components/DotStatus/DotStatus.js +1 -1
- package/dist/components/EmptyState/EmptyState.cjs +1 -1
- package/dist/components/EmptyState/EmptyState.js +1 -1
- package/dist/components/Field/Field.cjs +1 -1
- package/dist/components/Field/Field.js +1 -1
- package/dist/components/FileUpload/FileUpload.cjs +1 -1
- package/dist/components/FileUpload/FileUpload.js +1 -1
- package/dist/components/Menu/Menu.cjs +1 -1
- package/dist/components/Menu/Menu.js +1 -1
- package/dist/components/Modal/Modal.cjs +1 -1
- package/dist/components/Modal/Modal.js +1 -1
- package/dist/components/Pagination/Pagination.cjs +1 -1
- package/dist/components/Pagination/Pagination.js +1 -1
- package/dist/components/ProgressCircle/ProgressCircle.cjs +1 -1
- package/dist/components/ProgressCircle/ProgressCircle.js +1 -1
- package/dist/components/ProgressIndicator/ProgressIndicator.cjs +1 -1
- package/dist/components/ProgressIndicator/ProgressIndicator.js +1 -1
- package/dist/components/Steps/Steps.cjs +1 -1
- package/dist/components/Steps/Steps.js +1 -1
- package/dist/components/Text/Text.cjs +1 -1
- package/dist/components/Text/Text.js +1 -1
- package/dist/components/Tooltip/Tooltip.cjs +1 -1
- package/dist/components/Tooltip/Tooltip.js +1 -1
- package/dist/design-system/ai/audit/audit.types.d.ts +23 -0
- package/dist/design-system/ai/audit/auditLogger.d.ts +2 -0
- package/dist/design-system/ai/examples/index.d.ts +4 -0
- package/dist/design-system/ai/examples/training.examples.d.ts +22 -0
- package/dist/design-system/ai/examples/trees.example.d.ts +3 -0
- package/dist/design-system/ai/examples/validation-run.example.d.ts +3 -0
- package/dist/design-system/ai/index.d.ts +45 -0
- package/dist/design-system/ai/manifest/components.manifest.d.ts +2 -0
- package/dist/design-system/ai/manifest/composition.manifest.d.ts +11 -0
- package/dist/design-system/ai/manifest/governance.manifest.d.ts +10 -0
- package/dist/design-system/ai/manifest/index.d.ts +9 -0
- package/dist/design-system/ai/manifest/layout.manifest.d.ts +2 -0
- package/dist/design-system/ai/manifest/patterns.manifest.d.ts +2 -0
- package/dist/design-system/ai/manifest/prop-aliases.manifest.d.ts +10 -0
- package/dist/design-system/ai/manifest/system.manifest.d.ts +5 -0
- package/dist/design-system/ai/manifest/tokens.intent.manifest.d.ts +2 -0
- package/dist/design-system/ai/manifest/types.d.ts +136 -0
- package/dist/design-system/ai/policies/policy.engine.d.ts +3 -0
- package/dist/design-system/ai/policies/policy.types.d.ts +14 -0
- package/dist/design-system/ai/policies/rules/accessibility.rules.d.ts +2 -0
- package/dist/design-system/ai/policies/rules/action.rules.d.ts +2 -0
- package/dist/design-system/ai/policies/rules/composition.rules.d.ts +2 -0
- package/dist/design-system/ai/policies/rules/props.rules.d.ts +2 -0
- package/dist/design-system/ai/policies/rules/spacing.rules.d.ts +2 -0
- package/dist/design-system/ai/sdk/index.d.ts +1 -0
- package/dist/design-system/ai/sdk/runtime-sdk.d.ts +21 -0
- package/dist/design-system/ai/telemetry/usageMetrics.d.ts +9 -0
- package/dist/design-system/ai/validation/deterministicFeedback.d.ts +15 -0
- package/dist/design-system/ai/validation/driftDetection.d.ts +3 -0
- package/dist/design-system/ai/validation/index.d.ts +5 -0
- package/dist/design-system/ai/validation/schemaValidation.d.ts +7 -0
- package/dist/design-system/ai/validation/validateAIOutput.d.ts +25 -0
- package/dist/design-system/ai/validation/validateTree.d.ts +2 -0
- package/dist/design-system/components/Button/Button.d.ts +1 -1
- package/dist/design-system/components/Button/Button.types.d.ts +1 -0
- package/dist/design-system/components/Chip/Chip.d.ts +4 -3
- package/dist/design-system/components/Chip/Chip.types.d.ts +13 -9
- package/dist/design-system/components/Dialog/Dialog.types.d.ts +9 -8
- package/dist/design-system/components/Field/Field.d.ts +1 -1
- package/dist/design-system/components/Field/Field.types.d.ts +11 -9
- package/dist/design-system/components/FileUpload/FileUpload.d.ts +1 -1
- package/dist/design-system/components/FileUpload/FileUpload.types.d.ts +2 -0
- package/dist/design-system/components/Pagination/Pagination.d.ts +5 -3
- package/dist/design-system/components/Pagination/Pagination.types.d.ts +4 -1
- package/dist/design-system/components/ProgressCircle/ProgressCircle.d.ts +3 -2
- package/dist/design-system/components/ProgressCircle/ProgressCircle.types.d.ts +7 -3
- package/dist/design-system/components/ProgressIndicator/ProgressIndicator.d.ts +2 -1
- package/dist/design-system/components/ProgressIndicator/ProgressIndicator.types.d.ts +8 -4
- package/dist/design-system/components/Tooltip/Tooltip.d.ts +1 -1
- package/dist/design-system/components/Tooltip/Tooltip.types.d.ts +1 -0
- package/dist/design-system/generated/component-api.d.ts +1568 -0
- package/dist/design-system/index.d.ts +1 -2
- package/dist/design-system/tokens/runtime/color.d.ts +40 -0
- package/dist/design-system/tokens/runtime/generateCss.d.ts +2 -0
- package/dist/design-system/tokens/runtime/index.d.ts +476 -0
- package/dist/design-system/tokens/runtime/motion.d.ts +14 -0
- package/dist/design-system/tokens/runtime/radius.d.ts +14 -0
- package/dist/design-system/tokens/runtime/shadow.d.ts +22 -0
- package/dist/design-system/tokens/runtime/spacing.d.ts +21 -0
- package/dist/design-system/tokens/runtime/types.d.ts +21 -0
- package/dist/design-system/tokens/runtime/typography.d.ts +87 -0
- package/dist/design-system/version.d.ts +1 -0
- package/dist/generated/component-api.cjs +1 -0
- package/dist/generated/component-api.js +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/dist/style.css +1 -1
- package/dist/tokens/index.d.ts +1 -0
- package/dist/tokens/index.js +1 -0
- package/dist/tokens/runtime/color.cjs +1 -0
- package/dist/tokens/runtime/color.js +1 -0
- package/dist/tokens/runtime/index.cjs +1 -0
- package/dist/tokens/runtime/index.js +1 -0
- package/dist/tokens/runtime/radius.cjs +1 -0
- package/dist/tokens/runtime/radius.js +1 -0
- package/dist/tokens/runtime/spacing.cjs +1 -0
- package/dist/tokens/runtime/spacing.js +1 -0
- package/dist/version.cjs +1 -0
- package/dist/version.js +1 -0
- package/package.json +74 -14
- package/dist/components/PillToggle/PillToggle.cjs +0 -1
- package/dist/components/PillToggle/PillToggle.js +0 -1
- package/dist/components/Playground/Playground.cjs +0 -9
- package/dist/components/Playground/Playground.js +0 -9
- package/dist/components/Text/Text.spec.cjs +0 -1
- package/dist/components/Text/Text.spec.js +0 -1
- package/dist/design-system/components/PillToggle/PillToggle.d.ts +0 -13
- package/dist/design-system/components/PillToggle/PillToggle.types.d.ts +0 -9
- package/dist/design-system/components/PillToggle/index.d.ts +0 -3
- package/dist/design-system/components/Playground/Playground.d.ts +0 -12
- package/dist/design-system/components/Playground/Playground.types.d.ts +0 -7
- package/dist/design-system/components/Playground/index.d.ts +0 -3
- package/dist/design-system/components/Text/Text.spec.d.ts +0 -2
- package/dist/design-system/specs/spec.types.d.ts +0 -18
package/README.md
CHANGED
|
@@ -37,6 +37,8 @@ See `/docs` for the full methodology and governance model.
|
|
|
37
37
|
- [Runtime Tokens Migration](docs/11-runtime-tokens-migration.md) – typed token exports and generated token CSS usage
|
|
38
38
|
- [Theming Engine API](docs/12-theming-engine.md) – createTheme/createBrand/ThemeProvider architecture and usage
|
|
39
39
|
- [Theming Platform API](docs/13-theming-platform-api.md) – formal public theming layer, architecture, and usage
|
|
40
|
+
- [AI-Native Architecture](docs/15-ai-native-architecture.md) – machine-readable metadata, patterns, and AI export strategy
|
|
41
|
+
- [AI CI Enforcement](docs/16-ai-ci-enforcement.md) – governance pipeline and merge-blocking validation flow
|
|
40
42
|
|
|
41
43
|
## NPM package quick start
|
|
42
44
|
|
|
@@ -61,6 +63,12 @@ import { runtimeTokens } from "@mich8060/unified-design-system/tokens";
|
|
|
61
63
|
import "@mich8060/unified-design-system/tokens.css";
|
|
62
64
|
```
|
|
63
65
|
|
|
66
|
+
AI metadata is available from a dedicated subpath:
|
|
67
|
+
|
|
68
|
+
```ts
|
|
69
|
+
import { UDS_AI_MANIFEST, UDS_FLOW_PATTERNS } from "@mich8060/unified-design-system/ai";
|
|
70
|
+
```
|
|
71
|
+
|
|
64
72
|
## Common prop pitfalls
|
|
65
73
|
|
|
66
74
|
- `Button` uses `appearance`, not `variant`
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});async function n(i,e={type:"console"}){if(e.type==="console"){console.info("[UDS AI Audit]",i);return}if(e.type==="file"){try{await e.append(`${JSON.stringify(i)}
|
|
2
|
+
`,e.filePath)}catch(t){console.warn("[UDS AI Audit] Failed writing audit event to file transport.",t)}return}await e.handler(i)}exports.logAIGeneration=n;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
async function o(e,i={type:"console"}){if(i.type==="console"){console.info("[UDS AI Audit]",e);return}if(i.type==="file"){try{await i.append(`${JSON.stringify(e)}
|
|
2
|
+
`,i.filePath)}catch(n){console.warn("[UDS AI Audit] Failed writing audit event to file transport.",n)}return}await i.handler(e)}export{o as logAIGeneration};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"contractName": "uds.ai.discovery",
|
|
3
|
+
"schemaVersion": "1.0.0",
|
|
4
|
+
"package": "@mich8060/unified-design-system",
|
|
5
|
+
"recommendedReadOrder": [
|
|
6
|
+
"@mich8060/unified-design-system/ai/discovery.json",
|
|
7
|
+
"@mich8060/unified-design-system/ai/manifest.json",
|
|
8
|
+
"@mich8060/unified-design-system/ai/schema",
|
|
9
|
+
"@mich8060/unified-design-system/ai/templates",
|
|
10
|
+
"@mich8060/unified-design-system/ai/examples",
|
|
11
|
+
"@mich8060/unified-design-system/ai/validation",
|
|
12
|
+
"@mich8060/unified-design-system/ai/sdk"
|
|
13
|
+
],
|
|
14
|
+
"entrypoints": {
|
|
15
|
+
"discovery": "@mich8060/unified-design-system/ai/discovery.json",
|
|
16
|
+
"contractManifest": "@mich8060/unified-design-system/ai/manifest.json",
|
|
17
|
+
"schema": "@mich8060/unified-design-system/ai/schema",
|
|
18
|
+
"templatesCatalog": "@mich8060/unified-design-system/ai/templates",
|
|
19
|
+
"runtimeApi": "@mich8060/unified-design-system/ai",
|
|
20
|
+
"manifestModule": "@mich8060/unified-design-system/ai/manifest",
|
|
21
|
+
"validationModule": "@mich8060/unified-design-system/ai/validation",
|
|
22
|
+
"helperSdk": "@mich8060/unified-design-system/ai/sdk",
|
|
23
|
+
"examplesModule": "@mich8060/unified-design-system/ai/examples",
|
|
24
|
+
"validateAlias": "@mich8060/unified-design-system/ai/validate"
|
|
25
|
+
},
|
|
26
|
+
"versioning": {
|
|
27
|
+
"system": "0.2.12",
|
|
28
|
+
"token": "1.0.0",
|
|
29
|
+
"manifest": "1.0.0",
|
|
30
|
+
"governance": "1.0.0",
|
|
31
|
+
"policy": "1.0.0"
|
|
32
|
+
}
|
|
33
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./trees.example.cjs"),r=require("./validation-run.example.cjs"),i=require("./training.examples.cjs");exports.InvalidPrimaryActionTree=e.InvalidPrimaryActionTree;exports.ValidAuthFormTree=e.ValidAuthFormTree;exports.StrictModeFailureTree=r.StrictModeFailureTree;exports.strictModeFailureExample=r.strictModeFailureExample;exports.UDS_TRAINING_EXAMPLES=i.UDS_TRAINING_EXAMPLES;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{InvalidPrimaryActionTree as o,ValidAuthFormTree as t}from"./trees.example.js";import{StrictModeFailureTree as a,strictModeFailureExample as m}from"./validation-run.example.js";import{UDS_TRAINING_EXAMPLES as d}from"./training.examples.js";export{o as InvalidPrimaryActionTree,a as StrictModeFailureTree,d as UDS_TRAINING_EXAMPLES,t as ValidAuthFormTree,m as strictModeFailureExample};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=[{id:"valid-auth-form",scenario:"Simple authentication card with semantic layout and one primary action.",kind:"valid",tags:["form","auth","field-wrapping"],output:{tree:{type:"Container",props:{gap:"--uds-spacing-24"},children:[{type:"Card",children:[{type:"Text",props:{variant:"heading-24"}},{type:"Field",children:[{type:"TextInput",props:{type:"email",iconPosition:"left"}}]},{type:"Field",children:[{type:"TextInput",props:{type:"password"}}]},{type:"Flex",children:[{type:"Button",props:{appearance:"primary",label:"Sign in"}},{type:"Button",props:{appearance:"text",label:"Forgot password?"}}]}]}]}},expected:{status:"pass"},rationale:{why:"Uses allowed composition (Container > Card > Field/Text/Button), valid spacing token, and a single primary action."}},{id:"valid-table-summary",scenario:"Data summary area with table-related indicators and a single primary action.",kind:"valid",tags:["table","status","dashboard"],output:{tree:{type:"Container",children:[{type:"Flex",children:[{type:"Text",props:{variant:"heading-24"}},{type:"Button",props:{appearance:"primary",label:"Create row"}}]},{type:"Table",children:[{type:"Status",props:{variant:"success",text:"Ready"}},{type:"Tag",props:{variant:"blue",label:"Active"}},{type:"DotStatus",props:{status:"positive"}},{type:"ActionMenu",props:{triggerLabel:"Row actions"}}]}]}},expected:{status:"pass"},rationale:{why:"Uses allowed Table children and keeps primary action count within limit."}},{id:"invalid-two-primary-actions",scenario:"Section contains two primary buttons.",kind:"invalid",tags:["actions","policy"],output:{tree:{type:"Container",children:[{type:"Button",props:{appearance:"primary",label:"Save"}},{type:"Button",props:{appearance:"primary",label:"Publish"}}]}},expected:{status:"fail",violationCodes:["RULE_MAX_PRIMARY_ACTIONS"]},rationale:{why:"Violates max primary actions per section.",fix:"Keep one primary action and convert the rest to secondary appearances."}},{id:"invalid-raw-html-and-inline-style",scenario:"Output includes raw HTML and inline style values.",kind:"invalid",tags:["raw-html","inline-style","governance"],output:{tree:{type:"Container",children:[{type:"div",props:{style:{color:"#ff0000"}},children:[{type:"Text",props:{variant:"body-16"}}]}]}},expected:{status:"fail",violationCodes:["RULE_UNKNOWN_COMPONENT","RULE_RAW_HTML_DISALLOWED","RULE_INLINE_STYLE_DISALLOWED"]},rationale:{why:"Governance forbids raw HTML tags and inline styling in generated output.",fix:"Replace raw HTML with UDS components and use tokenized component props."}},{id:"invalid-spacing-token",scenario:"Spacing prop uses a non-system token.",kind:"invalid",tags:["tokens","spacing"],output:{tree:{type:"Container",props:{gap:"--uds-spacing-999"},children:[{type:"Text",props:{variant:"body-16"}}]}},expected:{status:"fail",violationCodes:["RULE_UNKNOWN_SPACING_TOKEN"]},rationale:{why:"Spacing token is outside allowed spacing system.",fix:"Use an allowed token such as --uds-spacing-8/12/16/24."}},{id:"invalid-composition-parent-child",scenario:"Composition places a form field directly inside Menu.",kind:"invalid",tags:["composition","parent-child","layout"],output:{tree:{type:"Menu",children:[{type:"Field",children:[{type:"TextInput",props:{type:"text"}}]}]}},expected:{status:"fail",violationCodes:["RULE_INVALID_COMPOSITION","RULE_INVALID_PARENT_COMPOSITION"]},rationale:{why:"Field is not an allowed Menu child and Field requires a form/container context.",fix:"Use Menu-approved children or move Field under Container/Card/Modal/Tabs."}},{id:"invalid-ambiguous-prop-alias",scenario:"Uses an ambiguous legacy alias prop instead of canonical prop.",kind:"invalid",tags:["props","aliases","governance"],output:{tree:{type:"Chip",props:{label:"Demo",iconplacement:"left",icon:"User"}}},expected:{status:"fail",violationCodes:["RULE_AMBIGUOUS_PROP_ALIAS"]},rationale:{why:"Alias props create inconsistent generation behavior across models.",fix:"Use canonical prop name `iconPlacement`."}},{id:"invalid-version-mismatch",scenario:"Output version fields do not match current governance contract.",kind:"invalid",tags:["versioning","contract","governance"],output:{manifestVersion:"0.0.1",governanceVersion:"0.0.1",policyVersion:"0.0.1",tree:{type:"Container",children:[{type:"Text",props:{variant:"body-16"}}]}},expected:{status:"fail",violationCodes:["RULE_VERSION_MISMATCH_MANIFESTVERSION","RULE_VERSION_MISMATCH_GOVERNANCEVERSION","RULE_VERSION_MISMATCH_POLICYVERSION"]},rationale:{why:"Generated output must declare versions that match the active AI contract.",fix:"Use the current manifest/governance/policy versions from UDSGovernance."}},{id:"invalid-schema-node-type",scenario:"Malformed output with missing node type.",kind:"invalid",tags:["schema","malformed"],output:{tree:{type:"",children:[{type:"Text",props:{variant:"body-16"}}]}},expected:{status:"fail",violationCodes:["SCHEMA_NODE_TYPE"]},rationale:{why:"Schema requires each node to have a non-empty string `type`.",fix:"Set a valid UDS component type for every node."}}];exports.UDS_TRAINING_EXAMPLES=e;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=[{id:"valid-auth-form",scenario:"Simple authentication card with semantic layout and one primary action.",kind:"valid",tags:["form","auth","field-wrapping"],output:{tree:{type:"Container",props:{gap:"--uds-spacing-24"},children:[{type:"Card",children:[{type:"Text",props:{variant:"heading-24"}},{type:"Field",children:[{type:"TextInput",props:{type:"email",iconPosition:"left"}}]},{type:"Field",children:[{type:"TextInput",props:{type:"password"}}]},{type:"Flex",children:[{type:"Button",props:{appearance:"primary",label:"Sign in"}},{type:"Button",props:{appearance:"text",label:"Forgot password?"}}]}]}]}},expected:{status:"pass"},rationale:{why:"Uses allowed composition (Container > Card > Field/Text/Button), valid spacing token, and a single primary action."}},{id:"valid-table-summary",scenario:"Data summary area with table-related indicators and a single primary action.",kind:"valid",tags:["table","status","dashboard"],output:{tree:{type:"Container",children:[{type:"Flex",children:[{type:"Text",props:{variant:"heading-24"}},{type:"Button",props:{appearance:"primary",label:"Create row"}}]},{type:"Table",children:[{type:"Status",props:{variant:"success",text:"Ready"}},{type:"Tag",props:{variant:"blue",label:"Active"}},{type:"DotStatus",props:{status:"positive"}},{type:"ActionMenu",props:{triggerLabel:"Row actions"}}]}]}},expected:{status:"pass"},rationale:{why:"Uses allowed Table children and keeps primary action count within limit."}},{id:"invalid-two-primary-actions",scenario:"Section contains two primary buttons.",kind:"invalid",tags:["actions","policy"],output:{tree:{type:"Container",children:[{type:"Button",props:{appearance:"primary",label:"Save"}},{type:"Button",props:{appearance:"primary",label:"Publish"}}]}},expected:{status:"fail",violationCodes:["RULE_MAX_PRIMARY_ACTIONS"]},rationale:{why:"Violates max primary actions per section.",fix:"Keep one primary action and convert the rest to secondary appearances."}},{id:"invalid-raw-html-and-inline-style",scenario:"Output includes raw HTML and inline style values.",kind:"invalid",tags:["raw-html","inline-style","governance"],output:{tree:{type:"Container",children:[{type:"div",props:{style:{color:"#ff0000"}},children:[{type:"Text",props:{variant:"body-16"}}]}]}},expected:{status:"fail",violationCodes:["RULE_UNKNOWN_COMPONENT","RULE_RAW_HTML_DISALLOWED","RULE_INLINE_STYLE_DISALLOWED"]},rationale:{why:"Governance forbids raw HTML tags and inline styling in generated output.",fix:"Replace raw HTML with UDS components and use tokenized component props."}},{id:"invalid-spacing-token",scenario:"Spacing prop uses a non-system token.",kind:"invalid",tags:["tokens","spacing"],output:{tree:{type:"Container",props:{gap:"--uds-spacing-999"},children:[{type:"Text",props:{variant:"body-16"}}]}},expected:{status:"fail",violationCodes:["RULE_UNKNOWN_SPACING_TOKEN"]},rationale:{why:"Spacing token is outside allowed spacing system.",fix:"Use an allowed token such as --uds-spacing-8/12/16/24."}},{id:"invalid-composition-parent-child",scenario:"Composition places a form field directly inside Menu.",kind:"invalid",tags:["composition","parent-child","layout"],output:{tree:{type:"Menu",children:[{type:"Field",children:[{type:"TextInput",props:{type:"text"}}]}]}},expected:{status:"fail",violationCodes:["RULE_INVALID_COMPOSITION","RULE_INVALID_PARENT_COMPOSITION"]},rationale:{why:"Field is not an allowed Menu child and Field requires a form/container context.",fix:"Use Menu-approved children or move Field under Container/Card/Modal/Tabs."}},{id:"invalid-ambiguous-prop-alias",scenario:"Uses an ambiguous legacy alias prop instead of canonical prop.",kind:"invalid",tags:["props","aliases","governance"],output:{tree:{type:"Chip",props:{label:"Demo",iconplacement:"left",icon:"User"}}},expected:{status:"fail",violationCodes:["RULE_AMBIGUOUS_PROP_ALIAS"]},rationale:{why:"Alias props create inconsistent generation behavior across models.",fix:"Use canonical prop name `iconPlacement`."}},{id:"invalid-version-mismatch",scenario:"Output version fields do not match current governance contract.",kind:"invalid",tags:["versioning","contract","governance"],output:{manifestVersion:"0.0.1",governanceVersion:"0.0.1",policyVersion:"0.0.1",tree:{type:"Container",children:[{type:"Text",props:{variant:"body-16"}}]}},expected:{status:"fail",violationCodes:["RULE_VERSION_MISMATCH_MANIFESTVERSION","RULE_VERSION_MISMATCH_GOVERNANCEVERSION","RULE_VERSION_MISMATCH_POLICYVERSION"]},rationale:{why:"Generated output must declare versions that match the active AI contract.",fix:"Use the current manifest/governance/policy versions from UDSGovernance."}},{id:"invalid-schema-node-type",scenario:"Malformed output with missing node type.",kind:"invalid",tags:["schema","malformed"],output:{tree:{type:"",children:[{type:"Text",props:{variant:"body-16"}}]}},expected:{status:"fail",violationCodes:["SCHEMA_NODE_TYPE"]},rationale:{why:"Schema requires each node to have a non-empty string `type`.",fix:"Set a valid UDS component type for every node."}}];export{e as UDS_TRAINING_EXAMPLES};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e={type:"Container",props:{gap:"--uds-spacing-24"},children:[{type:"Card",props:{gap:"--uds-spacing-16"},children:[{type:"Text",props:{variant:"heading-24"}},{type:"Field",children:[{type:"TextInput",props:{iconPosition:"left"}}]},{type:"Field",children:[{type:"TextInput",props:{type:"password"}}]},{type:"Button",props:{appearance:"primary",label:"Sign in"}}]}]},p={type:"Container",children:[{type:"Button",props:{appearance:"primary",label:"Save"}},{type:"Button",props:{appearance:"primary",label:"Publish"}}]};exports.InvalidPrimaryActionTree=p;exports.ValidAuthFormTree=e;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const p={type:"Container",props:{gap:"--uds-spacing-24"},children:[{type:"Card",props:{gap:"--uds-spacing-16"},children:[{type:"Text",props:{variant:"heading-24"}},{type:"Field",children:[{type:"TextInput",props:{iconPosition:"left"}}]},{type:"Field",children:[{type:"TextInput",props:{type:"password"}}]},{type:"Button",props:{appearance:"primary",label:"Sign in"}}]}]},e={type:"Container",children:[{type:"Button",props:{appearance:"primary",label:"Save"}},{type:"Button",props:{appearance:"primary",label:"Publish"}}]};export{e as InvalidPrimaryActionTree,p as ValidAuthFormTree};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../manifest/governance.manifest.cjs"),r=require("../validation/validateAIOutput.cjs"),t={type:"Container",children:[{type:"Button",props:{appearance:"primary",label:"Save"}},{type:"Button",props:{appearance:"primary",label:"Publish"}},{type:"div",props:{style:{color:"#ff0000"}}}]},a=r.validateAIOutput({tree:t},{...e.UDSGovernance,enforcement:{...e.UDSGovernance.enforcement,strictMode:!0}});exports.StrictModeFailureTree=t;exports.strictModeFailureExample=a;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{UDSGovernance as e}from"../manifest/governance.manifest.js";import{validateAIOutput as r}from"../validation/validateAIOutput.js";const t={type:"Container",children:[{type:"Button",props:{appearance:"primary",label:"Save"}},{type:"Button",props:{appearance:"primary",label:"Publish"}},{type:"div",props:{style:{color:"#ff0000"}}}]},a=r({tree:t},{...e,enforcement:{...e.enforcement,strictMode:!0}});export{t as StrictModeFailureTree,a as strictModeFailureExample};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./manifest/components.manifest.cjs"),s=require("./manifest/governance.manifest.cjs"),n=require("./manifest/layout.manifest.cjs"),o=require("./manifest/patterns.manifest.cjs"),u=require("./manifest/prop-aliases.manifest.cjs"),i=require("./manifest/system.manifest.cjs"),a=require("./manifest/tokens.intent.manifest.cjs"),d=require("./policies/policy.engine.cjs"),_=require("./validation/validateTree.cjs"),m=require("./validation/validateAIOutput.cjs"),p=require("./validation/schemaValidation.cjs"),D=require("./validation/driftDetection.cjs"),c=require("./validation/deterministicFeedback.cjs"),S=require("./audit/auditLogger.cjs"),r=require("./telemetry/usageMetrics.cjs"),A=require("./examples/trees.example.cjs"),T=require("./examples/validation-run.example.cjs"),g=require("./examples/training.examples.cjs"),U=require("./sdk/runtime-sdk.cjs"),E=e.ComponentRegistry,M=e.ComponentRegistry.Button,I=e.ComponentRegistry.Table,R=e.ComponentRegistry.Field,y=e.ComponentRegistry.Modal,N=Object.values(o.PatternRegistry),L=Object.entries(a.TokenIntentMap).map(([t,l])=>({intent:t,tokens:Object.values(l),guidance:`Use ${t} intents to map semantic UI choices to valid UDS tokens.`})),O=[{id:"spacing-system",rule:`Allowed spacing tokens: ${n.LayoutRules.spacingSystem.allowedTokens.join(", ")}`,rationale:"Prevents ad-hoc spacing and preserves deterministic rhythm."},{id:"composition",rule:"Use allowed composition mapping per parent component.",rationale:"Avoids invalid nesting and improves generated UI consistency."}],v=n.LayoutRules.disallowedNesting.map(t=>`Do not nest ${t.child} inside ${t.parent}.`);exports.ComponentRegistry=e.ComponentRegistry;exports.UDSGovernance=s.UDSGovernance;exports.getVersionLineage=s.getVersionLineage;exports.LayoutRules=n.LayoutRules;exports.PatternRegistry=o.PatternRegistry;exports.PropAliasRules=u.PropAliasRules;exports.UDSAIContract=i.UDSAIContract;exports.UDSManifest=i.UDSManifest;exports.UDS_AI_CONTRACT=i.UDS_AI_CONTRACT;exports.UDS_AI_MANIFEST=i.UDS_AI_MANIFEST;exports.TokenIntentMap=a.TokenIntentMap;exports.runPolicyEngine=d.runPolicyEngine;exports.validateTree=_.validateTree;exports.validateAIOutput=m.validateAIOutput;exports.validateSchema=p.validateSchema;exports.detectDrift=D.detectDrift;exports.buildDeterministicFeedback=c.buildDeterministicFeedback;exports.sortAndDedupeViolations=c.sortAndDedupeViolations;exports.logAIGeneration=S.logAIGeneration;exports.getUsageMetrics=r.getUsageMetrics;exports.recordUsageMetric=r.recordUsageMetric;exports.resetUsageMetrics=r.resetUsageMetrics;exports.InvalidPrimaryActionTree=A.InvalidPrimaryActionTree;exports.ValidAuthFormTree=A.ValidAuthFormTree;exports.StrictModeFailureTree=T.StrictModeFailureTree;exports.strictModeFailureExample=T.strictModeFailureExample;exports.UDS_TRAINING_EXAMPLES=g.UDS_TRAINING_EXAMPLES;exports.createUDSRuntimeHelperSDK=U.createUDSRuntimeHelperSDK;exports.AI_COMPONENT_METADATA=E;exports.BUTTON_METADATA=M;exports.FIELD_METADATA=R;exports.MODAL_METADATA=y;exports.TABLE_METADATA=I;exports.UDS_FLOW_PATTERNS=N;exports.UDS_GLOBAL_ANTI_PATTERNS=v;exports.UDS_LAYOUT_RULES=O;exports.UDS_TOKEN_INTENTS=L;
|
package/dist/ai/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{ComponentRegistry as t}from"./manifest/components.manifest.js";import{UDSGovernance as E,getVersionLineage as u}from"./manifest/governance.manifest.js";import{LayoutRules as o}from"./manifest/layout.manifest.js";import{PatternRegistry as i}from"./manifest/patterns.manifest.js";import{PropAliasRules as M}from"./manifest/prop-aliases.manifest.js";import{UDSAIContract as N,UDSManifest as v,UDS_AI_CONTRACT as O,UDS_AI_MANIFEST as L}from"./manifest/system.manifest.js";import{TokenIntentMap as n}from"./manifest/tokens.intent.manifest.js";import{runPolicyEngine as y}from"./policies/policy.engine.js";import{validateTree as F}from"./validation/validateTree.js";import{validateAIOutput as b}from"./validation/validateAIOutput.js";import{validateSchema as C}from"./validation/schemaValidation.js";import{detectDrift as w}from"./validation/driftDetection.js";import{buildDeterministicFeedback as G,sortAndDedupeViolations as $}from"./validation/deterministicFeedback.js";import{logAIGeneration as K}from"./audit/auditLogger.js";import{getUsageMetrics as W,recordUsageMetric as X,resetUsageMetrics as Y}from"./telemetry/usageMetrics.js";import{InvalidPrimaryActionTree as z,ValidAuthFormTree as J}from"./examples/trees.example.js";import{StrictModeFailureTree as Z,strictModeFailureExample as ee}from"./examples/validation-run.example.js";import{UDS_TRAINING_EXAMPLES as oe}from"./examples/training.examples.js";import{createUDSRuntimeHelperSDK as ie}from"./sdk/runtime-sdk.js";const m=t,A=t.Button,l=t.Table,T=t.Field,d=t.Modal,D=Object.values(i),S=Object.entries(n).map(([e,r])=>({intent:e,tokens:Object.values(r),guidance:`Use ${e} intents to map semantic UI choices to valid UDS tokens.`})),U=[{id:"spacing-system",rule:`Allowed spacing tokens: ${o.spacingSystem.allowedTokens.join(", ")}`,rationale:"Prevents ad-hoc spacing and preserves deterministic rhythm."},{id:"composition",rule:"Use allowed composition mapping per parent component.",rationale:"Avoids invalid nesting and improves generated UI consistency."}],f=o.disallowedNesting.map(e=>`Do not nest ${e.child} inside ${e.parent}.`);export{m as AI_COMPONENT_METADATA,A as BUTTON_METADATA,t as ComponentRegistry,T as FIELD_METADATA,z as InvalidPrimaryActionTree,o as LayoutRules,d as MODAL_METADATA,i as PatternRegistry,M as PropAliasRules,Z as StrictModeFailureTree,l as TABLE_METADATA,n as TokenIntentMap,N as UDSAIContract,E as UDSGovernance,v as UDSManifest,O as UDS_AI_CONTRACT,L as UDS_AI_MANIFEST,D as UDS_FLOW_PATTERNS,f as UDS_GLOBAL_ANTI_PATTERNS,U as UDS_LAYOUT_RULES,S as UDS_TOKEN_INTENTS,oe as UDS_TRAINING_EXAMPLES,J as ValidAuthFormTree,G as buildDeterministicFeedback,ie as createUDSRuntimeHelperSDK,w as detectDrift,W as getUsageMetrics,u as getVersionLineage,K as logAIGeneration,X as recordUsageMetric,Y as resetUsageMetrics,y as runPolicyEngine,$ as sortAndDedupeViolations,ee as strictModeFailureExample,b as validateAIOutput,C as validateSchema,F as validateTree};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=e=>e==="form"?["--uds-spacing-8","--uds-spacing-12","--uds-color-neutral-700","--uds-color-blue-600"]:e==="feedback"?["--uds-spacing-8","--uds-color-green-600","--uds-color-red-600"]:e==="layout"?["--uds-spacing-16","--uds-spacing-24","--uds-radius-8"]:e==="navigation"?["--uds-spacing-8","--uds-color-neutral-600","--uds-color-blue-600"]:["--uds-spacing-8","--uds-color-neutral-700","--uds-radius-8"],r=e=>({name:e.name,category:e.category,intent:e.intent,priority:e.priority,variants:e.variants??[],sizes:e.sizes,slots:e.slots,usage:{preferredContexts:e.preferredContexts,maxPerSection:e.maxPerSection},constraints:e.constraints,accessibility:{role:e.accessibilityRole??"group",keyboardSupport:e.keyboardSupport??["Tab"]},tokenDependencies:e.tokenDependencies??t(e.category)}),o=[{name:"Accordion",category:"layout",intent:"Progressive disclosure for grouped content.",preferredContexts:["settings","details"],accessibilityRole:"region"},{name:"ActionMenu",category:"navigation",intent:"Contextual action list for row/item actions.",preferredContexts:["tables","cards"],accessibilityRole:"menu",keyboardSupport:["Tab","Enter","ArrowUp","ArrowDown","Escape"]},{name:"AppShell",category:"layout",intent:"Top-level application shell composition.",preferredContexts:["app-root"],maxPerSection:1,tokenDependencies:["--uds-spacing-16","--uds-color-neutral-50","--uds-elevation-overlay"],accessibilityRole:"application"},{name:"Avatar",category:"data-display",intent:"Represent people or entities with image/initials.",preferredContexts:["lists","tables","headers"],accessibilityRole:"img"},{name:"Badge",category:"data-display",intent:"Small count/status indicator.",preferredContexts:["notifications","tabs"],maxPerSection:6},{name:"Branding",category:"branding",intent:"Brand identity lockup and context marker.",preferredContexts:["navigation","headers"],maxPerSection:1},{name:"Breadcrumb",category:"navigation",intent:"Hierarchy-aware page context trail.",preferredContexts:["page-header"],maxPerSection:1,accessibilityRole:"navigation"},{name:"Button",category:"action",intent:"Primary and secondary user actions.",preferredContexts:["forms","toolbars","dialogs"],constraints:{onlyOnePrimaryPerSection:!0},tokenDependencies:["--uds-spacing-8","--uds-spacing-12","--uds-color-blue-600","--uds-color-red-600","--uds-radius-8"],accessibilityRole:"button",keyboardSupport:["Tab","Enter","Space"]},{name:"Calendar",category:"form",intent:"Calendar date grid interactions.",preferredContexts:["scheduling","date-selection"]},{name:"Card",category:"layout",intent:"Contained content region with optional actions.",preferredContexts:["dashboards","details"]},{name:"Checkbox",category:"form",intent:"Multi-select boolean control.",preferredContexts:["forms","filters"],accessibilityRole:"checkbox",keyboardSupport:["Tab","Space"]},{name:"Chip",category:"form",intent:"Compact selectable/taggable item.",preferredContexts:["filters","tags"],maxPerSection:12,accessibilityRole:"button"},{name:"Code",category:"data-display",intent:"Formatted code snippet display.",preferredContexts:["documentation","developer-tools"],tokenDependencies:["--uds-spacing-12","--uds-color-neutral-900","--uds-radius-8"]},{name:"Container",category:"layout",intent:"Consistent page/content width boundaries.",preferredContexts:["page-layout"],maxPerSection:1},{name:"Datepicker",category:"form",intent:"Date selection input control.",preferredContexts:["forms","filters"],accessibilityRole:"combobox",keyboardSupport:["Tab","Enter","ArrowDown"]},{name:"Dialog",category:"feedback",intent:"Structured dialog surface with actions.",preferredContexts:["confirmations","warnings"],maxPerSection:1,accessibilityRole:"dialog",keyboardSupport:["Tab","Escape","Enter"]},{name:"Divider",category:"layout",intent:"Semantic separation between sections.",preferredContexts:["page-sections","cards"]},{name:"DotStatus",category:"data-display",intent:"Compact status indicator dot.",preferredContexts:["tables","status-lists"]},{name:"Dropdown",category:"form",intent:"Select-style single choice control.",preferredContexts:["forms","filters"],accessibilityRole:"combobox",keyboardSupport:["Tab","Enter","ArrowDown"]},{name:"EmptyState",category:"feedback",intent:"Empty data guidance and next action.",preferredContexts:["tables","search-results"],maxPerSection:1},{name:"EventCard",category:"data-display",intent:"Event summary card with key metadata.",preferredContexts:["scheduling","timelines"]},{name:"Field",category:"form",intent:"Label/helper/error wrapper for form controls.",preferredContexts:["forms"],slots:{control:{required:!0,description:"Input-like child control."},helper:{required:!1},error:{required:!1}},tokenDependencies:["--uds-spacing-8","--uds-spacing-12","--uds-color-neutral-700","--uds-color-red-600"],accessibilityRole:"group"},{name:"FileUpload",category:"form",intent:"Upload surface for file selection/drop.",preferredContexts:["forms","document-intake"]},{name:"Flex",category:"layout",intent:"Primary layout utility for component composition.",preferredContexts:["all-layouts"],maxPerSection:999,tokenDependencies:["--uds-spacing-8","--uds-spacing-16","--uds-spacing-24"]},{name:"Icon",category:"data-display",intent:"Consistent icon rendering wrapper.",preferredContexts:["buttons","status","navigation"],tokenDependencies:["--uds-color-neutral-700","--uds-color-blue-600"],accessibilityRole:"img"},{name:"ImageAspect",category:"layout",intent:"Image with deterministic aspect ratio.",preferredContexts:["cards","media"]},{name:"Input",category:"form",intent:"Alias for TextInput control.",preferredContexts:["forms"],accessibilityRole:"textbox",keyboardSupport:["Tab"]},{name:"Key",category:"data-display",intent:"Keyboard shortcut visual token.",preferredContexts:["help","tooltips"]},{name:"Menu",category:"navigation",intent:"Main app navigation rail/menu.",preferredContexts:["app-shell"],maxPerSection:1,accessibilityRole:"navigation",keyboardSupport:["Tab","Enter","ArrowUp","ArrowDown"]},{name:"MicroCalendar",category:"data-display",intent:"Compact calendar visualization.",preferredContexts:["dashboards","side-panels"]},{name:"Modal",category:"feedback",intent:"Blocking focus-trap overlay with actions.",preferredContexts:["confirmations","forms"],maxPerSection:1,constraints:{disallowedChildren:["Modal"]},tokenDependencies:["--uds-elevation-overlay","--uds-spacing-16","--uds-radius-12"],accessibilityRole:"dialog",keyboardSupport:["Tab","Escape","Enter"]},{name:"Pagination",category:"navigation",intent:"Navigate paged dataset slices.",preferredContexts:["tables","list-pages"],maxPerSection:1,accessibilityRole:"navigation"},{name:"ProgressCircle",category:"data-display",intent:"Circular completion progress indicator.",preferredContexts:["status","dashboard"]},{name:"ProgressIndicator",category:"data-display",intent:"Linear progress indicator.",preferredContexts:["loaders","step-flows"]},{name:"Radio",category:"form",intent:"Single-select option control.",preferredContexts:["forms","filters"],accessibilityRole:"radio",keyboardSupport:["Tab","ArrowUp","ArrowDown","Space"]},{name:"Slider",category:"form",intent:"Bounded numeric range control.",preferredContexts:["filters","settings"],accessibilityRole:"slider",keyboardSupport:["Tab","ArrowLeft","ArrowRight"]},{name:"Status",category:"data-display",intent:"Text + status color indicator.",preferredContexts:["tables","cards"]},{name:"Steps",category:"navigation",intent:"Multi-step flow progress tracker.",preferredContexts:["wizards","onboarding"],maxPerSection:1},{name:"Table",category:"data-display",intent:"Structured multi-column data presentation.",preferredContexts:["admin","reporting"],maxPerSection:1,slots:{row:{required:!0},cell:{required:!0},header:{required:!0}},tokenDependencies:["--uds-spacing-8","--uds-spacing-12","--uds-color-neutral-100","--uds-color-neutral-700"],accessibilityRole:"table",keyboardSupport:["Tab","ArrowUp","ArrowDown"]},{name:"Tabs",category:"navigation",intent:"Switch between peer content panels.",preferredContexts:["details","settings"],maxPerSection:1,accessibilityRole:"tablist",keyboardSupport:["Tab","ArrowLeft","ArrowRight","Enter"]},{name:"Tag",category:"data-display",intent:"Categorical metadata marker.",preferredContexts:["tables","cards"],maxPerSection:10},{name:"Text",category:"data-display",intent:"Semantic typography primitive.",preferredContexts:["all-content"],maxPerSection:999},{name:"TextInput",category:"form",intent:"Single-line text entry control.",preferredContexts:["forms","search"],accessibilityRole:"textbox",keyboardSupport:["Tab"]},{name:"Textarea",category:"form",intent:"Multi-line text entry control.",preferredContexts:["forms"],accessibilityRole:"textbox",keyboardSupport:["Tab"]},{name:"Toast",category:"feedback",intent:"Transient non-blocking notification.",preferredContexts:["system-feedback"],maxPerSection:3,constraints:{disallowedChildren:["Modal","Dialog"]},accessibilityRole:"status"},{name:"Toggle",category:"form",intent:"Binary on/off switch control.",preferredContexts:["settings","filters"],accessibilityRole:"switch",keyboardSupport:["Tab","Space"]},{name:"Tooltip",category:"feedback",intent:"Contextual hover/focus helper text.",preferredContexts:["dense-actions","icons"],maxPerSection:12,accessibilityRole:"tooltip"}],a=Object.fromEntries(o.map(e=>[e.name,r(e)]));exports.ComponentRegistry=a;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const t=e=>e==="form"?["--uds-spacing-8","--uds-spacing-12","--uds-color-neutral-700","--uds-color-blue-600"]:e==="feedback"?["--uds-spacing-8","--uds-color-green-600","--uds-color-red-600"]:e==="layout"?["--uds-spacing-16","--uds-spacing-24","--uds-radius-8"]:e==="navigation"?["--uds-spacing-8","--uds-color-neutral-600","--uds-color-blue-600"]:["--uds-spacing-8","--uds-color-neutral-700","--uds-radius-8"],r=e=>({name:e.name,category:e.category,intent:e.intent,priority:e.priority,variants:e.variants??[],sizes:e.sizes,slots:e.slots,usage:{preferredContexts:e.preferredContexts,maxPerSection:e.maxPerSection},constraints:e.constraints,accessibility:{role:e.accessibilityRole??"group",keyboardSupport:e.keyboardSupport??["Tab"]},tokenDependencies:e.tokenDependencies??t(e.category)}),a=[{name:"Accordion",category:"layout",intent:"Progressive disclosure for grouped content.",preferredContexts:["settings","details"],accessibilityRole:"region"},{name:"ActionMenu",category:"navigation",intent:"Contextual action list for row/item actions.",preferredContexts:["tables","cards"],accessibilityRole:"menu",keyboardSupport:["Tab","Enter","ArrowUp","ArrowDown","Escape"]},{name:"AppShell",category:"layout",intent:"Top-level application shell composition.",preferredContexts:["app-root"],maxPerSection:1,tokenDependencies:["--uds-spacing-16","--uds-color-neutral-50","--uds-elevation-overlay"],accessibilityRole:"application"},{name:"Avatar",category:"data-display",intent:"Represent people or entities with image/initials.",preferredContexts:["lists","tables","headers"],accessibilityRole:"img"},{name:"Badge",category:"data-display",intent:"Small count/status indicator.",preferredContexts:["notifications","tabs"],maxPerSection:6},{name:"Branding",category:"branding",intent:"Brand identity lockup and context marker.",preferredContexts:["navigation","headers"],maxPerSection:1},{name:"Breadcrumb",category:"navigation",intent:"Hierarchy-aware page context trail.",preferredContexts:["page-header"],maxPerSection:1,accessibilityRole:"navigation"},{name:"Button",category:"action",intent:"Primary and secondary user actions.",preferredContexts:["forms","toolbars","dialogs"],constraints:{onlyOnePrimaryPerSection:!0},tokenDependencies:["--uds-spacing-8","--uds-spacing-12","--uds-color-blue-600","--uds-color-red-600","--uds-radius-8"],accessibilityRole:"button",keyboardSupport:["Tab","Enter","Space"]},{name:"Calendar",category:"form",intent:"Calendar date grid interactions.",preferredContexts:["scheduling","date-selection"]},{name:"Card",category:"layout",intent:"Contained content region with optional actions.",preferredContexts:["dashboards","details"]},{name:"Checkbox",category:"form",intent:"Multi-select boolean control.",preferredContexts:["forms","filters"],accessibilityRole:"checkbox",keyboardSupport:["Tab","Space"]},{name:"Chip",category:"form",intent:"Compact selectable/taggable item.",preferredContexts:["filters","tags"],maxPerSection:12,accessibilityRole:"button"},{name:"Code",category:"data-display",intent:"Formatted code snippet display.",preferredContexts:["documentation","developer-tools"],tokenDependencies:["--uds-spacing-12","--uds-color-neutral-900","--uds-radius-8"]},{name:"Container",category:"layout",intent:"Consistent page/content width boundaries.",preferredContexts:["page-layout"],maxPerSection:1},{name:"Datepicker",category:"form",intent:"Date selection input control.",preferredContexts:["forms","filters"],accessibilityRole:"combobox",keyboardSupport:["Tab","Enter","ArrowDown"]},{name:"Dialog",category:"feedback",intent:"Structured dialog surface with actions.",preferredContexts:["confirmations","warnings"],maxPerSection:1,accessibilityRole:"dialog",keyboardSupport:["Tab","Escape","Enter"]},{name:"Divider",category:"layout",intent:"Semantic separation between sections.",preferredContexts:["page-sections","cards"]},{name:"DotStatus",category:"data-display",intent:"Compact status indicator dot.",preferredContexts:["tables","status-lists"]},{name:"Dropdown",category:"form",intent:"Select-style single choice control.",preferredContexts:["forms","filters"],accessibilityRole:"combobox",keyboardSupport:["Tab","Enter","ArrowDown"]},{name:"EmptyState",category:"feedback",intent:"Empty data guidance and next action.",preferredContexts:["tables","search-results"],maxPerSection:1},{name:"EventCard",category:"data-display",intent:"Event summary card with key metadata.",preferredContexts:["scheduling","timelines"]},{name:"Field",category:"form",intent:"Label/helper/error wrapper for form controls.",preferredContexts:["forms"],slots:{control:{required:!0,description:"Input-like child control."},helper:{required:!1},error:{required:!1}},tokenDependencies:["--uds-spacing-8","--uds-spacing-12","--uds-color-neutral-700","--uds-color-red-600"],accessibilityRole:"group"},{name:"FileUpload",category:"form",intent:"Upload surface for file selection/drop.",preferredContexts:["forms","document-intake"]},{name:"Flex",category:"layout",intent:"Primary layout utility for component composition.",preferredContexts:["all-layouts"],maxPerSection:999,tokenDependencies:["--uds-spacing-8","--uds-spacing-16","--uds-spacing-24"]},{name:"Icon",category:"data-display",intent:"Consistent icon rendering wrapper.",preferredContexts:["buttons","status","navigation"],tokenDependencies:["--uds-color-neutral-700","--uds-color-blue-600"],accessibilityRole:"img"},{name:"ImageAspect",category:"layout",intent:"Image with deterministic aspect ratio.",preferredContexts:["cards","media"]},{name:"Input",category:"form",intent:"Alias for TextInput control.",preferredContexts:["forms"],accessibilityRole:"textbox",keyboardSupport:["Tab"]},{name:"Key",category:"data-display",intent:"Keyboard shortcut visual token.",preferredContexts:["help","tooltips"]},{name:"Menu",category:"navigation",intent:"Main app navigation rail/menu.",preferredContexts:["app-shell"],maxPerSection:1,accessibilityRole:"navigation",keyboardSupport:["Tab","Enter","ArrowUp","ArrowDown"]},{name:"MicroCalendar",category:"data-display",intent:"Compact calendar visualization.",preferredContexts:["dashboards","side-panels"]},{name:"Modal",category:"feedback",intent:"Blocking focus-trap overlay with actions.",preferredContexts:["confirmations","forms"],maxPerSection:1,constraints:{disallowedChildren:["Modal"]},tokenDependencies:["--uds-elevation-overlay","--uds-spacing-16","--uds-radius-12"],accessibilityRole:"dialog",keyboardSupport:["Tab","Escape","Enter"]},{name:"Pagination",category:"navigation",intent:"Navigate paged dataset slices.",preferredContexts:["tables","list-pages"],maxPerSection:1,accessibilityRole:"navigation"},{name:"ProgressCircle",category:"data-display",intent:"Circular completion progress indicator.",preferredContexts:["status","dashboard"]},{name:"ProgressIndicator",category:"data-display",intent:"Linear progress indicator.",preferredContexts:["loaders","step-flows"]},{name:"Radio",category:"form",intent:"Single-select option control.",preferredContexts:["forms","filters"],accessibilityRole:"radio",keyboardSupport:["Tab","ArrowUp","ArrowDown","Space"]},{name:"Slider",category:"form",intent:"Bounded numeric range control.",preferredContexts:["filters","settings"],accessibilityRole:"slider",keyboardSupport:["Tab","ArrowLeft","ArrowRight"]},{name:"Status",category:"data-display",intent:"Text + status color indicator.",preferredContexts:["tables","cards"]},{name:"Steps",category:"navigation",intent:"Multi-step flow progress tracker.",preferredContexts:["wizards","onboarding"],maxPerSection:1},{name:"Table",category:"data-display",intent:"Structured multi-column data presentation.",preferredContexts:["admin","reporting"],maxPerSection:1,slots:{row:{required:!0},cell:{required:!0},header:{required:!0}},tokenDependencies:["--uds-spacing-8","--uds-spacing-12","--uds-color-neutral-100","--uds-color-neutral-700"],accessibilityRole:"table",keyboardSupport:["Tab","ArrowUp","ArrowDown"]},{name:"Tabs",category:"navigation",intent:"Switch between peer content panels.",preferredContexts:["details","settings"],maxPerSection:1,accessibilityRole:"tablist",keyboardSupport:["Tab","ArrowLeft","ArrowRight","Enter"]},{name:"Tag",category:"data-display",intent:"Categorical metadata marker.",preferredContexts:["tables","cards"],maxPerSection:10},{name:"Text",category:"data-display",intent:"Semantic typography primitive.",preferredContexts:["all-content"],maxPerSection:999},{name:"TextInput",category:"form",intent:"Single-line text entry control.",preferredContexts:["forms","search"],accessibilityRole:"textbox",keyboardSupport:["Tab"]},{name:"Textarea",category:"form",intent:"Multi-line text entry control.",preferredContexts:["forms"],accessibilityRole:"textbox",keyboardSupport:["Tab"]},{name:"Toast",category:"feedback",intent:"Transient non-blocking notification.",preferredContexts:["system-feedback"],maxPerSection:3,constraints:{disallowedChildren:["Modal","Dialog"]},accessibilityRole:"status"},{name:"Toggle",category:"form",intent:"Binary on/off switch control.",preferredContexts:["settings","filters"],accessibilityRole:"switch",keyboardSupport:["Tab","Space"]},{name:"Tooltip",category:"feedback",intent:"Contextual hover/focus helper text.",preferredContexts:["dense-actions","icons"],maxPerSection:12,accessibilityRole:"tooltip"}],o=Object.fromEntries(a.map(e=>[e.name,r(e)]));export{o as ComponentRegistry};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e={AppShell:["Menu","Container","Flex","Card","Text","Button"],Container:["Flex","Card","Table","Text","Button","Field","Divider","Tag"],Field:["TextInput","Input","Dropdown","Datepicker","Textarea","Checkbox","Radio","Toggle","Slider","FileUpload"],Modal:["Text","Button","Divider","Field","TextInput","Dropdown","Datepicker","Textarea","Tag"],Card:["Text","Flex","Button","Tag","Status","Table","Divider","Avatar","ActionMenu","Field"],Table:["Tag","Status","Avatar","Button","ActionMenu","ProgressIndicator","DotStatus"],Tabs:["Text","Tag","Button","Card","Table","Field"],Menu:["ActionMenu","Dropdown","Toggle","Text","Icon"]},a={ActionMenu:["Card","Menu","Table"],Avatar:["Card","Table"],Button:["AppShell","Card","Container","Flex","Modal","Table","Tabs"],Card:["AppShell","Container","Tabs"],Checkbox:["Field"],Container:["AppShell","root"],Datepicker:["Field","Modal"],Divider:["Card","Container","Modal"],DotStatus:["Table"],Dropdown:["Field","Menu","Modal"],Field:["Card","Container","Modal","Tabs"],FileUpload:["Field"],Flex:["AppShell","Card","Container"],Icon:["Menu"],Input:["Field"],Menu:["AppShell","root"],Modal:["AppShell","Container","root"],ProgressIndicator:["Table"],Radio:["Field"],Slider:["Field"],Status:["Card","Table"],Table:["Card","Container","Tabs"],Tag:["Card","Container","Modal","Table","Tabs"],Text:["AppShell","Card","Container","Flex","Menu","Modal","Tabs"],TextInput:["Field","Modal"],Textarea:["Field","Modal"],Toggle:["Field","Menu"]},t=[{parent:"Modal",child:"Modal",reason:"Nested modals create inaccessible focus traps."},{parent:"Dialog",child:"Dialog",reason:"Nested dialogs reduce escape behavior predictability."},{parent:"Toast",child:"Modal",reason:"Toast surfaces must remain non-blocking."},{parent:"Toast",child:"Dialog",reason:"Toast surfaces must remain non-blocking."},{parent:"Table",child:"Table",reason:"Nested tables reduce readability and responsiveness."},{parent:"Button",child:"Button",reason:"Interactive controls cannot be nested."}],o={allowedChildrenByParent:e,allowedParentsByChild:a,disallowedPairs:t};exports.CompositionRules=o;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e={AppShell:["Menu","Container","Flex","Card","Text","Button"],Container:["Flex","Card","Table","Text","Button","Field","Divider","Tag"],Field:["TextInput","Input","Dropdown","Datepicker","Textarea","Checkbox","Radio","Toggle","Slider","FileUpload"],Modal:["Text","Button","Divider","Field","TextInput","Dropdown","Datepicker","Textarea","Tag"],Card:["Text","Flex","Button","Tag","Status","Table","Divider","Avatar","ActionMenu","Field"],Table:["Tag","Status","Avatar","Button","ActionMenu","ProgressIndicator","DotStatus"],Tabs:["Text","Tag","Button","Card","Table","Field"],Menu:["ActionMenu","Dropdown","Toggle","Text","Icon"]},a={ActionMenu:["Card","Menu","Table"],Avatar:["Card","Table"],Button:["AppShell","Card","Container","Flex","Modal","Table","Tabs"],Card:["AppShell","Container","Tabs"],Checkbox:["Field"],Container:["AppShell","root"],Datepicker:["Field","Modal"],Divider:["Card","Container","Modal"],DotStatus:["Table"],Dropdown:["Field","Menu","Modal"],Field:["Card","Container","Modal","Tabs"],FileUpload:["Field"],Flex:["AppShell","Card","Container"],Icon:["Menu"],Input:["Field"],Menu:["AppShell","root"],Modal:["AppShell","Container","root"],ProgressIndicator:["Table"],Radio:["Field"],Slider:["Field"],Status:["Card","Table"],Table:["Card","Container","Tabs"],Tag:["Card","Container","Modal","Table","Tabs"],Text:["AppShell","Card","Container","Flex","Menu","Modal","Tabs"],TextInput:["Field","Modal"],Textarea:["Field","Modal"],Toggle:["Field","Menu"]},t=[{parent:"Modal",child:"Modal",reason:"Nested modals create inaccessible focus traps."},{parent:"Dialog",child:"Dialog",reason:"Nested dialogs reduce escape behavior predictability."},{parent:"Toast",child:"Modal",reason:"Toast surfaces must remain non-blocking."},{parent:"Toast",child:"Dialog",reason:"Toast surfaces must remain non-blocking."},{parent:"Table",child:"Table",reason:"Nested tables reduce readability and responsiveness."},{parent:"Button",child:"Button",reason:"Interactive controls cannot be nested."}],o={allowedChildrenByParent:e,allowedParentsByChild:a,disallowedPairs:t};export{o as CompositionRules};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../../tokens/runtime/index.cjs"),I=require("../../version.cjs"),n="1.0.0",o="1.0.0",s="1.0.0",i="1.0.0",t="1.0.0",A=i,_=t,e={systemVersion:I.UDS_RUNTIME_VERSION,tokenVersion:r.tokenVersion,manifestVersion:n,governanceVersion:o,policyVersion:s,enforcement:{strictMode:!0,allowAdHocValues:!1,allowInlineStyles:!1,allowUnknownComponents:!1},limits:{maxPrimaryActionsPerSection:1,maxActionsPerToolbar:3,maxNestingDepth:8},compliance:{accessibilityStandard:"WCAG-2.2-AA",spacingUnit:4}};function V(){return{udsVersion:e.systemVersion,tokenVersion:e.tokenVersion,manifestVersion:e.manifestVersion,governanceVersion:e.governanceVersion,policyVersion:e.policyVersion}}exports.AI_API_SCHEMA_VERSION=_;exports.AI_COMPONENT_API_SCHEMA_VERSION=t;exports.AI_CONTRACT_SCHEMA_VERSION=i;exports.AI_GOVERNANCE_VERSION=o;exports.AI_MANIFEST_VERSION=n;exports.AI_POLICY_VERSION=s;exports.AI_SCHEMA_VERSION=A;exports.UDSGovernance=e;exports.getVersionLineage=V;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{tokenVersion as e}from"../../tokens/runtime/index.js";import{UDS_RUNTIME_VERSION as o}from"../../version.js";const s="1.0.0",i="1.0.0",t="1.0.0",r="1.0.0",c="1.0.0",A=r,I=c,n={systemVersion:o,tokenVersion:e,manifestVersion:s,governanceVersion:i,policyVersion:t,enforcement:{strictMode:!0,allowAdHocValues:!1,allowInlineStyles:!1,allowUnknownComponents:!1},limits:{maxPrimaryActionsPerSection:1,maxActionsPerToolbar:3,maxNestingDepth:8},compliance:{accessibilityStandard:"WCAG-2.2-AA",spacingUnit:4}};function _(){return{udsVersion:n.systemVersion,tokenVersion:n.tokenVersion,manifestVersion:n.manifestVersion,governanceVersion:n.governanceVersion,policyVersion:n.policyVersion}}export{I as AI_API_SCHEMA_VERSION,c as AI_COMPONENT_API_SCHEMA_VERSION,r as AI_CONTRACT_SCHEMA_VERSION,i as AI_GOVERNANCE_VERSION,s as AI_MANIFEST_VERSION,t as AI_POLICY_VERSION,A as AI_SCHEMA_VERSION,n as UDSGovernance,_ as getVersionLineage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("./system.manifest.cjs"),e=require("./governance.manifest.cjs"),_=require("./components.manifest.cjs"),s=require("./patterns.manifest.cjs"),i=require("./layout.manifest.cjs"),o=require("./composition.manifest.cjs"),t=require("./prop-aliases.manifest.cjs"),I=require("./tokens.intent.manifest.cjs");exports.UDSManifest=n.UDSManifest;exports.UDS_AI_MANIFEST=n.UDS_AI_MANIFEST;exports.AI_API_SCHEMA_VERSION=e.AI_API_SCHEMA_VERSION;exports.AI_COMPONENT_API_SCHEMA_VERSION=e.AI_COMPONENT_API_SCHEMA_VERSION;exports.AI_CONTRACT_SCHEMA_VERSION=e.AI_CONTRACT_SCHEMA_VERSION;exports.AI_GOVERNANCE_VERSION=e.AI_GOVERNANCE_VERSION;exports.AI_MANIFEST_VERSION=e.AI_MANIFEST_VERSION;exports.AI_POLICY_VERSION=e.AI_POLICY_VERSION;exports.AI_SCHEMA_VERSION=e.AI_SCHEMA_VERSION;exports.UDSGovernance=e.UDSGovernance;exports.getVersionLineage=e.getVersionLineage;exports.ComponentRegistry=_.ComponentRegistry;exports.PatternRegistry=s.PatternRegistry;exports.LayoutRules=i.LayoutRules;exports.CompositionRules=o.CompositionRules;exports.PropAliasRules=t.PropAliasRules;exports.getAliasEntries=t.getAliasEntries;exports.getCanonicalPropName=t.getCanonicalPropName;exports.TokenIntentMap=I.TokenIntentMap;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{UDSManifest as r,UDS_AI_MANIFEST as t}from"./system.manifest.js";import{AI_API_SCHEMA_VERSION as A,AI_COMPONENT_API_SCHEMA_VERSION as _,AI_CONTRACT_SCHEMA_VERSION as E,AI_GOVERNANCE_VERSION as S,AI_MANIFEST_VERSION as n,AI_POLICY_VERSION as N,AI_SCHEMA_VERSION as R,UDSGovernance as p,getVersionLineage as C}from"./governance.manifest.js";import{ComponentRegistry as a}from"./components.manifest.js";import{PatternRegistry as m}from"./patterns.manifest.js";import{LayoutRules as f}from"./layout.manifest.js";import{CompositionRules as V}from"./composition.manifest.js";import{PropAliasRules as P,getAliasEntries as g,getCanonicalPropName as l}from"./prop-aliases.manifest.js";import{TokenIntentMap as u}from"./tokens.intent.manifest.js";export{A as AI_API_SCHEMA_VERSION,_ as AI_COMPONENT_API_SCHEMA_VERSION,E as AI_CONTRACT_SCHEMA_VERSION,S as AI_GOVERNANCE_VERSION,n as AI_MANIFEST_VERSION,N as AI_POLICY_VERSION,R as AI_SCHEMA_VERSION,a as ComponentRegistry,V as CompositionRules,f as LayoutRules,m as PatternRegistry,P as PropAliasRules,u as TokenIntentMap,p as UDSGovernance,r as UDSManifest,t as UDS_AI_MANIFEST,g as getAliasEntries,l as getCanonicalPropName,C as getVersionLineage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("./composition.manifest.cjs"),a={spacingSystem:{unit:4,allowedTokens:["--uds-spacing-0","--uds-spacing-2","--uds-spacing-4","--uds-spacing-6","--uds-spacing-8","--uds-spacing-10","--uds-spacing-12","--uds-spacing-14","--uds-spacing-16","--uds-spacing-18","--uds-spacing-24","--uds-spacing-32","--uds-spacing-36","--uds-spacing-40","--uds-spacing-48","--uds-spacing-64","--uds-spacing-80"],defaultToken:"--uds-spacing-16"},verticalRhythm:{sectionGapToken:"--uds-spacing-24",contentGapToken:"--uds-spacing-16",compactGapToken:"--uds-spacing-8"},allowedComposition:s.CompositionRules.allowedChildrenByParent,allowedParents:s.CompositionRules.allowedParentsByChild,disallowedNesting:s.CompositionRules.disallowedPairs.map(({parent:i,child:n})=>({parent:i,child:n})),maxWidth:{content:"1280px",form:"640px",dialog:"720px"},actionPlacement:{primaryActionPosition:"end",secondaryActionPosition:"start",maxPrimaryActionsPerSection:1}};exports.LayoutRules=a;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{CompositionRules as s}from"./composition.manifest.js";const o={spacingSystem:{unit:4,allowedTokens:["--uds-spacing-0","--uds-spacing-2","--uds-spacing-4","--uds-spacing-6","--uds-spacing-8","--uds-spacing-10","--uds-spacing-12","--uds-spacing-14","--uds-spacing-16","--uds-spacing-18","--uds-spacing-24","--uds-spacing-32","--uds-spacing-36","--uds-spacing-40","--uds-spacing-48","--uds-spacing-64","--uds-spacing-80"],defaultToken:"--uds-spacing-16"},verticalRhythm:{sectionGapToken:"--uds-spacing-24",contentGapToken:"--uds-spacing-16",compactGapToken:"--uds-spacing-8"},allowedComposition:s.allowedChildrenByParent,allowedParents:s.allowedParentsByChild,disallowedNesting:s.disallowedPairs.map(({parent:n,child:a})=>({parent:n,child:a})),maxWidth:{content:"1280px",form:"640px",dialog:"720px"},actionPlacement:{primaryActionPosition:"end",secondaryActionPosition:"start",maxPrimaryActionsPerSection:1}};export{o as LayoutRules};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e={AuthForm:{name:"AuthForm",layout:"vertical",requiredComponents:["Card","Field","TextInput","Button","Text"],structure:[{type:"Card",role:"container"},{type:"Text",role:"heading",props:{variant:"heading-24"}},{type:"Field",role:"email-field"},{type:"TextInput",role:"email-input",props:{type:"email"}},{type:"Field",role:"password-field"},{type:"TextInput",role:"password-input",props:{type:"password"}},{type:"Button",role:"primary-submit",props:{appearance:"primary"}}],spacing:"--uds-spacing-16",widthConstraint:"var(--uds-spacing-480, 480px)",rules:{maxPrimaryActionsPerSection:1,requiredFieldWrapper:!0}},ModalConfirmation:{name:"ModalConfirmation",layout:"vertical",requiredComponents:["Modal","Text","Button"],structure:[{type:"Modal",role:"overlay"},{type:"Text",role:"title",props:{variant:"heading-20"}},{type:"Text",role:"body",props:{variant:"body-16"}},{type:"Button",role:"secondary-cancel",props:{appearance:"ghost"}},{type:"Button",role:"primary-confirm",props:{appearance:"primary"}}],spacing:"--uds-spacing-16",widthConstraint:"var(--uds-spacing-640, 640px)",rules:{maxPrimaryActionsPerSection:1,disallowNestedModal:!0}},DataTablePage:{name:"DataTablePage",layout:"vertical",requiredComponents:["Container","Text","Table","Pagination","Button"],structure:[{type:"Container",role:"page-shell"},{type:"Flex",role:"header-row"},{type:"Text",role:"title",props:{variant:"heading-24"}},{type:"Button",role:"primary-page-action",props:{appearance:"primary"}},{type:"Table",role:"data-table"},{type:"Pagination",role:"table-pagination"}],spacing:"--uds-spacing-24",widthConstraint:"100%",rules:{maxPrimaryActionsPerSection:1,tableRequiresPaginationForLargeData:!0}},FilterPanel:{name:"FilterPanel",layout:"vertical",requiredComponents:["Card","Field","Dropdown","Datepicker","Button"],structure:[{type:"Card",role:"panel"},{type:"Field",role:"status-filter"},{type:"Dropdown",role:"status-select"},{type:"Field",role:"date-filter"},{type:"Datepicker",role:"date-select"},{type:"Button",role:"apply-filters",props:{appearance:"primary"}}],spacing:"--uds-spacing-12",widthConstraint:"var(--uds-spacing-320, 320px)",rules:{maxPrimaryActionsPerSection:1,requiredFieldWrapper:!0}},DashboardSection:{name:"DashboardSection",layout:"grid",requiredComponents:["Container","Card","Text","Tag","ProgressIndicator"],structure:[{type:"Container",role:"dashboard-container"},{type:"Flex",role:"section-header"},{type:"Text",role:"section-title",props:{variant:"heading-20"}},{type:"Card",role:"metric-card"},{type:"Tag",role:"metric-status"},{type:"ProgressIndicator",role:"metric-progress"}],spacing:"--uds-spacing-16",widthConstraint:"100%",rules:{maxPrimaryActionsPerSection:1,cardGridColumns:[1,2,3]}}};exports.PatternRegistry=e;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e={AuthForm:{name:"AuthForm",layout:"vertical",requiredComponents:["Card","Field","TextInput","Button","Text"],structure:[{type:"Card",role:"container"},{type:"Text",role:"heading",props:{variant:"heading-24"}},{type:"Field",role:"email-field"},{type:"TextInput",role:"email-input",props:{type:"email"}},{type:"Field",role:"password-field"},{type:"TextInput",role:"password-input",props:{type:"password"}},{type:"Button",role:"primary-submit",props:{appearance:"primary"}}],spacing:"--uds-spacing-16",widthConstraint:"var(--uds-spacing-480, 480px)",rules:{maxPrimaryActionsPerSection:1,requiredFieldWrapper:!0}},ModalConfirmation:{name:"ModalConfirmation",layout:"vertical",requiredComponents:["Modal","Text","Button"],structure:[{type:"Modal",role:"overlay"},{type:"Text",role:"title",props:{variant:"heading-20"}},{type:"Text",role:"body",props:{variant:"body-16"}},{type:"Button",role:"secondary-cancel",props:{appearance:"ghost"}},{type:"Button",role:"primary-confirm",props:{appearance:"primary"}}],spacing:"--uds-spacing-16",widthConstraint:"var(--uds-spacing-640, 640px)",rules:{maxPrimaryActionsPerSection:1,disallowNestedModal:!0}},DataTablePage:{name:"DataTablePage",layout:"vertical",requiredComponents:["Container","Text","Table","Pagination","Button"],structure:[{type:"Container",role:"page-shell"},{type:"Flex",role:"header-row"},{type:"Text",role:"title",props:{variant:"heading-24"}},{type:"Button",role:"primary-page-action",props:{appearance:"primary"}},{type:"Table",role:"data-table"},{type:"Pagination",role:"table-pagination"}],spacing:"--uds-spacing-24",widthConstraint:"100%",rules:{maxPrimaryActionsPerSection:1,tableRequiresPaginationForLargeData:!0}},FilterPanel:{name:"FilterPanel",layout:"vertical",requiredComponents:["Card","Field","Dropdown","Datepicker","Button"],structure:[{type:"Card",role:"panel"},{type:"Field",role:"status-filter"},{type:"Dropdown",role:"status-select"},{type:"Field",role:"date-filter"},{type:"Datepicker",role:"date-select"},{type:"Button",role:"apply-filters",props:{appearance:"primary"}}],spacing:"--uds-spacing-12",widthConstraint:"var(--uds-spacing-320, 320px)",rules:{maxPrimaryActionsPerSection:1,requiredFieldWrapper:!0}},DashboardSection:{name:"DashboardSection",layout:"grid",requiredComponents:["Container","Card","Text","Tag","ProgressIndicator"],structure:[{type:"Container",role:"dashboard-container"},{type:"Flex",role:"section-header"},{type:"Text",role:"section-title",props:{variant:"heading-20"}},{type:"Card",role:"metric-card"},{type:"Tag",role:"metric-status"},{type:"ProgressIndicator",role:"metric-progress"}],spacing:"--uds-spacing-16",widthConstraint:"100%",rules:{maxPrimaryActionsPerSection:1,cardGridColumns:[1,2,3]}}};export{e as PatternRegistry};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n={global:{},byComponent:{Chip:{iconplacement:"iconPlacement"}}};function a(o,e){return(n.byComponent[o]??{})[e]??n.global[e]??e}function i(o){const e=n.byComponent[o]??{};return Object.entries(e).map(([t,l])=>({alias:t,canonical:l})).sort((t,l)=>t.alias.localeCompare(l.alias))}exports.PropAliasRules=n;exports.getAliasEntries=i;exports.getCanonicalPropName=a;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const l={global:{},byComponent:{Chip:{iconplacement:"iconPlacement"}}};function c(e,n){return(l.byComponent[e]??{})[n]??l.global[n]??n}function a(e){const n=l.byComponent[e]??{};return Object.entries(n).map(([o,t])=>({alias:o,canonical:t})).sort((o,t)=>o.alias.localeCompare(t.alias))}export{l as PropAliasRules,a as getAliasEntries,c as getCanonicalPropName};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("../../tokens/runtime/index.cjs"),s=require("../../version.cjs"),i=require("./components.manifest.cjs"),n=require("./governance.manifest.cjs"),r=require("./layout.manifest.cjs"),a=require("./patterns.manifest.cjs"),c=require("./tokens.intent.manifest.cjs"),e={version:s.UDS_RUNTIME_VERSION,tokenVersion:o.tokenVersion,components:i.ComponentRegistry,patterns:a.PatternRegistry,layout:r.LayoutRules,tokens:c.TokenIntentMap,governance:{maxPrimaryActionsPerSection:n.UDSGovernance.limits.maxPrimaryActionsPerSection,spacingUnit:n.UDSGovernance.compliance.spacingUnit,defaultRadius:"--uds-radius-8"}},t=e,u=t,S=e;exports.UDSAIContract=t;exports.UDSManifest=e;exports.UDS_AI_CONTRACT=u;exports.UDS_AI_MANIFEST=S;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{tokenVersion as n}from"../../tokens/runtime/index.js";import{UDS_RUNTIME_VERSION as r}from"../../version.js";import{ComponentRegistry as i}from"./components.manifest.js";import{UDSGovernance as o}from"./governance.manifest.js";import{LayoutRules as e}from"./layout.manifest.js";import{PatternRegistry as m}from"./patterns.manifest.js";import{TokenIntentMap as s}from"./tokens.intent.manifest.js";const t={version:r,tokenVersion:n,components:i,patterns:m,layout:e,tokens:s,governance:{maxPrimaryActionsPerSection:o.limits.maxPrimaryActionsPerSection,spacingUnit:o.compliance.spacingUnit,defaultRadius:"--uds-radius-8"}},a=t,I=a,R=t;export{a as UDSAIContract,t as UDSManifest,I as UDS_AI_CONTRACT,R as UDS_AI_MANIFEST};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r={surface:{page:"--uds-color-neutral-0",elevated:"--uds-color-neutral-50",subdued:"--uds-color-neutral-100",overlay:"--uds-elevation-overlay"},action:{primaryBg:"--uds-color-blue-600",primaryHoverBg:"--uds-color-blue-700",primaryText:"--uds-color-neutral-0",destructiveBg:"--uds-color-red-600",disabledBg:"--uds-color-neutral-200"},text:{heading:"--uds-color-neutral-900",body:"--uds-color-neutral-700",subtle:"--uds-color-neutral-600",inverted:"--uds-color-neutral-0",link:"--uds-color-blue-600"},border:{default:"--uds-color-neutral-200",strong:"--uds-color-neutral-400",focus:"--uds-color-blue-600",error:"--uds-color-red-600"},state:{success:"--uds-color-green-600",warning:"--uds-color-amber-600",error:"--uds-color-red-600",info:"--uds-color-blue-600"}};exports.TokenIntentMap=r;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const r={surface:{page:"--uds-color-neutral-0",elevated:"--uds-color-neutral-50",subdued:"--uds-color-neutral-100",overlay:"--uds-elevation-overlay"},action:{primaryBg:"--uds-color-blue-600",primaryHoverBg:"--uds-color-blue-700",primaryText:"--uds-color-neutral-0",destructiveBg:"--uds-color-red-600",disabledBg:"--uds-color-neutral-200"},text:{heading:"--uds-color-neutral-900",body:"--uds-color-neutral-700",subtle:"--uds-color-neutral-600",inverted:"--uds-color-neutral-0",link:"--uds-color-blue-600"},border:{default:"--uds-color-neutral-200",strong:"--uds-color-neutral-400",focus:"--uds-color-blue-600",error:"--uds-color-red-600"},state:{success:"--uds-color-green-600",warning:"--uds-color-amber-600",error:"--uds-color-red-600",info:"--uds-color-blue-600"}};export{r as TokenIntentMap};
|