@sparrowengg/integrations-templates-frontend 1.9.66 → 1.9.68
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/cjs/commons/icons/arrow.js +1 -17
- package/dist/cjs/commons/icons/arrow.js.map +1 -1
- package/dist/cjs/integration-template/components/dashboard.js +305 -175
- package/dist/cjs/integration-template/components/dashboard.js.map +1 -1
- package/dist/cjs/single-mapping/components/mapping.js +31 -14
- package/dist/cjs/single-mapping/components/mapping.js.map +1 -1
- package/dist/cjs/single-mapping/index.js +248 -88
- package/dist/cjs/single-mapping/index.js.map +1 -1
- package/dist/es/commons/icons/arrow.js +1 -17
- package/dist/es/commons/icons/arrow.js.map +1 -1
- package/dist/es/integration-template/components/dashboard.js +305 -175
- package/dist/es/integration-template/components/dashboard.js.map +1 -1
- package/dist/es/single-mapping/components/mapping.js +31 -14
- package/dist/es/single-mapping/components/mapping.js.map +1 -1
- package/dist/es/single-mapping/index.js +248 -88
- package/dist/es/single-mapping/index.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/package.json +1 -1
|
@@ -7,8 +7,8 @@ import { Box } from '../../node_modules/@sparrowengg/twigs-react/dist/es/box/box
|
|
|
7
7
|
import { Heading } from '../../node_modules/@sparrowengg/twigs-react/dist/es/heading/heading.js';
|
|
8
8
|
import { RadioGroup, Radio } from '../../node_modules/@sparrowengg/twigs-react/dist/es/radio/radio.js';
|
|
9
9
|
import { Tabs, TabsList, TabsTrigger, TabsContent } from '../../node_modules/@sparrowengg/twigs-react/dist/es/tabs/tabs.js';
|
|
10
|
-
import { Chip } from '../../node_modules/@sparrowengg/twigs-react/dist/es/chip/chip.js';
|
|
11
10
|
import { Text } from '../../node_modules/@sparrowengg/twigs-react/dist/es/text/text.js';
|
|
11
|
+
import { Chip } from '../../node_modules/@sparrowengg/twigs-react/dist/es/chip/chip.js';
|
|
12
12
|
import { Input } from '../../node_modules/@sparrowengg/twigs-react/dist/es/input/input.js';
|
|
13
13
|
import { SearchIcon } from '../../node_modules/@sparrowengg/twigs-react-icons/dist/es/icons/search.js';
|
|
14
14
|
import { Checkbox } from '../../node_modules/@sparrowengg/twigs-react/dist/es/checkbox/checkbox.js';
|
|
@@ -243,7 +243,9 @@ const Mapping = ({
|
|
|
243
243
|
css: { height: "calc(100vh - 57px)" }
|
|
244
244
|
},
|
|
245
245
|
/* @__PURE__ */ React__default.createElement(Spinner, null)
|
|
246
|
-
) : /* @__PURE__ */ React__default.createElement(Box, { css: { maxWidth: 600, width: "100%", marginBlock: "$40" } }, (importResponse == null ? void 0 : importResponse.hasImportResponse) ? /* @__PURE__ */ React__default.createElement(Flex, { flexDirection: "column" }, /* @__PURE__ */ React__default.createElement(Heading, { size: "h5"
|
|
246
|
+
) : /* @__PURE__ */ React__default.createElement(Box, { css: { maxWidth: 600, width: "100%", marginBlock: "$40" } }, (importResponse == null ? void 0 : importResponse.hasImportResponse) ? /* @__PURE__ */ React__default.createElement(Flex, { flexDirection: "column" }, /* @__PURE__ */ React__default.createElement(Heading, { size: "h5", css: {
|
|
247
|
+
color: "$neutral900"
|
|
248
|
+
} }, "Select Import Data"), /* @__PURE__ */ React__default.createElement(
|
|
247
249
|
RadioGroup,
|
|
248
250
|
{
|
|
249
251
|
defaultValue: (_b = importResponse == null ? void 0 : importResponse.value) == null ? void 0 : _b.ImportMethod,
|
|
@@ -266,8 +268,8 @@ const Mapping = ({
|
|
|
266
268
|
alignItems: "center",
|
|
267
269
|
gap: "$20",
|
|
268
270
|
css: {
|
|
269
|
-
marginTop: "$
|
|
270
|
-
"& label": { color: "$neutral800" }
|
|
271
|
+
marginTop: "$9",
|
|
272
|
+
"& label": { color: "$neutral800", cursor: "pointer" }
|
|
271
273
|
}
|
|
272
274
|
},
|
|
273
275
|
/* @__PURE__ */ React__default.createElement(Radio, { size: "md", value: "SEND_ALL_DATA", css: {
|
|
@@ -277,7 +279,7 @@ const Mapping = ({
|
|
|
277
279
|
cursor: "pointer"
|
|
278
280
|
} }, "Send selected data")
|
|
279
281
|
)
|
|
280
|
-
)) : null, ((_c = importResponse == null ? void 0 : importResponse.value) == null ? void 0 : _c.ImportMethod) === "SELECTED_DATA" ? /* @__PURE__ */ React__default.createElement(Box, { css: { marginTop: "$
|
|
282
|
+
)) : null, ((_c = importResponse == null ? void 0 : importResponse.value) == null ? void 0 : _c.ImportMethod) === "SELECTED_DATA" ? /* @__PURE__ */ React__default.createElement(Box, { css: { marginTop: "$24" } }, /* @__PURE__ */ React__default.createElement(Tabs, { defaultValue: "QUESTIONS" }, /* @__PURE__ */ React__default.createElement(
|
|
281
283
|
TabsList,
|
|
282
284
|
{
|
|
283
285
|
css: {
|
|
@@ -291,8 +293,8 @@ const Mapping = ({
|
|
|
291
293
|
value: tab == null ? void 0 : tab.value,
|
|
292
294
|
onClick: () => setSearchInput("")
|
|
293
295
|
},
|
|
294
|
-
tab.name,
|
|
295
|
-
!!getMappingCount(tab.placeholder) && /* @__PURE__ */ React__default.createElement(Chip, { css: { marginLeft: "$2" }, variant: "outline", rounded: "sm" }, getMappingCount(tab.placeholder))
|
|
296
|
+
/* @__PURE__ */ React__default.createElement(Text, { size: "sm" }, tab.name),
|
|
297
|
+
!!getMappingCount(tab.placeholder) && /* @__PURE__ */ React__default.createElement(Chip, { css: { marginLeft: "$2", borderRadius: "5px", color: "$neutral800" }, variant: "outline", rounded: "sm" }, getMappingCount(tab.placeholder))
|
|
296
298
|
))
|
|
297
299
|
), /* @__PURE__ */ React__default.createElement(
|
|
298
300
|
TabsContentComponent,
|
|
@@ -344,7 +346,7 @@ const Mapping = ({
|
|
|
344
346
|
fields: ssMappingData.property,
|
|
345
347
|
handleFieldValues: (field, value) => handleFieldValues("property", field == null ? void 0 : field.id, value)
|
|
346
348
|
}
|
|
347
|
-
))) : /* @__PURE__ */ React__default.createElement(Flex, { css: { marginTop: "$
|
|
349
|
+
))) : /* @__PURE__ */ React__default.createElement(Flex, { css: { marginTop: "$16" }, alignItems: "center", gap: "$6" }, /* @__PURE__ */ React__default.createElement(Text, { size: "sm", weight: "regular", css: { width: "90px", color: "$neutral900" } }, "This Includes:"), /* @__PURE__ */ React__default.createElement(Flex, { alignItems: "center", gap: "$4" }, getAllMappingCount("questions") - 1 > 0 ? /* @__PURE__ */ React__default.createElement(CustomChip, { bgColor: "#E5F2FF" }, " ", getAllMappingCount("questions") - 1, " Questions") : null, getAllMappingCount("variables") - 1 > 0 ? /* @__PURE__ */ React__default.createElement(CustomChip, { bgColor: "#E8F4E3" }, " ", getAllMappingCount("variables") - 1, " Variables") : null, getAllMappingCount("contactProperties") - 1 > 0 ? /* @__PURE__ */ React__default.createElement(CustomChip, { bgColor: "#FDEDE8" }, " ", getAllMappingCount("contactProperties") - 1, " Contacts") : null, getAllMappingCount("expressions") - 1 > 0 ? /* @__PURE__ */ React__default.createElement(CustomChip, { bgColor: "#F1F1F1" }, " ", getAllMappingCount("expressions") - 1, " Expressions") : null, getAllMappingCount("property") - 1 > 0 ? /* @__PURE__ */ React__default.createElement(CustomChip, { bgColor: "#4A9CA626" }, " ", getAllMappingCount("property") - 1, " Properties") : null))));
|
|
348
350
|
};
|
|
349
351
|
const TabsContentComponent = ({
|
|
350
352
|
value,
|
|
@@ -363,7 +365,7 @@ const TabsContentComponent = ({
|
|
|
363
365
|
return /* @__PURE__ */ React__default.createElement(TabsContent, { value, css: { padding: 0, position: "relative" } }, /* @__PURE__ */ React__default.createElement(
|
|
364
366
|
Input,
|
|
365
367
|
{
|
|
366
|
-
leftIcon: /* @__PURE__ */ React__default.createElement(SearchIcon,
|
|
368
|
+
leftIcon: /* @__PURE__ */ React__default.createElement(SearchIcon, { color: "#848484" }),
|
|
367
369
|
variant: "filled",
|
|
368
370
|
placeholder: `Search ${placeholder}`,
|
|
369
371
|
size: "lg",
|
|
@@ -375,17 +377,32 @@ const TabsContentComponent = ({
|
|
|
375
377
|
Flex,
|
|
376
378
|
{
|
|
377
379
|
css: {
|
|
378
|
-
padding: "$
|
|
380
|
+
padding: "$8 $4 $32 $4",
|
|
381
|
+
marginTop: "$8",
|
|
379
382
|
height: "calc(100vh - 408px)",
|
|
380
383
|
overflow: "auto",
|
|
384
|
+
scrollbarWidth: "thin",
|
|
385
|
+
"&::-webkit-scrollbar": {
|
|
386
|
+
width: "4px"
|
|
387
|
+
},
|
|
381
388
|
"& label": {
|
|
382
389
|
lineHeight: "$sm"
|
|
383
390
|
}
|
|
384
391
|
},
|
|
385
392
|
flexDirection: "column",
|
|
386
|
-
gap: "$
|
|
393
|
+
gap: "$8"
|
|
387
394
|
},
|
|
388
|
-
|
|
395
|
+
(mappingFields == null ? void 0 : mappingFields.length) > 1 ? /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, mappingFields.map((field) => /* @__PURE__ */ React__default.createElement(Box, { css: {
|
|
396
|
+
label: {
|
|
397
|
+
color: "$neutral900",
|
|
398
|
+
fontSize: "$sm",
|
|
399
|
+
maxWidth: "520px",
|
|
400
|
+
display: "block",
|
|
401
|
+
overflow: "hidden",
|
|
402
|
+
textOverflow: "ellipsis",
|
|
403
|
+
whiteSpace: "nowrap"
|
|
404
|
+
}
|
|
405
|
+
} }, /* @__PURE__ */ React__default.createElement(
|
|
389
406
|
Checkbox,
|
|
390
407
|
{
|
|
391
408
|
size: "sm",
|
|
@@ -393,14 +410,14 @@ const TabsContentComponent = ({
|
|
|
393
410
|
onChange: (value2) => handleFieldValues(field, value2)
|
|
394
411
|
},
|
|
395
412
|
field.name
|
|
396
|
-
))) : /* @__PURE__ */ React__default.createElement(
|
|
413
|
+
)))) : /* @__PURE__ */ React__default.createElement(
|
|
397
414
|
Flex,
|
|
398
415
|
{
|
|
399
416
|
alignItems: "center",
|
|
400
417
|
justifyContent: "center",
|
|
401
418
|
css: { marginTop: "$40" }
|
|
402
419
|
},
|
|
403
|
-
/* @__PURE__ */ React__default.createElement(Text, { size: "sm" },
|
|
420
|
+
/* @__PURE__ */ React__default.createElement(Text, { size: "sm" }, "No Results Found")
|
|
404
421
|
)
|
|
405
422
|
), /* @__PURE__ */ React__default.createElement(
|
|
406
423
|
Box,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapping.js","sources":["../../../../src/single-mapping/components/mapping.tsx"],"sourcesContent":["import {\n Box,\n Checkbox,\n Chip,\n Flex,\n Heading,\n Input,\n Radio,\n RadioGroup,\n Tabs,\n TabsContent,\n TabsList,\n TabsTrigger,\n Text\n} from \"@sparrowengg/twigs-react\";\nimport React, { useEffect, useState } from \"react\";\nimport {\n surveySparrowURL,\n mappingTabValues,\n mappingPropertyValues\n} from \"../../commons/constants\";\nimport Spinner from \"../../commons/components/spinner\";\nimport {\n fetchSurveyQuestions,\n fetchSurveyVariables,\n fetchContactProperties,\n fetchSurveyExpression\n} from \"../../mapping/services\";\nimport { SearchIcon } from \"@sparrowengg/twigs-react-icons\";\n\nconst Mapping = ({\n surveyId,\n apiURL = surveySparrowURL,\n token,\n surveyProperties,\n importResponse,\n ssMappingData,\n setSSMappingData,\n editField,\n}: any) => {\n const [loader, setLoader] = useState(true);\n const [searchInput, setSearchInput] = useState(\"\");\n const [SSMappedFields, setSSMappedFields] = useState<any[]>([]);\n\n const modifiedMappingData = (mappingData: any, commonLabel: string, isEnabled: boolean = false) => {\n const fields = mappingData.map((data: any) => ({\n ...data,\n id: data?.id ?? data?.name,\n name: data?.rtxt ?? data?.name,\n isEnabled: data?.isEnabled ?? false\n }));\n fields.unshift({ id: \"ALL\", name: commonLabel, isEnabled: isEnabled });\n return fields;\n };\n\n const fetchInitalMappingData = async () => {\n setLoader(true);\n try {\n if(surveyProperties){\n const {questions, variables, contactProperties, expressions, property} = surveyProperties\n setSSMappingData({\n questions: questions?.length ? modifiedMappingData(questions, \"Select all Questions\") : [],\n contactProperties: contactProperties?.length ? modifiedMappingData(\n contactProperties,\n \"Select all Contact Properties\"\n ) : [],\n variables: variables?.length ? modifiedMappingData(variables, \"Select all Variables\") : [],\n expressions: expressions?.length ? modifiedMappingData(expressions, \"Select all Expressions\") : [],\n property: property?.length ? modifiedMappingData(property, \"Select all Properties\") : []\n });\n } else {\n const [questions, variables, contactProperties, expressions] =\n await Promise.all([\n fetchSurveyQuestions(apiURL, surveyId, token),\n fetchSurveyVariables(apiURL, surveyId, token),\n fetchContactProperties(apiURL, token),\n fetchSurveyExpression(apiURL, surveyId, token)\n ]);\n setSSMappingData({\n questions: questions?.length ? modifiedMappingData(questions, \"Select all Questions\") : [],\n contactProperties: contactProperties?.length ? modifiedMappingData(\n contactProperties,\n \"Select all Contact Properties\"\n ) : [],\n variables: variables?.length ? modifiedMappingData(variables, \"Select all Variables\") : [],\n expressions: expressions?.length ? modifiedMappingData(expressions, \"Select all Expressions\") : [],\n property: mappingPropertyValues?.length ? modifiedMappingData(mappingPropertyValues, \"Select all Properties\") : []\n });\n }\n } catch (error) {\n console.error(error);\n } finally {\n setLoader(false);\n }\n };\n\n const handleFieldValues = (\n type: string,\n id: string | number,\n value: boolean\n ) => {\n if (id === \"ALL\") {\n setSSMappingData((prev: any) => ({\n ...prev,\n [type]: prev[type]?.map((mapping: any) => {\n return { ...mapping, isEnabled: value };\n })\n }));\n } else {\n let modifiedMappedField = ssMappingData[type]?.map((mapping: any) => {\n if (mapping?.id === id) {\n return { ...mapping, isEnabled: value };\n }\n return { ...mapping };\n });\n if (\n modifiedMappedField\n .filter((field: any) => field?.id !== \"ALL\")\n .every((field: any) => field.isEnabled)\n ) {\n modifiedMappedField = modifiedMappedField.map((field: any) => ({\n ...field,\n isEnabled: true\n }));\n } else {\n modifiedMappedField = modifiedMappedField.map((field: any) => {\n if (field?.id === \"ALL\") {\n return { ...field, isEnabled: false };\n }\n return field;\n });\n }\n\n const mappedFields = {\n ...ssMappingData,\n [type]: modifiedMappedField\n };\n setSSMappingData(mappedFields);\n importResponse.onChangeHandler({\n id: \"mappedFields\",\n value: mappedFields\n });\n }\n };\n\n const getMappingCount = (mappingField: any) => {\n let count = 0;\n const mappedField = ssMappingData[mappingField];\n mappedField?.forEach((field: any) => {\n if (field?.id !== \"ALL\" && field.isEnabled) count += 1;\n });\n return count;\n };\n const getAllMappingCount = (mappingField: any) => {\n const mappedField = ssMappingData[mappingField];\n return mappedField?.length;\n };\n\n useEffect(() => {\n if (!editField?.id) {\n fetchInitalMappingData();\n } else if (!!editField?.id) {\n const { fieldValues: {\n mappedFields\n } } = editField;\n if(importResponse?.value?.ImportMethod === \"SELECTED_DATA\"){\n setSSMappingData({\n questions: mappedFields.questions.length ? mappedFields.questions.some((question: any) => question.id === \"ALL\") ? mappedFields.questions : mappedFields.questions.length ? modifiedMappingData(mappedFields.questions, \"Select all Questions\", mappedFields.questions.every((question: any) => question.isEnabled)) : [] : [],\n variables: mappedFields.variables.length ? mappedFields.variables.some((variable: any) => variable.id === \"ALL\") ? mappedFields.variables : mappedFields.variables.length ? modifiedMappingData(mappedFields.variables, \"Select all Variables\", mappedFields.variables.every((variable: any) => variable.isEnabled)) : [] : [],\n contactProperties: mappedFields.contactProperties.length ? mappedFields.contactProperties.some((contactProperty: any) => contactProperty.id === \"ALL\") ? mappedFields.contactProperties : mappedFields.contactProperties.length ? modifiedMappingData(mappedFields.contactProperties, \"Select all Contact Properties\", mappedFields.contactProperties.every((contactProperty: any) => contactProperty.isEnabled)) : [] : [],\n expressions: mappedFields.expressions.length ? mappedFields.expressions.some((expression: any) => expression.id === \"ALL\") ? mappedFields.expressions : mappedFields.expressions.length ? modifiedMappingData(mappedFields.expressions, \"Select all Expressions\", mappedFields.expressions.every((expression: any) => expression.isEnabled)) : [] : [],\n property: mappedFields.property.length ? mappedFields.property.some((property: any) => property.id === \"ALL\") ? mappedFields.property : mappedFields.property.length ? modifiedMappingData(mappedFields.property, \"Select all Properties\", mappedFields.property.every((property: any) => property.isEnabled)) : [] : []\n });\n } else {\n const {questions, variables, contactProperties, expressions, property} = surveyProperties\n setSSMappingData({\n questions: questions?.length ? questions : [],\n contactProperties: contactProperties?.length ? contactProperties : [],\n variables: variables?.length ? variables : [],\n expressions: expressions?.length ? expressions : [],\n property: property?.length ? property : []\n });\n }\n \n setLoader(false);\n } else {\n setLoader(false);\n }\n }, [token, surveyId]);\n\n\n useEffect(() => {\n if(importResponse?.value?.ImportMethod === \"SELECTED_DATA\"){\n if(!!editField?.id){\n setSSMappingData({\n questions: editField.fieldValues.mappedFields.questions,\n variables: editField.fieldValues.mappedFields.variables,\n contactProperties: editField.fieldValues.mappedFields.contactProperties,\n expressions: editField.fieldValues.mappedFields.expressions,\n property: editField.fieldValues.mappedFields.property\n })} else {\n setSSMappingData({\n questions: ssMappingData.questions.some((question: any) => question.id === \"ALL\") ? ssMappingData.questions : ssMappingData.questions.length ? modifiedMappingData(ssMappingData.questions, \"Select all Questions\") : [],\n variables: ssMappingData.variables.some((variable: any) => variable.id === \"ALL\") ? ssMappingData.variables : ssMappingData.variables.length ? modifiedMappingData(ssMappingData.variables, \"Select all Variables\") : [],\n contactProperties: ssMappingData.contactProperties.some((contactProperty: any) => contactProperty.id === \"ALL\") ? ssMappingData.contactProperties : ssMappingData.contactProperties.length ? modifiedMappingData(ssMappingData.contactProperties, \"Select all Contact Properties\") : [],\n expressions: ssMappingData.expressions.some((expression: any) => expression.id === \"ALL\") ? ssMappingData.expressions : ssMappingData.expressions.length ? modifiedMappingData(ssMappingData.expressions, \"Select all Expressions\") : [],\n property: ssMappingData.property.some((property: any) => property.id === \"ALL\") ? ssMappingData.property : ssMappingData.property.length ? modifiedMappingData(ssMappingData.property, \"Select all Properties\") : []\n })\n }\n }\n }, [importResponse?.value?.ImportMethod])\n\n\n\n\n useEffect(() => {\n if (ssMappingData?.questions?.length || ssMappingData?.variables?.length || ssMappingData?.contactProperties?.length || ssMappingData?.expressions?.length || ssMappingData?.property?.length) {\n const updatedFieldValues = Object.keys(ssMappingData).reduce((acc: any, key: any) => {\n acc[key] = ssMappingData[key].map((field: any) => {\n if(importResponse?.value?.ImportMethod === \"SELECTED_DATA\"){\n return { ...field, isEnabled: field?.isEnabled };\n } else {\n if (field?.id !== \"ALL\") {\n return { ...field, isEnabled: true };\n }\n return field;\n }\n });\n return acc;\n }, {});\n setSSMappedFields(updatedFieldValues);\n if (importResponse?.value?.ImportMethod === \"SEND_ALL_DATA\") {\n importResponse.onChangeHandler({\n id: \"mappedFields\",\n value: updatedFieldValues\n })\n } else {\n importResponse.onChangeHandler({\n id: \"mappedFields\",\n value: ssMappingData\n })\n }\n }\n }, [ssMappingData]);\n\n return (\n <Flex alignItems=\"center\" justifyContent=\"center\">\n {loader ? (\n <Flex\n alignItems=\"center\"\n justifyContent=\"center\"\n css={{ height: \"calc(100vh - 57px)\" }}\n >\n <Spinner />\n </Flex>\n ) : (\n <Box css={{ maxWidth: 600, width: \"100%\", marginBlock: \"$40\" }}>\n {importResponse?.hasImportResponse ? (\n <Flex flexDirection=\"column\">\n <Heading size=\"h5\">Select Import Data</Heading>\n <RadioGroup\n defaultValue={importResponse?.value?.ImportMethod}\n onChange={(value) => {\n importResponse.onChangeHandler({\n id: \"ImportMethod\",\n value: value\n })\n if (value === \"SEND_ALL_DATA\") {\n importResponse.onChangeHandler({\n id: \"mappedFields\",\n value: SSMappedFields\n })\n }\n }}\n >\n <Flex\n alignItems=\"center\"\n gap=\"$20\"\n css={{\n marginTop: \"$12\",\n \"& label\": { color: \"$neutral800\" },\n \n }}\n >\n <Radio size=\"md\" value=\"SEND_ALL_DATA\" css={{\n cursor: \"pointer\"\n }}>\n Send all data\n </Radio>\n <Radio size=\"md\" value=\"SELECTED_DATA\" css={{\n cursor: \"pointer\"\n }}>\n Send selected data\n </Radio>\n\n </Flex>\n </RadioGroup>\n </Flex>\n ) : null}\n {importResponse?.value?.ImportMethod === \"SELECTED_DATA\" ? (\n <Box css={{ marginTop: \"$20\" }}>\n <Tabs defaultValue=\"QUESTIONS\">\n <TabsList\n css={{\n borderBottom: \"$borderWidths$xs solid $neutral200\"\n }}\n >\n {mappingTabValues.map((tab) => (\n <TabsTrigger\n key={tab?.id}\n value={tab?.value}\n onClick={() => setSearchInput(\"\")}\n >\n {tab.name}\n {!!getMappingCount(tab.placeholder) && (\n <Chip css={{ marginLeft: \"$2\" }} variant=\"outline\" rounded=\"sm\">\n {getMappingCount(tab.placeholder)}\n </Chip>\n )}\n </TabsTrigger>\n ))}\n </TabsList>\n <TabsContentComponent\n searchInput={searchInput}\n setSearchInput={setSearchInput}\n value=\"QUESTIONS\"\n placeholder=\"Questions\"\n fields={ssMappingData.questions}\n handleFieldValues={(field: any, value: boolean) =>\n handleFieldValues(\"questions\", field?.id, value)\n }\n />\n <TabsContentComponent\n searchInput={searchInput}\n setSearchInput={setSearchInput}\n fields={ssMappingData.variables}\n value=\"VARIABLE\"\n placeholder=\"Variables\"\n handleFieldValues={(field: any, value: boolean) =>\n handleFieldValues(\"variables\", field?.id, value)\n }\n />\n <TabsContentComponent\n fields={ssMappingData.contactProperties}\n searchInput={searchInput}\n setSearchInput={setSearchInput}\n value=\"CONTACT\"\n placeholder=\"Contacts\"\n handleFieldValues={(field, value) =>\n handleFieldValues(\"contactProperties\", field?.id, value)\n }\n />\n <TabsContentComponent\n searchInput={searchInput}\n setSearchInput={setSearchInput}\n value=\"EXPRESSION\"\n placeholder=\"Expressions\"\n fields={ssMappingData.expressions}\n handleFieldValues={(field, value) =>\n handleFieldValues(\"expressions\", field?.id, value)\n }\n />\n <TabsContentComponent\n value=\"PROPERTY\"\n searchInput={searchInput}\n setSearchInput={setSearchInput}\n placeholder=\"Properties\"\n fields={ssMappingData.property}\n handleFieldValues={(field: any, value: boolean) =>\n handleFieldValues(\"property\", field?.id, value)\n }\n />\n </Tabs>\n </Box>\n ) : <Flex css={{ marginTop: \"$20\" }} alignItems=\"center\" gap=\"$2\">\n\n <Text size=\"md\" weight=\"regular\" css={{ width: \"120px\" }}>\n This Includes:\n </Text>\n <Flex alignItems=\"center\" gap=\"$4\">\n <CustomChip bgColor=\"#E5F2FF\"> {getAllMappingCount(\"questions\") ? getAllMappingCount(\"questions\") : 0} Questions</CustomChip>\n <CustomChip bgColor=\"#E8F4E3\"> {getAllMappingCount(\"variables\") ? getAllMappingCount(\"variables\") : 0} Variables</CustomChip>\n <CustomChip bgColor=\"#FDEDE8\"> {getAllMappingCount(\"contactProperties\") ? getAllMappingCount(\"contactProperties\") : 0} Contacts</CustomChip>\n <CustomChip bgColor=\"#F1F1F1\"> {getAllMappingCount(\"expressions\") ? getAllMappingCount(\"expressions\") : 0} Expressions</CustomChip>\n <CustomChip bgColor=\"#4A9CA626\" opacity={0.15}> {getAllMappingCount(\"property\") ? getAllMappingCount(\"property\") : 0} Properties</CustomChip>\n </Flex>\n </Flex>}\n </Box>\n )}\n </Flex>\n );\n};\n\nexport default Mapping;\n\nconst TabsContentComponent = ({\n value,\n searchInput,\n setSearchInput,\n fields,\n handleFieldValues,\n placeholder\n}: {\n value: string;\n searchInput: string;\n setSearchInput: React.Dispatch<React.SetStateAction<string>>;\n fields: any;\n handleFieldValues: (field: any, value: boolean) => void;\n placeholder: string;\n}) => {\n const mappingFields =\n fields &&\n fields.filter((field: any) =>\n field.name?.toLowerCase().includes(searchInput.toLowerCase())\n );\n\n return (\n <TabsContent value={value} css={{ padding: 0, position: \"relative\" }}>\n <Input\n leftIcon={<SearchIcon />}\n variant=\"filled\"\n placeholder={`Search ${placeholder}`}\n size=\"lg\"\n css={{ marginTop: \"$8\" }}\n value={searchInput}\n onChange={(event) => setSearchInput(event.currentTarget.value)}\n />\n <Flex\n css={{\n padding: \"$12 $4 $32 $4\",\n height: \"calc(100vh - 408px)\",\n overflow: \"auto\",\n \"& label\": {\n lineHeight: \"$sm\"\n }\n }}\n flexDirection=\"column\"\n gap=\"$6\"\n >\n {!!mappingFields.length ? (\n <>\n {mappingFields.map((field: any) => (\n <Checkbox\n size=\"sm\"\n checked={field.isEnabled}\n onChange={(value) => handleFieldValues(field, value as boolean)}\n >\n {field.name}\n </Checkbox>\n ))}\n </>\n ) : (\n <Flex\n alignItems=\"center\"\n justifyContent=\"center\"\n css={{ marginTop: \"$40\" }}\n >\n <Text size=\"sm\">{`No ${placeholder} available for this survey`}</Text>\n </Flex>\n )}\n </Flex>\n <Box\n css={{\n position: \"absolute\",\n top: \"88%\",\n height: \"$25\",\n width: \"100%\",\n background:\n \"linear-gradient(to top, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0))\"\n }}\n />\n </TabsContent>\n );\n};\n\n\nconst CustomChip = ({ children, bgColor, opacity }: { children: React.ReactNode, bgColor: string, opacity?: number }) => {\n return <Chip variant=\"solid\" css={{\n ...(opacity && {backgroundColor: bgColor }),\n ...(opacity && { backgroundColorOpacity: [bgColor, 0.3] }),\n background: bgColor,\n lineHeight: \"$sm\",\n fontWeight: \"$4\",\n fontFamily: \"'Roboto Mono', monospace !important\",\n }}>{children}</Chip>\n}"],"names":["_a","_b","_c","React","value"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mapping.js","sources":["../../../../src/single-mapping/components/mapping.tsx"],"sourcesContent":["import {\n Box,\n Checkbox,\n Chip,\n Flex,\n Heading,\n Input,\n Radio,\n RadioGroup,\n Tabs,\n TabsContent,\n TabsList,\n TabsTrigger,\n Text\n} from \"@sparrowengg/twigs-react\";\nimport React, { useEffect, useState } from \"react\";\nimport {\n surveySparrowURL,\n mappingTabValues,\n mappingPropertyValues\n} from \"../../commons/constants\";\nimport Spinner from \"../../commons/components/spinner\";\nimport {\n fetchSurveyQuestions,\n fetchSurveyVariables,\n fetchContactProperties,\n fetchSurveyExpression\n} from \"../../mapping/services\";\nimport { SearchIcon } from \"@sparrowengg/twigs-react-icons\";\n\nconst Mapping = ({\n surveyId,\n apiURL = surveySparrowURL,\n token,\n surveyProperties,\n importResponse,\n ssMappingData,\n setSSMappingData,\n editField,\n}: any) => {\n const [loader, setLoader] = useState(true);\n const [searchInput, setSearchInput] = useState(\"\");\n const [SSMappedFields, setSSMappedFields] = useState<any[]>([]);\n\n const modifiedMappingData = (mappingData: any, commonLabel: string, isEnabled: boolean = false) => {\n const fields = mappingData.map((data: any) => ({\n ...data,\n id: data?.id ?? data?.name,\n name: data?.rtxt ?? data?.name,\n isEnabled: data?.isEnabled ?? false\n }));\n fields.unshift({ id: \"ALL\", name: commonLabel, isEnabled: isEnabled });\n return fields;\n };\n\n const fetchInitalMappingData = async () => {\n setLoader(true);\n try {\n if(surveyProperties){\n const {questions, variables, contactProperties, expressions, property} = surveyProperties\n setSSMappingData({\n questions: questions?.length ? modifiedMappingData(questions, \"Select all Questions\") : [],\n contactProperties: contactProperties?.length ? modifiedMappingData(\n contactProperties,\n \"Select all Contact Properties\"\n ) : [],\n variables: variables?.length ? modifiedMappingData(variables, \"Select all Variables\") : [],\n expressions: expressions?.length ? modifiedMappingData(expressions, \"Select all Expressions\") : [],\n property: property?.length ? modifiedMappingData(property, \"Select all Properties\") : []\n });\n } else {\n const [questions, variables, contactProperties, expressions] =\n await Promise.all([\n fetchSurveyQuestions(apiURL, surveyId, token),\n fetchSurveyVariables(apiURL, surveyId, token),\n fetchContactProperties(apiURL, token),\n fetchSurveyExpression(apiURL, surveyId, token)\n ]);\n setSSMappingData({\n questions: questions?.length ? modifiedMappingData(questions, \"Select all Questions\") : [],\n contactProperties: contactProperties?.length ? modifiedMappingData(\n contactProperties,\n \"Select all Contact Properties\"\n ) : [],\n variables: variables?.length ? modifiedMappingData(variables, \"Select all Variables\") : [],\n expressions: expressions?.length ? modifiedMappingData(expressions, \"Select all Expressions\") : [],\n property: mappingPropertyValues?.length ? modifiedMappingData(mappingPropertyValues, \"Select all Properties\") : []\n });\n }\n } catch (error) {\n console.error(error);\n } finally {\n setLoader(false);\n }\n };\n\n const handleFieldValues = (\n type: string,\n id: string | number,\n value: boolean\n ) => {\n if (id === \"ALL\") {\n setSSMappingData((prev: any) => ({\n ...prev,\n [type]: prev[type]?.map((mapping: any) => {\n return { ...mapping, isEnabled: value };\n })\n }));\n } else {\n let modifiedMappedField = ssMappingData[type]?.map((mapping: any) => {\n if (mapping?.id === id) {\n return { ...mapping, isEnabled: value };\n }\n return { ...mapping };\n });\n if (\n modifiedMappedField\n .filter((field: any) => field?.id !== \"ALL\")\n .every((field: any) => field.isEnabled)\n ) {\n modifiedMappedField = modifiedMappedField.map((field: any) => ({\n ...field,\n isEnabled: true\n }));\n } else {\n modifiedMappedField = modifiedMappedField.map((field: any) => {\n if (field?.id === \"ALL\") {\n return { ...field, isEnabled: false };\n }\n return field;\n });\n }\n\n const mappedFields = {\n ...ssMappingData,\n [type]: modifiedMappedField\n };\n setSSMappingData(mappedFields);\n importResponse.onChangeHandler({\n id: \"mappedFields\",\n value: mappedFields\n });\n }\n };\n\n const getMappingCount = (mappingField: any) => {\n let count = 0;\n const mappedField = ssMappingData[mappingField];\n mappedField?.forEach((field: any) => {\n if (field?.id !== \"ALL\" && field.isEnabled) count += 1;\n });\n return count;\n };\n const getAllMappingCount = (mappingField: any) => {\n const mappedField = ssMappingData[mappingField];\n return mappedField?.length;\n };\n\n useEffect(() => {\n if (!editField?.id) {\n fetchInitalMappingData();\n } else if (!!editField?.id) {\n const { fieldValues: {\n mappedFields\n } } = editField;\n if(importResponse?.value?.ImportMethod === \"SELECTED_DATA\"){\n setSSMappingData({\n questions: mappedFields.questions.length ? mappedFields.questions.some((question: any) => question.id === \"ALL\") ? mappedFields.questions : mappedFields.questions.length ? modifiedMappingData(mappedFields.questions, \"Select all Questions\", mappedFields.questions.every((question: any) => question.isEnabled)) : [] : [],\n variables: mappedFields.variables.length ? mappedFields.variables.some((variable: any) => variable.id === \"ALL\") ? mappedFields.variables : mappedFields.variables.length ? modifiedMappingData(mappedFields.variables, \"Select all Variables\", mappedFields.variables.every((variable: any) => variable.isEnabled)) : [] : [],\n contactProperties: mappedFields.contactProperties.length ? mappedFields.contactProperties.some((contactProperty: any) => contactProperty.id === \"ALL\") ? mappedFields.contactProperties : mappedFields.contactProperties.length ? modifiedMappingData(mappedFields.contactProperties, \"Select all Contact Properties\", mappedFields.contactProperties.every((contactProperty: any) => contactProperty.isEnabled)) : [] : [],\n expressions: mappedFields.expressions.length ? mappedFields.expressions.some((expression: any) => expression.id === \"ALL\") ? mappedFields.expressions : mappedFields.expressions.length ? modifiedMappingData(mappedFields.expressions, \"Select all Expressions\", mappedFields.expressions.every((expression: any) => expression.isEnabled)) : [] : [],\n property: mappedFields.property.length ? mappedFields.property.some((property: any) => property.id === \"ALL\") ? mappedFields.property : mappedFields.property.length ? modifiedMappingData(mappedFields.property, \"Select all Properties\", mappedFields.property.every((property: any) => property.isEnabled)) : [] : []\n });\n } else {\n const {questions, variables, contactProperties, expressions, property} = surveyProperties\n setSSMappingData({\n questions: questions?.length ? questions : [],\n contactProperties: contactProperties?.length ? contactProperties : [],\n variables: variables?.length ? variables : [],\n expressions: expressions?.length ? expressions : [],\n property: property?.length ? property : []\n });\n }\n \n setLoader(false);\n } else {\n setLoader(false);\n }\n }, [token, surveyId]);\n\n\n useEffect(() => {\n if(importResponse?.value?.ImportMethod === \"SELECTED_DATA\"){\n if(!!editField?.id){\n setSSMappingData({\n questions: editField.fieldValues.mappedFields.questions,\n variables: editField.fieldValues.mappedFields.variables,\n contactProperties: editField.fieldValues.mappedFields.contactProperties,\n expressions: editField.fieldValues.mappedFields.expressions,\n property: editField.fieldValues.mappedFields.property\n })} else {\n setSSMappingData({\n questions: ssMappingData.questions.some((question: any) => question.id === \"ALL\") ? ssMappingData.questions : ssMappingData.questions.length ? modifiedMappingData(ssMappingData.questions, \"Select all Questions\") : [],\n variables: ssMappingData.variables.some((variable: any) => variable.id === \"ALL\") ? ssMappingData.variables : ssMappingData.variables.length ? modifiedMappingData(ssMappingData.variables, \"Select all Variables\") : [],\n contactProperties: ssMappingData.contactProperties.some((contactProperty: any) => contactProperty.id === \"ALL\") ? ssMappingData.contactProperties : ssMappingData.contactProperties.length ? modifiedMappingData(ssMappingData.contactProperties, \"Select all Contact Properties\") : [],\n expressions: ssMappingData.expressions.some((expression: any) => expression.id === \"ALL\") ? ssMappingData.expressions : ssMappingData.expressions.length ? modifiedMappingData(ssMappingData.expressions, \"Select all Expressions\") : [],\n property: ssMappingData.property.some((property: any) => property.id === \"ALL\") ? ssMappingData.property : ssMappingData.property.length ? modifiedMappingData(ssMappingData.property, \"Select all Properties\") : []\n })\n }\n }\n }, [importResponse?.value?.ImportMethod])\n\n\n\n\n useEffect(() => {\n if (ssMappingData?.questions?.length || ssMappingData?.variables?.length || ssMappingData?.contactProperties?.length || ssMappingData?.expressions?.length || ssMappingData?.property?.length) {\n const updatedFieldValues = Object.keys(ssMappingData).reduce((acc: any, key: any) => {\n acc[key] = ssMappingData[key].map((field: any) => {\n if(importResponse?.value?.ImportMethod === \"SELECTED_DATA\"){\n return { ...field, isEnabled: field?.isEnabled };\n } else {\n if (field?.id !== \"ALL\") {\n return { ...field, isEnabled: true };\n }\n return field;\n }\n });\n return acc;\n }, {});\n setSSMappedFields(updatedFieldValues);\n if (importResponse?.value?.ImportMethod === \"SEND_ALL_DATA\") {\n importResponse.onChangeHandler({\n id: \"mappedFields\",\n value: updatedFieldValues\n })\n } else {\n importResponse.onChangeHandler({\n id: \"mappedFields\",\n value: ssMappingData\n })\n }\n }\n }, [ssMappingData]);\n\n return (\n <Flex alignItems=\"center\" justifyContent=\"center\">\n {loader ? (\n <Flex\n alignItems=\"center\"\n justifyContent=\"center\"\n css={{ height: \"calc(100vh - 57px)\" }}\n >\n <Spinner />\n </Flex>\n ) : (\n <Box css={{ maxWidth: 600, width: \"100%\", marginBlock: \"$40\" }}>\n {importResponse?.hasImportResponse ? (\n <Flex flexDirection=\"column\">\n <Heading size=\"h5\" css={{\n color: \"$neutral900\"\n }}>Select Import Data</Heading>\n <RadioGroup\n defaultValue={importResponse?.value?.ImportMethod}\n onChange={(value) => {\n importResponse.onChangeHandler({\n id: \"ImportMethod\",\n value: value\n })\n if (value === \"SEND_ALL_DATA\") {\n importResponse.onChangeHandler({\n id: \"mappedFields\",\n value: SSMappedFields\n })\n }\n }}\n >\n <Flex\n alignItems=\"center\"\n gap=\"$20\"\n css={{\n marginTop: \"$9\",\n \"& label\": { color: \"$neutral800\", cursor: \"pointer\" },\n \n }}\n >\n <Radio size=\"md\" value=\"SEND_ALL_DATA\" css={{\n cursor: \"pointer\"\n }}>\n Send all data\n </Radio>\n <Radio size=\"md\" value=\"SELECTED_DATA\" css={{\n cursor: \"pointer\"\n }}>\n Send selected data\n </Radio>\n\n </Flex>\n </RadioGroup>\n </Flex>\n ) : null}\n {importResponse?.value?.ImportMethod === \"SELECTED_DATA\" ? (\n <Box css={{ marginTop: \"$24\" }}>\n <Tabs defaultValue=\"QUESTIONS\">\n <TabsList\n css={{\n borderBottom: \"$borderWidths$xs solid $neutral200\"\n }}\n >\n {mappingTabValues.map((tab) => (\n <TabsTrigger\n key={tab?.id}\n value={tab?.value}\n onClick={() => setSearchInput(\"\")}\n >\n <Text size=\"sm\" >\n {tab.name}\n </Text>\n {!!getMappingCount(tab.placeholder) && (\n <Chip css={{ marginLeft: \"$2\", borderRadius: \"5px\", color: \"$neutral800\" }} variant=\"outline\" rounded=\"sm\">\n {getMappingCount(tab.placeholder)}\n </Chip>\n )}\n </TabsTrigger>\n ))}\n </TabsList>\n <TabsContentComponent\n searchInput={searchInput}\n setSearchInput={setSearchInput}\n value=\"QUESTIONS\"\n placeholder=\"Questions\"\n fields={ssMappingData.questions}\n handleFieldValues={(field: any, value: boolean) =>\n handleFieldValues(\"questions\", field?.id, value)\n }\n />\n <TabsContentComponent\n searchInput={searchInput}\n setSearchInput={setSearchInput}\n fields={ssMappingData.variables}\n value=\"VARIABLE\"\n placeholder=\"Variables\"\n handleFieldValues={(field: any, value: boolean) =>\n handleFieldValues(\"variables\", field?.id, value)\n }\n />\n <TabsContentComponent\n fields={ssMappingData.contactProperties}\n searchInput={searchInput}\n setSearchInput={setSearchInput}\n value=\"CONTACT\"\n placeholder=\"Contacts\"\n handleFieldValues={(field, value) =>\n handleFieldValues(\"contactProperties\", field?.id, value)\n }\n />\n <TabsContentComponent\n searchInput={searchInput}\n setSearchInput={setSearchInput}\n value=\"EXPRESSION\"\n placeholder=\"Expressions\"\n fields={ssMappingData.expressions}\n handleFieldValues={(field, value) =>\n handleFieldValues(\"expressions\", field?.id, value)\n }\n />\n <TabsContentComponent\n value=\"PROPERTY\"\n searchInput={searchInput}\n setSearchInput={setSearchInput}\n placeholder=\"Properties\"\n fields={ssMappingData.property}\n handleFieldValues={(field: any, value: boolean) =>\n handleFieldValues(\"property\", field?.id, value)\n }\n />\n </Tabs>\n </Box>\n ) : <Flex css={{ marginTop: \"$16\" }} alignItems=\"center\" gap=\"$6\">\n\n <Text size=\"sm\" weight=\"regular\" css={{ width: \"90px\", color: \"$neutral900\" }}>\n This Includes:\n </Text>\n <Flex alignItems=\"center\" gap=\"$4\">\n {getAllMappingCount(\"questions\") - 1 > 0 ? <CustomChip bgColor=\"#E5F2FF\"> {getAllMappingCount(\"questions\") - 1} Questions</CustomChip> : null}\n {getAllMappingCount(\"variables\") - 1 > 0 ? <CustomChip bgColor=\"#E8F4E3\"> {getAllMappingCount(\"variables\") - 1} Variables</CustomChip> : null}\n {getAllMappingCount(\"contactProperties\") - 1 > 0 ? <CustomChip bgColor=\"#FDEDE8\"> {getAllMappingCount(\"contactProperties\") - 1} Contacts</CustomChip> : null}\n {getAllMappingCount(\"expressions\") - 1 > 0 ? <CustomChip bgColor=\"#F1F1F1\"> {getAllMappingCount(\"expressions\") - 1} Expressions</CustomChip> : null}\n {getAllMappingCount(\"property\") - 1 > 0 ? <CustomChip bgColor=\"#4A9CA626\"> {getAllMappingCount(\"property\") - 1} Properties</CustomChip> : null}\n </Flex>\n </Flex>}\n </Box>\n )}\n </Flex>\n );\n};\n\nexport default Mapping;\n\nconst TabsContentComponent = ({\n value,\n searchInput,\n setSearchInput,\n fields,\n handleFieldValues,\n placeholder\n}: {\n value: string;\n searchInput: string;\n setSearchInput: React.Dispatch<React.SetStateAction<string>>;\n fields: any;\n handleFieldValues: (field: any, value: boolean) => void;\n placeholder: string;\n}) => {\n const mappingFields =\n fields &&\n fields.filter((field: any) =>\n field.name?.toLowerCase().includes(searchInput.toLowerCase())\n );\n\n return (\n <TabsContent value={value} css={{ padding: 0, position: \"relative\" }}>\n <Input\n leftIcon={<SearchIcon color=\"#848484\" />}\n variant=\"filled\"\n placeholder={`Search ${placeholder}`}\n size=\"lg\"\n css={{ marginTop: \"$8\" }}\n value={searchInput}\n onChange={(event) => setSearchInput(event.currentTarget.value)}\n />\n <Flex\n css={{\n padding: \"$8 $4 $32 $4\",\n marginTop: \"$8\",\n height: \"calc(100vh - 408px)\",\n overflow: \"auto\",\n scrollbarWidth: \"thin\",\n \"&::-webkit-scrollbar\": {\n width: \"4px\"\n },\n \"& label\": {\n lineHeight: \"$sm\"\n }\n }}\n flexDirection=\"column\"\n gap=\"$8\"\n >\n {mappingFields?.length > 1 ? (\n <>\n {mappingFields.map((field: any) => (\n <Box css={{\n label: {\n color: \"$neutral900\",\n fontSize: \"$sm\",\n maxWidth: \"520px\",\n display: \"block\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n whiteSpace: \"nowrap\",\n }\n }}>\n <Checkbox\n size=\"sm\"\n checked={field.isEnabled}\n onChange={(value) => handleFieldValues(field, value as boolean)}\n >\n {field.name}\n </Checkbox>\n </Box>\n ))}\n </>\n ) : (\n <Flex\n alignItems=\"center\"\n justifyContent=\"center\"\n css={{ marginTop: \"$40\" }}\n >\n <Text size=\"sm\">No Results Found</Text>\n </Flex>\n )}\n </Flex>\n <Box\n css={{\n position: \"absolute\",\n top: \"88%\",\n height: \"$25\",\n width: \"100%\",\n background:\n \"linear-gradient(to top, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0))\"\n }}\n />\n </TabsContent>\n );\n};\n\n\nconst CustomChip = ({ children, bgColor, opacity }: { children: React.ReactNode, bgColor: string, opacity?: number }) => {\n return <Chip variant=\"solid\" css={{\n ...(opacity && {backgroundColor: bgColor }),\n ...(opacity && { backgroundColorOpacity: [bgColor, 0.3] }),\n background: bgColor,\n lineHeight: \"$sm\",\n fontWeight: \"$4\",\n fontFamily: \"'Roboto Mono', monospace !important\",\n }}>{children}</Chip>\n}"],"names":["_a","_b","_c","React","value"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BA,MAAM,UAAU,CAAC;AAAA,EACf,QAAA;AAAA,EACA,MAAS,GAAA,gBAAA;AAAA,EACT,KAAA;AAAA,EACA,gBAAA;AAAA,EACA,cAAA;AAAA,EACA,aAAA;AAAA,EACA,gBAAA;AAAA,EACA,SAAA;AACF,CAAW,KAAA;AAvCX,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,CAAA;AAwCE,EAAA,MAAM,CAAC,MAAA,EAAQ,SAAS,CAAA,GAAI,SAAS,IAAI,CAAA,CAAA;AACzC,EAAA,MAAM,CAAC,WAAA,EAAa,cAAc,CAAA,GAAI,SAAS,EAAE,CAAA,CAAA;AACjD,EAAA,MAAM,CAAC,cAAgB,EAAA,iBAAiB,CAAI,GAAA,QAAA,CAAgB,EAAE,CAAA,CAAA;AAE9D,EAAA,MAAM,mBAAsB,GAAA,CAAC,WAAkB,EAAA,WAAA,EAAqB,YAAqB,KAAU,KAAA;AACjG,IAAA,MAAM,MAAS,GAAA,WAAA,CAAY,GAAI,CAAA,CAAC,IAAW,KAAA;AA7C/C,MAAA,IAAAA,KAAAC,GAAAC,EAAAA,GAAAA,CAAAA;AA6CmD,MAAA,OAAA,aAAA,CAAA,cAAA,CAAA,EAAA,EAC1C,IAD0C,CAAA,EAAA;AAAA,QAE7C,KAAIF,GAAA,GAAA,IAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,IAAA,CAAM,EAAN,KAAA,IAAA,GAAAA,MAAY,IAAM,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,IAAA,CAAA,IAAA;AAAA,QACtB,OAAMC,GAAA,GAAA,IAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,IAAA,CAAM,IAAN,KAAA,IAAA,GAAAA,MAAc,IAAM,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,IAAA,CAAA,IAAA;AAAA,QAC1B,SAAWC,EAAAA,CAAAA,GAAAA,GAAA,IAAM,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,IAAA,CAAA,SAAA,KAAN,OAAAA,GAAmB,GAAA,KAAA;AAAA,OAChC,CAAA,CAAA;AAAA,KAAE,CAAA,CAAA;AACF,IAAA,MAAA,CAAO,QAAQ,EAAE,EAAA,EAAI,OAAO,IAAM,EAAA,WAAA,EAAa,WAAsB,CAAA,CAAA;AACrE,IAAO,OAAA,MAAA,CAAA;AAAA,GACT,CAAA;AAEA,EAAA,MAAM,yBAAyB,YAAY;AAvD7C,IAAAF,IAAAA,GAAAA,CAAAA;AAwDI,IAAA,SAAA,CAAU,IAAI,CAAA,CAAA;AACd,IAAI,IAAA;AACJ,MAAA,IAAG,gBAAiB,EAAA;AAClB,QAAA,MAAM,EAAC,SAAW,EAAA,SAAA,EAAW,iBAAmB,EAAA,WAAA,EAAa,UAAY,GAAA,gBAAA,CAAA;AACzE,QAAiB,gBAAA,CAAA;AAAA,UACf,YAAW,SAAW,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,SAAA,CAAA,MAAA,IAAS,oBAAoB,SAAW,EAAA,sBAAsB,IAAI,EAAC;AAAA,UACzF,iBAAA,EAAA,CAAmB,uDAAmB,MAAS,IAAA,mBAAA;AAAA,YAC7C,iBAAA;AAAA,YACA,+BAAA;AAAA,cACE,EAAC;AAAA,UACL,YAAW,SAAW,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,SAAA,CAAA,MAAA,IAAS,oBAAoB,SAAW,EAAA,sBAAsB,IAAI,EAAC;AAAA,UACzF,cAAa,WAAa,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,WAAA,CAAA,MAAA,IAAS,oBAAoB,WAAa,EAAA,wBAAwB,IAAI,EAAC;AAAA,UACjG,WAAU,QAAU,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,QAAA,CAAA,MAAA,IAAS,oBAAoB,QAAU,EAAA,uBAAuB,IAAI,EAAC;AAAA,SACxF,CAAA,CAAA;AAAA,OACI,MAAA;AACL,QAAM,MAAA,CAAC,WAAW,SAAW,EAAA,iBAAA,EAAmB,WAAW,CACzD,GAAA,MAAM,QAAQ,GAAI,CAAA;AAAA,UAChB,oBAAA,CAAqB,MAAQ,EAAA,QAAA,EAAU,KAAK,CAAA;AAAA,UAC5C,oBAAA,CAAqB,MAAQ,EAAA,QAAA,EAAU,KAAK,CAAA;AAAA,UAC5C,sBAAA,CAAuB,QAAQ,KAAK,CAAA;AAAA,UACpC,qBAAA,CAAsB,MAAQ,EAAA,QAAA,EAAU,KAAK,CAAA;AAAA,SAC9C,CAAA,CAAA;AACH,QAAiB,gBAAA,CAAA;AAAA,UACf,YAAW,SAAW,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,SAAA,CAAA,MAAA,IAAS,oBAAoB,SAAW,EAAA,sBAAsB,IAAI,EAAC;AAAA,UACzF,iBAAA,EAAA,CAAmB,uDAAmB,MAAS,IAAA,mBAAA;AAAA,YAC7C,iBAAA;AAAA,YACA,+BAAA;AAAA,cACE,EAAC;AAAA,UACL,YAAW,SAAW,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,SAAA,CAAA,MAAA,IAAS,oBAAoB,SAAW,EAAA,sBAAsB,IAAI,EAAC;AAAA,UACzF,cAAa,WAAa,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,WAAA,CAAA,MAAA,IAAS,oBAAoB,WAAa,EAAA,wBAAwB,IAAI,EAAC;AAAA,UACjG,QAAA,EAAA,CAAA,CAAUA,MAAA,qBAAAA,KAAAA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,GAAAA,CAAuB,UAAS,mBAAoB,CAAA,qBAAA,EAAuB,uBAAuB,CAAA,GAAI,EAAC;AAAA,SAClH,CAAA,CAAA;AAAA,OACH;AAAA,aACS,KAAO,EAAA;AACd,MAAA,OAAA,CAAQ,MAAM,KAAK,CAAA,CAAA;AAAA,KACnB,SAAA;AACA,MAAA,SAAA,CAAU,KAAK,CAAA,CAAA;AAAA,KACjB;AAAA,GACF,CAAA;AAEA,EAAA,MAAM,iBAAoB,GAAA,CACxB,IACA,EAAA,EAAA,EACA,KACG,KAAA;AApGP,IAAAA,IAAAA,GAAAA,CAAAA;AAqGI,IAAA,IAAI,OAAO,KAAO,EAAA;AAChB,MAAA,gBAAA,CAAiB,CAAC,IAAW,KAAA;AAtGnC,QAAAA,IAAAA,GAAAA,CAAAA;AAsGuC,QAAA,OAAA,aAAA,CAAA,cAAA,CAAA,EAAA,EAC5B,IAD4B,CAAA,EAAA;AAAA,UAE/B,CAAC,IAAI,GAAA,CAAGA,GAAA,GAAA,IAAA,CAAK,IAAI,CAAA,KAAT,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,GAAAA,CAAY,GAAI,CAAA,CAAC,OAAiB,KAAA;AACxC,YAAA,OAAO,aAAK,CAAA,cAAA,CAAA,EAAA,EAAA,OAAA,CAAA,EAAL,EAAc,SAAA,EAAW,KAAM,EAAA,CAAA,CAAA;AAAA,WACxC,CAAA;AAAA,SACF,CAAA,CAAA;AAAA,OAAE,CAAA,CAAA;AAAA,KACG,MAAA;AACL,MAAI,IAAA,mBAAA,GAAA,CAAsBA,MAAA,aAAc,CAAA,IAAI,MAAlB,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,GAAAA,CAAqB,GAAI,CAAA,CAAC,OAAiB,KAAA;AACnE,QAAI,IAAA,CAAA,OAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,OAAA,CAAS,QAAO,EAAI,EAAA;AACtB,UAAA,OAAO,aAAK,CAAA,cAAA,CAAA,EAAA,EAAA,OAAA,CAAA,EAAL,EAAc,SAAA,EAAW,KAAM,EAAA,CAAA,CAAA;AAAA,SACxC;AACA,QAAA,OAAO,cAAK,CAAA,EAAA,EAAA,OAAA,CAAA,CAAA;AAAA,OACd,CAAA,CAAA;AACA,MAAA,IACE,mBACG,CAAA,MAAA,CAAO,CAAC,KAAA,KAAA,CAAe,KAAO,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAA,EAAA,MAAO,KAAK,CAAA,CAC1C,KAAM,CAAA,CAAC,KAAe,KAAA,KAAA,CAAM,SAAS,CACxC,EAAA;AACA,QAAA,mBAAA,GAAsB,mBAAoB,CAAA,GAAA,CAAI,CAAC,KAAA,KAAgB,iCAC1D,KAD0D,CAAA,EAAA;AAAA,UAE7D,SAAW,EAAA,IAAA;AAAA,SACX,CAAA,CAAA,CAAA;AAAA,OACG,MAAA;AACL,QAAsB,mBAAA,GAAA,mBAAA,CAAoB,GAAI,CAAA,CAAC,KAAe,KAAA;AAC5D,UAAI,IAAA,CAAA,KAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAO,QAAO,KAAO,EAAA;AACvB,YAAA,OAAO,aAAK,CAAA,cAAA,CAAA,EAAA,EAAA,KAAA,CAAA,EAAL,EAAY,SAAA,EAAW,KAAM,EAAA,CAAA,CAAA;AAAA,WACtC;AACA,UAAO,OAAA,KAAA,CAAA;AAAA,SACR,CAAA,CAAA;AAAA,OACH;AAEA,MAAM,MAAA,YAAA,GAAe,iCAChB,aADgB,CAAA,EAAA;AAAA,QAEnB,CAAC,IAAI,GAAG,mBAAA;AAAA,OACV,CAAA,CAAA;AACA,MAAA,gBAAA,CAAiB,YAAY,CAAA,CAAA;AAC7B,MAAA,cAAA,CAAe,eAAgB,CAAA;AAAA,QAC7B,EAAI,EAAA,cAAA;AAAA,QACJ,KAAO,EAAA,YAAA;AAAA,OACR,CAAA,CAAA;AAAA,KACH;AAAA,GACF,CAAA;AAEA,EAAM,MAAA,eAAA,GAAkB,CAAC,YAAsB,KAAA;AAC7C,IAAA,IAAI,KAAQ,GAAA,CAAA,CAAA;AACZ,IAAM,MAAA,WAAA,GAAc,cAAc,YAAY,CAAA,CAAA;AAC9C,IAAa,WAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,WAAA,CAAA,OAAA,CAAQ,CAAC,KAAe,KAAA;AACnC,MAAI,IAAA,CAAA,KAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAO,EAAO,MAAA,KAAA,IAAS,KAAM,CAAA,SAAA;AAAW,QAAS,KAAA,IAAA,CAAA,CAAA;AAAA,KACvD,CAAA,CAAA;AACA,IAAO,OAAA,KAAA,CAAA;AAAA,GACT,CAAA;AACA,EAAM,MAAA,kBAAA,GAAqB,CAAC,YAAsB,KAAA;AAChD,IAAM,MAAA,WAAA,GAAc,cAAc,YAAY,CAAA,CAAA;AAC9C,IAAA,OAAO,WAAa,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,WAAA,CAAA,MAAA,CAAA;AAAA,GACtB,CAAA;AAEA,EAAA,SAAA,CAAU,MAAM;AA9JlB,IAAAA,IAAAA,GAAAA,CAAAA;AA+JI,IAAI,IAAA,EAAC,uCAAW,EAAI,CAAA,EAAA;AAClB,MAAuB,sBAAA,EAAA,CAAA;AAAA,KACd,MAAA,IAAA,CAAC,EAAC,SAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,SAAA,CAAW,EAAI,CAAA,EAAA;AAC1B,MAAA,MAAM,EAAE,WAAa,EAAA;AAAA,QACnB,YAAA;AAAA,SACI,GAAA,SAAA,CAAA;AACN,MAAA,IAAA,CAAA,CAAGA,MAAA,cAAgB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,cAAA,CAAA,KAAA,KAAhB,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,GAAAA,CAAuB,kBAAiB,eAAgB,EAAA;AACzD,QAAiB,gBAAA,CAAA;AAAA,UACf,SAAW,EAAA,YAAA,CAAa,SAAU,CAAA,MAAA,GAAS,aAAa,SAAU,CAAA,IAAA,CAAK,CAAC,QAAA,KAAkB,QAAS,CAAA,EAAA,KAAO,KAAK,CAAA,GAAI,aAAa,SAAY,GAAA,YAAA,CAAa,SAAU,CAAA,MAAA,GAAS,mBAAoB,CAAA,YAAA,CAAa,SAAW,EAAA,sBAAA,EAAwB,aAAa,SAAU,CAAA,KAAA,CAAM,CAAC,QAAA,KAAkB,SAAS,SAAS,CAAC,CAAI,GAAA,KAAK,EAAC;AAAA,UAC7T,SAAW,EAAA,YAAA,CAAa,SAAU,CAAA,MAAA,GAAS,aAAa,SAAU,CAAA,IAAA,CAAK,CAAC,QAAA,KAAkB,QAAS,CAAA,EAAA,KAAO,KAAK,CAAA,GAAI,aAAa,SAAY,GAAA,YAAA,CAAa,SAAU,CAAA,MAAA,GAAS,mBAAoB,CAAA,YAAA,CAAa,SAAW,EAAA,sBAAA,EAAwB,aAAa,SAAU,CAAA,KAAA,CAAM,CAAC,QAAA,KAAkB,SAAS,SAAS,CAAC,CAAI,GAAA,KAAK,EAAC;AAAA,UAC7T,iBAAmB,EAAA,YAAA,CAAa,iBAAkB,CAAA,MAAA,GAAS,aAAa,iBAAkB,CAAA,IAAA,CAAK,CAAC,eAAA,KAAyB,eAAgB,CAAA,EAAA,KAAO,KAAK,CAAA,GAAI,aAAa,iBAAoB,GAAA,YAAA,CAAa,iBAAkB,CAAA,MAAA,GAAS,mBAAoB,CAAA,YAAA,CAAa,iBAAmB,EAAA,+BAAA,EAAiC,aAAa,iBAAkB,CAAA,KAAA,CAAM,CAAC,eAAA,KAAyB,gBAAgB,SAAS,CAAC,CAAI,GAAA,KAAK,EAAC;AAAA,UAC1Z,WAAa,EAAA,YAAA,CAAa,WAAY,CAAA,MAAA,GAAS,aAAa,WAAY,CAAA,IAAA,CAAK,CAAC,UAAA,KAAoB,UAAW,CAAA,EAAA,KAAO,KAAK,CAAA,GAAI,aAAa,WAAc,GAAA,YAAA,CAAa,WAAY,CAAA,MAAA,GAAS,mBAAoB,CAAA,YAAA,CAAa,WAAa,EAAA,wBAAA,EAA0B,aAAa,WAAY,CAAA,KAAA,CAAM,CAAC,UAAA,KAAoB,WAAW,SAAS,CAAC,CAAI,GAAA,KAAK,EAAC;AAAA,UACrV,QAAU,EAAA,YAAA,CAAa,QAAS,CAAA,MAAA,GAAS,aAAa,QAAS,CAAA,IAAA,CAAK,CAAC,QAAA,KAAkB,QAAS,CAAA,EAAA,KAAO,KAAK,CAAA,GAAI,aAAa,QAAW,GAAA,YAAA,CAAa,QAAS,CAAA,MAAA,GAAS,mBAAoB,CAAA,YAAA,CAAa,QAAU,EAAA,uBAAA,EAAyB,aAAa,QAAS,CAAA,KAAA,CAAM,CAAC,QAAA,KAAkB,SAAS,SAAS,CAAC,CAAI,GAAA,KAAK,EAAC;AAAA,SACxT,CAAA,CAAA;AAAA,OACI,MAAA;AACL,QAAA,MAAM,EAAC,SAAW,EAAA,SAAA,EAAW,iBAAmB,EAAA,WAAA,EAAa,UAAY,GAAA,gBAAA,CAAA;AACzE,QAAiB,gBAAA,CAAA;AAAA,UACf,SAAW,EAAA,CAAA,SAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,SAAA,CAAW,MAAS,IAAA,SAAA,GAAY,EAAC;AAAA,UAC5C,iBAAmB,EAAA,CAAA,iBAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,iBAAA,CAAmB,MAAS,IAAA,iBAAA,GAAoB,EAAC;AAAA,UACpE,SAAW,EAAA,CAAA,SAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,SAAA,CAAW,MAAS,IAAA,SAAA,GAAY,EAAC;AAAA,UAC5C,WAAa,EAAA,CAAA,WAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,WAAA,CAAa,MAAS,IAAA,WAAA,GAAc,EAAC;AAAA,UAClD,QAAU,EAAA,CAAA,QAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,QAAA,CAAU,MAAS,IAAA,QAAA,GAAW,EAAC;AAAA,SAC1C,CAAA,CAAA;AAAA,OACH;AAEA,MAAA,SAAA,CAAU,KAAK,CAAA,CAAA;AAAA,KACV,MAAA;AACL,MAAA,SAAA,CAAU,KAAK,CAAA,CAAA;AAAA,KACjB;AAAA,GACC,EAAA,CAAC,KAAO,EAAA,QAAQ,CAAC,CAAA,CAAA;AAGpB,EAAA,SAAA,CAAU,MAAM;AA/LlB,IAAAA,IAAAA,GAAAA,CAAAA;AAgMI,IAAA,IAAA,CAAA,CAAGA,MAAA,cAAgB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,cAAA,CAAA,KAAA,KAAhB,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,GAAAA,CAAuB,kBAAiB,eAAgB,EAAA;AACzD,MAAG,IAAA,CAAC,EAAC,SAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,SAAA,CAAW,EAAG,CAAA,EAAA;AACnB,QAAiB,gBAAA,CAAA;AAAA,UACf,SAAA,EAAW,SAAU,CAAA,WAAA,CAAY,YAAa,CAAA,SAAA;AAAA,UAC9C,SAAA,EAAW,SAAU,CAAA,WAAA,CAAY,YAAa,CAAA,SAAA;AAAA,UAC9C,iBAAA,EAAmB,SAAU,CAAA,WAAA,CAAY,YAAa,CAAA,iBAAA;AAAA,UACtD,WAAA,EAAa,SAAU,CAAA,WAAA,CAAY,YAAa,CAAA,WAAA;AAAA,UAChD,QAAA,EAAU,SAAU,CAAA,WAAA,CAAY,YAAa,CAAA,QAAA;AAAA,SAC9C,CAAA,CAAA;AAAA,OAAQ,MAAA;AACP,QAAiB,gBAAA,CAAA;AAAA,UACf,SAAA,EAAW,cAAc,SAAU,CAAA,IAAA,CAAK,CAAC,QAAkB,KAAA,QAAA,CAAS,OAAO,KAAK,CAAA,GAAI,cAAc,SAAY,GAAA,aAAA,CAAc,UAAU,MAAS,GAAA,mBAAA,CAAoB,cAAc,SAAW,EAAA,sBAAsB,IAAI,EAAC;AAAA,UACvN,SAAA,EAAW,cAAc,SAAU,CAAA,IAAA,CAAK,CAAC,QAAkB,KAAA,QAAA,CAAS,OAAO,KAAK,CAAA,GAAI,cAAc,SAAY,GAAA,aAAA,CAAc,UAAU,MAAS,GAAA,mBAAA,CAAoB,cAAc,SAAW,EAAA,sBAAsB,IAAI,EAAC;AAAA,UACvN,iBAAA,EAAmB,cAAc,iBAAkB,CAAA,IAAA,CAAK,CAAC,eAAyB,KAAA,eAAA,CAAgB,OAAO,KAAK,CAAA,GAAI,cAAc,iBAAoB,GAAA,aAAA,CAAc,kBAAkB,MAAS,GAAA,mBAAA,CAAoB,cAAc,iBAAmB,EAAA,+BAA+B,IAAI,EAAC;AAAA,UACtR,WAAA,EAAa,cAAc,WAAY,CAAA,IAAA,CAAK,CAAC,UAAoB,KAAA,UAAA,CAAW,OAAO,KAAK,CAAA,GAAI,cAAc,WAAc,GAAA,aAAA,CAAc,YAAY,MAAS,GAAA,mBAAA,CAAoB,cAAc,WAAa,EAAA,wBAAwB,IAAI,EAAC;AAAA,UACvO,QAAA,EAAU,cAAc,QAAS,CAAA,IAAA,CAAK,CAAC,QAAkB,KAAA,QAAA,CAAS,OAAO,KAAK,CAAA,GAAI,cAAc,QAAW,GAAA,aAAA,CAAc,SAAS,MAAS,GAAA,mBAAA,CAAoB,cAAc,QAAU,EAAA,uBAAuB,IAAI,EAAC;AAAA,SACpN,CAAA,CAAA;AAAA,OACH;AAAA,KACF;AAAA,KACC,CAAC,CAAA,EAAA,GAAA,cAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,cAAA,CAAgB,KAAhB,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAuB,YAAY,CAAC,CAAA,CAAA;AAKxC,EAAA,SAAA,CAAU,MAAM;AAvNlB,IAAAA,IAAAA,GAAAA,EAAAC,KAAAC,GAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,CAAA;AAwNI,IAAIF,IAAAA,CAAAA,CAAAA,GAAAA,GAAA,aAAe,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,aAAA,CAAA,SAAA,KAAf,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,GAAAA,CAA0B,aAAUC,GAAA,GAAA,aAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,aAAA,CAAe,SAAf,KAAA,IAAA,GAAA,KAAA,CAAA,GAAAA,GAA0B,CAAA,MAAA,CAAA,KAAA,CAAUC,MAAA,aAAe,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,aAAA,CAAA,iBAAA,KAAf,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,GAAAA,CAAkC,MAAU,CAAA,KAAA,CAAA,EAAA,GAAA,aAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,aAAA,CAAe,WAAf,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAA4B,MAAU,CAAA,KAAA,CAAA,EAAA,GAAA,aAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,aAAA,CAAe,QAAf,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAyB,MAAQ,CAAA,EAAA;AAC7L,MAAM,MAAA,kBAAA,GAAqB,OAAO,IAAK,CAAA,aAAa,EAAE,MAAO,CAAA,CAAC,KAAU,GAAa,KAAA;AACnF,QAAA,GAAA,CAAI,GAAG,CAAI,GAAA,aAAA,CAAc,GAAG,CAAE,CAAA,GAAA,CAAI,CAAC,KAAe,KAAA;AA1N1D,UAAAF,IAAAA,GAAAA,CAAAA;AA2NU,UAAA,IAAA,CAAA,CAAGA,MAAA,cAAgB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,cAAA,CAAA,KAAA,KAAhB,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,GAAAA,CAAuB,kBAAiB,eAAgB,EAAA;AACzD,YAAA,OAAO,aAAK,CAAA,cAAA,CAAA,EAAA,EAAA,KAAA,CAAA,EAAL,EAAY,SAAA,EAAW,+BAAO,SAAU,EAAA,CAAA,CAAA;AAAA,WAC1C,MAAA;AACL,YAAI,IAAA,CAAA,KAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAO,QAAO,KAAO,EAAA;AACvB,cAAA,OAAO,aAAK,CAAA,cAAA,CAAA,EAAA,EAAA,KAAA,CAAA,EAAL,EAAY,SAAA,EAAW,IAAK,EAAA,CAAA,CAAA;AAAA,aACrC;AACA,YAAO,OAAA,KAAA,CAAA;AAAA,WACT;AAAA,SACD,CAAA,CAAA;AACD,QAAO,OAAA,GAAA,CAAA;AAAA,OACT,EAAG,EAAE,CAAA,CAAA;AACL,MAAA,iBAAA,CAAkB,kBAAkB,CAAA,CAAA;AACpC,MAAA,IAAA,CAAA,CAAI,EAAgB,GAAA,cAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,cAAA,CAAA,KAAA,KAAhB,IAAuB,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,YAAA,MAAiB,eAAiB,EAAA;AAC3D,QAAA,cAAA,CAAe,eAAgB,CAAA;AAAA,UAC7B,EAAI,EAAA,cAAA;AAAA,UACJ,KAAO,EAAA,kBAAA;AAAA,SACR,CAAA,CAAA;AAAA,OACI,MAAA;AACL,QAAA,cAAA,CAAe,eAAgB,CAAA;AAAA,UAC7B,EAAI,EAAA,cAAA;AAAA,UACJ,KAAO,EAAA,aAAA;AAAA,SACR,CAAA,CAAA;AAAA,OACH;AAAA,KACF;AAAA,GACF,EAAG,CAAC,aAAa,CAAC,CAAA,CAAA;AAElB,EAAA,oDACG,IAAK,EAAA,EAAA,UAAA,EAAW,QAAS,EAAA,cAAA,EAAe,YACtC,MACC,mBAAAG,cAAA,CAAA,aAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,UAAW,EAAA,QAAA;AAAA,MACX,cAAe,EAAA,QAAA;AAAA,MACf,GAAA,EAAK,EAAE,MAAA,EAAQ,oBAAqB,EAAA;AAAA,KAAA;AAAA,iDAEnC,OAAQ,EAAA,IAAA,CAAA;AAAA,GACX,gDAEC,GAAI,EAAA,EAAA,GAAA,EAAK,EAAE,QAAU,EAAA,GAAA,EAAK,KAAO,EAAA,MAAA,EAAQ,WAAa,EAAA,KAAA,OACpD,cAAgB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,cAAA,CAAA,iBAAA,iDACd,IAAK,EAAA,EAAA,aAAA,EAAc,4BACjBA,cAAA,CAAA,aAAA,CAAA,OAAA,EAAA,EAAQ,IAAK,EAAA,IAAA,EAAK,GAAK,EAAA;AAAA,IACtB,KAAO,EAAA,aAAA;AAAA,GACT,EAAA,EAAG,oBAAkB,CACrB,kBAAAA,cAAA,CAAA,aAAA;AAAA,IAAC,UAAA;AAAA,IAAA;AAAA,MACC,YAAA,EAAA,CAAc,EAAgB,GAAA,cAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,cAAA,CAAA,KAAA,KAAhB,IAAuB,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,YAAA;AAAA,MACrC,QAAA,EAAU,CAAC,KAAU,KAAA;AACnB,QAAA,cAAA,CAAe,eAAgB,CAAA;AAAA,UAC7B,EAAI,EAAA,cAAA;AAAA,UACJ,KAAA;AAAA,SACD,CAAA,CAAA;AACD,QAAA,IAAI,UAAU,eAAiB,EAAA;AAC7B,UAAA,cAAA,CAAe,eAAgB,CAAA;AAAA,YAC7B,EAAI,EAAA,cAAA;AAAA,YACJ,KAAO,EAAA,cAAA;AAAA,WACR,CAAA,CAAA;AAAA,SACH;AAAA,OACF;AAAA,KAAA;AAAA,oBAEAA,cAAA,CAAA,aAAA;AAAA,MAAC,IAAA;AAAA,MAAA;AAAA,QACC,UAAW,EAAA,QAAA;AAAA,QACX,GAAI,EAAA,KAAA;AAAA,QACJ,GAAK,EAAA;AAAA,UACH,SAAW,EAAA,IAAA;AAAA,UACX,SAAW,EAAA,EAAE,KAAO,EAAA,aAAA,EAAe,QAAQ,SAAU,EAAA;AAAA,SAEvD;AAAA,OAAA;AAAA,mDAEC,KAAM,EAAA,EAAA,IAAA,EAAK,IAAK,EAAA,KAAA,EAAM,iBAAgB,GAAK,EAAA;AAAA,QACxC,MAAQ,EAAA,SAAA;AAAA,WACT,eAEH,CAAA;AAAA,mDACC,KAAM,EAAA,EAAA,IAAA,EAAK,IAAK,EAAA,KAAA,EAAM,iBAAgB,GAAK,EAAA;AAAA,QAC1C,MAAQ,EAAA,SAAA;AAAA,WACP,oBAEH,CAAA;AAAA,KAEF;AAAA,GAEJ,CACE,GAAA,IAAA,EAAA,CAAA,CACH,sDAAgB,KAAhB,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAuB,kBAAiB,eACvC,mBAAAA,cAAA,CAAA,aAAA,CAAC,GAAI,EAAA,EAAA,GAAA,EAAK,EAAE,SAAW,EAAA,KAAA,sBACpBA,cAAA,CAAA,aAAA,CAAA,IAAA,EAAA,EAAK,cAAa,WACjB,EAAA,kBAAAA,cAAA,CAAA,aAAA;AAAA,IAAC,QAAA;AAAA,IAAA;AAAA,MACC,GAAK,EAAA;AAAA,QACH,YAAc,EAAA,oCAAA;AAAA,OAChB;AAAA,KAAA;AAAA,IAEC,gBAAA,CAAiB,GAAI,CAAA,CAAC,GACrB,qBAAAA,cAAA,CAAA,aAAA;AAAA,MAAC,WAAA;AAAA,MAAA;AAAA,QACC,KAAK,GAAK,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,GAAA,CAAA,EAAA;AAAA,QACV,OAAO,GAAK,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,GAAA,CAAA,KAAA;AAAA,QACZ,OAAA,EAAS,MAAM,cAAA,CAAe,EAAE,CAAA;AAAA,OAAA;AAAA,sBAE/BA,cAAA,CAAA,aAAA,CAAA,IAAA,EAAA,EAAK,IAAK,EAAA,IAAA,EAAA,EACV,IAAI,IACL,CAAA;AAAA,MACC,CAAC,CAAC,eAAA,CAAgB,GAAI,CAAA,WAAW,qBAC/BA,cAAA,CAAA,aAAA,CAAA,IAAA,EAAA,EAAK,GAAK,EAAA,EAAE,UAAY,EAAA,IAAA,EAAM,cAAc,KAAO,EAAA,KAAA,EAAO,aAAc,EAAA,EAAG,OAAQ,EAAA,SAAA,EAAU,SAAQ,IACnG,EAAA,EAAA,eAAA,CAAgB,GAAI,CAAA,WAAW,CAClC,CAAA;AAAA,KAGL,CAAA;AAAA,GAEH,kBAAAA,cAAA,CAAA,aAAA;AAAA,IAAC,oBAAA;AAAA,IAAA;AAAA,MACC,WAAA;AAAA,MACA,cAAA;AAAA,MACA,KAAM,EAAA,WAAA;AAAA,MACN,WAAY,EAAA,WAAA;AAAA,MACZ,QAAQ,aAAc,CAAA,SAAA;AAAA,MACtB,iBAAA,EAAmB,CAAC,KAAY,EAAA,KAAA,KAC9B,kBAAkB,WAAa,EAAA,KAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAO,IAAI,KAAK,CAAA;AAAA,KAAA;AAAA,GAGnD,kBAAAA,cAAA,CAAA,aAAA;AAAA,IAAC,oBAAA;AAAA,IAAA;AAAA,MACC,WAAA;AAAA,MACA,cAAA;AAAA,MACA,QAAQ,aAAc,CAAA,SAAA;AAAA,MACtB,KAAM,EAAA,UAAA;AAAA,MACN,WAAY,EAAA,WAAA;AAAA,MACZ,iBAAA,EAAmB,CAAC,KAAY,EAAA,KAAA,KAC9B,kBAAkB,WAAa,EAAA,KAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAO,IAAI,KAAK,CAAA;AAAA,KAAA;AAAA,GAGnD,kBAAAA,cAAA,CAAA,aAAA;AAAA,IAAC,oBAAA;AAAA,IAAA;AAAA,MACC,QAAQ,aAAc,CAAA,iBAAA;AAAA,MACtB,WAAA;AAAA,MACA,cAAA;AAAA,MACA,KAAM,EAAA,SAAA;AAAA,MACN,WAAY,EAAA,UAAA;AAAA,MACZ,iBAAA,EAAmB,CAAC,KAAO,EAAA,KAAA,KACzB,kBAAkB,mBAAqB,EAAA,KAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAO,IAAI,KAAK,CAAA;AAAA,KAAA;AAAA,GAG3D,kBAAAA,cAAA,CAAA,aAAA;AAAA,IAAC,oBAAA;AAAA,IAAA;AAAA,MACC,WAAA;AAAA,MACA,cAAA;AAAA,MACA,KAAM,EAAA,YAAA;AAAA,MACN,WAAY,EAAA,aAAA;AAAA,MACZ,QAAQ,aAAc,CAAA,WAAA;AAAA,MACtB,iBAAA,EAAmB,CAAC,KAAO,EAAA,KAAA,KACzB,kBAAkB,aAAe,EAAA,KAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAO,IAAI,KAAK,CAAA;AAAA,KAAA;AAAA,GAGrD,kBAAAA,cAAA,CAAA,aAAA;AAAA,IAAC,oBAAA;AAAA,IAAA;AAAA,MACC,KAAM,EAAA,UAAA;AAAA,MACN,WAAA;AAAA,MACA,cAAA;AAAA,MACA,WAAY,EAAA,YAAA;AAAA,MACZ,QAAQ,aAAc,CAAA,QAAA;AAAA,MACtB,iBAAA,EAAmB,CAAC,KAAY,EAAA,KAAA,KAC9B,kBAAkB,UAAY,EAAA,KAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAO,IAAI,KAAK,CAAA;AAAA,KAAA;AAAA,GAGpD,CACF,CAAA,mBACGA,cAAA,CAAA,aAAA,CAAA,IAAA,EAAA,EAAK,GAAK,EAAA,EAAE,SAAW,EAAA,KAAA,EAAS,EAAA,UAAA,EAAW,QAAS,EAAA,GAAA,EAAI,IAE3D,EAAA,kBAAAA,cAAA,CAAA,aAAA,CAAC,IAAK,EAAA,EAAA,IAAA,EAAK,IAAK,EAAA,MAAA,EAAO,SAAU,EAAA,GAAA,EAAK,EAAE,KAAA,EAAO,MAAQ,EAAA,KAAA,EAAO,aAAc,EAAA,EAAA,EAAG,gBAE/E,CAAA,kBACCA,cAAA,CAAA,aAAA,CAAA,IAAA,EAAA,EAAK,UAAW,EAAA,QAAA,EAAS,GAAI,EAAA,IAAA,EAAA,EAC3B,kBAAmB,CAAA,WAAW,CAAI,GAAA,CAAA,GAAI,CAAK,mBAAAA,cAAA,CAAA,aAAA,CAAC,UAAW,EAAA,EAAA,OAAA,EAAQ,SAAU,EAAA,EAAA,GAAA,EAAE,kBAAmB,CAAA,WAAW,CAAI,GAAA,CAAA,EAAE,YAAU,CAAA,GAAgB,IACzI,EAAA,kBAAA,CAAmB,WAAW,CAAA,GAAI,CAAI,GAAA,CAAA,mBAAMA,cAAA,CAAA,aAAA,CAAA,UAAA,EAAA,EAAW,OAAQ,EAAA,SAAA,EAAA,EAAU,KAAE,kBAAmB,CAAA,WAAW,CAAI,GAAA,CAAA,EAAE,YAAU,CAAA,GAAgB,IACzI,EAAA,kBAAA,CAAmB,mBAAmB,CAAA,GAAI,CAAI,GAAA,CAAA,mBAAMA,cAAA,CAAA,aAAA,CAAA,UAAA,EAAA,EAAW,OAAQ,EAAA,SAAA,EAAA,EAAU,GAAE,EAAA,kBAAA,CAAmB,mBAAmB,CAAA,GAAI,CAAE,EAAA,WAAS,CAAgB,GAAA,IAAA,EACxJ,kBAAmB,CAAA,aAAa,CAAI,GAAA,CAAA,GAAI,CAAK,mBAAAA,cAAA,CAAA,aAAA,CAAC,UAAW,EAAA,EAAA,OAAA,EAAQ,SAAU,EAAA,EAAA,GAAA,EAAE,kBAAmB,CAAA,aAAa,CAAI,GAAA,CAAA,EAAE,cAAY,CAAA,GAAgB,IAC/I,EAAA,kBAAA,CAAmB,UAAU,CAAA,GAAI,CAAI,GAAA,CAAA,mBAAMA,cAAA,CAAA,aAAA,CAAA,UAAA,EAAA,EAAW,OAAQ,EAAA,WAAA,EAAA,EAAY,GAAE,EAAA,kBAAA,CAAmB,UAAU,CAAA,GAAI,CAAE,EAAA,aAAW,CAAgB,GAAA,IAC7I,CACF,CACF,CAEJ,CAAA,CAAA;AAEJ,EAAA;AAIA,MAAM,uBAAuB,CAAC;AAAA,EAC5B,KAAA;AAAA,EACA,WAAA;AAAA,EACA,cAAA;AAAA,EACA,MAAA;AAAA,EACA,iBAAA;AAAA,EACA,WAAA;AACF,CAOM,KAAA;AACJ,EAAM,MAAA,aAAA,GACJ,UACA,MAAO,CAAA,MAAA;AAAA,IAAO,CAAC,KAAY,KAAA;AAha/B,MAAA,IAAA,EAAA,CAAA;AAiaM,MAAA,OAAA,CAAA,EAAA,GAAA,KAAA,CAAM,IAAN,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAY,WAAc,EAAA,CAAA,QAAA,CAAS,YAAY,WAAY,EAAA,CAAA,CAAA;AAAA,KAAA;AAAA,GAC7D,CAAA;AAEF,EACE,uBAAAA,cAAA,CAAA,aAAA,CAAC,eAAY,KAAc,EAAA,GAAA,EAAK,EAAE,OAAS,EAAA,CAAA,EAAG,QAAU,EAAA,UAAA,EACtD,EAAA,kBAAAA,cAAA,CAAA,aAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,QAAU,kBAAAA,cAAA,CAAA,aAAA,CAAC,UAAW,EAAA,EAAA,KAAA,EAAM,SAAU,EAAA,CAAA;AAAA,MACtC,OAAQ,EAAA,QAAA;AAAA,MACR,WAAA,EAAa,UAAU,WAAW,CAAA,CAAA;AAAA,MAClC,IAAK,EAAA,IAAA;AAAA,MACL,GAAA,EAAK,EAAE,SAAA,EAAW,IAAK,EAAA;AAAA,MACvB,KAAO,EAAA,WAAA;AAAA,MACP,UAAU,CAAC,KAAA,KAAU,cAAe,CAAA,KAAA,CAAM,cAAc,KAAK,CAAA;AAAA,KAAA;AAAA,GAE/D,kBAAAA,cAAA,CAAA,aAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,GAAK,EAAA;AAAA,QACH,OAAS,EAAA,cAAA;AAAA,QACT,SAAW,EAAA,IAAA;AAAA,QACX,MAAQ,EAAA,qBAAA;AAAA,QACR,QAAU,EAAA,MAAA;AAAA,QACV,cAAgB,EAAA,MAAA;AAAA,QAChB,sBAAwB,EAAA;AAAA,UACtB,KAAO,EAAA,KAAA;AAAA,SACT;AAAA,QACA,SAAW,EAAA;AAAA,UACT,UAAY,EAAA,KAAA;AAAA,SACd;AAAA,OACF;AAAA,MACA,aAAc,EAAA,QAAA;AAAA,MACd,GAAI,EAAA,IAAA;AAAA,KAAA;AAAA,IAEH,CAAA,aAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,aAAA,CAAe,MAAS,IAAA,CAAA,mBAEpBA,cAAA,CAAA,aAAA,CAAAA,cAAA,CAAA,QAAA,EAAA,IAAA,EAAA,aAAA,CAAc,IAAI,CAAC,KAAA,qBAClBA,cAAA,CAAA,aAAA,CAAA,GAAA,EAAA,EAAI,GAAK,EAAA;AAAA,MACT,KAAO,EAAA;AAAA,QACL,KAAO,EAAA,aAAA;AAAA,QACP,QAAU,EAAA,KAAA;AAAA,QACV,QAAU,EAAA,OAAA;AAAA,QACV,OAAS,EAAA,OAAA;AAAA,QACT,QAAU,EAAA,QAAA;AAAA,QACV,YAAc,EAAA,UAAA;AAAA,QACd,UAAY,EAAA,QAAA;AAAA,OACd;AAAA,KAEC,EAAA,kBAAAA,cAAA,CAAA,aAAA;AAAA,MAAC,QAAA;AAAA,MAAA;AAAA,QACA,IAAK,EAAA,IAAA;AAAA,QACL,SAAS,KAAM,CAAA,SAAA;AAAA,QACf,QAAU,EAAA,CAACC,MAAU,KAAA,iBAAA,CAAkB,OAAOA,MAAgB,CAAA;AAAA,OAAA;AAAA,MAE7D,KAAM,CAAA,IAAA;AAAA,KAEV,CACA,CACH,CAEA,mBAAAD,cAAA,CAAA,aAAA;AAAA,MAAC,IAAA;AAAA,MAAA;AAAA,QACC,UAAW,EAAA,QAAA;AAAA,QACX,cAAe,EAAA,QAAA;AAAA,QACf,GAAA,EAAK,EAAE,SAAA,EAAW,KAAM,EAAA;AAAA,OAAA;AAAA,sBAEvBA,cAAA,CAAA,aAAA,CAAA,IAAA,EAAA,EAAK,IAAK,EAAA,IAAA,EAAA,EAAK,kBAAgB,CAAA;AAAA,KAClC;AAAA,GAGJ,kBAAAA,cAAA,CAAA,aAAA;AAAA,IAAC,GAAA;AAAA,IAAA;AAAA,MACC,GAAK,EAAA;AAAA,QACH,QAAU,EAAA,UAAA;AAAA,QACV,GAAK,EAAA,KAAA;AAAA,QACL,MAAQ,EAAA,KAAA;AAAA,QACR,KAAO,EAAA,MAAA;AAAA,QACP,UACE,EAAA,mGAAA;AAAA,OACJ;AAAA,KAAA;AAAA,GAEJ,CAAA,CAAA;AAEJ,CAAA,CAAA;AAGA,MAAM,aAAa,CAAC,EAAE,QAAU,EAAA,OAAA,EAAS,SAAgF,KAAA;AACvH,EAAA,oDAAQ,IAAK,EAAA,EAAA,OAAA,EAAQ,SAAQ,GAAK,EAAA,aAAA,CAAA,cAAA,CAAA,cAAA,CAAA,EAAA,EAC5B,WAAW,EAAC,eAAA,EAAiB,OAAQ,EAAA,CAAA,EACrC,WAAW,EAAE,sBAAA,EAAwB,CAAC,OAAS,EAAA,GAAG,GAFtB,CAAA,EAAA;AAAA,IAGhC,UAAY,EAAA,OAAA;AAAA,IACZ,UAAY,EAAA,KAAA;AAAA,IACZ,UAAY,EAAA,IAAA;AAAA,IACZ,UAAY,EAAA,qCAAA;AAAA,QACV,QAAS,CAAA,CAAA;AACf,CAAA;;;;"}
|