ember-aria-voyager 1.0.1 → 1.2.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/README.md +1 -0
- package/dist/{aria-tablist-Bpm0pW99.d.cts → aria-tablist-BjAobkb7.d.cts} +6 -2
- package/dist/{aria-tablist-ZH-aeJQW.d.mts → aria-tablist-DExQ2kKO.d.mts} +6 -2
- package/dist/index.cjs +14 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.mjs +14 -1
- package/dist/template-registry.d.cts +1 -1
- package/dist/template-registry.d.mts +1 -1
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import Modifier, { ArgsFor, NamedArgs, PositionalArgs } from "ember-modifier";
|
|
2
2
|
import Owner from "@ember/owner";
|
|
3
|
-
import { Orientation, TablistBehavior } from "aria-voyager";
|
|
3
|
+
import { ListboxBehavior, Orientation, TablistBehavior } from "aria-voyager";
|
|
4
4
|
|
|
5
5
|
//#region src/modifiers/aria-group.d.ts
|
|
6
6
|
interface GroupSignature<T> {
|
|
@@ -93,6 +93,7 @@ type ActivateHandler<T> = {
|
|
|
93
93
|
};
|
|
94
94
|
type CheckHandler<T> = {
|
|
95
95
|
check?: (selection: T[]) => void;
|
|
96
|
+
checks?: T[];
|
|
96
97
|
};
|
|
97
98
|
type SingleSelectionHandler<T> = {
|
|
98
99
|
multi?: false;
|
|
@@ -107,8 +108,9 @@ type MultiSelectionHandler<T> = {
|
|
|
107
108
|
type SelectionHandler<T> = SingleSelectionHandler<T> | MultiSelectionHandler<T>;
|
|
108
109
|
//#endregion
|
|
109
110
|
//#region src/modifiers/aria-listbox.d.ts
|
|
110
|
-
type ListboxOptions<T> = Simplify<SelectionHandler<T> & (Items<T> | Partial<Items<T>>) & ActivateHandler<T> & {
|
|
111
|
+
type ListboxOptions<T> = Simplify<SelectionHandler<T> & (Items<T> | Partial<Items<T>>) & ActivateHandler<T> & CheckHandler<T> & {
|
|
111
112
|
disabled?: boolean;
|
|
113
|
+
behavior?: ListboxBehavior;
|
|
112
114
|
}>;
|
|
113
115
|
interface ListboxSignature<T> {
|
|
114
116
|
Args: {
|
|
@@ -124,6 +126,7 @@ declare class ListboxModifier<T> extends Modifier<ListboxSignature<T>> {
|
|
|
124
126
|
private prevSelection?;
|
|
125
127
|
private prevMulti?;
|
|
126
128
|
private prevDisabled?;
|
|
129
|
+
private prevChecks?;
|
|
127
130
|
constructor(owner: Owner, args: ArgsFor<ListboxSignature<T>>);
|
|
128
131
|
modify(element: Element, _: PositionalArgs<ListboxSignature<T>>, options: NamedArgs<ListboxSignature<T>>): void;
|
|
129
132
|
}
|
|
@@ -145,6 +148,7 @@ declare class MenuModifier<T> extends Modifier<MenuSignature<T>> {
|
|
|
145
148
|
private emitter;
|
|
146
149
|
private prevItems?;
|
|
147
150
|
private prevDisabled?;
|
|
151
|
+
private prevChecks?;
|
|
148
152
|
constructor(owner: Owner, args: ArgsFor<MenuSignature<T>>);
|
|
149
153
|
modify(element: Element, _: PositionalArgs<MenuSignature<T>>, options: NamedArgs<MenuSignature<T>>): void;
|
|
150
154
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IndexEmitStrategy, ItemEmitStrategy, Orientation, TablistBehavior } from "aria-voyager";
|
|
1
|
+
import { IndexEmitStrategy, ItemEmitStrategy, ListboxBehavior, Orientation, TablistBehavior } from "aria-voyager";
|
|
2
2
|
import Modifier, { ArgsFor, NamedArgs, PositionalArgs } from "ember-modifier";
|
|
3
3
|
import Owner from "@ember/owner";
|
|
4
4
|
|
|
@@ -93,6 +93,7 @@ type ActivateHandler<T> = {
|
|
|
93
93
|
};
|
|
94
94
|
type CheckHandler<T> = {
|
|
95
95
|
check?: (selection: T[]) => void;
|
|
96
|
+
checks?: T[];
|
|
96
97
|
};
|
|
97
98
|
type SingleSelectionHandler<T> = {
|
|
98
99
|
multi?: false;
|
|
@@ -107,8 +108,9 @@ type MultiSelectionHandler<T> = {
|
|
|
107
108
|
type SelectionHandler<T> = SingleSelectionHandler<T> | MultiSelectionHandler<T>;
|
|
108
109
|
//#endregion
|
|
109
110
|
//#region src/modifiers/aria-listbox.d.ts
|
|
110
|
-
type ListboxOptions<T> = Simplify<SelectionHandler<T> & (Items<T> | Partial<Items<T>>) & ActivateHandler<T> & {
|
|
111
|
+
type ListboxOptions<T> = Simplify<SelectionHandler<T> & (Items<T> | Partial<Items<T>>) & ActivateHandler<T> & CheckHandler<T> & {
|
|
111
112
|
disabled?: boolean;
|
|
113
|
+
behavior?: ListboxBehavior;
|
|
112
114
|
}>;
|
|
113
115
|
interface ListboxSignature<T> {
|
|
114
116
|
Args: {
|
|
@@ -124,6 +126,7 @@ declare class ListboxModifier<T> extends Modifier<ListboxSignature<T>> {
|
|
|
124
126
|
private prevSelection?;
|
|
125
127
|
private prevMulti?;
|
|
126
128
|
private prevDisabled?;
|
|
129
|
+
private prevChecks?;
|
|
127
130
|
constructor(owner: Owner, args: ArgsFor<ListboxSignature<T>>);
|
|
128
131
|
modify(element: Element, _: PositionalArgs<ListboxSignature<T>>, options: NamedArgs<ListboxSignature<T>>): void;
|
|
129
132
|
}
|
|
@@ -145,6 +148,7 @@ declare class MenuModifier<T> extends Modifier<MenuSignature<T>> {
|
|
|
145
148
|
private emitter;
|
|
146
149
|
private prevItems?;
|
|
147
150
|
private prevDisabled?;
|
|
151
|
+
private prevChecks?;
|
|
148
152
|
constructor(owner: Owner, args: ArgsFor<MenuSignature<T>>);
|
|
149
153
|
modify(element: Element, _: PositionalArgs<MenuSignature<T>>, options: NamedArgs<MenuSignature<T>>): void;
|
|
150
154
|
}
|
package/dist/index.cjs
CHANGED
|
@@ -250,6 +250,7 @@ var ListboxModifier = class extends ember_modifier.default {
|
|
|
250
250
|
prevSelection;
|
|
251
251
|
prevMulti;
|
|
252
252
|
prevDisabled;
|
|
253
|
+
prevChecks;
|
|
253
254
|
constructor(owner, args) {
|
|
254
255
|
super(owner, args);
|
|
255
256
|
(0, _ember_destroyable.registerDestructor)(this, () => {
|
|
@@ -259,7 +260,10 @@ var ListboxModifier = class extends ember_modifier.default {
|
|
|
259
260
|
modify(element, _, options) {
|
|
260
261
|
if (!this.listbox) {
|
|
261
262
|
this.updater = new aria_voyager.ReactiveUpdateStrategy();
|
|
262
|
-
this.listbox = new aria_voyager.Listbox(element, {
|
|
263
|
+
this.listbox = new aria_voyager.Listbox(element, {
|
|
264
|
+
updater: this.updater,
|
|
265
|
+
behavior: { check: options.behavior?.check }
|
|
266
|
+
});
|
|
263
267
|
}
|
|
264
268
|
if (options.items && !(this.emitter instanceof aria_voyager.IndexEmitStrategy)) this.emitter = createIndexEmitter(this.listbox, options);
|
|
265
269
|
else if (!options.items && !(this.emitter instanceof aria_voyager.ItemEmitStrategy)) this.emitter = createItemEmitter(this.listbox, options);
|
|
@@ -271,6 +275,10 @@ var ListboxModifier = class extends ember_modifier.default {
|
|
|
271
275
|
this.updater.updateSelection();
|
|
272
276
|
this.prevSelection = asArray(options.selection);
|
|
273
277
|
}
|
|
278
|
+
if (options.checks && !isEqual(this.prevChecks, options.checks)) {
|
|
279
|
+
this.updater.updateChecks();
|
|
280
|
+
this.prevChecks = options.checks;
|
|
281
|
+
}
|
|
274
282
|
let optionsChanged = false;
|
|
275
283
|
if (this.prevMulti !== options.multi) {
|
|
276
284
|
if (options.multi) element.setAttribute("aria-multiselectable", "true");
|
|
@@ -293,6 +301,7 @@ var MenuModifier = class extends ember_modifier.default {
|
|
|
293
301
|
menu;
|
|
294
302
|
prevItems;
|
|
295
303
|
prevDisabled;
|
|
304
|
+
prevChecks;
|
|
296
305
|
constructor(owner, args) {
|
|
297
306
|
super(owner, args);
|
|
298
307
|
(0, _ember_destroyable.registerDestructor)(this, () => {
|
|
@@ -318,6 +327,10 @@ var MenuModifier = class extends ember_modifier.default {
|
|
|
318
327
|
this.updater.updateItems();
|
|
319
328
|
this.prevItems = [...options.items];
|
|
320
329
|
}
|
|
330
|
+
if (options.checks && !isEqual(this.prevChecks, options.checks)) {
|
|
331
|
+
this.updater.updateChecks();
|
|
332
|
+
this.prevChecks = options.checks;
|
|
333
|
+
}
|
|
321
334
|
let optionsChanged = false;
|
|
322
335
|
if (this.prevDisabled !== options.disabled) {
|
|
323
336
|
if (options.disabled) element.setAttribute("aria-disabled", "true");
|
package/dist/index.d.cts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as GroupModifier, i as ListboxModifier, n as RadioGroupModifier, r as MenuModifier, t as TablistModifier } from "./aria-tablist-
|
|
1
|
+
import { a as GroupModifier, i as ListboxModifier, n as RadioGroupModifier, r as MenuModifier, t as TablistModifier } from "./aria-tablist-BjAobkb7.cjs";
|
|
2
2
|
import { Orientation, TablistBehavior } from "aria-voyager";
|
|
3
3
|
export { type Orientation, type TablistBehavior, GroupModifier as ariaGroup, GroupModifier as group, ListboxModifier as ariaListbox, ListboxModifier as listbox, MenuModifier as ariaMenu, MenuModifier as menu, RadioGroupModifier as ariaRadioGroup, RadioGroupModifier as radiogroup, TablistModifier as ariaTablist, TablistModifier as tablist };
|
package/dist/index.d.mts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as GroupModifier, i as ListboxModifier, n as RadioGroupModifier, r as MenuModifier, t as TablistModifier } from "./aria-tablist-
|
|
1
|
+
import { a as GroupModifier, i as ListboxModifier, n as RadioGroupModifier, r as MenuModifier, t as TablistModifier } from "./aria-tablist-DExQ2kKO.mjs";
|
|
2
2
|
import { Orientation, TablistBehavior } from "aria-voyager";
|
|
3
3
|
export { type Orientation, type TablistBehavior, GroupModifier as ariaGroup, GroupModifier as group, ListboxModifier as ariaListbox, ListboxModifier as listbox, MenuModifier as ariaMenu, MenuModifier as menu, RadioGroupModifier as ariaRadioGroup, RadioGroupModifier as radiogroup, TablistModifier as ariaTablist, TablistModifier as tablist };
|
package/dist/index.mjs
CHANGED
|
@@ -247,6 +247,7 @@ var ListboxModifier = class extends Modifier {
|
|
|
247
247
|
prevSelection;
|
|
248
248
|
prevMulti;
|
|
249
249
|
prevDisabled;
|
|
250
|
+
prevChecks;
|
|
250
251
|
constructor(owner, args) {
|
|
251
252
|
super(owner, args);
|
|
252
253
|
registerDestructor(this, () => {
|
|
@@ -256,7 +257,10 @@ var ListboxModifier = class extends Modifier {
|
|
|
256
257
|
modify(element, _, options) {
|
|
257
258
|
if (!this.listbox) {
|
|
258
259
|
this.updater = new ReactiveUpdateStrategy();
|
|
259
|
-
this.listbox = new Listbox(element, {
|
|
260
|
+
this.listbox = new Listbox(element, {
|
|
261
|
+
updater: this.updater,
|
|
262
|
+
behavior: { check: options.behavior?.check }
|
|
263
|
+
});
|
|
260
264
|
}
|
|
261
265
|
if (options.items && !(this.emitter instanceof IndexEmitStrategy)) this.emitter = createIndexEmitter(this.listbox, options);
|
|
262
266
|
else if (!options.items && !(this.emitter instanceof ItemEmitStrategy)) this.emitter = createItemEmitter(this.listbox, options);
|
|
@@ -268,6 +272,10 @@ var ListboxModifier = class extends Modifier {
|
|
|
268
272
|
this.updater.updateSelection();
|
|
269
273
|
this.prevSelection = asArray(options.selection);
|
|
270
274
|
}
|
|
275
|
+
if (options.checks && !isEqual(this.prevChecks, options.checks)) {
|
|
276
|
+
this.updater.updateChecks();
|
|
277
|
+
this.prevChecks = options.checks;
|
|
278
|
+
}
|
|
271
279
|
let optionsChanged = false;
|
|
272
280
|
if (this.prevMulti !== options.multi) {
|
|
273
281
|
if (options.multi) element.setAttribute("aria-multiselectable", "true");
|
|
@@ -290,6 +298,7 @@ var MenuModifier = class extends Modifier {
|
|
|
290
298
|
menu;
|
|
291
299
|
prevItems;
|
|
292
300
|
prevDisabled;
|
|
301
|
+
prevChecks;
|
|
293
302
|
constructor(owner, args) {
|
|
294
303
|
super(owner, args);
|
|
295
304
|
registerDestructor(this, () => {
|
|
@@ -315,6 +324,10 @@ var MenuModifier = class extends Modifier {
|
|
|
315
324
|
this.updater.updateItems();
|
|
316
325
|
this.prevItems = [...options.items];
|
|
317
326
|
}
|
|
327
|
+
if (options.checks && !isEqual(this.prevChecks, options.checks)) {
|
|
328
|
+
this.updater.updateChecks();
|
|
329
|
+
this.prevChecks = options.checks;
|
|
330
|
+
}
|
|
318
331
|
let optionsChanged = false;
|
|
319
332
|
if (this.prevDisabled !== options.disabled) {
|
|
320
333
|
if (options.disabled) element.setAttribute("aria-disabled", "true");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as GroupModifier, i as ListboxModifier, n as RadioGroupModifier, r as MenuModifier, t as TablistModifier } from "./aria-tablist-
|
|
1
|
+
import { a as GroupModifier, i as ListboxModifier, n as RadioGroupModifier, r as MenuModifier, t as TablistModifier } from "./aria-tablist-BjAobkb7.cjs";
|
|
2
2
|
|
|
3
3
|
//#region src/template-registry.d.ts
|
|
4
4
|
interface AriaVoyagerRegistry {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as GroupModifier, i as ListboxModifier, n as RadioGroupModifier, r as MenuModifier, t as TablistModifier } from "./aria-tablist-
|
|
1
|
+
import { a as GroupModifier, i as ListboxModifier, n as RadioGroupModifier, r as MenuModifier, t as TablistModifier } from "./aria-tablist-DExQ2kKO.mjs";
|
|
2
2
|
|
|
3
3
|
//#region src/template-registry.d.ts
|
|
4
4
|
interface AriaVoyagerRegistry {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ember-aria-voyager",
|
|
3
|
-
"version": "1.0
|
|
3
|
+
"version": "1.2.0",
|
|
4
4
|
"description": "Navigation patterns for various aria roles and features in ember.js",
|
|
5
5
|
"author": "gossi",
|
|
6
6
|
"license": "MIT",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"@embroider/addon-shim": "^1.10.0",
|
|
42
42
|
"dom-element-descriptors": "^0.5.1",
|
|
43
43
|
"ember-modifier": "^4.2.2",
|
|
44
|
-
"aria-voyager": "1.0
|
|
44
|
+
"aria-voyager": "1.2.0"
|
|
45
45
|
},
|
|
46
46
|
"peerDependencies": {
|
|
47
47
|
"@ember/test-helpers": "^2.9.3 || ^3.0.0 || ^4.0.0 || ^5.0.0",
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
"@gossi/config-eslint": "^1.3.4",
|
|
75
75
|
"@gossi/config-prettier": "^1.2.2",
|
|
76
76
|
"@gossi/config-template-lint": "^1.2.3",
|
|
77
|
-
"@rollup/plugin-babel": "^7.
|
|
77
|
+
"@rollup/plugin-babel": "^7.1.0",
|
|
78
78
|
"@types/qunit": "2.19.14",
|
|
79
79
|
"@types/sinon": "21.0.1",
|
|
80
80
|
"babel-plugin-ember-template-compilation": "^4.0.0",
|
|
@@ -94,7 +94,7 @@
|
|
|
94
94
|
"qunit-dom": "3.5.0",
|
|
95
95
|
"sinon": "^21.0.3",
|
|
96
96
|
"testem": "^3.18.0",
|
|
97
|
-
"tsdown": "0.22.
|
|
97
|
+
"tsdown": "0.22.3",
|
|
98
98
|
"type-fest": "^5.7.0",
|
|
99
99
|
"typescript": "6.0.3",
|
|
100
100
|
"vite": "8.0.16"
|