@verndale/accessibility-standards 2.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.
Files changed (165) hide show
  1. package/OPERATING.md +1 -1
  2. package/README.md +1 -1
  3. package/dist/manifest.json +156 -116
  4. package/dist/profiles/ai-orchestration/coverage-manifest.json +702 -153
  5. package/dist/profiles/ai-orchestration/implementation/accessibility.md +523 -42
  6. package/dist/profiles/ai-orchestration/pattern-contracts.json +892 -306
  7. package/dist/profiles/ai-orchestration/patterns/accordion.md +6 -1
  8. package/dist/profiles/ai-orchestration/patterns/alert.md +6 -1
  9. package/dist/profiles/ai-orchestration/patterns/carousel.md +6 -1
  10. package/dist/profiles/ai-orchestration/patterns/checkbox.md +27 -0
  11. package/dist/profiles/ai-orchestration/patterns/combobox.md +6 -1
  12. package/dist/profiles/ai-orchestration/patterns/consequential-submission.md +8 -3
  13. package/dist/profiles/ai-orchestration/patterns/dialog.md +6 -1
  14. package/dist/profiles/ai-orchestration/patterns/disclosure.md +6 -1
  15. package/dist/profiles/ai-orchestration/patterns/dynamic-status.md +6 -1
  16. package/dist/profiles/ai-orchestration/patterns/field.md +7 -1
  17. package/dist/profiles/ai-orchestration/patterns/image.md +6 -1
  18. package/dist/profiles/ai-orchestration/patterns/listbox.md +6 -1
  19. package/dist/profiles/ai-orchestration/patterns/media-player.md +9 -1
  20. package/dist/profiles/ai-orchestration/patterns/menu-button.md +6 -1
  21. package/dist/profiles/ai-orchestration/patterns/menu.md +30 -0
  22. package/dist/profiles/ai-orchestration/patterns/pagination.md +6 -1
  23. package/dist/profiles/ai-orchestration/patterns/popover.md +7 -1
  24. package/dist/profiles/ai-orchestration/patterns/progress.md +7 -1
  25. package/dist/profiles/ai-orchestration/patterns/radio-group.md +27 -0
  26. package/dist/profiles/ai-orchestration/patterns/slider.md +31 -0
  27. package/dist/profiles/ai-orchestration/patterns/spinbutton.md +28 -0
  28. package/dist/profiles/ai-orchestration/patterns/tabs.md +6 -1
  29. package/dist/profiles/ai-orchestration/patterns/tooltip.md +6 -1
  30. package/dist/profiles/ai-orchestration/patterns/tree-view.md +31 -0
  31. package/dist/profiles/ai-orchestration/patterns/validation.md +7 -1
  32. package/dist/profiles/ai-orchestration/review/accessibility.md +14 -6
  33. package/dist/profiles/ai-orchestration/semantics/accessible-authentication.md +13 -0
  34. package/dist/profiles/ai-orchestration/semantics/accessible-name.md +8 -2
  35. package/dist/profiles/ai-orchestration/semantics/alert.md +7 -1
  36. package/dist/profiles/ai-orchestration/semantics/consequential-action.md +6 -2
  37. package/dist/profiles/ai-orchestration/semantics/consistent-help.md +13 -0
  38. package/dist/profiles/ai-orchestration/semantics/data-table.md +7 -2
  39. package/dist/profiles/ai-orchestration/semantics/dragging-alternative.md +13 -0
  40. package/dist/profiles/ai-orchestration/semantics/expanded-state.md +6 -1
  41. package/dist/profiles/ai-orchestration/semantics/focus.initial.md +4 -1
  42. package/dist/profiles/ai-orchestration/semantics/focus.return.md +4 -1
  43. package/dist/profiles/ai-orchestration/semantics/focus.visible.md +8 -2
  44. package/dist/profiles/ai-orchestration/semantics/form-error.md +8 -2
  45. package/dist/profiles/ai-orchestration/semantics/form-label.md +7 -1
  46. package/dist/profiles/ai-orchestration/semantics/form-required.md +7 -1
  47. package/dist/profiles/ai-orchestration/semantics/headings.md +7 -1
  48. package/dist/profiles/ai-orchestration/semantics/keyboard.escape.md +4 -1
  49. package/dist/profiles/ai-orchestration/semantics/keyboard.md +7 -1
  50. package/dist/profiles/ai-orchestration/semantics/landmarks.md +6 -1
  51. package/dist/profiles/ai-orchestration/semantics/live-status.md +7 -2
  52. package/dist/profiles/ai-orchestration/semantics/media-alternatives.md +11 -1
  53. package/dist/profiles/ai-orchestration/semantics/motion-control.md +8 -2
  54. package/dist/profiles/ai-orchestration/semantics/name-role-value.md +6 -2
  55. package/dist/profiles/ai-orchestration/semantics/native-dialog.md +7 -1
  56. package/dist/profiles/ai-orchestration/semantics/native-elements.md +5 -1
  57. package/dist/profiles/ai-orchestration/semantics/non-text-alternative.md +5 -1
  58. package/dist/profiles/ai-orchestration/semantics/redundant-entry.md +13 -0
  59. package/dist/profiles/ai-orchestration/semantics/roles-states-properties.md +6 -1
  60. package/dist/profiles/ai-orchestration/semantics/selected-state.md +6 -1
  61. package/dist/profiles/ai-orchestration/semantics/target-size.md +6 -2
  62. package/dist/profiles/ai-orchestration/semantics.json +826 -130
  63. package/dist/profiles/ai-orchestration/testing/accessibility.md +33 -3
  64. package/dist/profiles/ai-orchestration/ui-design-brain-bindings.json +287 -307
  65. package/dist/profiles/conductor/a11y-semantics.md +249 -10
  66. package/dist/profiles/conductor/accessibility-quality.md +275 -33
  67. package/dist/profiles/conductor/applicability-matrix.json +226 -269
  68. package/dist/profiles/conductor/coverage-manifest.json +702 -153
  69. package/dist/profiles/conductor/pattern-contracts.json +892 -306
  70. package/dist/profiles/conductor/patterns/accordion.json +35 -27
  71. package/dist/profiles/conductor/patterns/alert.json +29 -21
  72. package/dist/profiles/conductor/patterns/carousel.json +36 -28
  73. package/dist/profiles/conductor/patterns/checkbox.json +67 -0
  74. package/dist/profiles/conductor/patterns/combobox.json +37 -29
  75. package/dist/profiles/conductor/patterns/consequential-submission.json +34 -25
  76. package/dist/profiles/conductor/patterns/dialog.json +37 -29
  77. package/dist/profiles/conductor/patterns/disclosure.json +33 -25
  78. package/dist/profiles/conductor/patterns/dynamic-status.json +31 -22
  79. package/dist/profiles/conductor/patterns/field.json +41 -25
  80. package/dist/profiles/conductor/patterns/image.json +31 -22
  81. package/dist/profiles/conductor/patterns/listbox.json +35 -27
  82. package/dist/profiles/conductor/patterns/media-player.json +59 -29
  83. package/dist/profiles/conductor/patterns/menu-button.json +34 -26
  84. package/dist/profiles/conductor/patterns/menu.json +78 -0
  85. package/dist/profiles/conductor/patterns/pagination.json +34 -25
  86. package/dist/profiles/conductor/patterns/popover.json +42 -26
  87. package/dist/profiles/conductor/patterns/progress.json +38 -23
  88. package/dist/profiles/conductor/patterns/radio-group.json +69 -0
  89. package/dist/profiles/conductor/patterns/slider.json +84 -0
  90. package/dist/profiles/conductor/patterns/spinbutton.json +74 -0
  91. package/dist/profiles/conductor/patterns/tabs.json +34 -26
  92. package/dist/profiles/conductor/patterns/tooltip.json +31 -23
  93. package/dist/profiles/conductor/patterns/tree-view.json +77 -0
  94. package/dist/profiles/conductor/patterns/validation.json +42 -26
  95. package/dist/profiles/conductor/semantics.json +826 -130
  96. package/dist/profiles/conductor/ui-design-brain-bindings.json +287 -307
  97. package/dist/projection-manifest.json +120 -104
  98. package/dist/requirements-to-implementation.md +7 -1
  99. package/lib/build.mjs +3 -3
  100. package/lib/digest.mjs +8 -0
  101. package/lib/load.mjs +13 -0
  102. package/lib/provenance.mjs +2 -0
  103. package/lib/render.mjs +51 -7
  104. package/lib/sync.mjs +2 -2
  105. package/lib/validate.mjs +335 -33
  106. package/package.json +6 -2
  107. package/profiles/ai-orchestration/profile.json +1 -1
  108. package/profiles/ai-orchestration/templates/patterns/README.md +1 -1
  109. package/profiles/ai-orchestration/templates/review/README.md +1 -1
  110. package/profiles/ai-orchestration/templates/semantics/README.md +1 -1
  111. package/profiles/ai-orchestration/templates/testing/README.md +1 -1
  112. package/profiles/conductor/profile.json +1 -1
  113. package/profiles/conductor/templates/evidence/README.md +1 -1
  114. package/profiles/conductor/templates/patterns/README.md +1 -1
  115. package/profiles/conductor/templates/semantics/README.md +1 -1
  116. package/schemas/consumer-config.schema.json +1 -1
  117. package/schemas/contract.schema.json +1 -1
  118. package/schemas/manifest.schema.json +1 -1
  119. package/schemas/pattern.schema.json +98 -1
  120. package/schemas/profile.schema.json +1 -1
  121. package/schemas/projection-manifest.schema.json +6 -6
  122. package/schemas/semantic.schema.json +26 -1
  123. package/schemas/standards-reference.schema.json +105 -0
  124. package/schemas/wcag-coverage.schema.json +93 -0
  125. package/src/applicability/facts.yml +3 -5
  126. package/src/applicability/matrix.yml +5 -7
  127. package/src/applicability/ui-design-brain-bindings.yml +8 -22
  128. package/src/contract.yml +1 -1
  129. package/src/coverage/wcag-2.2.yml +68 -0
  130. package/src/patterns/disclosure/accordion.yml +1 -1
  131. package/src/patterns/disclosure/disclosure.yml +1 -1
  132. package/src/patterns/feedback/alert.yml +1 -1
  133. package/src/patterns/feedback/dynamic-status.yml +1 -1
  134. package/src/patterns/feedback/progress.yml +1 -1
  135. package/src/patterns/forms/consequential-submission.yml +1 -1
  136. package/src/patterns/forms/field.yml +1 -1
  137. package/src/patterns/forms/spinbutton.yml +1 -0
  138. package/src/patterns/forms/validation.yml +1 -1
  139. package/src/patterns/media/carousel.yml +1 -1
  140. package/src/patterns/media/image.yml +1 -1
  141. package/src/patterns/media/media-player.yml +1 -1
  142. package/src/patterns/navigation/menu-button.yml +1 -1
  143. package/src/patterns/navigation/menu.yml +1 -0
  144. package/src/patterns/navigation/pagination.yml +1 -1
  145. package/src/patterns/navigation/tabs.yml +1 -1
  146. package/src/patterns/navigation/tree-view.yml +1 -0
  147. package/src/patterns/overlays/dialog.yml +1 -1
  148. package/src/patterns/overlays/popover.yml +1 -1
  149. package/src/patterns/overlays/tooltip.yml +1 -1
  150. package/src/patterns/selection/checkbox.yml +1 -0
  151. package/src/patterns/selection/combobox.yml +1 -1
  152. package/src/patterns/selection/listbox.yml +1 -1
  153. package/src/patterns/selection/radio-group.yml +1 -0
  154. package/src/patterns/selection/slider.yml +1 -0
  155. package/src/semantics/accessible-names.yml +1 -1
  156. package/src/semantics/forms.yml +1 -1
  157. package/src/semantics/headings-landmarks.yml +1 -1
  158. package/src/semantics/keyboard-focus.yml +1 -1
  159. package/src/semantics/live-regions.yml +1 -1
  160. package/src/semantics/media.yml +1 -1
  161. package/src/semantics/native-elements.yml +1 -1
  162. package/src/semantics/roles-states-properties.yml +1 -1
  163. package/src/semantics/tables.yml +1 -1
  164. package/src/semantics/wcag-2.2.yml +1 -0
  165. package/src/sources.yml +1 -1
