@homebound/beam 3.74.0 → 3.75.1

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.cjs CHANGED
@@ -92,6 +92,7 @@ __export(index_exports, {
92
92
  DateRangeField: () => DateRangeField,
93
93
  DnDGrid: () => DnDGrid,
94
94
  DnDGridItemHandle: () => DnDGridItemHandle,
95
+ DocumentScrollRightPaneLayout: () => DocumentScrollRightPaneLayout,
95
96
  DocumentTitleProvider: () => DocumentTitleProvider,
96
97
  EXPANDABLE_HEADER: () => EXPANDABLE_HEADER,
97
98
  EditColumnsButton: () => EditColumnsButton,
@@ -205,10 +206,12 @@ __export(index_exports, {
205
206
  assignDefaultColumnIds: () => assignDefaultColumnIds,
206
207
  bannerAndNavbarChromeTop: () => bannerAndNavbarChromeTop,
207
208
  beamEnvironmentBannerLayoutHeightVar: () => beamEnvironmentBannerLayoutHeightVar,
209
+ beamFloatingRightOffsetVar: () => beamFloatingRightOffsetVar,
208
210
  beamLayoutViewportHeightVar: () => beamLayoutViewportHeightVar,
209
211
  beamLayoutViewportWidthVar: () => beamLayoutViewportWidthVar,
210
212
  beamNavbarLayoutHeightVar: () => beamNavbarLayoutHeightVar,
211
213
  beamPageHeaderLayoutHeightVar: () => beamPageHeaderLayoutHeightVar,
214
+ beamRightPaneWidthVar: () => beamRightPaneWidthVar,
212
215
  beamSideNavLayoutWidthVar: () => beamSideNavLayoutWidthVar,
213
216
  beamTableActionsHeightVar: () => beamTableActionsHeightVar,
214
217
  beamWorkflowLayoutFooterHeightVar: () => beamWorkflowLayoutFooterHeightVar,
@@ -253,12 +256,15 @@ __export(index_exports, {
253
256
  dateFilter: () => dateFilter,
254
257
  dateFormats: () => dateFormats,
255
258
  dateRangeFilter: () => dateRangeFilter,
259
+ defaultDocumentScrollRightPaneWidth: () => defaultDocumentScrollRightPaneWidth,
256
260
  defaultPage: () => defaultPage,
257
261
  defaultRenderFn: () => defaultRenderFn,
258
262
  defaultStyle: () => defaultStyle,
259
263
  defaultTestId: () => defaultTestId,
260
264
  documentScrollChromeLeft: () => documentScrollChromeLeft,
261
265
  documentScrollChromeWidth: () => documentScrollChromeWidth,
266
+ documentScrollRightPaneHeight: () => documentScrollRightPaneHeight,
267
+ documentScrollRightPaneWidth: () => documentScrollRightPaneWidth,
262
268
  dragHandleColumn: () => dragHandleColumn,
263
269
  emptyCell: () => emptyCell,
264
270
  ensureClientSideSortValueIsSortable: () => ensureClientSideSortValueIsSortable,
@@ -275,6 +281,7 @@ __export(index_exports, {
275
281
  getDateFormat: () => getDateFormat,
276
282
  getFirstOrLastCellCss: () => getFirstOrLastCellCss,
277
283
  getFloatingBottomOffset: () => getFloatingBottomOffset,
284
+ getFloatingRightOffset: () => getFloatingRightOffset,
278
285
  getJustification: () => getJustification,
279
286
  getNavLinkStyles: () => getNavLinkStyles,
280
287
  getTableRefWidthStyles: () => getTableRefWidthStyles,
@@ -4221,12 +4228,12 @@ var CssBuilder = class _CssBuilder {
4221
4228
  return this.add("fontFamily", value);
4222
4229
  }
4223
4230
  // layoutContainer
4224
- /** Sets `width: "calc(var(--beam-layout-viewport-width, 100vw) - var(--beam-side-nav-layout-width, 0px))"; left: "var(--beam-side-nav-layout-width, 0px)"; position: "sticky"; paddingLeft: "24px"; paddingRight: "24px"`. */
4231
+ /** Sets `width: "min(100%, calc(var(--beam-layout-viewport-width, 100vw) - var(--beam-side-nav-layout-width, 0px)))"; left: "var(--beam-side-nav-layout-width, 0px)"; position: "sticky"`. */
4225
4232
  get layoutContainer() {
4226
- return this.add("width", "calc(var(--beam-layout-viewport-width, 100vw) - var(--beam-side-nav-layout-width, 0px))").add("left", "var(--beam-side-nav-layout-width, 0px)").add("position", "sticky").add("paddingLeft", "24px").add(
4227
- "paddingRight",
4228
- "24px"
4229
- );
4233
+ return this.add(
4234
+ "width",
4235
+ "min(100%, calc(var(--beam-layout-viewport-width, 100vw) - var(--beam-side-nav-layout-width, 0px)))"
4236
+ ).add("left", "var(--beam-side-nav-layout-width, 0px)").add("position", "sticky");
4230
4237
  }
4231
4238
  // animation
4232
4239
  /** Sets `transition: "background-color 200ms cubic-bezier(0.4, 0, 0.2, 1), border-color 200ms cubic-bezier(0.4, 0, 0.2, 1), box-shadow 200ms cubic-bezier(0.4, 0, 0.2, 1), left 200ms cubic-bezier(0.4, 0, 0.2, 1), right 200ms cubic-bezier(0.4, 0, 0.2, 1), margin 200ms cubic-bezier(0.4, 0, 0.2, 1), width 200ms cubic-bezier(0.4, 0, 0.2, 1), opacity 200ms cubic-bezier(0.4, 0, 0.2, 1)"`. */
@@ -6542,6 +6549,8 @@ var beamLayoutViewportWidthVar = "--beam-layout-viewport-width";
6542
6549
  var beamLayoutViewportHeightVar = "--beam-layout-viewport-height";
6543
6550
  var beamSideNavLayoutWidthVar = "--beam-side-nav-layout-width";
6544
6551
  var beamTableActionsHeightVar = "--beam-table-actions-height";
6552
+ var beamRightPaneWidthVar = "--beam-right-pane-width";
6553
+ var beamFloatingRightOffsetVar = "--beam-floating-right-offset";
6545
6554
  var beamWorkflowLayoutFooterHeightVar = "--beam-workflow-layout-footer-height";
6546
6555
  function documentScrollChromeLeft() {
6547
6556
  return `var(${beamSideNavLayoutWidthVar}, 0px)`;
@@ -6549,6 +6558,12 @@ function documentScrollChromeLeft() {
6549
6558
  function documentScrollChromeWidth() {
6550
6559
  return `calc(var(${beamLayoutViewportWidthVar}, 100vw) - var(${beamSideNavLayoutWidthVar}, 0px))`;
6551
6560
  }
6561
+ function documentScrollRightPaneHeight() {
6562
+ return `calc(var(${beamLayoutViewportHeightVar}, 100vh) - ${stickyTableHeaderOffset()})`;
6563
+ }
6564
+ function documentScrollRightPaneWidth(maxPx) {
6565
+ return `min(${maxPx}px, ${documentScrollChromeWidth()})`;
6566
+ }
6552
6567
  function bannerAndNavbarChromeTop() {
6553
6568
  return `calc(var(${beamEnvironmentBannerLayoutHeightVar}, 0px) + var(${beamNavbarLayoutHeightVar}, 0px))`;
6554
6569
  }
@@ -6561,6 +6576,9 @@ function stickyTableHeaderOffset(basePx = 0) {
6561
6576
  function getFloatingBottomOffset(basePx = 0) {
6562
6577
  return `calc(${basePx}px + var(${beamWorkflowLayoutFooterHeightVar}, 0px))`;
6563
6578
  }
6579
+ function getFloatingRightOffset(basePx = 0) {
6580
+ return `calc(${basePx}px + var(${beamFloatingRightOffsetVar}, 0px))`;
6581
+ }
6564
6582
  var pageContentPaddingXValue = "24px";
6565
6583
 
6566
6584
  // src/utils/zIndices.ts
@@ -6575,6 +6593,8 @@ var zIndices = {
6575
6593
  scrollToTop: 50,
6576
6594
  // Page chrome - ensure these items sit above the table
6577
6595
  scrollShadow: 50,
6596
+ // Document-scroll detail pane (DocumentScrollRightPaneLayout) — above table sticky chrome, below page sticky headers.
6597
+ rightPane: 60,
6578
6598
  pageStickyHeader: 70,
6579
6599
  // Sticky mobile action footer (WorkflowLayout) — same tier as pageStickyHeader; header and footer never overlap on screen.
6580
6600
  pageStickyFooter: 70,
@@ -6588,6 +6608,9 @@ var zIndices = {
6588
6608
  // Navbar mobile drawer + scrim — above navbar; below environment banner.
6589
6609
  navbarMobileMenuScrim: 124,
6590
6610
  navbarMobileMenu: 125,
6611
+ // Document-scroll right pane on `sm` — full-bleed overlay below the env banner; covers navbar /
6612
+ // page chrome / table actions but must not paint over the banner.
6613
+ rightPaneMobile: 126,
6591
6614
  // Environment banner (EnvironmentBannerLayout) — above navbar mobile menu; below overlay scrims.
6592
6615
  environmentBanner: 130,
6593
6616
  // Overlay scrims — above app chrome (including the environment banner); modal above SuperDrawer
@@ -9545,9 +9568,10 @@ function RowImpl(props) {
9545
9568
  "--left": (0, import_runtime25.maybeCssVar)(__maybeInc6(columnIndex === 0 ? `var(${beamSideNavLayoutWidthVar}, 0px)` : `calc(var(${beamSideNavLayoutWidthVar}, 0px) + (${columnSizes.slice(0, columnIndex).join(" + ")}))`))
9546
9569
  }]
9547
9570
  } : {},
9571
+ // Offset by the open right pane so sticky-right cells pin to the clear edge, not under it (0 when closed).
9548
9572
  ...maybeSticky === "right" ? {
9549
9573
  right: ["right_var", {
9550
- "--right": (0, import_runtime25.maybeCssVar)(__maybeInc6(columnIndex + 1 === columnSizes.length ? 0 : `calc(${columnSizes.slice(columnIndex + 1 - columnSizes.length).join(" + ")})`))
9574
+ "--right": (0, import_runtime25.maybeCssVar)(__maybeInc6(columnIndex + 1 === columnSizes.length ? `var(${beamRightPaneWidthVar}, 0px)` : `calc(var(${beamRightPaneWidthVar}, 0px) + (${columnSizes.slice(columnIndex + 1 - columnSizes.length).join(" + ")}))`))
9551
9575
  }]
9552
9576
  } : {}
9553
9577
  } : {};
@@ -17319,7 +17343,7 @@ function DocumentScrollToTopButton({
17319
17343
  "--bottom": (0, import_runtime65.maybeCssVar)(__maybeInc11(getFloatingBottomOffset(scrollToTopOffsetPx)))
17320
17344
  }],
17321
17345
  right: ["right_var", {
17322
- "--right": `${scrollToTopOffsetPx}px`
17346
+ "--right": (0, import_runtime65.maybeCssVar)(__maybeInc11(getFloatingRightOffset(scrollToTopOffsetPx)))
17323
17347
  }],
17324
17348
  zIndex: ["z_var", {
17325
17349
  "--zIndex": (0, import_runtime65.maybeCssVar)(zIndices.scrollToTop)
@@ -18661,8 +18685,8 @@ var variantStyles3 = {
18661
18685
  };
18662
18686
 
18663
18687
  // src/components/BeamContext.tsx
18664
- var import_react122 = require("react");
18665
- var import_react_aria54 = require("react-aria");
18688
+ var import_react125 = require("react");
18689
+ var import_react_aria55 = require("react-aria");
18666
18690
 
18667
18691
  // src/components/Modal/Modal.tsx
18668
18692
  var import_utils86 = require("@react-aria/utils");
@@ -21508,8 +21532,8 @@ function invertSpacing(value) {
21508
21532
  }
21509
21533
 
21510
21534
  // src/components/Layout/GridTableLayout/GridTableLayout.tsx
21511
- var import_utils135 = require("@react-aria/utils");
21512
- var import_react118 = __toESM(require("react"), 1);
21535
+ var import_utils137 = require("@react-aria/utils");
21536
+ var import_react122 = __toESM(require("react"), 1);
21513
21537
 
21514
21538
  // src/components/Filters/utils.tsx
21515
21539
  function getActiveFilterCount(filter) {
@@ -21529,14 +21553,214 @@ function isGridTableProps(props) {
21529
21553
  return "rows" in props;
21530
21554
  }
21531
21555
 
21556
+ // src/components/Layout/RightPaneLayout/DocumentScrollRightPaneLayout.tsx
21557
+ var import_react113 = require("react");
21558
+ var import_runtime93 = require("@homebound/truss/runtime");
21559
+
21560
+ // src/components/Layout/RightPaneLayout/DocumentScrollRightPane.tsx
21561
+ var import_framer_motion3 = require("framer-motion");
21562
+ var import_react112 = require("react");
21563
+ var import_react_aria52 = require("react-aria");
21564
+ var import_react_dom5 = require("react-dom");
21565
+
21566
+ // src/layouts/EnvironmentBannerLayout/EnvironmentBannerLayoutHeightContext.tsx
21567
+ var import_react110 = require("react");
21568
+ var import_jsx_runtime143 = require("react/jsx-runtime");
21569
+ var EnvironmentBannerLayoutHeightContext = (0, import_react110.createContext)(0);
21570
+ function EnvironmentBannerLayoutHeightProvider({ value, children }) {
21571
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(EnvironmentBannerLayoutHeightContext.Provider, { value, children });
21572
+ }
21573
+ function useEnvironmentBannerLayoutHeight() {
21574
+ return (0, import_react110.useContext)(EnvironmentBannerLayoutHeightContext);
21575
+ }
21576
+
21577
+ // src/components/Layout/RightPaneLayout/RightPaneContext.tsx
21578
+ var import_react111 = __toESM(require("react"), 1);
21579
+ var import_jsx_runtime144 = require("react/jsx-runtime");
21580
+ var RightPaneContext = import_react111.default.createContext({
21581
+ openInPane: () => {
21582
+ },
21583
+ closePane: () => {
21584
+ },
21585
+ clearPane: () => {
21586
+ },
21587
+ isRightPaneOpen: false,
21588
+ rightPaneContent: null
21589
+ });
21590
+ function RightPaneProvider({ children }) {
21591
+ const [rightPaneContent, setRightPaneContent] = (0, import_react111.useState)(void 0);
21592
+ const [isRightPaneOpen, setIsRightPaneOpen] = (0, import_react111.useState)(false);
21593
+ const openInPane = (0, import_react111.useCallback)(
21594
+ (opts) => {
21595
+ setRightPaneContent(opts?.content);
21596
+ setIsRightPaneOpen(true);
21597
+ },
21598
+ [setRightPaneContent]
21599
+ );
21600
+ const closePane = (0, import_react111.useCallback)(() => setIsRightPaneOpen(false), []);
21601
+ const clearPane = (0, import_react111.useCallback)(() => setRightPaneContent(void 0), [setRightPaneContent]);
21602
+ const context = (0, import_react111.useMemo)(
21603
+ () => ({ openInPane, closePane, clearPane, rightPaneContent, isRightPaneOpen }),
21604
+ [openInPane, closePane, rightPaneContent, clearPane, isRightPaneOpen]
21605
+ );
21606
+ return /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(RightPaneContext.Provider, { value: context, children });
21607
+ }
21608
+ function useRightPaneContext() {
21609
+ return (0, import_react111.useContext)(RightPaneContext);
21610
+ }
21611
+
21612
+ // src/components/Layout/RightPaneLayout/DocumentScrollRightPane.tsx
21613
+ var import_runtime92 = require("@homebound/truss/runtime");
21614
+ var import_jsx_runtime145 = require("react/jsx-runtime");
21615
+ var __maybeInc17 = (inc) => {
21616
+ return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
21617
+ };
21618
+ function DocumentScrollRightPane({
21619
+ paneWidth
21620
+ }) {
21621
+ const {
21622
+ isRightPaneOpen,
21623
+ rightPaneContent,
21624
+ clearPane,
21625
+ closePane
21626
+ } = useRightPaneContext();
21627
+ const tid = useTestIds({}, "rightPaneContent");
21628
+ const {
21629
+ sm
21630
+ } = useBreakpoint();
21631
+ const bannerHeightPx = useEnvironmentBannerLayoutHeight();
21632
+ const isMobileOverlay = sm && isRightPaneOpen;
21633
+ (0, import_react_aria52.usePreventScroll)({
21634
+ isDisabled: !isMobileOverlay
21635
+ });
21636
+ (0, import_react112.useEffect)(() => closePane, [closePane]);
21637
+ const slideX = sm ? "100%" : paneWidth;
21638
+ const pane = /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(import_framer_motion3.AnimatePresence, { children: isRightPaneOpen && /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(import_framer_motion3.motion.div, { ...tid, ...(0, import_runtime92.mergeProps)(void 0, sm ? {
21639
+ top: bannerHeightPx
21640
+ } : void 0, sm ? {
21641
+ position: "fixed",
21642
+ right: "right0",
21643
+ bottom: "bottom0",
21644
+ left: "left0",
21645
+ overflowY: "oya",
21646
+ backgroundColor: ["bgColor_var", {
21647
+ "--backgroundColor": "var(--b-surface)"
21648
+ }],
21649
+ zIndex: ["z_var", {
21650
+ "--zIndex": (0, import_runtime92.maybeCssVar)(zIndices.rightPaneMobile)
21651
+ }]
21652
+ } : {
21653
+ position: "fixed",
21654
+ transition: "transitionTop",
21655
+ top: ["top_var", {
21656
+ "--top": (0, import_runtime92.maybeCssVar)(__maybeInc17(stickyTableHeaderOffset()))
21657
+ }],
21658
+ right: "right_0",
21659
+ height: ["h_var", {
21660
+ "--height": (0, import_runtime92.maybeCssVar)(__maybeInc17(documentScrollRightPaneHeight()))
21661
+ }],
21662
+ width: ["w_var", {
21663
+ "--width": (0, import_runtime92.maybeCssVar)(__maybeInc17(documentScrollRightPaneWidth(paneWidth)))
21664
+ }],
21665
+ overflowY: "oya",
21666
+ backgroundColor: ["bgColor_var", {
21667
+ "--backgroundColor": "var(--b-surface)"
21668
+ }],
21669
+ zIndex: ["z_var", {
21670
+ "--zIndex": (0, import_runtime92.maybeCssVar)(zIndices.rightPane)
21671
+ }],
21672
+ borderLeftStyle: "bls_solid",
21673
+ borderLeftWidth: "blw_1px",
21674
+ borderColor: ["bc_var", {
21675
+ "--borderColor": "var(--b-surface-separator)"
21676
+ }]
21677
+ }), initial: {
21678
+ x: slideX
21679
+ }, animate: {
21680
+ x: 0
21681
+ }, exit: {
21682
+ x: slideX
21683
+ }, transition: {
21684
+ ease: "linear",
21685
+ duration: 0.2
21686
+ }, onAnimationComplete: (definition) => definition.x !== 0 && clearPane(), children: rightPaneContent }, "documentScrollRightPane") });
21687
+ return sm ? (0, import_react_dom5.createPortal)(pane, document.body) : pane;
21688
+ }
21689
+
21690
+ // src/components/Layout/RightPaneLayout/DocumentScrollRightPaneLayout.tsx
21691
+ var import_jsx_runtime146 = require("react/jsx-runtime");
21692
+ var defaultDocumentScrollRightPaneWidth = 450;
21693
+ function DocumentScrollRightPaneLayout(props) {
21694
+ const {
21695
+ children,
21696
+ paneWidth = defaultDocumentScrollRightPaneWidth
21697
+ } = props;
21698
+ const tid = useTestIds(props, "documentScrollRightPaneLayout");
21699
+ const {
21700
+ isRightPaneOpen
21701
+ } = useRightPaneContext();
21702
+ const {
21703
+ sm
21704
+ } = useBreakpoint();
21705
+ const isSplitPaneOpen = isRightPaneOpen && !sm;
21706
+ const effectivePaneWidth = isSplitPaneOpen ? documentScrollRightPaneWidth(paneWidth) : "0px";
21707
+ (0, import_react113.useLayoutEffect)(() => {
21708
+ const root = document.documentElement;
21709
+ const previous = root.style.getPropertyValue(beamFloatingRightOffsetVar);
21710
+ root.style.setProperty(beamFloatingRightOffsetVar, effectivePaneWidth);
21711
+ return () => {
21712
+ if (previous) {
21713
+ root.style.setProperty(beamFloatingRightOffsetVar, previous);
21714
+ } else {
21715
+ root.style.removeProperty(beamFloatingRightOffsetVar);
21716
+ }
21717
+ };
21718
+ }, [effectivePaneWidth]);
21719
+ return /* @__PURE__ */ (0, import_jsx_runtime146.jsxs)("div", { ...(0, import_runtime93.mergeProps)(void 0, {
21720
+ [beamRightPaneWidthVar]: effectivePaneWidth
21721
+ }, {
21722
+ width: "w100"
21723
+ }), ...tid, children: [
21724
+ /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(DocumentScrollRightPaneSpacer, { paneWidth, isOpen: isSplitPaneOpen, children }),
21725
+ /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(DocumentScrollRightPane, { paneWidth })
21726
+ ] });
21727
+ }
21728
+ function DocumentScrollRightPaneSpacer({
21729
+ paneWidth,
21730
+ isOpen,
21731
+ children
21732
+ }) {
21733
+ const tid = useTestIds({}, "rightPaneSpacer");
21734
+ const effectivePaneWidth = documentScrollRightPaneWidth(paneWidth);
21735
+ return /* @__PURE__ */ (0, import_jsx_runtime146.jsxs)("div", { ...(0, import_runtime93.mergeProps)(void 0, {
21736
+ width: isOpen ? "fit-content" : "100%"
21737
+ }, {
21738
+ display: "df",
21739
+ minWidth: "mw100"
21740
+ }), children: [
21741
+ /* @__PURE__ */ (0, import_jsx_runtime146.jsx)("div", { ...(0, import_runtime93.mergeProps)(void 0, {
21742
+ width: `min(100%, ${documentScrollChromeWidth()})`
21743
+ }, {
21744
+ flexShrink: "fs0",
21745
+ minWidth: "mw_fit_content"
21746
+ }), children }),
21747
+ /* @__PURE__ */ (0, import_jsx_runtime146.jsx)("div", { "aria-hidden": true, ...(0, import_runtime93.mergeProps)(void 0, {
21748
+ width: isOpen ? effectivePaneWidth : 0
21749
+ }, {
21750
+ flexShrink: "fs0",
21751
+ flexGrow: "fg0"
21752
+ }), ...isOpen ? tid : {} })
21753
+ ] });
21754
+ }
21755
+
21532
21756
  // src/components/Layout/GridTableLayout/GridTableLayoutActions.tsx
21533
- var import_react115 = require("react");
21757
+ var import_react119 = require("react");
21534
21758
 
21535
21759
  // src/components/ButtonMenu.tsx
21536
- var import_react110 = require("react");
21537
- var import_react_aria52 = require("react-aria");
21760
+ var import_react114 = require("react");
21761
+ var import_react_aria53 = require("react-aria");
21538
21762
  var import_react_stately17 = require("react-stately");
21539
- var import_jsx_runtime143 = require("react/jsx-runtime");
21763
+ var import_jsx_runtime147 = require("react/jsx-runtime");
21540
21764
  function ButtonMenu(props) {
21541
21765
  const { defaultOpen, disabled, items, persistentItems, trigger, searchable } = props;
21542
21766
  let selectedItem, onChange;
@@ -21545,13 +21769,13 @@ function ButtonMenu(props) {
21545
21769
  onChange = props.onChange;
21546
21770
  }
21547
21771
  const state = (0, import_react_stately17.useMenuTriggerState)({ isOpen: defaultOpen });
21548
- const buttonRef = (0, import_react110.useRef)(null);
21549
- const { menuTriggerProps, menuProps } = (0, import_react_aria52.useMenuTrigger)({ isDisabled: !!disabled }, state, buttonRef);
21772
+ const buttonRef = (0, import_react114.useRef)(null);
21773
+ const { menuTriggerProps, menuProps } = (0, import_react_aria53.useMenuTrigger)({ isDisabled: !!disabled }, state, buttonRef);
21550
21774
  const tid = useTestIds(
21551
21775
  props,
21552
21776
  isTextButton(trigger) ? labelOr(trigger, "buttonMenu") : isNavLinkButton(trigger) ? defaultTestId(trigger.navLabel) : isIconButton(trigger) ? trigger.icon : trigger.name
21553
21777
  );
21554
- return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(OverlayTrigger, { ...props, menuTriggerProps, state, buttonRef, ...tid, children: /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
21778
+ return /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(OverlayTrigger, { ...props, menuTriggerProps, state, buttonRef, ...tid, children: /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(
21555
21779
  Menu,
21556
21780
  {
21557
21781
  ariaMenuProps: menuProps,
@@ -21570,8 +21794,8 @@ function isSelectionButtonMenuProps(props) {
21570
21794
  }
21571
21795
 
21572
21796
  // src/components/CountBadge.tsx
21573
- var import_runtime92 = require("@homebound/truss/runtime");
21574
- var import_jsx_runtime144 = require("react/jsx-runtime");
21797
+ var import_runtime94 = require("@homebound/truss/runtime");
21798
+ var import_jsx_runtime148 = require("react/jsx-runtime");
21575
21799
  function CountBadge(props) {
21576
21800
  const {
21577
21801
  count,
@@ -21582,7 +21806,7 @@ function CountBadge(props) {
21582
21806
  } = props;
21583
21807
  const tid = useTestIds(otherProps, "countBadge");
21584
21808
  if (hideIfZero && count === 0) return null;
21585
- return /* @__PURE__ */ (0, import_jsx_runtime144.jsx)("span", { ...tid, ...(0, import_runtime92.trussProps)({
21809
+ return /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("span", { ...tid, ...(0, import_runtime94.trussProps)({
21586
21810
  ...{
21587
21811
  height: ["sq_var", {
21588
21812
  "--height": `${count > 100 ? 18 : 16}px`
@@ -21602,12 +21826,12 @@ function CountBadge(props) {
21602
21826
  alignItems: "aic",
21603
21827
  justifyContent: "jcc",
21604
21828
  backgroundColor: ["bgColor_var", {
21605
- "--backgroundColor": (0, import_runtime92.maybeCssVar)(bgColor)
21829
+ "--backgroundColor": (0, import_runtime94.maybeCssVar)(bgColor)
21606
21830
  }]
21607
21831
  },
21608
21832
  ...{
21609
21833
  color: ["color_var", {
21610
- "--color": (0, import_runtime92.maybeCssVar)(color)
21834
+ "--color": (0, import_runtime94.maybeCssVar)(color)
21611
21835
  }]
21612
21836
  }
21613
21837
  }), children: count });
@@ -21631,7 +21855,7 @@ var BaseFilter = class {
21631
21855
  };
21632
21856
 
21633
21857
  // src/components/Filters/DateFilter.tsx
21634
- var import_jsx_runtime145 = require("react/jsx-runtime");
21858
+ var import_jsx_runtime149 = require("react/jsx-runtime");
21635
21859
  function dateFilter(props) {
21636
21860
  return (key) => new DateFilter(key, props);
21637
21861
  }
@@ -21653,10 +21877,10 @@ var DateFilter = class extends BaseFilter {
21653
21877
  }
21654
21878
  render(value, setValue, tid, inModal, vertical) {
21655
21879
  const { label, operations, getOperationValue, getOperationLabel, defaultValue } = this.props;
21656
- return /* @__PURE__ */ (0, import_jsx_runtime145.jsxs)(import_jsx_runtime145.Fragment, { children: [
21657
- vertical && /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(Label, { label }),
21658
- /* @__PURE__ */ (0, import_jsx_runtime145.jsxs)(CompoundField, { children: [
21659
- /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(
21880
+ return /* @__PURE__ */ (0, import_jsx_runtime149.jsxs)(import_jsx_runtime149.Fragment, { children: [
21881
+ vertical && /* @__PURE__ */ (0, import_jsx_runtime149.jsx)(Label, { label }),
21882
+ /* @__PURE__ */ (0, import_jsx_runtime149.jsxs)(CompoundField, { children: [
21883
+ /* @__PURE__ */ (0, import_jsx_runtime149.jsx)(
21660
21884
  SelectField,
21661
21885
  {
21662
21886
  sizeToContent: true,
@@ -21678,7 +21902,7 @@ var DateFilter = class extends BaseFilter {
21678
21902
  ...tid[`${defaultTestId(this.label)}_dateOperation`]
21679
21903
  }
21680
21904
  ),
21681
- /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(
21905
+ /* @__PURE__ */ (0, import_jsx_runtime149.jsx)(
21682
21906
  DateField,
21683
21907
  {
21684
21908
  labelStyle: "inline",
@@ -21702,7 +21926,7 @@ function isDateFilterValue(value) {
21702
21926
  }
21703
21927
 
21704
21928
  // src/components/Filters/DateRangeFilter.tsx
21705
- var import_jsx_runtime146 = require("react/jsx-runtime");
21929
+ var import_jsx_runtime150 = require("react/jsx-runtime");
21706
21930
  function dateRangeFilter(props) {
21707
21931
  return (key) => new DateRangeFilter(key, props);
21708
21932
  }
@@ -21724,9 +21948,9 @@ var DateRangeFilter = class extends BaseFilter {
21724
21948
  }
21725
21949
  render(value, setValue, tid, inModal, vertical) {
21726
21950
  const { label, placeholderText, disabledDays, testFieldLabel, defaultValue } = this.props;
21727
- return /* @__PURE__ */ (0, import_jsx_runtime146.jsxs)(import_jsx_runtime146.Fragment, { children: [
21728
- vertical && /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(Label, { label }),
21729
- /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(
21951
+ return /* @__PURE__ */ (0, import_jsx_runtime150.jsxs)(import_jsx_runtime150.Fragment, { children: [
21952
+ vertical && /* @__PURE__ */ (0, import_jsx_runtime150.jsx)(Label, { label }),
21953
+ /* @__PURE__ */ (0, import_jsx_runtime150.jsx)(
21730
21954
  DateRangeField,
21731
21955
  {
21732
21956
  labelStyle: "inline",
@@ -21782,7 +22006,7 @@ function resolveNestedOptions(optionsOrLoad) {
21782
22006
  }
21783
22007
 
21784
22008
  // src/components/Filters/MultiFilter.tsx
21785
- var import_jsx_runtime147 = require("react/jsx-runtime");
22009
+ var import_jsx_runtime151 = require("react/jsx-runtime");
21786
22010
  function multiFilter(props) {
21787
22011
  return (key) => new MultiFilter(key, props);
21788
22012
  }
@@ -21796,7 +22020,7 @@ var MultiFilter = class extends BaseFilter {
21796
22020
  const { disabledOptions } = this.props;
21797
22021
  const disabledOptionsWithReasons = Object.fromEntries(disabledOptions?.map(disabledOptionToKeyedTuple) ?? []);
21798
22022
  const disabledKeys = Object.keys(disabledOptionsWithReasons);
21799
- return /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(
22023
+ return /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(
21800
22024
  ToggleChipGroup,
21801
22025
  {
21802
22026
  label: this.label,
@@ -21820,7 +22044,7 @@ var MultiFilter = class extends BaseFilter {
21820
22044
  );
21821
22045
  }
21822
22046
  const { defaultValue, nothingSelectedText, ...props } = this.props;
21823
- return /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(
22047
+ return /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(
21824
22048
  MultiSelectField,
21825
22049
  {
21826
22050
  ...props,
@@ -21839,7 +22063,7 @@ var MultiFilter = class extends BaseFilter {
21839
22063
  };
21840
22064
 
21841
22065
  // src/components/Filters/NumberRangeFilter.tsx
21842
- var import_jsx_runtime148 = require("react/jsx-runtime");
22066
+ var import_jsx_runtime152 = require("react/jsx-runtime");
21843
22067
  function numberRangeFilter(props) {
21844
22068
  return (key) => new NumberRangeFilter(key, props);
21845
22069
  }
@@ -21856,10 +22080,10 @@ var NumberRangeFilter = class extends BaseFilter {
21856
22080
  } = this.props;
21857
22081
  const min = value?.min ?? void 0;
21858
22082
  const max = value?.max ?? void 0;
21859
- return /* @__PURE__ */ (0, import_jsx_runtime148.jsxs)(import_jsx_runtime148.Fragment, { children: [
21860
- vertical && /* @__PURE__ */ (0, import_jsx_runtime148.jsxs)("div", { ...tid, children: [
21861
- /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(Label, { label }),
21862
- /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("div", { className: "pb1", children: /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(NumberField, { labelStyle: "inline", clearable: true, label: "Min", value: min, type: numberFieldType, numberFormatOptions, onChange: (minVal) => {
22083
+ return /* @__PURE__ */ (0, import_jsx_runtime152.jsxs)(import_jsx_runtime152.Fragment, { children: [
22084
+ vertical && /* @__PURE__ */ (0, import_jsx_runtime152.jsxs)("div", { ...tid, children: [
22085
+ /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(Label, { label }),
22086
+ /* @__PURE__ */ (0, import_jsx_runtime152.jsx)("div", { className: "pb1", children: /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(NumberField, { labelStyle: "inline", clearable: true, label: "Min", value: min, type: numberFieldType, numberFormatOptions, onChange: (minVal) => {
21863
22087
  const maxValue = max ? {
21864
22088
  max
21865
22089
  } : {};
@@ -21868,7 +22092,7 @@ var NumberRangeFilter = class extends BaseFilter {
21868
22092
  ...maxValue
21869
22093
  } : void 0);
21870
22094
  }, ...tid[`${defaultTestId(label)}_min_vertical`] }) }),
21871
- /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(NumberField, { labelStyle: "inline", clearable: true, label: "Max", value: max, type: numberFieldType, numberFormatOptions, onChange: (maxVal) => {
22095
+ /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(NumberField, { labelStyle: "inline", clearable: true, label: "Max", value: max, type: numberFieldType, numberFormatOptions, onChange: (maxVal) => {
21872
22096
  const minValue = min ? {
21873
22097
  min
21874
22098
  } : {};
@@ -21878,8 +22102,8 @@ var NumberRangeFilter = class extends BaseFilter {
21878
22102
  } : void 0);
21879
22103
  }, ...tid[`${defaultTestId(label)}_max_vertical`] })
21880
22104
  ] }),
21881
- !vertical && /* @__PURE__ */ (0, import_jsx_runtime148.jsxs)(CompoundField, { ...tid, children: [
21882
- /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(
22105
+ !vertical && /* @__PURE__ */ (0, import_jsx_runtime152.jsxs)(CompoundField, { ...tid, children: [
22106
+ /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
21883
22107
  NumberField,
21884
22108
  {
21885
22109
  sizeToContent: !inModal,
@@ -21901,7 +22125,7 @@ var NumberRangeFilter = class extends BaseFilter {
21901
22125
  ...tid[`${defaultTestId(label)}_min`]
21902
22126
  }
21903
22127
  ),
21904
- /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(NumberField, { sizeToContent: !inModal, labelStyle: "inline", clearable: true, label: !inModal ? `${label} Max` : "Max", value: max, type: numberFieldType, numberFormatOptions, onChange: (maxVal) => {
22128
+ /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(NumberField, { sizeToContent: !inModal, labelStyle: "inline", clearable: true, label: !inModal ? `${label} Max` : "Max", value: max, type: numberFieldType, numberFormatOptions, onChange: (maxVal) => {
21905
22129
  const minValue = min ? {
21906
22130
  min
21907
22131
  } : {};
@@ -21916,7 +22140,7 @@ var NumberRangeFilter = class extends BaseFilter {
21916
22140
  };
21917
22141
 
21918
22142
  // src/components/Filters/SingleFilter.tsx
21919
- var import_jsx_runtime149 = require("react/jsx-runtime");
22143
+ var import_jsx_runtime153 = require("react/jsx-runtime");
21920
22144
  function singleFilter(props) {
21921
22145
  return (key) => new SingleFilter(key, props);
21922
22146
  }
@@ -21937,7 +22161,7 @@ var SingleFilter = class extends BaseFilter {
21937
22161
  ...props
21938
22162
  } = this.props;
21939
22163
  const options = Array.isArray(maybeOptions) ? [allOption, ...maybeOptions] : { ...maybeOptions, current: maybeOptions.current };
21940
- return /* @__PURE__ */ (0, import_jsx_runtime149.jsx)(
22164
+ return /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(
21941
22165
  SelectField,
21942
22166
  {
21943
22167
  ...props,
@@ -21957,7 +22181,7 @@ var SingleFilter = class extends BaseFilter {
21957
22181
  };
21958
22182
 
21959
22183
  // src/components/Filters/TreeFilter.tsx
21960
- var import_jsx_runtime150 = require("react/jsx-runtime");
22184
+ var import_jsx_runtime154 = require("react/jsx-runtime");
21961
22185
  function treeFilter(props) {
21962
22186
  return (key) => new TreeFilter(key, props);
21963
22187
  }
@@ -21968,7 +22192,7 @@ var TreeFilter = class extends BaseFilter {
21968
22192
  }
21969
22193
  render(value, setValue, tid, inModal, vertical) {
21970
22194
  const { defaultValue, nothingSelectedText, filterBy = "root", ...props } = this.props;
21971
- return /* @__PURE__ */ (0, import_jsx_runtime150.jsx)(
22195
+ return /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(
21972
22196
  TreeSelectField,
21973
22197
  {
21974
22198
  ...props,
@@ -21988,7 +22212,7 @@ var TreeFilter = class extends BaseFilter {
21988
22212
  };
21989
22213
 
21990
22214
  // src/components/Filters/BooleanFilter.tsx
21991
- var import_jsx_runtime151 = require("react/jsx-runtime");
22215
+ var import_jsx_runtime155 = require("react/jsx-runtime");
21992
22216
  function booleanFilter(props) {
21993
22217
  return (key) => new BooleanFilter(key, props);
21994
22218
  }
@@ -22000,7 +22224,7 @@ var BooleanFilter = class extends BaseFilter {
22000
22224
  }
22001
22225
  render(value, setValue, tid, inModal, vertical) {
22002
22226
  const { options = defaultBooleanOptions, label, defaultValue, ...props } = this.props;
22003
- return /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(
22227
+ return /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(
22004
22228
  SelectField,
22005
22229
  {
22006
22230
  ...props,
@@ -22027,7 +22251,7 @@ var defaultBooleanOptions = [
22027
22251
  ];
22028
22252
 
22029
22253
  // src/components/Filters/CheckboxFilter.tsx
22030
- var import_jsx_runtime152 = require("react/jsx-runtime");
22254
+ var import_jsx_runtime156 = require("react/jsx-runtime");
22031
22255
  function checkboxFilter(props) {
22032
22256
  return (key) => new CheckboxFilter(key, {
22033
22257
  // If the user has set the offValue, that should be the default b/c we're only a two-state
@@ -22042,7 +22266,7 @@ var CheckboxFilter = class extends BaseFilter {
22042
22266
  }
22043
22267
  render(value, setValue, tid, inModal, vertical) {
22044
22268
  const { defaultValue, onValue = true, offValue = void 0, ...props } = this.props;
22045
- return /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
22269
+ return /* @__PURE__ */ (0, import_jsx_runtime156.jsx)(
22046
22270
  Checkbox,
22047
22271
  {
22048
22272
  ...props,
@@ -22061,10 +22285,10 @@ var CheckboxFilter = class extends BaseFilter {
22061
22285
  };
22062
22286
 
22063
22287
  // src/components/Filters/FilterModal.tsx
22064
- var import_react112 = require("react");
22288
+ var import_react116 = require("react");
22065
22289
 
22066
22290
  // src/components/Modal/ConfirmCloseModal.tsx
22067
- var import_jsx_runtime153 = require("react/jsx-runtime");
22291
+ var import_jsx_runtime157 = require("react/jsx-runtime");
22068
22292
  function ConfirmCloseModal(props) {
22069
22293
  const {
22070
22294
  onClose,
@@ -22078,11 +22302,11 @@ function ConfirmCloseModal(props) {
22078
22302
  function closeModal() {
22079
22303
  modalState.current = void 0;
22080
22304
  }
22081
- return /* @__PURE__ */ (0, import_jsx_runtime153.jsxs)(import_jsx_runtime153.Fragment, { children: [
22082
- /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(ModalHeader, { children: title }),
22083
- /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(ModalBody, { children: /* @__PURE__ */ (0, import_jsx_runtime153.jsx)("p", { children: message }) }),
22084
- /* @__PURE__ */ (0, import_jsx_runtime153.jsxs)(ModalFooter, { children: [
22085
- /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(
22305
+ return /* @__PURE__ */ (0, import_jsx_runtime157.jsxs)(import_jsx_runtime157.Fragment, { children: [
22306
+ /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(ModalHeader, { children: title }),
22307
+ /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(ModalBody, { children: /* @__PURE__ */ (0, import_jsx_runtime157.jsx)("p", { children: message }) }),
22308
+ /* @__PURE__ */ (0, import_jsx_runtime157.jsxs)(ModalFooter, { children: [
22309
+ /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(
22086
22310
  Button,
22087
22311
  {
22088
22312
  variant: "quaternary",
@@ -22093,7 +22317,7 @@ function ConfirmCloseModal(props) {
22093
22317
  }
22094
22318
  }
22095
22319
  ),
22096
- /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(
22320
+ /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(
22097
22321
  Button,
22098
22322
  {
22099
22323
  label: continueText,
@@ -22108,26 +22332,26 @@ function ConfirmCloseModal(props) {
22108
22332
  }
22109
22333
 
22110
22334
  // src/components/Modal/OpenModal.tsx
22111
- var import_react111 = require("react");
22112
- var import_jsx_runtime154 = require("react/jsx-runtime");
22335
+ var import_react115 = require("react");
22336
+ var import_jsx_runtime158 = require("react/jsx-runtime");
22113
22337
  function OpenModal(props) {
22114
22338
  const { openModal } = useModal();
22115
22339
  const { size, children, keepOpen } = props;
22116
- (0, import_react111.useEffect)(() => {
22340
+ (0, import_react115.useEffect)(() => {
22117
22341
  if (!keepOpen) {
22118
22342
  openModal({ size, content: children });
22119
22343
  }
22120
22344
  }, [keepOpen, openModal, size, children]);
22121
22345
  if (keepOpen) {
22122
- return /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(Modal, { size, content: children });
22346
+ return /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(Modal, { size, content: children });
22123
22347
  } else {
22124
- return /* @__PURE__ */ (0, import_jsx_runtime154.jsx)("div", { children: "dummy content" });
22348
+ return /* @__PURE__ */ (0, import_jsx_runtime158.jsx)("div", { children: "dummy content" });
22125
22349
  }
22126
22350
  }
22127
22351
 
22128
22352
  // src/components/Filters/FilterModal.tsx
22129
- var import_runtime93 = require("@homebound/truss/runtime");
22130
- var import_jsx_runtime155 = require("react/jsx-runtime");
22353
+ var import_runtime95 = require("@homebound/truss/runtime");
22354
+ var import_jsx_runtime159 = require("react/jsx-runtime");
22131
22355
  function FilterModal(props) {
22132
22356
  const {
22133
22357
  filter,
@@ -22138,20 +22362,20 @@ function FilterModal(props) {
22138
22362
  const {
22139
22363
  closeModal
22140
22364
  } = useModal();
22141
- const [modalFilter, setModalFilter] = (0, import_react112.useState)(filter);
22142
- return /* @__PURE__ */ (0, import_jsx_runtime155.jsxs)(import_jsx_runtime155.Fragment, { children: [
22143
- /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(ModalHeader, { children: "More Filters" }),
22144
- /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(ModalBody, { children: /* @__PURE__ */ (0, import_jsx_runtime155.jsx)("div", { className: "df fdc", children: safeEntries(filters).map(([key, f]) => /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(ModalFilterItem, { label: f.hideLabelInModal ? void 0 : f.label, children: f.render(modalFilter[key], (value) => setModalFilter(updateFilter(modalFilter, key, value)), testId, true, false) }, key)) }) }),
22145
- /* @__PURE__ */ (0, import_jsx_runtime155.jsxs)(ModalFooter, { xss: {
22365
+ const [modalFilter, setModalFilter] = (0, import_react116.useState)(filter);
22366
+ return /* @__PURE__ */ (0, import_jsx_runtime159.jsxs)(import_jsx_runtime159.Fragment, { children: [
22367
+ /* @__PURE__ */ (0, import_jsx_runtime159.jsx)(ModalHeader, { children: "More Filters" }),
22368
+ /* @__PURE__ */ (0, import_jsx_runtime159.jsx)(ModalBody, { children: /* @__PURE__ */ (0, import_jsx_runtime159.jsx)("div", { className: "df fdc", children: safeEntries(filters).map(([key, f]) => /* @__PURE__ */ (0, import_jsx_runtime159.jsx)(ModalFilterItem, { label: f.hideLabelInModal ? void 0 : f.label, children: f.render(modalFilter[key], (value) => setModalFilter(updateFilter(modalFilter, key, value)), testId, true, false) }, key)) }) }),
22369
+ /* @__PURE__ */ (0, import_jsx_runtime159.jsxs)(ModalFooter, { xss: {
22146
22370
  justifyContent: "jcsb"
22147
22371
  }, children: [
22148
- /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(Button, { label: "Clear", variant: "tertiary", disabled: safeKeys(filters).filter((fk) => modalFilter[fk] !== void 0).length === 0, onClick: () => (
22372
+ /* @__PURE__ */ (0, import_jsx_runtime159.jsx)(Button, { label: "Clear", variant: "tertiary", disabled: safeKeys(filters).filter((fk) => modalFilter[fk] !== void 0).length === 0, onClick: () => (
22149
22373
  // Only remove the filters keys that exist in the modal.
22150
22374
  setModalFilter(safeKeys(filters).reduce((acc, fk) => omitKey(fk, acc), modalFilter))
22151
22375
  ), ...testId.modalClear }),
22152
- /* @__PURE__ */ (0, import_jsx_runtime155.jsxs)("div", { className: "df gap1", children: [
22153
- /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(Button, { label: "Cancel", variant: "quaternary", onClick: closeModal, ...testId.modalClose }),
22154
- /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(Button, { label: "Apply", onClick: () => {
22376
+ /* @__PURE__ */ (0, import_jsx_runtime159.jsxs)("div", { className: "df gap1", children: [
22377
+ /* @__PURE__ */ (0, import_jsx_runtime159.jsx)(Button, { label: "Cancel", variant: "quaternary", onClick: closeModal, ...testId.modalClose }),
22378
+ /* @__PURE__ */ (0, import_jsx_runtime159.jsx)(Button, { label: "Apply", onClick: () => {
22155
22379
  onApply(modalFilter);
22156
22380
  closeModal();
22157
22381
  }, ...testId.modalApply })
@@ -22163,7 +22387,7 @@ function ModalFilterItem({
22163
22387
  label,
22164
22388
  children
22165
22389
  }) {
22166
- return /* @__PURE__ */ (0, import_jsx_runtime155.jsxs)("div", { ...(0, import_runtime93.trussProps)({
22390
+ return /* @__PURE__ */ (0, import_jsx_runtime159.jsxs)("div", { ...(0, import_runtime95.trussProps)({
22167
22391
  marginBottom: "mb4",
22168
22392
  ...!label ? {
22169
22393
  borderTopStyle: "bts_solid",
@@ -22171,8 +22395,8 @@ function ModalFilterItem({
22171
22395
  borderColor: "bcGray200"
22172
22396
  } : {}
22173
22397
  }), children: [
22174
- label && /* @__PURE__ */ (0, import_jsx_runtime155.jsx)("h2", { className: "fw4 fz_16px lh_24px mb2", children: label }),
22175
- /* @__PURE__ */ (0, import_jsx_runtime155.jsx)("div", { ...(0, import_runtime93.trussProps)({
22398
+ label && /* @__PURE__ */ (0, import_jsx_runtime159.jsx)("h2", { className: "fw4 fz_16px lh_24px mb2", children: label }),
22399
+ /* @__PURE__ */ (0, import_jsx_runtime159.jsx)("div", { ...(0, import_runtime95.trussProps)({
22176
22400
  ...!label ? {
22177
22401
  paddingTop: "pt3"
22178
22402
  } : {}
@@ -22181,9 +22405,9 @@ function ModalFilterItem({
22181
22405
  }
22182
22406
 
22183
22407
  // src/components/Filters/Filters.tsx
22184
- var import_react113 = require("react");
22185
- var import_runtime94 = require("@homebound/truss/runtime");
22186
- var import_jsx_runtime156 = require("react/jsx-runtime");
22408
+ var import_react117 = require("react");
22409
+ var import_runtime96 = require("@homebound/truss/runtime");
22410
+ var import_jsx_runtime160 = require("react/jsx-runtime");
22187
22411
  function Filters(props) {
22188
22412
  const {
22189
22413
  filter,
@@ -22197,7 +22421,7 @@ function Filters(props) {
22197
22421
  const {
22198
22422
  openModal
22199
22423
  } = useModal();
22200
- const [pageFilters, modalFilters] = (0, import_react113.useMemo)(() => {
22424
+ const [pageFilters, modalFilters] = (0, import_react117.useMemo)(() => {
22201
22425
  const impls = safeEntries(filterDefs).map(([key, fn]) => [key, fn(key)]);
22202
22426
  if (!vertical && impls.length > numberOfInlineFilters) {
22203
22427
  return [Object.fromEntries(impls.slice(0, numberOfInlineFilters - 1)), Object.fromEntries(impls.slice(numberOfInlineFilters - 1))];
@@ -22205,8 +22429,8 @@ function Filters(props) {
22205
22429
  return [Object.fromEntries(impls), {}];
22206
22430
  }, [numberOfInlineFilters, vertical, filterDefs]);
22207
22431
  const numModalFilters = safeKeys(modalFilters).filter((fk) => filter[fk] !== void 0).length;
22208
- const maybeGroupByField = groupBy ? /* @__PURE__ */ (0, import_jsx_runtime156.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime156.jsx)(SelectField, { label: "Group by", labelStyle: !vertical ? "inline" : "above", sizeToContent: !vertical, options: groupBy.options, getOptionValue: (o) => o.id, getOptionLabel: (o) => o.name, value: groupBy.value, onSelect: (g) => g && groupBy.setValue(g) }) }) : null;
22209
- return /* @__PURE__ */ (0, import_jsx_runtime156.jsxs)("div", { ...(0, import_runtime94.trussProps)({
22432
+ const maybeGroupByField = groupBy ? /* @__PURE__ */ (0, import_jsx_runtime160.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime160.jsx)(SelectField, { label: "Group by", labelStyle: !vertical ? "inline" : "above", sizeToContent: !vertical, options: groupBy.options, getOptionValue: (o) => o.id, getOptionLabel: (o) => o.name, value: groupBy.value, onSelect: (g) => g && groupBy.setValue(g) }) }) : null;
22433
+ return /* @__PURE__ */ (0, import_jsx_runtime160.jsxs)("div", { ...(0, import_runtime96.trussProps)({
22210
22434
  ...vertical ? {
22211
22435
  display: "df",
22212
22436
  flexDirection: "fdc",
@@ -22218,18 +22442,18 @@ function Filters(props) {
22218
22442
  }
22219
22443
  }), ...testId, children: [
22220
22444
  maybeGroupByField,
22221
- safeEntries(pageFilters).map(([key, f]) => /* @__PURE__ */ (0, import_jsx_runtime156.jsx)("div", { children: f.render(filter[key], (value) => onChange(updateFilter(filter, key, value)), testId, false, vertical) }, key)),
22222
- Object.keys(modalFilters).length > 0 && /* @__PURE__ */ (0, import_jsx_runtime156.jsx)(Button, { label: "More Filters", endAdornment: /* @__PURE__ */ (0, import_jsx_runtime156.jsx)(CountBadge, { count: numModalFilters, hideIfZero: true }), variant: "secondary", onClick: () => openModal({
22445
+ safeEntries(pageFilters).map(([key, f]) => /* @__PURE__ */ (0, import_jsx_runtime160.jsx)("div", { children: f.render(filter[key], (value) => onChange(updateFilter(filter, key, value)), testId, false, vertical) }, key)),
22446
+ Object.keys(modalFilters).length > 0 && /* @__PURE__ */ (0, import_jsx_runtime160.jsx)(Button, { label: "More Filters", endAdornment: /* @__PURE__ */ (0, import_jsx_runtime160.jsx)(CountBadge, { count: numModalFilters, hideIfZero: true }), variant: "secondary", onClick: () => openModal({
22223
22447
  // Spreading `props` to pass along `data-testid`
22224
- content: /* @__PURE__ */ (0, import_jsx_runtime156.jsx)(FilterModal, { ...props, filter, onApply: onChange, filters: modalFilters })
22448
+ content: /* @__PURE__ */ (0, import_jsx_runtime160.jsx)(FilterModal, { ...props, filter, onApply: onChange, filters: modalFilters })
22225
22449
  }), ...testId.moreFiltersBtn }),
22226
- Object.keys(filter).length > 0 && /* @__PURE__ */ (0, import_jsx_runtime156.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime156.jsx)(Button, { label: "Clear", variant: "tertiary", onClick: () => onChange({}), ...testId.clearBtn }) })
22450
+ Object.keys(filter).length > 0 && /* @__PURE__ */ (0, import_jsx_runtime160.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime160.jsx)(Button, { label: "Clear", variant: "tertiary", onClick: () => onChange({}), ...testId.clearBtn }) })
22227
22451
  ] });
22228
22452
  }
22229
- var _Filters = (0, import_react113.memo)(Filters);
22453
+ var _Filters = (0, import_react117.memo)(Filters);
22230
22454
 
22231
22455
  // src/components/Filters/ToggleFilter.tsx
22232
- var import_jsx_runtime157 = require("react/jsx-runtime");
22456
+ var import_jsx_runtime161 = require("react/jsx-runtime");
22233
22457
  function toggleFilter(props) {
22234
22458
  return (key) => new ToggleFilter(key, {
22235
22459
  // If the user has set the offValue, that should be the default b/c we're only a two-state
@@ -22244,7 +22468,7 @@ var ToggleFilter = class extends BaseFilter {
22244
22468
  }
22245
22469
  render(value, setValue, tid, inModal, vertical) {
22246
22470
  const { defaultValue, onValue = true, offValue = void 0, ...props } = this.props;
22247
- return /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(
22471
+ return /* @__PURE__ */ (0, import_jsx_runtime161.jsx)(
22248
22472
  Switch,
22249
22473
  {
22250
22474
  ...props,
@@ -22264,11 +22488,11 @@ var ToggleFilter = class extends BaseFilter {
22264
22488
  };
22265
22489
 
22266
22490
  // src/components/Table/components/EditColumnsButton.tsx
22267
- var import_react114 = require("react");
22268
- var import_react_aria53 = require("react-aria");
22491
+ var import_react118 = require("react");
22492
+ var import_react_aria54 = require("react-aria");
22269
22493
  var import_react_stately18 = require("react-stately");
22270
- var import_runtime95 = require("@homebound/truss/runtime");
22271
- var import_jsx_runtime158 = require("react/jsx-runtime");
22494
+ var import_runtime97 = require("@homebound/truss/runtime");
22495
+ var import_jsx_runtime162 = require("react/jsx-runtime");
22272
22496
  function EditColumnsButton(props) {
22273
22497
  const {
22274
22498
  defaultOpen,
@@ -22279,17 +22503,17 @@ function EditColumnsButton(props) {
22279
22503
  const state = (0, import_react_stately18.useMenuTriggerState)({
22280
22504
  isOpen: defaultOpen
22281
22505
  });
22282
- const buttonRef = (0, import_react114.useRef)(null);
22506
+ const buttonRef = (0, import_react118.useRef)(null);
22283
22507
  const {
22284
22508
  menuTriggerProps
22285
- } = (0, import_react_aria53.useMenuTrigger)({
22509
+ } = (0, import_react_aria54.useMenuTrigger)({
22286
22510
  isDisabled: !!disabled
22287
22511
  }, state, buttonRef);
22288
22512
  const tid = useTestIds(props, "columns");
22289
22513
  const {
22290
22514
  sm
22291
22515
  } = useBreakpoint();
22292
- const options = (0, import_react114.useMemo)(() => columns.filter((column2) => column2.canHide).filter((column2) => {
22516
+ const options = (0, import_react118.useMemo)(() => columns.filter((column2) => column2.canHide).filter((column2) => {
22293
22517
  if (!column2.name || column2.name.length === 0 || !column2.id || column2.id.length === 0) {
22294
22518
  console.warn("Column is missing 'name' and/or 'id' property required by the Edit Columns button", column2);
22295
22519
  return false;
@@ -22300,15 +22524,15 @@ function EditColumnsButton(props) {
22300
22524
  value: column2.id
22301
22525
  })), [columns]);
22302
22526
  const selectedValues = useComputed(() => api.getVisibleColumnIds(), [api]);
22303
- const setSelectedValues = (0, import_react114.useCallback)((ids) => {
22527
+ const setSelectedValues = (0, import_react118.useCallback)((ids) => {
22304
22528
  api.resetColumnWidths();
22305
22529
  api.setVisibleColumns(columns.filter((column2) => column2.canHide ? ids.includes(column2.id) : true).map((c) => c.id));
22306
22530
  }, [columns, api]);
22307
- const hasHiddenColumn = (0, import_react114.useMemo)(() => {
22531
+ const hasHiddenColumn = (0, import_react118.useMemo)(() => {
22308
22532
  const selectableOptionValues = options.map((option) => option.value);
22309
22533
  return selectableOptionValues.some((option) => !selectedValues.includes(option));
22310
22534
  }, [options, selectedValues]);
22311
- return /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(OverlayTrigger, { ...props, trigger: sm ? {
22535
+ return /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(OverlayTrigger, { ...props, trigger: sm ? {
22312
22536
  icon: hasHiddenColumn ? "columnsBadged" : "columns",
22313
22537
  variant: "outline"
22314
22538
  } : {
@@ -22316,7 +22540,7 @@ function EditColumnsButton(props) {
22316
22540
  label: "",
22317
22541
  size: "md",
22318
22542
  variant: "secondaryBlack"
22319
- }, menuTriggerProps, state, buttonRef, ...tid, children: /* @__PURE__ */ (0, import_jsx_runtime158.jsxs)("div", { ...(0, import_runtime95.trussProps)({
22543
+ }, menuTriggerProps, state, buttonRef, ...tid, children: /* @__PURE__ */ (0, import_jsx_runtime162.jsxs)("div", { ...(0, import_runtime97.trussProps)({
22320
22544
  display: "df",
22321
22545
  flexDirection: "fdc",
22322
22546
  backgroundColor: ["bgColor_var", {
@@ -22329,11 +22553,11 @@ function EditColumnsButton(props) {
22329
22553
  maxHeight: "maxh_512px",
22330
22554
  boxShadow: "bshBasic h_bshHover"
22331
22555
  }), children: [
22332
- /* @__PURE__ */ (0, import_jsx_runtime158.jsx)("div", { className: "dg gtc_1fr_auto gap2 pt2 pb2 pr2 pl2 fg1 mh0 oya", children: options.map((option) => /* @__PURE__ */ (0, import_jsx_runtime158.jsxs)(import_react114.Fragment, { children: [
22333
- /* @__PURE__ */ (0, import_jsx_runtime158.jsx)("div", { className: "fw4 fz_14px lh_20px wsnw oh to_ellipsis pr1", children: option.label }),
22334
- /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(Switch, { compact: true, selected: selectedValues.includes(option.value), onChange: (value) => setSelectedValues(value ? [...selectedValues, option.value] : selectedValues.filter((v) => v !== option.value)), labelStyle: "hidden", label: option.label, ...tid[`option${option.value}`] })
22556
+ /* @__PURE__ */ (0, import_jsx_runtime162.jsx)("div", { className: "dg gtc_1fr_auto gap2 pt2 pb2 pr2 pl2 fg1 mh0 oya", children: options.map((option) => /* @__PURE__ */ (0, import_jsx_runtime162.jsxs)(import_react118.Fragment, { children: [
22557
+ /* @__PURE__ */ (0, import_jsx_runtime162.jsx)("div", { className: "fw4 fz_14px lh_20px wsnw oh to_ellipsis pr1", children: option.label }),
22558
+ /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(Switch, { compact: true, selected: selectedValues.includes(option.value), onChange: (value) => setSelectedValues(value ? [...selectedValues, option.value] : selectedValues.filter((v) => v !== option.value)), labelStyle: "hidden", label: option.label, ...tid[`option${option.value}`] })
22335
22559
  ] }, option.value)) }),
22336
- /* @__PURE__ */ (0, import_jsx_runtime158.jsx)("div", { ...(0, import_runtime95.trussProps)({
22560
+ /* @__PURE__ */ (0, import_jsx_runtime162.jsx)("div", { ...(0, import_runtime97.trussProps)({
22337
22561
  display: "df",
22338
22562
  justifyContent: "jcc",
22339
22563
  paddingTop: "pt2",
@@ -22345,12 +22569,12 @@ function EditColumnsButton(props) {
22345
22569
  borderColor: ["bc_var", {
22346
22570
  "--borderColor": "var(--b-surface-separator)"
22347
22571
  }]
22348
- }), children: /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(Button, { variant: "tertiary", label: "Reset Column Widths", onClick: () => api.resetColumnWidths() }) })
22572
+ }), children: /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(Button, { variant: "tertiary", label: "Reset Column Widths", onClick: () => api.resetColumnWidths() }) })
22349
22573
  ] }) });
22350
22574
  }
22351
22575
 
22352
22576
  // src/components/Table/components/ViewToggleButton.tsx
22353
- var import_jsx_runtime159 = require("react/jsx-runtime");
22577
+ var import_jsx_runtime163 = require("react/jsx-runtime");
22354
22578
  function ViewToggleButton({ view, onChange, defaultOpen }) {
22355
22579
  const { sm } = useBreakpoint();
22356
22580
  const tid = useTestIds({}, "viewToggleButton");
@@ -22359,7 +22583,7 @@ function ViewToggleButton({ view, onChange, defaultOpen }) {
22359
22583
  { label: "Card", icon: "tile", onClick: () => onChange("card") }
22360
22584
  ];
22361
22585
  const icon = view === "list" ? "projects" : "tile";
22362
- return /* @__PURE__ */ (0, import_jsx_runtime159.jsx)(
22586
+ return /* @__PURE__ */ (0, import_jsx_runtime163.jsx)(
22363
22587
  ButtonMenu,
22364
22588
  {
22365
22589
  trigger: sm ? { icon, variant: "outline" } : { icon, label: "", size: "md", variant: "secondaryBlack" },
@@ -22375,12 +22599,12 @@ var import_use_debounce7 = require("use-debounce");
22375
22599
  var import_use_query_params3 = require("use-query-params");
22376
22600
 
22377
22601
  // src/components/Layout/GridTableLayout/FilterPanel.tsx
22378
- var import_runtime96 = require("@homebound/truss/runtime");
22602
+ var import_runtime98 = require("@homebound/truss/runtime");
22379
22603
 
22380
22604
  // src/components/Layout/GridTableLayout/GroupByField.tsx
22381
- var import_jsx_runtime160 = require("react/jsx-runtime");
22605
+ var import_jsx_runtime164 = require("react/jsx-runtime");
22382
22606
  function GroupByField({ value, setValue, options }) {
22383
- return /* @__PURE__ */ (0, import_jsx_runtime160.jsx)(
22607
+ return /* @__PURE__ */ (0, import_jsx_runtime164.jsx)(
22384
22608
  SelectField,
22385
22609
  {
22386
22610
  label: "Group by",
@@ -22396,9 +22620,9 @@ function GroupByField({ value, setValue, options }) {
22396
22620
  }
22397
22621
 
22398
22622
  // src/components/Layout/GridTableLayout/FilterPanel.tsx
22399
- var import_jsx_runtime161 = require("react/jsx-runtime");
22623
+ var import_jsx_runtime165 = require("react/jsx-runtime");
22400
22624
  function FilterPanel(props) {
22401
- return props.isOpen ? /* @__PURE__ */ (0, import_jsx_runtime161.jsx)(FilterPanelOpen, { ...props }) : /* @__PURE__ */ (0, import_jsx_runtime161.jsx)(FilterPanelClosed, { ...props });
22625
+ return props.isOpen ? /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(FilterPanelOpen, { ...props }) : /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(FilterPanelClosed, { ...props });
22402
22626
  }
22403
22627
  function FilterPanelOpen({
22404
22628
  groupBy,
@@ -22411,7 +22635,7 @@ function FilterPanelOpen({
22411
22635
  const inDocumentScrollLayout = useDocumentScrollLayout();
22412
22636
  const activeFilterCount = getActiveFilterCount(filter ?? {});
22413
22637
  const filterControls = filter && setFilter ? buildFilterControls(filterImpls, filter, setFilter, tid) : null;
22414
- return /* @__PURE__ */ (0, import_jsx_runtime161.jsxs)("div", { ...(0, import_runtime96.trussProps)({
22638
+ return /* @__PURE__ */ (0, import_jsx_runtime165.jsxs)("div", { ...(0, import_runtime98.trussProps)({
22415
22639
  ...{
22416
22640
  display: "df",
22417
22641
  alignItems: "aic",
@@ -22427,9 +22651,9 @@ function FilterPanelOpen({
22427
22651
  },
22428
22652
  ...inDocumentScrollLayout ? pageContentPaddingX : void 0
22429
22653
  }), children: [
22430
- groupBy && /* @__PURE__ */ (0, import_jsx_runtime161.jsx)(GroupByField, { ...groupBy }),
22654
+ groupBy && /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(GroupByField, { ...groupBy }),
22431
22655
  filterControls,
22432
- activeFilterCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime161.jsx)(Button, { label: "Clear", variant: "tertiary", onClick: () => maybeCall(onClear), ...tid.clearBtn })
22656
+ activeFilterCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(Button, { label: "Clear", variant: "tertiary", onClick: () => maybeCall(onClear), ...tid.clearBtn })
22433
22657
  ] });
22434
22658
  }
22435
22659
  function FilterPanelClosed({
@@ -22443,7 +22667,7 @@ function FilterPanelClosed({
22443
22667
  if (!filter || !setFilter) return null;
22444
22668
  const chips = safeEntries(filterImpls).flatMap(([key, f]) => chipsForFilterKey(key, f, filter, setFilter, tid));
22445
22669
  if (chips.length === 0) return null;
22446
- return /* @__PURE__ */ (0, import_jsx_runtime161.jsxs)("div", { ...(0, import_runtime96.trussProps)({
22670
+ return /* @__PURE__ */ (0, import_jsx_runtime165.jsxs)("div", { ...(0, import_runtime98.trussProps)({
22447
22671
  display: "df",
22448
22672
  gap: "gap1",
22449
22673
  alignItems: "aic",
@@ -22454,14 +22678,14 @@ function FilterPanelClosed({
22454
22678
  } : {}
22455
22679
  }), children: [
22456
22680
  chips,
22457
- /* @__PURE__ */ (0, import_jsx_runtime161.jsx)(Button, { label: "Clear", variant: "tertiary", onClick: () => maybeCall(onClear), ...tid.clearBtn })
22681
+ /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(Button, { label: "Clear", variant: "tertiary", onClick: () => maybeCall(onClear), ...tid.clearBtn })
22458
22682
  ] });
22459
22683
  }
22460
22684
  function buildFilterControls(filterImpls, filter, setFilter, testId) {
22461
22685
  const entries = safeEntries(filterImpls);
22462
22686
  const nonCheckbox = entries.filter(([_, f]) => !f.hideLabelInModal);
22463
22687
  const checkbox = entries.filter(([_, f]) => f.hideLabelInModal);
22464
- return [...nonCheckbox, ...checkbox].map(([key, f]) => /* @__PURE__ */ (0, import_jsx_runtime161.jsx)("div", { children: f.render(filter[key], (value) => setFilter(updateFilter(filter, key, value)), testId, false, false) }, key));
22688
+ return [...nonCheckbox, ...checkbox].map(([key, f]) => /* @__PURE__ */ (0, import_jsx_runtime165.jsx)("div", { children: f.render(filter[key], (value) => setFilter(updateFilter(filter, key, value)), testId, false, false) }, key));
22465
22689
  }
22466
22690
  function buildFilterImpls(filterDefs) {
22467
22691
  return Object.fromEntries(safeEntries(filterDefs).map(([key, fn]) => [key, fn(key)]));
@@ -22475,17 +22699,17 @@ function chipsForFilterKey(key, f, filter, onChange, testId) {
22475
22699
  if (!isDefined(label2)) return [];
22476
22700
  const chipKey = `${String(key)}_${item}`;
22477
22701
  const newArray = value.filter((v) => v !== item);
22478
- return /* @__PURE__ */ (0, import_jsx_runtime161.jsx)(ToggleChip, { text: label2, onClick: () => onChange(updateFilter(filter, key, newArray.length > 0 ? newArray : void 0)), ...testId[`chip_${chipKey}`] }, chipKey);
22702
+ return /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(ToggleChip, { text: label2, onClick: () => onChange(updateFilter(filter, key, newArray.length > 0 ? newArray : void 0)), ...testId[`chip_${chipKey}`] }, chipKey);
22479
22703
  });
22480
22704
  }
22481
22705
  const label = f.formatSelectedFilterLabel(value);
22482
22706
  if (!isDefined(label)) return [];
22483
- return /* @__PURE__ */ (0, import_jsx_runtime161.jsx)(ToggleChip, { text: label, onClick: () => onChange(updateFilter(filter, key, void 0)), ...testId[`chip_${String(key)}`] }, String(key));
22707
+ return /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(ToggleChip, { text: label, onClick: () => onChange(updateFilter(filter, key, void 0)), ...testId[`chip_${String(key)}`] }, String(key));
22484
22708
  }
22485
22709
 
22486
22710
  // src/components/Layout/GridTableLayout/GridTableLayoutActions.tsx
22487
- var import_runtime97 = require("@homebound/truss/runtime");
22488
- var import_jsx_runtime162 = require("react/jsx-runtime");
22711
+ var import_runtime99 = require("@homebound/truss/runtime");
22712
+ var import_jsx_runtime166 = require("react/jsx-runtime");
22489
22713
  function GridTableLayoutActionsComponent(props) {
22490
22714
  const {
22491
22715
  filter,
@@ -22509,14 +22733,14 @@ function GridTableLayoutActionsComponent(props) {
22509
22733
  sm
22510
22734
  } = useBreakpoint();
22511
22735
  const inDocumentScrollLayout = useDocumentScrollLayout();
22512
- const [showSearch, setShowSearch] = (0, import_react115.useState)(false);
22513
- const [showFilters, setShowFilters] = (0, import_react115.useState)(false);
22736
+ const [showSearch, setShowSearch] = (0, import_react119.useState)(false);
22737
+ const [showFilters, setShowFilters] = (0, import_react119.useState)(false);
22514
22738
  const [{
22515
22739
  search: initialValue
22516
22740
  }, setQueryParams] = (0, import_use_query_params3.useQueryParams)({
22517
22741
  search: import_use_query_params3.StringParam
22518
22742
  });
22519
- const [searchValue, setSearchValue] = (0, import_react115.useState)(initialValue || "");
22743
+ const [searchValue, setSearchValue] = (0, import_react119.useState)(initialValue || "");
22520
22744
  const handleSearchDebounced = (0, import_use_debounce7.useDebouncedCallback)((value) => {
22521
22745
  if (searchProps) {
22522
22746
  searchProps.onSearch(value);
@@ -22531,12 +22755,12 @@ function GridTableLayoutActionsComponent(props) {
22531
22755
  const controlCount = filterCount + (hasGroupBy ? 1 : 0);
22532
22756
  const hasFilterControls = controlCount > 0;
22533
22757
  const showInlineControl = !sm && controlCount === 1 && (hasGroupBy || !!(filter && setFilter));
22534
- const activeFilterCount = (0, import_react115.useMemo)(() => filter ? getActiveFilterCount(filter) : 0, [filter]);
22535
- const filterImpls = (0, import_react115.useMemo)(() => filterDefs ? buildFilterImpls(filterDefs) : {}, [filterDefs]);
22536
- const searchTextField = /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(TextField, { label: "Search", labelStyle: "hidden", value: searchValue, onChange: (v) => {
22758
+ const activeFilterCount = (0, import_react119.useMemo)(() => filter ? getActiveFilterCount(filter) : 0, [filter]);
22759
+ const filterImpls = (0, import_react119.useMemo)(() => filterDefs ? buildFilterImpls(filterDefs) : {}, [filterDefs]);
22760
+ const searchTextField = /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(TextField, { label: "Search", labelStyle: "hidden", value: searchValue, onChange: (v) => {
22537
22761
  setSearchValue(v ?? "");
22538
22762
  handleSearchDebounced(v ?? "");
22539
- }, placeholder: "Search", clearable: true, fullWidth: true, startAdornment: /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(Icon, { icon: "search", color: "--b-on-surface-muted" /* OnSurfaceMuted */ }) });
22763
+ }, placeholder: "Search", clearable: true, fullWidth: true, startAdornment: /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(Icon, { icon: "search", color: "--b-on-surface-muted" /* OnSurfaceMuted */ }) });
22540
22764
  if (searchApi) {
22541
22765
  searchApi.current = {
22542
22766
  clear: () => {
@@ -22548,7 +22772,7 @@ function GridTableLayoutActionsComponent(props) {
22548
22772
  }
22549
22773
  };
22550
22774
  }
22551
- return /* @__PURE__ */ (0, import_jsx_runtime162.jsxs)("div", { ...(0, import_runtime97.trussProps)({
22775
+ return /* @__PURE__ */ (0, import_jsx_runtime166.jsxs)("div", { ...(0, import_runtime99.trussProps)({
22552
22776
  display: "df",
22553
22777
  flexDirection: "fdc",
22554
22778
  gap: "gap1",
@@ -22557,7 +22781,7 @@ function GridTableLayoutActionsComponent(props) {
22557
22781
  paddingBottom: "pb3"
22558
22782
  } : {}
22559
22783
  }), children: [
22560
- /* @__PURE__ */ (0, import_jsx_runtime162.jsxs)("div", { ...(0, import_runtime97.trussProps)({
22784
+ /* @__PURE__ */ (0, import_jsx_runtime166.jsxs)("div", { ...(0, import_runtime99.trussProps)({
22561
22785
  ...{
22562
22786
  display: "df",
22563
22787
  gap: "gap1",
@@ -22566,36 +22790,36 @@ function GridTableLayoutActionsComponent(props) {
22566
22790
  },
22567
22791
  ...inDocumentScrollLayout ? pageContentPaddingX : void 0
22568
22792
  }), children: [
22569
- /* @__PURE__ */ (0, import_jsx_runtime162.jsxs)("div", { className: "df gap_12px aic", children: [
22570
- !sm && hasSearch && /* @__PURE__ */ (0, import_jsx_runtime162.jsx)("div", { className: "w_244px", children: searchTextField }),
22571
- sm && hasSearch && /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(IconButton, { variant: "outline", icon: searchValue ? "searchBadged" : "search", label: "Search", onClick: () => setShowSearch(!showSearch), active: showSearch, ...testId.searchButton }),
22572
- sm && hasFilterControls && /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(IconButton, { variant: "outline", icon: activeFilterCount > 0 ? "filterBadged" : "filter", label: "Filter", onClick: () => setShowFilters(!showFilters), active: showFilters, ...testId.filterSmallButton }),
22573
- showInlineControl && (groupBy ? /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(GroupByField, { ...groupBy }) : filter && setFilter && buildFilterControls(filterImpls, filter, setFilter, filterTid)),
22574
- !sm && hasFilterControls && !showInlineControl && /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(Button, { label: "Filter", icon: "filter", size: "md", endAdornment: /* @__PURE__ */ (0, import_jsx_runtime162.jsxs)("div", { className: "df aic gap1", children: [
22575
- activeFilterCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(CountBadge, { count: activeFilterCount }),
22576
- /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(Icon, { icon: showFilters ? "chevronUp" : "chevronDown" })
22793
+ /* @__PURE__ */ (0, import_jsx_runtime166.jsxs)("div", { className: "df gap_12px aic", children: [
22794
+ !sm && hasSearch && /* @__PURE__ */ (0, import_jsx_runtime166.jsx)("div", { className: "w_244px", children: searchTextField }),
22795
+ sm && hasSearch && /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(IconButton, { variant: "outline", icon: searchValue ? "searchBadged" : "search", label: "Search", onClick: () => setShowSearch(!showSearch), active: showSearch, ...testId.searchButton }),
22796
+ sm && hasFilterControls && /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(IconButton, { variant: "outline", icon: activeFilterCount > 0 ? "filterBadged" : "filter", label: "Filter", onClick: () => setShowFilters(!showFilters), active: showFilters, ...testId.filterSmallButton }),
22797
+ showInlineControl && (groupBy ? /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(GroupByField, { ...groupBy }) : filter && setFilter && buildFilterControls(filterImpls, filter, setFilter, filterTid)),
22798
+ !sm && hasFilterControls && !showInlineControl && /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(Button, { label: "Filter", icon: "filter", size: "md", endAdornment: /* @__PURE__ */ (0, import_jsx_runtime166.jsxs)("div", { className: "df aic gap1", children: [
22799
+ activeFilterCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(CountBadge, { count: activeFilterCount }),
22800
+ /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(Icon, { icon: showFilters ? "chevronUp" : "chevronDown" })
22577
22801
  ] }), variant: "secondaryBlack", onClick: () => setShowFilters(!showFilters), active: showFilters, ...testId.filterButton })
22578
22802
  ] }),
22579
- (hasHideableColumns || withCardView || actionMenu) && /* @__PURE__ */ (0, import_jsx_runtime162.jsxs)("div", { className: "df aic gap_12px", children: [
22580
- hasHideableColumns && view === "list" && columns && api && /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(EditColumnsButton, { columns, api, tooltip: "Display columns" }),
22581
- withCardView && view !== void 0 && setView && /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(ViewToggleButton, { view, onChange: setView }),
22582
- actionMenu && /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(ButtonMenu, { ...actionMenu, trigger: {
22803
+ (hasHideableColumns || withCardView || actionMenu) && /* @__PURE__ */ (0, import_jsx_runtime166.jsxs)("div", { className: "df aic gap_12px", children: [
22804
+ hasHideableColumns && view === "list" && columns && api && /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(EditColumnsButton, { columns, api, tooltip: "Display columns" }),
22805
+ withCardView && view !== void 0 && setView && /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(ViewToggleButton, { view, onChange: setView }),
22806
+ actionMenu && /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(ButtonMenu, { ...actionMenu, trigger: {
22583
22807
  icon: "verticalDots"
22584
22808
  } })
22585
22809
  ] })
22586
22810
  ] }),
22587
- sm && showSearch && /* @__PURE__ */ (0, import_jsx_runtime162.jsx)("div", { ...(0, import_runtime97.trussProps)(pageContentPaddingX), children: searchTextField }),
22588
- hasFilterControls && !showInlineControl && /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(FilterPanel, { isOpen: showFilters, groupBy, filterImpls, filter, setFilter, onClear: clearFilters })
22811
+ sm && showSearch && /* @__PURE__ */ (0, import_jsx_runtime166.jsx)("div", { ...(0, import_runtime99.trussProps)(pageContentPaddingX), children: searchTextField }),
22812
+ hasFilterControls && !showInlineControl && /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(FilterPanel, { isOpen: showFilters, groupBy, filterImpls, filter, setFilter, onClear: clearFilters })
22589
22813
  ] });
22590
22814
  }
22591
- var _GridTableLayoutActions = (0, import_react115.memo)(GridTableLayoutActionsComponent);
22815
+ var _GridTableLayoutActions = (0, import_react119.memo)(GridTableLayoutActionsComponent);
22592
22816
 
22593
22817
  // src/components/Layout/GridTableLayout/QueryTable.tsx
22594
- var import_react116 = require("react");
22818
+ var import_react120 = require("react");
22595
22819
 
22596
22820
  // src/components/LoadingSkeleton.tsx
22597
- var import_runtime98 = require("@homebound/truss/runtime");
22598
- var import_jsx_runtime163 = require("react/jsx-runtime");
22821
+ var import_runtime100 = require("@homebound/truss/runtime");
22822
+ var import_jsx_runtime167 = require("react/jsx-runtime");
22599
22823
  function LoadingSkeleton({
22600
22824
  rows = 1,
22601
22825
  columns = 1,
@@ -22607,18 +22831,18 @@ function LoadingSkeleton({
22607
22831
  const rowHeight = sizeToPixels2[size];
22608
22832
  const rowCells = (rowNumber) => {
22609
22833
  const flexGrowForCell = randomizeWidths ? getRandomizedFlexBasisByRowIndex(rowNumber) : 1;
22610
- return cellArray.map((_, i) => /* @__PURE__ */ (0, import_jsx_runtime163.jsx)("div", { ...(0, import_runtime98.trussProps)({
22834
+ return cellArray.map((_, i) => /* @__PURE__ */ (0, import_jsx_runtime167.jsx)("div", { ...(0, import_runtime100.trussProps)({
22611
22835
  borderRadius: "br4",
22612
22836
  animation: "animation_pulse_2s_cubic_bezier_0_4_0_0_6_1_infinite",
22613
22837
  flexGrow: ["flexGrow_var", {
22614
- "--flexGrow": (0, import_runtime98.maybeCssVar)(flexGrowForCell)
22838
+ "--flexGrow": (0, import_runtime100.maybeCssVar)(flexGrowForCell)
22615
22839
  }],
22616
22840
  backgroundColor: ["bgColor_var", {
22617
22841
  "--backgroundColor": "var(--b-loader-fill)"
22618
22842
  }]
22619
22843
  }) }, `row-${rowNumber}-cell-${i}`));
22620
22844
  };
22621
- return /* @__PURE__ */ (0, import_jsx_runtime163.jsx)("div", { "aria-label": "Loading", children: rowArray.map((_, i) => /* @__PURE__ */ (0, import_jsx_runtime163.jsx)("div", { ...(0, import_runtime98.trussProps)({
22845
+ return /* @__PURE__ */ (0, import_jsx_runtime167.jsx)("div", { "aria-label": "Loading", children: rowArray.map((_, i) => /* @__PURE__ */ (0, import_jsx_runtime167.jsx)("div", { ...(0, import_runtime100.trussProps)({
22622
22846
  display: "df",
22623
22847
  gap: "gap1",
22624
22848
  marginBottom: "mb1",
@@ -22639,7 +22863,7 @@ var sizeToPixels2 = {
22639
22863
  };
22640
22864
 
22641
22865
  // src/components/Layout/GridTableLayout/QueryTable.tsx
22642
- var import_jsx_runtime164 = require("react/jsx-runtime");
22866
+ var import_jsx_runtime168 = require("react/jsx-runtime");
22643
22867
  function QueryTable(props) {
22644
22868
  const {
22645
22869
  emptyFallback,
@@ -22651,29 +22875,29 @@ function QueryTable(props) {
22651
22875
  ...others
22652
22876
  } = props;
22653
22877
  const data = query.loading || query.error ? void 0 : query.data;
22654
- const rows = (0, import_react116.useMemo)(() => createRows(data), [createRows, data]);
22878
+ const rows = (0, import_react120.useMemo)(() => createRows(data), [createRows, data]);
22655
22879
  const fallbackMessage = query.loading ? "Loading\u2026" : query.error ? `Error: ${query.error.message}` : void 0;
22656
- const emptyState = (0, import_react116.useMemo)(() => {
22880
+ const emptyState = (0, import_react120.useMemo)(() => {
22657
22881
  if (query.loading || query.error) return void 0;
22658
22882
  if (emptyStateProp) return emptyStateProp;
22659
22883
  return { title: emptyFallback };
22660
22884
  }, [emptyFallback, emptyStateProp, query.error, query.loading]);
22661
22885
  const headers = rows.filter((row) => row.kind === "header");
22662
- return query.loading ? /* @__PURE__ */ (0, import_jsx_runtime164.jsx)("div", { children: keepHeaderWhenLoading ? /* @__PURE__ */ (0, import_jsx_runtime164.jsx)(GridTable, { ...{ columns, ...others }, rows: headers, fallbackMessage }) : /* @__PURE__ */ (0, import_jsx_runtime164.jsx)(LoadingTable, { columns: columns.length }) }) : /* @__PURE__ */ (0, import_jsx_runtime164.jsx)(GridTable, { ...{ rows, columns, fallbackMessage, emptyState, ...others } });
22886
+ return query.loading ? /* @__PURE__ */ (0, import_jsx_runtime168.jsx)("div", { children: keepHeaderWhenLoading ? /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(GridTable, { ...{ columns, ...others }, rows: headers, fallbackMessage }) : /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(LoadingTable, { columns: columns.length }) }) : /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(GridTable, { ...{ rows, columns, fallbackMessage, emptyState, ...others } });
22663
22887
  }
22664
22888
  function LoadingTable(props) {
22665
22889
  const { columns } = props;
22666
- return /* @__PURE__ */ (0, import_jsx_runtime164.jsxs)(import_jsx_runtime164.Fragment, { children: [
22667
- /* @__PURE__ */ (0, import_jsx_runtime164.jsx)(LoadingSkeleton, { rows: 1, columns: 1 }),
22668
- /* @__PURE__ */ (0, import_jsx_runtime164.jsx)(LoadingSkeleton, { rows: 5, columns: columns ?? 5 })
22890
+ return /* @__PURE__ */ (0, import_jsx_runtime168.jsxs)(import_jsx_runtime168.Fragment, { children: [
22891
+ /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(LoadingSkeleton, { rows: 1, columns: 1 }),
22892
+ /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(LoadingSkeleton, { rows: 5, columns: columns ?? 5 })
22669
22893
  ] });
22670
22894
  }
22671
22895
 
22672
22896
  // src/components/Layout/GridTableLayout/usePersistedTableView.ts
22673
- var import_react117 = require("react");
22897
+ var import_react121 = require("react");
22674
22898
  function usePersistedTableView(defaultView, persist) {
22675
22899
  const storageKey = persist ? getGridTableViewStorageKey(window.location.pathname) : void 0;
22676
- const [view, setView] = (0, import_react117.useState)(() => {
22900
+ const [view, setView] = (0, import_react121.useState)(() => {
22677
22901
  if (!storageKey) return defaultView;
22678
22902
  try {
22679
22903
  return parseStoredTableView(localStorage.getItem(storageKey)) ?? defaultView;
@@ -22681,7 +22905,7 @@ function usePersistedTableView(defaultView, persist) {
22681
22905
  return defaultView;
22682
22906
  }
22683
22907
  });
22684
- const setViewAndPersist = (0, import_react117.useCallback)(
22908
+ const setViewAndPersist = (0, import_react121.useCallback)(
22685
22909
  (next) => {
22686
22910
  setView(next);
22687
22911
  if (storageKey) {
@@ -22703,9 +22927,9 @@ function parseStoredTableView(raw) {
22703
22927
  }
22704
22928
 
22705
22929
  // src/components/Layout/GridTableLayout/GridTableLayout.tsx
22706
- var import_runtime99 = require("@homebound/truss/runtime");
22707
- var import_jsx_runtime165 = require("react/jsx-runtime");
22708
- var __maybeInc17 = (inc) => {
22930
+ var import_runtime101 = require("@homebound/truss/runtime");
22931
+ var import_jsx_runtime169 = require("react/jsx-runtime");
22932
+ var __maybeInc18 = (inc) => {
22709
22933
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
22710
22934
  };
22711
22935
  function GridTableLayoutComponent(props) {
@@ -22716,78 +22940,83 @@ function GridTableLayoutComponent(props) {
22716
22940
  hideEditColumns = false,
22717
22941
  withCardView,
22718
22942
  defaultView = "list",
22719
- emptyFallback: layoutEmptyFallback
22943
+ emptyFallback: layoutEmptyFallback,
22944
+ withRightPane
22720
22945
  } = props;
22946
+ const rightPaneWidth = withRightPane === true ? defaultDocumentScrollRightPaneWidth : typeof withRightPane === "number" ? withRightPane : void 0;
22721
22947
  const tid = useTestIds(props);
22722
22948
  const columns = tableProps.columns;
22723
- const hasHideableColumns = (0, import_react118.useMemo)(() => {
22949
+ const hasHideableColumns = (0, import_react122.useMemo)(() => {
22724
22950
  if (hideEditColumns) return false;
22725
22951
  validateColumns(columns);
22726
22952
  return columns.some((c) => c.canHide);
22727
22953
  }, [columns, hideEditColumns]);
22728
- const api = (0, import_react118.useMemo)(() => tableProps.api ?? new GridTableApiImpl(), [tableProps.api]);
22954
+ const api = (0, import_react122.useMemo)(() => tableProps.api ?? new GridTableApiImpl(), [tableProps.api]);
22729
22955
  const [view, setView] = usePersistedTableView(defaultView, !!withCardView);
22730
22956
  const clientSearch = layoutState?.search === "client" ? layoutState.searchString : void 0;
22731
22957
  const showTableActions = !!(layoutState?.filterDefs || layoutState?.search || hasHideableColumns || withCardView || actionMenu);
22732
22958
  const isVirtualized = tableProps.as === "virtual" || !!withCardView && view === "card";
22733
22959
  const inDocumentScrollLayout = useDocumentScrollLayout();
22734
- const tableActionsRef = (0, import_react118.useRef)(null);
22735
- const tableWrapperRef = (0, import_react118.useRef)(null);
22960
+ const tableActionsRef = (0, import_react122.useRef)(null);
22961
+ const tableWrapperRef = (0, import_react122.useRef)(null);
22736
22962
  useSetTableActionsHeight(tableWrapperRef, tableActionsRef, inDocumentScrollLayout && showTableActions);
22737
22963
  const visibleColumnIds = useComputed(() => api.getVisibleColumnIds(), [api]);
22738
- (0, import_react118.useEffect)(() => {
22964
+ (0, import_react122.useEffect)(() => {
22739
22965
  if (layoutState?.setVisibleColumnIds) {
22740
22966
  layoutState.setVisibleColumnIds(visibleColumnIds);
22741
22967
  }
22742
22968
  }, [visibleColumnIds, layoutState]);
22743
22969
  const visibleColumnsStorageKey = layoutState?.persistedColumnsStorageKey;
22744
- const filterSearchProps = (0, import_react118.useMemo)(() => layoutState?.search ? {
22970
+ const filterSearchProps = (0, import_react122.useMemo)(() => layoutState?.search ? {
22745
22971
  onSearch: layoutState.setSearchString
22746
22972
  } : void 0, [layoutState?.search, layoutState?.setSearchString]);
22747
- const searchApiRef = (0, import_react118.useRef)();
22748
- const clearFilters = (0, import_react118.useCallback)(() => {
22973
+ const searchApiRef = (0, import_react122.useRef)();
22974
+ const clearFilters = (0, import_react122.useCallback)(() => {
22749
22975
  layoutState?.clearFilters();
22750
22976
  searchApiRef.current?.clear();
22751
22977
  }, [layoutState]);
22752
- const emptyState = (0, import_react118.useMemo)(() => composeEmptyState(tableProps, layoutState, layoutEmptyFallback, clearFilters), [layoutEmptyFallback, layoutState, tableProps, clearFilters]);
22753
- const tableActionsEl = /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(_GridTableLayoutActions, { filterDefs: layoutState?.filterDefs, filter: layoutState?.filter, setFilter: layoutState?.setFilter, groupBy: layoutState?.groupBy, searchProps: filterSearchProps, hasHideableColumns, columns, api, withCardView, view, setView, clearFilters, searchApi: searchApiRef, actionMenu });
22978
+ const emptyState = (0, import_react122.useMemo)(() => composeEmptyState(tableProps, layoutState, layoutEmptyFallback, clearFilters), [layoutEmptyFallback, layoutState, tableProps, clearFilters]);
22979
+ const tableActionsEl = /* @__PURE__ */ (0, import_jsx_runtime169.jsx)(_GridTableLayoutActions, { filterDefs: layoutState?.filterDefs, filter: layoutState?.filter, setFilter: layoutState?.setFilter, groupBy: layoutState?.groupBy, searchProps: filterSearchProps, hasHideableColumns, columns, api, withCardView, view, setView, clearFilters, searchApi: searchApiRef, actionMenu });
22754
22980
  const cardAs = withCardView && view === "card" ? "card" : void 0;
22755
22981
  const tableStyle = resolveGridTableLayoutStyle(tableProps.style, inDocumentScrollLayout);
22756
- const tableBody = /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(import_jsx_runtime165.Fragment, { children: isGridTableProps(tableProps) ? /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(GridTable, { ...tableProps, ...cardAs ? {
22982
+ const tableBody = /* @__PURE__ */ (0, import_jsx_runtime169.jsx)(import_jsx_runtime169.Fragment, { children: isGridTableProps(tableProps) ? /* @__PURE__ */ (0, import_jsx_runtime169.jsx)(GridTable, { ...tableProps, ...cardAs ? {
22757
22983
  as: cardAs
22758
- } : {}, api, emptyState, filter: clientSearch, style: tableStyle, stickyHeader: true, disableColumnResizing: false, visibleColumnsStorageKey, columnGutter: inDocumentScrollLayout }) : /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(QueryTable, { ...tableProps, ...cardAs ? {
22984
+ } : {}, api, emptyState, filter: clientSearch, style: tableStyle, stickyHeader: true, disableColumnResizing: false, visibleColumnsStorageKey, columnGutter: inDocumentScrollLayout }) : /* @__PURE__ */ (0, import_jsx_runtime169.jsx)(QueryTable, { ...tableProps, ...cardAs ? {
22759
22985
  as: cardAs
22760
22986
  } : {}, api, emptyState, filter: clientSearch, style: tableStyle, stickyHeader: true, disableColumnResizing: false, visibleColumnsStorageKey, columnGutter: inDocumentScrollLayout }) });
22761
- const tableScrollContent = /* @__PURE__ */ (0, import_jsx_runtime165.jsxs)(import_jsx_runtime165.Fragment, { children: [
22762
- showTableActions && /* @__PURE__ */ (0, import_jsx_runtime165.jsx)("div", { ref: tableActionsRef, ...(0, import_runtime99.trussProps)({
22987
+ const tableScrollContent = /* @__PURE__ */ (0, import_jsx_runtime169.jsxs)(import_jsx_runtime169.Fragment, { children: [
22988
+ showTableActions && /* @__PURE__ */ (0, import_jsx_runtime169.jsx)("div", { ref: tableActionsRef, ...(0, import_runtime101.trussProps)({
22763
22989
  ...inDocumentScrollLayout ? {
22764
22990
  transition: "transitionTop",
22765
22991
  position: "sticky",
22766
22992
  top: ["top_var", {
22767
- "--top": (0, import_runtime99.maybeCssVar)(__maybeInc17(stickyNavAndHeaderOffset()))
22993
+ "--top": (0, import_runtime101.maybeCssVar)(__maybeInc18(stickyNavAndHeaderOffset()))
22768
22994
  }],
22769
22995
  left: ["left_var", {
22770
- "--left": (0, import_runtime99.maybeCssVar)(__maybeInc17(documentScrollChromeLeft()))
22996
+ "--left": (0, import_runtime101.maybeCssVar)(__maybeInc18(documentScrollChromeLeft()))
22771
22997
  }],
22772
22998
  width: ["w_var", {
22773
- "--width": (0, import_runtime99.maybeCssVar)(__maybeInc17(`min(100%, ${documentScrollChromeWidth()})`))
22999
+ "--width": (0, import_runtime101.maybeCssVar)(__maybeInc18(`min(100%, ${documentScrollChromeWidth()})`))
22774
23000
  }],
22775
23001
  zIndex: ["z_var", {
22776
- "--zIndex": (0, import_runtime99.maybeCssVar)(zIndices.tableActions)
23002
+ "--zIndex": (0, import_runtime101.maybeCssVar)(zIndices.tableActions)
22777
23003
  }],
22778
23004
  backgroundColor: ["bgColor_var", {
22779
23005
  "--backgroundColor": "var(--b-surface)"
22780
23006
  }]
22781
23007
  } : {}
22782
23008
  }), ...tid.stickyContent, children: tableActionsEl }),
22783
- inDocumentScrollLayout ? tableBody : /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(ScrollableContent, { virtualized: isVirtualized, children: tableBody })
23009
+ inDocumentScrollLayout ? (
23010
+ // Scope the pane to the table only — actions stay outside so they remain full-bleed sticky chrome.
23011
+ rightPaneWidth !== void 0 ? /* @__PURE__ */ (0, import_jsx_runtime169.jsx)(DocumentScrollRightPaneLayout, { paneWidth: rightPaneWidth, children: tableBody }) : tableBody
23012
+ ) : /* @__PURE__ */ (0, import_jsx_runtime169.jsx)(ScrollableContent, { virtualized: isVirtualized, children: tableBody })
22784
23013
  ] });
22785
23014
  return (
22786
- /* Wrapper sets --beam-table-actions-height so GridTable's sticky header can read it. */
22787
- /* @__PURE__ */ (0, import_jsx_runtime165.jsx)("div", { ref: tableWrapperRef, className: "display_contents", ...tid.tableWrapper, children: tableScrollContent })
23015
+ /* Wrapper sets --beam-table-actions-height so sticky headers / the pane can read it. */
23016
+ /* @__PURE__ */ (0, import_jsx_runtime169.jsx)("div", { ref: tableWrapperRef, className: "display_contents", ...tid.tableWrapper, children: tableScrollContent })
22788
23017
  );
22789
23018
  }
22790
- var GridTableLayout = import_react118.default.memo(GridTableLayoutComponent);
23019
+ var GridTableLayout = import_react122.default.memo(GridTableLayoutComponent);
22791
23020
  function validateColumns(columns) {
22792
23021
  for (const col of columns) {
22793
23022
  if (!col.id || !col.name) {
@@ -22812,11 +23041,11 @@ function useGridTableLayoutState({
22812
23041
  const groupBy = useGroupBy(maybeGroupBy ?? {
22813
23042
  none: "none"
22814
23043
  });
22815
- const [searchString, setSearchString] = (0, import_react118.useState)("");
23044
+ const [searchString, setSearchString] = (0, import_react122.useState)("");
22816
23045
  const columnsFallback = "unset-columns";
22817
23046
  const [visibleColumnIds, setVisibleColumnIds] = useSessionStorage(persistedColumns?.storageKey ?? columnsFallback, void 0);
22818
23047
  const filteringActive = getActiveFilterCount(filter) > 0 || !!searchString;
22819
- const clearFilters = (0, import_react118.useCallback)(() => {
23048
+ const clearFilters = (0, import_react122.useCallback)(() => {
22820
23049
  setFilter({});
22821
23050
  setSearchString("");
22822
23051
  }, [setFilter]);
@@ -22843,11 +23072,11 @@ function composeEmptyState(tableProps, layoutState, layoutEmptyFallback, clearFi
22843
23072
  return {
22844
23073
  title: tableEmptyState?.title ?? tableEmptyFallback ?? layoutEmptyFallback,
22845
23074
  description: tableEmptyState?.description ?? (filteringActive ? filterEmptyDescription : void 0),
22846
- actions: tableEmptyState?.actions ?? (filteringActive && layoutState ? /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(Button, { label: "Clear Filters", variant: "tertiary", onClick: clearFilters, "data-testid": "clearFilters" }) : void 0)
23075
+ actions: tableEmptyState?.actions ?? (filteringActive && layoutState ? /* @__PURE__ */ (0, import_jsx_runtime169.jsx)(Button, { label: "Clear Filters", variant: "tertiary", onClick: clearFilters, "data-testid": "clearFilters" }) : void 0)
22847
23076
  };
22848
23077
  }
22849
23078
  function useSetTableActionsHeight(tableWrapperRef, tableActionsRef, enabled) {
22850
- const syncHeightVar = (0, import_react118.useCallback)(() => {
23079
+ const syncHeightVar = (0, import_react122.useCallback)(() => {
22851
23080
  const tableWrapper = tableWrapperRef.current;
22852
23081
  if (!tableWrapper) return;
22853
23082
  if (!enabled) {
@@ -22861,11 +23090,11 @@ function useSetTableActionsHeight(tableWrapperRef, tableActionsRef, enabled) {
22861
23090
  tableWrapper.style.removeProperty(beamTableActionsHeightVar);
22862
23091
  }
22863
23092
  }, [enabled, tableActionsRef, tableWrapperRef]);
22864
- (0, import_utils135.useResizeObserver)({
23093
+ (0, import_utils137.useResizeObserver)({
22865
23094
  ref: tableActionsRef,
22866
23095
  onResize: enabled ? syncHeightVar : noop
22867
23096
  });
22868
- (0, import_react118.useLayoutEffect)(() => {
23097
+ (0, import_react122.useLayoutEffect)(() => {
22869
23098
  syncHeightVar();
22870
23099
  const tableWrapper = tableWrapperRef.current;
22871
23100
  return () => {
@@ -22891,7 +23120,7 @@ function resolveGridTableLayoutStyle(userStyle, inDocumentScrollLayout) {
22891
23120
  }
22892
23121
 
22893
23122
  // src/components/Layout/PreventBrowserScroll.tsx
22894
- var import_jsx_runtime166 = require("react/jsx-runtime");
23123
+ var import_jsx_runtime170 = require("react/jsx-runtime");
22895
23124
  function PreventBrowserScroll({
22896
23125
  children
22897
23126
  }) {
@@ -22899,51 +23128,16 @@ function PreventBrowserScroll({
22899
23128
  // Take over the full viewport and hide any overflown content.
22900
23129
  // Using `-webkit-fill-available`, otherwise `height: 100vh` includes the app bars in mobile Safari. See https://allthingssmitty.com/2020/05/11/css-fix-for-100vh-in-mobile-webkit/
22901
23130
  // Setting the multiple "(min|max-)height" properties is necessary, as Truss will turn this into an object and there can only be one `height` property.
22902
- /* @__PURE__ */ (0, import_jsx_runtime166.jsx)("div", { className: "oh vh100 mh_negwebkit_fill_available maxh_negwebkit_fill_available", children: /* @__PURE__ */ (0, import_jsx_runtime166.jsx)("div", { className: "h100 df fdc mh0 oa", children }) })
22903
- );
22904
- }
22905
-
22906
- // src/components/Layout/RightPaneLayout/RightPaneContext.tsx
22907
- var import_react119 = __toESM(require("react"), 1);
22908
- var import_jsx_runtime167 = require("react/jsx-runtime");
22909
- var RightPaneContext = import_react119.default.createContext({
22910
- openInPane: () => {
22911
- },
22912
- closePane: () => {
22913
- },
22914
- clearPane: () => {
22915
- },
22916
- isRightPaneOpen: false,
22917
- rightPaneContent: null
22918
- });
22919
- function RightPaneProvider({ children }) {
22920
- const [rightPaneContent, setRightPaneContent] = (0, import_react119.useState)(void 0);
22921
- const [isRightPaneOpen, setIsRightPaneOpen] = (0, import_react119.useState)(false);
22922
- const openInPane = (0, import_react119.useCallback)(
22923
- (opts) => {
22924
- setRightPaneContent(opts?.content);
22925
- setIsRightPaneOpen(true);
22926
- },
22927
- [setRightPaneContent]
22928
- );
22929
- const closePane = (0, import_react119.useCallback)(() => setIsRightPaneOpen(false), []);
22930
- const clearPane = (0, import_react119.useCallback)(() => setRightPaneContent(void 0), [setRightPaneContent]);
22931
- const context = (0, import_react119.useMemo)(
22932
- () => ({ openInPane, closePane, clearPane, rightPaneContent, isRightPaneOpen }),
22933
- [openInPane, closePane, rightPaneContent, clearPane, isRightPaneOpen]
23131
+ /* @__PURE__ */ (0, import_jsx_runtime170.jsx)("div", { className: "oh vh100 mh_negwebkit_fill_available maxh_negwebkit_fill_available", children: /* @__PURE__ */ (0, import_jsx_runtime170.jsx)("div", { className: "h100 df fdc mh0 oa", children }) })
22934
23132
  );
22935
- return /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(RightPaneContext.Provider, { value: context, children });
22936
- }
22937
- function useRightPaneContext() {
22938
- return (0, import_react119.useContext)(RightPaneContext);
22939
23133
  }
22940
23134
 
22941
23135
  // src/components/Layout/RightPaneLayout/RightPaneLayout.tsx
22942
- var import_framer_motion3 = require("framer-motion");
22943
- var import_react120 = require("react");
22944
- var import_runtime100 = require("@homebound/truss/runtime");
22945
- var import_jsx_runtime168 = require("react/jsx-runtime");
22946
- var __maybeInc18 = (inc) => {
23136
+ var import_framer_motion4 = require("framer-motion");
23137
+ var import_react123 = require("react");
23138
+ var import_runtime102 = require("@homebound/truss/runtime");
23139
+ var import_jsx_runtime171 = require("react/jsx-runtime");
23140
+ var __maybeInc19 = (inc) => {
22947
23141
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
22948
23142
  };
22949
23143
  function RightPaneLayout(props) {
@@ -22959,12 +23153,12 @@ function RightPaneLayout(props) {
22959
23153
  clearPane,
22960
23154
  closePane
22961
23155
  } = useRightPaneContext();
22962
- (0, import_react120.useEffect)(() => closePane, [closePane]);
22963
- return /* @__PURE__ */ (0, import_jsx_runtime168.jsx)("div", { className: "h100 df oxh", children: /* @__PURE__ */ (0, import_jsx_runtime168.jsxs)(import_jsx_runtime168.Fragment, { children: [
22964
- /* @__PURE__ */ (0, import_jsx_runtime168.jsx)("div", { ...(0, import_runtime100.trussProps)({
23156
+ (0, import_react123.useEffect)(() => closePane, [closePane]);
23157
+ return /* @__PURE__ */ (0, import_jsx_runtime171.jsx)("div", { className: "h100 df oxh", children: /* @__PURE__ */ (0, import_jsx_runtime171.jsxs)(import_jsx_runtime171.Fragment, { children: [
23158
+ /* @__PURE__ */ (0, import_jsx_runtime171.jsx)("div", { ...(0, import_runtime102.trussProps)({
22965
23159
  ...{
22966
23160
  width: ["w_var", {
22967
- "--width": (0, import_runtime100.maybeCssVar)(__maybeInc18(`calc(100% - ${paneWidth + 24}px)`))
23161
+ "--width": (0, import_runtime102.maybeCssVar)(__maybeInc19(`calc(100% - ${paneWidth + 24}px)`))
22968
23162
  }],
22969
23163
  transition: "transition_width_2s_linear",
22970
23164
  height: "h100",
@@ -22980,13 +23174,13 @@ function RightPaneLayout(props) {
22980
23174
  ...{
22981
23175
  ...!!defaultPaneContent ? {
22982
23176
  width: ["w_var", {
22983
- "--width": (0, import_runtime100.maybeCssVar)(__maybeInc18(`calc(100% - ${paneWidth + 24}px)`))
23177
+ "--width": (0, import_runtime102.maybeCssVar)(__maybeInc19(`calc(100% - ${paneWidth + 24}px)`))
22984
23178
  }],
22985
23179
  marginRight: "mr3"
22986
23180
  } : {}
22987
23181
  }
22988
23182
  }), children }),
22989
- /* @__PURE__ */ (0, import_jsx_runtime168.jsxs)("div", { ...(0, import_runtime100.trussProps)({
23183
+ /* @__PURE__ */ (0, import_jsx_runtime171.jsxs)("div", { ...(0, import_runtime102.trussProps)({
22990
23184
  position: "relative",
22991
23185
  ...!!defaultPaneContent ? {
22992
23186
  width: ["w_var", {
@@ -22994,7 +23188,7 @@ function RightPaneLayout(props) {
22994
23188
  }]
22995
23189
  } : {}
22996
23190
  }), children: [
22997
- defaultPaneContent && /* @__PURE__ */ (0, import_jsx_runtime168.jsx)("div", { ...(0, import_runtime100.trussProps)({
23191
+ defaultPaneContent && /* @__PURE__ */ (0, import_jsx_runtime171.jsx)("div", { ...(0, import_runtime102.trussProps)({
22998
23192
  height: "h100",
22999
23193
  width: ["w_var", {
23000
23194
  "--width": `${paneWidth}px`
@@ -23007,14 +23201,14 @@ function RightPaneLayout(props) {
23007
23201
  left: "left_100"
23008
23202
  } : {}
23009
23203
  }), children: defaultPaneContent }),
23010
- /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(import_framer_motion3.AnimatePresence, { children: isRightPaneOpen && /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(
23011
- import_framer_motion3.motion.div,
23204
+ /* @__PURE__ */ (0, import_jsx_runtime171.jsx)(import_framer_motion4.AnimatePresence, { children: isRightPaneOpen && /* @__PURE__ */ (0, import_jsx_runtime171.jsx)(
23205
+ import_framer_motion4.motion.div,
23012
23206
  {
23013
23207
  layout: "position",
23014
23208
  "data-testid": "rightPaneContent",
23015
- ...(0, import_runtime100.trussProps)({
23209
+ ...(0, import_runtime102.trussProps)({
23016
23210
  backgroundColor: ["bgColor_var", {
23017
- "--backgroundColor": (0, import_runtime100.maybeCssVar)(paneBgColor)
23211
+ "--backgroundColor": (0, import_runtime102.maybeCssVar)(paneBgColor)
23018
23212
  }],
23019
23213
  height: "h100",
23020
23214
  width: ["w_var", {
@@ -23058,23 +23252,23 @@ function useRightPane() {
23058
23252
  }
23059
23253
 
23060
23254
  // src/components/Layout/ScrollableFooter.tsx
23061
- var import_react_dom5 = require("react-dom");
23062
- var import_jsx_runtime169 = require("react/jsx-runtime");
23255
+ var import_react_dom6 = require("react-dom");
23256
+ var import_jsx_runtime172 = require("react/jsx-runtime");
23063
23257
  function ScrollableFooter(props) {
23064
23258
  const { children } = props;
23065
23259
  const { footerEl } = useScrollableParent();
23066
23260
  if (!footerEl) {
23067
- return /* @__PURE__ */ (0, import_jsx_runtime169.jsx)(import_jsx_runtime169.Fragment, { children });
23261
+ return /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(import_jsx_runtime172.Fragment, { children });
23068
23262
  }
23069
- return (0, import_react_dom5.createPortal)(/* @__PURE__ */ (0, import_jsx_runtime169.jsx)(import_jsx_runtime169.Fragment, { children }), footerEl);
23263
+ return (0, import_react_dom6.createPortal)(/* @__PURE__ */ (0, import_jsx_runtime172.jsx)(import_jsx_runtime172.Fragment, { children }), footerEl);
23070
23264
  }
23071
23265
 
23072
23266
  // src/components/Layout/TableReviewLayout/TableReviewLayout.tsx
23073
- var import_framer_motion4 = require("framer-motion");
23074
- var import_react121 = require("react");
23267
+ var import_framer_motion5 = require("framer-motion");
23268
+ var import_react124 = require("react");
23075
23269
 
23076
23270
  // src/components/Layout/TableReviewLayout/SidePanel.tsx
23077
- var import_jsx_runtime170 = require("react/jsx-runtime");
23271
+ var import_jsx_runtime173 = require("react/jsx-runtime");
23078
23272
  function SidePanel(props) {
23079
23273
  const {
23080
23274
  title,
@@ -23084,19 +23278,19 @@ function SidePanel(props) {
23084
23278
  } = props;
23085
23279
  const tid = useTestIds(props, "sidePanel");
23086
23280
  const hasFooter = primaryAction || secondaryAction;
23087
- return /* @__PURE__ */ (0, import_jsx_runtime170.jsxs)("div", { className: "h100 df fdc oh", ...tid, children: [
23088
- /* @__PURE__ */ (0, import_jsx_runtime170.jsx)("div", { className: "pt3 pb3 pr3 pl3 fs0", ...tid.header, children: /* @__PURE__ */ (0, import_jsx_runtime170.jsx)("h2", { className: "fw6 fz_20px lh_28px mt0 mb0", ...tid.title, children: title }) }),
23089
- /* @__PURE__ */ (0, import_jsx_runtime170.jsx)("div", { className: "fg1 oya mh0", ...tid.body, children: content }),
23090
- hasFooter && /* @__PURE__ */ (0, import_jsx_runtime170.jsxs)("div", { className: "df gap2 jcfe pt3 pb3 pr3 pl3 fs0", ...tid.footer, children: [
23091
- secondaryAction && /* @__PURE__ */ (0, import_jsx_runtime170.jsx)(Button, { ...secondaryAction, variant: "secondaryBlack" }),
23092
- primaryAction && /* @__PURE__ */ (0, import_jsx_runtime170.jsx)(Button, { ...primaryAction })
23281
+ return /* @__PURE__ */ (0, import_jsx_runtime173.jsxs)("div", { className: "h100 df fdc oh", ...tid, children: [
23282
+ /* @__PURE__ */ (0, import_jsx_runtime173.jsx)("div", { className: "pt3 pb3 pr3 pl3 fs0", ...tid.header, children: /* @__PURE__ */ (0, import_jsx_runtime173.jsx)("h2", { className: "fw6 fz_20px lh_28px mt0 mb0", ...tid.title, children: title }) }),
23283
+ /* @__PURE__ */ (0, import_jsx_runtime173.jsx)("div", { className: "fg1 oya mh0", ...tid.body, children: content }),
23284
+ hasFooter && /* @__PURE__ */ (0, import_jsx_runtime173.jsxs)("div", { className: "df gap2 jcfe pt3 pb3 pr3 pl3 fs0", ...tid.footer, children: [
23285
+ secondaryAction && /* @__PURE__ */ (0, import_jsx_runtime173.jsx)(Button, { ...secondaryAction, variant: "secondaryBlack" }),
23286
+ primaryAction && /* @__PURE__ */ (0, import_jsx_runtime173.jsx)(Button, { ...primaryAction })
23093
23287
  ] })
23094
23288
  ] });
23095
23289
  }
23096
23290
 
23097
23291
  // src/components/Layout/TableReviewLayout/TableReviewLayout.tsx
23098
- var import_runtime101 = require("@homebound/truss/runtime");
23099
- var import_jsx_runtime171 = require("react/jsx-runtime");
23292
+ var import_runtime103 = require("@homebound/truss/runtime");
23293
+ var import_jsx_runtime174 = require("react/jsx-runtime");
23100
23294
  var defaultRightPaneWidth = 450;
23101
23295
  function TableReviewLayout(props) {
23102
23296
  const {
@@ -23111,8 +23305,8 @@ function TableReviewLayout(props) {
23111
23305
  rightPaneWidth = defaultRightPaneWidth
23112
23306
  } = props;
23113
23307
  const tid = useTestIds(props, "tableReviewLayout");
23114
- const [isPanelVisible, setIsPanelVisible] = (0, import_react121.useState)(!!panelContent);
23115
- (0, import_react121.useEffect)(() => {
23308
+ const [isPanelVisible, setIsPanelVisible] = (0, import_react124.useState)(!!panelContent);
23309
+ (0, import_react124.useEffect)(() => {
23116
23310
  setIsPanelVisible(!!panelContent);
23117
23311
  }, [panelContent]);
23118
23312
  function handleClosePanel() {
@@ -23122,29 +23316,29 @@ function TableReviewLayout(props) {
23122
23316
  let tableContent;
23123
23317
  if (isGridTableProps(tableProps)) {
23124
23318
  if (emptyState && !tableProps.rows.some((r) => r.kind !== "header")) {
23125
- tableContent = /* @__PURE__ */ (0, import_jsx_runtime171.jsx)("div", { className: "h100 df fdc aic jcc", children: emptyState });
23319
+ tableContent = /* @__PURE__ */ (0, import_jsx_runtime174.jsx)("div", { className: "h100 df fdc aic jcc", children: emptyState });
23126
23320
  } else {
23127
- tableContent = /* @__PURE__ */ (0, import_jsx_runtime171.jsx)(GridTable, { ...tableProps, style: {
23321
+ tableContent = /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(GridTable, { ...tableProps, style: {
23128
23322
  allWhite: true,
23129
23323
  bordered: true
23130
23324
  }, stickyHeader: true });
23131
23325
  }
23132
23326
  } else if (emptyState) {
23133
- tableContent = /* @__PURE__ */ (0, import_jsx_runtime171.jsx)("div", { className: "h100 df fdc aic jcc", children: emptyState });
23327
+ tableContent = /* @__PURE__ */ (0, import_jsx_runtime174.jsx)("div", { className: "h100 df fdc aic jcc", children: emptyState });
23134
23328
  } else {
23135
- tableContent = /* @__PURE__ */ (0, import_jsx_runtime171.jsx)(QueryTable, { ...tableProps, style: {
23329
+ tableContent = /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(QueryTable, { ...tableProps, style: {
23136
23330
  allWhite: true,
23137
23331
  bordered: true
23138
23332
  }, stickyHeader: true });
23139
23333
  }
23140
- return /* @__PURE__ */ (0, import_jsx_runtime171.jsxs)("div", { ...(0, import_runtime101.trussProps)({
23334
+ return /* @__PURE__ */ (0, import_jsx_runtime174.jsxs)("div", { ...(0, import_runtime103.trussProps)({
23141
23335
  position: "fixed",
23142
23336
  top: "top0",
23143
23337
  bottom: "bottom0",
23144
23338
  left: "left0",
23145
23339
  right: "right0",
23146
23340
  zIndex: ["z_var", {
23147
- "--zIndex": (0, import_runtime101.maybeCssVar)(zIndices.pageOverlay)
23341
+ "--zIndex": (0, import_runtime103.maybeCssVar)(zIndices.pageOverlay)
23148
23342
  }],
23149
23343
  backgroundColor: ["bgColor_var", {
23150
23344
  "--backgroundColor": "var(--b-surface)"
@@ -23152,16 +23346,16 @@ function TableReviewLayout(props) {
23152
23346
  display: "df",
23153
23347
  flexDirection: "fdc"
23154
23348
  }), ...tid, children: [
23155
- /* @__PURE__ */ (0, import_jsx_runtime171.jsxs)("header", { className: "pl3 pr3 pt3 pb2 fs0", ...tid.header, children: [
23156
- /* @__PURE__ */ (0, import_jsx_runtime171.jsx)(Toast, {}),
23157
- /* @__PURE__ */ (0, import_jsx_runtime171.jsxs)("div", { className: "df jcsb aic", children: [
23158
- /* @__PURE__ */ (0, import_jsx_runtime171.jsxs)("div", { children: [
23159
- breadCrumb && /* @__PURE__ */ (0, import_jsx_runtime171.jsx)(PageHeaderBreadcrumbs, { breadcrumb: breadCrumb }),
23160
- /* @__PURE__ */ (0, import_jsx_runtime171.jsx)("h1", { className: "fw6 fz_30px lh_36px mt1 mb0", ...tid.pageTitle, children: pageTitle })
23349
+ /* @__PURE__ */ (0, import_jsx_runtime174.jsxs)("header", { className: "pl3 pr3 pt3 pb2 fs0", ...tid.header, children: [
23350
+ /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(Toast, {}),
23351
+ /* @__PURE__ */ (0, import_jsx_runtime174.jsxs)("div", { className: "df jcsb aic", children: [
23352
+ /* @__PURE__ */ (0, import_jsx_runtime174.jsxs)("div", { children: [
23353
+ breadCrumb && /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(PageHeaderBreadcrumbs, { breadcrumb: breadCrumb }),
23354
+ /* @__PURE__ */ (0, import_jsx_runtime174.jsx)("h1", { className: "fw6 fz_30px lh_36px mt1 mb0", ...tid.pageTitle, children: pageTitle })
23161
23355
  ] }),
23162
- /* @__PURE__ */ (0, import_jsx_runtime171.jsx)(Button, { label: "Close", onClick: closeAction, ...tid.closeButton })
23356
+ /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(Button, { label: "Close", onClick: closeAction, ...tid.closeButton })
23163
23357
  ] }),
23164
- /* @__PURE__ */ (0, import_jsx_runtime171.jsx)("div", { ...(0, import_runtime101.trussProps)({
23358
+ /* @__PURE__ */ (0, import_jsx_runtime174.jsx)("div", { ...(0, import_runtime103.trussProps)({
23165
23359
  fontWeight: "fw4",
23166
23360
  fontSize: "fz_14px",
23167
23361
  lineHeight: "lh_20px",
@@ -23171,8 +23365,8 @@ function TableReviewLayout(props) {
23171
23365
  marginTop: "mt2"
23172
23366
  }), ...tid.description, children: description })
23173
23367
  ] }),
23174
- /* @__PURE__ */ (0, import_jsx_runtime171.jsxs)("div", { className: "fg1 df mh0", ...tid.content, children: [
23175
- /* @__PURE__ */ (0, import_jsx_runtime171.jsx)("div", { ...(0, import_runtime101.trussProps)({
23368
+ /* @__PURE__ */ (0, import_jsx_runtime174.jsxs)("div", { className: "fg1 df mh0", ...tid.content, children: [
23369
+ /* @__PURE__ */ (0, import_jsx_runtime174.jsx)("div", { ...(0, import_runtime103.trussProps)({
23176
23370
  ...{
23177
23371
  flexGrow: "fg1",
23178
23372
  overflowY: "oya",
@@ -23185,7 +23379,7 @@ function TableReviewLayout(props) {
23185
23379
  } : {}
23186
23380
  }
23187
23381
  }), children: tableContent }),
23188
- /* @__PURE__ */ (0, import_jsx_runtime171.jsx)(import_framer_motion4.AnimatePresence, { children: isPanelVisible && panelContent && /* @__PURE__ */ (0, import_jsx_runtime171.jsxs)(import_framer_motion4.motion.div, { initial: {
23382
+ /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(import_framer_motion5.AnimatePresence, { children: isPanelVisible && panelContent && /* @__PURE__ */ (0, import_jsx_runtime174.jsxs)(import_framer_motion5.motion.div, { initial: {
23189
23383
  width: 0
23190
23384
  }, animate: {
23191
23385
  width: rightPaneWidth
@@ -23195,7 +23389,7 @@ function TableReviewLayout(props) {
23195
23389
  ease: "linear",
23196
23390
  duration: 0.2
23197
23391
  }, className: "df fdc fs0 relative", children: [
23198
- /* @__PURE__ */ (0, import_jsx_runtime171.jsxs)("div", { ...(0, import_runtime101.trussProps)({
23392
+ /* @__PURE__ */ (0, import_jsx_runtime174.jsxs)("div", { ...(0, import_runtime103.trussProps)({
23199
23393
  position: "absolute",
23200
23394
  top: ["top_var", {
23201
23395
  "--top": `${-32}px`
@@ -23208,8 +23402,8 @@ function TableReviewLayout(props) {
23208
23402
  }],
23209
23403
  zIndex: "z1"
23210
23404
  }), children: [
23211
- /* @__PURE__ */ (0, import_jsx_runtime171.jsx)(IconButton, { bgColor: "--b-surface" /* Surface */, variant: "circle", icon: "x", inc: 3.5, onClick: handleClosePanel, ...tid.closePanelButton }),
23212
- /* @__PURE__ */ (0, import_jsx_runtime171.jsx)("div", { ...(0, import_runtime101.trussProps)({
23405
+ /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(IconButton, { bgColor: "--b-surface" /* Surface */, variant: "circle", icon: "x", inc: 3.5, onClick: handleClosePanel, ...tid.closePanelButton }),
23406
+ /* @__PURE__ */ (0, import_jsx_runtime174.jsx)("div", { ...(0, import_runtime103.trussProps)({
23213
23407
  width: "w_1px",
23214
23408
  backgroundColor: ["bgColor_var", {
23215
23409
  "--backgroundColor": "var(--b-field-border-default)"
@@ -23217,15 +23411,15 @@ function TableReviewLayout(props) {
23217
23411
  height: "vh100"
23218
23412
  }) })
23219
23413
  ] }),
23220
- /* @__PURE__ */ (0, import_jsx_runtime171.jsx)("div", { className: "fg1 oh mh0", children: /* @__PURE__ */ (0, import_jsx_runtime171.jsx)(SidePanel, { ...panelContent }) })
23414
+ /* @__PURE__ */ (0, import_jsx_runtime174.jsx)("div", { className: "fg1 oh mh0", children: /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(SidePanel, { ...panelContent }) })
23221
23415
  ] }, "panel") })
23222
23416
  ] })
23223
23417
  ] });
23224
23418
  }
23225
23419
 
23226
23420
  // src/components/BeamContext.tsx
23227
- var import_jsx_runtime172 = require("react/jsx-runtime");
23228
- var BeamContext = (0, import_react122.createContext)({
23421
+ var import_jsx_runtime175 = require("react/jsx-runtime");
23422
+ var BeamContext = (0, import_react125.createContext)({
23229
23423
  modalState: new EmptyRef(),
23230
23424
  modalCanCloseChecks: new EmptyRef(),
23231
23425
  modalHeaderDiv: void 0,
@@ -23237,21 +23431,21 @@ var BeamContext = (0, import_react122.createContext)({
23237
23431
  sdHeaderDiv: void 0
23238
23432
  });
23239
23433
  function BeamProvider({ children, documentTitleConfig, ...presentationProps }) {
23240
- const [, tick] = (0, import_react122.useReducer)((prev) => prev + 1, 0);
23241
- const modalRef = (0, import_react122.useRef)();
23242
- const modalHeaderDiv = (0, import_react122.useMemo)(() => document.createElement("div"), []);
23243
- const modalBodyDiv = (0, import_react122.useMemo)(() => {
23434
+ const [, tick] = (0, import_react125.useReducer)((prev) => prev + 1, 0);
23435
+ const modalRef = (0, import_react125.useRef)();
23436
+ const modalHeaderDiv = (0, import_react125.useMemo)(() => document.createElement("div"), []);
23437
+ const modalBodyDiv = (0, import_react125.useMemo)(() => {
23244
23438
  const el = document.createElement("div");
23245
23439
  el.style.height = "100%";
23246
23440
  return el;
23247
23441
  }, []);
23248
- const modalCanCloseChecksRef = (0, import_react122.useRef)([]);
23249
- const modalFooterDiv = (0, import_react122.useMemo)(() => document.createElement("div"), []);
23250
- const drawerContentStackRef = (0, import_react122.useRef)([]);
23251
- const drawerCanCloseChecks = (0, import_react122.useRef)([]);
23252
- const drawerCanCloseDetailsChecks = (0, import_react122.useRef)([]);
23253
- const sdHeaderDiv = (0, import_react122.useMemo)(() => document.createElement("div"), []);
23254
- const context = (0, import_react122.useMemo)(() => {
23442
+ const modalCanCloseChecksRef = (0, import_react125.useRef)([]);
23443
+ const modalFooterDiv = (0, import_react125.useMemo)(() => document.createElement("div"), []);
23444
+ const drawerContentStackRef = (0, import_react125.useRef)([]);
23445
+ const drawerCanCloseChecks = (0, import_react125.useRef)([]);
23446
+ const drawerCanCloseDetailsChecks = (0, import_react125.useRef)([]);
23447
+ const sdHeaderDiv = (0, import_react125.useMemo)(() => document.createElement("div"), []);
23448
+ const context = (0, import_react125.useMemo)(() => {
23255
23449
  return {
23256
23450
  // These two keys need to trigger re-renders on change
23257
23451
  modalState: new PretendRefThatTicks(modalRef, tick),
@@ -23266,14 +23460,14 @@ function BeamProvider({ children, documentTitleConfig, ...presentationProps }) {
23266
23460
  sdHeaderDiv
23267
23461
  };
23268
23462
  }, [modalBodyDiv, modalFooterDiv, modalHeaderDiv, sdHeaderDiv]);
23269
- const beamTree = /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(PresentationProvider, { ...presentationProps, children: /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(RightPaneProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(AutoSaveStatusProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(SnackbarProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime172.jsxs)(ToastProvider, { children: [
23270
- /* @__PURE__ */ (0, import_jsx_runtime172.jsxs)(import_react_aria54.OverlayProvider, { children: [
23463
+ const beamTree = /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(PresentationProvider, { ...presentationProps, children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(RightPaneProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(AutoSaveStatusProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(SnackbarProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime175.jsxs)(ToastProvider, { children: [
23464
+ /* @__PURE__ */ (0, import_jsx_runtime175.jsxs)(import_react_aria55.OverlayProvider, { children: [
23271
23465
  children,
23272
- modalRef.current && /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(Modal, { ...modalRef.current })
23466
+ modalRef.current && /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(Modal, { ...modalRef.current })
23273
23467
  ] }),
23274
- /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(SuperDrawer, {})
23468
+ /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(SuperDrawer, {})
23275
23469
  ] }) }) }) }) });
23276
- return /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(BeamContext.Provider, { value: { ...context }, children: documentTitleConfig ? /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(DocumentTitleProvider, { ...documentTitleConfig, children: beamTree }) : beamTree });
23470
+ return /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(BeamContext.Provider, { value: { ...context }, children: documentTitleConfig ? /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(DocumentTitleProvider, { ...documentTitleConfig, children: beamTree }) : beamTree });
23277
23471
  }
23278
23472
  var PretendRefThatTicks = class {
23279
23473
  constructor(ref, tick) {
@@ -23289,14 +23483,14 @@ var PretendRefThatTicks = class {
23289
23483
  }
23290
23484
  };
23291
23485
  function useBeamContext() {
23292
- return (0, import_react122.useContext)(BeamContext);
23486
+ return (0, import_react125.useContext)(BeamContext);
23293
23487
  }
23294
23488
 
23295
23489
  // src/components/Breadcrumbs.tsx
23296
- var import_react123 = require("react");
23490
+ var import_react126 = require("react");
23297
23491
  var import_react_router_dom6 = require("react-router-dom");
23298
- var import_runtime102 = require("@homebound/truss/runtime");
23299
- var import_jsx_runtime173 = (
23492
+ var import_runtime104 = require("@homebound/truss/runtime");
23493
+ var import_jsx_runtime176 = (
23300
23494
  // Index is added to the key to prevent rendering issues when multiple items have the same label
23301
23495
  require("react/jsx-runtime")
23302
23496
  );
@@ -23305,16 +23499,16 @@ function Breadcrumbs({
23305
23499
  }) {
23306
23500
  const tid = useTestIds({}, "breadcrumb");
23307
23501
  const items = Array.isArray(breadcrumbs) ? breadcrumbs : [breadcrumbs];
23308
- const [collapsed, setCollapsed] = (0, import_react123.useState)(true);
23502
+ const [collapsed, setCollapsed] = (0, import_react126.useState)(true);
23309
23503
  const {
23310
23504
  sm
23311
23505
  } = useBreakpoint();
23312
23506
  const leadCount = sm ? 1 : 2;
23313
23507
  const shouldCollapse = collapsed && items.length >= leadCount + 2;
23314
23508
  function renderBreadcrumb(bc, index, isLast) {
23315
- return /* @__PURE__ */ (0, import_jsx_runtime173.jsxs)(import_react123.Fragment, { children: [
23316
- index > 0 && /* @__PURE__ */ (0, import_jsx_runtime173.jsx)("span", { className: "fs0 fw4 fz_12px lh_16px", children: "/" }),
23317
- /* @__PURE__ */ (0, import_jsx_runtime173.jsx)(import_react_router_dom6.Link, { ...tid.link, to: bc.href, title: bc.label, ...(0, import_runtime102.trussProps)({
23509
+ return /* @__PURE__ */ (0, import_jsx_runtime176.jsxs)(import_react126.Fragment, { children: [
23510
+ index > 0 && /* @__PURE__ */ (0, import_jsx_runtime176.jsx)("span", { className: "fs0 fw4 fz_12px lh_16px", children: "/" }),
23511
+ /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(import_react_router_dom6.Link, { ...tid.link, to: bc.href, title: bc.label, ...(0, import_runtime104.trussProps)({
23318
23512
  ...{
23319
23513
  fontWeight: "fw4",
23320
23514
  fontSize: "fz_12px",
@@ -23332,32 +23526,32 @@ function Breadcrumbs({
23332
23526
  }), children: bc.label })
23333
23527
  ] }, `${bc.label}-${index}`);
23334
23528
  }
23335
- return /* @__PURE__ */ (0, import_jsx_runtime173.jsx)("div", { className: "df aic gap_4px", children: shouldCollapse ? /* @__PURE__ */ (0, import_jsx_runtime173.jsxs)(import_jsx_runtime173.Fragment, { children: [
23529
+ return /* @__PURE__ */ (0, import_jsx_runtime176.jsx)("div", { className: "df aic gap_4px", children: shouldCollapse ? /* @__PURE__ */ (0, import_jsx_runtime176.jsxs)(import_jsx_runtime176.Fragment, { children: [
23336
23530
  items.slice(0, leadCount).map((bc, i) => renderBreadcrumb(bc, i)),
23337
- /* @__PURE__ */ (0, import_jsx_runtime173.jsx)("span", { className: "fs0 fw4 fz_12px lh_16px", children: "/" }),
23338
- /* @__PURE__ */ (0, import_jsx_runtime173.jsx)("button", { ...tid.expand, className: "fw4 fz_12px lh_16px gray900 h_gray600", onClick: () => setCollapsed(false), children: "..." }),
23531
+ /* @__PURE__ */ (0, import_jsx_runtime176.jsx)("span", { className: "fs0 fw4 fz_12px lh_16px", children: "/" }),
23532
+ /* @__PURE__ */ (0, import_jsx_runtime176.jsx)("button", { ...tid.expand, className: "fw4 fz_12px lh_16px gray900 h_gray600", onClick: () => setCollapsed(false), children: "..." }),
23339
23533
  renderBreadcrumb(items[items.length - 1], items.length - 1, true)
23340
23534
  ] }) : items.map((bc, i) => renderBreadcrumb(bc, i, i === items.length - 1)) });
23341
23535
  }
23342
23536
 
23343
23537
  // src/components/ButtonDatePicker.tsx
23344
- var import_react124 = require("react");
23345
- var import_react_aria55 = require("react-aria");
23538
+ var import_react127 = require("react");
23539
+ var import_react_aria56 = require("react-aria");
23346
23540
  var import_react_stately19 = require("react-stately");
23347
- var import_jsx_runtime174 = require("react/jsx-runtime");
23541
+ var import_jsx_runtime177 = require("react/jsx-runtime");
23348
23542
  function ButtonDatePicker(props) {
23349
23543
  const { defaultOpen, disabled, trigger, onSelect, ...datePickerProps } = props;
23350
23544
  const state = (0, import_react_stately19.useMenuTriggerState)({ isOpen: defaultOpen });
23351
- const buttonRef = (0, import_react124.useRef)(null);
23545
+ const buttonRef = (0, import_react127.useRef)(null);
23352
23546
  const {
23353
23547
  menuTriggerProps,
23354
23548
  menuProps: { autoFocus: _af, ...menuProps }
23355
- } = (0, import_react_aria55.useMenuTrigger)({ isDisabled: !!disabled }, state, buttonRef);
23549
+ } = (0, import_react_aria56.useMenuTrigger)({ isDisabled: !!disabled }, state, buttonRef);
23356
23550
  const tid = useTestIds(
23357
23551
  props,
23358
23552
  isTextButton(trigger) ? defaultTestId(labelOr(trigger, "buttonDatePicker")) : isNavLinkButton(trigger) ? defaultTestId(trigger.navLabel) : isIconButton(trigger) ? trigger.icon : trigger.name
23359
23553
  );
23360
- return /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(OverlayTrigger, { ...props, menuTriggerProps, state, buttonRef, ...tid, children: /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(DatePickerOverlay, { overlayProps: menuProps, children: /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(
23554
+ return /* @__PURE__ */ (0, import_jsx_runtime177.jsx)(OverlayTrigger, { ...props, menuTriggerProps, state, buttonRef, ...tid, children: /* @__PURE__ */ (0, import_jsx_runtime177.jsx)(DatePickerOverlay, { overlayProps: menuProps, children: /* @__PURE__ */ (0, import_jsx_runtime177.jsx)(
23361
23555
  DatePicker,
23362
23556
  {
23363
23557
  ...datePickerProps,
@@ -23371,10 +23565,10 @@ function ButtonDatePicker(props) {
23371
23565
  }
23372
23566
 
23373
23567
  // src/components/ButtonGroup.tsx
23374
- var import_react125 = require("react");
23375
- var import_react_aria56 = require("react-aria");
23376
- var import_runtime103 = require("@homebound/truss/runtime");
23377
- var import_jsx_runtime175 = (
23568
+ var import_react128 = require("react");
23569
+ var import_react_aria57 = require("react-aria");
23570
+ var import_runtime105 = require("@homebound/truss/runtime");
23571
+ var import_jsx_runtime178 = (
23378
23572
  // Disable the button if the ButtonGroup is disabled or if the current button is disabled.
23379
23573
  require("react/jsx-runtime")
23380
23574
  );
@@ -23387,7 +23581,7 @@ function ButtonGroup(props) {
23387
23581
  const tid = useTestIds(props, "buttonGroup");
23388
23582
  return (
23389
23583
  // Adding `line-height: 0` prevent inheriting line-heights that might throw off sizing within the button group.
23390
- /* @__PURE__ */ (0, import_jsx_runtime175.jsx)("div", { ...tid, ...(0, import_runtime103.trussProps)({
23584
+ /* @__PURE__ */ (0, import_jsx_runtime178.jsx)("div", { ...tid, ...(0, import_runtime105.trussProps)({
23391
23585
  ...{
23392
23586
  display: "df",
23393
23587
  lineHeight: "lh_0"
@@ -23396,7 +23590,7 @@ function ButtonGroup(props) {
23396
23590
  }), children: buttons.map(({
23397
23591
  disabled: buttonDisabled,
23398
23592
  ...buttonProps
23399
- }, i) => /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(GroupButton, { ...buttonProps, disabled: disabled || buttonDisabled, size, isFirst: i === 0, isLast: i === buttons.length - 1, ...tid }, i)) })
23593
+ }, i) => /* @__PURE__ */ (0, import_jsx_runtime178.jsx)(GroupButton, { ...buttonProps, disabled: disabled || buttonDisabled, size, isFirst: i === 0, isLast: i === buttons.length - 1, ...tid }, i)) })
23400
23594
  );
23401
23595
  }
23402
23596
  function GroupButton(props) {
@@ -23419,24 +23613,24 @@ function GroupButton(props) {
23419
23613
  isDisabled: !!disabled,
23420
23614
  ...otherProps
23421
23615
  };
23422
- const ref = (0, import_react125.useRef)(null);
23616
+ const ref = (0, import_react128.useRef)(null);
23423
23617
  const {
23424
23618
  buttonProps,
23425
23619
  isPressed
23426
- } = (0, import_react_aria56.useButton)(ariaProps, ref);
23620
+ } = (0, import_react_aria57.useButton)(ariaProps, ref);
23427
23621
  const {
23428
23622
  isFocusVisible,
23429
23623
  focusProps
23430
- } = (0, import_react_aria56.useFocusRing)();
23624
+ } = (0, import_react_aria57.useFocusRing)();
23431
23625
  const {
23432
23626
  hoverProps,
23433
23627
  isHovered
23434
- } = (0, import_react_aria56.useHover)(ariaProps);
23628
+ } = (0, import_react_aria57.useHover)(ariaProps);
23435
23629
  const tid = useTestIds(props);
23436
- return /* @__PURE__ */ (0, import_jsx_runtime175.jsx)("span", { ...(0, import_runtime103.trussProps)(getButtonStyles2(isFirst, isLast)), children: maybeTooltip({
23630
+ return /* @__PURE__ */ (0, import_jsx_runtime178.jsx)("span", { ...(0, import_runtime105.trussProps)(getButtonStyles2(isFirst, isLast)), children: maybeTooltip({
23437
23631
  title: resolveTooltip(disabled, tooltip),
23438
23632
  placement: "top",
23439
- children: /* @__PURE__ */ (0, import_jsx_runtime175.jsxs)("button", { ref, ...buttonProps, ...focusProps, ...hoverProps, ...(0, import_runtime103.trussProps)({
23633
+ children: /* @__PURE__ */ (0, import_jsx_runtime178.jsxs)("button", { ref, ...buttonProps, ...focusProps, ...hoverProps, ...(0, import_runtime105.trussProps)({
23440
23634
  ...{
23441
23635
  fontWeight: "fw6",
23442
23636
  fontSize: "fz_14px",
@@ -23463,7 +23657,7 @@ function GroupButton(props) {
23463
23657
  ...isPressed ? pressedStyles : isHovered ? hoverStyles3 : {},
23464
23658
  ...icon ? iconStyles2[size] : {}
23465
23659
  }), ...tid[defaultTestId(typeof text === "string" && text || icon || "button")], children: [
23466
- icon && /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(Icon, { xss: {
23660
+ icon && /* @__PURE__ */ (0, import_jsx_runtime178.jsx)(Icon, { xss: {
23467
23661
  ...!!text ? {
23468
23662
  marginRight: "mr_4px"
23469
23663
  } : {}
@@ -23553,14 +23747,14 @@ var iconStyles2 = {
23553
23747
  };
23554
23748
 
23555
23749
  // src/components/Card.tsx
23556
- var import_react127 = require("react");
23557
- var import_react_aria57 = require("react-aria");
23750
+ var import_react130 = require("react");
23751
+ var import_react_aria58 = require("react-aria");
23558
23752
 
23559
23753
  // src/components/Tag.tsx
23560
- var import_utils144 = require("@react-aria/utils");
23561
- var import_react126 = require("react");
23562
- var import_runtime104 = require("@homebound/truss/runtime");
23563
- var import_jsx_runtime176 = require("react/jsx-runtime");
23754
+ var import_utils146 = require("@react-aria/utils");
23755
+ var import_react129 = require("react");
23756
+ var import_runtime106 = require("@homebound/truss/runtime");
23757
+ var import_jsx_runtime179 = require("react/jsx-runtime");
23564
23758
  function Tag(props) {
23565
23759
  const {
23566
23760
  text,
@@ -23580,9 +23774,9 @@ function Tag(props) {
23580
23774
  padding
23581
23775
  } = getVariantStyles(variant, type);
23582
23776
  const tid = useTestIds(otherProps);
23583
- const [showTooltip, setShowTooltip] = (0, import_react126.useState)(false);
23584
- const ref = (0, import_react126.useRef)(null);
23585
- (0, import_utils144.useResizeObserver)({
23777
+ const [showTooltip, setShowTooltip] = (0, import_react129.useState)(false);
23778
+ const ref = (0, import_react129.useRef)(null);
23779
+ (0, import_utils146.useResizeObserver)({
23586
23780
  ref,
23587
23781
  onResize: () => {
23588
23782
  if (!isIconOnly && ref.current) {
@@ -23593,7 +23787,7 @@ function Tag(props) {
23593
23787
  const tooltipTitle = !preventTooltip ? isIconOnly ? text : showTooltip ? text : void 0 : void 0;
23594
23788
  return maybeTooltip({
23595
23789
  title: tooltipTitle,
23596
- children: /* @__PURE__ */ (0, import_jsx_runtime176.jsxs)("span", { ...tid, ...(0, import_runtime104.trussProps)({
23790
+ children: /* @__PURE__ */ (0, import_jsx_runtime179.jsxs)("span", { ...tid, ...(0, import_runtime106.trussProps)({
23597
23791
  ...{
23598
23792
  position: "relative",
23599
23793
  display: "dif",
@@ -23612,8 +23806,8 @@ function Tag(props) {
23612
23806
  ...background,
23613
23807
  ...xss
23614
23808
  }), children: [
23615
- icon && /* @__PURE__ */ (0, import_jsx_runtime176.jsx)("span", { className: "fs0", children: /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(Icon, { icon, inc: 1.75, color: iconColor }) }),
23616
- isIconOnly ? /* @__PURE__ */ (0, import_jsx_runtime176.jsx)("span", { className: "absolute oh cli_inset_50 clp_none bd_0 h_1px m_neg1px w_1px p_0 wsnw o0", children: text }) : /* @__PURE__ */ (0, import_jsx_runtime176.jsx)("span", { ref, className: "oh d_negwebkit_box wbo_vertical to_ellipsis wlc_1 wbba", children: text })
23809
+ icon && /* @__PURE__ */ (0, import_jsx_runtime179.jsx)("span", { className: "fs0", children: /* @__PURE__ */ (0, import_jsx_runtime179.jsx)(Icon, { icon, inc: 1.75, color: iconColor }) }),
23810
+ isIconOnly ? /* @__PURE__ */ (0, import_jsx_runtime179.jsx)("span", { className: "absolute oh cli_inset_50 clp_none bd_0 h_1px m_neg1px w_1px p_0 wsnw o0", children: text }) : /* @__PURE__ */ (0, import_jsx_runtime179.jsx)("span", { ref, className: "oh d_negwebkit_box wbo_vertical to_ellipsis wlc_1 wbba", children: text })
23617
23811
  ] })
23618
23812
  });
23619
23813
  }
@@ -23700,8 +23894,8 @@ function getPrimaryStyles(type) {
23700
23894
  }
23701
23895
 
23702
23896
  // src/components/Card.tsx
23703
- var import_runtime105 = require("@homebound/truss/runtime");
23704
- var import_jsx_runtime177 = require("react/jsx-runtime");
23897
+ var import_runtime107 = require("@homebound/truss/runtime");
23898
+ var import_jsx_runtime180 = require("react/jsx-runtime");
23705
23899
  function Card(props) {
23706
23900
  const {
23707
23901
  title,
@@ -23720,12 +23914,12 @@ function Card(props) {
23720
23914
  const {
23721
23915
  hoverProps,
23722
23916
  isHovered
23723
- } = (0, import_react_aria57.useHover)({
23917
+ } = (0, import_react_aria58.useHover)({
23724
23918
  isDisabled
23725
23919
  });
23726
23920
  const isList = type === "list";
23727
23921
  const imgHeight = isList ? 96 : bordered ? 224 : 256;
23728
- const styles = (0, import_react127.useMemo)(() => ({
23922
+ const styles = (0, import_react130.useMemo)(() => ({
23729
23923
  ...baseStyles3(type),
23730
23924
  ...fullWidth && fullWidthStyles,
23731
23925
  ...isList && listStyles,
@@ -23733,8 +23927,8 @@ function Card(props) {
23733
23927
  ...isHovered && cardHoverStyles,
23734
23928
  ...isDisabled && disabledStyles2
23735
23929
  }), [isDisabled, isHovered, bordered, type, isList, fullWidth]);
23736
- return /* @__PURE__ */ (0, import_jsx_runtime177.jsxs)("div", { ...(0, import_runtime105.trussProps)(styles), ...hoverProps, ...tid, children: [
23737
- /* @__PURE__ */ (0, import_jsx_runtime177.jsx)("div", { ...(0, import_runtime105.trussProps)({
23930
+ return /* @__PURE__ */ (0, import_jsx_runtime180.jsxs)("div", { ...(0, import_runtime107.trussProps)(styles), ...hoverProps, ...tid, children: [
23931
+ /* @__PURE__ */ (0, import_jsx_runtime180.jsx)("div", { ...(0, import_runtime107.trussProps)({
23738
23932
  ...{
23739
23933
  height: ["h_var", {
23740
23934
  "--height": `${imgHeight}px`
@@ -23757,14 +23951,14 @@ function Card(props) {
23757
23951
  flexShrink: "fs0"
23758
23952
  },
23759
23953
  ...isHovered && !isList && imageHoverStyles
23760
- }), children: /* @__PURE__ */ (0, import_jsx_runtime177.jsx)("img", { ...(0, import_runtime105.trussProps)({
23954
+ }), children: /* @__PURE__ */ (0, import_jsx_runtime180.jsx)("img", { ...(0, import_runtime107.trussProps)({
23761
23955
  width: "w100",
23762
23956
  height: "h100",
23763
23957
  objectFit: ["objectFit_var", {
23764
- "--objectFit": (0, import_runtime105.maybeCssVar)(imageFit)
23958
+ "--objectFit": (0, import_runtime107.maybeCssVar)(imageFit)
23765
23959
  }]
23766
23960
  }), src: imgSrc, alt: title, ...tid.img }) }),
23767
- isHovered && buttonMenuItems && /* @__PURE__ */ (0, import_jsx_runtime177.jsx)("div", { ...(0, import_runtime105.trussProps)({
23961
+ isHovered && buttonMenuItems && /* @__PURE__ */ (0, import_jsx_runtime180.jsx)("div", { ...(0, import_runtime107.trussProps)({
23768
23962
  position: "absolute",
23769
23963
  right: "right1",
23770
23964
  top: "top1",
@@ -23772,14 +23966,14 @@ function Card(props) {
23772
23966
  right: "right3",
23773
23967
  top: "top3"
23774
23968
  } : {}
23775
- }), children: /* @__PURE__ */ (0, import_jsx_runtime177.jsx)(ButtonMenu, { trigger: {
23969
+ }), children: /* @__PURE__ */ (0, import_jsx_runtime180.jsx)(ButtonMenu, { trigger: {
23776
23970
  icon: "verticalDots",
23777
23971
  color: isList ? "--b-on-surface-muted" /* OnSurfaceMuted */ : "--b-on-primary" /* OnPrimary */
23778
23972
  }, items: buttonMenuItems }) }),
23779
- tag && /* @__PURE__ */ (0, import_jsx_runtime177.jsx)("div", { className: "absolute left1 top_4px", children: /* @__PURE__ */ (0, import_jsx_runtime177.jsx)(Tag, { type: tag?.type, text: tag?.text, ...tid.tag }) }),
23780
- /* @__PURE__ */ (0, import_jsx_runtime177.jsxs)("div", { className: "df fdc aifs gap1", children: [
23781
- /* @__PURE__ */ (0, import_jsx_runtime177.jsxs)("div", { children: [
23782
- /* @__PURE__ */ (0, import_jsx_runtime177.jsx)("div", { ...(0, import_runtime105.trussProps)({
23973
+ tag && /* @__PURE__ */ (0, import_jsx_runtime180.jsx)("div", { className: "absolute left1 top_4px", children: /* @__PURE__ */ (0, import_jsx_runtime180.jsx)(Tag, { type: tag?.type, text: tag?.text, ...tid.tag }) }),
23974
+ /* @__PURE__ */ (0, import_jsx_runtime180.jsxs)("div", { className: "df fdc aifs gap1", children: [
23975
+ /* @__PURE__ */ (0, import_jsx_runtime180.jsxs)("div", { children: [
23976
+ /* @__PURE__ */ (0, import_jsx_runtime180.jsx)("div", { ...(0, import_runtime107.trussProps)({
23783
23977
  fontWeight: "fw6",
23784
23978
  fontSize: "fz_12px",
23785
23979
  lineHeight: "lh_16px",
@@ -23787,7 +23981,7 @@ function Card(props) {
23787
23981
  "--color": "var(--b-on-surface-muted)"
23788
23982
  }]
23789
23983
  }), ...tid.subtitle, children: subtitle }),
23790
- /* @__PURE__ */ (0, import_jsx_runtime177.jsx)("div", { ...(0, import_runtime105.trussProps)({
23984
+ /* @__PURE__ */ (0, import_jsx_runtime180.jsx)("div", { ...(0, import_runtime107.trussProps)({
23791
23985
  fontWeight: "fw6",
23792
23986
  fontSize: "fz_14px",
23793
23987
  lineHeight: "lh_20px",
@@ -23801,7 +23995,7 @@ function Card(props) {
23801
23995
  } : {}
23802
23996
  }), ...tid.title, children: title })
23803
23997
  ] }),
23804
- /* @__PURE__ */ (0, import_jsx_runtime177.jsx)("div", { ...tid.details, children: detailContent })
23998
+ /* @__PURE__ */ (0, import_jsx_runtime180.jsx)("div", { ...tid.details, children: detailContent })
23805
23999
  ] })
23806
24000
  ] });
23807
24001
  }
@@ -23860,10 +24054,10 @@ var imageHoverStyles = {
23860
24054
  };
23861
24055
 
23862
24056
  // src/components/Copy.tsx
23863
- var import_runtime106 = require("@homebound/truss/runtime");
23864
- var import_jsx_runtime178 = require("react/jsx-runtime");
24057
+ var import_runtime108 = require("@homebound/truss/runtime");
24058
+ var import_jsx_runtime181 = require("react/jsx-runtime");
23865
24059
  function Copy(props) {
23866
- return /* @__PURE__ */ (0, import_jsx_runtime178.jsx)("div", { ...(0, import_runtime106.mergeProps)("beam-copy", void 0, {
24060
+ return /* @__PURE__ */ (0, import_jsx_runtime181.jsx)("div", { ...(0, import_runtime108.mergeProps)("beam-copy", void 0, {
23867
24061
  ...{
23868
24062
  fontWeight: "fw4",
23869
24063
  fontSize: "fz_14px",
@@ -23879,8 +24073,8 @@ function Copy(props) {
23879
24073
  }
23880
24074
 
23881
24075
  // src/components/EnvironmentBanner/EnvironmentBanner.tsx
23882
- var import_runtime107 = require("@homebound/truss/runtime");
23883
- var import_jsx_runtime179 = require("react/jsx-runtime");
24076
+ var import_runtime109 = require("@homebound/truss/runtime");
24077
+ var import_jsx_runtime182 = require("react/jsx-runtime");
23884
24078
  function EnvironmentBanner(props) {
23885
24079
  const {
23886
24080
  env,
@@ -23899,14 +24093,14 @@ function EnvironmentBanner(props) {
23899
24093
  tooltip
23900
24094
  } = getEnvironmentBannerConfig(env, impersonating, showProdWarning);
23901
24095
  const bgColorVar = maybeCssVar(bgColor);
23902
- return /* @__PURE__ */ (0, import_jsx_runtime179.jsxs)("div", { ...(0, import_runtime107.trussProps)({
24096
+ return /* @__PURE__ */ (0, import_jsx_runtime182.jsxs)("div", { ...(0, import_runtime109.trussProps)({
23903
24097
  flexShrink: "fs0",
23904
24098
  position: "relative",
23905
24099
  zIndex: ["z_var", {
23906
- "--zIndex": (0, import_runtime107.maybeCssVar)(zIndices.environmentBanner)
24100
+ "--zIndex": (0, import_runtime109.maybeCssVar)(zIndices.environmentBanner)
23907
24101
  }],
23908
24102
  backgroundColor: ["bgColor_var", {
23909
- "--backgroundColor": (0, import_runtime107.maybeCssVar)(bgColorVar)
24103
+ "--backgroundColor": (0, import_runtime109.maybeCssVar)(bgColorVar)
23910
24104
  }],
23911
24105
  height: ["h_var", {
23912
24106
  "--height": `${environmentBannerSizePx}px`
@@ -23915,7 +24109,7 @@ function EnvironmentBanner(props) {
23915
24109
  }), role: "banner", ...tid, children: [
23916
24110
  getInvertedCorner("left", bgColorVar),
23917
24111
  getInvertedCorner("right", bgColorVar),
23918
- /* @__PURE__ */ (0, import_jsx_runtime179.jsxs)("div", { ...(0, import_runtime107.trussProps)({
24112
+ /* @__PURE__ */ (0, import_jsx_runtime182.jsxs)("div", { ...(0, import_runtime109.trussProps)({
23919
24113
  ...{
23920
24114
  position: "relative",
23921
24115
  zIndex: "z2",
@@ -23926,11 +24120,11 @@ function EnvironmentBanner(props) {
23926
24120
  },
23927
24121
  ...headerContentPaddingX()
23928
24122
  }), ...tid.content, children: [
23929
- /* @__PURE__ */ (0, import_jsx_runtime179.jsxs)("span", { className: "df aic gap2 fg1 mh0 oh", ...tid.left, children: [
23930
- /* @__PURE__ */ (0, import_jsx_runtime179.jsx)(Tag, { text: badgeLabel, xss: {
24123
+ /* @__PURE__ */ (0, import_jsx_runtime182.jsxs)("span", { className: "df aic gap2 fg1 mh0 oh", ...tid.left, children: [
24124
+ /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(Tag, { text: badgeLabel, xss: {
23931
24125
  backgroundColor: "bgColor_FFFFFF90"
23932
24126
  }, ...tid.badge }),
23933
- /* @__PURE__ */ (0, import_jsx_runtime179.jsxs)("span", { ...(0, import_runtime107.trussProps)({
24127
+ /* @__PURE__ */ (0, import_jsx_runtime182.jsxs)("span", { ...(0, import_runtime109.trussProps)({
23934
24128
  ...{
23935
24129
  alignItems: "aic",
23936
24130
  gap: "gap1",
@@ -23948,10 +24142,10 @@ function EnvironmentBanner(props) {
23948
24142
  }
23949
24143
  }), ...tid.message, children: [
23950
24144
  message,
23951
- /* @__PURE__ */ (0, import_jsx_runtime179.jsx)("span", { className: "fs0", ...tid.info, children: /* @__PURE__ */ (0, import_jsx_runtime179.jsx)(Icon, { icon: "infoCircle", tooltip, inc: 2, color: "--b-on-primary" /* OnPrimary */ }) })
24145
+ /* @__PURE__ */ (0, import_jsx_runtime182.jsx)("span", { className: "fs0", ...tid.info, children: /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(Icon, { icon: "infoCircle", tooltip, inc: 2, color: "--b-on-primary" /* OnPrimary */ }) })
23952
24146
  ] })
23953
24147
  ] }),
23954
- impersonating != null && /* @__PURE__ */ (0, import_jsx_runtime179.jsxs)("span", { ...(0, import_runtime107.trussProps)({
24148
+ impersonating != null && /* @__PURE__ */ (0, import_jsx_runtime182.jsxs)("span", { ...(0, import_runtime109.trussProps)({
23955
24149
  display: "df",
23956
24150
  alignItems: "aic",
23957
24151
  gap: "gap2",
@@ -23963,11 +24157,11 @@ function EnvironmentBanner(props) {
23963
24157
  }],
23964
24158
  flexShrink: "fs0"
23965
24159
  }), ...tid.impersonating, children: [
23966
- (env !== "prod" || showProdWarning) && /* @__PURE__ */ (0, import_jsx_runtime179.jsxs)("span", { children: [
23967
- /* @__PURE__ */ (0, import_jsx_runtime179.jsx)("span", { className: "dn mdandup_dib", children: "Impersonating \xA0" }),
24160
+ (env !== "prod" || showProdWarning) && /* @__PURE__ */ (0, import_jsx_runtime182.jsxs)("span", { children: [
24161
+ /* @__PURE__ */ (0, import_jsx_runtime182.jsx)("span", { className: "dn mdandup_dib", children: "Impersonating \xA0" }),
23968
24162
  impersonating.name
23969
24163
  ] }),
23970
- /* @__PURE__ */ (0, import_jsx_runtime179.jsx)("span", { className: "df fs0", ...tid.impersonatingIcon, children: /* @__PURE__ */ (0, import_jsx_runtime179.jsx)(Icon, { icon: "impersonate", inc: 2, color: "--b-on-primary" /* OnPrimary */ }) })
24164
+ /* @__PURE__ */ (0, import_jsx_runtime182.jsx)("span", { className: "df fs0", ...tid.impersonatingIcon, children: /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(Icon, { icon: "impersonate", inc: 2, color: "--b-on-primary" /* OnPrimary */ }) })
23971
24165
  ] })
23972
24166
  ] })
23973
24167
  ] });
@@ -24040,16 +24234,16 @@ function getInvertedCorner(side, bgColorVar) {
24040
24234
  right: "right0"
24041
24235
  };
24042
24236
  const shadowXOffset = side === "left" ? -invertedCornerRadiusPx : invertedCornerRadiusPx;
24043
- return /* @__PURE__ */ (0, import_jsx_runtime179.jsx)("div", { "aria-hidden": true, ...(0, import_runtime107.trussProps)({
24237
+ return /* @__PURE__ */ (0, import_jsx_runtime182.jsx)("div", { "aria-hidden": true, ...(0, import_runtime109.trussProps)({
24044
24238
  ...shell,
24045
24239
  ...outerPosition
24046
- }), children: /* @__PURE__ */ (0, import_jsx_runtime179.jsx)("div", { ...(0, import_runtime107.trussProps)({
24240
+ }), children: /* @__PURE__ */ (0, import_jsx_runtime182.jsx)("div", { ...(0, import_runtime109.trussProps)({
24047
24241
  height: "h_200",
24048
24242
  width: "w_200",
24049
24243
  position: "absolute",
24050
24244
  borderRadius: "borderRadius_50",
24051
24245
  boxShadow: ["boxShadow_var", {
24052
- "--boxShadow": (0, import_runtime107.maybeCssVar)(`${shadowXOffset}px -${invertedCornerRadiusPx}px 0 0 ${bgColorVar}`)
24246
+ "--boxShadow": (0, import_runtime109.maybeCssVar)(`${shadowXOffset}px -${invertedCornerRadiusPx}px 0 0 ${bgColorVar}`)
24053
24247
  }],
24054
24248
  ...side === "right" ? {
24055
24249
  right: "right0"
@@ -24074,16 +24268,16 @@ function setEnvironmentFavicon(env, favicons) {
24074
24268
  }
24075
24269
 
24076
24270
  // src/components/Grid/ResponsiveGrid.tsx
24077
- var import_react129 = require("react");
24271
+ var import_react132 = require("react");
24078
24272
 
24079
24273
  // src/components/Grid/utils.ts
24080
- var import_react128 = require("react");
24274
+ var import_react131 = require("react");
24081
24275
  var gridItemDataAttribute = "data-grid-item-span";
24082
- var ResponsiveGridContext = (0, import_react128.createContext)(void 0);
24276
+ var ResponsiveGridContext = (0, import_react131.createContext)(void 0);
24083
24277
 
24084
24278
  // src/components/Grid/ResponsiveGrid.tsx
24085
- var import_runtime108 = require("@homebound/truss/runtime");
24086
- var import_jsx_runtime180 = require("react/jsx-runtime");
24279
+ var import_runtime110 = require("@homebound/truss/runtime");
24280
+ var import_jsx_runtime183 = require("react/jsx-runtime");
24087
24281
  function ResponsiveGrid(props) {
24088
24282
  const {
24089
24283
  children,
@@ -24098,18 +24292,18 @@ function ResponsiveGrid(props) {
24098
24292
  gap,
24099
24293
  columns
24100
24294
  });
24101
- const config = (0, import_react129.useMemo)(() => ({
24295
+ const config = (0, import_react132.useMemo)(() => ({
24102
24296
  minColumnWidth,
24103
24297
  gap,
24104
24298
  columns
24105
24299
  }), [minColumnWidth, gap, columns]);
24106
- return /* @__PURE__ */ (0, import_jsx_runtime180.jsx)(ResponsiveGridContext.Provider, { value: config, children: /* @__PURE__ */ (0, import_jsx_runtime180.jsx)("div", { ...(0, import_runtime108.trussProps)(gridStyles), children }) });
24300
+ return /* @__PURE__ */ (0, import_jsx_runtime183.jsx)(ResponsiveGridContext.Provider, { value: config, children: /* @__PURE__ */ (0, import_jsx_runtime183.jsx)("div", { ...(0, import_runtime110.trussProps)(gridStyles), children }) });
24107
24301
  }
24108
24302
 
24109
24303
  // src/components/Grid/ResponsiveGridItem.tsx
24110
- var import_react_aria58 = require("react-aria");
24111
- var import_runtime109 = require("@homebound/truss/runtime");
24112
- var import_jsx_runtime181 = require("react/jsx-runtime");
24304
+ var import_react_aria59 = require("react-aria");
24305
+ var import_runtime111 = require("@homebound/truss/runtime");
24306
+ var import_jsx_runtime184 = require("react/jsx-runtime");
24113
24307
  function ResponsiveGridItem(props) {
24114
24308
  const {
24115
24309
  colSpan,
@@ -24121,13 +24315,13 @@ function ResponsiveGridItem(props) {
24121
24315
  } = useResponsiveGridItem({
24122
24316
  colSpan
24123
24317
  });
24124
- return /* @__PURE__ */ (0, import_jsx_runtime181.jsx)("div", { ...(0, import_react_aria58.mergeProps)(gridItemProps, (0, import_runtime109.trussProps)(gridItemStyles)), children });
24318
+ return /* @__PURE__ */ (0, import_jsx_runtime184.jsx)("div", { ...(0, import_react_aria59.mergeProps)(gridItemProps, (0, import_runtime111.trussProps)(gridItemStyles)), children });
24125
24319
  }
24126
24320
 
24127
24321
  // src/components/Grid/useResponsiveGrid.ts
24128
- var import_react130 = require("react");
24129
- var import_runtime110 = require("@homebound/truss/runtime");
24130
- var __maybeInc19 = (inc) => {
24322
+ var import_react133 = require("react");
24323
+ var import_runtime112 = require("@homebound/truss/runtime");
24324
+ var __maybeInc20 = (inc) => {
24131
24325
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
24132
24326
  };
24133
24327
  function useResponsiveGrid(props) {
@@ -24136,7 +24330,7 @@ function useResponsiveGrid(props) {
24136
24330
  gap,
24137
24331
  columns
24138
24332
  } = props;
24139
- const gridStyles = (0, import_react130.useMemo)(() => {
24333
+ const gridStyles = (0, import_react133.useMemo)(() => {
24140
24334
  const gapCount = columns - 1;
24141
24335
  const totalGapWidth = gap * gapCount;
24142
24336
  const maxColumnWidth = `calc((100% - ${totalGapWidth}px) / ${columns})`;
@@ -24145,11 +24339,11 @@ function useResponsiveGrid(props) {
24145
24339
  return {
24146
24340
  display: "dg",
24147
24341
  gridTemplateColumns: ["gtc_var", {
24148
- "--gridTemplateColumns": (0, import_runtime110.maybeCssVar)(gridTemplateColumns)
24342
+ "--gridTemplateColumns": (0, import_runtime112.maybeCssVar)(gridTemplateColumns)
24149
24343
  }],
24150
24344
  containerType: "ctis",
24151
24345
  gap: ["gap_var", {
24152
- "--gap": (0, import_runtime110.maybeCssVar)(__maybeInc19(gridGap))
24346
+ "--gap": (0, import_runtime112.maybeCssVar)(__maybeInc20(gridGap))
24153
24347
  }]
24154
24348
  };
24155
24349
  }, [minColumnWidth, gap, columns]);
@@ -24159,14 +24353,14 @@ function useResponsiveGrid(props) {
24159
24353
  }
24160
24354
 
24161
24355
  // src/components/Grid/useResponsiveGridItem.ts
24162
- var import_react131 = require("react");
24356
+ var import_react134 = require("react");
24163
24357
  var injectedResponsiveGridClasses = /* @__PURE__ */ new Set();
24164
24358
  var responsiveGridStyleEl;
24165
24359
  function useResponsiveGridItem(props) {
24166
24360
  const { colSpan = 1, gridConfig } = props;
24167
- const contextConfig = (0, import_react131.useContext)(ResponsiveGridContext);
24361
+ const contextConfig = (0, import_react134.useContext)(ResponsiveGridContext);
24168
24362
  const config = gridConfig ?? contextConfig;
24169
- const { className, cssText } = (0, import_react131.useMemo)(() => {
24363
+ const { className, cssText } = (0, import_react134.useMemo)(() => {
24170
24364
  if (!config || colSpan <= 1) return { className: "", cssText: "" };
24171
24365
  const { minColumnWidth, gap } = config;
24172
24366
  const className2 = responsiveGridItemClassName(config, colSpan);
@@ -24189,7 +24383,7 @@ function useResponsiveGridItem(props) {
24189
24383
  };
24190
24384
  }
24191
24385
  function useResponsiveGridItemStyle(className, cssText) {
24192
- (0, import_react131.useEffect)(
24386
+ (0, import_react134.useEffect)(
24193
24387
  function() {
24194
24388
  if (!className || !cssText || typeof document === "undefined") return;
24195
24389
  if (!responsiveGridStyleEl) {
@@ -24211,29 +24405,29 @@ function responsiveGridItemClassName(config, colSpan) {
24211
24405
  }
24212
24406
 
24213
24407
  // src/components/HbLoadingSpinner.tsx
24214
- var import_react132 = __toESM(require("react"), 1);
24408
+ var import_react135 = __toESM(require("react"), 1);
24215
24409
 
24216
24410
  // src/components/HbLoadingSpinner.base64.ts
24217
24411
  var HbLoadingSpinner_base64_default = "data:image/gif,GIF89a%80%00%80%00%E7%00%00%00%00%00%0D%0D%0D%16%16%16%1C%1C%1C%22%22%22%26%26%26%2A%2A%2A...222555888%3B%3B%3B%3D%3D%3D%40%40%40BBBEEEGGGIIIKKKMMMOOOQQQSSSUUUVVVXXXZZZ%5C%5C%5C%5D%5D%5D___%60%60%60bbbccceeefffhhhiiijjjlllmmmnnnpppqqqrrrsssuuuvvvwwwxxxyyyzzz%7C%7C%7C%7D%7D%7D~~~%7F%7F%7F%80%80%80%81%81%81%82%82%82%83%83%83%84%84%84%85%85%85%86%86%86%87%87%87%88%88%88%89%89%89%8A%8A%8A%8B%8B%8B%8C%8C%8C%8D%8D%8D%8E%8E%8E%8F%8F%8F%90%90%90%91%91%91%92%92%92%93%93%93%94%94%94%95%95%95%96%96%96%97%97%97%98%98%98%99%99%99%9A%9A%9A%9B%9B%9B%9C%9C%9C%9D%9D%9D%9E%9E%9E%9F%9F%9F%A0%A0%A0%A1%A1%A1%A2%A2%A2%A3%A3%A3%A4%A4%A4%A5%A5%A5%A6%A6%A6%A7%A7%A7%A8%A8%A8%A9%A9%A9%AA%AA%AA%AB%AB%AB%AC%AC%AC%AD%AD%AD%AE%AE%AE%AF%AF%AF%B0%B0%B0%B1%B1%B1%B2%B2%B2%B3%B3%B3%B4%B4%B4%B5%B5%B5%B6%B6%B6%B7%B7%B7%B8%B8%B8%B9%B9%B9%BA%BA%BA%BB%BB%BB%BC%BC%BC%BD%BD%BD%BE%BE%BE%BF%BF%BF%C0%C0%C0%C1%C1%C1%C2%C2%C2%C3%C3%C3%C4%C4%C4%C5%C5%C5%C6%C6%C6%C7%C7%C7%C8%C8%C8%C9%C9%C9%CA%CA%CA%CB%CB%CB%CC%CC%CC%CD%CD%CD%CE%CE%CE%CF%CF%CF%D0%D0%D0%D1%D1%D1%D2%D2%D2%D3%D3%D3%D4%D4%D4%D5%D5%D5%D6%D6%D6%D7%D7%D7%D8%D8%D8%D9%D9%D9%DA%DA%DA%DB%DB%DB%DC%DC%DC%DD%DD%DD%DE%DE%DE%DF%DF%DF%E0%E0%E0%E1%E1%E1%E2%E2%E2%E3%E3%E3%E4%E4%E4%E5%E5%E5%E6%E6%E6%E7%E7%E7%E8%E8%E8%E9%E9%E9%EA%EA%EA%EB%EB%EB%EC%EC%EC%ED%ED%ED%EE%EE%EE%EF%EF%EF%F0%F0%F0%F1%F1%F1%F2%F2%F2%F3%F3%F3%F4%F4%F4%F5%F5%F5%F6%F6%F6%F7%F7%F7%F8%F8%F8%F9%F9%F9%FA%FA%FA%FB%FB%FB%FC%FC%FC%FD%FD%FD%FE%FE%FE%FF%FF%FF%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%21%FF%0BNETSCAPE2.0%03%01%00%00%00%21%FE%11Created%20with%20GIMP%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%DD%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%EC7%80%80%C7%02%02%EC%0D%40%99%F2%E4%CA%92%2F%5B%E6%5B%99%B1%E7%CF%A0C%8B%1EM%BA%B4%E9%D3%A8S%AB%5E%CD%BA%B5%EB%D7%B0c%CB%9EM%BB%B6%ED%DB%B8s%EB%DE%CD%BB%B7%EF%DF%C0%83%D7%0E%08%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FC%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%CF7%03%88%1E-Z%80%E9%01%04%0A%188p%00A%82%05%0D%1EH%A8%C0%964i%D3%02P%ABn%FD%9A%01%5C%DB%A3O%EB%5EM%17x%00%DC%A8%EF%1A%3F%0E%BA%B9%F3%E7%D0%A3K%9FN%BD%BA%F5%EB%D8%B3k%DF%CE%BD%3B%CA%80%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%CF%20%03%88%160%80%40%81%03%09%16%40%B0%D0%A1%04%8C%1EK%B0%90%89%B3%87%D0%A2H%966y%0A5%AAT%29S%A7P%A5J%A5J%D5%AA%E3%C8Y%B1Z%15U%F4h%D2%04%0C%20X%F0%80B%06%11%2Cp%14%A1%22%06%0E%9FB%8D%2A%B7m%02E%EAT%AAU%AD%5C%BD%82%05%2B%96%AC%F7%B2f%C9%9FO%D5y%00%E8%A8%19%3C%60%5D%C2%05%8F%25Y%981%87%1F%88DrI%27%A2%94%82%8A%2A%E9%AD%D7%1E%7C%F1%CD7KU%F6A%27%9D%02%0EH%80%C1%07%29%D0%10%84%13%5D%ACq%C7%20%8CL%A2%09y%A7%A8%C2J%2B%EB%C5%E2%DE%7B%12NhU%85%A5I%B7%80%03%13l%20%C2%0A7%18AE%18o%ECQ%88%23%96p%12%8A%82%E8%B5%F8b%84%F2%7D%E5%9C%00%D0%15p%A1~%11P%60%01%06%1Al%D0A%07%1E%7C%00%C2%97%21%84%29f%08%A0%95i%E6%99h%A6%A9%E6%9Al%B6%E9%E6%9Bp%C6%29%E7%9Ctf%15%10%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%CF%14%03%88%160%80%80%01%04%0D%26p%40%81C%89%965w%02%25z4%C9R%A6M%9D%3C%7D%FA%04%2AT%28Q%A3F%91%22U%AAxqS%A6N%9DB%C5%1CU%AA%E7%AA%A2%ABZE%FD%E8%E8%D2%06%124%A8%00%82%05%8F%27a%E4%D6%FCI%14%E9%12%A7O%A1%88%27_%0E%9D%3A%2BV%AD%E2%BB%9A%FF%EA%15%AC%FB%B0b%E9%8F%25%AB%BF%7F%A4%A2%05%20%80i%0A%3C%60%01%08-%F8%10%05%19t%00%B2%C8%24%99t%02%CA%28%A5%24%E7%5C%2A%D3%AD%F2%5E%7C%F2%D5g%1F~%FB%F1%E7%DF%7F%00%8A%86%5D%81%07%BA%F0%83%14%0C%06%C2%08%25%9Ax%22%0A%29%16b%E8%1E%7C%1C%D2W%1F%88%FB%8D%D8%DF%2C%B2%285%DA%80%D99%60A%08.%001E%19u%0C%D2H%25%9BLX%0A%7B%D3m%98%A3%2B%3B%F2%28%A2%8F%B3%00%F9T%80%A4%99%96%00%03%0FHP%C1%05%19l%C0A%07%1Dx%E0%C1%07p%C6%F9%01%08t%D6i%27%08%21%E4%A9%E7%9E%21%80%E6%E7%9F%80%06%2A%E8%A0%84%16j%E8%A1%88%26%AA%E8%A2%8C6%9AU%40%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%CF%0E%03%88%1EP%E0%00%83%0A%20%60%0C%C1%82%A6%CE%9FC%8C%1EE%9AD%A9%92%25K%970e%CA%A4I%D3%A6M%9C8u%F2D%FC%D3%27P%A0B%29%17%25j%94sR%A4JI%9F%5E%CA%94%F5S%D8%7F%8A%0E0%80%80%01%05%116%EF%A4%E0%21%A5L%1DA%8B%22U%CA%04%7C%B8%F1%E4%A1%98%3F%9F~%1D%3B%2AT%A9R%A9%DA%BF%AA%3F%AB%FF%AD%04%18%A0%2B%04%BE%F2%8A%2BA%05%20%00i%08%9C%16%02%0CFl%E1%06%1F%88%3C%B2%1Ep%9E%1C%97%9C%7C%A3%40%27%5D%7D%F7%DD%A7%1F%7F%FE%01%28%60%2B%04%BAb%E0%2B%B0%BC%92%A0%82%DE%29%00%81%06%27%E8%10E%19v%0C%D2%C8%24%98l%D2%89%86%F1%3D%17%DD%87%D8%9D%22b~%24%AE%F2%1F%2B%27%A6X%E0%8A-%0A%25%9A%00%04%98FAjFh%E1%86%1F%89Dr%89%8F%C7q%E8au%A6%D8w%E4~%AA%94%C8%E4%89%28%3E%C9%22%2Cp%C2b%D4%94%0C.%E0%80%04%15%5C%90%81%06%1Bp%E0g%07%80%06%DA%81%07%84%16Z%E8%07%88%26%AA%28%A2%204%EA%E8%A3%8E%82%26%E9%A4%94Vj%E9%A5%98f%AA%E9%A6%9Cv%EA%E9%A7%A0%86%9AU%40%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%CF%08%03%88%1EP%00%C1%03%0C%26t%40%19%23%87%8F%A0C%8A%185r%F4%A86%A4H%B8%25%E9%9E4%89%92%EFJ%C0%2BY%1An%E9%92qL%982e%D2%C4%5C%D3%A6%E7%9C6q%9A%DE%A9%BA%A7%EB%D8u%8E.%DD%E0B%89%1CQ%CC%F2%D4%09%94%C8%91%24J%C2%8D_J%BE%9C9t%EA%D5%3Ba%FFD%FF%13%28P%A1%F2%87%12%C5%7F%94%FFQ%A4%04X%CA%80%03%9Ab%E0%29%A6h%17%C0%00%04%1C%C0%40%05%22%D4%B0D%18s%FC%91%C8%23%93Tb%9Cr%ED9%27%1D%7C%D8yR%DF%7D%F8%E9%C7_%7F%FE%05%28%20%81%06%1Ex%CA%8B%A7%28%28%00%01%06%28%20%C1%070%18%D1%05%1C~%20%82aq%ED%3D%F7a%7C%F2%898%E2%7D%26%A2%F8%9F%8A%04%B2%E8%E2%8B%A8D%89%CAN%DB%25%00%C1%06%2A%00%81%05%1B%7C%F8H%89%25%CB%7D%C8I%7C%F3%D9%87d%89%FB%9D%B8%E4%8AN%3E%09%A5%94R%FA%24%9A%00%A4%21%B0%C0%03%12TpA%06%19h%A0%C1%06%80%06%1A%28%07%84%16j%28%A1%1D%24%AA%E8%A2%8Bz%E0%E8%A3%90F%EA%01h%94Vj%E9%A5%98f%AA%E9%A6%9Cv%EA%E9%A7%A0%86%2A%EA%A8Y%05%04%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%CF%03%03%04%18P%E0%40%83%0B%25r%3C%11%03gO%A0B%87%10%25%9A%AD%A86%ED%DA%B8%15%CDN%A4%BB7%EE%DD%BAy%E7%BE%1D%5C%B8%EF%E0%BF%13%D1%0C%20%80t%82%07%1AR%F8%B0%92%06%8F%A0D%8D%1EE%92%C4%BD%BB%F7%EF%E0%C3%A7%8B%1FO%DE%FB%F2%D1%05%9EkX%01%C4%CA%9A%3C%83%149%8A4i%12%A5%FB%F8%F3%EB%DF%CF%1F%BF%FD%FE%00%F27%C9y%A4%21%F0%C0%06%ECa%B1%C6%1E%850%02%89%7D%95D%18%A1%25%14JXI%85%17Z%22%21%86%16%5E8%A1%86%19n%D8%21%85%20~%18%E1y%02%10%A0%9E%0A%40d%D1%06%1F%874%22%09%25%17%5Eb%E3%8D8%E6%A8%E3%8E%3C%F6%E8%E3%8D8%89%D6%1C%01%06%400%81%05%17%60%90A%06%1A4%E9%E4%93PF%29%E5%94TV%F9%24hXf%A9%E5%96%5Cv%E9%E5%97%60%86%29%E6%98d%96i%E6%99Y%05%04%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%CD%01%02%08%20%60%40A%84%0E%2C~P13%87O%A0B%87b%CB%8Em%A8P%21B%84%06%09%DA%1D%A8%F7%9F%DF%7F%FC%F4%E9%C3%87%CF%9E%3Dz%F2%E0%C1s%E7%8E%9D%E7u%EA%D0%A13G%8E%9C8p%E0%BCq%D3%A6%3B%9B5%E0%D3%FE%88Gs%C6%8C%992%2CC%8B%1Ep%80%81%85%115%96%80%81%C3%A7%90%A2F%8F%20Az%C4%FF%91%23G%8D%04%C8%08%23%8B%2C%A2%88%22%89%24%82%C8%82%87%D4f%5Bn%BC%05%02%08%20%C1%F9a%21q%C7%21%97%87r%CDE7%1Du%D6e%97%DD%1B%DD%B5%14%DA%00%05%24%E0%00%06%27%EC%20%85%19u%00%82%08~%91Hbc%248%EE%E7%DF%7F%0062%20%81%08%2A%88%88l%0E%E2F%C8n%82%F4Fa%85%C3%19%A7%21%87%CEy%08%A2u%D8%C1a%A2%00%03%94%26%01%07%2C%04%91%C5%1Az%10%B2%C8%23%92L2%09%25fNrc%8E%FD%FD%17%A0%8F%05%1A%98%A0%82%B4%15%09%21oK%06G%9C%93%7Bl%98Gs%D0IG%5Du%E9%89F%40%7B%15%880%83%12_%C4%F1%07%22%8EHB%09%25%95T%3A%29%9Aj%AE%19%89%8En%0A8%A0%9C%092H%DB%83%10%2A%B9%E4%85%C5e%98%1Cs%80z%08ShNX%12P%C0%01%09%28%B0%00%03%0C4%D0%40%06%BC%F6%EA%2B%06%C0%06%8B%C1%05%C4%16k%EC%05%16%24%ABl%B2%154%EBl%B3%14D%2Bm%B4%13Tkm%B5%12d%AB%EDg%DCv%EB%ED%B7%E0%86%2B%EE%B8%E4%96k%EE%B9%E8%A6%AB%EE%BAj%05%04%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%C9%01%02%08%20%60%40%01%84%0C%25j%24%D1%92%A6N%1FA%87%10%25%9A%8D%08%D1%A1C%85%0A%0D%12%14%28%D0%9F%3F~%F8%F0%D9%93%07%CF%1D%3Bu%E8%CC%91%03%E7%8D%9B6m%D6%A8I%83%C6L%192c%C2%84%F9%E2e%8B%96%2CX%AC%FET%A1%22%25%0A%94%27M%98%2CY%92%C4H%91%21A%80%FC%F8%D1c%87%8E%1C7j%94%14%3D%A0%00%02%07%16%8C0%83%11Z%A8q%87%20%894%F2H%24%92H%12I%24%90%3C%E2H%23%8C0%B2%08m%B8%11B%08o%80%00%D7%C7py%E4q%5Crr0%F7%06t%D2Qg%1D%19bl%E7%05%17%DEeq%85%15TLQ%1E%14N%A8%97%04%12%EE%11%21%84%7C%3E%F00Rh%A2%11p%C0%02%12p%B0%82%0FR%94A%C7%1F%884%12%C9%24TR%E9%60%24%12Nh%E1%85%B6e%B8%5B%20%1D%06%07%A2q%C9-%17Gsm%B0%91%E2%19%2B%8A%01%06w%5Ch%F1%DD%8C5Jq%5Ez%EC%F1H%C4%10%3F%FE%20Rh%02%08%D0_%02%A7%95p%C3%12%5E%C0%D1%C7%21RRR%C9%A3%95Pb%25%84YR%B8%88%22%89%D8fH%21%84%7C%19%A6pz%14wG%99r%9C%F9%9C%9A%D3%B1%89%5D%18%60x%F1%E2w%B4%E1%D1xc%8EK%28%91%C4%11F%EC%19%C4%90%82%1A%C9%40%05%20%C0%40%04%16j%E4A%08%23%91Pb%C9%25%CC%5EbI%A4%92%3A%18%A1%23Z%5E%9A%E9%21%9Bn%D8%1Bp%C1%ED%11%EA%88%CA%99x%EA%1A%2A%5E%97%5D%AB%5D%C4%18%5E%156F%F1%04%AD%EC%E1J%C4I%80%0E%40%40%01%07%24%A0%C0%02%0C0%D0%C0%BF%00%03%DC%2F%06%04%13%7C%C1%C1%07%5B%A0%B0%05%154%5C%01%05%10S0%C1%C4%13K%60q%04%18G%00%C1%C6%1B%3F%E0%F1%03%0E%84%EC%40%C0%FD%96%BC%C0%C9%27%2B%A0%B2%02%09%7C%E6%F2%CB0%C7%2C%F3%CC4%D7l%F3%CD8%E7%AC%F3%CE%3C%F7%ACV%40%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%C3%01%02%0C%20%60%00A%83%09%1AH%C8%10%22%25L%9B%3B%7F%0A%25b%E4%E8%91mG%8E%1A1R%94%08%D1%A1B%84%06%05%02%F4%C7%0F%9F%3Dy%EE%D8%A13%27%CE%9B6m%D6%A49c%86%8C%980%5E%BAh%C1r%A5%CA%94%28P%9A%FE0Y%92%C4%08%91%20%40%7C%F0%D0%81%C3%06%0D%191%5E%B8%60%A1%02%C5%89%12%25F%8C%00%01%C2C%87%0D%1Ah%90%C1%05%16T%80Qh%02%90%A6%80%03%14t%90%C2%0DH%60qF%1D%7F%20%E2%88%24%95Xr%C9%86%97XR%09%25%93H%12%C9%23%B91%B2Ho%86%00%27%08q%7D%EC%A1Gru%D0%21%87s%D1MW%9D%18%60x%C1%C5vVP%21E%14O4%B1%04%12F%14%21Dz%EB%B5%F7%5E%7C-%AC%A0B%0A%27%98%40%C2%08%21%F4%E7%1F%07%01bPQh%01%080%9A%01%098PA%07%28%DC%90%84%16h%D4%11H%22%8FPrI%26%9A%C4%99I%26%1D~%18%E2%88%25%9E%E8%5B%21%83%08%12%C8%1F-%EA%81%C7%1D1%CA%01%C7s%D2%A1qc%8E%3Bb%D1%E3%8FN%8CW%1E%11G%AA%C7%9E%7B3%C47%DF%93QN%29%02%08%1F%5C%B9A%06%5B%22HZ%98%15x%90%02%0Eg%AAq%87%20%EB%8BDR%09%26%9Al%C2%C9%26%9B%C8%B9%A1%87w%92%A8%9B%9E%BF%11%B2%22%A0%7C%08J%A8%8C%87F%A7%86%A2%D61%CA%A3%8FPD%3A%A4y%95%26%89i%0C04%C9%A9%94T%82%EA%1F%80%14%21%F8%E5%82%A9%AA%80%83%12%5B%AC%91%07%21%8CHr%89%26%9Ct%22o%27%9C%DC%AAI%26%98%D4y%27%24y%F6%16%EC%B0%C6%BDx%AC%A1%88%DA%D8%AC%8E%CF%FE%18%E4%90G%18%89%E4%A54d%FA%82%B6Pr%FBi%A8%1Dp%90%11%97%5E%12P%40i%09%28%B0%00%03%0D%94%EC%C0%C9%27%97%AC%F2%CA%0C%B4%EC%F2%02%16%C4%5C%60%05%15P%60%F3%048K%A0s%04%3CC%E0%F3%03%40%A7%5C%F2%CB%0B%14%AD%C0%D1%09%24%9D%00%02L%1F%E0%B4%D3%06Dm%40%01TWM%C0%D5%04%7C%A6%F5%D6%5Cw%ED%F5%D7%60%87-%F6%D8d%97m%F6%D9h%A7%ADV%40%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9s%C4%00%01%F6%82%0E%20%20%B4%5E%D2%A4%09%188%80%80%01%84%0A%1AD%A8%A0%01%84%09%961m%EE%FC1%B4%E8%D1%24K%972i%D2%B4i%93%A6L%99.Y%B2T%89%D2%24I%90%1E9b%B4%28%11%A2C%85%06%05%FA%E3%87%CF%9E%3Cw%EA%FE%CC%89%F3%A6%CD%9A4f%C8%8C%09%E3%85K%96%2BU%A4%40q%C2D%C9%11%22B~%F4%D8%91%C3%06%8D%180%B8%C0%82%0A%28%98%40%C2%08%21%7C%E0A%07%1Ch%90%01%06%16T%40%C1%04%12D%00%C1%03%0F4%D0%C0%02%0B%28%E0a%02%08%20%20P%00%03%0CP%C0%01%09%B8F%81%06%21%AC%60%C3%10Pla%86%1C%7B%10%B2%88%24%97h%D2%09%28%A2%8C2%0A%29%3E%8E%22%8A%28%A0%80%F2I%27%9Cpr%1C%26%974%27I%24%D2Q%97%08v%84l%D7%9D%1Ex%D8A%87%1Cp%98%97%C6%19e%88%01%86%17%5BdaE%7CP4%B1D%12F%0C%01%84%0F%3C%E4p%03%0D3%048%60%81%07%86%00%C2%82%0DfpA%84%13Vx%A1%03%1A2%D0%E1%87%00%90%A8%1A%02%0B%3C%40A%06%20%A4%20%C3%0FKdA%06%1Cz%0C%B2H%24%96l%F2I%28%A2%90R%CA%A8%A3%92%02%A4%28%A1%18%E9%09%92%C6%25g%89s%FE%D09%D2%08%23%D6%19B%88%20%DBy%07%9Ex%E4y%99%5E%18_t%A1%05%16VL%21%05%7D%F6%E1%A7%9F%0E8%D80C%0C%2F%B4%B0B%0Ax%22%A8%60%07%1B%3C%F8g%A0%12%400h%03%86r%E8a%A2%27%26%D0%40%04%17x%60B%0C%3D%24aE%18m%E0%11H%22%9Cn%E2I%A8%A3%9Ar%8A%29%FC%9AR%AA%90%A9~%B2%AA%92%99%60%C2%1C%25OJ%D7Hu%88%14r%2B%20Wf%B9%25%1Cn%B0%A1%06%98c%8C%B9%85%16%F0%C9%E7%C4%9Am%02%D1%03%0F%CC%D6%20%83%9D%2A%A4pB%09%23%88%00%C2%07%0C%3A%08%A1%84%14Z%08%01%A1%E0%8A%AB%00%00%02%A4%F8%DA%06%23%B4%90%83%11S%7C%A1F%1D%7F%20%F2H%25%9E%E2%7B%CA%29%A8D%8D%CA%D3%FC%96r%2A%AAF%B2%BA%E4%AB%CFE%B7%B0%22%D7e%B7%5D%1F%DF%857%B1%AFd%00%DBE%99%C5J%F1D%13%C9%06%A1%DF%0E%CD%D2p%B2%B4%04%9AP%82w%08%09.%B8%81%06%18l%3BA%CD%DF%86%DB%E1%88%A4%090%00%01%04%14%B0Z%02%0A%2C%C0%00%03%0D8%E0%00%86%98g%AE9%86%96wn%B9%86%A0%83%3B%F9%E8%1C%96%EE%E1%E0%83KPa%046c%FE%B9%E8%86%7F%98%00%88%21%1E%60%FB%01%06%E4%5E%C0%EE%BB3%CEx%89%C0%03%2F%C0%F0%C4%97%06%9Ag%C8%27%AF%FC%F2%CC7%EF%FC%F3%D0G%2F%FD%F4%D4Wo%FD%F5%7B%05%04%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1c%AD%01%FAF%0E%40yo%00%01%98%23%E7%0D0%A03%01%02z%03%140p%E0%80%01%BD%02%12%28%60%E0%80%81%5E%02%0F%24P%B80A%EF%81%0C%1CB%94%F0%A0w%01%8A%163t%B8%D0%1B%C1%07%91%25R%84%E8%D5p%C5%0B%994V%F4%8ExC%27%8F%1F4z%5B%0CB%B4%E8Q%1D%BD6%26%FEY%CA%B4%E9%8F%5E%1F%9EB%89%22eH%AF%10S%A7R%A9Z%A4%D7%08%2BV%ADZ5%D2%9B%C4%D5%AB%FF%8E%E8%A5D%2C%04%C6%F2%88%80%B2%24%28%CB%2B%AA%A8%92%CA%83%A8%A0r%CA%84%A6%94ba%29%A4%8C2%8A%28%A1%80%02%8A%27%9Et%C2%89%26%99%60r%89%25%95L%22I%24%8F8%C2%C8%22%89%1Cb%08%21%82%FC%E1%07%1Fz%DCa%07%1Dr%C0%D1%C6%1Ai%98A%86%18_p%A1%05%16UH%F1%04%13K%20a%C4%10%40%F4%A0%03%0E5%CC%10%83%0B%2C%A4%80B%09%24%8C%10%C2%07%1Dp%A0A%06%17TP%01%05%13D%00%C1%03%0E%B4%C6%C0%02%0A%24%90%00%02%08%94V%9A%01%05%E4%F9%D9g%00%2C%A1%E0%9F%05%C2%02%CB%7F%AE%E4%97%1F%2B%AB4%98J%84%A7T%98%21%87%A0%7C%22%E2%26%99%9CH%C9%24%91%40%E2%22%8C%87%14%22H%207%EA%81%87%1Ds%C4%F1%06%1Bj%9C%21d%18%5E%1C%99%24%14%FEM4Y%84%10%3F%F0%A0%C3%0D4%C8%00C%0B%2B%A4p%82%09%24%7C%E9A%07%1Bh%80%81%05%15L%20%81%9A%0F%B0%D9%C0%9B%0AD%3Bg%9D%A6%E5Y%C0%9E%A0-1%CB%2C%7F%CA%12%A8%A0%AF%B8Rh%2B%F7%AD%92%28%84%8Db%B8a%87%9Fx%C2%C9%26%24%A2%A8%22%8B%8DpZ%08%21%81%FC%C1%C7%1E%A3%F2%E8%23%90%AB%B6%8A%85%15SD%E1%C4%12I%3C%19%E5%94U%C6%F0%02%0B%2A%FCJ%82%08%20%80%B9A%06%18%94%89%A6%9Ak%3A%F0%2C%B4q%D2Y%27%9Ez%EE%D9%E7%B6%DC%2A%F8%ED%A0%E1%8E%5B%AE%83%8B%A6%FB%28%BB%21%8EX%A9%25%94%AC%F8H%23%8C%28%82%C8%8C%F9%F6%B1G%1Ew%D4%D1%A3%1B%00%93%C1%2A%17YXA%85%92%08%1BAD%10%3E%EC%80%83%0D3%C8%F0B%0B%2A%A0%00%AC%08_%86i%EC%05%C8%A6%19A%04%CE2%00%B2%02t%DAi%ED%B5%7Cj%8B2%A0%04%82%DB%B2%A1%88%2A%2Aa%A0%85%18%8A%02i%CD%94Z%8Ai%8B%2F%C6%E8%29%207%12%5D%07%1D%A6%A2z%C6%90_t%A1%C5%15%AF2%A1%C4%11%B3%D6%9A%83%0D4%C4%00%83%0B%BD%9EP%82%97%1F%0C%7B1%D9%C9.%DBq%03%CF.%00%27%DBmW%5B2h%05%9C%CD1%04%B8%E7%AE%FB%EE%CD%F6%EE%3B%9Bm%06%EF1%EB%AC%ABm%BC%EB%AEG%AB%BC%9Cr%E6%DEl%9B%C4%AB%9D%BC%B4%D3Rk%9A%01%D8%BF%8Dmg%DC%0F%80%D9%F7%99Q%26%FE%F8%E4k%F6%D8%F9%E8%A7%AF%FE%FA%EC%B7%EF%FE%FB%F0%C7%2F%FF%FC%F4%D7o%FF%FD%F8%DF%14%10%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%85%06%000xo%80%C3%87%F5%06%18%C0X%40a%BC%02%0AH.%40%40%EF%80%04%98%13%18%D0%5B%00%82g%08%0C%F4%22%D0%B0%A1%F4%04%BD%0DV%B0%60%B1%E2%83%5E%0AB%86%C8%86%A1%D7%03%97%DB%5C%8A%E8EAg%8E%EF%2Czg%1C%1A~%28%8D%5E%1E%95%2AY%B2tG%AF%10P%D0A%01%D2k%E4%94%F5S%86%F4%26a%C5%9D%95%22%BDK%5E%FE%B9%1A%DF%08%3C%2CX%AF%5E9%D2%CB%24%96%7BX%EB%F32%91%25%CB%FD%23%F6%F4%EB%DF%97%9F%3F%D6~%BC%F3%D5%E7%1F~%F4%0D%C8_%81%FF%DD%15%A0~%04%DAG%20%83%07B%08%60%7F%09%DA%B5%04%85%E0a%98%D7%85%08f%D8%E1%86%05%C6%E2J%2A%A9%A0%82%8Au%A6%94%A2b%29%A4%8C%22J%28%A1%80%F2%89%27%9Dp%B2I%26%98%5CbI%25%94H%12%C9%23%8D0%A2%08%22%87%14BH%20%7F%F8%B1G%1Ev%D4%21%07%1Cm%AC%91%86%19d%88%01F%17Z%60Q%85%14O0%B1D%12E%08%F1C%0F%3A%D8%40C%0C0%B8%B0B%0A%26%900B%08%1Ft%C0%81%06%19%5C%60A%05%14H%10%81g%0E4%C0%C0%02%0B%28%A0%40%02%08%1C%60%E8%01%06%18%20%19%01%8C%12%C0%D8%A3%02D%0A%00%87%EE%BD%87%9Ex%ADd%CA%CA%2A%AB%A8R%E2%89%29%B6%F8%E2%8C5%DE%A8c%8F%3F%069%A4%21G%FE%D1%C7%1E%FEx%D8AG%1Co%B0%A1%C6%19f%8Cq%A5%16WP%21%05%14M%28q%04%11A%F4%B0%03%0E6%CC%10%83%9A%29%9CP%C2%08%22%80%E0%01%07%1Bh%80%C1%9D%13%E8%19%C1%03%0E%FC%09%A8%A0%98%15%8A%E8d%8D%3A%FA%E8%00%91%0A0i%7F%96%A6%E7J%A6%ADl%DA%E9%A7%A7%84%EAb%8C4r%A2I%26%A7%FA%08%24%23%89%20b%24%92%AF%C6J%87%1Co%B4%A1%06%1Ae%E8%8Ae%AF%5C2%21%2C%11%40%90%89C%0D%CA2%7B%82%09oJ%DB%C1%06%19%60pA%05%D9J%00%01%B7%0Cx%0B.%02%E2%2A%BAh%B9%E7%A6%BBn%88%B1%9C%E7.%BC%DC%CDkb%BD%2C%DEK%AA%BE%FCZ%82%EA%BFC%0E%EC%2A%AC%B2%3E%A90%C3b%7C%C1%85%16V%F8%DA%E5%C4%15%EBp%F1%0Ci%AE%E9%2C%B4%1E%83%7C-%C9z%9E%DC%A7%9F%81%0E%CA%B2%A1.S%D6h%CC2s%28%E0y%97%8E%A7%29%A7%9E%96%C8%B3%A8%A1%7C%F2I%87%A9A%0F%DD%C8%22%01%1B%5Dp%1D%07C%B9%C6%19e4%8De%D4%11%0B%3BD%C5%C7%26%9Bu%0A%28%3C%1BB%D7%21%8F%9C%ED%9E%DC%F6%A92%A1-%93%BB6%DB%EAv%F6%D9%E9%A8%7B%F6%C0%EA%AC%B3%EE%C0%EB%B07%20%FB%EC%29%A7%0C%E8%ED%82%82%9B%19%CBg%1B%2A%BB%ED%DF%0E%1A%AE%B8%88%26%3A%99%DA%A3C%9An%BA%885%EF%BC%F3%81E%2F%FD%F4%D4Wo%FD%F5%D8g%AF%FD%F6%DCw%EF%FD%F7%E0%87%2F%FE%F8%E4%8B%14%10%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%9F%06%0007nB%01%02%02%E8%B5k0%C0%00%02%80%07%E0%D5%5B7n%80%03%0A%10%208%60%A0%00%81%01%03%0A%C7%3DPA%C2%03%07%0C%16%24%40%60%40r%DC%05%23%3Ch%B8P%B9A%01%BE%04%25%D8%80%A1%A2%04%08%07%9E%F9jx%82%04%88%0E%13%A8%0D%8E0%03%26%8B%14%1C%B9%0B%B6%D8S%07N%9A%25%C1%09%D6%60%84h%90%1F%2F%C9%07%F2%D0tI%92%237%D1%05%0A%19%15%AA%D3%26%3D%D9%01%FE%14Iu%AA%D4%28A%E1%91%B4b%B5%2A%15%A2%F0J%5E%B9j%D5j%11%7CX%B0%E47%0A%BF%24V%2C%FC%8E%F0%27%8B%2C%FF%05%98%DD%12%03%FA%F7HxL%24%18%CB%82%07%3A%08at%08%12%F8%A0%80%16N%98%5C%83%192h%21%2C%1A%06%D7%A0%7F%17f7%A2%82%1E%92%18bnL%F8%07%20%83.%C2b%60t-%FE%27%23%8C.%CE%98%5C%7F6%EA%28b%8C%3E%B2%08%24%7FC%1Eh%E3%2B%FB%1D%88_~IR%B8%24%92%FC%3D%D9%E4%8E%F8%BD%02%A5%92%F9%5D%E9d%96S%06%B7D%96%AEt%99%5B%7CV%BA%C2%08%7CV%CAwfvd%BA%12%26%9A%F2%99%19%5E%12e%B6%B2J%29x%922%8A%28%A2%84%02%CA%27%9Ex%D2%09%27%9Bh%82%C9%25%96TB%89%24%91%3C%D2%08%23%8A%24r%88%21%84%04%F2%87%1F%7C%E8%81%87%1Dt%C8%01G%1Bk%A4a%06%19b%80%E1%85%16XT%21%C5%13L%2C%91%84%11%FEC%FC%D0%83%0E7%D4%20C%0C%2F%B0%A0%C2%09%25%8C%20B%08%1Ft%C0%81%06%19%90V%01%05%12D%00%C1e%0Dd%A6%80%02%9B%29%B6%18c%05T%EB%18%60%8FA%06%19%5E%DC%E2%05%40%9B%F4%AD%C7%9E%2A%A9%A0%82%CA%29%A6%E4%D9%E7%9F%82%16%9A%C9%25%95L%C2%A8%A3%8C%24%82H%21%84%08r%E9%1Ey%DC%D1%29%1Cn%84%3Aj%18_p%91%85%15SH%01E%13J%1CA%04%10%B3%E2P%C3%0C%B8%EA%8A%82%09%24%88%00B%B0%C3bp%81%05%15L%90%EC%B2%0E4%BB%C0%02%D0J%CBXc%D6b%9B%AD%B6%DDr%FBm%9C%E1%B22n%B9%A7%A0%5B%8A%9E%EB%02%EA%9D%A1%89%CA%0B%89%A3%8BH%8A%AF%A5%7D%F0%CB%A9%A7%A0%A2a%C6%18ax%B1%05%16%08G%C1%EA%ABC%40%AC%83%C42%C0%E0%C2%0A%29%F0%3AB%08%1Bw%B0%81%06%18X%60%01%05%22%2B%CB%AC%C9%29%2Bv%00%B5%D5b%AB%ED%DD%82%C5%0C%00%FE%9D%F3%D1g%F3%2A%AB%90%7B%AE%CE%3C%FB%F9%C9%A0%85b%12t%24%908%C2H%D1%87%14%22H%20%98jZG%A7o%80zF%19%A5v%A1%C5%15%AA.%BC%04%12E%08%F1%03%0F%B4%D2%D0%F5%D7a%F7J%F6%07%1Cl%90A%DA%21%27%ABl%C9%26%A3%1C%F7%DC%2C%D7m%F7%DD1%7B%CBw%CD%E3%0A%AE%F3%CE%3D%0BJ%E8%BB%96%2C%DA%A8%E3%8A%20rH%BE%80%60%DAo%1Ds%C4%E1%06%1B%A2%92A%B0%E7VP%B1%2A%13J%90%1E%84%0F%3B%E4p%83%EA%2F%B4%B0%C2%C5%19%03%EB%81%D9%C5%AE%DD%F6%B2%0F4%D0%C0%C9%28G%3B-%CB.%7B%D9%B6%82%27%00%00%14%00%02%08L%E0%03%16%C8%40%06%3A%E0%81%10%C4%9D%FE%F4%C7%80%0Af%86%7F%BA%7BV%026%E8%3F%B9%CDme%06%60%99%067%E8A%DE%85%D0Z%D7%0A%0C%DE%F2%D6-%C2%B8%F0%850%0C%8F%0CgH%C3%1A%DA%F0%868%CC%A1%0Ew%C8%C3%1E%FA%F0%87%0D%40%0C%A2%10%87H%C4%22%1Aq%25%01%01%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%ACY%89%01%02%9C%AD%18%40%40Z%B5%00%E0%AE%5D%18%A0%80%01%02%04%06%08p%9Bv%AE%C2%00%0B%228Pp%E0%EE%00%BDr%FD%16%0CP%21%C5%08%0E%15%200Hp%20%AFb%84%1D%964%09RC%05%88%0C%13%1E%28%18p%D9%A0%860x%DA%88%B1%B2%A4G%8C%13%1E%1A%24.%0D%21%8D%25H%88%FC%D0Q%F3EJ%11%12%05J%13%2C%E0%25%14%29P%9A%285%2A%C4G%0E%94%08%C2%07%06x%02%AA%D5%AAT%A5Du%C2%24i%8F%8C%E8%03k%FEX%82%05%EBU%2BV%AAN%91%CAD%854%F8%0E%85d%C9%8AE%FE%95%ABV%A8%E64%00%0F%E0A%1EX%F2%C9G_y%84t%C0%9F%40J%CC2K%80%F3%C5rI%0E%07%0E%94%C4%82%0C%8A%22%C5l%FC%25%C1%20%2Bi%1C%10aAJ0%08%C9%87%06%85%18%E0%88%24%12%B4%84%88%29%AA%18%60%2C%8F%B48%D0%8A%02%C6%28%23%00%26%CEg%A3%8C%26%C6%02%E3%8D%00%AC%E8%23%2C%8E%00%29%24%7DE%DE%B8%84%8F%F4%ED%D8%E2%92C%3A%99%22%94%E4%25%29%23%95D%1A9d%96J%0E%08K%23F%D6%F7%0A%98J%8AI%E6%95f%86%F9%8A%7Dg%3E%B9%A6%2B%AE0b%E4%9Bq%CE%09g%2Br%2Ay%27%9EF%DE%D7%0A%9Fz%FE%D9%CA%22%7D%0AJ%E8%8DJ%08%CA%CA%A1%3C%FE%C9%CA%A2%40%26z%1E%2B%8AD%EA%E8%2A%95%DE%88%C4%A3%AC%AC%92%08%90%9Bv%EA%29%A8%8F%AE%A2%CA%A7%9A%AEb%AA%2A%88%80%AA%AA%2A%FE%A9%B4%9A%AA%2A%B0%CA%2A%23%12%A6%A6%12%2B%90G%D0%9A%0A%2A%87%00i%84%AE%A8%00%2B%EC%AF%A8%9Cb%C8%B1%C5%2A%0Bd%11%BF%9EbJ%21%CF6k%0A%29%9Dp%B2%C9%26%9Adr%89%25%95P2%89%24%91%3C%E2H%23%8B%24%82%C8%21%86%10%22%08%20%7F%F4%B1G%1Ew%D8A%87%1Cp%B4%C1%86%1Ah%981F%18_p%A1%05%16VL%11%85%13L%2C%91%84%11C%00%E1%C3%0E9%DCP%83%0C1%BC%C0%82%0A%28%98P%C2%08%22%80%F0A%07%1Ch%90%01%06%17TP%C1%04%12D%00%C1%03%0E8%D0%C0%02%0A%24%90%00%02%07%14V%00%5Ez%F1%F5%16DE%24kJ%29%A5%902%8A%28%A1%80%F2%89%27%D9n%92%09%26%E0RB.%24%8E0%92.%22%ED%0A%F2%87%1F%7C%CCk%2F%BEn%EC%7BF%19%FFz%C1E%16VP%21%05%14O0%91%C4%11D8%0C%F1%0D4%C8%00%83%0B%17g%BCq%08%20x%00%B2%FE%C8%24W%40%01%CA%2A%B3%DC%00%030%2B%10%B3%CD7%E7%95%B3%CE%0F%15q%8A%B4%40%93Bt%D1%9F%24%DD%ED%B7%95%8C%5B.%BA%EA%1ER%88%20%81%F8%21%2F%BDu%CC%01%C7%1Bm%AC%91%86%19d%00%DC%85%16WTa0%C2J%1CQ%84%10%3F%F0%A0%03%0E5%C4%FDB%0B%2B%A4pB%09%24t%AC7%07%1Bh%40%B2%05%7F%A7%1C%B8%CB%2F%1B~%B8%01%D4%27%9E%D7%5E%D8c%88%90%E3%3F%07%3D4%E5Hk%AB%09%D3%E1%92k.%23%8A%24%E29%21%81%5C%CD%87%1Exl%0DG%D7i%A0%016%18%5DlA%B6%D9O4%A10%C3n%8BX%DC%E6%C6%82%14d%8C%04%23%08%C1%07%3C%80%BC%E4a%C0%02~s%DE%CAZ68%98%CD%8Cf53%40%016%A88%EC%F1%A5%21D%80%9C%D0D%21%0A%A3UN%7C%DE%0A%D7%24%CAu%AE%A9%19%E2s%A1%CB%1A%E9%E6%10%07%D4%A9%8Eu%00%13X%ECf%C7%04%25%20%A1%08%84A%C8%DD%EEj0%83%8A%01Ox%1B%EB%D8%02%917%B2%0B0%0Fp%13t%19%E1%2Cx%C1%0Cn%F0f%87Y%DC%CE%16B%80%07%B0%ACe%60%A4%60%03%C68F%06%98%D1%8C%0BHc%1A%A5g8%99%B9%11%01p%84c%CD%E6H%BD%3A%5E%91%83x%21%C0%1C%0BS%BD%3B%E6%11gY%CC%A2%07%B3%F7%96B%1A%B2%2F%40J%A4%22%17%C9%C8F%3A%F2%91%90%8C%A4%24%27I%C9JZ%F2%92%98%CC%A4%267%C9%C9N%C6%24%20%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%2B%C4%00%5E%3F%0A%18%1B%A0l%D8%8C%04%0E%14%180%40%80%D9%B3%15%0FP%90%C0%00%C1Z%B2p%27%2AX%21%A3%84%86%08u%0B%10%18%006%EF%C3%03A%C6P%19%22%83D%06%BA%07%06%18~8%60%C9%A0%40t%C8P%11%12%83%84%06%07%92%277%1C%22%89S%25F%81%E6%90%91%12D%C5%02%D1%0DO%28JeJ%94iF%7F%E4x9%21%00%F6%C2%0C%7DZ%B5Z%95%AA%94mJ%89%AC%28%F0%AD0%01%1AU%AF%5C%B5b%B5%0AU%29Py40O%28%C0J%29X%AF%A2%FE%0Bg%A5%2AR%8D%ED%09%81h%82%05%3E%BC%F4V%A0%B2%F4Fo%B0%04%22%F6%EC%DD%BBJ%15%E75%FD%82%12%E8%F1J%2C%F8%85%F7J%2B%81%5C%F0_A%06%90%A1J%2C%10%E6%17%DD%23%2B%2CHP%00Q%88B%20~%EDu%E2%84%85%04%D5%60%09%84%1B%B6w%8A%18%04%80%28P%07%84%90%18%21%7B%AD%E0%E1%80%8A%008%80%C7%2B%B2%90X%60%21%1E%D0%28P%12%B2%E4%A8%23%2C%97%E0%E0%E3%40H%08I%A2%28Q%14v%24%00H%E8%B8%0A%1A%07%3CIP%12%2F%3AbeAQn%A8%E5%96%03%25%C1%E1%97%60%02%20f~%8D%94%F9%A3%84i%AA%29%A6%81m%96%89%84~q%82%99Dt%D21%A2%A6%99%AE%BC%A7%A7%9B%7D%0A%F7%A7%9C%EF%B5%B2%C8%9EH%087%DD%A1n%8E%C7%0A%A3e%26%E1%A8%22%88%B2b%E9%2A%89T%BA%CA%A6%99%AA%89%04u%AB%A8%D2%A9%9C%A1%AA%A2%0A%22%88%86%9AJ%2A%A8z%AA%CA%AA%FE%A8%B4%2A%27%AC%A8%1C%B2%E7%11%A9%A0%82%CA%29%86%DC%AA%EB%29%A6%F4%AA%E6%11%BB%9AbJ%21%7B%1A%01%AC%29%A5%20%AB%A6%11%C6%96B%0A%21%7B%16%C1%2C%29%A4%0CR%AD%B4%A4%8C%22%C8%B6%DD%8A%F2%AD%9AD%84%1BJ%20%7B%0E1%CA%28%A1%9C%BB%A7%10%A2%88%12%0A%28%80%EC%19D%BB%A0%7C%F2%87%BD%F9~%E2%89%1F%7B%02%91%AF%27%9D%00%AC%26%10%FEz%C2%09%1F%01%7BB%F0%26%0C%AB%F9C%27%9Dp%B2%C9%1E%7B%F6%C0%89%C5%9A%E8%91%F1%26%9Bh%82I%1E%1Fk%92%C9%25x%EC%C9%83%C9%97Xr%C7%9E%3B%9ClI%25%920%B2H%22%88%1CbH%21%84%08%12%C8%1F~%F0%B1%87%1Ex%D8Q%C7%1Cr%C0%E1F%1Bk%A8%91%86%19d%8C%11%06%18%5El%A1%05%16VP%21%05%14N0%B1D%12G%14%21D%10%3F%F0%A0%03%0E7%D40C%0C0%BC%D0%C2%0A%29%9C%60B%09%24%8C%10%02%08%1Et%C0%81%FE%06%19%60%60A%05%15L%00A%03%0A%24p%80%01%83%B55%D2%0E-WB%C9%24%92%40%F2H%236%E3%7C%08%CF%3E%03%DD%C7%1Ey%DCQ%07%1DI%C3%D1%06%1BN%9F%11u%18%5ET%9D%C5%15UL%21%C5%13M%2C%A1%04%12E%0C%11%84%0Ff%A3M%C3%DA%2F%B8%C0%02%DC%28%CCM%82%08%20%7C%90%F7%06%7C%FB%1Dx%04%0F4%B0%80%E1%82%B5%E5%E4G%3A%CC%FCx%24%91%3C%E2%88%CD%8A%E4%8C%F9%CFAs%EE9%E8q%BC1%BA%D3f%94%21%F5%17%5Dh%B1z%EB%AF%7B%3D%BB%11%B6%E3%AEC%0Ei%F3%EE%BB%0A%29%04_%C2%08%22%08%C1%07%F4%B6%B7%BE%5D%A0%02%14%98%80%04%20%E0%00%06%28%00%01%06%88%9E%5BB%A2%03%C7ANr%8Eh%C4%CD%BC%D73%F0%09%ADs%9F%93C%1CDG%3A4%40m%7D%ED%C3%9A%15%A6%10%85%27x%0DlF%18%9B%FD%F0%A76%B6%ED%2Fns%03%A0%00%F3%C6%01%E4a%E0%02%B5%7FK%E0%02%1F%C0%80%E7A0q%13%FCH%0E%28%21%89HH%AE%11%1A%B4%DC%F7%80%264%3D%8CO%84%24%5C%C3%D3N%E7%85%14Z%A1u-%8C%1D%D8jw%3B%B3%D1pm0%B8%A1%DC%FEG%3C%E3%E9%0Dy%7D%0B%E2%04%26%10%01%066%80%01%09%40%C0%E1%06%E3%96%B7p%84%00%0C%08d%20%17%40%C8B%2A%E0%90%88L%80%22%15%89%80F%3A%F2%00%90%8C%A4%01%26I%C9%08%16%E0%92%98%24%80%267%998%B6%0C%C0%92%98%14%0C%27%3B%E9I%B6%8C%E5%94%7D%2C%CB%F4%F6%C4%CAV%BA%F2%95%B0%8C%A5%2CgI%CBZ%DA%F2%96%B8%CC%A5.w%C9%CB%5E%FA%F2%97%C0%E4I%40%00%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%95g%80%00UO%0E%18%20%00kV%91%01%10%280%40%80%EB%D5%AF%1F%1Dt%B8%E0%20A%01%B3%5E%D1j%BC%10%E4%07%8B%0E%12%16%1C%20%20%40%80%5C%8D%14%BA%C8%F9%B2%C4%06%09%0C%0F%DC%FA%FD%7B%D1A%99I%8A%F6%A4%B1%12%C4%C5%07%0A%08%E22%9EX%00%0B%A7P%9A%20%0D%A2%13%86%09%0E%0F%066W%0C%D0%A4%93%AAS%A3%3AUR%C4gM%93%0A%AA%2B%C6%90%D4%8A%D5%2AT%A5%40G%F2%E3c%40%EE%89%1B%02%B5Z%EE%3B%95%A9Q%9B%C8%2C8.qA%1BU%CB%7B77%D5g%03%F5%88%04%B6%FE%90%CA%CE%7C%95%2AH3%BEGD%D2%C9%15y%ED%9A%8E%A8%87x%82%91%2B%F7%E4Y%91%2A%93z~C%0C%7C%B4%82_v%AC%A4%A2%C7%04%FE5%94%C0%19%A8%BC%C7%CA%83%88%84%90%20C%02X1%CA%80%CC%B1BI%0E%132%F4C%26%18j%07J%16%8Bu%88%10%09%86%DC%97%1F%2B%A7%C01%9D%89%08Ip%87%80%2B%AE%F2%C7%050%22d%80%18%A7%84%F8%20%23%2B%E4xP%00N%7C%F2%9Ev%9B0%21%E4A3L%A2%22%81%FA%81A%C0%92%05q%A0%1C%86%0F%A6R%87%03T%12%E4%80%1D%AB%F8%B8%8A%20%1DtY%D0%11%3Ejh%83%99%06%19q%A4%27Nh%C6%A6%40Edh%0A%19%FD%CDY%90%9B%0F%B2%B2%88%9E%08%15%D1%E7%2A%8A%00z%90%11%AB%24%BAJ%22%86%B6i%9E%2A%AA0%DA%28AE%3C%9A%0A%22%93R%AAJ%2A%A9%A0%82i%A6tr%8A%8A%A7%A0%D29%2A%2A%A7%18R%2A%00E%A0z%8A%29%FE%AA%96J%C4%AB%A6%94R%C8%AAD%D4ZJ%29%84%AC%3A%C4%AE%A4%902%08%AE%A5%902%CA%28%82%F8j%AC%28%A2%24%5B%AA%10%A3%88%12J%28%81%AC%2A%84%B4%A1%80%02%C8%AAAd%0B%CA%27%7Fp%FB%C9%B8%9E%F8%21%AE%27%9Et%D2%C7%AA%40%A4%DB%09%27%7C%B0%FB%EE%26%9B%EC%B1%EA%0F%9Cl%A2%89%26z%AC%EA%83%BE%99%60%92%C7%AA%3D%04%7C%89%25w%10%7C%B0%25%95%D8%B1%2A%0F%0CSBI%1D%AB%EEP%09%25%93HB%C7%AA%3AL%92q%24s%AC%9A%83%24%91%40%F2%88%1C%AB%E2%10%C9%23%8F8%02%C7%AA7%B4%DC%08%23n%ACjC%233%2F%D2%C6%AA50%B2%88%22%89%AC%B1%2A%0D%40%23r%88%1A%AB%CE%60%F4%21%85%A4%B1%AA%0CL%13B%88%19%AB%C6P%08%21%82%08R%C6%AA0%0C%22H%20%80%90%B1%EA%0B%60%FF%E1%87%18%AB%BA%60%B6%1F%7C%80%B1j%0Bl%EF%A1%87%17%AB%B2%B0%C7%1Ey%E0%D1%C5%FE%AA%2A%E4%91%C7%1Dv%CC%D1F%1Bl%AC%91%06%1Af%94A%06%19c%84%01%86%17%5El%A1E%16X%5Ca%05%15RD%01%85%13M0%B1%84%12H%1CQ%C4%10A%00%F1%83%0F%3C%EC%90%03%0E6%D4%40%C3%0C1%C0%00%83%0B-%B0%B0%82%0A%28%A0p%82%09%24%8C0%82%08%20%7C%E0%01%07%1A%60P%81%04%0F%2C%80%C0%5E%5D%C9y%92%0A%80%D7A%C7%1Cr%C4%01%C7%1Bm%ACa8%E2f0%EE%B8%17%5Dp%219%16VT%81%B9%14P%3C%D1%C4%12K%24%81D%11D%90%0E%04%EA%3B%E8%80%C3%0D6%BC.%03%0C%2F%D0n%7B%0A%29%D0%9D%09J%F0%BB%10%80%C0%03%1D%D8%80%06.%40%81%084%40yo%B9%CAYR%92%02%E9Q%CFzopC%F6%D4%90%863t%8F%0Cbx%5C%F8%B4%A0%85%CA%5DN%0A%E8S%9F%E7%92p%04%23%10A%08B%A8%0B%0Fx%60%3F%FC%D5%60%062%88%DD%0Bjw%BB%00%EE%AE%04%F1%BD%03%9E%F0%3A%C0%81%0Dd%80%81%11p%80%F2%C82%80%09%A6%04%05t%A8%DE%F5%06%B7%06%0E%22nqb%08%C3%17%C0GB%13Va%0A%29%EC%DC%E7%90%60%84%D1%09%C1t%A8%D3%C1%EAn%E0%3A%1C%F2%CF%05%B6S%81%0F%07%18D%03%0E%B1%88%19%C0%00%12%1F%C0%00%04%18%E0-%5DY%C9%09%E4p%3D%0Dj%EFp%89%03%E1%F7%BA%20%B9%2CX%EE%8B%99%7B%82%13%3C%07%3A%D1%0D%21%86%F3%EBA%FDX%D7%3A%1C%C6%A0%7F-X%C1%0A%E6%08%C4%DF%89%20%04C%24%A2%02%8Fh%01%0A%20%8F%01%098%00%20%9DW%12%01%20%E0%96%B8%5C%DE%01v%C9%CB%03%18%E0%97%C0%FCe%01%86I%CCb%12%E0%98%C8L%E6V%96%C9Lf%F6%A5%2F%C9Tf3%B9%D2%17%09%D2rU%D8%CC%A66%B7%C9%CDnz%F3%9B%E0%0C%A78%C7I%CEr%9A%F3%9C%E8L%A7%3A%D7%C9%CE%A1%04%04%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5Dj1%80S%A6%2F%05%14%280%20%00T%96%02%1CDP%40%D5%EAU%94%02%3C%B8%F8%40%81%C1%01%02%02%9E~%25Y%E2%0A%14%1C%24.8%40%405%EDZ%91%27%E4%F8Yc%C5G%0A%0D%10%12%14%10p7%24%869%9A%22%09%82%B3%85%88%0B%0F%12%0Ex-%DCq%81%1AR%A4%3AQ2D%07%8C%92%19%18%08P%F6X%E0%0B%A9U%A8Hy%AA%94%28O%99%1E%0CF%7B%FC%A1%A9%15%2B%D4%A5%40%5Db%04%C7%84%EC%8E1%22%B5%B2%7D%3BU%A9P%93%A2%88%FE%ADqC%A0%E1%C3o%ABB5%AAMl%E6%19%21%C4Q%05%9D%D5%EDU%A9%02%FEu%C0%9E%B1%80%96Q%D1%BD%7F%8FT%83%3C%C6%00M%3A%A9%9F%BFJ%13%12%F7%18a%40R%BF%AA%7F%FFQd%18%80%9FE%1A%FC%E1%DF%81%A8%D1%E1%C0%80%15-%B0%06%2A%07%AA%22a%2A%82x%C0%20E%04d%11%8A%7F%12N%08%C9%0C%17RTD%26%1DN%98J%2A%98%18%11%E2D%26%20R%E2%89%27%862%86%80%2BBtA%1E%A8%A8%92%8A%89%A8%98r%87%045B%94%00%19%A4%C0%08%23%2A%A8%14%F2A%90%0F%09%20%C5%27G%22%89d%2470%F9%10%0F%93H%29%E5%29%A7pb%05aV24B%20Hri%E6%29%A2%B0%A1%40%98%0CE0%87%29eri%8A%29%A5%ECQ%01%9B%0B%15%E0E%28g%CE9%E7%21%28%E0%A9P%00Jd%22%A7%9FtR%92%84%A0%0A%C1%D0%08%A2t%96RJ%27Z%0C%C0%28B%1A%EC%E1%A7%A4%9C%8A%02G%03%97%1E%D4%00%1C%A4pZ%0Af%A4%8C%B2%C7%06%A1%22%14%84%A9%FE%98%8D2%0A%232%B4%9A%10%10%A8%A6%3A%0A%25HLf%ABA%3F%C8%2Ak%27%5E%D0%F8%2BB%3F%88%12J%28%A2%08r%ECB%3F%84%02%CA%B4%80%3C%AB%D0%0F%D3~%F2%C9%1F%D6%26%E4%83%B6%9Ex%E2G%B7%08%F9%10n%27%9D%8CK%AEA%3Dp%E2%EE%26%7C%ACk%10%0F%9B%D4%AB%C9%1E%F2%16%C4%83%26%9Ad%92%89%1E%F9%12%B4C%26%98%5Cr%09%1E%01%0F%A4%C3%25%96XR%C9%1D%09%0B%A4C%25%95PBI%1D%11%03%90%03%25%93L%22%09%1D%19%E3%20%89%24%91D2G%C67D%02%C9%23%8F%C8%91%B1%0D%8F8%E2H%23pd%5CC%23%8D0%B2%88%1B%19%D3%B0%C8%22%8A%24%D2F%CF%89%24%82%08%22kd%3C%C3%21L%1B%92F%C62%14R%08%21%84%A0%91q%0C%83%0C%22%88%20fd%0CC%20%81%00%F2%07%19%19%BF%F0%C7%1F~%F8%21F%C6.%F8%C1%07%1F%7B%80%91q%0B%7B%E8%A1G%1E%5Ed%BCB%FE%1Ex%DCq%07%17%19%AB%60G%1D%84k%91q%0At%D01%87%1CXd%8C%82%1Cr%C4%01%87%15%19%9F%00%C7%1Bo%B8QE%C6%25%B4%D1%06%1BlH%911%09k%AC%A1F%1AQd%3CB%1Ai%9Ca%86%13%19%8B%60F%19d%90%B1D%C6%21%901%86%18a%2C%1A1%08a%80%F1%85%17Gd%FC%81%17%5Et%C1E%11%19%7B%C0%C5%16Zh%21D%C6%1Cd%81%C5%15W%FC%40%BD%15VTAE%0F%19k0%85%14%E4%EF%90q%06Q%40%F1%C4%139d%8C%81%13M4%C1%C4%12F%14Q%C4%10C%08%11D%10%3F%F4%EFC%0F%3C%E0%C1%0Ev%A0%83%1C%E4%00%077%B0A%0Dh%C0%C0%19%C8%20%06%10%84%C1%0B%5E%E0%02%17%B4%80%05%2CX%81%0AT%90%02%14x%F0%04%26%08a%09H0%82%12%8A%20%04%1F%E8%00%070P%81%084%00%01%06%40%8BZb%82%81%25%D8P%09I%40%C2%11%EAW%04%22%E4O%7F%FE%40%F8%C1%FF%00%28%40%02%1E%F0%06%09%B4A%03g%E0%40%09R%D0%82%17%5C%81%069%D8A%14%9C%E0%8A%22%24%E1%09A%E0%01%0Eh%C0%02%13p%80%02b%98%16_%BD%E4%02I%C8%E1%0E%7B%F8%C3%20%00%21%88%3F%00%E0%00uP%40%1C%20P%81%0Bd%A2%0C%1E%18%03%09B%11%83R%A4%A2%15%B1h%82%12%8C%90%84%238a%08%40%90B%0Ed%C0%02%12%10%E3Y%CA8%13%0B%F0%D0%87%40%F4%DF%FF%04X%40%03%DE%11%8F5p%60%04%9DH%C1%28n0%05%A8%FC%60%21%0F%89%C8D%86%60%91%1F%F0%80%07T%B8%81GFR%01t%29%A3%19%5BR%816%BEq%88%014b%0E%90%98%C0%1A%2C%90%06%7B%7C%A0%13%2B%D8%82%28j0%95W%04%A1%21%5B%29%02E%C22%96%B3%E4%00%076%A0%01%16Fr%010%AC%CA%0C_%12%00%02%98%F3%9C%E8L%27%01%06%C0%CEv%BA%F3%9D%F0%7C%A7%00%E6I%CFz%DA%93%9E%E8%27t%E7%3C%9D%B2%CB%8C%F9%F3%9F%00%0D%A8%40%07J%D0%82%1A%F4%A0%08M%A8B%17%CA%D0%86%3A%F4%A1%10%8D%A8D%A1%12%10%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3%3F%05%28%29%94%85%01R%99A%24u%8A%24h%8D%0B%01O%5B%9EH%94%8A%D4TAo%B2%E8%80%905e%06%3E%ACX%A1%1A%C5%89%EA%1B-AVP%18P%96%24%038%AB%5C%B5Z%B5v%13%A4%40o%E3j%80P%A0.H%02%5EJ%B9Z%BC%B7o%A2%3Fn%B2%C4%DD%00%21A%81%00%869%FE%D0%B4Xo%2BV%AANy%22%B3%C0%82%15%C9%2B%28%5B%1E%809%F3%C5%17%90Z%B5%F2%2C%5B%AD%1D%0A%04%3D%E8P%A1%BA%C0%00%01%AD%5DK%D4%C0G%B6q%E3%AB%06%7D8H%00C%EF%DF%C1%85%3B%5C%B0%26%D5%F1%E3%8CV%2C%2C%C0%605p%E9%0E%0B%FE%7C%21%95%B6%7CyH2%1E%12%F0%1D%20%3Ax%84%3E0%ADZ%C5j%3E%7DV%9B%98%B8o%18%E0%FB%7B%8408b%DF%80%AB%8CB%86%01%16%ED%F7%9F%06~%A8%E2%E0%83%0E%A2B%87%03%FFu%F4%C0%1B%A6%A4%A2%E1%86%1A%06%E2A%85%1C%11p%05%28%1A%A2%82%0A%87%8F%D0%00%E2F%01%2C%91%89%89%26%9E%02%E3%25F%AC%B8%91%0B%8C%9C%A2%E3%8E%3A%82%22%06%826b%94%C1%1E%A5%98b%E4%91%A6%90%22%07%85A%5E%A4%80%19%A2%94%22%E5%94R%FA%C1A%93%17%0D%40%C5%26%A4t%E9e%97%8C%C4%80%E5E%40H2%CA%99h%8EB%CA%24B%8Ci%D1%08%81%88%22%E7%9Crn%E2%05%90nJT%81%1C%A0%84%E2%E7%9F%A1%7C%22G%04yN%84%40%17%9B%80%A2%E8%A2%8A%FA%D1A%A1%12%09%B0%04%25%9FTji%A5%89%CC%00%A9D5%24%D2%C9%A7%9E%84%1A%AA%24P%60%B5%E9C%1F%D8%C1%C9%AA%AC%AE%8A%09%19%FE%09%9C%FA%D0%03hd%B2%C9%AD%B8n%A2%89%1C%13%C8%1A%DE%14%94h%22l%26%C4%0A%CB%07%09%BE%F2%07%C4%22%97%5C%82%89%B3%CF%5E%82%08%10%C96%94%82%1F%96d%ABm%B6%8EDAW%B5%0AY%C0%06%25%95%94K%C9%B9%94LB%1A%B8%0A-%00F%24%93%C4%2B%EF%24%92%B4q%01%BB%0B%D5%10%C9%BE%91H%C2%2F%1F%2A%E0%CB%10%0D%8F%14l%B0%20%3C%28%28pA34%E2%C8%C3%89%3CQ%D8%C2%0C%C9%C0%C8%C5%8C%C0A%B1C1%28%E2%B1%22ml%DCP%0C%88%94%8C%08%1B%223%04%83%21%85%18b%88%1A%29%2F%F4%02%214%13%82F%CC%0A%B9%20%C8%CE%82%98%81sB-%00%22%F4%1Fd%FC%8C%10%0B~%24%ED%C7%18F%1F%B4%02%1F%7BD%1DF%D3%06%A9%90%C7%D5yxAuA%29%D8%E1%F5%1D%5DlM%10%0At%94M%87%16b%0Ft%82%1Cl%CB%81E%DA%02%99%00%C7%DCpX%017%00%25%B4%A1w%FE%1BU%DCM%C2%1A%80%AF%21%C5%DD%23%A4ax%1AQ%DC-%82%19e%98a%86%13w%870%C6%18b%88%B1%C4%DD%20%80%A1%F9%17I%DC%FD%81%17%5Et%D1%C5%11w%7B%B0%85%16%A8%13qw%07X%5C%81%05%16m%C2%BD%81%15UTa%C5%0Fwk%20%C5%EER%F4pw%06P%04%0F%85%0Ewc%D0D%13L4%81C%F1K%28%A1%C4%125%DC%7D%C1%11%D4%1F%A1%29%DC%16%10%A1%3D%11b%C2MA%10%E0%07%F1%C2%DD%13%FC%E0%C3%F9-%DC-%01%0F%3B%B4%AF%1D%DC%12%E4%80C%0E9%A4pw%046%E4o%C3%09wC0%C3%FF30%C1%DD%1E%10%83%02%C6%60%04ws%80%0B%5C%F0%02%17%84%E0n%0D%60%81%04Y%00%02%08%AA%E0%82%29%F8%10%DC%18%80%82%0E%9E%E0Q%1B%2C%81%09LP%82%0D%DCm%01%24%18%81%0AE%C0B%16%86%E0%85%2F%14A%0C%5B%28%C3%19%CE%D0%854%8C%21%0CuH%C3%1A%86%00%04%F5%1F%E8%00%070P%81%084%20%01%07%20%00p%14%16%13%05%C8%B0%87-%84%A1%0BC%20%82%11D%91%8AP%CC%21%14m%B8%C5%17%02%D1%03%1C%C8%80%05%24pD%03%10%805L%84%89%02%40%C0%C6%1F%FE%90%8D%40%04%E2%07%E0%E8E8%CE%11%8Ex%CC%23%08%DE%18G6%DE%B1%8F%1F%08%E4%07%3C%D0%81%0D%10%D1%88%080%E3%12s%92%80Az%C0%91%81%F4%80%24%1F9IAF%B2%92%8E%AC%24%26%059IIv%A0%93%93%EC%80%289%B0%01%0D%5C%60%02%10%60%00%02%7C%B3H%9C%24%60%94B%14%A5%2Cg%09KZ%8A%92%90%1C%C8%E5%2C9%60KX%E6%92%97%B5%24%25%295%20F%09%3C%60%01%ABD%A3N%FA%23%80f%3A%F3%99%D0%8C%A64%A7I%CDj%3E%F37KL%E3%DD%B6%C9%CDnz%F3%9B%E0%0C%A78%C7I%CEr%9A%F3%9C%E8L%A7%3A%D7%C9%CEv%BA%F3%9D%C2%09%08%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3%3F%05X%19%E5%07%03R%99E8%C1%9A%CA%AAM%82%A7-O0z%C5%F5%D5TX%A4%AC%04%C0%8A2%03%9FV%AE%5Cu%5D%FBJ%D2%0A%B2%24%19%BCI%856%AD%5D%B5k%5B%E1y%00%F7%23%01.%A3Z%09%1E%9C%D6%14%AB%BBi%5B%8D%922%B6%AFF%1F%97XIf5%B8U%2A9%0FF8r%85v%F0%AAT%89H8%BE%E8%A2%D1%AAU%93%27%AB%DAc%81%A0%13R%83Y%A9%3A5JS%18%04%A3%25f%C8%93J%95%AA%D3%C0U%11%02q%F0%81%1D%D4%9FK%85%CA%E4%A8%0E%8B%DC%0E%17%A4%29%95%AA%BA%EF%EB%8CT%2Cl1i6%29O%95%14%FE%E99%F3%E3%2At%84%04%B6%7CB%C5%BE%BA%7BG1%1C%0E%E8%02J%14%27I%85%E8%84YBCB%E3%F3%03%ED%40%89%29%A7%14%C8%DE%29%A8%60%B2%C4%7F%0EQ%60G%26%8F%04%F2%86%16E%C0%F0%01%04%03%00%08%40%0B%89%94%E2%A1%29%04%16%F8%89%18%06T%E4%C2%1E%7C%A4A%85%0F%2Ah%00A%02%04%40%87A%1E%A3%90B%8A%87%1F%92%22%87%03%18%0D%B0C%18O%E0P%C2%05%0E%20P%C0%00%0C%3E%E5%40%1A%9F%8C%E2d%8D6%92%E2G%07%1C5%40%C3%0C%22T%C0%C0%01%04%08%10%40%92E%11%20%C5%25%A1%84%22%CA%99%A28%B9%88%0C%209%90%81%04%0B%180%80%97O%05%40%04%24%9F%7C%02%CA%9Ee%86%12%89%10%23%05%90%40%02G%D2y%94%0A%83x%A2%A8%27y%E6%89I%17%25%96%14%C0%9C_%1Ae%81%1C%9Bp%A2i%27%9Cz%B2%C9%1A%0D%A8T%29Q%09ta%89%26%9Al%A2j%A6%9C%D8%A1%81%86%FE%1D%0D%B0%84%23%97%60%92%C9%AD%99%A0%3AH%0B%B0v%84%03%21%95Tb%C9%B0%97%D4%8A%08%0F%BDr%D4%C1%1C%92L2%09%25%D0%0A%FB%88%15%05%24%AB%91%04d%3C%12%C9%B6%92t%3B%89%24g%F0e-F%07%3C%81%88%23%8E%3C%A2.%24%90D%22%C7%AB%E3%5E%14%40%0F%81%2C%C2%08%23%8D%E4%8B%EE%1Eo%C5%7B%91%0Au%20%82H%22%8A%2Cb0%23%82%10%01%A6%BF%10a0F%21%86%18r%C8%21%02%27R%88%15%B81L%D1%02T%04%22%C8%20%84%10R%08%C4%86%84%01%81%C6%14%0D%00D%1E%7F%00%12%88%C7%82%7C%9C%06%95%28K%14%C0%0Bp%F0%D1%87%1F%3C%FF%D1%B2%1Cl%D6%2CQ%07c%E4%91%87%1E%7B%A0%C8%07%1Fv%FC%20%80%D0%11%3D%20E%1Du%D8q%C7%1Dx%18%8D%C7%13%19C%ED%D0%01F%C0%21%C7%1Ct%D0A%B5%1DuX%11%81%D7%11%91%F0%06%1Cp%C71%F6%1Ca%7C%C0%B6D%22%B0%D1%86%FE%1Bo%BC%5DF%BFwG%24B%1Ak%AC%C1F%1A8d%18%B8D%21%9C%81F%1AjH%B18E%20%94a%86%19g%401%F9D%1F%8CA%C6%E7Ml.%91%07%60%84%11%86%18K%88%1EQ%07%5E%B4%FEE%12%AAC%C4%C1%16%5Cp%D1%85%11%B1%3F%B4%01%16Yh%A1%05%11%B9%3B%B4A%15VXq%05%A0%C13%94%81%14SPQ%C5%0F%C93%84%01%14QH%21E%0F%D1%2F%84A%13N%3C%01%C5%0E%D9%2Bt%C1%12%E47%91C%F8%09Y%80%04%12I%2Ca%03%FA%08UP%84%11F%1CA%03%FC%07Q%20%C4%10C%10%114%FE%04%A1%C0%0F%80%10%84%20%C0%00%80%05%99%00%0Fz%E0%03%1F%F0%0A%81%03%91%80%0Et%B0%03%1E%3C%07%82%02%89%C0%0Dp%90%03%1Dh%07%83%00%80%00%0Dj%60%83%1B%A0%00%84%00x%80%0Cf0B%13%A0%F0%010%80A%0Cd%20%1A%10%3A%A0%05.p%01%0CF%80%C2%06%AC%80%05%FE%2ChA%08z%98%02%15%A8%60%05%C4%01%21%03N%80%02%14%A4%C0%03%28%5C%00%09L%60%82%13p%20%8A%23%20A%09J%B0%01%14%2A%40%04%22%18%C1%082%E0E%10%84%E0%8Cd%04a%02%3C%F0%816%5E%00%85%09%E8%40%07%3C%E0%81%D6%80%10%01%1B%E0%80%1E%2B%80B%04h%E0%8F%1B%98%00%0A%0F%80%01%0Cd%20%03%82%04%E1%01%2Cp%81%0B%60%40%02%83%AC%40%05%18%B96%10%1A%80%02%98%AC%80%B80h%80%09L%80%02%13%E0%11%08%0B%10%01%09x2T%A3%84%40%04V%89J%0C%16%E0%01%0F%80%00%04%18%80%C2%028%00%96%B8%C4%A5%2Ce%B9%CAR%9A%D2%93%99%94%A4%24-%40LF%16%B2%90%87%CC%00%207%90G%3Dr%40%8E%1C%D8%40%06.P%81%084%20%01%07%28%D4%C2pB%00%07x%D3%9B%B9%DC%A5%2A%7B%29%81r~2%98%C3ld%23%91y%C8e6S%8E%F0%EC%80%1E5p%01%0A%CC%12%01%06%B1%E8%D2%A8zB%00%064%E0%9F%0D%F8f.c%B9Kr%9A%F3%93%C0%1Cf1%D7%89%CC%3Fj%80%99%10%8D%E6%064%80%81%0AH%C0%01%0A%C8%26%A5%B6y%93%01%2C%80%01%FE%04%E87Gz%CB%82%1A%B4%9C%BF%3Cg%26%17zLej%C0%A5%7F%3C%A4%05%260%CB%04%E4%13I%1C%ED%E8GA%CA%D3%90%8A%14%9C%B0%14g%2FW%89RO%26T%A1%EA%3C%A6R%2F%60%01%0AD%C0%01%0B0%D2F%83%F2%A5%AAZ%F5%AAX%CD%AAV%B7%EA%A5%00%08%A0%ABXE%A1X%C7J%D6%B2%9A%F5%AChM%ABZ%D7%CA%D6%B6%BA%F5%ADp%8D%AB%5C%E7J%D7%BA%DA%95m%01%01%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3%3F%05T%01%C5%E7%02R%99C2%B5%9A%9A%8A%0D%82%A7-M%20Z%C5%8A%D5%D4%A9%A1%AA%04%C0%8A%12C%9ET%AB%D2v%F5%FA%15%D2%0A%B2%24%17%AC%29%95J%95%DD%B4%5C%BB~eu%E7%01%DC%8F%03%B0%7CB%85%2A%95%E1%BB%A4R%AD%FD%DA%AA%94%D8%BF%1BuH2u%EA%14%E1%C2%AAJ%BDq%20%82%D1Z%B6S%25%A9%80%7Cq%C5%A1R%A8MQ%B6l%0AO%05%82LD%E5%05%CD%B7%01i%89%17%E4%88%1AE%8A%14%EAR%A6J%01%FAp%D0A%1DU%8B%BF%8A%AAr%DB%A1%021%9DB%89%DA%CD%DB%F7%A1%14%0B%5BH%9A%CD%F8%91%89%E6%09%09%FET%B1%F4%09%14%28%E9%D4%11%BDp8%C0%0B%A9%BC%8CU%B5%B9%0A%9E%60%8DE%9D%3Ay%F2T%FE%BC%A4%23cAd%81%1Fj%81%D6J%27D%D4%07%00%0A%7Fh%B2%09%27%9C%E8%C7%DF%25%5D%18PQ%0E%99%7C%B6%D6%2A%86pp%5B%05m%5C%92I%26%9A8%08%A1%26j%D8v%11%01_%98%82%D7%2A%AA%A4r%0A%28a%14%00%17%03%5EDR%89%25%97%88H%A2%26ul%C0%D1%07%88%D8%15%E3%29%A5%84%B2%09%21%2C%3C5%C0%11%89H2%C9%24%94X%C2%E3%25%81%B4%00R%11%9C%C8X%8A%28%9DT%B2%88%1FS%2CPT%009%00%F2%C8%23%90D%22%25%25%95%14%B2%C3H%0B%BCA%CA%28%9Fd%02%09%21u%90%C1%84%06%01%02%25%82%1C%8C0%D2%88%23l%BA%C9%C8%146%96%04%82%20%9AL%92%08%1Fk%60Q%84%0C%1C4%DA%93%04a%1C%92%88%22%8B%18%8Ah%23%60%98%89R%00E%10%12%88%1Ca4%91%03%0A%FE%1AD%60%E1N%070%11H%21%86%1C%82%C8%A7%8B%2C%92%86%05-%29%C0%C4%19V%08%F1%02%08%144%80%40%01%81%D6%24%C0%0Ew%04%22%C8%20%84%14r%88%AEt%7C%07%D3%04%3A%D8%60%82%06%10%28%60%00%01%034%2B%93%0Am%F8%E1%C7%1F%80H%5B%ED%1D2%D0%14%C0%04%1BL%C0%C0%01%E4%0A%60%EEK%16p%91%87%1E%7B%F0%D1%C7%BA%81%EC%81%04%017%09%A0%40%02%05%0C%A0%EF%BE%2C5%C0%C4%1Cu%DC%81%C7%BF%01%F3a%05%03%3B%090%80%C3%10%ABT%40%0Ek%C4%21%07%1Du%D8aq%1E%5EP%00T%C8%A7%AE%40F%1Bn%C0%01%87%1C%27%F7%19%82%82%1Eup%05%1Ai%A8%B1%06%CD6%A71%03%CC%3CO%F4%00%11c%90a%C6%19i%A4%B1%06%1Bi%041k%D2%19%1Dp%03%17_%84%21%06%19e%98%01t%12%A6b%8D%91%00%27T%A1%C5%16%5Dx%D1%F5%D7O%B8lvF%1C%2CQ%85%15Xd%A1%05%FE%17%5ExA%C5%08sg%14A%0FPH1%05%15V%5C%81%85%16V%A8%20%40%E0%17%21%F0%C2%12L4%F1D%14%86SA%C5%0C%9AB%3E%11%01%26%10%81D%12KP%EE%04%14Q%D8P%B6%E7%14M%10%C4%10E%18q%04%12J0%E1%C3%04%ACc%24%C1%0F%40%BC%1E%BB%0F%19%E4.8%0F%3E%F0%FE%C3%07%8F%0B%8FQ%04%3A%EC%D0%83%0FZ%2A%9F%11%048%E4%D0%7C%93%D2c%04A%0D6T%3FZ%F6%17%3D0%03%0D5%DC%80%1D%F8%169%10%83%0C%E3%9F%80~%FA.%C0%10%C3%0C%DA%BE%3FQ%03-%B8%F0%02%0C%24%D8OQ%03%2B%60A%FE%00%E7%3F%890%00%05%2A%08%20%08%0Ah%C0%13%A0%20%05%2AX%20%03%21%B2%00%12%98%C0%81%1E%98%20D%140%82%12%5C%D0C%1At%8E%08F%40%82%12%08%29%84%0DQ%40%08F8%02%0D%A0%B0%21%09%F8%00%08V%18%BC%17.%24%01%1E%F8%80%0C1%60%C3%85%20%80%03%FE%1D%F0%80%07%80%D5%C3%84%20%60%03%1B%00%22%11%8Bx%10%04d%40%03H%94%1B%13%0Dr%00%0C%3CQ%03%B8%9B%22%15%2F%60%C5%0CdQ%8B%041%80%05.%C0%C5%08%80%B1%20%06%A0%40%05%2C%60%013%9Eq%20%06%98%00%05%D4%08%817%C2Q%02%12%90%A3_%EC%08%80%02D%00%8F%13p%00%1F%FB%08%81%08%18REv%24%C0%03%20PH%8E%F1%91%00%0Ex%C0%22%1D%99%C8%068%20%92%AB%3B%23%01%1A%60I%07d%12%8C%04%60%00%03%2C%A9%80A%0E%60%01%0B%18e%02L%89%CAT%AE%92%8F%03P%80%02RI%1F%3B%0E%20%01%09%40e-%DFxKY.%60%97g%BC%25.%15p%80A%0A%00%01%B8L%401%F9xLd%26%E0jo%14%C0%01%0E%80%00%04%40%F3%8C%D2%9C%A65%8Di%00m%22%60%9A%DEL%E60%5B%99%CAQF2%92%8C%8C%40%21%F3%28%C7%0A%B8s%8Dc%24%A3%05%2A0%01%084%40%99%E3%C3%12%80%BE%8A%22%00%03t%13%9C%D4%AC%A63e9Kr%8A%B2%93%E8d%24%04%F0%98G5%BA3%9E%F2%A4g%04%3Ci%CD%7C%05%00i%1D%2B%40%01%FC%F9%CF%80%3A3%99%045%28%27-%29%C9E%1A%F2%8F%13H%E9%1A%DFY%01%0A%D4%D3%01%0Cx%A6E%2F%CAO%8D%DA%D4%9F%00%15%E8%40%7D%D9%CAQr%F2%92%095%24%20%E7%D8R%97J%00%020Uf%C3%1Ev%94%00%D8T%A3%1C%ED%A8GA%8A%CA%82%A2%D2%A7%24%5Dd%21%85%9A%D2%09H%40%9D0U%805AFS%05%5D%F4%AChM%ABZ%D7%CAV%8C%0E%F2%ADp%8D%AB%5C%E7J%D7%BA%DA%F5%AEx%CD%AB%5E%F7%CA%D7%BE%FA%F5%AF%80%0D%AC%60%07%AB%BC%80%00%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3%3F%05D%D1t%C7%02R%99%3E%26%99%3Auj%14%1A%04O%5B%8E%08D%AA%94%A9%A9%A7Pq%92%12%20%2BJ%0BqB%89%1A%D5%D5%EBTT%A8%18%A50KR%01%99M%A0%D4%AEm%FB5%2C%AASt%1C%D0%FD8%20%0A%25O%9F%40%E5%5D%3B%AA%D3%28%AFT%E1%A6%02Ev%F0F%1A%876q%EA%84Xq%A8Ni%1A%800%04%D9o%2AU%8E%E6Z%B6Xb%0F%A6L%9A4s%FE%E4%29%0E%05%82H8%81E%95%EA4%AA%3A%0DVK%A4%60%86R%25K%AFcs%E2t%87%C3A%07qJ%99%3E%AD%0A%D4%14%E1%0E%11Xi%24i%92%F1K%C9%FB%FE%94X%B8%C2Q%E4%DE%AAT%ADj4%1E%3B%C2%01I%0C9z%14%A9%3B%25K%97%FC%A8p8%60K%28%D3%E9%AD%82%CA%1AX%B9G%D0%0Ax%2C%C2H%23%F3%D57%89%21%3E%94%05Q%05%7B%98%C2%1Bz%AB%AC%D2%09%11%06%02%00%02%1B%86%20%92%88%82%0CB%A2%88%14%05TtC%25%17%06%98a%22%1D%08%17%C1%16%81%0CR%C8%21%22%2A%C2%C8%22%5E%2C%80%11%01%5D%8C%82%5E%80%AC%9C%B2%86%01t%25%B0%84%1E~%00%22%08%217%22%82%C8%19%17p%E4%81%21C%AA%B7%0A%2B%9C%04%F1%D4%006%C0%A1%C7%1E%7D%FC%11%C8%93%85%C0%D1%9EGDl%82%E1%96%AC%B4%92%C8%06F%A9%60F%1Dw%E0%A1%07%1F~%98IG%0C%23-%00%C7%29%E9%A9%C7J%9C%A6%7C1%80P%19d%01%87%1Ct%E0%99%C7%1E%7C%DCQ%04%01%26%89%B0%88%8B%87%1Ez%C9%0C%3F5%80%C4%1Al%B8%F1%E8%1Ct%D8q%87%13%09%A4%14%80%14%FE%A0h%09%27%2B%AB%FC%11%C1N%05%D4%40%C6%19i%90j%AA%1CrTq%2BK%0E%D0qZ%86%19%AA%92%8A%27P%E0%24%C0%09Y%84A%86%19%BC%AE%D1%86%1B%5C%C4%08S%0B%91%14%9A%CA_%A5%88%12%C8%075m%D0%04%17%5E%80%21-%B5ix%B1fL%04x%21%24%2A%A6%90%12%0A%27%960%D2%04%A609%D0%83%15Xh%81%EE%17%D2~A%C3%A26Y%B0G%29%A3%80%C2I%25%8E%10%92%07%18t%B6%84%00%0CPHA%05%C0Yl%E1%85%17%3E%B4%AAS%0D%8DlRI%23%83%DC%A1%06%17L%A4%90bJ%03%88pD%13Od%BC%F1%15Z%0C%21XO%04%3C%91H%CAih%B1%04%0F-%7C%A0%00J%18%F4%60D%12K0%E1D%14%1A%1B%E1TP%14p%11%F4%12%3B%B4%10%C2%05%10%24%20%00I%10%C8%00%84%10D%1C%C1%B4%D3H%84%20%E1P%1C%08%A1%03%0B%20p%BD%C0%01%05%7C%0D%12%02%26%E8%C0%83%FE%0Fc%97%9D%04%12%29%F0k%94%00%16%7C%60%C1%03%0A%D0%3D%80%00koD%40%074%DC%80%83%DE%7C%0B%21%04%0B%07%D0E%00%03s%17%B0x%E3%19%05%40%01%0B1%CC%40%83%0D%93%F3%D0%83%0B%0C%087%40%01%040%DEQ%03%25%B0%D0%C2%0B1%C8p%3A%0E1%DCf%A0%00%B2k%84%00%07%27%A0%A0%82%ED%B8%CB%00%C3%05%A0w%F8%A3%05%22%8CPB%F1%C7%BB%E0%02%07%08%3B%AF%91%00%11x%00B%08%D2%9BP%7C%0A%1C%20%A9%3DG%08t%E0%C1%07%20DO%82%09%1F%88%7C%3E%FA%1C%A8%FFA%08%22x%D0%FA%FC%1E%1D%B0A%FD%1E%E8%C0%03%9A%C7%BF%8C%1C%40%03%1B%D8%40%07%A6V%C0%FEe%00%81%1C%A8%40%03%3Fr%80%0B%60%E0%81%13%98%A0G%0C%60%01%0Bf%20%83%1A%E4%88%01%2A%D0%C1%0F%86P%84%14%A8%80%05%25p%C2%8D%14%80%02%29%B4%C0%B0Z%88%11%03L%60%02%29%84%00%0D3R%00%09H%00%87%FE%0F%D8%21F%0A%00%01%1FN%60gB%AC%08%11%23%E0C%24%26q%22%04x%00%04%22%10%81%E0%3C%91%22%04p%80%14%23%B0%BF%2BJ%24%8BZ%84%40%17%BD%08%11%024%C0%01Z%1C%23%19%1D%B2%B93%3E%C0Gk%84%C8%00%16pF%07%1C-%8E%0F%99%23%03%1A%D0%00%F9%E1%91%21zd%00%03%FC%F8G%85%E8q%01%0B%20d%21%DF%83HD%2Ar%91%06%19%80%02%1AY%20H%26d%00%09%98%E4%02%2Ai%C9%83%60R%01%A0%CC%5C%27%DF%83%80%04dR%94%A3%8C%24%02J%99%00T%A6%92%20%03X%E5%2A%CD%F7J%82%08%40%96%08%A0e-%05%22%80%03%F82%97%BB%B4%A5%01~%A9%CB%5D%0A%C0%00%C3%3C%401kyLd%D2-%98%03%11%40%01%0A%80%CC%97AS%9A%D4%7C%264%01%80Md%0A.%98%01%20%00%01%A8%F9%CD%5D%86s%9C%B0%DB%26%00%CE9%CEr%D6%92%9D%E2T%27%3C%B3%07Nq%8A%93%9E%E6%BF%24%C0%00%EE%29%CF%01%EC%D3%9E%E8%9C%A63%7DI%D0%03%AC%D2%94%A0D%E4%1E%D1%A8%C5%07%A0%B1%01%9CS%40%02%10%407%7D2.%00%185K%00%FC%09Pq%C2n%9A%D94%E8AM%99IM%EE%B1%8E%0DEcD%27j%00%CF%5D%94%80G%D9%A8%3F%FF%09P%90%86%D4%A0%24E%E8%24%05%29H%3E%F2q%A5%14m%E9%E70%0AS%A3%C8%94%A3%1D%0D%285%939%D2%92%26T%A1%9C%5B%80Dg%09%BB%A1%165%A63EjRm%9AL%91%96T%A7%9A%9C%AA2%ABj%D5%ABj%90%A8hM%ABY%D5%C9%D6%B6%BA%F5%ADp%8D%AB%5C%E7J%D7%BA%DA%F5%AEx%CD%AB%5E%F7%CA%D7%BE%FA%F5%AF%80%5Dd%40%00%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3%3F%05%20i%D4%86%02R%996%0Aa%CA%B4%E9%12%98%03O%5Bz%98S%C9%D2%A5L%9A6q%92%B4%24%40V%94%12%C8%3C%92D%A9%2B%A6%B0%9C%3Ay%22d%E2%2CI%04U%129%82%14i%12%25%AF%60%C5z%FA%E4%A9M%03%BB%1F%05%08%09%B4%88%91%A3G%91%D8Vzd%09%AE%DCO%A0.51%8BXc%8A9%87%10%25Z%D4ho%24G%5E%18p%E0c%193%A8P%87%EAv%B6%D8%C1L%A0A%85B7v%D4%88L%04%82A%24%C5%1D%FCZT%A87%0CfK%7C%20%85%CF%1F%40%82%08%15%12%BD%28%0D%86%83%0C%D2l%BA%5C%7CT%A6%27%CA%1D%FE%1A%10B%27%0F%9F%3E%7Fn%E7n%F3a%E1%89B%C4C%89%1AE%8A%14%A2%11%E1%13%0A%A8%B1%86%8E%1D%3Cz%F0%E1%07tm%88%E0%90%00U%60%82%99%7C%F4%952%0A%1A%08%E4W%D0%07%5E%BC%11%C7%1Cu%DC%91%C7%1E~%C8%21%03g%0FM%40%C7%27%0C6h%0A%26BH%08%80%05R%A4%B1F%1Bp%C8AG%1Dx%D01%04%01%15%CD%E0%08%83%A4%94R%8A%29%A7%14%C2%81r%0B%04A%86%19h%A8%C1%86%85r%C8%B1D%02%18%11%80%05%27%F3%F5%08%E4%29%A4%A4a%80%5D%06%CC%B0%05%18b%94q%86%8Bm%BC%21%C5o%1Bq%10H%83%3F%9E%82%0A%2A%99%FC%F0%94%00%23D%91%05%17%5E%84AF%19If1%E4G%40Xb%E5%29n%A6%92%CA%21%1A%18%B5%01%12TX%81%85%16%5D%7C%A1%A7%16%24%8C%A4%C0%1A%A3%B4Yh%2A%A4x1%80P%0F%E8%D0%04%14RTq%85%16xj%11%C3%A7%25%81pH%9B%FE%A8%18%AA%CA%2A%96%CC%F0%13%02%2B%1C%A1%04%13ND1%85%A3Z%DC%B0%25J%01%3C%D1%09%A1%B1%AA2%AB%2A%7F%A0%99%D3%00%1F%F80%84%11I%2C%C1%C4%13RP%B1Cr%2C9%20G%29o%A6%A2%EC%2A%AB%88B%05N%01XP%03%0F%3F%08A%84%AEK8%01%C4%041%B1%F0H%AC%E2%CE%CA%0A%2B%8F%C86%D3%03%2C%DC%90%C3%0E%3D%001m%12%40%5C7%D3%00%5D%8C%22%2B%B9%AC%B4%A2%0A%1BX%C1t%80%080%CCP%03%0E%3A%B0%1B%C4%0F%21%08p%93%05%7C%88%0Bq%2B%28%7B%92bK%04d%A0B%0B%2F%C4%40%83%0D%03%F3%60B%01%3B%E5p%89%BE%11%A3%EC%CA%22%89%A6%14%40%04%24%A0%A0%02%0B.%C0%20C%0D7%A4%10aO%04xa%CA%2A%FB%A2%8C%F2%29b%B0Z%12%03%1F%90P%C2%09%29%AC%D0%82%0B1%A8%E0%80P%1F%20Bu%CF%3E_%22%C3%5D%18%80%00%82%08%24%98%604%0B%29%D0%5BT%FE%11%9E%EC%CBv%2B%AB%E8q%D8G%04D%C0%81%07%1F%80%10%C2%08_%9Fp%81%C8G%25%A0F%2AT%93%BBJ%2A%A8l%E2DG%028%90%81%06%1Bt%80x%08tc%80%E3Y%230%A2%8A%A1%A7%982%0A%28%9D%F0%F1%27F%09P%60%01%06%19l%C0%81%E8%20%600%2Cb%01H%D1I%29%A4%84%D2I%26%948B%88%12%A7Sd%00%04%13T%60%C1%05%B8%87%9E%81%02%12%3A%C0F%27%9A%24%8FH%20x%BC%91E%D0%11%0D%C0%40%04%12L%40%81%F4%17d%80%01%B7%2A%02P%C2%1E%89%08%A2G%1Cgp%21%C5%11%274%CF%90%00%09p%C0%03%20%20%81%F4%D9%CE%02%0E%00Q%FC%00%20%00%1F%B8%21%0D_%A8B%12x0%83%14%7C%00~%09%09%C0%01%1A%D0%00%01B%20%02%E8%A3%80%03%B4%B6%40%82%2C%60%07K%00%82%0DV0%02%0E%5C%E0%01%0C1%1F%03%3A%E8%C1%088%C0%7F%254%88%03LP%02%0F%60%40%02%FE%23%8C%E1%02fHC%07%FC.%87%19d%C0%04%1E%C0%80%23%26d%00Cd%80%14%9D%88D%85%08%C0%00TD%C8%00%14%B0%80%21B%A9%8A%1F%D9%22%17%17%F0E0vD%8C%5D%2C%A3%1972%80%04%24%C0%8Bk%3Cc%02%B8%C8%80%A7%C5Q%23m%7C%E3%02%ECxG%8C%00p%8E%7B%EC%A3F%FE%C8E%3E%0A%B2%22%02%40%00%02%14%A0%80%8A%1D%D2%22%89D%80%1B%1D%F9H%8ADR%92%94%AC%A4D.%89%80%2Cj%F2%40%078%80%22%3D%F9%C9%FF%85R%94%A4%2C%A5%15%0D%10%CAN%AAr%93XD%E5%2B%23%22%80%02%B0%F2%008%9B%E5Cj%19%CB%5C%EA%B2%21W%BC%A5%2F%7F%B9%90%00%D8%12%8B%C3%24f%06%8Fi%00%1C%2A%F3%20%C6%2C%80-%9D%F9%CC%82%04%80%00%D2%2C%005%AB9%90kfs%9B%DC%04%C05%B1%A9%CDp%22d%9C%D2%04%277%C7%89MuV%93%9D%E54%A7A%E0%E9%CEg%B2%93%00%24%C1%94%A7%40%EE%99O%7D%F2S%9F%D6%1C%00%01%06%DAOy%06%60%00%02%C5%27%40%09r%D0%84%16%D4%9C%0D%15%E8C%C3%19Q%85.t%9F%08%CD%E8E1%9AQ%C8%5D4%A2%03%F0%E8B%03%20%80%8EnT%9C%25E%A8H%01J%D2%8C%BAt%A0%03%CD%A64%B1h%80c%CA%14%9F%2A%15%40%00v%AA%C0%05%924%A5%2F%85%299e%AAM%98%22%14%9F%02H%2AO%C5%C9%D4%1C%FE4%A9.M%A8P%C9i%D4%A4ZU%A7%3B%ED%E3S%A3%9AQ%82J%15%A9%21U%AAY%B2%AA%D5%ABv%94%ABQ%D5%A9Z%B1z%D2%B6%BA%F5%ADp%8D%AB%5C%E7J%D7%BA%DA%F5%AEx%CD%AB%5E%F7%CA%D7%BE%FA%F5%AF%80%0D%AC%60%B9%19%10%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3%3F%03%DC%B8%A3%05%02R%99%28%DA%FC%11D%28%10%14%03O%5BZ%E0%B2%87%8F%9F%40%82%0A%1D%F2%E3%23%40V%94%0D%98%D0%B9%93%C7%2BXB%86%10%29%92%F3%E1%2CI%03%3F%DA%C8%A9%C3v%8F%1F%40T%E3%2Ab%C4%E8%CB%02%BB%1F%05%BC%20%D3%06%8E%9C%B5y%F6%F4%C9%F3g%90%D8D%8B%1A%3DB%24%C4%2Cb%8D%1C%AE%A0Q%D3%E6%CDc%3Bx%EC0I%60%01%8DXD%99%1DA%8A%A4%27%C4%E7%8B%13%96%88%21s%26%CD%1A7%8E%E7%40i%40%90%86%1F%D8%8C%1C%3D%8A4i%12%19%05%B7%25%2A%C0%B1%C5K%182f%7C%97%9E%22%E1%A0%82%2C%88%18%FEi%8E%24%89R%A5FG%A2%3B%24%B0b%0A%96%EAa%C6%98%19%5D%E5%C2B%10u%1A%C9%964%A9%D2%A5L~%80%A0%5EB%01%84%B0%C4%14U%5C%A1E%17%60%88Q%C6%14%198%24%40%12%88%2C7%09%25%96%60%A2%09%26%60%1C0%60A%13%F8%C0%C4%13R%24%A8%05%17%5EXA%82D%10%A0%C1%1C%86%FFm%C2%C9%23%3C%7C%08%40%032%1C%A1%C4%12NDA%85%15YX%E1%C2%00%15%B1%10%88y%FFi%22%A3%27%7Dh%10%DD%01%26%001D%11I%2C%D1%04%14RPA%03V%17%11%F0%04%24%19%2A%C9I%27%9Fp2%06%97Y%0D%D0%01%0E%3C%FC%20D%11HX%09%05%0E%0Cp%94%81%1D%97%88%D9%89%27%A0%84%22%89%0EO%05%40%C1%0B6%E4%C0%83%0FA%10%A1%23%0F%13%80%A4%03%23%9Bl%B2%E7%27%A0%882J%20%11%16%F5%00%0A0%CC%60%03%0E%3B%F8%20%E5%0E%F6%89%94%00%19%99p%E2%09%A5%A1X%EA%89%16%FED%06%85%C0%07%2B%B8%D0%E9%A7%3A%F4%B0%C3%07%02%98%E4%C1%1F%7B%F6i%29%29%A5D%12%C3O%04%5CpB%0A%B5%C2%20C%0D7%E0%20%02%01%29%05%A0D%25%AC%8EBl%29%A5%F0%11%C1N%01%40%10%02%09%26%A0%B0B%0B%2F%C40%03%09%1E%B2%D4%C0%1A%9F%B4%3A%0A%B7%A6%9C%E2%89%1491%C0A%08%22%90%8B%82%0A%2C%B8%60B%9D0%A5%A0%C8%B0%A5%D4%7B%0A%2A%8C%94P%13%02%17p%F0%01%BF%23%94p%82%0A%258%40%D3%00YtB%AC%C2%A8%A4b%8A%1Ah%BAD%40%04%19l%D0%81%07%20%88P1%09%13xVS%05x%24%7C%CA%C2%A9%A8%A2%0A%27A%B8%24%40%03%17%5C%80%81%06%1C%B0%CC%AF%05%B1%E6d%03%25%F5%86%9C%F3%2A%AC%24%E2d%B5%08H%40A%05Bk%A0%F2%07%16%14%E0%13%01%5C%88%E2%B4%2A%AB%40%5DJ%18I%DF%E5%40%04V%5B%20t%06%1AX%D0.P%1E%1426%D4%AC%B4r%89%FE%0C%24%0D%B0%C0%03%10%B0%7D%B5%D0%16%40W%14%11%9C%E8%8Cw%2B%8C%F3A%5Cb%070%D0%80%03%10%40%20%C1%04%15T%C0%80%CCE%25%90%06%2Ae%B3%92w%2B%AE%90bEG%01%18%B0%C0%02%92%3B%008%DB%0D%F4z%D6%08%8C%2CN%BA%2B%AFD%E2pF%04%28%B0%BA%E4%93%BB%DE%40%DAg%050%85%28%A3%BB%82%FB%2B%AC%B81%F7D%03%1C%A0%80%EF%AC%B7%DE%80%D7%03%3EPG%DE%CA%BF%F2%0A%2C%B0%80%22%C4D%02%18%80%00%02%09L%EF%3B%03%0C%94%FC%E1%0B%95%90%EE%FD%F7%B0%C4%82H%05%0F%05%40%C0%01%E7%A3%9F%BE%EF%07%E0%9C%8D%00%40%800%A0by%E0%8BE%2CTA%06%E2%1Dd%00%050%80%01%F8w%BE%F4%05p%80%08%C9%40%21%BC%07%BE%FA%C5%02%14%CF%3BH%00%0A%40%C2%09R%F0%00%B2%C3%60Bz%D0%09%FA%D5%0F%08%0C%19a%09%0Fp%00%038P%85%079%40%1BX%01%3E%404D%86%FE%12%B4%21%0E%21%22%82F%84%E2q%0B%91%21%09%A95%C4%88P%C0%21J%2C%00%13%9B%E8%11%FD%95p%8AT%E4%88%FE%08%10A%ECeQ%8B%04%E0%A2%01%B0%F8%C5%8Cl1%82d%2C%E3E%CE%28E5n%84%8Dit%23E%B6%C8%C58%CAQ%22tl%E3%1D%D7%18%C6%3A%EE%91%8Fa%D4%E3%1F%E7%D8GA%0E%12%8F%85%B4%E3%21c%D8G%02%DCp%91%8Cl%24%24%11%D9%C7GN%92%40%8D%B4%E4%25E%98%C9M%E6o%00%95%F4%24%14A%19FM%8Ar%20%01%20%A5%23O%19%C3%01%90%D2%94%ACL%E5%2BY%99DW%82%12%96%A7%94%A5-i%A9%10%5D%BA%92%97%04%B2%E5%2F%81%29Ba%E2R%94%BE%3C%A6%27%7D%99Bb%12D%96%02%18%403%9D%29%90%00%08%E0%9A%D2%A4fA%ACyM%01%08%90%9A%DC%BC%E67%9D%19Noj%F3%99%DD4%E79%AB%E9%CD%00%B8s%9D%A8t%E78%C1YMx%DA%F3%9E%F8%27%CC%A7%3E%F7%C9%CF~%FA%F3%9F%00%0D%A8%40%07J%D0%82%1A%F4%A0%08M%A8B%17%CA%D0%86%3A%F4%A1%10%8D%A8D5%12%10%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3%3F%03%8C%A8%D2C%01R%99%19%96p%F1%12%06%CC%0D%02O%5B%3A%E0a%25%CB%16%AAd%CC%80Y%915%25%02%18Q%A6t%FD%1A%86%CC%994k%B0X%28K%92%80%89%24N%D2%AE%05%FBv%8D%9B7I%10%D0%FD%18%60%C3%8F%24K%F2%AA%CD%C2%25%0B%98%B0p%DB%C0%91%D3FF%80%C1%1B%21%CC%10R%04Ib%BDVf%18x%D0%C4%0C%5C7p%E6%D4%B9C%26%03%E6%8B%0BV%F0%F8%C1%D9s%5E%295%12%10%2C%11f%8Dd9%AB%F3%EC%91%22%F8u%C4%02%1Fn%E8%98-%C4%08b%267%18%1C%3C%20%E4wp%3E~%EE%E00%EEP%00%86%174%94%FE%CF%1ER%24%C9%0D%07%0B1x%01~%27%0Fv%40%82%D6h%E0%9E0%80%84%14%2Fb%84%D7%D1%83v%0D%08%0E%05p%C3%1Bw%E8%81%5D%20%82%14B%88%14%06%D0W%90%02%22%AC%D0%C2%0B2%D4%A0%5C%0F6%CC%15%11%03T%B8%F7G%20%83%14rH%22~%C8%E0%20%00%07l%60%02%0A%2B%B8%00C%858%D8%C0%81%00%15%89%D0%C6%87%21%8E%B8H%23oh%88%19%01%15%8CP%C2%09%29HH%E1%0C%1F%60u%D1%00%40%F0%91%23%22%3B%3A%C2%C8%15%05%D0%25%00%04%1F%880%02%09%26%14%D9%02%0C%21%1C%C0%11%05f%88%88%88%22%8C8%02%89%24%84%CC%90%95%02%1Ax%00B%08B%9E%80%82%0A%23%2C%00%D2%0B%7B%40%D9%88%9A%92LR%89%1D%3E%0E%85%40%05%1Al%D0%C1%07tr%29B%03%23%21%60E%22%7F%AEII%25%97L%22%05%8DA%11%10%C1%05%19%24%BA%28%08%23%84%20%C1e%25e%20%07%A0%97%5E%92%89%26%FE%87%B0%F0%93%00%0BP%60%01%A8%1Ap%D0%81%07%1FL%C0%E9I%01%00%81H%A0%98%BE%BA%C9%26t%3C%B0S%00%08%400%81%AD%B8%EAZ%81%92%2B-%10%86%24%95Xb%2C%27%9ET%C2DN%A3E%20%C1%B3%15%E0j%81%980%91%F0%87%AB%9Al%D2%89%27%9F%80R%88%085%11%B0%C0%03%10D%10%C1%B3%B7VP%9CL%03H1I%BB%EF%C6%1B%CA%27d4%08%93%00%094%E0%80%03%10%E4%FB%2C%05%0B%A0Z%D3%04pl%C2m%BC%A2%8CBJ%25%3D%B8%14%C0%01%0B0%C0%80%03%F8%8A%3B%01%03%BF%E2%24%03%23%F0%82%D21%29%A5%94B%08%06%2B%11%90%C0%02%25%9F%9Cr%03%03%F8D%80%15%9A%80%12%8A%C75%9B%12%8A%17A%9B4%00%02%09%28%C0%B3%C9%0D%3C%C0%00%B5%3Fm%F0G%28%A2%D0%5C%8A%29%A7%A02%09%0C%24%09%60%40%02h%2B%205%03%0D0%A00Q%3FT%E25%D8%A8%A4%82J%1E%90%12F%C0%FE%01%07%40%1D5%CF%0B%1C%60qQ%08%90%21%CA%D7a%A7%A2%8A%2A%A0P%E1%D1%00%06%18%C07%02P%AB-8%5D%21%1CB%B7%E2%AA%AC%C2%8A%23%24h%24%40%01%05D.9%E5%09%1C%D0rY%01%40%E1I%DD%8B%7B%CEJ%2Al%A0KQ%00%03%10%40%BA%E4%7DS%DE4w%0F%C8%81J%E7%B2%B7%D2%8A%27%40L%84%3B%01%CC%93%5E%3A%DF%BF%9F%D8%82%24%AB%14%DF%8A%2B%AE%1CR%01D%020%EF%BD%F3%06%60%7D%A2%40%04%7CQ%0A%2B%AC%18%EF%CA%2B%AF%A42F%F4%08%090%40%EE%DF%93N%C0%E0%E3%13%84%C1%20%E9%AB%FF%0A%2C%9F%B0%1DBp7%3F%EF%E9%EE~%F9%5B%08%0F6%E1%BFW%FC%80%21%04%A4%1F%01%06%B0%BA%04%22%E4%00kX%C5%FA%00%D1%10%02z%AF%82%16TH%08%1A%11%8A%BC-%24%82%13%0C%A1D%B6%D7%C1%F9%E5%0E~%2A%DC%08%0Aa%18%C3%8C%CC%B0%86%1E%B9%21%0E9%A2%C3%1Dj%A4%87%A7%3E%C4%08%10%83h%91%21%12%F1v.%9C%DF%11%85%98D%10.%11%22%11T%E2%13%2B%12E%1AN1%40I%B4%E2%15%21%98%C5-%2A%AF%8B%5E%8CH%00%04%20%3F%0A%86Q%8Cd%9C%9F%13%CF8%402%CAo%8Dl4%C8%18%DD%88%BF8%D6%C7%8D%02%A8%A3%1D%DBHF%3D%EEQ%8E%01%18%A3%1F%FFH%90%CB%04r%90%84%2CH%20%13%C9%C8F%3A%F2%91%90%8C%A4%24%27I%C9JZ%F2%92%98%CC%A4%267%C9%C9Nz%F2%93%A0%0C%A5%28GI%CAR%9A%F2%94%A8L%A5%2AW%C9%CAV%BA%F2%95%B0%8C%A5%2CgI%CBZ%DA%B2%86%01%01%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3%40%27%BC%10a%00%A9%CC%06%29f%D8%C8%81%E3%83%00%A7-%0F%80x%11%83%C6%0D%1D%3C%7C%E8%C8%805%25%81%0C%2A%5C%C0%90Q%E3%2B%8F%1FB%8A%DCpP%96%A4%80%09%25R%B0P%3B%A3%06%0E%1D%3D%80%0C1%A2dI%8B%02u%3F%06p%10%C2%04%0A%15-%B8J%AD%01%18%08%91%23J%98%3CY%02%221G%04%1BF%940%91bE%E4%182%3A%10H%E0%22%C8%E5%25M%A0H%A9B%24%82%E7%8B%06.%84%08%21%FA%F1%0A%17%2F%3C%20%1Eh%01H%92%25N%A2L%B1%82E%0B%8E%A6%B7%23%0E%88%E0%01D%08%11%24L%9C%80%FC%E1%C0A%02%2A%90%FEK%A1%C2%7C%8B%97%2C%27%A2%3B%0C%D0%20%03%87%EA%22D%9FH%01%02%C1%C2%07%3E%C6%5B%C9%C2%E5K%182QH%A0%9EB%0AX%90%C1%06%EF%81%80%5D%09%1E%24%B0%1E%09Q4%D7%C5%17b%94q%C6%19%3B%100%60A%05HpA%06%1A%20%08%DF%07%0DH%84%80%0E%E6%811%86%19h%A8%C1%06%19%25l%08%00%01%0EP%60%C1%87%1Ap%D0%C1%07%1E%40%10%40E%18H%F1%9F%19i%AC%D1%06%1Cr%60a%DBm%02%2C%20%C1%04%15X%80%C1%81%1Cp%20%C1U%17%09%D0%02%18D%B2%E1%06%92u%D0Q%84%86e%05%90%C0%03%11L%40A%05%17%60%10%E2%04dj%E4%80%13F%BE%11%C7%1Cu%E0%A1%C7%1B%28%60e%80%03%10D%F0%A4%8D%1FR%E0%DDG%23%8C%81%24%1Dv%E4%B1G%1F%7F%90%21%60Q%04%2C%E0%C0%03%81%0EZ%C1%04%F6%89d%C0%10p0%9A%07%1F~%00%22%C8%1FD%60%09%94%00%094%D0%C0%A5%FE%99R%40%81%02%3F%964A%17w%E8Aj%20%83%14rH%1D%24%FC%14%80%01%0B0%F0%EA%03%98%A6%C9%40%AD%27%05%20%C3%1C%90%F2%EAk%22%8A%98Q%E2N%05%28%B0%40%B1%C7%06%CA%C0%00-%25%10%85%1F%82%102%ED%22%8D%18%12DN%04%20%A0-%B7%C72%10%A7K%1D%B4A%88%21%88%24%82%EE%23%91%E0%E1AM%02%1C%80%40%02%0Ahk%AC%03%0D%0C%27%93%00D%04%82%88%22%8C8%C2%EF%24%91h%A1%B0K%01%14%80%C0%C6%04%1B%CC%C0%A16A%20%06%BA%8E%40%22%C9%24%95X%A2%88%0D%18%13%20%F0%C0%04o%BB%C0%01%CC%E2%A4B%1F%FCJBI%25%97d%A2%89%1E%16%AC%24%80%01%06%1C%20p%021%23%A0%EAN%030%C1%C8%24%94X%D2%F3%26%9CXb%C5%D2%23eL%B4%D1G%2B%80%00%B8Aa%40G%CA%98hBu%27%9F%2C%C2%02I%01%0CP%C0%DBE%BF%8C%C0%BCB%E1%A0%88%CFT%7B%F2%09%FE%28%A0%C8%C1%00Hm%13%40%C0%DB%05p%3D%B7S%07tqI%DE%7B%87%22J%26Ox%24%80%E0%82%C3m4%015%23%E5%C1%1F%9D%E8%0D%8A%E3%A3%94%82%88%08%1A%05%40y%E5p%17%909V%01%28Q%C9%E7%A2%8CBJ%29%A6%8C%82%06t%14%B5%3D%C0%E9%84%13%80%B5g%0E%B0%01J%EC%B3%9Br%0A%2A%98%F40Q%00%02%0C%E0%3C%EF%05%FC%AE%9E%0A%8C%CCN%FB%F1%A8%A4%22%08%05%10%E9%EE%FC%F3%82%83-%23A%03h%F1%C9%F5%D9%AB%A2J%29%60%88%9F%10%F3%DF%C7O%C0%00%AB%8F%2F%D0%05~%18%9F%7D%2A%AA%AC%B2%09%EE%08a%5E%F3%E2%E7%BC%FA%D9%8F%209%B0D%FAV%B1%0A%E5-D%80%03%2C%E0%01%1Br%804%98%A2%7F%7Ch%88%00%BFg%C0%09%22%04%04%89%E8%C4%B5%1E%28%80%12%96%D0%83%12%E1%9E%06M%28%80%0E%A2%F0%22%10l%E1%0B%15%C3B%17%CE0w5%BC%A1G%02%C0C%19%EA%90%23i%3Cd%9E%0D%7F%28%91%20%0E%91%88E%3C%22%12%23%A2%C4%25%3A%F1%89P%8C%A2%14%A7H%C5%2AZ%F1%8AX%CC%A2%16%B7%C8%C5.z%F1%8B%60%0C%A3%18%C7H%C62%9A%F1%8ChL%A3%1A%D7%C8%C66%BA%F1%8Dp%8C%A3%1C%E7H%C7%3A%DA%F1%8Ex%CC%A3%1E%F7%C8%C7%3E%FA%F1%8F%80%0C%A4%20%07I%C8B%1A%F2%90%88L%E4%15%03%02%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3%40%3Bdy%02%01%A9%CC%05%2F%9A%8C%B9CH%CB%01%A7-%07H0%81C%EA%1DD%95%28E%09%80%15e%00%03%102p%F5%0A%16%D4%A9G%2C%CA%96%14%60%40A%DA%B5S%DB%9Ej%E5jOS%B9%1F%03%0C%20P%F7nW%2Fu%F4%B6%82%25K%95%16%B2%807%06%100%B8%B0Z%1B%2A%0EPhS%C9%EDbY%B4jaj%11%19c%80%D3%94%09%DB%CDp%A1%00A%1F%97%F62%0E%5D%8BV%1F%07%A5%2B%9E%9E%5CY%C1%82%01%07%1B%C8Y5%BBV-%5B%B6%1C%E7%9E%B8%3B5%01%01%0B%5D%5C%02m%1C9%F2K%29%96Cl.%002%C3%01dZ%FEU%B7nk%16%9D%04%DA%1B%EE%F6%FE%10%C3%A1%E3%E4%91%9BZ%92~%21%FB%89%3FD%C5%B7%1E%09D%FD%90%05%9C%01%CB~%B6%C82%C7U%FF%7D%24%82%24%04%DAR%8A%11%09%82%C4%04%2A%0DF%D2A%84%1E1%A0%07-%04%BEb%06p%18rd%82%25%0D%82%82C%88%1C%05%A0%05%2B%04%D6%82%C8%04%28n%04%81%1F%F0%C5%B7%8A%161n%24C%27%0Db%97cF%04%08H%A0%2Cr%20%F8%A3E%19%20%D2%A0%29G%1C%89%11%10%A3T%C8%81%93%16%05%18K%87g%80H%E5D%0B6%F8%89%0D%5BV4a%8B%82%E0%16%A6D%0A%CC1%0B%817%9E9%D1%09%24%12h%C9%09nF%A4%22%8B%FB%19hd%9D%0DE%40%23%81%A5%14%C1%27D3%F0H%20%23%16%0C%EAP%90%03%EE%F7J%96%8A6%B4%01%23%04%92%B2g%A4%0A%05%11%25yC%60%FA%10%02r%C8%82%5C%21%9EFD%02%25%A8%98Y%2AD%89%AE%EA%EA%ABN%B0%C6%2A%EB%AC%B4%D6j%EB%AD%B8%E6%AA%EB%AE%BC%F6%EA%EB%AF%C0%06%2B%EC%B0%C4%16k%EC%B1%C8%26%AB%EC%B2%CC6%EB%EC%B3%D0F%2B%ED%B4%D4Vk%ED%B5%D8f%AB%ED%B6%DCv%EB%ED%B7%E0%86%2B%EE%B8%E4%96k%EE%B9%E8%A6%AB%EE%BA%D9%06%04%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9D%CA2%00%D5%95%01%AC%5E%3D%99%B5%EB%D6%92%5D%05%0C%200%E0k%C8%B0b%09%18%40%40%C0%EC%C7%ACi%0B%20%60%20AB%01%B7%1D%03%0C%18P%E0%80%82%07%17B%B0%00%21%00%2F%C7%01%06%124%98%C0%01%C5%0D%25RB%18%DE%28%40%01%04%0C%22b%08%A9r%06%0F%9A%0A%933%06X%D0A%85%0E%26_%E2%04r4%E9J%D9%D0%17%0B%98%28rE%8D%1ED%94%3C%95%AAD%036F%0F%5B%E8%08z%A4I%14%AAV%AF%08M%F0m%F1%00%94D%96%3E%99Z%E5%2A%D6%ACTZ%98%5B%1CQhT%AAV%B0d%FE%CD%A2U%EBR%0A%ED%14%07t%29%F5J%3C%F9Z%B6d%C99%80~%E2%85A%B2%DE%C3%B7e%CB%D4%91%FA%13%F9%20J-%FB%F1%C7_%24%1C%00%18Q%01f%C4b%E0%83%AF%9C%F1%9A%82%0E%89%20%C9%83%0F~b%03%85%101%81%0A%86%FC%D5%22%88%03%1C%3A%A4%C0%1C%B3%80h%CB%2A%D9%95%D8%D0%09%96%A8h%8B%25%27%B8%C8P%00Z%B0%A2%A2%2Cs%D0g%A3B%11%F8Q%E0%83%A5%14%F1%E3B3t%22%23%23%16%1C%99%10%01g%C0%A2b%84%13%3AY%D0%06%8C%A8H%8A%8FV%1E%14%C4%28%18%0E%D1%A5B%08%C8%21%0B%7F%85%8C%C9%10%09%94%A0B%A2%9A%0C5%09%E7%9Ct%D6i%E7%9Dx%E6%A9%E7%9E%7C%F6%E9%E7%9F%80%06%2A%E8%A0%84%16j%E8%A1%88%26%AA%E8%A2%8C6%EA%E8%A3%90F%2A%E9%A4%94Vj%E9%A5%98f%AA%E9%A6%9Cv%EA%E9%A7%A0%86%2A%EA%A8%A4%96j%EA%A9%A8%A6%AA%EA%AA%AC%B6%EA%EA%AB%03%0E%05%04%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%ACY%AD%01%02%9C%B5%98%B6%AD%DA%B5%0F%DD%A6%15%40%17n%DC%B9%02%06%0C%20P%60%80%DD%86%01%F2%EA%E5%7B%00A%02%BF%7F%15%06%D8%5B%C0%00%02%05%0D%20Pp%20%20%B1%C2%01%07%120x0%01C%07%12%28%28XN%28%40%81%04%0B%1CD%A8%90%C1%E3%88%8F%07%A3%11%2A%E8p%02F%0E%22O%B2%90YC%84%40l%83%03%3E%00Yb%25%CC%9A%3A~%0C%FD%91%F1%DB%60%84%26i%E4%EC%21%C4H%12%26O%7B%264%27%28%80G%9FD%91%2C%84q%0AU%0A%15%A90%88%B7%03%90%00g%13%28R%A7T%B1r%F5%E9%80z%826%28%A5%9A%0F%2BV%90%FB%05%1D%C0%06%2B%B1%C82%08%80%07%8D%10I%29%0E%20%88%90%05%0EF%28%E1%84%14Vh%E1%85%18f%A8%E1%86%1Cv%E8%E1%87%20%86%28%E2%88%24%96h%E2%89%28%A6%A8%E2%8A%2C%B6%E8%E2%8B0%C6%28%E3%8C4%D6h%E3%8D8%E6%A8%E3%8E%3C%F6%E8%E3%8F%40%06%29%E4%90D%16i%E4%91H%26%A9%E4%92%40%05%04%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%CE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%CF%A0C%8B%1EM%BA%B4%E9%D3%A8S%AB%5E%CD%BA%B5%EB%D7%B0c%CB%9EM%DBk%40%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%CE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%CF%A0C%8B%1EM%BA%B4%E9%D3%A8S%AB%5E%CD%BA%B5%EB%D7%B0c%CB%9EM%DBk%40%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%CE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%CF%A0C%8B%1EM%BA%B4%E9%D3%A8S%AB%5E%CD%BA%B5%EB%D7%B0c%CB%9EM%DBk%40%00%3B";
24218
24412
 
24219
24413
  // src/components/HbLoadingSpinner.tsx
24220
- var import_jsx_runtime182 = require("react/jsx-runtime");
24414
+ var import_jsx_runtime185 = require("react/jsx-runtime");
24221
24415
  function HbLoadingSpinner({
24222
24416
  noQuips,
24223
24417
  extraQuips = [],
24224
24418
  extraQuipsOnly,
24225
24419
  iconOnly
24226
24420
  }) {
24227
- const ctx = (0, import_react132.useContext)(HbLoadingSpinnerContext);
24421
+ const ctx = (0, import_react135.useContext)(HbLoadingSpinnerContext);
24228
24422
  const tid = useTestIds({}, "hbSpinner");
24229
- const quip = (0, import_react132.useMemo)(() => {
24423
+ const quip = (0, import_react135.useMemo)(() => {
24230
24424
  const allQuips = extraQuipsOnly && extraQuips.length !== 0 ? extraQuips : [...ctx.quips, ...extraQuips];
24231
24425
  const forceQuips = extraQuips.length !== 0 || noQuips === false;
24232
24426
  if (ctx.noQuips && !forceQuips || noQuips || allQuips.length === 0) return "Loading...";
24233
24427
  return allQuips[Math.floor(Math.random() * allQuips.length)];
24234
24428
  }, [ctx.noQuips, ctx.quips, extraQuips, extraQuipsOnly, noQuips]);
24235
- return /* @__PURE__ */ (0, import_jsx_runtime182.jsxs)("div", { className: "df fdc jcc aic", ...tid, children: [
24236
- /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(
24429
+ return /* @__PURE__ */ (0, import_jsx_runtime185.jsxs)("div", { className: "df fdc jcc aic", ...tid, children: [
24430
+ /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
24237
24431
  "img",
24238
24432
  {
24239
24433
  src: HbLoadingSpinner_base64_default,
@@ -24243,7 +24437,7 @@ function HbLoadingSpinner({
24243
24437
  ...tid.gif
24244
24438
  }
24245
24439
  ),
24246
- !iconOnly && /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(
24440
+ !iconOnly && /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
24247
24441
  "div",
24248
24442
  {
24249
24443
  "data-chromatic": "ignore",
@@ -24256,7 +24450,7 @@ function HbLoadingSpinner({
24256
24450
  var dotDotDot = (str) => str.concat("...");
24257
24451
  var HB_QUIPS_MISSION = ["Loading", "One Team", "On a Mission", "Executing Relentlessly", "Building Better", "In Service of Our Customers"].map(dotDotDot);
24258
24452
  var HB_QUIPS_FLAVOR = ["HOM is HOW", "Scaling Massively", "#LoveIt"].map(dotDotDot);
24259
- var HbLoadingSpinnerContext = import_react132.default.createContext({
24453
+ var HbLoadingSpinnerContext = import_react135.default.createContext({
24260
24454
  quips: ["Loading..."],
24261
24455
  noQuips: false
24262
24456
  });
@@ -24264,27 +24458,27 @@ function HbSpinnerProvider({
24264
24458
  quips = [],
24265
24459
  children
24266
24460
  }) {
24267
- const state = (0, import_react132.useMemo)(() => ({
24461
+ const state = (0, import_react135.useMemo)(() => ({
24268
24462
  quips,
24269
24463
  noQuips: quips.length === 0
24270
24464
  }), [quips]);
24271
- return /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(HbLoadingSpinnerContext.Provider, { value: state, children });
24465
+ return /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(HbLoadingSpinnerContext.Provider, { value: state, children });
24272
24466
  }
24273
24467
 
24274
24468
  // src/components/Headers/HeaderActions.tsx
24275
- var import_jsx_runtime183 = require("react/jsx-runtime");
24469
+ var import_jsx_runtime186 = require("react/jsx-runtime");
24276
24470
  function HeaderActions(props) {
24277
24471
  const {
24278
24472
  actions,
24279
24473
  ...otherProps
24280
24474
  } = props;
24281
24475
  const tid = useTestIds(otherProps, "headerActions");
24282
- return /* @__PURE__ */ (0, import_jsx_runtime183.jsx)("div", { className: "df gap1 fs0", ...tid, children: actions.map((action) => action.kind === "icon" ? /* @__PURE__ */ (0, import_jsx_runtime183.jsx)(IconButton, { ...action, variant: "outline" }, action.icon) : /* @__PURE__ */ (0, import_jsx_runtime183.jsx)(Button, { ...action }, `${action.label}`)) });
24476
+ return /* @__PURE__ */ (0, import_jsx_runtime186.jsx)("div", { className: "df gap1 fs0", ...tid, children: actions.map((action) => action.kind === "icon" ? /* @__PURE__ */ (0, import_jsx_runtime186.jsx)(IconButton, { ...action, variant: "outline" }, action.icon) : /* @__PURE__ */ (0, import_jsx_runtime186.jsx)(Button, { ...action }, `${action.label}`)) });
24283
24477
  }
24284
24478
 
24285
24479
  // src/components/Headers/ContentHeader.tsx
24286
- var import_runtime111 = require("@homebound/truss/runtime");
24287
- var import_jsx_runtime184 = require("react/jsx-runtime");
24480
+ var import_runtime113 = require("@homebound/truss/runtime");
24481
+ var import_jsx_runtime187 = require("react/jsx-runtime");
24288
24482
  function ContentHeader(props) {
24289
24483
  const {
24290
24484
  title,
@@ -24295,7 +24489,7 @@ function ContentHeader(props) {
24295
24489
  if (!title && !description && !actions) {
24296
24490
  return null;
24297
24491
  }
24298
- const descriptionEl = description && /* @__PURE__ */ (0, import_jsx_runtime184.jsx)("div", { ...(0, import_runtime111.trussProps)({
24492
+ const descriptionEl = description && /* @__PURE__ */ (0, import_jsx_runtime187.jsx)("div", { ...(0, import_runtime113.trussProps)({
24299
24493
  fontWeight: "fw4",
24300
24494
  fontSize: "fz_14px",
24301
24495
  lineHeight: "lh_20px",
@@ -24303,31 +24497,29 @@ function ContentHeader(props) {
24303
24497
  "--color": "var(--b-on-surface)"
24304
24498
  }]
24305
24499
  }), ...tid.description, children: description });
24306
- return /* @__PURE__ */ (0, import_jsx_runtime184.jsxs)("div", { ...(0, import_runtime111.trussProps)({
24500
+ return /* @__PURE__ */ (0, import_jsx_runtime187.jsxs)("div", { ...(0, import_runtime113.trussProps)({
24307
24501
  display: "df",
24308
24502
  flexDirection: "fdc",
24309
24503
  gap: "gap_12px",
24310
- width: "w_calc_var_beam_layout_viewport_width_100vw_var_beam_side_nav_layout_width_0px",
24504
+ width: "w_min_100_calc_var_beam_layout_viewport_width_100vw_var_beam_side_nav_layout_width_0px",
24311
24505
  left: "l_var_beam_side_nav_layout_width_0px",
24312
24506
  position: "sticky",
24313
- paddingLeft: "pl_24px",
24314
- paddingRight: "pr_24px",
24315
24507
  backgroundColor: ["bgColor_var", {
24316
24508
  "--backgroundColor": "var(--b-surface)"
24317
24509
  }]
24318
24510
  }), ...tid, children: [
24319
- /* @__PURE__ */ (0, import_jsx_runtime184.jsxs)("div", { className: "df aic jcsb mw0", children: [
24320
- title ? /* @__PURE__ */ (0, import_jsx_runtime184.jsx)("h2", { className: "fw6 fz_20px lh_28px", ...tid.title, children: title }) : descriptionEl,
24321
- actions && /* @__PURE__ */ (0, import_jsx_runtime184.jsx)(HeaderActions, { actions, ...tid.actions })
24511
+ /* @__PURE__ */ (0, import_jsx_runtime187.jsxs)("div", { className: "df aic jcsb mw0", children: [
24512
+ title ? /* @__PURE__ */ (0, import_jsx_runtime187.jsx)("h2", { className: "fw6 fz_20px lh_28px", ...tid.title, children: title }) : descriptionEl,
24513
+ actions && /* @__PURE__ */ (0, import_jsx_runtime187.jsx)(HeaderActions, { actions, ...tid.actions })
24322
24514
  ] }),
24323
24515
  title && descriptionEl
24324
24516
  ] });
24325
24517
  }
24326
24518
 
24327
24519
  // src/components/HomeboundLogo.tsx
24328
- var import_runtime112 = require("@homebound/truss/runtime");
24329
- var import_jsx_runtime185 = require("react/jsx-runtime");
24330
- var __maybeInc20 = (inc) => {
24520
+ var import_runtime114 = require("@homebound/truss/runtime");
24521
+ var import_jsx_runtime188 = require("react/jsx-runtime");
24522
+ var __maybeInc21 = (inc) => {
24331
24523
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
24332
24524
  };
24333
24525
  function HomeboundLogo(props) {
@@ -24336,24 +24528,24 @@ function HomeboundLogo(props) {
24336
24528
  width: width2 = "auto",
24337
24529
  height = "auto"
24338
24530
  } = props;
24339
- return /* @__PURE__ */ (0, import_jsx_runtime185.jsx)("svg", { viewBox: "0 0 158.1 97.6", xmlns: "http://www.w3.org/2000/svg", ...(0, import_runtime112.trussProps)({
24531
+ return /* @__PURE__ */ (0, import_jsx_runtime188.jsx)("svg", { viewBox: "0 0 158.1 97.6", xmlns: "http://www.w3.org/2000/svg", ...(0, import_runtime114.trussProps)({
24340
24532
  fill: ["fill_var", {
24341
- "--fill": (0, import_runtime112.maybeCssVar)(fill)
24533
+ "--fill": (0, import_runtime114.maybeCssVar)(fill)
24342
24534
  }],
24343
24535
  width: ["w_var", {
24344
- "--width": (0, import_runtime112.maybeCssVar)(__maybeInc20(width2))
24536
+ "--width": (0, import_runtime114.maybeCssVar)(__maybeInc21(width2))
24345
24537
  }],
24346
24538
  height: ["h_var", {
24347
- "--height": (0, import_runtime112.maybeCssVar)(__maybeInc20(height))
24539
+ "--height": (0, import_runtime114.maybeCssVar)(__maybeInc21(height))
24348
24540
  }]
24349
- }), children: /* @__PURE__ */ (0, import_jsx_runtime185.jsx)("path", { d: "M158.1,97.6H0.2L0,39.7L76.8,0l68,38.7l-3.1,5.3l-65-37L6.2,43.4l0.2,48h151.7V97.6z" }) });
24541
+ }), children: /* @__PURE__ */ (0, import_jsx_runtime188.jsx)("path", { d: "M158.1,97.6H0.2L0,39.7L76.8,0l68,38.7l-3.1,5.3l-65-37L6.2,43.4l0.2,48h151.7V97.6z" }) });
24350
24542
  }
24351
24543
 
24352
24544
  // src/components/JumpLink.tsx
24353
- var import_react133 = require("react");
24354
- var import_react_aria59 = require("react-aria");
24355
- var import_runtime113 = require("@homebound/truss/runtime");
24356
- var import_jsx_runtime186 = require("react/jsx-runtime");
24545
+ var import_react136 = require("react");
24546
+ var import_react_aria60 = require("react-aria");
24547
+ var import_runtime115 = require("@homebound/truss/runtime");
24548
+ var import_jsx_runtime189 = require("react/jsx-runtime");
24357
24549
  function JumpLink(props) {
24358
24550
  const {
24359
24551
  label,
@@ -24363,10 +24555,10 @@ function JumpLink(props) {
24363
24555
  __storyState,
24364
24556
  ...otherProps
24365
24557
  } = props;
24366
- const ref = (0, import_react133.useRef)(null);
24558
+ const ref = (0, import_react136.useRef)(null);
24367
24559
  const {
24368
24560
  linkProps
24369
- } = (0, import_react_aria59.useLink)({
24561
+ } = (0, import_react_aria60.useLink)({
24370
24562
  isDisabled: disabled,
24371
24563
  onClick: handleClick,
24372
24564
  href
@@ -24374,11 +24566,11 @@ function JumpLink(props) {
24374
24566
  const {
24375
24567
  isFocusVisible: isFocusVisibleFromEvents,
24376
24568
  focusProps
24377
- } = (0, import_react_aria59.useFocusRing)();
24569
+ } = (0, import_react_aria60.useFocusRing)();
24378
24570
  const {
24379
24571
  hoverProps,
24380
24572
  isHovered: isHoveredFromEvents
24381
- } = (0, import_react_aria59.useHover)({
24573
+ } = (0, import_react_aria60.useHover)({
24382
24574
  isDisabled: disabled
24383
24575
  });
24384
24576
  const isHovered = __storyState?.hovered ?? isHoveredFromEvents;
@@ -24395,14 +24587,14 @@ function JumpLink(props) {
24395
24587
  });
24396
24588
  }
24397
24589
  }
24398
- return /* @__PURE__ */ (0, import_jsx_runtime186.jsx)("a", { ref, ...(0, import_react_aria59.mergeProps)(linkProps, focusProps, hoverProps), ...tid, ...(0, import_runtime113.trussProps)({
24590
+ return /* @__PURE__ */ (0, import_jsx_runtime189.jsx)("a", { ref, ...(0, import_react_aria60.mergeProps)(linkProps, focusProps, hoverProps), ...tid, ...(0, import_runtime115.trussProps)({
24399
24591
  ...jumpLinkStyles.baseStyles,
24400
24592
  ...active && jumpLinkStyles.activeStyles,
24401
24593
  ...isHovered && !disabled && jumpLinkStyles.hoverStyles,
24402
24594
  ...isFocusVisible && jumpLinkStyles.focusStyles,
24403
24595
  ...disabled && jumpLinkStyles.disabledStyles,
24404
24596
  ...disabled && active && jumpLinkStyles.disabledActiveStyles
24405
- }), children: /* @__PURE__ */ (0, import_jsx_runtime186.jsx)("span", { className: "oh d_negwebkit_box wbo_vertical to_ellipsis wlc_2", children: label }) });
24597
+ }), children: /* @__PURE__ */ (0, import_jsx_runtime189.jsx)("span", { className: "oh d_negwebkit_box wbo_vertical to_ellipsis wlc_2", children: label }) });
24406
24598
  }
24407
24599
  var jumpLinkStyles = {
24408
24600
  baseStyles: {
@@ -24450,37 +24642,37 @@ var jumpLinkStyles = {
24450
24642
  };
24451
24643
 
24452
24644
  // src/components/MaxLines.tsx
24453
- var import_utils154 = require("@react-aria/utils");
24454
- var import_react134 = require("react");
24455
- var import_runtime114 = require("@homebound/truss/runtime");
24456
- var import_jsx_runtime187 = require("react/jsx-runtime");
24645
+ var import_utils156 = require("@react-aria/utils");
24646
+ var import_react137 = require("react");
24647
+ var import_runtime116 = require("@homebound/truss/runtime");
24648
+ var import_jsx_runtime190 = require("react/jsx-runtime");
24457
24649
  function MaxLines({
24458
24650
  maxLines,
24459
24651
  children
24460
24652
  }) {
24461
- const elRef = (0, import_react134.useRef)(null);
24462
- const [hasMore, setHasMore] = (0, import_react134.useState)(false);
24463
- const [expanded, setExpanded] = (0, import_react134.useState)(false);
24464
- (0, import_utils154.useLayoutEffect)(() => {
24653
+ const elRef = (0, import_react137.useRef)(null);
24654
+ const [hasMore, setHasMore] = (0, import_react137.useState)(false);
24655
+ const [expanded, setExpanded] = (0, import_react137.useState)(false);
24656
+ (0, import_utils156.useLayoutEffect)(() => {
24465
24657
  if (!elRef.current) return;
24466
24658
  setHasMore(elRef.current.scrollHeight > elRef.current.clientHeight);
24467
24659
  }, []);
24468
- (0, import_react134.useEffect)(() => {
24660
+ (0, import_react137.useEffect)(() => {
24469
24661
  setExpanded(false);
24470
24662
  }, [children]);
24471
- const onResize = (0, import_react134.useCallback)(() => {
24663
+ const onResize = (0, import_react137.useCallback)(() => {
24472
24664
  if (!elRef.current) return;
24473
24665
  !expanded && setHasMore(elRef.current.scrollHeight > elRef.current.clientHeight);
24474
24666
  }, [expanded]);
24475
- (0, import_utils154.useResizeObserver)({
24667
+ (0, import_utils156.useResizeObserver)({
24476
24668
  ref: elRef,
24477
24669
  onResize
24478
24670
  });
24479
- return /* @__PURE__ */ (0, import_jsx_runtime187.jsxs)("div", { children: [
24480
- /* @__PURE__ */ (0, import_jsx_runtime187.jsx)("div", { ref: elRef, ...(0, import_runtime114.trussProps)({
24671
+ return /* @__PURE__ */ (0, import_jsx_runtime190.jsxs)("div", { children: [
24672
+ /* @__PURE__ */ (0, import_jsx_runtime190.jsx)("div", { ref: elRef, ...(0, import_runtime116.trussProps)({
24481
24673
  ...!expanded ? {
24482
24674
  WebkitLineClamp: ["lineClamp_var", {
24483
- "--WebkitLineClamp": (0, import_runtime114.maybeCssVar)(maxLines)
24675
+ "--WebkitLineClamp": (0, import_runtime116.maybeCssVar)(maxLines)
24484
24676
  }],
24485
24677
  overflow: "oh",
24486
24678
  display: "d_negwebkit_box",
@@ -24488,7 +24680,7 @@ function MaxLines({
24488
24680
  textOverflow: "to_ellipsis"
24489
24681
  } : {}
24490
24682
  }), children }),
24491
- hasMore && /* @__PURE__ */ (0, import_jsx_runtime187.jsx)("button", { className: "db fw4 fz_14px lh_20px", onClick: () => setExpanded((prev) => !prev), children: expanded ? "Show Less" : "Show More" })
24683
+ hasMore && /* @__PURE__ */ (0, import_jsx_runtime190.jsx)("button", { className: "db fw4 fz_14px lh_20px", onClick: () => setExpanded((prev) => !prev), children: expanded ? "Show Less" : "Show More" })
24492
24684
  ] });
24493
24685
  }
24494
24686
 
@@ -24496,15 +24688,15 @@ function MaxLines({
24496
24688
  var import_change_case8 = require("change-case");
24497
24689
 
24498
24690
  // src/components/AppNav/AppNavGroup.tsx
24499
- var import_utils156 = require("@react-aria/utils");
24691
+ var import_utils158 = require("@react-aria/utils");
24500
24692
  var import_change_case7 = require("change-case");
24501
- var import_react137 = require("react");
24693
+ var import_react140 = require("react");
24502
24694
 
24503
24695
  // src/components/AppNav/AppNavGroupTrigger.tsx
24504
- var import_react135 = require("react");
24505
- var import_react_aria60 = require("react-aria");
24506
- var import_runtime115 = require("@homebound/truss/runtime");
24507
- var import_jsx_runtime188 = require("react/jsx-runtime");
24696
+ var import_react138 = require("react");
24697
+ var import_react_aria61 = require("react-aria");
24698
+ var import_runtime117 = require("@homebound/truss/runtime");
24699
+ var import_jsx_runtime191 = require("react/jsx-runtime");
24508
24700
  function AppNavGroupTrigger(props) {
24509
24701
  const {
24510
24702
  label,
@@ -24514,33 +24706,33 @@ function AppNavGroupTrigger(props) {
24514
24706
  active = false
24515
24707
  } = props;
24516
24708
  const tid = useTestIds(props, "trigger");
24517
- const ref = (0, import_react135.useRef)(null);
24709
+ const ref = (0, import_react138.useRef)(null);
24518
24710
  const {
24519
24711
  buttonProps,
24520
24712
  isPressed
24521
- } = (0, import_react_aria60.useButton)({
24713
+ } = (0, import_react_aria61.useButton)({
24522
24714
  onPress: onClick,
24523
24715
  elementType: "button"
24524
24716
  }, ref);
24525
24717
  const {
24526
24718
  hoverProps,
24527
24719
  isHovered
24528
- } = (0, import_react_aria60.useHover)({});
24720
+ } = (0, import_react_aria61.useHover)({});
24529
24721
  const {
24530
24722
  isFocusVisible,
24531
24723
  focusProps
24532
- } = (0, import_react_aria60.useFocusRing)();
24724
+ } = (0, import_react_aria61.useFocusRing)();
24533
24725
  const {
24534
24726
  baseStyles: baseStyles4,
24535
24727
  focusRingStyles: focusRingStyles2,
24536
24728
  hoverStyles: hoverStyles4,
24537
24729
  pressedStyles: pressedStyles2
24538
- } = (0, import_react135.useMemo)(() => getNavLinkStyles("side"), []);
24539
- return /* @__PURE__ */ (0, import_jsx_runtime188.jsxs)("button", { type: "button", ...(0, import_react_aria60.mergeProps)(buttonProps, focusProps, hoverProps, tid.trigger, {
24730
+ } = (0, import_react138.useMemo)(() => getNavLinkStyles("side"), []);
24731
+ return /* @__PURE__ */ (0, import_jsx_runtime191.jsxs)("button", { type: "button", ...(0, import_react_aria61.mergeProps)(buttonProps, focusProps, hoverProps, tid.trigger, {
24540
24732
  ref,
24541
24733
  "aria-expanded": expanded,
24542
24734
  "aria-controls": navGroupId,
24543
- ...(0, import_runtime115.mergeProps)(navLink, void 0, {
24735
+ ...(0, import_runtime117.mergeProps)(navLink, void 0, {
24544
24736
  ...baseStyles4,
24545
24737
  ...isFocusVisible && focusRingStyles2,
24546
24738
  ...isHovered && hoverStyles4,
@@ -24554,7 +24746,7 @@ function AppNavGroupTrigger(props) {
24554
24746
  })
24555
24747
  }), children: [
24556
24748
  label,
24557
- /* @__PURE__ */ (0, import_jsx_runtime188.jsx)("div", { ...(0, import_runtime115.trussProps)({
24749
+ /* @__PURE__ */ (0, import_jsx_runtime191.jsx)("div", { ...(0, import_runtime117.trussProps)({
24558
24750
  ...{
24559
24751
  display: "df",
24560
24752
  alignItems: "aic",
@@ -24564,7 +24756,7 @@ function AppNavGroupTrigger(props) {
24564
24756
  ...props.expanded ? {
24565
24757
  transform: "transform_rotate_180deg"
24566
24758
  } : {}
24567
- }), children: /* @__PURE__ */ (0, import_jsx_runtime188.jsx)(Icon, { icon: "chevronDown" }) })
24759
+ }), children: /* @__PURE__ */ (0, import_jsx_runtime191.jsx)(Icon, { icon: "chevronDown" }) })
24568
24760
  ] });
24569
24761
  }
24570
24762
 
@@ -24673,7 +24865,7 @@ function entryHasIcons(item) {
24673
24865
  }
24674
24866
 
24675
24867
  // src/components/AppNav/useAppNavGroupExpanded.ts
24676
- var import_react136 = require("react");
24868
+ var import_react139 = require("react");
24677
24869
  var APP_NAV_EXPANDED_LINK_GROUPS_STORAGE_KEY = "beam.appNav.expandedLinkGroups";
24678
24870
  function loadStored() {
24679
24871
  try {
@@ -24692,13 +24884,13 @@ function persistLabel(label, expanded) {
24692
24884
  }
24693
24885
  function useAppNavGroupExpanded(linkGroup) {
24694
24886
  const { label } = linkGroup;
24695
- const [userExpanded, setUserExpanded] = (0, import_react136.useState)(() => {
24887
+ const [userExpanded, setUserExpanded] = (0, import_react139.useState)(() => {
24696
24888
  const stored = loadStored();
24697
24889
  return label in stored ? stored[label] : null;
24698
24890
  });
24699
24891
  const hasActiveLink = appNavLinkGroupLinks(linkGroup).some((l) => l.active);
24700
24892
  const expanded = userExpanded !== null ? userExpanded : hasActiveLink ? true : linkGroup.defaultExpanded ?? false;
24701
- const onToggle = (0, import_react136.useCallback)(() => {
24893
+ const onToggle = (0, import_react139.useCallback)(() => {
24702
24894
  const next = !expanded;
24703
24895
  setUserExpanded(next);
24704
24896
  persistLabel(label, next);
@@ -24707,9 +24899,9 @@ function useAppNavGroupExpanded(linkGroup) {
24707
24899
  }
24708
24900
 
24709
24901
  // src/components/AppNav/AppNavGroup.tsx
24710
- var import_runtime116 = require("@homebound/truss/runtime");
24711
- var import_jsx_runtime189 = require("react/jsx-runtime");
24712
- var __maybeInc21 = (inc) => {
24902
+ var import_runtime118 = require("@homebound/truss/runtime");
24903
+ var import_jsx_runtime192 = require("react/jsx-runtime");
24904
+ var __maybeInc22 = (inc) => {
24713
24905
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
24714
24906
  };
24715
24907
  function AppNavGroupView(props) {
@@ -24719,9 +24911,9 @@ function AppNavGroupView(props) {
24719
24911
  } = props;
24720
24912
  const tid = useTestIds(props, "linkGroup");
24721
24913
  if (panelCollapsed) {
24722
- return /* @__PURE__ */ (0, import_jsx_runtime189.jsx)(import_jsx_runtime189.Fragment, { children: appNavLinkGroupLinks(linkGroup).map((link) => /* @__PURE__ */ (0, import_jsx_runtime189.jsx)(NavLink, { variant: "side", ...link, iconOnly: !!link.icon, ...tid[`link_${(0, import_change_case7.camelCase)(link.label)}`] }, link.label)) });
24914
+ return /* @__PURE__ */ (0, import_jsx_runtime192.jsx)(import_jsx_runtime192.Fragment, { children: appNavLinkGroupLinks(linkGroup).map((link) => /* @__PURE__ */ (0, import_jsx_runtime192.jsx)(NavLink, { variant: "side", ...link, iconOnly: !!link.icon, ...tid[`link_${(0, import_change_case7.camelCase)(link.label)}`] }, link.label)) });
24723
24915
  }
24724
- return /* @__PURE__ */ (0, import_jsx_runtime189.jsx)(AppNavGroupDisclosure, { ...props });
24916
+ return /* @__PURE__ */ (0, import_jsx_runtime192.jsx)(AppNavGroupDisclosure, { ...props });
24725
24917
  }
24726
24918
  function AppNavGroupDisclosure(props) {
24727
24919
  const {
@@ -24733,44 +24925,44 @@ function AppNavGroupDisclosure(props) {
24733
24925
  } = useAppNavGroupExpanded(linkGroup);
24734
24926
  const tid = useTestIds(props, "linkGroup");
24735
24927
  const navGroupId = `nav-group-${(0, import_change_case7.kebabCase)(linkGroup.label)}`;
24736
- const [contentEl, setContentEl] = (0, import_react137.useState)(null);
24737
- const contentRef = (0, import_react137.useMemo)(() => ({
24928
+ const [contentEl, setContentEl] = (0, import_react140.useState)(null);
24929
+ const contentRef = (0, import_react140.useMemo)(() => ({
24738
24930
  current: contentEl
24739
24931
  }), [contentEl]);
24740
- const [contentHeight, setContentHeight] = (0, import_react137.useState)(expanded ? "auto" : "0");
24741
- (0, import_react137.useEffect)(() => {
24932
+ const [contentHeight, setContentHeight] = (0, import_react140.useState)(expanded ? "auto" : "0");
24933
+ (0, import_react140.useEffect)(() => {
24742
24934
  setContentHeight(expanded && contentEl ? `${contentEl.scrollHeight}px` : "0");
24743
24935
  }, [expanded, contentEl]);
24744
- const onResize = (0, import_react137.useCallback)(() => {
24936
+ const onResize = (0, import_react140.useCallback)(() => {
24745
24937
  if (contentEl && expanded) {
24746
24938
  setContentHeight(`${contentEl.scrollHeight}px`);
24747
24939
  }
24748
24940
  }, [expanded, contentEl]);
24749
- (0, import_utils156.useResizeObserver)({
24941
+ (0, import_utils158.useResizeObserver)({
24750
24942
  ref: contentRef,
24751
24943
  onResize
24752
24944
  });
24753
- return /* @__PURE__ */ (0, import_jsx_runtime189.jsxs)("div", { className: "df fdc", ...tid, children: [
24754
- /* @__PURE__ */ (0, import_jsx_runtime189.jsx)(AppNavGroupTrigger, { label: linkGroup.label, navGroupId, expanded, active: linkGroupHasActiveLink(linkGroup), onClick: onToggle, ...tid }),
24755
- /* @__PURE__ */ (0, import_jsx_runtime189.jsx)("div", { id: navGroupId, role: "region", "aria-hidden": !expanded, ...(0, import_runtime116.trussProps)({
24945
+ return /* @__PURE__ */ (0, import_jsx_runtime192.jsxs)("div", { className: "df fdc", ...tid, children: [
24946
+ /* @__PURE__ */ (0, import_jsx_runtime192.jsx)(AppNavGroupTrigger, { label: linkGroup.label, navGroupId, expanded, active: linkGroupHasActiveLink(linkGroup), onClick: onToggle, ...tid }),
24947
+ /* @__PURE__ */ (0, import_jsx_runtime192.jsx)("div", { id: navGroupId, role: "region", "aria-hidden": !expanded, ...(0, import_runtime118.trussProps)({
24756
24948
  overflow: "oh",
24757
24949
  transition: "transitionHeight",
24758
24950
  height: ["h_var", {
24759
- "--height": (0, import_runtime116.maybeCssVar)(__maybeInc21(contentHeight))
24951
+ "--height": (0, import_runtime118.maybeCssVar)(__maybeInc22(contentHeight))
24760
24952
  }]
24761
24953
  }), ...tid.panel, ...!expanded ? {
24762
24954
  inert: "true"
24763
- } : {}, children: /* @__PURE__ */ (0, import_jsx_runtime189.jsx)("div", { ref: setContentEl, className: "df fdc", children: /* @__PURE__ */ (0, import_jsx_runtime189.jsx)(AppNavItems, { items: linkGroup.items, panelCollapsed: false, nested: true, ...tid }) }) })
24955
+ } : {}, children: /* @__PURE__ */ (0, import_jsx_runtime192.jsx)("div", { ref: setContentEl, className: "df fdc", children: /* @__PURE__ */ (0, import_jsx_runtime192.jsx)(AppNavItems, { items: linkGroup.items, panelCollapsed: false, nested: true, ...tid }) }) })
24764
24956
  ] });
24765
24957
  }
24766
24958
 
24767
24959
  // src/components/AppNav/AppNavGroupMenu.tsx
24768
- var import_jsx_runtime190 = require("react/jsx-runtime");
24960
+ var import_jsx_runtime193 = require("react/jsx-runtime");
24769
24961
  function AppNavGroupMenu({
24770
24962
  linkGroup,
24771
24963
  ...tid
24772
24964
  }) {
24773
- return /* @__PURE__ */ (0, import_jsx_runtime190.jsx)(
24965
+ return /* @__PURE__ */ (0, import_jsx_runtime193.jsx)(
24774
24966
  ButtonMenu,
24775
24967
  {
24776
24968
  trigger: {
@@ -24786,8 +24978,8 @@ function AppNavGroupMenu({
24786
24978
  }
24787
24979
 
24788
24980
  // src/components/AppNav/AppNavSectionView.tsx
24789
- var import_runtime117 = require("@homebound/truss/runtime");
24790
- var import_jsx_runtime191 = require("react/jsx-runtime");
24981
+ var import_runtime119 = require("@homebound/truss/runtime");
24982
+ var import_jsx_runtime194 = require("react/jsx-runtime");
24791
24983
  function AppNavSectionView(props) {
24792
24984
  const {
24793
24985
  section,
@@ -24813,7 +25005,7 @@ function AppNavSectionView(props) {
24813
25005
  "--borderColor": "var(--b-surface-separator)"
24814
25006
  }]
24815
25007
  };
24816
- return /* @__PURE__ */ (0, import_jsx_runtime191.jsxs)("div", { ...(0, import_runtime117.trussProps)({
25008
+ return /* @__PURE__ */ (0, import_jsx_runtime194.jsxs)("div", { ...(0, import_runtime119.trussProps)({
24817
25009
  ...{
24818
25010
  display: "df",
24819
25011
  flexDirection: "fdc",
@@ -24821,7 +25013,7 @@ function AppNavSectionView(props) {
24821
25013
  },
24822
25014
  ...showDivider ? dividerStyles : {}
24823
25015
  }), ...tid, children: [
24824
- section.label && !panelCollapsed && variant !== "global" && /* @__PURE__ */ (0, import_jsx_runtime191.jsx)("div", { ...(0, import_runtime117.trussProps)({
25016
+ section.label && !panelCollapsed && variant !== "global" && /* @__PURE__ */ (0, import_jsx_runtime194.jsx)("div", { ...(0, import_runtime119.trussProps)({
24825
25017
  fontWeight: "fw6",
24826
25018
  fontSize: "fz_10px",
24827
25019
  lineHeight: "lh_14px",
@@ -24834,18 +25026,18 @@ function AppNavSectionView(props) {
24834
25026
  paddingBottom: "pb1",
24835
25027
  textTransform: "ttu"
24836
25028
  }), ...tid.label, children: section.label }),
24837
- /* @__PURE__ */ (0, import_jsx_runtime191.jsx)(AppNavItems, { ...scopeProps, items: section.items, variant, panelCollapsed, nested })
25029
+ /* @__PURE__ */ (0, import_jsx_runtime194.jsx)(AppNavItems, { ...scopeProps, items: section.items, variant, panelCollapsed, nested })
24838
25030
  ] });
24839
25031
  }
24840
25032
 
24841
25033
  // src/components/AppNav/AppNavItems.tsx
24842
- var import_jsx_runtime192 = require("react/jsx-runtime");
25034
+ var import_jsx_runtime195 = require("react/jsx-runtime");
24843
25035
  function AppNavItems(props) {
24844
25036
  const { items, variant = "side", panelCollapsed = false, nested = false } = props;
24845
25037
  const tid = useTestIds(props, "appNav");
24846
- return /* @__PURE__ */ (0, import_jsx_runtime192.jsx)(import_jsx_runtime192.Fragment, { children: items.map((item, idx) => {
25038
+ return /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(import_jsx_runtime195.Fragment, { children: items.map((item, idx) => {
24847
25039
  if (isAppNavLink(item)) {
24848
- return /* @__PURE__ */ (0, import_jsx_runtime192.jsx)(
25040
+ return /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(
24849
25041
  NavLink,
24850
25042
  {
24851
25043
  variant,
@@ -24858,7 +25050,7 @@ function AppNavItems(props) {
24858
25050
  );
24859
25051
  }
24860
25052
  if (isAppNavGroup(item)) {
24861
- return variant === "global" ? /* @__PURE__ */ (0, import_jsx_runtime192.jsx)(AppNavGroupMenu, { linkGroup: item, ...tid.linkGroup }, appNavItemKey(item)) : /* @__PURE__ */ (0, import_jsx_runtime192.jsx)(
25053
+ return variant === "global" ? /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(AppNavGroupMenu, { linkGroup: item, ...tid.linkGroup }, appNavItemKey(item)) : /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(
24862
25054
  AppNavGroupView,
24863
25055
  {
24864
25056
  linkGroup: item,
@@ -24869,7 +25061,7 @@ function AppNavItems(props) {
24869
25061
  );
24870
25062
  }
24871
25063
  if (isAppNavSection(item)) {
24872
- return /* @__PURE__ */ (0, import_jsx_runtime192.jsx)(
25064
+ return /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(
24873
25065
  AppNavSectionView,
24874
25066
  {
24875
25067
  section: item,
@@ -24887,48 +25079,35 @@ function AppNavItems(props) {
24887
25079
  }
24888
25080
 
24889
25081
  // src/components/Navbar/NavbarMobileMenu.tsx
24890
- var import_framer_motion5 = require("framer-motion");
24891
- var import_react139 = require("react");
24892
- var import_react_aria61 = require("react-aria");
24893
- var import_react_dom6 = require("react-dom");
25082
+ var import_framer_motion6 = require("framer-motion");
25083
+ var import_react141 = require("react");
25084
+ var import_react_aria62 = require("react-aria");
25085
+ var import_react_dom7 = require("react-dom");
24894
25086
  var import_react_router_dom7 = require("react-router-dom");
24895
-
24896
- // src/layouts/EnvironmentBannerLayout/EnvironmentBannerLayoutHeightContext.tsx
24897
- var import_react138 = require("react");
24898
- var import_jsx_runtime193 = require("react/jsx-runtime");
24899
- var EnvironmentBannerLayoutHeightContext = (0, import_react138.createContext)(0);
24900
- function EnvironmentBannerLayoutHeightProvider({ value, children }) {
24901
- return /* @__PURE__ */ (0, import_jsx_runtime193.jsx)(EnvironmentBannerLayoutHeightContext.Provider, { value, children });
24902
- }
24903
- function useEnvironmentBannerLayoutHeight() {
24904
- return (0, import_react138.useContext)(EnvironmentBannerLayoutHeightContext);
24905
- }
24906
-
24907
- // src/components/Navbar/NavbarMobileMenu.tsx
24908
- var import_runtime118 = require("@homebound/truss/runtime");
24909
- var import_jsx_runtime194 = require("react/jsx-runtime");
25087
+ var import_runtime120 = require("@homebound/truss/runtime");
25088
+ var import_jsx_runtime196 = require("react/jsx-runtime");
24910
25089
  function NavbarMobileMenu(props) {
24911
25090
  const {
24912
25091
  items
24913
25092
  } = props;
24914
25093
  const tid = useTestIds(props, "navbar");
24915
- const [isOpen, setIsOpen] = (0, import_react139.useState)(false);
25094
+ const [isOpen, setIsOpen] = (0, import_react141.useState)(false);
24916
25095
  const {
24917
25096
  pathname,
24918
25097
  search
24919
25098
  } = (0, import_react_router_dom7.useLocation)();
24920
- (0, import_react_aria61.usePreventScroll)({
25099
+ (0, import_react_aria62.usePreventScroll)({
24921
25100
  isDisabled: !isOpen
24922
25101
  });
24923
- (0, import_react139.useEffect)(() => {
25102
+ (0, import_react141.useEffect)(() => {
24924
25103
  setIsOpen(false);
24925
25104
  }, [pathname, search]);
24926
25105
  const close = () => setIsOpen(false);
24927
- return /* @__PURE__ */ (0, import_jsx_runtime194.jsxs)(import_jsx_runtime194.Fragment, { children: [
24928
- /* @__PURE__ */ (0, import_jsx_runtime194.jsx)(IconButton, { icon: isOpen ? "menuClose" : "menu", color: "--b-on-surface-muted" /* OnSurfaceMuted */, label: isOpen ? "Close navigation" : "Open navigation", onClick: () => setIsOpen((open) => !open), ...tid.mobileMenu }),
24929
- (0, import_react_dom6.createPortal)(
25106
+ return /* @__PURE__ */ (0, import_jsx_runtime196.jsxs)(import_jsx_runtime196.Fragment, { children: [
25107
+ /* @__PURE__ */ (0, import_jsx_runtime196.jsx)(IconButton, { icon: isOpen ? "menuClose" : "menu", color: "--b-on-surface-muted" /* OnSurfaceMuted */, label: isOpen ? "Close navigation" : "Open navigation", onClick: () => setIsOpen((open) => !open), ...tid.mobileMenu }),
25108
+ (0, import_react_dom7.createPortal)(
24930
25109
  /* AnimatePresence keeps the drawer mounted through its slide/fade-out before unmounting.*/
24931
- /* @__PURE__ */ (0, import_jsx_runtime194.jsx)(import_framer_motion5.AnimatePresence, { children: isOpen && /* @__PURE__ */ (0, import_jsx_runtime194.jsx)(NavbarMobileDrawer, { items, onClose: close, tid }) }),
25110
+ /* @__PURE__ */ (0, import_jsx_runtime196.jsx)(import_framer_motion6.AnimatePresence, { children: isOpen && /* @__PURE__ */ (0, import_jsx_runtime196.jsx)(NavbarMobileDrawer, { items, onClose: close, tid }) }),
24932
25111
  document.body
24933
25112
  )
24934
25113
  ] });
@@ -24942,14 +25121,14 @@ function NavbarMobileDrawer({
24942
25121
  const overlayTopStyle = {
24943
25122
  top: bannerHeightPx
24944
25123
  };
24945
- return /* @__PURE__ */ (0, import_jsx_runtime194.jsxs)(import_jsx_runtime194.Fragment, { children: [
24946
- /* @__PURE__ */ (0, import_jsx_runtime194.jsx)(import_framer_motion5.motion.div, { ...(0, import_runtime118.mergeProps)(void 0, overlayTopStyle, {
25124
+ return /* @__PURE__ */ (0, import_jsx_runtime196.jsxs)(import_jsx_runtime196.Fragment, { children: [
25125
+ /* @__PURE__ */ (0, import_jsx_runtime196.jsx)(import_framer_motion6.motion.div, { ...(0, import_runtime120.mergeProps)(void 0, overlayTopStyle, {
24947
25126
  position: "fixed",
24948
25127
  right: "right0",
24949
25128
  bottom: "bottom0",
24950
25129
  left: "left0",
24951
25130
  zIndex: ["z_var", {
24952
- "--zIndex": (0, import_runtime118.maybeCssVar)(zIndices.navbarMobileMenuScrim)
25131
+ "--zIndex": (0, import_runtime120.maybeCssVar)(zIndices.navbarMobileMenuScrim)
24953
25132
  }],
24954
25133
  backgroundColor: ["bgColor_var", {
24955
25134
  "--backgroundColor": "var(--b-scrim)"
@@ -24964,7 +25143,7 @@ function NavbarMobileDrawer({
24964
25143
  ease: "linear",
24965
25144
  duration: 0.2
24966
25145
  }, onClick: onClose, ...tid.mobileMenuScrim }, "navbarMobileMenuScrim"),
24967
- /* @__PURE__ */ (0, import_jsx_runtime194.jsx)(import_react_aria61.FocusScope, { autoFocus: true, contain: true, restoreFocus: true, children: /* @__PURE__ */ (0, import_jsx_runtime194.jsxs)(import_framer_motion5.motion.aside, { role: "dialog", "aria-modal": "true", "aria-label": "Navigation", ...(0, import_runtime118.mergeProps)(void 0, overlayTopStyle, {
25146
+ /* @__PURE__ */ (0, import_jsx_runtime196.jsx)(import_react_aria62.FocusScope, { autoFocus: true, contain: true, restoreFocus: true, children: /* @__PURE__ */ (0, import_jsx_runtime196.jsxs)(import_framer_motion6.motion.aside, { role: "dialog", "aria-modal": "true", "aria-label": "Navigation", ...(0, import_runtime120.mergeProps)(void 0, overlayTopStyle, {
24968
25147
  position: "fixed",
24969
25148
  bottom: "bottom0",
24970
25149
  left: "left0",
@@ -24974,7 +25153,7 @@ function NavbarMobileDrawer({
24974
25153
  width: "w_260px",
24975
25154
  overflow: "oh",
24976
25155
  zIndex: ["z_var", {
24977
- "--zIndex": (0, import_runtime118.maybeCssVar)(zIndices.navbarMobileMenu)
25156
+ "--zIndex": (0, import_runtime120.maybeCssVar)(zIndices.navbarMobileMenu)
24978
25157
  }],
24979
25158
  backgroundColor: ["bgColor_var", {
24980
25159
  "--backgroundColor": "var(--b-surface)"
@@ -24989,7 +25168,7 @@ function NavbarMobileDrawer({
24989
25168
  ease: "linear",
24990
25169
  duration: 0.2
24991
25170
  }, onClick: (e) => e.stopPropagation(), ...tid.mobileMenuDrawer, children: [
24992
- /* @__PURE__ */ (0, import_jsx_runtime194.jsx)("div", { ...(0, import_runtime118.trussProps)({
25171
+ /* @__PURE__ */ (0, import_jsx_runtime196.jsx)("div", { ...(0, import_runtime120.trussProps)({
24993
25172
  ...{
24994
25173
  display: "df",
24995
25174
  alignItems: "aic",
@@ -25004,11 +25183,11 @@ function NavbarMobileDrawer({
25004
25183
  }]
25005
25184
  },
25006
25185
  ...pageContentPaddingX
25007
- }), children: /* @__PURE__ */ (0, import_jsx_runtime194.jsx)(IconButton, { icon: "x", color: "--b-on-surface-muted" /* OnSurfaceMuted */, label: "Close navigation", onClick: onClose, ...tid.mobileMenuClose }) }),
25008
- /* @__PURE__ */ (0, import_jsx_runtime194.jsx)(
25186
+ }), children: /* @__PURE__ */ (0, import_jsx_runtime196.jsx)(IconButton, { icon: "x", color: "--b-on-surface-muted" /* OnSurfaceMuted */, label: "Close navigation", onClick: onClose, ...tid.mobileMenuClose }) }),
25187
+ /* @__PURE__ */ (0, import_jsx_runtime196.jsx)(
25009
25188
  "nav",
25010
25189
  {
25011
- ...(0, import_runtime118.trussProps)({
25190
+ ...(0, import_runtime120.trussProps)({
25012
25191
  ...{
25013
25192
  flexGrow: "fg1",
25014
25193
  overflowY: "oya",
@@ -25026,7 +25205,7 @@ function NavbarMobileDrawer({
25026
25205
  }
25027
25206
  },
25028
25207
  ...tid.mobileMenuPanel,
25029
- children: /* @__PURE__ */ (0, import_jsx_runtime194.jsx)(AppNavItems, { items, panelCollapsed: false, ...tid })
25208
+ children: /* @__PURE__ */ (0, import_jsx_runtime196.jsx)(AppNavItems, { items, panelCollapsed: false, ...tid })
25030
25209
  }
25031
25210
  )
25032
25211
  ] }, "navbarMobileMenuDrawer") })
@@ -25034,8 +25213,8 @@ function NavbarMobileDrawer({
25034
25213
  }
25035
25214
 
25036
25215
  // src/components/Navbar/Navbar.tsx
25037
- var import_runtime119 = require("@homebound/truss/runtime");
25038
- var import_jsx_runtime195 = require("react/jsx-runtime");
25216
+ var import_runtime121 = require("@homebound/truss/runtime");
25217
+ var import_jsx_runtime197 = require("react/jsx-runtime");
25039
25218
  function Navbar(props) {
25040
25219
  const {
25041
25220
  brand,
@@ -25054,7 +25233,7 @@ function Navbar(props) {
25054
25233
  overflows
25055
25234
  } = useContentOverflow(!sm);
25056
25235
  const showMobile = sm || overflows;
25057
- return /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(ContrastScope, { children: /* @__PURE__ */ (0, import_jsx_runtime195.jsxs)("nav", { ...(0, import_runtime119.trussProps)({
25236
+ return /* @__PURE__ */ (0, import_jsx_runtime197.jsx)(ContrastScope, { children: /* @__PURE__ */ (0, import_jsx_runtime197.jsxs)("nav", { ...(0, import_runtime121.trussProps)({
25058
25237
  ...{
25059
25238
  backgroundColor: ["bgColor_var", {
25060
25239
  "--backgroundColor": "var(--b-surface-raised)"
@@ -25070,10 +25249,10 @@ function Navbar(props) {
25070
25249
  },
25071
25250
  ...headerContentPaddingX(showMobile)
25072
25251
  }), ...tid, children: [
25073
- /* @__PURE__ */ (0, import_jsx_runtime195.jsxs)("div", { className: "df aic gap3 fg1 mw0", children: [
25074
- /* @__PURE__ */ (0, import_jsx_runtime195.jsxs)("div", { className: "df aic fs0 gap2", children: [
25075
- showMobile && /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(NavbarMobileMenu, { items, ...tid }),
25076
- /* @__PURE__ */ (0, import_jsx_runtime195.jsx)("div", { ...(0, import_runtime119.trussProps)({
25252
+ /* @__PURE__ */ (0, import_jsx_runtime197.jsxs)("div", { className: "df aic gap3 fg1 mw0", children: [
25253
+ /* @__PURE__ */ (0, import_jsx_runtime197.jsxs)("div", { className: "df aic fs0 gap2", children: [
25254
+ showMobile && /* @__PURE__ */ (0, import_jsx_runtime197.jsx)(NavbarMobileMenu, { items, ...tid }),
25255
+ /* @__PURE__ */ (0, import_jsx_runtime197.jsx)("div", { ...(0, import_runtime121.trussProps)({
25077
25256
  flexShrink: "fs0",
25078
25257
  ...hideBrandOnMobile && showMobile ? {
25079
25258
  display: "dn"
@@ -25082,7 +25261,7 @@ function Navbar(props) {
25082
25261
  ] }),
25083
25262
  !sm && // Stays mounted while overflowing (hidden) so the items remain measurable and the bar
25084
25263
  // can expand again as space frees up.
25085
- /* @__PURE__ */ (0, import_jsx_runtime195.jsx)("div", { ref: containerRef, ...(0, import_runtime119.trussProps)({
25264
+ /* @__PURE__ */ (0, import_jsx_runtime197.jsx)("div", { ref: containerRef, ...(0, import_runtime121.trussProps)({
25086
25265
  display: "df",
25087
25266
  alignItems: "aic",
25088
25267
  flexGrow: "fg1",
@@ -25091,11 +25270,11 @@ function Navbar(props) {
25091
25270
  ...overflows ? {
25092
25271
  visibility: "visibility_hidden"
25093
25272
  } : {}
25094
- }), ...tid.items, children: /* @__PURE__ */ (0, import_jsx_runtime195.jsx)("div", { ref: contentRef, className: "df aic gap2 width_max_content", children: /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(AppNavItems, { variant: "global", items, ...tid }) }) })
25273
+ }), ...tid.items, children: /* @__PURE__ */ (0, import_jsx_runtime197.jsx)("div", { ref: contentRef, className: "df aic gap2 width_max_content", children: /* @__PURE__ */ (0, import_jsx_runtime197.jsx)(AppNavItems, { variant: "global", items, ...tid }) }) })
25095
25274
  ] }),
25096
- /* @__PURE__ */ (0, import_jsx_runtime195.jsxs)("div", { className: "df aic gap1", children: [
25097
- rightSlot && /* @__PURE__ */ (0, import_jsx_runtime195.jsx)("div", { className: "df aic gap1", ...tid.rightSlot, children: rightSlot }),
25098
- user && /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(NavbarUserMenu, { user, ...tid.userMenu })
25275
+ /* @__PURE__ */ (0, import_jsx_runtime197.jsxs)("div", { className: "df aic gap1", children: [
25276
+ rightSlot && /* @__PURE__ */ (0, import_jsx_runtime197.jsx)("div", { className: "df aic gap1", ...tid.rightSlot, children: rightSlot }),
25277
+ user && /* @__PURE__ */ (0, import_jsx_runtime197.jsx)(NavbarUserMenu, { user, ...tid.userMenu })
25099
25278
  ] })
25100
25279
  ] }) });
25101
25280
  }
@@ -25103,7 +25282,7 @@ function NavbarUserMenu({
25103
25282
  user,
25104
25283
  ...tid
25105
25284
  }) {
25106
- return /* @__PURE__ */ (0, import_jsx_runtime195.jsx)("div", { className: "df aic fs0 ml1", children: /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(ButtonMenu, { items: user.menuItems, persistentItems: user.persistentItems, trigger: {
25285
+ return /* @__PURE__ */ (0, import_jsx_runtime197.jsx)("div", { className: "df aic fs0 ml1", children: /* @__PURE__ */ (0, import_jsx_runtime197.jsx)(ButtonMenu, { items: user.menuItems, persistentItems: user.persistentItems, trigger: {
25107
25286
  src: user.picture,
25108
25287
  name: user.name,
25109
25288
  size: "sm",
@@ -25112,8 +25291,8 @@ function NavbarUserMenu({
25112
25291
  }
25113
25292
 
25114
25293
  // src/components/Pagination.tsx
25115
- var import_runtime120 = require("@homebound/truss/runtime");
25116
- var import_jsx_runtime196 = require("react/jsx-runtime");
25294
+ var import_runtime122 = require("@homebound/truss/runtime");
25295
+ var import_jsx_runtime198 = require("react/jsx-runtime");
25117
25296
  var defaultPage = {
25118
25297
  offset: 0,
25119
25298
  limit: 100
@@ -25145,7 +25324,7 @@ function Pagination(props) {
25145
25324
  }
25146
25325
  }
25147
25326
  const tid = useTestIds(props, "pagination");
25148
- return /* @__PURE__ */ (0, import_jsx_runtime196.jsxs)("div", { ...(0, import_runtime120.trussProps)({
25327
+ return /* @__PURE__ */ (0, import_jsx_runtime198.jsxs)("div", { ...(0, import_runtime122.trussProps)({
25149
25328
  display: "df",
25150
25329
  borderColor: ["bc_var", {
25151
25330
  "--borderColor": "var(--b-surface-separator)"
@@ -25162,24 +25341,24 @@ function Pagination(props) {
25162
25341
  paddingRight: "pr2",
25163
25342
  paddingTop: "pt2"
25164
25343
  }), ...tid, children: [
25165
- /* @__PURE__ */ (0, import_jsx_runtime196.jsx)("div", { className: "df mta mba mr2", ...tid.pageSizeLabel, children: "Page size:" }),
25166
- /* @__PURE__ */ (0, import_jsx_runtime196.jsx)("div", { className: "w_78px", children: /* @__PURE__ */ (0, import_jsx_runtime196.jsx)(SelectField, { compact: true, label: "Page Size", labelStyle: "hidden", options: pageOptions, value: pageSize, onSelect: (val) => set({
25344
+ /* @__PURE__ */ (0, import_jsx_runtime198.jsx)("div", { className: "df mta mba mr2", ...tid.pageSizeLabel, children: "Page size:" }),
25345
+ /* @__PURE__ */ (0, import_jsx_runtime198.jsx)("div", { className: "w_78px", children: /* @__PURE__ */ (0, import_jsx_runtime198.jsx)(SelectField, { compact: true, label: "Page Size", labelStyle: "hidden", options: pageOptions, value: pageSize, onSelect: (val) => set({
25167
25346
  pageNumber: 1,
25168
25347
  pageSize: val
25169
25348
  }), autoSort: false, ...tid.pageSize }) }),
25170
- /* @__PURE__ */ (0, import_jsx_runtime196.jsxs)("div", { className: "mla mta mba df", children: [
25171
- /* @__PURE__ */ (0, import_jsx_runtime196.jsxs)("div", { className: "df mta mba mr2", ...tid.pageInfoLabel, children: [
25349
+ /* @__PURE__ */ (0, import_jsx_runtime198.jsxs)("div", { className: "mla mta mba df", children: [
25350
+ /* @__PURE__ */ (0, import_jsx_runtime198.jsxs)("div", { className: "df mta mba mr2", ...tid.pageInfoLabel, children: [
25172
25351
  first,
25173
25352
  " ",
25174
25353
  showLast ? `- ${last}` : "",
25175
25354
  " of ",
25176
25355
  totalCount
25177
25356
  ] }),
25178
- /* @__PURE__ */ (0, import_jsx_runtime196.jsx)(IconButton, { icon: "chevronLeft", color: hasPrevPage ? "--b-text-link-default" /* TextLinkDefault */ : "--b-surface-separator" /* SurfaceSeparator */, onClick: () => set({
25357
+ /* @__PURE__ */ (0, import_jsx_runtime198.jsx)(IconButton, { icon: "chevronLeft", color: hasPrevPage ? "--b-text-link-default" /* TextLinkDefault */ : "--b-surface-separator" /* SurfaceSeparator */, onClick: () => set({
25179
25358
  pageNumber: pageNumber - 1,
25180
25359
  pageSize
25181
25360
  }), disabled: !hasPrevPage, ...tid.previousIcon }),
25182
- /* @__PURE__ */ (0, import_jsx_runtime196.jsx)(IconButton, { icon: "chevronRight", color: hasNextPage ? "--b-text-link-default" /* TextLinkDefault */ : "--b-surface-separator" /* SurfaceSeparator */, onClick: () => set({
25361
+ /* @__PURE__ */ (0, import_jsx_runtime198.jsx)(IconButton, { icon: "chevronRight", color: hasNextPage ? "--b-text-link-default" /* TextLinkDefault */ : "--b-surface-separator" /* SurfaceSeparator */, onClick: () => set({
25183
25362
  pageNumber: pageNumber + 1,
25184
25363
  pageSize
25185
25364
  }), disabled: !hasNextPage, ...tid.nextIcon })
@@ -25201,10 +25380,10 @@ function toPageNumberSize(page) {
25201
25380
  }
25202
25381
 
25203
25382
  // src/components/ScrollShadows.tsx
25204
- var import_utils163 = require("@react-aria/utils");
25205
- var import_react140 = require("react");
25206
- var import_runtime121 = require("@homebound/truss/runtime");
25207
- var import_jsx_runtime197 = require("react/jsx-runtime");
25383
+ var import_utils165 = require("@react-aria/utils");
25384
+ var import_react142 = require("react");
25385
+ var import_runtime123 = require("@homebound/truss/runtime");
25386
+ var import_jsx_runtime199 = require("react/jsx-runtime");
25208
25387
  function ScrollShadows(props) {
25209
25388
  const {
25210
25389
  children,
@@ -25220,15 +25399,15 @@ function ScrollShadows(props) {
25220
25399
  if (!bgColor.includes("rgba")) {
25221
25400
  throw new Error("ScrollShadows: bgColor prop must be in the format 'rgba(255, 255, 255, 1)'");
25222
25401
  }
25223
- const [showStartShadow, setShowStartShadow] = (0, import_react140.useState)(false);
25224
- const [showEndShadow, setShowEndShadow] = (0, import_react140.useState)(false);
25225
- const scrollRef = (0, import_react140.useRef)(null);
25226
- const [startShadowStyles, endShadowStyles] = (0, import_react140.useMemo)(() => {
25402
+ const [showStartShadow, setShowStartShadow] = (0, import_react142.useState)(false);
25403
+ const [showEndShadow, setShowEndShadow] = (0, import_react142.useState)(false);
25404
+ const scrollRef = (0, import_react142.useRef)(null);
25405
+ const [startShadowStyles, endShadowStyles] = (0, import_react142.useMemo)(() => {
25227
25406
  const transparentBgColor = bgColor.replace(/,1\)$/, ",0)");
25228
25407
  const commonStyles = {
25229
25408
  position: "absolute",
25230
25409
  zIndex: ["z_var", {
25231
- "--zIndex": (0, import_runtime121.maybeCssVar)(zIndices.scrollShadow)
25410
+ "--zIndex": (0, import_runtime123.maybeCssVar)(zIndices.scrollShadow)
25232
25411
  }],
25233
25412
  pointerEvents: "pointerEvents_none"
25234
25413
  };
@@ -25261,7 +25440,7 @@ function ScrollShadows(props) {
25261
25440
  ...startShadowStyles2,
25262
25441
  ...{
25263
25442
  background: ["background_var", {
25264
- "--background": (0, import_runtime121.maybeCssVar)(startGradient)
25443
+ "--background": (0, import_runtime123.maybeCssVar)(startGradient)
25265
25444
  }]
25266
25445
  }
25267
25446
  }, {
@@ -25269,12 +25448,12 @@ function ScrollShadows(props) {
25269
25448
  ...endShadowStyles2,
25270
25449
  ...{
25271
25450
  background: ["background_var", {
25272
- "--background": (0, import_runtime121.maybeCssVar)(endGradient)
25451
+ "--background": (0, import_runtime123.maybeCssVar)(endGradient)
25273
25452
  }]
25274
25453
  }
25275
25454
  }];
25276
25455
  }, [horizontal, bgColor]);
25277
- const updateScrollProps = (0, import_react140.useCallback)((el) => {
25456
+ const updateScrollProps = (0, import_react142.useCallback)((el) => {
25278
25457
  const {
25279
25458
  scrollTop,
25280
25459
  scrollHeight,
@@ -25289,15 +25468,15 @@ function ScrollShadows(props) {
25289
25468
  setShowStartShadow(start > 0);
25290
25469
  setShowEndShadow(start + boxSize < end);
25291
25470
  }, [horizontal]);
25292
- const onResize = (0, import_react140.useCallback)(() => scrollRef.current && updateScrollProps(scrollRef.current), [updateScrollProps]);
25293
- (0, import_utils163.useResizeObserver)({
25471
+ const onResize = (0, import_react142.useCallback)(() => scrollRef.current && updateScrollProps(scrollRef.current), [updateScrollProps]);
25472
+ (0, import_utils165.useResizeObserver)({
25294
25473
  ref: scrollRef,
25295
25474
  onResize
25296
25475
  });
25297
- return /* @__PURE__ */ (0, import_jsx_runtime197.jsxs)("div", { ...(0, import_runtime121.trussProps)({
25476
+ return /* @__PURE__ */ (0, import_jsx_runtime199.jsxs)("div", { ...(0, import_runtime123.trussProps)({
25298
25477
  display: "df",
25299
25478
  flexDirection: ["fd_var", {
25300
- "--flexDirection": (0, import_runtime121.maybeCssVar)(!horizontal ? "column" : "row")
25479
+ "--flexDirection": (0, import_runtime123.maybeCssVar)(!horizontal ? "column" : "row")
25301
25480
  }],
25302
25481
  position: "relative",
25303
25482
  overflow: "oh",
@@ -25310,23 +25489,23 @@ function ScrollShadows(props) {
25310
25489
  width: width2
25311
25490
  }
25312
25491
  }), ...tid, children: [
25313
- /* @__PURE__ */ (0, import_jsx_runtime197.jsx)("div", { ...(0, import_runtime121.trussProps)({
25492
+ /* @__PURE__ */ (0, import_jsx_runtime199.jsx)("div", { ...(0, import_runtime123.trussProps)({
25314
25493
  ...startShadowStyles,
25315
25494
  ...{
25316
25495
  opacity: ["o_var", {
25317
- "--opacity": (0, import_runtime121.maybeCssVar)(showStartShadow ? 1 : 0)
25496
+ "--opacity": (0, import_runtime123.maybeCssVar)(showStartShadow ? 1 : 0)
25318
25497
  }]
25319
25498
  }
25320
25499
  }), "data-chromatic": "ignore" }),
25321
- /* @__PURE__ */ (0, import_jsx_runtime197.jsx)("div", { ...(0, import_runtime121.trussProps)({
25500
+ /* @__PURE__ */ (0, import_jsx_runtime199.jsx)("div", { ...(0, import_runtime123.trussProps)({
25322
25501
  ...endShadowStyles,
25323
25502
  ...{
25324
25503
  opacity: ["o_var", {
25325
- "--opacity": (0, import_runtime121.maybeCssVar)(showEndShadow ? 1 : 0)
25504
+ "--opacity": (0, import_runtime123.maybeCssVar)(showEndShadow ? 1 : 0)
25326
25505
  }]
25327
25506
  }
25328
25507
  }), "data-chromatic": "ignore" }),
25329
- /* @__PURE__ */ (0, import_jsx_runtime197.jsx)("div", { ...(0, import_runtime121.trussProps)({
25508
+ /* @__PURE__ */ (0, import_jsx_runtime199.jsx)("div", { ...(0, import_runtime123.trussProps)({
25330
25509
  ...xss,
25331
25510
  ...{
25332
25511
  overflow: "oa",
@@ -25338,8 +25517,8 @@ function ScrollShadows(props) {
25338
25517
  }
25339
25518
 
25340
25519
  // src/layouts/SideNavLayout/SideNavLayoutContext.tsx
25341
- var import_react141 = require("react");
25342
- var import_jsx_runtime198 = require("react/jsx-runtime");
25520
+ var import_react143 = require("react");
25521
+ var import_jsx_runtime200 = require("react/jsx-runtime");
25343
25522
  var SIDE_NAV_LAYOUT_STATE_STORAGE_KEY = "beam.sideNavLayout.navState";
25344
25523
  function loadStoredNavState() {
25345
25524
  try {
@@ -25361,20 +25540,20 @@ function resolveInitialNavState(defaultNavState) {
25361
25540
  }
25362
25541
  return loadStoredNavState() ?? defaultNavState ?? "expanded";
25363
25542
  }
25364
- var SideNavLayoutContext = (0, import_react141.createContext)(void 0);
25543
+ var SideNavLayoutContext = (0, import_react143.createContext)(void 0);
25365
25544
  function SideNavLayoutProvider(props) {
25366
- const [navState, setNavStateInternal] = (0, import_react141.useState)(
25545
+ const [navState, setNavStateInternal] = (0, import_react143.useState)(
25367
25546
  () => resolveInitialNavState(props.defaultNavState)
25368
25547
  );
25369
25548
  const bp = useBreakpoint();
25370
- const prevMdAndUp = (0, import_react141.useRef)(bp.mdAndUp);
25371
- (0, import_react141.useEffect)(() => {
25549
+ const prevMdAndUp = (0, import_react143.useRef)(bp.mdAndUp);
25550
+ (0, import_react143.useEffect)(() => {
25372
25551
  if (prevMdAndUp.current && !bp.mdAndUp) {
25373
25552
  setNavStateInternal((prev) => prev === "expanded" ? "collapse" : prev);
25374
25553
  }
25375
25554
  prevMdAndUp.current = bp.mdAndUp;
25376
25555
  }, [bp.mdAndUp]);
25377
- const setNavState = (0, import_react141.useCallback)((value2) => {
25556
+ const setNavState = (0, import_react143.useCallback)((value2) => {
25378
25557
  setNavStateInternal((prev) => {
25379
25558
  const next = typeof value2 === "function" ? value2(prev) : value2;
25380
25559
  if (next === "expanded" || next === "collapse") {
@@ -25386,20 +25565,20 @@ function SideNavLayoutProvider(props) {
25386
25565
  return next;
25387
25566
  });
25388
25567
  }, []);
25389
- const value = (0, import_react141.useMemo)(() => ({ navState, setNavState }), [navState, setNavState]);
25390
- return /* @__PURE__ */ (0, import_jsx_runtime198.jsx)(SideNavLayoutContext.Provider, { value, children: props.children });
25568
+ const value = (0, import_react143.useMemo)(() => ({ navState, setNavState }), [navState, setNavState]);
25569
+ return /* @__PURE__ */ (0, import_jsx_runtime200.jsx)(SideNavLayoutContext.Provider, { value, children: props.children });
25391
25570
  }
25392
25571
  function useSideNavLayoutContext() {
25393
- return (0, import_react141.useContext)(SideNavLayoutContext) ?? { navState: "expanded", setNavState: () => {
25572
+ return (0, import_react143.useContext)(SideNavLayoutContext) ?? { navState: "expanded", setNavState: () => {
25394
25573
  } };
25395
25574
  }
25396
25575
  function useHasSideNavLayoutProvider() {
25397
- return (0, import_react141.useContext)(SideNavLayoutContext) !== void 0;
25576
+ return (0, import_react143.useContext)(SideNavLayoutContext) !== void 0;
25398
25577
  }
25399
25578
 
25400
25579
  // src/components/SideNav/SideNav.tsx
25401
- var import_runtime122 = require("@homebound/truss/runtime");
25402
- var import_jsx_runtime199 = require("react/jsx-runtime");
25580
+ var import_runtime124 = require("@homebound/truss/runtime");
25581
+ var import_jsx_runtime201 = require("react/jsx-runtime");
25403
25582
  function SideNav(props) {
25404
25583
  const {
25405
25584
  top,
@@ -25412,8 +25591,8 @@ function SideNav(props) {
25412
25591
  const tid = useTestIds(props, "sideNav");
25413
25592
  const panelCollapsed = navState === "collapse";
25414
25593
  const hideOnCollapse = panelCollapsed && !allItemsHaveIcons(items);
25415
- return /* @__PURE__ */ (0, import_jsx_runtime199.jsxs)("nav", { className: "df fdc h100 fs0", ...tid, children: [
25416
- top !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime199.jsx)("div", { ...(0, import_runtime122.trussProps)({
25594
+ return /* @__PURE__ */ (0, import_jsx_runtime201.jsxs)("nav", { className: "df fdc h100 fs0", ...tid, children: [
25595
+ top !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime201.jsx)("div", { ...(0, import_runtime124.trussProps)({
25417
25596
  flexShrink: "fs0",
25418
25597
  paddingLeft: "pl2",
25419
25598
  paddingRight: "pr2",
@@ -25424,7 +25603,7 @@ function SideNav(props) {
25424
25603
  paddingBottom: "pb4"
25425
25604
  } : {}
25426
25605
  }), ...tid.top, children: top }),
25427
- /* @__PURE__ */ (0, import_jsx_runtime199.jsx)("div", { ...(0, import_runtime122.trussProps)({
25606
+ /* @__PURE__ */ (0, import_jsx_runtime201.jsx)("div", { ...(0, import_runtime124.trussProps)({
25428
25607
  flexGrow: "fg1",
25429
25608
  overflowY: "oya",
25430
25609
  display: "df",
@@ -25436,8 +25615,8 @@ function SideNav(props) {
25436
25615
  ...top === void 0 ? {
25437
25616
  paddingTop: "pt5"
25438
25617
  } : {}
25439
- }), ...tid.items, children: !hideOnCollapse && /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(AppNavItems, { items, panelCollapsed }) }),
25440
- footer !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime199.jsx)("div", { ...(0, import_runtime122.trussProps)({
25618
+ }), ...tid.items, children: !hideOnCollapse && /* @__PURE__ */ (0, import_jsx_runtime201.jsx)(AppNavItems, { items, panelCollapsed }) }),
25619
+ footer !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime201.jsx)("div", { ...(0, import_runtime124.trussProps)({
25441
25620
  flexShrink: "fs0",
25442
25621
  paddingLeft: "pl2",
25443
25622
  paddingRight: "pr2",
@@ -25453,10 +25632,10 @@ function SideNav(props) {
25453
25632
  }
25454
25633
 
25455
25634
  // src/components/Snackbar/useSnackbar.tsx
25456
- var import_react142 = require("react");
25635
+ var import_react144 = require("react");
25457
25636
  function useSnackbar() {
25458
25637
  const { setNotices, setOffset } = useSnackbarContext();
25459
- const onClose = (0, import_react142.useCallback)(
25638
+ const onClose = (0, import_react144.useCallback)(
25460
25639
  (noticeId) => {
25461
25640
  setNotices((prev) => {
25462
25641
  let returnValue = prev;
@@ -25473,7 +25652,7 @@ function useSnackbar() {
25473
25652
  // eslint-disable-next-line react-hooks/exhaustive-deps
25474
25653
  []
25475
25654
  );
25476
- const triggerNotice = (0, import_react142.useCallback)(
25655
+ const triggerNotice = (0, import_react144.useCallback)(
25477
25656
  (props) => {
25478
25657
  const noticeId = props.id ?? `beamSnackbar:${snackbarId++}`;
25479
25658
  let maybeTimeout;
@@ -25502,8 +25681,8 @@ function useSnackbar() {
25502
25681
  },
25503
25682
  [onClose, setNotices]
25504
25683
  );
25505
- const closeNotice = (0, import_react142.useCallback)((id) => onClose(id), [onClose]);
25506
- const useSnackbarOffset = ({ bottom }) => (0, import_react142.useEffect)(() => {
25684
+ const closeNotice = (0, import_react144.useCallback)((id) => onClose(id), [onClose]);
25685
+ const useSnackbarOffset = ({ bottom }) => (0, import_react144.useEffect)(() => {
25507
25686
  setOffset({ bottom });
25508
25687
  return () => setOffset({});
25509
25688
  }, [bottom]);
@@ -25512,12 +25691,12 @@ function useSnackbar() {
25512
25691
  var snackbarId = 1;
25513
25692
 
25514
25693
  // src/components/Stepper.tsx
25515
- var import_react143 = require("react");
25516
- var import_react_aria62 = require("react-aria");
25517
- var import_runtime123 = require("@homebound/truss/runtime");
25518
- var import_jsx_runtime200 = require("react/jsx-runtime");
25519
- var import_react144 = require("react");
25520
- var __maybeInc22 = (inc) => {
25694
+ var import_react145 = require("react");
25695
+ var import_react_aria63 = require("react-aria");
25696
+ var import_runtime125 = require("@homebound/truss/runtime");
25697
+ var import_jsx_runtime202 = require("react/jsx-runtime");
25698
+ var import_react146 = require("react");
25699
+ var __maybeInc23 = (inc) => {
25521
25700
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
25522
25701
  };
25523
25702
  function Stepper(props) {
@@ -25534,8 +25713,8 @@ function Stepper(props) {
25534
25713
  const maxStepWidth = 200;
25535
25714
  const minStepWidth = 100;
25536
25715
  const gap = 8;
25537
- return /* @__PURE__ */ (0, import_jsx_runtime200.jsxs)("nav", { "aria-label": "steps", className: "df fdc w100", ...tid, children: [
25538
- /* @__PURE__ */ (0, import_jsx_runtime200.jsx)("ol", { ...(0, import_runtime123.trussProps)({
25716
+ return /* @__PURE__ */ (0, import_jsx_runtime202.jsxs)("nav", { "aria-label": "steps", className: "df fdc w100", ...tid, children: [
25717
+ /* @__PURE__ */ (0, import_jsx_runtime202.jsx)("ol", { ...(0, import_runtime125.trussProps)({
25539
25718
  padding: "p_0",
25540
25719
  margin: "m_0",
25541
25720
  listStyle: "lis_none",
@@ -25545,7 +25724,7 @@ function Stepper(props) {
25545
25724
  }]
25546
25725
  }), children: steps.map((step) => {
25547
25726
  const isCurrent = currentStep === step.value;
25548
- return /* @__PURE__ */ (0, import_react144.createElement)("li", { ...(0, import_runtime123.trussProps)({
25727
+ return /* @__PURE__ */ (0, import_react146.createElement)("li", { ...(0, import_runtime125.trussProps)({
25549
25728
  display: "df",
25550
25729
  flexGrow: "fg1",
25551
25730
  flexDirection: "fdc",
@@ -25555,9 +25734,9 @@ function Stepper(props) {
25555
25734
  minWidth: ["mw_var", {
25556
25735
  "--minWidth": `${minStepWidth}px`
25557
25736
  }]
25558
- }), key: step.label, "aria-current": isCurrent, ...tid.step }, /* @__PURE__ */ (0, import_jsx_runtime200.jsx)(StepButton, { ...step, onClick: () => onChange(step.value), isCurrent, ...tid.stepButton }));
25737
+ }), key: step.label, "aria-current": isCurrent, ...tid.step }, /* @__PURE__ */ (0, import_jsx_runtime202.jsx)(StepButton, { ...step, onClick: () => onChange(step.value), isCurrent, ...tid.stepButton }));
25559
25738
  }) }),
25560
- /* @__PURE__ */ (0, import_jsx_runtime200.jsx)("div", { ...(0, import_runtime123.trussProps)({
25739
+ /* @__PURE__ */ (0, import_jsx_runtime202.jsx)("div", { ...(0, import_runtime125.trussProps)({
25561
25740
  marginTop: "mt1",
25562
25741
  backgroundColor: ["bgColor_var", {
25563
25742
  "--backgroundColor": "var(--b-field-border-default)"
@@ -25570,14 +25749,14 @@ function Stepper(props) {
25570
25749
  "--minWidth": `${steps.length * minStepWidth + (steps.length - 1) * gap}px`
25571
25750
  }],
25572
25751
  width: "w100"
25573
- }), children: /* @__PURE__ */ (0, import_jsx_runtime200.jsx)("div", { ...(0, import_runtime123.trussProps)({
25752
+ }), children: /* @__PURE__ */ (0, import_jsx_runtime202.jsx)("div", { ...(0, import_runtime125.trussProps)({
25574
25753
  backgroundColor: ["bgColor_var", {
25575
25754
  "--backgroundColor": "var(--b-primary)"
25576
25755
  }],
25577
25756
  transition: "transition_width_200ms",
25578
25757
  height: "h100",
25579
25758
  width: ["w_var", {
25580
- "--width": (0, import_runtime123.maybeCssVar)(__maybeInc22(`${(lastCompletedStep + 1) / steps.length * 100}%`))
25759
+ "--width": (0, import_runtime125.maybeCssVar)(__maybeInc23(`${(lastCompletedStep + 1) / steps.length * 100}%`))
25581
25760
  }]
25582
25761
  }) }) })
25583
25762
  ] });
@@ -25594,26 +25773,26 @@ function StepButton(props) {
25594
25773
  onPress: onClick,
25595
25774
  isDisabled: disabled
25596
25775
  };
25597
- const ref = (0, import_react143.useRef)(null);
25776
+ const ref = (0, import_react145.useRef)(null);
25598
25777
  const {
25599
25778
  buttonProps,
25600
25779
  isPressed
25601
- } = (0, import_react_aria62.useButton)(ariaProps, ref);
25780
+ } = (0, import_react_aria63.useButton)(ariaProps, ref);
25602
25781
  const {
25603
25782
  isFocusVisible,
25604
25783
  focusProps
25605
- } = (0, import_react_aria62.useFocusRing)();
25784
+ } = (0, import_react_aria63.useFocusRing)();
25606
25785
  const {
25607
25786
  hoverProps,
25608
25787
  isHovered
25609
- } = (0, import_react_aria62.useHover)(ariaProps);
25788
+ } = (0, import_react_aria63.useHover)(ariaProps);
25610
25789
  const focusRingStyles2 = state === "error" ? {
25611
25790
  boxShadow: "bshDanger"
25612
25791
  } : {
25613
25792
  boxShadow: "bshFocus"
25614
25793
  };
25615
25794
  const tid = useTestIds(props, "stepButton");
25616
- return /* @__PURE__ */ (0, import_jsx_runtime200.jsxs)("button", { ref, ...buttonProps, ...focusProps, ...hoverProps, ...(0, import_runtime123.trussProps)({
25795
+ return /* @__PURE__ */ (0, import_jsx_runtime202.jsxs)("button", { ref, ...buttonProps, ...focusProps, ...hoverProps, ...(0, import_runtime125.trussProps)({
25617
25796
  ...{
25618
25797
  fontWeight: "fw6",
25619
25798
  fontSize: "fz_14px",
@@ -25674,7 +25853,7 @@ function StepButton(props) {
25674
25853
  } : {},
25675
25854
  ...isFocusVisible ? focusRingStyles2 : {}
25676
25855
  }), ...tid[defaultTestId(label)], children: [
25677
- /* @__PURE__ */ (0, import_jsx_runtime200.jsx)("span", { className: "fs0 mr_4px", children: /* @__PURE__ */ (0, import_jsx_runtime200.jsx)(StepIcon, { state, isHovered, isPressed, isCurrent }) }),
25856
+ /* @__PURE__ */ (0, import_jsx_runtime202.jsx)("span", { className: "fs0 mr_4px", children: /* @__PURE__ */ (0, import_jsx_runtime202.jsx)(StepIcon, { state, isHovered, isPressed, isCurrent }) }),
25678
25857
  label
25679
25858
  ] });
25680
25859
  }
@@ -25685,12 +25864,12 @@ function StepIcon({
25685
25864
  isCurrent = false
25686
25865
  }) {
25687
25866
  if (state === "error") {
25688
- return /* @__PURE__ */ (0, import_jsx_runtime200.jsx)(Icon, { icon: "errorCircle" });
25867
+ return /* @__PURE__ */ (0, import_jsx_runtime202.jsx)(Icon, { icon: "errorCircle" });
25689
25868
  }
25690
25869
  if (state === "complete") {
25691
- return /* @__PURE__ */ (0, import_jsx_runtime200.jsx)(Icon, { icon: "check" });
25870
+ return /* @__PURE__ */ (0, import_jsx_runtime202.jsx)(Icon, { icon: "check" });
25692
25871
  }
25693
- return /* @__PURE__ */ (0, import_jsx_runtime200.jsx)("div", { className: "w_24px h_24px df aic jcc", children: /* @__PURE__ */ (0, import_jsx_runtime200.jsx)("div", { ...(0, import_runtime123.trussProps)({
25872
+ return /* @__PURE__ */ (0, import_jsx_runtime202.jsx)("div", { className: "w_24px h_24px df aic jcc", children: /* @__PURE__ */ (0, import_jsx_runtime202.jsx)("div", { ...(0, import_runtime125.trussProps)({
25694
25873
  width: "w_10px",
25695
25874
  height: "h_10px",
25696
25875
  borderStyle: "bss",
@@ -25704,10 +25883,10 @@ function StepIcon({
25704
25883
  }
25705
25884
 
25706
25885
  // src/components/StepperTabs/StepperTab.tsx
25707
- var import_react145 = require("react");
25708
- var import_react_aria63 = require("react-aria");
25709
- var import_runtime124 = require("@homebound/truss/runtime");
25710
- var import_jsx_runtime201 = require("react/jsx-runtime");
25886
+ var import_react147 = require("react");
25887
+ var import_react_aria64 = require("react-aria");
25888
+ var import_runtime126 = require("@homebound/truss/runtime");
25889
+ var import_jsx_runtime203 = require("react/jsx-runtime");
25711
25890
  function StepperTab(props) {
25712
25891
  const {
25713
25892
  label,
@@ -25723,22 +25902,22 @@ function StepperTab(props) {
25723
25902
  onPress: () => onClick(value),
25724
25903
  isDisabled: disabled || collapsed
25725
25904
  };
25726
- const ref = (0, import_react145.useRef)(null);
25905
+ const ref = (0, import_react147.useRef)(null);
25727
25906
  const {
25728
25907
  buttonProps
25729
- } = (0, import_react_aria63.useButton)(ariaProps, ref);
25908
+ } = (0, import_react_aria64.useButton)(ariaProps, ref);
25730
25909
  const {
25731
25910
  isFocusVisible: isFocusVisibleFromEvents,
25732
25911
  focusProps
25733
- } = (0, import_react_aria63.useFocusRing)();
25912
+ } = (0, import_react_aria64.useFocusRing)();
25734
25913
  const {
25735
25914
  hoverProps,
25736
25915
  isHovered: isHoveredFromEvents
25737
- } = (0, import_react_aria63.useHover)(ariaProps);
25916
+ } = (0, import_react_aria64.useHover)(ariaProps);
25738
25917
  const isHovered = __storyState?.hovered ?? isHoveredFromEvents;
25739
25918
  const isFocusVisible = __storyState?.focusVisible ?? isFocusVisibleFromEvents;
25740
25919
  const tid = useTestIds(props, "stepperTab");
25741
- return /* @__PURE__ */ (0, import_jsx_runtime201.jsxs)("button", { ref, ...(0, import_react_aria63.mergeProps)(buttonProps, focusProps, hoverProps), "aria-label": label, ...(0, import_runtime124.trussProps)({
25920
+ return /* @__PURE__ */ (0, import_jsx_runtime203.jsxs)("button", { ref, ...(0, import_react_aria64.mergeProps)(buttonProps, focusProps, hoverProps), "aria-label": label, ...(0, import_runtime126.trussProps)({
25742
25921
  ...stepperTabStyles.baseStyles,
25743
25922
  ...getStateStyles(active, completed),
25744
25923
  ...isHovered && !disabled ? stepperTabStyles.hoverStyles : {},
@@ -25746,10 +25925,10 @@ function StepperTab(props) {
25746
25925
  ...disabled ? stepperTabStyles.disabledStyles : {},
25747
25926
  ...isFocusVisible ? stepperTabStyles.focusRingStyles : {}
25748
25927
  }), ...tid[defaultTestId(value)], children: [
25749
- !collapsed && /* @__PURE__ */ (0, import_jsx_runtime201.jsxs)(import_jsx_runtime201.Fragment, { children: [
25750
- /* @__PURE__ */ (0, import_jsx_runtime201.jsxs)("span", { className: "dg jic mw0", children: [
25751
- /* @__PURE__ */ (0, import_jsx_runtime201.jsx)("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 }),
25752
- /* @__PURE__ */ (0, import_jsx_runtime201.jsx)("span", { ...(0, import_runtime124.trussProps)({
25928
+ !collapsed && /* @__PURE__ */ (0, import_jsx_runtime203.jsxs)(import_jsx_runtime203.Fragment, { children: [
25929
+ /* @__PURE__ */ (0, import_jsx_runtime203.jsxs)("span", { className: "dg jic mw0", children: [
25930
+ /* @__PURE__ */ (0, import_jsx_runtime203.jsx)("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 }),
25931
+ /* @__PURE__ */ (0, import_jsx_runtime203.jsx)("span", { ...(0, import_runtime126.trussProps)({
25753
25932
  gridArea: "gridArea_1_1",
25754
25933
  overflow: "oh",
25755
25934
  display: "d_negwebkit_box",
@@ -25764,7 +25943,7 @@ function StepperTab(props) {
25764
25943
  } : {}
25765
25944
  }), children: label })
25766
25945
  ] }),
25767
- /* @__PURE__ */ (0, import_jsx_runtime201.jsx)("span", { ...(0, import_runtime124.trussProps)({
25946
+ /* @__PURE__ */ (0, import_jsx_runtime203.jsx)("span", { ...(0, import_runtime126.trussProps)({
25768
25947
  flexShrink: "fs0",
25769
25948
  marginLeft: "ml1",
25770
25949
  transition: "transitionAll",
@@ -25774,10 +25953,10 @@ function StepperTab(props) {
25774
25953
  opacity: "o100",
25775
25954
  transform: "transform_scale_1_translateY_0"
25776
25955
  } : {}
25777
- }), children: /* @__PURE__ */ (0, import_jsx_runtime201.jsx)(Icon, { icon: "check", inc: 2.5, ...tid.check }) })
25956
+ }), children: /* @__PURE__ */ (0, import_jsx_runtime203.jsx)(Icon, { icon: "check", inc: 2.5, ...tid.check }) })
25778
25957
  ] }),
25779
- /* @__PURE__ */ (0, import_jsx_runtime201.jsx)("span", { "aria-hidden": true, ...(0, import_runtime124.trussProps)(getIndicatorStyles(active, completed, disabled)), ...tid.indicator }),
25780
- /* @__PURE__ */ (0, import_jsx_runtime201.jsx)(import_react_aria63.VisuallyHidden, { children: completed ? "Complete" : "Not Complete" })
25958
+ /* @__PURE__ */ (0, import_jsx_runtime203.jsx)("span", { "aria-hidden": true, ...(0, import_runtime126.trussProps)(getIndicatorStyles(active, completed, disabled)), ...tid.indicator }),
25959
+ /* @__PURE__ */ (0, import_jsx_runtime203.jsx)(import_react_aria64.VisuallyHidden, { children: completed ? "Complete" : "Not Complete" })
25781
25960
  ] });
25782
25961
  }
25783
25962
  function getStateStyles(active, completed) {
@@ -25858,9 +26037,9 @@ var stepperTabStyles = {
25858
26037
  };
25859
26038
 
25860
26039
  // src/components/StepperTabs/StepperTabs.tsx
25861
- var import_runtime125 = require("@homebound/truss/runtime");
25862
- var import_jsx_runtime202 = require("react/jsx-runtime");
25863
- var import_react146 = require("react");
26040
+ var import_runtime127 = require("@homebound/truss/runtime");
26041
+ var import_jsx_runtime204 = require("react/jsx-runtime");
26042
+ var import_react148 = require("react");
25864
26043
  function StepperTabs(props) {
25865
26044
  const {
25866
26045
  steps,
@@ -25875,7 +26054,7 @@ function StepperTabs(props) {
25875
26054
  const collapsed = isMobile || !!forceCollapsed;
25876
26055
  const capWidth = steps.length <= 3;
25877
26056
  const currentStepIndex = Math.max(0, steps.findIndex((step) => step.value === currentStep));
25878
- return /* @__PURE__ */ (0, import_jsx_runtime202.jsx)("nav", { "aria-label": "steps", className: "w100", ...tid, children: /* @__PURE__ */ (0, import_jsx_runtime202.jsx)("ol", { ...(0, import_runtime125.trussProps)({
26057
+ return /* @__PURE__ */ (0, import_jsx_runtime204.jsx)("nav", { "aria-label": "steps", className: "w100", ...tid, children: /* @__PURE__ */ (0, import_jsx_runtime204.jsx)("ol", { ...(0, import_runtime127.trussProps)({
25879
26058
  padding: "p_0",
25880
26059
  margin: "m_0",
25881
26060
  listStyle: "lis_none",
@@ -25890,7 +26069,7 @@ function StepperTabs(props) {
25890
26069
  }), children: steps.map((step, idx) => {
25891
26070
  const isCurrent = idx === currentStepIndex;
25892
26071
  const isCompleted = idx < currentStepIndex;
25893
- return /* @__PURE__ */ (0, import_react146.createElement)("li", { ...(0, import_runtime125.trussProps)({
26072
+ return /* @__PURE__ */ (0, import_react148.createElement)("li", { ...(0, import_runtime127.trussProps)({
25894
26073
  display: "df",
25895
26074
  flexGrow: "fg1",
25896
26075
  flexBasis: "fb_0",
@@ -25902,16 +26081,16 @@ function StepperTabs(props) {
25902
26081
  "--maxWidth": `${maxStepWidthPx}px`
25903
26082
  }]
25904
26083
  } : {}
25905
- }), key: step.value, "aria-current": isCurrent, ...tid.step }, /* @__PURE__ */ (0, import_jsx_runtime202.jsx)(StepperTab, { label: step.label, value: step.value, active: isCurrent, completed: isCompleted, disabled: step.disabled, collapsed, onClick: onChange, ...tid.tab }));
26084
+ }), key: step.value, "aria-current": isCurrent, ...tid.step }, /* @__PURE__ */ (0, import_jsx_runtime204.jsx)(StepperTab, { label: step.label, value: step.value, active: isCurrent, completed: isCompleted, disabled: step.disabled, collapsed, onClick: onChange, ...tid.tab }));
25906
26085
  }) }) });
25907
26086
  }
25908
26087
  var maxStepWidthPx = 280;
25909
26088
  var gapPx = 6;
25910
26089
 
25911
26090
  // src/components/SuperDrawer/components/SuperDrawerHeader.tsx
25912
- var import_react_dom7 = require("react-dom");
25913
- var import_runtime126 = require("@homebound/truss/runtime");
25914
- var import_jsx_runtime203 = require("react/jsx-runtime");
26091
+ var import_react_dom8 = require("react-dom");
26092
+ var import_runtime128 = require("@homebound/truss/runtime");
26093
+ var import_jsx_runtime205 = require("react/jsx-runtime");
25915
26094
  function SuperDrawerHeader(props) {
25916
26095
  const {
25917
26096
  hideControls
@@ -25928,20 +26107,20 @@ function SuperDrawerHeader(props) {
25928
26107
  const currentContent = contentStack.current[contentStack.current.length - 1]?.opts;
25929
26108
  const isDetail = currentContent !== firstContent;
25930
26109
  const tid = useTestIds({}, "superDrawerHeader");
25931
- return (0, import_react_dom7.createPortal)(/* @__PURE__ */ (0, import_jsx_runtime203.jsxs)("div", { className: "df aic jcsb gap3", ...tid, children: [
25932
- isStructuredProps(props) ? /* @__PURE__ */ (0, import_jsx_runtime203.jsxs)("div", { className: "df jcsb aic gap2 fg1", children: [
25933
- /* @__PURE__ */ (0, import_jsx_runtime203.jsxs)("div", { className: "fg1 df aic gap2", children: [
25934
- /* @__PURE__ */ (0, import_jsx_runtime203.jsx)("h1", { className: "fw6 fz_30px lh_36px", children: props.title }),
26110
+ return (0, import_react_dom8.createPortal)(/* @__PURE__ */ (0, import_jsx_runtime205.jsxs)("div", { className: "df aic jcsb gap3", ...tid, children: [
26111
+ isStructuredProps(props) ? /* @__PURE__ */ (0, import_jsx_runtime205.jsxs)("div", { className: "df jcsb aic gap2 fg1", children: [
26112
+ /* @__PURE__ */ (0, import_jsx_runtime205.jsxs)("div", { className: "fg1 df aic gap2", children: [
26113
+ /* @__PURE__ */ (0, import_jsx_runtime205.jsx)("h1", { className: "fw6 fz_30px lh_36px", children: props.title }),
25935
26114
  props.left
25936
26115
  ] }),
25937
- props.right && /* @__PURE__ */ (0, import_jsx_runtime203.jsx)("div", { className: "fs0", children: props.right })
25938
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime203.jsx)("div", { className: "fg1", children: props.children }),
25939
- !hideControls && /* @__PURE__ */ (0, import_jsx_runtime203.jsx)("div", { ...(0, import_runtime126.trussProps)({
26116
+ props.right && /* @__PURE__ */ (0, import_jsx_runtime205.jsx)("div", { className: "fs0", children: props.right })
26117
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime205.jsx)("div", { className: "fg1", children: props.children }),
26118
+ !hideControls && /* @__PURE__ */ (0, import_jsx_runtime205.jsx)("div", { ...(0, import_runtime128.trussProps)({
25940
26119
  flexShrink: "fs0",
25941
26120
  ...isDetail ? {
25942
26121
  visibility: "vh"
25943
26122
  } : {}
25944
- }), children: /* @__PURE__ */ (0, import_jsx_runtime203.jsx)(ButtonGroup, { buttons: [{
26123
+ }), children: /* @__PURE__ */ (0, import_jsx_runtime205.jsx)(ButtonGroup, { buttons: [{
25945
26124
  icon: "chevronLeft",
25946
26125
  onClick: () => onPrevClick && onPrevClick(),
25947
26126
  disabled: !onPrevClick
@@ -25957,11 +26136,11 @@ function isStructuredProps(props) {
25957
26136
  }
25958
26137
 
25959
26138
  // src/components/SuperDrawer/SuperDrawerContent.tsx
25960
- var import_framer_motion6 = require("framer-motion");
26139
+ var import_framer_motion7 = require("framer-motion");
25961
26140
 
25962
26141
  // src/components/SuperDrawer/useSuperDrawer.tsx
25963
- var import_react147 = require("react");
25964
- var import_jsx_runtime204 = require("react/jsx-runtime");
26142
+ var import_react149 = require("react");
26143
+ var import_jsx_runtime206 = require("react/jsx-runtime");
25965
26144
  function useSuperDrawer() {
25966
26145
  const {
25967
26146
  drawerContentStack: contentStack,
@@ -25973,7 +26152,7 @@ function useSuperDrawer() {
25973
26152
  function canCloseDrawerDetails(i, doChange) {
25974
26153
  for (const canCloseDrawerDetail of canCloseDetailsChecks.current[i] ?? []) {
25975
26154
  if (!canClose(canCloseDrawerDetail)) {
25976
- openModal({ content: /* @__PURE__ */ (0, import_jsx_runtime204.jsx)(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawerDetail }) });
26155
+ openModal({ content: /* @__PURE__ */ (0, import_jsx_runtime206.jsx)(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawerDetail }) });
25977
26156
  return false;
25978
26157
  }
25979
26158
  }
@@ -25993,14 +26172,14 @@ function useSuperDrawer() {
25993
26172
  for (const canCloseDrawer of canCloseChecks.current) {
25994
26173
  if (!canClose(canCloseDrawer)) {
25995
26174
  openModal({
25996
- content: /* @__PURE__ */ (0, import_jsx_runtime204.jsx)(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawer })
26175
+ content: /* @__PURE__ */ (0, import_jsx_runtime206.jsx)(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawer })
25997
26176
  });
25998
26177
  return;
25999
26178
  }
26000
26179
  }
26001
26180
  doChange();
26002
26181
  }
26003
- const closeActions = (0, import_react147.useMemo)(
26182
+ const closeActions = (0, import_react149.useMemo)(
26004
26183
  () => {
26005
26184
  return {
26006
26185
  /** Attempts to close the drawer. If any checks fail, a confirmation modal will appear */
@@ -26035,7 +26214,7 @@ function useSuperDrawer() {
26035
26214
  // eslint-disable-next-line react-hooks/exhaustive-deps
26036
26215
  [canCloseChecks, canCloseDetailsChecks, contentStack, modalState, openModal]
26037
26216
  );
26038
- const actions = (0, import_react147.useMemo)(
26217
+ const actions = (0, import_react149.useMemo)(
26039
26218
  () => {
26040
26219
  return {
26041
26220
  // TODO: Maybe we should rename to openDrawer as a breaking change (to match openDrawerDetail)
@@ -26088,8 +26267,8 @@ function canClose(canCloseCheck) {
26088
26267
  }
26089
26268
 
26090
26269
  // src/components/SuperDrawer/SuperDrawerContent.tsx
26091
- var import_runtime127 = require("@homebound/truss/runtime");
26092
- var import_jsx_runtime205 = require("react/jsx-runtime");
26270
+ var import_runtime129 = require("@homebound/truss/runtime");
26271
+ var import_jsx_runtime207 = require("react/jsx-runtime");
26093
26272
  var SuperDrawerContent = ({
26094
26273
  children,
26095
26274
  actions
@@ -26109,17 +26288,17 @@ var SuperDrawerContent = ({
26109
26288
  } = firstContent ?? {};
26110
26289
  function wrapWithMotionAndMaybeBack(children2) {
26111
26290
  if (kind === "open") {
26112
- return /* @__PURE__ */ (0, import_jsx_runtime205.jsx)(import_framer_motion6.motion.div, { className: "pt3 pb3 pr3 pl3 fg1 oa", children: children2 }, "content");
26291
+ return /* @__PURE__ */ (0, import_jsx_runtime207.jsx)(import_framer_motion7.motion.div, { className: "pt3 pb3 pr3 pl3 fg1 oa", children: children2 }, "content");
26113
26292
  } else if (kind === "detail") {
26114
- return /* @__PURE__ */ (0, import_jsx_runtime205.jsxs)(import_framer_motion6.motion.div, { className: "pl3 pr3 pt2 pb3 fg1", animate: {
26293
+ return /* @__PURE__ */ (0, import_jsx_runtime207.jsxs)(import_framer_motion7.motion.div, { className: "pl3 pr3 pt2 pb3 fg1", animate: {
26115
26294
  overflow: "auto"
26116
26295
  }, transition: {
26117
26296
  overflow: {
26118
26297
  delay: 0.3
26119
26298
  }
26120
26299
  }, children: [
26121
- /* @__PURE__ */ (0, import_jsx_runtime205.jsx)(Button, { label: "Back", icon: "chevronLeft", variant: "tertiary", onClick: closeDrawerDetail }),
26122
- /* @__PURE__ */ (0, import_jsx_runtime205.jsx)(import_framer_motion6.motion.div, { initial: {
26300
+ /* @__PURE__ */ (0, import_jsx_runtime207.jsx)(Button, { label: "Back", icon: "chevronLeft", variant: "tertiary", onClick: closeDrawerDetail }),
26301
+ /* @__PURE__ */ (0, import_jsx_runtime207.jsx)(import_framer_motion7.motion.div, { initial: {
26123
26302
  x: width2,
26124
26303
  opacity: 0
26125
26304
  }, animate: {
@@ -26137,7 +26316,7 @@ var SuperDrawerContent = ({
26137
26316
  }, className: "pt2", children: children2 })
26138
26317
  ] }, "content");
26139
26318
  } else {
26140
- return /* @__PURE__ */ (0, import_jsx_runtime205.jsx)(import_framer_motion6.motion.div, { ...(0, import_runtime127.mergeProps)(void 0, {
26319
+ return /* @__PURE__ */ (0, import_jsx_runtime207.jsx)(import_framer_motion7.motion.div, { ...(0, import_runtime129.mergeProps)(void 0, {
26141
26320
  overflow: "auto"
26142
26321
  }, {
26143
26322
  paddingTop: "pt3",
@@ -26148,9 +26327,9 @@ var SuperDrawerContent = ({
26148
26327
  }) }, "content");
26149
26328
  }
26150
26329
  }
26151
- return /* @__PURE__ */ (0, import_jsx_runtime205.jsxs)(import_jsx_runtime205.Fragment, { children: [
26330
+ return /* @__PURE__ */ (0, import_jsx_runtime207.jsxs)(import_jsx_runtime207.Fragment, { children: [
26152
26331
  wrapWithMotionAndMaybeBack(children),
26153
- actions && /* @__PURE__ */ (0, import_jsx_runtime205.jsx)("footer", { ...(0, import_runtime127.trussProps)({
26332
+ actions && /* @__PURE__ */ (0, import_jsx_runtime207.jsx)("footer", { ...(0, import_runtime129.trussProps)({
26154
26333
  borderTopStyle: "bts_solid",
26155
26334
  borderTopWidth: "btw_1px",
26156
26335
  borderColor: ["bc_var", {
@@ -26163,7 +26342,7 @@ var SuperDrawerContent = ({
26163
26342
  display: "df",
26164
26343
  alignItems: "aic",
26165
26344
  justifyContent: "jcfe"
26166
- }), children: /* @__PURE__ */ (0, import_jsx_runtime205.jsx)("div", { className: "df gap1", children: actions.map((buttonProps, i) => /* @__PURE__ */ (0, import_jsx_runtime205.jsx)(Button, { ...buttonProps }, i)) }) })
26345
+ }), children: /* @__PURE__ */ (0, import_jsx_runtime207.jsx)("div", { className: "df gap1", children: actions.map((buttonProps, i) => /* @__PURE__ */ (0, import_jsx_runtime207.jsx)(Button, { ...buttonProps }, i)) }) })
26167
26346
  ] });
26168
26347
  };
26169
26348
 
@@ -26207,19 +26386,19 @@ function visit(rows, fn) {
26207
26386
 
26208
26387
  // src/components/Tabs.tsx
26209
26388
  var import_change_case9 = require("change-case");
26210
- var import_react148 = require("react");
26211
- var import_react_aria64 = require("react-aria");
26389
+ var import_react150 = require("react");
26390
+ var import_react_aria65 = require("react-aria");
26212
26391
  var import_react_router = require("react-router");
26213
26392
  var import_react_router_dom8 = require("react-router-dom");
26214
- var import_runtime128 = require("@homebound/truss/runtime");
26215
- var import_jsx_runtime206 = require("react/jsx-runtime");
26393
+ var import_runtime130 = require("@homebound/truss/runtime");
26394
+ var import_jsx_runtime208 = require("react/jsx-runtime");
26216
26395
  function TabsWithContent(props) {
26217
26396
  const styles = hideTabs(props) ? {} : {
26218
26397
  paddingTop: "pt3"
26219
26398
  };
26220
- return /* @__PURE__ */ (0, import_jsx_runtime206.jsxs)(import_jsx_runtime206.Fragment, { children: [
26221
- /* @__PURE__ */ (0, import_jsx_runtime206.jsx)(Tabs, { ...props }),
26222
- /* @__PURE__ */ (0, import_jsx_runtime206.jsx)(TabContent, { ...props, contentXss: {
26399
+ return /* @__PURE__ */ (0, import_jsx_runtime208.jsxs)(import_jsx_runtime208.Fragment, { children: [
26400
+ /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(Tabs, { ...props }),
26401
+ /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(TabContent, { ...props, contentXss: {
26223
26402
  ...styles,
26224
26403
  ...props.contentXss
26225
26404
  } })
@@ -26244,7 +26423,7 @@ function TabContent(props) {
26244
26423
  return (
26245
26424
  // Using FullBleed to allow the tab's bgColor to extend to the edges of the <ScrollableContent /> element.
26246
26425
  // Omit the padding from `FullBleed` if the caller passes in the `paddingLeft/Right` styles.
26247
- /* @__PURE__ */ (0, import_jsx_runtime206.jsx)(FullBleed, { omitPadding: omitFullBleedPadding, children: /* @__PURE__ */ (0, import_jsx_runtime206.jsx)("div", { "aria-labelledby": `${uniqueValue}-tab`, id: `${uniqueValue}-tabPanel`, role: "tabpanel", tabIndex: 0, ...tid.panel, ...(0, import_runtime128.trussProps)(contentXss), children: selectedTab.render() }) })
26426
+ /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(FullBleed, { omitPadding: omitFullBleedPadding, children: /* @__PURE__ */ (0, import_jsx_runtime208.jsx)("div", { "aria-labelledby": `${uniqueValue}-tab`, id: `${uniqueValue}-tabPanel`, role: "tabpanel", tabIndex: 0, ...tid.panel, ...(0, import_runtime130.trussProps)(contentXss), children: selectedTab.render() }) })
26248
26427
  );
26249
26428
  }
26250
26429
  function Tabs(props) {
@@ -26266,11 +26445,11 @@ function Tabs(props) {
26266
26445
  const {
26267
26446
  isFocusVisible,
26268
26447
  focusProps
26269
- } = (0, import_react_aria64.useFocusRing)();
26448
+ } = (0, import_react_aria65.useFocusRing)();
26270
26449
  const tid = useTestIds(others, "tabs");
26271
- const [active, setActive] = (0, import_react148.useState)(selected);
26272
- const ref = (0, import_react148.useRef)(null);
26273
- (0, import_react148.useEffect)(() => setActive(selected), [selected]);
26450
+ const [active, setActive] = (0, import_react150.useState)(selected);
26451
+ const ref = (0, import_react150.useRef)(null);
26452
+ (0, import_react150.useEffect)(() => setActive(selected), [selected]);
26274
26453
  function onKeyUp(e) {
26275
26454
  if (e.key === "ArrowLeft" || e.key === "ArrowRight") {
26276
26455
  const nextTabValue = getNextTabValue(active, e.key, tabs);
@@ -26286,7 +26465,7 @@ function Tabs(props) {
26286
26465
  setActive(selected);
26287
26466
  }
26288
26467
  }
26289
- return /* @__PURE__ */ (0, import_jsx_runtime206.jsxs)("div", { ...(0, import_runtime128.trussProps)({
26468
+ return /* @__PURE__ */ (0, import_jsx_runtime208.jsxs)("div", { ...(0, import_runtime130.trussProps)({
26290
26469
  ...{
26291
26470
  display: "df",
26292
26471
  alignItems: "aic",
@@ -26304,11 +26483,11 @@ function Tabs(props) {
26304
26483
  }
26305
26484
  } : {}
26306
26485
  }), children: [
26307
- !hideTabs(props) && /* @__PURE__ */ (0, import_jsx_runtime206.jsx)("div", { ref, className: "dif gap1 asfe", "aria-label": ariaLabel, role: "tablist", ...tid, children: tabs.map((tab) => {
26486
+ !hideTabs(props) && /* @__PURE__ */ (0, import_jsx_runtime208.jsx)("div", { ref, className: "dif gap1 asfe", "aria-label": ariaLabel, role: "tablist", ...tid, children: tabs.map((tab) => {
26308
26487
  const uniqueValue = uniqueTabValue(tab);
26309
- return /* @__PURE__ */ (0, import_jsx_runtime206.jsx)(TabImpl, { active: active === uniqueValue, focusProps, isFocusVisible, onClick, onKeyUp, onBlur, tab, ...tid[defaultTestId(uniqueValue)] }, uniqueValue);
26488
+ return /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(TabImpl, { active: active === uniqueValue, focusProps, isFocusVisible, onClick, onKeyUp, onBlur, tab, ...tid[defaultTestId(uniqueValue)] }, uniqueValue);
26310
26489
  }) }),
26311
- right && /* @__PURE__ */ (0, import_jsx_runtime206.jsx)("div", { className: "mla df aic gap1 pb1", children: right })
26490
+ right && /* @__PURE__ */ (0, import_jsx_runtime208.jsx)("div", { className: "mla df aic gap1 pb1", children: right })
26312
26491
  ] });
26313
26492
  }
26314
26493
  function TabImpl(props) {
@@ -26332,7 +26511,7 @@ function TabImpl(props) {
26332
26511
  const {
26333
26512
  hoverProps,
26334
26513
  isHovered
26335
- } = (0, import_react_aria64.useHover)({
26514
+ } = (0, import_react_aria65.useHover)({
26336
26515
  isDisabled
26337
26516
  });
26338
26517
  const {
@@ -26342,7 +26521,7 @@ function TabImpl(props) {
26342
26521
  hoverStyles: hoverStyles4,
26343
26522
  disabledStyles: disabledStyles3,
26344
26523
  activeHoverStyles
26345
- } = (0, import_react148.useMemo)(() => getTabStyles(), []);
26524
+ } = (0, import_react150.useMemo)(() => getTabStyles(), []);
26346
26525
  const uniqueValue = uniqueTabValue(tab);
26347
26526
  const tabProps = {
26348
26527
  "aria-controls": `${uniqueValue}-tabPanel`,
@@ -26352,7 +26531,7 @@ function TabImpl(props) {
26352
26531
  role: "tab",
26353
26532
  tabIndex: active ? 0 : -1,
26354
26533
  ...others,
26355
- ...(0, import_runtime128.trussProps)({
26534
+ ...(0, import_runtime130.trussProps)({
26356
26535
  ...baseStyles4,
26357
26536
  ...active && activeStyles3,
26358
26537
  ...isDisabled && disabledStyles3,
@@ -26361,24 +26540,24 @@ function TabImpl(props) {
26361
26540
  ...isFocusVisible && active && focusRingStyles2
26362
26541
  })
26363
26542
  };
26364
- const interactiveProps = (0, import_react_aria64.mergeProps)(focusProps, hoverProps, {
26543
+ const interactiveProps = (0, import_react_aria65.mergeProps)(focusProps, hoverProps, {
26365
26544
  onKeyUp,
26366
26545
  onBlur,
26367
26546
  ...isRouteTab(tab) ? {} : {
26368
26547
  onClick: () => onClick(tab.value)
26369
26548
  }
26370
26549
  });
26371
- const tabLabel = /* @__PURE__ */ (0, import_jsx_runtime206.jsxs)(import_jsx_runtime206.Fragment, { children: [
26550
+ const tabLabel = /* @__PURE__ */ (0, import_jsx_runtime208.jsxs)(import_jsx_runtime208.Fragment, { children: [
26372
26551
  label,
26373
- (icon || endAdornment) && /* @__PURE__ */ (0, import_jsx_runtime206.jsx)("span", { className: "ml1", children: icon ? /* @__PURE__ */ (0, import_jsx_runtime206.jsx)(Icon, { icon }) : endAdornment })
26552
+ (icon || endAdornment) && /* @__PURE__ */ (0, import_jsx_runtime208.jsx)("span", { className: "ml1", children: icon ? /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(Icon, { icon }) : endAdornment })
26374
26553
  ] });
26375
26554
  return isDisabled ? maybeTooltip({
26376
26555
  title: resolveTooltip(disabled),
26377
26556
  placement: "top",
26378
- children: /* @__PURE__ */ (0, import_jsx_runtime206.jsx)("div", { ...tabProps, children: tabLabel })
26379
- }) : isRouteTab(tab) ? /* @__PURE__ */ (0, import_jsx_runtime206.jsx)(import_react_router_dom8.Link, { ...(0, import_react_aria64.mergeProps)(tabProps, interactiveProps, {
26557
+ children: /* @__PURE__ */ (0, import_jsx_runtime208.jsx)("div", { ...tabProps, children: tabLabel })
26558
+ }) : isRouteTab(tab) ? /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(import_react_router_dom8.Link, { ...(0, import_react_aria65.mergeProps)(tabProps, interactiveProps, {
26380
26559
  className: "navLink"
26381
- }), to: tab.href, children: tabLabel }) : /* @__PURE__ */ (0, import_jsx_runtime206.jsx)("button", { ...{
26560
+ }), to: tab.href, children: tabLabel }) : /* @__PURE__ */ (0, import_jsx_runtime208.jsx)("button", { ...{
26382
26561
  ...tabProps,
26383
26562
  ...interactiveProps
26384
26563
  }, children: tabLabel });
@@ -26389,7 +26568,7 @@ function getTabStyles() {
26389
26568
  const borderBottomStyles = {
26390
26569
  borderBottomStyle: "bbs_solid",
26391
26570
  borderBottomWidth: ["borderBottomWidth_var", {
26392
- "--borderBottomWidth": (0, import_runtime128.maybeCssVar)(`${borderBottomWidthPx}px`)
26571
+ "--borderBottomWidth": (0, import_runtime130.maybeCssVar)(`${borderBottomWidthPx}px`)
26393
26572
  }],
26394
26573
  paddingBottom: ["pb_var", {
26395
26574
  "--paddingBottom": `${verticalPaddingPx - borderBottomWidthPx}px`
@@ -26486,7 +26665,7 @@ function hideTabs(props) {
26486
26665
  }
26487
26666
 
26488
26667
  // src/components/TagGroup.tsx
26489
- var import_jsx_runtime207 = require("react/jsx-runtime");
26668
+ var import_jsx_runtime209 = require("react/jsx-runtime");
26490
26669
  function TagGroup(props) {
26491
26670
  const {
26492
26671
  tags,
@@ -26494,30 +26673,30 @@ function TagGroup(props) {
26494
26673
  ...otherProps
26495
26674
  } = props;
26496
26675
  const tid = useTestIds(otherProps, "tagGroup");
26497
- return /* @__PURE__ */ (0, import_jsx_runtime207.jsxs)("div", { ...tid, className: "df aic fww gap1", children: [
26498
- tags.map((tag) => /* @__PURE__ */ (0, import_jsx_runtime207.jsx)(Tag, { ...tag, variant: "secondary" }, tag.text)),
26499
- onEdit && /* @__PURE__ */ (0, import_jsx_runtime207.jsx)("span", { className: "ml1 fw4 fz_14px lh_20px", children: /* @__PURE__ */ (0, import_jsx_runtime207.jsx)(Button, { label: "Edit", variant: "text", onClick: onEdit, ...tid.edit }) })
26676
+ return /* @__PURE__ */ (0, import_jsx_runtime209.jsxs)("div", { ...tid, className: "df aic fww gap1", children: [
26677
+ tags.map((tag) => /* @__PURE__ */ (0, import_jsx_runtime209.jsx)(Tag, { ...tag, variant: "secondary" }, tag.text)),
26678
+ onEdit && /* @__PURE__ */ (0, import_jsx_runtime209.jsx)("span", { className: "ml1 fw4 fz_14px lh_20px", children: /* @__PURE__ */ (0, import_jsx_runtime209.jsx)(Button, { label: "Edit", variant: "text", onClick: onEdit, ...tid.edit }) })
26500
26679
  ] });
26501
26680
  }
26502
26681
 
26503
26682
  // src/components/Toast/useToast.tsx
26504
- var import_react149 = require("react");
26683
+ var import_react151 = require("react");
26505
26684
  function useToast() {
26506
26685
  const { setNotice, clear } = useToastContext();
26507
- const showToast = (0, import_react149.useCallback)((props) => setNotice(props), [setNotice]);
26686
+ const showToast = (0, import_react151.useCallback)((props) => setNotice(props), [setNotice]);
26508
26687
  return { showToast, clear };
26509
26688
  }
26510
26689
 
26511
26690
  // src/layouts/SideNavLayout/SideNavLayout.tsx
26512
- var import_runtime129 = require("@homebound/truss/runtime");
26513
- var import_jsx_runtime208 = require("react/jsx-runtime");
26514
- var __maybeInc23 = (inc) => {
26691
+ var import_runtime131 = require("@homebound/truss/runtime");
26692
+ var import_jsx_runtime210 = require("react/jsx-runtime");
26693
+ var __maybeInc24 = (inc) => {
26515
26694
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
26516
26695
  };
26517
26696
  function SideNavLayout(props) {
26518
26697
  const hasProvider = useHasSideNavLayoutProvider();
26519
- if (hasProvider) return /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(SideNavLayoutContent, { ...props });
26520
- return /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(SideNavLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(SideNavLayoutContent, { ...props }) });
26698
+ if (hasProvider) return /* @__PURE__ */ (0, import_jsx_runtime210.jsx)(SideNavLayoutContent, { ...props });
26699
+ return /* @__PURE__ */ (0, import_jsx_runtime210.jsx)(SideNavLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime210.jsx)(SideNavLayoutContent, { ...props }) });
26521
26700
  }
26522
26701
  function SideNavLayoutContent(props) {
26523
26702
  const {
@@ -26539,7 +26718,7 @@ function SideNavLayoutContent(props) {
26539
26718
  const railOffsetPx = !showRail ? 0 : !bp.mdAndUp || collapsed ? railCollapsedWidthPx : railWidthPx;
26540
26719
  const navTop = bannerAndNavbarChromeTop();
26541
26720
  const railViewportHeight = `calc(var(${beamLayoutViewportHeightVar}, 100vh) - var(${beamEnvironmentBannerLayoutHeightVar}, 0px) - var(${beamNavbarLayoutHeightVar}, 0px))`;
26542
- const rail = showRail && /* @__PURE__ */ (0, import_jsx_runtime208.jsxs)("div", { ...(0, import_runtime129.trussProps)({
26721
+ const rail = showRail && /* @__PURE__ */ (0, import_jsx_runtime210.jsxs)("div", { ...(0, import_runtime131.trussProps)({
26543
26722
  ...{
26544
26723
  display: "df",
26545
26724
  flexDirection: "fdc",
@@ -26563,14 +26742,14 @@ function SideNavLayoutContent(props) {
26563
26742
  position: "sticky",
26564
26743
  left: "left0",
26565
26744
  zIndex: ["z_var", {
26566
- "--zIndex": (0, import_runtime129.maybeCssVar)(zIndices.sideNav)
26745
+ "--zIndex": (0, import_runtime131.maybeCssVar)(zIndices.sideNav)
26567
26746
  }],
26568
26747
  top: ["top_var", {
26569
- "--top": (0, import_runtime129.maybeCssVar)(__maybeInc23(navTop))
26748
+ "--top": (0, import_runtime131.maybeCssVar)(__maybeInc24(navTop))
26570
26749
  }],
26571
26750
  alignSelf: "asfs",
26572
26751
  height: ["h_var", {
26573
- "--height": (0, import_runtime129.maybeCssVar)(__maybeInc23(railViewportHeight))
26752
+ "--height": (0, import_runtime131.maybeCssVar)(__maybeInc24(railViewportHeight))
26574
26753
  }],
26575
26754
  width: ["w_var", {
26576
26755
  "--width": `${collapsed ? railCollapsedWidthPx : railWidthPx}px`
@@ -26580,11 +26759,11 @@ function SideNavLayoutContent(props) {
26580
26759
  position: "fixed",
26581
26760
  left: "left0",
26582
26761
  top: ["top_var", {
26583
- "--top": (0, import_runtime129.maybeCssVar)(__maybeInc23(navTop))
26762
+ "--top": (0, import_runtime131.maybeCssVar)(__maybeInc24(navTop))
26584
26763
  }],
26585
26764
  bottom: "bottom0",
26586
26765
  zIndex: ["z_var", {
26587
- "--zIndex": (0, import_runtime129.maybeCssVar)(zIndices.sideNav)
26766
+ "--zIndex": (0, import_runtime131.maybeCssVar)(zIndices.sideNav)
26588
26767
  }]
26589
26768
  },
26590
26769
  ...collapsed ? {
@@ -26596,18 +26775,18 @@ function SideNavLayoutContent(props) {
26596
26775
  }
26597
26776
  }
26598
26777
  }), ...tid.sideNav, children: [
26599
- showCollapseToggle && /* @__PURE__ */ (0, import_jsx_runtime208.jsx)("div", { className: "absolute right2 top2 z2", children: /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(IconButton, { icon: collapsed ? "menuOpen" : "menuClose", label: collapsed ? "Expand navigation" : "Collapse navigation", onClick: () => setNavState(collapsed ? "expanded" : "collapse"), ...tid.toggle }) }),
26600
- /* @__PURE__ */ (0, import_jsx_runtime208.jsx)("div", { className: "fg1 mh0 df fdc", ...tid.sideNavContent, children: /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(SideNav, { ...sideNav }) })
26778
+ showCollapseToggle && /* @__PURE__ */ (0, import_jsx_runtime210.jsx)("div", { className: "absolute right2 top2 z2", children: /* @__PURE__ */ (0, import_jsx_runtime210.jsx)(IconButton, { icon: collapsed ? "menuOpen" : "menuClose", label: collapsed ? "Expand navigation" : "Collapse navigation", onClick: () => setNavState(collapsed ? "expanded" : "collapse"), ...tid.toggle }) }),
26779
+ /* @__PURE__ */ (0, import_jsx_runtime210.jsx)("div", { className: "fg1 mh0 df fdc", ...tid.sideNavContent, children: /* @__PURE__ */ (0, import_jsx_runtime210.jsx)(SideNav, { ...sideNav }) })
26601
26780
  ] });
26602
- return /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime208.jsxs)("div", { ...(0, import_runtime129.mergeProps)(void 0, {
26781
+ return /* @__PURE__ */ (0, import_jsx_runtime210.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime210.jsxs)("div", { ...(0, import_runtime131.mergeProps)(void 0, {
26603
26782
  [beamSideNavLayoutWidthVar]: `${railOffsetPx}px`
26604
26783
  }, {
26605
26784
  display: "df",
26606
26785
  flexDirection: "fdr",
26607
26786
  width: "w100"
26608
26787
  }), ...tid, children: [
26609
- contrastRail ? /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(ContrastScope, { children: rail }) : rail,
26610
- /* @__PURE__ */ (0, import_jsx_runtime208.jsx)("div", { ...(0, import_runtime129.trussProps)({
26788
+ contrastRail ? /* @__PURE__ */ (0, import_jsx_runtime210.jsx)(ContrastScope, { children: rail }) : rail,
26789
+ /* @__PURE__ */ (0, import_jsx_runtime210.jsx)("div", { ...(0, import_runtime131.trussProps)({
26611
26790
  display: "df",
26612
26791
  flexDirection: "fdc",
26613
26792
  flexGrow: "fg1",
@@ -26623,9 +26802,9 @@ function SideNavLayoutContent(props) {
26623
26802
  }
26624
26803
 
26625
26804
  // src/layouts/EnvironmentBannerLayout/EnvironmentBannerLayout.tsx
26626
- var import_runtime130 = require("@homebound/truss/runtime");
26627
- var import_jsx_runtime209 = require("react/jsx-runtime");
26628
- var __maybeInc24 = (inc) => {
26805
+ var import_runtime132 = require("@homebound/truss/runtime");
26806
+ var import_jsx_runtime211 = require("react/jsx-runtime");
26807
+ var __maybeInc25 = (inc) => {
26629
26808
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
26630
26809
  };
26631
26810
  function EnvironmentBannerLayout(props) {
@@ -26640,35 +26819,35 @@ function EnvironmentBannerLayout(props) {
26640
26819
  [beamEnvironmentBannerLayoutHeightVar]: `${bannerHeightPx}px`
26641
26820
  };
26642
26821
  const innerWidth = `var(${beamLayoutViewportWidthVar}, 100vw)`;
26643
- return /* @__PURE__ */ (0, import_jsx_runtime209.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime209.jsx)(EnvironmentBannerLayoutHeightProvider, { value: bannerHeightPx, children: /* @__PURE__ */ (0, import_jsx_runtime209.jsxs)("div", { ...(0, import_runtime130.mergeProps)(void 0, style, {
26822
+ return /* @__PURE__ */ (0, import_jsx_runtime211.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime211.jsx)(EnvironmentBannerLayoutHeightProvider, { value: bannerHeightPx, children: /* @__PURE__ */ (0, import_jsx_runtime211.jsxs)("div", { ...(0, import_runtime132.mergeProps)(void 0, style, {
26644
26823
  display: "df",
26645
26824
  flexDirection: "fdc",
26646
26825
  width: "wfc",
26647
26826
  minWidth: "mw100"
26648
26827
  }), ...tid, children: [
26649
- showBanner && environmentBanner && /* @__PURE__ */ (0, import_jsx_runtime209.jsx)("div", { ...(0, import_runtime130.mergeProps)(void 0, {
26828
+ showBanner && environmentBanner && /* @__PURE__ */ (0, import_jsx_runtime211.jsx)("div", { ...(0, import_runtime132.mergeProps)(void 0, {
26650
26829
  height: environmentBannerSizePx
26651
26830
  }, {
26652
26831
  flexShrink: "fs0",
26653
26832
  width: "w100"
26654
- }), children: /* @__PURE__ */ (0, import_jsx_runtime209.jsx)("div", { ...(0, import_runtime130.trussProps)({
26833
+ }), children: /* @__PURE__ */ (0, import_jsx_runtime211.jsx)("div", { ...(0, import_runtime132.trussProps)({
26655
26834
  position: "fixed",
26656
26835
  top: "top0",
26657
26836
  left: "left0",
26658
26837
  zIndex: ["z_var", {
26659
- "--zIndex": (0, import_runtime130.maybeCssVar)(zIndices.environmentBanner)
26838
+ "--zIndex": (0, import_runtime132.maybeCssVar)(zIndices.environmentBanner)
26660
26839
  }],
26661
26840
  width: ["w_var", {
26662
- "--width": (0, import_runtime130.maybeCssVar)(__maybeInc24(innerWidth))
26841
+ "--width": (0, import_runtime132.maybeCssVar)(__maybeInc25(innerWidth))
26663
26842
  }]
26664
- }), ...tid.bannerSticky, children: /* @__PURE__ */ (0, import_jsx_runtime209.jsx)(EnvironmentBanner, { ...environmentBanner, ...tid.environmentBanner }) }) }),
26843
+ }), ...tid.bannerSticky, children: /* @__PURE__ */ (0, import_jsx_runtime211.jsx)(EnvironmentBanner, { ...environmentBanner, ...tid.environmentBanner }) }) }),
26665
26844
  children
26666
26845
  ] }) }) });
26667
26846
  }
26668
26847
 
26669
26848
  // src/layouts/FormSectionLayout/FormSectionLayout.tsx
26670
- var import_runtime131 = require("@homebound/truss/runtime");
26671
- var import_jsx_runtime210 = require("react/jsx-runtime");
26849
+ var import_runtime133 = require("@homebound/truss/runtime");
26850
+ var import_jsx_runtime212 = require("react/jsx-runtime");
26672
26851
  function FormSectionLayout(props) {
26673
26852
  const {
26674
26853
  title,
@@ -26678,14 +26857,14 @@ function FormSectionLayout(props) {
26678
26857
  sections
26679
26858
  } = props;
26680
26859
  const tid = useTestIds(props, "formSectionLayout");
26681
- return /* @__PURE__ */ (0, import_jsx_runtime210.jsxs)("div", { className: "df fdc gap8 w100 pt4 maxw_720px mla mra sm_pl2 sm_pr2", ...tid, children: [
26682
- /* @__PURE__ */ (0, import_jsx_runtime210.jsxs)("div", { className: "df fdc gap3", children: [
26683
- /* @__PURE__ */ (0, import_jsx_runtime210.jsxs)("div", { className: "df fdc jcsb gap_12px", children: [
26684
- /* @__PURE__ */ (0, import_jsx_runtime210.jsxs)("div", { className: "df jcsb aic", children: [
26685
- /* @__PURE__ */ (0, import_jsx_runtime210.jsx)("h1", { className: "fw6 fz_20px lh_28px", ...tid.title, children: title }),
26686
- actions && /* @__PURE__ */ (0, import_jsx_runtime210.jsx)("div", { className: "df gap1 fs0", ...tid.actions, children: actions.map((action) => action.kind === "icon" ? /* @__PURE__ */ (0, import_jsx_runtime210.jsx)(IconButton, { ...action, variant: "outline" }, action.icon) : /* @__PURE__ */ (0, import_jsx_runtime210.jsx)(Button, { ...action }, `${action.label}`)) })
26860
+ return /* @__PURE__ */ (0, import_jsx_runtime212.jsxs)("div", { className: "df fdc gap8 w100 pt4 maxw_720px mla mra sm_pl2 sm_pr2", ...tid, children: [
26861
+ /* @__PURE__ */ (0, import_jsx_runtime212.jsxs)("div", { className: "df fdc gap3", children: [
26862
+ /* @__PURE__ */ (0, import_jsx_runtime212.jsxs)("div", { className: "df fdc jcsb gap_12px", children: [
26863
+ /* @__PURE__ */ (0, import_jsx_runtime212.jsxs)("div", { className: "df jcsb aic", children: [
26864
+ /* @__PURE__ */ (0, import_jsx_runtime212.jsx)("h1", { className: "fw6 fz_20px lh_28px", ...tid.title, children: title }),
26865
+ actions && /* @__PURE__ */ (0, import_jsx_runtime212.jsx)("div", { className: "df gap1 fs0", ...tid.actions, children: actions.map((action) => action.kind === "icon" ? /* @__PURE__ */ (0, import_jsx_runtime212.jsx)(IconButton, { ...action, variant: "outline" }, action.icon) : /* @__PURE__ */ (0, import_jsx_runtime212.jsx)(Button, { ...action }, `${action.label}`)) })
26687
26866
  ] }),
26688
- description && /* @__PURE__ */ (0, import_jsx_runtime210.jsx)("div", { ...(0, import_runtime131.trussProps)({
26867
+ description && /* @__PURE__ */ (0, import_jsx_runtime212.jsx)("div", { ...(0, import_runtime133.trussProps)({
26689
26868
  fontWeight: "fw4",
26690
26869
  fontSize: "fz_14px",
26691
26870
  lineHeight: "lh_20px",
@@ -26696,16 +26875,16 @@ function FormSectionLayout(props) {
26696
26875
  ] }),
26697
26876
  initialFields
26698
26877
  ] }),
26699
- sections && /* @__PURE__ */ (0, import_jsx_runtime210.jsx)("div", { className: "df fdc gap8", children: sections.map((section, i) => /* @__PURE__ */ (0, import_jsx_runtime210.jsx)(FormSection, { ...section }, defaultTestId(section.title) || i)) })
26878
+ sections && /* @__PURE__ */ (0, import_jsx_runtime212.jsx)("div", { className: "df fdc gap8", children: sections.map((section, i) => /* @__PURE__ */ (0, import_jsx_runtime212.jsx)(FormSection, { ...section }, defaultTestId(section.title) || i)) })
26700
26879
  ] });
26701
26880
  }
26702
26881
 
26703
26882
  // src/layouts/NavbarLayout/NavbarLayout.tsx
26704
- var import_react153 = require("react");
26705
- var import_runtime132 = require("@homebound/truss/runtime");
26883
+ var import_react155 = require("react");
26884
+ var import_runtime134 = require("@homebound/truss/runtime");
26706
26885
 
26707
26886
  // src/layouts/useAutoHideOnScroll.ts
26708
- var import_react150 = require("react");
26887
+ var import_react152 = require("react");
26709
26888
  var THRESHOLD = 80;
26710
26889
  function getInitialAutoHideState() {
26711
26890
  if (typeof window === "undefined" || window.scrollY <= 0) {
@@ -26715,15 +26894,15 @@ function getInitialAutoHideState() {
26715
26894
  }
26716
26895
  function useAutoHideOnScroll(spacerRef, enabled, getTopOffset) {
26717
26896
  const initial = getInitialAutoHideState();
26718
- const [state, setState] = (0, import_react150.useState)(initial.state);
26719
- const stateRef = (0, import_react150.useRef)(initial.state);
26720
- const [atTop, setAtTop] = (0, import_react150.useState)(initial.atTop);
26721
- const atTopRef = (0, import_react150.useRef)(initial.atTop);
26722
- const getTopOffsetRef = (0, import_react150.useRef)(getTopOffset);
26897
+ const [state, setState] = (0, import_react152.useState)(initial.state);
26898
+ const stateRef = (0, import_react152.useRef)(initial.state);
26899
+ const [atTop, setAtTop] = (0, import_react152.useState)(initial.atTop);
26900
+ const atTopRef = (0, import_react152.useRef)(initial.atTop);
26901
+ const getTopOffsetRef = (0, import_react152.useRef)(getTopOffset);
26723
26902
  getTopOffsetRef.current = getTopOffset;
26724
- const lastScrollY = (0, import_react150.useRef)(Number.POSITIVE_INFINITY);
26725
- const lastScrollHeight = (0, import_react150.useRef)(0);
26726
- (0, import_react150.useLayoutEffect)(() => {
26903
+ const lastScrollY = (0, import_react152.useRef)(Number.POSITIVE_INFINITY);
26904
+ const lastScrollHeight = (0, import_react152.useRef)(0);
26905
+ (0, import_react152.useLayoutEffect)(() => {
26727
26906
  if (!enabled) {
26728
26907
  stateRef.current = "static";
26729
26908
  atTopRef.current = true;
@@ -26795,36 +26974,36 @@ function useAutoHideOnScroll(spacerRef, enabled, getTopOffset) {
26795
26974
  }
26796
26975
 
26797
26976
  // src/layouts/useMeasuredHeight.ts
26798
- var import_utils176 = require("@react-aria/utils");
26799
- var import_react151 = require("react");
26977
+ var import_utils178 = require("@react-aria/utils");
26978
+ var import_react153 = require("react");
26800
26979
  function useMeasuredHeight(ref, enabled) {
26801
- const [height, setHeight] = (0, import_react151.useState)(0);
26802
- const syncElementHeight = (0, import_react151.useCallback)(() => {
26980
+ const [height, setHeight] = (0, import_react153.useState)(0);
26981
+ const syncElementHeight = (0, import_react153.useCallback)(() => {
26803
26982
  const el = ref.current;
26804
26983
  const next = el ? Math.round(el.getBoundingClientRect().height) : 0;
26805
26984
  setHeight((prev) => prev === next ? prev : next);
26806
26985
  }, [ref]);
26807
- (0, import_utils176.useResizeObserver)({ ref, onResize: syncElementHeight });
26808
- (0, import_react151.useLayoutEffect)(() => {
26986
+ (0, import_utils178.useResizeObserver)({ ref, onResize: syncElementHeight });
26987
+ (0, import_react153.useLayoutEffect)(() => {
26809
26988
  syncElementHeight();
26810
26989
  }, [enabled, syncElementHeight]);
26811
26990
  return height;
26812
26991
  }
26813
26992
 
26814
26993
  // src/layouts/NavbarLayout/NavbarLayoutHeightContext.tsx
26815
- var import_react152 = require("react");
26816
- var import_jsx_runtime211 = require("react/jsx-runtime");
26817
- var NavbarLayoutHeightContext = (0, import_react152.createContext)(0);
26994
+ var import_react154 = require("react");
26995
+ var import_jsx_runtime213 = require("react/jsx-runtime");
26996
+ var NavbarLayoutHeightContext = (0, import_react154.createContext)(0);
26818
26997
  function NavbarLayoutHeightProvider({ value, children }) {
26819
- return /* @__PURE__ */ (0, import_jsx_runtime211.jsx)(NavbarLayoutHeightContext.Provider, { value, children });
26998
+ return /* @__PURE__ */ (0, import_jsx_runtime213.jsx)(NavbarLayoutHeightContext.Provider, { value, children });
26820
26999
  }
26821
27000
  function useNavbarLayoutHeight() {
26822
- return (0, import_react152.useContext)(NavbarLayoutHeightContext);
27001
+ return (0, import_react154.useContext)(NavbarLayoutHeightContext);
26823
27002
  }
26824
27003
 
26825
27004
  // src/layouts/NavbarLayout/NavbarLayout.tsx
26826
- var import_jsx_runtime212 = require("react/jsx-runtime");
26827
- var __maybeInc25 = (inc) => {
27005
+ var import_jsx_runtime214 = require("react/jsx-runtime");
27006
+ var __maybeInc26 = (inc) => {
26828
27007
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
26829
27008
  };
26830
27009
  function NavbarLayout(props) {
@@ -26833,8 +27012,8 @@ function NavbarLayout(props) {
26833
27012
  children
26834
27013
  } = props;
26835
27014
  const tid = useTestIds(props, "navbarLayout");
26836
- const navMetricsRef = (0, import_react153.useRef)(null);
26837
- const spacerRef = (0, import_react153.useRef)(null);
27015
+ const navMetricsRef = (0, import_react155.useRef)(null);
27016
+ const spacerRef = (0, import_react155.useRef)(null);
26838
27017
  const navHeight = useMeasuredHeight(navMetricsRef, true);
26839
27018
  const {
26840
27019
  state: autoHideState,
@@ -26852,10 +27031,10 @@ function NavbarLayout(props) {
26852
27031
  position: "sticky",
26853
27032
  left: "left0",
26854
27033
  zIndex: ["z_var", {
26855
- "--zIndex": (0, import_runtime132.maybeCssVar)(zIndices.navbar)
27034
+ "--zIndex": (0, import_runtime134.maybeCssVar)(zIndices.navbar)
26856
27035
  }],
26857
27036
  width: ["w_var", {
26858
- "--width": (0, import_runtime132.maybeCssVar)(__maybeInc25(innerWidth))
27037
+ "--width": (0, import_runtime134.maybeCssVar)(__maybeInc26(innerWidth))
26859
27038
  }]
26860
27039
  }
26861
27040
  ) : (
@@ -26864,10 +27043,10 @@ function NavbarLayout(props) {
26864
27043
  position: "fixed",
26865
27044
  left: "left0",
26866
27045
  zIndex: ["z_var", {
26867
- "--zIndex": (0, import_runtime132.maybeCssVar)(zIndices.navbar)
27046
+ "--zIndex": (0, import_runtime134.maybeCssVar)(zIndices.navbar)
26868
27047
  }],
26869
27048
  width: ["w_var", {
26870
- "--width": (0, import_runtime132.maybeCssVar)(__maybeInc25(innerWidth))
27049
+ "--width": (0, import_runtime134.maybeCssVar)(__maybeInc26(innerWidth))
26871
27050
  }],
26872
27051
  transition: "transitionTop"
26873
27052
  }
@@ -26876,29 +27055,29 @@ function NavbarLayout(props) {
26876
27055
  const innerStyle = autoHideState !== "static" ? {
26877
27056
  top: autoHideState === "revealed" ? bannerTop : `calc(${bannerTop} - ${navHeight}px)`
26878
27057
  } : void 0;
26879
- const navbarEl = (0, import_react153.useMemo)(() => /* @__PURE__ */ (0, import_jsx_runtime212.jsx)(Navbar, { ...navbar }), [navbar]);
26880
- return /* @__PURE__ */ (0, import_jsx_runtime212.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime212.jsx)(NavbarLayoutHeightProvider, { value: navbarOffsetPx, children: /* @__PURE__ */ (0, import_jsx_runtime212.jsxs)("div", { ...(0, import_runtime132.mergeProps)(void 0, cssVars, {
27058
+ const navbarEl = (0, import_react155.useMemo)(() => /* @__PURE__ */ (0, import_jsx_runtime214.jsx)(Navbar, { ...navbar }), [navbar]);
27059
+ return /* @__PURE__ */ (0, import_jsx_runtime214.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime214.jsx)(NavbarLayoutHeightProvider, { value: navbarOffsetPx, children: /* @__PURE__ */ (0, import_jsx_runtime214.jsxs)("div", { ...(0, import_runtime134.mergeProps)(void 0, cssVars, {
26881
27060
  display: "df",
26882
27061
  flexDirection: "fdc",
26883
27062
  width: "wfc",
26884
27063
  minWidth: "mw100"
26885
27064
  }), ...tid, children: [
26886
- /* @__PURE__ */ (0, import_jsx_runtime212.jsx)("div", { ref: spacerRef, ...(0, import_runtime132.mergeProps)(void 0, {
27065
+ /* @__PURE__ */ (0, import_jsx_runtime214.jsx)("div", { ref: spacerRef, ...(0, import_runtime134.mergeProps)(void 0, {
26887
27066
  height: navHeight
26888
27067
  }, {
26889
27068
  flexShrink: "fs0",
26890
27069
  width: "w100"
26891
- }), children: /* @__PURE__ */ (0, import_jsx_runtime212.jsx)("div", { ref: navMetricsRef, ...(0, import_runtime132.mergeProps)(void 0, innerStyle, innerCss), ...tid.navbar, children: navbarEl }) }),
26892
- /* @__PURE__ */ (0, import_jsx_runtime212.jsx)("div", { className: "df fdc mh0 mw100 w100", ...tid.body, children })
27070
+ }), children: /* @__PURE__ */ (0, import_jsx_runtime214.jsx)("div", { ref: navMetricsRef, ...(0, import_runtime134.mergeProps)(void 0, innerStyle, innerCss), ...tid.navbar, children: navbarEl }) }),
27071
+ /* @__PURE__ */ (0, import_jsx_runtime214.jsx)("div", { className: "df fdc mh0 mw100 w100", ...tid.body, children })
26893
27072
  ] }) }) });
26894
27073
  }
26895
27074
 
26896
27075
  // src/layouts/PageHeaderLayout/PageHeaderLayout.tsx
26897
- var import_react154 = require("react");
27076
+ var import_react156 = require("react");
26898
27077
 
26899
27078
  // src/components/Headers/BaseHeader.tsx
26900
- var import_runtime133 = require("@homebound/truss/runtime");
26901
- var import_jsx_runtime213 = require("react/jsx-runtime");
27079
+ var import_runtime135 = require("@homebound/truss/runtime");
27080
+ var import_jsx_runtime215 = require("react/jsx-runtime");
26902
27081
  function BaseHeader(props) {
26903
27082
  const {
26904
27083
  title,
@@ -26910,7 +27089,7 @@ function BaseHeader(props) {
26910
27089
  } = props;
26911
27090
  const tid = useTestIds(otherProps, "header");
26912
27091
  useDocumentTitle(title, documentTitleSuffix);
26913
- return /* @__PURE__ */ (0, import_jsx_runtime213.jsxs)("header", { ...tid, ...(0, import_runtime133.trussProps)({
27092
+ return /* @__PURE__ */ (0, import_jsx_runtime215.jsxs)("header", { ...tid, ...(0, import_runtime135.trussProps)({
26914
27093
  display: "df",
26915
27094
  flexDirection: "fdc",
26916
27095
  paddingTop: "pt3",
@@ -26924,7 +27103,7 @@ function BaseHeader(props) {
26924
27103
  "--backgroundColor": "var(--b-surface)"
26925
27104
  }]
26926
27105
  }), children: [
26927
- /* @__PURE__ */ (0, import_jsx_runtime213.jsxs)("div", { ...(0, import_runtime133.trussProps)({
27106
+ /* @__PURE__ */ (0, import_jsx_runtime215.jsxs)("div", { ...(0, import_runtime135.trussProps)({
26928
27107
  ...{
26929
27108
  display: "df",
26930
27109
  justifyContent: "jcsb",
@@ -26938,9 +27117,9 @@ function BaseHeader(props) {
26938
27117
  } : {}
26939
27118
  }
26940
27119
  }), children: [
26941
- /* @__PURE__ */ (0, import_jsx_runtime213.jsxs)("div", { className: "mw0", children: [
26942
- breadcrumbs && /* @__PURE__ */ (0, import_jsx_runtime213.jsx)(Breadcrumbs, { ...breadcrumbs }),
26943
- /* @__PURE__ */ (0, import_jsx_runtime213.jsx)("h1", { ...tid.title, ...(0, import_runtime133.trussProps)({
27120
+ /* @__PURE__ */ (0, import_jsx_runtime215.jsxs)("div", { className: "mw0", children: [
27121
+ breadcrumbs && /* @__PURE__ */ (0, import_jsx_runtime215.jsx)(Breadcrumbs, { ...breadcrumbs }),
27122
+ /* @__PURE__ */ (0, import_jsx_runtime215.jsx)("h1", { ...tid.title, ...(0, import_runtime135.trussProps)({
26944
27123
  fontWeight: "fw6",
26945
27124
  fontSize: "fz_20px",
26946
27125
  lineHeight: "lh_28px",
@@ -26949,22 +27128,22 @@ function BaseHeader(props) {
26949
27128
  }]
26950
27129
  }), children: title })
26951
27130
  ] }),
26952
- /* @__PURE__ */ (0, import_jsx_runtime213.jsx)("div", { className: "fs0", children: rightSlot })
27131
+ /* @__PURE__ */ (0, import_jsx_runtime215.jsx)("div", { className: "fs0", children: rightSlot })
26953
27132
  ] }),
26954
27133
  bottomSlot
26955
27134
  ] });
26956
27135
  }
26957
27136
 
26958
27137
  // src/components/Headers/PageHeader.tsx
26959
- var import_runtime134 = require("@homebound/truss/runtime");
26960
- var import_jsx_runtime214 = require("react/jsx-runtime");
27138
+ var import_runtime136 = require("@homebound/truss/runtime");
27139
+ var import_jsx_runtime216 = require("react/jsx-runtime");
26961
27140
  function PageHeader2(props) {
26962
27141
  const {
26963
27142
  tabs,
26964
27143
  ...otherProps
26965
27144
  } = props;
26966
27145
  const tid = useTestIds(otherProps, "header");
26967
- return /* @__PURE__ */ (0, import_jsx_runtime214.jsx)(BaseHeader, { ...otherProps, bottomSlot: tabs && /* @__PURE__ */ (0, import_jsx_runtime214.jsx)("div", { ...(0, import_runtime134.trussProps)(pageContentPaddingX), children: /* @__PURE__ */ (0, import_jsx_runtime214.jsx)(Tabs, { ...tabs, ...tid.tabs }) }) });
27146
+ return /* @__PURE__ */ (0, import_jsx_runtime216.jsx)(BaseHeader, { ...otherProps, bottomSlot: tabs && /* @__PURE__ */ (0, import_jsx_runtime216.jsx)("div", { ...(0, import_runtime136.trussProps)(pageContentPaddingX), children: /* @__PURE__ */ (0, import_jsx_runtime216.jsx)(Tabs, { ...tabs, ...tid.tabs }) }) });
26968
27147
  }
26969
27148
 
26970
27149
  // src/layouts/useBannerAndNavbarHeight.ts
@@ -26973,9 +27152,9 @@ function useBannerAndNavbarHeight() {
26973
27152
  }
26974
27153
 
26975
27154
  // src/layouts/PageHeaderLayout/PageHeaderLayout.tsx
26976
- var import_runtime135 = require("@homebound/truss/runtime");
26977
- var import_jsx_runtime215 = require("react/jsx-runtime");
26978
- var __maybeInc26 = (inc) => {
27155
+ var import_runtime137 = require("@homebound/truss/runtime");
27156
+ var import_jsx_runtime217 = require("react/jsx-runtime");
27157
+ var __maybeInc27 = (inc) => {
26979
27158
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
26980
27159
  };
26981
27160
  function PageHeaderLayout(props) {
@@ -26985,11 +27164,11 @@ function PageHeaderLayout(props) {
26985
27164
  } = props;
26986
27165
  const tid = useTestIds(props, "pageHeaderLayout");
26987
27166
  const bannerAndNavbarHeight = useBannerAndNavbarHeight();
26988
- const bannerAndNavbarHeightRef = (0, import_react154.useRef)(bannerAndNavbarHeight);
27167
+ const bannerAndNavbarHeightRef = (0, import_react156.useRef)(bannerAndNavbarHeight);
26989
27168
  bannerAndNavbarHeightRef.current = bannerAndNavbarHeight;
26990
- const getBannerAndNavbarHeight = (0, import_react154.useCallback)(() => bannerAndNavbarHeightRef.current, []);
26991
- const headerMetricsRef = (0, import_react154.useRef)(null);
26992
- const spacerRef = (0, import_react154.useRef)(null);
27169
+ const getBannerAndNavbarHeight = (0, import_react156.useCallback)(() => bannerAndNavbarHeightRef.current, []);
27170
+ const headerMetricsRef = (0, import_react156.useRef)(null);
27171
+ const spacerRef = (0, import_react156.useRef)(null);
26993
27172
  const headerHeight = useMeasuredHeight(headerMetricsRef, true);
26994
27173
  const {
26995
27174
  state: autoHideState,
@@ -27005,71 +27184,71 @@ function PageHeaderLayout(props) {
27005
27184
  const innerCss = autoHideState === "static" ? {
27006
27185
  position: "sticky",
27007
27186
  left: ["left_var", {
27008
- "--left": (0, import_runtime135.maybeCssVar)(__maybeInc26(headerLeft))
27187
+ "--left": (0, import_runtime137.maybeCssVar)(__maybeInc27(headerLeft))
27009
27188
  }],
27010
27189
  width: ["w_var", {
27011
- "--width": (0, import_runtime135.maybeCssVar)(__maybeInc26(headerWidth))
27190
+ "--width": (0, import_runtime137.maybeCssVar)(__maybeInc27(headerWidth))
27012
27191
  }],
27013
27192
  zIndex: ["z_var", {
27014
- "--zIndex": (0, import_runtime135.maybeCssVar)(zIndices.pageStickyHeader)
27193
+ "--zIndex": (0, import_runtime137.maybeCssVar)(zIndices.pageStickyHeader)
27015
27194
  }]
27016
27195
  } : {
27017
27196
  position: "fixed",
27018
27197
  left: ["left_var", {
27019
- "--left": (0, import_runtime135.maybeCssVar)(__maybeInc26(headerLeft))
27198
+ "--left": (0, import_runtime137.maybeCssVar)(__maybeInc27(headerLeft))
27020
27199
  }],
27021
27200
  width: ["w_var", {
27022
- "--width": (0, import_runtime135.maybeCssVar)(__maybeInc26(headerWidth))
27201
+ "--width": (0, import_runtime137.maybeCssVar)(__maybeInc27(headerWidth))
27023
27202
  }],
27024
27203
  zIndex: ["z_var", {
27025
- "--zIndex": (0, import_runtime135.maybeCssVar)(zIndices.pageStickyHeader)
27204
+ "--zIndex": (0, import_runtime137.maybeCssVar)(zIndices.pageStickyHeader)
27026
27205
  }],
27027
27206
  transition: "transitionTop"
27028
27207
  };
27029
27208
  const innerStyle = autoHideState !== "static" ? {
27030
27209
  top: autoHideState === "revealed" ? outerTop : `calc(${outerTop} - ${headerHeight}px)`
27031
27210
  } : void 0;
27032
- const pageHeaderEl = (0, import_react154.useMemo)(() => /* @__PURE__ */ (0, import_jsx_runtime215.jsx)(PageHeader2, { ...pageHeader }), [pageHeader]);
27033
- return /* @__PURE__ */ (0, import_jsx_runtime215.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime215.jsxs)("div", { ...(0, import_runtime135.mergeProps)(void 0, cssVars, {
27211
+ const pageHeaderEl = (0, import_react156.useMemo)(() => /* @__PURE__ */ (0, import_jsx_runtime217.jsx)(PageHeader2, { ...pageHeader }), [pageHeader]);
27212
+ return /* @__PURE__ */ (0, import_jsx_runtime217.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime217.jsxs)("div", { ...(0, import_runtime137.mergeProps)(void 0, cssVars, {
27034
27213
  display: "df",
27035
27214
  flexDirection: "fdc",
27036
27215
  width: "w100"
27037
27216
  }), ...tid, children: [
27038
- /* @__PURE__ */ (0, import_jsx_runtime215.jsx)("div", { ref: spacerRef, ...(0, import_runtime135.mergeProps)(void 0, {
27217
+ /* @__PURE__ */ (0, import_jsx_runtime217.jsx)("div", { ref: spacerRef, ...(0, import_runtime137.mergeProps)(void 0, {
27039
27218
  height: headerHeight
27040
27219
  }, {
27041
27220
  flexShrink: "fs0",
27042
27221
  width: "w100"
27043
- }), children: /* @__PURE__ */ (0, import_jsx_runtime215.jsx)("div", { ref: headerMetricsRef, ...(0, import_runtime135.mergeProps)(void 0, innerStyle, innerCss), ...tid.pageHeader, children: pageHeaderEl }) }),
27044
- /* @__PURE__ */ (0, import_jsx_runtime215.jsx)("div", { className: "df fdc fg1 mh0 w100", ...tid.body, children })
27222
+ }), children: /* @__PURE__ */ (0, import_jsx_runtime217.jsx)("div", { ref: headerMetricsRef, ...(0, import_runtime137.mergeProps)(void 0, innerStyle, innerCss), ...tid.pageHeader, children: pageHeaderEl }) }),
27223
+ /* @__PURE__ */ (0, import_jsx_runtime217.jsx)("div", { className: "df fdc fg1 mh0 w100", ...tid.body, children })
27045
27224
  ] }) });
27046
27225
  }
27047
27226
 
27048
27227
  // src/layouts/WorkflowLayout/WorkflowLayout.tsx
27049
- var import_react157 = require("react");
27228
+ var import_react159 = require("react");
27050
27229
 
27051
27230
  // src/components/Headers/WorkflowHeader.tsx
27052
- var import_jsx_runtime216 = require("react/jsx-runtime");
27231
+ var import_jsx_runtime218 = require("react/jsx-runtime");
27053
27232
  function WorkflowHeader(props) {
27054
27233
  const { stepperTabs, ...otherProps } = props;
27055
27234
  const tid = useTestIds(otherProps, "header");
27056
- return /* @__PURE__ */ (0, import_jsx_runtime216.jsx)(BaseHeader, { ...otherProps, bottomSlot: /* @__PURE__ */ (0, import_jsx_runtime216.jsx)(StepperTabs, { ...stepperTabs, ...tid.stepperTabs }) });
27235
+ return /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(BaseHeader, { ...otherProps, bottomSlot: /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(StepperTabs, { ...stepperTabs, ...tid.stepperTabs }) });
27057
27236
  }
27058
27237
 
27059
27238
  // src/layouts/useScrollCollapse.ts
27060
- var import_react155 = require("react");
27239
+ var import_react157 = require("react");
27061
27240
  function useScrollCollapse(enabled, restingOffset) {
27062
- const [collapsed, setCollapsed] = (0, import_react155.useState)(() => typeof window !== "undefined" && window.scrollY > 0);
27063
- const collapsedRef = (0, import_react155.useRef)(collapsed);
27241
+ const [collapsed, setCollapsed] = (0, import_react157.useState)(() => typeof window !== "undefined" && window.scrollY > 0);
27242
+ const collapsedRef = (0, import_react157.useRef)(collapsed);
27064
27243
  collapsedRef.current = collapsed;
27065
- const restingOffsetRef = (0, import_react155.useRef)(restingOffset);
27244
+ const restingOffsetRef = (0, import_react157.useRef)(restingOffset);
27066
27245
  restingOffsetRef.current = restingOffset;
27067
- const lastScrollYRef = (0, import_react155.useRef)(Number.POSITIVE_INFINITY);
27068
- const lastScrollHeightRef = (0, import_react155.useRef)(0);
27069
- (0, import_react155.useLayoutEffect)(() => {
27246
+ const lastScrollYRef = (0, import_react157.useRef)(Number.POSITIVE_INFINITY);
27247
+ const lastScrollHeightRef = (0, import_react157.useRef)(0);
27248
+ (0, import_react157.useLayoutEffect)(() => {
27070
27249
  lastScrollHeightRef.current = document.documentElement.scrollHeight;
27071
27250
  }, [restingOffset]);
27072
- (0, import_react155.useLayoutEffect)(() => {
27251
+ (0, import_react157.useLayoutEffect)(() => {
27073
27252
  if (!enabled) return;
27074
27253
  const commit = (next) => {
27075
27254
  if (next !== collapsedRef.current) {
@@ -27108,15 +27287,15 @@ function useScrollCollapse(enabled, restingOffset) {
27108
27287
  }
27109
27288
 
27110
27289
  // src/layouts/WorkflowLayout/useUnsavedChangesGuard.tsx
27111
- var import_react156 = require("react");
27290
+ var import_react158 = require("react");
27112
27291
  var import_react_router_dom9 = require("react-router-dom");
27113
- var import_jsx_runtime217 = require("react/jsx-runtime");
27292
+ var import_jsx_runtime219 = require("react/jsx-runtime");
27114
27293
  function useUnsavedChangesGuard(options) {
27115
27294
  const { isDirty, onCancel } = options;
27116
27295
  const { openModal } = useModal();
27117
- const isDirtyRef = (0, import_react156.useRef)(isDirty);
27296
+ const isDirtyRef = (0, import_react158.useRef)(isDirty);
27118
27297
  isDirtyRef.current = isDirty;
27119
- (0, import_react156.useEffect)(() => {
27298
+ (0, import_react158.useEffect)(() => {
27120
27299
  const onBeforeUnload = (e) => {
27121
27300
  if (isDirtyRef.current?.()) {
27122
27301
  e.preventDefault();
@@ -27133,7 +27312,7 @@ function useUnsavedChangesGuard(options) {
27133
27312
  }
27134
27313
  openModal({
27135
27314
  allowClosing: false,
27136
- content: /* @__PURE__ */ (0, import_jsx_runtime217.jsx)(ConfirmCloseModal, { onClose: () => onCancel(e) })
27315
+ content: /* @__PURE__ */ (0, import_jsx_runtime219.jsx)(ConfirmCloseModal, { onClose: () => onCancel(e) })
27137
27316
  });
27138
27317
  };
27139
27318
  const navigationBlocker = blocker.state === "blocked" ? { proceed: () => blocker.proceed?.(), cancelNavigation: () => blocker.reset?.() } : void 0;
@@ -27142,10 +27321,10 @@ function useUnsavedChangesGuard(options) {
27142
27321
  function UnsavedChangesNavigationModal(props) {
27143
27322
  const { proceed, cancelNavigation } = props;
27144
27323
  const { openModal, closeModal } = useModal();
27145
- (0, import_react156.useEffect)(() => {
27324
+ (0, import_react158.useEffect)(() => {
27146
27325
  openModal({
27147
27326
  allowClosing: false,
27148
- content: /* @__PURE__ */ (0, import_jsx_runtime217.jsx)(ConfirmCloseModal, { title: "Leave page?", onClose: proceed, onContinue: cancelNavigation })
27327
+ content: /* @__PURE__ */ (0, import_jsx_runtime219.jsx)(ConfirmCloseModal, { title: "Leave page?", onClose: proceed, onContinue: cancelNavigation })
27149
27328
  });
27150
27329
  return () => closeModal();
27151
27330
  }, []);
@@ -27153,7 +27332,7 @@ function UnsavedChangesNavigationModal(props) {
27153
27332
  }
27154
27333
 
27155
27334
  // src/layouts/WorkflowLayout/WorkflowActions.tsx
27156
- var import_jsx_runtime218 = require("react/jsx-runtime");
27335
+ var import_jsx_runtime220 = require("react/jsx-runtime");
27157
27336
  function WorkflowActions(props) {
27158
27337
  const {
27159
27338
  isFirstStep,
@@ -27167,20 +27346,20 @@ function WorkflowActions(props) {
27167
27346
  onContinue,
27168
27347
  primaryDisabled
27169
27348
  } = props;
27170
- return /* @__PURE__ */ (0, import_jsx_runtime218.jsxs)("div", { className: "df aic jcsb sm_w100", children: [
27171
- /* @__PURE__ */ (0, import_jsx_runtime218.jsx)("div", { className: "df aic", children: !isFirstStep && isMobile && /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(IconButton, { icon: "arrowBack", label: "Back", onClick: onBack }) }),
27172
- /* @__PURE__ */ (0, import_jsx_runtime218.jsxs)("div", { className: "df aic gap1", children: [
27173
- /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(Button, { label: "Cancel", variant: "quaternary", onClick: onCancel }),
27174
- onSaveAndExit && /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(Button, { label: "Save & Exit", variant: "secondary", onClick: onSaveAndExit }),
27175
- isLastStep ? /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(Button, { label: completeLabel, variant: "primary", onClick: onComplete, disabled: primaryDisabled }) : /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(Button, { label: "Continue", variant: "primary", onClick: onContinue, disabled: primaryDisabled })
27349
+ return /* @__PURE__ */ (0, import_jsx_runtime220.jsxs)("div", { className: "df aic jcsb sm_w100", children: [
27350
+ /* @__PURE__ */ (0, import_jsx_runtime220.jsx)("div", { className: "df aic", children: !isFirstStep && isMobile && /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(IconButton, { icon: "arrowBack", label: "Back", onClick: onBack }) }),
27351
+ /* @__PURE__ */ (0, import_jsx_runtime220.jsxs)("div", { className: "df aic gap1", children: [
27352
+ /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(Button, { label: "Cancel", variant: "quaternary", onClick: onCancel }),
27353
+ onSaveAndExit && /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(Button, { label: "Save & Exit", variant: "secondary", onClick: onSaveAndExit }),
27354
+ isLastStep ? /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(Button, { label: completeLabel, variant: "primary", onClick: onComplete, disabled: primaryDisabled }) : /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(Button, { label: "Continue", variant: "primary", onClick: onContinue, disabled: primaryDisabled })
27176
27355
  ] })
27177
27356
  ] });
27178
27357
  }
27179
27358
 
27180
27359
  // src/layouts/WorkflowLayout/WorkflowLayout.tsx
27181
- var import_runtime136 = require("@homebound/truss/runtime");
27182
- var import_jsx_runtime219 = require("react/jsx-runtime");
27183
- var __maybeInc27 = (inc) => {
27360
+ var import_runtime138 = require("@homebound/truss/runtime");
27361
+ var import_jsx_runtime221 = require("react/jsx-runtime");
27362
+ var __maybeInc28 = (inc) => {
27184
27363
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
27185
27364
  };
27186
27365
  function WorkflowLayout(props) {
@@ -27198,7 +27377,7 @@ function WorkflowLayout(props) {
27198
27377
  ...step,
27199
27378
  value: defaultTestId(step.label)
27200
27379
  }));
27201
- const [currentStep, setCurrentStep] = (0, import_react157.useState)(() => getInitialStep(stepTabs, defaultStep));
27380
+ const [currentStep, setCurrentStep] = (0, import_react159.useState)(() => getInitialStep(stepTabs, defaultStep));
27202
27381
  const tid = useTestIds(props, "workflowLayout");
27203
27382
  const {
27204
27383
  sm: isMobile
@@ -27211,7 +27390,7 @@ function WorkflowLayout(props) {
27211
27390
  onCancel
27212
27391
  });
27213
27392
  const bannerAndNavbarHeight = useBannerAndNavbarHeight();
27214
- const headerMetricsRef = (0, import_react157.useRef)(null);
27393
+ const headerMetricsRef = (0, import_react159.useRef)(null);
27215
27394
  const headerHeight = useMeasuredHeight(headerMetricsRef, true);
27216
27395
  const scrollCollapsed = useScrollCollapse(!isMobile, bannerAndNavbarHeight + headerHeight);
27217
27396
  const collapsed = isMobile || scrollCollapsed;
@@ -27224,7 +27403,7 @@ function WorkflowLayout(props) {
27224
27403
  const isFirstStep = currentIndex <= 0;
27225
27404
  const isLastStep = currentIndex === stepTabs.length - 1;
27226
27405
  const activeStep = stepTabs[currentIndex];
27227
- const buttons = /* @__PURE__ */ (0, import_jsx_runtime219.jsx)(WorkflowActions, { isFirstStep, isLastStep, isMobile, onBack: () => setCurrentStep(stepTabs[currentIndex - 1].value), onCancel: onCancelClick, onSaveAndExit, completeLabel, onComplete, primaryDisabled: !activeStep?.isValid, onContinue: async () => {
27406
+ const buttons = /* @__PURE__ */ (0, import_jsx_runtime221.jsx)(WorkflowActions, { isFirstStep, isLastStep, isMobile, onBack: () => setCurrentStep(stepTabs[currentIndex - 1].value), onCancel: onCancelClick, onSaveAndExit, completeLabel, onComplete, primaryDisabled: !activeStep?.isValid, onContinue: async () => {
27228
27407
  const onContinue = activeStep?.onContinue;
27229
27408
  if (onContinue) {
27230
27409
  const allowed = await onContinue();
@@ -27233,7 +27412,7 @@ function WorkflowLayout(props) {
27233
27412
  setCurrentStep(stepTabs[currentIndex + 1].value);
27234
27413
  } });
27235
27414
  const showFooter = isMobile;
27236
- (0, import_react157.useLayoutEffect)(() => {
27415
+ (0, import_react159.useLayoutEffect)(() => {
27237
27416
  const root = document.documentElement;
27238
27417
  const previous = root.style.getPropertyValue(beamWorkflowLayoutFooterHeightVar);
27239
27418
  root.style.setProperty(beamWorkflowLayoutFooterHeightVar, showFooter ? `${mobileFooterHeightPx}px` : "0px");
@@ -27245,50 +27424,50 @@ function WorkflowLayout(props) {
27245
27424
  }
27246
27425
  };
27247
27426
  }, [showFooter]);
27248
- const headerEl = /* @__PURE__ */ (0, import_jsx_runtime219.jsx)(WorkflowHeader, { ...headerProps, rightSlot: isMobile ? void 0 : buttons, stepperTabs: {
27427
+ const headerEl = /* @__PURE__ */ (0, import_jsx_runtime221.jsx)(WorkflowHeader, { ...headerProps, rightSlot: isMobile ? void 0 : buttons, stepperTabs: {
27249
27428
  steps: stepTabs,
27250
27429
  currentStep,
27251
27430
  onChange: setCurrentStep,
27252
27431
  collapsed
27253
27432
  } });
27254
- return /* @__PURE__ */ (0, import_jsx_runtime219.jsxs)(DocumentScrollLayoutProvider, { children: [
27255
- /* @__PURE__ */ (0, import_jsx_runtime219.jsxs)("div", { ...(0, import_runtime136.mergeProps)(void 0, cssVars, {
27433
+ return /* @__PURE__ */ (0, import_jsx_runtime221.jsxs)(DocumentScrollLayoutProvider, { children: [
27434
+ /* @__PURE__ */ (0, import_jsx_runtime221.jsxs)("div", { ...(0, import_runtime138.mergeProps)(void 0, cssVars, {
27256
27435
  display: "df",
27257
27436
  flexDirection: "fdc",
27258
27437
  width: "w100"
27259
27438
  }), ...tid, children: [
27260
- /* @__PURE__ */ (0, import_jsx_runtime219.jsx)("div", { ref: headerMetricsRef, ...(0, import_runtime136.trussProps)({
27439
+ /* @__PURE__ */ (0, import_jsx_runtime221.jsx)("div", { ref: headerMetricsRef, ...(0, import_runtime138.trussProps)({
27261
27440
  position: "sticky",
27262
27441
  left: "left0",
27263
27442
  width: ["w_var", {
27264
- "--width": (0, import_runtime136.maybeCssVar)(__maybeInc27(headerWidth))
27443
+ "--width": (0, import_runtime138.maybeCssVar)(__maybeInc28(headerWidth))
27265
27444
  }],
27266
27445
  zIndex: ["z_var", {
27267
- "--zIndex": (0, import_runtime136.maybeCssVar)(zIndices.pageStickyHeader)
27446
+ "--zIndex": (0, import_runtime138.maybeCssVar)(zIndices.pageStickyHeader)
27268
27447
  }],
27269
27448
  top: ["top_var", {
27270
- "--top": (0, import_runtime136.maybeCssVar)(__maybeInc27(outerTop))
27449
+ "--top": (0, import_runtime138.maybeCssVar)(__maybeInc28(outerTop))
27271
27450
  }]
27272
27451
  }), ...tid.header, children: headerEl }),
27273
- /* @__PURE__ */ (0, import_jsx_runtime219.jsx)("div", { className: "df fdc fg1 mh0 w100", ...tid.body, children: activeStep?.content }),
27274
- showFooter && /* @__PURE__ */ (0, import_jsx_runtime219.jsx)("div", { ...(0, import_runtime136.trussProps)({
27452
+ /* @__PURE__ */ (0, import_jsx_runtime221.jsx)("div", { className: "df fdc fg1 mh0 w100", ...tid.body, children: activeStep?.content }),
27453
+ showFooter && /* @__PURE__ */ (0, import_jsx_runtime221.jsx)("div", { ...(0, import_runtime138.trussProps)({
27275
27454
  flexShrink: "fs0",
27276
27455
  width: "w100",
27277
27456
  height: ["h_var", {
27278
27457
  "--height": `${mobileFooterHeightPx}px`
27279
27458
  }]
27280
- }), children: /* @__PURE__ */ (0, import_jsx_runtime219.jsx)("div", { ...(0, import_runtime136.trussProps)({
27459
+ }), children: /* @__PURE__ */ (0, import_jsx_runtime221.jsx)("div", { ...(0, import_runtime138.trussProps)({
27281
27460
  ...{
27282
27461
  position: "fixed",
27283
27462
  bottom: "bottom0",
27284
27463
  width: ["w_var", {
27285
- "--width": (0, import_runtime136.maybeCssVar)(__maybeInc27(headerWidth))
27464
+ "--width": (0, import_runtime138.maybeCssVar)(__maybeInc28(headerWidth))
27286
27465
  }],
27287
27466
  height: ["h_var", {
27288
27467
  "--height": `${mobileFooterHeightPx}px`
27289
27468
  }],
27290
27469
  zIndex: ["z_var", {
27291
- "--zIndex": (0, import_runtime136.maybeCssVar)(zIndices.pageStickyFooter)
27470
+ "--zIndex": (0, import_runtime138.maybeCssVar)(zIndices.pageStickyFooter)
27292
27471
  }],
27293
27472
  display: "df",
27294
27473
  alignItems: "aic",
@@ -27306,7 +27485,7 @@ function WorkflowLayout(props) {
27306
27485
  ...pageContentPaddingX
27307
27486
  }), ...tid.footer, children: buttons }) })
27308
27487
  ] }),
27309
- navigationBlocker && /* @__PURE__ */ (0, import_jsx_runtime219.jsx)(UnsavedChangesNavigationModal, { ...navigationBlocker })
27488
+ navigationBlocker && /* @__PURE__ */ (0, import_jsx_runtime221.jsx)(UnsavedChangesNavigationModal, { ...navigationBlocker })
27310
27489
  ] });
27311
27490
  }
27312
27491
  var mobileFooterHeightPx = 80;
@@ -27380,6 +27559,7 @@ function getInitialStep(steps, defaultStep) {
27380
27559
  DateRangeField,
27381
27560
  DnDGrid,
27382
27561
  DnDGridItemHandle,
27562
+ DocumentScrollRightPaneLayout,
27383
27563
  DocumentTitleProvider,
27384
27564
  EXPANDABLE_HEADER,
27385
27565
  EditColumnsButton,
@@ -27493,10 +27673,12 @@ function getInitialStep(steps, defaultStep) {
27493
27673
  assignDefaultColumnIds,
27494
27674
  bannerAndNavbarChromeTop,
27495
27675
  beamEnvironmentBannerLayoutHeightVar,
27676
+ beamFloatingRightOffsetVar,
27496
27677
  beamLayoutViewportHeightVar,
27497
27678
  beamLayoutViewportWidthVar,
27498
27679
  beamNavbarLayoutHeightVar,
27499
27680
  beamPageHeaderLayoutHeightVar,
27681
+ beamRightPaneWidthVar,
27500
27682
  beamSideNavLayoutWidthVar,
27501
27683
  beamTableActionsHeightVar,
27502
27684
  beamWorkflowLayoutFooterHeightVar,
@@ -27541,12 +27723,15 @@ function getInitialStep(steps, defaultStep) {
27541
27723
  dateFilter,
27542
27724
  dateFormats,
27543
27725
  dateRangeFilter,
27726
+ defaultDocumentScrollRightPaneWidth,
27544
27727
  defaultPage,
27545
27728
  defaultRenderFn,
27546
27729
  defaultStyle,
27547
27730
  defaultTestId,
27548
27731
  documentScrollChromeLeft,
27549
27732
  documentScrollChromeWidth,
27733
+ documentScrollRightPaneHeight,
27734
+ documentScrollRightPaneWidth,
27550
27735
  dragHandleColumn,
27551
27736
  emptyCell,
27552
27737
  ensureClientSideSortValueIsSortable,
@@ -27563,6 +27748,7 @@ function getInitialStep(steps, defaultStep) {
27563
27748
  getDateFormat,
27564
27749
  getFirstOrLastCellCss,
27565
27750
  getFloatingBottomOffset,
27751
+ getFloatingRightOffset,
27566
27752
  getJustification,
27567
27753
  getNavLinkStyles,
27568
27754
  getTableRefWidthStyles,