@flipdish/ui-library 0.43.1 → 0.43.2

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.
@@ -0,0 +1,48 @@
1
+ 'use strict';
2
+
3
+ var useResizeObserver = require('@flipdish/ui-library/hooks/useResizeObserver');
4
+ var React = require('react');
5
+ var scroll_utils = require('../../../../utilities/__internal__/scrollUtils/scroll.utils.cjs');
6
+ var viewport_utils = require('../../../../utilities/__internal__/viewportUtils/viewport.utils.cjs');
7
+
8
+ const isSame = (a, b) => a?.top === b?.top && a?.left === b?.left && a?.height === b?.height;
9
+ /**
10
+ * Measures the rail's box in the viewport so the portaled panel can sit flush with the rail's right edge and span
11
+ * exactly its height. The rail is `fixed inset-y-0 left-0` inside its own layer, which a host may push below a top
12
+ * strip, inset from the left or turn into a containing block, so its box is observed rather than assumed to be the viewport.
13
+ *
14
+ * @param ref The rail element.
15
+ * @param track Whether to re-measure every frame as well. On while the panel is open, so a host moving the rail without
16
+ * resizing or scrolling it (a transform, a restyled ancestor) is still followed; off otherwise, since it costs a measurement per frame.
17
+ * @returns Its `top`, `left` and `height` in the viewport, or `undefined` while the rail is not laid out (below `lg`).
18
+ */
19
+ const useRailBounds = (ref, track) => {
20
+ const [bounds, setBounds] = React.useState();
21
+ const measure = React.useCallback(() => {
22
+ const rect = ref.current?.getBoundingClientRect();
23
+ // A rail hidden below `lg` measures 0×0; the panel is hidden there too, so the viewport default stands.
24
+ const next = rect && rect.height > 0 ? { top: Math.round(rect.top), left: Math.round(rect.left), height: Math.round(rect.height) } : undefined;
25
+ setBounds((current) => (isSame(current, next) ? current : next));
26
+ }, [ref]);
27
+ // Before paint, on mount and again as the panel opens, so a reveal never paints at a stale position and then jumps.
28
+ // biome-ignore lint/correctness/useExhaustiveDependencies: `track` is the trigger, not an input; the panel opening is what needs a fresh box
29
+ React.useLayoutEffect(measure, [track, measure]);
30
+ useResizeObserver.useResizeObserver({ ref, onResize: measure });
31
+ React.useEffect(() => {
32
+ const rail = ref.current;
33
+ if (!rail)
34
+ return;
35
+ // A viewport resize moves a rail measured against it, and a scrolling ancestor is what moves a rail inside a containing block.
36
+ const unsubscribeResize = viewport_utils.subscribeToViewportResize(measure);
37
+ const unsubscribeScroll = scroll_utils.subscribeToAncestorScroll(rail, measure);
38
+ return () => {
39
+ unsubscribeResize();
40
+ unsubscribeScroll();
41
+ };
42
+ }, [ref, measure]);
43
+ React.useEffect(() => (track ? viewport_utils.subscribeToAnimationFrames(measure) : undefined), [track, measure]);
44
+ return bounds;
45
+ };
46
+
47
+ exports.useRailBounds = useRailBounds;
48
+ //# sourceMappingURL=useRailBounds.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useRailBounds.cjs","sources":["../../../../../src/components/organisms/SidebarNavigation/hooks/useRailBounds.ts"],"sourcesContent":[null],"names":["useState","useCallback","useLayoutEffect","useResizeObserver","useEffect","subscribeToViewportResize","subscribeToAncestorScroll","subscribeToAnimationFrames"],"mappings":";;;;;;;AAeA,MAAM,MAAM,GAAG,CAAC,CAAyB,EAAE,CAAyB,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,MAAM,KAAK,CAAC,EAAE,MAAM;AAE5I;;;;;;;;;AASG;MACU,aAAa,GAAG,CAAC,GAAkC,EAAE,KAAc,KAA4B;IAC1G,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAGA,cAAQ,EAAc;AAElD,IAAA,MAAM,OAAO,GAAGC,iBAAW,CAAC,MAAK;QAC/B,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,EAAE,qBAAqB,EAAE;;QAEjD,MAAM,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,SAAS;QAC9I,SAAS,CAAC,CAAC,OAAO,MAAM,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC;AAClE,IAAA,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;;;IAITC,qBAAe,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC1CC,mCAAiB,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;IAC7CC,eAAS,CAAC,MAAK;AACb,QAAA,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO;AACxB,QAAA,IAAI,CAAC,IAAI;YAAE;;AAEX,QAAA,MAAM,iBAAiB,GAAGC,wCAAyB,CAAC,OAAO,CAAC;QAC5D,MAAM,iBAAiB,GAAGC,sCAAyB,CAAC,IAAI,EAAE,OAAO,CAAC;AAClE,QAAA,OAAO,MAAK;AACV,YAAA,iBAAiB,EAAE;AACnB,YAAA,iBAAiB,EAAE;AACrB,QAAA,CAAC;AACH,IAAA,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAClBF,eAAS,CAAC,OAAO,KAAK,GAAGG,yCAA0B,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAE5F,IAAA,OAAO,MAAM;AACf;;"}
@@ -0,0 +1,19 @@
1
+ import type { RefObject } from 'react';
2
+ /** The rail's box in the viewport, in whole pixels. */
3
+ export interface RailBounds {
4
+ top: number;
5
+ left: number;
6
+ height: number;
7
+ }
8
+ /**
9
+ * Measures the rail's box in the viewport so the portaled panel can sit flush with the rail's right edge and span
10
+ * exactly its height. The rail is `fixed inset-y-0 left-0` inside its own layer, which a host may push below a top
11
+ * strip, inset from the left or turn into a containing block, so its box is observed rather than assumed to be the viewport.
12
+ *
13
+ * @param ref The rail element.
14
+ * @param track Whether to re-measure every frame as well. On while the panel is open, so a host moving the rail without
15
+ * resizing or scrolling it (a transform, a restyled ancestor) is still followed; off otherwise, since it costs a measurement per frame.
16
+ * @returns Its `top`, `left` and `height` in the viewport, or `undefined` while the rail is not laid out (below `lg`).
17
+ */
18
+ export declare const useRailBounds: (ref: RefObject<HTMLElement | null>, track: boolean) => RailBounds | undefined;
19
+ //# sourceMappingURL=useRailBounds.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useRailBounds.d.ts","sourceRoot":"","sources":["../../../../../src/components/organisms/SidebarNavigation/hooks/useRailBounds.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvC,uDAAuD;AACvD,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAID;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa,GAAI,KAAK,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,EAAE,OAAO,OAAO,KAAG,UAAU,GAAG,SA4B/F,CAAC"}
@@ -0,0 +1,46 @@
1
+ import { useResizeObserver } from '@flipdish/ui-library/hooks/useResizeObserver';
2
+ import { useState, useCallback, useLayoutEffect, useEffect } from 'react';
3
+ import { subscribeToAncestorScroll } from '../../../../utilities/__internal__/scrollUtils/scroll.utils.js';
4
+ import { subscribeToViewportResize, subscribeToAnimationFrames } from '../../../../utilities/__internal__/viewportUtils/viewport.utils.js';
5
+
6
+ const isSame = (a, b) => a?.top === b?.top && a?.left === b?.left && a?.height === b?.height;
7
+ /**
8
+ * Measures the rail's box in the viewport so the portaled panel can sit flush with the rail's right edge and span
9
+ * exactly its height. The rail is `fixed inset-y-0 left-0` inside its own layer, which a host may push below a top
10
+ * strip, inset from the left or turn into a containing block, so its box is observed rather than assumed to be the viewport.
11
+ *
12
+ * @param ref The rail element.
13
+ * @param track Whether to re-measure every frame as well. On while the panel is open, so a host moving the rail without
14
+ * resizing or scrolling it (a transform, a restyled ancestor) is still followed; off otherwise, since it costs a measurement per frame.
15
+ * @returns Its `top`, `left` and `height` in the viewport, or `undefined` while the rail is not laid out (below `lg`).
16
+ */
17
+ const useRailBounds = (ref, track) => {
18
+ const [bounds, setBounds] = useState();
19
+ const measure = useCallback(() => {
20
+ const rect = ref.current?.getBoundingClientRect();
21
+ // A rail hidden below `lg` measures 0×0; the panel is hidden there too, so the viewport default stands.
22
+ const next = rect && rect.height > 0 ? { top: Math.round(rect.top), left: Math.round(rect.left), height: Math.round(rect.height) } : undefined;
23
+ setBounds((current) => (isSame(current, next) ? current : next));
24
+ }, [ref]);
25
+ // Before paint, on mount and again as the panel opens, so a reveal never paints at a stale position and then jumps.
26
+ // biome-ignore lint/correctness/useExhaustiveDependencies: `track` is the trigger, not an input; the panel opening is what needs a fresh box
27
+ useLayoutEffect(measure, [track, measure]);
28
+ useResizeObserver({ ref, onResize: measure });
29
+ useEffect(() => {
30
+ const rail = ref.current;
31
+ if (!rail)
32
+ return;
33
+ // A viewport resize moves a rail measured against it, and a scrolling ancestor is what moves a rail inside a containing block.
34
+ const unsubscribeResize = subscribeToViewportResize(measure);
35
+ const unsubscribeScroll = subscribeToAncestorScroll(rail, measure);
36
+ return () => {
37
+ unsubscribeResize();
38
+ unsubscribeScroll();
39
+ };
40
+ }, [ref, measure]);
41
+ useEffect(() => (track ? subscribeToAnimationFrames(measure) : undefined), [track, measure]);
42
+ return bounds;
43
+ };
44
+
45
+ export { useRailBounds };
46
+ //# sourceMappingURL=useRailBounds.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useRailBounds.js","sources":["../../../../../src/components/organisms/SidebarNavigation/hooks/useRailBounds.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAeA,MAAM,MAAM,GAAG,CAAC,CAAyB,EAAE,CAAyB,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,MAAM,KAAK,CAAC,EAAE,MAAM;AAE5I;;;;;;;;;AASG;MACU,aAAa,GAAG,CAAC,GAAkC,EAAE,KAAc,KAA4B;IAC1G,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,EAAc;AAElD,IAAA,MAAM,OAAO,GAAG,WAAW,CAAC,MAAK;QAC/B,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,EAAE,qBAAqB,EAAE;;QAEjD,MAAM,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,SAAS;QAC9I,SAAS,CAAC,CAAC,OAAO,MAAM,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC;AAClE,IAAA,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;;;IAIT,eAAe,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC1C,iBAAiB,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;IAC7C,SAAS,CAAC,MAAK;AACb,QAAA,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO;AACxB,QAAA,IAAI,CAAC,IAAI;YAAE;;AAEX,QAAA,MAAM,iBAAiB,GAAG,yBAAyB,CAAC,OAAO,CAAC;QAC5D,MAAM,iBAAiB,GAAG,yBAAyB,CAAC,IAAI,EAAE,OAAO,CAAC;AAClE,QAAA,OAAO,MAAK;AACV,YAAA,iBAAiB,EAAE;AACnB,YAAA,iBAAiB,EAAE;AACrB,QAAA,CAAC;AACH,IAAA,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAClB,SAAS,CAAC,OAAO,KAAK,GAAG,0BAA0B,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAE5F,IAAA,OAAO,MAAM;AACf;;"}
@@ -21,6 +21,7 @@ var NavList = require('./components/NavList.cjs');
21
21
  var NavSectionToggle = require('./components/NavSectionToggle.cjs');