@@ -1,42 +1,24 @@
1
1
  {
2
2
  "_generated": "GENERATED by @verndale/accessibility-standards; DO NOT EDIT",
3
3
  "_provenance": {
4
- "package": "@verndale/accessibility-standards@2.0.0",
4
+ "package": "@verndale/accessibility-standards@3.0.0",
5
5
  "profile": "conductor",
6
- "profile_version": "2.0.0",
7
- "profile_digest": "4840ac3a4910f8dc3a850df266a141e0e4df94ca3c8935ae4531c56f6be91e65",
8
- "schema_version": 2,
9
- "source_digest": "e4bf4272751c21e417ddd3e6c52308bf804fab097629ba843964532e7f97d9f0"
6
+ "profile_digest": "beadcb5fe8151303b3e3241de4fee0ece3be9ff2f4dbdb3a6f93a363b0a2d491",
7
+ "profile_version": "3.0.0",
8
+ "schema_version": 3,
9
+ "source_digest": "708ac82783bfb5ebcce31e4dada15d8580863f5e37b32d1807adf61e415ed5af"
10
10
  },
11
- "schema_version": 2,
11
+ "binding_digest": "9c2e5264b3706778d800e6c8f7fb77ebceb34a8bb00937431cd42f5c0b2e9d39",
12
12
  "binding_schema_version": 1,
13
- "source": {
14
- "package": "@verndale/ui-design-brain",
15
- "package_version": "1.16.0",
16
- "catalog_authority_version": "1.15.1",
17
- "repository": "https://github.com/verndale/ui-design-brain",
18
- "manifest_path": "skills/ui-design-brain/catalog-manifest.json",
19
- "source_digest": "sha256:1eda596fe341786b5ada25742b6487bc06685fff17cbd582bc1b58302097e3ff",
20
- "manifest_digest": "sha256:63a0bc8d9537d6d4c0aef8fd8a539bf4a9181a50d0761bd63eae6fe59b4eddc9",
21
- "pattern_count": 80,
22
- "tracking_issue": "https://github.com/verndale/ui-design-brain/issues/47"
23
- },
24
- "binding_digest": "3873c25694439e1ab07858aa84aecfa1be3467043559d0c94906c19e1025da64",
25
13
  "bindings": [
26
14
  {
27
- "ui_pattern_id": "accordion",
28
15
  "classification": "direct",
29
16
  "pattern_ids": [
30
17
  "pattern.accordion"
31
- ]
18
+ ],
19
+ "ui_pattern_id": "accordion"
32
20
  },
33
21
  {
34
- "ui_pattern_id": "alert",
35
- "classification": "candidate",
36
- "discriminator_facts": [
37
- "component.has_dynamic_status",
38
- "component.message_urgency"
39
- ],
40
22
  "candidates": [
41
23
  {
42
24
  "pattern_id": "pattern.alert",
@@ -56,21 +38,22 @@
56
38
  }
57
39
  }
58
40
  }
59
- ]
41
+ ],
42
+ "classification": "candidate",
43
+ "discriminator_facts": [
44
+ "component.has_dynamic_status",
45
+ "component.message_urgency"
46
+ ],
47
+ "ui_pattern_id": "alert"
60
48
  },
