@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/Css.json +1 -1
- package/dist/index.cjs +1045 -859
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +12 -0
- package/dist/index.css.map +1 -1
- package/dist/index.d.cts +49 -6
- package/dist/index.d.ts +49 -6
- package/dist/index.js +851 -672
- package/dist/index.js.map +1 -1
- package/dist/truss.css +6 -4
- package/package.json +1 -1
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"
|
|
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(
|
|
4227
|
-
"
|
|
4228
|
-
"
|
|
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 ?
|
|
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":
|
|
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
|
|
18665
|
-
var
|
|
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
|
|
21512
|
-
var
|
|
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
|
|
21757
|
+
var import_react119 = require("react");
|
|
21534
21758
|
|
|
21535
21759
|
// src/components/ButtonMenu.tsx
|
|
21536
|
-
var
|
|
21537
|
-
var
|
|
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
|
|
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,
|
|
21549
|
-
const { menuTriggerProps, menuProps } = (0,
|
|
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,
|
|
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
|
|
21574
|
-
var
|
|
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,
|
|
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,
|
|
21829
|
+
"--backgroundColor": (0, import_runtime94.maybeCssVar)(bgColor)
|
|
21606
21830
|
}]
|
|
21607
21831
|
},
|
|
21608
21832
|
...{
|
|
21609
21833
|
color: ["color_var", {
|
|
21610
|
-
"--color": (0,
|
|
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
|
|
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,
|
|
21657
|
-
vertical && /* @__PURE__ */ (0,
|
|
21658
|
-
/* @__PURE__ */ (0,
|
|
21659
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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
|
|
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,
|
|
21728
|
-
vertical && /* @__PURE__ */ (0,
|
|
21729
|
-
/* @__PURE__ */ (0,
|
|
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
|
|
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,
|
|
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,
|
|
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
|
|
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,
|
|
21860
|
-
vertical && /* @__PURE__ */ (0,
|
|
21861
|
-
/* @__PURE__ */ (0,
|
|
21862
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
21882
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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
|
|
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,
|
|
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
|
|
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,
|
|
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
|
|
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,
|
|
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
|
|
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,
|
|
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
|
|
22288
|
+
var import_react116 = require("react");
|
|
22065
22289
|
|
|
22066
22290
|
// src/components/Modal/ConfirmCloseModal.tsx
|
|
22067
|
-
var
|
|
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,
|
|
22082
|
-
/* @__PURE__ */ (0,
|
|
22083
|
-
/* @__PURE__ */ (0,
|
|
22084
|
-
/* @__PURE__ */ (0,
|
|
22085
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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
|
|
22112
|
-
var
|
|
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,
|
|
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,
|
|
22346
|
+
return /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(Modal, { size, content: children });
|
|
22123
22347
|
} else {
|
|
22124
|
-
return /* @__PURE__ */ (0,
|
|
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
|
|
22130
|
-
var
|
|
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,
|
|
22142
|
-
return /* @__PURE__ */ (0,
|
|
22143
|
-
/* @__PURE__ */ (0,
|
|
22144
|
-
/* @__PURE__ */ (0,
|
|
22145
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
22153
|
-
/* @__PURE__ */ (0,
|
|
22154
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
22175
|
-
/* @__PURE__ */ (0,
|
|
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
|
|
22185
|
-
var
|
|
22186
|
-
var
|
|
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,
|
|
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,
|
|
22209
|
-
return /* @__PURE__ */ (0,
|
|
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,
|
|
22222
|
-
Object.keys(modalFilters).length > 0 && /* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|
|
22453
|
+
var _Filters = (0, import_react117.memo)(Filters);
|
|
22230
22454
|
|
|
22231
22455
|
// src/components/Filters/ToggleFilter.tsx
|
|
22232
|
-
var
|
|
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,
|
|
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
|
|
22268
|
-
var
|
|
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
|
|
22271
|
-
var
|
|
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,
|
|
22506
|
+
const buttonRef = (0, import_react118.useRef)(null);
|
|
22283
22507
|
const {
|
|
22284
22508
|
menuTriggerProps
|
|
22285
|
-
} = (0,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
22333
|
-
/* @__PURE__ */ (0,
|
|
22334
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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
|
|
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,
|
|
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
|
|
22602
|
+
var import_runtime98 = require("@homebound/truss/runtime");
|
|
22379
22603
|
|
|
22380
22604
|
// src/components/Layout/GridTableLayout/GroupByField.tsx
|
|
22381
|
-
var
|
|
22605
|
+
var import_jsx_runtime164 = require("react/jsx-runtime");
|
|
22382
22606
|
function GroupByField({ value, setValue, options }) {
|
|
22383
|
-
return /* @__PURE__ */ (0,
|
|
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
|
|
22623
|
+
var import_jsx_runtime165 = require("react/jsx-runtime");
|
|
22400
22624
|
function FilterPanel(props) {
|
|
22401
|
-
return props.isOpen ? /* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
22654
|
+
groupBy && /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(GroupByField, { ...groupBy }),
|
|
22431
22655
|
filterControls,
|
|
22432
|
-
activeFilterCount > 0 && /* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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
|
|
22488
|
-
var
|
|
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,
|
|
22513
|
-
const [showFilters, setShowFilters] = (0,
|
|
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,
|
|
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,
|
|
22535
|
-
const filterImpls = (0,
|
|
22536
|
-
const searchTextField = /* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
22570
|
-
!sm && hasSearch && /* @__PURE__ */ (0,
|
|
22571
|
-
sm && hasSearch && /* @__PURE__ */ (0,
|
|
22572
|
-
sm && hasFilterControls && /* @__PURE__ */ (0,
|
|
22573
|
-
showInlineControl && (groupBy ? /* @__PURE__ */ (0,
|
|
22574
|
-
!sm && hasFilterControls && !showInlineControl && /* @__PURE__ */ (0,
|
|
22575
|
-
activeFilterCount > 0 && /* @__PURE__ */ (0,
|
|
22576
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
22580
|
-
hasHideableColumns && view === "list" && columns && api && /* @__PURE__ */ (0,
|
|
22581
|
-
withCardView && view !== void 0 && setView && /* @__PURE__ */ (0,
|
|
22582
|
-
actionMenu && /* @__PURE__ */ (0,
|
|
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,
|
|
22588
|
-
hasFilterControls && !showInlineControl && /* @__PURE__ */ (0,
|
|
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,
|
|
22815
|
+
var _GridTableLayoutActions = (0, import_react119.memo)(GridTableLayoutActionsComponent);
|
|
22592
22816
|
|
|
22593
22817
|
// src/components/Layout/GridTableLayout/QueryTable.tsx
|
|
22594
|
-
var
|
|
22818
|
+
var import_react120 = require("react");
|
|
22595
22819
|
|
|
22596
22820
|
// src/components/LoadingSkeleton.tsx
|
|
22597
|
-
var
|
|
22598
|
-
var
|
|
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,
|
|
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,
|
|
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,
|
|
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
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
22667
|
-
/* @__PURE__ */ (0,
|
|
22668
|
-
/* @__PURE__ */ (0,
|
|
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
|
|
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,
|
|
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,
|
|
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
|
|
22707
|
-
var
|
|
22708
|
-
var
|
|
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,
|
|
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,
|
|
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,
|
|
22735
|
-
const tableWrapperRef = (0,
|
|
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,
|
|
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,
|
|
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,
|
|
22748
|
-
const clearFilters = (0,
|
|
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,
|
|
22753
|
-
const tableActionsEl = /* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|
|
22762
|
-
showTableActions && /* @__PURE__ */ (0,
|
|
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,
|
|
22993
|
+
"--top": (0, import_runtime101.maybeCssVar)(__maybeInc18(stickyNavAndHeaderOffset()))
|
|
22768
22994
|
}],
|
|
22769
22995
|
left: ["left_var", {
|
|
22770
|
-
"--left": (0,
|
|
22996
|
+
"--left": (0, import_runtime101.maybeCssVar)(__maybeInc18(documentScrollChromeLeft()))
|
|
22771
22997
|
}],
|
|
22772
22998
|
width: ["w_var", {
|
|
22773
|
-
"--width": (0,
|
|
22999
|
+
"--width": (0, import_runtime101.maybeCssVar)(__maybeInc18(`min(100%, ${documentScrollChromeWidth()})`))
|
|
22774
23000
|
}],
|
|
22775
23001
|
zIndex: ["z_var", {
|
|
22776
|
-
"--zIndex": (0,
|
|
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 ?
|
|
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
|
|
22787
|
-
/* @__PURE__ */ (0,
|
|
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 =
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
23093
|
+
(0, import_utils137.useResizeObserver)({
|
|
22865
23094
|
ref: tableActionsRef,
|
|
22866
23095
|
onResize: enabled ? syncHeightVar : noop
|
|
22867
23096
|
});
|
|
22868
|
-
(0,
|
|
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
|
|
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,
|
|
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
|
|
22943
|
-
var
|
|
22944
|
-
var
|
|
22945
|
-
var
|
|
22946
|
-
var
|
|
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,
|
|
22963
|
-
return /* @__PURE__ */ (0,
|
|
22964
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
23011
|
-
|
|
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,
|
|
23209
|
+
...(0, import_runtime102.trussProps)({
|
|
23016
23210
|
backgroundColor: ["bgColor_var", {
|
|
23017
|
-
"--backgroundColor": (0,
|
|
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
|
|
23062
|
-
var
|
|
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,
|
|
23261
|
+
return /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(import_jsx_runtime172.Fragment, { children });
|
|
23068
23262
|
}
|
|
23069
|
-
return (0,
|
|
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
|
|
23074
|
-
var
|
|
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
|
|
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,
|
|
23088
|
-
/* @__PURE__ */ (0,
|
|
23089
|
-
/* @__PURE__ */ (0,
|
|
23090
|
-
hasFooter && /* @__PURE__ */ (0,
|
|
23091
|
-
secondaryAction && /* @__PURE__ */ (0,
|
|
23092
|
-
primaryAction && /* @__PURE__ */ (0,
|
|
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
|
|
23099
|
-
var
|
|
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,
|
|
23115
|
-
(0,
|
|
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,
|
|
23319
|
+
tableContent = /* @__PURE__ */ (0, import_jsx_runtime174.jsx)("div", { className: "h100 df fdc aic jcc", children: emptyState });
|
|
23126
23320
|
} else {
|
|
23127
|
-
tableContent = /* @__PURE__ */ (0,
|
|
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,
|
|
23327
|
+
tableContent = /* @__PURE__ */ (0, import_jsx_runtime174.jsx)("div", { className: "h100 df fdc aic jcc", children: emptyState });
|
|
23134
23328
|
} else {
|
|
23135
|
-
tableContent = /* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|
|
23156
|
-
/* @__PURE__ */ (0,
|
|
23157
|
-
/* @__PURE__ */ (0,
|
|
23158
|
-
/* @__PURE__ */ (0,
|
|
23159
|
-
breadCrumb && /* @__PURE__ */ (0,
|
|
23160
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
23356
|
+
/* @__PURE__ */ (0, import_jsx_runtime174.jsx)(Button, { label: "Close", onClick: closeAction, ...tid.closeButton })
|
|
23163
23357
|
] }),
|
|
23164
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
23175
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|
|
23212
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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
|
|
23228
|
-
var BeamContext = (0,
|
|
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,
|
|
23241
|
-
const modalRef = (0,
|
|
23242
|
-
const modalHeaderDiv = (0,
|
|
23243
|
-
const modalBodyDiv = (0,
|
|
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,
|
|
23249
|
-
const modalFooterDiv = (0,
|
|
23250
|
-
const drawerContentStackRef = (0,
|
|
23251
|
-
const drawerCanCloseChecks = (0,
|
|
23252
|
-
const drawerCanCloseDetailsChecks = (0,
|
|
23253
|
-
const sdHeaderDiv = (0,
|
|
23254
|
-
const context = (0,
|
|
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,
|
|
23270
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
23466
|
+
modalRef.current && /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(Modal, { ...modalRef.current })
|
|
23273
23467
|
] }),
|
|
23274
|
-
/* @__PURE__ */ (0,
|
|
23468
|
+
/* @__PURE__ */ (0, import_jsx_runtime175.jsx)(SuperDrawer, {})
|
|
23275
23469
|
] }) }) }) }) });
|
|
23276
|
-
return /* @__PURE__ */ (0,
|
|
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,
|
|
23486
|
+
return (0, import_react125.useContext)(BeamContext);
|
|
23293
23487
|
}
|
|
23294
23488
|
|
|
23295
23489
|
// src/components/Breadcrumbs.tsx
|
|
23296
|
-
var
|
|
23490
|
+
var import_react126 = require("react");
|
|
23297
23491
|
var import_react_router_dom6 = require("react-router-dom");
|
|
23298
|
-
var
|
|
23299
|
-
var
|
|
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,
|
|
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,
|
|
23316
|
-
index > 0 && /* @__PURE__ */ (0,
|
|
23317
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
23338
|
-
/* @__PURE__ */ (0,
|
|
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
|
|
23345
|
-
var
|
|
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
|
|
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,
|
|
23545
|
+
const buttonRef = (0, import_react127.useRef)(null);
|
|
23352
23546
|
const {
|
|
23353
23547
|
menuTriggerProps,
|
|
23354
23548
|
menuProps: { autoFocus: _af, ...menuProps }
|
|
23355
|
-
} = (0,
|
|
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,
|
|
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
|
|
23375
|
-
var
|
|
23376
|
-
var
|
|
23377
|
-
var
|
|
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,
|
|
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,
|
|
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,
|
|
23616
|
+
const ref = (0, import_react128.useRef)(null);
|
|
23423
23617
|
const {
|
|
23424
23618
|
buttonProps,
|
|
23425
23619
|
isPressed
|
|
23426
|
-
} = (0,
|
|
23620
|
+
} = (0, import_react_aria57.useButton)(ariaProps, ref);
|
|
23427
23621
|
const {
|
|
23428
23622
|
isFocusVisible,
|
|
23429
23623
|
focusProps
|
|
23430
|
-
} = (0,
|
|
23624
|
+
} = (0, import_react_aria57.useFocusRing)();
|
|
23431
23625
|
const {
|
|
23432
23626
|
hoverProps,
|
|
23433
23627
|
isHovered
|
|
23434
|
-
} = (0,
|
|
23628
|
+
} = (0, import_react_aria57.useHover)(ariaProps);
|
|
23435
23629
|
const tid = useTestIds(props);
|
|
23436
|
-
return /* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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
|
|
23557
|
-
var
|
|
23750
|
+
var import_react130 = require("react");
|
|
23751
|
+
var import_react_aria58 = require("react-aria");
|
|
23558
23752
|
|
|
23559
23753
|
// src/components/Tag.tsx
|
|
23560
|
-
var
|
|
23561
|
-
var
|
|
23562
|
-
var
|
|
23563
|
-
var
|
|
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,
|
|
23584
|
-
const ref = (0,
|
|
23585
|
-
(0,
|
|
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,
|
|
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,
|
|
23616
|
-
isIconOnly ? /* @__PURE__ */ (0,
|
|
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
|
|
23704
|
-
var
|
|
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,
|
|
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,
|
|
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,
|
|
23737
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
23958
|
+
"--objectFit": (0, import_runtime107.maybeCssVar)(imageFit)
|
|
23765
23959
|
}]
|
|
23766
23960
|
}), src: imgSrc, alt: title, ...tid.img }) }),
|
|
23767
|
-
isHovered && buttonMenuItems && /* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
23780
|
-
/* @__PURE__ */ (0,
|
|
23781
|
-
/* @__PURE__ */ (0,
|
|
23782
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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
|
|
23864
|
-
var
|
|
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,
|
|
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
|
|
23883
|
-
var
|
|
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,
|
|
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,
|
|
24100
|
+
"--zIndex": (0, import_runtime109.maybeCssVar)(zIndices.environmentBanner)
|
|
23907
24101
|
}],
|
|
23908
24102
|
backgroundColor: ["bgColor_var", {
|
|
23909
|
-
"--backgroundColor": (0,
|
|
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,
|
|
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,
|
|
23930
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
23967
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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
|
|
24271
|
+
var import_react132 = require("react");
|
|
24078
24272
|
|
|
24079
24273
|
// src/components/Grid/utils.ts
|
|
24080
|
-
var
|
|
24274
|
+
var import_react131 = require("react");
|
|
24081
24275
|
var gridItemDataAttribute = "data-grid-item-span";
|
|
24082
|
-
var ResponsiveGridContext = (0,
|
|
24276
|
+
var ResponsiveGridContext = (0, import_react131.createContext)(void 0);
|
|
24083
24277
|
|
|
24084
24278
|
// src/components/Grid/ResponsiveGrid.tsx
|
|
24085
|
-
var
|
|
24086
|
-
var
|
|
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,
|
|
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,
|
|
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
|
|
24111
|
-
var
|
|
24112
|
-
var
|
|
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,
|
|
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
|
|
24129
|
-
var
|
|
24130
|
-
var
|
|
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,
|
|
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,
|
|
24342
|
+
"--gridTemplateColumns": (0, import_runtime112.maybeCssVar)(gridTemplateColumns)
|
|
24149
24343
|
}],
|
|
24150
24344
|
containerType: "ctis",
|
|
24151
24345
|
gap: ["gap_var", {
|
|
24152
|
-
"--gap": (0,
|
|
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
|
|
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,
|
|
24361
|
+
const contextConfig = (0, import_react134.useContext)(ResponsiveGridContext);
|
|
24168
24362
|
const config = gridConfig ?? contextConfig;
|
|
24169
|
-
const { className, cssText } = (0,
|
|
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,
|
|
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
|
|
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
|
|
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,
|
|
24421
|
+
const ctx = (0, import_react135.useContext)(HbLoadingSpinnerContext);
|
|
24228
24422
|
const tid = useTestIds({}, "hbSpinner");
|
|
24229
|
-
const quip = (0,
|
|
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,
|
|
24236
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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 =
|
|
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,
|
|
24461
|
+
const state = (0, import_react135.useMemo)(() => ({
|
|
24268
24462
|
quips,
|
|
24269
24463
|
noQuips: quips.length === 0
|
|
24270
24464
|
}), [quips]);
|
|
24271
|
-
return /* @__PURE__ */ (0,
|
|
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
|
|
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,
|
|
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
|
|
24287
|
-
var
|
|
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,
|
|
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,
|
|
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: "
|
|
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,
|
|
24320
|
-
title ? /* @__PURE__ */ (0,
|
|
24321
|
-
actions && /* @__PURE__ */ (0,
|
|
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
|
|
24329
|
-
var
|
|
24330
|
-
var
|
|
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,
|
|
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,
|
|
24533
|
+
"--fill": (0, import_runtime114.maybeCssVar)(fill)
|
|
24342
24534
|
}],
|
|
24343
24535
|
width: ["w_var", {
|
|
24344
|
-
"--width": (0,
|
|
24536
|
+
"--width": (0, import_runtime114.maybeCssVar)(__maybeInc21(width2))
|
|
24345
24537
|
}],
|
|
24346
24538
|
height: ["h_var", {
|
|
24347
|
-
"--height": (0,
|
|
24539
|
+
"--height": (0, import_runtime114.maybeCssVar)(__maybeInc21(height))
|
|
24348
24540
|
}]
|
|
24349
|
-
}), children: /* @__PURE__ */ (0,
|
|
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
|
|
24354
|
-
var
|
|
24355
|
-
var
|
|
24356
|
-
var
|
|
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,
|
|
24558
|
+
const ref = (0, import_react136.useRef)(null);
|
|
24367
24559
|
const {
|
|
24368
24560
|
linkProps
|
|
24369
|
-
} = (0,
|
|
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,
|
|
24569
|
+
} = (0, import_react_aria60.useFocusRing)();
|
|
24378
24570
|
const {
|
|
24379
24571
|
hoverProps,
|
|
24380
24572
|
isHovered: isHoveredFromEvents
|
|
24381
|
-
} = (0,
|
|
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,
|
|
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,
|
|
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
|
|
24454
|
-
var
|
|
24455
|
-
var
|
|
24456
|
-
var
|
|
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,
|
|
24462
|
-
const [hasMore, setHasMore] = (0,
|
|
24463
|
-
const [expanded, setExpanded] = (0,
|
|
24464
|
-
(0,
|
|
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,
|
|
24660
|
+
(0, import_react137.useEffect)(() => {
|
|
24469
24661
|
setExpanded(false);
|
|
24470
24662
|
}, [children]);
|
|
24471
|
-
const onResize = (0,
|
|
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,
|
|
24667
|
+
(0, import_utils156.useResizeObserver)({
|
|
24476
24668
|
ref: elRef,
|
|
24477
24669
|
onResize
|
|
24478
24670
|
});
|
|
24479
|
-
return /* @__PURE__ */ (0,
|
|
24480
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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
|
|
24691
|
+
var import_utils158 = require("@react-aria/utils");
|
|
24500
24692
|
var import_change_case7 = require("change-case");
|
|
24501
|
-
var
|
|
24693
|
+
var import_react140 = require("react");
|
|
24502
24694
|
|
|
24503
24695
|
// src/components/AppNav/AppNavGroupTrigger.tsx
|
|
24504
|
-
var
|
|
24505
|
-
var
|
|
24506
|
-
var
|
|
24507
|
-
var
|
|
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,
|
|
24709
|
+
const ref = (0, import_react138.useRef)(null);
|
|
24518
24710
|
const {
|
|
24519
24711
|
buttonProps,
|
|
24520
24712
|
isPressed
|
|
24521
|
-
} = (0,
|
|
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,
|
|
24720
|
+
} = (0, import_react_aria61.useHover)({});
|
|
24529
24721
|
const {
|
|
24530
24722
|
isFocusVisible,
|
|
24531
24723
|
focusProps
|
|
24532
|
-
} = (0,
|
|
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,
|
|
24539
|
-
return /* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|
|
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
|
|
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,
|
|
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,
|
|
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
|
|
24711
|
-
var
|
|
24712
|
-
var
|
|
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,
|
|
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,
|
|
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,
|
|
24737
|
-
const contentRef = (0,
|
|
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,
|
|
24741
|
-
(0,
|
|
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,
|
|
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,
|
|
24941
|
+
(0, import_utils158.useResizeObserver)({
|
|
24750
24942
|
ref: contentRef,
|
|
24751
24943
|
onResize
|
|
24752
24944
|
});
|
|
24753
|
-
return /* @__PURE__ */ (0,
|
|
24754
|
-
/* @__PURE__ */ (0,
|
|
24755
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
24951
|
+
"--height": (0, import_runtime118.maybeCssVar)(__maybeInc22(contentHeight))
|
|
24760
24952
|
}]
|
|
24761
24953
|
}), ...tid.panel, ...!expanded ? {
|
|
24762
24954
|
inert: "true"
|
|
24763
|
-
} : {}, children: /* @__PURE__ */ (0,
|
|
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
|
|
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,
|
|
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
|
|
24790
|
-
var
|
|
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,
|
|
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,
|
|
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,
|
|
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
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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
|
|
24891
|
-
var
|
|
24892
|
-
var
|
|
24893
|
-
var
|
|
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
|
-
|
|
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,
|
|
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,
|
|
25099
|
+
(0, import_react_aria62.usePreventScroll)({
|
|
24921
25100
|
isDisabled: !isOpen
|
|
24922
25101
|
});
|
|
24923
|
-
(0,
|
|
25102
|
+
(0, import_react141.useEffect)(() => {
|
|
24924
25103
|
setIsOpen(false);
|
|
24925
25104
|
}, [pathname, search]);
|
|
24926
25105
|
const close = () => setIsOpen(false);
|
|
24927
|
-
return /* @__PURE__ */ (0,
|
|
24928
|
-
/* @__PURE__ */ (0,
|
|
24929
|
-
(0,
|
|
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,
|
|
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,
|
|
24946
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
25008
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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
|
|
25038
|
-
var
|
|
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,
|
|
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,
|
|
25074
|
-
/* @__PURE__ */ (0,
|
|
25075
|
-
showMobile && /* @__PURE__ */ (0,
|
|
25076
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|
|
25097
|
-
rightSlot && /* @__PURE__ */ (0,
|
|
25098
|
-
user && /* @__PURE__ */ (0,
|
|
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,
|
|
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
|
|
25116
|
-
var
|
|
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,
|
|
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,
|
|
25166
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
25171
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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
|
|
25205
|
-
var
|
|
25206
|
-
var
|
|
25207
|
-
var
|
|
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,
|
|
25224
|
-
const [showEndShadow, setShowEndShadow] = (0,
|
|
25225
|
-
const scrollRef = (0,
|
|
25226
|
-
const [startShadowStyles, endShadowStyles] = (0,
|
|
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,
|
|
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,
|
|
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,
|
|
25451
|
+
"--background": (0, import_runtime123.maybeCssVar)(endGradient)
|
|
25273
25452
|
}]
|
|
25274
25453
|
}
|
|
25275
25454
|
}];
|
|
25276
25455
|
}, [horizontal, bgColor]);
|
|
25277
|
-
const updateScrollProps = (0,
|
|
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,
|
|
25293
|
-
(0,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
25496
|
+
"--opacity": (0, import_runtime123.maybeCssVar)(showStartShadow ? 1 : 0)
|
|
25318
25497
|
}]
|
|
25319
25498
|
}
|
|
25320
25499
|
}), "data-chromatic": "ignore" }),
|
|
25321
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
25504
|
+
"--opacity": (0, import_runtime123.maybeCssVar)(showEndShadow ? 1 : 0)
|
|
25326
25505
|
}]
|
|
25327
25506
|
}
|
|
25328
25507
|
}), "data-chromatic": "ignore" }),
|
|
25329
|
-
/* @__PURE__ */ (0,
|
|
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
|
|
25342
|
-
var
|
|
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,
|
|
25543
|
+
var SideNavLayoutContext = (0, import_react143.createContext)(void 0);
|
|
25365
25544
|
function SideNavLayoutProvider(props) {
|
|
25366
|
-
const [navState, setNavStateInternal] = (0,
|
|
25545
|
+
const [navState, setNavStateInternal] = (0, import_react143.useState)(
|
|
25367
25546
|
() => resolveInitialNavState(props.defaultNavState)
|
|
25368
25547
|
);
|
|
25369
25548
|
const bp = useBreakpoint();
|
|
25370
|
-
const prevMdAndUp = (0,
|
|
25371
|
-
(0,
|
|
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,
|
|
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,
|
|
25390
|
-
return /* @__PURE__ */ (0,
|
|
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,
|
|
25572
|
+
return (0, import_react143.useContext)(SideNavLayoutContext) ?? { navState: "expanded", setNavState: () => {
|
|
25394
25573
|
} };
|
|
25395
25574
|
}
|
|
25396
25575
|
function useHasSideNavLayoutProvider() {
|
|
25397
|
-
return (0,
|
|
25576
|
+
return (0, import_react143.useContext)(SideNavLayoutContext) !== void 0;
|
|
25398
25577
|
}
|
|
25399
25578
|
|
|
25400
25579
|
// src/components/SideNav/SideNav.tsx
|
|
25401
|
-
var
|
|
25402
|
-
var
|
|
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,
|
|
25416
|
-
top !== void 0 && /* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
25440
|
-
footer !== void 0 && /* @__PURE__ */ (0,
|
|
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
|
|
25635
|
+
var import_react144 = require("react");
|
|
25457
25636
|
function useSnackbar() {
|
|
25458
25637
|
const { setNotices, setOffset } = useSnackbarContext();
|
|
25459
|
-
const onClose = (0,
|
|
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,
|
|
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,
|
|
25506
|
-
const useSnackbarOffset = ({ bottom }) => (0,
|
|
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
|
|
25516
|
-
var
|
|
25517
|
-
var
|
|
25518
|
-
var
|
|
25519
|
-
var
|
|
25520
|
-
var
|
|
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,
|
|
25538
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
25776
|
+
const ref = (0, import_react145.useRef)(null);
|
|
25598
25777
|
const {
|
|
25599
25778
|
buttonProps,
|
|
25600
25779
|
isPressed
|
|
25601
|
-
} = (0,
|
|
25780
|
+
} = (0, import_react_aria63.useButton)(ariaProps, ref);
|
|
25602
25781
|
const {
|
|
25603
25782
|
isFocusVisible,
|
|
25604
25783
|
focusProps
|
|
25605
|
-
} = (0,
|
|
25784
|
+
} = (0, import_react_aria63.useFocusRing)();
|
|
25606
25785
|
const {
|
|
25607
25786
|
hoverProps,
|
|
25608
25787
|
isHovered
|
|
25609
|
-
} = (0,
|
|
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,
|
|
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,
|
|
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,
|
|
25867
|
+
return /* @__PURE__ */ (0, import_jsx_runtime202.jsx)(Icon, { icon: "errorCircle" });
|
|
25689
25868
|
}
|
|
25690
25869
|
if (state === "complete") {
|
|
25691
|
-
return /* @__PURE__ */ (0,
|
|
25870
|
+
return /* @__PURE__ */ (0, import_jsx_runtime202.jsx)(Icon, { icon: "check" });
|
|
25692
25871
|
}
|
|
25693
|
-
return /* @__PURE__ */ (0,
|
|
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
|
|
25708
|
-
var
|
|
25709
|
-
var
|
|
25710
|
-
var
|
|
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,
|
|
25905
|
+
const ref = (0, import_react147.useRef)(null);
|
|
25727
25906
|
const {
|
|
25728
25907
|
buttonProps
|
|
25729
|
-
} = (0,
|
|
25908
|
+
} = (0, import_react_aria64.useButton)(ariaProps, ref);
|
|
25730
25909
|
const {
|
|
25731
25910
|
isFocusVisible: isFocusVisibleFromEvents,
|
|
25732
25911
|
focusProps
|
|
25733
|
-
} = (0,
|
|
25912
|
+
} = (0, import_react_aria64.useFocusRing)();
|
|
25734
25913
|
const {
|
|
25735
25914
|
hoverProps,
|
|
25736
25915
|
isHovered: isHoveredFromEvents
|
|
25737
|
-
} = (0,
|
|
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,
|
|
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,
|
|
25750
|
-
/* @__PURE__ */ (0,
|
|
25751
|
-
/* @__PURE__ */ (0,
|
|
25752
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
25956
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime203.jsx)(Icon, { icon: "check", inc: 2.5, ...tid.check }) })
|
|
25778
25957
|
] }),
|
|
25779
|
-
/* @__PURE__ */ (0,
|
|
25780
|
-
/* @__PURE__ */ (0,
|
|
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
|
|
25862
|
-
var
|
|
25863
|
-
var
|
|
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,
|
|
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,
|
|
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,
|
|
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
|
|
25913
|
-
var
|
|
25914
|
-
var
|
|
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,
|
|
25932
|
-
isStructuredProps(props) ? /* @__PURE__ */ (0,
|
|
25933
|
-
/* @__PURE__ */ (0,
|
|
25934
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
25938
|
-
] }) : /* @__PURE__ */ (0,
|
|
25939
|
-
!hideControls && /* @__PURE__ */ (0,
|
|
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,
|
|
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
|
|
26139
|
+
var import_framer_motion7 = require("framer-motion");
|
|
25961
26140
|
|
|
25962
26141
|
// src/components/SuperDrawer/useSuperDrawer.tsx
|
|
25963
|
-
var
|
|
25964
|
-
var
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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
|
|
26092
|
-
var
|
|
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,
|
|
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,
|
|
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,
|
|
26122
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
26330
|
+
return /* @__PURE__ */ (0, import_jsx_runtime207.jsxs)(import_jsx_runtime207.Fragment, { children: [
|
|
26152
26331
|
wrapWithMotionAndMaybeBack(children),
|
|
26153
|
-
actions && /* @__PURE__ */ (0,
|
|
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,
|
|
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
|
|
26211
|
-
var
|
|
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
|
|
26215
|
-
var
|
|
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,
|
|
26221
|
-
/* @__PURE__ */ (0,
|
|
26222
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
26448
|
+
} = (0, import_react_aria65.useFocusRing)();
|
|
26270
26449
|
const tid = useTestIds(others, "tabs");
|
|
26271
|
-
const [active, setActive] = (0,
|
|
26272
|
-
const ref = (0,
|
|
26273
|
-
(0,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
26550
|
+
const tabLabel = /* @__PURE__ */ (0, import_jsx_runtime208.jsxs)(import_jsx_runtime208.Fragment, { children: [
|
|
26372
26551
|
label,
|
|
26373
|
-
(icon || endAdornment) && /* @__PURE__ */ (0,
|
|
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,
|
|
26379
|
-
}) : isRouteTab(tab) ? /* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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
|
|
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,
|
|
26498
|
-
tags.map((tag) => /* @__PURE__ */ (0,
|
|
26499
|
-
onEdit && /* @__PURE__ */ (0,
|
|
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
|
|
26683
|
+
var import_react151 = require("react");
|
|
26505
26684
|
function useToast() {
|
|
26506
26685
|
const { setNotice, clear } = useToastContext();
|
|
26507
|
-
const showToast = (0,
|
|
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
|
|
26513
|
-
var
|
|
26514
|
-
var
|
|
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,
|
|
26520
|
-
return /* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
26745
|
+
"--zIndex": (0, import_runtime131.maybeCssVar)(zIndices.sideNav)
|
|
26567
26746
|
}],
|
|
26568
26747
|
top: ["top_var", {
|
|
26569
|
-
"--top": (0,
|
|
26748
|
+
"--top": (0, import_runtime131.maybeCssVar)(__maybeInc24(navTop))
|
|
26570
26749
|
}],
|
|
26571
26750
|
alignSelf: "asfs",
|
|
26572
26751
|
height: ["h_var", {
|
|
26573
|
-
"--height": (0,
|
|
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,
|
|
26762
|
+
"--top": (0, import_runtime131.maybeCssVar)(__maybeInc24(navTop))
|
|
26584
26763
|
}],
|
|
26585
26764
|
bottom: "bottom0",
|
|
26586
26765
|
zIndex: ["z_var", {
|
|
26587
|
-
"--zIndex": (0,
|
|
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,
|
|
26600
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
26610
|
-
/* @__PURE__ */ (0,
|
|
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
|
|
26627
|
-
var
|
|
26628
|
-
var
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
26838
|
+
"--zIndex": (0, import_runtime132.maybeCssVar)(zIndices.environmentBanner)
|
|
26660
26839
|
}],
|
|
26661
26840
|
width: ["w_var", {
|
|
26662
|
-
"--width": (0,
|
|
26841
|
+
"--width": (0, import_runtime132.maybeCssVar)(__maybeInc25(innerWidth))
|
|
26663
26842
|
}]
|
|
26664
|
-
}), ...tid.bannerSticky, children: /* @__PURE__ */ (0,
|
|
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
|
|
26671
|
-
var
|
|
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,
|
|
26682
|
-
/* @__PURE__ */ (0,
|
|
26683
|
-
/* @__PURE__ */ (0,
|
|
26684
|
-
/* @__PURE__ */ (0,
|
|
26685
|
-
/* @__PURE__ */ (0,
|
|
26686
|
-
actions && /* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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
|
|
26705
|
-
var
|
|
26883
|
+
var import_react155 = require("react");
|
|
26884
|
+
var import_runtime134 = require("@homebound/truss/runtime");
|
|
26706
26885
|
|
|
26707
26886
|
// src/layouts/useAutoHideOnScroll.ts
|
|
26708
|
-
var
|
|
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,
|
|
26719
|
-
const stateRef = (0,
|
|
26720
|
-
const [atTop, setAtTop] = (0,
|
|
26721
|
-
const atTopRef = (0,
|
|
26722
|
-
const getTopOffsetRef = (0,
|
|
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,
|
|
26725
|
-
const lastScrollHeight = (0,
|
|
26726
|
-
(0,
|
|
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
|
|
26799
|
-
var
|
|
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,
|
|
26802
|
-
const syncElementHeight = (0,
|
|
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,
|
|
26808
|
-
(0,
|
|
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
|
|
26816
|
-
var
|
|
26817
|
-
var NavbarLayoutHeightContext = (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,
|
|
26998
|
+
return /* @__PURE__ */ (0, import_jsx_runtime213.jsx)(NavbarLayoutHeightContext.Provider, { value, children });
|
|
26820
26999
|
}
|
|
26821
27000
|
function useNavbarLayoutHeight() {
|
|
26822
|
-
return (0,
|
|
27001
|
+
return (0, import_react154.useContext)(NavbarLayoutHeightContext);
|
|
26823
27002
|
}
|
|
26824
27003
|
|
|
26825
27004
|
// src/layouts/NavbarLayout/NavbarLayout.tsx
|
|
26826
|
-
var
|
|
26827
|
-
var
|
|
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,
|
|
26837
|
-
const spacerRef = (0,
|
|
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,
|
|
27034
|
+
"--zIndex": (0, import_runtime134.maybeCssVar)(zIndices.navbar)
|
|
26856
27035
|
}],
|
|
26857
27036
|
width: ["w_var", {
|
|
26858
|
-
"--width": (0,
|
|
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,
|
|
27046
|
+
"--zIndex": (0, import_runtime134.maybeCssVar)(zIndices.navbar)
|
|
26868
27047
|
}],
|
|
26869
27048
|
width: ["w_var", {
|
|
26870
|
-
"--width": (0,
|
|
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,
|
|
26880
|
-
return /* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
26892
|
-
/* @__PURE__ */ (0,
|
|
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
|
|
27076
|
+
var import_react156 = require("react");
|
|
26898
27077
|
|
|
26899
27078
|
// src/components/Headers/BaseHeader.tsx
|
|
26900
|
-
var
|
|
26901
|
-
var
|
|
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,
|
|
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,
|
|
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,
|
|
26942
|
-
breadcrumbs && /* @__PURE__ */ (0,
|
|
26943
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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
|
|
26960
|
-
var
|
|
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,
|
|
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
|
|
26977
|
-
var
|
|
26978
|
-
var
|
|
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,
|
|
27167
|
+
const bannerAndNavbarHeightRef = (0, import_react156.useRef)(bannerAndNavbarHeight);
|
|
26989
27168
|
bannerAndNavbarHeightRef.current = bannerAndNavbarHeight;
|
|
26990
|
-
const getBannerAndNavbarHeight = (0,
|
|
26991
|
-
const headerMetricsRef = (0,
|
|
26992
|
-
const spacerRef = (0,
|
|
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,
|
|
27187
|
+
"--left": (0, import_runtime137.maybeCssVar)(__maybeInc27(headerLeft))
|
|
27009
27188
|
}],
|
|
27010
27189
|
width: ["w_var", {
|
|
27011
|
-
"--width": (0,
|
|
27190
|
+
"--width": (0, import_runtime137.maybeCssVar)(__maybeInc27(headerWidth))
|
|
27012
27191
|
}],
|
|
27013
27192
|
zIndex: ["z_var", {
|
|
27014
|
-
"--zIndex": (0,
|
|
27193
|
+
"--zIndex": (0, import_runtime137.maybeCssVar)(zIndices.pageStickyHeader)
|
|
27015
27194
|
}]
|
|
27016
27195
|
} : {
|
|
27017
27196
|
position: "fixed",
|
|
27018
27197
|
left: ["left_var", {
|
|
27019
|
-
"--left": (0,
|
|
27198
|
+
"--left": (0, import_runtime137.maybeCssVar)(__maybeInc27(headerLeft))
|
|
27020
27199
|
}],
|
|
27021
27200
|
width: ["w_var", {
|
|
27022
|
-
"--width": (0,
|
|
27201
|
+
"--width": (0, import_runtime137.maybeCssVar)(__maybeInc27(headerWidth))
|
|
27023
27202
|
}],
|
|
27024
27203
|
zIndex: ["z_var", {
|
|
27025
|
-
"--zIndex": (0,
|
|
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,
|
|
27033
|
-
return /* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
27044
|
-
/* @__PURE__ */ (0,
|
|
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
|
|
27228
|
+
var import_react159 = require("react");
|
|
27050
27229
|
|
|
27051
27230
|
// src/components/Headers/WorkflowHeader.tsx
|
|
27052
|
-
var
|
|
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,
|
|
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
|
|
27239
|
+
var import_react157 = require("react");
|
|
27061
27240
|
function useScrollCollapse(enabled, restingOffset) {
|
|
27062
|
-
const [collapsed, setCollapsed] = (0,
|
|
27063
|
-
const collapsedRef = (0,
|
|
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,
|
|
27244
|
+
const restingOffsetRef = (0, import_react157.useRef)(restingOffset);
|
|
27066
27245
|
restingOffsetRef.current = restingOffset;
|
|
27067
|
-
const lastScrollYRef = (0,
|
|
27068
|
-
const lastScrollHeightRef = (0,
|
|
27069
|
-
(0,
|
|
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,
|
|
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
|
|
27290
|
+
var import_react158 = require("react");
|
|
27112
27291
|
var import_react_router_dom9 = require("react-router-dom");
|
|
27113
|
-
var
|
|
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,
|
|
27296
|
+
const isDirtyRef = (0, import_react158.useRef)(isDirty);
|
|
27118
27297
|
isDirtyRef.current = isDirty;
|
|
27119
|
-
(0,
|
|
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,
|
|
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,
|
|
27324
|
+
(0, import_react158.useEffect)(() => {
|
|
27146
27325
|
openModal({
|
|
27147
27326
|
allowClosing: false,
|
|
27148
|
-
content: /* @__PURE__ */ (0,
|
|
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
|
|
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,
|
|
27171
|
-
/* @__PURE__ */ (0,
|
|
27172
|
-
/* @__PURE__ */ (0,
|
|
27173
|
-
/* @__PURE__ */ (0,
|
|
27174
|
-
onSaveAndExit && /* @__PURE__ */ (0,
|
|
27175
|
-
isLastStep ? /* @__PURE__ */ (0,
|
|
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
|
|
27182
|
-
var
|
|
27183
|
-
var
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
27255
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
27443
|
+
"--width": (0, import_runtime138.maybeCssVar)(__maybeInc28(headerWidth))
|
|
27265
27444
|
}],
|
|
27266
27445
|
zIndex: ["z_var", {
|
|
27267
|
-
"--zIndex": (0,
|
|
27446
|
+
"--zIndex": (0, import_runtime138.maybeCssVar)(zIndices.pageStickyHeader)
|
|
27268
27447
|
}],
|
|
27269
27448
|
top: ["top_var", {
|
|
27270
|
-
"--top": (0,
|
|
27449
|
+
"--top": (0, import_runtime138.maybeCssVar)(__maybeInc28(outerTop))
|
|
27271
27450
|
}]
|
|
27272
27451
|
}), ...tid.header, children: headerEl }),
|
|
27273
|
-
/* @__PURE__ */ (0,
|
|
27274
|
-
showFooter && /* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|