@homebound/beam 2.383.1 → 2.385.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 +422 -365
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +17 -2
- package/dist/index.d.ts +17 -2
- package/dist/index.js +312 -256
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -217,6 +217,7 @@ __export(index_exports, {
|
|
|
217
217
|
getTableStyles: () => getTableStyles,
|
|
218
218
|
headerRenderFn: () => headerRenderFn,
|
|
219
219
|
hoverStyles: () => hoverStyles,
|
|
220
|
+
iconButtonCircleStylesHover: () => iconButtonCircleStylesHover,
|
|
220
221
|
iconButtonContrastStylesHover: () => iconButtonContrastStylesHover,
|
|
221
222
|
iconButtonStylesHover: () => iconButtonStylesHover,
|
|
222
223
|
iconCardStylesHover: () => iconCardStylesHover,
|
|
@@ -5675,8 +5676,10 @@ function IconButton(props) {
|
|
|
5675
5676
|
tooltip,
|
|
5676
5677
|
menuTriggerProps,
|
|
5677
5678
|
openInNew,
|
|
5679
|
+
active = false,
|
|
5678
5680
|
compact = false,
|
|
5679
5681
|
contrast = false,
|
|
5682
|
+
circle = false,
|
|
5680
5683
|
download = false,
|
|
5681
5684
|
forceFocusStyles = false,
|
|
5682
5685
|
label
|
|
@@ -5698,9 +5701,10 @@ function IconButton(props) {
|
|
|
5698
5701
|
const styles = (0, import_react16.useMemo)(
|
|
5699
5702
|
() => ({
|
|
5700
5703
|
...iconButtonStylesReset,
|
|
5701
|
-
...compact ? iconButtonCompact : iconButtonNormal,
|
|
5702
|
-
...isHovered && (contrast ? iconButtonContrastStylesHover : iconButtonStylesHover),
|
|
5703
|
-
...isFocusVisible || forceFocusStyles ? iconButtonStylesFocus : {},
|
|
5704
|
+
...circle ? iconButtonCircle : compact ? iconButtonCompact : iconButtonNormal,
|
|
5705
|
+
...isHovered && (contrast ? iconButtonContrastStylesHover : circle ? iconButtonCircleStylesHover : iconButtonStylesHover),
|
|
5706
|
+
...isFocusVisible || forceFocusStyles ? circle ? iconButtonCircleStylesFocus : iconButtonStylesFocus : {},
|
|
5707
|
+
...active ? contrast ? iconButtonContrastStylesHover : activeStyles : {},
|
|
5704
5708
|
...isDisabled && iconButtonStylesDisabled,
|
|
5705
5709
|
...bgColor && Css.bgColor(bgColor).$
|
|
5706
5710
|
}),
|
|
@@ -5708,7 +5712,7 @@ function IconButton(props) {
|
|
|
5708
5712
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
5709
5713
|
[isHovered, isFocusVisible, isDisabled, compact]
|
|
5710
5714
|
);
|
|
5711
|
-
const iconColor = contrast ? contrastIconColor : defaultIconColor;
|
|
5715
|
+
const iconColor = contrast ? contrastIconColor : circle ? circleIconColor : defaultIconColor;
|
|
5712
5716
|
const buttonAttrs = {
|
|
5713
5717
|
...testIds,
|
|
5714
5718
|
...buttonProps,
|
|
@@ -5723,9 +5727,9 @@ function IconButton(props) {
|
|
|
5723
5727
|
Icon,
|
|
5724
5728
|
{
|
|
5725
5729
|
icon,
|
|
5726
|
-
color: color || (isDisabled ? "rgba(201, 201, 201, 1)" /* Gray400 */ : iconColor),
|
|
5730
|
+
color: color || (isDisabled ? "rgba(201, 201, 201, 1)" /* Gray400 */ : circle && (isHovered || active || isFocusVisible) ? defaultIconColor : iconColor),
|
|
5727
5731
|
bgColor,
|
|
5728
|
-
inc: compact ? 2 : inc
|
|
5732
|
+
inc: compact ? 2 : circle ? 2.5 : inc
|
|
5729
5733
|
}
|
|
5730
5734
|
);
|
|
5731
5735
|
return maybeTooltip({
|
|
@@ -5736,13 +5740,18 @@ function IconButton(props) {
|
|
|
5736
5740
|
}
|
|
5737
5741
|
var defaultIconColor = "rgba(36, 36, 36, 1)" /* Gray900 */;
|
|
5738
5742
|
var contrastIconColor = "rgba(255,255,255,1)" /* White */;
|
|
5743
|
+
var circleIconColor = "rgba(100, 100, 100, 1)" /* Gray700 */;
|
|
5739
5744
|
var iconButtonStylesReset = Css.bcTransparent.bss.bgTransparent.cursorPointer.outline0.dif.aic.jcc.transition.$;
|
|
5740
5745
|
var iconButtonNormal = Css.hPx(28).wPx(28).br8.bw2.$;
|
|
5741
5746
|
var iconButtonCompact = Css.hPx(18).wPx(18).br4.bw1.$;
|
|
5747
|
+
var iconButtonCircle = Css.br100.wPx(48).hPx(48).bcGray300.ba.bw1.df.jcc.aic.$;
|
|
5742
5748
|
var iconButtonStylesHover = Css.bgGray200.$;
|
|
5743
5749
|
var iconButtonContrastStylesHover = Css.bgGray700.$;
|
|
5750
|
+
var iconButtonCircleStylesHover = Css.bgBlue100.bcBlue200.$;
|
|
5744
5751
|
var iconButtonStylesFocus = Css.bcBlue700.$;
|
|
5752
|
+
var iconButtonCircleStylesFocus = Css.bgBlue100.bcBlue700.$;
|
|
5745
5753
|
var iconButtonStylesDisabled = Css.cursorNotAllowed.$;
|
|
5754
|
+
var activeStyles = Css.bgGray200.bcGray200.$;
|
|
5746
5755
|
|
|
5747
5756
|
// src/components/internal/DatePicker/Header.tsx
|
|
5748
5757
|
var import_jsx_runtime11 = require("@emotion/react/jsx-runtime");
|
|
@@ -6874,7 +6883,7 @@ function NavLink(props) {
|
|
|
6874
6883
|
const { buttonProps, isPressed } = (0, import_react_aria7.useButton)({ ...ariaProps, elementType: href ? "a" : "button" }, ref);
|
|
6875
6884
|
const { hoverProps, isHovered } = (0, import_react_aria7.useHover)({ isDisabled });
|
|
6876
6885
|
const { isFocusVisible, focusProps } = (0, import_react_aria7.useFocusRing)(ariaProps);
|
|
6877
|
-
const { baseStyles: baseStyles4, activeStyles:
|
|
6886
|
+
const { baseStyles: baseStyles4, activeStyles: activeStyles4, focusRingStyles: focusRingStyles2, hoverStyles: hoverStyles4, disabledStyles: disabledStyles3, pressedStyles: pressedStyles3 } = (0, import_react21.useMemo)(
|
|
6878
6887
|
() => getNavLinkStyles(variant, contrast),
|
|
6879
6888
|
[variant, contrast]
|
|
6880
6889
|
);
|
|
@@ -6887,7 +6896,7 @@ function NavLink(props) {
|
|
|
6887
6896
|
"aria-current": active ? "page" : void 0,
|
|
6888
6897
|
css: {
|
|
6889
6898
|
...baseStyles4,
|
|
6890
|
-
...active &&
|
|
6899
|
+
...active && activeStyles4,
|
|
6891
6900
|
...isDisabled && disabledStyles3,
|
|
6892
6901
|
...isFocusVisible && focusRingStyles2,
|
|
6893
6902
|
...isHovered && hoverStyles4,
|
|
@@ -14039,7 +14048,7 @@ var variantStyles2 = {
|
|
|
14039
14048
|
};
|
|
14040
14049
|
|
|
14041
14050
|
// src/components/BeamContext.tsx
|
|
14042
|
-
var
|
|
14051
|
+
var import_react92 = require("react");
|
|
14043
14052
|
var import_react_aria44 = require("react-aria");
|
|
14044
14053
|
|
|
14045
14054
|
// src/components/Modal/Modal.tsx
|
|
@@ -14375,7 +14384,7 @@ function SuperDrawer() {
|
|
|
14375
14384
|
|
|
14376
14385
|
// src/components/Layout/FormPageLayout.tsx
|
|
14377
14386
|
var import_mobx_react21 = require("mobx-react");
|
|
14378
|
-
var
|
|
14387
|
+
var import_react85 = __toESM(require("react"), 1);
|
|
14379
14388
|
var import_react_aria43 = require("react-aria");
|
|
14380
14389
|
|
|
14381
14390
|
// src/forms/BoundCheckboxField.tsx
|
|
@@ -15488,21 +15497,71 @@ function SubmitButton(props) {
|
|
|
15488
15497
|
);
|
|
15489
15498
|
}
|
|
15490
15499
|
|
|
15491
|
-
// src/components/
|
|
15500
|
+
// src/components/RightSidebar.tsx
|
|
15501
|
+
var import_framer_motion2 = require("framer-motion");
|
|
15492
15502
|
var import_react83 = require("react");
|
|
15493
|
-
var import_react_router_dom4 = require("react-router-dom");
|
|
15494
15503
|
var import_jsx_runtime118 = require("@emotion/react/jsx-runtime");
|
|
15504
|
+
function RightSidebar({ content }) {
|
|
15505
|
+
const [selectedIcon, setSelectedIcon] = (0, import_react83.useState)(void 0);
|
|
15506
|
+
const tid = useTestIds({}, "rightSidebar");
|
|
15507
|
+
const width = 380;
|
|
15508
|
+
return /* @__PURE__ */ (0, import_jsx_runtime118.jsxs)(import_jsx_runtime118.Fragment, { children: [
|
|
15509
|
+
/* @__PURE__ */ (0, import_jsx_runtime118.jsx)("div", { css: Css.df.jcfe.relative.pr3.$, children: /* @__PURE__ */ (0, import_jsx_runtime118.jsx)("div", { css: Css.df.gap2.z1.$, children: content.map(({ icon }) => /* @__PURE__ */ (0, import_jsx_runtime118.jsx)(
|
|
15510
|
+
IconButton,
|
|
15511
|
+
{
|
|
15512
|
+
circle: true,
|
|
15513
|
+
active: icon === selectedIcon,
|
|
15514
|
+
onClick: () => setSelectedIcon(icon),
|
|
15515
|
+
icon,
|
|
15516
|
+
inc: 3.5
|
|
15517
|
+
},
|
|
15518
|
+
`${icon}-${selectedIcon}`
|
|
15519
|
+
)) }) }),
|
|
15520
|
+
/* @__PURE__ */ (0, import_jsx_runtime118.jsx)(import_framer_motion2.AnimatePresence, { children: selectedIcon && /* @__PURE__ */ (0, import_jsx_runtime118.jsx)(
|
|
15521
|
+
import_framer_motion2.motion.div,
|
|
15522
|
+
{
|
|
15523
|
+
initial: { x: width, opacity: 0 },
|
|
15524
|
+
animate: { x: 0, opacity: 1 },
|
|
15525
|
+
transition: { delay: 0.2, ease: "linear", duration: 0.2 },
|
|
15526
|
+
exit: { transition: { ease: "linear", duration: 0.2 }, x: width },
|
|
15527
|
+
css: Css.wPx(width).z0.$,
|
|
15528
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime118.jsxs)("div", { css: Css.relative.topPx(-48).z0.px3.$, children: [
|
|
15529
|
+
/* @__PURE__ */ (0, import_jsx_runtime118.jsxs)("div", { css: Css.absolute.leftPx(-24).$, children: [
|
|
15530
|
+
/* @__PURE__ */ (0, import_jsx_runtime118.jsx)(
|
|
15531
|
+
IconButton,
|
|
15532
|
+
{
|
|
15533
|
+
bgColor: "rgba(255,255,255,1)" /* White */,
|
|
15534
|
+
circle: true,
|
|
15535
|
+
onClick: () => setSelectedIcon(void 0),
|
|
15536
|
+
icon: "x",
|
|
15537
|
+
inc: 3.5
|
|
15538
|
+
}
|
|
15539
|
+
),
|
|
15540
|
+
/* @__PURE__ */ (0, import_jsx_runtime118.jsx)("div", { css: Css.absolute.topPx(48).leftPx(23).h("calc(100vh - 168px)").wPx(1).bgGray300.$ })
|
|
15541
|
+
] }),
|
|
15542
|
+
selectedIcon && /* @__PURE__ */ (0, import_jsx_runtime118.jsx)("div", { ...tid.content, css: Css.ptPx(72).$, children: content.find((sidebar) => sidebar.icon === selectedIcon)?.render() })
|
|
15543
|
+
] })
|
|
15544
|
+
},
|
|
15545
|
+
"rightSidebar"
|
|
15546
|
+
) })
|
|
15547
|
+
] });
|
|
15548
|
+
}
|
|
15549
|
+
|
|
15550
|
+
// src/components/Layout/PageHeaderBreadcrumbs.tsx
|
|
15551
|
+
var import_react84 = require("react");
|
|
15552
|
+
var import_react_router_dom4 = require("react-router-dom");
|
|
15553
|
+
var import_jsx_runtime119 = require("@emotion/react/jsx-runtime");
|
|
15495
15554
|
function PageHeaderBreadcrumbs({ breadcrumb }) {
|
|
15496
15555
|
const tids = useTestIds({}, "pageHeaderBreadcrumbs");
|
|
15497
15556
|
const breadcrumbs = Array.isArray(breadcrumb) ? breadcrumb : [breadcrumb];
|
|
15498
|
-
return /* @__PURE__ */ (0,
|
|
15499
|
-
i > 0 && /* @__PURE__ */ (0,
|
|
15500
|
-
/* @__PURE__ */ (0,
|
|
15557
|
+
return /* @__PURE__ */ (0, import_jsx_runtime119.jsx)("div", { css: Css.df.aic.mbPx(4).$, ...tids, children: breadcrumbs.map((breadcrumb2, i) => /* @__PURE__ */ (0, import_jsx_runtime119.jsxs)(import_react84.Fragment, { children: [
|
|
15558
|
+
i > 0 && /* @__PURE__ */ (0, import_jsx_runtime119.jsx)("span", { css: Css.smMd.gray700.mr1.ml1.$, children: "/" }),
|
|
15559
|
+
/* @__PURE__ */ (0, import_jsx_runtime119.jsx)(import_react_router_dom4.Link, { to: breadcrumb2.href, css: Css.smMd.gray700.onHover.gray900.$, className: "navLink", ...tids.navLink, children: breadcrumb2.label })
|
|
15501
15560
|
] }, `bc-${breadcrumb2.label}`)) });
|
|
15502
15561
|
}
|
|
15503
15562
|
|
|
15504
15563
|
// src/components/Layout/FormPageLayout.tsx
|
|
15505
|
-
var
|
|
15564
|
+
var import_jsx_runtime120 = (
|
|
15506
15565
|
// This page is `fixed` to the full screen to allow it to act as a full screen modal while content is mounted below
|
|
15507
15566
|
// since this layout will be replacing most superdrawers/sidebars, we keep the listing mounted below to preserve the users's
|
|
15508
15567
|
// scroll position & filters
|
|
@@ -15511,43 +15570,43 @@ var import_jsx_runtime119 = (
|
|
|
15511
15570
|
);
|
|
15512
15571
|
var headerHeightPx = 120;
|
|
15513
15572
|
function FormPageLayoutComponent(props) {
|
|
15514
|
-
const { formSections, formState } = props;
|
|
15573
|
+
const { formSections, formState, rightSideBar } = props;
|
|
15515
15574
|
const tids = useTestIds(props, "formPageLayout");
|
|
15516
|
-
const sectionsWithRefs = (0,
|
|
15575
|
+
const sectionsWithRefs = (0, import_react85.useMemo)(
|
|
15517
15576
|
() => formSections.map((section, id) => ({
|
|
15518
15577
|
section,
|
|
15519
|
-
ref: (0,
|
|
15578
|
+
ref: (0, import_react85.createRef)(),
|
|
15520
15579
|
// Unique key for each section to use in the observer
|
|
15521
15580
|
sectionKey: `section-${section.title ?? id}`
|
|
15522
15581
|
})),
|
|
15523
15582
|
[formSections]
|
|
15524
15583
|
);
|
|
15525
15584
|
const gridColumns = "minMax(0, auto) minMax(100px, 250px) minMax(350px, 1000px) minMax(min-content, 300px) minMax(0, auto)";
|
|
15526
|
-
return /* @__PURE__ */ (0,
|
|
15585
|
+
return /* @__PURE__ */ (0, import_jsx_runtime120.jsxs)(
|
|
15527
15586
|
"div",
|
|
15528
15587
|
{
|
|
15529
15588
|
css: Css.fixed.top0.bottom0.left0.right0.z(1e3).oya.bgWhite.dg.gtc(gridColumns).gtr("auto 1fr").cg3.ais.$,
|
|
15530
15589
|
...tids,
|
|
15531
15590
|
children: [
|
|
15532
|
-
/* @__PURE__ */ (0,
|
|
15533
|
-
/* @__PURE__ */ (0,
|
|
15534
|
-
/* @__PURE__ */ (0,
|
|
15535
|
-
/* @__PURE__ */ (0,
|
|
15591
|
+
/* @__PURE__ */ (0, import_jsx_runtime120.jsx)(PageHeader, { ...props, ...tids.pageHeader }),
|
|
15592
|
+
/* @__PURE__ */ (0, import_jsx_runtime120.jsx)(LeftNav, { sectionsWithRefs, ...tids }),
|
|
15593
|
+
/* @__PURE__ */ (0, import_jsx_runtime120.jsx)(FormSections, { sectionsWithRefs, formState, ...tids }),
|
|
15594
|
+
rightSideBar && /* @__PURE__ */ (0, import_jsx_runtime120.jsx)("aside", { css: Css.gr(2).gc("4 / 5").sticky.topPx(headerHeightPx).$, children: /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(RightSidebar, { content: rightSideBar }) })
|
|
15536
15595
|
]
|
|
15537
15596
|
}
|
|
15538
15597
|
);
|
|
15539
15598
|
}
|
|
15540
|
-
var FormPageLayout =
|
|
15599
|
+
var FormPageLayout = import_react85.default.memo(FormPageLayoutComponent);
|
|
15541
15600
|
function PageHeader(props) {
|
|
15542
15601
|
const { pageTitle, breadCrumb, submitAction, cancelAction, tertiaryAction, formState } = props;
|
|
15543
15602
|
const tids = useTestIds(props);
|
|
15544
|
-
return /* @__PURE__ */ (0,
|
|
15545
|
-
/* @__PURE__ */ (0,
|
|
15546
|
-
breadCrumb && /* @__PURE__ */ (0,
|
|
15547
|
-
/* @__PURE__ */ (0,
|
|
15603
|
+
return /* @__PURE__ */ (0, import_jsx_runtime120.jsx)("header", { css: Css.gr(1).gc("2 / 5").sticky.top0.hPx(headerHeightPx).bgWhite.z5.$, ...tids, children: /* @__PURE__ */ (0, import_jsx_runtime120.jsxs)("div", { css: Css.py2.px3.df.jcsb.aic.$, children: [
|
|
15604
|
+
/* @__PURE__ */ (0, import_jsx_runtime120.jsxs)("div", { children: [
|
|
15605
|
+
breadCrumb && /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(PageHeaderBreadcrumbs, { breadcrumb: breadCrumb }),
|
|
15606
|
+
/* @__PURE__ */ (0, import_jsx_runtime120.jsx)("h1", { css: Css.xl3Sb.$, ...tids.pageTitle, children: pageTitle })
|
|
15548
15607
|
] }),
|
|
15549
|
-
/* @__PURE__ */ (0,
|
|
15550
|
-
tertiaryAction && /* @__PURE__ */ (0,
|
|
15608
|
+
/* @__PURE__ */ (0, import_jsx_runtime120.jsx)(import_mobx_react21.Observer, { children: () => /* @__PURE__ */ (0, import_jsx_runtime120.jsxs)("div", { css: Css.df.gap1.$, children: [
|
|
15609
|
+
tertiaryAction && /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(
|
|
15551
15610
|
Button,
|
|
15552
15611
|
{
|
|
15553
15612
|
label: tertiaryAction.label,
|
|
@@ -15558,7 +15617,7 @@ function PageHeader(props) {
|
|
|
15558
15617
|
...tids.tertiaryAction
|
|
15559
15618
|
}
|
|
15560
15619
|
),
|
|
15561
|
-
cancelAction && /* @__PURE__ */ (0,
|
|
15620
|
+
cancelAction && /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(
|
|
15562
15621
|
Button,
|
|
15563
15622
|
{
|
|
15564
15623
|
label: cancelAction.label,
|
|
@@ -15569,7 +15628,7 @@ function PageHeader(props) {
|
|
|
15569
15628
|
...tids.cancelAction
|
|
15570
15629
|
}
|
|
15571
15630
|
),
|
|
15572
|
-
submitAction && /* @__PURE__ */ (0,
|
|
15631
|
+
submitAction && /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(
|
|
15573
15632
|
Button,
|
|
15574
15633
|
{
|
|
15575
15634
|
label: submitAction.label,
|
|
@@ -15586,9 +15645,9 @@ function PageHeader(props) {
|
|
|
15586
15645
|
function FormSections(props) {
|
|
15587
15646
|
const { sectionsWithRefs, formState } = props;
|
|
15588
15647
|
const tids = useTestIds(props);
|
|
15589
|
-
return /* @__PURE__ */ (0,
|
|
15648
|
+
return /* @__PURE__ */ (0, import_jsx_runtime120.jsx)("article", { css: Css.gr(2).gc("3 / 4").$, children: sectionsWithRefs.map(({ section, ref, sectionKey }, i) => (
|
|
15590
15649
|
// Subgrid here allows for icon placement to the left of the section content
|
|
15591
|
-
/* @__PURE__ */ (0,
|
|
15650
|
+
/* @__PURE__ */ (0, import_jsx_runtime120.jsxs)(
|
|
15592
15651
|
"section",
|
|
15593
15652
|
{
|
|
15594
15653
|
id: sectionKey,
|
|
@@ -15596,10 +15655,10 @@ function FormSections(props) {
|
|
|
15596
15655
|
css: Css.dg.gtc("50px 1fr").gtr("auto").mb3.add("scrollMarginTop", `${headerHeightPx}px`).$,
|
|
15597
15656
|
...tids.formSection,
|
|
15598
15657
|
children: [
|
|
15599
|
-
/* @__PURE__ */ (0,
|
|
15600
|
-
/* @__PURE__ */ (0,
|
|
15601
|
-
section.title && /* @__PURE__ */ (0,
|
|
15602
|
-
/* @__PURE__ */ (0,
|
|
15658
|
+
/* @__PURE__ */ (0, import_jsx_runtime120.jsx)("div", { css: Css.gc(1).$, children: section.icon && /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(Icon, { icon: section.icon, inc: 3.5 }) }),
|
|
15659
|
+
/* @__PURE__ */ (0, import_jsx_runtime120.jsxs)("div", { css: Css.gc(2).$, children: [
|
|
15660
|
+
section.title && /* @__PURE__ */ (0, import_jsx_runtime120.jsx)("h2", { css: Css.xlSb.mb3.$, children: section.title }),
|
|
15661
|
+
/* @__PURE__ */ (0, import_jsx_runtime120.jsx)(BoundForm, { formState, rows: section.rows })
|
|
15603
15662
|
] })
|
|
15604
15663
|
]
|
|
15605
15664
|
},
|
|
@@ -15610,12 +15669,12 @@ function FormSections(props) {
|
|
|
15610
15669
|
function LeftNav(props) {
|
|
15611
15670
|
const { sectionsWithRefs } = props;
|
|
15612
15671
|
const tids = useTestIds(props);
|
|
15613
|
-
const sectionWithTitles = (0,
|
|
15672
|
+
const sectionWithTitles = (0, import_react85.useMemo)(
|
|
15614
15673
|
() => sectionsWithRefs.filter(({ section }) => !!section.title),
|
|
15615
15674
|
[sectionsWithRefs]
|
|
15616
15675
|
);
|
|
15617
15676
|
const activeSection = useActiveSection(sectionWithTitles);
|
|
15618
|
-
return /* @__PURE__ */ (0,
|
|
15677
|
+
return /* @__PURE__ */ (0, import_jsx_runtime120.jsx)("aside", { css: Css.gr(2).gc("2 / 3").sticky.topPx(headerHeightPx).px3.df.fdc.gap1.$, ...tids.nav, children: sectionWithTitles.map((sectionWithRef) => /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(
|
|
15619
15678
|
SectionNavLink,
|
|
15620
15679
|
{
|
|
15621
15680
|
sectionWithRef,
|
|
@@ -15625,22 +15684,22 @@ function LeftNav(props) {
|
|
|
15625
15684
|
`nav-${sectionWithRef.sectionKey}`
|
|
15626
15685
|
)) });
|
|
15627
15686
|
}
|
|
15628
|
-
var
|
|
15687
|
+
var activeStyles2 = Css.smBd.boxShadow(`inset 3px 0px 0 0px ${"rgba(37, 99, 235, 1)" /* Blue600 */}`).$;
|
|
15629
15688
|
var hoverStyles2 = Css.bgBlue50.smBd.blue900.boxShadow(`inset 3px 0px 0 0px ${"rgba(30, 58, 138, 1)" /* Blue900 */}`).$;
|
|
15630
15689
|
var defaultFocusRingStyles = Css.relative.z2.bshFocus.$;
|
|
15631
15690
|
function SectionNavLink(props) {
|
|
15632
15691
|
const { sectionWithRef, activeSection } = props;
|
|
15633
15692
|
const { section, ref: sectionRef } = sectionWithRef;
|
|
15634
15693
|
const active = activeSection === sectionWithRef.sectionKey;
|
|
15635
|
-
const handleNavClick = (0,
|
|
15694
|
+
const handleNavClick = (0, import_react85.useCallback)(() => {
|
|
15636
15695
|
sectionRef.current?.scrollIntoView({ behavior: "smooth", block: "start" });
|
|
15637
15696
|
}, [sectionRef]);
|
|
15638
15697
|
const tids = useTestIds(props);
|
|
15639
|
-
const buttonRef = (0,
|
|
15698
|
+
const buttonRef = (0, import_react85.useRef)(null);
|
|
15640
15699
|
const { buttonProps, isPressed } = (0, import_react_aria43.useButton)({ onPress: handleNavClick }, buttonRef);
|
|
15641
15700
|
const { isFocusVisible, focusProps } = (0, import_react_aria43.useFocusRing)();
|
|
15642
15701
|
const { hoverProps, isHovered } = useHover({});
|
|
15643
|
-
return /* @__PURE__ */ (0,
|
|
15702
|
+
return /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(
|
|
15644
15703
|
"button",
|
|
15645
15704
|
{
|
|
15646
15705
|
ref: buttonRef,
|
|
@@ -15650,20 +15709,17 @@ function SectionNavLink(props) {
|
|
|
15650
15709
|
css: {
|
|
15651
15710
|
...Css.buttonBase.wsn.tal.smMd.blue600.px2.py1.br0.h100.$,
|
|
15652
15711
|
...isFocusVisible ? defaultFocusRingStyles : {},
|
|
15653
|
-
...active ?
|
|
15654
|
-
...isPressed ?
|
|
15712
|
+
...active ? activeStyles2 : {},
|
|
15713
|
+
...isPressed ? activeStyles2 : isHovered ? hoverStyles2 : {}
|
|
15655
15714
|
},
|
|
15656
15715
|
...tids.sectionNavLink,
|
|
15657
15716
|
children: section.title
|
|
15658
15717
|
}
|
|
15659
15718
|
);
|
|
15660
15719
|
}
|
|
15661
|
-
function SidebarContent() {
|
|
15662
|
-
return null;
|
|
15663
|
-
}
|
|
15664
15720
|
function useActiveSection(sectionsWithRefs) {
|
|
15665
|
-
const [activeSection, setActiveSection] = (0,
|
|
15666
|
-
(0,
|
|
15721
|
+
const [activeSection, setActiveSection] = (0, import_react85.useState)(null);
|
|
15722
|
+
(0, import_react85.useEffect)(() => {
|
|
15667
15723
|
if (!("IntersectionObserver" in window)) return;
|
|
15668
15724
|
const observer2 = new IntersectionObserver(
|
|
15669
15725
|
(entries) => {
|
|
@@ -15692,12 +15748,12 @@ function useActiveSection(sectionsWithRefs) {
|
|
|
15692
15748
|
}
|
|
15693
15749
|
|
|
15694
15750
|
// src/components/Layout/FullBleed.tsx
|
|
15695
|
-
var
|
|
15751
|
+
var import_react87 = require("react");
|
|
15696
15752
|
|
|
15697
15753
|
// src/components/Layout/ScrollableParent.tsx
|
|
15698
|
-
var
|
|
15699
|
-
var
|
|
15700
|
-
var ScrollableParentContext = (0,
|
|
15754
|
+
var import_react86 = require("react");
|
|
15755
|
+
var import_jsx_runtime121 = require("@emotion/react/jsx-runtime");
|
|
15756
|
+
var ScrollableParentContext = (0, import_react86.createContext)({
|
|
15701
15757
|
scrollableEl: null,
|
|
15702
15758
|
pr: 0,
|
|
15703
15759
|
pl: 0,
|
|
@@ -15706,14 +15762,14 @@ var ScrollableParentContext = (0, import_react85.createContext)({
|
|
|
15706
15762
|
});
|
|
15707
15763
|
function ScrollableParent(props) {
|
|
15708
15764
|
const { children, xss, tagName: Tag2 = "div" } = props;
|
|
15709
|
-
const scrollableEl = (0,
|
|
15765
|
+
const scrollableEl = (0, import_react86.useMemo)(() => {
|
|
15710
15766
|
const el = document.createElement("div");
|
|
15711
15767
|
el.style.height = "100%";
|
|
15712
15768
|
return el;
|
|
15713
15769
|
}, []);
|
|
15714
|
-
const [, setTick] = (0,
|
|
15770
|
+
const [, setTick] = (0, import_react86.useState)(0);
|
|
15715
15771
|
const hasScrollableContent = scrollableEl.childNodes.length > 0;
|
|
15716
|
-
const scrollableRef = (0,
|
|
15772
|
+
const scrollableRef = (0, import_react86.useRef)(null);
|
|
15717
15773
|
const { paddingLeft, paddingRight, ...otherXss } = xss || {};
|
|
15718
15774
|
const context = {
|
|
15719
15775
|
scrollableEl,
|
|
@@ -15721,11 +15777,11 @@ function ScrollableParent(props) {
|
|
|
15721
15777
|
pr: paddingRight ?? 0,
|
|
15722
15778
|
setPortalTick: setTick
|
|
15723
15779
|
};
|
|
15724
|
-
(0,
|
|
15780
|
+
(0, import_react86.useEffect)(() => {
|
|
15725
15781
|
scrollableRef.current.appendChild(scrollableEl);
|
|
15726
15782
|
}, [scrollableEl]);
|
|
15727
|
-
return /* @__PURE__ */ (0,
|
|
15728
|
-
/* @__PURE__ */ (0,
|
|
15783
|
+
return /* @__PURE__ */ (0, import_jsx_runtime121.jsx)(ScrollableParentContext.Provider, { value: context, children: /* @__PURE__ */ (0, import_jsx_runtime121.jsxs)(Tag2, { css: { ...Css.mh0.mw0.fg1.df.fdc.$, ...otherXss }, children: [
|
|
15784
|
+
/* @__PURE__ */ (0, import_jsx_runtime121.jsx)(
|
|
15729
15785
|
"div",
|
|
15730
15786
|
{
|
|
15731
15787
|
css: {
|
|
@@ -15735,37 +15791,37 @@ function ScrollableParent(props) {
|
|
|
15735
15791
|
children
|
|
15736
15792
|
}
|
|
15737
15793
|
),
|
|
15738
|
-
/* @__PURE__ */ (0,
|
|
15794
|
+
/* @__PURE__ */ (0, import_jsx_runtime121.jsx)("div", { css: Css.fg1.oa.$, ref: scrollableRef })
|
|
15739
15795
|
] }) });
|
|
15740
15796
|
}
|
|
15741
15797
|
function useScrollableParent() {
|
|
15742
|
-
return (0,
|
|
15798
|
+
return (0, import_react86.useContext)(ScrollableParentContext);
|
|
15743
15799
|
}
|
|
15744
15800
|
var scrollContainerBottomPadding = Css.addIn("&:after", Css.contentEmpty.db.h2.$).$;
|
|
15745
15801
|
|
|
15746
15802
|
// src/components/Layout/FullBleed.tsx
|
|
15747
15803
|
function FullBleed({ children, omitPadding = false }) {
|
|
15748
15804
|
const { pr, pl } = useScrollableParent();
|
|
15749
|
-
return !pr && !pl ? children : (0,
|
|
15805
|
+
return !pr && !pl ? children : (0, import_react87.cloneElement)(children, {
|
|
15750
15806
|
style: Css.ml(`-${pl}`).mr(`-${pr}`).if(!omitPadding).pl(pl).pr(pr).$
|
|
15751
15807
|
});
|
|
15752
15808
|
}
|
|
15753
15809
|
|
|
15754
15810
|
// src/components/Layout/PreventBrowserScroll.tsx
|
|
15755
|
-
var
|
|
15811
|
+
var import_jsx_runtime122 = require("@emotion/react/jsx-runtime");
|
|
15756
15812
|
function PreventBrowserScroll({ children }) {
|
|
15757
15813
|
return (
|
|
15758
15814
|
// Take over the full viewport and hide any overflown content.
|
|
15759
15815
|
// 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/
|
|
15760
15816
|
// 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.
|
|
15761
|
-
/* @__PURE__ */ (0,
|
|
15817
|
+
/* @__PURE__ */ (0, import_jsx_runtime122.jsx)("div", { css: Css.oh.vh100.mh("-webkit-fill-available").maxh("-webkit-fill-available").$, children: /* @__PURE__ */ (0, import_jsx_runtime122.jsx)("div", { css: Css.h100.df.fdc.mh0.oa.$, children }) })
|
|
15762
15818
|
);
|
|
15763
15819
|
}
|
|
15764
15820
|
|
|
15765
15821
|
// src/components/Layout/RightPaneLayout/RightPaneContext.tsx
|
|
15766
|
-
var
|
|
15767
|
-
var
|
|
15768
|
-
var RightPaneContext =
|
|
15822
|
+
var import_react88 = __toESM(require("react"), 1);
|
|
15823
|
+
var import_jsx_runtime123 = require("@emotion/react/jsx-runtime");
|
|
15824
|
+
var RightPaneContext = import_react88.default.createContext({
|
|
15769
15825
|
openInPane: () => {
|
|
15770
15826
|
},
|
|
15771
15827
|
closePane: () => {
|
|
@@ -15776,37 +15832,37 @@ var RightPaneContext = import_react87.default.createContext({
|
|
|
15776
15832
|
rightPaneContent: null
|
|
15777
15833
|
});
|
|
15778
15834
|
function RightPaneProvider({ children }) {
|
|
15779
|
-
const [rightPaneContent, setRightPaneContent] = (0,
|
|
15780
|
-
const [isRightPaneOpen, setIsRightPaneOpen] = (0,
|
|
15781
|
-
const openInPane = (0,
|
|
15835
|
+
const [rightPaneContent, setRightPaneContent] = (0, import_react88.useState)(void 0);
|
|
15836
|
+
const [isRightPaneOpen, setIsRightPaneOpen] = (0, import_react88.useState)(false);
|
|
15837
|
+
const openInPane = (0, import_react88.useCallback)(
|
|
15782
15838
|
(opts) => {
|
|
15783
15839
|
setRightPaneContent(opts?.content);
|
|
15784
15840
|
setIsRightPaneOpen(true);
|
|
15785
15841
|
},
|
|
15786
15842
|
[setRightPaneContent]
|
|
15787
15843
|
);
|
|
15788
|
-
const closePane = (0,
|
|
15789
|
-
const clearPane = (0,
|
|
15790
|
-
const context = (0,
|
|
15844
|
+
const closePane = (0, import_react88.useCallback)(() => setIsRightPaneOpen(false), []);
|
|
15845
|
+
const clearPane = (0, import_react88.useCallback)(() => setRightPaneContent(void 0), [setRightPaneContent]);
|
|
15846
|
+
const context = (0, import_react88.useMemo)(
|
|
15791
15847
|
() => ({ openInPane, closePane, clearPane, rightPaneContent, isRightPaneOpen }),
|
|
15792
15848
|
[openInPane, closePane, rightPaneContent, clearPane, isRightPaneOpen]
|
|
15793
15849
|
);
|
|
15794
|
-
return /* @__PURE__ */ (0,
|
|
15850
|
+
return /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(RightPaneContext.Provider, { value: context, children });
|
|
15795
15851
|
}
|
|
15796
15852
|
function useRightPaneContext() {
|
|
15797
|
-
return (0,
|
|
15853
|
+
return (0, import_react88.useContext)(RightPaneContext);
|
|
15798
15854
|
}
|
|
15799
15855
|
|
|
15800
15856
|
// src/components/Layout/RightPaneLayout/RightPaneLayout.tsx
|
|
15801
|
-
var
|
|
15802
|
-
var
|
|
15803
|
-
var
|
|
15857
|
+
var import_framer_motion3 = require("framer-motion");
|
|
15858
|
+
var import_react89 = require("react");
|
|
15859
|
+
var import_jsx_runtime124 = require("@emotion/react/jsx-runtime");
|
|
15804
15860
|
function RightPaneLayout(props) {
|
|
15805
15861
|
const { children, paneBgColor = "rgba(255,255,255,1)" /* White */, paneWidth = 450, defaultPaneContent } = props;
|
|
15806
15862
|
const { isRightPaneOpen, rightPaneContent, clearPane, closePane } = useRightPaneContext();
|
|
15807
|
-
(0,
|
|
15808
|
-
return /* @__PURE__ */ (0,
|
|
15809
|
-
/* @__PURE__ */ (0,
|
|
15863
|
+
(0, import_react89.useEffect)(() => closePane, [closePane]);
|
|
15864
|
+
return /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("div", { css: Css.h100.df.oxh.$, children: /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)(import_jsx_runtime124.Fragment, { children: [
|
|
15865
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)(
|
|
15810
15866
|
"div",
|
|
15811
15867
|
{
|
|
15812
15868
|
css: {
|
|
@@ -15817,16 +15873,16 @@ function RightPaneLayout(props) {
|
|
|
15817
15873
|
children
|
|
15818
15874
|
}
|
|
15819
15875
|
),
|
|
15820
|
-
/* @__PURE__ */ (0,
|
|
15821
|
-
defaultPaneContent && /* @__PURE__ */ (0,
|
|
15876
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsxs)("div", { css: Css.relative.if(!!defaultPaneContent).wPx(paneWidth).$, children: [
|
|
15877
|
+
defaultPaneContent && /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(
|
|
15822
15878
|
"div",
|
|
15823
15879
|
{
|
|
15824
15880
|
css: Css.h100.wPx(paneWidth).left(0).absolute.add("transition", "all .3s ease-in-out").if(isRightPaneOpen).add("opacity", 0).left(100).$,
|
|
15825
15881
|
children: defaultPaneContent
|
|
15826
15882
|
}
|
|
15827
15883
|
),
|
|
15828
|
-
/* @__PURE__ */ (0,
|
|
15829
|
-
|
|
15884
|
+
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)(import_framer_motion3.AnimatePresence, { children: isRightPaneOpen && /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(
|
|
15885
|
+
import_framer_motion3.motion.div,
|
|
15830
15886
|
{
|
|
15831
15887
|
layout: "position",
|
|
15832
15888
|
"data-testid": "rightPaneContent",
|
|
@@ -15854,21 +15910,21 @@ function useRightPane() {
|
|
|
15854
15910
|
}
|
|
15855
15911
|
|
|
15856
15912
|
// src/components/Layout/ScrollableContent.tsx
|
|
15857
|
-
var
|
|
15913
|
+
var import_react90 = require("react");
|
|
15858
15914
|
var import_react_dom4 = require("react-dom");
|
|
15859
|
-
var
|
|
15915
|
+
var import_jsx_runtime125 = require("@emotion/react/jsx-runtime");
|
|
15860
15916
|
function ScrollableContent(props) {
|
|
15861
15917
|
const { children, virtualized = false, omitBottomPadding, bgColor } = props;
|
|
15862
15918
|
const { scrollableEl, setPortalTick, pl, pr } = useScrollableParent();
|
|
15863
|
-
(0,
|
|
15919
|
+
(0, import_react90.useEffect)(() => {
|
|
15864
15920
|
setPortalTick((prev) => prev + 1);
|
|
15865
15921
|
return () => setPortalTick((prev) => prev + 1);
|
|
15866
15922
|
}, [setPortalTick]);
|
|
15867
15923
|
if (!scrollableEl) {
|
|
15868
|
-
return /* @__PURE__ */ (0,
|
|
15924
|
+
return /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(import_jsx_runtime125.Fragment, { children });
|
|
15869
15925
|
}
|
|
15870
15926
|
return (0, import_react_dom4.createPortal)(
|
|
15871
|
-
/* @__PURE__ */ (0,
|
|
15927
|
+
/* @__PURE__ */ (0, import_jsx_runtime125.jsx)(
|
|
15872
15928
|
"div",
|
|
15873
15929
|
{
|
|
15874
15930
|
css: {
|
|
@@ -15884,9 +15940,9 @@ function ScrollableContent(props) {
|
|
|
15884
15940
|
}
|
|
15885
15941
|
|
|
15886
15942
|
// src/components/Toast/ToastContext.tsx
|
|
15887
|
-
var
|
|
15888
|
-
var
|
|
15889
|
-
var ToastContext = (0,
|
|
15943
|
+
var import_react91 = require("react");
|
|
15944
|
+
var import_jsx_runtime126 = require("@emotion/react/jsx-runtime");
|
|
15945
|
+
var ToastContext = (0, import_react91.createContext)({
|
|
15890
15946
|
setNotice: () => {
|
|
15891
15947
|
throw new Error("Missing ToastProvider");
|
|
15892
15948
|
},
|
|
@@ -15895,18 +15951,18 @@ var ToastContext = (0, import_react90.createContext)({
|
|
|
15895
15951
|
notice: void 0
|
|
15896
15952
|
});
|
|
15897
15953
|
function ToastProvider(props) {
|
|
15898
|
-
const [notice, setNotice] = (0,
|
|
15899
|
-
const clear = (0,
|
|
15900
|
-
const contextValue = (0,
|
|
15901
|
-
return /* @__PURE__ */ (0,
|
|
15954
|
+
const [notice, setNotice] = (0, import_react91.useState)();
|
|
15955
|
+
const clear = (0, import_react91.useCallback)(() => setNotice(void 0), [setNotice]);
|
|
15956
|
+
const contextValue = (0, import_react91.useMemo)(() => ({ setNotice, notice, clear }), [notice, clear]);
|
|
15957
|
+
return /* @__PURE__ */ (0, import_jsx_runtime126.jsx)(ToastContext.Provider, { value: contextValue, children: props.children });
|
|
15902
15958
|
}
|
|
15903
15959
|
function useToastContext() {
|
|
15904
|
-
return (0,
|
|
15960
|
+
return (0, import_react91.useContext)(ToastContext);
|
|
15905
15961
|
}
|
|
15906
15962
|
|
|
15907
15963
|
// src/components/BeamContext.tsx
|
|
15908
|
-
var
|
|
15909
|
-
var BeamContext = (0,
|
|
15964
|
+
var import_jsx_runtime127 = require("@emotion/react/jsx-runtime");
|
|
15965
|
+
var BeamContext = (0, import_react92.createContext)({
|
|
15910
15966
|
modalState: new EmptyRef(),
|
|
15911
15967
|
modalCanCloseChecks: new EmptyRef(),
|
|
15912
15968
|
modalHeaderDiv: void 0,
|
|
@@ -15918,21 +15974,21 @@ var BeamContext = (0, import_react91.createContext)({
|
|
|
15918
15974
|
sdHeaderDiv: void 0
|
|
15919
15975
|
});
|
|
15920
15976
|
function BeamProvider({ children, ...presentationProps }) {
|
|
15921
|
-
const [, tick] = (0,
|
|
15922
|
-
const modalRef = (0,
|
|
15923
|
-
const modalHeaderDiv = (0,
|
|
15924
|
-
const modalBodyDiv = (0,
|
|
15977
|
+
const [, tick] = (0, import_react92.useReducer)((prev) => prev + 1, 0);
|
|
15978
|
+
const modalRef = (0, import_react92.useRef)();
|
|
15979
|
+
const modalHeaderDiv = (0, import_react92.useMemo)(() => document.createElement("div"), []);
|
|
15980
|
+
const modalBodyDiv = (0, import_react92.useMemo)(() => {
|
|
15925
15981
|
const el = document.createElement("div");
|
|
15926
15982
|
el.style.height = "100%";
|
|
15927
15983
|
return el;
|
|
15928
15984
|
}, []);
|
|
15929
|
-
const modalCanCloseChecksRef = (0,
|
|
15930
|
-
const modalFooterDiv = (0,
|
|
15931
|
-
const drawerContentStackRef = (0,
|
|
15932
|
-
const drawerCanCloseChecks = (0,
|
|
15933
|
-
const drawerCanCloseDetailsChecks = (0,
|
|
15934
|
-
const sdHeaderDiv = (0,
|
|
15935
|
-
const context = (0,
|
|
15985
|
+
const modalCanCloseChecksRef = (0, import_react92.useRef)([]);
|
|
15986
|
+
const modalFooterDiv = (0, import_react92.useMemo)(() => document.createElement("div"), []);
|
|
15987
|
+
const drawerContentStackRef = (0, import_react92.useRef)([]);
|
|
15988
|
+
const drawerCanCloseChecks = (0, import_react92.useRef)([]);
|
|
15989
|
+
const drawerCanCloseDetailsChecks = (0, import_react92.useRef)([]);
|
|
15990
|
+
const sdHeaderDiv = (0, import_react92.useMemo)(() => document.createElement("div"), []);
|
|
15991
|
+
const context = (0, import_react92.useMemo)(() => {
|
|
15936
15992
|
return {
|
|
15937
15993
|
// These two keys need to trigger re-renders on change
|
|
15938
15994
|
modalState: new PretendRefThatTicks(modalRef, tick),
|
|
@@ -15947,12 +16003,12 @@ function BeamProvider({ children, ...presentationProps }) {
|
|
|
15947
16003
|
sdHeaderDiv
|
|
15948
16004
|
};
|
|
15949
16005
|
}, [modalBodyDiv, modalFooterDiv, modalHeaderDiv, sdHeaderDiv]);
|
|
15950
|
-
return /* @__PURE__ */ (0,
|
|
15951
|
-
/* @__PURE__ */ (0,
|
|
16006
|
+
return /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(BeamContext.Provider, { value: { ...context }, children: /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(PresentationProvider, { ...presentationProps, children: /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(RightPaneProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(AutoSaveStatusProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(SnackbarProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)(ToastProvider, { children: [
|
|
16007
|
+
/* @__PURE__ */ (0, import_jsx_runtime127.jsxs)(import_react_aria44.OverlayProvider, { children: [
|
|
15952
16008
|
children,
|
|
15953
|
-
modalRef.current && /* @__PURE__ */ (0,
|
|
16009
|
+
modalRef.current && /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(Modal, { ...modalRef.current })
|
|
15954
16010
|
] }),
|
|
15955
|
-
/* @__PURE__ */ (0,
|
|
16011
|
+
/* @__PURE__ */ (0, import_jsx_runtime127.jsx)(SuperDrawer, {})
|
|
15956
16012
|
] }) }) }) }) }) });
|
|
15957
16013
|
}
|
|
15958
16014
|
var PretendRefThatTicks = class {
|
|
@@ -15969,24 +16025,24 @@ var PretendRefThatTicks = class {
|
|
|
15969
16025
|
}
|
|
15970
16026
|
};
|
|
15971
16027
|
function useBeamContext() {
|
|
15972
|
-
return (0,
|
|
16028
|
+
return (0, import_react92.useContext)(BeamContext);
|
|
15973
16029
|
}
|
|
15974
16030
|
|
|
15975
16031
|
// src/components/ButtonDatePicker.tsx
|
|
15976
|
-
var
|
|
16032
|
+
var import_react93 = require("react");
|
|
15977
16033
|
var import_react_aria45 = require("react-aria");
|
|
15978
16034
|
var import_react_stately17 = require("react-stately");
|
|
15979
|
-
var
|
|
16035
|
+
var import_jsx_runtime128 = require("@emotion/react/jsx-runtime");
|
|
15980
16036
|
function ButtonDatePicker(props) {
|
|
15981
16037
|
const { defaultOpen, disabled, trigger, onSelect, ...datePickerProps } = props;
|
|
15982
16038
|
const state = (0, import_react_stately17.useMenuTriggerState)({ isOpen: defaultOpen });
|
|
15983
|
-
const buttonRef = (0,
|
|
16039
|
+
const buttonRef = (0, import_react93.useRef)(null);
|
|
15984
16040
|
const { menuTriggerProps, menuProps } = (0, import_react_aria45.useMenuTrigger)({ isDisabled: !!disabled }, state, buttonRef);
|
|
15985
16041
|
const tid = useTestIds(
|
|
15986
16042
|
props,
|
|
15987
16043
|
isTextButton(trigger) ? defaultTestId(labelOr(trigger, "buttonDatePicker")) : isNavLinkButton(trigger) ? defaultTestId(trigger.navLabel) : isIconButton(trigger) ? trigger.icon : trigger.name
|
|
15988
16044
|
);
|
|
15989
|
-
return /* @__PURE__ */ (0,
|
|
16045
|
+
return /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(OverlayTrigger, { ...props, menuTriggerProps, state, buttonRef, ...tid, children: /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(DatePickerOverlay, { overlayProps: menuProps, children: /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
|
|
15990
16046
|
DatePicker,
|
|
15991
16047
|
{
|
|
15992
16048
|
...datePickerProps,
|
|
@@ -16000,9 +16056,9 @@ function ButtonDatePicker(props) {
|
|
|
16000
16056
|
}
|
|
16001
16057
|
|
|
16002
16058
|
// src/components/ButtonGroup.tsx
|
|
16003
|
-
var
|
|
16059
|
+
var import_react94 = require("react");
|
|
16004
16060
|
var import_react_aria46 = require("react-aria");
|
|
16005
|
-
var
|
|
16061
|
+
var import_jsx_runtime129 = (
|
|
16006
16062
|
// Disable the button if the ButtonGroup is disabled or if the current button is disabled.
|
|
16007
16063
|
require("@emotion/react/jsx-runtime")
|
|
16008
16064
|
);
|
|
@@ -16011,21 +16067,21 @@ function ButtonGroup(props) {
|
|
|
16011
16067
|
const tid = useTestIds(props, "buttonGroup");
|
|
16012
16068
|
return (
|
|
16013
16069
|
// Adding `line-height: 0` prevent inheriting line-heights that might throw off sizing within the button group.
|
|
16014
|
-
/* @__PURE__ */ (0,
|
|
16070
|
+
/* @__PURE__ */ (0, import_jsx_runtime129.jsx)("div", { ...tid, css: Css.df.lh(0).add({ ...sizeStyles2[size] }).$, children: buttons.map(({ disabled: buttonDisabled, ...buttonProps }, i) => /* @__PURE__ */ (0, import_jsx_runtime129.jsx)(GroupButton, { ...buttonProps, disabled: disabled || buttonDisabled, size, ...tid }, i)) })
|
|
16015
16071
|
);
|
|
16016
16072
|
}
|
|
16017
16073
|
function GroupButton(props) {
|
|
16018
16074
|
const { icon, iconInc, iconColor, text, active, onClick: onPress, disabled, size, tooltip, ...otherProps } = props;
|
|
16019
16075
|
const ariaProps = { onPress, isDisabled: !!disabled, ...otherProps };
|
|
16020
|
-
const ref = (0,
|
|
16076
|
+
const ref = (0, import_react94.useRef)(null);
|
|
16021
16077
|
const { buttonProps, isPressed } = (0, import_react_aria46.useButton)(ariaProps, ref);
|
|
16022
16078
|
const { isFocusVisible, focusProps } = (0, import_react_aria46.useFocusRing)();
|
|
16023
16079
|
const { hoverProps, isHovered } = (0, import_react_aria46.useHover)(ariaProps);
|
|
16024
16080
|
const tid = useTestIds(props);
|
|
16025
|
-
return /* @__PURE__ */ (0,
|
|
16081
|
+
return /* @__PURE__ */ (0, import_jsx_runtime129.jsx)("span", { css: getButtonStyles2(), children: maybeTooltip({
|
|
16026
16082
|
title: resolveTooltip(disabled, tooltip),
|
|
16027
16083
|
placement: "top",
|
|
16028
|
-
children: /* @__PURE__ */ (0,
|
|
16084
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime129.jsxs)(
|
|
16029
16085
|
"button",
|
|
16030
16086
|
{
|
|
16031
16087
|
ref,
|
|
@@ -16036,13 +16092,13 @@ function GroupButton(props) {
|
|
|
16036
16092
|
...Css.buttonBase.px2.br0.h100.$,
|
|
16037
16093
|
"&:disabled": Css.gray400.cursorNotAllowed.bcGray300.$,
|
|
16038
16094
|
...isFocusVisible ? defaultFocusRingStyles2 : {},
|
|
16039
|
-
...active ?
|
|
16095
|
+
...active ? activeStyles3 : {},
|
|
16040
16096
|
...isPressed ? pressedStyles2 : isHovered ? hoverStyles3 : {},
|
|
16041
16097
|
...icon ? iconStyles2[size] : {}
|
|
16042
16098
|
},
|
|
16043
16099
|
...tid[defaultTestId(typeof text === "string" && text || icon || "button")],
|
|
16044
16100
|
children: [
|
|
16045
|
-
icon && /* @__PURE__ */ (0,
|
|
16101
|
+
icon && /* @__PURE__ */ (0, import_jsx_runtime129.jsx)(Icon, { xss: Css.if(!!text).mrPx(4).$, icon, color: disabled ? void 0 : iconColor, inc: iconInc }),
|
|
16046
16102
|
text
|
|
16047
16103
|
]
|
|
16048
16104
|
}
|
|
@@ -16050,7 +16106,7 @@ function GroupButton(props) {
|
|
|
16050
16106
|
}) });
|
|
16051
16107
|
}
|
|
16052
16108
|
var pressedStyles2 = Css.bgGray200.$;
|
|
16053
|
-
var
|
|
16109
|
+
var activeStyles3 = Css.bgGray300.$;
|
|
16054
16110
|
var hoverStyles3 = Css.bgGray100.$;
|
|
16055
16111
|
var defaultFocusRingStyles2 = Css.relative.z2.bshFocus.$;
|
|
16056
16112
|
function getButtonStyles2() {
|
|
@@ -16076,10 +16132,10 @@ var iconStyles2 = {
|
|
|
16076
16132
|
};
|
|
16077
16133
|
|
|
16078
16134
|
// src/components/ButtonMenu.tsx
|
|
16079
|
-
var
|
|
16135
|
+
var import_react95 = require("react");
|
|
16080
16136
|
var import_react_aria47 = require("react-aria");
|
|
16081
16137
|
var import_react_stately18 = require("react-stately");
|
|
16082
|
-
var
|
|
16138
|
+
var import_jsx_runtime130 = require("@emotion/react/jsx-runtime");
|
|
16083
16139
|
function ButtonMenu(props) {
|
|
16084
16140
|
const { defaultOpen, disabled, items, persistentItems, trigger, searchable, contrast = false } = props;
|
|
16085
16141
|
let selectedItem, onChange;
|
|
@@ -16088,13 +16144,13 @@ function ButtonMenu(props) {
|
|
|
16088
16144
|
onChange = props.onChange;
|
|
16089
16145
|
}
|
|
16090
16146
|
const state = (0, import_react_stately18.useMenuTriggerState)({ isOpen: defaultOpen });
|
|
16091
|
-
const buttonRef = (0,
|
|
16147
|
+
const buttonRef = (0, import_react95.useRef)(null);
|
|
16092
16148
|
const { menuTriggerProps, menuProps } = (0, import_react_aria47.useMenuTrigger)({ isDisabled: !!disabled }, state, buttonRef);
|
|
16093
16149
|
const tid = useTestIds(
|
|
16094
16150
|
props,
|
|
16095
16151
|
isTextButton(trigger) ? labelOr(trigger, "buttonMenu") : isNavLinkButton(trigger) ? defaultTestId(trigger.navLabel) : isIconButton(trigger) ? trigger.icon : trigger.name
|
|
16096
16152
|
);
|
|
16097
|
-
return /* @__PURE__ */ (0,
|
|
16153
|
+
return /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
|
|
16098
16154
|
OverlayTrigger,
|
|
16099
16155
|
{
|
|
16100
16156
|
...props,
|
|
@@ -16103,7 +16159,7 @@ function ButtonMenu(props) {
|
|
|
16103
16159
|
buttonRef,
|
|
16104
16160
|
...tid,
|
|
16105
16161
|
contrast,
|
|
16106
|
-
children: /* @__PURE__ */ (0,
|
|
16162
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
|
|
16107
16163
|
Menu,
|
|
16108
16164
|
{
|
|
16109
16165
|
ariaMenuProps: menuProps,
|
|
@@ -16125,9 +16181,9 @@ function isSelectionButtonMenuProps(props) {
|
|
|
16125
16181
|
}
|
|
16126
16182
|
|
|
16127
16183
|
// src/components/Copy.tsx
|
|
16128
|
-
var
|
|
16184
|
+
var import_jsx_runtime131 = require("@emotion/react/jsx-runtime");
|
|
16129
16185
|
function Copy(props) {
|
|
16130
|
-
return /* @__PURE__ */ (0,
|
|
16186
|
+
return /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(
|
|
16131
16187
|
"div",
|
|
16132
16188
|
{
|
|
16133
16189
|
css: {
|
|
@@ -16141,43 +16197,43 @@ function Copy(props) {
|
|
|
16141
16197
|
|
|
16142
16198
|
// src/components/DnDGrid/DnDGrid.tsx
|
|
16143
16199
|
var import_fast_deep_equal2 = __toESM(require("fast-deep-equal"), 1);
|
|
16144
|
-
var
|
|
16200
|
+
var import_react97 = require("react");
|
|
16145
16201
|
|
|
16146
16202
|
// src/components/DnDGrid/DnDGridContext.tsx
|
|
16147
|
-
var
|
|
16148
|
-
var DnDGridContext = (0,
|
|
16203
|
+
var import_react96 = require("react");
|
|
16204
|
+
var DnDGridContext = (0, import_react96.createContext)({
|
|
16149
16205
|
dragEl: { current: void 0 },
|
|
16150
16206
|
onDragHandleKeyDown: () => {
|
|
16151
16207
|
}
|
|
16152
16208
|
});
|
|
16153
16209
|
function useDnDGridContext() {
|
|
16154
|
-
return (0,
|
|
16210
|
+
return (0, import_react96.useContext)(DnDGridContext);
|
|
16155
16211
|
}
|
|
16156
16212
|
|
|
16157
16213
|
// src/components/DnDGrid/DnDGrid.tsx
|
|
16158
|
-
var
|
|
16214
|
+
var import_jsx_runtime132 = require("@emotion/react/jsx-runtime");
|
|
16159
16215
|
function DnDGrid(props) {
|
|
16160
16216
|
const { children, gridStyles, onReorder, activeItemStyles } = props;
|
|
16161
|
-
const gridEl = (0,
|
|
16162
|
-
const dragEl = (0,
|
|
16163
|
-
const cloneEl = (0,
|
|
16164
|
-
const initialOrder = (0,
|
|
16165
|
-
const reorderViaKeyboard = (0,
|
|
16166
|
-
const transformFrom = (0,
|
|
16217
|
+
const gridEl = (0, import_react97.useRef)(null);
|
|
16218
|
+
const dragEl = (0, import_react97.useRef)();
|
|
16219
|
+
const cloneEl = (0, import_react97.useRef)();
|
|
16220
|
+
const initialOrder = (0, import_react97.useRef)();
|
|
16221
|
+
const reorderViaKeyboard = (0, import_react97.useRef)(false);
|
|
16222
|
+
const transformFrom = (0, import_react97.useRef)({ x: 0, y: 0 });
|
|
16167
16223
|
const tid = useTestIds(props, "dndGrid");
|
|
16168
|
-
const getGridItems = (0,
|
|
16224
|
+
const getGridItems = (0, import_react97.useCallback)(() => {
|
|
16169
16225
|
return gridEl.current ? Array.from(gridEl.current.querySelectorAll(`[${gridItemIdKey}]`)) : [];
|
|
16170
16226
|
}, []);
|
|
16171
|
-
const getGridItemIdOrder = (0,
|
|
16227
|
+
const getGridItemIdOrder = (0, import_react97.useCallback)(() => {
|
|
16172
16228
|
return getGridItems().map((child) => child.getAttribute(gridItemIdKey)).filter(isDefined);
|
|
16173
16229
|
}, [getGridItems]);
|
|
16174
|
-
const initReorder = (0,
|
|
16230
|
+
const initReorder = (0, import_react97.useCallback)(() => {
|
|
16175
16231
|
if (gridEl.current && dragEl.current) {
|
|
16176
16232
|
initialOrder.current = getGridItemIdOrder();
|
|
16177
16233
|
dragEl.current.classList.add(activeGridItemClass);
|
|
16178
16234
|
}
|
|
16179
16235
|
}, [getGridItemIdOrder]);
|
|
16180
|
-
const commitReorder = (0,
|
|
16236
|
+
const commitReorder = (0, import_react97.useCallback)(() => {
|
|
16181
16237
|
if (gridEl.current && dragEl.current) {
|
|
16182
16238
|
const currentOrder = getGridItemIdOrder();
|
|
16183
16239
|
if (!(0, import_fast_deep_equal2.default)(currentOrder, initialOrder.current)) onReorder(currentOrder);
|
|
@@ -16187,7 +16243,7 @@ function DnDGrid(props) {
|
|
|
16187
16243
|
initialOrder.current = currentOrder;
|
|
16188
16244
|
}
|
|
16189
16245
|
}, [onReorder, getGridItemIdOrder]);
|
|
16190
|
-
const cancelReorder = (0,
|
|
16246
|
+
const cancelReorder = (0, import_react97.useCallback)(() => {
|
|
16191
16247
|
if (gridEl.current && dragEl.current && initialOrder.current) {
|
|
16192
16248
|
const currentOrder = getGridItemIdOrder();
|
|
16193
16249
|
if (!(0, import_fast_deep_equal2.default)(currentOrder, initialOrder.current)) {
|
|
@@ -16209,7 +16265,7 @@ function DnDGrid(props) {
|
|
|
16209
16265
|
reorderViaKeyboard.current = false;
|
|
16210
16266
|
}
|
|
16211
16267
|
}, [getGridItemIdOrder, getGridItems]);
|
|
16212
|
-
const onMove = (0,
|
|
16268
|
+
const onMove = (0, import_react97.useCallback)((e) => {
|
|
16213
16269
|
if (!reorderViaKeyboard.current && dragEl.current && cloneEl.current && gridEl.current) {
|
|
16214
16270
|
const clientX = "clientX" in e ? e.clientX : e.touches[0].clientX;
|
|
16215
16271
|
const clientY = "clientY" in e ? e.clientY : e.touches[0].clientY;
|
|
@@ -16230,7 +16286,7 @@ function DnDGrid(props) {
|
|
|
16230
16286
|
}
|
|
16231
16287
|
}
|
|
16232
16288
|
}, []);
|
|
16233
|
-
const onDragStart = (0,
|
|
16289
|
+
const onDragStart = (0, import_react97.useCallback)(
|
|
16234
16290
|
(e) => {
|
|
16235
16291
|
if (!reorderViaKeyboard.current && dragEl.current && gridEl.current) {
|
|
16236
16292
|
initReorder();
|
|
@@ -16261,7 +16317,7 @@ function DnDGrid(props) {
|
|
|
16261
16317
|
},
|
|
16262
16318
|
[initReorder, onMove]
|
|
16263
16319
|
);
|
|
16264
|
-
const onDragEnd = (0,
|
|
16320
|
+
const onDragEnd = (0, import_react97.useCallback)(
|
|
16265
16321
|
(e) => {
|
|
16266
16322
|
if (!reorderViaKeyboard.current && dragEl.current && cloneEl.current && gridEl.current) {
|
|
16267
16323
|
e.preventDefault();
|
|
@@ -16277,7 +16333,7 @@ function DnDGrid(props) {
|
|
|
16277
16333
|
},
|
|
16278
16334
|
[commitReorder, onMove]
|
|
16279
16335
|
);
|
|
16280
|
-
const onDragHandleKeyDown = (0,
|
|
16336
|
+
const onDragHandleKeyDown = (0, import_react97.useCallback)(
|
|
16281
16337
|
(e) => {
|
|
16282
16338
|
const moveHandle = e.target;
|
|
16283
16339
|
if (dragEl.current instanceof HTMLElement && moveHandle instanceof HTMLElement && gridEl.current) {
|
|
@@ -16328,7 +16384,7 @@ function DnDGrid(props) {
|
|
|
16328
16384
|
},
|
|
16329
16385
|
[cancelReorder, commitReorder, initReorder, getGridItems]
|
|
16330
16386
|
);
|
|
16331
|
-
return /* @__PURE__ */ (0,
|
|
16387
|
+
return /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(DnDGridContext.Provider, { value: { dragEl, onDragHandleKeyDown }, children: /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(
|
|
16332
16388
|
"div",
|
|
16333
16389
|
{
|
|
16334
16390
|
ref: gridEl,
|
|
@@ -16351,7 +16407,7 @@ var activeGridItemClass = "dndgrid-active";
|
|
|
16351
16407
|
|
|
16352
16408
|
// src/components/DnDGrid/DnDGridItemHandle.tsx
|
|
16353
16409
|
var import_react_aria48 = require("react-aria");
|
|
16354
|
-
var
|
|
16410
|
+
var import_jsx_runtime133 = require("@emotion/react/jsx-runtime");
|
|
16355
16411
|
function DnDGridItemHandle(props) {
|
|
16356
16412
|
const { dragHandleProps, icon = "move", compact = false, color } = props;
|
|
16357
16413
|
const { focusProps, isFocusVisible } = (0, import_react_aria48.useFocusRing)();
|
|
@@ -16359,7 +16415,7 @@ function DnDGridItemHandle(props) {
|
|
|
16359
16415
|
const tid = useTestIds(props, "dragHandle");
|
|
16360
16416
|
const iconButtonNormal2 = Css.hPx(28).wPx(28).br8.bw2.$;
|
|
16361
16417
|
const iconButtonCompact2 = Css.hPx(18).wPx(18).br4.bw1.$;
|
|
16362
|
-
return /* @__PURE__ */ (0,
|
|
16418
|
+
return /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
|
|
16363
16419
|
"button",
|
|
16364
16420
|
{
|
|
16365
16421
|
css: {
|
|
@@ -16369,17 +16425,17 @@ function DnDGridItemHandle(props) {
|
|
|
16369
16425
|
},
|
|
16370
16426
|
...(0, import_react_aria48.mergeProps)(dragHandleProps, focusProps, hoverProps),
|
|
16371
16427
|
...tid,
|
|
16372
|
-
children: /* @__PURE__ */ (0,
|
|
16428
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(Icon, { icon, inc: compact ? 2 : void 0, color })
|
|
16373
16429
|
}
|
|
16374
16430
|
);
|
|
16375
16431
|
}
|
|
16376
16432
|
|
|
16377
16433
|
// src/components/DnDGrid/useDnDGridItem.tsx
|
|
16378
|
-
var
|
|
16434
|
+
var import_react98 = require("react");
|
|
16379
16435
|
function useDnDGridItem(props) {
|
|
16380
16436
|
const { id, itemRef } = props;
|
|
16381
16437
|
const { dragEl, onDragHandleKeyDown } = useDnDGridContext();
|
|
16382
|
-
const { dragItemProps, dragHandleProps } = (0,
|
|
16438
|
+
const { dragItemProps, dragHandleProps } = (0, import_react98.useMemo)(
|
|
16383
16439
|
() => {
|
|
16384
16440
|
function initDraggable() {
|
|
16385
16441
|
if (itemRef.current) {
|
|
@@ -16423,7 +16479,7 @@ var BaseFilter = class {
|
|
|
16423
16479
|
};
|
|
16424
16480
|
|
|
16425
16481
|
// src/components/Filters/DateFilter.tsx
|
|
16426
|
-
var
|
|
16482
|
+
var import_jsx_runtime134 = require("@emotion/react/jsx-runtime");
|
|
16427
16483
|
function dateFilter(props) {
|
|
16428
16484
|
return (key) => new DateFilter(key, props);
|
|
16429
16485
|
}
|
|
@@ -16431,10 +16487,10 @@ var anyOption = {};
|
|
|
16431
16487
|
var DateFilter = class extends BaseFilter {
|
|
16432
16488
|
render(value, setValue, tid, inModal, vertical) {
|
|
16433
16489
|
const { label, operations, getOperationValue, getOperationLabel } = this.props;
|
|
16434
|
-
return /* @__PURE__ */ (0,
|
|
16435
|
-
vertical && /* @__PURE__ */ (0,
|
|
16436
|
-
/* @__PURE__ */ (0,
|
|
16437
|
-
/* @__PURE__ */ (0,
|
|
16490
|
+
return /* @__PURE__ */ (0, import_jsx_runtime134.jsxs)(import_jsx_runtime134.Fragment, { children: [
|
|
16491
|
+
vertical && /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(Label, { label }),
|
|
16492
|
+
/* @__PURE__ */ (0, import_jsx_runtime134.jsxs)(CompoundField, { children: [
|
|
16493
|
+
/* @__PURE__ */ (0, import_jsx_runtime134.jsx)(
|
|
16438
16494
|
SelectField,
|
|
16439
16495
|
{
|
|
16440
16496
|
compact: true,
|
|
@@ -16457,7 +16513,7 @@ var DateFilter = class extends BaseFilter {
|
|
|
16457
16513
|
...tid[`${defaultTestId(this.label)}_dateOperation`]
|
|
16458
16514
|
}
|
|
16459
16515
|
),
|
|
16460
|
-
/* @__PURE__ */ (0,
|
|
16516
|
+
/* @__PURE__ */ (0, import_jsx_runtime134.jsx)(
|
|
16461
16517
|
DateField,
|
|
16462
16518
|
{
|
|
16463
16519
|
compact: true,
|
|
@@ -16475,16 +16531,16 @@ var DateFilter = class extends BaseFilter {
|
|
|
16475
16531
|
};
|
|
16476
16532
|
|
|
16477
16533
|
// src/components/Filters/DateRangeFilter.tsx
|
|
16478
|
-
var
|
|
16534
|
+
var import_jsx_runtime135 = require("@emotion/react/jsx-runtime");
|
|
16479
16535
|
function dateRangeFilter(props) {
|
|
16480
16536
|
return (key) => new DateRangeFilter(key, props);
|
|
16481
16537
|
}
|
|
16482
16538
|
var DateRangeFilter = class extends BaseFilter {
|
|
16483
16539
|
render(value, setValue, tid, inModal, vertical) {
|
|
16484
16540
|
const { label, placeholderText, disabledDays, testFieldLabel, defaultValue } = this.props;
|
|
16485
|
-
return /* @__PURE__ */ (0,
|
|
16486
|
-
vertical && /* @__PURE__ */ (0,
|
|
16487
|
-
/* @__PURE__ */ (0,
|
|
16541
|
+
return /* @__PURE__ */ (0, import_jsx_runtime135.jsxs)(import_jsx_runtime135.Fragment, { children: [
|
|
16542
|
+
vertical && /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(Label, { label }),
|
|
16543
|
+
/* @__PURE__ */ (0, import_jsx_runtime135.jsx)(
|
|
16488
16544
|
DateRangeField,
|
|
16489
16545
|
{
|
|
16490
16546
|
compact: true,
|
|
@@ -16503,7 +16559,7 @@ var DateRangeFilter = class extends BaseFilter {
|
|
|
16503
16559
|
};
|
|
16504
16560
|
|
|
16505
16561
|
// src/components/Filters/MultiFilter.tsx
|
|
16506
|
-
var
|
|
16562
|
+
var import_jsx_runtime136 = require("@emotion/react/jsx-runtime");
|
|
16507
16563
|
function multiFilter(props) {
|
|
16508
16564
|
return (key) => new MultiFilter(key, props);
|
|
16509
16565
|
}
|
|
@@ -16513,7 +16569,7 @@ var MultiFilter = class extends BaseFilter {
|
|
|
16513
16569
|
const { disabledOptions } = this.props;
|
|
16514
16570
|
const disabledOptionsWithReasons = Object.fromEntries(disabledOptions?.map(disabledOptionToKeyedTuple) ?? []);
|
|
16515
16571
|
const disabledKeys = Object.keys(disabledOptionsWithReasons);
|
|
16516
|
-
return /* @__PURE__ */ (0,
|
|
16572
|
+
return /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(
|
|
16517
16573
|
ToggleChipGroup,
|
|
16518
16574
|
{
|
|
16519
16575
|
label: this.label,
|
|
@@ -16537,7 +16593,7 @@ var MultiFilter = class extends BaseFilter {
|
|
|
16537
16593
|
);
|
|
16538
16594
|
}
|
|
16539
16595
|
const { defaultValue, nothingSelectedText, ...props } = this.props;
|
|
16540
|
-
return /* @__PURE__ */ (0,
|
|
16596
|
+
return /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(
|
|
16541
16597
|
MultiSelectField,
|
|
16542
16598
|
{
|
|
16543
16599
|
...props,
|
|
@@ -16557,7 +16613,7 @@ var MultiFilter = class extends BaseFilter {
|
|
|
16557
16613
|
};
|
|
16558
16614
|
|
|
16559
16615
|
// src/components/Filters/NumberRangeFilter.tsx
|
|
16560
|
-
var
|
|
16616
|
+
var import_jsx_runtime137 = require("@emotion/react/jsx-runtime");
|
|
16561
16617
|
function numberRangeFilter(props) {
|
|
16562
16618
|
return (key) => new NumberRangeFilter(key, props);
|
|
16563
16619
|
}
|
|
@@ -16566,10 +16622,10 @@ var NumberRangeFilter = class extends BaseFilter {
|
|
|
16566
16622
|
const { label, numberFieldType, numberFormatOptions } = this.props;
|
|
16567
16623
|
const min = value?.min ?? void 0;
|
|
16568
16624
|
const max = value?.max ?? void 0;
|
|
16569
|
-
return /* @__PURE__ */ (0,
|
|
16570
|
-
vertical && /* @__PURE__ */ (0,
|
|
16571
|
-
/* @__PURE__ */ (0,
|
|
16572
|
-
/* @__PURE__ */ (0,
|
|
16625
|
+
return /* @__PURE__ */ (0, import_jsx_runtime137.jsxs)(import_jsx_runtime137.Fragment, { children: [
|
|
16626
|
+
vertical && /* @__PURE__ */ (0, import_jsx_runtime137.jsxs)("div", { ...tid, children: [
|
|
16627
|
+
/* @__PURE__ */ (0, import_jsx_runtime137.jsx)(Label, { label }),
|
|
16628
|
+
/* @__PURE__ */ (0, import_jsx_runtime137.jsx)("div", { css: Css.pb1.$, children: /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
|
|
16573
16629
|
NumberField,
|
|
16574
16630
|
{
|
|
16575
16631
|
labelStyle: "inline",
|
|
@@ -16585,7 +16641,7 @@ var NumberRangeFilter = class extends BaseFilter {
|
|
|
16585
16641
|
...tid[`${defaultTestId(label)}_min_vertical`]
|
|
16586
16642
|
}
|
|
16587
16643
|
) }),
|
|
16588
|
-
/* @__PURE__ */ (0,
|
|
16644
|
+
/* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
|
|
16589
16645
|
NumberField,
|
|
16590
16646
|
{
|
|
16591
16647
|
labelStyle: "inline",
|
|
@@ -16602,8 +16658,8 @@ var NumberRangeFilter = class extends BaseFilter {
|
|
|
16602
16658
|
}
|
|
16603
16659
|
)
|
|
16604
16660
|
] }),
|
|
16605
|
-
!vertical && /* @__PURE__ */ (0,
|
|
16606
|
-
/* @__PURE__ */ (0,
|
|
16661
|
+
!vertical && /* @__PURE__ */ (0, import_jsx_runtime137.jsxs)(CompoundField, { ...tid, children: [
|
|
16662
|
+
/* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
|
|
16607
16663
|
NumberField,
|
|
16608
16664
|
{
|
|
16609
16665
|
compact: true,
|
|
@@ -16621,7 +16677,7 @@ var NumberRangeFilter = class extends BaseFilter {
|
|
|
16621
16677
|
...tid[`${defaultTestId(label)}_min`]
|
|
16622
16678
|
}
|
|
16623
16679
|
),
|
|
16624
|
-
/* @__PURE__ */ (0,
|
|
16680
|
+
/* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
|
|
16625
16681
|
NumberField,
|
|
16626
16682
|
{
|
|
16627
16683
|
compact: true,
|
|
@@ -16645,7 +16701,7 @@ var NumberRangeFilter = class extends BaseFilter {
|
|
|
16645
16701
|
};
|
|
16646
16702
|
|
|
16647
16703
|
// src/components/Filters/SingleFilter.tsx
|
|
16648
|
-
var
|
|
16704
|
+
var import_jsx_runtime138 = require("@emotion/react/jsx-runtime");
|
|
16649
16705
|
function singleFilter(props) {
|
|
16650
16706
|
return (key) => new SingleFilter(key, props);
|
|
16651
16707
|
}
|
|
@@ -16662,7 +16718,7 @@ var SingleFilter = class extends BaseFilter {
|
|
|
16662
16718
|
...props
|
|
16663
16719
|
} = this.props;
|
|
16664
16720
|
const options = Array.isArray(maybeOptions) ? [allOption, ...maybeOptions] : { ...maybeOptions, current: maybeOptions.current };
|
|
16665
|
-
return /* @__PURE__ */ (0,
|
|
16721
|
+
return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
|
|
16666
16722
|
SelectField,
|
|
16667
16723
|
{
|
|
16668
16724
|
...props,
|
|
@@ -16683,14 +16739,14 @@ var SingleFilter = class extends BaseFilter {
|
|
|
16683
16739
|
};
|
|
16684
16740
|
|
|
16685
16741
|
// src/components/Filters/TreeFilter.tsx
|
|
16686
|
-
var
|
|
16742
|
+
var import_jsx_runtime139 = require("@emotion/react/jsx-runtime");
|
|
16687
16743
|
function treeFilter(props) {
|
|
16688
16744
|
return (key) => new TreeFilter(key, props);
|
|
16689
16745
|
}
|
|
16690
16746
|
var TreeFilter = class extends BaseFilter {
|
|
16691
16747
|
render(value, setValue, tid, inModal, vertical) {
|
|
16692
16748
|
const { defaultValue, nothingSelectedText, filterBy = "root", ...props } = this.props;
|
|
16693
|
-
return /* @__PURE__ */ (0,
|
|
16749
|
+
return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(
|
|
16694
16750
|
TreeSelectField,
|
|
16695
16751
|
{
|
|
16696
16752
|
...props,
|
|
@@ -16711,14 +16767,14 @@ var TreeFilter = class extends BaseFilter {
|
|
|
16711
16767
|
};
|
|
16712
16768
|
|
|
16713
16769
|
// src/components/Filters/BooleanFilter.tsx
|
|
16714
|
-
var
|
|
16770
|
+
var import_jsx_runtime140 = require("@emotion/react/jsx-runtime");
|
|
16715
16771
|
function booleanFilter(props) {
|
|
16716
16772
|
return (key) => new BooleanFilter(key, props);
|
|
16717
16773
|
}
|
|
16718
16774
|
var BooleanFilter = class extends BaseFilter {
|
|
16719
16775
|
render(value, setValue, tid, inModal, vertical) {
|
|
16720
16776
|
const { options = defaultBooleanOptions, label, defaultValue, ...props } = this.props;
|
|
16721
|
-
return /* @__PURE__ */ (0,
|
|
16777
|
+
return /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(
|
|
16722
16778
|
SelectField,
|
|
16723
16779
|
{
|
|
16724
16780
|
...props,
|
|
@@ -16746,7 +16802,7 @@ var defaultBooleanOptions = [
|
|
|
16746
16802
|
];
|
|
16747
16803
|
|
|
16748
16804
|
// src/components/Filters/CheckboxFilter.tsx
|
|
16749
|
-
var
|
|
16805
|
+
var import_jsx_runtime141 = require("@emotion/react/jsx-runtime");
|
|
16750
16806
|
function checkboxFilter(props) {
|
|
16751
16807
|
return (key) => new CheckboxFilter(key, {
|
|
16752
16808
|
// If the user has set the offValue, that should be the default b/c we're only a two-state
|
|
@@ -16757,7 +16813,7 @@ function checkboxFilter(props) {
|
|
|
16757
16813
|
var CheckboxFilter = class extends BaseFilter {
|
|
16758
16814
|
render(value, setValue, tid, inModal, vertical) {
|
|
16759
16815
|
const { defaultValue, onValue = true, offValue = void 0, ...props } = this.props;
|
|
16760
|
-
return /* @__PURE__ */ (0,
|
|
16816
|
+
return /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(
|
|
16761
16817
|
Checkbox,
|
|
16762
16818
|
{
|
|
16763
16819
|
...props,
|
|
@@ -16776,44 +16832,44 @@ var CheckboxFilter = class extends BaseFilter {
|
|
|
16776
16832
|
};
|
|
16777
16833
|
|
|
16778
16834
|
// src/components/Filters/FilterModal.tsx
|
|
16779
|
-
var
|
|
16835
|
+
var import_react100 = require("react");
|
|
16780
16836
|
|
|
16781
16837
|
// src/components/Modal/OpenModal.tsx
|
|
16782
|
-
var
|
|
16783
|
-
var
|
|
16838
|
+
var import_react99 = require("react");
|
|
16839
|
+
var import_jsx_runtime142 = require("@emotion/react/jsx-runtime");
|
|
16784
16840
|
function OpenModal(props) {
|
|
16785
16841
|
const { openModal } = useModal();
|
|
16786
16842
|
const { size, children, keepOpen } = props;
|
|
16787
|
-
(0,
|
|
16843
|
+
(0, import_react99.useEffect)(() => {
|
|
16788
16844
|
if (!keepOpen) {
|
|
16789
16845
|
openModal({ size, content: children });
|
|
16790
16846
|
}
|
|
16791
16847
|
}, [keepOpen, openModal, size, children]);
|
|
16792
16848
|
if (keepOpen) {
|
|
16793
|
-
return /* @__PURE__ */ (0,
|
|
16849
|
+
return /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(Modal, { size, content: children });
|
|
16794
16850
|
} else {
|
|
16795
|
-
return /* @__PURE__ */ (0,
|
|
16851
|
+
return /* @__PURE__ */ (0, import_jsx_runtime142.jsx)("div", { children: "dummy content" });
|
|
16796
16852
|
}
|
|
16797
16853
|
}
|
|
16798
16854
|
|
|
16799
16855
|
// src/components/Filters/FilterModal.tsx
|
|
16800
|
-
var
|
|
16856
|
+
var import_jsx_runtime143 = require("@emotion/react/jsx-runtime");
|
|
16801
16857
|
function FilterModal(props) {
|
|
16802
16858
|
const { filter, filters, onApply } = props;
|
|
16803
16859
|
const testId = useTestIds(props, filterTestIdPrefix);
|
|
16804
16860
|
const { closeModal } = useModal();
|
|
16805
|
-
const [modalFilter, setModalFilter] = (0,
|
|
16806
|
-
return /* @__PURE__ */ (0,
|
|
16807
|
-
/* @__PURE__ */ (0,
|
|
16808
|
-
/* @__PURE__ */ (0,
|
|
16861
|
+
const [modalFilter, setModalFilter] = (0, import_react100.useState)(filter);
|
|
16862
|
+
return /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)(import_jsx_runtime143.Fragment, { children: [
|
|
16863
|
+
/* @__PURE__ */ (0, import_jsx_runtime143.jsx)(ModalHeader, { children: "More Filters" }),
|
|
16864
|
+
/* @__PURE__ */ (0, import_jsx_runtime143.jsx)(ModalBody, { children: /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { css: Css.df.fdc.$, children: safeEntries(filters).map(([key, f]) => /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(ModalFilterItem, { label: f.hideLabelInModal ? void 0 : f.label, children: f.render(
|
|
16809
16865
|
modalFilter[key],
|
|
16810
16866
|
(value) => setModalFilter(updateFilter(modalFilter, key, value)),
|
|
16811
16867
|
testId,
|
|
16812
16868
|
true,
|
|
16813
16869
|
false
|
|
16814
16870
|
) }, key)) }) }),
|
|
16815
|
-
/* @__PURE__ */ (0,
|
|
16816
|
-
/* @__PURE__ */ (0,
|
|
16871
|
+
/* @__PURE__ */ (0, import_jsx_runtime143.jsxs)(ModalFooter, { xss: Css.jcsb.$, children: [
|
|
16872
|
+
/* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
|
|
16817
16873
|
Button,
|
|
16818
16874
|
{
|
|
16819
16875
|
label: "Clear",
|
|
@@ -16826,9 +16882,9 @@ function FilterModal(props) {
|
|
|
16826
16882
|
...testId.modalClear
|
|
16827
16883
|
}
|
|
16828
16884
|
),
|
|
16829
|
-
/* @__PURE__ */ (0,
|
|
16830
|
-
/* @__PURE__ */ (0,
|
|
16831
|
-
/* @__PURE__ */ (0,
|
|
16885
|
+
/* @__PURE__ */ (0, import_jsx_runtime143.jsxs)("div", { css: Css.df.gap1.$, children: [
|
|
16886
|
+
/* @__PURE__ */ (0, import_jsx_runtime143.jsx)(Button, { label: "Cancel", variant: "tertiary", onClick: closeModal, ...testId.modalClose }),
|
|
16887
|
+
/* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
|
|
16832
16888
|
Button,
|
|
16833
16889
|
{
|
|
16834
16890
|
label: "Apply",
|
|
@@ -16844,20 +16900,20 @@ function FilterModal(props) {
|
|
|
16844
16900
|
] });
|
|
16845
16901
|
}
|
|
16846
16902
|
function ModalFilterItem({ label, children }) {
|
|
16847
|
-
return /* @__PURE__ */ (0,
|
|
16848
|
-
label && /* @__PURE__ */ (0,
|
|
16849
|
-
/* @__PURE__ */ (0,
|
|
16903
|
+
return /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)("div", { css: Css.mb4.if(!label).bt.bcGray200.$, children: [
|
|
16904
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("h2", { css: Css.baseMd.mb2.$, children: label }),
|
|
16905
|
+
/* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { css: Css.if(!label).pt3.$, children })
|
|
16850
16906
|
] });
|
|
16851
16907
|
}
|
|
16852
16908
|
|
|
16853
16909
|
// src/components/Filters/Filters.tsx
|
|
16854
|
-
var
|
|
16855
|
-
var
|
|
16910
|
+
var import_react101 = require("react");
|
|
16911
|
+
var import_jsx_runtime144 = require("@emotion/react/jsx-runtime");
|
|
16856
16912
|
function Filters(props) {
|
|
16857
16913
|
const { filter, onChange, filterDefs, groupBy, vertical = false, numberOfInlineFilters = groupBy ? 3 : 4 } = props;
|
|
16858
16914
|
const testId = useTestIds(props, filterTestIdPrefix);
|
|
16859
16915
|
const { openModal } = useModal();
|
|
16860
|
-
const [pageFilters, modalFilters] = (0,
|
|
16916
|
+
const [pageFilters, modalFilters] = (0, import_react101.useMemo)(() => {
|
|
16861
16917
|
const impls = safeEntries(filterDefs).map(([key, fn]) => [key, fn(key)]);
|
|
16862
16918
|
if (!vertical && impls.length > numberOfInlineFilters) {
|
|
16863
16919
|
return [
|
|
@@ -16868,7 +16924,7 @@ function Filters(props) {
|
|
|
16868
16924
|
return [Object.fromEntries(impls), {}];
|
|
16869
16925
|
}, [numberOfInlineFilters, vertical, filterDefs]);
|
|
16870
16926
|
const numModalFilters = safeKeys(modalFilters).filter((fk) => filter[fk] !== void 0).length;
|
|
16871
|
-
const maybeGroupByField = groupBy ? /* @__PURE__ */ (0,
|
|
16927
|
+
const maybeGroupByField = groupBy ? /* @__PURE__ */ (0, import_jsx_runtime144.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(
|
|
16872
16928
|
SelectField,
|
|
16873
16929
|
{
|
|
16874
16930
|
label: "Group by",
|
|
@@ -16882,7 +16938,7 @@ function Filters(props) {
|
|
|
16882
16938
|
onSelect: (g) => g && groupBy.setValue(g)
|
|
16883
16939
|
}
|
|
16884
16940
|
) }) : null;
|
|
16885
|
-
return /* @__PURE__ */ (0,
|
|
16941
|
+
return /* @__PURE__ */ (0, import_jsx_runtime144.jsxs)(
|
|
16886
16942
|
"div",
|
|
16887
16943
|
{
|
|
16888
16944
|
css: {
|
|
@@ -16891,29 +16947,29 @@ function Filters(props) {
|
|
|
16891
16947
|
...testId,
|
|
16892
16948
|
children: [
|
|
16893
16949
|
maybeGroupByField,
|
|
16894
|
-
safeEntries(pageFilters).map(([key, f]) => /* @__PURE__ */ (0,
|
|
16895
|
-
Object.keys(modalFilters).length > 0 && /* @__PURE__ */ (0,
|
|
16950
|
+
safeEntries(pageFilters).map(([key, f]) => /* @__PURE__ */ (0, import_jsx_runtime144.jsx)("div", { children: f.render(filter[key], (value) => onChange(updateFilter(filter, key, value)), testId, false, vertical) }, key)),
|
|
16951
|
+
Object.keys(modalFilters).length > 0 && /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(
|
|
16896
16952
|
Button,
|
|
16897
16953
|
{
|
|
16898
16954
|
label: "More Filters",
|
|
16899
|
-
endAdornment: numModalFilters > 0 && /* @__PURE__ */ (0,
|
|
16955
|
+
endAdornment: numModalFilters > 0 && /* @__PURE__ */ (0, import_jsx_runtime144.jsx)("span", { css: Css.wPx(16).hPx(16).fs0.br100.bgBlue700.white.tinySb.df.aic.jcc.$, children: numModalFilters }),
|
|
16900
16956
|
variant: "secondary",
|
|
16901
16957
|
onClick: () => openModal({
|
|
16902
16958
|
// Spreading `props` to pass along `data-testid`
|
|
16903
|
-
content: /* @__PURE__ */ (0,
|
|
16959
|
+
content: /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(FilterModal, { ...props, filter, onApply: onChange, filters: modalFilters })
|
|
16904
16960
|
}),
|
|
16905
16961
|
...testId.moreFiltersBtn
|
|
16906
16962
|
}
|
|
16907
16963
|
),
|
|
16908
|
-
Object.keys(filter).length > 0 && /* @__PURE__ */ (0,
|
|
16964
|
+
Object.keys(filter).length > 0 && /* @__PURE__ */ (0, import_jsx_runtime144.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(Button, { label: "Clear", variant: "tertiary", onClick: () => onChange({}), ...testId.clearBtn }) })
|
|
16909
16965
|
]
|
|
16910
16966
|
}
|
|
16911
16967
|
);
|
|
16912
16968
|
}
|
|
16913
|
-
var _Filters = (0,
|
|
16969
|
+
var _Filters = (0, import_react101.memo)(Filters);
|
|
16914
16970
|
|
|
16915
16971
|
// src/components/Filters/ToggleFilter.tsx
|
|
16916
|
-
var
|
|
16972
|
+
var import_jsx_runtime145 = require("@emotion/react/jsx-runtime");
|
|
16917
16973
|
function toggleFilter(props) {
|
|
16918
16974
|
return (key) => new ToggleFilter(key, {
|
|
16919
16975
|
// If the user has set the offValue, that should be the default b/c we're only a two-state
|
|
@@ -16924,7 +16980,7 @@ function toggleFilter(props) {
|
|
|
16924
16980
|
var ToggleFilter = class extends BaseFilter {
|
|
16925
16981
|
render(value, setValue, tid, inModal, vertical) {
|
|
16926
16982
|
const { defaultValue, onValue = true, offValue = void 0, ...props } = this.props;
|
|
16927
|
-
return /* @__PURE__ */ (0,
|
|
16983
|
+
return /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(
|
|
16928
16984
|
Switch,
|
|
16929
16985
|
{
|
|
16930
16986
|
...props,
|
|
@@ -16954,23 +17010,23 @@ function updateFilter(currentFilter, key, value) {
|
|
|
16954
17010
|
var filterTestIdPrefix = "filter";
|
|
16955
17011
|
|
|
16956
17012
|
// src/components/Grid/ResponsiveGrid.tsx
|
|
16957
|
-
var
|
|
17013
|
+
var import_jsx_runtime146 = require("@emotion/react/jsx-runtime");
|
|
16958
17014
|
function ResponsiveGrid(props) {
|
|
16959
17015
|
const { children, ...hookProps } = props;
|
|
16960
17016
|
const { gridStyles } = useResponsiveGrid(hookProps);
|
|
16961
|
-
return /* @__PURE__ */ (0,
|
|
17017
|
+
return /* @__PURE__ */ (0, import_jsx_runtime146.jsx)("div", { css: { ...gridStyles }, children });
|
|
16962
17018
|
}
|
|
16963
17019
|
|
|
16964
17020
|
// src/components/Grid/ResponsiveGridItem.tsx
|
|
16965
|
-
var
|
|
17021
|
+
var import_jsx_runtime147 = require("@emotion/react/jsx-runtime");
|
|
16966
17022
|
function ResponsiveGridItem(props) {
|
|
16967
17023
|
const { colSpan, children } = props;
|
|
16968
17024
|
const { gridItemProps } = useResponsiveGridItem({ colSpan });
|
|
16969
|
-
return /* @__PURE__ */ (0,
|
|
17025
|
+
return /* @__PURE__ */ (0, import_jsx_runtime147.jsx)("div", { ...gridItemProps, children });
|
|
16970
17026
|
}
|
|
16971
17027
|
|
|
16972
17028
|
// src/components/Grid/useResponsiveGrid.ts
|
|
16973
|
-
var
|
|
17029
|
+
var import_react102 = require("react");
|
|
16974
17030
|
|
|
16975
17031
|
// src/components/Grid/utils.ts
|
|
16976
17032
|
var gridItemDataAttribute = "data-grid-item-span";
|
|
@@ -16978,7 +17034,7 @@ var gridItemDataAttribute = "data-grid-item-span";
|
|
|
16978
17034
|
// src/components/Grid/useResponsiveGrid.ts
|
|
16979
17035
|
function useResponsiveGrid(props) {
|
|
16980
17036
|
const { minColumnWidth, gap, columns } = props;
|
|
16981
|
-
const gridStyles = (0,
|
|
17037
|
+
const gridStyles = (0, import_react102.useMemo)(() => {
|
|
16982
17038
|
const gapCount = columns - 1;
|
|
16983
17039
|
const totalGapWidth = gap * gapCount;
|
|
16984
17040
|
const maxColumnWidth = `calc((100% - ${totalGapWidth}px) / ${columns})`;
|
|
@@ -17019,24 +17075,24 @@ function useResponsiveGridItem({ colSpan = 1 }) {
|
|
|
17019
17075
|
}
|
|
17020
17076
|
|
|
17021
17077
|
// src/components/HbLoadingSpinner.tsx
|
|
17022
|
-
var
|
|
17078
|
+
var import_react103 = __toESM(require("react"), 1);
|
|
17023
17079
|
|
|
17024
17080
|
// src/components/HbLoadingSpinner.base64.ts
|
|
17025
17081
|
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";
|
|
17026
17082
|
|
|
17027
17083
|
// src/components/HbLoadingSpinner.tsx
|
|
17028
|
-
var
|
|
17084
|
+
var import_jsx_runtime148 = require("@emotion/react/jsx-runtime");
|
|
17029
17085
|
function HbLoadingSpinner({ noQuips, extraQuips = [], extraQuipsOnly, iconOnly }) {
|
|
17030
|
-
const ctx = (0,
|
|
17086
|
+
const ctx = (0, import_react103.useContext)(HbLoadingSpinnerContext);
|
|
17031
17087
|
const tid = useTestIds({}, "hbSpinner");
|
|
17032
|
-
const quip = (0,
|
|
17088
|
+
const quip = (0, import_react103.useMemo)(() => {
|
|
17033
17089
|
const allQuips = extraQuipsOnly && extraQuips.length !== 0 ? extraQuips : [...ctx.quips, ...extraQuips];
|
|
17034
17090
|
const forceQuips = extraQuips.length !== 0 || noQuips === false;
|
|
17035
17091
|
if (ctx.noQuips && !forceQuips || noQuips || allQuips.length === 0) return "Loading...";
|
|
17036
17092
|
return allQuips[Math.floor(Math.random() * allQuips.length)];
|
|
17037
17093
|
}, [ctx.noQuips, ctx.quips, extraQuips, extraQuipsOnly, noQuips]);
|
|
17038
|
-
return /* @__PURE__ */ (0,
|
|
17039
|
-
/* @__PURE__ */ (0,
|
|
17094
|
+
return /* @__PURE__ */ (0, import_jsx_runtime148.jsxs)("div", { css: Css.df.fdc.jcc.aic.$, ...tid, children: [
|
|
17095
|
+
/* @__PURE__ */ (0, import_jsx_runtime148.jsx)(
|
|
17040
17096
|
"img",
|
|
17041
17097
|
{
|
|
17042
17098
|
src: HbLoadingSpinner_base64_default,
|
|
@@ -17049,7 +17105,7 @@ function HbLoadingSpinner({ noQuips, extraQuips = [], extraQuipsOnly, iconOnly }
|
|
|
17049
17105
|
...tid.gif
|
|
17050
17106
|
}
|
|
17051
17107
|
),
|
|
17052
|
-
!iconOnly && /* @__PURE__ */ (0,
|
|
17108
|
+
!iconOnly && /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(
|
|
17053
17109
|
"div",
|
|
17054
17110
|
{
|
|
17055
17111
|
"data-chromatic": "ignore",
|
|
@@ -17069,17 +17125,17 @@ var HB_QUIPS_MISSION = [
|
|
|
17069
17125
|
"In Service of Our Customers"
|
|
17070
17126
|
].map(dotDotDot);
|
|
17071
17127
|
var HB_QUIPS_FLAVOR = ["HOM is HOW", "Scaling Massively", "#LoveIt"].map(dotDotDot);
|
|
17072
|
-
var HbLoadingSpinnerContext =
|
|
17128
|
+
var HbLoadingSpinnerContext = import_react103.default.createContext({
|
|
17073
17129
|
quips: ["Loading..."],
|
|
17074
17130
|
noQuips: false
|
|
17075
17131
|
});
|
|
17076
17132
|
function HbSpinnerProvider({ quips = [], children }) {
|
|
17077
|
-
const state = (0,
|
|
17078
|
-
return /* @__PURE__ */ (0,
|
|
17133
|
+
const state = (0, import_react103.useMemo)(() => ({ quips, noQuips: quips.length === 0 }), [quips]);
|
|
17134
|
+
return /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(HbLoadingSpinnerContext.Provider, { value: state, children });
|
|
17079
17135
|
}
|
|
17080
17136
|
|
|
17081
17137
|
// src/components/LoadingSkeleton.tsx
|
|
17082
|
-
var
|
|
17138
|
+
var import_jsx_runtime149 = require("@emotion/react/jsx-runtime");
|
|
17083
17139
|
function LoadingSkeleton({
|
|
17084
17140
|
rows = 1,
|
|
17085
17141
|
columns = 1,
|
|
@@ -17092,7 +17148,7 @@ function LoadingSkeleton({
|
|
|
17092
17148
|
const rowHeight = sizeToPixels2[size];
|
|
17093
17149
|
const rowCells = (rowNumber) => {
|
|
17094
17150
|
const flexGrowForCell = randomizeWidths ? getRandomizedFlexBasisByRowIndex(rowNumber) : 1;
|
|
17095
|
-
return cellArray.map((_, i) => /* @__PURE__ */ (0,
|
|
17151
|
+
return cellArray.map((_, i) => /* @__PURE__ */ (0, import_jsx_runtime149.jsx)(
|
|
17096
17152
|
"div",
|
|
17097
17153
|
{
|
|
17098
17154
|
css: Css.br4.add("animation", "pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite").add("flexGrow", flexGrowForCell).bgGray300.if(contrast).bgGray700.$
|
|
@@ -17100,7 +17156,7 @@ function LoadingSkeleton({
|
|
|
17100
17156
|
`row-${rowNumber}-cell-${i}`
|
|
17101
17157
|
));
|
|
17102
17158
|
};
|
|
17103
|
-
return /* @__PURE__ */ (0,
|
|
17159
|
+
return /* @__PURE__ */ (0, import_jsx_runtime149.jsx)("div", { "aria-label": "Loading", children: rowArray.map((_, i) => /* @__PURE__ */ (0, import_jsx_runtime149.jsx)("div", { css: Css.df.gap1.mb1.hPx(rowHeight).$, children: rowCells(i) }, `row-${i}`)) });
|
|
17104
17160
|
}
|
|
17105
17161
|
function getRandomizedFlexBasisByRowIndex(rowIndex) {
|
|
17106
17162
|
const randomizedFlexBasisValues = [0.65, 0.8, 0.75, 0.9, 0.8, 0.85, 0.8, 0.95];
|
|
@@ -17114,33 +17170,33 @@ var sizeToPixels2 = {
|
|
|
17114
17170
|
};
|
|
17115
17171
|
|
|
17116
17172
|
// src/components/MaxLines.tsx
|
|
17117
|
-
var
|
|
17118
|
-
var
|
|
17119
|
-
var
|
|
17173
|
+
var import_utils113 = require("@react-aria/utils");
|
|
17174
|
+
var import_react104 = require("react");
|
|
17175
|
+
var import_jsx_runtime150 = require("@emotion/react/jsx-runtime");
|
|
17120
17176
|
function MaxLines({ maxLines, children }) {
|
|
17121
|
-
const elRef = (0,
|
|
17122
|
-
const [hasMore, setHasMore] = (0,
|
|
17123
|
-
const [expanded, setExpanded] = (0,
|
|
17124
|
-
(0,
|
|
17177
|
+
const elRef = (0, import_react104.useRef)(null);
|
|
17178
|
+
const [hasMore, setHasMore] = (0, import_react104.useState)(false);
|
|
17179
|
+
const [expanded, setExpanded] = (0, import_react104.useState)(false);
|
|
17180
|
+
(0, import_utils113.useLayoutEffect)(() => {
|
|
17125
17181
|
if (!elRef.current) return;
|
|
17126
17182
|
setHasMore(elRef.current.scrollHeight > elRef.current.clientHeight);
|
|
17127
17183
|
}, []);
|
|
17128
|
-
(0,
|
|
17184
|
+
(0, import_react104.useEffect)(() => {
|
|
17129
17185
|
setExpanded(false);
|
|
17130
17186
|
}, [children]);
|
|
17131
|
-
const onResize = (0,
|
|
17187
|
+
const onResize = (0, import_react104.useCallback)(() => {
|
|
17132
17188
|
if (!elRef.current) return;
|
|
17133
17189
|
!expanded && setHasMore(elRef.current.scrollHeight > elRef.current.clientHeight);
|
|
17134
17190
|
}, [expanded]);
|
|
17135
|
-
(0,
|
|
17136
|
-
return /* @__PURE__ */ (0,
|
|
17137
|
-
/* @__PURE__ */ (0,
|
|
17138
|
-
hasMore && /* @__PURE__ */ (0,
|
|
17191
|
+
(0, import_utils113.useResizeObserver)({ ref: elRef, onResize });
|
|
17192
|
+
return /* @__PURE__ */ (0, import_jsx_runtime150.jsxs)("div", { children: [
|
|
17193
|
+
/* @__PURE__ */ (0, import_jsx_runtime150.jsx)("div", { ref: elRef, css: Css.if(!expanded).lineClamp(maxLines).$, children }),
|
|
17194
|
+
hasMore && /* @__PURE__ */ (0, import_jsx_runtime150.jsx)("button", { css: Css.db.smMd.$, onClick: () => setExpanded((prev) => !prev), children: expanded ? "Show Less" : "Show More" })
|
|
17139
17195
|
] });
|
|
17140
17196
|
}
|
|
17141
17197
|
|
|
17142
17198
|
// src/components/Pagination.tsx
|
|
17143
|
-
var
|
|
17199
|
+
var import_jsx_runtime151 = require("@emotion/react/jsx-runtime");
|
|
17144
17200
|
var defaultPage = { offset: 0, limit: 100 };
|
|
17145
17201
|
function Pagination(props) {
|
|
17146
17202
|
const { totalCount, pageSizes = [100, 500, 1e3] } = props;
|
|
@@ -17160,9 +17216,9 @@ function Pagination(props) {
|
|
|
17160
17216
|
}
|
|
17161
17217
|
}
|
|
17162
17218
|
const tid = useTestIds(props, "pagination");
|
|
17163
|
-
return /* @__PURE__ */ (0,
|
|
17164
|
-
/* @__PURE__ */ (0,
|
|
17165
|
-
/* @__PURE__ */ (0,
|
|
17219
|
+
return /* @__PURE__ */ (0, import_jsx_runtime151.jsxs)("div", { css: Css.df.bcGray200.bt.xs.gray500.px2.pt2.$, ...tid, children: [
|
|
17220
|
+
/* @__PURE__ */ (0, import_jsx_runtime151.jsx)("div", { css: Css.df.mya.mr2.$, ...tid.pageSizeLabel, children: "Page size:" }),
|
|
17221
|
+
/* @__PURE__ */ (0, import_jsx_runtime151.jsx)("div", { css: Css.wPx(78).$, children: /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(
|
|
17166
17222
|
SelectField,
|
|
17167
17223
|
{
|
|
17168
17224
|
compact: true,
|
|
@@ -17174,15 +17230,15 @@ function Pagination(props) {
|
|
|
17174
17230
|
...tid.pageSize
|
|
17175
17231
|
}
|
|
17176
17232
|
) }),
|
|
17177
|
-
/* @__PURE__ */ (0,
|
|
17178
|
-
/* @__PURE__ */ (0,
|
|
17233
|
+
/* @__PURE__ */ (0, import_jsx_runtime151.jsxs)("div", { css: Css.mla.mya.df.$, children: [
|
|
17234
|
+
/* @__PURE__ */ (0, import_jsx_runtime151.jsxs)("div", { css: Css.df.mya.mr2.$, ...tid.pageInfoLabel, children: [
|
|
17179
17235
|
first,
|
|
17180
17236
|
" ",
|
|
17181
17237
|
showLast ? `- ${last}` : "",
|
|
17182
17238
|
" of ",
|
|
17183
17239
|
totalCount
|
|
17184
17240
|
] }),
|
|
17185
|
-
/* @__PURE__ */ (0,
|
|
17241
|
+
/* @__PURE__ */ (0, import_jsx_runtime151.jsx)(
|
|
17186
17242
|
IconButton,
|
|
17187
17243
|
{
|
|
17188
17244
|
icon: "chevronLeft",
|
|
@@ -17192,7 +17248,7 @@ function Pagination(props) {
|
|
|
17192
17248
|
...tid.previousIcon
|
|
17193
17249
|
}
|
|
17194
17250
|
),
|
|
17195
|
-
/* @__PURE__ */ (0,
|
|
17251
|
+
/* @__PURE__ */ (0, import_jsx_runtime151.jsx)(
|
|
17196
17252
|
IconButton,
|
|
17197
17253
|
{
|
|
17198
17254
|
icon: "chevronRight",
|
|
@@ -17220,9 +17276,9 @@ function toPageNumberSize(page) {
|
|
|
17220
17276
|
}
|
|
17221
17277
|
|
|
17222
17278
|
// src/components/ScrollShadows.tsx
|
|
17223
|
-
var
|
|
17224
|
-
var
|
|
17225
|
-
var
|
|
17279
|
+
var import_utils115 = require("@react-aria/utils");
|
|
17280
|
+
var import_react105 = require("react");
|
|
17281
|
+
var import_jsx_runtime152 = require("@emotion/react/jsx-runtime");
|
|
17226
17282
|
function ScrollShadows(props) {
|
|
17227
17283
|
const { children, xss, horizontal = false, bgColor = "rgba(255,255,255,1)" /* White */ } = props;
|
|
17228
17284
|
const { height = "auto", width = "auto" } = xss ?? {};
|
|
@@ -17230,10 +17286,10 @@ function ScrollShadows(props) {
|
|
|
17230
17286
|
if (!bgColor.includes("rgba")) {
|
|
17231
17287
|
throw new Error("ScrollShadows: bgColor prop must be in the format 'rgba(255, 255, 255, 1)'");
|
|
17232
17288
|
}
|
|
17233
|
-
const [showStartShadow, setShowStartShadow] = (0,
|
|
17234
|
-
const [showEndShadow, setShowEndShadow] = (0,
|
|
17235
|
-
const scrollRef = (0,
|
|
17236
|
-
const [startShadowStyles, endShadowStyles] = (0,
|
|
17289
|
+
const [showStartShadow, setShowStartShadow] = (0, import_react105.useState)(false);
|
|
17290
|
+
const [showEndShadow, setShowEndShadow] = (0, import_react105.useState)(false);
|
|
17291
|
+
const scrollRef = (0, import_react105.useRef)(null);
|
|
17292
|
+
const [startShadowStyles, endShadowStyles] = (0, import_react105.useMemo)(() => {
|
|
17237
17293
|
const transparentBgColor = bgColor.replace(/,1\)$/, ",0)");
|
|
17238
17294
|
const commonStyles = Css.absolute.z3.add({ pointerEvents: "none" }).$;
|
|
17239
17295
|
const startShadowStyles2 = !horizontal ? Css.top0.left0.right0.hPx(40).$ : Css.left0.top0.bottom0.wPx(25).$;
|
|
@@ -17245,7 +17301,7 @@ function ScrollShadows(props) {
|
|
|
17245
17301
|
{ ...commonStyles, ...endShadowStyles2, ...Css.add("background", endGradient).$ }
|
|
17246
17302
|
];
|
|
17247
17303
|
}, [horizontal, bgColor]);
|
|
17248
|
-
const updateScrollProps = (0,
|
|
17304
|
+
const updateScrollProps = (0, import_react105.useCallback)(
|
|
17249
17305
|
(el) => {
|
|
17250
17306
|
const { scrollTop, scrollHeight, clientHeight, scrollWidth, scrollLeft, clientWidth } = el;
|
|
17251
17307
|
const start = horizontal ? scrollLeft : scrollTop;
|
|
@@ -17258,17 +17314,17 @@ function ScrollShadows(props) {
|
|
|
17258
17314
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
17259
17315
|
[]
|
|
17260
17316
|
);
|
|
17261
|
-
const onResize = (0,
|
|
17262
|
-
(0,
|
|
17263
|
-
return /* @__PURE__ */ (0,
|
|
17317
|
+
const onResize = (0, import_react105.useCallback)(() => scrollRef.current && updateScrollProps(scrollRef.current), []);
|
|
17318
|
+
(0, import_utils115.useResizeObserver)({ ref: scrollRef, onResize });
|
|
17319
|
+
return /* @__PURE__ */ (0, import_jsx_runtime152.jsxs)(
|
|
17264
17320
|
"div",
|
|
17265
17321
|
{
|
|
17266
17322
|
css: Css.relative.oh.h(height).w(width).df.fd(!horizontal ? "column" : "row").$,
|
|
17267
17323
|
...tid,
|
|
17268
17324
|
children: [
|
|
17269
|
-
showStartShadow && /* @__PURE__ */ (0,
|
|
17270
|
-
showEndShadow && /* @__PURE__ */ (0,
|
|
17271
|
-
/* @__PURE__ */ (0,
|
|
17325
|
+
showStartShadow && /* @__PURE__ */ (0, import_jsx_runtime152.jsx)("div", { css: startShadowStyles }),
|
|
17326
|
+
showEndShadow && /* @__PURE__ */ (0, import_jsx_runtime152.jsx)("div", { css: endShadowStyles }),
|
|
17327
|
+
/* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
|
|
17272
17328
|
"div",
|
|
17273
17329
|
{
|
|
17274
17330
|
css: {
|
|
@@ -17286,10 +17342,10 @@ function ScrollShadows(props) {
|
|
|
17286
17342
|
}
|
|
17287
17343
|
|
|
17288
17344
|
// src/components/Snackbar/useSnackbar.tsx
|
|
17289
|
-
var
|
|
17345
|
+
var import_react106 = require("react");
|
|
17290
17346
|
function useSnackbar() {
|
|
17291
17347
|
const { setNotices, setOffset } = useSnackbarContext();
|
|
17292
|
-
const onClose = (0,
|
|
17348
|
+
const onClose = (0, import_react106.useCallback)(
|
|
17293
17349
|
(noticeId) => {
|
|
17294
17350
|
setNotices((prev) => {
|
|
17295
17351
|
let returnValue = prev;
|
|
@@ -17306,7 +17362,7 @@ function useSnackbar() {
|
|
|
17306
17362
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
17307
17363
|
[]
|
|
17308
17364
|
);
|
|
17309
|
-
const triggerNotice = (0,
|
|
17365
|
+
const triggerNotice = (0, import_react106.useCallback)(
|
|
17310
17366
|
(props) => {
|
|
17311
17367
|
const noticeId = props.id ?? `beamSnackbar:${snackbarId++}`;
|
|
17312
17368
|
let maybeTimeout;
|
|
@@ -17335,8 +17391,8 @@ function useSnackbar() {
|
|
|
17335
17391
|
},
|
|
17336
17392
|
[onClose, setNotices]
|
|
17337
17393
|
);
|
|
17338
|
-
const closeNotice = (0,
|
|
17339
|
-
const useSnackbarOffset = ({ bottom }) => (0,
|
|
17394
|
+
const closeNotice = (0, import_react106.useCallback)((id) => onClose(id), [onClose]);
|
|
17395
|
+
const useSnackbarOffset = ({ bottom }) => (0, import_react106.useEffect)(() => {
|
|
17340
17396
|
setOffset({ bottom });
|
|
17341
17397
|
return () => setOffset({});
|
|
17342
17398
|
}, [bottom]);
|
|
@@ -17345,9 +17401,9 @@ function useSnackbar() {
|
|
|
17345
17401
|
var snackbarId = 1;
|
|
17346
17402
|
|
|
17347
17403
|
// src/components/Stepper.tsx
|
|
17348
|
-
var
|
|
17404
|
+
var import_react107 = require("react");
|
|
17349
17405
|
var import_react_aria49 = require("react-aria");
|
|
17350
|
-
var
|
|
17406
|
+
var import_jsx_runtime153 = require("@emotion/react/jsx-runtime");
|
|
17351
17407
|
function Stepper(props) {
|
|
17352
17408
|
const { steps, currentStep, onChange } = props;
|
|
17353
17409
|
if (steps.length === 0) {
|
|
@@ -17358,25 +17414,25 @@ function Stepper(props) {
|
|
|
17358
17414
|
const maxStepWidth = 200;
|
|
17359
17415
|
const minStepWidth = 100;
|
|
17360
17416
|
const gap = 8;
|
|
17361
|
-
return /* @__PURE__ */ (0,
|
|
17362
|
-
/* @__PURE__ */ (0,
|
|
17417
|
+
return /* @__PURE__ */ (0, import_jsx_runtime153.jsxs)("nav", { "aria-label": "steps", css: Css.df.fdc.w100.$, ...tid, children: [
|
|
17418
|
+
/* @__PURE__ */ (0, import_jsx_runtime153.jsx)("ol", { css: Css.listReset.df.gapPx(gap).$, children: steps.map((step) => {
|
|
17363
17419
|
const isCurrent = currentStep === step.value;
|
|
17364
|
-
return /* @__PURE__ */ (0,
|
|
17420
|
+
return /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(
|
|
17365
17421
|
"li",
|
|
17366
17422
|
{
|
|
17367
17423
|
css: Css.df.fg1.fdc.maxwPx(maxStepWidth).mwPx(minStepWidth).$,
|
|
17368
17424
|
"aria-current": isCurrent,
|
|
17369
17425
|
...tid.step,
|
|
17370
|
-
children: /* @__PURE__ */ (0,
|
|
17426
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(StepButton, { ...step, onClick: () => onChange(step.value), isCurrent, ...tid.stepButton })
|
|
17371
17427
|
},
|
|
17372
17428
|
step.label
|
|
17373
17429
|
);
|
|
17374
17430
|
}) }),
|
|
17375
|
-
/* @__PURE__ */ (0,
|
|
17431
|
+
/* @__PURE__ */ (0, import_jsx_runtime153.jsx)(
|
|
17376
17432
|
"div",
|
|
17377
17433
|
{
|
|
17378
17434
|
css: Css.mt1.bgGray300.hPx(4).maxwPx(steps.length * maxStepWidth + (steps.length - 1) * gap).mwPx(steps.length * minStepWidth + (steps.length - 1) * gap).w100.$,
|
|
17379
|
-
children: /* @__PURE__ */ (0,
|
|
17435
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(
|
|
17380
17436
|
"div",
|
|
17381
17437
|
{
|
|
17382
17438
|
css: Css.bgBlue600.add("transition", "width 200ms").h100.w(`${(lastCompletedStep + 1) / steps.length * 100}%`).$
|
|
@@ -17389,13 +17445,13 @@ function Stepper(props) {
|
|
|
17389
17445
|
function StepButton(props) {
|
|
17390
17446
|
const { label, disabled, state, isCurrent, onClick } = props;
|
|
17391
17447
|
const ariaProps = { onPress: onClick, isDisabled: disabled };
|
|
17392
|
-
const ref = (0,
|
|
17448
|
+
const ref = (0, import_react107.useRef)(null);
|
|
17393
17449
|
const { buttonProps, isPressed } = (0, import_react_aria49.useButton)(ariaProps, ref);
|
|
17394
17450
|
const { isFocusVisible, focusProps } = (0, import_react_aria49.useFocusRing)();
|
|
17395
17451
|
const { hoverProps, isHovered } = (0, import_react_aria49.useHover)(ariaProps);
|
|
17396
17452
|
const focusRingStyles2 = state === "error" ? Css.bshDanger.$ : Css.bshFocus.$;
|
|
17397
17453
|
const tid = useTestIds(props, "stepButton");
|
|
17398
|
-
return /* @__PURE__ */ (0,
|
|
17454
|
+
return /* @__PURE__ */ (0, import_jsx_runtime153.jsxs)(
|
|
17399
17455
|
"button",
|
|
17400
17456
|
{
|
|
17401
17457
|
ref,
|
|
@@ -17413,7 +17469,7 @@ function StepButton(props) {
|
|
|
17413
17469
|
},
|
|
17414
17470
|
...tid[defaultTestId(label)],
|
|
17415
17471
|
children: [
|
|
17416
|
-
/* @__PURE__ */ (0,
|
|
17472
|
+
/* @__PURE__ */ (0, import_jsx_runtime153.jsx)("span", { css: Css.fs0.mrPx(4).$, children: /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(StepIcon, { state, isHovered, isPressed, isCurrent }) }),
|
|
17417
17473
|
label
|
|
17418
17474
|
]
|
|
17419
17475
|
}
|
|
@@ -17421,12 +17477,12 @@ function StepButton(props) {
|
|
|
17421
17477
|
}
|
|
17422
17478
|
function StepIcon({ state, isHovered = false, isPressed = false, isCurrent = false }) {
|
|
17423
17479
|
if (state === "error") {
|
|
17424
|
-
return /* @__PURE__ */ (0,
|
|
17480
|
+
return /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(Icon, { icon: "errorCircle" });
|
|
17425
17481
|
}
|
|
17426
17482
|
if (state === "complete") {
|
|
17427
|
-
return /* @__PURE__ */ (0,
|
|
17483
|
+
return /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(Icon, { icon: "check" });
|
|
17428
17484
|
}
|
|
17429
|
-
return /* @__PURE__ */ (0,
|
|
17485
|
+
return /* @__PURE__ */ (0, import_jsx_runtime153.jsx)("div", { css: Css.wPx(24).hPx(24).df.aic.jcc.$, children: /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(
|
|
17430
17486
|
"div",
|
|
17431
17487
|
{
|
|
17432
17488
|
css: Css.wPx(10).hPx(10).ba.bw2.br100.add("color", "currentColor").if(isHovered || isPressed || isCurrent).add("backgroundColor", "currentColor").$
|
|
@@ -17436,7 +17492,7 @@ function StepIcon({ state, isHovered = false, isPressed = false, isCurrent = fal
|
|
|
17436
17492
|
|
|
17437
17493
|
// src/components/SuperDrawer/components/SuperDrawerHeader.tsx
|
|
17438
17494
|
var import_react_dom5 = require("react-dom");
|
|
17439
|
-
var
|
|
17495
|
+
var import_jsx_runtime154 = require("@emotion/react/jsx-runtime");
|
|
17440
17496
|
function SuperDrawerHeader(props) {
|
|
17441
17497
|
const { hideControls } = props;
|
|
17442
17498
|
const { sdHeaderDiv, drawerContentStack: contentStack } = useBeamContext();
|
|
@@ -17446,15 +17502,15 @@ function SuperDrawerHeader(props) {
|
|
|
17446
17502
|
const isDetail = currentContent !== firstContent;
|
|
17447
17503
|
const tid = useTestIds({}, "superDrawerHeader");
|
|
17448
17504
|
return (0, import_react_dom5.createPortal)(
|
|
17449
|
-
/* @__PURE__ */ (0,
|
|
17450
|
-
isStructuredProps(props) ? /* @__PURE__ */ (0,
|
|
17451
|
-
/* @__PURE__ */ (0,
|
|
17452
|
-
typeof props.title === "string" ? /* @__PURE__ */ (0,
|
|
17505
|
+
/* @__PURE__ */ (0, import_jsx_runtime154.jsxs)("div", { css: Css.df.aic.jcsb.gap3.$, ...tid, children: [
|
|
17506
|
+
isStructuredProps(props) ? /* @__PURE__ */ (0, import_jsx_runtime154.jsxs)("div", { css: Css.df.jcsb.aic.gap2.fg1.$, children: [
|
|
17507
|
+
/* @__PURE__ */ (0, import_jsx_runtime154.jsxs)("div", { css: Css.fg1.df.aic.gap2.$, children: [
|
|
17508
|
+
typeof props.title === "string" ? /* @__PURE__ */ (0, import_jsx_runtime154.jsx)("h1", { children: props.title }) : props.title,
|
|
17453
17509
|
props.left
|
|
17454
17510
|
] }),
|
|
17455
|
-
props.right && /* @__PURE__ */ (0,
|
|
17456
|
-
] }) : /* @__PURE__ */ (0,
|
|
17457
|
-
!hideControls && /* @__PURE__ */ (0,
|
|
17511
|
+
props.right && /* @__PURE__ */ (0, import_jsx_runtime154.jsx)("div", { css: Css.fs0.$, children: props.right })
|
|
17512
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime154.jsx)("div", { css: Css.fg1.$, children: props.children }),
|
|
17513
|
+
!hideControls && /* @__PURE__ */ (0, import_jsx_runtime154.jsx)("div", { css: Css.fs0.if(isDetail).vh.$, children: /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(
|
|
17458
17514
|
ButtonGroup,
|
|
17459
17515
|
{
|
|
17460
17516
|
buttons: [
|
|
@@ -17473,18 +17529,18 @@ function isStructuredProps(props) {
|
|
|
17473
17529
|
}
|
|
17474
17530
|
|
|
17475
17531
|
// src/components/SuperDrawer/ConfirmCloseModal.tsx
|
|
17476
|
-
var
|
|
17532
|
+
var import_jsx_runtime155 = require("@emotion/react/jsx-runtime");
|
|
17477
17533
|
function ConfirmCloseModal(props) {
|
|
17478
17534
|
const { onClose, discardText = "Discard Changes", continueText = "Continue Editing" } = props;
|
|
17479
17535
|
const { modalState } = useBeamContext();
|
|
17480
17536
|
function closeModal() {
|
|
17481
17537
|
modalState.current = void 0;
|
|
17482
17538
|
}
|
|
17483
|
-
return /* @__PURE__ */ (0,
|
|
17484
|
-
/* @__PURE__ */ (0,
|
|
17485
|
-
/* @__PURE__ */ (0,
|
|
17486
|
-
/* @__PURE__ */ (0,
|
|
17487
|
-
/* @__PURE__ */ (0,
|
|
17539
|
+
return /* @__PURE__ */ (0, import_jsx_runtime155.jsxs)(import_jsx_runtime155.Fragment, { children: [
|
|
17540
|
+
/* @__PURE__ */ (0, import_jsx_runtime155.jsx)(ModalHeader, { children: "Are you sure you want to cancel?" }),
|
|
17541
|
+
/* @__PURE__ */ (0, import_jsx_runtime155.jsx)(ModalBody, { children: /* @__PURE__ */ (0, import_jsx_runtime155.jsx)("p", { children: "Any changes you've made so far will be lost." }) }),
|
|
17542
|
+
/* @__PURE__ */ (0, import_jsx_runtime155.jsxs)(ModalFooter, { children: [
|
|
17543
|
+
/* @__PURE__ */ (0, import_jsx_runtime155.jsx)(
|
|
17488
17544
|
Button,
|
|
17489
17545
|
{
|
|
17490
17546
|
variant: "tertiary",
|
|
@@ -17495,17 +17551,17 @@ function ConfirmCloseModal(props) {
|
|
|
17495
17551
|
}
|
|
17496
17552
|
}
|
|
17497
17553
|
),
|
|
17498
|
-
/* @__PURE__ */ (0,
|
|
17554
|
+
/* @__PURE__ */ (0, import_jsx_runtime155.jsx)(Button, { label: continueText, onClick: closeModal })
|
|
17499
17555
|
] })
|
|
17500
17556
|
] });
|
|
17501
17557
|
}
|
|
17502
17558
|
|
|
17503
17559
|
// src/components/SuperDrawer/SuperDrawerContent.tsx
|
|
17504
|
-
var
|
|
17560
|
+
var import_framer_motion4 = require("framer-motion");
|
|
17505
17561
|
|
|
17506
17562
|
// src/components/SuperDrawer/useSuperDrawer.tsx
|
|
17507
|
-
var
|
|
17508
|
-
var
|
|
17563
|
+
var import_react108 = require("react");
|
|
17564
|
+
var import_jsx_runtime156 = require("@emotion/react/jsx-runtime");
|
|
17509
17565
|
function useSuperDrawer() {
|
|
17510
17566
|
const {
|
|
17511
17567
|
drawerContentStack: contentStack,
|
|
@@ -17517,7 +17573,7 @@ function useSuperDrawer() {
|
|
|
17517
17573
|
function canCloseDrawerDetails(i, doChange) {
|
|
17518
17574
|
for (const canCloseDrawerDetail of canCloseDetailsChecks.current[i] ?? []) {
|
|
17519
17575
|
if (!canClose(canCloseDrawerDetail)) {
|
|
17520
|
-
openModal({ content: /* @__PURE__ */ (0,
|
|
17576
|
+
openModal({ content: /* @__PURE__ */ (0, import_jsx_runtime156.jsx)(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawerDetail }) });
|
|
17521
17577
|
return false;
|
|
17522
17578
|
}
|
|
17523
17579
|
}
|
|
@@ -17537,14 +17593,14 @@ function useSuperDrawer() {
|
|
|
17537
17593
|
for (const canCloseDrawer of canCloseChecks.current) {
|
|
17538
17594
|
if (!canClose(canCloseDrawer)) {
|
|
17539
17595
|
openModal({
|
|
17540
|
-
content: /* @__PURE__ */ (0,
|
|
17596
|
+
content: /* @__PURE__ */ (0, import_jsx_runtime156.jsx)(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawer })
|
|
17541
17597
|
});
|
|
17542
17598
|
return;
|
|
17543
17599
|
}
|
|
17544
17600
|
}
|
|
17545
17601
|
doChange();
|
|
17546
17602
|
}
|
|
17547
|
-
const closeActions = (0,
|
|
17603
|
+
const closeActions = (0, import_react108.useMemo)(
|
|
17548
17604
|
() => {
|
|
17549
17605
|
return {
|
|
17550
17606
|
/** Attempts to close the drawer. If any checks fail, a confirmation modal will appear */
|
|
@@ -17579,7 +17635,7 @@ function useSuperDrawer() {
|
|
|
17579
17635
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
17580
17636
|
[canCloseChecks, canCloseDetailsChecks, contentStack, modalState, openModal]
|
|
17581
17637
|
);
|
|
17582
|
-
const actions = (0,
|
|
17638
|
+
const actions = (0, import_react108.useMemo)(
|
|
17583
17639
|
() => {
|
|
17584
17640
|
return {
|
|
17585
17641
|
// TODO: Maybe we should rename to openDrawer as a breaking change (to match openDrawerDetail)
|
|
@@ -17632,7 +17688,7 @@ function canClose(canCloseCheck) {
|
|
|
17632
17688
|
}
|
|
17633
17689
|
|
|
17634
17690
|
// src/components/SuperDrawer/SuperDrawerContent.tsx
|
|
17635
|
-
var
|
|
17691
|
+
var import_jsx_runtime157 = require("@emotion/react/jsx-runtime");
|
|
17636
17692
|
var SuperDrawerContent = ({ children, actions }) => {
|
|
17637
17693
|
const { closeDrawerDetail } = useSuperDrawer();
|
|
17638
17694
|
const { drawerContentStack: contentStack } = useBeamContext();
|
|
@@ -17641,18 +17697,18 @@ var SuperDrawerContent = ({ children, actions }) => {
|
|
|
17641
17697
|
const { width = 1040 /* Normal */ } = firstContent ?? {};
|
|
17642
17698
|
function wrapWithMotionAndMaybeBack(children2) {
|
|
17643
17699
|
if (kind === "open") {
|
|
17644
|
-
return /* @__PURE__ */ (0,
|
|
17700
|
+
return /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(import_framer_motion4.motion.div, { css: Css.p3.fg1.oa.$, children: children2 }, "content");
|
|
17645
17701
|
} else if (kind === "detail") {
|
|
17646
|
-
return /* @__PURE__ */ (0,
|
|
17647
|
-
|
|
17702
|
+
return /* @__PURE__ */ (0, import_jsx_runtime157.jsxs)(
|
|
17703
|
+
import_framer_motion4.motion.div,
|
|
17648
17704
|
{
|
|
17649
17705
|
css: Css.px3.pt2.pb3.fg1.$,
|
|
17650
17706
|
animate: { overflow: "auto" },
|
|
17651
17707
|
transition: { overflow: { delay: 0.3 } },
|
|
17652
17708
|
children: [
|
|
17653
|
-
/* @__PURE__ */ (0,
|
|
17654
|
-
/* @__PURE__ */ (0,
|
|
17655
|
-
|
|
17709
|
+
/* @__PURE__ */ (0, import_jsx_runtime157.jsx)(Button, { label: "Back", icon: "chevronLeft", variant: "tertiary", onClick: closeDrawerDetail }),
|
|
17710
|
+
/* @__PURE__ */ (0, import_jsx_runtime157.jsx)(
|
|
17711
|
+
import_framer_motion4.motion.div,
|
|
17656
17712
|
{
|
|
17657
17713
|
initial: { x: width, opacity: 0 },
|
|
17658
17714
|
animate: { x: 0, opacity: 1 },
|
|
@@ -17667,27 +17723,27 @@ var SuperDrawerContent = ({ children, actions }) => {
|
|
|
17667
17723
|
"content"
|
|
17668
17724
|
);
|
|
17669
17725
|
} else {
|
|
17670
|
-
return /* @__PURE__ */ (0,
|
|
17726
|
+
return /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(import_framer_motion4.motion.div, { css: Css.p3.fg1.$, style: { overflow: "auto" } }, "content");
|
|
17671
17727
|
}
|
|
17672
17728
|
}
|
|
17673
|
-
return /* @__PURE__ */ (0,
|
|
17729
|
+
return /* @__PURE__ */ (0, import_jsx_runtime157.jsxs)(import_jsx_runtime157.Fragment, { children: [
|
|
17674
17730
|
wrapWithMotionAndMaybeBack(children),
|
|
17675
|
-
actions && /* @__PURE__ */ (0,
|
|
17731
|
+
actions && /* @__PURE__ */ (0, import_jsx_runtime157.jsx)("footer", { css: Css.bt.bcGray200.p3.df.aic.jcfe.$, children: /* @__PURE__ */ (0, import_jsx_runtime157.jsx)("div", { css: Css.df.gap1.$, children: actions.map((buttonProps, i) => /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(Button, { ...buttonProps }, i)) }) })
|
|
17676
17732
|
] });
|
|
17677
17733
|
};
|
|
17678
17734
|
|
|
17679
17735
|
// src/components/Tabs.tsx
|
|
17680
17736
|
var import_change_case7 = require("change-case");
|
|
17681
|
-
var
|
|
17737
|
+
var import_react109 = require("react");
|
|
17682
17738
|
var import_react_aria50 = require("react-aria");
|
|
17683
17739
|
var import_react_router2 = require("react-router");
|
|
17684
17740
|
var import_react_router_dom5 = require("react-router-dom");
|
|
17685
|
-
var
|
|
17741
|
+
var import_jsx_runtime158 = require("@emotion/react/jsx-runtime");
|
|
17686
17742
|
function TabsWithContent(props) {
|
|
17687
17743
|
const styles = hideTabs(props) ? {} : Css.pt3.$;
|
|
17688
|
-
return /* @__PURE__ */ (0,
|
|
17689
|
-
/* @__PURE__ */ (0,
|
|
17690
|
-
/* @__PURE__ */ (0,
|
|
17744
|
+
return /* @__PURE__ */ (0, import_jsx_runtime158.jsxs)(import_jsx_runtime158.Fragment, { children: [
|
|
17745
|
+
/* @__PURE__ */ (0, import_jsx_runtime158.jsx)(Tabs, { ...props }),
|
|
17746
|
+
/* @__PURE__ */ (0, import_jsx_runtime158.jsx)(TabContent, { ...props, contentXss: { ...styles, ...props.contentXss } })
|
|
17691
17747
|
] });
|
|
17692
17748
|
}
|
|
17693
17749
|
function TabContent(props) {
|
|
@@ -17702,7 +17758,7 @@ function TabContent(props) {
|
|
|
17702
17758
|
return (
|
|
17703
17759
|
// Using FullBleed to allow the tab's bgColor to extend to the edges of the <ScrollableContent /> element.
|
|
17704
17760
|
// Omit the padding from `FullBleed` if the caller passes in the `paddingLeft/Right` styles.
|
|
17705
|
-
/* @__PURE__ */ (0,
|
|
17761
|
+
/* @__PURE__ */ (0, import_jsx_runtime158.jsx)(FullBleed, { omitPadding: "paddingLeft" in contentXss || "paddingRight" in contentXss, children: /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(
|
|
17706
17762
|
"div",
|
|
17707
17763
|
{
|
|
17708
17764
|
"aria-labelledby": `${uniqueValue}-tab`,
|
|
@@ -17711,7 +17767,7 @@ function TabContent(props) {
|
|
|
17711
17767
|
tabIndex: 0,
|
|
17712
17768
|
...tid.panel,
|
|
17713
17769
|
css: contentXss,
|
|
17714
|
-
children: isRouteTab(selectedTab) ? /* @__PURE__ */ (0,
|
|
17770
|
+
children: isRouteTab(selectedTab) ? /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(import_react_router2.Route, { path: selectedTab.path, render: selectedTab.render }) : selectedTab.render()
|
|
17715
17771
|
}
|
|
17716
17772
|
) })
|
|
17717
17773
|
);
|
|
@@ -17724,9 +17780,9 @@ function Tabs(props) {
|
|
|
17724
17780
|
) : props.selected;
|
|
17725
17781
|
const { isFocusVisible, focusProps } = (0, import_react_aria50.useFocusRing)();
|
|
17726
17782
|
const tid = useTestIds(others, "tabs");
|
|
17727
|
-
const [active, setActive] = (0,
|
|
17728
|
-
const ref = (0,
|
|
17729
|
-
(0,
|
|
17783
|
+
const [active, setActive] = (0, import_react109.useState)(selected);
|
|
17784
|
+
const ref = (0, import_react109.useRef)(null);
|
|
17785
|
+
(0, import_react109.useEffect)(() => setActive(selected), [selected]);
|
|
17730
17786
|
function onKeyUp(e) {
|
|
17731
17787
|
if (e.key === "ArrowLeft" || e.key === "ArrowRight") {
|
|
17732
17788
|
const nextTabValue = getNextTabValue(active, e.key, tabs);
|
|
@@ -17742,10 +17798,10 @@ function Tabs(props) {
|
|
|
17742
17798
|
setActive(selected);
|
|
17743
17799
|
}
|
|
17744
17800
|
}
|
|
17745
|
-
return /* @__PURE__ */ (0,
|
|
17746
|
-
!hideTabs(props) && /* @__PURE__ */ (0,
|
|
17801
|
+
return /* @__PURE__ */ (0, import_jsx_runtime158.jsxs)("div", { css: { ...Css.df.aic.oa.wsnw.gap1.$, ...includeBottomBorder ? { ...Css.bb.bcGray200.$ } : {} }, children: [
|
|
17802
|
+
!hideTabs(props) && /* @__PURE__ */ (0, import_jsx_runtime158.jsx)("div", { ref, css: Css.dif.gap1.asfe.$, "aria-label": ariaLabel, role: "tablist", ...tid, children: tabs.map((tab) => {
|
|
17747
17803
|
const uniqueValue = uniqueTabValue(tab);
|
|
17748
|
-
return /* @__PURE__ */ (0,
|
|
17804
|
+
return /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(
|
|
17749
17805
|
TabImpl,
|
|
17750
17806
|
{
|
|
17751
17807
|
active: active === uniqueValue,
|
|
@@ -17760,7 +17816,7 @@ function Tabs(props) {
|
|
|
17760
17816
|
uniqueValue
|
|
17761
17817
|
);
|
|
17762
17818
|
}) }),
|
|
17763
|
-
right && /* @__PURE__ */ (0,
|
|
17819
|
+
right && /* @__PURE__ */ (0, import_jsx_runtime158.jsx)("div", { css: Css.mla.df.aic.gap1.pb1.$, children: right })
|
|
17764
17820
|
] });
|
|
17765
17821
|
}
|
|
17766
17822
|
function TabImpl(props) {
|
|
@@ -17768,7 +17824,7 @@ function TabImpl(props) {
|
|
|
17768
17824
|
const { disabled = false, name: label, icon, endAdornment } = tab;
|
|
17769
17825
|
const isDisabled = !!disabled;
|
|
17770
17826
|
const { hoverProps, isHovered } = (0, import_react_aria50.useHover)({ isDisabled });
|
|
17771
|
-
const { baseStyles: baseStyles4, activeStyles:
|
|
17827
|
+
const { baseStyles: baseStyles4, activeStyles: activeStyles4, focusRingStyles: focusRingStyles2, hoverStyles: hoverStyles4, disabledStyles: disabledStyles3, activeHoverStyles } = (0, import_react109.useMemo)(
|
|
17772
17828
|
() => getTabStyles(),
|
|
17773
17829
|
[]
|
|
17774
17830
|
);
|
|
@@ -17783,7 +17839,7 @@ function TabImpl(props) {
|
|
|
17783
17839
|
...others,
|
|
17784
17840
|
css: {
|
|
17785
17841
|
...baseStyles4,
|
|
17786
|
-
...active &&
|
|
17842
|
+
...active && activeStyles4,
|
|
17787
17843
|
...isDisabled && disabledStyles3,
|
|
17788
17844
|
...isHovered && hoverStyles4,
|
|
17789
17845
|
...isHovered && active && activeHoverStyles,
|
|
@@ -17795,15 +17851,15 @@ function TabImpl(props) {
|
|
|
17795
17851
|
onBlur,
|
|
17796
17852
|
...isRouteTab(tab) ? {} : { onClick: () => onClick(tab.value) }
|
|
17797
17853
|
});
|
|
17798
|
-
const tabLabel = /* @__PURE__ */ (0,
|
|
17854
|
+
const tabLabel = /* @__PURE__ */ (0, import_jsx_runtime158.jsxs)(import_jsx_runtime158.Fragment, { children: [
|
|
17799
17855
|
label,
|
|
17800
|
-
(icon || endAdornment) && /* @__PURE__ */ (0,
|
|
17856
|
+
(icon || endAdornment) && /* @__PURE__ */ (0, import_jsx_runtime158.jsx)("span", { css: Css.ml1.$, children: icon ? /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(Icon, { icon }) : endAdornment })
|
|
17801
17857
|
] });
|
|
17802
17858
|
return isDisabled ? maybeTooltip({
|
|
17803
17859
|
title: resolveTooltip(disabled),
|
|
17804
17860
|
placement: "top",
|
|
17805
|
-
children: /* @__PURE__ */ (0,
|
|
17806
|
-
}) : isRouteTab(tab) ? /* @__PURE__ */ (0,
|
|
17861
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime158.jsx)("div", { ...tabProps, children: tabLabel })
|
|
17862
|
+
}) : isRouteTab(tab) ? /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(import_react_router_dom5.Link, { ...{ ...tabProps, ...interactiveProps }, className: "navLink", to: tab.href, children: tabLabel }) : /* @__PURE__ */ (0, import_jsx_runtime158.jsx)("button", { ...{ ...tabProps, ...interactiveProps }, children: tabLabel });
|
|
17807
17863
|
}
|
|
17808
17864
|
function getTabStyles() {
|
|
17809
17865
|
const borderBottomWidthPx = 4;
|
|
@@ -17840,16 +17896,16 @@ function hideTabs(props) {
|
|
|
17840
17896
|
}
|
|
17841
17897
|
|
|
17842
17898
|
// src/components/Tag.tsx
|
|
17843
|
-
var
|
|
17844
|
-
var
|
|
17845
|
-
var
|
|
17899
|
+
var import_utils121 = require("@react-aria/utils");
|
|
17900
|
+
var import_react110 = require("react");
|
|
17901
|
+
var import_jsx_runtime159 = require("@emotion/react/jsx-runtime");
|
|
17846
17902
|
function Tag(props) {
|
|
17847
17903
|
const { text, type, xss, preventTooltip = false, ...otherProps } = props;
|
|
17848
17904
|
const typeStyles2 = getStyles(type);
|
|
17849
17905
|
const tid = useTestIds(otherProps);
|
|
17850
|
-
const [showTooltip, setShowTooltip] = (0,
|
|
17851
|
-
const ref = (0,
|
|
17852
|
-
(0,
|
|
17906
|
+
const [showTooltip, setShowTooltip] = (0, import_react110.useState)(false);
|
|
17907
|
+
const ref = (0, import_react110.useRef)(null);
|
|
17908
|
+
(0, import_utils121.useResizeObserver)({
|
|
17853
17909
|
ref,
|
|
17854
17910
|
onResize: () => {
|
|
17855
17911
|
if (ref.current) {
|
|
@@ -17859,9 +17915,9 @@ function Tag(props) {
|
|
|
17859
17915
|
});
|
|
17860
17916
|
return maybeTooltip({
|
|
17861
17917
|
title: !preventTooltip && showTooltip ? text : void 0,
|
|
17862
|
-
children: /* @__PURE__ */ (0,
|
|
17863
|
-
otherProps.icon && /* @__PURE__ */ (0,
|
|
17864
|
-
/* @__PURE__ */ (0,
|
|
17918
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime159.jsxs)("span", { ...tid, css: { ...Css.dif.tinySb.ttu.aic.gapPx(4).pxPx(6).pyPx(2).gray900.br4.$, ...typeStyles2, ...xss }, children: [
|
|
17919
|
+
otherProps.icon && /* @__PURE__ */ (0, import_jsx_runtime159.jsx)("span", { css: Css.fs0.$, children: /* @__PURE__ */ (0, import_jsx_runtime159.jsx)(Icon, { icon: otherProps.icon, inc: 1.5 }) }),
|
|
17920
|
+
/* @__PURE__ */ (0, import_jsx_runtime159.jsx)("span", { ref, css: Css.lineClamp1.wbba.$, children: text })
|
|
17865
17921
|
] })
|
|
17866
17922
|
});
|
|
17867
17923
|
}
|
|
@@ -17881,18 +17937,18 @@ function getStyles(type) {
|
|
|
17881
17937
|
}
|
|
17882
17938
|
|
|
17883
17939
|
// src/components/Toast/Toast.tsx
|
|
17884
|
-
var
|
|
17940
|
+
var import_jsx_runtime160 = require("@emotion/react/jsx-runtime");
|
|
17885
17941
|
function Toast() {
|
|
17886
17942
|
const { setNotice, notice } = useToastContext();
|
|
17887
17943
|
const tid = useTestIds({}, "toast");
|
|
17888
|
-
return /* @__PURE__ */ (0,
|
|
17944
|
+
return /* @__PURE__ */ (0, import_jsx_runtime160.jsx)(import_jsx_runtime160.Fragment, { children: notice && /* @__PURE__ */ (0, import_jsx_runtime160.jsx)(Banner, { ...notice, ...tid, onClose: () => setNotice(void 0) }) });
|
|
17889
17945
|
}
|
|
17890
17946
|
|
|
17891
17947
|
// src/components/Toast/useToast.tsx
|
|
17892
|
-
var
|
|
17948
|
+
var import_react111 = require("react");
|
|
17893
17949
|
function useToast() {
|
|
17894
17950
|
const { setNotice, clear } = useToastContext();
|
|
17895
|
-
const showToast = (0,
|
|
17951
|
+
const showToast = (0, import_react111.useCallback)((props) => setNotice(props), [setNotice]);
|
|
17896
17952
|
return { showToast, clear };
|
|
17897
17953
|
}
|
|
17898
17954
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -18084,6 +18140,7 @@ function useToast() {
|
|
|
18084
18140
|
getTableStyles,
|
|
18085
18141
|
headerRenderFn,
|
|
18086
18142
|
hoverStyles,
|
|
18143
|
+
iconButtonCircleStylesHover,
|
|
18087
18144
|
iconButtonContrastStylesHover,
|
|
18088
18145
|
iconButtonStylesHover,
|
|
18089
18146
|
iconCardStylesHover,
|