61
49
  {
62
- "ui_pattern_id": "avatar",
63
- "classification": "baseline-only",
64
50
  "baseline_semantic_ids": [
65
51
  "semantics.non-text-alternative"
66
- ]
52
+ ],
53
+ "classification": "baseline-only",
54
+ "ui_pattern_id": "avatar"
67
55
  },
68
56
  {
69
- "ui_pattern_id": "badge",
70
- "classification": "candidate",
71
- "discriminator_facts": [
72
- "component.has_dynamic_status"
73
- ],
74
57
  "candidates": [
75
58
  {
76
59
  "pattern_id": "pattern.dynamic-status",
@@ -81,19 +64,22 @@
81
64
  }
82
65
  }
83
66
  }
84
- ]
67
+ ],
68
+ "classification": "candidate",
69
+ "discriminator_facts": [
70
+ "component.has_dynamic_status"
71
+ ],
72
+ "ui_pattern_id": "badge"
85
73
  },
86
74
  {
87
- "ui_pattern_id": "breadcrumbs",
88
- "classification": "baseline-only",
89
75
  "baseline_semantic_ids": [
90
76
  "semantics.landmarks",
91
77
  "semantics.native-elements"
92
- ]
78
+ ],
79
+ "classification": "baseline-only",
80
+ "ui_pattern_id": "breadcrumbs"
93
81
  },
94
82
  {
95
- "ui_pattern_id": "button",
96
- "classification": "baseline-only",
97
83
  "baseline_semantic_ids": [
98
84
  "semantics.accessible-name",
99
85
  "semantics.focus.visible",
@@ -101,95 +87,79 @@
101
87
  "semantics.name-role-value",
102
88
  "semantics.native-elements",
103
89
  "semantics.target-size"
104
- ]
90
+ ],
91
+ "classification": "baseline-only",
92
+ "ui_pattern_id": "button"
105
93
  },
