@sparrowengg/integrations-templates-frontend 2.1.0-notion-release.3 → 2.1.0-notion-release.5

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.
Files changed (47) hide show
  1. package/dist/cjs/_virtual/index10.js +2 -2
  2. package/dist/cjs/_virtual/index9.js +2 -2
  3. package/dist/cjs/contact-import/components/ManageImport/Completed.js +1 -1
  4. package/dist/cjs/contact-import/components/ManageImport/Completed.js.map +1 -1
  5. package/dist/cjs/contact-import/components/ManageImport/Dashboard.js +5 -5
  6. package/dist/cjs/contact-import/components/ManageImport/Dashboard.js.map +1 -1
  7. package/dist/cjs/contact-import/components/ManageImport/Scheduled.js +1 -1
  8. package/dist/cjs/contact-import/components/ManageImport/Scheduled.js.map +1 -1
  9. package/dist/cjs/contact-import/components/Scheduling.js +1 -1
  10. package/dist/cjs/contact-import/components/Scheduling.js.map +1 -1
  11. package/dist/cjs/contact-import/components/conact-import-schedule.js +2 -2
  12. package/dist/cjs/contact-import/components/conact-import-schedule.js.map +1 -1
  13. package/dist/cjs/contact-import/index.js +2 -2
  14. package/dist/cjs/contact-import/index.js.map +1 -1
  15. package/dist/cjs/dynamic-mapping/components/Mapping.js +1 -1
  16. package/dist/cjs/dynamic-mapping/components/Mapping.js.map +1 -1
  17. package/dist/cjs/dynamic-mapping/index.js +2 -2
  18. package/dist/cjs/dynamic-mapping/index.js.map +1 -1
  19. package/dist/cjs/integration-template/components/dashboard.js +8 -1
  20. package/dist/cjs/integration-template/components/dashboard.js.map +1 -1
  21. package/dist/cjs/node_modules/hoist-non-react-statics/node_modules/react-is/index.js +1 -1
  22. package/dist/cjs/node_modules/html-dom-parser/node_modules/domutils/lib/index.js +1 -1
  23. package/dist/cjs/node_modules/html-dom-parser/node_modules/htmlparser2/lib/index.js +1 -1
  24. package/dist/es/_virtual/index10.js +2 -2
  25. package/dist/es/_virtual/index9.js +2 -2
  26. package/dist/es/contact-import/components/ManageImport/Completed.js +1 -1
  27. package/dist/es/contact-import/components/ManageImport/Completed.js.map +1 -1
  28. package/dist/es/contact-import/components/ManageImport/Dashboard.js +3 -3
  29. package/dist/es/contact-import/components/ManageImport/Dashboard.js.map +1 -1
  30. package/dist/es/contact-import/components/ManageImport/Scheduled.js +1 -1
  31. package/dist/es/contact-import/components/ManageImport/Scheduled.js.map +1 -1
  32. package/dist/es/contact-import/components/Scheduling.js +1 -1
  33. package/dist/es/contact-import/components/Scheduling.js.map +1 -1
  34. package/dist/es/contact-import/components/conact-import-schedule.js +1 -1
  35. package/dist/es/contact-import/components/conact-import-schedule.js.map +1 -1
  36. package/dist/es/contact-import/index.js +1 -1
  37. package/dist/es/contact-import/index.js.map +1 -1
  38. package/dist/es/dynamic-mapping/components/Mapping.js +1 -1
  39. package/dist/es/dynamic-mapping/components/Mapping.js.map +1 -1
  40. package/dist/es/dynamic-mapping/index.js +1 -1
  41. package/dist/es/dynamic-mapping/index.js.map +1 -1
  42. package/dist/es/integration-template/components/dashboard.js +8 -1
  43. package/dist/es/integration-template/components/dashboard.js.map +1 -1
  44. package/dist/es/node_modules/hoist-non-react-statics/node_modules/react-is/index.js +1 -1
  45. package/dist/es/node_modules/html-dom-parser/node_modules/domutils/lib/index.js +1 -1
  46. package/dist/es/node_modules/html-dom-parser/node_modules/htmlparser2/lib/index.js +1 -1
  47. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard.js","sources":["../../../../src/integration-template/components/dashboard.tsx"],"sourcesContent":["import {\n Box,\n Button,\n Chip,\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n Flex,\n Heading,\n IconButton,\n Switch,\n Table,\n Tabs,\n TabsContent,\n TabsList,\n TabsTrigger,\n Tbody,\n Td,\n Text,\n Th,\n Thead,\n Tooltip,\n Tr,\n} from \"@sparrowengg/twigs-react\";\nimport {\n ChevronDownIcon,\n ChevronRightIcon,\n DeleteIcon,\n EllipsisVerticalIcon,\n PencilIcon,\n PlusIcon,\n LockIcon,\n} from \"@sparrowengg/twigs-react-icons\";\nimport React, { ReactNode, useRef, useState } from \"react\";\nimport CursorIcon from \"../../commons/icons/cursor\";\nimport MappingIcon from \"../../commons/icons/mapping\";\nimport dayjs from \"dayjs\";\nimport parse from \"html-react-parser\";\nimport { operatorOptions } from \"../../commons/constants\";\nimport \"./style.css\";\nimport ConfirmationModal from \"../../commons/components/confirmation-modal\";\nimport Sync from \"../../commons/icons/sync\";\nimport {\n FieldOptionsType,\n MappingFieldCollection,\n TriggerFieldCollection,\n DashboardField,\n HandleEditField,\n EventField,\n} from \"../../commons/types/enhanced\";\n\nconst trasformToPastTense = (value: string): string => {\n if (value.endsWith(\"e\")) {\n return value + \"d\";\n } else if (value.endsWith(\"y\")) {\n return value.slice(0, -1) + \"ied\";\n } else {\n return value + \"ed\";\n }\n};\n\ntype DropdownComponents = {\n mapping: boolean;\n trigger: boolean;\n};\n\ntype SingleMappingType = {\n mappedFields: {\n type: string;\n fields: unknown[];\n };\n};\n\ntype DynamicMappingType = {\n type: string;\n fields: unknown[];\n};\n\ntype DashboardProps = {\n hasEditMapping?: boolean;\n onMappingEditHandler: (id: string | number) => void;\n fieldOptions: FieldOptionsType;\n triggerEnabled: boolean;\n mappingEnabled: boolean;\n integrationName: string;\n dashboardDescription: string;\n mappingFields?:\n | MappingFieldCollection\n | SingleMappingType\n | DynamicMappingType;\n triggerFields?: TriggerFieldCollection;\n hasMultiAccounts: boolean;\n handleConfigurationType: (type: string) => void;\n handleEditField: HandleEditField;\n handleDashboardPage: (value: boolean, type: string) => void;\n toggleDashboardField: (id: string | number, status: boolean) => void;\n deleteFieldHandler: (id: string | number) => void;\n syncMapping?: (id: string | number) => void;\n hasDropdownComponents: DropdownComponents;\n};\n\ntype MultiAccountDashboardProps = {\n hasEditMapping?: boolean;\n onMappingEditHandler: (id: string | number) => void;\n syncMapping?: (id: string | number) => void;\n mappingFields?:\n | MappingFieldCollection\n | SingleMappingType\n | DynamicMappingType;\n triggerFields?: TriggerFieldCollection;\n integrationName: string;\n handleDashboardPage: (value: boolean, type: string) => void;\n handleEditField: HandleEditField;\n handleConfigurationType: (type: string) => void;\n toggleDashboardField: (id: string | number, status: boolean) => void;\n deleteFieldHandler: (id: string | number) => void;\n fieldOptions: FieldOptionsType;\n triggerEnabled: boolean;\n mappingEnabled: boolean;\n};\n\nconst Dashboard: React.FC<DashboardProps> = ({\n hasEditMapping,\n onMappingEditHandler,\n fieldOptions,\n triggerEnabled,\n mappingEnabled,\n integrationName,\n dashboardDescription,\n mappingFields,\n triggerFields,\n hasMultiAccounts,\n handleConfigurationType,\n handleEditField,\n handleDashboardPage,\n deleteFieldHandler,\n toggleDashboardField,\n syncMapping,\n hasDropdownComponents,\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: \"$neutral700\" }}>\n {dashboardDescription}\n </Text>\n </Flex>\n <Flex alignItems=\"center\" gap=\"$4\">\n {hasMultiAccounts && (\n <Button size=\"lg\" color=\"default\" leftIcon={<PlusIcon />}>\n Add Account\n </Button>\n )}\n {hasDropdownComponents.mapping && !hasDropdownComponents.trigger ? (\n <Button\n size=\"lg\"\n color=\"primary\"\n disabled={!mappingEnabled}\n leftIcon={<PlusIcon />}\n onClick={() => handleConfigurationType(\"MAPPING\")}\n >\n New Mapping\n </Button>\n ) : null}\n {hasDropdownComponents.trigger && hasDropdownComponents.mapping ? (\n <DropdownMenu>\n <Tooltip\n content={\n !triggerEnabled && !mappingEnabled\n ? \"You have reached the maximum limit for creating triggers/mappings\"\n : \"\"\n }\n >\n <DropdownMenuTrigger asChild>\n <Button\n size=\"lg\"\n disabled={!triggerEnabled && !mappingEnabled}\n rightIcon={<ChevronDownIcon />}\n >\n Add New\n </Button>\n </DropdownMenuTrigger>\n </Tooltip>\n <DropdownMenuContent\n className=\"dm-sans\"\n sideOffset={4}\n align=\"start\"\n css={{\n maxWidth: 240,\n zIndex: 10,\n \"& p\": {\n margin: \"0 !important\",\n padding: \"0 !important\",\n },\n }}\n >\n {hasDropdownComponents.trigger ? (\n <DropdownItem\n toolTipContent={\n \"You have reached the maximum limit for creating triggers\"\n }\n isDisabled={!triggerEnabled}\n icon={<CursorIcon size={24} color=\"#6A6A6A\" />}\n heading={\"Trigger\"}\n description=\"Trigger the Survey when a record is created/updated\"\n onClickHandler={() => handleConfigurationType(\"TRIGGER\")}\n />\n ) : null}\n {hasDropdownComponents.mapping ? (\n <DropdownItem\n isDisabled={!mappingEnabled}\n toolTipContent={\n \"You have reached the maximum limit for creating mappings\"\n }\n icon={<MappingIcon size={24} color=\"#6A6A6A\" />}\n heading={\"Mapping\"}\n description={`Create/Update record in ${integrationName} from survey responses`}\n onClickHandler={() => handleConfigurationType(\"MAPPING\")}\n />\n ) : null}\n </DropdownMenuContent>\n </DropdownMenu>\n ) : null}\n </Flex>\n </Flex>\n <Box\n css={{\n marginBottom: \"$20 !important\",\n }}\n >\n {hasMultiAccounts ? (\n <MultiAccountDashboard\n hasEditMapping={hasEditMapping}\n syncMapping={syncMapping}\n onMappingEditHandler={onMappingEditHandler}\n fieldOptions={fieldOptions}\n triggerEnabled={triggerEnabled}\n mappingEnabled={mappingEnabled}\n mappingFields={mappingFields}\n triggerFields={triggerFields}\n integrationName={integrationName}\n handleDashboardPage={handleDashboardPage}\n handleEditField={handleEditField}\n handleConfigurationType={handleConfigurationType}\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n ) : (\n <SingleAccountDashboard\n hasEditMapping={hasEditMapping}\n syncMapping={syncMapping}\n onMappingEditHandler={onMappingEditHandler}\n fieldOptions={fieldOptions}\n triggerEnabled={triggerEnabled}\n mappingEnabled={mappingEnabled}\n mappingFields={mappingFields}\n triggerFields={triggerFields}\n integrationName={integrationName}\n handleDashboardPage={handleDashboardPage}\n handleEditField={handleEditField}\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n )}\n </Box>\n </Box>\n </Flex>\n );\n};\n\nexport default Dashboard;\n\nconst MultiAccountDashboard: React.FC<MultiAccountDashboardProps> = ({\n hasEditMapping,\n onMappingEditHandler,\n syncMapping,\n mappingFields,\n triggerFields,\n integrationName,\n handleDashboardPage,\n handleEditField,\n handleConfigurationType,\n toggleDashboardField,\n deleteFieldHandler,\n}) => {\n return (\n <>\n <Tabs defaultValue=\"ALL\">\n <TabsList\n css={{\n borderBottom: \"$borderWidths$xs solid $neutral200\",\n marginTop: \"$16\",\n \"& button\": { color: \"$neutral900\" },\n }}\n >\n <TabsTrigger value=\"ALL\">All</TabsTrigger>\n <TabsTrigger value=\"TRIGGER\">Trigger</TabsTrigger>\n <TabsTrigger value=\"MAPPING\">Mapping</TabsTrigger>\n </TabsList>\n <TabsContent\n value=\"ALL\"\n css={{ paddingBlock: \"$12\", paddingInline: 0 }}\n >\n <Flex flexDirection=\"column\" gap=\"$8\">\n {!!triggerFields?.length ? (\n <>\n {triggerFields?.map((field: DashboardField) => (\n <DashboardItem\n hasEditMapping={hasEditMapping}\n key={field.id}\n isDraft={field?.isDraft ?? false}\n onMappingEditHandler={onMappingEditHandler}\n icon={<CursorIcon size={32} color=\"#56B0BB\" />}\n heading={\n (field as any).domain ?? (field as any).email ?? \"Field\"\n }\n id={field.id}\n description={`Trigger survey when an ${(field as any)?.object?.toLowerCase()} is ${(field as any)?.action?.toLowerCase()} in ${integrationName}`}\n fields={field.fields as any[]}\n isEnabled={field.isEnabled}\n integrationName={integrationName}\n handleDashboardPage={handleDashboardPage}\n handleEditField={handleEditField}\n type=\"TRIGGER\"\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n ))}\n </>\n ) : null}\n {!!(mappingFields as MappingFieldCollection)?.fields?.length ? (\n <>\n {(mappingFields as MappingFieldCollection)?.fields?.map(\n (field: DashboardField) => (\n <>\n {(mappingFields as MappingFieldCollection)?.type ===\n \"MULTI_MAPPING\" ? (\n <DashboardItem\n hasEditMapping={hasEditMapping}\n key={field.id}\n isDraft={field?.isDraft ?? false}\n onMappingEditHandler={onMappingEditHandler}\n icon={<MappingIcon size={32} color=\"#56B0BB\" />}\n heading={\n (field as any).domain ??\n (field as any).email ??\n \"Field\"\n }\n id={field.id}\n description={\n field?.mappingDescription ||\n `Sync survey responses to ${integrationName} when ${(field as any)?.mappingConfiguration?.events?.label?.toLowerCase()} is ${trasformToPastTense(`${(field as any)?.mappingConfiguration?.action?.label?.toLowerCase()}`)}`\n }\n fields={field.fields as any[]}\n isEnabled={field.isEnabled}\n integrationName={integrationName}\n handleDashboardPage={handleDashboardPage}\n handleEditField={handleEditField}\n type=\"MAPPING\"\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n ) : (\n <SingleMappingDashboardItem\n hasEditMapping={hasEditMapping}\n key={field.id}\n field={field}\n integrationName={integrationName}\n syncMapping={syncMapping}\n icon={<MappingIcon size={32} color=\"#56B0BB\" />}\n handleEditField={handleEditField}\n handleDashboardPage={handleDashboardPage}\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n onMappingEditHandler={onMappingEditHandler}\n />\n )}\n </>\n )\n )}\n </>\n ) : null}\n </Flex>\n </TabsContent>\n <TabsContent\n value=\"TRIGGER\"\n css={{ paddingBlock: \"$12\", paddingInline: 0 }}\n >\n {!!triggerFields?.length ? (\n <Flex flexDirection=\"column\" gap=\"$8\">\n {triggerFields?.map((field: DashboardField) => (\n <DashboardItem\n key={field.id}\n isDraft={field?.isDraft ?? false}\n onMappingEditHandler={onMappingEditHandler}\n icon={<CursorIcon size={32} color=\"#56B0BB\" />}\n heading=\"Trigger\"\n id={field.id}\n description={`Trigger survey when an ${(field as any)?.object?.toLowerCase()} is ${(field as any)?.action?.toLowerCase()} in ${integrationName}`}\n fields={field.fields as any[]}\n isEnabled={field.isEnabled}\n integrationName={integrationName}\n handleDashboardPage={handleDashboardPage}\n handleEditField={handleEditField}\n type=\"TRIGGER\"\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n ))}\n </Flex>\n ) : (\n <MultiAccountFallback\n title=\"Trigger\"\n onClickHandler={() => handleConfigurationType(\"TRIGGER\")}\n />\n )}\n </TabsContent>\n <TabsContent\n value=\"MAPPING\"\n css={{ paddingBlock: \"$12\", paddingInline: 0 }}\n >\n {!!(mappingFields as MappingFieldCollection)?.fields?.length ? (\n <>\n <Flex flexDirection=\"column\" gap=\"$8\">\n {(mappingFields as MappingFieldCollection)?.fields?.map(\n (field: DashboardField) => (\n <>\n {(mappingFields as MappingFieldCollection)?.type ===\n \"MULTI_MAPPING\" ? (\n <DashboardItem\n key={field.id}\n isDraft={field?.isDraft ?? false}\n onMappingEditHandler={onMappingEditHandler}\n icon={<MappingIcon size={32} color=\"#56B0BB\" />}\n heading={field?.mappingName || \"Mapping\"}\n id={field.id}\n description={\n field?.mappingDescription ||\n `Sync survey responses to ${integrationName} when ${(field as any)?.mappingConfiguration?.events?.label?.toLowerCase()} is ${trasformToPastTense(`${(field as any)?.mappingConfiguration?.action?.label?.toLowerCase()}`)}`\n }\n fields={field.fields as any[]}\n isEnabled={field.isEnabled}\n integrationName={integrationName}\n handleDashboardPage={handleDashboardPage}\n handleEditField={handleEditField}\n type=\"MAPPING\"\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n ) : (\n <SingleMappingDashboardItem\n key={field.id}\n field={field}\n integrationName={integrationName}\n syncMapping={syncMapping}\n icon={<MappingIcon size={32} color=\"#56B0BB\" />}\n handleEditField={handleEditField}\n handleDashboardPage={handleDashboardPage}\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n onMappingEditHandler={onMappingEditHandler}\n />\n )}\n </>\n )\n )}\n </Flex>\n </>\n ) : (\n <MultiAccountFallback\n title=\"Mapping\"\n onClickHandler={() => handleConfigurationType(\"MAPPING\")}\n />\n )}\n </TabsContent>\n </Tabs>\n </>\n );\n};\n\ntype MultiAccountFallbackProps = {\n title: string;\n onClickHandler: () => void;\n};\n\nconst MultiAccountFallback: React.FC<MultiAccountFallbackProps> = ({\n title,\n onClickHandler,\n}) => {\n return (\n <Flex\n justifyContent=\"center\"\n flexDirection=\"column\"\n alignItems=\"center\"\n css={{ paddingTop: 182 }}\n >\n <Heading size=\"h5\">{`Zero ${title} Entries`}</Heading>\n <Text\n css={{\n textAlign: \"center\",\n maxWidth: 400,\n marginBlock: \"$4 $12\",\n color: \"$neutral800\",\n }}\n size=\"md\"\n >\n Creating one is as easy as a breeze. Just a click away to get started.\n </Text>\n <Button\n size=\"lg\"\n leftIcon={<PlusIcon />}\n variant=\"outline\"\n onClick={onClickHandler}\n >\n {`New ${title}`}\n </Button>\n </Flex>\n );\n};\n\ntype SingleAccountDashboardProps = {\n hasEditMapping?: boolean;\n syncMapping?: (id: string | number) => void;\n onMappingEditHandler: (id: string | number) => void;\n fieldOptions: FieldOptionsType;\n triggerEnabled: boolean;\n mappingEnabled: boolean;\n mappingFields?:\n | MappingFieldCollection\n | SingleMappingType\n | DynamicMappingType;\n triggerFields?: TriggerFieldCollection;\n integrationName: string;\n handleEditField: HandleEditField;\n handleDashboardPage: (value: boolean, type: string) => void;\n toggleDashboardField: (id: string | number, status: boolean) => void;\n deleteFieldHandler: (id: string | number) => void;\n};\n\nconst SingleAccountDashboard: React.FC<SingleAccountDashboardProps> = ({\n hasEditMapping,\n syncMapping,\n onMappingEditHandler,\n fieldOptions,\n triggerEnabled,\n mappingEnabled,\n mappingFields,\n triggerFields,\n integrationName,\n handleEditField,\n handleDashboardPage,\n toggleDashboardField,\n deleteFieldHandler,\n}) => {\n return (\n <>\n {!!triggerFields?.length ? (\n <Box css={{ marginTop: \"$20\" }}>\n {triggerFields?.map((field: DashboardField) => (\n <TriggerDasboardItem\n isDraft={field?.isDraft ?? false}\n fieldOptions={fieldOptions}\n field={field}\n description={`Trigger survey when ${/^[aeiouAEIOU]$/.test((field as any)?.object?.[0] || \"\") ? \"an\" : \"a\"} ${(field as any)?.object?.toLowerCase()} is ${(field as any)?.action?.toLowerCase()} in ${integrationName}`}\n key={field.id}\n integrationName={integrationName}\n icon={<CursorIcon size={32} color=\"#56B0BB\" />}\n handleEditField={handleEditField}\n handleDashboardPage={handleDashboardPage}\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n ))}\n </Box>\n ) : null}\n {(mappingFields as any)?.type === \"DYNAMIC_MAPPING\" ? (\n <>\n {!!(mappingFields as MappingFieldCollection)?.fields?.length ? (\n <Box css={{ marginTop: !triggerFields?.length ? \"$20\" : \"$8\" }}>\n {(mappingFields as MappingFieldCollection)?.fields?.map(\n (field: DashboardField) => {\n if ((field as any)?.type === \"MULTI_MAPPING\") {\n return (\n <DashboardItem\n hasEditMapping={hasEditMapping}\n isDraft={field?.isDraft ?? false}\n onMappingEditHandler={onMappingEditHandler}\n icon={<MappingIcon size={32} color=\"#56B0BB\" />}\n heading={field?.mappingName || \"Mapping\"}\n id={field.id}\n description={\n field?.mappingDescription ||\n `Sync survey responses to ${integrationName} when ${(field as any)?.mappingConfiguration?.events?.label?.toLowerCase()} is ${trasformToPastTense(`${(field as any)?.mappingConfiguration?.action?.label?.toLowerCase()}`)}`\n }\n fields={field.fields as any[]}\n isEnabled={field.isEnabled}\n integrationName={integrationName}\n handleDashboardPage={handleDashboardPage}\n handleEditField={handleEditField}\n type=\"MAPPING\"\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n );\n } else {\n return (\n <SingleMappingDashboardItem\n hasEditMapping={hasEditMapping}\n onMappingEditHandler={onMappingEditHandler}\n syncMapping={syncMapping}\n field={field}\n key={field?.id}\n integrationName={integrationName}\n icon={<MappingIcon size={32} color=\"#56B0BB\" />}\n handleEditField={handleEditField}\n handleDashboardPage={handleDashboardPage}\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n );\n }\n }\n )}\n </Box>\n ) : null}\n </>\n ) : (\n <>\n {!!(mappingFields as MappingFieldCollection)?.fields?.length &&\n (mappingFields as MappingFieldCollection)?.type ===\n \"MULTI_MAPPING\" ? (\n <Box css={{ marginTop: !triggerFields?.length ? \"$20\" : \"$8\" }}>\n {(mappingFields as MappingFieldCollection)?.fields?.map(\n (field: DashboardField) => (\n <DashboardItem\n isDraft={field?.isDraft ?? false}\n onMappingEditHandler={onMappingEditHandler}\n icon={<MappingIcon size={32} color=\"#56B0BB\" />}\n heading={field?.mappingName || \"Mapping\"}\n id={field.id}\n description={\n field?.mappingDescription ||\n `Sync survey responses to ${integrationName} when ${(field as any)?.mappingConfiguration?.events?.label?.toLowerCase()} is ${trasformToPastTense(`${(field as any)?.mappingConfiguration?.action?.label?.toLowerCase()}`)}`\n }\n fields={field.fields as any[]}\n isEnabled={field.isEnabled}\n integrationName={integrationName}\n handleDashboardPage={handleDashboardPage}\n handleEditField={handleEditField}\n type=\"MAPPING\"\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n )\n )}\n </Box>\n ) : null}\n {(mappingFields as any)?.mappedFields?.type === \"SINGLE_MAPPING\" &&\n !!(mappingFields as any)?.mappedFields?.fields?.length ? (\n <Box css={{ marginTop: !triggerFields?.length ? \"$20\" : \"$8\" }}>\n {(\n mappingFields as any\n )?.mappedFields?.fields?.map(\n (field: DashboardField, index: number) => {\n return (\n <SingleMappingDashboardItem\n onMappingEditHandler={onMappingEditHandler}\n syncMapping={syncMapping}\n field={field}\n key={field?.id}\n integrationName={integrationName}\n icon={<MappingIcon size={32} color=\"#56B0BB\" />}\n handleEditField={handleEditField}\n handleDashboardPage={handleDashboardPage}\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n );\n }\n )}\n </Box>\n ) : null}\n </>\n )}\n </>\n );\n};\n\n// Use the enhanced DashboardField type instead of the local Field type\n\ntype TriggerDasboardItemProps = {\n isDraft?: boolean;\n fieldOptions: FieldOptionsType;\n icon: React.ReactNode;\n field: DashboardField;\n description: string;\n integrationName: string;\n handleEditField: HandleEditField;\n handleDashboardPage: (value: boolean, type: string) => void;\n toggleDashboardField?: (id: string | number, status: boolean) => void;\n deleteFieldHandler?: (id: string | number) => void;\n};\n\nconst TriggerDasboardItem: React.FC<TriggerDasboardItemProps> = ({\n isDraft,\n fieldOptions,\n icon,\n field,\n description,\n integrationName,\n handleEditField,\n handleDashboardPage,\n toggleDashboardField,\n deleteFieldHandler,\n}) => {\n const [isMappingDisplayed, setIsMappingDisplayed] = useState(false);\n const [isDeleteModalOpen, setIsDeleteModalOpen] = useState(false);\n\n const transformDataToString = (data: any) => {\n const filterConditions = (data.filters as Record<string, unknown>[])\n .map((filterGroup: any) => {\n return (filterGroup.filter as Record<string, unknown>[])\n .map((filter: any) => {\n const field = filter.field;\n const comparator = filter.comparator;\n const value = filter.value;\n const formattedComparator =\n operatorOptions.find((option) => option.value === comparator)\n ?.label || comparator;\n const fieldLabel = fieldOptions.find(\n (options: any) => options.value === field\n )?.label;\n\n return `${fieldLabel} ${\n formattedComparator === \"NO_PREFERENCE\"\n ? \"has no preference\"\n : formattedComparator\n } ${value}`;\n })\n ?.join(\n ` <span style=\"color: #6A6A6A;font-weight: 600;\">${filterGroup.condition.toLowerCase()}</span> `\n );\n })\n .join(\n `<br /> <span style=\"color: #6A6A6A;font-weight: 600;\">${\n data.condition.toLowerCase() === \"or\" ? \"Or\" : \"And\"\n } When,</span> `\n );\n\n return `<p style=\"font-family: 'DM Sans'; font-size: 13.33px; font-weight: 400;line-height: 30px; color: #848484;\"><span style=\"color: #6A6A6A;font-weight: 600;\">When</span> ${filterConditions}</p>`;\n };\n\n return (\n <>\n <Flex\n flexDirection=\"column\"\n css={{\n width: \"100%\",\n height: \"100%\",\n overflow: \"auto\",\n marginTop: \"$8\",\n }}\n >\n <Flex\n css={{\n border: isMappingDisplayed\n ? \"$borderWidths$xs solid $black400\"\n : \"$borderWidths$xs solid $neutral200\",\n borderRadius: isMappingDisplayed ? \"$2xl $2xl 0 0\" : \"$2xl\",\n padding: \"$10 $12\",\n width: \"100%\",\n backgroundColor: isMappingDisplayed\n ? \"rgba(100, 116, 139, 0.04)\"\n : \"$white900\",\n }}\n justifyContent=\"space-between\"\n alignItems=\"center\"\n >\n <Flex\n alignItems=\"center\"\n gap=\"$4\"\n css={{ cursor: \"pointer\" }}\n onClick={() => setIsMappingDisplayed(!isMappingDisplayed)}\n >\n {isMappingDisplayed ? (\n <ChevronDownIcon size={40} color=\"#848484\" />\n ) : (\n <ChevronRightIcon size={40} color=\"#848484\" />\n )}\n <Flex alignItems=\"center\" gap=\"$4\">\n {icon}\n <Flex gap=\"$1\" flexDirection=\"column\">\n <Text size=\"md\" weight=\"bold\">\n {field?.email ?? \"Trigger\"}\n </Text>\n <Text size=\"sm\" css={{ color: \"$neutral600\" }}>\n {description ??\n `Trigger survey when an event happens in ${integrationName}`}\n </Text>\n </Flex>\n </Flex>\n </Flex>\n <Flex alignItems=\"center\" gap=\"$12\">\n {isDraft && (\n <Flex alignItems=\"center\" gap=\"$12\">\n <Chip rounded=\"full\" size=\"sm\">\n <Box\n css={{\n background: \"$neutral500\",\n borderRadius: \"50%\",\n marginRight: \"$1\",\n width: \"$4\",\n height: \"$4\",\n }}\n />\n <Text\n size=\"sm\"\n weight=\"bold\"\n css={{\n color: \"$neutral800\",\n }}\n >\n DRAFT\n </Text>\n </Chip>\n <Box\n css={{\n width: \"1px\",\n height: \"20px\",\n background: \"#64748B20\",\n }}\n />\n </Flex>\n )}\n <Switch\n size=\"md\"\n checked={field.isEnabled}\n onChange={(value) => toggleDashboardField?.(field.id, value)}\n />\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <IconButton\n variant=\"ghost\"\n color=\"default\"\n size=\"lg\"\n icon={<EllipsisVerticalIcon />}\n />\n </DropdownMenuTrigger>\n <DropdownMenuContent\n className=\"dm-sans\"\n css={{\n minWidth: 180,\n zIndex: 10,\n \"& p\": {\n margin: \"0 !important\",\n padding: \"0 !important\",\n },\n }}\n sideOffset={4}\n align=\"end\"\n >\n <DropdownMenuItem\n css={{\n cursor: \"pointer\",\n }}\n onClick={() => {\n handleEditField({\n type: \"TRIGGER\",\n values: field,\n id: field.id,\n });\n handleDashboardPage(false, \"TRIGGER\");\n }}\n >\n <Flex alignItems=\"center\" gap=\"$2\">\n <PencilIcon color=\"#6A6A6A\" size={20} />\n <Text size=\"sm\">Edit</Text>\n </Flex>\n </DropdownMenuItem>\n <DropdownMenuItem\n onClick={() => setIsDeleteModalOpen(true)}\n css={{\n cursor: \"pointer\",\n }}\n >\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 </Flex>\n </Flex>\n\n {isMappingDisplayed && (\n <Box\n css={{\n borderInline: \"$borderWidths$xs solid $black400\",\n maxHeight: 734,\n height: \"100%\",\n position: \"relative\",\n overflow: \"auto\",\n padding: \"$16 $36\",\n }}\n >\n <SingleMappingEventWrapper isTrigger field={field} />\n {(field.fields as any)?.filters?.length ? (\n <>\n <Flex\n flexDirection=\"column\"\n gap=\"$6\"\n css={{ paddingBlock: \"$8\" }}\n >\n <Text\n size=\"sm\"\n weight=\"bold\"\n css={{ textTransform: \"uppercase\" }}\n >\n CONDITION\n </Text>\n {parse(transformDataToString(field.fields as any))}\n </Flex>\n <Box\n css={{\n marginBlock: \"$4\",\n height: \"1px\",\n background: \"$neutral100\",\n }}\n />\n </>\n ) : null}\n {(\n (field as any)?.triggerDetails?.variables as EventField[]\n )?.filter?.((variable: EventField) => variable.isEnabled)\n ?.length ? (\n <SingleMappingChipWrapper\n heading={\n ((field as any)?.triggerDetails?.variables as EventField[])\n ?.length > 1\n ? \"PASSING VARIABLES TO SURVEY\"\n : \"PASSING VARIABLE TO SURVEY\"\n }\n fields={(field as any).triggerDetails.variables}\n backgroundColor=\"$positive100\"\n />\n ) : null}\n <>\n <Flex\n flexDirection=\"column\"\n gap=\"$6\"\n css={{ paddingBlock: \"$8\" }}\n >\n <Text size=\"sm\" weight=\"bold\">\n SEND SURVEY\n </Text>\n <Flex alignItems=\"center\">\n {(field as any)?.triggerDetails?.shareType?.value ? (\n <EventComponent\n heading=\"Share Type:\"\n description={\n (field as any)?.triggerDetails?.shareType?.label\n }\n />\n ) : null}\n {(field as any)?.triggerDetails?.shareRecipient?.value ? (\n <EventComponent\n heading=\"Recipient:\"\n hasBorder\n description={\n (field as any)?.triggerDetails?.shareRecipient?.label\n }\n />\n ) : null}\n {(field as any)?.triggerDetails?.shareChannel?.value ? (\n <EventComponent\n hasBorder\n heading=\"Share Channel:\"\n description={\n (field as any)?.triggerDetails?.shareChannel?.label\n }\n />\n ) : null}\n </Flex>\n </Flex>\n </>\n </Box>\n )}\n\n {isMappingDisplayed && (\n <Box\n css={{\n padding: \"$8 $32\",\n border: \"$borderWidths$xs solid $black400\",\n borderTop: \"$borderWidths$xs solid $neutral200\",\n borderRadius: \"0 0 $2xl $2xl\",\n height: \"100%\",\n }}\n >\n <Button\n size=\"sm\"\n leftIcon={<PencilIcon />}\n color={\"primary\"}\n variant=\"ghost\"\n onClick={() => {\n handleEditField({\n type: \"TRIGGER\",\n values: field,\n id: field.id,\n });\n handleDashboardPage(false, \"TRIGGER\");\n }}\n >\n Edit Trigger\n </Button>\n </Box>\n )}\n </Flex>\n {isDeleteModalOpen && (\n <ConfirmationModal\n name=\"Delete Trigger?\"\n description={`Are you sure you want to delete the trigger? This action cannot be undone.`}\n onConfirm={() => deleteFieldHandler?.(field.id)}\n onCancel={() => setIsDeleteModalOpen(false)}\n />\n )}\n </>\n );\n};\n\ntype SingleMappingDashboardItemProps = {\n hasEditMapping?: boolean;\n fieldOptions?: FieldOptionsType;\n icon: React.ReactNode;\n field: DashboardField;\n handleEditField: HandleEditField;\n handleDashboardPage: (value: boolean, type: string) => void;\n toggleDashboardField?: (id: string | number, status: boolean) => void;\n deleteFieldHandler?: (id: string | number) => void;\n integrationName: string;\n syncMapping?: (id: string | number) => void;\n onMappingEditHandler: (id: string | number) => void;\n};\n\nconst SingleMappingDashboardItem: React.FC<SingleMappingDashboardItemProps> = ({\n hasEditMapping,\n fieldOptions,\n icon,\n field,\n handleEditField,\n handleDashboardPage,\n toggleDashboardField,\n deleteFieldHandler,\n syncMapping,\n integrationName,\n onMappingEditHandler,\n}) => {\n const [isMappingDisplayed, setIsMappingDisplayed] = useState(false);\n const [isDeleteModalOpen, setIsDeleteModalOpen] = useState(false);\n const [isSyncing, setIsSyncing] = useState<string | null | number>(null);\n\n return (\n <>\n <Flex\n flexDirection=\"column\"\n css={{\n width: \"100%\",\n height: \"100%\",\n overflow: \"auto\",\n marginTop: \"$8\",\n }}\n >\n <Flex\n css={{\n border: isMappingDisplayed\n ? \"$borderWidths$xs solid $black400\"\n : \"$borderWidths$xs solid $neutral200\",\n borderRadius: isMappingDisplayed ? \"$2xl $2xl 0 0\" : \"$2xl\",\n padding:\n field?.mappingName || field?.mappingDescription\n ? \"$10 $12\"\n : \"15px $12\",\n width: \"100%\",\n backgroundColor: isMappingDisplayed\n ? \"rgba(100, 116, 139, 0.04)\"\n : \"$white900\",\n }}\n justifyContent=\"space-between\"\n alignItems=\"center\"\n >\n <Flex\n alignItems=\"center\"\n gap=\"$4\"\n css={{ cursor: \"pointer\" }}\n onClick={() => setIsMappingDisplayed(!isMappingDisplayed)}\n >\n {isMappingDisplayed ? (\n <ChevronDownIcon size={40} color=\"#848484\" />\n ) : (\n <ChevronRightIcon size={40} color=\"#848484\" />\n )}\n <Flex alignItems=\"center\" gap=\"$4\">\n {(() =>\n field?.isEnabled !== null && field?.isEnabled !== undefined)()\n ? icon\n : null}\n <Flex gap=\"$1\" flexDirection=\"column\">\n <Text size=\"md\" weight=\"bold\">\n {field?.mappingName\n ? field?.mappingName\n : (field as any)?.configurationFields?.account?.value\n ?.label ?? \"Mapping\"}\n </Text>\n {field?.mappingDescription && (\n <Text\n size=\"sm\"\n css={{\n \"& span\": {\n fontFamily: \"'DM Sans', sans-serif !important\",\n },\n color: \"$neutral600\",\n \"& b\": {\n fontWeight: \"$6 !important\",\n fontFamily: \"'DM Sans', sans-serif !important\",\n },\n }}\n dangerouslySetInnerHTML={{\n __html: field?.mappingDescription\n ? field?.mappingDescription\n : `Sync survey responses to ${integrationName} when ${(field as any)?.mappingConfiguration?.events?.label?.toLowerCase()} is ${trasformToPastTense(`${(field as any)?.mappingConfiguration?.action?.label?.toLowerCase()}`)}`,\n }}\n />\n )}\n </Flex>\n </Flex>\n </Flex>\n <Flex alignItems=\"center\" gap=\"$12\">\n {syncMapping ? (\n <Tooltip content=\"Sync\" className=\"dm-sans\">\n <Button\n variant=\"ghost\"\n size=\"lg\"\n color=\"default\"\n css={{\n width: \"40px !important\",\n height: \"40px !important\",\n marginInlineEnd: \"$3\",\n }}\n >\n <Flex\n className={`rotating-div ${isSyncing === field.id ? \"rotate\" : \"\"}`}\n justifyContent=\"center\"\n alignItems=\"center\"\n onClick={async () => {\n setIsSyncing(field.id);\n setTimeout(async () => {\n await syncMapping?.(field.id);\n setIsSyncing(null);\n }, 2000);\n }}\n >\n <Sync />\n </Flex>\n </Button>\n </Tooltip>\n ) : null}\n {(() =>\n field?.isEnabled !== null &&\n field?.isEnabled !== undefined &&\n syncMapping)() ? (\n <Box\n css={{\n width: \"1px\",\n height: \"20px\",\n background: \"#64748B33\",\n }}\n />\n ) : null}\n {(() =>\n field?.isEnabled !== null && field?.isEnabled !== undefined)() ? (\n <Switch\n size=\"md\"\n checked={field.isEnabled}\n onChange={(value) => toggleDashboardField?.(field.id, value)}\n />\n ) : null}\n <DropdownMenu>\n <Tooltip content=\"More\" className=\"dm-sans\">\n <DropdownMenuTrigger asChild>\n <IconButton\n variant=\"ghost\"\n color=\"default\"\n size=\"lg\"\n icon={<EllipsisVerticalIcon />}\n />\n </DropdownMenuTrigger>\n </Tooltip>\n <DropdownMenuContent\n className=\"dm-sans\"\n css={{\n minWidth: 180,\n zIndex: 10,\n \"& p\": {\n margin: \"0 !important\",\n padding: \"0 !important\",\n },\n }}\n sideOffset={4}\n align=\"end\"\n >\n {hasEditMapping === undefined || hasEditMapping ? (\n <DropdownMenuItem\n css={{\n cursor: \"pointer\",\n }}\n onClick={() => {\n onMappingEditHandler(field.id);\n handleEditField({\n type: \"MAPPING\",\n values: field,\n id: field.id,\n });\n handleDashboardPage(false, \"MAPPING\");\n }}\n >\n <Flex alignItems=\"center\" gap=\"$2\">\n <PencilIcon color=\"#6A6A6A\" size={20} />\n <Text size=\"sm\">Edit</Text>\n </Flex>\n </DropdownMenuItem>\n ) : null}\n <DropdownMenuItem\n onClick={() => setIsDeleteModalOpen(true)}\n css={{\n cursor: \"pointer\",\n }}\n >\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 </Flex>\n </Flex>\n {isMappingDisplayed ? (\n <Box>\n <Box\n css={{\n borderInline: \"$borderWidths$xs solid $black400\",\n maxHeight: 734,\n height: \"100%\",\n position: \"relative\",\n overflow: \"auto\",\n padding: \"$16 $36\",\n }}\n >\n <SingleMappingEventWrapper field={field} />\n {!!(\n (field as any)?.mappedFields?.questions as EventField[]\n )?.filter?.((question: EventField) => question.isEnabled)\n ?.length ? (\n <SingleMappingChipWrapper\n heading=\"Questions\"\n fields={(\n (field as any)?.mappedFields?.questions as EventField[]\n )?.filter?.((question: EventField) => question.isEnabled)}\n backgroundColor=\"#E5F2FF\"\n />\n ) : null}\n {!!(\n (field as any)?.mappedFields?.derivedQuestions as EventField[]\n )?.filter?.(\n (derivedQuestion: EventField) => derivedQuestion.isEnabled\n )?.length ? (\n <SingleMappingChipWrapper\n heading=\"Enrich\"\n fields={(\n (field as any)?.mappedFields\n ?.derivedQuestions as EventField[]\n )?.filter?.(\n (derivedQuestion: EventField) => derivedQuestion.isEnabled\n )}\n backgroundColor=\"#E5F2FF\"\n />\n ) : null}\n {!!(\n (field as any)?.mappedFields?.variables as EventField[]\n )?.filter?.((variable: EventField) => variable.isEnabled)\n ?.length ? (\n <SingleMappingChipWrapper\n heading=\"Variables\"\n fields={(\n (field as any)?.mappedFields?.variables as EventField[]\n )?.filter?.((variable: EventField) => variable.isEnabled)}\n backgroundColor=\"$positive100\"\n />\n ) : null}\n {!!(\n (field as any)?.mappedFields?.contactProperties as EventField[]\n )?.filter?.((property: EventField) => property.isEnabled)\n ?.length ? (\n <SingleMappingChipWrapper\n heading=\"Contacts\"\n fields={(\n (field as any)?.mappedFields\n ?.contactProperties as EventField[]\n )?.filter?.((property: EventField) => property.isEnabled)}\n backgroundColor=\"$negative100\"\n />\n ) : null}\n {!!(\n (field as any)?.mappedFields?.expressions as EventField[]\n )?.filter?.((expression: EventField) => expression.isEnabled)\n ?.length ? (\n <SingleMappingChipWrapper\n heading=\"Expression\"\n backgroundColor=\"$neutral100\"\n fields={(\n (field as any)?.mappedFields?.expressions as EventField[]\n )?.filter?.((expression: EventField) => expression.isEnabled)}\n />\n ) : null}\n {!!(\n (field as any)?.mappedFields?.property as EventField[]\n )?.filter?.((property: EventField) => property.isEnabled)\n ?.length ? (\n <SingleMappingChipWrapper\n heading=\"Property\"\n hideBorder\n fields={(\n (field as any)?.mappedFields?.property as EventField[]\n )?.filter?.((property: EventField) => property.isEnabled)}\n backgroundColor=\"rgba(74, 156, 166, 0.15)\"\n />\n ) : null}\n </Box>\n {isMappingDisplayed && (\n <Box\n css={{\n padding: \"$8 $32\",\n border: \"$borderWidths$xs solid $black400\",\n borderTop: \"$borderWidths$xs solid $neutral200\",\n borderRadius: \"0 0 $2xl $2xl\",\n height: \"100%\",\n }}\n >\n <Button\n size=\"sm\"\n leftIcon={<PencilIcon />}\n color={\"primary\"}\n variant=\"ghost\"\n onClick={() => {\n onMappingEditHandler(field.id);\n handleEditField({\n type: \"SINGLE_MAPPING\",\n values: field,\n id: field.id,\n });\n handleDashboardPage(false, \"MAPPING\");\n }}\n >\n Edit Mapping\n </Button>\n </Box>\n )}\n </Box>\n ) : null}\n </Flex>\n {isDeleteModalOpen && (\n <ConfirmationModal\n name=\"Delete Mapping?\"\n description={`Are you sure you want to delete the mapping? This action cannot be undone.`}\n onConfirm={() => deleteFieldHandler?.(field.id)}\n onCancel={() => setIsDeleteModalOpen(false)}\n />\n )}\n </>\n );\n};\n\ntype EventComponentProps = {\n heading: string;\n description: string;\n hasBorder?: boolean;\n hasLink?: boolean;\n};\n\nconst EventComponent: React.FC<EventComponentProps> = ({\n heading,\n description,\n hasBorder,\n hasLink = \"\",\n}) => {\n return (\n <Flex alignItems=\"center\">\n {hasBorder && (\n <Box css={{ paddingInline: \"$3\" }}>\n <Box\n css={{\n height: \"$3\",\n width: \"1px\",\n background: \"$neutral200\",\n marginInline: \"$4\",\n }}\n />\n </Box>\n )}\n <Flex gap=\"$2\">\n <Text size=\"sm\" css={{ color: \"$neutral700\" }}>\n {heading} :\n </Text>\n {!!hasLink ? (\n <Text\n size=\"sm\"\n weight={\"medium\"}\n css={{\n color: \"$primary500\",\n textDecoration: \"underline\",\n cursor: \"pointer\",\n \"&:hover\": {\n color: \"$primary600 !important\",\n },\n }}\n onClick={() => window.open(`${hasLink}`, \"_blank\")}\n >\n {description}\n </Text>\n ) : (\n <Text size=\"sm\" weight={\"medium\"} css={{ color: \"$neutral800\" }}>\n {description}\n </Text>\n )}\n </Flex>\n </Flex>\n );\n};\n\ntype SingleMappingEventWrapperProps = {\n field: DashboardField;\n isTrigger?: boolean;\n};\n\nconst SingleMappingEventWrapper: React.FC<SingleMappingEventWrapperProps> = ({\n field,\n isTrigger,\n}) => {\n const hasEventSection =\n !!(field as any)?.configurationFields?.account?.value?.label ||\n !!(field as any).action ||\n !!(field as any).exisitingSheet ||\n !!(field as any)?.configurationFields ||\n (!!(field as any).object && isTrigger);\n\n return (\n <>\n {hasEventSection ? (\n <Flex flexDirection=\"column\" gap=\"$6\">\n <Text size=\"sm\" weight=\"bold\" css={{ textTransform: \"uppercase\" }}>\n Event\n </Text>\n <Flex alignItems=\"center\">\n {!!(field as any)?.configurationFields?.account?.value?.label ? (\n <EventComponent\n heading=\"Account:\"\n description={\n (field as any)?.configurationFields?.account?.value?.label\n }\n />\n ) : null}\n {!!(field as any)?.configurationFields?.object?.value?.label ? (\n <EventComponent\n heading=\"Object:\"\n description={(\n (field as any)?.configurationFields?.object?.value\n ?.label as string\n )?.replace(/^./, (char: string) => char?.toUpperCase())}\n />\n ) : null}\n {!!(field as any)?.configurationFields?.action?.hasAction ? (\n <EventComponent\n hasBorder\n heading=\"Action:\"\n description={\n (field as any)?.configurationFields?.action?.value?.label\n }\n />\n ) : null}\n {!!(field as any)?.configurationFields?.spreadsheet?.value ? (\n <EventComponent\n hasLink={\n (field as any)?.configurationFields?.sheetURL as boolean\n }\n hasBorder\n heading=\"Sheet:\"\n description={\n typeof (field as any)?.configurationFields?.spreadsheet ===\n \"object\"\n ? (field as any)?.configurationFields?.spreadsheet?.value\n ?.label\n : (field as any)?.configurationFields?.spreadsheet?.value\n }\n />\n ) : null}\n {!!(field as any)?.configurationFields?.reference ? (\n <EventComponent\n hasLink={\n (field as any)?.configurationFields?.reference?.referenceURL as boolean\n }\n hasBorder={false}\n heading={(field as any)?.configurationFields?.reference?.title}\n description={(field as any)?.configurationFields?.reference?.description}\n />\n ) : null}\n </Flex>\n <Box\n css={{\n marginBlock: \"$4\",\n height: \"1px\",\n background: \"$neutral100\",\n }}\n />\n </Flex>\n ) : null}\n </>\n );\n};\n\ntype SingleMappingChipWrapperProps = {\n heading: string;\n fields: EventField[];\n hideBorder?: boolean;\n placeholder?: string;\n backgroundColor: string;\n};\n\nconst SingleMappingChipWrapper: React.FC<SingleMappingChipWrapperProps> = ({\n heading,\n fields,\n hideBorder,\n placeholder,\n backgroundColor,\n}) => {\n const modifiedFields = fields.filter(\n (field: EventField) => field.id !== \"ALL\"\n );\n return (\n <>\n <Flex flexDirection=\"column\" gap=\"$6\" css={{ paddingBlock: \"$8\" }}>\n <Text size=\"sm\" weight=\"bold\" css={{ textTransform: \"uppercase\" }}>\n {heading}\n </Text>\n <Flex\n wrap=\"wrap\"\n css={{\n columnGap: \"$2\",\n rowGap: \"$4\",\n \"& > * \": {\n fontFamily: \"'Roboto Mono', monospace !important\",\n fontWeight: \"$4 !important\",\n },\n }}\n >\n {modifiedFields.map((field: EventField) => {\n const chipRef = useRef(null);\n const name = `${!!placeholder ? placeholder : \"\"}${field?.name ?? field?.label}`;\n const currentChipWidth = (chipRef.current as HTMLElement | null)\n ?.offsetWidth;\n return (\n <Tooltip\n delayDuration={300}\n content={name?.length > 52 ? name : \"\"}\n size=\"md\"\n sideOffset={4}\n className=\"dm-sans\"\n >\n <Chip\n ref={chipRef}\n size=\"md\"\n css={{\n background: backgroundColor,\n borderRadius: \"4px !important\",\n span: {\n textAlign: \"center !important\",\n alignContent: \"center !important\",\n display: \"block\",\n maxWidth: \"230px\",\n overflow: \"hidden\",\n fontFamily: \"'Roboto Mono', monospace !important\",\n fontWeight: \"$4 !important\",\n textOverflow: \"ellipsis\",\n whiteSpace: \"nowrap\",\n },\n }}\n >\n {\"$\" + name}\n </Chip>\n </Tooltip>\n );\n })}\n </Flex>\n </Flex>\n {!hideBorder && (\n <Box\n css={{ marginBlock: \"$4\", height: \"1px\", background: \"$neutral100\" }}\n />\n )}\n </>\n );\n};\n\ntype DashboardItemProps = {\n hasEditMapping?: boolean;\n isDraft: boolean;\n onMappingEditHandler: (id: string | number) => void;\n icon: ReactNode;\n heading: string;\n description: string;\n fields: any[];\n isEnabled: boolean;\n integrationName: string;\n handleEditField: HandleEditField;\n id: string | number;\n handleDashboardPage: (value: boolean, type: string) => void;\n type: string;\n toggleDashboardField: (id: string | number, status: boolean) => void;\n deleteFieldHandler: (id: string | number) => void;\n};\n\nconst DashboardItem: React.FC<DashboardItemProps> = ({\n hasEditMapping,\n isDraft,\n onMappingEditHandler,\n icon,\n heading,\n description,\n fields,\n integrationName,\n isEnabled,\n handleEditField,\n id,\n handleDashboardPage,\n type,\n toggleDashboardField,\n deleteFieldHandler,\n}) => {\n const [isMappingDisplayed, setIsMappingDisplayed] = useState(false);\n const [isDeleteModalOpen, setIsDeleteModalOpen] = useState(false);\n\n const getDefaultFieldValue = (defaultValue: {\n type: string;\n value: unknown;\n }) => {\n let field: string = \"--\";\n switch (defaultValue?.type) {\n case \"DATE_TIME\": {\n field = defaultValue?.value as string;\n break;\n }\n case \"STRING\": {\n field = defaultValue?.value as string;\n break;\n }\n default: {\n field = (defaultValue?.value as any)?.label || \"--\";\n break;\n }\n }\n return field;\n };\n\n return (\n <>\n <Flex\n flexDirection=\"column\"\n css={{\n marginTop: \"$8\",\n }}\n >\n <Flex\n css={{\n border: isMappingDisplayed\n ? \"$borderWidths$xs solid $black400\"\n : \"$borderWidths$xs solid $neutral200\",\n borderRadius: isMappingDisplayed ? \"$2xl $2xl 0 0\" : \"$2xl\",\n padding: \"$10 $12\",\n width: \"100%\",\n backgroundColor: isMappingDisplayed\n ? \"rgba(100, 116, 139, 0.04)\"\n : \"$white900\",\n }}\n justifyContent=\"space-between\"\n alignItems=\"center\"\n >\n <Flex\n alignItems=\"center\"\n gap=\"$4\"\n css={{ cursor: \"pointer\" }}\n onClick={() => setIsMappingDisplayed(!isMappingDisplayed)}\n >\n {isMappingDisplayed ? (\n <ChevronDownIcon size={40} color=\"#848484\" />\n ) : (\n <ChevronRightIcon size={40} color=\"#848484\" />\n )}\n <Flex alignItems=\"center\" gap=\"$4\">\n {icon}\n <Flex gap=\"$1\" flexDirection=\"column\">\n <Text size=\"md\" weight=\"bold\">\n {heading}\n </Text>\n <Text size=\"sm\" css={{ \"& span\": {\n fontFamily: \"'DM Sans', sans-serif !important\",\n }, color: \"$neutral600\", \"& b\": { fontWeight: \"$6 !important\", fontFamily: \"'DM Sans', sans-serif !important\" } }} dangerouslySetInnerHTML={{ __html: description }} /> \n </Flex>\n </Flex>\n </Flex>\n <Flex alignItems=\"center\" gap=\"$12\">\n {isDraft && (\n <Flex alignItems=\"center\" gap=\"$12\">\n <Chip rounded=\"full\" size=\"sm\">\n <Box\n css={{\n background: \"$neutral500\",\n borderRadius: \"50%\",\n marginRight: \"$1\",\n width: \"$4\",\n height: \"$4\",\n }}\n />\n <Text\n size=\"sm\"\n weight=\"bold\"\n css={{\n color: \"$neutral800\",\n }}\n >\n DRAFT\n </Text>\n </Chip>\n <Box\n css={{\n width: \"1px\",\n height: \"20px\",\n background: \"#64748B20\",\n }}\n />\n </Flex>\n )}\n <Switch\n size=\"md\"\n checked={isEnabled}\n onChange={(value) => toggleDashboardField(id, value)}\n />\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <IconButton\n variant=\"ghost\"\n color=\"default\"\n size=\"lg\"\n icon={<EllipsisVerticalIcon />}\n />\n </DropdownMenuTrigger>\n <DropdownMenuContent\n className=\"dm-sans\"\n css={{\n minWidth: 180,\n zIndex: 10,\n \"& p\": {\n margin: \"0 !important\",\n padding: \"0 !important\",\n },\n }}\n sideOffset={4}\n align=\"end\"\n >\n {\n hasEditMapping === undefined || hasEditMapping ? <DropdownMenuItem\n css={{\n cursor: \"pointer\",\n }}\n onClick={() => {\n onMappingEditHandler(id);\n handleEditField({\n type,\n values: fields,\n id,\n });\n handleDashboardPage(false, type);\n }}\n >\n <Flex alignItems=\"center\" gap=\"$2\">\n <PencilIcon color=\"#6A6A6A\" size={20} />\n <Text size=\"sm\">Edit</Text>\n </Flex>\n </DropdownMenuItem> : null\n }\n <DropdownMenuItem\n onClick={() => setIsDeleteModalOpen(true)}\n css={{\n cursor: \"pointer\",\n }}\n >\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 </Flex>\n </Flex>\n <Box\n css={{\n height: isMappingDisplayed ? \"100%\" : 0,\n }}\n >\n <Box\n css={{\n borderInline: \"$borderWidths$xs solid $black400\",\n maxHeight: 432,\n height: \"100%\",\n position: \"relative\",\n overflow: \"auto\",\n }}\n >\n {fields?.length ? (\n <Table css={{ borderCollapse: \"collapse\", width: \"100%\" }}>\n <Thead\n css={{\n background: \"$white900\",\n \"& th\": {\n padding: \"$7 $8\",\n fontSize: \"$sm\",\n lineHeight: \"$sm\",\n textAlign: \"left\",\n borderInline: \"none\",\n },\n borderBottom: \"$borderWidths$xs solid $neutral100\",\n position: \"sticky\",\n top: 0,\n zIndex: 10,\n }}\n >\n <Th css={{ paddingLeft: \"$38 !important\" }}>Type</Th>\n <Th>SurveySparrow Field</Th>\n <Th>{`${integrationName} Field`}</Th>\n <Th css={{ paddingRight: \"$20 !important\" }}>\n Default Value\n </Th>\n </Thead>\n <Tbody\n css={{\n \"& tr:last-child\": {\n borderBottom: 0,\n \"& td\": {\n borderBottom: 0,\n },\n },\n }}\n >\n {fields.map((field: any) => {\n return (\n <Tr\n css={{\n borderBottom: \"$borderWidths$xs solid $neutral100\",\n \"& td\": {\n padding: \"$7 $8\",\n fontSize: \"$sm\",\n lineHeight: \"$sm\",\n borderInline: \"none\",\n },\n \"&:hover\": {\n background: \"none !important\",\n },\n \"& td:first-child\": {\n paddingLeft: \"$38 !important\",\n },\n \"& td:last-child\": {\n paddingRight: \"$20 !important\",\n },\n }}\n >\n <Td>{field.mappedType?.label ?? \"--\"}</Td>\n <Td>{field.surveySparrowField?.label ?? \"--\"}</Td>\n <Td>{field.integrationField?.label ?? \"--\"}</Td>\n <Td>\n {getDefaultFieldValue(field.defaultValue) ?? \"--\"}\n </Td>\n </Tr>\n );\n })}\n </Tbody>\n </Table>\n ) : null}\n </Box>\n {isMappingDisplayed && (\n <Box\n css={{\n padding: \"$8 $32\",\n border: \"$borderWidths$xs solid $black400\",\n borderRadius: \"0 0 $2xl $2xl\",\n height: \"100%\",\n }}\n >\n <Button\n size=\"sm\"\n onClick={() => {\n onMappingEditHandler(id);\n handleEditField({\n type,\n values: fields,\n id,\n });\n handleDashboardPage(false, type);\n }}\n leftIcon={<PencilIcon />}\n color={\"primary\"}\n variant=\"ghost\"\n >\n {`Edit ${heading}`}\n </Button>\n </Box>\n )}\n </Box>\n </Flex>\n {isDeleteModalOpen && (\n <ConfirmationModal\n name=\"Delete Mapping?\"\n description={`Are you sure you want to delete the mapping? This action cannot be undone.`}\n onConfirm={() => {\n deleteFieldHandler(id);\n setIsDeleteModalOpen(false);\n }}\n onCancel={() => {\n setIsDeleteModalOpen(false);\n }}\n />\n )}\n </>\n );\n};\n\ntype DropdownItemProps = {\n icon: ReactNode;\n heading: string;\n description: string;\n onClickHandler: () => void;\n isDisabled?: boolean;\n toolTipContent: string;\n};\n\nconst DropdownItem: React.FC<DropdownItemProps> = ({\n icon,\n heading,\n description,\n onClickHandler,\n isDisabled,\n toolTipContent,\n}) => {\n return (\n <Tooltip\n content={isDisabled ? toolTipContent : \"\"}\n css={{\n zIndex: \"99999999\",\n minWidth: \"280px\",\n textAlign: \"center\",\n }}\n >\n <Flex>\n <DropdownMenuItem\n css={{ cursor: isDisabled ? \"not-allowed !important\" : \"pointer\" }}\n onClick={onClickHandler}\n disabled={isDisabled}\n >\n <Flex alignItems=\"flex-start\" gap=\"$4\">\n <Box css={{ width: \"$6\" }}>{icon}</Box>\n <Flex flexDirection=\"column\">\n <Text size=\"md\">{heading}</Text>\n <Text size=\"sm\" css={{ color: \"$neutral700\" }}>\n {description}\n </Text>\n </Flex>\n </Flex>\n </DropdownMenuItem>\n </Flex>\n </Tooltip>\n );\n};\n"],"names":["React","_a","_b","_c","_d","_e","_f","_g","field"],"mappings":"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"}
