@homebound/beam 3.79.0 → 3.81.0

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/dist/index.js CHANGED
@@ -23,6 +23,8 @@ import {
23
23
  // src/Css.ts
24
24
  import { __invertTrussMediaQuery, trussProps, useRuntimeStyle as _useRuntimeStyle } from "@homebound/truss/runtime";
25
25
  var Tokens = /* @__PURE__ */ ((Tokens4) => {
26
+ Tokens4["AiFieldBg"] = "--b-ai-field-bg";
27
+ Tokens4["AiFieldFg"] = "--b-ai-field-fg";
26
28
  Tokens4["ButtonCautionDisabledBg"] = "--b-button-caution-disabled-bg";
27
29
  Tokens4["ButtonCautionDisabledFg"] = "--b-button-caution-disabled-fg";
28
30
  Tokens4["ButtonDangerDisabledBg"] = "--b-button-danger-disabled-bg";
@@ -76,8 +78,8 @@ var Tokens = /* @__PURE__ */ ((Tokens4) => {
76
78
  Tokens4["NeutralSurfacePressed"] = "--b-neutral-surface-pressed";
77
79
  Tokens4["OnPrimary"] = "--b-on-primary";
78
80
  Tokens4["OnSurface"] = "--b-on-surface";
79
- Tokens4["OnSurfaceMuted"] = "--b-on-surface-muted";
80
81
  Tokens4["OnSurfaceDisabled"] = "--b-on-surface-disabled";
82
+ Tokens4["OnSurfaceMuted"] = "--b-on-surface-muted";
81
83
  Tokens4["OnSurfaceRaisedHover"] = "--b-on-surface-raised-hover";
82
84
  Tokens4["OnSurfaceRaisedPressed"] = "--b-on-surface-raised-pressed";
83
85
  Tokens4["Primary"] = "--b-primary";
@@ -87,11 +89,11 @@ var Tokens = /* @__PURE__ */ ((Tokens4) => {
87
89
  Tokens4["SelectionFill"] = "--b-selection-fill";
88
90
  Tokens4["SelectionIndicator"] = "--b-selection-indicator";
89
91
  Tokens4["Surface"] = "--b-surface";
92
+ Tokens4["SurfaceDisabled"] = "--b-surface-disabled";
90
93
  Tokens4["SurfaceHover"] = "--b-surface-hover";
91
94
  Tokens4["SurfaceRaised"] = "--b-surface-raised";
92
95
  Tokens4["SurfaceRaisedHover"] = "--b-surface-raised-hover";
93
96
  Tokens4["SurfaceRaisedPressed"] = "--b-surface-raised-pressed";
94
- Tokens4["SurfaceDisabled"] = "--b-surface-disabled";
95
97
  Tokens4["SurfaceSeparator"] = "--b-surface-separator";
96
98
  Tokens4["SurfaceSubtle"] = "--b-surface-subtle";
97
99
  Tokens4["TextDisabled"] = "--b-text-disabled";
@@ -143,6 +145,10 @@ var CssBuilder = class _CssBuilder {
143
145
  get bcTransparent() {
144
146
  return this.add("borderColor", "rgba(0,0,0,0)");
145
147
  }
148
+ /** Sets `borderColor: "rgba(0, 0, 0, 1)"`. */
149
+ get bcBlack() {
150
+ return this.add("borderColor", "rgba(0, 0, 0, 1)");
151
+ }
146
152
  /** Sets `borderColor: "rgba(255, 253, 253, 1)"`. */
147
153
  get bcGray50() {
148
154
  return this.add("borderColor", "rgba(255, 253, 253, 1)");
@@ -1803,6 +1809,10 @@ var CssBuilder = class _CssBuilder {
1803
1809
  get transparent() {
1804
1810
  return this.add("color", "rgba(0,0,0,0)");
1805
1811
  }
1812
+ /** Sets `color: "rgba(0, 0, 0, 1)"`. */
1813
+ get black() {
1814
+ return this.add("color", "rgba(0, 0, 0, 1)");
1815
+ }
1806
1816
  /** Sets `color: "rgba(255, 253, 253, 1)"`. */
1807
1817
  get gray50() {
1808
1818
  return this.add("color", "rgba(255, 253, 253, 1)");
@@ -2095,6 +2105,10 @@ var CssBuilder = class _CssBuilder {
2095
2105
  get bgTransparent() {
2096
2106
  return this.add("backgroundColor", "rgba(0,0,0,0)");
2097
2107
  }
2108
+ /** Sets `backgroundColor: "rgba(0, 0, 0, 1)"`. */
2109
+ get bgBlack() {
2110
+ return this.add("backgroundColor", "rgba(0, 0, 0, 1)");
2111
+ }
2098
2112
  /** Sets `backgroundColor: "rgba(255, 253, 253, 1)"`. */
2099
2113
  get bgGray50() {
2100
2114
  return this.add("backgroundColor", "rgba(255, 253, 253, 1)");
@@ -2387,6 +2401,10 @@ var CssBuilder = class _CssBuilder {
2387
2401
  get fTransparent() {
2388
2402
  return this.add("fill", "rgba(0,0,0,0)");
2389
2403
  }
2404
+ /** Sets `fill: "rgba(0, 0, 0, 1)"`. */
2405
+ get fBlack() {
2406
+ return this.add("fill", "rgba(0, 0, 0, 1)");
2407
+ }
2390
2408
  /** Sets `fill: "rgba(255, 253, 253, 1)"`. */
2391
2409
  get fGray50() {
2392
2410
  return this.add("fill", "rgba(255, 253, 253, 1)");
@@ -3841,6 +3859,28 @@ var CssBuilder = class _CssBuilder {
3841
3859
  z(value) {
3842
3860
  return this.add("zIndex", value);
3843
3861
  }
3862
+ // ai
3863
+ /** Sets `backgroundImage: "radial-gradient(40% 1000% at 35.83% 62.18%, rgba(239, 246, 255, 1) 0%, rgba(237, 233, 254, 1) 100%)"`. */
3864
+ get aiBackground() {
3865
+ return this.add(
3866
+ "backgroundImage",
3867
+ "radial-gradient(40% 1000% at 35.83% 62.18%, rgba(239, 246, 255, 1) 0%, rgba(237, 233, 254, 1) 100%)"
3868
+ );
3869
+ }
3870
+ /** Sets `backgroundImage: "linear-gradient(270deg, rgba(29, 78, 216, 1) 2.97%, rgba(109, 40, 217, 1) 87.08%)"`. */
3871
+ get aiBoldBg() {
3872
+ return this.add(
3873
+ "backgroundImage",
3874
+ "linear-gradient(270deg, rgba(29, 78, 216, 1) 2.97%, rgba(109, 40, 217, 1) 87.08%)"
3875
+ );
3876
+ }
3877
+ /** Sets `color: "rgba(109, 40, 217, 1)"; backgroundImage: "linear-gradient(270deg, rgba(29, 78, 216, 1) 2.97%, rgba(109, 40, 217, 1) 87.08%)"; backgroundClip: "text"; WebkitBackgroundClip: "text"; WebkitTextFillColor: "transparent"`. */
3878
+ get aiBoldText() {
3879
+ return this.add("color", "rgba(109, 40, 217, 1)").add(
3880
+ "backgroundImage",
3881
+ "linear-gradient(270deg, rgba(29, 78, 216, 1) 2.97%, rgba(109, 40, 217, 1) 87.08%)"
3882
+ ).add("backgroundClip", "text").add("WebkitBackgroundClip", "text").add("WebkitTextFillColor", "transparent");
3883
+ }
3844
3884
  // fontFamily
3845
3885
  /** Sets `fontFamily: "'Inter', sans-serif"`. */
3846
3886
  get sansSerif() {
@@ -4121,6 +4161,7 @@ function omitUndefinedValues(value) {
4121
4161
  var Palette = /* @__PURE__ */ ((Palette2) => {
4122
4162
  Palette2["White"] = "rgba(255, 255, 255, 1)";
4123
4163
  Palette2["Transparent"] = "rgba(0,0,0,0)";
4164
+ Palette2["Black"] = "rgba(0, 0, 0, 1)";
4124
4165
  Palette2["Gray50"] = "rgba(255, 253, 253, 1)";
4125
4166
  Palette2["Gray100"] = "rgba(247, 245, 245, 1)";
4126
4167
  Palette2["Gray200"] = "rgba(236, 235, 235, 1)";
@@ -10321,6 +10362,37 @@ function getButtonStyles(variant, size) {
10321
10362
  };
10322
10363
  }
10323
10364
  var variantStyles2 = {
10365
+ // Design applies their "AI Bold" ramp to the existing primary button. They haven't specified
10366
+ // hover/pressed/disabled, so those ramps are extrapolated from it rather than design-sourced.
10367
+ ai: {
10368
+ baseStyles: {
10369
+ backgroundImage: "aiBoldBg",
10370
+ color: ["color_var", {
10371
+ "--color": "var(--b-on-primary)"
10372
+ }]
10373
+ },
10374
+ hoverStyles: {
10375
+ backgroundImage: ["backgroundImage_var", {
10376
+ "--backgroundImage": maybeCssVar14(`linear-gradient(270deg, ${"rgba(30, 64, 175, 1)" /* Blue800 */}, ${"rgba(91, 33, 182, 1)" /* Purple800 */})`)
10377
+ }]
10378
+ },
10379
+ pressedStyles: {
10380
+ backgroundImage: ["backgroundImage_var", {
10381
+ "--backgroundImage": maybeCssVar14(`linear-gradient(270deg, ${"rgba(30, 58, 138, 1)" /* Blue900 */}, ${"rgba(76, 29, 149, 1)" /* Purple900 */})`)
10382
+ }]
10383
+ },
10384
+ disabledStyles: {
10385
+ backgroundImage: ["backgroundImage_var", {
10386
+ "--backgroundImage": maybeCssVar14(`linear-gradient(270deg, ${"rgba(191, 219, 254, 1)" /* Blue200 */}, ${"rgba(221, 214, 254, 1)" /* Purple200 */})`)
10387
+ }],
10388
+ color: ["color_var", {
10389
+ "--color": "var(--b-button-primary-disabled-fg)"
10390
+ }]
10391
+ },
10392
+ focusStyles: {
10393
+ boxShadow: "bshFocus"
10394
+ }
10395
+ },
10324
10396
  primary: {
10325
10397
  baseStyles: {
10326
10398
  backgroundColor: ["bgColor_var", {
@@ -24763,40 +24835,82 @@ function AppNavItems(props) {
24763
24835
 
24764
24836
  // src/components/Navbar/NavbarMobileMenu.tsx
24765
24837
  import { AnimatePresence as AnimatePresence6, motion as motion6 } from "framer-motion";
24766
- import { useEffect as useEffect35, useState as useState53 } from "react";
24838
+ import { useEffect as useEffect35, useState as useState54 } from "react";
24767
24839
  import { FocusScope as FocusScope5, usePreventScroll as usePreventScroll3 } from "react-aria";
24768
24840
  import { createPortal as createPortal7 } from "react-dom";
24769
24841
  import { useLocation } from "react-router-dom";
24842
+
24843
+ // src/layouts/NavbarLayout/MobileSubNavContext.tsx
24844
+ import { createContext as createContext14, useContext as useContext26, useLayoutEffect as useLayoutEffect9, useMemo as useMemo52, useState as useState53 } from "react";
24845
+ import { jsx as jsx199 } from "react/jsx-runtime";
24846
+ var MobileSubNavContext = createContext14(void 0);
24847
+ function MobileSubNavProvider(props) {
24848
+ const [mobileSubNav, setMobileSubNav] = useState53(null);
24849
+ const value = useMemo52(() => ({ mobileSubNav, setMobileSubNav }), [mobileSubNav]);
24850
+ return /* @__PURE__ */ jsx199(MobileSubNavContext.Provider, { value, children: props.children });
24851
+ }
24852
+ function useMobileSubNav() {
24853
+ return useContext26(MobileSubNavContext)?.mobileSubNav ?? null;
24854
+ }
24855
+ function useRegisterMobileSubNav(content) {
24856
+ const ctx = useContext26(MobileSubNavContext);
24857
+ const setMobileSubNav = ctx?.setMobileSubNav;
24858
+ const enabled = !useBreakpoint().mdAndUp;
24859
+ const { top, items, footer } = content;
24860
+ useLayoutEffect9(() => {
24861
+ if (!setMobileSubNav || !enabled) return;
24862
+ setMobileSubNav({ top, items, footer });
24863
+ }, [setMobileSubNav, enabled, top, items, footer]);
24864
+ useLayoutEffect9(() => {
24865
+ if (!setMobileSubNav || !enabled) return;
24866
+ return () => setMobileSubNav(null);
24867
+ }, [setMobileSubNav, enabled]);
24868
+ return ctx !== void 0 && enabled;
24869
+ }
24870
+
24871
+ // src/components/Navbar/NavbarMobileMenu.tsx
24770
24872
  import { trussProps as trussProps111, mergeProps as mergeProps31, maybeCssVar as maybeCssVar54 } from "@homebound/truss/runtime";
24771
- import { Fragment as Fragment44, jsx as jsx199, jsxs as jsxs98 } from "react/jsx-runtime";
24873
+ import { Fragment as Fragment44, jsx as jsx200, jsxs as jsxs98 } from "react/jsx-runtime";
24772
24874
  function NavbarMobileMenu(props) {
24773
24875
  const {
24774
24876
  items
24775
24877
  } = props;
24776
24878
  const tid = useTestIds(props, "navbar");
24777
- const [isOpen, setIsOpen] = useState53(false);
24879
+ const [isOpen, setIsOpen] = useState54(false);
24880
+ const [level, setLevel] = useState54("sub");
24778
24881
  const {
24779
24882
  pathname,
24780
24883
  search
24781
24884
  } = useLocation();
24885
+ const mobileSubNav = useMobileSubNav();
24782
24886
  usePreventScroll3({
24783
24887
  isDisabled: !isOpen
24784
24888
  });
24889
+ const close = () => setIsOpen(false);
24785
24890
  useEffect35(() => {
24786
- setIsOpen(false);
24891
+ close();
24787
24892
  }, [pathname, search]);
24788
- const close = () => setIsOpen(false);
24789
24893
  return /* @__PURE__ */ jsxs98(Fragment44, { children: [
24790
- /* @__PURE__ */ jsx199(IconButton, { icon: isOpen ? "menuClose" : "menu", color: "--b-on-surface-muted" /* OnSurfaceMuted */, label: isOpen ? "Close navigation" : "Open navigation", onClick: () => setIsOpen((open) => !open), ...tid.mobileMenu }),
24894
+ /* @__PURE__ */ jsx200(IconButton, { icon: isOpen ? "menuClose" : "menu", color: "--b-on-surface-muted" /* OnSurfaceMuted */, label: isOpen ? "Close navigation" : "Open navigation", onClick: () => {
24895
+ if (isOpen) {
24896
+ close();
24897
+ return;
24898
+ }
24899
+ setLevel("sub");
24900
+ setIsOpen(true);
24901
+ }, ...tid.mobileMenu }),
24791
24902
  createPortal7(
24792
24903
  /* AnimatePresence keeps the drawer mounted through its slide/fade-out before unmounting.*/
24793
- /* @__PURE__ */ jsx199(AnimatePresence6, { children: isOpen && /* @__PURE__ */ jsx199(NavbarMobileDrawer, { items, onClose: close, tid }) }),
24904
+ /* @__PURE__ */ jsx200(AnimatePresence6, { children: isOpen && /* @__PURE__ */ jsx200(NavbarMobileDrawer, { items, mobileSubNav, level, onLevelChange: setLevel, onClose: close, tid }) }),
24794
24905
  document.body
24795
24906
  )
24796
24907
  ] });
24797
24908
  }
24798
24909
  function NavbarMobileDrawer({
24799
24910
  items,
24911
+ mobileSubNav,
24912
+ level,
24913
+ onLevelChange,
24800
24914
  onClose,
24801
24915
  tid
24802
24916
  }) {
@@ -24804,8 +24918,9 @@ function NavbarMobileDrawer({
24804
24918
  const overlayTopStyle = {
24805
24919
  top: bannerHeightPx
24806
24920
  };
24921
+ const showSubLevel = mobileSubNav != null && level === "sub";
24807
24922
  return /* @__PURE__ */ jsxs98(Fragment44, { children: [
24808
- /* @__PURE__ */ jsx199(motion6.div, { ...mergeProps31(void 0, overlayTopStyle, {
24923
+ /* @__PURE__ */ jsx200(motion6.div, { ...mergeProps31(void 0, overlayTopStyle, {
24809
24924
  position: "fixed",
24810
24925
  right: "right0",
24811
24926
  bottom: "bottom0",
@@ -24826,7 +24941,7 @@ function NavbarMobileDrawer({
24826
24941
  ease: "linear",
24827
24942
  duration: 0.2
24828
24943
  }, onClick: onClose, ...tid.mobileMenuScrim }, "navbarMobileMenuScrim"),
24829
- /* @__PURE__ */ jsx199(FocusScope5, { autoFocus: true, contain: true, restoreFocus: true, children: /* @__PURE__ */ jsxs98(motion6.aside, { role: "dialog", "aria-modal": "true", "aria-label": "Navigation", ...mergeProps31(void 0, overlayTopStyle, {
24944
+ /* @__PURE__ */ jsx200(FocusScope5, { autoFocus: true, contain: true, restoreFocus: true, children: /* @__PURE__ */ jsxs98(motion6.aside, { role: "dialog", "aria-modal": "true", "aria-label": "Navigation", ...mergeProps31(void 0, overlayTopStyle, {
24830
24945
  position: "fixed",
24831
24946
  bottom: "bottom0",
24832
24947
  left: "left0",
@@ -24851,11 +24966,11 @@ function NavbarMobileDrawer({
24851
24966
  ease: "linear",
24852
24967
  duration: 0.2
24853
24968
  }, onClick: (e) => e.stopPropagation(), ...tid.mobileMenuDrawer, children: [
24854
- /* @__PURE__ */ jsx199("div", { ...trussProps111({
24969
+ /* @__PURE__ */ jsxs98("div", { ...trussProps111({
24855
24970
  ...{
24856
24971
  display: "df",
24857
24972
  alignItems: "aic",
24858
- justifyContent: "jcfe",
24973
+ justifyContent: "jcsb",
24859
24974
  paddingTop: "pt_12px",
24860
24975
  paddingBottom: "pb_12px",
24861
24976
  flexShrink: "fs0",
@@ -24866,38 +24981,63 @@ function NavbarMobileDrawer({
24866
24981
  }]
24867
24982
  },
24868
24983
  ...pageContentPaddingX
24869
- }), children: /* @__PURE__ */ jsx199(IconButton, { icon: "x", color: "--b-on-surface-muted" /* OnSurfaceMuted */, label: "Close navigation", onClick: onClose, ...tid.mobileMenuClose }) }),
24870
- /* @__PURE__ */ jsx199(
24871
- "nav",
24984
+ }), children: [
24985
+ /* @__PURE__ */ jsx200("div", { className: "mw0", children: showSubLevel && /* @__PURE__ */ jsx200(Button, { label: "Main Menu", icon: "chevronLeft", variant: "quaternary", size: "sm", onClick: () => onLevelChange("global"), ...tid.mobileMenuMainMenu }) }),
24986
+ /* @__PURE__ */ jsx200(IconButton, { icon: "x", color: "--b-on-surface-muted" /* OnSurfaceMuted */, label: "Close navigation", onClick: onClose, ...tid.mobileMenuClose })
24987
+ ] }),
24988
+ /* @__PURE__ */ jsx200("div", { className: "fg1 mh0 oh relative", children: /* @__PURE__ */ jsx200(AnimatePresence6, { initial: false, children: /* @__PURE__ */ jsxs98(
24989
+ motion6.nav,
24872
24990
  {
24873
24991
  ...trussProps111({
24874
24992
  ...{
24875
- flexGrow: "fg1",
24993
+ position: "absolute",
24994
+ top: "top0",
24995
+ bottom: "bottom0",
24996
+ left: "left0",
24997
+ right: "right0",
24876
24998
  overflowY: "oya",
24877
- paddingBottom: "pb3",
24878
- paddingTop: "pt2",
24879
24999
  display: "df",
24880
25000
  flexDirection: "fdc",
24881
- gap: "gap_4px"
25001
+ gap: "gap_4px",
25002
+ paddingTop: "pt2",
25003
+ paddingBottom: "pb3"
24882
25004
  },
24883
25005
  ...pageContentPaddingX
24884
25006
  }),
25007
+ initial: {
25008
+ x: "-100%"
25009
+ },
25010
+ animate: {
25011
+ x: 0
25012
+ },
25013
+ exit: {
25014
+ x: "100%"
25015
+ },
25016
+ transition: {
25017
+ ease: "linear",
25018
+ duration: 0.2
25019
+ },
24885
25020
  onClickCapture: (e) => {
24886
25021
  if (e.target.closest("a")) {
24887
25022
  onClose();
24888
25023
  }
24889
25024
  },
24890
25025
  ...tid.mobileMenuPanel,
24891
- children: /* @__PURE__ */ jsx199(AppNavItems, { items, panelCollapsed: false, ...tid })
24892
- }
24893
- )
25026
+ children: [
25027
+ showSubLevel && mobileSubNav?.top,
25028
+ /* @__PURE__ */ jsx200(AppNavItems, { items: showSubLevel && mobileSubNav ? mobileSubNav.items : items, panelCollapsed: false, ...tid }),
25029
+ showSubLevel && mobileSubNav?.footer
25030
+ ]
25031
+ },
25032
+ showSubLevel ? "sub" : "global"
25033
+ ) }) })
24894
25034
  ] }, "navbarMobileMenuDrawer") })
24895
25035
  ] });
24896
25036
  }
24897
25037
 
24898
25038
  // src/components/Navbar/Navbar.tsx
24899
25039
  import { trussProps as trussProps112 } from "@homebound/truss/runtime";
24900
- import { jsx as jsx200, jsxs as jsxs99 } from "react/jsx-runtime";
25040
+ import { jsx as jsx201, jsxs as jsxs99 } from "react/jsx-runtime";
24901
25041
  function Navbar(props) {
24902
25042
  const {
24903
25043
  brand,
@@ -24916,7 +25056,7 @@ function Navbar(props) {
24916
25056
  overflows
24917
25057
  } = useContentOverflow(!sm);
24918
25058
  const showMobile = sm || overflows;
24919
- return /* @__PURE__ */ jsx200(ContrastScope, { children: /* @__PURE__ */ jsxs99("nav", { ...trussProps112({
25059
+ return /* @__PURE__ */ jsx201(ContrastScope, { children: /* @__PURE__ */ jsxs99("nav", { ...trussProps112({
24920
25060
  ...{
24921
25061
  backgroundColor: ["bgColor_var", {
24922
25062
  "--backgroundColor": "var(--b-surface-raised)"
@@ -24934,8 +25074,8 @@ function Navbar(props) {
24934
25074
  }), ...tid, children: [
24935
25075
  /* @__PURE__ */ jsxs99("div", { className: "df aic gap3 fg1 mw0", children: [
24936
25076
  /* @__PURE__ */ jsxs99("div", { className: "df aic fs0 gap2", children: [
24937
- showMobile && /* @__PURE__ */ jsx200(NavbarMobileMenu, { items, ...tid }),
24938
- /* @__PURE__ */ jsx200("div", { ...trussProps112({
25077
+ showMobile && /* @__PURE__ */ jsx201(NavbarMobileMenu, { items, ...tid }),
25078
+ /* @__PURE__ */ jsx201("div", { ...trussProps112({
24939
25079
  flexShrink: "fs0",
24940
25080
  ...hideBrandOnMobile && showMobile ? {
24941
25081
  display: "dn"
@@ -24944,7 +25084,7 @@ function Navbar(props) {
24944
25084
  ] }),
24945
25085
  !sm && // Stays mounted while overflowing (hidden) so the items remain measurable and the bar
24946
25086
  // can expand again as space frees up.
24947
- /* @__PURE__ */ jsx200("div", { ref: containerRef, ...trussProps112({
25087
+ /* @__PURE__ */ jsx201("div", { ref: containerRef, ...trussProps112({
24948
25088
  display: "df",
24949
25089
  alignItems: "aic",
24950
25090
  flexGrow: "fg1",
@@ -24953,11 +25093,11 @@ function Navbar(props) {
24953
25093
  ...overflows ? {
24954
25094
  visibility: "visibility_hidden"
24955
25095
  } : {}
24956
- }), ...tid.items, children: /* @__PURE__ */ jsx200("div", { ref: contentRef, className: "df aic gap2 width_max_content", children: /* @__PURE__ */ jsx200(AppNavItems, { variant: "global", items, ...tid }) }) })
25096
+ }), ...tid.items, children: /* @__PURE__ */ jsx201("div", { ref: contentRef, className: "df aic gap2 width_max_content", children: /* @__PURE__ */ jsx201(AppNavItems, { variant: "global", items, ...tid }) }) })
24957
25097
  ] }),
24958
25098
  /* @__PURE__ */ jsxs99("div", { className: "df aic gap1", children: [
24959
- rightSlot && /* @__PURE__ */ jsx200("div", { className: "df aic gap1", ...tid.rightSlot, children: rightSlot }),
24960
- user && /* @__PURE__ */ jsx200(NavbarUserMenu, { user, ...tid.userMenu })
25099
+ rightSlot && /* @__PURE__ */ jsx201("div", { className: "df aic gap1", ...tid.rightSlot, children: rightSlot }),
25100
+ user && /* @__PURE__ */ jsx201(NavbarUserMenu, { user, ...tid.userMenu })
24961
25101
  ] })
24962
25102
  ] }) });
24963
25103
  }
@@ -24965,7 +25105,7 @@ function NavbarUserMenu({
24965
25105
  user,
24966
25106
  ...tid
24967
25107
  }) {
24968
- return /* @__PURE__ */ jsx200("div", { className: "df aic fs0 ml1", children: /* @__PURE__ */ jsx200(ButtonMenu, { items: user.menuItems, persistentItems: user.persistentItems, trigger: {
25108
+ return /* @__PURE__ */ jsx201("div", { className: "df aic fs0 ml1", children: /* @__PURE__ */ jsx201(ButtonMenu, { items: user.menuItems, persistentItems: user.persistentItems, trigger: {
24969
25109
  src: user.picture,
24970
25110
  name: user.name,
24971
25111
  size: "sm",
@@ -24975,7 +25115,7 @@ function NavbarUserMenu({
24975
25115
 
24976
25116
  // src/components/Pagination.tsx
24977
25117
  import { trussProps as trussProps113 } from "@homebound/truss/runtime";
24978
- import { jsx as jsx201, jsxs as jsxs100 } from "react/jsx-runtime";
25118
+ import { jsx as jsx202, jsxs as jsxs100 } from "react/jsx-runtime";
24979
25119
  var defaultPage = {
24980
25120
  offset: 0,
24981
25121
  limit: 100
@@ -25024,8 +25164,8 @@ function Pagination(props) {
25024
25164
  paddingRight: "pr2",
25025
25165
  paddingTop: "pt2"
25026
25166
  }), ...tid, children: [
25027
- /* @__PURE__ */ jsx201("div", { className: "df mta mba mr2", ...tid.pageSizeLabel, children: "Page size:" }),
25028
- /* @__PURE__ */ jsx201("div", { className: "w_78px", children: /* @__PURE__ */ jsx201(SelectField, { compact: true, label: "Page Size", labelStyle: "hidden", options: pageOptions, value: pageSize, onSelect: (val) => set({
25167
+ /* @__PURE__ */ jsx202("div", { className: "df mta mba mr2", ...tid.pageSizeLabel, children: "Page size:" }),
25168
+ /* @__PURE__ */ jsx202("div", { className: "w_78px", children: /* @__PURE__ */ jsx202(SelectField, { compact: true, label: "Page Size", labelStyle: "hidden", options: pageOptions, value: pageSize, onSelect: (val) => set({
25029
25169
  pageNumber: 1,
25030
25170
  pageSize: val
25031
25171
  }), autoSort: false, ...tid.pageSize }) }),
@@ -25037,11 +25177,11 @@ function Pagination(props) {
25037
25177
  " of ",
25038
25178
  totalCount
25039
25179
  ] }),
25040
- /* @__PURE__ */ jsx201(IconButton, { icon: "chevronLeft", color: hasPrevPage ? "--b-text-link-default" /* TextLinkDefault */ : "--b-surface-separator" /* SurfaceSeparator */, onClick: () => set({
25180
+ /* @__PURE__ */ jsx202(IconButton, { icon: "chevronLeft", color: hasPrevPage ? "--b-text-link-default" /* TextLinkDefault */ : "--b-surface-separator" /* SurfaceSeparator */, onClick: () => set({
25041
25181
  pageNumber: pageNumber - 1,
25042
25182
  pageSize
25043
25183
  }), disabled: !hasPrevPage, ...tid.previousIcon }),
25044
- /* @__PURE__ */ jsx201(IconButton, { icon: "chevronRight", color: hasNextPage ? "--b-text-link-default" /* TextLinkDefault */ : "--b-surface-separator" /* SurfaceSeparator */, onClick: () => set({
25184
+ /* @__PURE__ */ jsx202(IconButton, { icon: "chevronRight", color: hasNextPage ? "--b-text-link-default" /* TextLinkDefault */ : "--b-surface-separator" /* SurfaceSeparator */, onClick: () => set({
25045
25185
  pageNumber: pageNumber + 1,
25046
25186
  pageSize
25047
25187
  }), disabled: !hasNextPage, ...tid.nextIcon })
@@ -25064,9 +25204,9 @@ function toPageNumberSize(page) {
25064
25204
 
25065
25205
  // src/components/ScrollShadows.tsx
25066
25206
  import { useResizeObserver as useResizeObserver9 } from "@react-aria/utils";
25067
- import { useCallback as useCallback34, useMemo as useMemo52, useRef as useRef60, useState as useState54 } from "react";
25207
+ import { useCallback as useCallback34, useMemo as useMemo53, useRef as useRef60, useState as useState55 } from "react";
25068
25208
  import { trussProps as trussProps114, maybeCssVar as maybeCssVar55 } from "@homebound/truss/runtime";
25069
- import { jsx as jsx202, jsxs as jsxs101 } from "react/jsx-runtime";
25209
+ import { jsx as jsx203, jsxs as jsxs101 } from "react/jsx-runtime";
25070
25210
  function ScrollShadows(props) {
25071
25211
  const {
25072
25212
  children,
@@ -25082,10 +25222,10 @@ function ScrollShadows(props) {
25082
25222
  if (!bgColor.includes("rgba")) {
25083
25223
  throw new Error("ScrollShadows: bgColor prop must be in the format 'rgba(255, 255, 255, 1)'");
25084
25224
  }
25085
- const [showStartShadow, setShowStartShadow] = useState54(false);
25086
- const [showEndShadow, setShowEndShadow] = useState54(false);
25225
+ const [showStartShadow, setShowStartShadow] = useState55(false);
25226
+ const [showEndShadow, setShowEndShadow] = useState55(false);
25087
25227
  const scrollRef = useRef60(null);
25088
- const [startShadowStyles, endShadowStyles] = useMemo52(() => {
25228
+ const [startShadowStyles, endShadowStyles] = useMemo53(() => {
25089
25229
  const transparentBgColor = bgColor.replace(/,1\)$/, ",0)");
25090
25230
  const commonStyles = {
25091
25231
  position: "absolute",
@@ -25172,7 +25312,7 @@ function ScrollShadows(props) {
25172
25312
  width: width2
25173
25313
  }
25174
25314
  }), ...tid, children: [
25175
- /* @__PURE__ */ jsx202("div", { ...trussProps114({
25315
+ /* @__PURE__ */ jsx203("div", { ...trussProps114({
25176
25316
  ...startShadowStyles,
25177
25317
  ...{
25178
25318
  opacity: ["o_var", {
@@ -25180,7 +25320,7 @@ function ScrollShadows(props) {
25180
25320
  }]
25181
25321
  }
25182
25322
  }), "data-chromatic": "ignore" }),
25183
- /* @__PURE__ */ jsx202("div", { ...trussProps114({
25323
+ /* @__PURE__ */ jsx203("div", { ...trussProps114({
25184
25324
  ...endShadowStyles,
25185
25325
  ...{
25186
25326
  opacity: ["o_var", {
@@ -25188,7 +25328,7 @@ function ScrollShadows(props) {
25188
25328
  }]
25189
25329
  }
25190
25330
  }), "data-chromatic": "ignore" }),
25191
- /* @__PURE__ */ jsx202("div", { ...trussProps114({
25331
+ /* @__PURE__ */ jsx203("div", { ...trussProps114({
25192
25332
  ...xss,
25193
25333
  ...{
25194
25334
  overflow: "oa",
@@ -25201,15 +25341,15 @@ function ScrollShadows(props) {
25201
25341
 
25202
25342
  // src/layouts/SideNavLayout/SideNavLayoutContext.tsx
25203
25343
  import {
25204
- createContext as createContext14,
25344
+ createContext as createContext15,
25205
25345
  useCallback as useCallback35,
25206
- useContext as useContext26,
25346
+ useContext as useContext27,
25207
25347
  useEffect as useEffect36,
25208
- useMemo as useMemo53,
25348
+ useMemo as useMemo54,
25209
25349
  useRef as useRef61,
25210
- useState as useState55
25350
+ useState as useState56
25211
25351
  } from "react";
25212
- import { jsx as jsx203 } from "react/jsx-runtime";
25352
+ import { jsx as jsx204 } from "react/jsx-runtime";
25213
25353
  var SIDE_NAV_LAYOUT_STATE_STORAGE_KEY = "beam.sideNavLayout.navState";
25214
25354
  function loadStoredNavState() {
25215
25355
  try {
@@ -25231,9 +25371,9 @@ function resolveInitialNavState(defaultNavState) {
25231
25371
  }
25232
25372
  return loadStoredNavState() ?? defaultNavState ?? "expanded";
25233
25373
  }
25234
- var SideNavLayoutContext = createContext14(void 0);
25374
+ var SideNavLayoutContext = createContext15(void 0);
25235
25375
  function SideNavLayoutProvider(props) {
25236
- const [navState, setNavStateInternal] = useState55(
25376
+ const [navState, setNavStateInternal] = useState56(
25237
25377
  () => resolveInitialNavState(props.defaultNavState)
25238
25378
  );
25239
25379
  const bp = useBreakpoint();
@@ -25256,20 +25396,20 @@ function SideNavLayoutProvider(props) {
25256
25396
  return next;
25257
25397
  });
25258
25398
  }, []);
25259
- const value = useMemo53(() => ({ navState, setNavState }), [navState, setNavState]);
25260
- return /* @__PURE__ */ jsx203(SideNavLayoutContext.Provider, { value, children: props.children });
25399
+ const value = useMemo54(() => ({ navState, setNavState }), [navState, setNavState]);
25400
+ return /* @__PURE__ */ jsx204(SideNavLayoutContext.Provider, { value, children: props.children });
25261
25401
  }
25262
25402
  function useSideNavLayoutContext() {
25263
- return useContext26(SideNavLayoutContext) ?? { navState: "expanded", setNavState: () => {
25403
+ return useContext27(SideNavLayoutContext) ?? { navState: "expanded", setNavState: () => {
25264
25404
  } };
25265
25405
  }
25266
25406
  function useHasSideNavLayoutProvider() {
25267
- return useContext26(SideNavLayoutContext) !== void 0;
25407
+ return useContext27(SideNavLayoutContext) !== void 0;
25268
25408
  }
25269
25409
 
25270
25410
  // src/components/SideNav/SideNav.tsx
25271
25411
  import { trussProps as trussProps115 } from "@homebound/truss/runtime";
25272
- import { jsx as jsx204, jsxs as jsxs102 } from "react/jsx-runtime";
25412
+ import { jsx as jsx205, jsxs as jsxs102 } from "react/jsx-runtime";
25273
25413
  function SideNav(props) {
25274
25414
  const {
25275
25415
  top,
@@ -25283,7 +25423,7 @@ function SideNav(props) {
25283
25423
  const panelCollapsed = navState === "collapse";
25284
25424
  const hideOnCollapse = panelCollapsed && !allItemsHaveIcons(items);
25285
25425
  return /* @__PURE__ */ jsxs102("nav", { className: "df fdc h100 fs0", ...tid, children: [
25286
- top !== void 0 && /* @__PURE__ */ jsx204("div", { ...trussProps115({
25426
+ top !== void 0 && /* @__PURE__ */ jsx205("div", { ...trussProps115({
25287
25427
  flexShrink: "fs0",
25288
25428
  paddingLeft: "pl2",
25289
25429
  paddingRight: "pr2",
@@ -25294,7 +25434,7 @@ function SideNav(props) {
25294
25434
  paddingBottom: "pb4"
25295
25435
  } : {}
25296
25436
  }), ...tid.top, children: top }),
25297
- /* @__PURE__ */ jsx204("div", { ...trussProps115({
25437
+ /* @__PURE__ */ jsx205("div", { ...trussProps115({
25298
25438
  flexGrow: "fg1",
25299
25439
  overflowY: "oya",
25300
25440
  display: "df",
@@ -25306,8 +25446,8 @@ function SideNav(props) {
25306
25446
  ...top === void 0 ? {
25307
25447
  paddingTop: "pt5"
25308
25448
  } : {}
25309
- }), ...tid.items, children: !hideOnCollapse && /* @__PURE__ */ jsx204(AppNavItems, { items, panelCollapsed }) }),
25310
- footer !== void 0 && /* @__PURE__ */ jsx204("div", { ...trussProps115({
25449
+ }), ...tid.items, children: !hideOnCollapse && /* @__PURE__ */ jsx205(AppNavItems, { items, panelCollapsed }) }),
25450
+ footer !== void 0 && /* @__PURE__ */ jsx205("div", { ...trussProps115({
25311
25451
  flexShrink: "fs0",
25312
25452
  paddingLeft: "pl2",
25313
25453
  paddingRight: "pr2",
@@ -25385,7 +25525,7 @@ var snackbarId = 1;
25385
25525
  import { useRef as useRef62 } from "react";
25386
25526
  import { useButton as useButton12, useFocusRing as useFocusRing17, useHover as useHover21 } from "react-aria";
25387
25527
  import { trussProps as trussProps116, maybeCssVar as maybeCssVar56 } from "@homebound/truss/runtime";
25388
- import { jsx as jsx205, jsxs as jsxs103 } from "react/jsx-runtime";
25528
+ import { jsx as jsx206, jsxs as jsxs103 } from "react/jsx-runtime";
25389
25529
  import { createElement as createElement6 } from "react";
25390
25530
  var __maybeInc25 = (inc) => {
25391
25531
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
@@ -25405,7 +25545,7 @@ function Stepper(props) {
25405
25545
  const minStepWidth = 100;
25406
25546
  const gap = 8;
25407
25547
  return /* @__PURE__ */ jsxs103("nav", { "aria-label": "steps", className: "df fdc w100", ...tid, children: [
25408
- /* @__PURE__ */ jsx205("ol", { ...trussProps116({
25548
+ /* @__PURE__ */ jsx206("ol", { ...trussProps116({
25409
25549
  padding: "p_0",
25410
25550
  margin: "m_0",
25411
25551
  listStyle: "lis_none",
@@ -25425,9 +25565,9 @@ function Stepper(props) {
25425
25565
  minWidth: ["mw_var", {
25426
25566
  "--minWidth": `${minStepWidth}px`
25427
25567
  }]
25428
- }), key: step.label, "aria-current": isCurrent, ...tid.step }, /* @__PURE__ */ jsx205(StepButton, { ...step, onClick: () => onChange(step.value), isCurrent, ...tid.stepButton }));
25568
+ }), key: step.label, "aria-current": isCurrent, ...tid.step }, /* @__PURE__ */ jsx206(StepButton, { ...step, onClick: () => onChange(step.value), isCurrent, ...tid.stepButton }));
25429
25569
  }) }),
25430
- /* @__PURE__ */ jsx205("div", { ...trussProps116({
25570
+ /* @__PURE__ */ jsx206("div", { ...trussProps116({
25431
25571
  marginTop: "mt1",
25432
25572
  backgroundColor: ["bgColor_var", {
25433
25573
  "--backgroundColor": "var(--b-field-border-default)"
@@ -25440,7 +25580,7 @@ function Stepper(props) {
25440
25580
  "--minWidth": `${steps.length * minStepWidth + (steps.length - 1) * gap}px`
25441
25581
  }],
25442
25582
  width: "w100"
25443
- }), children: /* @__PURE__ */ jsx205("div", { ...trussProps116({
25583
+ }), children: /* @__PURE__ */ jsx206("div", { ...trussProps116({
25444
25584
  backgroundColor: ["bgColor_var", {
25445
25585
  "--backgroundColor": "var(--b-primary)"
25446
25586
  }],
@@ -25544,7 +25684,7 @@ function StepButton(props) {
25544
25684
  } : {},
25545
25685
  ...isFocusVisible ? focusRingStyles2 : {}
25546
25686
  }), ...tid[defaultTestId(label)], children: [
25547
- /* @__PURE__ */ jsx205("span", { className: "fs0 mr_4px", children: /* @__PURE__ */ jsx205(StepIcon, { state, isHovered, isPressed, isCurrent }) }),
25687
+ /* @__PURE__ */ jsx206("span", { className: "fs0 mr_4px", children: /* @__PURE__ */ jsx206(StepIcon, { state, isHovered, isPressed, isCurrent }) }),
25548
25688
  label
25549
25689
  ] });
25550
25690
  }
@@ -25555,12 +25695,12 @@ function StepIcon({
25555
25695
  isCurrent = false
25556
25696
  }) {
25557
25697
  if (state === "error") {
25558
- return /* @__PURE__ */ jsx205(Icon, { icon: "errorCircle" });
25698
+ return /* @__PURE__ */ jsx206(Icon, { icon: "errorCircle" });
25559
25699
  }
25560
25700
  if (state === "complete") {
25561
- return /* @__PURE__ */ jsx205(Icon, { icon: "check" });
25701
+ return /* @__PURE__ */ jsx206(Icon, { icon: "check" });
25562
25702
  }
25563
- return /* @__PURE__ */ jsx205("div", { className: "w_24px h_24px df aic jcc", children: /* @__PURE__ */ jsx205("div", { ...trussProps116({
25703
+ return /* @__PURE__ */ jsx206("div", { className: "w_24px h_24px df aic jcc", children: /* @__PURE__ */ jsx206("div", { ...trussProps116({
25564
25704
  width: "w_10px",
25565
25705
  height: "h_10px",
25566
25706
  borderStyle: "bss",
@@ -25577,7 +25717,7 @@ function StepIcon({
25577
25717
  import { useRef as useRef63 } from "react";
25578
25718
  import { mergeProps as mergeProps32, useButton as useButton13, useFocusRing as useFocusRing18, useHover as useHover22, VisuallyHidden as VisuallyHidden10 } from "react-aria";
25579
25719
  import { trussProps as trussProps117 } from "@homebound/truss/runtime";
25580
- import { Fragment as Fragment45, jsx as jsx206, jsxs as jsxs104 } from "react/jsx-runtime";
25720
+ import { Fragment as Fragment45, jsx as jsx207, jsxs as jsxs104 } from "react/jsx-runtime";
25581
25721
  function StepperTab(props) {
25582
25722
  const {
25583
25723
  label,
@@ -25618,8 +25758,8 @@ function StepperTab(props) {
25618
25758
  }), ...tid[defaultTestId(value)], children: [
25619
25759
  !collapsed && /* @__PURE__ */ jsxs104(Fragment45, { children: [
25620
25760
  /* @__PURE__ */ jsxs104("span", { className: "dg jic mw0", children: [
25621
- /* @__PURE__ */ jsx206("span", { className: "fw6 fz_14px lh_20px visibility_hidden gridArea_1_1 oh d_negwebkit_box wbo_vertical to_ellipsis wlc_1 wordBreak_break_all", "aria-hidden": true, children: label }),
25622
- /* @__PURE__ */ jsx206("span", { ...trussProps117({
25761
+ /* @__PURE__ */ jsx207("span", { className: "fw6 fz_14px lh_20px visibility_hidden gridArea_1_1 oh d_negwebkit_box wbo_vertical to_ellipsis wlc_1 wordBreak_break_all", "aria-hidden": true, children: label }),
25762
+ /* @__PURE__ */ jsx207("span", { ...trussProps117({
25623
25763
  gridArea: "gridArea_1_1",
25624
25764
  overflow: "oh",
25625
25765
  display: "d_negwebkit_box",
@@ -25634,7 +25774,7 @@ function StepperTab(props) {
25634
25774
  } : {}
25635
25775
  }), children: label })
25636
25776
  ] }),
25637
- /* @__PURE__ */ jsx206("span", { ...trussProps117({
25777
+ /* @__PURE__ */ jsx207("span", { ...trussProps117({
25638
25778
  flexShrink: "fs0",
25639
25779
  marginLeft: "ml1",
25640
25780
  transition: "transitionAll",
@@ -25644,10 +25784,10 @@ function StepperTab(props) {
25644
25784
  opacity: "o100",
25645
25785
  transform: "transform_scale_1_translateY_0"
25646
25786
  } : {}
25647
- }), children: /* @__PURE__ */ jsx206(Icon, { icon: "check", inc: 2.5, ...tid.check }) })
25787
+ }), children: /* @__PURE__ */ jsx207(Icon, { icon: "check", inc: 2.5, ...tid.check }) })
25648
25788
  ] }),
25649
- /* @__PURE__ */ jsx206("span", { "aria-hidden": true, ...trussProps117(getIndicatorStyles(active, completed, disabled)), ...tid.indicator }),
25650
- /* @__PURE__ */ jsx206(VisuallyHidden10, { children: completed ? "Complete" : "Not Complete" })
25789
+ /* @__PURE__ */ jsx207("span", { "aria-hidden": true, ...trussProps117(getIndicatorStyles(active, completed, disabled)), ...tid.indicator }),
25790
+ /* @__PURE__ */ jsx207(VisuallyHidden10, { children: completed ? "Complete" : "Not Complete" })
25651
25791
  ] });
25652
25792
  }
25653
25793
  function getStateStyles(active, completed) {
@@ -25729,7 +25869,7 @@ var stepperTabStyles = {
25729
25869
 
25730
25870
  // src/components/StepperTabs/StepperTabs.tsx
25731
25871
  import { trussProps as trussProps118 } from "@homebound/truss/runtime";
25732
- import { jsx as jsx207 } from "react/jsx-runtime";
25872
+ import { jsx as jsx208 } from "react/jsx-runtime";
25733
25873
  import { createElement as createElement7 } from "react";
25734
25874
  function StepperTabs(props) {
25735
25875
  const {
@@ -25745,7 +25885,7 @@ function StepperTabs(props) {
25745
25885
  const collapsed = isMobile || !!forceCollapsed;
25746
25886
  const capWidth = steps.length <= 3;
25747
25887
  const currentStepIndex = Math.max(0, steps.findIndex((step) => step.value === currentStep));
25748
- return /* @__PURE__ */ jsx207("nav", { "aria-label": "steps", className: "w100", ...tid, children: /* @__PURE__ */ jsx207("ol", { ...trussProps118({
25888
+ return /* @__PURE__ */ jsx208("nav", { "aria-label": "steps", className: "w100", ...tid, children: /* @__PURE__ */ jsx208("ol", { ...trussProps118({
25749
25889
  padding: "p_0",
25750
25890
  margin: "m_0",
25751
25891
  listStyle: "lis_none",
@@ -25772,7 +25912,7 @@ function StepperTabs(props) {
25772
25912
  "--maxWidth": `${maxStepWidthPx}px`
25773
25913
  }]
25774
25914
  } : {}
25775
- }), key: step.value, "aria-current": isCurrent, ...tid.step }, /* @__PURE__ */ jsx207(StepperTab, { label: step.label, value: step.value, active: isCurrent, completed: isCompleted, disabled: step.disabled, collapsed, onClick: onChange, ...tid.tab }));
25915
+ }), key: step.value, "aria-current": isCurrent, ...tid.step }, /* @__PURE__ */ jsx208(StepperTab, { label: step.label, value: step.value, active: isCurrent, completed: isCompleted, disabled: step.disabled, collapsed, onClick: onChange, ...tid.tab }));
25776
25916
  }) }) });
25777
25917
  }
25778
25918
  var maxStepWidthPx = 280;
@@ -25781,7 +25921,7 @@ var gapPx = 6;
25781
25921
  // src/components/SuperDrawer/components/SuperDrawerHeader.tsx
25782
25922
  import { createPortal as createPortal8 } from "react-dom";
25783
25923
  import { trussProps as trussProps119 } from "@homebound/truss/runtime";
25784
- import { jsx as jsx208, jsxs as jsxs105 } from "react/jsx-runtime";
25924
+ import { jsx as jsx209, jsxs as jsxs105 } from "react/jsx-runtime";
25785
25925
  function SuperDrawerHeader(props) {
25786
25926
  const {
25787
25927
  hideControls
@@ -25801,17 +25941,17 @@ function SuperDrawerHeader(props) {
25801
25941
  return createPortal8(/* @__PURE__ */ jsxs105("div", { className: "df aic jcsb gap3", ...tid, children: [
25802
25942
  isStructuredProps(props) ? /* @__PURE__ */ jsxs105("div", { className: "df jcsb aic gap2 fg1", children: [
25803
25943
  /* @__PURE__ */ jsxs105("div", { className: "fg1 df aic gap2", children: [
25804
- /* @__PURE__ */ jsx208("h1", { className: "fw6 fz_30px lh_36px", children: props.title }),
25944
+ /* @__PURE__ */ jsx209("h1", { className: "fw6 fz_30px lh_36px", children: props.title }),
25805
25945
  props.left
25806
25946
  ] }),
25807
- props.right && /* @__PURE__ */ jsx208("div", { className: "fs0", children: props.right })
25808
- ] }) : /* @__PURE__ */ jsx208("div", { className: "fg1", children: props.children }),
25809
- !hideControls && /* @__PURE__ */ jsx208("div", { ...trussProps119({
25947
+ props.right && /* @__PURE__ */ jsx209("div", { className: "fs0", children: props.right })
25948
+ ] }) : /* @__PURE__ */ jsx209("div", { className: "fg1", children: props.children }),
25949
+ !hideControls && /* @__PURE__ */ jsx209("div", { ...trussProps119({
25810
25950
  flexShrink: "fs0",
25811
25951
  ...isDetail ? {
25812
25952
  visibility: "vh"
25813
25953
  } : {}
25814
- }), children: /* @__PURE__ */ jsx208(ButtonGroup, { buttons: [{
25954
+ }), children: /* @__PURE__ */ jsx209(ButtonGroup, { buttons: [{
25815
25955
  icon: "chevronLeft",
25816
25956
  onClick: () => onPrevClick && onPrevClick(),
25817
25957
  disabled: !onPrevClick
@@ -25830,8 +25970,8 @@ function isStructuredProps(props) {
25830
25970
  import { motion as motion7 } from "framer-motion";
25831
25971
 
25832
25972
  // src/components/SuperDrawer/useSuperDrawer.tsx
25833
- import { useMemo as useMemo54 } from "react";
25834
- import { jsx as jsx209 } from "react/jsx-runtime";
25973
+ import { useMemo as useMemo55 } from "react";
25974
+ import { jsx as jsx210 } from "react/jsx-runtime";
25835
25975
  function useSuperDrawer() {
25836
25976
  const {
25837
25977
  drawerContentStack: contentStack,
@@ -25843,7 +25983,7 @@ function useSuperDrawer() {
25843
25983
  function canCloseDrawerDetails(i, doChange) {
25844
25984
  for (const canCloseDrawerDetail of canCloseDetailsChecks.current[i] ?? []) {
25845
25985
  if (!canClose(canCloseDrawerDetail)) {
25846
- openModal({ content: /* @__PURE__ */ jsx209(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawerDetail }) });
25986
+ openModal({ content: /* @__PURE__ */ jsx210(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawerDetail }) });
25847
25987
  return false;
25848
25988
  }
25849
25989
  }
@@ -25863,14 +26003,14 @@ function useSuperDrawer() {
25863
26003
  for (const canCloseDrawer of canCloseChecks.current) {
25864
26004
  if (!canClose(canCloseDrawer)) {
25865
26005
  openModal({
25866
- content: /* @__PURE__ */ jsx209(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawer })
26006
+ content: /* @__PURE__ */ jsx210(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawer })
25867
26007
  });
25868
26008
  return;
25869
26009
  }
25870
26010
  }
25871
26011
  doChange();
25872
26012
  }
25873
- const closeActions = useMemo54(
26013
+ const closeActions = useMemo55(
25874
26014
  () => {
25875
26015
  return {
25876
26016
  /** Attempts to close the drawer. If any checks fail, a confirmation modal will appear */
@@ -25905,7 +26045,7 @@ function useSuperDrawer() {
25905
26045
  // eslint-disable-next-line react-hooks/exhaustive-deps
25906
26046
  [canCloseChecks, canCloseDetailsChecks, contentStack, modalState, openModal]
25907
26047
  );
25908
- const actions = useMemo54(
26048
+ const actions = useMemo55(
25909
26049
  () => {
25910
26050
  return {
25911
26051
  // TODO: Maybe we should rename to openDrawer as a breaking change (to match openDrawerDetail)
@@ -25959,7 +26099,7 @@ function canClose(canCloseCheck) {
25959
26099
 
25960
26100
  // src/components/SuperDrawer/SuperDrawerContent.tsx
25961
26101
  import { trussProps as trussProps120, mergeProps as mergeProps33 } from "@homebound/truss/runtime";
25962
- import { Fragment as Fragment46, jsx as jsx210, jsxs as jsxs106 } from "react/jsx-runtime";
26102
+ import { Fragment as Fragment46, jsx as jsx211, jsxs as jsxs106 } from "react/jsx-runtime";
25963
26103
  var SuperDrawerContent = ({
25964
26104
  children,
25965
26105
  actions
@@ -25979,7 +26119,7 @@ var SuperDrawerContent = ({
25979
26119
  } = firstContent ?? {};
25980
26120
  function wrapWithMotionAndMaybeBack(children2) {
25981
26121
  if (kind === "open") {
25982
- return /* @__PURE__ */ jsx210(motion7.div, { className: "pt3 pb3 pr3 pl3 fg1 oa", children: children2 }, "content");
26122
+ return /* @__PURE__ */ jsx211(motion7.div, { className: "pt3 pb3 pr3 pl3 fg1 oa", children: children2 }, "content");
25983
26123
  } else if (kind === "detail") {
25984
26124
  return /* @__PURE__ */ jsxs106(motion7.div, { className: "pl3 pr3 pt2 pb3 fg1", animate: {
25985
26125
  overflow: "auto"
@@ -25988,8 +26128,8 @@ var SuperDrawerContent = ({
25988
26128
  delay: 0.3
25989
26129
  }
25990
26130
  }, children: [
25991
- /* @__PURE__ */ jsx210(Button, { label: "Back", icon: "chevronLeft", variant: "tertiary", onClick: closeDrawerDetail }),
25992
- /* @__PURE__ */ jsx210(motion7.div, { initial: {
26131
+ /* @__PURE__ */ jsx211(Button, { label: "Back", icon: "chevronLeft", variant: "tertiary", onClick: closeDrawerDetail }),
26132
+ /* @__PURE__ */ jsx211(motion7.div, { initial: {
25993
26133
  x: width2,
25994
26134
  opacity: 0
25995
26135
  }, animate: {
@@ -26007,7 +26147,7 @@ var SuperDrawerContent = ({
26007
26147
  }, className: "pt2", children: children2 })
26008
26148
  ] }, "content");
26009
26149
  } else {
26010
- return /* @__PURE__ */ jsx210(motion7.div, { ...mergeProps33(void 0, {
26150
+ return /* @__PURE__ */ jsx211(motion7.div, { ...mergeProps33(void 0, {
26011
26151
  overflow: "auto"
26012
26152
  }, {
26013
26153
  paddingTop: "pt3",
@@ -26020,7 +26160,7 @@ var SuperDrawerContent = ({
26020
26160
  }
26021
26161
  return /* @__PURE__ */ jsxs106(Fragment46, { children: [
26022
26162
  wrapWithMotionAndMaybeBack(children),
26023
- actions && /* @__PURE__ */ jsx210("footer", { ...trussProps120({
26163
+ actions && /* @__PURE__ */ jsx211("footer", { ...trussProps120({
26024
26164
  borderTopStyle: "bts_solid",
26025
26165
  borderTopWidth: "btw_1px",
26026
26166
  borderColor: ["bc_var", {
@@ -26033,7 +26173,7 @@ var SuperDrawerContent = ({
26033
26173
  display: "df",
26034
26174
  alignItems: "aic",
26035
26175
  justifyContent: "jcfe"
26036
- }), children: /* @__PURE__ */ jsx210("div", { className: "df gap1", children: actions.map((buttonProps, i) => /* @__PURE__ */ jsx210(Button, { ...buttonProps }, i)) }) })
26176
+ }), children: /* @__PURE__ */ jsx211("div", { className: "df gap1", children: actions.map((buttonProps, i) => /* @__PURE__ */ jsx211(Button, { ...buttonProps }, i)) }) })
26037
26177
  ] });
26038
26178
  };
26039
26179
 
@@ -26077,19 +26217,19 @@ function visit(rows, fn) {
26077
26217
 
26078
26218
  // src/components/Tabs.tsx
26079
26219
  import { camelCase as camelCase7 } from "change-case";
26080
- import { useEffect as useEffect38, useMemo as useMemo55, useRef as useRef64, useState as useState56 } from "react";
26220
+ import { useEffect as useEffect38, useMemo as useMemo56, useRef as useRef64, useState as useState57 } from "react";
26081
26221
  import { mergeProps as mergeProps34, useFocusRing as useFocusRing19, useHover as useHover23 } from "react-aria";
26082
26222
  import { matchPath } from "react-router";
26083
26223
  import { Link as Link7, useLocation as useLocation2 } from "react-router-dom";
26084
26224
  import { trussProps as trussProps121, maybeCssVar as maybeCssVar57 } from "@homebound/truss/runtime";
26085
- import { Fragment as Fragment47, jsx as jsx211, jsxs as jsxs107 } from "react/jsx-runtime";
26225
+ import { Fragment as Fragment47, jsx as jsx212, jsxs as jsxs107 } from "react/jsx-runtime";
26086
26226
  function TabsWithContent(props) {
26087
26227
  const styles = hideTabs(props) ? {} : {
26088
26228
  paddingTop: "pt3"
26089
26229
  };
26090
26230
  return /* @__PURE__ */ jsxs107(Fragment47, { children: [
26091
- /* @__PURE__ */ jsx211(Tabs, { ...props }),
26092
- /* @__PURE__ */ jsx211(TabContent, { ...props, contentXss: {
26231
+ /* @__PURE__ */ jsx212(Tabs, { ...props }),
26232
+ /* @__PURE__ */ jsx212(TabContent, { ...props, contentXss: {
26093
26233
  ...styles,
26094
26234
  ...props.contentXss
26095
26235
  } })
@@ -26114,7 +26254,7 @@ function TabContent(props) {
26114
26254
  return (
26115
26255
  // Using FullBleed to allow the tab's bgColor to extend to the edges of the <ScrollableContent /> element.
26116
26256
  // Omit the padding from `FullBleed` if the caller passes in the `paddingLeft/Right` styles.
26117
- /* @__PURE__ */ jsx211(FullBleed, { omitPadding: omitFullBleedPadding, children: /* @__PURE__ */ jsx211("div", { "aria-labelledby": `${uniqueValue}-tab`, id: `${uniqueValue}-tabPanel`, role: "tabpanel", tabIndex: 0, ...tid.panel, ...trussProps121(contentXss), children: selectedTab.render() }) })
26257
+ /* @__PURE__ */ jsx212(FullBleed, { omitPadding: omitFullBleedPadding, children: /* @__PURE__ */ jsx212("div", { "aria-labelledby": `${uniqueValue}-tab`, id: `${uniqueValue}-tabPanel`, role: "tabpanel", tabIndex: 0, ...tid.panel, ...trussProps121(contentXss), children: selectedTab.render() }) })
26118
26258
  );
26119
26259
  }
26120
26260
  function Tabs(props) {
@@ -26138,7 +26278,7 @@ function Tabs(props) {
26138
26278
  focusProps
26139
26279
  } = useFocusRing19();
26140
26280
  const tid = useTestIds(others, "tabs");
26141
- const [active, setActive] = useState56(selected);
26281
+ const [active, setActive] = useState57(selected);
26142
26282
  const ref = useRef64(null);
26143
26283
  useEffect38(() => setActive(selected), [selected]);
26144
26284
  function onKeyUp(e) {
@@ -26174,11 +26314,11 @@ function Tabs(props) {
26174
26314
  }
26175
26315
  } : {}
26176
26316
  }), children: [
26177
- !hideTabs(props) && /* @__PURE__ */ jsx211("div", { ref, className: "dif gap1 asfe", "aria-label": ariaLabel, role: "tablist", ...tid, children: tabs.map((tab) => {
26317
+ !hideTabs(props) && /* @__PURE__ */ jsx212("div", { ref, className: "dif gap1 asfe", "aria-label": ariaLabel, role: "tablist", ...tid, children: tabs.map((tab) => {
26178
26318
  const uniqueValue = uniqueTabValue(tab);
26179
- return /* @__PURE__ */ jsx211(TabImpl, { active: active === uniqueValue, focusProps, isFocusVisible, onClick, onKeyUp, onBlur, tab, ...tid[defaultTestId(uniqueValue)] }, uniqueValue);
26319
+ return /* @__PURE__ */ jsx212(TabImpl, { active: active === uniqueValue, focusProps, isFocusVisible, onClick, onKeyUp, onBlur, tab, ...tid[defaultTestId(uniqueValue)] }, uniqueValue);
26180
26320
  }) }),
26181
- right && /* @__PURE__ */ jsx211("div", { className: "mla df aic gap1 pb1", children: right })
26321
+ right && /* @__PURE__ */ jsx212("div", { className: "mla df aic gap1 pb1", children: right })
26182
26322
  ] });
26183
26323
  }
26184
26324
  function TabImpl(props) {
@@ -26212,7 +26352,7 @@ function TabImpl(props) {
26212
26352
  hoverStyles: hoverStyles4,
26213
26353
  disabledStyles: disabledStyles3,
26214
26354
  activeHoverStyles
26215
- } = useMemo55(() => getTabStyles(), []);
26355
+ } = useMemo56(() => getTabStyles(), []);
26216
26356
  const uniqueValue = uniqueTabValue(tab);
26217
26357
  const tabProps = {
26218
26358
  "aria-controls": `${uniqueValue}-tabPanel`,
@@ -26240,15 +26380,15 @@ function TabImpl(props) {
26240
26380
  });
26241
26381
  const tabLabel = /* @__PURE__ */ jsxs107(Fragment47, { children: [
26242
26382
  label,
26243
- (icon || endAdornment) && /* @__PURE__ */ jsx211("span", { className: "ml1", children: icon ? /* @__PURE__ */ jsx211(Icon, { icon }) : endAdornment })
26383
+ (icon || endAdornment) && /* @__PURE__ */ jsx212("span", { className: "ml1", children: icon ? /* @__PURE__ */ jsx212(Icon, { icon }) : endAdornment })
26244
26384
  ] });
26245
26385
  return isDisabled ? maybeTooltip({
26246
26386
  title: resolveTooltip(disabled),
26247
26387
  placement: "top",
26248
- children: /* @__PURE__ */ jsx211("div", { ...tabProps, children: tabLabel })
26249
- }) : isRouteTab(tab) ? /* @__PURE__ */ jsx211(Link7, { ...mergeProps34(tabProps, interactiveProps, {
26388
+ children: /* @__PURE__ */ jsx212("div", { ...tabProps, children: tabLabel })
26389
+ }) : isRouteTab(tab) ? /* @__PURE__ */ jsx212(Link7, { ...mergeProps34(tabProps, interactiveProps, {
26250
26390
  className: "navLink"
26251
- }), to: tab.href, children: tabLabel }) : /* @__PURE__ */ jsx211("button", { ...{
26391
+ }), to: tab.href, children: tabLabel }) : /* @__PURE__ */ jsx212("button", { ...{
26252
26392
  ...tabProps,
26253
26393
  ...interactiveProps
26254
26394
  }, children: tabLabel });
@@ -26356,7 +26496,7 @@ function hideTabs(props) {
26356
26496
  }
26357
26497
 
26358
26498
  // src/components/TagGroup.tsx
26359
- import { jsx as jsx212, jsxs as jsxs108 } from "react/jsx-runtime";
26499
+ import { jsx as jsx213, jsxs as jsxs108 } from "react/jsx-runtime";
26360
26500
  function TagGroup(props) {
26361
26501
  const {
26362
26502
  tags,
@@ -26365,8 +26505,8 @@ function TagGroup(props) {
26365
26505
  } = props;
26366
26506
  const tid = useTestIds(otherProps, "tagGroup");
26367
26507
  return /* @__PURE__ */ jsxs108("div", { ...tid, className: "df aic fww gap1", children: [
26368
- tags.map((tag) => /* @__PURE__ */ jsx212(Tag, { ...tag, variant: "secondary" }, tag.text)),
26369
- onEdit && /* @__PURE__ */ jsx212("span", { className: "ml1 fw4 fz_14px lh_20px", children: /* @__PURE__ */ jsx212(Button, { label: "Edit", variant: "text", onClick: onEdit, ...tid.edit }) })
26508
+ tags.map((tag) => /* @__PURE__ */ jsx213(Tag, { ...tag, variant: "secondary" }, tag.text)),
26509
+ onEdit && /* @__PURE__ */ jsx213("span", { className: "ml1 fw4 fz_14px lh_20px", children: /* @__PURE__ */ jsx213(Button, { label: "Edit", variant: "text", onClick: onEdit, ...tid.edit }) })
26370
26510
  ] });
26371
26511
  }
26372
26512
 
@@ -26380,14 +26520,14 @@ function useToast() {
26380
26520
 
26381
26521
  // src/layouts/SideNavLayout/SideNavLayout.tsx
26382
26522
  import { trussProps as trussProps122, mergeProps as mergeProps35, maybeCssVar as maybeCssVar58 } from "@homebound/truss/runtime";
26383
- import { jsx as jsx213, jsxs as jsxs109 } from "react/jsx-runtime";
26523
+ import { jsx as jsx214, jsxs as jsxs109 } from "react/jsx-runtime";
26384
26524
  var __maybeInc26 = (inc) => {
26385
26525
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
26386
26526
  };
26387
26527
  function SideNavLayout(props) {
26388
26528
  const hasProvider = useHasSideNavLayoutProvider();
26389
- if (hasProvider) return /* @__PURE__ */ jsx213(SideNavLayoutContent, { ...props });
26390
- return /* @__PURE__ */ jsx213(SideNavLayoutProvider, { children: /* @__PURE__ */ jsx213(SideNavLayoutContent, { ...props }) });
26529
+ if (hasProvider) return /* @__PURE__ */ jsx214(SideNavLayoutContent, { ...props });
26530
+ return /* @__PURE__ */ jsx214(SideNavLayoutProvider, { children: /* @__PURE__ */ jsx214(SideNavLayoutContent, { ...props }) });
26391
26531
  }
26392
26532
  function SideNavLayoutContent(props) {
26393
26533
  const {
@@ -26404,8 +26544,9 @@ function SideNavLayoutContent(props) {
26404
26544
  const bp = useBreakpoint();
26405
26545
  const tid = useTestIds(props, "sideNavLayout");
26406
26546
  const railCollapsedWidthPx = 56;
26547
+ const showMobileSubNav = useRegisterMobileSubNav(sideNav);
26407
26548
  const collapsed = navState === "collapse";
26408
- const showRail = navState !== "hidden";
26549
+ const showRail = navState !== "hidden" && !showMobileSubNav;
26409
26550
  const railOffsetPx = !showRail ? 0 : !bp.mdAndUp || collapsed ? railCollapsedWidthPx : railWidthPx;
26410
26551
  const navTop = bannerAndNavbarChromeTop();
26411
26552
  const railViewportHeight = `calc(var(${beamLayoutViewportHeightVar}, 100vh) - var(${beamEnvironmentBannerLayoutHeightVar}, 0px) - var(${beamNavbarLayoutHeightVar}, 0px))`;
@@ -26466,18 +26607,18 @@ function SideNavLayoutContent(props) {
26466
26607
  }
26467
26608
  }
26468
26609
  }), ...tid.sideNav, children: [
26469
- showCollapseToggle && /* @__PURE__ */ jsx213("div", { className: "absolute right2 top2 z2", children: /* @__PURE__ */ jsx213(IconButton, { icon: collapsed ? "menuOpen" : "menuClose", label: collapsed ? "Expand navigation" : "Collapse navigation", onClick: () => setNavState(collapsed ? "expanded" : "collapse"), ...tid.toggle }) }),
26470
- /* @__PURE__ */ jsx213("div", { className: "fg1 mh0 df fdc", ...tid.sideNavContent, children: /* @__PURE__ */ jsx213(SideNav, { ...sideNav }) })
26610
+ showCollapseToggle && /* @__PURE__ */ jsx214("div", { className: "absolute right2 top2 z2", children: /* @__PURE__ */ jsx214(IconButton, { icon: collapsed ? "menuOpen" : "menuClose", label: collapsed ? "Expand navigation" : "Collapse navigation", onClick: () => setNavState(collapsed ? "expanded" : "collapse"), ...tid.toggle }) }),
26611
+ /* @__PURE__ */ jsx214("div", { className: "fg1 mh0 df fdc", ...tid.sideNavContent, children: /* @__PURE__ */ jsx214(SideNav, { ...sideNav }) })
26471
26612
  ] });
26472
- return /* @__PURE__ */ jsx213(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ jsxs109("div", { ...mergeProps35(void 0, {
26613
+ return /* @__PURE__ */ jsx214(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ jsxs109("div", { ...mergeProps35(void 0, {
26473
26614
  [beamSideNavLayoutWidthVar]: `${railOffsetPx}px`
26474
26615
  }, {
26475
26616
  display: "df",
26476
26617
  flexDirection: "fdr",
26477
26618
  width: "w100"
26478
26619
  }), ...tid, children: [
26479
- contrastRail ? /* @__PURE__ */ jsx213(ContrastScope, { children: rail }) : rail,
26480
- /* @__PURE__ */ jsx213("div", { ...trussProps122({
26620
+ contrastRail ? /* @__PURE__ */ jsx214(ContrastScope, { children: rail }) : rail,
26621
+ /* @__PURE__ */ jsx214("div", { ...trussProps122({
26481
26622
  display: "df",
26482
26623
  flexDirection: "fdc",
26483
26624
  flexGrow: "fg1",
@@ -26494,7 +26635,7 @@ function SideNavLayoutContent(props) {
26494
26635
 
26495
26636
  // src/layouts/EnvironmentBannerLayout/EnvironmentBannerLayout.tsx
26496
26637
  import { trussProps as trussProps123, mergeProps as mergeProps36, maybeCssVar as maybeCssVar59 } from "@homebound/truss/runtime";
26497
- import { jsx as jsx214, jsxs as jsxs110 } from "react/jsx-runtime";
26638
+ import { jsx as jsx215, jsxs as jsxs110 } from "react/jsx-runtime";
26498
26639
  var __maybeInc27 = (inc) => {
26499
26640
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
26500
26641
  };
@@ -26510,18 +26651,18 @@ function EnvironmentBannerLayout(props) {
26510
26651
  [beamEnvironmentBannerLayoutHeightVar]: `${bannerHeightPx}px`
26511
26652
  };
26512
26653
  const innerWidth = `var(${beamLayoutViewportWidthVar}, 100vw)`;
26513
- return /* @__PURE__ */ jsx214(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ jsx214(EnvironmentBannerLayoutHeightProvider, { value: bannerHeightPx, children: /* @__PURE__ */ jsxs110("div", { ...mergeProps36(void 0, style, {
26654
+ return /* @__PURE__ */ jsx215(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ jsx215(EnvironmentBannerLayoutHeightProvider, { value: bannerHeightPx, children: /* @__PURE__ */ jsxs110("div", { ...mergeProps36(void 0, style, {
26514
26655
  display: "df",
26515
26656
  flexDirection: "fdc",
26516
26657
  width: "wfc",
26517
26658
  minWidth: "mw100"
26518
26659
  }), ...tid, children: [
26519
- showBanner && environmentBanner && /* @__PURE__ */ jsx214("div", { ...mergeProps36(void 0, {
26660
+ showBanner && environmentBanner && /* @__PURE__ */ jsx215("div", { ...mergeProps36(void 0, {
26520
26661
  height: environmentBannerSizePx
26521
26662
  }, {
26522
26663
  flexShrink: "fs0",
26523
26664
  width: "w100"
26524
- }), children: /* @__PURE__ */ jsx214("div", { ...trussProps123({
26665
+ }), children: /* @__PURE__ */ jsx215("div", { ...trussProps123({
26525
26666
  position: "fixed",
26526
26667
  top: "top0",
26527
26668
  left: "left0",
@@ -26531,14 +26672,14 @@ function EnvironmentBannerLayout(props) {
26531
26672
  width: ["w_var", {
26532
26673
  "--width": maybeCssVar59(__maybeInc27(innerWidth))
26533
26674
  }]
26534
- }), ...tid.bannerSticky, children: /* @__PURE__ */ jsx214(EnvironmentBanner, { ...environmentBanner, ...tid.environmentBanner }) }) }),
26675
+ }), ...tid.bannerSticky, children: /* @__PURE__ */ jsx215(EnvironmentBanner, { ...environmentBanner, ...tid.environmentBanner }) }) }),
26535
26676
  children
26536
26677
  ] }) }) });
26537
26678
  }
26538
26679
 
26539
26680
  // src/layouts/FormSectionLayout/FormSectionLayout.tsx
26540
26681
  import { trussProps as trussProps124 } from "@homebound/truss/runtime";
26541
- import { jsx as jsx215, jsxs as jsxs111 } from "react/jsx-runtime";
26682
+ import { jsx as jsx216, jsxs as jsxs111 } from "react/jsx-runtime";
26542
26683
  function FormSectionLayout(props) {
26543
26684
  const {
26544
26685
  title,
@@ -26552,10 +26693,10 @@ function FormSectionLayout(props) {
26552
26693
  /* @__PURE__ */ jsxs111("div", { className: "df fdc gap3", children: [
26553
26694
  /* @__PURE__ */ jsxs111("div", { className: "df fdc jcsb gap_12px", children: [
26554
26695
  /* @__PURE__ */ jsxs111("div", { className: "df jcsb aic", children: [
26555
- /* @__PURE__ */ jsx215("h1", { className: "fw6 fz_20px lh_28px", ...tid.title, children: title }),
26556
- actions && /* @__PURE__ */ jsx215("div", { className: "df gap1 fs0", ...tid.actions, children: actions.map((action) => action.kind === "icon" ? /* @__PURE__ */ jsx215(IconButton, { ...action, variant: "outline" }, action.icon) : /* @__PURE__ */ jsx215(Button, { ...action }, `${action.label}`)) })
26696
+ /* @__PURE__ */ jsx216("h1", { className: "fw6 fz_20px lh_28px", ...tid.title, children: title }),
26697
+ actions && /* @__PURE__ */ jsx216("div", { className: "df gap1 fs0", ...tid.actions, children: actions.map((action) => action.kind === "icon" ? /* @__PURE__ */ jsx216(IconButton, { ...action, variant: "outline" }, action.icon) : /* @__PURE__ */ jsx216(Button, { ...action }, `${action.label}`)) })
26557
26698
  ] }),
26558
- description && /* @__PURE__ */ jsx215("div", { ...trussProps124({
26699
+ description && /* @__PURE__ */ jsx216("div", { ...trussProps124({
26559
26700
  fontWeight: "fw4",
26560
26701
  fontSize: "fz_14px",
26561
26702
  lineHeight: "lh_20px",
@@ -26566,16 +26707,16 @@ function FormSectionLayout(props) {
26566
26707
  ] }),
26567
26708
  initialFields
26568
26709
  ] }),
26569
- sections && /* @__PURE__ */ jsx215("div", { className: "df fdc gap8", children: sections.map((section, i) => /* @__PURE__ */ jsx215(FormSection, { ...section }, defaultTestId(section.title) || i)) })
26710
+ sections && /* @__PURE__ */ jsx216("div", { className: "df fdc gap8", children: sections.map((section, i) => /* @__PURE__ */ jsx216(FormSection, { ...section }, defaultTestId(section.title) || i)) })
26570
26711
  ] });
26571
26712
  }
26572
26713
 
26573
26714
  // src/layouts/NavbarLayout/NavbarLayout.tsx
26574
- import { useMemo as useMemo56, useRef as useRef66 } from "react";
26715
+ import { useMemo as useMemo57, useRef as useRef66 } from "react";
26575
26716
  import { mergeProps as mergeProps37, maybeCssVar as maybeCssVar60 } from "@homebound/truss/runtime";
26576
26717
 
26577
26718
  // src/layouts/useAutoHideOnScroll.ts
26578
- import { useLayoutEffect as useLayoutEffect9, useRef as useRef65, useState as useState57 } from "react";
26719
+ import { useLayoutEffect as useLayoutEffect10, useRef as useRef65, useState as useState58 } from "react";
26579
26720
  var THRESHOLD = 80;
26580
26721
  function getInitialAutoHideState() {
26581
26722
  if (typeof window === "undefined" || window.scrollY <= 0) {
@@ -26585,15 +26726,15 @@ function getInitialAutoHideState() {
26585
26726
  }
26586
26727
  function useAutoHideOnScroll(spacerRef, enabled, getTopOffset) {
26587
26728
  const initial = getInitialAutoHideState();
26588
- const [state, setState] = useState57(initial.state);
26729
+ const [state, setState] = useState58(initial.state);
26589
26730
  const stateRef = useRef65(initial.state);
26590
- const [atTop, setAtTop] = useState57(initial.atTop);
26731
+ const [atTop, setAtTop] = useState58(initial.atTop);
26591
26732
  const atTopRef = useRef65(initial.atTop);
26592
26733
  const getTopOffsetRef = useRef65(getTopOffset);
26593
26734
  getTopOffsetRef.current = getTopOffset;
26594
26735
  const lastScrollY = useRef65(Number.POSITIVE_INFINITY);
26595
26736
  const lastScrollHeight = useRef65(0);
26596
- useLayoutEffect9(() => {
26737
+ useLayoutEffect10(() => {
26597
26738
  if (!enabled) {
26598
26739
  stateRef.current = "static";
26599
26740
  atTopRef.current = true;
@@ -26666,34 +26807,34 @@ function useAutoHideOnScroll(spacerRef, enabled, getTopOffset) {
26666
26807
 
26667
26808
  // src/layouts/useMeasuredHeight.ts
26668
26809
  import { useResizeObserver as useResizeObserver10 } from "@react-aria/utils";
26669
- import { useCallback as useCallback38, useLayoutEffect as useLayoutEffect10, useState as useState58 } from "react";
26810
+ import { useCallback as useCallback38, useLayoutEffect as useLayoutEffect11, useState as useState59 } from "react";
26670
26811
  function useMeasuredHeight(ref, enabled) {
26671
- const [height, setHeight] = useState58(0);
26812
+ const [height, setHeight] = useState59(0);
26672
26813
  const syncElementHeight = useCallback38(() => {
26673
26814
  const el = ref.current;
26674
26815
  const next = el ? Math.round(el.getBoundingClientRect().height) : 0;
26675
26816
  setHeight((prev) => prev === next ? prev : next);
26676
26817
  }, [ref]);
26677
26818
  useResizeObserver10({ ref, onResize: syncElementHeight });
26678
- useLayoutEffect10(() => {
26819
+ useLayoutEffect11(() => {
26679
26820
  syncElementHeight();
26680
26821
  }, [enabled, syncElementHeight]);
26681
26822
  return height;
26682
26823
  }
26683
26824
 
26684
26825
  // src/layouts/NavbarLayout/NavbarLayoutHeightContext.tsx
26685
- import { createContext as createContext15, useContext as useContext27 } from "react";
26686
- import { jsx as jsx216 } from "react/jsx-runtime";
26687
- var NavbarLayoutHeightContext = createContext15(0);
26826
+ import { createContext as createContext16, useContext as useContext28 } from "react";
26827
+ import { jsx as jsx217 } from "react/jsx-runtime";
26828
+ var NavbarLayoutHeightContext = createContext16(0);
26688
26829
  function NavbarLayoutHeightProvider({ value, children }) {
26689
- return /* @__PURE__ */ jsx216(NavbarLayoutHeightContext.Provider, { value, children });
26830
+ return /* @__PURE__ */ jsx217(NavbarLayoutHeightContext.Provider, { value, children });
26690
26831
  }
26691
26832
  function useNavbarLayoutHeight() {
26692
- return useContext27(NavbarLayoutHeightContext);
26833
+ return useContext28(NavbarLayoutHeightContext);
26693
26834
  }
26694
26835
 
26695
26836
  // src/layouts/NavbarLayout/NavbarLayout.tsx
26696
- import { jsx as jsx217, jsxs as jsxs112 } from "react/jsx-runtime";
26837
+ import { jsx as jsx218, jsxs as jsxs112 } from "react/jsx-runtime";
26697
26838
  var __maybeInc28 = (inc) => {
26698
26839
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
26699
26840
  };
@@ -26746,29 +26887,29 @@ function NavbarLayout(props) {
26746
26887
  const innerStyle = autoHideState !== "static" ? {
26747
26888
  top: autoHideState === "revealed" ? bannerTop : `calc(${bannerTop} - ${navHeight}px)`
26748
26889
  } : void 0;
26749
- const navbarEl = useMemo56(() => /* @__PURE__ */ jsx217(Navbar, { ...navbar }), [navbar]);
26750
- return /* @__PURE__ */ jsx217(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ jsx217(NavbarLayoutHeightProvider, { value: navbarOffsetPx, children: /* @__PURE__ */ jsxs112("div", { ...mergeProps37(void 0, cssVars, {
26890
+ const navbarEl = useMemo57(() => /* @__PURE__ */ jsx218(Navbar, { ...navbar }), [navbar]);
26891
+ return /* @__PURE__ */ jsx218(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ jsx218(NavbarLayoutHeightProvider, { value: navbarOffsetPx, children: /* @__PURE__ */ jsx218(MobileSubNavProvider, { children: /* @__PURE__ */ jsxs112("div", { ...mergeProps37(void 0, cssVars, {
26751
26892
  display: "df",
26752
26893
  flexDirection: "fdc",
26753
26894
  width: "wfc",
26754
26895
  minWidth: "mw100"
26755
26896
  }), ...tid, children: [
26756
- /* @__PURE__ */ jsx217("div", { ref: spacerRef, ...mergeProps37(void 0, {
26897
+ /* @__PURE__ */ jsx218("div", { ref: spacerRef, ...mergeProps37(void 0, {
26757
26898
  height: navHeight
26758
26899
  }, {
26759
26900
  flexShrink: "fs0",
26760
26901
  width: "w100"
26761
- }), children: /* @__PURE__ */ jsx217("div", { ref: navMetricsRef, ...mergeProps37(void 0, innerStyle, innerCss), ...tid.navbar, children: navbarEl }) }),
26762
- /* @__PURE__ */ jsx217("div", { className: "df fdc mh0 mw100 w100", ...tid.body, children })
26763
- ] }) }) });
26902
+ }), children: /* @__PURE__ */ jsx218("div", { ref: navMetricsRef, ...mergeProps37(void 0, innerStyle, innerCss), ...tid.navbar, children: navbarEl }) }),
26903
+ /* @__PURE__ */ jsx218("div", { className: "df fdc mh0 mw100 w100", ...tid.body, children })
26904
+ ] }) }) }) });
26764
26905
  }
26765
26906
 
26766
26907
  // src/layouts/PageHeaderLayout/PageHeaderLayout.tsx
26767
- import { useCallback as useCallback39, useMemo as useMemo57, useRef as useRef67 } from "react";
26908
+ import { useCallback as useCallback39, useMemo as useMemo58, useRef as useRef67 } from "react";
26768
26909
 
26769
26910
  // src/components/Headers/BaseHeader.tsx
26770
26911
  import { trussProps as trussProps125 } from "@homebound/truss/runtime";
26771
- import { jsx as jsx218, jsxs as jsxs113 } from "react/jsx-runtime";
26912
+ import { jsx as jsx219, jsxs as jsxs113 } from "react/jsx-runtime";
26772
26913
  function BaseHeader(props) {
26773
26914
  const {
26774
26915
  title,
@@ -26809,8 +26950,8 @@ function BaseHeader(props) {
26809
26950
  }
26810
26951
  }), children: [
26811
26952
  /* @__PURE__ */ jsxs113("div", { className: "mw0", children: [
26812
- breadcrumbs && /* @__PURE__ */ jsx218(Breadcrumbs, { ...breadcrumbs }),
26813
- /* @__PURE__ */ jsx218("h1", { ...tid.title, ...trussProps125({
26953
+ breadcrumbs && /* @__PURE__ */ jsx219(Breadcrumbs, { ...breadcrumbs }),
26954
+ /* @__PURE__ */ jsx219("h1", { ...tid.title, ...trussProps125({
26814
26955
  fontWeight: "fw6",
26815
26956
  fontSize: "fz_20px",
26816
26957
  lineHeight: "lh_28px",
@@ -26819,7 +26960,7 @@ function BaseHeader(props) {
26819
26960
  }]
26820
26961
  }), children: title })
26821
26962
  ] }),
26822
- /* @__PURE__ */ jsx218("div", { className: "fs0", children: rightSlot })
26963
+ /* @__PURE__ */ jsx219("div", { className: "fs0", children: rightSlot })
26823
26964
  ] }),
26824
26965
  bottomSlot
26825
26966
  ] });
@@ -26827,14 +26968,14 @@ function BaseHeader(props) {
26827
26968
 
26828
26969
  // src/components/Headers/PageHeader.tsx
26829
26970
  import { trussProps as trussProps126 } from "@homebound/truss/runtime";
26830
- import { jsx as jsx219 } from "react/jsx-runtime";
26971
+ import { jsx as jsx220 } from "react/jsx-runtime";
26831
26972
  function PageHeader2(props) {
26832
26973
  const {
26833
26974
  tabs,
26834
26975
  ...otherProps
26835
26976
  } = props;
26836
26977
  const tid = useTestIds(otherProps, "header");
26837
- return /* @__PURE__ */ jsx219(BaseHeader, { ...otherProps, bottomSlot: tabs && /* @__PURE__ */ jsx219("div", { ...trussProps126(pageContentPaddingX), children: /* @__PURE__ */ jsx219(Tabs, { ...tabs, ...tid.tabs }) }) });
26978
+ return /* @__PURE__ */ jsx220(BaseHeader, { ...otherProps, bottomSlot: tabs && /* @__PURE__ */ jsx220("div", { ...trussProps126(pageContentPaddingX), children: /* @__PURE__ */ jsx220(Tabs, { ...tabs, ...tid.tabs }) }) });
26838
26979
  }
26839
26980
 
26840
26981
  // src/layouts/useBannerAndNavbarHeight.ts
@@ -26844,7 +26985,7 @@ function useBannerAndNavbarHeight() {
26844
26985
 
26845
26986
  // src/layouts/PageHeaderLayout/PageHeaderLayout.tsx
26846
26987
  import { mergeProps as mergeProps38, maybeCssVar as maybeCssVar61 } from "@homebound/truss/runtime";
26847
- import { jsx as jsx220, jsxs as jsxs114 } from "react/jsx-runtime";
26988
+ import { jsx as jsx221, jsxs as jsxs114 } from "react/jsx-runtime";
26848
26989
  var __maybeInc29 = (inc) => {
26849
26990
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
26850
26991
  };
@@ -26899,37 +27040,37 @@ function PageHeaderLayout(props) {
26899
27040
  const innerStyle = autoHideState !== "static" ? {
26900
27041
  top: autoHideState === "revealed" ? outerTop : `calc(${outerTop} - ${headerHeight}px)`
26901
27042
  } : void 0;
26902
- const pageHeaderEl = useMemo57(() => /* @__PURE__ */ jsx220(PageHeader2, { ...pageHeader }), [pageHeader]);
26903
- return /* @__PURE__ */ jsx220(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ jsxs114("div", { ...mergeProps38(void 0, cssVars, {
27043
+ const pageHeaderEl = useMemo58(() => /* @__PURE__ */ jsx221(PageHeader2, { ...pageHeader }), [pageHeader]);
27044
+ return /* @__PURE__ */ jsx221(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ jsxs114("div", { ...mergeProps38(void 0, cssVars, {
26904
27045
  display: "df",
26905
27046
  flexDirection: "fdc",
26906
27047
  width: "w100"
26907
27048
  }), ...tid, children: [
26908
- /* @__PURE__ */ jsx220("div", { ref: spacerRef, ...mergeProps38(void 0, {
27049
+ /* @__PURE__ */ jsx221("div", { ref: spacerRef, ...mergeProps38(void 0, {
26909
27050
  height: headerHeight
26910
27051
  }, {
26911
27052
  flexShrink: "fs0",
26912
27053
  width: "w100"
26913
- }), children: /* @__PURE__ */ jsx220("div", { ref: headerMetricsRef, ...mergeProps38(void 0, innerStyle, innerCss), ...tid.pageHeader, children: pageHeaderEl }) }),
26914
- /* @__PURE__ */ jsx220("div", { className: "df fdc fg1 mh0 w100", ...tid.body, children })
27054
+ }), children: /* @__PURE__ */ jsx221("div", { ref: headerMetricsRef, ...mergeProps38(void 0, innerStyle, innerCss), ...tid.pageHeader, children: pageHeaderEl }) }),
27055
+ /* @__PURE__ */ jsx221("div", { className: "df fdc fg1 mh0 w100", ...tid.body, children })
26915
27056
  ] }) });
26916
27057
  }
26917
27058
 
26918
27059
  // src/layouts/WorkflowLayout/WorkflowLayout.tsx
26919
- import { useLayoutEffect as useLayoutEffect11, useRef as useRef69, useState as useState59 } from "react";
27060
+ import { useLayoutEffect as useLayoutEffect12, useRef as useRef69, useState as useState60 } from "react";
26920
27061
 
26921
27062
  // src/components/Headers/WorkflowHeader.tsx
26922
- import { jsx as jsx221 } from "react/jsx-runtime";
27063
+ import { jsx as jsx222 } from "react/jsx-runtime";
26923
27064
  function WorkflowHeader(props) {
26924
27065
  const { stepperTabs, ...otherProps } = props;
26925
27066
  const tid = useTestIds(otherProps, "header");
26926
- return /* @__PURE__ */ jsx221(BaseHeader, { ...otherProps, bottomSlot: /* @__PURE__ */ jsx221(StepperTabs, { ...stepperTabs, ...tid.stepperTabs }) });
27067
+ return /* @__PURE__ */ jsx222(BaseHeader, { ...otherProps, bottomSlot: /* @__PURE__ */ jsx222(StepperTabs, { ...stepperTabs, ...tid.stepperTabs }) });
26927
27068
  }
26928
27069
 
26929
27070
  // src/layouts/WorkflowLayout/useUnsavedChangesGuard.tsx
26930
27071
  import { useEffect as useEffect39, useRef as useRef68 } from "react";
26931
27072
  import { useBlocker } from "react-router-dom";
26932
- import { jsx as jsx222 } from "react/jsx-runtime";
27073
+ import { jsx as jsx223 } from "react/jsx-runtime";
26933
27074
  function useUnsavedChangesGuard(options) {
26934
27075
  const { isDirty, onCancel } = options;
26935
27076
  const { openModal } = useModal();
@@ -26952,7 +27093,7 @@ function useUnsavedChangesGuard(options) {
26952
27093
  }
26953
27094
  openModal({
26954
27095
  allowClosing: false,
26955
- content: /* @__PURE__ */ jsx222(ConfirmCloseModal, { onClose: () => onCancel(e) })
27096
+ content: /* @__PURE__ */ jsx223(ConfirmCloseModal, { onClose: () => onCancel(e) })
26956
27097
  });
26957
27098
  };
26958
27099
  const navigationBlocker = blocker.state === "blocked" ? { proceed: () => blocker.proceed?.(), cancelNavigation: () => blocker.reset?.() } : void 0;
@@ -26964,7 +27105,7 @@ function UnsavedChangesNavigationModal(props) {
26964
27105
  useEffect39(() => {
26965
27106
  openModal({
26966
27107
  allowClosing: false,
26967
- content: /* @__PURE__ */ jsx222(ConfirmCloseModal, { title: "Leave page?", onClose: proceed, onContinue: cancelNavigation })
27108
+ content: /* @__PURE__ */ jsx223(ConfirmCloseModal, { title: "Leave page?", onClose: proceed, onContinue: cancelNavigation })
26968
27109
  });
26969
27110
  return () => closeModal();
26970
27111
  }, []);
@@ -26972,7 +27113,7 @@ function UnsavedChangesNavigationModal(props) {
26972
27113
  }
26973
27114
 
26974
27115
  // src/layouts/WorkflowLayout/WorkflowActions.tsx
26975
- import { jsx as jsx223, jsxs as jsxs115 } from "react/jsx-runtime";
27116
+ import { jsx as jsx224, jsxs as jsxs115 } from "react/jsx-runtime";
26976
27117
  function WorkflowActions(props) {
26977
27118
  const {
26978
27119
  isFirstStep,
@@ -26987,18 +27128,18 @@ function WorkflowActions(props) {
26987
27128
  primaryDisabled
26988
27129
  } = props;
26989
27130
  return /* @__PURE__ */ jsxs115("div", { className: "df aic jcsb sm_w100", children: [
26990
- /* @__PURE__ */ jsx223("div", { className: "df aic", children: !isFirstStep && isMobile && /* @__PURE__ */ jsx223(IconButton, { icon: "arrowBack", label: "Back", onClick: onBack }) }),
27131
+ /* @__PURE__ */ jsx224("div", { className: "df aic", children: !isFirstStep && isMobile && /* @__PURE__ */ jsx224(IconButton, { icon: "arrowBack", label: "Back", onClick: onBack }) }),
26991
27132
  /* @__PURE__ */ jsxs115("div", { className: "df aic gap1", children: [
26992
- /* @__PURE__ */ jsx223(Button, { label: "Cancel", variant: "quaternary", onClick: onCancel }),
26993
- onSaveAndExit && /* @__PURE__ */ jsx223(Button, { label: "Save & Exit", variant: "secondary", onClick: onSaveAndExit }),
26994
- isLastStep ? /* @__PURE__ */ jsx223(Button, { label: completeLabel, variant: "primary", onClick: onComplete, disabled: primaryDisabled }) : /* @__PURE__ */ jsx223(Button, { label: "Continue", variant: "primary", onClick: onContinue, disabled: primaryDisabled })
27133
+ /* @__PURE__ */ jsx224(Button, { label: "Cancel", variant: "quaternary", onClick: onCancel }),
27134
+ onSaveAndExit && /* @__PURE__ */ jsx224(Button, { label: "Save & Exit", variant: "secondary", onClick: onSaveAndExit }),
27135
+ isLastStep ? /* @__PURE__ */ jsx224(Button, { label: completeLabel, variant: "primary", onClick: onComplete, disabled: primaryDisabled }) : /* @__PURE__ */ jsx224(Button, { label: "Continue", variant: "primary", onClick: onContinue, disabled: primaryDisabled })
26995
27136
  ] })
26996
27137
  ] });
26997
27138
  }
26998
27139
 
26999
27140
  // src/layouts/WorkflowLayout/WorkflowLayout.tsx
27000
27141
  import { trussProps as trussProps127, mergeProps as mergeProps39, maybeCssVar as maybeCssVar62 } from "@homebound/truss/runtime";
27001
- import { jsx as jsx224, jsxs as jsxs116 } from "react/jsx-runtime";
27142
+ import { jsx as jsx225, jsxs as jsxs116 } from "react/jsx-runtime";
27002
27143
  var __maybeInc30 = (inc) => {
27003
27144
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
27004
27145
  };
@@ -27017,7 +27158,7 @@ function WorkflowLayout(props) {
27017
27158
  ...step,
27018
27159
  value: defaultTestId(step.label)
27019
27160
  }));
27020
- const [currentStep, setCurrentStep] = useState59(() => getInitialStep(stepTabs, defaultStep));
27161
+ const [currentStep, setCurrentStep] = useState60(() => getInitialStep(stepTabs, defaultStep));
27021
27162
  const tid = useTestIds(props, "workflowLayout");
27022
27163
  const {
27023
27164
  sm: isMobile
@@ -27040,7 +27181,7 @@ function WorkflowLayout(props) {
27040
27181
  const isFirstStep = currentIndex <= 0;
27041
27182
  const isLastStep = currentIndex === stepTabs.length - 1;
27042
27183
  const activeStep = stepTabs[currentIndex];
27043
- const buttons = /* @__PURE__ */ jsx224(WorkflowActions, { isFirstStep, isLastStep, isMobile, onBack: () => setCurrentStep(stepTabs[currentIndex - 1].value), onCancel: onCancelClick, onSaveAndExit, completeLabel, onComplete, primaryDisabled: !activeStep?.isValid, onContinue: async () => {
27184
+ const buttons = /* @__PURE__ */ jsx225(WorkflowActions, { isFirstStep, isLastStep, isMobile, onBack: () => setCurrentStep(stepTabs[currentIndex - 1].value), onCancel: onCancelClick, onSaveAndExit, completeLabel, onComplete, primaryDisabled: !activeStep?.isValid, onContinue: async () => {
27044
27185
  const onContinue = activeStep?.onContinue;
27045
27186
  if (onContinue) {
27046
27187
  const allowed = await onContinue();
@@ -27049,7 +27190,7 @@ function WorkflowLayout(props) {
27049
27190
  setCurrentStep(stepTabs[currentIndex + 1].value);
27050
27191
  } });
27051
27192
  const showFooter = isMobile;
27052
- useLayoutEffect11(() => {
27193
+ useLayoutEffect12(() => {
27053
27194
  const root = document.documentElement;
27054
27195
  const previous = root.style.getPropertyValue(beamWorkflowLayoutFooterHeightVar);
27055
27196
  root.style.setProperty(beamWorkflowLayoutFooterHeightVar, showFooter ? `${mobileFooterHeightPx}px` : "0px");
@@ -27061,7 +27202,7 @@ function WorkflowLayout(props) {
27061
27202
  }
27062
27203
  };
27063
27204
  }, [showFooter]);
27064
- const headerEl = /* @__PURE__ */ jsx224(
27205
+ const headerEl = /* @__PURE__ */ jsx225(
27065
27206
  WorkflowHeader,
27066
27207
  {
27067
27208
  ...headerProps,
@@ -27080,7 +27221,7 @@ function WorkflowLayout(props) {
27080
27221
  flexDirection: "fdc",
27081
27222
  width: "w100"
27082
27223
  }), ...tid, children: [
27083
- /* @__PURE__ */ jsx224("div", { ref: headerMetricsRef, ...trussProps127({
27224
+ /* @__PURE__ */ jsx225("div", { ref: headerMetricsRef, ...trussProps127({
27084
27225
  position: "sticky",
27085
27226
  left: "left0",
27086
27227
  width: ["w_var", {
@@ -27093,14 +27234,14 @@ function WorkflowLayout(props) {
27093
27234
  "--top": maybeCssVar62(__maybeInc30(outerTop))
27094
27235
  }]
27095
27236
  }), ...tid.header, children: headerEl }),
27096
- /* @__PURE__ */ jsx224("div", { className: "df fdc fg1 mh0 w100", ...tid.body, children: activeStep?.content }),
27097
- showFooter && /* @__PURE__ */ jsx224("div", { ...trussProps127({
27237
+ /* @__PURE__ */ jsx225("div", { className: "df fdc fg1 mh0 w100", ...tid.body, children: activeStep?.content }),
27238
+ showFooter && /* @__PURE__ */ jsx225("div", { ...trussProps127({
27098
27239
  flexShrink: "fs0",
27099
27240
  width: "w100",
27100
27241
  height: ["h_var", {
27101
27242
  "--height": `${mobileFooterHeightPx}px`
27102
27243
  }]
27103
- }), children: /* @__PURE__ */ jsx224("div", { ...trussProps127({
27244
+ }), children: /* @__PURE__ */ jsx225("div", { ...trussProps127({
27104
27245
  ...{
27105
27246
  position: "fixed",
27106
27247
  bottom: "bottom0",
@@ -27129,7 +27270,7 @@ function WorkflowLayout(props) {
27129
27270
  ...pageContentPaddingX
27130
27271
  }), ...tid.footer, children: buttons }) })
27131
27272
  ] }),
27132
- navigationBlocker && /* @__PURE__ */ jsx224(UnsavedChangesNavigationModal, { ...navigationBlocker })
27273
+ navigationBlocker && /* @__PURE__ */ jsx225(UnsavedChangesNavigationModal, { ...navigationBlocker })
27133
27274
  ] });
27134
27275
  }
27135
27276
  var mobileFooterHeightPx = 80;