@homebound/beam 2.408.1 → 2.409.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 +500 -367
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +31 -1
- package/dist/index.d.ts +31 -1
- package/dist/index.js +428 -296
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -94,6 +94,7 @@ __export(index_exports, {
|
|
|
94
94
|
EditColumnsButton: () => EditColumnsButton,
|
|
95
95
|
ErrorMessage: () => ErrorMessage,
|
|
96
96
|
FieldGroup: () => FieldGroup,
|
|
97
|
+
FilterDropdownMenu: () => _FilterDropdownMenu,
|
|
97
98
|
FilterModal: () => FilterModal,
|
|
98
99
|
Filters: () => _Filters,
|
|
99
100
|
FormDivider: () => FormDivider,
|
|
@@ -6966,7 +6967,7 @@ var variantStyles = (contrast) => ({
|
|
|
6966
6967
|
});
|
|
6967
6968
|
var sizeStyles = {
|
|
6968
6969
|
sm: Css.hPx(32).pxPx(12).$,
|
|
6969
|
-
md: Css.hPx(40).
|
|
6970
|
+
md: Css.hPx(40).px1.$,
|
|
6970
6971
|
lg: Css.hPx(48).px3.$
|
|
6971
6972
|
};
|
|
6972
6973
|
var iconStyles = {
|
|
@@ -14070,8 +14071,8 @@ var variantStyles2 = {
|
|
|
14070
14071
|
};
|
|
14071
14072
|
|
|
14072
14073
|
// src/components/BeamContext.tsx
|
|
14073
|
-
var
|
|
14074
|
-
var
|
|
14074
|
+
var import_react99 = require("react");
|
|
14075
|
+
var import_react_aria45 = require("react-aria");
|
|
14075
14076
|
|
|
14076
14077
|
// src/components/Modal/Modal.tsx
|
|
14077
14078
|
var import_utils71 = require("@react-aria/utils");
|
|
@@ -15976,10 +15977,11 @@ function FullBleed({ children, omitPadding = false }) {
|
|
|
15976
15977
|
}
|
|
15977
15978
|
|
|
15978
15979
|
// src/components/Layout/GridTableLayout/GridTableLayout.tsx
|
|
15979
|
-
var
|
|
15980
|
+
var import_react96 = __toESM(require("react"), 1);
|
|
15980
15981
|
|
|
15981
|
-
// src/components/Filters/
|
|
15982
|
-
var
|
|
15982
|
+
// src/components/Filters/FilterDropdownMenu.tsx
|
|
15983
|
+
var import_react93 = require("react");
|
|
15984
|
+
var import_react_aria44 = require("react-aria");
|
|
15983
15985
|
|
|
15984
15986
|
// src/components/CountBadge.tsx
|
|
15985
15987
|
var import_jsx_runtime125 = require("@emotion/react/jsx-runtime");
|
|
@@ -16447,49 +16449,9 @@ function ModalFilterItem({ label, children }) {
|
|
|
16447
16449
|
] });
|
|
16448
16450
|
}
|
|
16449
16451
|
|
|
16450
|
-
// src/components/Filters/ToggleFilter.tsx
|
|
16451
|
-
var import_jsx_runtime136 = require("@emotion/react/jsx-runtime");
|
|
16452
|
-
function toggleFilter(props) {
|
|
16453
|
-
return (key) => new ToggleFilter(key, {
|
|
16454
|
-
// If the user has set the offValue, that should be the default b/c we're only a two-state
|
|
16455
|
-
defaultValue: props.offValue,
|
|
16456
|
-
...props
|
|
16457
|
-
});
|
|
16458
|
-
}
|
|
16459
|
-
var ToggleFilter = class extends BaseFilter {
|
|
16460
|
-
render(value, setValue, tid, inModal, vertical) {
|
|
16461
|
-
const { defaultValue, onValue = true, offValue = void 0, ...props } = this.props;
|
|
16462
|
-
return /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(
|
|
16463
|
-
Switch,
|
|
16464
|
-
{
|
|
16465
|
-
...props,
|
|
16466
|
-
selected: value === void 0 ? false : value === onValue,
|
|
16467
|
-
label: this.label,
|
|
16468
|
-
labelStyle: inModal || vertical ? "filter" : "inline",
|
|
16469
|
-
onChange: (on) => {
|
|
16470
|
-
setValue(on ? onValue : offValue);
|
|
16471
|
-
},
|
|
16472
|
-
...this.testId(tid)
|
|
16473
|
-
}
|
|
16474
|
-
);
|
|
16475
|
-
}
|
|
16476
|
-
get hideLabelInModal() {
|
|
16477
|
-
return true;
|
|
16478
|
-
}
|
|
16479
|
-
};
|
|
16480
|
-
|
|
16481
|
-
// src/components/Filters/utils.tsx
|
|
16482
|
-
function updateFilter(currentFilter, key, value) {
|
|
16483
|
-
if (value === void 0) {
|
|
16484
|
-
return omitKey(key, currentFilter);
|
|
16485
|
-
} else {
|
|
16486
|
-
return { ...currentFilter, [key]: value };
|
|
16487
|
-
}
|
|
16488
|
-
}
|
|
16489
|
-
var filterTestIdPrefix = "filter";
|
|
16490
|
-
|
|
16491
16452
|
// src/components/Filters/Filters.tsx
|
|
16492
|
-
var
|
|
16453
|
+
var import_react92 = require("react");
|
|
16454
|
+
var import_jsx_runtime136 = require("@emotion/react/jsx-runtime");
|
|
16493
16455
|
function Filters(props) {
|
|
16494
16456
|
const { filter, onChange, filterDefs, groupBy, vertical = false, numberOfInlineFilters = groupBy ? 3 : 4 } = props;
|
|
16495
16457
|
const testId = useTestIds(props, filterTestIdPrefix);
|
|
@@ -16505,7 +16467,7 @@ function Filters(props) {
|
|
|
16505
16467
|
return [Object.fromEntries(impls), {}];
|
|
16506
16468
|
}, [numberOfInlineFilters, vertical, filterDefs]);
|
|
16507
16469
|
const numModalFilters = safeKeys(modalFilters).filter((fk) => filter[fk] !== void 0).length;
|
|
16508
|
-
const maybeGroupByField = groupBy ? /* @__PURE__ */ (0,
|
|
16470
|
+
const maybeGroupByField = groupBy ? /* @__PURE__ */ (0, import_jsx_runtime136.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(
|
|
16509
16471
|
SelectField,
|
|
16510
16472
|
{
|
|
16511
16473
|
label: "Group by",
|
|
@@ -16519,7 +16481,7 @@ function Filters(props) {
|
|
|
16519
16481
|
onSelect: (g) => g && groupBy.setValue(g)
|
|
16520
16482
|
}
|
|
16521
16483
|
) }) : null;
|
|
16522
|
-
return /* @__PURE__ */ (0,
|
|
16484
|
+
return /* @__PURE__ */ (0, import_jsx_runtime136.jsxs)(
|
|
16523
16485
|
"div",
|
|
16524
16486
|
{
|
|
16525
16487
|
css: {
|
|
@@ -16528,33 +16490,202 @@ function Filters(props) {
|
|
|
16528
16490
|
...testId,
|
|
16529
16491
|
children: [
|
|
16530
16492
|
maybeGroupByField,
|
|
16531
|
-
safeEntries(pageFilters).map(([key, f]) => /* @__PURE__ */ (0,
|
|
16532
|
-
Object.keys(modalFilters).length > 0 && /* @__PURE__ */ (0,
|
|
16493
|
+
safeEntries(pageFilters).map(([key, f]) => /* @__PURE__ */ (0, import_jsx_runtime136.jsx)("div", { children: f.render(filter[key], (value) => onChange(updateFilter(filter, key, value)), testId, false, vertical) }, key)),
|
|
16494
|
+
Object.keys(modalFilters).length > 0 && /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(
|
|
16533
16495
|
Button,
|
|
16534
16496
|
{
|
|
16535
16497
|
label: "More Filters",
|
|
16536
|
-
endAdornment: /* @__PURE__ */ (0,
|
|
16498
|
+
endAdornment: /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(CountBadge, { count: numModalFilters, hideIfZero: true }),
|
|
16537
16499
|
variant: "secondary",
|
|
16538
16500
|
onClick: () => openModal({
|
|
16539
16501
|
// Spreading `props` to pass along `data-testid`
|
|
16540
|
-
content: /* @__PURE__ */ (0,
|
|
16502
|
+
content: /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(FilterModal, { ...props, filter, onApply: onChange, filters: modalFilters })
|
|
16541
16503
|
}),
|
|
16542
16504
|
...testId.moreFiltersBtn
|
|
16543
16505
|
}
|
|
16544
16506
|
),
|
|
16545
|
-
Object.keys(filter).length > 0 && /* @__PURE__ */ (0,
|
|
16507
|
+
Object.keys(filter).length > 0 && /* @__PURE__ */ (0, import_jsx_runtime136.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(Button, { label: "Clear", variant: "tertiary", onClick: () => onChange({}), ...testId.clearBtn }) })
|
|
16546
16508
|
]
|
|
16547
16509
|
}
|
|
16548
16510
|
);
|
|
16549
16511
|
}
|
|
16550
16512
|
var _Filters = (0, import_react92.memo)(Filters);
|
|
16551
16513
|
|
|
16552
|
-
// src/components/
|
|
16514
|
+
// src/components/Filters/ToggleFilter.tsx
|
|
16515
|
+
var import_jsx_runtime137 = require("@emotion/react/jsx-runtime");
|
|
16516
|
+
function toggleFilter(props) {
|
|
16517
|
+
return (key) => new ToggleFilter(key, {
|
|
16518
|
+
// If the user has set the offValue, that should be the default b/c we're only a two-state
|
|
16519
|
+
defaultValue: props.offValue,
|
|
16520
|
+
...props
|
|
16521
|
+
});
|
|
16522
|
+
}
|
|
16523
|
+
var ToggleFilter = class extends BaseFilter {
|
|
16524
|
+
render(value, setValue, tid, inModal, vertical) {
|
|
16525
|
+
const { defaultValue, onValue = true, offValue = void 0, ...props } = this.props;
|
|
16526
|
+
return /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
|
|
16527
|
+
Switch,
|
|
16528
|
+
{
|
|
16529
|
+
...props,
|
|
16530
|
+
selected: value === void 0 ? false : value === onValue,
|
|
16531
|
+
label: this.label,
|
|
16532
|
+
labelStyle: inModal || vertical ? "filter" : "inline",
|
|
16533
|
+
onChange: (on) => {
|
|
16534
|
+
setValue(on ? onValue : offValue);
|
|
16535
|
+
},
|
|
16536
|
+
...this.testId(tid)
|
|
16537
|
+
}
|
|
16538
|
+
);
|
|
16539
|
+
}
|
|
16540
|
+
get hideLabelInModal() {
|
|
16541
|
+
return true;
|
|
16542
|
+
}
|
|
16543
|
+
};
|
|
16544
|
+
|
|
16545
|
+
// src/components/Filters/utils.tsx
|
|
16546
|
+
function updateFilter(currentFilter, key, value) {
|
|
16547
|
+
if (value === void 0) {
|
|
16548
|
+
return omitKey(key, currentFilter);
|
|
16549
|
+
} else {
|
|
16550
|
+
return { ...currentFilter, [key]: value };
|
|
16551
|
+
}
|
|
16552
|
+
}
|
|
16553
|
+
var filterTestIdPrefix = "filter";
|
|
16554
|
+
|
|
16555
|
+
// src/components/Filters/FilterDropdownMenu.tsx
|
|
16553
16556
|
var import_jsx_runtime138 = require("@emotion/react/jsx-runtime");
|
|
16557
|
+
function FilterDropdownMenu(props) {
|
|
16558
|
+
const { filter, onChange, filterDefs, groupBy } = props;
|
|
16559
|
+
const testId = useTestIds(props, filterTestIdPrefix);
|
|
16560
|
+
const [isOpen, setIsOpen] = (0, import_react93.useState)(false);
|
|
16561
|
+
const buttonRef = (0, import_react93.useRef)(null);
|
|
16562
|
+
const filterContentRef = (0, import_react93.useRef)(null);
|
|
16563
|
+
const { overlayProps } = (0, import_react_aria44.useOverlay)(
|
|
16564
|
+
{
|
|
16565
|
+
isOpen,
|
|
16566
|
+
onClose: () => setIsOpen(false),
|
|
16567
|
+
isDismissable: true,
|
|
16568
|
+
shouldCloseOnInteractOutside: (element) => {
|
|
16569
|
+
if (buttonRef.current?.contains(element)) return false;
|
|
16570
|
+
return true;
|
|
16571
|
+
}
|
|
16572
|
+
},
|
|
16573
|
+
filterContentRef
|
|
16574
|
+
);
|
|
16575
|
+
const activeFilterCount = (0, import_react93.useMemo)(() => getActiveFilterCount(filter), [filter]);
|
|
16576
|
+
const filterImpls = (0, import_react93.useMemo)(() => buildFilterImpls(filterDefs), [filterDefs]);
|
|
16577
|
+
const renderFilters = () => {
|
|
16578
|
+
const entries = safeEntries(filterImpls);
|
|
16579
|
+
const nonCheckbox = entries.filter(([_, f]) => !f.hideLabelInModal);
|
|
16580
|
+
const checkbox = entries.filter(([_, f]) => f.hideLabelInModal);
|
|
16581
|
+
return [...nonCheckbox, ...checkbox].map(([key, f]) => /* @__PURE__ */ (0, import_jsx_runtime138.jsx)("div", { children: f.render(filter[key], (value) => onChange(updateFilter(filter, key, value)), testId, false, false) }, key));
|
|
16582
|
+
};
|
|
16583
|
+
return /* @__PURE__ */ (0, import_jsx_runtime138.jsxs)(import_jsx_runtime138.Fragment, { children: [
|
|
16584
|
+
/* @__PURE__ */ (0, import_jsx_runtime138.jsx)("div", { ref: buttonRef, children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
|
|
16585
|
+
Button,
|
|
16586
|
+
{
|
|
16587
|
+
label: "Filter",
|
|
16588
|
+
icon: "filter",
|
|
16589
|
+
size: "md",
|
|
16590
|
+
endAdornment: /* @__PURE__ */ (0, import_jsx_runtime138.jsxs)("div", { css: Css.df.aic.gap1.$, children: [
|
|
16591
|
+
activeFilterCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(CountBadge, { count: activeFilterCount }),
|
|
16592
|
+
/* @__PURE__ */ (0, import_jsx_runtime138.jsx)(Icon, { icon: isOpen ? "chevronUp" : "chevronDown" })
|
|
16593
|
+
] }),
|
|
16594
|
+
variant: "secondaryBlack",
|
|
16595
|
+
onClick: () => setIsOpen(!isOpen),
|
|
16596
|
+
...testId.button
|
|
16597
|
+
}
|
|
16598
|
+
) }),
|
|
16599
|
+
isOpen && /* @__PURE__ */ (0, import_jsx_runtime138.jsxs)("div", { ref: filterContentRef, ...overlayProps, css: Css.df.aic.fww.gap1.order(1).$, children: [
|
|
16600
|
+
groupBy && /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
|
|
16601
|
+
SelectField,
|
|
16602
|
+
{
|
|
16603
|
+
label: "Group by",
|
|
16604
|
+
compact: true,
|
|
16605
|
+
labelStyle: "inline",
|
|
16606
|
+
sizeToContent: true,
|
|
16607
|
+
options: groupBy.options,
|
|
16608
|
+
getOptionValue: (o) => o.id,
|
|
16609
|
+
getOptionLabel: (o) => o.name,
|
|
16610
|
+
value: groupBy.value,
|
|
16611
|
+
onSelect: (g) => g && groupBy.setValue(g)
|
|
16612
|
+
}
|
|
16613
|
+
),
|
|
16614
|
+
renderFilters(),
|
|
16615
|
+
activeFilterCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(Button, { label: "Clear", variant: "tertiary", onClick: () => onChange({}), ...testId.clearBtn })
|
|
16616
|
+
] }),
|
|
16617
|
+
!isOpen && /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
|
|
16618
|
+
FilterChips,
|
|
16619
|
+
{
|
|
16620
|
+
filter,
|
|
16621
|
+
filterImpls,
|
|
16622
|
+
onChange,
|
|
16623
|
+
onClear: () => onChange({}),
|
|
16624
|
+
testId
|
|
16625
|
+
}
|
|
16626
|
+
)
|
|
16627
|
+
] });
|
|
16628
|
+
}
|
|
16629
|
+
function FilterChips({
|
|
16630
|
+
filter,
|
|
16631
|
+
filterImpls,
|
|
16632
|
+
onChange,
|
|
16633
|
+
onClear,
|
|
16634
|
+
testId
|
|
16635
|
+
}) {
|
|
16636
|
+
const chips = safeEntries(filterImpls).flatMap(([key]) => {
|
|
16637
|
+
const value = filter[key];
|
|
16638
|
+
if (!isDefined(value)) return [];
|
|
16639
|
+
if (Array.isArray(value)) {
|
|
16640
|
+
return value.map((item) => {
|
|
16641
|
+
const chipKey = `${String(key)}_${item}`;
|
|
16642
|
+
const newArray = value.filter((v) => v !== item);
|
|
16643
|
+
return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
|
|
16644
|
+
ToggleChip,
|
|
16645
|
+
{
|
|
16646
|
+
text: titleCase(String(item)),
|
|
16647
|
+
onClick: () => onChange(updateFilter(filter, key, newArray.length > 0 ? newArray : void 0)),
|
|
16648
|
+
...testId[`chip_${chipKey}`]
|
|
16649
|
+
},
|
|
16650
|
+
chipKey
|
|
16651
|
+
);
|
|
16652
|
+
});
|
|
16653
|
+
}
|
|
16654
|
+
return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
|
|
16655
|
+
ToggleChip,
|
|
16656
|
+
{
|
|
16657
|
+
text: titleCase(String(value)),
|
|
16658
|
+
onClick: () => onChange(updateFilter(filter, key, void 0)),
|
|
16659
|
+
...testId[`chip_${String(key)}`]
|
|
16660
|
+
},
|
|
16661
|
+
String(key)
|
|
16662
|
+
);
|
|
16663
|
+
});
|
|
16664
|
+
if (chips.length === 0) return null;
|
|
16665
|
+
return /* @__PURE__ */ (0, import_jsx_runtime138.jsxs)("div", { css: Css.df.gap1.fww.aic.order(1).$, children: [
|
|
16666
|
+
chips,
|
|
16667
|
+
/* @__PURE__ */ (0, import_jsx_runtime138.jsx)(Button, { label: "Clear", variant: "tertiary", onClick: onClear, ...testId.clearBtn })
|
|
16668
|
+
] });
|
|
16669
|
+
}
|
|
16670
|
+
function buildFilterImpls(filterDefs) {
|
|
16671
|
+
return Object.fromEntries(safeEntries(filterDefs).map(([key, fn]) => [key, fn(key)]));
|
|
16672
|
+
}
|
|
16673
|
+
function titleCase(str) {
|
|
16674
|
+
return str.split(" ").map((word) => word.charAt(0).toUpperCase() + word.slice(1)).join(" ");
|
|
16675
|
+
}
|
|
16676
|
+
function getActiveFilterCount(filter) {
|
|
16677
|
+
return safeKeys(filter).filter((key) => filter[key] !== void 0).length;
|
|
16678
|
+
}
|
|
16679
|
+
var _FilterDropdownMenu = (0, import_react93.memo)(FilterDropdownMenu);
|
|
16680
|
+
|
|
16681
|
+
// src/components/Table/TableActions.tsx
|
|
16682
|
+
var import_jsx_runtime139 = require("@emotion/react/jsx-runtime");
|
|
16554
16683
|
function TableActions(props) {
|
|
16555
|
-
const { xss, children,
|
|
16556
|
-
|
|
16557
|
-
|
|
16684
|
+
const { xss, children, right } = props;
|
|
16685
|
+
return /* @__PURE__ */ (0, import_jsx_runtime139.jsxs)("div", { css: { ...Css.df.gap1.aic.jcsb.aifs.pb2.$, ...xss }, children: [
|
|
16686
|
+
/* @__PURE__ */ (0, import_jsx_runtime139.jsx)("div", { css: Css.df.gap1.aic.fww.$, children }),
|
|
16687
|
+
right
|
|
16688
|
+
] });
|
|
16558
16689
|
}
|
|
16559
16690
|
|
|
16560
16691
|
// src/components/Layout/GridTableLayout/GridTableLayout.tsx
|
|
@@ -16562,21 +16693,21 @@ var import_use_debounce6 = require("use-debounce");
|
|
|
16562
16693
|
var import_use_query_params3 = require("use-query-params");
|
|
16563
16694
|
|
|
16564
16695
|
// src/components/Layout/ScrollableContent.tsx
|
|
16565
|
-
var
|
|
16696
|
+
var import_react94 = require("react");
|
|
16566
16697
|
var import_react_dom4 = require("react-dom");
|
|
16567
|
-
var
|
|
16698
|
+
var import_jsx_runtime140 = require("@emotion/react/jsx-runtime");
|
|
16568
16699
|
function ScrollableContent(props) {
|
|
16569
16700
|
const { children, virtualized = false, omitBottomPadding, bgColor } = props;
|
|
16570
16701
|
const { scrollableEl, setPortalTick, pl, pr } = useScrollableParent();
|
|
16571
|
-
(0,
|
|
16702
|
+
(0, import_react94.useEffect)(() => {
|
|
16572
16703
|
setPortalTick((prev) => prev + 1);
|
|
16573
16704
|
return () => setPortalTick((prev) => prev + 1);
|
|
16574
16705
|
}, [setPortalTick]);
|
|
16575
16706
|
if (!scrollableEl) {
|
|
16576
|
-
return /* @__PURE__ */ (0,
|
|
16707
|
+
return /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(import_jsx_runtime140.Fragment, { children });
|
|
16577
16708
|
}
|
|
16578
16709
|
return (0, import_react_dom4.createPortal)(
|
|
16579
|
-
/* @__PURE__ */ (0,
|
|
16710
|
+
/* @__PURE__ */ (0, import_jsx_runtime140.jsx)(
|
|
16580
16711
|
"div",
|
|
16581
16712
|
{
|
|
16582
16713
|
css: {
|
|
@@ -16592,10 +16723,10 @@ function ScrollableContent(props) {
|
|
|
16592
16723
|
}
|
|
16593
16724
|
|
|
16594
16725
|
// src/components/Layout/GridTableLayout/QueryTable.tsx
|
|
16595
|
-
var
|
|
16726
|
+
var import_react95 = require("react");
|
|
16596
16727
|
|
|
16597
16728
|
// src/components/LoadingSkeleton.tsx
|
|
16598
|
-
var
|
|
16729
|
+
var import_jsx_runtime141 = require("@emotion/react/jsx-runtime");
|
|
16599
16730
|
function LoadingSkeleton({
|
|
16600
16731
|
rows = 1,
|
|
16601
16732
|
columns = 1,
|
|
@@ -16608,7 +16739,7 @@ function LoadingSkeleton({
|
|
|
16608
16739
|
const rowHeight = sizeToPixels2[size];
|
|
16609
16740
|
const rowCells = (rowNumber) => {
|
|
16610
16741
|
const flexGrowForCell = randomizeWidths ? getRandomizedFlexBasisByRowIndex(rowNumber) : 1;
|
|
16611
|
-
return cellArray.map((_, i) => /* @__PURE__ */ (0,
|
|
16742
|
+
return cellArray.map((_, i) => /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(
|
|
16612
16743
|
"div",
|
|
16613
16744
|
{
|
|
16614
16745
|
css: Css.br4.add("animation", "pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite").add("flexGrow", flexGrowForCell).bgGray300.if(contrast).bgGray700.$
|
|
@@ -16616,7 +16747,7 @@ function LoadingSkeleton({
|
|
|
16616
16747
|
`row-${rowNumber}-cell-${i}`
|
|
16617
16748
|
));
|
|
16618
16749
|
};
|
|
16619
|
-
return /* @__PURE__ */ (0,
|
|
16750
|
+
return /* @__PURE__ */ (0, import_jsx_runtime141.jsx)("div", { "aria-label": "Loading", children: rowArray.map((_, i) => /* @__PURE__ */ (0, import_jsx_runtime141.jsx)("div", { css: Css.df.gap1.mb1.hPx(rowHeight).$, children: rowCells(i) }, `row-${i}`)) });
|
|
16620
16751
|
}
|
|
16621
16752
|
function getRandomizedFlexBasisByRowIndex(rowIndex) {
|
|
16622
16753
|
const randomizedFlexBasisValues = [0.65, 0.8, 0.75, 0.9, 0.8, 0.85, 0.8, 0.95];
|
|
@@ -16630,27 +16761,27 @@ var sizeToPixels2 = {
|
|
|
16630
16761
|
};
|
|
16631
16762
|
|
|
16632
16763
|
// src/components/Layout/GridTableLayout/QueryTable.tsx
|
|
16633
|
-
var
|
|
16764
|
+
var import_jsx_runtime142 = require("@emotion/react/jsx-runtime");
|
|
16634
16765
|
function QueryTable(props) {
|
|
16635
16766
|
const { emptyFallback, query, createRows, getPageInfo, columns, keepHeaderWhenLoading, ...others } = props;
|
|
16636
16767
|
const data = query.loading || query.error ? void 0 : query.data;
|
|
16637
|
-
const rows = (0,
|
|
16768
|
+
const rows = (0, import_react95.useMemo)(() => createRows(data), [createRows, data]);
|
|
16638
16769
|
const hasNextPage = data && getPageInfo && getPageInfo(data).hasNextPage;
|
|
16639
16770
|
const infoMessage = hasNextPage ? "Too many rows" : void 0;
|
|
16640
16771
|
const fallbackMessage = query.loading ? "Loading\u2026" : query.error ? `Error: ${query.error.message}` : emptyFallback;
|
|
16641
16772
|
const headers = rows.filter((row) => row.kind === "header");
|
|
16642
|
-
return query.loading ? /* @__PURE__ */ (0,
|
|
16773
|
+
return query.loading ? /* @__PURE__ */ (0, import_jsx_runtime142.jsx)("div", { children: keepHeaderWhenLoading ? /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(GridTable, { ...{ columns, ...others }, rows: headers, fallbackMessage }) : /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(LoadingTable, { columns: columns.length }) }) : /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(GridTable, { ...{ rows, columns, fallbackMessage, infoMessage, ...others } });
|
|
16643
16774
|
}
|
|
16644
16775
|
function LoadingTable(props) {
|
|
16645
16776
|
const { columns } = props;
|
|
16646
|
-
return /* @__PURE__ */ (0,
|
|
16647
|
-
/* @__PURE__ */ (0,
|
|
16648
|
-
/* @__PURE__ */ (0,
|
|
16777
|
+
return /* @__PURE__ */ (0, import_jsx_runtime142.jsxs)(import_jsx_runtime142.Fragment, { children: [
|
|
16778
|
+
/* @__PURE__ */ (0, import_jsx_runtime142.jsx)(LoadingSkeleton, { rows: 1, columns: 1 }),
|
|
16779
|
+
/* @__PURE__ */ (0, import_jsx_runtime142.jsx)(LoadingSkeleton, { rows: 5, columns: columns ?? 5 })
|
|
16649
16780
|
] });
|
|
16650
16781
|
}
|
|
16651
16782
|
|
|
16652
16783
|
// src/components/Layout/GridTableLayout/GridTableLayout.tsx
|
|
16653
|
-
var
|
|
16784
|
+
var import_jsx_runtime143 = require("@emotion/react/jsx-runtime");
|
|
16654
16785
|
function isGridTableProps(props) {
|
|
16655
16786
|
return "rows" in props;
|
|
16656
16787
|
}
|
|
@@ -16667,28 +16798,27 @@ function GridTableLayoutComponent(props) {
|
|
|
16667
16798
|
} = props;
|
|
16668
16799
|
const tid = useTestIds(props);
|
|
16669
16800
|
const columns = tableProps.columns;
|
|
16670
|
-
const hasHideableColumns = (0,
|
|
16801
|
+
const hasHideableColumns = (0, import_react96.useMemo)(() => {
|
|
16671
16802
|
if (hideEditColumns) return false;
|
|
16672
16803
|
validateColumns(columns);
|
|
16673
16804
|
return columns.some((c) => c.canHide);
|
|
16674
16805
|
}, [columns, hideEditColumns]);
|
|
16675
|
-
const api = (0,
|
|
16806
|
+
const api = (0, import_react96.useMemo)(
|
|
16676
16807
|
() => tableProps.api ?? new GridTableApiImpl(),
|
|
16677
16808
|
[tableProps.api]
|
|
16678
16809
|
);
|
|
16679
16810
|
const clientSearch = layoutState?.search === "client" ? layoutState.searchString : void 0;
|
|
16680
16811
|
const showTableActions = layoutState?.filterDefs || layoutState?.search || hasHideableColumns;
|
|
16681
16812
|
const isVirtualized = tableProps.as === "virtual";
|
|
16682
|
-
const breakpoints = useBreakpoint();
|
|
16683
16813
|
const visibleColumnIds = useComputed(() => api.getVisibleColumnIds(), [api]);
|
|
16684
|
-
(0,
|
|
16814
|
+
(0, import_react96.useEffect)(() => {
|
|
16685
16815
|
if (layoutState?.setVisibleColumnIds) {
|
|
16686
16816
|
layoutState.setVisibleColumnIds(visibleColumnIds);
|
|
16687
16817
|
}
|
|
16688
16818
|
}, [visibleColumnIds, layoutState]);
|
|
16689
16819
|
const visibleColumnsStorageKey = layoutState?.persistedColumnsStorageKey;
|
|
16690
|
-
return /* @__PURE__ */ (0,
|
|
16691
|
-
/* @__PURE__ */ (0,
|
|
16820
|
+
return /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)(import_jsx_runtime143.Fragment, { children: [
|
|
16821
|
+
/* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
|
|
16692
16822
|
Header2,
|
|
16693
16823
|
{
|
|
16694
16824
|
pageTitle,
|
|
@@ -16698,32 +16828,34 @@ function GridTableLayoutComponent(props) {
|
|
|
16698
16828
|
tertiaryAction
|
|
16699
16829
|
}
|
|
16700
16830
|
),
|
|
16701
|
-
showTableActions && /* @__PURE__ */ (0,
|
|
16702
|
-
|
|
16703
|
-
|
|
16704
|
-
|
|
16705
|
-
|
|
16831
|
+
showTableActions && /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)(
|
|
16832
|
+
TableActions,
|
|
16833
|
+
{
|
|
16834
|
+
right: hasHideableColumns && /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
|
|
16835
|
+
EditColumnsButton,
|
|
16706
16836
|
{
|
|
16707
|
-
|
|
16708
|
-
|
|
16709
|
-
|
|
16710
|
-
|
|
16711
|
-
|
|
16837
|
+
columns,
|
|
16838
|
+
api,
|
|
16839
|
+
tooltip: "Display columns",
|
|
16840
|
+
trigger: { icon: "kanban", label: "", variant: "secondaryBlack" },
|
|
16841
|
+
...tid.editColumnsButton
|
|
16712
16842
|
}
|
|
16713
|
-
)
|
|
16714
|
-
|
|
16715
|
-
|
|
16716
|
-
|
|
16717
|
-
|
|
16718
|
-
|
|
16719
|
-
|
|
16720
|
-
|
|
16721
|
-
|
|
16722
|
-
|
|
16723
|
-
|
|
16724
|
-
|
|
16725
|
-
|
|
16726
|
-
|
|
16843
|
+
),
|
|
16844
|
+
children: [
|
|
16845
|
+
layoutState?.search && /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(SearchBox, { onSearch: layoutState.setSearchString }),
|
|
16846
|
+
layoutState?.filterDefs && /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
|
|
16847
|
+
_FilterDropdownMenu,
|
|
16848
|
+
{
|
|
16849
|
+
filterDefs: layoutState.filterDefs,
|
|
16850
|
+
filter: layoutState.filter,
|
|
16851
|
+
onChange: layoutState.setFilter,
|
|
16852
|
+
groupBy: layoutState.groupBy
|
|
16853
|
+
}
|
|
16854
|
+
)
|
|
16855
|
+
]
|
|
16856
|
+
}
|
|
16857
|
+
),
|
|
16858
|
+
/* @__PURE__ */ (0, import_jsx_runtime143.jsx)(ScrollableContent, { virtualized: isVirtualized, children: isGridTableProps(tableProps) ? /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
|
|
16727
16859
|
GridTable,
|
|
16728
16860
|
{
|
|
16729
16861
|
...tableProps,
|
|
@@ -16733,7 +16865,7 @@ function GridTableLayoutComponent(props) {
|
|
|
16733
16865
|
stickyHeader: true,
|
|
16734
16866
|
visibleColumnsStorageKey
|
|
16735
16867
|
}
|
|
16736
|
-
) : /* @__PURE__ */ (0,
|
|
16868
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
|
|
16737
16869
|
QueryTable,
|
|
16738
16870
|
{
|
|
16739
16871
|
...tableProps,
|
|
@@ -16746,7 +16878,7 @@ function GridTableLayoutComponent(props) {
|
|
|
16746
16878
|
) })
|
|
16747
16879
|
] });
|
|
16748
16880
|
}
|
|
16749
|
-
var GridTableLayout =
|
|
16881
|
+
var GridTableLayout = import_react96.default.memo(GridTableLayoutComponent);
|
|
16750
16882
|
function validateColumns(columns) {
|
|
16751
16883
|
for (const col of columns) {
|
|
16752
16884
|
if (!col.id || !col.name) {
|
|
@@ -16763,7 +16895,7 @@ function useGridTableLayoutState({
|
|
|
16763
16895
|
const filterFallback = { filterDefs: {}, storageKey: "unset-filter" };
|
|
16764
16896
|
const { filter, setFilter } = usePersistedFilter(persistedFilter ?? filterFallback);
|
|
16765
16897
|
const groupBy = useGroupBy(maybeGroupBy ?? { none: "none" });
|
|
16766
|
-
const [searchString, setSearchString] = (0,
|
|
16898
|
+
const [searchString, setSearchString] = (0, import_react96.useState)("");
|
|
16767
16899
|
const columnsFallback = "unset-columns";
|
|
16768
16900
|
const [visibleColumnIds, setVisibleColumnIds] = useSessionStorage(
|
|
16769
16901
|
persistedColumns?.storageKey ?? columnsFallback,
|
|
@@ -16785,27 +16917,27 @@ function useGridTableLayoutState({
|
|
|
16785
16917
|
function Header2(props) {
|
|
16786
16918
|
const { pageTitle, breadcrumb, primaryAction, secondaryAction, tertiaryAction } = props;
|
|
16787
16919
|
const tids = useTestIds(props);
|
|
16788
|
-
return /* @__PURE__ */ (0,
|
|
16789
|
-
/* @__PURE__ */ (0,
|
|
16790
|
-
breadcrumb && /* @__PURE__ */ (0,
|
|
16791
|
-
/* @__PURE__ */ (0,
|
|
16920
|
+
return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(FullBleed, { children: /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)("header", { css: { ...Css.p3.mb3.mhPx(50).bgWhite.df.jcsb.aic.$ }, ...tids.header, children: [
|
|
16921
|
+
/* @__PURE__ */ (0, import_jsx_runtime143.jsxs)("div", { children: [
|
|
16922
|
+
breadcrumb && /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(PageHeaderBreadcrumbs, { breadcrumb }),
|
|
16923
|
+
/* @__PURE__ */ (0, import_jsx_runtime143.jsx)("h1", { css: Css.xl2.mt1.$, ...tids.pageTitle, children: pageTitle })
|
|
16792
16924
|
] }),
|
|
16793
|
-
/* @__PURE__ */ (0,
|
|
16794
|
-
tertiaryAction && /* @__PURE__ */ (0,
|
|
16795
|
-
secondaryAction && /* @__PURE__ */ (0,
|
|
16796
|
-
primaryAction && /* @__PURE__ */ (0,
|
|
16925
|
+
/* @__PURE__ */ (0, import_jsx_runtime143.jsxs)("div", { css: Css.df.fwr.jcfe.gap1.$, children: [
|
|
16926
|
+
tertiaryAction && /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(Button, { ...tertiaryAction, variant: "tertiary" }),
|
|
16927
|
+
secondaryAction && /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(Button, { ...secondaryAction, variant: "secondary" }),
|
|
16928
|
+
primaryAction && /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(Button, { ...primaryAction })
|
|
16797
16929
|
] })
|
|
16798
16930
|
] }) });
|
|
16799
16931
|
}
|
|
16800
16932
|
function SearchBox({ onSearch }) {
|
|
16801
16933
|
const [{ search: initialValue }, setQueryParams] = (0, import_use_query_params3.useQueryParams)({ search: import_use_query_params3.StringParam });
|
|
16802
|
-
const [value, setValue] = (0,
|
|
16934
|
+
const [value, setValue] = (0, import_react96.useState)(initialValue || "");
|
|
16803
16935
|
const [debouncedSearch] = (0, import_use_debounce6.useDebounce)(value, 300);
|
|
16804
|
-
(0,
|
|
16936
|
+
(0, import_react96.useEffect)(() => {
|
|
16805
16937
|
onSearch(debouncedSearch);
|
|
16806
16938
|
setQueryParams({ search: debouncedSearch || void 0 }, "replaceIn");
|
|
16807
16939
|
}, [debouncedSearch, onSearch, setQueryParams]);
|
|
16808
|
-
return /* @__PURE__ */ (0,
|
|
16940
|
+
return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { css: Css.wPx(244).$, children: /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
|
|
16809
16941
|
TextField,
|
|
16810
16942
|
{
|
|
16811
16943
|
label: "Search",
|
|
@@ -16814,26 +16946,26 @@ function SearchBox({ onSearch }) {
|
|
|
16814
16946
|
onChange: (v) => setValue(v ?? ""),
|
|
16815
16947
|
placeholder: "Search",
|
|
16816
16948
|
clearable: true,
|
|
16817
|
-
startAdornment: /* @__PURE__ */ (0,
|
|
16949
|
+
startAdornment: /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(Icon, { icon: "search", color: "rgba(100, 100, 100, 1)" /* Gray700 */ })
|
|
16818
16950
|
}
|
|
16819
16951
|
) });
|
|
16820
16952
|
}
|
|
16821
16953
|
|
|
16822
16954
|
// src/components/Layout/PreventBrowserScroll.tsx
|
|
16823
|
-
var
|
|
16955
|
+
var import_jsx_runtime144 = require("@emotion/react/jsx-runtime");
|
|
16824
16956
|
function PreventBrowserScroll({ children }) {
|
|
16825
16957
|
return (
|
|
16826
16958
|
// Take over the full viewport and hide any overflown content.
|
|
16827
16959
|
// Using `-webkit-fill-available`, otherwise `height: 100vh` includes the app bars in mobile Safari. See https://allthingssmitty.com/2020/05/11/css-fix-for-100vh-in-mobile-webkit/
|
|
16828
16960
|
// Setting the multiple "(min|max-)height" properties is necessary, as Truss will turn this into an object and there can only be one `height` property.
|
|
16829
|
-
/* @__PURE__ */ (0,
|
|
16961
|
+
/* @__PURE__ */ (0, import_jsx_runtime144.jsx)("div", { css: Css.oh.vh100.mh("-webkit-fill-available").maxh("-webkit-fill-available").$, children: /* @__PURE__ */ (0, import_jsx_runtime144.jsx)("div", { css: Css.h100.df.fdc.mh0.oa.$, children }) })
|
|
16830
16962
|
);
|
|
16831
16963
|
}
|
|
16832
16964
|
|
|
16833
16965
|
// src/components/Layout/RightPaneLayout/RightPaneContext.tsx
|
|
16834
|
-
var
|
|
16835
|
-
var
|
|
16836
|
-
var RightPaneContext =
|
|
16966
|
+
var import_react97 = __toESM(require("react"), 1);
|
|
16967
|
+
var import_jsx_runtime145 = require("@emotion/react/jsx-runtime");
|
|
16968
|
+
var RightPaneContext = import_react97.default.createContext({
|
|
16837
16969
|
openInPane: () => {
|
|
16838
16970
|
},
|
|
16839
16971
|
closePane: () => {
|
|
@@ -16844,37 +16976,37 @@ var RightPaneContext = import_react96.default.createContext({
|
|
|
16844
16976
|
rightPaneContent: null
|
|
16845
16977
|
});
|
|
16846
16978
|
function RightPaneProvider({ children }) {
|
|
16847
|
-
const [rightPaneContent, setRightPaneContent] = (0,
|
|
16848
|
-
const [isRightPaneOpen, setIsRightPaneOpen] = (0,
|
|
16849
|
-
const openInPane = (0,
|
|
16979
|
+
const [rightPaneContent, setRightPaneContent] = (0, import_react97.useState)(void 0);
|
|
16980
|
+
const [isRightPaneOpen, setIsRightPaneOpen] = (0, import_react97.useState)(false);
|
|
16981
|
+
const openInPane = (0, import_react97.useCallback)(
|
|
16850
16982
|
(opts) => {
|
|
16851
16983
|
setRightPaneContent(opts?.content);
|
|
16852
16984
|
setIsRightPaneOpen(true);
|
|
16853
16985
|
},
|
|
16854
16986
|
[setRightPaneContent]
|
|
16855
16987
|
);
|
|
16856
|
-
const closePane = (0,
|
|
16857
|
-
const clearPane = (0,
|
|
16858
|
-
const context = (0,
|
|
16988
|
+
const closePane = (0, import_react97.useCallback)(() => setIsRightPaneOpen(false), []);
|
|
16989
|
+
const clearPane = (0, import_react97.useCallback)(() => setRightPaneContent(void 0), [setRightPaneContent]);
|
|
16990
|
+
const context = (0, import_react97.useMemo)(
|
|
16859
16991
|
() => ({ openInPane, closePane, clearPane, rightPaneContent, isRightPaneOpen }),
|
|
16860
16992
|
[openInPane, closePane, rightPaneContent, clearPane, isRightPaneOpen]
|
|
16861
16993
|
);
|
|
16862
|
-
return /* @__PURE__ */ (0,
|
|
16994
|
+
return /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(RightPaneContext.Provider, { value: context, children });
|
|
16863
16995
|
}
|
|
16864
16996
|
function useRightPaneContext() {
|
|
16865
|
-
return (0,
|
|
16997
|
+
return (0, import_react97.useContext)(RightPaneContext);
|
|
16866
16998
|
}
|
|
16867
16999
|
|
|
16868
17000
|
// src/components/Layout/RightPaneLayout/RightPaneLayout.tsx
|
|
16869
17001
|
var import_framer_motion3 = require("framer-motion");
|
|
16870
|
-
var
|
|
16871
|
-
var
|
|
17002
|
+
var import_react98 = require("react");
|
|
17003
|
+
var import_jsx_runtime146 = require("@emotion/react/jsx-runtime");
|
|
16872
17004
|
function RightPaneLayout(props) {
|
|
16873
17005
|
const { children, paneBgColor = "rgba(255,255,255,1)" /* White */, paneWidth = 450, defaultPaneContent } = props;
|
|
16874
17006
|
const { isRightPaneOpen, rightPaneContent, clearPane, closePane } = useRightPaneContext();
|
|
16875
|
-
(0,
|
|
16876
|
-
return /* @__PURE__ */ (0,
|
|
16877
|
-
/* @__PURE__ */ (0,
|
|
17007
|
+
(0, import_react98.useEffect)(() => closePane, [closePane]);
|
|
17008
|
+
return /* @__PURE__ */ (0, import_jsx_runtime146.jsx)("div", { css: Css.h100.df.oxh.$, children: /* @__PURE__ */ (0, import_jsx_runtime146.jsxs)(import_jsx_runtime146.Fragment, { children: [
|
|
17009
|
+
/* @__PURE__ */ (0, import_jsx_runtime146.jsx)(
|
|
16878
17010
|
"div",
|
|
16879
17011
|
{
|
|
16880
17012
|
css: {
|
|
@@ -16885,15 +17017,15 @@ function RightPaneLayout(props) {
|
|
|
16885
17017
|
children
|
|
16886
17018
|
}
|
|
16887
17019
|
),
|
|
16888
|
-
/* @__PURE__ */ (0,
|
|
16889
|
-
defaultPaneContent && /* @__PURE__ */ (0,
|
|
17020
|
+
/* @__PURE__ */ (0, import_jsx_runtime146.jsxs)("div", { css: Css.relative.if(!!defaultPaneContent).wPx(paneWidth).$, children: [
|
|
17021
|
+
defaultPaneContent && /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(
|
|
16890
17022
|
"div",
|
|
16891
17023
|
{
|
|
16892
17024
|
css: Css.h100.wPx(paneWidth).left(0).absolute.add("transition", "all .3s ease-in-out").if(isRightPaneOpen).add("opacity", 0).left(100).$,
|
|
16893
17025
|
children: defaultPaneContent
|
|
16894
17026
|
}
|
|
16895
17027
|
),
|
|
16896
|
-
/* @__PURE__ */ (0,
|
|
17028
|
+
/* @__PURE__ */ (0, import_jsx_runtime146.jsx)(import_framer_motion3.AnimatePresence, { children: isRightPaneOpen && /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(
|
|
16897
17029
|
import_framer_motion3.motion.div,
|
|
16898
17030
|
{
|
|
16899
17031
|
layout: "position",
|
|
@@ -16922,8 +17054,8 @@ function useRightPane() {
|
|
|
16922
17054
|
}
|
|
16923
17055
|
|
|
16924
17056
|
// src/components/BeamContext.tsx
|
|
16925
|
-
var
|
|
16926
|
-
var BeamContext = (0,
|
|
17057
|
+
var import_jsx_runtime147 = require("@emotion/react/jsx-runtime");
|
|
17058
|
+
var BeamContext = (0, import_react99.createContext)({
|
|
16927
17059
|
modalState: new EmptyRef(),
|
|
16928
17060
|
modalCanCloseChecks: new EmptyRef(),
|
|
16929
17061
|
modalHeaderDiv: void 0,
|
|
@@ -16935,21 +17067,21 @@ var BeamContext = (0, import_react98.createContext)({
|
|
|
16935
17067
|
sdHeaderDiv: void 0
|
|
16936
17068
|
});
|
|
16937
17069
|
function BeamProvider({ children, ...presentationProps }) {
|
|
16938
|
-
const [, tick] = (0,
|
|
16939
|
-
const modalRef = (0,
|
|
16940
|
-
const modalHeaderDiv = (0,
|
|
16941
|
-
const modalBodyDiv = (0,
|
|
17070
|
+
const [, tick] = (0, import_react99.useReducer)((prev) => prev + 1, 0);
|
|
17071
|
+
const modalRef = (0, import_react99.useRef)();
|
|
17072
|
+
const modalHeaderDiv = (0, import_react99.useMemo)(() => document.createElement("div"), []);
|
|
17073
|
+
const modalBodyDiv = (0, import_react99.useMemo)(() => {
|
|
16942
17074
|
const el = document.createElement("div");
|
|
16943
17075
|
el.style.height = "100%";
|
|
16944
17076
|
return el;
|
|
16945
17077
|
}, []);
|
|
16946
|
-
const modalCanCloseChecksRef = (0,
|
|
16947
|
-
const modalFooterDiv = (0,
|
|
16948
|
-
const drawerContentStackRef = (0,
|
|
16949
|
-
const drawerCanCloseChecks = (0,
|
|
16950
|
-
const drawerCanCloseDetailsChecks = (0,
|
|
16951
|
-
const sdHeaderDiv = (0,
|
|
16952
|
-
const context = (0,
|
|
17078
|
+
const modalCanCloseChecksRef = (0, import_react99.useRef)([]);
|
|
17079
|
+
const modalFooterDiv = (0, import_react99.useMemo)(() => document.createElement("div"), []);
|
|
17080
|
+
const drawerContentStackRef = (0, import_react99.useRef)([]);
|
|
17081
|
+
const drawerCanCloseChecks = (0, import_react99.useRef)([]);
|
|
17082
|
+
const drawerCanCloseDetailsChecks = (0, import_react99.useRef)([]);
|
|
17083
|
+
const sdHeaderDiv = (0, import_react99.useMemo)(() => document.createElement("div"), []);
|
|
17084
|
+
const context = (0, import_react99.useMemo)(() => {
|
|
16953
17085
|
return {
|
|
16954
17086
|
// These two keys need to trigger re-renders on change
|
|
16955
17087
|
modalState: new PretendRefThatTicks(modalRef, tick),
|
|
@@ -16964,12 +17096,12 @@ function BeamProvider({ children, ...presentationProps }) {
|
|
|
16964
17096
|
sdHeaderDiv
|
|
16965
17097
|
};
|
|
16966
17098
|
}, [modalBodyDiv, modalFooterDiv, modalHeaderDiv, sdHeaderDiv]);
|
|
16967
|
-
return /* @__PURE__ */ (0,
|
|
16968
|
-
/* @__PURE__ */ (0,
|
|
17099
|
+
return /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(BeamContext.Provider, { value: { ...context }, children: /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(PresentationProvider, { ...presentationProps, children: /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(RightPaneProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(AutoSaveStatusProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(SnackbarProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime147.jsxs)(ToastProvider, { children: [
|
|
17100
|
+
/* @__PURE__ */ (0, import_jsx_runtime147.jsxs)(import_react_aria45.OverlayProvider, { children: [
|
|
16969
17101
|
children,
|
|
16970
|
-
modalRef.current && /* @__PURE__ */ (0,
|
|
17102
|
+
modalRef.current && /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(Modal, { ...modalRef.current })
|
|
16971
17103
|
] }),
|
|
16972
|
-
/* @__PURE__ */ (0,
|
|
17104
|
+
/* @__PURE__ */ (0, import_jsx_runtime147.jsx)(SuperDrawer, {})
|
|
16973
17105
|
] }) }) }) }) }) });
|
|
16974
17106
|
}
|
|
16975
17107
|
var PretendRefThatTicks = class {
|
|
@@ -16986,24 +17118,24 @@ var PretendRefThatTicks = class {
|
|
|
16986
17118
|
}
|
|
16987
17119
|
};
|
|
16988
17120
|
function useBeamContext() {
|
|
16989
|
-
return (0,
|
|
17121
|
+
return (0, import_react99.useContext)(BeamContext);
|
|
16990
17122
|
}
|
|
16991
17123
|
|
|
16992
17124
|
// src/components/ButtonDatePicker.tsx
|
|
16993
|
-
var
|
|
16994
|
-
var
|
|
17125
|
+
var import_react100 = require("react");
|
|
17126
|
+
var import_react_aria46 = require("react-aria");
|
|
16995
17127
|
var import_react_stately17 = require("react-stately");
|
|
16996
|
-
var
|
|
17128
|
+
var import_jsx_runtime148 = require("@emotion/react/jsx-runtime");
|
|
16997
17129
|
function ButtonDatePicker(props) {
|
|
16998
17130
|
const { defaultOpen, disabled, trigger, onSelect, ...datePickerProps } = props;
|
|
16999
17131
|
const state = (0, import_react_stately17.useMenuTriggerState)({ isOpen: defaultOpen });
|
|
17000
|
-
const buttonRef = (0,
|
|
17001
|
-
const { menuTriggerProps, menuProps } = (0,
|
|
17132
|
+
const buttonRef = (0, import_react100.useRef)(null);
|
|
17133
|
+
const { menuTriggerProps, menuProps } = (0, import_react_aria46.useMenuTrigger)({ isDisabled: !!disabled }, state, buttonRef);
|
|
17002
17134
|
const tid = useTestIds(
|
|
17003
17135
|
props,
|
|
17004
17136
|
isTextButton(trigger) ? defaultTestId(labelOr(trigger, "buttonDatePicker")) : isNavLinkButton(trigger) ? defaultTestId(trigger.navLabel) : isIconButton(trigger) ? trigger.icon : trigger.name
|
|
17005
17137
|
);
|
|
17006
|
-
return /* @__PURE__ */ (0,
|
|
17138
|
+
return /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(OverlayTrigger, { ...props, menuTriggerProps, state, buttonRef, ...tid, children: /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(DatePickerOverlay, { overlayProps: menuProps, children: /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(
|
|
17007
17139
|
DatePicker,
|
|
17008
17140
|
{
|
|
17009
17141
|
...datePickerProps,
|
|
@@ -17017,9 +17149,9 @@ function ButtonDatePicker(props) {
|
|
|
17017
17149
|
}
|
|
17018
17150
|
|
|
17019
17151
|
// src/components/ButtonGroup.tsx
|
|
17020
|
-
var
|
|
17021
|
-
var
|
|
17022
|
-
var
|
|
17152
|
+
var import_react101 = require("react");
|
|
17153
|
+
var import_react_aria47 = require("react-aria");
|
|
17154
|
+
var import_jsx_runtime149 = (
|
|
17023
17155
|
// Disable the button if the ButtonGroup is disabled or if the current button is disabled.
|
|
17024
17156
|
require("@emotion/react/jsx-runtime")
|
|
17025
17157
|
);
|
|
@@ -17028,21 +17160,21 @@ function ButtonGroup(props) {
|
|
|
17028
17160
|
const tid = useTestIds(props, "buttonGroup");
|
|
17029
17161
|
return (
|
|
17030
17162
|
// Adding `line-height: 0` prevent inheriting line-heights that might throw off sizing within the button group.
|
|
17031
|
-
/* @__PURE__ */ (0,
|
|
17163
|
+
/* @__PURE__ */ (0, import_jsx_runtime149.jsx)("div", { ...tid, css: Css.df.lh(0).add({ ...sizeStyles2[size] }).$, children: buttons.map(({ disabled: buttonDisabled, ...buttonProps }, i) => /* @__PURE__ */ (0, import_jsx_runtime149.jsx)(GroupButton, { ...buttonProps, disabled: disabled || buttonDisabled, size, ...tid }, i)) })
|
|
17032
17164
|
);
|
|
17033
17165
|
}
|
|
17034
17166
|
function GroupButton(props) {
|
|
17035
17167
|
const { icon, iconInc, iconColor, text, active, onClick: onPress, disabled, size, tooltip, ...otherProps } = props;
|
|
17036
17168
|
const ariaProps = { onPress, isDisabled: !!disabled, ...otherProps };
|
|
17037
|
-
const ref = (0,
|
|
17038
|
-
const { buttonProps, isPressed } = (0,
|
|
17039
|
-
const { isFocusVisible, focusProps } = (0,
|
|
17040
|
-
const { hoverProps, isHovered } = (0,
|
|
17169
|
+
const ref = (0, import_react101.useRef)(null);
|
|
17170
|
+
const { buttonProps, isPressed } = (0, import_react_aria47.useButton)(ariaProps, ref);
|
|
17171
|
+
const { isFocusVisible, focusProps } = (0, import_react_aria47.useFocusRing)();
|
|
17172
|
+
const { hoverProps, isHovered } = (0, import_react_aria47.useHover)(ariaProps);
|
|
17041
17173
|
const tid = useTestIds(props);
|
|
17042
|
-
return /* @__PURE__ */ (0,
|
|
17174
|
+
return /* @__PURE__ */ (0, import_jsx_runtime149.jsx)("span", { css: getButtonStyles2(), children: maybeTooltip({
|
|
17043
17175
|
title: resolveTooltip(disabled, tooltip),
|
|
17044
17176
|
placement: "top",
|
|
17045
|
-
children: /* @__PURE__ */ (0,
|
|
17177
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime149.jsxs)(
|
|
17046
17178
|
"button",
|
|
17047
17179
|
{
|
|
17048
17180
|
ref,
|
|
@@ -17059,7 +17191,7 @@ function GroupButton(props) {
|
|
|
17059
17191
|
},
|
|
17060
17192
|
...tid[defaultTestId(typeof text === "string" && text || icon || "button")],
|
|
17061
17193
|
children: [
|
|
17062
|
-
icon && /* @__PURE__ */ (0,
|
|
17194
|
+
icon && /* @__PURE__ */ (0, import_jsx_runtime149.jsx)(Icon, { xss: Css.if(!!text).mrPx(4).$, icon, color: disabled ? void 0 : iconColor, inc: iconInc }),
|
|
17063
17195
|
text
|
|
17064
17196
|
]
|
|
17065
17197
|
}
|
|
@@ -17093,10 +17225,10 @@ var iconStyles2 = {
|
|
|
17093
17225
|
};
|
|
17094
17226
|
|
|
17095
17227
|
// src/components/ButtonMenu.tsx
|
|
17096
|
-
var
|
|
17097
|
-
var
|
|
17228
|
+
var import_react102 = require("react");
|
|
17229
|
+
var import_react_aria48 = require("react-aria");
|
|
17098
17230
|
var import_react_stately18 = require("react-stately");
|
|
17099
|
-
var
|
|
17231
|
+
var import_jsx_runtime150 = require("@emotion/react/jsx-runtime");
|
|
17100
17232
|
function ButtonMenu(props) {
|
|
17101
17233
|
const { defaultOpen, disabled, items, persistentItems, trigger, searchable, contrast = false } = props;
|
|
17102
17234
|
let selectedItem, onChange;
|
|
@@ -17105,13 +17237,13 @@ function ButtonMenu(props) {
|
|
|
17105
17237
|
onChange = props.onChange;
|
|
17106
17238
|
}
|
|
17107
17239
|
const state = (0, import_react_stately18.useMenuTriggerState)({ isOpen: defaultOpen });
|
|
17108
|
-
const buttonRef = (0,
|
|
17109
|
-
const { menuTriggerProps, menuProps } = (0,
|
|
17240
|
+
const buttonRef = (0, import_react102.useRef)(null);
|
|
17241
|
+
const { menuTriggerProps, menuProps } = (0, import_react_aria48.useMenuTrigger)({ isDisabled: !!disabled }, state, buttonRef);
|
|
17110
17242
|
const tid = useTestIds(
|
|
17111
17243
|
props,
|
|
17112
17244
|
isTextButton(trigger) ? labelOr(trigger, "buttonMenu") : isNavLinkButton(trigger) ? defaultTestId(trigger.navLabel) : isIconButton(trigger) ? trigger.icon : trigger.name
|
|
17113
17245
|
);
|
|
17114
|
-
return /* @__PURE__ */ (0,
|
|
17246
|
+
return /* @__PURE__ */ (0, import_jsx_runtime150.jsx)(
|
|
17115
17247
|
OverlayTrigger,
|
|
17116
17248
|
{
|
|
17117
17249
|
...props,
|
|
@@ -17120,7 +17252,7 @@ function ButtonMenu(props) {
|
|
|
17120
17252
|
buttonRef,
|
|
17121
17253
|
...tid,
|
|
17122
17254
|
contrast,
|
|
17123
|
-
children: /* @__PURE__ */ (0,
|
|
17255
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime150.jsx)(
|
|
17124
17256
|
Menu,
|
|
17125
17257
|
{
|
|
17126
17258
|
ariaMenuProps: menuProps,
|
|
@@ -17142,20 +17274,20 @@ function isSelectionButtonMenuProps(props) {
|
|
|
17142
17274
|
}
|
|
17143
17275
|
|
|
17144
17276
|
// src/components/Card.tsx
|
|
17145
|
-
var
|
|
17146
|
-
var
|
|
17277
|
+
var import_react104 = require("react");
|
|
17278
|
+
var import_react_aria49 = require("react-aria");
|
|
17147
17279
|
|
|
17148
17280
|
// src/components/Tag.tsx
|
|
17149
|
-
var
|
|
17150
|
-
var
|
|
17151
|
-
var
|
|
17281
|
+
var import_utils114 = require("@react-aria/utils");
|
|
17282
|
+
var import_react103 = require("react");
|
|
17283
|
+
var import_jsx_runtime151 = require("@emotion/react/jsx-runtime");
|
|
17152
17284
|
function Tag(props) {
|
|
17153
17285
|
const { text, type, xss, preventTooltip = false, ...otherProps } = props;
|
|
17154
17286
|
const typeStyles2 = getStyles(type);
|
|
17155
17287
|
const tid = useTestIds(otherProps);
|
|
17156
|
-
const [showTooltip, setShowTooltip] = (0,
|
|
17157
|
-
const ref = (0,
|
|
17158
|
-
(0,
|
|
17288
|
+
const [showTooltip, setShowTooltip] = (0, import_react103.useState)(false);
|
|
17289
|
+
const ref = (0, import_react103.useRef)(null);
|
|
17290
|
+
(0, import_utils114.useResizeObserver)({
|
|
17159
17291
|
ref,
|
|
17160
17292
|
onResize: () => {
|
|
17161
17293
|
if (ref.current) {
|
|
@@ -17165,9 +17297,9 @@ function Tag(props) {
|
|
|
17165
17297
|
});
|
|
17166
17298
|
return maybeTooltip({
|
|
17167
17299
|
title: !preventTooltip && showTooltip ? text : void 0,
|
|
17168
|
-
children: /* @__PURE__ */ (0,
|
|
17169
|
-
otherProps.icon && /* @__PURE__ */ (0,
|
|
17170
|
-
/* @__PURE__ */ (0,
|
|
17300
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime151.jsxs)("span", { ...tid, css: { ...Css.dif.xs2Sb.ttu.aic.gapPx(4).pxPx(6).pyPx(2).gray900.br4.$, ...typeStyles2, ...xss }, children: [
|
|
17301
|
+
otherProps.icon && /* @__PURE__ */ (0, import_jsx_runtime151.jsx)("span", { css: Css.fs0.$, children: /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(Icon, { icon: otherProps.icon, inc: 1.5 }) }),
|
|
17302
|
+
/* @__PURE__ */ (0, import_jsx_runtime151.jsx)("span", { ref, css: Css.lineClamp1.wbba.$, children: text })
|
|
17171
17303
|
] })
|
|
17172
17304
|
});
|
|
17173
17305
|
}
|
|
@@ -17187,7 +17319,7 @@ function getStyles(type) {
|
|
|
17187
17319
|
}
|
|
17188
17320
|
|
|
17189
17321
|
// src/components/Card.tsx
|
|
17190
|
-
var
|
|
17322
|
+
var import_jsx_runtime152 = require("@emotion/react/jsx-runtime");
|
|
17191
17323
|
function Card(props) {
|
|
17192
17324
|
const {
|
|
17193
17325
|
title,
|
|
@@ -17202,10 +17334,10 @@ function Card(props) {
|
|
|
17202
17334
|
tag
|
|
17203
17335
|
} = props;
|
|
17204
17336
|
const tid = useTestIds(props, "card");
|
|
17205
|
-
const { hoverProps, isHovered } = (0,
|
|
17337
|
+
const { hoverProps, isHovered } = (0, import_react_aria49.useHover)({ isDisabled });
|
|
17206
17338
|
const isList = type === "list";
|
|
17207
17339
|
const imgHeight = isList ? 96 : bordered ? 224 : 256;
|
|
17208
|
-
const styles = (0,
|
|
17340
|
+
const styles = (0, import_react104.useMemo)(
|
|
17209
17341
|
() => ({
|
|
17210
17342
|
...baseStyles4(type),
|
|
17211
17343
|
...isList && listStyles,
|
|
@@ -17215,31 +17347,31 @@ function Card(props) {
|
|
|
17215
17347
|
}),
|
|
17216
17348
|
[isDisabled, isHovered, bordered, type, isList]
|
|
17217
17349
|
);
|
|
17218
|
-
return /* @__PURE__ */ (0,
|
|
17219
|
-
/* @__PURE__ */ (0,
|
|
17350
|
+
return /* @__PURE__ */ (0, import_jsx_runtime152.jsxs)("div", { css: styles, ...hoverProps, ...tid, children: [
|
|
17351
|
+
/* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
|
|
17220
17352
|
"div",
|
|
17221
17353
|
{
|
|
17222
17354
|
css: {
|
|
17223
17355
|
...Css.hPx(imgHeight).ba.br8.bcGray300.oh.df.asc.jsc.relative.add("filter", "brightness(1)").$,
|
|
17224
17356
|
...isHovered && !isList && imageHoverStyles
|
|
17225
17357
|
},
|
|
17226
|
-
children: /* @__PURE__ */ (0,
|
|
17358
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime152.jsx)("img", { css: Css.w100.h100.objectFit(imageFit).$, src: imgSrc, alt: title, ...tid.img })
|
|
17227
17359
|
}
|
|
17228
17360
|
),
|
|
17229
|
-
isHovered && buttonMenuItems && /* @__PURE__ */ (0,
|
|
17361
|
+
isHovered && buttonMenuItems && /* @__PURE__ */ (0, import_jsx_runtime152.jsx)("div", { css: Css.absolute.right1.top1.if(bordered && !isList).right3.top3.$, children: /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
|
|
17230
17362
|
ButtonMenu,
|
|
17231
17363
|
{
|
|
17232
17364
|
trigger: { icon: "verticalDots", color: isList ? "rgba(100, 100, 100, 1)" /* Gray700 */ : "rgba(255,255,255,1)" /* White */ },
|
|
17233
17365
|
items: buttonMenuItems
|
|
17234
17366
|
}
|
|
17235
17367
|
) }),
|
|
17236
|
-
tag && /* @__PURE__ */ (0,
|
|
17237
|
-
/* @__PURE__ */ (0,
|
|
17238
|
-
/* @__PURE__ */ (0,
|
|
17239
|
-
/* @__PURE__ */ (0,
|
|
17240
|
-
/* @__PURE__ */ (0,
|
|
17368
|
+
tag && /* @__PURE__ */ (0, import_jsx_runtime152.jsx)("div", { css: Css.absolute.left1.topPx(4).$, children: /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(Tag, { type: tag?.type, text: tag?.text, ...tid.tag }) }),
|
|
17369
|
+
/* @__PURE__ */ (0, import_jsx_runtime152.jsxs)("div", { css: Css.df.fdc.aifs.gap1.$, children: [
|
|
17370
|
+
/* @__PURE__ */ (0, import_jsx_runtime152.jsxs)("div", { children: [
|
|
17371
|
+
/* @__PURE__ */ (0, import_jsx_runtime152.jsx)("div", { css: Css.xsSb.gray700.$, ...tid.subtitle, children: subtitle }),
|
|
17372
|
+
/* @__PURE__ */ (0, import_jsx_runtime152.jsx)("div", { css: Css.smSb.gray900.if(isHovered).blue700.$, ...tid.title, children: title })
|
|
17241
17373
|
] }),
|
|
17242
|
-
/* @__PURE__ */ (0,
|
|
17374
|
+
/* @__PURE__ */ (0, import_jsx_runtime152.jsx)("div", { ...tid.details, children: detailContent })
|
|
17243
17375
|
] })
|
|
17244
17376
|
] });
|
|
17245
17377
|
}
|
|
@@ -17252,9 +17384,9 @@ var cardHoverStyles = Css.bcGray400.cursorPointer.$;
|
|
|
17252
17384
|
var imageHoverStyles = Css.bgWhite.add("filter", "brightness(0.3)").add("transition", "filter 0.3s ease").$;
|
|
17253
17385
|
|
|
17254
17386
|
// src/components/Copy.tsx
|
|
17255
|
-
var
|
|
17387
|
+
var import_jsx_runtime153 = require("@emotion/react/jsx-runtime");
|
|
17256
17388
|
function Copy(props) {
|
|
17257
|
-
return /* @__PURE__ */ (0,
|
|
17389
|
+
return /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(
|
|
17258
17390
|
"div",
|
|
17259
17391
|
{
|
|
17260
17392
|
css: {
|
|
@@ -17268,43 +17400,43 @@ function Copy(props) {
|
|
|
17268
17400
|
|
|
17269
17401
|
// src/components/DnDGrid/DnDGrid.tsx
|
|
17270
17402
|
var import_fast_deep_equal2 = __toESM(require("fast-deep-equal"), 1);
|
|
17271
|
-
var
|
|
17403
|
+
var import_react106 = require("react");
|
|
17272
17404
|
|
|
17273
17405
|
// src/components/DnDGrid/DnDGridContext.tsx
|
|
17274
|
-
var
|
|
17275
|
-
var DnDGridContext = (0,
|
|
17406
|
+
var import_react105 = require("react");
|
|
17407
|
+
var DnDGridContext = (0, import_react105.createContext)({
|
|
17276
17408
|
dragEl: { current: void 0 },
|
|
17277
17409
|
onDragHandleKeyDown: () => {
|
|
17278
17410
|
}
|
|
17279
17411
|
});
|
|
17280
17412
|
function useDnDGridContext() {
|
|
17281
|
-
return (0,
|
|
17413
|
+
return (0, import_react105.useContext)(DnDGridContext);
|
|
17282
17414
|
}
|
|
17283
17415
|
|
|
17284
17416
|
// src/components/DnDGrid/DnDGrid.tsx
|
|
17285
|
-
var
|
|
17417
|
+
var import_jsx_runtime154 = require("@emotion/react/jsx-runtime");
|
|
17286
17418
|
function DnDGrid(props) {
|
|
17287
17419
|
const { children, gridStyles, onReorder, activeItemStyles } = props;
|
|
17288
|
-
const gridEl = (0,
|
|
17289
|
-
const dragEl = (0,
|
|
17290
|
-
const cloneEl = (0,
|
|
17291
|
-
const initialOrder = (0,
|
|
17292
|
-
const reorderViaKeyboard = (0,
|
|
17293
|
-
const transformFrom = (0,
|
|
17420
|
+
const gridEl = (0, import_react106.useRef)(null);
|
|
17421
|
+
const dragEl = (0, import_react106.useRef)();
|
|
17422
|
+
const cloneEl = (0, import_react106.useRef)();
|
|
17423
|
+
const initialOrder = (0, import_react106.useRef)();
|
|
17424
|
+
const reorderViaKeyboard = (0, import_react106.useRef)(false);
|
|
17425
|
+
const transformFrom = (0, import_react106.useRef)({ x: 0, y: 0 });
|
|
17294
17426
|
const tid = useTestIds(props, "dndGrid");
|
|
17295
|
-
const getGridItems = (0,
|
|
17427
|
+
const getGridItems = (0, import_react106.useCallback)(() => {
|
|
17296
17428
|
return gridEl.current ? Array.from(gridEl.current.querySelectorAll(`[${gridItemIdKey}]`)) : [];
|
|
17297
17429
|
}, []);
|
|
17298
|
-
const getGridItemIdOrder = (0,
|
|
17430
|
+
const getGridItemIdOrder = (0, import_react106.useCallback)(() => {
|
|
17299
17431
|
return getGridItems().map((child) => child.getAttribute(gridItemIdKey)).filter(isDefined);
|
|
17300
17432
|
}, [getGridItems]);
|
|
17301
|
-
const initReorder = (0,
|
|
17433
|
+
const initReorder = (0, import_react106.useCallback)(() => {
|
|
17302
17434
|
if (gridEl.current && dragEl.current) {
|
|
17303
17435
|
initialOrder.current = getGridItemIdOrder();
|
|
17304
17436
|
dragEl.current.classList.add(activeGridItemClass);
|
|
17305
17437
|
}
|
|
17306
17438
|
}, [getGridItemIdOrder]);
|
|
17307
|
-
const commitReorder = (0,
|
|
17439
|
+
const commitReorder = (0, import_react106.useCallback)(() => {
|
|
17308
17440
|
if (gridEl.current && dragEl.current) {
|
|
17309
17441
|
const currentOrder = getGridItemIdOrder();
|
|
17310
17442
|
if (!(0, import_fast_deep_equal2.default)(currentOrder, initialOrder.current)) onReorder(currentOrder);
|
|
@@ -17314,7 +17446,7 @@ function DnDGrid(props) {
|
|
|
17314
17446
|
initialOrder.current = currentOrder;
|
|
17315
17447
|
}
|
|
17316
17448
|
}, [onReorder, getGridItemIdOrder]);
|
|
17317
|
-
const cancelReorder = (0,
|
|
17449
|
+
const cancelReorder = (0, import_react106.useCallback)(() => {
|
|
17318
17450
|
if (gridEl.current && dragEl.current && initialOrder.current) {
|
|
17319
17451
|
const currentOrder = getGridItemIdOrder();
|
|
17320
17452
|
if (!(0, import_fast_deep_equal2.default)(currentOrder, initialOrder.current)) {
|
|
@@ -17336,7 +17468,7 @@ function DnDGrid(props) {
|
|
|
17336
17468
|
reorderViaKeyboard.current = false;
|
|
17337
17469
|
}
|
|
17338
17470
|
}, [getGridItemIdOrder, getGridItems]);
|
|
17339
|
-
const onMove = (0,
|
|
17471
|
+
const onMove = (0, import_react106.useCallback)((e) => {
|
|
17340
17472
|
if (!reorderViaKeyboard.current && dragEl.current && cloneEl.current && gridEl.current) {
|
|
17341
17473
|
const clientX = "clientX" in e ? e.clientX : e.touches[0].clientX;
|
|
17342
17474
|
const clientY = "clientY" in e ? e.clientY : e.touches[0].clientY;
|
|
@@ -17357,7 +17489,7 @@ function DnDGrid(props) {
|
|
|
17357
17489
|
}
|
|
17358
17490
|
}
|
|
17359
17491
|
}, []);
|
|
17360
|
-
const onDragStart = (0,
|
|
17492
|
+
const onDragStart = (0, import_react106.useCallback)(
|
|
17361
17493
|
(e) => {
|
|
17362
17494
|
if (!reorderViaKeyboard.current && dragEl.current && gridEl.current) {
|
|
17363
17495
|
initReorder();
|
|
@@ -17388,7 +17520,7 @@ function DnDGrid(props) {
|
|
|
17388
17520
|
},
|
|
17389
17521
|
[initReorder, onMove]
|
|
17390
17522
|
);
|
|
17391
|
-
const onDragEnd = (0,
|
|
17523
|
+
const onDragEnd = (0, import_react106.useCallback)(
|
|
17392
17524
|
(e) => {
|
|
17393
17525
|
if (!reorderViaKeyboard.current && dragEl.current && cloneEl.current && gridEl.current) {
|
|
17394
17526
|
e.preventDefault();
|
|
@@ -17404,7 +17536,7 @@ function DnDGrid(props) {
|
|
|
17404
17536
|
},
|
|
17405
17537
|
[commitReorder, onMove]
|
|
17406
17538
|
);
|
|
17407
|
-
const onDragHandleKeyDown = (0,
|
|
17539
|
+
const onDragHandleKeyDown = (0, import_react106.useCallback)(
|
|
17408
17540
|
(e) => {
|
|
17409
17541
|
const moveHandle = e.target;
|
|
17410
17542
|
if (dragEl.current instanceof HTMLElement && moveHandle instanceof HTMLElement && gridEl.current) {
|
|
@@ -17455,7 +17587,7 @@ function DnDGrid(props) {
|
|
|
17455
17587
|
},
|
|
17456
17588
|
[cancelReorder, commitReorder, initReorder, getGridItems]
|
|
17457
17589
|
);
|
|
17458
|
-
return /* @__PURE__ */ (0,
|
|
17590
|
+
return /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(DnDGridContext.Provider, { value: { dragEl, onDragHandleKeyDown }, children: /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(
|
|
17459
17591
|
"div",
|
|
17460
17592
|
{
|
|
17461
17593
|
ref: gridEl,
|
|
@@ -17477,16 +17609,16 @@ var gridCloneKey = "dndgrid-clone";
|
|
|
17477
17609
|
var activeGridItemClass = "dndgrid-active";
|
|
17478
17610
|
|
|
17479
17611
|
// src/components/DnDGrid/DnDGridItemHandle.tsx
|
|
17480
|
-
var
|
|
17481
|
-
var
|
|
17612
|
+
var import_react_aria50 = require("react-aria");
|
|
17613
|
+
var import_jsx_runtime155 = require("@emotion/react/jsx-runtime");
|
|
17482
17614
|
function DnDGridItemHandle(props) {
|
|
17483
17615
|
const { dragHandleProps, icon = "move", compact = false, color } = props;
|
|
17484
|
-
const { focusProps, isFocusVisible } = (0,
|
|
17485
|
-
const { hoverProps, isHovered } = (0,
|
|
17616
|
+
const { focusProps, isFocusVisible } = (0, import_react_aria50.useFocusRing)();
|
|
17617
|
+
const { hoverProps, isHovered } = (0, import_react_aria50.useHover)({});
|
|
17486
17618
|
const tid = useTestIds(props, "dragHandle");
|
|
17487
17619
|
const iconButtonNormal2 = Css.hPx(28).wPx(28).br8.bw2.$;
|
|
17488
17620
|
const iconButtonCompact2 = Css.hPx(18).wPx(18).br4.bw1.$;
|
|
17489
|
-
return /* @__PURE__ */ (0,
|
|
17621
|
+
return /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(
|
|
17490
17622
|
"button",
|
|
17491
17623
|
{
|
|
17492
17624
|
css: {
|
|
@@ -17494,19 +17626,19 @@ function DnDGridItemHandle(props) {
|
|
|
17494
17626
|
...Css.cursor("grab").bcTransparent.bss.bgTransparent.outline0.dif.aic.jcc.transition.if(isFocusVisible).bcBlue700.$,
|
|
17495
17627
|
...isHovered && Css.bgGray200.$
|
|
17496
17628
|
},
|
|
17497
|
-
...(0,
|
|
17629
|
+
...(0, import_react_aria50.mergeProps)(dragHandleProps, focusProps, hoverProps),
|
|
17498
17630
|
...tid,
|
|
17499
|
-
children: /* @__PURE__ */ (0,
|
|
17631
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(Icon, { icon, inc: compact ? 2 : void 0, color })
|
|
17500
17632
|
}
|
|
17501
17633
|
);
|
|
17502
17634
|
}
|
|
17503
17635
|
|
|
17504
17636
|
// src/components/DnDGrid/useDnDGridItem.tsx
|
|
17505
|
-
var
|
|
17637
|
+
var import_react107 = require("react");
|
|
17506
17638
|
function useDnDGridItem(props) {
|
|
17507
17639
|
const { id, itemRef } = props;
|
|
17508
17640
|
const { dragEl, onDragHandleKeyDown } = useDnDGridContext();
|
|
17509
|
-
const { dragItemProps, dragHandleProps } = (0,
|
|
17641
|
+
const { dragItemProps, dragHandleProps } = (0, import_react107.useMemo)(
|
|
17510
17642
|
() => {
|
|
17511
17643
|
function initDraggable() {
|
|
17512
17644
|
if (itemRef.current) {
|
|
@@ -17533,23 +17665,23 @@ function useDnDGridItem(props) {
|
|
|
17533
17665
|
}
|
|
17534
17666
|
|
|
17535
17667
|
// src/components/Grid/ResponsiveGrid.tsx
|
|
17536
|
-
var
|
|
17668
|
+
var import_jsx_runtime156 = require("@emotion/react/jsx-runtime");
|
|
17537
17669
|
function ResponsiveGrid(props) {
|
|
17538
17670
|
const { children, ...hookProps } = props;
|
|
17539
17671
|
const { gridStyles } = useResponsiveGrid(hookProps);
|
|
17540
|
-
return /* @__PURE__ */ (0,
|
|
17672
|
+
return /* @__PURE__ */ (0, import_jsx_runtime156.jsx)("div", { css: { ...gridStyles }, children });
|
|
17541
17673
|
}
|
|
17542
17674
|
|
|
17543
17675
|
// src/components/Grid/ResponsiveGridItem.tsx
|
|
17544
|
-
var
|
|
17676
|
+
var import_jsx_runtime157 = require("@emotion/react/jsx-runtime");
|
|
17545
17677
|
function ResponsiveGridItem(props) {
|
|
17546
17678
|
const { colSpan, children } = props;
|
|
17547
17679
|
const { gridItemProps } = useResponsiveGridItem({ colSpan });
|
|
17548
|
-
return /* @__PURE__ */ (0,
|
|
17680
|
+
return /* @__PURE__ */ (0, import_jsx_runtime157.jsx)("div", { ...gridItemProps, children });
|
|
17549
17681
|
}
|
|
17550
17682
|
|
|
17551
17683
|
// src/components/Grid/useResponsiveGrid.ts
|
|
17552
|
-
var
|
|
17684
|
+
var import_react108 = require("react");
|
|
17553
17685
|
|
|
17554
17686
|
// src/components/Grid/utils.ts
|
|
17555
17687
|
var gridItemDataAttribute = "data-grid-item-span";
|
|
@@ -17557,7 +17689,7 @@ var gridItemDataAttribute = "data-grid-item-span";
|
|
|
17557
17689
|
// src/components/Grid/useResponsiveGrid.ts
|
|
17558
17690
|
function useResponsiveGrid(props) {
|
|
17559
17691
|
const { minColumnWidth, gap, columns } = props;
|
|
17560
|
-
const gridStyles = (0,
|
|
17692
|
+
const gridStyles = (0, import_react108.useMemo)(() => {
|
|
17561
17693
|
const gapCount = columns - 1;
|
|
17562
17694
|
const totalGapWidth = gap * gapCount;
|
|
17563
17695
|
const maxColumnWidth = `calc((100% - ${totalGapWidth}px) / ${columns})`;
|
|
@@ -17598,24 +17730,24 @@ function useResponsiveGridItem({ colSpan = 1 }) {
|
|
|
17598
17730
|
}
|
|
17599
17731
|
|
|
17600
17732
|
// src/components/HbLoadingSpinner.tsx
|
|
17601
|
-
var
|
|
17733
|
+
var import_react109 = __toESM(require("react"), 1);
|
|
17602
17734
|
|
|
17603
17735
|
// src/components/HbLoadingSpinner.base64.ts
|
|
17604
17736
|
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";
|
|
17605
17737
|
|
|
17606
17738
|
// src/components/HbLoadingSpinner.tsx
|
|
17607
|
-
var
|
|
17739
|
+
var import_jsx_runtime158 = require("@emotion/react/jsx-runtime");
|
|
17608
17740
|
function HbLoadingSpinner({ noQuips, extraQuips = [], extraQuipsOnly, iconOnly }) {
|
|
17609
|
-
const ctx = (0,
|
|
17741
|
+
const ctx = (0, import_react109.useContext)(HbLoadingSpinnerContext);
|
|
17610
17742
|
const tid = useTestIds({}, "hbSpinner");
|
|
17611
|
-
const quip = (0,
|
|
17743
|
+
const quip = (0, import_react109.useMemo)(() => {
|
|
17612
17744
|
const allQuips = extraQuipsOnly && extraQuips.length !== 0 ? extraQuips : [...ctx.quips, ...extraQuips];
|
|
17613
17745
|
const forceQuips = extraQuips.length !== 0 || noQuips === false;
|
|
17614
17746
|
if (ctx.noQuips && !forceQuips || noQuips || allQuips.length === 0) return "Loading...";
|
|
17615
17747
|
return allQuips[Math.floor(Math.random() * allQuips.length)];
|
|
17616
17748
|
}, [ctx.noQuips, ctx.quips, extraQuips, extraQuipsOnly, noQuips]);
|
|
17617
|
-
return /* @__PURE__ */ (0,
|
|
17618
|
-
/* @__PURE__ */ (0,
|
|
17749
|
+
return /* @__PURE__ */ (0, import_jsx_runtime158.jsxs)("div", { css: Css.df.fdc.jcc.aic.$, ...tid, children: [
|
|
17750
|
+
/* @__PURE__ */ (0, import_jsx_runtime158.jsx)(
|
|
17619
17751
|
"img",
|
|
17620
17752
|
{
|
|
17621
17753
|
src: HbLoadingSpinner_base64_default,
|
|
@@ -17628,7 +17760,7 @@ function HbLoadingSpinner({ noQuips, extraQuips = [], extraQuipsOnly, iconOnly }
|
|
|
17628
17760
|
...tid.gif
|
|
17629
17761
|
}
|
|
17630
17762
|
),
|
|
17631
|
-
!iconOnly && /* @__PURE__ */ (0,
|
|
17763
|
+
!iconOnly && /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(
|
|
17632
17764
|
"div",
|
|
17633
17765
|
{
|
|
17634
17766
|
"data-chromatic": "ignore",
|
|
@@ -17648,43 +17780,43 @@ var HB_QUIPS_MISSION = [
|
|
|
17648
17780
|
"In Service of Our Customers"
|
|
17649
17781
|
].map(dotDotDot);
|
|
17650
17782
|
var HB_QUIPS_FLAVOR = ["HOM is HOW", "Scaling Massively", "#LoveIt"].map(dotDotDot);
|
|
17651
|
-
var HbLoadingSpinnerContext =
|
|
17783
|
+
var HbLoadingSpinnerContext = import_react109.default.createContext({
|
|
17652
17784
|
quips: ["Loading..."],
|
|
17653
17785
|
noQuips: false
|
|
17654
17786
|
});
|
|
17655
17787
|
function HbSpinnerProvider({ quips = [], children }) {
|
|
17656
|
-
const state = (0,
|
|
17657
|
-
return /* @__PURE__ */ (0,
|
|
17788
|
+
const state = (0, import_react109.useMemo)(() => ({ quips, noQuips: quips.length === 0 }), [quips]);
|
|
17789
|
+
return /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(HbLoadingSpinnerContext.Provider, { value: state, children });
|
|
17658
17790
|
}
|
|
17659
17791
|
|
|
17660
17792
|
// src/components/MaxLines.tsx
|
|
17661
|
-
var
|
|
17662
|
-
var
|
|
17663
|
-
var
|
|
17793
|
+
var import_utils121 = require("@react-aria/utils");
|
|
17794
|
+
var import_react110 = require("react");
|
|
17795
|
+
var import_jsx_runtime159 = require("@emotion/react/jsx-runtime");
|
|
17664
17796
|
function MaxLines({ maxLines, children }) {
|
|
17665
|
-
const elRef = (0,
|
|
17666
|
-
const [hasMore, setHasMore] = (0,
|
|
17667
|
-
const [expanded, setExpanded] = (0,
|
|
17668
|
-
(0,
|
|
17797
|
+
const elRef = (0, import_react110.useRef)(null);
|
|
17798
|
+
const [hasMore, setHasMore] = (0, import_react110.useState)(false);
|
|
17799
|
+
const [expanded, setExpanded] = (0, import_react110.useState)(false);
|
|
17800
|
+
(0, import_utils121.useLayoutEffect)(() => {
|
|
17669
17801
|
if (!elRef.current) return;
|
|
17670
17802
|
setHasMore(elRef.current.scrollHeight > elRef.current.clientHeight);
|
|
17671
17803
|
}, []);
|
|
17672
|
-
(0,
|
|
17804
|
+
(0, import_react110.useEffect)(() => {
|
|
17673
17805
|
setExpanded(false);
|
|
17674
17806
|
}, [children]);
|
|
17675
|
-
const onResize = (0,
|
|
17807
|
+
const onResize = (0, import_react110.useCallback)(() => {
|
|
17676
17808
|
if (!elRef.current) return;
|
|
17677
17809
|
!expanded && setHasMore(elRef.current.scrollHeight > elRef.current.clientHeight);
|
|
17678
17810
|
}, [expanded]);
|
|
17679
|
-
(0,
|
|
17680
|
-
return /* @__PURE__ */ (0,
|
|
17681
|
-
/* @__PURE__ */ (0,
|
|
17682
|
-
hasMore && /* @__PURE__ */ (0,
|
|
17811
|
+
(0, import_utils121.useResizeObserver)({ ref: elRef, onResize });
|
|
17812
|
+
return /* @__PURE__ */ (0, import_jsx_runtime159.jsxs)("div", { children: [
|
|
17813
|
+
/* @__PURE__ */ (0, import_jsx_runtime159.jsx)("div", { ref: elRef, css: Css.if(!expanded).lineClamp(maxLines).$, children }),
|
|
17814
|
+
hasMore && /* @__PURE__ */ (0, import_jsx_runtime159.jsx)("button", { css: Css.db.sm.$, onClick: () => setExpanded((prev) => !prev), children: expanded ? "Show Less" : "Show More" })
|
|
17683
17815
|
] });
|
|
17684
17816
|
}
|
|
17685
17817
|
|
|
17686
17818
|
// src/components/Pagination.tsx
|
|
17687
|
-
var
|
|
17819
|
+
var import_jsx_runtime160 = require("@emotion/react/jsx-runtime");
|
|
17688
17820
|
var defaultPage = { offset: 0, limit: 100 };
|
|
17689
17821
|
function Pagination(props) {
|
|
17690
17822
|
const { totalCount, pageSizes = [100, 500, 1e3] } = props;
|
|
@@ -17704,9 +17836,9 @@ function Pagination(props) {
|
|
|
17704
17836
|
}
|
|
17705
17837
|
}
|
|
17706
17838
|
const tid = useTestIds(props, "pagination");
|
|
17707
|
-
return /* @__PURE__ */ (0,
|
|
17708
|
-
/* @__PURE__ */ (0,
|
|
17709
|
-
/* @__PURE__ */ (0,
|
|
17839
|
+
return /* @__PURE__ */ (0, import_jsx_runtime160.jsxs)("div", { css: Css.df.bcGray200.bt.xs.gray500.px2.pt2.$, ...tid, children: [
|
|
17840
|
+
/* @__PURE__ */ (0, import_jsx_runtime160.jsx)("div", { css: Css.df.mya.mr2.$, ...tid.pageSizeLabel, children: "Page size:" }),
|
|
17841
|
+
/* @__PURE__ */ (0, import_jsx_runtime160.jsx)("div", { css: Css.wPx(78).$, children: /* @__PURE__ */ (0, import_jsx_runtime160.jsx)(
|
|
17710
17842
|
SelectField,
|
|
17711
17843
|
{
|
|
17712
17844
|
compact: true,
|
|
@@ -17719,15 +17851,15 @@ function Pagination(props) {
|
|
|
17719
17851
|
...tid.pageSize
|
|
17720
17852
|
}
|
|
17721
17853
|
) }),
|
|
17722
|
-
/* @__PURE__ */ (0,
|
|
17723
|
-
/* @__PURE__ */ (0,
|
|
17854
|
+
/* @__PURE__ */ (0, import_jsx_runtime160.jsxs)("div", { css: Css.mla.mya.df.$, children: [
|
|
17855
|
+
/* @__PURE__ */ (0, import_jsx_runtime160.jsxs)("div", { css: Css.df.mya.mr2.$, ...tid.pageInfoLabel, children: [
|
|
17724
17856
|
first,
|
|
17725
17857
|
" ",
|
|
17726
17858
|
showLast ? `- ${last}` : "",
|
|
17727
17859
|
" of ",
|
|
17728
17860
|
totalCount
|
|
17729
17861
|
] }),
|
|
17730
|
-
/* @__PURE__ */ (0,
|
|
17862
|
+
/* @__PURE__ */ (0, import_jsx_runtime160.jsx)(
|
|
17731
17863
|
IconButton,
|
|
17732
17864
|
{
|
|
17733
17865
|
icon: "chevronLeft",
|
|
@@ -17737,7 +17869,7 @@ function Pagination(props) {
|
|
|
17737
17869
|
...tid.previousIcon
|
|
17738
17870
|
}
|
|
17739
17871
|
),
|
|
17740
|
-
/* @__PURE__ */ (0,
|
|
17872
|
+
/* @__PURE__ */ (0, import_jsx_runtime160.jsx)(
|
|
17741
17873
|
IconButton,
|
|
17742
17874
|
{
|
|
17743
17875
|
icon: "chevronRight",
|
|
@@ -17765,9 +17897,9 @@ function toPageNumberSize(page) {
|
|
|
17765
17897
|
}
|
|
17766
17898
|
|
|
17767
17899
|
// src/components/ScrollShadows.tsx
|
|
17768
|
-
var
|
|
17769
|
-
var
|
|
17770
|
-
var
|
|
17900
|
+
var import_utils123 = require("@react-aria/utils");
|
|
17901
|
+
var import_react111 = require("react");
|
|
17902
|
+
var import_jsx_runtime161 = require("@emotion/react/jsx-runtime");
|
|
17771
17903
|
function ScrollShadows(props) {
|
|
17772
17904
|
const { children, xss, horizontal = false, bgColor = "rgba(255,255,255,1)" /* White */ } = props;
|
|
17773
17905
|
const { height = "auto", width: width2 = "auto" } = xss ?? {};
|
|
@@ -17775,10 +17907,10 @@ function ScrollShadows(props) {
|
|
|
17775
17907
|
if (!bgColor.includes("rgba")) {
|
|
17776
17908
|
throw new Error("ScrollShadows: bgColor prop must be in the format 'rgba(255, 255, 255, 1)'");
|
|
17777
17909
|
}
|
|
17778
|
-
const [showStartShadow, setShowStartShadow] = (0,
|
|
17779
|
-
const [showEndShadow, setShowEndShadow] = (0,
|
|
17780
|
-
const scrollRef = (0,
|
|
17781
|
-
const [startShadowStyles, endShadowStyles] = (0,
|
|
17910
|
+
const [showStartShadow, setShowStartShadow] = (0, import_react111.useState)(false);
|
|
17911
|
+
const [showEndShadow, setShowEndShadow] = (0, import_react111.useState)(false);
|
|
17912
|
+
const scrollRef = (0, import_react111.useRef)(null);
|
|
17913
|
+
const [startShadowStyles, endShadowStyles] = (0, import_react111.useMemo)(() => {
|
|
17782
17914
|
const transparentBgColor = bgColor.replace(/,1\)$/, ",0)");
|
|
17783
17915
|
const commonStyles = Css.absolute.z3.add({ pointerEvents: "none" }).$;
|
|
17784
17916
|
const startShadowStyles2 = !horizontal ? Css.top0.left0.right0.hPx(40).$ : Css.left0.top0.bottom0.wPx(25).$;
|
|
@@ -17790,7 +17922,7 @@ function ScrollShadows(props) {
|
|
|
17790
17922
|
{ ...commonStyles, ...endShadowStyles2, ...Css.add("background", endGradient).$ }
|
|
17791
17923
|
];
|
|
17792
17924
|
}, [horizontal, bgColor]);
|
|
17793
|
-
const updateScrollProps = (0,
|
|
17925
|
+
const updateScrollProps = (0, import_react111.useCallback)(
|
|
17794
17926
|
(el) => {
|
|
17795
17927
|
const { scrollTop, scrollHeight, clientHeight, scrollWidth, scrollLeft, clientWidth } = el;
|
|
17796
17928
|
const start = horizontal ? scrollLeft : scrollTop;
|
|
@@ -17801,17 +17933,17 @@ function ScrollShadows(props) {
|
|
|
17801
17933
|
},
|
|
17802
17934
|
[horizontal]
|
|
17803
17935
|
);
|
|
17804
|
-
const onResize = (0,
|
|
17805
|
-
(0,
|
|
17806
|
-
return /* @__PURE__ */ (0,
|
|
17936
|
+
const onResize = (0, import_react111.useCallback)(() => scrollRef.current && updateScrollProps(scrollRef.current), [updateScrollProps]);
|
|
17937
|
+
(0, import_utils123.useResizeObserver)({ ref: scrollRef, onResize });
|
|
17938
|
+
return /* @__PURE__ */ (0, import_jsx_runtime161.jsxs)(
|
|
17807
17939
|
"div",
|
|
17808
17940
|
{
|
|
17809
17941
|
css: Css.relative.oh.h(height).w(width2).df.fd(!horizontal ? "column" : "row").$,
|
|
17810
17942
|
...tid,
|
|
17811
17943
|
children: [
|
|
17812
|
-
/* @__PURE__ */ (0,
|
|
17813
|
-
/* @__PURE__ */ (0,
|
|
17814
|
-
/* @__PURE__ */ (0,
|
|
17944
|
+
/* @__PURE__ */ (0, import_jsx_runtime161.jsx)("div", { css: { ...startShadowStyles, opacity: showStartShadow ? 1 : 0 }, "data-chromatic": "ignore" }),
|
|
17945
|
+
/* @__PURE__ */ (0, import_jsx_runtime161.jsx)("div", { css: { ...endShadowStyles, opacity: showEndShadow ? 1 : 0 }, "data-chromatic": "ignore" }),
|
|
17946
|
+
/* @__PURE__ */ (0, import_jsx_runtime161.jsx)(
|
|
17815
17947
|
"div",
|
|
17816
17948
|
{
|
|
17817
17949
|
css: {
|
|
@@ -17829,10 +17961,10 @@ function ScrollShadows(props) {
|
|
|
17829
17961
|
}
|
|
17830
17962
|
|
|
17831
17963
|
// src/components/Snackbar/useSnackbar.tsx
|
|
17832
|
-
var
|
|
17964
|
+
var import_react112 = require("react");
|
|
17833
17965
|
function useSnackbar() {
|
|
17834
17966
|
const { setNotices, setOffset } = useSnackbarContext();
|
|
17835
|
-
const onClose = (0,
|
|
17967
|
+
const onClose = (0, import_react112.useCallback)(
|
|
17836
17968
|
(noticeId) => {
|
|
17837
17969
|
setNotices((prev) => {
|
|
17838
17970
|
let returnValue = prev;
|
|
@@ -17849,7 +17981,7 @@ function useSnackbar() {
|
|
|
17849
17981
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
17850
17982
|
[]
|
|
17851
17983
|
);
|
|
17852
|
-
const triggerNotice = (0,
|
|
17984
|
+
const triggerNotice = (0, import_react112.useCallback)(
|
|
17853
17985
|
(props) => {
|
|
17854
17986
|
const noticeId = props.id ?? `beamSnackbar:${snackbarId++}`;
|
|
17855
17987
|
let maybeTimeout;
|
|
@@ -17878,8 +18010,8 @@ function useSnackbar() {
|
|
|
17878
18010
|
},
|
|
17879
18011
|
[onClose, setNotices]
|
|
17880
18012
|
);
|
|
17881
|
-
const closeNotice = (0,
|
|
17882
|
-
const useSnackbarOffset = ({ bottom }) => (0,
|
|
18013
|
+
const closeNotice = (0, import_react112.useCallback)((id) => onClose(id), [onClose]);
|
|
18014
|
+
const useSnackbarOffset = ({ bottom }) => (0, import_react112.useEffect)(() => {
|
|
17883
18015
|
setOffset({ bottom });
|
|
17884
18016
|
return () => setOffset({});
|
|
17885
18017
|
}, [bottom]);
|
|
@@ -17888,9 +18020,9 @@ function useSnackbar() {
|
|
|
17888
18020
|
var snackbarId = 1;
|
|
17889
18021
|
|
|
17890
18022
|
// src/components/Stepper.tsx
|
|
17891
|
-
var
|
|
17892
|
-
var
|
|
17893
|
-
var
|
|
18023
|
+
var import_react113 = require("react");
|
|
18024
|
+
var import_react_aria51 = require("react-aria");
|
|
18025
|
+
var import_jsx_runtime162 = require("@emotion/react/jsx-runtime");
|
|
17894
18026
|
function Stepper(props) {
|
|
17895
18027
|
const { steps, currentStep, onChange } = props;
|
|
17896
18028
|
if (steps.length === 0) {
|
|
@@ -17901,25 +18033,25 @@ function Stepper(props) {
|
|
|
17901
18033
|
const maxStepWidth = 200;
|
|
17902
18034
|
const minStepWidth = 100;
|
|
17903
18035
|
const gap = 8;
|
|
17904
|
-
return /* @__PURE__ */ (0,
|
|
17905
|
-
/* @__PURE__ */ (0,
|
|
18036
|
+
return /* @__PURE__ */ (0, import_jsx_runtime162.jsxs)("nav", { "aria-label": "steps", css: Css.df.fdc.w100.$, ...tid, children: [
|
|
18037
|
+
/* @__PURE__ */ (0, import_jsx_runtime162.jsx)("ol", { css: Css.listReset.df.gapPx(gap).$, children: steps.map((step) => {
|
|
17906
18038
|
const isCurrent = currentStep === step.value;
|
|
17907
|
-
return /* @__PURE__ */ (0,
|
|
18039
|
+
return /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(
|
|
17908
18040
|
"li",
|
|
17909
18041
|
{
|
|
17910
18042
|
css: Css.df.fg1.fdc.maxwPx(maxStepWidth).mwPx(minStepWidth).$,
|
|
17911
18043
|
"aria-current": isCurrent,
|
|
17912
18044
|
...tid.step,
|
|
17913
|
-
children: /* @__PURE__ */ (0,
|
|
18045
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(StepButton, { ...step, onClick: () => onChange(step.value), isCurrent, ...tid.stepButton })
|
|
17914
18046
|
},
|
|
17915
18047
|
step.label
|
|
17916
18048
|
);
|
|
17917
18049
|
}) }),
|
|
17918
|
-
/* @__PURE__ */ (0,
|
|
18050
|
+
/* @__PURE__ */ (0, import_jsx_runtime162.jsx)(
|
|
17919
18051
|
"div",
|
|
17920
18052
|
{
|
|
17921
18053
|
css: Css.mt1.bgGray300.hPx(4).maxwPx(steps.length * maxStepWidth + (steps.length - 1) * gap).mwPx(steps.length * minStepWidth + (steps.length - 1) * gap).w100.$,
|
|
17922
|
-
children: /* @__PURE__ */ (0,
|
|
18054
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(
|
|
17923
18055
|
"div",
|
|
17924
18056
|
{
|
|
17925
18057
|
css: Css.bgBlue600.add("transition", "width 200ms").h100.w(`${(lastCompletedStep + 1) / steps.length * 100}%`).$
|
|
@@ -17932,13 +18064,13 @@ function Stepper(props) {
|
|
|
17932
18064
|
function StepButton(props) {
|
|
17933
18065
|
const { label, disabled, state, isCurrent, onClick } = props;
|
|
17934
18066
|
const ariaProps = { onPress: onClick, isDisabled: disabled };
|
|
17935
|
-
const ref = (0,
|
|
17936
|
-
const { buttonProps, isPressed } = (0,
|
|
17937
|
-
const { isFocusVisible, focusProps } = (0,
|
|
17938
|
-
const { hoverProps, isHovered } = (0,
|
|
18067
|
+
const ref = (0, import_react113.useRef)(null);
|
|
18068
|
+
const { buttonProps, isPressed } = (0, import_react_aria51.useButton)(ariaProps, ref);
|
|
18069
|
+
const { isFocusVisible, focusProps } = (0, import_react_aria51.useFocusRing)();
|
|
18070
|
+
const { hoverProps, isHovered } = (0, import_react_aria51.useHover)(ariaProps);
|
|
17939
18071
|
const focusRingStyles2 = state === "error" ? Css.bshDanger.$ : Css.bshFocus.$;
|
|
17940
18072
|
const tid = useTestIds(props, "stepButton");
|
|
17941
|
-
return /* @__PURE__ */ (0,
|
|
18073
|
+
return /* @__PURE__ */ (0, import_jsx_runtime162.jsxs)(
|
|
17942
18074
|
"button",
|
|
17943
18075
|
{
|
|
17944
18076
|
ref,
|
|
@@ -17956,7 +18088,7 @@ function StepButton(props) {
|
|
|
17956
18088
|
},
|
|
17957
18089
|
...tid[defaultTestId(label)],
|
|
17958
18090
|
children: [
|
|
17959
|
-
/* @__PURE__ */ (0,
|
|
18091
|
+
/* @__PURE__ */ (0, import_jsx_runtime162.jsx)("span", { css: Css.fs0.mrPx(4).$, children: /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(StepIcon, { state, isHovered, isPressed, isCurrent }) }),
|
|
17960
18092
|
label
|
|
17961
18093
|
]
|
|
17962
18094
|
}
|
|
@@ -17964,12 +18096,12 @@ function StepButton(props) {
|
|
|
17964
18096
|
}
|
|
17965
18097
|
function StepIcon({ state, isHovered = false, isPressed = false, isCurrent = false }) {
|
|
17966
18098
|
if (state === "error") {
|
|
17967
|
-
return /* @__PURE__ */ (0,
|
|
18099
|
+
return /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(Icon, { icon: "errorCircle" });
|
|
17968
18100
|
}
|
|
17969
18101
|
if (state === "complete") {
|
|
17970
|
-
return /* @__PURE__ */ (0,
|
|
18102
|
+
return /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(Icon, { icon: "check" });
|
|
17971
18103
|
}
|
|
17972
|
-
return /* @__PURE__ */ (0,
|
|
18104
|
+
return /* @__PURE__ */ (0, import_jsx_runtime162.jsx)("div", { css: Css.wPx(24).hPx(24).df.aic.jcc.$, children: /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(
|
|
17973
18105
|
"div",
|
|
17974
18106
|
{
|
|
17975
18107
|
css: Css.wPx(10).hPx(10).ba.bw2.br100.add("color", "currentColor").if(isHovered || isPressed || isCurrent).add("backgroundColor", "currentColor").$
|
|
@@ -17979,7 +18111,7 @@ function StepIcon({ state, isHovered = false, isPressed = false, isCurrent = fal
|
|
|
17979
18111
|
|
|
17980
18112
|
// src/components/SuperDrawer/components/SuperDrawerHeader.tsx
|
|
17981
18113
|
var import_react_dom5 = require("react-dom");
|
|
17982
|
-
var
|
|
18114
|
+
var import_jsx_runtime163 = require("@emotion/react/jsx-runtime");
|
|
17983
18115
|
function SuperDrawerHeader(props) {
|
|
17984
18116
|
const { hideControls } = props;
|
|
17985
18117
|
const { sdHeaderDiv, drawerContentStack: contentStack } = useBeamContext();
|
|
@@ -17989,15 +18121,15 @@ function SuperDrawerHeader(props) {
|
|
|
17989
18121
|
const isDetail = currentContent !== firstContent;
|
|
17990
18122
|
const tid = useTestIds({}, "superDrawerHeader");
|
|
17991
18123
|
return (0, import_react_dom5.createPortal)(
|
|
17992
|
-
/* @__PURE__ */ (0,
|
|
17993
|
-
isStructuredProps(props) ? /* @__PURE__ */ (0,
|
|
17994
|
-
/* @__PURE__ */ (0,
|
|
17995
|
-
typeof props.title === "string" ? /* @__PURE__ */ (0,
|
|
18124
|
+
/* @__PURE__ */ (0, import_jsx_runtime163.jsxs)("div", { css: Css.df.aic.jcsb.gap3.$, ...tid, children: [
|
|
18125
|
+
isStructuredProps(props) ? /* @__PURE__ */ (0, import_jsx_runtime163.jsxs)("div", { css: Css.df.jcsb.aic.gap2.fg1.$, children: [
|
|
18126
|
+
/* @__PURE__ */ (0, import_jsx_runtime163.jsxs)("div", { css: Css.fg1.df.aic.gap2.$, children: [
|
|
18127
|
+
typeof props.title === "string" ? /* @__PURE__ */ (0, import_jsx_runtime163.jsx)("h1", { children: props.title }) : props.title,
|
|
17996
18128
|
props.left
|
|
17997
18129
|
] }),
|
|
17998
|
-
props.right && /* @__PURE__ */ (0,
|
|
17999
|
-
] }) : /* @__PURE__ */ (0,
|
|
18000
|
-
!hideControls && /* @__PURE__ */ (0,
|
|
18130
|
+
props.right && /* @__PURE__ */ (0, import_jsx_runtime163.jsx)("div", { css: Css.fs0.$, children: props.right })
|
|
18131
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime163.jsx)("div", { css: Css.fg1.$, children: props.children }),
|
|
18132
|
+
!hideControls && /* @__PURE__ */ (0, import_jsx_runtime163.jsx)("div", { css: Css.fs0.if(isDetail).vh.$, children: /* @__PURE__ */ (0, import_jsx_runtime163.jsx)(
|
|
18001
18133
|
ButtonGroup,
|
|
18002
18134
|
{
|
|
18003
18135
|
buttons: [
|
|
@@ -18016,18 +18148,18 @@ function isStructuredProps(props) {
|
|
|
18016
18148
|
}
|
|
18017
18149
|
|
|
18018
18150
|
// src/components/SuperDrawer/ConfirmCloseModal.tsx
|
|
18019
|
-
var
|
|
18151
|
+
var import_jsx_runtime164 = require("@emotion/react/jsx-runtime");
|
|
18020
18152
|
function ConfirmCloseModal(props) {
|
|
18021
18153
|
const { onClose, discardText = "Discard Changes", continueText = "Continue Editing" } = props;
|
|
18022
18154
|
const { modalState } = useBeamContext();
|
|
18023
18155
|
function closeModal() {
|
|
18024
18156
|
modalState.current = void 0;
|
|
18025
18157
|
}
|
|
18026
|
-
return /* @__PURE__ */ (0,
|
|
18027
|
-
/* @__PURE__ */ (0,
|
|
18028
|
-
/* @__PURE__ */ (0,
|
|
18029
|
-
/* @__PURE__ */ (0,
|
|
18030
|
-
/* @__PURE__ */ (0,
|
|
18158
|
+
return /* @__PURE__ */ (0, import_jsx_runtime164.jsxs)(import_jsx_runtime164.Fragment, { children: [
|
|
18159
|
+
/* @__PURE__ */ (0, import_jsx_runtime164.jsx)(ModalHeader, { children: "Are you sure you want to cancel?" }),
|
|
18160
|
+
/* @__PURE__ */ (0, import_jsx_runtime164.jsx)(ModalBody, { children: /* @__PURE__ */ (0, import_jsx_runtime164.jsx)("p", { children: "Any changes you've made so far will be lost." }) }),
|
|
18161
|
+
/* @__PURE__ */ (0, import_jsx_runtime164.jsxs)(ModalFooter, { children: [
|
|
18162
|
+
/* @__PURE__ */ (0, import_jsx_runtime164.jsx)(
|
|
18031
18163
|
Button,
|
|
18032
18164
|
{
|
|
18033
18165
|
variant: "quaternary",
|
|
@@ -18038,7 +18170,7 @@ function ConfirmCloseModal(props) {
|
|
|
18038
18170
|
}
|
|
18039
18171
|
}
|
|
18040
18172
|
),
|
|
18041
|
-
/* @__PURE__ */ (0,
|
|
18173
|
+
/* @__PURE__ */ (0, import_jsx_runtime164.jsx)(Button, { label: continueText, onClick: closeModal })
|
|
18042
18174
|
] })
|
|
18043
18175
|
] });
|
|
18044
18176
|
}
|
|
@@ -18047,8 +18179,8 @@ function ConfirmCloseModal(props) {
|
|
|
18047
18179
|
var import_framer_motion4 = require("framer-motion");
|
|
18048
18180
|
|
|
18049
18181
|
// src/components/SuperDrawer/useSuperDrawer.tsx
|
|
18050
|
-
var
|
|
18051
|
-
var
|
|
18182
|
+
var import_react114 = require("react");
|
|
18183
|
+
var import_jsx_runtime165 = require("@emotion/react/jsx-runtime");
|
|
18052
18184
|
function useSuperDrawer() {
|
|
18053
18185
|
const {
|
|
18054
18186
|
drawerContentStack: contentStack,
|
|
@@ -18060,7 +18192,7 @@ function useSuperDrawer() {
|
|
|
18060
18192
|
function canCloseDrawerDetails(i, doChange) {
|
|
18061
18193
|
for (const canCloseDrawerDetail of canCloseDetailsChecks.current[i] ?? []) {
|
|
18062
18194
|
if (!canClose(canCloseDrawerDetail)) {
|
|
18063
|
-
openModal({ content: /* @__PURE__ */ (0,
|
|
18195
|
+
openModal({ content: /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawerDetail }) });
|
|
18064
18196
|
return false;
|
|
18065
18197
|
}
|
|
18066
18198
|
}
|
|
@@ -18080,14 +18212,14 @@ function useSuperDrawer() {
|
|
|
18080
18212
|
for (const canCloseDrawer of canCloseChecks.current) {
|
|
18081
18213
|
if (!canClose(canCloseDrawer)) {
|
|
18082
18214
|
openModal({
|
|
18083
|
-
content: /* @__PURE__ */ (0,
|
|
18215
|
+
content: /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawer })
|
|
18084
18216
|
});
|
|
18085
18217
|
return;
|
|
18086
18218
|
}
|
|
18087
18219
|
}
|
|
18088
18220
|
doChange();
|
|
18089
18221
|
}
|
|
18090
|
-
const closeActions = (0,
|
|
18222
|
+
const closeActions = (0, import_react114.useMemo)(
|
|
18091
18223
|
() => {
|
|
18092
18224
|
return {
|
|
18093
18225
|
/** Attempts to close the drawer. If any checks fail, a confirmation modal will appear */
|
|
@@ -18122,7 +18254,7 @@ function useSuperDrawer() {
|
|
|
18122
18254
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
18123
18255
|
[canCloseChecks, canCloseDetailsChecks, contentStack, modalState, openModal]
|
|
18124
18256
|
);
|
|
18125
|
-
const actions = (0,
|
|
18257
|
+
const actions = (0, import_react114.useMemo)(
|
|
18126
18258
|
() => {
|
|
18127
18259
|
return {
|
|
18128
18260
|
// TODO: Maybe we should rename to openDrawer as a breaking change (to match openDrawerDetail)
|
|
@@ -18175,7 +18307,7 @@ function canClose(canCloseCheck) {
|
|
|
18175
18307
|
}
|
|
18176
18308
|
|
|
18177
18309
|
// src/components/SuperDrawer/SuperDrawerContent.tsx
|
|
18178
|
-
var
|
|
18310
|
+
var import_jsx_runtime166 = require("@emotion/react/jsx-runtime");
|
|
18179
18311
|
var SuperDrawerContent = ({ children, actions }) => {
|
|
18180
18312
|
const { closeDrawerDetail } = useSuperDrawer();
|
|
18181
18313
|
const { drawerContentStack: contentStack } = useBeamContext();
|
|
@@ -18184,17 +18316,17 @@ var SuperDrawerContent = ({ children, actions }) => {
|
|
|
18184
18316
|
const { width: width2 = 1040 /* Normal */ } = firstContent ?? {};
|
|
18185
18317
|
function wrapWithMotionAndMaybeBack(children2) {
|
|
18186
18318
|
if (kind === "open") {
|
|
18187
|
-
return /* @__PURE__ */ (0,
|
|
18319
|
+
return /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(import_framer_motion4.motion.div, { css: Css.p3.fg1.oa.$, children: children2 }, "content");
|
|
18188
18320
|
} else if (kind === "detail") {
|
|
18189
|
-
return /* @__PURE__ */ (0,
|
|
18321
|
+
return /* @__PURE__ */ (0, import_jsx_runtime166.jsxs)(
|
|
18190
18322
|
import_framer_motion4.motion.div,
|
|
18191
18323
|
{
|
|
18192
18324
|
css: Css.px3.pt2.pb3.fg1.$,
|
|
18193
18325
|
animate: { overflow: "auto" },
|
|
18194
18326
|
transition: { overflow: { delay: 0.3 } },
|
|
18195
18327
|
children: [
|
|
18196
|
-
/* @__PURE__ */ (0,
|
|
18197
|
-
/* @__PURE__ */ (0,
|
|
18328
|
+
/* @__PURE__ */ (0, import_jsx_runtime166.jsx)(Button, { label: "Back", icon: "chevronLeft", variant: "tertiary", onClick: closeDrawerDetail }),
|
|
18329
|
+
/* @__PURE__ */ (0, import_jsx_runtime166.jsx)(
|
|
18198
18330
|
import_framer_motion4.motion.div,
|
|
18199
18331
|
{
|
|
18200
18332
|
initial: { x: width2, opacity: 0 },
|
|
@@ -18210,27 +18342,27 @@ var SuperDrawerContent = ({ children, actions }) => {
|
|
|
18210
18342
|
"content"
|
|
18211
18343
|
);
|
|
18212
18344
|
} else {
|
|
18213
|
-
return /* @__PURE__ */ (0,
|
|
18345
|
+
return /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(import_framer_motion4.motion.div, { css: Css.p3.fg1.$, style: { overflow: "auto" } }, "content");
|
|
18214
18346
|
}
|
|
18215
18347
|
}
|
|
18216
|
-
return /* @__PURE__ */ (0,
|
|
18348
|
+
return /* @__PURE__ */ (0, import_jsx_runtime166.jsxs)(import_jsx_runtime166.Fragment, { children: [
|
|
18217
18349
|
wrapWithMotionAndMaybeBack(children),
|
|
18218
|
-
actions && /* @__PURE__ */ (0,
|
|
18350
|
+
actions && /* @__PURE__ */ (0, import_jsx_runtime166.jsx)("footer", { css: Css.bt.bcGray200.p3.df.aic.jcfe.$, children: /* @__PURE__ */ (0, import_jsx_runtime166.jsx)("div", { css: Css.df.gap1.$, children: actions.map((buttonProps, i) => /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(Button, { ...buttonProps }, i)) }) })
|
|
18219
18351
|
] });
|
|
18220
18352
|
};
|
|
18221
18353
|
|
|
18222
18354
|
// src/components/Tabs.tsx
|
|
18223
18355
|
var import_change_case7 = require("change-case");
|
|
18224
|
-
var
|
|
18225
|
-
var
|
|
18356
|
+
var import_react115 = require("react");
|
|
18357
|
+
var import_react_aria52 = require("react-aria");
|
|
18226
18358
|
var import_react_router2 = require("react-router");
|
|
18227
18359
|
var import_react_router_dom5 = require("react-router-dom");
|
|
18228
|
-
var
|
|
18360
|
+
var import_jsx_runtime167 = require("@emotion/react/jsx-runtime");
|
|
18229
18361
|
function TabsWithContent(props) {
|
|
18230
18362
|
const styles = hideTabs(props) ? {} : Css.pt3.$;
|
|
18231
|
-
return /* @__PURE__ */ (0,
|
|
18232
|
-
/* @__PURE__ */ (0,
|
|
18233
|
-
/* @__PURE__ */ (0,
|
|
18363
|
+
return /* @__PURE__ */ (0, import_jsx_runtime167.jsxs)(import_jsx_runtime167.Fragment, { children: [
|
|
18364
|
+
/* @__PURE__ */ (0, import_jsx_runtime167.jsx)(Tabs, { ...props }),
|
|
18365
|
+
/* @__PURE__ */ (0, import_jsx_runtime167.jsx)(TabContent, { ...props, contentXss: { ...styles, ...props.contentXss } })
|
|
18234
18366
|
] });
|
|
18235
18367
|
}
|
|
18236
18368
|
function TabContent(props) {
|
|
@@ -18245,7 +18377,7 @@ function TabContent(props) {
|
|
|
18245
18377
|
return (
|
|
18246
18378
|
// Using FullBleed to allow the tab's bgColor to extend to the edges of the <ScrollableContent /> element.
|
|
18247
18379
|
// Omit the padding from `FullBleed` if the caller passes in the `paddingLeft/Right` styles.
|
|
18248
|
-
/* @__PURE__ */ (0,
|
|
18380
|
+
/* @__PURE__ */ (0, import_jsx_runtime167.jsx)(FullBleed, { omitPadding: "paddingLeft" in contentXss || "paddingRight" in contentXss, children: /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(
|
|
18249
18381
|
"div",
|
|
18250
18382
|
{
|
|
18251
18383
|
"aria-labelledby": `${uniqueValue}-tab`,
|
|
@@ -18254,7 +18386,7 @@ function TabContent(props) {
|
|
|
18254
18386
|
tabIndex: 0,
|
|
18255
18387
|
...tid.panel,
|
|
18256
18388
|
css: contentXss,
|
|
18257
|
-
children: isRouteTab(selectedTab) ? /* @__PURE__ */ (0,
|
|
18389
|
+
children: isRouteTab(selectedTab) ? /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(import_react_router2.Route, { path: selectedTab.path, render: selectedTab.render }) : selectedTab.render()
|
|
18258
18390
|
}
|
|
18259
18391
|
) })
|
|
18260
18392
|
);
|
|
@@ -18265,11 +18397,11 @@ function Tabs(props) {
|
|
|
18265
18397
|
const selected = isRouteTabs(props) ? uniqueTabValue(
|
|
18266
18398
|
props.tabs.find((t) => !!(0, import_react_router2.matchPath)(location.pathname, { path: t.path, exact: true })) || props.tabs[0]
|
|
18267
18399
|
) : props.selected;
|
|
18268
|
-
const { isFocusVisible, focusProps } = (0,
|
|
18400
|
+
const { isFocusVisible, focusProps } = (0, import_react_aria52.useFocusRing)();
|
|
18269
18401
|
const tid = useTestIds(others, "tabs");
|
|
18270
|
-
const [active, setActive] = (0,
|
|
18271
|
-
const ref = (0,
|
|
18272
|
-
(0,
|
|
18402
|
+
const [active, setActive] = (0, import_react115.useState)(selected);
|
|
18403
|
+
const ref = (0, import_react115.useRef)(null);
|
|
18404
|
+
(0, import_react115.useEffect)(() => setActive(selected), [selected]);
|
|
18273
18405
|
function onKeyUp(e) {
|
|
18274
18406
|
if (e.key === "ArrowLeft" || e.key === "ArrowRight") {
|
|
18275
18407
|
const nextTabValue = getNextTabValue(active, e.key, tabs);
|
|
@@ -18285,10 +18417,10 @@ function Tabs(props) {
|
|
|
18285
18417
|
setActive(selected);
|
|
18286
18418
|
}
|
|
18287
18419
|
}
|
|
18288
|
-
return /* @__PURE__ */ (0,
|
|
18289
|
-
!hideTabs(props) && /* @__PURE__ */ (0,
|
|
18420
|
+
return /* @__PURE__ */ (0, import_jsx_runtime167.jsxs)("div", { css: { ...Css.df.aic.oa.wsnw.gap1.$, ...includeBottomBorder ? { ...Css.bb.bcGray200.$ } : {} }, children: [
|
|
18421
|
+
!hideTabs(props) && /* @__PURE__ */ (0, import_jsx_runtime167.jsx)("div", { ref, css: Css.dif.gap1.asfe.$, "aria-label": ariaLabel, role: "tablist", ...tid, children: tabs.map((tab) => {
|
|
18290
18422
|
const uniqueValue = uniqueTabValue(tab);
|
|
18291
|
-
return /* @__PURE__ */ (0,
|
|
18423
|
+
return /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(
|
|
18292
18424
|
TabImpl,
|
|
18293
18425
|
{
|
|
18294
18426
|
active: active === uniqueValue,
|
|
@@ -18303,15 +18435,15 @@ function Tabs(props) {
|
|
|
18303
18435
|
uniqueValue
|
|
18304
18436
|
);
|
|
18305
18437
|
}) }),
|
|
18306
|
-
right && /* @__PURE__ */ (0,
|
|
18438
|
+
right && /* @__PURE__ */ (0, import_jsx_runtime167.jsx)("div", { css: Css.mla.df.aic.gap1.pb1.$, children: right })
|
|
18307
18439
|
] });
|
|
18308
18440
|
}
|
|
18309
18441
|
function TabImpl(props) {
|
|
18310
18442
|
const { tab, onClick, active, onKeyUp, onBlur, focusProps, isFocusVisible = false, ...others } = props;
|
|
18311
18443
|
const { disabled = false, name: label, icon, endAdornment } = tab;
|
|
18312
18444
|
const isDisabled = !!disabled;
|
|
18313
|
-
const { hoverProps, isHovered } = (0,
|
|
18314
|
-
const { baseStyles: baseStyles5, activeStyles: activeStyles4, focusRingStyles: focusRingStyles2, hoverStyles: hoverStyles4, disabledStyles: disabledStyles4, activeHoverStyles } = (0,
|
|
18445
|
+
const { hoverProps, isHovered } = (0, import_react_aria52.useHover)({ isDisabled });
|
|
18446
|
+
const { baseStyles: baseStyles5, activeStyles: activeStyles4, focusRingStyles: focusRingStyles2, hoverStyles: hoverStyles4, disabledStyles: disabledStyles4, activeHoverStyles } = (0, import_react115.useMemo)(
|
|
18315
18447
|
() => getTabStyles(),
|
|
18316
18448
|
[]
|
|
18317
18449
|
);
|
|
@@ -18333,20 +18465,20 @@ function TabImpl(props) {
|
|
|
18333
18465
|
...isFocusVisible && active && focusRingStyles2
|
|
18334
18466
|
}
|
|
18335
18467
|
};
|
|
18336
|
-
const interactiveProps = (0,
|
|
18468
|
+
const interactiveProps = (0, import_react_aria52.mergeProps)(focusProps, hoverProps, {
|
|
18337
18469
|
onKeyUp,
|
|
18338
18470
|
onBlur,
|
|
18339
18471
|
...isRouteTab(tab) ? {} : { onClick: () => onClick(tab.value) }
|
|
18340
18472
|
});
|
|
18341
|
-
const tabLabel = /* @__PURE__ */ (0,
|
|
18473
|
+
const tabLabel = /* @__PURE__ */ (0, import_jsx_runtime167.jsxs)(import_jsx_runtime167.Fragment, { children: [
|
|
18342
18474
|
label,
|
|
18343
|
-
(icon || endAdornment) && /* @__PURE__ */ (0,
|
|
18475
|
+
(icon || endAdornment) && /* @__PURE__ */ (0, import_jsx_runtime167.jsx)("span", { css: Css.ml1.$, children: icon ? /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(Icon, { icon }) : endAdornment })
|
|
18344
18476
|
] });
|
|
18345
18477
|
return isDisabled ? maybeTooltip({
|
|
18346
18478
|
title: resolveTooltip(disabled),
|
|
18347
18479
|
placement: "top",
|
|
18348
|
-
children: /* @__PURE__ */ (0,
|
|
18349
|
-
}) : isRouteTab(tab) ? /* @__PURE__ */ (0,
|
|
18480
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime167.jsx)("div", { ...tabProps, children: tabLabel })
|
|
18481
|
+
}) : isRouteTab(tab) ? /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(import_react_router_dom5.Link, { ...{ ...tabProps, ...interactiveProps }, className: "navLink", to: tab.href, children: tabLabel }) : /* @__PURE__ */ (0, import_jsx_runtime167.jsx)("button", { ...{ ...tabProps, ...interactiveProps }, children: tabLabel });
|
|
18350
18482
|
}
|
|
18351
18483
|
function getTabStyles() {
|
|
18352
18484
|
const borderBottomWidthPx = 4;
|
|
@@ -18383,10 +18515,10 @@ function hideTabs(props) {
|
|
|
18383
18515
|
}
|
|
18384
18516
|
|
|
18385
18517
|
// src/components/Toast/useToast.tsx
|
|
18386
|
-
var
|
|
18518
|
+
var import_react116 = require("react");
|
|
18387
18519
|
function useToast() {
|
|
18388
18520
|
const { setNotice, clear } = useToastContext();
|
|
18389
|
-
const showToast = (0,
|
|
18521
|
+
const showToast = (0, import_react116.useCallback)((props) => setNotice(props), [setNotice]);
|
|
18390
18522
|
return { showToast, clear };
|
|
18391
18523
|
}
|
|
18392
18524
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -18455,6 +18587,7 @@ function useToast() {
|
|
|
18455
18587
|
EditColumnsButton,
|
|
18456
18588
|
ErrorMessage,
|
|
18457
18589
|
FieldGroup,
|
|
18590
|
+
FilterDropdownMenu,
|
|
18458
18591
|
FilterModal,
|
|
18459
18592
|
Filters,
|
|
18460
18593
|
FormDivider,
|