@astryxdesign/core 0.4.1 → 0.4.2-canary.01592f7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +55 -0
- package/dist/Avatar/Avatar.d.ts +4 -1
- package/dist/Avatar/Avatar.d.ts.map +1 -1
- package/dist/Avatar/Avatar.js +19 -23
- package/dist/AvatarGroup/AvatarGroupOverflow.d.ts.map +1 -1
- package/dist/AvatarGroup/AvatarGroupOverflow.js +7 -2
- package/dist/Button/Button.d.ts.map +1 -1
- package/dist/Button/Button.js +9 -7
- package/dist/Chat/ChatMessage.d.ts +7 -0
- package/dist/Chat/ChatMessage.d.ts.map +1 -1
- package/dist/Chat/ChatMessageBubble.d.ts +13 -1
- package/dist/Chat/ChatMessageBubble.d.ts.map +1 -1
- package/dist/Chat/ChatMessageBubble.js +19 -1
- package/dist/Chat/ChatTokenizedText.js +1 -1
- package/dist/CheckboxInput/CheckboxInput.d.ts.map +1 -1
- package/dist/CheckboxInput/CheckboxInput.js +5 -0
- package/dist/CommandPalette/CommandPaletteFooter.d.ts.map +1 -1
- package/dist/CommandPalette/CommandPaletteFooter.js +5 -3
- package/dist/ComplexSelector/ComplexSelector.d.ts +38 -4
- package/dist/ComplexSelector/ComplexSelector.d.ts.map +1 -1
- package/dist/ComplexSelector/ComplexSelector.js +96 -35
- package/dist/ComplexSelector/index.d.ts +2 -2
- package/dist/ComplexSelector/index.d.ts.map +1 -1
- package/dist/ComplexSelector/index.js +1 -1
- package/dist/DateTimeInput/DateTimeInput.d.ts.map +1 -1
- package/dist/DateTimeInput/DateTimeInput.js +2 -2
- package/dist/DropdownMenu/DropdownMenuSubMenu.d.ts.map +1 -1
- package/dist/DropdownMenu/DropdownMenuSubMenu.js +19 -15
- package/dist/HoverCard/HoverCard.d.ts +1 -1
- package/dist/HoverCard/HoverCard.d.ts.map +1 -1
- package/dist/HoverCard/HoverCard.js +5 -13
- package/dist/HoverCard/useHoverCard.d.ts.map +1 -1
- package/dist/HoverCard/useHoverCard.js +6 -5
- package/dist/InputGroup/groupStyles.d.ts.map +1 -1
- package/dist/InputGroup/groupStyles.js +7 -2
- package/dist/Layer/layerHost.d.ts +24 -0
- package/dist/Layer/layerHost.d.ts.map +1 -0
- package/dist/Layer/layerHost.js +79 -0
- package/dist/Layer/useLayer.d.ts +14 -6
- package/dist/Layer/useLayer.d.ts.map +1 -1
- package/dist/Layer/useLayer.js +158 -30
- package/dist/Markdown/parser.d.ts.map +1 -1
- package/dist/Markdown/parser.js +55 -12
- package/dist/NavItem/navItemStyles.stylex.d.ts +17 -5
- package/dist/NavItem/navItemStyles.stylex.d.ts.map +1 -1
- package/dist/NavItem/navItemStyles.stylex.js +11 -5
- package/dist/RadioList/RadioListItem.d.ts.map +1 -1
- package/dist/RadioList/RadioListItem.js +5 -0
- package/dist/SideNav/SideNav.d.ts +7 -9
- package/dist/SideNav/SideNav.d.ts.map +1 -1
- package/dist/SideNav/SideNav.js +32 -5
- package/dist/SideNav/SideNavCollapseButton.d.ts +25 -9
- package/dist/SideNav/SideNavCollapseButton.d.ts.map +1 -1
- package/dist/SideNav/SideNavCollapseButton.js +39 -15
- package/dist/SideNav/SideNavCollapseContext.d.ts +21 -0
- package/dist/SideNav/SideNavCollapseContext.d.ts.map +1 -1
- package/dist/SideNav/SideNavCollapseContext.js +16 -2
- package/dist/SideNav/SideNavHeading.d.ts.map +1 -1
- package/dist/SideNav/SideNavHeading.js +89 -32
- package/dist/SideNav/SideNavItem.d.ts +7 -2
- package/dist/SideNav/SideNavItem.d.ts.map +1 -1
- package/dist/SideNav/SideNavItem.js +119 -75
- package/dist/SideNav/SideNavSection.d.ts.map +1 -1
- package/dist/SideNav/SideNavSection.js +7 -16
- package/dist/SideNav/index.d.ts +1 -1
- package/dist/SideNav/index.d.ts.map +1 -1
- package/dist/Slider/Slider.d.ts.map +1 -1
- package/dist/Slider/Slider.js +56 -15
- package/dist/Switch/Switch.d.ts.map +1 -1
- package/dist/Switch/Switch.js +5 -0
- package/dist/Thumbnail/Thumbnail.d.ts.map +1 -1
- package/dist/Thumbnail/Thumbnail.js +5 -0
- package/dist/TopNav/TopNavHeading.d.ts.map +1 -1
- package/dist/TopNav/TopNavHeading.js +14 -6
- package/dist/TopNav/TopNavMegaMenu.d.ts.map +1 -1
- package/dist/TopNav/TopNavMegaMenu.js +25 -93
- package/dist/TopNav/TopNavMegaMenuItem.js +1 -1
- package/dist/TopNav/TopNavMenu.d.ts.map +1 -1
- package/dist/TopNav/TopNavMenu.js +10 -5
- package/dist/astryx.css +40 -8
- package/dist/astryx.umd.js +50 -50
- package/dist/astryx.umd.js.map +4 -4
- package/dist/hooks/containerReveal.stylex.d.ts +71 -4
- package/dist/hooks/containerReveal.stylex.d.ts.map +1 -1
- package/dist/hooks/containerReveal.stylex.js +57 -5
- package/dist/hooks/index.d.ts +2 -2
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +1 -1
- package/dist/hooks/useContainerReveal.d.ts +60 -3
- package/dist/hooks/useContainerReveal.d.ts.map +1 -1
- package/dist/hooks/useContainerReveal.js +27 -5
- package/dist/hooks/useFocusTrap.d.ts.map +1 -1
- package/dist/hooks/useFocusTrap.js +16 -2
- package/dist/hooks/useMenuHover.d.ts +50 -5
- package/dist/hooks/useMenuHover.d.ts.map +1 -1
- package/dist/hooks/useMenuHover.js +171 -51
- package/dist/theme/defineTheme.d.ts +16 -5
- package/dist/theme/defineTheme.d.ts.map +1 -1
- package/dist/theme/defineTheme.js +44 -48
- package/dist/theme/derivedVarRegistry.d.ts.map +1 -1
- package/dist/theme/derivedVarRegistry.js +7 -0
- package/dist/theme/expandColorScale.d.ts.map +1 -1
- package/dist/theme/expandColorScale.js +1 -0
- package/dist/theme/expandMotionScale.d.ts +1 -0
- package/dist/theme/expandMotionScale.d.ts.map +1 -1
- package/dist/theme/expandMotionScale.js +1 -0
- package/dist/theme/expandRadiusScale.d.ts +1 -0
- package/dist/theme/expandRadiusScale.d.ts.map +1 -1
- package/dist/theme/expandRadiusScale.js +1 -0
- package/dist/theme/expandTypeScale.d.ts +1 -0
- package/dist/theme/expandTypeScale.d.ts.map +1 -1
- package/dist/theme/expandTypeScale.js +1 -0
- package/dist/theme/mergeComponents.d.ts +20 -0
- package/dist/theme/mergeComponents.d.ts.map +1 -0
- package/dist/theme/mergeComponents.js +56 -0
- package/dist/theme/onMediaTokens.d.ts +6 -1
- package/dist/theme/onMediaTokens.d.ts.map +1 -1
- package/dist/theme/onMediaTokens.js +11 -3
- package/dist/theme/tokens.stylex.d.ts +3 -1
- package/dist/theme/tokens.stylex.d.ts.map +1 -1
- package/dist/theme/tokens.stylex.js +3 -1
- package/locales/en.json +84 -0
- package/locales/pseudo.json +63 -0
- package/package.json +3 -3
- package/src/Avatar/Avatar.doc.mjs +5 -2
- package/src/Avatar/Avatar.test.tsx +51 -0
- package/src/Avatar/Avatar.tsx +30 -20
- package/src/AvatarGroup/AvatarGroup.doc.mjs +1 -1
- package/src/AvatarGroup/AvatarGroup.test.tsx +14 -0
- package/src/AvatarGroup/AvatarGroupOverflow.tsx +3 -2
- package/src/Button/Button.tsx +5 -3
- package/src/ButtonGroup/ButtonGroup.test.tsx +7 -4
- package/src/Card/Card.doc.mjs +2 -0
- package/src/Chat/Chat.doc.mjs +4 -1
- package/src/Chat/ChatMessage.doc.mjs +3 -3
- package/src/Chat/ChatMessage.tsx +7 -0
- package/src/Chat/ChatMessageBubble.doc.mjs +7 -0
- package/src/Chat/ChatMessageBubble.test.tsx +95 -6
- package/src/Chat/ChatMessageBubble.tsx +25 -0
- package/src/Chat/ChatTokenizedText.tsx +1 -1
- package/src/CheckboxInput/CheckboxInput.tsx +20 -0
- package/src/CodeBlock/CodeBlock.doc.mjs +3 -0
- package/src/CommandPalette/CommandPaletteFooter.tsx +6 -3
- package/src/ComplexSelector/ComplexSelector.doc.mjs +55 -6
- package/src/ComplexSelector/ComplexSelector.test.tsx +197 -6
- package/src/ComplexSelector/ComplexSelector.tsx +153 -32
- package/src/ComplexSelector/index.ts +3 -1
- package/src/DateTimeInput/DateTimeInput.tsx +4 -2
- package/src/DropdownMenu/DropdownMenuSubMenu.test.tsx +72 -1
- package/src/DropdownMenu/DropdownMenuSubMenu.tsx +24 -20
- package/src/HoverCard/HoverCard.doc.mjs +3 -3
- package/src/HoverCard/HoverCard.test.tsx +283 -55
- package/src/HoverCard/HoverCard.tsx +5 -13
- package/src/HoverCard/useHoverCard.tsx +8 -11
- package/src/InputGroup/groupStyles.ts +7 -8
- package/src/Item/Item.doc.mjs +4 -0
- package/src/Layer/layerHost.test.ts +99 -0
- package/src/Layer/layerHost.ts +141 -0
- package/src/Layer/useLayer.doc.mjs +14 -4
- package/src/Layer/useLayer.test.tsx +332 -7
- package/src/Layer/useLayer.tsx +235 -36
- package/src/Markdown/parser.test.ts +53 -0
- package/src/Markdown/parser.ts +53 -12
- package/src/MobileNav/MobileNav.doc.mjs +7 -0
- package/src/NavItem/navItemStyles.stylex.ts +31 -5
- package/src/RadioList/RadioListItem.tsx +20 -0
- package/src/SideNav/SideNav.doc.mjs +13 -4
- package/src/SideNav/SideNav.test.tsx +858 -2
- package/src/SideNav/SideNav.tsx +37 -16
- package/src/SideNav/SideNavCollapseButton.doc.mjs +28 -6
- package/src/SideNav/SideNavCollapseButton.tsx +67 -15
- package/src/SideNav/SideNavCollapseContext.ts +29 -9
- package/src/SideNav/SideNavHeading.tsx +53 -25
- package/src/SideNav/SideNavItem.doc.mjs +13 -0
- package/src/SideNav/SideNavItem.tsx +97 -84
- package/src/SideNav/SideNavSection.tsx +6 -20
- package/src/SideNav/index.ts +2 -0
- package/src/Slider/Slider.test.tsx +69 -33
- package/src/Slider/Slider.tsx +65 -13
- package/src/Switch/Switch.tsx +20 -0
- package/src/TabList/TabList.doc.mjs +3 -0
- package/src/Text/Text.doc.mjs +1 -1
- package/src/Thumbnail/Thumbnail.doc.mjs +3 -0
- package/src/Thumbnail/Thumbnail.tsx +10 -0
- package/src/Timestamp/Timestamp.test.tsx +40 -22
- package/src/Toolbar/Toolbar.test.tsx +14 -14
- package/src/TopNav/TopNav.test.tsx +86 -1
- package/src/TopNav/TopNavHeading.tsx +21 -14
- package/src/TopNav/TopNavMegaMenu.test.tsx +43 -0
- package/src/TopNav/TopNavMegaMenu.tsx +29 -105
- package/src/TopNav/TopNavMegaMenuItem.tsx +1 -1
- package/src/TopNav/TopNavMenu.test.tsx +41 -0
- package/src/TopNav/TopNavMenu.tsx +14 -4
- package/src/TreeList/TreeList.doc.mjs +1 -0
- package/src/hooks/containerReveal.stylex.ts +140 -9
- package/src/hooks/index.ts +6 -1
- package/src/hooks/useContainerReveal.doc.mjs +11 -5
- package/src/hooks/useContainerReveal.test.tsx +70 -3
- package/src/hooks/useContainerReveal.ts +86 -7
- package/src/hooks/useFocusTrap.test.tsx +16 -0
- package/src/hooks/useFocusTrap.ts +20 -2
- package/src/hooks/useMenuHover.test.tsx +364 -0
- package/src/hooks/useMenuHover.ts +243 -47
- package/src/theme/defineTheme.test.ts +127 -0
- package/src/theme/defineTheme.ts +57 -51
- package/src/theme/derivedVarRegistry.test.ts +78 -12
- package/src/theme/derivedVarRegistry.ts +4 -0
- package/src/theme/expandColorScale.ts +1 -0
- package/src/theme/expandMotionScale.ts +1 -0
- package/src/theme/expandRadiusScale.ts +1 -0
- package/src/theme/expandTypeScale.ts +1 -0
- package/src/theme/mergeComponents.ts +59 -0
- package/src/theme/onMediaTokens.ts +9 -2
- package/src/theme/themingTargets.test.ts +152 -26
- package/src/theme/tokens.stylex.ts +3 -1
- package/src/theme/tokens.test.ts +12 -0
- package/src/theme/useTheme.test.tsx +18 -0
|
@@ -158,14 +158,12 @@ export function TopNavHeading({
|
|
|
158
158
|
role: 'none',
|
|
159
159
|
hasCloseButton: false
|
|
160
160
|
});
|
|
161
|
-
const closeMenuCtx = useMemo(() => ({
|
|
162
|
-
closeMenu: popover.hide
|
|
163
|
-
}), [popover.hide]);
|
|
164
161
|
const {
|
|
165
162
|
triggerProps,
|
|
166
163
|
contentProps,
|
|
167
164
|
menuRef,
|
|
168
|
-
setTriggerEl
|
|
165
|
+
setTriggerEl,
|
|
166
|
+
close: closeMenu
|
|
169
167
|
} = useMenuHover({
|
|
170
168
|
show: popover.show,
|
|
171
169
|
hide: popover.hide,
|
|
@@ -173,7 +171,14 @@ export function TopNavHeading({
|
|
|
173
171
|
isEnabled: !!menu,
|
|
174
172
|
showDelay: 0
|
|
175
173
|
});
|
|
176
|
-
const
|
|
174
|
+
const closeMenuCtx = useMemo(() => ({
|
|
175
|
+
closeMenu
|
|
176
|
+
}), [closeMenu]);
|
|
177
|
+
|
|
178
|
+
// setTriggerEl belongs on the chevron button, not this root: it is the
|
|
179
|
+
// focus-restore target and a <div> cannot take focus. triggerRef stays here
|
|
180
|
+
// because the panel anchors to the whole heading.
|
|
181
|
+
const setRef = mergeRefs(rootRef, ref, menu ? popover.triggerRef : undefined);
|
|
177
182
|
const showChevron = !!menu;
|
|
178
183
|
const hasAnyHref = !!(headingHref || superheadingHref || subheadingHref);
|
|
179
184
|
|
|
@@ -247,7 +252,8 @@ export function TopNavHeading({
|
|
|
247
252
|
...{
|
|
248
253
|
className: "x78zum5 x6s0dn4 x1txdalj xh8yej3 xjbqb8w xjb2p0i x1qlqyl8 x1heor9g x1yc453h xkoleio x12gdq22 x1betex2 x1djylfy xt970qd xcsaf9d x1p37lm5 xhrcg97 x1ypdohk"
|
|
249
254
|
},
|
|
250
|
-
|
|
255
|
+
// A close affordance, not the trigger: dismiss only.
|
|
256
|
+
onClick: closeMenu,
|
|
251
257
|
children: [logo && /*#__PURE__*/_jsx("span", {
|
|
252
258
|
...{
|
|
253
259
|
className: "x2lah0s x78zum5 x6s0dn4 xl56j7k"
|
|
@@ -315,6 +321,7 @@ export function TopNavHeading({
|
|
|
315
321
|
// Stays a <button>: this box is the popover trigger, so it carries
|
|
316
322
|
// the accessible name and handlers — only the glyph moves to Icon.
|
|
317
323
|
_jsx("button", {
|
|
324
|
+
ref: setTriggerEl,
|
|
318
325
|
type: "button",
|
|
319
326
|
"aria-label": t('@astryx.topNav.heading.openMenu'),
|
|
320
327
|
onClick: e => {
|
|
@@ -381,6 +388,7 @@ export function TopNavHeading({
|
|
|
381
388
|
// carries the accessible name and handlers — only the glyph
|
|
382
389
|
// moves to Icon.
|
|
383
390
|
_jsx("button", {
|
|
391
|
+
ref: setTriggerEl,
|
|
384
392
|
type: "button",
|
|
385
393
|
"aria-label": t('@astryx.topNav.heading.openMenu'),
|
|
386
394
|
onClick: e => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TopNavMegaMenu.d.ts","sourceRoot":"","sources":["../../src/TopNav/TopNavMegaMenu.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,EAKZ,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"TopNavMegaMenu.d.ts","sourceRoot":"","sources":["../../src/TopNav/TopNavMegaMenu.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,EAKZ,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAkBf,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAoM5C,MAAM,WAAW,mBAAoB,SAAQ,SAAS,CAAC,iBAAiB,CAAC;IACvE,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACnC,kDAAkD;IAClD,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;OAGG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;CAC1C;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,wBAAgB,cAAc,CAAC,EAC7B,GAAG,EACH,KAAK,EACL,KAAK,EACL,QAAQ,EACR,KAAW,EACX,SAAe,EACf,YAAY,GACb,EAAE,mBAAmB,4BA+BrB;yBAvCe,cAAc"}
|
|
@@ -34,6 +34,7 @@ import * as stylex from '@stylexjs/stylex';
|
|
|
34
34
|
import "../theme/tokens.stylex.js";
|
|
35
35
|
import { colorVars, spacingVars, radiusVars, durationVars, easeVars, fontWeightVars, shadowVars, typeScaleVars, borderVars } from "../theme/tokens.stylex.js";
|
|
36
36
|
import { usePopover } from "../Popover/usePopover.js";
|
|
37
|
+
import { useMenuHover } from "../hooks/useMenuHover.js";
|
|
37
38
|
import { Grid } from "../Grid/Grid.js";
|
|
38
39
|
import { Icon } from "../Icon/index.js";
|
|
39
40
|
import { mergeProps, mergeRefs } from "../utils/index.js";
|
|
@@ -233,7 +234,8 @@ TopNavMegaMenu.displayName = 'TopNavMegaMenu';
|
|
|
233
234
|
// DefaultMegaMenu — desktop popover mode
|
|
234
235
|
// =============================================================================
|
|
235
236
|
|
|
236
|
-
|
|
237
|
+
/** The panel is a grid of links, not `role="menuitem"` rows. */
|
|
238
|
+
const PANEL_ITEM_SELECTOR = 'a[href], button:not([disabled]), [tabindex]:not([tabindex="-1"])';
|
|
237
239
|
function DefaultMegaMenu({
|
|
238
240
|
ref,
|
|
239
241
|
label,
|
|
@@ -244,17 +246,11 @@ function DefaultMegaMenu({
|
|
|
244
246
|
onOpenChange
|
|
245
247
|
}) {
|
|
246
248
|
const slot = useTopNavSlot();
|
|
247
|
-
const showTimeoutRef = useRef(null);
|
|
248
|
-
const hideTimeoutRef = useRef(null);
|
|
249
249
|
const triggerButtonRef = useRef(null);
|
|
250
|
-
const hoverOpenedAtRef = useRef(0);
|
|
251
|
-
const stickyRef = useRef(false);
|
|
252
250
|
const handlePopoverShow = useCallback(() => {
|
|
253
251
|
onOpenChange?.(true);
|
|
254
252
|
}, [onOpenChange]);
|
|
255
253
|
const handlePopoverHide = useCallback(() => {
|
|
256
|
-
hoverOpenedAtRef.current = 0;
|
|
257
|
-
stickyRef.current = false;
|
|
258
254
|
onOpenChange?.(false);
|
|
259
255
|
}, [onOpenChange]);
|
|
260
256
|
const popover = usePopover({
|
|
@@ -288,93 +284,29 @@ function DefaultMegaMenu({
|
|
|
288
284
|
popover.triggerRef(null);
|
|
289
285
|
};
|
|
290
286
|
}, [popover]);
|
|
291
|
-
const
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
}, delay);
|
|
309
|
-
}, [clearTimeouts, delay, popover]);
|
|
310
|
-
const scheduleHide = useCallback(() => {
|
|
311
|
-
clearTimeouts();
|
|
312
|
-
hideTimeoutRef.current = setTimeout(() => {
|
|
313
|
-
popover.hide();
|
|
314
|
-
}, hideDelay);
|
|
315
|
-
}, [clearTimeouts, hideDelay, popover]);
|
|
316
|
-
const focusFirstPanelItem = useCallback(() => {
|
|
317
|
-
popover.contentRef.current?.querySelector('a[href], button:not([disabled]), [tabindex]:not([tabindex="-1"])')?.focus();
|
|
318
|
-
}, [popover.contentRef]);
|
|
319
|
-
const handleTriggerMouseEnter = useCallback(() => {
|
|
320
|
-
clearTimeouts();
|
|
321
|
-
if (!popover.isOpen) {
|
|
322
|
-
scheduleShow();
|
|
323
|
-
}
|
|
324
|
-
}, [clearTimeouts, popover.isOpen, scheduleShow]);
|
|
325
|
-
const handlePanelMouseEnter = useCallback(() => {
|
|
326
|
-
clearTimeouts();
|
|
327
|
-
}, [clearTimeouts]);
|
|
328
|
-
const handleMouseLeave = useCallback(() => {
|
|
329
|
-
if (!stickyRef.current) {
|
|
330
|
-
scheduleHide();
|
|
331
|
-
}
|
|
332
|
-
}, [scheduleHide]);
|
|
333
|
-
const handleClick = useCallback(event => {
|
|
334
|
-
// Cancel the native invoker toggle so this guard is the single source of
|
|
335
|
-
// truth for trigger activation. popoverTarget still establishes the
|
|
336
|
-
// invoker relationship used by native light-dismiss and stacking.
|
|
337
|
-
event.preventDefault();
|
|
338
|
-
clearTimeouts();
|
|
339
|
-
if (event.detail === 0) {
|
|
340
|
-
stickyRef.current = true;
|
|
341
|
-
hoverOpenedAtRef.current = 0;
|
|
342
|
-
if (popover.isOpen) {
|
|
343
|
-
focusFirstPanelItem();
|
|
344
|
-
} else {
|
|
345
|
-
popover.show();
|
|
346
|
-
}
|
|
347
|
-
} else if (!popover.isOpen) {
|
|
348
|
-
stickyRef.current = true;
|
|
349
|
-
popover.show({
|
|
350
|
-
skipAutoFocus: true
|
|
351
|
-
});
|
|
352
|
-
} else if (Date.now() - hoverOpenedAtRef.current < CLICK_GUARD_MS) {
|
|
353
|
-
// A click that naturally follows a hover-open confirms the open state
|
|
354
|
-
// instead of toggling the panel shut. From here it behaves like any
|
|
355
|
-
// other click-open and stays pinned until explicit dismissal.
|
|
356
|
-
stickyRef.current = true;
|
|
357
|
-
hoverOpenedAtRef.current = 0;
|
|
358
|
-
} else {
|
|
359
|
-
popover.hide();
|
|
360
|
-
triggerButtonRef.current?.focus();
|
|
361
|
-
}
|
|
362
|
-
}, [clearTimeouts, focusFirstPanelItem, popover]);
|
|
363
|
-
useEffect(() => {
|
|
364
|
-
return () => {
|
|
365
|
-
clearTimeouts();
|
|
366
|
-
};
|
|
367
|
-
}, [clearTimeouts]);
|
|
287
|
+
const {
|
|
288
|
+
triggerProps: hoverTriggerProps,
|
|
289
|
+
contentProps,
|
|
290
|
+
menuRef,
|
|
291
|
+
setTriggerEl
|
|
292
|
+
} = useMenuHover({
|
|
293
|
+
show: popover.show,
|
|
294
|
+
hide: popover.hide,
|
|
295
|
+
isOpen: popover.isOpen,
|
|
296
|
+
isEnabled: true,
|
|
297
|
+
showDelay: delay,
|
|
298
|
+
hideDelay,
|
|
299
|
+
itemSelector: PANEL_ITEM_SELECTOR,
|
|
300
|
+
// Trigger sits outside an auto popover; the invoker relationship exempts it
|
|
301
|
+
// from light dismiss.
|
|
302
|
+
popoverId: popover.id
|
|
303
|
+
});
|
|
368
304
|
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
369
305
|
children: [/*#__PURE__*/_jsxs("button", {
|
|
370
|
-
ref: mergeRefs(triggerButtonRef, ref),
|
|
306
|
+
ref: mergeRefs(triggerButtonRef, setTriggerEl, ref),
|
|
371
307
|
type: "button",
|
|
372
308
|
...popover.triggerProps,
|
|
373
|
-
|
|
374
|
-
popoverTarget: popover.id,
|
|
375
|
-
onClick: handleClick,
|
|
376
|
-
onMouseEnter: handleTriggerMouseEnter,
|
|
377
|
-
onMouseLeave: handleMouseLeave,
|
|
309
|
+
...hoverTriggerProps,
|
|
378
310
|
...mergeProps(themeProps('top-nav-mega-menu'), focusOutlineProps.focusVisible(styles.trigger, popover.isOpen && styles.triggerOpen)),
|
|
379
311
|
children: [label, /*#__PURE__*/_jsx(Icon, {
|
|
380
312
|
icon: "chevronDown",
|
|
@@ -386,10 +318,10 @@ function DefaultMegaMenu({
|
|
|
386
318
|
// role="group" — a mega menu is a browsing grid of links, not an
|
|
387
319
|
// ARIA menu of menuitems (per the WAI-ARIA APG, the menu role is
|
|
388
320
|
// for action menus; link mega menus are the documented anti-case).
|
|
321
|
+
ref: menuRef,
|
|
389
322
|
role: "group",
|
|
390
323
|
"aria-label": label,
|
|
391
|
-
|
|
392
|
-
onMouseLeave: handleMouseLeave,
|
|
324
|
+
...contentProps,
|
|
393
325
|
...{
|
|
394
326
|
className: "x1prclbq x11xkdxz x13fuv20 x1pc3f07 x1hviunn x1i5ehqx xb3r6kr x78zum5 xdt5ytf x2lwn1j"
|
|
395
327
|
},
|
|
@@ -439,7 +371,7 @@ function DrawerMegaMenu({
|
|
|
439
371
|
"aria-controls": `${menuId}-items`,
|
|
440
372
|
...mergeProps(themeProps('top-nav-mega-menu', {
|
|
441
373
|
mode: 'drawer'
|
|
442
|
-
}),
|
|
374
|
+
}), focusOutlineProps.focusVisible(navItemStyles.item, styles.drawerHeader)),
|
|
443
375
|
children: [label, /*#__PURE__*/_jsx(Icon, {
|
|
444
376
|
icon: "chevronDown",
|
|
445
377
|
size: "sm",
|
|
@@ -126,7 +126,7 @@ export function TopNavMegaMenuItem({
|
|
|
126
126
|
...elementProps,
|
|
127
127
|
...mergeProps(themeProps('top-nav-mega-menu-item', {
|
|
128
128
|
mode: 'drawer'
|
|
129
|
-
}),
|
|
129
|
+
}), focusOutlineProps.focusVisible(navItemStyles.item, styles.drawerItem)),
|
|
130
130
|
children: [icon && /*#__PURE__*/_jsx("div", {
|
|
131
131
|
...{
|
|
132
132
|
className: "x78zum5 x6s0dn4 xl56j7k x1td3qas x10w6t97 xh6dtrn x17x4s8c x2lah0s xv9yike xjc2qm6"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TopNavMenu.d.ts","sourceRoot":"","sources":["../../src/TopNav/TopNavMenu.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,EAKZ,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAQf,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AA8L5C;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,IAAI,CAAC,EAAE,SAAS,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAMD,MAAM,WAAW,eAAgB,SAAQ,SAAS,CAAC,iBAAiB,CAAC;IACnE,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACnC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAE5B;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,wBAAgB,UAAU,CAAC,EACzB,GAAG,EACH,KAAK,EACL,KAAK,EACL,KAAW,EACX,SAAe,GAChB,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"TopNavMenu.d.ts","sourceRoot":"","sources":["../../src/TopNav/TopNavMenu.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,EAKZ,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAQf,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AA8L5C;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,IAAI,CAAC,EAAE,SAAS,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAMD,MAAM,WAAW,eAAgB,SAAQ,SAAS,CAAC,iBAAiB,CAAC;IACnE,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACnC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAE5B;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,wBAAgB,UAAU,CAAC,EACzB,GAAG,EACH,KAAK,EACL,KAAK,EACL,KAAW,EACX,SAAe,GAChB,EAAE,eAAe,4BA4OjB;yBAlPe,UAAU"}
|
|
@@ -197,14 +197,18 @@ export function TopNavMenu({
|
|
|
197
197
|
triggerProps,
|
|
198
198
|
contentProps,
|
|
199
199
|
menuRef,
|
|
200
|
-
setTriggerEl
|
|
200
|
+
setTriggerEl,
|
|
201
|
+
close
|
|
201
202
|
} = useMenuHover({
|
|
202
203
|
show: popover.show,
|
|
203
204
|
hide: popover.hide,
|
|
204
205
|
isOpen: popover.isOpen,
|
|
205
206
|
isEnabled: true,
|
|
206
207
|
showDelay: delay,
|
|
207
|
-
hideDelay
|
|
208
|
+
hideDelay,
|
|
209
|
+
// Trigger sits outside an auto popover; the invoker relationship exempts
|
|
210
|
+
// it from light dismiss.
|
|
211
|
+
popoverId: popover.id
|
|
208
212
|
});
|
|
209
213
|
const setTriggerRef = mergeRefs(triggerButtonRef, popover.triggerRef, setTriggerEl, ref);
|
|
210
214
|
|
|
@@ -221,7 +225,8 @@ export function TopNavMenu({
|
|
|
221
225
|
} = useListFocus({
|
|
222
226
|
itemSelector: '[role="menuitem"]',
|
|
223
227
|
hasRovingTabIndex: true,
|
|
224
|
-
|
|
228
|
+
// Not popover.hide: Escape must also restore focus to the trigger.
|
|
229
|
+
onEscape: close
|
|
225
230
|
});
|
|
226
231
|
|
|
227
232
|
// First-character typeahead over the menu items (menus-11).
|
|
@@ -272,7 +277,7 @@ export function TopNavMenu({
|
|
|
272
277
|
onClick: () => setDrawerExpanded(v => !v),
|
|
273
278
|
"aria-expanded": drawerExpanded,
|
|
274
279
|
"aria-controls": `${menuId}-items`,
|
|
275
|
-
...
|
|
280
|
+
...focusOutlineProps.focusVisible(navItemStyles.item, drawerStyles.header),
|
|
276
281
|
children: [label, /*#__PURE__*/_jsx(Icon, {
|
|
277
282
|
icon: "chevronDown",
|
|
278
283
|
size: "sm",
|
|
@@ -299,7 +304,7 @@ export function TopNavMenu({
|
|
|
299
304
|
item.onClick?.();
|
|
300
305
|
closeMobileNav();
|
|
301
306
|
},
|
|
302
|
-
...
|
|
307
|
+
...focusOutlineProps.focusVisible(navItemStyles.item, drawerStyles.item),
|
|
303
308
|
children: [item.icon && /*#__PURE__*/_jsx("span", {
|
|
304
309
|
...{
|
|
305
310
|
className: "x2lah0s xw4jnvo x1qx5ct2"
|
package/dist/astryx.css
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
@layer astryx-base {
|
|
5
5
|
@property --x---_avatar-group-overlap { syntax: "*"; inherits: false;}
|
|
6
6
|
@property --x---_codeblock-gutter-width { syntax: "*"; inherits: false;}
|
|
7
|
+
@property --x---_hover-delay { syntax: "*"; inherits: false;}
|
|
7
8
|
@property --x---_tab-indicator-bottom { syntax: "*"; inherits: false;}
|
|
8
9
|
@property --x---container-max-height { syntax: "*"; inherits: false;}
|
|
9
10
|
@property --x---layout-content-width { syntax: "*"; inherits: false;}
|
|
@@ -91,24 +92,33 @@
|
|
|
91
92
|
.xk0ittl{--_chat-composer-padding:var(--spacing-3)}
|
|
92
93
|
.xx161y6{--_chat-composer-radius:var(--radius-chat)}
|
|
93
94
|
.xtk08jq{--_codeblock-gutter-width:var(--x---_codeblock-gutter-width)}
|
|
95
|
+
.x9pmotm{--_conceal-opacity:0}
|
|
94
96
|
.x1kgmhs9{--_conceal-opacity:1}
|
|
95
97
|
.xvuvksw{--_dialog-radius:var(--radius-container)}
|
|
96
98
|
.xgory14{--_dropdown-menu-padding:var(--spacing-1)}
|
|
97
99
|
.x1fcsqxe{--_dropdown-menu-radius:var(--radius-container)}
|
|
100
|
+
.x13l1x9d{--_fade-delay:0s}
|
|
98
101
|
.x1832zxr{--_field-radius:var(--radius-element)}
|
|
99
102
|
.xgzxwq1{--_focus-outline-offset:0}
|
|
100
103
|
.x17wzz1v{--_focus-outline:none}
|
|
104
|
+
.xhg274n{--_hover-delay:0s}
|
|
105
|
+
.x8xu23y{--_hover-delay:var(--x---_hover-delay)}
|
|
101
106
|
.xqwz7mz{--_hovercard-radius:var(--radius-container)}
|
|
102
107
|
.xqlix59{--_item-description-color:var(--color-error)}
|
|
103
108
|
.xufyqxy{--_item-label-color:var(--color-error)}
|
|
109
|
+
.xdjmrzf{--_reveal-delay-reduced:0s,0s}
|
|
110
|
+
.x1dejzja{--_reveal-delay:0s,0s}
|
|
104
111
|
.x1xiarpw{--_reveal-delay:0s,var(--duration-fast)}
|
|
105
112
|
.xct0gwe{--_reveal-opacity:0}
|
|
113
|
+
.x5setjs{--_reveal-opacity:1}
|
|
106
114
|
.xp0pj8v{--_reveal-position:absolute}
|
|
115
|
+
.x1r6s5ct{--_reveal-position:static}
|
|
107
116
|
.x18jk3ff{--_segmented-control-padding:var(--spacing-0-5)}
|
|
108
117
|
.x9icjy1{--_segmented-control-radius:var(--radius-element)}
|
|
109
118
|
.xficto1{--_tab-indicator-bottom:calc(-1 * (var(--spacing-1) + var(--border-width)))}
|
|
110
119
|
.xbrl7fg{--_tab-indicator-bottom:var(--x---_tab-indicator-bottom)}
|
|
111
120
|
.x1kdpo6e{--_textarea-inline-padding:var(--spacing-2)}
|
|
121
|
+
.x1ur4yav{--_thumbnail-hit-inset:0px}
|
|
112
122
|
.xnvcwyz{--astryx-section-padding:var(--spacing-0-5)}
|
|
113
123
|
.xvdw317{--astryx-section-padding:var(--spacing-0)}
|
|
114
124
|
.x1rj2uvf{--astryx-section-padding:var(--spacing-1-5)}
|
|
@@ -288,8 +298,10 @@
|
|
|
288
298
|
.xkce8z9{--separator-display:flex}
|
|
289
299
|
.xpa4xmd{--tree-list-indent:var(--spacing-4)}
|
|
290
300
|
.x1xbi2jf{--tree-list-row-gap:var(--spacing-0-5)}
|
|
301
|
+
.x1wfyzv7:focus-within{--_fade-delay:0s}
|
|
291
302
|
.xqchwus:focus-visible{--_focus-outline-offset:var(--focus-outline-offset)}
|
|
292
303
|
.xqih627:focus-visible{--_focus-outline:var(--focus-outline-width) var(--focus-outline-style) var(--focus-outline-color)}
|
|
304
|
+
.x1z42dm:focus-within{--_reveal-delay-reduced:0s,0s}
|
|
293
305
|
.x1mjsb9v:focus-within{--_reveal-delay:0s,0s}
|
|
294
306
|
.xi33vf3:focus-within{--_reveal-opacity:1}
|
|
295
307
|
.xoa21yc:focus-within{--_reveal-position:static}
|
|
@@ -297,12 +309,24 @@
|
|
|
297
309
|
.x1ibt0lz:first-child{--separator-display:none}
|
|
298
310
|
.x1rht92:nth-child(even){--table-row-overlay:var(--color-background-muted)}
|
|
299
311
|
.x1m3wso9:hover{--indicator-color:var(--color-accent)}
|
|
312
|
+
@media (any-pointer: coarse){.x1hl81f0.x1hl81f0{--_fade-delay:0s}}
|
|
313
|
+
@media (any-pointer: coarse){.xm1aeao.xm1aeao{--_reveal-delay-reduced:0s,0s}}
|
|
300
314
|
@media (any-pointer: coarse){.x1pn63d7.x1pn63d7{--_reveal-delay:0s,0s}}
|
|
301
315
|
@media (any-pointer: coarse){.xi7d7de.xi7d7de{--_reveal-opacity:1}}
|
|
302
316
|
@media (any-pointer: coarse){.xarvkxi.xarvkxi{--_reveal-position:static}}
|
|
317
|
+
@media (pointer: coarse){.x1h9khjt.x1h9khjt{--_thumbnail-hit-inset:-2px}}
|
|
303
318
|
@media (hover: hover){.xb9fdgj.xb9fdgj:hover{--_conceal-opacity:0}}
|
|
319
|
+
@media (hover: hover){.xflzsy.xflzsy:hover{--_conceal-opacity:1}}
|
|
320
|
+
@media (hover: hover){.x3tau1w.x3tau1w:hover{--_fade-delay:0s}}
|
|
321
|
+
@media (hover: hover){.x1ho7nxo.x1ho7nxo:hover{--_fade-delay:var(--_hover-delay,0s)}}
|
|
322
|
+
@media (hover: hover){.xfu6dsl.xfu6dsl:hover{--_reveal-delay-reduced:0s,0s}}
|
|
323
|
+
@media (hover: hover){.x1g1w2pt.x1g1w2pt:hover{--_reveal-delay-reduced:var(--_hover-delay,0s),var(--_hover-delay,0s)}}
|
|
304
324
|
@media (hover: hover){.xp1dr9k.xp1dr9k:hover{--_reveal-delay:0s,0s}}
|
|
325
|
+
@media (hover: hover){.x619wqp.x619wqp:hover{--_reveal-delay:0s,var(--duration-fast)}}
|
|
326
|
+
@media (hover: hover){.x1qamfbu.x1qamfbu:hover{--_reveal-delay:var(--_hover-delay,0s),var(--_hover-delay,0s)}}
|
|
327
|
+
@media (hover: hover){.xichi0p.xichi0p:hover{--_reveal-opacity:0}}
|
|
305
328
|
@media (hover: hover){.x1wblmmc.x1wblmmc:hover{--_reveal-opacity:1}}
|
|
329
|
+
@media (hover: hover){.x1sacq21.x1sacq21:hover{--_reveal-position:absolute}}
|
|
306
330
|
@media (hover: hover){.x106rhu.x106rhu:hover{--_reveal-position:static}}
|
|
307
331
|
@media (hover: hover){.x1pkcbo2.x1pkcbo2:hover{--table-row-overlay:var(--color-overlay-hover)}}
|
|
308
332
|
.xln7xf2:not(#\#){font:inherit}
|
|
@@ -997,6 +1021,7 @@
|
|
|
997
1021
|
.x10l6tqk:not(#\#):not(#\#):not(#\#){position:absolute}
|
|
998
1022
|
.xixxii4:not(#\#):not(#\#):not(#\#){position:fixed}
|
|
999
1023
|
.x1n2onr6:not(#\#):not(#\#):not(#\#){position:relative}
|
|
1024
|
+
.x1uhb9sk:not(#\#):not(#\#):not(#\#){position:static}
|
|
1000
1025
|
.x7wzq59:not(#\#):not(#\#):not(#\#){position:sticky}
|
|
1001
1026
|
.x1mf7ja4:not(#\#):not(#\#):not(#\#){position:var(--_reveal-position,static)}
|
|
1002
1027
|
.xtt52l0:not(#\#):not(#\#):not(#\#){resize:none}
|
|
@@ -1068,6 +1093,7 @@
|
|
|
1068
1093
|
.xd00j3c:not(#\#):not(#\#):not(#\#){transition-behavior:allow-discrete}
|
|
1069
1094
|
.x5h36tt:not(#\#):not(#\#):not(#\#){transition-delay:.15s}
|
|
1070
1095
|
.x1ahifba:not(#\#):not(#\#):not(#\#){transition-delay:0s}
|
|
1096
|
+
.x4avkj2:not(#\#):not(#\#):not(#\#){transition-delay:var(--_fade-delay,0s)}
|
|
1071
1097
|
.x1rq8cwj:not(#\#):not(#\#):not(#\#){transition-delay:var(--_reveal-delay,0s,0s)}
|
|
1072
1098
|
.x10b1n17:not(#\#):not(#\#):not(#\#){transition-delay:var(--duration-fast)}
|
|
1073
1099
|
.x11bq7d0:not(#\#):not(#\#):not(#\#){transition-duration:.06s}
|
|
@@ -1148,15 +1174,16 @@
|
|
|
1148
1174
|
.xfd3fxj:is([dir="rtl"] *):not(#\#):not(#\#):not(#\#){animation-name:x1c2q33o-B}
|
|
1149
1175
|
.x1vxsm5i:is([dir="rtl"] *):not(#\#):not(#\#):not(#\#){animation-name:xu7jd1z-B}
|
|
1150
1176
|
.x18lne9g:is([dir="rtl"] *):not(#\#):not(#\#):not(#\#){animation-name:xwmkjkf-B}
|
|
1151
|
-
.
|
|
1152
|
-
.
|
|
1153
|
-
.
|
|
1177
|
+
.x1rmb4wm:not(:has(~ *:not([popover]):not(template))):not(#\#):not(#\#):not(#\#){border-end-end-radius:var(--radius-element)}
|
|
1178
|
+
.xturttb:not(:has(~ *:not([popover]):not(template))):not(#\#):not(#\#):not(#\#){border-end-start-radius:var(--radius-element)}
|
|
1179
|
+
.x1tzxhge:not(:has(~ *:not([popover]):not(template))):not(#\#):not(#\#):not(#\#){border-start-end-radius:var(--radius-element)}
|
|
1154
1180
|
.xuihb5h:focus-within:not(#\#):not(#\#):not(#\#){box-shadow:inset 0 0 0 2px var(--color-accent-muted)}
|
|
1155
1181
|
.x15ysqaf:focus-within:not(#\#):not(#\#):not(#\#){box-shadow:none}
|
|
1156
1182
|
.xyavpck:focus-within:not(#\#):not(#\#):not(#\#){box-shadow:var(--shadow-med)}
|
|
1157
1183
|
.x10wafsz:focus-within:not(#\#):not(#\#):not(#\#){clip-path:none}
|
|
1158
1184
|
.x1y40yee:popover-open:not(#\#):not(#\#):not(#\#){display:flex}
|
|
1159
1185
|
.x1sik18w:not(:first-child):not(#\#):not(#\#):not(#\#){margin-inline-start:var(--_avatar-group-overlap)}
|
|
1186
|
+
.x1euntei:focus-within:not(#\#):not(#\#):not(#\#){opacity:1}
|
|
1160
1187
|
.x25t5g8:focus-visible:not(#\#):not(#\#):not(#\#){opacity:1}
|
|
1161
1188
|
.xof6bs:is(th:hover *):not(#\#):not(#\#):not(#\#){opacity:1}
|
|
1162
1189
|
.xofkqq2:popover-open:not(#\#):not(#\#):not(#\#){opacity:1}
|
|
@@ -1169,6 +1196,7 @@
|
|
|
1169
1196
|
.x1jhp3zv:focus-visible:not(#\#):not(#\#):not(#\#){outline-style:var(--focus-outline-style)}
|
|
1170
1197
|
.x1vidyx5:focus-visible:not(#\#):not(#\#):not(#\#){outline-width:var(--focus-outline-width)}
|
|
1171
1198
|
.xbt4iw:focus-within:not(#\#):not(#\#):not(#\#){pointer-events:auto}
|
|
1199
|
+
.xo74pv5:focus-within:not(#\#):not(#\#):not(#\#){position:static}
|
|
1172
1200
|
.x1mqgsch:is([data-astryx-scrolling]):not(#\#):not(#\#):not(#\#){scrollbar-width:none}
|
|
1173
1201
|
.xaafvuh:is([dir="rtl"] *):not(#\#):not(#\#):not(#\#){transform:scaleX(-1) rotate(0deg)}
|
|
1174
1202
|
.x1nxqau:is([dir="rtl"] *):not(#\#):not(#\#):not(#\#){transform:scaleX(-1) rotate(90deg)}
|
|
@@ -1184,10 +1212,6 @@
|
|
|
1184
1212
|
.x9cjr8z:popover-open:not(#\#):not(#\#):not(#\#){transform:translateY(0)}
|
|
1185
1213
|
.x75qhwu:is([dir="rtl"] *):not(#\#):not(#\#):not(#\#){transform:var(--x-sj6hyi)}
|
|
1186
1214
|
.x1rm9qnc:focus-within:not(#\#):not(#\#):not(#\#){z-index:1}
|
|
1187
|
-
.x1vej5at:has(+ [popover] + [popover]:last-child):not(#\#):not(#\#):not(#\#){border-end-end-radius:var(--radius-element)}
|
|
1188
|
-
.xxd14kb:has(+ [popover]:last-child):not(#\#):not(#\#):not(#\#){border-end-end-radius:var(--radius-element)}
|
|
1189
|
-
.x1ir7nn6:has(+ [popover] + [popover]:last-child):not(#\#):not(#\#):not(#\#){border-start-end-radius:var(--radius-element)}
|
|
1190
|
-
.xpufgd0:has(+ [popover]:last-child):not(#\#):not(#\#):not(#\#){border-start-end-radius:var(--radius-element)}
|
|
1191
1215
|
.x1btxeh5:has(input:focus-visible):not(#\#):not(#\#):not(#\#){box-shadow:inset 0 0 0 2px var(--color-accent)}
|
|
1192
1216
|
.x92e2el:has(> [data-astryx-edge-comp]:last-child):not(#\#):not(#\#):not(#\#){margin-inline-end:var(--x-4drmnv)}
|
|
1193
1217
|
.x1kftj4p:has(> [data-astryx-edge-comp]:first-child):not(#\#):not(#\#):not(#\#){margin-inline-start:var(--x-126w13d)}
|
|
@@ -1242,11 +1266,13 @@
|
|
|
1242
1266
|
@media (max-width: 480px){.x1rpgqan.x1rpgqan:not(#\#):not(#\#):not(#\#){flex-direction:column}}
|
|
1243
1267
|
@media (pointer: coarse){.x6pjikd.x6pjikd:not(#\#):not(#\#):not(#\#){font-size:max(1rem,var(--text-body-size))}}
|
|
1244
1268
|
@media (pointer: coarse){.xdk3u5w.xdk3u5w:not(#\#):not(#\#):not(#\#){font-size:max(1rem,var(--text-label-size))}}
|
|
1269
|
+
@media (pointer: coarse){.x1hsn8va.x1hsn8va:not(#\#):not(#\#):not(#\#){inset-inline-start:50%}}
|
|
1245
1270
|
@media (pointer: coarse){.x1jymrmb.x1jymrmb:not(#\#):not(#\#):not(#\#){margin-inline-start:auto}}
|
|
1246
1271
|
@media (forced-colors: active){.x1tbh5bv.x1tbh5bv:not(#\#):not(#\#):not(#\#){opacity:1}}
|
|
1247
1272
|
@media (pointer: coarse){.xozvky.xozvky:not(#\#):not(#\#):not(#\#){order:1}}
|
|
1248
1273
|
@media (prefers-reduced-motion: reduce){.xg83hb1.xg83hb1:not(#\#):not(#\#):not(#\#){scroll-behavior:auto}}
|
|
1249
|
-
@media (
|
|
1274
|
+
@media (pointer: coarse){.x8i4i9p.x8i4i9p:not(#\#):not(#\#):not(#\#){transform:translate(-50%,-50%)}}
|
|
1275
|
+
@media (prefers-reduced-motion: reduce){.xwgk2z2.xwgk2z2:not(#\#):not(#\#):not(#\#){transition-delay:var(--_reveal-delay-reduced,0s,0s)}}
|
|
1250
1276
|
@media (prefers-reduced-motion: reduce){.xsagj69.xsagj69:not(#\#):not(#\#):not(#\#){transition-duration:.01ms}}
|
|
1251
1277
|
@media (prefers-reduced-motion: reduce){.xzg1mie.xzg1mie:not(#\#):not(#\#):not(#\#){transition-duration:.01s}}
|
|
1252
1278
|
@media (prefers-reduced-motion: reduce){.xsr0bmt.xsr0bmt:not(#\#):not(#\#):not(#\#){transition-duration:0s,0s}}
|
|
@@ -1283,6 +1309,8 @@
|
|
|
1283
1309
|
@media (hover: hover){.x4z56r7.x4z56r7:hover:not(#\#):not(#\#):not(#\#){color:color-mix(in srgb,var(--color-text-primary),var(--color-tint-hover) 15%)}}
|
|
1284
1310
|
@media (hover: hover){.x7ruf5d.x7ruf5d:hover:not(#\#):not(#\#):not(#\#){color:color-mix(in srgb,var(--color-text-secondary),var(--color-tint-hover) 15%)}}
|
|
1285
1311
|
@media (hover: hover){.x140uwzg.x140uwzg:hover:not(#\#):not(#\#):not(#\#){color:var(--color-text-primary)}}
|
|
1312
|
+
@media (forced-colors: active){.x1vo6n7o.x1vo6n7o:active:not(#\#):not(#\#):not(#\#){background-color:Highlight}}
|
|
1313
|
+
@media (hover: hover){@media (forced-colors: active){.x1jawyga.x1jawyga.x1jawyga:hover:not(#\#):not(#\#):not(#\#){background-color:Highlight}}}
|
|
1286
1314
|
.xib2hle:not(#\#):not(#\#):not(#\#):not(#\#){border-bottom-color:var(--color-border-emphasized)}
|
|
1287
1315
|
.xw8gpjh:not(#\#):not(#\#):not(#\#):not(#\#){border-bottom-color:var(--color-border)}
|
|
1288
1316
|
.x1q0q8m5:not(#\#):not(#\#):not(#\#):not(#\#){border-bottom-style:solid}
|
|
@@ -1587,12 +1615,16 @@
|
|
|
1587
1615
|
.x15cytp8:focus:not(#\#):not(#\#):not(#\#):not(#\#){height:auto}
|
|
1588
1616
|
.x1rw3289:focus:not(#\#):not(#\#):not(#\#):not(#\#){top:var(--spacing-2)}
|
|
1589
1617
|
.x1jqxupm:focus:not(#\#):not(#\#):not(#\#):not(#\#){width:auto}
|
|
1618
|
+
@media (pointer: coarse){.x80b3aj.x80b3aj:not(#\#):not(#\#):not(#\#):not(#\#){min-height:24px}}
|
|
1590
1619
|
@media (pointer: coarse){.x17aqpur.x17aqpur:not(#\#):not(#\#):not(#\#):not(#\#){min-height:44px}}
|
|
1620
|
+
@media (pointer: coarse){.xkagaj0.xkagaj0:not(#\#):not(#\#):not(#\#):not(#\#){min-width:24px}}
|
|
1591
1621
|
@media (pointer: coarse){.x1xrq5m.x1xrq5m:not(#\#):not(#\#):not(#\#):not(#\#){min-width:44px}}
|
|
1622
|
+
@media (pointer: coarse){.xijlfn0.xijlfn0:not(#\#):not(#\#):not(#\#):not(#\#){top:50%}}
|
|
1592
1623
|
@starting-style{.x1sopeo2.x1sopeo2:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#){grid-template-rows:0fr}}
|
|
1593
1624
|
.x1xsm0q9:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#)::after{inset:-14px}
|
|
1594
1625
|
.xarstr8:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#)::after{inset:0}
|
|
1595
1626
|
.xxx281p:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#)::before{inset:0}
|
|
1627
|
+
.xeu5z55:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#)::after{inset:var(--_thumbnail-hit-inset)}
|
|
1596
1628
|
@starting-style{.x4itv7f.x4itv7f:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#){opacity:0}}
|
|
1597
1629
|
@starting-style{.xub2912.xub2912:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#){transform:translateY(-100%)}}
|
|
1598
1630
|
@starting-style{.x12p7p72.x12p7p72:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#){transform:translateY(-4px)}}
|