106
94
  {
107
- "ui_pattern_id": "button-group",
108
- "classification": "baseline-only",
109
95
  "baseline_semantic_ids": [
110
96
  "semantics.accessible-name",
111
97
  "semantics.focus.visible",
112
98
  "semantics.keyboard",
113
99
  "semantics.native-elements"
114
- ]
100
+ ],
101
+ "classification": "baseline-only",
102
+ "ui_pattern_id": "button-group"
115
103
  },
116
104
  {
117
- "ui_pattern_id": "card",
118
- "classification": "baseline-only",
119
105
  "baseline_semantic_ids": [
120
106
  "semantics.native-elements"
121
- ]
107
+ ],
108
+ "classification": "baseline-only",
109
+ "ui_pattern_id": "card"
122
110
  },
123
111
  {
124
- "ui_pattern_id": "carousel",
125
112
  "classification": "direct",
126
113
  "pattern_ids": [
127
114
  "pattern.carousel"
128
- ]
115
+ ],
116
+ "ui_pattern_id": "carousel"
129
117
  },
130
118
  {
131
- "ui_pattern_id": "checkbox",
132
119
  "classification": "direct",
133
120
  "pattern_ids": [
121
+ "pattern.checkbox",
134
122
  "pattern.field"
135
- ]
123
+ ],
124
+ "ui_pattern_id": "checkbox"
136
125
  },
137
126
  {
138
- "ui_pattern_id": "color-picker",
139
127
  "classification": "direct",
140
128
  "pattern_ids": [
141
129
  "pattern.field"
142
- ]
130
+ ],
131
+ "ui_pattern_id": "color-picker"
143
132
  },
144
133
  {
145
- "ui_pattern_id": "combobox",
146
134
  "classification": "direct",
147
135
  "pattern_ids": [
148
136
  "pattern.combobox",
149
137
  "pattern.field"
150
- ]
138
+ ],
139
+ "ui_pattern_id": "combobox"
151
140
  },
152
141
  {
153
- "ui_pattern_id": "comparison-table",
154
- "classification": "baseline-only",
155
142
  "baseline_semantic_ids": [
156
143
  "semantics.data-table"
157
- ]
158
- },
159
- {
160
- "ui_pattern_id": "context-menu",
161
- "classification": "candidate",
162
- "discriminator_facts": [
163
- "component.command_menu_trigger"
164
144
  ],
165
- "candidates": [
166
- {
167
- "pattern_id": "pattern.menu-button",
168
- "when": {
169
- "equals": {
170
- "fact": "component.command_menu_trigger",
171
- "value": true
172
- }
173
- }
174
- }
175
- ]
145
+ "classification": "baseline-only",
146
+ "ui_pattern_id": "comparison-table"
176
147
  },
177
148
  {
178
- "ui_pattern_id": "date-input",
179
149
  "classification": "direct",
180
150
  "pattern_ids": [
181
- "pattern.field"
182
- ]
151
+ "pattern.menu"
152
+ ],
153
+ "ui_pattern_id": "context-menu"
183
154
  },
184
155
  {
185
- "ui_pattern_id": "datepicker",
186
- "classification": "candidate",
156
+ "classification": "direct",
187
157
  "pattern_ids": [
188
158
  "pattern.field"
189
159
  ],
190
- "discriminator_facts": [
191
- "component.overlay_model"
192
- ],
160
+ "ui_pattern_id": "date-input"
161
+ },
162
+ {
193
163
  "candidates": [
194
164
  {
195
165
  "pattern_id": "pattern.dialog",
@@ -209,14 +179,17 @@
209
179
  }
210
180
  }
211
181
  }
212
- ]
213
- },
214
- {
215
- "ui_pattern_id": "drawer",
182
+ ],
216
183
  "classification": "candidate",
217
184
  "discriminator_facts": [
218
185
  "component.overlay_model"
219
186
  ],
187
+ "pattern_ids": [
188
+ "pattern.field"
189
+ ],
190
+ "ui_pattern_id": "datepicker"
191
+ },
192
+ {
220
193
  "candidates": [
221
194
  {
222
195
  "pattern_id": "pattern.dialog",
@@ -245,32 +218,22 @@
245
218
  }
246
219
  }
247
220
  }
248
- ]
249
- },
250
- {
251
- "ui_pattern_id": "dropdown-menu",
221
+ ],
252
222
  "classification": "candidate",
253
223
  "discriminator_facts": [
254
- "component.command_menu_trigger"
224
+ "component.overlay_model"
255
225
  ],
256
- "candidates": [
257
- {
258
- "pattern_id": "pattern.menu-button",
259
- "when": {
260
- "equals": {
261
- "fact": "component.command_menu_trigger",
262
- "value": true
263
- }
264
- }
265
- }
266
- ]
226
+ "ui_pattern_id": "drawer"
267
227
  },
268
228
  {
269
- "ui_pattern_id": "empty-state",
270
- "classification": "candidate",
271
- "discriminator_facts": [
272
- "component.has_dynamic_status"
229
+ "classification": "direct",
230
+ "pattern_ids": [
231
+ "pattern.menu",
232
+ "pattern.menu-button"
273
233
  ],
234
+ "ui_pattern_id": "dropdown-menu"
235
+ },
236
+ {
274
237
  "candidates": [
275
238
  {
276
239
  "pattern_id": "pattern.dynamic-status",
@@ -281,49 +244,49 @@
281
244
  }
282
245
  }
283
246
  }
284
- ]
247
+ ],
248
+ "classification": "candidate",
249
+ "discriminator_facts": [
250
+ "component.has_dynamic_status"
251
+ ],
252
+ "ui_pattern_id": "empty-state"
285
253
  },