22
22
  var useDualTierKeyboard = require('./hooks/useDualTierKeyboard.cjs');
23
23
  var useDualTierReveal = require('./hooks/useDualTierReveal.cjs');
24
+ var useRailBounds = require('./hooks/useRailBounds.cjs');
24
25
  var useSidebarCollapse = require('./hooks/useSidebarCollapse.cjs');
25
26
  var SidebarMenuButton = require('./components/SidebarMenuButton.cjs');
26
27
 
@@ -72,6 +73,9 @@ const SidebarNavigation = ({ activeUrl, items, footerItems = [], account, onNavi
72
73
  const panelRef = React.useRef(null);
73
74
  const { currentLabel, setCurrentLabel, currentItem, isSecondarySidebarVisible, setIsHovering, setIsAccountMenuOpen, handleContainerFocus, handleContainerBlur, handleContainerPointerMove, revealSection, revealFromKeyboard, } = useDualTierReveal.useDualTierReveal({ activeLabel: nav_utils.findActiveItem(sections, activeUrl)?.label, sections, panelRef });
74
75
  const panelId = React.useId();
76
+ // The panel is positioned from the rail's own box, not the viewport: a host may place the rail below a top strip or inset it.
77
+ const railRef = React.useRef(null);
78
+ const railBounds = useRailBounds.useRailBounds(railRef, isSecondarySidebarVisible);
75
79
  // Ties the built-in mobile toggle to the drawer it opens via `aria-controls`.
76
80
  const mobileMenuId = React.useId();
77
81
  const { handleTriggerKeyDown, handlePanelKeyDown } = useDualTierKeyboard.useDualTierKeyboard({
@@ -104,9 +108,7 @@ const SidebarNavigation = ({ activeUrl, items, footerItems = [], account, onNavi
104
108
  // The same item serves both rail widths: collapsed it shrinks to its icon and shows its label as a tooltip instead.
105
109
  return (jsxRuntime.jsx("li", { className: "py-px", onKeyDown: handleTriggerKeyDown(item.label, hasChildren), children: jsxRuntime.jsx(Tooltip.Tooltip, { isDisabled: !isCollapsed, title: item.label, placement: "right", children: jsxRuntime.jsx(NavItem.NavItemBase, { type: hasChildren ? 'disclosure' : 'link', current: isCurrentPage, selected: isSelected, href: hasChildren ? undefined : item.href, icon: item.icon, badge: item.badge, hasSubmenu: hasChildren, collapsed: isCollapsed, resizing: isResizing, onClick: selectSection, "data-testid": itemTestId, ...disclosure, children: item.label }) }) }, item.label));
106
110
  });
107
- const mainSidebar = (jsxRuntime.jsxs(react.motion.aside
108
- // initial={false} starts at the `animate` value; without it Motion reads the DOM and springs from there on mount.
109
- , {
111
+ const mainSidebar = (jsxRuntime.jsxs(react.motion.aside, { ref: railRef,
110
112
  // initial={false} starts at the `animate` value; without it Motion reads the DOM and springs from there on mount.
111
113
  initial: false, animate: { width: isCollapsed ? COLLAPSED_WIDTH : EXPANDED_WIDTH }, transition: resizeTransition, onAnimationComplete: onResizeComplete, className: cx.cx('flex h-full max-h-full flex-col justify-between overflow-x-hidden overflow-y-auto bg-secondary', !hideBorder && 'border-r border-secondary',
112
114
  // Every fade and slide in the rail is a CSS transition; the stored preference must land without any of them.
@@ -127,8 +129,11 @@ const SidebarNavigation = ({ activeUrl, items, footerItems = [], account, onNavi
127
129
  // Portaled one tier above the overlay root: inside the rail it painted under a page's SlideoutMenu or Popover, and at the
128
130
  // overlays' own z-50 it lost to an embedded app's anchor when a host keeps the rail on `body`; the token's fallback is that z-50.
129
131
  // React Aria places tooltips and menus at 100000, so they still win; a hover latched before another tree's modal opens shows it over the backdrop.
130
- const railWidth = isCollapsed ? COLLAPSED_WIDTH : EXPANDED_WIDTH;
131
- const secondarySidebar = currentItem && (jsxRuntime.jsx(react.AnimatePresence, { initial: false, children: isSecondarySidebarVisible && (jsxRuntime.jsx(reactAria.Overlay, { children: jsxRuntime.jsx(react.motion.div, { ref: panelRef, id: panelId, "data-testid": testIdUtils.joinTestId(rootTestId, 'panel'), onKeyDown: handlePanelKeyDown, role: "group", "aria-label": `${currentItem.label} pages`, initial: { width: 0, left: railWidth, borderColor: 'var(--color-border-secondary)' }, animate: { width: SECONDARY_SIDEBAR_WIDTH, left: railWidth, borderColor: 'var(--color-border-secondary)' }, exit: { width: 0, borderColor: 'rgba(0,0,0,0)', transition: { borderColor: { type: 'tween', delay: 0.05 } } }, transition: { ...useSidebarCollapse.SIDEBAR_SPRING, left: resizeTransition }, className: cx.cx('fixed inset-y-0 z-[calc(var(--z-index-overlay-root,50)+1)] hidden overflow-x-hidden overflow-y-auto bg-primary lg:block', !(hideBorder || hideRightBorder) && 'box-content border-r border-secondary'), children: jsxRuntime.jsxs("div", { style: { width: SECONDARY_SIDEBAR_WIDTH }, className: "flex h-full flex-col px-4 pt-6", children: [jsxRuntime.jsx("h3", { className: "px-2 text-sm font-semibold text-tertiary", children: currentItem.label }), jsxRuntime.jsx("ul", { className: "py-2", children: currentItem.items?.map((item) => (jsxRuntime.jsx("li", { className: "py-px", children: jsxRuntime.jsx(NavItem.NavItemBase, { type: "link", current: item.href === activeHref, href: item.href, icon: item.icon, badge: item.badge, onClick: () => reportNavigation(item.href), "data-testid": item['data-testid'] ?? testIdUtils.joinTestId(navItemTestId(currentItem), `sub-item-${item.id ?? testIdUtils.slugifyTestId(item.label)}`), children: item.label }) }, item.label))) }), currentItem.toggle && (jsxRuntime.jsx(NavSectionToggle.NavSectionToggleRow, { toggle: currentItem.toggle, testIdPrefix: navItemTestId(currentItem), className: "mt-auto mb-4" }))] }) }) }, "dual-tier-panel")) }));
132
+ // The rail's measured left edge plus its target width, so the spring still carries the panel through a collapse.
133
+ const panelLeft = (railBounds?.left ?? 0) + (isCollapsed ? COLLAPSED_WIDTH : EXPANDED_WIDTH);
134
+ const secondarySidebar = currentItem && (jsxRuntime.jsx(react.AnimatePresence, { initial: false, children: isSecondarySidebarVisible && (jsxRuntime.jsx(reactAria.Overlay, { children: jsxRuntime.jsx(react.motion.div, { ref: panelRef, id: panelId, "data-testid": testIdUtils.joinTestId(rootTestId, 'panel'), onKeyDown: handlePanelKeyDown, role: "group", "aria-label": `${currentItem.label} pages`, initial: { width: 0, left: panelLeft, borderColor: 'var(--color-border-secondary)' }, animate: { width: SECONDARY_SIDEBAR_WIDTH, left: panelLeft, borderColor: 'var(--color-border-secondary)' }, exit: { width: 0, borderColor: 'rgba(0,0,0,0)', transition: { borderColor: { type: 'tween', delay: 0.05 } } }, transition: { ...useSidebarCollapse.SIDEBAR_SPRING, left: resizeTransition },
135
+ // Inline `top` and `height` beat `inset-y-0`: with all three set, CSS drops `bottom`. Unset below `lg`, where the rail is hidden.
136
+ style: railBounds && { top: railBounds.top, height: railBounds.height }, className: cx.cx('fixed inset-y-0 z-[calc(var(--z-index-overlay-root,50)+1)] hidden overflow-x-hidden overflow-y-auto bg-primary lg:block', !(hideBorder || hideRightBorder) && 'box-content border-r border-secondary'), children: jsxRuntime.jsxs("div", { style: { width: SECONDARY_SIDEBAR_WIDTH }, className: "flex h-full flex-col px-4 pt-6", children: [jsxRuntime.jsx("h3", { className: "px-2 text-sm font-semibold text-tertiary", children: currentItem.label }), jsxRuntime.jsx("ul", { className: "py-2", children: currentItem.items?.map((item) => (jsxRuntime.jsx("li", { className: "py-px", children: jsxRuntime.jsx(NavItem.NavItemBase, { type: "link", current: item.href === activeHref, href: item.href, icon: item.icon, badge: item.badge, onClick: () => reportNavigation(item.href), "data-testid": item['data-testid'] ?? testIdUtils.joinTestId(navItemTestId(currentItem), `sub-item-${item.id ?? testIdUtils.slugifyTestId(item.label)}`), children: item.label }) }, item.label))) }), currentItem.toggle && (jsxRuntime.jsx(NavSectionToggle.NavSectionToggleRow, { toggle: currentItem.toggle, testIdPrefix: navItemTestId(currentItem), className: "mt-auto mb-4" }))] }) }) }, "dual-tier-panel")) }));
132
137
  return (jsxRuntime.jsxs(testIdUtils.TestIdProvider, { value: rootTestId, children: [jsxRuntime.jsxs("div", { className: "z-40 hidden lg:fixed lg:inset-y-0 lg:left-0 lg:flex", onPointerEnter: () => setIsHovering(true), onPointerMove: handleContainerPointerMove, onPointerLeave: () => setIsHovering(false), onFocus: handleContainerFocus, onBlur: handleContainerBlur, children: [mainSidebar, secondarySidebar] }), jsxRuntime.jsx(react.motion.div, { initial: false, animate: { paddingLeft: isCollapsed ? COLLAPSED_WIDTH : EXPANDED_WIDTH }, transition: resizeTransition, className: "invisible hidden lg:sticky lg:top-0 lg:bottom-0 lg:left-0 lg:block" }), showMobileHeader && (jsxRuntime.jsx(MobileHeader.MobileNavigationHeader, { isOpen: isMobileMenuOpen, onOpenChange: setMobileMenuOpen, controls: mobileMenuId, homeHref: homeHref, onHomePress: () => reportNavigation(homeHref), logoTestId: testIdUtils.joinTestId(rootTestId, 'mobile-logo'), "data-testid": testIdUtils.joinTestId(rootTestId, 'mobile-toggle') })), jsxRuntime.jsx(MobileHeader.MobileNavigationDrawer, { id: mobileMenuId, isOpen: isMobileMenuOpen, onOpenChange: setMobileMenuOpen, "data-testid": testIdUtils.joinTestId(rootTestId, 'mobile-close'), children: jsxRuntime.jsxs("aside", { className: "group flex h-full max-h-full w-full max-w-full flex-col justify-between overflow-y-auto bg-secondary pt-4", children: [jsxRuntime.jsxs("div", { className: "flex flex-col items-start gap-7 px-4", children: [jsxRuntime.jsx(LogoLink.LogoLink, { href: homeHref, size: "sm", onClick: () => handleMobileNavigate(homeHref), "data-testid": testIdUtils.joinTestId(rootTestId, 'drawer-logo') }), search && (jsxRuntime.jsx(SearchTrigger.SearchTrigger, { size: "md", placeholder: search.placeholder ?? 'Search', label: search.label ?? 'Search', onPress: closeMobileMenuThen(search.onPress), className: "w-full", "data-testid": search['data-testid'] ?? testIdUtils.joinTestId(rootTestId, 'search') }))] }), jsxRuntime.jsx("nav", { "aria-label": "Main", children: jsxRuntime.jsx(NavList.NavList, { activeUrl: activeUrl, items: items, onNavigate: handleMobileNavigate, testIdPrefix: rootTestId }) }), jsxRuntime.jsxs("div", { className: "mt-auto flex flex-col gap-3 p-4", children: [footerItems.length > 0 && (jsxRuntime.jsx("nav", { "aria-label": "Footer", children: jsxRuntime.jsx(NavList.NavList, { activeUrl: activeUrl, items: footerItems, onNavigate: handleMobileNavigate, testIdPrefix: rootTestId, className: "px-0 pt-0" }) })), account && (jsxRuntime.jsx(NavAccountCard.NavAccountCard, { account: account.account, menuItems: withMobileMenuClose(account.menuItems), bottomMenuItems: withMobileMenuClose(account.bottomMenuItems), "data-testid": account['data-testid'] }))] })] }) })] }));
133
138
  };
134
139
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../../src/components/organisms/SidebarNavigation/index.tsx"],"sourcesContent":[null],"names":["useResolvedTestId","safeHref","joinTestId","slugifyTestId","useSidebarCollapse","useState","useBreakpoints","useEffect","findActiveHref","useRef","useDualTierReveal","findActiveItem","useId","useDualTierKeyboard","_jsx","Tooltip","NavItemBase","_jsxs","motion","cx","LogoLink","ButtonUtility","ChevronRightDouble","ChevronLeftDouble","NavAccountCard","AnimatePresence","Overlay","SIDEBAR_SPRING","NavSectionToggleRow","TestIdProvider","MobileNavigationHeader","MobileNavigationDrawer","SearchTrigger","NavList"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../../src/components/organisms/SidebarNavigation/index.tsx"],"sourcesContent":[null],"names":["useResolvedTestId","safeHref","joinTestId","slugifyTestId","useSidebarCollapse","useState","useBreakpoints","useEffect","findActiveHref","useRef","useDualTierReveal","findActiveItem","useId","useRailBounds","useDualTierKeyboard","_jsx","Tooltip","NavItemBase","_jsxs","motion","cx","LogoLink","ButtonUtility","ChevronRightDouble","ChevronLeftDouble","NavAccountCard","AnimatePresence","Overlay","SIDEBAR_SPRING","NavSectionToggleRow","TestIdProvider","MobileNavigationHeader","MobileNavigationDrawer","SearchTrigger","NavList"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/SidebarNavigation/index.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAOhC,OAAO,EAAkB,KAAK,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAOlF,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAExE,OAAO,EAAE,cAAc,EAAE,KAAK,cAAc,EAAE,cAAc,EAAE,KAAK,sBAAsB,EAAE,KAAK,cAAc,EAAE,MAAM,6BAA6B,CAAC;AACpJ,OAAO,EAAE,WAAW,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,KAAK,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAChG,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7E,KAAK,cAAc,GAAG,WAAW,GAAG;IAAE,IAAI,EAAE,EAAE,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC;AAEzE,MAAM,WAAW,sBAAsB;IACrC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oFAAoF;IACpF,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,uCAAuC;IACvC,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,sHAAsH;IACtH,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,8GAA8G;IAC9G,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gEAAgE;IAChE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iDAAiD;IACjD,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD,0FAA0F;IAC1F,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,qEAAqE;IACrE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,oEAAoE;IACpE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,4FAA4F;IAC5F,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,yDAAyD;IACzD,sBAAsB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD;;;;OAIG;IACH,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAMD;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,GAAI,+PAkB/B,sBAAsB,gCAqVxB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/SidebarNavigation/index.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAOhC,OAAO,EAAkB,KAAK,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAQlF,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAExE,OAAO,EAAE,cAAc,EAAE,KAAK,cAAc,EAAE,cAAc,EAAE,KAAK,sBAAsB,EAAE,KAAK,cAAc,EAAE,MAAM,6BAA6B,CAAC;AACpJ,OAAO,EAAE,WAAW,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,KAAK,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAChG,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7E,KAAK,cAAc,GAAG,WAAW,GAAG;IAAE,IAAI,EAAE,EAAE,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC;AAEzE,MAAM,WAAW,sBAAsB;IACrC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oFAAoF;IACpF,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,uCAAuC;IACvC,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,sHAAsH;IACtH,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,8GAA8G;IAC9G,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gEAAgE;IAChE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iDAAiD;IACjD,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD,0FAA0F;IAC1F,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,qEAAqE;IACrE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,oEAAoE;IACpE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,4FAA4F;IAC5F,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,yDAAyD;IACzD,sBAAsB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD;;;;OAIG;IACH,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAMD;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,GAAI,+PAkB/B,sBAAsB,gCA4VxB,CAAC"}
@@ -20,6 +20,7 @@ import { NavList } from './components/NavList.js';
20
20
  import { NavSectionToggleRow } from './components/NavSectionToggle.js';
21
21
  import { useDualTierKeyboard } from './hooks/useDualTierKeyboard.js';
22
22
  import { useDualTierReveal } from './hooks/useDualTierReveal.js';
23
+ import { useRailBounds } from './hooks/useRailBounds.js';
23
24
  import { useSidebarCollapse, SIDEBAR_SPRING } from './hooks/useSidebarCollapse.js';
24
25
  export { SidebarMenuButton } from './components/SidebarMenuButton.js';
25
26
 
@@ -71,6 +72,9 @@ const SidebarNavigation = ({ activeUrl, items, footerItems = [], account, onNavi
71
72
  const panelRef = useRef(null);
72
73
  const { currentLabel, setCurrentLabel, currentItem, isSecondarySidebarVisible, setIsHovering, setIsAccountMenuOpen, handleContainerFocus, handleContainerBlur, handleContainerPointerMove, revealSection, revealFromKeyboard, } = useDualTierReveal({ activeLabel: findActiveItem(sections, activeUrl)?.label, sections, panelRef });
73
74
  const panelId = useId();
75
+ // The panel is positioned from the rail's own box, not the viewport: a host may place the rail below a top strip or inset it.
76
+ const railRef = useRef(null);
77
+ const railBounds = useRailBounds(railRef, isSecondarySidebarVisible);
74
78
  // Ties the built-in mobile toggle to the drawer it opens via `aria-controls`.
75
79
  const mobileMenuId = useId();
76
80
  const { handleTriggerKeyDown, handlePanelKeyDown } = useDualTierKeyboard({
@@ -103,9 +107,7 @@ const SidebarNavigation = ({ activeUrl, items, footerItems = [], account, onNavi
103
107
  // The same item serves both rail widths: collapsed it shrinks to its icon and shows its label as a tooltip instead.
104
108
  return (jsx("li", { className: "py-px", onKeyDown: handleTriggerKeyDown(item.label, hasChildren), children: jsx(Tooltip, { isDisabled: !isCollapsed, title: item.label, placement: "right", children: jsx(NavItemBase, { type: hasChildren ? 'disclosure' : 'link', current: isCurrentPage, selected: isSelected, href: hasChildren ? undefined : item.href, icon: item.icon, badge: item.badge, hasSubmenu: hasChildren, collapsed: isCollapsed, resizing: isResizing, onClick: selectSection, "data-testid": itemTestId, ...disclosure, children: item.label }) }) }, item.label));
105
109
  });
106
- const mainSidebar = (jsxs(motion.aside
107
- // initial={false} starts at the `animate` value; without it Motion reads the DOM and springs from there on mount.
108
- , {
110
+ const mainSidebar = (jsxs(motion.aside, { ref: railRef,
109
111
  // initial={false} starts at the `animate` value; without it Motion reads the DOM and springs from there on mount.
110
112
  initial: false, animate: { width: isCollapsed ? COLLAPSED_WIDTH : EXPANDED_WIDTH }, transition: resizeTransition, onAnimationComplete: onResizeComplete, className: cx('flex h-full max-h-full flex-col justify-between overflow-x-hidden overflow-y-auto bg-secondary', !hideBorder && 'border-r border-secondary',
111
113
  // Every fade and slide in the rail is a CSS transition; the stored preference must land without any of them.
@@ -126,8 +128,11 @@ const SidebarNavigation = ({ activeUrl, items, footerItems = [], account, onNavi
126
128
  // Portaled one tier above the overlay root: inside the rail it painted under a page's SlideoutMenu or Popover, and at the
127
129
  // overlays' own z-50 it lost to an embedded app's anchor when a host keeps the rail on `body`; the token's fallback is that z-50.
128
130
  // React Aria places tooltips and menus at 100000, so they still win; a hover latched before another tree's modal opens shows it over the backdrop.
129
- const railWidth = isCollapsed ? COLLAPSED_WIDTH : EXPANDED_WIDTH;
130
- const secondarySidebar = currentItem && (jsx(AnimatePresence, { initial: false, children: isSecondarySidebarVisible && (jsx(Overlay, { children: jsx(motion.div, { ref: panelRef, id: panelId, "data-testid": joinTestId(rootTestId, 'panel'), onKeyDown: handlePanelKeyDown, role: "group", "aria-label": `${currentItem.label} pages`, initial: { width: 0, left: railWidth, borderColor: 'var(--color-border-secondary)' }, animate: { width: SECONDARY_SIDEBAR_WIDTH, left: railWidth, borderColor: 'var(--color-border-secondary)' }, exit: { width: 0, borderColor: 'rgba(0,0,0,0)', transition: { borderColor: { type: 'tween', delay: 0.05 } } }, transition: { ...SIDEBAR_SPRING, left: resizeTransition }, className: cx('fixed inset-y-0 z-[calc(var(--z-index-overlay-root,50)+1)] hidden overflow-x-hidden overflow-y-auto bg-primary lg:block', !(hideBorder || hideRightBorder) && 'box-content border-r border-secondary'), children: jsxs("div", { style: { width: SECONDARY_SIDEBAR_WIDTH }, className: "flex h-full flex-col px-4 pt-6", children: [jsx("h3", { className: "px-2 text-sm font-semibold text-tertiary", children: currentItem.label }), jsx("ul", { className: "py-2", children: currentItem.items?.map((item) => (jsx("li", { className: "py-px", children: jsx(NavItemBase, { type: "link", current: item.href === activeHref, href: item.href, icon: item.icon, badge: item.badge, onClick: () => reportNavigation(item.href), "data-testid": item['data-testid'] ?? joinTestId(navItemTestId(currentItem), `sub-item-${item.id ?? slugifyTestId(item.label)}`), children: item.label }) }, item.label))) }), currentItem.toggle && (jsx(NavSectionToggleRow, { toggle: currentItem.toggle, testIdPrefix: navItemTestId(currentItem), className: "mt-auto mb-4" }))] }) }) }, "dual-tier-panel")) }));
131
+ // The rail's measured left edge plus its target width, so the spring still carries the panel through a collapse.
132
+ const panelLeft = (railBounds?.left ?? 0) + (isCollapsed ? COLLAPSED_WIDTH : EXPANDED_WIDTH);
133
+ const secondarySidebar = currentItem && (jsx(AnimatePresence, { initial: false, children: isSecondarySidebarVisible && (jsx(Overlay, { children: jsx(motion.div, { ref: panelRef, id: panelId, "data-testid": joinTestId(rootTestId, 'panel'), onKeyDown: handlePanelKeyDown, role: "group", "aria-label": `${currentItem.label} pages`, initial: { width: 0, left: panelLeft, borderColor: 'var(--color-border-secondary)' }, animate: { width: SECONDARY_SIDEBAR_WIDTH, left: panelLeft, borderColor: 'var(--color-border-secondary)' }, exit: { width: 0, borderColor: 'rgba(0,0,0,0)', transition: { borderColor: { type: 'tween', delay: 0.05 } } }, transition: { ...SIDEBAR_SPRING, left: resizeTransition },
134
+ // Inline `top` and `height` beat `inset-y-0`: with all three set, CSS drops `bottom`. Unset below `lg`, where the rail is hidden.
135
+ style: railBounds && { top: railBounds.top, height: railBounds.height }, className: cx('fixed inset-y-0 z-[calc(var(--z-index-overlay-root,50)+1)] hidden overflow-x-hidden overflow-y-auto bg-primary lg:block', !(hideBorder || hideRightBorder) && 'box-content border-r border-secondary'), children: jsxs("div", { style: { width: SECONDARY_SIDEBAR_WIDTH }, className: "flex h-full flex-col px-4 pt-6", children: [jsx("h3", { className: "px-2 text-sm font-semibold text-tertiary", children: currentItem.label }), jsx("ul", { className: "py-2", children: currentItem.items?.map((item) => (jsx("li", { className: "py-px", children: jsx(NavItemBase, { type: "link", current: item.href === activeHref, href: item.href, icon: item.icon, badge: item.badge, onClick: () => reportNavigation(item.href), "data-testid": item['data-testid'] ?? joinTestId(navItemTestId(currentItem), `sub-item-${item.id ?? slugifyTestId(item.label)}`), children: item.label }) }, item.label))) }), currentItem.toggle && (jsx(NavSectionToggleRow, { toggle: currentItem.toggle, testIdPrefix: navItemTestId(currentItem), className: "mt-auto mb-4" }))] }) }) }, "dual-tier-panel")) }));
131
136
  return (jsxs(TestIdProvider, { value: rootTestId, children: [jsxs("div", { className: "z-40 hidden lg:fixed lg:inset-y-0 lg:left-0 lg:flex", onPointerEnter: () => setIsHovering(true), onPointerMove: handleContainerPointerMove, onPointerLeave: () => setIsHovering(false), onFocus: handleContainerFocus, onBlur: handleContainerBlur, children: [mainSidebar, secondarySidebar] }), jsx(motion.div, { initial: false, animate: { paddingLeft: isCollapsed ? COLLAPSED_WIDTH : EXPANDED_WIDTH }, transition: resizeTransition, className: "invisible hidden lg:sticky lg:top-0 lg:bottom-0 lg:left-0 lg:block" }), showMobileHeader && (jsx(MobileNavigationHeader, { isOpen: isMobileMenuOpen, onOpenChange: setMobileMenuOpen, controls: mobileMenuId, homeHref: homeHref, onHomePress: () => reportNavigation(homeHref), logoTestId: joinTestId(rootTestId, 'mobile-logo'), "data-testid": joinTestId(rootTestId, 'mobile-toggle') })), jsx(MobileNavigationDrawer, { id: mobileMenuId, isOpen: isMobileMenuOpen, onOpenChange: setMobileMenuOpen, "data-testid": joinTestId(rootTestId, 'mobile-close'), children: jsxs("aside", { className: "group flex h-full max-h-full w-full max-w-full flex-col justify-between overflow-y-auto bg-secondary pt-4", children: [jsxs("div", { className: "flex flex-col items-start gap-7 px-4", children: [jsx(LogoLink, { href: homeHref, size: "sm", onClick: () => handleMobileNavigate(homeHref), "data-testid": joinTestId(rootTestId, 'drawer-logo') }), search && (jsx(SearchTrigger, { size: "md", placeholder: search.placeholder ?? 'Search', label: search.label ?? 'Search', onPress: closeMobileMenuThen(search.onPress), className: "w-full", "data-testid": search['data-testid'] ?? joinTestId(rootTestId, 'search') }))] }), jsx("nav", { "aria-label": "Main", children: jsx(NavList, { activeUrl: activeUrl, items: items, onNavigate: handleMobileNavigate, testIdPrefix: rootTestId }) }), jsxs("div", { className: "mt-auto flex flex-col gap-3 p-4", children: [footerItems.length > 0 && (jsx("nav", { "aria-label": "Footer", children: jsx(NavList, { activeUrl: activeUrl, items: footerItems, onNavigate: handleMobileNavigate, testIdPrefix: rootTestId, className: "px-0 pt-0" }) })), account && (jsx(NavAccountCard, { account: account.account, menuItems: withMobileMenuClose(account.menuItems), bottomMenuItems: withMobileMenuClose(account.bottomMenuItems), "data-testid": account['data-testid'] }))] })] }) })] }));
132
137
  };
133
138
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/organisms/SidebarNavigation/index.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/organisms/SidebarNavigation/index.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs"],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * Subscribes to the viewport resizing. Element sizes are better observed with `useResizeObserver`; this is for
5
+ * boxes that move with the viewport without resizing, such as a fixed element measured against it.
6
+ *
7
+ * @param onResize Called once per viewport resize.
8
+ * @returns Removes the subscription.
9
+ */
10
+ const subscribeToViewportResize = (onResize) => {
11
+ window.addEventListener('resize', onResize);
12
+ return () => window.removeEventListener('resize', onResize);
13
+ };
14
+ /**
15
+ * Calls back on every animation frame until unsubscribed. For a box that can move without any event reporting it, such
16
+ * as a host restyling an ancestor; keep the subscription short-lived, since it costs a measurement per frame.
17
+ *
18
+ * @param onFrame Called once per frame.
19
+ * @returns Cancels the pending frame and stops the loop.
20
+ */
21
+ const subscribeToAnimationFrames = (onFrame) => {
22
+ // Cancelling only the pending frame is not enough: an unsubscribe from inside `onFrame` lands while that frame runs.
23
+ let active = true;
24
+ let frame = window.requestAnimationFrame(function tick() {
25
+ onFrame();
26
+ if (active)
27
+ frame = window.requestAnimationFrame(tick);
28
+ });
29
+ return () => {
30
+ active = false;
31
+ window.cancelAnimationFrame(frame);
32
+ };
33
+ };
34
+
35
+ exports.subscribeToAnimationFrames = subscribeToAnimationFrames;
36
+ exports.subscribeToViewportResize = subscribeToViewportResize;
37
+ //# sourceMappingURL=viewport.utils.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viewport.utils.cjs","sources":["../../../../src/utilities/__internal__/viewportUtils/viewport.utils.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;;;;;;AAMG;AACI,MAAM,yBAAyB,GAAG,CAAC,QAAoB,KAAkB;AAC9E,IAAA,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC3C,OAAO,MAAM,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC;AAC7D;AAEA;;;;;;AAMG;AACI,MAAM,0BAA0B,GAAG,CAAC,OAAmB,KAAkB;;IAE9E,IAAI,MAAM,GAAG,IAAI;AACjB,IAAA,IAAI,KAAK,GAAG,MAAM,CAAC,qBAAqB,CAAC,SAAS,IAAI,GAAA;AACpD,QAAA,OAAO,EAAE;AACT,QAAA,IAAI,MAAM;AAAE,YAAA,KAAK,GAAG,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC;AACxD,IAAA,CAAC,CAAC;AACF,IAAA,OAAO,MAAK;QACV,MAAM,GAAG,KAAK;AACd,QAAA,MAAM,CAAC,oBAAoB,CAAC,KAAK,CAAC;AACpC,IAAA,CAAC;AACH;;;"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Subscribes to the viewport resizing. Element sizes are better observed with `useResizeObserver`; this is for
3
+ * boxes that move with the viewport without resizing, such as a fixed element measured against it.
4
+ *
5
+ * @param onResize Called once per viewport resize.
6
+ * @returns Removes the subscription.
7
+ */
8
+ export declare const subscribeToViewportResize: (onResize: () => void) => (() => void);
9
+ /**
10
+ * Calls back on every animation frame until unsubscribed. For a box that can move without any event reporting it, such
11
+ * as a host restyling an ancestor; keep the subscription short-lived, since it costs a measurement per frame.
12
+ *
13
+ * @param onFrame Called once per frame.
14
+ * @returns Cancels the pending frame and stops the loop.
15
+ */
16
+ export declare const subscribeToAnimationFrames: (onFrame: () => void) => (() => void);
17
+ //# sourceMappingURL=viewport.utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viewport.utils.d.ts","sourceRoot":"","sources":["../../../../src/utilities/__internal__/viewportUtils/viewport.utils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,GAAI,UAAU,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAG3E,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,GAAI,SAAS,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAW3E,CAAC"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Subscribes to the viewport resizing. Element sizes are better observed with `useResizeObserver`; this is for
3
+ * boxes that move with the viewport without resizing, such as a fixed element measured against it.
4
+ *
5
+ * @param onResize Called once per viewport resize.
6
+ * @returns Removes the subscription.
7
+ */
8
+ const subscribeToViewportResize = (onResize) => {
9
+ window.addEventListener('resize', onResize);
10
+ return () => window.removeEventListener('resize', onResize);
11
+ };
12
+ /**
13
+ * Calls back on every animation frame until unsubscribed. For a box that can move without any event reporting it, such
14
+ * as a host restyling an ancestor; keep the subscription short-lived, since it costs a measurement per frame.
15
+ *
16
+ * @param onFrame Called once per frame.
17
+ * @returns Cancels the pending frame and stops the loop.
18
+ */
19
+ const subscribeToAnimationFrames = (onFrame) => {
20
+ // Cancelling only the pending frame is not enough: an unsubscribe from inside `onFrame` lands while that frame runs.
21
+ let active = true;
22
+ let frame = window.requestAnimationFrame(function tick() {
23
+ onFrame();
24
+ if (active)
25
+ frame = window.requestAnimationFrame(tick);
26
+ });
27
+ return () => {
28
+ active = false;
29
+ window.cancelAnimationFrame(frame);
30
+ };
31
+ };
32
+
33
+ export { subscribeToAnimationFrames, subscribeToViewportResize };
34
+ //# sourceMappingURL=viewport.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viewport.utils.js","sources":["../../../../src/utilities/__internal__/viewportUtils/viewport.utils.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA;;;;;;AAMG;AACI,MAAM,yBAAyB,GAAG,CAAC,QAAoB,KAAkB;AAC9E,IAAA,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC3C,OAAO,MAAM,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC;AAC7D;AAEA;;;;;;AAMG;AACI,MAAM,0BAA0B,GAAG,CAAC,OAAmB,KAAkB;;IAE9E,IAAI,MAAM,GAAG,IAAI;AACjB,IAAA,IAAI,KAAK,GAAG,MAAM,CAAC,qBAAqB,CAAC,SAAS,IAAI,GAAA;AACpD,QAAA,OAAO,EAAE;AACT,QAAA,IAAI,MAAM;AAAE,YAAA,KAAK,GAAG,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC;AACxD,IAAA,CAAC,CAAC;AACF,IAAA,OAAO,MAAK;QACV,MAAM,GAAG,KAAK;AACd,QAAA,MAAM,CAAC,oBAAoB,CAAC,KAAK,CAAC;AACpC,IAAA,CAAC;AACH;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flipdish/ui-library",
3
- "version": "0.43.1",
3
+ "version": "0.43.2",
4
4
  "description": "Flipdish Design System — atomic-design component library (Tailwind v4 + UntitledUI + React Aria).",
5
5
  "type": "module",
6
6
  "imports": {
@@ -284,6 +284,7 @@
284
284
  "build:web": "rollup -c && tsc -p tsconfig.build.json",
285
285
  "build:native": "rollup -c rollup.native.config.js && tsc -p tsconfig.build.native.json && node scripts/finalise-native-types.mjs && node scripts/emit-native-stubs.mjs",
286
286
  "lint:imports": "node scripts/check-deep-imports.mjs",
287
+ "lint:utilities": "node scripts/check-utilities.mjs --from-styles",
287
288
  "typecheck": "tsc --noEmit",
288
289
  "test": "vitest run --project unit",
289
290
  "test:watch": "vitest --project unit",