@homebound/beam 3.18.0 → 3.20.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 +550 -282
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +28 -3
- package/dist/index.d.ts +28 -3
- package/dist/index.js +515 -255
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -195,6 +195,7 @@ __export(index_exports, {
|
|
|
195
195
|
beamNavbarLayoutHeightVar: () => beamNavbarLayoutHeightVar,
|
|
196
196
|
beamPageHeaderLayoutHeightVar: () => beamPageHeaderLayoutHeightVar,
|
|
197
197
|
beamSideNavLayoutWidthVar: () => beamSideNavLayoutWidthVar,
|
|
198
|
+
beamTableActionsHeightVar: () => beamTableActionsHeightVar,
|
|
198
199
|
booleanFilter: () => booleanFilter,
|
|
199
200
|
boundCheckboxField: () => boundCheckboxField,
|
|
200
201
|
boundCheckboxGroupField: () => boundCheckboxGroupField,
|
|
@@ -213,6 +214,7 @@ __export(index_exports, {
|
|
|
213
214
|
boundTextField: () => boundTextField,
|
|
214
215
|
boundToggleChipGroupField: () => boundToggleChipGroupField,
|
|
215
216
|
boundTreeSelectField: () => boundTreeSelectField,
|
|
217
|
+
calcColumnLayout: () => calcColumnLayout,
|
|
216
218
|
calcColumnSizes: () => calcColumnSizes,
|
|
217
219
|
cardStyle: () => cardStyle,
|
|
218
220
|
checkboxFilter: () => checkboxFilter,
|
|
@@ -233,6 +235,8 @@ __export(index_exports, {
|
|
|
233
235
|
defaultRenderFn: () => defaultRenderFn,
|
|
234
236
|
defaultStyle: () => defaultStyle,
|
|
235
237
|
defaultTestId: () => defaultTestId,
|
|
238
|
+
documentScrollChromeLeft: () => documentScrollChromeLeft,
|
|
239
|
+
documentScrollChromeWidth: () => documentScrollChromeWidth,
|
|
236
240
|
dragHandleColumn: () => dragHandleColumn,
|
|
237
241
|
emptyCell: () => emptyCell,
|
|
238
242
|
ensureClientSideSortValueIsSortable: () => ensureClientSideSortValueIsSortable,
|
|
@@ -287,6 +291,7 @@ __export(index_exports, {
|
|
|
287
291
|
px: () => px,
|
|
288
292
|
recursivelyGetContainingRow: () => recursivelyGetContainingRow,
|
|
289
293
|
reservedRowKinds: () => reservedRowKinds,
|
|
294
|
+
resolveTableContentWidth: () => resolveTableContentWidth,
|
|
290
295
|
resolveTooltip: () => resolveTooltip,
|
|
291
296
|
rowClickRenderFn: () => rowClickRenderFn,
|
|
292
297
|
rowLinkRenderFn: () => rowLinkRenderFn,
|
|
@@ -301,6 +306,9 @@ __export(index_exports, {
|
|
|
301
306
|
singleFilter: () => singleFilter,
|
|
302
307
|
sortFn: () => sortFn,
|
|
303
308
|
sortRows: () => sortRows,
|
|
309
|
+
stickyNavAndHeaderOffset: () => stickyNavAndHeaderOffset,
|
|
310
|
+
stickyTableHeaderOffset: () => stickyTableHeaderOffset,
|
|
311
|
+
sumColumnSizesPx: () => sumColumnSizesPx,
|
|
304
312
|
switchFocusStyles: () => switchFocusStyles,
|
|
305
313
|
switchHoverStyles: () => switchHoverStyles,
|
|
306
314
|
switchSelectedHoverStyles: () => switchSelectedHoverStyles,
|
|
@@ -6212,9 +6220,19 @@ var beamPageHeaderLayoutHeightVar = "--beam-page-header-layout-height";
|
|
|
6212
6220
|
var beamLayoutViewportWidthVar = "--beam-layout-viewport-width";
|
|
6213
6221
|
var beamLayoutViewportHeightVar = "--beam-layout-viewport-height";
|
|
6214
6222
|
var beamSideNavLayoutWidthVar = "--beam-side-nav-layout-width";
|
|
6223
|
+
var beamTableActionsHeightVar = "--beam-table-actions-height";
|
|
6224
|
+
function documentScrollChromeLeft() {
|
|
6225
|
+
return `var(${beamSideNavLayoutWidthVar}, 0px)`;
|
|
6226
|
+
}
|
|
6227
|
+
function documentScrollChromeWidth() {
|
|
6228
|
+
return `calc(var(${beamLayoutViewportWidthVar}, 100vw) - var(${beamSideNavLayoutWidthVar}, 0px))`;
|
|
6229
|
+
}
|
|
6215
6230
|
function stickyNavAndHeaderOffset(basePx = 0) {
|
|
6216
6231
|
return `calc(${basePx}px + var(${beamNavbarLayoutHeightVar}, 0px) + var(${beamPageHeaderLayoutHeightVar}, 0px))`;
|
|
6217
6232
|
}
|
|
6233
|
+
function stickyTableHeaderOffset(basePx = 0) {
|
|
6234
|
+
return `calc(${basePx}px + var(${beamNavbarLayoutHeightVar}, 0px) + var(${beamPageHeaderLayoutHeightVar}, 0px) + var(${beamTableActionsHeightVar}, 0px))`;
|
|
6235
|
+
}
|
|
6218
6236
|
|
|
6219
6237
|
// src/utils/zIndices.ts
|
|
6220
6238
|
var zIndices = {
|
|
@@ -6223,6 +6241,7 @@ var zIndices = {
|
|
|
6223
6241
|
tableExpandableTitle: 20,
|
|
6224
6242
|
tableStickyColumn: 30,
|
|
6225
6243
|
tableStickyHeader: 40,
|
|
6244
|
+
tableActions: 45,
|
|
6226
6245
|
// Page chrome - ensure these items sit above the table
|
|
6227
6246
|
scrollShadow: 50,
|
|
6228
6247
|
superDrawerScrim: 50,
|
|
@@ -6389,6 +6408,9 @@ function SortHeader(props) {
|
|
|
6389
6408
|
// src/components/Table/utils/utils.tsx
|
|
6390
6409
|
var import_runtime12 = require("@homebound/truss/runtime");
|
|
6391
6410
|
var import_jsx_runtime14 = require("react/jsx-runtime");
|
|
6411
|
+
var __maybeInc4 = (inc) => {
|
|
6412
|
+
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
6413
|
+
};
|
|
6392
6414
|
function toContent(maybeContent, isHeader, canSortColumn, isClientSideSorting, style, as, alignment, column2, isExpandableHeader, isExpandable, minStickyLeftOffset, isKeptSelectedRow) {
|
|
6393
6415
|
if (isKeptSelectedRow && column2.id === "beamCollapseColumn") {
|
|
6394
6416
|
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_jsx_runtime14.Fragment, {});
|
|
@@ -6583,12 +6605,21 @@ function recursivelyGetContainingRow(rowId, rowArray, parent) {
|
|
|
6583
6605
|
}
|
|
6584
6606
|
return void 0;
|
|
6585
6607
|
}
|
|
6586
|
-
function getTableRefWidthStyles(isVirtual) {
|
|
6587
|
-
|
|
6588
|
-
|
|
6589
|
-
|
|
6608
|
+
function getTableRefWidthStyles(isVirtual, inDocumentScrollLayout = false) {
|
|
6609
|
+
if (inDocumentScrollLayout) {
|
|
6610
|
+
return {
|
|
6611
|
+
width: ["w_var", {
|
|
6612
|
+
"--width": (0, import_runtime12.maybeCssVar)(__maybeInc4(documentScrollChromeWidth()))
|
|
6613
|
+
}]
|
|
6614
|
+
};
|
|
6615
|
+
}
|
|
6616
|
+
if (isVirtual) {
|
|
6617
|
+
return {
|
|
6590
6618
|
width: "w_calc_100_20px"
|
|
6591
|
-
}
|
|
6619
|
+
};
|
|
6620
|
+
}
|
|
6621
|
+
return {
|
|
6622
|
+
width: "w100"
|
|
6592
6623
|
};
|
|
6593
6624
|
}
|
|
6594
6625
|
|
|
@@ -7396,7 +7427,7 @@ function ColumnResizeHandle({
|
|
|
7396
7427
|
var import_react25 = require("react");
|
|
7397
7428
|
var import_runtime19 = require("@homebound/truss/runtime");
|
|
7398
7429
|
var import_jsx_runtime27 = require("react/jsx-runtime");
|
|
7399
|
-
var
|
|
7430
|
+
var __maybeInc5 = (inc) => {
|
|
7400
7431
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
7401
7432
|
};
|
|
7402
7433
|
function KeptGroupRow(props) {
|
|
@@ -7423,7 +7454,7 @@ function KeptGroupRow(props) {
|
|
|
7423
7454
|
...{
|
|
7424
7455
|
paddingLeft: "pl0",
|
|
7425
7456
|
width: ["w_var", {
|
|
7426
|
-
"--width": (0, import_runtime19.maybeCssVar)(
|
|
7457
|
+
"--width": (0, import_runtime19.maybeCssVar)(__maybeInc5(`calc(${columnSizes.join(" + ")})`))
|
|
7427
7458
|
}]
|
|
7428
7459
|
}
|
|
7429
7460
|
}), ...as === "table" ? {
|
|
@@ -8232,7 +8263,7 @@ function isZonedDateTime(value) {
|
|
|
8232
8263
|
var import_use_debounce2 = require("use-debounce");
|
|
8233
8264
|
var import_runtime21 = require("@homebound/truss/runtime");
|
|
8234
8265
|
var import_jsx_runtime28 = require("react/jsx-runtime");
|
|
8235
|
-
var
|
|
8266
|
+
var __maybeInc6 = (inc) => {
|
|
8236
8267
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
8237
8268
|
};
|
|
8238
8269
|
var __typography2 = {
|
|
@@ -8456,12 +8487,12 @@ function RowImpl(props) {
|
|
|
8456
8487
|
},
|
|
8457
8488
|
...maybeSticky === "left" ? {
|
|
8458
8489
|
left: ["left_var", {
|
|
8459
|
-
"--left": (0, import_runtime21.maybeCssVar)(
|
|
8490
|
+
"--left": (0, import_runtime21.maybeCssVar)(__maybeInc6(columnIndex === 0 ? `var(${beamSideNavLayoutWidthVar}, 0px)` : `calc(var(${beamSideNavLayoutWidthVar}, 0px) + (${columnSizes.slice(0, columnIndex).join(" + ")}))`))
|
|
8460
8491
|
}]
|
|
8461
8492
|
} : {},
|
|
8462
8493
|
...maybeSticky === "right" ? {
|
|
8463
8494
|
right: ["right_var", {
|
|
8464
|
-
"--right": (0, import_runtime21.maybeCssVar)(
|
|
8495
|
+
"--right": (0, import_runtime21.maybeCssVar)(__maybeInc6(columnIndex + 1 === columnSizes.length ? 0 : `calc(${columnSizes.slice(columnIndex + 1 - columnSizes.length).join(" + ")})`))
|
|
8465
8496
|
}]
|
|
8466
8497
|
} : {}
|
|
8467
8498
|
} : {};
|
|
@@ -8551,7 +8582,7 @@ function RowImpl(props) {
|
|
|
8551
8582
|
// If we have a 'levelIndent' defined, then subtract that amount from the first content column's width to ensure all columns will still line up properly.
|
|
8552
8583
|
...{
|
|
8553
8584
|
width: ["w_var", {
|
|
8554
|
-
"--width": (0, import_runtime21.maybeCssVar)(
|
|
8585
|
+
"--width": (0, import_runtime21.maybeCssVar)(__maybeInc6(`calc(${columnSizes.slice(columnIndex, columnIndex + currentColspan).join(" + ")}${applyFirstContentColumnStyles && levelIndent ? ` - ${levelIndent}px` : ""})`))
|
|
8555
8586
|
}]
|
|
8556
8587
|
}
|
|
8557
8588
|
};
|
|
@@ -8648,7 +8679,7 @@ function getFieldWidth(fullWidth) {
|
|
|
8648
8679
|
// src/inputs/TextFieldBase.tsx
|
|
8649
8680
|
var import_runtime23 = require("@homebound/truss/runtime");
|
|
8650
8681
|
var import_jsx_runtime30 = require("react/jsx-runtime");
|
|
8651
|
-
var
|
|
8682
|
+
var __maybeInc7 = (inc) => {
|
|
8652
8683
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
8653
8684
|
};
|
|
8654
8685
|
var __typography3 = {
|
|
@@ -8822,7 +8853,7 @@ function TextFieldBase(props) {
|
|
|
8822
8853
|
} : {},
|
|
8823
8854
|
...labelStyle === "left" ? {
|
|
8824
8855
|
width: ["w_var", {
|
|
8825
|
-
"--width": (0, import_runtime23.maybeCssVar)(
|
|
8856
|
+
"--width": (0, import_runtime23.maybeCssVar)(__maybeInc7(labelLeftFieldWidth))
|
|
8826
8857
|
}]
|
|
8827
8858
|
} : {}
|
|
8828
8859
|
},
|
|
@@ -8898,7 +8929,7 @@ function TextFieldBase(props) {
|
|
|
8898
8929
|
} : {},
|
|
8899
8930
|
...labelStyle === "left" ? {
|
|
8900
8931
|
width: ["w_var", {
|
|
8901
|
-
"--width": (0, import_runtime23.maybeCssVar)(
|
|
8932
|
+
"--width": (0, import_runtime23.maybeCssVar)(__maybeInc7(labelLeftFieldWidth))
|
|
8902
8933
|
}]
|
|
8903
8934
|
} : {}
|
|
8904
8935
|
},
|
|
@@ -14013,7 +14044,7 @@ var import_react61 = require("react");
|
|
|
14013
14044
|
var import_react_aria35 = require("react-aria");
|
|
14014
14045
|
var import_runtime49 = require("@homebound/truss/runtime");
|
|
14015
14046
|
var import_jsx_runtime74 = require("react/jsx-runtime");
|
|
14016
|
-
var
|
|
14047
|
+
var __maybeInc8 = (inc) => {
|
|
14017
14048
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
14018
14049
|
};
|
|
14019
14050
|
function Switch(props) {
|
|
@@ -14107,7 +14138,7 @@ function Switch(props) {
|
|
|
14107
14138
|
/* @__PURE__ */ (0, import_jsx_runtime74.jsx)("div", { ...(0, import_runtime49.trussProps)({
|
|
14108
14139
|
...labelStyle === "left" ? {
|
|
14109
14140
|
width: ["w_var", {
|
|
14110
|
-
"--width": (0, import_runtime49.maybeCssVar)(
|
|
14141
|
+
"--width": (0, import_runtime49.maybeCssVar)(__maybeInc8(labelLeftFieldWidth))
|
|
14111
14142
|
}]
|
|
14112
14143
|
} : {}
|
|
14113
14144
|
}), children: /* @__PURE__ */ (0, import_jsx_runtime74.jsx)("div", { "aria-hidden": "true", ...(0, import_runtime49.trussProps)({
|
|
@@ -14188,7 +14219,7 @@ function switchCircleDefaultStyles(isCompact) {
|
|
|
14188
14219
|
function switchCircleSelectedStyles(isCompact) {
|
|
14189
14220
|
return {
|
|
14190
14221
|
left: ["left_var", {
|
|
14191
|
-
"--left": (0, import_runtime49.maybeCssVar)(
|
|
14222
|
+
"--left": (0, import_runtime49.maybeCssVar)(__maybeInc8(`calc(100% - ${circleDiameter(isCompact)}px - 2px)`))
|
|
14192
14223
|
}]
|
|
14193
14224
|
};
|
|
14194
14225
|
}
|
|
@@ -14441,7 +14472,7 @@ var import_react_aria39 = require("react-aria");
|
|
|
14441
14472
|
var import_react_stately15 = require("react-stately");
|
|
14442
14473
|
var import_runtime51 = require("@homebound/truss/runtime");
|
|
14443
14474
|
var import_jsx_runtime78 = require("react/jsx-runtime");
|
|
14444
|
-
var
|
|
14475
|
+
var __maybeInc9 = (inc) => {
|
|
14445
14476
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
14446
14477
|
};
|
|
14447
14478
|
function ToggleChipGroup(props) {
|
|
@@ -14489,7 +14520,7 @@ function ToggleChipGroup(props) {
|
|
|
14489
14520
|
flexWrap: "flexWrap_wrap",
|
|
14490
14521
|
...labelStyle === "left" ? {
|
|
14491
14522
|
width: ["w_var", {
|
|
14492
|
-
"--width": (0, import_runtime51.maybeCssVar)(
|
|
14523
|
+
"--width": (0, import_runtime51.maybeCssVar)(__maybeInc9(labelLeftFieldWidth))
|
|
14493
14524
|
}]
|
|
14494
14525
|
} : {}
|
|
14495
14526
|
}), children: options.map((o) => /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(ToggleChip2, { value: o.value, groupState: state, selected: state.value.includes(o.value), label: o.label, disabled: o.disabled, readonly: o.readonly, startAdornment: o.startAdornment, xss, ...tid[o.value] }, o.value)) })
|
|
@@ -14682,16 +14713,60 @@ function nonKindDefaults() {
|
|
|
14682
14713
|
function parseWidthToPx(widthStr, tableWidth) {
|
|
14683
14714
|
if (!widthStr) return null;
|
|
14684
14715
|
if (widthStr.endsWith("px")) {
|
|
14685
|
-
const parsed =
|
|
14716
|
+
const parsed = parseFloat(widthStr.replace("px", ""));
|
|
14686
14717
|
return isNaN(parsed) ? null : parsed;
|
|
14687
14718
|
}
|
|
14688
|
-
if (widthStr.endsWith("%") && tableWidth) {
|
|
14719
|
+
if (widthStr.endsWith("%") && tableWidth !== void 0) {
|
|
14689
14720
|
const percent = parseFloat(widthStr.replace("%", ""));
|
|
14690
14721
|
if (isNaN(percent)) return null;
|
|
14691
14722
|
return Math.round(percent / 100 * tableWidth);
|
|
14692
14723
|
}
|
|
14693
14724
|
return null;
|
|
14694
14725
|
}
|
|
14726
|
+
function sumColumnSizesPx(columnSizes, tableWidth) {
|
|
14727
|
+
if (tableWidth === void 0) return null;
|
|
14728
|
+
let sum = 0;
|
|
14729
|
+
for (const size of columnSizes) {
|
|
14730
|
+
const px2 = parseWidthToPx(size, tableWidth);
|
|
14731
|
+
if (px2 === null) return null;
|
|
14732
|
+
sum += px2;
|
|
14733
|
+
}
|
|
14734
|
+
return sum;
|
|
14735
|
+
}
|
|
14736
|
+
function sumColumnSizeParts(columnSizes) {
|
|
14737
|
+
let pxSum = 0;
|
|
14738
|
+
let percentSum = 0;
|
|
14739
|
+
let hasCalc = false;
|
|
14740
|
+
for (const size of columnSizes) {
|
|
14741
|
+
if (size.endsWith("px")) {
|
|
14742
|
+
pxSum += parseFloat(size.replace("px", ""));
|
|
14743
|
+
} else if (size.endsWith("%")) {
|
|
14744
|
+
percentSum += parseFloat(size.replace("%", ""));
|
|
14745
|
+
} else {
|
|
14746
|
+
hasCalc = true;
|
|
14747
|
+
}
|
|
14748
|
+
}
|
|
14749
|
+
return {
|
|
14750
|
+
pxSum,
|
|
14751
|
+
percentSum,
|
|
14752
|
+
hasCalc
|
|
14753
|
+
};
|
|
14754
|
+
}
|
|
14755
|
+
function resolveTableContentWidth(tableWidth, columnSizes, minWidthPx = 0) {
|
|
14756
|
+
if (tableWidth === void 0) return void 0;
|
|
14757
|
+
const {
|
|
14758
|
+
pxSum,
|
|
14759
|
+
percentSum,
|
|
14760
|
+
hasCalc
|
|
14761
|
+
} = sumColumnSizeParts(columnSizes);
|
|
14762
|
+
if (!hasCalc && percentSum > 0 && percentSum < 100) {
|
|
14763
|
+
const selfConsistent = pxSum / (1 - percentSum / 100);
|
|
14764
|
+
return Math.max(tableWidth, minWidthPx, Math.ceil(selfConsistent));
|
|
14765
|
+
}
|
|
14766
|
+
const sum = sumColumnSizesPx(columnSizes, tableWidth);
|
|
14767
|
+
if (sum === null) return void 0;
|
|
14768
|
+
return Math.max(tableWidth, sum, minWidthPx);
|
|
14769
|
+
}
|
|
14695
14770
|
function calcColumnSizes(columns, tableWidth, tableMinWidthPx = 0, expandedColumnIds, resizedWidths) {
|
|
14696
14771
|
const {
|
|
14697
14772
|
claimedPercentages,
|
|
@@ -14790,6 +14865,29 @@ function calcColumnSizes(columns, tableWidth, tableMinWidthPx = 0, expandedColum
|
|
|
14790
14865
|
});
|
|
14791
14866
|
return sizes2;
|
|
14792
14867
|
}
|
|
14868
|
+
function calcColumnLayout(columns, probeWidth, tableMinWidthPx = 0, expandedColumnIds, resizedWidths, inDocumentScrollLayout) {
|
|
14869
|
+
if (probeWidth === void 0) {
|
|
14870
|
+
return {
|
|
14871
|
+
columnSizes: calcColumnSizes(columns, void 0, tableMinWidthPx, expandedColumnIds, resizedWidths),
|
|
14872
|
+
contentWidth: void 0
|
|
14873
|
+
};
|
|
14874
|
+
}
|
|
14875
|
+
if (!inDocumentScrollLayout) {
|
|
14876
|
+
return {
|
|
14877
|
+
columnSizes: calcColumnSizes(columns, probeWidth, tableMinWidthPx, expandedColumnIds, resizedWidths),
|
|
14878
|
+
contentWidth: probeWidth
|
|
14879
|
+
};
|
|
14880
|
+
}
|
|
14881
|
+
let columnSizes = calcColumnSizes(columns, probeWidth, tableMinWidthPx, expandedColumnIds, resizedWidths);
|
|
14882
|
+
const contentWidth = resolveTableContentWidth(probeWidth, columnSizes, tableMinWidthPx) ?? probeWidth;
|
|
14883
|
+
if (contentWidth > probeWidth + 1) {
|
|
14884
|
+
columnSizes = calcColumnSizes(columns, contentWidth, tableMinWidthPx, expandedColumnIds, resizedWidths);
|
|
14885
|
+
}
|
|
14886
|
+
return {
|
|
14887
|
+
columnSizes,
|
|
14888
|
+
contentWidth
|
|
14889
|
+
};
|
|
14890
|
+
}
|
|
14793
14891
|
function assignDefaultColumnIds(columns) {
|
|
14794
14892
|
return columns.map((c, idx) => {
|
|
14795
14893
|
const {
|
|
@@ -15754,22 +15852,32 @@ function useColumnResizing(storageKey) {
|
|
|
15754
15852
|
|
|
15755
15853
|
// src/components/Table/hooks/useSetupColumnSizes.ts
|
|
15756
15854
|
var import_use_debounce5 = require("use-debounce");
|
|
15757
|
-
function useSetupColumnSizes(style, columns, resizeRef, expandedColumnIds, visibleColumnsStorageKey, disableColumnResizing) {
|
|
15855
|
+
function useSetupColumnSizes(style, columns, resizeRef, expandedColumnIds, visibleColumnsStorageKey, disableColumnResizing, inDocumentScrollLayout) {
|
|
15758
15856
|
const { resizedWidths, setResizedWidth, setResizedWidths, resetColumnWidths } = useColumnResizing(
|
|
15759
15857
|
disableColumnResizing ? void 0 : visibleColumnsStorageKey
|
|
15760
15858
|
);
|
|
15761
15859
|
const calculateImmediately = (0, import_react72.useRef)(true);
|
|
15762
15860
|
const [tableWidth, setTableWidth] = (0, import_react72.useState)();
|
|
15763
|
-
const
|
|
15861
|
+
const [contentWidth, setContentWidth] = (0, import_react72.useState)();
|
|
15764
15862
|
const [columnSizes, setColumnSizes] = (0, import_react72.useState)(
|
|
15765
|
-
|
|
15863
|
+
() => calcColumnLayout(columns, void 0, style.minWidthPx, expandedColumnIds, resizedWidths, inDocumentScrollLayout).columnSizes
|
|
15766
15864
|
);
|
|
15767
|
-
const
|
|
15768
|
-
|
|
15769
|
-
|
|
15770
|
-
|
|
15865
|
+
const prevTableWidthRef = (0, import_react72.useRef)(tableWidth);
|
|
15866
|
+
const applyColumnLayout = (0, import_react72.useCallback)(
|
|
15867
|
+
(probeWidth) => {
|
|
15868
|
+
const layout = calcColumnLayout(
|
|
15869
|
+
columns,
|
|
15870
|
+
probeWidth,
|
|
15871
|
+
style.minWidthPx,
|
|
15872
|
+
expandedColumnIds,
|
|
15873
|
+
resizedWidths,
|
|
15874
|
+
inDocumentScrollLayout
|
|
15875
|
+
);
|
|
15876
|
+
setTableWidth(probeWidth);
|
|
15877
|
+
setContentWidth(layout.contentWidth);
|
|
15878
|
+
setColumnSizes(layout.columnSizes);
|
|
15771
15879
|
},
|
|
15772
|
-
[
|
|
15880
|
+
[columns, style.minWidthPx, expandedColumnIds, resizedWidths, inDocumentScrollLayout]
|
|
15773
15881
|
);
|
|
15774
15882
|
(0, import_react72.useEffect)(() => {
|
|
15775
15883
|
if (!prevTableWidthRef.current) {
|
|
@@ -15798,32 +15906,40 @@ function useSetupColumnSizes(style, columns, resizeRef, expandedColumnIds, visib
|
|
|
15798
15906
|
() => {
|
|
15799
15907
|
if (!calculateImmediately.current) {
|
|
15800
15908
|
const width2 = resizeRef.current?.clientWidth;
|
|
15801
|
-
width2 &&
|
|
15909
|
+
width2 && applyColumnLayout(width2);
|
|
15802
15910
|
}
|
|
15803
15911
|
},
|
|
15804
15912
|
// TODO: validate this eslint-disable. It was automatically ignored as part of https://app.shortcut.com/homebound-team/story/40033/enable-react-hooks-exhaustive-deps-for-react-projects
|
|
15805
15913
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
15806
|
-
[columns, resizedWidths,
|
|
15914
|
+
[columns, resizedWidths, applyColumnLayout]
|
|
15807
15915
|
);
|
|
15808
|
-
const
|
|
15916
|
+
const applyColumnLayoutDebounced = (0, import_use_debounce5.useDebouncedCallback)(applyColumnLayout, 100);
|
|
15809
15917
|
const onResize = (0, import_react72.useCallback)(
|
|
15810
15918
|
() => {
|
|
15811
15919
|
const target = resizeRef.current;
|
|
15812
15920
|
if (target && target.clientWidth !== tableWidth) {
|
|
15813
15921
|
if (calculateImmediately.current) {
|
|
15814
15922
|
calculateImmediately.current = false;
|
|
15815
|
-
|
|
15923
|
+
applyColumnLayout(target.clientWidth);
|
|
15816
15924
|
} else {
|
|
15817
|
-
|
|
15925
|
+
applyColumnLayoutDebounced(target.clientWidth);
|
|
15818
15926
|
}
|
|
15819
15927
|
}
|
|
15820
15928
|
},
|
|
15821
15929
|
// TODO: validate this eslint-disable. It was automatically ignored as part of https://app.shortcut.com/homebound-team/story/40033/enable-react-hooks-exhaustive-deps-for-react-projects
|
|
15822
15930
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
15823
|
-
[tableWidth,
|
|
15931
|
+
[tableWidth, applyColumnLayout, applyColumnLayoutDebounced]
|
|
15824
15932
|
);
|
|
15825
15933
|
(0, import_utils67.useResizeObserver)({ ref: resizeRef, onResize });
|
|
15826
|
-
return {
|
|
15934
|
+
return {
|
|
15935
|
+
columnSizes,
|
|
15936
|
+
tableWidth,
|
|
15937
|
+
contentWidth,
|
|
15938
|
+
resizedWidths,
|
|
15939
|
+
setResizedWidth,
|
|
15940
|
+
setResizedWidths,
|
|
15941
|
+
resetColumnWidths
|
|
15942
|
+
};
|
|
15827
15943
|
}
|
|
15828
15944
|
|
|
15829
15945
|
// src/hooks/useRenderCount.ts
|
|
@@ -15897,7 +16013,7 @@ function DocumentScrollLayoutViewportRoot({
|
|
|
15897
16013
|
// src/components/Table/GridTable.tsx
|
|
15898
16014
|
var import_runtime53 = require("@homebound/truss/runtime");
|
|
15899
16015
|
var import_jsx_runtime82 = require("react/jsx-runtime");
|
|
15900
|
-
var
|
|
16016
|
+
var __maybeInc10 = (inc) => {
|
|
15901
16017
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
15902
16018
|
};
|
|
15903
16019
|
var runningInJest = false;
|
|
@@ -15972,6 +16088,7 @@ function GridTable(props) {
|
|
|
15972
16088
|
const {
|
|
15973
16089
|
tableState
|
|
15974
16090
|
} = api;
|
|
16091
|
+
const inDocumentScrollLayout = useDocumentScrollLayout();
|
|
15975
16092
|
tableState.onRowSelect = onRowSelect;
|
|
15976
16093
|
(0, import_react75.useEffect)(() => {
|
|
15977
16094
|
(0, import_mobx10.runInAction)(() => {
|
|
@@ -15994,11 +16111,12 @@ function GridTable(props) {
|
|
|
15994
16111
|
const {
|
|
15995
16112
|
columnSizes,
|
|
15996
16113
|
tableWidth,
|
|
16114
|
+
contentWidth,
|
|
15997
16115
|
resizedWidths,
|
|
15998
16116
|
setResizedWidth,
|
|
15999
16117
|
setResizedWidths,
|
|
16000
16118
|
resetColumnWidths
|
|
16001
|
-
} = useSetupColumnSizes(style, columns, resizeTarget ?? resizeRef, expandedColumnIds, visibleColumnsStorageKey, disableColumnResizing);
|
|
16119
|
+
} = useSetupColumnSizes(style, columns, resizeTarget ?? resizeRef, expandedColumnIds, visibleColumnsStorageKey, disableColumnResizing, inDocumentScrollLayout);
|
|
16002
16120
|
(0, import_react75.useEffect)(() => {
|
|
16003
16121
|
api.resetColumnWidthsFn = !disableColumnResizing ? resetColumnWidths : void 0;
|
|
16004
16122
|
}, [api, resetColumnWidths, disableColumnResizing]);
|
|
@@ -16169,9 +16287,18 @@ function GridTable(props) {
|
|
|
16169
16287
|
tableState,
|
|
16170
16288
|
tableContainerRef
|
|
16171
16289
|
}), [tableState, tableContainerRef]);
|
|
16290
|
+
const tableStyle = (0, import_react75.useMemo)(() => {
|
|
16291
|
+
if (!inDocumentScrollLayout || contentWidth === void 0 || tableWidth === void 0) return style;
|
|
16292
|
+
const minWidthPx = Math.max(style.minWidthPx ?? 0, contentWidth);
|
|
16293
|
+
if (minWidthPx === style.minWidthPx) return style;
|
|
16294
|
+
return {
|
|
16295
|
+
...style,
|
|
16296
|
+
minWidthPx
|
|
16297
|
+
};
|
|
16298
|
+
}, [contentWidth, inDocumentScrollLayout, style, tableWidth]);
|
|
16172
16299
|
return /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(TableStateContext.Provider, { value: rowStateContext, children: /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)(PresentationProvider, { fieldProps, wrap: style?.presentationSettings?.wrap, children: [
|
|
16173
|
-
/* @__PURE__ */ (0, import_jsx_runtime82.jsx)("div", { ref: resizeRef, ...(0, import_runtime53.trussProps)(getTableRefWidthStyles(as === "virtual")) }),
|
|
16174
|
-
renders[_as](
|
|
16300
|
+
/* @__PURE__ */ (0, import_jsx_runtime82.jsx)("div", { ref: resizeRef, ...(0, import_runtime53.trussProps)(getTableRefWidthStyles(as === "virtual", inDocumentScrollLayout)) }),
|
|
16301
|
+
renders[_as](tableStyle, id, columns, visibleDataRows, keptSelectedRows, firstRowMessage, stickyHeader, xss, virtuosoRef, virtuosoRangeRef, tableHeadRows, stickyOffset, infiniteScroll, tableContainerRef, persistScrollPosition)
|
|
16175
16302
|
] }) });
|
|
16176
16303
|
}
|
|
16177
16304
|
var renders = {
|
|
@@ -16199,8 +16326,9 @@ function renderDiv(style, id, columns, visibleDataRows, keptSelectedRows, firstR
|
|
|
16199
16326
|
/* @__PURE__ */ (0, import_jsx_runtime82.jsx)("div", { ...(0, import_runtime53.trussProps)({
|
|
16200
16327
|
...stickyHeader ? {
|
|
16201
16328
|
position: "sticky",
|
|
16329
|
+
transition: "transitionTop",
|
|
16202
16330
|
top: ["top_var", {
|
|
16203
|
-
"--top": (0, import_runtime53.maybeCssVar)(
|
|
16331
|
+
"--top": (0, import_runtime53.maybeCssVar)(__maybeInc10(stickyTableHeaderOffset(stickyOffset)))
|
|
16204
16332
|
}],
|
|
16205
16333
|
zIndex: ["z_var", {
|
|
16206
16334
|
"--zIndex": (0, import_runtime53.maybeCssVar)(zIndices.tableStickyHeader)
|
|
@@ -16239,8 +16367,9 @@ function renderTable(style, id, columns, visibleDataRows, keptSelectedRows, firs
|
|
|
16239
16367
|
/* @__PURE__ */ (0, import_jsx_runtime82.jsx)("thead", { ...(0, import_runtime53.trussProps)({
|
|
16240
16368
|
...stickyHeader ? {
|
|
16241
16369
|
position: "sticky",
|
|
16370
|
+
transition: "transitionTop",
|
|
16242
16371
|
top: ["top_var", {
|
|
16243
|
-
"--top": (0, import_runtime53.maybeCssVar)(
|
|
16372
|
+
"--top": (0, import_runtime53.maybeCssVar)(__maybeInc10(stickyTableHeaderOffset(stickyOffset)))
|
|
16244
16373
|
}],
|
|
16245
16374
|
zIndex: ["z_var", {
|
|
16246
16375
|
"--zIndex": (0, import_runtime53.maybeCssVar)(zIndices.tableStickyHeader)
|
|
@@ -16291,11 +16420,16 @@ function renderVirtual(style, id, columns, visibleDataRows, keptSelectedRows, fi
|
|
|
16291
16420
|
components: {
|
|
16292
16421
|
// zIndex keeps the pinned head above sticky columns; `top` matches the offsets used by
|
|
16293
16422
|
// the div/table render paths so virtualized tables pin below the global nav + page header.
|
|
16294
|
-
TopItemList: import_react75.default.forwardRef((props, ref) => /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("div", { ...props, ref,
|
|
16423
|
+
TopItemList: import_react75.default.forwardRef((props, ref) => /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("div", { ...props, ref, ...(0, import_runtime53.mergeProps)(void 0, {
|
|
16295
16424
|
...props.style,
|
|
16425
|
+
...style.minWidthPx !== void 0 ? {
|
|
16426
|
+
minWidth: style.minWidthPx
|
|
16427
|
+
} : {},
|
|
16296
16428
|
zIndex: zIndices.tableStickyHeader,
|
|
16297
|
-
top:
|
|
16298
|
-
}
|
|
16429
|
+
top: stickyTableHeaderOffset(stickyOffset)
|
|
16430
|
+
}, {
|
|
16431
|
+
transition: "transitionTop"
|
|
16432
|
+
}) })),
|
|
16299
16433
|
List: VirtualRoot(style, columns, id, xss),
|
|
16300
16434
|
Footer: () => {
|
|
16301
16435
|
return /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("div", { ...(0, import_runtime53.trussProps)({
|
|
@@ -16322,7 +16456,7 @@ function renderVirtual(style, id, columns, visibleDataRows, keptSelectedRows, fi
|
|
|
16322
16456
|
return (
|
|
16323
16457
|
// Ensure the fallback message is the same width as the table
|
|
16324
16458
|
/* @__PURE__ */ (0, import_jsx_runtime82.jsx)("div", { ...(0, import_runtime53.trussProps)({
|
|
16325
|
-
...getTableRefWidthStyles(true),
|
|
16459
|
+
...getTableRefWidthStyles(true, inDocumentScrollLayout),
|
|
16326
16460
|
...keptSelectedRows.length === 0 && style.firstBodyRowCss,
|
|
16327
16461
|
...visibleDataRows.length === 0 && style.lastRowCss
|
|
16328
16462
|
}), children: /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("div", { ...(0, import_runtime53.trussProps)({
|
|
@@ -16481,7 +16615,7 @@ var import_react76 = require("react");
|
|
|
16481
16615
|
var import_react_aria40 = require("react-aria");
|
|
16482
16616
|
var import_runtime56 = require("@homebound/truss/runtime");
|
|
16483
16617
|
var import_jsx_runtime85 = require("react/jsx-runtime");
|
|
16484
|
-
var
|
|
16618
|
+
var __maybeInc11 = (inc) => {
|
|
16485
16619
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
16486
16620
|
};
|
|
16487
16621
|
function Accordion(props) {
|
|
@@ -16628,7 +16762,7 @@ function Accordion(props) {
|
|
|
16628
16762
|
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { ...tid.details, id, "aria-hidden": !expanded, ...(0, import_runtime56.trussProps)({
|
|
16629
16763
|
overflow: "oh",
|
|
16630
16764
|
height: ["h_var", {
|
|
16631
|
-
"--height": (0, import_runtime56.maybeCssVar)(
|
|
16765
|
+
"--height": (0, import_runtime56.maybeCssVar)(__maybeInc11(contentHeight))
|
|
16632
16766
|
}],
|
|
16633
16767
|
transition: "transition_height_250ms_ease_in_out"
|
|
16634
16768
|
}), children: expanded && /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { ...(0, import_runtime56.trussProps)({
|
|
@@ -16811,7 +16945,7 @@ var variantStyles2 = {
|
|
|
16811
16945
|
};
|
|
16812
16946
|
|
|
16813
16947
|
// src/components/BeamContext.tsx
|
|
16814
|
-
var
|
|
16948
|
+
var import_react107 = require("react");
|
|
16815
16949
|
var import_react_aria46 = require("react-aria");
|
|
16816
16950
|
|
|
16817
16951
|
// src/components/Modal/Modal.tsx
|
|
@@ -18212,7 +18346,7 @@ function BoundTreeSelectField(props) {
|
|
|
18212
18346
|
var import_react86 = require("react");
|
|
18213
18347
|
var import_runtime63 = require("@homebound/truss/runtime");
|
|
18214
18348
|
var import_jsx_runtime115 = require("react/jsx-runtime");
|
|
18215
|
-
var
|
|
18349
|
+
var __maybeInc12 = (inc) => {
|
|
18216
18350
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
18217
18351
|
};
|
|
18218
18352
|
function FormLines(props) {
|
|
@@ -18250,13 +18384,13 @@ function FormLines(props) {
|
|
|
18250
18384
|
display: "df",
|
|
18251
18385
|
flexDirection: "fdc",
|
|
18252
18386
|
gap: ["gap_var", {
|
|
18253
|
-
"--gap": (0, import_runtime63.maybeCssVar)(
|
|
18387
|
+
"--gap": (0, import_runtime63.maybeCssVar)(__maybeInc12(gap))
|
|
18254
18388
|
}],
|
|
18255
18389
|
paddingBottom: ["pb_var", {
|
|
18256
|
-
"--paddingBottom": (0, import_runtime63.maybeCssVar)(
|
|
18390
|
+
"--paddingBottom": (0, import_runtime63.maybeCssVar)(__maybeInc12(gap))
|
|
18257
18391
|
}],
|
|
18258
18392
|
width: ["w_var", {
|
|
18259
|
-
"--width": (0, import_runtime63.maybeCssVar)(
|
|
18393
|
+
"--width": (0, import_runtime63.maybeCssVar)(__maybeInc12(sizes[width2]))
|
|
18260
18394
|
}]
|
|
18261
18395
|
}), children: import_react86.Children.map(children, (child) => {
|
|
18262
18396
|
if (child && typeof child === "object" && "type" in child && child.type.isFormHeading) {
|
|
@@ -19136,7 +19270,7 @@ function useActiveSection(sectionsWithRefs) {
|
|
|
19136
19270
|
// src/components/Layout/FullBleed.tsx
|
|
19137
19271
|
var import_runtime71 = require("@homebound/truss/runtime");
|
|
19138
19272
|
var import_react94 = require("react");
|
|
19139
|
-
var
|
|
19273
|
+
var __maybeInc13 = (inc) => {
|
|
19140
19274
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
19141
19275
|
};
|
|
19142
19276
|
function FullBleed({
|
|
@@ -19167,17 +19301,17 @@ function FullBleed({
|
|
|
19167
19301
|
// inverts that padding with negative margins before re-applying it to the child.
|
|
19168
19302
|
{
|
|
19169
19303
|
marginLeft: ["ml_var", {
|
|
19170
|
-
"--marginLeft": (0, import_runtime71.maybeCssVar)(
|
|
19304
|
+
"--marginLeft": (0, import_runtime71.maybeCssVar)(__maybeInc13(invertSpacing(paddingLeft)))
|
|
19171
19305
|
}],
|
|
19172
19306
|
marginRight: ["mr_var", {
|
|
19173
|
-
"--marginRight": (0, import_runtime71.maybeCssVar)(
|
|
19307
|
+
"--marginRight": (0, import_runtime71.maybeCssVar)(__maybeInc13(invertSpacing(paddingRight)))
|
|
19174
19308
|
}],
|
|
19175
19309
|
...!omitPadding ? {
|
|
19176
19310
|
paddingLeft: ["pl_var", {
|
|
19177
|
-
"--paddingLeft": (0, import_runtime71.maybeCssVar)(
|
|
19311
|
+
"--paddingLeft": (0, import_runtime71.maybeCssVar)(__maybeInc13(paddingLeft))
|
|
19178
19312
|
}],
|
|
19179
19313
|
paddingRight: ["pr_var", {
|
|
19180
|
-
"--paddingRight": (0, import_runtime71.maybeCssVar)(
|
|
19314
|
+
"--paddingRight": (0, import_runtime71.maybeCssVar)(__maybeInc13(paddingRight))
|
|
19181
19315
|
}]
|
|
19182
19316
|
} : {}
|
|
19183
19317
|
}
|
|
@@ -19191,7 +19325,8 @@ function invertSpacing(value) {
|
|
|
19191
19325
|
}
|
|
19192
19326
|
|
|
19193
19327
|
// src/components/Layout/GridTableLayout/GridTableLayout.tsx
|
|
19194
|
-
var
|
|
19328
|
+
var import_utils117 = require("@react-aria/utils");
|
|
19329
|
+
var import_react103 = __toESM(require("react"), 1);
|
|
19195
19330
|
|
|
19196
19331
|
// src/components/ButtonMenu.tsx
|
|
19197
19332
|
var import_react95 = require("react");
|
|
@@ -20218,9 +20353,45 @@ function LoadingTable(props) {
|
|
|
20218
20353
|
] });
|
|
20219
20354
|
}
|
|
20220
20355
|
|
|
20356
|
+
// src/components/Layout/GridTableLayout/usePersistedTableView.ts
|
|
20357
|
+
var import_react102 = require("react");
|
|
20358
|
+
function usePersistedTableView(defaultView, persist) {
|
|
20359
|
+
const storageKey = persist ? getGridTableViewStorageKey(window.location.pathname) : void 0;
|
|
20360
|
+
const [view, setView] = (0, import_react102.useState)(() => {
|
|
20361
|
+
if (!storageKey) return defaultView;
|
|
20362
|
+
try {
|
|
20363
|
+
return parseStoredTableView(localStorage.getItem(storageKey)) ?? defaultView;
|
|
20364
|
+
} catch {
|
|
20365
|
+
return defaultView;
|
|
20366
|
+
}
|
|
20367
|
+
});
|
|
20368
|
+
const setViewAndPersist = (0, import_react102.useCallback)(
|
|
20369
|
+
(next) => {
|
|
20370
|
+
setView(next);
|
|
20371
|
+
if (storageKey) {
|
|
20372
|
+
try {
|
|
20373
|
+
localStorage.setItem(storageKey, next);
|
|
20374
|
+
} catch {
|
|
20375
|
+
}
|
|
20376
|
+
}
|
|
20377
|
+
},
|
|
20378
|
+
[storageKey]
|
|
20379
|
+
);
|
|
20380
|
+
return [view, setViewAndPersist];
|
|
20381
|
+
}
|
|
20382
|
+
function getGridTableViewStorageKey(pathname) {
|
|
20383
|
+
return `beam.gridTableLayout.view.${pathname}`;
|
|
20384
|
+
}
|
|
20385
|
+
function parseStoredTableView(raw) {
|
|
20386
|
+
return raw === "list" || raw === "card" ? raw : void 0;
|
|
20387
|
+
}
|
|
20388
|
+
|
|
20221
20389
|
// src/components/Layout/GridTableLayout/GridTableLayout.tsx
|
|
20222
20390
|
var import_runtime78 = require("@homebound/truss/runtime");
|
|
20223
20391
|
var import_jsx_runtime148 = require("react/jsx-runtime");
|
|
20392
|
+
var __maybeInc14 = (inc) => {
|
|
20393
|
+
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
20394
|
+
};
|
|
20224
20395
|
function GridTableLayoutComponent(props) {
|
|
20225
20396
|
const {
|
|
20226
20397
|
pageTitle,
|
|
@@ -20238,47 +20409,82 @@ function GridTableLayoutComponent(props) {
|
|
|
20238
20409
|
} = props;
|
|
20239
20410
|
const tid = useTestIds(props);
|
|
20240
20411
|
const columns = tableProps.columns;
|
|
20241
|
-
const hasHideableColumns = (0,
|
|
20412
|
+
const hasHideableColumns = (0, import_react103.useMemo)(() => {
|
|
20242
20413
|
if (hideEditColumns) return false;
|
|
20243
20414
|
validateColumns(columns);
|
|
20244
20415
|
return columns.some((c) => c.canHide);
|
|
20245
20416
|
}, [columns, hideEditColumns]);
|
|
20246
|
-
const api = (0,
|
|
20247
|
-
const [view, setView] = (
|
|
20417
|
+
const api = (0, import_react103.useMemo)(() => tableProps.api ?? new GridTableApiImpl(), [tableProps.api]);
|
|
20418
|
+
const [view, setView] = usePersistedTableView(defaultView, !!withCardView);
|
|
20248
20419
|
const clientSearch = layoutState?.search === "client" ? layoutState.searchString : void 0;
|
|
20249
|
-
const showTableActions = layoutState?.filterDefs || layoutState?.search || hasHideableColumns ||
|
|
20420
|
+
const showTableActions = !!(layoutState?.filterDefs || layoutState?.search || hasHideableColumns || withCardView);
|
|
20250
20421
|
const isVirtualized = tableProps.as === "virtual";
|
|
20422
|
+
const inDocumentScrollLayout = useDocumentScrollLayout();
|
|
20423
|
+
const tableActionsRef = (0, import_react103.useRef)(null);
|
|
20424
|
+
const tableWrapperRef = (0, import_react103.useRef)(null);
|
|
20425
|
+
useSetTableActionsHeight(tableWrapperRef, tableActionsRef, inDocumentScrollLayout && showTableActions);
|
|
20251
20426
|
const visibleColumnIds = useComputed(() => api.getVisibleColumnIds(), [api]);
|
|
20252
|
-
(0,
|
|
20427
|
+
(0, import_react103.useEffect)(() => {
|
|
20253
20428
|
if (layoutState?.setVisibleColumnIds) {
|
|
20254
20429
|
layoutState.setVisibleColumnIds(visibleColumnIds);
|
|
20255
20430
|
}
|
|
20256
20431
|
}, [visibleColumnIds, layoutState]);
|
|
20257
20432
|
const visibleColumnsStorageKey = layoutState?.persistedColumnsStorageKey;
|
|
20433
|
+
const tableActionsEl = /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(TableActions, { right: (hasHideableColumns || withCardView) && /* @__PURE__ */ (0, import_jsx_runtime148.jsxs)("div", { className: "df gap1", children: [
|
|
20434
|
+
hasHideableColumns && /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(EditColumnsButton, { columns, api, tooltip: "Display columns", trigger: {
|
|
20435
|
+
icon: "kanban",
|
|
20436
|
+
size: "md",
|
|
20437
|
+
label: "",
|
|
20438
|
+
variant: "secondaryBlack"
|
|
20439
|
+
}, ...tid.editColumnsButton }),
|
|
20440
|
+
withCardView && /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(ViewToggleButton, { view, onChange: setView })
|
|
20441
|
+
] }), xss: {
|
|
20442
|
+
paddingTop: "pt3",
|
|
20443
|
+
...inDocumentScrollLayout ? {
|
|
20444
|
+
paddingLeft: "pl3",
|
|
20445
|
+
paddingRight: "pr3"
|
|
20446
|
+
} : {}
|
|
20447
|
+
}, children: layoutState && (layoutState.filterDefs || layoutState.search) && /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(_FilterDropdownMenu, { filterDefs: layoutState.filterDefs, filter: layoutState.filter, onChange: layoutState.setFilter, groupBy: layoutState.groupBy, searchProps: layoutState.search ? {
|
|
20448
|
+
onSearch: layoutState.setSearchString
|
|
20449
|
+
} : void 0 }) });
|
|
20450
|
+
const tableBody = /* @__PURE__ */ (0, import_jsx_runtime148.jsxs)(import_jsx_runtime148.Fragment, { children: [
|
|
20451
|
+
view === "card" && withCardView ? withCardView : isGridTableProps(tableProps) ? /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(GridTable, { ...tableProps, api, filter: clientSearch, style: {
|
|
20452
|
+
allWhite: true
|
|
20453
|
+
}, stickyHeader: true, disableColumnResizing: false, visibleColumnsStorageKey }) : /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(QueryTable, { ...tableProps, api, filter: clientSearch, style: {
|
|
20454
|
+
allWhite: true
|
|
20455
|
+
}, stickyHeader: true, disableColumnResizing: false, visibleColumnsStorageKey }),
|
|
20456
|
+
layoutState && totalCount !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(Pagination, { page: [layoutState.page, layoutState._pagination.setPage], totalCount, pageSizes: layoutState._pagination.pageSizes, ...tid.pagination })
|
|
20457
|
+
] });
|
|
20458
|
+
const tableScrollContent = /* @__PURE__ */ (0, import_jsx_runtime148.jsxs)(import_jsx_runtime148.Fragment, { children: [
|
|
20459
|
+
showTableActions && /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("div", { ref: tableActionsRef, ...(0, import_runtime78.trussProps)({
|
|
20460
|
+
...inDocumentScrollLayout ? {
|
|
20461
|
+
transition: "transitionTop",
|
|
20462
|
+
position: "sticky",
|
|
20463
|
+
top: ["top_var", {
|
|
20464
|
+
"--top": (0, import_runtime78.maybeCssVar)(__maybeInc14(stickyNavAndHeaderOffset()))
|
|
20465
|
+
}],
|
|
20466
|
+
left: ["left_var", {
|
|
20467
|
+
"--left": (0, import_runtime78.maybeCssVar)(__maybeInc14(documentScrollChromeLeft()))
|
|
20468
|
+
}],
|
|
20469
|
+
width: ["w_var", {
|
|
20470
|
+
"--width": (0, import_runtime78.maybeCssVar)(__maybeInc14(documentScrollChromeWidth()))
|
|
20471
|
+
}],
|
|
20472
|
+
zIndex: ["z_var", {
|
|
20473
|
+
"--zIndex": (0, import_runtime78.maybeCssVar)(zIndices.tableActions)
|
|
20474
|
+
}],
|
|
20475
|
+
backgroundColor: ["bgColor_var", {
|
|
20476
|
+
"--backgroundColor": "var(--b-surface)"
|
|
20477
|
+
}]
|
|
20478
|
+
} : {}
|
|
20479
|
+
}), ...tid.stickyContent, children: tableActionsEl }),
|
|
20480
|
+
inDocumentScrollLayout ? tableBody : /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(ScrollableContent, { virtualized: isVirtualized, children: tableBody })
|
|
20481
|
+
] });
|
|
20258
20482
|
return /* @__PURE__ */ (0, import_jsx_runtime148.jsxs)(import_jsx_runtime148.Fragment, { children: [
|
|
20259
20483
|
pageTitle && /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(Header2, { pageTitle, breadCrumb, primaryAction, secondaryAction, tertiaryAction, actionMenu }),
|
|
20260
|
-
|
|
20261
|
-
hasHideableColumns && /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(EditColumnsButton, { columns, api, tooltip: "Display columns", trigger: {
|
|
20262
|
-
icon: "kanban",
|
|
20263
|
-
size: "md",
|
|
20264
|
-
label: "",
|
|
20265
|
-
variant: "secondaryBlack"
|
|
20266
|
-
}, ...tid.editColumnsButton }),
|
|
20267
|
-
withCardView && /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(ViewToggleButton, { view, onChange: setView })
|
|
20268
|
-
] }), children: layoutState && (layoutState.filterDefs || layoutState.search) && /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(_FilterDropdownMenu, { filterDefs: layoutState.filterDefs, filter: layoutState.filter, onChange: layoutState.setFilter, groupBy: layoutState.groupBy, searchProps: layoutState.search ? {
|
|
20269
|
-
onSearch: layoutState.setSearchString
|
|
20270
|
-
} : void 0 }) }),
|
|
20271
|
-
/* @__PURE__ */ (0, import_jsx_runtime148.jsxs)(ScrollableContent, { virtualized: isVirtualized, children: [
|
|
20272
|
-
view === "card" && withCardView ? withCardView : isGridTableProps(tableProps) ? /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(GridTable, { ...tableProps, api, filter: clientSearch, style: {
|
|
20273
|
-
allWhite: true
|
|
20274
|
-
}, stickyHeader: true, disableColumnResizing: false, visibleColumnsStorageKey }) : /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(QueryTable, { ...tableProps, api, filter: clientSearch, style: {
|
|
20275
|
-
allWhite: true
|
|
20276
|
-
}, stickyHeader: true, disableColumnResizing: false, visibleColumnsStorageKey }),
|
|
20277
|
-
layoutState && totalCount !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(Pagination, { page: [layoutState.page, layoutState._pagination.setPage], totalCount, pageSizes: layoutState._pagination.pageSizes, ...tid.pagination })
|
|
20278
|
-
] })
|
|
20484
|
+
/* @__PURE__ */ (0, import_jsx_runtime148.jsx)("div", { ref: tableWrapperRef, className: "display_contents", ...tid.tableWrapper, children: tableScrollContent })
|
|
20279
20485
|
] });
|
|
20280
20486
|
}
|
|
20281
|
-
var GridTableLayout =
|
|
20487
|
+
var GridTableLayout = import_react103.default.memo(GridTableLayoutComponent);
|
|
20282
20488
|
function validateColumns(columns) {
|
|
20283
20489
|
for (const col of columns) {
|
|
20284
20490
|
if (!col.id || !col.name) {
|
|
@@ -20304,7 +20510,7 @@ function useGridTableLayoutState({
|
|
|
20304
20510
|
const groupBy = useGroupBy(maybeGroupBy ?? {
|
|
20305
20511
|
none: "none"
|
|
20306
20512
|
});
|
|
20307
|
-
const [searchString, setSearchString] = (0,
|
|
20513
|
+
const [searchString, setSearchString] = (0, import_react103.useState)("");
|
|
20308
20514
|
const columnsFallback = "unset-columns";
|
|
20309
20515
|
const [visibleColumnIds, setVisibleColumnIds] = useSessionStorage(persistedColumns?.storageKey ?? columnsFallback, void 0);
|
|
20310
20516
|
const paginationFallbackKey = "unset-pagination";
|
|
@@ -20314,11 +20520,11 @@ function useGridTableLayoutState({
|
|
|
20314
20520
|
100
|
|
20315
20521
|
// default page size
|
|
20316
20522
|
);
|
|
20317
|
-
const [page, setPage] = (0,
|
|
20523
|
+
const [page, setPage] = (0, import_react103.useState)({
|
|
20318
20524
|
offset: 0,
|
|
20319
20525
|
limit: persistedPageSize
|
|
20320
20526
|
});
|
|
20321
|
-
(0,
|
|
20527
|
+
(0, import_react103.useEffect)(() => {
|
|
20322
20528
|
if (page.limit !== persistedPageSize) setPersistedPageSize(page.limit);
|
|
20323
20529
|
setPage((prev) => prev.offset === 0 ? prev : {
|
|
20324
20530
|
...prev,
|
|
@@ -20345,6 +20551,33 @@ function useGridTableLayoutState({
|
|
|
20345
20551
|
}
|
|
20346
20552
|
};
|
|
20347
20553
|
}
|
|
20554
|
+
function useSetTableActionsHeight(tableWrapperRef, tableActionsRef, enabled) {
|
|
20555
|
+
const syncHeightVar = (0, import_react103.useCallback)(() => {
|
|
20556
|
+
const tableWrapper = tableWrapperRef.current;
|
|
20557
|
+
if (!tableWrapper) return;
|
|
20558
|
+
if (!enabled) {
|
|
20559
|
+
tableWrapper.style.removeProperty(beamTableActionsHeightVar);
|
|
20560
|
+
return;
|
|
20561
|
+
}
|
|
20562
|
+
const height = tableActionsRef.current ? Math.round(tableActionsRef.current.getBoundingClientRect().height) : 0;
|
|
20563
|
+
if (height > 0) {
|
|
20564
|
+
tableWrapper.style.setProperty(beamTableActionsHeightVar, `${height}px`);
|
|
20565
|
+
} else {
|
|
20566
|
+
tableWrapper.style.removeProperty(beamTableActionsHeightVar);
|
|
20567
|
+
}
|
|
20568
|
+
}, [enabled, tableActionsRef, tableWrapperRef]);
|
|
20569
|
+
(0, import_utils117.useResizeObserver)({
|
|
20570
|
+
ref: tableActionsRef,
|
|
20571
|
+
onResize: enabled ? syncHeightVar : noop
|
|
20572
|
+
});
|
|
20573
|
+
(0, import_react103.useLayoutEffect)(() => {
|
|
20574
|
+
syncHeightVar();
|
|
20575
|
+
const tableWrapper = tableWrapperRef.current;
|
|
20576
|
+
return () => {
|
|
20577
|
+
tableWrapper?.style.removeProperty(beamTableActionsHeightVar);
|
|
20578
|
+
};
|
|
20579
|
+
}, [tableWrapperRef, syncHeightVar]);
|
|
20580
|
+
}
|
|
20348
20581
|
function Header2(props) {
|
|
20349
20582
|
const {
|
|
20350
20583
|
pageTitle,
|
|
@@ -20361,7 +20594,6 @@ function Header2(props) {
|
|
|
20361
20594
|
paddingBottom: "pb3",
|
|
20362
20595
|
paddingRight: "pr3",
|
|
20363
20596
|
paddingLeft: "pl3",
|
|
20364
|
-
marginBottom: "mb3",
|
|
20365
20597
|
minHeight: "mh_50px",
|
|
20366
20598
|
backgroundColor: "bgWhite",
|
|
20367
20599
|
display: "df",
|
|
@@ -20398,9 +20630,9 @@ function PreventBrowserScroll({
|
|
|
20398
20630
|
}
|
|
20399
20631
|
|
|
20400
20632
|
// src/components/Layout/RightPaneLayout/RightPaneContext.tsx
|
|
20401
|
-
var
|
|
20633
|
+
var import_react104 = __toESM(require("react"), 1);
|
|
20402
20634
|
var import_jsx_runtime150 = require("react/jsx-runtime");
|
|
20403
|
-
var RightPaneContext =
|
|
20635
|
+
var RightPaneContext = import_react104.default.createContext({
|
|
20404
20636
|
openInPane: () => {
|
|
20405
20637
|
},
|
|
20406
20638
|
closePane: () => {
|
|
@@ -20411,33 +20643,33 @@ var RightPaneContext = import_react103.default.createContext({
|
|
|
20411
20643
|
rightPaneContent: null
|
|
20412
20644
|
});
|
|
20413
20645
|
function RightPaneProvider({ children }) {
|
|
20414
|
-
const [rightPaneContent, setRightPaneContent] = (0,
|
|
20415
|
-
const [isRightPaneOpen, setIsRightPaneOpen] = (0,
|
|
20416
|
-
const openInPane = (0,
|
|
20646
|
+
const [rightPaneContent, setRightPaneContent] = (0, import_react104.useState)(void 0);
|
|
20647
|
+
const [isRightPaneOpen, setIsRightPaneOpen] = (0, import_react104.useState)(false);
|
|
20648
|
+
const openInPane = (0, import_react104.useCallback)(
|
|
20417
20649
|
(opts) => {
|
|
20418
20650
|
setRightPaneContent(opts?.content);
|
|
20419
20651
|
setIsRightPaneOpen(true);
|
|
20420
20652
|
},
|
|
20421
20653
|
[setRightPaneContent]
|
|
20422
20654
|
);
|
|
20423
|
-
const closePane = (0,
|
|
20424
|
-
const clearPane = (0,
|
|
20425
|
-
const context = (0,
|
|
20655
|
+
const closePane = (0, import_react104.useCallback)(() => setIsRightPaneOpen(false), []);
|
|
20656
|
+
const clearPane = (0, import_react104.useCallback)(() => setRightPaneContent(void 0), [setRightPaneContent]);
|
|
20657
|
+
const context = (0, import_react104.useMemo)(
|
|
20426
20658
|
() => ({ openInPane, closePane, clearPane, rightPaneContent, isRightPaneOpen }),
|
|
20427
20659
|
[openInPane, closePane, rightPaneContent, clearPane, isRightPaneOpen]
|
|
20428
20660
|
);
|
|
20429
20661
|
return /* @__PURE__ */ (0, import_jsx_runtime150.jsx)(RightPaneContext.Provider, { value: context, children });
|
|
20430
20662
|
}
|
|
20431
20663
|
function useRightPaneContext() {
|
|
20432
|
-
return (0,
|
|
20664
|
+
return (0, import_react104.useContext)(RightPaneContext);
|
|
20433
20665
|
}
|
|
20434
20666
|
|
|
20435
20667
|
// src/components/Layout/RightPaneLayout/RightPaneLayout.tsx
|
|
20436
20668
|
var import_framer_motion3 = require("framer-motion");
|
|
20437
|
-
var
|
|
20669
|
+
var import_react105 = require("react");
|
|
20438
20670
|
var import_runtime79 = require("@homebound/truss/runtime");
|
|
20439
20671
|
var import_jsx_runtime151 = require("react/jsx-runtime");
|
|
20440
|
-
var
|
|
20672
|
+
var __maybeInc15 = (inc) => {
|
|
20441
20673
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
20442
20674
|
};
|
|
20443
20675
|
function RightPaneLayout(props) {
|
|
@@ -20453,12 +20685,12 @@ function RightPaneLayout(props) {
|
|
|
20453
20685
|
clearPane,
|
|
20454
20686
|
closePane
|
|
20455
20687
|
} = useRightPaneContext();
|
|
20456
|
-
(0,
|
|
20688
|
+
(0, import_react105.useEffect)(() => closePane, [closePane]);
|
|
20457
20689
|
return /* @__PURE__ */ (0, import_jsx_runtime151.jsx)("div", { className: "h100 df oxh", children: /* @__PURE__ */ (0, import_jsx_runtime151.jsxs)(import_jsx_runtime151.Fragment, { children: [
|
|
20458
20690
|
/* @__PURE__ */ (0, import_jsx_runtime151.jsx)("div", { ...(0, import_runtime79.trussProps)({
|
|
20459
20691
|
...{
|
|
20460
20692
|
width: ["w_var", {
|
|
20461
|
-
"--width": (0, import_runtime79.maybeCssVar)(
|
|
20693
|
+
"--width": (0, import_runtime79.maybeCssVar)(__maybeInc15(`calc(100% - ${paneWidth + 24}px)`))
|
|
20462
20694
|
}],
|
|
20463
20695
|
transition: "transition_width_2s_linear",
|
|
20464
20696
|
height: "h100",
|
|
@@ -20474,7 +20706,7 @@ function RightPaneLayout(props) {
|
|
|
20474
20706
|
...{
|
|
20475
20707
|
...!!defaultPaneContent ? {
|
|
20476
20708
|
width: ["w_var", {
|
|
20477
|
-
"--width": (0, import_runtime79.maybeCssVar)(
|
|
20709
|
+
"--width": (0, import_runtime79.maybeCssVar)(__maybeInc15(`calc(100% - ${paneWidth + 24}px)`))
|
|
20478
20710
|
}],
|
|
20479
20711
|
marginRight: "mr3"
|
|
20480
20712
|
} : {}
|
|
@@ -20565,7 +20797,7 @@ function ScrollableFooter(props) {
|
|
|
20565
20797
|
|
|
20566
20798
|
// src/components/Layout/TableReviewLayout/TableReviewLayout.tsx
|
|
20567
20799
|
var import_framer_motion4 = require("framer-motion");
|
|
20568
|
-
var
|
|
20800
|
+
var import_react106 = require("react");
|
|
20569
20801
|
|
|
20570
20802
|
// src/components/Layout/TableReviewLayout/SidePanel.tsx
|
|
20571
20803
|
var import_jsx_runtime153 = require("react/jsx-runtime");
|
|
@@ -20605,8 +20837,8 @@ function TableReviewLayout(props) {
|
|
|
20605
20837
|
rightPaneWidth = defaultRightPaneWidth
|
|
20606
20838
|
} = props;
|
|
20607
20839
|
const tid = useTestIds(props, "tableReviewLayout");
|
|
20608
|
-
const [isPanelVisible, setIsPanelVisible] = (0,
|
|
20609
|
-
(0,
|
|
20840
|
+
const [isPanelVisible, setIsPanelVisible] = (0, import_react106.useState)(!!panelContent);
|
|
20841
|
+
(0, import_react106.useEffect)(() => {
|
|
20610
20842
|
setIsPanelVisible(!!panelContent);
|
|
20611
20843
|
}, [panelContent]);
|
|
20612
20844
|
function handleClosePanel() {
|
|
@@ -20703,7 +20935,7 @@ function TableReviewLayout(props) {
|
|
|
20703
20935
|
|
|
20704
20936
|
// src/components/BeamContext.tsx
|
|
20705
20937
|
var import_jsx_runtime155 = require("react/jsx-runtime");
|
|
20706
|
-
var BeamContext = (0,
|
|
20938
|
+
var BeamContext = (0, import_react107.createContext)({
|
|
20707
20939
|
modalState: new EmptyRef(),
|
|
20708
20940
|
modalCanCloseChecks: new EmptyRef(),
|
|
20709
20941
|
modalHeaderDiv: void 0,
|
|
@@ -20715,21 +20947,21 @@ var BeamContext = (0, import_react106.createContext)({
|
|
|
20715
20947
|
sdHeaderDiv: void 0
|
|
20716
20948
|
});
|
|
20717
20949
|
function BeamProvider({ children, ...presentationProps }) {
|
|
20718
|
-
const [, tick] = (0,
|
|
20719
|
-
const modalRef = (0,
|
|
20720
|
-
const modalHeaderDiv = (0,
|
|
20721
|
-
const modalBodyDiv = (0,
|
|
20950
|
+
const [, tick] = (0, import_react107.useReducer)((prev) => prev + 1, 0);
|
|
20951
|
+
const modalRef = (0, import_react107.useRef)();
|
|
20952
|
+
const modalHeaderDiv = (0, import_react107.useMemo)(() => document.createElement("div"), []);
|
|
20953
|
+
const modalBodyDiv = (0, import_react107.useMemo)(() => {
|
|
20722
20954
|
const el = document.createElement("div");
|
|
20723
20955
|
el.style.height = "100%";
|
|
20724
20956
|
return el;
|
|
20725
20957
|
}, []);
|
|
20726
|
-
const modalCanCloseChecksRef = (0,
|
|
20727
|
-
const modalFooterDiv = (0,
|
|
20728
|
-
const drawerContentStackRef = (0,
|
|
20729
|
-
const drawerCanCloseChecks = (0,
|
|
20730
|
-
const drawerCanCloseDetailsChecks = (0,
|
|
20731
|
-
const sdHeaderDiv = (0,
|
|
20732
|
-
const context = (0,
|
|
20958
|
+
const modalCanCloseChecksRef = (0, import_react107.useRef)([]);
|
|
20959
|
+
const modalFooterDiv = (0, import_react107.useMemo)(() => document.createElement("div"), []);
|
|
20960
|
+
const drawerContentStackRef = (0, import_react107.useRef)([]);
|
|
20961
|
+
const drawerCanCloseChecks = (0, import_react107.useRef)([]);
|
|
20962
|
+
const drawerCanCloseDetailsChecks = (0, import_react107.useRef)([]);
|
|
20963
|
+
const sdHeaderDiv = (0, import_react107.useMemo)(() => document.createElement("div"), []);
|
|
20964
|
+
const context = (0, import_react107.useMemo)(() => {
|
|
20733
20965
|
return {
|
|
20734
20966
|
// These two keys need to trigger re-renders on change
|
|
20735
20967
|
modalState: new PretendRefThatTicks(modalRef, tick),
|
|
@@ -20766,18 +20998,18 @@ var PretendRefThatTicks = class {
|
|
|
20766
20998
|
}
|
|
20767
20999
|
};
|
|
20768
21000
|
function useBeamContext() {
|
|
20769
|
-
return (0,
|
|
21001
|
+
return (0, import_react107.useContext)(BeamContext);
|
|
20770
21002
|
}
|
|
20771
21003
|
|
|
20772
21004
|
// src/components/ButtonDatePicker.tsx
|
|
20773
|
-
var
|
|
21005
|
+
var import_react108 = require("react");
|
|
20774
21006
|
var import_react_aria47 = require("react-aria");
|
|
20775
21007
|
var import_react_stately18 = require("react-stately");
|
|
20776
21008
|
var import_jsx_runtime156 = require("react/jsx-runtime");
|
|
20777
21009
|
function ButtonDatePicker(props) {
|
|
20778
21010
|
const { defaultOpen, disabled, trigger, onSelect, ...datePickerProps } = props;
|
|
20779
21011
|
const state = (0, import_react_stately18.useMenuTriggerState)({ isOpen: defaultOpen });
|
|
20780
|
-
const buttonRef = (0,
|
|
21012
|
+
const buttonRef = (0, import_react108.useRef)(null);
|
|
20781
21013
|
const {
|
|
20782
21014
|
menuTriggerProps,
|
|
20783
21015
|
menuProps: { autoFocus: _af, ...menuProps }
|
|
@@ -20800,7 +21032,7 @@ function ButtonDatePicker(props) {
|
|
|
20800
21032
|
}
|
|
20801
21033
|
|
|
20802
21034
|
// src/components/ButtonGroup.tsx
|
|
20803
|
-
var
|
|
21035
|
+
var import_react109 = require("react");
|
|
20804
21036
|
var import_react_aria48 = require("react-aria");
|
|
20805
21037
|
var import_runtime81 = require("@homebound/truss/runtime");
|
|
20806
21038
|
var import_jsx_runtime157 = (
|
|
@@ -20848,7 +21080,7 @@ function GroupButton(props) {
|
|
|
20848
21080
|
isDisabled: !!disabled,
|
|
20849
21081
|
...otherProps
|
|
20850
21082
|
};
|
|
20851
|
-
const ref = (0,
|
|
21083
|
+
const ref = (0, import_react109.useRef)(null);
|
|
20852
21084
|
const {
|
|
20853
21085
|
buttonProps,
|
|
20854
21086
|
isPressed
|
|
@@ -20966,12 +21198,12 @@ var iconStyles2 = {
|
|
|
20966
21198
|
};
|
|
20967
21199
|
|
|
20968
21200
|
// src/components/Card.tsx
|
|
20969
|
-
var
|
|
21201
|
+
var import_react111 = require("react");
|
|
20970
21202
|
var import_react_aria49 = require("react-aria");
|
|
20971
21203
|
|
|
20972
21204
|
// src/components/Tag.tsx
|
|
20973
|
-
var
|
|
20974
|
-
var
|
|
21205
|
+
var import_utils124 = require("@react-aria/utils");
|
|
21206
|
+
var import_react110 = require("react");
|
|
20975
21207
|
var import_runtime82 = require("@homebound/truss/runtime");
|
|
20976
21208
|
var import_jsx_runtime158 = require("react/jsx-runtime");
|
|
20977
21209
|
function Tag(props) {
|
|
@@ -20984,9 +21216,9 @@ function Tag(props) {
|
|
|
20984
21216
|
} = props;
|
|
20985
21217
|
const typeStyles2 = getStyles(type);
|
|
20986
21218
|
const tid = useTestIds(otherProps);
|
|
20987
|
-
const [showTooltip, setShowTooltip] = (0,
|
|
20988
|
-
const ref = (0,
|
|
20989
|
-
(0,
|
|
21219
|
+
const [showTooltip, setShowTooltip] = (0, import_react110.useState)(false);
|
|
21220
|
+
const ref = (0, import_react110.useRef)(null);
|
|
21221
|
+
(0, import_utils124.useResizeObserver)({
|
|
20990
21222
|
ref,
|
|
20991
21223
|
onResize: () => {
|
|
20992
21224
|
if (ref.current) {
|
|
@@ -21070,7 +21302,7 @@ function Card(props) {
|
|
|
21070
21302
|
});
|
|
21071
21303
|
const isList = type === "list";
|
|
21072
21304
|
const imgHeight = isList ? 96 : bordered ? 224 : 256;
|
|
21073
|
-
const styles = (0,
|
|
21305
|
+
const styles = (0, import_react111.useMemo)(() => ({
|
|
21074
21306
|
...baseStyles4(type),
|
|
21075
21307
|
...isList && listStyles,
|
|
21076
21308
|
...bordered && borderedStyles,
|
|
@@ -21194,17 +21426,17 @@ function Copy(props) {
|
|
|
21194
21426
|
|
|
21195
21427
|
// src/components/DnDGrid/DnDGrid.tsx
|
|
21196
21428
|
var import_fast_deep_equal2 = __toESM(require("fast-deep-equal"), 1);
|
|
21197
|
-
var
|
|
21429
|
+
var import_react113 = require("react");
|
|
21198
21430
|
|
|
21199
21431
|
// src/components/DnDGrid/DnDGridContext.tsx
|
|
21200
|
-
var
|
|
21201
|
-
var DnDGridContext = (0,
|
|
21432
|
+
var import_react112 = require("react");
|
|
21433
|
+
var DnDGridContext = (0, import_react112.createContext)({
|
|
21202
21434
|
dragEl: { current: void 0 },
|
|
21203
21435
|
onDragHandleKeyDown: () => {
|
|
21204
21436
|
}
|
|
21205
21437
|
});
|
|
21206
21438
|
function useDnDGridContext() {
|
|
21207
|
-
return (0,
|
|
21439
|
+
return (0, import_react112.useContext)(DnDGridContext);
|
|
21208
21440
|
}
|
|
21209
21441
|
|
|
21210
21442
|
// src/components/DnDGrid/DnDGrid.tsx
|
|
@@ -21217,12 +21449,12 @@ function DnDGrid(props) {
|
|
|
21217
21449
|
onReorder,
|
|
21218
21450
|
activeItemStyles
|
|
21219
21451
|
} = props;
|
|
21220
|
-
const gridEl = (0,
|
|
21221
|
-
const dragEl = (0,
|
|
21222
|
-
const cloneEl = (0,
|
|
21223
|
-
const initialOrder = (0,
|
|
21224
|
-
const reorderViaKeyboard = (0,
|
|
21225
|
-
const transformFrom = (0,
|
|
21452
|
+
const gridEl = (0, import_react113.useRef)(null);
|
|
21453
|
+
const dragEl = (0, import_react113.useRef)();
|
|
21454
|
+
const cloneEl = (0, import_react113.useRef)();
|
|
21455
|
+
const initialOrder = (0, import_react113.useRef)();
|
|
21456
|
+
const reorderViaKeyboard = (0, import_react113.useRef)(false);
|
|
21457
|
+
const transformFrom = (0, import_react113.useRef)({
|
|
21226
21458
|
x: 0,
|
|
21227
21459
|
y: 0
|
|
21228
21460
|
});
|
|
@@ -21230,19 +21462,19 @@ function DnDGrid(props) {
|
|
|
21230
21462
|
const activeStyles3 = activeItemStyles ?? {
|
|
21231
21463
|
boxShadow: "bshModal"
|
|
21232
21464
|
};
|
|
21233
|
-
const getGridItems = (0,
|
|
21465
|
+
const getGridItems = (0, import_react113.useCallback)(() => {
|
|
21234
21466
|
return gridEl.current ? Array.from(gridEl.current.querySelectorAll(`[${gridItemIdKey}]`)) : [];
|
|
21235
21467
|
}, []);
|
|
21236
|
-
const getGridItemIdOrder = (0,
|
|
21468
|
+
const getGridItemIdOrder = (0, import_react113.useCallback)(() => {
|
|
21237
21469
|
return getGridItems().map((child) => child.getAttribute(gridItemIdKey)).filter(isDefined);
|
|
21238
21470
|
}, [getGridItems]);
|
|
21239
|
-
const initReorder = (0,
|
|
21471
|
+
const initReorder = (0, import_react113.useCallback)(() => {
|
|
21240
21472
|
if (gridEl.current && dragEl.current) {
|
|
21241
21473
|
initialOrder.current = getGridItemIdOrder();
|
|
21242
21474
|
setInlineStyles(dragEl.current, activeStyles3);
|
|
21243
21475
|
}
|
|
21244
21476
|
}, [getGridItemIdOrder, activeStyles3]);
|
|
21245
|
-
const commitReorder = (0,
|
|
21477
|
+
const commitReorder = (0, import_react113.useCallback)(() => {
|
|
21246
21478
|
if (gridEl.current && dragEl.current) {
|
|
21247
21479
|
const currentOrder = getGridItemIdOrder();
|
|
21248
21480
|
if (!(0, import_fast_deep_equal2.default)(currentOrder, initialOrder.current)) onReorder(currentOrder);
|
|
@@ -21252,7 +21484,7 @@ function DnDGrid(props) {
|
|
|
21252
21484
|
initialOrder.current = currentOrder;
|
|
21253
21485
|
}
|
|
21254
21486
|
}, [onReorder, getGridItemIdOrder, activeStyles3]);
|
|
21255
|
-
const cancelReorder = (0,
|
|
21487
|
+
const cancelReorder = (0, import_react113.useCallback)(() => {
|
|
21256
21488
|
if (gridEl.current && dragEl.current && initialOrder.current) {
|
|
21257
21489
|
const currentOrder = getGridItemIdOrder();
|
|
21258
21490
|
if (!(0, import_fast_deep_equal2.default)(currentOrder, initialOrder.current)) {
|
|
@@ -21274,7 +21506,7 @@ function DnDGrid(props) {
|
|
|
21274
21506
|
reorderViaKeyboard.current = false;
|
|
21275
21507
|
}
|
|
21276
21508
|
}, [getGridItemIdOrder, getGridItems, activeStyles3]);
|
|
21277
|
-
const onMove = (0,
|
|
21509
|
+
const onMove = (0, import_react113.useCallback)((e) => {
|
|
21278
21510
|
if (!reorderViaKeyboard.current && dragEl.current && cloneEl.current && gridEl.current) {
|
|
21279
21511
|
const clientX = "clientX" in e ? e.clientX : e.touches[0].clientX;
|
|
21280
21512
|
const clientY = "clientY" in e ? e.clientY : e.touches[0].clientY;
|
|
@@ -21297,7 +21529,7 @@ function DnDGrid(props) {
|
|
|
21297
21529
|
}
|
|
21298
21530
|
}
|
|
21299
21531
|
}, []);
|
|
21300
|
-
const onDragStart = (0,
|
|
21532
|
+
const onDragStart = (0, import_react113.useCallback)((e) => {
|
|
21301
21533
|
if (!reorderViaKeyboard.current && dragEl.current && gridEl.current) {
|
|
21302
21534
|
initReorder();
|
|
21303
21535
|
const rect = dragEl.current.getBoundingClientRect();
|
|
@@ -21327,7 +21559,7 @@ function DnDGrid(props) {
|
|
|
21327
21559
|
gridEl.current.addEventListener("touchmove", onMove);
|
|
21328
21560
|
}
|
|
21329
21561
|
}, [initReorder, onMove, activeStyles3]);
|
|
21330
|
-
const onDragEnd = (0,
|
|
21562
|
+
const onDragEnd = (0, import_react113.useCallback)((e) => {
|
|
21331
21563
|
if (!reorderViaKeyboard.current && dragEl.current && cloneEl.current && gridEl.current) {
|
|
21332
21564
|
e.preventDefault();
|
|
21333
21565
|
cloneEl.current.replaceWith(dragEl.current);
|
|
@@ -21340,7 +21572,7 @@ function DnDGrid(props) {
|
|
|
21340
21572
|
gridEl.current.removeEventListener("touchmove", onMove);
|
|
21341
21573
|
}
|
|
21342
21574
|
}, [commitReorder, onMove]);
|
|
21343
|
-
const onDragHandleKeyDown = (0,
|
|
21575
|
+
const onDragHandleKeyDown = (0, import_react113.useCallback)((e) => {
|
|
21344
21576
|
const moveHandle = e.target;
|
|
21345
21577
|
if (dragEl.current instanceof HTMLElement && moveHandle instanceof HTMLElement && gridEl.current) {
|
|
21346
21578
|
const isSpaceKey = e.key === " ";
|
|
@@ -21457,11 +21689,11 @@ function DnDGridItemHandle(props) {
|
|
|
21457
21689
|
}
|
|
21458
21690
|
|
|
21459
21691
|
// src/components/DnDGrid/useDnDGridItem.tsx
|
|
21460
|
-
var
|
|
21692
|
+
var import_react114 = require("react");
|
|
21461
21693
|
function useDnDGridItem(props) {
|
|
21462
21694
|
const { id, itemRef } = props;
|
|
21463
21695
|
const { dragEl, onDragHandleKeyDown } = useDnDGridContext();
|
|
21464
|
-
const { dragItemProps, dragHandleProps } = (0,
|
|
21696
|
+
const { dragItemProps, dragHandleProps } = (0, import_react114.useMemo)(
|
|
21465
21697
|
() => {
|
|
21466
21698
|
function initDraggable() {
|
|
21467
21699
|
if (itemRef.current) {
|
|
@@ -21488,12 +21720,12 @@ function useDnDGridItem(props) {
|
|
|
21488
21720
|
}
|
|
21489
21721
|
|
|
21490
21722
|
// src/components/Grid/ResponsiveGrid.tsx
|
|
21491
|
-
var
|
|
21723
|
+
var import_react116 = require("react");
|
|
21492
21724
|
|
|
21493
21725
|
// src/components/Grid/utils.ts
|
|
21494
|
-
var
|
|
21726
|
+
var import_react115 = require("react");
|
|
21495
21727
|
var gridItemDataAttribute = "data-grid-item-span";
|
|
21496
|
-
var ResponsiveGridContext = (0,
|
|
21728
|
+
var ResponsiveGridContext = (0, import_react115.createContext)(void 0);
|
|
21497
21729
|
|
|
21498
21730
|
// src/components/Grid/ResponsiveGrid.tsx
|
|
21499
21731
|
var import_runtime87 = require("@homebound/truss/runtime");
|
|
@@ -21512,7 +21744,7 @@ function ResponsiveGrid(props) {
|
|
|
21512
21744
|
gap,
|
|
21513
21745
|
columns
|
|
21514
21746
|
});
|
|
21515
|
-
const config = (0,
|
|
21747
|
+
const config = (0, import_react116.useMemo)(() => ({
|
|
21516
21748
|
minColumnWidth,
|
|
21517
21749
|
gap,
|
|
21518
21750
|
columns
|
|
@@ -21539,9 +21771,9 @@ function ResponsiveGridItem(props) {
|
|
|
21539
21771
|
}
|
|
21540
21772
|
|
|
21541
21773
|
// src/components/Grid/useResponsiveGrid.ts
|
|
21542
|
-
var
|
|
21774
|
+
var import_react117 = require("react");
|
|
21543
21775
|
var import_runtime89 = require("@homebound/truss/runtime");
|
|
21544
|
-
var
|
|
21776
|
+
var __maybeInc16 = (inc) => {
|
|
21545
21777
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
21546
21778
|
};
|
|
21547
21779
|
function useResponsiveGrid(props) {
|
|
@@ -21550,7 +21782,7 @@ function useResponsiveGrid(props) {
|
|
|
21550
21782
|
gap,
|
|
21551
21783
|
columns
|
|
21552
21784
|
} = props;
|
|
21553
|
-
const gridStyles = (0,
|
|
21785
|
+
const gridStyles = (0, import_react117.useMemo)(() => {
|
|
21554
21786
|
const gapCount = columns - 1;
|
|
21555
21787
|
const totalGapWidth = gap * gapCount;
|
|
21556
21788
|
const maxColumnWidth = `calc((100% - ${totalGapWidth}px) / ${columns})`;
|
|
@@ -21563,7 +21795,7 @@ function useResponsiveGrid(props) {
|
|
|
21563
21795
|
}],
|
|
21564
21796
|
containerType: "ctis",
|
|
21565
21797
|
gap: ["gap_var", {
|
|
21566
|
-
"--gap": (0, import_runtime89.maybeCssVar)(
|
|
21798
|
+
"--gap": (0, import_runtime89.maybeCssVar)(__maybeInc16(gridGap))
|
|
21567
21799
|
}]
|
|
21568
21800
|
};
|
|
21569
21801
|
}, [minColumnWidth, gap, columns]);
|
|
@@ -21573,14 +21805,14 @@ function useResponsiveGrid(props) {
|
|
|
21573
21805
|
}
|
|
21574
21806
|
|
|
21575
21807
|
// src/components/Grid/useResponsiveGridItem.ts
|
|
21576
|
-
var
|
|
21808
|
+
var import_react118 = require("react");
|
|
21577
21809
|
var injectedResponsiveGridClasses = /* @__PURE__ */ new Set();
|
|
21578
21810
|
var responsiveGridStyleEl;
|
|
21579
21811
|
function useResponsiveGridItem(props) {
|
|
21580
21812
|
const { colSpan = 1, gridConfig } = props;
|
|
21581
|
-
const contextConfig = (0,
|
|
21813
|
+
const contextConfig = (0, import_react118.useContext)(ResponsiveGridContext);
|
|
21582
21814
|
const config = gridConfig ?? contextConfig;
|
|
21583
|
-
const { className, cssText } = (0,
|
|
21815
|
+
const { className, cssText } = (0, import_react118.useMemo)(() => {
|
|
21584
21816
|
if (!config || colSpan <= 1) return { className: "", cssText: "" };
|
|
21585
21817
|
const { minColumnWidth, gap } = config;
|
|
21586
21818
|
const className2 = responsiveGridItemClassName(config, colSpan);
|
|
@@ -21603,7 +21835,7 @@ function useResponsiveGridItem(props) {
|
|
|
21603
21835
|
};
|
|
21604
21836
|
}
|
|
21605
21837
|
function useResponsiveGridItemStyle(className, cssText) {
|
|
21606
|
-
(0,
|
|
21838
|
+
(0, import_react118.useEffect)(
|
|
21607
21839
|
function() {
|
|
21608
21840
|
if (!className || !cssText || typeof document === "undefined") return;
|
|
21609
21841
|
if (!responsiveGridStyleEl) {
|
|
@@ -21625,7 +21857,7 @@ function responsiveGridItemClassName(config, colSpan) {
|
|
|
21625
21857
|
}
|
|
21626
21858
|
|
|
21627
21859
|
// src/components/HbLoadingSpinner.tsx
|
|
21628
|
-
var
|
|
21860
|
+
var import_react119 = __toESM(require("react"), 1);
|
|
21629
21861
|
|
|
21630
21862
|
// src/components/HbLoadingSpinner.base64.ts
|
|
21631
21863
|
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";
|
|
@@ -21638,9 +21870,9 @@ function HbLoadingSpinner({
|
|
|
21638
21870
|
extraQuipsOnly,
|
|
21639
21871
|
iconOnly
|
|
21640
21872
|
}) {
|
|
21641
|
-
const ctx = (0,
|
|
21873
|
+
const ctx = (0, import_react119.useContext)(HbLoadingSpinnerContext);
|
|
21642
21874
|
const tid = useTestIds({}, "hbSpinner");
|
|
21643
|
-
const quip = (0,
|
|
21875
|
+
const quip = (0, import_react119.useMemo)(() => {
|
|
21644
21876
|
const allQuips = extraQuipsOnly && extraQuips.length !== 0 ? extraQuips : [...ctx.quips, ...extraQuips];
|
|
21645
21877
|
const forceQuips = extraQuips.length !== 0 || noQuips === false;
|
|
21646
21878
|
if (ctx.noQuips && !forceQuips || noQuips || allQuips.length === 0) return "Loading...";
|
|
@@ -21670,7 +21902,7 @@ function HbLoadingSpinner({
|
|
|
21670
21902
|
var dotDotDot = (str) => str.concat("...");
|
|
21671
21903
|
var HB_QUIPS_MISSION = ["Loading", "One Team", "On a Mission", "Executing Relentlessly", "Building Better", "In Service of Our Customers"].map(dotDotDot);
|
|
21672
21904
|
var HB_QUIPS_FLAVOR = ["HOM is HOW", "Scaling Massively", "#LoveIt"].map(dotDotDot);
|
|
21673
|
-
var HbLoadingSpinnerContext =
|
|
21905
|
+
var HbLoadingSpinnerContext = import_react119.default.createContext({
|
|
21674
21906
|
quips: ["Loading..."],
|
|
21675
21907
|
noQuips: false
|
|
21676
21908
|
});
|
|
@@ -21678,7 +21910,7 @@ function HbSpinnerProvider({
|
|
|
21678
21910
|
quips = [],
|
|
21679
21911
|
children
|
|
21680
21912
|
}) {
|
|
21681
|
-
const state = (0,
|
|
21913
|
+
const state = (0, import_react119.useMemo)(() => ({
|
|
21682
21914
|
quips,
|
|
21683
21915
|
noQuips: quips.length === 0
|
|
21684
21916
|
}), [quips]);
|
|
@@ -21688,7 +21920,7 @@ function HbSpinnerProvider({
|
|
|
21688
21920
|
// src/components/HomeboundLogo.tsx
|
|
21689
21921
|
var import_runtime90 = require("@homebound/truss/runtime");
|
|
21690
21922
|
var import_jsx_runtime166 = require("react/jsx-runtime");
|
|
21691
|
-
var
|
|
21923
|
+
var __maybeInc17 = (inc) => {
|
|
21692
21924
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
21693
21925
|
};
|
|
21694
21926
|
function HomeboundLogo(props) {
|
|
@@ -21702,38 +21934,38 @@ function HomeboundLogo(props) {
|
|
|
21702
21934
|
"--fill": (0, import_runtime90.maybeCssVar)(fill)
|
|
21703
21935
|
}],
|
|
21704
21936
|
width: ["w_var", {
|
|
21705
|
-
"--width": (0, import_runtime90.maybeCssVar)(
|
|
21937
|
+
"--width": (0, import_runtime90.maybeCssVar)(__maybeInc17(width2))
|
|
21706
21938
|
}],
|
|
21707
21939
|
height: ["h_var", {
|
|
21708
|
-
"--height": (0, import_runtime90.maybeCssVar)(
|
|
21940
|
+
"--height": (0, import_runtime90.maybeCssVar)(__maybeInc17(height))
|
|
21709
21941
|
}]
|
|
21710
21942
|
}), children: /* @__PURE__ */ (0, import_jsx_runtime166.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" }) });
|
|
21711
21943
|
}
|
|
21712
21944
|
|
|
21713
21945
|
// src/components/MaxLines.tsx
|
|
21714
|
-
var
|
|
21715
|
-
var
|
|
21946
|
+
var import_utils132 = require("@react-aria/utils");
|
|
21947
|
+
var import_react120 = require("react");
|
|
21716
21948
|
var import_runtime91 = require("@homebound/truss/runtime");
|
|
21717
21949
|
var import_jsx_runtime167 = require("react/jsx-runtime");
|
|
21718
21950
|
function MaxLines({
|
|
21719
21951
|
maxLines,
|
|
21720
21952
|
children
|
|
21721
21953
|
}) {
|
|
21722
|
-
const elRef = (0,
|
|
21723
|
-
const [hasMore, setHasMore] = (0,
|
|
21724
|
-
const [expanded, setExpanded] = (0,
|
|
21725
|
-
(0,
|
|
21954
|
+
const elRef = (0, import_react120.useRef)(null);
|
|
21955
|
+
const [hasMore, setHasMore] = (0, import_react120.useState)(false);
|
|
21956
|
+
const [expanded, setExpanded] = (0, import_react120.useState)(false);
|
|
21957
|
+
(0, import_utils132.useLayoutEffect)(() => {
|
|
21726
21958
|
if (!elRef.current) return;
|
|
21727
21959
|
setHasMore(elRef.current.scrollHeight > elRef.current.clientHeight);
|
|
21728
21960
|
}, []);
|
|
21729
|
-
(0,
|
|
21961
|
+
(0, import_react120.useEffect)(() => {
|
|
21730
21962
|
setExpanded(false);
|
|
21731
21963
|
}, [children]);
|
|
21732
|
-
const onResize = (0,
|
|
21964
|
+
const onResize = (0, import_react120.useCallback)(() => {
|
|
21733
21965
|
if (!elRef.current) return;
|
|
21734
21966
|
!expanded && setHasMore(elRef.current.scrollHeight > elRef.current.clientHeight);
|
|
21735
21967
|
}, [expanded]);
|
|
21736
|
-
(0,
|
|
21968
|
+
(0, import_utils132.useResizeObserver)({
|
|
21737
21969
|
ref: elRef,
|
|
21738
21970
|
onResize
|
|
21739
21971
|
});
|
|
@@ -21757,12 +21989,12 @@ function MaxLines({
|
|
|
21757
21989
|
var import_change_case8 = require("change-case");
|
|
21758
21990
|
|
|
21759
21991
|
// src/components/AppNav/AppNavGroup.tsx
|
|
21760
|
-
var
|
|
21992
|
+
var import_utils134 = require("@react-aria/utils");
|
|
21761
21993
|
var import_change_case7 = require("change-case");
|
|
21762
|
-
var
|
|
21994
|
+
var import_react123 = require("react");
|
|
21763
21995
|
|
|
21764
21996
|
// src/components/AppNav/AppNavGroupTrigger.tsx
|
|
21765
|
-
var
|
|
21997
|
+
var import_react121 = require("react");
|
|
21766
21998
|
var import_react_aria52 = require("react-aria");
|
|
21767
21999
|
var import_runtime92 = require("@homebound/truss/runtime");
|
|
21768
22000
|
var import_jsx_runtime168 = require("react/jsx-runtime");
|
|
@@ -21774,7 +22006,7 @@ function AppNavGroupTrigger(props) {
|
|
|
21774
22006
|
onClick
|
|
21775
22007
|
} = props;
|
|
21776
22008
|
const tid = useTestIds(props, "trigger");
|
|
21777
|
-
const ref = (0,
|
|
22009
|
+
const ref = (0, import_react121.useRef)(null);
|
|
21778
22010
|
const {
|
|
21779
22011
|
buttonProps,
|
|
21780
22012
|
isPressed
|
|
@@ -21795,7 +22027,7 @@ function AppNavGroupTrigger(props) {
|
|
|
21795
22027
|
focusRingStyles: focusRingStyles2,
|
|
21796
22028
|
hoverStyles: hoverStyles4,
|
|
21797
22029
|
pressedStyles: pressedStyles2
|
|
21798
|
-
} = (0,
|
|
22030
|
+
} = (0, import_react121.useMemo)(() => getNavLinkStyles("side"), []);
|
|
21799
22031
|
return /* @__PURE__ */ (0, import_jsx_runtime168.jsxs)("button", { type: "button", ...(0, import_react_aria52.mergeProps)(buttonProps, focusProps, hoverProps, tid.trigger, {
|
|
21800
22032
|
ref,
|
|
21801
22033
|
"aria-expanded": expanded,
|
|
@@ -21927,7 +22159,7 @@ function entryHasIcons(item) {
|
|
|
21927
22159
|
}
|
|
21928
22160
|
|
|
21929
22161
|
// src/components/AppNav/useAppNavGroupExpanded.ts
|
|
21930
|
-
var
|
|
22162
|
+
var import_react122 = require("react");
|
|
21931
22163
|
var APP_NAV_EXPANDED_LINK_GROUPS_STORAGE_KEY = "beam.appNav.expandedLinkGroups";
|
|
21932
22164
|
function loadStored() {
|
|
21933
22165
|
try {
|
|
@@ -21946,13 +22178,13 @@ function persistLabel(label, expanded) {
|
|
|
21946
22178
|
}
|
|
21947
22179
|
function useAppNavGroupExpanded(linkGroup) {
|
|
21948
22180
|
const { label } = linkGroup;
|
|
21949
|
-
const [userExpanded, setUserExpanded] = (0,
|
|
22181
|
+
const [userExpanded, setUserExpanded] = (0, import_react122.useState)(() => {
|
|
21950
22182
|
const stored = loadStored();
|
|
21951
22183
|
return label in stored ? stored[label] : null;
|
|
21952
22184
|
});
|
|
21953
22185
|
const hasActiveLink = appNavLinkGroupLinks(linkGroup).some((l) => l.active);
|
|
21954
22186
|
const expanded = userExpanded !== null ? userExpanded : hasActiveLink ? true : linkGroup.defaultExpanded ?? false;
|
|
21955
|
-
const onToggle = (0,
|
|
22187
|
+
const onToggle = (0, import_react122.useCallback)(() => {
|
|
21956
22188
|
const next = !expanded;
|
|
21957
22189
|
setUserExpanded(next);
|
|
21958
22190
|
persistLabel(label, next);
|
|
@@ -21963,7 +22195,7 @@ function useAppNavGroupExpanded(linkGroup) {
|
|
|
21963
22195
|
// src/components/AppNav/AppNavGroup.tsx
|
|
21964
22196
|
var import_runtime93 = require("@homebound/truss/runtime");
|
|
21965
22197
|
var import_jsx_runtime169 = require("react/jsx-runtime");
|
|
21966
|
-
var
|
|
22198
|
+
var __maybeInc18 = (inc) => {
|
|
21967
22199
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
21968
22200
|
};
|
|
21969
22201
|
function AppNavGroupView(props) {
|
|
@@ -21987,20 +22219,20 @@ function AppNavGroupDisclosure(props) {
|
|
|
21987
22219
|
} = useAppNavGroupExpanded(linkGroup);
|
|
21988
22220
|
const tid = useTestIds(props, "linkGroup");
|
|
21989
22221
|
const navGroupId = `nav-group-${(0, import_change_case7.kebabCase)(linkGroup.label)}`;
|
|
21990
|
-
const [contentEl, setContentEl] = (0,
|
|
21991
|
-
const contentRef = (0,
|
|
22222
|
+
const [contentEl, setContentEl] = (0, import_react123.useState)(null);
|
|
22223
|
+
const contentRef = (0, import_react123.useMemo)(() => ({
|
|
21992
22224
|
current: contentEl
|
|
21993
22225
|
}), [contentEl]);
|
|
21994
|
-
const [contentHeight, setContentHeight] = (0,
|
|
21995
|
-
(0,
|
|
22226
|
+
const [contentHeight, setContentHeight] = (0, import_react123.useState)(expanded ? "auto" : "0");
|
|
22227
|
+
(0, import_react123.useEffect)(() => {
|
|
21996
22228
|
setContentHeight(expanded && contentEl ? `${contentEl.scrollHeight}px` : "0");
|
|
21997
22229
|
}, [expanded, contentEl]);
|
|
21998
|
-
const onResize = (0,
|
|
22230
|
+
const onResize = (0, import_react123.useCallback)(() => {
|
|
21999
22231
|
if (contentEl && expanded) {
|
|
22000
22232
|
setContentHeight(`${contentEl.scrollHeight}px`);
|
|
22001
22233
|
}
|
|
22002
22234
|
}, [expanded, contentEl]);
|
|
22003
|
-
(0,
|
|
22235
|
+
(0, import_utils134.useResizeObserver)({
|
|
22004
22236
|
ref: contentRef,
|
|
22005
22237
|
onResize
|
|
22006
22238
|
});
|
|
@@ -22010,7 +22242,7 @@ function AppNavGroupDisclosure(props) {
|
|
|
22010
22242
|
overflow: "oh",
|
|
22011
22243
|
transition: "transitionHeight",
|
|
22012
22244
|
height: ["h_var", {
|
|
22013
|
-
"--height": (0, import_runtime93.maybeCssVar)(
|
|
22245
|
+
"--height": (0, import_runtime93.maybeCssVar)(__maybeInc18(contentHeight))
|
|
22014
22246
|
}]
|
|
22015
22247
|
}), ...tid.panel, children: /* @__PURE__ */ (0, import_jsx_runtime169.jsx)("div", { ref: setContentEl, className: "df fdc pl2", children: /* @__PURE__ */ (0, import_jsx_runtime169.jsx)(AppNavItems, { items: linkGroup.items, panelCollapsed: false, ...tid }) }) })
|
|
22016
22248
|
] });
|
|
@@ -22136,7 +22368,7 @@ function AppNavItems(props) {
|
|
|
22136
22368
|
|
|
22137
22369
|
// src/components/Navbar/NavbarMobileMenu.tsx
|
|
22138
22370
|
var import_framer_motion5 = require("framer-motion");
|
|
22139
|
-
var
|
|
22371
|
+
var import_react124 = require("react");
|
|
22140
22372
|
var import_react_aria53 = require("react-aria");
|
|
22141
22373
|
var import_react_dom6 = require("react-dom");
|
|
22142
22374
|
var import_react_router_dom5 = require("react-router-dom");
|
|
@@ -22147,7 +22379,7 @@ function NavbarMobileMenu(props) {
|
|
|
22147
22379
|
items
|
|
22148
22380
|
} = props;
|
|
22149
22381
|
const tid = useTestIds(props, "navbar");
|
|
22150
|
-
const [isOpen, setIsOpen] = (0,
|
|
22382
|
+
const [isOpen, setIsOpen] = (0, import_react124.useState)(false);
|
|
22151
22383
|
const {
|
|
22152
22384
|
pathname,
|
|
22153
22385
|
search
|
|
@@ -22155,7 +22387,7 @@ function NavbarMobileMenu(props) {
|
|
|
22155
22387
|
(0, import_react_aria53.usePreventScroll)({
|
|
22156
22388
|
isDisabled: !isOpen
|
|
22157
22389
|
});
|
|
22158
|
-
(0,
|
|
22390
|
+
(0, import_react124.useEffect)(() => {
|
|
22159
22391
|
setIsOpen(false);
|
|
22160
22392
|
}, [pathname, search]);
|
|
22161
22393
|
const close = () => setIsOpen(false);
|
|
@@ -22315,7 +22547,7 @@ function NavbarUserMenu({
|
|
|
22315
22547
|
|
|
22316
22548
|
// src/components/Tabs.tsx
|
|
22317
22549
|
var import_change_case9 = require("change-case");
|
|
22318
|
-
var
|
|
22550
|
+
var import_react125 = require("react");
|
|
22319
22551
|
var import_react_aria54 = require("react-aria");
|
|
22320
22552
|
var import_react_router = require("react-router");
|
|
22321
22553
|
var import_react_router_dom6 = require("react-router-dom");
|
|
@@ -22376,9 +22608,9 @@ function Tabs(props) {
|
|
|
22376
22608
|
focusProps
|
|
22377
22609
|
} = (0, import_react_aria54.useFocusRing)();
|
|
22378
22610
|
const tid = useTestIds(others, "tabs");
|
|
22379
|
-
const [active, setActive] = (0,
|
|
22380
|
-
const ref = (0,
|
|
22381
|
-
(0,
|
|
22611
|
+
const [active, setActive] = (0, import_react125.useState)(selected);
|
|
22612
|
+
const ref = (0, import_react125.useRef)(null);
|
|
22613
|
+
(0, import_react125.useEffect)(() => setActive(selected), [selected]);
|
|
22382
22614
|
function onKeyUp(e) {
|
|
22383
22615
|
if (e.key === "ArrowLeft" || e.key === "ArrowRight") {
|
|
22384
22616
|
const nextTabValue = getNextTabValue(active, e.key, tabs);
|
|
@@ -22448,7 +22680,7 @@ function TabImpl(props) {
|
|
|
22448
22680
|
hoverStyles: hoverStyles4,
|
|
22449
22681
|
disabledStyles: disabledStyles4,
|
|
22450
22682
|
activeHoverStyles
|
|
22451
|
-
} = (0,
|
|
22683
|
+
} = (0, import_react125.useMemo)(() => getTabStyles(), []);
|
|
22452
22684
|
const uniqueValue = uniqueTabValue(tab);
|
|
22453
22685
|
const tabProps = {
|
|
22454
22686
|
"aria-controls": `${uniqueValue}-tabPanel`,
|
|
@@ -22613,8 +22845,8 @@ function PageHeader2(props) {
|
|
|
22613
22845
|
}
|
|
22614
22846
|
|
|
22615
22847
|
// src/components/ScrollShadows.tsx
|
|
22616
|
-
var
|
|
22617
|
-
var
|
|
22848
|
+
var import_utils142 = require("@react-aria/utils");
|
|
22849
|
+
var import_react126 = require("react");
|
|
22618
22850
|
var import_runtime99 = require("@homebound/truss/runtime");
|
|
22619
22851
|
var import_jsx_runtime177 = require("react/jsx-runtime");
|
|
22620
22852
|
function ScrollShadows(props) {
|
|
@@ -22632,10 +22864,10 @@ function ScrollShadows(props) {
|
|
|
22632
22864
|
if (!bgColor.includes("rgba")) {
|
|
22633
22865
|
throw new Error("ScrollShadows: bgColor prop must be in the format 'rgba(255, 255, 255, 1)'");
|
|
22634
22866
|
}
|
|
22635
|
-
const [showStartShadow, setShowStartShadow] = (0,
|
|
22636
|
-
const [showEndShadow, setShowEndShadow] = (0,
|
|
22637
|
-
const scrollRef = (0,
|
|
22638
|
-
const [startShadowStyles, endShadowStyles] = (0,
|
|
22867
|
+
const [showStartShadow, setShowStartShadow] = (0, import_react126.useState)(false);
|
|
22868
|
+
const [showEndShadow, setShowEndShadow] = (0, import_react126.useState)(false);
|
|
22869
|
+
const scrollRef = (0, import_react126.useRef)(null);
|
|
22870
|
+
const [startShadowStyles, endShadowStyles] = (0, import_react126.useMemo)(() => {
|
|
22639
22871
|
const transparentBgColor = bgColor.replace(/,1\)$/, ",0)");
|
|
22640
22872
|
const commonStyles = {
|
|
22641
22873
|
position: "absolute",
|
|
@@ -22686,7 +22918,7 @@ function ScrollShadows(props) {
|
|
|
22686
22918
|
}
|
|
22687
22919
|
}];
|
|
22688
22920
|
}, [horizontal, bgColor]);
|
|
22689
|
-
const updateScrollProps = (0,
|
|
22921
|
+
const updateScrollProps = (0, import_react126.useCallback)((el) => {
|
|
22690
22922
|
const {
|
|
22691
22923
|
scrollTop,
|
|
22692
22924
|
scrollHeight,
|
|
@@ -22701,8 +22933,8 @@ function ScrollShadows(props) {
|
|
|
22701
22933
|
setShowStartShadow(start > 0);
|
|
22702
22934
|
setShowEndShadow(start + boxSize < end);
|
|
22703
22935
|
}, [horizontal]);
|
|
22704
|
-
const onResize = (0,
|
|
22705
|
-
(0,
|
|
22936
|
+
const onResize = (0, import_react126.useCallback)(() => scrollRef.current && updateScrollProps(scrollRef.current), [updateScrollProps]);
|
|
22937
|
+
(0, import_utils142.useResizeObserver)({
|
|
22706
22938
|
ref: scrollRef,
|
|
22707
22939
|
onResize
|
|
22708
22940
|
});
|
|
@@ -22750,7 +22982,7 @@ function ScrollShadows(props) {
|
|
|
22750
22982
|
}
|
|
22751
22983
|
|
|
22752
22984
|
// src/layouts/SideNavLayout/SideNavLayoutContext.tsx
|
|
22753
|
-
var
|
|
22985
|
+
var import_react127 = require("react");
|
|
22754
22986
|
var import_jsx_runtime178 = require("react/jsx-runtime");
|
|
22755
22987
|
var SIDE_NAV_LAYOUT_STATE_STORAGE_KEY = "beam.sideNavLayout.navState";
|
|
22756
22988
|
function loadStoredNavState() {
|
|
@@ -22773,20 +23005,20 @@ function resolveInitialNavState(defaultNavState) {
|
|
|
22773
23005
|
}
|
|
22774
23006
|
return loadStoredNavState() ?? defaultNavState ?? "expanded";
|
|
22775
23007
|
}
|
|
22776
|
-
var SideNavLayoutContext = (0,
|
|
23008
|
+
var SideNavLayoutContext = (0, import_react127.createContext)(void 0);
|
|
22777
23009
|
function SideNavLayoutProvider(props) {
|
|
22778
|
-
const [navState, setNavStateInternal] = (0,
|
|
23010
|
+
const [navState, setNavStateInternal] = (0, import_react127.useState)(
|
|
22779
23011
|
() => resolveInitialNavState(props.defaultNavState)
|
|
22780
23012
|
);
|
|
22781
23013
|
const bp = useBreakpoint();
|
|
22782
|
-
const prevMdAndUp = (0,
|
|
22783
|
-
(0,
|
|
23014
|
+
const prevMdAndUp = (0, import_react127.useRef)(bp.mdAndUp);
|
|
23015
|
+
(0, import_react127.useEffect)(() => {
|
|
22784
23016
|
if (prevMdAndUp.current && !bp.mdAndUp) {
|
|
22785
23017
|
setNavStateInternal((prev) => prev === "expanded" ? "collapse" : prev);
|
|
22786
23018
|
}
|
|
22787
23019
|
prevMdAndUp.current = bp.mdAndUp;
|
|
22788
23020
|
}, [bp.mdAndUp]);
|
|
22789
|
-
const setNavState = (0,
|
|
23021
|
+
const setNavState = (0, import_react127.useCallback)((value2) => {
|
|
22790
23022
|
setNavStateInternal((prev) => {
|
|
22791
23023
|
const next = typeof value2 === "function" ? value2(prev) : value2;
|
|
22792
23024
|
if (next === "expanded" || next === "collapse") {
|
|
@@ -22798,15 +23030,15 @@ function SideNavLayoutProvider(props) {
|
|
|
22798
23030
|
return next;
|
|
22799
23031
|
});
|
|
22800
23032
|
}, []);
|
|
22801
|
-
const value = (0,
|
|
23033
|
+
const value = (0, import_react127.useMemo)(() => ({ navState, setNavState }), [navState, setNavState]);
|
|
22802
23034
|
return /* @__PURE__ */ (0, import_jsx_runtime178.jsx)(SideNavLayoutContext.Provider, { value, children: props.children });
|
|
22803
23035
|
}
|
|
22804
23036
|
function useSideNavLayoutContext() {
|
|
22805
|
-
return (0,
|
|
23037
|
+
return (0, import_react127.useContext)(SideNavLayoutContext) ?? { navState: "expanded", setNavState: () => {
|
|
22806
23038
|
} };
|
|
22807
23039
|
}
|
|
22808
23040
|
function useHasSideNavLayoutProvider() {
|
|
22809
|
-
return (0,
|
|
23041
|
+
return (0, import_react127.useContext)(SideNavLayoutContext) !== void 0;
|
|
22810
23042
|
}
|
|
22811
23043
|
|
|
22812
23044
|
// src/components/SideNav/SideNav.tsx
|
|
@@ -22865,10 +23097,10 @@ function SideNav(props) {
|
|
|
22865
23097
|
}
|
|
22866
23098
|
|
|
22867
23099
|
// src/components/Snackbar/useSnackbar.tsx
|
|
22868
|
-
var
|
|
23100
|
+
var import_react128 = require("react");
|
|
22869
23101
|
function useSnackbar() {
|
|
22870
23102
|
const { setNotices, setOffset } = useSnackbarContext();
|
|
22871
|
-
const onClose = (0,
|
|
23103
|
+
const onClose = (0, import_react128.useCallback)(
|
|
22872
23104
|
(noticeId) => {
|
|
22873
23105
|
setNotices((prev) => {
|
|
22874
23106
|
let returnValue = prev;
|
|
@@ -22885,7 +23117,7 @@ function useSnackbar() {
|
|
|
22885
23117
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
22886
23118
|
[]
|
|
22887
23119
|
);
|
|
22888
|
-
const triggerNotice = (0,
|
|
23120
|
+
const triggerNotice = (0, import_react128.useCallback)(
|
|
22889
23121
|
(props) => {
|
|
22890
23122
|
const noticeId = props.id ?? `beamSnackbar:${snackbarId++}`;
|
|
22891
23123
|
let maybeTimeout;
|
|
@@ -22914,8 +23146,8 @@ function useSnackbar() {
|
|
|
22914
23146
|
},
|
|
22915
23147
|
[onClose, setNotices]
|
|
22916
23148
|
);
|
|
22917
|
-
const closeNotice = (0,
|
|
22918
|
-
const useSnackbarOffset = ({ bottom }) => (0,
|
|
23149
|
+
const closeNotice = (0, import_react128.useCallback)((id) => onClose(id), [onClose]);
|
|
23150
|
+
const useSnackbarOffset = ({ bottom }) => (0, import_react128.useEffect)(() => {
|
|
22919
23151
|
setOffset({ bottom });
|
|
22920
23152
|
return () => setOffset({});
|
|
22921
23153
|
}, [bottom]);
|
|
@@ -22924,12 +23156,12 @@ function useSnackbar() {
|
|
|
22924
23156
|
var snackbarId = 1;
|
|
22925
23157
|
|
|
22926
23158
|
// src/components/Stepper.tsx
|
|
22927
|
-
var
|
|
23159
|
+
var import_react129 = require("react");
|
|
22928
23160
|
var import_react_aria55 = require("react-aria");
|
|
22929
23161
|
var import_runtime101 = require("@homebound/truss/runtime");
|
|
22930
23162
|
var import_jsx_runtime180 = require("react/jsx-runtime");
|
|
22931
|
-
var
|
|
22932
|
-
var
|
|
23163
|
+
var import_react130 = require("react");
|
|
23164
|
+
var __maybeInc19 = (inc) => {
|
|
22933
23165
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
22934
23166
|
};
|
|
22935
23167
|
function Stepper(props) {
|
|
@@ -22957,7 +23189,7 @@ function Stepper(props) {
|
|
|
22957
23189
|
}]
|
|
22958
23190
|
}), children: steps.map((step) => {
|
|
22959
23191
|
const isCurrent = currentStep === step.value;
|
|
22960
|
-
return /* @__PURE__ */ (0,
|
|
23192
|
+
return /* @__PURE__ */ (0, import_react130.createElement)("li", { ...(0, import_runtime101.trussProps)({
|
|
22961
23193
|
display: "df",
|
|
22962
23194
|
flexGrow: "fg1",
|
|
22963
23195
|
flexDirection: "fdc",
|
|
@@ -22985,7 +23217,7 @@ function Stepper(props) {
|
|
|
22985
23217
|
transition: "transition_width_200ms",
|
|
22986
23218
|
height: "h100",
|
|
22987
23219
|
width: ["w_var", {
|
|
22988
|
-
"--width": (0, import_runtime101.maybeCssVar)(
|
|
23220
|
+
"--width": (0, import_runtime101.maybeCssVar)(__maybeInc19(`${(lastCompletedStep + 1) / steps.length * 100}%`))
|
|
22989
23221
|
}]
|
|
22990
23222
|
}) }) })
|
|
22991
23223
|
] });
|
|
@@ -23002,7 +23234,7 @@ function StepButton(props) {
|
|
|
23002
23234
|
onPress: onClick,
|
|
23003
23235
|
isDisabled: disabled
|
|
23004
23236
|
};
|
|
23005
|
-
const ref = (0,
|
|
23237
|
+
const ref = (0, import_react129.useRef)(null);
|
|
23006
23238
|
const {
|
|
23007
23239
|
buttonProps,
|
|
23008
23240
|
isPressed
|
|
@@ -23182,7 +23414,7 @@ function ConfirmCloseModal(props) {
|
|
|
23182
23414
|
var import_framer_motion6 = require("framer-motion");
|
|
23183
23415
|
|
|
23184
23416
|
// src/components/SuperDrawer/useSuperDrawer.tsx
|
|
23185
|
-
var
|
|
23417
|
+
var import_react131 = require("react");
|
|
23186
23418
|
var import_jsx_runtime183 = require("react/jsx-runtime");
|
|
23187
23419
|
function useSuperDrawer() {
|
|
23188
23420
|
const {
|
|
@@ -23222,7 +23454,7 @@ function useSuperDrawer() {
|
|
|
23222
23454
|
}
|
|
23223
23455
|
doChange();
|
|
23224
23456
|
}
|
|
23225
|
-
const closeActions = (0,
|
|
23457
|
+
const closeActions = (0, import_react131.useMemo)(
|
|
23226
23458
|
() => {
|
|
23227
23459
|
return {
|
|
23228
23460
|
/** Attempts to close the drawer. If any checks fail, a confirmation modal will appear */
|
|
@@ -23257,7 +23489,7 @@ function useSuperDrawer() {
|
|
|
23257
23489
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
23258
23490
|
[canCloseChecks, canCloseDetailsChecks, contentStack, modalState, openModal]
|
|
23259
23491
|
);
|
|
23260
|
-
const actions = (0,
|
|
23492
|
+
const actions = (0, import_react131.useMemo)(
|
|
23261
23493
|
() => {
|
|
23262
23494
|
return {
|
|
23263
23495
|
// TODO: Maybe we should rename to openDrawer as a breaking change (to match openDrawerDetail)
|
|
@@ -23395,17 +23627,17 @@ function visit(rows, fn) {
|
|
|
23395
23627
|
}
|
|
23396
23628
|
|
|
23397
23629
|
// src/components/Toast/useToast.tsx
|
|
23398
|
-
var
|
|
23630
|
+
var import_react132 = require("react");
|
|
23399
23631
|
function useToast() {
|
|
23400
23632
|
const { setNotice, clear } = useToastContext();
|
|
23401
|
-
const showToast = (0,
|
|
23633
|
+
const showToast = (0, import_react132.useCallback)((props) => setNotice(props), [setNotice]);
|
|
23402
23634
|
return { showToast, clear };
|
|
23403
23635
|
}
|
|
23404
23636
|
|
|
23405
23637
|
// src/layouts/SideNavLayout/SideNavLayout.tsx
|
|
23406
23638
|
var import_runtime104 = require("@homebound/truss/runtime");
|
|
23407
23639
|
var import_jsx_runtime185 = require("react/jsx-runtime");
|
|
23408
|
-
var
|
|
23640
|
+
var __maybeInc20 = (inc) => {
|
|
23409
23641
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
23410
23642
|
};
|
|
23411
23643
|
function SideNavLayout(props) {
|
|
@@ -23460,11 +23692,11 @@ function SideNavLayoutContent(props) {
|
|
|
23460
23692
|
"--zIndex": (0, import_runtime104.maybeCssVar)(zIndices.sideNav)
|
|
23461
23693
|
}],
|
|
23462
23694
|
top: ["top_var", {
|
|
23463
|
-
"--top": (0, import_runtime104.maybeCssVar)(
|
|
23695
|
+
"--top": (0, import_runtime104.maybeCssVar)(__maybeInc20(navTop))
|
|
23464
23696
|
}],
|
|
23465
23697
|
alignSelf: "asfs",
|
|
23466
23698
|
height: ["h_var", {
|
|
23467
|
-
"--height": (0, import_runtime104.maybeCssVar)(
|
|
23699
|
+
"--height": (0, import_runtime104.maybeCssVar)(__maybeInc20(railViewportHeight))
|
|
23468
23700
|
}],
|
|
23469
23701
|
width: ["w_var", {
|
|
23470
23702
|
"--width": `${collapsed ? railCollapsedWidthPx : railWidthPx}px`
|
|
@@ -23474,7 +23706,7 @@ function SideNavLayoutContent(props) {
|
|
|
23474
23706
|
position: "fixed",
|
|
23475
23707
|
left: "left0",
|
|
23476
23708
|
top: ["top_var", {
|
|
23477
|
-
"--top": (0, import_runtime104.maybeCssVar)(
|
|
23709
|
+
"--top": (0, import_runtime104.maybeCssVar)(__maybeInc20(navTop))
|
|
23478
23710
|
}],
|
|
23479
23711
|
bottom: "bottom0",
|
|
23480
23712
|
zIndex: ["z_var", {
|
|
@@ -23517,25 +23749,34 @@ function SideNavLayoutContent(props) {
|
|
|
23517
23749
|
}
|
|
23518
23750
|
|
|
23519
23751
|
// src/layouts/NavbarLayout/NavbarLayout.tsx
|
|
23520
|
-
var
|
|
23752
|
+
var import_react136 = require("react");
|
|
23521
23753
|
var import_runtime105 = require("@homebound/truss/runtime");
|
|
23522
23754
|
|
|
23523
23755
|
// src/layouts/useAutoHideOnScroll.ts
|
|
23524
|
-
var
|
|
23756
|
+
var import_react133 = require("react");
|
|
23525
23757
|
var THRESHOLD = 80;
|
|
23758
|
+
function getInitialAutoHideState() {
|
|
23759
|
+
if (typeof window === "undefined" || window.scrollY <= 0) {
|
|
23760
|
+
return { state: "static", atTop: true };
|
|
23761
|
+
}
|
|
23762
|
+
return { state: "hidden", atTop: false };
|
|
23763
|
+
}
|
|
23526
23764
|
function useAutoHideOnScroll(spacerRef, enabled, getTopOffset) {
|
|
23527
|
-
const
|
|
23528
|
-
const
|
|
23529
|
-
const
|
|
23530
|
-
const
|
|
23531
|
-
const
|
|
23765
|
+
const initial = getInitialAutoHideState();
|
|
23766
|
+
const [state, setState] = (0, import_react133.useState)(initial.state);
|
|
23767
|
+
const stateRef = (0, import_react133.useRef)(initial.state);
|
|
23768
|
+
const [atTop, setAtTop] = (0, import_react133.useState)(initial.atTop);
|
|
23769
|
+
const atTopRef = (0, import_react133.useRef)(initial.atTop);
|
|
23770
|
+
const getTopOffsetRef = (0, import_react133.useRef)(getTopOffset);
|
|
23532
23771
|
getTopOffsetRef.current = getTopOffset;
|
|
23533
|
-
const lastScrollY = (0,
|
|
23534
|
-
(0,
|
|
23772
|
+
const lastScrollY = (0, import_react133.useRef)(Number.POSITIVE_INFINITY);
|
|
23773
|
+
const lastScrollHeight = (0, import_react133.useRef)(0);
|
|
23774
|
+
(0, import_react133.useLayoutEffect)(() => {
|
|
23535
23775
|
if (!enabled) {
|
|
23536
23776
|
stateRef.current = "static";
|
|
23537
23777
|
atTopRef.current = true;
|
|
23538
23778
|
lastScrollY.current = Number.POSITIVE_INFINITY;
|
|
23779
|
+
lastScrollHeight.current = 0;
|
|
23539
23780
|
setState("static");
|
|
23540
23781
|
setAtTop(true);
|
|
23541
23782
|
return;
|
|
@@ -23550,22 +23791,41 @@ function useAutoHideOnScroll(spacerRef, enabled, getTopOffset) {
|
|
|
23550
23791
|
setAtTop(nextAtTop);
|
|
23551
23792
|
}
|
|
23552
23793
|
};
|
|
23794
|
+
const autoHideStateOnLayoutChange = (rect, topOffset) => {
|
|
23795
|
+
const nextAtTop = rect.top >= topOffset;
|
|
23796
|
+
let next = stateRef.current;
|
|
23797
|
+
if (nextAtTop) {
|
|
23798
|
+
next = "static";
|
|
23799
|
+
} else if (rect.bottom < -THRESHOLD && next !== "revealed") {
|
|
23800
|
+
next = "hidden";
|
|
23801
|
+
}
|
|
23802
|
+
return { next, nextAtTop };
|
|
23803
|
+
};
|
|
23553
23804
|
const updateAutoHideState = () => {
|
|
23554
23805
|
const el = spacerRef.current;
|
|
23555
23806
|
if (!el) return;
|
|
23807
|
+
const doc = document.documentElement;
|
|
23808
|
+
const currentScrollHeight = doc.scrollHeight;
|
|
23809
|
+
const scrollHeightChanged = lastScrollHeight.current !== 0 && currentScrollHeight !== lastScrollHeight.current;
|
|
23810
|
+
lastScrollHeight.current = currentScrollHeight;
|
|
23556
23811
|
if (window.scrollY <= 0) {
|
|
23557
23812
|
lastScrollY.current = 0;
|
|
23558
23813
|
commit("static", true);
|
|
23559
23814
|
return;
|
|
23560
23815
|
}
|
|
23561
|
-
const rect = el.getBoundingClientRect();
|
|
23562
23816
|
const currentY = window.scrollY;
|
|
23817
|
+
const rect = el.getBoundingClientRect();
|
|
23818
|
+
const topOffset = getTopOffsetRef.current?.() ?? 0;
|
|
23819
|
+
if (scrollHeightChanged) {
|
|
23820
|
+
lastScrollY.current = currentY;
|
|
23821
|
+
const { next: next2, nextAtTop: nextAtTop2 } = autoHideStateOnLayoutChange(rect, topOffset);
|
|
23822
|
+
commit(next2, nextAtTop2);
|
|
23823
|
+
return;
|
|
23824
|
+
}
|
|
23563
23825
|
const dy = currentY - lastScrollY.current;
|
|
23564
23826
|
lastScrollY.current = currentY;
|
|
23565
|
-
const topOffset = getTopOffsetRef.current?.() ?? 0;
|
|
23566
|
-
const nextAtTop = rect.top >= topOffset;
|
|
23567
|
-
const doc = document.documentElement;
|
|
23568
23827
|
const atBottom = currentY >= doc.scrollHeight - doc.clientHeight;
|
|
23828
|
+
const nextAtTop = rect.top >= topOffset;
|
|
23569
23829
|
let next = stateRef.current;
|
|
23570
23830
|
if (nextAtTop) {
|
|
23571
23831
|
next = "static";
|
|
@@ -23583,36 +23843,36 @@ function useAutoHideOnScroll(spacerRef, enabled, getTopOffset) {
|
|
|
23583
23843
|
}
|
|
23584
23844
|
|
|
23585
23845
|
// src/layouts/useMeasuredHeight.ts
|
|
23586
|
-
var
|
|
23587
|
-
var
|
|
23846
|
+
var import_utils149 = require("@react-aria/utils");
|
|
23847
|
+
var import_react134 = require("react");
|
|
23588
23848
|
function useMeasuredHeight(ref, enabled) {
|
|
23589
|
-
const [height, setHeight] = (0,
|
|
23590
|
-
const syncElementHeight = (0,
|
|
23849
|
+
const [height, setHeight] = (0, import_react134.useState)(0);
|
|
23850
|
+
const syncElementHeight = (0, import_react134.useCallback)(() => {
|
|
23591
23851
|
const el = ref.current;
|
|
23592
23852
|
const next = el ? Math.round(el.getBoundingClientRect().height) : 0;
|
|
23593
23853
|
setHeight((prev) => prev === next ? prev : next);
|
|
23594
23854
|
}, [ref]);
|
|
23595
|
-
(0,
|
|
23596
|
-
(0,
|
|
23855
|
+
(0, import_utils149.useResizeObserver)({ ref, onResize: syncElementHeight });
|
|
23856
|
+
(0, import_react134.useLayoutEffect)(() => {
|
|
23597
23857
|
syncElementHeight();
|
|
23598
23858
|
}, [enabled, syncElementHeight]);
|
|
23599
23859
|
return height;
|
|
23600
23860
|
}
|
|
23601
23861
|
|
|
23602
23862
|
// src/layouts/NavbarLayout/NavbarLayoutHeightContext.tsx
|
|
23603
|
-
var
|
|
23863
|
+
var import_react135 = require("react");
|
|
23604
23864
|
var import_jsx_runtime186 = require("react/jsx-runtime");
|
|
23605
|
-
var NavbarLayoutHeightContext = (0,
|
|
23865
|
+
var NavbarLayoutHeightContext = (0, import_react135.createContext)(0);
|
|
23606
23866
|
function NavbarLayoutHeightProvider({ value, children }) {
|
|
23607
23867
|
return /* @__PURE__ */ (0, import_jsx_runtime186.jsx)(NavbarLayoutHeightContext.Provider, { value, children });
|
|
23608
23868
|
}
|
|
23609
23869
|
function useNavbarLayoutHeight() {
|
|
23610
|
-
return (0,
|
|
23870
|
+
return (0, import_react135.useContext)(NavbarLayoutHeightContext);
|
|
23611
23871
|
}
|
|
23612
23872
|
|
|
23613
23873
|
// src/layouts/NavbarLayout/NavbarLayout.tsx
|
|
23614
23874
|
var import_jsx_runtime187 = require("react/jsx-runtime");
|
|
23615
|
-
var
|
|
23875
|
+
var __maybeInc21 = (inc) => {
|
|
23616
23876
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
23617
23877
|
};
|
|
23618
23878
|
function NavbarLayout(props) {
|
|
@@ -23621,8 +23881,8 @@ function NavbarLayout(props) {
|
|
|
23621
23881
|
children
|
|
23622
23882
|
} = props;
|
|
23623
23883
|
const tid = useTestIds(props, "navbarLayout");
|
|
23624
|
-
const navMetricsRef = (0,
|
|
23625
|
-
const spacerRef = (0,
|
|
23884
|
+
const navMetricsRef = (0, import_react136.useRef)(null);
|
|
23885
|
+
const spacerRef = (0, import_react136.useRef)(null);
|
|
23626
23886
|
const navHeight = useMeasuredHeight(navMetricsRef, true);
|
|
23627
23887
|
const {
|
|
23628
23888
|
state: autoHideState,
|
|
@@ -23643,7 +23903,7 @@ function NavbarLayout(props) {
|
|
|
23643
23903
|
"--zIndex": (0, import_runtime105.maybeCssVar)(zIndices.navbar)
|
|
23644
23904
|
}],
|
|
23645
23905
|
width: ["w_var", {
|
|
23646
|
-
"--width": (0, import_runtime105.maybeCssVar)(
|
|
23906
|
+
"--width": (0, import_runtime105.maybeCssVar)(__maybeInc21(innerWidth))
|
|
23647
23907
|
}]
|
|
23648
23908
|
}
|
|
23649
23909
|
) : (
|
|
@@ -23655,7 +23915,7 @@ function NavbarLayout(props) {
|
|
|
23655
23915
|
"--zIndex": (0, import_runtime105.maybeCssVar)(zIndices.navbar)
|
|
23656
23916
|
}],
|
|
23657
23917
|
width: ["w_var", {
|
|
23658
|
-
"--width": (0, import_runtime105.maybeCssVar)(
|
|
23918
|
+
"--width": (0, import_runtime105.maybeCssVar)(__maybeInc21(innerWidth))
|
|
23659
23919
|
}],
|
|
23660
23920
|
transition: "transitionTop"
|
|
23661
23921
|
}
|
|
@@ -23663,7 +23923,7 @@ function NavbarLayout(props) {
|
|
|
23663
23923
|
const innerStyle = autoHideState !== "static" ? {
|
|
23664
23924
|
top: autoHideState === "revealed" ? 0 : -navHeight
|
|
23665
23925
|
} : void 0;
|
|
23666
|
-
const navbarEl = (0,
|
|
23926
|
+
const navbarEl = (0, import_react136.useMemo)(() => /* @__PURE__ */ (0, import_jsx_runtime187.jsx)(Navbar, { ...navbar }), [navbar]);
|
|
23667
23927
|
return /* @__PURE__ */ (0, import_jsx_runtime187.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime187.jsx)(NavbarLayoutHeightProvider, { value: navbarOffsetPx, children: /* @__PURE__ */ (0, import_jsx_runtime187.jsxs)("div", { ...(0, import_runtime105.mergeProps)(void 0, cssVars, {
|
|
23668
23928
|
display: "df",
|
|
23669
23929
|
flexDirection: "fdc",
|
|
@@ -23681,10 +23941,10 @@ function NavbarLayout(props) {
|
|
|
23681
23941
|
}
|
|
23682
23942
|
|
|
23683
23943
|
// src/layouts/PageHeaderLayout/PageHeaderLayout.tsx
|
|
23684
|
-
var
|
|
23944
|
+
var import_react137 = require("react");
|
|
23685
23945
|
var import_runtime106 = require("@homebound/truss/runtime");
|
|
23686
23946
|
var import_jsx_runtime188 = require("react/jsx-runtime");
|
|
23687
|
-
var
|
|
23947
|
+
var __maybeInc22 = (inc) => {
|
|
23688
23948
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
23689
23949
|
};
|
|
23690
23950
|
function PageHeaderLayout(props) {
|
|
@@ -23694,11 +23954,11 @@ function PageHeaderLayout(props) {
|
|
|
23694
23954
|
} = props;
|
|
23695
23955
|
const tid = useTestIds(props, "pageHeaderLayout");
|
|
23696
23956
|
const navbarHeight = useNavbarLayoutHeight();
|
|
23697
|
-
const navbarHeightRef = (0,
|
|
23957
|
+
const navbarHeightRef = (0, import_react137.useRef)(navbarHeight);
|
|
23698
23958
|
navbarHeightRef.current = navbarHeight;
|
|
23699
|
-
const getNavbarBottom = (0,
|
|
23700
|
-
const headerMetricsRef = (0,
|
|
23701
|
-
const spacerRef = (0,
|
|
23959
|
+
const getNavbarBottom = (0, import_react137.useCallback)(() => navbarHeightRef.current, []);
|
|
23960
|
+
const headerMetricsRef = (0, import_react137.useRef)(null);
|
|
23961
|
+
const spacerRef = (0, import_react137.useRef)(null);
|
|
23702
23962
|
const headerHeight = useMeasuredHeight(headerMetricsRef, true);
|
|
23703
23963
|
const {
|
|
23704
23964
|
state: autoHideState,
|
|
@@ -23708,16 +23968,16 @@ function PageHeaderLayout(props) {
|
|
|
23708
23968
|
const cssVars = headerHeight > 0 && headerOccupiesPosition ? {
|
|
23709
23969
|
[beamPageHeaderLayoutHeightVar]: `${headerHeight}px`
|
|
23710
23970
|
} : void 0;
|
|
23711
|
-
const headerLeft =
|
|
23712
|
-
const headerWidth =
|
|
23971
|
+
const headerLeft = documentScrollChromeLeft();
|
|
23972
|
+
const headerWidth = documentScrollChromeWidth();
|
|
23713
23973
|
const outerTop = `var(${beamNavbarLayoutHeightVar}, 0px)`;
|
|
23714
23974
|
const innerCss = autoHideState === "static" ? {
|
|
23715
23975
|
position: "sticky",
|
|
23716
23976
|
left: ["left_var", {
|
|
23717
|
-
"--left": (0, import_runtime106.maybeCssVar)(
|
|
23977
|
+
"--left": (0, import_runtime106.maybeCssVar)(__maybeInc22(headerLeft))
|
|
23718
23978
|
}],
|
|
23719
23979
|
width: ["w_var", {
|
|
23720
|
-
"--width": (0, import_runtime106.maybeCssVar)(
|
|
23980
|
+
"--width": (0, import_runtime106.maybeCssVar)(__maybeInc22(headerWidth))
|
|
23721
23981
|
}],
|
|
23722
23982
|
zIndex: ["z_var", {
|
|
23723
23983
|
"--zIndex": (0, import_runtime106.maybeCssVar)(zIndices.pageStickyHeader)
|
|
@@ -23725,10 +23985,10 @@ function PageHeaderLayout(props) {
|
|
|
23725
23985
|
} : {
|
|
23726
23986
|
position: "fixed",
|
|
23727
23987
|
left: ["left_var", {
|
|
23728
|
-
"--left": (0, import_runtime106.maybeCssVar)(
|
|
23988
|
+
"--left": (0, import_runtime106.maybeCssVar)(__maybeInc22(headerLeft))
|
|
23729
23989
|
}],
|
|
23730
23990
|
width: ["w_var", {
|
|
23731
|
-
"--width": (0, import_runtime106.maybeCssVar)(
|
|
23991
|
+
"--width": (0, import_runtime106.maybeCssVar)(__maybeInc22(headerWidth))
|
|
23732
23992
|
}],
|
|
23733
23993
|
zIndex: ["z_var", {
|
|
23734
23994
|
"--zIndex": (0, import_runtime106.maybeCssVar)(zIndices.pageStickyHeader)
|
|
@@ -23738,7 +23998,7 @@ function PageHeaderLayout(props) {
|
|
|
23738
23998
|
const innerStyle = autoHideState !== "static" ? {
|
|
23739
23999
|
top: autoHideState === "revealed" ? outerTop : `calc(${outerTop} - ${headerHeight}px)`
|
|
23740
24000
|
} : void 0;
|
|
23741
|
-
const pageHeaderEl = (0,
|
|
24001
|
+
const pageHeaderEl = (0, import_react137.useMemo)(() => /* @__PURE__ */ (0, import_jsx_runtime188.jsx)(PageHeader2, { ...pageHeader }), [pageHeader]);
|
|
23742
24002
|
return /* @__PURE__ */ (0, import_jsx_runtime188.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime188.jsxs)("div", { ...(0, import_runtime106.mergeProps)(void 0, cssVars, {
|
|
23743
24003
|
display: "df",
|
|
23744
24004
|
flexDirection: "fdc",
|
|
@@ -23920,6 +24180,7 @@ function PageHeaderLayout(props) {
|
|
|
23920
24180
|
beamNavbarLayoutHeightVar,
|
|
23921
24181
|
beamPageHeaderLayoutHeightVar,
|
|
23922
24182
|
beamSideNavLayoutWidthVar,
|
|
24183
|
+
beamTableActionsHeightVar,
|
|
23923
24184
|
booleanFilter,
|
|
23924
24185
|
boundCheckboxField,
|
|
23925
24186
|
boundCheckboxGroupField,
|
|
@@ -23938,6 +24199,7 @@ function PageHeaderLayout(props) {
|
|
|
23938
24199
|
boundTextField,
|
|
23939
24200
|
boundToggleChipGroupField,
|
|
23940
24201
|
boundTreeSelectField,
|
|
24202
|
+
calcColumnLayout,
|
|
23941
24203
|
calcColumnSizes,
|
|
23942
24204
|
cardStyle,
|
|
23943
24205
|
checkboxFilter,
|
|
@@ -23958,6 +24220,8 @@ function PageHeaderLayout(props) {
|
|
|
23958
24220
|
defaultRenderFn,
|
|
23959
24221
|
defaultStyle,
|
|
23960
24222
|
defaultTestId,
|
|
24223
|
+
documentScrollChromeLeft,
|
|
24224
|
+
documentScrollChromeWidth,
|
|
23961
24225
|
dragHandleColumn,
|
|
23962
24226
|
emptyCell,
|
|
23963
24227
|
ensureClientSideSortValueIsSortable,
|
|
@@ -24012,6 +24276,7 @@ function PageHeaderLayout(props) {
|
|
|
24012
24276
|
px,
|
|
24013
24277
|
recursivelyGetContainingRow,
|
|
24014
24278
|
reservedRowKinds,
|
|
24279
|
+
resolveTableContentWidth,
|
|
24015
24280
|
resolveTooltip,
|
|
24016
24281
|
rowClickRenderFn,
|
|
24017
24282
|
rowLinkRenderFn,
|
|
@@ -24026,6 +24291,9 @@ function PageHeaderLayout(props) {
|
|
|
24026
24291
|
singleFilter,
|
|
24027
24292
|
sortFn,
|
|
24028
24293
|
sortRows,
|
|
24294
|
+
stickyNavAndHeaderOffset,
|
|
24295
|
+
stickyTableHeaderOffset,
|
|
24296
|
+
sumColumnSizesPx,
|
|
24029
24297
|
switchFocusStyles,
|
|
24030
24298
|
switchHoverStyles,
|
|
24031
24299
|
switchSelectedHoverStyles,
|