aria-ease 6.2.1 → 6.2.3

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 (41) hide show
  1. package/README.md +5 -17
  2. package/bin/cli.cjs +227 -115
  3. package/bin/cli.js +1 -1
  4. package/bin/{contractTestRunnerPlaywright-HL2VPEEV.js → contractTestRunnerPlaywright-ACAWN34W.js} +227 -115
  5. package/bin/{test-HH2EW2NM.js → test-A3ESFXOR.js} +1 -1
  6. package/dist/{contractTestRunnerPlaywright-EXEBWWPC.js → contractTestRunnerPlaywright-O7FF7GV4.js} +227 -115
  7. package/dist/index.cjs +229 -174
  8. package/dist/index.d.cts +10 -0
  9. package/dist/index.d.ts +10 -0
  10. package/dist/index.js +3 -60
  11. package/dist/src/{Types.d-CxWrr421.d.ts → Types.d-CRjhbrcw.d.cts} +10 -0
  12. package/dist/src/{Types.d-CxWrr421.d.cts → Types.d-CRjhbrcw.d.ts} +10 -0
  13. package/dist/src/accordion/index.d.cts +1 -1
  14. package/dist/src/accordion/index.d.ts +1 -1
  15. package/dist/src/block/index.d.cts +1 -1
  16. package/dist/src/block/index.d.ts +1 -1
  17. package/dist/src/checkbox/index.cjs +0 -22
  18. package/dist/src/checkbox/index.d.cts +1 -1
  19. package/dist/src/checkbox/index.d.ts +1 -1
  20. package/dist/src/checkbox/index.js +0 -22
  21. package/dist/src/combobox/index.cjs +1 -1
  22. package/dist/src/combobox/index.d.cts +1 -1
  23. package/dist/src/combobox/index.d.ts +1 -1
  24. package/dist/src/combobox/index.js +1 -1
  25. package/dist/src/menu/index.d.cts +1 -1
  26. package/dist/src/menu/index.d.ts +1 -1
  27. package/dist/src/radio/index.cjs +1 -8
  28. package/dist/src/radio/index.d.cts +1 -1
  29. package/dist/src/radio/index.d.ts +1 -1
  30. package/dist/src/radio/index.js +1 -8
  31. package/dist/src/toggle/index.cjs +0 -28
  32. package/dist/src/toggle/index.d.cts +1 -1
  33. package/dist/src/toggle/index.d.ts +1 -1
  34. package/dist/src/toggle/index.js +0 -28
  35. package/dist/src/utils/test/{contractTestRunnerPlaywright-LJHY3AB4.js → contractTestRunnerPlaywright-7BPRTIN4.js} +227 -115
  36. package/dist/src/utils/test/contracts/AccordionContract.json +1 -0
  37. package/dist/src/utils/test/contracts/ComboboxContract.json +1 -0
  38. package/dist/src/utils/test/contracts/MenuContract.json +1 -0
  39. package/dist/src/utils/test/index.cjs +227 -115
  40. package/dist/src/utils/test/index.js +1 -1
  41. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -423,28 +423,6 @@ function makeCheckboxAccessible({ checkboxGroupId, checkboxesClass }) {
423
423
  event.preventDefault();
424
424
  toggleCheckbox(index);
425
425
  break;
426
- case "ArrowDown":
427
- event.preventDefault();
428
- {
429
- const nextIndex = (index + 1) % checkboxes.length;
430
- checkboxes[nextIndex].focus();
431
- }
432
- break;
433
- case "ArrowUp":
434
- event.preventDefault();
435
- {
436
- const prevIndex = (index - 1 + checkboxes.length) % checkboxes.length;
437
- checkboxes[prevIndex].focus();
438
- }
439
- break;
440
- case "Home":
441
- event.preventDefault();
442
- checkboxes[0].focus();
443
- break;
444
- case "End":
445
- event.preventDefault();
446
- checkboxes[checkboxes.length - 1].focus();
447
- break;
448
426
  }
449
427
  };
450
428
  }
@@ -787,17 +765,10 @@ function makeRadioAccessible({ radioGroupId, radiosClass, defaultSelectedIndex =
787
765
  selectRadio(nextIndex);
788
766
  break;
789
767
  case " ":
768
+ case "Enter":
790
769
  event.preventDefault();
791
770
  selectRadio(index);
792
771
  break;
793
- case "Home":
794
- event.preventDefault();
795
- selectRadio(0);
796
- break;
797
- case "End":
798
- event.preventDefault();
799
- selectRadio(radios.length - 1);
800
- break;
801
772
  }
802
773
  };
