@homebound/beam 2.417.7 → 2.417.9
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/{chunk-XH44AYND.js → chunk-ZPT2ZR5B.js} +28 -1
- package/dist/chunk-ZPT2ZR5B.js.map +1 -0
- package/dist/index.cjs +418 -422
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +101 -0
- package/dist/index.css.map +1 -1
- package/dist/index.d.cts +17 -3
- package/dist/index.d.ts +17 -3
- package/dist/index.js +163 -190
- package/dist/index.js.map +1 -1
- package/dist/utils/rtlUtils.cjs.map +1 -1
- package/dist/utils/rtlUtils.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-XH44AYND.js.map +0 -1
package/dist/index.cjs
CHANGED
|
@@ -4351,6 +4351,31 @@ var import_react_dom = require("react-dom");
|
|
|
4351
4351
|
var import_react_popper = require("react-popper");
|
|
4352
4352
|
var import_react_stately = require("react-stately");
|
|
4353
4353
|
|
|
4354
|
+
// src/utils/inlineStyles.ts
|
|
4355
|
+
function isInlineStyleValue(value) {
|
|
4356
|
+
return typeof value === "string" || typeof value === "number";
|
|
4357
|
+
}
|
|
4358
|
+
function setInlineStyles(el, styles) {
|
|
4359
|
+
Object.entries(styles).forEach(([prop, value]) => {
|
|
4360
|
+
if (!isInlineStyleValue(value)) return;
|
|
4361
|
+
if (prop.startsWith("--")) {
|
|
4362
|
+
el.style.setProperty(prop, String(value));
|
|
4363
|
+
} else {
|
|
4364
|
+
el.style[prop] = String(value);
|
|
4365
|
+
}
|
|
4366
|
+
});
|
|
4367
|
+
}
|
|
4368
|
+
function clearInlineStyles(el, styles) {
|
|
4369
|
+
Object.entries(styles).forEach(([prop, value]) => {
|
|
4370
|
+
if (!isInlineStyleValue(value)) return;
|
|
4371
|
+
if (prop.startsWith("--")) {
|
|
4372
|
+
el.style.removeProperty(prop);
|
|
4373
|
+
} else {
|
|
4374
|
+
el.style[prop] = "";
|
|
4375
|
+
}
|
|
4376
|
+
});
|
|
4377
|
+
}
|
|
4378
|
+
|
|
4354
4379
|
// src/utils/defaultTestId.ts
|
|
4355
4380
|
var import_change_case = require("change-case");
|
|
4356
4381
|
function defaultTestId(label) {
|
|
@@ -4535,11 +4560,7 @@ var Icon = import_react4.default.memo((props) => {
|
|
|
4535
4560
|
viewBox: "0 0 24 24",
|
|
4536
4561
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4537
4562
|
css: {
|
|
4538
|
-
|
|
4539
|
-
...{
|
|
4540
|
-
"& > path": Css.fill(color).$,
|
|
4541
|
-
"& > rect": Css.fill(color).$
|
|
4542
|
-
},
|
|
4563
|
+
...Css.fill(color).$,
|
|
4543
4564
|
...bgColor && Css.bgColor(bgColor).$,
|
|
4544
4565
|
...xss
|
|
4545
4566
|
},
|
|
@@ -5123,20 +5144,8 @@ var Icons = {
|
|
|
5123
5144
|
/* @__PURE__ */ (0, import_jsx_runtime3.jsx)("path", { d: "M7.43848 0.0527344C8.92278 0.0527344 10.1259 1.25595 10.126 2.74023C10.126 4.22459 8.78231 5.87619 7.43848 7.66797C6.09464 5.87619 4.75098 4.22459 4.75098 2.74023C4.75107 1.25601 5.95425 0.0528239 7.43848 0.0527344ZM7.4375 1.84473C6.94279 1.84478 6.54203 2.24552 6.54199 2.74023C6.54199 3.23499 6.94276 3.63569 7.4375 3.63574C7.93229 3.63574 8.33301 3.23502 8.33301 2.74023C8.33296 2.24549 7.93226 1.84473 7.4375 1.84473Z" })
|
|
5124
5145
|
] }),
|
|
5125
5146
|
buildings: /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(import_jsx_runtime3.Fragment, { children: [
|
|
5126
|
-
/* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
5127
|
-
|
|
5128
|
-
{
|
|
5129
|
-
d: "M14.1787 3.58594V23.6494H0V3.60449L7.08887 0.347656L14.1787 3.58594ZM3.42285 20.2275H5.86719V17.7832H3.42285V20.2275ZM8.31348 17.7832V20.2275H10.7578V17.7832H8.31348ZM3.42285 16.3174H5.86719V13.873H3.42285V16.3174ZM8.31348 16.3174H10.7578V13.873H8.31348V16.3174ZM3.42285 12.4062H5.86719V9.96191H3.42285V12.4062ZM8.31348 12.4062H10.7578V9.96191H8.31348V12.4062ZM3.42285 8.49414H5.86719V6.0498H3.42285V8.49414ZM8.31348 8.49414H10.7578V6.0498H8.31348V8.49414Z",
|
|
5130
|
-
fill: "#8D8D8D"
|
|
5131
|
-
}
|
|
5132
|
-
),
|
|
5133
|
-
/* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
5134
|
-
"path",
|
|
5135
|
-
{
|
|
5136
|
-
d: "M22 23.6523H15.6445V8.00684H22V23.6523ZM17.5996 18.7617V21.2061H20.0439V18.7617H17.5996ZM17.5996 17.2959H20.0439V14.8516H17.5996V17.2959ZM17.5996 13.3828H20.0439V10.9385H17.5996V13.3828Z",
|
|
5137
|
-
fill: "#8D8D8D"
|
|
5138
|
-
}
|
|
5139
|
-
)
|
|
5147
|
+
/* @__PURE__ */ (0, import_jsx_runtime3.jsx)("path", { d: "M14.1787 3.58594V23.6494H0V3.60449L7.08887 0.347656L14.1787 3.58594ZM3.42285 20.2275H5.86719V17.7832H3.42285V20.2275ZM8.31348 17.7832V20.2275H10.7578V17.7832H8.31348ZM3.42285 16.3174H5.86719V13.873H3.42285V16.3174ZM8.31348 16.3174H10.7578V13.873H8.31348V16.3174ZM3.42285 12.4062H5.86719V9.96191H3.42285V12.4062ZM8.31348 12.4062H10.7578V9.96191H8.31348V12.4062ZM3.42285 8.49414H5.86719V6.0498H3.42285V8.49414ZM8.31348 8.49414H10.7578V6.0498H8.31348V8.49414Z" }),
|
|
5148
|
+
/* @__PURE__ */ (0, import_jsx_runtime3.jsx)("path", { d: "M22 23.6523H15.6445V8.00684H22V23.6523ZM17.5996 18.7617V21.2061H20.0439V18.7617H17.5996ZM17.5996 17.2959H20.0439V14.8516H17.5996V17.2959ZM17.5996 13.3828H20.0439V10.9385H17.5996V13.3828Z" })
|
|
5140
5149
|
] }),
|
|
5141
5150
|
community: /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(import_jsx_runtime3.Fragment, { children: [
|
|
5142
5151
|
/* @__PURE__ */ (0, import_jsx_runtime3.jsx)("path", { d: "M6.41018 0.520509C6.61589 0.334405 6.93017 0.334214 7.13576 0.520509L11.1797 4.20899C11.1553 4.22924 11.1302 4.24904 11.1065 4.27051L11.1016 4.27539L7.85549 7.23535V6.22266H5.69045V8.96289C5.69045 9.2644 5.44619 9.51172 5.14846 9.51172H3.52444C3.22683 9.51157 2.98342 9.26431 2.98342 8.96289V5.12598H2.0635C1.81449 5.12598 1.70074 4.8129 1.88479 4.64844L6.41018 0.520509ZM10.5615 8.96289C10.5615 9.2644 10.3183 9.51172 10.0205 9.51172H8.39651C8.24437 9.51169 8.10738 9.44603 8.00881 9.34277L10.5615 7.01465V8.96289Z" }),
|
|
@@ -5253,17 +5262,17 @@ function Chips(props) {
|
|
|
5253
5262
|
// src/components/Table/GridTable.tsx
|
|
5254
5263
|
var import_memoize_one = __toESM(require("memoize-one"), 1);
|
|
5255
5264
|
var import_mobx10 = require("mobx");
|
|
5256
|
-
var
|
|
5265
|
+
var import_react73 = __toESM(require("react"), 1);
|
|
5257
5266
|
var import_react_virtuoso2 = require("react-virtuoso");
|
|
5258
5267
|
|
|
5259
5268
|
// src/components/Table/GridTableApi.ts
|
|
5260
5269
|
var import_mobx9 = require("mobx");
|
|
5261
5270
|
var import_mobx_utils = require("mobx-utils");
|
|
5262
|
-
var
|
|
5271
|
+
var import_react69 = require("react");
|
|
5263
5272
|
|
|
5264
5273
|
// src/components/Table/utils/TableState.ts
|
|
5265
5274
|
var import_mobx8 = require("mobx");
|
|
5266
|
-
var
|
|
5275
|
+
var import_react68 = __toESM(require("react"), 1);
|
|
5267
5276
|
|
|
5268
5277
|
// src/components/Table/utils/ColumnStates.ts
|
|
5269
5278
|
var import_change_case5 = require("change-case");
|
|
@@ -5502,7 +5511,7 @@ function CollapseToggle(props) {
|
|
|
5502
5511
|
}
|
|
5503
5512
|
|
|
5504
5513
|
// src/components/Table/components/SelectToggle.tsx
|
|
5505
|
-
var
|
|
5514
|
+
var import_react67 = require("react");
|
|
5506
5515
|
|
|
5507
5516
|
// src/inputs/Autocomplete.tsx
|
|
5508
5517
|
var import_react50 = require("react");
|
|
@@ -6824,13 +6833,13 @@ function AvatarButton(props) {
|
|
|
6824
6833
|
menuTriggerProps,
|
|
6825
6834
|
openInNew,
|
|
6826
6835
|
forceFocusStyles = false,
|
|
6827
|
-
|
|
6836
|
+
__storyState,
|
|
6828
6837
|
...avatarProps
|
|
6829
6838
|
} = props;
|
|
6830
6839
|
const isDisabled = !!disabled;
|
|
6831
6840
|
const ariaProps = { onPress, isDisabled, autoFocus, ...menuTriggerProps };
|
|
6832
6841
|
const ref = useGetRef(buttonRef);
|
|
6833
|
-
const { buttonProps, isPressed } = (0, import_react_aria6.useButton)(
|
|
6842
|
+
const { buttonProps, isPressed: isPressedFromEvents } = (0, import_react_aria6.useButton)(
|
|
6834
6843
|
{
|
|
6835
6844
|
...ariaProps,
|
|
6836
6845
|
onPress: typeof onPress === "string" ? noop : onPress,
|
|
@@ -6838,8 +6847,11 @@ function AvatarButton(props) {
|
|
|
6838
6847
|
},
|
|
6839
6848
|
ref
|
|
6840
6849
|
);
|
|
6841
|
-
const { focusProps, isFocusVisible } = (0, import_react_aria6.useFocusRing)(ariaProps);
|
|
6842
|
-
const { hoverProps, isHovered } = (0, import_react_aria6.useHover)(ariaProps);
|
|
6850
|
+
const { focusProps, isFocusVisible: isFocusVisibleFromEvents } = (0, import_react_aria6.useFocusRing)(ariaProps);
|
|
6851
|
+
const { hoverProps, isHovered: isHoveredFromEvents } = (0, import_react_aria6.useHover)(ariaProps);
|
|
6852
|
+
const isHovered = __storyState?.hovered ?? isHoveredFromEvents;
|
|
6853
|
+
const isFocusVisible = __storyState?.focusVisible ?? isFocusVisibleFromEvents;
|
|
6854
|
+
const isPressed = __storyState?.pressed ?? isPressedFromEvents;
|
|
6843
6855
|
const tid = useTestIds(props, avatarProps.name);
|
|
6844
6856
|
const styles = (0, import_react22.useMemo)(
|
|
6845
6857
|
() => ({
|
|
@@ -6862,7 +6874,7 @@ function AvatarButton(props) {
|
|
|
6862
6874
|
};
|
|
6863
6875
|
const content = /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(import_jsx_runtime23.Fragment, { children: [
|
|
6864
6876
|
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)(Avatar, { ...avatarProps, ...tid, disableTooltip: true }),
|
|
6865
|
-
|
|
6877
|
+
isPressed && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("span", { css: pressedOverlayCss })
|
|
6866
6878
|
] });
|
|
6867
6879
|
return maybeTooltip({
|
|
6868
6880
|
// Default the tooltip to the avatar's name, if defined.
|
|
@@ -8572,7 +8584,6 @@ function RowImpl(props) {
|
|
|
8572
8584
|
const rowStyle = rowStyles?.[row.kind];
|
|
8573
8585
|
const RowTag = as === "table" ? "tr" : "div";
|
|
8574
8586
|
const sortOn = tableState.sortConfig?.on;
|
|
8575
|
-
const revealOnRowHoverClass = "revealOnRowHover";
|
|
8576
8587
|
const showRowHoverColor = !reservedRowKinds.includes(row.kind) && !omitRowHover && style.rowHoverColor !== "none";
|
|
8577
8588
|
const rowStyleCellCss = maybeApplyFunction(row, rowStyle?.cellCss);
|
|
8578
8589
|
const levelStyle = style.levels && (typeof style.levels === "function" ? style.levels(level) : style.levels[level]);
|
|
@@ -8602,11 +8613,7 @@ function RowImpl(props) {
|
|
|
8602
8613
|
...isLastBodyRow && style.lastRowCss,
|
|
8603
8614
|
// Apply `cursorPointer` to the row if it has a link or `onClick` value.
|
|
8604
8615
|
...(rowStyle?.rowLink || rowStyle?.onClick) && { "&:hover": Css.cursorPointer.$ },
|
|
8605
|
-
...maybeApplyFunction(row, rowStyle?.rowCss)
|
|
8606
|
-
...{
|
|
8607
|
-
[`> .${revealOnRowHoverClass} > *`]: Css.vh.$,
|
|
8608
|
-
[`:hover > .${revealOnRowHoverClass} > *`]: Css.vv.$
|
|
8609
|
-
}
|
|
8616
|
+
...maybeApplyFunction(row, rowStyle?.rowCss)
|
|
8610
8617
|
// keptLastRowCss is now applied per-cell in cellCss below
|
|
8611
8618
|
};
|
|
8612
8619
|
let currentColspan = 1;
|
|
@@ -8668,7 +8675,6 @@ function RowImpl(props) {
|
|
|
8668
8675
|
};
|
|
8669
8676
|
const maybeContent = applyRowFn(column2, row, rowApi, level, isExpanded, dragData);
|
|
8670
8677
|
currentColspan = isGridCellContent(maybeContent) && typeof maybeContent.colspan === "number" ? maybeContent.colspan : isExpandableHeader ? numExpandedColumns + 1 : 1;
|
|
8671
|
-
const revealOnRowHover = isGridCellContent(maybeContent) ? maybeContent.revealOnRowHover : false;
|
|
8672
8678
|
const canSortColumn = sortOn === "client" && column2.clientSideSort !== false || sortOn === "server" && !!column2.serverSideSortKey;
|
|
8673
8679
|
const alignment = getAlignment(column2, maybeContent);
|
|
8674
8680
|
const justificationCss = getJustification(column2, maybeContent, as, alignment);
|
|
@@ -8758,20 +8764,10 @@ function RowImpl(props) {
|
|
|
8758
8764
|
// If we have a 'levelIndent' defined, then subtract that amount from the first content column's width to ensure all columns will still line up properly
|
|
8759
8765
|
width: `calc(${columnSizes.slice(columnIndex, columnIndex + currentColspan).join(" + ")}${applyFirstContentColumnStyles && levelIndent ? ` - ${levelIndent}px` : ""})`
|
|
8760
8766
|
};
|
|
8761
|
-
const cellClassNames = revealOnRowHover ? revealOnRowHoverClass : void 0;
|
|
8762
8767
|
const cellOnClick = applyCellHighlight ? () => api.setActiveCellId(cellId) : void 0;
|
|
8763
8768
|
const tooltip = isGridCellContent(maybeContent) ? maybeContent.tooltip : void 0;
|
|
8764
8769
|
const renderFn = (rowStyle?.renderCell || rowStyle?.rowLink) && wrapAction ? rowLinkRenderFn(as, currentColspan) : isHeader || isTotals || isExpandableHeader ? headerRenderFn(column2, as, currentColspan) : rowStyle?.onClick && wrapAction ? rowClickRenderFn(as, api, currentColspan) : defaultRenderFn(as, currentColspan);
|
|
8765
|
-
const cellElement = renderFn(
|
|
8766
|
-
columnIndex,
|
|
8767
|
-
cellCss,
|
|
8768
|
-
content,
|
|
8769
|
-
row,
|
|
8770
|
-
rowStyle,
|
|
8771
|
-
cellClassNames,
|
|
8772
|
-
cellOnClick,
|
|
8773
|
-
tooltip
|
|
8774
|
-
);
|
|
8770
|
+
const cellElement = renderFn(columnIndex, cellCss, content, row, rowStyle, void 0, cellOnClick, tooltip);
|
|
8775
8771
|
if (!disableColumnResizing && isHeader && columnIndex < columns.length - 1 && currentColspan === 1 && !column2.isAction) {
|
|
8776
8772
|
const currentSizeStr = columnSizes[columnIndex];
|
|
8777
8773
|
const minWidthPx = column2.mw ? parseInt(column2.mw.replace("px", ""), 10) : 100;
|
|
@@ -12313,9 +12309,8 @@ var radioDisabled = {
|
|
|
12313
12309
|
};
|
|
12314
12310
|
|
|
12315
12311
|
// src/inputs/RichTextField.tsx
|
|
12316
|
-
var import_react60 = require("@emotion/react");
|
|
12317
12312
|
var import_dompurify = __toESM(require("dompurify"), 1);
|
|
12318
|
-
var
|
|
12313
|
+
var import_react60 = require("react");
|
|
12319
12314
|
|
|
12320
12315
|
// src/inputs/RichTextField.mock.tsx
|
|
12321
12316
|
var import_change_case4 = require("change-case");
|
|
@@ -12367,16 +12362,16 @@ function RichTextFieldImpl(props) {
|
|
|
12367
12362
|
readOnly,
|
|
12368
12363
|
fullWidth = fieldProps?.fullWidth ?? false
|
|
12369
12364
|
} = props;
|
|
12370
|
-
const [editor, setEditor] = (0,
|
|
12371
|
-
const editorElement = (0,
|
|
12372
|
-
const currentHtml = (0,
|
|
12373
|
-
const onChangeRef = (0,
|
|
12365
|
+
const [editor, setEditor] = (0, import_react60.useState)();
|
|
12366
|
+
const editorElement = (0, import_react60.useRef)();
|
|
12367
|
+
const currentHtml = (0, import_react60.useRef)(void 0);
|
|
12368
|
+
const onChangeRef = (0, import_react60.useRef)(onChange);
|
|
12374
12369
|
onChangeRef.current = onChange;
|
|
12375
|
-
const onBlurRef = (0,
|
|
12370
|
+
const onBlurRef = (0, import_react60.useRef)(onBlur);
|
|
12376
12371
|
onBlurRef.current = onBlur;
|
|
12377
|
-
const onFocusRef = (0,
|
|
12372
|
+
const onFocusRef = (0, import_react60.useRef)(onFocus);
|
|
12378
12373
|
onFocusRef.current = onFocus;
|
|
12379
|
-
const id = (0,
|
|
12374
|
+
const id = (0, import_react60.useMemo)(() => {
|
|
12380
12375
|
if (readOnly) return;
|
|
12381
12376
|
const id2 = `trix-editor-${trixId}`;
|
|
12382
12377
|
trixId++;
|
|
@@ -12417,7 +12412,7 @@ function RichTextFieldImpl(props) {
|
|
|
12417
12412
|
window.addEventListener("trix-initialize", onEditorInit);
|
|
12418
12413
|
return id2;
|
|
12419
12414
|
}, [readOnly]);
|
|
12420
|
-
(0,
|
|
12415
|
+
(0, import_react60.useEffect)(() => {
|
|
12421
12416
|
if (!readOnly && editor && value !== currentHtml.current) {
|
|
12422
12417
|
editor.loadHTML(value || "");
|
|
12423
12418
|
}
|
|
@@ -12426,17 +12421,16 @@ function RichTextFieldImpl(props) {
|
|
|
12426
12421
|
if (!readOnly) {
|
|
12427
12422
|
return /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("div", { css: Css.w100.if(!fullWidth).maxw("550px").$, children: [
|
|
12428
12423
|
label && /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(Label, { labelProps: {}, label }),
|
|
12429
|
-
/* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("div", {
|
|
12424
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("div", { className: "beam-trix-editor", children: [
|
|
12430
12425
|
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("input", { type: "hidden", id: `input-${id}`, value }),
|
|
12431
|
-
(0,
|
|
12426
|
+
(0, import_react60.createElement)("trix-editor", {
|
|
12432
12427
|
id,
|
|
12433
12428
|
input: `input-${id}`,
|
|
12434
12429
|
// Autofocus attribute is case sensitive since this is standard HTML
|
|
12435
12430
|
...autoFocus ? { autofocus: true } : {},
|
|
12436
12431
|
...placeholder ? { placeholder } : {}
|
|
12437
12432
|
})
|
|
12438
|
-
] })
|
|
12439
|
-
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)(import_react60.Global, { styles: [tributeOverrides] })
|
|
12433
|
+
] })
|
|
12440
12434
|
] });
|
|
12441
12435
|
} else {
|
|
12442
12436
|
return /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("div", { css: Css.w100.if(!fullWidth).maxw("550px").$, children: [
|
|
@@ -12472,46 +12466,13 @@ function attachTributeJs(mergeTags, editorElement) {
|
|
|
12472
12466
|
} catch {
|
|
12473
12467
|
}
|
|
12474
12468
|
}
|
|
12475
|
-
var trixCssOverrides = {
|
|
12476
|
-
...Css.relative.add({ wordBreak: "break-word" }).br4.bcGray300.ba.$,
|
|
12477
|
-
// Put the toolbar on the bottom
|
|
12478
|
-
...Css.df.fdcr.gap1.$,
|
|
12479
|
-
// Some basic copy/paste from TextFieldBase
|
|
12480
|
-
"& trix-editor": Css.bgWhite.sm.gray900.bn.p1.$,
|
|
12481
|
-
// Highlight on focus
|
|
12482
|
-
"&:focus-within": Css.bcBlue700.$,
|
|
12483
|
-
"& trix-toolbar": Css.m1.$,
|
|
12484
|
-
// Make the buttons closer to ours
|
|
12485
|
-
"& .trix-button:not(:first-of-type)": Css.bn.$,
|
|
12486
|
-
"& .trix-button-group": Css.bn.m0.$,
|
|
12487
|
-
"& .trix-button": Css.bgWhite.sm.$,
|
|
12488
|
-
// Height is hard-coded to 1.6 in trix, and the default width is wider than we want
|
|
12489
|
-
"& .trix-button--icon": Css.w("1.6em").p0.mxPx(4).bn.$,
|
|
12490
|
-
// icons are hard-coded svg's, so this is a simpler way to get lighter gray for now
|
|
12491
|
-
"& .trix-button--icon::before": Css.add("opacity", "0.3").$,
|
|
12492
|
-
// trix defaults to is active = blue bg - turn that off + make icon darker
|
|
12493
|
-
"& .trix-button.trix-active": Css.bgWhite.add("opacity", "0.7").$,
|
|
12494
|
-
// We don't support file attachment yet, so hide that control for now.
|
|
12495
|
-
"& .trix-button-group--file-tools": Css.dn.$,
|
|
12496
|
-
// Other things that are unused and we want to hide
|
|
12497
|
-
"& .trix-button--icon-heading-1": Css.dn.$,
|
|
12498
|
-
"& .trix-button--icon-code": Css.dn.$,
|
|
12499
|
-
"& .trix-button--icon-quote": Css.dn.$,
|
|
12500
|
-
"& .trix-button--icon-increase-nesting-level": Css.dn.$,
|
|
12501
|
-
"& .trix-button--icon-decrease-nesting-level": Css.dn.$,
|
|
12502
|
-
"& .trix-button-group--history-tools": Css.dn.$
|
|
12503
|
-
};
|
|
12504
|
-
var tributeOverrides = {
|
|
12505
|
-
".tribute-container": Css.add({ minWidth: "300px" }).$,
|
|
12506
|
-
".tribute-container > ul": Css.sm.bgWhite.ba.br4.bcBlue700.oh.$
|
|
12507
|
-
};
|
|
12508
12469
|
function extractIdsFromMentions(mergeTags, content) {
|
|
12509
12470
|
return mergeTags.filter((tag) => content.includes(`@${tag}`));
|
|
12510
12471
|
}
|
|
12511
12472
|
var trixId = 1;
|
|
12512
12473
|
|
|
12513
12474
|
// src/inputs/SelectField.tsx
|
|
12514
|
-
var
|
|
12475
|
+
var import_react61 = require("react");
|
|
12515
12476
|
var import_jsx_runtime73 = require("@emotion/react/jsx-runtime");
|
|
12516
12477
|
function SelectField(props) {
|
|
12517
12478
|
const {
|
|
@@ -12522,7 +12483,7 @@ function SelectField(props) {
|
|
|
12522
12483
|
value,
|
|
12523
12484
|
...otherProps
|
|
12524
12485
|
} = props;
|
|
12525
|
-
const values = (0,
|
|
12486
|
+
const values = (0, import_react61.useMemo)(() => [value], [value]);
|
|
12526
12487
|
return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
12527
12488
|
ComboBoxBase,
|
|
12528
12489
|
{
|
|
@@ -12542,7 +12503,7 @@ function SelectField(props) {
|
|
|
12542
12503
|
}
|
|
12543
12504
|
|
|
12544
12505
|
// src/inputs/Switch.tsx
|
|
12545
|
-
var
|
|
12506
|
+
var import_react62 = require("react");
|
|
12546
12507
|
var import_react_aria35 = require("react-aria");
|
|
12547
12508
|
var import_jsx_runtime74 = require("@emotion/react/jsx-runtime");
|
|
12548
12509
|
function Switch(props) {
|
|
@@ -12557,15 +12518,18 @@ function Switch(props) {
|
|
|
12557
12518
|
label,
|
|
12558
12519
|
labelStyle = "inline",
|
|
12559
12520
|
hideLabel = false,
|
|
12521
|
+
__storyState,
|
|
12560
12522
|
...otherProps
|
|
12561
12523
|
} = props;
|
|
12562
12524
|
const isDisabled = !!disabled;
|
|
12563
12525
|
const ariaProps = { isSelected, isDisabled, ...otherProps };
|
|
12564
12526
|
const state = toToggleState(isSelected, onChange);
|
|
12565
|
-
const ref = (0,
|
|
12527
|
+
const ref = (0, import_react62.useRef)(null);
|
|
12566
12528
|
const { inputProps } = (0, import_react_aria35.useSwitch)({ ...ariaProps, "aria-label": label }, state, ref);
|
|
12567
|
-
const { isFocusVisible:
|
|
12568
|
-
const { hoverProps, isHovered } = (0, import_react_aria35.useHover)(ariaProps);
|
|
12529
|
+
const { isFocusVisible: isFocusVisibleFromEvents, focusProps } = (0, import_react_aria35.useFocusRing)(otherProps);
|
|
12530
|
+
const { hoverProps, isHovered: isHoveredFromEvents } = (0, import_react_aria35.useHover)(ariaProps);
|
|
12531
|
+
const isFocusVisible = __storyState?.focusVisible ?? isFocusVisibleFromEvents;
|
|
12532
|
+
const isHovered = __storyState?.hovered ?? isHoveredFromEvents;
|
|
12569
12533
|
const tooltip = resolveTooltip(disabled, props.tooltip);
|
|
12570
12534
|
const tid = useTestIds(otherProps, label);
|
|
12571
12535
|
return /* @__PURE__ */ (0, import_jsx_runtime74.jsxs)(
|
|
@@ -12598,7 +12562,7 @@ function Switch(props) {
|
|
|
12598
12562
|
css: {
|
|
12599
12563
|
...Css.wPx(toggleWidth(compact)).hPx(toggleHeight(compact)).bgGray200.br12.relative.transition.$,
|
|
12600
12564
|
...isHovered && switchHoverStyles,
|
|
12601
|
-
...
|
|
12565
|
+
...isFocusVisible && switchFocusStyles,
|
|
12602
12566
|
...isDisabled && Css.bgGray300.$,
|
|
12603
12567
|
...isSelected && Css.bgBlue700.$,
|
|
12604
12568
|
...isSelected && isHovered && switchSelectedHoverStyles
|
|
@@ -12639,7 +12603,7 @@ function switchCircleSelectedStyles(isCompact) {
|
|
|
12639
12603
|
}
|
|
12640
12604
|
|
|
12641
12605
|
// src/inputs/TextAreaField.tsx
|
|
12642
|
-
var
|
|
12606
|
+
var import_react63 = require("react");
|
|
12643
12607
|
var import_react_aria36 = require("react-aria");
|
|
12644
12608
|
var import_jsx_runtime75 = require("@emotion/react/jsx-runtime");
|
|
12645
12609
|
function TextAreaField(props) {
|
|
@@ -12657,8 +12621,8 @@ function TextAreaField(props) {
|
|
|
12657
12621
|
const isDisabled = !!disabled;
|
|
12658
12622
|
const isReadOnly = !!readOnly;
|
|
12659
12623
|
const textFieldProps = { ...otherProps, value, isDisabled, isReadOnly };
|
|
12660
|
-
const inputRef = (0,
|
|
12661
|
-
const inputWrapRef = (0,
|
|
12624
|
+
const inputRef = (0, import_react63.useRef)(null);
|
|
12625
|
+
const inputWrapRef = (0, import_react63.useRef)(null);
|
|
12662
12626
|
useGrowingTextField({ inputRef, inputWrapRef, value, maxLines });
|
|
12663
12627
|
const { labelProps, inputProps } = (0, import_react_aria36.useTextField)(
|
|
12664
12628
|
{
|
|
@@ -12696,7 +12660,7 @@ function TextAreaField(props) {
|
|
|
12696
12660
|
}
|
|
12697
12661
|
|
|
12698
12662
|
// src/inputs/TextField.tsx
|
|
12699
|
-
var
|
|
12663
|
+
var import_react64 = require("react");
|
|
12700
12664
|
var import_react_aria37 = require("react-aria");
|
|
12701
12665
|
var import_jsx_runtime76 = require("@emotion/react/jsx-runtime");
|
|
12702
12666
|
function TextField(props) {
|
|
@@ -12724,7 +12688,7 @@ function TextField(props) {
|
|
|
12724
12688
|
validationState: errorMsg ? "invalid" : "valid",
|
|
12725
12689
|
value
|
|
12726
12690
|
};
|
|
12727
|
-
const inputRef = (0,
|
|
12691
|
+
const inputRef = (0, import_react64.useRef)(null);
|
|
12728
12692
|
const { labelProps, inputProps } = (0, import_react_aria37.useTextField)(
|
|
12729
12693
|
{
|
|
12730
12694
|
...textFieldProps,
|
|
@@ -12760,13 +12724,13 @@ function TextField(props) {
|
|
|
12760
12724
|
}
|
|
12761
12725
|
|
|
12762
12726
|
// src/inputs/ToggleButton.tsx
|
|
12763
|
-
var
|
|
12727
|
+
var import_react65 = require("react");
|
|
12764
12728
|
var import_react_aria38 = require("react-aria");
|
|
12765
12729
|
var import_react_stately15 = require("react-stately");
|
|
12766
12730
|
var import_jsx_runtime77 = require("@emotion/react/jsx-runtime");
|
|
12767
12731
|
function ToggleButton(props) {
|
|
12768
|
-
const { selected: isSelected = false, disabled = false, label, onChange, icon, ...otherProps } = props;
|
|
12769
|
-
const [asyncInProgress, setAsyncInProgress] = (0,
|
|
12732
|
+
const { selected: isSelected = false, disabled = false, label, onChange, icon, __storyState, ...otherProps } = props;
|
|
12733
|
+
const [asyncInProgress, setAsyncInProgress] = (0, import_react65.useState)(false);
|
|
12770
12734
|
const isDisabled = !!disabled || asyncInProgress;
|
|
12771
12735
|
const ariaProps = { "aria-label": label, isSelected, isDisabled, ...otherProps };
|
|
12772
12736
|
const state = (0, import_react_stately15.useToggleState)({
|
|
@@ -12780,13 +12744,16 @@ function ToggleButton(props) {
|
|
|
12780
12744
|
return result;
|
|
12781
12745
|
}
|
|
12782
12746
|
});
|
|
12783
|
-
const labelRef = (0,
|
|
12784
|
-
const ref = (0,
|
|
12785
|
-
const tid = useTestIds(
|
|
12786
|
-
const { isPressed, pressProps } = (0, import_react_aria38.usePress)({ ref: labelRef, isDisabled });
|
|
12747
|
+
const labelRef = (0, import_react65.useRef)(null);
|
|
12748
|
+
const ref = (0, import_react65.useRef)(null);
|
|
12749
|
+
const tid = useTestIds(otherProps, label);
|
|
12750
|
+
const { isPressed: isPressedFromEvents, pressProps } = (0, import_react_aria38.usePress)({ ref: labelRef, isDisabled });
|
|
12787
12751
|
const { inputProps } = (0, import_react_aria38.useSwitch)(ariaProps, state, ref);
|
|
12788
|
-
const { isFocusVisible:
|
|
12789
|
-
const { hoverProps, isHovered } = (0, import_react_aria38.useHover)({ isDisabled });
|
|
12752
|
+
const { isFocusVisible: isFocusVisibleFromEvents, focusProps } = (0, import_react_aria38.useFocusRing)({ ...otherProps, within: true });
|
|
12753
|
+
const { hoverProps, isHovered: isHoveredFromEvents } = (0, import_react_aria38.useHover)({ isDisabled });
|
|
12754
|
+
const isHovered = __storyState?.hovered ?? isHoveredFromEvents;
|
|
12755
|
+
const isPressed = __storyState?.pressed ?? isPressedFromEvents;
|
|
12756
|
+
const isFocusVisible = __storyState?.focusVisible ?? isFocusVisibleFromEvents;
|
|
12790
12757
|
const tooltip = resolveTooltip(disabled);
|
|
12791
12758
|
const labelAttrs = {
|
|
12792
12759
|
...focusProps,
|
|
@@ -12797,7 +12764,7 @@ function ToggleButton(props) {
|
|
|
12797
12764
|
...isHovered && toggleHoverStyles,
|
|
12798
12765
|
...isPressed && togglePressStyles,
|
|
12799
12766
|
...isSelected && !isDisabled && Css.blue700.$,
|
|
12800
|
-
...
|
|
12767
|
+
...isFocusVisible && toggleFocusStyles,
|
|
12801
12768
|
...isDisabled && Css.gray300.cursorNotAllowed.$
|
|
12802
12769
|
},
|
|
12803
12770
|
...tid
|
|
@@ -12817,7 +12784,7 @@ var toggleFocusStyles = Css.bshFocus.$;
|
|
|
12817
12784
|
var togglePressStyles = Css.bgGray300.$;
|
|
12818
12785
|
|
|
12819
12786
|
// src/inputs/ToggleChipGroup.tsx
|
|
12820
|
-
var
|
|
12787
|
+
var import_react66 = require("react");
|
|
12821
12788
|
var import_react_aria39 = require("react-aria");
|
|
12822
12789
|
var import_react_stately16 = require("react-stately");
|
|
12823
12790
|
var import_jsx_runtime78 = require("@emotion/react/jsx-runtime");
|
|
@@ -12885,7 +12852,7 @@ function ToggleChip2(props) {
|
|
|
12885
12852
|
} = props;
|
|
12886
12853
|
const isDisabled = !!disabled;
|
|
12887
12854
|
const isReadOnly = !!readonly;
|
|
12888
|
-
const ref = (0,
|
|
12855
|
+
const ref = (0, import_react66.useRef)(null);
|
|
12889
12856
|
const { inputProps } = (0, import_react_aria39.useCheckboxGroupItem)({ value, "aria-label": label, isReadOnly, isDisabled }, groupState, ref);
|
|
12890
12857
|
const { isFocusVisible, focusProps } = (0, import_react_aria39.useFocusRing)();
|
|
12891
12858
|
const tooltip = resolveTooltip(disabled);
|
|
@@ -12920,7 +12887,7 @@ function ToggleChip2(props) {
|
|
|
12920
12887
|
// src/components/Table/components/SelectToggle.tsx
|
|
12921
12888
|
var import_jsx_runtime79 = require("@emotion/react/jsx-runtime");
|
|
12922
12889
|
function SelectToggle({ id, disabled }) {
|
|
12923
|
-
const { tableState } = (0,
|
|
12890
|
+
const { tableState } = (0, import_react67.useContext)(TableStateContext);
|
|
12924
12891
|
const state = useComputed(() => tableState.getSelected(id), [tableState]);
|
|
12925
12892
|
const selected = state === "checked" ? true : state === "unchecked" ? false : "indeterminate";
|
|
12926
12893
|
return /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
|
|
@@ -13659,7 +13626,7 @@ var TableState = class {
|
|
|
13659
13626
|
this.rowStates.maybeSetRowDraggedOver(id, draggedOver, requireSameParentRow);
|
|
13660
13627
|
}
|
|
13661
13628
|
};
|
|
13662
|
-
var TableStateContext =
|
|
13629
|
+
var TableStateContext = import_react68.default.createContext({
|
|
13663
13630
|
get tableState() {
|
|
13664
13631
|
throw new Error("No TableStateContext provider");
|
|
13665
13632
|
},
|
|
@@ -13689,7 +13656,7 @@ function deriveSortState(currentSortState, clickedKey, initialSortState) {
|
|
|
13689
13656
|
|
|
13690
13657
|
// src/components/Table/GridTableApi.ts
|
|
13691
13658
|
function useGridTableApi() {
|
|
13692
|
-
return (0,
|
|
13659
|
+
return (0, import_react69.useMemo)(() => new GridTableApiImpl(), []);
|
|
13693
13660
|
}
|
|
13694
13661
|
var GridTableApiImpl = class {
|
|
13695
13662
|
// This is public to GridTable but not exported outside of Beam
|
|
@@ -13843,10 +13810,10 @@ function maybeApply(maybeFn) {
|
|
|
13843
13810
|
}
|
|
13844
13811
|
|
|
13845
13812
|
// src/components/Table/hooks/useColumnResizeHandlers.ts
|
|
13846
|
-
var
|
|
13813
|
+
var import_react70 = require("react");
|
|
13847
13814
|
function useColumnResizeHandlers(columns, columnSizes, tableWidth, setResizedWidth, setResizedWidths) {
|
|
13848
|
-
const hasLockedColumnsRef = (0,
|
|
13849
|
-
const distributeAdjustment = (0,
|
|
13815
|
+
const hasLockedColumnsRef = (0, import_react70.useRef)(false);
|
|
13816
|
+
const distributeAdjustment = (0, import_react70.useCallback)(
|
|
13850
13817
|
(rightColumns, totalRightWidth, adjustment) => {
|
|
13851
13818
|
const updates = {};
|
|
13852
13819
|
let remainingAdjustment = adjustment;
|
|
@@ -13861,7 +13828,7 @@ function useColumnResizeHandlers(columns, columnSizes, tableWidth, setResizedWid
|
|
|
13861
13828
|
},
|
|
13862
13829
|
[]
|
|
13863
13830
|
);
|
|
13864
|
-
const calculateResizeUpdates = (0,
|
|
13831
|
+
const calculateResizeUpdates = (0, import_react70.useCallback)(
|
|
13865
13832
|
(columnId, newWidth, columnIndex) => {
|
|
13866
13833
|
if (!tableWidth || !columnSizes || columnSizes.length === 0) {
|
|
13867
13834
|
return null;
|
|
@@ -13907,7 +13874,7 @@ function useColumnResizeHandlers(columns, columnSizes, tableWidth, setResizedWid
|
|
|
13907
13874
|
},
|
|
13908
13875
|
[tableWidth, columnSizes, columns, distributeAdjustment]
|
|
13909
13876
|
);
|
|
13910
|
-
const calculatePreviewWidth = (0,
|
|
13877
|
+
const calculatePreviewWidth = (0, import_react70.useCallback)(
|
|
13911
13878
|
(columnId, newWidth, columnIndex) => {
|
|
13912
13879
|
const result = calculateResizeUpdates(columnId, newWidth, columnIndex);
|
|
13913
13880
|
if (!result) {
|
|
@@ -13917,7 +13884,7 @@ function useColumnResizeHandlers(columns, columnSizes, tableWidth, setResizedWid
|
|
|
13917
13884
|
},
|
|
13918
13885
|
[calculateResizeUpdates]
|
|
13919
13886
|
);
|
|
13920
|
-
const handleColumnResize = (0,
|
|
13887
|
+
const handleColumnResize = (0, import_react70.useCallback)(
|
|
13921
13888
|
(columnId, newWidth, columnIndex) => {
|
|
13922
13889
|
const result = calculateResizeUpdates(columnId, newWidth, columnIndex);
|
|
13923
13890
|
if (!result) {
|
|
@@ -13954,10 +13921,10 @@ function useColumnResizeHandlers(columns, columnSizes, tableWidth, setResizedWid
|
|
|
13954
13921
|
}
|
|
13955
13922
|
|
|
13956
13923
|
// src/components/Table/hooks/useScrollStorage.ts
|
|
13957
|
-
var
|
|
13924
|
+
var import_react71 = require("react");
|
|
13958
13925
|
function useScrollStorage(tableId, enabled = true) {
|
|
13959
13926
|
const storageKey = `scrollPosition_${window.location.pathname}${window.location.search}_${tableId}`;
|
|
13960
|
-
return (0,
|
|
13927
|
+
return (0, import_react71.useMemo)(
|
|
13961
13928
|
() => ({
|
|
13962
13929
|
getScrollIndex: () => {
|
|
13963
13930
|
if (!enabled) return void 0;
|
|
@@ -13973,10 +13940,10 @@ function useScrollStorage(tableId, enabled = true) {
|
|
|
13973
13940
|
}
|
|
13974
13941
|
|
|
13975
13942
|
// src/hooks/useRenderCount.ts
|
|
13976
|
-
var
|
|
13943
|
+
var import_react72 = require("react");
|
|
13977
13944
|
function useRenderCount() {
|
|
13978
|
-
const ref = (0,
|
|
13979
|
-
const getCount = (0,
|
|
13945
|
+
const ref = (0, import_react72.useRef)(/* @__PURE__ */ new Map());
|
|
13946
|
+
const getCount = (0, import_react72.useCallback)((id) => {
|
|
13980
13947
|
const count = ref.current.get(id) || 1;
|
|
13981
13948
|
ref.current.set(id, count + 1);
|
|
13982
13949
|
return { "data-render": count };
|
|
@@ -14027,12 +13994,12 @@ function GridTable(props) {
|
|
|
14027
13994
|
csvPrefixRows,
|
|
14028
13995
|
disableColumnResizing = false
|
|
14029
13996
|
} = props;
|
|
14030
|
-
const columnsWithIds = (0,
|
|
14031
|
-
const virtuosoRef = (0,
|
|
14032
|
-
const virtuosoRangeRef = (0,
|
|
14033
|
-
const resizeRef = (0,
|
|
14034
|
-
const tableContainerRef = (0,
|
|
14035
|
-
const api = (0,
|
|
13997
|
+
const columnsWithIds = (0, import_react73.useMemo)(() => assignDefaultColumnIds(_columns), [_columns]);
|
|
13998
|
+
const virtuosoRef = (0, import_react73.useRef)(null);
|
|
13999
|
+
const virtuosoRangeRef = (0, import_react73.useRef)(null);
|
|
14000
|
+
const resizeRef = (0, import_react73.useRef)(null);
|
|
14001
|
+
const tableContainerRef = (0, import_react73.useRef)(null);
|
|
14002
|
+
const api = (0, import_react73.useMemo)(
|
|
14036
14003
|
() => {
|
|
14037
14004
|
const api2 = props.api ?? new GridTableApiImpl();
|
|
14038
14005
|
api2.init(persistCollapse, virtuosoRef, virtuosoRangeRef);
|
|
@@ -14045,8 +14012,8 @@ function GridTable(props) {
|
|
|
14045
14012
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
14046
14013
|
[props.api]
|
|
14047
14014
|
);
|
|
14048
|
-
const [draggedRow, _setDraggedRow] = (0,
|
|
14049
|
-
const draggedRowRef = (0,
|
|
14015
|
+
const [draggedRow, _setDraggedRow] = (0, import_react73.useState)(void 0);
|
|
14016
|
+
const draggedRowRef = (0, import_react73.useRef)(draggedRow);
|
|
14050
14017
|
const setDraggedRow = (row) => {
|
|
14051
14018
|
draggedRowRef.current = row;
|
|
14052
14019
|
_setDraggedRow(row);
|
|
@@ -14054,7 +14021,7 @@ function GridTable(props) {
|
|
|
14054
14021
|
const style = resolveStyles(maybeStyle);
|
|
14055
14022
|
const { tableState } = api;
|
|
14056
14023
|
tableState.onRowSelect = onRowSelect;
|
|
14057
|
-
(0,
|
|
14024
|
+
(0, import_react73.useEffect)(() => {
|
|
14058
14025
|
(0, import_mobx10.runInAction)(() => {
|
|
14059
14026
|
tableState.setRows(rows);
|
|
14060
14027
|
tableState.setColumns(columnsWithIds, visibleColumnsStorageKey);
|
|
@@ -14078,7 +14045,7 @@ function GridTable(props) {
|
|
|
14078
14045
|
visibleColumnsStorageKey,
|
|
14079
14046
|
disableColumnResizing
|
|
14080
14047
|
);
|
|
14081
|
-
(0,
|
|
14048
|
+
(0, import_react73.useEffect)(() => {
|
|
14082
14049
|
api.resetColumnWidthsFn = !disableColumnResizing ? resetColumnWidths : void 0;
|
|
14083
14050
|
}, [api, resetColumnWidths, disableColumnResizing]);
|
|
14084
14051
|
const { handleColumnResize, calculatePreviewWidth } = useColumnResizeHandlers(
|
|
@@ -14242,7 +14209,7 @@ function GridTable(props) {
|
|
|
14242
14209
|
const borderless = style?.presentationSettings?.borderless;
|
|
14243
14210
|
const typeScale = style?.presentationSettings?.typeScale;
|
|
14244
14211
|
const borderOnHover = style?.presentationSettings?.borderOnHover;
|
|
14245
|
-
const fieldProps = (0,
|
|
14212
|
+
const fieldProps = (0, import_react73.useMemo)(
|
|
14246
14213
|
() => ({
|
|
14247
14214
|
labelStyle: "hidden",
|
|
14248
14215
|
numberAlignment: "right",
|
|
@@ -14256,7 +14223,7 @@ function GridTable(props) {
|
|
|
14256
14223
|
[borderOnHover, borderless, typeScale]
|
|
14257
14224
|
);
|
|
14258
14225
|
const _as = as === "virtual" && runningInJest ? "div" : as;
|
|
14259
|
-
const rowStateContext = (0,
|
|
14226
|
+
const rowStateContext = (0, import_react73.useMemo)(
|
|
14260
14227
|
() => ({ tableState, tableContainerRef }),
|
|
14261
14228
|
[tableState, tableContainerRef]
|
|
14262
14229
|
);
|
|
@@ -14382,11 +14349,11 @@ function renderTable(style, id, columns, visibleDataRows, keptSelectedRows, firs
|
|
|
14382
14349
|
);
|
|
14383
14350
|
}
|
|
14384
14351
|
function renderVirtual(style, id, columns, visibleDataRows, keptSelectedRows, firstRowMessage, stickyHeader, xss, virtuosoRef, virtuosoRangeRef, tableHeadRows, _stickyOffset, infiniteScroll, _tableContainerRef, persistScrollPosition = infiniteScroll === void 0) {
|
|
14385
|
-
const { footerStyle, listStyle } = (0,
|
|
14352
|
+
const { footerStyle, listStyle } = (0, import_react73.useMemo)(() => {
|
|
14386
14353
|
const { paddingBottom, ...otherRootStyles } = style.rootCss ?? {};
|
|
14387
14354
|
return { footerStyle: { paddingBottom }, listStyle: { ...style, rootCss: otherRootStyles } };
|
|
14388
14355
|
}, [style]);
|
|
14389
|
-
const [fetchMoreInProgress, setFetchMoreInProgress] = (0,
|
|
14356
|
+
const [fetchMoreInProgress, setFetchMoreInProgress] = (0, import_react73.useState)(false);
|
|
14390
14357
|
const { getScrollIndex, setScrollIndex } = useScrollStorage(id, persistScrollPosition);
|
|
14391
14358
|
const savedScrollIndex = getScrollIndex();
|
|
14392
14359
|
const topItemCount = stickyHeader ? tableHeadRows.length : 0;
|
|
@@ -14400,7 +14367,7 @@ function renderVirtual(style, id, columns, visibleDataRows, keptSelectedRows, fi
|
|
|
14400
14367
|
...validatedScrollIndex !== void 0 ? { initialTopMostItemIndex: validatedScrollIndex } : {},
|
|
14401
14368
|
components: {
|
|
14402
14369
|
// Applying a zIndex: 2 to ensure it stays on top of sticky columns
|
|
14403
|
-
TopItemList:
|
|
14370
|
+
TopItemList: import_react73.default.forwardRef((props, ref) => /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
|
|
14404
14371
|
"div",
|
|
14405
14372
|
{
|
|
14406
14373
|
...props,
|
|
@@ -14485,7 +14452,7 @@ function renderVirtual(style, id, columns, visibleDataRows, keptSelectedRows, fi
|
|
|
14485
14452
|
}
|
|
14486
14453
|
var VirtualRoot = (0, import_memoize_one.default)(
|
|
14487
14454
|
(gs, _columns, id, xss) => {
|
|
14488
|
-
return
|
|
14455
|
+
return import_react73.default.forwardRef(function VirtualRoot2({ style, children }, ref) {
|
|
14489
14456
|
return /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
|
|
14490
14457
|
"div",
|
|
14491
14458
|
{
|
|
@@ -14549,7 +14516,7 @@ function ToggleChips(props) {
|
|
|
14549
14516
|
|
|
14550
14517
|
// src/components/Accordion.tsx
|
|
14551
14518
|
var import_utils68 = require("@react-aria/utils");
|
|
14552
|
-
var
|
|
14519
|
+
var import_react74 = require("react");
|
|
14553
14520
|
var import_react_aria40 = require("react-aria");
|
|
14554
14521
|
var import_jsx_runtime84 = require("@emotion/react/jsx-runtime");
|
|
14555
14522
|
function Accordion(props) {
|
|
@@ -14571,29 +14538,29 @@ function Accordion(props) {
|
|
|
14571
14538
|
} = props;
|
|
14572
14539
|
const tid = useTestIds(props, "accordion");
|
|
14573
14540
|
const id = (0, import_utils68.useId)();
|
|
14574
|
-
const [expanded, setExpanded] = (0,
|
|
14541
|
+
const [expanded, setExpanded] = (0, import_react74.useState)(defaultExpanded && !disabled);
|
|
14575
14542
|
const { isFocusVisible, focusProps } = (0, import_react_aria40.useFocusRing)();
|
|
14576
|
-
const [contentEl, setContentEl] = (0,
|
|
14577
|
-
const contentRef = (0,
|
|
14578
|
-
const [contentHeight, setContentHeight] = (0,
|
|
14579
|
-
(0,
|
|
14543
|
+
const [contentEl, setContentEl] = (0, import_react74.useState)(null);
|
|
14544
|
+
const contentRef = (0, import_react74.useMemo)(() => ({ current: contentEl }), [contentEl]);
|
|
14545
|
+
const [contentHeight, setContentHeight] = (0, import_react74.useState)(expanded ? "auto" : "0");
|
|
14546
|
+
(0, import_react74.useEffect)(() => {
|
|
14580
14547
|
setExpanded(defaultExpanded && !disabled);
|
|
14581
14548
|
}, [defaultExpanded, disabled]);
|
|
14582
|
-
(0,
|
|
14549
|
+
(0, import_react74.useEffect)(() => {
|
|
14583
14550
|
setContentHeight(expanded && contentEl ? `${contentEl.scrollHeight}px` : "0");
|
|
14584
14551
|
}, [expanded, contentEl]);
|
|
14585
|
-
const onResize = (0,
|
|
14552
|
+
const onResize = (0, import_react74.useCallback)(() => {
|
|
14586
14553
|
if (contentEl && expanded) {
|
|
14587
14554
|
setContentHeight(`${contentEl.scrollHeight}px`);
|
|
14588
14555
|
}
|
|
14589
14556
|
}, [expanded, contentEl, setContentHeight]);
|
|
14590
14557
|
(0, import_utils68.useResizeObserver)({ ref: contentRef, onResize });
|
|
14591
|
-
const toggle = (0,
|
|
14558
|
+
const toggle = (0, import_react74.useCallback)(() => {
|
|
14592
14559
|
setExpanded((prev) => !prev);
|
|
14593
14560
|
if (setExpandedIndex) setExpandedIndex(index);
|
|
14594
14561
|
if (onToggle) onToggle();
|
|
14595
14562
|
}, [index, setExpandedIndex, onToggle]);
|
|
14596
|
-
const touchableStyle = (0,
|
|
14563
|
+
const touchableStyle = (0, import_react74.useMemo)(
|
|
14597
14564
|
() => ({
|
|
14598
14565
|
...Css.df.jcsb.gapPx(12).aic.p2.md.outline("none").onHover.bgGray100.if(!!titleOnClick).mdSb.$,
|
|
14599
14566
|
...compact && Css.sm.pl2.prPx(10).py1.bgGray100.mbPx(4).br8.onHover.bgGray200.$,
|
|
@@ -14676,11 +14643,11 @@ var accordionSizes = {
|
|
|
14676
14643
|
};
|
|
14677
14644
|
|
|
14678
14645
|
// src/components/AccordionList.tsx
|
|
14679
|
-
var
|
|
14646
|
+
var import_react75 = require("react");
|
|
14680
14647
|
var import_jsx_runtime85 = require("@emotion/react/jsx-runtime");
|
|
14681
14648
|
function AccordionList(props) {
|
|
14682
14649
|
const { accordions, size, allowMultipleExpanded = true, compact = false } = props;
|
|
14683
|
-
const [expandedIndex, setExpandedIndex] = (0,
|
|
14650
|
+
const [expandedIndex, setExpandedIndex] = (0, import_react75.useState)(
|
|
14684
14651
|
accordions.findIndex((a) => a.defaultExpanded)
|
|
14685
14652
|
);
|
|
14686
14653
|
const tid = useTestIds(props, "accordionList");
|
|
@@ -14701,7 +14668,7 @@ function AccordionList(props) {
|
|
|
14701
14668
|
}
|
|
14702
14669
|
|
|
14703
14670
|
// src/components/AutoSaveIndicator.tsx
|
|
14704
|
-
var
|
|
14671
|
+
var import_react76 = require("react");
|
|
14705
14672
|
|
|
14706
14673
|
// src/types.ts
|
|
14707
14674
|
function assertNever(x) {
|
|
@@ -14712,7 +14679,7 @@ function assertNever(x) {
|
|
|
14712
14679
|
var import_jsx_runtime86 = require("@emotion/react/jsx-runtime");
|
|
14713
14680
|
function AutoSaveIndicator({ hideOnIdle, doNotReset }) {
|
|
14714
14681
|
const { status, resetStatus, errors } = useAutoSaveStatus();
|
|
14715
|
-
(0,
|
|
14682
|
+
(0, import_react76.useEffect)(
|
|
14716
14683
|
() => {
|
|
14717
14684
|
if (doNotReset) return;
|
|
14718
14685
|
return () => resetStatus();
|
|
@@ -14775,42 +14742,42 @@ var variantStyles2 = {
|
|
|
14775
14742
|
};
|
|
14776
14743
|
|
|
14777
14744
|
// src/components/BeamContext.tsx
|
|
14778
|
-
var
|
|
14745
|
+
var import_react103 = require("react");
|
|
14779
14746
|
var import_react_aria45 = require("react-aria");
|
|
14780
14747
|
|
|
14781
14748
|
// src/components/Modal/Modal.tsx
|
|
14782
14749
|
var import_utils72 = require("@react-aria/utils");
|
|
14783
|
-
var
|
|
14750
|
+
var import_react79 = require("react");
|
|
14784
14751
|
var import_react_aria41 = require("react-aria");
|
|
14785
14752
|
var import_react_dom2 = require("react-dom");
|
|
14786
14753
|
|
|
14787
14754
|
// src/components/Modal/useModal.tsx
|
|
14788
|
-
var
|
|
14755
|
+
var import_react78 = require("react");
|
|
14789
14756
|
|
|
14790
14757
|
// src/components/Modal/ModalContext.tsx
|
|
14791
|
-
var
|
|
14758
|
+
var import_react77 = require("react");
|
|
14792
14759
|
var import_jsx_runtime88 = require("@emotion/react/jsx-runtime");
|
|
14793
|
-
var ModalContext = (0,
|
|
14760
|
+
var ModalContext = (0, import_react77.createContext)({ inModal: false });
|
|
14794
14761
|
function ModalProvider({ children }) {
|
|
14795
|
-
const value = (0,
|
|
14762
|
+
const value = (0, import_react77.useMemo)(() => ({ inModal: true }), []);
|
|
14796
14763
|
return /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(ModalContext.Provider, { value, children });
|
|
14797
14764
|
}
|
|
14798
14765
|
function useModalContext() {
|
|
14799
|
-
return (0,
|
|
14766
|
+
return (0, import_react77.useContext)(ModalContext);
|
|
14800
14767
|
}
|
|
14801
14768
|
|
|
14802
14769
|
// src/components/Modal/useModal.tsx
|
|
14803
14770
|
function useModal() {
|
|
14804
14771
|
const { modalState, modalCanCloseChecks } = useBeamContext();
|
|
14805
14772
|
const { inModal } = useModalContext();
|
|
14806
|
-
const lastCanClose = (0,
|
|
14807
|
-
const api = (0,
|
|
14808
|
-
(0,
|
|
14773
|
+
const lastCanClose = (0, import_react78.useRef)();
|
|
14774
|
+
const api = (0, import_react78.useRef)();
|
|
14775
|
+
(0, import_react78.useEffect)(() => {
|
|
14809
14776
|
return () => {
|
|
14810
14777
|
modalCanCloseChecks.current = modalCanCloseChecks.current.filter((c) => c !== lastCanClose.current);
|
|
14811
14778
|
};
|
|
14812
14779
|
}, [modalCanCloseChecks]);
|
|
14813
|
-
return (0,
|
|
14780
|
+
return (0, import_react78.useMemo)(
|
|
14814
14781
|
() => ({
|
|
14815
14782
|
openModal(props) {
|
|
14816
14783
|
modalState.current = { ...props, api };
|
|
@@ -14849,7 +14816,7 @@ var import_jsx_runtime89 = require("@emotion/react/jsx-runtime");
|
|
|
14849
14816
|
function Modal(props) {
|
|
14850
14817
|
const { size = "md", content, forceScrolling, api, drawHeaderBorder = false, allowClosing = true } = props;
|
|
14851
14818
|
const isFixedHeight = typeof size !== "string";
|
|
14852
|
-
const ref = (0,
|
|
14819
|
+
const ref = (0, import_react79.useRef)(null);
|
|
14853
14820
|
const { modalBodyDiv, modalFooterDiv, modalHeaderDiv } = useBeamContext();
|
|
14854
14821
|
const { closeModal } = useModal();
|
|
14855
14822
|
const { overlayProps, underlayProps } = (0, import_react_aria41.useOverlay)(
|
|
@@ -14866,20 +14833,20 @@ function Modal(props) {
|
|
|
14866
14833
|
);
|
|
14867
14834
|
const { modalProps } = (0, import_react_aria41.useModal)();
|
|
14868
14835
|
const { dialogProps, titleProps } = (0, import_react_aria41.useDialog)({ role: "dialog" }, ref);
|
|
14869
|
-
const [[width2, height], setSize] = (0,
|
|
14870
|
-
const modalBodyRef = (0,
|
|
14871
|
-
const modalFooterRef = (0,
|
|
14872
|
-
const modalHeaderRef = (0,
|
|
14836
|
+
const [[width2, height], setSize] = (0, import_react79.useState)(getSize(size));
|
|
14837
|
+
const modalBodyRef = (0, import_react79.useRef)(null);
|
|
14838
|
+
const modalFooterRef = (0, import_react79.useRef)(null);
|
|
14839
|
+
const modalHeaderRef = (0, import_react79.useRef)(null);
|
|
14873
14840
|
const testId = useTestIds({}, testIdPrefix);
|
|
14874
14841
|
(0, import_react_aria41.usePreventScroll)();
|
|
14875
14842
|
const { sm } = useBreakpoint();
|
|
14876
14843
|
if (api) {
|
|
14877
14844
|
api.current = { setSize: (size2 = "md") => setSize(getSize(size2)) };
|
|
14878
14845
|
}
|
|
14879
|
-
const [hasScroll, setHasScroll] = (0,
|
|
14846
|
+
const [hasScroll, setHasScroll] = (0, import_react79.useState)(forceScrolling ?? false);
|
|
14880
14847
|
(0, import_utils72.useResizeObserver)({
|
|
14881
14848
|
ref: modalBodyRef,
|
|
14882
|
-
onResize: (0,
|
|
14849
|
+
onResize: (0, import_react79.useCallback)(
|
|
14883
14850
|
() => {
|
|
14884
14851
|
const target = modalBodyRef.current;
|
|
14885
14852
|
if (forceScrolling === void 0 && !isFixedHeight) {
|
|
@@ -14891,7 +14858,7 @@ function Modal(props) {
|
|
|
14891
14858
|
[]
|
|
14892
14859
|
)
|
|
14893
14860
|
});
|
|
14894
|
-
(0,
|
|
14861
|
+
(0, import_react79.useEffect)(
|
|
14895
14862
|
() => {
|
|
14896
14863
|
modalHeaderRef.current.appendChild(modalHeaderDiv);
|
|
14897
14864
|
modalBodyRef.current.appendChild(modalBodyDiv);
|
|
@@ -14966,7 +14933,7 @@ function getSize(size) {
|
|
|
14966
14933
|
}
|
|
14967
14934
|
|
|
14968
14935
|
// src/components/Snackbar/SnackbarContext.tsx
|
|
14969
|
-
var
|
|
14936
|
+
var import_react80 = require("react");
|
|
14970
14937
|
|
|
14971
14938
|
// src/components/Snackbar/SnackbarNotice.tsx
|
|
14972
14939
|
var import_jsx_runtime90 = require("@emotion/react/jsx-runtime");
|
|
@@ -15019,26 +14986,26 @@ var defaultOffset = {
|
|
|
15019
14986
|
|
|
15020
14987
|
// src/components/Snackbar/SnackbarContext.tsx
|
|
15021
14988
|
var import_jsx_runtime92 = require("@emotion/react/jsx-runtime");
|
|
15022
|
-
var SnackbarContext = (0,
|
|
14989
|
+
var SnackbarContext = (0, import_react80.createContext)({ setNotices: () => {
|
|
15023
14990
|
}, setOffset: () => {
|
|
15024
14991
|
} });
|
|
15025
14992
|
function SnackbarProvider(props) {
|
|
15026
|
-
const [notices, setNotices] = (0,
|
|
15027
|
-
const [offset, setOffset] = (0,
|
|
15028
|
-
const contextValue = (0,
|
|
14993
|
+
const [notices, setNotices] = (0, import_react80.useState)([]);
|
|
14994
|
+
const [offset, setOffset] = (0, import_react80.useState)({});
|
|
14995
|
+
const contextValue = (0, import_react80.useMemo)(() => ({ setNotices, setOffset }), []);
|
|
15029
14996
|
return /* @__PURE__ */ (0, import_jsx_runtime92.jsxs)(SnackbarContext.Provider, { value: contextValue, children: [
|
|
15030
14997
|
props.children,
|
|
15031
14998
|
/* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Snackbar, { notices, offset })
|
|
15032
14999
|
] });
|
|
15033
15000
|
}
|
|
15034
15001
|
function useSnackbarContext() {
|
|
15035
|
-
return (0,
|
|
15002
|
+
return (0, import_react80.useContext)(SnackbarContext);
|
|
15036
15003
|
}
|
|
15037
15004
|
|
|
15038
15005
|
// src/components/SuperDrawer/SuperDrawer.tsx
|
|
15039
|
-
var
|
|
15006
|
+
var import_react81 = require("@emotion/react");
|
|
15040
15007
|
var import_framer_motion = require("framer-motion");
|
|
15041
|
-
var
|
|
15008
|
+
var import_react82 = require("react");
|
|
15042
15009
|
var import_react_dom3 = require("react-dom");
|
|
15043
15010
|
|
|
15044
15011
|
// src/components/SuperDrawer/utils.ts
|
|
@@ -15050,17 +15017,17 @@ var SuperDrawerWidth = /* @__PURE__ */ ((SuperDrawerWidth2) => {
|
|
|
15050
15017
|
|
|
15051
15018
|
// src/components/SuperDrawer/SuperDrawer.tsx
|
|
15052
15019
|
var import_jsx_runtime93 = require("@emotion/react/jsx-runtime");
|
|
15053
|
-
var
|
|
15020
|
+
var import_react83 = require("@emotion/react");
|
|
15054
15021
|
function SuperDrawer() {
|
|
15055
15022
|
const { drawerContentStack: contentStack, sdHeaderDiv } = useBeamContext();
|
|
15056
15023
|
const { closeDrawer } = useSuperDrawer();
|
|
15057
|
-
const headerRef = (0,
|
|
15024
|
+
const headerRef = (0, import_react82.useRef)(null);
|
|
15058
15025
|
const testId = useTestIds({}, "superDrawer");
|
|
15059
15026
|
const currentContent = contentStack.current[contentStack.current.length - 1]?.opts;
|
|
15060
15027
|
const { content } = currentContent ?? {};
|
|
15061
15028
|
const firstContent = contentStack.current[0]?.opts;
|
|
15062
15029
|
const { width: width2 = 1040 /* Normal */ } = firstContent ?? {};
|
|
15063
|
-
(0,
|
|
15030
|
+
(0, import_react82.useEffect)(
|
|
15064
15031
|
() => {
|
|
15065
15032
|
if (headerRef.current?.childNodes.length === 0 && content) {
|
|
15066
15033
|
headerRef.current.appendChild(sdHeaderDiv);
|
|
@@ -15072,8 +15039,8 @@ function SuperDrawer() {
|
|
|
15072
15039
|
);
|
|
15073
15040
|
return (0, import_react_dom3.createPortal)(
|
|
15074
15041
|
/* @__PURE__ */ (0, import_jsx_runtime93.jsx)(import_framer_motion.AnimatePresence, { children: content && /* @__PURE__ */ (0, import_jsx_runtime93.jsxs)(import_jsx_runtime93.Fragment, { children: [
|
|
15075
|
-
/* @__PURE__ */ (0, import_jsx_runtime93.jsx)(
|
|
15076
|
-
/* @__PURE__ */ (0,
|
|
15042
|
+
/* @__PURE__ */ (0, import_jsx_runtime93.jsx)(import_react81.Global, { styles: { body: Css.oh.$ } }),
|
|
15043
|
+
/* @__PURE__ */ (0, import_react83.createElement)(
|
|
15077
15044
|
import_framer_motion.motion.div,
|
|
15078
15045
|
{
|
|
15079
15046
|
...testId,
|
|
@@ -15110,7 +15077,7 @@ function SuperDrawer() {
|
|
|
15110
15077
|
}
|
|
15111
15078
|
|
|
15112
15079
|
// src/components/Layout/FormPageLayout.tsx
|
|
15113
|
-
var
|
|
15080
|
+
var import_react91 = __toESM(require("react"), 1);
|
|
15114
15081
|
var import_react_aria43 = require("react-aria");
|
|
15115
15082
|
|
|
15116
15083
|
// src/forms/BoundCheckboxField.tsx
|
|
@@ -15336,7 +15303,7 @@ function BoundDateRangeField(props) {
|
|
|
15336
15303
|
}
|
|
15337
15304
|
|
|
15338
15305
|
// src/forms/BoundForm.tsx
|
|
15339
|
-
var
|
|
15306
|
+
var import_react86 = require("react");
|
|
15340
15307
|
|
|
15341
15308
|
// src/forms/BoundIconCardField.tsx
|
|
15342
15309
|
var import_mobx_react7 = require("mobx-react");
|
|
@@ -15365,7 +15332,7 @@ function BoundIconCardField(props) {
|
|
|
15365
15332
|
var import_mobx_react8 = require("mobx-react");
|
|
15366
15333
|
|
|
15367
15334
|
// src/inputs/IconCardGroup.tsx
|
|
15368
|
-
var
|
|
15335
|
+
var import_react84 = require("react");
|
|
15369
15336
|
var import_react_aria42 = require("react-aria");
|
|
15370
15337
|
var import_jsx_runtime100 = require("@emotion/react/jsx-runtime");
|
|
15371
15338
|
function IconCardGroup(props) {
|
|
@@ -15380,9 +15347,9 @@ function IconCardGroup(props) {
|
|
|
15380
15347
|
disabled: isDisabled = false,
|
|
15381
15348
|
onChange
|
|
15382
15349
|
} = props;
|
|
15383
|
-
const [selected, setSelected] = (0,
|
|
15384
|
-
const exclusiveOptions = (0,
|
|
15385
|
-
const toggleValue = (0,
|
|
15350
|
+
const [selected, setSelected] = (0, import_react84.useState)(values);
|
|
15351
|
+
const exclusiveOptions = (0, import_react84.useMemo)(() => options.filter((o) => o.exclusive), [options]);
|
|
15352
|
+
const toggleValue = (0, import_react84.useCallback)(
|
|
15386
15353
|
(value) => {
|
|
15387
15354
|
if (isDisabled) return;
|
|
15388
15355
|
const option = options.find((o) => o.value === value);
|
|
@@ -15978,7 +15945,7 @@ function BoundTreeSelectField(props) {
|
|
|
15978
15945
|
}
|
|
15979
15946
|
|
|
15980
15947
|
// src/forms/FormLines.tsx
|
|
15981
|
-
var
|
|
15948
|
+
var import_react85 = require("react");
|
|
15982
15949
|
var import_jsx_runtime114 = require("@emotion/react/jsx-runtime");
|
|
15983
15950
|
function FormLines(props) {
|
|
15984
15951
|
const { inModal } = useModal();
|
|
@@ -16004,17 +15971,18 @@ function FormLines(props) {
|
|
|
16004
15971
|
{
|
|
16005
15972
|
css: {
|
|
16006
15973
|
// Note that we're purposefully not using display:flex so that our children's margins will collapse.
|
|
16007
|
-
...Css.w(sizes[width2])
|
|
16008
|
-
// Purposefully use this instead of childGap3 to put margin-bottom on the last line
|
|
16009
|
-
"& > *": Css.mb(gap).$
|
|
15974
|
+
...Css.w(sizes[width2]).$
|
|
16010
15975
|
},
|
|
16011
|
-
children:
|
|
15976
|
+
children: import_react85.Children.map(children, (child) => {
|
|
15977
|
+
if (child === null || child === void 0 || typeof child === "boolean") {
|
|
15978
|
+
return child;
|
|
15979
|
+
}
|
|
16012
15980
|
if (child && typeof child === "object" && "type" in child && child.type.isFormHeading) {
|
|
16013
|
-
const clone = (0,
|
|
15981
|
+
const clone = (0, import_react85.cloneElement)(child, { isFirst: firstFormHeading });
|
|
16014
15982
|
firstFormHeading = false;
|
|
16015
|
-
return clone;
|
|
15983
|
+
return /* @__PURE__ */ (0, import_jsx_runtime114.jsx)("div", { css: Css.mb(gap).$, children: clone });
|
|
16016
15984
|
} else {
|
|
16017
|
-
return child;
|
|
15985
|
+
return /* @__PURE__ */ (0, import_jsx_runtime114.jsx)("div", { css: Css.mb(gap).$, children: child });
|
|
16018
15986
|
}
|
|
16019
15987
|
})
|
|
16020
15988
|
}
|
|
@@ -16045,7 +16013,7 @@ var listFieldPrefix = "listField";
|
|
|
16045
16013
|
function BoundForm(props) {
|
|
16046
16014
|
const { rows, formState } = props;
|
|
16047
16015
|
const tid = useTestIds({}, "boundForm");
|
|
16048
|
-
const getRowKey = (0,
|
|
16016
|
+
const getRowKey = (0, import_react86.useCallback)((row, rowType) => {
|
|
16049
16017
|
return `${rowType}-${Object.keys(row).join("-")}`;
|
|
16050
16018
|
}, []);
|
|
16051
16019
|
return /* @__PURE__ */ (0, import_jsx_runtime115.jsx)("div", { ...tid, children: /* @__PURE__ */ (0, import_jsx_runtime115.jsx)(FormLines, { width: "full", gap: 3.5, children: rows.map(
|
|
@@ -16054,7 +16022,7 @@ function BoundForm(props) {
|
|
|
16054
16022
|
}
|
|
16055
16023
|
function FormRow({ row, formState }) {
|
|
16056
16024
|
const tid = useTestIds({}, "boundFormRow");
|
|
16057
|
-
const componentsWithConfig = (0,
|
|
16025
|
+
const componentsWithConfig = (0, import_react86.useMemo)(() => {
|
|
16058
16026
|
return Object.entries(row).map(([key, fieldFnOrCustomNode]) => {
|
|
16059
16027
|
if (typeof fieldFnOrCustomNode === "function" && !isCustomReactNodeKey(key)) {
|
|
16060
16028
|
const field = formState[key] ?? fail(`Field ${key.toString()} not found in formState`);
|
|
@@ -16180,7 +16148,7 @@ function boundTreeSelectField(props) {
|
|
|
16180
16148
|
}
|
|
16181
16149
|
|
|
16182
16150
|
// src/components/internal/CompoundField.tsx
|
|
16183
|
-
var
|
|
16151
|
+
var import_react87 = require("react");
|
|
16184
16152
|
var import_jsx_runtime116 = require("@emotion/react/jsx-runtime");
|
|
16185
16153
|
function CompoundField({ children }) {
|
|
16186
16154
|
if (children?.length !== 2) {
|
|
@@ -16188,45 +16156,46 @@ function CompoundField({ children }) {
|
|
|
16188
16156
|
}
|
|
16189
16157
|
const commonStyles = Css.df.aic.fs1.maxwPx(550).bt.bb.bcGray300.$;
|
|
16190
16158
|
const internalProps = { compound: true };
|
|
16191
|
-
|
|
16192
|
-
|
|
16193
|
-
|
|
16194
|
-
|
|
16195
|
-
|
|
16196
|
-
|
|
16197
|
-
|
|
16198
|
-
|
|
16199
|
-
children: [
|
|
16200
|
-
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
16201
|
-
"div",
|
|
16202
|
-
{
|
|
16203
|
-
css: {
|
|
16204
|
-
...commonStyles,
|
|
16205
|
-
...Css.bl.borderRadius("4px 0 0 4px").$,
|
|
16206
|
-
"&:focus-within": Css.bcBlue700.$
|
|
16207
|
-
},
|
|
16208
|
-
children: (0, import_react88.cloneElement)(children[0], {
|
|
16209
|
-
internalProps
|
|
16210
|
-
})
|
|
16211
|
-
}
|
|
16212
|
-
),
|
|
16213
|
-
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("div", { css: Css.wPx(1).fn.bgGray300.$ }),
|
|
16214
|
-
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
16215
|
-
"div",
|
|
16216
|
-
{
|
|
16217
|
-
css: {
|
|
16218
|
-
...commonStyles,
|
|
16219
|
-
...Css.fg1.br.borderRadius("0 4px 4px 0").$,
|
|
16220
|
-
"&:focus-within": Css.bcBlue700.$
|
|
16221
|
-
},
|
|
16222
|
-
children: (0, import_react88.cloneElement)(children[1], {
|
|
16223
|
-
internalProps
|
|
16224
|
-
})
|
|
16225
|
-
}
|
|
16226
|
-
)
|
|
16227
|
-
]
|
|
16159
|
+
const [hasFocusWithin, setHasFocusWithin] = (0, import_react87.useState)(false);
|
|
16160
|
+
function onFocusCapture() {
|
|
16161
|
+
setHasFocusWithin(true);
|
|
16162
|
+
}
|
|
16163
|
+
function onBlurCapture(e) {
|
|
16164
|
+
const nextFocusedElement = e.relatedTarget;
|
|
16165
|
+
if (nextFocusedElement instanceof Node && e.currentTarget.contains(nextFocusedElement)) {
|
|
16166
|
+
return;
|
|
16228
16167
|
}
|
|
16229
|
-
|
|
16168
|
+
setHasFocusWithin(false);
|
|
16169
|
+
}
|
|
16170
|
+
return /* @__PURE__ */ (0, import_jsx_runtime116.jsxs)("div", { css: Css.df.$, onFocusCapture, onBlurCapture, children: [
|
|
16171
|
+
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
16172
|
+
"div",
|
|
16173
|
+
{
|
|
16174
|
+
css: {
|
|
16175
|
+
...commonStyles,
|
|
16176
|
+
...Css.bl.borderRadius("4px 0 0 4px").$,
|
|
16177
|
+
"&:focus-within": Css.bcBlue700.$
|
|
16178
|
+
},
|
|
16179
|
+
children: (0, import_react87.cloneElement)(children[0], {
|
|
16180
|
+
internalProps
|
|
16181
|
+
})
|
|
16182
|
+
}
|
|
16183
|
+
),
|
|
16184
|
+
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("div", { css: { ...Css.wPx(1).fn.bgGray300.$, ...hasFocusWithin && Css.bgBlue700.$ } }),
|
|
16185
|
+
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
16186
|
+
"div",
|
|
16187
|
+
{
|
|
16188
|
+
css: {
|
|
16189
|
+
...commonStyles,
|
|
16190
|
+
...Css.fg1.br.borderRadius("0 4px 4px 0").$,
|
|
16191
|
+
"&:focus-within": Css.bcBlue700.$
|
|
16192
|
+
},
|
|
16193
|
+
children: (0, import_react87.cloneElement)(children[1], {
|
|
16194
|
+
internalProps
|
|
16195
|
+
})
|
|
16196
|
+
}
|
|
16197
|
+
)
|
|
16198
|
+
] });
|
|
16230
16199
|
}
|
|
16231
16200
|
|
|
16232
16201
|
// src/forms/BoundSelectAndTextField.tsx
|
|
@@ -16322,11 +16291,11 @@ var import_use_debounce6 = require("use-debounce");
|
|
|
16322
16291
|
|
|
16323
16292
|
// src/components/RightSidebar.tsx
|
|
16324
16293
|
var import_framer_motion2 = require("framer-motion");
|
|
16325
|
-
var
|
|
16294
|
+
var import_react88 = require("react");
|
|
16326
16295
|
var import_jsx_runtime121 = require("@emotion/react/jsx-runtime");
|
|
16327
16296
|
var RIGHT_SIDEBAR_MIN_WIDTH = "250px";
|
|
16328
16297
|
function RightSidebar({ content, headerHeightPx: headerHeightPx2 }) {
|
|
16329
|
-
const [selectedIcon, setSelectedIcon] = (0,
|
|
16298
|
+
const [selectedIcon, setSelectedIcon] = (0, import_react88.useState)(void 0);
|
|
16330
16299
|
const tid = useTestIds({}, "rightSidebar");
|
|
16331
16300
|
return /* @__PURE__ */ (0, import_jsx_runtime121.jsxs)(import_jsx_runtime121.Fragment, { children: [
|
|
16332
16301
|
/* @__PURE__ */ (0, import_jsx_runtime121.jsx)("div", { css: Css.df.jcfe.absolute.right0.pr3.$, children: /* @__PURE__ */ (0, import_jsx_runtime121.jsx)(import_framer_motion2.AnimatePresence, { children: !selectedIcon && /* @__PURE__ */ (0, import_jsx_runtime121.jsx)(
|
|
@@ -16387,9 +16356,9 @@ function IconButtonList({ content, selectedIcon, onIconClick }) {
|
|
|
16387
16356
|
}
|
|
16388
16357
|
|
|
16389
16358
|
// src/components/Toast/ToastContext.tsx
|
|
16390
|
-
var
|
|
16359
|
+
var import_react89 = require("react");
|
|
16391
16360
|
var import_jsx_runtime122 = require("@emotion/react/jsx-runtime");
|
|
16392
|
-
var ToastContext = (0,
|
|
16361
|
+
var ToastContext = (0, import_react89.createContext)({
|
|
16393
16362
|
setNotice: () => {
|
|
16394
16363
|
throw new Error("Missing ToastProvider");
|
|
16395
16364
|
},
|
|
@@ -16398,13 +16367,13 @@ var ToastContext = (0, import_react90.createContext)({
|
|
|
16398
16367
|
notice: void 0
|
|
16399
16368
|
});
|
|
16400
16369
|
function ToastProvider(props) {
|
|
16401
|
-
const [notice, setNotice] = (0,
|
|
16402
|
-
const clear = (0,
|
|
16403
|
-
const contextValue = (0,
|
|
16370
|
+
const [notice, setNotice] = (0, import_react89.useState)();
|
|
16371
|
+
const clear = (0, import_react89.useCallback)(() => setNotice(void 0), [setNotice]);
|
|
16372
|
+
const contextValue = (0, import_react89.useMemo)(() => ({ setNotice, notice, clear }), [notice, clear]);
|
|
16404
16373
|
return /* @__PURE__ */ (0, import_jsx_runtime122.jsx)(ToastContext.Provider, { value: contextValue, children: props.children });
|
|
16405
16374
|
}
|
|
16406
16375
|
function useToastContext() {
|
|
16407
|
-
return (0,
|
|
16376
|
+
return (0, import_react89.useContext)(ToastContext);
|
|
16408
16377
|
}
|
|
16409
16378
|
|
|
16410
16379
|
// src/components/Toast/Toast.tsx
|
|
@@ -16416,7 +16385,7 @@ function Toast() {
|
|
|
16416
16385
|
}
|
|
16417
16386
|
|
|
16418
16387
|
// src/components/Layout/PageHeaderBreadcrumbs.tsx
|
|
16419
|
-
var
|
|
16388
|
+
var import_react90 = require("react");
|
|
16420
16389
|
var import_react_router_dom4 = require("react-router-dom");
|
|
16421
16390
|
var import_jsx_runtime124 = (
|
|
16422
16391
|
// Adding index to key to prevent rendering issues when multiple items have the same label
|
|
@@ -16424,10 +16393,10 @@ var import_jsx_runtime124 = (
|
|
|
16424
16393
|
);
|
|
16425
16394
|
function PageHeaderBreadcrumbs({ breadcrumb }) {
|
|
16426
16395
|
const tids = useTestIds({}, "pageHeaderBreadcrumbs");
|
|
16427
|
-
const breadcrumbs = (0,
|
|
16428
|
-
const [collapsed, setCollapsed] = (0,
|
|
16396
|
+
const breadcrumbs = (0, import_react90.useMemo)(() => Array.isArray(breadcrumb) ? breadcrumb : [breadcrumb], [breadcrumb]);
|
|
16397
|
+
const [collapsed, setCollapsed] = (0, import_react90.useState)(true);
|
|
16429
16398
|
function renderBreadcrumb(bc, index, hideDivisor) {
|
|
16430
|
-
return /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)(
|
|
16399
|
+
return /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)(import_react90.Fragment, { children: [
|
|
16431
16400
|
index > 0 && !hideDivisor && /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("span", { css: Css.smSb.gray700.mx1.myPx(2).$, children: "/" }),
|
|
16432
16401
|
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)(import_react_router_dom4.Link, { to: bc.href, css: Css.smSb.gray700.onHover.gray900.$, className: "navLink", ...tids.navLink, children: bc.label }),
|
|
16433
16402
|
bc.right
|
|
@@ -16448,10 +16417,10 @@ var maxContentWidthPx = 1600;
|
|
|
16448
16417
|
function FormPageLayoutComponent(props) {
|
|
16449
16418
|
const { formSections, formState, rightSideBar } = props;
|
|
16450
16419
|
const tids = useTestIds(props, "formPageLayout");
|
|
16451
|
-
const sectionsWithRefs = (0,
|
|
16420
|
+
const sectionsWithRefs = (0, import_react91.useMemo)(
|
|
16452
16421
|
() => formSections.map((section, id) => ({
|
|
16453
16422
|
section,
|
|
16454
|
-
ref: (0,
|
|
16423
|
+
ref: (0, import_react91.createRef)(),
|
|
16455
16424
|
// Unique key for each section to use in the observer
|
|
16456
16425
|
sectionKey: `section-${section.title ?? id}`
|
|
16457
16426
|
})),
|
|
@@ -16471,7 +16440,7 @@ function FormPageLayoutComponent(props) {
|
|
|
16471
16440
|
] }) })
|
|
16472
16441
|
);
|
|
16473
16442
|
}
|
|
16474
|
-
var FormPageLayout =
|
|
16443
|
+
var FormPageLayout = import_react91.default.memo(FormPageLayoutComponent);
|
|
16475
16444
|
function PageHeader(props) {
|
|
16476
16445
|
const { pageTitle, breadCrumb, submitAction, cancelAction, tertiaryAction, formState } = props;
|
|
16477
16446
|
const { notice } = useToastContext();
|
|
@@ -16537,7 +16506,7 @@ function FormSections(props) {
|
|
|
16537
16506
|
function LeftNav(props) {
|
|
16538
16507
|
const { sectionsWithRefs } = props;
|
|
16539
16508
|
const tids = useTestIds(props);
|
|
16540
|
-
const sectionWithTitles = (0,
|
|
16509
|
+
const sectionWithTitles = (0, import_react91.useMemo)(
|
|
16541
16510
|
() => sectionsWithRefs.filter(({ section }) => !!section.title),
|
|
16542
16511
|
[sectionsWithRefs]
|
|
16543
16512
|
);
|
|
@@ -16559,11 +16528,11 @@ function SectionNavLink(props) {
|
|
|
16559
16528
|
const { sectionWithRef, activeSection } = props;
|
|
16560
16529
|
const { section, ref: sectionRef } = sectionWithRef;
|
|
16561
16530
|
const active = activeSection === sectionWithRef.sectionKey;
|
|
16562
|
-
const handleNavClick = (0,
|
|
16531
|
+
const handleNavClick = (0, import_react91.useCallback)(() => {
|
|
16563
16532
|
sectionRef.current?.scrollIntoView({ behavior: "smooth", block: "start" });
|
|
16564
16533
|
}, [sectionRef]);
|
|
16565
16534
|
const tids = useTestIds(props);
|
|
16566
|
-
const buttonRef = (0,
|
|
16535
|
+
const buttonRef = (0, import_react91.useRef)(null);
|
|
16567
16536
|
const { buttonProps, isPressed } = (0, import_react_aria43.useButton)({ onPress: handleNavClick }, buttonRef);
|
|
16568
16537
|
const { isFocusVisible, focusProps } = (0, import_react_aria43.useFocusRing)();
|
|
16569
16538
|
const { hoverProps, isHovered } = useHover({});
|
|
@@ -16586,7 +16555,7 @@ function SectionNavLink(props) {
|
|
|
16586
16555
|
);
|
|
16587
16556
|
}
|
|
16588
16557
|
function useActiveSection(sectionsWithRefs) {
|
|
16589
|
-
const [activeSection, setActiveSection] = (0,
|
|
16558
|
+
const [activeSection, setActiveSection] = (0, import_react91.useState)(null);
|
|
16590
16559
|
const debouncedIntersectionCallback = (0, import_use_debounce6.useDebouncedCallback)(
|
|
16591
16560
|
(entries) => {
|
|
16592
16561
|
const sectionsInView = entries.filter((entry) => entry.isIntersecting && entry.intersectionRatio > 0.2).sort((a, b) => {
|
|
@@ -16603,7 +16572,7 @@ function useActiveSection(sectionsWithRefs) {
|
|
|
16603
16572
|
200,
|
|
16604
16573
|
{ maxWait: 500 }
|
|
16605
16574
|
);
|
|
16606
|
-
(0,
|
|
16575
|
+
(0, import_react91.useEffect)(() => {
|
|
16607
16576
|
if (!("IntersectionObserver" in window)) return;
|
|
16608
16577
|
const observer2 = new IntersectionObserver((entries) => debouncedIntersectionCallback(entries), {
|
|
16609
16578
|
/**
|
|
@@ -16634,19 +16603,19 @@ function useActiveSection(sectionsWithRefs) {
|
|
|
16634
16603
|
}
|
|
16635
16604
|
|
|
16636
16605
|
// src/components/Layout/FullBleed.tsx
|
|
16637
|
-
var
|
|
16606
|
+
var import_react92 = require("react");
|
|
16638
16607
|
function FullBleed({ children, omitPadding = false }) {
|
|
16639
16608
|
const { pr, pl } = useScrollableParent();
|
|
16640
|
-
return !pr && !pl ? children : (0,
|
|
16609
|
+
return !pr && !pl ? children : (0, import_react92.cloneElement)(children, {
|
|
16641
16610
|
style: Css.ml(`-${pl}`).mr(`-${pr}`).if(!omitPadding).pl(pl).pr(pr).$
|
|
16642
16611
|
});
|
|
16643
16612
|
}
|
|
16644
16613
|
|
|
16645
16614
|
// src/components/Layout/GridTableLayout/GridTableLayout.tsx
|
|
16646
|
-
var
|
|
16615
|
+
var import_react100 = __toESM(require("react"), 1);
|
|
16647
16616
|
|
|
16648
16617
|
// src/components/ButtonMenu.tsx
|
|
16649
|
-
var
|
|
16618
|
+
var import_react93 = require("react");
|
|
16650
16619
|
var import_react_aria44 = require("react-aria");
|
|
16651
16620
|
var import_react_stately17 = require("react-stately");
|
|
16652
16621
|
var import_jsx_runtime126 = require("@emotion/react/jsx-runtime");
|
|
@@ -16658,7 +16627,7 @@ function ButtonMenu(props) {
|
|
|
16658
16627
|
onChange = props.onChange;
|
|
16659
16628
|
}
|
|
16660
16629
|
const state = (0, import_react_stately17.useMenuTriggerState)({ isOpen: defaultOpen });
|
|
16661
|
-
const buttonRef = (0,
|
|
16630
|
+
const buttonRef = (0, import_react93.useRef)(null);
|
|
16662
16631
|
const { menuTriggerProps, menuProps } = (0, import_react_aria44.useMenuTrigger)({ isDisabled: !!disabled }, state, buttonRef);
|
|
16663
16632
|
const tid = useTestIds(
|
|
16664
16633
|
props,
|
|
@@ -16695,7 +16664,7 @@ function isSelectionButtonMenuProps(props) {
|
|
|
16695
16664
|
}
|
|
16696
16665
|
|
|
16697
16666
|
// src/components/Filters/FilterDropdownMenu.tsx
|
|
16698
|
-
var
|
|
16667
|
+
var import_react97 = require("react");
|
|
16699
16668
|
|
|
16700
16669
|
// src/components/CountBadge.tsx
|
|
16701
16670
|
var import_jsx_runtime127 = require("@emotion/react/jsx-runtime");
|
|
@@ -17080,15 +17049,15 @@ var CheckboxFilter = class extends BaseFilter {
|
|
|
17080
17049
|
};
|
|
17081
17050
|
|
|
17082
17051
|
// src/components/Filters/FilterModal.tsx
|
|
17083
|
-
var
|
|
17052
|
+
var import_react95 = require("react");
|
|
17084
17053
|
|
|
17085
17054
|
// src/components/Modal/OpenModal.tsx
|
|
17086
|
-
var
|
|
17055
|
+
var import_react94 = require("react");
|
|
17087
17056
|
var import_jsx_runtime136 = require("@emotion/react/jsx-runtime");
|
|
17088
17057
|
function OpenModal(props) {
|
|
17089
17058
|
const { openModal } = useModal();
|
|
17090
17059
|
const { size, children, keepOpen } = props;
|
|
17091
|
-
(0,
|
|
17060
|
+
(0, import_react94.useEffect)(() => {
|
|
17092
17061
|
if (!keepOpen) {
|
|
17093
17062
|
openModal({ size, content: children });
|
|
17094
17063
|
}
|
|
@@ -17106,7 +17075,7 @@ function FilterModal(props) {
|
|
|
17106
17075
|
const { filter, filters, onApply } = props;
|
|
17107
17076
|
const testId = useTestIds(props, filterTestIdPrefix);
|
|
17108
17077
|
const { closeModal } = useModal();
|
|
17109
|
-
const [modalFilter, setModalFilter] = (0,
|
|
17078
|
+
const [modalFilter, setModalFilter] = (0, import_react95.useState)(filter);
|
|
17110
17079
|
return /* @__PURE__ */ (0, import_jsx_runtime137.jsxs)(import_jsx_runtime137.Fragment, { children: [
|
|
17111
17080
|
/* @__PURE__ */ (0, import_jsx_runtime137.jsx)(ModalHeader, { children: "More Filters" }),
|
|
17112
17081
|
/* @__PURE__ */ (0, import_jsx_runtime137.jsx)(ModalBody, { children: /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("div", { css: Css.df.fdc.$, children: safeEntries(filters).map(([key, f]) => /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(ModalFilterItem, { label: f.hideLabelInModal ? void 0 : f.label, children: f.render(
|
|
@@ -17155,13 +17124,13 @@ function ModalFilterItem({ label, children }) {
|
|
|
17155
17124
|
}
|
|
17156
17125
|
|
|
17157
17126
|
// src/components/Filters/Filters.tsx
|
|
17158
|
-
var
|
|
17127
|
+
var import_react96 = require("react");
|
|
17159
17128
|
var import_jsx_runtime138 = require("@emotion/react/jsx-runtime");
|
|
17160
17129
|
function Filters(props) {
|
|
17161
17130
|
const { filter, onChange, filterDefs, groupBy, vertical = false, numberOfInlineFilters = groupBy ? 3 : 4 } = props;
|
|
17162
17131
|
const testId = useTestIds(props, filterTestIdPrefix);
|
|
17163
17132
|
const { openModal } = useModal();
|
|
17164
|
-
const [pageFilters, modalFilters] = (0,
|
|
17133
|
+
const [pageFilters, modalFilters] = (0, import_react96.useMemo)(() => {
|
|
17165
17134
|
const impls = safeEntries(filterDefs).map(([key, fn]) => [key, fn(key)]);
|
|
17166
17135
|
if (!vertical && impls.length > numberOfInlineFilters) {
|
|
17167
17136
|
return [
|
|
@@ -17213,7 +17182,7 @@ function Filters(props) {
|
|
|
17213
17182
|
}
|
|
17214
17183
|
);
|
|
17215
17184
|
}
|
|
17216
|
-
var _Filters = (0,
|
|
17185
|
+
var _Filters = (0, import_react96.memo)(Filters);
|
|
17217
17186
|
|
|
17218
17187
|
// src/components/Filters/ToggleFilter.tsx
|
|
17219
17188
|
var import_jsx_runtime139 = require("@emotion/react/jsx-runtime");
|
|
@@ -17261,9 +17230,9 @@ var import_jsx_runtime140 = require("@emotion/react/jsx-runtime");
|
|
|
17261
17230
|
function FilterDropdownMenu(props) {
|
|
17262
17231
|
const { filter, onChange, filterDefs, groupBy } = props;
|
|
17263
17232
|
const testId = useTestIds(props, filterTestIdPrefix);
|
|
17264
|
-
const [isOpen, setIsOpen] = (0,
|
|
17265
|
-
const activeFilterCount = (0,
|
|
17266
|
-
const filterImpls = (0,
|
|
17233
|
+
const [isOpen, setIsOpen] = (0, import_react97.useState)(false);
|
|
17234
|
+
const activeFilterCount = (0, import_react97.useMemo)(() => getActiveFilterCount(filter), [filter]);
|
|
17235
|
+
const filterImpls = (0, import_react97.useMemo)(() => buildFilterImpls(filterDefs), [filterDefs]);
|
|
17267
17236
|
const renderFilters = () => {
|
|
17268
17237
|
const entries = safeEntries(filterImpls);
|
|
17269
17238
|
const nonCheckbox = entries.filter(([_, f]) => !f.hideLabelInModal);
|
|
@@ -17366,7 +17335,7 @@ function titleCase(str) {
|
|
|
17366
17335
|
function getActiveFilterCount(filter) {
|
|
17367
17336
|
return safeKeys(filter).filter((key) => filter[key] !== void 0).length;
|
|
17368
17337
|
}
|
|
17369
|
-
var _FilterDropdownMenu = (0,
|
|
17338
|
+
var _FilterDropdownMenu = (0, import_react97.memo)(FilterDropdownMenu);
|
|
17370
17339
|
|
|
17371
17340
|
// src/components/Pagination.tsx
|
|
17372
17341
|
var import_jsx_runtime141 = require("@emotion/react/jsx-runtime");
|
|
@@ -17464,13 +17433,13 @@ var import_use_debounce7 = require("use-debounce");
|
|
|
17464
17433
|
var import_use_query_params3 = require("use-query-params");
|
|
17465
17434
|
|
|
17466
17435
|
// src/components/Layout/ScrollableContent.tsx
|
|
17467
|
-
var
|
|
17436
|
+
var import_react98 = require("react");
|
|
17468
17437
|
var import_react_dom4 = require("react-dom");
|
|
17469
17438
|
var import_jsx_runtime143 = require("@emotion/react/jsx-runtime");
|
|
17470
17439
|
function ScrollableContent(props) {
|
|
17471
17440
|
const { children, virtualized = false, omitBottomPadding, bgColor } = props;
|
|
17472
17441
|
const { scrollableEl, setPortalTick, pl, pr } = useScrollableParent();
|
|
17473
|
-
(0,
|
|
17442
|
+
(0, import_react98.useEffect)(() => {
|
|
17474
17443
|
setPortalTick((prev) => prev + 1);
|
|
17475
17444
|
return () => setPortalTick((prev) => prev + 1);
|
|
17476
17445
|
}, [setPortalTick]);
|
|
@@ -17497,7 +17466,7 @@ function ScrollableContent(props) {
|
|
|
17497
17466
|
}
|
|
17498
17467
|
|
|
17499
17468
|
// src/components/Layout/GridTableLayout/QueryTable.tsx
|
|
17500
|
-
var
|
|
17469
|
+
var import_react99 = require("react");
|
|
17501
17470
|
|
|
17502
17471
|
// src/components/LoadingSkeleton.tsx
|
|
17503
17472
|
var import_jsx_runtime144 = require("@emotion/react/jsx-runtime");
|
|
@@ -17539,7 +17508,7 @@ var import_jsx_runtime145 = require("@emotion/react/jsx-runtime");
|
|
|
17539
17508
|
function QueryTable(props) {
|
|
17540
17509
|
const { emptyFallback, query, createRows, getPageInfo, columns, keepHeaderWhenLoading, ...others } = props;
|
|
17541
17510
|
const data = query.loading || query.error ? void 0 : query.data;
|
|
17542
|
-
const rows = (0,
|
|
17511
|
+
const rows = (0, import_react99.useMemo)(() => createRows(data), [createRows, data]);
|
|
17543
17512
|
const hasNextPage = data && getPageInfo && getPageInfo(data).hasNextPage;
|
|
17544
17513
|
const infoMessage = hasNextPage ? "Too many rows" : void 0;
|
|
17545
17514
|
const fallbackMessage = query.loading ? "Loading\u2026" : query.error ? `Error: ${query.error.message}` : emptyFallback;
|
|
@@ -17574,12 +17543,12 @@ function GridTableLayoutComponent(props) {
|
|
|
17574
17543
|
} = props;
|
|
17575
17544
|
const tid = useTestIds(props);
|
|
17576
17545
|
const columns = tableProps.columns;
|
|
17577
|
-
const hasHideableColumns = (0,
|
|
17546
|
+
const hasHideableColumns = (0, import_react100.useMemo)(() => {
|
|
17578
17547
|
if (hideEditColumns) return false;
|
|
17579
17548
|
validateColumns(columns);
|
|
17580
17549
|
return columns.some((c) => c.canHide);
|
|
17581
17550
|
}, [columns, hideEditColumns]);
|
|
17582
|
-
const api = (0,
|
|
17551
|
+
const api = (0, import_react100.useMemo)(
|
|
17583
17552
|
() => tableProps.api ?? new GridTableApiImpl(),
|
|
17584
17553
|
[tableProps.api]
|
|
17585
17554
|
);
|
|
@@ -17587,7 +17556,7 @@ function GridTableLayoutComponent(props) {
|
|
|
17587
17556
|
const showTableActions = layoutState?.filterDefs || layoutState?.search || hasHideableColumns;
|
|
17588
17557
|
const isVirtualized = tableProps.as === "virtual";
|
|
17589
17558
|
const visibleColumnIds = useComputed(() => api.getVisibleColumnIds(), [api]);
|
|
17590
|
-
(0,
|
|
17559
|
+
(0, import_react100.useEffect)(() => {
|
|
17591
17560
|
if (layoutState?.setVisibleColumnIds) {
|
|
17592
17561
|
layoutState.setVisibleColumnIds(visibleColumnIds);
|
|
17593
17562
|
}
|
|
@@ -17668,7 +17637,7 @@ function GridTableLayoutComponent(props) {
|
|
|
17668
17637
|
] })
|
|
17669
17638
|
] });
|
|
17670
17639
|
}
|
|
17671
|
-
var GridTableLayout =
|
|
17640
|
+
var GridTableLayout = import_react100.default.memo(GridTableLayoutComponent);
|
|
17672
17641
|
function validateColumns(columns) {
|
|
17673
17642
|
for (const col of columns) {
|
|
17674
17643
|
if (!col.id || !col.name) {
|
|
@@ -17686,7 +17655,7 @@ function useGridTableLayoutState({
|
|
|
17686
17655
|
const filterFallback = { filterDefs: {}, storageKey: "unset-filter" };
|
|
17687
17656
|
const { filter, setFilter } = usePersistedFilter(persistedFilter ?? filterFallback);
|
|
17688
17657
|
const groupBy = useGroupBy(maybeGroupBy ?? { none: "none" });
|
|
17689
|
-
const [searchString, setSearchString] = (0,
|
|
17658
|
+
const [searchString, setSearchString] = (0, import_react100.useState)("");
|
|
17690
17659
|
const columnsFallback = "unset-columns";
|
|
17691
17660
|
const [visibleColumnIds, setVisibleColumnIds] = useSessionStorage(
|
|
17692
17661
|
persistedColumns?.storageKey ?? columnsFallback,
|
|
@@ -17699,11 +17668,11 @@ function useGridTableLayoutState({
|
|
|
17699
17668
|
100
|
|
17700
17669
|
// default page size
|
|
17701
17670
|
);
|
|
17702
|
-
const [page, setPage] = (0,
|
|
17671
|
+
const [page, setPage] = (0, import_react100.useState)({
|
|
17703
17672
|
offset: 0,
|
|
17704
17673
|
limit: persistedPageSize
|
|
17705
17674
|
});
|
|
17706
|
-
(0,
|
|
17675
|
+
(0, import_react100.useEffect)(() => {
|
|
17707
17676
|
if (page.limit !== persistedPageSize) setPersistedPageSize(page.limit);
|
|
17708
17677
|
setPage((prev) => ({ ...prev, offset: 0 }));
|
|
17709
17678
|
}, [page.limit, persistedPageSize, setPersistedPageSize, filter, searchString]);
|
|
@@ -17742,9 +17711,9 @@ function Header2(props) {
|
|
|
17742
17711
|
}
|
|
17743
17712
|
function SearchBox({ onSearch }) {
|
|
17744
17713
|
const [{ search: initialValue }, setQueryParams] = (0, import_use_query_params3.useQueryParams)({ search: import_use_query_params3.StringParam });
|
|
17745
|
-
const [value, setValue] = (0,
|
|
17714
|
+
const [value, setValue] = (0, import_react100.useState)(initialValue || "");
|
|
17746
17715
|
const [debouncedSearch] = (0, import_use_debounce7.useDebounce)(value, 300);
|
|
17747
|
-
(0,
|
|
17716
|
+
(0, import_react100.useEffect)(() => {
|
|
17748
17717
|
onSearch(debouncedSearch);
|
|
17749
17718
|
setQueryParams({ search: debouncedSearch || void 0 }, "replaceIn");
|
|
17750
17719
|
}, [debouncedSearch, onSearch, setQueryParams]);
|
|
@@ -17774,9 +17743,9 @@ function PreventBrowserScroll({ children }) {
|
|
|
17774
17743
|
}
|
|
17775
17744
|
|
|
17776
17745
|
// src/components/Layout/RightPaneLayout/RightPaneContext.tsx
|
|
17777
|
-
var
|
|
17746
|
+
var import_react101 = __toESM(require("react"), 1);
|
|
17778
17747
|
var import_jsx_runtime148 = require("@emotion/react/jsx-runtime");
|
|
17779
|
-
var RightPaneContext =
|
|
17748
|
+
var RightPaneContext = import_react101.default.createContext({
|
|
17780
17749
|
openInPane: () => {
|
|
17781
17750
|
},
|
|
17782
17751
|
closePane: () => {
|
|
@@ -17787,35 +17756,35 @@ var RightPaneContext = import_react102.default.createContext({
|
|
|
17787
17756
|
rightPaneContent: null
|
|
17788
17757
|
});
|
|
17789
17758
|
function RightPaneProvider({ children }) {
|
|
17790
|
-
const [rightPaneContent, setRightPaneContent] = (0,
|
|
17791
|
-
const [isRightPaneOpen, setIsRightPaneOpen] = (0,
|
|
17792
|
-
const openInPane = (0,
|
|
17759
|
+
const [rightPaneContent, setRightPaneContent] = (0, import_react101.useState)(void 0);
|
|
17760
|
+
const [isRightPaneOpen, setIsRightPaneOpen] = (0, import_react101.useState)(false);
|
|
17761
|
+
const openInPane = (0, import_react101.useCallback)(
|
|
17793
17762
|
(opts) => {
|
|
17794
17763
|
setRightPaneContent(opts?.content);
|
|
17795
17764
|
setIsRightPaneOpen(true);
|
|
17796
17765
|
},
|
|
17797
17766
|
[setRightPaneContent]
|
|
17798
17767
|
);
|
|
17799
|
-
const closePane = (0,
|
|
17800
|
-
const clearPane = (0,
|
|
17801
|
-
const context = (0,
|
|
17768
|
+
const closePane = (0, import_react101.useCallback)(() => setIsRightPaneOpen(false), []);
|
|
17769
|
+
const clearPane = (0, import_react101.useCallback)(() => setRightPaneContent(void 0), [setRightPaneContent]);
|
|
17770
|
+
const context = (0, import_react101.useMemo)(
|
|
17802
17771
|
() => ({ openInPane, closePane, clearPane, rightPaneContent, isRightPaneOpen }),
|
|
17803
17772
|
[openInPane, closePane, rightPaneContent, clearPane, isRightPaneOpen]
|
|
17804
17773
|
);
|
|
17805
17774
|
return /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(RightPaneContext.Provider, { value: context, children });
|
|
17806
17775
|
}
|
|
17807
17776
|
function useRightPaneContext() {
|
|
17808
|
-
return (0,
|
|
17777
|
+
return (0, import_react101.useContext)(RightPaneContext);
|
|
17809
17778
|
}
|
|
17810
17779
|
|
|
17811
17780
|
// src/components/Layout/RightPaneLayout/RightPaneLayout.tsx
|
|
17812
17781
|
var import_framer_motion3 = require("framer-motion");
|
|
17813
|
-
var
|
|
17782
|
+
var import_react102 = require("react");
|
|
17814
17783
|
var import_jsx_runtime149 = require("@emotion/react/jsx-runtime");
|
|
17815
17784
|
function RightPaneLayout(props) {
|
|
17816
17785
|
const { children, paneBgColor = "rgba(255,255,255,1)" /* White */, paneWidth = 450, defaultPaneContent } = props;
|
|
17817
17786
|
const { isRightPaneOpen, rightPaneContent, clearPane, closePane } = useRightPaneContext();
|
|
17818
|
-
(0,
|
|
17787
|
+
(0, import_react102.useEffect)(() => closePane, [closePane]);
|
|
17819
17788
|
return /* @__PURE__ */ (0, import_jsx_runtime149.jsx)("div", { css: Css.h100.df.oxh.$, children: /* @__PURE__ */ (0, import_jsx_runtime149.jsxs)(import_jsx_runtime149.Fragment, { children: [
|
|
17820
17789
|
/* @__PURE__ */ (0, import_jsx_runtime149.jsx)(
|
|
17821
17790
|
"div",
|
|
@@ -17866,7 +17835,7 @@ function useRightPane() {
|
|
|
17866
17835
|
|
|
17867
17836
|
// src/components/BeamContext.tsx
|
|
17868
17837
|
var import_jsx_runtime150 = require("@emotion/react/jsx-runtime");
|
|
17869
|
-
var BeamContext = (0,
|
|
17838
|
+
var BeamContext = (0, import_react103.createContext)({
|
|
17870
17839
|
modalState: new EmptyRef(),
|
|
17871
17840
|
modalCanCloseChecks: new EmptyRef(),
|
|
17872
17841
|
modalHeaderDiv: void 0,
|
|
@@ -17878,21 +17847,21 @@ var BeamContext = (0, import_react104.createContext)({
|
|
|
17878
17847
|
sdHeaderDiv: void 0
|
|
17879
17848
|
});
|
|
17880
17849
|
function BeamProvider({ children, ...presentationProps }) {
|
|
17881
|
-
const [, tick] = (0,
|
|
17882
|
-
const modalRef = (0,
|
|
17883
|
-
const modalHeaderDiv = (0,
|
|
17884
|
-
const modalBodyDiv = (0,
|
|
17850
|
+
const [, tick] = (0, import_react103.useReducer)((prev) => prev + 1, 0);
|
|
17851
|
+
const modalRef = (0, import_react103.useRef)();
|
|
17852
|
+
const modalHeaderDiv = (0, import_react103.useMemo)(() => document.createElement("div"), []);
|
|
17853
|
+
const modalBodyDiv = (0, import_react103.useMemo)(() => {
|
|
17885
17854
|
const el = document.createElement("div");
|
|
17886
17855
|
el.style.height = "100%";
|
|
17887
17856
|
return el;
|
|
17888
17857
|
}, []);
|
|
17889
|
-
const modalCanCloseChecksRef = (0,
|
|
17890
|
-
const modalFooterDiv = (0,
|
|
17891
|
-
const drawerContentStackRef = (0,
|
|
17892
|
-
const drawerCanCloseChecks = (0,
|
|
17893
|
-
const drawerCanCloseDetailsChecks = (0,
|
|
17894
|
-
const sdHeaderDiv = (0,
|
|
17895
|
-
const context = (0,
|
|
17858
|
+
const modalCanCloseChecksRef = (0, import_react103.useRef)([]);
|
|
17859
|
+
const modalFooterDiv = (0, import_react103.useMemo)(() => document.createElement("div"), []);
|
|
17860
|
+
const drawerContentStackRef = (0, import_react103.useRef)([]);
|
|
17861
|
+
const drawerCanCloseChecks = (0, import_react103.useRef)([]);
|
|
17862
|
+
const drawerCanCloseDetailsChecks = (0, import_react103.useRef)([]);
|
|
17863
|
+
const sdHeaderDiv = (0, import_react103.useMemo)(() => document.createElement("div"), []);
|
|
17864
|
+
const context = (0, import_react103.useMemo)(() => {
|
|
17896
17865
|
return {
|
|
17897
17866
|
// These two keys need to trigger re-renders on change
|
|
17898
17867
|
modalState: new PretendRefThatTicks(modalRef, tick),
|
|
@@ -17929,18 +17898,18 @@ var PretendRefThatTicks = class {
|
|
|
17929
17898
|
}
|
|
17930
17899
|
};
|
|
17931
17900
|
function useBeamContext() {
|
|
17932
|
-
return (0,
|
|
17901
|
+
return (0, import_react103.useContext)(BeamContext);
|
|
17933
17902
|
}
|
|
17934
17903
|
|
|
17935
17904
|
// src/components/ButtonDatePicker.tsx
|
|
17936
|
-
var
|
|
17905
|
+
var import_react104 = require("react");
|
|
17937
17906
|
var import_react_aria46 = require("react-aria");
|
|
17938
17907
|
var import_react_stately18 = require("react-stately");
|
|
17939
17908
|
var import_jsx_runtime151 = require("@emotion/react/jsx-runtime");
|
|
17940
17909
|
function ButtonDatePicker(props) {
|
|
17941
17910
|
const { defaultOpen, disabled, trigger, onSelect, ...datePickerProps } = props;
|
|
17942
17911
|
const state = (0, import_react_stately18.useMenuTriggerState)({ isOpen: defaultOpen });
|
|
17943
|
-
const buttonRef = (0,
|
|
17912
|
+
const buttonRef = (0, import_react104.useRef)(null);
|
|
17944
17913
|
const {
|
|
17945
17914
|
menuTriggerProps,
|
|
17946
17915
|
menuProps: { autoFocus: _af, ...menuProps }
|
|
@@ -17963,7 +17932,7 @@ function ButtonDatePicker(props) {
|
|
|
17963
17932
|
}
|
|
17964
17933
|
|
|
17965
17934
|
// src/components/ButtonGroup.tsx
|
|
17966
|
-
var
|
|
17935
|
+
var import_react105 = require("react");
|
|
17967
17936
|
var import_react_aria47 = require("react-aria");
|
|
17968
17937
|
var import_jsx_runtime152 = (
|
|
17969
17938
|
// Disable the button if the ButtonGroup is disabled or if the current button is disabled.
|
|
@@ -17974,18 +17943,42 @@ function ButtonGroup(props) {
|
|
|
17974
17943
|
const tid = useTestIds(props, "buttonGroup");
|
|
17975
17944
|
return (
|
|
17976
17945
|
// Adding `line-height: 0` prevent inheriting line-heights that might throw off sizing within the button group.
|
|
17977
|
-
/* @__PURE__ */ (0, import_jsx_runtime152.jsx)("div", { ...tid, css: Css.df.lh(0).add({ ...sizeStyles2[size] }).$, children: buttons.map(({ disabled: buttonDisabled, ...buttonProps }, i) => /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
|
|
17946
|
+
/* @__PURE__ */ (0, import_jsx_runtime152.jsx)("div", { ...tid, css: Css.df.lh(0).add({ ...sizeStyles2[size] }).$, children: buttons.map(({ disabled: buttonDisabled, ...buttonProps }, i) => /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
|
|
17947
|
+
GroupButton,
|
|
17948
|
+
{
|
|
17949
|
+
...buttonProps,
|
|
17950
|
+
disabled: disabled || buttonDisabled,
|
|
17951
|
+
size,
|
|
17952
|
+
isFirst: i === 0,
|
|
17953
|
+
isLast: i === buttons.length - 1,
|
|
17954
|
+
...tid
|
|
17955
|
+
},
|
|
17956
|
+
i
|
|
17957
|
+
)) })
|
|
17978
17958
|
);
|
|
17979
17959
|
}
|
|
17980
17960
|
function GroupButton(props) {
|
|
17981
|
-
const {
|
|
17961
|
+
const {
|
|
17962
|
+
icon,
|
|
17963
|
+
iconInc,
|
|
17964
|
+
iconColor,
|
|
17965
|
+
text,
|
|
17966
|
+
active,
|
|
17967
|
+
onClick: onPress,
|
|
17968
|
+
disabled,
|
|
17969
|
+
size,
|
|
17970
|
+
tooltip,
|
|
17971
|
+
isFirst,
|
|
17972
|
+
isLast,
|
|
17973
|
+
...otherProps
|
|
17974
|
+
} = props;
|
|
17982
17975
|
const ariaProps = { onPress, isDisabled: !!disabled, ...otherProps };
|
|
17983
|
-
const ref = (0,
|
|
17976
|
+
const ref = (0, import_react105.useRef)(null);
|
|
17984
17977
|
const { buttonProps, isPressed } = (0, import_react_aria47.useButton)(ariaProps, ref);
|
|
17985
17978
|
const { isFocusVisible, focusProps } = (0, import_react_aria47.useFocusRing)();
|
|
17986
17979
|
const { hoverProps, isHovered } = (0, import_react_aria47.useHover)(ariaProps);
|
|
17987
17980
|
const tid = useTestIds(props);
|
|
17988
|
-
return /* @__PURE__ */ (0, import_jsx_runtime152.jsx)("span", { css: getButtonStyles2(), children: maybeTooltip({
|
|
17981
|
+
return /* @__PURE__ */ (0, import_jsx_runtime152.jsx)("span", { css: getButtonStyles2(isFirst, isLast), children: maybeTooltip({
|
|
17989
17982
|
title: resolveTooltip(disabled, tooltip),
|
|
17990
17983
|
placement: "top",
|
|
17991
17984
|
children: /* @__PURE__ */ (0, import_jsx_runtime152.jsxs)(
|
|
@@ -18016,15 +18009,15 @@ var pressedStyles = Css.bgGray200.$;
|
|
|
18016
18009
|
var activeStyles3 = Css.bgGray300.$;
|
|
18017
18010
|
var hoverStyles3 = Css.bgGray100.$;
|
|
18018
18011
|
var defaultFocusRingStyles2 = Css.relative.z2.bshFocus.$;
|
|
18019
|
-
function getButtonStyles2() {
|
|
18012
|
+
function getButtonStyles2(isFirst, isLast) {
|
|
18020
18013
|
return {
|
|
18021
18014
|
...Css.z1.bgWhite.bcGray300.bw1.ba.gray900.br0.oh.$,
|
|
18022
|
-
// Our first button should have a rounded left border
|
|
18023
|
-
|
|
18024
|
-
// Our last button should have a rounded right border
|
|
18025
|
-
|
|
18026
|
-
// Nudge buttons one pixel to the left so they visually share a border
|
|
18027
|
-
|
|
18015
|
+
// Our first button should have a rounded left border.
|
|
18016
|
+
...isFirst && Css.add("borderRadius", "4px 0 0 4px").$,
|
|
18017
|
+
// Our last button should have a rounded right border.
|
|
18018
|
+
...isLast && Css.add("borderRadius", "0 4px 4px 0").$,
|
|
18019
|
+
// Nudge buttons one pixel to the left so they visually share a border.
|
|
18020
|
+
...!isFirst && Css.mlPx(-1).$
|
|
18028
18021
|
};
|
|
18029
18022
|
}
|
|
18030
18023
|
var sizeStyles2 = {
|
|
@@ -18039,19 +18032,19 @@ var iconStyles2 = {
|
|
|
18039
18032
|
};
|
|
18040
18033
|
|
|
18041
18034
|
// src/components/Card.tsx
|
|
18042
|
-
var
|
|
18035
|
+
var import_react107 = require("react");
|
|
18043
18036
|
var import_react_aria48 = require("react-aria");
|
|
18044
18037
|
|
|
18045
18038
|
// src/components/Tag.tsx
|
|
18046
18039
|
var import_utils116 = require("@react-aria/utils");
|
|
18047
|
-
var
|
|
18040
|
+
var import_react106 = require("react");
|
|
18048
18041
|
var import_jsx_runtime153 = require("@emotion/react/jsx-runtime");
|
|
18049
18042
|
function Tag(props) {
|
|
18050
18043
|
const { text, type, xss, preventTooltip = false, ...otherProps } = props;
|
|
18051
18044
|
const typeStyles2 = getStyles(type);
|
|
18052
18045
|
const tid = useTestIds(otherProps);
|
|
18053
|
-
const [showTooltip, setShowTooltip] = (0,
|
|
18054
|
-
const ref = (0,
|
|
18046
|
+
const [showTooltip, setShowTooltip] = (0, import_react106.useState)(false);
|
|
18047
|
+
const ref = (0, import_react106.useRef)(null);
|
|
18055
18048
|
(0, import_utils116.useResizeObserver)({
|
|
18056
18049
|
ref,
|
|
18057
18050
|
onResize: () => {
|
|
@@ -18102,7 +18095,7 @@ function Card(props) {
|
|
|
18102
18095
|
const { hoverProps, isHovered } = (0, import_react_aria48.useHover)({ isDisabled });
|
|
18103
18096
|
const isList = type === "list";
|
|
18104
18097
|
const imgHeight = isList ? 96 : bordered ? 224 : 256;
|
|
18105
|
-
const styles = (0,
|
|
18098
|
+
const styles = (0, import_react107.useMemo)(
|
|
18106
18099
|
() => ({
|
|
18107
18100
|
...baseStyles4(type),
|
|
18108
18101
|
...isList && listStyles,
|
|
@@ -18154,9 +18147,9 @@ function Copy(props) {
|
|
|
18154
18147
|
return /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(
|
|
18155
18148
|
"div",
|
|
18156
18149
|
{
|
|
18150
|
+
className: "beam-copy",
|
|
18157
18151
|
css: {
|
|
18158
|
-
...Css.sm.gray700.mt2.mb3.wPx(480)
|
|
18159
|
-
"& > p": Css.my2.$
|
|
18152
|
+
...Css.sm.gray700.mt2.mb3.wPx(480).$
|
|
18160
18153
|
},
|
|
18161
18154
|
children: props.children
|
|
18162
18155
|
}
|
|
@@ -18165,53 +18158,54 @@ function Copy(props) {
|
|
|
18165
18158
|
|
|
18166
18159
|
// src/components/DnDGrid/DnDGrid.tsx
|
|
18167
18160
|
var import_fast_deep_equal2 = __toESM(require("fast-deep-equal"), 1);
|
|
18168
|
-
var
|
|
18161
|
+
var import_react109 = require("react");
|
|
18169
18162
|
|
|
18170
18163
|
// src/components/DnDGrid/DnDGridContext.tsx
|
|
18171
|
-
var
|
|
18172
|
-
var DnDGridContext = (0,
|
|
18164
|
+
var import_react108 = require("react");
|
|
18165
|
+
var DnDGridContext = (0, import_react108.createContext)({
|
|
18173
18166
|
dragEl: { current: void 0 },
|
|
18174
18167
|
onDragHandleKeyDown: () => {
|
|
18175
18168
|
}
|
|
18176
18169
|
});
|
|
18177
18170
|
function useDnDGridContext() {
|
|
18178
|
-
return (0,
|
|
18171
|
+
return (0, import_react108.useContext)(DnDGridContext);
|
|
18179
18172
|
}
|
|
18180
18173
|
|
|
18181
18174
|
// src/components/DnDGrid/DnDGrid.tsx
|
|
18182
18175
|
var import_jsx_runtime156 = require("@emotion/react/jsx-runtime");
|
|
18183
18176
|
function DnDGrid(props) {
|
|
18184
18177
|
const { children, gridStyles, onReorder, activeItemStyles } = props;
|
|
18185
|
-
const gridEl = (0,
|
|
18186
|
-
const dragEl = (0,
|
|
18187
|
-
const cloneEl = (0,
|
|
18188
|
-
const initialOrder = (0,
|
|
18189
|
-
const reorderViaKeyboard = (0,
|
|
18190
|
-
const transformFrom = (0,
|
|
18178
|
+
const gridEl = (0, import_react109.useRef)(null);
|
|
18179
|
+
const dragEl = (0, import_react109.useRef)();
|
|
18180
|
+
const cloneEl = (0, import_react109.useRef)();
|
|
18181
|
+
const initialOrder = (0, import_react109.useRef)();
|
|
18182
|
+
const reorderViaKeyboard = (0, import_react109.useRef)(false);
|
|
18183
|
+
const transformFrom = (0, import_react109.useRef)({ x: 0, y: 0 });
|
|
18191
18184
|
const tid = useTestIds(props, "dndGrid");
|
|
18192
|
-
const
|
|
18185
|
+
const activeStyles4 = activeItemStyles ?? Css.bshModal.$;
|
|
18186
|
+
const getGridItems = (0, import_react109.useCallback)(() => {
|
|
18193
18187
|
return gridEl.current ? Array.from(gridEl.current.querySelectorAll(`[${gridItemIdKey}]`)) : [];
|
|
18194
18188
|
}, []);
|
|
18195
|
-
const getGridItemIdOrder = (0,
|
|
18189
|
+
const getGridItemIdOrder = (0, import_react109.useCallback)(() => {
|
|
18196
18190
|
return getGridItems().map((child) => child.getAttribute(gridItemIdKey)).filter(isDefined);
|
|
18197
18191
|
}, [getGridItems]);
|
|
18198
|
-
const initReorder = (0,
|
|
18192
|
+
const initReorder = (0, import_react109.useCallback)(() => {
|
|
18199
18193
|
if (gridEl.current && dragEl.current) {
|
|
18200
18194
|
initialOrder.current = getGridItemIdOrder();
|
|
18201
|
-
dragEl.current
|
|
18195
|
+
setInlineStyles(dragEl.current, activeStyles4);
|
|
18202
18196
|
}
|
|
18203
|
-
}, [getGridItemIdOrder]);
|
|
18204
|
-
const commitReorder = (0,
|
|
18197
|
+
}, [getGridItemIdOrder, activeStyles4]);
|
|
18198
|
+
const commitReorder = (0, import_react109.useCallback)(() => {
|
|
18205
18199
|
if (gridEl.current && dragEl.current) {
|
|
18206
18200
|
const currentOrder = getGridItemIdOrder();
|
|
18207
18201
|
if (!(0, import_fast_deep_equal2.default)(currentOrder, initialOrder.current)) onReorder(currentOrder);
|
|
18208
|
-
dragEl.current
|
|
18202
|
+
clearInlineStyles(dragEl.current, activeStyles4);
|
|
18209
18203
|
dragEl.current = void 0;
|
|
18210
18204
|
reorderViaKeyboard.current = false;
|
|
18211
18205
|
initialOrder.current = currentOrder;
|
|
18212
18206
|
}
|
|
18213
|
-
}, [onReorder, getGridItemIdOrder]);
|
|
18214
|
-
const cancelReorder = (0,
|
|
18207
|
+
}, [onReorder, getGridItemIdOrder, activeStyles4]);
|
|
18208
|
+
const cancelReorder = (0, import_react109.useCallback)(() => {
|
|
18215
18209
|
if (gridEl.current && dragEl.current && initialOrder.current) {
|
|
18216
18210
|
const currentOrder = getGridItemIdOrder();
|
|
18217
18211
|
if (!(0, import_fast_deep_equal2.default)(currentOrder, initialOrder.current)) {
|
|
@@ -18228,12 +18222,12 @@ function DnDGrid(props) {
|
|
|
18228
18222
|
}
|
|
18229
18223
|
}
|
|
18230
18224
|
}
|
|
18231
|
-
dragEl.current
|
|
18225
|
+
clearInlineStyles(dragEl.current, activeStyles4);
|
|
18232
18226
|
dragEl.current = void 0;
|
|
18233
18227
|
reorderViaKeyboard.current = false;
|
|
18234
18228
|
}
|
|
18235
|
-
}, [getGridItemIdOrder, getGridItems]);
|
|
18236
|
-
const onMove = (0,
|
|
18229
|
+
}, [getGridItemIdOrder, getGridItems, activeStyles4]);
|
|
18230
|
+
const onMove = (0, import_react109.useCallback)((e) => {
|
|
18237
18231
|
if (!reorderViaKeyboard.current && dragEl.current && cloneEl.current && gridEl.current) {
|
|
18238
18232
|
const clientX = "clientX" in e ? e.clientX : e.touches[0].clientX;
|
|
18239
18233
|
const clientY = "clientY" in e ? e.clientY : e.touches[0].clientY;
|
|
@@ -18254,7 +18248,7 @@ function DnDGrid(props) {
|
|
|
18254
18248
|
}
|
|
18255
18249
|
}
|
|
18256
18250
|
}, []);
|
|
18257
|
-
const onDragStart = (0,
|
|
18251
|
+
const onDragStart = (0, import_react109.useCallback)(
|
|
18258
18252
|
(e) => {
|
|
18259
18253
|
if (!reorderViaKeyboard.current && dragEl.current && gridEl.current) {
|
|
18260
18254
|
initReorder();
|
|
@@ -18271,20 +18265,23 @@ function DnDGrid(props) {
|
|
|
18271
18265
|
);
|
|
18272
18266
|
cloneEl.current?.setAttribute(gridCloneKey, "true");
|
|
18273
18267
|
cloneEl.current.removeAttribute("id");
|
|
18274
|
-
cloneEl.current?.classList.remove(activeGridItemClass);
|
|
18275
18268
|
gridEl.current.insertBefore(cloneEl.current, dragEl.current.nextSibling);
|
|
18276
|
-
dragEl.current.
|
|
18277
|
-
|
|
18278
|
-
|
|
18279
|
-
|
|
18269
|
+
dragEl.current.style.pointerEvents = "none";
|
|
18270
|
+
dragEl.current.style.position = "fixed";
|
|
18271
|
+
dragEl.current.style.zIndex = "9999";
|
|
18272
|
+
dragEl.current.style.top = `${top}px`;
|
|
18273
|
+
dragEl.current.style.left = `${left}px`;
|
|
18274
|
+
dragEl.current.style.width = `${rect.width}px`;
|
|
18275
|
+
dragEl.current.style.height = `${rect.height}px`;
|
|
18276
|
+
setInlineStyles(dragEl.current, activeStyles4);
|
|
18280
18277
|
gridEl.current.style.cursor = "grabbing";
|
|
18281
18278
|
gridEl.current.addEventListener("mousemove", onMove);
|
|
18282
18279
|
gridEl.current.addEventListener("touchmove", onMove);
|
|
18283
18280
|
}
|
|
18284
18281
|
},
|
|
18285
|
-
[initReorder, onMove]
|
|
18282
|
+
[initReorder, onMove, activeStyles4]
|
|
18286
18283
|
);
|
|
18287
|
-
const onDragEnd = (0,
|
|
18284
|
+
const onDragEnd = (0, import_react109.useCallback)(
|
|
18288
18285
|
(e) => {
|
|
18289
18286
|
if (!reorderViaKeyboard.current && dragEl.current && cloneEl.current && gridEl.current) {
|
|
18290
18287
|
e.preventDefault();
|
|
@@ -18300,7 +18297,7 @@ function DnDGrid(props) {
|
|
|
18300
18297
|
},
|
|
18301
18298
|
[commitReorder, onMove]
|
|
18302
18299
|
);
|
|
18303
|
-
const onDragHandleKeyDown = (0,
|
|
18300
|
+
const onDragHandleKeyDown = (0, import_react109.useCallback)(
|
|
18304
18301
|
(e) => {
|
|
18305
18302
|
const moveHandle = e.target;
|
|
18306
18303
|
if (dragEl.current instanceof HTMLElement && moveHandle instanceof HTMLElement && gridEl.current) {
|
|
@@ -18356,7 +18353,7 @@ function DnDGrid(props) {
|
|
|
18356
18353
|
{
|
|
18357
18354
|
ref: gridEl,
|
|
18358
18355
|
css: {
|
|
18359
|
-
...Css.ctis.dg
|
|
18356
|
+
...Css.ctis.dg.$,
|
|
18360
18357
|
...gridStyles
|
|
18361
18358
|
},
|
|
18362
18359
|
onTouchStart: onDragStart,
|
|
@@ -18370,7 +18367,6 @@ function DnDGrid(props) {
|
|
|
18370
18367
|
}
|
|
18371
18368
|
var gridItemIdKey = "dndgrid-itemid";
|
|
18372
18369
|
var gridCloneKey = "dndgrid-clone";
|
|
18373
|
-
var activeGridItemClass = "dndgrid-active";
|
|
18374
18370
|
|
|
18375
18371
|
// src/components/DnDGrid/DnDGridItemHandle.tsx
|
|
18376
18372
|
var import_react_aria49 = require("react-aria");
|
|
@@ -18398,11 +18394,11 @@ function DnDGridItemHandle(props) {
|
|
|
18398
18394
|
}
|
|
18399
18395
|
|
|
18400
18396
|
// src/components/DnDGrid/useDnDGridItem.tsx
|
|
18401
|
-
var
|
|
18397
|
+
var import_react110 = require("react");
|
|
18402
18398
|
function useDnDGridItem(props) {
|
|
18403
18399
|
const { id, itemRef } = props;
|
|
18404
18400
|
const { dragEl, onDragHandleKeyDown } = useDnDGridContext();
|
|
18405
|
-
const { dragItemProps, dragHandleProps } = (0,
|
|
18401
|
+
const { dragItemProps, dragHandleProps } = (0, import_react110.useMemo)(
|
|
18406
18402
|
() => {
|
|
18407
18403
|
function initDraggable() {
|
|
18408
18404
|
if (itemRef.current) {
|
|
@@ -18429,19 +18425,19 @@ function useDnDGridItem(props) {
|
|
|
18429
18425
|
}
|
|
18430
18426
|
|
|
18431
18427
|
// src/components/Grid/ResponsiveGrid.tsx
|
|
18432
|
-
var
|
|
18428
|
+
var import_react112 = require("react");
|
|
18433
18429
|
|
|
18434
18430
|
// src/components/Grid/utils.ts
|
|
18435
|
-
var
|
|
18431
|
+
var import_react111 = require("react");
|
|
18436
18432
|
var gridItemDataAttribute = "data-grid-item-span";
|
|
18437
|
-
var ResponsiveGridContext = (0,
|
|
18433
|
+
var ResponsiveGridContext = (0, import_react111.createContext)(void 0);
|
|
18438
18434
|
|
|
18439
18435
|
// src/components/Grid/ResponsiveGrid.tsx
|
|
18440
18436
|
var import_jsx_runtime158 = require("@emotion/react/jsx-runtime");
|
|
18441
18437
|
function ResponsiveGrid(props) {
|
|
18442
18438
|
const { children, minColumnWidth, gap, columns } = props;
|
|
18443
18439
|
const { gridStyles } = useResponsiveGrid({ minColumnWidth, gap, columns });
|
|
18444
|
-
const config = (0,
|
|
18440
|
+
const config = (0, import_react112.useMemo)(() => ({ minColumnWidth, gap, columns }), [minColumnWidth, gap, columns]);
|
|
18445
18441
|
return /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(ResponsiveGridContext.Provider, { value: config, children: /* @__PURE__ */ (0, import_jsx_runtime158.jsx)("div", { css: { ...gridStyles }, children }) });
|
|
18446
18442
|
}
|
|
18447
18443
|
|
|
@@ -18454,10 +18450,10 @@ function ResponsiveGridItem(props) {
|
|
|
18454
18450
|
}
|
|
18455
18451
|
|
|
18456
18452
|
// src/components/Grid/useResponsiveGrid.ts
|
|
18457
|
-
var
|
|
18453
|
+
var import_react113 = require("react");
|
|
18458
18454
|
function useResponsiveGrid(props) {
|
|
18459
18455
|
const { minColumnWidth, gap, columns } = props;
|
|
18460
|
-
const gridStyles = (0,
|
|
18456
|
+
const gridStyles = (0, import_react113.useMemo)(() => {
|
|
18461
18457
|
const gapCount = columns - 1;
|
|
18462
18458
|
const totalGapWidth = gap * gapCount;
|
|
18463
18459
|
const maxColumnWidth = `calc((100% - ${totalGapWidth}px) / ${columns})`;
|
|
@@ -18469,12 +18465,12 @@ function useResponsiveGrid(props) {
|
|
|
18469
18465
|
}
|
|
18470
18466
|
|
|
18471
18467
|
// src/components/Grid/useResponsiveGridItem.ts
|
|
18472
|
-
var
|
|
18468
|
+
var import_react114 = require("react");
|
|
18473
18469
|
function useResponsiveGridItem(props) {
|
|
18474
18470
|
const { colSpan = 1, gridConfig } = props;
|
|
18475
|
-
const contextConfig = (0,
|
|
18471
|
+
const contextConfig = (0, import_react114.useContext)(ResponsiveGridContext);
|
|
18476
18472
|
const config = gridConfig ?? contextConfig;
|
|
18477
|
-
const gridItemStyles = (0,
|
|
18473
|
+
const gridItemStyles = (0, import_react114.useMemo)(() => {
|
|
18478
18474
|
if (!config || colSpan <= 1) return {};
|
|
18479
18475
|
const { minColumnWidth, gap } = config;
|
|
18480
18476
|
let styles = {};
|
|
@@ -18494,7 +18490,7 @@ function useResponsiveGridItem(props) {
|
|
|
18494
18490
|
}
|
|
18495
18491
|
|
|
18496
18492
|
// src/components/HbLoadingSpinner.tsx
|
|
18497
|
-
var
|
|
18493
|
+
var import_react115 = __toESM(require("react"), 1);
|
|
18498
18494
|
|
|
18499
18495
|
// src/components/HbLoadingSpinner.base64.ts
|
|
18500
18496
|
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";
|
|
@@ -18502,9 +18498,9 @@ var HbLoadingSpinner_base64_default = "data:image/gif,GIF89a%80%00%80%00%E7%00%0
|
|
|
18502
18498
|
// src/components/HbLoadingSpinner.tsx
|
|
18503
18499
|
var import_jsx_runtime160 = require("@emotion/react/jsx-runtime");
|
|
18504
18500
|
function HbLoadingSpinner({ noQuips, extraQuips = [], extraQuipsOnly, iconOnly }) {
|
|
18505
|
-
const ctx = (0,
|
|
18501
|
+
const ctx = (0, import_react115.useContext)(HbLoadingSpinnerContext);
|
|
18506
18502
|
const tid = useTestIds({}, "hbSpinner");
|
|
18507
|
-
const quip = (0,
|
|
18503
|
+
const quip = (0, import_react115.useMemo)(() => {
|
|
18508
18504
|
const allQuips = extraQuipsOnly && extraQuips.length !== 0 ? extraQuips : [...ctx.quips, ...extraQuips];
|
|
18509
18505
|
const forceQuips = extraQuips.length !== 0 || noQuips === false;
|
|
18510
18506
|
if (ctx.noQuips && !forceQuips || noQuips || allQuips.length === 0) return "Loading...";
|
|
@@ -18544,31 +18540,31 @@ var HB_QUIPS_MISSION = [
|
|
|
18544
18540
|
"In Service of Our Customers"
|
|
18545
18541
|
].map(dotDotDot);
|
|
18546
18542
|
var HB_QUIPS_FLAVOR = ["HOM is HOW", "Scaling Massively", "#LoveIt"].map(dotDotDot);
|
|
18547
|
-
var HbLoadingSpinnerContext =
|
|
18543
|
+
var HbLoadingSpinnerContext = import_react115.default.createContext({
|
|
18548
18544
|
quips: ["Loading..."],
|
|
18549
18545
|
noQuips: false
|
|
18550
18546
|
});
|
|
18551
18547
|
function HbSpinnerProvider({ quips = [], children }) {
|
|
18552
|
-
const state = (0,
|
|
18548
|
+
const state = (0, import_react115.useMemo)(() => ({ quips, noQuips: quips.length === 0 }), [quips]);
|
|
18553
18549
|
return /* @__PURE__ */ (0, import_jsx_runtime160.jsx)(HbLoadingSpinnerContext.Provider, { value: state, children });
|
|
18554
18550
|
}
|
|
18555
18551
|
|
|
18556
18552
|
// src/components/MaxLines.tsx
|
|
18557
18553
|
var import_utils124 = require("@react-aria/utils");
|
|
18558
|
-
var
|
|
18554
|
+
var import_react116 = require("react");
|
|
18559
18555
|
var import_jsx_runtime161 = require("@emotion/react/jsx-runtime");
|
|
18560
18556
|
function MaxLines({ maxLines, children }) {
|
|
18561
|
-
const elRef = (0,
|
|
18562
|
-
const [hasMore, setHasMore] = (0,
|
|
18563
|
-
const [expanded, setExpanded] = (0,
|
|
18557
|
+
const elRef = (0, import_react116.useRef)(null);
|
|
18558
|
+
const [hasMore, setHasMore] = (0, import_react116.useState)(false);
|
|
18559
|
+
const [expanded, setExpanded] = (0, import_react116.useState)(false);
|
|
18564
18560
|
(0, import_utils124.useLayoutEffect)(() => {
|
|
18565
18561
|
if (!elRef.current) return;
|
|
18566
18562
|
setHasMore(elRef.current.scrollHeight > elRef.current.clientHeight);
|
|
18567
18563
|
}, []);
|
|
18568
|
-
(0,
|
|
18564
|
+
(0, import_react116.useEffect)(() => {
|
|
18569
18565
|
setExpanded(false);
|
|
18570
18566
|
}, [children]);
|
|
18571
|
-
const onResize = (0,
|
|
18567
|
+
const onResize = (0, import_react116.useCallback)(() => {
|
|
18572
18568
|
if (!elRef.current) return;
|
|
18573
18569
|
!expanded && setHasMore(elRef.current.scrollHeight > elRef.current.clientHeight);
|
|
18574
18570
|
}, [expanded]);
|
|
@@ -18581,7 +18577,7 @@ function MaxLines({ maxLines, children }) {
|
|
|
18581
18577
|
|
|
18582
18578
|
// src/components/ScrollShadows.tsx
|
|
18583
18579
|
var import_utils125 = require("@react-aria/utils");
|
|
18584
|
-
var
|
|
18580
|
+
var import_react117 = require("react");
|
|
18585
18581
|
var import_jsx_runtime162 = require("@emotion/react/jsx-runtime");
|
|
18586
18582
|
function ScrollShadows(props) {
|
|
18587
18583
|
const { children, xss, horizontal = false, bgColor = "rgba(255,255,255,1)" /* White */ } = props;
|
|
@@ -18590,10 +18586,10 @@ function ScrollShadows(props) {
|
|
|
18590
18586
|
if (!bgColor.includes("rgba")) {
|
|
18591
18587
|
throw new Error("ScrollShadows: bgColor prop must be in the format 'rgba(255, 255, 255, 1)'");
|
|
18592
18588
|
}
|
|
18593
|
-
const [showStartShadow, setShowStartShadow] = (0,
|
|
18594
|
-
const [showEndShadow, setShowEndShadow] = (0,
|
|
18595
|
-
const scrollRef = (0,
|
|
18596
|
-
const [startShadowStyles, endShadowStyles] = (0,
|
|
18589
|
+
const [showStartShadow, setShowStartShadow] = (0, import_react117.useState)(false);
|
|
18590
|
+
const [showEndShadow, setShowEndShadow] = (0, import_react117.useState)(false);
|
|
18591
|
+
const scrollRef = (0, import_react117.useRef)(null);
|
|
18592
|
+
const [startShadowStyles, endShadowStyles] = (0, import_react117.useMemo)(() => {
|
|
18597
18593
|
const transparentBgColor = bgColor.replace(/,1\)$/, ",0)");
|
|
18598
18594
|
const commonStyles = Css.absolute.z3.add({ pointerEvents: "none" }).$;
|
|
18599
18595
|
const startShadowStyles2 = !horizontal ? Css.top0.left0.right0.hPx(40).$ : Css.left0.top0.bottom0.wPx(25).$;
|
|
@@ -18605,7 +18601,7 @@ function ScrollShadows(props) {
|
|
|
18605
18601
|
{ ...commonStyles, ...endShadowStyles2, ...Css.add("background", endGradient).$ }
|
|
18606
18602
|
];
|
|
18607
18603
|
}, [horizontal, bgColor]);
|
|
18608
|
-
const updateScrollProps = (0,
|
|
18604
|
+
const updateScrollProps = (0, import_react117.useCallback)(
|
|
18609
18605
|
(el) => {
|
|
18610
18606
|
const { scrollTop, scrollHeight, clientHeight, scrollWidth, scrollLeft, clientWidth } = el;
|
|
18611
18607
|
const start = horizontal ? scrollLeft : scrollTop;
|
|
@@ -18616,7 +18612,7 @@ function ScrollShadows(props) {
|
|
|
18616
18612
|
},
|
|
18617
18613
|
[horizontal]
|
|
18618
18614
|
);
|
|
18619
|
-
const onResize = (0,
|
|
18615
|
+
const onResize = (0, import_react117.useCallback)(() => scrollRef.current && updateScrollProps(scrollRef.current), [updateScrollProps]);
|
|
18620
18616
|
(0, import_utils125.useResizeObserver)({ ref: scrollRef, onResize });
|
|
18621
18617
|
return /* @__PURE__ */ (0, import_jsx_runtime162.jsxs)(
|
|
18622
18618
|
"div",
|
|
@@ -18644,10 +18640,10 @@ function ScrollShadows(props) {
|
|
|
18644
18640
|
}
|
|
18645
18641
|
|
|
18646
18642
|
// src/components/Snackbar/useSnackbar.tsx
|
|
18647
|
-
var
|
|
18643
|
+
var import_react118 = require("react");
|
|
18648
18644
|
function useSnackbar() {
|
|
18649
18645
|
const { setNotices, setOffset } = useSnackbarContext();
|
|
18650
|
-
const onClose = (0,
|
|
18646
|
+
const onClose = (0, import_react118.useCallback)(
|
|
18651
18647
|
(noticeId) => {
|
|
18652
18648
|
setNotices((prev) => {
|
|
18653
18649
|
let returnValue = prev;
|
|
@@ -18664,7 +18660,7 @@ function useSnackbar() {
|
|
|
18664
18660
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
18665
18661
|
[]
|
|
18666
18662
|
);
|
|
18667
|
-
const triggerNotice = (0,
|
|
18663
|
+
const triggerNotice = (0, import_react118.useCallback)(
|
|
18668
18664
|
(props) => {
|
|
18669
18665
|
const noticeId = props.id ?? `beamSnackbar:${snackbarId++}`;
|
|
18670
18666
|
let maybeTimeout;
|
|
@@ -18693,8 +18689,8 @@ function useSnackbar() {
|
|
|
18693
18689
|
},
|
|
18694
18690
|
[onClose, setNotices]
|
|
18695
18691
|
);
|
|
18696
|
-
const closeNotice = (0,
|
|
18697
|
-
const useSnackbarOffset = ({ bottom }) => (0,
|
|
18692
|
+
const closeNotice = (0, import_react118.useCallback)((id) => onClose(id), [onClose]);
|
|
18693
|
+
const useSnackbarOffset = ({ bottom }) => (0, import_react118.useEffect)(() => {
|
|
18698
18694
|
setOffset({ bottom });
|
|
18699
18695
|
return () => setOffset({});
|
|
18700
18696
|
}, [bottom]);
|
|
@@ -18703,7 +18699,7 @@ function useSnackbar() {
|
|
|
18703
18699
|
var snackbarId = 1;
|
|
18704
18700
|
|
|
18705
18701
|
// src/components/Stepper.tsx
|
|
18706
|
-
var
|
|
18702
|
+
var import_react119 = require("react");
|
|
18707
18703
|
var import_react_aria50 = require("react-aria");
|
|
18708
18704
|
var import_jsx_runtime163 = require("@emotion/react/jsx-runtime");
|
|
18709
18705
|
function Stepper(props) {
|
|
@@ -18747,7 +18743,7 @@ function Stepper(props) {
|
|
|
18747
18743
|
function StepButton(props) {
|
|
18748
18744
|
const { label, disabled, state, isCurrent, onClick } = props;
|
|
18749
18745
|
const ariaProps = { onPress: onClick, isDisabled: disabled };
|
|
18750
|
-
const ref = (0,
|
|
18746
|
+
const ref = (0, import_react119.useRef)(null);
|
|
18751
18747
|
const { buttonProps, isPressed } = (0, import_react_aria50.useButton)(ariaProps, ref);
|
|
18752
18748
|
const { isFocusVisible, focusProps } = (0, import_react_aria50.useFocusRing)();
|
|
18753
18749
|
const { hoverProps, isHovered } = (0, import_react_aria50.useHover)(ariaProps);
|
|
@@ -18862,7 +18858,7 @@ function ConfirmCloseModal(props) {
|
|
|
18862
18858
|
var import_framer_motion4 = require("framer-motion");
|
|
18863
18859
|
|
|
18864
18860
|
// src/components/SuperDrawer/useSuperDrawer.tsx
|
|
18865
|
-
var
|
|
18861
|
+
var import_react120 = require("react");
|
|
18866
18862
|
var import_jsx_runtime166 = require("@emotion/react/jsx-runtime");
|
|
18867
18863
|
function useSuperDrawer() {
|
|
18868
18864
|
const {
|
|
@@ -18902,7 +18898,7 @@ function useSuperDrawer() {
|
|
|
18902
18898
|
}
|
|
18903
18899
|
doChange();
|
|
18904
18900
|
}
|
|
18905
|
-
const closeActions = (0,
|
|
18901
|
+
const closeActions = (0, import_react120.useMemo)(
|
|
18906
18902
|
() => {
|
|
18907
18903
|
return {
|
|
18908
18904
|
/** Attempts to close the drawer. If any checks fail, a confirmation modal will appear */
|
|
@@ -18937,7 +18933,7 @@ function useSuperDrawer() {
|
|
|
18937
18933
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
18938
18934
|
[canCloseChecks, canCloseDetailsChecks, contentStack, modalState, openModal]
|
|
18939
18935
|
);
|
|
18940
|
-
const actions = (0,
|
|
18936
|
+
const actions = (0, import_react120.useMemo)(
|
|
18941
18937
|
() => {
|
|
18942
18938
|
return {
|
|
18943
18939
|
// TODO: Maybe we should rename to openDrawer as a breaking change (to match openDrawerDetail)
|
|
@@ -19036,7 +19032,7 @@ var SuperDrawerContent = ({ children, actions }) => {
|
|
|
19036
19032
|
|
|
19037
19033
|
// src/components/Tabs.tsx
|
|
19038
19034
|
var import_change_case7 = require("change-case");
|
|
19039
|
-
var
|
|
19035
|
+
var import_react121 = require("react");
|
|
19040
19036
|
var import_react_aria51 = require("react-aria");
|
|
19041
19037
|
var import_react_router2 = require("react-router");
|
|
19042
19038
|
var import_react_router_dom5 = require("react-router-dom");
|
|
@@ -19082,9 +19078,9 @@ function Tabs(props) {
|
|
|
19082
19078
|
) : props.selected;
|
|
19083
19079
|
const { isFocusVisible, focusProps } = (0, import_react_aria51.useFocusRing)();
|
|
19084
19080
|
const tid = useTestIds(others, "tabs");
|
|
19085
|
-
const [active, setActive] = (0,
|
|
19086
|
-
const ref = (0,
|
|
19087
|
-
(0,
|
|
19081
|
+
const [active, setActive] = (0, import_react121.useState)(selected);
|
|
19082
|
+
const ref = (0, import_react121.useRef)(null);
|
|
19083
|
+
(0, import_react121.useEffect)(() => setActive(selected), [selected]);
|
|
19088
19084
|
function onKeyUp(e) {
|
|
19089
19085
|
if (e.key === "ArrowLeft" || e.key === "ArrowRight") {
|
|
19090
19086
|
const nextTabValue = getNextTabValue(active, e.key, tabs);
|
|
@@ -19126,7 +19122,7 @@ function TabImpl(props) {
|
|
|
19126
19122
|
const { disabled = false, name: label, icon, endAdornment } = tab;
|
|
19127
19123
|
const isDisabled = !!disabled;
|
|
19128
19124
|
const { hoverProps, isHovered } = (0, import_react_aria51.useHover)({ isDisabled });
|
|
19129
|
-
const { baseStyles: baseStyles5, activeStyles: activeStyles4, focusRingStyles: focusRingStyles2, hoverStyles: hoverStyles4, disabledStyles: disabledStyles4, activeHoverStyles } = (0,
|
|
19125
|
+
const { baseStyles: baseStyles5, activeStyles: activeStyles4, focusRingStyles: focusRingStyles2, hoverStyles: hoverStyles4, disabledStyles: disabledStyles4, activeHoverStyles } = (0, import_react121.useMemo)(
|
|
19130
19126
|
() => getTabStyles(),
|
|
19131
19127
|
[]
|
|
19132
19128
|
);
|
|
@@ -19198,10 +19194,10 @@ function hideTabs(props) {
|
|
|
19198
19194
|
}
|
|
19199
19195
|
|
|
19200
19196
|
// src/components/Toast/useToast.tsx
|
|
19201
|
-
var
|
|
19197
|
+
var import_react122 = require("react");
|
|
19202
19198
|
function useToast() {
|
|
19203
19199
|
const { setNotice, clear } = useToastContext();
|
|
19204
|
-
const showToast = (0,
|
|
19200
|
+
const showToast = (0, import_react122.useCallback)((props) => setNotice(props), [setNotice]);
|
|
19205
19201
|
return { showToast, clear };
|
|
19206
19202
|
}
|
|
19207
19203
|
// Annotate the CommonJS export names for ESM import in node:
|