@astryxdesign/core 0.7.6-canary.ae29a6f → 0.7.6-canary.b295cd5

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 (194) hide show
  1. package/dist/Layer/useLayer.d.ts.map +1 -1
  2. package/dist/Layer/useLayer.js +27 -6
  3. package/dist/Markdown/plugins/headingLinks.a11y.chromium.spec.js +1 -1
  4. package/dist/PowerSearch/PowerSearch.d.ts.map +1 -1
  5. package/dist/PowerSearch/PowerSearch.js +37 -30
  6. package/dist/RadioList/RadioListItem.d.ts.map +1 -1
  7. package/dist/RadioList/RadioListItem.js +5 -2
  8. package/dist/Switch/Switch.d.ts.map +1 -1
  9. package/dist/Switch/Switch.js +5 -1
  10. package/dist/Table/Table.d.ts.map +1 -1
  11. package/dist/Table/Table.js +36 -10
  12. package/dist/Table/plugins/sortable/useTableSortable.d.ts.map +1 -1
  13. package/dist/Table/plugins/sortable/useTableSortable.js +46 -58
  14. package/dist/ToggleButton/ToggleButtonGroup.d.ts +7 -1
  15. package/dist/ToggleButton/ToggleButtonGroup.d.ts.map +1 -1
  16. package/dist/ToggleButton/ToggleButtonGroup.js +16 -2
  17. package/dist/Tokenizer/Tokenizer.d.ts.map +1 -1
  18. package/dist/Tokenizer/Tokenizer.js +15 -4
  19. package/dist/Tokenizer/TokenizerClearAllMessageContext.d.ts +2 -0
  20. package/dist/Tokenizer/TokenizerClearAllMessageContext.d.ts.map +1 -0
  21. package/dist/Tokenizer/TokenizerClearAllMessageContext.js +17 -0
  22. package/dist/Typeahead/BaseTypeahead.d.ts +4 -4
  23. package/dist/Typeahead/BaseTypeahead.d.ts.map +1 -1
  24. package/dist/Typeahead/BaseTypeahead.js +43 -7
  25. package/dist/i18n/generated-locales/af-ZA.generated.d.ts.map +1 -1
  26. package/dist/i18n/generated-locales/af-ZA.generated.js +0 -5
  27. package/dist/i18n/generated-locales/ar-SA.generated.d.ts.map +1 -1
  28. package/dist/i18n/generated-locales/ar-SA.generated.js +0 -5
  29. package/dist/i18n/generated-locales/ca-ES.generated.d.ts.map +1 -1
  30. package/dist/i18n/generated-locales/ca-ES.generated.js +0 -5
  31. package/dist/i18n/generated-locales/cs-CZ.generated.d.ts.map +1 -1
  32. package/dist/i18n/generated-locales/cs-CZ.generated.js +0 -5
  33. package/dist/i18n/generated-locales/da-DK.generated.d.ts.map +1 -1
  34. package/dist/i18n/generated-locales/da-DK.generated.js +0 -5
  35. package/dist/i18n/generated-locales/de-DE.generated.d.ts.map +1 -1
  36. package/dist/i18n/generated-locales/de-DE.generated.js +0 -5
  37. package/dist/i18n/generated-locales/el-GR.generated.d.ts.map +1 -1
  38. package/dist/i18n/generated-locales/el-GR.generated.js +0 -5
  39. package/dist/i18n/generated-locales/en.generated.d.ts.map +1 -1
  40. package/dist/i18n/generated-locales/en.generated.js +2 -5
  41. package/dist/i18n/generated-locales/es-ES.generated.d.ts.map +1 -1
  42. package/dist/i18n/generated-locales/es-ES.generated.js +0 -5
  43. package/dist/i18n/generated-locales/fi-FI.generated.d.ts.map +1 -1
  44. package/dist/i18n/generated-locales/fi-FI.generated.js +0 -5
  45. package/dist/i18n/generated-locales/fr-FR.generated.d.ts.map +1 -1
  46. package/dist/i18n/generated-locales/fr-FR.generated.js +0 -5
  47. package/dist/i18n/generated-locales/he-IL.generated.d.ts.map +1 -1
  48. package/dist/i18n/generated-locales/he-IL.generated.js +0 -5
  49. package/dist/i18n/generated-locales/hu-HU.generated.d.ts.map +1 -1
  50. package/dist/i18n/generated-locales/hu-HU.generated.js +0 -5
  51. package/dist/i18n/generated-locales/it-IT.generated.d.ts.map +1 -1
  52. package/dist/i18n/generated-locales/it-IT.generated.js +0 -5
  53. package/dist/i18n/generated-locales/ja-JP.generated.d.ts.map +1 -1
  54. package/dist/i18n/generated-locales/ja-JP.generated.js +0 -5
  55. package/dist/i18n/generated-locales/ko-KR.generated.d.ts.map +1 -1
  56. package/dist/i18n/generated-locales/ko-KR.generated.js +0 -5
  57. package/dist/i18n/generated-locales/nl-NL.generated.d.ts.map +1 -1
  58. package/dist/i18n/generated-locales/nl-NL.generated.js +0 -5
  59. package/dist/i18n/generated-locales/no-NO.generated.d.ts.map +1 -1
  60. package/dist/i18n/generated-locales/no-NO.generated.js +0 -5
  61. package/dist/i18n/generated-locales/pl-PL.generated.d.ts.map +1 -1
  62. package/dist/i18n/generated-locales/pl-PL.generated.js +0 -5
  63. package/dist/i18n/generated-locales/pseudo.generated.d.ts.map +1 -1
  64. package/dist/i18n/generated-locales/pseudo.generated.js +2 -5
  65. package/dist/i18n/generated-locales/pt-BR.generated.d.ts.map +1 -1
  66. package/dist/i18n/generated-locales/pt-BR.generated.js +0 -5
  67. package/dist/i18n/generated-locales/pt-PT.generated.d.ts.map +1 -1
  68. package/dist/i18n/generated-locales/pt-PT.generated.js +0 -5
  69. package/dist/i18n/generated-locales/ro-RO.generated.d.ts.map +1 -1
  70. package/dist/i18n/generated-locales/ro-RO.generated.js +0 -5
  71. package/dist/i18n/generated-locales/ru-RU.generated.d.ts.map +1 -1
  72. package/dist/i18n/generated-locales/ru-RU.generated.js +0 -5
  73. package/dist/i18n/generated-locales/sr-SP.generated.d.ts.map +1 -1
  74. package/dist/i18n/generated-locales/sr-SP.generated.js +0 -5
  75. package/dist/i18n/generated-locales/sv-SE.generated.d.ts.map +1 -1
  76. package/dist/i18n/generated-locales/sv-SE.generated.js +0 -5
  77. package/dist/i18n/generated-locales/tr-TR.generated.d.ts.map +1 -1
  78. package/dist/i18n/generated-locales/tr-TR.generated.js +0 -5
  79. package/dist/i18n/generated-locales/uk-UA.generated.d.ts.map +1 -1
  80. package/dist/i18n/generated-locales/uk-UA.generated.js +0 -5
  81. package/dist/i18n/generated-locales/vi-VN.generated.d.ts.map +1 -1
  82. package/dist/i18n/generated-locales/vi-VN.generated.js +0 -5
  83. package/dist/i18n/generated-locales/zh-CN.generated.d.ts.map +1 -1
  84. package/dist/i18n/generated-locales/zh-CN.generated.js +0 -5
  85. package/dist/i18n/generated-locales/zh-TW.generated.d.ts.map +1 -1
  86. package/dist/i18n/generated-locales/zh-TW.generated.js +0 -5
  87. package/locales/af-ZA.json +0 -21
  88. package/locales/ar-SA.json +0 -21
  89. package/locales/ca-ES.json +0 -21
  90. package/locales/cs-CZ.json +0 -21
  91. package/locales/da-DK.json +0 -21
  92. package/locales/de-DE.json +0 -21
  93. package/locales/el-GR.json +0 -21
  94. package/locales/en.json +8 -20
  95. package/locales/es-ES.json +0 -21
  96. package/locales/fi-FI.json +0 -21
  97. package/locales/fr-FR.json +0 -21
  98. package/locales/he-IL.json +0 -21
  99. package/locales/hu-HU.json +0 -21
  100. package/locales/it-IT.json +0 -21
  101. package/locales/ja-JP.json +0 -21
  102. package/locales/ko-KR.json +0 -21
  103. package/locales/nl-NL.json +0 -21
  104. package/locales/no-NO.json +0 -21
  105. package/locales/pl-PL.json +0 -21
  106. package/locales/pseudo.json +5 -14
  107. package/locales/pt-BR.json +0 -21
  108. package/locales/pt-PT.json +0 -21
  109. package/locales/ro-RO.json +0 -21
  110. package/locales/ru-RU.json +0 -21
  111. package/locales/sr-SP.json +0 -21
  112. package/locales/sv-SE.json +0 -21
  113. package/locales/tr-TR.json +0 -21
  114. package/locales/uk-UA.json +0 -21
  115. package/locales/vi-VN.json +0 -21
  116. package/locales/zh-CN.json +0 -21
  117. package/locales/zh-TW.json +0 -21
  118. package/package.json +4 -4
  119. package/src/Chat/ChatLayout.spec.md +41 -36
  120. package/src/Chat/ChatLayoutScrollButton.spec.md +87 -103
  121. package/src/Chat/ChatSendButton.spec.md +78 -67
  122. package/src/CodeBlock/__tests__/CodeBlockCopyClearance.a11y.chromium.spec.ts +38 -3
  123. package/src/ContextMenu/ContextMenu.spec.md +84 -56
  124. package/src/ContextMenu/ContextMenuItem.spec.md +132 -0
  125. package/src/DropdownMenu/DropdownMenu.spec.md +198 -218
  126. package/src/DropdownMenu/DropdownMenuCheckboxItem.spec.md +192 -0
  127. package/src/DropdownMenu/DropdownMenuDivider.spec.md +25 -31
  128. package/src/DropdownMenu/DropdownMenuGroup.spec.md +145 -0
  129. package/src/DropdownMenu/DropdownMenuItem.spec.md +48 -42
  130. package/src/DropdownMenu/DropdownMenuRadioGroup.spec.md +34 -37
  131. package/src/DropdownMenu/DropdownMenuRadioItem.spec.md +54 -53
  132. package/src/DropdownMenu/DropdownMenuSubMenu.spec.md +47 -41
  133. package/src/Layer/useLayer.test.tsx +78 -3
  134. package/src/Layer/useLayer.tsx +27 -6
  135. package/src/Markdown/plugins/headingLinks.a11y.chromium.spec.ts +1 -1
  136. package/src/Outline/Outline.spec.md +165 -69
  137. package/src/Outline/modules/parseOutlineFromMarkdown.spec.md +3 -4
  138. package/src/PowerSearch/PowerSearch.test.tsx +24 -0
  139. package/src/PowerSearch/PowerSearch.tsx +42 -31
  140. package/src/RadioList/RadioList.test.tsx +56 -0
  141. package/src/RadioList/RadioListItem.tsx +5 -2
  142. package/src/Switch/Switch.test.tsx +45 -0
  143. package/src/Switch/Switch.tsx +6 -2
  144. package/src/Table/Table.spec.md +1 -1
  145. package/src/Table/Table.test.tsx +32 -0
  146. package/src/Table/Table.tsx +43 -11
  147. package/src/Table/__tests__/Table.a11y.states.ts +1 -5
  148. package/src/Table/plugins/sortable/useTableSortable.test.tsx +73 -144
  149. package/src/Table/plugins/sortable/useTableSortable.tsx +44 -73
  150. package/src/Table/plugins/sortable/useTableSortableState.test.tsx +9 -21
  151. package/src/ToggleButton/ToggleButton.test.tsx +27 -0
  152. package/src/ToggleButton/ToggleButtonGroup.tsx +20 -1
  153. package/src/Tokenizer/Tokenizer.spec.md +13 -1
  154. package/src/Tokenizer/Tokenizer.test.tsx +27 -0
  155. package/src/Tokenizer/Tokenizer.tsx +24 -10
  156. package/src/Tokenizer/TokenizerBottomSheet.test.tsx +8 -0
  157. package/src/Tokenizer/TokenizerClearAllMessageContext.ts +21 -0
  158. package/src/Typeahead/BaseTypeahead.doc.mjs +3 -3
  159. package/src/Typeahead/BaseTypeahead.spec.md +45 -45
  160. package/src/Typeahead/BaseTypeahead.tsx +48 -9
  161. package/src/Typeahead/Typeahead.test.tsx +120 -0
  162. package/src/i18n/generated-locales/af-ZA.generated.ts +0 -7
  163. package/src/i18n/generated-locales/ar-SA.generated.ts +0 -6
  164. package/src/i18n/generated-locales/ca-ES.generated.ts +0 -7
  165. package/src/i18n/generated-locales/cs-CZ.generated.ts +0 -6
  166. package/src/i18n/generated-locales/da-DK.generated.ts +0 -6
  167. package/src/i18n/generated-locales/de-DE.generated.ts +0 -6
  168. package/src/i18n/generated-locales/el-GR.generated.ts +0 -7
  169. package/src/i18n/generated-locales/en.generated.ts +2 -6
  170. package/src/i18n/generated-locales/es-ES.generated.ts +0 -7
  171. package/src/i18n/generated-locales/fi-FI.generated.ts +0 -6
  172. package/src/i18n/generated-locales/fr-FR.generated.ts +0 -7
  173. package/src/i18n/generated-locales/he-IL.generated.ts +0 -6
  174. package/src/i18n/generated-locales/hu-HU.generated.ts +0 -6
  175. package/src/i18n/generated-locales/it-IT.generated.ts +0 -7
  176. package/src/i18n/generated-locales/ja-JP.generated.ts +0 -6
  177. package/src/i18n/generated-locales/ko-KR.generated.ts +0 -6
  178. package/src/i18n/generated-locales/nl-NL.generated.ts +0 -6
  179. package/src/i18n/generated-locales/no-NO.generated.ts +0 -6
  180. package/src/i18n/generated-locales/pl-PL.generated.ts +0 -7
  181. package/src/i18n/generated-locales/pseudo.generated.ts +2 -6
  182. package/src/i18n/generated-locales/pt-BR.generated.ts +0 -7
  183. package/src/i18n/generated-locales/pt-PT.generated.ts +0 -7
  184. package/src/i18n/generated-locales/ro-RO.generated.ts +0 -6
  185. package/src/i18n/generated-locales/ru-RU.generated.ts +0 -7
  186. package/src/i18n/generated-locales/sr-SP.generated.ts +0 -6
  187. package/src/i18n/generated-locales/sv-SE.generated.ts +0 -6
  188. package/src/i18n/generated-locales/tr-TR.generated.ts +0 -7
  189. package/src/i18n/generated-locales/uk-UA.generated.ts +0 -7
  190. package/src/i18n/generated-locales/vi-VN.generated.ts +0 -6
  191. package/src/i18n/generated-locales/zh-CN.generated.ts +0 -6
  192. package/src/i18n/generated-locales/zh-TW.generated.ts +0 -6
  193. package/src/motion/README.md +2 -1
  194. package/src/motion/roles.test.ts +5 -4