803
774
  }
@@ -909,34 +880,6 @@ function makeToggleAccessible({ toggleId, togglesClass, isSingleToggle = true })
909
880
  event.preventDefault();
910
881
  toggleButton(index);
911
882
  break;
912
- case "ArrowDown":
913
- case "ArrowRight":
914
- if (!isSingleToggle && toggles.length > 1) {
915
- event.preventDefault();
916
- const nextIndex = (index + 1) % toggles.length;
917
- toggles[nextIndex].focus();
918
- }
919
- break;
920
- case "ArrowUp":
921
- case "ArrowLeft":
922
- if (!isSingleToggle && toggles.length > 1) {
923
- event.preventDefault();
924
- const prevIndex = (index - 1 + toggles.length) % toggles.length;
925
- toggles[prevIndex].focus();
926
- }
927
- break;
928
- case "Home":
929
- if (!isSingleToggle && toggles.length > 1) {
930
- event.preventDefault();
931
- toggles[0].focus();
932
- }
933
- break;
934
- case "End":
935
- if (!isSingleToggle && toggles.length > 1) {
936
- event.preventDefault();
937
- toggles[toggles.length - 1].focus();
938
- }
939
- break;
940
883
  }
941
884
  };
942
885
  }
@@ -1225,7 +1168,7 @@ function makeComboboxAccessible({ comboboxInputId, comboboxButtonId, listBoxId,
1225
1168
  activeIndex = -1;
1226
1169
  setActiveDescendant(-1);
1227
1170
  }
1228
- return { cleanup, refresh };
1171
+ return { cleanup, refresh, openListbox, closeListbox };
1229
1172
  }
1230
1173
 
1231
1174
  // src/utils/test/src/test.ts
