@sparrowengg/integrations-templates-frontend 6.0.0 → 6.0.2

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 (26) hide show
  1. package/dist/cjs/integration-template/components/dashboard/DashboardItem.js +24 -2
  2. package/dist/cjs/integration-template/components/dashboard/DashboardItem.js.map +1 -1
  3. package/dist/cjs/integration-template/components/dashboard/SingleMappingDashboardItem.js +24 -2
  4. package/dist/cjs/integration-template/components/dashboard/SingleMappingDashboardItem.js.map +1 -1
  5. package/dist/cjs/integration-template/components/dashboard/TriggerDashboardItem.js +24 -2
  6. package/dist/cjs/integration-template/components/dashboard/TriggerDashboardItem.js.map +1 -1
  7. package/dist/cjs/triggers/components/EventSetup.js +2 -1
  8. package/dist/cjs/triggers/components/EventSetup.js.map +1 -1
  9. package/dist/cjs/triggers/components/trigger.js +26 -18
  10. package/dist/cjs/triggers/components/trigger.js.map +1 -1
  11. package/dist/cjs/triggers/utils/validation.utils.js +10 -0
  12. package/dist/cjs/triggers/utils/validation.utils.js.map +1 -1
  13. package/dist/es/integration-template/components/dashboard/DashboardItem.js +24 -2
  14. package/dist/es/integration-template/components/dashboard/DashboardItem.js.map +1 -1
  15. package/dist/es/integration-template/components/dashboard/SingleMappingDashboardItem.js +24 -2
  16. package/dist/es/integration-template/components/dashboard/SingleMappingDashboardItem.js.map +1 -1
  17. package/dist/es/integration-template/components/dashboard/TriggerDashboardItem.js +24 -2
  18. package/dist/es/integration-template/components/dashboard/TriggerDashboardItem.js.map +1 -1
  19. package/dist/es/node_modules/@sparrowengg/twigs-react/dist/es/loader/circle.js +1 -1
  20. package/dist/es/triggers/components/EventSetup.js +2 -1
  21. package/dist/es/triggers/components/EventSetup.js.map +1 -1
  22. package/dist/es/triggers/components/trigger.js +28 -20
  23. package/dist/es/triggers/components/trigger.js.map +1 -1
  24. package/dist/es/triggers/utils/validation.utils.js +10 -1
  25. package/dist/es/triggers/utils/validation.utils.js.map +1 -1
  26. package/package.json +1 -1
@@ -13,6 +13,7 @@ import { Text } from '../../../node_modules/@sparrowengg/twigs-react/dist/es/tex
13
13
  import { Tooltip } from '../../../node_modules/@sparrowengg/twigs-react/dist/es/tooltip/tooltip.js';
14
14
  import { Button } from '../../../node_modules/@sparrowengg/twigs-react/dist/es/button/button.js';
15
15
  import { Box } from '../../../node_modules/@sparrowengg/twigs-react/dist/es/box/box.js';
16
+ import { CircleLoader } from '../../../node_modules/@sparrowengg/twigs-react/dist/es/loader/circle.js';
16
17
  import { Switch } from '../../../node_modules/@sparrowengg/twigs-react/dist/es/switch/switch.js';
17
18
  import { DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem } from '../../../node_modules/@sparrowengg/twigs-react/dist/es/dropdown/dropdown.js';
18
19
  import { IconButton } from '../../../node_modules/@sparrowengg/twigs-react/dist/es/button/icon-button.js';
