@verndale/accessibility-standards 1.0.0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/OPERATING.md +3 -1
- package/README.md +4 -0
- package/bin/accessibility-standards.mjs +1 -1
- package/dist/manifest.json +159 -101
- package/dist/profiles/ai-orchestration/coverage-manifest.json +724 -68
- package/dist/profiles/ai-orchestration/implementation/accessibility.md +825 -10
- package/dist/profiles/ai-orchestration/pattern-contracts.json +1015 -343
- package/dist/profiles/ai-orchestration/patterns/accordion.md +14 -0
- package/dist/profiles/ai-orchestration/patterns/alert.md +14 -0
- package/dist/profiles/ai-orchestration/patterns/carousel.md +14 -0
- package/dist/profiles/ai-orchestration/patterns/checkbox.md +27 -0
- package/dist/profiles/ai-orchestration/patterns/combobox.md +14 -0
- package/dist/profiles/ai-orchestration/patterns/consequential-submission.md +15 -1
- package/dist/profiles/ai-orchestration/patterns/dialog.md +14 -0
- package/dist/profiles/ai-orchestration/patterns/disclosure.md +14 -0
- package/dist/profiles/ai-orchestration/patterns/dynamic-status.md +14 -0
- package/dist/profiles/ai-orchestration/patterns/field.md +15 -0
- package/dist/profiles/ai-orchestration/patterns/image.md +14 -0
- package/dist/profiles/ai-orchestration/patterns/listbox.md +14 -0
- package/dist/profiles/ai-orchestration/patterns/media-player.md +17 -0
- package/dist/profiles/ai-orchestration/patterns/menu-button.md +14 -0
- package/dist/profiles/ai-orchestration/patterns/menu.md +30 -0
- package/dist/profiles/ai-orchestration/patterns/pagination.md +14 -0
- package/dist/profiles/ai-orchestration/patterns/popover.md +15 -0
- package/dist/profiles/ai-orchestration/patterns/progress.md +15 -0
- package/dist/profiles/ai-orchestration/patterns/radio-group.md +27 -0
- package/dist/profiles/ai-orchestration/patterns/slider.md +31 -0
- package/dist/profiles/ai-orchestration/patterns/spinbutton.md +28 -0
- package/dist/profiles/ai-orchestration/patterns/tabs.md +14 -0
- package/dist/profiles/ai-orchestration/patterns/tooltip.md +14 -0
- package/dist/profiles/ai-orchestration/patterns/tree-view.md +31 -0
- package/dist/profiles/ai-orchestration/patterns/validation.md +15 -0
- package/dist/profiles/ai-orchestration/review/accessibility.md +21 -6
- package/dist/profiles/ai-orchestration/semantics/accessible-authentication.md +13 -0
- package/dist/profiles/ai-orchestration/semantics/accessible-name.md +8 -1
- package/dist/profiles/ai-orchestration/semantics/alert.md +7 -0
- package/dist/profiles/ai-orchestration/semantics/consequential-action.md +6 -1
- package/dist/profiles/ai-orchestration/semantics/consistent-help.md +13 -0
- package/dist/profiles/ai-orchestration/semantics/data-table.md +7 -1
- package/dist/profiles/ai-orchestration/semantics/dragging-alternative.md +13 -0
- package/dist/profiles/ai-orchestration/semantics/expanded-state.md +6 -0
- package/dist/profiles/ai-orchestration/semantics/focus.initial.md +4 -0
- package/dist/profiles/ai-orchestration/semantics/focus.return.md +4 -0
- package/dist/profiles/ai-orchestration/semantics/focus.visible.md +8 -1
- package/dist/profiles/ai-orchestration/semantics/form-error.md +8 -1
- package/dist/profiles/ai-orchestration/semantics/form-label.md +7 -0
- package/dist/profiles/ai-orchestration/semantics/form-required.md +7 -0
- package/dist/profiles/ai-orchestration/semantics/headings.md +7 -0
- package/dist/profiles/ai-orchestration/semantics/keyboard.escape.md +4 -0
- package/dist/profiles/ai-orchestration/semantics/keyboard.md +7 -0
- package/dist/profiles/ai-orchestration/semantics/landmarks.md +6 -0
- package/dist/profiles/ai-orchestration/semantics/live-status.md +7 -1
- package/dist/profiles/ai-orchestration/semantics/media-alternatives.md +11 -0
- package/dist/profiles/ai-orchestration/semantics/motion-control.md +8 -1
- package/dist/profiles/ai-orchestration/semantics/name-role-value.md +6 -1
- package/dist/profiles/ai-orchestration/semantics/native-dialog.md +7 -0
- package/dist/profiles/ai-orchestration/semantics/native-elements.md +5 -0
- package/dist/profiles/ai-orchestration/semantics/non-text-alternative.md +5 -0
- package/dist/profiles/ai-orchestration/semantics/redundant-entry.md +13 -0
- package/dist/profiles/ai-orchestration/semantics/roles-states-properties.md +6 -0
- package/dist/profiles/ai-orchestration/semantics/selected-state.md +6 -0
- package/dist/profiles/ai-orchestration/semantics/target-size.md +6 -1
- package/dist/profiles/ai-orchestration/semantics.json +843 -100
- package/dist/profiles/ai-orchestration/testing/accessibility.md +33 -3
- package/dist/profiles/ai-orchestration/ui-design-brain-bindings.json +836 -0
- package/dist/profiles/conductor/a11y-semantics.md +270 -10
- package/dist/profiles/conductor/accessibility-quality.md +557 -1
- package/dist/profiles/conductor/applicability-matrix.json +270 -230
- package/dist/profiles/conductor/coverage-manifest.json +724 -68
- package/dist/profiles/conductor/pattern-contracts.json +1015 -343
- package/dist/profiles/conductor/patterns/accordion.json +42 -24
- package/dist/profiles/conductor/patterns/alert.json +36 -18
- package/dist/profiles/conductor/patterns/carousel.json +43 -25
- package/dist/profiles/conductor/patterns/checkbox.json +67 -0
- package/dist/profiles/conductor/patterns/combobox.json +44 -26
- package/dist/profiles/conductor/patterns/consequential-submission.json +41 -22
- package/dist/profiles/conductor/patterns/dialog.json +44 -26
- package/dist/profiles/conductor/patterns/disclosure.json +40 -22
- package/dist/profiles/conductor/patterns/dynamic-status.json +38 -19
- package/dist/profiles/conductor/patterns/field.json +58 -22
- package/dist/profiles/conductor/patterns/image.json +48 -19
- package/dist/profiles/conductor/patterns/listbox.json +42 -24
- package/dist/profiles/conductor/patterns/media-player.json +76 -26
- package/dist/profiles/conductor/patterns/menu-button.json +41 -23
- package/dist/profiles/conductor/patterns/menu.json +78 -0
- package/dist/profiles/conductor/patterns/pagination.json +41 -22
- package/dist/profiles/conductor/patterns/popover.json +49 -23
- package/dist/profiles/conductor/patterns/progress.json +45 -20
- package/dist/profiles/conductor/patterns/radio-group.json +69 -0
- package/dist/profiles/conductor/patterns/slider.json +84 -0
- package/dist/profiles/conductor/patterns/spinbutton.json +74 -0
- package/dist/profiles/conductor/patterns/tabs.json +41 -23
- package/dist/profiles/conductor/patterns/tooltip.json +38 -20
- package/dist/profiles/conductor/patterns/tree-view.json +77 -0
- package/dist/profiles/conductor/patterns/validation.json +59 -23
- package/dist/profiles/conductor/semantics.json +843 -100
- package/dist/profiles/conductor/ui-design-brain-bindings.json +836 -0
- package/dist/projection-manifest.json +123 -82
- package/dist/requirements-to-implementation.md +8 -0
- package/lib/build-manifest.mjs +12 -6
- package/lib/build.mjs +21 -7
- package/lib/compile-applicability.mjs +131 -10
- package/lib/coverage.mjs +20 -0
- package/lib/digest.mjs +8 -0
- package/lib/index.mjs +1 -1
- package/lib/load.mjs +44 -1
- package/lib/provenance.mjs +51 -0
- package/lib/render.mjs +115 -31
- package/lib/sync.mjs +242 -28
- package/lib/validate.mjs +557 -24
- package/package.json +27 -10
- package/profiles/ai-orchestration/profile.json +1 -1
- package/profiles/ai-orchestration/templates/patterns/README.md +1 -1
- package/profiles/ai-orchestration/templates/review/README.md +1 -1
- package/profiles/ai-orchestration/templates/semantics/README.md +1 -1
- package/profiles/ai-orchestration/templates/testing/README.md +1 -1
- package/profiles/conductor/profile.json +1 -1
- package/profiles/conductor/templates/evidence/README.md +1 -1
- package/profiles/conductor/templates/patterns/README.md +1 -1
- package/profiles/conductor/templates/semantics/README.md +1 -1
- package/schemas/consumer-config.schema.json +1 -1
- package/schemas/contract.schema.json +1 -0
- package/schemas/manifest.schema.json +1 -1
- package/schemas/pattern.schema.json +98 -1
- package/schemas/profile.schema.json +1 -1
- package/schemas/projection-manifest.schema.json +84 -1
- package/schemas/semantic.schema.json +26 -1
- package/schemas/standards-reference.schema.json +105 -0
- package/schemas/ui-design-brain-bindings.schema.json +86 -0
- package/schemas/wcag-coverage.schema.json +93 -0
- package/src/applicability/facts.yml +27 -1
- package/src/applicability/matrix.yml +8 -9
- package/src/applicability/ui-design-brain-bindings.yml +196 -0
- package/src/contract.yml +1 -0
- package/src/coverage/wcag-2.2.yml +68 -0
- package/src/patterns/disclosure/accordion.yml +1 -1
- package/src/patterns/disclosure/disclosure.yml +1 -1
- package/src/patterns/feedback/alert.yml +1 -1
- package/src/patterns/feedback/dynamic-status.yml +1 -1
- package/src/patterns/feedback/progress.yml +1 -1
- package/src/patterns/forms/consequential-submission.yml +1 -1
- package/src/patterns/forms/field.yml +1 -1
- package/src/patterns/forms/spinbutton.yml +1 -0
- package/src/patterns/forms/validation.yml +1 -1
- package/src/patterns/media/carousel.yml +1 -1
- package/src/patterns/media/image.yml +1 -1
- package/src/patterns/media/media-player.yml +1 -1
- package/src/patterns/navigation/menu-button.yml +1 -1
- package/src/patterns/navigation/menu.yml +1 -0
- package/src/patterns/navigation/pagination.yml +1 -1
- package/src/patterns/navigation/tabs.yml +1 -1
- package/src/patterns/navigation/tree-view.yml +1 -0
- package/src/patterns/overlays/dialog.yml +1 -1
- package/src/patterns/overlays/popover.yml +1 -1
- package/src/patterns/overlays/tooltip.yml +1 -1
- package/src/patterns/selection/checkbox.yml +1 -0
- package/src/patterns/selection/combobox.yml +1 -1
- package/src/patterns/selection/listbox.yml +1 -1
- package/src/patterns/selection/radio-group.yml +1 -0
- package/src/patterns/selection/slider.yml +1 -0
- package/src/semantics/accessible-names.yml +1 -1
- package/src/semantics/forms.yml +1 -1
- package/src/semantics/headings-landmarks.yml +1 -1
- package/src/semantics/keyboard-focus.yml +1 -1
- package/src/semantics/live-regions.yml +1 -1
- package/src/semantics/media.yml +1 -1
- package/src/semantics/native-elements.yml +1 -1
- package/src/semantics/roles-states-properties.yml +1 -1
- package/src/semantics/tables.yml +1 -1
- package/src/semantics/wcag-2.2.yml +1 -0
- package/src/sources.yml +1 -1
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_generated": "GENERATED by @verndale/accessibility-standards; DO NOT EDIT",
|
|
3
|
+
"_provenance": {
|
|
4
|
+
"package": "@verndale/accessibility-standards@3.0.0",
|
|
5
|
+
"profile": "conductor",
|
|
6
|
+
"profile_digest": "beadcb5fe8151303b3e3241de4fee0ece3be9ff2f4dbdb3a6f93a363b0a2d491",
|
|
7
|
+
"profile_version": "3.0.0",
|
|
8
|
+
"schema_version": 3,
|
|
9
|
+
"source_digest": "708ac82783bfb5ebcce31e4dada15d8580863f5e37b32d1807adf61e415ed5af"
|
|
10
|
+
},
|
|
11
|
+
"pattern": {
|
|
12
|
+
"activation": {
|
|
13
|
+
"contains": {
|
|
14
|
+
"fact": "component.accessibility_pattern_ids",
|
|
15
|
+
"value": "pattern.tree-view"
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
"behavior": [
|
|
19
|
+
"Expose tree, treeitem, and group relationships, set aria-multiselectable for a multi-select tree, and provide level, position, and set-size metadata when the complete hierarchy is not represented in the DOM",
|
|
20
|
+
"On tree entry, focus the selected node or first selected node when one exists and otherwise focus the first node; keep one composite tab stop and keep focus visually distinct from selection",
|
|
21
|
+
"In a vertical tree, Right Arrow opens a closed parent without moving focus, moves from an open parent to its first child, and does nothing on an end node; Left Arrow closes an open parent, moves from a closed parent or end node to its parent, and does nothing on a root node that cannot close",
|
|
22
|
+
"In a vertical tree, Down Arrow moves to the next visible focusable node and Up Arrow moves to the previous visible focusable node without changing expansion; Home and End move to the first and last visible focusable nodes, Enter performs the node's declared default action, and type-ahead moves to the next matching node",
|
|
23
|
+
"For a horizontal tree, remap Down Arrow to the vertical Right Arrow behavior, Right Arrow to vertical Down Arrow, Up Arrow to vertical Left Arrow, and Left Arrow to vertical Up Arrow",
|
|
24
|
+
"Keep focus distinct from selection and synchronize expansion and the declared aria-selected or aria-checked state model without exposing both states for the same selection purpose",
|
|
25
|
+
"For a multi-select tree using the recommended modifier-free model, navigation does not clear selection, Space toggles selection of the focused node, and declared Shift combinations extend contiguous selection; for the alternative modifier-required model, unmodified navigation selects only the focused node while Control plus an arrow moves focus without changing selection and Control plus Space toggles the focused node"
|
|
26
|
+
],
|
|
27
|
+
"evidence_routes": [
|
|
28
|
+
"unit",
|
|
29
|
+
"axe",
|
|
30
|
+
"e2e",
|
|
31
|
+
"human"
|
|
32
|
+
],
|
|
33
|
+
"functional_spec_bindings": [
|
|
34
|
+
"behavior",
|
|
35
|
+
"states",
|
|
36
|
+
"keyboard",
|
|
37
|
+
"focus"
|
|
38
|
+
],
|
|
39
|
+
"id": "pattern.tree-view",
|
|
40
|
+
"implementation_outcomes": [
|
|
41
|
+
"tree-hierarchy-semantics",
|
|
42
|
+
"tree-keyboard-model",
|
|
43
|
+
"tree-selection-model"
|
|
44
|
+
],
|
|
45
|
+
"kind": "pattern",
|
|
46
|
+
"product_decisions": [
|
|
47
|
+
"focus_strategy",
|
|
48
|
+
"multi_select_keyboard_model",
|
|
49
|
+
"orientation",
|
|
50
|
+
"selection_follows_focus",
|
|
51
|
+
"selection_state",
|
|
52
|
+
"single_or_multi_select",
|
|
53
|
+
"typeahead",
|
|
54
|
+
"virtualization"
|
|
55
|
+
],
|
|
56
|
+
"requires": [
|
|
57
|
+
"semantics.accessible-name",
|
|
58
|
+
"semantics.expanded-state",
|
|
59
|
+
"semantics.focus.visible",
|
|
60
|
+
"semantics.keyboard",
|
|
61
|
+
"semantics.roles-states-properties",
|
|
62
|
+
"semantics.selected-state"
|
|
63
|
+
],
|
|
64
|
+
"scope": "Hierarchical single-select or multi-select tree widgets",
|
|
65
|
+
"standards_refs": [
|
|
66
|
+
{
|
|
67
|
+
"authority": "aria-apg",
|
|
68
|
+
"identifier": "treeview",
|
|
69
|
+
"normative": false,
|
|
70
|
+
"url": "https://www.w3.org/WAI/ARIA/apg/patterns/treeview/"
|
|
71
|
+
}
|
|
72
|
+
],
|
|
73
|
+
"title": "Tree view",
|
|
74
|
+
"version": "1.0.0"
|
|
75
|
+
},
|
|
76
|
+
"schema_version": 3
|
|
77
|
+
}
|
|
@@ -1,42 +1,78 @@
|
|
|
1
1
|
{
|
|
2
2
|
"_generated": "GENERATED by @verndale/accessibility-standards; DO NOT EDIT",
|
|
3
|
-
"
|
|
3
|
+
"_provenance": {
|
|
4
|
+
"package": "@verndale/accessibility-standards@3.0.0",
|
|
5
|
+
"profile": "conductor",
|
|
6
|
+
"profile_digest": "beadcb5fe8151303b3e3241de4fee0ece3be9ff2f4dbdb3a6f93a363b0a2d491",
|
|
7
|
+
"profile_version": "3.0.0",
|
|
8
|
+
"schema_version": 3,
|
|
9
|
+
"source_digest": "708ac82783bfb5ebcce31e4dada15d8580863f5e37b32d1807adf61e415ed5af"
|
|
10
|
+
},
|
|
4
11
|
"pattern": {
|
|
5
|
-
"id": "pattern.validation",
|
|
6
|
-
"version": "1.0.0",
|
|
7
|
-
"title": "Form validation",
|
|
8
|
-
"kind": "pattern",
|
|
9
|
-
"requires": [
|
|
10
|
-
"semantics.form-error",
|
|
11
|
-
"semantics.live-status",
|
|
12
|
-
"semantics.focus.initial"
|
|
13
|
-
],
|
|
14
12
|
"activation": {
|
|
15
|
-
"
|
|
16
|
-
|
|
13
|
+
"any": [
|
|
14
|
+
{
|
|
15
|
+
"contains": {
|
|
16
|
+
"fact": "component.accessibility_pattern_ids",
|
|
17
|
+
"value": "pattern.validation"
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"equals": {
|
|
22
|
+
"fact": "component.has_validation",
|
|
23
|
+
"value": true
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
]
|
|
17
27
|
},
|
|
18
|
-
"scope": "Client or server validation",
|
|
19
28
|
"behavior": [
|
|
20
29
|
"Identify, associate, summarize, and focus errors deterministically"
|
|
21
30
|
],
|
|
22
|
-
"
|
|
23
|
-
"
|
|
24
|
-
"
|
|
31
|
+
"evidence_routes": [
|
|
32
|
+
"unit",
|
|
33
|
+
"axe",
|
|
34
|
+
"e2e",
|
|
35
|
+
"human"
|
|
25
36
|
],
|
|
26
37
|
"functional_spec_bindings": [
|
|
27
38
|
"validation",
|
|
28
39
|
"messaging",
|
|
29
40
|
"focus"
|
|
30
41
|
],
|
|
42
|
+
"id": "pattern.validation",
|
|
31
43
|
"implementation_outcomes": [
|
|
32
44
|
"validation-associations",
|
|
33
45
|
"error-summary"
|
|
34
46
|
],
|
|
35
|
-
"
|
|
36
|
-
|
|
37
|
-
"
|
|
38
|
-
"
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
47
|
+
"kind": "pattern",
|
|
48
|
+
"product_decisions": [
|
|
49
|
+
"validation_timing",
|
|
50
|
+
"error_summary"
|
|
51
|
+
],
|
|
52
|
+
"requires": [
|
|
53
|
+
"semantics.form-error",
|
|
54
|
+
"semantics.live-status",
|
|
55
|
+
"semantics.focus.initial"
|
|
56
|
+
],
|
|
57
|
+
"scope": "Client or server validation",
|
|
58
|
+
"standards_refs": [
|
|
59
|
+
{
|
|
60
|
+
"authority": "wcag-2.2",
|
|
61
|
+
"identifier": "3.3.1",
|
|
62
|
+
"level": "A",
|
|
63
|
+
"normative": true,
|
|
64
|
+
"url": "https://www.w3.org/TR/WCAG22/#error-identification"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"authority": "wcag-2.2",
|
|
68
|
+
"identifier": "3.3.3",
|
|
69
|
+
"level": "AA",
|
|
70
|
+
"normative": true,
|
|
71
|
+
"url": "https://www.w3.org/TR/WCAG22/#error-suggestion"
|
|
72
|
+
}
|
|
73
|
+
],
|
|
74
|
+
"title": "Form validation",
|
|
75
|
+
"version": "1.0.0"
|
|
76
|
+
},
|
|
77
|
+
"schema_version": 3
|
|
42
78
|
}
|