@longsightgroup/qti3-a11y 0.2.1 → 0.3.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/dist/index.js +37 -3
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
- package/src/index.ts +40 -3
package/dist/index.js
CHANGED
|
@@ -106,7 +106,7 @@ function contractForInteraction(interactionType) {
|
|
|
106
106
|
requiredStates: ["checked", "aria-invalid", "aria-describedby"],
|
|
107
107
|
};
|
|
108
108
|
}
|
|
109
|
-
if (interactionType === "order"
|
|
109
|
+
if (interactionType === "order") {
|
|
110
110
|
return {
|
|
111
111
|
...base,
|
|
112
112
|
primaryRole: "group",
|
|
@@ -114,9 +114,36 @@ function contractForInteraction(interactionType) {
|
|
|
114
114
|
"Tab moves through each item handle and its move buttons.",
|
|
115
115
|
"Arrow Up, Arrow Down, Arrow Left, or Arrow Right reorders the focused item handle.",
|
|
116
116
|
"Arrow icon buttons provide an explicit move-button fallback.",
|
|
117
|
+
"Adjacent moves are announced directionally in a polite live region; larger jumps announce the new position.",
|
|
117
118
|
],
|
|
118
119
|
requiredStates: [
|
|
119
120
|
"position in accessible name",
|
|
121
|
+
"reorder announcement",
|
|
122
|
+
"disabled",
|
|
123
|
+
"aria-invalid",
|
|
124
|
+
"aria-describedby",
|
|
125
|
+
],
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
if (interactionType === "graphicOrder") {
|
|
129
|
+
return {
|
|
130
|
+
...base,
|
|
131
|
+
primaryRole: "group",
|
|
132
|
+
focusStrategy: "Focus moves through graphic hotspot buttons and ordered-list controls; the selection summary is a live region, not a tab stop.",
|
|
133
|
+
keyboardModel: [
|
|
134
|
+
"Tab moves through hotspot buttons, ordered-list controls, and remove buttons.",
|
|
135
|
+
"On hotspot buttons, Enter or Space adds the region to the sequence.",
|
|
136
|
+
"On hotspot buttons, Arrow Up, Arrow Down, Arrow Left, or Arrow Right moves focus between hotspots.",
|
|
137
|
+
"On hotspot buttons, Delete or Backspace removes the region from the sequence.",
|
|
138
|
+
"On ordered-list controls, Arrow Up, Arrow Down, Arrow Left, or Arrow Right reorders the focused region.",
|
|
139
|
+
"On ordered-list controls, Delete or Backspace removes the region from the sequence.",
|
|
140
|
+
"Arrow icon buttons provide an explicit move-button fallback.",
|
|
141
|
+
"Selection count and reordering are announced in a polite live region.",
|
|
142
|
+
],
|
|
143
|
+
requiredStates: [
|
|
144
|
+
"aria-pressed on hotspots",
|
|
145
|
+
"position in accessible name",
|
|
146
|
+
"selection summary",
|
|
120
147
|
"disabled",
|
|
121
148
|
"aria-invalid",
|
|
122
149
|
"aria-describedby",
|
|
@@ -235,13 +262,20 @@ function contractForInteraction(interactionType) {
|
|
|
235
262
|
return {
|
|
236
263
|
...base,
|
|
237
264
|
primaryRole: "img",
|
|
238
|
-
focusStrategy: "Focus lands on the drawing surface and then on auxiliary commands.",
|
|
265
|
+
focusStrategy: "Focus lands on the drawing surface and then on auxiliary commands; the live canvas renders as a light surface independent of page color scheme.",
|
|
239
266
|
keyboardModel: [
|
|
240
267
|
"Pointer input draws freehand strokes.",
|
|
241
268
|
"Enter or Space creates a deterministic keyboard stroke.",
|
|
242
269
|
"Clear drawing removes all strokes.",
|
|
270
|
+
"The live drawing surface uses a light canvas and dark pen so strokes stay visible when the page is in dark mode.",
|
|
271
|
+
],
|
|
272
|
+
requiredStates: [
|
|
273
|
+
"accessible name",
|
|
274
|
+
"light canvas rendering",
|
|
275
|
+
"dark pen on light canvas",
|
|
276
|
+
"aria-invalid",
|
|
277
|
+
"aria-describedby",
|
|
243
278
|
],
|
|
244
|
-
requiredStates: ["accessible name", "aria-invalid", "aria-describedby"],
|
|
245
279
|
};
|
|
246
280
|
}
|
|
247
281
|
if (interactionType === "upload") {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@longsightgroup/qti3-a11y",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Accessibility contracts and proof metadata for qti3 QTI 3 item interactions.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"a11y",
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"type": "module",
|
|
37
37
|
"exports": {
|
|
38
38
|
".": {
|
|
39
|
-
"types": "./
|
|
39
|
+
"types": "./src/index.ts",
|
|
40
40
|
"import": "./dist/index.js"
|
|
41
41
|
}
|
|
42
42
|
},
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"registry": "https://registry.npmjs.org"
|
|
46
46
|
},
|
|
47
47
|
"dependencies": {
|
|
48
|
-
"@longsightgroup/qti3-core": "0.
|
|
48
|
+
"@longsightgroup/qti3-core": "0.3.0"
|
|
49
49
|
},
|
|
50
50
|
"scripts": {}
|
|
51
51
|
}
|
package/src/index.ts
CHANGED
|
@@ -148,7 +148,7 @@ function contractForInteraction(interactionType: QtiInteractionType): Interactio
|
|
|
148
148
|
};
|
|
149
149
|
}
|
|
150
150
|
|
|
151
|
-
if (interactionType === "order"
|
|
151
|
+
if (interactionType === "order") {
|
|
152
152
|
return {
|
|
153
153
|
...base,
|
|
154
154
|
primaryRole: "group",
|
|
@@ -156,9 +156,38 @@ function contractForInteraction(interactionType: QtiInteractionType): Interactio
|
|
|
156
156
|
"Tab moves through each item handle and its move buttons.",
|
|
157
157
|
"Arrow Up, Arrow Down, Arrow Left, or Arrow Right reorders the focused item handle.",
|
|
158
158
|
"Arrow icon buttons provide an explicit move-button fallback.",
|
|
159
|
+
"Adjacent moves are announced directionally in a polite live region; larger jumps announce the new position.",
|
|
159
160
|
],
|
|
160
161
|
requiredStates: [
|
|
161
162
|
"position in accessible name",
|
|
163
|
+
"reorder announcement",
|
|
164
|
+
"disabled",
|
|
165
|
+
"aria-invalid",
|
|
166
|
+
"aria-describedby",
|
|
167
|
+
],
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
if (interactionType === "graphicOrder") {
|
|
172
|
+
return {
|
|
173
|
+
...base,
|
|
174
|
+
primaryRole: "group",
|
|
175
|
+
focusStrategy:
|
|
176
|
+
"Focus moves through graphic hotspot buttons and ordered-list controls; the selection summary is a live region, not a tab stop.",
|
|
177
|
+
keyboardModel: [
|
|
178
|
+
"Tab moves through hotspot buttons, ordered-list controls, and remove buttons.",
|
|
179
|
+
"On hotspot buttons, Enter or Space adds the region to the sequence.",
|
|
180
|
+
"On hotspot buttons, Arrow Up, Arrow Down, Arrow Left, or Arrow Right moves focus between hotspots.",
|
|
181
|
+
"On hotspot buttons, Delete or Backspace removes the region from the sequence.",
|
|
182
|
+
"On ordered-list controls, Arrow Up, Arrow Down, Arrow Left, or Arrow Right reorders the focused region.",
|
|
183
|
+
"On ordered-list controls, Delete or Backspace removes the region from the sequence.",
|
|
184
|
+
"Arrow icon buttons provide an explicit move-button fallback.",
|
|
185
|
+
"Selection count and reordering are announced in a polite live region.",
|
|
186
|
+
],
|
|
187
|
+
requiredStates: [
|
|
188
|
+
"aria-pressed on hotspots",
|
|
189
|
+
"position in accessible name",
|
|
190
|
+
"selection summary",
|
|
162
191
|
"disabled",
|
|
163
192
|
"aria-invalid",
|
|
164
193
|
"aria-describedby",
|
|
@@ -289,13 +318,21 @@ function contractForInteraction(interactionType: QtiInteractionType): Interactio
|
|
|
289
318
|
return {
|
|
290
319
|
...base,
|
|
291
320
|
primaryRole: "img",
|
|
292
|
-
focusStrategy:
|
|
321
|
+
focusStrategy:
|
|
322
|
+
"Focus lands on the drawing surface and then on auxiliary commands; the live canvas renders as a light surface independent of page color scheme.",
|
|
293
323
|
keyboardModel: [
|
|
294
324
|
"Pointer input draws freehand strokes.",
|
|
295
325
|
"Enter or Space creates a deterministic keyboard stroke.",
|
|
296
326
|
"Clear drawing removes all strokes.",
|
|
327
|
+
"The live drawing surface uses a light canvas and dark pen so strokes stay visible when the page is in dark mode.",
|
|
328
|
+
],
|
|
329
|
+
requiredStates: [
|
|
330
|
+
"accessible name",
|
|
331
|
+
"light canvas rendering",
|
|
332
|
+
"dark pen on light canvas",
|
|
333
|
+
"aria-invalid",
|
|
334
|
+
"aria-describedby",
|
|
297
335
|
],
|
|
298
|
-
requiredStates: ["accessible name", "aria-invalid", "aria-describedby"],
|
|
299
336
|
};
|
|
300
337
|
}
|
|
301
338
|
|