286
254
  {
287
- "ui_pattern_id": "error-message",
288
255
  "classification": "direct",
289
256
  "pattern_ids": [
290
257
  "pattern.validation"
291
- ]
258
+ ],
259
+ "ui_pattern_id": "error-message"
292
260
  },
293
261
  {
294
- "ui_pattern_id": "eyebrow",
295
- "classification": "baseline-only",
296
262
  "baseline_semantic_ids": [
297
263
  "semantics.native-elements"
298
- ]
264
+ ],
265
+ "classification": "baseline-only",
266
+ "ui_pattern_id": "eyebrow"
299
267
  },
300
268
  {
301
- "ui_pattern_id": "fieldset",
302
269
  "classification": "direct",
303
270
  "pattern_ids": [
304
271
  "pattern.field"
305
- ]
272
+ ],
273
+ "ui_pattern_id": "fieldset"
306
274
  },
307
275
  {
308
- "ui_pattern_id": "file",
309
- "classification": "baseline-only",
310
276
  "baseline_semantic_ids": [
311
277
  "semantics.native-elements"
312
- ]
278
+ ],
279
+ "classification": "baseline-only",
280
+ "ui_pattern_id": "file"
313
281
  },
314
282
  {
315
- "ui_pattern_id": "file-upload",
316
283
  "classification": "direct",
317
284
  "pattern_ids": [
318
285
  "pattern.field"
319
- ]
286
+ ],
287
+ "ui_pattern_id": "file-upload"
320
288
  },
321
289
  {
322
- "ui_pattern_id": "filter",
323
- "classification": "candidate",
324
- "discriminator_facts": [
325
- "component.has_form_fields"
326
- ],
327
290
  "candidates": [
328
291
  {
329
292
  "pattern_id": "pattern.field",
@@ -334,135 +297,135 @@
334
297
  }
335
298
  }
336
299
  }
337
- ]
300
+ ],
301
+ "classification": "candidate",
302
+ "discriminator_facts": [
303
+ "component.has_form_fields"
304
+ ],
305
+ "ui_pattern_id": "filter"
338
306
  },
339
307
  {
340
- "ui_pattern_id": "footer",
341
- "classification": "baseline-only",
342
308
  "baseline_semantic_ids": [
343
309
  "semantics.landmarks"
344
- ]
310
+ ],
311
+ "classification": "baseline-only",
312
+ "ui_pattern_id": "footer"
345
313
  },
346
314
  {
347
- "ui_pattern_id": "form",
348
315
  "classification": "direct",
349
316
  "pattern_ids": [
350
317
  "pattern.field"
351
- ]
318
+ ],
319
+ "ui_pattern_id": "form"
352
320
  },
353
321
  {
354
- "ui_pattern_id": "header",
355
- "classification": "baseline-only",
356
322
  "baseline_semantic_ids": [
357
323
  "semantics.landmarks"
358
- ]
324
+ ],
325
+ "classification": "baseline-only",
326
+ "ui_pattern_id": "header"
359
327
  },
360
328
  {
361
- "ui_pattern_id": "heading",
362
- "classification": "baseline-only",
363
329
  "baseline_semantic_ids": [
364
330
  "semantics.headings"
365
- ]
331
+ ],
332
+ "classification": "baseline-only",
333
+ "ui_pattern_id": "heading"
366
334
  },
367
335
  {
368
- "ui_pattern_id": "helper-text",
369
- "classification": "baseline-only",
370
336
  "baseline_semantic_ids": [
371
337
  "semantics.native-elements"
372
- ]
338
+ ],
339
+ "classification": "baseline-only",
340
+ "ui_pattern_id": "helper-text"
373
341
  },
374
342
  {
375
- "ui_pattern_id": "hero",
376
- "classification": "baseline-only",
377
343
  "baseline_semantic_ids": [
378
344
  "semantics.headings"
379
- ]
345
+ ],
346
+ "classification": "baseline-only",
347
+ "ui_pattern_id": "hero"
380
348
  },
381
349
  {
382
- "ui_pattern_id": "icon",
383
- "classification": "baseline-only",
384
350
  "baseline_semantic_ids": [
385
351
  "semantics.non-text-alternative"
386
- ]
352
+ ],
353
+ "classification": "baseline-only",
354
+ "ui_pattern_id": "icon"
387
355
  },
388
356
  {
389
- "ui_pattern_id": "image",
390
357
  "classification": "direct",
391
358
  "pattern_ids": [
392
359
  "pattern.image"
393
- ]
360
+ ],
361
+ "ui_pattern_id": "image"
394
362
  },
395
363
  {
396
- "ui_pattern_id": "in-page-navigation",
397
- "classification": "baseline-only",
398
364
  "baseline_semantic_ids": [
399
365
  "semantics.accessible-name",
400
366
  "semantics.focus.visible",
401
367
  "semantics.keyboard",
402
368
  "semantics.landmarks",
403
369
  "semantics.native-elements"
404
- ]
370
+ ],
371
+ "classification": "baseline-only",
372
+ "ui_pattern_id": "in-page-navigation"
405
373
  },
406
374
  {
407
- "ui_pattern_id": "label",
408
- "classification": "baseline-only",
409
375
  "baseline_semantic_ids": [
410
376
  "semantics.form-label"
411
- ]
377
+ ],
378
+ "classification": "baseline-only",
379
+ "ui_pattern_id": "label"
412
380
  },
413
381
  {
414
- "ui_pattern_id": "link",
415
- "classification": "baseline-only",
416
382
  "baseline_semantic_ids": [
417
383
  "semantics.accessible-name",
418
384
  "semantics.focus.visible",
419
385
  "semantics.keyboard",
420
386
  "semantics.native-elements",
421
387
  "semantics.target-size"
422
- ]
388
+ ],
389
+ "classification": "baseline-only",
390
+ "ui_pattern_id": "link"
423
391
  },
