@astryxdesign/core 0.7.5-canary.577e8ca → 0.7.5-canary.5b691cd

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 (671) hide show
  1. package/README.md +12 -9
  2. package/dist/Avatar/AvatarStatusDot.js +2 -2
  3. package/dist/Badge/Badge.d.ts.map +1 -1
  4. package/dist/Badge/Badge.js +18 -2
  5. package/dist/Banner/Banner.d.ts.map +1 -1
  6. package/dist/Banner/Banner.js +62 -9
  7. package/dist/BottomSheet/BottomSheet.d.ts.map +1 -1
  8. package/dist/BottomSheet/BottomSheet.js +43 -74
  9. package/dist/BottomSheet/BottomSheetPanel.d.ts.map +1 -1
  10. package/dist/BottomSheet/BottomSheetPanel.js +30 -12
  11. package/dist/BottomSheet/bottomSheetEscape.d.ts +3 -0
  12. package/dist/BottomSheet/bottomSheetEscape.d.ts.map +1 -0
  13. package/dist/BottomSheet/bottomSheetEscape.js +20 -0
  14. package/dist/BottomSheet/useSheetGestures.d.ts.map +1 -1
  15. package/dist/BottomSheet/useSheetGestures.js +5 -1
  16. package/dist/Button/Button.d.ts.map +1 -1
  17. package/dist/Button/Button.js +10 -3
  18. package/dist/Chat/ChatComposer.d.ts.map +1 -1
  19. package/dist/Chat/ChatComposer.js +24 -31
  20. package/dist/Chat/ChatMessageMetadata.js +2 -2
  21. package/dist/Chat/ChatToolCalls.js +4 -4
  22. package/dist/CodeBlock/CodeBlock.d.ts +16 -2
  23. package/dist/CodeBlock/CodeBlock.d.ts.map +1 -1
  24. package/dist/CodeBlock/CodeBlock.js +18 -7
  25. package/dist/CodeBlock/grammar.d.ts +128 -0
  26. package/dist/CodeBlock/grammar.d.ts.map +1 -0
  27. package/dist/CodeBlock/grammar.js +202 -0
  28. package/dist/CodeBlock/index.d.ts +2 -0
  29. package/dist/CodeBlock/index.d.ts.map +1 -1
  30. package/dist/CodeBlock/index.js +1 -0
  31. package/dist/CodeBlock/languages/dockerfile.d.ts +3 -0
  32. package/dist/CodeBlock/languages/dockerfile.d.ts.map +1 -0
  33. package/dist/CodeBlock/languages/dockerfile.js +45 -0
  34. package/dist/CodeBlock/languages/graphql.d.ts +3 -0
  35. package/dist/CodeBlock/languages/graphql.d.ts.map +1 -0
  36. package/dist/CodeBlock/languages/graphql.js +27 -0
  37. package/dist/CodeBlock/languages/java.d.ts +3 -0
  38. package/dist/CodeBlock/languages/java.d.ts.map +1 -0
  39. package/dist/CodeBlock/languages/java.js +24 -0
  40. package/dist/CodeBlock/languages/lua.d.ts +3 -0
  41. package/dist/CodeBlock/languages/lua.d.ts.map +1 -0
  42. package/dist/CodeBlock/languages/lua.js +21 -0
  43. package/dist/CodeBlock/languages/objective-c.d.ts +3 -0
  44. package/dist/CodeBlock/languages/objective-c.d.ts.map +1 -0
  45. package/dist/CodeBlock/languages/objective-c.js +27 -0
  46. package/dist/CodeBlock/languages/powershell.d.ts +3 -0
  47. package/dist/CodeBlock/languages/powershell.d.ts.map +1 -0
  48. package/dist/CodeBlock/languages/powershell.js +30 -0
  49. package/dist/CodeBlock/languages/ruby.d.ts +3 -0
  50. package/dist/CodeBlock/languages/ruby.d.ts.map +1 -0
  51. package/dist/CodeBlock/languages/ruby.js +24 -0
  52. package/dist/CodeBlock/languages/thrift.d.ts +3 -0
  53. package/dist/CodeBlock/languages/thrift.d.ts.map +1 -0
  54. package/dist/CodeBlock/languages/thrift.js +18 -0
  55. package/dist/CodeBlock/languages/toml.d.ts +3 -0
  56. package/dist/CodeBlock/languages/toml.d.ts.map +1 -0
  57. package/dist/CodeBlock/languages/toml.js +53 -0
  58. package/dist/CodeBlock/tokenizer.d.ts +8 -4
  59. package/dist/CodeBlock/tokenizer.d.ts.map +1 -1
  60. package/dist/CodeBlock/tokenizer.js +153 -8
  61. package/dist/ComplexSelector/ComplexSelector.d.ts +1 -1
  62. package/dist/ComplexSelector/ComplexSelector.d.ts.map +1 -1
  63. package/dist/ComplexSelector/ComplexSelector.js +17 -1
  64. package/dist/ContextMenu/ContextMenu.d.ts.map +1 -1
  65. package/dist/ContextMenu/ContextMenu.js +48 -13
  66. package/dist/DateInput/DateInput.d.ts.map +1 -1
  67. package/dist/DateInput/DateInput.js +12 -5
  68. package/dist/DateInput/NativeDateField.d.ts.map +1 -1
  69. package/dist/DateInput/NativeDateField.js +2 -1
  70. package/dist/DateInput/TouchDateField.d.ts.map +1 -1
  71. package/dist/DateInput/TouchDateField.js +2 -1
  72. package/dist/Dialog/Dialog.d.ts +4 -0
  73. package/dist/Dialog/Dialog.d.ts.map +1 -1
  74. package/dist/Dialog/Dialog.js +12 -5
  75. package/dist/DropdownMenu/DropdownMenu.d.ts.map +1 -1
  76. package/dist/DropdownMenu/DropdownMenu.js +32 -20
  77. package/dist/DropdownMenu/DropdownMenuItem.js +3 -3
  78. package/dist/DropdownMenu/MenuBottomSheet.d.ts +11 -4
  79. package/dist/DropdownMenu/MenuBottomSheet.d.ts.map +1 -1
  80. package/dist/DropdownMenu/MenuBottomSheet.js +35 -9
  81. package/dist/DropdownMenu/MenuBottomSheetActionList.js +3 -3
  82. package/dist/DropdownMenu/lazyMenuBottomSheet.d.ts +2 -0
  83. package/dist/DropdownMenu/lazyMenuBottomSheet.d.ts.map +1 -1
  84. package/dist/DropdownMenu/lazyMenuBottomSheet.js +25 -3
  85. package/dist/DropdownMenu/menuBottomSheet.stylex.d.ts +23 -0
  86. package/dist/DropdownMenu/menuBottomSheet.stylex.d.ts.map +1 -0
  87. package/dist/DropdownMenu/menuBottomSheet.stylex.js +29 -0
  88. package/dist/DropdownMenu/useMenuDrillIn.d.ts.map +1 -1
  89. package/dist/DropdownMenu/useMenuDrillIn.js +7 -5
  90. package/dist/EmptyState/EmptyState.d.ts +4 -2
  91. package/dist/EmptyState/EmptyState.d.ts.map +1 -1
  92. package/dist/EmptyState/EmptyState.js +6 -4
  93. package/dist/Field/inputStyles.stylex.d.ts +9 -9
  94. package/dist/Field/inputStyles.stylex.js +9 -9
  95. package/dist/FieldStatus/FieldStatus.d.ts.map +1 -1
  96. package/dist/FieldStatus/FieldStatus.js +7 -3
  97. package/dist/FileInput/FileInput.js +3 -3
  98. package/dist/Icon/Icon.d.ts +6 -3
  99. package/dist/Icon/Icon.d.ts.map +1 -1
  100. package/dist/Icon/Icon.js +7 -3
  101. package/dist/InputGroup/InputGroup.d.ts +1 -1
  102. package/dist/InputGroup/InputGroup.d.ts.map +1 -1
  103. package/dist/InputGroup/InputGroup.js +46 -36
  104. package/dist/InputGroup/InputGroupInternalContext.d.ts +4 -0
  105. package/dist/InputGroup/InputGroupInternalContext.d.ts.map +1 -0
  106. package/dist/InputGroup/InputGroupInternalContext.js +15 -0
  107. package/dist/InputGroup/InputGroupText.d.ts.map +1 -1
  108. package/dist/InputGroup/InputGroupText.js +2 -0
  109. package/dist/InputGroup/groupStyles.d.ts +9 -0
  110. package/dist/InputGroup/groupStyles.d.ts.map +1 -1
  111. package/dist/InputGroup/groupStyles.js +28 -14
  112. package/dist/Item/ItemSwipeLayer.d.ts.map +1 -1
  113. package/dist/Item/ItemSwipeLayer.js +3 -0
  114. package/dist/Layer/layerAnimations.stylex.d.ts +9 -5
  115. package/dist/Layer/layerAnimations.stylex.d.ts.map +1 -1
  116. package/dist/Layer/layerAnimations.stylex.js +23 -10
  117. package/dist/Layer/layerSlideRules.d.ts +62 -2
  118. package/dist/Layer/layerSlideRules.d.ts.map +1 -1
  119. package/dist/Layer/layerSlideRules.js +124 -3
  120. package/dist/Layer/layerStack.d.ts +12 -9
  121. package/dist/Layer/layerStack.d.ts.map +1 -1
  122. package/dist/Layer/layerStack.js +116 -53
  123. package/dist/Layer/preserveAnimations.d.ts +11 -0
  124. package/dist/Layer/preserveAnimations.d.ts.map +1 -0
  125. package/dist/Layer/preserveAnimations.js +245 -0
  126. package/dist/Layer/useLayer.d.ts +19 -2
  127. package/dist/Layer/useLayer.d.ts.map +1 -1
  128. package/dist/Layer/useLayer.js +408 -10
  129. package/dist/Layer/useLayerDismissal.d.ts +10 -7
  130. package/dist/Layer/useLayerDismissal.d.ts.map +1 -1
  131. package/dist/Layer/useLayerDismissal.js +8 -8
  132. package/dist/Layout/Layout.d.ts.map +1 -1
  133. package/dist/Layout/Layout.js +4 -0
  134. package/dist/Layout/LayoutContent.d.ts.map +1 -1
  135. package/dist/Layout/LayoutContent.js +2 -2
  136. package/dist/Layout/LayoutFooter.d.ts.map +1 -1
  137. package/dist/Layout/LayoutFooter.js +2 -1
  138. package/dist/Layout/LayoutHeader.d.ts.map +1 -1
  139. package/dist/Layout/LayoutHeader.js +2 -1
  140. package/dist/Layout/layoutEdges.stylex.d.ts +20 -0
  141. package/dist/Layout/layoutEdges.stylex.d.ts.map +1 -0
  142. package/dist/Layout/layoutEdges.stylex.js +28 -0
  143. package/dist/Lightbox/Lightbox.d.ts.map +1 -1
  144. package/dist/Lightbox/Lightbox.js +4 -1
  145. package/dist/Lightbox/LightboxKeyboard.a11y.browser.spec.js +1 -0
  146. package/dist/Markdown/Markdown.d.ts +11 -1
  147. package/dist/Markdown/Markdown.d.ts.map +1 -1
  148. package/dist/Markdown/Markdown.fr23.bench.js +3 -1
  149. package/dist/Markdown/Markdown.fr23.sampling.d.ts +16 -0
  150. package/dist/Markdown/Markdown.fr23.sampling.d.ts.map +1 -1
  151. package/dist/Markdown/Markdown.fr23.sampling.js +13 -4
  152. package/dist/Markdown/Markdown.js +23 -9
  153. package/dist/Markdown/MarkdownTable.a11y.chromium.spec.js +1 -0
  154. package/dist/MobileNav/MobileNav.d.ts +2 -1
  155. package/dist/MobileNav/MobileNav.d.ts.map +1 -1
  156. package/dist/MobileNav/MobileNav.js +9 -5
  157. package/dist/MobileNav/MobileNavPinchZoom.a11y.chromium.spec.js +1 -0
  158. package/dist/MultiSelector/CreateRow.a11y.chromium.spec.js +1 -0
  159. package/dist/MultiSelector/MultiSelector.d.ts +1 -1
  160. package/dist/MultiSelector/MultiSelector.d.ts.map +1 -1
  161. package/dist/MultiSelector/MultiSelector.disabledFocus.a11y.chromium.spec.js +1 -0
  162. package/dist/MultiSelector/MultiSelector.js +8 -4
  163. package/dist/MultiSelector/OptionActions.a11y.chromium.spec.js +1 -0
  164. package/dist/NumberInput/NumberInput.d.ts +1 -1
  165. package/dist/NumberInput/NumberInput.d.ts.map +1 -1
  166. package/dist/NumberInput/NumberInput.js +7 -3
  167. package/dist/Popover/Popover.d.ts +41 -2
  168. package/dist/Popover/Popover.d.ts.map +1 -1
  169. package/dist/Popover/Popover.js +276 -44
  170. package/dist/Popover/index.d.ts +1 -1
  171. package/dist/Popover/index.d.ts.map +1 -1
  172. package/dist/Popover/lazyPopoverBottomSheet.d.ts +23 -0
  173. package/dist/Popover/lazyPopoverBottomSheet.d.ts.map +1 -0
  174. package/dist/Popover/lazyPopoverBottomSheet.js +40 -0
  175. package/dist/Popover/usePopover.d.ts.map +1 -1
  176. package/dist/Popover/usePopover.js +3 -1
  177. package/dist/ProgressBar/ProgressBar.d.ts.map +1 -1
  178. package/dist/ProgressBar/ProgressBar.js +8 -0
  179. package/dist/RadioList/RadioListItem.d.ts.map +1 -1
  180. package/dist/RadioList/RadioListItem.js +10 -2
  181. package/dist/ScrollableArea/ScrollableArea.d.ts.map +1 -1
  182. package/dist/ScrollableArea/ScrollableArea.js +1 -1
  183. package/dist/SelectableCard/SelectableCard.d.ts +5 -5
  184. package/dist/SelectableCard/SelectableCard.js +5 -5
  185. package/dist/Selector/Selector.d.ts.map +1 -1
  186. package/dist/Selector/Selector.js +8 -4
  187. package/dist/StatusDot/StatusDot.d.ts.map +1 -1
  188. package/dist/StatusDot/StatusDot.js +12 -0
  189. package/dist/Stepper/Step.d.ts.map +1 -1
  190. package/dist/Stepper/Step.js +7 -3
  191. package/dist/Switch/Switch.d.ts.map +1 -1
  192. package/dist/Switch/Switch.js +5 -5
  193. package/dist/Switch/switch.markers.stylex.d.ts +7 -2
  194. package/dist/Switch/switch.markers.stylex.d.ts.map +1 -1
  195. package/dist/Switch/switch.markers.stylex.js +8 -3
  196. package/dist/TextArea/TextArea.js +1 -1
  197. package/dist/TextInput/TextInput.d.ts +1 -1
  198. package/dist/TextInput/TextInput.d.ts.map +1 -1
  199. package/dist/TextInput/TextInput.js +8 -4
  200. package/dist/TimeInput/TimeInput.d.ts.map +1 -1
  201. package/dist/TimeInput/TimeInput.js +12 -4
  202. package/dist/TimeInput/TouchTimeField.d.ts.map +1 -1
  203. package/dist/TimeInput/TouchTimeField.js +2 -1
  204. package/dist/Tokenizer/Tokenizer.d.ts.map +1 -1
  205. package/dist/Tokenizer/Tokenizer.js +13 -14
  206. package/dist/Tooltip/useTooltip.d.ts.map +1 -1
  207. package/dist/Tooltip/useTooltip.js +9 -3
  208. package/dist/Typeahead/Typeahead.d.ts +1 -1
  209. package/dist/Typeahead/Typeahead.d.ts.map +1 -1
  210. package/dist/Typeahead/Typeahead.js +7 -3
  211. package/dist/astryx.css +71 -28
  212. package/dist/gestures/GestureArena.d.ts +175 -0
  213. package/dist/gestures/GestureArena.d.ts.map +1 -0
  214. package/dist/gestures/GestureArena.js +816 -0
  215. package/dist/gestures/GestureRecognizer.d.ts +239 -0
  216. package/dist/gestures/GestureRecognizer.d.ts.map +1 -0
  217. package/dist/gestures/GestureRecognizer.js +487 -0
  218. package/dist/gestures/LongPressGestureRecognizer.d.ts +32 -0
  219. package/dist/gestures/LongPressGestureRecognizer.d.ts.map +1 -0
  220. package/dist/gestures/LongPressGestureRecognizer.js +135 -0
  221. package/dist/gestures/PanGestureRecognizer.d.ts +117 -0
  222. package/dist/gestures/PanGestureRecognizer.d.ts.map +1 -0
  223. package/dist/gestures/PanGestureRecognizer.js +349 -0
  224. package/dist/gestures/TapGestureRecognizer.d.ts +39 -0
  225. package/dist/gestures/TapGestureRecognizer.d.ts.map +1 -0
  226. package/dist/gestures/TapGestureRecognizer.js +151 -0
  227. package/dist/gestures/VelocityTracker.d.ts +51 -0
  228. package/dist/gestures/VelocityTracker.d.ts.map +1 -0
  229. package/dist/gestures/VelocityTracker.js +186 -0
  230. package/dist/gestures/geometry.d.ts +17 -0
  231. package/dist/gestures/geometry.d.ts.map +1 -0
  232. package/dist/gestures/geometry.js +55 -0
  233. package/dist/gestures/types.d.ts +139 -0
  234. package/dist/gestures/types.d.ts.map +1 -0
  235. package/dist/gestures/types.js +67 -0
  236. package/dist/hooks/AnnounceRenderedText.d.ts +17 -0
  237. package/dist/hooks/AnnounceRenderedText.d.ts.map +1 -0
  238. package/dist/hooks/AnnounceRenderedText.js +32 -0
  239. package/dist/hooks/useAdaptivePresentation.d.ts +1 -1
  240. package/dist/hooks/useAdaptivePresentation.d.ts.map +1 -1
  241. package/dist/hooks/useAdaptivePresentation.js +9 -6
  242. package/dist/hooks/useAnnounceRenderedText.d.ts +19 -2
  243. package/dist/hooks/useAnnounceRenderedText.d.ts.map +1 -1
  244. package/dist/hooks/useAnnounceRenderedText.js +52 -11
  245. package/dist/hooks/useFocusTrap.d.ts +1 -1
  246. package/dist/hooks/useFocusTrap.d.ts.map +1 -1
  247. package/dist/hooks/useFocusTrap.js +44 -20
  248. package/dist/hooks/useMenuPress.d.ts +2 -1
  249. package/dist/hooks/useMenuPress.d.ts.map +1 -1
  250. package/dist/hooks/useMenuPress.js +46 -30
  251. package/dist/hooks/useScrollableArea.d.ts.map +1 -1
  252. package/dist/hooks/useScrollableArea.js +37 -5
  253. package/dist/motion/decay.d.ts +41 -0
  254. package/dist/motion/decay.d.ts.map +1 -0
  255. package/dist/motion/decay.js +90 -0
  256. package/dist/motion/projection.d.ts +47 -0
  257. package/dist/motion/projection.d.ts.map +1 -0
  258. package/dist/motion/projection.js +116 -0
  259. package/dist/motion/roleValue.d.ts +33 -0
  260. package/dist/motion/roleValue.d.ts.map +1 -0
  261. package/dist/motion/roleValue.js +84 -0
  262. package/dist/motion/roles.d.ts +79 -0
  263. package/dist/motion/roles.d.ts.map +1 -0
  264. package/dist/motion/roles.js +199 -0
  265. package/dist/motion/rubberBand.d.ts +20 -0
  266. package/dist/motion/rubberBand.d.ts.map +1 -0
  267. package/dist/motion/rubberBand.js +91 -0
  268. package/dist/motion/spring.d.ts +193 -0
  269. package/dist/motion/spring.d.ts.map +1 -0
  270. package/dist/motion/spring.js +442 -0
  271. package/dist/motion/uikit/gestures.d.ts +642 -0
  272. package/dist/motion/uikit/gestures.d.ts.map +1 -0
  273. package/dist/motion/uikit/gestures.js +428 -0
  274. package/dist/motion/uikit/index.d.ts +24 -0
  275. package/dist/motion/uikit/index.d.ts.map +1 -0
  276. package/dist/motion/uikit/index.js +26 -0
  277. package/dist/motion/uikit/navigation.d.ts +54 -0
  278. package/dist/motion/uikit/navigation.d.ts.map +1 -0
  279. package/dist/motion/uikit/navigation.js +83 -0
  280. package/dist/motion/uikit/scroll.d.ts +116 -0
  281. package/dist/motion/uikit/scroll.d.ts.map +1 -0
  282. package/dist/motion/uikit/scroll.js +146 -0
  283. package/dist/motion/uikit/springs.d.ts +545 -0
  284. package/dist/motion/uikit/springs.d.ts.map +1 -0
  285. package/dist/motion/uikit/springs.js +548 -0
  286. package/dist/motion/uikit/timing.d.ts +193 -0
  287. package/dist/motion/uikit/timing.d.ts.map +1 -0
  288. package/dist/motion/uikit/timing.js +182 -0
  289. package/dist/reset.a11y.chromium.spec.js +1 -0
  290. package/dist/reset.until-found.a11y.browser.spec.js +1 -0
  291. package/dist/theme/declarationBoundary.d.ts +13 -0
  292. package/dist/theme/declarationBoundary.d.ts.map +1 -1
  293. package/dist/theme/declarationBoundary.js +264 -1
  294. package/dist/theme/generateThemeRules.d.ts +6 -2
  295. package/dist/theme/generateThemeRules.d.ts.map +1 -1
  296. package/dist/theme/generateThemeRules.js +468 -24
  297. package/dist/theme/statusColor.d.ts +48 -0
  298. package/dist/theme/statusColor.d.ts.map +1 -0
  299. package/dist/theme/statusColor.js +203 -0
  300. package/dist/theme/statusRoleDerivation.d.ts +11 -0
  301. package/dist/theme/statusRoleDerivation.d.ts.map +1 -0
  302. package/dist/theme/statusRoleDerivation.js +236 -0
  303. package/dist/theme/tokens.d.ts.map +1 -1
  304. package/dist/theme/tokens.js +16 -1
  305. package/dist/theme/tokens.stylex.d.ts +40 -2
  306. package/dist/theme/tokens.stylex.d.ts.map +1 -1
  307. package/dist/theme/tokens.stylex.js +47 -2
  308. package/dist/theme/useTheme.d.ts +4 -2
  309. package/dist/theme/useTheme.d.ts.map +1 -1
  310. package/dist/theme/useTheme.js +10 -4
  311. package/dist/utils/edgeAutoscroll.d.ts +53 -0
  312. package/dist/utils/edgeAutoscroll.d.ts.map +1 -0
  313. package/dist/utils/edgeAutoscroll.js +81 -0
  314. package/dist/utils/touchPresentation.d.ts +48 -0
  315. package/dist/utils/touchPresentation.d.ts.map +1 -0
  316. package/dist/utils/touchPresentation.js +133 -0
  317. package/package.json +49 -4
  318. package/src/AlertDialog/__tests__/AlertDialog.a11y.chromium.spec.ts +1 -0
  319. package/src/AspectRatio/__tests__/AspectRatioFitLayers.a11y.browser.spec.ts +1 -0
  320. package/src/Avatar/Avatar.spec.md +253 -0
  321. package/src/Avatar/AvatarStatusDot.spec.md +93 -79
  322. package/src/Avatar/AvatarStatusDot.test.tsx +22 -0
  323. package/src/Avatar/AvatarStatusDot.tsx +2 -2
  324. package/src/AvatarGroup/AvatarGroup.spec.md +205 -0
  325. package/src/AvatarGroup/AvatarGroupOverflow.spec.md +123 -120
  326. package/src/Badge/Badge.spec.md +10 -10
  327. package/src/Badge/Badge.test.tsx +13 -0
  328. package/src/Badge/Badge.tsx +38 -2
  329. package/src/Banner/Banner.spec.md +12 -12
  330. package/src/Banner/Banner.test.tsx +91 -8
  331. package/src/Banner/Banner.tsx +89 -7
  332. package/src/BottomSheet/BottomSheet.spec.md +265 -40
  333. package/src/BottomSheet/BottomSheet.test.tsx +23 -0
  334. package/src/BottomSheet/BottomSheet.tsx +46 -23
  335. package/src/BottomSheet/BottomSheetPanel.tsx +77 -46
  336. package/src/BottomSheet/BottomSheetSwitcher.spec.md +139 -41
  337. package/src/BottomSheet/__tests__/BottomSheetDrag.a11y.chromium.spec.ts +1 -0
  338. package/src/BottomSheet/__tests__/BottomSheetFocusReturn.a11y.browser.spec.ts +1 -0
  339. package/src/BottomSheet/__tests__/BottomSheetKeyboard.a11y.browser.spec.ts +1 -0
  340. package/src/BottomSheet/__tests__/BottomSheetNativeModal.a11y.browser.spec.ts +1 -0
  341. package/src/BottomSheet/__tests__/BottomSheetPinchZoom.a11y.chromium.spec.ts +1 -0
  342. package/src/BottomSheet/__tests__/BottomSheetToastOutlet.a11y.chromium.spec.ts +1 -0
  343. package/src/BottomSheet/bottomSheetEscape.ts +21 -0
  344. package/src/BottomSheet/useSheetGestures.ts +5 -1
  345. package/src/Breadcrumbs/__tests__/Breadcrumbs.a11y.chromium.spec.ts +1 -0
  346. package/src/Button/Button.spec.md +320 -0
  347. package/src/Button/Button.test.tsx +1 -1
  348. package/src/Button/Button.tsx +28 -3
  349. package/src/Button/__tests__/Button.a11y.chromium.spec.ts +1 -0
  350. package/src/ButtonGroup/ButtonGroup.spec.md +218 -0
  351. package/src/Calendar/__tests__/Calendar.a11y.chromium.spec.ts +1 -0
  352. package/src/Carousel/__tests__/Carousel.a11y.chromium.spec.ts +1 -0
  353. package/src/Chat/ChatComposer.test.tsx +22 -0
  354. package/src/Chat/ChatComposer.tsx +40 -26
  355. package/src/Chat/ChatMessageMetadata.tsx +1 -1
  356. package/src/Chat/ChatToolCalls.tsx +5 -5
  357. package/src/Chat/__tests__/ChatLayoutScrollButton.a11y.chromium.spec.ts +1 -0
  358. package/src/Chat/__tests__/ChatLayoutScrollButtonSurface.a11y.chromium.spec.ts +1 -0
  359. package/src/Chat/__tests__/ChatMessageList.a11y.chromium.spec.ts +1 -0
  360. package/src/Chat/__tests__/ChatMessageMetadata.a11y.chromium.spec.ts +1 -0
  361. package/src/Chat/__tests__/ChatSendButton.a11y.chromium.spec.ts +1 -0
  362. package/src/Chat/__tests__/ChatSystemMessage.a11y.chromium.spec.ts +1 -0
  363. package/src/Chat/__tests__/ChatTokenizedText.a11y.chromium.spec.ts +1 -0
  364. package/src/Chat/__tests__/useChatStreamScroll.a11y.chromium.spec.ts +1 -0
  365. package/src/CheckboxInput/__tests__/Checkbox.a11y.chromium.spec.ts +1 -0
  366. package/src/CheckboxList/__tests__/CheckboxList.a11y.chromium.spec.ts +1 -0
  367. package/src/CodeBlock/CodeBlock.doc.mjs +5 -4
  368. package/src/CodeBlock/CodeBlock.spec.md +48 -45
  369. package/src/CodeBlock/CodeBlock.tsx +57 -15
  370. package/src/CodeBlock/CodeLanguage.test.tsx +141 -0
  371. package/src/CodeBlock/__tests__/CodeBlockCopyClearance.a11y.chromium.spec.ts +1 -0
  372. package/src/CodeBlock/__tests__/CodeBlockLanguages.a11y.chromium.spec.ts +64 -0
  373. package/src/CodeBlock/__tests__/CodeBlockOverflowStop.a11y.chromium.spec.ts +1 -0
  374. package/src/CodeBlock/__tests__/DiffRowPaint.a11y.chromium.spec.ts +1 -0
  375. package/src/CodeBlock/grammar.ts +264 -0
  376. package/src/CodeBlock/index.ts +7 -0
  377. package/src/CodeBlock/languages/dockerfile.ts +43 -0
  378. package/src/CodeBlock/languages/graphql.ts +30 -0
  379. package/src/CodeBlock/languages/java.ts +28 -0
  380. package/src/CodeBlock/languages/lua.ts +21 -0
  381. package/src/CodeBlock/languages/objective-c.ts +26 -0
  382. package/src/CodeBlock/languages/powershell.ts +31 -0
  383. package/src/CodeBlock/languages/ruby.ts +29 -0
  384. package/src/CodeBlock/languages/thrift.ts +32 -0
  385. package/src/CodeBlock/languages/toml.ts +36 -0
  386. package/src/CodeBlock/languages.test.ts +402 -0
  387. package/src/CodeBlock/tokenizer.ts +171 -16
  388. package/src/CodeBlock/tokenizerBudget.test.ts +112 -0
  389. package/src/Collapsible/__tests__/Collapsible.a11y.chromium.spec.ts +1 -0
  390. package/src/Collapsible/__tests__/CollapsibleGroup.a11y.chromium.spec.ts +1 -0
  391. package/src/Collapsible/__tests__/CollapsibleGroupAccordion.a11y.chromium.spec.ts +1 -0
  392. package/src/CommandPalette/__tests__/CommandPalette.a11y.chromium.spec.ts +1 -0
  393. package/src/CommandPalette/__tests__/CommandPaletteFooter.a11y.chromium.spec.ts +1 -0
  394. package/src/CommandPalette/__tests__/CommandPaletteInputAudit.a11y.chromium.spec.ts +1 -0
  395. package/src/CommandPalette/__tests__/CommandPaletteItemAudit.a11y.chromium.spec.ts +1 -0
  396. package/src/ComplexSelector/ComplexSelector.test.tsx +116 -1
  397. package/src/ComplexSelector/ComplexSelector.tsx +18 -1
  398. package/src/ComplexSelector/__tests__/ComplexSelector.a11y.chromium.spec.ts +1 -0
  399. package/src/ContextMenu/ContextMenu.doc.mjs +1 -1
  400. package/src/ContextMenu/ContextMenu.spec.md +19 -15
  401. package/src/ContextMenu/ContextMenu.test.tsx +189 -11
  402. package/src/ContextMenu/ContextMenu.tsx +75 -17
  403. package/src/ContextMenu/__tests__/ContextMenuAudit.a11y.chromium.spec.ts +1 -0
  404. package/src/ContextMenu/__tests__/ContextMenuCursorAnchor.a11y.browser.spec.ts +1 -0
  405. package/src/ContextMenu/__tests__/ContextMenuLongPress.a11y.chromium.spec.ts +117 -0
  406. package/src/DateInput/DateInput.tsx +9 -4
  407. package/src/DateInput/NativeDateField.tsx +2 -1
  408. package/src/DateInput/TouchDateField.tsx +2 -1
  409. package/src/DateInput/__tests__/DateInputAudit.a11y.chromium.spec.ts +1 -0
  410. package/src/DateInput/__tests__/WheelPinchZoom.a11y.chromium.spec.ts +18 -5
  411. package/src/Dialog/Dialog.doc.mjs +201 -47
  412. package/src/Dialog/Dialog.tsx +31 -7
  413. package/src/Dialog/__tests__/Dialog.a11y.browser.spec.ts +1 -0
  414. package/src/Dialog/__tests__/Dialog.a11y.chromium.spec.ts +1 -0
  415. package/src/Dialog/__tests__/Dialog.reduced-motion.a11y.browser.spec.ts +191 -0
  416. package/src/Drawer/__tests__/DrawerAudit.a11y.chromium.spec.ts +1 -0
  417. package/src/Drawer/__tests__/DrawerHeaderAudit.a11y.chromium.spec.ts +1 -0
  418. package/src/DropdownMenu/DropdownMenu.spec.md +12 -6
  419. package/src/DropdownMenu/DropdownMenu.ssr.test.tsx +11 -1
  420. package/src/DropdownMenu/DropdownMenu.test.tsx +37 -4
  421. package/src/DropdownMenu/DropdownMenu.tsx +47 -21
  422. package/src/DropdownMenu/DropdownMenuItem.tsx +5 -5
  423. package/src/DropdownMenu/DropdownMenuSheetFirstOpen.test.tsx +72 -0
  424. package/src/DropdownMenu/DropdownMenuSubMenu.test.tsx +57 -0
  425. package/src/DropdownMenu/MenuBottomSheet.tsx +42 -7
  426. package/src/DropdownMenu/MenuBottomSheetActionList.tsx +3 -3
  427. package/src/DropdownMenu/__tests__/DropdownMenuDividerAudit.a11y.chromium.spec.ts +1 -0
  428. package/src/DropdownMenu/__tests__/DropdownMenuDrillIn.a11y.chromium.spec.ts +1 -0
  429. package/src/DropdownMenu/__tests__/DropdownMenuFocusReturn.a11y.browser.spec.ts +1 -0
  430. package/src/DropdownMenu/__tests__/DropdownMenuGroupAudit.a11y.chromium.spec.ts +1 -0
  431. package/src/DropdownMenu/__tests__/DropdownMenuItemAudit.a11y.chromium.spec.ts +1 -0
  432. package/src/DropdownMenu/__tests__/DropdownMenuRadioGroupAudit.a11y.chromium.spec.ts +1 -0
  433. package/src/DropdownMenu/__tests__/DropdownMenuRadioItemAudit.a11y.chromium.spec.ts +1 -0
  434. package/src/DropdownMenu/__tests__/DropdownMenuSubMenuAudit.a11y.chromium.spec.ts +1 -0
  435. package/src/DropdownMenu/__tests__/Menu.a11y.chromium.spec.ts +1 -0
  436. package/src/DropdownMenu/__tests__/MenuButton.a11y.chromium.spec.ts +1 -0
  437. package/src/DropdownMenu/__tests__/MenuHeaderFooter.a11y.chromium.spec.ts +1 -0
  438. package/src/DropdownMenu/__tests__/MenuHoverFocus.a11y.chromium.spec.ts +1 -0
  439. package/src/DropdownMenu/__tests__/MenuPinchZoom.a11y.chromium.spec.ts +1 -0
  440. package/src/DropdownMenu/__tests__/MenuPress.a11y.chromium.spec.ts +1 -0
  441. package/src/DropdownMenu/__tests__/SubMenuHeaderFooter.a11y.chromium.spec.ts +1 -0
  442. package/src/DropdownMenu/lazyMenuBottomSheet.ts +28 -2
  443. package/src/DropdownMenu/menuBottomSheet.stylex.ts +33 -0
  444. package/src/DropdownMenu/modules/useMenuPress.spec.md +86 -57
  445. package/src/DropdownMenu/useMenuDrillIn.tsx +7 -5
  446. package/src/EmptyState/EmptyState.announce.test.tsx +227 -0
  447. package/src/EmptyState/EmptyState.doc.mjs +1 -1
  448. package/src/EmptyState/EmptyState.spec.md +22 -14
  449. package/src/EmptyState/EmptyState.test.tsx +8 -8
  450. package/src/EmptyState/EmptyState.tsx +7 -5
  451. package/src/Field/__tests__/FieldLabelAudit.a11y.chromium.spec.ts +1 -0
  452. package/src/Field/inputStyles.stylex.ts +15 -15
  453. package/src/FieldStatus/FieldStatus.test.tsx +12 -0
  454. package/src/FieldStatus/FieldStatus.tsx +12 -3
  455. package/src/FieldStatus/__tests__/StatusMessage.a11y.chromium.spec.ts +1 -0
  456. package/src/FileInput/FileInput.tsx +3 -3
  457. package/src/Icon/Icon.doc.mjs +2 -2
  458. package/src/Icon/Icon.test.tsx +3 -0
  459. package/src/Icon/Icon.tsx +6 -3
  460. package/src/IconButton/IconButton.spec.md +197 -0
  461. package/src/InputGroup/InputGroup.test.tsx +120 -0
  462. package/src/InputGroup/InputGroup.tsx +59 -52
  463. package/src/InputGroup/InputGroupInternalContext.ts +15 -0
  464. package/src/InputGroup/InputGroupText.tsx +2 -0
  465. package/src/InputGroup/groupStyles.ts +22 -11
  466. package/src/Item/ItemSwipeLayer.tsx +9 -0
  467. package/src/Item/__tests__/ItemSwipeActions.a11y.chromium.spec.ts +1 -0
  468. package/src/Item/__tests__/ItemSwipePinchZoom.a11y.chromium.spec.ts +1 -0
  469. package/src/Layer/__tests__/LayerReducedMotion.a11y.chromium.spec.ts +176 -0
  470. package/src/Layer/__tests__/TouchTrigger.a11y.chromium.spec.ts +1 -0
  471. package/src/Layer/layerAnimations.stylex.ts +22 -2
  472. package/src/Layer/layerSlideRules.ts +141 -8
  473. package/src/Layer/layerStack.ts +129 -62
  474. package/src/Layer/preserveAnimations.ts +304 -0
  475. package/src/Layer/useLayer.test.tsx +635 -0
  476. package/src/Layer/useLayer.tsx +485 -15
  477. package/src/Layer/useLayerDismissal.test.tsx +85 -2
  478. package/src/Layer/useLayerDismissal.ts +12 -9
  479. package/src/Layout/Layout.tsx +18 -0
  480. package/src/Layout/LayoutContent.tsx +5 -14
  481. package/src/Layout/LayoutFooter.tsx +2 -0
  482. package/src/Layout/LayoutHeader.tsx +2 -0
  483. package/src/Layout/__tests__/Layout.a11y.chromium.spec.ts +1 -0
  484. package/src/Layout/layoutEdges.stylex.ts +25 -0
  485. package/src/Lightbox/Lightbox.tsx +3 -0
  486. package/src/Lightbox/LightboxKeyboard.a11y.browser.spec.ts +1 -0
  487. package/src/Link/Link.spec.md +229 -0
  488. package/src/Link/LinkProvider.spec.md +167 -0
  489. package/src/Link/__tests__/Link.a11y.chromium.spec.ts +1 -0
  490. package/src/Link/__tests__/Link.navigation.a11y.chromium.spec.ts +1 -0
  491. package/src/Markdown/Markdown.codeLanguages.test.tsx +137 -0
  492. package/src/Markdown/Markdown.doc.mjs +12 -0
  493. package/src/Markdown/Markdown.fr23.bench.ts +3 -1
  494. package/src/Markdown/Markdown.fr23.perf.test.ts +45 -3
  495. package/src/Markdown/Markdown.fr23.sampling.ts +13 -4
  496. package/src/Markdown/Markdown.spec.md +56 -51
  497. package/src/Markdown/Markdown.tsx +32 -2
  498. package/src/Markdown/MarkdownTable.a11y.chromium.spec.ts +1 -0
  499. package/src/Markdown/__tests__/MarkdownNesting.a11y.chromium.spec.ts +1 -0
  500. package/src/MobileNav/MobileNav.spec.md +161 -64
  501. package/src/MobileNav/MobileNav.test.tsx +27 -10
  502. package/src/MobileNav/MobileNav.tsx +10 -3
  503. package/src/MobileNav/MobileNavPinchZoom.a11y.chromium.spec.ts +1 -0
  504. package/src/MobileNav/__tests__/MobileNavWidth.a11y.chromium.spec.ts +103 -0
  505. package/src/MoreMenu/MoreMenu.doc.mjs +2 -2
  506. package/src/MultiSelector/CreateRow.a11y.chromium.spec.ts +1 -0
  507. package/src/MultiSelector/MultiSelector.disabledFocus.a11y.chromium.spec.ts +1 -0
  508. package/src/MultiSelector/MultiSelector.test.tsx +3 -2
  509. package/src/MultiSelector/MultiSelector.tsx +8 -3
  510. package/src/MultiSelector/OptionActions.a11y.chromium.spec.ts +1 -0
  511. package/src/MultiSelector/__tests__/MultiSelector.a11y.chromium.spec.ts +1 -0
  512. package/src/NumberInput/NumberInput.tsx +7 -2
  513. package/src/NumberInput/__tests__/NumberInput.a11y.chromium.spec.ts +1 -0
  514. package/src/Popover/Popover.doc.mjs +38 -2
  515. package/src/Popover/Popover.spec.md +60 -6
  516. package/src/Popover/Popover.test.tsx +197 -2
  517. package/src/Popover/Popover.tsx +401 -35
  518. package/src/Popover/PopoverPresentation.test.tsx +952 -0
  519. package/src/Popover/__tests__/PopoverSecondDocument.a11y.chromium.spec.ts +205 -0
  520. package/src/Popover/index.ts +5 -1
  521. package/src/Popover/lazyPopoverBottomSheet.ts +57 -0
  522. package/src/Popover/usePopover.tsx +3 -1
  523. package/src/ProgressBar/ProgressBar.test.tsx +12 -0
  524. package/src/ProgressBar/ProgressBar.tsx +18 -0
  525. package/src/ProgressBar/__tests__/ProgressBar.a11y.chromium.spec.ts +1 -0
  526. package/src/RadioList/RadioList.test.tsx +34 -7
  527. package/src/RadioList/RadioListItem.press.source-build.test.mjs +80 -0
  528. package/src/RadioList/RadioListItem.tsx +26 -12
  529. package/src/RadioList/__tests__/RadioGroup.a11y.chromium.spec.ts +1 -0
  530. package/src/Resizable/__tests__/ResizeHandle.a11y.chromium.spec.ts +1 -0
  531. package/src/ScrollableArea/ScrollableArea.spec.md +6 -5
  532. package/src/ScrollableArea/ScrollableArea.test.tsx +5 -0
  533. package/src/ScrollableArea/ScrollableArea.tsx +4 -0
  534. package/src/SelectableCard/SelectableCard.doc.mjs +6 -4
  535. package/src/SelectableCard/SelectableCard.tsx +5 -5
  536. package/src/Selector/Selector.spec.md +3 -2
  537. package/src/Selector/Selector.test.tsx +3 -2
  538. package/src/Selector/Selector.tsx +8 -3
  539. package/src/Selector/__tests__/EmptyStateAnnouncement.a11y.chromium.spec.ts +1 -0
  540. package/src/Selector/__tests__/Listbox.a11y.chromium.spec.ts +1 -0
  541. package/src/Selector/__tests__/Selector.a11y.chromium.spec.ts +1 -0
  542. package/src/Selector/__tests__/Selector.combobox.a11y.chromium.spec.ts +1 -0
  543. package/src/SideNav/SideNav.spec.md +5 -3
  544. package/src/SideNav/SideNavCollapseButton.spec.md +161 -0
  545. package/src/SideNav/SideNavHeading.spec.md +219 -0
  546. package/src/SideNav/SideNavItem.spec.md +246 -0
  547. package/src/SideNav/SideNavSection.spec.md +153 -0
  548. package/src/Skeleton/Skeleton.spec.md +99 -42
  549. package/src/Slider/__tests__/Slider.a11y.chromium.spec.ts +1 -0
  550. package/src/Spinner/Spinner.spec.md +231 -0
  551. package/src/StatusDot/StatusDot.spec.md +139 -51
  552. package/src/StatusDot/StatusDot.test.tsx +13 -0
  553. package/src/StatusDot/StatusDot.tsx +27 -0
  554. package/src/Stepper/Step.tsx +12 -3
  555. package/src/Stepper/Stepper.test.tsx +17 -0
  556. package/src/Switch/Switch.focusRing.source-build.test.mjs +81 -0
  557. package/src/Switch/Switch.tsx +11 -9
  558. package/src/Switch/__tests__/Switch.a11y.chromium.spec.ts +1 -0
  559. package/src/Switch/switch.markers.stylex.ts +7 -2
  560. package/src/TabList/__tests__/Tabs.a11y.chromium.spec.ts +1 -0
  561. package/src/Table/__tests__/Table.a11y.chromium.spec.ts +1 -0
  562. package/src/Table/__tests__/TableMinWidth.a11y.chromium.spec.ts +1 -0
  563. package/src/Table/__tests__/TableScroll.a11y.chromium.spec.ts +1 -0
  564. package/src/TextArea/TextArea.tsx +1 -1
  565. package/src/TextInput/TextInput.tsx +8 -3
  566. package/src/TextInput/__tests__/TextInput.a11y.chromium.spec.ts +1 -0
  567. package/src/TimeInput/TimeInput.tsx +12 -4
  568. package/src/TimeInput/TouchTimeField.tsx +2 -1
  569. package/src/ToggleButton/ToggleButton.spec.md +256 -0
  570. package/src/ToggleButton/ToggleButtonGroup.spec.md +194 -0
  571. package/src/ToggleButton/__tests__/ToggleButton.a11y.chromium.spec.ts +1 -0
  572. package/src/Token/Token.spec.md +1 -1
  573. package/src/Token/__tests__/TokenRemoveTarget.a11y.chromium.spec.ts +1 -0
  574. package/src/Tokenizer/Tokenizer.test.tsx +44 -8
  575. package/src/Tokenizer/Tokenizer.tsx +14 -17
  576. package/src/Tokenizer/__tests__/TokenizerEndLane.a11y.chromium.spec.ts +1 -0
  577. package/src/Toolbar/__tests__/Toolbar.a11y.chromium.spec.ts +1 -0
  578. package/src/Tooltip/Tooltip.test.tsx +23 -0
  579. package/src/Tooltip/__tests__/Tooltip.a11y.chromium.spec.ts +1 -0
  580. package/src/Tooltip/__tests__/TooltipFocusReturn.a11y.chromium.spec.ts +1 -0
  581. package/src/Tooltip/__tests__/TooltipHoverBridge.a11y.chromium.spec.ts +1 -0
  582. package/src/Tooltip/__tests__/TooltipTallContent.a11y.browser.spec.ts +646 -0
  583. package/src/Tooltip/__tests__/TooltipTallContentTracking.a11y.browser.spec.ts +1162 -0
  584. package/src/Tooltip/useTooltip.tsx +7 -2
  585. package/src/TopNav/TopNav.spec.md +190 -0
  586. package/src/TopNav/TopNavHeading.spec.md +204 -0
  587. package/src/TopNav/TopNavItem.spec.md +189 -0
  588. package/src/TopNav/TopNavMegaMenu.spec.md +190 -0
  589. package/src/TopNav/TopNavMegaMenuFeaturedCard.spec.md +150 -0
  590. package/src/TopNav/TopNavMegaMenuItem.spec.md +155 -0
  591. package/src/TopNav/TopNavMenu.spec.md +195 -0
  592. package/src/TopNav/__tests__/TopNavMobileLongHeading.a11y.chromium.spec.ts +1 -0
  593. package/src/TreeList/__tests__/TreeList.a11y.chromium.spec.ts +1 -0
  594. package/src/TreeList/__tests__/TreeListRowNames.a11y.chromium.spec.ts +1 -0
  595. package/src/Typeahead/Typeahead.tsx +7 -2
  596. package/src/__tests__/CardPress.a11y.chromium.spec.ts +1 -0
  597. package/src/__tests__/DisabledTriggerFocus.a11y.chromium.spec.ts +1 -0
  598. package/src/__tests__/PressedState.a11y.chromium.spec.ts +1 -0
  599. package/src/gestures/GestureArena.ts +966 -0
  600. package/src/gestures/GestureRecognizer.ts +626 -0
  601. package/src/gestures/LongPressGestureRecognizer.ts +186 -0
  602. package/src/gestures/PanGestureRecognizer.ts +410 -0
  603. package/src/gestures/TapGestureRecognizer.ts +192 -0
  604. package/src/gestures/VelocityTracker.ts +194 -0
  605. package/src/gestures/__tests__/LongPressGestureRecognizer.test.ts +141 -0
  606. package/src/gestures/__tests__/PanGestureRecognizer.test.ts +327 -0
  607. package/src/gestures/__tests__/TapGestureRecognizer.test.ts +154 -0
  608. package/src/gestures/__tests__/VelocityTracker.test.ts +261 -0
  609. package/src/gestures/__tests__/arena.test.ts +824 -0
  610. package/src/gestures/__tests__/arenaContinuous.test.ts +207 -0
  611. package/src/gestures/__tests__/arenaTapLongPress.test.ts +211 -0
  612. package/src/gestures/__tests__/harness.ts +204 -0
  613. package/src/gestures/geometry.ts +55 -0
  614. package/src/gestures/types.ts +161 -0
  615. package/src/hooks/AnnounceRenderedText.tsx +27 -0
  616. package/src/hooks/__tests__/MenuPressShadowRoot.a11y.chromium.spec.ts +98 -4
  617. package/src/hooks/useAdaptivePresentation.ts +14 -7
  618. package/src/hooks/useAnnounceRenderedText.adopters.test.tsx +204 -0
  619. package/src/hooks/useAnnounceRenderedText.ts +81 -11
  620. package/src/hooks/useFocusTrap.test.tsx +71 -2
  621. package/src/hooks/useFocusTrap.ts +46 -21
  622. package/src/hooks/useMenuPress.ts +60 -34
  623. package/src/hooks/useScrollableArea.test.tsx +159 -0
  624. package/src/hooks/useScrollableArea.ts +39 -5
  625. package/src/motion/MEASUREMENTS.md +271 -0
  626. package/src/motion/README.md +106 -0
  627. package/src/motion/decay.test.ts +120 -0
  628. package/src/motion/decay.ts +126 -0
  629. package/src/motion/projection.test.ts +139 -0
  630. package/src/motion/projection.ts +148 -0
  631. package/src/motion/roleValue.ts +105 -0
  632. package/src/motion/roles.test.ts +256 -0
  633. package/src/motion/roles.ts +262 -0
  634. package/src/motion/rubberBand.test.ts +88 -0
  635. package/src/motion/rubberBand.ts +115 -0
  636. package/src/motion/spring.test.ts +650 -0
  637. package/src/motion/spring.ts +551 -0
  638. package/src/motion/uikit/gestures.test.ts +89 -0
  639. package/src/motion/uikit/gestures.ts +359 -0
  640. package/src/motion/uikit/index.ts +80 -0
  641. package/src/motion/uikit/navigation.ts +83 -0
  642. package/src/motion/uikit/scroll.ts +141 -0
  643. package/src/motion/uikit/springRows.test.ts +71 -0
  644. package/src/motion/uikit/springs.ts +514 -0
  645. package/src/motion/uikit/timing.ts +193 -0
  646. package/src/motion/uikit/uikit.test.ts +354 -0
  647. package/src/motion/uikit/values.test.ts +110 -0
  648. package/src/reset.a11y.chromium.spec.ts +1 -0
  649. package/src/reset.until-found.a11y.browser.spec.ts +1 -0
  650. package/src/serverSafeComponents.test.ts +10 -0
  651. package/src/tailwind-theme.css +51 -1
  652. package/src/tailwind-theme.test.ts +51 -0
  653. package/src/theme/Theme.test.tsx +28 -0
  654. package/src/theme/__tests__/SpacingRootFontSize.a11y.chromium.spec.ts +1 -0
  655. package/src/theme/declarationBoundary.ts +282 -1
  656. package/src/theme/defineTheme.test.ts +294 -10
  657. package/src/theme/derivedVarRegistry.test.ts +5 -0
  658. package/src/theme/expandMotionScale.test.ts +17 -0
  659. package/src/theme/generateThemeRules.ts +772 -35
  660. package/src/theme/onMediaTokens.test.ts +186 -0
  661. package/src/theme/statusColor.ts +189 -0
  662. package/src/theme/statusRoleDerivation.ts +289 -0
  663. package/src/theme/themeAdaptations.test.ts +375 -0
  664. package/src/theme/tokens.stylex.ts +31 -2
  665. package/src/theme/tokens.test.ts +36 -1
  666. package/src/theme/tokens.ts +23 -1
  667. package/src/theme/useTheme.ts +10 -4
  668. package/src/utils/edgeAutoscroll.test.ts +192 -0
  669. package/src/utils/edgeAutoscroll.ts +111 -0
  670. package/src/utils/touchPresentation.test.ts +323 -0
  671. package/src/utils/touchPresentation.ts +153 -0