@@ -1337,7 +1280,7 @@ Error: ${error instanceof Error ? error.message : String(error)}`
1337
1280
  const devServerUrl = await checkDevServer(url);
1338
1281
  if (devServerUrl) {
1339
1282
  console.log(`\u{1F3AD} Running Playwright tests on ${devServerUrl}`);
1340
- const { runContractTestsPlaywright } = await import("./contractTestRunnerPlaywright-EXEBWWPC.js");
1283
+ const { runContractTestsPlaywright } = await import("./contractTestRunnerPlaywright-O7FF7GV4.js");
1341
1284
  contract = await runContractTestsPlaywright(componentName, devServerUrl);
1342
1285
  } else {
1343
1286
  throw new Error(
@@ -1,25 +1,35 @@
1
1
  interface AccessibilityInstance {
2
2
  cleanup: () => void;
3
3
  refresh?: () => void;
4
+
5
+ //Menu methods
4
6
  openMenu?: () => void;
5
7
  closeMenu?: () => void;
8
+
6
9
  // Accordion methods
7
10
  expandItem?: (index: number) => void;
8
11
  collapseItem?: (index: number) => void;
9
12
  toggleItem?: (index: number) => void;
13
+
10
14
  // Radio methods
11
15
  selectRadio?: (index: number) => void;
12
16
  getSelectedIndex?: () => number;
17
+
13
18
  // Checkbox methods
14
19
  toggleCheckbox?: (index: number) => void;
15
20
  setCheckboxState?: (index: number, checked: boolean) => void;
16
21
  getCheckedStates?: () => boolean[];
17
22
  getCheckedIndices?: () => number[];
23
+
18
24
  // Toggle methods
19
25
  toggleButton?: (index: number) => void;
20
26
  setPressed?: (index: number, pressed: boolean) => void;
21
27
  getPressedStates?: () => boolean[];
22
28
  getPressedIndices?: () => number[];
29
+
30
+ //Combobox methods
31
+ openListbox?: () => void;
32
+ closeListbox?: () => void;
23
33
  }
24
34
 
25
35
  interface AccordionConfig {
@@ -1,25 +1,35 @@
1
1
  interface AccessibilityInstance {
2
2
  cleanup: () => void;
3
3
  refresh?: () => void;
4
+
5
+ //Menu methods
4
6
  openMenu?: () => void;
5
7
  closeMenu?: () => void;
8
+
6
9
  // Accordion methods
7
10
  expandItem?: (index: number) => void;
8
11
  collapseItem?: (index: number) => void;
9
12
  toggleItem?: (index: number) => void;
13
+
10
14
  // Radio methods
11
15
  selectRadio?: (index: number) => void;
12
16
  getSelectedIndex?: () => number;
17
+
13
18
  // Checkbox methods
14
19
  toggleCheckbox?: (index: number) => void;
15
20
  setCheckboxState?: (index: number, checked: boolean) => void;
16
21
  getCheckedStates?: () => boolean[];
17
22
  getCheckedIndices?: () => number[];
23
+
18
24
  // Toggle methods
19
25
  toggleButton?: (index: number) => void;
20
26
  setPressed?: (index: number, pressed: boolean) => void;
21
27
  getPressedStates?: () => boolean[];
22
28
  getPressedIndices?: () => number[];
29
+
30
+ //Combobox methods
31
+ openListbox?: () => void;
32
+ closeListbox?: () => void;
23
33
  }
24
34
 
25
35
  interface AccordionConfig {
@@ -1,4 +1,4 @@
1
- import { A as AccordionConfig, a as AccessibilityInstance } from '../Types.d-CxWrr421.cjs';
1
+ import { A as AccordionConfig, a as AccessibilityInstance } from '../Types.d-CRjhbrcw.cjs';
2
2
 
3
3
  /**
4
4
  * Makes an accordion accessible by managing ARIA attributes, keyboard navigation, and state.
@@ -1,4 +1,4 @@
1
- import { A as AccordionConfig, a as AccessibilityInstance } from '../Types.d-CxWrr421.js';
1
+ import { A as AccordionConfig, a as AccessibilityInstance } from '../Types.d-CRjhbrcw.js';
2
2
 
3
3
  /**
4
4
  * Makes an accordion accessible by managing ARIA attributes, keyboard navigation, and state.
@@ -1,4 +1,4 @@
1
- import { a as AccessibilityInstance } from '../Types.d-CxWrr421.cjs';
1
+ import { a as AccessibilityInstance } from '../Types.d-CRjhbrcw.cjs';
2
2
 
3
3
  /**
4
4
  * Adds keyboard interaction to block. The block traps focus and can be interacted with using the keyboard.
@@ -1,4 +1,4 @@
1
- import { a as AccessibilityInstance } from '../Types.d-CxWrr421.js';
1
+ import { a as AccessibilityInstance } from '../Types.d-CRjhbrcw.js';
2
2
 
3
3
  /**
4
4
  * Adds keyboard interaction to block. The block traps focus and can be interacted with using the keyboard.
@@ -59,28 +59,6 @@ function makeCheckboxAccessible({ checkboxGroupId, checkboxesClass }) {
59
59
  event.preventDefault();
60
60
  toggleCheckbox(index);
61
61
  break;
62
- case "ArrowDown":
63
- event.preventDefault();
64
- {
65
- const nextIndex = (index + 1) % checkboxes.length;
66
- checkboxes[nextIndex].focus();
67
- }
68
- break;
69
- case "ArrowUp":
70
- event.preventDefault();
71
- {
72
- const prevIndex = (index - 1 + checkboxes.length) % checkboxes.length;
73
- checkboxes[prevIndex].focus();
74
- }
75
- break;
76
- case "Home":
77
- event.preventDefault();
78
- checkboxes[0].focus();
79
- break;
80
- case "End":
81
- event.preventDefault();
82
- checkboxes[checkboxes.length - 1].focus();
83
- break;
84
62
  }
85
63
  };
86
64
  }
@@ -1,4 +1,4 @@
1
- import { a as AccessibilityInstance } from '../Types.d-CxWrr421.cjs';
1
+ import { a as AccessibilityInstance } from '../Types.d-CRjhbrcw.cjs';
2
2
 
3
3
  /**
4
4
  * Makes a checkbox group accessible by managing ARIA attributes and keyboard navigation.
@@ -1,4 +1,4 @@
1
- import { a as AccessibilityInstance } from '../Types.d-CxWrr421.js';
1
+ import { a as AccessibilityInstance } from '../Types.d-CRjhbrcw.js';
2
2
 
3
3
  /**
4
4
  * Makes a checkbox group accessible by managing ARIA attributes and keyboard navigation.
@@ -57,28 +57,6 @@ function makeCheckboxAccessible({ checkboxGroupId, checkboxesClass }) {
57
57
  event.preventDefault();
58
58
  toggleCheckbox(index);
59
59
  break;
60
- case "ArrowDown":
61
- event.preventDefault();
62
- {
63
- const nextIndex = (index + 1) % checkboxes.length;
64
- checkboxes[nextIndex].focus();
65
- }
66
- break;
67
- case "ArrowUp":
68
- event.preventDefault();
69
- {
70
- const prevIndex = (index - 1 + checkboxes.length) % checkboxes.length;
71
- checkboxes[prevIndex].focus();
72
- }
73
- break;
74
- case "Home":
75
- event.preventDefault();
76
- checkboxes[0].focus();
77
- break;
78
- case "End":
79
- event.preventDefault();
80
- checkboxes[checkboxes.length - 1].focus();
81
- break;
82
60
  }
83
61
  };
84
62
  }
@@ -241,7 +241,7 @@ function makeComboboxAccessible({ comboboxInputId, comboboxButtonId, listBoxId,
241
241
  activeIndex = -1;
242
242
  setActiveDescendant(-1);
243
243
  }
244
- return { cleanup, refresh };
244
+ return { cleanup, refresh, openListbox, closeListbox };
245
245
  }
246
246
 
247
247
  exports.makeComboboxAccessible = makeComboboxAccessible;
@@ -1,4 +1,4 @@
1
- import { C as ComboboxConfig, a as AccessibilityInstance } from '../Types.d-CxWrr421.cjs';
1
+ import { C as ComboboxConfig, a as AccessibilityInstance } from '../Types.d-CRjhbrcw.cjs';
2
2
 
3
3
  /**
4
4
  * Makes a Combobox accessible by adding appropriate ARIA attributes, keyboard interactions and focus management.
@@ -1,4 +1,4 @@
1
- import { C as ComboboxConfig, a as AccessibilityInstance } from '../Types.d-CxWrr421.js';
1
+ import { C as ComboboxConfig, a as AccessibilityInstance } from '../Types.d-CRjhbrcw.js';
2
2
 
3
3
  /**
4
4
  * Makes a Combobox accessible by adding appropriate ARIA attributes, keyboard interactions and focus management.
@@ -239,7 +239,7 @@ function makeComboboxAccessible({ comboboxInputId, comboboxButtonId, listBoxId,
239
239
  activeIndex = -1;
240
240
  setActiveDescendant(-1);
241
241
  }
242
- return { cleanup, refresh };
242
+ return { cleanup, refresh, openListbox, closeListbox };
243
243
  }
244
244
 
245
245
  export { makeComboboxAccessible };
@@ -1,4 +1,4 @@
1
- import { M as MenuConfig, a as AccessibilityInstance } from '../Types.d-CxWrr421.cjs';
1
+ import { M as MenuConfig, a as AccessibilityInstance } from '../Types.d-CRjhbrcw.cjs';
2
2
 
3
3
  /**
4
4
  * Adds keyboard interaction to toggle menu. The menu traps focus and can be interacted with using the keyboard. The first interactive item of the menu has focus when menu open.
@@ -1,4 +1,4 @@
1
- import { M as MenuConfig, a as AccessibilityInstance } from '../Types.d-CxWrr421.js';
1
+ import { M as MenuConfig, a as AccessibilityInstance } from '../Types.d-CRjhbrcw.js';
2
2
 
3
3
  /**
4
4
  * Adds keyboard interaction to toggle menu. The menu traps focus and can be interacted with using the keyboard. The first interactive item of the menu has focus when menu open.
@@ -68,17 +68,10 @@ function makeRadioAccessible({ radioGroupId, radiosClass, defaultSelectedIndex =
68
68
  selectRadio(nextIndex);
69
69
  break;
70
70
  case " ":
71
+ case "Enter":
71
72
  event.preventDefault();
72
73
  selectRadio(index);
73
74
  break;
74
- case "Home":
75
- event.preventDefault();
76
- selectRadio(0);
77
- break;
78
- case "End":
79
- event.preventDefault();
80
- selectRadio(radios.length - 1);
81
- break;
82
75
  }
83
76
  };
84
77
  }
@@ -1,4 +1,4 @@
1
- import { a as AccessibilityInstance } from '../Types.d-CxWrr421.cjs';
1
+ import { a as AccessibilityInstance } from '../Types.d-CRjhbrcw.cjs';
2
2
 
3
3
  /**
4
4
  * Makes a radio group accessible by managing ARIA attributes, keyboard navigation, and state.
@@ -1,4 +1,4 @@
1
- import { a as AccessibilityInstance } from '../Types.d-CxWrr421.js';
1
+ import { a as AccessibilityInstance } from '../Types.d-CRjhbrcw.js';
2
2
 
3
3
  /**
4
4
  * Makes a radio group accessible by managing ARIA attributes, keyboard navigation, and state.
@@ -66,17 +66,10 @@ function makeRadioAccessible({ radioGroupId, radiosClass, defaultSelectedIndex =
66
66
  selectRadio(nextIndex);
67
67
  break;
68
68
  case " ":
69
+ case "Enter":
69
70
  event.preventDefault();
70
71
  selectRadio(index);
71
72
  break;
72
- case "Home":
73
- event.preventDefault();
74
- selectRadio(0);
75
- break;
76
- case "End":
77
- event.preventDefault();
78
- selectRadio(radios.length - 1);
79
- break;
80
73
  }
81
74
  };
82
75
  }
@@ -69,34 +69,6 @@ function makeToggleAccessible({ toggleId, togglesClass, isSingleToggle = true })
69
69
  event.preventDefault();
70
70
  toggleButton(index);
71
71
  break;
72
- case "ArrowDown":
73
- case "ArrowRight":
74
- if (!isSingleToggle && toggles.length > 1) {
75
- event.preventDefault();
76
- const nextIndex = (index + 1) % toggles.length;
77
- toggles[nextIndex].focus();
78
- }
79
- break;
80
- case "ArrowUp":
81
- case "ArrowLeft":
82
- if (!isSingleToggle && toggles.length > 1) {
83
- event.preventDefault();
84
- const prevIndex = (index - 1 + toggles.length) % toggles.length;
85
- toggles[prevIndex].focus();
86
- }
87
- break;
88
- case "Home":
89
- if (!isSingleToggle && toggles.length > 1) {
90
- event.preventDefault();
91
- toggles[0].focus();
92
- }
93
- break;
94
- case "End":
95
- if (!isSingleToggle && toggles.length > 1) {
96
- event.preventDefault();
97
- toggles[toggles.length - 1].focus();
98
- }
99
- break;
100
72
  }
101
73
  };
102
74
  }
@@ -1,4 +1,4 @@
1
- import { a as AccessibilityInstance } from '../Types.d-CxWrr421.cjs';
1
+ import { a as AccessibilityInstance } from '../Types.d-CRjhbrcw.cjs';
2
2
 
3
3
  /**
4
4
  * Makes a toggle button accessible by managing ARIA attributes and keyboard interactions.
@@ -1,4 +1,4 @@
1
- import { a as AccessibilityInstance } from '../Types.d-CxWrr421.js';
1
+ import { a as AccessibilityInstance } from '../Types.d-CRjhbrcw.js';
2
2
 
3
3
  /**
4
4
  * Makes a toggle button accessible by managing ARIA attributes and keyboard interactions.
@@ -67,34 +67,6 @@ function makeToggleAccessible({ toggleId, togglesClass, isSingleToggle = true })
67
67
  event.preventDefault();
68
68
  toggleButton(index);
69
69
  break;
70
- case "ArrowDown":
71
- case "ArrowRight":
72
- if (!isSingleToggle && toggles.length > 1) {
73
- event.preventDefault();
74
- const nextIndex = (index + 1) % toggles.length;
75
- toggles[nextIndex].focus();
76
- }
77
- break;
78
- case "ArrowUp":
79
- case "ArrowLeft":
80
- if (!isSingleToggle && toggles.length > 1) {
81
- event.preventDefault();
82
- const prevIndex = (index - 1 + toggles.length) % toggles.length;
83
- toggles[prevIndex].focus();
84
- }
85
- break;
86
- case "Home":
87
- if (!isSingleToggle && toggles.length > 1) {
88
- event.preventDefault();
89
- toggles[0].focus();
90
- }
91
- break;
92
- case "End":
93
- if (!isSingleToggle && toggles.length > 1) {
94
- event.preventDefault();
95
- toggles[toggles.length - 1].focus();
96
- }
97
- break;
98
70
  }
99
71
  };
100
72
  }