424
392
  {
425
- "ui_pattern_id": "list",
426
- "classification": "baseline-only",
427
393
  "baseline_semantic_ids": [
428
394
  "semantics.native-elements"
429
- ]
395
+ ],
396
+ "classification": "baseline-only",
397
+ "ui_pattern_id": "list"
430
398
  },
431
399
  {
432
- "ui_pattern_id": "logo-bar",
433
- "classification": "baseline-only",
434
400
  "baseline_semantic_ids": [
435
401
  "semantics.non-text-alternative"
436
- ]
402
+ ],
403
+ "classification": "baseline-only",
404
+ "ui_pattern_id": "logo-bar"
437
405
  },
438
406
  {
439
- "ui_pattern_id": "marquee",
440
- "classification": "baseline-only",
441
407
  "baseline_semantic_ids": [
442
408
  "semantics.motion-control"
443
- ]
409
+ ],
410
+ "classification": "baseline-only",
411
+ "ui_pattern_id": "marquee"
444
412
  },
445
413
  {
446
- "ui_pattern_id": "masthead",
447
- "classification": "baseline-only",
448
414
  "baseline_semantic_ids": [
449
415
  "semantics.headings",
450
416
  "semantics.landmarks"
451
- ]
417
+ ],
418
+ "classification": "baseline-only",
419
+ "ui_pattern_id": "masthead"
452
420
  },
453
421
  {
454
- "ui_pattern_id": "media-object",
455
- "classification": "baseline-only",
456
422
  "baseline_semantic_ids": [
457
423
  "semantics.non-text-alternative"
458
- ]
424
+ ],
425
+ "classification": "baseline-only",
426
+ "ui_pattern_id": "media-object"
459
427
  },
460
428
  {
461
- "ui_pattern_id": "mega-menu",
462
- "classification": "candidate",
463
- "discriminator_facts": [
464
- "component.command_menu_trigger"
465
- ],
466
429
  "candidates": [
467
430
  {
468
431
  "pattern_id": "pattern.menu-button",
@@ -473,21 +436,21 @@
473
436
  }
474
437
  }
475
438
  }
476
- ]
439
+ ],
440
+ "classification": "candidate",
441
+ "discriminator_facts": [
442
+ "component.command_menu_trigger"
443
+ ],
444
+ "ui_pattern_id": "mega-menu"
477
445
  },
478
446
  {
479
- "ui_pattern_id": "modal",
480
447
  "classification": "direct",
481
448
  "pattern_ids": [
482
449
  "pattern.dialog"
483
- ]
450
+ ],
451
+ "ui_pattern_id": "modal"
484
452
  },
485
453
  {
486
- "ui_pattern_id": "navigation",
487
- "classification": "candidate",
488
- "discriminator_facts": [
489
- "component.command_menu_trigger"
490
- ],
491
454
  "candidates": [
492
455
  {
493
456
  "pattern_id": "pattern.menu-button",
@@ -498,95 +461,97 @@
498
461
  }
499
462
  }
500
463
  }
501
- ]
464
+ ],
465
+ "classification": "candidate",
466
+ "discriminator_facts": [
467
+ "component.command_menu_trigger"
468
+ ],
469
+ "ui_pattern_id": "navigation"
502
470
  },
503
471
  {
504
- "ui_pattern_id": "number-input",
505
472
  "classification": "direct",
506
473
  "pattern_ids": [
507
- "pattern.field"
508
- ]
474
+ "pattern.field",
475
+ "pattern.spinbutton"
476
+ ],
477
+ "ui_pattern_id": "number-input"
509
478
  },
510
479
  {
511
- "ui_pattern_id": "pagination",
512
480
  "classification": "direct",
513
481
  "pattern_ids": [
514
482
  "pattern.pagination"
515
- ]
483
+ ],
484
+ "ui_pattern_id": "pagination"
516
485
  },
517
486
  {
518
- "ui_pattern_id": "popover",
519
487
  "classification": "direct",
520
488
  "pattern_ids": [
521
489
  "pattern.popover"
522
- ]
490
+ ],
491
+ "ui_pattern_id": "popover"
523
492
  },
524
493
  {
525
- "ui_pattern_id": "progress-bar",
526
494
  "classification": "direct",
527
495
  "pattern_ids": [
528
496
  "pattern.progress"
529
- ]
497
+ ],
498
+ "ui_pattern_id": "progress-bar"
530
499
  },
531
500
  {
532
- "ui_pattern_id": "progress-indicator",
533
501
  "classification": "direct",
534
502
  "pattern_ids": [
535
503
  "pattern.progress"
536
- ]
504
+ ],
505
+ "ui_pattern_id": "progress-indicator"
537
506
  },
538
507
  {
539
- "ui_pattern_id": "quote",
540
- "classification": "baseline-only",
541
508
  "baseline_semantic_ids": [
542
509
  "semantics.native-elements"
543
- ]
510
+ ],
511
+ "classification": "baseline-only",
512
+ "ui_pattern_id": "quote"
544
513
  },
545
514
  {
546
- "ui_pattern_id": "radio-button",
547
515
  "classification": "direct",
548
516
  "pattern_ids": [
549
- "pattern.field"
550
- ]
517
+ "pattern.field",
518
+ "pattern.radio-group"
519
+ ],
520
+ "ui_pattern_id": "radio-button"
551
521
  },
552
522
  {
553
- "ui_pattern_id": "rating",
554
- "classification": "baseline-only",
555
523
  "baseline_semantic_ids": [
556
524
  "semantics.name-role-value"
557
- ]
525
+ ],
526
+ "classification": "baseline-only",
527
+ "ui_pattern_id": "rating"
558
528
  },