1
+ {"version":3,"file":"dashboard.js","sources":["../../../../src/integration-template/components/dashboard.tsx"],"sourcesContent":["import {\n Box,\n Button,\n Chip,\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n Flex,\n Heading,\n IconButton,\n Switch,\n Table,\n Tabs,\n TabsContent,\n TabsList,\n TabsTrigger,\n Tbody,\n Td,\n Text,\n Th,\n Thead,\n Tooltip,\n Tr,\n} from \"@sparrowengg/twigs-react\";\nimport {\n ChevronDownIcon,\n ChevronRightIcon,\n DeleteIcon,\n EllipsisVerticalIcon,\n PencilIcon,\n PlusIcon,\n LockIcon,\n} from \"@sparrowengg/twigs-react-icons\";\nimport React, { ReactNode, useRef, useState } from \"react\";\nimport CursorIcon from \"../../commons/icons/cursor\";\nimport MappingIcon from \"../../commons/icons/mapping\";\nimport dayjs from \"dayjs\";\nimport parse from \"html-react-parser\";\nimport { operatorOptions } from \"../../commons/constants\";\nimport \"./style.css\";\nimport ConfirmationModal from \"../../commons/components/confirmation-modal\";\nimport Sync from \"../../commons/icons/sync\";\nimport {\n FieldOptionsType,\n MappingFieldCollection,\n TriggerFieldCollection,\n DashboardField,\n HandleEditField,\n EventField,\n} from \"../../commons/types/enhanced\";\n\nconst trasformToPastTense = (value: string): string => {\n if (value.endsWith(\"e\")) {\n return value + \"d\";\n } else if (value.endsWith(\"y\")) {\n return value.slice(0, -1) + \"ied\";\n } else {\n return value + \"ed\";\n }\n};\n\ntype DropdownComponents = {\n mapping: boolean;\n trigger: boolean;\n};\n\ntype SingleMappingType = {\n mappedFields: {\n type: string;\n fields: unknown[];\n };\n};\n\ntype DynamicMappingType = {\n type: string;\n fields: unknown[];\n};\n\ntype DashboardProps = {\n hasEditMapping?: boolean;\n onMappingEditHandler: (id: string | number) => void;\n fieldOptions: FieldOptionsType;\n triggerEnabled: boolean;\n mappingEnabled: boolean;\n integrationName: string;\n dashboardDescription: string;\n mappingFields?:\n | MappingFieldCollection\n | SingleMappingType\n | DynamicMappingType;\n triggerFields?: TriggerFieldCollection;\n hasMultiAccounts: boolean;\n handleConfigurationType: (type: string) => void;\n handleEditField: HandleEditField;\n handleDashboardPage: (value: boolean, type: string) => void;\n toggleDashboardField: (id: string | number, status: boolean) => void;\n deleteFieldHandler: (id: string | number) => void;\n syncMapping?: (id: string | number) => void;\n hasDropdownComponents: DropdownComponents;\n};\n\ntype MultiAccountDashboardProps = {\n hasEditMapping?: boolean;\n onMappingEditHandler: (id: string | number) => void;\n syncMapping?: (id: string | number) => void;\n mappingFields?:\n | MappingFieldCollection\n | SingleMappingType\n | DynamicMappingType;\n triggerFields?: TriggerFieldCollection;\n integrationName: string;\n handleDashboardPage: (value: boolean, type: string) => void;\n handleEditField: HandleEditField;\n handleConfigurationType: (type: string) => void;\n toggleDashboardField: (id: string | number, status: boolean) => void;\n deleteFieldHandler: (id: string | number) => void;\n fieldOptions: FieldOptionsType;\n triggerEnabled: boolean;\n mappingEnabled: boolean;\n};\n\nconst Dashboard: React.FC<DashboardProps> = ({\n hasEditMapping,\n onMappingEditHandler,\n fieldOptions,\n triggerEnabled,\n mappingEnabled,\n integrationName,\n dashboardDescription,\n mappingFields,\n triggerFields,\n hasMultiAccounts,\n handleConfigurationType,\n handleEditField,\n handleDashboardPage,\n deleteFieldHandler,\n toggleDashboardField,\n syncMapping,\n hasDropdownComponents,\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: \"$neutral700\" }}>\n {dashboardDescription}\n </Text>\n </Flex>\n <Flex alignItems=\"center\" gap=\"$4\">\n {hasMultiAccounts && (\n <Button size=\"lg\" color=\"default\" leftIcon={<PlusIcon />}>\n Add Account\n </Button>\n )}\n {hasDropdownComponents.mapping && !hasDropdownComponents.trigger ? (\n <Button\n size=\"lg\"\n color=\"primary\"\n disabled={!mappingEnabled}\n leftIcon={<PlusIcon />}\n onClick={() => handleConfigurationType(\"MAPPING\")}\n >\n New Mapping\n </Button>\n ) : null}\n {hasDropdownComponents.trigger && hasDropdownComponents.mapping ? (\n <DropdownMenu>\n <Tooltip\n content={\n !triggerEnabled && !mappingEnabled\n ? \"You have reached the maximum limit for creating triggers/mappings\"\n : \"\"\n }\n >\n <DropdownMenuTrigger asChild>\n <Button\n size=\"lg\"\n disabled={!triggerEnabled && !mappingEnabled}\n rightIcon={<ChevronDownIcon />}\n >\n Add New\n </Button>\n </DropdownMenuTrigger>\n </Tooltip>\n <DropdownMenuContent\n className=\"dm-sans\"\n sideOffset={4}\n align=\"start\"\n css={{\n maxWidth: 240,\n zIndex: 10,\n \"& p\": {\n margin: \"0 !important\",\n padding: \"0 !important\",\n },\n }}\n >\n {hasDropdownComponents.trigger ? (\n <DropdownItem\n toolTipContent={\n \"You have reached the maximum limit for creating triggers\"\n }\n isDisabled={!triggerEnabled}\n icon={<CursorIcon size={24} color=\"#6A6A6A\" />}\n heading={\"Trigger\"}\n description=\"Trigger the Survey when a record is created/updated\"\n onClickHandler={() => handleConfigurationType(\"TRIGGER\")}\n />\n ) : null}\n {hasDropdownComponents.mapping ? (\n <DropdownItem\n isDisabled={!mappingEnabled}\n toolTipContent={\n \"You have reached the maximum limit for creating mappings\"\n }\n icon={<MappingIcon size={24} color=\"#6A6A6A\" />}\n heading={\"Mapping\"}\n description={`Create/Update record in ${integrationName} from survey responses`}\n onClickHandler={() => handleConfigurationType(\"MAPPING\")}\n />\n ) : null}\n </DropdownMenuContent>\n </DropdownMenu>\n ) : null}\n </Flex>\n </Flex>\n <Box\n css={{\n marginBottom: \"$20 !important\",\n }}\n >\n {hasMultiAccounts ? (\n <MultiAccountDashboard\n hasEditMapping={hasEditMapping}\n syncMapping={syncMapping}\n onMappingEditHandler={onMappingEditHandler}\n fieldOptions={fieldOptions}\n triggerEnabled={triggerEnabled}\n mappingEnabled={mappingEnabled}\n mappingFields={mappingFields}\n triggerFields={triggerFields}\n integrationName={integrationName}\n handleDashboardPage={handleDashboardPage}\n handleEditField={handleEditField}\n handleConfigurationType={handleConfigurationType}\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n ) : (\n <SingleAccountDashboard\n hasEditMapping={hasEditMapping}\n syncMapping={syncMapping}\n onMappingEditHandler={onMappingEditHandler}\n fieldOptions={fieldOptions}\n triggerEnabled={triggerEnabled}\n mappingEnabled={mappingEnabled}\n mappingFields={mappingFields}\n triggerFields={triggerFields}\n integrationName={integrationName}\n handleDashboardPage={handleDashboardPage}\n handleEditField={handleEditField}\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n )}\n </Box>\n </Box>\n </Flex>\n );\n};\n\nexport default Dashboard;\n\nconst MultiAccountDashboard: React.FC<MultiAccountDashboardProps> = ({\n hasEditMapping,\n onMappingEditHandler,\n syncMapping,\n mappingFields,\n triggerFields,\n integrationName,\n handleDashboardPage,\n handleEditField,\n handleConfigurationType,\n toggleDashboardField,\n deleteFieldHandler,\n}) => {\n return (\n <>\n <Tabs defaultValue=\"ALL\">\n <TabsList\n css={{\n borderBottom: \"$borderWidths$xs solid $neutral200\",\n marginTop: \"$16\",\n \"& button\": { color: \"$neutral900\" },\n }}\n >\n <TabsTrigger value=\"ALL\">All</TabsTrigger>\n <TabsTrigger value=\"TRIGGER\">Trigger</TabsTrigger>\n <TabsTrigger value=\"MAPPING\">Mapping</TabsTrigger>\n </TabsList>\n <TabsContent\n value=\"ALL\"\n css={{ paddingBlock: \"$12\", paddingInline: 0 }}\n >\n <Flex flexDirection=\"column\" gap=\"$8\">\n {!!triggerFields?.length ? (\n <>\n {triggerFields?.map((field: DashboardField) => (\n <DashboardItem\n hasEditMapping={hasEditMapping}\n key={field.id}\n isDraft={field?.isDraft ?? false}\n onMappingEditHandler={onMappingEditHandler}\n icon={<CursorIcon size={32} color=\"#56B0BB\" />}\n heading={\n (field as any).domain ?? (field as any).email ?? \"Field\"\n }\n id={field.id}\n description={`Trigger survey when an ${(field as any)?.object?.toLowerCase()} is ${(field as any)?.action?.toLowerCase()} in ${integrationName}`}\n fields={field.fields as any[]}\n isEnabled={field.isEnabled}\n integrationName={integrationName}\n handleDashboardPage={handleDashboardPage}\n handleEditField={handleEditField}\n type=\"TRIGGER\"\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n ))}\n </>\n ) : null}\n {!!(mappingFields as MappingFieldCollection)?.fields?.length ? (\n <>\n {(mappingFields as MappingFieldCollection)?.fields?.map(\n (field: DashboardField) => (\n <>\n {(mappingFields as MappingFieldCollection)?.type ===\n \"MULTI_MAPPING\" ? (\n <DashboardItem\n hasEditMapping={hasEditMapping}\n key={field.id}\n isDraft={field?.isDraft ?? false}\n onMappingEditHandler={onMappingEditHandler}\n icon={<MappingIcon size={32} color=\"#56B0BB\" />}\n heading={\n (field as any).domain ??\n (field as any).email ??\n \"Field\"\n }\n id={field.id}\n description={\n field?.mappingDescription ||\n `Sync survey responses to ${integrationName} when ${(field as any)?.mappingConfiguration?.events?.label?.toLowerCase()} is ${trasformToPastTense(`${(field as any)?.mappingConfiguration?.action?.label?.toLowerCase()}`)}`\n }\n fields={field.fields as any[]}\n isEnabled={field.isEnabled}\n integrationName={integrationName}\n handleDashboardPage={handleDashboardPage}\n handleEditField={handleEditField}\n type=\"MAPPING\"\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n ) : (\n <SingleMappingDashboardItem\n hasEditMapping={hasEditMapping}\n key={field.id}\n field={field}\n integrationName={integrationName}\n syncMapping={syncMapping}\n icon={<MappingIcon size={32} color=\"#56B0BB\" />}\n handleEditField={handleEditField}\n handleDashboardPage={handleDashboardPage}\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n onMappingEditHandler={onMappingEditHandler}\n />\n )}\n </>\n )\n )}\n </>\n ) : null}\n </Flex>\n </TabsContent>\n <TabsContent\n value=\"TRIGGER\"\n css={{ paddingBlock: \"$12\", paddingInline: 0 }}\n >\n {!!triggerFields?.length ? (\n <Flex flexDirection=\"column\" gap=\"$8\">\n {triggerFields?.map((field: DashboardField) => (\n <DashboardItem\n key={field.id}\n isDraft={field?.isDraft ?? false}\n onMappingEditHandler={onMappingEditHandler}\n icon={<CursorIcon size={32} color=\"#56B0BB\" />}\n heading=\"Trigger\"\n id={field.id}\n description={`Trigger survey when an ${(field as any)?.object?.toLowerCase()} is ${(field as any)?.action?.toLowerCase()} in ${integrationName}`}\n fields={field.fields as any[]}\n isEnabled={field.isEnabled}\n integrationName={integrationName}\n handleDashboardPage={handleDashboardPage}\n handleEditField={handleEditField}\n type=\"TRIGGER\"\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n ))}\n </Flex>\n ) : (\n <MultiAccountFallback\n title=\"Trigger\"\n onClickHandler={() => handleConfigurationType(\"TRIGGER\")}\n />\n )}\n </TabsContent>\n <TabsContent\n value=\"MAPPING\"\n css={{ paddingBlock: \"$12\", paddingInline: 0 }}\n >\n {!!(mappingFields as MappingFieldCollection)?.fields?.length ? (\n <>\n <Flex flexDirection=\"column\" gap=\"$8\">\n {(mappingFields as MappingFieldCollection)?.fields?.map(\n (field: DashboardField) => (\n <>\n {(mappingFields as MappingFieldCollection)?.type ===\n \"MULTI_MAPPING\" ? (\n <DashboardItem\n key={field.id}\n isDraft={field?.isDraft ?? false}\n onMappingEditHandler={onMappingEditHandler}\n icon={<MappingIcon size={32} color=\"#56B0BB\" />}\n heading={field?.mappingName || \"Mapping\"}\n id={field.id}\n description={\n field?.mappingDescription ||\n `Sync survey responses to ${integrationName} when ${(field as any)?.mappingConfiguration?.events?.label?.toLowerCase()} is ${trasformToPastTense(`${(field as any)?.mappingConfiguration?.action?.label?.toLowerCase()}`)}`\n }\n fields={field.fields as any[]}\n isEnabled={field.isEnabled}\n integrationName={integrationName}\n handleDashboardPage={handleDashboardPage}\n handleEditField={handleEditField}\n type=\"MAPPING\"\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n ) : (\n <SingleMappingDashboardItem\n key={field.id}\n field={field}\n integrationName={integrationName}\n syncMapping={syncMapping}\n icon={<MappingIcon size={32} color=\"#56B0BB\" />}\n handleEditField={handleEditField}\n handleDashboardPage={handleDashboardPage}\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n onMappingEditHandler={onMappingEditHandler}\n />\n )}\n </>\n )\n )}\n </Flex>\n </>\n ) : (\n <MultiAccountFallback\n title=\"Mapping\"\n onClickHandler={() => handleConfigurationType(\"MAPPING\")}\n />\n )}\n </TabsContent>\n </Tabs>\n </>\n );\n};\n\ntype MultiAccountFallbackProps = {\n title: string;\n onClickHandler: () => void;\n};\n\nconst MultiAccountFallback: React.FC<MultiAccountFallbackProps> = ({\n title,\n onClickHandler,\n}) => {\n return (\n <Flex\n justifyContent=\"center\"\n flexDirection=\"column\"\n alignItems=\"center\"\n css={{ paddingTop: 182 }}\n >\n <Heading size=\"h5\">{`Zero ${title} Entries`}</Heading>\n <Text\n css={{\n textAlign: \"center\",\n maxWidth: 400,\n marginBlock: \"$4 $12\",\n color: \"$neutral800\",\n }}\n size=\"md\"\n >\n Creating one is as easy as a breeze. Just a click away to get started.\n </Text>\n <Button\n size=\"lg\"\n leftIcon={<PlusIcon />}\n variant=\"outline\"\n onClick={onClickHandler}\n >\n {`New ${title}`}\n </Button>\n </Flex>\n );\n};\n\ntype SingleAccountDashboardProps = {\n hasEditMapping?: boolean;\n syncMapping?: (id: string | number) => void;\n onMappingEditHandler: (id: string | number) => void;\n fieldOptions: FieldOptionsType;\n triggerEnabled: boolean;\n mappingEnabled: boolean;\n mappingFields?:\n | MappingFieldCollection\n | SingleMappingType\n | DynamicMappingType;\n triggerFields?: TriggerFieldCollection;\n integrationName: string;\n handleEditField: HandleEditField;\n handleDashboardPage: (value: boolean, type: string) => void;\n toggleDashboardField: (id: string | number, status: boolean) => void;\n deleteFieldHandler: (id: string | number) => void;\n};\n\nconst SingleAccountDashboard: React.FC<SingleAccountDashboardProps> = ({\n hasEditMapping,\n syncMapping,\n onMappingEditHandler,\n fieldOptions,\n triggerEnabled,\n mappingEnabled,\n mappingFields,\n triggerFields,\n integrationName,\n handleEditField,\n handleDashboardPage,\n toggleDashboardField,\n deleteFieldHandler,\n}) => {\n return (\n <>\n {!!triggerFields?.length ? (\n <Box css={{ marginTop: \"$20\" }}>\n {triggerFields?.map((field: DashboardField) => (\n <TriggerDasboardItem\n isDraft={field?.isDraft ?? false}\n fieldOptions={fieldOptions}\n field={field}\n description={`Trigger survey when ${/^[aeiouAEIOU]$/.test((field as any)?.object?.[0] || \"\") ? \"an\" : \"a\"} ${(field as any)?.object?.toLowerCase()} is ${(field as any)?.action?.toLowerCase()} in ${integrationName}`}\n key={field.id}\n integrationName={integrationName}\n icon={<CursorIcon size={32} color=\"#56B0BB\" />}\n handleEditField={handleEditField}\n handleDashboardPage={handleDashboardPage}\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n ))}\n </Box>\n ) : null}\n {(mappingFields as any)?.type === \"DYNAMIC_MAPPING\" ? (\n <>\n {!!(mappingFields as MappingFieldCollection)?.fields?.length ? (\n <Box css={{ marginTop: !triggerFields?.length ? \"$20\" : \"$8\" }}>\n {(mappingFields as MappingFieldCollection)?.fields?.map(\n (field: DashboardField) => {\n if ((field as any)?.type === \"MULTI_MAPPING\") {\n return (\n <DashboardItem\n hasEditMapping={hasEditMapping}\n isDraft={field?.isDraft ?? false}\n onMappingEditHandler={onMappingEditHandler}\n icon={<MappingIcon size={32} color=\"#56B0BB\" />}\n heading={field?.mappingName || \"Mapping\"}\n id={field.id}\n description={\n field?.mappingDescription ||\n `Sync survey responses to ${integrationName} when ${(field as any)?.mappingConfiguration?.events?.label?.toLowerCase()} is ${trasformToPastTense(`${(field as any)?.mappingConfiguration?.action?.label?.toLowerCase()}`)}`\n }\n fields={field.fields as any[]}\n isEnabled={field.isEnabled}\n integrationName={integrationName}\n handleDashboardPage={handleDashboardPage}\n handleEditField={handleEditField}\n type=\"MAPPING\"\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n );\n } else {\n return (\n <SingleMappingDashboardItem\n hasEditMapping={hasEditMapping}\n onMappingEditHandler={onMappingEditHandler}\n syncMapping={syncMapping}\n field={field}\n key={field?.id}\n integrationName={integrationName}\n icon={<MappingIcon size={32} color=\"#56B0BB\" />}\n handleEditField={handleEditField}\n handleDashboardPage={handleDashboardPage}\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n );\n }\n }\n )}\n </Box>\n ) : null}\n </>\n ) : (\n <>\n {!!(mappingFields as MappingFieldCollection)?.fields?.length &&\n (mappingFields as MappingFieldCollection)?.type ===\n \"MULTI_MAPPING\" ? (\n <Box css={{ marginTop: !triggerFields?.length ? \"$20\" : \"$8\" }}>\n {(mappingFields as MappingFieldCollection)?.fields?.map(\n (field: DashboardField) => (\n <DashboardItem\n isDraft={field?.isDraft ?? false}\n onMappingEditHandler={onMappingEditHandler}\n icon={<MappingIcon size={32} color=\"#56B0BB\" />}\n heading={field?.mappingName || \"Mapping\"}\n id={field.id}\n description={\n field?.mappingDescription ||\n `Sync survey responses to ${integrationName} when ${(field as any)?.mappingConfiguration?.events?.label?.toLowerCase()} is ${trasformToPastTense(`${(field as any)?.mappingConfiguration?.action?.label?.toLowerCase()}`)}`\n }\n fields={field.fields as any[]}\n isEnabled={field.isEnabled}\n integrationName={integrationName}\n handleDashboardPage={handleDashboardPage}\n handleEditField={handleEditField}\n type=\"MAPPING\"\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n )\n )}\n </Box>\n ) : null}\n {(mappingFields as any)?.mappedFields?.type === \"SINGLE_MAPPING\" &&\n !!(mappingFields as any)?.mappedFields?.fields?.length ? (\n <Box css={{ marginTop: !triggerFields?.length ? \"$20\" : \"$8\" }}>\n {(\n mappingFields as any\n )?.mappedFields?.fields?.map(\n (field: DashboardField, index: number) => {\n return (\n <SingleMappingDashboardItem\n onMappingEditHandler={onMappingEditHandler}\n syncMapping={syncMapping}\n field={field}\n key={field?.id}\n integrationName={integrationName}\n icon={<MappingIcon size={32} color=\"#56B0BB\" />}\n handleEditField={handleEditField}\n handleDashboardPage={handleDashboardPage}\n toggleDashboardField={toggleDashboardField}\n deleteFieldHandler={deleteFieldHandler}\n />\n );\n }\n )}\n </Box>\n ) : null}\n </>\n )}\n </>\n );\n};\n\n// Use the enhanced DashboardField type instead of the local Field type\n\ntype TriggerDasboardItemProps = {\n isDraft?: boolean;\n fieldOptions: FieldOptionsType;\n icon: React.ReactNode;\n field: DashboardField;\n description: string;\n integrationName: string;\n handleEditField: HandleEditField;\n handleDashboardPage: (value: boolean, type: string) => void;\n toggleDashboardField?: (id: string | number, status: boolean) => void;\n deleteFieldHandler?: (id: string | number) => void;\n};\n\nconst TriggerDasboardItem: React.FC<TriggerDasboardItemProps> = ({\n isDraft,\n fieldOptions,\n icon,\n field,\n description,\n integrationName,\n handleEditField,\n handleDashboardPage,\n toggleDashboardField,\n deleteFieldHandler,\n}) => {\n const [isMappingDisplayed, setIsMappingDisplayed] = useState(false);\n const [isDeleteModalOpen, setIsDeleteModalOpen] = useState(false);\n\n const transformDataToString = (data: any) => {\n const filterConditions = (data.filters as Record<string, unknown>[])\n .map((filterGroup: any) => {\n return (filterGroup.filter as Record<string, unknown>[])\n .map((filter: any) => {\n const field = filter.field;\n const comparator = filter.comparator;\n const value = filter.value;\n const formattedComparator =\n operatorOptions.find((option) => option.value === comparator)\n ?.label || comparator;\n const fieldLabel = fieldOptions.find(\n (options: any) => options.value === field\n )?.label;\n\n return `${fieldLabel} ${\n formattedComparator === \"NO_PREFERENCE\"\n ? \"has no preference\"\n : formattedComparator\n } ${value}`;\n })\n ?.join(\n ` <span style=\"color: #6A6A6A;font-weight: 600;\">${filterGroup.condition.toLowerCase()}</span> `\n );\n })\n .join(\n `<br /> <span style=\"color: #6A6A6A;font-weight: 600;\">${\n data.condition.toLowerCase() === \"or\" ? \"Or\" : \"And\"\n } When,</span> `\n );\n\n return `<p style=\"font-family: 'DM Sans'; font-size: 13.33px; font-weight: 400;line-height: 30px; color: #848484;\"><span style=\"color: #6A6A6A;font-weight: 600;\">When</span> ${filterConditions}</p>`;\n };\n\n return (\n <>\n <Flex\n flexDirection=\"column\"\n css={{\n width: \"100%\",\n height: \"100%\",\n overflow: \"auto\",\n marginTop: \"$8\",\n }}\n >\n <Flex\n css={{\n border: isMappingDisplayed\n ? \"$borderWidths$xs solid $black400\"\n : \"$borderWidths$xs solid $neutral200\",\n borderRadius: isMappingDisplayed ? \"$2xl $2xl 0 0\" : \"$2xl\",\n padding: \"$10 $12\",\n width: \"100%\",\n backgroundColor: isMappingDisplayed\n ? \"rgba(100, 116, 139, 0.04)\"\n : \"$white900\",\n }}\n justifyContent=\"space-between\"\n alignItems=\"center\"\n >\n <Flex\n alignItems=\"center\"\n gap=\"$4\"\n css={{ cursor: \"pointer\" }}\n onClick={() => setIsMappingDisplayed(!isMappingDisplayed)}\n >\n {isMappingDisplayed ? (\n <ChevronDownIcon size={40} color=\"#848484\" />\n ) : (\n <ChevronRightIcon size={40} color=\"#848484\" />\n )}\n <Flex alignItems=\"center\" gap=\"$4\">\n {icon}\n <Flex gap=\"$1\" flexDirection=\"column\">\n <Text size=\"md\" weight=\"bold\">\n {field?.email ?? \"Trigger\"}\n </Text>\n <Text size=\"sm\" css={{ color: \"$neutral600\" }}>\n {description ??\n `Trigger survey when an event happens in ${integrationName}`}\n </Text>\n </Flex>\n </Flex>\n </Flex>\n <Flex alignItems=\"center\" gap=\"$12\">\n {isDraft && (\n <Flex alignItems=\"center\" gap=\"$12\">\n <Chip rounded=\"full\" size=\"sm\">\n <Box\n css={{\n background: \"$neutral500\",\n borderRadius: \"50%\",\n marginRight: \"$1\",\n width: \"$4\",\n height: \"$4\",\n }}\n />\n <Text\n size=\"sm\"\n weight=\"bold\"\n css={{\n color: \"$neutral800\",\n }}\n >\n DRAFT\n </Text>\n </Chip>\n <Box\n css={{\n width: \"1px\",\n height: \"20px\",\n background: \"#64748B20\",\n }}\n />\n </Flex>\n )}\n <Switch\n size=\"md\"\n checked={field.isEnabled}\n onChange={(value) => toggleDashboardField?.(field.id, value)}\n />\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <IconButton\n variant=\"ghost\"\n color=\"default\"\n size=\"lg\"\n icon={<EllipsisVerticalIcon />}\n />\n </DropdownMenuTrigger>\n <DropdownMenuContent\n className=\"dm-sans\"\n css={{\n minWidth: 180,\n zIndex: 10,\n \"& p\": {\n margin: \"0 !important\",\n padding: \"0 !important\",\n },\n }}\n sideOffset={4}\n align=\"end\"\n >\n <DropdownMenuItem\n css={{\n cursor: \"pointer\",\n }}\n onClick={() => {\n handleEditField({\n type: \"TRIGGER\",\n values: field,\n id: field.id,\n });\n handleDashboardPage(false, \"TRIGGER\");\n }}\n >\n <Flex alignItems=\"center\" gap=\"$2\">\n <PencilIcon color=\"#6A6A6A\" size={20} />\n <Text size=\"sm\">Edit</Text>\n </Flex>\n </DropdownMenuItem>\n <DropdownMenuItem\n onClick={() => setIsDeleteModalOpen(true)}\n css={{\n cursor: \"pointer\",\n }}\n >\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 </Flex>\n </Flex>\n\n {isMappingDisplayed && (\n <Box\n css={{\n borderInline: \"$borderWidths$xs solid $black400\",\n maxHeight: 734,\n height: \"100%\",\n position: \"relative\",\n overflow: \"auto\",\n padding: \"$16 $36\",\n }}\n >\n <SingleMappingEventWrapper isTrigger field={field} />\n {(field.fields as any)?.filters?.length ? (\n <>\n <Flex\n flexDirection=\"column\"\n gap=\"$6\"\n css={{ paddingBlock: \"$8\" }}\n >\n <Text\n size=\"sm\"\n weight=\"bold\"\n css={{ textTransform: \"uppercase\" }}\n >\n CONDITION\n </Text>\n {parse(transformDataToString(field.fields as any))}\n </Flex>\n <Box\n css={{\n marginBlock: \"$4\",\n height: \"1px\",\n background: \"$neutral100\",\n }}\n />\n </>\n ) : null}\n {(\n (field as any)?.triggerDetails?.variables as EventField[]\n )?.filter?.((variable: EventField) => variable.isEnabled)\n ?.length ? (\n <SingleMappingChipWrapper\n heading={\n ((field as any)?.triggerDetails?.variables as EventField[])\n ?.length > 1\n ? \"PASSING VARIABLES TO SURVEY\"\n : \"PASSING VARIABLE TO SURVEY\"\n }\n fields={(field as any).triggerDetails.variables}\n backgroundColor=\"$positive100\"\n />\n ) : null}\n <>\n <Flex\n flexDirection=\"column\"\n gap=\"$6\"\n css={{ paddingBlock: \"$8\" }}\n >\n <Text size=\"sm\" weight=\"bold\">\n SEND SURVEY\n </Text>\n <Flex alignItems=\"center\">\n {(field as any)?.triggerDetails?.shareType?.value ? (\n <EventComponent\n heading=\"Share Type:\"\n description={\n (field as any)?.triggerDetails?.shareType?.label\n }\n />\n ) : null}\n {(field as any)?.triggerDetails?.shareRecipient?.value ? (\n <EventComponent\n heading=\"Recipient:\"\n hasBorder\n description={\n (field as any)?.triggerDetails?.shareRecipient?.label\n }\n />\n ) : null}\n {(field as any)?.triggerDetails?.shareChannel?.value ? (\n <EventComponent\n hasBorder\n heading=\"Share Channel:\"\n description={\n (field as any)?.triggerDetails?.shareChannel?.label\n }\n />\n ) : null}\n </Flex>\n </Flex>\n </>\n </Box>\n )}\n\n {isMappingDisplayed && (\n <Box\n css={{\n padding: \"$8 $32\",\n border: \"$borderWidths$xs solid $black400\",\n borderTop: \"$borderWidths$xs solid $neutral200\",\n borderRadius: \"0 0 $2xl $2xl\",\n height: \"100%\",\n }}\n >\n <Button\n size=\"sm\"\n leftIcon={<PencilIcon />}\n color={\"primary\"}\n variant=\"ghost\"\n onClick={() => {\n handleEditField({\n type: \"TRIGGER\",\n values: field,\n id: field.id,\n });\n handleDashboardPage(false, \"TRIGGER\");\n }}\n >\n Edit Trigger\n </Button>\n </Box>\n )}\n </Flex>\n {isDeleteModalOpen && (\n <ConfirmationModal\n name=\"Delete Trigger?\"\n description={`Are you sure you want to delete the trigger? This action cannot be undone.`}\n onConfirm={() => deleteFieldHandler?.(field.id)}\n onCancel={() => setIsDeleteModalOpen(false)}\n />\n )}\n </>\n );\n};\n\ntype SingleMappingDashboardItemProps = {\n hasEditMapping?: boolean;\n fieldOptions?: FieldOptionsType;\n icon: React.ReactNode;\n field: DashboardField;\n handleEditField: HandleEditField;\n handleDashboardPage: (value: boolean, type: string) => void;\n toggleDashboardField?: (id: string | number, status: boolean) => void;\n deleteFieldHandler?: (id: string | number) => void;\n integrationName: string;\n syncMapping?: (id: string | number) => void;\n onMappingEditHandler: (id: string | number) => void;\n};\n\nconst SingleMappingDashboardItem: React.FC<SingleMappingDashboardItemProps> = ({\n hasEditMapping,\n fieldOptions,\n icon,\n field,\n handleEditField,\n handleDashboardPage,\n toggleDashboardField,\n deleteFieldHandler,\n syncMapping,\n integrationName,\n onMappingEditHandler,\n}) => {\n const [isMappingDisplayed, setIsMappingDisplayed] = useState(false);\n const [isDeleteModalOpen, setIsDeleteModalOpen] = useState(false);\n const [isSyncing, setIsSyncing] = useState<string | null | number>(null);\n\n return (\n <>\n <Flex\n flexDirection=\"column\"\n css={{\n width: \"100%\",\n height: \"100%\",\n overflow: \"auto\",\n marginTop: \"$8\",\n }}\n >\n <Flex\n css={{\n border: isMappingDisplayed\n ? \"$borderWidths$xs solid $black400\"\n : \"$borderWidths$xs solid $neutral200\",\n borderRadius: isMappingDisplayed ? \"$2xl $2xl 0 0\" : \"$2xl\",\n padding:\n field?.mappingName || field?.mappingDescription\n ? \"$10 $12\"\n : \"15px $12\",\n width: \"100%\",\n backgroundColor: isMappingDisplayed\n ? \"rgba(100, 116, 139, 0.04)\"\n : \"$white900\",\n }}\n justifyContent=\"space-between\"\n alignItems=\"center\"\n >\n <Flex\n alignItems=\"center\"\n gap=\"$4\"\n css={{ cursor: \"pointer\" }}\n onClick={() => setIsMappingDisplayed(!isMappingDisplayed)}\n >\n {isMappingDisplayed ? (\n <ChevronDownIcon size={40} color=\"#848484\" />\n ) : (\n <ChevronRightIcon size={40} color=\"#848484\" />\n )}\n <Flex alignItems=\"center\" gap=\"$4\">\n {(() =>\n field?.isEnabled !== null && field?.isEnabled !== undefined)()\n ? icon\n : null}\n <Flex gap=\"$1\" flexDirection=\"column\">\n <Text size=\"md\" weight=\"bold\">\n {field?.mappingName\n ? field?.mappingName\n : (field as any)?.configurationFields?.account?.value\n ?.label ?? \"Mapping\"}\n </Text>\n {field?.mappingDescription && (\n <Text\n size=\"sm\"\n css={{\n \"& span\": {\n fontFamily: \"'DM Sans', sans-serif !important\",\n },\n color: \"$neutral600\",\n \"& b\": {\n fontWeight: \"$6 !important\",\n fontFamily: \"'DM Sans', sans-serif !important\",\n },\n }}\n dangerouslySetInnerHTML={{\n __html: field?.mappingDescription\n ? field?.mappingDescription\n : `Sync survey responses to ${integrationName} when ${(field as any)?.mappingConfiguration?.events?.label?.toLowerCase()} is ${trasformToPastTense(`${(field as any)?.mappingConfiguration?.action?.label?.toLowerCase()}`)}`,\n }}\n />\n )}\n </Flex>\n </Flex>\n </Flex>\n <Flex alignItems=\"center\" gap=\"$12\">\n {syncMapping ? (\n <Tooltip content=\"Sync\" className=\"dm-sans\">\n <Button\n variant=\"ghost\"\n size=\"lg\"\n color=\"default\"\n css={{\n width: \"40px !important\",\n height: \"40px !important\",\n marginInlineEnd: \"$3\",\n }}\n >\n <Flex\n className={`rotating-div ${isSyncing === field.id ? \"rotate\" : \"\"}`}\n justifyContent=\"center\"\n alignItems=\"center\"\n onClick={async () => {\n setIsSyncing(field.id);\n setTimeout(async () => {\n await syncMapping?.(field.id);\n setIsSyncing(null);\n }, 2000);\n }}\n >\n <Sync />\n </Flex>\n </Button>\n </Tooltip>\n ) : null}\n {(() =>\n field?.isEnabled !== null &&\n field?.isEnabled !== undefined &&\n syncMapping)() ? (\n <Box\n css={{\n width: \"1px\",\n height: \"20px\",\n background: \"#64748B33\",\n }}\n />\n ) : null}\n {(() =>\n field?.isEnabled !== null && field?.isEnabled !== undefined)() ? (\n <Switch\n size=\"md\"\n checked={field.isEnabled}\n onChange={(value) => toggleDashboardField?.(field.id, value)}\n />\n ) : null}\n <DropdownMenu>\n <Tooltip content=\"More\" className=\"dm-sans\">\n <DropdownMenuTrigger asChild>\n <IconButton\n variant=\"ghost\"\n color=\"default\"\n size=\"lg\"\n icon={<EllipsisVerticalIcon />}\n />\n </DropdownMenuTrigger>\n </Tooltip>\n <DropdownMenuContent\n className=\"dm-sans\"\n css={{\n minWidth: 180,\n zIndex: 10,\n \"& p\": {\n margin: \"0 !important\",\n padding: \"0 !important\",\n },\n }}\n sideOffset={4}\n align=\"end\"\n >\n {hasEditMapping === undefined || hasEditMapping ? (\n <DropdownMenuItem\n css={{\n cursor: \"pointer\",\n }}\n onClick={() => {\n onMappingEditHandler(field.id);\n handleEditField({\n type: \"MAPPING\",\n values: field,\n id: field.id,\n });\n handleDashboardPage(false, \"MAPPING\");\n }}\n >\n <Flex alignItems=\"center\" gap=\"$2\">\n <PencilIcon color=\"#6A6A6A\" size={20} />\n <Text size=\"sm\">Edit</Text>\n </Flex>\n </DropdownMenuItem>\n ) : null}\n <DropdownMenuItem\n onClick={() => setIsDeleteModalOpen(true)}\n css={{\n cursor: \"pointer\",\n }}\n >\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 </Flex>\n </Flex>\n {isMappingDisplayed ? (\n <Box>\n <Box\n css={{\n borderInline: \"$borderWidths$xs solid $black400\",\n maxHeight: 734,\n height: \"100%\",\n position: \"relative\",\n overflow: \"auto\",\n padding: \"$16 $36\",\n }}\n >\n <SingleMappingEventWrapper field={field} />\n {!!(\n (field as any)?.mappedFields?.questions as EventField[]\n )?.filter?.((question: EventField) => question.isEnabled)\n ?.length ? (\n <SingleMappingChipWrapper\n heading=\"Questions\"\n fields={(\n (field as any)?.mappedFields?.questions as EventField[]\n )?.filter?.((question: EventField) => question.isEnabled)}\n backgroundColor=\"#E5F2FF\"\n />\n ) : null}\n {!!(\n (field as any)?.mappedFields?.derivedQuestions as EventField[]\n )?.filter?.(\n (derivedQuestion: EventField) => derivedQuestion.isEnabled\n )?.length ? (\n <SingleMappingChipWrapper\n heading=\"Enrich\"\n fields={(\n (field as any)?.mappedFields\n ?.derivedQuestions as EventField[]\n )?.filter?.(\n (derivedQuestion: EventField) => derivedQuestion.isEnabled\n )}\n backgroundColor=\"#E5F2FF\"\n />\n ) : null}\n {!!(\n (field as any)?.mappedFields?.variables as EventField[]\n )?.filter?.((variable: EventField) => variable.isEnabled)\n ?.length ? (\n <SingleMappingChipWrapper\n heading=\"Variables\"\n fields={(\n (field as any)?.mappedFields?.variables as EventField[]\n )?.filter?.((variable: EventField) => variable.isEnabled)}\n backgroundColor=\"$positive100\"\n />\n ) : null}\n {!!(\n (field as any)?.mappedFields?.contactProperties as EventField[]\n )?.filter?.((property: EventField) => property.isEnabled)\n ?.length ? (\n <SingleMappingChipWrapper\n heading=\"Contacts\"\n fields={(\n (field as any)?.mappedFields\n ?.contactProperties as EventField[]\n )?.filter?.((property: EventField) => property.isEnabled)}\n backgroundColor=\"$negative100\"\n />\n ) : null}\n {!!(\n (field as any)?.mappedFields?.expressions as EventField[]\n )?.filter?.((expression: EventField) => expression.isEnabled)\n ?.length ? (\n <SingleMappingChipWrapper\n heading=\"Expression\"\n backgroundColor=\"$neutral100\"\n fields={(\n (field as any)?.mappedFields?.expressions as EventField[]\n )?.filter?.((expression: EventField) => expression.isEnabled)}\n />\n ) : null}\n {!!(\n (field as any)?.mappedFields?.property as EventField[]\n )?.filter?.((property: EventField) => property.isEnabled)\n ?.length ? (\n <SingleMappingChipWrapper\n heading=\"Property\"\n hideBorder\n fields={(\n (field as any)?.mappedFields?.property as EventField[]\n )?.filter?.((property: EventField) => property.isEnabled)}\n backgroundColor=\"rgba(74, 156, 166, 0.15)\"\n />\n ) : null}\n </Box>\n {isMappingDisplayed && (\n <Box\n css={{\n padding: \"$8 $32\",\n border: \"$borderWidths$xs solid $black400\",\n borderTop: hasEditMapping === undefined || hasEditMapping ? \"$borderWidths$xs solid $neutral200\" : \"none\",\n borderRadius: \"0 0 $2xl $2xl\",\n height: \"100%\",\n }}\n >\n <Button\n size=\"sm\"\n leftIcon={<PencilIcon />}\n color={\"primary\"}\n variant=\"ghost\"\n css={{\n display: hasEditMapping === undefined || hasEditMapping ? \"block\" : \"none\",\n }}\n onClick={() => {\n onMappingEditHandler(field.id);\n handleEditField({\n type: \"SINGLE_MAPPING\",\n values: field,\n id: field.id,\n });\n handleDashboardPage(false, \"MAPPING\");\n }}\n >\n Edit Mapping\n </Button>\n </Box>\n )}\n </Box>\n ) : null}\n </Flex>\n {isDeleteModalOpen && (\n <ConfirmationModal\n name=\"Delete Mapping?\"\n description={`Are you sure you want to delete the mapping? This action cannot be undone.`}\n onConfirm={() => deleteFieldHandler?.(field.id)}\n onCancel={() => setIsDeleteModalOpen(false)}\n />\n )}\n </>\n );\n};\n\ntype EventComponentProps = {\n heading: string;\n description: string;\n hasBorder?: boolean;\n hasLink?: boolean;\n};\n\nconst EventComponent: React.FC<EventComponentProps> = ({\n heading,\n description,\n hasBorder,\n hasLink = \"\",\n}) => {\n return (\n <Flex alignItems=\"center\">\n {hasBorder && (\n <Box css={{ paddingInline: \"$3\" }}>\n <Box\n css={{\n height: \"$3\",\n width: \"1px\",\n background: \"$neutral200\",\n marginInline: \"$4\",\n }}\n />\n </Box>\n )}\n <Flex gap=\"$2\">\n <Text size=\"sm\" css={{ color: \"$neutral700\" }}>\n {heading} :\n </Text>\n {!!hasLink ? (\n <Text\n size=\"sm\"\n weight={\"medium\"}\n css={{\n color: \"$primary500\",\n textDecoration: \"underline\",\n cursor: \"pointer\",\n \"&:hover\": {\n color: \"$primary600 !important\",\n },\n }}\n onClick={() => window.open(`${hasLink}`, \"_blank\")}\n >\n {description}\n </Text>\n ) : (\n <Text size=\"sm\" weight={\"medium\"} css={{ color: \"$neutral800\" }}>\n {description}\n </Text>\n )}\n </Flex>\n </Flex>\n );\n};\n\ntype SingleMappingEventWrapperProps = {\n field: DashboardField;\n isTrigger?: boolean;\n};\n\nconst SingleMappingEventWrapper: React.FC<SingleMappingEventWrapperProps> = ({\n field,\n isTrigger,\n}) => {\n const hasEventSection =\n !!(field as any)?.configurationFields?.account?.value?.label ||\n !!(field as any).action ||\n !!(field as any).exisitingSheet ||\n !!(field as any)?.configurationFields ||\n (!!(field as any).object && isTrigger);\n\n return (\n <>\n {hasEventSection ? (\n <Flex flexDirection=\"column\" gap=\"$6\">\n <Text size=\"sm\" weight=\"bold\" css={{ textTransform: \"uppercase\" }}>\n Event\n </Text>\n <Flex alignItems=\"center\">\n {!!(field as any)?.configurationFields?.account?.value?.label ? (\n <EventComponent\n heading=\"Account:\"\n description={\n (field as any)?.configurationFields?.account?.value?.label\n }\n />\n ) : null}\n {!!(field as any)?.configurationFields?.object?.value?.label ? (\n <EventComponent\n heading=\"Object:\"\n description={(\n (field as any)?.configurationFields?.object?.value\n ?.label as string\n )?.replace(/^./, (char: string) => char?.toUpperCase())}\n />\n ) : null}\n {!!(field as any)?.configurationFields?.action?.hasAction ? (\n <EventComponent\n hasBorder\n heading=\"Action:\"\n description={\n (field as any)?.configurationFields?.action?.value?.label\n }\n />\n ) : null}\n {!!(field as any)?.configurationFields?.spreadsheet?.value ? (\n <EventComponent\n hasLink={\n (field as any)?.configurationFields?.sheetURL as boolean\n }\n hasBorder\n heading=\"Sheet:\"\n description={\n typeof (field as any)?.configurationFields?.spreadsheet ===\n \"object\"\n ? (field as any)?.configurationFields?.spreadsheet?.value\n ?.label\n : (field as any)?.configurationFields?.spreadsheet?.value\n }\n />\n ) : null}\n {!!(field as any)?.configurationFields?.reference ? (\n <EventComponent\n hasLink={\n (field as any)?.configurationFields?.reference?.referenceURL as boolean\n }\n hasBorder={false}\n heading={(field as any)?.configurationFields?.reference?.title}\n description={(field as any)?.configurationFields?.reference?.description}\n />\n ) : null}\n </Flex>\n <Box\n css={{\n marginBlock: \"$4\",\n height: \"1px\",\n background: \"$neutral100\",\n }}\n />\n </Flex>\n ) : null}\n </>\n );\n};\n\ntype SingleMappingChipWrapperProps = {\n heading: string;\n fields: EventField[];\n hideBorder?: boolean;\n placeholder?: string;\n backgroundColor: string;\n};\n\nconst SingleMappingChipWrapper: React.FC<SingleMappingChipWrapperProps> = ({\n heading,\n fields,\n hideBorder,\n placeholder,\n backgroundColor,\n}) => {\n const modifiedFields = fields.filter(\n (field: EventField) => field.id !== \"ALL\"\n );\n return (\n <>\n <Flex flexDirection=\"column\" gap=\"$6\" css={{ paddingBlock: \"$8\" }}>\n <Text size=\"sm\" weight=\"bold\" css={{ textTransform: \"uppercase\" }}>\n {heading}\n </Text>\n <Flex\n wrap=\"wrap\"\n css={{\n columnGap: \"$2\",\n rowGap: \"$4\",\n \"& > * \": {\n fontFamily: \"'Roboto Mono', monospace !important\",\n fontWeight: \"$4 !important\",\n },\n }}\n >\n {modifiedFields.map((field: EventField) => {\n const chipRef = useRef(null);\n const name = `${!!placeholder ? placeholder : \"\"}${field?.name ?? field?.label}`;\n const currentChipWidth = (chipRef.current as HTMLElement | null)\n ?.offsetWidth;\n return (\n <Tooltip\n delayDuration={300}\n content={name?.length > 52 ? name : \"\"}\n size=\"md\"\n sideOffset={4}\n className=\"dm-sans\"\n >\n <Chip\n ref={chipRef}\n size=\"md\"\n css={{\n background: backgroundColor,\n borderRadius: \"4px !important\",\n span: {\n textAlign: \"center !important\",\n alignContent: \"center !important\",\n display: \"block\",\n maxWidth: \"230px\",\n overflow: \"hidden\",\n fontFamily: \"'Roboto Mono', monospace !important\",\n fontWeight: \"$4 !important\",\n textOverflow: \"ellipsis\",\n whiteSpace: \"nowrap\",\n },\n }}\n >\n {\"$\" + name}\n </Chip>\n </Tooltip>\n );\n })}\n </Flex>\n </Flex>\n {!hideBorder && (\n <Box\n css={{ marginBlock: \"$4\", height: \"1px\", background: \"$neutral100\" }}\n />\n )}\n </>\n );\n};\n\ntype DashboardItemProps = {\n hasEditMapping?: boolean;\n isDraft: boolean;\n onMappingEditHandler: (id: string | number) => void;\n icon: ReactNode;\n heading: string;\n description: string;\n fields: any[];\n isEnabled: boolean;\n integrationName: string;\n handleEditField: HandleEditField;\n id: string | number;\n handleDashboardPage: (value: boolean, type: string) => void;\n type: string;\n toggleDashboardField: (id: string | number, status: boolean) => void;\n deleteFieldHandler: (id: string | number) => void;\n};\n\nconst DashboardItem: React.FC<DashboardItemProps> = ({\n hasEditMapping,\n isDraft,\n onMappingEditHandler,\n icon,\n heading,\n description,\n fields,\n integrationName,\n isEnabled,\n handleEditField,\n id,\n handleDashboardPage,\n type,\n toggleDashboardField,\n deleteFieldHandler,\n}) => {\n const [isMappingDisplayed, setIsMappingDisplayed] = useState(false);\n const [isDeleteModalOpen, setIsDeleteModalOpen] = useState(false);\n\n const getDefaultFieldValue = (defaultValue: {\n type: string;\n value: unknown;\n }) => {\n let field: string = \"--\";\n switch (defaultValue?.type) {\n case \"DATE_TIME\": {\n field = defaultValue?.value as string;\n break;\n }\n case \"STRING\": {\n field = defaultValue?.value as string;\n break;\n }\n default: {\n field = (defaultValue?.value as any)?.label || \"--\";\n break;\n }\n }\n return field;\n };\n\n return (\n <>\n <Flex\n flexDirection=\"column\"\n css={{\n marginTop: \"$8\",\n }}\n >\n <Flex\n css={{\n border: isMappingDisplayed\n ? \"$borderWidths$xs solid $black400\"\n : \"$borderWidths$xs solid $neutral200\",\n borderRadius: isMappingDisplayed ? \"$2xl $2xl 0 0\" : \"$2xl\",\n padding: \"$10 $12\",\n width: \"100%\",\n backgroundColor: isMappingDisplayed\n ? \"rgba(100, 116, 139, 0.04)\"\n : \"$white900\",\n }}\n justifyContent=\"space-between\"\n alignItems=\"center\"\n >\n <Flex\n alignItems=\"center\"\n gap=\"$4\"\n css={{ cursor: \"pointer\" }}\n onClick={() => setIsMappingDisplayed(!isMappingDisplayed)}\n >\n {isMappingDisplayed ? (\n <ChevronDownIcon size={40} color=\"#848484\" />\n ) : (\n <ChevronRightIcon size={40} color=\"#848484\" />\n )}\n <Flex alignItems=\"center\" gap=\"$4\">\n {icon}\n <Flex gap=\"$1\" flexDirection=\"column\">\n <Text size=\"md\" weight=\"bold\">\n {heading}\n </Text>\n <Text size=\"sm\" css={{ \"& span\": {\n fontFamily: \"'DM Sans', sans-serif !important\",\n }, color: \"$neutral600\", \"& b\": { fontWeight: \"$6 !important\", fontFamily: \"'DM Sans', sans-serif !important\" } }} dangerouslySetInnerHTML={{ __html: description }} /> \n </Flex>\n </Flex>\n </Flex>\n <Flex alignItems=\"center\" gap=\"$12\">\n {isDraft && (\n <Flex alignItems=\"center\" gap=\"$12\">\n <Chip rounded=\"full\" size=\"sm\">\n <Box\n css={{\n background: \"$neutral500\",\n borderRadius: \"50%\",\n marginRight: \"$1\",\n width: \"$4\",\n height: \"$4\",\n }}\n />\n <Text\n size=\"sm\"\n weight=\"bold\"\n css={{\n color: \"$neutral800\",\n }}\n >\n DRAFT\n </Text>\n </Chip>\n <Box\n css={{\n width: \"1px\",\n height: \"20px\",\n background: \"#64748B20\",\n }}\n />\n </Flex>\n )}\n <Switch\n size=\"md\"\n checked={isEnabled}\n onChange={(value) => toggleDashboardField(id, value)}\n />\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <IconButton\n variant=\"ghost\"\n color=\"default\"\n size=\"lg\"\n icon={<EllipsisVerticalIcon />}\n />\n </DropdownMenuTrigger>\n <DropdownMenuContent\n className=\"dm-sans\"\n css={{\n minWidth: 180,\n zIndex: 10,\n \"& p\": {\n margin: \"0 !important\",\n padding: \"0 !important\",\n },\n }}\n sideOffset={4}\n align=\"end\"\n >\n {\n hasEditMapping === undefined || hasEditMapping ? <DropdownMenuItem\n css={{\n cursor: \"pointer\",\n }}\n onClick={() => {\n onMappingEditHandler(id);\n handleEditField({\n type,\n values: fields,\n id,\n });\n handleDashboardPage(false, type);\n }}\n >\n <Flex alignItems=\"center\" gap=\"$2\">\n <PencilIcon color=\"#6A6A6A\" size={20} />\n <Text size=\"sm\">Edit</Text>\n </Flex>\n </DropdownMenuItem> : null\n }\n <DropdownMenuItem\n onClick={() => setIsDeleteModalOpen(true)}\n css={{\n cursor: \"pointer\",\n }}\n >\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 </Flex>\n </Flex>\n <Box\n css={{\n height: isMappingDisplayed ? \"100%\" : 0,\n }}\n >\n <Box\n css={{\n borderInline: \"$borderWidths$xs solid $black400\",\n maxHeight: 432,\n height: \"100%\",\n position: \"relative\",\n overflow: \"auto\",\n }}\n >\n {fields?.length ? (\n <Table css={{ borderCollapse: \"collapse\", width: \"100%\" }}>\n <Thead\n css={{\n background: \"$white900\",\n \"& th\": {\n padding: \"$7 $8\",\n fontSize: \"$sm\",\n lineHeight: \"$sm\",\n textAlign: \"left\",\n borderInline: \"none\",\n },\n borderBottom: \"$borderWidths$xs solid $neutral100\",\n position: \"sticky\",\n top: 0,\n zIndex: 10,\n }}\n >\n <Th css={{ paddingLeft: \"$38 !important\" }}>Type</Th>\n <Th>SurveySparrow Field</Th>\n <Th>{`${integrationName} Field`}</Th>\n <Th css={{ paddingRight: \"$20 !important\" }}>\n Default Value\n </Th>\n </Thead>\n <Tbody\n css={{\n \"& tr:last-child\": {\n borderBottom: 0,\n \"& td\": {\n borderBottom: 0,\n },\n },\n }}\n >\n {fields.map((field: any) => {\n return (\n <Tr\n css={{\n borderBottom: \"$borderWidths$xs solid $neutral100\",\n \"& td\": {\n padding: \"$7 $8\",\n fontSize: \"$sm\",\n lineHeight: \"$sm\",\n borderInline: \"none\",\n },\n \"&:hover\": {\n background: \"none !important\",\n },\n \"& td:first-child\": {\n paddingLeft: \"$38 !important\",\n },\n \"& td:last-child\": {\n paddingRight: \"$20 !important\",\n },\n }}\n >\n <Td>{field.mappedType?.label ?? \"--\"}</Td>\n <Td>{field.surveySparrowField?.label ?? \"--\"}</Td>\n <Td>{field.integrationField?.label ?? \"--\"}</Td>\n <Td>\n {getDefaultFieldValue(field.defaultValue) ?? \"--\"}\n </Td>\n </Tr>\n );\n })}\n </Tbody>\n </Table>\n ) : null}\n </Box>\n {isMappingDisplayed && (\n <Box\n css={{\n padding: \"$8 $32\",\n border: \"$borderWidths$xs solid $black400\",\n borderTop: hasEditMapping === undefined || hasEditMapping ? \"$borderWidths$xs solid $neutral200\" : \"none\",\n borderRadius: \"0 0 $2xl $2xl\",\n height: \"100%\",\n }}\n >\n <Button\n size=\"sm\"\n onClick={() => {\n onMappingEditHandler(id);\n handleEditField({\n type,\n values: fields,\n id,\n });\n handleDashboardPage(false, type);\n }}\n css={{\n visibility: hasEditMapping === undefined || hasEditMapping ? \"visible\" : \"hidden\",\n }}\n leftIcon={<PencilIcon />}\n color={\"primary\"}\n variant=\"ghost\"\n >\n {`Edit ${heading}`}\n </Button>\n </Box>\n )}\n </Box>\n </Flex>\n {isDeleteModalOpen && (\n <ConfirmationModal\n name=\"Delete Mapping?\"\n description={`Are you sure you want to delete the mapping? This action cannot be undone.`}\n onConfirm={() => {\n deleteFieldHandler(id);\n setIsDeleteModalOpen(false);\n }}\n onCancel={() => {\n setIsDeleteModalOpen(false);\n }}\n />\n )}\n </>\n );\n};\n\ntype DropdownItemProps = {\n icon: ReactNode;\n heading: string;\n description: string;\n onClickHandler: () => void;\n isDisabled?: boolean;\n toolTipContent: string;\n};\n\nconst DropdownItem: React.FC<DropdownItemProps> = ({\n icon,\n heading,\n description,\n onClickHandler,\n isDisabled,\n toolTipContent,\n}) => {\n return (\n <Tooltip\n content={isDisabled ? toolTipContent : \"\"}\n css={{\n zIndex: \"99999999\",\n minWidth: \"280px\",\n textAlign: \"center\",\n }}\n >\n <Flex>\n <DropdownMenuItem\n css={{ cursor: isDisabled ? \"not-allowed !important\" : \"pointer\" }}\n onClick={onClickHandler}\n disabled={isDisabled}\n >\n <Flex alignItems=\"flex-start\" gap=\"$4\">\n <Box css={{ width: \"$6\" }}>{icon}</Box>\n <Flex flexDirection=\"column\">\n <Text size=\"md\">{heading}</Text>\n <Text size=\"sm\" css={{ color: \"$neutral700\" }}>\n {description}\n </Text>\n </Flex>\n </Flex>\n </DropdownMenuItem>\n </Flex>\n </Tooltip>\n );\n};\n"],"names":["React","_a","_b","_c","_d","_e","_f","_g","field"],"mappings":"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"}