@homebound/beam 4.29.0 → 4.30.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 +806 -710
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +12 -1
- package/dist/index.d.ts +12 -1
- package/dist/index.js +647 -551
- package/dist/index.js.map +1 -1
- package/dist/truss.css +4 -0
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -13196,7 +13196,9 @@ function Popover(props) {
|
|
|
13196
13196
|
if (triggerRef.current?.contains(e)) {
|
|
13197
13197
|
return true;
|
|
13198
13198
|
}
|
|
13199
|
-
|
|
13199
|
+
const dialog = e.closest("[role='dialog']");
|
|
13200
|
+
const isDialogOnTop = !!dialog && !dialog.contains(triggerRef.current);
|
|
13201
|
+
return !(e.closest(".tribute-container") || isDialogOnTop || e.closest("[role='alert']"));
|
|
13200
13202
|
},
|
|
13201
13203
|
...others
|
|
13202
13204
|
},
|
|
@@ -26848,29 +26850,102 @@ function RightPaneLayout(props) {
|
|
|
26848
26850
|
] }) });
|
|
26849
26851
|
}
|
|
26850
26852
|
|
|
26851
|
-
// src/components/Layout/RightPaneLayout/
|
|
26853
|
+
// src/components/Layout/RightPaneLayout/internal/DeleteAction.tsx
|
|
26854
|
+
var import_utils41 = require("@react-aria/utils");
|
|
26855
|
+
var import_react136 = require("react");
|
|
26852
26856
|
var import_runtime127 = require("@homebound/truss/runtime");
|
|
26853
26857
|
var import_jsx_runtime193 = require("react/jsx-runtime");
|
|
26858
|
+
function MaybeDeleteAction(props) {
|
|
26859
|
+
const {
|
|
26860
|
+
count = 0,
|
|
26861
|
+
onClick,
|
|
26862
|
+
...buttonProps
|
|
26863
|
+
} = props;
|
|
26864
|
+
if (!onClick) return null;
|
|
26865
|
+
return count > 1 ? /* @__PURE__ */ (0, import_jsx_runtime193.jsx)(BulkDeleteAction, { count, onClick, ...buttonProps }) : /* @__PURE__ */ (0, import_jsx_runtime193.jsx)(IconButton, { icon: "trash", label: "Delete", onClick, ...buttonProps });
|
|
26866
|
+
}
|
|
26867
|
+
function BulkDeleteAction(props) {
|
|
26868
|
+
const {
|
|
26869
|
+
count,
|
|
26870
|
+
...buttonProps
|
|
26871
|
+
} = props;
|
|
26872
|
+
const containerRef = (0, import_react136.useRef)(null);
|
|
26873
|
+
const contentRef = (0, import_react136.useRef)(null);
|
|
26874
|
+
const [overflows, setOverflows] = (0, import_react136.useState)(false);
|
|
26875
|
+
const onResize = () => {
|
|
26876
|
+
if (!containerRef.current || !contentRef.current) return;
|
|
26877
|
+
setOverflows(contentRef.current.offsetWidth > containerRef.current.clientWidth);
|
|
26878
|
+
};
|
|
26879
|
+
(0, import_utils41.useResizeObserver)({
|
|
26880
|
+
ref: containerRef,
|
|
26881
|
+
onResize
|
|
26882
|
+
});
|
|
26883
|
+
(0, import_utils41.useResizeObserver)({
|
|
26884
|
+
ref: contentRef,
|
|
26885
|
+
onResize
|
|
26886
|
+
});
|
|
26887
|
+
return (
|
|
26888
|
+
// Offset the Button's padding so the trash aligns with the footer inset.
|
|
26889
|
+
/* @__PURE__ */ (0, import_jsx_runtime193.jsxs)("div", { ref: containerRef, className: "relative fg1 mw0 ml_neg16px", children: [
|
|
26890
|
+
/* @__PURE__ */ (0, import_jsx_runtime193.jsx)("div", { "aria-hidden": true, className: "absolute top0 l_0 w100 oh vh pen", children: /* @__PURE__ */ (0, import_jsx_runtime193.jsx)("div", { ref: contentRef, className: "wmaxc", children: /* @__PURE__ */ (0, import_jsx_runtime193.jsx)(Button, { variant: "quaternary", icon: "trash", label: `Delete (${count})`, onClick: noop }) }) }),
|
|
26891
|
+
/* @__PURE__ */ (0, import_jsx_runtime193.jsx)(
|
|
26892
|
+
Button,
|
|
26893
|
+
{
|
|
26894
|
+
variant: "quaternary",
|
|
26895
|
+
icon: "trash",
|
|
26896
|
+
label: /* @__PURE__ */ (0, import_jsx_runtime193.jsxs)("span", { children: [
|
|
26897
|
+
/* @__PURE__ */ (0, import_jsx_runtime193.jsx)("span", { ...(0, import_runtime127.trussProps)({
|
|
26898
|
+
...overflows ? {
|
|
26899
|
+
position: "absolute",
|
|
26900
|
+
overflow: "oh",
|
|
26901
|
+
clip: "cli_inset_50",
|
|
26902
|
+
clipPath: "clp_none",
|
|
26903
|
+
border: "bd_0",
|
|
26904
|
+
height: "h_1px",
|
|
26905
|
+
margin: "m_neg1px",
|
|
26906
|
+
width: "w_1px",
|
|
26907
|
+
padding: "p_0",
|
|
26908
|
+
whiteSpace: "wsnw",
|
|
26909
|
+
opacity: "o0"
|
|
26910
|
+
} : {}
|
|
26911
|
+
}), children: "Delete" }),
|
|
26912
|
+
" (",
|
|
26913
|
+
count,
|
|
26914
|
+
")"
|
|
26915
|
+
] }),
|
|
26916
|
+
...buttonProps
|
|
26917
|
+
}
|
|
26918
|
+
)
|
|
26919
|
+
] })
|
|
26920
|
+
);
|
|
26921
|
+
}
|
|
26922
|
+
|
|
26923
|
+
// src/components/Layout/RightPaneLayout/RightPanePanel.tsx
|
|
26924
|
+
var import_runtime128 = require("@homebound/truss/runtime");
|
|
26925
|
+
var import_jsx_runtime194 = require("react/jsx-runtime");
|
|
26854
26926
|
function RightPanePanel(props) {
|
|
26855
26927
|
const {
|
|
26856
26928
|
title,
|
|
26857
26929
|
children,
|
|
26858
|
-
withClose = true
|
|
26930
|
+
withClose = true,
|
|
26931
|
+
primaryAction,
|
|
26932
|
+
secondaryAction,
|
|
26933
|
+
deleteAction
|
|
26859
26934
|
} = props;
|
|
26860
26935
|
const tid = useTestIds(props, "rightPanePanel");
|
|
26861
26936
|
const {
|
|
26862
26937
|
closeRightPane
|
|
26863
26938
|
} = useRightPaneActions();
|
|
26864
|
-
return /* @__PURE__ */ (0,
|
|
26865
|
-
/* @__PURE__ */ (0,
|
|
26939
|
+
return /* @__PURE__ */ (0, import_jsx_runtime194.jsxs)("div", { className: "relative df fdc h100", ...tid, children: [
|
|
26940
|
+
/* @__PURE__ */ (0, import_jsx_runtime194.jsxs)("div", { ...(0, import_runtime128.trussProps)({
|
|
26866
26941
|
display: "df",
|
|
26867
26942
|
alignItems: "aic",
|
|
26868
26943
|
justifyContent: "jcsb",
|
|
26869
26944
|
gap: "g_1",
|
|
26945
|
+
paddingLeft: "pl3",
|
|
26946
|
+
paddingRight: "pr3",
|
|
26870
26947
|
paddingTop: "pt2",
|
|
26871
26948
|
paddingBottom: "pb2",
|
|
26872
|
-
paddingRight: "pr2",
|
|
26873
|
-
paddingLeft: "pl2",
|
|
26874
26949
|
borderBottomStyle: "bbs_solid",
|
|
26875
26950
|
borderBottomWidth: "bbw_1px",
|
|
26876
26951
|
borderColor: ["bc_var", {
|
|
@@ -26878,31 +26953,52 @@ function RightPanePanel(props) {
|
|
|
26878
26953
|
}],
|
|
26879
26954
|
flexShrink: "fs0"
|
|
26880
26955
|
}), ...tid.header, children: [
|
|
26881
|
-
/* @__PURE__ */ (0,
|
|
26882
|
-
withClose && /* @__PURE__ */ (0,
|
|
26956
|
+
/* @__PURE__ */ (0, import_jsx_runtime194.jsx)("div", { className: "fw6 fz_16px lh_24px", children: title }),
|
|
26957
|
+
withClose && /* @__PURE__ */ (0, import_jsx_runtime194.jsx)(IconButton, { icon: "x", label: "Close", autoFocus: true, onClick: closeRightPane, ...tid.close })
|
|
26883
26958
|
] }),
|
|
26884
|
-
/* @__PURE__ */ (0,
|
|
26959
|
+
/* @__PURE__ */ (0, import_jsx_runtime194.jsx)("div", { className: "fg1 mh0 oya pt3 pb3 pr3 pl3", ...tid.body, children }),
|
|
26960
|
+
(deleteAction || secondaryAction || primaryAction) && /* @__PURE__ */ (0, import_jsx_runtime194.jsxs)("div", { ...(0, import_runtime128.trussProps)({
|
|
26961
|
+
display: "df",
|
|
26962
|
+
alignItems: "aic",
|
|
26963
|
+
gap: "g_2",
|
|
26964
|
+
paddingLeft: "pl3",
|
|
26965
|
+
paddingRight: "pr3",
|
|
26966
|
+
paddingTop: "pt2",
|
|
26967
|
+
paddingBottom: "pb2",
|
|
26968
|
+
borderTopStyle: "bts_solid",
|
|
26969
|
+
borderTopWidth: "btw_1px",
|
|
26970
|
+
borderColor: ["bc_var", {
|
|
26971
|
+
"--borderColor": "var(--b-surface-separator)"
|
|
26972
|
+
}],
|
|
26973
|
+
flexShrink: "fs0"
|
|
26974
|
+
}), ...tid.footer, children: [
|
|
26975
|
+
/* @__PURE__ */ (0, import_jsx_runtime194.jsx)(MaybeDeleteAction, { ...deleteAction, ...tid.delete }),
|
|
26976
|
+
/* @__PURE__ */ (0, import_jsx_runtime194.jsxs)("div", { className: "df aic g_1_5 fs0 mla", children: [
|
|
26977
|
+
secondaryAction && /* @__PURE__ */ (0, import_jsx_runtime194.jsx)(Button, { ...secondaryAction, variant: "secondary", ...tid.secondaryAction }),
|
|
26978
|
+
primaryAction && /* @__PURE__ */ (0, import_jsx_runtime194.jsx)(Button, { ...primaryAction, ...tid.primaryAction })
|
|
26979
|
+
] })
|
|
26980
|
+
] })
|
|
26885
26981
|
] });
|
|
26886
26982
|
}
|
|
26887
26983
|
|
|
26888
26984
|
// src/components/Layout/ScrollableFooter.tsx
|
|
26889
26985
|
var import_react_dom7 = require("react-dom");
|
|
26890
|
-
var
|
|
26986
|
+
var import_jsx_runtime195 = require("react/jsx-runtime");
|
|
26891
26987
|
function ScrollableFooter(props) {
|
|
26892
26988
|
const { children } = props;
|
|
26893
26989
|
const { footerEl } = useScrollableParent();
|
|
26894
26990
|
if (!footerEl) {
|
|
26895
|
-
return /* @__PURE__ */ (0,
|
|
26991
|
+
return /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(import_jsx_runtime195.Fragment, { children });
|
|
26896
26992
|
}
|
|
26897
|
-
return (0, import_react_dom7.createPortal)(/* @__PURE__ */ (0,
|
|
26993
|
+
return (0, import_react_dom7.createPortal)(/* @__PURE__ */ (0, import_jsx_runtime195.jsx)(import_jsx_runtime195.Fragment, { children }), footerEl);
|
|
26898
26994
|
}
|
|
26899
26995
|
|
|
26900
26996
|
// src/components/Layout/TableReviewLayout/TableReviewLayout.tsx
|
|
26901
26997
|
var import_framer_motion5 = require("framer-motion");
|
|
26902
|
-
var
|
|
26998
|
+
var import_react137 = require("react");
|
|
26903
26999
|
|
|
26904
27000
|
// src/components/Layout/TableReviewLayout/SidePanel.tsx
|
|
26905
|
-
var
|
|
27001
|
+
var import_jsx_runtime196 = require("react/jsx-runtime");
|
|
26906
27002
|
function SidePanel(props) {
|
|
26907
27003
|
const {
|
|
26908
27004
|
title,
|
|
@@ -26912,19 +27008,19 @@ function SidePanel(props) {
|
|
|
26912
27008
|
} = props;
|
|
26913
27009
|
const tid = useTestIds(props, "sidePanel");
|
|
26914
27010
|
const hasFooter = primaryAction || secondaryAction;
|
|
26915
|
-
return /* @__PURE__ */ (0,
|
|
26916
|
-
/* @__PURE__ */ (0,
|
|
26917
|
-
/* @__PURE__ */ (0,
|
|
26918
|
-
hasFooter && /* @__PURE__ */ (0,
|
|
26919
|
-
secondaryAction && /* @__PURE__ */ (0,
|
|
26920
|
-
primaryAction && /* @__PURE__ */ (0,
|
|
27011
|
+
return /* @__PURE__ */ (0, import_jsx_runtime196.jsxs)("div", { className: "h100 df fdc oh", ...tid, children: [
|
|
27012
|
+
/* @__PURE__ */ (0, import_jsx_runtime196.jsx)("div", { className: "pt3 pb3 pr3 pl3 fs0", ...tid.header, children: /* @__PURE__ */ (0, import_jsx_runtime196.jsx)("h2", { className: "fw6 fz_20px lh_28px mt0 mb0", ...tid.title, children: title }) }),
|
|
27013
|
+
/* @__PURE__ */ (0, import_jsx_runtime196.jsx)("div", { className: "fg1 oya mh0", ...tid.body, children: content2 }),
|
|
27014
|
+
hasFooter && /* @__PURE__ */ (0, import_jsx_runtime196.jsxs)("div", { className: "df g_2 jcfe pt3 pb3 pr3 pl3 fs0", ...tid.footer, children: [
|
|
27015
|
+
secondaryAction && /* @__PURE__ */ (0, import_jsx_runtime196.jsx)(Button, { ...secondaryAction, variant: "secondaryBlack" }),
|
|
27016
|
+
primaryAction && /* @__PURE__ */ (0, import_jsx_runtime196.jsx)(Button, { ...primaryAction })
|
|
26921
27017
|
] })
|
|
26922
27018
|
] });
|
|
26923
27019
|
}
|
|
26924
27020
|
|
|
26925
27021
|
// src/components/Layout/TableReviewLayout/TableReviewLayout.tsx
|
|
26926
|
-
var
|
|
26927
|
-
var
|
|
27022
|
+
var import_runtime129 = require("@homebound/truss/runtime");
|
|
27023
|
+
var import_jsx_runtime197 = require("react/jsx-runtime");
|
|
26928
27024
|
var defaultRightPaneWidth = 450;
|
|
26929
27025
|
function TableReviewLayout(props) {
|
|
26930
27026
|
const {
|
|
@@ -26939,8 +27035,8 @@ function TableReviewLayout(props) {
|
|
|
26939
27035
|
rightPaneWidth = defaultRightPaneWidth
|
|
26940
27036
|
} = props;
|
|
26941
27037
|
const tid = useTestIds(props, "tableReviewLayout");
|
|
26942
|
-
const [isPanelVisible, setIsPanelVisible] = (0,
|
|
26943
|
-
(0,
|
|
27038
|
+
const [isPanelVisible, setIsPanelVisible] = (0, import_react137.useState)(!!panelContent);
|
|
27039
|
+
(0, import_react137.useEffect)(() => {
|
|
26944
27040
|
setIsPanelVisible(!!panelContent);
|
|
26945
27041
|
}, [panelContent]);
|
|
26946
27042
|
function handleClosePanel() {
|
|
@@ -26950,29 +27046,29 @@ function TableReviewLayout(props) {
|
|
|
26950
27046
|
let tableContent;
|
|
26951
27047
|
if (isGridTableProps(tableProps)) {
|
|
26952
27048
|
if (emptyState && !tableProps.rows.some((r) => r.kind !== "header")) {
|
|
26953
|
-
tableContent = /* @__PURE__ */ (0,
|
|
27049
|
+
tableContent = /* @__PURE__ */ (0, import_jsx_runtime197.jsx)("div", { className: "h100 df fdc aic jcc", children: emptyState });
|
|
26954
27050
|
} else {
|
|
26955
|
-
tableContent = /* @__PURE__ */ (0,
|
|
27051
|
+
tableContent = /* @__PURE__ */ (0, import_jsx_runtime197.jsx)(GridTable, { ...tableProps, style: {
|
|
26956
27052
|
allWhite: true,
|
|
26957
27053
|
bordered: true
|
|
26958
27054
|
}, stickyHeader: true });
|
|
26959
27055
|
}
|
|
26960
27056
|
} else if (emptyState) {
|
|
26961
|
-
tableContent = /* @__PURE__ */ (0,
|
|
27057
|
+
tableContent = /* @__PURE__ */ (0, import_jsx_runtime197.jsx)("div", { className: "h100 df fdc aic jcc", children: emptyState });
|
|
26962
27058
|
} else {
|
|
26963
|
-
tableContent = /* @__PURE__ */ (0,
|
|
27059
|
+
tableContent = /* @__PURE__ */ (0, import_jsx_runtime197.jsx)(QueryTable, { ...tableProps, style: {
|
|
26964
27060
|
allWhite: true,
|
|
26965
27061
|
bordered: true
|
|
26966
27062
|
}, stickyHeader: true });
|
|
26967
27063
|
}
|
|
26968
|
-
return /* @__PURE__ */ (0,
|
|
27064
|
+
return /* @__PURE__ */ (0, import_jsx_runtime197.jsxs)("div", { ...(0, import_runtime129.trussProps)({
|
|
26969
27065
|
position: "fixed",
|
|
26970
27066
|
top: "top0",
|
|
26971
27067
|
bottom: "bot_0",
|
|
26972
27068
|
left: "l_0",
|
|
26973
27069
|
right: "r_0",
|
|
26974
27070
|
zIndex: ["z_var", {
|
|
26975
|
-
"--zIndex": (0,
|
|
27071
|
+
"--zIndex": (0, import_runtime129.maybeCssVar)(zIndices.pageOverlay)
|
|
26976
27072
|
}],
|
|
26977
27073
|
backgroundColor: ["bgColor_var", {
|
|
26978
27074
|
"--backgroundColor": "var(--b-surface)"
|
|
@@ -26980,16 +27076,16 @@ function TableReviewLayout(props) {
|
|
|
26980
27076
|
display: "df",
|
|
26981
27077
|
flexDirection: "fdc"
|
|
26982
27078
|
}), ...tid, children: [
|
|
26983
|
-
/* @__PURE__ */ (0,
|
|
26984
|
-
/* @__PURE__ */ (0,
|
|
26985
|
-
/* @__PURE__ */ (0,
|
|
26986
|
-
/* @__PURE__ */ (0,
|
|
26987
|
-
breadCrumb && /* @__PURE__ */ (0,
|
|
26988
|
-
/* @__PURE__ */ (0,
|
|
27079
|
+
/* @__PURE__ */ (0, import_jsx_runtime197.jsxs)("header", { className: "pl3 pr3 pt3 pb2 fs0", ...tid.header, children: [
|
|
27080
|
+
/* @__PURE__ */ (0, import_jsx_runtime197.jsx)(Toast, {}),
|
|
27081
|
+
/* @__PURE__ */ (0, import_jsx_runtime197.jsxs)("div", { className: "df jcsb aic", children: [
|
|
27082
|
+
/* @__PURE__ */ (0, import_jsx_runtime197.jsxs)("div", { children: [
|
|
27083
|
+
breadCrumb && /* @__PURE__ */ (0, import_jsx_runtime197.jsx)(PageHeaderBreadcrumbs, { breadcrumb: breadCrumb }),
|
|
27084
|
+
/* @__PURE__ */ (0, import_jsx_runtime197.jsx)("h1", { className: "fw6 fz_24px lh_32px mt1 mb0", ...tid.pageTitle, children: pageTitle })
|
|
26989
27085
|
] }),
|
|
26990
|
-
/* @__PURE__ */ (0,
|
|
27086
|
+
/* @__PURE__ */ (0, import_jsx_runtime197.jsx)(Button, { label: "Close", onClick: closeAction, ...tid.closeButton })
|
|
26991
27087
|
] }),
|
|
26992
|
-
/* @__PURE__ */ (0,
|
|
27088
|
+
/* @__PURE__ */ (0, import_jsx_runtime197.jsx)("div", { ...(0, import_runtime129.trussProps)({
|
|
26993
27089
|
fontWeight: "fw4",
|
|
26994
27090
|
fontSize: "fz_14px",
|
|
26995
27091
|
lineHeight: "lh_20px",
|
|
@@ -26999,8 +27095,8 @@ function TableReviewLayout(props) {
|
|
|
26999
27095
|
marginTop: "mt2"
|
|
27000
27096
|
}), ...tid.description, children: description })
|
|
27001
27097
|
] }),
|
|
27002
|
-
/* @__PURE__ */ (0,
|
|
27003
|
-
/* @__PURE__ */ (0,
|
|
27098
|
+
/* @__PURE__ */ (0, import_jsx_runtime197.jsxs)("div", { className: "fg1 df mh0", ...tid.content, children: [
|
|
27099
|
+
/* @__PURE__ */ (0, import_jsx_runtime197.jsx)("div", { ...(0, import_runtime129.trussProps)({
|
|
27004
27100
|
...{
|
|
27005
27101
|
flexGrow: "fg1",
|
|
27006
27102
|
overflowY: "oya",
|
|
@@ -27013,7 +27109,7 @@ function TableReviewLayout(props) {
|
|
|
27013
27109
|
} : {}
|
|
27014
27110
|
}
|
|
27015
27111
|
}), children: tableContent }),
|
|
27016
|
-
/* @__PURE__ */ (0,
|
|
27112
|
+
/* @__PURE__ */ (0, import_jsx_runtime197.jsx)(import_framer_motion5.AnimatePresence, { children: isPanelVisible && panelContent && /* @__PURE__ */ (0, import_jsx_runtime197.jsxs)(import_framer_motion5.motion.div, { initial: {
|
|
27017
27113
|
width: 0
|
|
27018
27114
|
}, animate: {
|
|
27019
27115
|
width: rightPaneWidth
|
|
@@ -27023,9 +27119,9 @@ function TableReviewLayout(props) {
|
|
|
27023
27119
|
ease: "linear",
|
|
27024
27120
|
duration: 0.2
|
|
27025
27121
|
}, className: "df fdc fs0 relative", children: [
|
|
27026
|
-
/* @__PURE__ */ (0,
|
|
27027
|
-
/* @__PURE__ */ (0,
|
|
27028
|
-
/* @__PURE__ */ (0,
|
|
27122
|
+
/* @__PURE__ */ (0, import_jsx_runtime197.jsxs)("div", { className: "absolute tp_neg32px df fdc aic l_neg24px z1", children: [
|
|
27123
|
+
/* @__PURE__ */ (0, import_jsx_runtime197.jsx)(IconButton, { bgColor: "--b-surface" /* Surface */, variant: "circle", icon: "x", inc: 3.5, onClick: handleClosePanel, ...tid.closePanelButton }),
|
|
27124
|
+
/* @__PURE__ */ (0, import_jsx_runtime197.jsx)("div", { ...(0, import_runtime129.trussProps)({
|
|
27029
27125
|
width: "w_1px",
|
|
27030
27126
|
backgroundColor: ["bgColor_var", {
|
|
27031
27127
|
"--backgroundColor": "var(--b-field-border-default)"
|
|
@@ -27033,15 +27129,15 @@ function TableReviewLayout(props) {
|
|
|
27033
27129
|
height: "vh100"
|
|
27034
27130
|
}) })
|
|
27035
27131
|
] }),
|
|
27036
|
-
/* @__PURE__ */ (0,
|
|
27132
|
+
/* @__PURE__ */ (0, import_jsx_runtime197.jsx)("div", { className: "fg1 oh mh0", children: /* @__PURE__ */ (0, import_jsx_runtime197.jsx)(SidePanel, { ...panelContent }) })
|
|
27037
27133
|
] }, "panel") })
|
|
27038
27134
|
] })
|
|
27039
27135
|
] });
|
|
27040
27136
|
}
|
|
27041
27137
|
|
|
27042
27138
|
// src/components/Logos/BeamLogo.tsx
|
|
27043
|
-
var
|
|
27044
|
-
var
|
|
27139
|
+
var import_runtime130 = require("@homebound/truss/runtime");
|
|
27140
|
+
var import_jsx_runtime198 = require("react/jsx-runtime");
|
|
27045
27141
|
var __maybeInc23 = (inc) => {
|
|
27046
27142
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
27047
27143
|
};
|
|
@@ -27051,31 +27147,31 @@ function BeamLogo(props) {
|
|
|
27051
27147
|
width: width2 = "auto",
|
|
27052
27148
|
height = "auto"
|
|
27053
27149
|
} = props;
|
|
27054
|
-
return /* @__PURE__ */ (0,
|
|
27150
|
+
return /* @__PURE__ */ (0, import_jsx_runtime198.jsxs)("svg", { viewBox: "0 0 500 500", xmlns: "http://www.w3.org/2000/svg", ...(0, import_runtime130.trussProps)({
|
|
27055
27151
|
fill: ["fill_var", {
|
|
27056
|
-
"--fill": (0,
|
|
27152
|
+
"--fill": (0, import_runtime130.maybeCssVar)(fill)
|
|
27057
27153
|
}],
|
|
27058
27154
|
width: ["w_var", {
|
|
27059
|
-
"--width": (0,
|
|
27155
|
+
"--width": (0, import_runtime130.maybeCssVar)(__maybeInc23(width2))
|
|
27060
27156
|
}],
|
|
27061
27157
|
height: ["h_var", {
|
|
27062
|
-
"--height": (0,
|
|
27158
|
+
"--height": (0, import_runtime130.maybeCssVar)(__maybeInc23(height))
|
|
27063
27159
|
}]
|
|
27064
27160
|
}), children: [
|
|
27065
|
-
/* @__PURE__ */ (0,
|
|
27066
|
-
/* @__PURE__ */ (0,
|
|
27067
|
-
/* @__PURE__ */ (0,
|
|
27068
|
-
/* @__PURE__ */ (0,
|
|
27069
|
-
/* @__PURE__ */ (0,
|
|
27070
|
-
/* @__PURE__ */ (0,
|
|
27071
|
-
/* @__PURE__ */ (0,
|
|
27072
|
-
/* @__PURE__ */ (0,
|
|
27161
|
+
/* @__PURE__ */ (0, import_jsx_runtime198.jsx)("rect", { x: "10", y: "90", width: "32", height: "320" }),
|
|
27162
|
+
/* @__PURE__ */ (0, import_jsx_runtime198.jsx)("rect", { x: "122", y: "172", width: "32", height: "158" }),
|
|
27163
|
+
/* @__PURE__ */ (0, import_jsx_runtime198.jsx)("rect", { x: "346", y: "172", width: "32", height: "158" }),
|
|
27164
|
+
/* @__PURE__ */ (0, import_jsx_runtime198.jsx)("rect", { x: "458", y: "90", width: "32", height: "320" }),
|
|
27165
|
+
/* @__PURE__ */ (0, import_jsx_runtime198.jsx)("rect", { x: "10", y: "90", width: "480", height: "32" }),
|
|
27166
|
+
/* @__PURE__ */ (0, import_jsx_runtime198.jsx)("rect", { x: "10", y: "378", width: "480", height: "32" }),
|
|
27167
|
+
/* @__PURE__ */ (0, import_jsx_runtime198.jsx)("rect", { x: "10", y: "172", width: "480", height: "32" }),
|
|
27168
|
+
/* @__PURE__ */ (0, import_jsx_runtime198.jsx)("rect", { x: "10", y: "298", width: "480", height: "32" })
|
|
27073
27169
|
] });
|
|
27074
27170
|
}
|
|
27075
27171
|
|
|
27076
27172
|
// src/components/Logos/HomeboundLogo.tsx
|
|
27077
|
-
var
|
|
27078
|
-
var
|
|
27173
|
+
var import_runtime131 = require("@homebound/truss/runtime");
|
|
27174
|
+
var import_jsx_runtime199 = require("react/jsx-runtime");
|
|
27079
27175
|
var __maybeInc24 = (inc) => {
|
|
27080
27176
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
27081
27177
|
};
|
|
@@ -27085,51 +27181,51 @@ function HomeboundLogo(props) {
|
|
|
27085
27181
|
width: width2 = "auto",
|
|
27086
27182
|
height = "auto"
|
|
27087
27183
|
} = props;
|
|
27088
|
-
return /* @__PURE__ */ (0,
|
|
27184
|
+
return /* @__PURE__ */ (0, import_jsx_runtime199.jsx)("svg", { viewBox: "0 0 158.1 97.6", xmlns: "http://www.w3.org/2000/svg", ...(0, import_runtime131.trussProps)({
|
|
27089
27185
|
fill: ["fill_var", {
|
|
27090
|
-
"--fill": (0,
|
|
27186
|
+
"--fill": (0, import_runtime131.maybeCssVar)(fill)
|
|
27091
27187
|
}],
|
|
27092
27188
|
width: ["w_var", {
|
|
27093
|
-
"--width": (0,
|
|
27189
|
+
"--width": (0, import_runtime131.maybeCssVar)(__maybeInc24(width2))
|
|
27094
27190
|
}],
|
|
27095
27191
|
height: ["h_var", {
|
|
27096
|
-
"--height": (0,
|
|
27192
|
+
"--height": (0, import_runtime131.maybeCssVar)(__maybeInc24(height))
|
|
27097
27193
|
}]
|
|
27098
|
-
}), children: /* @__PURE__ */ (0,
|
|
27194
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime199.jsx)("path", { d: "M158.1,97.6H0.2L0,39.7L76.8,0l68,38.7l-3.1,5.3l-65-37L6.2,43.4l0.2,48h151.7V97.6z" }) });
|
|
27099
27195
|
}
|
|
27100
27196
|
|
|
27101
27197
|
// src/components/MaxLines.tsx
|
|
27102
|
-
var
|
|
27103
|
-
var
|
|
27104
|
-
var
|
|
27105
|
-
var
|
|
27198
|
+
var import_utils42 = require("@react-aria/utils");
|
|
27199
|
+
var import_react138 = require("react");
|
|
27200
|
+
var import_runtime132 = require("@homebound/truss/runtime");
|
|
27201
|
+
var import_jsx_runtime200 = require("react/jsx-runtime");
|
|
27106
27202
|
function MaxLines({
|
|
27107
27203
|
maxLines,
|
|
27108
27204
|
children
|
|
27109
27205
|
}) {
|
|
27110
|
-
const elRef = (0,
|
|
27111
|
-
const [hasMore, setHasMore] = (0,
|
|
27112
|
-
const [expanded, setExpanded] = (0,
|
|
27113
|
-
(0,
|
|
27206
|
+
const elRef = (0, import_react138.useRef)(null);
|
|
27207
|
+
const [hasMore, setHasMore] = (0, import_react138.useState)(false);
|
|
27208
|
+
const [expanded, setExpanded] = (0, import_react138.useState)(false);
|
|
27209
|
+
(0, import_utils42.useLayoutEffect)(() => {
|
|
27114
27210
|
if (!elRef.current) return;
|
|
27115
27211
|
setHasMore(elRef.current.scrollHeight > elRef.current.clientHeight);
|
|
27116
27212
|
}, []);
|
|
27117
|
-
(0,
|
|
27213
|
+
(0, import_react138.useEffect)(() => {
|
|
27118
27214
|
setExpanded(false);
|
|
27119
27215
|
}, [children]);
|
|
27120
|
-
const onResize = (0,
|
|
27216
|
+
const onResize = (0, import_react138.useCallback)(() => {
|
|
27121
27217
|
if (!elRef.current) return;
|
|
27122
27218
|
!expanded && setHasMore(elRef.current.scrollHeight > elRef.current.clientHeight);
|
|
27123
27219
|
}, [expanded]);
|
|
27124
|
-
(0,
|
|
27220
|
+
(0, import_utils42.useResizeObserver)({
|
|
27125
27221
|
ref: elRef,
|
|
27126
27222
|
onResize
|
|
27127
27223
|
});
|
|
27128
|
-
return /* @__PURE__ */ (0,
|
|
27129
|
-
/* @__PURE__ */ (0,
|
|
27224
|
+
return /* @__PURE__ */ (0, import_jsx_runtime200.jsxs)("div", { children: [
|
|
27225
|
+
/* @__PURE__ */ (0, import_jsx_runtime200.jsx)("div", { ref: elRef, ...(0, import_runtime132.trussProps)({
|
|
27130
27226
|
...!expanded ? {
|
|
27131
27227
|
WebkitLineClamp: ["lineClamp_var", {
|
|
27132
|
-
"--WebkitLineClamp": (0,
|
|
27228
|
+
"--WebkitLineClamp": (0, import_runtime132.maybeCssVar)(maxLines)
|
|
27133
27229
|
}],
|
|
27134
27230
|
overflow: "oh",
|
|
27135
27231
|
display: "d_negwebkit_box",
|
|
@@ -27137,13 +27233,13 @@ function MaxLines({
|
|
|
27137
27233
|
textOverflow: "to_ellipsis"
|
|
27138
27234
|
} : {}
|
|
27139
27235
|
}), children }),
|
|
27140
|
-
hasMore && /* @__PURE__ */ (0,
|
|
27236
|
+
hasMore && /* @__PURE__ */ (0, import_jsx_runtime200.jsx)("button", { className: "db fw4 fz_14px lh_20px", onClick: () => setExpanded((prev) => !prev), children: expanded ? "Show Less" : "Show More" })
|
|
27141
27237
|
] });
|
|
27142
27238
|
}
|
|
27143
27239
|
|
|
27144
27240
|
// src/components/Pagination.tsx
|
|
27145
|
-
var
|
|
27146
|
-
var
|
|
27241
|
+
var import_runtime133 = require("@homebound/truss/runtime");
|
|
27242
|
+
var import_jsx_runtime201 = require("react/jsx-runtime");
|
|
27147
27243
|
var defaultPage = {
|
|
27148
27244
|
offset: 0,
|
|
27149
27245
|
limit: 100
|
|
@@ -27175,7 +27271,7 @@ function Pagination(props) {
|
|
|
27175
27271
|
}
|
|
27176
27272
|
}
|
|
27177
27273
|
const tid = useTestIds(props, "pagination");
|
|
27178
|
-
return /* @__PURE__ */ (0,
|
|
27274
|
+
return /* @__PURE__ */ (0, import_jsx_runtime201.jsxs)("div", { ...(0, import_runtime133.trussProps)({
|
|
27179
27275
|
display: "df",
|
|
27180
27276
|
borderColor: ["bc_var", {
|
|
27181
27277
|
"--borderColor": "var(--b-surface-separator)"
|
|
@@ -27192,24 +27288,24 @@ function Pagination(props) {
|
|
|
27192
27288
|
paddingRight: "pr2",
|
|
27193
27289
|
paddingTop: "pt2"
|
|
27194
27290
|
}), ...tid, children: [
|
|
27195
|
-
/* @__PURE__ */ (0,
|
|
27196
|
-
/* @__PURE__ */ (0,
|
|
27291
|
+
/* @__PURE__ */ (0, import_jsx_runtime201.jsx)("div", { className: "df mta mba mr2", ...tid.pageSizeLabel, children: "Page size:" }),
|
|
27292
|
+
/* @__PURE__ */ (0, import_jsx_runtime201.jsx)("div", { className: "w_78px", children: /* @__PURE__ */ (0, import_jsx_runtime201.jsx)(SelectField, { compact: true, label: "Page Size", labelStyle: "hidden", options: pageOptions, value: pageSize, onSelect: (val) => set({
|
|
27197
27293
|
pageNumber: 1,
|
|
27198
27294
|
pageSize: val
|
|
27199
27295
|
}), autoSort: false, ...tid.pageSize }) }),
|
|
27200
|
-
/* @__PURE__ */ (0,
|
|
27201
|
-
/* @__PURE__ */ (0,
|
|
27296
|
+
/* @__PURE__ */ (0, import_jsx_runtime201.jsxs)("div", { className: "mla mta mba df", children: [
|
|
27297
|
+
/* @__PURE__ */ (0, import_jsx_runtime201.jsxs)("div", { className: "df mta mba mr2", ...tid.pageInfoLabel, children: [
|
|
27202
27298
|
first,
|
|
27203
27299
|
" ",
|
|
27204
27300
|
showLast ? `- ${last}` : "",
|
|
27205
27301
|
" of ",
|
|
27206
27302
|
totalCount
|
|
27207
27303
|
] }),
|
|
27208
|
-
/* @__PURE__ */ (0,
|
|
27304
|
+
/* @__PURE__ */ (0, import_jsx_runtime201.jsx)(IconButton, { icon: "chevronLeft", color: hasPrevPage ? "--b-text-link-default" /* TextLinkDefault */ : "--b-surface-separator" /* SurfaceSeparator */, onClick: () => set({
|
|
27209
27305
|
pageNumber: pageNumber - 1,
|
|
27210
27306
|
pageSize
|
|
27211
27307
|
}), disabled: !hasPrevPage, ...tid.previousIcon }),
|
|
27212
|
-
/* @__PURE__ */ (0,
|
|
27308
|
+
/* @__PURE__ */ (0, import_jsx_runtime201.jsx)(IconButton, { icon: "chevronRight", color: hasNextPage ? "--b-text-link-default" /* TextLinkDefault */ : "--b-surface-separator" /* SurfaceSeparator */, onClick: () => set({
|
|
27213
27309
|
pageNumber: pageNumber + 1,
|
|
27214
27310
|
pageSize
|
|
27215
27311
|
}), disabled: !hasNextPage, ...tid.nextIcon })
|
|
@@ -27232,8 +27328,8 @@ function toPageNumberSize(page) {
|
|
|
27232
27328
|
|
|
27233
27329
|
// src/components/Pills/SelectionSummaryPill/SelectionSummaryPill.tsx
|
|
27234
27330
|
var import_react_aria60 = require("react-aria");
|
|
27235
|
-
var
|
|
27236
|
-
var
|
|
27331
|
+
var import_runtime134 = require("@homebound/truss/runtime");
|
|
27332
|
+
var import_jsx_runtime202 = require("react/jsx-runtime");
|
|
27237
27333
|
function SelectionSummaryPill(props) {
|
|
27238
27334
|
const {
|
|
27239
27335
|
text,
|
|
@@ -27252,11 +27348,11 @@ function SelectionSummaryPill(props) {
|
|
|
27252
27348
|
return maybeTooltip({
|
|
27253
27349
|
title: resolveTooltip(disabled),
|
|
27254
27350
|
placement: "top",
|
|
27255
|
-
children: /* @__PURE__ */ (0,
|
|
27351
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime202.jsxs)("button", { type: "button", disabled: !!disabled, onClick, "aria-label": `Clear ${text}`, ...(0, import_runtime134.trussProps)(pillStyles2(!!disabled, isHovered)), ...hoverProps, ...tid, children: [
|
|
27256
27352
|
text,
|
|
27257
|
-
/* @__PURE__ */ (0,
|
|
27353
|
+
/* @__PURE__ */ (0, import_jsx_runtime202.jsx)("span", { ...(0, import_runtime134.trussProps)({
|
|
27258
27354
|
color: ["color_var", {
|
|
27259
|
-
"--color": (0,
|
|
27355
|
+
"--color": (0, import_runtime134.maybeCssVar)(disabled ? "--b-on-surface-active-disabled" /* OnSurfaceActiveDisabled */ : "--b-on-surface-active" /* OnSurfaceActive */)
|
|
27260
27356
|
}]
|
|
27261
27357
|
}), ...tid.clear, children: "Clear" })
|
|
27262
27358
|
] })
|
|
@@ -27282,10 +27378,10 @@ function pillStyles2(disabled, hovered) {
|
|
|
27282
27378
|
"--borderColor": "var(--b-surface-active-border)"
|
|
27283
27379
|
}],
|
|
27284
27380
|
color: ["color_var", {
|
|
27285
|
-
"--color": (0,
|
|
27381
|
+
"--color": (0, import_runtime134.maybeCssVar)(disabled ? "--b-on-surface-active-disabled" /* OnSurfaceActiveDisabled */ : "rgba(36, 36, 36, 1)" /* Gray900 */)
|
|
27286
27382
|
}],
|
|
27287
27383
|
backgroundColor: ["bgColor_var", {
|
|
27288
|
-
"--backgroundColor": (0,
|
|
27384
|
+
"--backgroundColor": (0, import_runtime134.maybeCssVar)(hovered ? "--b-surface-active-hover" /* SurfaceActiveHover */ : "--b-surface-active" /* SurfaceActive */)
|
|
27289
27385
|
}],
|
|
27290
27386
|
...disabled ? {
|
|
27291
27387
|
cursor: "cur_not_allowed"
|
|
@@ -27294,10 +27390,10 @@ function pillStyles2(disabled, hovered) {
|
|
|
27294
27390
|
}
|
|
27295
27391
|
|
|
27296
27392
|
// src/components/ScrollShadows.tsx
|
|
27297
|
-
var
|
|
27298
|
-
var
|
|
27299
|
-
var
|
|
27300
|
-
var
|
|
27393
|
+
var import_utils43 = require("@react-aria/utils");
|
|
27394
|
+
var import_react139 = require("react");
|
|
27395
|
+
var import_runtime135 = require("@homebound/truss/runtime");
|
|
27396
|
+
var import_jsx_runtime203 = require("react/jsx-runtime");
|
|
27301
27397
|
function ScrollShadows(props) {
|
|
27302
27398
|
const {
|
|
27303
27399
|
children,
|
|
@@ -27313,15 +27409,15 @@ function ScrollShadows(props) {
|
|
|
27313
27409
|
if (!bgColor.includes("rgba")) {
|
|
27314
27410
|
throw new Error("ScrollShadows: bgColor prop must be in the format 'rgba(255, 255, 255, 1)'");
|
|
27315
27411
|
}
|
|
27316
|
-
const [showStartShadow, setShowStartShadow] = (0,
|
|
27317
|
-
const [showEndShadow, setShowEndShadow] = (0,
|
|
27318
|
-
const scrollRef = (0,
|
|
27319
|
-
const [startShadowStyles, endShadowStyles] = (0,
|
|
27412
|
+
const [showStartShadow, setShowStartShadow] = (0, import_react139.useState)(false);
|
|
27413
|
+
const [showEndShadow, setShowEndShadow] = (0, import_react139.useState)(false);
|
|
27414
|
+
const scrollRef = (0, import_react139.useRef)(null);
|
|
27415
|
+
const [startShadowStyles, endShadowStyles] = (0, import_react139.useMemo)(() => {
|
|
27320
27416
|
const transparentBgColor = bgColor.replace(/,1\)$/, ",0)");
|
|
27321
27417
|
const commonStyles = {
|
|
27322
27418
|
position: "absolute",
|
|
27323
27419
|
zIndex: ["z_var", {
|
|
27324
|
-
"--zIndex": (0,
|
|
27420
|
+
"--zIndex": (0, import_runtime135.maybeCssVar)(zIndices.scrollShadow)
|
|
27325
27421
|
}],
|
|
27326
27422
|
pointerEvents: "pen"
|
|
27327
27423
|
};
|
|
@@ -27354,7 +27450,7 @@ function ScrollShadows(props) {
|
|
|
27354
27450
|
...startShadowStyles2,
|
|
27355
27451
|
...{
|
|
27356
27452
|
background: ["background_var", {
|
|
27357
|
-
"--background": (0,
|
|
27453
|
+
"--background": (0, import_runtime135.maybeCssVar)(startGradient)
|
|
27358
27454
|
}]
|
|
27359
27455
|
}
|
|
27360
27456
|
}, {
|
|
@@ -27362,12 +27458,12 @@ function ScrollShadows(props) {
|
|
|
27362
27458
|
...endShadowStyles2,
|
|
27363
27459
|
...{
|
|
27364
27460
|
background: ["background_var", {
|
|
27365
|
-
"--background": (0,
|
|
27461
|
+
"--background": (0, import_runtime135.maybeCssVar)(endGradient)
|
|
27366
27462
|
}]
|
|
27367
27463
|
}
|
|
27368
27464
|
}];
|
|
27369
27465
|
}, [horizontal, bgColor]);
|
|
27370
|
-
const updateScrollProps = (0,
|
|
27466
|
+
const updateScrollProps = (0, import_react139.useCallback)((el) => {
|
|
27371
27467
|
const {
|
|
27372
27468
|
scrollTop,
|
|
27373
27469
|
scrollHeight,
|
|
@@ -27382,15 +27478,15 @@ function ScrollShadows(props) {
|
|
|
27382
27478
|
setShowStartShadow(start > 0);
|
|
27383
27479
|
setShowEndShadow(start + boxSize < end);
|
|
27384
27480
|
}, [horizontal]);
|
|
27385
|
-
const onResize = (0,
|
|
27386
|
-
(0,
|
|
27481
|
+
const onResize = (0, import_react139.useCallback)(() => scrollRef.current && updateScrollProps(scrollRef.current), [updateScrollProps]);
|
|
27482
|
+
(0, import_utils43.useResizeObserver)({
|
|
27387
27483
|
ref: scrollRef,
|
|
27388
27484
|
onResize
|
|
27389
27485
|
});
|
|
27390
|
-
return /* @__PURE__ */ (0,
|
|
27486
|
+
return /* @__PURE__ */ (0, import_jsx_runtime203.jsxs)("div", { ...(0, import_runtime135.trussProps)({
|
|
27391
27487
|
display: "df",
|
|
27392
27488
|
flexDirection: ["fd_var", {
|
|
27393
|
-
"--flexDirection": (0,
|
|
27489
|
+
"--flexDirection": (0, import_runtime135.maybeCssVar)(!horizontal ? "column" : "row")
|
|
27394
27490
|
}],
|
|
27395
27491
|
position: "relative",
|
|
27396
27492
|
overflow: "oh",
|
|
@@ -27403,23 +27499,23 @@ function ScrollShadows(props) {
|
|
|
27403
27499
|
width: width2
|
|
27404
27500
|
}
|
|
27405
27501
|
}), ...tid, children: [
|
|
27406
|
-
/* @__PURE__ */ (0,
|
|
27502
|
+
/* @__PURE__ */ (0, import_jsx_runtime203.jsx)("div", { ...(0, import_runtime135.trussProps)({
|
|
27407
27503
|
...startShadowStyles,
|
|
27408
27504
|
...{
|
|
27409
27505
|
opacity: ["o_var", {
|
|
27410
|
-
"--opacity": (0,
|
|
27506
|
+
"--opacity": (0, import_runtime135.maybeCssVar)(showStartShadow ? 1 : 0)
|
|
27411
27507
|
}]
|
|
27412
27508
|
}
|
|
27413
27509
|
}), "data-chromatic": "ignore" }),
|
|
27414
|
-
/* @__PURE__ */ (0,
|
|
27510
|
+
/* @__PURE__ */ (0, import_jsx_runtime203.jsx)("div", { ...(0, import_runtime135.trussProps)({
|
|
27415
27511
|
...endShadowStyles,
|
|
27416
27512
|
...{
|
|
27417
27513
|
opacity: ["o_var", {
|
|
27418
|
-
"--opacity": (0,
|
|
27514
|
+
"--opacity": (0, import_runtime135.maybeCssVar)(showEndShadow ? 1 : 0)
|
|
27419
27515
|
}]
|
|
27420
27516
|
}
|
|
27421
27517
|
}), "data-chromatic": "ignore" }),
|
|
27422
|
-
/* @__PURE__ */ (0,
|
|
27518
|
+
/* @__PURE__ */ (0, import_jsx_runtime203.jsx)("div", { ...(0, import_runtime135.trussProps)({
|
|
27423
27519
|
...xss,
|
|
27424
27520
|
...{
|
|
27425
27521
|
overflow: "oa",
|
|
@@ -27434,15 +27530,15 @@ function ScrollShadows(props) {
|
|
|
27434
27530
|
var import_change_case8 = require("change-case");
|
|
27435
27531
|
|
|
27436
27532
|
// src/components/AppNav/AppNavGroup.tsx
|
|
27437
|
-
var
|
|
27533
|
+
var import_utils44 = require("@react-aria/utils");
|
|
27438
27534
|
var import_change_case7 = require("change-case");
|
|
27439
|
-
var
|
|
27535
|
+
var import_react142 = require("react");
|
|
27440
27536
|
|
|
27441
27537
|
// src/components/AppNav/AppNavGroupTrigger.tsx
|
|
27442
|
-
var
|
|
27538
|
+
var import_react140 = require("react");
|
|
27443
27539
|
var import_react_aria61 = require("react-aria");
|
|
27444
|
-
var
|
|
27445
|
-
var
|
|
27540
|
+
var import_runtime136 = require("@homebound/truss/runtime");
|
|
27541
|
+
var import_jsx_runtime204 = require("react/jsx-runtime");
|
|
27446
27542
|
function AppNavGroupTrigger(props) {
|
|
27447
27543
|
const {
|
|
27448
27544
|
label,
|
|
@@ -27452,7 +27548,7 @@ function AppNavGroupTrigger(props) {
|
|
|
27452
27548
|
active = false
|
|
27453
27549
|
} = props;
|
|
27454
27550
|
const tid = useTestIds(props, "trigger");
|
|
27455
|
-
const ref = (0,
|
|
27551
|
+
const ref = (0, import_react140.useRef)(null);
|
|
27456
27552
|
const {
|
|
27457
27553
|
buttonProps,
|
|
27458
27554
|
isPressed
|
|
@@ -27473,12 +27569,12 @@ function AppNavGroupTrigger(props) {
|
|
|
27473
27569
|
focusRingStyles: focusRingStyles2,
|
|
27474
27570
|
hoverStyles: hoverStyles4,
|
|
27475
27571
|
pressedStyles: pressedStyles2
|
|
27476
|
-
} = (0,
|
|
27477
|
-
return /* @__PURE__ */ (0,
|
|
27572
|
+
} = (0, import_react140.useMemo)(() => getNavLinkStyles("side"), []);
|
|
27573
|
+
return /* @__PURE__ */ (0, import_jsx_runtime204.jsxs)("button", { type: "button", ...(0, import_react_aria61.mergeProps)(buttonProps, focusProps, hoverProps, tid.trigger, {
|
|
27478
27574
|
ref,
|
|
27479
27575
|
"aria-expanded": expanded,
|
|
27480
27576
|
"aria-controls": navGroupId,
|
|
27481
|
-
...(0,
|
|
27577
|
+
...(0, import_runtime136.mergeProps)(navLink, void 0, {
|
|
27482
27578
|
...baseStyles4,
|
|
27483
27579
|
...isFocusVisible && focusRingStyles2,
|
|
27484
27580
|
...isHovered && hoverStyles4,
|
|
@@ -27492,7 +27588,7 @@ function AppNavGroupTrigger(props) {
|
|
|
27492
27588
|
})
|
|
27493
27589
|
}), children: [
|
|
27494
27590
|
label,
|
|
27495
|
-
/* @__PURE__ */ (0,
|
|
27591
|
+
/* @__PURE__ */ (0, import_jsx_runtime204.jsx)("div", { ...(0, import_runtime136.trussProps)({
|
|
27496
27592
|
...{
|
|
27497
27593
|
display: "df",
|
|
27498
27594
|
alignItems: "aic",
|
|
@@ -27502,7 +27598,7 @@ function AppNavGroupTrigger(props) {
|
|
|
27502
27598
|
...props.expanded ? {
|
|
27503
27599
|
transform: "tf_rotate_180deg"
|
|
27504
27600
|
} : {}
|
|
27505
|
-
}), children: /* @__PURE__ */ (0,
|
|
27601
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime204.jsx)(Icon, { icon: "chevronDown" }) })
|
|
27506
27602
|
] });
|
|
27507
27603
|
}
|
|
27508
27604
|
|
|
@@ -27611,7 +27707,7 @@ function entryHasIcons(item) {
|
|
|
27611
27707
|
}
|
|
27612
27708
|
|
|
27613
27709
|
// src/components/AppNav/useAppNavGroupExpanded.ts
|
|
27614
|
-
var
|
|
27710
|
+
var import_react141 = require("react");
|
|
27615
27711
|
var APP_NAV_EXPANDED_LINK_GROUPS_STORAGE_KEY = "beam.appNav.expandedLinkGroups";
|
|
27616
27712
|
function loadStored() {
|
|
27617
27713
|
try {
|
|
@@ -27630,13 +27726,13 @@ function persistLabel(label, expanded) {
|
|
|
27630
27726
|
}
|
|
27631
27727
|
function useAppNavGroupExpanded(linkGroup) {
|
|
27632
27728
|
const { label } = linkGroup;
|
|
27633
|
-
const [userExpanded, setUserExpanded] = (0,
|
|
27729
|
+
const [userExpanded, setUserExpanded] = (0, import_react141.useState)(() => {
|
|
27634
27730
|
const stored = loadStored();
|
|
27635
27731
|
return label in stored ? stored[label] : null;
|
|
27636
27732
|
});
|
|
27637
27733
|
const hasActiveLink = appNavLinkGroupLinks(linkGroup).some((l) => l.active);
|
|
27638
27734
|
const expanded = userExpanded !== null ? userExpanded : hasActiveLink ? true : linkGroup.defaultExpanded ?? false;
|
|
27639
|
-
const onToggle = (0,
|
|
27735
|
+
const onToggle = (0, import_react141.useCallback)(() => {
|
|
27640
27736
|
const next = !expanded;
|
|
27641
27737
|
setUserExpanded(next);
|
|
27642
27738
|
persistLabel(label, next);
|
|
@@ -27645,8 +27741,8 @@ function useAppNavGroupExpanded(linkGroup) {
|
|
|
27645
27741
|
}
|
|
27646
27742
|
|
|
27647
27743
|
// src/components/AppNav/AppNavGroup.tsx
|
|
27648
|
-
var
|
|
27649
|
-
var
|
|
27744
|
+
var import_runtime137 = require("@homebound/truss/runtime");
|
|
27745
|
+
var import_jsx_runtime205 = require("react/jsx-runtime");
|
|
27650
27746
|
var __maybeInc25 = (inc) => {
|
|
27651
27747
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
27652
27748
|
};
|
|
@@ -27657,9 +27753,9 @@ function AppNavGroupView(props) {
|
|
|
27657
27753
|
} = props;
|
|
27658
27754
|
const tid = useTestIds(props, "linkGroup");
|
|
27659
27755
|
if (panelCollapsed) {
|
|
27660
|
-
return /* @__PURE__ */ (0,
|
|
27756
|
+
return /* @__PURE__ */ (0, import_jsx_runtime205.jsx)(import_jsx_runtime205.Fragment, { children: appNavLinkGroupLinks(linkGroup).map((link) => /* @__PURE__ */ (0, import_jsx_runtime205.jsx)(NavLink, { variant: "side", ...link, iconOnly: !!link.icon, ...tid[`link_${(0, import_change_case7.camelCase)(link.label)}`] }, link.label)) });
|
|
27661
27757
|
}
|
|
27662
|
-
return /* @__PURE__ */ (0,
|
|
27758
|
+
return /* @__PURE__ */ (0, import_jsx_runtime205.jsx)(AppNavGroupDisclosure, { ...props });
|
|
27663
27759
|
}
|
|
27664
27760
|
function AppNavGroupDisclosure(props) {
|
|
27665
27761
|
const {
|
|
@@ -27671,44 +27767,44 @@ function AppNavGroupDisclosure(props) {
|
|
|
27671
27767
|
} = useAppNavGroupExpanded(linkGroup);
|
|
27672
27768
|
const tid = useTestIds(props, "linkGroup");
|
|
27673
27769
|
const navGroupId = `nav-group-${(0, import_change_case7.kebabCase)(linkGroup.label)}`;
|
|
27674
|
-
const [contentEl, setContentEl] = (0,
|
|
27675
|
-
const contentRef = (0,
|
|
27770
|
+
const [contentEl, setContentEl] = (0, import_react142.useState)(null);
|
|
27771
|
+
const contentRef = (0, import_react142.useMemo)(() => ({
|
|
27676
27772
|
current: contentEl
|
|
27677
27773
|
}), [contentEl]);
|
|
27678
|
-
const [contentHeight, setContentHeight] = (0,
|
|
27679
|
-
(0,
|
|
27774
|
+
const [contentHeight, setContentHeight] = (0, import_react142.useState)(expanded ? "auto" : "0");
|
|
27775
|
+
(0, import_react142.useEffect)(() => {
|
|
27680
27776
|
setContentHeight(expanded && contentEl ? `${contentEl.scrollHeight}px` : "0");
|
|
27681
27777
|
}, [expanded, contentEl]);
|
|
27682
|
-
const onResize = (0,
|
|
27778
|
+
const onResize = (0, import_react142.useCallback)(() => {
|
|
27683
27779
|
if (contentEl && expanded) {
|
|
27684
27780
|
setContentHeight(`${contentEl.scrollHeight}px`);
|
|
27685
27781
|
}
|
|
27686
27782
|
}, [expanded, contentEl]);
|
|
27687
|
-
(0,
|
|
27783
|
+
(0, import_utils44.useResizeObserver)({
|
|
27688
27784
|
ref: contentRef,
|
|
27689
27785
|
onResize
|
|
27690
27786
|
});
|
|
27691
|
-
return /* @__PURE__ */ (0,
|
|
27692
|
-
/* @__PURE__ */ (0,
|
|
27693
|
-
/* @__PURE__ */ (0,
|
|
27787
|
+
return /* @__PURE__ */ (0, import_jsx_runtime205.jsxs)("div", { className: "df fdc", ...tid, children: [
|
|
27788
|
+
/* @__PURE__ */ (0, import_jsx_runtime205.jsx)(AppNavGroupTrigger, { label: linkGroup.label, navGroupId, expanded, active: linkGroupHasActiveLink(linkGroup), onClick: onToggle, ...tid }),
|
|
27789
|
+
/* @__PURE__ */ (0, import_jsx_runtime205.jsx)("div", { id: navGroupId, role: "region", "aria-hidden": !expanded, ...(0, import_runtime137.trussProps)({
|
|
27694
27790
|
overflow: "oh",
|
|
27695
27791
|
transition: "transitionHeight",
|
|
27696
27792
|
height: ["h_var", {
|
|
27697
|
-
"--height": (0,
|
|
27793
|
+
"--height": (0, import_runtime137.maybeCssVar)(__maybeInc25(contentHeight))
|
|
27698
27794
|
}]
|
|
27699
27795
|
}), ...tid.panel, ...!expanded ? {
|
|
27700
27796
|
inert: true
|
|
27701
|
-
} : {}, children: /* @__PURE__ */ (0,
|
|
27797
|
+
} : {}, children: /* @__PURE__ */ (0, import_jsx_runtime205.jsx)("div", { ref: setContentEl, className: "df fdc", children: /* @__PURE__ */ (0, import_jsx_runtime205.jsx)(AppNavItems, { items: linkGroup.items, panelCollapsed: false, nested: true, ...tid }) }) })
|
|
27702
27798
|
] });
|
|
27703
27799
|
}
|
|
27704
27800
|
|
|
27705
27801
|
// src/components/AppNav/AppNavGroupMenu.tsx
|
|
27706
|
-
var
|
|
27802
|
+
var import_jsx_runtime206 = require("react/jsx-runtime");
|
|
27707
27803
|
function AppNavGroupMenu({
|
|
27708
27804
|
linkGroup,
|
|
27709
27805
|
...tid
|
|
27710
27806
|
}) {
|
|
27711
|
-
return /* @__PURE__ */ (0,
|
|
27807
|
+
return /* @__PURE__ */ (0, import_jsx_runtime206.jsx)(
|
|
27712
27808
|
ButtonMenu,
|
|
27713
27809
|
{
|
|
27714
27810
|
trigger: {
|
|
@@ -27724,8 +27820,8 @@ function AppNavGroupMenu({
|
|
|
27724
27820
|
}
|
|
27725
27821
|
|
|
27726
27822
|
// src/components/AppNav/AppNavSectionView.tsx
|
|
27727
|
-
var
|
|
27728
|
-
var
|
|
27823
|
+
var import_runtime138 = require("@homebound/truss/runtime");
|
|
27824
|
+
var import_jsx_runtime207 = require("react/jsx-runtime");
|
|
27729
27825
|
function AppNavSectionView(props) {
|
|
27730
27826
|
const {
|
|
27731
27827
|
section,
|
|
@@ -27751,7 +27847,7 @@ function AppNavSectionView(props) {
|
|
|
27751
27847
|
"--borderColor": "var(--b-surface-separator)"
|
|
27752
27848
|
}]
|
|
27753
27849
|
};
|
|
27754
|
-
return /* @__PURE__ */ (0,
|
|
27850
|
+
return /* @__PURE__ */ (0, import_jsx_runtime207.jsxs)("div", { ...(0, import_runtime138.trussProps)({
|
|
27755
27851
|
...{
|
|
27756
27852
|
display: "df",
|
|
27757
27853
|
flexDirection: "fdc",
|
|
@@ -27759,7 +27855,7 @@ function AppNavSectionView(props) {
|
|
|
27759
27855
|
},
|
|
27760
27856
|
...showDivider ? dividerStyles : {}
|
|
27761
27857
|
}), ...tid, children: [
|
|
27762
|
-
section.label && !panelCollapsed && variant !== "global" && /* @__PURE__ */ (0,
|
|
27858
|
+
section.label && !panelCollapsed && variant !== "global" && /* @__PURE__ */ (0, import_jsx_runtime207.jsx)("div", { ...(0, import_runtime138.trussProps)({
|
|
27763
27859
|
fontWeight: "fw6",
|
|
27764
27860
|
fontSize: "fz_10px",
|
|
27765
27861
|
lineHeight: "lh_14px",
|
|
@@ -27772,18 +27868,18 @@ function AppNavSectionView(props) {
|
|
|
27772
27868
|
paddingBottom: "pb1",
|
|
27773
27869
|
textTransform: "ttu"
|
|
27774
27870
|
}), ...tid.label, children: section.label }),
|
|
27775
|
-
/* @__PURE__ */ (0,
|
|
27871
|
+
/* @__PURE__ */ (0, import_jsx_runtime207.jsx)(AppNavItems, { ...scopeProps, items: section.items, variant, panelCollapsed, nested })
|
|
27776
27872
|
] });
|
|
27777
27873
|
}
|
|
27778
27874
|
|
|
27779
27875
|
// src/components/AppNav/AppNavItems.tsx
|
|
27780
|
-
var
|
|
27876
|
+
var import_jsx_runtime208 = require("react/jsx-runtime");
|
|
27781
27877
|
function AppNavItems(props) {
|
|
27782
27878
|
const { items, variant = "side", panelCollapsed = false, nested = false } = props;
|
|
27783
27879
|
const tid = useTestIds(props, "appNav");
|
|
27784
|
-
return /* @__PURE__ */ (0,
|
|
27880
|
+
return /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(import_jsx_runtime208.Fragment, { children: items.map((item, idx) => {
|
|
27785
27881
|
if (isAppNavLink(item)) {
|
|
27786
|
-
return /* @__PURE__ */ (0,
|
|
27882
|
+
return /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(
|
|
27787
27883
|
NavLink,
|
|
27788
27884
|
{
|
|
27789
27885
|
variant,
|
|
@@ -27796,7 +27892,7 @@ function AppNavItems(props) {
|
|
|
27796
27892
|
);
|
|
27797
27893
|
}
|
|
27798
27894
|
if (isAppNavGroup(item)) {
|
|
27799
|
-
return variant === "global" ? /* @__PURE__ */ (0,
|
|
27895
|
+
return variant === "global" ? /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(AppNavGroupMenu, { linkGroup: item, ...tid.linkGroup }, appNavItemKey(item)) : /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(
|
|
27800
27896
|
AppNavGroupView,
|
|
27801
27897
|
{
|
|
27802
27898
|
linkGroup: item,
|
|
@@ -27807,7 +27903,7 @@ function AppNavItems(props) {
|
|
|
27807
27903
|
);
|
|
27808
27904
|
}
|
|
27809
27905
|
if (isAppNavSection(item)) {
|
|
27810
|
-
return /* @__PURE__ */ (0,
|
|
27906
|
+
return /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(
|
|
27811
27907
|
AppNavSectionView,
|
|
27812
27908
|
{
|
|
27813
27909
|
section: item,
|
|
@@ -27825,8 +27921,8 @@ function AppNavItems(props) {
|
|
|
27825
27921
|
}
|
|
27826
27922
|
|
|
27827
27923
|
// src/layouts/SideNavLayout/SideNavLayoutContext.tsx
|
|
27828
|
-
var
|
|
27829
|
-
var
|
|
27924
|
+
var import_react143 = require("react");
|
|
27925
|
+
var import_jsx_runtime209 = require("react/jsx-runtime");
|
|
27830
27926
|
var SIDE_NAV_LAYOUT_STATE_STORAGE_KEY = "beam.sideNavLayout.navState";
|
|
27831
27927
|
function loadStoredNavState() {
|
|
27832
27928
|
try {
|
|
@@ -27848,20 +27944,20 @@ function resolveInitialNavState(defaultNavState) {
|
|
|
27848
27944
|
}
|
|
27849
27945
|
return loadStoredNavState() ?? defaultNavState ?? "expanded";
|
|
27850
27946
|
}
|
|
27851
|
-
var SideNavLayoutContext = (0,
|
|
27947
|
+
var SideNavLayoutContext = (0, import_react143.createContext)(void 0);
|
|
27852
27948
|
function SideNavLayoutProvider(props) {
|
|
27853
|
-
const [navState, setNavStateInternal] = (0,
|
|
27949
|
+
const [navState, setNavStateInternal] = (0, import_react143.useState)(
|
|
27854
27950
|
() => resolveInitialNavState(props.defaultNavState)
|
|
27855
27951
|
);
|
|
27856
27952
|
const bp = useBreakpoint();
|
|
27857
|
-
const prevMdAndUp = (0,
|
|
27858
|
-
(0,
|
|
27953
|
+
const prevMdAndUp = (0, import_react143.useRef)(bp.mdAndUp);
|
|
27954
|
+
(0, import_react143.useEffect)(() => {
|
|
27859
27955
|
if (prevMdAndUp.current && !bp.mdAndUp) {
|
|
27860
27956
|
setNavStateInternal((prev) => prev === "expanded" ? "collapse" : prev);
|
|
27861
27957
|
}
|
|
27862
27958
|
prevMdAndUp.current = bp.mdAndUp;
|
|
27863
27959
|
}, [bp.mdAndUp]);
|
|
27864
|
-
const setNavState = (0,
|
|
27960
|
+
const setNavState = (0, import_react143.useCallback)((value2) => {
|
|
27865
27961
|
setNavStateInternal((prev) => {
|
|
27866
27962
|
const next = typeof value2 === "function" ? value2(prev) : value2;
|
|
27867
27963
|
if (next === "expanded" || next === "collapse") {
|
|
@@ -27873,20 +27969,20 @@ function SideNavLayoutProvider(props) {
|
|
|
27873
27969
|
return next;
|
|
27874
27970
|
});
|
|
27875
27971
|
}, []);
|
|
27876
|
-
const value = (0,
|
|
27877
|
-
return /* @__PURE__ */ (0,
|
|
27972
|
+
const value = (0, import_react143.useMemo)(() => ({ navState, setNavState }), [navState, setNavState]);
|
|
27973
|
+
return /* @__PURE__ */ (0, import_jsx_runtime209.jsx)(SideNavLayoutContext.Provider, { value, children: props.children });
|
|
27878
27974
|
}
|
|
27879
27975
|
function useSideNavLayoutContext() {
|
|
27880
|
-
return (0,
|
|
27976
|
+
return (0, import_react143.useContext)(SideNavLayoutContext) ?? { navState: "expanded", setNavState: () => {
|
|
27881
27977
|
} };
|
|
27882
27978
|
}
|
|
27883
27979
|
function useHasSideNavLayoutProvider() {
|
|
27884
|
-
return (0,
|
|
27980
|
+
return (0, import_react143.useContext)(SideNavLayoutContext) !== void 0;
|
|
27885
27981
|
}
|
|
27886
27982
|
|
|
27887
27983
|
// src/components/SideNav/SideNav.tsx
|
|
27888
|
-
var
|
|
27889
|
-
var
|
|
27984
|
+
var import_runtime139 = require("@homebound/truss/runtime");
|
|
27985
|
+
var import_jsx_runtime210 = require("react/jsx-runtime");
|
|
27890
27986
|
function SideNav(props) {
|
|
27891
27987
|
const {
|
|
27892
27988
|
top,
|
|
@@ -27901,8 +27997,8 @@ function SideNav(props) {
|
|
|
27901
27997
|
const panelCollapsed = navState === "collapse";
|
|
27902
27998
|
const hideContent = panelCollapsed && !showContentWhenCollapsed;
|
|
27903
27999
|
const hideItems = hideContent || panelCollapsed && !allItemsHaveIcons(items);
|
|
27904
|
-
return /* @__PURE__ */ (0,
|
|
27905
|
-
!hideContent && top !== void 0 && /* @__PURE__ */ (0,
|
|
28000
|
+
return /* @__PURE__ */ (0, import_jsx_runtime210.jsxs)("nav", { className: "df fdc h100 fs0", ...tid, children: [
|
|
28001
|
+
!hideContent && top !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime210.jsx)("div", { ...(0, import_runtime139.trussProps)({
|
|
27906
28002
|
flexShrink: "fs0",
|
|
27907
28003
|
paddingLeft: "pl2",
|
|
27908
28004
|
paddingRight: "pr2",
|
|
@@ -27913,7 +28009,7 @@ function SideNav(props) {
|
|
|
27913
28009
|
paddingBottom: "pb4"
|
|
27914
28010
|
} : {}
|
|
27915
28011
|
}), ...tid.top, children: top }),
|
|
27916
|
-
!hideContent && /* @__PURE__ */ (0,
|
|
28012
|
+
!hideContent && /* @__PURE__ */ (0, import_jsx_runtime210.jsx)("div", { ...(0, import_runtime139.trussProps)({
|
|
27917
28013
|
flexGrow: "fg1",
|
|
27918
28014
|
overflowY: "oya",
|
|
27919
28015
|
display: "df",
|
|
@@ -27925,8 +28021,8 @@ function SideNav(props) {
|
|
|
27925
28021
|
...top === void 0 ? {
|
|
27926
28022
|
paddingTop: "pt5"
|
|
27927
28023
|
} : {}
|
|
27928
|
-
}), ...tid.items, children: !hideItems && /* @__PURE__ */ (0,
|
|
27929
|
-
!hideContent && footer !== void 0 && /* @__PURE__ */ (0,
|
|
28024
|
+
}), ...tid.items, children: !hideItems && /* @__PURE__ */ (0, import_jsx_runtime210.jsx)(AppNavItems, { items, panelCollapsed }) }),
|
|
28025
|
+
!hideContent && footer !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime210.jsx)("div", { ...(0, import_runtime139.trussProps)({
|
|
27930
28026
|
flexShrink: "fs0",
|
|
27931
28027
|
paddingLeft: "pl2",
|
|
27932
28028
|
paddingRight: "pr2",
|
|
@@ -27942,11 +28038,11 @@ function SideNav(props) {
|
|
|
27942
28038
|
}
|
|
27943
28039
|
|
|
27944
28040
|
// src/components/Stepper.tsx
|
|
27945
|
-
var import_react143 = require("react");
|
|
27946
|
-
var import_react_aria62 = require("react-aria");
|
|
27947
|
-
var import_runtime139 = require("@homebound/truss/runtime");
|
|
27948
|
-
var import_jsx_runtime210 = require("react/jsx-runtime");
|
|
27949
28041
|
var import_react144 = require("react");
|
|
28042
|
+
var import_react_aria62 = require("react-aria");
|
|
28043
|
+
var import_runtime140 = require("@homebound/truss/runtime");
|
|
28044
|
+
var import_jsx_runtime211 = require("react/jsx-runtime");
|
|
28045
|
+
var import_react145 = require("react");
|
|
27950
28046
|
var __maybeInc26 = (inc) => {
|
|
27951
28047
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
27952
28048
|
};
|
|
@@ -27964,8 +28060,8 @@ function Stepper(props) {
|
|
|
27964
28060
|
const maxStepWidth = 200;
|
|
27965
28061
|
const minStepWidth = 100;
|
|
27966
28062
|
const gap = 8;
|
|
27967
|
-
return /* @__PURE__ */ (0,
|
|
27968
|
-
/* @__PURE__ */ (0,
|
|
28063
|
+
return /* @__PURE__ */ (0, import_jsx_runtime211.jsxs)("nav", { "aria-label": "steps", className: "df fdc w100", ...tid, children: [
|
|
28064
|
+
/* @__PURE__ */ (0, import_jsx_runtime211.jsx)("ol", { ...(0, import_runtime140.trussProps)({
|
|
27969
28065
|
padding: "p_0",
|
|
27970
28066
|
margin: "m_0",
|
|
27971
28067
|
listStyle: "listNone",
|
|
@@ -27975,7 +28071,7 @@ function Stepper(props) {
|
|
|
27975
28071
|
}]
|
|
27976
28072
|
}), children: steps.map((step) => {
|
|
27977
28073
|
const isCurrent = currentStep === step.value;
|
|
27978
|
-
return /* @__PURE__ */ (0,
|
|
28074
|
+
return /* @__PURE__ */ (0, import_react145.createElement)("li", { ...(0, import_runtime140.trussProps)({
|
|
27979
28075
|
display: "df",
|
|
27980
28076
|
flexGrow: "fg1",
|
|
27981
28077
|
flexDirection: "fdc",
|
|
@@ -27985,9 +28081,9 @@ function Stepper(props) {
|
|
|
27985
28081
|
minWidth: ["mw_var", {
|
|
27986
28082
|
"--minWidth": `${minStepWidth}px`
|
|
27987
28083
|
}]
|
|
27988
|
-
}), key: step.label, "aria-current": isCurrent, ...tid.step }, /* @__PURE__ */ (0,
|
|
28084
|
+
}), key: step.label, "aria-current": isCurrent, ...tid.step }, /* @__PURE__ */ (0, import_jsx_runtime211.jsx)(StepButton, { ...step, onClick: () => onChange(step.value), isCurrent, ...tid.stepButton }));
|
|
27989
28085
|
}) }),
|
|
27990
|
-
/* @__PURE__ */ (0,
|
|
28086
|
+
/* @__PURE__ */ (0, import_jsx_runtime211.jsx)("div", { ...(0, import_runtime140.trussProps)({
|
|
27991
28087
|
marginTop: "mt1",
|
|
27992
28088
|
backgroundColor: ["bgColor_var", {
|
|
27993
28089
|
"--backgroundColor": "var(--b-field-border-default)"
|
|
@@ -28000,14 +28096,14 @@ function Stepper(props) {
|
|
|
28000
28096
|
"--minWidth": `${steps.length * minStepWidth + (steps.length - 1) * gap}px`
|
|
28001
28097
|
}],
|
|
28002
28098
|
width: "w100"
|
|
28003
|
-
}), children: /* @__PURE__ */ (0,
|
|
28099
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime211.jsx)("div", { ...(0, import_runtime140.trussProps)({
|
|
28004
28100
|
backgroundColor: ["bgColor_var", {
|
|
28005
28101
|
"--backgroundColor": "var(--b-primary)"
|
|
28006
28102
|
}],
|
|
28007
28103
|
transition: "tsn_width_200ms",
|
|
28008
28104
|
height: "h100",
|
|
28009
28105
|
width: ["w_var", {
|
|
28010
|
-
"--width": (0,
|
|
28106
|
+
"--width": (0, import_runtime140.maybeCssVar)(__maybeInc26(`${(lastCompletedStep + 1) / steps.length * 100}%`))
|
|
28011
28107
|
}]
|
|
28012
28108
|
}) }) })
|
|
28013
28109
|
] });
|
|
@@ -28024,7 +28120,7 @@ function StepButton(props) {
|
|
|
28024
28120
|
onPress: onClick,
|
|
28025
28121
|
isDisabled: disabled
|
|
28026
28122
|
};
|
|
28027
|
-
const ref = (0,
|
|
28123
|
+
const ref = (0, import_react144.useRef)(null);
|
|
28028
28124
|
const {
|
|
28029
28125
|
buttonProps,
|
|
28030
28126
|
isPressed
|
|
@@ -28043,7 +28139,7 @@ function StepButton(props) {
|
|
|
28043
28139
|
boxShadow: "bshFocus"
|
|
28044
28140
|
};
|
|
28045
28141
|
const tid = useTestIds(props, "stepButton");
|
|
28046
|
-
return /* @__PURE__ */ (0,
|
|
28142
|
+
return /* @__PURE__ */ (0, import_jsx_runtime211.jsxs)("button", { ref, ...buttonProps, ...focusProps, ...hoverProps, ...(0, import_runtime140.trussProps)({
|
|
28047
28143
|
...{
|
|
28048
28144
|
fontWeight: "fw6",
|
|
28049
28145
|
fontSize: "fz_14px",
|
|
@@ -28104,7 +28200,7 @@ function StepButton(props) {
|
|
|
28104
28200
|
} : {},
|
|
28105
28201
|
...isFocusVisible ? focusRingStyles2 : {}
|
|
28106
28202
|
}), ...tid[defaultTestId(label)], children: [
|
|
28107
|
-
/* @__PURE__ */ (0,
|
|
28203
|
+
/* @__PURE__ */ (0, import_jsx_runtime211.jsx)("span", { className: "fs0 mr_4px", children: /* @__PURE__ */ (0, import_jsx_runtime211.jsx)(StepIcon, { state, isHovered, isPressed, isCurrent }) }),
|
|
28108
28204
|
label
|
|
28109
28205
|
] });
|
|
28110
28206
|
}
|
|
@@ -28115,12 +28211,12 @@ function StepIcon({
|
|
|
28115
28211
|
isCurrent = false
|
|
28116
28212
|
}) {
|
|
28117
28213
|
if (state === "error") {
|
|
28118
|
-
return /* @__PURE__ */ (0,
|
|
28214
|
+
return /* @__PURE__ */ (0, import_jsx_runtime211.jsx)(Icon, { icon: "errorCircle" });
|
|
28119
28215
|
}
|
|
28120
28216
|
if (state === "complete") {
|
|
28121
|
-
return /* @__PURE__ */ (0,
|
|
28217
|
+
return /* @__PURE__ */ (0, import_jsx_runtime211.jsx)(Icon, { icon: "check" });
|
|
28122
28218
|
}
|
|
28123
|
-
return /* @__PURE__ */ (0,
|
|
28219
|
+
return /* @__PURE__ */ (0, import_jsx_runtime211.jsx)("div", { className: "h_24px w_24px df aic jcc", children: /* @__PURE__ */ (0, import_jsx_runtime211.jsx)("div", { ...(0, import_runtime140.trussProps)({
|
|
28124
28220
|
height: "h_10px",
|
|
28125
28221
|
width: "w_10px",
|
|
28126
28222
|
borderStyle: "bss",
|
|
@@ -28134,10 +28230,10 @@ function StepIcon({
|
|
|
28134
28230
|
}
|
|
28135
28231
|
|
|
28136
28232
|
// src/components/StepperTabs/StepperTab.tsx
|
|
28137
|
-
var
|
|
28233
|
+
var import_react146 = require("react");
|
|
28138
28234
|
var import_react_aria63 = require("react-aria");
|
|
28139
|
-
var
|
|
28140
|
-
var
|
|
28235
|
+
var import_runtime141 = require("@homebound/truss/runtime");
|
|
28236
|
+
var import_jsx_runtime212 = require("react/jsx-runtime");
|
|
28141
28237
|
function StepperTab(props) {
|
|
28142
28238
|
const {
|
|
28143
28239
|
label,
|
|
@@ -28153,7 +28249,7 @@ function StepperTab(props) {
|
|
|
28153
28249
|
onPress: () => onClick(value),
|
|
28154
28250
|
isDisabled: disabled || collapsed
|
|
28155
28251
|
};
|
|
28156
|
-
const ref = (0,
|
|
28252
|
+
const ref = (0, import_react146.useRef)(null);
|
|
28157
28253
|
const {
|
|
28158
28254
|
buttonProps
|
|
28159
28255
|
} = (0, import_react_aria63.useButton)(ariaProps, ref);
|
|
@@ -28168,7 +28264,7 @@ function StepperTab(props) {
|
|
|
28168
28264
|
const isHovered = __storyState?.hovered ?? isHoveredFromEvents;
|
|
28169
28265
|
const isFocusVisible = __storyState?.focusVisible ?? isFocusVisibleFromEvents;
|
|
28170
28266
|
const tid = useTestIds(props, "stepperTab");
|
|
28171
|
-
return /* @__PURE__ */ (0,
|
|
28267
|
+
return /* @__PURE__ */ (0, import_jsx_runtime212.jsxs)("button", { ref, ...(0, import_react_aria63.mergeProps)(buttonProps, focusProps, hoverProps), "aria-label": label, ...(0, import_runtime141.trussProps)({
|
|
28172
28268
|
...stepperTabStyles.baseStyles,
|
|
28173
28269
|
...getStateStyles(active, completed),
|
|
28174
28270
|
...isHovered && !disabled ? stepperTabStyles.hoverStyles : {},
|
|
@@ -28176,10 +28272,10 @@ function StepperTab(props) {
|
|
|
28176
28272
|
...disabled ? stepperTabStyles.disabledStyles : {},
|
|
28177
28273
|
...isFocusVisible ? stepperTabStyles.focusRingStyles : {}
|
|
28178
28274
|
}), ...tid[defaultTestId(value)], children: [
|
|
28179
|
-
!collapsed && /* @__PURE__ */ (0,
|
|
28180
|
-
/* @__PURE__ */ (0,
|
|
28181
|
-
/* @__PURE__ */ (0,
|
|
28182
|
-
/* @__PURE__ */ (0,
|
|
28275
|
+
!collapsed && /* @__PURE__ */ (0, import_jsx_runtime212.jsxs)(import_jsx_runtime212.Fragment, { children: [
|
|
28276
|
+
/* @__PURE__ */ (0, import_jsx_runtime212.jsxs)("span", { className: "dg jic mw0", children: [
|
|
28277
|
+
/* @__PURE__ */ (0, import_jsx_runtime212.jsx)("span", { className: "fw6 fz_14px lh_20px vh ga_1_1 oh d_negwebkit_box wbo_vertical to_ellipsis wlc_1 wbba", "aria-hidden": true, children: label }),
|
|
28278
|
+
/* @__PURE__ */ (0, import_jsx_runtime212.jsx)("span", { ...(0, import_runtime141.trussProps)({
|
|
28183
28279
|
gridArea: "ga_1_1",
|
|
28184
28280
|
overflow: "oh",
|
|
28185
28281
|
display: "d_negwebkit_box",
|
|
@@ -28194,7 +28290,7 @@ function StepperTab(props) {
|
|
|
28194
28290
|
} : {}
|
|
28195
28291
|
}), children: label })
|
|
28196
28292
|
] }),
|
|
28197
|
-
/* @__PURE__ */ (0,
|
|
28293
|
+
/* @__PURE__ */ (0, import_jsx_runtime212.jsx)("span", { ...(0, import_runtime141.trussProps)({
|
|
28198
28294
|
flexShrink: "fs0",
|
|
28199
28295
|
marginLeft: "ml1",
|
|
28200
28296
|
transition: "transitionAll",
|
|
@@ -28204,10 +28300,10 @@ function StepperTab(props) {
|
|
|
28204
28300
|
opacity: "o100",
|
|
28205
28301
|
transform: "tf_scale_1_translateY_0"
|
|
28206
28302
|
} : {}
|
|
28207
|
-
}), children: /* @__PURE__ */ (0,
|
|
28303
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime212.jsx)(Icon, { icon: "check", inc: 2.5, ...tid.check }) })
|
|
28208
28304
|
] }),
|
|
28209
|
-
/* @__PURE__ */ (0,
|
|
28210
|
-
/* @__PURE__ */ (0,
|
|
28305
|
+
/* @__PURE__ */ (0, import_jsx_runtime212.jsx)("span", { "aria-hidden": true, ...(0, import_runtime141.trussProps)(getIndicatorStyles(active, completed, disabled)), ...tid.indicator }),
|
|
28306
|
+
/* @__PURE__ */ (0, import_jsx_runtime212.jsx)(import_react_aria63.VisuallyHidden, { children: completed ? "Complete" : "Not Complete" })
|
|
28211
28307
|
] });
|
|
28212
28308
|
}
|
|
28213
28309
|
function getStateStyles(active, completed) {
|
|
@@ -28288,9 +28384,9 @@ var stepperTabStyles = {
|
|
|
28288
28384
|
};
|
|
28289
28385
|
|
|
28290
28386
|
// src/components/StepperTabs/StepperTabs.tsx
|
|
28291
|
-
var
|
|
28292
|
-
var
|
|
28293
|
-
var
|
|
28387
|
+
var import_runtime142 = require("@homebound/truss/runtime");
|
|
28388
|
+
var import_jsx_runtime213 = require("react/jsx-runtime");
|
|
28389
|
+
var import_react147 = require("react");
|
|
28294
28390
|
function StepperTabs(props) {
|
|
28295
28391
|
const {
|
|
28296
28392
|
steps,
|
|
@@ -28305,7 +28401,7 @@ function StepperTabs(props) {
|
|
|
28305
28401
|
const collapsed = isMobile || !!forceCollapsed;
|
|
28306
28402
|
const capWidth = steps.length <= 3;
|
|
28307
28403
|
const currentStepIndex = Math.max(0, steps.findIndex((step) => step.value === currentStep));
|
|
28308
|
-
return /* @__PURE__ */ (0,
|
|
28404
|
+
return /* @__PURE__ */ (0, import_jsx_runtime213.jsx)("nav", { "aria-label": "steps", className: "w100", ...tid, children: /* @__PURE__ */ (0, import_jsx_runtime213.jsx)("ol", { ...(0, import_runtime142.trussProps)({
|
|
28309
28405
|
padding: "p_0",
|
|
28310
28406
|
margin: "m_0",
|
|
28311
28407
|
listStyle: "listNone",
|
|
@@ -28320,7 +28416,7 @@ function StepperTabs(props) {
|
|
|
28320
28416
|
}), children: steps.map((step, idx) => {
|
|
28321
28417
|
const isCurrent = idx === currentStepIndex;
|
|
28322
28418
|
const isCompleted = idx < currentStepIndex;
|
|
28323
|
-
return /* @__PURE__ */ (0,
|
|
28419
|
+
return /* @__PURE__ */ (0, import_react147.createElement)("li", { ...(0, import_runtime142.trussProps)({
|
|
28324
28420
|
display: "df",
|
|
28325
28421
|
flexGrow: "fg1",
|
|
28326
28422
|
flexBasis: "fb_0",
|
|
@@ -28332,7 +28428,7 @@ function StepperTabs(props) {
|
|
|
28332
28428
|
"--maxWidth": `${maxStepWidthPx}px`
|
|
28333
28429
|
}]
|
|
28334
28430
|
} : {}
|
|
28335
|
-
}), key: step.value, "aria-current": isCurrent, ...tid.step }, /* @__PURE__ */ (0,
|
|
28431
|
+
}), key: step.value, "aria-current": isCurrent, ...tid.step }, /* @__PURE__ */ (0, import_jsx_runtime213.jsx)(StepperTab, { label: step.label, value: step.value, active: isCurrent, completed: isCompleted, disabled: step.disabled, collapsed, onClick: onChange, ...tid.tab }));
|
|
28336
28432
|
}) }) });
|
|
28337
28433
|
}
|
|
28338
28434
|
var maxStepWidthPx = 280;
|
|
@@ -28340,8 +28436,8 @@ var gapPx = 6;
|
|
|
28340
28436
|
|
|
28341
28437
|
// src/components/SuperDrawer/components/SuperDrawerHeader.tsx
|
|
28342
28438
|
var import_react_dom8 = require("react-dom");
|
|
28343
|
-
var
|
|
28344
|
-
var
|
|
28439
|
+
var import_runtime143 = require("@homebound/truss/runtime");
|
|
28440
|
+
var import_jsx_runtime214 = require("react/jsx-runtime");
|
|
28345
28441
|
function SuperDrawerHeader(props) {
|
|
28346
28442
|
const {
|
|
28347
28443
|
hideControls
|
|
@@ -28358,20 +28454,20 @@ function SuperDrawerHeader(props) {
|
|
|
28358
28454
|
const currentContent = contentStack.current[contentStack.current.length - 1]?.opts;
|
|
28359
28455
|
const isDetail = currentContent !== firstContent;
|
|
28360
28456
|
const tid = useTestIds({}, "superDrawerHeader");
|
|
28361
|
-
return (0, import_react_dom8.createPortal)(/* @__PURE__ */ (0,
|
|
28362
|
-
isStructuredProps(props) ? /* @__PURE__ */ (0,
|
|
28363
|
-
/* @__PURE__ */ (0,
|
|
28364
|
-
/* @__PURE__ */ (0,
|
|
28457
|
+
return (0, import_react_dom8.createPortal)(/* @__PURE__ */ (0, import_jsx_runtime214.jsxs)("div", { className: "df aic jcsb g_3", ...tid, children: [
|
|
28458
|
+
isStructuredProps(props) ? /* @__PURE__ */ (0, import_jsx_runtime214.jsxs)("div", { className: "df jcsb aic g_2 fg1", children: [
|
|
28459
|
+
/* @__PURE__ */ (0, import_jsx_runtime214.jsxs)("div", { className: "fg1 df aic g_2", children: [
|
|
28460
|
+
/* @__PURE__ */ (0, import_jsx_runtime214.jsx)("h1", { className: "fw6 fz_24px lh_32px", children: props.title }),
|
|
28365
28461
|
props.left
|
|
28366
28462
|
] }),
|
|
28367
|
-
props.right && /* @__PURE__ */ (0,
|
|
28368
|
-
] }) : /* @__PURE__ */ (0,
|
|
28369
|
-
!hideControls && /* @__PURE__ */ (0,
|
|
28463
|
+
props.right && /* @__PURE__ */ (0, import_jsx_runtime214.jsx)("div", { className: "fs0", children: props.right })
|
|
28464
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime214.jsx)("div", { className: "fg1", children: props.children }),
|
|
28465
|
+
!hideControls && /* @__PURE__ */ (0, import_jsx_runtime214.jsx)("div", { ...(0, import_runtime143.trussProps)({
|
|
28370
28466
|
flexShrink: "fs0",
|
|
28371
28467
|
...isDetail ? {
|
|
28372
28468
|
visibility: "vh"
|
|
28373
28469
|
} : {}
|
|
28374
|
-
}), children: /* @__PURE__ */ (0,
|
|
28470
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime214.jsx)(ButtonGroup, { buttons: [{
|
|
28375
28471
|
icon: "chevronLeft",
|
|
28376
28472
|
onClick: () => onPrevClick && onPrevClick(),
|
|
28377
28473
|
disabled: !onPrevClick
|
|
@@ -28388,8 +28484,8 @@ function isStructuredProps(props) {
|
|
|
28388
28484
|
|
|
28389
28485
|
// src/components/SuperDrawer/SuperDrawerContent.tsx
|
|
28390
28486
|
var import_framer_motion6 = require("framer-motion");
|
|
28391
|
-
var
|
|
28392
|
-
var
|
|
28487
|
+
var import_runtime144 = require("@homebound/truss/runtime");
|
|
28488
|
+
var import_jsx_runtime215 = require("react/jsx-runtime");
|
|
28393
28489
|
var SuperDrawerContent = ({
|
|
28394
28490
|
children,
|
|
28395
28491
|
banner,
|
|
@@ -28410,20 +28506,20 @@ var SuperDrawerContent = ({
|
|
|
28410
28506
|
} = firstContent ?? {};
|
|
28411
28507
|
function wrapWithMotionAndMaybeBack(children2) {
|
|
28412
28508
|
if (kind === "open") {
|
|
28413
|
-
return /* @__PURE__ */ (0,
|
|
28414
|
-
banner && /* @__PURE__ */ (0,
|
|
28509
|
+
return /* @__PURE__ */ (0, import_jsx_runtime215.jsxs)(import_framer_motion6.motion.div, { className: "pt3 pb3 pr3 pl3 fg1 oa", children: [
|
|
28510
|
+
banner && /* @__PURE__ */ (0, import_jsx_runtime215.jsx)("div", { className: "ml_neg3 mr_neg3 mt_neg3 mb3", children: banner }),
|
|
28415
28511
|
children2
|
|
28416
28512
|
] }, "content");
|
|
28417
28513
|
} else if (kind === "detail") {
|
|
28418
|
-
return /* @__PURE__ */ (0,
|
|
28514
|
+
return /* @__PURE__ */ (0, import_jsx_runtime215.jsxs)(import_framer_motion6.motion.div, { className: "pl3 pr3 pt2 pb3 fg1", animate: {
|
|
28419
28515
|
overflow: "auto"
|
|
28420
28516
|
}, transition: {
|
|
28421
28517
|
overflow: {
|
|
28422
28518
|
delay: 0.3
|
|
28423
28519
|
}
|
|
28424
28520
|
}, children: [
|
|
28425
|
-
/* @__PURE__ */ (0,
|
|
28426
|
-
/* @__PURE__ */ (0,
|
|
28521
|
+
/* @__PURE__ */ (0, import_jsx_runtime215.jsx)(Button, { label: "Back", icon: "chevronLeft", variant: "tertiary", onClick: closeDrawerDetail }),
|
|
28522
|
+
/* @__PURE__ */ (0, import_jsx_runtime215.jsx)(import_framer_motion6.motion.div, { initial: {
|
|
28427
28523
|
x: width2,
|
|
28428
28524
|
opacity: 0
|
|
28429
28525
|
}, animate: {
|
|
@@ -28441,7 +28537,7 @@ var SuperDrawerContent = ({
|
|
|
28441
28537
|
}, className: "pt2", children: children2 })
|
|
28442
28538
|
] }, "content");
|
|
28443
28539
|
} else {
|
|
28444
|
-
return /* @__PURE__ */ (0,
|
|
28540
|
+
return /* @__PURE__ */ (0, import_jsx_runtime215.jsx)(import_framer_motion6.motion.div, { ...(0, import_runtime144.mergeProps)(void 0, {
|
|
28445
28541
|
overflow: "auto"
|
|
28446
28542
|
}, {
|
|
28447
28543
|
paddingTop: "pt3",
|
|
@@ -28452,9 +28548,9 @@ var SuperDrawerContent = ({
|
|
|
28452
28548
|
}) }, "content");
|
|
28453
28549
|
}
|
|
28454
28550
|
}
|
|
28455
|
-
return /* @__PURE__ */ (0,
|
|
28551
|
+
return /* @__PURE__ */ (0, import_jsx_runtime215.jsxs)(import_jsx_runtime215.Fragment, { children: [
|
|
28456
28552
|
wrapWithMotionAndMaybeBack(children),
|
|
28457
|
-
actions && /* @__PURE__ */ (0,
|
|
28553
|
+
actions && /* @__PURE__ */ (0, import_jsx_runtime215.jsx)("footer", { ...(0, import_runtime144.trussProps)({
|
|
28458
28554
|
borderTopStyle: "bts_solid",
|
|
28459
28555
|
borderTopWidth: "btw_1px",
|
|
28460
28556
|
borderColor: ["bc_var", {
|
|
@@ -28467,7 +28563,7 @@ var SuperDrawerContent = ({
|
|
|
28467
28563
|
display: "df",
|
|
28468
28564
|
alignItems: "aic",
|
|
28469
28565
|
justifyContent: "jcfe"
|
|
28470
|
-
}), children: /* @__PURE__ */ (0,
|
|
28566
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime215.jsx)("div", { className: "df g_1", children: actions.map((buttonProps, i) => /* @__PURE__ */ (0, import_jsx_runtime215.jsx)(Button, { ...buttonProps }, i)) }) })
|
|
28471
28567
|
] });
|
|
28472
28568
|
};
|
|
28473
28569
|
|
|
@@ -28484,7 +28580,7 @@ function visit(rows, fn) {
|
|
|
28484
28580
|
}
|
|
28485
28581
|
|
|
28486
28582
|
// src/components/TagGroup.tsx
|
|
28487
|
-
var
|
|
28583
|
+
var import_jsx_runtime216 = require("react/jsx-runtime");
|
|
28488
28584
|
function TagGroup(props) {
|
|
28489
28585
|
const {
|
|
28490
28586
|
tags,
|
|
@@ -28492,15 +28588,15 @@ function TagGroup(props) {
|
|
|
28492
28588
|
...otherProps
|
|
28493
28589
|
} = props;
|
|
28494
28590
|
const tid = useTestIds(otherProps, "tagGroup");
|
|
28495
|
-
return /* @__PURE__ */ (0,
|
|
28496
|
-
tags.map((tag) => /* @__PURE__ */ (0,
|
|
28497
|
-
onEdit && /* @__PURE__ */ (0,
|
|
28591
|
+
return /* @__PURE__ */ (0, import_jsx_runtime216.jsxs)("div", { ...tid, className: "df aic fww g_1", children: [
|
|
28592
|
+
tags.map((tag) => /* @__PURE__ */ (0, import_jsx_runtime216.jsx)(Tag, { ...tag, variant: "secondary" }, tag.text)),
|
|
28593
|
+
onEdit && /* @__PURE__ */ (0, import_jsx_runtime216.jsx)("span", { className: "ml1 fw4 fz_14px lh_20px", children: /* @__PURE__ */ (0, import_jsx_runtime216.jsx)(Button, { label: "Edit", variant: "text", onClick: onEdit, ...tid.edit }) })
|
|
28498
28594
|
] });
|
|
28499
28595
|
}
|
|
28500
28596
|
|
|
28501
28597
|
// src/components/StackBarGraph.tsx
|
|
28502
|
-
var
|
|
28503
|
-
var
|
|
28598
|
+
var import_runtime145 = require("@homebound/truss/runtime");
|
|
28599
|
+
var import_jsx_runtime217 = require("react/jsx-runtime");
|
|
28504
28600
|
var __maybeInc27 = (inc) => {
|
|
28505
28601
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
28506
28602
|
};
|
|
@@ -28512,30 +28608,30 @@ function StackBarGraph(props) {
|
|
|
28512
28608
|
} = props;
|
|
28513
28609
|
const tid = useTestIds(props, "stackBarGraph");
|
|
28514
28610
|
const totalCount = segments.reduce((total, segment) => total + Math.max(0, segment.count), 0);
|
|
28515
|
-
return /* @__PURE__ */ (0,
|
|
28516
|
-
/* @__PURE__ */ (0,
|
|
28517
|
-
/* @__PURE__ */ (0,
|
|
28518
|
-
/* @__PURE__ */ (0,
|
|
28611
|
+
return /* @__PURE__ */ (0, import_jsx_runtime217.jsxs)("div", { className: "df fdc g_2 pt2 pb2 pr2 pl2", ...tid, children: [
|
|
28612
|
+
/* @__PURE__ */ (0, import_jsx_runtime217.jsxs)("div", { className: "df aic jcsb g_2", children: [
|
|
28613
|
+
/* @__PURE__ */ (0, import_jsx_runtime217.jsx)("span", { className: "fw6 fz_10px lh_14px ttu ls_0_5px", children: title }),
|
|
28614
|
+
/* @__PURE__ */ (0, import_jsx_runtime217.jsx)("span", { className: "fw4 fz_12px lh_16px wsnw", children: totalLabel })
|
|
28519
28615
|
] }),
|
|
28520
|
-
/* @__PURE__ */ (0,
|
|
28616
|
+
/* @__PURE__ */ (0, import_jsx_runtime217.jsx)("div", { className: "df h_20px bra_6px oh", ...tid.bar, children: segments.map((segment) => /* @__PURE__ */ (0, import_jsx_runtime217.jsx)("div", { ...(0, import_runtime145.trussProps)({
|
|
28521
28617
|
width: ["w_var", {
|
|
28522
|
-
"--width": (0,
|
|
28618
|
+
"--width": (0, import_runtime145.maybeCssVar)(__maybeInc27(`${segmentWidth(segment.count, totalCount)}%`))
|
|
28523
28619
|
}],
|
|
28524
28620
|
flexShrink: "fs0",
|
|
28525
28621
|
backgroundColor: ["bgColor_var", {
|
|
28526
|
-
"--backgroundColor": (0,
|
|
28622
|
+
"--backgroundColor": (0, import_runtime145.maybeCssVar)(segment.color)
|
|
28527
28623
|
}]
|
|
28528
28624
|
}) }, segment.label)) }),
|
|
28529
|
-
/* @__PURE__ */ (0,
|
|
28530
|
-
/* @__PURE__ */ (0,
|
|
28625
|
+
/* @__PURE__ */ (0, import_jsx_runtime217.jsx)("div", { className: "df fww aic g_2", ...tid.legend, children: segments.map((segment) => /* @__PURE__ */ (0, import_jsx_runtime217.jsxs)("div", { className: "dif aic g_4px", children: [
|
|
28626
|
+
/* @__PURE__ */ (0, import_jsx_runtime217.jsx)("span", { ...(0, import_runtime145.trussProps)({
|
|
28531
28627
|
borderRadius: "br100",
|
|
28532
28628
|
width: "w_8px",
|
|
28533
28629
|
height: "h_8px",
|
|
28534
28630
|
backgroundColor: ["bgColor_var", {
|
|
28535
|
-
"--backgroundColor": (0,
|
|
28631
|
+
"--backgroundColor": (0, import_runtime145.maybeCssVar)(segment.color)
|
|
28536
28632
|
}]
|
|
28537
28633
|
}) }),
|
|
28538
|
-
/* @__PURE__ */ (0,
|
|
28634
|
+
/* @__PURE__ */ (0, import_jsx_runtime217.jsxs)("span", { className: "fw4 fz_12px lh_16px", children: [
|
|
28539
28635
|
percentage(segment.count, totalCount),
|
|
28540
28636
|
"% ",
|
|
28541
28637
|
segment.label,
|
|
@@ -28554,10 +28650,10 @@ function segmentWidth(count, total) {
|
|
|
28554
28650
|
}
|
|
28555
28651
|
|
|
28556
28652
|
// src/components/TableSummary/TableSummary.tsx
|
|
28557
|
-
var
|
|
28653
|
+
var import_react148 = require("react");
|
|
28558
28654
|
var import_react_aria64 = require("react-aria");
|
|
28559
|
-
var
|
|
28560
|
-
var
|
|
28655
|
+
var import_runtime146 = require("@homebound/truss/runtime");
|
|
28656
|
+
var import_jsx_runtime218 = require("react/jsx-runtime");
|
|
28561
28657
|
function TableSummary(props) {
|
|
28562
28658
|
const {
|
|
28563
28659
|
title,
|
|
@@ -28570,7 +28666,7 @@ function TableSummary(props) {
|
|
|
28570
28666
|
} = useBreakpoint();
|
|
28571
28667
|
const tid = useTestIds(props, "tableSummary");
|
|
28572
28668
|
const actionMobileLabel = action?.mobileLabel ?? "Items";
|
|
28573
|
-
return /* @__PURE__ */ (0,
|
|
28669
|
+
return /* @__PURE__ */ (0, import_jsx_runtime218.jsxs)("section", { ...(0, import_runtime146.trussProps)({
|
|
28574
28670
|
display: "df",
|
|
28575
28671
|
flexDirection: "fdc",
|
|
28576
28672
|
backgroundColor: ["bgColor_var", {
|
|
@@ -28579,7 +28675,7 @@ function TableSummary(props) {
|
|
|
28579
28675
|
borderRadius: "br12",
|
|
28580
28676
|
boxShadow: "bshBasic"
|
|
28581
28677
|
}), ...tid, children: [
|
|
28582
|
-
/* @__PURE__ */ (0,
|
|
28678
|
+
/* @__PURE__ */ (0, import_jsx_runtime218.jsxs)("header", { ...(0, import_runtime146.trussProps)({
|
|
28583
28679
|
display: "df",
|
|
28584
28680
|
alignItems: "aic",
|
|
28585
28681
|
justifyContent: "jcsb",
|
|
@@ -28594,11 +28690,11 @@ function TableSummary(props) {
|
|
|
28594
28690
|
"--borderColor": "var(--b-surface-separator)"
|
|
28595
28691
|
}]
|
|
28596
28692
|
}), children: [
|
|
28597
|
-
/* @__PURE__ */ (0,
|
|
28598
|
-
action && /* @__PURE__ */ (0,
|
|
28693
|
+
/* @__PURE__ */ (0, import_jsx_runtime218.jsx)("h3", { className: "fw6 fz_16px lh_24px mw0 pt1 pb1 mt0 mb0 mr0 ml0", children: title }),
|
|
28694
|
+
action && /* @__PURE__ */ (0, import_jsx_runtime218.jsx)("span", { className: "fw4 fz_14px lh_20px", children: /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(Button, { label: isMobile ? actionMobileLabel : action.label, variant: "text", endAdornment: /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(Icon, { icon: "arrowRight" }), onClick: action.onClick, ...tid.action }) })
|
|
28599
28695
|
] }),
|
|
28600
|
-
metrics.length > 0 && /* @__PURE__ */ (0,
|
|
28601
|
-
footer && /* @__PURE__ */ (0,
|
|
28696
|
+
metrics.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime218.jsx)("div", { className: "df fdr sm_fdc", ...tid.metrics, children: metrics.map((metric, index) => /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(MetricButton, { metric, divider: index < metrics.length - 1, ...tid[`metric_${defaultTestId(metric.label)}`] }, defaultTestId(metric.label))) }),
|
|
28697
|
+
footer && /* @__PURE__ */ (0, import_jsx_runtime218.jsx)("div", { ...(0, import_runtime146.trussProps)({
|
|
28602
28698
|
...metrics.length > 0 ? {
|
|
28603
28699
|
borderTopStyle: "bts_solid",
|
|
28604
28700
|
borderTopWidth: "btw_1px",
|
|
@@ -28614,7 +28710,7 @@ function MetricButton(props) {
|
|
|
28614
28710
|
metric,
|
|
28615
28711
|
divider
|
|
28616
28712
|
} = props;
|
|
28617
|
-
const ref = (0,
|
|
28713
|
+
const ref = (0, import_react148.useRef)(null);
|
|
28618
28714
|
const {
|
|
28619
28715
|
buttonProps
|
|
28620
28716
|
} = (0, import_react_aria64.useButton)({
|
|
@@ -28629,7 +28725,7 @@ function MetricButton(props) {
|
|
|
28629
28725
|
isFocusVisible
|
|
28630
28726
|
} = (0, import_react_aria64.useFocusRing)();
|
|
28631
28727
|
const tid = useTestIds(props, "metric");
|
|
28632
|
-
return /* @__PURE__ */ (0,
|
|
28728
|
+
return /* @__PURE__ */ (0, import_jsx_runtime218.jsxs)("button", { ref, ...(0, import_runtime146.trussProps)({
|
|
28633
28729
|
// outline0 drops the UA focus outline (avoids a second ring beside our box-shadow).
|
|
28634
28730
|
// relative + z1 paints the focused cell above neighbors so the ring isn't tucked under.
|
|
28635
28731
|
...{
|
|
@@ -28675,13 +28771,13 @@ function MetricButton(props) {
|
|
|
28675
28771
|
// Single blue ring (bshFocus's outer color). FocusRingMuted is near-black — not for these cells.
|
|
28676
28772
|
...isFocusVisible ? {
|
|
28677
28773
|
boxShadow: ["boxShadow_var", {
|
|
28678
|
-
"--boxShadow": (0,
|
|
28774
|
+
"--boxShadow": (0, import_runtime146.maybeCssVar)(`0px 0px 0px 2px ${"rgba(29, 78, 216, 1)" /* Blue700 */}`)
|
|
28679
28775
|
}],
|
|
28680
28776
|
zIndex: "z1"
|
|
28681
28777
|
} : {}
|
|
28682
28778
|
}), ...(0, import_react_aria64.mergeProps)(buttonProps, hoverProps, focusProps), ...tid, children: [
|
|
28683
|
-
/* @__PURE__ */ (0,
|
|
28684
|
-
/* @__PURE__ */ (0,
|
|
28779
|
+
/* @__PURE__ */ (0, import_jsx_runtime218.jsx)("span", { className: "fs0", children: /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(Icon, { icon: metric.icon, color: metric.color, inc: 4 }) }),
|
|
28780
|
+
/* @__PURE__ */ (0, import_jsx_runtime218.jsxs)("span", { className: "fw6 fz_18px lh_28px", children: [
|
|
28685
28781
|
metric.count,
|
|
28686
28782
|
" ",
|
|
28687
28783
|
metric.label
|
|
@@ -28691,7 +28787,7 @@ function MetricButton(props) {
|
|
|
28691
28787
|
|
|
28692
28788
|
// src/components/DnDGrid/DnDGrid.tsx
|
|
28693
28789
|
var import_fast_deep_equal2 = __toESM(require("fast-deep-equal"), 1);
|
|
28694
|
-
var
|
|
28790
|
+
var import_react150 = require("react");
|
|
28695
28791
|
|
|
28696
28792
|
// src/utils/inlineStyles.ts
|
|
28697
28793
|
function isInlineStyleValue(value) {
|
|
@@ -28720,19 +28816,19 @@ function restoreElementStyle(el, snapshot) {
|
|
|
28720
28816
|
}
|
|
28721
28817
|
|
|
28722
28818
|
// src/components/DnDGrid/DnDGridContext.tsx
|
|
28723
|
-
var
|
|
28724
|
-
var DnDGridContext = (0,
|
|
28819
|
+
var import_react149 = require("react");
|
|
28820
|
+
var DnDGridContext = (0, import_react149.createContext)({
|
|
28725
28821
|
dragEl: { current: void 0 },
|
|
28726
28822
|
onDragHandleKeyDown: () => {
|
|
28727
28823
|
}
|
|
28728
28824
|
});
|
|
28729
28825
|
function useDnDGridContext() {
|
|
28730
|
-
return (0,
|
|
28826
|
+
return (0, import_react149.useContext)(DnDGridContext);
|
|
28731
28827
|
}
|
|
28732
28828
|
|
|
28733
28829
|
// src/components/DnDGrid/DnDGrid.tsx
|
|
28734
|
-
var
|
|
28735
|
-
var
|
|
28830
|
+
var import_runtime147 = require("@homebound/truss/runtime");
|
|
28831
|
+
var import_jsx_runtime219 = require("react/jsx-runtime");
|
|
28736
28832
|
function DnDGrid(props) {
|
|
28737
28833
|
const {
|
|
28738
28834
|
children,
|
|
@@ -28741,13 +28837,13 @@ function DnDGrid(props) {
|
|
|
28741
28837
|
activeItemStyles,
|
|
28742
28838
|
lockAxis
|
|
28743
28839
|
} = props;
|
|
28744
|
-
const gridEl = (0,
|
|
28745
|
-
const dragEl = (0,
|
|
28746
|
-
const cloneEl = (0,
|
|
28747
|
-
const initialOrder = (0,
|
|
28748
|
-
const styleSnapshot = (0,
|
|
28749
|
-
const reorderViaKeyboard = (0,
|
|
28750
|
-
const transformFrom = (0,
|
|
28840
|
+
const gridEl = (0, import_react150.useRef)(null);
|
|
28841
|
+
const dragEl = (0, import_react150.useRef)(void 0);
|
|
28842
|
+
const cloneEl = (0, import_react150.useRef)(void 0);
|
|
28843
|
+
const initialOrder = (0, import_react150.useRef)(void 0);
|
|
28844
|
+
const styleSnapshot = (0, import_react150.useRef)(void 0);
|
|
28845
|
+
const reorderViaKeyboard = (0, import_react150.useRef)(false);
|
|
28846
|
+
const transformFrom = (0, import_react150.useRef)({
|
|
28751
28847
|
x: 0,
|
|
28752
28848
|
y: 0
|
|
28753
28849
|
});
|
|
@@ -28755,20 +28851,20 @@ function DnDGrid(props) {
|
|
|
28755
28851
|
const activeStyles3 = activeItemStyles ?? {
|
|
28756
28852
|
boxShadow: "bshModal"
|
|
28757
28853
|
};
|
|
28758
|
-
const getGridItems = (0,
|
|
28854
|
+
const getGridItems = (0, import_react150.useCallback)(() => {
|
|
28759
28855
|
return gridEl.current ? Array.from(gridEl.current.querySelectorAll(`[${gridItemIdKey}]`)) : [];
|
|
28760
28856
|
}, []);
|
|
28761
|
-
const getGridItemIdOrder = (0,
|
|
28857
|
+
const getGridItemIdOrder = (0, import_react150.useCallback)(() => {
|
|
28762
28858
|
return getGridItems().map((child) => child.getAttribute(gridItemIdKey)).filter(isDefined);
|
|
28763
28859
|
}, [getGridItems]);
|
|
28764
|
-
const initReorder = (0,
|
|
28860
|
+
const initReorder = (0, import_react150.useCallback)(() => {
|
|
28765
28861
|
if (gridEl.current && dragEl.current) {
|
|
28766
28862
|
initialOrder.current = getGridItemIdOrder();
|
|
28767
28863
|
styleSnapshot.current = snapshotElementStyle(dragEl.current);
|
|
28768
28864
|
applyActiveStyles(dragEl.current, activeStyles3);
|
|
28769
28865
|
}
|
|
28770
28866
|
}, [getGridItemIdOrder, activeStyles3]);
|
|
28771
|
-
const commitReorder = (0,
|
|
28867
|
+
const commitReorder = (0, import_react150.useCallback)(() => {
|
|
28772
28868
|
if (gridEl.current && dragEl.current) {
|
|
28773
28869
|
const currentOrder = getGridItemIdOrder();
|
|
28774
28870
|
if (!(0, import_fast_deep_equal2.default)(currentOrder, initialOrder.current)) onReorder(currentOrder);
|
|
@@ -28778,7 +28874,7 @@ function DnDGrid(props) {
|
|
|
28778
28874
|
initialOrder.current = currentOrder;
|
|
28779
28875
|
}
|
|
28780
28876
|
}, [onReorder, getGridItemIdOrder]);
|
|
28781
|
-
const cancelReorder = (0,
|
|
28877
|
+
const cancelReorder = (0, import_react150.useCallback)(() => {
|
|
28782
28878
|
if (gridEl.current && dragEl.current && initialOrder.current) {
|
|
28783
28879
|
const currentOrder = getGridItemIdOrder();
|
|
28784
28880
|
if (!(0, import_fast_deep_equal2.default)(currentOrder, initialOrder.current)) {
|
|
@@ -28800,7 +28896,7 @@ function DnDGrid(props) {
|
|
|
28800
28896
|
reorderViaKeyboard.current = false;
|
|
28801
28897
|
}
|
|
28802
28898
|
}, [getGridItemIdOrder, getGridItems]);
|
|
28803
|
-
const onMove = (0,
|
|
28899
|
+
const onMove = (0, import_react150.useCallback)((e) => {
|
|
28804
28900
|
if (!reorderViaKeyboard.current && dragEl.current && cloneEl.current && gridEl.current) {
|
|
28805
28901
|
const clientX = "clientX" in e ? e.clientX : e.touches[0].clientX;
|
|
28806
28902
|
const clientY = "clientY" in e ? e.clientY : e.touches[0].clientY;
|
|
@@ -28823,7 +28919,7 @@ function DnDGrid(props) {
|
|
|
28823
28919
|
}
|
|
28824
28920
|
}
|
|
28825
28921
|
}, [lockAxis]);
|
|
28826
|
-
const onDragEnd = (0,
|
|
28922
|
+
const onDragEnd = (0, import_react150.useCallback)((e) => {
|
|
28827
28923
|
if (!reorderViaKeyboard.current && dragEl.current && cloneEl.current && gridEl.current) {
|
|
28828
28924
|
e.preventDefault();
|
|
28829
28925
|
cloneEl.current.replaceWith(dragEl.current);
|
|
@@ -28834,7 +28930,7 @@ function DnDGrid(props) {
|
|
|
28834
28930
|
removePointerDragListeners(onMove, onDragEnd);
|
|
28835
28931
|
}
|
|
28836
28932
|
}, [commitReorder, onMove]);
|
|
28837
|
-
const onDragStart = (0,
|
|
28933
|
+
const onDragStart = (0, import_react150.useCallback)((e) => {
|
|
28838
28934
|
if (!reorderViaKeyboard.current && dragEl.current && gridEl.current) {
|
|
28839
28935
|
const rect = dragEl.current.getBoundingClientRect();
|
|
28840
28936
|
const clientX = "clientX" in e ? e.clientX : e.touches[0].clientX;
|
|
@@ -28862,10 +28958,10 @@ function DnDGrid(props) {
|
|
|
28862
28958
|
addPointerDragListeners(onMove, onDragEnd);
|
|
28863
28959
|
}
|
|
28864
28960
|
}, [initReorder, onMove, onDragEnd]);
|
|
28865
|
-
(0,
|
|
28961
|
+
(0, import_react150.useEffect)(() => {
|
|
28866
28962
|
return () => removePointerDragListeners(onMove, onDragEnd);
|
|
28867
28963
|
}, [onMove, onDragEnd]);
|
|
28868
|
-
const onDragHandleKeyDown = (0,
|
|
28964
|
+
const onDragHandleKeyDown = (0, import_react150.useCallback)((e) => {
|
|
28869
28965
|
const moveHandle = e.target;
|
|
28870
28966
|
if (dragEl.current instanceof HTMLElement && moveHandle instanceof HTMLElement && gridEl.current) {
|
|
28871
28967
|
const isSpaceKey = e.key === " ";
|
|
@@ -28913,10 +29009,10 @@ function DnDGrid(props) {
|
|
|
28913
29009
|
}
|
|
28914
29010
|
}
|
|
28915
29011
|
}, [cancelReorder, commitReorder, initReorder, getGridItems, lockAxis]);
|
|
28916
|
-
return /* @__PURE__ */ (0,
|
|
29012
|
+
return /* @__PURE__ */ (0, import_jsx_runtime219.jsx)(DnDGridContext.Provider, { value: {
|
|
28917
29013
|
dragEl,
|
|
28918
29014
|
onDragHandleKeyDown
|
|
28919
|
-
}, children: /* @__PURE__ */ (0,
|
|
29015
|
+
}, children: /* @__PURE__ */ (0, import_jsx_runtime219.jsx)("div", { ref: gridEl, ...(0, import_runtime147.trussProps)({
|
|
28920
29016
|
...{
|
|
28921
29017
|
containerType: "ctis",
|
|
28922
29018
|
display: "dg"
|
|
@@ -28946,15 +29042,15 @@ function applyActiveStyles(el, activeStyles3) {
|
|
|
28946
29042
|
const {
|
|
28947
29043
|
className,
|
|
28948
29044
|
style
|
|
28949
|
-
} = (0,
|
|
29045
|
+
} = (0, import_runtime147.trussProps)(activeStyles3);
|
|
28950
29046
|
if (className) el.classList.add(...className.split(" ").filter(Boolean));
|
|
28951
29047
|
if (style) setInlineStyles(el, style);
|
|
28952
29048
|
}
|
|
28953
29049
|
|
|
28954
29050
|
// src/components/DnDGrid/DnDGridItemHandle.tsx
|
|
28955
29051
|
var import_react_aria65 = require("react-aria");
|
|
28956
|
-
var
|
|
28957
|
-
var
|
|
29052
|
+
var import_runtime148 = require("@homebound/truss/runtime");
|
|
29053
|
+
var import_jsx_runtime220 = require("react/jsx-runtime");
|
|
28958
29054
|
function DnDGridItemHandle(props) {
|
|
28959
29055
|
const {
|
|
28960
29056
|
dragHandleProps,
|
|
@@ -28983,7 +29079,7 @@ function DnDGridItemHandle(props) {
|
|
|
28983
29079
|
borderRadius: "br4",
|
|
28984
29080
|
borderWidth: "bw1"
|
|
28985
29081
|
};
|
|
28986
|
-
return /* @__PURE__ */ (0,
|
|
29082
|
+
return /* @__PURE__ */ (0, import_jsx_runtime220.jsx)("button", { ...(0, import_runtime148.trussProps)({
|
|
28987
29083
|
...compact ? iconButtonCompact : iconButtonNormal,
|
|
28988
29084
|
...{
|
|
28989
29085
|
cursor: "cur_grab",
|
|
@@ -29002,15 +29098,15 @@ function DnDGridItemHandle(props) {
|
|
|
29002
29098
|
...isHovered && {
|
|
29003
29099
|
backgroundColor: "bgGray200"
|
|
29004
29100
|
}
|
|
29005
|
-
}), ...(0, import_react_aria65.mergeProps)(dragHandleProps, focusProps, hoverProps), ...tid, children: /* @__PURE__ */ (0,
|
|
29101
|
+
}), ...(0, import_react_aria65.mergeProps)(dragHandleProps, focusProps, hoverProps), ...tid, children: /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(Icon, { icon, inc: compact ? 2 : void 0, color }) });
|
|
29006
29102
|
}
|
|
29007
29103
|
|
|
29008
29104
|
// src/components/DnDGrid/useDnDGridItem.tsx
|
|
29009
|
-
var
|
|
29105
|
+
var import_react151 = require("react");
|
|
29010
29106
|
function useDnDGridItem(props) {
|
|
29011
29107
|
const { id, itemRef } = props;
|
|
29012
29108
|
const { dragEl, onDragHandleKeyDown } = useDnDGridContext();
|
|
29013
|
-
const { dragItemProps, dragHandleProps } = (0,
|
|
29109
|
+
const { dragItemProps, dragHandleProps } = (0, import_react151.useMemo)(() => {
|
|
29014
29110
|
function initDraggable() {
|
|
29015
29111
|
if (itemRef.current) {
|
|
29016
29112
|
dragEl.current = itemRef.current;
|
|
@@ -29083,7 +29179,7 @@ var BaseFilter = class {
|
|
|
29083
29179
|
};
|
|
29084
29180
|
|
|
29085
29181
|
// src/components/Filters/DateFilter.tsx
|
|
29086
|
-
var
|
|
29182
|
+
var import_jsx_runtime221 = require("react/jsx-runtime");
|
|
29087
29183
|
function dateFilter(props) {
|
|
29088
29184
|
return (key) => new DateFilter(key, props);
|
|
29089
29185
|
}
|
|
@@ -29105,10 +29201,10 @@ var DateFilter = class extends BaseFilter {
|
|
|
29105
29201
|
}
|
|
29106
29202
|
render(value, setValue, tid, inModal, vertical) {
|
|
29107
29203
|
const { label, operations, getOperationValue, getOperationLabel, defaultValue } = this.props;
|
|
29108
|
-
return /* @__PURE__ */ (0,
|
|
29109
|
-
vertical && /* @__PURE__ */ (0,
|
|
29110
|
-
/* @__PURE__ */ (0,
|
|
29111
|
-
/* @__PURE__ */ (0,
|
|
29204
|
+
return /* @__PURE__ */ (0, import_jsx_runtime221.jsxs)(import_jsx_runtime221.Fragment, { children: [
|
|
29205
|
+
vertical && /* @__PURE__ */ (0, import_jsx_runtime221.jsx)(Label, { label }),
|
|
29206
|
+
/* @__PURE__ */ (0, import_jsx_runtime221.jsxs)(CompoundField, { children: [
|
|
29207
|
+
/* @__PURE__ */ (0, import_jsx_runtime221.jsx)(
|
|
29112
29208
|
SelectField,
|
|
29113
29209
|
{
|
|
29114
29210
|
sizeToContent: true,
|
|
@@ -29130,7 +29226,7 @@ var DateFilter = class extends BaseFilter {
|
|
|
29130
29226
|
...tid[`${defaultTestId(this.label)}_dateOperation`]
|
|
29131
29227
|
}
|
|
29132
29228
|
),
|
|
29133
|
-
/* @__PURE__ */ (0,
|
|
29229
|
+
/* @__PURE__ */ (0, import_jsx_runtime221.jsx)(
|
|
29134
29230
|
DateField,
|
|
29135
29231
|
{
|
|
29136
29232
|
labelStyle: "inline",
|
|
@@ -29154,7 +29250,7 @@ function isDateFilterValue(value) {
|
|
|
29154
29250
|
}
|
|
29155
29251
|
|
|
29156
29252
|
// src/components/Filters/DateRangeFilter.tsx
|
|
29157
|
-
var
|
|
29253
|
+
var import_jsx_runtime222 = require("react/jsx-runtime");
|
|
29158
29254
|
function dateRangeFilter(props) {
|
|
29159
29255
|
return (key) => new DateRangeFilter(key, props);
|
|
29160
29256
|
}
|
|
@@ -29176,9 +29272,9 @@ var DateRangeFilter = class extends BaseFilter {
|
|
|
29176
29272
|
}
|
|
29177
29273
|
render(value, setValue, tid, inModal, vertical) {
|
|
29178
29274
|
const { label, placeholderText, disabledDays, testFieldLabel, defaultValue } = this.props;
|
|
29179
|
-
return /* @__PURE__ */ (0,
|
|
29180
|
-
vertical && /* @__PURE__ */ (0,
|
|
29181
|
-
/* @__PURE__ */ (0,
|
|
29275
|
+
return /* @__PURE__ */ (0, import_jsx_runtime222.jsxs)(import_jsx_runtime222.Fragment, { children: [
|
|
29276
|
+
vertical && /* @__PURE__ */ (0, import_jsx_runtime222.jsx)(Label, { label }),
|
|
29277
|
+
/* @__PURE__ */ (0, import_jsx_runtime222.jsx)(
|
|
29182
29278
|
DateRangeField,
|
|
29183
29279
|
{
|
|
29184
29280
|
labelStyle: "inline",
|
|
@@ -29234,7 +29330,7 @@ function resolveNestedOptions(optionsOrLoad) {
|
|
|
29234
29330
|
}
|
|
29235
29331
|
|
|
29236
29332
|
// src/components/Filters/MultiFilter.tsx
|
|
29237
|
-
var
|
|
29333
|
+
var import_jsx_runtime223 = require("react/jsx-runtime");
|
|
29238
29334
|
function multiFilter(props) {
|
|
29239
29335
|
return (key) => new MultiFilter(key, props);
|
|
29240
29336
|
}
|
|
@@ -29248,7 +29344,7 @@ var MultiFilter = class extends BaseFilter {
|
|
|
29248
29344
|
const { disabledOptions } = this.props;
|
|
29249
29345
|
const disabledOptionsWithReasons = Object.fromEntries(disabledOptions?.map(disabledOptionToKeyedTuple) ?? []);
|
|
29250
29346
|
const disabledKeys = Object.keys(disabledOptionsWithReasons);
|
|
29251
|
-
return /* @__PURE__ */ (0,
|
|
29347
|
+
return /* @__PURE__ */ (0, import_jsx_runtime223.jsx)(
|
|
29252
29348
|
ToggleChipGroup,
|
|
29253
29349
|
{
|
|
29254
29350
|
label: this.label,
|
|
@@ -29272,7 +29368,7 @@ var MultiFilter = class extends BaseFilter {
|
|
|
29272
29368
|
);
|
|
29273
29369
|
}
|
|
29274
29370
|
const { defaultValue, nothingSelectedText, ...props } = this.props;
|
|
29275
|
-
return /* @__PURE__ */ (0,
|
|
29371
|
+
return /* @__PURE__ */ (0, import_jsx_runtime223.jsx)(
|
|
29276
29372
|
MultiSelectField,
|
|
29277
29373
|
{
|
|
29278
29374
|
...props,
|
|
@@ -29291,7 +29387,7 @@ var MultiFilter = class extends BaseFilter {
|
|
|
29291
29387
|
};
|
|
29292
29388
|
|
|
29293
29389
|
// src/components/Filters/NumberRangeFilter.tsx
|
|
29294
|
-
var
|
|
29390
|
+
var import_jsx_runtime224 = require("react/jsx-runtime");
|
|
29295
29391
|
function numberRangeFilter(props) {
|
|
29296
29392
|
return (key) => new NumberRangeFilter(key, props);
|
|
29297
29393
|
}
|
|
@@ -29308,10 +29404,10 @@ var NumberRangeFilter = class extends BaseFilter {
|
|
|
29308
29404
|
} = this.props;
|
|
29309
29405
|
const min = value?.min ?? void 0;
|
|
29310
29406
|
const max = value?.max ?? void 0;
|
|
29311
|
-
return /* @__PURE__ */ (0,
|
|
29312
|
-
vertical && /* @__PURE__ */ (0,
|
|
29313
|
-
/* @__PURE__ */ (0,
|
|
29314
|
-
/* @__PURE__ */ (0,
|
|
29407
|
+
return /* @__PURE__ */ (0, import_jsx_runtime224.jsxs)(import_jsx_runtime224.Fragment, { children: [
|
|
29408
|
+
vertical && /* @__PURE__ */ (0, import_jsx_runtime224.jsxs)("div", { ...tid, children: [
|
|
29409
|
+
/* @__PURE__ */ (0, import_jsx_runtime224.jsx)(Label, { label }),
|
|
29410
|
+
/* @__PURE__ */ (0, import_jsx_runtime224.jsx)("div", { className: "pb1", children: /* @__PURE__ */ (0, import_jsx_runtime224.jsx)(NumberField, { labelStyle: "inline", clearable: true, label: "Min", value: min, type: numberFieldType, numberFormatOptions, onChange: (minVal) => {
|
|
29315
29411
|
const maxValue = max ? {
|
|
29316
29412
|
max
|
|
29317
29413
|
} : {};
|
|
@@ -29320,7 +29416,7 @@ var NumberRangeFilter = class extends BaseFilter {
|
|
|
29320
29416
|
...maxValue
|
|
29321
29417
|
} : void 0);
|
|
29322
29418
|
}, ...tid[`${defaultTestId(label)}_min_vertical`] }) }),
|
|
29323
|
-
/* @__PURE__ */ (0,
|
|
29419
|
+
/* @__PURE__ */ (0, import_jsx_runtime224.jsx)(NumberField, { labelStyle: "inline", clearable: true, label: "Max", value: max, type: numberFieldType, numberFormatOptions, onChange: (maxVal) => {
|
|
29324
29420
|
const minValue = min ? {
|
|
29325
29421
|
min
|
|
29326
29422
|
} : {};
|
|
@@ -29330,8 +29426,8 @@ var NumberRangeFilter = class extends BaseFilter {
|
|
|
29330
29426
|
} : void 0);
|
|
29331
29427
|
}, ...tid[`${defaultTestId(label)}_max_vertical`] })
|
|
29332
29428
|
] }),
|
|
29333
|
-
!vertical && /* @__PURE__ */ (0,
|
|
29334
|
-
/* @__PURE__ */ (0,
|
|
29429
|
+
!vertical && /* @__PURE__ */ (0, import_jsx_runtime224.jsxs)(CompoundField, { ...tid, children: [
|
|
29430
|
+
/* @__PURE__ */ (0, import_jsx_runtime224.jsx)(
|
|
29335
29431
|
NumberField,
|
|
29336
29432
|
{
|
|
29337
29433
|
sizeToContent: !inModal,
|
|
@@ -29353,7 +29449,7 @@ var NumberRangeFilter = class extends BaseFilter {
|
|
|
29353
29449
|
...tid[`${defaultTestId(label)}_min`]
|
|
29354
29450
|
}
|
|
29355
29451
|
),
|
|
29356
|
-
/* @__PURE__ */ (0,
|
|
29452
|
+
/* @__PURE__ */ (0, import_jsx_runtime224.jsx)(NumberField, { sizeToContent: !inModal, labelStyle: "inline", clearable: true, label: !inModal ? `${label} Max` : "Max", value: max, type: numberFieldType, numberFormatOptions, onChange: (maxVal) => {
|
|
29357
29453
|
const minValue = min ? {
|
|
29358
29454
|
min
|
|
29359
29455
|
} : {};
|
|
@@ -29368,7 +29464,7 @@ var NumberRangeFilter = class extends BaseFilter {
|
|
|
29368
29464
|
};
|
|
29369
29465
|
|
|
29370
29466
|
// src/components/Filters/SingleFilter.tsx
|
|
29371
|
-
var
|
|
29467
|
+
var import_jsx_runtime225 = require("react/jsx-runtime");
|
|
29372
29468
|
function singleFilter(props) {
|
|
29373
29469
|
return (key) => new SingleFilter(key, props);
|
|
29374
29470
|
}
|
|
@@ -29389,7 +29485,7 @@ var SingleFilter = class extends BaseFilter {
|
|
|
29389
29485
|
...props
|
|
29390
29486
|
} = this.props;
|
|
29391
29487
|
const options = Array.isArray(maybeOptions) ? [allOption, ...maybeOptions] : { ...maybeOptions, current: maybeOptions.current };
|
|
29392
|
-
return /* @__PURE__ */ (0,
|
|
29488
|
+
return /* @__PURE__ */ (0, import_jsx_runtime225.jsx)(
|
|
29393
29489
|
SelectField,
|
|
29394
29490
|
{
|
|
29395
29491
|
...props,
|
|
@@ -29409,7 +29505,7 @@ var SingleFilter = class extends BaseFilter {
|
|
|
29409
29505
|
};
|
|
29410
29506
|
|
|
29411
29507
|
// src/components/Filters/TreeFilter.tsx
|
|
29412
|
-
var
|
|
29508
|
+
var import_jsx_runtime226 = require("react/jsx-runtime");
|
|
29413
29509
|
function treeFilter(props) {
|
|
29414
29510
|
return (key) => new TreeFilter(key, props);
|
|
29415
29511
|
}
|
|
@@ -29420,7 +29516,7 @@ var TreeFilter = class extends BaseFilter {
|
|
|
29420
29516
|
}
|
|
29421
29517
|
render(value, setValue, tid, inModal, vertical) {
|
|
29422
29518
|
const { defaultValue, nothingSelectedText, filterBy = "root", ...props } = this.props;
|
|
29423
|
-
return /* @__PURE__ */ (0,
|
|
29519
|
+
return /* @__PURE__ */ (0, import_jsx_runtime226.jsx)(
|
|
29424
29520
|
TreeSelectField,
|
|
29425
29521
|
{
|
|
29426
29522
|
...props,
|
|
@@ -29440,7 +29536,7 @@ var TreeFilter = class extends BaseFilter {
|
|
|
29440
29536
|
};
|
|
29441
29537
|
|
|
29442
29538
|
// src/components/Filters/BooleanFilter.tsx
|
|
29443
|
-
var
|
|
29539
|
+
var import_jsx_runtime227 = require("react/jsx-runtime");
|
|
29444
29540
|
function booleanFilter(props) {
|
|
29445
29541
|
return (key) => new BooleanFilter(key, props);
|
|
29446
29542
|
}
|
|
@@ -29452,7 +29548,7 @@ var BooleanFilter = class extends BaseFilter {
|
|
|
29452
29548
|
}
|
|
29453
29549
|
render(value, setValue, tid, inModal, vertical) {
|
|
29454
29550
|
const { options = defaultBooleanOptions, label, defaultValue, ...props } = this.props;
|
|
29455
|
-
return /* @__PURE__ */ (0,
|
|
29551
|
+
return /* @__PURE__ */ (0, import_jsx_runtime227.jsx)(
|
|
29456
29552
|
SelectField,
|
|
29457
29553
|
{
|
|
29458
29554
|
...props,
|
|
@@ -29479,7 +29575,7 @@ var defaultBooleanOptions = [
|
|
|
29479
29575
|
];
|
|
29480
29576
|
|
|
29481
29577
|
// src/components/Filters/CheckboxFilter.tsx
|
|
29482
|
-
var
|
|
29578
|
+
var import_jsx_runtime228 = require("react/jsx-runtime");
|
|
29483
29579
|
function checkboxFilter(props) {
|
|
29484
29580
|
return (key) => new CheckboxFilter(key, {
|
|
29485
29581
|
// If the user has set the offValue, that should be the default b/c we're only a two-state
|
|
@@ -29494,7 +29590,7 @@ var CheckboxFilter = class extends BaseFilter {
|
|
|
29494
29590
|
}
|
|
29495
29591
|
render(value, setValue, tid, inModal, vertical) {
|
|
29496
29592
|
const { defaultValue, onValue = true, offValue = void 0, ...props } = this.props;
|
|
29497
|
-
return /* @__PURE__ */ (0,
|
|
29593
|
+
return /* @__PURE__ */ (0, import_jsx_runtime228.jsx)(
|
|
29498
29594
|
Checkbox,
|
|
29499
29595
|
{
|
|
29500
29596
|
...props,
|
|
@@ -29513,7 +29609,7 @@ var CheckboxFilter = class extends BaseFilter {
|
|
|
29513
29609
|
};
|
|
29514
29610
|
|
|
29515
29611
|
// src/components/Filters/ToggleFilter.tsx
|
|
29516
|
-
var
|
|
29612
|
+
var import_jsx_runtime229 = require("react/jsx-runtime");
|
|
29517
29613
|
function toggleFilter(props) {
|
|
29518
29614
|
return (key) => new ToggleFilter(key, {
|
|
29519
29615
|
// If the user has set the offValue, that should be the default b/c we're only a two-state
|
|
@@ -29528,7 +29624,7 @@ var ToggleFilter = class extends BaseFilter {
|
|
|
29528
29624
|
}
|
|
29529
29625
|
render(value, setValue, tid, inModal, vertical) {
|
|
29530
29626
|
const { defaultValue, onValue = true, offValue = void 0, ...props } = this.props;
|
|
29531
|
-
return /* @__PURE__ */ (0,
|
|
29627
|
+
return /* @__PURE__ */ (0, import_jsx_runtime229.jsx)(
|
|
29532
29628
|
Switch,
|
|
29533
29629
|
{
|
|
29534
29630
|
...props,
|
|
@@ -29548,11 +29644,11 @@ var ToggleFilter = class extends BaseFilter {
|
|
|
29548
29644
|
};
|
|
29549
29645
|
|
|
29550
29646
|
// src/components/Grid/ResponsiveGrid.tsx
|
|
29551
|
-
var
|
|
29647
|
+
var import_react154 = require("react");
|
|
29552
29648
|
|
|
29553
29649
|
// src/components/Grid/useResponsiveGrid.ts
|
|
29554
|
-
var
|
|
29555
|
-
var
|
|
29650
|
+
var import_react152 = require("react");
|
|
29651
|
+
var import_runtime149 = require("@homebound/truss/runtime");
|
|
29556
29652
|
var __maybeInc28 = (inc) => {
|
|
29557
29653
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
29558
29654
|
};
|
|
@@ -29562,7 +29658,7 @@ function useResponsiveGrid(props) {
|
|
|
29562
29658
|
gap,
|
|
29563
29659
|
columns
|
|
29564
29660
|
} = props;
|
|
29565
|
-
const gridStyles = (0,
|
|
29661
|
+
const gridStyles = (0, import_react152.useMemo)(() => {
|
|
29566
29662
|
const gapCount = columns - 1;
|
|
29567
29663
|
const totalGapWidth = gap * gapCount;
|
|
29568
29664
|
const maxColumnWidth = `calc((100% - ${totalGapWidth}px) / ${columns})`;
|
|
@@ -29571,11 +29667,11 @@ function useResponsiveGrid(props) {
|
|
|
29571
29667
|
return {
|
|
29572
29668
|
display: "dg",
|
|
29573
29669
|
gridTemplateColumns: ["gtc_var", {
|
|
29574
|
-
"--gridTemplateColumns": (0,
|
|
29670
|
+
"--gridTemplateColumns": (0, import_runtime149.maybeCssVar)(gridTemplateColumns)
|
|
29575
29671
|
}],
|
|
29576
29672
|
containerType: "ctis",
|
|
29577
29673
|
gap: ["gap_var", {
|
|
29578
|
-
"--gap": (0,
|
|
29674
|
+
"--gap": (0, import_runtime149.maybeCssVar)(__maybeInc28(gridGap))
|
|
29579
29675
|
}]
|
|
29580
29676
|
};
|
|
29581
29677
|
}, [minColumnWidth, gap, columns]);
|
|
@@ -29585,13 +29681,13 @@ function useResponsiveGrid(props) {
|
|
|
29585
29681
|
}
|
|
29586
29682
|
|
|
29587
29683
|
// src/components/Grid/utils.ts
|
|
29588
|
-
var
|
|
29684
|
+
var import_react153 = require("react");
|
|
29589
29685
|
var gridItemDataAttribute = "data-grid-item-span";
|
|
29590
|
-
var ResponsiveGridContext = (0,
|
|
29686
|
+
var ResponsiveGridContext = (0, import_react153.createContext)(void 0);
|
|
29591
29687
|
|
|
29592
29688
|
// src/components/Grid/ResponsiveGrid.tsx
|
|
29593
|
-
var
|
|
29594
|
-
var
|
|
29689
|
+
var import_runtime150 = require("@homebound/truss/runtime");
|
|
29690
|
+
var import_jsx_runtime230 = require("react/jsx-runtime");
|
|
29595
29691
|
function ResponsiveGrid(props) {
|
|
29596
29692
|
const {
|
|
29597
29693
|
children,
|
|
@@ -29606,27 +29702,27 @@ function ResponsiveGrid(props) {
|
|
|
29606
29702
|
gap,
|
|
29607
29703
|
columns
|
|
29608
29704
|
});
|
|
29609
|
-
const config = (0,
|
|
29705
|
+
const config = (0, import_react154.useMemo)(() => ({
|
|
29610
29706
|
minColumnWidth,
|
|
29611
29707
|
gap,
|
|
29612
29708
|
columns
|
|
29613
29709
|
}), [minColumnWidth, gap, columns]);
|
|
29614
|
-
return /* @__PURE__ */ (0,
|
|
29710
|
+
return /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(ResponsiveGridContext.Provider, { value: config, children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)("div", { ...(0, import_runtime150.trussProps)(gridStyles), children }) });
|
|
29615
29711
|
}
|
|
29616
29712
|
|
|
29617
29713
|
// src/components/Grid/ResponsiveGridItem.tsx
|
|
29618
29714
|
var import_react_aria66 = require("react-aria");
|
|
29619
|
-
var
|
|
29715
|
+
var import_runtime151 = require("@homebound/truss/runtime");
|
|
29620
29716
|
|
|
29621
29717
|
// src/components/Grid/useResponsiveGridItem.ts
|
|
29622
|
-
var
|
|
29718
|
+
var import_react155 = require("react");
|
|
29623
29719
|
var injectedResponsiveGridClasses = /* @__PURE__ */ new Set();
|
|
29624
29720
|
var responsiveGridStyleEl;
|
|
29625
29721
|
function useResponsiveGridItem(props) {
|
|
29626
29722
|
const { colSpan = 1, gridConfig } = props;
|
|
29627
|
-
const contextConfig = (0,
|
|
29723
|
+
const contextConfig = (0, import_react155.useContext)(ResponsiveGridContext);
|
|
29628
29724
|
const config = gridConfig ?? contextConfig;
|
|
29629
|
-
const { className, cssText } = (0,
|
|
29725
|
+
const { className, cssText } = (0, import_react155.useMemo)(() => {
|
|
29630
29726
|
if (!config || colSpan <= 1) return { className: "", cssText: "" };
|
|
29631
29727
|
const { minColumnWidth, gap } = config;
|
|
29632
29728
|
const className2 = responsiveGridItemClassName(config, colSpan);
|
|
@@ -29649,7 +29745,7 @@ function useResponsiveGridItem(props) {
|
|
|
29649
29745
|
};
|
|
29650
29746
|
}
|
|
29651
29747
|
function useResponsiveGridItemStyle(className, cssText) {
|
|
29652
|
-
(0,
|
|
29748
|
+
(0, import_react155.useEffect)(
|
|
29653
29749
|
function() {
|
|
29654
29750
|
if (!className || !cssText || typeof document === "undefined") return;
|
|
29655
29751
|
if (!responsiveGridStyleEl) {
|
|
@@ -29671,7 +29767,7 @@ function responsiveGridItemClassName(config, colSpan) {
|
|
|
29671
29767
|
}
|
|
29672
29768
|
|
|
29673
29769
|
// src/components/Grid/ResponsiveGridItem.tsx
|
|
29674
|
-
var
|
|
29770
|
+
var import_jsx_runtime231 = require("react/jsx-runtime");
|
|
29675
29771
|
function ResponsiveGridItem(props) {
|
|
29676
29772
|
const {
|
|
29677
29773
|
colSpan,
|
|
@@ -29683,33 +29779,33 @@ function ResponsiveGridItem(props) {
|
|
|
29683
29779
|
} = useResponsiveGridItem({
|
|
29684
29780
|
colSpan
|
|
29685
29781
|
});
|
|
29686
|
-
return /* @__PURE__ */ (0,
|
|
29782
|
+
return /* @__PURE__ */ (0, import_jsx_runtime231.jsx)("div", { ...(0, import_react_aria66.mergeProps)(gridItemProps, (0, import_runtime151.trussProps)(gridItemStyles)), children });
|
|
29687
29783
|
}
|
|
29688
29784
|
|
|
29689
29785
|
// src/components/HbLoadingSpinner.tsx
|
|
29690
|
-
var
|
|
29786
|
+
var import_react156 = __toESM(require("react"), 1);
|
|
29691
29787
|
|
|
29692
29788
|
// src/components/HbLoadingSpinner.base64.ts
|
|
29693
29789
|
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";
|
|
29694
29790
|
|
|
29695
29791
|
// src/components/HbLoadingSpinner.tsx
|
|
29696
|
-
var
|
|
29792
|
+
var import_jsx_runtime232 = require("react/jsx-runtime");
|
|
29697
29793
|
function HbLoadingSpinner({
|
|
29698
29794
|
noQuips,
|
|
29699
29795
|
extraQuips = [],
|
|
29700
29796
|
extraQuipsOnly,
|
|
29701
29797
|
iconOnly
|
|
29702
29798
|
}) {
|
|
29703
|
-
const ctx = (0,
|
|
29799
|
+
const ctx = (0, import_react156.useContext)(HbLoadingSpinnerContext);
|
|
29704
29800
|
const tid = useTestIds({}, "hbSpinner");
|
|
29705
|
-
const quip = (0,
|
|
29801
|
+
const quip = (0, import_react156.useMemo)(() => {
|
|
29706
29802
|
const allQuips = extraQuipsOnly && extraQuips.length !== 0 ? extraQuips : [...ctx.quips, ...extraQuips];
|
|
29707
29803
|
const forceQuips = extraQuips.length !== 0 || noQuips === false;
|
|
29708
29804
|
if (ctx.noQuips && !forceQuips || noQuips || allQuips.length === 0) return "Loading...";
|
|
29709
29805
|
return allQuips[Math.floor(Math.random() * allQuips.length)];
|
|
29710
29806
|
}, [ctx.noQuips, ctx.quips, extraQuips, extraQuipsOnly, noQuips]);
|
|
29711
|
-
return /* @__PURE__ */ (0,
|
|
29712
|
-
/* @__PURE__ */ (0,
|
|
29807
|
+
return /* @__PURE__ */ (0, import_jsx_runtime232.jsxs)("div", { className: "df fdc jcc aic", ...tid, children: [
|
|
29808
|
+
/* @__PURE__ */ (0, import_jsx_runtime232.jsx)(
|
|
29713
29809
|
"img",
|
|
29714
29810
|
{
|
|
29715
29811
|
src: HbLoadingSpinner_base64_default,
|
|
@@ -29719,7 +29815,7 @@ function HbLoadingSpinner({
|
|
|
29719
29815
|
...tid.gif
|
|
29720
29816
|
}
|
|
29721
29817
|
),
|
|
29722
|
-
!iconOnly && /* @__PURE__ */ (0,
|
|
29818
|
+
!iconOnly && /* @__PURE__ */ (0, import_jsx_runtime232.jsx)(
|
|
29723
29819
|
"div",
|
|
29724
29820
|
{
|
|
29725
29821
|
"data-chromatic": "ignore",
|
|
@@ -29732,7 +29828,7 @@ function HbLoadingSpinner({
|
|
|
29732
29828
|
var dotDotDot = (str) => str.concat("...");
|
|
29733
29829
|
var HB_QUIPS_MISSION = ["Loading", "One Team", "On a Mission", "Executing Relentlessly", "Building Better", "In Service of Our Customers"].map(dotDotDot);
|
|
29734
29830
|
var HB_QUIPS_FLAVOR = ["HOM is HOW", "Scaling Massively", "#LoveIt"].map(dotDotDot);
|
|
29735
|
-
var HbLoadingSpinnerContext =
|
|
29831
|
+
var HbLoadingSpinnerContext = import_react156.default.createContext({
|
|
29736
29832
|
quips: ["Loading..."],
|
|
29737
29833
|
noQuips: false
|
|
29738
29834
|
});
|
|
@@ -29740,60 +29836,60 @@ function HbSpinnerProvider({
|
|
|
29740
29836
|
quips = [],
|
|
29741
29837
|
children
|
|
29742
29838
|
}) {
|
|
29743
|
-
const state = (0,
|
|
29839
|
+
const state = (0, import_react156.useMemo)(() => ({
|
|
29744
29840
|
quips,
|
|
29745
29841
|
noQuips: quips.length === 0
|
|
29746
29842
|
}), [quips]);
|
|
29747
|
-
return /* @__PURE__ */ (0,
|
|
29843
|
+
return /* @__PURE__ */ (0, import_jsx_runtime232.jsx)(HbLoadingSpinnerContext.Provider, { value: state, children });
|
|
29748
29844
|
}
|
|
29749
29845
|
|
|
29750
29846
|
// src/components/Modal/OpenModal.tsx
|
|
29751
|
-
var
|
|
29752
|
-
var
|
|
29847
|
+
var import_react157 = require("react");
|
|
29848
|
+
var import_jsx_runtime233 = require("react/jsx-runtime");
|
|
29753
29849
|
function OpenModal(props) {
|
|
29754
29850
|
const { openModal } = useModal();
|
|
29755
29851
|
const { size, children, keepOpen, aiMode } = props;
|
|
29756
|
-
(0,
|
|
29852
|
+
(0, import_react157.useEffect)(() => {
|
|
29757
29853
|
if (!keepOpen) {
|
|
29758
29854
|
openModal({ size, content: children, aiMode });
|
|
29759
29855
|
}
|
|
29760
29856
|
}, [keepOpen, openModal, size, children, aiMode]);
|
|
29761
29857
|
if (keepOpen) {
|
|
29762
|
-
return /* @__PURE__ */ (0,
|
|
29858
|
+
return /* @__PURE__ */ (0, import_jsx_runtime233.jsx)(Modal, { size, content: children, aiMode });
|
|
29763
29859
|
} else {
|
|
29764
|
-
return /* @__PURE__ */ (0,
|
|
29860
|
+
return /* @__PURE__ */ (0, import_jsx_runtime233.jsx)("div", { children: "dummy content" });
|
|
29765
29861
|
}
|
|
29766
29862
|
}
|
|
29767
29863
|
|
|
29768
29864
|
// src/components/Navbar/NavbarMobileMenu.tsx
|
|
29769
29865
|
var import_framer_motion7 = require("framer-motion");
|
|
29770
|
-
var
|
|
29866
|
+
var import_react159 = require("react");
|
|
29771
29867
|
var import_react_aria67 = require("react-aria");
|
|
29772
29868
|
var import_react_dom9 = require("react-dom");
|
|
29773
29869
|
var import_react_router_dom7 = require("react-router-dom");
|
|
29774
29870
|
|
|
29775
29871
|
// src/layouts/NavbarLayout/MobileSubNavContext.tsx
|
|
29776
|
-
var
|
|
29777
|
-
var
|
|
29778
|
-
var MobileSubNavContext = (0,
|
|
29872
|
+
var import_react158 = require("react");
|
|
29873
|
+
var import_jsx_runtime234 = require("react/jsx-runtime");
|
|
29874
|
+
var MobileSubNavContext = (0, import_react158.createContext)(void 0);
|
|
29779
29875
|
function MobileSubNavProvider(props) {
|
|
29780
|
-
const [mobileSubNav, setMobileSubNav] = (0,
|
|
29781
|
-
const value = (0,
|
|
29782
|
-
return /* @__PURE__ */ (0,
|
|
29876
|
+
const [mobileSubNav, setMobileSubNav] = (0, import_react158.useState)(null);
|
|
29877
|
+
const value = (0, import_react158.useMemo)(() => ({ mobileSubNav, setMobileSubNav }), [mobileSubNav]);
|
|
29878
|
+
return /* @__PURE__ */ (0, import_jsx_runtime234.jsx)(MobileSubNavContext.Provider, { value, children: props.children });
|
|
29783
29879
|
}
|
|
29784
29880
|
function useMobileSubNav() {
|
|
29785
|
-
return (0,
|
|
29881
|
+
return (0, import_react158.useContext)(MobileSubNavContext)?.mobileSubNav ?? null;
|
|
29786
29882
|
}
|
|
29787
29883
|
function useRegisterMobileSubNav(content2) {
|
|
29788
|
-
const ctx = (0,
|
|
29884
|
+
const ctx = (0, import_react158.useContext)(MobileSubNavContext);
|
|
29789
29885
|
const setMobileSubNav = ctx?.setMobileSubNav;
|
|
29790
29886
|
const enabled = !useBreakpoint().mdAndUp;
|
|
29791
29887
|
const { top, items, footer } = content2;
|
|
29792
|
-
(0,
|
|
29888
|
+
(0, import_react158.useLayoutEffect)(() => {
|
|
29793
29889
|
if (!setMobileSubNav || !enabled) return;
|
|
29794
29890
|
setMobileSubNav({ top, items, footer });
|
|
29795
29891
|
}, [setMobileSubNav, enabled, top, items, footer]);
|
|
29796
|
-
(0,
|
|
29892
|
+
(0, import_react158.useLayoutEffect)(() => {
|
|
29797
29893
|
if (!setMobileSubNav || !enabled) return;
|
|
29798
29894
|
return () => setMobileSubNav(null);
|
|
29799
29895
|
}, [setMobileSubNav, enabled]);
|
|
@@ -29801,15 +29897,15 @@ function useRegisterMobileSubNav(content2) {
|
|
|
29801
29897
|
}
|
|
29802
29898
|
|
|
29803
29899
|
// src/components/Navbar/NavbarMobileMenu.tsx
|
|
29804
|
-
var
|
|
29805
|
-
var
|
|
29900
|
+
var import_runtime152 = require("@homebound/truss/runtime");
|
|
29901
|
+
var import_jsx_runtime235 = require("react/jsx-runtime");
|
|
29806
29902
|
function NavbarMobileMenu(props) {
|
|
29807
29903
|
const {
|
|
29808
29904
|
items
|
|
29809
29905
|
} = props;
|
|
29810
29906
|
const tid = useTestIds(props, "navbar");
|
|
29811
|
-
const [isOpen2, setIsOpen] = (0,
|
|
29812
|
-
const [level, setLevel] = (0,
|
|
29907
|
+
const [isOpen2, setIsOpen] = (0, import_react159.useState)(false);
|
|
29908
|
+
const [level, setLevel] = (0, import_react159.useState)("sub");
|
|
29813
29909
|
const {
|
|
29814
29910
|
pathname,
|
|
29815
29911
|
search
|
|
@@ -29819,11 +29915,11 @@ function NavbarMobileMenu(props) {
|
|
|
29819
29915
|
isDisabled: !isOpen2
|
|
29820
29916
|
});
|
|
29821
29917
|
const close = () => setIsOpen(false);
|
|
29822
|
-
(0,
|
|
29918
|
+
(0, import_react159.useEffect)(() => {
|
|
29823
29919
|
close();
|
|
29824
29920
|
}, [pathname, search]);
|
|
29825
|
-
return /* @__PURE__ */ (0,
|
|
29826
|
-
/* @__PURE__ */ (0,
|
|
29921
|
+
return /* @__PURE__ */ (0, import_jsx_runtime235.jsxs)(import_jsx_runtime235.Fragment, { children: [
|
|
29922
|
+
/* @__PURE__ */ (0, import_jsx_runtime235.jsx)(IconButton, { icon: isOpen2 ? "menuClose" : "menu", color: "--b-on-surface-muted" /* OnSurfaceMuted */, label: isOpen2 ? "Close navigation" : "Open navigation", onClick: () => {
|
|
29827
29923
|
if (isOpen2) {
|
|
29828
29924
|
close();
|
|
29829
29925
|
return;
|
|
@@ -29833,7 +29929,7 @@ function NavbarMobileMenu(props) {
|
|
|
29833
29929
|
}, ...tid.mobileMenu }),
|
|
29834
29930
|
(0, import_react_dom9.createPortal)(
|
|
29835
29931
|
/* AnimatePresence keeps the drawer mounted through its slide/fade-out before unmounting.*/
|
|
29836
|
-
/* @__PURE__ */ (0,
|
|
29932
|
+
/* @__PURE__ */ (0, import_jsx_runtime235.jsx)(import_framer_motion7.AnimatePresence, { children: isOpen2 && /* @__PURE__ */ (0, import_jsx_runtime235.jsx)(NavbarMobileDrawer, { items, mobileSubNav, level, onLevelChange: setLevel, onClose: close, tid }) }),
|
|
29837
29933
|
document.body
|
|
29838
29934
|
)
|
|
29839
29935
|
] });
|
|
@@ -29851,14 +29947,14 @@ function NavbarMobileDrawer({
|
|
|
29851
29947
|
top: bannerHeightPx
|
|
29852
29948
|
};
|
|
29853
29949
|
const showSubLevel = mobileSubNav != null && level === "sub";
|
|
29854
|
-
return /* @__PURE__ */ (0,
|
|
29855
|
-
/* @__PURE__ */ (0,
|
|
29950
|
+
return /* @__PURE__ */ (0, import_jsx_runtime235.jsxs)(import_jsx_runtime235.Fragment, { children: [
|
|
29951
|
+
/* @__PURE__ */ (0, import_jsx_runtime235.jsx)(import_framer_motion7.motion.div, { ...(0, import_runtime152.mergeProps)(void 0, overlayTopStyle, {
|
|
29856
29952
|
position: "fixed",
|
|
29857
29953
|
right: "r_0",
|
|
29858
29954
|
bottom: "bot_0",
|
|
29859
29955
|
left: "l_0",
|
|
29860
29956
|
zIndex: ["z_var", {
|
|
29861
|
-
"--zIndex": (0,
|
|
29957
|
+
"--zIndex": (0, import_runtime152.maybeCssVar)(zIndices.navbarMobileMenuScrim)
|
|
29862
29958
|
}],
|
|
29863
29959
|
backgroundColor: ["bgColor_var", {
|
|
29864
29960
|
"--backgroundColor": "var(--b-scrim)"
|
|
@@ -29873,7 +29969,7 @@ function NavbarMobileDrawer({
|
|
|
29873
29969
|
ease: "linear",
|
|
29874
29970
|
duration: 0.2
|
|
29875
29971
|
}, onClick: onClose, ...tid.mobileMenuScrim }, "navbarMobileMenuScrim"),
|
|
29876
|
-
/* @__PURE__ */ (0,
|
|
29972
|
+
/* @__PURE__ */ (0, import_jsx_runtime235.jsx)(import_react_aria67.FocusScope, { autoFocus: true, contain: true, restoreFocus: true, children: /* @__PURE__ */ (0, import_jsx_runtime235.jsxs)(import_framer_motion7.motion.aside, { role: "dialog", "aria-modal": "true", "aria-label": "Navigation", ...(0, import_runtime152.mergeProps)(void 0, overlayTopStyle, {
|
|
29877
29973
|
position: "fixed",
|
|
29878
29974
|
bottom: "bot_0",
|
|
29879
29975
|
left: "l_0",
|
|
@@ -29883,7 +29979,7 @@ function NavbarMobileDrawer({
|
|
|
29883
29979
|
width: "w_260px",
|
|
29884
29980
|
overflow: "oh",
|
|
29885
29981
|
zIndex: ["z_var", {
|
|
29886
|
-
"--zIndex": (0,
|
|
29982
|
+
"--zIndex": (0, import_runtime152.maybeCssVar)(zIndices.navbarMobileMenu)
|
|
29887
29983
|
}],
|
|
29888
29984
|
backgroundColor: ["bgColor_var", {
|
|
29889
29985
|
"--backgroundColor": "var(--b-surface)"
|
|
@@ -29898,7 +29994,7 @@ function NavbarMobileDrawer({
|
|
|
29898
29994
|
ease: "linear",
|
|
29899
29995
|
duration: 0.2
|
|
29900
29996
|
}, onClick: (e) => e.stopPropagation(), ...tid.mobileMenuDrawer, children: [
|
|
29901
|
-
/* @__PURE__ */ (0,
|
|
29997
|
+
/* @__PURE__ */ (0, import_jsx_runtime235.jsxs)("div", { ...(0, import_runtime152.trussProps)({
|
|
29902
29998
|
...{
|
|
29903
29999
|
display: "df",
|
|
29904
30000
|
alignItems: "aic",
|
|
@@ -29914,13 +30010,13 @@ function NavbarMobileDrawer({
|
|
|
29914
30010
|
},
|
|
29915
30011
|
...pageContentPaddingX
|
|
29916
30012
|
}), children: [
|
|
29917
|
-
/* @__PURE__ */ (0,
|
|
29918
|
-
/* @__PURE__ */ (0,
|
|
30013
|
+
/* @__PURE__ */ (0, import_jsx_runtime235.jsx)("div", { className: "mw0", children: showSubLevel && /* @__PURE__ */ (0, import_jsx_runtime235.jsx)(Button, { label: "Main Menu", icon: "chevronLeft", variant: "quaternary", size: "sm", onClick: () => onLevelChange("global"), ...tid.mobileMenuMainMenu }) }),
|
|
30014
|
+
/* @__PURE__ */ (0, import_jsx_runtime235.jsx)(IconButton, { icon: "x", color: "--b-on-surface-muted" /* OnSurfaceMuted */, label: "Close navigation", onClick: onClose, ...tid.mobileMenuClose })
|
|
29919
30015
|
] }),
|
|
29920
|
-
/* @__PURE__ */ (0,
|
|
30016
|
+
/* @__PURE__ */ (0, import_jsx_runtime235.jsx)("div", { className: "fg1 mh0 oh relative", children: /* @__PURE__ */ (0, import_jsx_runtime235.jsx)(import_framer_motion7.AnimatePresence, { initial: false, children: /* @__PURE__ */ (0, import_jsx_runtime235.jsxs)(
|
|
29921
30017
|
import_framer_motion7.motion.nav,
|
|
29922
30018
|
{
|
|
29923
|
-
...(0,
|
|
30019
|
+
...(0, import_runtime152.trussProps)({
|
|
29924
30020
|
...{
|
|
29925
30021
|
position: "absolute",
|
|
29926
30022
|
top: "top0",
|
|
@@ -29956,8 +30052,8 @@ function NavbarMobileDrawer({
|
|
|
29956
30052
|
},
|
|
29957
30053
|
...tid.mobileMenuPanel,
|
|
29958
30054
|
children: [
|
|
29959
|
-
showSubLevel && mobileSubNav.top && /* @__PURE__ */ (0,
|
|
29960
|
-
/* @__PURE__ */ (0,
|
|
30055
|
+
showSubLevel && mobileSubNav.top && /* @__PURE__ */ (0, import_jsx_runtime235.jsx)("div", { className: "fs0 pl1 pr1 pb2", ...tid.top, children: mobileSubNav.top }),
|
|
30056
|
+
/* @__PURE__ */ (0, import_jsx_runtime235.jsx)(AppNavItems, { items: showSubLevel && mobileSubNav ? mobileSubNav.items : items, panelCollapsed: false, ...tid }),
|
|
29961
30057
|
showSubLevel && mobileSubNav?.footer
|
|
29962
30058
|
]
|
|
29963
30059
|
},
|
|
@@ -29968,12 +30064,12 @@ function NavbarMobileDrawer({
|
|
|
29968
30064
|
}
|
|
29969
30065
|
|
|
29970
30066
|
// src/hooks/useContentOverflow.ts
|
|
29971
|
-
var
|
|
30067
|
+
var import_react160 = require("react");
|
|
29972
30068
|
function useContentOverflow(enabled = true) {
|
|
29973
|
-
const containerRef = (0,
|
|
29974
|
-
const contentRef = (0,
|
|
29975
|
-
const [overflows, setOverflows] = (0,
|
|
29976
|
-
const checkContentOverflow = (0,
|
|
30069
|
+
const containerRef = (0, import_react160.useRef)(null);
|
|
30070
|
+
const contentRef = (0, import_react160.useRef)(null);
|
|
30071
|
+
const [overflows, setOverflows] = (0, import_react160.useState)(false);
|
|
30072
|
+
const checkContentOverflow = (0, import_react160.useCallback)(() => {
|
|
29977
30073
|
const container = containerRef.current;
|
|
29978
30074
|
const content2 = contentRef.current;
|
|
29979
30075
|
if (!enabled || !container || !content2) {
|
|
@@ -29982,7 +30078,7 @@ function useContentOverflow(enabled = true) {
|
|
|
29982
30078
|
}
|
|
29983
30079
|
setOverflows(content2.offsetWidth > container.clientWidth);
|
|
29984
30080
|
}, [enabled]);
|
|
29985
|
-
(0,
|
|
30081
|
+
(0, import_react160.useLayoutEffect)(() => {
|
|
29986
30082
|
checkContentOverflow();
|
|
29987
30083
|
window.addEventListener("resize", checkContentOverflow);
|
|
29988
30084
|
return () => window.removeEventListener("resize", checkContentOverflow);
|
|
@@ -29991,8 +30087,8 @@ function useContentOverflow(enabled = true) {
|
|
|
29991
30087
|
}
|
|
29992
30088
|
|
|
29993
30089
|
// src/components/Navbar/Navbar.tsx
|
|
29994
|
-
var
|
|
29995
|
-
var
|
|
30090
|
+
var import_runtime153 = require("@homebound/truss/runtime");
|
|
30091
|
+
var import_jsx_runtime236 = require("react/jsx-runtime");
|
|
29996
30092
|
function Navbar(props) {
|
|
29997
30093
|
const {
|
|
29998
30094
|
brand,
|
|
@@ -30011,7 +30107,7 @@ function Navbar(props) {
|
|
|
30011
30107
|
overflows
|
|
30012
30108
|
} = useContentOverflow(!sm);
|
|
30013
30109
|
const showMobile = sm || overflows;
|
|
30014
|
-
return /* @__PURE__ */ (0,
|
|
30110
|
+
return /* @__PURE__ */ (0, import_jsx_runtime236.jsx)(ContrastScope, { children: /* @__PURE__ */ (0, import_jsx_runtime236.jsxs)("nav", { ...(0, import_runtime153.trussProps)({
|
|
30015
30111
|
...{
|
|
30016
30112
|
backgroundColor: ["bgColor_var", {
|
|
30017
30113
|
"--backgroundColor": "var(--b-surface-raised)"
|
|
@@ -30027,10 +30123,10 @@ function Navbar(props) {
|
|
|
30027
30123
|
},
|
|
30028
30124
|
...headerContentPaddingX(showMobile)
|
|
30029
30125
|
}), ...tid, children: [
|
|
30030
|
-
/* @__PURE__ */ (0,
|
|
30031
|
-
/* @__PURE__ */ (0,
|
|
30032
|
-
showMobile && /* @__PURE__ */ (0,
|
|
30033
|
-
/* @__PURE__ */ (0,
|
|
30126
|
+
/* @__PURE__ */ (0, import_jsx_runtime236.jsxs)("div", { className: "df aic g_3 fg1 mw0", children: [
|
|
30127
|
+
/* @__PURE__ */ (0, import_jsx_runtime236.jsxs)("div", { className: "df aic fs0 g_2", children: [
|
|
30128
|
+
showMobile && /* @__PURE__ */ (0, import_jsx_runtime236.jsx)(NavbarMobileMenu, { items, ...tid }),
|
|
30129
|
+
/* @__PURE__ */ (0, import_jsx_runtime236.jsx)("div", { ...(0, import_runtime153.trussProps)({
|
|
30034
30130
|
flexShrink: "fs0",
|
|
30035
30131
|
...hideBrandOnMobile && showMobile ? {
|
|
30036
30132
|
display: "dn"
|
|
@@ -30039,7 +30135,7 @@ function Navbar(props) {
|
|
|
30039
30135
|
] }),
|
|
30040
30136
|
!sm && // Stays mounted while overflowing (hidden) so the items remain measurable and the bar
|
|
30041
30137
|
// can expand again as space frees up.
|
|
30042
|
-
/* @__PURE__ */ (0,
|
|
30138
|
+
/* @__PURE__ */ (0, import_jsx_runtime236.jsx)("div", { ref: containerRef, ...(0, import_runtime153.trussProps)({
|
|
30043
30139
|
display: "df",
|
|
30044
30140
|
alignItems: "aic",
|
|
30045
30141
|
flexGrow: "fg1",
|
|
@@ -30048,11 +30144,11 @@ function Navbar(props) {
|
|
|
30048
30144
|
...overflows ? {
|
|
30049
30145
|
visibility: "vh"
|
|
30050
30146
|
} : {}
|
|
30051
|
-
}), ...tid.items, children: /* @__PURE__ */ (0,
|
|
30147
|
+
}), ...tid.items, children: /* @__PURE__ */ (0, import_jsx_runtime236.jsx)("div", { ref: contentRef, className: "df aic g_2 wmaxc", children: /* @__PURE__ */ (0, import_jsx_runtime236.jsx)(AppNavItems, { variant: "global", items, ...tid }) }) })
|
|
30052
30148
|
] }),
|
|
30053
|
-
/* @__PURE__ */ (0,
|
|
30054
|
-
rightSlot && /* @__PURE__ */ (0,
|
|
30055
|
-
user && /* @__PURE__ */ (0,
|
|
30149
|
+
/* @__PURE__ */ (0, import_jsx_runtime236.jsxs)("div", { className: "df aic g_1", children: [
|
|
30150
|
+
rightSlot && /* @__PURE__ */ (0, import_jsx_runtime236.jsx)("div", { className: "df aic g_1", ...tid.rightSlot, children: rightSlot }),
|
|
30151
|
+
user && /* @__PURE__ */ (0, import_jsx_runtime236.jsx)(NavbarUserMenu, { user, ...tid.userMenu })
|
|
30056
30152
|
] })
|
|
30057
30153
|
] }) });
|
|
30058
30154
|
}
|
|
@@ -30060,7 +30156,7 @@ function NavbarUserMenu({
|
|
|
30060
30156
|
user,
|
|
30061
30157
|
...tid
|
|
30062
30158
|
}) {
|
|
30063
|
-
return /* @__PURE__ */ (0,
|
|
30159
|
+
return /* @__PURE__ */ (0, import_jsx_runtime236.jsx)("div", { className: "df aic fs0 ml1", children: /* @__PURE__ */ (0, import_jsx_runtime236.jsx)(ButtonMenu, { items: user.menuItems, persistentItems: user.persistentItems, trigger: {
|
|
30064
30160
|
src: user.picture,
|
|
30065
30161
|
name: user.name,
|
|
30066
30162
|
size: "sm",
|
|
@@ -30069,10 +30165,10 @@ function NavbarUserMenu({
|
|
|
30069
30165
|
}
|
|
30070
30166
|
|
|
30071
30167
|
// src/components/Snackbar/useSnackbar.tsx
|
|
30072
|
-
var
|
|
30168
|
+
var import_react161 = require("react");
|
|
30073
30169
|
function useSnackbar() {
|
|
30074
30170
|
const { setNotices, setOffset } = useSnackbarContext();
|
|
30075
|
-
const onClose = (0,
|
|
30171
|
+
const onClose = (0, import_react161.useCallback)(
|
|
30076
30172
|
(noticeId) => {
|
|
30077
30173
|
setNotices((prev) => {
|
|
30078
30174
|
let returnValue = prev;
|
|
@@ -30089,7 +30185,7 @@ function useSnackbar() {
|
|
|
30089
30185
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
30090
30186
|
[]
|
|
30091
30187
|
);
|
|
30092
|
-
const triggerNotice = (0,
|
|
30188
|
+
const triggerNotice = (0, import_react161.useCallback)(
|
|
30093
30189
|
(props) => {
|
|
30094
30190
|
const noticeId = props.id ?? `beamSnackbar:${snackbarId++}`;
|
|
30095
30191
|
let maybeTimeout;
|
|
@@ -30118,8 +30214,8 @@ function useSnackbar() {
|
|
|
30118
30214
|
},
|
|
30119
30215
|
[onClose, setNotices]
|
|
30120
30216
|
);
|
|
30121
|
-
const closeNotice = (0,
|
|
30122
|
-
const useSnackbarOffset = ({ bottom }) => (0,
|
|
30217
|
+
const closeNotice = (0, import_react161.useCallback)((id) => onClose(id), [onClose]);
|
|
30218
|
+
const useSnackbarOffset = ({ bottom }) => (0, import_react161.useEffect)(() => {
|
|
30123
30219
|
setOffset({ bottom });
|
|
30124
30220
|
return () => setOffset({});
|
|
30125
30221
|
}, [bottom]);
|
|
@@ -30167,20 +30263,20 @@ function simpleDataRows(data = []) {
|
|
|
30167
30263
|
|
|
30168
30264
|
// src/components/Tabs.tsx
|
|
30169
30265
|
var import_change_case9 = require("change-case");
|
|
30170
|
-
var
|
|
30266
|
+
var import_react162 = require("react");
|
|
30171
30267
|
var import_react_aria68 = require("react-aria");
|
|
30172
30268
|
var import_react_router = require("react-router");
|
|
30173
30269
|
var import_react_router_dom8 = require("react-router-dom");
|
|
30174
|
-
var
|
|
30175
|
-
var
|
|
30270
|
+
var import_runtime154 = require("@homebound/truss/runtime");
|
|
30271
|
+
var import_jsx_runtime237 = require("react/jsx-runtime");
|
|
30176
30272
|
function TabsWithContent(props) {
|
|
30177
30273
|
const {
|
|
30178
30274
|
omitTopSpacing = false,
|
|
30179
30275
|
...tabProps
|
|
30180
30276
|
} = props;
|
|
30181
|
-
return /* @__PURE__ */ (0,
|
|
30182
|
-
/* @__PURE__ */ (0,
|
|
30183
|
-
/* @__PURE__ */ (0,
|
|
30277
|
+
return /* @__PURE__ */ (0, import_jsx_runtime237.jsxs)(import_jsx_runtime237.Fragment, { children: [
|
|
30278
|
+
/* @__PURE__ */ (0, import_jsx_runtime237.jsx)(Tabs, { ...tabProps }),
|
|
30279
|
+
/* @__PURE__ */ (0, import_jsx_runtime237.jsx)(TabContent, { ...tabProps, omitTopSpacing: omitTopSpacing || hideTabs(props) })
|
|
30184
30280
|
] });
|
|
30185
30281
|
}
|
|
30186
30282
|
function TabContent(props) {
|
|
@@ -30203,7 +30299,7 @@ function TabContent(props) {
|
|
|
30203
30299
|
return (
|
|
30204
30300
|
// Using FullBleed to allow the tab's bgColor to extend to the edges of the <ScrollableContent /> element.
|
|
30205
30301
|
// Omit the padding from `FullBleed` if the caller passes in the `paddingLeft/Right` styles.
|
|
30206
|
-
/* @__PURE__ */ (0,
|
|
30302
|
+
/* @__PURE__ */ (0, import_jsx_runtime237.jsx)(FullBleed, { omitPadding: omitFullBleedPadding, children: /* @__PURE__ */ (0, import_jsx_runtime237.jsx)(
|
|
30207
30303
|
"div",
|
|
30208
30304
|
{
|
|
30209
30305
|
"aria-labelledby": `${uniqueValue}-tab`,
|
|
@@ -30212,7 +30308,7 @@ function TabContent(props) {
|
|
|
30212
30308
|
tabIndex: 0,
|
|
30213
30309
|
...tid.panel,
|
|
30214
30310
|
...selfTopSpaced,
|
|
30215
|
-
...(0,
|
|
30311
|
+
...(0, import_runtime154.trussProps)({
|
|
30216
30312
|
// Top padding, unless the first child pads its own top (e.g. sticky table actions).
|
|
30217
30313
|
...{
|
|
30218
30314
|
...!omitTopSpacing ? {
|
|
@@ -30247,9 +30343,9 @@ function Tabs(props) {
|
|
|
30247
30343
|
focusProps
|
|
30248
30344
|
} = (0, import_react_aria68.useFocusRing)();
|
|
30249
30345
|
const tid = useTestIds(others, "tabs");
|
|
30250
|
-
const [active, setActive] = (0,
|
|
30251
|
-
const ref = (0,
|
|
30252
|
-
(0,
|
|
30346
|
+
const [active, setActive] = (0, import_react162.useState)(selected);
|
|
30347
|
+
const ref = (0, import_react162.useRef)(null);
|
|
30348
|
+
(0, import_react162.useEffect)(() => setActive(selected), [selected]);
|
|
30253
30349
|
function onKeyUp(e) {
|
|
30254
30350
|
if (e.key === "ArrowLeft" || e.key === "ArrowRight") {
|
|
30255
30351
|
const nextTabValue = getNextTabValue(active, e.key, tabs);
|
|
@@ -30265,7 +30361,7 @@ function Tabs(props) {
|
|
|
30265
30361
|
setActive(selected);
|
|
30266
30362
|
}
|
|
30267
30363
|
}
|
|
30268
|
-
return /* @__PURE__ */ (0,
|
|
30364
|
+
return /* @__PURE__ */ (0, import_jsx_runtime237.jsxs)("div", { ...(0, import_runtime154.trussProps)({
|
|
30269
30365
|
...{
|
|
30270
30366
|
display: "df",
|
|
30271
30367
|
alignItems: "aic",
|
|
@@ -30283,11 +30379,11 @@ function Tabs(props) {
|
|
|
30283
30379
|
}
|
|
30284
30380
|
} : {}
|
|
30285
30381
|
}), children: [
|
|
30286
|
-
!hideTabs(props) && /* @__PURE__ */ (0,
|
|
30382
|
+
!hideTabs(props) && /* @__PURE__ */ (0, import_jsx_runtime237.jsx)("div", { ref, className: "dif g_1 asfe", "aria-label": ariaLabel, role: "tablist", ...tid, children: tabs.map((tab) => {
|
|
30287
30383
|
const uniqueValue = uniqueTabValue(tab);
|
|
30288
|
-
return /* @__PURE__ */ (0,
|
|
30384
|
+
return /* @__PURE__ */ (0, import_jsx_runtime237.jsx)(TabImpl, { active: active === uniqueValue, focusProps, isFocusVisible, onClick, onKeyUp, onBlur, tab, ...tid[defaultTestId(uniqueValue)] }, uniqueValue);
|
|
30289
30385
|
}) }),
|
|
30290
|
-
right && /* @__PURE__ */ (0,
|
|
30386
|
+
right && /* @__PURE__ */ (0, import_jsx_runtime237.jsx)("div", { className: "mla df aic g_1 pb1", children: right })
|
|
30291
30387
|
] });
|
|
30292
30388
|
}
|
|
30293
30389
|
function TabImpl(props) {
|
|
@@ -30324,7 +30420,7 @@ function TabImpl(props) {
|
|
|
30324
30420
|
activeHoverStyles,
|
|
30325
30421
|
aiStyles,
|
|
30326
30422
|
activeAiStyles
|
|
30327
|
-
} = (0,
|
|
30423
|
+
} = (0, import_react162.useMemo)(() => getTabStyles(), []);
|
|
30328
30424
|
const uniqueValue = uniqueTabValue(tab);
|
|
30329
30425
|
const tid = useTestIds(others);
|
|
30330
30426
|
const tabProps = {
|
|
@@ -30335,7 +30431,7 @@ function TabImpl(props) {
|
|
|
30335
30431
|
role: "tab",
|
|
30336
30432
|
tabIndex: active ? 0 : -1,
|
|
30337
30433
|
...others,
|
|
30338
|
-
...(0,
|
|
30434
|
+
...(0, import_runtime154.trussProps)({
|
|
30339
30435
|
...baseStyles4,
|
|
30340
30436
|
...aiMode && aiStyles,
|
|
30341
30437
|
...active && activeStyles3,
|
|
@@ -30354,18 +30450,18 @@ function TabImpl(props) {
|
|
|
30354
30450
|
onClick: () => onClick(tab.value)
|
|
30355
30451
|
}
|
|
30356
30452
|
});
|
|
30357
|
-
const decoration = aiMode ? /* @__PURE__ */ (0,
|
|
30358
|
-
const tabLabel = /* @__PURE__ */ (0,
|
|
30453
|
+
const decoration = aiMode ? /* @__PURE__ */ (0, import_jsx_runtime237.jsx)(Tag, { text: "Tab has AI proposals ready for review", preventTooltip: true, icon: "aiStar", type: "ai", variant: "primary", iconOnly: true, ...tid.aiTag }) : icon ? /* @__PURE__ */ (0, import_jsx_runtime237.jsx)(Icon, { icon }) : endAdornment;
|
|
30454
|
+
const tabLabel = /* @__PURE__ */ (0, import_jsx_runtime237.jsxs)(import_jsx_runtime237.Fragment, { children: [
|
|
30359
30455
|
label,
|
|
30360
|
-
decoration && /* @__PURE__ */ (0,
|
|
30456
|
+
decoration && /* @__PURE__ */ (0, import_jsx_runtime237.jsx)("span", { className: "ml1 df aic", children: decoration })
|
|
30361
30457
|
] });
|
|
30362
30458
|
return isDisabled ? maybeTooltip({
|
|
30363
30459
|
title: resolveTooltip(disabled),
|
|
30364
30460
|
placement: "top",
|
|
30365
|
-
children: /* @__PURE__ */ (0,
|
|
30366
|
-
}) : isRouteTab(tab) ? /* @__PURE__ */ (0,
|
|
30461
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime237.jsx)("div", { ...tabProps, children: tabLabel })
|
|
30462
|
+
}) : isRouteTab(tab) ? /* @__PURE__ */ (0, import_jsx_runtime237.jsx)(import_react_router_dom8.Link, { ...(0, import_react_aria68.mergeProps)(tabProps, interactiveProps, {
|
|
30367
30463
|
className: "navLink"
|
|
30368
|
-
}), to: tab.href, children: tabLabel }) : /* @__PURE__ */ (0,
|
|
30464
|
+
}), to: tab.href, children: tabLabel }) : /* @__PURE__ */ (0, import_jsx_runtime237.jsx)("button", { ...{
|
|
30369
30465
|
...tabProps,
|
|
30370
30466
|
...interactiveProps
|
|
30371
30467
|
}, children: tabLabel });
|
|
@@ -30376,7 +30472,7 @@ function getTabStyles() {
|
|
|
30376
30472
|
const borderBottomStyles = {
|
|
30377
30473
|
borderBottomStyle: "bbs_solid",
|
|
30378
30474
|
borderBottomWidth: ["borderBottomWidth_var", {
|
|
30379
|
-
"--borderBottomWidth": (0,
|
|
30475
|
+
"--borderBottomWidth": (0, import_runtime154.maybeCssVar)(`${borderBottomWidthPx}px`)
|
|
30380
30476
|
}],
|
|
30381
30477
|
paddingBottom: ["pb_var", {
|
|
30382
30478
|
"--paddingBottom": `${verticalPaddingPx - borderBottomWidthPx}px`
|
|
@@ -30429,12 +30525,12 @@ function getTabStyles() {
|
|
|
30429
30525
|
// The AI label tint is part of the brand ramp rather than a semantic token, same as the sparkle's gradient.
|
|
30430
30526
|
aiStyles: {
|
|
30431
30527
|
color: ["color_var", {
|
|
30432
|
-
"--color": (0,
|
|
30528
|
+
"--color": (0, import_runtime154.maybeCssVar)("rgba(109, 40, 217, 1)" /* Purple700 */)
|
|
30433
30529
|
}]
|
|
30434
30530
|
},
|
|
30435
30531
|
activeAiStyles: {
|
|
30436
30532
|
color: ["color_var", {
|
|
30437
|
-
"--color": (0,
|
|
30533
|
+
"--color": (0, import_runtime154.maybeCssVar)("rgba(91, 33, 182, 1)" /* Purple800 */)
|
|
30438
30534
|
}]
|
|
30439
30535
|
},
|
|
30440
30536
|
focusRingStyles: {
|
|
@@ -30484,51 +30580,51 @@ function hideTabs(props) {
|
|
|
30484
30580
|
}
|
|
30485
30581
|
|
|
30486
30582
|
// src/components/Toast/useToast.tsx
|
|
30487
|
-
var
|
|
30583
|
+
var import_react163 = require("react");
|
|
30488
30584
|
function useToast() {
|
|
30489
30585
|
const { setNotice, clear } = useToastContext();
|
|
30490
|
-
const showToast = (0,
|
|
30586
|
+
const showToast = (0, import_react163.useCallback)((props) => setNotice(props), [setNotice]);
|
|
30491
30587
|
return { showToast, clear };
|
|
30492
30588
|
}
|
|
30493
30589
|
|
|
30494
30590
|
// src/illustrations/DocumentUploadIllustration.tsx
|
|
30495
|
-
var
|
|
30496
|
-
var
|
|
30591
|
+
var import_runtime155 = require("@homebound/truss/runtime");
|
|
30592
|
+
var import_jsx_runtime238 = require("react/jsx-runtime");
|
|
30497
30593
|
function DocumentUploadIllustration(props) {
|
|
30498
30594
|
const {
|
|
30499
30595
|
width: width2 = 338
|
|
30500
30596
|
} = props;
|
|
30501
|
-
return /* @__PURE__ */ (0,
|
|
30597
|
+
return /* @__PURE__ */ (0, import_jsx_runtime238.jsxs)("svg", { viewBox: "0 0 338.25 270.6", xmlns: "http://www.w3.org/2000/svg", fill: "none", "aria-hidden": true, role: "presentation", ...(0, import_runtime155.trussProps)({
|
|
30502
30598
|
width: ["w_var", {
|
|
30503
30599
|
"--width": `${width2}px`
|
|
30504
30600
|
}],
|
|
30505
30601
|
maxWidth: "maxw100",
|
|
30506
30602
|
height: "ha"
|
|
30507
30603
|
}), children: [
|
|
30508
|
-
/* @__PURE__ */ (0,
|
|
30509
|
-
/* @__PURE__ */ (0,
|
|
30510
|
-
/* @__PURE__ */ (0,
|
|
30511
|
-
/* @__PURE__ */ (0,
|
|
30512
|
-
/* @__PURE__ */ (0,
|
|
30513
|
-
/* @__PURE__ */ (0,
|
|
30514
|
-
/* @__PURE__ */ (0,
|
|
30515
|
-
/* @__PURE__ */ (0,
|
|
30516
|
-
/* @__PURE__ */ (0,
|
|
30517
|
-
/* @__PURE__ */ (0,
|
|
30518
|
-
/* @__PURE__ */ (0,
|
|
30604
|
+
/* @__PURE__ */ (0, import_jsx_runtime238.jsx)("path", { d: "M256.146 107.294C256.146 107.294 267.377 64.7481 227.738 51.0067C188.1 37.2653 159.572 58.7309 145.026 75.3184C129.963 92.4952 127.849 132.662 96.9308 140.326C66.0126 147.989 59.4329 170.861 62.313 186.571C65.2199 202.426 72.3548 210.618 107.501 210.618H231.174C231.174 210.618 270.548 216.961 278.476 197.406C286.404 177.85 276.362 168.337 259.978 154.596C243.594 140.854 243.594 131.077 249.143 122.356C254.693 113.636 256.146 107.294 256.146 107.294Z", fill: "#F1F4F9" }),
|
|
30605
|
+
/* @__PURE__ */ (0, import_jsx_runtime238.jsx)("path", { d: "M198.269 73.0502H132.422C125.722 73.0502 120.291 80.558 120.291 89.8194V194.831C120.291 204.092 125.722 211.6 132.422 211.6H211.249C217.949 211.6 223.38 204.092 223.38 194.831V100.978L198.269 73.0502Z", fill: "white" }),
|
|
30606
|
+
/* @__PURE__ */ (0, import_jsx_runtime238.jsx)("path", { d: "M201.273 78.2404C200.767 78.2404 200.262 78.0337 199.897 77.6275L197.444 74.8999H193.776C192.754 74.8999 191.926 74.0718 191.926 73.0501C191.926 72.0284 192.754 71.2003 193.776 71.2003H198.268C198.793 71.2003 199.293 71.4232 199.644 71.8132L202.648 75.1537C203.331 75.9135 203.269 77.083 202.509 77.7661C202.156 78.0839 201.714 78.2404 201.273 78.2404Z", fill: "#798295" }),
|
|
30607
|
+
/* @__PURE__ */ (0, import_jsx_runtime238.jsx)("path", { d: "M211.249 213.45H211.111C210.09 213.45 209.261 212.622 209.261 211.6C209.261 210.578 210.09 209.75 211.111 209.75H211.249C214.146 209.75 216.274 208.026 217.55 206.579C218.225 205.813 219.394 205.739 220.161 206.415C220.927 207.091 221.001 208.26 220.325 209.026C217.809 211.879 214.586 213.45 211.249 213.45ZM203.446 213.45H194.459C193.437 213.45 192.609 212.622 192.609 211.6C192.609 210.578 193.437 209.75 194.459 209.75H203.446C204.467 209.75 205.296 210.578 205.296 211.6C205.296 212.622 204.467 213.45 203.446 213.45ZM186.793 213.45H177.806C176.784 213.45 175.956 212.622 175.956 211.6C175.956 210.578 176.784 209.75 177.806 209.75H186.793C187.815 209.75 188.643 210.578 188.643 211.6C188.643 212.622 187.815 213.45 186.793 213.45ZM170.14 213.45H161.153C160.131 213.45 159.303 212.622 159.303 211.6C159.303 210.578 160.131 209.75 161.153 209.75H170.14C171.162 209.75 171.99 210.578 171.99 211.6C171.99 212.622 171.162 213.45 170.14 213.45ZM153.488 213.45H144.5C143.479 213.45 142.651 212.622 142.651 211.6C142.651 210.578 143.479 209.75 144.5 209.75H153.488C154.509 209.75 155.337 210.578 155.337 211.6C155.337 212.622 154.509 213.45 153.488 213.45ZM136.835 213.45H132.422C130.603 213.45 128.835 212.997 127.167 212.104C126.267 211.621 125.928 210.5 126.41 209.599C126.893 208.699 128.014 208.359 128.914 208.842C130.039 209.445 131.219 209.75 132.422 209.75H136.835C137.857 209.75 138.685 210.578 138.685 211.6C138.685 212.622 137.857 213.45 136.835 213.45ZM122.794 206.881C122.144 206.881 121.513 206.538 121.175 205.929C119.662 203.203 118.738 199.971 118.502 196.584C118.431 195.565 119.2 194.681 120.219 194.61C121.236 194.544 122.122 195.308 122.193 196.328C122.391 199.178 123.158 201.877 124.41 204.133C124.905 205.027 124.583 206.153 123.69 206.648C123.406 206.806 123.098 206.881 122.794 206.881ZM222.508 202.938C222.337 202.938 222.163 202.914 221.99 202.864C221.009 202.578 220.445 201.552 220.731 200.571C221.261 198.75 221.53 196.819 221.53 194.831V192.183C221.53 191.161 222.358 190.333 223.38 190.333C224.402 190.333 225.23 191.161 225.23 192.183V194.831C225.229 197.169 224.911 199.448 224.283 201.605C224.048 202.413 223.309 202.938 222.508 202.938ZM120.291 190.641C119.27 190.641 118.441 189.813 118.441 188.792V179.804C118.441 178.783 119.27 177.955 120.291 177.955C121.313 177.955 122.141 178.783 122.141 179.804V188.792C122.141 189.813 121.313 190.641 120.291 190.641ZM223.38 186.367C222.358 186.367 221.53 185.539 221.53 184.517V175.53C221.53 174.508 222.358 173.68 223.38 173.68C224.402 173.68 225.23 174.508 225.23 175.53V184.517C225.23 185.539 224.402 186.367 223.38 186.367ZM120.291 173.989C119.27 173.989 118.441 173.161 118.441 172.139V163.152C118.441 162.13 119.27 161.302 120.291 161.302C121.313 161.302 122.141 162.13 122.141 163.152V172.139C122.141 173.161 121.313 173.989 120.291 173.989ZM223.38 169.714C222.358 169.714 221.53 168.886 221.53 167.864V158.877C221.53 157.855 222.358 157.027 223.38 157.027C224.402 157.027 225.23 157.855 225.23 158.877V167.864C225.23 168.886 224.402 169.714 223.38 169.714ZM120.291 157.336C119.27 157.336 118.441 156.508 118.441 155.486V146.499C118.441 145.477 119.27 144.649 120.291 144.649C121.313 144.649 122.141 145.477 122.141 146.499V155.486C122.141 156.508 121.313 157.336 120.291 157.336ZM223.38 153.061C222.358 153.061 221.53 152.233 221.53 151.211V142.224C221.53 141.203 222.358 140.375 223.38 140.375C224.402 140.375 225.23 141.203 225.23 142.224V151.211C225.23 152.233 224.402 153.061 223.38 153.061ZM120.291 140.683C119.27 140.683 118.441 139.855 118.441 138.833V129.846C118.441 128.825 119.27 127.997 120.291 127.997C121.313 127.997 122.141 128.825 122.141 129.846V138.833C122.141 139.855 121.313 140.683 120.291 140.683ZM223.38 136.409C222.358 136.409 221.53 135.581 221.53 134.559V125.572C221.53 124.55 222.358 123.722 223.38 123.722C224.402 123.722 225.23 124.55 225.23 125.572V134.559C225.23 135.581 224.402 136.409 223.38 136.409ZM120.291 124.031C119.27 124.031 118.441 123.202 118.441 122.181V113.194C118.441 112.172 119.27 111.344 120.291 111.344C121.313 111.344 122.141 112.172 122.141 113.194V122.181C122.141 123.202 121.313 124.031 120.291 124.031ZM223.38 119.756C222.358 119.756 221.53 118.928 221.53 117.906V108.919C221.53 107.897 222.358 107.069 223.38 107.069C224.402 107.069 225.23 107.897 225.23 108.919V117.906C225.23 118.928 224.402 119.756 223.38 119.756ZM120.291 107.378C119.27 107.378 118.441 106.55 118.441 105.528V96.5409C118.441 95.5193 119.27 94.6911 120.291 94.6911C121.313 94.6911 122.141 95.5193 122.141 96.5409V105.528C122.141 106.55 121.313 107.378 120.291 107.378ZM223.38 103.103C222.537 103.103 221.825 102.539 221.603 101.768L216.18 95.7367C215.497 94.9771 215.559 93.8075 216.318 93.1244C217.078 92.4415 218.248 92.5033 218.931 93.2631L224.755 99.7411C225.061 100.081 225.23 100.521 225.23 100.978V101.253C225.23 102.275 224.402 103.103 223.38 103.103ZM120.312 90.7253C120.287 90.7253 120.262 90.7248 120.236 90.7239C119.215 90.683 118.421 89.8222 118.462 88.8015C118.597 85.4287 119.413 82.1733 120.823 79.3874C121.284 78.4757 122.396 78.1104 123.308 78.5715C124.22 79.0327 124.585 80.1455 124.124 81.0571C122.952 83.3736 122.273 86.1027 122.159 88.9496C122.119 89.9452 121.299 90.7253 120.312 90.7253ZM212.43 90.6496C211.924 90.6496 211.42 90.4429 211.054 90.0366L205.045 83.3536C204.362 82.594 204.425 81.4244 205.184 80.7413C205.944 80.0585 207.113 80.12 207.796 80.88L213.805 87.563C214.489 88.3226 214.426 89.4923 213.667 90.1753C213.313 90.4931 212.871 90.6496 212.43 90.6496ZM127.452 76.3686C126.834 76.3686 126.23 76.0589 125.88 75.4953C125.34 74.6277 125.606 73.487 126.474 72.9477C128.338 71.7883 130.34 71.2004 132.422 71.2004H136.152C137.174 71.2004 138.002 72.0286 138.002 73.0502C138.002 74.0719 137.174 74.9 136.152 74.9H132.422C131.041 74.9 129.697 75.3002 128.427 76.0893C128.123 76.2784 127.786 76.3686 127.452 76.3686ZM186.111 74.9H177.123C176.102 74.9 175.274 74.0719 175.274 73.0502C175.274 72.0286 176.102 71.2004 177.123 71.2004H186.111C187.132 71.2004 187.96 72.0286 187.96 73.0502C187.96 74.0719 187.132 74.9 186.111 74.9ZM169.458 74.9H160.471C159.449 74.9 158.621 74.0719 158.621 73.0502C158.621 72.0286 159.449 71.2004 160.471 71.2004H169.458C170.48 71.2004 171.308 72.0286 171.308 73.0502C171.308 74.0719 170.48 74.9 169.458 74.9ZM152.805 74.9H143.818C142.796 74.9 141.968 74.0719 141.968 73.0502C141.968 72.0286 142.796 71.2004 143.818 71.2004H152.805C153.827 71.2004 154.655 72.0286 154.655 73.0502C154.655 74.0719 153.827 74.9 152.805 74.9Z", fill: "#798295" }),
|
|
30608
|
+
/* @__PURE__ */ (0, import_jsx_runtime238.jsx)("path", { d: "M192.785 83.3351V99.2582C192.785 102.885 195.726 105.826 199.353 105.826H215.482", fill: "white" }),
|
|
30609
|
+
/* @__PURE__ */ (0, import_jsx_runtime238.jsx)("path", { d: "M215.39 107.676H206.406C205.384 107.676 204.556 106.848 204.556 105.826C204.556 104.804 205.384 103.976 206.406 103.976H215.39C216.412 103.976 217.24 104.804 217.24 105.826C217.24 106.848 216.412 107.676 215.39 107.676ZM198.745 107.648C198.689 107.648 198.632 107.645 198.574 107.64C194.611 107.275 191.419 104.139 190.986 100.183C190.874 99.1675 191.608 98.2541 192.623 98.1428C193.636 98.0331 194.552 98.7646 194.663 99.7801C194.906 101.996 196.693 103.752 198.913 103.956C199.93 104.049 200.679 104.95 200.585 105.967C200.497 106.927 199.691 107.648 198.745 107.648ZM192.785 94.1696C191.764 94.1696 190.936 93.3415 190.936 92.3198V83.335C190.936 82.3134 191.764 81.4852 192.785 81.4852C193.807 81.4852 194.635 82.3134 194.635 83.335V92.3198C194.635 93.3415 193.807 94.1696 192.785 94.1696Z", fill: "#798295" }),
|
|
30610
|
+
/* @__PURE__ */ (0, import_jsx_runtime238.jsx)("path", { d: "M189.911 178.207H154.776C153.609 178.207 152.662 177.261 152.662 176.093C152.662 174.926 153.609 173.979 154.776 173.979H189.911C191.078 173.979 192.025 174.926 192.025 176.093C192.025 177.261 191.078 178.207 189.911 178.207Z", fill: "#798295" }),
|
|
30611
|
+
/* @__PURE__ */ (0, import_jsx_runtime238.jsx)("path", { d: "M171.711 166.32C170.544 166.32 169.597 165.373 169.597 164.206V124.131C169.597 122.963 170.544 122.017 171.711 122.017C172.878 122.017 173.825 122.963 173.825 124.131V164.206C173.825 165.373 172.878 166.32 171.711 166.32Z", fill: "#798295" }),
|
|
30612
|
+
/* @__PURE__ */ (0, import_jsx_runtime238.jsx)("path", { d: "M191.126 144.439C190.608 144.439 190.089 144.25 189.681 143.868L171.72 127.037L154 143.858C153.154 144.662 151.815 144.628 151.012 143.781C150.208 142.934 150.243 141.596 151.089 140.792L170.256 122.597C171.068 121.827 172.34 121.823 173.157 122.588L192.572 140.783C193.424 141.581 193.467 142.919 192.669 143.771C192.253 144.215 191.69 144.439 191.126 144.439Z", fill: "#798295" }),
|
|
30613
|
+
/* @__PURE__ */ (0, import_jsx_runtime238.jsx)("path", { d: "M264.954 212.204H230.865C229.989 212.204 229.279 211.494 229.279 210.618C229.279 209.743 229.989 209.033 230.865 209.033H264.954C265.83 209.033 266.54 209.743 266.54 210.618C266.54 211.494 265.83 212.204 264.954 212.204Z", fill: "#798295" }),
|
|
30614
|
+
/* @__PURE__ */ (0, import_jsx_runtime238.jsx)("path", { d: "M112.806 212.204H80.0384C79.1628 212.204 78.4529 211.494 78.4529 210.618C78.4529 209.743 79.1628 209.033 80.0384 209.033H112.806C113.682 209.033 114.392 209.743 114.392 210.618C114.392 211.494 113.682 212.204 112.806 212.204Z", fill: "#798295" })
|
|
30519
30615
|
] });
|
|
30520
30616
|
}
|
|
30521
30617
|
|
|
30522
30618
|
// src/layouts/SideNavLayout/SideNavLayout.tsx
|
|
30523
|
-
var
|
|
30524
|
-
var
|
|
30619
|
+
var import_runtime156 = require("@homebound/truss/runtime");
|
|
30620
|
+
var import_jsx_runtime239 = require("react/jsx-runtime");
|
|
30525
30621
|
var __maybeInc29 = (inc) => {
|
|
30526
30622
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
30527
30623
|
};
|
|
30528
30624
|
function SideNavLayout(props) {
|
|
30529
30625
|
const hasProvider = useHasSideNavLayoutProvider();
|
|
30530
|
-
if (hasProvider) return /* @__PURE__ */ (0,
|
|
30531
|
-
return /* @__PURE__ */ (0,
|
|
30626
|
+
if (hasProvider) return /* @__PURE__ */ (0, import_jsx_runtime239.jsx)(SideNavLayoutContent, { ...props });
|
|
30627
|
+
return /* @__PURE__ */ (0, import_jsx_runtime239.jsx)(SideNavLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime239.jsx)(SideNavLayoutContent, { ...props }) });
|
|
30532
30628
|
}
|
|
30533
30629
|
function SideNavLayoutContent(props) {
|
|
30534
30630
|
const {
|
|
@@ -30551,7 +30647,7 @@ function SideNavLayoutContent(props) {
|
|
|
30551
30647
|
const railOffsetPx = !showRail ? 0 : !bp.mdAndUp || collapsed ? railCollapsedWidthPx : railWidthPx;
|
|
30552
30648
|
const navTop = belowNavbarOffset();
|
|
30553
30649
|
const railViewportHeight = `calc(var(${beamLayoutViewportHeightVar}, 100vh) - var(${beamEnvironmentBannerLayoutHeightVar}, 0px) - var(${beamNavbarLayoutHeightVar}, 0px))`;
|
|
30554
|
-
const rail = showRail && /* @__PURE__ */ (0,
|
|
30650
|
+
const rail = showRail && /* @__PURE__ */ (0, import_jsx_runtime239.jsxs)("div", { ...(0, import_runtime156.trussProps)({
|
|
30555
30651
|
...{
|
|
30556
30652
|
display: "df",
|
|
30557
30653
|
flexDirection: "fdc",
|
|
@@ -30575,14 +30671,14 @@ function SideNavLayoutContent(props) {
|
|
|
30575
30671
|
position: "sticky",
|
|
30576
30672
|
left: "l_0",
|
|
30577
30673
|
zIndex: ["z_var", {
|
|
30578
|
-
"--zIndex": (0,
|
|
30674
|
+
"--zIndex": (0, import_runtime156.maybeCssVar)(zIndices.sideNav)
|
|
30579
30675
|
}],
|
|
30580
30676
|
top: ["top_var", {
|
|
30581
|
-
"--top": (0,
|
|
30677
|
+
"--top": (0, import_runtime156.maybeCssVar)(__maybeInc29(navTop))
|
|
30582
30678
|
}],
|
|
30583
30679
|
alignSelf: "asfs",
|
|
30584
30680
|
height: ["h_var", {
|
|
30585
|
-
"--height": (0,
|
|
30681
|
+
"--height": (0, import_runtime156.maybeCssVar)(__maybeInc29(railViewportHeight))
|
|
30586
30682
|
}],
|
|
30587
30683
|
width: ["w_var", {
|
|
30588
30684
|
"--width": `${collapsed ? railCollapsedWidthPx : railWidthPx}px`
|
|
@@ -30592,11 +30688,11 @@ function SideNavLayoutContent(props) {
|
|
|
30592
30688
|
position: "fixed",
|
|
30593
30689
|
left: "l_0",
|
|
30594
30690
|
top: ["top_var", {
|
|
30595
|
-
"--top": (0,
|
|
30691
|
+
"--top": (0, import_runtime156.maybeCssVar)(__maybeInc29(navTop))
|
|
30596
30692
|
}],
|
|
30597
30693
|
bottom: "bot_0",
|
|
30598
30694
|
zIndex: ["z_var", {
|
|
30599
|
-
"--zIndex": (0,
|
|
30695
|
+
"--zIndex": (0, import_runtime156.maybeCssVar)(zIndices.sideNav)
|
|
30600
30696
|
}]
|
|
30601
30697
|
},
|
|
30602
30698
|
...collapsed ? {
|
|
@@ -30608,18 +30704,18 @@ function SideNavLayoutContent(props) {
|
|
|
30608
30704
|
}
|
|
30609
30705
|
}
|
|
30610
30706
|
}), ...tid.sideNav, children: [
|
|
30611
|
-
showCollapseToggle && /* @__PURE__ */ (0,
|
|
30612
|
-
/* @__PURE__ */ (0,
|
|
30707
|
+
showCollapseToggle && /* @__PURE__ */ (0, import_jsx_runtime239.jsx)("div", { className: "absolute r_2 top2 z2", children: /* @__PURE__ */ (0, import_jsx_runtime239.jsx)(IconButton, { icon: collapsed ? "menuOpen" : "menuClose", label: collapsed ? "Expand navigation" : "Collapse navigation", onClick: () => setNavState(collapsed ? "expanded" : "collapse"), ...tid.toggle }) }),
|
|
30708
|
+
/* @__PURE__ */ (0, import_jsx_runtime239.jsx)("div", { className: "fg1 mh0 df fdc", ...tid.sideNavContent, children: /* @__PURE__ */ (0, import_jsx_runtime239.jsx)(SideNav, { ...sideNav }) })
|
|
30613
30709
|
] });
|
|
30614
|
-
return /* @__PURE__ */ (0,
|
|
30710
|
+
return /* @__PURE__ */ (0, import_jsx_runtime239.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime239.jsxs)("div", { ...(0, import_runtime156.mergeProps)(void 0, {
|
|
30615
30711
|
[beamSideNavLayoutWidthVar]: `${railOffsetPx}px`
|
|
30616
30712
|
}, {
|
|
30617
30713
|
display: "df",
|
|
30618
30714
|
flexDirection: "fdr",
|
|
30619
30715
|
width: "w100"
|
|
30620
30716
|
}), ...tid, children: [
|
|
30621
|
-
contrastRail ? /* @__PURE__ */ (0,
|
|
30622
|
-
/* @__PURE__ */ (0,
|
|
30717
|
+
contrastRail ? /* @__PURE__ */ (0, import_jsx_runtime239.jsx)(ContrastScope, { children: rail }) : rail,
|
|
30718
|
+
/* @__PURE__ */ (0, import_jsx_runtime239.jsx)("div", { ...(0, import_runtime156.trussProps)({
|
|
30623
30719
|
display: "df",
|
|
30624
30720
|
flexDirection: "fdc",
|
|
30625
30721
|
flexGrow: "fg1",
|
|
@@ -30635,8 +30731,8 @@ function SideNavLayoutContent(props) {
|
|
|
30635
30731
|
}
|
|
30636
30732
|
|
|
30637
30733
|
// src/layouts/CenteredLayout/CenteredLayout.tsx
|
|
30638
|
-
var
|
|
30639
|
-
var
|
|
30734
|
+
var import_runtime157 = require("@homebound/truss/runtime");
|
|
30735
|
+
var import_jsx_runtime240 = require("react/jsx-runtime");
|
|
30640
30736
|
function CenteredLayout(props) {
|
|
30641
30737
|
const {
|
|
30642
30738
|
size,
|
|
@@ -30648,7 +30744,7 @@ function CenteredLayout(props) {
|
|
|
30648
30744
|
mdAndUp
|
|
30649
30745
|
} = useBreakpoint();
|
|
30650
30746
|
const rightPane = resolveWithRightPaneOptions(withRightPane);
|
|
30651
|
-
const shell = /* @__PURE__ */ (0,
|
|
30747
|
+
const shell = /* @__PURE__ */ (0, import_jsx_runtime240.jsx)(ContentInsetProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime240.jsx)("div", { ...(0, import_runtime157.mergeProps)(void 0, {
|
|
30652
30748
|
// layoutContainer descendants (e.g. ContentHeader) read this to inset sticky horizontal chrome within the shell padding.
|
|
30653
30749
|
[beamLayoutContentPaddingXVar]: mdAndUp ? pageContentPaddingXValue : smPageContentPaddingXValue,
|
|
30654
30750
|
// Floor while an ancestor overlay pane is open (`0px` when closed). `md+` only — phones must not get a dummy scrollbar.
|
|
@@ -30667,7 +30763,7 @@ function CenteredLayout(props) {
|
|
|
30667
30763
|
...pageContentPaddingX
|
|
30668
30764
|
}), ...tid, children }) });
|
|
30669
30765
|
if (!rightPane) return shell;
|
|
30670
|
-
return /* @__PURE__ */ (0,
|
|
30766
|
+
return /* @__PURE__ */ (0, import_jsx_runtime240.jsx)(DocumentScrollOverlayRightPaneLayout, { paneWidth: rightPane.width, children: shell });
|
|
30671
30767
|
}
|
|
30672
30768
|
var centeredContentMaxPx = {
|
|
30673
30769
|
sm: 720,
|
|
@@ -30680,8 +30776,8 @@ var centeredShellMaxPx = {
|
|
|
30680
30776
|
};
|
|
30681
30777
|
|
|
30682
30778
|
// src/layouts/EnvironmentBannerLayout/EnvironmentBannerLayout.tsx
|
|
30683
|
-
var
|
|
30684
|
-
var
|
|
30779
|
+
var import_runtime158 = require("@homebound/truss/runtime");
|
|
30780
|
+
var import_jsx_runtime241 = require("react/jsx-runtime");
|
|
30685
30781
|
var __maybeInc30 = (inc) => {
|
|
30686
30782
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
30687
30783
|
};
|
|
@@ -30697,42 +30793,42 @@ function EnvironmentBannerLayout(props) {
|
|
|
30697
30793
|
[beamEnvironmentBannerLayoutHeightVar]: `${bannerHeightPx}px`
|
|
30698
30794
|
};
|
|
30699
30795
|
const innerWidth = `var(${beamLayoutViewportWidthVar}, 100vw)`;
|
|
30700
|
-
return /* @__PURE__ */ (0,
|
|
30796
|
+
return /* @__PURE__ */ (0, import_jsx_runtime241.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime241.jsx)(EnvironmentBannerLayoutHeightProvider, { value: bannerHeightPx, children: /* @__PURE__ */ (0, import_jsx_runtime241.jsxs)("div", { ...(0, import_runtime158.mergeProps)(void 0, style, {
|
|
30701
30797
|
display: "df",
|
|
30702
30798
|
flexDirection: "fdc",
|
|
30703
30799
|
width: "wfc",
|
|
30704
30800
|
minWidth: "mw100"
|
|
30705
30801
|
}), ...tid, children: [
|
|
30706
|
-
showBanner && environmentBanner && /* @__PURE__ */ (0,
|
|
30802
|
+
showBanner && environmentBanner && /* @__PURE__ */ (0, import_jsx_runtime241.jsx)("div", { ...(0, import_runtime158.mergeProps)(void 0, {
|
|
30707
30803
|
height: environmentBannerSizePx
|
|
30708
30804
|
}, {
|
|
30709
30805
|
flexShrink: "fs0",
|
|
30710
30806
|
width: "w100"
|
|
30711
|
-
}), children: /* @__PURE__ */ (0,
|
|
30807
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime241.jsx)("div", { ...(0, import_runtime158.trussProps)({
|
|
30712
30808
|
position: "fixed",
|
|
30713
30809
|
top: "top0",
|
|
30714
30810
|
left: "l_0",
|
|
30715
30811
|
zIndex: ["z_var", {
|
|
30716
|
-
"--zIndex": (0,
|
|
30812
|
+
"--zIndex": (0, import_runtime158.maybeCssVar)(zIndices.environmentBanner)
|
|
30717
30813
|
}],
|
|
30718
30814
|
width: ["w_var", {
|
|
30719
|
-
"--width": (0,
|
|
30815
|
+
"--width": (0, import_runtime158.maybeCssVar)(__maybeInc30(innerWidth))
|
|
30720
30816
|
}]
|
|
30721
|
-
}), ...tid.bannerSticky, children: /* @__PURE__ */ (0,
|
|
30817
|
+
}), ...tid.bannerSticky, children: /* @__PURE__ */ (0, import_jsx_runtime241.jsx)(EnvironmentBanner, { ...environmentBanner, ...tid.environmentBanner }) }) }),
|
|
30722
30818
|
children
|
|
30723
30819
|
] }) }) });
|
|
30724
30820
|
}
|
|
30725
30821
|
|
|
30726
30822
|
// src/layouts/FormSectionLayout/FormSectionLayout.tsx
|
|
30727
|
-
var
|
|
30823
|
+
var import_runtime162 = require("@homebound/truss/runtime");
|
|
30728
30824
|
|
|
30729
30825
|
// src/forms/FormSection/FormSection.tsx
|
|
30730
|
-
var
|
|
30826
|
+
var import_runtime160 = require("@homebound/truss/runtime");
|
|
30731
30827
|
|
|
30732
30828
|
// src/forms/FormSection/FormSectionChild.tsx
|
|
30733
|
-
var
|
|
30734
|
-
var
|
|
30735
|
-
var
|
|
30829
|
+
var import_react164 = require("react");
|
|
30830
|
+
var import_runtime159 = require("@homebound/truss/runtime");
|
|
30831
|
+
var import_jsx_runtime242 = require("react/jsx-runtime");
|
|
30736
30832
|
function FormSectionChild(props) {
|
|
30737
30833
|
const {
|
|
30738
30834
|
title,
|
|
@@ -30743,7 +30839,7 @@ function FormSectionChild(props) {
|
|
|
30743
30839
|
tag
|
|
30744
30840
|
} = props;
|
|
30745
30841
|
const tid = useTestIds(props, "formSectionChild");
|
|
30746
|
-
const itemRef = (0,
|
|
30842
|
+
const itemRef = (0, import_react164.useRef)(null);
|
|
30747
30843
|
const isDraggable = !!orderField;
|
|
30748
30844
|
const {
|
|
30749
30845
|
dragItemProps,
|
|
@@ -30752,10 +30848,10 @@ function FormSectionChild(props) {
|
|
|
30752
30848
|
id: props.id ?? title,
|
|
30753
30849
|
itemRef
|
|
30754
30850
|
});
|
|
30755
|
-
return /* @__PURE__ */ (0,
|
|
30851
|
+
return /* @__PURE__ */ (0, import_jsx_runtime242.jsxs)("div", { ...isDraggable ? {
|
|
30756
30852
|
...dragItemProps,
|
|
30757
30853
|
ref: itemRef
|
|
30758
|
-
} : {}, ...(0,
|
|
30854
|
+
} : {}, ...(0, import_runtime159.trussProps)({
|
|
30759
30855
|
display: "df",
|
|
30760
30856
|
flexDirection: "fdc",
|
|
30761
30857
|
gap: "g_2",
|
|
@@ -30771,13 +30867,13 @@ function FormSectionChild(props) {
|
|
|
30771
30867
|
borderStyle: "lot_bsn",
|
|
30772
30868
|
borderWidth: "lot_bw_0"
|
|
30773
30869
|
}), ...tid, children: [
|
|
30774
|
-
/* @__PURE__ */ (0,
|
|
30870
|
+
/* @__PURE__ */ (0, import_jsx_runtime242.jsx)(ContentHeader, { ...tid.header, title, description, actions, level: 4, rightSlotLead: tag && /* @__PURE__ */ (0, import_jsx_runtime242.jsx)(Tag, { ...tag, ...tid.tag }), startAdornment: isDraggable ? /* @__PURE__ */ (0, import_jsx_runtime242.jsx)(DnDGridItemHandle, { dragHandleProps, icon: "drag", compact: true }) : void 0 }),
|
|
30775
30871
|
fields
|
|
30776
30872
|
] });
|
|
30777
30873
|
}
|
|
30778
30874
|
|
|
30779
30875
|
// src/forms/FormSection/FormSection.tsx
|
|
30780
|
-
var
|
|
30876
|
+
var import_jsx_runtime243 = require("react/jsx-runtime");
|
|
30781
30877
|
function FormSection(props) {
|
|
30782
30878
|
const {
|
|
30783
30879
|
title,
|
|
@@ -30787,17 +30883,17 @@ function FormSection(props) {
|
|
|
30787
30883
|
childSections
|
|
30788
30884
|
} = props;
|
|
30789
30885
|
const tid = useTestIds(props, "formSection");
|
|
30790
|
-
return /* @__PURE__ */ (0,
|
|
30886
|
+
return /* @__PURE__ */ (0, import_jsx_runtime243.jsxs)("div", { id: defaultTestId(title), ...(0, import_runtime160.trussProps)({
|
|
30791
30887
|
display: "df",
|
|
30792
30888
|
flexDirection: "fdc",
|
|
30793
30889
|
gap: "g_2",
|
|
30794
30890
|
scrollMarginTop: ["scrollMarginTop_var", {
|
|
30795
|
-
"--scrollMarginTop": (0,
|
|
30891
|
+
"--scrollMarginTop": (0, import_runtime160.maybeCssVar)(stickyNavAndHeaderOffset())
|
|
30796
30892
|
}]
|
|
30797
30893
|
}), ...tid.section, children: [
|
|
30798
|
-
/* @__PURE__ */ (0,
|
|
30894
|
+
/* @__PURE__ */ (0, import_jsx_runtime243.jsx)(ContentHeader, { ...tid, title, description, actions, level: 3 }),
|
|
30799
30895
|
fields,
|
|
30800
|
-
childSections && (isReorderable(childSections) ? /* @__PURE__ */ (0,
|
|
30896
|
+
childSections && (isReorderable(childSections) ? /* @__PURE__ */ (0, import_jsx_runtime243.jsx)(DraggableChildren, { childSections, ...tid.childSection }) : /* @__PURE__ */ (0, import_jsx_runtime243.jsx)("div", { className: "df fdc g_3", children: childSections.map((child) => /* @__PURE__ */ (0, import_jsx_runtime243.jsx)(FormSectionChild, { ...child, ...tid.childSection }, child.id ?? child.title)) }))
|
|
30801
30897
|
] });
|
|
30802
30898
|
}
|
|
30803
30899
|
function isReorderable(childSections) {
|
|
@@ -30820,18 +30916,18 @@ function DraggableChildren(props) {
|
|
|
30820
30916
|
}
|
|
30821
30917
|
});
|
|
30822
30918
|
};
|
|
30823
|
-
return /* @__PURE__ */ (0,
|
|
30919
|
+
return /* @__PURE__ */ (0, import_jsx_runtime243.jsx)(DnDGrid, { onReorder: handleReorder, lockAxis: "y", gridStyles: {
|
|
30824
30920
|
gridTemplateColumns: "gtc_minmax_0_1fr",
|
|
30825
30921
|
gap: "g_3"
|
|
30826
|
-
}, children: sorted.map((child) => /* @__PURE__ */ (0,
|
|
30922
|
+
}, children: sorted.map((child) => /* @__PURE__ */ (0, import_jsx_runtime243.jsx)(FormSectionChild, { ...child, ...tid }, child.id)) });
|
|
30827
30923
|
}
|
|
30828
30924
|
function sortByOrderField(childSections) {
|
|
30829
30925
|
return [...childSections].sort((a, b) => (a.orderField.value ?? 0) - (b.orderField.value ?? 0));
|
|
30830
30926
|
}
|
|
30831
30927
|
|
|
30832
30928
|
// src/layouts/FormSectionLayout/JumpLinksRail.tsx
|
|
30833
|
-
var
|
|
30834
|
-
var
|
|
30929
|
+
var import_runtime161 = require("@homebound/truss/runtime");
|
|
30930
|
+
var import_jsx_runtime244 = require("react/jsx-runtime");
|
|
30835
30931
|
var __maybeInc31 = (inc) => {
|
|
30836
30932
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
30837
30933
|
};
|
|
@@ -30841,7 +30937,7 @@ function JumpLinksRail(props) {
|
|
|
30841
30937
|
activeId
|
|
30842
30938
|
} = props;
|
|
30843
30939
|
const tid = useTestIds(props, "jumpLinks");
|
|
30844
|
-
return /* @__PURE__ */ (0,
|
|
30940
|
+
return /* @__PURE__ */ (0, import_jsx_runtime244.jsx)("nav", { ...(0, import_runtime161.trussProps)({
|
|
30845
30941
|
display: "df",
|
|
30846
30942
|
flexDirection: "fdc",
|
|
30847
30943
|
flexShrink: "fs0",
|
|
@@ -30851,21 +30947,21 @@ function JumpLinksRail(props) {
|
|
|
30851
30947
|
position: "sticky",
|
|
30852
30948
|
alignSelf: "asfs",
|
|
30853
30949
|
top: ["top_var", {
|
|
30854
|
-
"--top": (0,
|
|
30950
|
+
"--top": (0, import_runtime161.maybeCssVar)(__maybeInc31(stickyNavAndHeaderOffset()))
|
|
30855
30951
|
}]
|
|
30856
|
-
}), ...tid, children: links.map((link) => /* @__PURE__ */ (0,
|
|
30952
|
+
}), ...tid, children: links.map((link) => /* @__PURE__ */ (0, import_jsx_runtime244.jsx)(JumpLink, { label: link.label, href: `#${link.id}`, active: link.id === activeId, ...tid.link }, link.id)) });
|
|
30857
30953
|
}
|
|
30858
30954
|
var jumpLinksRailWidthPx = 192;
|
|
30859
30955
|
var railAndShellPx = centeredShellMaxPx.sm + jumpLinksRailWidthPx;
|
|
30860
30956
|
var jumpLinksRailReservation = `clamp(0px, 100% - ${railAndShellPx}px, ${jumpLinksRailWidthPx}px)`;
|
|
30861
30957
|
|
|
30862
30958
|
// src/layouts/FormSectionLayout/useActiveJumpLink.ts
|
|
30863
|
-
var
|
|
30959
|
+
var import_react165 = require("react");
|
|
30864
30960
|
var activationLeadPx = 120;
|
|
30865
30961
|
function useActiveJumpLink(sectionIds) {
|
|
30866
30962
|
const idsKey = sectionIds.join("\0");
|
|
30867
|
-
const [activeId, setActiveId] = (0,
|
|
30868
|
-
(0,
|
|
30963
|
+
const [activeId, setActiveId] = (0, import_react165.useState)(sectionIds[0]);
|
|
30964
|
+
(0, import_react165.useLayoutEffect)(() => {
|
|
30869
30965
|
const ids = idsKey.length === 0 ? [] : idsKey.split("\0");
|
|
30870
30966
|
if (ids.length === 0) return;
|
|
30871
30967
|
const update = () => {
|
|
@@ -30889,7 +30985,7 @@ function useActiveJumpLink(sectionIds) {
|
|
|
30889
30985
|
}
|
|
30890
30986
|
|
|
30891
30987
|
// src/layouts/FormSectionLayout/FormSectionLayout.tsx
|
|
30892
|
-
var
|
|
30988
|
+
var import_jsx_runtime245 = require("react/jsx-runtime");
|
|
30893
30989
|
var __maybeInc32 = (inc) => {
|
|
30894
30990
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
30895
30991
|
};
|
|
@@ -30926,7 +31022,7 @@ function FormSectionLayout(props) {
|
|
|
30926
31022
|
}] : [], ...sectionLinks];
|
|
30927
31023
|
const showRail = withJumpLinks && jumpLinks.length >= 2 && !isMobile;
|
|
30928
31024
|
const activeId = useActiveJumpLink(showRail ? jumpLinks.map((link) => link.id) : []);
|
|
30929
|
-
const content2 = /* @__PURE__ */ (0,
|
|
31025
|
+
const content2 = /* @__PURE__ */ (0, import_jsx_runtime245.jsxs)("div", { ...(0, import_runtime162.trussProps)({
|
|
30930
31026
|
display: "df",
|
|
30931
31027
|
flexDirection: "fdc",
|
|
30932
31028
|
gap: "g_8",
|
|
@@ -30937,37 +31033,37 @@ function FormSectionLayout(props) {
|
|
|
30937
31033
|
paddingLeft: "pl3"
|
|
30938
31034
|
} : {}
|
|
30939
31035
|
}), children: [
|
|
30940
|
-
/* @__PURE__ */ (0,
|
|
31036
|
+
/* @__PURE__ */ (0, import_jsx_runtime245.jsxs)("div", { id: titleAnchor ? formSectionLayoutTitleId : void 0, ...(0, import_runtime162.trussProps)({
|
|
30941
31037
|
display: "df",
|
|
30942
31038
|
flexDirection: "fdc",
|
|
30943
31039
|
gap: "g_3",
|
|
30944
31040
|
...titleAnchor ? {
|
|
30945
31041
|
scrollMarginTop: ["scrollMarginTop_var", {
|
|
30946
|
-
"--scrollMarginTop": (0,
|
|
31042
|
+
"--scrollMarginTop": (0, import_runtime162.maybeCssVar)(stickyNavAndHeaderOffset())
|
|
30947
31043
|
}]
|
|
30948
31044
|
} : {}
|
|
30949
31045
|
}), children: [
|
|
30950
|
-
/* @__PURE__ */ (0,
|
|
31046
|
+
/* @__PURE__ */ (0, import_jsx_runtime245.jsx)(ContentHeader, { ...tid, title, description, actions, withAutoSave, level: 2, aiMode }),
|
|
30951
31047
|
initialFields
|
|
30952
31048
|
] }),
|
|
30953
|
-
sections && /* @__PURE__ */ (0,
|
|
31049
|
+
sections && /* @__PURE__ */ (0, import_jsx_runtime245.jsx)("div", { className: "df fdc g_8", children: sections.map((section, i) => /* @__PURE__ */ (0, import_jsx_runtime245.jsx)(FormSection, { ...section }, defaultTestId(section.title) || i)) })
|
|
30954
31050
|
] });
|
|
30955
|
-
const form = /* @__PURE__ */ (0,
|
|
30956
|
-
const body = showRail ? /* @__PURE__ */ (0,
|
|
30957
|
-
/* @__PURE__ */ (0,
|
|
30958
|
-
/* @__PURE__ */ (0,
|
|
31051
|
+
const form = /* @__PURE__ */ (0, import_jsx_runtime245.jsx)(CenteredLayout, { size: "sm", children: aiMode ? /* @__PURE__ */ (0, import_jsx_runtime245.jsx)(AiCard, { size: "lg", ...tid, children: content2 }) : content2 });
|
|
31052
|
+
const body = showRail ? /* @__PURE__ */ (0, import_jsx_runtime245.jsxs)("div", { className: "df w100 mb4", children: [
|
|
31053
|
+
/* @__PURE__ */ (0, import_jsx_runtime245.jsx)(JumpLinksRail, { links: jumpLinks, activeId, ...tid.jumpLinks }),
|
|
31054
|
+
/* @__PURE__ */ (0, import_jsx_runtime245.jsx)("div", { ...(0, import_runtime162.trussProps)({
|
|
30959
31055
|
flexGrow: "fg1",
|
|
30960
31056
|
marginRight: ["mr_var", {
|
|
30961
|
-
"--marginRight": (0,
|
|
31057
|
+
"--marginRight": (0, import_runtime162.maybeCssVar)(__maybeInc32(jumpLinksRailReservation))
|
|
30962
31058
|
}]
|
|
30963
31059
|
}), ...tid.column, children: form })
|
|
30964
|
-
] }) : /* @__PURE__ */ (0,
|
|
31060
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime245.jsx)("div", { className: "mb4", children: form });
|
|
30965
31061
|
if (!rightPane) return body;
|
|
30966
|
-
return /* @__PURE__ */ (0,
|
|
31062
|
+
return /* @__PURE__ */ (0, import_jsx_runtime245.jsx)(DocumentScrollOverlayRightPaneLayout, { paneWidth: rightPane.width, children: body });
|
|
30967
31063
|
}
|
|
30968
31064
|
|
|
30969
31065
|
// src/layouts/PageBanner/usePageBanner.tsx
|
|
30970
|
-
var
|
|
31066
|
+
var import_react166 = require("react");
|
|
30971
31067
|
|
|
30972
31068
|
// src/layouts/PageBanner/pageBannerStore.ts
|
|
30973
31069
|
var current;
|
|
@@ -31004,13 +31100,13 @@ function clearPageBanner(id) {
|
|
|
31004
31100
|
|
|
31005
31101
|
// src/layouts/PageBanner/usePageBanner.tsx
|
|
31006
31102
|
function usePageBanner(banner) {
|
|
31007
|
-
const id = (0,
|
|
31008
|
-
(0,
|
|
31103
|
+
const id = (0, import_react166.useId)();
|
|
31104
|
+
(0, import_react166.useLayoutEffect)(() => {
|
|
31009
31105
|
if (!banner) return;
|
|
31010
31106
|
setPageBanner(id, banner);
|
|
31011
31107
|
return () => clearPageBanner(id);
|
|
31012
31108
|
}, [id, banner]);
|
|
31013
|
-
(0,
|
|
31109
|
+
(0, import_react166.useEffect)(() => {
|
|
31014
31110
|
if (!banner || hasPageBannerSubscriber() || process.env.NODE_ENV === "production") return;
|
|
31015
31111
|
console.warn("[usePageBanner] No page layout above this component; the banner will not render.");
|
|
31016
31112
|
}, [banner]);
|
|
@@ -31021,11 +31117,11 @@ function PageBanner(props) {
|
|
|
31021
31117
|
}
|
|
31022
31118
|
|
|
31023
31119
|
// src/layouts/NavbarLayout/NavbarLayout.tsx
|
|
31024
|
-
var
|
|
31025
|
-
var
|
|
31120
|
+
var import_react171 = require("react");
|
|
31121
|
+
var import_runtime163 = require("@homebound/truss/runtime");
|
|
31026
31122
|
|
|
31027
31123
|
// src/layouts/useAutoHideOnScroll.ts
|
|
31028
|
-
var
|
|
31124
|
+
var import_react167 = require("react");
|
|
31029
31125
|
var THRESHOLD = 80;
|
|
31030
31126
|
function getInitialAutoHideState() {
|
|
31031
31127
|
if (typeof window === "undefined" || window.scrollY <= 0) {
|
|
@@ -31035,13 +31131,13 @@ function getInitialAutoHideState() {
|
|
|
31035
31131
|
}
|
|
31036
31132
|
function useAutoHideOnScroll(spacerRef, enabled, getTopOffset) {
|
|
31037
31133
|
const initial = getInitialAutoHideState();
|
|
31038
|
-
const [state, setState] = (0,
|
|
31039
|
-
const stateRef = (0,
|
|
31040
|
-
const getTopOffsetRef = (0,
|
|
31134
|
+
const [state, setState] = (0, import_react167.useState)(initial);
|
|
31135
|
+
const stateRef = (0, import_react167.useRef)(initial);
|
|
31136
|
+
const getTopOffsetRef = (0, import_react167.useRef)(getTopOffset);
|
|
31041
31137
|
getTopOffsetRef.current = getTopOffset;
|
|
31042
|
-
const lastScrollY = (0,
|
|
31043
|
-
const lastScrollHeight = (0,
|
|
31044
|
-
(0,
|
|
31138
|
+
const lastScrollY = (0, import_react167.useRef)(Number.POSITIVE_INFINITY);
|
|
31139
|
+
const lastScrollHeight = (0, import_react167.useRef)(0);
|
|
31140
|
+
(0, import_react167.useLayoutEffect)(() => {
|
|
31045
31141
|
if (!enabled) {
|
|
31046
31142
|
stateRef.current = "resting";
|
|
31047
31143
|
lastScrollY.current = Number.POSITIVE_INFINITY;
|
|
@@ -31106,26 +31202,26 @@ function useAutoHideOnScroll(spacerRef, enabled, getTopOffset) {
|
|
|
31106
31202
|
}
|
|
31107
31203
|
|
|
31108
31204
|
// src/layouts/useMeasuredHeight.ts
|
|
31109
|
-
var
|
|
31110
|
-
var
|
|
31205
|
+
var import_utils51 = require("@react-aria/utils");
|
|
31206
|
+
var import_react168 = require("react");
|
|
31111
31207
|
function useMeasuredHeight(ref, enabled) {
|
|
31112
|
-
const [height, setHeight] = (0,
|
|
31113
|
-
const syncElementHeight = (0,
|
|
31208
|
+
const [height, setHeight] = (0, import_react168.useState)(0);
|
|
31209
|
+
const syncElementHeight = (0, import_react168.useCallback)(() => {
|
|
31114
31210
|
const el = ref.current;
|
|
31115
31211
|
const next = el ? Math.round(el.getBoundingClientRect().height) : 0;
|
|
31116
31212
|
setHeight((prev) => prev === next ? prev : next);
|
|
31117
31213
|
}, [ref]);
|
|
31118
|
-
(0,
|
|
31119
|
-
(0,
|
|
31214
|
+
(0, import_utils51.useResizeObserver)({ ref, onResize: syncElementHeight });
|
|
31215
|
+
(0, import_react168.useLayoutEffect)(() => {
|
|
31120
31216
|
syncElementHeight();
|
|
31121
31217
|
}, [enabled, syncElementHeight]);
|
|
31122
31218
|
return height;
|
|
31123
31219
|
}
|
|
31124
31220
|
|
|
31125
31221
|
// src/layouts/useTransitionAfterPaint.ts
|
|
31126
|
-
var
|
|
31222
|
+
var import_react169 = require("react");
|
|
31127
31223
|
function useTransitionAfterPaint(ref, transition) {
|
|
31128
|
-
(0,
|
|
31224
|
+
(0, import_react169.useLayoutEffect)(() => {
|
|
31129
31225
|
const el = ref.current;
|
|
31130
31226
|
if (!el) return;
|
|
31131
31227
|
const id = requestAnimationFrame(() => {
|
|
@@ -31136,18 +31232,18 @@ function useTransitionAfterPaint(ref, transition) {
|
|
|
31136
31232
|
}
|
|
31137
31233
|
|
|
31138
31234
|
// src/layouts/NavbarLayout/NavbarLayoutHeightContext.tsx
|
|
31139
|
-
var
|
|
31140
|
-
var
|
|
31141
|
-
var NavbarLayoutHeightContext = (0,
|
|
31235
|
+
var import_react170 = require("react");
|
|
31236
|
+
var import_jsx_runtime246 = require("react/jsx-runtime");
|
|
31237
|
+
var NavbarLayoutHeightContext = (0, import_react170.createContext)(0);
|
|
31142
31238
|
function NavbarLayoutHeightProvider({ value, children }) {
|
|
31143
|
-
return /* @__PURE__ */ (0,
|
|
31239
|
+
return /* @__PURE__ */ (0, import_jsx_runtime246.jsx)(NavbarLayoutHeightContext.Provider, { value, children });
|
|
31144
31240
|
}
|
|
31145
31241
|
function useNavbarLayoutHeight() {
|
|
31146
|
-
return (0,
|
|
31242
|
+
return (0, import_react170.useContext)(NavbarLayoutHeightContext);
|
|
31147
31243
|
}
|
|
31148
31244
|
|
|
31149
31245
|
// src/layouts/NavbarLayout/NavbarLayout.tsx
|
|
31150
|
-
var
|
|
31246
|
+
var import_jsx_runtime247 = require("react/jsx-runtime");
|
|
31151
31247
|
var __maybeInc33 = (inc) => {
|
|
31152
31248
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
31153
31249
|
};
|
|
@@ -31157,8 +31253,8 @@ function NavbarLayout(props) {
|
|
|
31157
31253
|
children
|
|
31158
31254
|
} = props;
|
|
31159
31255
|
const tid = useTestIds(props, "navbarLayout");
|
|
31160
|
-
const navMetricsRef = (0,
|
|
31161
|
-
const spacerRef = (0,
|
|
31256
|
+
const navMetricsRef = (0, import_react171.useRef)(null);
|
|
31257
|
+
const spacerRef = (0, import_react171.useRef)(null);
|
|
31162
31258
|
const navHeight = useMeasuredHeight(navMetricsRef, true);
|
|
31163
31259
|
const {
|
|
31164
31260
|
state: autoHideState
|
|
@@ -31173,10 +31269,10 @@ function NavbarLayout(props) {
|
|
|
31173
31269
|
position: "fixed",
|
|
31174
31270
|
left: "l_0",
|
|
31175
31271
|
zIndex: ["z_var", {
|
|
31176
|
-
"--zIndex": (0,
|
|
31272
|
+
"--zIndex": (0, import_runtime163.maybeCssVar)(zIndices.navbar)
|
|
31177
31273
|
}],
|
|
31178
31274
|
width: ["w_var", {
|
|
31179
|
-
"--width": (0,
|
|
31275
|
+
"--width": (0, import_runtime163.maybeCssVar)(__maybeInc33(innerWidth))
|
|
31180
31276
|
}]
|
|
31181
31277
|
};
|
|
31182
31278
|
useTransitionAfterPaint(navMetricsRef, "top 200ms cubic-bezier(0.4, 0, 0.2, 1)");
|
|
@@ -31184,32 +31280,32 @@ function NavbarLayout(props) {
|
|
|
31184
31280
|
const innerStyle = {
|
|
31185
31281
|
top: autoHideState === "hidden" ? `calc(${bannerTop} - ${navHeight}px)` : bannerTop
|
|
31186
31282
|
};
|
|
31187
|
-
const navbarEl = (0,
|
|
31188
|
-
return /* @__PURE__ */ (0,
|
|
31283
|
+
const navbarEl = (0, import_react171.useMemo)(() => /* @__PURE__ */ (0, import_jsx_runtime247.jsx)(Navbar, { ...navbar }), [navbar]);
|
|
31284
|
+
return /* @__PURE__ */ (0, import_jsx_runtime247.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime247.jsx)(NavbarLayoutHeightProvider, { value: navbarOffsetPx, children: /* @__PURE__ */ (0, import_jsx_runtime247.jsx)(MobileSubNavProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime247.jsxs)("div", { ...(0, import_runtime163.mergeProps)(void 0, cssVars, {
|
|
31189
31285
|
display: "df",
|
|
31190
31286
|
flexDirection: "fdc",
|
|
31191
31287
|
width: "wfc",
|
|
31192
31288
|
minWidth: "mw100"
|
|
31193
31289
|
}), ...tid, children: [
|
|
31194
|
-
/* @__PURE__ */ (0,
|
|
31290
|
+
/* @__PURE__ */ (0, import_jsx_runtime247.jsx)("div", { ref: spacerRef, ...(0, import_runtime163.mergeProps)(void 0, {
|
|
31195
31291
|
height: navHeight
|
|
31196
31292
|
}, {
|
|
31197
31293
|
flexShrink: "fs0",
|
|
31198
31294
|
width: "w100"
|
|
31199
|
-
}), children: /* @__PURE__ */ (0,
|
|
31200
|
-
/* @__PURE__ */ (0,
|
|
31295
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime247.jsx)("div", { ref: navMetricsRef, ...(0, import_runtime163.mergeProps)(void 0, innerStyle, innerCss), ...tid.navbar, children: navbarEl }) }),
|
|
31296
|
+
/* @__PURE__ */ (0, import_jsx_runtime247.jsx)("div", { className: "df fdc mh0 mw100 w100", ...tid.body, children })
|
|
31201
31297
|
] }) }) }) });
|
|
31202
31298
|
}
|
|
31203
31299
|
|
|
31204
31300
|
// src/layouts/PageHeaderLayout/PageHeaderLayout.tsx
|
|
31205
|
-
var
|
|
31301
|
+
var import_react174 = require("react");
|
|
31206
31302
|
|
|
31207
31303
|
// src/hooks/useDocumentTitle.tsx
|
|
31208
|
-
var
|
|
31304
|
+
var import_react172 = require("react");
|
|
31209
31305
|
function useDocumentTitle(...titleSegments) {
|
|
31210
31306
|
const config = useDocumentTitleConfig();
|
|
31211
31307
|
const pageTitle = joinDocumentTitleSegments(...titleSegments);
|
|
31212
|
-
(0,
|
|
31308
|
+
(0, import_react172.useLayoutEffect)(() => {
|
|
31213
31309
|
if (!config || !pageTitle || typeof document === "undefined") {
|
|
31214
31310
|
return;
|
|
31215
31311
|
}
|
|
@@ -31221,8 +31317,8 @@ function useDocumentTitle(...titleSegments) {
|
|
|
31221
31317
|
}
|
|
31222
31318
|
|
|
31223
31319
|
// src/components/Headers/BaseHeader.tsx
|
|
31224
|
-
var
|
|
31225
|
-
var
|
|
31320
|
+
var import_runtime164 = require("@homebound/truss/runtime");
|
|
31321
|
+
var import_jsx_runtime248 = require("react/jsx-runtime");
|
|
31226
31322
|
function BaseHeader(props) {
|
|
31227
31323
|
const {
|
|
31228
31324
|
title,
|
|
@@ -31234,7 +31330,7 @@ function BaseHeader(props) {
|
|
|
31234
31330
|
} = props;
|
|
31235
31331
|
const tid = useTestIds(otherProps, "header");
|
|
31236
31332
|
useDocumentTitle(title, documentTitleSuffix);
|
|
31237
|
-
return /* @__PURE__ */ (0,
|
|
31333
|
+
return /* @__PURE__ */ (0, import_jsx_runtime248.jsxs)("header", { ...tid, ...(0, import_runtime164.trussProps)({
|
|
31238
31334
|
display: "df",
|
|
31239
31335
|
flexDirection: "fdc",
|
|
31240
31336
|
paddingTop: "pt3",
|
|
@@ -31248,7 +31344,7 @@ function BaseHeader(props) {
|
|
|
31248
31344
|
"--backgroundColor": "var(--b-surface)"
|
|
31249
31345
|
}]
|
|
31250
31346
|
}), children: [
|
|
31251
|
-
/* @__PURE__ */ (0,
|
|
31347
|
+
/* @__PURE__ */ (0, import_jsx_runtime248.jsxs)("div", { ...(0, import_runtime164.trussProps)({
|
|
31252
31348
|
...{
|
|
31253
31349
|
display: "df",
|
|
31254
31350
|
justifyContent: "jcsb",
|
|
@@ -31262,9 +31358,9 @@ function BaseHeader(props) {
|
|
|
31262
31358
|
} : {}
|
|
31263
31359
|
}
|
|
31264
31360
|
}), children: [
|
|
31265
|
-
/* @__PURE__ */ (0,
|
|
31266
|
-
breadcrumbs && /* @__PURE__ */ (0,
|
|
31267
|
-
/* @__PURE__ */ (0,
|
|
31361
|
+
/* @__PURE__ */ (0, import_jsx_runtime248.jsxs)("div", { className: "mw0", children: [
|
|
31362
|
+
breadcrumbs && /* @__PURE__ */ (0, import_jsx_runtime248.jsx)(Breadcrumbs, { ...breadcrumbs }),
|
|
31363
|
+
/* @__PURE__ */ (0, import_jsx_runtime248.jsx)("h1", { ...tid.title, ...(0, import_runtime164.trussProps)({
|
|
31268
31364
|
fontWeight: "fw6",
|
|
31269
31365
|
fontSize: "fz_20px",
|
|
31270
31366
|
lineHeight: "lh_28px",
|
|
@@ -31273,15 +31369,15 @@ function BaseHeader(props) {
|
|
|
31273
31369
|
}]
|
|
31274
31370
|
}), children: title })
|
|
31275
31371
|
] }),
|
|
31276
|
-
/* @__PURE__ */ (0,
|
|
31372
|
+
/* @__PURE__ */ (0, import_jsx_runtime248.jsx)("div", { className: "fs0", children: rightSlot })
|
|
31277
31373
|
] }),
|
|
31278
31374
|
bottomSlot
|
|
31279
31375
|
] });
|
|
31280
31376
|
}
|
|
31281
31377
|
|
|
31282
31378
|
// src/components/Headers/PageHeader.tsx
|
|
31283
|
-
var
|
|
31284
|
-
var
|
|
31379
|
+
var import_runtime165 = require("@homebound/truss/runtime");
|
|
31380
|
+
var import_jsx_runtime249 = require("react/jsx-runtime");
|
|
31285
31381
|
function PageHeader2(props) {
|
|
31286
31382
|
const {
|
|
31287
31383
|
tabs,
|
|
@@ -31297,29 +31393,29 @@ function PageHeader2(props) {
|
|
|
31297
31393
|
bottomSlotActions,
|
|
31298
31394
|
rightSlotActions
|
|
31299
31395
|
} = splitHeaderActionsOnSm(actions, sm);
|
|
31300
|
-
return /* @__PURE__ */ (0,
|
|
31301
|
-
/* @__PURE__ */ (0,
|
|
31302
|
-
rightSlotActions.length > 0 && /* @__PURE__ */ (0,
|
|
31396
|
+
return /* @__PURE__ */ (0, import_jsx_runtime249.jsx)(BaseHeader, { ...otherProps, rightSlot: /* @__PURE__ */ (0, import_jsx_runtime249.jsxs)("div", { className: "df g_2 fs0", ...tid.actions, children: [
|
|
31397
|
+
/* @__PURE__ */ (0, import_jsx_runtime249.jsx)(AutoSaveIndicator, { hideOnIdle: true }),
|
|
31398
|
+
rightSlotActions.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime249.jsx)(HeaderActions, { actions: rightSlotActions, collapseOnSm: true }),
|
|
31303
31399
|
rightSlot
|
|
31304
|
-
] }), bottomSlot: (bottomSlotActions.length > 0 || tabs) && /* @__PURE__ */ (0,
|
|
31305
|
-
bottomSlotActions.length > 0 && /* @__PURE__ */ (0,
|
|
31400
|
+
] }), bottomSlot: (bottomSlotActions.length > 0 || tabs) && /* @__PURE__ */ (0, import_jsx_runtime249.jsxs)(import_jsx_runtime249.Fragment, { children: [
|
|
31401
|
+
bottomSlotActions.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime249.jsx)("div", { ...(0, import_runtime165.trussProps)({
|
|
31306
31402
|
...pageContentPaddingX,
|
|
31307
31403
|
...{
|
|
31308
31404
|
...!tabs ? {
|
|
31309
31405
|
marginBottom: "mb2"
|
|
31310
31406
|
} : {}
|
|
31311
31407
|
}
|
|
31312
|
-
}), ...tid.bottomSlot, children: /* @__PURE__ */ (0,
|
|
31313
|
-
tabs && /* @__PURE__ */ (0,
|
|
31408
|
+
}), ...tid.bottomSlot, children: /* @__PURE__ */ (0, import_jsx_runtime249.jsx)(HeaderActions, { actions: bottomSlotActions }) }),
|
|
31409
|
+
tabs && /* @__PURE__ */ (0, import_jsx_runtime249.jsx)("div", { ...(0, import_runtime165.trussProps)(pageContentPaddingX), children: /* @__PURE__ */ (0, import_jsx_runtime249.jsx)(Tabs, { ...tabs, ...tid.tabs }) })
|
|
31314
31410
|
] }) });
|
|
31315
31411
|
}
|
|
31316
31412
|
|
|
31317
31413
|
// src/layouts/PageBanner/internal/usePageBannerSlot.tsx
|
|
31318
|
-
var
|
|
31414
|
+
var import_react173 = require("react");
|
|
31319
31415
|
|
|
31320
31416
|
// src/layouts/PageBanner/internal/PageBannerSlot.tsx
|
|
31321
|
-
var
|
|
31322
|
-
var
|
|
31417
|
+
var import_runtime166 = require("@homebound/truss/runtime");
|
|
31418
|
+
var import_jsx_runtime250 = require("react/jsx-runtime");
|
|
31323
31419
|
var __maybeInc34 = (inc) => {
|
|
31324
31420
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
31325
31421
|
};
|
|
@@ -31329,42 +31425,42 @@ function PageBannerSlot(props) {
|
|
|
31329
31425
|
metricsRef
|
|
31330
31426
|
} = props;
|
|
31331
31427
|
const tid = useTestIds(props, "pageBannerSlot");
|
|
31332
|
-
return /* @__PURE__ */ (0,
|
|
31428
|
+
return /* @__PURE__ */ (0, import_jsx_runtime250.jsx)("div", { ref: metricsRef, ...(0, import_runtime166.trussProps)({
|
|
31333
31429
|
flexShrink: "fs0",
|
|
31334
31430
|
width: ["w_var", {
|
|
31335
|
-
"--width": (0,
|
|
31431
|
+
"--width": (0, import_runtime166.maybeCssVar)(__maybeInc34(`min(100%, ${documentScrollChromeWidth()})`))
|
|
31336
31432
|
}],
|
|
31337
31433
|
transition: "transitionTop",
|
|
31338
31434
|
position: "sticky",
|
|
31339
31435
|
top: ["top_var", {
|
|
31340
|
-
"--top": (0,
|
|
31436
|
+
"--top": (0, import_runtime166.maybeCssVar)(__maybeInc34(pageBannerOffset()))
|
|
31341
31437
|
}],
|
|
31342
31438
|
left: ["left_var", {
|
|
31343
|
-
"--left": (0,
|
|
31439
|
+
"--left": (0, import_runtime166.maybeCssVar)(__maybeInc34(documentScrollChromeLeft()))
|
|
31344
31440
|
}],
|
|
31345
31441
|
zIndex: ["z_var", {
|
|
31346
|
-
"--zIndex": (0,
|
|
31442
|
+
"--zIndex": (0, import_runtime166.maybeCssVar)(zIndices.pageBanner)
|
|
31347
31443
|
}]
|
|
31348
|
-
}), ...tid.bannerSticky, children: /* @__PURE__ */ (0,
|
|
31444
|
+
}), ...tid.bannerSticky, children: /* @__PURE__ */ (0, import_jsx_runtime250.jsx)(StatusBanner, { ...banner, sticky: true, ...tid.banner }) });
|
|
31349
31445
|
}
|
|
31350
31446
|
|
|
31351
31447
|
// src/layouts/PageBanner/internal/usePageBannerSlot.tsx
|
|
31352
|
-
var
|
|
31448
|
+
var import_jsx_runtime251 = require("react/jsx-runtime");
|
|
31353
31449
|
function usePageBannerSlot(bannerProp, testIds) {
|
|
31354
31450
|
const publishedBanner = usePublishedPageBanner();
|
|
31355
31451
|
const banner = publishedBanner ?? bannerProp;
|
|
31356
|
-
const metricsRef = (0,
|
|
31452
|
+
const metricsRef = (0, import_react173.useRef)(null);
|
|
31357
31453
|
const height = useMeasuredHeight(metricsRef, banner != null);
|
|
31358
|
-
const slot = banner ? /* @__PURE__ */ (0,
|
|
31454
|
+
const slot = banner ? /* @__PURE__ */ (0, import_jsx_runtime251.jsx)(PageBannerSlot, { ...testIds, banner, metricsRef }) : null;
|
|
31359
31455
|
return { slot, height };
|
|
31360
31456
|
}
|
|
31361
31457
|
function usePublishedPageBanner() {
|
|
31362
|
-
const [banner, setBanner] = (0,
|
|
31363
|
-
const sync = (0,
|
|
31458
|
+
const [banner, setBanner] = (0, import_react173.useState)(pageBannerStore.getSnapshot);
|
|
31459
|
+
const sync = (0, import_react173.useCallback)(() => {
|
|
31364
31460
|
const next = pageBannerStore.getSnapshot();
|
|
31365
31461
|
setBanner((prev) => prev === next ? prev : next);
|
|
31366
31462
|
}, []);
|
|
31367
|
-
(0,
|
|
31463
|
+
(0, import_react173.useLayoutEffect)(() => {
|
|
31368
31464
|
sync();
|
|
31369
31465
|
return pageBannerStore.subscribe(sync);
|
|
31370
31466
|
}, [sync]);
|
|
@@ -31377,8 +31473,8 @@ function useBannerAndNavbarHeight() {
|
|
|
31377
31473
|
}
|
|
31378
31474
|
|
|
31379
31475
|
// src/layouts/PageHeaderLayout/PageHeaderLayout.tsx
|
|
31380
|
-
var
|
|
31381
|
-
var
|
|
31476
|
+
var import_runtime167 = require("@homebound/truss/runtime");
|
|
31477
|
+
var import_jsx_runtime252 = require("react/jsx-runtime");
|
|
31382
31478
|
var __maybeInc35 = (inc) => {
|
|
31383
31479
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
31384
31480
|
};
|
|
@@ -31394,11 +31490,11 @@ function PageHeaderLayout(props) {
|
|
|
31394
31490
|
height: bannerHeight
|
|
31395
31491
|
} = usePageBannerSlot(bannerProp, tid);
|
|
31396
31492
|
const bannerAndNavbarHeight = useBannerAndNavbarHeight();
|
|
31397
|
-
const bannerAndNavbarHeightRef = (0,
|
|
31493
|
+
const bannerAndNavbarHeightRef = (0, import_react174.useRef)(bannerAndNavbarHeight);
|
|
31398
31494
|
bannerAndNavbarHeightRef.current = bannerAndNavbarHeight;
|
|
31399
|
-
const getBannerAndNavbarHeight = (0,
|
|
31400
|
-
const headerMetricsRef = (0,
|
|
31401
|
-
const spacerRef = (0,
|
|
31495
|
+
const getBannerAndNavbarHeight = (0, import_react174.useCallback)(() => bannerAndNavbarHeightRef.current, []);
|
|
31496
|
+
const headerMetricsRef = (0, import_react174.useRef)(null);
|
|
31497
|
+
const spacerRef = (0, import_react174.useRef)(null);
|
|
31402
31498
|
const headerHeight = useMeasuredHeight(headerMetricsRef, true);
|
|
31403
31499
|
const {
|
|
31404
31500
|
state: autoHideState
|
|
@@ -31418,57 +31514,57 @@ function PageHeaderLayout(props) {
|
|
|
31418
31514
|
const innerCss = {
|
|
31419
31515
|
position: "fixed",
|
|
31420
31516
|
left: ["left_var", {
|
|
31421
|
-
"--left": (0,
|
|
31517
|
+
"--left": (0, import_runtime167.maybeCssVar)(__maybeInc35(headerLeft))
|
|
31422
31518
|
}],
|
|
31423
31519
|
width: ["w_var", {
|
|
31424
|
-
"--width": (0,
|
|
31520
|
+
"--width": (0, import_runtime167.maybeCssVar)(__maybeInc35(headerWidth))
|
|
31425
31521
|
}],
|
|
31426
31522
|
zIndex: ["z_var", {
|
|
31427
|
-
"--zIndex": (0,
|
|
31523
|
+
"--zIndex": (0, import_runtime167.maybeCssVar)(zIndices.pageStickyHeader)
|
|
31428
31524
|
}]
|
|
31429
31525
|
};
|
|
31430
31526
|
useTransitionAfterPaint(headerMetricsRef, "all 200ms cubic-bezier(0.4, 0, 0.2, 1)");
|
|
31431
31527
|
const innerStyle = {
|
|
31432
31528
|
top: autoHideState === "hidden" ? `calc(${outerTop} - ${headerHeight}px)` : outerTop
|
|
31433
31529
|
};
|
|
31434
|
-
const pageHeaderEl = (0,
|
|
31435
|
-
return /* @__PURE__ */ (0,
|
|
31530
|
+
const pageHeaderEl = (0, import_react174.useMemo)(() => /* @__PURE__ */ (0, import_jsx_runtime252.jsx)(PageHeader2, { ...pageHeader }), [pageHeader]);
|
|
31531
|
+
return /* @__PURE__ */ (0, import_jsx_runtime252.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime252.jsxs)("div", { ...(0, import_runtime167.mergeProps)(void 0, style, {
|
|
31436
31532
|
display: "df",
|
|
31437
31533
|
flexDirection: "fdc",
|
|
31438
31534
|
width: "w100"
|
|
31439
31535
|
}), ...tid, children: [
|
|
31440
|
-
/* @__PURE__ */ (0,
|
|
31536
|
+
/* @__PURE__ */ (0, import_jsx_runtime252.jsx)("div", { ref: spacerRef, ...(0, import_runtime167.mergeProps)(void 0, {
|
|
31441
31537
|
height: headerHeight
|
|
31442
31538
|
}, {
|
|
31443
31539
|
flexShrink: "fs0",
|
|
31444
31540
|
width: "w100"
|
|
31445
|
-
}), children: /* @__PURE__ */ (0,
|
|
31541
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime252.jsx)("div", { ref: headerMetricsRef, ...(0, import_runtime167.mergeProps)(void 0, innerStyle, innerCss), ...tid.pageHeader, children: pageHeaderEl }) }),
|
|
31446
31542
|
bannerSlot,
|
|
31447
|
-
/* @__PURE__ */ (0,
|
|
31543
|
+
/* @__PURE__ */ (0, import_jsx_runtime252.jsx)("div", { className: "df fdc fg1 mh0 w100 n_has_data_self_top_spaced_first_child_pt3", ...tid.body, children })
|
|
31448
31544
|
] }) });
|
|
31449
31545
|
}
|
|
31450
31546
|
|
|
31451
31547
|
// src/layouts/Workflow/WorkflowPageLayout.tsx
|
|
31452
|
-
var
|
|
31548
|
+
var import_react177 = require("react");
|
|
31453
31549
|
|
|
31454
31550
|
// src/components/Headers/WorkflowHeader.tsx
|
|
31455
|
-
var
|
|
31551
|
+
var import_jsx_runtime253 = require("react/jsx-runtime");
|
|
31456
31552
|
function WorkflowHeader(props) {
|
|
31457
31553
|
const { stepperTabs, ...otherProps } = props;
|
|
31458
31554
|
const tid = useTestIds(otherProps, "header");
|
|
31459
|
-
return /* @__PURE__ */ (0,
|
|
31555
|
+
return /* @__PURE__ */ (0, import_jsx_runtime253.jsx)(
|
|
31460
31556
|
BaseHeader,
|
|
31461
31557
|
{
|
|
31462
31558
|
...otherProps,
|
|
31463
|
-
bottomSlot: stepperTabs ? /* @__PURE__ */ (0,
|
|
31559
|
+
bottomSlot: stepperTabs ? /* @__PURE__ */ (0, import_jsx_runtime253.jsx)(StepperTabs, { ...stepperTabs, ...tid.stepperTabs }) : void 0
|
|
31464
31560
|
}
|
|
31465
31561
|
);
|
|
31466
31562
|
}
|
|
31467
31563
|
|
|
31468
31564
|
// src/layouts/Workflow/RightPaneTriggers.tsx
|
|
31469
|
-
var
|
|
31470
|
-
var
|
|
31471
|
-
var
|
|
31565
|
+
var import_react175 = require("react");
|
|
31566
|
+
var import_runtime168 = require("@homebound/truss/runtime");
|
|
31567
|
+
var import_jsx_runtime254 = require("react/jsx-runtime");
|
|
31472
31568
|
var __maybeInc36 = (inc) => {
|
|
31473
31569
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
31474
31570
|
};
|
|
@@ -31487,14 +31583,14 @@ function WorkflowPageRightPaneTriggers(props) {
|
|
|
31487
31583
|
} = useRightPaneActions();
|
|
31488
31584
|
const tid = useTestIds(props, "rightPaneTriggers");
|
|
31489
31585
|
const pageTriggerInsetPx = 24;
|
|
31490
|
-
const onClick = (0,
|
|
31586
|
+
const onClick = (0, import_react175.useCallback)((trigger) => {
|
|
31491
31587
|
openRightPane({
|
|
31492
|
-
content: /* @__PURE__ */ (0,
|
|
31588
|
+
content: /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(RightPanePanel, { title: trigger.label, children: trigger.content })
|
|
31493
31589
|
});
|
|
31494
31590
|
}, [openRightPane]);
|
|
31495
|
-
return /* @__PURE__ */ (0,
|
|
31591
|
+
return /* @__PURE__ */ (0, import_jsx_runtime254.jsx)("div", { ...tid, "aria-hidden": isRightPaneOpen, ...isRightPaneOpen ? {
|
|
31496
31592
|
inert: true
|
|
31497
|
-
} : {}, ...(0,
|
|
31593
|
+
} : {}, ...(0, import_runtime168.trussProps)({
|
|
31498
31594
|
...{
|
|
31499
31595
|
display: "df",
|
|
31500
31596
|
alignItems: "aic",
|
|
@@ -31508,40 +31604,40 @@ function WorkflowPageRightPaneTriggers(props) {
|
|
|
31508
31604
|
...!isMobile && {
|
|
31509
31605
|
position: "fixed",
|
|
31510
31606
|
top: ["top_var", {
|
|
31511
|
-
"--top": (0,
|
|
31607
|
+
"--top": (0, import_runtime168.maybeCssVar)(__maybeInc36(stickyNavAndHeaderOffset(pageTriggerInsetPx)))
|
|
31512
31608
|
}],
|
|
31513
31609
|
right: ["right_var", {
|
|
31514
31610
|
"--right": `${pageTriggerInsetPx}px`
|
|
31515
31611
|
}],
|
|
31516
31612
|
zIndex: ["z_var", {
|
|
31517
|
-
"--zIndex": (0,
|
|
31613
|
+
"--zIndex": (0, import_runtime168.maybeCssVar)(zIndices.rightPaneTriggers)
|
|
31518
31614
|
}]
|
|
31519
31615
|
},
|
|
31520
31616
|
// Desktop only — on `sm` the full-bleed pane covers the header slot.
|
|
31521
31617
|
...!isMobile && (isRightPaneOpen ? {
|
|
31522
31618
|
transform: ["transform_var", {
|
|
31523
|
-
"--transform": (0,
|
|
31619
|
+
"--transform": (0, import_runtime168.maybeCssVar)(`translateX(calc(100% + ${pageTriggerInsetPx}px))`)
|
|
31524
31620
|
}],
|
|
31525
31621
|
pointerEvents: "pen"
|
|
31526
31622
|
} : {
|
|
31527
31623
|
transform: "tf_translateX_0"
|
|
31528
31624
|
})
|
|
31529
|
-
}), children: triggers.map((trigger) => /* @__PURE__ */ (0,
|
|
31625
|
+
}), children: triggers.map((trigger) => /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(IconButton, { icon: trigger.icon, label: trigger.label, variant: "circle", compact: isMobile, onClick: () => onClick(trigger), ...tid[trigger.icon] }, trigger.label)) });
|
|
31530
31626
|
}
|
|
31531
31627
|
|
|
31532
31628
|
// src/layouts/Workflow/useUnsavedChangesGuard.tsx
|
|
31533
|
-
var
|
|
31629
|
+
var import_react176 = require("react");
|
|
31534
31630
|
var import_react_router_dom9 = require("react-router-dom");
|
|
31535
|
-
var
|
|
31631
|
+
var import_jsx_runtime255 = require("react/jsx-runtime");
|
|
31536
31632
|
function useUnsavedChangesGuard(options) {
|
|
31537
31633
|
const { isDirty, allowNavigation, onCancel } = options;
|
|
31538
31634
|
const { openModal } = useModal();
|
|
31539
|
-
const isDirtyRef = (0,
|
|
31635
|
+
const isDirtyRef = (0, import_react176.useRef)(isDirty);
|
|
31540
31636
|
isDirtyRef.current = isDirty;
|
|
31541
|
-
const allowNavigationRef = (0,
|
|
31637
|
+
const allowNavigationRef = (0, import_react176.useRef)(allowNavigation);
|
|
31542
31638
|
allowNavigationRef.current = allowNavigation;
|
|
31543
|
-
const allowCancelNavigationRef = (0,
|
|
31544
|
-
(0,
|
|
31639
|
+
const allowCancelNavigationRef = (0, import_react176.useRef)(false);
|
|
31640
|
+
(0, import_react176.useEffect)(() => {
|
|
31545
31641
|
const onBeforeUnload = (e) => {
|
|
31546
31642
|
if (isDirtyRef.current?.()) {
|
|
31547
31643
|
e.preventDefault();
|
|
@@ -31568,7 +31664,7 @@ function useUnsavedChangesGuard(options) {
|
|
|
31568
31664
|
}
|
|
31569
31665
|
openModal({
|
|
31570
31666
|
allowClosing: false,
|
|
31571
|
-
content: /* @__PURE__ */ (0,
|
|
31667
|
+
content: /* @__PURE__ */ (0, import_jsx_runtime255.jsx)(ConfirmCloseModal, { onClose: () => confirmCancel(e) })
|
|
31572
31668
|
});
|
|
31573
31669
|
};
|
|
31574
31670
|
const navigationBlocker = blocker.state === "blocked" ? { proceed: () => blocker.proceed?.(), cancelNavigation: () => blocker.reset?.() } : void 0;
|
|
@@ -31577,10 +31673,10 @@ function useUnsavedChangesGuard(options) {
|
|
|
31577
31673
|
function UnsavedChangesNavigationModal(props) {
|
|
31578
31674
|
const { proceed, cancelNavigation } = props;
|
|
31579
31675
|
const { openModal, closeModal } = useModal();
|
|
31580
|
-
(0,
|
|
31676
|
+
(0, import_react176.useEffect)(() => {
|
|
31581
31677
|
openModal({
|
|
31582
31678
|
allowClosing: false,
|
|
31583
|
-
content: /* @__PURE__ */ (0,
|
|
31679
|
+
content: /* @__PURE__ */ (0, import_jsx_runtime255.jsx)(ConfirmCloseModal, { title: "Leave page?", onClose: proceed, onContinue: cancelNavigation })
|
|
31584
31680
|
});
|
|
31585
31681
|
return () => closeModal();
|
|
31586
31682
|
}, []);
|
|
@@ -31588,7 +31684,7 @@ function UnsavedChangesNavigationModal(props) {
|
|
|
31588
31684
|
}
|
|
31589
31685
|
|
|
31590
31686
|
// src/layouts/Workflow/WorkflowActions.tsx
|
|
31591
|
-
var
|
|
31687
|
+
var import_jsx_runtime256 = require("react/jsx-runtime");
|
|
31592
31688
|
function WorkflowActions(props) {
|
|
31593
31689
|
const {
|
|
31594
31690
|
onCancel,
|
|
@@ -31606,12 +31702,12 @@ function WorkflowActions(props) {
|
|
|
31606
31702
|
sm: isMobile
|
|
31607
31703
|
} = useBreakpoint();
|
|
31608
31704
|
const primaryVariant = aiMode ? "ai" : "primary";
|
|
31609
|
-
return /* @__PURE__ */ (0,
|
|
31610
|
-
/* @__PURE__ */ (0,
|
|
31611
|
-
/* @__PURE__ */ (0,
|
|
31612
|
-
/* @__PURE__ */ (0,
|
|
31613
|
-
onSaveAndExit && /* @__PURE__ */ (0,
|
|
31614
|
-
isLastStep ? /* @__PURE__ */ (0,
|
|
31705
|
+
return /* @__PURE__ */ (0, import_jsx_runtime256.jsxs)("div", { className: "df aic jcsb sm_w100", children: [
|
|
31706
|
+
/* @__PURE__ */ (0, import_jsx_runtime256.jsx)("div", { className: "df aic", children: !isFirstStep && isMobile && onBack && /* @__PURE__ */ (0, import_jsx_runtime256.jsx)(IconButton, { icon: "arrowBack", label: "Back", onClick: onBack }) }),
|
|
31707
|
+
/* @__PURE__ */ (0, import_jsx_runtime256.jsxs)("div", { className: "df aic g_1", children: [
|
|
31708
|
+
/* @__PURE__ */ (0, import_jsx_runtime256.jsx)(Button, { label: "Cancel", variant: "quaternary", onClick: onCancel }),
|
|
31709
|
+
onSaveAndExit && /* @__PURE__ */ (0, import_jsx_runtime256.jsx)(Button, { label: "Save & Exit", variant: "secondary", onClick: onSaveAndExit }),
|
|
31710
|
+
isLastStep ? /* @__PURE__ */ (0, import_jsx_runtime256.jsx)(Button, { label: completeLabel, variant: primaryVariant, onClick: onComplete, disabled: primaryDisabled }) : /* @__PURE__ */ (0, import_jsx_runtime256.jsx)(Button, { label: "Continue", variant: primaryVariant, onClick: async () => {
|
|
31615
31711
|
await onContinue?.();
|
|
31616
31712
|
}, disabled: primaryDisabled })
|
|
31617
31713
|
] })
|
|
@@ -31619,8 +31715,8 @@ function WorkflowActions(props) {
|
|
|
31619
31715
|
}
|
|
31620
31716
|
|
|
31621
31717
|
// src/layouts/Workflow/WorkflowPageLayout.tsx
|
|
31622
|
-
var
|
|
31623
|
-
var
|
|
31718
|
+
var import_runtime169 = require("@homebound/truss/runtime");
|
|
31719
|
+
var import_jsx_runtime257 = require("react/jsx-runtime");
|
|
31624
31720
|
var __maybeInc37 = (inc) => {
|
|
31625
31721
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
31626
31722
|
};
|
|
@@ -31656,10 +31752,10 @@ function WorkflowPageLayout(props) {
|
|
|
31656
31752
|
allowNavigation,
|
|
31657
31753
|
onCancel
|
|
31658
31754
|
});
|
|
31659
|
-
const actions = /* @__PURE__ */ (0,
|
|
31755
|
+
const actions = /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(WorkflowActions, { ...actionProps, aiMode, onCancel: onCancelClick });
|
|
31660
31756
|
const triggers = rightPaneTriggers ?? [];
|
|
31661
|
-
const pageTriggers = triggers.length > 0 ? /* @__PURE__ */ (0,
|
|
31662
|
-
const headerMetricsRef = (0,
|
|
31757
|
+
const pageTriggers = triggers.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(WorkflowPageRightPaneTriggers, { triggers }) : void 0;
|
|
31758
|
+
const headerMetricsRef = (0, import_react177.useRef)(null);
|
|
31663
31759
|
const headerHeight = useMeasuredHeight(headerMetricsRef, true);
|
|
31664
31760
|
const headerWidth = documentScrollChromeWidth();
|
|
31665
31761
|
const outerTop = belowNavbarOffset();
|
|
@@ -31672,7 +31768,7 @@ function WorkflowPageLayout(props) {
|
|
|
31672
31768
|
}
|
|
31673
31769
|
const style = Object.keys(cssVars).length > 0 ? cssVars : void 0;
|
|
31674
31770
|
const showFooter = isMobile;
|
|
31675
|
-
(0,
|
|
31771
|
+
(0, import_react177.useLayoutEffect)(() => {
|
|
31676
31772
|
const root = document.documentElement;
|
|
31677
31773
|
const previous = root.style.getPropertyValue(beamWorkflowLayoutFooterHeightVar);
|
|
31678
31774
|
root.style.setProperty(beamWorkflowLayoutFooterHeightVar, showFooter ? `${mobileFooterHeightPx}px` : "0px");
|
|
@@ -31684,33 +31780,33 @@ function WorkflowPageLayout(props) {
|
|
|
31684
31780
|
}
|
|
31685
31781
|
};
|
|
31686
31782
|
}, [showFooter]);
|
|
31687
|
-
return /* @__PURE__ */ (0,
|
|
31688
|
-
/* @__PURE__ */ (0,
|
|
31783
|
+
return /* @__PURE__ */ (0, import_jsx_runtime257.jsxs)(DocumentScrollLayoutProvider, { children: [
|
|
31784
|
+
/* @__PURE__ */ (0, import_jsx_runtime257.jsxs)("div", { ...(0, import_runtime169.mergeProps)(void 0, style, {
|
|
31689
31785
|
display: "df",
|
|
31690
31786
|
flexDirection: "fdc",
|
|
31691
31787
|
width: "w100"
|
|
31692
31788
|
}), ...tid, children: [
|
|
31693
|
-
/* @__PURE__ */ (0,
|
|
31789
|
+
/* @__PURE__ */ (0, import_jsx_runtime257.jsx)("div", { ...(0, import_runtime169.mergeProps)(void 0, {
|
|
31694
31790
|
height: headerHeight
|
|
31695
31791
|
}, {
|
|
31696
31792
|
flexShrink: "fs0",
|
|
31697
31793
|
width: "w100"
|
|
31698
|
-
}), children: /* @__PURE__ */ (0,
|
|
31794
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime257.jsx)("div", { ref: headerMetricsRef, ...(0, import_runtime169.trussProps)({
|
|
31699
31795
|
position: "fixed",
|
|
31700
31796
|
left: "l_0",
|
|
31701
31797
|
width: ["w_var", {
|
|
31702
|
-
"--width": (0,
|
|
31798
|
+
"--width": (0, import_runtime169.maybeCssVar)(__maybeInc37(headerWidth))
|
|
31703
31799
|
}],
|
|
31704
31800
|
zIndex: ["z_var", {
|
|
31705
|
-
"--zIndex": (0,
|
|
31801
|
+
"--zIndex": (0, import_runtime169.maybeCssVar)(zIndices.pageStickyHeader)
|
|
31706
31802
|
}],
|
|
31707
31803
|
top: ["top_var", {
|
|
31708
|
-
"--top": (0,
|
|
31804
|
+
"--top": (0, import_runtime169.maybeCssVar)(__maybeInc37(outerTop))
|
|
31709
31805
|
}],
|
|
31710
31806
|
transition: "transitionAll"
|
|
31711
|
-
}), ...tid.header, children: /* @__PURE__ */ (0,
|
|
31807
|
+
}), ...tid.header, children: /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(WorkflowHeader, { title, documentTitleSuffix, breadcrumbs, rightSlot: isMobile ? pageTriggers : actions, stepperTabs }) }) }),
|
|
31712
31808
|
bannerSlot,
|
|
31713
|
-
/* @__PURE__ */ (0,
|
|
31809
|
+
/* @__PURE__ */ (0, import_jsx_runtime257.jsx)("div", { ...(0, import_runtime169.trussProps)({
|
|
31714
31810
|
...{
|
|
31715
31811
|
display: "df",
|
|
31716
31812
|
flexDirection: "fdc",
|
|
@@ -31722,29 +31818,29 @@ function WorkflowPageLayout(props) {
|
|
|
31722
31818
|
...aiMode && {
|
|
31723
31819
|
backgroundImage: "aiBackground",
|
|
31724
31820
|
minHeight: ["mh_var", {
|
|
31725
|
-
"--minHeight": (0,
|
|
31821
|
+
"--minHeight": (0, import_runtime169.maybeCssVar)(documentScrollBodyMinHeight())
|
|
31726
31822
|
}]
|
|
31727
31823
|
}
|
|
31728
|
-
}), ...tid.body, children: triggers.length > 0 ? /* @__PURE__ */ (0,
|
|
31824
|
+
}), ...tid.body, children: triggers.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(DocumentScrollOverlayRightPaneLayout, { children }) : children }),
|
|
31729
31825
|
!isMobile && pageTriggers,
|
|
31730
|
-
showFooter && /* @__PURE__ */ (0,
|
|
31826
|
+
showFooter && /* @__PURE__ */ (0, import_jsx_runtime257.jsx)("div", { ...(0, import_runtime169.trussProps)({
|
|
31731
31827
|
flexShrink: "fs0",
|
|
31732
31828
|
width: "w100",
|
|
31733
31829
|
height: ["h_var", {
|
|
31734
31830
|
"--height": `${mobileFooterHeightPx}px`
|
|
31735
31831
|
}]
|
|
31736
|
-
}), children: /* @__PURE__ */ (0,
|
|
31832
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime257.jsx)("div", { ...(0, import_runtime169.trussProps)({
|
|
31737
31833
|
...{
|
|
31738
31834
|
position: "fixed",
|
|
31739
31835
|
bottom: "bot_0",
|
|
31740
31836
|
width: ["w_var", {
|
|
31741
|
-
"--width": (0,
|
|
31837
|
+
"--width": (0, import_runtime169.maybeCssVar)(__maybeInc37(headerWidth))
|
|
31742
31838
|
}],
|
|
31743
31839
|
height: ["h_var", {
|
|
31744
31840
|
"--height": `${mobileFooterHeightPx}px`
|
|
31745
31841
|
}],
|
|
31746
31842
|
zIndex: ["z_var", {
|
|
31747
|
-
"--zIndex": (0,
|
|
31843
|
+
"--zIndex": (0, import_runtime169.maybeCssVar)(zIndices.pageStickyFooter)
|
|
31748
31844
|
}],
|
|
31749
31845
|
display: "df",
|
|
31750
31846
|
alignItems: "aic",
|
|
@@ -31762,12 +31858,12 @@ function WorkflowPageLayout(props) {
|
|
|
31762
31858
|
...pageContentPaddingX
|
|
31763
31859
|
}), ...tid.footer, children: actions }) })
|
|
31764
31860
|
] }),
|
|
31765
|
-
navigationBlocker && /* @__PURE__ */ (0,
|
|
31861
|
+
navigationBlocker && /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(UnsavedChangesNavigationModal, { ...navigationBlocker })
|
|
31766
31862
|
] });
|
|
31767
31863
|
}
|
|
31768
31864
|
|
|
31769
31865
|
// src/layouts/Workflow/FocusedFormLayout.tsx
|
|
31770
|
-
var
|
|
31866
|
+
var import_jsx_runtime258 = require("react/jsx-runtime");
|
|
31771
31867
|
function FocusedFormLayout(props) {
|
|
31772
31868
|
const {
|
|
31773
31869
|
onCancel,
|
|
@@ -31784,7 +31880,7 @@ function FocusedFormLayout(props) {
|
|
|
31784
31880
|
...headerProps
|
|
31785
31881
|
} = props;
|
|
31786
31882
|
const tid = useTestIds(props, "focusedFormLayout");
|
|
31787
|
-
return /* @__PURE__ */ (0,
|
|
31883
|
+
return /* @__PURE__ */ (0, import_jsx_runtime258.jsx)(
|
|
31788
31884
|
WorkflowPageLayout,
|
|
31789
31885
|
{
|
|
31790
31886
|
...tid,
|
|
@@ -31805,8 +31901,8 @@ function FocusedFormLayout(props) {
|
|
|
31805
31901
|
}
|
|
31806
31902
|
|
|
31807
31903
|
// src/layouts/Workflow/StepperLayout.tsx
|
|
31808
|
-
var
|
|
31809
|
-
var
|
|
31904
|
+
var import_react178 = require("react");
|
|
31905
|
+
var import_jsx_runtime259 = require("react/jsx-runtime");
|
|
31810
31906
|
function StepperLayout(props) {
|
|
31811
31907
|
const {
|
|
31812
31908
|
steps,
|
|
@@ -31822,7 +31918,7 @@ function StepperLayout(props) {
|
|
|
31822
31918
|
...headerProps
|
|
31823
31919
|
} = props;
|
|
31824
31920
|
const stepTabs = steps.map((step) => ({ ...step, value: defaultTestId(step.label) }));
|
|
31825
|
-
const [currentStep, setCurrentStep] = (0,
|
|
31921
|
+
const [currentStep, setCurrentStep] = (0, import_react178.useState)(() => getInitialStep(stepTabs, defaultStep));
|
|
31826
31922
|
const tid = useTestIds(props, "stepperLayout");
|
|
31827
31923
|
const { closeRightPane } = useRightPaneActions();
|
|
31828
31924
|
const currentIndex = hasStep(stepTabs, currentStep) ? stepTabs.findIndex((step) => step.value === currentStep) : 0;
|
|
@@ -31834,7 +31930,7 @@ function StepperLayout(props) {
|
|
|
31834
31930
|
closeRightPane();
|
|
31835
31931
|
setCurrentStep(value);
|
|
31836
31932
|
}
|
|
31837
|
-
return /* @__PURE__ */ (0,
|
|
31933
|
+
return /* @__PURE__ */ (0, import_jsx_runtime259.jsx)(
|
|
31838
31934
|
WorkflowPageLayout,
|
|
31839
31935
|
{
|
|
31840
31936
|
...tid,
|
|
@@ -31878,7 +31974,7 @@ function getInitialStep(steps, defaultStep) {
|
|
|
31878
31974
|
|
|
31879
31975
|
// src/forms/BoundChipSelectField.tsx
|
|
31880
31976
|
var import_mobx_react23 = require("mobx-react");
|
|
31881
|
-
var
|
|
31977
|
+
var import_jsx_runtime260 = require("react/jsx-runtime");
|
|
31882
31978
|
function BoundChipSelectField(props) {
|
|
31883
31979
|
const {
|
|
31884
31980
|
field,
|
|
@@ -31894,7 +31990,7 @@ function BoundChipSelectField(props) {
|
|
|
31894
31990
|
...others
|
|
31895
31991
|
} = props;
|
|
31896
31992
|
const testId = useTestIds(props, field.key);
|
|
31897
|
-
return /* @__PURE__ */ (0,
|
|
31993
|
+
return /* @__PURE__ */ (0, import_jsx_runtime260.jsx)(import_mobx_react23.Observer, { children: () => /* @__PURE__ */ (0, import_jsx_runtime260.jsx)(
|
|
31898
31994
|
ChipSelectField,
|
|
31899
31995
|
{
|
|
31900
31996
|
label,
|
|
@@ -31924,12 +32020,12 @@ function BoundChipSelectField(props) {
|
|
|
31924
32020
|
}
|
|
31925
32021
|
|
|
31926
32022
|
// src/forms/BoundSelectAndTextField.tsx
|
|
31927
|
-
var
|
|
32023
|
+
var import_jsx_runtime261 = require("react/jsx-runtime");
|
|
31928
32024
|
function BoundSelectAndTextField(props) {
|
|
31929
32025
|
const { selectFieldProps, textFieldProps, compact = true } = props;
|
|
31930
32026
|
const tid = useTestIds(props);
|
|
31931
|
-
return /* @__PURE__ */ (0,
|
|
31932
|
-
/* @__PURE__ */ (0,
|
|
32027
|
+
return /* @__PURE__ */ (0, import_jsx_runtime261.jsxs)(CompoundField, { children: [
|
|
32028
|
+
/* @__PURE__ */ (0, import_jsx_runtime261.jsx)(
|
|
31933
32029
|
BoundSelectField,
|
|
31934
32030
|
{
|
|
31935
32031
|
...tid[defaultTestId(selectFieldProps.label ?? selectFieldProps.field.key)],
|
|
@@ -31938,7 +32034,7 @@ function BoundSelectAndTextField(props) {
|
|
|
31938
32034
|
compact
|
|
31939
32035
|
}
|
|
31940
32036
|
),
|
|
31941
|
-
/* @__PURE__ */ (0,
|
|
32037
|
+
/* @__PURE__ */ (0, import_jsx_runtime261.jsx)(
|
|
31942
32038
|
BoundTextField,
|
|
31943
32039
|
{
|
|
31944
32040
|
...tid[defaultTestId(textFieldProps.label ?? textFieldProps.field.key)],
|
|
@@ -31950,8 +32046,8 @@ function BoundSelectAndTextField(props) {
|
|
|
31950
32046
|
}
|
|
31951
32047
|
|
|
31952
32048
|
// src/forms/FormHeading.tsx
|
|
31953
|
-
var
|
|
31954
|
-
var
|
|
32049
|
+
var import_runtime170 = require("@homebound/truss/runtime");
|
|
32050
|
+
var import_jsx_runtime262 = (
|
|
31955
32051
|
// Add space before the heading, but only if it's not first.
|
|
31956
32052
|
require("react/jsx-runtime")
|
|
31957
32053
|
);
|
|
@@ -31962,7 +32058,7 @@ function FormHeading(props) {
|
|
|
31962
32058
|
isFirst = false,
|
|
31963
32059
|
...others
|
|
31964
32060
|
} = props;
|
|
31965
|
-
return /* @__PURE__ */ (0,
|
|
32061
|
+
return /* @__PURE__ */ (0, import_jsx_runtime262.jsx)("h3", { ...(0, import_runtime170.trussProps)({
|
|
31966
32062
|
...{
|
|
31967
32063
|
fontWeight: "fw4",
|
|
31968
32064
|
fontSize: "fz_16px",
|
|
@@ -31977,9 +32073,9 @@ function FormHeading(props) {
|
|
|
31977
32073
|
FormHeading.isFormHeading = true;
|
|
31978
32074
|
|
|
31979
32075
|
// src/forms/StaticField.tsx
|
|
31980
|
-
var
|
|
31981
|
-
var
|
|
31982
|
-
var
|
|
32076
|
+
var import_utils52 = require("@react-aria/utils");
|
|
32077
|
+
var import_runtime171 = require("@homebound/truss/runtime");
|
|
32078
|
+
var import_jsx_runtime263 = require("react/jsx-runtime");
|
|
31983
32079
|
function StaticField(props) {
|
|
31984
32080
|
const {
|
|
31985
32081
|
fieldProps
|
|
@@ -31991,15 +32087,15 @@ function StaticField(props) {
|
|
|
31991
32087
|
children
|
|
31992
32088
|
} = props;
|
|
31993
32089
|
const tid = useTestIds(props, typeof label === "string" ? defaultTestId(label) : "staticField");
|
|
31994
|
-
const id = (0,
|
|
31995
|
-
return /* @__PURE__ */ (0,
|
|
32090
|
+
const id = (0, import_utils52.useId)();
|
|
32091
|
+
return /* @__PURE__ */ (0, import_jsx_runtime263.jsxs)("div", { ...(0, import_runtime171.trussProps)({
|
|
31996
32092
|
...labelStyle === "left" ? {
|
|
31997
32093
|
display: "df",
|
|
31998
32094
|
justifyContent: "jcsb",
|
|
31999
32095
|
maxWidth: "maxw100"
|
|
32000
32096
|
} : {}
|
|
32001
32097
|
}), ...tid.container, children: [
|
|
32002
|
-
/* @__PURE__ */ (0,
|
|
32098
|
+
/* @__PURE__ */ (0, import_jsx_runtime263.jsx)("label", { ...(0, import_runtime171.trussProps)({
|
|
32003
32099
|
display: "db",
|
|
32004
32100
|
fontWeight: "fw4",
|
|
32005
32101
|
fontSize: "fz_14px",
|
|
@@ -32009,7 +32105,7 @@ function StaticField(props) {
|
|
|
32009
32105
|
}],
|
|
32010
32106
|
marginBottom: "mb_4px"
|
|
32011
32107
|
}), htmlFor: id, ...tid.label, children: label }),
|
|
32012
|
-
/* @__PURE__ */ (0,
|
|
32108
|
+
/* @__PURE__ */ (0, import_jsx_runtime263.jsx)("div", { id, ...(0, import_runtime171.trussProps)({
|
|
32013
32109
|
fontWeight: "fw4",
|
|
32014
32110
|
fontSize: "fz_14px",
|
|
32015
32111
|
lineHeight: "lh_20px",
|
|
@@ -32026,9 +32122,9 @@ function StaticField(props) {
|
|
|
32026
32122
|
}
|
|
32027
32123
|
|
|
32028
32124
|
// src/hooks/useFilter.ts
|
|
32029
|
-
var
|
|
32125
|
+
var import_react179 = require("react");
|
|
32030
32126
|
function useFilter4({ filterDefs }) {
|
|
32031
|
-
const [filter, setFilter] = (0,
|
|
32127
|
+
const [filter, setFilter] = (0, import_react179.useState)(
|
|
32032
32128
|
Object.fromEntries(
|
|
32033
32129
|
safeEntries(filterDefs).filter(([key, def]) => def(key).defaultValue !== void 0).map(([key, def]) => [key, def(key).defaultValue])
|
|
32034
32130
|
)
|
|
@@ -32037,10 +32133,10 @@ function useFilter4({ filterDefs }) {
|
|
|
32037
32133
|
}
|
|
32038
32134
|
|
|
32039
32135
|
// src/inputs/Autocomplete.tsx
|
|
32040
|
-
var
|
|
32136
|
+
var import_react180 = require("react");
|
|
32041
32137
|
var import_react_aria69 = require("react-aria");
|
|
32042
32138
|
var import_react_stately18 = require("react-stately");
|
|
32043
|
-
var
|
|
32139
|
+
var import_jsx_runtime264 = require("react/jsx-runtime");
|
|
32044
32140
|
function Autocomplete(props) {
|
|
32045
32141
|
const {
|
|
32046
32142
|
onSelect,
|
|
@@ -32057,8 +32153,8 @@ function Autocomplete(props) {
|
|
|
32057
32153
|
} = props;
|
|
32058
32154
|
const { effectiveValue, proposalProps } = useAiProposal(value, proposedValue);
|
|
32059
32155
|
const disabledOptionsWithReasons = Object.fromEntries(disabledOptions?.map(disabledOptionToKeyedTuple) ?? []);
|
|
32060
|
-
const comboBoxChildren = (0,
|
|
32061
|
-
(item) => /* @__PURE__ */ (0,
|
|
32156
|
+
const comboBoxChildren = (0, import_react180.useCallback)(
|
|
32157
|
+
(item) => /* @__PURE__ */ (0, import_jsx_runtime264.jsx)(import_react_stately18.Item, { textValue: getOptionLabel(item), children: getOptionMenuLabel ? getOptionMenuLabel(item) : getOptionLabel(item) }, getOptionValue(item)),
|
|
32062
32158
|
[getOptionValue, getOptionLabel, getOptionMenuLabel]
|
|
32063
32159
|
);
|
|
32064
32160
|
const comboBoxProps = {
|
|
@@ -32082,10 +32178,10 @@ function Autocomplete(props) {
|
|
|
32082
32178
|
...others
|
|
32083
32179
|
};
|
|
32084
32180
|
const state = (0, import_react_stately18.useComboBoxState)(comboBoxProps);
|
|
32085
|
-
const inputWrapRef = (0,
|
|
32086
|
-
const inputRef = (0,
|
|
32087
|
-
const listBoxRef = (0,
|
|
32088
|
-
const popoverRef = (0,
|
|
32181
|
+
const inputWrapRef = (0, import_react180.useRef)(null);
|
|
32182
|
+
const inputRef = (0, import_react180.useRef)(null);
|
|
32183
|
+
const listBoxRef = (0, import_react180.useRef)(null);
|
|
32184
|
+
const popoverRef = (0, import_react180.useRef)(null);
|
|
32089
32185
|
const { inputProps, listBoxProps, labelProps } = (0, import_react_aria69.useComboBox)(
|
|
32090
32186
|
{
|
|
32091
32187
|
...comboBoxProps,
|
|
@@ -32111,8 +32207,8 @@ function Autocomplete(props) {
|
|
|
32111
32207
|
// Ensures the menu never gets too small.
|
|
32112
32208
|
minWidth: 200
|
|
32113
32209
|
};
|
|
32114
|
-
return /* @__PURE__ */ (0,
|
|
32115
|
-
/* @__PURE__ */ (0,
|
|
32210
|
+
return /* @__PURE__ */ (0, import_jsx_runtime264.jsxs)(import_jsx_runtime264.Fragment, { children: [
|
|
32211
|
+
/* @__PURE__ */ (0, import_jsx_runtime264.jsx)(
|
|
32116
32212
|
TextFieldBase,
|
|
32117
32213
|
{
|
|
32118
32214
|
inputRef,
|
|
@@ -32122,11 +32218,11 @@ function Autocomplete(props) {
|
|
|
32122
32218
|
onChange: onInputChange,
|
|
32123
32219
|
...proposalProps,
|
|
32124
32220
|
clearable: true,
|
|
32125
|
-
startAdornment: "startAdornment" in props ? props.startAdornment : /* @__PURE__ */ (0,
|
|
32221
|
+
startAdornment: "startAdornment" in props ? props.startAdornment : /* @__PURE__ */ (0, import_jsx_runtime264.jsx)(Icon, { icon: "search" }),
|
|
32126
32222
|
...others
|
|
32127
32223
|
}
|
|
32128
32224
|
),
|
|
32129
|
-
state.isOpen && /* @__PURE__ */ (0,
|
|
32225
|
+
state.isOpen && /* @__PURE__ */ (0, import_jsx_runtime264.jsx)(
|
|
32130
32226
|
Popover,
|
|
32131
32227
|
{
|
|
32132
32228
|
triggerRef: inputRef,
|
|
@@ -32135,7 +32231,7 @@ function Autocomplete(props) {
|
|
|
32135
32231
|
onClose: () => state.close(),
|
|
32136
32232
|
isOpen: state.isOpen,
|
|
32137
32233
|
minWidth: 200,
|
|
32138
|
-
children: /* @__PURE__ */ (0,
|
|
32234
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime264.jsx)(
|
|
32139
32235
|
ListBox,
|
|
32140
32236
|
{
|
|
32141
32237
|
...listBoxProps,
|
|
@@ -32153,11 +32249,11 @@ function Autocomplete(props) {
|
|
|
32153
32249
|
}
|
|
32154
32250
|
|
|
32155
32251
|
// src/inputs/ToggleButton.tsx
|
|
32156
|
-
var
|
|
32252
|
+
var import_react181 = require("react");
|
|
32157
32253
|
var import_react_aria70 = require("react-aria");
|
|
32158
32254
|
var import_react_stately19 = require("react-stately");
|
|
32159
|
-
var
|
|
32160
|
-
var
|
|
32255
|
+
var import_runtime172 = require("@homebound/truss/runtime");
|
|
32256
|
+
var import_jsx_runtime265 = require("react/jsx-runtime");
|
|
32161
32257
|
function ToggleButton(props) {
|
|
32162
32258
|
const {
|
|
32163
32259
|
selected: isSelected = false,
|
|
@@ -32168,7 +32264,7 @@ function ToggleButton(props) {
|
|
|
32168
32264
|
__storyState,
|
|
32169
32265
|
...otherProps
|
|
32170
32266
|
} = props;
|
|
32171
|
-
const [asyncInProgress, setAsyncInProgress] = (0,
|
|
32267
|
+
const [asyncInProgress, setAsyncInProgress] = (0, import_react181.useState)(false);
|
|
32172
32268
|
const isDisabled = !!disabled || asyncInProgress;
|
|
32173
32269
|
const ariaProps = {
|
|
32174
32270
|
"aria-label": label,
|
|
@@ -32187,8 +32283,8 @@ function ToggleButton(props) {
|
|
|
32187
32283
|
return result;
|
|
32188
32284
|
}
|
|
32189
32285
|
});
|
|
32190
|
-
const labelRef = (0,
|
|
32191
|
-
const ref = (0,
|
|
32286
|
+
const labelRef = (0, import_react181.useRef)(null);
|
|
32287
|
+
const ref = (0, import_react181.useRef)(null);
|
|
32192
32288
|
const tid = useTestIds(otherProps, label);
|
|
32193
32289
|
const {
|
|
32194
32290
|
isPressed: isPressedFromEvents,
|
|
@@ -32221,7 +32317,7 @@ function ToggleButton(props) {
|
|
|
32221
32317
|
...focusProps,
|
|
32222
32318
|
...hoverProps,
|
|
32223
32319
|
...pressProps,
|
|
32224
|
-
...(0,
|
|
32320
|
+
...(0, import_runtime172.trussProps)({
|
|
32225
32321
|
// Gray500 off-state has no semantic match — keep palette (OnSurfaceMuted is Gray700).
|
|
32226
32322
|
...{
|
|
32227
32323
|
borderRadius: "br4",
|
|
@@ -32261,10 +32357,10 @@ function ToggleButton(props) {
|
|
|
32261
32357
|
return maybeTooltip({
|
|
32262
32358
|
title: tooltip,
|
|
32263
32359
|
placement: "top",
|
|
32264
|
-
children: /* @__PURE__ */ (0,
|
|
32265
|
-
icon && /* @__PURE__ */ (0,
|
|
32360
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime265.jsxs)("label", { ...labelAttrs, children: [
|
|
32361
|
+
icon && /* @__PURE__ */ (0, import_jsx_runtime265.jsx)(Icon, { icon }),
|
|
32266
32362
|
label,
|
|
32267
|
-
/* @__PURE__ */ (0,
|
|
32363
|
+
/* @__PURE__ */ (0, import_jsx_runtime265.jsx)(import_react_aria70.VisuallyHidden, { children: /* @__PURE__ */ (0, import_jsx_runtime265.jsx)("input", { ref, ...inputProps, ...tid.value }) })
|
|
32268
32364
|
] })
|
|
32269
32365
|
});
|
|
32270
32366
|
}
|