@sparrowengg/integrations-templates-frontend 1.9.84-beta.5 → 1.9.84-beta.7
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/_virtual/index10.js +2 -2
- package/dist/cjs/_virtual/index9.js +2 -2
- package/dist/cjs/mapping/components/field.js +14 -6
- package/dist/cjs/mapping/components/field.js.map +1 -1
- package/dist/cjs/mapping/components/mapping.js +9 -6
- package/dist/cjs/mapping/components/mapping.js.map +1 -1
- package/dist/cjs/mapping/index.js +421 -19
- package/dist/cjs/mapping/index.js.map +1 -1
- package/dist/cjs/node_modules/hoist-non-react-statics/node_modules/react-is/index.js +1 -1
- package/dist/cjs/node_modules/html-dom-parser/node_modules/domutils/lib/index.js +1 -1
- package/dist/cjs/node_modules/html-dom-parser/node_modules/htmlparser2/lib/index.js +1 -1
- package/dist/es/_virtual/index10.js +2 -2
- package/dist/es/_virtual/index9.js +2 -2
- package/dist/es/mapping/components/field.js +14 -6
- package/dist/es/mapping/components/field.js.map +1 -1
- package/dist/es/mapping/components/mapping.js +9 -6
- package/dist/es/mapping/components/mapping.js.map +1 -1
- package/dist/es/mapping/index.js +421 -19
- package/dist/es/mapping/index.js.map +1 -1
- package/dist/es/node_modules/hoist-non-react-statics/node_modules/react-is/index.js +1 -1
- package/dist/es/node_modules/html-dom-parser/node_modules/domutils/lib/index.js +1 -1
- package/dist/es/node_modules/html-dom-parser/node_modules/htmlparser2/lib/index.js +1 -1
- package/dist/index.d.ts +9 -6
- package/package.json +2 -1
|
@@ -64,18 +64,26 @@ const Field = ({
|
|
|
64
64
|
removeField,
|
|
65
65
|
showCustomPropertyModal
|
|
66
66
|
}) => {
|
|
67
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o;
|
|
67
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q;
|
|
68
68
|
React.useEffect(() => {
|
|
69
69
|
if (!field.integrationField) {
|
|
70
|
-
|
|
70
|
+
const foundField = integrationFields.find(
|
|
71
71
|
(integrationField) => integrationField.label === (field == null ? void 0 : field.essentialFieldLabel)
|
|
72
72
|
);
|
|
73
|
+
if (foundField) {
|
|
74
|
+
field.integrationField = {
|
|
75
|
+
label: foundField.label,
|
|
76
|
+
value: foundField.value,
|
|
77
|
+
type: foundField.type
|
|
78
|
+
};
|
|
79
|
+
}
|
|
73
80
|
}
|
|
74
81
|
}, [field, integrationFields]);
|
|
75
82
|
const hasNumberDefaultField = (type) => {
|
|
76
83
|
if (type === "NUMBER") {
|
|
77
84
|
return true;
|
|
78
85
|
}
|
|
86
|
+
return false;
|
|
79
87
|
};
|
|
80
88
|
return /* @__PURE__ */ React.createElement(flex.Flex, { flexDirection: "column", gap: "$8" }, (field == null ? void 0 : field.essentialFieldLabel) && /* @__PURE__ */ React.createElement(text.Text, { size: "sm", weight: "bold" }, field.essentialFieldLabel, /* @__PURE__ */ React.createElement(placeholderSpan.default, { color: "$negative500" }, "*")), /* @__PURE__ */ React.createElement(
|
|
81
89
|
flex.Flex,
|
|
@@ -144,7 +152,7 @@ const Field = ({
|
|
|
144
152
|
value: (_c = field == null ? void 0 : field.integrationField) != null ? _c : integrationFields.find(
|
|
145
153
|
(integrationField) => integrationField.label === (field == null ? void 0 : field.essentialFieldLabel)
|
|
146
154
|
),
|
|
147
|
-
isDisabled: integrationFields.find(
|
|
155
|
+
isDisabled: !!integrationFields.find(
|
|
148
156
|
(integrationField) => integrationField.label === (field == null ? void 0 : field.essentialFieldLabel)
|
|
149
157
|
),
|
|
150
158
|
onChange: (integration) => {
|
|
@@ -210,10 +218,10 @@ const Field = ({
|
|
|
210
218
|
handleFieldValue: (value) => {
|
|
211
219
|
handleFieldValue(field == null ? void 0 : field.id, "defaultValue", value);
|
|
212
220
|
},
|
|
213
|
-
integrationFieldType: (_n = (_l = (_j = field == null ? void 0 : field.integrationFieldType) == null ? void 0 : _j.value) != null ? _l : (_k = integrationFields.find(
|
|
221
|
+
integrationFieldType: (_o = (_n = (_l = (_j = field == null ? void 0 : field.integrationFieldType) == null ? void 0 : _j.value) != null ? _l : (_k = integrationFields.find(
|
|
214
222
|
(integrationField) => integrationField.label === (field == null ? void 0 : field.essentialFieldLabel)
|
|
215
|
-
)) == null ? void 0 : _k.type) != null ? _n : (_m = field.integrationField) == null ? void 0 : _m.type,
|
|
216
|
-
value: (
|
|
223
|
+
)) == null ? void 0 : _k.type) != null ? _n : (_m = field.integrationField) == null ? void 0 : _m.type) != null ? _o : "STRING",
|
|
224
|
+
value: (_q = (_p = field == null ? void 0 : field.defaultValue) == null ? void 0 : _p.value) != null ? _q : field == null ? void 0 : field.defaultValue
|
|
217
225
|
}
|
|
218
226
|
)
|
|
219
227
|
)),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field.js","sources":["../../../../src/mapping/components/field.tsx"],"sourcesContent":["import {\n Box,\n Flex,\n FormLabel,\n IconButton,\n Input,\n Select,\n Text,\n} from \"@sparrowengg/twigs-react\";\nimport React, { useEffect } from \"react\";\nimport Trash from \"../../commons/icons/trash\";\nimport CustomMenu from \"./custom-menu\";\nimport { integrationsClassicSubmissionProperties, integrationsNpsSubmissionProperties, mappingType, subMenuOptions } from \"../../commons/constants\";\nimport { handleMappingOptions } from \"../../commons/helpers\";\nimport Arrow from \"../../commons/icons/arrow\";\nimport { FieldProps } from \"../types\";\nimport CustomDateMenu from \"./custom-date-menu\";\nimport CustomOption from \"./custom-option\";\nimport PlaceholderSpan from \"./placeholder-span\";\nimport { DateValue } from \"@internationalized/date\";\n\nconst customStyles = {\n menuList: (prevStyles: any) => ({\n ...prevStyles,\n maxHeight: 176,\n // width: \"300px !important\",\n }),\n};\n\nconst subMenuCustomStyles = {\n menu: (prevStyles: any) => ({\n ...prevStyles,\n width: 260,\n right: 0,\n }),\n};\n\nconst Field: React.FC<FieldProps> = ({\n surveyType,\n havingTypeDropdown,\n field,\n isFirstField,\n handleFieldValue,\n ssMappingData,\n integrationFields,\n integrationName,\n hasCustomMenuProperty,\n isBtnDisabled,\n removeField,\n showCustomPropertyModal,\n}) => {\n useEffect(() => {\n if (!field.integrationField) {\n field.integrationField = integrationFields.find(\n (integrationField: any) =>\n integrationField.label === field?.essentialFieldLabel\n );\n }\n }, [field, integrationFields]);\n\n const hasNumberDefaultField = (type: any) => {\n if(type === \"NUMBER\"){\n return true\n }\n }\n\n return (\n <Flex flexDirection=\"column\" gap=\"$8\">\n {field?.essentialFieldLabel && (\n <Text size=\"sm\" weight=\"bold\">\n {field.essentialFieldLabel}\n <PlaceholderSpan color=\"$negative500\">*</PlaceholderSpan>\n </Text>\n )}\n <Flex\n key={field.id}\n css={{\n width: \"100%\",\n \"&:hover\": {\n \"& button\": {\n opacity: 1,\n },\n \"& #arrow path\": {\n fill: \"$secondary500\",\n },\n },\n }}\n alignItems=\"center\"\n gap=\"$6\"\n >\n <Flex flexDirection=\"column\" gap=\"$2\" css={{ width: 144 }}>\n {(isFirstField || field.isEssentialField) && (\n <FormLabel size=\"xs\" css={{ fontWeight: \"$5\" }}>\n Type\n </FormLabel>\n )}\n <Select\n placeholder=\"Choose\"\n size=\"lg\"\n isSearchable={false}\n value={field?.mappedType}\n options={mappingType}\n onChange={(type: any) => handleFieldValue(field?.id, \"type\", type)}\n styles={customStyles}\n />\n </Flex>\n <Flex alignItems=\"center\" css={{ flex: 1 }} gap=\"11px\">\n <Flex flexDirection=\"column\" gap=\"$2\" css={{ width: \"100%\" }}>\n {(isFirstField || field.isEssentialField) && (\n <FormLabel size=\"xs\" css={{ fontWeight: \"$5\" }}>\n SurveySparrow Field\n </FormLabel>\n )}\n <Select\n size=\"lg\"\n placeholder=\"Choose\"\n value={field?.surveySparrowField}\n onChange={(ssField) =>\n handleFieldValue(field?.id, \"surveySparrowField\", ssField)\n }\n options={handleMappingOptions(\n field?.mappedType?.value ?? \"QUESTION\",\n ssMappingData.questions,\n ssMappingData.contactProperties,\n ssMappingData.variables,\n ssMappingData.expressions,\n integrationsNpsSubmissionProperties,\n integrationsClassicSubmissionProperties,\n surveyType\n )}\n styles={customStyles}\n />\n </Flex>\n <Box\n as=\"span\"\n id=\"arrow\"\n css={{\n paddingTop: isFirstField || field.isEssentialField ? \"$9\" : 0,\n }}\n >\n <Arrow />\n </Box>\n <Flex flexDirection=\"column\" gap=\"$2\">\n {(isFirstField || field.isEssentialField) && (\n <FormLabel size=\"xs\" css={{ fontWeight: \"$5\" }}>\n {`${integrationName} Field`}\n </FormLabel>\n )}\n <Flex alignItems=\"center\">\n <Select\n placeholder=\"Choose\"\n size=\"lg\"\n value={\n field?.integrationField ??\n integrationFields.find(\n (integrationField: any) =>\n integrationField.label === field?.essentialFieldLabel\n )\n }\n isDisabled={integrationFields.find(\n (integrationField: any) =>\n integrationField.label === field?.essentialFieldLabel\n )}\n onChange={(integration: any) => {\n handleFieldValue(field?.id, \"integrationField\", integration);\n }}\n css={{\n width: 260,\n \"& .twigs-select__control\": {\n borderTopRightRadius: havingTypeDropdown ? 0 : \"$lg\",\n borderBottomRightRadius: havingTypeDropdown ? 0 : \"$lg\",\n },\n }}\n options={integrationFields}\n styles={customStyles}\n components={{\n ...(hasCustomMenuProperty && {\n Menu: (props) => (\n <CustomMenu\n {...props}\n customOnClick={showCustomPropertyModal}\n />\n ),\n }),\n }}\n />\n {havingTypeDropdown && (\n <Select\n css={{\n width: 112,\n \"& .twigs-select__control\": {\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n border: \"$borderWidths$xs solid $neutral200\",\n },\n }}\n isDisabled={!field?.integrationField?.value}\n value={field?.integrationFieldType}\n onChange={(integration) =>\n handleFieldValue(\n field?.id,\n \"integrationFieldType\",\n integration\n )\n }\n styles={subMenuCustomStyles}\n options={subMenuOptions}\n closeMenuOnSelect\n // @ts-ignore\n noneOptionHandler={(value) =>\n handleFieldValue(field?.id, \"integrationFieldType\", value)\n }\n components={{ Menu: CustomMenu, Option: CustomOption }}\n placeholder=\"Choose\"\n size=\"lg\"\n />\n )}\n </Flex>\n </Flex>\n <Flex\n flexDirection=\"column\"\n gap=\"$2\"\n css={{ maxWidth: 180, width: \"100%\" }}\n >\n {(isFirstField || field.isEssentialField) && (\n <FormLabel size=\"xs\" css={{ fontWeight: \"$5\", marginBlockStart: hasNumberDefaultField(field?.integrationFieldType?.value ??\n integrationFields.find(\n (integrationField: any) =>\n integrationField.label === field?.essentialFieldLabel\n )?.type ?? field.integrationField?.type) ? \"$9\" : \"0\" }}>\n {\"Default Value (Optional)\"}\n </FormLabel>\n )}\n <DefaultField\n handleFieldValue={(value: any) => {\n handleFieldValue(field?.id, \"defaultValue\", value);\n }}\n integrationFieldType={\n field?.integrationFieldType?.value ??\n integrationFields.find(\n (integrationField: any) =>\n integrationField.label === field?.essentialFieldLabel\n )?.type ?? field.integrationField?.type\n }\n value={field?.defaultValue?.value}\n />\n </Flex>\n </Flex>\n {!field.isEssentialField && (\n <IconButton\n css={{\n transition: \"all .3s ease\",\n marginTop: isFirstField ? \"$11\" : 0,\n }}\n size=\"sm\"\n icon={<Trash />}\n variant=\"ghost\"\n color=\"default\"\n disabled={isBtnDisabled}\n onClick={removeField}\n />\n )}\n </Flex>\n </Flex>\n );\n};\n\nexport default Field;\n\nconst DefaultField: React.FC<{\n integrationFieldType: string;\n handleFieldValue: (value: any) => void;\n value: any;\n}> = ({ integrationFieldType, handleFieldValue, value }) => {\n switch (`${integrationFieldType}`) {\n case \"BOOLEAN\":\n return (\n <Select\n options={[\n {\n label: \"true\",\n value: true,\n },\n {\n label: \"false\",\n value: false,\n },\n ]}\n size=\"lg\"\n value={value}\n placeholder=\"\"\n onChange={(booleanValue) =>\n handleFieldValue({\n type: \"BOOLEAN\",\n value: booleanValue,\n })\n }\n />\n );\n case \"DATE_TIME\":\n return (\n <CustomDateMenu\n value={value}\n onChangeHandler={(dateValue: any) => {\n handleFieldValue({\n type: \"DATE_TIME\",\n value: dateValue,\n });\n }}\n />\n );\n case \"NUMBER\":\n return (\n <>\n <Input\n size=\"lg\"\n type=\"number\"\n placeholder=\"\"\n value={value}\n min={0}\n onChange={(e) =>\n handleFieldValue({\n type: \"NUMBER\",\n value: parseInt(e.currentTarget.value),\n })\n }\n />\n <FormLabel size=\"xs\">please enter a valid number</FormLabel>\n </>\n );\n default:\n return (\n <Input\n size=\"lg\"\n placeholder=\"\"\n value={value}\n onChange={(e) =>\n handleFieldValue({\n type: \"STRING\",\n value: e.currentTarget.value,\n })\n }\n />\n );\n }\n};"],"names":["useEffect","Flex","Text","PlaceholderSpan","FormLabel","Select","mappingType","handleMappingOptions","integrationsNpsSubmissionProperties","integrationsClassicSubmissionProperties","Box","Arrow","CustomMenu","subMenuOptions","CustomOption","IconButton","Trash","CustomDateMenu","Input"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"field.js","sources":["../../../../src/mapping/components/field.tsx"],"sourcesContent":["import {\n Box,\n Flex,\n FormLabel,\n IconButton,\n Input,\n Select,\n Text,\n} from \"@sparrowengg/twigs-react\";\nimport React, { useEffect } from \"react\";\nimport Trash from \"../../commons/icons/trash\";\nimport CustomMenu from \"./custom-menu\";\nimport { integrationsClassicSubmissionProperties, integrationsNpsSubmissionProperties, mappingType, subMenuOptions } from \"../../commons/constants\";\nimport { handleMappingOptions } from \"../../commons/helpers\";\nimport Arrow from \"../../commons/icons/arrow\";\nimport { FieldProps } from \"../types\";\nimport CustomDateMenu from \"./custom-date-menu\";\nimport CustomOption from \"./custom-option\";\nimport PlaceholderSpan from \"./placeholder-span\";\nimport { DateValue } from \"@internationalized/date\";\n\nconst customStyles = {\n menuList: (prevStyles: any) => ({\n ...prevStyles,\n maxHeight: 176,\n // width: \"300px !important\",\n }),\n};\n\nconst subMenuCustomStyles = {\n menu: (prevStyles: any) => ({\n ...prevStyles,\n width: 260,\n right: 0,\n }),\n};\n\nconst Field: React.FC<FieldProps> = ({\n surveyType,\n havingTypeDropdown,\n field,\n isFirstField,\n handleFieldValue,\n ssMappingData,\n integrationFields,\n integrationName,\n hasCustomMenuProperty,\n isBtnDisabled,\n removeField,\n showCustomPropertyModal,\n}) => {\n useEffect(() => {\n if (!field.integrationField) {\n const foundField = integrationFields.find(\n (integrationField: any) =>\n integrationField.label === field?.essentialFieldLabel\n );\n if (foundField) {\n field.integrationField = {\n label: foundField.label,\n value: foundField.value,\n type: foundField.type,\n };\n }\n }\n }, [field, integrationFields]);\n\n const hasNumberDefaultField = (type: any): boolean => {\n if(type === \"NUMBER\"){\n return true;\n }\n return false;\n }\n\n return (\n <Flex flexDirection=\"column\" gap=\"$8\">\n {field?.essentialFieldLabel && (\n <Text size=\"sm\" weight=\"bold\">\n {field.essentialFieldLabel}\n <PlaceholderSpan color=\"$negative500\">*</PlaceholderSpan>\n </Text>\n )}\n <Flex\n key={field.id}\n css={{\n width: \"100%\",\n \"&:hover\": {\n \"& button\": {\n opacity: 1,\n },\n \"& #arrow path\": {\n fill: \"$secondary500\",\n },\n },\n }}\n alignItems=\"center\"\n gap=\"$6\"\n >\n <Flex flexDirection=\"column\" gap=\"$2\" css={{ width: 144 }}>\n {(isFirstField || field.isEssentialField) && (\n <FormLabel size=\"xs\" css={{ fontWeight: \"$5\" }}>\n Type\n </FormLabel>\n )}\n <Select\n placeholder=\"Choose\"\n size=\"lg\"\n isSearchable={false}\n value={field?.mappedType}\n options={mappingType}\n onChange={(type: any) => handleFieldValue(field?.id, \"type\", type)}\n styles={customStyles}\n />\n </Flex>\n <Flex alignItems=\"center\" css={{ flex: 1 }} gap=\"11px\">\n <Flex flexDirection=\"column\" gap=\"$2\" css={{ width: \"100%\" }}>\n {(isFirstField || field.isEssentialField) && (\n <FormLabel size=\"xs\" css={{ fontWeight: \"$5\" }}>\n SurveySparrow Field\n </FormLabel>\n )}\n <Select\n size=\"lg\"\n placeholder=\"Choose\"\n value={field?.surveySparrowField}\n onChange={(ssField: any) =>\n handleFieldValue(field?.id, \"surveySparrowField\", ssField)\n }\n options={handleMappingOptions(\n (field?.mappedType?.value ?? \"QUESTION\") as string,\n ssMappingData.questions,\n ssMappingData.contactProperties,\n ssMappingData.variables,\n ssMappingData.expressions,\n integrationsNpsSubmissionProperties,\n integrationsClassicSubmissionProperties,\n surveyType\n )}\n styles={customStyles}\n />\n </Flex>\n <Box\n as=\"span\"\n id=\"arrow\"\n css={{\n paddingTop: isFirstField || field.isEssentialField ? \"$9\" : 0,\n }}\n >\n <Arrow />\n </Box>\n <Flex flexDirection=\"column\" gap=\"$2\">\n {(isFirstField || field.isEssentialField) && (\n <FormLabel size=\"xs\" css={{ fontWeight: \"$5\" }}>\n {`${integrationName} Field`}\n </FormLabel>\n )}\n <Flex alignItems=\"center\">\n <Select\n placeholder=\"Choose\"\n size=\"lg\"\n value={\n field?.integrationField ??\n integrationFields.find(\n (integrationField: any) =>\n integrationField.label === field?.essentialFieldLabel\n )\n }\n isDisabled={!!integrationFields.find(\n (integrationField: any) =>\n integrationField.label === field?.essentialFieldLabel\n )}\n onChange={(integration: any) => {\n handleFieldValue(field?.id, \"integrationField\", integration);\n }}\n css={{\n width: 260,\n \"& .twigs-select__control\": {\n borderTopRightRadius: havingTypeDropdown ? 0 : \"$lg\",\n borderBottomRightRadius: havingTypeDropdown ? 0 : \"$lg\",\n },\n }}\n options={integrationFields}\n styles={customStyles}\n components={{\n ...(hasCustomMenuProperty && {\n Menu: (props: any) => (\n <CustomMenu\n {...props}\n customOnClick={showCustomPropertyModal}\n />\n ),\n }),\n }}\n />\n {havingTypeDropdown && (\n <Select\n css={{\n width: 112,\n \"& .twigs-select__control\": {\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n border: \"$borderWidths$xs solid $neutral200\",\n },\n }}\n isDisabled={!field?.integrationField?.value}\n value={field?.integrationFieldType}\n onChange={(integration: any) =>\n handleFieldValue(\n field?.id,\n \"integrationFieldType\",\n integration\n )\n }\n styles={subMenuCustomStyles}\n options={subMenuOptions}\n closeMenuOnSelect\n // @ts-ignore\n noneOptionHandler={(value) =>\n handleFieldValue(field?.id, \"integrationFieldType\", value)\n }\n components={{ Menu: CustomMenu as any, Option: CustomOption as any }}\n placeholder=\"Choose\"\n size=\"lg\"\n />\n )}\n </Flex>\n </Flex>\n <Flex\n flexDirection=\"column\"\n gap=\"$2\"\n css={{ maxWidth: 180, width: \"100%\" }}\n >\n {(isFirstField || field.isEssentialField) && (\n <FormLabel size=\"xs\" css={{ fontWeight: \"$5\", marginBlockStart: hasNumberDefaultField(field?.integrationFieldType?.value ??\n integrationFields.find(\n (integrationField: any) =>\n integrationField.label === field?.essentialFieldLabel\n )?.type ?? field.integrationField?.type) ? \"$9\" : \"0\" }}>\n {\"Default Value (Optional)\"}\n </FormLabel>\n )}\n <DefaultField\n handleFieldValue={(value: any) => {\n handleFieldValue(field?.id, \"defaultValue\", value);\n }}\n integrationFieldType={\n (field?.integrationFieldType?.value ??\n integrationFields.find(\n (integrationField: any) =>\n integrationField.label === field?.essentialFieldLabel\n )?.type ?? field.integrationField?.type ?? \"STRING\") as string\n }\n value={(field?.defaultValue as any)?.value ?? field?.defaultValue}\n />\n </Flex>\n </Flex>\n {!field.isEssentialField && (\n <IconButton\n css={{\n transition: \"all .3s ease\",\n marginTop: isFirstField ? \"$11\" : 0,\n }}\n size=\"sm\"\n icon={<Trash />}\n variant=\"ghost\"\n color=\"default\"\n disabled={isBtnDisabled}\n onClick={removeField}\n />\n )}\n </Flex>\n </Flex>\n );\n};\n\nexport default Field;\n\nconst DefaultField: React.FC<{\n integrationFieldType: string;\n handleFieldValue: (value: any) => void;\n value: any;\n}> = ({ integrationFieldType, handleFieldValue, value }) => {\n switch (`${integrationFieldType}`) {\n case \"BOOLEAN\":\n return (\n <Select\n options={[\n {\n label: \"true\",\n value: true,\n },\n {\n label: \"false\",\n value: false,\n },\n ]}\n size=\"lg\"\n value={value}\n placeholder=\"\"\n onChange={(booleanValue: any) =>\n handleFieldValue({\n type: \"BOOLEAN\",\n value: booleanValue,\n })\n }\n />\n );\n case \"DATE_TIME\":\n return (\n <CustomDateMenu\n value={value}\n onChangeHandler={(dateValue: any) => {\n handleFieldValue({\n type: \"DATE_TIME\",\n value: dateValue,\n });\n }}\n />\n );\n case \"NUMBER\":\n return (\n <>\n <Input\n size=\"lg\"\n type=\"number\"\n placeholder=\"\"\n value={value}\n min={0}\n onChange={(e: any) =>\n handleFieldValue({\n type: \"NUMBER\",\n value: parseInt(e.currentTarget.value),\n })\n }\n />\n <FormLabel size=\"xs\">please enter a valid number</FormLabel>\n </>\n );\n default:\n return (\n <Input\n size=\"lg\"\n placeholder=\"\"\n value={value}\n onChange={(e: any) =>\n handleFieldValue({\n type: \"STRING\",\n value: e.currentTarget.value,\n })\n }\n />\n );\n }\n};"],"names":["useEffect","Flex","Text","PlaceholderSpan","FormLabel","Select","mappingType","handleMappingOptions","integrationsNpsSubmissionProperties","integrationsClassicSubmissionProperties","Box","Arrow","CustomMenu","subMenuOptions","CustomOption","IconButton","Trash","CustomDateMenu","Input"],"mappings":"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"}
|
|
@@ -82,7 +82,7 @@ const Mapping = ({
|
|
|
82
82
|
setFields(
|
|
83
83
|
currentFields == null ? void 0 : currentFields.map((field) => {
|
|
84
84
|
if (field.id === id) {
|
|
85
|
-
return property === "type" ? __spreadProps(__spreadValues({}, field), { surveySparrowField: null, mappedType: value, id }) : property === "integrationFieldType" ? __spreadProps(__spreadValues({}, field), { defaultValue: null, [property]: value }) : __spreadProps(__spreadValues({}, field), { [property]: value });
|
|
85
|
+
return property === "type" ? __spreadProps(__spreadValues({}, field), { surveySparrowField: null, mappedType: value, id: id.toString() }) : property === "integrationFieldType" ? __spreadProps(__spreadValues({}, field), { defaultValue: null, [property]: value }) : __spreadProps(__spreadValues({}, field), { [property]: value });
|
|
86
86
|
} else {
|
|
87
87
|
return __spreadValues({}, field);
|
|
88
88
|
}
|
|
@@ -100,11 +100,12 @@ const Mapping = ({
|
|
|
100
100
|
index$1.fetchSurveyExpression(apiURL, surveyId, token)
|
|
101
101
|
]);
|
|
102
102
|
setSSMappingData({
|
|
103
|
-
questions:
|
|
104
|
-
contactProperties:
|
|
105
|
-
variables:
|
|
106
|
-
expressions:
|
|
103
|
+
questions: questions || [],
|
|
104
|
+
contactProperties: contactProperties || [],
|
|
105
|
+
variables: variables || [],
|
|
106
|
+
expressions: expressions || []
|
|
107
107
|
});
|
|
108
|
+
console.log(questions, "ssMappingData");
|
|
108
109
|
} catch (error) {
|
|
109
110
|
console.error(index$2.MAPPING_ERROR_MESSAGES.FETCH_ERROR, error);
|
|
110
111
|
setSSMappingData({
|
|
@@ -282,8 +283,10 @@ const Mapping = ({
|
|
|
282
283
|
setIntegrationFields && setIntegrationFields((prev) => [
|
|
283
284
|
...prev,
|
|
284
285
|
{
|
|
286
|
+
id: customPropertyField,
|
|
285
287
|
label: customPropertyField,
|
|
286
|
-
value: customPropertyField
|
|
288
|
+
value: customPropertyField,
|
|
289
|
+
type: "string"
|
|
287
290
|
}
|
|
288
291
|
]);
|
|
289
292
|
setShowCustomPropertyModal(false);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapping.js","sources":["../../../../src/mapping/components/mapping.tsx"],"sourcesContent":["import {\n Box,\n Button,\n Checkbox,\n Flex,\n FormLabel,\n Heading,\n Select,\n Text,\n} from \"@sparrowengg/twigs-react\";\nimport React, { useEffect, useState } from \"react\";\nimport { PlusIcon } from \"@sparrowengg/twigs-react-icons\";\nimport { surveySparrowURL } from \"../../commons/constants\";\nimport { DEFAULT_FIELD_VALUE, MAPPING_ERROR_MESSAGES } from \"../constants\";\nimport { v4 as uuid } from \"uuid\";\nimport {\n fetchContactProperties,\n fetchSurveyQuestions,\n fetchSurveyVariables,\n fetchSurveyExpression,\n} from \"../services\";\nimport { MappingTypeProps, ssMappingDataResponse, FieldValue, FieldType, SelectOption, IntegrationFieldType } from \"../types\";\nimport { FormFieldValue, FieldChangeHandler } from \"../../commons/types/enhanced\";\nimport { UI_CONSTANTS, MAPPING_TYPES } from \"../../commons/constants/enhanced\";\nimport ImportModal from \"../../commons/components/import-modal\";\nimport Spinner from \"../../commons/components/spinner\";\nimport Field from \"./field\";\nimport PlaceholderSpan from \"./placeholder-span\";\n\n\nexport const Mapping: React.FC<MappingTypeProps> = ({\n havingTypeDropdown,\n integrationName,\n surveyId,\n surveyType,\n fields,\n setFields,\n integrationFields,\n hasCustomMenuProperty,\n setIntegrationFields,\n apiURL = surveySparrowURL,\n token,\n surveyDetails,\n customList,\n oldResponse,\n}) => {\n const [ssMappingData, setSSMappingData] = useState<\n ssMappingDataResponse<SelectOption>\n >({\n questions: [],\n variables: [],\n contactProperties: [],\n expressions: [],\n });\n const [showCustomPropertyModal, setShowCustomPropertyModal] = useState(false);\n const [customPropertyField, setCustomPropertyField] = useState<string>(\"\");\n const [loader, setLoader] = useState<boolean>(true);\n const essentialFields = fields?.filter((field) => field?.isEssentialField);\n const commonFields = fields?.filter((field) => !field?.isEssentialField);\n\n const customHandler = (field: FieldType | undefined, property: string, value: FormFieldValue): Array<IntegrationFieldType> => {\n if (field?.dependency && typeof field.dependency === 'object' && 'length' in field.dependency) {\n return field.dependency as Array<IntegrationFieldType>;\n }\n return [];\n };\n\n const handleFieldValue: FieldChangeHandler = (id: string | number, property: string, value: FormFieldValue) => {\n let dependentField: Array<IntegrationFieldType> = [];\n const targetField = fields.find((field) => field.id === id);\n dependentField = customHandler(\n targetField,\n property,\n value\n );\n let currentFields = [...fields, ...dependentField].filter(\n (obj, index, self) =>\n index ===\n self.findIndex((o) => JSON.stringify(o) === JSON.stringify(obj))\n );\n setFields(\n currentFields?.map((field) => {\n if (field.id === id) {\n return property === \"type\"\n ? { ...field, surveySparrowField: null, mappedType: value, id }\n : property === \"integrationFieldType\"\n ? { ...field, defaultValue: null, [property]: value }\n : { ...field, [property]: value };\n } else {\n return { ...field };\n }\n })\n );\n };\n\n const hasRequiredProps = () =>\n !!fields &&\n !!setFields &&\n !!integrationFields &&\n !!setIntegrationFields &&\n !!token;\n\n const fetchInitialMappingData = async (): Promise<void> => {\n setLoader(true);\n try {\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 as any)?.data || [],\n contactProperties: (contactProperties as any)?.data || [],\n variables: (variables as any)?.data || [],\n expressions: (expressions as any)?.data || [],\n });\n } catch (error) {\n console.error(MAPPING_ERROR_MESSAGES.FETCH_ERROR, error);\n setSSMappingData({\n questions: [],\n contactProperties: [],\n variables: [],\n expressions: [],\n });\n } finally {\n setLoader(false);\n }\n };\n\n const getEssentialFieldsNumber = (length: number): string => {\n const numberMapping: Record<number, string> = {\n 1: \"one\",\n 2: \"two\",\n 3: \"three\",\n 4: \"four\",\n 5: \"five\",\n 6: \"six\",\n 7: \"seven\",\n 8: \"eight\",\n 9: \"nine\",\n 10: \"ten\",\n };\n return numberMapping[length] ?? \"These\";\n };\n\n useEffect(() => {\n setFields(\n fields?.length === 0\n ? [{ ...DEFAULT_FIELD_VALUE, id: uuid() }]\n : fields?.map((field) => ({ ...field, id: uuid() }))\n );\n if (!!token && token?.length > 60 && !!surveyId) {\n fetchInitialMappingData();\n } else {\n setLoader(false);\n }\n }, [token, surveyId]);\n\n return (\n <Flex alignItems=\"center\" justifyContent=\"center\">\n {hasRequiredProps() ? (\n <>\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: 1120, width: \"100%\", marginBlock: \"$40\" }}>\n <Heading\n size=\"h5\"\n css={{ color: \"$neutral900\" }}\n >{`Map to ${integrationName}`}</Heading>\n <Flex gap=\"$2\" css={{ marginTop: \"$4\" }}>\n <Text size=\"sm\" css={{ color: \"$neutral500\" }}>\n Survey Name:\n </Text>\n <Text\n size=\"sm\"\n weight={\"medium\"}\n css={{ color: \"$neutral800\" }}\n >\n {surveyDetails.surveyName}\n </Text>\n </Flex>\n {!!essentialFields?.length && (\n <Box\n css={{\n width: \"100%\",\n paddingBlock: \"$12 $20\",\n borderBottom: \"$borderWidths$xs dashed $neutral200\",\n maxWidth: 1084,\n }}\n >\n <Text\n size=\"md\"\n css={{\n color: \"$neutral500\",\n lineHeight: \"$md\",\n marginTop: \"$4\",\n }}\n >\n This connection requires{\" \"}\n <PlaceholderSpan color=\"$neutral600\">\n {essentialFields?.length}\n </PlaceholderSpan>\n <PlaceholderSpan color=\"$negative500\">*</PlaceholderSpan>{\" \"}\n essential mappings\n </Text>\n <Flex\n flexDirection=\"column\"\n gap=\"$20\"\n css={{ marginTop: \"$12\" }}\n >\n {essentialFields?.map((field, idx) => (\n <Field\n surveyType={surveyType}\n havingTypeDropdown={havingTypeDropdown}\n key={field.id}\n field={field}\n integrationName={integrationName}\n handleFieldValue={(id, property, value) =>\n handleFieldValue(id, property, value)\n }\n hasCustomMenuProperty={hasCustomMenuProperty}\n integrationFields={integrationFields}\n isBtnDisabled={commonFields.length === 1}\n isFirstField={idx === 0}\n ssMappingData={ssMappingData}\n showCustomPropertyModal={() => {\n setShowCustomPropertyModal(true);\n }}\n />\n ))}\n </Flex>\n </Box>\n )}\n <Flex flexDirection=\"column\" gap=\"$16\" css={{ marginTop: \"$16\" }}>\n {commonFields?.map((field, idx) => {\n return (\n <Field\n surveyType={surveyType}\n havingTypeDropdown={havingTypeDropdown}\n key={field.id}\n field={field}\n integrationName={integrationName}\n removeField={() => {\n setFields((prev) =>\n prev.filter(\n (currentField) => currentField.id !== field.id\n )\n );\n }}\n handleFieldValue={(id, property, value) =>\n handleFieldValue(id, property, value)\n }\n hasCustomMenuProperty={hasCustomMenuProperty}\n integrationFields={integrationFields}\n isBtnDisabled={false}\n isFirstField={idx === 0}\n ssMappingData={ssMappingData}\n showCustomPropertyModal={() => {\n setShowCustomPropertyModal(true);\n }}\n />\n );\n })}\n </Flex>\n <Button\n leftIcon={<PlusIcon />}\n color=\"default\"\n css={{ marginTop: \"$10\" }}\n onClick={() =>\n setFields([\n ...fields,\n {\n ...DEFAULT_FIELD_VALUE,\n id: uuid(),\n },\n ])\n }\n size=\"md\"\n >\n New mapping field\n </Button>\n {customList?.hasCustomList && (\n <Flex\n css={{ marginTop: \"$40\" }}\n flexDirection=\"column\"\n gap=\"$8\"\n >\n <Flex flexDirection=\"column\" gap=\"$3\">\n <Heading size=\"h5\">Choose a List</Heading>\n <Text css={{ color: \"$neutral500\" }} size=\"sm\">\n Pick a list to save mapped fields; If not, they'll be\n saved under all profiles.\n </Text>\n </Flex>\n <Select\n css={{ maxWidth: 400, width: \"100%\" }}\n size=\"lg\"\n options={customList.options}\n value={customList.value}\n placeholder=\"\"\n onChange={(value) => customList.onChangeHandler(value)}\n />\n </Flex>\n )}\n {/* Old Response */}\n {oldResponse?.hasOldResponse && (\n <Checkbox\n onChange={(value) => oldResponse.onChangeHandler(value)}\n css={{ marginBlock: \"$8\", cursor: \"pointer\" }}\n checked={oldResponse.value as boolean}\n >\n <FormLabel size=\"sm\">Import Old Response</FormLabel>\n </Checkbox>\n )}\n {showCustomPropertyModal && (\n <ImportModal\n onCloseHandler={() => setShowCustomPropertyModal(false)}\n onInputHandler={(value) => setCustomPropertyField(value)}\n onSaveHandler={() => {\n setIntegrationFields &&\n setIntegrationFields((prev) => [\n ...prev,\n {\n label: customPropertyField,\n value: customPropertyField,\n },\n ]);\n setShowCustomPropertyModal(false);\n }}\n />\n )}\n </Box>\n )}\n </>\n ) : (\n <Flex\n alignItems=\"center\"\n justifyContent=\"center\"\n css={{ height: \"100%\" }}\n >\n <Heading size=\"h4\" weight=\"bold\">\n Provide the needed props to import Mapping Template\n </Heading>\n </Flex>\n )}\n </Flex>\n );\n};\n"],"names":["surveySparrowURL","useState","fetchSurveyQuestions","fetchSurveyVariables","fetchContactProperties","fetchSurveyExpression","MAPPING_ERROR_MESSAGES","useEffect","DEFAULT_FIELD_VALUE","uuid","Flex","Spinner","Box","Heading","Text","PlaceholderSpan","field","Field","Button","PlusIcon","Select","Checkbox","FormLabel","ImportModal"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mapping.js","sources":["../../../../src/mapping/components/mapping.tsx"],"sourcesContent":["import {\n Box,\n Button,\n Checkbox,\n Flex,\n FormLabel,\n Heading,\n Select,\n Text,\n} from \"@sparrowengg/twigs-react\";\nimport React, { useEffect, useState } from \"react\";\nimport { PlusIcon } from \"@sparrowengg/twigs-react-icons\";\nimport { surveySparrowURL } from \"../../commons/constants\";\nimport { DEFAULT_FIELD_VALUE, MAPPING_ERROR_MESSAGES } from \"../constants\";\nimport { v4 as uuid } from \"uuid\";\nimport {\n fetchContactProperties,\n fetchSurveyQuestions,\n fetchSurveyVariables,\n fetchSurveyExpression,\n} from \"../services\";\nimport { MappingTypeProps, ssMappingDataResponse, FieldType, SelectOption, IntegrationFieldType } from \"../types\";\nimport { FormFieldValue, FieldChangeHandler } from \"../../commons/types/enhanced\";\nimport { UI_CONSTANTS, MAPPING_TYPES } from \"../../commons/constants/enhanced\";\nimport ImportModal from \"../../commons/components/import-modal\";\nimport Spinner from \"../../commons/components/spinner\";\nimport Field from \"./field\";\nimport PlaceholderSpan from \"./placeholder-span\";\n\n\nexport const Mapping: React.FC<MappingTypeProps> = ({\n havingTypeDropdown,\n integrationName,\n surveyId,\n surveyType,\n fields,\n setFields,\n integrationFields,\n hasCustomMenuProperty,\n setIntegrationFields,\n apiURL = surveySparrowURL,\n token,\n surveyDetails,\n customList,\n oldResponse,\n}) => {\n const [ssMappingData, setSSMappingData] = useState<\n ssMappingDataResponse<SelectOption>\n >({\n questions: [],\n variables: [],\n contactProperties: [],\n expressions: [],\n });\n const [showCustomPropertyModal, setShowCustomPropertyModal] = useState(false);\n const [customPropertyField, setCustomPropertyField] = useState<string>(\"\");\n const [loader, setLoader] = useState<boolean>(true);\n const essentialFields = fields?.filter((field) => field?.isEssentialField);\n const commonFields = fields?.filter((field) => !field?.isEssentialField);\n\n const customHandler = (field: FieldType | undefined, property: string, value: FormFieldValue): Array<IntegrationFieldType> => {\n if (field?.dependency && typeof field.dependency === 'object' && 'length' in field.dependency) {\n return (field.dependency as unknown) as Array<IntegrationFieldType>;\n }\n return [];\n };\n\n const handleFieldValue: FieldChangeHandler = (id: string | number, property: string, value: FormFieldValue) => {\n let dependentField: Array<IntegrationFieldType> = [];\n const targetField = fields.find((field) => field.id === id);\n dependentField = customHandler(\n targetField,\n property,\n value\n );\n let currentFields = [...fields, ...dependentField].filter(\n (obj, index, self) =>\n index ===\n self.findIndex((o) => JSON.stringify(o) === JSON.stringify(obj))\n );\n setFields(\n currentFields?.map((field) => {\n if (field.id === id) {\n return property === \"type\"\n ? { ...field, surveySparrowField: null, mappedType: value, id: id.toString() }\n : property === \"integrationFieldType\"\n ? { ...field, defaultValue: null, [property]: value }\n : { ...field, [property]: value };\n } else {\n return { ...field };\n }\n }) as FieldType[]\n );\n };\n\n const hasRequiredProps = () =>\n !!fields &&\n !!setFields &&\n !!integrationFields &&\n !!setIntegrationFields &&\n !!token;\n\n const fetchInitialMappingData = async (): Promise<void> => {\n setLoader(true);\n try {\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 as any) || [],\n contactProperties: (contactProperties as any) || [],\n variables: (variables as any) || [],\n expressions: (expressions as any) || [],\n });\n console.log(questions, 'ssMappingData');\n } catch (error) {\n console.error(MAPPING_ERROR_MESSAGES.FETCH_ERROR, error);\n setSSMappingData({\n questions: [],\n contactProperties: [],\n variables: [],\n expressions: [],\n });\n } finally {\n setLoader(false);\n }\n };\n\n const getEssentialFieldsNumber = (length: number): string => {\n const numberMapping: Record<number, string> = {\n 1: \"one\",\n 2: \"two\",\n 3: \"three\",\n 4: \"four\",\n 5: \"five\",\n 6: \"six\",\n 7: \"seven\",\n 8: \"eight\",\n 9: \"nine\",\n 10: \"ten\",\n };\n return numberMapping[length] ?? \"These\";\n };\n\n useEffect(() => {\n setFields(\n fields?.length === 0\n ? [{ ...DEFAULT_FIELD_VALUE, id: uuid() } as FieldType]\n : fields?.map((field) => ({ ...field, id: uuid() })) as FieldType[]\n );\n if (!!token && token?.length > 60 && !!surveyId) {\n fetchInitialMappingData();\n } else {\n setLoader(false);\n }\n }, [token, surveyId]);\n\n return (\n <Flex alignItems=\"center\" justifyContent=\"center\">\n {hasRequiredProps() ? (\n <>\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: 1120, width: \"100%\", marginBlock: \"$40\" }}>\n <Heading\n size=\"h5\"\n css={{ color: \"$neutral900\" }}\n >{`Map to ${integrationName}`}</Heading>\n <Flex gap=\"$2\" css={{ marginTop: \"$4\" }}>\n <Text size=\"sm\" css={{ color: \"$neutral500\" }}>\n Survey Name:\n </Text>\n <Text\n size=\"sm\"\n weight={\"medium\"}\n css={{ color: \"$neutral800\" }}\n >\n {surveyDetails.surveyName}\n </Text>\n </Flex>\n {!!essentialFields?.length && (\n <Box\n css={{\n width: \"100%\",\n paddingBlock: \"$12 $20\",\n borderBottom: \"$borderWidths$xs dashed $neutral200\",\n maxWidth: 1084,\n }}\n >\n <Text\n size=\"md\"\n css={{\n color: \"$neutral500\",\n lineHeight: \"$md\",\n marginTop: \"$4\",\n }}\n >\n This connection requires{\" \"}\n <PlaceholderSpan color=\"$neutral600\">\n {essentialFields?.length}\n </PlaceholderSpan>\n <PlaceholderSpan color=\"$negative500\">*</PlaceholderSpan>{\" \"}\n essential mappings\n </Text>\n <Flex\n flexDirection=\"column\"\n gap=\"$20\"\n css={{ marginTop: \"$12\" }}\n >\n {essentialFields?.map((field, idx) => (\n <Field\n surveyType={surveyType}\n havingTypeDropdown={havingTypeDropdown}\n key={field.id}\n field={field}\n integrationName={integrationName}\n handleFieldValue={(id: string | number, property: string, value: FormFieldValue) =>\n handleFieldValue(id, property, value)\n }\n hasCustomMenuProperty={hasCustomMenuProperty}\n integrationFields={integrationFields}\n isBtnDisabled={commonFields.length === 1}\n isFirstField={idx === 0}\n ssMappingData={ssMappingData}\n showCustomPropertyModal={() => {\n setShowCustomPropertyModal(true);\n }}\n />\n ))}\n </Flex>\n </Box>\n )}\n <Flex flexDirection=\"column\" gap=\"$16\" css={{ marginTop: \"$16\" }}>\n {commonFields?.map((field, idx) => {\n return (\n <Field\n surveyType={surveyType}\n havingTypeDropdown={havingTypeDropdown}\n key={field.id}\n field={field}\n integrationName={integrationName}\n removeField={() => {\n setFields((prev) =>\n prev.filter(\n (currentField) => currentField.id !== field.id\n )\n );\n }}\n handleFieldValue={(id: string | number, property: string, value: FormFieldValue) =>\n handleFieldValue(id, property, value)\n }\n hasCustomMenuProperty={hasCustomMenuProperty}\n integrationFields={integrationFields}\n isBtnDisabled={false}\n isFirstField={idx === 0}\n ssMappingData={ssMappingData}\n showCustomPropertyModal={() => {\n setShowCustomPropertyModal(true);\n }}\n />\n );\n })}\n </Flex>\n <Button\n leftIcon={<PlusIcon />}\n color=\"default\"\n css={{ marginTop: \"$10\" }}\n onClick={() =>\n setFields([\n ...fields,\n {\n ...DEFAULT_FIELD_VALUE,\n id: uuid(),\n } as FieldType,\n ])\n }\n size=\"md\"\n >\n New mapping field\n </Button>\n {customList?.hasCustomList && (\n <Flex\n css={{ marginTop: \"$40\" }}\n flexDirection=\"column\"\n gap=\"$8\"\n >\n <Flex flexDirection=\"column\" gap=\"$3\">\n <Heading size=\"h5\">Choose a List</Heading>\n <Text css={{ color: \"$neutral500\" }} size=\"sm\">\n Pick a list to save mapped fields; If not, they'll be\n saved under all profiles.\n </Text>\n </Flex>\n <Select\n css={{ maxWidth: 400, width: \"100%\" }}\n size=\"lg\"\n options={customList.options}\n value={customList.value}\n placeholder=\"\"\n onChange={(value: any) => customList.onChangeHandler(value)}\n />\n </Flex>\n )}\n {/* Old Response */}\n {oldResponse?.hasOldResponse && (\n <Checkbox\n onChange={(value: any) => oldResponse.onChangeHandler(value)}\n css={{ marginBlock: \"$8\", cursor: \"pointer\" }}\n checked={oldResponse.value as boolean}\n >\n <FormLabel size=\"sm\">Import Old Response</FormLabel>\n </Checkbox>\n )}\n {showCustomPropertyModal && (\n <ImportModal\n onCloseHandler={() => setShowCustomPropertyModal(false)}\n onInputHandler={(value: any) => setCustomPropertyField(value)}\n onSaveHandler={() => {\n setIntegrationFields &&\n setIntegrationFields((prev) => [\n ...prev,\n {\n id: customPropertyField,\n label: customPropertyField,\n value: customPropertyField,\n type: 'string',\n } as unknown as IntegrationFieldType,\n ]);\n setShowCustomPropertyModal(false);\n }}\n />\n )}\n </Box>\n )}\n </>\n ) : (\n <Flex\n alignItems=\"center\"\n justifyContent=\"center\"\n css={{ height: \"100%\" }}\n >\n <Heading size=\"h4\" weight=\"bold\">\n Provide the needed props to import Mapping Template\n </Heading>\n </Flex>\n )}\n </Flex>\n );\n};\n"],"names":["surveySparrowURL","useState","fetchSurveyQuestions","fetchSurveyVariables","fetchContactProperties","fetchSurveyExpression","MAPPING_ERROR_MESSAGES","useEffect","DEFAULT_FIELD_VALUE","uuid","Flex","Spinner","Box","Heading","Text","PlaceholderSpan","field","Field","Button","PlusIcon","Select","Checkbox","FormLabel","ImportModal"],"mappings":"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"}
|