@astryxdesign/core 0.7.6-canary.372a0ea → 0.7.6-canary.389dc84

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 (241) hide show
  1. package/dist/Banner/Banner.d.ts.map +1 -1
  2. package/dist/Banner/Banner.js +4 -4
  3. package/dist/Chat/ChatComposer.d.ts.map +1 -1
  4. package/dist/Chat/ChatComposer.js +5 -1
  5. package/dist/Chat/useTriggerMenu.d.ts +1 -1
  6. package/dist/Chat/useTriggerMenu.d.ts.map +1 -1
  7. package/dist/Chat/useTriggerMenu.js +13 -28
  8. package/dist/Collapsible/Collapsible.d.ts.map +1 -1
  9. package/dist/Collapsible/Collapsible.js +23 -3
  10. package/dist/CommandPalette/CommandPaletteEmpty.d.ts.map +1 -1
  11. package/dist/CommandPalette/CommandPaletteEmpty.js +1 -0
  12. package/dist/FieldStatus/FieldStatus.d.ts.map +1 -1
  13. package/dist/FieldStatus/FieldStatus.js +1 -0
  14. package/dist/Grid/GridSpan.d.ts +2 -0
  15. package/dist/Grid/GridSpan.d.ts.map +1 -1
  16. package/dist/Grid/GridSpan.js +2 -0
  17. package/dist/Heading/Heading.d.ts +5 -3
  18. package/dist/Heading/Heading.d.ts.map +1 -1
  19. package/dist/Heading/Heading.js +5 -3
  20. package/dist/HoverCard/useHoverCard.d.ts.map +1 -1
  21. package/dist/HoverCard/useHoverCard.js +7 -0
  22. package/dist/Item/Item.d.ts.map +1 -1
  23. package/dist/Item/Item.js +6 -2
  24. package/dist/Layer/layerStructureReset.stylex.d.ts +1 -0
  25. package/dist/Layer/layerStructureReset.stylex.d.ts.map +1 -1
  26. package/dist/Layer/layerStructureReset.stylex.js +1 -0
  27. package/dist/Layer/layerSurfacePress.d.ts +9 -0
  28. package/dist/Layer/layerSurfacePress.d.ts.map +1 -0
  29. package/dist/Layer/layerSurfacePress.js +39 -0
  30. package/dist/ProgressBar/ProgressBar.d.ts.map +1 -1
  31. package/dist/ProgressBar/ProgressBar.js +3 -1
  32. package/dist/SegmentedControl/SegmentedControl.d.ts +7 -5
  33. package/dist/SegmentedControl/SegmentedControl.d.ts.map +1 -1
  34. package/dist/SegmentedControl/SegmentedControl.js +13 -20
  35. package/dist/SegmentedControl/SegmentedControlContext.d.ts +2 -9
  36. package/dist/SegmentedControl/SegmentedControlContext.d.ts.map +1 -1
  37. package/dist/SegmentedControl/SegmentedControlItem.d.ts.map +1 -1
  38. package/dist/SegmentedControl/SegmentedControlItem.js +4 -14
  39. package/dist/SideNav/SideNav.d.ts.map +1 -1
  40. package/dist/SideNav/SideNav.js +31 -26
  41. package/dist/SideNav/SideNavHeading.js +6 -2
  42. package/dist/Text/text.stylex.d.ts +2 -0
  43. package/dist/Text/text.stylex.d.ts.map +1 -1
  44. package/dist/Text/text.stylex.js +11 -0
  45. package/dist/Toast/Toast.d.ts.map +1 -1
  46. package/dist/Toast/Toast.js +1 -1
  47. package/dist/Token/Token.d.ts.map +1 -1
  48. package/dist/Token/Token.js +6 -1
  49. package/dist/Tooltip/useTooltip.d.ts.map +1 -1
  50. package/dist/Tooltip/useTooltip.js +11 -1
  51. package/dist/TopNav/TopNavHeading.d.ts.map +1 -1
  52. package/dist/TopNav/TopNavHeading.js +8 -2
  53. package/dist/TopNav/TopNavMegaMenuFeaturedCard.d.ts.map +1 -1
  54. package/dist/TopNav/TopNavMegaMenuFeaturedCard.js +9 -2
  55. package/dist/TreeList/TreeList.d.ts.map +1 -1
  56. package/dist/TreeList/TreeList.js +62 -4
  57. package/dist/astryx.css +3 -0
  58. package/dist/hooks/ModalAnnounceProvider.d.ts +2 -2
  59. package/dist/hooks/ModalAnnounceProvider.d.ts.map +1 -1
  60. package/dist/hooks/ModalAnnounceProvider.js +9 -7
  61. package/dist/hooks/useClickableContainer.d.ts +3 -0
  62. package/dist/hooks/useClickableContainer.d.ts.map +1 -1
  63. package/dist/hooks/useClickableContainer.js +11 -1
  64. package/dist/hooks/useKeyboardHint.d.ts.map +1 -1
  65. package/dist/hooks/useKeyboardHint.js +7 -1
  66. package/dist/hooks/useListFocus.d.ts +10 -7
  67. package/dist/hooks/useListFocus.d.ts.map +1 -1
  68. package/dist/hooks/useListFocus.js +29 -17
  69. package/dist/hooks/useTreeFocus.d.ts +11 -1
  70. package/dist/hooks/useTreeFocus.d.ts.map +1 -1
  71. package/dist/hooks/useTreeFocus.js +19 -3
  72. package/dist/i18n/generated-locales/af-ZA.generated.d.ts.map +1 -1
  73. package/dist/i18n/generated-locales/af-ZA.generated.js +2 -2
  74. package/dist/i18n/generated-locales/ar-SA.generated.d.ts.map +1 -1
  75. package/dist/i18n/generated-locales/ar-SA.generated.js +2 -2
  76. package/dist/i18n/generated-locales/ca-ES.generated.d.ts.map +1 -1
  77. package/dist/i18n/generated-locales/ca-ES.generated.js +2 -2
  78. package/dist/i18n/generated-locales/cs-CZ.generated.d.ts.map +1 -1
  79. package/dist/i18n/generated-locales/cs-CZ.generated.js +2 -2
  80. package/dist/i18n/generated-locales/da-DK.generated.d.ts.map +1 -1
  81. package/dist/i18n/generated-locales/da-DK.generated.js +2 -2
  82. package/dist/i18n/generated-locales/de-DE.generated.d.ts.map +1 -1
  83. package/dist/i18n/generated-locales/de-DE.generated.js +2 -2
  84. package/dist/i18n/generated-locales/el-GR.generated.d.ts.map +1 -1
  85. package/dist/i18n/generated-locales/el-GR.generated.js +2 -2
  86. package/dist/i18n/generated-locales/en.generated.d.ts.map +1 -1
  87. package/dist/i18n/generated-locales/en.generated.js +2 -2
  88. package/dist/i18n/generated-locales/es-ES.generated.d.ts.map +1 -1
  89. package/dist/i18n/generated-locales/es-ES.generated.js +2 -2
  90. package/dist/i18n/generated-locales/fi-FI.generated.d.ts.map +1 -1
  91. package/dist/i18n/generated-locales/fi-FI.generated.js +2 -2
  92. package/dist/i18n/generated-locales/fr-FR.generated.d.ts.map +1 -1
  93. package/dist/i18n/generated-locales/fr-FR.generated.js +2 -2
  94. package/dist/i18n/generated-locales/he-IL.generated.d.ts.map +1 -1
  95. package/dist/i18n/generated-locales/he-IL.generated.js +2 -2
  96. package/dist/i18n/generated-locales/hu-HU.generated.d.ts.map +1 -1
  97. package/dist/i18n/generated-locales/hu-HU.generated.js +2 -2
  98. package/dist/i18n/generated-locales/it-IT.generated.d.ts.map +1 -1
  99. package/dist/i18n/generated-locales/it-IT.generated.js +2 -2
  100. package/dist/i18n/generated-locales/ja-JP.generated.d.ts.map +1 -1
  101. package/dist/i18n/generated-locales/ja-JP.generated.js +2 -2
  102. package/dist/i18n/generated-locales/ko-KR.generated.d.ts.map +1 -1
  103. package/dist/i18n/generated-locales/ko-KR.generated.js +2 -2
  104. package/dist/i18n/generated-locales/nl-NL.generated.d.ts.map +1 -1
  105. package/dist/i18n/generated-locales/nl-NL.generated.js +2 -2
  106. package/dist/i18n/generated-locales/no-NO.generated.d.ts.map +1 -1
  107. package/dist/i18n/generated-locales/no-NO.generated.js +2 -2
  108. package/dist/i18n/generated-locales/pl-PL.generated.d.ts.map +1 -1
  109. package/dist/i18n/generated-locales/pl-PL.generated.js +2 -2
  110. package/dist/i18n/generated-locales/pseudo.generated.d.ts.map +1 -1
  111. package/dist/i18n/generated-locales/pseudo.generated.js +2 -2
  112. package/dist/i18n/generated-locales/pt-BR.generated.d.ts.map +1 -1
  113. package/dist/i18n/generated-locales/pt-BR.generated.js +2 -2
  114. package/dist/i18n/generated-locales/pt-PT.generated.d.ts.map +1 -1
  115. package/dist/i18n/generated-locales/pt-PT.generated.js +2 -2
  116. package/dist/i18n/generated-locales/ro-RO.generated.d.ts.map +1 -1
  117. package/dist/i18n/generated-locales/ro-RO.generated.js +2 -2
  118. package/dist/i18n/generated-locales/ru-RU.generated.d.ts.map +1 -1
  119. package/dist/i18n/generated-locales/ru-RU.generated.js +2 -2
  120. package/dist/i18n/generated-locales/sr-SP.generated.d.ts.map +1 -1
  121. package/dist/i18n/generated-locales/sr-SP.generated.js +2 -2
  122. package/dist/i18n/generated-locales/sv-SE.generated.d.ts.map +1 -1
  123. package/dist/i18n/generated-locales/sv-SE.generated.js +2 -2
  124. package/dist/i18n/generated-locales/tr-TR.generated.d.ts.map +1 -1
  125. package/dist/i18n/generated-locales/tr-TR.generated.js +2 -2
  126. package/dist/i18n/generated-locales/uk-UA.generated.d.ts.map +1 -1
  127. package/dist/i18n/generated-locales/uk-UA.generated.js +2 -2
  128. package/dist/i18n/generated-locales/vi-VN.generated.d.ts.map +1 -1
  129. package/dist/i18n/generated-locales/vi-VN.generated.js +2 -2
  130. package/dist/i18n/generated-locales/zh-CN.generated.d.ts.map +1 -1
  131. package/dist/i18n/generated-locales/zh-CN.generated.js +2 -2
  132. package/dist/i18n/generated-locales/zh-TW.generated.d.ts.map +1 -1
  133. package/dist/i18n/generated-locales/zh-TW.generated.js +2 -2
  134. package/dist/motion/animator.d.ts.map +1 -1
  135. package/dist/motion/animator.js +69 -3
  136. package/dist/utils/sharedMutationObserver.d.ts +2 -2
  137. package/dist/utils/sharedMutationObserver.js +2 -2
  138. package/dist/utils/useFocusLeavingChange.d.ts +13 -0
  139. package/dist/utils/useFocusLeavingChange.d.ts.map +1 -0
  140. package/dist/utils/useFocusLeavingChange.js +48 -0
  141. package/locales/af-ZA.json +2 -2
  142. package/locales/ar-SA.json +2 -2
  143. package/locales/ca-ES.json +2 -2
  144. package/locales/cs-CZ.json +2 -2
  145. package/locales/da-DK.json +2 -2
  146. package/locales/de-DE.json +2 -2
  147. package/locales/el-GR.json +2 -2
  148. package/locales/en.json +4 -4
  149. package/locales/es-ES.json +2 -2
  150. package/locales/fi-FI.json +2 -2
  151. package/locales/fr-FR.json +2 -2
  152. package/locales/he-IL.json +2 -2
  153. package/locales/hu-HU.json +2 -2
  154. package/locales/it-IT.json +2 -2
  155. package/locales/ja-JP.json +2 -2
  156. package/locales/ko-KR.json +2 -2
  157. package/locales/nl-NL.json +2 -2
  158. package/locales/no-NO.json +2 -2
  159. package/locales/pl-PL.json +2 -2
  160. package/locales/pseudo.json +2 -2
  161. package/locales/pt-BR.json +2 -2
  162. package/locales/pt-PT.json +2 -2
  163. package/locales/ro-RO.json +2 -2
  164. package/locales/ru-RU.json +2 -2
  165. package/locales/sr-SP.json +2 -2
  166. package/locales/sv-SE.json +2 -2
  167. package/locales/tr-TR.json +2 -2
  168. package/locales/uk-UA.json +2 -2
  169. package/locales/vi-VN.json +2 -2
  170. package/locales/zh-CN.json +2 -2
  171. package/locales/zh-TW.json +2 -2
  172. package/package.json +4 -4
  173. package/src/Banner/Banner.tsx +4 -0
  174. package/src/Chat/ChatComposer.tsx +6 -1
  175. package/src/Chat/useTriggerMenu.tsx +17 -27
  176. package/src/Collapsible/Collapsible.tsx +33 -4
  177. package/src/CommandPalette/CommandPaletteEmpty.tsx +2 -0
  178. package/src/FieldStatus/FieldStatus.tsx +2 -0
  179. package/src/Grid/GridSpan.doc.mjs +51 -2
  180. package/src/Grid/GridSpan.tsx +2 -0
  181. package/src/Heading/Heading.tsx +5 -3
  182. package/src/HoverCard/useHoverCard.tsx +7 -0
  183. package/src/Item/Item.tsx +11 -2
  184. package/src/Layer/layerStructureReset.stylex.ts +5 -0
  185. package/src/Layer/layerSurfacePress.ts +39 -0
  186. package/src/ProgressBar/ProgressBar.tsx +3 -1
  187. package/src/SegmentedControl/SegmentedControl.doc.mjs +5 -5
  188. package/src/SegmentedControl/SegmentedControl.tsx +23 -30
  189. package/src/SegmentedControl/SegmentedControlContext.ts +2 -9
  190. package/src/SegmentedControl/SegmentedControlItem.doc.mjs +1 -1
  191. package/src/SegmentedControl/SegmentedControlItem.tsx +4 -17
  192. package/src/SideNav/SideNav.tsx +120 -103
  193. package/src/SideNav/SideNavHeading.tsx +2 -2
  194. package/src/Text/Heading.doc.mjs +52 -3
  195. package/src/Text/Text.doc.mjs +1 -1
  196. package/src/Text/text.stylex.ts +12 -0
  197. package/src/Toast/Toast.tsx +2 -0
  198. package/src/Token/Token.tsx +8 -1
  199. package/src/Tooltip/useTooltip.tsx +10 -1
  200. package/src/TopNav/TopNavHeading.tsx +8 -2
  201. package/src/TopNav/TopNavMegaMenuFeaturedCard.tsx +9 -2
  202. package/src/TreeList/TreeList.tsx +85 -8
  203. package/src/hooks/ModalAnnounceProvider.tsx +12 -9
  204. package/src/hooks/useClickableContainer.ts +11 -1
  205. package/src/hooks/useKeyboardHint.tsx +7 -1
  206. package/src/hooks/useListFocus.ts +51 -22
  207. package/src/hooks/useTreeFocus.ts +33 -3
  208. package/src/i18n/generated-locales/af-ZA.generated.ts +3 -2
  209. package/src/i18n/generated-locales/ar-SA.generated.ts +3 -2
  210. package/src/i18n/generated-locales/ca-ES.generated.ts +3 -2
  211. package/src/i18n/generated-locales/cs-CZ.generated.ts +3 -2
  212. package/src/i18n/generated-locales/da-DK.generated.ts +3 -2
  213. package/src/i18n/generated-locales/de-DE.generated.ts +3 -2
  214. package/src/i18n/generated-locales/el-GR.generated.ts +3 -2
  215. package/src/i18n/generated-locales/en.generated.ts +3 -2
  216. package/src/i18n/generated-locales/es-ES.generated.ts +3 -2
  217. package/src/i18n/generated-locales/fi-FI.generated.ts +3 -2
  218. package/src/i18n/generated-locales/fr-FR.generated.ts +3 -2
  219. package/src/i18n/generated-locales/he-IL.generated.ts +3 -2
  220. package/src/i18n/generated-locales/hu-HU.generated.ts +3 -2
  221. package/src/i18n/generated-locales/it-IT.generated.ts +3 -2
  222. package/src/i18n/generated-locales/ja-JP.generated.ts +3 -2
  223. package/src/i18n/generated-locales/ko-KR.generated.ts +3 -2
  224. package/src/i18n/generated-locales/nl-NL.generated.ts +3 -2
  225. package/src/i18n/generated-locales/no-NO.generated.ts +3 -2
  226. package/src/i18n/generated-locales/pl-PL.generated.ts +3 -2
  227. package/src/i18n/generated-locales/pseudo.generated.ts +3 -2
  228. package/src/i18n/generated-locales/pt-BR.generated.ts +3 -2
  229. package/src/i18n/generated-locales/pt-PT.generated.ts +3 -2
  230. package/src/i18n/generated-locales/ro-RO.generated.ts +3 -2
  231. package/src/i18n/generated-locales/ru-RU.generated.ts +3 -2
  232. package/src/i18n/generated-locales/sr-SP.generated.ts +3 -2
  233. package/src/i18n/generated-locales/sv-SE.generated.ts +3 -2
  234. package/src/i18n/generated-locales/tr-TR.generated.ts +3 -2
  235. package/src/i18n/generated-locales/uk-UA.generated.ts +3 -2
  236. package/src/i18n/generated-locales/vi-VN.generated.ts +3 -2
  237. package/src/i18n/generated-locales/zh-CN.generated.ts +3 -2
  238. package/src/i18n/generated-locales/zh-TW.generated.ts +3 -2
  239. package/src/motion/animator.ts +81 -11
  240. package/src/utils/sharedMutationObserver.ts +2 -2
  241. package/src/utils/useFocusLeavingChange.ts +53 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Banner.d.ts","sourceRoot":"","sources":["../../src/Banner/Banner.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAEH,OAAO,EAA0B,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAE9D,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAgB5C,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,+BAA+B,CAAC;AAErE,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AAI9C,OAAO,KAAK,EAAC,eAAe,EAAE,kBAAkB,EAAC,MAAM,SAAS,CAAC;AAMjE;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC;AAEjD;;;;;;GAMG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,kBAAkB,CAAC;AAEvD,MAAM,WAAW,WAAY,SAAQ,SAAS,CAAC,cAAc,CAAC;IAC5D,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC;;OAEG;IACH,MAAM,EAAE,YAAY,CAAC;IACrB;;OAEG;IACH,KAAK,EAAE,SAAS,CAAC;IACjB;;OAEG;IACH,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB;;OAEG;IACH,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;;;;;;OAWG;IACH,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;;;;;;;;;;;;;;;;OAkBG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,iBAAiB,CAAC;IAC1C;;;;OAIG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AA4QD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,wBAAgB,MAAM,CAAC,EACrB,MAAM,EACN,KAAK,EACL,WAAW,EACX,IAAI,EACJ,aAAqB,EACrB,SAAS,EACT,YAAY,EACZ,UAAU,EACV,SAAkB,EAClB,SAAkB,EAClB,WAAkB,EAClB,QAAQ,EACR,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,EACH,cAAc,EACd,oBAAoB,EACpB,GAAG,IAAI,EACR,EAAE,WAAW,sCAqQb;yBAzRe,MAAM"}
