@homebound/beam 3.74.0 → 3.75.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1040 -852
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +48 -1
- package/dist/index.d.ts +48 -1
- package/dist/index.js +845 -664
- package/dist/index.js.map +1 -1
- package/dist/truss.css +4 -0
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -6067,6 +6067,8 @@ var beamLayoutViewportWidthVar = "--beam-layout-viewport-width";
|
|
|
6067
6067
|
var beamLayoutViewportHeightVar = "--beam-layout-viewport-height";
|
|
6068
6068
|
var beamSideNavLayoutWidthVar = "--beam-side-nav-layout-width";
|
|
6069
6069
|
var beamTableActionsHeightVar = "--beam-table-actions-height";
|
|
6070
|
+
var beamRightPaneWidthVar = "--beam-right-pane-width";
|
|
6071
|
+
var beamFloatingRightOffsetVar = "--beam-floating-right-offset";
|
|
6070
6072
|
var beamWorkflowLayoutFooterHeightVar = "--beam-workflow-layout-footer-height";
|
|
6071
6073
|
function documentScrollChromeLeft() {
|
|
6072
6074
|
return `var(${beamSideNavLayoutWidthVar}, 0px)`;
|
|
@@ -6074,6 +6076,12 @@ function documentScrollChromeLeft() {
|
|
|
6074
6076
|
function documentScrollChromeWidth() {
|
|
6075
6077
|
return `calc(var(${beamLayoutViewportWidthVar}, 100vw) - var(${beamSideNavLayoutWidthVar}, 0px))`;
|
|
6076
6078
|
}
|
|
6079
|
+
function documentScrollRightPaneHeight() {
|
|
6080
|
+
return `calc(var(${beamLayoutViewportHeightVar}, 100vh) - ${stickyTableHeaderOffset()})`;
|
|
6081
|
+
}
|
|
6082
|
+
function documentScrollRightPaneWidth(maxPx) {
|
|
6083
|
+
return `min(${maxPx}px, ${documentScrollChromeWidth()})`;
|
|
6084
|
+
}
|
|
6077
6085
|
function bannerAndNavbarChromeTop() {
|
|
6078
6086
|
return `calc(var(${beamEnvironmentBannerLayoutHeightVar}, 0px) + var(${beamNavbarLayoutHeightVar}, 0px))`;
|
|
6079
6087
|
}
|
|
@@ -6086,6 +6094,9 @@ function stickyTableHeaderOffset(basePx = 0) {
|
|
|
6086
6094
|
function getFloatingBottomOffset(basePx = 0) {
|
|
6087
6095
|
return `calc(${basePx}px + var(${beamWorkflowLayoutFooterHeightVar}, 0px))`;
|
|
6088
6096
|
}
|
|
6097
|
+
function getFloatingRightOffset(basePx = 0) {
|
|
6098
|
+
return `calc(${basePx}px + var(${beamFloatingRightOffsetVar}, 0px))`;
|
|
6099
|
+
}
|
|
6089
6100
|
var pageContentPaddingXValue = "24px";
|
|
6090
6101
|
|
|
6091
6102
|
// src/utils/zIndices.ts
|
|
@@ -6100,6 +6111,8 @@ var zIndices = {
|
|
|
6100
6111
|
scrollToTop: 50,
|
|
6101
6112
|
// Page chrome - ensure these items sit above the table
|
|
6102
6113
|
scrollShadow: 50,
|
|
6114
|
+
// Document-scroll detail pane (DocumentScrollRightPaneLayout) — above table sticky chrome, below page sticky headers.
|
|
6115
|
+
rightPane: 60,
|
|
6103
6116
|
pageStickyHeader: 70,
|
|
6104
6117
|
// Sticky mobile action footer (WorkflowLayout) — same tier as pageStickyHeader; header and footer never overlap on screen.
|
|
6105
6118
|
pageStickyFooter: 70,
|
|
@@ -6113,6 +6126,9 @@ var zIndices = {
|
|
|
6113
6126
|
// Navbar mobile drawer + scrim — above navbar; below environment banner.
|
|
6114
6127
|
navbarMobileMenuScrim: 124,
|
|
6115
6128
|
navbarMobileMenu: 125,
|
|
6129
|
+
// Document-scroll right pane on `sm` — full-bleed overlay below the env banner; covers navbar /
|
|
6130
|
+
// page chrome / table actions but must not paint over the banner.
|
|
6131
|
+
rightPaneMobile: 126,
|
|
6116
6132
|
// Environment banner (EnvironmentBannerLayout) — above navbar mobile menu; below overlay scrims.
|
|
6117
6133
|
environmentBanner: 130,
|
|
6118
6134
|
// Overlay scrims — above app chrome (including the environment banner); modal above SuperDrawer
|
|
@@ -9070,9 +9086,10 @@ function RowImpl(props) {
|
|
|
9070
9086
|
"--left": maybeCssVar_12(__maybeInc6(columnIndex === 0 ? `var(${beamSideNavLayoutWidthVar}, 0px)` : `calc(var(${beamSideNavLayoutWidthVar}, 0px) + (${columnSizes.slice(0, columnIndex).join(" + ")}))`))
|
|
9071
9087
|
}]
|
|
9072
9088
|
} : {},
|
|
9089
|
+
// Offset by the open right pane so sticky-right cells pin to the clear edge, not under it (0 when closed).
|
|
9073
9090
|
...maybeSticky === "right" ? {
|
|
9074
9091
|
right: ["right_var", {
|
|
9075
|
-
"--right": maybeCssVar_12(__maybeInc6(columnIndex + 1 === columnSizes.length ?
|
|
9092
|
+
"--right": maybeCssVar_12(__maybeInc6(columnIndex + 1 === columnSizes.length ? `var(${beamRightPaneWidthVar}, 0px)` : `calc(var(${beamRightPaneWidthVar}, 0px) + (${columnSizes.slice(columnIndex + 1 - columnSizes.length).join(" + ")}))`))
|
|
9076
9093
|
}]
|
|
9077
9094
|
} : {}
|
|
9078
9095
|
} : {};
|
|
@@ -16844,7 +16861,7 @@ function DocumentScrollToTopButton({
|
|
|
16844
16861
|
"--bottom": maybeCssVar28(__maybeInc11(getFloatingBottomOffset(scrollToTopOffsetPx)))
|
|
16845
16862
|
}],
|
|
16846
16863
|
right: ["right_var", {
|
|
16847
|
-
"--right":
|
|
16864
|
+
"--right": maybeCssVar28(__maybeInc11(getFloatingRightOffset(scrollToTopOffsetPx)))
|
|
16848
16865
|
}],
|
|
16849
16866
|
zIndex: ["z_var", {
|
|
16850
16867
|
"--zIndex": maybeCssVar28(zIndices.scrollToTop)
|
|
@@ -18186,7 +18203,7 @@ var variantStyles3 = {
|
|
|
18186
18203
|
};
|
|
18187
18204
|
|
|
18188
18205
|
// src/components/BeamContext.tsx
|
|
18189
|
-
import { createContext as
|
|
18206
|
+
import { createContext as createContext12, useContext as useContext23, useMemo as useMemo44, useReducer, useRef as useRef53 } from "react";
|
|
18190
18207
|
import { OverlayProvider } from "react-aria";
|
|
18191
18208
|
|
|
18192
18209
|
// src/components/Modal/Modal.tsx
|
|
@@ -21034,7 +21051,7 @@ function invertSpacing(value) {
|
|
|
21034
21051
|
|
|
21035
21052
|
// src/components/Layout/GridTableLayout/GridTableLayout.tsx
|
|
21036
21053
|
import { useResizeObserver as useResizeObserver5 } from "@react-aria/utils";
|
|
21037
|
-
import
|
|
21054
|
+
import React21, { useCallback as useCallback30, useEffect as useEffect29, useLayoutEffect as useLayoutEffect7, useMemo as useMemo43, useRef as useRef52, useState as useState46 } from "react";
|
|
21038
21055
|
|
|
21039
21056
|
// src/components/Filters/utils.tsx
|
|
21040
21057
|
function getActiveFilterCount(filter) {
|
|
@@ -21054,14 +21071,214 @@ function isGridTableProps(props) {
|
|
|
21054
21071
|
return "rows" in props;
|
|
21055
21072
|
}
|
|
21056
21073
|
|
|
21074
|
+
// src/components/Layout/RightPaneLayout/DocumentScrollRightPaneLayout.tsx
|
|
21075
|
+
import { useLayoutEffect as useLayoutEffect6 } from "react";
|
|
21076
|
+
import { mergeProps as mergeProps26 } from "@homebound/truss/runtime";
|
|
21077
|
+
|
|
21078
|
+
// src/components/Layout/RightPaneLayout/DocumentScrollRightPane.tsx
|
|
21079
|
+
import { AnimatePresence as AnimatePresence3, motion as motion3 } from "framer-motion";
|
|
21080
|
+
import { useEffect as useEffect27 } from "react";
|
|
21081
|
+
import { usePreventScroll as usePreventScroll2 } from "react-aria";
|
|
21082
|
+
import { createPortal as createPortal5 } from "react-dom";
|
|
21083
|
+
|
|
21084
|
+
// src/layouts/EnvironmentBannerLayout/EnvironmentBannerLayoutHeightContext.tsx
|
|
21085
|
+
import { createContext as createContext11, useContext as useContext21 } from "react";
|
|
21086
|
+
import { jsx as jsx143 } from "react/jsx-runtime";
|
|
21087
|
+
var EnvironmentBannerLayoutHeightContext = createContext11(0);
|
|
21088
|
+
function EnvironmentBannerLayoutHeightProvider({ value, children }) {
|
|
21089
|
+
return /* @__PURE__ */ jsx143(EnvironmentBannerLayoutHeightContext.Provider, { value, children });
|
|
21090
|
+
}
|
|
21091
|
+
function useEnvironmentBannerLayoutHeight() {
|
|
21092
|
+
return useContext21(EnvironmentBannerLayoutHeightContext);
|
|
21093
|
+
}
|
|
21094
|
+
|
|
21095
|
+
// src/components/Layout/RightPaneLayout/RightPaneContext.tsx
|
|
21096
|
+
import React20, { useCallback as useCallback27, useContext as useContext22, useMemo as useMemo38, useState as useState42 } from "react";
|
|
21097
|
+
import { jsx as jsx144 } from "react/jsx-runtime";
|
|
21098
|
+
var RightPaneContext = React20.createContext({
|
|
21099
|
+
openInPane: () => {
|
|
21100
|
+
},
|
|
21101
|
+
closePane: () => {
|
|
21102
|
+
},
|
|
21103
|
+
clearPane: () => {
|
|
21104
|
+
},
|
|
21105
|
+
isRightPaneOpen: false,
|
|
21106
|
+
rightPaneContent: null
|
|
21107
|
+
});
|
|
21108
|
+
function RightPaneProvider({ children }) {
|
|
21109
|
+
const [rightPaneContent, setRightPaneContent] = useState42(void 0);
|
|
21110
|
+
const [isRightPaneOpen, setIsRightPaneOpen] = useState42(false);
|
|
21111
|
+
const openInPane = useCallback27(
|
|
21112
|
+
(opts) => {
|
|
21113
|
+
setRightPaneContent(opts?.content);
|
|
21114
|
+
setIsRightPaneOpen(true);
|
|
21115
|
+
},
|
|
21116
|
+
[setRightPaneContent]
|
|
21117
|
+
);
|
|
21118
|
+
const closePane = useCallback27(() => setIsRightPaneOpen(false), []);
|
|
21119
|
+
const clearPane = useCallback27(() => setRightPaneContent(void 0), [setRightPaneContent]);
|
|
21120
|
+
const context = useMemo38(
|
|
21121
|
+
() => ({ openInPane, closePane, clearPane, rightPaneContent, isRightPaneOpen }),
|
|
21122
|
+
[openInPane, closePane, rightPaneContent, clearPane, isRightPaneOpen]
|
|
21123
|
+
);
|
|
21124
|
+
return /* @__PURE__ */ jsx144(RightPaneContext.Provider, { value: context, children });
|
|
21125
|
+
}
|
|
21126
|
+
function useRightPaneContext() {
|
|
21127
|
+
return useContext22(RightPaneContext);
|
|
21128
|
+
}
|
|
21129
|
+
|
|
21130
|
+
// src/components/Layout/RightPaneLayout/DocumentScrollRightPane.tsx
|
|
21131
|
+
import { mergeProps as mergeProps25, maybeCssVar as maybeCssVar40 } from "@homebound/truss/runtime";
|
|
21132
|
+
import { jsx as jsx145 } from "react/jsx-runtime";
|
|
21133
|
+
var __maybeInc17 = (inc) => {
|
|
21134
|
+
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
21135
|
+
};
|
|
21136
|
+
function DocumentScrollRightPane({
|
|
21137
|
+
paneWidth
|
|
21138
|
+
}) {
|
|
21139
|
+
const {
|
|
21140
|
+
isRightPaneOpen,
|
|
21141
|
+
rightPaneContent,
|
|
21142
|
+
clearPane,
|
|
21143
|
+
closePane
|
|
21144
|
+
} = useRightPaneContext();
|
|
21145
|
+
const tid = useTestIds({}, "rightPaneContent");
|
|
21146
|
+
const {
|
|
21147
|
+
sm
|
|
21148
|
+
} = useBreakpoint();
|
|
21149
|
+
const bannerHeightPx = useEnvironmentBannerLayoutHeight();
|
|
21150
|
+
const isMobileOverlay = sm && isRightPaneOpen;
|
|
21151
|
+
usePreventScroll2({
|
|
21152
|
+
isDisabled: !isMobileOverlay
|
|
21153
|
+
});
|
|
21154
|
+
useEffect27(() => closePane, [closePane]);
|
|
21155
|
+
const slideX = sm ? "100%" : paneWidth;
|
|
21156
|
+
const pane = /* @__PURE__ */ jsx145(AnimatePresence3, { children: isRightPaneOpen && /* @__PURE__ */ jsx145(motion3.div, { ...tid, ...mergeProps25(void 0, sm ? {
|
|
21157
|
+
top: bannerHeightPx
|
|
21158
|
+
} : void 0, sm ? {
|
|
21159
|
+
position: "fixed",
|
|
21160
|
+
right: "right0",
|
|
21161
|
+
bottom: "bottom0",
|
|
21162
|
+
left: "left0",
|
|
21163
|
+
overflowY: "oya",
|
|
21164
|
+
backgroundColor: ["bgColor_var", {
|
|
21165
|
+
"--backgroundColor": "var(--b-surface)"
|
|
21166
|
+
}],
|
|
21167
|
+
zIndex: ["z_var", {
|
|
21168
|
+
"--zIndex": maybeCssVar40(zIndices.rightPaneMobile)
|
|
21169
|
+
}]
|
|
21170
|
+
} : {
|
|
21171
|
+
position: "fixed",
|
|
21172
|
+
transition: "transitionTop",
|
|
21173
|
+
top: ["top_var", {
|
|
21174
|
+
"--top": maybeCssVar40(__maybeInc17(stickyTableHeaderOffset()))
|
|
21175
|
+
}],
|
|
21176
|
+
right: "right_0",
|
|
21177
|
+
height: ["h_var", {
|
|
21178
|
+
"--height": maybeCssVar40(__maybeInc17(documentScrollRightPaneHeight()))
|
|
21179
|
+
}],
|
|
21180
|
+
width: ["w_var", {
|
|
21181
|
+
"--width": maybeCssVar40(__maybeInc17(documentScrollRightPaneWidth(paneWidth)))
|
|
21182
|
+
}],
|
|
21183
|
+
overflowY: "oya",
|
|
21184
|
+
backgroundColor: ["bgColor_var", {
|
|
21185
|
+
"--backgroundColor": "var(--b-surface)"
|
|
21186
|
+
}],
|
|
21187
|
+
zIndex: ["z_var", {
|
|
21188
|
+
"--zIndex": maybeCssVar40(zIndices.rightPane)
|
|
21189
|
+
}],
|
|
21190
|
+
borderLeftStyle: "bls_solid",
|
|
21191
|
+
borderLeftWidth: "blw_1px",
|
|
21192
|
+
borderColor: ["bc_var", {
|
|
21193
|
+
"--borderColor": "var(--b-surface-separator)"
|
|
21194
|
+
}]
|
|
21195
|
+
}), initial: {
|
|
21196
|
+
x: slideX
|
|
21197
|
+
}, animate: {
|
|
21198
|
+
x: 0
|
|
21199
|
+
}, exit: {
|
|
21200
|
+
x: slideX
|
|
21201
|
+
}, transition: {
|
|
21202
|
+
ease: "linear",
|
|
21203
|
+
duration: 0.2
|
|
21204
|
+
}, onAnimationComplete: (definition) => definition.x !== 0 && clearPane(), children: rightPaneContent }, "documentScrollRightPane") });
|
|
21205
|
+
return sm ? createPortal5(pane, document.body) : pane;
|
|
21206
|
+
}
|
|
21207
|
+
|
|
21208
|
+
// src/components/Layout/RightPaneLayout/DocumentScrollRightPaneLayout.tsx
|
|
21209
|
+
import { jsx as jsx146, jsxs as jsxs69 } from "react/jsx-runtime";
|
|
21210
|
+
var defaultDocumentScrollRightPaneWidth = 450;
|
|
21211
|
+
function DocumentScrollRightPaneLayout(props) {
|
|
21212
|
+
const {
|
|
21213
|
+
children,
|
|
21214
|
+
paneWidth = defaultDocumentScrollRightPaneWidth
|
|
21215
|
+
} = props;
|
|
21216
|
+
const tid = useTestIds(props, "documentScrollRightPaneLayout");
|
|
21217
|
+
const {
|
|
21218
|
+
isRightPaneOpen
|
|
21219
|
+
} = useRightPaneContext();
|
|
21220
|
+
const {
|
|
21221
|
+
sm
|
|
21222
|
+
} = useBreakpoint();
|
|
21223
|
+
const isSplitPaneOpen = isRightPaneOpen && !sm;
|
|
21224
|
+
const effectivePaneWidth = isSplitPaneOpen ? documentScrollRightPaneWidth(paneWidth) : "0px";
|
|
21225
|
+
useLayoutEffect6(() => {
|
|
21226
|
+
const root = document.documentElement;
|
|
21227
|
+
const previous = root.style.getPropertyValue(beamFloatingRightOffsetVar);
|
|
21228
|
+
root.style.setProperty(beamFloatingRightOffsetVar, effectivePaneWidth);
|
|
21229
|
+
return () => {
|
|
21230
|
+
if (previous) {
|
|
21231
|
+
root.style.setProperty(beamFloatingRightOffsetVar, previous);
|
|
21232
|
+
} else {
|
|
21233
|
+
root.style.removeProperty(beamFloatingRightOffsetVar);
|
|
21234
|
+
}
|
|
21235
|
+
};
|
|
21236
|
+
}, [effectivePaneWidth]);
|
|
21237
|
+
return /* @__PURE__ */ jsxs69("div", { ...mergeProps26(void 0, {
|
|
21238
|
+
[beamRightPaneWidthVar]: effectivePaneWidth
|
|
21239
|
+
}, {
|
|
21240
|
+
width: "w100"
|
|
21241
|
+
}), ...tid, children: [
|
|
21242
|
+
/* @__PURE__ */ jsx146(DocumentScrollRightPaneSpacer, { paneWidth, isOpen: isSplitPaneOpen, children }),
|
|
21243
|
+
/* @__PURE__ */ jsx146(DocumentScrollRightPane, { paneWidth })
|
|
21244
|
+
] });
|
|
21245
|
+
}
|
|
21246
|
+
function DocumentScrollRightPaneSpacer({
|
|
21247
|
+
paneWidth,
|
|
21248
|
+
isOpen,
|
|
21249
|
+
children
|
|
21250
|
+
}) {
|
|
21251
|
+
const tid = useTestIds({}, "rightPaneSpacer");
|
|
21252
|
+
const effectivePaneWidth = documentScrollRightPaneWidth(paneWidth);
|
|
21253
|
+
return /* @__PURE__ */ jsxs69("div", { ...mergeProps26(void 0, {
|
|
21254
|
+
width: isOpen ? "fit-content" : "100%"
|
|
21255
|
+
}, {
|
|
21256
|
+
display: "df",
|
|
21257
|
+
minWidth: "mw100"
|
|
21258
|
+
}), children: [
|
|
21259
|
+
/* @__PURE__ */ jsx146("div", { ...mergeProps26(void 0, {
|
|
21260
|
+
width: `min(100%, ${documentScrollChromeWidth()})`
|
|
21261
|
+
}, {
|
|
21262
|
+
flexShrink: "fs0",
|
|
21263
|
+
minWidth: "mw_fit_content"
|
|
21264
|
+
}), children }),
|
|
21265
|
+
/* @__PURE__ */ jsx146("div", { "aria-hidden": true, ...mergeProps26(void 0, {
|
|
21266
|
+
width: isOpen ? effectivePaneWidth : 0
|
|
21267
|
+
}, {
|
|
21268
|
+
flexShrink: "fs0",
|
|
21269
|
+
flexGrow: "fg0"
|
|
21270
|
+
}), ...isOpen ? tid : {} })
|
|
21271
|
+
] });
|
|
21272
|
+
}
|
|
21273
|
+
|
|
21057
21274
|
// src/components/Layout/GridTableLayout/GridTableLayoutActions.tsx
|
|
21058
|
-
import { memo as memo2, useMemo as
|
|
21275
|
+
import { memo as memo2, useMemo as useMemo41, useState as useState44 } from "react";
|
|
21059
21276
|
|
|
21060
21277
|
// src/components/ButtonMenu.tsx
|
|
21061
21278
|
import { useRef as useRef50 } from "react";
|
|
21062
21279
|
import { useMenuTrigger as useMenuTrigger2 } from "react-aria";
|
|
21063
21280
|
import { useMenuTriggerState as useMenuTriggerState2 } from "react-stately";
|
|
21064
|
-
import { jsx as
|
|
21281
|
+
import { jsx as jsx147 } from "react/jsx-runtime";
|
|
21065
21282
|
function ButtonMenu(props) {
|
|
21066
21283
|
const { defaultOpen, disabled, items, persistentItems, trigger, searchable } = props;
|
|
21067
21284
|
let selectedItem, onChange;
|
|
@@ -21076,7 +21293,7 @@ function ButtonMenu(props) {
|
|
|
21076
21293
|
props,
|
|
21077
21294
|
isTextButton(trigger) ? labelOr(trigger, "buttonMenu") : isNavLinkButton(trigger) ? defaultTestId(trigger.navLabel) : isIconButton(trigger) ? trigger.icon : trigger.name
|
|
21078
21295
|
);
|
|
21079
|
-
return /* @__PURE__ */
|
|
21296
|
+
return /* @__PURE__ */ jsx147(OverlayTrigger, { ...props, menuTriggerProps, state, buttonRef, ...tid, children: /* @__PURE__ */ jsx147(
|
|
21080
21297
|
Menu,
|
|
21081
21298
|
{
|
|
21082
21299
|
ariaMenuProps: menuProps,
|
|
@@ -21095,8 +21312,8 @@ function isSelectionButtonMenuProps(props) {
|
|
|
21095
21312
|
}
|
|
21096
21313
|
|
|
21097
21314
|
// src/components/CountBadge.tsx
|
|
21098
|
-
import { trussProps as trussProps84, maybeCssVar as
|
|
21099
|
-
import { jsx as
|
|
21315
|
+
import { trussProps as trussProps84, maybeCssVar as maybeCssVar41 } from "@homebound/truss/runtime";
|
|
21316
|
+
import { jsx as jsx148 } from "react/jsx-runtime";
|
|
21100
21317
|
function CountBadge(props) {
|
|
21101
21318
|
const {
|
|
21102
21319
|
count,
|
|
@@ -21107,7 +21324,7 @@ function CountBadge(props) {
|
|
|
21107
21324
|
} = props;
|
|
21108
21325
|
const tid = useTestIds(otherProps, "countBadge");
|
|
21109
21326
|
if (hideIfZero && count === 0) return null;
|
|
21110
|
-
return /* @__PURE__ */
|
|
21327
|
+
return /* @__PURE__ */ jsx148("span", { ...tid, ...trussProps84({
|
|
21111
21328
|
...{
|
|
21112
21329
|
height: ["sq_var", {
|
|
21113
21330
|
"--height": `${count > 100 ? 18 : 16}px`
|
|
@@ -21127,12 +21344,12 @@ function CountBadge(props) {
|
|
|
21127
21344
|
alignItems: "aic",
|
|
21128
21345
|
justifyContent: "jcc",
|
|
21129
21346
|
backgroundColor: ["bgColor_var", {
|
|
21130
|
-
"--backgroundColor":
|
|
21347
|
+
"--backgroundColor": maybeCssVar41(bgColor)
|
|
21131
21348
|
}]
|
|
21132
21349
|
},
|
|
21133
21350
|
...{
|
|
21134
21351
|
color: ["color_var", {
|
|
21135
|
-
"--color":
|
|
21352
|
+
"--color": maybeCssVar41(color)
|
|
21136
21353
|
}]
|
|
21137
21354
|
}
|
|
21138
21355
|
}), children: count });
|
|
@@ -21156,7 +21373,7 @@ var BaseFilter = class {
|
|
|
21156
21373
|
};
|
|
21157
21374
|
|
|
21158
21375
|
// src/components/Filters/DateFilter.tsx
|
|
21159
|
-
import { Fragment as Fragment30, jsx as
|
|
21376
|
+
import { Fragment as Fragment30, jsx as jsx149, jsxs as jsxs70 } from "react/jsx-runtime";
|
|
21160
21377
|
function dateFilter(props) {
|
|
21161
21378
|
return (key) => new DateFilter(key, props);
|
|
21162
21379
|
}
|
|
@@ -21178,10 +21395,10 @@ var DateFilter = class extends BaseFilter {
|
|
|
21178
21395
|
}
|
|
21179
21396
|
render(value, setValue, tid, inModal, vertical) {
|
|
21180
21397
|
const { label, operations, getOperationValue, getOperationLabel, defaultValue } = this.props;
|
|
21181
|
-
return /* @__PURE__ */
|
|
21182
|
-
vertical && /* @__PURE__ */
|
|
21183
|
-
/* @__PURE__ */
|
|
21184
|
-
/* @__PURE__ */
|
|
21398
|
+
return /* @__PURE__ */ jsxs70(Fragment30, { children: [
|
|
21399
|
+
vertical && /* @__PURE__ */ jsx149(Label, { label }),
|
|
21400
|
+
/* @__PURE__ */ jsxs70(CompoundField, { children: [
|
|
21401
|
+
/* @__PURE__ */ jsx149(
|
|
21185
21402
|
SelectField,
|
|
21186
21403
|
{
|
|
21187
21404
|
sizeToContent: true,
|
|
@@ -21203,7 +21420,7 @@ var DateFilter = class extends BaseFilter {
|
|
|
21203
21420
|
...tid[`${defaultTestId(this.label)}_dateOperation`]
|
|
21204
21421
|
}
|
|
21205
21422
|
),
|
|
21206
|
-
/* @__PURE__ */
|
|
21423
|
+
/* @__PURE__ */ jsx149(
|
|
21207
21424
|
DateField,
|
|
21208
21425
|
{
|
|
21209
21426
|
labelStyle: "inline",
|
|
@@ -21227,7 +21444,7 @@ function isDateFilterValue(value) {
|
|
|
21227
21444
|
}
|
|
21228
21445
|
|
|
21229
21446
|
// src/components/Filters/DateRangeFilter.tsx
|
|
21230
|
-
import { Fragment as Fragment31, jsx as
|
|
21447
|
+
import { Fragment as Fragment31, jsx as jsx150, jsxs as jsxs71 } from "react/jsx-runtime";
|
|
21231
21448
|
function dateRangeFilter(props) {
|
|
21232
21449
|
return (key) => new DateRangeFilter(key, props);
|
|
21233
21450
|
}
|
|
@@ -21249,9 +21466,9 @@ var DateRangeFilter = class extends BaseFilter {
|
|
|
21249
21466
|
}
|
|
21250
21467
|
render(value, setValue, tid, inModal, vertical) {
|
|
21251
21468
|
const { label, placeholderText, disabledDays, testFieldLabel, defaultValue } = this.props;
|
|
21252
|
-
return /* @__PURE__ */
|
|
21253
|
-
vertical && /* @__PURE__ */
|
|
21254
|
-
/* @__PURE__ */
|
|
21469
|
+
return /* @__PURE__ */ jsxs71(Fragment31, { children: [
|
|
21470
|
+
vertical && /* @__PURE__ */ jsx150(Label, { label }),
|
|
21471
|
+
/* @__PURE__ */ jsx150(
|
|
21255
21472
|
DateRangeField,
|
|
21256
21473
|
{
|
|
21257
21474
|
labelStyle: "inline",
|
|
@@ -21307,7 +21524,7 @@ function resolveNestedOptions(optionsOrLoad) {
|
|
|
21307
21524
|
}
|
|
21308
21525
|
|
|
21309
21526
|
// src/components/Filters/MultiFilter.tsx
|
|
21310
|
-
import { jsx as
|
|
21527
|
+
import { jsx as jsx151 } from "react/jsx-runtime";
|
|
21311
21528
|
function multiFilter(props) {
|
|
21312
21529
|
return (key) => new MultiFilter(key, props);
|
|
21313
21530
|
}
|
|
@@ -21321,7 +21538,7 @@ var MultiFilter = class extends BaseFilter {
|
|
|
21321
21538
|
const { disabledOptions } = this.props;
|
|
21322
21539
|
const disabledOptionsWithReasons = Object.fromEntries(disabledOptions?.map(disabledOptionToKeyedTuple) ?? []);
|
|
21323
21540
|
const disabledKeys = Object.keys(disabledOptionsWithReasons);
|
|
21324
|
-
return /* @__PURE__ */
|
|
21541
|
+
return /* @__PURE__ */ jsx151(
|
|
21325
21542
|
ToggleChipGroup,
|
|
21326
21543
|
{
|
|
21327
21544
|
label: this.label,
|
|
@@ -21345,7 +21562,7 @@ var MultiFilter = class extends BaseFilter {
|
|
|
21345
21562
|
);
|
|
21346
21563
|
}
|
|
21347
21564
|
const { defaultValue, nothingSelectedText, ...props } = this.props;
|
|
21348
|
-
return /* @__PURE__ */
|
|
21565
|
+
return /* @__PURE__ */ jsx151(
|
|
21349
21566
|
MultiSelectField,
|
|
21350
21567
|
{
|
|
21351
21568
|
...props,
|
|
@@ -21364,7 +21581,7 @@ var MultiFilter = class extends BaseFilter {
|
|
|
21364
21581
|
};
|
|
21365
21582
|
|
|
21366
21583
|
// src/components/Filters/NumberRangeFilter.tsx
|
|
21367
|
-
import { Fragment as Fragment32, jsx as
|
|
21584
|
+
import { Fragment as Fragment32, jsx as jsx152, jsxs as jsxs72 } from "react/jsx-runtime";
|
|
21368
21585
|
function numberRangeFilter(props) {
|
|
21369
21586
|
return (key) => new NumberRangeFilter(key, props);
|
|
21370
21587
|
}
|
|
@@ -21381,10 +21598,10 @@ var NumberRangeFilter = class extends BaseFilter {
|
|
|
21381
21598
|
} = this.props;
|
|
21382
21599
|
const min = value?.min ?? void 0;
|
|
21383
21600
|
const max = value?.max ?? void 0;
|
|
21384
|
-
return /* @__PURE__ */
|
|
21385
|
-
vertical && /* @__PURE__ */
|
|
21386
|
-
/* @__PURE__ */
|
|
21387
|
-
/* @__PURE__ */
|
|
21601
|
+
return /* @__PURE__ */ jsxs72(Fragment32, { children: [
|
|
21602
|
+
vertical && /* @__PURE__ */ jsxs72("div", { ...tid, children: [
|
|
21603
|
+
/* @__PURE__ */ jsx152(Label, { label }),
|
|
21604
|
+
/* @__PURE__ */ jsx152("div", { className: "pb1", children: /* @__PURE__ */ jsx152(NumberField, { labelStyle: "inline", clearable: true, label: "Min", value: min, type: numberFieldType, numberFormatOptions, onChange: (minVal) => {
|
|
21388
21605
|
const maxValue = max ? {
|
|
21389
21606
|
max
|
|
21390
21607
|
} : {};
|
|
@@ -21393,7 +21610,7 @@ var NumberRangeFilter = class extends BaseFilter {
|
|
|
21393
21610
|
...maxValue
|
|
21394
21611
|
} : void 0);
|
|
21395
21612
|
}, ...tid[`${defaultTestId(label)}_min_vertical`] }) }),
|
|
21396
|
-
/* @__PURE__ */
|
|
21613
|
+
/* @__PURE__ */ jsx152(NumberField, { labelStyle: "inline", clearable: true, label: "Max", value: max, type: numberFieldType, numberFormatOptions, onChange: (maxVal) => {
|
|
21397
21614
|
const minValue = min ? {
|
|
21398
21615
|
min
|
|
21399
21616
|
} : {};
|
|
@@ -21403,8 +21620,8 @@ var NumberRangeFilter = class extends BaseFilter {
|
|
|
21403
21620
|
} : void 0);
|
|
21404
21621
|
}, ...tid[`${defaultTestId(label)}_max_vertical`] })
|
|
21405
21622
|
] }),
|
|
21406
|
-
!vertical && /* @__PURE__ */
|
|
21407
|
-
/* @__PURE__ */
|
|
21623
|
+
!vertical && /* @__PURE__ */ jsxs72(CompoundField, { ...tid, children: [
|
|
21624
|
+
/* @__PURE__ */ jsx152(
|
|
21408
21625
|
NumberField,
|
|
21409
21626
|
{
|
|
21410
21627
|
sizeToContent: !inModal,
|
|
@@ -21426,7 +21643,7 @@ var NumberRangeFilter = class extends BaseFilter {
|
|
|
21426
21643
|
...tid[`${defaultTestId(label)}_min`]
|
|
21427
21644
|
}
|
|
21428
21645
|
),
|
|
21429
|
-
/* @__PURE__ */
|
|
21646
|
+
/* @__PURE__ */ jsx152(NumberField, { sizeToContent: !inModal, labelStyle: "inline", clearable: true, label: !inModal ? `${label} Max` : "Max", value: max, type: numberFieldType, numberFormatOptions, onChange: (maxVal) => {
|
|
21430
21647
|
const minValue = min ? {
|
|
21431
21648
|
min
|
|
21432
21649
|
} : {};
|
|
@@ -21441,7 +21658,7 @@ var NumberRangeFilter = class extends BaseFilter {
|
|
|
21441
21658
|
};
|
|
21442
21659
|
|
|
21443
21660
|
// src/components/Filters/SingleFilter.tsx
|
|
21444
|
-
import { jsx as
|
|
21661
|
+
import { jsx as jsx153 } from "react/jsx-runtime";
|
|
21445
21662
|
function singleFilter(props) {
|
|
21446
21663
|
return (key) => new SingleFilter(key, props);
|
|
21447
21664
|
}
|
|
@@ -21462,7 +21679,7 @@ var SingleFilter = class extends BaseFilter {
|
|
|
21462
21679
|
...props
|
|
21463
21680
|
} = this.props;
|
|
21464
21681
|
const options = Array.isArray(maybeOptions) ? [allOption, ...maybeOptions] : { ...maybeOptions, current: maybeOptions.current };
|
|
21465
|
-
return /* @__PURE__ */
|
|
21682
|
+
return /* @__PURE__ */ jsx153(
|
|
21466
21683
|
SelectField,
|
|
21467
21684
|
{
|
|
21468
21685
|
...props,
|
|
@@ -21482,7 +21699,7 @@ var SingleFilter = class extends BaseFilter {
|
|
|
21482
21699
|
};
|
|
21483
21700
|
|
|
21484
21701
|
// src/components/Filters/TreeFilter.tsx
|
|
21485
|
-
import { jsx as
|
|
21702
|
+
import { jsx as jsx154 } from "react/jsx-runtime";
|
|
21486
21703
|
function treeFilter(props) {
|
|
21487
21704
|
return (key) => new TreeFilter(key, props);
|
|
21488
21705
|
}
|
|
@@ -21493,7 +21710,7 @@ var TreeFilter = class extends BaseFilter {
|
|
|
21493
21710
|
}
|
|
21494
21711
|
render(value, setValue, tid, inModal, vertical) {
|
|
21495
21712
|
const { defaultValue, nothingSelectedText, filterBy = "root", ...props } = this.props;
|
|
21496
|
-
return /* @__PURE__ */
|
|
21713
|
+
return /* @__PURE__ */ jsx154(
|
|
21497
21714
|
TreeSelectField,
|
|
21498
21715
|
{
|
|
21499
21716
|
...props,
|
|
@@ -21513,7 +21730,7 @@ var TreeFilter = class extends BaseFilter {
|
|
|
21513
21730
|
};
|
|
21514
21731
|
|
|
21515
21732
|
// src/components/Filters/BooleanFilter.tsx
|
|
21516
|
-
import { jsx as
|
|
21733
|
+
import { jsx as jsx155 } from "react/jsx-runtime";
|
|
21517
21734
|
function booleanFilter(props) {
|
|
21518
21735
|
return (key) => new BooleanFilter(key, props);
|
|
21519
21736
|
}
|
|
@@ -21525,7 +21742,7 @@ var BooleanFilter = class extends BaseFilter {
|
|
|
21525
21742
|
}
|
|
21526
21743
|
render(value, setValue, tid, inModal, vertical) {
|
|
21527
21744
|
const { options = defaultBooleanOptions, label, defaultValue, ...props } = this.props;
|
|
21528
|
-
return /* @__PURE__ */
|
|
21745
|
+
return /* @__PURE__ */ jsx155(
|
|
21529
21746
|
SelectField,
|
|
21530
21747
|
{
|
|
21531
21748
|
...props,
|
|
@@ -21552,7 +21769,7 @@ var defaultBooleanOptions = [
|
|
|
21552
21769
|
];
|
|
21553
21770
|
|
|
21554
21771
|
// src/components/Filters/CheckboxFilter.tsx
|
|
21555
|
-
import { jsx as
|
|
21772
|
+
import { jsx as jsx156 } from "react/jsx-runtime";
|
|
21556
21773
|
function checkboxFilter(props) {
|
|
21557
21774
|
return (key) => new CheckboxFilter(key, {
|
|
21558
21775
|
// If the user has set the offValue, that should be the default b/c we're only a two-state
|
|
@@ -21567,7 +21784,7 @@ var CheckboxFilter = class extends BaseFilter {
|
|
|
21567
21784
|
}
|
|
21568
21785
|
render(value, setValue, tid, inModal, vertical) {
|
|
21569
21786
|
const { defaultValue, onValue = true, offValue = void 0, ...props } = this.props;
|
|
21570
|
-
return /* @__PURE__ */
|
|
21787
|
+
return /* @__PURE__ */ jsx156(
|
|
21571
21788
|
Checkbox,
|
|
21572
21789
|
{
|
|
21573
21790
|
...props,
|
|
@@ -21586,10 +21803,10 @@ var CheckboxFilter = class extends BaseFilter {
|
|
|
21586
21803
|
};
|
|
21587
21804
|
|
|
21588
21805
|
// src/components/Filters/FilterModal.tsx
|
|
21589
|
-
import { useState as
|
|
21806
|
+
import { useState as useState43 } from "react";
|
|
21590
21807
|
|
|
21591
21808
|
// src/components/Modal/ConfirmCloseModal.tsx
|
|
21592
|
-
import { Fragment as Fragment33, jsx as
|
|
21809
|
+
import { Fragment as Fragment33, jsx as jsx157, jsxs as jsxs73 } from "react/jsx-runtime";
|
|
21593
21810
|
function ConfirmCloseModal(props) {
|
|
21594
21811
|
const {
|
|
21595
21812
|
onClose,
|
|
@@ -21603,11 +21820,11 @@ function ConfirmCloseModal(props) {
|
|
|
21603
21820
|
function closeModal() {
|
|
21604
21821
|
modalState.current = void 0;
|
|
21605
21822
|
}
|
|
21606
|
-
return /* @__PURE__ */
|
|
21607
|
-
/* @__PURE__ */
|
|
21608
|
-
/* @__PURE__ */
|
|
21609
|
-
/* @__PURE__ */
|
|
21610
|
-
/* @__PURE__ */
|
|
21823
|
+
return /* @__PURE__ */ jsxs73(Fragment33, { children: [
|
|
21824
|
+
/* @__PURE__ */ jsx157(ModalHeader, { children: title }),
|
|
21825
|
+
/* @__PURE__ */ jsx157(ModalBody, { children: /* @__PURE__ */ jsx157("p", { children: message }) }),
|
|
21826
|
+
/* @__PURE__ */ jsxs73(ModalFooter, { children: [
|
|
21827
|
+
/* @__PURE__ */ jsx157(
|
|
21611
21828
|
Button,
|
|
21612
21829
|
{
|
|
21613
21830
|
variant: "quaternary",
|
|
@@ -21618,7 +21835,7 @@ function ConfirmCloseModal(props) {
|
|
|
21618
21835
|
}
|
|
21619
21836
|
}
|
|
21620
21837
|
),
|
|
21621
|
-
/* @__PURE__ */
|
|
21838
|
+
/* @__PURE__ */ jsx157(
|
|
21622
21839
|
Button,
|
|
21623
21840
|
{
|
|
21624
21841
|
label: continueText,
|
|
@@ -21633,26 +21850,26 @@ function ConfirmCloseModal(props) {
|
|
|
21633
21850
|
}
|
|
21634
21851
|
|
|
21635
21852
|
// src/components/Modal/OpenModal.tsx
|
|
21636
|
-
import { useEffect as
|
|
21637
|
-
import { jsx as
|
|
21853
|
+
import { useEffect as useEffect28 } from "react";
|
|
21854
|
+
import { jsx as jsx158 } from "react/jsx-runtime";
|
|
21638
21855
|
function OpenModal(props) {
|
|
21639
21856
|
const { openModal } = useModal();
|
|
21640
21857
|
const { size, children, keepOpen } = props;
|
|
21641
|
-
|
|
21858
|
+
useEffect28(() => {
|
|
21642
21859
|
if (!keepOpen) {
|
|
21643
21860
|
openModal({ size, content: children });
|
|
21644
21861
|
}
|
|
21645
21862
|
}, [keepOpen, openModal, size, children]);
|
|
21646
21863
|
if (keepOpen) {
|
|
21647
|
-
return /* @__PURE__ */
|
|
21864
|
+
return /* @__PURE__ */ jsx158(Modal, { size, content: children });
|
|
21648
21865
|
} else {
|
|
21649
|
-
return /* @__PURE__ */
|
|
21866
|
+
return /* @__PURE__ */ jsx158("div", { children: "dummy content" });
|
|
21650
21867
|
}
|
|
21651
21868
|
}
|
|
21652
21869
|
|
|
21653
21870
|
// src/components/Filters/FilterModal.tsx
|
|
21654
21871
|
import { trussProps as trussProps85 } from "@homebound/truss/runtime";
|
|
21655
|
-
import { Fragment as Fragment34, jsx as
|
|
21872
|
+
import { Fragment as Fragment34, jsx as jsx159, jsxs as jsxs74 } from "react/jsx-runtime";
|
|
21656
21873
|
function FilterModal(props) {
|
|
21657
21874
|
const {
|
|
21658
21875
|
filter,
|
|
@@ -21663,20 +21880,20 @@ function FilterModal(props) {
|
|
|
21663
21880
|
const {
|
|
21664
21881
|
closeModal
|
|
21665
21882
|
} = useModal();
|
|
21666
|
-
const [modalFilter, setModalFilter] =
|
|
21667
|
-
return /* @__PURE__ */
|
|
21668
|
-
/* @__PURE__ */
|
|
21669
|
-
/* @__PURE__ */
|
|
21670
|
-
/* @__PURE__ */
|
|
21883
|
+
const [modalFilter, setModalFilter] = useState43(filter);
|
|
21884
|
+
return /* @__PURE__ */ jsxs74(Fragment34, { children: [
|
|
21885
|
+
/* @__PURE__ */ jsx159(ModalHeader, { children: "More Filters" }),
|
|
21886
|
+
/* @__PURE__ */ jsx159(ModalBody, { children: /* @__PURE__ */ jsx159("div", { className: "df fdc", children: safeEntries(filters).map(([key, f]) => /* @__PURE__ */ jsx159(ModalFilterItem, { label: f.hideLabelInModal ? void 0 : f.label, children: f.render(modalFilter[key], (value) => setModalFilter(updateFilter(modalFilter, key, value)), testId, true, false) }, key)) }) }),
|
|
21887
|
+
/* @__PURE__ */ jsxs74(ModalFooter, { xss: {
|
|
21671
21888
|
justifyContent: "jcsb"
|
|
21672
21889
|
}, children: [
|
|
21673
|
-
/* @__PURE__ */
|
|
21890
|
+
/* @__PURE__ */ jsx159(Button, { label: "Clear", variant: "tertiary", disabled: safeKeys(filters).filter((fk) => modalFilter[fk] !== void 0).length === 0, onClick: () => (
|
|
21674
21891
|
// Only remove the filters keys that exist in the modal.
|
|
21675
21892
|
setModalFilter(safeKeys(filters).reduce((acc, fk) => omitKey(fk, acc), modalFilter))
|
|
21676
21893
|
), ...testId.modalClear }),
|
|
21677
|
-
/* @__PURE__ */
|
|
21678
|
-
/* @__PURE__ */
|
|
21679
|
-
/* @__PURE__ */
|
|
21894
|
+
/* @__PURE__ */ jsxs74("div", { className: "df gap1", children: [
|
|
21895
|
+
/* @__PURE__ */ jsx159(Button, { label: "Cancel", variant: "quaternary", onClick: closeModal, ...testId.modalClose }),
|
|
21896
|
+
/* @__PURE__ */ jsx159(Button, { label: "Apply", onClick: () => {
|
|
21680
21897
|
onApply(modalFilter);
|
|
21681
21898
|
closeModal();
|
|
21682
21899
|
}, ...testId.modalApply })
|
|
@@ -21688,7 +21905,7 @@ function ModalFilterItem({
|
|
|
21688
21905
|
label,
|
|
21689
21906
|
children
|
|
21690
21907
|
}) {
|
|
21691
|
-
return /* @__PURE__ */
|
|
21908
|
+
return /* @__PURE__ */ jsxs74("div", { ...trussProps85({
|
|
21692
21909
|
marginBottom: "mb4",
|
|
21693
21910
|
...!label ? {
|
|
21694
21911
|
borderTopStyle: "bts_solid",
|
|
@@ -21696,8 +21913,8 @@ function ModalFilterItem({
|
|
|
21696
21913
|
borderColor: "bcGray200"
|
|
21697
21914
|
} : {}
|
|
21698
21915
|
}), children: [
|
|
21699
|
-
label && /* @__PURE__ */
|
|
21700
|
-
/* @__PURE__ */
|
|
21916
|
+
label && /* @__PURE__ */ jsx159("h2", { className: "fw4 fz_16px lh_24px mb2", children: label }),
|
|
21917
|
+
/* @__PURE__ */ jsx159("div", { ...trussProps85({
|
|
21701
21918
|
...!label ? {
|
|
21702
21919
|
paddingTop: "pt3"
|
|
21703
21920
|
} : {}
|
|
@@ -21706,9 +21923,9 @@ function ModalFilterItem({
|
|
|
21706
21923
|
}
|
|
21707
21924
|
|
|
21708
21925
|
// src/components/Filters/Filters.tsx
|
|
21709
|
-
import { memo, useMemo as
|
|
21926
|
+
import { memo, useMemo as useMemo39 } from "react";
|
|
21710
21927
|
import { trussProps as trussProps86 } from "@homebound/truss/runtime";
|
|
21711
|
-
import { jsx as
|
|
21928
|
+
import { jsx as jsx160, jsxs as jsxs75 } from "react/jsx-runtime";
|
|
21712
21929
|
function Filters(props) {
|
|
21713
21930
|
const {
|
|
21714
21931
|
filter,
|
|
@@ -21722,7 +21939,7 @@ function Filters(props) {
|
|
|
21722
21939
|
const {
|
|
21723
21940
|
openModal
|
|
21724
21941
|
} = useModal();
|
|
21725
|
-
const [pageFilters, modalFilters] =
|
|
21942
|
+
const [pageFilters, modalFilters] = useMemo39(() => {
|
|
21726
21943
|
const impls = safeEntries(filterDefs).map(([key, fn]) => [key, fn(key)]);
|
|
21727
21944
|
if (!vertical && impls.length > numberOfInlineFilters) {
|
|
21728
21945
|
return [Object.fromEntries(impls.slice(0, numberOfInlineFilters - 1)), Object.fromEntries(impls.slice(numberOfInlineFilters - 1))];
|
|
@@ -21730,8 +21947,8 @@ function Filters(props) {
|
|
|
21730
21947
|
return [Object.fromEntries(impls), {}];
|
|
21731
21948
|
}, [numberOfInlineFilters, vertical, filterDefs]);
|
|
21732
21949
|
const numModalFilters = safeKeys(modalFilters).filter((fk) => filter[fk] !== void 0).length;
|
|
21733
|
-
const maybeGroupByField = groupBy ? /* @__PURE__ */
|
|
21734
|
-
return /* @__PURE__ */
|
|
21950
|
+
const maybeGroupByField = groupBy ? /* @__PURE__ */ jsx160("div", { children: /* @__PURE__ */ jsx160(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;
|
|
21951
|
+
return /* @__PURE__ */ jsxs75("div", { ...trussProps86({
|
|
21735
21952
|
...vertical ? {
|
|
21736
21953
|
display: "df",
|
|
21737
21954
|
flexDirection: "fdc",
|
|
@@ -21743,18 +21960,18 @@ function Filters(props) {
|
|
|
21743
21960
|
}
|
|
21744
21961
|
}), ...testId, children: [
|
|
21745
21962
|
maybeGroupByField,
|
|
21746
|
-
safeEntries(pageFilters).map(([key, f]) => /* @__PURE__ */
|
|
21747
|
-
Object.keys(modalFilters).length > 0 && /* @__PURE__ */
|
|
21963
|
+
safeEntries(pageFilters).map(([key, f]) => /* @__PURE__ */ jsx160("div", { children: f.render(filter[key], (value) => onChange(updateFilter(filter, key, value)), testId, false, vertical) }, key)),
|
|
21964
|
+
Object.keys(modalFilters).length > 0 && /* @__PURE__ */ jsx160(Button, { label: "More Filters", endAdornment: /* @__PURE__ */ jsx160(CountBadge, { count: numModalFilters, hideIfZero: true }), variant: "secondary", onClick: () => openModal({
|
|
21748
21965
|
// Spreading `props` to pass along `data-testid`
|
|
21749
|
-
content: /* @__PURE__ */
|
|
21966
|
+
content: /* @__PURE__ */ jsx160(FilterModal, { ...props, filter, onApply: onChange, filters: modalFilters })
|
|
21750
21967
|
}), ...testId.moreFiltersBtn }),
|
|
21751
|
-
Object.keys(filter).length > 0 && /* @__PURE__ */
|
|
21968
|
+
Object.keys(filter).length > 0 && /* @__PURE__ */ jsx160("div", { children: /* @__PURE__ */ jsx160(Button, { label: "Clear", variant: "tertiary", onClick: () => onChange({}), ...testId.clearBtn }) })
|
|
21752
21969
|
] });
|
|
21753
21970
|
}
|
|
21754
21971
|
var _Filters = memo(Filters);
|
|
21755
21972
|
|
|
21756
21973
|
// src/components/Filters/ToggleFilter.tsx
|
|
21757
|
-
import { jsx as
|
|
21974
|
+
import { jsx as jsx161 } from "react/jsx-runtime";
|
|
21758
21975
|
function toggleFilter(props) {
|
|
21759
21976
|
return (key) => new ToggleFilter(key, {
|
|
21760
21977
|
// If the user has set the offValue, that should be the default b/c we're only a two-state
|
|
@@ -21769,7 +21986,7 @@ var ToggleFilter = class extends BaseFilter {
|
|
|
21769
21986
|
}
|
|
21770
21987
|
render(value, setValue, tid, inModal, vertical) {
|
|
21771
21988
|
const { defaultValue, onValue = true, offValue = void 0, ...props } = this.props;
|
|
21772
|
-
return /* @__PURE__ */
|
|
21989
|
+
return /* @__PURE__ */ jsx161(
|
|
21773
21990
|
Switch,
|
|
21774
21991
|
{
|
|
21775
21992
|
...props,
|
|
@@ -21789,11 +22006,11 @@ var ToggleFilter = class extends BaseFilter {
|
|
|
21789
22006
|
};
|
|
21790
22007
|
|
|
21791
22008
|
// src/components/Table/components/EditColumnsButton.tsx
|
|
21792
|
-
import { Fragment as Fragment35, useCallback as
|
|
22009
|
+
import { Fragment as Fragment35, useCallback as useCallback28, useMemo as useMemo40, useRef as useRef51 } from "react";
|
|
21793
22010
|
import { useMenuTrigger as useMenuTrigger3 } from "react-aria";
|
|
21794
22011
|
import { useMenuTriggerState as useMenuTriggerState3 } from "react-stately";
|
|
21795
22012
|
import { trussProps as trussProps87 } from "@homebound/truss/runtime";
|
|
21796
|
-
import { jsx as
|
|
22013
|
+
import { jsx as jsx162, jsxs as jsxs76 } from "react/jsx-runtime";
|
|
21797
22014
|
function EditColumnsButton(props) {
|
|
21798
22015
|
const {
|
|
21799
22016
|
defaultOpen,
|
|
@@ -21814,7 +22031,7 @@ function EditColumnsButton(props) {
|
|
|
21814
22031
|
const {
|
|
21815
22032
|
sm
|
|
21816
22033
|
} = useBreakpoint();
|
|
21817
|
-
const options =
|
|
22034
|
+
const options = useMemo40(() => columns.filter((column2) => column2.canHide).filter((column2) => {
|
|
21818
22035
|
if (!column2.name || column2.name.length === 0 || !column2.id || column2.id.length === 0) {
|
|
21819
22036
|
console.warn("Column is missing 'name' and/or 'id' property required by the Edit Columns button", column2);
|
|
21820
22037
|
return false;
|
|
@@ -21825,15 +22042,15 @@ function EditColumnsButton(props) {
|
|
|
21825
22042
|
value: column2.id
|
|
21826
22043
|
})), [columns]);
|
|
21827
22044
|
const selectedValues = useComputed(() => api.getVisibleColumnIds(), [api]);
|
|
21828
|
-
const setSelectedValues =
|
|
22045
|
+
const setSelectedValues = useCallback28((ids) => {
|
|
21829
22046
|
api.resetColumnWidths();
|
|
21830
22047
|
api.setVisibleColumns(columns.filter((column2) => column2.canHide ? ids.includes(column2.id) : true).map((c) => c.id));
|
|
21831
22048
|
}, [columns, api]);
|
|
21832
|
-
const hasHiddenColumn =
|
|
22049
|
+
const hasHiddenColumn = useMemo40(() => {
|
|
21833
22050
|
const selectableOptionValues = options.map((option) => option.value);
|
|
21834
22051
|
return selectableOptionValues.some((option) => !selectedValues.includes(option));
|
|
21835
22052
|
}, [options, selectedValues]);
|
|
21836
|
-
return /* @__PURE__ */
|
|
22053
|
+
return /* @__PURE__ */ jsx162(OverlayTrigger, { ...props, trigger: sm ? {
|
|
21837
22054
|
icon: hasHiddenColumn ? "columnsBadged" : "columns",
|
|
21838
22055
|
variant: "outline"
|
|
21839
22056
|
} : {
|
|
@@ -21841,7 +22058,7 @@ function EditColumnsButton(props) {
|
|
|
21841
22058
|
label: "",
|
|
21842
22059
|
size: "md",
|
|
21843
22060
|
variant: "secondaryBlack"
|
|
21844
|
-
}, menuTriggerProps, state, buttonRef, ...tid, children: /* @__PURE__ */
|
|
22061
|
+
}, menuTriggerProps, state, buttonRef, ...tid, children: /* @__PURE__ */ jsxs76("div", { ...trussProps87({
|
|
21845
22062
|
display: "df",
|
|
21846
22063
|
flexDirection: "fdc",
|
|
21847
22064
|
backgroundColor: ["bgColor_var", {
|
|
@@ -21854,11 +22071,11 @@ function EditColumnsButton(props) {
|
|
|
21854
22071
|
maxHeight: "maxh_512px",
|
|
21855
22072
|
boxShadow: "bshBasic h_bshHover"
|
|
21856
22073
|
}), children: [
|
|
21857
|
-
/* @__PURE__ */
|
|
21858
|
-
/* @__PURE__ */
|
|
21859
|
-
/* @__PURE__ */
|
|
22074
|
+
/* @__PURE__ */ jsx162("div", { className: "dg gtc_1fr_auto gap2 pt2 pb2 pr2 pl2 fg1 mh0 oya", children: options.map((option) => /* @__PURE__ */ jsxs76(Fragment35, { children: [
|
|
22075
|
+
/* @__PURE__ */ jsx162("div", { className: "fw4 fz_14px lh_20px wsnw oh to_ellipsis pr1", children: option.label }),
|
|
22076
|
+
/* @__PURE__ */ jsx162(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}`] })
|
|
21860
22077
|
] }, option.value)) }),
|
|
21861
|
-
/* @__PURE__ */
|
|
22078
|
+
/* @__PURE__ */ jsx162("div", { ...trussProps87({
|
|
21862
22079
|
display: "df",
|
|
21863
22080
|
justifyContent: "jcc",
|
|
21864
22081
|
paddingTop: "pt2",
|
|
@@ -21870,12 +22087,12 @@ function EditColumnsButton(props) {
|
|
|
21870
22087
|
borderColor: ["bc_var", {
|
|
21871
22088
|
"--borderColor": "var(--b-surface-separator)"
|
|
21872
22089
|
}]
|
|
21873
|
-
}), children: /* @__PURE__ */
|
|
22090
|
+
}), children: /* @__PURE__ */ jsx162(Button, { variant: "tertiary", label: "Reset Column Widths", onClick: () => api.resetColumnWidths() }) })
|
|
21874
22091
|
] }) });
|
|
21875
22092
|
}
|
|
21876
22093
|
|
|
21877
22094
|
// src/components/Table/components/ViewToggleButton.tsx
|
|
21878
|
-
import { jsx as
|
|
22095
|
+
import { jsx as jsx163 } from "react/jsx-runtime";
|
|
21879
22096
|
function ViewToggleButton({ view, onChange, defaultOpen }) {
|
|
21880
22097
|
const { sm } = useBreakpoint();
|
|
21881
22098
|
const tid = useTestIds({}, "viewToggleButton");
|
|
@@ -21884,7 +22101,7 @@ function ViewToggleButton({ view, onChange, defaultOpen }) {
|
|
|
21884
22101
|
{ label: "Card", icon: "tile", onClick: () => onChange("card") }
|
|
21885
22102
|
];
|
|
21886
22103
|
const icon = view === "list" ? "projects" : "tile";
|
|
21887
|
-
return /* @__PURE__ */
|
|
22104
|
+
return /* @__PURE__ */ jsx163(
|
|
21888
22105
|
ButtonMenu,
|
|
21889
22106
|
{
|
|
21890
22107
|
trigger: sm ? { icon, variant: "outline" } : { icon, label: "", size: "md", variant: "secondaryBlack" },
|
|
@@ -21903,9 +22120,9 @@ import { StringParam as StringParam2, useQueryParams as useQueryParams3 } from "
|
|
|
21903
22120
|
import { trussProps as trussProps88 } from "@homebound/truss/runtime";
|
|
21904
22121
|
|
|
21905
22122
|
// src/components/Layout/GridTableLayout/GroupByField.tsx
|
|
21906
|
-
import { jsx as
|
|
22123
|
+
import { jsx as jsx164 } from "react/jsx-runtime";
|
|
21907
22124
|
function GroupByField({ value, setValue, options }) {
|
|
21908
|
-
return /* @__PURE__ */
|
|
22125
|
+
return /* @__PURE__ */ jsx164(
|
|
21909
22126
|
SelectField,
|
|
21910
22127
|
{
|
|
21911
22128
|
label: "Group by",
|
|
@@ -21921,9 +22138,9 @@ function GroupByField({ value, setValue, options }) {
|
|
|
21921
22138
|
}
|
|
21922
22139
|
|
|
21923
22140
|
// src/components/Layout/GridTableLayout/FilterPanel.tsx
|
|
21924
|
-
import { jsx as
|
|
22141
|
+
import { jsx as jsx165, jsxs as jsxs77 } from "react/jsx-runtime";
|
|
21925
22142
|
function FilterPanel(props) {
|
|
21926
|
-
return props.isOpen ? /* @__PURE__ */
|
|
22143
|
+
return props.isOpen ? /* @__PURE__ */ jsx165(FilterPanelOpen, { ...props }) : /* @__PURE__ */ jsx165(FilterPanelClosed, { ...props });
|
|
21927
22144
|
}
|
|
21928
22145
|
function FilterPanelOpen({
|
|
21929
22146
|
groupBy,
|
|
@@ -21936,7 +22153,7 @@ function FilterPanelOpen({
|
|
|
21936
22153
|
const inDocumentScrollLayout = useDocumentScrollLayout();
|
|
21937
22154
|
const activeFilterCount = getActiveFilterCount(filter ?? {});
|
|
21938
22155
|
const filterControls = filter && setFilter ? buildFilterControls(filterImpls, filter, setFilter, tid) : null;
|
|
21939
|
-
return /* @__PURE__ */
|
|
22156
|
+
return /* @__PURE__ */ jsxs77("div", { ...trussProps88({
|
|
21940
22157
|
...{
|
|
21941
22158
|
display: "df",
|
|
21942
22159
|
alignItems: "aic",
|
|
@@ -21952,9 +22169,9 @@ function FilterPanelOpen({
|
|
|
21952
22169
|
},
|
|
21953
22170
|
...inDocumentScrollLayout ? pageContentPaddingX : void 0
|
|
21954
22171
|
}), children: [
|
|
21955
|
-
groupBy && /* @__PURE__ */
|
|
22172
|
+
groupBy && /* @__PURE__ */ jsx165(GroupByField, { ...groupBy }),
|
|
21956
22173
|
filterControls,
|
|
21957
|
-
activeFilterCount > 0 && /* @__PURE__ */
|
|
22174
|
+
activeFilterCount > 0 && /* @__PURE__ */ jsx165(Button, { label: "Clear", variant: "tertiary", onClick: () => maybeCall(onClear), ...tid.clearBtn })
|
|
21958
22175
|
] });
|
|
21959
22176
|
}
|
|
21960
22177
|
function FilterPanelClosed({
|
|
@@ -21968,7 +22185,7 @@ function FilterPanelClosed({
|
|
|
21968
22185
|
if (!filter || !setFilter) return null;
|
|
21969
22186
|
const chips = safeEntries(filterImpls).flatMap(([key, f]) => chipsForFilterKey(key, f, filter, setFilter, tid));
|
|
21970
22187
|
if (chips.length === 0) return null;
|
|
21971
|
-
return /* @__PURE__ */
|
|
22188
|
+
return /* @__PURE__ */ jsxs77("div", { ...trussProps88({
|
|
21972
22189
|
display: "df",
|
|
21973
22190
|
gap: "gap1",
|
|
21974
22191
|
alignItems: "aic",
|
|
@@ -21979,14 +22196,14 @@ function FilterPanelClosed({
|
|
|
21979
22196
|
} : {}
|
|
21980
22197
|
}), children: [
|
|
21981
22198
|
chips,
|
|
21982
|
-
/* @__PURE__ */
|
|
22199
|
+
/* @__PURE__ */ jsx165(Button, { label: "Clear", variant: "tertiary", onClick: () => maybeCall(onClear), ...tid.clearBtn })
|
|
21983
22200
|
] });
|
|
21984
22201
|
}
|
|
21985
22202
|
function buildFilterControls(filterImpls, filter, setFilter, testId) {
|
|
21986
22203
|
const entries = safeEntries(filterImpls);
|
|
21987
22204
|
const nonCheckbox = entries.filter(([_, f]) => !f.hideLabelInModal);
|
|
21988
22205
|
const checkbox = entries.filter(([_, f]) => f.hideLabelInModal);
|
|
21989
|
-
return [...nonCheckbox, ...checkbox].map(([key, f]) => /* @__PURE__ */
|
|
22206
|
+
return [...nonCheckbox, ...checkbox].map(([key, f]) => /* @__PURE__ */ jsx165("div", { children: f.render(filter[key], (value) => setFilter(updateFilter(filter, key, value)), testId, false, false) }, key));
|
|
21990
22207
|
}
|
|
21991
22208
|
function buildFilterImpls(filterDefs) {
|
|
21992
22209
|
return Object.fromEntries(safeEntries(filterDefs).map(([key, fn]) => [key, fn(key)]));
|
|
@@ -22000,17 +22217,17 @@ function chipsForFilterKey(key, f, filter, onChange, testId) {
|
|
|
22000
22217
|
if (!isDefined(label2)) return [];
|
|
22001
22218
|
const chipKey = `${String(key)}_${item}`;
|
|
22002
22219
|
const newArray = value.filter((v) => v !== item);
|
|
22003
|
-
return /* @__PURE__ */
|
|
22220
|
+
return /* @__PURE__ */ jsx165(ToggleChip, { text: label2, onClick: () => onChange(updateFilter(filter, key, newArray.length > 0 ? newArray : void 0)), ...testId[`chip_${chipKey}`] }, chipKey);
|
|
22004
22221
|
});
|
|
22005
22222
|
}
|
|
22006
22223
|
const label = f.formatSelectedFilterLabel(value);
|
|
22007
22224
|
if (!isDefined(label)) return [];
|
|
22008
|
-
return /* @__PURE__ */
|
|
22225
|
+
return /* @__PURE__ */ jsx165(ToggleChip, { text: label, onClick: () => onChange(updateFilter(filter, key, void 0)), ...testId[`chip_${String(key)}`] }, String(key));
|
|
22009
22226
|
}
|
|
22010
22227
|
|
|
22011
22228
|
// src/components/Layout/GridTableLayout/GridTableLayoutActions.tsx
|
|
22012
22229
|
import { trussProps as trussProps89 } from "@homebound/truss/runtime";
|
|
22013
|
-
import { jsx as
|
|
22230
|
+
import { jsx as jsx166, jsxs as jsxs78 } from "react/jsx-runtime";
|
|
22014
22231
|
function GridTableLayoutActionsComponent(props) {
|
|
22015
22232
|
const {
|
|
22016
22233
|
filter,
|
|
@@ -22034,14 +22251,14 @@ function GridTableLayoutActionsComponent(props) {
|
|
|
22034
22251
|
sm
|
|
22035
22252
|
} = useBreakpoint();
|
|
22036
22253
|
const inDocumentScrollLayout = useDocumentScrollLayout();
|
|
22037
|
-
const [showSearch, setShowSearch] =
|
|
22038
|
-
const [showFilters, setShowFilters] =
|
|
22254
|
+
const [showSearch, setShowSearch] = useState44(false);
|
|
22255
|
+
const [showFilters, setShowFilters] = useState44(false);
|
|
22039
22256
|
const [{
|
|
22040
22257
|
search: initialValue
|
|
22041
22258
|
}, setQueryParams] = useQueryParams3({
|
|
22042
22259
|
search: StringParam2
|
|
22043
22260
|
});
|
|
22044
|
-
const [searchValue, setSearchValue] =
|
|
22261
|
+
const [searchValue, setSearchValue] = useState44(initialValue || "");
|
|
22045
22262
|
const handleSearchDebounced = useDebouncedCallback6((value) => {
|
|
22046
22263
|
if (searchProps) {
|
|
22047
22264
|
searchProps.onSearch(value);
|
|
@@ -22056,12 +22273,12 @@ function GridTableLayoutActionsComponent(props) {
|
|
|
22056
22273
|
const controlCount = filterCount + (hasGroupBy ? 1 : 0);
|
|
22057
22274
|
const hasFilterControls = controlCount > 0;
|
|
22058
22275
|
const showInlineControl = !sm && controlCount === 1 && (hasGroupBy || !!(filter && setFilter));
|
|
22059
|
-
const activeFilterCount =
|
|
22060
|
-
const filterImpls =
|
|
22061
|
-
const searchTextField = /* @__PURE__ */
|
|
22276
|
+
const activeFilterCount = useMemo41(() => filter ? getActiveFilterCount(filter) : 0, [filter]);
|
|
22277
|
+
const filterImpls = useMemo41(() => filterDefs ? buildFilterImpls(filterDefs) : {}, [filterDefs]);
|
|
22278
|
+
const searchTextField = /* @__PURE__ */ jsx166(TextField, { label: "Search", labelStyle: "hidden", value: searchValue, onChange: (v) => {
|
|
22062
22279
|
setSearchValue(v ?? "");
|
|
22063
22280
|
handleSearchDebounced(v ?? "");
|
|
22064
|
-
}, placeholder: "Search", clearable: true, fullWidth: true, startAdornment: /* @__PURE__ */
|
|
22281
|
+
}, placeholder: "Search", clearable: true, fullWidth: true, startAdornment: /* @__PURE__ */ jsx166(Icon, { icon: "search", color: "--b-on-surface-muted" /* OnSurfaceMuted */ }) });
|
|
22065
22282
|
if (searchApi) {
|
|
22066
22283
|
searchApi.current = {
|
|
22067
22284
|
clear: () => {
|
|
@@ -22073,7 +22290,7 @@ function GridTableLayoutActionsComponent(props) {
|
|
|
22073
22290
|
}
|
|
22074
22291
|
};
|
|
22075
22292
|
}
|
|
22076
|
-
return /* @__PURE__ */
|
|
22293
|
+
return /* @__PURE__ */ jsxs78("div", { ...trussProps89({
|
|
22077
22294
|
display: "df",
|
|
22078
22295
|
flexDirection: "fdc",
|
|
22079
22296
|
gap: "gap1",
|
|
@@ -22082,7 +22299,7 @@ function GridTableLayoutActionsComponent(props) {
|
|
|
22082
22299
|
paddingBottom: "pb3"
|
|
22083
22300
|
} : {}
|
|
22084
22301
|
}), children: [
|
|
22085
|
-
/* @__PURE__ */
|
|
22302
|
+
/* @__PURE__ */ jsxs78("div", { ...trussProps89({
|
|
22086
22303
|
...{
|
|
22087
22304
|
display: "df",
|
|
22088
22305
|
gap: "gap1",
|
|
@@ -22091,36 +22308,36 @@ function GridTableLayoutActionsComponent(props) {
|
|
|
22091
22308
|
},
|
|
22092
22309
|
...inDocumentScrollLayout ? pageContentPaddingX : void 0
|
|
22093
22310
|
}), children: [
|
|
22094
|
-
/* @__PURE__ */
|
|
22095
|
-
!sm && hasSearch && /* @__PURE__ */
|
|
22096
|
-
sm && hasSearch && /* @__PURE__ */
|
|
22097
|
-
sm && hasFilterControls && /* @__PURE__ */
|
|
22098
|
-
showInlineControl && (groupBy ? /* @__PURE__ */
|
|
22099
|
-
!sm && hasFilterControls && !showInlineControl && /* @__PURE__ */
|
|
22100
|
-
activeFilterCount > 0 && /* @__PURE__ */
|
|
22101
|
-
/* @__PURE__ */
|
|
22311
|
+
/* @__PURE__ */ jsxs78("div", { className: "df gap_12px aic", children: [
|
|
22312
|
+
!sm && hasSearch && /* @__PURE__ */ jsx166("div", { className: "w_244px", children: searchTextField }),
|
|
22313
|
+
sm && hasSearch && /* @__PURE__ */ jsx166(IconButton, { variant: "outline", icon: searchValue ? "searchBadged" : "search", label: "Search", onClick: () => setShowSearch(!showSearch), active: showSearch, ...testId.searchButton }),
|
|
22314
|
+
sm && hasFilterControls && /* @__PURE__ */ jsx166(IconButton, { variant: "outline", icon: activeFilterCount > 0 ? "filterBadged" : "filter", label: "Filter", onClick: () => setShowFilters(!showFilters), active: showFilters, ...testId.filterSmallButton }),
|
|
22315
|
+
showInlineControl && (groupBy ? /* @__PURE__ */ jsx166(GroupByField, { ...groupBy }) : filter && setFilter && buildFilterControls(filterImpls, filter, setFilter, filterTid)),
|
|
22316
|
+
!sm && hasFilterControls && !showInlineControl && /* @__PURE__ */ jsx166(Button, { label: "Filter", icon: "filter", size: "md", endAdornment: /* @__PURE__ */ jsxs78("div", { className: "df aic gap1", children: [
|
|
22317
|
+
activeFilterCount > 0 && /* @__PURE__ */ jsx166(CountBadge, { count: activeFilterCount }),
|
|
22318
|
+
/* @__PURE__ */ jsx166(Icon, { icon: showFilters ? "chevronUp" : "chevronDown" })
|
|
22102
22319
|
] }), variant: "secondaryBlack", onClick: () => setShowFilters(!showFilters), active: showFilters, ...testId.filterButton })
|
|
22103
22320
|
] }),
|
|
22104
|
-
(hasHideableColumns || withCardView || actionMenu) && /* @__PURE__ */
|
|
22105
|
-
hasHideableColumns && view === "list" && columns && api && /* @__PURE__ */
|
|
22106
|
-
withCardView && view !== void 0 && setView && /* @__PURE__ */
|
|
22107
|
-
actionMenu && /* @__PURE__ */
|
|
22321
|
+
(hasHideableColumns || withCardView || actionMenu) && /* @__PURE__ */ jsxs78("div", { className: "df aic gap_12px", children: [
|
|
22322
|
+
hasHideableColumns && view === "list" && columns && api && /* @__PURE__ */ jsx166(EditColumnsButton, { columns, api, tooltip: "Display columns" }),
|
|
22323
|
+
withCardView && view !== void 0 && setView && /* @__PURE__ */ jsx166(ViewToggleButton, { view, onChange: setView }),
|
|
22324
|
+
actionMenu && /* @__PURE__ */ jsx166(ButtonMenu, { ...actionMenu, trigger: {
|
|
22108
22325
|
icon: "verticalDots"
|
|
22109
22326
|
} })
|
|
22110
22327
|
] })
|
|
22111
22328
|
] }),
|
|
22112
|
-
sm && showSearch && /* @__PURE__ */
|
|
22113
|
-
hasFilterControls && !showInlineControl && /* @__PURE__ */
|
|
22329
|
+
sm && showSearch && /* @__PURE__ */ jsx166("div", { ...trussProps89(pageContentPaddingX), children: searchTextField }),
|
|
22330
|
+
hasFilterControls && !showInlineControl && /* @__PURE__ */ jsx166(FilterPanel, { isOpen: showFilters, groupBy, filterImpls, filter, setFilter, onClear: clearFilters })
|
|
22114
22331
|
] });
|
|
22115
22332
|
}
|
|
22116
22333
|
var _GridTableLayoutActions = memo2(GridTableLayoutActionsComponent);
|
|
22117
22334
|
|
|
22118
22335
|
// src/components/Layout/GridTableLayout/QueryTable.tsx
|
|
22119
|
-
import { useMemo as
|
|
22336
|
+
import { useMemo as useMemo42 } from "react";
|
|
22120
22337
|
|
|
22121
22338
|
// src/components/LoadingSkeleton.tsx
|
|
22122
|
-
import { trussProps as trussProps90, maybeCssVar as
|
|
22123
|
-
import { jsx as
|
|
22339
|
+
import { trussProps as trussProps90, maybeCssVar as maybeCssVar42 } from "@homebound/truss/runtime";
|
|
22340
|
+
import { jsx as jsx167 } from "react/jsx-runtime";
|
|
22124
22341
|
function LoadingSkeleton({
|
|
22125
22342
|
rows = 1,
|
|
22126
22343
|
columns = 1,
|
|
@@ -22132,18 +22349,18 @@ function LoadingSkeleton({
|
|
|
22132
22349
|
const rowHeight = sizeToPixels2[size];
|
|
22133
22350
|
const rowCells = (rowNumber) => {
|
|
22134
22351
|
const flexGrowForCell = randomizeWidths ? getRandomizedFlexBasisByRowIndex(rowNumber) : 1;
|
|
22135
|
-
return cellArray.map((_, i) => /* @__PURE__ */
|
|
22352
|
+
return cellArray.map((_, i) => /* @__PURE__ */ jsx167("div", { ...trussProps90({
|
|
22136
22353
|
borderRadius: "br4",
|
|
22137
22354
|
animation: "animation_pulse_2s_cubic_bezier_0_4_0_0_6_1_infinite",
|
|
22138
22355
|
flexGrow: ["flexGrow_var", {
|
|
22139
|
-
"--flexGrow":
|
|
22356
|
+
"--flexGrow": maybeCssVar42(flexGrowForCell)
|
|
22140
22357
|
}],
|
|
22141
22358
|
backgroundColor: ["bgColor_var", {
|
|
22142
22359
|
"--backgroundColor": "var(--b-loader-fill)"
|
|
22143
22360
|
}]
|
|
22144
22361
|
}) }, `row-${rowNumber}-cell-${i}`));
|
|
22145
22362
|
};
|
|
22146
|
-
return /* @__PURE__ */
|
|
22363
|
+
return /* @__PURE__ */ jsx167("div", { "aria-label": "Loading", children: rowArray.map((_, i) => /* @__PURE__ */ jsx167("div", { ...trussProps90({
|
|
22147
22364
|
display: "df",
|
|
22148
22365
|
gap: "gap1",
|
|
22149
22366
|
marginBottom: "mb1",
|
|
@@ -22164,7 +22381,7 @@ var sizeToPixels2 = {
|
|
|
22164
22381
|
};
|
|
22165
22382
|
|
|
22166
22383
|
// src/components/Layout/GridTableLayout/QueryTable.tsx
|
|
22167
|
-
import { Fragment as Fragment36, jsx as
|
|
22384
|
+
import { Fragment as Fragment36, jsx as jsx168, jsxs as jsxs79 } from "react/jsx-runtime";
|
|
22168
22385
|
function QueryTable(props) {
|
|
22169
22386
|
const {
|
|
22170
22387
|
emptyFallback,
|
|
@@ -22176,29 +22393,29 @@ function QueryTable(props) {
|
|
|
22176
22393
|
...others
|
|
22177
22394
|
} = props;
|
|
22178
22395
|
const data = query.loading || query.error ? void 0 : query.data;
|
|
22179
|
-
const rows =
|
|
22396
|
+
const rows = useMemo42(() => createRows(data), [createRows, data]);
|
|
22180
22397
|
const fallbackMessage = query.loading ? "Loading\u2026" : query.error ? `Error: ${query.error.message}` : void 0;
|
|
22181
|
-
const emptyState =
|
|
22398
|
+
const emptyState = useMemo42(() => {
|
|
22182
22399
|
if (query.loading || query.error) return void 0;
|
|
22183
22400
|
if (emptyStateProp) return emptyStateProp;
|
|
22184
22401
|
return { title: emptyFallback };
|
|
22185
22402
|
}, [emptyFallback, emptyStateProp, query.error, query.loading]);
|
|
22186
22403
|
const headers = rows.filter((row) => row.kind === "header");
|
|
22187
|
-
return query.loading ? /* @__PURE__ */
|
|
22404
|
+
return query.loading ? /* @__PURE__ */ jsx168("div", { children: keepHeaderWhenLoading ? /* @__PURE__ */ jsx168(GridTable, { ...{ columns, ...others }, rows: headers, fallbackMessage }) : /* @__PURE__ */ jsx168(LoadingTable, { columns: columns.length }) }) : /* @__PURE__ */ jsx168(GridTable, { ...{ rows, columns, fallbackMessage, emptyState, ...others } });
|
|
22188
22405
|
}
|
|
22189
22406
|
function LoadingTable(props) {
|
|
22190
22407
|
const { columns } = props;
|
|
22191
|
-
return /* @__PURE__ */
|
|
22192
|
-
/* @__PURE__ */
|
|
22193
|
-
/* @__PURE__ */
|
|
22408
|
+
return /* @__PURE__ */ jsxs79(Fragment36, { children: [
|
|
22409
|
+
/* @__PURE__ */ jsx168(LoadingSkeleton, { rows: 1, columns: 1 }),
|
|
22410
|
+
/* @__PURE__ */ jsx168(LoadingSkeleton, { rows: 5, columns: columns ?? 5 })
|
|
22194
22411
|
] });
|
|
22195
22412
|
}
|
|
22196
22413
|
|
|
22197
22414
|
// src/components/Layout/GridTableLayout/usePersistedTableView.ts
|
|
22198
|
-
import { useCallback as
|
|
22415
|
+
import { useCallback as useCallback29, useState as useState45 } from "react";
|
|
22199
22416
|
function usePersistedTableView(defaultView, persist) {
|
|
22200
22417
|
const storageKey = persist ? getGridTableViewStorageKey(window.location.pathname) : void 0;
|
|
22201
|
-
const [view, setView] =
|
|
22418
|
+
const [view, setView] = useState45(() => {
|
|
22202
22419
|
if (!storageKey) return defaultView;
|
|
22203
22420
|
try {
|
|
22204
22421
|
return parseStoredTableView(localStorage.getItem(storageKey)) ?? defaultView;
|
|
@@ -22206,7 +22423,7 @@ function usePersistedTableView(defaultView, persist) {
|
|
|
22206
22423
|
return defaultView;
|
|
22207
22424
|
}
|
|
22208
22425
|
});
|
|
22209
|
-
const setViewAndPersist =
|
|
22426
|
+
const setViewAndPersist = useCallback29(
|
|
22210
22427
|
(next) => {
|
|
22211
22428
|
setView(next);
|
|
22212
22429
|
if (storageKey) {
|
|
@@ -22228,9 +22445,9 @@ function parseStoredTableView(raw) {
|
|
|
22228
22445
|
}
|
|
22229
22446
|
|
|
22230
22447
|
// src/components/Layout/GridTableLayout/GridTableLayout.tsx
|
|
22231
|
-
import { trussProps as trussProps91, maybeCssVar as
|
|
22232
|
-
import { Fragment as Fragment37, jsx as
|
|
22233
|
-
var
|
|
22448
|
+
import { trussProps as trussProps91, maybeCssVar as maybeCssVar43 } from "@homebound/truss/runtime";
|
|
22449
|
+
import { Fragment as Fragment37, jsx as jsx169, jsxs as jsxs80 } from "react/jsx-runtime";
|
|
22450
|
+
var __maybeInc18 = (inc) => {
|
|
22234
22451
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
22235
22452
|
};
|
|
22236
22453
|
function GridTableLayoutComponent(props) {
|
|
@@ -22241,16 +22458,18 @@ function GridTableLayoutComponent(props) {
|
|
|
22241
22458
|
hideEditColumns = false,
|
|
22242
22459
|
withCardView,
|
|
22243
22460
|
defaultView = "list",
|
|
22244
|
-
emptyFallback: layoutEmptyFallback
|
|
22461
|
+
emptyFallback: layoutEmptyFallback,
|
|
22462
|
+
withRightPane
|
|
22245
22463
|
} = props;
|
|
22464
|
+
const rightPaneWidth = withRightPane === true ? defaultDocumentScrollRightPaneWidth : typeof withRightPane === "number" ? withRightPane : void 0;
|
|
22246
22465
|
const tid = useTestIds(props);
|
|
22247
22466
|
const columns = tableProps.columns;
|
|
22248
|
-
const hasHideableColumns =
|
|
22467
|
+
const hasHideableColumns = useMemo43(() => {
|
|
22249
22468
|
if (hideEditColumns) return false;
|
|
22250
22469
|
validateColumns(columns);
|
|
22251
22470
|
return columns.some((c) => c.canHide);
|
|
22252
22471
|
}, [columns, hideEditColumns]);
|
|
22253
|
-
const api =
|
|
22472
|
+
const api = useMemo43(() => tableProps.api ?? new GridTableApiImpl(), [tableProps.api]);
|
|
22254
22473
|
const [view, setView] = usePersistedTableView(defaultView, !!withCardView);
|
|
22255
22474
|
const clientSearch = layoutState?.search === "client" ? layoutState.searchString : void 0;
|
|
22256
22475
|
const showTableActions = !!(layoutState?.filterDefs || layoutState?.search || hasHideableColumns || withCardView || actionMenu);
|
|
@@ -22260,59 +22479,62 @@ function GridTableLayoutComponent(props) {
|
|
|
22260
22479
|
const tableWrapperRef = useRef52(null);
|
|
22261
22480
|
useSetTableActionsHeight(tableWrapperRef, tableActionsRef, inDocumentScrollLayout && showTableActions);
|
|
22262
22481
|
const visibleColumnIds = useComputed(() => api.getVisibleColumnIds(), [api]);
|
|
22263
|
-
|
|
22482
|
+
useEffect29(() => {
|
|
22264
22483
|
if (layoutState?.setVisibleColumnIds) {
|
|
22265
22484
|
layoutState.setVisibleColumnIds(visibleColumnIds);
|
|
22266
22485
|
}
|
|
22267
22486
|
}, [visibleColumnIds, layoutState]);
|
|
22268
22487
|
const visibleColumnsStorageKey = layoutState?.persistedColumnsStorageKey;
|
|
22269
|
-
const filterSearchProps =
|
|
22488
|
+
const filterSearchProps = useMemo43(() => layoutState?.search ? {
|
|
22270
22489
|
onSearch: layoutState.setSearchString
|
|
22271
22490
|
} : void 0, [layoutState?.search, layoutState?.setSearchString]);
|
|
22272
22491
|
const searchApiRef = useRef52();
|
|
22273
|
-
const clearFilters =
|
|
22492
|
+
const clearFilters = useCallback30(() => {
|
|
22274
22493
|
layoutState?.clearFilters();
|
|
22275
22494
|
searchApiRef.current?.clear();
|
|
22276
22495
|
}, [layoutState]);
|
|
22277
|
-
const emptyState =
|
|
22278
|
-
const tableActionsEl = /* @__PURE__ */
|
|
22496
|
+
const emptyState = useMemo43(() => composeEmptyState(tableProps, layoutState, layoutEmptyFallback, clearFilters), [layoutEmptyFallback, layoutState, tableProps, clearFilters]);
|
|
22497
|
+
const tableActionsEl = /* @__PURE__ */ jsx169(_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 });
|
|
22279
22498
|
const cardAs = withCardView && view === "card" ? "card" : void 0;
|
|
22280
22499
|
const tableStyle = resolveGridTableLayoutStyle(tableProps.style, inDocumentScrollLayout);
|
|
22281
|
-
const tableBody = /* @__PURE__ */
|
|
22500
|
+
const tableBody = /* @__PURE__ */ jsx169(Fragment37, { children: isGridTableProps(tableProps) ? /* @__PURE__ */ jsx169(GridTable, { ...tableProps, ...cardAs ? {
|
|
22282
22501
|
as: cardAs
|
|
22283
|
-
} : {}, api, emptyState, filter: clientSearch, style: tableStyle, stickyHeader: true, disableColumnResizing: false, visibleColumnsStorageKey, columnGutter: inDocumentScrollLayout }) : /* @__PURE__ */
|
|
22502
|
+
} : {}, api, emptyState, filter: clientSearch, style: tableStyle, stickyHeader: true, disableColumnResizing: false, visibleColumnsStorageKey, columnGutter: inDocumentScrollLayout }) : /* @__PURE__ */ jsx169(QueryTable, { ...tableProps, ...cardAs ? {
|
|
22284
22503
|
as: cardAs
|
|
22285
22504
|
} : {}, api, emptyState, filter: clientSearch, style: tableStyle, stickyHeader: true, disableColumnResizing: false, visibleColumnsStorageKey, columnGutter: inDocumentScrollLayout }) });
|
|
22286
|
-
const tableScrollContent = /* @__PURE__ */
|
|
22287
|
-
showTableActions && /* @__PURE__ */
|
|
22505
|
+
const tableScrollContent = /* @__PURE__ */ jsxs80(Fragment37, { children: [
|
|
22506
|
+
showTableActions && /* @__PURE__ */ jsx169("div", { ref: tableActionsRef, ...trussProps91({
|
|
22288
22507
|
...inDocumentScrollLayout ? {
|
|
22289
22508
|
transition: "transitionTop",
|
|
22290
22509
|
position: "sticky",
|
|
22291
22510
|
top: ["top_var", {
|
|
22292
|
-
"--top":
|
|
22511
|
+
"--top": maybeCssVar43(__maybeInc18(stickyNavAndHeaderOffset()))
|
|
22293
22512
|
}],
|
|
22294
22513
|
left: ["left_var", {
|
|
22295
|
-
"--left":
|
|
22514
|
+
"--left": maybeCssVar43(__maybeInc18(documentScrollChromeLeft()))
|
|
22296
22515
|
}],
|
|
22297
22516
|
width: ["w_var", {
|
|
22298
|
-
"--width":
|
|
22517
|
+
"--width": maybeCssVar43(__maybeInc18(`min(100%, ${documentScrollChromeWidth()})`))
|
|
22299
22518
|
}],
|
|
22300
22519
|
zIndex: ["z_var", {
|
|
22301
|
-
"--zIndex":
|
|
22520
|
+
"--zIndex": maybeCssVar43(zIndices.tableActions)
|
|
22302
22521
|
}],
|
|
22303
22522
|
backgroundColor: ["bgColor_var", {
|
|
22304
22523
|
"--backgroundColor": "var(--b-surface)"
|
|
22305
22524
|
}]
|
|
22306
22525
|
} : {}
|
|
22307
22526
|
}), ...tid.stickyContent, children: tableActionsEl }),
|
|
22308
|
-
inDocumentScrollLayout ?
|
|
22527
|
+
inDocumentScrollLayout ? (
|
|
22528
|
+
// Scope the pane to the table only — actions stay outside so they remain full-bleed sticky chrome.
|
|
22529
|
+
rightPaneWidth !== void 0 ? /* @__PURE__ */ jsx169(DocumentScrollRightPaneLayout, { paneWidth: rightPaneWidth, children: tableBody }) : tableBody
|
|
22530
|
+
) : /* @__PURE__ */ jsx169(ScrollableContent, { virtualized: isVirtualized, children: tableBody })
|
|
22309
22531
|
] });
|
|
22310
22532
|
return (
|
|
22311
|
-
/* Wrapper sets --beam-table-actions-height so
|
|
22312
|
-
/* @__PURE__ */
|
|
22533
|
+
/* Wrapper sets --beam-table-actions-height so sticky headers / the pane can read it. */
|
|
22534
|
+
/* @__PURE__ */ jsx169("div", { ref: tableWrapperRef, className: "display_contents", ...tid.tableWrapper, children: tableScrollContent })
|
|
22313
22535
|
);
|
|
22314
22536
|
}
|
|
22315
|
-
var GridTableLayout =
|
|
22537
|
+
var GridTableLayout = React21.memo(GridTableLayoutComponent);
|
|
22316
22538
|
function validateColumns(columns) {
|
|
22317
22539
|
for (const col of columns) {
|
|
22318
22540
|
if (!col.id || !col.name) {
|
|
@@ -22337,11 +22559,11 @@ function useGridTableLayoutState({
|
|
|
22337
22559
|
const groupBy = useGroupBy(maybeGroupBy ?? {
|
|
22338
22560
|
none: "none"
|
|
22339
22561
|
});
|
|
22340
|
-
const [searchString, setSearchString] =
|
|
22562
|
+
const [searchString, setSearchString] = useState46("");
|
|
22341
22563
|
const columnsFallback = "unset-columns";
|
|
22342
22564
|
const [visibleColumnIds, setVisibleColumnIds] = useSessionStorage(persistedColumns?.storageKey ?? columnsFallback, void 0);
|
|
22343
22565
|
const filteringActive = getActiveFilterCount(filter) > 0 || !!searchString;
|
|
22344
|
-
const clearFilters =
|
|
22566
|
+
const clearFilters = useCallback30(() => {
|
|
22345
22567
|
setFilter({});
|
|
22346
22568
|
setSearchString("");
|
|
22347
22569
|
}, [setFilter]);
|
|
@@ -22368,11 +22590,11 @@ function composeEmptyState(tableProps, layoutState, layoutEmptyFallback, clearFi
|
|
|
22368
22590
|
return {
|
|
22369
22591
|
title: tableEmptyState?.title ?? tableEmptyFallback ?? layoutEmptyFallback,
|
|
22370
22592
|
description: tableEmptyState?.description ?? (filteringActive ? filterEmptyDescription : void 0),
|
|
22371
|
-
actions: tableEmptyState?.actions ?? (filteringActive && layoutState ? /* @__PURE__ */
|
|
22593
|
+
actions: tableEmptyState?.actions ?? (filteringActive && layoutState ? /* @__PURE__ */ jsx169(Button, { label: "Clear Filters", variant: "tertiary", onClick: clearFilters, "data-testid": "clearFilters" }) : void 0)
|
|
22372
22594
|
};
|
|
22373
22595
|
}
|
|
22374
22596
|
function useSetTableActionsHeight(tableWrapperRef, tableActionsRef, enabled) {
|
|
22375
|
-
const syncHeightVar =
|
|
22597
|
+
const syncHeightVar = useCallback30(() => {
|
|
22376
22598
|
const tableWrapper = tableWrapperRef.current;
|
|
22377
22599
|
if (!tableWrapper) return;
|
|
22378
22600
|
if (!enabled) {
|
|
@@ -22390,7 +22612,7 @@ function useSetTableActionsHeight(tableWrapperRef, tableActionsRef, enabled) {
|
|
|
22390
22612
|
ref: tableActionsRef,
|
|
22391
22613
|
onResize: enabled ? syncHeightVar : noop
|
|
22392
22614
|
});
|
|
22393
|
-
|
|
22615
|
+
useLayoutEffect7(() => {
|
|
22394
22616
|
syncHeightVar();
|
|
22395
22617
|
const tableWrapper = tableWrapperRef.current;
|
|
22396
22618
|
return () => {
|
|
@@ -22416,7 +22638,7 @@ function resolveGridTableLayoutStyle(userStyle, inDocumentScrollLayout) {
|
|
|
22416
22638
|
}
|
|
22417
22639
|
|
|
22418
22640
|
// src/components/Layout/PreventBrowserScroll.tsx
|
|
22419
|
-
import { jsx as
|
|
22641
|
+
import { jsx as jsx170 } from "react/jsx-runtime";
|
|
22420
22642
|
function PreventBrowserScroll({
|
|
22421
22643
|
children
|
|
22422
22644
|
}) {
|
|
@@ -22424,51 +22646,16 @@ function PreventBrowserScroll({
|
|
|
22424
22646
|
// Take over the full viewport and hide any overflown content.
|
|
22425
22647
|
// 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/
|
|
22426
22648
|
// 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.
|
|
22427
|
-
/* @__PURE__ */
|
|
22649
|
+
/* @__PURE__ */ jsx170("div", { className: "oh vh100 mh_negwebkit_fill_available maxh_negwebkit_fill_available", children: /* @__PURE__ */ jsx170("div", { className: "h100 df fdc mh0 oa", children }) })
|
|
22428
22650
|
);
|
|
22429
22651
|
}
|
|
22430
22652
|
|
|
22431
|
-
// src/components/Layout/RightPaneLayout/RightPaneContext.tsx
|
|
22432
|
-
import React21, { useCallback as useCallback30, useContext as useContext21, useMemo as useMemo43, useState as useState46 } from "react";
|
|
22433
|
-
import { jsx as jsx167 } from "react/jsx-runtime";
|
|
22434
|
-
var RightPaneContext = React21.createContext({
|
|
22435
|
-
openInPane: () => {
|
|
22436
|
-
},
|
|
22437
|
-
closePane: () => {
|
|
22438
|
-
},
|
|
22439
|
-
clearPane: () => {
|
|
22440
|
-
},
|
|
22441
|
-
isRightPaneOpen: false,
|
|
22442
|
-
rightPaneContent: null
|
|
22443
|
-
});
|
|
22444
|
-
function RightPaneProvider({ children }) {
|
|
22445
|
-
const [rightPaneContent, setRightPaneContent] = useState46(void 0);
|
|
22446
|
-
const [isRightPaneOpen, setIsRightPaneOpen] = useState46(false);
|
|
22447
|
-
const openInPane = useCallback30(
|
|
22448
|
-
(opts) => {
|
|
22449
|
-
setRightPaneContent(opts?.content);
|
|
22450
|
-
setIsRightPaneOpen(true);
|
|
22451
|
-
},
|
|
22452
|
-
[setRightPaneContent]
|
|
22453
|
-
);
|
|
22454
|
-
const closePane = useCallback30(() => setIsRightPaneOpen(false), []);
|
|
22455
|
-
const clearPane = useCallback30(() => setRightPaneContent(void 0), [setRightPaneContent]);
|
|
22456
|
-
const context = useMemo43(
|
|
22457
|
-
() => ({ openInPane, closePane, clearPane, rightPaneContent, isRightPaneOpen }),
|
|
22458
|
-
[openInPane, closePane, rightPaneContent, clearPane, isRightPaneOpen]
|
|
22459
|
-
);
|
|
22460
|
-
return /* @__PURE__ */ jsx167(RightPaneContext.Provider, { value: context, children });
|
|
22461
|
-
}
|
|
22462
|
-
function useRightPaneContext() {
|
|
22463
|
-
return useContext21(RightPaneContext);
|
|
22464
|
-
}
|
|
22465
|
-
|
|
22466
22653
|
// src/components/Layout/RightPaneLayout/RightPaneLayout.tsx
|
|
22467
|
-
import { AnimatePresence as
|
|
22468
|
-
import { useEffect as
|
|
22469
|
-
import { trussProps as trussProps92, maybeCssVar as
|
|
22470
|
-
import { Fragment as Fragment38, jsx as
|
|
22471
|
-
var
|
|
22654
|
+
import { AnimatePresence as AnimatePresence4, motion as motion4 } from "framer-motion";
|
|
22655
|
+
import { useEffect as useEffect30 } from "react";
|
|
22656
|
+
import { trussProps as trussProps92, maybeCssVar as maybeCssVar44 } from "@homebound/truss/runtime";
|
|
22657
|
+
import { Fragment as Fragment38, jsx as jsx171, jsxs as jsxs81 } from "react/jsx-runtime";
|
|
22658
|
+
var __maybeInc19 = (inc) => {
|
|
22472
22659
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
22473
22660
|
};
|
|
22474
22661
|
function RightPaneLayout(props) {
|
|
@@ -22484,12 +22671,12 @@ function RightPaneLayout(props) {
|
|
|
22484
22671
|
clearPane,
|
|
22485
22672
|
closePane
|
|
22486
22673
|
} = useRightPaneContext();
|
|
22487
|
-
|
|
22488
|
-
return /* @__PURE__ */
|
|
22489
|
-
/* @__PURE__ */
|
|
22674
|
+
useEffect30(() => closePane, [closePane]);
|
|
22675
|
+
return /* @__PURE__ */ jsx171("div", { className: "h100 df oxh", children: /* @__PURE__ */ jsxs81(Fragment38, { children: [
|
|
22676
|
+
/* @__PURE__ */ jsx171("div", { ...trussProps92({
|
|
22490
22677
|
...{
|
|
22491
22678
|
width: ["w_var", {
|
|
22492
|
-
"--width":
|
|
22679
|
+
"--width": maybeCssVar44(__maybeInc19(`calc(100% - ${paneWidth + 24}px)`))
|
|
22493
22680
|
}],
|
|
22494
22681
|
transition: "transition_width_2s_linear",
|
|
22495
22682
|
height: "h100",
|
|
@@ -22505,13 +22692,13 @@ function RightPaneLayout(props) {
|
|
|
22505
22692
|
...{
|
|
22506
22693
|
...!!defaultPaneContent ? {
|
|
22507
22694
|
width: ["w_var", {
|
|
22508
|
-
"--width":
|
|
22695
|
+
"--width": maybeCssVar44(__maybeInc19(`calc(100% - ${paneWidth + 24}px)`))
|
|
22509
22696
|
}],
|
|
22510
22697
|
marginRight: "mr3"
|
|
22511
22698
|
} : {}
|
|
22512
22699
|
}
|
|
22513
22700
|
}), children }),
|
|
22514
|
-
/* @__PURE__ */
|
|
22701
|
+
/* @__PURE__ */ jsxs81("div", { ...trussProps92({
|
|
22515
22702
|
position: "relative",
|
|
22516
22703
|
...!!defaultPaneContent ? {
|
|
22517
22704
|
width: ["w_var", {
|
|
@@ -22519,7 +22706,7 @@ function RightPaneLayout(props) {
|
|
|
22519
22706
|
}]
|
|
22520
22707
|
} : {}
|
|
22521
22708
|
}), children: [
|
|
22522
|
-
defaultPaneContent && /* @__PURE__ */
|
|
22709
|
+
defaultPaneContent && /* @__PURE__ */ jsx171("div", { ...trussProps92({
|
|
22523
22710
|
height: "h100",
|
|
22524
22711
|
width: ["w_var", {
|
|
22525
22712
|
"--width": `${paneWidth}px`
|
|
@@ -22532,14 +22719,14 @@ function RightPaneLayout(props) {
|
|
|
22532
22719
|
left: "left_100"
|
|
22533
22720
|
} : {}
|
|
22534
22721
|
}), children: defaultPaneContent }),
|
|
22535
|
-
/* @__PURE__ */
|
|
22536
|
-
|
|
22722
|
+
/* @__PURE__ */ jsx171(AnimatePresence4, { children: isRightPaneOpen && /* @__PURE__ */ jsx171(
|
|
22723
|
+
motion4.div,
|
|
22537
22724
|
{
|
|
22538
22725
|
layout: "position",
|
|
22539
22726
|
"data-testid": "rightPaneContent",
|
|
22540
22727
|
...trussProps92({
|
|
22541
22728
|
backgroundColor: ["bgColor_var", {
|
|
22542
|
-
"--backgroundColor":
|
|
22729
|
+
"--backgroundColor": maybeCssVar44(paneBgColor)
|
|
22543
22730
|
}],
|
|
22544
22731
|
height: "h100",
|
|
22545
22732
|
width: ["w_var", {
|
|
@@ -22583,23 +22770,23 @@ function useRightPane() {
|
|
|
22583
22770
|
}
|
|
22584
22771
|
|
|
22585
22772
|
// src/components/Layout/ScrollableFooter.tsx
|
|
22586
|
-
import { createPortal as
|
|
22587
|
-
import { Fragment as Fragment39, jsx as
|
|
22773
|
+
import { createPortal as createPortal6 } from "react-dom";
|
|
22774
|
+
import { Fragment as Fragment39, jsx as jsx172 } from "react/jsx-runtime";
|
|
22588
22775
|
function ScrollableFooter(props) {
|
|
22589
22776
|
const { children } = props;
|
|
22590
22777
|
const { footerEl } = useScrollableParent();
|
|
22591
22778
|
if (!footerEl) {
|
|
22592
|
-
return /* @__PURE__ */
|
|
22779
|
+
return /* @__PURE__ */ jsx172(Fragment39, { children });
|
|
22593
22780
|
}
|
|
22594
|
-
return
|
|
22781
|
+
return createPortal6(/* @__PURE__ */ jsx172(Fragment39, { children }), footerEl);
|
|
22595
22782
|
}
|
|
22596
22783
|
|
|
22597
22784
|
// src/components/Layout/TableReviewLayout/TableReviewLayout.tsx
|
|
22598
|
-
import { AnimatePresence as
|
|
22599
|
-
import { useEffect as
|
|
22785
|
+
import { AnimatePresence as AnimatePresence5, motion as motion5 } from "framer-motion";
|
|
22786
|
+
import { useEffect as useEffect31, useState as useState47 } from "react";
|
|
22600
22787
|
|
|
22601
22788
|
// src/components/Layout/TableReviewLayout/SidePanel.tsx
|
|
22602
|
-
import { jsx as
|
|
22789
|
+
import { jsx as jsx173, jsxs as jsxs82 } from "react/jsx-runtime";
|
|
22603
22790
|
function SidePanel(props) {
|
|
22604
22791
|
const {
|
|
22605
22792
|
title,
|
|
@@ -22609,19 +22796,19 @@ function SidePanel(props) {
|
|
|
22609
22796
|
} = props;
|
|
22610
22797
|
const tid = useTestIds(props, "sidePanel");
|
|
22611
22798
|
const hasFooter = primaryAction || secondaryAction;
|
|
22612
|
-
return /* @__PURE__ */
|
|
22613
|
-
/* @__PURE__ */
|
|
22614
|
-
/* @__PURE__ */
|
|
22615
|
-
hasFooter && /* @__PURE__ */
|
|
22616
|
-
secondaryAction && /* @__PURE__ */
|
|
22617
|
-
primaryAction && /* @__PURE__ */
|
|
22799
|
+
return /* @__PURE__ */ jsxs82("div", { className: "h100 df fdc oh", ...tid, children: [
|
|
22800
|
+
/* @__PURE__ */ jsx173("div", { className: "pt3 pb3 pr3 pl3 fs0", ...tid.header, children: /* @__PURE__ */ jsx173("h2", { className: "fw6 fz_20px lh_28px mt0 mb0", ...tid.title, children: title }) }),
|
|
22801
|
+
/* @__PURE__ */ jsx173("div", { className: "fg1 oya mh0", ...tid.body, children: content }),
|
|
22802
|
+
hasFooter && /* @__PURE__ */ jsxs82("div", { className: "df gap2 jcfe pt3 pb3 pr3 pl3 fs0", ...tid.footer, children: [
|
|
22803
|
+
secondaryAction && /* @__PURE__ */ jsx173(Button, { ...secondaryAction, variant: "secondaryBlack" }),
|
|
22804
|
+
primaryAction && /* @__PURE__ */ jsx173(Button, { ...primaryAction })
|
|
22618
22805
|
] })
|
|
22619
22806
|
] });
|
|
22620
22807
|
}
|
|
22621
22808
|
|
|
22622
22809
|
// src/components/Layout/TableReviewLayout/TableReviewLayout.tsx
|
|
22623
|
-
import { trussProps as trussProps93, maybeCssVar as
|
|
22624
|
-
import { jsx as
|
|
22810
|
+
import { trussProps as trussProps93, maybeCssVar as maybeCssVar45 } from "@homebound/truss/runtime";
|
|
22811
|
+
import { jsx as jsx174, jsxs as jsxs83 } from "react/jsx-runtime";
|
|
22625
22812
|
var defaultRightPaneWidth = 450;
|
|
22626
22813
|
function TableReviewLayout(props) {
|
|
22627
22814
|
const {
|
|
@@ -22637,7 +22824,7 @@ function TableReviewLayout(props) {
|
|
|
22637
22824
|
} = props;
|
|
22638
22825
|
const tid = useTestIds(props, "tableReviewLayout");
|
|
22639
22826
|
const [isPanelVisible, setIsPanelVisible] = useState47(!!panelContent);
|
|
22640
|
-
|
|
22827
|
+
useEffect31(() => {
|
|
22641
22828
|
setIsPanelVisible(!!panelContent);
|
|
22642
22829
|
}, [panelContent]);
|
|
22643
22830
|
function handleClosePanel() {
|
|
@@ -22647,29 +22834,29 @@ function TableReviewLayout(props) {
|
|
|
22647
22834
|
let tableContent;
|
|
22648
22835
|
if (isGridTableProps(tableProps)) {
|
|
22649
22836
|
if (emptyState && !tableProps.rows.some((r) => r.kind !== "header")) {
|
|
22650
|
-
tableContent = /* @__PURE__ */
|
|
22837
|
+
tableContent = /* @__PURE__ */ jsx174("div", { className: "h100 df fdc aic jcc", children: emptyState });
|
|
22651
22838
|
} else {
|
|
22652
|
-
tableContent = /* @__PURE__ */
|
|
22839
|
+
tableContent = /* @__PURE__ */ jsx174(GridTable, { ...tableProps, style: {
|
|
22653
22840
|
allWhite: true,
|
|
22654
22841
|
bordered: true
|
|
22655
22842
|
}, stickyHeader: true });
|
|
22656
22843
|
}
|
|
22657
22844
|
} else if (emptyState) {
|
|
22658
|
-
tableContent = /* @__PURE__ */
|
|
22845
|
+
tableContent = /* @__PURE__ */ jsx174("div", { className: "h100 df fdc aic jcc", children: emptyState });
|
|
22659
22846
|
} else {
|
|
22660
|
-
tableContent = /* @__PURE__ */
|
|
22847
|
+
tableContent = /* @__PURE__ */ jsx174(QueryTable, { ...tableProps, style: {
|
|
22661
22848
|
allWhite: true,
|
|
22662
22849
|
bordered: true
|
|
22663
22850
|
}, stickyHeader: true });
|
|
22664
22851
|
}
|
|
22665
|
-
return /* @__PURE__ */
|
|
22852
|
+
return /* @__PURE__ */ jsxs83("div", { ...trussProps93({
|
|
22666
22853
|
position: "fixed",
|
|
22667
22854
|
top: "top0",
|
|
22668
22855
|
bottom: "bottom0",
|
|
22669
22856
|
left: "left0",
|
|
22670
22857
|
right: "right0",
|
|
22671
22858
|
zIndex: ["z_var", {
|
|
22672
|
-
"--zIndex":
|
|
22859
|
+
"--zIndex": maybeCssVar45(zIndices.pageOverlay)
|
|
22673
22860
|
}],
|
|
22674
22861
|
backgroundColor: ["bgColor_var", {
|
|
22675
22862
|
"--backgroundColor": "var(--b-surface)"
|
|
@@ -22677,16 +22864,16 @@ function TableReviewLayout(props) {
|
|
|
22677
22864
|
display: "df",
|
|
22678
22865
|
flexDirection: "fdc"
|
|
22679
22866
|
}), ...tid, children: [
|
|
22680
|
-
/* @__PURE__ */
|
|
22681
|
-
/* @__PURE__ */
|
|
22682
|
-
/* @__PURE__ */
|
|
22683
|
-
/* @__PURE__ */
|
|
22684
|
-
breadCrumb && /* @__PURE__ */
|
|
22685
|
-
/* @__PURE__ */
|
|
22867
|
+
/* @__PURE__ */ jsxs83("header", { className: "pl3 pr3 pt3 pb2 fs0", ...tid.header, children: [
|
|
22868
|
+
/* @__PURE__ */ jsx174(Toast, {}),
|
|
22869
|
+
/* @__PURE__ */ jsxs83("div", { className: "df jcsb aic", children: [
|
|
22870
|
+
/* @__PURE__ */ jsxs83("div", { children: [
|
|
22871
|
+
breadCrumb && /* @__PURE__ */ jsx174(PageHeaderBreadcrumbs, { breadcrumb: breadCrumb }),
|
|
22872
|
+
/* @__PURE__ */ jsx174("h1", { className: "fw6 fz_30px lh_36px mt1 mb0", ...tid.pageTitle, children: pageTitle })
|
|
22686
22873
|
] }),
|
|
22687
|
-
/* @__PURE__ */
|
|
22874
|
+
/* @__PURE__ */ jsx174(Button, { label: "Close", onClick: closeAction, ...tid.closeButton })
|
|
22688
22875
|
] }),
|
|
22689
|
-
/* @__PURE__ */
|
|
22876
|
+
/* @__PURE__ */ jsx174("div", { ...trussProps93({
|
|
22690
22877
|
fontWeight: "fw4",
|
|
22691
22878
|
fontSize: "fz_14px",
|
|
22692
22879
|
lineHeight: "lh_20px",
|
|
@@ -22696,8 +22883,8 @@ function TableReviewLayout(props) {
|
|
|
22696
22883
|
marginTop: "mt2"
|
|
22697
22884
|
}), ...tid.description, children: description })
|
|
22698
22885
|
] }),
|
|
22699
|
-
/* @__PURE__ */
|
|
22700
|
-
/* @__PURE__ */
|
|
22886
|
+
/* @__PURE__ */ jsxs83("div", { className: "fg1 df mh0", ...tid.content, children: [
|
|
22887
|
+
/* @__PURE__ */ jsx174("div", { ...trussProps93({
|
|
22701
22888
|
...{
|
|
22702
22889
|
flexGrow: "fg1",
|
|
22703
22890
|
overflowY: "oya",
|
|
@@ -22710,7 +22897,7 @@ function TableReviewLayout(props) {
|
|
|
22710
22897
|
} : {}
|
|
22711
22898
|
}
|
|
22712
22899
|
}), children: tableContent }),
|
|
22713
|
-
/* @__PURE__ */
|
|
22900
|
+
/* @__PURE__ */ jsx174(AnimatePresence5, { children: isPanelVisible && panelContent && /* @__PURE__ */ jsxs83(motion5.div, { initial: {
|
|
22714
22901
|
width: 0
|
|
22715
22902
|
}, animate: {
|
|
22716
22903
|
width: rightPaneWidth
|
|
@@ -22720,7 +22907,7 @@ function TableReviewLayout(props) {
|
|
|
22720
22907
|
ease: "linear",
|
|
22721
22908
|
duration: 0.2
|
|
22722
22909
|
}, className: "df fdc fs0 relative", children: [
|
|
22723
|
-
/* @__PURE__ */
|
|
22910
|
+
/* @__PURE__ */ jsxs83("div", { ...trussProps93({
|
|
22724
22911
|
position: "absolute",
|
|
22725
22912
|
top: ["top_var", {
|
|
22726
22913
|
"--top": `${-32}px`
|
|
@@ -22733,8 +22920,8 @@ function TableReviewLayout(props) {
|
|
|
22733
22920
|
}],
|
|
22734
22921
|
zIndex: "z1"
|
|
22735
22922
|
}), children: [
|
|
22736
|
-
/* @__PURE__ */
|
|
22737
|
-
/* @__PURE__ */
|
|
22923
|
+
/* @__PURE__ */ jsx174(IconButton, { bgColor: "--b-surface" /* Surface */, variant: "circle", icon: "x", inc: 3.5, onClick: handleClosePanel, ...tid.closePanelButton }),
|
|
22924
|
+
/* @__PURE__ */ jsx174("div", { ...trussProps93({
|
|
22738
22925
|
width: "w_1px",
|
|
22739
22926
|
backgroundColor: ["bgColor_var", {
|
|
22740
22927
|
"--backgroundColor": "var(--b-field-border-default)"
|
|
@@ -22742,15 +22929,15 @@ function TableReviewLayout(props) {
|
|
|
22742
22929
|
height: "vh100"
|
|
22743
22930
|
}) })
|
|
22744
22931
|
] }),
|
|
22745
|
-
/* @__PURE__ */
|
|
22932
|
+
/* @__PURE__ */ jsx174("div", { className: "fg1 oh mh0", children: /* @__PURE__ */ jsx174(SidePanel, { ...panelContent }) })
|
|
22746
22933
|
] }, "panel") })
|
|
22747
22934
|
] })
|
|
22748
22935
|
] });
|
|
22749
22936
|
}
|
|
22750
22937
|
|
|
22751
22938
|
// src/components/BeamContext.tsx
|
|
22752
|
-
import { jsx as
|
|
22753
|
-
var BeamContext =
|
|
22939
|
+
import { jsx as jsx175, jsxs as jsxs84 } from "react/jsx-runtime";
|
|
22940
|
+
var BeamContext = createContext12({
|
|
22754
22941
|
modalState: new EmptyRef(),
|
|
22755
22942
|
modalCanCloseChecks: new EmptyRef(),
|
|
22756
22943
|
modalHeaderDiv: void 0,
|
|
@@ -22791,14 +22978,14 @@ function BeamProvider({ children, documentTitleConfig, ...presentationProps }) {
|
|
|
22791
22978
|
sdHeaderDiv
|
|
22792
22979
|
};
|
|
22793
22980
|
}, [modalBodyDiv, modalFooterDiv, modalHeaderDiv, sdHeaderDiv]);
|
|
22794
|
-
const beamTree = /* @__PURE__ */
|
|
22795
|
-
/* @__PURE__ */
|
|
22981
|
+
const beamTree = /* @__PURE__ */ jsx175(PresentationProvider, { ...presentationProps, children: /* @__PURE__ */ jsx175(RightPaneProvider, { children: /* @__PURE__ */ jsx175(AutoSaveStatusProvider, { children: /* @__PURE__ */ jsx175(SnackbarProvider, { children: /* @__PURE__ */ jsxs84(ToastProvider, { children: [
|
|
22982
|
+
/* @__PURE__ */ jsxs84(OverlayProvider, { children: [
|
|
22796
22983
|
children,
|
|
22797
|
-
modalRef.current && /* @__PURE__ */
|
|
22984
|
+
modalRef.current && /* @__PURE__ */ jsx175(Modal, { ...modalRef.current })
|
|
22798
22985
|
] }),
|
|
22799
|
-
/* @__PURE__ */
|
|
22986
|
+
/* @__PURE__ */ jsx175(SuperDrawer, {})
|
|
22800
22987
|
] }) }) }) }) });
|
|
22801
|
-
return /* @__PURE__ */
|
|
22988
|
+
return /* @__PURE__ */ jsx175(BeamContext.Provider, { value: { ...context }, children: documentTitleConfig ? /* @__PURE__ */ jsx175(DocumentTitleProvider, { ...documentTitleConfig, children: beamTree }) : beamTree });
|
|
22802
22989
|
}
|
|
22803
22990
|
var PretendRefThatTicks = class {
|
|
22804
22991
|
constructor(ref, tick) {
|
|
@@ -22814,14 +23001,14 @@ var PretendRefThatTicks = class {
|
|
|
22814
23001
|
}
|
|
22815
23002
|
};
|
|
22816
23003
|
function useBeamContext() {
|
|
22817
|
-
return
|
|
23004
|
+
return useContext23(BeamContext);
|
|
22818
23005
|
}
|
|
22819
23006
|
|
|
22820
23007
|
// src/components/Breadcrumbs.tsx
|
|
22821
23008
|
import { Fragment as Fragment40, useState as useState48 } from "react";
|
|
22822
23009
|
import { Link as Link6 } from "react-router-dom";
|
|
22823
23010
|
import { trussProps as trussProps94 } from "@homebound/truss/runtime";
|
|
22824
|
-
import { Fragment as Fragment41, jsx as
|
|
23011
|
+
import { Fragment as Fragment41, jsx as jsx176, jsxs as jsxs85 } from "react/jsx-runtime";
|
|
22825
23012
|
function Breadcrumbs({
|
|
22826
23013
|
breadcrumbs
|
|
22827
23014
|
}) {
|
|
@@ -22836,9 +23023,9 @@ function Breadcrumbs({
|
|
|
22836
23023
|
function renderBreadcrumb(bc, index, isLast) {
|
|
22837
23024
|
return (
|
|
22838
23025
|
// Index is added to the key to prevent rendering issues when multiple items have the same label
|
|
22839
|
-
/* @__PURE__ */
|
|
22840
|
-
index > 0 && /* @__PURE__ */
|
|
22841
|
-
/* @__PURE__ */
|
|
23026
|
+
/* @__PURE__ */ jsxs85(Fragment40, { children: [
|
|
23027
|
+
index > 0 && /* @__PURE__ */ jsx176("span", { className: "fs0 fw4 fz_12px lh_16px", children: "/" }),
|
|
23028
|
+
/* @__PURE__ */ jsx176(Link6, { ...tid.link, to: bc.href, title: bc.label, ...trussProps94({
|
|
22842
23029
|
...{
|
|
22843
23030
|
fontWeight: "fw4",
|
|
22844
23031
|
fontSize: "fz_12px",
|
|
@@ -22857,10 +23044,10 @@ function Breadcrumbs({
|
|
|
22857
23044
|
] }, `${bc.label}-${index}`)
|
|
22858
23045
|
);
|
|
22859
23046
|
}
|
|
22860
|
-
return /* @__PURE__ */
|
|
23047
|
+
return /* @__PURE__ */ jsx176("div", { className: "df aic gap_4px", children: shouldCollapse ? /* @__PURE__ */ jsxs85(Fragment41, { children: [
|
|
22861
23048
|
items.slice(0, leadCount).map((bc, i) => renderBreadcrumb(bc, i)),
|
|
22862
|
-
/* @__PURE__ */
|
|
22863
|
-
/* @__PURE__ */
|
|
23049
|
+
/* @__PURE__ */ jsx176("span", { className: "fs0 fw4 fz_12px lh_16px", children: "/" }),
|
|
23050
|
+
/* @__PURE__ */ jsx176("button", { ...tid.expand, className: "fw4 fz_12px lh_16px gray900 h_gray600", onClick: () => setCollapsed(false), children: "..." }),
|
|
22864
23051
|
renderBreadcrumb(items[items.length - 1], items.length - 1, true)
|
|
22865
23052
|
] }) : items.map((bc, i) => renderBreadcrumb(bc, i, i === items.length - 1)) });
|
|
22866
23053
|
}
|
|
@@ -22869,7 +23056,7 @@ function Breadcrumbs({
|
|
|
22869
23056
|
import { useRef as useRef54 } from "react";
|
|
22870
23057
|
import { useMenuTrigger as useMenuTrigger4 } from "react-aria";
|
|
22871
23058
|
import { useMenuTriggerState as useMenuTriggerState4 } from "react-stately";
|
|
22872
|
-
import { jsx as
|
|
23059
|
+
import { jsx as jsx177 } from "react/jsx-runtime";
|
|
22873
23060
|
function ButtonDatePicker(props) {
|
|
22874
23061
|
const { defaultOpen, disabled, trigger, onSelect, ...datePickerProps } = props;
|
|
22875
23062
|
const state = useMenuTriggerState4({ isOpen: defaultOpen });
|
|
@@ -22882,7 +23069,7 @@ function ButtonDatePicker(props) {
|
|
|
22882
23069
|
props,
|
|
22883
23070
|
isTextButton(trigger) ? defaultTestId(labelOr(trigger, "buttonDatePicker")) : isNavLinkButton(trigger) ? defaultTestId(trigger.navLabel) : isIconButton(trigger) ? trigger.icon : trigger.name
|
|
22884
23071
|
);
|
|
22885
|
-
return /* @__PURE__ */
|
|
23072
|
+
return /* @__PURE__ */ jsx177(OverlayTrigger, { ...props, menuTriggerProps, state, buttonRef, ...tid, children: /* @__PURE__ */ jsx177(DatePickerOverlay, { overlayProps: menuProps, children: /* @__PURE__ */ jsx177(
|
|
22886
23073
|
DatePicker,
|
|
22887
23074
|
{
|
|
22888
23075
|
...datePickerProps,
|
|
@@ -22899,7 +23086,7 @@ function ButtonDatePicker(props) {
|
|
|
22899
23086
|
import { useRef as useRef55 } from "react";
|
|
22900
23087
|
import { useButton as useButton10, useFocusRing as useFocusRing14, useHover as useHover17 } from "react-aria";
|
|
22901
23088
|
import { trussProps as trussProps95 } from "@homebound/truss/runtime";
|
|
22902
|
-
import { jsx as
|
|
23089
|
+
import { jsx as jsx178, jsxs as jsxs86 } from "react/jsx-runtime";
|
|
22903
23090
|
function ButtonGroup(props) {
|
|
22904
23091
|
const {
|
|
22905
23092
|
buttons,
|
|
@@ -22909,7 +23096,7 @@ function ButtonGroup(props) {
|
|
|
22909
23096
|
const tid = useTestIds(props, "buttonGroup");
|
|
22910
23097
|
return (
|
|
22911
23098
|
// Adding `line-height: 0` prevent inheriting line-heights that might throw off sizing within the button group.
|
|
22912
|
-
/* @__PURE__ */
|
|
23099
|
+
/* @__PURE__ */ jsx178("div", { ...tid, ...trussProps95({
|
|
22913
23100
|
...{
|
|
22914
23101
|
display: "df",
|
|
22915
23102
|
lineHeight: "lh_0"
|
|
@@ -22920,7 +23107,7 @@ function ButtonGroup(props) {
|
|
|
22920
23107
|
...buttonProps
|
|
22921
23108
|
}, i) => (
|
|
22922
23109
|
// Disable the button if the ButtonGroup is disabled or if the current button is disabled.
|
|
22923
|
-
/* @__PURE__ */
|
|
23110
|
+
/* @__PURE__ */ jsx178(GroupButton, { ...buttonProps, disabled: disabled || buttonDisabled, size, isFirst: i === 0, isLast: i === buttons.length - 1, ...tid }, i)
|
|
22924
23111
|
)) })
|
|
22925
23112
|
);
|
|
22926
23113
|
}
|
|
@@ -22958,10 +23145,10 @@ function GroupButton(props) {
|
|
|
22958
23145
|
isHovered
|
|
22959
23146
|
} = useHover17(ariaProps);
|
|
22960
23147
|
const tid = useTestIds(props);
|
|
22961
|
-
return /* @__PURE__ */
|
|
23148
|
+
return /* @__PURE__ */ jsx178("span", { ...trussProps95(getButtonStyles2(isFirst, isLast)), children: maybeTooltip({
|
|
22962
23149
|
title: resolveTooltip(disabled, tooltip),
|
|
22963
23150
|
placement: "top",
|
|
22964
|
-
children: /* @__PURE__ */
|
|
23151
|
+
children: /* @__PURE__ */ jsxs86("button", { ref, ...buttonProps, ...focusProps, ...hoverProps, ...trussProps95({
|
|
22965
23152
|
...{
|
|
22966
23153
|
fontWeight: "fw6",
|
|
22967
23154
|
fontSize: "fz_14px",
|
|
@@ -22988,7 +23175,7 @@ function GroupButton(props) {
|
|
|
22988
23175
|
...isPressed ? pressedStyles : isHovered ? hoverStyles3 : {},
|
|
22989
23176
|
...icon ? iconStyles2[size] : {}
|
|
22990
23177
|
}), ...tid[defaultTestId(typeof text === "string" && text || icon || "button")], children: [
|
|
22991
|
-
icon && /* @__PURE__ */
|
|
23178
|
+
icon && /* @__PURE__ */ jsx178(Icon, { xss: {
|
|
22992
23179
|
...!!text ? {
|
|
22993
23180
|
marginRight: "mr_4px"
|
|
22994
23181
|
} : {}
|
|
@@ -23085,7 +23272,7 @@ import { useHover as useHover18 } from "react-aria";
|
|
|
23085
23272
|
import { useResizeObserver as useResizeObserver6 } from "@react-aria/utils";
|
|
23086
23273
|
import { useRef as useRef56, useState as useState49 } from "react";
|
|
23087
23274
|
import { trussProps as trussProps96 } from "@homebound/truss/runtime";
|
|
23088
|
-
import { jsx as
|
|
23275
|
+
import { jsx as jsx179, jsxs as jsxs87 } from "react/jsx-runtime";
|
|
23089
23276
|
function Tag(props) {
|
|
23090
23277
|
const {
|
|
23091
23278
|
text,
|
|
@@ -23118,7 +23305,7 @@ function Tag(props) {
|
|
|
23118
23305
|
const tooltipTitle = !preventTooltip ? isIconOnly ? text : showTooltip ? text : void 0 : void 0;
|
|
23119
23306
|
return maybeTooltip({
|
|
23120
23307
|
title: tooltipTitle,
|
|
23121
|
-
children: /* @__PURE__ */
|
|
23308
|
+
children: /* @__PURE__ */ jsxs87("span", { ...tid, ...trussProps96({
|
|
23122
23309
|
...{
|
|
23123
23310
|
position: "relative",
|
|
23124
23311
|
display: "dif",
|
|
@@ -23137,8 +23324,8 @@ function Tag(props) {
|
|
|
23137
23324
|
...background,
|
|
23138
23325
|
...xss
|
|
23139
23326
|
}), children: [
|
|
23140
|
-
icon && /* @__PURE__ */
|
|
23141
|
-
isIconOnly ? /* @__PURE__ */
|
|
23327
|
+
icon && /* @__PURE__ */ jsx179("span", { className: "fs0", children: /* @__PURE__ */ jsx179(Icon, { icon, inc: 1.75, color: iconColor }) }),
|
|
23328
|
+
isIconOnly ? /* @__PURE__ */ jsx179("span", { className: "absolute oh cli_inset_50 clp_none bd_0 h_1px m_neg1px w_1px p_0 wsnw o0", children: text }) : /* @__PURE__ */ jsx179("span", { ref, className: "oh d_negwebkit_box wbo_vertical to_ellipsis wlc_1 wbba", children: text })
|
|
23142
23329
|
] })
|
|
23143
23330
|
});
|
|
23144
23331
|
}
|
|
@@ -23225,8 +23412,8 @@ function getPrimaryStyles(type) {
|
|
|
23225
23412
|
}
|
|
23226
23413
|
|
|
23227
23414
|
// src/components/Card.tsx
|
|
23228
|
-
import { trussProps as trussProps97, maybeCssVar as
|
|
23229
|
-
import { jsx as
|
|
23415
|
+
import { trussProps as trussProps97, maybeCssVar as maybeCssVar46 } from "@homebound/truss/runtime";
|
|
23416
|
+
import { jsx as jsx180, jsxs as jsxs88 } from "react/jsx-runtime";
|
|
23230
23417
|
function Card(props) {
|
|
23231
23418
|
const {
|
|
23232
23419
|
title,
|
|
@@ -23258,8 +23445,8 @@ function Card(props) {
|
|
|
23258
23445
|
...isHovered && cardHoverStyles,
|
|
23259
23446
|
...isDisabled && disabledStyles2
|
|
23260
23447
|
}), [isDisabled, isHovered, bordered, type, isList, fullWidth]);
|
|
23261
|
-
return /* @__PURE__ */
|
|
23262
|
-
/* @__PURE__ */
|
|
23448
|
+
return /* @__PURE__ */ jsxs88("div", { ...trussProps97(styles), ...hoverProps, ...tid, children: [
|
|
23449
|
+
/* @__PURE__ */ jsx180("div", { ...trussProps97({
|
|
23263
23450
|
...{
|
|
23264
23451
|
height: ["h_var", {
|
|
23265
23452
|
"--height": `${imgHeight}px`
|
|
@@ -23282,14 +23469,14 @@ function Card(props) {
|
|
|
23282
23469
|
flexShrink: "fs0"
|
|
23283
23470
|
},
|
|
23284
23471
|
...isHovered && !isList && imageHoverStyles
|
|
23285
|
-
}), children: /* @__PURE__ */
|
|
23472
|
+
}), children: /* @__PURE__ */ jsx180("img", { ...trussProps97({
|
|
23286
23473
|
width: "w100",
|
|
23287
23474
|
height: "h100",
|
|
23288
23475
|
objectFit: ["objectFit_var", {
|
|
23289
|
-
"--objectFit":
|
|
23476
|
+
"--objectFit": maybeCssVar46(imageFit)
|
|
23290
23477
|
}]
|
|
23291
23478
|
}), src: imgSrc, alt: title, ...tid.img }) }),
|
|
23292
|
-
isHovered && buttonMenuItems && /* @__PURE__ */
|
|
23479
|
+
isHovered && buttonMenuItems && /* @__PURE__ */ jsx180("div", { ...trussProps97({
|
|
23293
23480
|
position: "absolute",
|
|
23294
23481
|
right: "right1",
|
|
23295
23482
|
top: "top1",
|
|
@@ -23297,14 +23484,14 @@ function Card(props) {
|
|
|
23297
23484
|
right: "right3",
|
|
23298
23485
|
top: "top3"
|
|
23299
23486
|
} : {}
|
|
23300
|
-
}), children: /* @__PURE__ */
|
|
23487
|
+
}), children: /* @__PURE__ */ jsx180(ButtonMenu, { trigger: {
|
|
23301
23488
|
icon: "verticalDots",
|
|
23302
23489
|
color: isList ? "--b-on-surface-muted" /* OnSurfaceMuted */ : "--b-on-primary" /* OnPrimary */
|
|
23303
23490
|
}, items: buttonMenuItems }) }),
|
|
23304
|
-
tag && /* @__PURE__ */
|
|
23305
|
-
/* @__PURE__ */
|
|
23306
|
-
/* @__PURE__ */
|
|
23307
|
-
/* @__PURE__ */
|
|
23491
|
+
tag && /* @__PURE__ */ jsx180("div", { className: "absolute left1 top_4px", children: /* @__PURE__ */ jsx180(Tag, { type: tag?.type, text: tag?.text, ...tid.tag }) }),
|
|
23492
|
+
/* @__PURE__ */ jsxs88("div", { className: "df fdc aifs gap1", children: [
|
|
23493
|
+
/* @__PURE__ */ jsxs88("div", { children: [
|
|
23494
|
+
/* @__PURE__ */ jsx180("div", { ...trussProps97({
|
|
23308
23495
|
fontWeight: "fw6",
|
|
23309
23496
|
fontSize: "fz_12px",
|
|
23310
23497
|
lineHeight: "lh_16px",
|
|
@@ -23312,7 +23499,7 @@ function Card(props) {
|
|
|
23312
23499
|
"--color": "var(--b-on-surface-muted)"
|
|
23313
23500
|
}]
|
|
23314
23501
|
}), ...tid.subtitle, children: subtitle }),
|
|
23315
|
-
/* @__PURE__ */
|
|
23502
|
+
/* @__PURE__ */ jsx180("div", { ...trussProps97({
|
|
23316
23503
|
fontWeight: "fw6",
|
|
23317
23504
|
fontSize: "fz_14px",
|
|
23318
23505
|
lineHeight: "lh_20px",
|
|
@@ -23326,7 +23513,7 @@ function Card(props) {
|
|
|
23326
23513
|
} : {}
|
|
23327
23514
|
}), ...tid.title, children: title })
|
|
23328
23515
|
] }),
|
|
23329
|
-
/* @__PURE__ */
|
|
23516
|
+
/* @__PURE__ */ jsx180("div", { ...tid.details, children: detailContent })
|
|
23330
23517
|
] })
|
|
23331
23518
|
] });
|
|
23332
23519
|
}
|
|
@@ -23385,10 +23572,10 @@ var imageHoverStyles = {
|
|
|
23385
23572
|
};
|
|
23386
23573
|
|
|
23387
23574
|
// src/components/Copy.tsx
|
|
23388
|
-
import { mergeProps as
|
|
23389
|
-
import { jsx as
|
|
23575
|
+
import { mergeProps as mergeProps27 } from "@homebound/truss/runtime";
|
|
23576
|
+
import { jsx as jsx181 } from "react/jsx-runtime";
|
|
23390
23577
|
function Copy(props) {
|
|
23391
|
-
return /* @__PURE__ */
|
|
23578
|
+
return /* @__PURE__ */ jsx181("div", { ...mergeProps27("beam-copy", void 0, {
|
|
23392
23579
|
...{
|
|
23393
23580
|
fontWeight: "fw4",
|
|
23394
23581
|
fontSize: "fz_14px",
|
|
@@ -23405,7 +23592,7 @@ function Copy(props) {
|
|
|
23405
23592
|
|
|
23406
23593
|
// src/components/EnvironmentBanner/EnvironmentBanner.tsx
|
|
23407
23594
|
import { trussProps as trussProps98, maybeCssVar as maybeCssVar_14 } from "@homebound/truss/runtime";
|
|
23408
|
-
import { jsx as
|
|
23595
|
+
import { jsx as jsx182, jsxs as jsxs89 } from "react/jsx-runtime";
|
|
23409
23596
|
function EnvironmentBanner(props) {
|
|
23410
23597
|
const {
|
|
23411
23598
|
env,
|
|
@@ -23424,7 +23611,7 @@ function EnvironmentBanner(props) {
|
|
|
23424
23611
|
tooltip
|
|
23425
23612
|
} = getEnvironmentBannerConfig(env, impersonating, showProdWarning);
|
|
23426
23613
|
const bgColorVar = maybeCssVar(bgColor);
|
|
23427
|
-
return /* @__PURE__ */
|
|
23614
|
+
return /* @__PURE__ */ jsxs89("div", { ...trussProps98({
|
|
23428
23615
|
flexShrink: "fs0",
|
|
23429
23616
|
position: "relative",
|
|
23430
23617
|
zIndex: ["z_var", {
|
|
@@ -23440,7 +23627,7 @@ function EnvironmentBanner(props) {
|
|
|
23440
23627
|
}), role: "banner", ...tid, children: [
|
|
23441
23628
|
getInvertedCorner("left", bgColorVar),
|
|
23442
23629
|
getInvertedCorner("right", bgColorVar),
|
|
23443
|
-
/* @__PURE__ */
|
|
23630
|
+
/* @__PURE__ */ jsxs89("div", { ...trussProps98({
|
|
23444
23631
|
...{
|
|
23445
23632
|
position: "relative",
|
|
23446
23633
|
zIndex: "z2",
|
|
@@ -23451,11 +23638,11 @@ function EnvironmentBanner(props) {
|
|
|
23451
23638
|
},
|
|
23452
23639
|
...headerContentPaddingX()
|
|
23453
23640
|
}), ...tid.content, children: [
|
|
23454
|
-
/* @__PURE__ */
|
|
23455
|
-
/* @__PURE__ */
|
|
23641
|
+
/* @__PURE__ */ jsxs89("span", { className: "df aic gap2 fg1 mh0 oh", ...tid.left, children: [
|
|
23642
|
+
/* @__PURE__ */ jsx182(Tag, { text: badgeLabel, xss: {
|
|
23456
23643
|
backgroundColor: "bgColor_FFFFFF90"
|
|
23457
23644
|
}, ...tid.badge }),
|
|
23458
|
-
/* @__PURE__ */
|
|
23645
|
+
/* @__PURE__ */ jsxs89("span", { ...trussProps98({
|
|
23459
23646
|
...{
|
|
23460
23647
|
alignItems: "aic",
|
|
23461
23648
|
gap: "gap1",
|
|
@@ -23473,10 +23660,10 @@ function EnvironmentBanner(props) {
|
|
|
23473
23660
|
}
|
|
23474
23661
|
}), ...tid.message, children: [
|
|
23475
23662
|
message,
|
|
23476
|
-
/* @__PURE__ */
|
|
23663
|
+
/* @__PURE__ */ jsx182("span", { className: "fs0", ...tid.info, children: /* @__PURE__ */ jsx182(Icon, { icon: "infoCircle", tooltip, inc: 2, color: "--b-on-primary" /* OnPrimary */ }) })
|
|
23477
23664
|
] })
|
|
23478
23665
|
] }),
|
|
23479
|
-
impersonating != null && /* @__PURE__ */
|
|
23666
|
+
impersonating != null && /* @__PURE__ */ jsxs89("span", { ...trussProps98({
|
|
23480
23667
|
display: "df",
|
|
23481
23668
|
alignItems: "aic",
|
|
23482
23669
|
gap: "gap2",
|
|
@@ -23488,11 +23675,11 @@ function EnvironmentBanner(props) {
|
|
|
23488
23675
|
}],
|
|
23489
23676
|
flexShrink: "fs0"
|
|
23490
23677
|
}), ...tid.impersonating, children: [
|
|
23491
|
-
(env !== "prod" || showProdWarning) && /* @__PURE__ */
|
|
23492
|
-
/* @__PURE__ */
|
|
23678
|
+
(env !== "prod" || showProdWarning) && /* @__PURE__ */ jsxs89("span", { children: [
|
|
23679
|
+
/* @__PURE__ */ jsx182("span", { className: "dn mdandup_dib", children: "Impersonating \xA0" }),
|
|
23493
23680
|
impersonating.name
|
|
23494
23681
|
] }),
|
|
23495
|
-
/* @__PURE__ */
|
|
23682
|
+
/* @__PURE__ */ jsx182("span", { className: "df fs0", ...tid.impersonatingIcon, children: /* @__PURE__ */ jsx182(Icon, { icon: "impersonate", inc: 2, color: "--b-on-primary" /* OnPrimary */ }) })
|
|
23496
23683
|
] })
|
|
23497
23684
|
] })
|
|
23498
23685
|
] });
|
|
@@ -23565,10 +23752,10 @@ function getInvertedCorner(side, bgColorVar) {
|
|
|
23565
23752
|
right: "right0"
|
|
23566
23753
|
};
|
|
23567
23754
|
const shadowXOffset = side === "left" ? -invertedCornerRadiusPx : invertedCornerRadiusPx;
|
|
23568
|
-
return /* @__PURE__ */
|
|
23755
|
+
return /* @__PURE__ */ jsx182("div", { "aria-hidden": true, ...trussProps98({
|
|
23569
23756
|
...shell,
|
|
23570
23757
|
...outerPosition
|
|
23571
|
-
}), children: /* @__PURE__ */
|
|
23758
|
+
}), children: /* @__PURE__ */ jsx182("div", { ...trussProps98({
|
|
23572
23759
|
height: "h_200",
|
|
23573
23760
|
width: "w_200",
|
|
23574
23761
|
position: "absolute",
|
|
@@ -23602,13 +23789,13 @@ function setEnvironmentFavicon(env, favicons) {
|
|
|
23602
23789
|
import { useMemo as useMemo46 } from "react";
|
|
23603
23790
|
|
|
23604
23791
|
// src/components/Grid/utils.ts
|
|
23605
|
-
import { createContext as
|
|
23792
|
+
import { createContext as createContext13 } from "react";
|
|
23606
23793
|
var gridItemDataAttribute = "data-grid-item-span";
|
|
23607
|
-
var ResponsiveGridContext =
|
|
23794
|
+
var ResponsiveGridContext = createContext13(void 0);
|
|
23608
23795
|
|
|
23609
23796
|
// src/components/Grid/ResponsiveGrid.tsx
|
|
23610
23797
|
import { trussProps as trussProps99 } from "@homebound/truss/runtime";
|
|
23611
|
-
import { jsx as
|
|
23798
|
+
import { jsx as jsx183 } from "react/jsx-runtime";
|
|
23612
23799
|
function ResponsiveGrid(props) {
|
|
23613
23800
|
const {
|
|
23614
23801
|
children,
|
|
@@ -23628,13 +23815,13 @@ function ResponsiveGrid(props) {
|
|
|
23628
23815
|
gap,
|
|
23629
23816
|
columns
|
|
23630
23817
|
}), [minColumnWidth, gap, columns]);
|
|
23631
|
-
return /* @__PURE__ */
|
|
23818
|
+
return /* @__PURE__ */ jsx183(ResponsiveGridContext.Provider, { value: config, children: /* @__PURE__ */ jsx183("div", { ...trussProps99(gridStyles), children }) });
|
|
23632
23819
|
}
|
|
23633
23820
|
|
|
23634
23821
|
// src/components/Grid/ResponsiveGridItem.tsx
|
|
23635
|
-
import { mergeProps as
|
|
23822
|
+
import { mergeProps as mergeProps28 } from "react-aria";
|
|
23636
23823
|
import { trussProps as trussProps100 } from "@homebound/truss/runtime";
|
|
23637
|
-
import { jsx as
|
|
23824
|
+
import { jsx as jsx184 } from "react/jsx-runtime";
|
|
23638
23825
|
function ResponsiveGridItem(props) {
|
|
23639
23826
|
const {
|
|
23640
23827
|
colSpan,
|
|
@@ -23646,13 +23833,13 @@ function ResponsiveGridItem(props) {
|
|
|
23646
23833
|
} = useResponsiveGridItem({
|
|
23647
23834
|
colSpan
|
|
23648
23835
|
});
|
|
23649
|
-
return /* @__PURE__ */
|
|
23836
|
+
return /* @__PURE__ */ jsx184("div", { ...mergeProps28(gridItemProps, trussProps100(gridItemStyles)), children });
|
|
23650
23837
|
}
|
|
23651
23838
|
|
|
23652
23839
|
// src/components/Grid/useResponsiveGrid.ts
|
|
23653
23840
|
import { useMemo as useMemo47 } from "react";
|
|
23654
|
-
import { maybeCssVar as
|
|
23655
|
-
var
|
|
23841
|
+
import { maybeCssVar as maybeCssVar47 } from "@homebound/truss/runtime";
|
|
23842
|
+
var __maybeInc20 = (inc) => {
|
|
23656
23843
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
23657
23844
|
};
|
|
23658
23845
|
function useResponsiveGrid(props) {
|
|
@@ -23670,11 +23857,11 @@ function useResponsiveGrid(props) {
|
|
|
23670
23857
|
return {
|
|
23671
23858
|
display: "dg",
|
|
23672
23859
|
gridTemplateColumns: ["gtc_var", {
|
|
23673
|
-
"--gridTemplateColumns":
|
|
23860
|
+
"--gridTemplateColumns": maybeCssVar47(gridTemplateColumns)
|
|
23674
23861
|
}],
|
|
23675
23862
|
containerType: "ctis",
|
|
23676
23863
|
gap: ["gap_var", {
|
|
23677
|
-
"--gap":
|
|
23864
|
+
"--gap": maybeCssVar47(__maybeInc20(gridGap))
|
|
23678
23865
|
}]
|
|
23679
23866
|
};
|
|
23680
23867
|
}, [minColumnWidth, gap, columns]);
|
|
@@ -23684,12 +23871,12 @@ function useResponsiveGrid(props) {
|
|
|
23684
23871
|
}
|
|
23685
23872
|
|
|
23686
23873
|
// src/components/Grid/useResponsiveGridItem.ts
|
|
23687
|
-
import { useContext as
|
|
23874
|
+
import { useContext as useContext24, useEffect as useEffect32, useMemo as useMemo48 } from "react";
|
|
23688
23875
|
var injectedResponsiveGridClasses = /* @__PURE__ */ new Set();
|
|
23689
23876
|
var responsiveGridStyleEl;
|
|
23690
23877
|
function useResponsiveGridItem(props) {
|
|
23691
23878
|
const { colSpan = 1, gridConfig } = props;
|
|
23692
|
-
const contextConfig =
|
|
23879
|
+
const contextConfig = useContext24(ResponsiveGridContext);
|
|
23693
23880
|
const config = gridConfig ?? contextConfig;
|
|
23694
23881
|
const { className, cssText } = useMemo48(() => {
|
|
23695
23882
|
if (!config || colSpan <= 1) return { className: "", cssText: "" };
|
|
@@ -23714,7 +23901,7 @@ function useResponsiveGridItem(props) {
|
|
|
23714
23901
|
};
|
|
23715
23902
|
}
|
|
23716
23903
|
function useResponsiveGridItemStyle(className, cssText) {
|
|
23717
|
-
|
|
23904
|
+
useEffect32(
|
|
23718
23905
|
function() {
|
|
23719
23906
|
if (!className || !cssText || typeof document === "undefined") return;
|
|
23720
23907
|
if (!responsiveGridStyleEl) {
|
|
@@ -23736,20 +23923,20 @@ function responsiveGridItemClassName(config, colSpan) {
|
|
|
23736
23923
|
}
|
|
23737
23924
|
|
|
23738
23925
|
// src/components/HbLoadingSpinner.tsx
|
|
23739
|
-
import React22, { useContext as
|
|
23926
|
+
import React22, { useContext as useContext25, useMemo as useMemo49 } from "react";
|
|
23740
23927
|
|
|
23741
23928
|
// src/components/HbLoadingSpinner.base64.ts
|
|
23742
23929
|
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";
|
|
23743
23930
|
|
|
23744
23931
|
// src/components/HbLoadingSpinner.tsx
|
|
23745
|
-
import { jsx as
|
|
23932
|
+
import { jsx as jsx185, jsxs as jsxs90 } from "react/jsx-runtime";
|
|
23746
23933
|
function HbLoadingSpinner({
|
|
23747
23934
|
noQuips,
|
|
23748
23935
|
extraQuips = [],
|
|
23749
23936
|
extraQuipsOnly,
|
|
23750
23937
|
iconOnly
|
|
23751
23938
|
}) {
|
|
23752
|
-
const ctx =
|
|
23939
|
+
const ctx = useContext25(HbLoadingSpinnerContext);
|
|
23753
23940
|
const tid = useTestIds({}, "hbSpinner");
|
|
23754
23941
|
const quip = useMemo49(() => {
|
|
23755
23942
|
const allQuips = extraQuipsOnly && extraQuips.length !== 0 ? extraQuips : [...ctx.quips, ...extraQuips];
|
|
@@ -23757,8 +23944,8 @@ function HbLoadingSpinner({
|
|
|
23757
23944
|
if (ctx.noQuips && !forceQuips || noQuips || allQuips.length === 0) return "Loading...";
|
|
23758
23945
|
return allQuips[Math.floor(Math.random() * allQuips.length)];
|
|
23759
23946
|
}, [ctx.noQuips, ctx.quips, extraQuips, extraQuipsOnly, noQuips]);
|
|
23760
|
-
return /* @__PURE__ */
|
|
23761
|
-
/* @__PURE__ */
|
|
23947
|
+
return /* @__PURE__ */ jsxs90("div", { className: "df fdc jcc aic", ...tid, children: [
|
|
23948
|
+
/* @__PURE__ */ jsx185(
|
|
23762
23949
|
"img",
|
|
23763
23950
|
{
|
|
23764
23951
|
src: HbLoadingSpinner_base64_default,
|
|
@@ -23768,7 +23955,7 @@ function HbLoadingSpinner({
|
|
|
23768
23955
|
...tid.gif
|
|
23769
23956
|
}
|
|
23770
23957
|
),
|
|
23771
|
-
!iconOnly && /* @__PURE__ */
|
|
23958
|
+
!iconOnly && /* @__PURE__ */ jsx185(
|
|
23772
23959
|
"div",
|
|
23773
23960
|
{
|
|
23774
23961
|
"data-chromatic": "ignore",
|
|
@@ -23793,23 +23980,23 @@ function HbSpinnerProvider({
|
|
|
23793
23980
|
quips,
|
|
23794
23981
|
noQuips: quips.length === 0
|
|
23795
23982
|
}), [quips]);
|
|
23796
|
-
return /* @__PURE__ */
|
|
23983
|
+
return /* @__PURE__ */ jsx185(HbLoadingSpinnerContext.Provider, { value: state, children });
|
|
23797
23984
|
}
|
|
23798
23985
|
|
|
23799
23986
|
// src/components/Headers/HeaderActions.tsx
|
|
23800
|
-
import { jsx as
|
|
23987
|
+
import { jsx as jsx186 } from "react/jsx-runtime";
|
|
23801
23988
|
function HeaderActions(props) {
|
|
23802
23989
|
const {
|
|
23803
23990
|
actions,
|
|
23804
23991
|
...otherProps
|
|
23805
23992
|
} = props;
|
|
23806
23993
|
const tid = useTestIds(otherProps, "headerActions");
|
|
23807
|
-
return /* @__PURE__ */
|
|
23994
|
+
return /* @__PURE__ */ jsx186("div", { className: "df gap1 fs0", ...tid, children: actions.map((action) => action.kind === "icon" ? /* @__PURE__ */ jsx186(IconButton, { ...action, variant: "outline" }, action.icon) : /* @__PURE__ */ jsx186(Button, { ...action }, `${action.label}`)) });
|
|
23808
23995
|
}
|
|
23809
23996
|
|
|
23810
23997
|
// src/components/Headers/ContentHeader.tsx
|
|
23811
23998
|
import { trussProps as trussProps101 } from "@homebound/truss/runtime";
|
|
23812
|
-
import { jsx as
|
|
23999
|
+
import { jsx as jsx187, jsxs as jsxs91 } from "react/jsx-runtime";
|
|
23813
24000
|
function ContentHeader(props) {
|
|
23814
24001
|
const {
|
|
23815
24002
|
title,
|
|
@@ -23820,7 +24007,7 @@ function ContentHeader(props) {
|
|
|
23820
24007
|
if (!title && !description && !actions) {
|
|
23821
24008
|
return null;
|
|
23822
24009
|
}
|
|
23823
|
-
const descriptionEl = description && /* @__PURE__ */
|
|
24010
|
+
const descriptionEl = description && /* @__PURE__ */ jsx187("div", { ...trussProps101({
|
|
23824
24011
|
fontWeight: "fw4",
|
|
23825
24012
|
fontSize: "fz_14px",
|
|
23826
24013
|
lineHeight: "lh_20px",
|
|
@@ -23828,7 +24015,7 @@ function ContentHeader(props) {
|
|
|
23828
24015
|
"--color": "var(--b-on-surface)"
|
|
23829
24016
|
}]
|
|
23830
24017
|
}), ...tid.description, children: description });
|
|
23831
|
-
return /* @__PURE__ */
|
|
24018
|
+
return /* @__PURE__ */ jsxs91("div", { ...trussProps101({
|
|
23832
24019
|
display: "df",
|
|
23833
24020
|
flexDirection: "fdc",
|
|
23834
24021
|
gap: "gap_12px",
|
|
@@ -23841,18 +24028,18 @@ function ContentHeader(props) {
|
|
|
23841
24028
|
"--backgroundColor": "var(--b-surface)"
|
|
23842
24029
|
}]
|
|
23843
24030
|
}), ...tid, children: [
|
|
23844
|
-
/* @__PURE__ */
|
|
23845
|
-
title ? /* @__PURE__ */
|
|
23846
|
-
actions && /* @__PURE__ */
|
|
24031
|
+
/* @__PURE__ */ jsxs91("div", { className: "df aic jcsb mw0", children: [
|
|
24032
|
+
title ? /* @__PURE__ */ jsx187("h2", { className: "fw6 fz_20px lh_28px", ...tid.title, children: title }) : descriptionEl,
|
|
24033
|
+
actions && /* @__PURE__ */ jsx187(HeaderActions, { actions, ...tid.actions })
|
|
23847
24034
|
] }),
|
|
23848
24035
|
title && descriptionEl
|
|
23849
24036
|
] });
|
|
23850
24037
|
}
|
|
23851
24038
|
|
|
23852
24039
|
// src/components/HomeboundLogo.tsx
|
|
23853
|
-
import { trussProps as trussProps102, maybeCssVar as
|
|
23854
|
-
import { jsx as
|
|
23855
|
-
var
|
|
24040
|
+
import { trussProps as trussProps102, maybeCssVar as maybeCssVar48 } from "@homebound/truss/runtime";
|
|
24041
|
+
import { jsx as jsx188 } from "react/jsx-runtime";
|
|
24042
|
+
var __maybeInc21 = (inc) => {
|
|
23856
24043
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
23857
24044
|
};
|
|
23858
24045
|
function HomeboundLogo(props) {
|
|
@@ -23861,24 +24048,24 @@ function HomeboundLogo(props) {
|
|
|
23861
24048
|
width: width2 = "auto",
|
|
23862
24049
|
height = "auto"
|
|
23863
24050
|
} = props;
|
|
23864
|
-
return /* @__PURE__ */
|
|
24051
|
+
return /* @__PURE__ */ jsx188("svg", { viewBox: "0 0 158.1 97.6", xmlns: "http://www.w3.org/2000/svg", ...trussProps102({
|
|
23865
24052
|
fill: ["fill_var", {
|
|
23866
|
-
"--fill":
|
|
24053
|
+
"--fill": maybeCssVar48(fill)
|
|
23867
24054
|
}],
|
|
23868
24055
|
width: ["w_var", {
|
|
23869
|
-
"--width":
|
|
24056
|
+
"--width": maybeCssVar48(__maybeInc21(width2))
|
|
23870
24057
|
}],
|
|
23871
24058
|
height: ["h_var", {
|
|
23872
|
-
"--height":
|
|
24059
|
+
"--height": maybeCssVar48(__maybeInc21(height))
|
|
23873
24060
|
}]
|
|
23874
|
-
}), children: /* @__PURE__ */
|
|
24061
|
+
}), children: /* @__PURE__ */ jsx188("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" }) });
|
|
23875
24062
|
}
|
|
23876
24063
|
|
|
23877
24064
|
// src/components/JumpLink.tsx
|
|
23878
24065
|
import { useRef as useRef57 } from "react";
|
|
23879
|
-
import { mergeProps as
|
|
24066
|
+
import { mergeProps as mergeProps29, useFocusRing as useFocusRing15, useHover as useHover19, useLink } from "react-aria";
|
|
23880
24067
|
import { trussProps as trussProps103 } from "@homebound/truss/runtime";
|
|
23881
|
-
import { jsx as
|
|
24068
|
+
import { jsx as jsx189 } from "react/jsx-runtime";
|
|
23882
24069
|
function JumpLink(props) {
|
|
23883
24070
|
const {
|
|
23884
24071
|
label,
|
|
@@ -23920,14 +24107,14 @@ function JumpLink(props) {
|
|
|
23920
24107
|
});
|
|
23921
24108
|
}
|
|
23922
24109
|
}
|
|
23923
|
-
return /* @__PURE__ */
|
|
24110
|
+
return /* @__PURE__ */ jsx189("a", { ref, ...mergeProps29(linkProps, focusProps, hoverProps), ...tid, ...trussProps103({
|
|
23924
24111
|
...jumpLinkStyles.baseStyles,
|
|
23925
24112
|
...active && jumpLinkStyles.activeStyles,
|
|
23926
24113
|
...isHovered && !disabled && jumpLinkStyles.hoverStyles,
|
|
23927
24114
|
...isFocusVisible && jumpLinkStyles.focusStyles,
|
|
23928
24115
|
...disabled && jumpLinkStyles.disabledStyles,
|
|
23929
24116
|
...disabled && active && jumpLinkStyles.disabledActiveStyles
|
|
23930
|
-
}), children: /* @__PURE__ */
|
|
24117
|
+
}), children: /* @__PURE__ */ jsx189("span", { className: "oh d_negwebkit_box wbo_vertical to_ellipsis wlc_2", children: label }) });
|
|
23931
24118
|
}
|
|
23932
24119
|
var jumpLinkStyles = {
|
|
23933
24120
|
baseStyles: {
|
|
@@ -23975,10 +24162,10 @@ var jumpLinkStyles = {
|
|
|
23975
24162
|
};
|
|
23976
24163
|
|
|
23977
24164
|
// src/components/MaxLines.tsx
|
|
23978
|
-
import { useLayoutEffect as
|
|
23979
|
-
import { useCallback as useCallback31, useEffect as
|
|
23980
|
-
import { trussProps as trussProps104, maybeCssVar as
|
|
23981
|
-
import { jsx as
|
|
24165
|
+
import { useLayoutEffect as useLayoutEffect8, useResizeObserver as useResizeObserver7 } from "@react-aria/utils";
|
|
24166
|
+
import { useCallback as useCallback31, useEffect as useEffect33, useRef as useRef58, useState as useState50 } from "react";
|
|
24167
|
+
import { trussProps as trussProps104, maybeCssVar as maybeCssVar49 } from "@homebound/truss/runtime";
|
|
24168
|
+
import { jsx as jsx190, jsxs as jsxs92 } from "react/jsx-runtime";
|
|
23982
24169
|
function MaxLines({
|
|
23983
24170
|
maxLines,
|
|
23984
24171
|
children
|
|
@@ -23986,11 +24173,11 @@ function MaxLines({
|
|
|
23986
24173
|
const elRef = useRef58(null);
|
|
23987
24174
|
const [hasMore, setHasMore] = useState50(false);
|
|
23988
24175
|
const [expanded, setExpanded] = useState50(false);
|
|
23989
|
-
|
|
24176
|
+
useLayoutEffect8(() => {
|
|
23990
24177
|
if (!elRef.current) return;
|
|
23991
24178
|
setHasMore(elRef.current.scrollHeight > elRef.current.clientHeight);
|
|
23992
24179
|
}, []);
|
|
23993
|
-
|
|
24180
|
+
useEffect33(() => {
|
|
23994
24181
|
setExpanded(false);
|
|
23995
24182
|
}, [children]);
|
|
23996
24183
|
const onResize = useCallback31(() => {
|
|
@@ -24001,11 +24188,11 @@ function MaxLines({
|
|
|
24001
24188
|
ref: elRef,
|
|
24002
24189
|
onResize
|
|
24003
24190
|
});
|
|
24004
|
-
return /* @__PURE__ */
|
|
24005
|
-
/* @__PURE__ */
|
|
24191
|
+
return /* @__PURE__ */ jsxs92("div", { children: [
|
|
24192
|
+
/* @__PURE__ */ jsx190("div", { ref: elRef, ...trussProps104({
|
|
24006
24193
|
...!expanded ? {
|
|
24007
24194
|
WebkitLineClamp: ["lineClamp_var", {
|
|
24008
|
-
"--WebkitLineClamp":
|
|
24195
|
+
"--WebkitLineClamp": maybeCssVar49(maxLines)
|
|
24009
24196
|
}],
|
|
24010
24197
|
overflow: "oh",
|
|
24011
24198
|
display: "d_negwebkit_box",
|
|
@@ -24013,7 +24200,7 @@ function MaxLines({
|
|
|
24013
24200
|
textOverflow: "to_ellipsis"
|
|
24014
24201
|
} : {}
|
|
24015
24202
|
}), children }),
|
|
24016
|
-
hasMore && /* @__PURE__ */
|
|
24203
|
+
hasMore && /* @__PURE__ */ jsx190("button", { className: "db fw4 fz_14px lh_20px", onClick: () => setExpanded((prev) => !prev), children: expanded ? "Show Less" : "Show More" })
|
|
24017
24204
|
] });
|
|
24018
24205
|
}
|
|
24019
24206
|
|
|
@@ -24023,13 +24210,13 @@ import { camelCase as camelCase6 } from "change-case";
|
|
|
24023
24210
|
// src/components/AppNav/AppNavGroup.tsx
|
|
24024
24211
|
import { useResizeObserver as useResizeObserver8 } from "@react-aria/utils";
|
|
24025
24212
|
import { camelCase as camelCase5, kebabCase } from "change-case";
|
|
24026
|
-
import { useCallback as useCallback33, useEffect as
|
|
24213
|
+
import { useCallback as useCallback33, useEffect as useEffect34, useMemo as useMemo51, useState as useState52 } from "react";
|
|
24027
24214
|
|
|
24028
24215
|
// src/components/AppNav/AppNavGroupTrigger.tsx
|
|
24029
24216
|
import { useMemo as useMemo50, useRef as useRef59 } from "react";
|
|
24030
|
-
import { mergeProps as
|
|
24217
|
+
import { mergeProps as mergeProps30, useButton as useButton11, useFocusRing as useFocusRing16, useHover as useHover20 } from "react-aria";
|
|
24031
24218
|
import { trussProps as trussProps105, mergeProps as mergeProps_14 } from "@homebound/truss/runtime";
|
|
24032
|
-
import { jsx as
|
|
24219
|
+
import { jsx as jsx191, jsxs as jsxs93 } from "react/jsx-runtime";
|
|
24033
24220
|
function AppNavGroupTrigger(props) {
|
|
24034
24221
|
const {
|
|
24035
24222
|
label,
|
|
@@ -24061,7 +24248,7 @@ function AppNavGroupTrigger(props) {
|
|
|
24061
24248
|
hoverStyles: hoverStyles4,
|
|
24062
24249
|
pressedStyles: pressedStyles2
|
|
24063
24250
|
} = useMemo50(() => getNavLinkStyles("side"), []);
|
|
24064
|
-
return /* @__PURE__ */
|
|
24251
|
+
return /* @__PURE__ */ jsxs93("button", { type: "button", ...mergeProps30(buttonProps, focusProps, hoverProps, tid.trigger, {
|
|
24065
24252
|
ref,
|
|
24066
24253
|
"aria-expanded": expanded,
|
|
24067
24254
|
"aria-controls": navGroupId,
|
|
@@ -24079,7 +24266,7 @@ function AppNavGroupTrigger(props) {
|
|
|
24079
24266
|
})
|
|
24080
24267
|
}), children: [
|
|
24081
24268
|
label,
|
|
24082
|
-
/* @__PURE__ */
|
|
24269
|
+
/* @__PURE__ */ jsx191("div", { ...trussProps105({
|
|
24083
24270
|
...{
|
|
24084
24271
|
display: "df",
|
|
24085
24272
|
alignItems: "aic",
|
|
@@ -24089,7 +24276,7 @@ function AppNavGroupTrigger(props) {
|
|
|
24089
24276
|
...props.expanded ? {
|
|
24090
24277
|
transform: "transform_rotate_180deg"
|
|
24091
24278
|
} : {}
|
|
24092
|
-
}), children: /* @__PURE__ */
|
|
24279
|
+
}), children: /* @__PURE__ */ jsx191(Icon, { icon: "chevronDown" }) })
|
|
24093
24280
|
] });
|
|
24094
24281
|
}
|
|
24095
24282
|
|
|
@@ -24232,9 +24419,9 @@ function useAppNavGroupExpanded(linkGroup) {
|
|
|
24232
24419
|
}
|
|
24233
24420
|
|
|
24234
24421
|
// src/components/AppNav/AppNavGroup.tsx
|
|
24235
|
-
import { trussProps as trussProps106, maybeCssVar as
|
|
24236
|
-
import { Fragment as Fragment42, jsx as
|
|
24237
|
-
var
|
|
24422
|
+
import { trussProps as trussProps106, maybeCssVar as maybeCssVar50 } from "@homebound/truss/runtime";
|
|
24423
|
+
import { Fragment as Fragment42, jsx as jsx192, jsxs as jsxs94 } from "react/jsx-runtime";
|
|
24424
|
+
var __maybeInc22 = (inc) => {
|
|
24238
24425
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
24239
24426
|
};
|
|
24240
24427
|
function AppNavGroupView(props) {
|
|
@@ -24244,9 +24431,9 @@ function AppNavGroupView(props) {
|
|
|
24244
24431
|
} = props;
|
|
24245
24432
|
const tid = useTestIds(props, "linkGroup");
|
|
24246
24433
|
if (panelCollapsed) {
|
|
24247
|
-
return /* @__PURE__ */
|
|
24434
|
+
return /* @__PURE__ */ jsx192(Fragment42, { children: appNavLinkGroupLinks(linkGroup).map((link) => /* @__PURE__ */ jsx192(NavLink, { variant: "side", ...link, iconOnly: !!link.icon, ...tid[`link_${camelCase5(link.label)}`] }, link.label)) });
|
|
24248
24435
|
}
|
|
24249
|
-
return /* @__PURE__ */
|
|
24436
|
+
return /* @__PURE__ */ jsx192(AppNavGroupDisclosure, { ...props });
|
|
24250
24437
|
}
|
|
24251
24438
|
function AppNavGroupDisclosure(props) {
|
|
24252
24439
|
const {
|
|
@@ -24263,7 +24450,7 @@ function AppNavGroupDisclosure(props) {
|
|
|
24263
24450
|
current: contentEl
|
|
24264
24451
|
}), [contentEl]);
|
|
24265
24452
|
const [contentHeight, setContentHeight] = useState52(expanded ? "auto" : "0");
|
|
24266
|
-
|
|
24453
|
+
useEffect34(() => {
|
|
24267
24454
|
setContentHeight(expanded && contentEl ? `${contentEl.scrollHeight}px` : "0");
|
|
24268
24455
|
}, [expanded, contentEl]);
|
|
24269
24456
|
const onResize = useCallback33(() => {
|
|
@@ -24275,27 +24462,27 @@ function AppNavGroupDisclosure(props) {
|
|
|
24275
24462
|
ref: contentRef,
|
|
24276
24463
|
onResize
|
|
24277
24464
|
});
|
|
24278
|
-
return /* @__PURE__ */
|
|
24279
|
-
/* @__PURE__ */
|
|
24280
|
-
/* @__PURE__ */
|
|
24465
|
+
return /* @__PURE__ */ jsxs94("div", { className: "df fdc", ...tid, children: [
|
|
24466
|
+
/* @__PURE__ */ jsx192(AppNavGroupTrigger, { label: linkGroup.label, navGroupId, expanded, active: linkGroupHasActiveLink(linkGroup), onClick: onToggle, ...tid }),
|
|
24467
|
+
/* @__PURE__ */ jsx192("div", { id: navGroupId, role: "region", "aria-hidden": !expanded, ...trussProps106({
|
|
24281
24468
|
overflow: "oh",
|
|
24282
24469
|
transition: "transitionHeight",
|
|
24283
24470
|
height: ["h_var", {
|
|
24284
|
-
"--height":
|
|
24471
|
+
"--height": maybeCssVar50(__maybeInc22(contentHeight))
|
|
24285
24472
|
}]
|
|
24286
24473
|
}), ...tid.panel, ...!expanded ? {
|
|
24287
24474
|
inert: "true"
|
|
24288
|
-
} : {}, children: /* @__PURE__ */
|
|
24475
|
+
} : {}, children: /* @__PURE__ */ jsx192("div", { ref: setContentEl, className: "df fdc", children: /* @__PURE__ */ jsx192(AppNavItems, { items: linkGroup.items, panelCollapsed: false, nested: true, ...tid }) }) })
|
|
24289
24476
|
] });
|
|
24290
24477
|
}
|
|
24291
24478
|
|
|
24292
24479
|
// src/components/AppNav/AppNavGroupMenu.tsx
|
|
24293
|
-
import { jsx as
|
|
24480
|
+
import { jsx as jsx193 } from "react/jsx-runtime";
|
|
24294
24481
|
function AppNavGroupMenu({
|
|
24295
24482
|
linkGroup,
|
|
24296
24483
|
...tid
|
|
24297
24484
|
}) {
|
|
24298
|
-
return /* @__PURE__ */
|
|
24485
|
+
return /* @__PURE__ */ jsx193(
|
|
24299
24486
|
ButtonMenu,
|
|
24300
24487
|
{
|
|
24301
24488
|
trigger: {
|
|
@@ -24312,7 +24499,7 @@ function AppNavGroupMenu({
|
|
|
24312
24499
|
|
|
24313
24500
|
// src/components/AppNav/AppNavSectionView.tsx
|
|
24314
24501
|
import { trussProps as trussProps107 } from "@homebound/truss/runtime";
|
|
24315
|
-
import { jsx as
|
|
24502
|
+
import { jsx as jsx194, jsxs as jsxs95 } from "react/jsx-runtime";
|
|
24316
24503
|
function AppNavSectionView(props) {
|
|
24317
24504
|
const {
|
|
24318
24505
|
section,
|
|
@@ -24338,7 +24525,7 @@ function AppNavSectionView(props) {
|
|
|
24338
24525
|
"--borderColor": "var(--b-surface-separator)"
|
|
24339
24526
|
}]
|
|
24340
24527
|
};
|
|
24341
|
-
return /* @__PURE__ */
|
|
24528
|
+
return /* @__PURE__ */ jsxs95("div", { ...trussProps107({
|
|
24342
24529
|
...{
|
|
24343
24530
|
display: "df",
|
|
24344
24531
|
flexDirection: "fdc",
|
|
@@ -24346,7 +24533,7 @@ function AppNavSectionView(props) {
|
|
|
24346
24533
|
},
|
|
24347
24534
|
...showDivider ? dividerStyles : {}
|
|
24348
24535
|
}), ...tid, children: [
|
|
24349
|
-
section.label && !panelCollapsed && variant !== "global" && /* @__PURE__ */
|
|
24536
|
+
section.label && !panelCollapsed && variant !== "global" && /* @__PURE__ */ jsx194("div", { ...trussProps107({
|
|
24350
24537
|
fontWeight: "fw6",
|
|
24351
24538
|
fontSize: "fz_10px",
|
|
24352
24539
|
lineHeight: "lh_14px",
|
|
@@ -24359,18 +24546,18 @@ function AppNavSectionView(props) {
|
|
|
24359
24546
|
paddingBottom: "pb1",
|
|
24360
24547
|
textTransform: "ttu"
|
|
24361
24548
|
}), ...tid.label, children: section.label }),
|
|
24362
|
-
/* @__PURE__ */
|
|
24549
|
+
/* @__PURE__ */ jsx194(AppNavItems, { ...scopeProps, items: section.items, variant, panelCollapsed, nested })
|
|
24363
24550
|
] });
|
|
24364
24551
|
}
|
|
24365
24552
|
|
|
24366
24553
|
// src/components/AppNav/AppNavItems.tsx
|
|
24367
|
-
import { Fragment as Fragment43, jsx as
|
|
24554
|
+
import { Fragment as Fragment43, jsx as jsx195 } from "react/jsx-runtime";
|
|
24368
24555
|
function AppNavItems(props) {
|
|
24369
24556
|
const { items, variant = "side", panelCollapsed = false, nested = false } = props;
|
|
24370
24557
|
const tid = useTestIds(props, "appNav");
|
|
24371
|
-
return /* @__PURE__ */
|
|
24558
|
+
return /* @__PURE__ */ jsx195(Fragment43, { children: items.map((item, idx) => {
|
|
24372
24559
|
if (isAppNavLink(item)) {
|
|
24373
|
-
return /* @__PURE__ */
|
|
24560
|
+
return /* @__PURE__ */ jsx195(
|
|
24374
24561
|
NavLink,
|
|
24375
24562
|
{
|
|
24376
24563
|
variant,
|
|
@@ -24383,7 +24570,7 @@ function AppNavItems(props) {
|
|
|
24383
24570
|
);
|
|
24384
24571
|
}
|
|
24385
24572
|
if (isAppNavGroup(item)) {
|
|
24386
|
-
return variant === "global" ? /* @__PURE__ */
|
|
24573
|
+
return variant === "global" ? /* @__PURE__ */ jsx195(AppNavGroupMenu, { linkGroup: item, ...tid.linkGroup }, appNavItemKey(item)) : /* @__PURE__ */ jsx195(
|
|
24387
24574
|
AppNavGroupView,
|
|
24388
24575
|
{
|
|
24389
24576
|
linkGroup: item,
|
|
@@ -24394,7 +24581,7 @@ function AppNavItems(props) {
|
|
|
24394
24581
|
);
|
|
24395
24582
|
}
|
|
24396
24583
|
if (isAppNavSection(item)) {
|
|
24397
|
-
return /* @__PURE__ */
|
|
24584
|
+
return /* @__PURE__ */ jsx195(
|
|
24398
24585
|
AppNavSectionView,
|
|
24399
24586
|
{
|
|
24400
24587
|
section: item,
|
|
@@ -24412,26 +24599,13 @@ function AppNavItems(props) {
|
|
|
24412
24599
|
}
|
|
24413
24600
|
|
|
24414
24601
|
// src/components/Navbar/NavbarMobileMenu.tsx
|
|
24415
|
-
import { AnimatePresence as
|
|
24416
|
-
import { useEffect as
|
|
24417
|
-
import { FocusScope as FocusScope5, usePreventScroll as
|
|
24418
|
-
import { createPortal as
|
|
24602
|
+
import { AnimatePresence as AnimatePresence6, motion as motion6 } from "framer-motion";
|
|
24603
|
+
import { useEffect as useEffect35, useState as useState53 } from "react";
|
|
24604
|
+
import { FocusScope as FocusScope5, usePreventScroll as usePreventScroll3 } from "react-aria";
|
|
24605
|
+
import { createPortal as createPortal7 } from "react-dom";
|
|
24419
24606
|
import { useLocation } from "react-router-dom";
|
|
24420
|
-
|
|
24421
|
-
|
|
24422
|
-
import { createContext as createContext13, useContext as useContext25 } from "react";
|
|
24423
|
-
import { jsx as jsx193 } from "react/jsx-runtime";
|
|
24424
|
-
var EnvironmentBannerLayoutHeightContext = createContext13(0);
|
|
24425
|
-
function EnvironmentBannerLayoutHeightProvider({ value, children }) {
|
|
24426
|
-
return /* @__PURE__ */ jsx193(EnvironmentBannerLayoutHeightContext.Provider, { value, children });
|
|
24427
|
-
}
|
|
24428
|
-
function useEnvironmentBannerLayoutHeight() {
|
|
24429
|
-
return useContext25(EnvironmentBannerLayoutHeightContext);
|
|
24430
|
-
}
|
|
24431
|
-
|
|
24432
|
-
// src/components/Navbar/NavbarMobileMenu.tsx
|
|
24433
|
-
import { trussProps as trussProps108, mergeProps as mergeProps29, maybeCssVar as maybeCssVar50 } from "@homebound/truss/runtime";
|
|
24434
|
-
import { Fragment as Fragment44, jsx as jsx194, jsxs as jsxs95 } from "react/jsx-runtime";
|
|
24607
|
+
import { trussProps as trussProps108, mergeProps as mergeProps31, maybeCssVar as maybeCssVar51 } from "@homebound/truss/runtime";
|
|
24608
|
+
import { Fragment as Fragment44, jsx as jsx196, jsxs as jsxs96 } from "react/jsx-runtime";
|
|
24435
24609
|
function NavbarMobileMenu(props) {
|
|
24436
24610
|
const {
|
|
24437
24611
|
items
|
|
@@ -24442,18 +24616,18 @@ function NavbarMobileMenu(props) {
|
|
|
24442
24616
|
pathname,
|
|
24443
24617
|
search
|
|
24444
24618
|
} = useLocation();
|
|
24445
|
-
|
|
24619
|
+
usePreventScroll3({
|
|
24446
24620
|
isDisabled: !isOpen
|
|
24447
24621
|
});
|
|
24448
|
-
|
|
24622
|
+
useEffect35(() => {
|
|
24449
24623
|
setIsOpen(false);
|
|
24450
24624
|
}, [pathname, search]);
|
|
24451
24625
|
const close = () => setIsOpen(false);
|
|
24452
|
-
return /* @__PURE__ */
|
|
24453
|
-
/* @__PURE__ */
|
|
24454
|
-
|
|
24626
|
+
return /* @__PURE__ */ jsxs96(Fragment44, { children: [
|
|
24627
|
+
/* @__PURE__ */ jsx196(IconButton, { icon: isOpen ? "menuClose" : "menu", color: "--b-on-surface-muted" /* OnSurfaceMuted */, label: isOpen ? "Close navigation" : "Open navigation", onClick: () => setIsOpen((open) => !open), ...tid.mobileMenu }),
|
|
24628
|
+
createPortal7(
|
|
24455
24629
|
/* AnimatePresence keeps the drawer mounted through its slide/fade-out before unmounting.*/
|
|
24456
|
-
/* @__PURE__ */
|
|
24630
|
+
/* @__PURE__ */ jsx196(AnimatePresence6, { children: isOpen && /* @__PURE__ */ jsx196(NavbarMobileDrawer, { items, onClose: close, tid }) }),
|
|
24457
24631
|
document.body
|
|
24458
24632
|
)
|
|
24459
24633
|
] });
|
|
@@ -24467,14 +24641,14 @@ function NavbarMobileDrawer({
|
|
|
24467
24641
|
const overlayTopStyle = {
|
|
24468
24642
|
top: bannerHeightPx
|
|
24469
24643
|
};
|
|
24470
|
-
return /* @__PURE__ */
|
|
24471
|
-
/* @__PURE__ */
|
|
24644
|
+
return /* @__PURE__ */ jsxs96(Fragment44, { children: [
|
|
24645
|
+
/* @__PURE__ */ jsx196(motion6.div, { ...mergeProps31(void 0, overlayTopStyle, {
|
|
24472
24646
|
position: "fixed",
|
|
24473
24647
|
right: "right0",
|
|
24474
24648
|
bottom: "bottom0",
|
|
24475
24649
|
left: "left0",
|
|
24476
24650
|
zIndex: ["z_var", {
|
|
24477
|
-
"--zIndex":
|
|
24651
|
+
"--zIndex": maybeCssVar51(zIndices.navbarMobileMenuScrim)
|
|
24478
24652
|
}],
|
|
24479
24653
|
backgroundColor: ["bgColor_var", {
|
|
24480
24654
|
"--backgroundColor": "var(--b-scrim)"
|
|
@@ -24489,7 +24663,7 @@ function NavbarMobileDrawer({
|
|
|
24489
24663
|
ease: "linear",
|
|
24490
24664
|
duration: 0.2
|
|
24491
24665
|
}, onClick: onClose, ...tid.mobileMenuScrim }, "navbarMobileMenuScrim"),
|
|
24492
|
-
/* @__PURE__ */
|
|
24666
|
+
/* @__PURE__ */ jsx196(FocusScope5, { autoFocus: true, contain: true, restoreFocus: true, children: /* @__PURE__ */ jsxs96(motion6.aside, { role: "dialog", "aria-modal": "true", "aria-label": "Navigation", ...mergeProps31(void 0, overlayTopStyle, {
|
|
24493
24667
|
position: "fixed",
|
|
24494
24668
|
bottom: "bottom0",
|
|
24495
24669
|
left: "left0",
|
|
@@ -24499,7 +24673,7 @@ function NavbarMobileDrawer({
|
|
|
24499
24673
|
width: "w_260px",
|
|
24500
24674
|
overflow: "oh",
|
|
24501
24675
|
zIndex: ["z_var", {
|
|
24502
|
-
"--zIndex":
|
|
24676
|
+
"--zIndex": maybeCssVar51(zIndices.navbarMobileMenu)
|
|
24503
24677
|
}],
|
|
24504
24678
|
backgroundColor: ["bgColor_var", {
|
|
24505
24679
|
"--backgroundColor": "var(--b-surface)"
|
|
@@ -24514,7 +24688,7 @@ function NavbarMobileDrawer({
|
|
|
24514
24688
|
ease: "linear",
|
|
24515
24689
|
duration: 0.2
|
|
24516
24690
|
}, onClick: (e) => e.stopPropagation(), ...tid.mobileMenuDrawer, children: [
|
|
24517
|
-
/* @__PURE__ */
|
|
24691
|
+
/* @__PURE__ */ jsx196("div", { ...trussProps108({
|
|
24518
24692
|
...{
|
|
24519
24693
|
display: "df",
|
|
24520
24694
|
alignItems: "aic",
|
|
@@ -24529,8 +24703,8 @@ function NavbarMobileDrawer({
|
|
|
24529
24703
|
}]
|
|
24530
24704
|
},
|
|
24531
24705
|
...pageContentPaddingX
|
|
24532
|
-
}), children: /* @__PURE__ */
|
|
24533
|
-
/* @__PURE__ */
|
|
24706
|
+
}), children: /* @__PURE__ */ jsx196(IconButton, { icon: "x", color: "--b-on-surface-muted" /* OnSurfaceMuted */, label: "Close navigation", onClick: onClose, ...tid.mobileMenuClose }) }),
|
|
24707
|
+
/* @__PURE__ */ jsx196(
|
|
24534
24708
|
"nav",
|
|
24535
24709
|
{
|
|
24536
24710
|
...trussProps108({
|
|
@@ -24551,7 +24725,7 @@ function NavbarMobileDrawer({
|
|
|
24551
24725
|
}
|
|
24552
24726
|
},
|
|
24553
24727
|
...tid.mobileMenuPanel,
|
|
24554
|
-
children: /* @__PURE__ */
|
|
24728
|
+
children: /* @__PURE__ */ jsx196(AppNavItems, { items, panelCollapsed: false, ...tid })
|
|
24555
24729
|
}
|
|
24556
24730
|
)
|
|
24557
24731
|
] }, "navbarMobileMenuDrawer") })
|
|
@@ -24560,7 +24734,7 @@ function NavbarMobileDrawer({
|
|
|
24560
24734
|
|
|
24561
24735
|
// src/components/Navbar/Navbar.tsx
|
|
24562
24736
|
import { trussProps as trussProps109 } from "@homebound/truss/runtime";
|
|
24563
|
-
import { jsx as
|
|
24737
|
+
import { jsx as jsx197, jsxs as jsxs97 } from "react/jsx-runtime";
|
|
24564
24738
|
function Navbar(props) {
|
|
24565
24739
|
const {
|
|
24566
24740
|
brand,
|
|
@@ -24579,7 +24753,7 @@ function Navbar(props) {
|
|
|
24579
24753
|
overflows
|
|
24580
24754
|
} = useContentOverflow(!sm);
|
|
24581
24755
|
const showMobile = sm || overflows;
|
|
24582
|
-
return /* @__PURE__ */
|
|
24756
|
+
return /* @__PURE__ */ jsx197(ContrastScope, { children: /* @__PURE__ */ jsxs97("nav", { ...trussProps109({
|
|
24583
24757
|
...{
|
|
24584
24758
|
backgroundColor: ["bgColor_var", {
|
|
24585
24759
|
"--backgroundColor": "var(--b-surface-raised)"
|
|
@@ -24595,10 +24769,10 @@ function Navbar(props) {
|
|
|
24595
24769
|
},
|
|
24596
24770
|
...headerContentPaddingX(showMobile)
|
|
24597
24771
|
}), ...tid, children: [
|
|
24598
|
-
/* @__PURE__ */
|
|
24599
|
-
/* @__PURE__ */
|
|
24600
|
-
showMobile && /* @__PURE__ */
|
|
24601
|
-
/* @__PURE__ */
|
|
24772
|
+
/* @__PURE__ */ jsxs97("div", { className: "df aic gap3 fg1 mw0", children: [
|
|
24773
|
+
/* @__PURE__ */ jsxs97("div", { className: "df aic fs0 gap2", children: [
|
|
24774
|
+
showMobile && /* @__PURE__ */ jsx197(NavbarMobileMenu, { items, ...tid }),
|
|
24775
|
+
/* @__PURE__ */ jsx197("div", { ...trussProps109({
|
|
24602
24776
|
flexShrink: "fs0",
|
|
24603
24777
|
...hideBrandOnMobile && showMobile ? {
|
|
24604
24778
|
display: "dn"
|
|
@@ -24607,7 +24781,7 @@ function Navbar(props) {
|
|
|
24607
24781
|
] }),
|
|
24608
24782
|
!sm && // Stays mounted while overflowing (hidden) so the items remain measurable and the bar
|
|
24609
24783
|
// can expand again as space frees up.
|
|
24610
|
-
/* @__PURE__ */
|
|
24784
|
+
/* @__PURE__ */ jsx197("div", { ref: containerRef, ...trussProps109({
|
|
24611
24785
|
display: "df",
|
|
24612
24786
|
alignItems: "aic",
|
|
24613
24787
|
flexGrow: "fg1",
|
|
@@ -24616,11 +24790,11 @@ function Navbar(props) {
|
|
|
24616
24790
|
...overflows ? {
|
|
24617
24791
|
visibility: "visibility_hidden"
|
|
24618
24792
|
} : {}
|
|
24619
|
-
}), ...tid.items, children: /* @__PURE__ */
|
|
24793
|
+
}), ...tid.items, children: /* @__PURE__ */ jsx197("div", { ref: contentRef, className: "df aic gap2 width_max_content", children: /* @__PURE__ */ jsx197(AppNavItems, { variant: "global", items, ...tid }) }) })
|
|
24620
24794
|
] }),
|
|
24621
|
-
/* @__PURE__ */
|
|
24622
|
-
rightSlot && /* @__PURE__ */
|
|
24623
|
-
user && /* @__PURE__ */
|
|
24795
|
+
/* @__PURE__ */ jsxs97("div", { className: "df aic gap1", children: [
|
|
24796
|
+
rightSlot && /* @__PURE__ */ jsx197("div", { className: "df aic gap1", ...tid.rightSlot, children: rightSlot }),
|
|
24797
|
+
user && /* @__PURE__ */ jsx197(NavbarUserMenu, { user, ...tid.userMenu })
|
|
24624
24798
|
] })
|
|
24625
24799
|
] }) });
|
|
24626
24800
|
}
|
|
@@ -24628,7 +24802,7 @@ function NavbarUserMenu({
|
|
|
24628
24802
|
user,
|
|
24629
24803
|
...tid
|
|
24630
24804
|
}) {
|
|
24631
|
-
return /* @__PURE__ */
|
|
24805
|
+
return /* @__PURE__ */ jsx197("div", { className: "df aic fs0 ml1", children: /* @__PURE__ */ jsx197(ButtonMenu, { items: user.menuItems, persistentItems: user.persistentItems, trigger: {
|
|
24632
24806
|
src: user.picture,
|
|
24633
24807
|
name: user.name,
|
|
24634
24808
|
size: "sm",
|
|
@@ -24638,7 +24812,7 @@ function NavbarUserMenu({
|
|
|
24638
24812
|
|
|
24639
24813
|
// src/components/Pagination.tsx
|
|
24640
24814
|
import { trussProps as trussProps110 } from "@homebound/truss/runtime";
|
|
24641
|
-
import { jsx as
|
|
24815
|
+
import { jsx as jsx198, jsxs as jsxs98 } from "react/jsx-runtime";
|
|
24642
24816
|
var defaultPage = {
|
|
24643
24817
|
offset: 0,
|
|
24644
24818
|
limit: 100
|
|
@@ -24670,7 +24844,7 @@ function Pagination(props) {
|
|
|
24670
24844
|
}
|
|
24671
24845
|
}
|
|
24672
24846
|
const tid = useTestIds(props, "pagination");
|
|
24673
|
-
return /* @__PURE__ */
|
|
24847
|
+
return /* @__PURE__ */ jsxs98("div", { ...trussProps110({
|
|
24674
24848
|
display: "df",
|
|
24675
24849
|
borderColor: ["bc_var", {
|
|
24676
24850
|
"--borderColor": "var(--b-surface-separator)"
|
|
@@ -24687,24 +24861,24 @@ function Pagination(props) {
|
|
|
24687
24861
|
paddingRight: "pr2",
|
|
24688
24862
|
paddingTop: "pt2"
|
|
24689
24863
|
}), ...tid, children: [
|
|
24690
|
-
/* @__PURE__ */
|
|
24691
|
-
/* @__PURE__ */
|
|
24864
|
+
/* @__PURE__ */ jsx198("div", { className: "df mta mba mr2", ...tid.pageSizeLabel, children: "Page size:" }),
|
|
24865
|
+
/* @__PURE__ */ jsx198("div", { className: "w_78px", children: /* @__PURE__ */ jsx198(SelectField, { compact: true, label: "Page Size", labelStyle: "hidden", options: pageOptions, value: pageSize, onSelect: (val) => set({
|
|
24692
24866
|
pageNumber: 1,
|
|
24693
24867
|
pageSize: val
|
|
24694
24868
|
}), autoSort: false, ...tid.pageSize }) }),
|
|
24695
|
-
/* @__PURE__ */
|
|
24696
|
-
/* @__PURE__ */
|
|
24869
|
+
/* @__PURE__ */ jsxs98("div", { className: "mla mta mba df", children: [
|
|
24870
|
+
/* @__PURE__ */ jsxs98("div", { className: "df mta mba mr2", ...tid.pageInfoLabel, children: [
|
|
24697
24871
|
first,
|
|
24698
24872
|
" ",
|
|
24699
24873
|
showLast ? `- ${last}` : "",
|
|
24700
24874
|
" of ",
|
|
24701
24875
|
totalCount
|
|
24702
24876
|
] }),
|
|
24703
|
-
/* @__PURE__ */
|
|
24877
|
+
/* @__PURE__ */ jsx198(IconButton, { icon: "chevronLeft", color: hasPrevPage ? "--b-text-link-default" /* TextLinkDefault */ : "--b-surface-separator" /* SurfaceSeparator */, onClick: () => set({
|
|
24704
24878
|
pageNumber: pageNumber - 1,
|
|
24705
24879
|
pageSize
|
|
24706
24880
|
}), disabled: !hasPrevPage, ...tid.previousIcon }),
|
|
24707
|
-
/* @__PURE__ */
|
|
24881
|
+
/* @__PURE__ */ jsx198(IconButton, { icon: "chevronRight", color: hasNextPage ? "--b-text-link-default" /* TextLinkDefault */ : "--b-surface-separator" /* SurfaceSeparator */, onClick: () => set({
|
|
24708
24882
|
pageNumber: pageNumber + 1,
|
|
24709
24883
|
pageSize
|
|
24710
24884
|
}), disabled: !hasNextPage, ...tid.nextIcon })
|
|
@@ -24728,8 +24902,8 @@ function toPageNumberSize(page) {
|
|
|
24728
24902
|
// src/components/ScrollShadows.tsx
|
|
24729
24903
|
import { useResizeObserver as useResizeObserver9 } from "@react-aria/utils";
|
|
24730
24904
|
import { useCallback as useCallback34, useMemo as useMemo52, useRef as useRef60, useState as useState54 } from "react";
|
|
24731
|
-
import { trussProps as trussProps111, maybeCssVar as
|
|
24732
|
-
import { jsx as
|
|
24905
|
+
import { trussProps as trussProps111, maybeCssVar as maybeCssVar52 } from "@homebound/truss/runtime";
|
|
24906
|
+
import { jsx as jsx199, jsxs as jsxs99 } from "react/jsx-runtime";
|
|
24733
24907
|
function ScrollShadows(props) {
|
|
24734
24908
|
const {
|
|
24735
24909
|
children,
|
|
@@ -24753,7 +24927,7 @@ function ScrollShadows(props) {
|
|
|
24753
24927
|
const commonStyles = {
|
|
24754
24928
|
position: "absolute",
|
|
24755
24929
|
zIndex: ["z_var", {
|
|
24756
|
-
"--zIndex":
|
|
24930
|
+
"--zIndex": maybeCssVar52(zIndices.scrollShadow)
|
|
24757
24931
|
}],
|
|
24758
24932
|
pointerEvents: "pointerEvents_none"
|
|
24759
24933
|
};
|
|
@@ -24786,7 +24960,7 @@ function ScrollShadows(props) {
|
|
|
24786
24960
|
...startShadowStyles2,
|
|
24787
24961
|
...{
|
|
24788
24962
|
background: ["background_var", {
|
|
24789
|
-
"--background":
|
|
24963
|
+
"--background": maybeCssVar52(startGradient)
|
|
24790
24964
|
}]
|
|
24791
24965
|
}
|
|
24792
24966
|
}, {
|
|
@@ -24794,7 +24968,7 @@ function ScrollShadows(props) {
|
|
|
24794
24968
|
...endShadowStyles2,
|
|
24795
24969
|
...{
|
|
24796
24970
|
background: ["background_var", {
|
|
24797
|
-
"--background":
|
|
24971
|
+
"--background": maybeCssVar52(endGradient)
|
|
24798
24972
|
}]
|
|
24799
24973
|
}
|
|
24800
24974
|
}];
|
|
@@ -24819,10 +24993,10 @@ function ScrollShadows(props) {
|
|
|
24819
24993
|
ref: scrollRef,
|
|
24820
24994
|
onResize
|
|
24821
24995
|
});
|
|
24822
|
-
return /* @__PURE__ */
|
|
24996
|
+
return /* @__PURE__ */ jsxs99("div", { ...trussProps111({
|
|
24823
24997
|
display: "df",
|
|
24824
24998
|
flexDirection: ["fd_var", {
|
|
24825
|
-
"--flexDirection":
|
|
24999
|
+
"--flexDirection": maybeCssVar52(!horizontal ? "column" : "row")
|
|
24826
25000
|
}],
|
|
24827
25001
|
position: "relative",
|
|
24828
25002
|
overflow: "oh",
|
|
@@ -24835,23 +25009,23 @@ function ScrollShadows(props) {
|
|
|
24835
25009
|
width: width2
|
|
24836
25010
|
}
|
|
24837
25011
|
}), ...tid, children: [
|
|
24838
|
-
/* @__PURE__ */
|
|
25012
|
+
/* @__PURE__ */ jsx199("div", { ...trussProps111({
|
|
24839
25013
|
...startShadowStyles,
|
|
24840
25014
|
...{
|
|
24841
25015
|
opacity: ["o_var", {
|
|
24842
|
-
"--opacity":
|
|
25016
|
+
"--opacity": maybeCssVar52(showStartShadow ? 1 : 0)
|
|
24843
25017
|
}]
|
|
24844
25018
|
}
|
|
24845
25019
|
}), "data-chromatic": "ignore" }),
|
|
24846
|
-
/* @__PURE__ */
|
|
25020
|
+
/* @__PURE__ */ jsx199("div", { ...trussProps111({
|
|
24847
25021
|
...endShadowStyles,
|
|
24848
25022
|
...{
|
|
24849
25023
|
opacity: ["o_var", {
|
|
24850
|
-
"--opacity":
|
|
25024
|
+
"--opacity": maybeCssVar52(showEndShadow ? 1 : 0)
|
|
24851
25025
|
}]
|
|
24852
25026
|
}
|
|
24853
25027
|
}), "data-chromatic": "ignore" }),
|
|
24854
|
-
/* @__PURE__ */
|
|
25028
|
+
/* @__PURE__ */ jsx199("div", { ...trussProps111({
|
|
24855
25029
|
...xss,
|
|
24856
25030
|
...{
|
|
24857
25031
|
overflow: "oa",
|
|
@@ -24867,12 +25041,12 @@ import {
|
|
|
24867
25041
|
createContext as createContext14,
|
|
24868
25042
|
useCallback as useCallback35,
|
|
24869
25043
|
useContext as useContext26,
|
|
24870
|
-
useEffect as
|
|
25044
|
+
useEffect as useEffect36,
|
|
24871
25045
|
useMemo as useMemo53,
|
|
24872
25046
|
useRef as useRef61,
|
|
24873
25047
|
useState as useState55
|
|
24874
25048
|
} from "react";
|
|
24875
|
-
import { jsx as
|
|
25049
|
+
import { jsx as jsx200 } from "react/jsx-runtime";
|
|
24876
25050
|
var SIDE_NAV_LAYOUT_STATE_STORAGE_KEY = "beam.sideNavLayout.navState";
|
|
24877
25051
|
function loadStoredNavState() {
|
|
24878
25052
|
try {
|
|
@@ -24901,7 +25075,7 @@ function SideNavLayoutProvider(props) {
|
|
|
24901
25075
|
);
|
|
24902
25076
|
const bp = useBreakpoint();
|
|
24903
25077
|
const prevMdAndUp = useRef61(bp.mdAndUp);
|
|
24904
|
-
|
|
25078
|
+
useEffect36(() => {
|
|
24905
25079
|
if (prevMdAndUp.current && !bp.mdAndUp) {
|
|
24906
25080
|
setNavStateInternal((prev) => prev === "expanded" ? "collapse" : prev);
|
|
24907
25081
|
}
|
|
@@ -24920,7 +25094,7 @@ function SideNavLayoutProvider(props) {
|
|
|
24920
25094
|
});
|
|
24921
25095
|
}, []);
|
|
24922
25096
|
const value = useMemo53(() => ({ navState, setNavState }), [navState, setNavState]);
|
|
24923
|
-
return /* @__PURE__ */
|
|
25097
|
+
return /* @__PURE__ */ jsx200(SideNavLayoutContext.Provider, { value, children: props.children });
|
|
24924
25098
|
}
|
|
24925
25099
|
function useSideNavLayoutContext() {
|
|
24926
25100
|
return useContext26(SideNavLayoutContext) ?? { navState: "expanded", setNavState: () => {
|
|
@@ -24932,7 +25106,7 @@ function useHasSideNavLayoutProvider() {
|
|
|
24932
25106
|
|
|
24933
25107
|
// src/components/SideNav/SideNav.tsx
|
|
24934
25108
|
import { trussProps as trussProps112 } from "@homebound/truss/runtime";
|
|
24935
|
-
import { jsx as
|
|
25109
|
+
import { jsx as jsx201, jsxs as jsxs100 } from "react/jsx-runtime";
|
|
24936
25110
|
function SideNav(props) {
|
|
24937
25111
|
const {
|
|
24938
25112
|
top,
|
|
@@ -24945,8 +25119,8 @@ function SideNav(props) {
|
|
|
24945
25119
|
const tid = useTestIds(props, "sideNav");
|
|
24946
25120
|
const panelCollapsed = navState === "collapse";
|
|
24947
25121
|
const hideOnCollapse = panelCollapsed && !allItemsHaveIcons(items);
|
|
24948
|
-
return /* @__PURE__ */
|
|
24949
|
-
top !== void 0 && /* @__PURE__ */
|
|
25122
|
+
return /* @__PURE__ */ jsxs100("nav", { className: "df fdc h100 fs0", ...tid, children: [
|
|
25123
|
+
top !== void 0 && /* @__PURE__ */ jsx201("div", { ...trussProps112({
|
|
24950
25124
|
flexShrink: "fs0",
|
|
24951
25125
|
paddingLeft: "pl2",
|
|
24952
25126
|
paddingRight: "pr2",
|
|
@@ -24957,7 +25131,7 @@ function SideNav(props) {
|
|
|
24957
25131
|
paddingBottom: "pb4"
|
|
24958
25132
|
} : {}
|
|
24959
25133
|
}), ...tid.top, children: top }),
|
|
24960
|
-
/* @__PURE__ */
|
|
25134
|
+
/* @__PURE__ */ jsx201("div", { ...trussProps112({
|
|
24961
25135
|
flexGrow: "fg1",
|
|
24962
25136
|
overflowY: "oya",
|
|
24963
25137
|
display: "df",
|
|
@@ -24969,8 +25143,8 @@ function SideNav(props) {
|
|
|
24969
25143
|
...top === void 0 ? {
|
|
24970
25144
|
paddingTop: "pt5"
|
|
24971
25145
|
} : {}
|
|
24972
|
-
}), ...tid.items, children: !hideOnCollapse && /* @__PURE__ */
|
|
24973
|
-
footer !== void 0 && /* @__PURE__ */
|
|
25146
|
+
}), ...tid.items, children: !hideOnCollapse && /* @__PURE__ */ jsx201(AppNavItems, { items, panelCollapsed }) }),
|
|
25147
|
+
footer !== void 0 && /* @__PURE__ */ jsx201("div", { ...trussProps112({
|
|
24974
25148
|
flexShrink: "fs0",
|
|
24975
25149
|
paddingLeft: "pl2",
|
|
24976
25150
|
paddingRight: "pr2",
|
|
@@ -24986,7 +25160,7 @@ function SideNav(props) {
|
|
|
24986
25160
|
}
|
|
24987
25161
|
|
|
24988
25162
|
// src/components/Snackbar/useSnackbar.tsx
|
|
24989
|
-
import { useCallback as useCallback36, useEffect as
|
|
25163
|
+
import { useCallback as useCallback36, useEffect as useEffect37 } from "react";
|
|
24990
25164
|
function useSnackbar() {
|
|
24991
25165
|
const { setNotices, setOffset } = useSnackbarContext();
|
|
24992
25166
|
const onClose = useCallback36(
|
|
@@ -25036,7 +25210,7 @@ function useSnackbar() {
|
|
|
25036
25210
|
[onClose, setNotices]
|
|
25037
25211
|
);
|
|
25038
25212
|
const closeNotice = useCallback36((id) => onClose(id), [onClose]);
|
|
25039
|
-
const useSnackbarOffset = ({ bottom }) =>
|
|
25213
|
+
const useSnackbarOffset = ({ bottom }) => useEffect37(() => {
|
|
25040
25214
|
setOffset({ bottom });
|
|
25041
25215
|
return () => setOffset({});
|
|
25042
25216
|
}, [bottom]);
|
|
@@ -25047,10 +25221,10 @@ var snackbarId = 1;
|
|
|
25047
25221
|
// src/components/Stepper.tsx
|
|
25048
25222
|
import { useRef as useRef62 } from "react";
|
|
25049
25223
|
import { useButton as useButton12, useFocusRing as useFocusRing17, useHover as useHover21 } from "react-aria";
|
|
25050
|
-
import { trussProps as trussProps113, maybeCssVar as
|
|
25051
|
-
import { jsx as
|
|
25224
|
+
import { trussProps as trussProps113, maybeCssVar as maybeCssVar53 } from "@homebound/truss/runtime";
|
|
25225
|
+
import { jsx as jsx202, jsxs as jsxs101 } from "react/jsx-runtime";
|
|
25052
25226
|
import { createElement as createElement6 } from "react";
|
|
25053
|
-
var
|
|
25227
|
+
var __maybeInc23 = (inc) => {
|
|
25054
25228
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
25055
25229
|
};
|
|
25056
25230
|
function Stepper(props) {
|
|
@@ -25067,8 +25241,8 @@ function Stepper(props) {
|
|
|
25067
25241
|
const maxStepWidth = 200;
|
|
25068
25242
|
const minStepWidth = 100;
|
|
25069
25243
|
const gap = 8;
|
|
25070
|
-
return /* @__PURE__ */
|
|
25071
|
-
/* @__PURE__ */
|
|
25244
|
+
return /* @__PURE__ */ jsxs101("nav", { "aria-label": "steps", className: "df fdc w100", ...tid, children: [
|
|
25245
|
+
/* @__PURE__ */ jsx202("ol", { ...trussProps113({
|
|
25072
25246
|
padding: "p_0",
|
|
25073
25247
|
margin: "m_0",
|
|
25074
25248
|
listStyle: "lis_none",
|
|
@@ -25088,9 +25262,9 @@ function Stepper(props) {
|
|
|
25088
25262
|
minWidth: ["mw_var", {
|
|
25089
25263
|
"--minWidth": `${minStepWidth}px`
|
|
25090
25264
|
}]
|
|
25091
|
-
}), key: step.label, "aria-current": isCurrent, ...tid.step }, /* @__PURE__ */
|
|
25265
|
+
}), key: step.label, "aria-current": isCurrent, ...tid.step }, /* @__PURE__ */ jsx202(StepButton, { ...step, onClick: () => onChange(step.value), isCurrent, ...tid.stepButton }));
|
|
25092
25266
|
}) }),
|
|
25093
|
-
/* @__PURE__ */
|
|
25267
|
+
/* @__PURE__ */ jsx202("div", { ...trussProps113({
|
|
25094
25268
|
marginTop: "mt1",
|
|
25095
25269
|
backgroundColor: ["bgColor_var", {
|
|
25096
25270
|
"--backgroundColor": "var(--b-field-border-default)"
|
|
@@ -25103,14 +25277,14 @@ function Stepper(props) {
|
|
|
25103
25277
|
"--minWidth": `${steps.length * minStepWidth + (steps.length - 1) * gap}px`
|
|
25104
25278
|
}],
|
|
25105
25279
|
width: "w100"
|
|
25106
|
-
}), children: /* @__PURE__ */
|
|
25280
|
+
}), children: /* @__PURE__ */ jsx202("div", { ...trussProps113({
|
|
25107
25281
|
backgroundColor: ["bgColor_var", {
|
|
25108
25282
|
"--backgroundColor": "var(--b-primary)"
|
|
25109
25283
|
}],
|
|
25110
25284
|
transition: "transition_width_200ms",
|
|
25111
25285
|
height: "h100",
|
|
25112
25286
|
width: ["w_var", {
|
|
25113
|
-
"--width":
|
|
25287
|
+
"--width": maybeCssVar53(__maybeInc23(`${(lastCompletedStep + 1) / steps.length * 100}%`))
|
|
25114
25288
|
}]
|
|
25115
25289
|
}) }) })
|
|
25116
25290
|
] });
|
|
@@ -25146,7 +25320,7 @@ function StepButton(props) {
|
|
|
25146
25320
|
boxShadow: "bshFocus"
|
|
25147
25321
|
};
|
|
25148
25322
|
const tid = useTestIds(props, "stepButton");
|
|
25149
|
-
return /* @__PURE__ */
|
|
25323
|
+
return /* @__PURE__ */ jsxs101("button", { ref, ...buttonProps, ...focusProps, ...hoverProps, ...trussProps113({
|
|
25150
25324
|
...{
|
|
25151
25325
|
fontWeight: "fw6",
|
|
25152
25326
|
fontSize: "fz_14px",
|
|
@@ -25207,7 +25381,7 @@ function StepButton(props) {
|
|
|
25207
25381
|
} : {},
|
|
25208
25382
|
...isFocusVisible ? focusRingStyles2 : {}
|
|
25209
25383
|
}), ...tid[defaultTestId(label)], children: [
|
|
25210
|
-
/* @__PURE__ */
|
|
25384
|
+
/* @__PURE__ */ jsx202("span", { className: "fs0 mr_4px", children: /* @__PURE__ */ jsx202(StepIcon, { state, isHovered, isPressed, isCurrent }) }),
|
|
25211
25385
|
label
|
|
25212
25386
|
] });
|
|
25213
25387
|
}
|
|
@@ -25218,12 +25392,12 @@ function StepIcon({
|
|
|
25218
25392
|
isCurrent = false
|
|
25219
25393
|
}) {
|
|
25220
25394
|
if (state === "error") {
|
|
25221
|
-
return /* @__PURE__ */
|
|
25395
|
+
return /* @__PURE__ */ jsx202(Icon, { icon: "errorCircle" });
|
|
25222
25396
|
}
|
|
25223
25397
|
if (state === "complete") {
|
|
25224
|
-
return /* @__PURE__ */
|
|
25398
|
+
return /* @__PURE__ */ jsx202(Icon, { icon: "check" });
|
|
25225
25399
|
}
|
|
25226
|
-
return /* @__PURE__ */
|
|
25400
|
+
return /* @__PURE__ */ jsx202("div", { className: "w_24px h_24px df aic jcc", children: /* @__PURE__ */ jsx202("div", { ...trussProps113({
|
|
25227
25401
|
width: "w_10px",
|
|
25228
25402
|
height: "h_10px",
|
|
25229
25403
|
borderStyle: "bss",
|
|
@@ -25238,9 +25412,9 @@ function StepIcon({
|
|
|
25238
25412
|
|
|
25239
25413
|
// src/components/StepperTabs/StepperTab.tsx
|
|
25240
25414
|
import { useRef as useRef63 } from "react";
|
|
25241
|
-
import { mergeProps as
|
|
25415
|
+
import { mergeProps as mergeProps32, useButton as useButton13, useFocusRing as useFocusRing18, useHover as useHover22, VisuallyHidden as VisuallyHidden10 } from "react-aria";
|
|
25242
25416
|
import { trussProps as trussProps114 } from "@homebound/truss/runtime";
|
|
25243
|
-
import { Fragment as Fragment45, jsx as
|
|
25417
|
+
import { Fragment as Fragment45, jsx as jsx203, jsxs as jsxs102 } from "react/jsx-runtime";
|
|
25244
25418
|
function StepperTab(props) {
|
|
25245
25419
|
const {
|
|
25246
25420
|
label,
|
|
@@ -25271,7 +25445,7 @@ function StepperTab(props) {
|
|
|
25271
25445
|
const isHovered = __storyState?.hovered ?? isHoveredFromEvents;
|
|
25272
25446
|
const isFocusVisible = __storyState?.focusVisible ?? isFocusVisibleFromEvents;
|
|
25273
25447
|
const tid = useTestIds(props, "stepperTab");
|
|
25274
|
-
return /* @__PURE__ */
|
|
25448
|
+
return /* @__PURE__ */ jsxs102("button", { ref, ...mergeProps32(buttonProps, focusProps, hoverProps), "aria-label": label, ...trussProps114({
|
|
25275
25449
|
...stepperTabStyles.baseStyles,
|
|
25276
25450
|
...getStateStyles(active, completed),
|
|
25277
25451
|
...isHovered && !disabled ? stepperTabStyles.hoverStyles : {},
|
|
@@ -25279,10 +25453,10 @@ function StepperTab(props) {
|
|
|
25279
25453
|
...disabled ? stepperTabStyles.disabledStyles : {},
|
|
25280
25454
|
...isFocusVisible ? stepperTabStyles.focusRingStyles : {}
|
|
25281
25455
|
}), ...tid[defaultTestId(value)], children: [
|
|
25282
|
-
!collapsed && /* @__PURE__ */
|
|
25283
|
-
/* @__PURE__ */
|
|
25284
|
-
/* @__PURE__ */
|
|
25285
|
-
/* @__PURE__ */
|
|
25456
|
+
!collapsed && /* @__PURE__ */ jsxs102(Fragment45, { children: [
|
|
25457
|
+
/* @__PURE__ */ jsxs102("span", { className: "dg jic mw0", children: [
|
|
25458
|
+
/* @__PURE__ */ jsx203("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 }),
|
|
25459
|
+
/* @__PURE__ */ jsx203("span", { ...trussProps114({
|
|
25286
25460
|
gridArea: "gridArea_1_1",
|
|
25287
25461
|
overflow: "oh",
|
|
25288
25462
|
display: "d_negwebkit_box",
|
|
@@ -25297,7 +25471,7 @@ function StepperTab(props) {
|
|
|
25297
25471
|
} : {}
|
|
25298
25472
|
}), children: label })
|
|
25299
25473
|
] }),
|
|
25300
|
-
/* @__PURE__ */
|
|
25474
|
+
/* @__PURE__ */ jsx203("span", { ...trussProps114({
|
|
25301
25475
|
flexShrink: "fs0",
|
|
25302
25476
|
marginLeft: "ml1",
|
|
25303
25477
|
transition: "transitionAll",
|
|
@@ -25307,10 +25481,10 @@ function StepperTab(props) {
|
|
|
25307
25481
|
opacity: "o100",
|
|
25308
25482
|
transform: "transform_scale_1_translateY_0"
|
|
25309
25483
|
} : {}
|
|
25310
|
-
}), children: /* @__PURE__ */
|
|
25484
|
+
}), children: /* @__PURE__ */ jsx203(Icon, { icon: "check", inc: 2.5, ...tid.check }) })
|
|
25311
25485
|
] }),
|
|
25312
|
-
/* @__PURE__ */
|
|
25313
|
-
/* @__PURE__ */
|
|
25486
|
+
/* @__PURE__ */ jsx203("span", { "aria-hidden": true, ...trussProps114(getIndicatorStyles(active, completed, disabled)), ...tid.indicator }),
|
|
25487
|
+
/* @__PURE__ */ jsx203(VisuallyHidden10, { children: completed ? "Complete" : "Not Complete" })
|
|
25314
25488
|
] });
|
|
25315
25489
|
}
|
|
25316
25490
|
function getStateStyles(active, completed) {
|
|
@@ -25392,7 +25566,7 @@ var stepperTabStyles = {
|
|
|
25392
25566
|
|
|
25393
25567
|
// src/components/StepperTabs/StepperTabs.tsx
|
|
25394
25568
|
import { trussProps as trussProps115 } from "@homebound/truss/runtime";
|
|
25395
|
-
import { jsx as
|
|
25569
|
+
import { jsx as jsx204 } from "react/jsx-runtime";
|
|
25396
25570
|
import { createElement as createElement7 } from "react";
|
|
25397
25571
|
function StepperTabs(props) {
|
|
25398
25572
|
const {
|
|
@@ -25408,7 +25582,7 @@ function StepperTabs(props) {
|
|
|
25408
25582
|
const collapsed = isMobile || !!forceCollapsed;
|
|
25409
25583
|
const capWidth = steps.length <= 3;
|
|
25410
25584
|
const currentStepIndex = Math.max(0, steps.findIndex((step) => step.value === currentStep));
|
|
25411
|
-
return /* @__PURE__ */
|
|
25585
|
+
return /* @__PURE__ */ jsx204("nav", { "aria-label": "steps", className: "w100", ...tid, children: /* @__PURE__ */ jsx204("ol", { ...trussProps115({
|
|
25412
25586
|
padding: "p_0",
|
|
25413
25587
|
margin: "m_0",
|
|
25414
25588
|
listStyle: "lis_none",
|
|
@@ -25435,16 +25609,16 @@ function StepperTabs(props) {
|
|
|
25435
25609
|
"--maxWidth": `${maxStepWidthPx}px`
|
|
25436
25610
|
}]
|
|
25437
25611
|
} : {}
|
|
25438
|
-
}), key: step.value, "aria-current": isCurrent, ...tid.step }, /* @__PURE__ */
|
|
25612
|
+
}), key: step.value, "aria-current": isCurrent, ...tid.step }, /* @__PURE__ */ jsx204(StepperTab, { label: step.label, value: step.value, active: isCurrent, completed: isCompleted, disabled: step.disabled, collapsed, onClick: onChange, ...tid.tab }));
|
|
25439
25613
|
}) }) });
|
|
25440
25614
|
}
|
|
25441
25615
|
var maxStepWidthPx = 280;
|
|
25442
25616
|
var gapPx = 6;
|
|
25443
25617
|
|
|
25444
25618
|
// src/components/SuperDrawer/components/SuperDrawerHeader.tsx
|
|
25445
|
-
import { createPortal as
|
|
25619
|
+
import { createPortal as createPortal8 } from "react-dom";
|
|
25446
25620
|
import { trussProps as trussProps116 } from "@homebound/truss/runtime";
|
|
25447
|
-
import { jsx as
|
|
25621
|
+
import { jsx as jsx205, jsxs as jsxs103 } from "react/jsx-runtime";
|
|
25448
25622
|
function SuperDrawerHeader(props) {
|
|
25449
25623
|
const {
|
|
25450
25624
|
hideControls
|
|
@@ -25461,20 +25635,20 @@ function SuperDrawerHeader(props) {
|
|
|
25461
25635
|
const currentContent = contentStack.current[contentStack.current.length - 1]?.opts;
|
|
25462
25636
|
const isDetail = currentContent !== firstContent;
|
|
25463
25637
|
const tid = useTestIds({}, "superDrawerHeader");
|
|
25464
|
-
return
|
|
25465
|
-
isStructuredProps(props) ? /* @__PURE__ */
|
|
25466
|
-
/* @__PURE__ */
|
|
25467
|
-
/* @__PURE__ */
|
|
25638
|
+
return createPortal8(/* @__PURE__ */ jsxs103("div", { className: "df aic jcsb gap3", ...tid, children: [
|
|
25639
|
+
isStructuredProps(props) ? /* @__PURE__ */ jsxs103("div", { className: "df jcsb aic gap2 fg1", children: [
|
|
25640
|
+
/* @__PURE__ */ jsxs103("div", { className: "fg1 df aic gap2", children: [
|
|
25641
|
+
/* @__PURE__ */ jsx205("h1", { className: "fw6 fz_30px lh_36px", children: props.title }),
|
|
25468
25642
|
props.left
|
|
25469
25643
|
] }),
|
|
25470
|
-
props.right && /* @__PURE__ */
|
|
25471
|
-
] }) : /* @__PURE__ */
|
|
25472
|
-
!hideControls && /* @__PURE__ */
|
|
25644
|
+
props.right && /* @__PURE__ */ jsx205("div", { className: "fs0", children: props.right })
|
|
25645
|
+
] }) : /* @__PURE__ */ jsx205("div", { className: "fg1", children: props.children }),
|
|
25646
|
+
!hideControls && /* @__PURE__ */ jsx205("div", { ...trussProps116({
|
|
25473
25647
|
flexShrink: "fs0",
|
|
25474
25648
|
...isDetail ? {
|
|
25475
25649
|
visibility: "vh"
|
|
25476
25650
|
} : {}
|
|
25477
|
-
}), children: /* @__PURE__ */
|
|
25651
|
+
}), children: /* @__PURE__ */ jsx205(ButtonGroup, { buttons: [{
|
|
25478
25652
|
icon: "chevronLeft",
|
|
25479
25653
|
onClick: () => onPrevClick && onPrevClick(),
|
|
25480
25654
|
disabled: !onPrevClick
|
|
@@ -25490,11 +25664,11 @@ function isStructuredProps(props) {
|
|
|
25490
25664
|
}
|
|
25491
25665
|
|
|
25492
25666
|
// src/components/SuperDrawer/SuperDrawerContent.tsx
|
|
25493
|
-
import { motion as
|
|
25667
|
+
import { motion as motion7 } from "framer-motion";
|
|
25494
25668
|
|
|
25495
25669
|
// src/components/SuperDrawer/useSuperDrawer.tsx
|
|
25496
25670
|
import { useMemo as useMemo54 } from "react";
|
|
25497
|
-
import { jsx as
|
|
25671
|
+
import { jsx as jsx206 } from "react/jsx-runtime";
|
|
25498
25672
|
function useSuperDrawer() {
|
|
25499
25673
|
const {
|
|
25500
25674
|
drawerContentStack: contentStack,
|
|
@@ -25506,7 +25680,7 @@ function useSuperDrawer() {
|
|
|
25506
25680
|
function canCloseDrawerDetails(i, doChange) {
|
|
25507
25681
|
for (const canCloseDrawerDetail of canCloseDetailsChecks.current[i] ?? []) {
|
|
25508
25682
|
if (!canClose(canCloseDrawerDetail)) {
|
|
25509
|
-
openModal({ content: /* @__PURE__ */
|
|
25683
|
+
openModal({ content: /* @__PURE__ */ jsx206(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawerDetail }) });
|
|
25510
25684
|
return false;
|
|
25511
25685
|
}
|
|
25512
25686
|
}
|
|
@@ -25526,7 +25700,7 @@ function useSuperDrawer() {
|
|
|
25526
25700
|
for (const canCloseDrawer of canCloseChecks.current) {
|
|
25527
25701
|
if (!canClose(canCloseDrawer)) {
|
|
25528
25702
|
openModal({
|
|
25529
|
-
content: /* @__PURE__ */
|
|
25703
|
+
content: /* @__PURE__ */ jsx206(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawer })
|
|
25530
25704
|
});
|
|
25531
25705
|
return;
|
|
25532
25706
|
}
|
|
@@ -25621,8 +25795,8 @@ function canClose(canCloseCheck) {
|
|
|
25621
25795
|
}
|
|
25622
25796
|
|
|
25623
25797
|
// src/components/SuperDrawer/SuperDrawerContent.tsx
|
|
25624
|
-
import { trussProps as trussProps117, mergeProps as
|
|
25625
|
-
import { Fragment as Fragment46, jsx as
|
|
25798
|
+
import { trussProps as trussProps117, mergeProps as mergeProps33 } from "@homebound/truss/runtime";
|
|
25799
|
+
import { Fragment as Fragment46, jsx as jsx207, jsxs as jsxs104 } from "react/jsx-runtime";
|
|
25626
25800
|
var SuperDrawerContent = ({
|
|
25627
25801
|
children,
|
|
25628
25802
|
actions
|
|
@@ -25642,17 +25816,17 @@ var SuperDrawerContent = ({
|
|
|
25642
25816
|
} = firstContent ?? {};
|
|
25643
25817
|
function wrapWithMotionAndMaybeBack(children2) {
|
|
25644
25818
|
if (kind === "open") {
|
|
25645
|
-
return /* @__PURE__ */
|
|
25819
|
+
return /* @__PURE__ */ jsx207(motion7.div, { className: "pt3 pb3 pr3 pl3 fg1 oa", children: children2 }, "content");
|
|
25646
25820
|
} else if (kind === "detail") {
|
|
25647
|
-
return /* @__PURE__ */
|
|
25821
|
+
return /* @__PURE__ */ jsxs104(motion7.div, { className: "pl3 pr3 pt2 pb3 fg1", animate: {
|
|
25648
25822
|
overflow: "auto"
|
|
25649
25823
|
}, transition: {
|
|
25650
25824
|
overflow: {
|
|
25651
25825
|
delay: 0.3
|
|
25652
25826
|
}
|
|
25653
25827
|
}, children: [
|
|
25654
|
-
/* @__PURE__ */
|
|
25655
|
-
/* @__PURE__ */
|
|
25828
|
+
/* @__PURE__ */ jsx207(Button, { label: "Back", icon: "chevronLeft", variant: "tertiary", onClick: closeDrawerDetail }),
|
|
25829
|
+
/* @__PURE__ */ jsx207(motion7.div, { initial: {
|
|
25656
25830
|
x: width2,
|
|
25657
25831
|
opacity: 0
|
|
25658
25832
|
}, animate: {
|
|
@@ -25670,7 +25844,7 @@ var SuperDrawerContent = ({
|
|
|
25670
25844
|
}, className: "pt2", children: children2 })
|
|
25671
25845
|
] }, "content");
|
|
25672
25846
|
} else {
|
|
25673
|
-
return /* @__PURE__ */
|
|
25847
|
+
return /* @__PURE__ */ jsx207(motion7.div, { ...mergeProps33(void 0, {
|
|
25674
25848
|
overflow: "auto"
|
|
25675
25849
|
}, {
|
|
25676
25850
|
paddingTop: "pt3",
|
|
@@ -25681,9 +25855,9 @@ var SuperDrawerContent = ({
|
|
|
25681
25855
|
}) }, "content");
|
|
25682
25856
|
}
|
|
25683
25857
|
}
|
|
25684
|
-
return /* @__PURE__ */
|
|
25858
|
+
return /* @__PURE__ */ jsxs104(Fragment46, { children: [
|
|
25685
25859
|
wrapWithMotionAndMaybeBack(children),
|
|
25686
|
-
actions && /* @__PURE__ */
|
|
25860
|
+
actions && /* @__PURE__ */ jsx207("footer", { ...trussProps117({
|
|
25687
25861
|
borderTopStyle: "bts_solid",
|
|
25688
25862
|
borderTopWidth: "btw_1px",
|
|
25689
25863
|
borderColor: ["bc_var", {
|
|
@@ -25696,7 +25870,7 @@ var SuperDrawerContent = ({
|
|
|
25696
25870
|
display: "df",
|
|
25697
25871
|
alignItems: "aic",
|
|
25698
25872
|
justifyContent: "jcfe"
|
|
25699
|
-
}), children: /* @__PURE__ */
|
|
25873
|
+
}), children: /* @__PURE__ */ jsx207("div", { className: "df gap1", children: actions.map((buttonProps, i) => /* @__PURE__ */ jsx207(Button, { ...buttonProps }, i)) }) })
|
|
25700
25874
|
] });
|
|
25701
25875
|
};
|
|
25702
25876
|
|
|
@@ -25740,19 +25914,19 @@ function visit(rows, fn) {
|
|
|
25740
25914
|
|
|
25741
25915
|
// src/components/Tabs.tsx
|
|
25742
25916
|
import { camelCase as camelCase7 } from "change-case";
|
|
25743
|
-
import { useEffect as
|
|
25744
|
-
import { mergeProps as
|
|
25917
|
+
import { useEffect as useEffect38, useMemo as useMemo55, useRef as useRef64, useState as useState56 } from "react";
|
|
25918
|
+
import { mergeProps as mergeProps34, useFocusRing as useFocusRing19, useHover as useHover23 } from "react-aria";
|
|
25745
25919
|
import { matchPath } from "react-router";
|
|
25746
25920
|
import { Link as Link7, useLocation as useLocation2 } from "react-router-dom";
|
|
25747
|
-
import { trussProps as trussProps118, maybeCssVar as
|
|
25748
|
-
import { Fragment as Fragment47, jsx as
|
|
25921
|
+
import { trussProps as trussProps118, maybeCssVar as maybeCssVar54 } from "@homebound/truss/runtime";
|
|
25922
|
+
import { Fragment as Fragment47, jsx as jsx208, jsxs as jsxs105 } from "react/jsx-runtime";
|
|
25749
25923
|
function TabsWithContent(props) {
|
|
25750
25924
|
const styles = hideTabs(props) ? {} : {
|
|
25751
25925
|
paddingTop: "pt3"
|
|
25752
25926
|
};
|
|
25753
|
-
return /* @__PURE__ */
|
|
25754
|
-
/* @__PURE__ */
|
|
25755
|
-
/* @__PURE__ */
|
|
25927
|
+
return /* @__PURE__ */ jsxs105(Fragment47, { children: [
|
|
25928
|
+
/* @__PURE__ */ jsx208(Tabs, { ...props }),
|
|
25929
|
+
/* @__PURE__ */ jsx208(TabContent, { ...props, contentXss: {
|
|
25756
25930
|
...styles,
|
|
25757
25931
|
...props.contentXss
|
|
25758
25932
|
} })
|
|
@@ -25777,7 +25951,7 @@ function TabContent(props) {
|
|
|
25777
25951
|
return (
|
|
25778
25952
|
// Using FullBleed to allow the tab's bgColor to extend to the edges of the <ScrollableContent /> element.
|
|
25779
25953
|
// Omit the padding from `FullBleed` if the caller passes in the `paddingLeft/Right` styles.
|
|
25780
|
-
/* @__PURE__ */
|
|
25954
|
+
/* @__PURE__ */ jsx208(FullBleed, { omitPadding: omitFullBleedPadding, children: /* @__PURE__ */ jsx208("div", { "aria-labelledby": `${uniqueValue}-tab`, id: `${uniqueValue}-tabPanel`, role: "tabpanel", tabIndex: 0, ...tid.panel, ...trussProps118(contentXss), children: selectedTab.render() }) })
|
|
25781
25955
|
);
|
|
25782
25956
|
}
|
|
25783
25957
|
function Tabs(props) {
|
|
@@ -25803,7 +25977,7 @@ function Tabs(props) {
|
|
|
25803
25977
|
const tid = useTestIds(others, "tabs");
|
|
25804
25978
|
const [active, setActive] = useState56(selected);
|
|
25805
25979
|
const ref = useRef64(null);
|
|
25806
|
-
|
|
25980
|
+
useEffect38(() => setActive(selected), [selected]);
|
|
25807
25981
|
function onKeyUp(e) {
|
|
25808
25982
|
if (e.key === "ArrowLeft" || e.key === "ArrowRight") {
|
|
25809
25983
|
const nextTabValue = getNextTabValue(active, e.key, tabs);
|
|
@@ -25819,7 +25993,7 @@ function Tabs(props) {
|
|
|
25819
25993
|
setActive(selected);
|
|
25820
25994
|
}
|
|
25821
25995
|
}
|
|
25822
|
-
return /* @__PURE__ */
|
|
25996
|
+
return /* @__PURE__ */ jsxs105("div", { ...trussProps118({
|
|
25823
25997
|
...{
|
|
25824
25998
|
display: "df",
|
|
25825
25999
|
alignItems: "aic",
|
|
@@ -25837,11 +26011,11 @@ function Tabs(props) {
|
|
|
25837
26011
|
}
|
|
25838
26012
|
} : {}
|
|
25839
26013
|
}), children: [
|
|
25840
|
-
!hideTabs(props) && /* @__PURE__ */
|
|
26014
|
+
!hideTabs(props) && /* @__PURE__ */ jsx208("div", { ref, className: "dif gap1 asfe", "aria-label": ariaLabel, role: "tablist", ...tid, children: tabs.map((tab) => {
|
|
25841
26015
|
const uniqueValue = uniqueTabValue(tab);
|
|
25842
|
-
return /* @__PURE__ */
|
|
26016
|
+
return /* @__PURE__ */ jsx208(TabImpl, { active: active === uniqueValue, focusProps, isFocusVisible, onClick, onKeyUp, onBlur, tab, ...tid[defaultTestId(uniqueValue)] }, uniqueValue);
|
|
25843
26017
|
}) }),
|
|
25844
|
-
right && /* @__PURE__ */
|
|
26018
|
+
right && /* @__PURE__ */ jsx208("div", { className: "mla df aic gap1 pb1", children: right })
|
|
25845
26019
|
] });
|
|
25846
26020
|
}
|
|
25847
26021
|
function TabImpl(props) {
|
|
@@ -25894,24 +26068,24 @@ function TabImpl(props) {
|
|
|
25894
26068
|
...isFocusVisible && active && focusRingStyles2
|
|
25895
26069
|
})
|
|
25896
26070
|
};
|
|
25897
|
-
const interactiveProps =
|
|
26071
|
+
const interactiveProps = mergeProps34(focusProps, hoverProps, {
|
|
25898
26072
|
onKeyUp,
|
|
25899
26073
|
onBlur,
|
|
25900
26074
|
...isRouteTab(tab) ? {} : {
|
|
25901
26075
|
onClick: () => onClick(tab.value)
|
|
25902
26076
|
}
|
|
25903
26077
|
});
|
|
25904
|
-
const tabLabel = /* @__PURE__ */
|
|
26078
|
+
const tabLabel = /* @__PURE__ */ jsxs105(Fragment47, { children: [
|
|
25905
26079
|
label,
|
|
25906
|
-
(icon || endAdornment) && /* @__PURE__ */
|
|
26080
|
+
(icon || endAdornment) && /* @__PURE__ */ jsx208("span", { className: "ml1", children: icon ? /* @__PURE__ */ jsx208(Icon, { icon }) : endAdornment })
|
|
25907
26081
|
] });
|
|
25908
26082
|
return isDisabled ? maybeTooltip({
|
|
25909
26083
|
title: resolveTooltip(disabled),
|
|
25910
26084
|
placement: "top",
|
|
25911
|
-
children: /* @__PURE__ */
|
|
25912
|
-
}) : isRouteTab(tab) ? /* @__PURE__ */
|
|
26085
|
+
children: /* @__PURE__ */ jsx208("div", { ...tabProps, children: tabLabel })
|
|
26086
|
+
}) : isRouteTab(tab) ? /* @__PURE__ */ jsx208(Link7, { ...mergeProps34(tabProps, interactiveProps, {
|
|
25913
26087
|
className: "navLink"
|
|
25914
|
-
}), to: tab.href, children: tabLabel }) : /* @__PURE__ */
|
|
26088
|
+
}), to: tab.href, children: tabLabel }) : /* @__PURE__ */ jsx208("button", { ...{
|
|
25915
26089
|
...tabProps,
|
|
25916
26090
|
...interactiveProps
|
|
25917
26091
|
}, children: tabLabel });
|
|
@@ -25922,7 +26096,7 @@ function getTabStyles() {
|
|
|
25922
26096
|
const borderBottomStyles = {
|
|
25923
26097
|
borderBottomStyle: "bbs_solid",
|
|
25924
26098
|
borderBottomWidth: ["borderBottomWidth_var", {
|
|
25925
|
-
"--borderBottomWidth":
|
|
26099
|
+
"--borderBottomWidth": maybeCssVar54(`${borderBottomWidthPx}px`)
|
|
25926
26100
|
}],
|
|
25927
26101
|
paddingBottom: ["pb_var", {
|
|
25928
26102
|
"--paddingBottom": `${verticalPaddingPx - borderBottomWidthPx}px`
|
|
@@ -26019,7 +26193,7 @@ function hideTabs(props) {
|
|
|
26019
26193
|
}
|
|
26020
26194
|
|
|
26021
26195
|
// src/components/TagGroup.tsx
|
|
26022
|
-
import { jsx as
|
|
26196
|
+
import { jsx as jsx209, jsxs as jsxs106 } from "react/jsx-runtime";
|
|
26023
26197
|
function TagGroup(props) {
|
|
26024
26198
|
const {
|
|
26025
26199
|
tags,
|
|
@@ -26027,9 +26201,9 @@ function TagGroup(props) {
|
|
|
26027
26201
|
...otherProps
|
|
26028
26202
|
} = props;
|
|
26029
26203
|
const tid = useTestIds(otherProps, "tagGroup");
|
|
26030
|
-
return /* @__PURE__ */
|
|
26031
|
-
tags.map((tag) => /* @__PURE__ */
|
|
26032
|
-
onEdit && /* @__PURE__ */
|
|
26204
|
+
return /* @__PURE__ */ jsxs106("div", { ...tid, className: "df aic fww gap1", children: [
|
|
26205
|
+
tags.map((tag) => /* @__PURE__ */ jsx209(Tag, { ...tag, variant: "secondary" }, tag.text)),
|
|
26206
|
+
onEdit && /* @__PURE__ */ jsx209("span", { className: "ml1 fw4 fz_14px lh_20px", children: /* @__PURE__ */ jsx209(Button, { label: "Edit", variant: "text", onClick: onEdit, ...tid.edit }) })
|
|
26033
26207
|
] });
|
|
26034
26208
|
}
|
|
26035
26209
|
|
|
@@ -26042,15 +26216,15 @@ function useToast() {
|
|
|
26042
26216
|
}
|
|
26043
26217
|
|
|
26044
26218
|
// src/layouts/SideNavLayout/SideNavLayout.tsx
|
|
26045
|
-
import { trussProps as trussProps119, mergeProps as
|
|
26046
|
-
import { jsx as
|
|
26047
|
-
var
|
|
26219
|
+
import { trussProps as trussProps119, mergeProps as mergeProps35, maybeCssVar as maybeCssVar55 } from "@homebound/truss/runtime";
|
|
26220
|
+
import { jsx as jsx210, jsxs as jsxs107 } from "react/jsx-runtime";
|
|
26221
|
+
var __maybeInc24 = (inc) => {
|
|
26048
26222
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
26049
26223
|
};
|
|
26050
26224
|
function SideNavLayout(props) {
|
|
26051
26225
|
const hasProvider = useHasSideNavLayoutProvider();
|
|
26052
|
-
if (hasProvider) return /* @__PURE__ */
|
|
26053
|
-
return /* @__PURE__ */
|
|
26226
|
+
if (hasProvider) return /* @__PURE__ */ jsx210(SideNavLayoutContent, { ...props });
|
|
26227
|
+
return /* @__PURE__ */ jsx210(SideNavLayoutProvider, { children: /* @__PURE__ */ jsx210(SideNavLayoutContent, { ...props }) });
|
|
26054
26228
|
}
|
|
26055
26229
|
function SideNavLayoutContent(props) {
|
|
26056
26230
|
const {
|
|
@@ -26072,7 +26246,7 @@ function SideNavLayoutContent(props) {
|
|
|
26072
26246
|
const railOffsetPx = !showRail ? 0 : !bp.mdAndUp || collapsed ? railCollapsedWidthPx : railWidthPx;
|
|
26073
26247
|
const navTop = bannerAndNavbarChromeTop();
|
|
26074
26248
|
const railViewportHeight = `calc(var(${beamLayoutViewportHeightVar}, 100vh) - var(${beamEnvironmentBannerLayoutHeightVar}, 0px) - var(${beamNavbarLayoutHeightVar}, 0px))`;
|
|
26075
|
-
const rail = showRail && /* @__PURE__ */
|
|
26249
|
+
const rail = showRail && /* @__PURE__ */ jsxs107("div", { ...trussProps119({
|
|
26076
26250
|
...{
|
|
26077
26251
|
display: "df",
|
|
26078
26252
|
flexDirection: "fdc",
|
|
@@ -26096,14 +26270,14 @@ function SideNavLayoutContent(props) {
|
|
|
26096
26270
|
position: "sticky",
|
|
26097
26271
|
left: "left0",
|
|
26098
26272
|
zIndex: ["z_var", {
|
|
26099
|
-
"--zIndex":
|
|
26273
|
+
"--zIndex": maybeCssVar55(zIndices.sideNav)
|
|
26100
26274
|
}],
|
|
26101
26275
|
top: ["top_var", {
|
|
26102
|
-
"--top":
|
|
26276
|
+
"--top": maybeCssVar55(__maybeInc24(navTop))
|
|
26103
26277
|
}],
|
|
26104
26278
|
alignSelf: "asfs",
|
|
26105
26279
|
height: ["h_var", {
|
|
26106
|
-
"--height":
|
|
26280
|
+
"--height": maybeCssVar55(__maybeInc24(railViewportHeight))
|
|
26107
26281
|
}],
|
|
26108
26282
|
width: ["w_var", {
|
|
26109
26283
|
"--width": `${collapsed ? railCollapsedWidthPx : railWidthPx}px`
|
|
@@ -26113,11 +26287,11 @@ function SideNavLayoutContent(props) {
|
|
|
26113
26287
|
position: "fixed",
|
|
26114
26288
|
left: "left0",
|
|
26115
26289
|
top: ["top_var", {
|
|
26116
|
-
"--top":
|
|
26290
|
+
"--top": maybeCssVar55(__maybeInc24(navTop))
|
|
26117
26291
|
}],
|
|
26118
26292
|
bottom: "bottom0",
|
|
26119
26293
|
zIndex: ["z_var", {
|
|
26120
|
-
"--zIndex":
|
|
26294
|
+
"--zIndex": maybeCssVar55(zIndices.sideNav)
|
|
26121
26295
|
}]
|
|
26122
26296
|
},
|
|
26123
26297
|
...collapsed ? {
|
|
@@ -26129,18 +26303,18 @@ function SideNavLayoutContent(props) {
|
|
|
26129
26303
|
}
|
|
26130
26304
|
}
|
|
26131
26305
|
}), ...tid.sideNav, children: [
|
|
26132
|
-
showCollapseToggle && /* @__PURE__ */
|
|
26133
|
-
/* @__PURE__ */
|
|
26306
|
+
showCollapseToggle && /* @__PURE__ */ jsx210("div", { className: "absolute right2 top2 z2", children: /* @__PURE__ */ jsx210(IconButton, { icon: collapsed ? "menuOpen" : "menuClose", label: collapsed ? "Expand navigation" : "Collapse navigation", onClick: () => setNavState(collapsed ? "expanded" : "collapse"), ...tid.toggle }) }),
|
|
26307
|
+
/* @__PURE__ */ jsx210("div", { className: "fg1 mh0 df fdc", ...tid.sideNavContent, children: /* @__PURE__ */ jsx210(SideNav, { ...sideNav }) })
|
|
26134
26308
|
] });
|
|
26135
|
-
return /* @__PURE__ */
|
|
26309
|
+
return /* @__PURE__ */ jsx210(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ jsxs107("div", { ...mergeProps35(void 0, {
|
|
26136
26310
|
[beamSideNavLayoutWidthVar]: `${railOffsetPx}px`
|
|
26137
26311
|
}, {
|
|
26138
26312
|
display: "df",
|
|
26139
26313
|
flexDirection: "fdr",
|
|
26140
26314
|
width: "w100"
|
|
26141
26315
|
}), ...tid, children: [
|
|
26142
|
-
contrastRail ? /* @__PURE__ */
|
|
26143
|
-
/* @__PURE__ */
|
|
26316
|
+
contrastRail ? /* @__PURE__ */ jsx210(ContrastScope, { children: rail }) : rail,
|
|
26317
|
+
/* @__PURE__ */ jsx210("div", { ...trussProps119({
|
|
26144
26318
|
display: "df",
|
|
26145
26319
|
flexDirection: "fdc",
|
|
26146
26320
|
flexGrow: "fg1",
|
|
@@ -26156,9 +26330,9 @@ function SideNavLayoutContent(props) {
|
|
|
26156
26330
|
}
|
|
26157
26331
|
|
|
26158
26332
|
// src/layouts/EnvironmentBannerLayout/EnvironmentBannerLayout.tsx
|
|
26159
|
-
import { trussProps as trussProps120, mergeProps as
|
|
26160
|
-
import { jsx as
|
|
26161
|
-
var
|
|
26333
|
+
import { trussProps as trussProps120, mergeProps as mergeProps36, maybeCssVar as maybeCssVar56 } from "@homebound/truss/runtime";
|
|
26334
|
+
import { jsx as jsx211, jsxs as jsxs108 } from "react/jsx-runtime";
|
|
26335
|
+
var __maybeInc25 = (inc) => {
|
|
26162
26336
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
26163
26337
|
};
|
|
26164
26338
|
function EnvironmentBannerLayout(props) {
|
|
@@ -26173,35 +26347,35 @@ function EnvironmentBannerLayout(props) {
|
|
|
26173
26347
|
[beamEnvironmentBannerLayoutHeightVar]: `${bannerHeightPx}px`
|
|
26174
26348
|
};
|
|
26175
26349
|
const innerWidth = `var(${beamLayoutViewportWidthVar}, 100vw)`;
|
|
26176
|
-
return /* @__PURE__ */
|
|
26350
|
+
return /* @__PURE__ */ jsx211(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ jsx211(EnvironmentBannerLayoutHeightProvider, { value: bannerHeightPx, children: /* @__PURE__ */ jsxs108("div", { ...mergeProps36(void 0, style, {
|
|
26177
26351
|
display: "df",
|
|
26178
26352
|
flexDirection: "fdc",
|
|
26179
26353
|
width: "wfc",
|
|
26180
26354
|
minWidth: "mw100"
|
|
26181
26355
|
}), ...tid, children: [
|
|
26182
|
-
showBanner && environmentBanner && /* @__PURE__ */
|
|
26356
|
+
showBanner && environmentBanner && /* @__PURE__ */ jsx211("div", { ...mergeProps36(void 0, {
|
|
26183
26357
|
height: environmentBannerSizePx
|
|
26184
26358
|
}, {
|
|
26185
26359
|
flexShrink: "fs0",
|
|
26186
26360
|
width: "w100"
|
|
26187
|
-
}), children: /* @__PURE__ */
|
|
26361
|
+
}), children: /* @__PURE__ */ jsx211("div", { ...trussProps120({
|
|
26188
26362
|
position: "fixed",
|
|
26189
26363
|
top: "top0",
|
|
26190
26364
|
left: "left0",
|
|
26191
26365
|
zIndex: ["z_var", {
|
|
26192
|
-
"--zIndex":
|
|
26366
|
+
"--zIndex": maybeCssVar56(zIndices.environmentBanner)
|
|
26193
26367
|
}],
|
|
26194
26368
|
width: ["w_var", {
|
|
26195
|
-
"--width":
|
|
26369
|
+
"--width": maybeCssVar56(__maybeInc25(innerWidth))
|
|
26196
26370
|
}]
|
|
26197
|
-
}), ...tid.bannerSticky, children: /* @__PURE__ */
|
|
26371
|
+
}), ...tid.bannerSticky, children: /* @__PURE__ */ jsx211(EnvironmentBanner, { ...environmentBanner, ...tid.environmentBanner }) }) }),
|
|
26198
26372
|
children
|
|
26199
26373
|
] }) }) });
|
|
26200
26374
|
}
|
|
26201
26375
|
|
|
26202
26376
|
// src/layouts/FormSectionLayout/FormSectionLayout.tsx
|
|
26203
26377
|
import { trussProps as trussProps121 } from "@homebound/truss/runtime";
|
|
26204
|
-
import { jsx as
|
|
26378
|
+
import { jsx as jsx212, jsxs as jsxs109 } from "react/jsx-runtime";
|
|
26205
26379
|
function FormSectionLayout(props) {
|
|
26206
26380
|
const {
|
|
26207
26381
|
title,
|
|
@@ -26211,14 +26385,14 @@ function FormSectionLayout(props) {
|
|
|
26211
26385
|
sections
|
|
26212
26386
|
} = props;
|
|
26213
26387
|
const tid = useTestIds(props, "formSectionLayout");
|
|
26214
|
-
return /* @__PURE__ */
|
|
26215
|
-
/* @__PURE__ */
|
|
26216
|
-
/* @__PURE__ */
|
|
26217
|
-
/* @__PURE__ */
|
|
26218
|
-
/* @__PURE__ */
|
|
26219
|
-
actions && /* @__PURE__ */
|
|
26388
|
+
return /* @__PURE__ */ jsxs109("div", { className: "df fdc gap8 w100 pt4 maxw_720px mla mra sm_pl2 sm_pr2", ...tid, children: [
|
|
26389
|
+
/* @__PURE__ */ jsxs109("div", { className: "df fdc gap3", children: [
|
|
26390
|
+
/* @__PURE__ */ jsxs109("div", { className: "df fdc jcsb gap_12px", children: [
|
|
26391
|
+
/* @__PURE__ */ jsxs109("div", { className: "df jcsb aic", children: [
|
|
26392
|
+
/* @__PURE__ */ jsx212("h1", { className: "fw6 fz_20px lh_28px", ...tid.title, children: title }),
|
|
26393
|
+
actions && /* @__PURE__ */ jsx212("div", { className: "df gap1 fs0", ...tid.actions, children: actions.map((action) => action.kind === "icon" ? /* @__PURE__ */ jsx212(IconButton, { ...action, variant: "outline" }, action.icon) : /* @__PURE__ */ jsx212(Button, { ...action }, `${action.label}`)) })
|
|
26220
26394
|
] }),
|
|
26221
|
-
description && /* @__PURE__ */
|
|
26395
|
+
description && /* @__PURE__ */ jsx212("div", { ...trussProps121({
|
|
26222
26396
|
fontWeight: "fw4",
|
|
26223
26397
|
fontSize: "fz_14px",
|
|
26224
26398
|
lineHeight: "lh_20px",
|
|
@@ -26229,16 +26403,16 @@ function FormSectionLayout(props) {
|
|
|
26229
26403
|
] }),
|
|
26230
26404
|
initialFields
|
|
26231
26405
|
] }),
|
|
26232
|
-
sections && /* @__PURE__ */
|
|
26406
|
+
sections && /* @__PURE__ */ jsx212("div", { className: "df fdc gap8", children: sections.map((section, i) => /* @__PURE__ */ jsx212(FormSection, { ...section }, defaultTestId(section.title) || i)) })
|
|
26233
26407
|
] });
|
|
26234
26408
|
}
|
|
26235
26409
|
|
|
26236
26410
|
// src/layouts/NavbarLayout/NavbarLayout.tsx
|
|
26237
26411
|
import { useMemo as useMemo56, useRef as useRef66 } from "react";
|
|
26238
|
-
import { mergeProps as
|
|
26412
|
+
import { mergeProps as mergeProps37, maybeCssVar as maybeCssVar57 } from "@homebound/truss/runtime";
|
|
26239
26413
|
|
|
26240
26414
|
// src/layouts/useAutoHideOnScroll.ts
|
|
26241
|
-
import { useLayoutEffect as
|
|
26415
|
+
import { useLayoutEffect as useLayoutEffect9, useRef as useRef65, useState as useState57 } from "react";
|
|
26242
26416
|
var THRESHOLD = 80;
|
|
26243
26417
|
function getInitialAutoHideState() {
|
|
26244
26418
|
if (typeof window === "undefined" || window.scrollY <= 0) {
|
|
@@ -26256,7 +26430,7 @@ function useAutoHideOnScroll(spacerRef, enabled, getTopOffset) {
|
|
|
26256
26430
|
getTopOffsetRef.current = getTopOffset;
|
|
26257
26431
|
const lastScrollY = useRef65(Number.POSITIVE_INFINITY);
|
|
26258
26432
|
const lastScrollHeight = useRef65(0);
|
|
26259
|
-
|
|
26433
|
+
useLayoutEffect9(() => {
|
|
26260
26434
|
if (!enabled) {
|
|
26261
26435
|
stateRef.current = "static";
|
|
26262
26436
|
atTopRef.current = true;
|
|
@@ -26329,7 +26503,7 @@ function useAutoHideOnScroll(spacerRef, enabled, getTopOffset) {
|
|
|
26329
26503
|
|
|
26330
26504
|
// src/layouts/useMeasuredHeight.ts
|
|
26331
26505
|
import { useResizeObserver as useResizeObserver10 } from "@react-aria/utils";
|
|
26332
|
-
import { useCallback as useCallback38, useLayoutEffect as
|
|
26506
|
+
import { useCallback as useCallback38, useLayoutEffect as useLayoutEffect10, useState as useState58 } from "react";
|
|
26333
26507
|
function useMeasuredHeight(ref, enabled) {
|
|
26334
26508
|
const [height, setHeight] = useState58(0);
|
|
26335
26509
|
const syncElementHeight = useCallback38(() => {
|
|
@@ -26338,7 +26512,7 @@ function useMeasuredHeight(ref, enabled) {
|
|
|
26338
26512
|
setHeight((prev) => prev === next ? prev : next);
|
|
26339
26513
|
}, [ref]);
|
|
26340
26514
|
useResizeObserver10({ ref, onResize: syncElementHeight });
|
|
26341
|
-
|
|
26515
|
+
useLayoutEffect10(() => {
|
|
26342
26516
|
syncElementHeight();
|
|
26343
26517
|
}, [enabled, syncElementHeight]);
|
|
26344
26518
|
return height;
|
|
@@ -26346,18 +26520,18 @@ function useMeasuredHeight(ref, enabled) {
|
|
|
26346
26520
|
|
|
26347
26521
|
// src/layouts/NavbarLayout/NavbarLayoutHeightContext.tsx
|
|
26348
26522
|
import { createContext as createContext15, useContext as useContext27 } from "react";
|
|
26349
|
-
import { jsx as
|
|
26523
|
+
import { jsx as jsx213 } from "react/jsx-runtime";
|
|
26350
26524
|
var NavbarLayoutHeightContext = createContext15(0);
|
|
26351
26525
|
function NavbarLayoutHeightProvider({ value, children }) {
|
|
26352
|
-
return /* @__PURE__ */
|
|
26526
|
+
return /* @__PURE__ */ jsx213(NavbarLayoutHeightContext.Provider, { value, children });
|
|
26353
26527
|
}
|
|
26354
26528
|
function useNavbarLayoutHeight() {
|
|
26355
26529
|
return useContext27(NavbarLayoutHeightContext);
|
|
26356
26530
|
}
|
|
26357
26531
|
|
|
26358
26532
|
// src/layouts/NavbarLayout/NavbarLayout.tsx
|
|
26359
|
-
import { jsx as
|
|
26360
|
-
var
|
|
26533
|
+
import { jsx as jsx214, jsxs as jsxs110 } from "react/jsx-runtime";
|
|
26534
|
+
var __maybeInc26 = (inc) => {
|
|
26361
26535
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
26362
26536
|
};
|
|
26363
26537
|
function NavbarLayout(props) {
|
|
@@ -26385,10 +26559,10 @@ function NavbarLayout(props) {
|
|
|
26385
26559
|
position: "sticky",
|
|
26386
26560
|
left: "left0",
|
|
26387
26561
|
zIndex: ["z_var", {
|
|
26388
|
-
"--zIndex":
|
|
26562
|
+
"--zIndex": maybeCssVar57(zIndices.navbar)
|
|
26389
26563
|
}],
|
|
26390
26564
|
width: ["w_var", {
|
|
26391
|
-
"--width":
|
|
26565
|
+
"--width": maybeCssVar57(__maybeInc26(innerWidth))
|
|
26392
26566
|
}]
|
|
26393
26567
|
}
|
|
26394
26568
|
) : (
|
|
@@ -26397,10 +26571,10 @@ function NavbarLayout(props) {
|
|
|
26397
26571
|
position: "fixed",
|
|
26398
26572
|
left: "left0",
|
|
26399
26573
|
zIndex: ["z_var", {
|
|
26400
|
-
"--zIndex":
|
|
26574
|
+
"--zIndex": maybeCssVar57(zIndices.navbar)
|
|
26401
26575
|
}],
|
|
26402
26576
|
width: ["w_var", {
|
|
26403
|
-
"--width":
|
|
26577
|
+
"--width": maybeCssVar57(__maybeInc26(innerWidth))
|
|
26404
26578
|
}],
|
|
26405
26579
|
transition: "transitionTop"
|
|
26406
26580
|
}
|
|
@@ -26409,20 +26583,20 @@ function NavbarLayout(props) {
|
|
|
26409
26583
|
const innerStyle = autoHideState !== "static" ? {
|
|
26410
26584
|
top: autoHideState === "revealed" ? bannerTop : `calc(${bannerTop} - ${navHeight}px)`
|
|
26411
26585
|
} : void 0;
|
|
26412
|
-
const navbarEl = useMemo56(() => /* @__PURE__ */
|
|
26413
|
-
return /* @__PURE__ */
|
|
26586
|
+
const navbarEl = useMemo56(() => /* @__PURE__ */ jsx214(Navbar, { ...navbar }), [navbar]);
|
|
26587
|
+
return /* @__PURE__ */ jsx214(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ jsx214(NavbarLayoutHeightProvider, { value: navbarOffsetPx, children: /* @__PURE__ */ jsxs110("div", { ...mergeProps37(void 0, cssVars, {
|
|
26414
26588
|
display: "df",
|
|
26415
26589
|
flexDirection: "fdc",
|
|
26416
26590
|
width: "wfc",
|
|
26417
26591
|
minWidth: "mw100"
|
|
26418
26592
|
}), ...tid, children: [
|
|
26419
|
-
/* @__PURE__ */
|
|
26593
|
+
/* @__PURE__ */ jsx214("div", { ref: spacerRef, ...mergeProps37(void 0, {
|
|
26420
26594
|
height: navHeight
|
|
26421
26595
|
}, {
|
|
26422
26596
|
flexShrink: "fs0",
|
|
26423
26597
|
width: "w100"
|
|
26424
|
-
}), children: /* @__PURE__ */
|
|
26425
|
-
/* @__PURE__ */
|
|
26598
|
+
}), children: /* @__PURE__ */ jsx214("div", { ref: navMetricsRef, ...mergeProps37(void 0, innerStyle, innerCss), ...tid.navbar, children: navbarEl }) }),
|
|
26599
|
+
/* @__PURE__ */ jsx214("div", { className: "df fdc mh0 mw100 w100", ...tid.body, children })
|
|
26426
26600
|
] }) }) });
|
|
26427
26601
|
}
|
|
26428
26602
|
|
|
@@ -26431,7 +26605,7 @@ import { useCallback as useCallback39, useMemo as useMemo57, useRef as useRef67
|
|
|
26431
26605
|
|
|
26432
26606
|
// src/components/Headers/BaseHeader.tsx
|
|
26433
26607
|
import { trussProps as trussProps122 } from "@homebound/truss/runtime";
|
|
26434
|
-
import { jsx as
|
|
26608
|
+
import { jsx as jsx215, jsxs as jsxs111 } from "react/jsx-runtime";
|
|
26435
26609
|
function BaseHeader(props) {
|
|
26436
26610
|
const {
|
|
26437
26611
|
title,
|
|
@@ -26443,7 +26617,7 @@ function BaseHeader(props) {
|
|
|
26443
26617
|
} = props;
|
|
26444
26618
|
const tid = useTestIds(otherProps, "header");
|
|
26445
26619
|
useDocumentTitle(title, documentTitleSuffix);
|
|
26446
|
-
return /* @__PURE__ */
|
|
26620
|
+
return /* @__PURE__ */ jsxs111("header", { ...tid, ...trussProps122({
|
|
26447
26621
|
display: "df",
|
|
26448
26622
|
flexDirection: "fdc",
|
|
26449
26623
|
paddingTop: "pt3",
|
|
@@ -26457,7 +26631,7 @@ function BaseHeader(props) {
|
|
|
26457
26631
|
"--backgroundColor": "var(--b-surface)"
|
|
26458
26632
|
}]
|
|
26459
26633
|
}), children: [
|
|
26460
|
-
/* @__PURE__ */
|
|
26634
|
+
/* @__PURE__ */ jsxs111("div", { ...trussProps122({
|
|
26461
26635
|
...{
|
|
26462
26636
|
display: "df",
|
|
26463
26637
|
justifyContent: "jcsb",
|
|
@@ -26471,9 +26645,9 @@ function BaseHeader(props) {
|
|
|
26471
26645
|
} : {}
|
|
26472
26646
|
}
|
|
26473
26647
|
}), children: [
|
|
26474
|
-
/* @__PURE__ */
|
|
26475
|
-
breadcrumbs && /* @__PURE__ */
|
|
26476
|
-
/* @__PURE__ */
|
|
26648
|
+
/* @__PURE__ */ jsxs111("div", { className: "mw0", children: [
|
|
26649
|
+
breadcrumbs && /* @__PURE__ */ jsx215(Breadcrumbs, { ...breadcrumbs }),
|
|
26650
|
+
/* @__PURE__ */ jsx215("h1", { ...tid.title, ...trussProps122({
|
|
26477
26651
|
fontWeight: "fw6",
|
|
26478
26652
|
fontSize: "fz_20px",
|
|
26479
26653
|
lineHeight: "lh_28px",
|
|
@@ -26482,7 +26656,7 @@ function BaseHeader(props) {
|
|
|
26482
26656
|
}]
|
|
26483
26657
|
}), children: title })
|
|
26484
26658
|
] }),
|
|
26485
|
-
/* @__PURE__ */
|
|
26659
|
+
/* @__PURE__ */ jsx215("div", { className: "fs0", children: rightSlot })
|
|
26486
26660
|
] }),
|
|
26487
26661
|
bottomSlot
|
|
26488
26662
|
] });
|
|
@@ -26490,14 +26664,14 @@ function BaseHeader(props) {
|
|
|
26490
26664
|
|
|
26491
26665
|
// src/components/Headers/PageHeader.tsx
|
|
26492
26666
|
import { trussProps as trussProps123 } from "@homebound/truss/runtime";
|
|
26493
|
-
import { jsx as
|
|
26667
|
+
import { jsx as jsx216 } from "react/jsx-runtime";
|
|
26494
26668
|
function PageHeader2(props) {
|
|
26495
26669
|
const {
|
|
26496
26670
|
tabs,
|
|
26497
26671
|
...otherProps
|
|
26498
26672
|
} = props;
|
|
26499
26673
|
const tid = useTestIds(otherProps, "header");
|
|
26500
|
-
return /* @__PURE__ */
|
|
26674
|
+
return /* @__PURE__ */ jsx216(BaseHeader, { ...otherProps, bottomSlot: tabs && /* @__PURE__ */ jsx216("div", { ...trussProps123(pageContentPaddingX), children: /* @__PURE__ */ jsx216(Tabs, { ...tabs, ...tid.tabs }) }) });
|
|
26501
26675
|
}
|
|
26502
26676
|
|
|
26503
26677
|
// src/layouts/useBannerAndNavbarHeight.ts
|
|
@@ -26506,9 +26680,9 @@ function useBannerAndNavbarHeight() {
|
|
|
26506
26680
|
}
|
|
26507
26681
|
|
|
26508
26682
|
// src/layouts/PageHeaderLayout/PageHeaderLayout.tsx
|
|
26509
|
-
import { mergeProps as
|
|
26510
|
-
import { jsx as
|
|
26511
|
-
var
|
|
26683
|
+
import { mergeProps as mergeProps38, maybeCssVar as maybeCssVar58 } from "@homebound/truss/runtime";
|
|
26684
|
+
import { jsx as jsx217, jsxs as jsxs112 } from "react/jsx-runtime";
|
|
26685
|
+
var __maybeInc27 = (inc) => {
|
|
26512
26686
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
26513
26687
|
};
|
|
26514
26688
|
function PageHeaderLayout(props) {
|
|
@@ -26538,59 +26712,59 @@ function PageHeaderLayout(props) {
|
|
|
26538
26712
|
const innerCss = autoHideState === "static" ? {
|
|
26539
26713
|
position: "sticky",
|
|
26540
26714
|
left: ["left_var", {
|
|
26541
|
-
"--left":
|
|
26715
|
+
"--left": maybeCssVar58(__maybeInc27(headerLeft))
|
|
26542
26716
|
}],
|
|
26543
26717
|
width: ["w_var", {
|
|
26544
|
-
"--width":
|
|
26718
|
+
"--width": maybeCssVar58(__maybeInc27(headerWidth))
|
|
26545
26719
|
}],
|
|
26546
26720
|
zIndex: ["z_var", {
|
|
26547
|
-
"--zIndex":
|
|
26721
|
+
"--zIndex": maybeCssVar58(zIndices.pageStickyHeader)
|
|
26548
26722
|
}]
|
|
26549
26723
|
} : {
|
|
26550
26724
|
position: "fixed",
|
|
26551
26725
|
left: ["left_var", {
|
|
26552
|
-
"--left":
|
|
26726
|
+
"--left": maybeCssVar58(__maybeInc27(headerLeft))
|
|
26553
26727
|
}],
|
|
26554
26728
|
width: ["w_var", {
|
|
26555
|
-
"--width":
|
|
26729
|
+
"--width": maybeCssVar58(__maybeInc27(headerWidth))
|
|
26556
26730
|
}],
|
|
26557
26731
|
zIndex: ["z_var", {
|
|
26558
|
-
"--zIndex":
|
|
26732
|
+
"--zIndex": maybeCssVar58(zIndices.pageStickyHeader)
|
|
26559
26733
|
}],
|
|
26560
26734
|
transition: "transitionTop"
|
|
26561
26735
|
};
|
|
26562
26736
|
const innerStyle = autoHideState !== "static" ? {
|
|
26563
26737
|
top: autoHideState === "revealed" ? outerTop : `calc(${outerTop} - ${headerHeight}px)`
|
|
26564
26738
|
} : void 0;
|
|
26565
|
-
const pageHeaderEl = useMemo57(() => /* @__PURE__ */
|
|
26566
|
-
return /* @__PURE__ */
|
|
26739
|
+
const pageHeaderEl = useMemo57(() => /* @__PURE__ */ jsx217(PageHeader2, { ...pageHeader }), [pageHeader]);
|
|
26740
|
+
return /* @__PURE__ */ jsx217(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ jsxs112("div", { ...mergeProps38(void 0, cssVars, {
|
|
26567
26741
|
display: "df",
|
|
26568
26742
|
flexDirection: "fdc",
|
|
26569
26743
|
width: "w100"
|
|
26570
26744
|
}), ...tid, children: [
|
|
26571
|
-
/* @__PURE__ */
|
|
26745
|
+
/* @__PURE__ */ jsx217("div", { ref: spacerRef, ...mergeProps38(void 0, {
|
|
26572
26746
|
height: headerHeight
|
|
26573
26747
|
}, {
|
|
26574
26748
|
flexShrink: "fs0",
|
|
26575
26749
|
width: "w100"
|
|
26576
|
-
}), children: /* @__PURE__ */
|
|
26577
|
-
/* @__PURE__ */
|
|
26750
|
+
}), children: /* @__PURE__ */ jsx217("div", { ref: headerMetricsRef, ...mergeProps38(void 0, innerStyle, innerCss), ...tid.pageHeader, children: pageHeaderEl }) }),
|
|
26751
|
+
/* @__PURE__ */ jsx217("div", { className: "df fdc fg1 mh0 w100", ...tid.body, children })
|
|
26578
26752
|
] }) });
|
|
26579
26753
|
}
|
|
26580
26754
|
|
|
26581
26755
|
// src/layouts/WorkflowLayout/WorkflowLayout.tsx
|
|
26582
|
-
import { useLayoutEffect as
|
|
26756
|
+
import { useLayoutEffect as useLayoutEffect12, useRef as useRef70, useState as useState60 } from "react";
|
|
26583
26757
|
|
|
26584
26758
|
// src/components/Headers/WorkflowHeader.tsx
|
|
26585
|
-
import { jsx as
|
|
26759
|
+
import { jsx as jsx218 } from "react/jsx-runtime";
|
|
26586
26760
|
function WorkflowHeader(props) {
|
|
26587
26761
|
const { stepperTabs, ...otherProps } = props;
|
|
26588
26762
|
const tid = useTestIds(otherProps, "header");
|
|
26589
|
-
return /* @__PURE__ */
|
|
26763
|
+
return /* @__PURE__ */ jsx218(BaseHeader, { ...otherProps, bottomSlot: /* @__PURE__ */ jsx218(StepperTabs, { ...stepperTabs, ...tid.stepperTabs }) });
|
|
26590
26764
|
}
|
|
26591
26765
|
|
|
26592
26766
|
// src/layouts/useScrollCollapse.ts
|
|
26593
|
-
import { useLayoutEffect as
|
|
26767
|
+
import { useLayoutEffect as useLayoutEffect11, useRef as useRef68, useState as useState59 } from "react";
|
|
26594
26768
|
function useScrollCollapse(enabled, restingOffset) {
|
|
26595
26769
|
const [collapsed, setCollapsed] = useState59(() => typeof window !== "undefined" && window.scrollY > 0);
|
|
26596
26770
|
const collapsedRef = useRef68(collapsed);
|
|
@@ -26599,10 +26773,10 @@ function useScrollCollapse(enabled, restingOffset) {
|
|
|
26599
26773
|
restingOffsetRef.current = restingOffset;
|
|
26600
26774
|
const lastScrollYRef = useRef68(Number.POSITIVE_INFINITY);
|
|
26601
26775
|
const lastScrollHeightRef = useRef68(0);
|
|
26602
|
-
|
|
26776
|
+
useLayoutEffect11(() => {
|
|
26603
26777
|
lastScrollHeightRef.current = document.documentElement.scrollHeight;
|
|
26604
26778
|
}, [restingOffset]);
|
|
26605
|
-
|
|
26779
|
+
useLayoutEffect11(() => {
|
|
26606
26780
|
if (!enabled) return;
|
|
26607
26781
|
const commit = (next) => {
|
|
26608
26782
|
if (next !== collapsedRef.current) {
|
|
@@ -26641,15 +26815,15 @@ function useScrollCollapse(enabled, restingOffset) {
|
|
|
26641
26815
|
}
|
|
26642
26816
|
|
|
26643
26817
|
// src/layouts/WorkflowLayout/useUnsavedChangesGuard.tsx
|
|
26644
|
-
import { useEffect as
|
|
26818
|
+
import { useEffect as useEffect39, useRef as useRef69 } from "react";
|
|
26645
26819
|
import { useBlocker } from "react-router-dom";
|
|
26646
|
-
import { jsx as
|
|
26820
|
+
import { jsx as jsx219 } from "react/jsx-runtime";
|
|
26647
26821
|
function useUnsavedChangesGuard(options) {
|
|
26648
26822
|
const { isDirty, onCancel } = options;
|
|
26649
26823
|
const { openModal } = useModal();
|
|
26650
26824
|
const isDirtyRef = useRef69(isDirty);
|
|
26651
26825
|
isDirtyRef.current = isDirty;
|
|
26652
|
-
|
|
26826
|
+
useEffect39(() => {
|
|
26653
26827
|
const onBeforeUnload = (e) => {
|
|
26654
26828
|
if (isDirtyRef.current?.()) {
|
|
26655
26829
|
e.preventDefault();
|
|
@@ -26666,7 +26840,7 @@ function useUnsavedChangesGuard(options) {
|
|
|
26666
26840
|
}
|
|
26667
26841
|
openModal({
|
|
26668
26842
|
allowClosing: false,
|
|
26669
|
-
content: /* @__PURE__ */
|
|
26843
|
+
content: /* @__PURE__ */ jsx219(ConfirmCloseModal, { onClose: () => onCancel(e) })
|
|
26670
26844
|
});
|
|
26671
26845
|
};
|
|
26672
26846
|
const navigationBlocker = blocker.state === "blocked" ? { proceed: () => blocker.proceed?.(), cancelNavigation: () => blocker.reset?.() } : void 0;
|
|
@@ -26675,10 +26849,10 @@ function useUnsavedChangesGuard(options) {
|
|
|
26675
26849
|
function UnsavedChangesNavigationModal(props) {
|
|
26676
26850
|
const { proceed, cancelNavigation } = props;
|
|
26677
26851
|
const { openModal, closeModal } = useModal();
|
|
26678
|
-
|
|
26852
|
+
useEffect39(() => {
|
|
26679
26853
|
openModal({
|
|
26680
26854
|
allowClosing: false,
|
|
26681
|
-
content: /* @__PURE__ */
|
|
26855
|
+
content: /* @__PURE__ */ jsx219(ConfirmCloseModal, { title: "Leave page?", onClose: proceed, onContinue: cancelNavigation })
|
|
26682
26856
|
});
|
|
26683
26857
|
return () => closeModal();
|
|
26684
26858
|
}, []);
|
|
@@ -26686,7 +26860,7 @@ function UnsavedChangesNavigationModal(props) {
|
|
|
26686
26860
|
}
|
|
26687
26861
|
|
|
26688
26862
|
// src/layouts/WorkflowLayout/WorkflowActions.tsx
|
|
26689
|
-
import { jsx as
|
|
26863
|
+
import { jsx as jsx220, jsxs as jsxs113 } from "react/jsx-runtime";
|
|
26690
26864
|
function WorkflowActions(props) {
|
|
26691
26865
|
const {
|
|
26692
26866
|
isFirstStep,
|
|
@@ -26700,20 +26874,20 @@ function WorkflowActions(props) {
|
|
|
26700
26874
|
onContinue,
|
|
26701
26875
|
primaryDisabled
|
|
26702
26876
|
} = props;
|
|
26703
|
-
return /* @__PURE__ */
|
|
26704
|
-
/* @__PURE__ */
|
|
26705
|
-
/* @__PURE__ */
|
|
26706
|
-
/* @__PURE__ */
|
|
26707
|
-
onSaveAndExit && /* @__PURE__ */
|
|
26708
|
-
isLastStep ? /* @__PURE__ */
|
|
26877
|
+
return /* @__PURE__ */ jsxs113("div", { className: "df aic jcsb sm_w100", children: [
|
|
26878
|
+
/* @__PURE__ */ jsx220("div", { className: "df aic", children: !isFirstStep && isMobile && /* @__PURE__ */ jsx220(IconButton, { icon: "arrowBack", label: "Back", onClick: onBack }) }),
|
|
26879
|
+
/* @__PURE__ */ jsxs113("div", { className: "df aic gap1", children: [
|
|
26880
|
+
/* @__PURE__ */ jsx220(Button, { label: "Cancel", variant: "quaternary", onClick: onCancel }),
|
|
26881
|
+
onSaveAndExit && /* @__PURE__ */ jsx220(Button, { label: "Save & Exit", variant: "secondary", onClick: onSaveAndExit }),
|
|
26882
|
+
isLastStep ? /* @__PURE__ */ jsx220(Button, { label: completeLabel, variant: "primary", onClick: onComplete, disabled: primaryDisabled }) : /* @__PURE__ */ jsx220(Button, { label: "Continue", variant: "primary", onClick: onContinue, disabled: primaryDisabled })
|
|
26709
26883
|
] })
|
|
26710
26884
|
] });
|
|
26711
26885
|
}
|
|
26712
26886
|
|
|
26713
26887
|
// src/layouts/WorkflowLayout/WorkflowLayout.tsx
|
|
26714
|
-
import { trussProps as trussProps124, mergeProps as
|
|
26715
|
-
import { jsx as
|
|
26716
|
-
var
|
|
26888
|
+
import { trussProps as trussProps124, mergeProps as mergeProps39, maybeCssVar as maybeCssVar59 } from "@homebound/truss/runtime";
|
|
26889
|
+
import { jsx as jsx221, jsxs as jsxs114 } from "react/jsx-runtime";
|
|
26890
|
+
var __maybeInc28 = (inc) => {
|
|
26717
26891
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
26718
26892
|
};
|
|
26719
26893
|
function WorkflowLayout(props) {
|
|
@@ -26757,7 +26931,7 @@ function WorkflowLayout(props) {
|
|
|
26757
26931
|
const isFirstStep = currentIndex <= 0;
|
|
26758
26932
|
const isLastStep = currentIndex === stepTabs.length - 1;
|
|
26759
26933
|
const activeStep = stepTabs[currentIndex];
|
|
26760
|
-
const buttons = /* @__PURE__ */
|
|
26934
|
+
const buttons = /* @__PURE__ */ jsx221(WorkflowActions, { isFirstStep, isLastStep, isMobile, onBack: () => setCurrentStep(stepTabs[currentIndex - 1].value), onCancel: onCancelClick, onSaveAndExit, completeLabel, onComplete, primaryDisabled: !activeStep?.isValid, onContinue: async () => {
|
|
26761
26935
|
const onContinue = activeStep?.onContinue;
|
|
26762
26936
|
if (onContinue) {
|
|
26763
26937
|
const allowed = await onContinue();
|
|
@@ -26766,7 +26940,7 @@ function WorkflowLayout(props) {
|
|
|
26766
26940
|
setCurrentStep(stepTabs[currentIndex + 1].value);
|
|
26767
26941
|
} });
|
|
26768
26942
|
const showFooter = isMobile;
|
|
26769
|
-
|
|
26943
|
+
useLayoutEffect12(() => {
|
|
26770
26944
|
const root = document.documentElement;
|
|
26771
26945
|
const previous = root.style.getPropertyValue(beamWorkflowLayoutFooterHeightVar);
|
|
26772
26946
|
root.style.setProperty(beamWorkflowLayoutFooterHeightVar, showFooter ? `${mobileFooterHeightPx}px` : "0px");
|
|
@@ -26778,50 +26952,50 @@ function WorkflowLayout(props) {
|
|
|
26778
26952
|
}
|
|
26779
26953
|
};
|
|
26780
26954
|
}, [showFooter]);
|
|
26781
|
-
const headerEl = /* @__PURE__ */
|
|
26955
|
+
const headerEl = /* @__PURE__ */ jsx221(WorkflowHeader, { ...headerProps, rightSlot: isMobile ? void 0 : buttons, stepperTabs: {
|
|
26782
26956
|
steps: stepTabs,
|
|
26783
26957
|
currentStep,
|
|
26784
26958
|
onChange: setCurrentStep,
|
|
26785
26959
|
collapsed
|
|
26786
26960
|
} });
|
|
26787
|
-
return /* @__PURE__ */
|
|
26788
|
-
/* @__PURE__ */
|
|
26961
|
+
return /* @__PURE__ */ jsxs114(DocumentScrollLayoutProvider, { children: [
|
|
26962
|
+
/* @__PURE__ */ jsxs114("div", { ...mergeProps39(void 0, cssVars, {
|
|
26789
26963
|
display: "df",
|
|
26790
26964
|
flexDirection: "fdc",
|
|
26791
26965
|
width: "w100"
|
|
26792
26966
|
}), ...tid, children: [
|
|
26793
|
-
/* @__PURE__ */
|
|
26967
|
+
/* @__PURE__ */ jsx221("div", { ref: headerMetricsRef, ...trussProps124({
|
|
26794
26968
|
position: "sticky",
|
|
26795
26969
|
left: "left0",
|
|
26796
26970
|
width: ["w_var", {
|
|
26797
|
-
"--width":
|
|
26971
|
+
"--width": maybeCssVar59(__maybeInc28(headerWidth))
|
|
26798
26972
|
}],
|
|
26799
26973
|
zIndex: ["z_var", {
|
|
26800
|
-
"--zIndex":
|
|
26974
|
+
"--zIndex": maybeCssVar59(zIndices.pageStickyHeader)
|
|
26801
26975
|
}],
|
|
26802
26976
|
top: ["top_var", {
|
|
26803
|
-
"--top":
|
|
26977
|
+
"--top": maybeCssVar59(__maybeInc28(outerTop))
|
|
26804
26978
|
}]
|
|
26805
26979
|
}), ...tid.header, children: headerEl }),
|
|
26806
|
-
/* @__PURE__ */
|
|
26807
|
-
showFooter && /* @__PURE__ */
|
|
26980
|
+
/* @__PURE__ */ jsx221("div", { className: "df fdc fg1 mh0 w100", ...tid.body, children: activeStep?.content }),
|
|
26981
|
+
showFooter && /* @__PURE__ */ jsx221("div", { ...trussProps124({
|
|
26808
26982
|
flexShrink: "fs0",
|
|
26809
26983
|
width: "w100",
|
|
26810
26984
|
height: ["h_var", {
|
|
26811
26985
|
"--height": `${mobileFooterHeightPx}px`
|
|
26812
26986
|
}]
|
|
26813
|
-
}), children: /* @__PURE__ */
|
|
26987
|
+
}), children: /* @__PURE__ */ jsx221("div", { ...trussProps124({
|
|
26814
26988
|
...{
|
|
26815
26989
|
position: "fixed",
|
|
26816
26990
|
bottom: "bottom0",
|
|
26817
26991
|
width: ["w_var", {
|
|
26818
|
-
"--width":
|
|
26992
|
+
"--width": maybeCssVar59(__maybeInc28(headerWidth))
|
|
26819
26993
|
}],
|
|
26820
26994
|
height: ["h_var", {
|
|
26821
26995
|
"--height": `${mobileFooterHeightPx}px`
|
|
26822
26996
|
}],
|
|
26823
26997
|
zIndex: ["z_var", {
|
|
26824
|
-
"--zIndex":
|
|
26998
|
+
"--zIndex": maybeCssVar59(zIndices.pageStickyFooter)
|
|
26825
26999
|
}],
|
|
26826
27000
|
display: "df",
|
|
26827
27001
|
alignItems: "aic",
|
|
@@ -26839,7 +27013,7 @@ function WorkflowLayout(props) {
|
|
|
26839
27013
|
...pageContentPaddingX
|
|
26840
27014
|
}), ...tid.footer, children: buttons }) })
|
|
26841
27015
|
] }),
|
|
26842
|
-
navigationBlocker && /* @__PURE__ */
|
|
27016
|
+
navigationBlocker && /* @__PURE__ */ jsx221(UnsavedChangesNavigationModal, { ...navigationBlocker })
|
|
26843
27017
|
] });
|
|
26844
27018
|
}
|
|
26845
27019
|
var mobileFooterHeightPx = 80;
|
|
@@ -26912,6 +27086,7 @@ export {
|
|
|
26912
27086
|
DateRangeField,
|
|
26913
27087
|
DnDGrid,
|
|
26914
27088
|
DnDGridItemHandle,
|
|
27089
|
+
DocumentScrollRightPaneLayout,
|
|
26915
27090
|
DocumentTitleProvider,
|
|
26916
27091
|
EXPANDABLE_HEADER,
|
|
26917
27092
|
EditColumnsButton,
|
|
@@ -27025,10 +27200,12 @@ export {
|
|
|
27025
27200
|
assignDefaultColumnIds,
|
|
27026
27201
|
bannerAndNavbarChromeTop,
|
|
27027
27202
|
beamEnvironmentBannerLayoutHeightVar,
|
|
27203
|
+
beamFloatingRightOffsetVar,
|
|
27028
27204
|
beamLayoutViewportHeightVar,
|
|
27029
27205
|
beamLayoutViewportWidthVar,
|
|
27030
27206
|
beamNavbarLayoutHeightVar,
|
|
27031
27207
|
beamPageHeaderLayoutHeightVar,
|
|
27208
|
+
beamRightPaneWidthVar,
|
|
27032
27209
|
beamSideNavLayoutWidthVar,
|
|
27033
27210
|
beamTableActionsHeightVar,
|
|
27034
27211
|
beamWorkflowLayoutFooterHeightVar,
|
|
@@ -27073,12 +27250,15 @@ export {
|
|
|
27073
27250
|
dateFilter,
|
|
27074
27251
|
dateFormats,
|
|
27075
27252
|
dateRangeFilter,
|
|
27253
|
+
defaultDocumentScrollRightPaneWidth,
|
|
27076
27254
|
defaultPage,
|
|
27077
27255
|
defaultRenderFn,
|
|
27078
27256
|
defaultStyle,
|
|
27079
27257
|
defaultTestId,
|
|
27080
27258
|
documentScrollChromeLeft,
|
|
27081
27259
|
documentScrollChromeWidth,
|
|
27260
|
+
documentScrollRightPaneHeight,
|
|
27261
|
+
documentScrollRightPaneWidth,
|
|
27082
27262
|
dragHandleColumn,
|
|
27083
27263
|
emptyCell,
|
|
27084
27264
|
ensureClientSideSortValueIsSortable,
|
|
@@ -27095,6 +27275,7 @@ export {
|
|
|
27095
27275
|
getDateFormat,
|
|
27096
27276
|
getFirstOrLastCellCss,
|
|
27097
27277
|
getFloatingBottomOffset,
|
|
27278
|
+
getFloatingRightOffset,
|
|
27098
27279
|
getJustification,
|
|
27099
27280
|
getNavLinkStyles,
|
|
27100
27281
|
getTableRefWidthStyles,
|