559
529
  {
560
- "ui_pattern_id": "rich-text",
561
- "classification": "baseline-only",
562
530
  "baseline_semantic_ids": [
563
531
  "semantics.headings",
564
532
  "semantics.native-elements"
565
- ]
533
+ ],
534
+ "classification": "baseline-only",
535
+ "ui_pattern_id": "rich-text"
566
536
  },
567
537
  {
568
- "ui_pattern_id": "rich-text-editor",
569
- "classification": "baseline-only",
570
538
  "baseline_semantic_ids": [
571
539
  "semantics.accessible-name",
572
540
  "semantics.focus.visible",
573
541
  "semantics.keyboard",
574
542
  "semantics.name-role-value"
575
- ]
543
+ ],
544
+ "classification": "baseline-only",
545
+ "ui_pattern_id": "rich-text-editor"
576
546
  },
577
547
  {
578
- "ui_pattern_id": "search-input",
579
548
  "classification": "direct",
580
549
  "pattern_ids": [
581
550
  "pattern.field"
582
- ]
551
+ ],
552
+ "ui_pattern_id": "search-input"
583
553
  },
584
554
  {
585
- "ui_pattern_id": "search-overlay",
586
- "classification": "candidate",
587
- "discriminator_facts": [
588
- "component.overlay_model"
589
- ],
590
555
  "candidates": [
591
556
  {
592
557
  "pattern_id": "pattern.dialog",
@@ -606,34 +571,31 @@
606
571
  }
607
572
  }
608
573
  }
609
- ]
574
+ ],
575
+ "classification": "candidate",
576
+ "discriminator_facts": [
577
+ "component.overlay_model"
578
+ ],
579
+ "ui_pattern_id": "search-overlay"
610
580
  },
611
581
  {
612
- "ui_pattern_id": "section-header",
613
- "classification": "baseline-only",
614
582
  "baseline_semantic_ids": [
615
583
  "semantics.headings"
616
- ]
584
+ ],
585
+ "classification": "baseline-only",
586
+ "ui_pattern_id": "section-header"
617
587
  },
618
588
  {
619
- "ui_pattern_id": "segmented-control",
620
- "classification": "baseline-only",
621
589
  "baseline_semantic_ids": [
622
590
  "semantics.accessible-name",
623
591
  "semantics.focus.visible",
624
592
  "semantics.keyboard",
625
593
  "semantics.selected-state"
626
- ]
594
+ ],
595
+ "classification": "baseline-only",
596
+ "ui_pattern_id": "segmented-control"
627
597
  },
628
598
  {
629
- "ui_pattern_id": "select",
630
- "classification": "candidate",
631
- "pattern_ids": [
632
- "pattern.field"
633
- ],
634
- "discriminator_facts": [
635
- "component.selection_model"
636
- ],
637
599
  "candidates": [
638
600
  {
639
601
  "pattern_id": "pattern.combobox",
@@ -653,21 +615,24 @@
653
615
  }
654
616
  }
655
617
  }
656
- ]
618
+ ],
619
+ "classification": "candidate",
620
+ "discriminator_facts": [
621
+ "component.selection_model"
622
+ ],
623
+ "pattern_ids": [
624
+ "pattern.field"
625
+ ],
626
+ "ui_pattern_id": "select"
657
627
  },
658
628
  {
659
- "ui_pattern_id": "separator",
660
- "classification": "baseline-only",
661
629
  "baseline_semantic_ids": [
662
630
  "semantics.native-elements"
663
- ]
631
+ ],
632
+ "classification": "baseline-only",
633
+ "ui_pattern_id": "separator"
664
634
  },
665
635
  {
666
- "ui_pattern_id": "sidebar",
667
- "classification": "candidate",
668
- "discriminator_facts": [
669
- "component.command_menu_trigger"
670
- ],
671
636
  "candidates": [
672
637
  {
673
638
  "pattern_id": "pattern.menu-button",
@@ -678,14 +643,14 @@
678
643
  }
679
644
  }
680
645
  }
681
- ]
682
- },
683
- {
684
- "ui_pattern_id": "skeleton",
646
+ ],
685
647
  "classification": "candidate",
686
648
  "discriminator_facts": [
687
- "component.has_dynamic_status"
649
+ "component.command_menu_trigger"
688
650
  ],
651
+ "ui_pattern_id": "sidebar"
652
+ },
653
+ {
689
654
  "candidates": [
690
655
  {
691
656
  "pattern_id": "pattern.dynamic-status",
@@ -696,88 +661,89 @@
696
661
  }
697
662
  }
698
663
  }
699
- ]
664
+ ],
665
+ "classification": "candidate",
666
+ "discriminator_facts": [
667
+ "component.has_dynamic_status"
668
+ ],
669
+ "ui_pattern_id": "skeleton"
700
670
  },
701
671
  {
702
- "ui_pattern_id": "skip-link",
703
- "classification": "baseline-only",
704
672
  "baseline_semantic_ids": [
705
673
  "semantics.accessible-name",
706
674
  "semantics.focus.visible",
707
675
  "semantics.keyboard",
708
676
  "semantics.native-elements"
709
- ]
677
+ ],
678
+ "classification": "baseline-only",
679
+ "ui_pattern_id": "skip-link"
710
680
  },
711
681
  {
712
- "ui_pattern_id": "slider",
713
682
  "classification": "direct",
714
683
  "pattern_ids": [
715
- "pattern.field"
716
- ]
684
+ "pattern.field",
685
+ "pattern.slider"
686
+ ],
687
+ "ui_pattern_id": "slider"
717
688
  },
718
689
  {
719
- "ui_pattern_id": "spinner",
720
690
  "classification": "direct",
721
691
  "pattern_ids": [
722
692
  "pattern.progress"
723
- ]
693
+ ],
694
+ "ui_pattern_id": "spinner"
724
695
  },