package/README.md CHANGED
@@ -165,15 +165,18 @@ The `tailwind-theme.css` import maps system tokens to Tailwind utilities via `@t
165
165
 
166
166
  Some useful mappings:
167
167
 
168
- | Tailwind class | Astryx token |
169
- | --------------------------------------------------------- | ------------------------------------------------- |
170
- | `text-primary` / `text-secondary` | `--color-text-primary` / `--color-text-secondary` |
171
- | `bg-surface` / `bg-card` / `bg-body` | `--color-background-surface` / `card` / `body` |
172
- | `border-border` / `border-strong` | `--color-border` / `--color-border-emphasized` |
173
- | `bg-success` / `text-error` / `text-warning` | Status tokens |
174
- | `bg-blue-subtle` / `border-blue-ring` / `text-blue-vivid` | Hue palette (×10 hues) |
175
- | `rounded-sm` / `rounded-md` / `rounded-lg` | `--radius-inner` / `element` / `container` |
176
- | `shadow-sm` / `shadow-md` / `shadow-lg` | `--shadow-low` / `med` / `high` |
168
+ | Tailwind class | Astryx token |
169
+ | ------------------------------------------------------------ | ---------------------------------------------------------------- |
170
+ | `text-primary` / `text-secondary` | `--color-text-primary` / `--color-text-secondary` |
171
+ | `bg-surface` / `bg-card` / `bg-body` | `--color-background-surface` / `card` / `body` |
172
+ | `border-border` / `border-strong` | `--color-border` / `--color-border-emphasized` |
173
+ | `bg-info` / `bg-success` / `bg-warning` / `bg-error` | Strong status fills (`--color-<status>`) |
174
+ | `text-on-info` / `bg-info-muted` / `text-on-info-muted` | Strong-fill content, pale fill, pale-fill content |
175
+ | `text-success` / `text-warning` / `text-error` / `text-info` | Status text on the page (`--color-text-*`; also `text-status-*`) |
176
+ | `border-success` / `border-warning` / `border-error` | Status borders (`--color-border-*`) |
177
+ | `bg-blue-subtle` / `border-blue-ring` / `text-blue-vivid` | Hue palette (×10 hues) |
178
+ | `rounded-sm` / `rounded-md` / `rounded-lg` | `--radius-inner` / `element` / `container` |
179
+ | `shadow-sm` / `shadow-md` / `shadow-lg` | `--shadow-low` / `med` / `high` |
177
180
 
178
181
  Spacing references `var(--spacing-1)` as the base unit, so `p-4` = 16px, matching Astryx's `--spacing-4`. Arbitrary values still work as an escape hatch: `bg-[var(--color-background-surface)]`.
179
182
 
@@ -92,7 +92,7 @@ const styles = {
92
92
  },
93
93
  success: {
94
94
  kWkggS: "xdsz4j9",
95
- kMwMTN: "xrkvqaz",
95
+ kMwMTN: "xri61p4",
96
96
  $$css: true
97
97
  },
98
98
  neutral: {
@@ -102,7 +102,7 @@ const styles = {
102
102
  },
103
103
  error: {
104
104
  kWkggS: "x1pjz0fi",
105
- kMwMTN: "xrkvqaz",
105
+ kMwMTN: "x1m024r3",
106
106
  $$css: true
107
107
  },
108
108
  icon: {
@@ -1 +1 @@
1
- {"version":3,"file":"Badge.d.ts","sourceRoot":"","sources":["../../src/Badge/Badge.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAW5C,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,SAAS,CAAC;AA0G7C;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC;AAEjD,MAAM,WAAW,UAAW,SAAQ,SAAS,CAAC,eAAe,CAAC;IAC5D,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACjC;;;OAGG;IACH,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB;;OAEG;IACH,KAAK,EAAE,SAAS,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,KAAK,CAAC,EACpB,OAAmB,EACnB,KAAK,EACL,IAAI,EACJ,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,EACH,GAAG,KAAK,EACT,EAAE,UAAU,+BAsCZ;yBA/Ce,KAAK"}
1
+ {"version":3,"file":"Badge.d.ts","sourceRoot":"","sources":["../../src/Badge/Badge.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAW5C,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,SAAS,CAAC;AA8I7C;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC;AAEjD,MAAM,WAAW,UAAW,SAAQ,SAAS,CAAC,eAAe,CAAC;IAC5D,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACjC;;;OAGG;IACH,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB;;OAEG;IACH,KAAK,EAAE,SAAS,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,KAAK,CAAC,EACpB,OAAmB,EACnB,KAAK,EACL,IAAI,EACJ,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,EACH,GAAG,KAAK,EACT,EAAE,UAAU,+BAsCZ;yBA/Ce,KAAK"}
@@ -55,23 +55,39 @@ const variants = {
55
55
  $$css: true
56
56
  },
57
57
  info: {
58
- kWkggS: "x1ewilqj",
59
- kMwMTN: "x17wrial",
58
+ kWkggS: "xcc0xtb",
59
+ kMwMTN: "x1jxcxwi",
60
+ kMeerF: "xcthrzx",
61
+ k3XXqK: "x815t2r",
62
+ kjBf7l: "x3teovq",
63
+ kInvED: "xvr1dqx",
60
64
  $$css: true
61
65
  },
62
66
  success: {
63
67
  kWkggS: "xdsz4j9",
64
68
  kMwMTN: "xri61p4",
69
+ kMeerF: "xcthrzx",
70
+ k3XXqK: "x815t2r",
71
+ kjBf7l: "x3teovq",
72
+ kInvED: "xvr1dqx",
65
73
  $$css: true
66
74
  },
67
75
  warning: {
68
76
  kWkggS: "x1q8g9m5",
69
77
  kMwMTN: "xrebv38",
78
+ kMeerF: "xcthrzx",
79
+ k3XXqK: "x815t2r",
80
+ kjBf7l: "x3teovq",
81
+ kInvED: "xvr1dqx",
70
82
  $$css: true
71
83
  },
72
84
  error: {
73
85
  kWkggS: "x1pjz0fi",
74
86
  kMwMTN: "x1m024r3",
87
+ kMeerF: "xcthrzx",
88
+ k3XXqK: "x815t2r",
89
+ kjBf7l: "x3teovq",
90
+ kInvED: "xvr1dqx",
75
91
  $$css: true
76
92
  },
77
93
  blue: {
@@ -1 +1 @@
1
- {"version":3,"file":"Banner.d.ts","sourceRoot":"","sources":["../../src/Banner/Banner.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;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;AAyMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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,sCAkPb;yBAtQe,MAAM"}
1
+ {"version":3,"file":"Banner.d.ts","sourceRoot":"","sources":["../../src/Banner/Banner.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;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;AAwQD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
@@ -95,10 +95,10 @@ const defaultIconNames = {
95
95
  success: 'success'
96
96
  };
97
97
  const statusIconColor = {
98
- info: 'accent',
99
- warning: 'warning',
100
- error: 'error',
101
- success: 'success'
98
+ info: 'inherit',
99
+ warning: 'inherit',
100
+ error: 'inherit',
101
+ success: 'inherit'
102
102
  };
103
103
 
104
104
  // =============================================================================
@@ -166,19 +166,60 @@ const styles = {
166
166
  };
167
167
  const statusStyles = {
168
168
  info: {
169
- kWkggS: "xgcxg3y",
169
+ kWkggS: "xjeheca",
170
+ kMwMTN: "x1w9aomi",
171
+ kMeerF: "xcthrzx",
172
+ k3XXqK: "x815t2r",
173
+ kjBf7l: "x3teovq",
174
+ kInvED: "xvr1dqx",
170
175
  $$css: true
171
176
  },
172
177
  warning: {
173
178
  kWkggS: "x24i8r5",
179
+ kMwMTN: "xfy1f8t",
180
+ kMeerF: "xcthrzx",
181
+ k3XXqK: "x815t2r",
182
+ kjBf7l: "x3teovq",
183
+ kInvED: "xvr1dqx",
174
184
  $$css: true
175
185
  },
176
186
  error: {
177
187
  kWkggS: "x1pritpl",
188
+ kMwMTN: "xl8t7bd",
189
+ kMeerF: "xcthrzx",
190
+ k3XXqK: "x815t2r",
191
+ kjBf7l: "x3teovq",
192
+ kInvED: "xvr1dqx",
178
193
  $$css: true
179
194
  },
180
195
  success: {
181
196
  kWkggS: "xu13z74",
197
+ kMwMTN: "xvchut",
198
+ kMeerF: "xcthrzx",
199
+ k3XXqK: "x815t2r",
200
+ kjBf7l: "x3teovq",
201
+ kInvED: "xvr1dqx",
202
+ $$css: true
203
+ }
204
+ };
205
+
206
+ // Scope status text context to each built-in Button. Its tooltip is a sibling,
207
+ // so it does not inherit these control-only variables.
208
+ const statusControlStyles = {
209
+ info: {
210
+ "--color-text-primary": "x1lheorj",
211
+ $$css: true
212
+ },
213
+ warning: {
214
+ "--color-text-primary": "xtlqn95",
215
+ $$css: true
216
+ },
217
+ error: {
218
+ "--color-text-primary": "xyur9ww",
219
+ $$css: true
220
+ },
221
+ success: {
222
+ "--color-text-primary": "xul3f6w",
182
223
  $$css: true
183
224
  }
184
225
  };
@@ -427,13 +468,23 @@ export function Banner({
427
468
  }[!!isRenderable(endContent) << 0],
428
469
  children: [/*#__PURE__*/_jsx("div", {
429
470
  ...{
430
- className: "x1ghz6dp xjb2p0i xcr08ib x2mo6ok x1kq96og x1tgivj0 xj0a0fe"
431
- },
471
+ 0: {
472
+ className: "x1ghz6dp xjb2p0i xcr08ib x2mo6ok x1kq96og x1tgivj0 xj0a0fe"
473
+ },
474
+ 1: {
475
+ className: "x1ghz6dp xjb2p0i xcr08ib x2mo6ok x1kq96og xj0a0fe x1heor9g"
476
+ }
477
+ }[!!hasStatusStyle(status) << 0],
432
478
  children: title
433
479
  }), isRenderable(description) && /*#__PURE__*/_jsx("div", {
434
480
  ...mergeProps(themeProps('banner-description'), {
435
- className: "x1ghz6dp xjb2p0i x141an7d x1sodnla x1ltkj2j xv1l7n4 xj0a0fe"
436
- }),
481
+ 0: {
482
+ className: "x1ghz6dp xjb2p0i x141an7d x1sodnla x1ltkj2j xv1l7n4 xj0a0fe"
483
+ },
484
+ 1: {
485
+ className: "x1ghz6dp xjb2p0i x141an7d x1sodnla x1ltkj2j xj0a0fe x1heor9g"
486
+ }
487
+ }[!!hasStatusStyle(status) << 0]),
437
488
  children: description
438
489
  })]
439
490
  }), showEndArea && /*#__PURE__*/_jsxs("div", {
@@ -450,6 +501,7 @@ export function Banner({
450
501
  xstyle: [styles.chevron, isExpanded && styles.chevronExpanded]
451
502
  }),
452
503
  onClick: handleToggleExpand,
504
+ className: hasStatusStyle(status) ? stylex.props(statusControlStyles[status]).className : undefined,
453
505
  "aria-expanded": isExpanded,
454
506
  "aria-controls": showContent ? contentId : undefined,
455
507
  isIconOnly: true
@@ -464,6 +516,7 @@ export function Banner({
464
516
  color: "inherit"
465
517
  }),
466
518
  onClick: handleDismiss,
519
+ className: hasStatusStyle(status) ? stylex.props(statusControlStyles[status]).className : undefined,
467
520
  isIconOnly: true
468
521
  })]
469
522
  })]
@@ -1 +1 @@
1
- {"version":3,"file":"BottomSheet.d.ts","sourceRoot":"","sources":["../../src/BottomSheet/BottomSheet.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,OAAO,EAOL,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAqBhD,YAAY,EAAC,iBAAiB,EAAE,oBAAoB,EAAC,MAAM,oBAAoB,CAAC;AAChF,OAAO,KAAK,EAAC,iBAAiB,EAAE,oBAAoB,EAAC,MAAM,oBAAoB,CAAC;AA2FhF,UAAU,sBAAuB,SAAQ,SAAS,CAAC,cAAc,CAAC;IAChE,qDAAqD;IACrD,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAEhC,sCAAsC;IACtC,KAAK,EAAE,MAAM,CAAC;IAEd,0EAA0E;IAC1E,QAAQ,EAAE,SAAS,CAAC;IAEpB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IAEtB,wGAAwG;IACxG,MAAM,CAAC,EAAE,iBAAiB,GAAG,MAAM,GAAG,MAAM,CAAC;IAE7C;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAC;IAEjD;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB;AAED,UAAU,0BAA2B,SAAQ,sBAAsB;IACjE,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,0DAA0D;IAC1D,aAAa,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAC9C,OAAO,CAAC,EAAE,KAAK,CAAC;CACjB;AAED,UAAU,wBAAyB,SAAQ,sBAAsB;IAC/D,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,KAAK,CAAC;IACf,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,QAAQ,CAAC,EAAE,KAAK,CAAC;CAClB;AAED,MAAM,MAAM,gBAAgB,GAC1B,0BAA0B,GAAG,wBAAwB,CAAC;AAukBxD;;;GAGG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,+BA6BlD;yBA7Be,WAAW"}
1
+ {"version":3,"file":"BottomSheet.d.ts","sourceRoot":"","sources":["../../src/BottomSheet/BottomSheet.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,OAAO,EAOL,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAqBhD,YAAY,EAAC,iBAAiB,EAAE,oBAAoB,EAAC,MAAM,oBAAoB,CAAC;AAChF,OAAO,KAAK,EAAC,iBAAiB,EAAE,oBAAoB,EAAC,MAAM,oBAAoB,CAAC;AAqGhF,UAAU,sBAAuB,SAAQ,SAAS,CAAC,cAAc,CAAC;IAChE,qDAAqD;IACrD,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAEhC,sCAAsC;IACtC,KAAK,EAAE,MAAM,CAAC;IAEd,0EAA0E;IAC1E,QAAQ,EAAE,SAAS,CAAC;IAEpB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IAEtB,wGAAwG;IACxG,MAAM,CAAC,EAAE,iBAAiB,GAAG,MAAM,GAAG,MAAM,CAAC;IAE7C;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAC;IAEjD;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB;AAED,UAAU,0BAA2B,SAAQ,sBAAsB;IACjE,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,0DAA0D;IAC1D,aAAa,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAC9C,OAAO,CAAC,EAAE,KAAK,CAAC;CACjB;AAED,UAAU,wBAAyB,SAAQ,sBAAsB;IAC/D,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,KAAK,CAAC;IACf,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,QAAQ,CAAC,EAAE,KAAK,CAAC;CAClB;AAED,MAAM,MAAM,gBAAgB,GAC1B,0BAA0B,GAAG,wBAAwB,CAAC;AAolBxD;;;GAGG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,+BA6BlD;yBA7Be,WAAW"}
@@ -57,6 +57,7 @@ import { useInteractionModalityTracking } from "../utils/interactionModality.js"
57
57
  import { BottomSheetPanel } from "./BottomSheetPanel.js";
58
58
  import { BottomSheetEdgeTint } from "./BottomSheetEdgeTint.js";
59
59
  import { BottomSheetSwitcherContext } from "./BottomSheetSwitcherContext.js";
60
+ import { BottomSheetEscapeContext } from "./bottomSheetEscape.js";
60
61
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
61
62
  const styles = {
62
63
  dialog: {
@@ -80,6 +81,19 @@ const styles = {
80
81
  k1xSpc: "x1lliihq",
81
82
  $$css: true
82
83
  },
84
+ dialogPanelHost: {
85
+ k1xSpc: "xrvj5dj",
86
+ kfiyM8: "x4465f1",
87
+ kAPf3g: "x1o2pa38",
88
+ $$css: true
89
+ },
90
+ dialogNonModal: {
91
+ kfzvcC: "x47corl",
92
+ kY2c9j: "xfo81ep",
93
+ kzqmXN: "xh8yej3",
94
+ kZKoxP: "x5yr21d",
95
+ $$css: true
96
+ },
83
97
  scrim: {
84
98
  kGyWv1: "xnixb3f",
85
99
  k5sjJv: "xni466t xxiuuzi",
@@ -220,11 +234,14 @@ function StandaloneBottomSheet({
220
234
  } : {
221
235
  kind: 'hidden'
222
236
  };
237
+
238
+ // Popover's sheet may turn Escape off on its own (bottomSheetEscape.ts).
239
+ const isEscapeAllowed = use(BottomSheetEscapeContext);
223
240
  const dismissOnEscape = useCallback(() => {
224
- if (isOpen && purpose !== 'required') {
241
+ if (isOpen && purpose !== 'required' && isEscapeAllowed) {
225
242
  onOpenChange(false);
226
243
  }
227
- }, [isOpen, onOpenChange, purpose]);
244
+ }, [isEscapeAllowed, isOpen, onOpenChange, purpose]);
228
245
  const dismissOnLightInteraction = useCallback(() => {
229
246
  if (purpose === 'info') {
230
247
  onOpenChange(false);
@@ -304,7 +321,7 @@ function StandaloneBottomSheet({
304
321
  shouldDismissOnCloseRequest
305
322
  } = useLayerDismissal({
306
323
  isActive: shouldPresent,
307
- escapeBehavior: isOpen && purpose !== 'required' ? 'close' : 'block',
324
+ escapeBehavior: isOpen && purpose !== 'required' && isEscapeAllowed ? 'close' : 'block',
308
325
  onDismiss: dismissOnEscape,
309
326
  getContainer: () => dialogRef.current,
310
327
  isPresent: () => dialogRef.current?.open ?? false
@@ -331,56 +348,7 @@ function StandaloneBottomSheet({
331
348
  }
332
349
  }, [dismissOnLightInteraction, hasScrim]);
333
350
  return /*#__PURE__*/_jsxs("dialog", {
334
- ...{
335
- 0: {
336
- className: "xixxii4 x10a8y8t x1o6l61p xtdtrs8 x1x1rfll x7ab17h x1ghz6dp x1717udv xc342km xng3xce xjbqb8w x1rea2x4 x1s85apg x1a2a7pz"
337
- },
338
- 8: {
339
- className: "xixxii4 x10a8y8t x1o6l61p xtdtrs8 x1x1rfll x7ab17h x1ghz6dp x1717udv xc342km xng3xce xjbqb8w x1rea2x4 x1a2a7pz x1lliihq"
340
- },
341
- 4: {
342
- className: "xixxii4 x10a8y8t x1o6l61p xtdtrs8 x1x1rfll x7ab17h x1ghz6dp x1717udv xc342km xng3xce xjbqb8w x1rea2x4 x1s85apg x1a2a7pz xnixb3f xni466t xxiuuzi xc0dz0a x10buo38 x15h3t91 x142juwg x15l12jy"
343
- },
344
- 12: {
345
- className: "xixxii4 x10a8y8t x1o6l61p xtdtrs8 x1x1rfll x7ab17h x1ghz6dp x1717udv xc342km xng3xce xjbqb8w x1rea2x4 x1a2a7pz x1lliihq xnixb3f xni466t xxiuuzi xc0dz0a x10buo38 x15h3t91 x142juwg x15l12jy"
346
- },
347
- 2: {
348
- className: "xixxii4 x10a8y8t x1o6l61p xtdtrs8 x1x1rfll x7ab17h x1ghz6dp x1717udv xc342km xng3xce xjbqb8w x1rea2x4 x1s85apg x1a2a7pz x1cz9k3x"
349
- },
350
- 10: {
351
- className: "xixxii4 x10a8y8t x1o6l61p xtdtrs8 x1x1rfll x7ab17h x1ghz6dp x1717udv xc342km xng3xce xjbqb8w x1rea2x4 x1a2a7pz x1lliihq x1cz9k3x"
352
- },
353
- 6: {
354
- className: "xixxii4 x10a8y8t x1o6l61p xtdtrs8 x1x1rfll x7ab17h x1ghz6dp x1717udv xc342km xng3xce xjbqb8w x1rea2x4 x1s85apg x1a2a7pz xnixb3f xni466t xxiuuzi xc0dz0a x10buo38 x142juwg x15l12jy x1cz9k3x"
355
- },
356
- 14: {
357
- className: "xixxii4 x10a8y8t x1o6l61p xtdtrs8 x1x1rfll x7ab17h x1ghz6dp x1717udv xc342km xng3xce xjbqb8w x1rea2x4 x1a2a7pz x1lliihq xnixb3f xni466t xxiuuzi xc0dz0a x10buo38 x142juwg x15l12jy x1cz9k3x"
358
- },
359
- 1: {
360
- className: "xixxii4 x10a8y8t x1x1rfll x7ab17h x1ghz6dp x1717udv xc342km xng3xce xjbqb8w x1rea2x4 x1s85apg x1a2a7pz x47corl xfo81ep xh8yej3 x5yr21d"
361
- },
362
- 9: {
363
- className: "xixxii4 x10a8y8t x1x1rfll x7ab17h x1ghz6dp x1717udv xc342km xng3xce xjbqb8w x1rea2x4 x1a2a7pz x1lliihq x47corl xfo81ep xh8yej3 x5yr21d"
364
- },
365
- 5: {
366
- className: "xixxii4 x10a8y8t x1x1rfll x7ab17h x1ghz6dp x1717udv xc342km xng3xce xjbqb8w x1rea2x4 x1s85apg x1a2a7pz xnixb3f xni466t xxiuuzi xc0dz0a x10buo38 x15h3t91 x142juwg x15l12jy x47corl xfo81ep xh8yej3 x5yr21d"
367
- },
368
- 13: {
369
- className: "xixxii4 x10a8y8t x1x1rfll x7ab17h x1ghz6dp x1717udv xc342km xng3xce xjbqb8w x1rea2x4 x1a2a7pz x1lliihq xnixb3f xni466t xxiuuzi xc0dz0a x10buo38 x15h3t91 x142juwg x15l12jy x47corl xfo81ep xh8yej3 x5yr21d"
370
- },
371
- 3: {
372
- className: "xixxii4 x10a8y8t x1x1rfll x7ab17h x1ghz6dp x1717udv xc342km xng3xce xjbqb8w x1rea2x4 x1s85apg x1a2a7pz x1cz9k3x x47corl xfo81ep xh8yej3 x5yr21d"
373
- },
374
- 11: {
375
- className: "xixxii4 x10a8y8t x1x1rfll x7ab17h x1ghz6dp x1717udv xc342km xng3xce xjbqb8w x1rea2x4 x1a2a7pz x1lliihq x1cz9k3x x47corl xfo81ep xh8yej3 x5yr21d"
376
- },
377
- 7: {
378
- className: "xixxii4 x10a8y8t x1x1rfll x7ab17h x1ghz6dp x1717udv xc342km xng3xce xjbqb8w x1rea2x4 x1s85apg x1a2a7pz xnixb3f xni466t xxiuuzi xc0dz0a x10buo38 x142juwg x15l12jy x1cz9k3x x47corl xfo81ep xh8yej3 x5yr21d"
379
- },
380
- 15: {
381
- className: "xixxii4 x10a8y8t x1x1rfll x7ab17h x1ghz6dp x1717udv xc342km xng3xce xjbqb8w x1rea2x4 x1a2a7pz x1lliihq xnixb3f xni466t xxiuuzi xc0dz0a x10buo38 x142juwg x15l12jy x1cz9k3x x47corl xfo81ep xh8yej3 x5yr21d"
382
- }
383
- }[!!shouldPresent << 3 | !!hasScrim << 2 | !!(hasScrim && !isOpen && isPresented) << 1 | !!!hasScrim << 0],
351
+ ...stylex.props(styles.dialog, shouldPresent && styles.dialogOpen, shouldPresent && styles.dialogPanelHost, hasScrim && styles.scrim, hasScrim && !isOpen && isPresented && styles.scrimClosing, !hasScrim && styles.dialogNonModal),
384
352
  ref: dialogRef,
385
353
  "aria-label": label,
386
354
  "aria-hidden": !isOpen && isPresented ? 'true' : undefined,
@@ -389,29 +357,27 @@ function StandaloneBottomSheet({
389
357
  inert: !isOpen && isPresented ? true : undefined,
390
358
  onCancel: handleCancel,
391
359
  onClick: handleClick,
392
- children: [/*#__PURE__*/_jsx("div", {
393
- ...{
394
- className: "x10l6tqk x17y0mx6 x1ey2m1c x78zum5 xl56j7k x47corl"
395
- },
396
- children: /*#__PURE__*/_jsx(BottomSheetPanel, {
397
- ...props,
398
- ref: ref,
399
- state: panelState,
400
- height: height,
401
- label: label,
402
- snapPoints: snapPoints,
403
- isSwipeDismissAllowed: purpose === 'info',
404
- isPageScrollLocked: shouldPresent && hasScrim,
405
- xstyle: xstyle,
406
- onDismiss: dismissOnLightInteraction,
407
- onScrimOpacity: handleScrimOpacity,
408
- onElementChange: handlePanelElementChange,
409
- onMotionComplete: handleMotionComplete,
410
- children: /*#__PURE__*/_jsx(LayerDepthProvider, {
360
+ children: [/*#__PURE__*/_jsx(BottomSheetPanel, {
361
+ ...props,
362
+ ref: ref,
363
+ state: panelState,
364
+ height: height,
365
+ label: label,
366
+ snapPoints: snapPoints,
367
+ isSwipeDismissAllowed: purpose === 'info',
368
+ isPageScrollLocked: shouldPresent && hasScrim,
369
+ xstyle: xstyle,
370
+ onDismiss: dismissOnLightInteraction,
371
+ onScrimOpacity: handleScrimOpacity,
372
+ onElementChange: handlePanelElementChange,
373
+ onMotionComplete: handleMotionComplete,
374
+ children: /*#__PURE__*/_jsx(LayerDepthProvider, {
375
+ children: /*#__PURE__*/_jsx(BottomSheetEscapeContext, {
376
+ value: true,
411
377
  children: children
412
378
  })
413
379
  })
414
- }), /*#__PURE__*/_jsx(BottomSheetEdgeTint, {})]
380
+ }), shouldPresent && /*#__PURE__*/_jsx(BottomSheetEdgeTint, {})]
415
381
  });
416
382
  }
417
383
  function SwitcherBottomSheetItem({
@@ -655,7 +621,10 @@ function SwitcherBottomSheetItem({
655
621
  children: /*#__PURE__*/_jsx(BottomSheetSwitcherContext, {
656
622
  value: null,
657
623
  children: /*#__PURE__*/_jsx(LayerDepthProvider, {
658
- children: children
624
+ children: /*#__PURE__*/_jsx(BottomSheetEscapeContext, {
625
+ value: true,
626
+ children: children
627
+ })
659
628
  })
660
629
  })
661
630
  })
@@ -1 +1 @@
1
- {"version":3,"file":"BottomSheetPanel.d.ts","sourceRoot":"","sources":["../../src/BottomSheet/BottomSheetPanel.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAOL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AA6B5C,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,eAAe,CAAC;AAIvB,QAAA,MAAM,cAAc;;;;CAIV,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,cAAc,CAAC;AAC5D,YAAY,EAAC,oBAAoB,EAAC,CAAC;AAyMnC,MAAM,MAAM,sBAAsB,GAChC,UAAU,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEjD,MAAM,MAAM,qBAAqB,GAC7B;IAAC,IAAI,EAAE,QAAQ,CAAA;CAAC,GAChB;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAC,GACjC;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC;IAC1C,eAAe,EAAE,MAAM,CAAC;CACzB,GACD;IAAC,IAAI,EAAE,SAAS,CAAA;CAAC,CAAC;AAEtB,UAAU,qBAAsB,SAAQ,SAAS,CAAC,cAAc,CAAC;IAC/D,+CAA+C;IAC/C,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC,KAAK,EAAE,qBAAqB,CAAC;IAC7B,MAAM,EAAE,iBAAiB,GAAG,MAAM,GAAG,MAAM,CAAC;IAC5C,mEAAmE;IACnE,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,SAAS,CAAC;IACpB;;;OAGG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,UAAU,CAAC,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAC;IACjD,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,gFAAgF;IAChF,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,KAAK,IAAI,CAAC;IAC3D,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACzD,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,IAAI,CAAC;CAC7D;AA+GD,4EAA4E;AAC5E,wBAAgB,gBAAgB,CAAC,EAC/B,GAAG,EACH,KAAK,EACL,MAAM,EACN,KAAK,EACL,QAAQ,EACR,OAAO,EACP,UAAU,EACV,SAAS,EACT,KAAK,EACL,QAAQ,EACR,MAAM,EACN,qBAA4B,EAC5B,kBAA0B,EAC1B,SAAS,EACT,cAAc,EACd,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,GAAG,KAAK,EACT,EAAE,qBAAqB,+BAoVvB;yBAxWe,gBAAgB"}
1
+ {"version":3,"file":"BottomSheetPanel.d.ts","sourceRoot":"","sources":["../../src/BottomSheet/BottomSheetPanel.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAOL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AA6B5C,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,eAAe,CAAC;AAIvB,QAAA,MAAM,cAAc;;;;CAIV,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,cAAc,CAAC;AAC5D,YAAY,EAAC,oBAAoB,EAAC,CAAC;AA4MnC,MAAM,MAAM,sBAAsB,GAChC,UAAU,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEjD,MAAM,MAAM,qBAAqB,GAC7B;IAAC,IAAI,EAAE,QAAQ,CAAA;CAAC,GAChB;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAC,GACjC;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC;IAC1C,eAAe,EAAE,MAAM,CAAC;CACzB,GACD;IAAC,IAAI,EAAE,SAAS,CAAA;CAAC,CAAC;AAEtB,UAAU,qBAAsB,SAAQ,SAAS,CAAC,cAAc,CAAC;IAC/D,+CAA+C;IAC/C,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC,KAAK,EAAE,qBAAqB,CAAC;IAC7B,MAAM,EAAE,iBAAiB,GAAG,MAAM,GAAG,MAAM,CAAC;IAC5C,mEAAmE;IACnE,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,SAAS,CAAC;IACpB;;;OAGG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,UAAU,CAAC,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAC;IACjD,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,gFAAgF;IAChF,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,KAAK,IAAI,CAAC;IAC3D,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACzD,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,IAAI,CAAC;CAC7D;AA4HD,4EAA4E;AAC5E,wBAAgB,gBAAgB,CAAC,EAC/B,GAAG,EACH,KAAK,EACL,MAAM,EACN,KAAK,EACL,QAAQ,EACR,OAAO,EACP,UAAU,EACV,SAAS,EACT,KAAK,EACL,QAAQ,EACR,MAAM,EACN,qBAA4B,EAC5B,kBAA0B,EAC1B,SAAS,EACT,cAAc,EACd,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,GAAG,KAAK,EACT,EAAE,qBAAqB,+BAmWvB;yBAvXe,gBAAgB"}
@@ -163,6 +163,18 @@ const styles = {
163
163
  $$css: true
164
164
  }
165
165
  };
166
+ /**
167
+ * A hidden sheet observes nothing (component:Popover PR1, FR5): the scroll
168
+ * area's measuring ref attaches as the sheet presents and detaches once it is
169
+ * hidden again, so a closed sheet that stays mounted holds no resize,
170
+ * mutation or viewport observers.
171
+ */
172
+ function whilePresented(isPresented, props) {
173
+ return isPresented ? props : {
174
+ ...props,
175
+ ref: undefined
176
+ };
177
+ }
166
178
  function motionForState(state) {
167
179
  if (state.kind === 'open') {
168
180
  return state.entering ? 'entering' : null;
@@ -364,11 +376,22 @@ export function BottomSheetPanel({
364
376
  // content while fitting, as it was before shared scroll adoption.
365
377
  stickyContainment: 'always'
366
378
  });
379
+
380
+ // The sheet measures its own height only while it is presented; a hidden
381
+ // sheet that stays mounted observes nothing.
382
+ const isPresentedRef = useRef(isPresented);
367
383
  const setElement = useCallback(element => {
368
- sheetRef(element);
384
+ sheetRef(isPresentedRef.current ? element : null);
369
385
  elementRef.current = element;
370
386
  onElementChange?.(element);
371
387
  }, [onElementChange, sheetRef]);
388
+ useLayoutEffect(() => {
389
+ if (isPresentedRef.current === isPresented) {
390
+ return;
391
+ }
392
+ isPresentedRef.current = isPresented;
393
+ sheetRef(isPresented ? elementRef.current : null);
394
+ }, [isPresented, sheetRef]);
372
395
  useMobileKeyboard({
373
396
  bodyRef: bodyElementRef,
374
397
  bottomClearance: MOBILE_KEYBOARD_BOTTOM_CLEARANCE,
@@ -504,33 +527,28 @@ export function BottomSheetPanel({
504
527
  }),
505
528
  children: [/*#__PURE__*/_jsx("div", {
506
529
  ...{
507
- className: "x10l6tqk x13vifvy x1o0tod xtijo5x x1vjfegm x78zum5 x6s0dn4 xl56j7k xvpftlf xafqdz2 x1j4r261 x1jm3nie x16khyan"
530
+ className: "x10l6tqk x13vifvy x1o0tod xtijo5x x1vjfegm x78zum5 x6s0dn4 xl56j7k xvpftlf xafqdz2 x1j4r261 x1jm3nie x16khyan x1cpjm7i x1oke5ut x34npju xmwhqxd x1hw15nc"
508
531
  },
509
532
  ...handleProps,
510
- "aria-hidden": "true",
511
- children: /*#__PURE__*/_jsx("div", {
512
- ...{
513
- className: "x1m747yf x11c6zpc xjspbzw x1m4xfpy"
514
- }
515
- })
533
+ "aria-hidden": "true"
516
534
  }), /*#__PURE__*/_jsx("div", {
517
- ...getViewportProps({
535
+ ...whilePresented(isPresented, getViewportProps({
518
536
  ...bodyProps,
519
537
  ...mergeProps(stylex.props(focusOutlineStyles.focusVisible, styles.body, height === 'tall' && styles.tallKeyboardBody), scrollPreservationInset > 0 ? {
520
538
  style: {
521
539
  paddingBlockEnd: `${scrollPreservationInset}px`
522
540
  }
523
541
  } : {})
524
- }),
542
+ })),
525
543
  children: /*#__PURE__*/_jsx("div", {
526
- ...getContentProps(stylex.props(styles.content, ...container(usesThemePadding ? {
544
+ ...whilePresented(isPresented, getContentProps(stylex.props(styles.content, ...container(usesThemePadding ? {
527
545
  useThemeDefault: 'bottom-sheet'
528
546
  } : {
529
547
  paddingInnerX: paddingToken,
530
548
  paddingInnerY: paddingToken,
531
549
  paddingOuterX: paddingToken,
532
550
  paddingOuterY: paddingToken
533
- }), !usesThemePadding && effectivePadding !== 4 && paddingStyles[effectivePadding], !usesThemePadding && effectivePadding !== 4 && containerPaddingInlineVarStyles[effectivePadding], !usesThemePadding && effectivePadding !== 4 && containerPaddingBlockStartVarStyles[effectivePadding], !usesThemePadding && effectivePadding !== 4 && containerPaddingBlockEndVarStyles[effectivePadding])),
551
+ }), !usesThemePadding && effectivePadding !== 4 && paddingStyles[effectivePadding], !usesThemePadding && effectivePadding !== 4 && containerPaddingInlineVarStyles[effectivePadding], !usesThemePadding && effectivePadding !== 4 && containerPaddingBlockStartVarStyles[effectivePadding], !usesThemePadding && effectivePadding !== 4 && containerPaddingBlockEndVarStyles[effectivePadding]))),
534
552
  children: /*#__PURE__*/_jsx(LayerContentBoundary, {
535
553
  children: children
536
554
  })
@@ -0,0 +1,3 @@
1
+ /** Whether Escape may dismiss the sheet; `purpose="required"` still blocks it. */
2
+ export declare const BottomSheetEscapeContext: import("react").Context<boolean>;
3
+ //# sourceMappingURL=bottomSheetEscape.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bottomSheetEscape.d.ts","sourceRoot":"","sources":["../../src/BottomSheet/bottomSheetEscape.ts"],"names":[],"mappings":"AAkBA,kFAAkF;AAClF,eAAO,MAAM,wBAAwB,kCAAsB,CAAC"}
@@ -0,0 +1,20 @@
1
+ // Copyright (c) Meta Platforms, Inc. and affiliates.
2
+
3
+ 'use client';
4
+
5
+ /**
6
+ * @file bottomSheetEscape.ts
7
+ * @input React context
8
+ * @output BottomSheetEscapeContext: whether Escape (and the platform's close
9
+ * request) may dismiss the standalone sheet below it
10
+ * @position Internal to Core, not exported from the package: Popover's sheet
11
+ * presentation passes `hasEscapeDismiss` through it, so its sheet can
12
+ * light-dismiss (scrim tap, swipe down) while Escape stays off
13
+ * (component:Popover DEC-8). A standalone BottomSheet reads the default
14
+ * (true), so its `purpose` rule is unchanged.
15
+ */
16
+ import { createContext } from 'react';
17
+
18
+ /** Whether Escape may dismiss the sheet; `purpose="required"` still blocks it. */
19
+ export const BottomSheetEscapeContext = /*#__PURE__*/createContext(true);
20
+ BottomSheetEscapeContext.displayName = 'BottomSheetEscapeContext';
@@ -1 +1 @@
1
- {"version":3,"file":"useSheetGestures.d.ts","sourceRoot":"","sources":["../../src/BottomSheet/useSheetGestures.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useSheetGestures.d.ts","sourceRoot":"","sources":["../../src/BottomSheet/useSheetGestures.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AAEH,OAAO,EAOL,KAAK,aAAa,EAClB,KAAK,UAAU,IAAI,eAAe,EAClC,KAAK,YAAY,IAAI,iBAAiB,EACtC,KAAK,SAAS,EACd,KAAK,UAAU,IAAI,eAAe,EAClC,KAAK,OAAO,IAAI,YAAY,EAC7B,MAAM,OAAO,CAAC;AAwJf;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,WAAW,GAAG,IAAI,EAC1B,IAAI,EAAE,WAAW,GAChB,WAAW,EAAE,CAaf;AA4BD,MAAM,WAAW,uBAAuB;IACtC,0EAA0E;IAC1E,MAAM,EAAE,OAAO,CAAC;IAChB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,gFAAgF;IAChF,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB;;;;;;;;;;OAUG;IACH,WAAW,CAAC,EAAE,MAAM,MAAM,EAAE,CAAC;IAC7B,oEAAoE;IACpE,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5C;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,aAAa,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,aAAa,CAAC;IACrB,aAAa,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IAChD,oBAAoB,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACzD,aAAa,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAClD,aAAa,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAClD,WAAW,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAChD,eAAe,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACpD,YAAY,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IAC/C,WAAW,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;CAC/C;AAED,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;IACxC,aAAa,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IAChD,oBAAoB,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACzD,aAAa,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAClD,aAAa,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAClD,WAAW,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAChD,eAAe,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACpD,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;CACtD;AAED,MAAM,WAAW,sBAAsB;IACrC;;;;OAIG;IACH,QAAQ,EAAE,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;IAC7C,8HAA8H;IAC9H,YAAY,EAAE,iBAAiB,CAAC;IAChC,gEAAgE;IAChE,WAAW,EAAE,gBAAgB,CAAC;IAC9B;;;;OAIG;IACH,SAAS,EAAE,cAAc,CAAC;IAC1B;;;;;OAKG;IACH,cAAc,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAC9C;;;;;OAKG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,aAAa,EAAE,MAAM,CAAC;IACtB,+CAA+C;IAC/C,UAAU,EAAE,OAAO,CAAC;IACpB,4EAA4E;IAC5E,WAAW,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,eAAe,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACnC,mDAAmD;IACnD,WAAW,EAAE,MAAM,CAAC;IACpB,4EAA4E;IAC5E,uBAAuB,EAAE,MAAM,CAAC;IAChC,qEAAqE;IACrE,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC;;;;;;;OAOG;IACH,wBAAwB,EAAE,MAAM,IAAI,CAAC;IACrC;;;;OAIG;IACH,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AASD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,MAAM,EACN,UAAiB,EACjB,sBAA0B,EAC1B,SAAS,EACT,WAAW,EACX,MAAM,EACN,cAAc,GACf,EAAE,uBAAuB,GAAG,sBAAsB,CAywClD"}
@@ -632,6 +632,10 @@ export function useSheetGestures({
632
632
  onScrimOpacityRef.current?.(scrimOpacityForOffset(state.baseOffset, offsets, dismissOffset, peekOffset));
633
633
  }, [prepareScrollAreaSettle, resolveDetents]);
634
634
  useEffect(() => {
635
+ // Only an open sheet can be dragged; a closed one listens to nothing.
636
+ if (!isOpen) {
637
+ return;
638
+ }
635
639
  const handleWindowBlur = () => cancelDrag();
636
640
  const handleVisibilityChange = () => {
637
641
  if (document.visibilityState === 'hidden') {
@@ -644,7 +648,7 @@ export function useSheetGestures({
644
648
  window.removeEventListener('blur', handleWindowBlur);
645
649
  document.removeEventListener('visibilitychange', handleVisibilityChange);
646
650
  };
647
- }, [cancelDrag]);
651
+ }, [cancelDrag, isOpen]);
648
652
  const settleFromDrag = useCallback((offset, velocity, height, dir, travel, baseOffset, baseLayoutOffset, renderedOffset, layoutOffset, naturalEndGap) => {
649
653
  const {
650
654
  offsets,
@@ -1 +1 @@
1
- {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../src/Button/Button.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../src/Button/Button.tsx"],"names":[],"mappings":"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"}
@@ -17,7 +17,7 @@
17
17
  *
18
18
  * Last synced props: label, variant, size, isDisabled, isLoading, isInterruptible, clickAction, icon, isIconOnly, width, children, tooltip, endContent, href, as, target, rel
19
19
  */
20
- import { useEffect, useRef, useState, useTransition } from 'react';
20
+ import { use, useEffect, useRef, useState, useTransition } from 'react';
21
21
  import * as stylex from '@stylexjs/stylex';
22
22
  import { useTooltip } from "../Tooltip/useTooltip.js";
23
23
  import "../theme/tokens.stylex.js";
@@ -30,7 +30,8 @@ import { EDGE_COMP_ATTR } from "../Layout/edgeCompensation.stylex.js";
30
30
  import { useSize } from "../SizeContext/SizeContext.js";
31
31
  import { useButtonGroup } from "../ButtonGroup/ButtonGroupContext.js";
32
32
  import { useInputGroup } from "../InputGroup/InputGroupContext.js";
33
- import { groupStyles as inputGroupStyles } from "../InputGroup/groupStyles.js";
33
+ import { InputGroupInternalContext } from "../InputGroup/InputGroupInternalContext.js";
34
+ import { groupStyles as inputGroupStyles, inputGroupItemProps } from "../InputGroup/groupStyles.js";
34
35
  import { mergeProps } from "../utils/index.js";
35
36
  import { useMergedRefs } from "../hooks/useMergedRefs.js";
36
37
  import { useLinkComponent } from "../Link/useLinkComponent.js";
@@ -190,6 +191,9 @@ const variants = {
190
191
  destructive: {
191
192
  kWkggS: "x1pjz0fi",
192
193
  kMwMTN: "x1m024r3",
194
+ kMzoRj: "xc342km x13rsnn2",
195
+ ksu8eU: "xng3xce xx61lck",
196
+ kVAM5u: "x1w1tqly",
193
197
  kjBf7l: "x1e0x2sz",
194
198
  $$css: true
195
199
  }
@@ -377,7 +381,8 @@ export function Button({
377
381
  // the consumer is deliberately showing it.
378
382
  const delaySpinner = isPending || isInterruptible;
379
383
  const groupDisabled = buttonGroup?.isDisabled ?? false;
380
- const isTrueDisabled = isDisabled || groupDisabled;
384
+ const inputGroupState = use(InputGroupInternalContext);
385
+ const isTrueDisabled = isDisabled || groupDisabled || inputGroupState.isDisabled;
381
386
  // Busy-only: the button can't fire again purely because an action is in
382
387
  // flight, not because it's genuinely isDisabled/group-disabled. Per the API
383
388
  // Conventions "Disabled vs Busy" rule, busy is visual-only (aria-busy +
@@ -549,6 +554,7 @@ export function Button({
549
554
  href: href,
550
555
  target: target,
551
556
  rel: rel,
557
+ ...(inputGroup != null && buttonGroup == null ? inputGroupItemProps : undefined),
552
558
  ...sharedMergedProps,
553
559
  ...pressFeedback,
554
560
  ...props,
@@ -570,6 +576,7 @@ export function Button({
570
576
  ref: mergedButtonRef,
571
577
  type: type,
572
578
  disabled: useAriaDisabled ? undefined : buttonDisabled,
579
+ ...(inputGroup != null && buttonGroup == null ? inputGroupItemProps : undefined),
573
580
  ...sharedMergedProps,
574
581
  ...pressFeedback,
575
582
  ...props,