@sparrowengg/integrations-templates-frontend 4.0.0-refold.9 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/commons/constants/index.js +1 -1
- package/dist/cjs/commons/constants/index.js.map +1 -1
- package/dist/cjs/commons/helpers/index.js +43 -16
- package/dist/cjs/commons/helpers/index.js.map +1 -1
- package/dist/cjs/contact-import/components/ManageImport/Completed.js +1 -1
- package/dist/cjs/contact-import/components/ManageImport/Completed.js.map +1 -1
- package/dist/cjs/contact-import/components/ManageImport/Dashboard.js +5 -5
- package/dist/cjs/contact-import/components/ManageImport/Dashboard.js.map +1 -1
- package/dist/cjs/contact-import/components/ManageImport/Scheduled.js +1 -1
- package/dist/cjs/contact-import/components/ManageImport/Scheduled.js.map +1 -1
- package/dist/cjs/contact-import/components/contact-import-mapping.js +8 -4
- package/dist/cjs/contact-import/components/contact-import-mapping.js.map +1 -1
- package/dist/cjs/contact-import/index.js +4 -2
- package/dist/cjs/contact-import/index.js.map +1 -1
- package/dist/cjs/dynamic-mapping/components/configuration-setup.js +1 -0
- package/dist/cjs/dynamic-mapping/components/configuration-setup.js.map +1 -1
- package/dist/cjs/dynamic-mapping/components/mapping-header.js +2 -1
- package/dist/cjs/dynamic-mapping/components/mapping-header.js.map +1 -1
- package/dist/cjs/dynamic-mapping/components/mapping.js +5 -3
- package/dist/cjs/dynamic-mapping/components/mapping.js.map +1 -1
- package/dist/cjs/dynamic-mapping/components/tabs-content-component.js +24 -4
- package/dist/cjs/dynamic-mapping/components/tabs-content-component.js.map +1 -1
- package/dist/cjs/dynamic-mapping/constants/condition-operators.js +28 -3
- package/dist/cjs/dynamic-mapping/constants/condition-operators.js.map +1 -1
- package/dist/cjs/dynamic-mapping/constants/ui-strings.js.map +1 -1
- package/dist/cjs/dynamic-mapping/helpers/derive-condition-data.js +19 -1
- package/dist/cjs/dynamic-mapping/helpers/derive-condition-data.js.map +1 -1
- package/dist/cjs/dynamic-mapping/helpers/mapping.helpers.js +98 -1
- package/dist/cjs/dynamic-mapping/helpers/mapping.helpers.js.map +1 -1
- package/dist/cjs/dynamic-mapping/hooks/use-custom-dropdown.js +2 -0
- package/dist/cjs/dynamic-mapping/hooks/use-custom-dropdown.js.map +1 -1
- package/dist/cjs/dynamic-mapping/hooks/use-mapping-data.js +129 -40
- package/dist/cjs/dynamic-mapping/hooks/use-mapping-data.js.map +1 -1
- package/dist/cjs/dynamic-mapping/hooks/use-mapping-header.js +13 -9
- package/dist/cjs/dynamic-mapping/hooks/use-mapping-header.js.map +1 -1
- package/dist/cjs/dynamic-mapping/index.js +2 -0
- package/dist/cjs/dynamic-mapping/index.js.map +1 -1
- package/dist/cjs/dynamic-mapping/utils/validation.utils.js +5 -0
- package/dist/cjs/dynamic-mapping/utils/validation.utils.js.map +1 -1
- package/dist/cjs/filter/filter-pill.js +24 -7
- package/dist/cjs/filter/filter-pill.js.map +1 -1
- package/dist/cjs/integration-template/components/dashboard/DashboardItem.js +3 -1
- package/dist/cjs/integration-template/components/dashboard/DashboardItem.js.map +1 -1
- package/dist/cjs/integration-template/components/dashboard/SingleMappingDashboardItem.js +1 -1
- package/dist/cjs/integration-template/components/dashboard/SingleMappingDashboardItem.js.map +1 -1
- package/dist/cjs/integration-template/components/dashboard/SingleMappingEventWrapper.js +1 -0
- package/dist/cjs/integration-template/components/dashboard/SingleMappingEventWrapper.js.map +1 -1
- package/dist/cjs/integration-template/components/dashboard-utils.js +17 -3
- package/dist/cjs/integration-template/components/dashboard-utils.js.map +1 -1
- package/dist/cjs/integration-template/components/dashboard.js +8 -0
- package/dist/cjs/integration-template/components/dashboard.js.map +1 -1
- package/dist/cjs/mapping/components/field.js +18 -10
- package/dist/cjs/mapping/components/field.js.map +1 -1
- package/dist/cjs/mapping/hooks/use-survey-data.js +34 -22
- package/dist/cjs/mapping/hooks/use-survey-data.js.map +1 -1
- package/dist/cjs/mapping/utils/conditionDescriptionBuilder.js +12 -2
- package/dist/cjs/mapping/utils/conditionDescriptionBuilder.js.map +1 -1
- package/dist/cjs/mapping/utils/validation.utils.js +1 -1
- package/dist/cjs/mapping/utils/validation.utils.js.map +1 -1
- package/dist/cjs/single-mapping/components/MappingHeader.js +5 -2
- package/dist/cjs/single-mapping/components/MappingHeader.js.map +1 -1
- package/dist/cjs/single-mapping/components/mapping.js +2 -2
- package/dist/cjs/single-mapping/components/mapping.js.map +1 -1
- package/dist/cjs/single-mapping/hooks/use-mapping-data.js +13 -11
- package/dist/cjs/single-mapping/hooks/use-mapping-data.js.map +1 -1
- package/dist/cjs/triggers/components/EventSetup.js +2 -1
- package/dist/cjs/triggers/components/EventSetup.js.map +1 -1
- package/dist/cjs/triggers/components/TriggerHeader.js +2 -1
- package/dist/cjs/triggers/components/TriggerHeader.js.map +1 -1
- package/dist/cjs/triggers/constants/index.js.map +1 -1
- package/dist/cjs/triggers/index.js +3 -0
- package/dist/cjs/triggers/index.js.map +1 -1
- package/dist/cjs/triggers/utils/validation.utils.js +15 -11
- package/dist/cjs/triggers/utils/validation.utils.js.map +1 -1
- package/dist/es/commons/constants/index.js +1 -1
- package/dist/es/commons/constants/index.js.map +1 -1
- package/dist/es/commons/helpers/index.js +43 -16
- package/dist/es/commons/helpers/index.js.map +1 -1
- package/dist/es/contact-import/components/ManageImport/Completed.js +1 -1
- package/dist/es/contact-import/components/ManageImport/Completed.js.map +1 -1
- package/dist/es/contact-import/components/ManageImport/Dashboard.js +3 -3
- package/dist/es/contact-import/components/ManageImport/Dashboard.js.map +1 -1
- package/dist/es/contact-import/components/ManageImport/Scheduled.js +1 -1
- package/dist/es/contact-import/components/ManageImport/Scheduled.js.map +1 -1
- package/dist/es/contact-import/components/contact-import-mapping.js +8 -4
- package/dist/es/contact-import/components/contact-import-mapping.js.map +1 -1
- package/dist/es/contact-import/index.js +3 -1
- package/dist/es/contact-import/index.js.map +1 -1
- package/dist/es/dynamic-mapping/components/configuration-setup.js +1 -0
- package/dist/es/dynamic-mapping/components/configuration-setup.js.map +1 -1
- package/dist/es/dynamic-mapping/components/mapping-header.js +2 -1
- package/dist/es/dynamic-mapping/components/mapping-header.js.map +1 -1
- package/dist/es/dynamic-mapping/components/mapping.js +5 -3
- package/dist/es/dynamic-mapping/components/mapping.js.map +1 -1
- package/dist/es/dynamic-mapping/components/tabs-content-component.js +24 -4
- package/dist/es/dynamic-mapping/components/tabs-content-component.js.map +1 -1
- package/dist/es/dynamic-mapping/constants/condition-operators.js +28 -3
- package/dist/es/dynamic-mapping/constants/condition-operators.js.map +1 -1
- package/dist/es/dynamic-mapping/constants/ui-strings.js.map +1 -1
- package/dist/es/dynamic-mapping/helpers/derive-condition-data.js +19 -1
- package/dist/es/dynamic-mapping/helpers/derive-condition-data.js.map +1 -1
- package/dist/es/dynamic-mapping/helpers/mapping.helpers.js +97 -2
- package/dist/es/dynamic-mapping/helpers/mapping.helpers.js.map +1 -1
- package/dist/es/dynamic-mapping/hooks/use-custom-dropdown.js +2 -0
- package/dist/es/dynamic-mapping/hooks/use-custom-dropdown.js.map +1 -1
- package/dist/es/dynamic-mapping/hooks/use-mapping-data.js +130 -41
- package/dist/es/dynamic-mapping/hooks/use-mapping-data.js.map +1 -1
- package/dist/es/dynamic-mapping/hooks/use-mapping-header.js +13 -9
- package/dist/es/dynamic-mapping/hooks/use-mapping-header.js.map +1 -1
- package/dist/es/dynamic-mapping/index.js +2 -0
- package/dist/es/dynamic-mapping/index.js.map +1 -1
- package/dist/es/dynamic-mapping/utils/validation.utils.js +5 -1
- package/dist/es/dynamic-mapping/utils/validation.utils.js.map +1 -1
- package/dist/es/filter/filter-pill.js +24 -7
- package/dist/es/filter/filter-pill.js.map +1 -1
- package/dist/es/integration-template/components/dashboard/DashboardItem.js +3 -1
- package/dist/es/integration-template/components/dashboard/DashboardItem.js.map +1 -1
- package/dist/es/integration-template/components/dashboard/SingleMappingDashboardItem.js +1 -1
- package/dist/es/integration-template/components/dashboard/SingleMappingDashboardItem.js.map +1 -1
- package/dist/es/integration-template/components/dashboard/SingleMappingEventWrapper.js +1 -0
- package/dist/es/integration-template/components/dashboard/SingleMappingEventWrapper.js.map +1 -1
- package/dist/es/integration-template/components/dashboard-utils.js +17 -3
- package/dist/es/integration-template/components/dashboard-utils.js.map +1 -1
- package/dist/es/integration-template/components/dashboard.js +8 -0
- package/dist/es/integration-template/components/dashboard.js.map +1 -1
- package/dist/es/mapping/components/field.js +18 -10
- package/dist/es/mapping/components/field.js.map +1 -1
- package/dist/es/mapping/hooks/use-survey-data.js +34 -22
- package/dist/es/mapping/hooks/use-survey-data.js.map +1 -1
- package/dist/es/mapping/utils/conditionDescriptionBuilder.js +12 -2
- package/dist/es/mapping/utils/conditionDescriptionBuilder.js.map +1 -1
- package/dist/es/mapping/utils/validation.utils.js +1 -1
- package/dist/es/mapping/utils/validation.utils.js.map +1 -1
- package/dist/es/single-mapping/components/MappingHeader.js +6 -3
- package/dist/es/single-mapping/components/MappingHeader.js.map +1 -1
- package/dist/es/single-mapping/components/mapping.js +2 -2
- package/dist/es/single-mapping/components/mapping.js.map +1 -1
- package/dist/es/single-mapping/hooks/use-mapping-data.js +13 -11
- package/dist/es/single-mapping/hooks/use-mapping-data.js.map +1 -1
- package/dist/es/triggers/components/EventSetup.js +2 -1
- package/dist/es/triggers/components/EventSetup.js.map +1 -1
- package/dist/es/triggers/components/TriggerHeader.js +2 -1
- package/dist/es/triggers/components/TriggerHeader.js.map +1 -1
- package/dist/es/triggers/constants/index.js.map +1 -1
- package/dist/es/triggers/index.js +3 -0
- package/dist/es/triggers/index.js.map +1 -1
- package/dist/es/triggers/utils/validation.utils.js +15 -11
- package/dist/es/triggers/utils/validation.utils.js.map +1 -1
- package/dist/index.d.ts +6 -1
- package/package.json +1 -1
|
@@ -30,7 +30,7 @@ const mappingType = [
|
|
|
30
30
|
{ id: 3, label: "Variable", value: "VARIABLE" },
|
|
31
31
|
{ id: 4, label: "Expression", value: "EXPRESSION" },
|
|
32
32
|
{ id: 5, label: "Submission Property", value: "SUBMISSION_PROPERTY" },
|
|
33
|
-
{ id: 6, label: "
|
|
33
|
+
{ id: 6, label: "Enrich", value: "DERIVED_QUESTION" }
|
|
34
34
|
];
|
|
35
35
|
const defaultFieldValue = {
|
|
36
36
|
id: v4.default(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/commons/constants/index.ts"],"sourcesContent":["import { v4 as uuid } from \"uuid\";\n\nexport const surveySparrowURL = \"https://api.surveysparrow.com\";\n\n// UI Constants\nexport const FORM_WIDTH = 488;\nexport const MODAL_MAX_WIDTH = 600;\nexport const INPUT_MAX_LENGTH = 30;\n\n// CSS spacing constants (using stitches design tokens)\nexport const SPACING = {\n xs: \"$2\",\n sm: \"$4\", \n md: \"$8\",\n lg: \"$12\",\n xl: \"$16\",\n \"2xl\": \"$24\",\n \"3xl\": \"$32\",\n \"4xl\": \"$40\",\n} as const;\n\ntype MappingType = {\n id: number;\n label: string;\n value: string;\n};\n\nexport const mappingType: MappingType[] = [\n { id: 1, label: \"Question\", value: \"QUESTION\" },\n { id: 2, label: \"Contact\", value: \"CONTACT\" },\n { id: 3, label: \"Variable\", value: \"VARIABLE\" },\n { id: 4, label: \"Expression\", value: \"EXPRESSION\" },\n { id: 5, label: \"Submission Property\", value: \"SUBMISSION_PROPERTY\" },\n { id: 6, label: \"Derived Question\", value: \"DERIVED_QUESTION\" },\n];\n\ntype FieldValue = {\n id: string;\n surveySparrowField: string | null;\n integrationField: string | null;\n integrationFieldType: string | null;\n isEssentialField: boolean;\n mappedType: MappingType;\n defaultValue: string | null;\n label?: string;\n value?: string;\n type?: string;\n};\n\nexport const defaultFieldValue: FieldValue = {\n id: uuid(),\n surveySparrowField: null,\n integrationField: null,\n integrationFieldType: null,\n isEssentialField: false,\n mappedType: mappingType[0],\n defaultValue: null,\n};\n\ntype IntegrationMappingField = {\n id: number;\n label: string;\n value: string;\n type: string;\n dependency?: FieldValue[];\n};\n\nexport const sampleIntegrationMappingFields: IntegrationMappingField[] = [\n { id: 1, label: \"Email\", value: \"email\", type: \"email\" },\n { id: 2, label: \"Phone Number\", value: \"phone_number\", type: \"NUMBER\" },\n { id: 3, label: \"First Name\", value: \"first_name\", type: \"string\" },\n { id: 4, label: \"Organization\", value: \"organization\", type: \"string\" },\n { id: 5, label: \"Title\", value: \"title\", type: \"string\" },\n {\n id: 6,\n label: \"External Id\",\n value: \"external_id\",\n type: \"string\",\n dependency: [\n {\n ...defaultFieldValue,\n isEssentialField: true,\n id: uuid(),\n label: \"Title\",\n value: \"title\",\n type: \"string\",\n },\n {\n ...defaultFieldValue,\n id: uuid(),\n label: \"Image\",\n value: \"image\",\n type: \"string\",\n },\n ],\n },\n { id: 7, label: \"Last Name\", value: \"last_name\", type: \"string\" },\n { id: 8, label: \"Image\", value: \"image\", type: \"string\" },\n { id: 9, label: \"Address1\", value: \"address1\", type: \"string\" },\n { id: 10, label: \"Address2\", value: \"address2\", type: \"string\" },\n { id: 11, label: \"City\", value: \"city\", type: \"string\" },\n { id: 12, label: \"Country\", value: \"country\", type: \"string\" },\n { id: 13, label: \"Latitude\", value: \"latitude\", type: \"string\" },\n { id: 14, label: \"Longitude\", value: \"longitude\", type: \"string\" },\n { id: 15, label: \"Region\", value: \"region\", type: \"string\" },\n { id: 16, label: \"Zip Code\", value: \"zip\", type: \"string\" },\n { id: 17, label: \"Time Zone\", value: \"timezone\", type: \"string\" },\n { id: 18, label: \"IP Address\", value: \"ip\", type: \"DATE_TIME\" },\n];\n\ntype SampleField = {\n id?: string;\n surveySparrowField: string | null;\n integrationField: string | null;\n isEssentialField: boolean;\n mappedType: MappingType;\n};\n\nexport const sampleFields: SampleField[] = [\n {\n surveySparrowField: null,\n integrationField: null,\n isEssentialField: false,\n mappedType: { id: 1, label: \"Question\", value: \"QUESTION\" },\n },\n {\n id: uuid(),\n surveySparrowField: null,\n integrationField: null,\n isEssentialField: true,\n mappedType: { id: 1, label: \"Question\", value: \"QUESTION\" },\n },\n];\n\nexport const sampleIntegrationFields: IntegrationMappingField[] = [\n { id: 1, label: \"Email\", value: \"email\", type: \"email\" },\n];\n\ntype MappingTabValue = {\n id: number;\n name: string;\n value: string;\n placeholder: string;\n};\n\nexport const mappingTabValues: MappingTabValue[] = [\n { id: 1, name: \"Questions\", value: \"QUESTIONS\", placeholder: \"questions\" },\n { id: 6, name: \"Enrich\", value: \"DERIVED_QUESTIONS\", placeholder: \"derivedQuestions\" },\n { id: 2, name: \"Variable\", value: \"VARIABLE\", placeholder: \"variables\" },\n {\n id: 3,\n name: \"Contact\",\n value: \"CONTACT\",\n placeholder: \"contactProperties\",\n },\n {\n id: 4,\n name: \"Expression\",\n value: \"EXPRESSION\",\n placeholder: \"expressions\",\n },\n { id: 5, name: \"Property\", value: \"PROPERTY\", placeholder: \"property\" },\n \n];\n\ntype MappingPropertyValue = {\n name: string;\n id: string;\n isEnabled: boolean;\n};\n\nexport const mappingPropertyValues: MappingPropertyValue[] = [\n { name: \"Started Time\", id: \"STARTED_TIME\", isEnabled: false },\n { name: \"Submitted Time\", id: \"SUBMITTED_TIME\", isEnabled: false },\n { name: \"CompletionStatus\", id: \"COMPLETION_STATUS\", isEnabled: false },\n { name: \"IP Address\", id: \"IP_ADDRESS\", isEnabled: false },\n { name: \"Location\", id: \"LOCATION\", isEnabled: false },\n { name: \"DMS (Lat, Long)\", id: \"DMS\", isEnabled: false },\n { name: \"Channel Type\", id: \"CHANNEL_TYPE\", isEnabled: false },\n { name: \"Channel Name\", id: \"CHANNEL_NAME\", isEnabled: false },\n { name: \"Device ID\", id: \"DEVICE_ID\", isEnabled: false },\n { name: \"Device Name\", id: \"DEVICE_NAME\", isEnabled: false },\n { name: \"Browser\", id: \"BROWSER\", isEnabled: false },\n { name: \"OS\", id: \"OS\", isEnabled: false },\n { name: \"Submission Id\", id: \"SUBMISSION_ID\", isEnabled: false },\n { name: \"Time Zone\", id: \"TIME_ZONE\", isEnabled: false },\n { name: \"Device Type\", id: \"DEVICE_TYPE\", isEnabled: false },\n { name: \"Browser Language\", id: \"BROWSER_LANGUAGE\", isEnabled: false },\n { name: \"Tags\", id: \"TAGS\", isEnabled: false },\n { name: \"Language Name\", id: \"LANGUAGE_NAME\", isEnabled: false },\n];\n\ntype SubMenuOption = {\n id: number;\n label: string;\n subLabel: string;\n value: string;\n};\n\nexport const subMenuOptions: SubMenuOption[] = [\n {\n id: 1,\n label: \"String\",\n subLabel: \"Textual Data. (Eg: Hello World, 1234)\",\n value: \"STRING\",\n },\n {\n id: 2,\n label: \"Number\",\n subLabel: \"Numeric Value. (Eg: 123, -45, 0)\",\n value: \"NUMBER\",\n },\n { id: 3, label: \"Boolean\", subLabel: \"True or False\", value: \"BOOLEAN\" },\n {\n id: 4,\n label: \"Date/Time\",\n subLabel: \"Timestamp or Calendar Information\",\n value: \"DATE_TIME\",\n },\n];\n\ntype OperatorOption = {\n id: number;\n label: string;\n value: string;\n isDateOnly?: boolean;\n type?: string\n};\n\nexport const operatorOptions: OperatorOption[] = [\n { id: 1, label: \"is equals to\", value: \"IS\", type: \"BOOLEAN\" },\n { id: 2, label: \"is not equals to\", value: \"IS_NOT\", type: \"BOOLEAN\" },\n { id: 3, label: \"contains\", value: \"CONTAINS\" },\n { id: 4, label: \"not contains\", value: \"CONTAINS_NOT\" },\n { id: 5, label: \"starts with\", value: \"STARTS_WITH\" },\n { id: 6, label: \"ends with\", value: \"ENDS_WITH\" },\n { id: 5, label: \"has no value\", value: \"NO_VALUE\" },\n { id: 6, label: \"before\", value: \"BEFORE\", isDateOnly: true },\n { id: 7, label: \"after\", value: \"AFTER\", isDateOnly: true },\n { id: 8, label: \"on\", value: \"ON\", isDateOnly: true },\n { id: 9, label: \"has any value\", value: \"ANY_VALUE\" },\n];\n\ntype BooleanOption = {\n id: number;\n label: string;\n value: boolean;\n};\n\nexport const booleanOptions: BooleanOption[] = [\n { id: 1, label: \"True\", value: true },\n { id: 2, label: \"False\", value: false },\n];\nexport const integrationsNpsSubmissionProperties = [\n { label: 'Submission Start time', value: 'start_time', type: 'STRING' },\n { label: 'Device type', value: 'device_type', type: 'STRING' },\n { label: 'IP', value: 'ip', type: 'STRING' },\n { label: 'Language', value: 'language', type: 'STRING' },\n { label: 'Survey ID', value: 'survey_id', type: 'STRING' },\n { label: 'Submission state', value: 'state', type: 'STRING' },\n { label: 'Submission ID', value: 'id', type: 'STRING' },\n { label: 'Time taken', value: 'time_taken', type: 'STRING' },\n { label: 'Submitted at', value: 'completed_time', type: 'STRING' },\n { label: 'Location', value: 'location', type: 'STRING' },\n { label: 'OS', value: 'os', type: 'STRING' },\n { label: 'Browser', value: 'browser', type: 'STRING' },\n { label: 'Login Email (Offline)', value: 'loginEmail', type: 'STRING' },\n { label: 'DMS (Offline)', value: 'dms', type: 'STRING' },\n]; \n\nexport const integrationsClassicSubmissionProperties = [\n { label: 'Submitted at', value: 'completed_time', type: 'STRING' },\n { label: 'Device type', value: 'device_type', type: 'STRING' },\n { label: 'Language', value: 'language', type: 'STRING' },\n { label: 'Start time', value: 'start_time', type: 'STRING' },\n { label: 'Survey ID', value: 'survey_id', type: 'STRING' },\n { label: 'Time taken', value: 'time_taken', type: 'STRING' },\n { label: 'Submission state', value: 'state', type: 'STRING' },\n { label: 'Submission ID', value: 'id', type: 'STRING' },\n { label: 'Location', value: 'location', type: 'STRING' },\n { label: 'OS', value: 'os', type: 'STRING' },\n { label: 'Browser', value: 'browser', type: 'STRING' },\n { label: 'IP', value: 'ip', type: 'STRING' },\n { label: 'Channel Type', value: 'channel_type', type: 'STRING' },\n { label: 'Login Email (Offline)', value: 'loginEmail', type: 'STRING' },\n { label: 'DMS (Offline)', value: 'dms', type: 'STRING' },\n];\n\nexport const dynamicDateOptions = [\n {\n label: \"Last 7 days\",\n value: \"last_7_days\",\n },\n {\n label: \"Last 30 days\",\n value: \"last_30_days\",\n },\n {\n label: \"Last 3 months\",\n value: \"last_3_months\",\n },\n {\n label: \"Custom\",\n value: \"custom\",\n },\n];\n\n\nexport const conditionData = [\n {\n label: \"Contact Properties\",\n value: \"contactProperties\",\n options: [\n {\n label: \"Full Name Full Name Full Name Full Name Full Name Full Name Full Name Full Name Full Name Full Name Full Name Full Name Full Name Full Name Full Name\",\n value: \"fullName\",\n subLabel: \"5\",\n operators: [\n { label: \"equals\", value: \"equals\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"does not equal\", value: \"does-not-equal\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"contains\", value: \"contains\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"does not contain\", value: \"does-not-contain\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"starts with\", value: \"starts-with\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"ends with\", value: \"ends-with\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"regex\", value: \"regex\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"has any value\", value: \"has-any-value\", dataType: \"NO_VALUE\", type: \"VALUE_SELECTOR\" },\n { label: \"has no value\", value: \"has-no-value\", dataType: \"NO_VALUE\", type: \"VALUE_SELECTOR\" }\n ]\n },\n {\n label: \"First Name\",\n value: \"firstName\",\n operators: [\n { label: \"equals\", value: \"equals\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"does not equal\", value: \"does-not-equal\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"contains\", value: \"contains\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"does not contain\", value: \"does-not-contain\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"starts with\", value: \"starts-with\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"ends with\", value: \"ends-with\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"regex\", value: \"regex\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"has any value\", value: \"has-any-value\", dataType: \"NO_VALUE\", type: \"VALUE_SELECTOR\" },\n { label: \"has no value\", value: \"has-no-value\", dataType: \"NO_VALUE\", type: \"VALUE_SELECTOR\" }\n ]\n },\n {\n label: \"Email\",\n value: \"email\",\n operators: [\n {\n label: \"equals\",\n value: \"equals\",\n dataType: \"SINGLE_LINE_TEXT\",\n type: \"VALUE_SELECTOR\",\n regex: \"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\\\.[a-zA-Z]{2,}$\"\n },\n {\n label: \"does not equal\",\n value: \"does-not-equal\",\n dataType: \"SINGLE_LINE_TEXT\",\n type: \"VALUE_SELECTOR\",\n regex: \"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\\\.[a-zA-Z]{2,}$\"\n },\n { label: \"contains\", value: \"contains\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"does not contain\", value: \"does-not-contain\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"starts with\", value: \"starts-with\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"ends with\", value: \"ends-with\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"regex\", value: \"regex\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"has any value\", value: \"has-any-value\", dataType: \"NO_VALUE\", type: \"VALUE_SELECTOR\" },\n { label: \"has no value\", value: \"has-no-value\", dataType: \"NO_VALUE\", type: \"VALUE_SELECTOR\" }\n ]\n },\n {\n label: \"Language\",\n value: \"language\",\n operators: [\n {\n label: \"includes\",\n value: \"includes\",\n dataType: \"MULTI_SELECT\",\n type: \"VALUE_SELECTOR\",\n valuesKey: \"language\",\n choices: [\n { label: \"English\", value: \"en\" },\n { label: \"French\", value: \"fr\" },\n { label: \"Spanish\", value: \"es\" },\n { label: \"German\", value: \"de\" },\n { label: \"Other\", value: \"other\" }\n ]\n },\n {\n label: \"does not include\",\n value: \"does-not-include\",\n dataType: \"MULTI_SELECT\",\n type: \"VALUE_SELECTOR\",\n valuesKey: \"language\",\n choices: [\n { label: \"English\", value: \"en\" },\n { label: \"French\", value: \"fr\" },\n { label: \"Spanish\", value: \"es\" },\n { label: \"German\", value: \"de\" },\n { label: \"Other\", value: \"other\" }\n ]\n }\n ]\n },\n {\n label: \"Created At\",\n value: \"createdAt\",\n operators: [\n { label: \"is\", value: \"is\", dataType: \"DATE\", type: \"VALUE_SELECTOR\" },\n { label: \"is not\", value: \"is-not\", dataType: \"DATE\", type: \"VALUE_SELECTOR\" },\n { label: \"is before\", value: \"is-before\", dataType: \"DATE\", type: \"VALUE_SELECTOR\" },\n { label: \"is after\", value: \"is-after\", dataType: \"DATE\", type: \"VALUE_SELECTOR\" },\n { label: \"is between\", value: \"is-between\", dataType: \"DATE_RANGE\", type: \"VALUE_SELECTOR\" }\n ]\n }\n ]\n },\n {\n label: \"Variables\",\n value: \"variables\",\n options: [\n {\n label: \"$var1\",\n value: \"$var1\",\n operators: [\n { label: \"equals\", value: \"equals\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"contains\", value: \"contains\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"has any value\", value: \"has-any-value\", dataType: \"NO_VALUE\", type: \"VALUE_SELECTOR\" },\n { label: \"has no value\", value: \"has-no-value\", dataType: \"NO_VALUE\", type: \"VALUE_SELECTOR\" }\n ]\n }\n ]\n },\n {\n label: \"Survey 1\",\n value: \"survey1\",\n operators: [\n {\n label: \"Responded\",\n value: \"responded\",\n dataType: \"SINGLE_SELECT\",\n type: \"VALUE_SELECTOR\",\n choices: [\n { label: \"Responded\", value: \"responded\" },\n { label: \"Partially Responded\", value: \"partially-responded\" },\n { label: \"Not Responded\", value: \"not-responded\" }\n ]\n }\n ]\n }\n];\n"],"names":["uuid"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/commons/constants/index.ts"],"sourcesContent":["import { v4 as uuid } from \"uuid\";\n\nexport const surveySparrowURL = \"https://api.surveysparrow.com\";\n\n// UI Constants\nexport const FORM_WIDTH = 488;\nexport const MODAL_MAX_WIDTH = 600;\nexport const INPUT_MAX_LENGTH = 30;\n\n// CSS spacing constants (using stitches design tokens)\nexport const SPACING = {\n xs: \"$2\",\n sm: \"$4\", \n md: \"$8\",\n lg: \"$12\",\n xl: \"$16\",\n \"2xl\": \"$24\",\n \"3xl\": \"$32\",\n \"4xl\": \"$40\",\n} as const;\n\ntype MappingType = {\n id: number;\n label: string;\n value: string;\n};\n\nexport const mappingType: MappingType[] = [\n { id: 1, label: \"Question\", value: \"QUESTION\" },\n { id: 2, label: \"Contact\", value: \"CONTACT\" },\n { id: 3, label: \"Variable\", value: \"VARIABLE\" },\n { id: 4, label: \"Expression\", value: \"EXPRESSION\" },\n { id: 5, label: \"Submission Property\", value: \"SUBMISSION_PROPERTY\" },\n { id: 6, label: \"Enrich\", value: \"DERIVED_QUESTION\" },\n];\n\ntype FieldValue = {\n id: string;\n surveySparrowField: string | null;\n integrationField: string | null;\n integrationFieldType: string | null;\n isEssentialField: boolean;\n mappedType: MappingType;\n defaultValue: string | null;\n label?: string;\n value?: string;\n type?: string;\n};\n\nexport const defaultFieldValue: FieldValue = {\n id: uuid(),\n surveySparrowField: null,\n integrationField: null,\n integrationFieldType: null,\n isEssentialField: false,\n mappedType: mappingType[0],\n defaultValue: null,\n};\n\ntype IntegrationMappingField = {\n id: number;\n label: string;\n value: string;\n type: string;\n dependency?: FieldValue[];\n};\n\nexport const sampleIntegrationMappingFields: IntegrationMappingField[] = [\n { id: 1, label: \"Email\", value: \"email\", type: \"email\" },\n { id: 2, label: \"Phone Number\", value: \"phone_number\", type: \"NUMBER\" },\n { id: 3, label: \"First Name\", value: \"first_name\", type: \"string\" },\n { id: 4, label: \"Organization\", value: \"organization\", type: \"string\" },\n { id: 5, label: \"Title\", value: \"title\", type: \"string\" },\n {\n id: 6,\n label: \"External Id\",\n value: \"external_id\",\n type: \"string\",\n dependency: [\n {\n ...defaultFieldValue,\n isEssentialField: true,\n id: uuid(),\n label: \"Title\",\n value: \"title\",\n type: \"string\",\n },\n {\n ...defaultFieldValue,\n id: uuid(),\n label: \"Image\",\n value: \"image\",\n type: \"string\",\n },\n ],\n },\n { id: 7, label: \"Last Name\", value: \"last_name\", type: \"string\" },\n { id: 8, label: \"Image\", value: \"image\", type: \"string\" },\n { id: 9, label: \"Address1\", value: \"address1\", type: \"string\" },\n { id: 10, label: \"Address2\", value: \"address2\", type: \"string\" },\n { id: 11, label: \"City\", value: \"city\", type: \"string\" },\n { id: 12, label: \"Country\", value: \"country\", type: \"string\" },\n { id: 13, label: \"Latitude\", value: \"latitude\", type: \"string\" },\n { id: 14, label: \"Longitude\", value: \"longitude\", type: \"string\" },\n { id: 15, label: \"Region\", value: \"region\", type: \"string\" },\n { id: 16, label: \"Zip Code\", value: \"zip\", type: \"string\" },\n { id: 17, label: \"Time Zone\", value: \"timezone\", type: \"string\" },\n { id: 18, label: \"IP Address\", value: \"ip\", type: \"DATE_TIME\" },\n];\n\ntype SampleField = {\n id?: string;\n surveySparrowField: string | null;\n integrationField: string | null;\n isEssentialField: boolean;\n mappedType: MappingType;\n};\n\nexport const sampleFields: SampleField[] = [\n {\n surveySparrowField: null,\n integrationField: null,\n isEssentialField: false,\n mappedType: { id: 1, label: \"Question\", value: \"QUESTION\" },\n },\n {\n id: uuid(),\n surveySparrowField: null,\n integrationField: null,\n isEssentialField: true,\n mappedType: { id: 1, label: \"Question\", value: \"QUESTION\" },\n },\n];\n\nexport const sampleIntegrationFields: IntegrationMappingField[] = [\n { id: 1, label: \"Email\", value: \"email\", type: \"email\" },\n];\n\ntype MappingTabValue = {\n id: number;\n name: string;\n value: string;\n placeholder: string;\n};\n\nexport const mappingTabValues: MappingTabValue[] = [\n { id: 1, name: \"Questions\", value: \"QUESTIONS\", placeholder: \"questions\" },\n { id: 6, name: \"Enrich\", value: \"DERIVED_QUESTIONS\", placeholder: \"derivedQuestions\" },\n { id: 2, name: \"Variable\", value: \"VARIABLE\", placeholder: \"variables\" },\n {\n id: 3,\n name: \"Contact\",\n value: \"CONTACT\",\n placeholder: \"contactProperties\",\n },\n {\n id: 4,\n name: \"Expression\",\n value: \"EXPRESSION\",\n placeholder: \"expressions\",\n },\n { id: 5, name: \"Property\", value: \"PROPERTY\", placeholder: \"property\" },\n \n];\n\ntype MappingPropertyValue = {\n name: string;\n id: string;\n isEnabled: boolean;\n};\n\nexport const mappingPropertyValues: MappingPropertyValue[] = [\n { name: \"Started Time\", id: \"STARTED_TIME\", isEnabled: false },\n { name: \"Submitted Time\", id: \"SUBMITTED_TIME\", isEnabled: false },\n { name: \"CompletionStatus\", id: \"COMPLETION_STATUS\", isEnabled: false },\n { name: \"IP Address\", id: \"IP_ADDRESS\", isEnabled: false },\n { name: \"Location\", id: \"LOCATION\", isEnabled: false },\n { name: \"DMS (Lat, Long)\", id: \"DMS\", isEnabled: false },\n { name: \"Channel Type\", id: \"CHANNEL_TYPE\", isEnabled: false },\n { name: \"Channel Name\", id: \"CHANNEL_NAME\", isEnabled: false },\n { name: \"Device ID\", id: \"DEVICE_ID\", isEnabled: false },\n { name: \"Device Name\", id: \"DEVICE_NAME\", isEnabled: false },\n { name: \"Browser\", id: \"BROWSER\", isEnabled: false },\n { name: \"OS\", id: \"OS\", isEnabled: false },\n { name: \"Submission Id\", id: \"SUBMISSION_ID\", isEnabled: false },\n { name: \"Time Zone\", id: \"TIME_ZONE\", isEnabled: false },\n { name: \"Device Type\", id: \"DEVICE_TYPE\", isEnabled: false },\n { name: \"Browser Language\", id: \"BROWSER_LANGUAGE\", isEnabled: false },\n { name: \"Tags\", id: \"TAGS\", isEnabled: false },\n { name: \"Language Name\", id: \"LANGUAGE_NAME\", isEnabled: false },\n];\n\ntype SubMenuOption = {\n id: number;\n label: string;\n subLabel: string;\n value: string;\n};\n\nexport const subMenuOptions: SubMenuOption[] = [\n {\n id: 1,\n label: \"String\",\n subLabel: \"Textual Data. (Eg: Hello World, 1234)\",\n value: \"STRING\",\n },\n {\n id: 2,\n label: \"Number\",\n subLabel: \"Numeric Value. (Eg: 123, -45, 0)\",\n value: \"NUMBER\",\n },\n { id: 3, label: \"Boolean\", subLabel: \"True or False\", value: \"BOOLEAN\" },\n {\n id: 4,\n label: \"Date/Time\",\n subLabel: \"Timestamp or Calendar Information\",\n value: \"DATE_TIME\",\n },\n];\n\ntype OperatorOption = {\n id: number;\n label: string;\n value: string;\n isDateOnly?: boolean;\n type?: string\n};\n\nexport const operatorOptions: OperatorOption[] = [\n { id: 1, label: \"is equals to\", value: \"IS\", type: \"BOOLEAN\" },\n { id: 2, label: \"is not equals to\", value: \"IS_NOT\", type: \"BOOLEAN\" },\n { id: 3, label: \"contains\", value: \"CONTAINS\" },\n { id: 4, label: \"not contains\", value: \"CONTAINS_NOT\" },\n { id: 5, label: \"starts with\", value: \"STARTS_WITH\" },\n { id: 6, label: \"ends with\", value: \"ENDS_WITH\" },\n { id: 5, label: \"has no value\", value: \"NO_VALUE\" },\n { id: 6, label: \"before\", value: \"BEFORE\", isDateOnly: true },\n { id: 7, label: \"after\", value: \"AFTER\", isDateOnly: true },\n { id: 8, label: \"on\", value: \"ON\", isDateOnly: true },\n { id: 9, label: \"has any value\", value: \"ANY_VALUE\" },\n];\n\ntype BooleanOption = {\n id: number;\n label: string;\n value: boolean;\n};\n\nexport const booleanOptions: BooleanOption[] = [\n { id: 1, label: \"True\", value: true },\n { id: 2, label: \"False\", value: false },\n];\nexport const integrationsNpsSubmissionProperties = [\n { label: 'Submission Start time', value: 'start_time', type: 'STRING' },\n { label: 'Device type', value: 'device_type', type: 'STRING' },\n { label: 'IP', value: 'ip', type: 'STRING' },\n { label: 'Language', value: 'language', type: 'STRING' },\n { label: 'Survey ID', value: 'survey_id', type: 'STRING' },\n { label: 'Submission state', value: 'state', type: 'STRING' },\n { label: 'Submission ID', value: 'id', type: 'STRING' },\n { label: 'Time taken', value: 'time_taken', type: 'STRING' },\n { label: 'Submitted at', value: 'completed_time', type: 'STRING' },\n { label: 'Location', value: 'location', type: 'STRING' },\n { label: 'OS', value: 'os', type: 'STRING' },\n { label: 'Browser', value: 'browser', type: 'STRING' },\n { label: 'Login Email (Offline)', value: 'loginEmail', type: 'STRING' },\n { label: 'DMS (Offline)', value: 'dms', type: 'STRING' },\n]; \n\nexport const integrationsClassicSubmissionProperties = [\n { label: 'Submitted at', value: 'completed_time', type: 'STRING' },\n { label: 'Device type', value: 'device_type', type: 'STRING' },\n { label: 'Language', value: 'language', type: 'STRING' },\n { label: 'Start time', value: 'start_time', type: 'STRING' },\n { label: 'Survey ID', value: 'survey_id', type: 'STRING' },\n { label: 'Time taken', value: 'time_taken', type: 'STRING' },\n { label: 'Submission state', value: 'state', type: 'STRING' },\n { label: 'Submission ID', value: 'id', type: 'STRING' },\n { label: 'Location', value: 'location', type: 'STRING' },\n { label: 'OS', value: 'os', type: 'STRING' },\n { label: 'Browser', value: 'browser', type: 'STRING' },\n { label: 'IP', value: 'ip', type: 'STRING' },\n { label: 'Channel Type', value: 'channel_type', type: 'STRING' },\n { label: 'Login Email (Offline)', value: 'loginEmail', type: 'STRING' },\n { label: 'DMS (Offline)', value: 'dms', type: 'STRING' },\n];\n\nexport const dynamicDateOptions = [\n {\n label: \"Last 7 days\",\n value: \"last_7_days\",\n },\n {\n label: \"Last 30 days\",\n value: \"last_30_days\",\n },\n {\n label: \"Last 3 months\",\n value: \"last_3_months\",\n },\n {\n label: \"Custom\",\n value: \"custom\",\n },\n];\n\n\nexport const conditionData = [\n {\n label: \"Contact Properties\",\n value: \"contactProperties\",\n options: [\n {\n label: \"Full Name Full Name Full Name Full Name Full Name Full Name Full Name Full Name Full Name Full Name Full Name Full Name Full Name Full Name Full Name\",\n value: \"fullName\",\n subLabel: \"5\",\n operators: [\n { label: \"equals\", value: \"equals\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"does not equal\", value: \"does-not-equal\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"contains\", value: \"contains\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"does not contain\", value: \"does-not-contain\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"starts with\", value: \"starts-with\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"ends with\", value: \"ends-with\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"regex\", value: \"regex\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"has any value\", value: \"has-any-value\", dataType: \"NO_VALUE\", type: \"VALUE_SELECTOR\" },\n { label: \"has no value\", value: \"has-no-value\", dataType: \"NO_VALUE\", type: \"VALUE_SELECTOR\" }\n ]\n },\n {\n label: \"First Name\",\n value: \"firstName\",\n operators: [\n { label: \"equals\", value: \"equals\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"does not equal\", value: \"does-not-equal\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"contains\", value: \"contains\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"does not contain\", value: \"does-not-contain\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"starts with\", value: \"starts-with\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"ends with\", value: \"ends-with\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"regex\", value: \"regex\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"has any value\", value: \"has-any-value\", dataType: \"NO_VALUE\", type: \"VALUE_SELECTOR\" },\n { label: \"has no value\", value: \"has-no-value\", dataType: \"NO_VALUE\", type: \"VALUE_SELECTOR\" }\n ]\n },\n {\n label: \"Email\",\n value: \"email\",\n operators: [\n {\n label: \"equals\",\n value: \"equals\",\n dataType: \"SINGLE_LINE_TEXT\",\n type: \"VALUE_SELECTOR\",\n regex: \"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\\\.[a-zA-Z]{2,}$\"\n },\n {\n label: \"does not equal\",\n value: \"does-not-equal\",\n dataType: \"SINGLE_LINE_TEXT\",\n type: \"VALUE_SELECTOR\",\n regex: \"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\\\.[a-zA-Z]{2,}$\"\n },\n { label: \"contains\", value: \"contains\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"does not contain\", value: \"does-not-contain\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"starts with\", value: \"starts-with\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"ends with\", value: \"ends-with\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"regex\", value: \"regex\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"has any value\", value: \"has-any-value\", dataType: \"NO_VALUE\", type: \"VALUE_SELECTOR\" },\n { label: \"has no value\", value: \"has-no-value\", dataType: \"NO_VALUE\", type: \"VALUE_SELECTOR\" }\n ]\n },\n {\n label: \"Language\",\n value: \"language\",\n operators: [\n {\n label: \"includes\",\n value: \"includes\",\n dataType: \"MULTI_SELECT\",\n type: \"VALUE_SELECTOR\",\n valuesKey: \"language\",\n choices: [\n { label: \"English\", value: \"en\" },\n { label: \"French\", value: \"fr\" },\n { label: \"Spanish\", value: \"es\" },\n { label: \"German\", value: \"de\" },\n { label: \"Other\", value: \"other\" }\n ]\n },\n {\n label: \"does not include\",\n value: \"does-not-include\",\n dataType: \"MULTI_SELECT\",\n type: \"VALUE_SELECTOR\",\n valuesKey: \"language\",\n choices: [\n { label: \"English\", value: \"en\" },\n { label: \"French\", value: \"fr\" },\n { label: \"Spanish\", value: \"es\" },\n { label: \"German\", value: \"de\" },\n { label: \"Other\", value: \"other\" }\n ]\n }\n ]\n },\n {\n label: \"Created At\",\n value: \"createdAt\",\n operators: [\n { label: \"is\", value: \"is\", dataType: \"DATE\", type: \"VALUE_SELECTOR\" },\n { label: \"is not\", value: \"is-not\", dataType: \"DATE\", type: \"VALUE_SELECTOR\" },\n { label: \"is before\", value: \"is-before\", dataType: \"DATE\", type: \"VALUE_SELECTOR\" },\n { label: \"is after\", value: \"is-after\", dataType: \"DATE\", type: \"VALUE_SELECTOR\" },\n { label: \"is between\", value: \"is-between\", dataType: \"DATE_RANGE\", type: \"VALUE_SELECTOR\" }\n ]\n }\n ]\n },\n {\n label: \"Variables\",\n value: \"variables\",\n options: [\n {\n label: \"$var1\",\n value: \"$var1\",\n operators: [\n { label: \"equals\", value: \"equals\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"contains\", value: \"contains\", dataType: \"SINGLE_LINE_TEXT\", type: \"VALUE_SELECTOR\" },\n { label: \"has any value\", value: \"has-any-value\", dataType: \"NO_VALUE\", type: \"VALUE_SELECTOR\" },\n { label: \"has no value\", value: \"has-no-value\", dataType: \"NO_VALUE\", type: \"VALUE_SELECTOR\" }\n ]\n }\n ]\n },\n {\n label: \"Survey 1\",\n value: \"survey1\",\n operators: [\n {\n label: \"Responded\",\n value: \"responded\",\n dataType: \"SINGLE_SELECT\",\n type: \"VALUE_SELECTOR\",\n choices: [\n { label: \"Responded\", value: \"responded\" },\n { label: \"Partially Responded\", value: \"partially-responded\" },\n { label: \"Not Responded\", value: \"not-responded\" }\n ]\n }\n ]\n }\n];\n"],"names":["uuid"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAEO,MAAM,gBAAA,GAAmB;AAIzB,MAAM,eAAA,GAAkB;AACxB,MAAM,gBAAA,GAAmB;AAoBzB,MAAM,WAAA,GAA6B;AAAA,EACxC,EAAE,EAAA,EAAI,CAAA,EAAG,KAAA,EAAO,UAAA,EAAY,OAAO,UAAA,EAAW;AAAA,EAC9C,EAAE,EAAA,EAAI,CAAA,EAAG,KAAA,EAAO,SAAA,EAAW,OAAO,SAAA,EAAU;AAAA,EAC5C,EAAE,EAAA,EAAI,CAAA,EAAG,KAAA,EAAO,UAAA,EAAY,OAAO,UAAA,EAAW;AAAA,EAC9C,EAAE,EAAA,EAAI,CAAA,EAAG,KAAA,EAAO,YAAA,EAAc,OAAO,YAAA,EAAa;AAAA,EAClD,EAAE,EAAA,EAAI,CAAA,EAAG,KAAA,EAAO,qBAAA,EAAuB,OAAO,qBAAA,EAAsB;AAAA,EACpE,EAAE,EAAA,EAAI,CAAA,EAAG,KAAA,EAAO,QAAA,EAAU,OAAO,kBAAA;AACnC;AAeO,MAAM,iBAAA,GAAgC;AAAA,EAC3C,IAAIA,UAAA,EAAK;AAAA,EACT,kBAAA,EAAoB,IAAA;AAAA,EACpB,gBAAA,EAAkB,IAAA;AAAA,EAClB,oBAAA,EAAsB,IAAA;AAAA,EACtB,gBAAA,EAAkB,KAAA;AAAA,EAClB,UAAA,EAAY,YAAY,CAAC,CAAA;AAAA,EACzB,YAAA,EAAc;AAChB;AAUyE;AAAA,EACvE,EAAE,IAAI,CAAA,EAAG,KAAA,EAAO,SAAS,KAAA,EAAO,OAAA,EAAS,MAAM,OAAA,EAAQ;AAAA,EACvD,EAAE,IAAI,CAAA,EAAG,KAAA,EAAO,gBAAgB,KAAA,EAAO,cAAA,EAAgB,MAAM,QAAA,EAAS;AAAA,EACtE,EAAE,IAAI,CAAA,EAAG,KAAA,EAAO,cAAc,KAAA,EAAO,YAAA,EAAc,MAAM,QAAA,EAAS;AAAA,EAClE,EAAE,IAAI,CAAA,EAAG,KAAA,EAAO,gBAAgB,KAAA,EAAO,cAAA,EAAgB,MAAM,QAAA,EAAS;AAAA,EACtE,EAAE,IAAI,CAAA,EAAG,KAAA,EAAO,SAAS,KAAA,EAAO,OAAA,EAAS,MAAM,QAAA,EAAS;AAAA,EACxD;AAAA,IACE,EAAA,EAAI,CAAA;AAAA,IACJ,KAAA,EAAO,aAAA;AAAA,IACP,KAAA,EAAO,aAAA;AAAA,IACP,IAAA,EAAM,QAAA;AAAA,IACN,UAAA,EAAY;AAAA,MACV,iCACK,iBAAA,CAAA,EADL;AAAA,QAEE,gBAAA,EAAkB,IAAA;AAAA,QAClB,IAAIA,UAAA,EAAK;AAAA,QACT,KAAA,EAAO,OAAA;AAAA,QACP,KAAA,EAAO,OAAA;AAAA,QACP,IAAA,EAAM;AAAA,OACR,CAAA;AAAA,MACA,iCACK,iBAAA,CAAA,EADL;AAAA,QAEE,IAAIA,UAAA,EAAK;AAAA,QACT,KAAA,EAAO,OAAA;AAAA,QACP,KAAA,EAAO,OAAA;AAAA,QACP,IAAA,EAAM;AAAA,OACR;AAAA;AACF,GACF;AAAA,EACA,EAAE,IAAI,CAAA,EAAG,KAAA,EAAO,aAAa,KAAA,EAAO,WAAA,EAAa,MAAM,QAAA,EAAS;AAAA,EAChE,EAAE,IAAI,CAAA,EAAG,KAAA,EAAO,SAAS,KAAA,EAAO,OAAA,EAAS,MAAM,QAAA,EAAS;AAAA,EACxD,EAAE,IAAI,CAAA,EAAG,KAAA,EAAO,YAAY,KAAA,EAAO,UAAA,EAAY,MAAM,QAAA,EAAS;AAAA,EAC9D,EAAE,IAAI,EAAA,EAAI,KAAA,EAAO,YAAY,KAAA,EAAO,UAAA,EAAY,MAAM,QAAA,EAAS;AAAA,EAC/D,EAAE,IAAI,EAAA,EAAI,KAAA,EAAO,QAAQ,KAAA,EAAO,MAAA,EAAQ,MAAM,QAAA,EAAS;AAAA,EACvD,EAAE,IAAI,EAAA,EAAI,KAAA,EAAO,WAAW,KAAA,EAAO,SAAA,EAAW,MAAM,QAAA,EAAS;AAAA,EAC7D,EAAE,IAAI,EAAA,EAAI,KAAA,EAAO,YAAY,KAAA,EAAO,UAAA,EAAY,MAAM,QAAA,EAAS;AAAA,EAC/D,EAAE,IAAI,EAAA,EAAI,KAAA,EAAO,aAAa,KAAA,EAAO,WAAA,EAAa,MAAM,QAAA,EAAS;AAAA,EACjE,EAAE,IAAI,EAAA,EAAI,KAAA,EAAO,UAAU,KAAA,EAAO,QAAA,EAAU,MAAM,QAAA,EAAS;AAAA,EAC3D,EAAE,IAAI,EAAA,EAAI,KAAA,EAAO,YAAY,KAAA,EAAO,KAAA,EAAO,MAAM,QAAA,EAAS;AAAA,EAC1D,EAAE,IAAI,EAAA,EAAI,KAAA,EAAO,aAAa,KAAA,EAAO,UAAA,EAAY,MAAM,QAAA,EAAS;AAAA,EAChE,EAAE,IAAI,EAAA,EAAI,KAAA,EAAO,cAAc,KAAA,EAAO,IAAA,EAAM,MAAM,WAAA;AACpD;AAU2C;AAAA,EACzC;AAAA,IACE,kBAAA,EAAoB,IAAA;AAAA,IACpB,gBAAA,EAAkB,IAAA;AAAA,IAClB,gBAAA,EAAkB,KAAA;AAAA,IAClB,YAAY,EAAE,EAAA,EAAI,GAAG,KAAA,EAAO,UAAA,EAAY,OAAO,UAAA;AAAW,GAC5D;AAAA,EACA;AAAA,IACE,IAAIA,UAAA,EAAK;AAAA,IACT,kBAAA,EAAoB,IAAA;AAAA,IACpB,gBAAA,EAAkB,IAAA;AAAA,IAClB,gBAAA,EAAkB,IAAA;AAAA,IAClB,YAAY,EAAE,EAAA,EAAI,GAAG,KAAA,EAAO,UAAA,EAAY,OAAO,UAAA;AAAW;AAE9D;AAaO,MAAM,gBAAA,GAAsC;AAAA,EACjD,EAAE,IAAI,CAAA,EAAG,IAAA,EAAM,aAAa,KAAA,EAAO,WAAA,EAAa,aAAa,WAAA,EAAY;AAAA,EACzE,EAAE,IAAI,CAAA,EAAG,IAAA,EAAM,UAAU,KAAA,EAAO,mBAAA,EAAqB,aAAa,kBAAA,EAAmB;AAAA,EACrF,EAAE,IAAI,CAAA,EAAG,IAAA,EAAM,YAAY,KAAA,EAAO,UAAA,EAAY,aAAa,WAAA,EAAY;AAAA,EACvE;AAAA,IACE,EAAA,EAAI,CAAA;AAAA,IACJ,IAAA,EAAM,SAAA;AAAA,IACN,KAAA,EAAO,SAAA;AAAA,IACP,WAAA,EAAa;AAAA,GACf;AAAA,EACA;AAAA,IACE,EAAA,EAAI,CAAA;AAAA,IACJ,IAAA,EAAM,YAAA;AAAA,IACN,KAAA,EAAO,YAAA;AAAA,IACP,WAAA,EAAa;AAAA,GACf;AAAA,EACA,EAAE,IAAI,CAAA,EAAG,IAAA,EAAM,YAAY,KAAA,EAAO,UAAA,EAAY,aAAa,UAAA;AAE7D;AAQO,MAAM,qBAAA,GAAgD;AAAA,EAC3D,EAAE,IAAA,EAAM,cAAA,EAAgB,EAAA,EAAI,cAAA,EAAgB,WAAW,KAAA,EAAM;AAAA,EAC7D,EAAE,IAAA,EAAM,gBAAA,EAAkB,EAAA,EAAI,gBAAA,EAAkB,WAAW,KAAA,EAAM;AAAA,EACjE,EAAE,IAAA,EAAM,kBAAA,EAAoB,EAAA,EAAI,mBAAA,EAAqB,WAAW,KAAA,EAAM;AAAA,EACtE,EAAE,IAAA,EAAM,YAAA,EAAc,EAAA,EAAI,YAAA,EAAc,WAAW,KAAA,EAAM;AAAA,EACzD,EAAE,IAAA,EAAM,UAAA,EAAY,EAAA,EAAI,UAAA,EAAY,WAAW,KAAA,EAAM;AAAA,EACrD,EAAE,IAAA,EAAM,iBAAA,EAAmB,EAAA,EAAI,KAAA,EAAO,WAAW,KAAA,EAAM;AAAA,EACvD,EAAE,IAAA,EAAM,cAAA,EAAgB,EAAA,EAAI,cAAA,EAAgB,WAAW,KAAA,EAAM;AAAA,EAC7D,EAAE,IAAA,EAAM,cAAA,EAAgB,EAAA,EAAI,cAAA,EAAgB,WAAW,KAAA,EAAM;AAAA,EAC7D,EAAE,IAAA,EAAM,WAAA,EAAa,EAAA,EAAI,WAAA,EAAa,WAAW,KAAA,EAAM;AAAA,EACvD,EAAE,IAAA,EAAM,aAAA,EAAe,EAAA,EAAI,aAAA,EAAe,WAAW,KAAA,EAAM;AAAA,EAC3D,EAAE,IAAA,EAAM,SAAA,EAAW,EAAA,EAAI,SAAA,EAAW,WAAW,KAAA,EAAM;AAAA,EACnD,EAAE,IAAA,EAAM,IAAA,EAAM,EAAA,EAAI,IAAA,EAAM,WAAW,KAAA,EAAM;AAAA,EACzC,EAAE,IAAA,EAAM,eAAA,EAAiB,EAAA,EAAI,eAAA,EAAiB,WAAW,KAAA,EAAM;AAAA,EAC/D,EAAE,IAAA,EAAM,WAAA,EAAa,EAAA,EAAI,WAAA,EAAa,WAAW,KAAA,EAAM;AAAA,EACvD,EAAE,IAAA,EAAM,aAAA,EAAe,EAAA,EAAI,aAAA,EAAe,WAAW,KAAA,EAAM;AAAA,EAC3D,EAAE,IAAA,EAAM,kBAAA,EAAoB,EAAA,EAAI,kBAAA,EAAoB,WAAW,KAAA,EAAM;AAAA,EACrE,EAAE,IAAA,EAAM,MAAA,EAAQ,EAAA,EAAI,MAAA,EAAQ,WAAW,KAAA,EAAM;AAAA,EAC7C,EAAE,IAAA,EAAM,eAAA,EAAiB,EAAA,EAAI,eAAA,EAAiB,WAAW,KAAA;AAC3D;AASO,MAAM,cAAA,GAAkC;AAAA,EAC7C;AAAA,IACE,EAAA,EAAI,CAAA;AAAA,IACJ,KAAA,EAAO,QAAA;AAAA,IACP,QAAA,EAAU,uCAAA;AAAA,IACV,KAAA,EAAO;AAAA,GACT;AAAA,EACA;AAAA,IACE,EAAA,EAAI,CAAA;AAAA,IACJ,KAAA,EAAO,QAAA;AAAA,IACP,QAAA,EAAU,kCAAA;AAAA,IACV,KAAA,EAAO;AAAA,GACT;AAAA,EACA,EAAE,IAAI,CAAA,EAAG,KAAA,EAAO,WAAW,QAAA,EAAU,eAAA,EAAiB,OAAO,SAAA,EAAU;AAAA,EACvE;AAAA,IACE,EAAA,EAAI,CAAA;AAAA,IACJ,KAAA,EAAO,WAAA;AAAA,IACP,QAAA,EAAU,mCAAA;AAAA,IACV,KAAA,EAAO;AAAA;AAEX;AAUO,MAAM,eAAA,GAAoC;AAAA,EAC/C,EAAE,IAAI,CAAA,EAAG,KAAA,EAAO,gBAAgB,KAAA,EAAO,IAAA,EAAM,MAAM,SAAA,EAAU;AAAA,EAC7D,EAAE,IAAI,CAAA,EAAG,KAAA,EAAO,oBAAoB,KAAA,EAAO,QAAA,EAAU,MAAM,SAAA,EAAW;AAAA,EACtE,EAAE,EAAA,EAAI,CAAA,EAAG,KAAA,EAAO,UAAA,EAAY,OAAO,UAAA,EAAW;AAAA,EAC9C,EAAE,EAAA,EAAI,CAAA,EAAG,KAAA,EAAO,cAAA,EAAgB,OAAO,cAAA,EAAe;AAAA,EACtD,EAAE,EAAA,EAAI,CAAA,EAAG,KAAA,EAAO,aAAA,EAAe,OAAO,aAAA,EAAc;AAAA,EACpD,EAAE,EAAA,EAAI,CAAA,EAAG,KAAA,EAAO,WAAA,EAAa,OAAO,WAAA,EAAY;AAAA,EAChD,EAAE,EAAA,EAAI,CAAA,EAAG,KAAA,EAAO,cAAA,EAAgB,OAAO,UAAA,EAAW;AAAA,EAClD,EAAE,IAAI,CAAA,EAAG,KAAA,EAAO,UAAU,KAAA,EAAO,QAAA,EAAU,YAAY,IAAA,EAAK;AAAA,EAC5D,EAAE,IAAI,CAAA,EAAG,KAAA,EAAO,SAAS,KAAA,EAAO,OAAA,EAAS,YAAY,IAAA,EAAK;AAAA,EAC1D,EAAE,IAAI,CAAA,EAAG,KAAA,EAAO,MAAM,KAAA,EAAO,IAAA,EAAM,YAAY,IAAA,EAAK;AAAA,EACpD,EAAE,EAAA,EAAI,CAAA,EAAG,KAAA,EAAO,eAAA,EAAiB,OAAO,WAAA;AAC1C;AAQO,MAAM,cAAA,GAAkC;AAAA,EAC7C,EAAE,EAAA,EAAI,CAAA,EAAG,KAAA,EAAO,MAAA,EAAQ,OAAO,IAAA,EAAK;AAAA,EACpC,EAAE,EAAA,EAAI,CAAA,EAAG,KAAA,EAAO,OAAA,EAAS,OAAO,KAAA;AAClC;AACO,MAAM,mCAAA,GAAsC;AAAA,EACjD,EAAE,KAAA,EAAO,uBAAA,EAAyB,KAAA,EAAO,YAAA,EAAc,MAAM,QAAA,EAAS;AAAA,EACtE,EAAE,KAAA,EAAO,aAAA,EAAe,KAAA,EAAO,aAAA,EAAe,MAAM,QAAA,EAAS;AAAA,EAC7D,EAAE,KAAA,EAAO,IAAA,EAAM,KAAA,EAAO,IAAA,EAAM,MAAM,QAAA,EAAS;AAAA,EAC3C,EAAE,KAAA,EAAO,UAAA,EAAY,KAAA,EAAO,UAAA,EAAY,MAAM,QAAA,EAAS;AAAA,EACvD,EAAE,KAAA,EAAO,WAAA,EAAa,KAAA,EAAO,WAAA,EAAa,MAAM,QAAA,EAAS;AAAA,EACzD,EAAE,KAAA,EAAO,kBAAA,EAAoB,KAAA,EAAO,OAAA,EAAS,MAAM,QAAA,EAAS;AAAA,EAC5D,EAAE,KAAA,EAAO,eAAA,EAAiB,KAAA,EAAO,IAAA,EAAM,MAAM,QAAA,EAAS;AAAA,EACtD,EAAE,KAAA,EAAO,YAAA,EAAc,KAAA,EAAO,YAAA,EAAc,MAAM,QAAA,EAAS;AAAA,EAC3D,EAAE,KAAA,EAAO,cAAA,EAAgB,KAAA,EAAO,gBAAA,EAAkB,MAAM,QAAA,EAAS;AAAA,EACjE,EAAE,KAAA,EAAO,UAAA,EAAY,KAAA,EAAO,UAAA,EAAY,MAAM,QAAA,EAAS;AAAA,EACvD,EAAE,KAAA,EAAO,IAAA,EAAM,KAAA,EAAO,IAAA,EAAM,MAAM,QAAA,EAAS;AAAA,EAC3C,EAAE,KAAA,EAAO,SAAA,EAAW,KAAA,EAAO,SAAA,EAAW,MAAM,QAAA,EAAS;AAAA,EACrD,EAAE,KAAA,EAAO,uBAAA,EAAyB,KAAA,EAAO,YAAA,EAAc,MAAM,QAAA,EAAS;AAAA,EACtE,EAAE,KAAA,EAAO,eAAA,EAAiB,KAAA,EAAO,KAAA,EAAO,MAAM,QAAA;AAChD;AAEO,MAAM,uCAAA,GAA0C;AAAA,EACrD,EAAE,KAAA,EAAO,cAAA,EAAgB,KAAA,EAAO,gBAAA,EAAkB,MAAM,QAAA,EAAS;AAAA,EACjE,EAAE,KAAA,EAAO,aAAA,EAAe,KAAA,EAAO,aAAA,EAAe,MAAM,QAAA,EAAS;AAAA,EAC7D,EAAE,KAAA,EAAO,UAAA,EAAY,KAAA,EAAO,UAAA,EAAY,MAAM,QAAA,EAAS;AAAA,EACvD,EAAE,KAAA,EAAO,YAAA,EAAc,KAAA,EAAO,YAAA,EAAc,MAAM,QAAA,EAAS;AAAA,EAC3D,EAAE,KAAA,EAAO,WAAA,EAAa,KAAA,EAAO,WAAA,EAAa,MAAM,QAAA,EAAS;AAAA,EACzD,EAAE,KAAA,EAAO,YAAA,EAAc,KAAA,EAAO,YAAA,EAAc,MAAM,QAAA,EAAS;AAAA,EAC3D,EAAE,KAAA,EAAO,kBAAA,EAAoB,KAAA,EAAO,OAAA,EAAS,MAAM,QAAA,EAAS;AAAA,EAC5D,EAAE,KAAA,EAAO,eAAA,EAAiB,KAAA,EAAO,IAAA,EAAM,MAAM,QAAA,EAAS;AAAA,EACtD,EAAE,KAAA,EAAO,UAAA,EAAY,KAAA,EAAO,UAAA,EAAY,MAAM,QAAA,EAAS;AAAA,EACvD,EAAE,KAAA,EAAO,IAAA,EAAM,KAAA,EAAO,IAAA,EAAM,MAAM,QAAA,EAAS;AAAA,EAC3C,EAAE,KAAA,EAAO,SAAA,EAAW,KAAA,EAAO,SAAA,EAAW,MAAM,QAAA,EAAS;AAAA,EACrD,EAAE,KAAA,EAAO,IAAA,EAAM,KAAA,EAAO,IAAA,EAAM,MAAM,QAAA,EAAS;AAAA,EAC3C,EAAE,KAAA,EAAO,cAAA,EAAgB,KAAA,EAAO,cAAA,EAAgB,MAAM,QAAA,EAAS;AAAA,EAC/D,EAAE,KAAA,EAAO,uBAAA,EAAyB,KAAA,EAAO,YAAA,EAAc,MAAM,QAAA,EAAS;AAAA,EACtE,EAAE,KAAA,EAAO,eAAA,EAAiB,KAAA,EAAO,KAAA,EAAO,MAAM,QAAA;AAChD;AAEO,MAAM,kBAAA,GAAqB;AAAA,EAChC;AAAA,IACE,KAAA,EAAO,aAAA;AAAA,IACP,KAAA,EAAO;AAAA,GACT;AAAA,EACA;AAAA,IACE,KAAA,EAAO,cAAA;AAAA,IACP,KAAA,EAAO;AAAA,GACT;AAAA,EACA;AAAA,IACE,KAAA,EAAO,eAAA;AAAA,IACP,KAAA,EAAO;AAAA,GACT;AAAA,EACA;AAAA,IACE,KAAA,EAAO,QAAA;AAAA,IACP,KAAA,EAAO;AAAA;AAEX;;;;;;;;;;;;;;;;"}
|
|
@@ -19,6 +19,18 @@ var __spreadValues = (a, b) => {
|
|
|
19
19
|
return a;
|
|
20
20
|
};
|
|
21
21
|
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
22
|
+
var __objRest = (source, exclude) => {
|
|
23
|
+
var target = {};
|
|
24
|
+
for (var prop in source)
|
|
25
|
+
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
26
|
+
target[prop] = source[prop];
|
|
27
|
+
if (source != null && __getOwnPropSymbols)
|
|
28
|
+
for (var prop of __getOwnPropSymbols(source)) {
|
|
29
|
+
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
30
|
+
target[prop] = source[prop];
|
|
31
|
+
}
|
|
32
|
+
return target;
|
|
33
|
+
};
|
|
22
34
|
const handleMappingOptions = (mappingType, surveyQuestions, contactProperties, derivedQuestions, surveyVariables, expressions, integrationsNpsSubmissionProperties, integrationsClassicSubmissionProperties, surveyType, hasSurveyProperties) => {
|
|
23
35
|
let currentOption;
|
|
24
36
|
switch (mappingType) {
|
|
@@ -71,16 +83,22 @@ const handleQuestionOptions = (surveyQuestions) => {
|
|
|
71
83
|
return __spreadValues({}, val);
|
|
72
84
|
});
|
|
73
85
|
const groupedData = data.reduce((result, item) => {
|
|
74
|
-
var _a;
|
|
86
|
+
var _a, _b, _c;
|
|
75
87
|
const existingGroup = result.find((group) => group.label === item.label);
|
|
76
88
|
if (existingGroup) {
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
}
|
|
89
|
+
const itemOptions = ((_a = item.options) == null ? void 0 : _a.length) ? item.options : [];
|
|
90
|
+
if (itemOptions.length > 0) {
|
|
91
|
+
existingGroup.options.push(...itemOptions);
|
|
92
|
+
}
|
|
93
|
+
} else if (item.label || item.rtxt) {
|
|
94
|
+
const baseLabel = item.label || item.rtxt;
|
|
95
|
+
const displayLabel = item.isChild ? `${baseLabel}` : baseLabel;
|
|
96
|
+
result.push(__spreadValues(__spreadProps(__spreadValues({}, item), {
|
|
97
|
+
questionType: (_b = item == null ? void 0 : item.questionType) != null ? _b : item.type,
|
|
98
|
+
label: displayLabel,
|
|
99
|
+
options: ((_c = item.options) == null ? void 0 : _c.length) ? item.options : [],
|
|
100
|
+
value: (item == null ? void 0 : item.value) ? item.value : item.id
|
|
101
|
+
}), item.hasChildren && { isDisabled: true }));
|
|
84
102
|
}
|
|
85
103
|
return result;
|
|
86
104
|
}, []);
|
|
@@ -91,19 +109,28 @@ const handleQuestionOptions = (surveyQuestions) => {
|
|
|
91
109
|
});
|
|
92
110
|
const filteredData = updatedData == null ? void 0 : updatedData.filter((item) => !item.label).map((question) => {
|
|
93
111
|
var _a;
|
|
94
|
-
|
|
95
|
-
|
|
112
|
+
const baseLabel = !!((_a = question.rtxt) == null ? void 0 : _a.length) ? question.rtxt : "Please enter your question";
|
|
113
|
+
const displayLabel = question.isChild ? `-- ${baseLabel}` : baseLabel;
|
|
114
|
+
return __spreadValues({
|
|
115
|
+
label: displayLabel,
|
|
96
116
|
value: question.id,
|
|
97
117
|
questionType: question.type
|
|
98
|
-
};
|
|
118
|
+
}, question.hasChildren && { isDisabled: true });
|
|
99
119
|
});
|
|
100
120
|
const formattedData = [
|
|
101
121
|
...filteredData,
|
|
102
|
-
...groupedData.map((data2) =>
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
122
|
+
...groupedData.map((data2) => {
|
|
123
|
+
var _a;
|
|
124
|
+
if (((_a = data2.options) == null ? void 0 : _a.length) > 0) {
|
|
125
|
+
return __spreadProps(__spreadValues({}, data2), {
|
|
126
|
+
options: data2.options.map((option) => __spreadProps(__spreadValues({}, option), {
|
|
127
|
+
label: `- ${option.label}`
|
|
128
|
+
}))
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
const _b = data2, { options } = _b, flatItem = __objRest(_b, ["options"]);
|
|
132
|
+
return flatItem;
|
|
133
|
+
})
|
|
107
134
|
];
|
|
108
135
|
return formattedData;
|
|
109
136
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/commons/helpers/index.ts"],"sourcesContent":["import { ResultGroupDataOptionsType, ResultGroupDataType } from \"../../mapping/types\";\n\nexport const handleMappingOptions = (\n mappingType: string,\n surveyQuestions: Array<any>,\n contactProperties: Array<any>,\n derivedQuestions: any,\n surveyVariables: Array<any>,\n expressions: Array<any>,\n integrationsNpsSubmissionProperties: Array<any>,\n integrationsClassicSubmissionProperties: Array<any>,\n surveyType: string,\n hasSurveyProperties?: boolean | undefined\n) => {\n let currentOption;\n switch (mappingType) {\n case \"QUESTION\":\n if(hasSurveyProperties){\n currentOption = surveyQuestions?.map((question) => ({\n ...question,\n questionType: question.type\n }));\n } else {\n const filteredQuestions = surveyQuestions.filter((question) => question?.type !== \"Message\" && question?.type !== \"PaymentQuestion\");\n currentOption = handleQuestionOptions(filteredQuestions);\n }\n break;\n case \"CONTACT\":\n const filteredContactProperties = contactProperties.filter((contact) => contact?.name !== \"team_internal\" && contact?.name !== \"department_internal\");\n currentOption = filteredContactProperties.map((contact) => ({\n label: contact.label,\n value: contact.name\n }));\n break;\n case \"VARIABLE\":\n currentOption = surveyVariables.map((varibles) => ({\n name: varibles.name,\n label: varibles.label,\n value: varibles.id\n }));\n break;\n case \"EXPRESSION\":\n currentOption = expressions.map((expression) => ({\n label: expression.name,\n value: expression.id\n }));\n break;\n case \"SUBMISSION_PROPERTY\":\n currentOption = surveyType?.toLocaleLowerCase() === \"classicform\" ? integrationsClassicSubmissionProperties : integrationsNpsSubmissionProperties;\n break;\n case \"DERIVED_QUESTION\":\n currentOption = derivedQuestions?.map((derivedQuestion: any) => ({\n label: derivedQuestion.label,\n value: derivedQuestion.id,\n ...derivedQuestion\n }));\n break;\n default:\n currentOption = [];\n }\n
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/commons/helpers/index.ts"],"sourcesContent":["import { ResultGroupDataOptionsType, ResultGroupDataType } from \"../../mapping/types\";\n\nexport const handleMappingOptions = (\n mappingType: string,\n surveyQuestions: Array<any>,\n contactProperties: Array<any>,\n derivedQuestions: any,\n surveyVariables: Array<any>,\n expressions: Array<any>,\n integrationsNpsSubmissionProperties: Array<any>,\n integrationsClassicSubmissionProperties: Array<any>,\n surveyType: string,\n hasSurveyProperties?: boolean | undefined\n) => {\n let currentOption;\n switch (mappingType) {\n case \"QUESTION\":\n if(hasSurveyProperties){\n currentOption = surveyQuestions?.map((question) => ({\n ...question,\n questionType: question.type\n }));\n } else {\n const filteredQuestions = surveyQuestions.filter((question) => question?.type !== \"Message\" && question?.type !== \"PaymentQuestion\");\n currentOption = handleQuestionOptions(filteredQuestions);\n }\n break;\n case \"CONTACT\":\n const filteredContactProperties = contactProperties.filter((contact) => contact?.name !== \"team_internal\" && contact?.name !== \"department_internal\");\n currentOption = filteredContactProperties.map((contact) => ({\n label: contact.label,\n value: contact.name\n }));\n break;\n case \"VARIABLE\":\n currentOption = surveyVariables.map((varibles) => ({\n name: varibles.name,\n label: varibles.label,\n value: varibles.id\n }));\n break;\n case \"EXPRESSION\":\n currentOption = expressions.map((expression) => ({\n label: expression.name,\n value: expression.id\n }));\n break;\n case \"SUBMISSION_PROPERTY\":\n currentOption = surveyType?.toLocaleLowerCase() === \"classicform\" ? integrationsClassicSubmissionProperties : integrationsNpsSubmissionProperties;\n break;\n case \"DERIVED_QUESTION\":\n currentOption = derivedQuestions?.map((derivedQuestion: any) => ({\n label: derivedQuestion.label,\n value: derivedQuestion.id,\n ...derivedQuestion\n }));\n break;\n default:\n currentOption = [];\n }\n return currentOption;\n};\n\nconst handleQuestionOptions = (surveyQuestions: Array<any>) => {\n const data = surveyQuestions.map((val) => {\n return { ...val };\n });\n const groupedData = data.reduce((result, item) => {\n const existingGroup = result.find((group: ResultGroupDataType) => group.label === item.label);\n\n if (existingGroup) {\n const itemOptions = item.options?.length ? item.options : [];\n if (itemOptions.length > 0) {\n existingGroup.options.push(...itemOptions);\n }\n } else if (item.label || item.rtxt) {\n // Determine the label - add \"--\" prefix for child questions\n const baseLabel = item.label || item.rtxt;\n const displayLabel = item.isChild ? `${baseLabel}` : baseLabel;\n \n result.push({\n ...item,\n questionType: item?.questionType ?? item.type,\n label: displayLabel,\n options: item.options?.length ? item.options : [],\n value: item?.value ? item.value : item.id,\n // Disable parent questions that have children (they can't be selected directly)\n ...(item.hasChildren && { isDisabled: true }),\n });\n }\n return result;\n }, []);\n\n // Extract other data\n const updatedData = data?.filter((question) => {\n if (!groupedData.some((data: ResultGroupDataType) => data.label === question.rtxt)) {\n return question;\n }\n });\n\n const filteredData = updatedData\n ?.filter((item) => !item.label)\n .map((question) => {\n // Determine the label - add \"--\" prefix for child questions\n const baseLabel = !!question.rtxt?.length ? question.rtxt : 'Please enter your question';\n const displayLabel = question.isChild ? `-- ${baseLabel}` : baseLabel;\n \n return {\n label: displayLabel,\n value: question.id,\n questionType: question.type,\n // Disable parent questions that have children (they can't be selected directly)\n ...(question.hasChildren && { isDisabled: true }),\n };\n });\n\n const formattedData = [\n ...filteredData,\n ...groupedData.map((data: ResultGroupDataType) => {\n // Only include options property if there are actual sub-options\n // react-select treats items with an empty options array as empty groups\n if (data.options?.length > 0) {\n return {\n ...data,\n options: data.options.map((option: ResultGroupDataOptionsType) => ({\n ...option,\n label: `- ${option.label}`\n }))\n };\n }\n // Remove the options property for flat items so react-select treats them as selectable options\n const { options, ...flatItem } = data;\n return flatItem;\n })\n ];\n return formattedData;\n};\n\n\nexport const generateUniqueId = (): string => {\n return `id-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`;\n};"],"names":["data"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"Completed.js","sources":["../../../../../src/contact-import/components/ManageImport/Completed.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport {\n Box,\n Grid,\n Text,\n TooltipProvider,\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n IconButton,\n Flex,\n} from \"@sparrowengg/twigs-react\";\nimport dayjs from \"dayjs\";\nimport {\n AlertFillIcon,\n DeleteIcon,\n EllipsisVerticalIcon,\n TickCircleFillIcon,\n} from \"@sparrowengg/twigs-react-icons\";\nimport { CompletedImportTypes } from \"../../types\";\n\nconst Completed = ({ completed }: { completed: Array<CompletedImportTypes> }) => {\n const [currentRow, setCurrentRow] = useState(0);\n return (\n <>\n <TooltipProvider>\n <Box css={{ width: \"100%\", height: \"100%\", overflow: \"scroll\" }}>\n <Grid\n templateColumns=\"25% 25% 25% 13% 12%\"\n css={{\n borderTop: \"$borderWidths$xs solid $neutral200\",\n borderBottom: \"$borderWidths$xs solid $neutral200\",\n padding: \"$7 $12\",\n color: \"$neutral900\",\n alignItems: \"center\",\n position: \"sticky\",\n top: \"0\",\n background: \"white\",\n zIndex: \"2\",\n }}\n >\n <Text weight=\"medium\">Import Name</Text>\n <Text weight=\"medium\">Contact Type</Text>\n <Text weight=\"medium\">Imported on</Text>\n <Text weight=\"medium\">Status</Text>\n <Text weight=\"medium\"></Text>\n </Grid>\n {completed?.map((item: CompletedImportTypes) => {\n return (\n <Grid\n onMouseOver={() => setCurrentRow(item.id)}\n templateColumns=\"25% 25% 25% 13% 12%\"\n css={{\n borderBottom: \"$borderWidths$xs solid $neutral100\",\n padding: \"$9 $12\",\n fontWeight: \"$4\",\n color: \"$neutral700\",\n alignItems: \"center\",\n }}\n >\n <Text weight=\"bold\" css={{ color: \"$neutral900\" }}>\n {item.name}\n </Text>\n <Text css={{ color: \"$neutral900\" }}>{item.type}</Text>\n <Text>\n {dayjs(item.importedOn).format(\"MMM D, YYYY | h:mm A\")}\n </Text>\n <Text>\n {item.status === \"success\" ? (\n <TickCircleFillIcon color=\"#5EA130\" size=\"24\" />\n ) : (\n <AlertFillIcon color=\"#F65633\" size=\"24\" />\n )}\n </Text>\n\n <Flex justifyContent=\"center\">\n {currentRow === item.id ? (\n <DropdownMenu size=\"sm\">\n <DropdownMenuTrigger asChild>\n <IconButton size=\"md\" variant=\"ghost\" color=\"secondary\" aria-label=\"More options\">\n <EllipsisVerticalIcon />\n </IconButton>\n </DropdownMenuTrigger>\n <DropdownMenuContent\n onCloseAutoFocus={(e) => {\n e.preventDefault();\n }}\n side=\"bottom\"\n align=\"end\"\n css={{ minWidth: \"128px\", padding: \"$4 0\" }}\n >\n <DropdownMenuItem css={{ cursor: \"pointer\" }}>\n <Flex alignItems=\"center\" gap=\"$2\">\n <DeleteIcon color=\"#6A6A6A\" size={20} />\n <Text size=\"sm\">Delete</Text>\n </Flex>\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n ) : null}\n </Flex>\n </Grid>\n );\n })}\n </Box>\n </TooltipProvider>\n </>\n );\n};\n\nexport default Completed;\n"],"names":["useState","TooltipProvider","Box","Grid","Text","dayjs","TickCircleFillIcon","AlertFillIcon","Flex","DropdownMenu","DropdownMenuTrigger","IconButton","EllipsisVerticalIcon","DropdownMenuContent","DropdownMenuItem","DeleteIcon"],"mappings":"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"}
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var
|
|
6
|
-
var
|
|
5
|
+
var Completed = require('./Completed.js');
|
|
6
|
+
var Scheduled = require('./Scheduled.js');
|
|
7
7
|
var React = require('react');
|
|
8
8
|
var NoDataState = require('./NoDataState.js');
|
|
9
9
|
var flex = require('../../../node_modules/@sparrowengg/twigs-react/dist/es/flex/flex.js');
|
|
@@ -55,10 +55,10 @@ function Dashboard({
|
|
|
55
55
|
}
|
|
56
56
|
},
|
|
57
57
|
/* @__PURE__ */ React.createElement(tabs.TabsList, { "aria-label": "contact-imports" }, /* @__PURE__ */ React.createElement(tabs.TabsTrigger, { value: "completed" }, "Completed "), /* @__PURE__ */ React.createElement(tabs.TabsTrigger, { value: "scheduled" }, " Scheduled ")),
|
|
58
|
-
/* @__PURE__ */ React.createElement(tabs.TabsContent, { value: "completed", css: { padding: "0", height: "100%" } }, (completedImport == null ? void 0 : completedImport.length) ? /* @__PURE__ */ React.createElement(
|
|
59
|
-
/* @__PURE__ */ React.createElement(tabs.TabsContent, { css: { padding: "0", height: "100%" }, value: "scheduled" }, (scheduledImport == null ? void 0 : scheduledImport.length) ? /* @__PURE__ */ React.createElement(
|
|
58
|
+
/* @__PURE__ */ React.createElement(tabs.TabsContent, { value: "completed", css: { padding: "0", height: "100%" } }, (completedImport == null ? void 0 : completedImport.length) ? /* @__PURE__ */ React.createElement(Completed.default, { completed: completedImport }) : /* @__PURE__ */ React.createElement(NoDataState.default, null)),
|
|
59
|
+
/* @__PURE__ */ React.createElement(tabs.TabsContent, { css: { padding: "0", height: "100%" }, value: "scheduled" }, (scheduledImport == null ? void 0 : scheduledImport.length) ? /* @__PURE__ */ React.createElement(Scheduled.default, { scheduled: scheduledImport }) : /* @__PURE__ */ React.createElement(NoDataState.default, null))
|
|
60
60
|
)));
|
|
61
61
|
}
|
|
62
62
|
|
|
63
63
|
exports.default = Dashboard;
|
|
64
|
-
//# sourceMappingURL=
|
|
64
|
+
//# sourceMappingURL=Dashboard.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"Dashboard.js","sources":["../../../../../src/contact-import/components/ManageImport/Dashboard.tsx"],"sourcesContent":["import {\n Box,\n Heading,\n Button,\n TabsTrigger,\n Tabs,\n TabsList,\n TabsContent,\n} from \"@sparrowengg/twigs-react\";\nimport { Flex, Text } from \"@sparrowengg/twigs-react\";\nimport Completed from \"./Completed\";\nimport Scheduled from \"./Scheduled\";\nimport React from \"react\";\nimport NoLogsState from \"./NoDataState\";\nimport { PlusIcon } from \"@sparrowengg/twigs-react-icons\";\nimport { DashboardProps, CompletedImportTypes, ScheduledImportTypes } from \"../../types\";\nexport default function Dashboard({\n dashboardDescription,\n setNewImport,\n integrationName,\n imports,\n}: DashboardProps) {\n const completedImport = imports.filter(\n (item: CompletedImportTypes | ScheduledImportTypes) =>\n !item.isRecuring\n );\n const scheduledImport = imports.filter(\n (item: CompletedImportTypes | ScheduledImportTypes) =>\n item.isRecuring\n );\n\n return (\n <Flex justifyContent=\"center\">\n <Box css={{ maxWidth: \"1120px\", width: \"100%\" }}>\n <Flex\n css={{ marginTop: \"$40\" }}\n justifyContent=\"space-between\"\n alignItems=\"center\"\n >\n <Flex flexDirection=\"column\" gap=\"$2\">\n <Heading size=\"h5\">{integrationName}</Heading>\n <Text size=\"sm\" css={{ color: \"$neutral600\" }}>\n {dashboardDescription}\n </Text>\n </Flex>\n <Button leftIcon={<PlusIcon size={20} />}\n onClick={() => {\n setNewImport(true);\n }}\n size=\"lg\"\n >\n New Import\n </Button>\n </Flex>\n <Tabs\n defaultValue=\"completed\"\n css={{\n marginTop: \"$16\",\n padding: \"0 !important\",\n }}\n >\n <TabsList aria-label=\"contact-imports\">\n <TabsTrigger value=\"completed\">Completed </TabsTrigger>\n <TabsTrigger value=\"scheduled\"> Scheduled </TabsTrigger>\n </TabsList>\n <TabsContent value=\"completed\" css={{ padding: \"0\", height: \"100%\" }}>\n {completedImport?.length ? (\n <Completed completed={completedImport} />\n ) : (\n <NoLogsState />\n )}\n </TabsContent>\n <TabsContent css={{ padding: \"0\", height: \"100%\" }} value=\"scheduled\">\n {scheduledImport?.length ? (\n <Scheduled scheduled={scheduledImport} />\n ) : (\n <NoLogsState />\n )}\n </TabsContent>\n </Tabs>\n </Box>\n </Flex>\n );\n}\n"],"names":["Flex","Box","Heading","Text","Button","PlusIcon","Tabs","TabsList","TabsTrigger","TabsContent","Completed","NoLogsState","Scheduled"],"mappings":";;;;;;;;;;;;;;;;AAgBA,SAAwB,SAAA,CAAU;AAAA,EAChC,oBAAA;AAAA,EACA,YAAA;AAAA,EACA,eAAA;AAAA,EACA;AACF,CAAA,EAAmB;AACjB,EAAA,MAAM,kBAAkB,OAAA,CAAQ,MAAA;AAAA,IAC9B,CAAC,IAAA,KACC,CAAC,IAAA,CAAK;AAAA,GACV;AACA,EAAA,MAAM,kBAAkB,OAAA,CAAQ,MAAA;AAAA,IAC9B,CAAC,SACC,IAAA,CAAK;AAAA,GACT;AAEA,EAAA,uBACE,KAAA,CAAA,aAAA,CAACA,SAAA,EAAA,EAAK,cAAA,EAAe,QAAA,EAAA,kBACnB,KAAA,CAAA,aAAA,CAACC,OAAA,EAAA,EAAI,GAAA,EAAK,EAAE,QAAA,EAAU,QAAA,EAAU,KAAA,EAAO,MAAA,EAAO,EAAA,kBAC5C,KAAA,CAAA,aAAA;AAAA,IAACD,SAAA;AAAA,IAAA;AAAA,MACC,GAAA,EAAK,EAAE,SAAA,EAAW,KAAA,EAAM;AAAA,MACxB,cAAA,EAAe,eAAA;AAAA,MACf,UAAA,EAAW;AAAA,KAAA;AAAA,oBAEX,KAAA,CAAA,aAAA,CAACA,aAAK,aAAA,EAAc,QAAA,EAAS,KAAI,IAAA,EAAA,kBAC/B,KAAA,CAAA,aAAA,CAACE,eAAA,EAAA,EAAQ,IAAA,EAAK,IAAA,EAAA,EAAM,eAAgB,mBACpC,KAAA,CAAA,aAAA,CAACC,SAAA,EAAA,EAAK,MAAK,IAAA,EAAK,GAAA,EAAK,EAAE,KAAA,EAAO,aAAA,EAAc,EAAA,EACzC,oBACH,CACF,CAAA;AAAA,oBACA,KAAA,CAAA,aAAA;AAAA,MAACC,aAAA;AAAA,MAAA;AAAA,QAAO,QAAA,kBAAU,KAAA,CAAA,aAAA,CAACC,aAAA,EAAA,EAAS,IAAA,EAAM,EAAA,EAAI,CAAA;AAAA,QACpC,SAAS,MAAM;AACb,UAAA,YAAA,CAAa,IAAI,CAAA;AAAA,QACnB,CAAA;AAAA,QACA,IAAA,EAAK;AAAA,OAAA;AAAA,MACN;AAAA;AAED,GACF,kBACA,KAAA,CAAA,aAAA;AAAA,IAACC,SAAA;AAAA,IAAA;AAAA,MACC,YAAA,EAAa,WAAA;AAAA,MACb,GAAA,EAAK;AAAA,QACH,SAAA,EAAW,KAAA;AAAA,QACX,OAAA,EAAS;AAAA;AACX,KAAA;AAAA,oBAEA,KAAA,CAAA,aAAA,CAACC,aAAA,EAAA,EAAS,YAAA,EAAW,iBAAA,EAAA,sCAClBC,gBAAA,EAAA,EAAY,KAAA,EAAM,WAAA,EAAA,EAAY,YAAU,mBACzC,KAAA,CAAA,aAAA,CAACA,gBAAA,EAAA,EAAY,KAAA,EAAM,WAAA,EAAA,EAAY,aAAW,CAC5C,CAAA;AAAA,oBACA,KAAA,CAAA,aAAA,CAACC,oBAAY,KAAA,EAAM,WAAA,EAAY,KAAK,EAAE,OAAA,EAAS,KAAK,MAAA,EAAQ,MAAA,OACzD,eAAA,IAAA,IAAA,GAAA,MAAA,GAAA,eAAA,CAAiB,MAAA,wCACfC,iBAAA,EAAA,EAAU,SAAA,EAAW,iBAAiB,CAAA,mBAEvC,KAAA,CAAA,aAAA,CAACC,yBAAY,CAEjB,CAAA;AAAA,oBACA,KAAA,CAAA,aAAA,CAACF,oBAAY,GAAA,EAAK,EAAE,SAAS,GAAA,EAAK,MAAA,EAAQ,QAAO,EAAG,KAAA,EAAM,gBACvD,eAAA,IAAA,IAAA,GAAA,MAAA,GAAA,eAAA,CAAiB,MAAA,wCACfG,iBAAA,EAAA,EAAU,SAAA,EAAW,iBAAiB,CAAA,mBAEvC,KAAA,CAAA,aAAA,CAACD,yBAAY,CAEjB;AAAA,GAEJ,CACF,CAAA;AAEJ;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"Scheduled.js","sources":["../../../../../src/contact-import/components/ManageImport/Scheduled.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport {\n Box,\n Grid,\n Switch,\n Text,\n TooltipProvider,\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n IconButton,\n Flex,\n} from \"@sparrowengg/twigs-react\";\nimport dayjs from \"dayjs\";\nimport {\n AlertFillIcon,\n DeleteIcon,\n PencilIcon,\n EllipsisVerticalIcon,\n TickCircleFillIcon,\n} from \"@sparrowengg/twigs-react-icons\";\nimport { ScheduledImportTypes } from \"../../types\";\n\nconst Scheduled = ({ scheduled }: { scheduled: Array<ScheduledImportTypes> }) => {\n const [currentRow, setCurrentRow] = useState(0);\n return (\n <>\n <TooltipProvider>\n <Box css={{ width: \"100%\", height: \"100%\", overflow: \"scroll\" }}>\n <Grid\n templateColumns=\"10% 20% 20% 20% 20% 5% 5%\"\n css={{\n borderTop: \"$borderWidths$xs solid $neutral200\",\n borderBottom: \"$borderWidths$xs solid $neutral200\",\n padding: \"$7 $12\",\n color: \"$neutral900\",\n alignItems: \"center\",\n position: \"sticky\",\n top: \"0\",\n background: \"white\",\n zIndex: \"2\",\n }}\n >\n <Text> </Text>\n <Text weight=\"medium\">Import Name</Text>\n <Text weight=\"medium\">Contact Type</Text>\n <Text weight=\"medium\">Created on</Text>\n <Text weight=\"medium\">Upcomming Import</Text>\n <Text weight=\"medium\">Status</Text>\n </Grid>\n {scheduled?.map((item: ScheduledImportTypes) => {\n return (\n <Grid\n onMouseOver={() => setCurrentRow(item.id)}\n templateColumns=\"10% 20% 20% 20% 20% 5% 5%\"\n css={{\n borderBottom: \"$borderWidths$xs solid $neutral100\",\n padding: \"$9 $12\",\n fontWeight: \"$4\",\n color: \"$neutral700\",\n alignItems: \"center\",\n }}\n >\n <Text>\n <Switch checked={item.scheduled} size=\"sm\" />\n </Text>\n <Text weight=\"bold\" css={{ color: \"$neutral900\" }}>\n {item.name}\n </Text>\n <Text css={{ color: \"$neutral900\" }}>{item.type}</Text>\n <Text>\n {dayjs(item.createdOn).format(\"MMM D, YYYY | h:mm A\")}\n </Text>\n <Text>\n {dayjs(item.upcommingImport).format(\"MMM D, YYYY | h:mm A\")}\n </Text>\n <Text>\n {item.status === \"success\" ? (\n <TickCircleFillIcon color=\"#5EA130\" size=\"24\" />\n ) : (\n <AlertFillIcon color=\"#F65633\" size=\"24\" />\n )}\n </Text>\n\n <Flex justifyContent=\"center\">\n {currentRow === item.id ? (\n <DropdownMenu size=\"sm\">\n <DropdownMenuTrigger asChild>\n <IconButton size=\"md\" variant=\"ghost\" color=\"secondary\" aria-label=\"More options\">\n <EllipsisVerticalIcon />\n </IconButton>\n </DropdownMenuTrigger>\n <DropdownMenuContent\n onCloseAutoFocus={(e) => {\n e.preventDefault();\n }}\n side=\"bottom\"\n align=\"end\"\n css={{ minWidth: \"128px\", padding: \"$4 0\" }}\n >\n <DropdownMenuItem css={{ cursor: \"pointer\" }}>\n <Flex alignItems=\"center\" gap=\"$2\">\n <DeleteIcon color=\"#6A6A6A\" size={20} />\n <Text size=\"sm\">Delete</Text>\n </Flex>\n </DropdownMenuItem>\n <DropdownMenuItem css={{ cursor: \"pointer\" }}>\n <Flex alignItems=\"center\" gap=\"$2\">\n <PencilIcon color=\"#6A6A6A\" size={20} />\n <Text size=\"sm\">Edit</Text>\n </Flex>\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n ) : null}\n </Flex>\n </Grid>\n );\n })}\n </Box>\n </TooltipProvider>\n </>\n );\n};\n\nexport default Scheduled;\n"],"names":["useState","TooltipProvider","Box","Grid","Text","Switch","dayjs","TickCircleFillIcon","AlertFillIcon","Flex","DropdownMenu","DropdownMenuTrigger","IconButton","EllipsisVerticalIcon","DropdownMenuContent","DropdownMenuItem","DeleteIcon","PencilIcon"],"mappings":"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"}
|
|
@@ -44,6 +44,7 @@ const defaultFieldValue = {
|
|
|
44
44
|
surveySparrowFieldError: false
|
|
45
45
|
};
|
|
46
46
|
const ContactImportMapping = ({
|
|
47
|
+
hasAddCustomProperty = true,
|
|
47
48
|
contactImportField,
|
|
48
49
|
setContactImportField,
|
|
49
50
|
integrationName,
|
|
@@ -185,15 +186,18 @@ const ContactImportMapping = ({
|
|
|
185
186
|
{
|
|
186
187
|
size: "lg",
|
|
187
188
|
placeholder: "--Choose Property--",
|
|
189
|
+
isClearable: true,
|
|
188
190
|
value: field.surveySparrowField ? {
|
|
189
191
|
label: (_b = contactProperties.find(
|
|
190
192
|
(contact) => contact.value === field.surveySparrowField
|
|
191
193
|
)) == null ? void 0 : _b.label,
|
|
192
194
|
value: field.surveySparrowField
|
|
193
195
|
} : null,
|
|
194
|
-
options: contactProperties.filter(
|
|
195
|
-
|
|
196
|
-
|
|
196
|
+
options: contactProperties.filter((contact) => contact.type !== "DEPENDENT_FIELD").map((contact) => __spreadProps(__spreadValues({}, contact), {
|
|
197
|
+
isDisabled: contactImportField.fields.some(
|
|
198
|
+
(f) => f.id !== field.id && f.surveySparrowField === contact.value
|
|
199
|
+
)
|
|
200
|
+
})),
|
|
197
201
|
onChange: (currentField) => updateSurveySparrowField(
|
|
198
202
|
currentField.value,
|
|
199
203
|
field.id)
|
|
@@ -219,7 +223,7 @@ const ContactImportMapping = ({
|
|
|
219
223
|
"Please select the property"
|
|
220
224
|
)
|
|
221
225
|
));
|
|
222
|
-
}), /* @__PURE__ */ React.createElement(table.Tr, null, /* @__PURE__ */ React.createElement(table.Td, { colSpan: 2 }, /* @__PURE__ */ React.createElement(
|
|
226
|
+
}), hasAddCustomProperty && /* @__PURE__ */ React.createElement(table.Tr, null, /* @__PURE__ */ React.createElement(table.Td, { colSpan: 2 }, /* @__PURE__ */ React.createElement(
|
|
223
227
|
button.Button,
|
|
224
228
|
{
|
|
225
229
|
size: "md",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contact-import-mapping.js","sources":["../../../../src/contact-import/components/contact-import-mapping.tsx"],"sourcesContent":["import {\n Box,\n Button,\n Flex,\n FormInput,\n FormLabel,\n Heading,\n IconButton,\n Select,\n Table,\n Tbody,\n Td,\n Text,\n Th,\n Thead,\n Tr,\n} from \"@sparrowengg/twigs-react\";\nimport { DeleteIcon, PlusIcon } from \"@sparrowengg/twigs-react-icons\";\nimport React, { useEffect, useRef } from \"react\";\nimport { ContactImportMappingProps } from \"../types\";\nimport { SelectOption } from \"../../commons/types/enhanced\";\n\n// Define the Field type with all the properties used in the component\ntype Field = {\n id: string | number;\n integrationField: string | number | null;\n surveySparrowField: string | number | null;\n sampleData?: Array<string>;\n property?: \"custom\" | \"default\";\n mapped?: boolean;\n surveySparrowFieldError?: boolean;\n};\n\n\nconst defaultFieldValue: Omit<Field, \"id\"> = {\n integrationField: null,\n surveySparrowField: null,\n sampleData: [],\n property: \"custom\",\n mapped: false,\n surveySparrowFieldError: false,\n};\n\nconst ContactImportMapping: React.FC<ContactImportMappingProps> = ({\n contactImportField,\n setContactImportField,\n integrationName,\n contactProperties,\n}) => {\n const customPropertyRef = useRef<HTMLDivElement | null>(null);\n const initialRenderRef = useRef(true);\n\n useEffect(() => {\n if (!initialRenderRef.current && customPropertyRef?.current) {\n customPropertyRef.current.scrollIntoView({\n behavior: \"smooth\",\n block: \"end\",\n });\n }\n initialRenderRef.current = false;\n }, [contactImportField]);\n\n const customFieldHandler = (\n id: string | number,\n property: keyof Field,\n value: string | number | boolean | null\n ) => {\n setContactImportField((prev) => ({\n ...prev,\n fields: prev.fields.map((field) =>\n field.id === id ? { ...field, [property]: value } : field\n ),\n }));\n };\n\n const updateSurveySparrowField = (\n value: string | number,\n id: string | number,\n manuallyMapped: boolean\n ) => {\n setContactImportField((prev) => ({\n ...prev,\n fields: prev.fields.map((field) =>\n field.id === id\n ? {\n ...field,\n surveySparrowField: value,\n ...(manuallyMapped && { mapped: true }),\n }\n : field\n ),\n }));\n };\n\n const addCustomProperty = () => {\n setContactImportField((prev) => ({\n ...prev,\n fields: [\n ...prev.fields,\n {\n id: prev.fields.length\n ? (typeof prev.fields[prev.fields.length - 1].id === 'number' \n ? (prev.fields[prev.fields.length - 1].id as number) + 1 \n : Date.now())\n : 1,\n ...defaultFieldValue,\n },\n ],\n }));\n };\n\n const deleteCustomProperty = (id: string | number) => {\n setContactImportField((prev) => ({\n ...prev,\n fields: prev.fields.filter((field) => field.id !== id),\n }));\n };\n\n return (\n <Flex justifyContent=\"center\">\n <Box css={{ marginTop: \"$40\", maxWidth: \"90%\", width: \"100%\" }}>\n <Box css={{ paddingLeft: \"$28\" }}>\n <Heading size=\"h5\">Map Contact Properties</Heading>\n <Text css={{ marginTop: \"$4\", color: \"$neutral600\" }} size=\"md\">\n Review these mappings before importing. Unmapped columns will be\n ignored.\n </Text>\n </Box>\n <Box\n css={{\n height: \"calc(100vh - 291px)\",\n paddingTop: \"$16\",\n overflowY: \"auto\",\n position: \"relative\",\n background: \"$white900\",\n paddingLeft: \"$28\",\n }}\n >\n <Table\n css={{\n width: \"100%\",\n background: \"$white900\",\n borderRadius: \"5px\",\n borderCollapse: \"collapse\",\n }}\n >\n <Thead css={{ zIndex: 5, position: \"sticky\", top: \"-31px\" }}>\n <Th>{`${integrationName} Profile Fields Data`}</Th>\n <Th css={{ borderLeft: \"$borderWidths$xs solid $neutral100\" }}>\n SurveySparrow Mapping\n </Th>\n </Thead>\n <Tbody>\n {[...contactImportField.fields]\n .sort((a, b) => {\n // Automatically mapped (not manually mapped and has surveySparrowField) come first\n const aIsAutoMapped = !a.mapped && a.surveySparrowField;\n const bIsAutoMapped = !b.mapped && b.surveySparrowField;\n \n if (aIsAutoMapped && !bIsAutoMapped) return -1;\n if (!aIsAutoMapped && bIsAutoMapped) return 1;\n \n // Then manually mapped\n const aIsManuallyMapped = a.mapped && a.surveySparrowField;\n const bIsManuallyMapped = b.mapped && b.surveySparrowField;\n \n if (aIsManuallyMapped && !bIsManuallyMapped) return -1;\n if (!aIsManuallyMapped && bIsManuallyMapped) return 1;\n \n // Keep original order for items in the same category\n return 0;\n })\n .map((field) => {\n const hasSurveyFieldValue = contactProperties.some(\n (contact) => contact.value === field.surveySparrowField\n );\n\n return (\n <Tr key={field.id}>\n <Td css={{ width: 560 }}>\n {field.property !== \"custom\" ? (\n <>\n <Text size=\"sm\" weight=\"medium\">\n {typeof field.integrationField === 'string' \n ? field.integrationField.replace(\"_\", \" \")\n : field.integrationField}\n </Text>\n {field.sampleData?.map((sample, index) => (\n <Text\n key={index}\n size=\"xs\"\n css={{ lineHeight: \"$xs\" }}\n >\n {sample.length > 40\n ? `${sample.slice(0, 40)}...`\n : sample}\n </Text>\n ))}\n </>\n ) : (\n <Box css={{ position: \"relative\" }}>\n <FormInput\n size=\"lg\"\n onChange={(event: any) =>\n customFieldHandler(\n field.id,\n \"integrationField\",\n event.target.value\n )\n }\n />\n <FormLabel\n css={{ marginTop: \"$4\", color: \"$neutral400\" }}\n >\n Enter the exact custom property name for accurate\n mapping. It is case-sensitive.\n </FormLabel>\n <IconButton\n css={{\n position: \"absolute\",\n top: \"0\",\n left: \"-70px\",\n }}\n size=\"lg\"\n variant=\"ghost\"\n color=\"secondary\"\n onClick={() => deleteCustomProperty(field.id)}\n icon={<DeleteIcon />}\n aria-label=\"Delete custom property\"\n />\n </Box>\n )}\n </Td>\n <Td\n css={{\n width: 560,\n borderLeft: \"$borderWidths$xs solid $neutral100\",\n }}\n >\n <Select\n size=\"lg\"\n placeholder=\"--Choose Property--\"\n value={\n field.surveySparrowField\n ? {\n label: contactProperties.find(\n (contact) =>\n contact.value === field.surveySparrowField\n )?.label,\n value: field.surveySparrowField,\n }\n : null\n }\n options={contactProperties.filter(\n (contact) => contact.type !== \"DEPENDENT_FIELD\"\n )}\n onChange={(currentField: any) =>\n updateSurveySparrowField(\n currentField.value,\n field.id,\n true\n )\n }\n />\n {hasSurveyFieldValue && (\n <FormLabel\n size=\"xs\"\n css={{\n color: field.mapped ? \"$neutral600\" : \"#0F966C\",\n marginBlock: \"$4\",\n }}\n >\n {field.mapped\n ? \"Manually mapped by you\"\n : \"Automatically mapped\"}\n </FormLabel>\n )}\n {!field.surveySparrowField &&\n field.surveySparrowFieldError && (\n <FormLabel\n css={{ color: \"$negative500\", marginTop: \"$4\" }}\n size=\"xs\"\n >\n Please select the property\n </FormLabel>\n )}\n </Td>\n </Tr>\n );\n })}\n <Tr>\n <Td colSpan={2}>\n <Button\n size=\"md\"\n variant=\"ghost\"\n leftIcon={<PlusIcon />}\n onClick={addCustomProperty}\n >\n Add Custom Property\n </Button>\n </Td>\n </Tr>\n </Tbody>\n </Table>\n </Box>\n </Box>\n </Flex>\n );\n};\n\nexport default ContactImportMapping;\n"],"names":["useRef","useEffect","Flex","Box","Heading","Text","Table","Thead","Th","Tbody","Tr","Td","FormInput","FormLabel","IconButton","DeleteIcon","Select","Button","PlusIcon"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"contact-import-mapping.js","sources":["../../../../src/contact-import/components/contact-import-mapping.tsx"],"sourcesContent":["import {\n Box,\n Button,\n Flex,\n FormInput,\n FormLabel,\n Heading,\n IconButton,\n Select,\n Table,\n Tbody,\n Td,\n Text,\n Th,\n Thead,\n Tr,\n} from \"@sparrowengg/twigs-react\";\nimport { DeleteIcon, PlusIcon } from \"@sparrowengg/twigs-react-icons\";\nimport React, { useEffect, useRef } from \"react\";\nimport { ContactImportMappingProps } from \"../types\";\nimport { SelectOption } from \"../../commons/types/enhanced\";\n\n// Define the Field type with all the properties used in the component\ntype Field = {\n id: string | number;\n integrationField: string | number | null;\n surveySparrowField: string | number | null;\n sampleData?: Array<string>;\n property?: \"custom\" | \"default\";\n mapped?: boolean;\n surveySparrowFieldError?: boolean;\n};\n\n\nconst defaultFieldValue: Omit<Field, \"id\"> = {\n integrationField: null,\n surveySparrowField: null,\n sampleData: [],\n property: \"custom\",\n mapped: false,\n surveySparrowFieldError: false,\n};\n\nconst ContactImportMapping: React.FC<ContactImportMappingProps> = ({\n hasAddCustomProperty = true,\n contactImportField,\n setContactImportField,\n integrationName,\n contactProperties,\n}) => {\n const customPropertyRef = useRef<HTMLDivElement | null>(null);\n const initialRenderRef = useRef(true);\n\n useEffect(() => {\n if (!initialRenderRef.current && customPropertyRef?.current) {\n customPropertyRef.current.scrollIntoView({\n behavior: \"smooth\",\n block: \"end\",\n });\n }\n initialRenderRef.current = false;\n }, [contactImportField]);\n\n const customFieldHandler = (\n id: string | number,\n property: keyof Field,\n value: string | number | boolean | null\n ) => {\n setContactImportField((prev) => ({\n ...prev,\n fields: prev.fields.map((field) =>\n field.id === id ? { ...field, [property]: value } : field\n ),\n }));\n };\n\n const updateSurveySparrowField = (\n value: string | number,\n id: string | number,\n manuallyMapped: boolean\n ) => {\n setContactImportField((prev) => ({\n ...prev,\n fields: prev.fields.map((field) =>\n field.id === id\n ? {\n ...field,\n surveySparrowField: value,\n ...(manuallyMapped && { mapped: true }),\n }\n : field\n ),\n }));\n };\n\n const addCustomProperty = () => {\n setContactImportField((prev) => ({\n ...prev,\n fields: [\n ...prev.fields,\n {\n id: prev.fields.length\n ? (typeof prev.fields[prev.fields.length - 1].id === 'number' \n ? (prev.fields[prev.fields.length - 1].id as number) + 1 \n : Date.now())\n : 1,\n ...defaultFieldValue,\n },\n ],\n }));\n };\n\n const deleteCustomProperty = (id: string | number) => {\n setContactImportField((prev) => ({\n ...prev,\n fields: prev.fields.filter((field) => field.id !== id),\n }));\n };\n\n return (\n <Flex justifyContent=\"center\">\n <Box css={{ marginTop: \"$40\", maxWidth: \"90%\", width: \"100%\" }}>\n <Box css={{ paddingLeft: \"$28\" }}>\n <Heading size=\"h5\">Map Contact Properties</Heading>\n <Text css={{ marginTop: \"$4\", color: \"$neutral600\" }} size=\"md\">\n Review these mappings before importing. Unmapped columns will be\n ignored.\n </Text>\n </Box>\n <Box\n css={{\n height: \"calc(100vh - 291px)\",\n paddingTop: \"$16\",\n overflowY: \"auto\",\n position: \"relative\",\n background: \"$white900\",\n paddingLeft: \"$28\",\n }}\n >\n <Table\n css={{\n width: \"100%\",\n background: \"$white900\",\n borderRadius: \"5px\",\n borderCollapse: \"collapse\",\n }}\n >\n <Thead css={{ zIndex: 5, position: \"sticky\", top: \"-31px\" }}>\n <Th>{`${integrationName} Profile Fields Data`}</Th>\n <Th css={{ borderLeft: \"$borderWidths$xs solid $neutral100\" }}>\n SurveySparrow Mapping\n </Th>\n </Thead>\n <Tbody>\n {[...contactImportField.fields]\n .sort((a, b) => {\n // Automatically mapped (not manually mapped and has surveySparrowField) come first\n const aIsAutoMapped = !a.mapped && a.surveySparrowField;\n const bIsAutoMapped = !b.mapped && b.surveySparrowField;\n \n if (aIsAutoMapped && !bIsAutoMapped) return -1;\n if (!aIsAutoMapped && bIsAutoMapped) return 1;\n \n // Then manually mapped\n const aIsManuallyMapped = a.mapped && a.surveySparrowField;\n const bIsManuallyMapped = b.mapped && b.surveySparrowField;\n \n if (aIsManuallyMapped && !bIsManuallyMapped) return -1;\n if (!aIsManuallyMapped && bIsManuallyMapped) return 1;\n \n // Keep original order for items in the same category\n return 0;\n })\n .map((field) => {\n const hasSurveyFieldValue = contactProperties.some(\n (contact) => contact.value === field.surveySparrowField\n );\n\n return (\n <Tr key={field.id}>\n <Td css={{ width: 560 }}>\n {field.property !== \"custom\" ? (\n <>\n <Text size=\"sm\" weight=\"medium\">\n {typeof field.integrationField === 'string' \n ? field.integrationField.replace(\"_\", \" \")\n : field.integrationField}\n </Text>\n {field.sampleData?.map((sample, index) => (\n <Text\n key={index}\n size=\"xs\"\n css={{ lineHeight: \"$xs\" }}\n >\n {sample.length > 40\n ? `${sample.slice(0, 40)}...`\n : sample}\n </Text>\n ))}\n </>\n ) : (\n <Box css={{ position: \"relative\" }}>\n <FormInput\n size=\"lg\"\n onChange={(event: any) =>\n customFieldHandler(\n field.id,\n \"integrationField\",\n event.target.value\n )\n }\n />\n <FormLabel\n css={{ marginTop: \"$4\", color: \"$neutral400\" }}\n >\n Enter the exact custom property name for accurate\n mapping. It is case-sensitive.\n </FormLabel>\n <IconButton\n css={{\n position: \"absolute\",\n top: \"0\",\n left: \"-70px\",\n }}\n size=\"lg\"\n variant=\"ghost\"\n color=\"secondary\"\n onClick={() => deleteCustomProperty(field.id)}\n icon={<DeleteIcon />}\n aria-label=\"Delete custom property\"\n />\n </Box>\n )}\n </Td>\n <Td\n css={{\n width: 560,\n borderLeft: \"$borderWidths$xs solid $neutral100\",\n }}\n >\n <Select\n size=\"lg\"\n placeholder=\"--Choose Property--\"\n isClearable={true}\n value={\n field.surveySparrowField\n ? {\n label: contactProperties.find(\n (contact) =>\n contact.value === field.surveySparrowField\n )?.label,\n value: field.surveySparrowField,\n }\n : null\n }\n options={contactProperties\n .filter((contact) => contact.type !== \"DEPENDENT_FIELD\")\n .map((contact) => ({\n ...contact,\n isDisabled: contactImportField.fields.some(\n (f) =>\n f.id !== field.id &&\n f.surveySparrowField === contact.value\n ),\n }))}\n onChange={(currentField: any) =>\n updateSurveySparrowField(\n currentField.value,\n field.id,\n true\n )\n }\n />\n {hasSurveyFieldValue && (\n <FormLabel\n size=\"xs\"\n css={{\n color: field.mapped ? \"$neutral600\" : \"#0F966C\",\n marginBlock: \"$4\",\n }}\n >\n {field.mapped\n ? \"Manually mapped by you\"\n : \"Automatically mapped\"}\n </FormLabel>\n )}\n {!field.surveySparrowField &&\n field.surveySparrowFieldError && (\n <FormLabel\n css={{ color: \"$negative500\", marginTop: \"$4\" }}\n size=\"xs\"\n >\n Please select the property\n </FormLabel>\n )}\n </Td>\n </Tr>\n );\n })}\n {hasAddCustomProperty && (\n <Tr>\n <Td colSpan={2}>\n <Button\n size=\"md\"\n variant=\"ghost\"\n leftIcon={<PlusIcon />}\n onClick={addCustomProperty}\n >\n Add Custom Property\n </Button>\n </Td>\n </Tr>\n )}\n </Tbody>\n </Table>\n </Box>\n </Box>\n </Flex>\n );\n};\n\nexport default ContactImportMapping;\n"],"names":["useRef","useEffect","Flex","Box","Heading","Text","Table","Thead","Th","Tbody","Tr","Td","FormInput","FormLabel","IconButton","DeleteIcon","Select","Button","PlusIcon"],"mappings":"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"}
|