@@ -1 +1 @@
1
- {"version":3,"file":"useLayer.d.ts","sourceRoot":"","sources":["../../src/Layer/useLayer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useLayer.d.ts","sourceRoot":"","sources":["../../src/Layer/useLayer.tsx"],"names":[],"mappings":"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"}
@@ -328,8 +328,9 @@ function failsAnchor(layer, anchor) {
328
328
  * every show and remount, and while the layer is open whenever its size, its
329
329
  * content's size, its anchor's size or the viewport changes; each of those
330
330
  * reads lands before the next frame paints. A same-size anchor that moves on
331
- * screen, in layout or because something scrolled, is read after paint, from
332
- * the anchor-move observer (FR8). Scroll events are not read: during one the
331
+ * screen, in layout or because something scrolled, is reported after paint by
332
+ * the anchor-move observer and read in the next frame, before it paints (FR8).
333
+ * Scroll events are not read: during one the
333
334
  * anchor has moved but the layer anchored to it not yet, so the read would
334
335
  * compare a moved anchor with a stale layer. Once switched, a layer keeps its
335
336
  * anchor-clear list until it next opens, so it never jumps back over its
@@ -469,9 +470,16 @@ function observeMove(element, onMove) {
469
470
  * range (spec:AST-059 FR4, FR8): the layer, its content or the anchor
470
471
  * resizing (ResizeObserver, before paint), the viewport resizing (before
471
472
  * paint), and the anchor moving on screen without resizing, in layout or by a
472
- * scroll (`observeMove`, after paint). Each calls `keepAnchorClear` for this layer and anchor while
473
- * `isCurrent` says they are still the live pair. Returns the function that
474
- * removes every observer and listener it added.
473
+ * scroll (`observeMove`, reported after paint). Each calls `keepAnchorClear`
474
+ * for this layer and anchor while `isCurrent` says they are still the live
475
+ * pair. A move is read in the next animation frame, not in the task that
476
+ * reports it: placing the layer afresh there, right after the frame that
477
+ * scrolled its anchor, lets Chromium lay it out for one more frame against
478
+ * the anchor's position before the scroll, over the anchor, so the second
479
+ * painted frame would still cover it. Read in the next frame, before it
480
+ * paints, the fresh placement uses the moved anchor. Reports in one frame
481
+ * share one read. Returns the function that removes every observer and
482
+ * listener it added.
475
483
  */
476
484
  function observeAnchorClearance(layer, anchor, isCurrent) {
477
485
  const view = layer.ownerDocument.defaultView;
@@ -492,11 +500,24 @@ function observeAnchorClearance(layer, anchor, isCurrent) {
492
500
  }
493
501
  observer.observe(anchor);
494
502
  }
495
- const stopObservingMove = observeMove(anchor, reread);
503
+ let moveFrame = null;
504
+ const stopObservingMove = observeMove(anchor, () => {
505
+ if (moveFrame !== null) {
506
+ return;
507
+ }
508
+ moveFrame = view.requestAnimationFrame(() => {
509
+ moveFrame = null;
510
+ reread();
511
+ });
512
+ });
496
513
  view.addEventListener('resize', reread);
497
514
  return () => {
498
515
  observer?.disconnect();
499
516
  stopObservingMove();
517
+ if (moveFrame !== null) {
518
+ view.cancelAnimationFrame(moveFrame);
519
+ moveFrame = null;
520
+ }
500
521
  view.removeEventListener('resize', reread);
501
522
  };
502
523
  }
@@ -16,7 +16,7 @@ import * as fs from 'node:fs';
16
16
  import * as path from 'node:path';
17
17
  import { expect, test } from '@playwright/test';
18
18
  import { DEFAULT_STORYBOOK_DIR, serveStorybook } from '@astryxdesign/a11y-spec/storybook';
19
- const STORY = 'core-markdown-plugins-heading-links--overview';
19
+ const STORY = 'core-markdown--heading-links';
20
20
  const OUTPUT = path.resolve('test-results/markdown-heading-links');
21
21
  const GEOMETRY_TOLERANCE_PX = 1;
22
22
  let storybook;
@@ -1 +1 @@
1
- {"version":3,"file":"PowerSearch.d.ts","sourceRoot":"","sources":["../../src/PowerSearch/PowerSearch.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PowerSearch.d.ts","sourceRoot":"","sources":["../../src/PowerSearch/PowerSearch.tsx"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@
16
16
  import React, { useCallback, useEffect, useImperativeHandle, useMemo, useRef, useState } from 'react';
17
17
  import * as stylex from '@stylexjs/stylex';
18
18
  import { Tokenizer } from "../Tokenizer/index.js";
19
+ import { TokenizerClearAllMessageContext } from "../Tokenizer/TokenizerClearAllMessageContext.js";
19
20
  import { TypeaheadItem } from "../Typeahead/TypeaheadItem.js";
20
21
  import { Token } from "../Token/index.js";
21
22
  import { Avatar } from "../Avatar/index.js";
@@ -769,6 +770,9 @@ export function PowerSearch({
769
770
  // replay (which resets a flag and would speak the count present on mount
770
771
  // unprompted) announces nothing until the count changes.
771
772
  const announce = useAnnounce();
773
+ // PowerSearch words its Clear all as its record does; the field announces
774
+ // these words instead of Tokenizer's (component:Tokenizer AR7).
775
+ const clearAllMessage = useMemo(() => t('@astryx.powersearch.allFiltersRemoved'), [t]);
772
776
  const announcedResultCountRef = useRef(resultCountText);
773
777
  useEffect(() => {
774
778
  if (resultCountText === announcedResultCountRef.current) {
@@ -799,36 +803,39 @@ export function PowerSearch({
799
803
  children: [/*#__PURE__*/_jsx("div", {
800
804
  ref: useMergedRefs(ref, popover.triggerRef),
801
805
  ...themeProps('power-search'),
802
- children: /*#__PURE__*/_jsx(Tokenizer, {
803
- handleRef: tokenizerRef,
804
- label: label,
805
- isLabelHidden: isLabelHidden,
806
- searchSource: searchSource,
807
- value: tokenizerValue,
808
- onChange: handleTokenizerChange,
809
- renderToken: renderToken,
810
- renderItem: renderItem,
811
- maxMenuItems: MAX_BROWSE_MENU_ITEMS,
812
- menuWidth: menuWidth,
813
- placeholder: filters.length === 0 ? placeholder : '',
814
- hasAutoFocus: hasAutoFocus,
815
- hasClear: hasClear && !isReadOnly,
816
- startIcon: startIcon,
817
- endContent: combinedEndContent,
818
- isDisabled: isDisabled,
819
- disabledMessage: disabledMessage,
820
- size: size,
821
- tokenOverflowBehavior: tokenOverflowBehavior,
822
- hasEntriesOnFocus: true,
823
- debounceMs: 0,
824
- status: status,
825
- statusVariant: statusVariant,
826
- onFocus: onFocus,
827
- onBlur: onBlur,
828
- containerXstyle: xstyle,
829
- containerClassName: className,
830
- containerStyle: style,
831
- "data-testid": testId
806
+ children: /*#__PURE__*/_jsx(TokenizerClearAllMessageContext, {
807
+ value: clearAllMessage,
808
+ children: /*#__PURE__*/_jsx(Tokenizer, {
809
+ handleRef: tokenizerRef,
810
+ label: label,
811
+ isLabelHidden: isLabelHidden,
812
+ searchSource: searchSource,
813
+ value: tokenizerValue,
814
+ onChange: handleTokenizerChange,
815
+ renderToken: renderToken,
816
+ renderItem: renderItem,
817
+ maxMenuItems: MAX_BROWSE_MENU_ITEMS,
818
+ menuWidth: menuWidth,
819
+ placeholder: filters.length === 0 ? placeholder : '',
820
+ hasAutoFocus: hasAutoFocus,
821
+ hasClear: hasClear && !isReadOnly,
822
+ startIcon: startIcon,
823
+ endContent: combinedEndContent,
824
+ isDisabled: isDisabled,
825
+ disabledMessage: disabledMessage,
826
+ size: size,
827
+ tokenOverflowBehavior: tokenOverflowBehavior,
828
+ hasEntriesOnFocus: true,
829
+ debounceMs: 0,
830
+ status: status,
831
+ statusVariant: statusVariant,
832
+ onFocus: onFocus,
833
+ onBlur: onBlur,
834
+ containerXstyle: xstyle,
835
+ containerClassName: className,
836
+ containerStyle: style,
837
+ "data-testid": testId
838
+ })
832
839
  })
833
840
  }), popover.render(popoverContent, {
834
841
  placement: 'below',
@@ -1 +1 @@
1
- {"version":3,"file":"RadioListItem.d.ts","sourceRoot":"","sources":["../../src/RadioList/RadioListItem.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,EAAqB,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAGhE,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAQ5C,OAAO,EAAO,KAAK,SAAS,EAAC,MAAM,SAAS,CAAC;AA0I7C,MAAM,WAAW,kBAAmB,SAAQ,SAAS,CAAC,cAAc,CAAC;IACnE,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;;;;;;;;OAUG;IACH,KAAK,EAAE,SAAS,CAAC;IACjB;;;;;;;;;;;;;;OAcG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;;;OAKG;IACH,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;OAEG;IACH,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB;;OAEG;IACH,UAAU,CAAC,EAAE,SAAS,CAAC;CACxB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAAC,EAC5B,GAAG,EACH,KAAK,EACL,YAAY,EAAE,SAAS,EACvB,KAAK,EACL,WAAW,EACX,UAAU,EAAE,cAAsB,EAClC,YAAY,EACZ,UAAU,EACV,KAAK,EACL,MAAM,EACN,SAAS,EACT,KAAK,EACL,OAAO,EACP,GAAG,IAAI,EACR,EAAE,kBAAkB,qBA2KpB;yBA1Le,aAAa"}
1
+ {"version":3,"file":"RadioListItem.d.ts","sourceRoot":"","sources":["../../src/RadioList/RadioListItem.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,EAAqB,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAGhE,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAQ5C,OAAO,EAAO,KAAK,SAAS,EAAC,MAAM,SAAS,CAAC;AA0I7C,MAAM,WAAW,kBAAmB,SAAQ,SAAS,CAAC,cAAc,CAAC;IACnE,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;;;;;;;;OAUG;IACH,KAAK,EAAE,SAAS,CAAC;IACjB;;;;;;;;;;;;;;OAcG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;;;OAKG;IACH,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;OAEG;IACH,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB;;OAEG;IACH,UAAU,CAAC,EAAE,SAAS,CAAC;CACxB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAAC,EAC5B,GAAG,EACH,KAAK,EACL,YAAY,EAAE,SAAS,EACvB,KAAK,EACL,WAAW,EACX,UAAU,EAAE,cAAsB,EAClC,YAAY,EACZ,UAAU,EACV,KAAK,EACL,MAAM,EACN,SAAS,EACT,KAAK,EACL,OAAO,EACP,GAAG,IAAI,EACR,EAAE,kBAAkB,qBA8KpB;yBA7Le,aAAa"}
@@ -212,9 +212,12 @@ export function RadioListItem({
212
212
  }
213
213
  // A consumer onClick rides on the radio input itself, so it fires for
214
214
  // both direct control clicks and row-surface clicks the row delegates
215
- // to the input — the same routing CheckboxListItem uses.
215
+ // to the input — the same routing CheckboxListItem uses. A disabled
216
+ // radio that stays focusable (`aria-disabled`, not native `disabled`)
217
+ // is not silenced by the browser, so drop the handler here
218
+ // (`spec:AST-085` FR2), as CheckboxInput does.
216
219
  ,
217
- onClick: onClick
220
+ onClick: isDisabled ? undefined : onClick
218
221
  // The radio names itself from the visible label element, which works
219
222
  // for a rich label as well as a plain string. `aria-label` replaces
220
223
  // that name rather than adding to it, so the two are mutually
@@ -1 +1 @@
1
- {"version":3,"file":"Switch.d.ts","sourceRoot":"","sources":["../../src/Switch/Switch.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Switch.d.ts","sourceRoot":"","sources":["../../src/Switch/Switch.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAML,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAcf,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAMhD,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AAoV9C,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,KAAK,CAAC;AAElD,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG,QAAQ,CAAC;AAElD,MAAM,WAAW,WAAY,SAAQ,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC;IAC9D,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAClC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACxE;;OAEG;IACH,YAAY,CAAC,EAAE,CACb,OAAO,EAAE,OAAO,EAChB,CAAC,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAC7B,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;IACf;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACpD;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACnD;;OAEG;IACH,SAAS,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IACjC;;;;OAIG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC;;;;;OAKG;IACH,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC;;;OAGG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;CACpB;AAOD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,MAAM,CAAC,EACrB,KAAK,EACL,aAAqB,EACrB,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,SAAiB,EACjB,KAAK,EACL,UAAkB,EAClB,QAAQ,EACR,eAAe,EACf,UAAkB,EAClB,UAAkB,EAClB,OAAO,EACP,MAAM,EACN,SAAS,EACT,YAAY,EACZ,aAAqB,EACrB,YAAoB,EACpB,MAAM,EACN,IAAW,EACX,KAAK,EACL,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,EACH,kBAAkB,EAAE,mBAAmB,EACvC,iBAAiB,EAAE,kBAAkB,EACrC,GAAG,IAAI,EACR,EAAE,WAAW,+BAkPb;yBA/Qe,MAAM"}
@@ -451,8 +451,12 @@ export function Switch({
451
451
  labelSpacing: labelSpacing !== 'hug' ? labelSpacing : undefined
452
452
  }), stylex.props(width != null && dynamicWidthStyles.width(width), xstyle), className, style),
453
453
  ...rest,
454
- // Native `disabled` suppressed clicks on the switch (spec:AST-085 FR2).
454
+ // Native `disabled` suppressed clicks and key events on the switch; the
455
+ // switch is no longer natively disabled, so withhold the caller's
456
+ // handlers while disabled (spec:AST-085 FR2).
455
457
  onClick: isDisabled ? undefined : rest.onClick,
458
+ onKeyDown: isDisabled ? undefined : rest.onKeyDown,
459
+ onKeyUp: isDisabled ? undefined : rest.onKeyUp,
456
460
  children: [/*#__PURE__*/_jsxs("div", {
457
461
  ref: el => {
458
462
  // Interaction (hover/focus) listeners for the disabled-message
@@ -1 +1 @@
1
- {"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../src/Table/Table.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAU,KAAK,YAAY,EAAE,KAAK,GAAG,EAAC,MAAM,OAAO,CAAC;AAS3D,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,WAAW,EAEZ,MAAM,SAAS,CAAC;AAQjB,oDAAoD;AAEpD,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,CAAC;AAE/D,kCAAkC;AAElC,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;AAEjE,8DAA8D;AAE9D,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,UAAU,CAAC;AAEpD;;;;;GAKG;AAEH,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAE,SAAQ,IAAI,CACzE,cAAc,CAAC,CAAC,CAAC,EACjB,SAAS,GAAG,YAAY,CACzB;IACC,uCAAuC;IACvC,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,wCAAwC;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;;;;;OAUG;IACH,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC;;;;;;;;;;;;;;;OAeG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;IACnC,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;CAC1C;AA2JD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,eAAO,MAAM,KAAK,EAAiB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG;IAAC,GAAG,CAAC,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAA;CAAC,KACjD,YAAY,CAAC"}
1
+ {"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../src/Table/Table.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAA8B,KAAK,YAAY,EAAE,KAAK,GAAG,EAAC,MAAM,OAAO,CAAC;AAS/E,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,WAAW,EAEZ,MAAM,SAAS,CAAC;AAQjB,oDAAoD;AAEpD,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,CAAC;AAE/D,kCAAkC;AAElC,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;AAEjE,8DAA8D;AAE9D,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,UAAU,CAAC;AAEpD;;;;;GAKG;AAEH,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAE,SAAQ,IAAI,CACzE,cAAc,CAAC,CAAC,CAAC,EACjB,SAAS,GAAG,YAAY,CACzB;IACC,uCAAuC;IACvC,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,wCAAwC;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;;;;;OAUG;IACH,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC;;;;;;;;;;;;;;;OAeG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;IACnC,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;CAC1C;AA2LD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,eAAO,MAAM,KAAK,EAAiB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG;IAAC,GAAG,CAAC,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAA;CAAC,KACjD,YAAY,CAAC"}
@@ -16,7 +16,7 @@
16
16
  * - /apps/storybook/stories/Table.stories.tsx (storybook stories)
17
17
  * - /packages/cli/assets/templates/blocks/components/Table/ (showcase blocks)
18
18
  */
19
- import { useMemo } from 'react';
19
+ import { createContext, use, useMemo } from 'react';
20
20
  import * as stylex from '@stylexjs/stylex';
21
21
  import "../theme/tokens.stylex.js";
22
22
  import { colorVars } from "../theme/tokens.stylex.js";
@@ -71,6 +71,14 @@ const scrollWrapperStyles = {
71
71
  $$css: true
72
72
  }
73
73
  };
74
+
75
+ /**
76
+ * The Table's own name, for the scroll region that names itself after it.
77
+ * Internal to Table: the scroll wrapper is not given it as a prop, so it adds
78
+ * nothing to the public table types.
79
+ */
80
+ const TableNameContext = /*#__PURE__*/createContext(null);
81
+ TableNameContext.displayName = 'TableNameContext';
74
82
  function TableScrollWrapper({
75
83
  children,
76
84
  htmlProps,
@@ -79,7 +87,14 @@ function TableScrollWrapper({
79
87
  afterTable
80
88
  }) {
81
89
  const t = useTranslator();
82
- const label = t('@astryx.table.label');
90
+ const tableName = use(TableNameContext);
91
+ // The focusable scroll region takes the table's own name (spec:AST-025
92
+ // FR12), so two tables are not two groups both named "Table". It is named
93
+ // the way the table is: `aria-labelledby` wins over `aria-label`, as it does
94
+ // in accessible-name computation; the generic name is the fallback for an
95
+ // unnamed table.
96
+ const labelledBy = tableName?.labelledBy;
97
+ const label = labelledBy != null ? undefined : tableName?.label ?? t('@astryx.table.label');
83
98
  const {
84
99
  getViewportProps,
85
100
  getContentProps,
@@ -98,6 +113,8 @@ function TableScrollWrapper({
98
113
  const viewportProps = getViewportProps({
99
114
  role: 'group',
100
115
  'aria-label': label,
116
+ // A plugin's explicit name stays authoritative (Table FR1).
117
+ 'aria-labelledby': restHtmlProps['aria-label'] == null ? labelledBy : undefined,
101
118
  ...(state.inline.isScrollable ? {
102
119
  tabIndex: 0
103
120
  } : {}),
@@ -163,16 +180,25 @@ function TableInner({
163
180
  verticalAlign,
164
181
  textOverflow
165
182
  }), [density, dividers, isStriped, hasHover, verticalAlign, textOverflow]);
183
+ const tableLabel = rest['aria-label'];
184
+ const tableLabelledBy = rest['aria-labelledby'];
185
+ const tableName = useMemo(() => ({
186
+ label: tableLabel,
187
+ labelledBy: tableLabelledBy
188
+ }), [tableLabel, tableLabelledBy]);
166
189
  return /*#__PURE__*/_jsx(TableContext, {
167
190
  value: contextValue,
168
- children: /*#__PURE__*/_jsx(BaseTable, {
169
- ref: ref,
170
- data: data,
171
- columns: columns,
172
- plugins: mergedPlugins,
173
- textOverflow: textOverflow,
174
- scrollWrapper: TableScrollWrapper,
175
- ...rest
191
+ children: /*#__PURE__*/_jsx(TableNameContext, {
192
+ value: tableName,
193
+ children: /*#__PURE__*/_jsx(BaseTable, {
194
+ ref: ref,
195
+ data: data,
196
+ columns: columns,
197
+ plugins: mergedPlugins,
198
+ textOverflow: textOverflow,
199
+ scrollWrapper: TableScrollWrapper,
200
+ ...rest
201
+ })
176
202
  })
177
203
  });
178
204
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useTableSortable.d.ts","sourceRoot":"","sources":["../../../../src/Table/plugins/sortable/useTableSortable.tsx"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EACV,WAAW,EAIZ,MAAM,aAAa,CAAC;AAMrB;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG,YAAY,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,cAAc,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM;IAC9D,2EAA2E;IAC3E,OAAO,EAAE,QAAQ,CAAC;IAClB,0BAA0B;IAC1B,SAAS,EAAE,kBAAkB,CAAC;CAC/B;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,cAAc,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM,IACzD,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;AAM7B;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,sBAAsB,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM;IACtE,iEAAiE;IACjE,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IAE/B;;;OAGG;IACH,YAAY,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;IAEvD;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAmPD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,gBAAgB,CAC9B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,QAAQ,SAAS,MAAM,GAAG,MAAM,EAChC,MAAM,EAAE,sBAAsB,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CA2F1D"}
1
+ {"version":3,"file":"useTableSortable.d.ts","sourceRoot":"","sources":["../../../../src/Table/plugins/sortable/useTableSortable.tsx"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EACV,WAAW,EAIZ,MAAM,aAAa,CAAC;AAMrB;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG,YAAY,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,cAAc,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM;IAC9D,2EAA2E;IAC3E,OAAO,EAAE,QAAQ,CAAC;IAClB,0BAA0B;IAC1B,SAAS,EAAE,kBAAkB,CAAC;CAC/B;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,cAAc,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM,IACzD,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;AAM7B;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,sBAAsB,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM;IACtE,iEAAiE;IACjE,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IAE/B;;;OAGG;IACH,YAAY,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;IAEvD;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAsND;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,gBAAgB,CAC9B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,QAAQ,SAAS,MAAM,GAAG,MAAM,EAChC,MAAM,EAAE,sBAAsB,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CA2F1D"}
@@ -12,7 +12,7 @@
12
12
  * - /packages/core/src/Table/Table.doc.mjs (sort documentation)
13
13
  * - /packages/core/src/Table/index.ts (exports)
14
14
  */
15
- import { useRef, useMemo } from 'react';
15
+ import { useId, useRef, useMemo } from 'react';
16
16
  import * as stylex from '@stylexjs/stylex';
17
17
  import "../../../theme/tokens.stylex.js";
18
18
  import { colorVars, spacingVars, radiusVars } from "../../../theme/tokens.stylex.js";
@@ -68,7 +68,7 @@ import { useTranslator } from "../../../i18n/index.js";
68
68
  * <Table plugins={{ sort: sortPlugin }} columns={columns} data={data} />
69
69
  * ```
70
70
  */
71
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
71
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
72
72
  // =============================================================================
73
73
  // Styles
74
74
  // =============================================================================
@@ -118,36 +118,6 @@ function resolveSortKey(column) {
118
118
  }
119
119
  return sortable.sortKey ?? column.key;
120
120
  }
121
- function getHeaderLabel(column) {
122
- const {
123
- header
124
- } = column;
125
- if (typeof header === 'string') {
126
- return header;
127
- }
128
- return column.key;
129
- }
130
- function buildAriaLabel(t, column, direction, rank, total) {
131
- const label = getHeaderLabel(column);
132
- if (direction == null) {
133
- return t('@astryx.table.sort.sortBy', {
134
- label
135
- });
136
- }
137
- const directionLabel = direction === 'ascending' ? t('@astryx.table.sort.direction.ascending') : t('@astryx.table.sort.direction.descending');
138
- if (rank != null && total > 1) {
139
- return t('@astryx.table.sort.sortedByWithPriority', {
140
- label,
141
- direction: directionLabel,
142
- rank,
143
- total
144
- });
145
- }
146
- return t('@astryx.table.sort.sortedBy', {
147
- label,
148
- direction: directionLabel
149
- });
150
- }
151
121
  function getNextDirection(current, allowUnsortedState) {
152
122
  if (current == null) {
153
123
  return 'ascending';
@@ -177,7 +147,12 @@ function SortHeaderButton({
177
147
  const isMultiSort = config.isMultiSortEnabled === true && config.sort.length > 1;
178
148
  const rank = isMultiSort && entryIndex >= 0 ? entryIndex + 1 : null;
179
149
  const iconName = direction === 'ascending' ? 'arrowUp' : direction === 'descending' ? 'arrowDown' : 'arrowsUpDown';
180
- const ariaLabel = buildAriaLabel(t, column, direction, rank, config.sort.length);
150
+
151
+ // The button is named by its column's text, so the column header keeps
152
+ // that name; direction lives in the header's aria-sort. Only the multi-sort
153
+ // priority, which aria-sort cannot carry, is a description
154
+ // (spec:AST-020 FR15; WCAG 1.3.1).
155
+ const priorityId = useId();
181
156
  const handleClick = e => {
182
157
  const cfg = configRef.current;
183
158
  const isShift = e.shiftKey && cfg.isMultiSortEnabled;
@@ -221,33 +196,46 @@ function SortHeaderButton({
221
196
  }
222
197
  }
223
198
  };
224
- return /*#__PURE__*/_jsxs("button", {
225
- type: "button",
226
- ...focusOutlineProps.focusVisible(sortStyles.button, column.align === 'end' ? sortStyles.buttonAlignEnd : column.align === 'center' ? sortStyles.buttonAlignCenter : null),
227
- "aria-label": ariaLabel,
228
- onClick: handleClick,
229
- children: [/*#__PURE__*/_jsx("span", {
230
- children: children
231
- }), /*#__PURE__*/_jsx("span", {
232
- ...{
233
- 0: {
234
- className: "x3nfvp2 x3onkmb xof6bs x25t5g8"
199
+ return /*#__PURE__*/_jsxs(_Fragment, {
200
+ children: [/*#__PURE__*/_jsxs("button", {
201
+ type: "button",
202
+ ...focusOutlineProps.focusVisible(sortStyles.button, column.align === 'end' ? sortStyles.buttonAlignEnd : column.align === 'center' ? sortStyles.buttonAlignCenter : null),
203
+ "aria-describedby": rank != null ? priorityId : undefined,
204
+ onClick: handleClick,
205
+ children: [/*#__PURE__*/_jsx("span", {
206
+ children: children
207
+ }), /*#__PURE__*/_jsx("span", {
208
+ ...{
209
+ 0: {
210
+ className: "x3nfvp2 x3onkmb xof6bs x25t5g8"
211
+ },
212
+ 1: {
213
+ className: "x3nfvp2"
214
+ }
215
+ }[!!(direction != null) << 0],
216
+ children: /*#__PURE__*/_jsx(Icon, {
217
+ icon: iconName,
218
+ size: "xsm",
219
+ color: direction != null ? 'accent' : 'secondary'
220
+ })
221
+ }), rank != null && /*#__PURE__*/_jsx("span", {
222
+ ...{
223
+ className: "x1k6wstc xo5v014 xqwr325"
235
224
  },
236
- 1: {
237
- className: "x3nfvp2"
238
- }
239
- }[!!(direction != null) << 0],
240
- children: /*#__PURE__*/_jsx(Icon, {
241
- icon: iconName,
242
- size: "xsm",
243
- color: direction != null ? 'accent' : 'secondary'
225
+ "aria-hidden": "true",
226
+ children: rank
227
+ })]
228
+ }), rank != null &&
229
+ /*#__PURE__*/
230
+ // Hidden, so it adds nothing to the button's or the header's name;
231
+ // aria-describedby still reads it.
232
+ _jsx("span", {
233
+ id: priorityId,
234
+ hidden: true,
235
+ children: t('@astryx.table.sort.priority', {
236
+ rank,
237
+ total: config.sort.length
244
238
  })
245
- }), rank != null && /*#__PURE__*/_jsx("span", {
246
- ...{
247
- className: "x1k6wstc xo5v014 xqwr325"
248
- },
249
- "aria-hidden": "true",
250
- children: rank
251
239
  })]
252
240
  });
253
241
  }
@@ -15,6 +15,7 @@
15
15
  */
16
16
  import { type ReactNode } from 'react';
17
17
  import type { ButtonSize } from '../Button/index.js';
18
+ import type { BaseProps } from '../BaseProps.js';
18
19
  import type { StyleXStyles } from '@stylexjs/stylex';
19
20
  interface ToggleButtonGroupContextValue {
20
21
  /** Currently selected value(s). */
@@ -31,7 +32,12 @@ interface ToggleButtonGroupContextValue {
31
32
  * Returns null when used outside a group.
32
33
  */
33
34
  export declare function useToggleButtonGroup(): ToggleButtonGroupContextValue | null;
34
- interface ToggleButtonGroupBaseProps {
35
+ /**
36
+ * Host props reach the group element (`architecture:public-component-api`
37
+ * INV5): `className`, `style`, `id`, `aria-*`, `data-*` and handlers. The group
38
+ * keeps its own `role`, `aria-label` and theme target.
39
+ */
40
+ interface ToggleButtonGroupBaseProps extends Omit<BaseProps<HTMLDivElement>, 'onChange' | 'defaultValue' | 'role' | 'aria-label'> {
35
41
  /** Toggle button children. */
36
42
  children: ReactNode;
37
43
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ToggleButtonGroup.d.ts","sourceRoot":"","sources":["../../src/ToggleButton/ToggleButtonGroup.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAA4B,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAIhE,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,WAAW,CAAC;AAE1C,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAOnD,UAAU,6BAA6B;IACrC,mCAAmC;IACnC,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5B,6BAA6B;IAC7B,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,4DAA4D;IAC5D,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,4BAA4B;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAMD;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,6BAA6B,GAAG,IAAI,CAE3E;AAsBD,UAAU,0BAA0B;IAClC,8BAA8B;IAC9B,QAAQ,EAAE,SAAS,CAAC;IAEpB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IAExC;;;;OAIG;IACH,IAAI,CAAC,EAAE,UAAU,CAAC;IAElB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;;;;;;;OASG;IACH,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB,sCAAsC;IACtC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;GAIG;AACH,MAAM,WAAW,4BAA6B,SAAQ,0BAA0B;IAC9E;;;OAGG;IACH,IAAI,CAAC,EAAE,QAAQ,CAAC;IAEhB,0DAA0D;IAC1D,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAErB,qCAAqC;IACrC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CAC1C;AAED;;;GAGG;AACH,MAAM,WAAW,8BAA+B,SAAQ,0BAA0B;IAChF,+BAA+B;IAC/B,IAAI,EAAE,UAAU,CAAC;IAEjB,iCAAiC;IACjC,KAAK,EAAE,MAAM,EAAE,CAAC;IAEhB,qCAAqC;IACrC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;CACrC;AAED,8DAA8D;AAC9D,MAAM,MAAM,sBAAsB,GAChC,4BAA4B,GAAG,8BAA8B,CAAC;AAMhE;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,SAAS,CAgE1E;yBAhEe,iBAAiB"}
1
+ {"version":3,"file":"ToggleButtonGroup.d.ts","sourceRoot":"","sources":["../../src/ToggleButton/ToggleButtonGroup.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAA4B,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAIhE,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,WAAW,CAAC;AAC1C,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAE5C,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAOnD,UAAU,6BAA6B;IACrC,mCAAmC;IACnC,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5B,6BAA6B;IAC7B,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,4DAA4D;IAC5D,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,4BAA4B;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAMD;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,6BAA6B,GAAG,IAAI,CAE3E;AAsBD;;;;GAIG;AACH,UAAU,0BAA2B,SAAQ,IAAI,CAC/C,SAAS,CAAC,cAAc,CAAC,EACzB,UAAU,GAAG,cAAc,GAAG,MAAM,GAAG,YAAY,CACpD;IACC,8BAA8B;IAC9B,QAAQ,EAAE,SAAS,CAAC;IAEpB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IAExC;;;;OAIG;IACH,IAAI,CAAC,EAAE,UAAU,CAAC;IAElB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;;;;;;;OASG;IACH,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB,sCAAsC;IACtC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;GAIG;AACH,MAAM,WAAW,4BAA6B,SAAQ,0BAA0B;IAC9E;;;OAGG;IACH,IAAI,CAAC,EAAE,QAAQ,CAAC;IAEhB,0DAA0D;IAC1D,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAErB,qCAAqC;IACrC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CAC1C;AAED;;;GAGG;AACH,MAAM,WAAW,8BAA+B,SAAQ,0BAA0B;IAChF,+BAA+B;IAC/B,IAAI,EAAE,UAAU,CAAC;IAEjB,iCAAiC;IACjC,KAAK,EAAE,MAAM,EAAE,CAAC;IAEhB,qCAAqC;IACrC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;CACrC;AAED,8DAA8D;AAC9D,MAAM,MAAM,sBAAsB,GAChC,4BAA4B,GAAG,8BAA8B,CAAC;AAMhE;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,SAAS,CA0E1E;yBA1Ee,iBAAiB"}
@@ -62,6 +62,12 @@ const styles = {
62
62
  // Props — Discriminated Union
63
63
  // =============================================================================
64
64
 
65
+ /**
66
+ * Host props reach the group element (`architecture:public-component-api`
67
+ * INV5): `className`, `style`, `id`, `aria-*`, `data-*` and handlers. The group
68
+ * keeps its own `role`, `aria-label` and theme target.
69
+ */
70
+
65
71
  /**
66
72
  * Single-select group props.
67
73
  * Only one button can be active at a time. Clicking the active
@@ -103,7 +109,14 @@ export function ToggleButtonGroup(props) {
103
109
  size,
104
110
  isDisabled = false,
105
111
  xstyle,
106
- 'data-testid': testId
112
+ className,
113
+ style,
114
+ 'data-testid': testId,
115
+ // Read through `props` below, where the union narrows them by `type`.
116
+ type: _type,
117
+ value: _value,
118
+ onChange: _onChange,
119
+ ...hostProps
107
120
  } = props;
108
121
  const isMultiple = props.type === 'multiple';
109
122
  const selectedValues = useMemo(() => {
@@ -138,10 +151,11 @@ export function ToggleButtonGroup(props) {
138
151
  return /*#__PURE__*/_jsx(ToggleButtonGroupContext, {
139
152
  value: contextValue,
140
153
  children: /*#__PURE__*/_jsx("div", {
154
+ ...hostProps,
141
155
  role: "group",
142
156
  "aria-label": label,
143
157
  "data-testid": testId,
144
- ...mergeProps(themeProps('toggle-button-group'), stylex.props(styles.group, orientation === 'vertical' && styles.vertical, xstyle)),
158
+ ...mergeProps(themeProps('toggle-button-group'), stylex.props(styles.group, orientation === 'vertical' && styles.vertical, xstyle), className, style),
145
159
  children: children
146
160
  })
147
161
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Tokenizer.d.ts","sourceRoot":"","sources":["../../src/Tokenizer/Tokenizer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Tokenizer.d.ts","sourceRoot":"","sources":["../../src/Tokenizer/Tokenizer.tsx"],"names":[],"mappings":"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"}
@@ -23,12 +23,13 @@
23
23
  * - /apps/storybook/stories/Tokenizer.stories.tsx
24
24
  * - /packages/cli/assets/templates/blocks/components/Tokenizer/ (showcase blocks)
25
25
  */
26
- import React, { lazy, Suspense, useCallback, useEffect, useId, useImperativeHandle, useMemo, useRef, useState } from 'react';
26
+ import React, { lazy, Suspense, use, useCallback, useEffect, useId, useImperativeHandle, useMemo, useRef, useState } from 'react';
27
27
  import * as stylex from '@stylexjs/stylex';
28
28
  import { BusyIndicatorLaneProvider, createBusyIndicatorLane, useIsBusy } from "../Typeahead/busyIndicatorLane.js";
29
29
  import { TrailingKeyDownContext } from "../Typeahead/trailingKeyDown.js";
30
30
  import { useFieldInputStyling } from "../Field/fieldParts.js";
31
31
  import { useMergedRefs } from "../hooks/useMergedRefs.js";
32
+ import { TokenizerClearAllMessageContext } from "./TokenizerClearAllMessageContext.js";
32
33
  import { useBusyAnnouncement } from "../hooks/useBusyAnnouncement.js";
33
34
  import { useAdaptivePresentation } from "../hooks/useAdaptivePresentation.js";
34
35
  import { useIsHydrating } from "../hooks/useIsHydrating.js";
@@ -832,7 +833,10 @@ export function Tokenizer({
832
833
  }, [value, onChange, isDisabled, announce, t]);
833
834
 
834
835
  // Handle clearing all items
835
- const handleClearAll = useCallback(() => {
836
+ // A composing component that words its own Clear all (PowerSearch) provides
837
+ // its words; otherwise the field's own (component:Tokenizer AR7).
838
+ const clearAllMessage = use(TokenizerClearAllMessageContext) ?? t('@astryx.tokenizer.allRemoved');
839
+ const handleClearAll = useCallback(options => {
836
840
  if (isDisabled || value.length === 0) {
837
841
  return;
838
842
  }
@@ -842,8 +846,13 @@ export function Tokenizer({
842
846
  item: lastItem,
843
847
  type: 'remove'
844
848
  });
849
+ // Focus moves to the input, so the emptied selection is announced, in
850
+ // the sheet's words (WCAG 4.1.3). The sheet announces its own Clear all.
851
+ if (!options?.silent) {
852
+ announce(clearAllMessage);
853
+ }
845
854
  inputRef.current?.focus();
846
- }, [value, onChange, isDisabled]);
855
+ }, [value, onChange, isDisabled, announce, clearAllMessage]);
847
856
 
848
857
  // Handle backspace on empty input — remove last token
849
858
  const handleKeyDown = useCallback(e => {
@@ -1149,7 +1158,9 @@ export function Tokenizer({
1149
1158
  emptySearchText: emptySearchText,
1150
1159
  onAdd: handleAdd,
1151
1160
  onRemove: handleRemove,
1152
- onClearAll: handleClearAll,
1161
+ onClearAll: () => handleClearAll({
1162
+ silent: true
1163
+ }),
1153
1164
  onChangeQuery: handleSheetQueryChange
1154
1165
  })]
1155
1166
  });