@homebound/beam 2.387.1 → 2.388.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +400 -302
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +28 -4
- package/dist/index.d.ts +28 -4
- package/dist/index.js +420 -324
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -14038,7 +14038,7 @@ function SuperDrawer() {
|
|
|
14038
14038
|
}
|
|
14039
14039
|
|
|
14040
14040
|
// src/components/Layout/FormPageLayout.tsx
|
|
14041
|
-
import React13, { createRef, useCallback as
|
|
14041
|
+
import React13, { createRef, useCallback as useCallback17, useEffect as useEffect21, useMemo as useMemo28, useRef as useRef41, useState as useState32 } from "react";
|
|
14042
14042
|
import { useButton as useButton9, useFocusRing as useFocusRing11 } from "react-aria";
|
|
14043
14043
|
|
|
14044
14044
|
// src/forms/BoundCheckboxField.tsx
|
|
@@ -14264,7 +14264,7 @@ function BoundDateRangeField(props) {
|
|
|
14264
14264
|
}
|
|
14265
14265
|
|
|
14266
14266
|
// src/forms/BoundForm.tsx
|
|
14267
|
-
import { useMemo as useMemo27 } from "react";
|
|
14267
|
+
import { useCallback as useCallback16, useMemo as useMemo27 } from "react";
|
|
14268
14268
|
|
|
14269
14269
|
// src/forms/BoundIconCardField.tsx
|
|
14270
14270
|
import { Observer as Observer6 } from "mobx-react";
|
|
@@ -14382,9 +14382,93 @@ function BoundIconCardGroupField(props) {
|
|
|
14382
14382
|
) });
|
|
14383
14383
|
}
|
|
14384
14384
|
|
|
14385
|
-
// src/forms/
|
|
14385
|
+
// src/forms/BoundListField.tsx
|
|
14386
14386
|
import { Observer as Observer8 } from "mobx-react";
|
|
14387
|
-
import { jsx as jsx100 } from "@emotion/react/jsx-runtime";
|
|
14387
|
+
import { Fragment as Fragment20, jsx as jsx100, jsxs as jsxs53 } from "@emotion/react/jsx-runtime";
|
|
14388
|
+
function ListField({ row, formState }) {
|
|
14389
|
+
const listFieldEntry = Object.entries(row).find(([key, _]) => isListFieldKey(key));
|
|
14390
|
+
const [prefixedFormKey, fieldConfig] = listFieldEntry;
|
|
14391
|
+
const listFieldKey = prefixedFormKey.replace(
|
|
14392
|
+
new RegExp(`^listField(.)`),
|
|
14393
|
+
(_, c) => c.toLowerCase()
|
|
14394
|
+
);
|
|
14395
|
+
const listFieldConfig = fieldConfig;
|
|
14396
|
+
const listFieldObjectState = formState[listFieldKey];
|
|
14397
|
+
const { filterDeleted, onNew } = listFieldConfig;
|
|
14398
|
+
const tid = useTestIds({}, "listField");
|
|
14399
|
+
const filteredRows = useComputed(
|
|
14400
|
+
() => filterDeleted ? listFieldObjectState.rows.filter((rowState) => filterDeleted(rowState)) : listFieldObjectState.rows,
|
|
14401
|
+
[filterDeleted]
|
|
14402
|
+
);
|
|
14403
|
+
const listIsValid = useComputed(() => listFieldObjectState.valid, [filteredRows]);
|
|
14404
|
+
return /* @__PURE__ */ jsx100(Observer8, { children: () => /* @__PURE__ */ jsxs53("div", { css: Css.df.fdc.gap3.$, ...tid, children: [
|
|
14405
|
+
filteredRows.map((rowState, index) => /* @__PURE__ */ jsx100(
|
|
14406
|
+
ListFieldRowInputs,
|
|
14407
|
+
{
|
|
14408
|
+
rowState,
|
|
14409
|
+
rowNumber: index + 1,
|
|
14410
|
+
listFieldConfig,
|
|
14411
|
+
formState,
|
|
14412
|
+
listFieldKey
|
|
14413
|
+
},
|
|
14414
|
+
`listFieldRowInputs-${listFieldKey}-${index}`
|
|
14415
|
+
)),
|
|
14416
|
+
/* @__PURE__ */ jsx100("div", { children: /* @__PURE__ */ jsx100(
|
|
14417
|
+
Button,
|
|
14418
|
+
{
|
|
14419
|
+
icon: "plus",
|
|
14420
|
+
label: `Add ${listFieldConfig.name}`,
|
|
14421
|
+
onClick: () => onNew(listFieldObjectState),
|
|
14422
|
+
variant: "secondary",
|
|
14423
|
+
disabled: !listIsValid
|
|
14424
|
+
}
|
|
14425
|
+
) })
|
|
14426
|
+
] }) });
|
|
14427
|
+
}
|
|
14428
|
+
function ListFieldRowInputs({
|
|
14429
|
+
rowState,
|
|
14430
|
+
rowNumber,
|
|
14431
|
+
listFieldConfig,
|
|
14432
|
+
formState,
|
|
14433
|
+
listFieldKey
|
|
14434
|
+
}) {
|
|
14435
|
+
const { onDelete } = listFieldConfig;
|
|
14436
|
+
const tid = useTestIds({}, "listFieldRow");
|
|
14437
|
+
return /* @__PURE__ */ jsxs53(Fragment20, { children: [
|
|
14438
|
+
/* @__PURE__ */ jsxs53("div", { css: Css.df.jcsb.$, ...tid, children: [
|
|
14439
|
+
/* @__PURE__ */ jsxs53("span", { css: Css.baseSb.$, ...tid.name, children: [
|
|
14440
|
+
listFieldConfig.name,
|
|
14441
|
+
" ",
|
|
14442
|
+
rowNumber
|
|
14443
|
+
] }),
|
|
14444
|
+
onDelete && /* @__PURE__ */ jsx100(
|
|
14445
|
+
ButtonMenu,
|
|
14446
|
+
{
|
|
14447
|
+
trigger: { icon: "verticalDots" },
|
|
14448
|
+
items: [{ label: "Delete", onClick: () => onDelete(formState[listFieldKey], rowState) }],
|
|
14449
|
+
...tid.menu
|
|
14450
|
+
}
|
|
14451
|
+
)
|
|
14452
|
+
] }),
|
|
14453
|
+
listFieldConfig.rows.map((row, rowIndex) => /* @__PURE__ */ jsx100(FormRow, { row, formState: rowState }, `listField-${listFieldKey}-row-${rowIndex}`))
|
|
14454
|
+
] });
|
|
14455
|
+
}
|
|
14456
|
+
function isListFieldKey(key) {
|
|
14457
|
+
return key.toString().startsWith(listFieldPrefix);
|
|
14458
|
+
}
|
|
14459
|
+
function isListFieldRow(row) {
|
|
14460
|
+
const rowKeys = Object.keys(row);
|
|
14461
|
+
const maybeListFieldKey = rowKeys.find((key) => isListFieldKey(key));
|
|
14462
|
+
if (maybeListFieldKey) {
|
|
14463
|
+
if (rowKeys.length > 1) fail("List fields cannot be combined with other fields in the same row");
|
|
14464
|
+
return true;
|
|
14465
|
+
}
|
|
14466
|
+
return false;
|
|
14467
|
+
}
|
|
14468
|
+
|
|
14469
|
+
// src/forms/BoundMultiLineSelectField.tsx
|
|
14470
|
+
import { Observer as Observer9 } from "mobx-react";
|
|
14471
|
+
import { jsx as jsx101 } from "@emotion/react/jsx-runtime";
|
|
14388
14472
|
function BoundMultiLineSelectField(props) {
|
|
14389
14473
|
const {
|
|
14390
14474
|
field,
|
|
@@ -14401,7 +14485,7 @@ function BoundMultiLineSelectField(props) {
|
|
|
14401
14485
|
...others
|
|
14402
14486
|
} = props;
|
|
14403
14487
|
const testId = useTestIds(props, field.key);
|
|
14404
|
-
return /* @__PURE__ */
|
|
14488
|
+
return /* @__PURE__ */ jsx101(Observer9, { children: () => /* @__PURE__ */ jsx101(
|
|
14405
14489
|
MultiLineSelectField,
|
|
14406
14490
|
{
|
|
14407
14491
|
label,
|
|
@@ -14431,8 +14515,8 @@ function BoundMultiLineSelectField(props) {
|
|
|
14431
14515
|
}
|
|
14432
14516
|
|
|
14433
14517
|
// src/forms/BoundMultiSelectField.tsx
|
|
14434
|
-
import { Observer as
|
|
14435
|
-
import { jsx as
|
|
14518
|
+
import { Observer as Observer10 } from "mobx-react";
|
|
14519
|
+
import { jsx as jsx102 } from "@emotion/react/jsx-runtime";
|
|
14436
14520
|
function BoundMultiSelectField(props) {
|
|
14437
14521
|
const {
|
|
14438
14522
|
field,
|
|
@@ -14449,7 +14533,7 @@ function BoundMultiSelectField(props) {
|
|
|
14449
14533
|
...others
|
|
14450
14534
|
} = props;
|
|
14451
14535
|
const testId = useTestIds(props, field.key);
|
|
14452
|
-
return /* @__PURE__ */
|
|
14536
|
+
return /* @__PURE__ */ jsx102(Observer10, { children: () => /* @__PURE__ */ jsx102(
|
|
14453
14537
|
MultiSelectField,
|
|
14454
14538
|
{
|
|
14455
14539
|
label,
|
|
@@ -14479,8 +14563,8 @@ function BoundMultiSelectField(props) {
|
|
|
14479
14563
|
}
|
|
14480
14564
|
|
|
14481
14565
|
// src/forms/BoundNumberField.tsx
|
|
14482
|
-
import { Observer as
|
|
14483
|
-
import { jsx as
|
|
14566
|
+
import { Observer as Observer11 } from "mobx-react";
|
|
14567
|
+
import { jsx as jsx103 } from "@emotion/react/jsx-runtime";
|
|
14484
14568
|
function BoundNumberField(props) {
|
|
14485
14569
|
const {
|
|
14486
14570
|
field,
|
|
@@ -14494,7 +14578,7 @@ function BoundNumberField(props) {
|
|
|
14494
14578
|
...others
|
|
14495
14579
|
} = props;
|
|
14496
14580
|
const testId = useTestIds(props, label || field.key);
|
|
14497
|
-
return /* @__PURE__ */
|
|
14581
|
+
return /* @__PURE__ */ jsx103(Observer11, { children: () => /* @__PURE__ */ jsx103(
|
|
14498
14582
|
NumberField,
|
|
14499
14583
|
{
|
|
14500
14584
|
label,
|
|
@@ -14523,8 +14607,8 @@ function BoundNumberField(props) {
|
|
|
14523
14607
|
}
|
|
14524
14608
|
|
|
14525
14609
|
// src/forms/BoundRadioGroupField.tsx
|
|
14526
|
-
import { Observer as
|
|
14527
|
-
import { jsx as
|
|
14610
|
+
import { Observer as Observer12 } from "mobx-react";
|
|
14611
|
+
import { jsx as jsx104 } from "@emotion/react/jsx-runtime";
|
|
14528
14612
|
function BoundRadioGroupField(props) {
|
|
14529
14613
|
const {
|
|
14530
14614
|
field,
|
|
@@ -14535,7 +14619,7 @@ function BoundRadioGroupField(props) {
|
|
|
14535
14619
|
...others
|
|
14536
14620
|
} = props;
|
|
14537
14621
|
const testId = useTestIds(props, field.key);
|
|
14538
|
-
return /* @__PURE__ */
|
|
14622
|
+
return /* @__PURE__ */ jsx104(Observer12, { children: () => /* @__PURE__ */ jsx104(
|
|
14539
14623
|
RadioGroupField,
|
|
14540
14624
|
{
|
|
14541
14625
|
label,
|
|
@@ -14560,8 +14644,8 @@ function BoundRadioGroupField(props) {
|
|
|
14560
14644
|
}
|
|
14561
14645
|
|
|
14562
14646
|
// src/forms/BoundRichTextField.tsx
|
|
14563
|
-
import { Observer as
|
|
14564
|
-
import { jsx as
|
|
14647
|
+
import { Observer as Observer13 } from "mobx-react";
|
|
14648
|
+
import { jsx as jsx105 } from "@emotion/react/jsx-runtime";
|
|
14565
14649
|
function BoundRichTextField(props) {
|
|
14566
14650
|
const {
|
|
14567
14651
|
field,
|
|
@@ -14573,7 +14657,7 @@ function BoundRichTextField(props) {
|
|
|
14573
14657
|
...others
|
|
14574
14658
|
} = props;
|
|
14575
14659
|
const testId = useTestIds(props, field.key);
|
|
14576
|
-
return /* @__PURE__ */
|
|
14660
|
+
return /* @__PURE__ */ jsx105(Observer13, { children: () => /* @__PURE__ */ jsx105(
|
|
14577
14661
|
RichTextField,
|
|
14578
14662
|
{
|
|
14579
14663
|
label,
|
|
@@ -14595,8 +14679,8 @@ function BoundRichTextField(props) {
|
|
|
14595
14679
|
}
|
|
14596
14680
|
|
|
14597
14681
|
// src/forms/BoundSelectField.tsx
|
|
14598
|
-
import { Observer as
|
|
14599
|
-
import { jsx as
|
|
14682
|
+
import { Observer as Observer14 } from "mobx-react";
|
|
14683
|
+
import { jsx as jsx106 } from "@emotion/react/jsx-runtime";
|
|
14600
14684
|
function BoundSelectField(props) {
|
|
14601
14685
|
const {
|
|
14602
14686
|
field,
|
|
@@ -14611,7 +14695,7 @@ function BoundSelectField(props) {
|
|
|
14611
14695
|
...others
|
|
14612
14696
|
} = props;
|
|
14613
14697
|
const testId = useTestIds(props, field.key);
|
|
14614
|
-
return /* @__PURE__ */
|
|
14698
|
+
return /* @__PURE__ */ jsx106(Observer14, { children: () => /* @__PURE__ */ jsx106(
|
|
14615
14699
|
SelectField,
|
|
14616
14700
|
{
|
|
14617
14701
|
label,
|
|
@@ -14641,8 +14725,8 @@ function BoundSelectField(props) {
|
|
|
14641
14725
|
}
|
|
14642
14726
|
|
|
14643
14727
|
// src/forms/BoundSwitchField.tsx
|
|
14644
|
-
import { Observer as
|
|
14645
|
-
import { jsx as
|
|
14728
|
+
import { Observer as Observer15 } from "mobx-react";
|
|
14729
|
+
import { jsx as jsx107 } from "@emotion/react/jsx-runtime";
|
|
14646
14730
|
function BoundSwitchField(props) {
|
|
14647
14731
|
const {
|
|
14648
14732
|
field,
|
|
@@ -14653,7 +14737,7 @@ function BoundSwitchField(props) {
|
|
|
14653
14737
|
...others
|
|
14654
14738
|
} = props;
|
|
14655
14739
|
const testId = useTestIds(props, field.key);
|
|
14656
|
-
return /* @__PURE__ */
|
|
14740
|
+
return /* @__PURE__ */ jsx107(Observer15, { children: () => /* @__PURE__ */ jsx107(
|
|
14657
14741
|
Switch,
|
|
14658
14742
|
{
|
|
14659
14743
|
label,
|
|
@@ -14671,8 +14755,8 @@ function BoundSwitchField(props) {
|
|
|
14671
14755
|
}
|
|
14672
14756
|
|
|
14673
14757
|
// src/forms/BoundTextAreaField.tsx
|
|
14674
|
-
import { Observer as
|
|
14675
|
-
import { jsx as
|
|
14758
|
+
import { Observer as Observer16 } from "mobx-react";
|
|
14759
|
+
import { jsx as jsx108 } from "@emotion/react/jsx-runtime";
|
|
14676
14760
|
function BoundTextAreaField(props) {
|
|
14677
14761
|
const {
|
|
14678
14762
|
field,
|
|
@@ -14685,7 +14769,7 @@ function BoundTextAreaField(props) {
|
|
|
14685
14769
|
...others
|
|
14686
14770
|
} = props;
|
|
14687
14771
|
const testId = useTestIds(props, field.key);
|
|
14688
|
-
return /* @__PURE__ */
|
|
14772
|
+
return /* @__PURE__ */ jsx108(Observer16, { children: () => /* @__PURE__ */ jsx108(
|
|
14689
14773
|
TextAreaField,
|
|
14690
14774
|
{
|
|
14691
14775
|
label,
|
|
@@ -14713,8 +14797,8 @@ function BoundTextAreaField(props) {
|
|
|
14713
14797
|
}
|
|
14714
14798
|
|
|
14715
14799
|
// src/forms/BoundTextField.tsx
|
|
14716
|
-
import { Observer as
|
|
14717
|
-
import { jsx as
|
|
14800
|
+
import { Observer as Observer17 } from "mobx-react";
|
|
14801
|
+
import { jsx as jsx109 } from "@emotion/react/jsx-runtime";
|
|
14718
14802
|
function BoundTextField(props) {
|
|
14719
14803
|
const {
|
|
14720
14804
|
field,
|
|
@@ -14727,7 +14811,7 @@ function BoundTextField(props) {
|
|
|
14727
14811
|
...others
|
|
14728
14812
|
} = props;
|
|
14729
14813
|
const testId = useTestIds(props, field.key);
|
|
14730
|
-
return /* @__PURE__ */
|
|
14814
|
+
return /* @__PURE__ */ jsx109(Observer17, { children: () => /* @__PURE__ */ jsx109(
|
|
14731
14815
|
TextField,
|
|
14732
14816
|
{
|
|
14733
14817
|
label,
|
|
@@ -14755,12 +14839,12 @@ function BoundTextField(props) {
|
|
|
14755
14839
|
}
|
|
14756
14840
|
|
|
14757
14841
|
// src/forms/BoundToggleChipGroupField.tsx
|
|
14758
|
-
import { Observer as
|
|
14759
|
-
import { jsx as
|
|
14842
|
+
import { Observer as Observer18 } from "mobx-react";
|
|
14843
|
+
import { jsx as jsx110 } from "@emotion/react/jsx-runtime";
|
|
14760
14844
|
function BoundToggleChipGroupField(props) {
|
|
14761
14845
|
const { field, onChange = (value) => field.set(value), label = defaultLabel(field.key), ...others } = props;
|
|
14762
14846
|
const testId = useTestIds(props, field.key);
|
|
14763
|
-
return /* @__PURE__ */
|
|
14847
|
+
return /* @__PURE__ */ jsx110(Observer18, { children: () => /* @__PURE__ */ jsx110(
|
|
14764
14848
|
ToggleChipGroup,
|
|
14765
14849
|
{
|
|
14766
14850
|
label,
|
|
@@ -14774,8 +14858,8 @@ function BoundToggleChipGroupField(props) {
|
|
|
14774
14858
|
}
|
|
14775
14859
|
|
|
14776
14860
|
// src/forms/BoundTreeSelectField.tsx
|
|
14777
|
-
import { Observer as
|
|
14778
|
-
import { jsx as
|
|
14861
|
+
import { Observer as Observer19 } from "mobx-react";
|
|
14862
|
+
import { jsx as jsx111 } from "@emotion/react/jsx-runtime";
|
|
14779
14863
|
function BoundTreeSelectField(props) {
|
|
14780
14864
|
const {
|
|
14781
14865
|
field,
|
|
@@ -14792,7 +14876,7 @@ function BoundTreeSelectField(props) {
|
|
|
14792
14876
|
...others
|
|
14793
14877
|
} = props;
|
|
14794
14878
|
const testId = useTestIds(props, field.key);
|
|
14795
|
-
return /* @__PURE__ */
|
|
14879
|
+
return /* @__PURE__ */ jsx111(Observer19, { children: () => /* @__PURE__ */ jsx111(
|
|
14796
14880
|
TreeSelectField,
|
|
14797
14881
|
{
|
|
14798
14882
|
label,
|
|
@@ -14823,7 +14907,7 @@ function BoundTreeSelectField(props) {
|
|
|
14823
14907
|
|
|
14824
14908
|
// src/forms/FormLines.tsx
|
|
14825
14909
|
import { Children, cloneElement } from "react";
|
|
14826
|
-
import { jsx as
|
|
14910
|
+
import { jsx as jsx112 } from "@emotion/react/jsx-runtime";
|
|
14827
14911
|
function FormLines(props) {
|
|
14828
14912
|
const { inModal } = useModal();
|
|
14829
14913
|
const {
|
|
@@ -14843,7 +14927,7 @@ function FormLines(props) {
|
|
|
14843
14927
|
..."labelLeftFieldWidth" in props ? { labelLeftFieldWidth } : {},
|
|
14844
14928
|
...width === "full" ? { fullWidth: true } : {}
|
|
14845
14929
|
};
|
|
14846
|
-
return /* @__PURE__ */
|
|
14930
|
+
return /* @__PURE__ */ jsx112(PresentationProvider, { fieldProps: newFieldProps, children: /* @__PURE__ */ jsx112(
|
|
14847
14931
|
"div",
|
|
14848
14932
|
{
|
|
14849
14933
|
css: {
|
|
@@ -14865,7 +14949,7 @@ function FormLines(props) {
|
|
|
14865
14949
|
) });
|
|
14866
14950
|
}
|
|
14867
14951
|
function FormDivider() {
|
|
14868
|
-
return /* @__PURE__ */
|
|
14952
|
+
return /* @__PURE__ */ jsx112("div", { css: Css.hPx(1).my2.bgGray200.$ });
|
|
14869
14953
|
}
|
|
14870
14954
|
function FieldGroup(props) {
|
|
14871
14955
|
const { title, children, widths: widths2 = [] } = props;
|
|
@@ -14873,7 +14957,7 @@ function FieldGroup(props) {
|
|
|
14873
14957
|
const width = widths2[i] || 1;
|
|
14874
14958
|
return typeof width === `number` ? `${width}fr` : width;
|
|
14875
14959
|
}).join(" ");
|
|
14876
|
-
return /* @__PURE__ */
|
|
14960
|
+
return /* @__PURE__ */ jsx112("div", { css: Css.dg.gap2.gtc(gtc).$, children });
|
|
14877
14961
|
}
|
|
14878
14962
|
var sizes = {
|
|
14879
14963
|
full: "100%",
|
|
@@ -14883,12 +14967,18 @@ var sizes = {
|
|
|
14883
14967
|
};
|
|
14884
14968
|
|
|
14885
14969
|
// src/forms/BoundForm.tsx
|
|
14886
|
-
import { jsx as
|
|
14970
|
+
import { jsx as jsx113 } from "@emotion/react/jsx-runtime";
|
|
14887
14971
|
var reactNodePrefix = "reactNode";
|
|
14972
|
+
var listFieldPrefix = "listField";
|
|
14888
14973
|
function BoundForm(props) {
|
|
14889
14974
|
const { rows, formState } = props;
|
|
14890
14975
|
const tid = useTestIds({}, "boundForm");
|
|
14891
|
-
|
|
14976
|
+
const getRowKey = useCallback16((row, rowType) => {
|
|
14977
|
+
return `${rowType}-${Object.keys(row).join("-")}`;
|
|
14978
|
+
}, []);
|
|
14979
|
+
return /* @__PURE__ */ jsx113("div", { ...tid, children: /* @__PURE__ */ jsx113(FormLines, { width: "full", gap: 3.5, children: rows.map(
|
|
14980
|
+
(row) => isListFieldRow(row) ? /* @__PURE__ */ jsx113(ListField, { row, formState }, getRowKey(row, "listField")) : /* @__PURE__ */ jsx113(FormRow, { row, formState }, getRowKey(row, "fieldGroup"))
|
|
14981
|
+
) }) });
|
|
14892
14982
|
}
|
|
14893
14983
|
function FormRow({ row, formState }) {
|
|
14894
14984
|
const tid = useTestIds({}, "boundFormRow");
|
|
@@ -14900,129 +14990,133 @@ function FormRow({ row, formState }) {
|
|
|
14900
14990
|
const { component, minWidth } = fieldFn(field);
|
|
14901
14991
|
return { component, key, minWidth };
|
|
14902
14992
|
}
|
|
14993
|
+
if (isCustomReactNodeKey(key) && typeof fieldFnOrCustomNode === "function") {
|
|
14994
|
+
const nodeAsFunction = fieldFnOrCustomNode;
|
|
14995
|
+
return { component: nodeAsFunction(formState), key };
|
|
14996
|
+
}
|
|
14903
14997
|
return { component: fieldFnOrCustomNode, key };
|
|
14904
14998
|
});
|
|
14905
14999
|
}, [row, formState]);
|
|
14906
15000
|
const isLoading = useComputed(() => formState.loading, [formState]);
|
|
14907
15001
|
const itemFlexBasis = 100 / componentsWithConfig.length - 3;
|
|
14908
|
-
return /* @__PURE__ */
|
|
15002
|
+
return /* @__PURE__ */ jsx113("div", { css: Css.df.fww.aic.gap2.$, ...tid, children: componentsWithConfig.map(({ component, key, minWidth }) => /* @__PURE__ */ jsx113("div", { css: Css.mw(minWidth).fb(`${itemFlexBasis}%`).fg1.$, children: isLoading ? /* @__PURE__ */ jsx113(LoadingSkeleton, { size: "lg" }) : component }, key.toString())) });
|
|
14909
15003
|
}
|
|
14910
15004
|
function isCustomReactNodeKey(key) {
|
|
14911
15005
|
return key.toString().startsWith(reactNodePrefix);
|
|
14912
15006
|
}
|
|
14913
15007
|
function boundSelectField(props) {
|
|
14914
15008
|
return (field) => ({
|
|
14915
|
-
component: /* @__PURE__ */
|
|
15009
|
+
component: /* @__PURE__ */ jsx113(BoundSelectField, { field, ...props }),
|
|
14916
15010
|
minWidth: "200px"
|
|
14917
15011
|
});
|
|
14918
15012
|
}
|
|
14919
15013
|
function boundMultiSelectField(props) {
|
|
14920
15014
|
return (field) => ({
|
|
14921
|
-
component: /* @__PURE__ */
|
|
15015
|
+
component: /* @__PURE__ */ jsx113(BoundMultiSelectField, { field, ...props }),
|
|
14922
15016
|
minWidth: "200px"
|
|
14923
15017
|
});
|
|
14924
15018
|
}
|
|
14925
15019
|
function boundMultilineSelectField(props) {
|
|
14926
15020
|
return (field) => ({
|
|
14927
|
-
component: /* @__PURE__ */
|
|
15021
|
+
component: /* @__PURE__ */ jsx113(BoundMultiLineSelectField, { field, ...props }),
|
|
14928
15022
|
minWidth: "200px"
|
|
14929
15023
|
});
|
|
14930
15024
|
}
|
|
14931
15025
|
function boundTextField(props) {
|
|
14932
15026
|
return (field) => ({
|
|
14933
|
-
component: /* @__PURE__ */
|
|
15027
|
+
component: /* @__PURE__ */ jsx113(BoundTextField, { field, ...props }),
|
|
14934
15028
|
minWidth: "150px"
|
|
14935
15029
|
});
|
|
14936
15030
|
}
|
|
14937
15031
|
function boundTextAreaField(props) {
|
|
14938
15032
|
return (field) => ({
|
|
14939
|
-
component: /* @__PURE__ */
|
|
15033
|
+
component: /* @__PURE__ */ jsx113(BoundTextAreaField, { field, ...props }),
|
|
14940
15034
|
minWidth: "200px"
|
|
14941
15035
|
});
|
|
14942
15036
|
}
|
|
14943
15037
|
function boundNumberField(props) {
|
|
14944
15038
|
return (field) => ({
|
|
14945
|
-
component: /* @__PURE__ */
|
|
15039
|
+
component: /* @__PURE__ */ jsx113(BoundNumberField, { field, ...props }),
|
|
14946
15040
|
minWidth: "150px"
|
|
14947
15041
|
});
|
|
14948
15042
|
}
|
|
14949
15043
|
function boundDateField(props) {
|
|
14950
15044
|
return (field) => ({
|
|
14951
|
-
component: /* @__PURE__ */
|
|
15045
|
+
component: /* @__PURE__ */ jsx113(BoundDateField, { field, ...props }),
|
|
14952
15046
|
minWidth: "150px"
|
|
14953
15047
|
});
|
|
14954
15048
|
}
|
|
14955
15049
|
function boundDateRangeField(props) {
|
|
14956
15050
|
return (field) => ({
|
|
14957
|
-
component: /* @__PURE__ */
|
|
15051
|
+
component: /* @__PURE__ */ jsx113(BoundDateRangeField, { field, ...props }),
|
|
14958
15052
|
minWidth: "150px"
|
|
14959
15053
|
});
|
|
14960
15054
|
}
|
|
14961
15055
|
function boundCheckboxField(props) {
|
|
14962
15056
|
return (field) => ({
|
|
14963
|
-
component: /* @__PURE__ */
|
|
15057
|
+
component: /* @__PURE__ */ jsx113(BoundCheckboxField, { field, ...props }),
|
|
14964
15058
|
minWidth: "min-content"
|
|
14965
15059
|
});
|
|
14966
15060
|
}
|
|
14967
15061
|
function boundCheckboxGroupField(props) {
|
|
14968
15062
|
return (field) => ({
|
|
14969
|
-
component: /* @__PURE__ */
|
|
15063
|
+
component: /* @__PURE__ */ jsx113(BoundCheckboxGroupField, { field, ...props }),
|
|
14970
15064
|
minWidth: "200px"
|
|
14971
15065
|
});
|
|
14972
15066
|
}
|
|
14973
15067
|
function boundIconCardField(props) {
|
|
14974
15068
|
return (field) => ({
|
|
14975
|
-
component: /* @__PURE__ */
|
|
15069
|
+
component: /* @__PURE__ */ jsx113(BoundIconCardField, { field, ...props }),
|
|
14976
15070
|
minWidth: "150px"
|
|
14977
15071
|
});
|
|
14978
15072
|
}
|
|
14979
15073
|
function boundIconCardGroupField(props) {
|
|
14980
15074
|
return (field) => ({
|
|
14981
|
-
component: /* @__PURE__ */
|
|
15075
|
+
component: /* @__PURE__ */ jsx113(BoundIconCardGroupField, { field, ...props }),
|
|
14982
15076
|
minWidth: "100%"
|
|
14983
15077
|
});
|
|
14984
15078
|
}
|
|
14985
15079
|
function boundRadioGroupField(props) {
|
|
14986
15080
|
return (field) => ({
|
|
14987
|
-
component: /* @__PURE__ */
|
|
15081
|
+
component: /* @__PURE__ */ jsx113(BoundRadioGroupField, { field, ...props }),
|
|
14988
15082
|
minWidth: "200px"
|
|
14989
15083
|
});
|
|
14990
15084
|
}
|
|
14991
15085
|
function boundRichTextField(props) {
|
|
14992
15086
|
return (field) => ({
|
|
14993
|
-
component: /* @__PURE__ */
|
|
15087
|
+
component: /* @__PURE__ */ jsx113(BoundRichTextField, { field, ...props }),
|
|
14994
15088
|
minWidth: "200px"
|
|
14995
15089
|
});
|
|
14996
15090
|
}
|
|
14997
15091
|
function boundSwitchField(props) {
|
|
14998
15092
|
return (field) => ({
|
|
14999
|
-
component: /* @__PURE__ */
|
|
15093
|
+
component: /* @__PURE__ */ jsx113(BoundSwitchField, { field, labelStyle: "inline", ...props }),
|
|
15000
15094
|
minWidth: "min-content"
|
|
15001
15095
|
});
|
|
15002
15096
|
}
|
|
15003
15097
|
function boundToggleChipGroupField(props) {
|
|
15004
15098
|
return (field) => ({
|
|
15005
|
-
component: /* @__PURE__ */
|
|
15099
|
+
component: /* @__PURE__ */ jsx113(BoundToggleChipGroupField, { field, ...props }),
|
|
15006
15100
|
minWidth: "100%"
|
|
15007
15101
|
});
|
|
15008
15102
|
}
|
|
15009
15103
|
function boundTreeSelectField(props) {
|
|
15010
15104
|
return (field) => ({
|
|
15011
|
-
component: /* @__PURE__ */
|
|
15105
|
+
component: /* @__PURE__ */ jsx113(BoundTreeSelectField, { field, ...props }),
|
|
15012
15106
|
minWidth: "200px"
|
|
15013
15107
|
});
|
|
15014
15108
|
}
|
|
15015
15109
|
|
|
15016
15110
|
// src/components/internal/CompoundField.tsx
|
|
15017
15111
|
import { cloneElement as cloneElement2 } from "react";
|
|
15018
|
-
import { jsx as
|
|
15112
|
+
import { jsx as jsx114, jsxs as jsxs54 } from "@emotion/react/jsx-runtime";
|
|
15019
15113
|
function CompoundField({ children }) {
|
|
15020
15114
|
if (children?.length !== 2) {
|
|
15021
15115
|
throw new Error("CompoundField requires two children components");
|
|
15022
15116
|
}
|
|
15023
15117
|
const commonStyles = Css.df.aic.fs1.maxwPx(550).bt.bb.bcGray300.$;
|
|
15024
15118
|
const internalProps = { compound: true };
|
|
15025
|
-
return /* @__PURE__ */
|
|
15119
|
+
return /* @__PURE__ */ jsxs54(
|
|
15026
15120
|
"div",
|
|
15027
15121
|
{
|
|
15028
15122
|
css: {
|
|
@@ -15031,7 +15125,7 @@ function CompoundField({ children }) {
|
|
|
15031
15125
|
// Separation line when inputs are focused
|
|
15032
15126
|
},
|
|
15033
15127
|
children: [
|
|
15034
|
-
/* @__PURE__ */
|
|
15128
|
+
/* @__PURE__ */ jsx114(
|
|
15035
15129
|
"div",
|
|
15036
15130
|
{
|
|
15037
15131
|
css: {
|
|
@@ -15044,8 +15138,8 @@ function CompoundField({ children }) {
|
|
|
15044
15138
|
})
|
|
15045
15139
|
}
|
|
15046
15140
|
),
|
|
15047
|
-
/* @__PURE__ */
|
|
15048
|
-
/* @__PURE__ */
|
|
15141
|
+
/* @__PURE__ */ jsx114("div", { css: Css.wPx(1).fn.bgGray300.$ }),
|
|
15142
|
+
/* @__PURE__ */ jsx114(
|
|
15049
15143
|
"div",
|
|
15050
15144
|
{
|
|
15051
15145
|
css: {
|
|
@@ -15064,12 +15158,12 @@ function CompoundField({ children }) {
|
|
|
15064
15158
|
}
|
|
15065
15159
|
|
|
15066
15160
|
// src/forms/BoundSelectAndTextField.tsx
|
|
15067
|
-
import { jsx as
|
|
15161
|
+
import { jsx as jsx115, jsxs as jsxs55 } from "@emotion/react/jsx-runtime";
|
|
15068
15162
|
function BoundSelectAndTextField(props) {
|
|
15069
15163
|
const { selectFieldProps, textFieldProps, compact = true } = props;
|
|
15070
15164
|
const tid = useTestIds(props);
|
|
15071
|
-
return /* @__PURE__ */
|
|
15072
|
-
/* @__PURE__ */
|
|
15165
|
+
return /* @__PURE__ */ jsxs55(CompoundField, { children: [
|
|
15166
|
+
/* @__PURE__ */ jsx115(
|
|
15073
15167
|
BoundSelectField,
|
|
15074
15168
|
{
|
|
15075
15169
|
...tid[defaultTestId(selectFieldProps.label ?? selectFieldProps.field.key)],
|
|
@@ -15078,7 +15172,7 @@ function BoundSelectAndTextField(props) {
|
|
|
15078
15172
|
compact
|
|
15079
15173
|
}
|
|
15080
15174
|
),
|
|
15081
|
-
/* @__PURE__ */
|
|
15175
|
+
/* @__PURE__ */ jsx115(
|
|
15082
15176
|
BoundTextField,
|
|
15083
15177
|
{
|
|
15084
15178
|
...tid[defaultTestId(textFieldProps.label ?? textFieldProps.field.key)],
|
|
@@ -15090,10 +15184,10 @@ function BoundSelectAndTextField(props) {
|
|
|
15090
15184
|
}
|
|
15091
15185
|
|
|
15092
15186
|
// src/forms/FormHeading.tsx
|
|
15093
|
-
import { jsx as
|
|
15187
|
+
import { jsx as jsx116 } from "@emotion/react/jsx-runtime";
|
|
15094
15188
|
function FormHeading(props) {
|
|
15095
15189
|
const { title, xss, isFirst = false, ...others } = props;
|
|
15096
|
-
return /* @__PURE__ */
|
|
15190
|
+
return /* @__PURE__ */ jsx116(
|
|
15097
15191
|
"h3",
|
|
15098
15192
|
{
|
|
15099
15193
|
css: {
|
|
@@ -15111,21 +15205,21 @@ FormHeading.isFormHeading = true;
|
|
|
15111
15205
|
|
|
15112
15206
|
// src/forms/StaticField.tsx
|
|
15113
15207
|
import { useId as useId2 } from "@react-aria/utils";
|
|
15114
|
-
import { jsx as
|
|
15208
|
+
import { jsx as jsx117, jsxs as jsxs56 } from "@emotion/react/jsx-runtime";
|
|
15115
15209
|
function StaticField(props) {
|
|
15116
15210
|
const { fieldProps } = usePresentationContext();
|
|
15117
15211
|
const { label, labelStyle = fieldProps?.labelStyle ?? "above", value, children } = props;
|
|
15118
15212
|
const tid = useTestIds(props, typeof label === "string" ? defaultTestId(label) : "staticField");
|
|
15119
15213
|
const id = useId2();
|
|
15120
|
-
return /* @__PURE__ */
|
|
15121
|
-
/* @__PURE__ */
|
|
15122
|
-
/* @__PURE__ */
|
|
15214
|
+
return /* @__PURE__ */ jsxs56("div", { css: Css.if(labelStyle === "left").df.jcsb.maxw100.$, ...tid.container, children: [
|
|
15215
|
+
/* @__PURE__ */ jsx117("label", { css: Css.db.sm.gray700.mbPx(4).$, htmlFor: id, ...tid.label, children: label }),
|
|
15216
|
+
/* @__PURE__ */ jsx117("div", { id, css: Css.smMd.gray900.df.aic.if(labelStyle === "left").w50.$, ...tid, children: value || children })
|
|
15123
15217
|
] });
|
|
15124
15218
|
}
|
|
15125
15219
|
|
|
15126
15220
|
// src/forms/SubmitButton.tsx
|
|
15127
15221
|
import { useLocalObservable } from "mobx-react";
|
|
15128
|
-
import { jsx as
|
|
15222
|
+
import { jsx as jsx118 } from "@emotion/react/jsx-runtime";
|
|
15129
15223
|
function SubmitButton(props) {
|
|
15130
15224
|
const { form, disabled, onClick, label = "Submit", ...others } = props;
|
|
15131
15225
|
if (typeof onClick === "string") {
|
|
@@ -15135,7 +15229,7 @@ function SubmitButton(props) {
|
|
|
15135
15229
|
const canSubmit = useComputed(() => {
|
|
15136
15230
|
return form.isNewEntity && !state.clicked ? true : form.dirty && form.valid;
|
|
15137
15231
|
}, [form]);
|
|
15138
|
-
return /* @__PURE__ */
|
|
15232
|
+
return /* @__PURE__ */ jsx118(
|
|
15139
15233
|
Button,
|
|
15140
15234
|
{
|
|
15141
15235
|
label,
|
|
@@ -15154,13 +15248,13 @@ function SubmitButton(props) {
|
|
|
15154
15248
|
// src/components/RightSidebar.tsx
|
|
15155
15249
|
import { AnimatePresence as AnimatePresence2, motion as motion2 } from "framer-motion";
|
|
15156
15250
|
import { useState as useState31 } from "react";
|
|
15157
|
-
import { Fragment as
|
|
15251
|
+
import { Fragment as Fragment21, jsx as jsx119, jsxs as jsxs57 } from "@emotion/react/jsx-runtime";
|
|
15158
15252
|
function RightSidebar({ content }) {
|
|
15159
15253
|
const [selectedIcon, setSelectedIcon] = useState31(void 0);
|
|
15160
15254
|
const tid = useTestIds({}, "rightSidebar");
|
|
15161
15255
|
const width = 380;
|
|
15162
|
-
return /* @__PURE__ */
|
|
15163
|
-
/* @__PURE__ */
|
|
15256
|
+
return /* @__PURE__ */ jsxs57(Fragment21, { children: [
|
|
15257
|
+
/* @__PURE__ */ jsx119("div", { css: Css.df.jcfe.relative.pr3.$, children: /* @__PURE__ */ jsx119("div", { css: Css.df.gap2.z1.$, children: content.map(({ icon }) => /* @__PURE__ */ jsx119(
|
|
15164
15258
|
IconButton,
|
|
15165
15259
|
{
|
|
15166
15260
|
circle: true,
|
|
@@ -15171,7 +15265,7 @@ function RightSidebar({ content }) {
|
|
|
15171
15265
|
},
|
|
15172
15266
|
`${icon}-${selectedIcon}`
|
|
15173
15267
|
)) }) }),
|
|
15174
|
-
/* @__PURE__ */
|
|
15268
|
+
/* @__PURE__ */ jsx119(AnimatePresence2, { children: selectedIcon && /* @__PURE__ */ jsx119(
|
|
15175
15269
|
motion2.div,
|
|
15176
15270
|
{
|
|
15177
15271
|
initial: { x: width, opacity: 0 },
|
|
@@ -15179,9 +15273,9 @@ function RightSidebar({ content }) {
|
|
|
15179
15273
|
transition: { delay: 0.2, ease: "linear", duration: 0.2 },
|
|
15180
15274
|
exit: { transition: { ease: "linear", duration: 0.2 }, x: width },
|
|
15181
15275
|
css: Css.wPx(width).z0.$,
|
|
15182
|
-
children: /* @__PURE__ */
|
|
15183
|
-
/* @__PURE__ */
|
|
15184
|
-
/* @__PURE__ */
|
|
15276
|
+
children: /* @__PURE__ */ jsxs57("div", { css: Css.relative.topPx(-48).z0.px3.$, children: [
|
|
15277
|
+
/* @__PURE__ */ jsxs57("div", { css: Css.absolute.leftPx(-24).$, children: [
|
|
15278
|
+
/* @__PURE__ */ jsx119(
|
|
15185
15279
|
IconButton,
|
|
15186
15280
|
{
|
|
15187
15281
|
bgColor: "rgba(255,255,255,1)" /* White */,
|
|
@@ -15191,9 +15285,9 @@ function RightSidebar({ content }) {
|
|
|
15191
15285
|
inc: 3.5
|
|
15192
15286
|
}
|
|
15193
15287
|
),
|
|
15194
|
-
/* @__PURE__ */
|
|
15288
|
+
/* @__PURE__ */ jsx119("div", { css: Css.absolute.topPx(48).leftPx(23).h("calc(100vh - 168px)").wPx(1).bgGray300.$ })
|
|
15195
15289
|
] }),
|
|
15196
|
-
selectedIcon && /* @__PURE__ */
|
|
15290
|
+
selectedIcon && /* @__PURE__ */ jsx119("div", { ...tid.content, css: Css.ptPx(72).$, children: content.find((sidebar) => sidebar.icon === selectedIcon)?.render() })
|
|
15197
15291
|
] })
|
|
15198
15292
|
},
|
|
15199
15293
|
"rightSidebar"
|
|
@@ -15202,20 +15296,20 @@ function RightSidebar({ content }) {
|
|
|
15202
15296
|
}
|
|
15203
15297
|
|
|
15204
15298
|
// src/components/Layout/PageHeaderBreadcrumbs.tsx
|
|
15205
|
-
import { Fragment as
|
|
15299
|
+
import { Fragment as Fragment22 } from "react";
|
|
15206
15300
|
import { Link as Link4 } from "react-router-dom";
|
|
15207
|
-
import { jsx as
|
|
15301
|
+
import { jsx as jsx120, jsxs as jsxs58 } from "@emotion/react/jsx-runtime";
|
|
15208
15302
|
function PageHeaderBreadcrumbs({ breadcrumb }) {
|
|
15209
15303
|
const tids = useTestIds({}, "pageHeaderBreadcrumbs");
|
|
15210
15304
|
const breadcrumbs = Array.isArray(breadcrumb) ? breadcrumb : [breadcrumb];
|
|
15211
|
-
return /* @__PURE__ */
|
|
15212
|
-
i > 0 && /* @__PURE__ */
|
|
15213
|
-
/* @__PURE__ */
|
|
15305
|
+
return /* @__PURE__ */ jsx120("div", { css: Css.df.aic.mbPx(4).$, ...tids, children: breadcrumbs.map((breadcrumb2, i) => /* @__PURE__ */ jsxs58(Fragment22, { children: [
|
|
15306
|
+
i > 0 && /* @__PURE__ */ jsx120("span", { css: Css.smMd.gray700.mr1.ml1.$, children: "/" }),
|
|
15307
|
+
/* @__PURE__ */ jsx120(Link4, { to: breadcrumb2.href, css: Css.smMd.gray700.onHover.gray900.$, className: "navLink", ...tids.navLink, children: breadcrumb2.label })
|
|
15214
15308
|
] }, `bc-${breadcrumb2.label}`)) });
|
|
15215
15309
|
}
|
|
15216
15310
|
|
|
15217
15311
|
// src/components/Layout/FormPageLayout.tsx
|
|
15218
|
-
import { jsx as
|
|
15312
|
+
import { jsx as jsx121, jsxs as jsxs59 } from "@emotion/react/jsx-runtime";
|
|
15219
15313
|
var headerHeightPx = 120;
|
|
15220
15314
|
function FormPageLayoutComponent(props) {
|
|
15221
15315
|
const { formSections, formState, rightSideBar } = props;
|
|
@@ -15235,16 +15329,16 @@ function FormPageLayoutComponent(props) {
|
|
|
15235
15329
|
// since this layout will be replacing most superdrawers/sidebars, we keep the listing mounted below to preserve the users's
|
|
15236
15330
|
// scroll position & filters
|
|
15237
15331
|
// Adding "align-items: start" allows "position: sticky" to work within a grid for the sidebars
|
|
15238
|
-
/* @__PURE__ */
|
|
15332
|
+
/* @__PURE__ */ jsxs59(
|
|
15239
15333
|
"div",
|
|
15240
15334
|
{
|
|
15241
15335
|
css: Css.fixed.top0.bottom0.left0.right0.z(1e3).oya.bgWhite.dg.gtc(gridColumns).gtr("auto 1fr").cg3.ais.$,
|
|
15242
15336
|
...tids,
|
|
15243
15337
|
children: [
|
|
15244
|
-
/* @__PURE__ */
|
|
15245
|
-
/* @__PURE__ */
|
|
15246
|
-
/* @__PURE__ */
|
|
15247
|
-
rightSideBar && /* @__PURE__ */
|
|
15338
|
+
/* @__PURE__ */ jsx121(PageHeader, { ...props, ...tids.pageHeader }),
|
|
15339
|
+
/* @__PURE__ */ jsx121(LeftNav, { sectionsWithRefs, ...tids }),
|
|
15340
|
+
/* @__PURE__ */ jsx121(FormSections, { sectionsWithRefs, formState, ...tids }),
|
|
15341
|
+
rightSideBar && /* @__PURE__ */ jsx121("aside", { css: Css.gr(2).gc("4 / 5").sticky.topPx(headerHeightPx).$, children: /* @__PURE__ */ jsx121(RightSidebar, { content: rightSideBar }) })
|
|
15248
15342
|
]
|
|
15249
15343
|
}
|
|
15250
15344
|
)
|
|
@@ -15254,13 +15348,13 @@ var FormPageLayout = React13.memo(FormPageLayoutComponent);
|
|
|
15254
15348
|
function PageHeader(props) {
|
|
15255
15349
|
const { pageTitle, breadCrumb, submitAction, cancelAction, tertiaryAction, formState } = props;
|
|
15256
15350
|
const tids = useTestIds(props);
|
|
15257
|
-
return /* @__PURE__ */
|
|
15258
|
-
/* @__PURE__ */
|
|
15259
|
-
breadCrumb && /* @__PURE__ */
|
|
15260
|
-
/* @__PURE__ */
|
|
15351
|
+
return /* @__PURE__ */ jsx121("header", { css: Css.gr(1).gc("2 / 5").sticky.top0.hPx(headerHeightPx).bgWhite.z5.$, ...tids, children: /* @__PURE__ */ jsxs59("div", { css: Css.py2.px3.df.jcsb.aic.$, children: [
|
|
15352
|
+
/* @__PURE__ */ jsxs59("div", { children: [
|
|
15353
|
+
breadCrumb && /* @__PURE__ */ jsx121(PageHeaderBreadcrumbs, { breadcrumb: breadCrumb }),
|
|
15354
|
+
/* @__PURE__ */ jsx121("h1", { css: Css.xl3Sb.$, ...tids.pageTitle, children: pageTitle })
|
|
15261
15355
|
] }),
|
|
15262
|
-
/* @__PURE__ */
|
|
15263
|
-
tertiaryAction && /* @__PURE__ */
|
|
15356
|
+
/* @__PURE__ */ jsxs59("div", { css: Css.df.gap1.$, children: [
|
|
15357
|
+
tertiaryAction && /* @__PURE__ */ jsx121(
|
|
15264
15358
|
Button,
|
|
15265
15359
|
{
|
|
15266
15360
|
label: tertiaryAction.label,
|
|
@@ -15270,7 +15364,7 @@ function PageHeader(props) {
|
|
|
15270
15364
|
tooltip: tertiaryAction.tooltip
|
|
15271
15365
|
}
|
|
15272
15366
|
),
|
|
15273
|
-
cancelAction && /* @__PURE__ */
|
|
15367
|
+
cancelAction && /* @__PURE__ */ jsx121(
|
|
15274
15368
|
Button,
|
|
15275
15369
|
{
|
|
15276
15370
|
label: cancelAction.label,
|
|
@@ -15280,16 +15374,16 @@ function PageHeader(props) {
|
|
|
15280
15374
|
tooltip: cancelAction.tooltip
|
|
15281
15375
|
}
|
|
15282
15376
|
),
|
|
15283
|
-
/* @__PURE__ */
|
|
15377
|
+
/* @__PURE__ */ jsx121(SubmitButton, { form: formState, ...submitAction })
|
|
15284
15378
|
] })
|
|
15285
15379
|
] }) });
|
|
15286
15380
|
}
|
|
15287
15381
|
function FormSections(props) {
|
|
15288
15382
|
const { sectionsWithRefs, formState } = props;
|
|
15289
15383
|
const tids = useTestIds(props);
|
|
15290
|
-
return /* @__PURE__ */
|
|
15384
|
+
return /* @__PURE__ */ jsx121("article", { css: Css.gr(2).gc("3 / 4").$, children: sectionsWithRefs.map(({ section, ref, sectionKey }, i) => (
|
|
15291
15385
|
// Subgrid here allows for icon placement to the left of the section content
|
|
15292
|
-
/* @__PURE__ */
|
|
15386
|
+
/* @__PURE__ */ jsxs59(
|
|
15293
15387
|
"section",
|
|
15294
15388
|
{
|
|
15295
15389
|
id: sectionKey,
|
|
@@ -15297,10 +15391,10 @@ function FormSections(props) {
|
|
|
15297
15391
|
css: Css.dg.gtc("50px 1fr").gtr("auto").mb3.add("scrollMarginTop", `${headerHeightPx}px`).$,
|
|
15298
15392
|
...tids.formSection,
|
|
15299
15393
|
children: [
|
|
15300
|
-
/* @__PURE__ */
|
|
15301
|
-
/* @__PURE__ */
|
|
15302
|
-
section.title && /* @__PURE__ */
|
|
15303
|
-
/* @__PURE__ */
|
|
15394
|
+
/* @__PURE__ */ jsx121("div", { css: Css.gc(1).$, children: section.icon && /* @__PURE__ */ jsx121(Icon, { icon: section.icon, inc: 3.5 }) }),
|
|
15395
|
+
/* @__PURE__ */ jsxs59("div", { css: Css.gc(2).$, children: [
|
|
15396
|
+
section.title && /* @__PURE__ */ jsx121("h2", { css: Css.xlSb.mb3.$, children: section.title }),
|
|
15397
|
+
/* @__PURE__ */ jsx121(BoundForm, { formState, rows: section.rows })
|
|
15304
15398
|
] })
|
|
15305
15399
|
]
|
|
15306
15400
|
},
|
|
@@ -15316,7 +15410,7 @@ function LeftNav(props) {
|
|
|
15316
15410
|
[sectionsWithRefs]
|
|
15317
15411
|
);
|
|
15318
15412
|
const activeSection = useActiveSection(sectionWithTitles);
|
|
15319
|
-
return /* @__PURE__ */
|
|
15413
|
+
return /* @__PURE__ */ jsx121("aside", { css: Css.gr(2).gc("2 / 3").sticky.topPx(headerHeightPx).px3.df.fdc.gap1.$, ...tids.nav, children: sectionWithTitles.map((sectionWithRef) => /* @__PURE__ */ jsx121(
|
|
15320
15414
|
SectionNavLink,
|
|
15321
15415
|
{
|
|
15322
15416
|
sectionWithRef,
|
|
@@ -15333,7 +15427,7 @@ function SectionNavLink(props) {
|
|
|
15333
15427
|
const { sectionWithRef, activeSection } = props;
|
|
15334
15428
|
const { section, ref: sectionRef } = sectionWithRef;
|
|
15335
15429
|
const active = activeSection === sectionWithRef.sectionKey;
|
|
15336
|
-
const handleNavClick =
|
|
15430
|
+
const handleNavClick = useCallback17(() => {
|
|
15337
15431
|
sectionRef.current?.scrollIntoView({ behavior: "smooth", block: "start" });
|
|
15338
15432
|
}, [sectionRef]);
|
|
15339
15433
|
const tids = useTestIds(props);
|
|
@@ -15341,7 +15435,7 @@ function SectionNavLink(props) {
|
|
|
15341
15435
|
const { buttonProps, isPressed } = useButton9({ onPress: handleNavClick }, buttonRef);
|
|
15342
15436
|
const { isFocusVisible, focusProps } = useFocusRing11();
|
|
15343
15437
|
const { hoverProps, isHovered } = useHover({});
|
|
15344
|
-
return /* @__PURE__ */
|
|
15438
|
+
return /* @__PURE__ */ jsx121(
|
|
15345
15439
|
"button",
|
|
15346
15440
|
{
|
|
15347
15441
|
ref: buttonRef,
|
|
@@ -15401,7 +15495,7 @@ import {
|
|
|
15401
15495
|
useRef as useRef42,
|
|
15402
15496
|
useState as useState33
|
|
15403
15497
|
} from "react";
|
|
15404
|
-
import { jsx as
|
|
15498
|
+
import { jsx as jsx122, jsxs as jsxs60 } from "@emotion/react/jsx-runtime";
|
|
15405
15499
|
var ScrollableParentContext = createContext4({
|
|
15406
15500
|
scrollableEl: null,
|
|
15407
15501
|
pr: 0,
|
|
@@ -15429,8 +15523,8 @@ function ScrollableParent(props) {
|
|
|
15429
15523
|
useEffect22(() => {
|
|
15430
15524
|
scrollableRef.current.appendChild(scrollableEl);
|
|
15431
15525
|
}, [scrollableEl]);
|
|
15432
|
-
return /* @__PURE__ */
|
|
15433
|
-
/* @__PURE__ */
|
|
15526
|
+
return /* @__PURE__ */ jsx122(ScrollableParentContext.Provider, { value: context, children: /* @__PURE__ */ jsxs60(Tag2, { css: { ...Css.mh0.mw0.fg1.df.fdc.$, ...otherXss }, children: [
|
|
15527
|
+
/* @__PURE__ */ jsx122(
|
|
15434
15528
|
"div",
|
|
15435
15529
|
{
|
|
15436
15530
|
css: {
|
|
@@ -15440,7 +15534,7 @@ function ScrollableParent(props) {
|
|
|
15440
15534
|
children
|
|
15441
15535
|
}
|
|
15442
15536
|
),
|
|
15443
|
-
/* @__PURE__ */
|
|
15537
|
+
/* @__PURE__ */ jsx122("div", { css: Css.fg1.oa.$, ref: scrollableRef })
|
|
15444
15538
|
] }) });
|
|
15445
15539
|
}
|
|
15446
15540
|
function useScrollableParent() {
|
|
@@ -15457,19 +15551,19 @@ function FullBleed({ children, omitPadding = false }) {
|
|
|
15457
15551
|
}
|
|
15458
15552
|
|
|
15459
15553
|
// src/components/Layout/PreventBrowserScroll.tsx
|
|
15460
|
-
import { jsx as
|
|
15554
|
+
import { jsx as jsx123 } from "@emotion/react/jsx-runtime";
|
|
15461
15555
|
function PreventBrowserScroll({ children }) {
|
|
15462
15556
|
return (
|
|
15463
15557
|
// Take over the full viewport and hide any overflown content.
|
|
15464
15558
|
// Using `-webkit-fill-available`, otherwise `height: 100vh` includes the app bars in mobile Safari. See https://allthingssmitty.com/2020/05/11/css-fix-for-100vh-in-mobile-webkit/
|
|
15465
15559
|
// Setting the multiple "(min|max-)height" properties is necessary, as Truss will turn this into an object and there can only be one `height` property.
|
|
15466
|
-
/* @__PURE__ */
|
|
15560
|
+
/* @__PURE__ */ jsx123("div", { css: Css.oh.vh100.mh("-webkit-fill-available").maxh("-webkit-fill-available").$, children: /* @__PURE__ */ jsx123("div", { css: Css.h100.df.fdc.mh0.oa.$, children }) })
|
|
15467
15561
|
);
|
|
15468
15562
|
}
|
|
15469
15563
|
|
|
15470
15564
|
// src/components/Layout/RightPaneLayout/RightPaneContext.tsx
|
|
15471
|
-
import React14, { useCallback as
|
|
15472
|
-
import { jsx as
|
|
15565
|
+
import React14, { useCallback as useCallback18, useContext as useContext13, useMemo as useMemo30, useState as useState34 } from "react";
|
|
15566
|
+
import { jsx as jsx124 } from "@emotion/react/jsx-runtime";
|
|
15473
15567
|
var RightPaneContext = React14.createContext({
|
|
15474
15568
|
openInPane: () => {
|
|
15475
15569
|
},
|
|
@@ -15483,20 +15577,20 @@ var RightPaneContext = React14.createContext({
|
|
|
15483
15577
|
function RightPaneProvider({ children }) {
|
|
15484
15578
|
const [rightPaneContent, setRightPaneContent] = useState34(void 0);
|
|
15485
15579
|
const [isRightPaneOpen, setIsRightPaneOpen] = useState34(false);
|
|
15486
|
-
const openInPane =
|
|
15580
|
+
const openInPane = useCallback18(
|
|
15487
15581
|
(opts) => {
|
|
15488
15582
|
setRightPaneContent(opts?.content);
|
|
15489
15583
|
setIsRightPaneOpen(true);
|
|
15490
15584
|
},
|
|
15491
15585
|
[setRightPaneContent]
|
|
15492
15586
|
);
|
|
15493
|
-
const closePane =
|
|
15494
|
-
const clearPane =
|
|
15587
|
+
const closePane = useCallback18(() => setIsRightPaneOpen(false), []);
|
|
15588
|
+
const clearPane = useCallback18(() => setRightPaneContent(void 0), [setRightPaneContent]);
|
|
15495
15589
|
const context = useMemo30(
|
|
15496
15590
|
() => ({ openInPane, closePane, clearPane, rightPaneContent, isRightPaneOpen }),
|
|
15497
15591
|
[openInPane, closePane, rightPaneContent, clearPane, isRightPaneOpen]
|
|
15498
15592
|
);
|
|
15499
|
-
return /* @__PURE__ */
|
|
15593
|
+
return /* @__PURE__ */ jsx124(RightPaneContext.Provider, { value: context, children });
|
|
15500
15594
|
}
|
|
15501
15595
|
function useRightPaneContext() {
|
|
15502
15596
|
return useContext13(RightPaneContext);
|
|
@@ -15505,13 +15599,13 @@ function useRightPaneContext() {
|
|
|
15505
15599
|
// src/components/Layout/RightPaneLayout/RightPaneLayout.tsx
|
|
15506
15600
|
import { AnimatePresence as AnimatePresence3, motion as motion3 } from "framer-motion";
|
|
15507
15601
|
import { useEffect as useEffect23 } from "react";
|
|
15508
|
-
import { Fragment as
|
|
15602
|
+
import { Fragment as Fragment23, jsx as jsx125, jsxs as jsxs61 } from "@emotion/react/jsx-runtime";
|
|
15509
15603
|
function RightPaneLayout(props) {
|
|
15510
15604
|
const { children, paneBgColor = "rgba(255,255,255,1)" /* White */, paneWidth = 450, defaultPaneContent } = props;
|
|
15511
15605
|
const { isRightPaneOpen, rightPaneContent, clearPane, closePane } = useRightPaneContext();
|
|
15512
15606
|
useEffect23(() => closePane, [closePane]);
|
|
15513
|
-
return /* @__PURE__ */
|
|
15514
|
-
/* @__PURE__ */
|
|
15607
|
+
return /* @__PURE__ */ jsx125("div", { css: Css.h100.df.oxh.$, children: /* @__PURE__ */ jsxs61(Fragment23, { children: [
|
|
15608
|
+
/* @__PURE__ */ jsx125(
|
|
15515
15609
|
"div",
|
|
15516
15610
|
{
|
|
15517
15611
|
css: {
|
|
@@ -15522,15 +15616,15 @@ function RightPaneLayout(props) {
|
|
|
15522
15616
|
children
|
|
15523
15617
|
}
|
|
15524
15618
|
),
|
|
15525
|
-
/* @__PURE__ */
|
|
15526
|
-
defaultPaneContent && /* @__PURE__ */
|
|
15619
|
+
/* @__PURE__ */ jsxs61("div", { css: Css.relative.if(!!defaultPaneContent).wPx(paneWidth).$, children: [
|
|
15620
|
+
defaultPaneContent && /* @__PURE__ */ jsx125(
|
|
15527
15621
|
"div",
|
|
15528
15622
|
{
|
|
15529
15623
|
css: Css.h100.wPx(paneWidth).left(0).absolute.add("transition", "all .3s ease-in-out").if(isRightPaneOpen).add("opacity", 0).left(100).$,
|
|
15530
15624
|
children: defaultPaneContent
|
|
15531
15625
|
}
|
|
15532
15626
|
),
|
|
15533
|
-
/* @__PURE__ */
|
|
15627
|
+
/* @__PURE__ */ jsx125(AnimatePresence3, { children: isRightPaneOpen && /* @__PURE__ */ jsx125(
|
|
15534
15628
|
motion3.div,
|
|
15535
15629
|
{
|
|
15536
15630
|
layout: "position",
|
|
@@ -15561,7 +15655,7 @@ function useRightPane() {
|
|
|
15561
15655
|
// src/components/Layout/ScrollableContent.tsx
|
|
15562
15656
|
import { useEffect as useEffect24 } from "react";
|
|
15563
15657
|
import { createPortal as createPortal4 } from "react-dom";
|
|
15564
|
-
import { Fragment as
|
|
15658
|
+
import { Fragment as Fragment24, jsx as jsx126 } from "@emotion/react/jsx-runtime";
|
|
15565
15659
|
function ScrollableContent(props) {
|
|
15566
15660
|
const { children, virtualized = false, omitBottomPadding, bgColor } = props;
|
|
15567
15661
|
const { scrollableEl, setPortalTick, pl, pr } = useScrollableParent();
|
|
@@ -15570,10 +15664,10 @@ function ScrollableContent(props) {
|
|
|
15570
15664
|
return () => setPortalTick((prev) => prev + 1);
|
|
15571
15665
|
}, [setPortalTick]);
|
|
15572
15666
|
if (!scrollableEl) {
|
|
15573
|
-
return /* @__PURE__ */
|
|
15667
|
+
return /* @__PURE__ */ jsx126(Fragment24, { children });
|
|
15574
15668
|
}
|
|
15575
15669
|
return createPortal4(
|
|
15576
|
-
/* @__PURE__ */
|
|
15670
|
+
/* @__PURE__ */ jsx126(
|
|
15577
15671
|
"div",
|
|
15578
15672
|
{
|
|
15579
15673
|
css: {
|
|
@@ -15589,8 +15683,8 @@ function ScrollableContent(props) {
|
|
|
15589
15683
|
}
|
|
15590
15684
|
|
|
15591
15685
|
// src/components/Toast/ToastContext.tsx
|
|
15592
|
-
import { createContext as createContext5, useCallback as
|
|
15593
|
-
import { jsx as
|
|
15686
|
+
import { createContext as createContext5, useCallback as useCallback19, useContext as useContext14, useMemo as useMemo31, useState as useState35 } from "react";
|
|
15687
|
+
import { jsx as jsx127 } from "@emotion/react/jsx-runtime";
|
|
15594
15688
|
var ToastContext = createContext5({
|
|
15595
15689
|
setNotice: () => {
|
|
15596
15690
|
throw new Error("Missing ToastProvider");
|
|
@@ -15601,16 +15695,16 @@ var ToastContext = createContext5({
|
|
|
15601
15695
|
});
|
|
15602
15696
|
function ToastProvider(props) {
|
|
15603
15697
|
const [notice, setNotice] = useState35();
|
|
15604
|
-
const clear =
|
|
15698
|
+
const clear = useCallback19(() => setNotice(void 0), [setNotice]);
|
|
15605
15699
|
const contextValue = useMemo31(() => ({ setNotice, notice, clear }), [notice, clear]);
|
|
15606
|
-
return /* @__PURE__ */
|
|
15700
|
+
return /* @__PURE__ */ jsx127(ToastContext.Provider, { value: contextValue, children: props.children });
|
|
15607
15701
|
}
|
|
15608
15702
|
function useToastContext() {
|
|
15609
15703
|
return useContext14(ToastContext);
|
|
15610
15704
|
}
|
|
15611
15705
|
|
|
15612
15706
|
// src/components/BeamContext.tsx
|
|
15613
|
-
import { jsx as
|
|
15707
|
+
import { jsx as jsx128, jsxs as jsxs62 } from "@emotion/react/jsx-runtime";
|
|
15614
15708
|
var BeamContext = createContext6({
|
|
15615
15709
|
modalState: new EmptyRef(),
|
|
15616
15710
|
modalCanCloseChecks: new EmptyRef(),
|
|
@@ -15652,12 +15746,12 @@ function BeamProvider({ children, ...presentationProps }) {
|
|
|
15652
15746
|
sdHeaderDiv
|
|
15653
15747
|
};
|
|
15654
15748
|
}, [modalBodyDiv, modalFooterDiv, modalHeaderDiv, sdHeaderDiv]);
|
|
15655
|
-
return /* @__PURE__ */
|
|
15656
|
-
/* @__PURE__ */
|
|
15749
|
+
return /* @__PURE__ */ jsx128(BeamContext.Provider, { value: { ...context }, children: /* @__PURE__ */ jsx128(PresentationProvider, { ...presentationProps, children: /* @__PURE__ */ jsx128(RightPaneProvider, { children: /* @__PURE__ */ jsx128(AutoSaveStatusProvider, { children: /* @__PURE__ */ jsx128(SnackbarProvider, { children: /* @__PURE__ */ jsxs62(ToastProvider, { children: [
|
|
15750
|
+
/* @__PURE__ */ jsxs62(OverlayProvider, { children: [
|
|
15657
15751
|
children,
|
|
15658
|
-
modalRef.current && /* @__PURE__ */
|
|
15752
|
+
modalRef.current && /* @__PURE__ */ jsx128(Modal, { ...modalRef.current })
|
|
15659
15753
|
] }),
|
|
15660
|
-
/* @__PURE__ */
|
|
15754
|
+
/* @__PURE__ */ jsx128(SuperDrawer, {})
|
|
15661
15755
|
] }) }) }) }) }) });
|
|
15662
15756
|
}
|
|
15663
15757
|
var PretendRefThatTicks = class {
|
|
@@ -15681,7 +15775,7 @@ function useBeamContext() {
|
|
|
15681
15775
|
import { useRef as useRef44 } from "react";
|
|
15682
15776
|
import { useMenuTrigger as useMenuTrigger3 } from "react-aria";
|
|
15683
15777
|
import { useMenuTriggerState as useMenuTriggerState3 } from "react-stately";
|
|
15684
|
-
import { jsx as
|
|
15778
|
+
import { jsx as jsx129 } from "@emotion/react/jsx-runtime";
|
|
15685
15779
|
function ButtonDatePicker(props) {
|
|
15686
15780
|
const { defaultOpen, disabled, trigger, onSelect, ...datePickerProps } = props;
|
|
15687
15781
|
const state = useMenuTriggerState3({ isOpen: defaultOpen });
|
|
@@ -15691,7 +15785,7 @@ function ButtonDatePicker(props) {
|
|
|
15691
15785
|
props,
|
|
15692
15786
|
isTextButton(trigger) ? defaultTestId(labelOr(trigger, "buttonDatePicker")) : isNavLinkButton(trigger) ? defaultTestId(trigger.navLabel) : isIconButton(trigger) ? trigger.icon : trigger.name
|
|
15693
15787
|
);
|
|
15694
|
-
return /* @__PURE__ */
|
|
15788
|
+
return /* @__PURE__ */ jsx129(OverlayTrigger, { ...props, menuTriggerProps, state, buttonRef, ...tid, children: /* @__PURE__ */ jsx129(DatePickerOverlay, { overlayProps: menuProps, children: /* @__PURE__ */ jsx129(
|
|
15695
15789
|
DatePicker,
|
|
15696
15790
|
{
|
|
15697
15791
|
...datePickerProps,
|
|
@@ -15707,15 +15801,15 @@ function ButtonDatePicker(props) {
|
|
|
15707
15801
|
// src/components/ButtonGroup.tsx
|
|
15708
15802
|
import { useRef as useRef45 } from "react";
|
|
15709
15803
|
import { useButton as useButton10, useFocusRing as useFocusRing12, useHover as useHover15 } from "react-aria";
|
|
15710
|
-
import { jsx as
|
|
15804
|
+
import { jsx as jsx130, jsxs as jsxs63 } from "@emotion/react/jsx-runtime";
|
|
15711
15805
|
function ButtonGroup(props) {
|
|
15712
15806
|
const { buttons, disabled = false, size = "sm" } = props;
|
|
15713
15807
|
const tid = useTestIds(props, "buttonGroup");
|
|
15714
15808
|
return (
|
|
15715
15809
|
// Adding `line-height: 0` prevent inheriting line-heights that might throw off sizing within the button group.
|
|
15716
|
-
/* @__PURE__ */
|
|
15810
|
+
/* @__PURE__ */ jsx130("div", { ...tid, css: Css.df.lh(0).add({ ...sizeStyles2[size] }).$, children: buttons.map(({ disabled: buttonDisabled, ...buttonProps }, i) => (
|
|
15717
15811
|
// Disable the button if the ButtonGroup is disabled or if the current button is disabled.
|
|
15718
|
-
/* @__PURE__ */
|
|
15812
|
+
/* @__PURE__ */ jsx130(GroupButton, { ...buttonProps, disabled: disabled || buttonDisabled, size, ...tid }, i)
|
|
15719
15813
|
)) })
|
|
15720
15814
|
);
|
|
15721
15815
|
}
|
|
@@ -15727,10 +15821,10 @@ function GroupButton(props) {
|
|
|
15727
15821
|
const { isFocusVisible, focusProps } = useFocusRing12();
|
|
15728
15822
|
const { hoverProps, isHovered } = useHover15(ariaProps);
|
|
15729
15823
|
const tid = useTestIds(props);
|
|
15730
|
-
return /* @__PURE__ */
|
|
15824
|
+
return /* @__PURE__ */ jsx130("span", { css: getButtonStyles2(), children: maybeTooltip({
|
|
15731
15825
|
title: resolveTooltip(disabled, tooltip),
|
|
15732
15826
|
placement: "top",
|
|
15733
|
-
children: /* @__PURE__ */
|
|
15827
|
+
children: /* @__PURE__ */ jsxs63(
|
|
15734
15828
|
"button",
|
|
15735
15829
|
{
|
|
15736
15830
|
ref,
|
|
@@ -15747,7 +15841,7 @@ function GroupButton(props) {
|
|
|
15747
15841
|
},
|
|
15748
15842
|
...tid[defaultTestId(typeof text === "string" && text || icon || "button")],
|
|
15749
15843
|
children: [
|
|
15750
|
-
icon && /* @__PURE__ */
|
|
15844
|
+
icon && /* @__PURE__ */ jsx130(Icon, { xss: Css.if(!!text).mrPx(4).$, icon, color: disabled ? void 0 : iconColor, inc: iconInc }),
|
|
15751
15845
|
text
|
|
15752
15846
|
]
|
|
15753
15847
|
}
|
|
@@ -15784,7 +15878,7 @@ var iconStyles2 = {
|
|
|
15784
15878
|
import { useRef as useRef46 } from "react";
|
|
15785
15879
|
import { useMenuTrigger as useMenuTrigger4 } from "react-aria";
|
|
15786
15880
|
import { useMenuTriggerState as useMenuTriggerState4 } from "react-stately";
|
|
15787
|
-
import { jsx as
|
|
15881
|
+
import { jsx as jsx131 } from "@emotion/react/jsx-runtime";
|
|
15788
15882
|
function ButtonMenu(props) {
|
|
15789
15883
|
const { defaultOpen, disabled, items, persistentItems, trigger, searchable, contrast = false } = props;
|
|
15790
15884
|
let selectedItem, onChange;
|
|
@@ -15799,7 +15893,7 @@ function ButtonMenu(props) {
|
|
|
15799
15893
|
props,
|
|
15800
15894
|
isTextButton(trigger) ? labelOr(trigger, "buttonMenu") : isNavLinkButton(trigger) ? defaultTestId(trigger.navLabel) : isIconButton(trigger) ? trigger.icon : trigger.name
|
|
15801
15895
|
);
|
|
15802
|
-
return /* @__PURE__ */
|
|
15896
|
+
return /* @__PURE__ */ jsx131(
|
|
15803
15897
|
OverlayTrigger,
|
|
15804
15898
|
{
|
|
15805
15899
|
...props,
|
|
@@ -15808,7 +15902,7 @@ function ButtonMenu(props) {
|
|
|
15808
15902
|
buttonRef,
|
|
15809
15903
|
...tid,
|
|
15810
15904
|
contrast,
|
|
15811
|
-
children: /* @__PURE__ */
|
|
15905
|
+
children: /* @__PURE__ */ jsx131(
|
|
15812
15906
|
Menu,
|
|
15813
15907
|
{
|
|
15814
15908
|
ariaMenuProps: menuProps,
|
|
@@ -15830,9 +15924,9 @@ function isSelectionButtonMenuProps(props) {
|
|
|
15830
15924
|
}
|
|
15831
15925
|
|
|
15832
15926
|
// src/components/Copy.tsx
|
|
15833
|
-
import { jsx as
|
|
15927
|
+
import { jsx as jsx132 } from "@emotion/react/jsx-runtime";
|
|
15834
15928
|
function Copy(props) {
|
|
15835
|
-
return /* @__PURE__ */
|
|
15929
|
+
return /* @__PURE__ */ jsx132(
|
|
15836
15930
|
"div",
|
|
15837
15931
|
{
|
|
15838
15932
|
css: {
|
|
@@ -15846,7 +15940,7 @@ function Copy(props) {
|
|
|
15846
15940
|
|
|
15847
15941
|
// src/components/DnDGrid/DnDGrid.tsx
|
|
15848
15942
|
import equal2 from "fast-deep-equal";
|
|
15849
|
-
import { useCallback as
|
|
15943
|
+
import { useCallback as useCallback20, useRef as useRef47 } from "react";
|
|
15850
15944
|
|
|
15851
15945
|
// src/components/DnDGrid/DnDGridContext.tsx
|
|
15852
15946
|
import { createContext as createContext7, useContext as useContext16 } from "react";
|
|
@@ -15860,7 +15954,7 @@ function useDnDGridContext() {
|
|
|
15860
15954
|
}
|
|
15861
15955
|
|
|
15862
15956
|
// src/components/DnDGrid/DnDGrid.tsx
|
|
15863
|
-
import { jsx as
|
|
15957
|
+
import { jsx as jsx133 } from "@emotion/react/jsx-runtime";
|
|
15864
15958
|
function DnDGrid(props) {
|
|
15865
15959
|
const { children, gridStyles, onReorder, activeItemStyles } = props;
|
|
15866
15960
|
const gridEl = useRef47(null);
|
|
@@ -15870,19 +15964,19 @@ function DnDGrid(props) {
|
|
|
15870
15964
|
const reorderViaKeyboard = useRef47(false);
|
|
15871
15965
|
const transformFrom = useRef47({ x: 0, y: 0 });
|
|
15872
15966
|
const tid = useTestIds(props, "dndGrid");
|
|
15873
|
-
const getGridItems =
|
|
15967
|
+
const getGridItems = useCallback20(() => {
|
|
15874
15968
|
return gridEl.current ? Array.from(gridEl.current.querySelectorAll(`[${gridItemIdKey}]`)) : [];
|
|
15875
15969
|
}, []);
|
|
15876
|
-
const getGridItemIdOrder =
|
|
15970
|
+
const getGridItemIdOrder = useCallback20(() => {
|
|
15877
15971
|
return getGridItems().map((child) => child.getAttribute(gridItemIdKey)).filter(isDefined);
|
|
15878
15972
|
}, [getGridItems]);
|
|
15879
|
-
const initReorder =
|
|
15973
|
+
const initReorder = useCallback20(() => {
|
|
15880
15974
|
if (gridEl.current && dragEl.current) {
|
|
15881
15975
|
initialOrder.current = getGridItemIdOrder();
|
|
15882
15976
|
dragEl.current.classList.add(activeGridItemClass);
|
|
15883
15977
|
}
|
|
15884
15978
|
}, [getGridItemIdOrder]);
|
|
15885
|
-
const commitReorder =
|
|
15979
|
+
const commitReorder = useCallback20(() => {
|
|
15886
15980
|
if (gridEl.current && dragEl.current) {
|
|
15887
15981
|
const currentOrder = getGridItemIdOrder();
|
|
15888
15982
|
if (!equal2(currentOrder, initialOrder.current)) onReorder(currentOrder);
|
|
@@ -15892,7 +15986,7 @@ function DnDGrid(props) {
|
|
|
15892
15986
|
initialOrder.current = currentOrder;
|
|
15893
15987
|
}
|
|
15894
15988
|
}, [onReorder, getGridItemIdOrder]);
|
|
15895
|
-
const cancelReorder =
|
|
15989
|
+
const cancelReorder = useCallback20(() => {
|
|
15896
15990
|
if (gridEl.current && dragEl.current && initialOrder.current) {
|
|
15897
15991
|
const currentOrder = getGridItemIdOrder();
|
|
15898
15992
|
if (!equal2(currentOrder, initialOrder.current)) {
|
|
@@ -15914,7 +16008,7 @@ function DnDGrid(props) {
|
|
|
15914
16008
|
reorderViaKeyboard.current = false;
|
|
15915
16009
|
}
|
|
15916
16010
|
}, [getGridItemIdOrder, getGridItems]);
|
|
15917
|
-
const onMove =
|
|
16011
|
+
const onMove = useCallback20((e) => {
|
|
15918
16012
|
if (!reorderViaKeyboard.current && dragEl.current && cloneEl.current && gridEl.current) {
|
|
15919
16013
|
const clientX = "clientX" in e ? e.clientX : e.touches[0].clientX;
|
|
15920
16014
|
const clientY = "clientY" in e ? e.clientY : e.touches[0].clientY;
|
|
@@ -15935,7 +16029,7 @@ function DnDGrid(props) {
|
|
|
15935
16029
|
}
|
|
15936
16030
|
}
|
|
15937
16031
|
}, []);
|
|
15938
|
-
const onDragStart =
|
|
16032
|
+
const onDragStart = useCallback20(
|
|
15939
16033
|
(e) => {
|
|
15940
16034
|
if (!reorderViaKeyboard.current && dragEl.current && gridEl.current) {
|
|
15941
16035
|
initReorder();
|
|
@@ -15966,7 +16060,7 @@ function DnDGrid(props) {
|
|
|
15966
16060
|
},
|
|
15967
16061
|
[initReorder, onMove]
|
|
15968
16062
|
);
|
|
15969
|
-
const onDragEnd =
|
|
16063
|
+
const onDragEnd = useCallback20(
|
|
15970
16064
|
(e) => {
|
|
15971
16065
|
if (!reorderViaKeyboard.current && dragEl.current && cloneEl.current && gridEl.current) {
|
|
15972
16066
|
e.preventDefault();
|
|
@@ -15982,7 +16076,7 @@ function DnDGrid(props) {
|
|
|
15982
16076
|
},
|
|
15983
16077
|
[commitReorder, onMove]
|
|
15984
16078
|
);
|
|
15985
|
-
const onDragHandleKeyDown =
|
|
16079
|
+
const onDragHandleKeyDown = useCallback20(
|
|
15986
16080
|
(e) => {
|
|
15987
16081
|
const moveHandle = e.target;
|
|
15988
16082
|
if (dragEl.current instanceof HTMLElement && moveHandle instanceof HTMLElement && gridEl.current) {
|
|
@@ -16033,7 +16127,7 @@ function DnDGrid(props) {
|
|
|
16033
16127
|
},
|
|
16034
16128
|
[cancelReorder, commitReorder, initReorder, getGridItems]
|
|
16035
16129
|
);
|
|
16036
|
-
return /* @__PURE__ */
|
|
16130
|
+
return /* @__PURE__ */ jsx133(DnDGridContext.Provider, { value: { dragEl, onDragHandleKeyDown }, children: /* @__PURE__ */ jsx133(
|
|
16037
16131
|
"div",
|
|
16038
16132
|
{
|
|
16039
16133
|
ref: gridEl,
|
|
@@ -16056,7 +16150,7 @@ var activeGridItemClass = "dndgrid-active";
|
|
|
16056
16150
|
|
|
16057
16151
|
// src/components/DnDGrid/DnDGridItemHandle.tsx
|
|
16058
16152
|
import { mergeProps as mergeProps12, useFocusRing as useFocusRing13, useHover as useHover16 } from "react-aria";
|
|
16059
|
-
import { jsx as
|
|
16153
|
+
import { jsx as jsx134 } from "@emotion/react/jsx-runtime";
|
|
16060
16154
|
function DnDGridItemHandle(props) {
|
|
16061
16155
|
const { dragHandleProps, icon = "move", compact = false, color } = props;
|
|
16062
16156
|
const { focusProps, isFocusVisible } = useFocusRing13();
|
|
@@ -16064,7 +16158,7 @@ function DnDGridItemHandle(props) {
|
|
|
16064
16158
|
const tid = useTestIds(props, "dragHandle");
|
|
16065
16159
|
const iconButtonNormal2 = Css.hPx(28).wPx(28).br8.bw2.$;
|
|
16066
16160
|
const iconButtonCompact2 = Css.hPx(18).wPx(18).br4.bw1.$;
|
|
16067
|
-
return /* @__PURE__ */
|
|
16161
|
+
return /* @__PURE__ */ jsx134(
|
|
16068
16162
|
"button",
|
|
16069
16163
|
{
|
|
16070
16164
|
css: {
|
|
@@ -16074,7 +16168,7 @@ function DnDGridItemHandle(props) {
|
|
|
16074
16168
|
},
|
|
16075
16169
|
...mergeProps12(dragHandleProps, focusProps, hoverProps),
|
|
16076
16170
|
...tid,
|
|
16077
|
-
children: /* @__PURE__ */
|
|
16171
|
+
children: /* @__PURE__ */ jsx134(Icon, { icon, inc: compact ? 2 : void 0, color })
|
|
16078
16172
|
}
|
|
16079
16173
|
);
|
|
16080
16174
|
}
|
|
@@ -16128,7 +16222,7 @@ var BaseFilter = class {
|
|
|
16128
16222
|
};
|
|
16129
16223
|
|
|
16130
16224
|
// src/components/Filters/DateFilter.tsx
|
|
16131
|
-
import { Fragment as
|
|
16225
|
+
import { Fragment as Fragment25, jsx as jsx135, jsxs as jsxs64 } from "@emotion/react/jsx-runtime";
|
|
16132
16226
|
function dateFilter(props) {
|
|
16133
16227
|
return (key) => new DateFilter(key, props);
|
|
16134
16228
|
}
|
|
@@ -16136,10 +16230,10 @@ var anyOption = {};
|
|
|
16136
16230
|
var DateFilter = class extends BaseFilter {
|
|
16137
16231
|
render(value, setValue, tid, inModal, vertical) {
|
|
16138
16232
|
const { label, operations, getOperationValue, getOperationLabel } = this.props;
|
|
16139
|
-
return /* @__PURE__ */
|
|
16140
|
-
vertical && /* @__PURE__ */
|
|
16141
|
-
/* @__PURE__ */
|
|
16142
|
-
/* @__PURE__ */
|
|
16233
|
+
return /* @__PURE__ */ jsxs64(Fragment25, { children: [
|
|
16234
|
+
vertical && /* @__PURE__ */ jsx135(Label, { label }),
|
|
16235
|
+
/* @__PURE__ */ jsxs64(CompoundField, { children: [
|
|
16236
|
+
/* @__PURE__ */ jsx135(
|
|
16143
16237
|
SelectField,
|
|
16144
16238
|
{
|
|
16145
16239
|
compact: true,
|
|
@@ -16162,7 +16256,7 @@ var DateFilter = class extends BaseFilter {
|
|
|
16162
16256
|
...tid[`${defaultTestId(this.label)}_dateOperation`]
|
|
16163
16257
|
}
|
|
16164
16258
|
),
|
|
16165
|
-
/* @__PURE__ */
|
|
16259
|
+
/* @__PURE__ */ jsx135(
|
|
16166
16260
|
DateField,
|
|
16167
16261
|
{
|
|
16168
16262
|
compact: true,
|
|
@@ -16180,16 +16274,16 @@ var DateFilter = class extends BaseFilter {
|
|
|
16180
16274
|
};
|
|
16181
16275
|
|
|
16182
16276
|
// src/components/Filters/DateRangeFilter.tsx
|
|
16183
|
-
import { Fragment as
|
|
16277
|
+
import { Fragment as Fragment26, jsx as jsx136, jsxs as jsxs65 } from "@emotion/react/jsx-runtime";
|
|
16184
16278
|
function dateRangeFilter(props) {
|
|
16185
16279
|
return (key) => new DateRangeFilter(key, props);
|
|
16186
16280
|
}
|
|
16187
16281
|
var DateRangeFilter = class extends BaseFilter {
|
|
16188
16282
|
render(value, setValue, tid, inModal, vertical) {
|
|
16189
16283
|
const { label, placeholderText, disabledDays, testFieldLabel, defaultValue } = this.props;
|
|
16190
|
-
return /* @__PURE__ */
|
|
16191
|
-
vertical && /* @__PURE__ */
|
|
16192
|
-
/* @__PURE__ */
|
|
16284
|
+
return /* @__PURE__ */ jsxs65(Fragment26, { children: [
|
|
16285
|
+
vertical && /* @__PURE__ */ jsx136(Label, { label }),
|
|
16286
|
+
/* @__PURE__ */ jsx136(
|
|
16193
16287
|
DateRangeField,
|
|
16194
16288
|
{
|
|
16195
16289
|
compact: true,
|
|
@@ -16208,7 +16302,7 @@ var DateRangeFilter = class extends BaseFilter {
|
|
|
16208
16302
|
};
|
|
16209
16303
|
|
|
16210
16304
|
// src/components/Filters/MultiFilter.tsx
|
|
16211
|
-
import { jsx as
|
|
16305
|
+
import { jsx as jsx137 } from "@emotion/react/jsx-runtime";
|
|
16212
16306
|
function multiFilter(props) {
|
|
16213
16307
|
return (key) => new MultiFilter(key, props);
|
|
16214
16308
|
}
|
|
@@ -16218,7 +16312,7 @@ var MultiFilter = class extends BaseFilter {
|
|
|
16218
16312
|
const { disabledOptions } = this.props;
|
|
16219
16313
|
const disabledOptionsWithReasons = Object.fromEntries(disabledOptions?.map(disabledOptionToKeyedTuple) ?? []);
|
|
16220
16314
|
const disabledKeys = Object.keys(disabledOptionsWithReasons);
|
|
16221
|
-
return /* @__PURE__ */
|
|
16315
|
+
return /* @__PURE__ */ jsx137(
|
|
16222
16316
|
ToggleChipGroup,
|
|
16223
16317
|
{
|
|
16224
16318
|
label: this.label,
|
|
@@ -16242,7 +16336,7 @@ var MultiFilter = class extends BaseFilter {
|
|
|
16242
16336
|
);
|
|
16243
16337
|
}
|
|
16244
16338
|
const { defaultValue, nothingSelectedText, ...props } = this.props;
|
|
16245
|
-
return /* @__PURE__ */
|
|
16339
|
+
return /* @__PURE__ */ jsx137(
|
|
16246
16340
|
MultiSelectField,
|
|
16247
16341
|
{
|
|
16248
16342
|
...props,
|
|
@@ -16262,7 +16356,7 @@ var MultiFilter = class extends BaseFilter {
|
|
|
16262
16356
|
};
|
|
16263
16357
|
|
|
16264
16358
|
// src/components/Filters/NumberRangeFilter.tsx
|
|
16265
|
-
import { Fragment as
|
|
16359
|
+
import { Fragment as Fragment27, jsx as jsx138, jsxs as jsxs66 } from "@emotion/react/jsx-runtime";
|
|
16266
16360
|
function numberRangeFilter(props) {
|
|
16267
16361
|
return (key) => new NumberRangeFilter(key, props);
|
|
16268
16362
|
}
|
|
@@ -16271,10 +16365,10 @@ var NumberRangeFilter = class extends BaseFilter {
|
|
|
16271
16365
|
const { label, numberFieldType, numberFormatOptions } = this.props;
|
|
16272
16366
|
const min = value?.min ?? void 0;
|
|
16273
16367
|
const max = value?.max ?? void 0;
|
|
16274
|
-
return /* @__PURE__ */
|
|
16275
|
-
vertical && /* @__PURE__ */
|
|
16276
|
-
/* @__PURE__ */
|
|
16277
|
-
/* @__PURE__ */
|
|
16368
|
+
return /* @__PURE__ */ jsxs66(Fragment27, { children: [
|
|
16369
|
+
vertical && /* @__PURE__ */ jsxs66("div", { ...tid, children: [
|
|
16370
|
+
/* @__PURE__ */ jsx138(Label, { label }),
|
|
16371
|
+
/* @__PURE__ */ jsx138("div", { css: Css.pb1.$, children: /* @__PURE__ */ jsx138(
|
|
16278
16372
|
NumberField,
|
|
16279
16373
|
{
|
|
16280
16374
|
labelStyle: "inline",
|
|
@@ -16290,7 +16384,7 @@ var NumberRangeFilter = class extends BaseFilter {
|
|
|
16290
16384
|
...tid[`${defaultTestId(label)}_min_vertical`]
|
|
16291
16385
|
}
|
|
16292
16386
|
) }),
|
|
16293
|
-
/* @__PURE__ */
|
|
16387
|
+
/* @__PURE__ */ jsx138(
|
|
16294
16388
|
NumberField,
|
|
16295
16389
|
{
|
|
16296
16390
|
labelStyle: "inline",
|
|
@@ -16307,8 +16401,8 @@ var NumberRangeFilter = class extends BaseFilter {
|
|
|
16307
16401
|
}
|
|
16308
16402
|
)
|
|
16309
16403
|
] }),
|
|
16310
|
-
!vertical && /* @__PURE__ */
|
|
16311
|
-
/* @__PURE__ */
|
|
16404
|
+
!vertical && /* @__PURE__ */ jsxs66(CompoundField, { ...tid, children: [
|
|
16405
|
+
/* @__PURE__ */ jsx138(
|
|
16312
16406
|
NumberField,
|
|
16313
16407
|
{
|
|
16314
16408
|
compact: true,
|
|
@@ -16326,7 +16420,7 @@ var NumberRangeFilter = class extends BaseFilter {
|
|
|
16326
16420
|
...tid[`${defaultTestId(label)}_min`]
|
|
16327
16421
|
}
|
|
16328
16422
|
),
|
|
16329
|
-
/* @__PURE__ */
|
|
16423
|
+
/* @__PURE__ */ jsx138(
|
|
16330
16424
|
NumberField,
|
|
16331
16425
|
{
|
|
16332
16426
|
compact: true,
|
|
@@ -16350,7 +16444,7 @@ var NumberRangeFilter = class extends BaseFilter {
|
|
|
16350
16444
|
};
|
|
16351
16445
|
|
|
16352
16446
|
// src/components/Filters/SingleFilter.tsx
|
|
16353
|
-
import { jsx as
|
|
16447
|
+
import { jsx as jsx139 } from "@emotion/react/jsx-runtime";
|
|
16354
16448
|
function singleFilter(props) {
|
|
16355
16449
|
return (key) => new SingleFilter(key, props);
|
|
16356
16450
|
}
|
|
@@ -16367,7 +16461,7 @@ var SingleFilter = class extends BaseFilter {
|
|
|
16367
16461
|
...props
|
|
16368
16462
|
} = this.props;
|
|
16369
16463
|
const options = Array.isArray(maybeOptions) ? [allOption, ...maybeOptions] : { ...maybeOptions, current: maybeOptions.current };
|
|
16370
|
-
return /* @__PURE__ */
|
|
16464
|
+
return /* @__PURE__ */ jsx139(
|
|
16371
16465
|
SelectField,
|
|
16372
16466
|
{
|
|
16373
16467
|
...props,
|
|
@@ -16388,14 +16482,14 @@ var SingleFilter = class extends BaseFilter {
|
|
|
16388
16482
|
};
|
|
16389
16483
|
|
|
16390
16484
|
// src/components/Filters/TreeFilter.tsx
|
|
16391
|
-
import { jsx as
|
|
16485
|
+
import { jsx as jsx140 } from "@emotion/react/jsx-runtime";
|
|
16392
16486
|
function treeFilter(props) {
|
|
16393
16487
|
return (key) => new TreeFilter(key, props);
|
|
16394
16488
|
}
|
|
16395
16489
|
var TreeFilter = class extends BaseFilter {
|
|
16396
16490
|
render(value, setValue, tid, inModal, vertical) {
|
|
16397
16491
|
const { defaultValue, nothingSelectedText, filterBy = "root", ...props } = this.props;
|
|
16398
|
-
return /* @__PURE__ */
|
|
16492
|
+
return /* @__PURE__ */ jsx140(
|
|
16399
16493
|
TreeSelectField,
|
|
16400
16494
|
{
|
|
16401
16495
|
...props,
|
|
@@ -16416,14 +16510,14 @@ var TreeFilter = class extends BaseFilter {
|
|
|
16416
16510
|
};
|
|
16417
16511
|
|
|
16418
16512
|
// src/components/Filters/BooleanFilter.tsx
|
|
16419
|
-
import { jsx as
|
|
16513
|
+
import { jsx as jsx141 } from "@emotion/react/jsx-runtime";
|
|
16420
16514
|
function booleanFilter(props) {
|
|
16421
16515
|
return (key) => new BooleanFilter(key, props);
|
|
16422
16516
|
}
|
|
16423
16517
|
var BooleanFilter = class extends BaseFilter {
|
|
16424
16518
|
render(value, setValue, tid, inModal, vertical) {
|
|
16425
16519
|
const { options = defaultBooleanOptions, label, defaultValue, ...props } = this.props;
|
|
16426
|
-
return /* @__PURE__ */
|
|
16520
|
+
return /* @__PURE__ */ jsx141(
|
|
16427
16521
|
SelectField,
|
|
16428
16522
|
{
|
|
16429
16523
|
...props,
|
|
@@ -16451,7 +16545,7 @@ var defaultBooleanOptions = [
|
|
|
16451
16545
|
];
|
|
16452
16546
|
|
|
16453
16547
|
// src/components/Filters/CheckboxFilter.tsx
|
|
16454
|
-
import { jsx as
|
|
16548
|
+
import { jsx as jsx142 } from "@emotion/react/jsx-runtime";
|
|
16455
16549
|
function checkboxFilter(props) {
|
|
16456
16550
|
return (key) => new CheckboxFilter(key, {
|
|
16457
16551
|
// If the user has set the offValue, that should be the default b/c we're only a two-state
|
|
@@ -16462,7 +16556,7 @@ function checkboxFilter(props) {
|
|
|
16462
16556
|
var CheckboxFilter = class extends BaseFilter {
|
|
16463
16557
|
render(value, setValue, tid, inModal, vertical) {
|
|
16464
16558
|
const { defaultValue, onValue = true, offValue = void 0, ...props } = this.props;
|
|
16465
|
-
return /* @__PURE__ */
|
|
16559
|
+
return /* @__PURE__ */ jsx142(
|
|
16466
16560
|
Checkbox,
|
|
16467
16561
|
{
|
|
16468
16562
|
...props,
|
|
@@ -16485,7 +16579,7 @@ import { useState as useState36 } from "react";
|
|
|
16485
16579
|
|
|
16486
16580
|
// src/components/Modal/OpenModal.tsx
|
|
16487
16581
|
import { useEffect as useEffect25 } from "react";
|
|
16488
|
-
import { jsx as
|
|
16582
|
+
import { jsx as jsx143 } from "@emotion/react/jsx-runtime";
|
|
16489
16583
|
function OpenModal(props) {
|
|
16490
16584
|
const { openModal } = useModal();
|
|
16491
16585
|
const { size, children, keepOpen } = props;
|
|
@@ -16495,30 +16589,30 @@ function OpenModal(props) {
|
|
|
16495
16589
|
}
|
|
16496
16590
|
}, [keepOpen, openModal, size, children]);
|
|
16497
16591
|
if (keepOpen) {
|
|
16498
|
-
return /* @__PURE__ */
|
|
16592
|
+
return /* @__PURE__ */ jsx143(Modal, { size, content: children });
|
|
16499
16593
|
} else {
|
|
16500
|
-
return /* @__PURE__ */
|
|
16594
|
+
return /* @__PURE__ */ jsx143("div", { children: "dummy content" });
|
|
16501
16595
|
}
|
|
16502
16596
|
}
|
|
16503
16597
|
|
|
16504
16598
|
// src/components/Filters/FilterModal.tsx
|
|
16505
|
-
import { Fragment as
|
|
16599
|
+
import { Fragment as Fragment28, jsx as jsx144, jsxs as jsxs67 } from "@emotion/react/jsx-runtime";
|
|
16506
16600
|
function FilterModal(props) {
|
|
16507
16601
|
const { filter, filters, onApply } = props;
|
|
16508
16602
|
const testId = useTestIds(props, filterTestIdPrefix);
|
|
16509
16603
|
const { closeModal } = useModal();
|
|
16510
16604
|
const [modalFilter, setModalFilter] = useState36(filter);
|
|
16511
|
-
return /* @__PURE__ */
|
|
16512
|
-
/* @__PURE__ */
|
|
16513
|
-
/* @__PURE__ */
|
|
16605
|
+
return /* @__PURE__ */ jsxs67(Fragment28, { children: [
|
|
16606
|
+
/* @__PURE__ */ jsx144(ModalHeader, { children: "More Filters" }),
|
|
16607
|
+
/* @__PURE__ */ jsx144(ModalBody, { children: /* @__PURE__ */ jsx144("div", { css: Css.df.fdc.$, children: safeEntries(filters).map(([key, f]) => /* @__PURE__ */ jsx144(ModalFilterItem, { label: f.hideLabelInModal ? void 0 : f.label, children: f.render(
|
|
16514
16608
|
modalFilter[key],
|
|
16515
16609
|
(value) => setModalFilter(updateFilter(modalFilter, key, value)),
|
|
16516
16610
|
testId,
|
|
16517
16611
|
true,
|
|
16518
16612
|
false
|
|
16519
16613
|
) }, key)) }) }),
|
|
16520
|
-
/* @__PURE__ */
|
|
16521
|
-
/* @__PURE__ */
|
|
16614
|
+
/* @__PURE__ */ jsxs67(ModalFooter, { xss: Css.jcsb.$, children: [
|
|
16615
|
+
/* @__PURE__ */ jsx144(
|
|
16522
16616
|
Button,
|
|
16523
16617
|
{
|
|
16524
16618
|
label: "Clear",
|
|
@@ -16531,9 +16625,9 @@ function FilterModal(props) {
|
|
|
16531
16625
|
...testId.modalClear
|
|
16532
16626
|
}
|
|
16533
16627
|
),
|
|
16534
|
-
/* @__PURE__ */
|
|
16535
|
-
/* @__PURE__ */
|
|
16536
|
-
/* @__PURE__ */
|
|
16628
|
+
/* @__PURE__ */ jsxs67("div", { css: Css.df.gap1.$, children: [
|
|
16629
|
+
/* @__PURE__ */ jsx144(Button, { label: "Cancel", variant: "tertiary", onClick: closeModal, ...testId.modalClose }),
|
|
16630
|
+
/* @__PURE__ */ jsx144(
|
|
16537
16631
|
Button,
|
|
16538
16632
|
{
|
|
16539
16633
|
label: "Apply",
|
|
@@ -16549,15 +16643,15 @@ function FilterModal(props) {
|
|
|
16549
16643
|
] });
|
|
16550
16644
|
}
|
|
16551
16645
|
function ModalFilterItem({ label, children }) {
|
|
16552
|
-
return /* @__PURE__ */
|
|
16553
|
-
label && /* @__PURE__ */
|
|
16554
|
-
/* @__PURE__ */
|
|
16646
|
+
return /* @__PURE__ */ jsxs67("div", { css: Css.mb4.if(!label).bt.bcGray200.$, children: [
|
|
16647
|
+
label && /* @__PURE__ */ jsx144("h2", { css: Css.baseMd.mb2.$, children: label }),
|
|
16648
|
+
/* @__PURE__ */ jsx144("div", { css: Css.if(!label).pt3.$, children })
|
|
16555
16649
|
] });
|
|
16556
16650
|
}
|
|
16557
16651
|
|
|
16558
16652
|
// src/components/Filters/Filters.tsx
|
|
16559
16653
|
import { memo, useMemo as useMemo34 } from "react";
|
|
16560
|
-
import { jsx as
|
|
16654
|
+
import { jsx as jsx145, jsxs as jsxs68 } from "@emotion/react/jsx-runtime";
|
|
16561
16655
|
function Filters(props) {
|
|
16562
16656
|
const { filter, onChange, filterDefs, groupBy, vertical = false, numberOfInlineFilters = groupBy ? 3 : 4 } = props;
|
|
16563
16657
|
const testId = useTestIds(props, filterTestIdPrefix);
|
|
@@ -16573,7 +16667,7 @@ function Filters(props) {
|
|
|
16573
16667
|
return [Object.fromEntries(impls), {}];
|
|
16574
16668
|
}, [numberOfInlineFilters, vertical, filterDefs]);
|
|
16575
16669
|
const numModalFilters = safeKeys(modalFilters).filter((fk) => filter[fk] !== void 0).length;
|
|
16576
|
-
const maybeGroupByField = groupBy ? /* @__PURE__ */
|
|
16670
|
+
const maybeGroupByField = groupBy ? /* @__PURE__ */ jsx145("div", { children: /* @__PURE__ */ jsx145(
|
|
16577
16671
|
SelectField,
|
|
16578
16672
|
{
|
|
16579
16673
|
label: "Group by",
|
|
@@ -16587,7 +16681,7 @@ function Filters(props) {
|
|
|
16587
16681
|
onSelect: (g) => g && groupBy.setValue(g)
|
|
16588
16682
|
}
|
|
16589
16683
|
) }) : null;
|
|
16590
|
-
return /* @__PURE__ */
|
|
16684
|
+
return /* @__PURE__ */ jsxs68(
|
|
16591
16685
|
"div",
|
|
16592
16686
|
{
|
|
16593
16687
|
css: {
|
|
@@ -16596,21 +16690,21 @@ function Filters(props) {
|
|
|
16596
16690
|
...testId,
|
|
16597
16691
|
children: [
|
|
16598
16692
|
maybeGroupByField,
|
|
16599
|
-
safeEntries(pageFilters).map(([key, f]) => /* @__PURE__ */
|
|
16600
|
-
Object.keys(modalFilters).length > 0 && /* @__PURE__ */
|
|
16693
|
+
safeEntries(pageFilters).map(([key, f]) => /* @__PURE__ */ jsx145("div", { children: f.render(filter[key], (value) => onChange(updateFilter(filter, key, value)), testId, false, vertical) }, key)),
|
|
16694
|
+
Object.keys(modalFilters).length > 0 && /* @__PURE__ */ jsx145(
|
|
16601
16695
|
Button,
|
|
16602
16696
|
{
|
|
16603
16697
|
label: "More Filters",
|
|
16604
|
-
endAdornment: numModalFilters > 0 && /* @__PURE__ */
|
|
16698
|
+
endAdornment: numModalFilters > 0 && /* @__PURE__ */ jsx145("span", { css: Css.wPx(16).hPx(16).fs0.br100.bgBlue700.white.tinySb.df.aic.jcc.$, children: numModalFilters }),
|
|
16605
16699
|
variant: "secondary",
|
|
16606
16700
|
onClick: () => openModal({
|
|
16607
16701
|
// Spreading `props` to pass along `data-testid`
|
|
16608
|
-
content: /* @__PURE__ */
|
|
16702
|
+
content: /* @__PURE__ */ jsx145(FilterModal, { ...props, filter, onApply: onChange, filters: modalFilters })
|
|
16609
16703
|
}),
|
|
16610
16704
|
...testId.moreFiltersBtn
|
|
16611
16705
|
}
|
|
16612
16706
|
),
|
|
16613
|
-
Object.keys(filter).length > 0 && /* @__PURE__ */
|
|
16707
|
+
Object.keys(filter).length > 0 && /* @__PURE__ */ jsx145("div", { children: /* @__PURE__ */ jsx145(Button, { label: "Clear", variant: "tertiary", onClick: () => onChange({}), ...testId.clearBtn }) })
|
|
16614
16708
|
]
|
|
16615
16709
|
}
|
|
16616
16710
|
);
|
|
@@ -16618,7 +16712,7 @@ function Filters(props) {
|
|
|
16618
16712
|
var _Filters = memo(Filters);
|
|
16619
16713
|
|
|
16620
16714
|
// src/components/Filters/ToggleFilter.tsx
|
|
16621
|
-
import { jsx as
|
|
16715
|
+
import { jsx as jsx146 } from "@emotion/react/jsx-runtime";
|
|
16622
16716
|
function toggleFilter(props) {
|
|
16623
16717
|
return (key) => new ToggleFilter(key, {
|
|
16624
16718
|
// If the user has set the offValue, that should be the default b/c we're only a two-state
|
|
@@ -16629,7 +16723,7 @@ function toggleFilter(props) {
|
|
|
16629
16723
|
var ToggleFilter = class extends BaseFilter {
|
|
16630
16724
|
render(value, setValue, tid, inModal, vertical) {
|
|
16631
16725
|
const { defaultValue, onValue = true, offValue = void 0, ...props } = this.props;
|
|
16632
|
-
return /* @__PURE__ */
|
|
16726
|
+
return /* @__PURE__ */ jsx146(
|
|
16633
16727
|
Switch,
|
|
16634
16728
|
{
|
|
16635
16729
|
...props,
|
|
@@ -16659,19 +16753,19 @@ function updateFilter(currentFilter, key, value) {
|
|
|
16659
16753
|
var filterTestIdPrefix = "filter";
|
|
16660
16754
|
|
|
16661
16755
|
// src/components/Grid/ResponsiveGrid.tsx
|
|
16662
|
-
import { jsx as
|
|
16756
|
+
import { jsx as jsx147 } from "@emotion/react/jsx-runtime";
|
|
16663
16757
|
function ResponsiveGrid(props) {
|
|
16664
16758
|
const { children, ...hookProps } = props;
|
|
16665
16759
|
const { gridStyles } = useResponsiveGrid(hookProps);
|
|
16666
|
-
return /* @__PURE__ */
|
|
16760
|
+
return /* @__PURE__ */ jsx147("div", { css: { ...gridStyles }, children });
|
|
16667
16761
|
}
|
|
16668
16762
|
|
|
16669
16763
|
// src/components/Grid/ResponsiveGridItem.tsx
|
|
16670
|
-
import { jsx as
|
|
16764
|
+
import { jsx as jsx148 } from "@emotion/react/jsx-runtime";
|
|
16671
16765
|
function ResponsiveGridItem(props) {
|
|
16672
16766
|
const { colSpan, children } = props;
|
|
16673
16767
|
const { gridItemProps } = useResponsiveGridItem({ colSpan });
|
|
16674
|
-
return /* @__PURE__ */
|
|
16768
|
+
return /* @__PURE__ */ jsx148("div", { ...gridItemProps, children });
|
|
16675
16769
|
}
|
|
16676
16770
|
|
|
16677
16771
|
// src/components/Grid/useResponsiveGrid.ts
|
|
@@ -16730,7 +16824,7 @@ import React19, { useContext as useContext17, useMemo as useMemo36 } from "react
|
|
|
16730
16824
|
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";
|
|
16731
16825
|
|
|
16732
16826
|
// src/components/HbLoadingSpinner.tsx
|
|
16733
|
-
import { jsx as
|
|
16827
|
+
import { jsx as jsx149, jsxs as jsxs69 } from "@emotion/react/jsx-runtime";
|
|
16734
16828
|
function HbLoadingSpinner({ noQuips, extraQuips = [], extraQuipsOnly, iconOnly }) {
|
|
16735
16829
|
const ctx = useContext17(HbLoadingSpinnerContext);
|
|
16736
16830
|
const tid = useTestIds({}, "hbSpinner");
|
|
@@ -16740,8 +16834,8 @@ function HbLoadingSpinner({ noQuips, extraQuips = [], extraQuipsOnly, iconOnly }
|
|
|
16740
16834
|
if (ctx.noQuips && !forceQuips || noQuips || allQuips.length === 0) return "Loading...";
|
|
16741
16835
|
return allQuips[Math.floor(Math.random() * allQuips.length)];
|
|
16742
16836
|
}, [ctx.noQuips, ctx.quips, extraQuips, extraQuipsOnly, noQuips]);
|
|
16743
|
-
return /* @__PURE__ */
|
|
16744
|
-
/* @__PURE__ */
|
|
16837
|
+
return /* @__PURE__ */ jsxs69("div", { css: Css.df.fdc.jcc.aic.$, ...tid, children: [
|
|
16838
|
+
/* @__PURE__ */ jsx149(
|
|
16745
16839
|
"img",
|
|
16746
16840
|
{
|
|
16747
16841
|
src: HbLoadingSpinner_base64_default,
|
|
@@ -16754,7 +16848,7 @@ function HbLoadingSpinner({ noQuips, extraQuips = [], extraQuipsOnly, iconOnly }
|
|
|
16754
16848
|
...tid.gif
|
|
16755
16849
|
}
|
|
16756
16850
|
),
|
|
16757
|
-
!iconOnly && /* @__PURE__ */
|
|
16851
|
+
!iconOnly && /* @__PURE__ */ jsx149(
|
|
16758
16852
|
"div",
|
|
16759
16853
|
{
|
|
16760
16854
|
"data-chromatic": "ignore",
|
|
@@ -16780,11 +16874,11 @@ var HbLoadingSpinnerContext = React19.createContext({
|
|
|
16780
16874
|
});
|
|
16781
16875
|
function HbSpinnerProvider({ quips = [], children }) {
|
|
16782
16876
|
const state = useMemo36(() => ({ quips, noQuips: quips.length === 0 }), [quips]);
|
|
16783
|
-
return /* @__PURE__ */
|
|
16877
|
+
return /* @__PURE__ */ jsx149(HbLoadingSpinnerContext.Provider, { value: state, children });
|
|
16784
16878
|
}
|
|
16785
16879
|
|
|
16786
16880
|
// src/components/LoadingSkeleton.tsx
|
|
16787
|
-
import { jsx as
|
|
16881
|
+
import { jsx as jsx150 } from "@emotion/react/jsx-runtime";
|
|
16788
16882
|
function LoadingSkeleton({
|
|
16789
16883
|
rows = 1,
|
|
16790
16884
|
columns = 1,
|
|
@@ -16797,7 +16891,7 @@ function LoadingSkeleton({
|
|
|
16797
16891
|
const rowHeight = sizeToPixels2[size];
|
|
16798
16892
|
const rowCells = (rowNumber) => {
|
|
16799
16893
|
const flexGrowForCell = randomizeWidths ? getRandomizedFlexBasisByRowIndex(rowNumber) : 1;
|
|
16800
|
-
return cellArray.map((_, i) => /* @__PURE__ */
|
|
16894
|
+
return cellArray.map((_, i) => /* @__PURE__ */ jsx150(
|
|
16801
16895
|
"div",
|
|
16802
16896
|
{
|
|
16803
16897
|
css: Css.br4.add("animation", "pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite").add("flexGrow", flexGrowForCell).bgGray300.if(contrast).bgGray700.$
|
|
@@ -16805,7 +16899,7 @@ function LoadingSkeleton({
|
|
|
16805
16899
|
`row-${rowNumber}-cell-${i}`
|
|
16806
16900
|
));
|
|
16807
16901
|
};
|
|
16808
|
-
return /* @__PURE__ */
|
|
16902
|
+
return /* @__PURE__ */ jsx150("div", { "aria-label": "Loading", children: rowArray.map((_, i) => /* @__PURE__ */ jsx150("div", { css: Css.df.gap1.mb1.hPx(rowHeight).$, children: rowCells(i) }, `row-${i}`)) });
|
|
16809
16903
|
}
|
|
16810
16904
|
function getRandomizedFlexBasisByRowIndex(rowIndex) {
|
|
16811
16905
|
const randomizedFlexBasisValues = [0.65, 0.8, 0.75, 0.9, 0.8, 0.85, 0.8, 0.95];
|
|
@@ -16820,8 +16914,8 @@ var sizeToPixels2 = {
|
|
|
16820
16914
|
|
|
16821
16915
|
// src/components/MaxLines.tsx
|
|
16822
16916
|
import { useLayoutEffect as useLayoutEffect2, useResizeObserver as useResizeObserver4 } from "@react-aria/utils";
|
|
16823
|
-
import { useCallback as
|
|
16824
|
-
import { jsx as
|
|
16917
|
+
import { useCallback as useCallback21, useEffect as useEffect26, useRef as useRef48, useState as useState37 } from "react";
|
|
16918
|
+
import { jsx as jsx151, jsxs as jsxs70 } from "@emotion/react/jsx-runtime";
|
|
16825
16919
|
function MaxLines({ maxLines, children }) {
|
|
16826
16920
|
const elRef = useRef48(null);
|
|
16827
16921
|
const [hasMore, setHasMore] = useState37(false);
|
|
@@ -16833,19 +16927,19 @@ function MaxLines({ maxLines, children }) {
|
|
|
16833
16927
|
useEffect26(() => {
|
|
16834
16928
|
setExpanded(false);
|
|
16835
16929
|
}, [children]);
|
|
16836
|
-
const onResize =
|
|
16930
|
+
const onResize = useCallback21(() => {
|
|
16837
16931
|
if (!elRef.current) return;
|
|
16838
16932
|
!expanded && setHasMore(elRef.current.scrollHeight > elRef.current.clientHeight);
|
|
16839
16933
|
}, [expanded]);
|
|
16840
16934
|
useResizeObserver4({ ref: elRef, onResize });
|
|
16841
|
-
return /* @__PURE__ */
|
|
16842
|
-
/* @__PURE__ */
|
|
16843
|
-
hasMore && /* @__PURE__ */
|
|
16935
|
+
return /* @__PURE__ */ jsxs70("div", { children: [
|
|
16936
|
+
/* @__PURE__ */ jsx151("div", { ref: elRef, css: Css.if(!expanded).lineClamp(maxLines).$, children }),
|
|
16937
|
+
hasMore && /* @__PURE__ */ jsx151("button", { css: Css.db.smMd.$, onClick: () => setExpanded((prev) => !prev), children: expanded ? "Show Less" : "Show More" })
|
|
16844
16938
|
] });
|
|
16845
16939
|
}
|
|
16846
16940
|
|
|
16847
16941
|
// src/components/Pagination.tsx
|
|
16848
|
-
import { jsx as
|
|
16942
|
+
import { jsx as jsx152, jsxs as jsxs71 } from "@emotion/react/jsx-runtime";
|
|
16849
16943
|
var defaultPage = { offset: 0, limit: 100 };
|
|
16850
16944
|
function Pagination(props) {
|
|
16851
16945
|
const { totalCount, pageSizes = [100, 500, 1e3] } = props;
|
|
@@ -16865,9 +16959,9 @@ function Pagination(props) {
|
|
|
16865
16959
|
}
|
|
16866
16960
|
}
|
|
16867
16961
|
const tid = useTestIds(props, "pagination");
|
|
16868
|
-
return /* @__PURE__ */
|
|
16869
|
-
/* @__PURE__ */
|
|
16870
|
-
/* @__PURE__ */
|
|
16962
|
+
return /* @__PURE__ */ jsxs71("div", { css: Css.df.bcGray200.bt.xs.gray500.px2.pt2.$, ...tid, children: [
|
|
16963
|
+
/* @__PURE__ */ jsx152("div", { css: Css.df.mya.mr2.$, ...tid.pageSizeLabel, children: "Page size:" }),
|
|
16964
|
+
/* @__PURE__ */ jsx152("div", { css: Css.wPx(78).$, children: /* @__PURE__ */ jsx152(
|
|
16871
16965
|
SelectField,
|
|
16872
16966
|
{
|
|
16873
16967
|
compact: true,
|
|
@@ -16879,15 +16973,15 @@ function Pagination(props) {
|
|
|
16879
16973
|
...tid.pageSize
|
|
16880
16974
|
}
|
|
16881
16975
|
) }),
|
|
16882
|
-
/* @__PURE__ */
|
|
16883
|
-
/* @__PURE__ */
|
|
16976
|
+
/* @__PURE__ */ jsxs71("div", { css: Css.mla.mya.df.$, children: [
|
|
16977
|
+
/* @__PURE__ */ jsxs71("div", { css: Css.df.mya.mr2.$, ...tid.pageInfoLabel, children: [
|
|
16884
16978
|
first,
|
|
16885
16979
|
" ",
|
|
16886
16980
|
showLast ? `- ${last}` : "",
|
|
16887
16981
|
" of ",
|
|
16888
16982
|
totalCount
|
|
16889
16983
|
] }),
|
|
16890
|
-
/* @__PURE__ */
|
|
16984
|
+
/* @__PURE__ */ jsx152(
|
|
16891
16985
|
IconButton,
|
|
16892
16986
|
{
|
|
16893
16987
|
icon: "chevronLeft",
|
|
@@ -16897,7 +16991,7 @@ function Pagination(props) {
|
|
|
16897
16991
|
...tid.previousIcon
|
|
16898
16992
|
}
|
|
16899
16993
|
),
|
|
16900
|
-
/* @__PURE__ */
|
|
16994
|
+
/* @__PURE__ */ jsx152(
|
|
16901
16995
|
IconButton,
|
|
16902
16996
|
{
|
|
16903
16997
|
icon: "chevronRight",
|
|
@@ -16926,8 +17020,8 @@ function toPageNumberSize(page) {
|
|
|
16926
17020
|
|
|
16927
17021
|
// src/components/ScrollShadows.tsx
|
|
16928
17022
|
import { useResizeObserver as useResizeObserver5 } from "@react-aria/utils";
|
|
16929
|
-
import { useCallback as
|
|
16930
|
-
import { jsx as
|
|
17023
|
+
import { useCallback as useCallback22, useMemo as useMemo37, useRef as useRef49, useState as useState38 } from "react";
|
|
17024
|
+
import { jsx as jsx153, jsxs as jsxs72 } from "@emotion/react/jsx-runtime";
|
|
16931
17025
|
function ScrollShadows(props) {
|
|
16932
17026
|
const { children, xss, horizontal = false, bgColor = "rgba(255,255,255,1)" /* White */ } = props;
|
|
16933
17027
|
const { height = "auto", width = "auto" } = xss ?? {};
|
|
@@ -16950,7 +17044,7 @@ function ScrollShadows(props) {
|
|
|
16950
17044
|
{ ...commonStyles, ...endShadowStyles2, ...Css.add("background", endGradient).$ }
|
|
16951
17045
|
];
|
|
16952
17046
|
}, [horizontal, bgColor]);
|
|
16953
|
-
const updateScrollProps =
|
|
17047
|
+
const updateScrollProps = useCallback22(
|
|
16954
17048
|
(el) => {
|
|
16955
17049
|
const { scrollTop, scrollHeight, clientHeight, scrollWidth, scrollLeft, clientWidth } = el;
|
|
16956
17050
|
const start = horizontal ? scrollLeft : scrollTop;
|
|
@@ -16961,17 +17055,17 @@ function ScrollShadows(props) {
|
|
|
16961
17055
|
},
|
|
16962
17056
|
[horizontal]
|
|
16963
17057
|
);
|
|
16964
|
-
const onResize =
|
|
17058
|
+
const onResize = useCallback22(() => scrollRef.current && updateScrollProps(scrollRef.current), [updateScrollProps]);
|
|
16965
17059
|
useResizeObserver5({ ref: scrollRef, onResize });
|
|
16966
|
-
return /* @__PURE__ */
|
|
17060
|
+
return /* @__PURE__ */ jsxs72(
|
|
16967
17061
|
"div",
|
|
16968
17062
|
{
|
|
16969
17063
|
css: Css.relative.oh.h(height).w(width).df.fd(!horizontal ? "column" : "row").$,
|
|
16970
17064
|
...tid,
|
|
16971
17065
|
children: [
|
|
16972
|
-
/* @__PURE__ */
|
|
16973
|
-
/* @__PURE__ */
|
|
16974
|
-
/* @__PURE__ */
|
|
17066
|
+
/* @__PURE__ */ jsx153("div", { css: { ...startShadowStyles, opacity: showStartShadow ? 1 : 0 }, "data-chromatic": "ignore" }),
|
|
17067
|
+
/* @__PURE__ */ jsx153("div", { css: { ...endShadowStyles, opacity: showEndShadow ? 1 : 0 }, "data-chromatic": "ignore" }),
|
|
17068
|
+
/* @__PURE__ */ jsx153(
|
|
16975
17069
|
"div",
|
|
16976
17070
|
{
|
|
16977
17071
|
css: {
|
|
@@ -16989,10 +17083,10 @@ function ScrollShadows(props) {
|
|
|
16989
17083
|
}
|
|
16990
17084
|
|
|
16991
17085
|
// src/components/Snackbar/useSnackbar.tsx
|
|
16992
|
-
import { useCallback as
|
|
17086
|
+
import { useCallback as useCallback23, useEffect as useEffect27 } from "react";
|
|
16993
17087
|
function useSnackbar() {
|
|
16994
17088
|
const { setNotices, setOffset } = useSnackbarContext();
|
|
16995
|
-
const onClose =
|
|
17089
|
+
const onClose = useCallback23(
|
|
16996
17090
|
(noticeId) => {
|
|
16997
17091
|
setNotices((prev) => {
|
|
16998
17092
|
let returnValue = prev;
|
|
@@ -17009,7 +17103,7 @@ function useSnackbar() {
|
|
|
17009
17103
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
17010
17104
|
[]
|
|
17011
17105
|
);
|
|
17012
|
-
const triggerNotice =
|
|
17106
|
+
const triggerNotice = useCallback23(
|
|
17013
17107
|
(props) => {
|
|
17014
17108
|
const noticeId = props.id ?? `beamSnackbar:${snackbarId++}`;
|
|
17015
17109
|
let maybeTimeout;
|
|
@@ -17038,7 +17132,7 @@ function useSnackbar() {
|
|
|
17038
17132
|
},
|
|
17039
17133
|
[onClose, setNotices]
|
|
17040
17134
|
);
|
|
17041
|
-
const closeNotice =
|
|
17135
|
+
const closeNotice = useCallback23((id) => onClose(id), [onClose]);
|
|
17042
17136
|
const useSnackbarOffset = ({ bottom }) => useEffect27(() => {
|
|
17043
17137
|
setOffset({ bottom });
|
|
17044
17138
|
return () => setOffset({});
|
|
@@ -17050,7 +17144,7 @@ var snackbarId = 1;
|
|
|
17050
17144
|
// src/components/Stepper.tsx
|
|
17051
17145
|
import { useRef as useRef50 } from "react";
|
|
17052
17146
|
import { useButton as useButton11, useFocusRing as useFocusRing14, useHover as useHover17 } from "react-aria";
|
|
17053
|
-
import { jsx as
|
|
17147
|
+
import { jsx as jsx154, jsxs as jsxs73 } from "@emotion/react/jsx-runtime";
|
|
17054
17148
|
function Stepper(props) {
|
|
17055
17149
|
const { steps, currentStep, onChange } = props;
|
|
17056
17150
|
if (steps.length === 0) {
|
|
@@ -17061,25 +17155,25 @@ function Stepper(props) {
|
|
|
17061
17155
|
const maxStepWidth = 200;
|
|
17062
17156
|
const minStepWidth = 100;
|
|
17063
17157
|
const gap = 8;
|
|
17064
|
-
return /* @__PURE__ */
|
|
17065
|
-
/* @__PURE__ */
|
|
17158
|
+
return /* @__PURE__ */ jsxs73("nav", { "aria-label": "steps", css: Css.df.fdc.w100.$, ...tid, children: [
|
|
17159
|
+
/* @__PURE__ */ jsx154("ol", { css: Css.listReset.df.gapPx(gap).$, children: steps.map((step) => {
|
|
17066
17160
|
const isCurrent = currentStep === step.value;
|
|
17067
|
-
return /* @__PURE__ */
|
|
17161
|
+
return /* @__PURE__ */ jsx154(
|
|
17068
17162
|
"li",
|
|
17069
17163
|
{
|
|
17070
17164
|
css: Css.df.fg1.fdc.maxwPx(maxStepWidth).mwPx(minStepWidth).$,
|
|
17071
17165
|
"aria-current": isCurrent,
|
|
17072
17166
|
...tid.step,
|
|
17073
|
-
children: /* @__PURE__ */
|
|
17167
|
+
children: /* @__PURE__ */ jsx154(StepButton, { ...step, onClick: () => onChange(step.value), isCurrent, ...tid.stepButton })
|
|
17074
17168
|
},
|
|
17075
17169
|
step.label
|
|
17076
17170
|
);
|
|
17077
17171
|
}) }),
|
|
17078
|
-
/* @__PURE__ */
|
|
17172
|
+
/* @__PURE__ */ jsx154(
|
|
17079
17173
|
"div",
|
|
17080
17174
|
{
|
|
17081
17175
|
css: Css.mt1.bgGray300.hPx(4).maxwPx(steps.length * maxStepWidth + (steps.length - 1) * gap).mwPx(steps.length * minStepWidth + (steps.length - 1) * gap).w100.$,
|
|
17082
|
-
children: /* @__PURE__ */
|
|
17176
|
+
children: /* @__PURE__ */ jsx154(
|
|
17083
17177
|
"div",
|
|
17084
17178
|
{
|
|
17085
17179
|
css: Css.bgBlue600.add("transition", "width 200ms").h100.w(`${(lastCompletedStep + 1) / steps.length * 100}%`).$
|
|
@@ -17098,7 +17192,7 @@ function StepButton(props) {
|
|
|
17098
17192
|
const { hoverProps, isHovered } = useHover17(ariaProps);
|
|
17099
17193
|
const focusRingStyles2 = state === "error" ? Css.bshDanger.$ : Css.bshFocus.$;
|
|
17100
17194
|
const tid = useTestIds(props, "stepButton");
|
|
17101
|
-
return /* @__PURE__ */
|
|
17195
|
+
return /* @__PURE__ */ jsxs73(
|
|
17102
17196
|
"button",
|
|
17103
17197
|
{
|
|
17104
17198
|
ref,
|
|
@@ -17116,7 +17210,7 @@ function StepButton(props) {
|
|
|
17116
17210
|
},
|
|
17117
17211
|
...tid[defaultTestId(label)],
|
|
17118
17212
|
children: [
|
|
17119
|
-
/* @__PURE__ */
|
|
17213
|
+
/* @__PURE__ */ jsx154("span", { css: Css.fs0.mrPx(4).$, children: /* @__PURE__ */ jsx154(StepIcon, { state, isHovered, isPressed, isCurrent }) }),
|
|
17120
17214
|
label
|
|
17121
17215
|
]
|
|
17122
17216
|
}
|
|
@@ -17124,12 +17218,12 @@ function StepButton(props) {
|
|
|
17124
17218
|
}
|
|
17125
17219
|
function StepIcon({ state, isHovered = false, isPressed = false, isCurrent = false }) {
|
|
17126
17220
|
if (state === "error") {
|
|
17127
|
-
return /* @__PURE__ */
|
|
17221
|
+
return /* @__PURE__ */ jsx154(Icon, { icon: "errorCircle" });
|
|
17128
17222
|
}
|
|
17129
17223
|
if (state === "complete") {
|
|
17130
|
-
return /* @__PURE__ */
|
|
17224
|
+
return /* @__PURE__ */ jsx154(Icon, { icon: "check" });
|
|
17131
17225
|
}
|
|
17132
|
-
return /* @__PURE__ */
|
|
17226
|
+
return /* @__PURE__ */ jsx154("div", { css: Css.wPx(24).hPx(24).df.aic.jcc.$, children: /* @__PURE__ */ jsx154(
|
|
17133
17227
|
"div",
|
|
17134
17228
|
{
|
|
17135
17229
|
css: Css.wPx(10).hPx(10).ba.bw2.br100.add("color", "currentColor").if(isHovered || isPressed || isCurrent).add("backgroundColor", "currentColor").$
|
|
@@ -17139,7 +17233,7 @@ function StepIcon({ state, isHovered = false, isPressed = false, isCurrent = fal
|
|
|
17139
17233
|
|
|
17140
17234
|
// src/components/SuperDrawer/components/SuperDrawerHeader.tsx
|
|
17141
17235
|
import { createPortal as createPortal5 } from "react-dom";
|
|
17142
|
-
import { jsx as
|
|
17236
|
+
import { jsx as jsx155, jsxs as jsxs74 } from "@emotion/react/jsx-runtime";
|
|
17143
17237
|
function SuperDrawerHeader(props) {
|
|
17144
17238
|
const { hideControls } = props;
|
|
17145
17239
|
const { sdHeaderDiv, drawerContentStack: contentStack } = useBeamContext();
|
|
@@ -17149,15 +17243,15 @@ function SuperDrawerHeader(props) {
|
|
|
17149
17243
|
const isDetail = currentContent !== firstContent;
|
|
17150
17244
|
const tid = useTestIds({}, "superDrawerHeader");
|
|
17151
17245
|
return createPortal5(
|
|
17152
|
-
/* @__PURE__ */
|
|
17153
|
-
isStructuredProps(props) ? /* @__PURE__ */
|
|
17154
|
-
/* @__PURE__ */
|
|
17155
|
-
typeof props.title === "string" ? /* @__PURE__ */
|
|
17246
|
+
/* @__PURE__ */ jsxs74("div", { css: Css.df.aic.jcsb.gap3.$, ...tid, children: [
|
|
17247
|
+
isStructuredProps(props) ? /* @__PURE__ */ jsxs74("div", { css: Css.df.jcsb.aic.gap2.fg1.$, children: [
|
|
17248
|
+
/* @__PURE__ */ jsxs74("div", { css: Css.fg1.df.aic.gap2.$, children: [
|
|
17249
|
+
typeof props.title === "string" ? /* @__PURE__ */ jsx155("h1", { children: props.title }) : props.title,
|
|
17156
17250
|
props.left
|
|
17157
17251
|
] }),
|
|
17158
|
-
props.right && /* @__PURE__ */
|
|
17159
|
-
] }) : /* @__PURE__ */
|
|
17160
|
-
!hideControls && /* @__PURE__ */
|
|
17252
|
+
props.right && /* @__PURE__ */ jsx155("div", { css: Css.fs0.$, children: props.right })
|
|
17253
|
+
] }) : /* @__PURE__ */ jsx155("div", { css: Css.fg1.$, children: props.children }),
|
|
17254
|
+
!hideControls && /* @__PURE__ */ jsx155("div", { css: Css.fs0.if(isDetail).vh.$, children: /* @__PURE__ */ jsx155(
|
|
17161
17255
|
ButtonGroup,
|
|
17162
17256
|
{
|
|
17163
17257
|
buttons: [
|
|
@@ -17176,18 +17270,18 @@ function isStructuredProps(props) {
|
|
|
17176
17270
|
}
|
|
17177
17271
|
|
|
17178
17272
|
// src/components/SuperDrawer/ConfirmCloseModal.tsx
|
|
17179
|
-
import { Fragment as
|
|
17273
|
+
import { Fragment as Fragment29, jsx as jsx156, jsxs as jsxs75 } from "@emotion/react/jsx-runtime";
|
|
17180
17274
|
function ConfirmCloseModal(props) {
|
|
17181
17275
|
const { onClose, discardText = "Discard Changes", continueText = "Continue Editing" } = props;
|
|
17182
17276
|
const { modalState } = useBeamContext();
|
|
17183
17277
|
function closeModal() {
|
|
17184
17278
|
modalState.current = void 0;
|
|
17185
17279
|
}
|
|
17186
|
-
return /* @__PURE__ */
|
|
17187
|
-
/* @__PURE__ */
|
|
17188
|
-
/* @__PURE__ */
|
|
17189
|
-
/* @__PURE__ */
|
|
17190
|
-
/* @__PURE__ */
|
|
17280
|
+
return /* @__PURE__ */ jsxs75(Fragment29, { children: [
|
|
17281
|
+
/* @__PURE__ */ jsx156(ModalHeader, { children: "Are you sure you want to cancel?" }),
|
|
17282
|
+
/* @__PURE__ */ jsx156(ModalBody, { children: /* @__PURE__ */ jsx156("p", { children: "Any changes you've made so far will be lost." }) }),
|
|
17283
|
+
/* @__PURE__ */ jsxs75(ModalFooter, { children: [
|
|
17284
|
+
/* @__PURE__ */ jsx156(
|
|
17191
17285
|
Button,
|
|
17192
17286
|
{
|
|
17193
17287
|
variant: "tertiary",
|
|
@@ -17198,7 +17292,7 @@ function ConfirmCloseModal(props) {
|
|
|
17198
17292
|
}
|
|
17199
17293
|
}
|
|
17200
17294
|
),
|
|
17201
|
-
/* @__PURE__ */
|
|
17295
|
+
/* @__PURE__ */ jsx156(Button, { label: continueText, onClick: closeModal })
|
|
17202
17296
|
] })
|
|
17203
17297
|
] });
|
|
17204
17298
|
}
|
|
@@ -17208,7 +17302,7 @@ import { motion as motion4 } from "framer-motion";
|
|
|
17208
17302
|
|
|
17209
17303
|
// src/components/SuperDrawer/useSuperDrawer.tsx
|
|
17210
17304
|
import { useMemo as useMemo38 } from "react";
|
|
17211
|
-
import { jsx as
|
|
17305
|
+
import { jsx as jsx157 } from "@emotion/react/jsx-runtime";
|
|
17212
17306
|
function useSuperDrawer() {
|
|
17213
17307
|
const {
|
|
17214
17308
|
drawerContentStack: contentStack,
|
|
@@ -17220,7 +17314,7 @@ function useSuperDrawer() {
|
|
|
17220
17314
|
function canCloseDrawerDetails(i, doChange) {
|
|
17221
17315
|
for (const canCloseDrawerDetail of canCloseDetailsChecks.current[i] ?? []) {
|
|
17222
17316
|
if (!canClose(canCloseDrawerDetail)) {
|
|
17223
|
-
openModal({ content: /* @__PURE__ */
|
|
17317
|
+
openModal({ content: /* @__PURE__ */ jsx157(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawerDetail }) });
|
|
17224
17318
|
return false;
|
|
17225
17319
|
}
|
|
17226
17320
|
}
|
|
@@ -17240,7 +17334,7 @@ function useSuperDrawer() {
|
|
|
17240
17334
|
for (const canCloseDrawer of canCloseChecks.current) {
|
|
17241
17335
|
if (!canClose(canCloseDrawer)) {
|
|
17242
17336
|
openModal({
|
|
17243
|
-
content: /* @__PURE__ */
|
|
17337
|
+
content: /* @__PURE__ */ jsx157(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawer })
|
|
17244
17338
|
});
|
|
17245
17339
|
return;
|
|
17246
17340
|
}
|
|
@@ -17335,7 +17429,7 @@ function canClose(canCloseCheck) {
|
|
|
17335
17429
|
}
|
|
17336
17430
|
|
|
17337
17431
|
// src/components/SuperDrawer/SuperDrawerContent.tsx
|
|
17338
|
-
import { Fragment as
|
|
17432
|
+
import { Fragment as Fragment30, jsx as jsx158, jsxs as jsxs76 } from "@emotion/react/jsx-runtime";
|
|
17339
17433
|
var SuperDrawerContent = ({ children, actions }) => {
|
|
17340
17434
|
const { closeDrawerDetail } = useSuperDrawer();
|
|
17341
17435
|
const { drawerContentStack: contentStack } = useBeamContext();
|
|
@@ -17344,17 +17438,17 @@ var SuperDrawerContent = ({ children, actions }) => {
|
|
|
17344
17438
|
const { width = 1040 /* Normal */ } = firstContent ?? {};
|
|
17345
17439
|
function wrapWithMotionAndMaybeBack(children2) {
|
|
17346
17440
|
if (kind === "open") {
|
|
17347
|
-
return /* @__PURE__ */
|
|
17441
|
+
return /* @__PURE__ */ jsx158(motion4.div, { css: Css.p3.fg1.oa.$, children: children2 }, "content");
|
|
17348
17442
|
} else if (kind === "detail") {
|
|
17349
|
-
return /* @__PURE__ */
|
|
17443
|
+
return /* @__PURE__ */ jsxs76(
|
|
17350
17444
|
motion4.div,
|
|
17351
17445
|
{
|
|
17352
17446
|
css: Css.px3.pt2.pb3.fg1.$,
|
|
17353
17447
|
animate: { overflow: "auto" },
|
|
17354
17448
|
transition: { overflow: { delay: 0.3 } },
|
|
17355
17449
|
children: [
|
|
17356
|
-
/* @__PURE__ */
|
|
17357
|
-
/* @__PURE__ */
|
|
17450
|
+
/* @__PURE__ */ jsx158(Button, { label: "Back", icon: "chevronLeft", variant: "tertiary", onClick: closeDrawerDetail }),
|
|
17451
|
+
/* @__PURE__ */ jsx158(
|
|
17358
17452
|
motion4.div,
|
|
17359
17453
|
{
|
|
17360
17454
|
initial: { x: width, opacity: 0 },
|
|
@@ -17370,12 +17464,12 @@ var SuperDrawerContent = ({ children, actions }) => {
|
|
|
17370
17464
|
"content"
|
|
17371
17465
|
);
|
|
17372
17466
|
} else {
|
|
17373
|
-
return /* @__PURE__ */
|
|
17467
|
+
return /* @__PURE__ */ jsx158(motion4.div, { css: Css.p3.fg1.$, style: { overflow: "auto" } }, "content");
|
|
17374
17468
|
}
|
|
17375
17469
|
}
|
|
17376
|
-
return /* @__PURE__ */
|
|
17470
|
+
return /* @__PURE__ */ jsxs76(Fragment30, { children: [
|
|
17377
17471
|
wrapWithMotionAndMaybeBack(children),
|
|
17378
|
-
actions && /* @__PURE__ */
|
|
17472
|
+
actions && /* @__PURE__ */ jsx158("footer", { css: Css.bt.bcGray200.p3.df.aic.jcfe.$, children: /* @__PURE__ */ jsx158("div", { css: Css.df.gap1.$, children: actions.map((buttonProps, i) => /* @__PURE__ */ jsx158(Button, { ...buttonProps }, i)) }) })
|
|
17379
17473
|
] });
|
|
17380
17474
|
};
|
|
17381
17475
|
|
|
@@ -17385,12 +17479,12 @@ import { useEffect as useEffect28, useMemo as useMemo39, useRef as useRef51, use
|
|
|
17385
17479
|
import { mergeProps as mergeProps13, useFocusRing as useFocusRing15, useHover as useHover18 } from "react-aria";
|
|
17386
17480
|
import { matchPath, Route } from "react-router";
|
|
17387
17481
|
import { Link as Link5, useLocation } from "react-router-dom";
|
|
17388
|
-
import { Fragment as
|
|
17482
|
+
import { Fragment as Fragment31, jsx as jsx159, jsxs as jsxs77 } from "@emotion/react/jsx-runtime";
|
|
17389
17483
|
function TabsWithContent(props) {
|
|
17390
17484
|
const styles = hideTabs(props) ? {} : Css.pt3.$;
|
|
17391
|
-
return /* @__PURE__ */
|
|
17392
|
-
/* @__PURE__ */
|
|
17393
|
-
/* @__PURE__ */
|
|
17485
|
+
return /* @__PURE__ */ jsxs77(Fragment31, { children: [
|
|
17486
|
+
/* @__PURE__ */ jsx159(Tabs, { ...props }),
|
|
17487
|
+
/* @__PURE__ */ jsx159(TabContent, { ...props, contentXss: { ...styles, ...props.contentXss } })
|
|
17394
17488
|
] });
|
|
17395
17489
|
}
|
|
17396
17490
|
function TabContent(props) {
|
|
@@ -17405,7 +17499,7 @@ function TabContent(props) {
|
|
|
17405
17499
|
return (
|
|
17406
17500
|
// Using FullBleed to allow the tab's bgColor to extend to the edges of the <ScrollableContent /> element.
|
|
17407
17501
|
// Omit the padding from `FullBleed` if the caller passes in the `paddingLeft/Right` styles.
|
|
17408
|
-
/* @__PURE__ */
|
|
17502
|
+
/* @__PURE__ */ jsx159(FullBleed, { omitPadding: "paddingLeft" in contentXss || "paddingRight" in contentXss, children: /* @__PURE__ */ jsx159(
|
|
17409
17503
|
"div",
|
|
17410
17504
|
{
|
|
17411
17505
|
"aria-labelledby": `${uniqueValue}-tab`,
|
|
@@ -17414,7 +17508,7 @@ function TabContent(props) {
|
|
|
17414
17508
|
tabIndex: 0,
|
|
17415
17509
|
...tid.panel,
|
|
17416
17510
|
css: contentXss,
|
|
17417
|
-
children: isRouteTab(selectedTab) ? /* @__PURE__ */
|
|
17511
|
+
children: isRouteTab(selectedTab) ? /* @__PURE__ */ jsx159(Route, { path: selectedTab.path, render: selectedTab.render }) : selectedTab.render()
|
|
17418
17512
|
}
|
|
17419
17513
|
) })
|
|
17420
17514
|
);
|
|
@@ -17445,10 +17539,10 @@ function Tabs(props) {
|
|
|
17445
17539
|
setActive(selected);
|
|
17446
17540
|
}
|
|
17447
17541
|
}
|
|
17448
|
-
return /* @__PURE__ */
|
|
17449
|
-
!hideTabs(props) && /* @__PURE__ */
|
|
17542
|
+
return /* @__PURE__ */ jsxs77("div", { css: { ...Css.df.aic.oa.wsnw.gap1.$, ...includeBottomBorder ? { ...Css.bb.bcGray200.$ } : {} }, children: [
|
|
17543
|
+
!hideTabs(props) && /* @__PURE__ */ jsx159("div", { ref, css: Css.dif.gap1.asfe.$, "aria-label": ariaLabel, role: "tablist", ...tid, children: tabs.map((tab) => {
|
|
17450
17544
|
const uniqueValue = uniqueTabValue(tab);
|
|
17451
|
-
return /* @__PURE__ */
|
|
17545
|
+
return /* @__PURE__ */ jsx159(
|
|
17452
17546
|
TabImpl,
|
|
17453
17547
|
{
|
|
17454
17548
|
active: active === uniqueValue,
|
|
@@ -17463,7 +17557,7 @@ function Tabs(props) {
|
|
|
17463
17557
|
uniqueValue
|
|
17464
17558
|
);
|
|
17465
17559
|
}) }),
|
|
17466
|
-
right && /* @__PURE__ */
|
|
17560
|
+
right && /* @__PURE__ */ jsx159("div", { css: Css.mla.df.aic.gap1.pb1.$, children: right })
|
|
17467
17561
|
] });
|
|
17468
17562
|
}
|
|
17469
17563
|
function TabImpl(props) {
|
|
@@ -17498,15 +17592,15 @@ function TabImpl(props) {
|
|
|
17498
17592
|
onBlur,
|
|
17499
17593
|
...isRouteTab(tab) ? {} : { onClick: () => onClick(tab.value) }
|
|
17500
17594
|
});
|
|
17501
|
-
const tabLabel = /* @__PURE__ */
|
|
17595
|
+
const tabLabel = /* @__PURE__ */ jsxs77(Fragment31, { children: [
|
|
17502
17596
|
label,
|
|
17503
|
-
(icon || endAdornment) && /* @__PURE__ */
|
|
17597
|
+
(icon || endAdornment) && /* @__PURE__ */ jsx159("span", { css: Css.ml1.$, children: icon ? /* @__PURE__ */ jsx159(Icon, { icon }) : endAdornment })
|
|
17504
17598
|
] });
|
|
17505
17599
|
return isDisabled ? maybeTooltip({
|
|
17506
17600
|
title: resolveTooltip(disabled),
|
|
17507
17601
|
placement: "top",
|
|
17508
|
-
children: /* @__PURE__ */
|
|
17509
|
-
}) : isRouteTab(tab) ? /* @__PURE__ */
|
|
17602
|
+
children: /* @__PURE__ */ jsx159("div", { ...tabProps, children: tabLabel })
|
|
17603
|
+
}) : isRouteTab(tab) ? /* @__PURE__ */ jsx159(Link5, { ...{ ...tabProps, ...interactiveProps }, className: "navLink", to: tab.href, children: tabLabel }) : /* @__PURE__ */ jsx159("button", { ...{ ...tabProps, ...interactiveProps }, children: tabLabel });
|
|
17510
17604
|
}
|
|
17511
17605
|
function getTabStyles() {
|
|
17512
17606
|
const borderBottomWidthPx = 4;
|
|
@@ -17545,7 +17639,7 @@ function hideTabs(props) {
|
|
|
17545
17639
|
// src/components/Tag.tsx
|
|
17546
17640
|
import { useResizeObserver as useResizeObserver6 } from "@react-aria/utils";
|
|
17547
17641
|
import { useRef as useRef52, useState as useState40 } from "react";
|
|
17548
|
-
import { jsx as
|
|
17642
|
+
import { jsx as jsx160, jsxs as jsxs78 } from "@emotion/react/jsx-runtime";
|
|
17549
17643
|
function Tag(props) {
|
|
17550
17644
|
const { text, type, xss, preventTooltip = false, ...otherProps } = props;
|
|
17551
17645
|
const typeStyles2 = getStyles(type);
|
|
@@ -17562,9 +17656,9 @@ function Tag(props) {
|
|
|
17562
17656
|
});
|
|
17563
17657
|
return maybeTooltip({
|
|
17564
17658
|
title: !preventTooltip && showTooltip ? text : void 0,
|
|
17565
|
-
children: /* @__PURE__ */
|
|
17566
|
-
otherProps.icon && /* @__PURE__ */
|
|
17567
|
-
/* @__PURE__ */
|
|
17659
|
+
children: /* @__PURE__ */ jsxs78("span", { ...tid, css: { ...Css.dif.tinySb.ttu.aic.gapPx(4).pxPx(6).pyPx(2).gray900.br4.$, ...typeStyles2, ...xss }, children: [
|
|
17660
|
+
otherProps.icon && /* @__PURE__ */ jsx160("span", { css: Css.fs0.$, children: /* @__PURE__ */ jsx160(Icon, { icon: otherProps.icon, inc: 1.5 }) }),
|
|
17661
|
+
/* @__PURE__ */ jsx160("span", { ref, css: Css.lineClamp1.wbba.$, children: text })
|
|
17568
17662
|
] })
|
|
17569
17663
|
});
|
|
17570
17664
|
}
|
|
@@ -17584,18 +17678,18 @@ function getStyles(type) {
|
|
|
17584
17678
|
}
|
|
17585
17679
|
|
|
17586
17680
|
// src/components/Toast/Toast.tsx
|
|
17587
|
-
import { Fragment as
|
|
17681
|
+
import { Fragment as Fragment32, jsx as jsx161 } from "@emotion/react/jsx-runtime";
|
|
17588
17682
|
function Toast() {
|
|
17589
17683
|
const { setNotice, notice } = useToastContext();
|
|
17590
17684
|
const tid = useTestIds({}, "toast");
|
|
17591
|
-
return /* @__PURE__ */
|
|
17685
|
+
return /* @__PURE__ */ jsx161(Fragment32, { children: notice && /* @__PURE__ */ jsx161(Banner, { ...notice, ...tid, onClose: () => setNotice(void 0) }) });
|
|
17592
17686
|
}
|
|
17593
17687
|
|
|
17594
17688
|
// src/components/Toast/useToast.tsx
|
|
17595
|
-
import { useCallback as
|
|
17689
|
+
import { useCallback as useCallback24 } from "react";
|
|
17596
17690
|
function useToast() {
|
|
17597
17691
|
const { setNotice, clear } = useToastContext();
|
|
17598
|
-
const showToast =
|
|
17692
|
+
const showToast = useCallback24((props) => setNotice(props), [setNotice]);
|
|
17599
17693
|
return { showToast, clear };
|
|
17600
17694
|
}
|
|
17601
17695
|
export {
|
|
@@ -17667,6 +17761,7 @@ export {
|
|
|
17667
17761
|
FormHeading,
|
|
17668
17762
|
FormLines,
|
|
17669
17763
|
FormPageLayout,
|
|
17764
|
+
FormRow,
|
|
17670
17765
|
FullBleed,
|
|
17671
17766
|
GridTable,
|
|
17672
17767
|
HB_QUIPS_FLAVOR,
|
|
@@ -17800,6 +17895,7 @@ export {
|
|
|
17800
17895
|
isPersistentItem,
|
|
17801
17896
|
isPersistentKey,
|
|
17802
17897
|
isValidDate,
|
|
17898
|
+
listFieldPrefix,
|
|
17803
17899
|
loadArrayOrUndefined,
|
|
17804
17900
|
matchesFilter,
|
|
17805
17901
|
maybeApplyFunction,
|