725
696
  {
726
- "ui_pattern_id": "stack",
727
- "classification": "baseline-only",
728
697
  "baseline_semantic_ids": [
729
698
  "semantics.native-elements"
730
- ]
699
+ ],
700
+ "classification": "baseline-only",
701
+ "ui_pattern_id": "stack"
731
702
  },
732
703
  {
733
- "ui_pattern_id": "stat",
734
- "classification": "baseline-only",
735
704
  "baseline_semantic_ids": [
736
705
  "semantics.native-elements"
737
- ]
706
+ ],
707
+ "classification": "baseline-only",
708
+ "ui_pattern_id": "stat"
738
709
  },
739
710
  {
740
- "ui_pattern_id": "stepper",
741
711
  "classification": "direct",
742
712
  "pattern_ids": [
743
- "pattern.field"
744
- ]
713
+ "pattern.field",
714
+ "pattern.spinbutton"
715
+ ],
716
+ "ui_pattern_id": "stepper"
745
717
  },
746
718
  {
747
- "ui_pattern_id": "table",
748
- "classification": "baseline-only",
749
719
  "baseline_semantic_ids": [
750
720
  "semantics.data-table"
751
- ]
721
+ ],
722
+ "classification": "baseline-only",
723
+ "ui_pattern_id": "table"
752
724
  },
753
725
  {
754
- "ui_pattern_id": "tabs",
755
726
  "classification": "direct",
756
727
  "pattern_ids": [
757
728
  "pattern.tabs"
758
- ]
729
+ ],
730
+ "ui_pattern_id": "tabs"
759
731
  },
760
732
  {
761
- "ui_pattern_id": "text-input",
762
733
  "classification": "direct",
763
734
  "pattern_ids": [
764
735
  "pattern.field"
765
- ]
736
+ ],
737
+ "ui_pattern_id": "text-input"
766
738
  },
767
739
  {
768
- "ui_pattern_id": "textarea",
769
740
  "classification": "direct",
770
741
  "pattern_ids": [
771
742
  "pattern.field"
772
- ]
743
+ ],
744
+ "ui_pattern_id": "textarea"
773
745
  },
774
746
  {
775
- "ui_pattern_id": "toast",
776
- "classification": "candidate",
777
- "discriminator_facts": [
778
- "component.has_dynamic_status",
779
- "component.message_urgency"
780
- ],
781
747
  "candidates": [
782
748
  {
783
749
  "pattern_id": "pattern.alert",
@@ -797,60 +763,74 @@
797
763
  }
798
764
  }
799
765
  }
800
- ]
766
+ ],
767
+ "classification": "candidate",
768
+ "discriminator_facts": [
769
+ "component.has_dynamic_status",
770
+ "component.message_urgency"
771
+ ],
772
+ "ui_pattern_id": "toast"
801
773
  },
802
774
  {
803
- "ui_pattern_id": "toggle",
804
775
  "classification": "direct",
805
776
  "pattern_ids": [
806
777
  "pattern.field"
807
- ]
778
+ ],
779
+ "ui_pattern_id": "toggle"
808
780
  },
809
781
  {
810
- "ui_pattern_id": "tooltip",
811
782
  "classification": "direct",
812
783
  "pattern_ids": [
813
784
  "pattern.tooltip"
814
- ]
785
+ ],
786
+ "ui_pattern_id": "tooltip"
815
787
  },
816
788
  {
817
- "ui_pattern_id": "tree-view",
818
- "classification": "baseline-only",
819
- "baseline_semantic_ids": [
820
- "semantics.accessible-name",
821
- "semantics.focus.visible",
822
- "semantics.keyboard",
823
- "semantics.roles-states-properties",
824
- "semantics.selected-state"
825
- ]
789
+ "classification": "direct",
790
+ "pattern_ids": [
791
+ "pattern.tree-view"
792
+ ],
793
+ "ui_pattern_id": "tree-view"
826
794
  },
827
795
  {
828
- "ui_pattern_id": "utility-bar",
829
- "classification": "baseline-only",
830
796
  "baseline_semantic_ids": [
831
797
  "semantics.landmarks"
832
- ]
798
+ ],
799
+ "classification": "baseline-only",
800
+ "ui_pattern_id": "utility-bar"
833
801
  },
834
802
  {
835
- "ui_pattern_id": "video",
836
803
  "classification": "direct",
837
804
  "pattern_ids": [
838
805
  "pattern.media-player"
839
- ]
806
+ ],
807
+ "ui_pattern_id": "video"
840
808
  },
841
809
  {
842
- "ui_pattern_id": "visually-hidden",
843
- "classification": "baseline-only",
844
810
  "baseline_semantic_ids": [
845
811
  "semantics.native-elements"
846
- ]
812
+ ],
813
+ "classification": "baseline-only",
814
+ "ui_pattern_id": "visually-hidden"
847
815
  },
848
816
  {
849
- "ui_pattern_id": "wizard",
850
817
  "classification": "direct",
851
818
  "pattern_ids": [
852
819
  "pattern.field"
853
- ]
820
+ ],
821
+ "ui_pattern_id": "wizard"
854
822
  }
855
- ]
823
+ ],
824
+ "schema_version": 3,
825
+ "source": {
826
+ "catalog_authority_version": "1.15.1",
827
+ "manifest_digest": "sha256:63a0bc8d9537d6d4c0aef8fd8a539bf4a9181a50d0761bd63eae6fe59b4eddc9",
828
+ "manifest_path": "skills/ui-design-brain/catalog-manifest.json",
829
+ "package": "@verndale/ui-design-brain",
830
+ "package_version": "1.16.0",
831
+ "pattern_count": 80,
832
+ "repository": "https://github.com/verndale/ui-design-brain",
833
+ "source_digest": "sha256:1eda596fe341786b5ada25742b6487bc06685fff17cbd582bc1b58302097e3ff",
834
+ "tracking_issue": "https://github.com/verndale/ui-design-brain/issues/47"
835
+ }
856
836
  }