1
+ {"version":3,"file":"Banner.d.ts","sourceRoot":"","sources":["../../src/Banner/Banner.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAEH,OAAO,EAA0B,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAE9D,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAgB5C,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,+BAA+B,CAAC;AAErE,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AAI9C,OAAO,KAAK,EAAC,eAAe,EAAE,kBAAkB,EAAC,MAAM,SAAS,CAAC;AAMjE;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC;AAEjD;;;;;;GAMG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,kBAAkB,CAAC;AAEvD,MAAM,WAAW,WAAY,SAAQ,SAAS,CAAC,cAAc,CAAC;IAC5D,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC;;OAEG;IACH,MAAM,EAAE,YAAY,CAAC;IACrB;;OAEG;IACH,KAAK,EAAE,SAAS,CAAC;IACjB;;OAEG;IACH,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB;;OAEG;IACH,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;;;;;;OAWG;IACH,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;;;;;;;;;;;;;;;;OAkBG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,iBAAiB,CAAC;IAC1C;;;;OAIG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAgRD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,wBAAgB,MAAM,CAAC,EACrB,MAAM,EACN,KAAK,EACL,WAAW,EACX,IAAI,EACJ,aAAqB,EACrB,SAAS,EACT,YAAY,EACZ,UAAU,EACV,SAAkB,EAClB,SAAkB,EAClB,WAAkB,EAClB,QAAQ,EACR,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,EACH,cAAc,EACd,oBAAoB,EACpB,GAAG,IAAI,EACR,EAAE,WAAW,sCAqQb;yBAzRe,MAAM"}
@@ -471,20 +471,20 @@ export function Banner({
471
471
  children: [/*#__PURE__*/_jsx("div", {
472
472
  ...{
473
473
  0: {
474
- className: "x1ghz6dp xjb2p0i xcr08ib x2mo6ok x1kq96og x1tgivj0 xj0a0fe"
474
+ className: "x1ghz6dp xjb2p0i xcr08ib x2mo6ok x1kq96og x1tgivj0 xj0a0fe x5ujdhh"
475
475
  },
476
476
  1: {
477
- className: "x1ghz6dp xjb2p0i xcr08ib x2mo6ok x1kq96og xj0a0fe x1heor9g"
477
+ className: "x1ghz6dp xjb2p0i xcr08ib x2mo6ok x1kq96og xj0a0fe x5ujdhh x1heor9g"
478
478
  }
479
479
  }[!!hasStatusStyle(status) << 0],
480
480
  children: title
481
481
  }), isRenderable(description) && /*#__PURE__*/_jsx("div", {
482
482
  ...mergeProps(themeProps('banner-description'), {
483
483
  0: {
484
- className: "x1ghz6dp xjb2p0i x141an7d x1sodnla x1ltkj2j xv1l7n4 xj0a0fe"
484
+ className: "x1ghz6dp xjb2p0i x141an7d x1sodnla x1ltkj2j xv1l7n4 xj0a0fe x5ujdhh"
485
485
  },
486
486
  1: {
487
- className: "x1ghz6dp xjb2p0i x141an7d x1sodnla x1ltkj2j xj0a0fe x1heor9g"
487
+ className: "x1ghz6dp xjb2p0i x141an7d x1sodnla x1ltkj2j xj0a0fe x5ujdhh x1heor9g"
488
488
  }
489
489
  }[!!hasStatusStyle(status) << 0]),
490
490
  children: description
@@ -1 +1 @@
1
- {"version":3,"file":"ChatComposer.d.ts","sourceRoot":"","sources":["../../src/Chat/ChatComposer.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,EAKZ,KAAK,SAAS,EAGf,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AA8B5C,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,CAAC;AAEtE,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAC7C,SAAS,CAAC,cAAc,CAAC,EACzB,UAAU,GAAG,UAAU,CACxB;IACC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC,+CAA+C;IAC/C,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,kDAAkD;IAClD,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,kFAAkF;IAClF,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,qCAAqC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uCAAuC;IACvC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sBAAsB;IACtB,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IAI3B,6GAA6G;IAC7G,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,yHAAyH;IACzH,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,yGAAyG;IACzG,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,2DAA2D;IAC3D,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,gHAAgH;IAChH,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,gHAAgH;IAChH,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,gDAAgD;IAChD,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,iEAAiE;IACjE,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,oDAAoD;IACpD,cAAc,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;CACnC;AAoOD;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,qBAoOpD;yBApOe,YAAY"}
1
+ {"version":3,"file":"ChatComposer.d.ts","sourceRoot":"","sources":["../../src/Chat/ChatComposer.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,EAKZ,KAAK,SAAS,EAGf,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAgC5C,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,CAAC;AAEtE,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAC7C,SAAS,CAAC,cAAc,CAAC,EACzB,UAAU,GAAG,UAAU,CACxB;IACC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC,+CAA+C;IAC/C,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,kDAAkD;IAClD,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,kFAAkF;IAClF,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,qCAAqC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uCAAuC;IACvC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sBAAsB;IACtB,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IAI3B,6GAA6G;IAC7G,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,yHAAyH;IACzH,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,yGAAyG;IACzG,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,2DAA2D;IAC3D,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,gHAAgH;IAChH,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,gHAAgH;IAChH,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,gDAAgD;IAChD,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,iEAAiE;IACjE,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,oDAAoD;IACpD,cAAc,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;CACnC;AAoOD;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,qBAuOpD;yBAvOe,YAAY"}
@@ -35,6 +35,8 @@ import { themeProps } from "../utils/themeProps.js";
35
35
  import { useTranslator } from "../i18n/index.js";
36
36
  import { useAnnounceRenderedText } from "../hooks/useAnnounceRenderedText.js";
37
37
  import { useMergedRefs } from "../hooks/useMergedRefs.js";
38
+ import { innermostInteractive } from "../hooks/useClickableContainer.js";
39
+ import { isLayerSurface } from "../Layer/layerSurfacePress.js";
38
40
  import { focusOutlineStyles } from "../utils/focusOutline.stylex.js";
39
41
  import { useInteractionModalityTracking } from "../utils/interactionModality.js";
40
42
 
@@ -174,8 +176,10 @@ export function ChatComposer(props) {
174
176
  const handleBodyClick = useCallback(e => {
175
177
  // Focus the input when clicking empty space in the body.
176
178
  // Skip if the click target is a button, link, or interactive element.
179
+ // A press inside an open Tooltip or HoverCard stays in that surface
180
+ // (component:Tooltip FR11, component:HoverCard FR11).
177
181
  const target = e.target;
178
- if (target.closest('button, a, [role="button"], [contenteditable="true"], [data-astryx-token]')) {
182
+ if (target.closest('button, a, [role="button"], [contenteditable="true"], [data-astryx-token]') || innermostInteractive(target, e.currentTarget, isLayerSurface) != null) {
179
183
  return;
180
184
  }
181
185
  // Prefer the input's registered control (works for any input shape,
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @file useTriggerMenu.tsx
3
- * @input Uses React, usePopover, SearchSource
3
+ * @input Uses React, usePopover, SearchSource, useBusyAnnouncement
4
4
  * @output Exports useTriggerMenu hook for trigger-based menus in contentEditable
5
5
  * @position Internal hook; consumed by ChatComposerInput
6
6
  *
@@ -1 +1 @@
1
- {"version":3,"file":"useTriggerMenu.d.ts","sourceRoot":"","sources":["../../src/Chat/useTriggerMenu.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAML,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAaf,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,oBAAoB,CAAC;AAGvD,OAAO,KAAK,EAAC,mBAAmB,EAAE,iBAAiB,EAAC,MAAM,qBAAqB,CAAC;AAMhF,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACjC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACpD,aAAa,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAClD,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,gBAAgB,CAAC;IACxB,gEAAgE;IAChE,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,+DAA+D;IAC/D,aAAa,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,KAAK,OAAO,CAAC;IACnD,sCAAsC;IACtC,UAAU,EAAE,MAAM,SAAS,CAAC;IAC5B,mCAAmC;IACnC,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB;;;;;OAKG;IACH,SAAS,EAAE;QACT,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC;QAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,uBAAuB,CAAC,EAAE,MAAM,CAAC;QACjC,eAAe,CAAC,EAAE,SAAS,CAAC;KAC7B,CAAC;CACH;AAoOD,wBAAgB,cAAc,CAC5B,OAAO,EAAE,qBAAqB,GAC7B,oBAAoB,CAsqBtB"}
1
+ {"version":3,"file":"useTriggerMenu.d.ts","sourceRoot":"","sources":["../../src/Chat/useTriggerMenu.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAML,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAaf,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,oBAAoB,CAAC;AAGvD,OAAO,KAAK,EAAC,mBAAmB,EAAE,iBAAiB,EAAC,MAAM,qBAAqB,CAAC;AAMhF,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACjC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACpD,aAAa,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAClD,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,gBAAgB,CAAC;IACxB,gEAAgE;IAChE,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,+DAA+D;IAC/D,aAAa,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,KAAK,OAAO,CAAC;IACnD,sCAAsC;IACtC,UAAU,EAAE,MAAM,SAAS,CAAC;IAC5B,mCAAmC;IACnC,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB;;;;;OAKG;IACH,SAAS,EAAE;QACT,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC;QAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,uBAAuB,CAAC,EAAE,MAAM,CAAC;QACjC,eAAe,CAAC,EAAE,SAAS,CAAC;KAC7B,CAAC;CACH;AAoOD,wBAAgB,cAAc,CAC5B,OAAO,EAAE,qBAAqB,GAC7B,oBAAoB,CA4pBtB"}
@@ -4,7 +4,7 @@
4
4
 
5
5
  /**
6
6
  * @file useTriggerMenu.tsx
7
- * @input Uses React, usePopover, SearchSource
7
+ * @input Uses React, usePopover, SearchSource, useBusyAnnouncement
8
8
  * @output Exports useTriggerMenu hook for trigger-based menus in contentEditable
9
9
  * @position Internal hook; consumed by ChatComposerInput
10
10
  *
@@ -24,7 +24,7 @@
24
24
  import { useState, useCallback, useRef, useEffect, useId } from 'react';
25
25
  import * as stylex from '@stylexjs/stylex';
26
26
  import { usePopover } from "../Popover/usePopover.js";
27
- import { useAnnounce } from "../hooks/useAnnounce.js";
27
+ import { useBusyAnnouncement } from "../hooks/useBusyAnnouncement.js";
28
28
  import { useHighlightedOptionScroll } from "../hooks/useHighlightedOptionScroll.js";
29
29
  import "../theme/tokens.stylex.js";
30
30
  import { colorVars, spacingVars, radiusVars, typeScaleVars, typographyVars } from "../theme/tokens.stylex.js";
@@ -194,34 +194,16 @@ export function useTriggerMenu(options) {
194
194
  });
195
195
 
196
196
  // The loading row carries no live role: it mounts already holding its text
197
- // and is removed when results arrive, so it would be skipped. The shared
198
- // channel announces each loading episode once instead (spec:AST-086 FR2,
199
- // FR6), once the row has been painted: the second animation frame runs
200
- // after the first paint, and a search that settles before then never shows
201
- // the row, so it announces nothing (FR7). The flag clears when the loading
202
- // row goes away, so the next search is a new occasion.
203
- const announce = useAnnounce();
204
- const hasAnnouncedLoadingRef = useRef(false);
197
+ // and is removed when results arrive, so it would be skipped. "Searching…"
198
+ // is the menu's busy state, so the shared busy path announces each loading
199
+ // episode once (spec:AST-086 FR6, FR8): rerenders and further keystrokes
200
+ // while loading do not repeat it, results arriving re-arm it, and a search
201
+ // that settles before the announcement goes out announces nothing.
205
202
  // Mirrors renderMenu: no row exists without an active trigger or while hidden.
206
203
  const isLoadingRowShown = state.isLoading && !state.isHidden && state.activeTrigger !== null;
207
204
  // One catalog string serves the row and the announcement (FR7).
208
205
  const loadingText = state.activeTrigger?.loadingText ?? t('@astryx.chatTriggerMenu.searching');
209
- useEffect(() => {
210
- if (!isLoadingRowShown) {
211
- hasAnnouncedLoadingRef.current = false;
212
- return;
213
- }
214
- if (hasAnnouncedLoadingRef.current) {
215
- return;
216
- }
217
- let frame = requestAnimationFrame(() => {
218
- frame = requestAnimationFrame(() => {
219
- hasAnnouncedLoadingRef.current = true;
220
- announce(loadingText, 'polite');
221
- });
222
- });
223
- return () => cancelAnimationFrame(frame);
224
- }, [announce, isLoadingRowShown, loadingText]);
206
+ const settleBusyAnnouncement = useBusyAnnouncement(isLoadingRowShown, loadingText, editableRef);
225
207
  const triggerStartRef = useRef(-1);
226
208
  const searchTimeoutRef = useRef(null);
227
209
  const searchRequestIdRef = useRef(0);
@@ -374,6 +356,9 @@ export function useTriggerMenu(options) {
374
356
  return true;
375
357
  };
376
358
  const applyResults = items => {
359
+ // Results that arrive before the busy start is heard withdraw it, so a
360
+ // search that settles on its first frame announces nothing (FR8).
361
+ settleBusyAnnouncement();
377
362
  const isHidden = isUnmatchedMultiWordQuery(trigger, items, false);
378
363
  setState(prev => ({
379
364
  ...prev,
@@ -399,7 +384,7 @@ export function useTriggerMenu(options) {
399
384
  trigger.searchSource.cancel?.();
400
385
  const result = trigger.searchSource.search(query);
401
386
  // A synchronous source already has its results, so it never shows
402
- // or announces the loading row (spec:AST-086 FR7).
387
+ // or announces the loading row.
403
388
  if (!Array.isArray(result)) {
404
389
  setState(prev => ({
405
390
  ...prev,
@@ -435,7 +420,7 @@ export function useTriggerMenu(options) {
435
420
  doSearch();
436
421
  }
437
422
  }
438
- }, [debounceMs, editableRef, triggers, reset, setAnchor, hidePopover, showPopover]);
423
+ }, [debounceMs, editableRef, triggers, reset, setAnchor, hidePopover, showPopover, settleBusyAnnouncement]);
439
424
  const selectItem = useCallback(item => {
440
425
  const trigger = state.activeTrigger;
441
426
  if (!trigger) {
@@ -1 +1 @@
1
- {"version":3,"file":"Collapsible.d.ts","sourceRoot":"","sources":["../../src/Collapsible/Collapsible.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAQL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAef,OAAO,EAML,KAAK,cAAc,EACpB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAC,0BAA0B,EAAC,MAAM,2BAA2B,CAAC;AAG1E,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AA0J5C,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IACjD,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC;;;OAGG;IACH,OAAO,EAAE,SAAS,CAAC;IAEnB;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IAErB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC;;;;OAIG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;IAEhC;;;;;;;;;;;;OAYG;IACH,eAAe,CAAC,EAAE,0BAA0B,CAAC;IAE7C;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,QAAQ,EACR,aAAa,EACb,MAAM,EAAE,gBAAgB,EACxB,UAAkB,EAClB,YAAY,EACZ,eAAe,EACf,KAAK,EACL,cAAc,EACd,GAAG,EACH,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE,gBAAgB,+BAmOlB;yBAlPe,WAAW"}
1
+ {"version":3,"file":"Collapsible.d.ts","sourceRoot":"","sources":["../../src/Collapsible/Collapsible.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAQL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAuBf,OAAO,EAML,KAAK,cAAc,EACpB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAC,0BAA0B,EAAC,MAAM,2BAA2B,CAAC;AAG1E,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AA0J5C,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IACjD,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC;;;OAGG;IACH,OAAO,EAAE,SAAS,CAAC;IAEnB;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IAErB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC;;;;OAIG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;IAEhC;;;;;;;;;;;;OAYG;IACH,eAAe,CAAC,EAAE,0BAA0B,CAAC;IAE7C;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,QAAQ,EACR,aAAa,EACb,MAAM,EAAE,gBAAgB,EACxB,UAAkB,EAClB,YAAY,EACZ,eAAe,EACf,KAAK,EACL,cAAc,EACd,GAAG,EACH,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE,gBAAgB,+BAwPlB;yBAvQe,WAAW"}
@@ -32,6 +32,10 @@ import "../theme/tokens.stylex.js";
32
32
  import { borderVars, colorVars, typographyVars, fontWeightVars, spacingVars, typeScaleVars, durationVars, easeVars } from "../theme/tokens.stylex.js";
33
33
  import { useCollapsible } from "./useCollapsible.js";
34
34
  import { LayoutChangeSnapshot } from "../motion/LayoutChangeSnapshot.js";
35
+ import { moveFocusLeftBehind, noteFocusWithin } from "../utils/focusReturn.js";
36
+ import { useInteractionModalityTracking } from "../utils/interactionModality.js";
37
+ import { useFocusLeavingChange } from "../utils/useFocusLeavingChange.js";
38
+ import { useMergedRefs } from "../hooks/useMergedRefs.js";
35
39
  import { applyLayoutChangeTransition, holdLayoutExit, playLayoutChange, releaseLayoutExit, reportLayoutChange } from "../motion/animatedLayout.js";
36
40
  import { CollapsibleGroupPresentationContext } from "./CollapsibleGroupContext.js";
37
41
  import { Icon } from "../Icon/index.js";
@@ -303,6 +307,22 @@ export function Collapsible({
303
307
  }
304
308
  }, [isOpen, isExiting]);
305
309
 
310
+ // Focus inside the content when it closes would be lost to the page once
311
+ // the content hides. It moves to the trigger that closes it (AR4); focus
312
+ // anywhere else is not moved. The shared sequence notes it in the commit
313
+ // before the DOM changes and moves it once the close has committed.
314
+ // The trigger's own document's last input decides the moved focus's ring.
315
+ const {
316
+ ref: modalityRef
317
+ } = useInteractionModalityTracking();
318
+ const mergedTriggerRef = useMergedRefs(triggerRef, modalityRef);
319
+ const noteClosingFocus = useFocusLeavingChange(isOpen, wasOpen => wasOpen ? noteFocusWithin(contentRef.current) : null, focus => moveFocusLeftBehind(focus, triggerRef.current, contentRef.current));
320
+ const beforeOpenChange = useCallback(wasOpen => {
321
+ noteClosingFocus(wasOpen);
322
+ if (animatedLayout != null) {
323
+ measureChange();
324
+ }
325
+ }, [animatedLayout, measureChange, noteClosingFocus]);
306
326
  // Activation is blocked by this guard rather than the native `disabled`
307
327
  // attribute, so the trigger keeps `aria-disabled` semantics and stays
308
328
  // discoverable. A native `disabled` button would silently swallow events
@@ -349,7 +369,7 @@ export function Collapsible({
349
369
  }), stylex.props(styles.root, isDivided && styles.divided, xstyle), className, style),
350
370
  ...props,
351
371
  children: [/*#__PURE__*/_jsxs("button", {
352
- ref: triggerRef,
372
+ ref: mergedTriggerRef,
353
373
  type: "button",
354
374
  onClick: handleToggle,
355
375
  "aria-disabled": isDisabled || undefined,
@@ -379,9 +399,9 @@ export function Collapsible({
379
399
  },
380
400
  children: trigger
381
401
  }), !isChevronAtStart && chevron]
382
- }), animatedLayout != null && /*#__PURE__*/_jsx(LayoutChangeSnapshot, {
402
+ }), /*#__PURE__*/_jsx(LayoutChangeSnapshot, {
383
403
  value: isOpen,
384
- onBeforeChange: measureChange
404
+ onBeforeChange: beforeOpenChange
385
405
  }), /*#__PURE__*/_jsx("div", {
386
406
  ref: contentRef,
387
407
  id: contentId,
@@ -1 +1 @@
1
- {"version":3,"file":"CommandPaletteEmpty.d.ts","sourceRoot":"","sources":["../../src/CommandPalette/CommandPaletteEmpty.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,EAAC,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAS5C,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAsB5C,MAAM,WAAW,wBAAyB,SAAQ,SAAS,CAAC,cAAc,CAAC;IACzE,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC,yCAAyC;IACzC,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,GAAG,EACH,QAAQ,EACR,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE,wBAAwB,qBAc1B;yBArBe,mBAAmB"}
1
+ {"version":3,"file":"CommandPaletteEmpty.d.ts","sourceRoot":"","sources":["../../src/CommandPalette/CommandPaletteEmpty.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,EAAC,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAS5C,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAwB5C,MAAM,WAAW,wBAAyB,SAAQ,SAAS,CAAC,cAAc,CAAC;IACzE,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC,yCAAyC;IACzC,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,GAAG,EACH,QAAQ,EACR,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE,wBAAwB,qBAc1B;yBArBe,mBAAmB"}
@@ -32,6 +32,7 @@ const styles = {
32
32
  kMwMTN: "xv1l7n4",
33
33
  k9WMMc: "x2b8uid",
34
34
  kHjlTd: "xj0a0fe",
35
+ "--_astryx-text-overflow-wrap": "x5ujdhh",
35
36
  $$css: true
36
37
  }
37
38
  };
@@ -1 +1 @@
1
- {"version":3,"file":"FieldStatus.d.ts","sourceRoot":"","sources":["../../src/FieldStatus/FieldStatus.tsx"],"names":[],"mappings":"AAmBA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAS5C,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,gBAAgB,CAAC;AAKpD,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,SAAS,CAAC;AAmFnD;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,qBAAqB,CAAC;AAE7D,MAAM,WAAW,gBAAiB,SAAQ,SAAS,CAAC,cAAc,CAAC;IACjE;;OAEG;IACH,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC;;OAEG;IACH,IAAI,EAAE,eAAe,CAAC;IACtB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B;AAKD;;;;;GAKG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,gBAAgB,GAAG;IAAC,OAAO,EAAE,SAAS,CAAA;CAAC,GAC7C,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;AACrB;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;yBAAxD,WAAW"}
1
+ {"version":3,"file":"FieldStatus.d.ts","sourceRoot":"","sources":["../../src/FieldStatus/FieldStatus.tsx"],"names":[],"mappings":"AAmBA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAS5C,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,gBAAgB,CAAC;AAKpD,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,SAAS,CAAC;AAqFnD;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,qBAAqB,CAAC;AAE7D,MAAM,WAAW,gBAAiB,SAAQ,SAAS,CAAC,cAAc,CAAC;IACjE;;OAEG;IACH,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC;;OAEG;IACH,IAAI,EAAE,eAAe,CAAC;IACtB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B;AAKD;;;;;GAKG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,gBAAgB,GAAG;IAAC,OAAO,EAAE,SAAS,CAAA;CAAC,GAC7C,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;AACrB;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;yBAAxD,WAAW"}
@@ -49,6 +49,7 @@ const styles = {
49
49
  kGuDYH: "x141an7d",
50
50
  kLWn49: "x1ltkj2j",
51
51
  kHjlTd: "xj0a0fe",
52
+ "--_astryx-text-overflow-wrap": "x5ujdhh",
52
53
  $$css: true
53
54
  },
54
55
  attached: {
@@ -5,8 +5,10 @@
5
5
  * @position Grid span component; controls grid item span
6
6
  *
7
7
  * SYNC: When modified, update these files to stay in sync:
8
+ * - /packages/core/src/Grid/GridSpan.doc.mjs
8
9
  * - /packages/core/src/Grid/Grid.doc.mjs
9
10
  * - /packages/core/src/Grid/Grid.test.tsx
11
+ * - /apps/storybook/stories/GridSpan.stories.tsx
10
12
  * - /apps/storybook/stories/Grid.stories.tsx
11
13
  * - /packages/cli/assets/templates/blocks/components/Grid/ (showcase blocks)
12
14
  */
@@ -1 +1 @@
1
- {"version":3,"file":"GridSpan.d.ts","sourceRoot":"","sources":["../../src/Grid/GridSpan.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAK5C,MAAM,WAAW,aAAc,SAAQ,SAAS,CAAC,cAAc,CAAC;IAC9D,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE1B;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAeD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,QAAQ,CAAC,EACvB,OAAO,EACP,IAAI,EACJ,MAAM,EACN,SAAS,EACT,KAAK,EACL,QAAQ,EACR,GAAG,EACH,GAAG,KAAK,EACT,EAAE,aAAa,+BAwBf;yBAjCe,QAAQ"}
1
+ {"version":3,"file":"GridSpan.d.ts","sourceRoot":"","sources":["../../src/Grid/GridSpan.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAK5C,MAAM,WAAW,aAAc,SAAQ,SAAS,CAAC,cAAc,CAAC;IAC9D,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE1B;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAeD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,QAAQ,CAAC,EACvB,OAAO,EACP,IAAI,EACJ,MAAM,EACN,SAAS,EACT,KAAK,EACL,QAAQ,EACR,GAAG,EACH,GAAG,KAAK,EACT,EAAE,aAAa,+BAwBf;yBAjCe,QAAQ"}
@@ -7,8 +7,10 @@
7
7
  * @position Grid span component; controls grid item span
8
8
  *
9
9
  * SYNC: When modified, update these files to stay in sync:
10
+ * - /packages/core/src/Grid/GridSpan.doc.mjs
10
11
  * - /packages/core/src/Grid/Grid.doc.mjs
11
12
  * - /packages/core/src/Grid/Grid.test.tsx
13
+ * - /apps/storybook/stories/GridSpan.stories.tsx
12
14
  * - /apps/storybook/stories/Grid.stories.tsx
13
15
  * - /packages/cli/assets/templates/blocks/components/Grid/ (showcase blocks)
14
16
  */
@@ -5,10 +5,12 @@
5
5
  * @position Core implementation; lives in own Heading/ dir, re-exported by Text/
6
6
  *
7
7
  * SYNC: When modified, update these files to stay in sync:
8
- * - /packages/core/src/Text/Text.doc.mjs (props table, features, implementation notes)
8
+ * - /packages/core/src/Text/Heading.doc.mjs (props table, theming target)
9
+ * - /packages/core/src/Text/Text.doc.mjs (shared truncation and tooltip guidance)
9
10
  * - /packages/core/src/Heading/Heading.test.tsx (tests for new/changed behavior)
10
- * - /packages/core/src/Text/index.ts (exports if types change)
11
- * - /apps/storybook/stories/Text.stories.tsx (storybook stories)
11
+ * - /packages/core/src/Heading/index.ts (exports if types change)
12
+ * - /packages/core/src/Text/index.ts (re-exports if types change)
13
+ * - /apps/storybook/stories/Heading.stories.tsx (storybook stories)
12
14
  * - /packages/cli/assets/templates/blocks/components/Heading/ (showcase blocks)
13
15
  * - /packages/cli/assets/templates/blocks/components/Text/ (showcase blocks)
14
16
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Heading.d.ts","sourceRoot":"","sources":["../../src/Heading/Heading.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAyB,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAE7D,OAAO,KAAK,EACV,SAAS,EACT,WAAW,EACX,WAAW,EACX,SAAS,EACT,QAAQ,EACR,UAAU,EACX,MAAM,gBAAgB,CAAC;AAkBxB,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,UAAU,CAAC;AAG7C,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAE5C,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,SAAS,CAAC;AAM5C;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAEjD;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC;AAQ/C,MAAM,WAAW,YAAa,SAAQ,IAAI,CACxC,SAAS,CAAC,kBAAkB,CAAC,EAC7B,UAAU,CACX;IACC,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IACpC;;;OAGG;IACH,KAAK,EAAE,YAAY,CAAC;IAEpB;;;;;;;;;;;;;OAaG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;IAEnB;;;;OAIG;IACH,MAAM,CAAC,EAAE,UAAU,CAAC;IAEpB;;;;;;;;;;;OAWG;IACH,kBAAkB,CAAC,EAAE,YAAY,CAAC;IAElC;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB;;;;OAIG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IAEtB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,OAAO,GAAG,cAAc,CAAC;IAE9C;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB;;;;OAIG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IAEtB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;OAEG;IACH,QAAQ,EAAE,SAAS,CAAC;CACrB;AAWD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,OAAO,CAAC,EACtB,KAAK,EACL,IAAI,EACJ,MAAM,EACN,kBAAkB,EAClB,KAAiB,EACjB,OAAiB,EACjB,QAAY,EACZ,kBAAyB,EACzB,SAAS,EACT,QAAQ,EACR,OAAiB,EACjB,UAAkB,EAClB,gBAAwB,EACxB,MAAM,EACN,SAAS,EACT,KAAK,EACL,QAAQ,EACR,GAAG,EACH,GAAG,KAAK,EACT,EAAE,YAAY,+BAsGd;yBA1He,OAAO"}
1
+ {"version":3,"file":"Heading.d.ts","sourceRoot":"","sources":["../../src/Heading/Heading.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAyB,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAE7D,OAAO,KAAK,EACV,SAAS,EACT,WAAW,EACX,WAAW,EACX,SAAS,EACT,QAAQ,EACR,UAAU,EACX,MAAM,gBAAgB,CAAC;AAkBxB,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,UAAU,CAAC;AAG7C,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAE5C,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,SAAS,CAAC;AAM5C;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAEjD;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC;AAQ/C,MAAM,WAAW,YAAa,SAAQ,IAAI,CACxC,SAAS,CAAC,kBAAkB,CAAC,EAC7B,UAAU,CACX;IACC,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IACpC;;;OAGG;IACH,KAAK,EAAE,YAAY,CAAC;IAEpB;;;;;;;;;;;;;OAaG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;IAEnB;;;;OAIG;IACH,MAAM,CAAC,EAAE,UAAU,CAAC;IAEpB;;;;;;;;;;;OAWG;IACH,kBAAkB,CAAC,EAAE,YAAY,CAAC;IAElC;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB;;;;OAIG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IAEtB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,OAAO,GAAG,cAAc,CAAC;IAE9C;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB;;;;OAIG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IAEtB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;OAEG;IACH,QAAQ,EAAE,SAAS,CAAC;CACrB;AAWD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,OAAO,CAAC,EACtB,KAAK,EACL,IAAI,EACJ,MAAM,EACN,kBAAkB,EAClB,KAAiB,EACjB,OAAiB,EACjB,QAAY,EACZ,kBAAyB,EACzB,SAAS,EACT,QAAQ,EACR,OAAiB,EACjB,UAAkB,EAClB,gBAAwB,EACxB,MAAM,EACN,SAAS,EACT,KAAK,EACL,QAAQ,EACR,GAAG,EACH,GAAG,KAAK,EACT,EAAE,YAAY,+BAsGd;yBA1He,OAAO"}
@@ -9,10 +9,12 @@
9
9
  * @position Core implementation; lives in own Heading/ dir, re-exported by Text/
10
10
  *
11
11
  * SYNC: When modified, update these files to stay in sync:
12
- * - /packages/core/src/Text/Text.doc.mjs (props table, features, implementation notes)
12
+ * - /packages/core/src/Text/Heading.doc.mjs (props table, theming target)
13
+ * - /packages/core/src/Text/Text.doc.mjs (shared truncation and tooltip guidance)
13
14
  * - /packages/core/src/Heading/Heading.test.tsx (tests for new/changed behavior)
14
- * - /packages/core/src/Text/index.ts (exports if types change)
15
- * - /apps/storybook/stories/Text.stories.tsx (storybook stories)
15
+ * - /packages/core/src/Heading/index.ts (exports if types change)
16
+ * - /packages/core/src/Text/index.ts (re-exports if types change)
17
+ * - /apps/storybook/stories/Heading.stories.tsx (storybook stories)
16
18
  * - /packages/cli/assets/templates/blocks/components/Heading/ (showcase blocks)
17
19
  * - /packages/cli/assets/templates/blocks/components/Text/ (showcase blocks)
18
20
  */
@@ -1 +1 @@
1
- {"version":3,"file":"useHoverCard.d.ts","sourceRoot":"","sources":["../../src/HoverCard/useHoverCard.tsx"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AAEH,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,WAAW,EACjB,MAAM,OAAO,CAAC;AAEf,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,0BAA0B,CAAC;AA6BlC;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEhE;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,CAAC;AAEtD,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,SAAS,CAAC,EAAE,cAAc,CAAC;IAE3B;;;OAGG;IACH,SAAS,CAAC,EAAE,cAAc,CAAC;IAE3B;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,qBAAqB,CAAC;IAErC;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,qBAAqB,CAAC;IAErC;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;;;;;;;OAUG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IAEpB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,GAAG,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IAE9B;;;OAGG;IACH,WAAW,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IAEtC;;;;OAIG;IACH,cAAc,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IAEzC;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;;;;;OAMG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;;;;;;OAOG;IACH,eAAe,EAAE,CACf,QAAQ,EAAE,SAAS,EACnB,KAAK,CAAC,EAAE,IAAI,CAAC,kBAAkB,EAAE,aAAa,CAAC,KAC5C,SAAS,CAAC;IAEf;;OAEG;IACH,IAAI,EAAE,MAAM,IAAI,CAAC;IAEjB;;OAEG;IACH,IAAI,EAAE,MAAM,IAAI,CAAC;CAClB;AAyBD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,YAAY,CAAC,OAAO,GAAE,gBAAqB,GAAG,eAAe,CAyc5E"}
1
+ {"version":3,"file":"useHoverCard.d.ts","sourceRoot":"","sources":["../../src/HoverCard/useHoverCard.tsx"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AAEH,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,WAAW,EACjB,MAAM,OAAO,CAAC;AAEf,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,0BAA0B,CAAC;AA8BlC;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEhE;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,CAAC;AAEtD,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,SAAS,CAAC,EAAE,cAAc,CAAC;IAE3B;;;OAGG;IACH,SAAS,CAAC,EAAE,cAAc,CAAC;IAE3B;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,qBAAqB,CAAC;IAErC;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,qBAAqB,CAAC;IAErC;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;;;;;;;OAUG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IAEpB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,GAAG,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IAE9B;;;OAGG;IACH,WAAW,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IAEtC;;;;OAIG;IACH,cAAc,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IAEzC;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;;;;;OAMG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;;;;;;OAOG;IACH,eAAe,EAAE,CACf,QAAQ,EAAE,SAAS,EACnB,KAAK,CAAC,EAAE,IAAI,CAAC,kBAAkB,EAAE,aAAa,CAAC,KAC5C,SAAS,CAAC;IAEf;;OAEG;IACH,IAAI,EAAE,MAAM,IAAI,CAAC;IAEjB;;OAEG;IACH,IAAI,EAAE,MAAM,IAAI,CAAC;CAClB;AAyBD;;;;;;;;;;;;;;;;GAgBG;AAEH,wBAAgB,YAAY,CAAC,OAAO,GAAE,gBAAqB,GAAG,eAAe,CA8c5E"}
@@ -16,6 +16,7 @@ import * as stylex from '@stylexjs/stylex';
16
16
  import { useLayer } from "../Layer/useLayer.js";
17
17
  import { useTouchTrigger } from "../Layer/useTouchTrigger.js";
18
18
  import { layerAnimations } from "../Layer/layerAnimations.stylex.js";
19
+ import { registerLayerSurface } from "../Layer/layerSurfacePress.js";
19
20
  import { useLayerDismissal } from "../Layer/useLayerDismissal.js";
20
21
  import "../theme/tokens.stylex.js";
21
22
  import { colorVars, shadowVars, radiusVars, spacingVars } from "../theme/tokens.stylex.js";
@@ -78,6 +79,7 @@ function isFocusable(element) {
78
79
  * {hoverCard.renderHoverCard(<ProfileCard user={user} />)}
79
80
  * ```
80
81
  */
82
+
81
83
  export function useHoverCard(options = {}) {
82
84
  const {
83
85
  placement = 'above',
@@ -406,6 +408,11 @@ export function useHoverCard(options = {}) {
406
408
  as: 'div'
407
409
  };
408
410
  return renderLayer(/*#__PURE__*/_jsx("div", {
411
+ // FR11: a press inside the card acts only within the card. A
412
+ // registered surface counts as something else in the shared
413
+ // interactive-ancestor walk, so a clickable container around the
414
+ // trigger leaves it alone; document listeners still see it.
415
+ ref: registerLayerSurface,
409
416
  ...{
410
417
  className: "x1lliihq x1vlblms xvmdzux x126nfab x1t818jl"
411
418
  },
@@ -1 +1 @@
1
- {"version":3,"file":"Item.d.ts","sourceRoot":"","sources":["../../src/Item/Item.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Item.d.ts","sourceRoot":"","sources":["../../src/Item/Item.tsx"],"names":[],"mappings":"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"}
package/dist/Item/Item.js CHANGED
@@ -32,6 +32,7 @@ import { lazy, Suspense, use, useCallback, useId, useRef } from 'react';
32
32
  import * as stylex from '@stylexjs/stylex';
33
33
  import "../theme/tokens.stylex.js";
34
34
  import { colorVars, radiusVars, spacingVars, durationVars, easeVars, typeScaleVars } from "../theme/tokens.stylex.js";
35
+ import { isLayerSurface } from "../Layer/layerSurfacePress.js";
35
36
  import { isRenderable } from "../utils/isRenderable.js";
36
37
  import { mergeProps } from "../utils/mergeProps.js";
37
38
  import { useFocusAcrossSwap } from "../utils/useFocusAcrossSwap.js";
@@ -40,7 +41,7 @@ import { ItemMarkerColumnsContext } from "./ItemMarkerColumnsContext.js";
40
41
  import { useMergedRefs } from "../hooks/useMergedRefs.js";
41
42
  import { computeTargetAndRel } from "../Link/computeTargetAndRel.js";
42
43
  import { useLinkComponent } from "../Link/useLinkComponent.js";
43
- import { useClickableContainer } from "../hooks/useClickableContainer.js";
44
+ import { innermostInteractive, useClickableContainer } from "../hooks/useClickableContainer.js";
44
45
  import { useDevWarning } from "../hooks/useDevWarning.js";
45
46
  import { themeProps } from "../utils/themeProps.js";
46
47
  import { focusOutlineProps } from "../utils/focusOutline.stylex.js";
@@ -370,7 +371,10 @@ export function Item({
370
371
  return;
371
372
  }
372
373
  const target = e.target;
373
- if (target.closest('button, a, input, select, textarea')) {
374
+ if (target.closest('button, a, input, select, textarea') ||
375
+ // A press inside an open Tooltip or HoverCard belongs to it
376
+ // (component:Tooltip FR11, component:HoverCard FR11).
377
+ innermostInteractive(target, e.currentTarget, isLayerSurface) != null) {
374
378
  return;
375
379
  }
376
380
  onClick?.(e);
@@ -18,6 +18,7 @@ import * as stylex from '@stylexjs/stylex';
18
18
  export declare const layerStructureReset: Readonly<{
19
19
  readonly reset: Readonly<{
20
20
  readonly '--step-connector-gap': stylex.StyleXClassNameFor<"--step-connector-gap", "initial">;
21
+ readonly '--_astryx-text-overflow-wrap': stylex.StyleXClassNameFor<"--_astryx-text-overflow-wrap", "initial">;
21
22
  }>;
22
23
  }>;
23
24
  //# sourceMappingURL=layerStructureReset.stylex.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"layerStructureReset.stylex.d.ts","sourceRoot":"","sources":["../../src/Layer/layerStructureReset.stylex.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,OAAO,KAAK,MAAM,MAAM,kBAAkB,CAAC;AAE3C;;;;;;;;;GASG;AACH,eAAO,MAAM,mBAAmB;;;;EAS9B,CAAC"}
1
+ {"version":3,"file":"layerStructureReset.stylex.d.ts","sourceRoot":"","sources":["../../src/Layer/layerStructureReset.stylex.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,OAAO,KAAK,MAAM,MAAM,kBAAkB,CAAC;AAE3C;;;;;;;;;GASG;AACH,eAAO,MAAM,mBAAmB;;;;;EAc9B,CAAC"}
@@ -22,6 +22,7 @@ import * as stylex from '@stylexjs/stylex';
22
22
  export const layerStructureReset = {
23
23
  reset: {
24
24
  "--step-connector-gap": "x1qkaldv",
25
+ "--_astryx-text-overflow-wrap": "x1c9qq8g",
25
26
  $$css: true
26
27
  }
27
28
  };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Ref callback for a layer surface's content element. The layer root around
3
+ * it is registered too: a caller's `style`, `xstyle` or `className` (padding,
4
+ * for instance) lands there, so a press on that edge is still the surface's.
5
+ */
6
+ export declare function registerLayerSurface(element: Element | null): void;
7
+ /** Whether this element is a registered layer surface. */
8
+ export declare function isLayerSurface(element: Element): boolean;
9
+ //# sourceMappingURL=layerSurfacePress.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layerSurfacePress.d.ts","sourceRoot":"","sources":["../../src/Layer/layerSurfacePress.ts"],"names":[],"mappings":"AAmBA;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,GAAG,IAAI,CASlE;AAED,0DAA0D;AAC1D,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAExD"}
@@ -0,0 +1,39 @@
1
+ // Copyright (c) Meta Platforms, Inc. and affiliates.
2
+
3
+ /**
4
+ * @file layerSurfacePress.ts
5
+ * @input The content element of an open Tooltip or HoverCard surface.
6
+ * @output A registry of those elements, so the shared "does this press belong
7
+ * to something else" walk (hasInteractiveAncestor) treats a press inside one
8
+ * as not the container's.
9
+ * @position component:Tooltip FR11 and component:HoverCard FR11. The surfaces
10
+ * register their content element; every clickable container that asks
11
+ * hasInteractiveAncestor (useClickableContainer, TreeListItem, Table row
12
+ * plugins), or walks with isLayerSurface (Item, Token), leaves the press
13
+ * alone. The event
14
+ * keeps propagating, so document and window listeners still see it. Not
15
+ * exported from the package.
16
+ */
17
+
18
+ const surfaces = new WeakSet();
19
+
20
+ /**
21
+ * Ref callback for a layer surface's content element. The layer root around
22
+ * it is registered too: a caller's `style`, `xstyle` or `className` (padding,
23
+ * for instance) lands there, so a press on that edge is still the surface's.
24
+ */
25
+ export function registerLayerSurface(element) {
26
+ if (element == null) {
27
+ return;
28
+ }
29
+ surfaces.add(element);
30
+ const root = element.parentElement;
31
+ if (root?.hasAttribute('popover')) {
32
+ surfaces.add(root);
33
+ }
34
+ }
35
+
36
+ /** Whether this element is a registered layer surface. */
37
+ export function isLayerSurface(element) {
38
+ return surfaces.has(element);
39
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"ProgressBar.d.ts","sourceRoot":"","sources":["../../src/ProgressBar/ProgressBar.tsx"],"names":[],"mappings":"AAiCA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAG5C,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,SAAS,CAAC;AAUnD;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,qBAAqB,CAAC;AAE7D;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;;;;OAMG;IACH,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gBAAiB,SAAQ,SAAS,CAAC,cAAc,CAAC;IACjE,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1D;;;OAGG;IACH,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;;;;;;OAUG;IACH,KAAK,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;IACvC;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAqSD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,wBAAgB,WAAW,CAAC,EAC1B,KAAS,EACT,GAAS,EACT,KAAK,EACL,aAAqB,EACrB,aAAqB,EACrB,gBAA0C,EAC1C,OAAkB,EAClB,eAAuB,EACvB,UAAkB,EAClB,KAAK,EACL,MAAM,EACN,SAAS,EACT,KAAK,EACL,aAAa,EAAE,UAAU,EACzB,GAAG,EACH,GAAG,IAAI,EACR,EAAE,gBAAgB,+BA4JlB;yBA7Ke,WAAW"}
1
+ {"version":3,"file":"ProgressBar.d.ts","sourceRoot":"","sources":["../../src/ProgressBar/ProgressBar.tsx"],"names":[],"mappings":"AAiCA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAG5C,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,SAAS,CAAC;AAUnD;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,qBAAqB,CAAC;AAE7D;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;;;;OAMG;IACH,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gBAAiB,SAAQ,SAAS,CAAC,cAAc,CAAC;IACjE,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1D;;;OAGG;IACH,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;;;;;;OAUG;IACH,KAAK,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;IACvC;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAqSD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,wBAAgB,WAAW,CAAC,EAC1B,KAAS,EACT,GAAS,EACT,KAAK,EACL,aAAqB,EACrB,aAAqB,EACrB,gBAA0C,EAC1C,OAAkB,EAClB,eAAuB,EACvB,UAAkB,EAClB,KAAK,EACL,MAAM,EACN,SAAS,EACT,KAAK,EACL,aAAa,EAAE,UAAU,EACzB,GAAG,EACH,GAAG,IAAI,EACR,EAAE,gBAAgB,+BA8JlB;yBA/Ke,WAAW"}
@@ -370,7 +370,7 @@ export function ProgressBar({
370
370
  }), resolvedMarks.map(mark => {
371
371
  // The tick element. It is both the Tooltip's anchor and the Suspense
372
372
  // fallback shown while the lazy Tooltip chunk loads, so the tick is
373
- // always visible and the label attaches once ready. The list `key`
373
+ // always visible and the tooltip attaches once ready. The list `key`
374
374
  // lives on the mapped <Suspense>, not here.
375
375
  //
376
376
  // `placement` is reflected as `data-placement` (and a class) so a
@@ -378,6 +378,8 @@ export function ProgressBar({
378
378
  // `progress-bar-mark` target; `variant` mirrors the fill's variant
379
379
  // for the same reason.
380
380
  const markEl = /*#__PURE__*/_jsx("span", {
381
+ role: "img",
382
+ "aria-label": mark.label,
381
383
  tabIndex: 0,
382
384
  ...mergeProps(themeProps('progress-bar-mark', {
383
385
  variant: fillVariant,
@@ -41,7 +41,9 @@ export interface SegmentedControlProps extends Omit<BaseProps<HTMLDivElement>, '
41
41
  */
42
42
  layout?: SegmentedControlLayout;
43
43
  /**
44
- * Whether the entire control is disabled.
44
+ * Whether the entire control is disabled. The selected segment keeps the
45
+ * control's Tab stop, announced as disabled (`aria-disabled`), and nothing
46
+ * can be selected.
45
47
  * @default false
46
48
  */
47
49
  isDisabled?: boolean;
@@ -49,11 +51,11 @@ export interface SegmentedControlProps extends Omit<BaseProps<HTMLDivElement>, '
49
51
  * Explains why the control is disabled. Applies to the whole-group disabled
50
52
  * state (`isDisabled`), not individual segments. When set together with
51
53
  * `isDisabled`, the control shows a tooltip with this text on hover and
52
- * keyboard focus, and stays focusable (via `aria-disabled`) so the reason is
53
- * discoverable by keyboard and assistive technology. Selection stays blocked.
54
+ * keyboard focus, and the reason describes each segment for assistive
55
+ * technology. Selection stays blocked.
54
56
  *
55
- * Use this instead of wrapping a disabled control in `Tooltip` — disabled
56
- * controls don't emit the pointer events an external tooltip needs.
57
+ * Use this instead of wrapping a disabled control in `Tooltip`, so the
58
+ * reason is attached to the control itself.
57
59
  */
58
60
  disabledMessage?: string;
59
61
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"SegmentedControl.d.ts","sourceRoot":"","sources":["../../src/SegmentedControl/SegmentedControl.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,EAAuB,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAQlE,OAAO,KAAK,EACV,oBAAoB,EACpB,sBAAsB,EACvB,MAAM,2BAA2B,CAAC;AAInC,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAI5C,MAAM,WAAW,qBAAsB,SAAQ,IAAI,CACjD,SAAS,CAAC,cAAc,CAAC,EACzB,UAAU,CACX;IACC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,IAAI,CAAC,EAAE,oBAAoB,CAAC;IAC5B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;;OASG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,QAAQ,EAAE,SAAS,CAAC;CACrB;AA8DD;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,GAAG,EACH,KAAK,EACL,QAAQ,EACR,KAAK,EACL,IAAI,EAAE,QAAQ,EACd,MAAc,EACd,UAAkB,EAClB,eAAe,EACf,QAAQ,EACR,MAAM,EACN,SAAS,EACT,KAAK,EACL,SAAS,EAAE,aAAa,EACxB,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,UAAU,EAClB,kBAAkB,EAAE,mBAAmB,EACvC,GAAG,IAAI,EACR,EAAE,qBAAqB,qBAyJvB;yBA3Ke,gBAAgB"}
1
+ {"version":3,"file":"SegmentedControl.d.ts","sourceRoot":"","sources":["../../src/SegmentedControl/SegmentedControl.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,EAAuB,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAQlE,OAAO,KAAK,EACV,oBAAoB,EACpB,sBAAsB,EACvB,MAAM,2BAA2B,CAAC;AAInC,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAI5C,MAAM,WAAW,qBAAsB,SAAQ,IAAI,CACjD,SAAS,CAAC,cAAc,CAAC,EACzB,UAAU,CACX;IACC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,IAAI,CAAC,EAAE,oBAAoB,CAAC;IAC5B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;;OASG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,QAAQ,EAAE,SAAS,CAAC;CACrB;AA0DD;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,GAAG,EACH,KAAK,EACL,QAAQ,EACR,KAAK,EACL,IAAI,EAAE,QAAQ,EACd,MAAc,EACd,UAAkB,EAClB,eAAe,EACf,QAAQ,EACR,MAAM,EACN,SAAS,EACT,KAAK,EACL,SAAS,EAAE,aAAa,EACxB,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,UAAU,EAClB,kBAAkB,EAAE,mBAAmB,EACvC,GAAG,IAAI,EACR,EAAE,qBAAqB,qBAoJvB;yBAtKe,gBAAgB"}