@@ -37,6 +38,17 @@ const SingleMappingDashboardItem = ({
37
38
  const [isMappingDisplayed, setIsMappingDisplayed] = useState(false);
38
39
  const [isDeleteModalOpen, setIsDeleteModalOpen] = useState(false);
39
40
  const [isSyncing, setIsSyncing] = useState(null);
41
+ const [isToggling, setIsToggling] = useState(false);
42
+ const handleToggle = async (value) => {
43
+ if (!toggleDashboardField)
44
+ return;
45
+ try {
46
+ setIsToggling(true);
47
+ await Promise.resolve(toggleDashboardField(field.id, value));
48
+ } finally {
49
+ setIsToggling(false);
50
+ }
51
+ };
40
52
  const handleEdit = () => {
41
53
  onMappingEditHandler(field.id);
42
54
  handleEditField({
@@ -133,12 +145,22 @@ const SingleMappingDashboardItem = ({
133
145
  },
134
146
  /* @__PURE__ */ React__default.createElement(Sync, null)
135
147
  )
136
- )) : null, showDivider ? /* @__PURE__ */ React__default.createElement(Box, { css: { width: "1px", height: "20px", background: "#64748B33" } }) : null, showSwitch ? /* @__PURE__ */ React__default.createElement(
148
+ )) : null, showDivider ? /* @__PURE__ */ React__default.createElement(Box, { css: { width: "1px", height: "20px", background: "#64748B33" } }) : null, showSwitch ? isToggling ? /* @__PURE__ */ React__default.createElement(
149
+ CircleLoader,
150
+ {
151
+ size: "xl",
152
+ css: {
153
+ ".twigs-circle-loader__ring": { strokeWidth: "1" },
154
+ ".twigs-circle-loader__dot": { strokeWidth: "1" }
155
+ },
156
+ color: "primary"
157
+ }
158
+ ) : /* @__PURE__ */ React__default.createElement(
137
159
  Switch,
138
160
  {
139
161
  size: "md",
140
162
  checked: field.isEnabled,
141
- onChange: (value) => toggleDashboardField == null ? void 0 : toggleDashboardField(field.id, value)
163
+ onChange: handleToggle
142
164
  }
143
165
  ) : null, /* @__PURE__ */ React__default.createElement(DropdownMenu, null, /* @__PURE__ */ React__default.createElement(Tooltip, { content: DASHBOARD_UI_STRINGS.MORE, className: "dm-sans" }, /* @__PURE__ */ React__default.createElement(DropdownMenuTrigger, { asChild: true }, /* @__PURE__ */ React__default.createElement(
144
166
  IconButton,
@@ -1 +1 @@
1
- {"version":3,"file":"SingleMappingDashboardItem.js","sources":["../../../../../src/integration-template/components/dashboard/SingleMappingDashboardItem.tsx"],"sourcesContent":["import {\n Box,\n Button,\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n Flex,\n IconButton,\n Switch,\n Text,\n Tooltip,\n} from \"@sparrowengg/twigs-react\";\nimport {\n ChevronDownIcon,\n ChevronRightIcon,\n DeleteIcon,\n EllipsisVerticalIcon,\n PencilIcon,\n} from \"@sparrowengg/twigs-react-icons\";\nimport React, { useState } from \"react\";\nimport ConfirmationModal from \"../../../commons/components/confirmation-modal\";\nimport Sync from \"../../../commons/icons/sync\";\nimport {\n DashboardField,\n EventField,\n FieldOptionsType,\n HandleEditField,\n} from \"../../../commons/types/enhanced\";\nimport { ConditionCard } from \"../../../mapping/utils/conditionDescriptionBuilder\";\nimport { DASHBOARD_UI_STRINGS, transformToPastTense } from \"../dashboard-constants\";\nimport { SingleMappingChipWrapper } from \"./SingleMappingChipWrapper\";\nimport { SingleMappingEventWrapper } from \"./SingleMappingEventWrapper\";\nimport { sanitizeHTML } from \"../../../commons/utils\";\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\nexport const 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 const handleEdit = () => {\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 const handleSync = async () => {\n setIsSyncing(field.id);\n setTimeout(async () => {\n await syncMapping?.(field.id);\n setIsSyncing(null);\n }, 2000);\n };\n\n const showIcon = field?.isEnabled !== null && field?.isEnabled !== undefined;\n const showSwitch = field?.isEnabled !== null && field?.isEnabled !== undefined;\n const showDivider = showSwitch && syncMapping;\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 ? \"$10 $12\" : \"15px $12\",\n width: \"100%\",\n backgroundColor: isMappingDisplayed ? \"rgba(100, 116, 139, 0.04)\" : \"$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 {showIcon ? icon : null}\n <Flex gap=\"$1\" flexDirection=\"column\">\n <Flex>\n <Text size=\"md\" weight=\"bold\">\n {field?.mappingName\n ? field?.mappingName\n : (field as any)?.configurationFields?.account?.value?.label ??\n DASHBOARD_UI_STRINGS.MAPPING_HEADING}\n </Text> \n {field?.Indicator && (\n <>{field?.Indicator({text: field?.indicatorText})}</>\n )}\n </Flex>\n \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: sanitizeHTML(\n field?.mappingDescription\n ? field?.mappingDescription\n : `Sync survey responses to ${integrationName} when ${(field as any)?.mappingConfiguration?.events?.label?.toLowerCase()} is ${transformToPastTense(`${(field as any)?.mappingConfiguration?.action?.label?.toLowerCase()}`)}`\n ),\n }}\n />\n )}\n </Flex>\n </Flex>\n </Flex>\n <Flex alignItems=\"center\" gap=\"$12\">\n {syncMapping ? (\n <Tooltip content={DASHBOARD_UI_STRINGS.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={handleSync}\n >\n <Sync />\n </Flex>\n </Button>\n </Tooltip>\n ) : null}\n {showDivider ? (\n <Box css={{ width: \"1px\", height: \"20px\", background: \"#64748B33\" }} />\n ) : null}\n {showSwitch ? (\n <Switch\n size=\"md\"\n checked={field.isEnabled}\n onChange={(value) => toggleDashboardField?.(field.id, value)}\n />\n ) : null}\n <DropdownMenu>\n <Tooltip content={DASHBOARD_UI_STRINGS.MORE} className=\"dm-sans\">\n <DropdownMenuTrigger asChild>\n <IconButton\n variant=\"ghost\"\n color=\"default\"\n size=\"lg\"\n icon={<EllipsisVerticalIcon />}\n aria-label=\"More options\"\n />\n </DropdownMenuTrigger>\n </Tooltip>\n <DropdownMenuContent\n className=\"dm-sans\"\n css={{\n minWidth: 180,\n zIndex: 10,\n \"& p\": { margin: \"0 !important\", padding: \"0 !important\" },\n }}\n sideOffset={4}\n align=\"end\"\n >\n {(hasEditMapping === undefined || hasEditMapping) && (\n <DropdownMenuItem\n css={{ cursor: \"pointer\" }}\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\">{DASHBOARD_UI_STRINGS.EDIT}</Text>\n </Flex>\n </DropdownMenuItem>\n )}\n <DropdownMenuItem\n onClick={() => setIsDeleteModalOpen(true)}\n css={{ cursor: \"pointer\" }}\n >\n <Flex alignItems=\"center\" gap=\"$2\">\n <DeleteIcon color=\"#6A6A6A\" size={20} />\n <Text size=\"sm\">{DASHBOARD_UI_STRINGS.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 {!!((field as any)?.mappedFields?.questions as EventField[])?.filter?.(\n (question: EventField) => question.isEnabled\n )?.length ? (\n <SingleMappingChipWrapper\n heading={DASHBOARD_UI_STRINGS.QUESTIONS}\n fields={((field as any)?.mappedFields?.questions as EventField[])?.filter?.(\n (question: EventField) => question.isEnabled\n )}\n backgroundColor=\"#E5F2FF\"\n />\n ) : null}\n {!!((field as any)?.mappedFields?.derivedQuestions as EventField[])?.filter?.(\n (derivedQuestion: EventField) => derivedQuestion.isEnabled\n )?.length ? (\n <SingleMappingChipWrapper\n heading={DASHBOARD_UI_STRINGS.ENRICH}\n fields={((field as any)?.mappedFields?.derivedQuestions as EventField[])?.filter?.(\n (derivedQuestion: EventField) => derivedQuestion.isEnabled\n )}\n backgroundColor=\"#E5F2FF\"\n />\n ) : null}\n {!!((field as any)?.mappedFields?.variables as EventField[])?.filter?.(\n (variable: EventField) => variable.isEnabled\n )?.length ? (\n <SingleMappingChipWrapper\n heading={DASHBOARD_UI_STRINGS.VARIABLES}\n fields={((field as any)?.mappedFields?.variables as EventField[])?.filter?.(\n (variable: EventField) => variable.isEnabled\n )}\n backgroundColor=\"$positive100\"\n />\n ) : null}\n {!!((field as any)?.mappedFields?.contactProperties as EventField[])?.filter?.(\n (property: EventField) => property.isEnabled\n )?.length ? (\n <SingleMappingChipWrapper\n heading={DASHBOARD_UI_STRINGS.CONTACTS}\n fields={((field as any)?.mappedFields?.contactProperties as EventField[])?.filter?.(\n (property: EventField) => property.isEnabled\n )}\n backgroundColor=\"$negative100\"\n />\n ) : null}\n {!!((field as any)?.mappedFields?.expressions as EventField[])?.filter?.(\n (expression: EventField) => expression.isEnabled\n )?.length ? (\n <SingleMappingChipWrapper\n heading={DASHBOARD_UI_STRINGS.EXPRESSION}\n backgroundColor=\"$neutral100\"\n fields={((field as any)?.mappedFields?.expressions as EventField[])?.filter?.(\n (expression: EventField) => expression.isEnabled\n )}\n />\n ) : null}\n {!!((field as any)?.mappedFields?.property as EventField[])?.filter?.(\n (property: EventField) => property.isEnabled\n )?.length ? (\n <SingleMappingChipWrapper\n heading={DASHBOARD_UI_STRINGS.PROPERTY}\n hideBorder\n fields={((field as any)?.mappedFields?.property as EventField[])?.filter?.(\n (property: EventField) => property.isEnabled\n )}\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:\n hasEditMapping === undefined || hasEditMapping\n ? \"$borderWidths$xs solid $neutral200\"\n : \"none\",\n borderRadius: \"0 0 $2xl $2xl\",\n height: \"100%\",\n }}\n >\n {field?.mappingConditions?.filterGroups?.length ? (\n <Flex flexDirection=\"column\" justifyContent=\"center\">\n <Text\n className=\"dm-sans\"\n size=\"sm\"\n weight=\"bold\"\n css={{\n textTransform: \"uppercase\",\n color: \"$neutral900\",\n fontFamily: \"DM Sans !important\",\n paddingLeft: \"$4\",\n }}\n >\n {DASHBOARD_UI_STRINGS.CONDITION}\n </Text>\n <Flex css={{ marginTop: \"$2 !important\" }}>\n <ConditionCard\n isEditable={false}\n conditionsData={field?.mappingConditions}\n showMoreMenu={false}\n />\n </Flex>\n </Flex>\n ) : null}\n <Button\n size=\"sm\"\n leftIcon={<PencilIcon />}\n color=\"primary\"\n variant=\"ghost\"\n css={{\n display:\n hasEditMapping === undefined || hasEditMapping ? \"flex\" : \"none\",\n }}\n onClick={handleEdit}\n >\n {DASHBOARD_UI_STRINGS.EDIT_MAPPING}\n </Button>\n </Box>\n )}\n </Box>\n ) : null}\n </Flex>\n {isDeleteModalOpen && (\n <ConfirmationModal\n name={DASHBOARD_UI_STRINGS.DELETE_MAPPING_TITLE}\n description={DASHBOARD_UI_STRINGS.DELETE_MAPPING_MESSAGE}\n onConfirm={() => deleteFieldHandler?.(field.id)}\n onCancel={() => setIsDeleteModalOpen(false)}\n />\n )}\n </>\n );\n};\n\n"],"names":["React"],"mappings":"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"}
1
+ {"version":3,"file":"SingleMappingDashboardItem.js","sources":["../../../../../src/integration-template/components/dashboard/SingleMappingDashboardItem.tsx"],"sourcesContent":["import {\n Box,\n Button,\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n Flex,\n IconButton,\n Switch,\n Text,\n Tooltip,\n CircleLoader,\n} from \"@sparrowengg/twigs-react\";\nimport {\n ChevronDownIcon,\n ChevronRightIcon,\n DeleteIcon,\n EllipsisVerticalIcon,\n PencilIcon,\n} from \"@sparrowengg/twigs-react-icons\";\nimport React, { useState } from \"react\";\nimport ConfirmationModal from \"../../../commons/components/confirmation-modal\";\nimport Sync from \"../../../commons/icons/sync\";\nimport {\n DashboardField,\n EventField,\n FieldOptionsType,\n HandleEditField,\n} from \"../../../commons/types/enhanced\";\nimport { ConditionCard } from \"../../../mapping/utils/conditionDescriptionBuilder\";\nimport { DASHBOARD_UI_STRINGS, transformToPastTense } from \"../dashboard-constants\";\nimport { SingleMappingChipWrapper } from \"./SingleMappingChipWrapper\";\nimport { SingleMappingEventWrapper } from \"./SingleMappingEventWrapper\";\nimport { sanitizeHTML } from \"../../../commons/utils\";\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\nexport const 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 const [isToggling, setIsToggling] = useState(false);\n\n const handleToggle = async (value: boolean) => {\n if (!toggleDashboardField) return;\n try {\n setIsToggling(true);\n await Promise.resolve(toggleDashboardField(field.id, value));\n } finally {\n setIsToggling(false);\n }\n };\n\n const handleEdit = () => {\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 const handleSync = async () => {\n setIsSyncing(field.id);\n setTimeout(async () => {\n await syncMapping?.(field.id);\n setIsSyncing(null);\n }, 2000);\n };\n\n const showIcon = field?.isEnabled !== null && field?.isEnabled !== undefined;\n const showSwitch = field?.isEnabled !== null && field?.isEnabled !== undefined;\n const showDivider = showSwitch && syncMapping;\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 ? \"$10 $12\" : \"15px $12\",\n width: \"100%\",\n backgroundColor: isMappingDisplayed ? \"rgba(100, 116, 139, 0.04)\" : \"$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 {showIcon ? icon : null}\n <Flex gap=\"$1\" flexDirection=\"column\">\n <Flex>\n <Text size=\"md\" weight=\"bold\">\n {field?.mappingName\n ? field?.mappingName\n : (field as any)?.configurationFields?.account?.value?.label ??\n DASHBOARD_UI_STRINGS.MAPPING_HEADING}\n </Text> \n {field?.Indicator && (\n <>{field?.Indicator({text: field?.indicatorText})}</>\n )}\n </Flex>\n \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: sanitizeHTML(\n field?.mappingDescription\n ? field?.mappingDescription\n : `Sync survey responses to ${integrationName} when ${(field as any)?.mappingConfiguration?.events?.label?.toLowerCase()} is ${transformToPastTense(`${(field as any)?.mappingConfiguration?.action?.label?.toLowerCase()}`)}`\n ),\n }}\n />\n )}\n </Flex>\n </Flex>\n </Flex>\n <Flex alignItems=\"center\" gap=\"$12\">\n {syncMapping ? (\n <Tooltip content={DASHBOARD_UI_STRINGS.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={handleSync}\n >\n <Sync />\n </Flex>\n </Button>\n </Tooltip>\n ) : null}\n {showDivider ? (\n <Box css={{ width: \"1px\", height: \"20px\", background: \"#64748B33\" }} />\n ) : null}\n {showSwitch ? (\n isToggling ? (\n <CircleLoader\n size=\"xl\"\n css={{\n \".twigs-circle-loader__ring\": { strokeWidth: \"1\" },\n \".twigs-circle-loader__dot\": { strokeWidth: \"1\" },\n }}\n color=\"primary\"\n />\n ) : (\n <Switch\n size=\"md\"\n checked={field.isEnabled}\n onChange={handleToggle}\n />\n )\n ) : null}\n <DropdownMenu>\n <Tooltip content={DASHBOARD_UI_STRINGS.MORE} className=\"dm-sans\">\n <DropdownMenuTrigger asChild>\n <IconButton\n variant=\"ghost\"\n color=\"default\"\n size=\"lg\"\n icon={<EllipsisVerticalIcon />}\n aria-label=\"More options\"\n />\n </DropdownMenuTrigger>\n </Tooltip>\n <DropdownMenuContent\n className=\"dm-sans\"\n css={{\n minWidth: 180,\n zIndex: 10,\n \"& p\": { margin: \"0 !important\", padding: \"0 !important\" },\n }}\n sideOffset={4}\n align=\"end\"\n >\n {(hasEditMapping === undefined || hasEditMapping) && (\n <DropdownMenuItem\n css={{ cursor: \"pointer\" }}\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\">{DASHBOARD_UI_STRINGS.EDIT}</Text>\n </Flex>\n </DropdownMenuItem>\n )}\n <DropdownMenuItem\n onClick={() => setIsDeleteModalOpen(true)}\n css={{ cursor: \"pointer\" }}\n >\n <Flex alignItems=\"center\" gap=\"$2\">\n <DeleteIcon color=\"#6A6A6A\" size={20} />\n <Text size=\"sm\">{DASHBOARD_UI_STRINGS.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 {!!((field as any)?.mappedFields?.questions as EventField[])?.filter?.(\n (question: EventField) => question.isEnabled\n )?.length ? (\n <SingleMappingChipWrapper\n heading={DASHBOARD_UI_STRINGS.QUESTIONS}\n fields={((field as any)?.mappedFields?.questions as EventField[])?.filter?.(\n (question: EventField) => question.isEnabled\n )}\n backgroundColor=\"#E5F2FF\"\n />\n ) : null}\n {!!((field as any)?.mappedFields?.derivedQuestions as EventField[])?.filter?.(\n (derivedQuestion: EventField) => derivedQuestion.isEnabled\n )?.length ? (\n <SingleMappingChipWrapper\n heading={DASHBOARD_UI_STRINGS.ENRICH}\n fields={((field as any)?.mappedFields?.derivedQuestions as EventField[])?.filter?.(\n (derivedQuestion: EventField) => derivedQuestion.isEnabled\n )}\n backgroundColor=\"#E5F2FF\"\n />\n ) : null}\n {!!((field as any)?.mappedFields?.variables as EventField[])?.filter?.(\n (variable: EventField) => variable.isEnabled\n )?.length ? (\n <SingleMappingChipWrapper\n heading={DASHBOARD_UI_STRINGS.VARIABLES}\n fields={((field as any)?.mappedFields?.variables as EventField[])?.filter?.(\n (variable: EventField) => variable.isEnabled\n )}\n backgroundColor=\"$positive100\"\n />\n ) : null}\n {!!((field as any)?.mappedFields?.contactProperties as EventField[])?.filter?.(\n (property: EventField) => property.isEnabled\n )?.length ? (\n <SingleMappingChipWrapper\n heading={DASHBOARD_UI_STRINGS.CONTACTS}\n fields={((field as any)?.mappedFields?.contactProperties as EventField[])?.filter?.(\n (property: EventField) => property.isEnabled\n )}\n backgroundColor=\"$negative100\"\n />\n ) : null}\n {!!((field as any)?.mappedFields?.expressions as EventField[])?.filter?.(\n (expression: EventField) => expression.isEnabled\n )?.length ? (\n <SingleMappingChipWrapper\n heading={DASHBOARD_UI_STRINGS.EXPRESSION}\n backgroundColor=\"$neutral100\"\n fields={((field as any)?.mappedFields?.expressions as EventField[])?.filter?.(\n (expression: EventField) => expression.isEnabled\n )}\n />\n ) : null}\n {!!((field as any)?.mappedFields?.property as EventField[])?.filter?.(\n (property: EventField) => property.isEnabled\n )?.length ? (\n <SingleMappingChipWrapper\n heading={DASHBOARD_UI_STRINGS.PROPERTY}\n hideBorder\n fields={((field as any)?.mappedFields?.property as EventField[])?.filter?.(\n (property: EventField) => property.isEnabled\n )}\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:\n hasEditMapping === undefined || hasEditMapping\n ? \"$borderWidths$xs solid $neutral200\"\n : \"none\",\n borderRadius: \"0 0 $2xl $2xl\",\n height: \"100%\",\n }}\n >\n {field?.mappingConditions?.filterGroups?.length ? (\n <Flex flexDirection=\"column\" justifyContent=\"center\">\n <Text\n className=\"dm-sans\"\n size=\"sm\"\n weight=\"bold\"\n css={{\n textTransform: \"uppercase\",\n color: \"$neutral900\",\n fontFamily: \"DM Sans !important\",\n paddingLeft: \"$4\",\n }}\n >\n {DASHBOARD_UI_STRINGS.CONDITION}\n </Text>\n <Flex css={{ marginTop: \"$2 !important\" }}>\n <ConditionCard\n isEditable={false}\n conditionsData={field?.mappingConditions}\n showMoreMenu={false}\n />\n </Flex>\n </Flex>\n ) : null}\n <Button\n size=\"sm\"\n leftIcon={<PencilIcon />}\n color=\"primary\"\n variant=\"ghost\"\n css={{\n display:\n hasEditMapping === undefined || hasEditMapping ? \"flex\" : \"none\",\n }}\n onClick={handleEdit}\n >\n {DASHBOARD_UI_STRINGS.EDIT_MAPPING}\n </Button>\n </Box>\n )}\n </Box>\n ) : null}\n </Flex>\n {isDeleteModalOpen && (\n <ConfirmationModal\n name={DASHBOARD_UI_STRINGS.DELETE_MAPPING_TITLE}\n description={DASHBOARD_UI_STRINGS.DELETE_MAPPING_MESSAGE}\n onConfirm={() => deleteFieldHandler?.(field.id)}\n onCancel={() => setIsDeleteModalOpen(false)}\n />\n )}\n </>\n );\n};\n\n"],"names":["React"],"mappings":"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"}
@@ -12,6 +12,7 @@ import { ChevronRightIcon } from '../../../node_modules/@sparrowengg/twigs-react
12
12
  import { Text } from '../../../node_modules/@sparrowengg/twigs-react/dist/es/text/text.js';
13
13
  import { Chip } from '../../../node_modules/@sparrowengg/twigs-react/dist/es/chip/chip.js';
14
14
  import { Box } from '../../../node_modules/@sparrowengg/twigs-react/dist/es/box/box.js';
15
+ import { CircleLoader } from '../../../node_modules/@sparrowengg/twigs-react/dist/es/loader/circle.js';
15
16
  import { Switch } from '../../../node_modules/@sparrowengg/twigs-react/dist/es/switch/switch.js';
16
17
  import { DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem } from '../../../node_modules/@sparrowengg/twigs-react/dist/es/dropdown/dropdown.js';
17
18
  import { IconButton } from '../../../node_modules/@sparrowengg/twigs-react/dist/es/button/icon-button.js';
@@ -36,6 +37,17 @@ const TriggerDashboardItem = ({
36
37
  var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s;
37
38
  const [isMappingDisplayed, setIsMappingDisplayed] = useState(false);
38
39
  const [isDeleteModalOpen, setIsDeleteModalOpen] = useState(false);
40
+ const [isToggling, setIsToggling] = useState(false);
41
+ const handleToggle = async (value) => {
42
+ if (!toggleDashboardField)
43
+ return;
44
+ try {
45
+ setIsToggling(true);
46
+ await Promise.resolve(toggleDashboardField(field.id, value));
47
+ } finally {
48
+ setIsToggling(false);
49
+ }
50
+ };
39
51
  const handleEdit = () => {
40
52
  handleEditField({
41
53
  type: "TRIGGER",
@@ -90,12 +102,22 @@ const TriggerDashboardItem = ({
90
102
  height: "$4"
91
103
  }
92
104
  }
93
- ), /* @__PURE__ */ React__default.createElement(Text, { size: "sm", weight: "bold", css: { color: "$neutral800" } }, DASHBOARD_UI_STRINGS.DRAFT)), /* @__PURE__ */ React__default.createElement(Box, { css: { width: "1px", height: "20px", background: "#64748B20" } })), /* @__PURE__ */ React__default.createElement(
105
+ ), /* @__PURE__ */ React__default.createElement(Text, { size: "sm", weight: "bold", css: { color: "$neutral800" } }, DASHBOARD_UI_STRINGS.DRAFT)), /* @__PURE__ */ React__default.createElement(Box, { css: { width: "1px", height: "20px", background: "#64748B20" } })), isToggling ? /* @__PURE__ */ React__default.createElement(
106
+ CircleLoader,
107
+ {
108
+ size: "xl",
109
+ css: {
110
+ ".twigs-circle-loader__ring": { strokeWidth: "1" },
111
+ ".twigs-circle-loader__dot": { strokeWidth: "1" }
112
+ },
113
+ color: "primary"
114
+ }
115
+ ) : /* @__PURE__ */ React__default.createElement(
94
116
  Switch,
95
117
  {
96
118
  size: "md",
97
119
  checked: field.isEnabled,
98
- onChange: (value) => toggleDashboardField == null ? void 0 : toggleDashboardField(field.id, value)
120
+ onChange: handleToggle
99
121
  }
100
122
  ), /* @__PURE__ */ React__default.createElement(DropdownMenu, null, /* @__PURE__ */ React__default.createElement(DropdownMenuTrigger, { asChild: true }, /* @__PURE__ */ React__default.createElement(
101
123
  IconButton,
@@ -1 +1 @@
1
- {"version":3,"file":"TriggerDashboardItem.js","sources":["../../../../../src/integration-template/components/dashboard/TriggerDashboardItem.tsx"],"sourcesContent":["import {\n Box,\n Button,\n Chip,\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n Flex,\n IconButton,\n Switch,\n Text,\n} from \"@sparrowengg/twigs-react\";\nimport {\n ChevronDownIcon,\n ChevronRightIcon,\n DeleteIcon,\n EllipsisVerticalIcon,\n PencilIcon,\n} from \"@sparrowengg/twigs-react-icons\";\nimport React, { useState } from \"react\";\nimport ConfirmationModal from \"../../../commons/components/confirmation-modal\";\nimport {\n DashboardField,\n EventField,\n FieldOptionsType,\n HandleEditField,\n} from \"../../../commons/types/enhanced\";\nimport { DASHBOARD_UI_STRINGS } from \"../dashboard-constants\";\nimport { transformDataToString } from \"../dashboard-utils\";\nimport { EventComponent } from \"./EventComponent\";\nimport { SingleMappingChipWrapper } from \"./SingleMappingChipWrapper\";\nimport { SingleMappingEventWrapper } from \"./SingleMappingEventWrapper\";\nimport { sanitizeHTML } from \"../../../commons/utils\";\n\ntype TriggerDashboardItemProps = {\n onTriggerEditHandler: any;\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\nexport const TriggerDashboardItem: React.FC<TriggerDashboardItemProps> = ({\n onTriggerEditHandler,\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 handleEdit = () => {\n handleEditField({\n type: \"TRIGGER\",\n values: field,\n id: field.id,\n });\n handleDashboardPage(false, \"TRIGGER\");\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 ? \"rgba(100, 116, 139, 0.04)\" : \"$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 ?? DASHBOARD_UI_STRINGS.TRIGGER_HEADING}\n </Text>\n <Text size=\"sm\" css={{ color: \"$neutral600\" }}>\n {description ?? `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 size=\"sm\" weight=\"bold\" css={{ color: \"$neutral800\" }}>\n {DASHBOARD_UI_STRINGS.DRAFT}\n </Text>\n </Chip>\n <Box css={{ width: \"1px\", height: \"20px\", background: \"#64748B20\" }} />\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 aria-label=\"More options\"\n />\n </DropdownMenuTrigger>\n <DropdownMenuContent\n className=\"dm-sans\"\n css={{\n minWidth: 180,\n zIndex: 10,\n \"& p\": { margin: \"0 !important\", padding: \"0 !important\" },\n }}\n sideOffset={4}\n align=\"end\"\n >\n <DropdownMenuItem css={{ cursor: \"pointer\" }} onClick={handleEdit}>\n <Flex alignItems=\"center\" gap=\"$2\">\n <PencilIcon color=\"#6A6A6A\" size={20} />\n <Text size=\"sm\">{DASHBOARD_UI_STRINGS.EDIT}</Text>\n </Flex>\n </DropdownMenuItem>\n <DropdownMenuItem\n onClick={() => setIsDeleteModalOpen(true)}\n css={{ cursor: \"pointer\" }}\n >\n <Flex alignItems=\"center\" gap=\"$2\">\n <DeleteIcon color=\"#6A6A6A\" size={20} />\n <Text size=\"sm\">{DASHBOARD_UI_STRINGS.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 flexDirection=\"column\" gap=\"$6\" css={{ paddingBlock: \"$8\" }}>\n <Text size=\"sm\" weight=\"bold\" css={{ textTransform: \"uppercase\" }}>\n {DASHBOARD_UI_STRINGS.CONDITION}\n </Text>\n <Box\n dangerouslySetInnerHTML={{\n __html: sanitizeHTML(transformDataToString(field.fields as any, fieldOptions)),\n }}\n />\n </Flex>\n <Box css={{ marginBlock: \"$4\", height: \"1px\", background: \"$neutral100\" }} />\n </>\n ) : null}\n {((field as any)?.triggerDetails?.variables as EventField[])?.length ? (\n <SingleMappingChipWrapper\n heading={\n ((field as any)?.triggerDetails?.variables as EventField[])?.length > 1\n ? DASHBOARD_UI_STRINGS.PASSING_VARIABLES\n : DASHBOARD_UI_STRINGS.PASSING_VARIABLE\n }\n fields={(field as any).triggerDetails.variables}\n backgroundColor=\"$positive100\"\n />\n ) : null}\n <Flex flexDirection=\"column\" gap=\"$6\" css={{ paddingBlock: \"$8\" }}>\n <Text size=\"sm\" weight=\"bold\">\n {DASHBOARD_UI_STRINGS.SEND_SURVEY}\n </Text>\n <Flex alignItems=\"center\">\n {(field as any)?.triggerDetails?.shareType?.value ? (\n <EventComponent\n heading={DASHBOARD_UI_STRINGS.SHARE_TYPE}\n description={(field as any)?.triggerDetails?.shareType?.label}\n />\n ) : null}\n {(field as any)?.triggerDetails?.shareRecipient?.value ? (\n <EventComponent\n heading={DASHBOARD_UI_STRINGS.RECIPIENT}\n hasBorder\n description={(field as any)?.triggerDetails?.shareRecipient?.label}\n />\n ) : null}\n {(field as any)?.triggerDetails?.shareChannel?.value ? (\n <EventComponent\n hasBorder\n heading={DASHBOARD_UI_STRINGS.SHARE_CHANNEL}\n description={(field as any)?.triggerDetails?.shareChannel?.label}\n />\n ) : null}\n </Flex>\n </Flex>\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={handleEdit}\n >\n {DASHBOARD_UI_STRINGS.EDIT_TRIGGER}\n </Button>\n </Box>\n )}\n </Flex>\n {isDeleteModalOpen && (\n <ConfirmationModal\n name={DASHBOARD_UI_STRINGS.DELETE_TRIGGER_TITLE}\n description={DASHBOARD_UI_STRINGS.DELETE_TRIGGER_MESSAGE}\n onConfirm={() => deleteFieldHandler?.(field.id)}\n onCancel={() => setIsDeleteModalOpen(false)}\n />\n )}\n </>\n );\n};\n\n"],"names":["React"],"mappings":"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"}
1
+ {"version":3,"file":"TriggerDashboardItem.js","sources":["../../../../../src/integration-template/components/dashboard/TriggerDashboardItem.tsx"],"sourcesContent":["import {\n Box,\n Button,\n Chip,\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n Flex,\n IconButton,\n Switch,\n Text,\n CircleLoader,\n} from \"@sparrowengg/twigs-react\";\nimport {\n ChevronDownIcon,\n ChevronRightIcon,\n DeleteIcon,\n EllipsisVerticalIcon,\n PencilIcon,\n} from \"@sparrowengg/twigs-react-icons\";\nimport React, { useState } from \"react\";\nimport ConfirmationModal from \"../../../commons/components/confirmation-modal\";\nimport {\n DashboardField,\n EventField,\n FieldOptionsType,\n HandleEditField,\n} from \"../../../commons/types/enhanced\";\nimport { DASHBOARD_UI_STRINGS } from \"../dashboard-constants\";\nimport { transformDataToString } from \"../dashboard-utils\";\nimport { EventComponent } from \"./EventComponent\";\nimport { SingleMappingChipWrapper } from \"./SingleMappingChipWrapper\";\nimport { SingleMappingEventWrapper } from \"./SingleMappingEventWrapper\";\nimport { sanitizeHTML } from \"../../../commons/utils\";\n\ntype TriggerDashboardItemProps = {\n onTriggerEditHandler: any;\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\nexport const TriggerDashboardItem: React.FC<TriggerDashboardItemProps> = ({\n onTriggerEditHandler,\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 const [isToggling, setIsToggling] = useState(false);\n\n const handleToggle = async (value: boolean) => {\n if (!toggleDashboardField) return;\n try {\n setIsToggling(true);\n await Promise.resolve(toggleDashboardField(field.id, value));\n } finally {\n setIsToggling(false);\n }\n };\n\n const handleEdit = () => {\n handleEditField({\n type: \"TRIGGER\",\n values: field,\n id: field.id,\n });\n handleDashboardPage(false, \"TRIGGER\");\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 ? \"rgba(100, 116, 139, 0.04)\" : \"$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 ?? DASHBOARD_UI_STRINGS.TRIGGER_HEADING}\n </Text>\n <Text size=\"sm\" css={{ color: \"$neutral600\" }}>\n {description ?? `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 size=\"sm\" weight=\"bold\" css={{ color: \"$neutral800\" }}>\n {DASHBOARD_UI_STRINGS.DRAFT}\n </Text>\n </Chip>\n <Box css={{ width: \"1px\", height: \"20px\", background: \"#64748B20\" }} />\n </Flex>\n )}\n {isToggling ? (\n <CircleLoader\n size=\"xl\"\n css={{\n \".twigs-circle-loader__ring\": { strokeWidth: \"1\" },\n \".twigs-circle-loader__dot\": { strokeWidth: \"1\" },\n }}\n color=\"primary\"\n />\n ) : (\n <Switch\n size=\"md\"\n checked={field.isEnabled}\n onChange={handleToggle}\n />\n )}\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <IconButton\n variant=\"ghost\"\n color=\"default\"\n size=\"lg\"\n icon={<EllipsisVerticalIcon />}\n aria-label=\"More options\"\n />\n </DropdownMenuTrigger>\n <DropdownMenuContent\n className=\"dm-sans\"\n css={{\n minWidth: 180,\n zIndex: 10,\n \"& p\": { margin: \"0 !important\", padding: \"0 !important\" },\n }}\n sideOffset={4}\n align=\"end\"\n >\n <DropdownMenuItem css={{ cursor: \"pointer\" }} onClick={handleEdit}>\n <Flex alignItems=\"center\" gap=\"$2\">\n <PencilIcon color=\"#6A6A6A\" size={20} />\n <Text size=\"sm\">{DASHBOARD_UI_STRINGS.EDIT}</Text>\n </Flex>\n </DropdownMenuItem>\n <DropdownMenuItem\n onClick={() => setIsDeleteModalOpen(true)}\n css={{ cursor: \"pointer\" }}\n >\n <Flex alignItems=\"center\" gap=\"$2\">\n <DeleteIcon color=\"#6A6A6A\" size={20} />\n <Text size=\"sm\">{DASHBOARD_UI_STRINGS.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 flexDirection=\"column\" gap=\"$6\" css={{ paddingBlock: \"$8\" }}>\n <Text size=\"sm\" weight=\"bold\" css={{ textTransform: \"uppercase\" }}>\n {DASHBOARD_UI_STRINGS.CONDITION}\n </Text>\n <Box\n dangerouslySetInnerHTML={{\n __html: sanitizeHTML(transformDataToString(field.fields as any, fieldOptions)),\n }}\n />\n </Flex>\n <Box css={{ marginBlock: \"$4\", height: \"1px\", background: \"$neutral100\" }} />\n </>\n ) : null}\n {((field as any)?.triggerDetails?.variables as EventField[])?.length ? (\n <SingleMappingChipWrapper\n heading={\n ((field as any)?.triggerDetails?.variables as EventField[])?.length > 1\n ? DASHBOARD_UI_STRINGS.PASSING_VARIABLES\n : DASHBOARD_UI_STRINGS.PASSING_VARIABLE\n }\n fields={(field as any).triggerDetails.variables}\n backgroundColor=\"$positive100\"\n />\n ) : null}\n <Flex flexDirection=\"column\" gap=\"$6\" css={{ paddingBlock: \"$8\" }}>\n <Text size=\"sm\" weight=\"bold\">\n {DASHBOARD_UI_STRINGS.SEND_SURVEY}\n </Text>\n <Flex alignItems=\"center\">\n {(field as any)?.triggerDetails?.shareType?.value ? (\n <EventComponent\n heading={DASHBOARD_UI_STRINGS.SHARE_TYPE}\n description={(field as any)?.triggerDetails?.shareType?.label}\n />\n ) : null}\n {(field as any)?.triggerDetails?.shareRecipient?.value ? (\n <EventComponent\n heading={DASHBOARD_UI_STRINGS.RECIPIENT}\n hasBorder\n description={(field as any)?.triggerDetails?.shareRecipient?.label}\n />\n ) : null}\n {(field as any)?.triggerDetails?.shareChannel?.value ? (\n <EventComponent\n hasBorder\n heading={DASHBOARD_UI_STRINGS.SHARE_CHANNEL}\n description={(field as any)?.triggerDetails?.shareChannel?.label}\n />\n ) : null}\n </Flex>\n </Flex>\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={handleEdit}\n >\n {DASHBOARD_UI_STRINGS.EDIT_TRIGGER}\n </Button>\n </Box>\n )}\n </Flex>\n {isDeleteModalOpen && (\n <ConfirmationModal\n name={DASHBOARD_UI_STRINGS.DELETE_TRIGGER_TITLE}\n description={DASHBOARD_UI_STRINGS.DELETE_TRIGGER_MESSAGE}\n onConfirm={() => deleteFieldHandler?.(field.id)}\n onCancel={() => setIsDeleteModalOpen(false)}\n />\n )}\n </>\n );\n};\n\n"],"names":["React"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { jsx, jsxs } from 'react/jsx-runtime';
2
- import { keyframes, styled } from '../stitches.config.js';
2
+ import { styled, keyframes } from '../stitches.config.js';
3
3
  import { Box } from '../box/box.js';
4
4
  import { prefixClassName } from '../utils/prefix-class-name.js';
5
5
 
@@ -61,7 +61,7 @@ const EventSetup = ({
61
61
  );
62
62
  }
63
63
  }, [actions == null ? void 0 : actions.value, objects == null ? void 0 : objects.value, actions, objects, eventFields]);
64
- useMemo(
64
+ const isContinueDisabled = useMemo(
65
65
  () => isEventSetupDisabled(actions, objects, eventFields),
66
66
  [actions, objects, eventFields]
67
67
  );
@@ -209,6 +209,7 @@ const EventSetup = ({
209
209
  size: "lg",
210
210
  rightIcon: /* @__PURE__ */ React__default.createElement(ChevronRightIcon, null),
211
211
  css: { marginTop: "$16" },
212
+ disabled: isContinueDisabled || forceDisableEventSetupCTA,
212
213
  onClick: handleContinueClick
213
214
  },
214
215
  TRIGGERS_UI_STRINGS.CONTINUE
@@ -1 +1 @@
1
- {"version":3,"file":"EventSetup.js","sources":["../../../../src/triggers/components/EventSetup.tsx"],"sourcesContent":["/* ----- Imports ----- */\n\nimport React, { useEffect, useCallback, useMemo } from \"react\";\nimport {\n Box,\n Button,\n Flex,\n FormLabel,\n Heading,\n Select,\n FormHelperText,\n Text,\n} from \"@sparrowengg/twigs-react\";\nimport { ChevronRightIcon } from \"@sparrowengg/twigs-react-icons\";\nimport CustomPill from \"../../commons/components/custom-pill\";\nimport { EventSetupProps } from \"../types\";\nimport { TRIGGERS_UI_STRINGS } from \"../constants\";\nimport { isEventSetupDisabled } from \"../utils\";\nimport { sanitizeHTML } from \"../../commons/utils\";\n\n/* ----- Helper Components ----- */\n\n/**\n * Custom multi-value component for Select\n *\n * @param {any} props - Component props\n * @returns {JSX.Element} Rendered custom pill\n */\nconst CustomMultiValue: React.FC<any> = (props) => {\n return (\n <CustomPill\n label={props.data.label}\n onCloseHandler={() => props.removeProps.onClick()}\n variant=\"default\"\n radius=\"md\"\n />\n );\n};\n\n/* ----- Main Component ----- */\n\n/**\n * EventSetup component for configuring trigger event details\n *\n * @param {EventSetupProps} props - Component props\n * @returns {JSX.Element} Rendered EventSetup component\n */\nconst EventSetup: React.FC<EventSetupProps> = ({\n forceDisableEventSetupCTA,\n eventFields,\n accounts,\n objects,\n actions,\n surveyDetails,\n navigateTriggerPage,\n}) => {\n /* ----- Effects ----- */\n\n useEffect(() => {\n if (\n actions?.options?.filter((action: any) =>\n eventFields?.action?.includes(action?.value)\n )?.length\n ) {\n actions?.onChangeHandler(\n Object.keys(actions?.value || {})?.length\n ? actions?.value\n : actions?.options\n ?.filter((action: any) =>\n eventFields?.action?.includes(action?.value)\n )\n ?.map((action: any) => action)\n );\n }\n if (\n objects?.options?.find(\n (object: any) => object?.value === eventFields?.object\n )\n ) {\n objects?.onChangeHandler(\n objects?.value ??\n objects?.options?.find(\n (object: any) => object?.value === eventFields?.object\n )\n );\n }\n }, [actions?.value, objects?.value, actions, objects, eventFields]);\n\n /* ----- Constants ----- */\n\n const isContinueDisabled = useMemo(\n () => isEventSetupDisabled(actions, objects, eventFields),\n [actions, objects, eventFields]\n );\n\n const accountValue = useMemo(\n () =>\n accounts?.options?.find(\n (account: any) => account?.value === eventFields?.account\n ) ?? accounts?.value,\n [accounts?.options, accounts?.value, eventFields?.account]\n );\n\n const objectValue = useMemo(\n () =>\n objects?.value ??\n objects?.options?.find(\n (object: any) => object.value === eventFields?.object\n ),\n [objects?.value, objects?.options, eventFields?.object]\n );\n\n const actionValue = useMemo(\n () =>\n Object.keys(actions?.value || {})?.length\n ? actions.value\n : actions?.options\n .filter((action: any) =>\n eventFields?.action?.includes(action?.value)\n )\n ?.map((action: any) => action),\n [actions?.value, actions?.options, eventFields?.action]\n );\n\n /* ----- Event Handlers ----- */\n\n const handleAccountChange = useCallback(\n (value: any) => {\n accounts.onChangeHandler(value);\n },\n [accounts]\n );\n\n const handleObjectChange = useCallback(\n (value: any) => {\n objects.onChangeHandler(value);\n },\n [objects]\n );\n\n const handleActionChange = useCallback(\n (value: any) => {\n actions.onChangeHandler(value);\n },\n [actions]\n );\n\n const handleContinueClick = useCallback(() => {\n navigateTriggerPage(true);\n }, [navigateTriggerPage]);\n\n /* ----- Render ----- */\n\n return (\n <Flex\n css={{ paddingTop: \"$40\" }}\n alignItems=\"center\"\n justifyContent=\"center\"\n >\n <Box css={{ width: 488 }}>\n <Heading size=\"h5\">{TRIGGERS_UI_STRINGS.ACCOUNT_DETAILS}</Heading>\n <Flex gap=\"$2\" css={{ marginTop: \"$4\" }}>\n <Text size=\"sm\" css={{ color: \"$neutral500\" }}>\n {TRIGGERS_UI_STRINGS.SURVEY_NAME_LABEL}\n </Text>\n <Text size=\"sm\" weight={\"medium\"} css={{ color: \"$neutral800\" }}>\n {surveyDetails.surveyName}\n </Text>\n </Flex>\n <Flex flexDirection=\"column\" gap=\"$8\" css={{ marginTop: \"$16\" }}>\n {accounts?.hasAccounts && (\n <Flex gap=\"$2\" flexDirection=\"column\">\n <FormLabel size=\"xs\" css={{ fontWeight: \"$5\" }}>\n {TRIGGERS_UI_STRINGS.CHOOSE_ACCOUNT}\n </FormLabel>\n <Select\n value={accountValue}\n options={accounts.options}\n isMulti={accounts?.isMulti}\n placeholder={TRIGGERS_UI_STRINGS.PLACEHOLDER_EMPTY}\n onChange={handleAccountChange}\n size=\"lg\"\n />\n <FormHelperText\n dangerouslySetInnerHTML={{\n __html: sanitizeHTML(accounts?.helperText ?? \"\"),\n }}\n size=\"xs\"\n css={{\n color: \"$neutral500\",\n a: {\n color: \"$primary600\",\n },\n }}\n />\n </Flex>\n )}\n {objects?.hasObjects && (\n <Flex gap=\"$2\" flexDirection=\"column\">\n <FormLabel size=\"xs\" css={{ fontWeight: \"$5\" }}>\n {TRIGGERS_UI_STRINGS.CHOOSE_OBJECT}\n </FormLabel>\n <Select\n options={objects.options}\n value={objectValue}\n isMulti={objects?.isMulti}\n placeholder={TRIGGERS_UI_STRINGS.PLACEHOLDER_EMPTY}\n onChange={handleObjectChange}\n size=\"lg\"\n />\n <FormHelperText\n dangerouslySetInnerHTML={{\n __html: sanitizeHTML(objects?.helperText ?? \"\"),\n }}\n size=\"xs\"\n css={{\n color: \"$neutral500\",\n a: {\n color: \"$primary600\",\n },\n }}\n />\n </Flex>\n )}\n {actions?.hasActions && (\n <Flex gap=\"$2\" flexDirection=\"column\">\n <FormLabel size=\"xs\" css={{ fontWeight: \"$5\" }}>\n {TRIGGERS_UI_STRINGS.CHOOSE_ACTION}\n </FormLabel>\n <Select\n size=\"lg\"\n options={actions.options}\n value={actionValue}\n isMulti={actions?.isMulti}\n placeholder={TRIGGERS_UI_STRINGS.PLACEHOLDER_EMPTY}\n css={{\n \".twigs-select__value-container--is-multi\": {\n gap: \"$2\",\n },\n }}\n components={{\n MultiValue: CustomMultiValue,\n }}\n onChange={handleActionChange}\n />\n <FormHelperText\n dangerouslySetInnerHTML={{\n __html: sanitizeHTML(actions?.helperText ?? \"\"),\n }}\n size=\"xs\"\n css={{\n color: \"$neutral500\",\n a: {\n color: \"$primary600\",\n },\n }}\n />\n </Flex>\n )}\n </Flex>\n <Button\n size=\"lg\"\n rightIcon={<ChevronRightIcon />}\n css={{ marginTop: \"$16\" }}\n // disabled={isContinueDisabled || forceDisableEventSetupCTA}\n onClick={handleContinueClick}\n >\n {TRIGGERS_UI_STRINGS.CONTINUE}\n </Button>\n </Box>\n </Flex>\n );\n};\n\nexport default EventSetup;\n\n"],"names":["React","_a","_b","_c"],"mappings":"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"}
1
+ {"version":3,"file":"EventSetup.js","sources":["../../../../src/triggers/components/EventSetup.tsx"],"sourcesContent":["/* ----- Imports ----- */\n\nimport React, { useEffect, useCallback, useMemo } from \"react\";\nimport {\n Box,\n Button,\n Flex,\n FormLabel,\n Heading,\n Select,\n FormHelperText,\n Text,\n} from \"@sparrowengg/twigs-react\";\nimport { ChevronRightIcon } from \"@sparrowengg/twigs-react-icons\";\nimport CustomPill from \"../../commons/components/custom-pill\";\nimport { EventSetupProps } from \"../types\";\nimport { TRIGGERS_UI_STRINGS } from \"../constants\";\nimport { isEventSetupDisabled } from \"../utils\";\nimport { sanitizeHTML } from \"../../commons/utils\";\n\n/* ----- Helper Components ----- */\n\n/**\n * Custom multi-value component for Select\n *\n * @param {any} props - Component props\n * @returns {JSX.Element} Rendered custom pill\n */\nconst CustomMultiValue: React.FC<any> = (props) => {\n return (\n <CustomPill\n label={props.data.label}\n onCloseHandler={() => props.removeProps.onClick()}\n variant=\"default\"\n radius=\"md\"\n />\n );\n};\n\n/* ----- Main Component ----- */\n\n/**\n * EventSetup component for configuring trigger event details\n *\n * @param {EventSetupProps} props - Component props\n * @returns {JSX.Element} Rendered EventSetup component\n */\nconst EventSetup: React.FC<EventSetupProps> = ({\n forceDisableEventSetupCTA,\n eventFields,\n accounts,\n objects,\n actions,\n surveyDetails,\n navigateTriggerPage,\n}) => {\n /* ----- Effects ----- */\n\n useEffect(() => {\n if (\n actions?.options?.filter((action: any) =>\n eventFields?.action?.includes(action?.value)\n )?.length\n ) {\n actions?.onChangeHandler(\n Object.keys(actions?.value || {})?.length\n ? actions?.value\n : actions?.options\n ?.filter((action: any) =>\n eventFields?.action?.includes(action?.value)\n )\n ?.map((action: any) => action)\n );\n }\n if (\n objects?.options?.find(\n (object: any) => object?.value === eventFields?.object\n )\n ) {\n objects?.onChangeHandler(\n objects?.value ??\n objects?.options?.find(\n (object: any) => object?.value === eventFields?.object\n )\n );\n }\n }, [actions?.value, objects?.value, actions, objects, eventFields]);\n\n /* ----- Constants ----- */\n\n const isContinueDisabled = useMemo(\n () => isEventSetupDisabled(actions, objects, eventFields),\n [actions, objects, eventFields]\n );\n\n const accountValue = useMemo(\n () =>\n accounts?.options?.find(\n (account: any) => account?.value === eventFields?.account\n ) ?? accounts?.value,\n [accounts?.options, accounts?.value, eventFields?.account]\n );\n\n const objectValue = useMemo(\n () =>\n objects?.value ??\n objects?.options?.find(\n (object: any) => object.value === eventFields?.object\n ),\n [objects?.value, objects?.options, eventFields?.object]\n );\n\n const actionValue = useMemo(\n () =>\n Object.keys(actions?.value || {})?.length\n ? actions.value\n : actions?.options\n .filter((action: any) =>\n eventFields?.action?.includes(action?.value)\n )\n ?.map((action: any) => action),\n [actions?.value, actions?.options, eventFields?.action]\n );\n\n /* ----- Event Handlers ----- */\n\n const handleAccountChange = useCallback(\n (value: any) => {\n accounts.onChangeHandler(value);\n },\n [accounts]\n );\n\n const handleObjectChange = useCallback(\n (value: any) => {\n objects.onChangeHandler(value);\n },\n [objects]\n );\n\n const handleActionChange = useCallback(\n (value: any) => {\n actions.onChangeHandler(value);\n },\n [actions]\n );\n\n const handleContinueClick = useCallback(() => {\n navigateTriggerPage(true);\n }, [navigateTriggerPage]);\n\n /* ----- Render ----- */\n\n return (\n <Flex\n css={{ paddingTop: \"$40\" }}\n alignItems=\"center\"\n justifyContent=\"center\"\n >\n <Box css={{ width: 488 }}>\n <Heading size=\"h5\">{TRIGGERS_UI_STRINGS.ACCOUNT_DETAILS}</Heading>\n <Flex gap=\"$2\" css={{ marginTop: \"$4\" }}>\n <Text size=\"sm\" css={{ color: \"$neutral500\" }}>\n {TRIGGERS_UI_STRINGS.SURVEY_NAME_LABEL}\n </Text>\n <Text size=\"sm\" weight={\"medium\"} css={{ color: \"$neutral800\" }}>\n {surveyDetails.surveyName}\n </Text>\n </Flex>\n <Flex flexDirection=\"column\" gap=\"$8\" css={{ marginTop: \"$16\" }}>\n {accounts?.hasAccounts && (\n <Flex gap=\"$2\" flexDirection=\"column\">\n <FormLabel size=\"xs\" css={{ fontWeight: \"$5\" }}>\n {TRIGGERS_UI_STRINGS.CHOOSE_ACCOUNT}\n </FormLabel>\n <Select\n value={accountValue}\n options={accounts.options}\n isMulti={accounts?.isMulti}\n placeholder={TRIGGERS_UI_STRINGS.PLACEHOLDER_EMPTY}\n onChange={handleAccountChange}\n size=\"lg\"\n />\n <FormHelperText\n dangerouslySetInnerHTML={{\n __html: sanitizeHTML(accounts?.helperText ?? \"\"),\n }}\n size=\"xs\"\n css={{\n color: \"$neutral500\",\n a: {\n color: \"$primary600\",\n },\n }}\n />\n </Flex>\n )}\n {objects?.hasObjects && (\n <Flex gap=\"$2\" flexDirection=\"column\">\n <FormLabel size=\"xs\" css={{ fontWeight: \"$5\" }}>\n {TRIGGERS_UI_STRINGS.CHOOSE_OBJECT}\n </FormLabel>\n <Select\n options={objects.options}\n value={objectValue}\n isMulti={objects?.isMulti}\n placeholder={TRIGGERS_UI_STRINGS.PLACEHOLDER_EMPTY}\n onChange={handleObjectChange}\n size=\"lg\"\n />\n <FormHelperText\n dangerouslySetInnerHTML={{\n __html: sanitizeHTML(objects?.helperText ?? \"\"),\n }}\n size=\"xs\"\n css={{\n color: \"$neutral500\",\n a: {\n color: \"$primary600\",\n },\n }}\n />\n </Flex>\n )}\n {actions?.hasActions && (\n <Flex gap=\"$2\" flexDirection=\"column\">\n <FormLabel size=\"xs\" css={{ fontWeight: \"$5\" }}>\n {TRIGGERS_UI_STRINGS.CHOOSE_ACTION}\n </FormLabel>\n <Select\n size=\"lg\"\n options={actions.options}\n value={actionValue}\n isMulti={actions?.isMulti}\n placeholder={TRIGGERS_UI_STRINGS.PLACEHOLDER_EMPTY}\n css={{\n \".twigs-select__value-container--is-multi\": {\n gap: \"$2\",\n },\n }}\n components={{\n MultiValue: CustomMultiValue,\n }}\n onChange={handleActionChange}\n />\n <FormHelperText\n dangerouslySetInnerHTML={{\n __html: sanitizeHTML(actions?.helperText ?? \"\"),\n }}\n size=\"xs\"\n css={{\n color: \"$neutral500\",\n a: {\n color: \"$primary600\",\n },\n }}\n />\n </Flex>\n )}\n </Flex>\n <Button\n size=\"lg\"\n rightIcon={<ChevronRightIcon />}\n css={{ marginTop: \"$16\" }}\n disabled={isContinueDisabled || forceDisableEventSetupCTA}\n onClick={handleContinueClick}\n >\n {TRIGGERS_UI_STRINGS.CONTINUE}\n </Button>\n </Box>\n </Flex>\n );\n};\n\nexport default EventSetup;\n\n"],"names":["React","_a","_b","_c"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import React__default, { useMemo, useCallback } from 'react';
1
+ import React__default, { useMemo, useState, useEffect, useCallback } from 'react';
2
2
  import { topLevelCondition } from '../constants/index.js';
3
3
  import { Filter } from './filter/filter.js';
4
4
  import '../../node_modules/dayjs/dayjs.min.js';
@@ -7,7 +7,7 @@ import { useTriggerState } from '../hooks/use-trigger-state.js';
7
7
  import { useFilterManagement } from '../hooks/use-filter-management.js';
8
8
  import { useChannelData } from '../hooks/use-channel-data.js';
9
9
  import { CustomMultiValue, CustomSingleValue, CustomShareOption, CustomShareChannelSingleValue, CustomShareChannelOption } from './custom-share-components.js';
10
- import { isEmpty } from '../utils/validation.utils.js';
10
+ import { hasFiltersWithValues, isEmpty } from '../utils/validation.utils.js';
11
11
  import { Flex } from '../../node_modules/@sparrowengg/twigs-react/dist/es/flex/flex.js';
12
12
  import { Box } from '../../node_modules/@sparrowengg/twigs-react/dist/es/box/box.js';
13
13
  import { Heading } from '../../node_modules/@sparrowengg/twigs-react/dist/es/heading/heading.js';
@@ -53,7 +53,7 @@ const Trigger = ({
53
53
  variableOptions,
54
54
  contactUniqueConstraint
55
55
  }) => {
56
- var _a, _b, _c, _d, _e, _f;
56
+ var _a, _b, _c, _d, _e, _f, _g;
57
57
  const { isEditing, setIsEditing } = useTriggerState();
58
58
  const {
59
59
  addFilterCondition,
@@ -72,6 +72,23 @@ const Trigger = ({
72
72
  surveyId: surveyDetails == null ? void 0 : surveyDetails.surveyId,
73
73
  shareChannelOptions
74
74
  });
75
+ const hasFiltersWithValues$1 = useMemo(
76
+ () => hasFiltersWithValues(fields),
77
+ [fields]
78
+ );
79
+ const [passAndSendSectionsUnlocked, setPassAndSendSectionsUnlocked] = useState(false);
80
+ useEffect(() => {
81
+ if (hasFiltersWithValues$1) {
82
+ setPassAndSendSectionsUnlocked(true);
83
+ }
84
+ }, [hasFiltersWithValues$1]);
85
+ useEffect(() => {
86
+ var _a2;
87
+ if (!((_a2 = fields == null ? void 0 : fields.filters) == null ? void 0 : _a2.length)) {
88
+ setPassAndSendSectionsUnlocked(false);
89
+ }
90
+ }, [(_a = fields == null ? void 0 : fields.filters) == null ? void 0 : _a.length]);
91
+ const showPassAndSendSections = passAndSendSectionsUnlocked || hasFiltersWithValues$1;
75
92
  const selectedCondition = useMemo(
76
93
  () => {
77
94
  var _a2;
@@ -81,15 +98,6 @@ const Trigger = ({
81
98
  },
82
99
  [fields.condition]
83
100
  );
84
- const hasFiltersWithValues = useMemo(
85
- () => fields.filters.some(
86
- (filter) => {
87
- var _a2;
88
- return (_a2 = filter == null ? void 0 : filter.filter) == null ? void 0 : _a2.some((currentFilter) => !!(currentFilter == null ? void 0 : currentFilter.value));
89
- }
90
- ),
91
- [fields.filters]
92
- );
93
101
  const filteredShareRecipientOptions = useMemo(
94
102
  () => shareRecipientOptions == null ? void 0 : shareRecipientOptions.filter(
95
103
  (option) => {
@@ -97,7 +105,7 @@ const Trigger = ({
97
105
  return (option == null ? void 0 : option.type) === ((_a2 = triggerDetails.shareType) == null ? void 0 : _a2.value);
98
106
  }
99
107
  ),
100
- [shareRecipientOptions, (_a = triggerDetails.shareType) == null ? void 0 : _a.value]
108
+ [shareRecipientOptions, (_b = triggerDetails.shareType) == null ? void 0 : _b.value]
101
109
  );
102
110
  const filteredShareChannelOptions = useMemo(() => {
103
111
  var _a2, _b2;
@@ -119,7 +127,7 @@ const Trigger = ({
119
127
  ];
120
128
  }
121
129
  return [];
122
- }, [channels, (_b = triggerDetails == null ? void 0 : triggerDetails.shareType) == null ? void 0 : _b.value]);
130
+ }, [channels, (_c = triggerDetails == null ? void 0 : triggerDetails.shareType) == null ? void 0 : _c.value]);
123
131
  const setTriggerFields = useCallback(
124
132
  (property, value) => {
125
133
  setTriggerDetails((prev) => __spreadProps(__spreadValues({}, prev), {
@@ -267,9 +275,9 @@ const Trigger = ({
267
275
  {
268
276
  flexDirection: "column",
269
277
  gap: "$12",
270
- css: { marginTop: ((_c = fields == null ? void 0 : fields.filters) == null ? void 0 : _c.length) ? "$12" : 0 }
278
+ css: { marginTop: ((_d = fields == null ? void 0 : fields.filters) == null ? void 0 : _d.length) ? "$12" : 0 }
271
279
  },
272
- (_d = fields == null ? void 0 : fields.filters) == null ? void 0 : _d.map((filters, index) => /* @__PURE__ */ React__default.createElement(
280
+ (_e = fields == null ? void 0 : fields.filters) == null ? void 0 : _e.map((filters, index) => /* @__PURE__ */ React__default.createElement(
273
281
  Filter,
274
282
  {
275
283
  key: filters.id,
@@ -298,7 +306,7 @@ const Trigger = ({
298
306
  onClick: handleAddConditionClick
299
307
  },
300
308
  "Add Condition"
301
- ), hasFiltersWithValues ? /* @__PURE__ */ React__default.createElement(Flex, { flexDirection: "column", gap: "$12", css: { marginTop: "$40" } }, /* @__PURE__ */ React__default.createElement(Heading, { size: "h5" }, "Pass Variable to Survey"), /* @__PURE__ */ React__default.createElement(Flex, { gap: "$2", flexDirection: "column" }, /* @__PURE__ */ React__default.createElement(FormLabel, { size: "xs", css: { fontWeight: "$5" } }, "Choose Fields"), /* @__PURE__ */ React__default.createElement(
309
+ ), showPassAndSendSections ? /* @__PURE__ */ React__default.createElement(Flex, { flexDirection: "column", gap: "$12", css: { marginTop: "$40" } }, /* @__PURE__ */ React__default.createElement(Heading, { size: "h5" }, "Pass Variable to Survey"), /* @__PURE__ */ React__default.createElement(Flex, { gap: "$2", flexDirection: "column" }, /* @__PURE__ */ React__default.createElement(FormLabel, { size: "xs", css: { fontWeight: "$5" } }, "Choose Fields"), /* @__PURE__ */ React__default.createElement(
302
310
  Select,
303
311
  {
304
312
  placeholder: "",
@@ -352,7 +360,7 @@ const Trigger = ({
352
360
  },
353
361
  options: variableOptions
354
362
  }
355
- )) : null) : null, hasFiltersWithValues ? /* @__PURE__ */ React__default.createElement(Flex, { flexDirection: "column", gap: "$12", css: { marginBlock: "$40" } }, /* @__PURE__ */ React__default.createElement(Heading, { size: "h5" }, "Send Survey"), /* @__PURE__ */ React__default.createElement(Flex, { flexDirection: "column", gap: "$8" }, /* @__PURE__ */ React__default.createElement(Flex, { gap: "$2", flexDirection: "column" }, /* @__PURE__ */ React__default.createElement(FormLabel, { size: "xs", css: { fontWeight: "$5" } }, "Choose Share Type"), /* @__PURE__ */ React__default.createElement(
363
+ )) : null) : null, showPassAndSendSections ? /* @__PURE__ */ React__default.createElement(Flex, { flexDirection: "column", gap: "$12", css: { marginBlock: "$40" } }, /* @__PURE__ */ React__default.createElement(Heading, { size: "h5" }, "Send Survey"), /* @__PURE__ */ React__default.createElement(Flex, { flexDirection: "column", gap: "$8" }, /* @__PURE__ */ React__default.createElement(Flex, { gap: "$2", flexDirection: "column" }, /* @__PURE__ */ React__default.createElement(FormLabel, { size: "xs", css: { fontWeight: "$5" } }, "Choose Share Type"), /* @__PURE__ */ React__default.createElement(
356
364
  Select,
357
365
  {
358
366
  placeholder: "",
@@ -393,7 +401,7 @@ const Trigger = ({
393
401
  placeholder: "",
394
402
  size: "lg",
395
403
  onChange: handleShareRecipientChange,
396
- isDisabled: !((_e = triggerDetails == null ? void 0 : triggerDetails.shareType) == null ? void 0 : _e.value),
404
+ isDisabled: !((_f = triggerDetails == null ? void 0 : triggerDetails.shareType) == null ? void 0 : _f.value),
397
405
  value: triggerDetails == null ? void 0 : triggerDetails.shareRecipient,
398
406
  options: filteredShareRecipientOptions
399
407
  }
@@ -412,7 +420,7 @@ const Trigger = ({
412
420
  alignItems: "center"
413
421
  })
414
422
  },
415
- isDisabled: !((_f = triggerDetails == null ? void 0 : triggerDetails.shareType) == null ? void 0 : _f.value),
423
+ isDisabled: !((_g = triggerDetails == null ? void 0 : triggerDetails.shareType) == null ? void 0 : _g.value),
416
424
  value: triggerDetails == null ? void 0 : triggerDetails.shareChannel,
417
425
  onChange: handleShareChannelChange,
418
426
  options: filteredShareChannelOptions