@bigbinary/neeto-email-delivery-frontend 1.0.16 → 1.0.18

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.
@@ -53,12 +53,15 @@
53
53
  "emailLabel": "Email address",
54
54
  "emailPlaceholder": "notifications@example.com",
55
55
  "emailHelp": "This email will be used as the sender address for outgoing emails. We'll automatically verify the domain ({{domain}}).",
56
+ "displayNameHelp": "This will be used as the display name for outgoing emails.",
56
57
  "setupEmail": "Setup email",
58
+ "displayNameLabel": "Display name",
57
59
  "note": "Note: You'll need access to your domain's DNS settings to complete the verification process.",
58
60
  "validation": {
59
61
  "emailRequired": "Please enter an email address",
60
62
  "emailInvalid": "Please enter a valid email address",
61
- "setupFailed": "Failed to setup domain. Please try again."
63
+ "setupFailed": "Failed to setup domain. Please try again.",
64
+ "requiredField": "{{field}} is required"
62
65
  }
63
66
  },
64
67
  "verify": {
@@ -24,7 +24,7 @@ import { t } from 'i18next';
24
24
  import * as yup from 'yup';
25
25
  import { jsxs, jsx } from 'react/jsx-runtime';
26
26
  import { useQueryClient } from '@tanstack/react-query';
27
- import { u as useSparkpostDomain } from './useSparkpostDomain-CuX-Gl5a.js';
27
+ import { u as useSparkpostDomain } from './useSparkpostDomain-De-Fz3ek.js';
28
28
  import Button from '@bigbinary/neetoui/Button';
29
29
  import Tag from '@bigbinary/neetoui/Tag';
30
30
  import '@babel/runtime/helpers/defineProperty';
@@ -76,7 +76,8 @@ var SMTP_ACCOUNT_VALIDATION_SCHEMA = yup.object().shape({
76
76
  var SmtpSetup = function SmtpSetup(_ref) {
77
77
  var ownerId = _ref.ownerId,
78
78
  onDone = _ref.onDone,
79
- onCancel = _ref.onCancel;
79
+ onCancel = _ref.onCancel,
80
+ isOpen = _ref.isOpen;
80
81
  var _useTranslation = useTranslation(),
81
82
  t = _useTranslation.t;
82
83
  var _useCreateSmtp = useCreateSmtp({
@@ -92,7 +93,7 @@ var SmtpSetup = function SmtpSetup(_ref) {
92
93
  });
93
94
  };
94
95
  return /*#__PURE__*/jsxs(Pane, {
95
- isOpen: true,
96
+ isOpen: isOpen,
96
97
  size: "lg",
97
98
  onClose: onCancel,
98
99
  children: [/*#__PURE__*/jsx(Pane.Header, {
@@ -542,8 +543,9 @@ var EmailDeliveryScreen = function EmailDeliveryScreen(_ref) {
542
543
  email: outlookEmail
543
544
  })
544
545
  })]
545
- }), isSmtpPaneOpen && /*#__PURE__*/jsx(SmtpSetup, {
546
+ }), /*#__PURE__*/jsx(SmtpSetup, {
546
547
  ownerId: ownerId,
548
+ isOpen: isSmtpPaneOpen,
547
549
  onCancel: handleSmtpPaneClose,
548
550
  onDone: handleSmtpPaneClose
549
551
  })]
@@ -1 +1 @@
1
- {"version":3,"file":"EmailDeliveryScreen.js","sources":["../app/javascript/src/components/Smtp/constants.js","../app/javascript/src/components/Smtp/Setup.jsx","../app/javascript/src/hooks/integrations/useGmail.js","../app/javascript/src/hooks/integrations/useOutlook.js","../app/javascript/src/hooks/integrations/useSmtp.js","../app/javascript/src/components/EmailDeliveryScreen/constants.js","../app/javascript/src/components/EmailDeliveryScreen/IntegrationCard.jsx","../app/javascript/src/components/EmailDeliveryScreen/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const ENCRYPTION_OPTIONS = [\n { label: \"None\", value: \"none\" },\n { label: \"StartTLS\", value: \"starttls\" },\n { label: \"SSL\", value: \"ssl\" },\n];\n\nexport const SMTP_ACCOUNT_INITIAL_VALUES = {\n host: \"\",\n port: 587,\n username: \"\",\n password: \"\",\n email: \"\",\n encryption: \"starttls\",\n displayName: \"\",\n};\n\nexport const SMTP_ACCOUNT_VALIDATION_SCHEMA = yup.object().shape({\n host: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.hostLabel\"),\n })\n ),\n port: yup.number().required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.portLabel\"),\n })\n ),\n username: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.usernameLabel\"),\n })\n ),\n password: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.passwordLabel\"),\n })\n ),\n email: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.emailLabel\"),\n })\n )\n .email(t(\"neetoEmailDelivery.smtp.setup.emailInvalid\")),\n displayName: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.displayNameLabel\"),\n })\n ),\n encryption: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.encryptionLabel\"),\n })\n ),\n});\n","import { Callout, Pane, Typography } from \"neetoui\";\nimport { Form, Input, Radio, ActionBlock } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateSmtp } from \"hooks/reactQuery/integrations/useSmtpIntegrationApi\";\n\nimport {\n SMTP_ACCOUNT_INITIAL_VALUES,\n SMTP_ACCOUNT_VALIDATION_SCHEMA,\n ENCRYPTION_OPTIONS,\n} from \"./constants\";\n\nconst SmtpSetup = ({ ownerId, onDone, onCancel }) => {\n const { t } = useTranslation();\n\n const { isPending: isCreating, mutate: createSmtp } = useCreateSmtp({\n ownerId,\n });\n\n const handleSubmit = values => {\n createSmtp({ smtp_account: values }, { onSuccess: onDone });\n };\n\n return (\n <Pane isOpen size=\"lg\" onClose={onCancel}>\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {t(\"neetoEmailDelivery.smtp.setup.title\")}\n </Typography>\n </Pane.Header>\n <Form\n className=\"w-full\"\n formikProps={{\n initialValues: SMTP_ACCOUNT_INITIAL_VALUES,\n validationSchema: SMTP_ACCOUNT_VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <Pane.Body className=\"space-y-4\">\n <div className=\"flex flex-col gap-6\">\n <Callout style=\"warning\">\n {t(\"neetoEmailDelivery.smtp.setup.note\")}\n </Callout>\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.hostLabel\")}\n name=\"host\"\n />\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.portLabel\")}\n name=\"port\"\n type=\"number\"\n />\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.usernameLabel\")}\n name=\"username\"\n />\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.passwordLabel\")}\n name=\"password\"\n type=\"password\"\n />\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.emailLabel\")}\n name=\"email\"\n type=\"email\"\n />\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.displayNameLabel\")}\n name=\"displayName\"\n />\n <Radio\n label={t(\"neetoEmailDelivery.smtp.setup.encryptionLabel\")}\n name=\"encryption\"\n >\n {ENCRYPTION_OPTIONS.map(option => (\n <Radio.Item\n key={option.value}\n label={option.label}\n value={option.value}\n />\n ))}\n </Radio>\n </div>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onCancel }}\n isSubmitting={isCreating}\n submitButtonProps={{\n label: t(\"neetoEmailDelivery.smtp.setup.saveAndActivate\"),\n }}\n />\n </Pane.Footer>\n </Form>\n </Pane>\n );\n};\n\nexport default SmtpSetup;\n","import { useState } from \"react\";\n\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { useHistory } from \"react-router-dom\";\n\nimport {\n useFetchGmail,\n useDestroyGmail,\n} from \"hooks/reactQuery/integrations/useGmailIntegrationApi\";\nimport { invalidateAllIntegrationQueries } from \"src/utils\";\n\nconst useGmail = ({ ownerId, indexRoute, canManageIntegrations }) => {\n const [isDisconnectAlertOpen, setIsDisconnectAlertOpen] = useState(false);\n\n const history = useHistory();\n\n const queryClient = useQueryClient();\n\n const { isLoading, data = {} } = useFetchGmail(ownerId, {\n enabled: canManageIntegrations,\n });\n\n const { isPending: isDestroying, mutate: destroyIntegration } =\n useDestroyGmail({ ownerId });\n\n const onClose = () => history.replace(indexRoute);\n\n const onDisconnect = () => {\n destroyIntegration(false, {\n onSuccess: () => {\n setIsDisconnectAlertOpen(false);\n invalidateAllIntegrationQueries(queryClient, ownerId);\n history.replace(indexRoute);\n },\n });\n };\n\n return {\n data,\n isLoading,\n isDestroying,\n exists: data?.exists,\n isConnected: data?.connected,\n isDisconnectAlertOpen,\n setIsDisconnectAlertOpen,\n onDisconnect,\n onClose,\n errorMessage: data?.error,\n };\n};\n\nexport default useGmail;\n","import { useState } from \"react\";\n\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { useHistory } from \"react-router-dom\";\n\nimport {\n useFetchOutlook,\n useDestroyOutlook,\n} from \"hooks/reactQuery/integrations/useOutlookIntegrationApi\";\nimport { invalidateAllIntegrationQueries } from \"src/utils\";\n\nconst useOutlook = ({ ownerId, indexRoute, canManageIntegrations }) => {\n const [isDisconnectAlertOpen, setIsDisconnectAlertOpen] = useState(false);\n\n const history = useHistory();\n\n const queryClient = useQueryClient();\n\n const { isLoading, data = {} } = useFetchOutlook(ownerId, {\n enabled: canManageIntegrations,\n });\n\n const { isPending: isDestroying, mutate: destroyIntegration } =\n useDestroyOutlook({ ownerId });\n\n const onClose = () => history.replace(indexRoute);\n\n const onDisconnect = () => {\n destroyIntegration(false, {\n onSuccess: () => {\n setIsDisconnectAlertOpen(false);\n invalidateAllIntegrationQueries(queryClient, ownerId);\n history.replace(indexRoute);\n },\n });\n };\n\n return {\n data,\n isLoading,\n exists: data?.exists,\n status: data?.status,\n shadowAccount: data?.shadowAccount,\n isWaitingForTestEmail: data?.status === \"inactive\" && !data?.connected,\n isDestroying,\n isConnected: data?.connected,\n isDisconnectAlertOpen,\n setIsDisconnectAlertOpen,\n onDisconnect,\n onClose,\n errorMessage: data?.error,\n };\n};\n\nexport default useOutlook;\n","import {\n useFetchSmtp,\n useDestroySmtp,\n} from \"hooks/reactQuery/integrations/useSmtpIntegrationApi\";\n\nconst useSmtp = ({ ownerId, canManageIntegrations }) => {\n const { isLoading, data = {} } = useFetchSmtp(ownerId, {\n enabled: canManageIntegrations,\n });\n\n const { isPending: isDestroying, mutate: onDisconnect } = useDestroySmtp({\n ownerId,\n });\n\n return {\n data,\n isConnected: data?.connected,\n isLoading,\n isDestroying,\n onDisconnect,\n exists: data?.exists,\n };\n};\n\nexport default useSmtp;\n","import { t } from \"i18next\";\n\nexport const ERROR_MESSAGES = {\n gmail_permission_not_given: t(\"neetoEmailDelivery.gmail.permissionNotGiven\"),\n outlook_permission_not_given: t(\n \"neetoEmailDelivery.outlook.permissionNotGiven\"\n ),\n outlook_invalid_client: t(\"neetoEmailDelivery.outlook.invalidClient\"),\n outlook_nil_json_web_token: t(\"neetoEmailDelivery.outlook.nilJsonWebToken\"),\n};\n","import { Button, Tag, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst IntegrationCard = ({\n icon: Icon,\n title,\n description,\n isConnected,\n isDisconnecting,\n onConnect,\n onDisconnect,\n connectButtonText,\n disconnectButtonText = \"neetoEmailDelivery.sparkpost.emailDelivery.disconnect\",\n connectedTagText = \"neetoEmailDelivery.sparkpost.emailDelivery.connected\",\n showDisconnect = false,\n}) => {\n const { t } = useTranslation();\n\n const shouldShowDisconnect = isConnected || showDisconnect;\n\n return (\n <div className=\"neeto-ui-rounded-lg neeto-ui-shadow-xs neeto-ui-border-gray-300 translate flex flex-col gap-y-4 border p-6 no-underline transition-transform duration-300 ease-in-out outline-none hover:-translate-y-1\">\n <div className=\"flex flex-col gap-4\">\n <div className=\"flex items-center gap-3\">\n <Icon className=\"shrink-0\" size={32} />\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex items-center gap-2\">\n <Typography style=\"h4\" weight=\"semibold\">\n {title}\n </Typography>\n {isConnected && <Tag label={t(connectedTagText)} />}\n </div>\n </div>\n </div>\n <Typography style=\"body2\">{description}</Typography>\n {connectButtonText && (\n <div className=\"flex gap-2\">\n {shouldShowDisconnect ? (\n <Button\n data-cy=\"disconnect-button\"\n label={t(disconnectButtonText)}\n loading={isDisconnecting}\n size=\"small\"\n style=\"danger\"\n onClick={onDisconnect}\n />\n ) : (\n <Button\n data-cy=\"connect-button\"\n label={t(connectButtonText)}\n size=\"small\"\n style=\"primary\"\n onClick={onConnect}\n />\n )}\n </div>\n )}\n </div>\n </div>\n );\n};\n\nexport default IntegrationCard;\n","import { useState } from \"react\";\n\nimport { humanize, isPresent } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { MailSend } from \"neetoicons\";\nimport { Gmail as GmailIcon, Outlook as OutlookIcon } from \"neetoicons/misc\";\nimport { Spinner, Callout, Toastr } from \"neetoui\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport {\n GMAIL_OAUTH_CONNECT_URL,\n OUTLOOK_OAUTH_CONNECT_URL,\n} from \"apis/integrations/constants\";\nimport SmtpSetup from \"components/Smtp/Setup\";\nimport useGmail from \"hooks/integrations/useGmail\";\nimport useOutlook from \"hooks/integrations/useOutlook\";\nimport useSmtp from \"hooks/integrations/useSmtp\";\nimport useSparkpostDomain from \"hooks/integrations/useSparkpostDomain\";\n\nimport { ERROR_MESSAGES } from \"./constants\";\nimport IntegrationCard from \"./IntegrationCard\";\n\nconst EmailDeliveryScreen = ({\n indexRoute,\n ownerId,\n ownDomainSetupRoute,\n canManageIntegrations,\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n const [isSmtpPaneOpen, setIsSmtpPaneOpen] = useState(false);\n const { error, errorDescription } = useQueryParams();\n\n if (isPresent(error)) {\n let errorMessage = ERROR_MESSAGES[error];\n if (errorDescription) {\n errorMessage = `${errorMessage} ${errorDescription}`;\n }\n Toastr.error(errorMessage ?? humanize(error));\n\n history.replace(indexRoute);\n }\n\n const gmailIntegration = useGmail({\n ownerId,\n indexRoute,\n canManageIntegrations,\n });\n\n const outlookIntegration = useOutlook({\n ownerId,\n indexRoute,\n canManageIntegrations,\n });\n\n const sparkpostIntegration = useSparkpostDomain({\n ownerId,\n canManageIntegrations,\n });\n\n const smtpIntegration = useSmtp({ ownerId, canManageIntegrations });\n\n const {\n data: gmailData = {},\n isConnected: isGmailConnected,\n isLoading: isGmailLoading,\n isDestroying: isGmailDisconnecting,\n onDisconnect: onGmailDisconnect,\n exists: isGmailExists,\n } = gmailIntegration;\n\n const {\n data: outlookData = {},\n isConnected: isOutlookConnected,\n isLoading: isOutlookLoading,\n isDestroying: isOutlookDisconnecting,\n isWaitingForTestEmail: isOutlookWaitingForTestEmail,\n shadowAccount: isOutlookShadowAccount,\n onDisconnect: onOutlookDisconnect,\n exists: isOutlookExists,\n } = outlookIntegration;\n\n const {\n data: sparkpostData = {},\n isConnected: isSparkpostConnected,\n isLoading: isSparkpostLoading,\n onDisconnect: onSparkpostDisconnect,\n isDestroying: isSparkpostDisconnecting,\n exists: isSparkpostExists,\n } = sparkpostIntegration;\n\n const {\n data: smtpData = {},\n isConnected: isSmtpConnected,\n isLoading: isSmtpLoading,\n isDestroying: isSmtpDisconnecting,\n onDisconnect: onSmtpDisconnect,\n exists: isSmtpExists,\n } = smtpIntegration;\n\n const isLoading =\n isGmailLoading || isOutlookLoading || isSparkpostLoading || isSmtpLoading;\n\n const noneExists =\n !isGmailExists && !isOutlookExists && !isSparkpostExists && !isSmtpExists;\n const showGmail = noneExists || isGmailExists;\n const showOutlook = noneExists || isOutlookExists;\n const showSparkpost = noneExists || isSparkpostExists;\n const showSmtp = noneExists || isSmtpExists;\n\n const handleGmailConnect = () => {\n window.location.href = buildUrl(GMAIL_OAUTH_CONNECT_URL, { ownerId });\n };\n\n const handleOutlookConnect = () => {\n window.location.href = buildUrl(OUTLOOK_OAUTH_CONNECT_URL, { ownerId });\n };\n\n const handleOwnDomainConnect = () => {\n history.push(ownDomainSetupRoute);\n };\n\n const handleSmtpConnect = () => {\n setIsSmtpPaneOpen(true);\n };\n\n const handleSmtpPaneClose = () => {\n setIsSmtpPaneOpen(false);\n };\n\n const gmailEmail = prop(\"email\", gmailData);\n const outlookEmail = prop(\"email\", outlookData);\n const sparkpostEmail = prop(\"email\", sparkpostData);\n const smtpEmail = prop(\"email\", smtpData);\n\n const gmailTitle = t(\"neetoEmailDelivery.gmail.title\");\n const gmailDescription = isGmailConnected\n ? t(\"neetoEmailDelivery.sparkpost.emailDelivery.connectedEmail\", {\n email: gmailEmail,\n })\n : t(\"neetoEmailDelivery.gmail.description\");\n\n const outlookTitle = t(\"neetoEmailDelivery.outlook.title\");\n const outlookDescription = isOutlookConnected\n ? t(\"neetoEmailDelivery.sparkpost.emailDelivery.connectedEmail\", {\n email: outlookEmail,\n })\n : t(\"neetoEmailDelivery.outlook.description\");\n\n const ownDomainTitle = t(\n \"neetoEmailDelivery.sparkpost.emailDelivery.ownDomainTitle\"\n );\n\n const ownDomainDescription = isSparkpostConnected\n ? t(\"neetoEmailDelivery.sparkpost.emailDelivery.connectedEmail\", {\n email: sparkpostEmail,\n })\n : t(\"neetoEmailDelivery.sparkpost.emailDelivery.ownDomainDescription\");\n\n const smtpTitle = t(\"neetoEmailDelivery.smtp.title\");\n const smtpDescription = isSmtpConnected\n ? t(\"neetoEmailDelivery.sparkpost.emailDelivery.connectedEmail\", {\n email: smtpEmail,\n })\n : t(\"neetoEmailDelivery.smtp.description\");\n\n if (isLoading) {\n return (\n <div className=\"flex grow items-center justify-center w-full\">\n <Spinner />\n </div>\n );\n }\n\n const activeMessage =\n (isGmailConnected && t(\"neetoEmailDelivery.gmail.gmailConfigured\")) ||\n (isOutlookConnected && t(\"neetoEmailDelivery.outlook.outlookConfigured\")) ||\n (isSparkpostConnected &&\n t(\"neetoEmailDelivery.sparkpost.ownDomainConfigured\")) ||\n (isSmtpConnected && t(\"neetoEmailDelivery.smtp.smtpConfigured\"));\n\n return (\n <div className=\"min-h-0 w-full grow\">\n <div className=\"@container mx-auto space-y-6\">\n <div className=\"grid grid-cols-1 gap-3 py-1 @lg:grid-cols-2 @lg:gap-6 @3xl:grid-cols-3 @7xl:grid-cols-4\">\n {/* Gmail Option */}\n {showGmail && (\n <IntegrationCard\n connectButtonText=\"neetoEmailDelivery.gmail.connectGmail\"\n description={gmailDescription}\n icon={GmailIcon}\n isConnected={isGmailConnected}\n isDisconnecting={isGmailDisconnecting}\n title={gmailTitle}\n onConnect={handleGmailConnect}\n onDisconnect={onGmailDisconnect}\n />\n )}\n {/* Outlook Option */}\n {showOutlook && (\n <IntegrationCard\n connectButtonText=\"neetoEmailDelivery.outlook.connectOutlook\"\n description={outlookDescription}\n icon={OutlookIcon}\n isConnected={isOutlookConnected}\n isDisconnecting={isOutlookDisconnecting}\n title={outlookTitle}\n showDisconnect={\n isOutlookWaitingForTestEmail || isOutlookShadowAccount\n }\n onConnect={handleOutlookConnect}\n onDisconnect={onOutlookDisconnect}\n />\n )}\n {/* Own Domain (Sparkpost) Option */}\n {showSparkpost && (\n <IntegrationCard\n connectButtonText=\"neetoEmailDelivery.sparkpost.emailDelivery.setupDomain\"\n description={ownDomainDescription}\n icon={MailSend}\n isConnected={isSparkpostConnected}\n isDisconnecting={isSparkpostDisconnecting}\n title={ownDomainTitle}\n onConnect={handleOwnDomainConnect}\n onDisconnect={onSparkpostDisconnect}\n />\n )}\n {/* SMTP Option */}\n {showSmtp && (\n <IntegrationCard\n connectButtonText=\"neetoEmailDelivery.smtp.connectSmtp\"\n description={smtpDescription}\n icon={MailSend}\n isConnected={isSmtpConnected}\n isDisconnecting={isSmtpDisconnecting}\n title={smtpTitle}\n onConnect={handleSmtpConnect}\n onDisconnect={onSmtpDisconnect}\n />\n )}\n </div>\n {activeMessage && <Callout style=\"success\">{activeMessage}</Callout>}\n {isOutlookWaitingForTestEmail && (\n <Callout style=\"warning\">\n {t(\"neetoEmailDelivery.outlook.waitingForTestEmail\", {\n email: outlookEmail,\n })}\n </Callout>\n )}\n {isOutlookShadowAccount && (\n <Callout style=\"warning\">\n {t(\"neetoEmailDelivery.outlook.shadowAccountMessage\", {\n email: outlookEmail,\n })}\n </Callout>\n )}\n </div>\n {isSmtpPaneOpen && (\n <SmtpSetup\n {...{ ownerId }}\n onCancel={handleSmtpPaneClose}\n onDone={handleSmtpPaneClose}\n />\n )}\n </div>\n );\n};\n\nexport default EmailDeliveryScreen;\n"],"names":["ENCRYPTION_OPTIONS","label","value","SMTP_ACCOUNT_INITIAL_VALUES","host","port","username","password","email","encryption","displayName","SMTP_ACCOUNT_VALIDATION_SCHEMA","yup","object","shape","string","trim","required","t","field","number","SmtpSetup","_ref","ownerId","onDone","onCancel","_useTranslation","useTranslation","_useCreateSmtp","useCreateSmtp","isCreating","isPending","createSmtp","mutate","handleSubmit","values","smtp_account","onSuccess","_jsxs","Pane","isOpen","size","onClose","children","_jsx","Header","Typography","style","weight","Form","className","formikProps","initialValues","validationSchema","onSubmit","Body","Callout","Input","name","type","Radio","map","option","Item","Footer","ActionBlock","cancelButtonProps","onClick","isSubmitting","submitButtonProps","useGmail","indexRoute","canManageIntegrations","_useState","useState","_useState2","_slicedToArray","isDisconnectAlertOpen","setIsDisconnectAlertOpen","history","useHistory","queryClient","useQueryClient","_useFetchGmail","useFetchGmail","enabled","isLoading","_useFetchGmail$data","data","_useDestroyGmail","useDestroyGmail","isDestroying","destroyIntegration","replace","onDisconnect","invalidateAllIntegrationQueries","exists","isConnected","connected","errorMessage","error","useOutlook","_useFetchOutlook","useFetchOutlook","_useFetchOutlook$data","_useDestroyOutlook","useDestroyOutlook","status","shadowAccount","isWaitingForTestEmail","useSmtp","_useFetchSmtp","useFetchSmtp","_useFetchSmtp$data","_useDestroySmtp","useDestroySmtp","ERROR_MESSAGES","gmail_permission_not_given","outlook_permission_not_given","outlook_invalid_client","outlook_nil_json_web_token","IntegrationCard","Icon","icon","title","description","isDisconnecting","onConnect","connectButtonText","_ref$disconnectButton","disconnectButtonText","_ref$connectedTagText","connectedTagText","_ref$showDisconnect","showDisconnect","shouldShowDisconnect","Tag","Button","loading","EmailDeliveryScreen","ownDomainSetupRoute","isSmtpPaneOpen","setIsSmtpPaneOpen","_useQueryParams","useQueryParams","errorDescription","isPresent","_errorMessage","concat","Toastr","humanize","gmailIntegration","outlookIntegration","sparkpostIntegration","useSparkpostDomain","smtpIntegration","_gmailIntegration$dat","gmailData","isGmailConnected","isGmailLoading","isGmailDisconnecting","onGmailDisconnect","isGmailExists","_outlookIntegration$d","outlookData","isOutlookConnected","isOutlookLoading","isOutlookDisconnecting","isOutlookWaitingForTestEmail","isOutlookShadowAccount","onOutlookDisconnect","isOutlookExists","_sparkpostIntegration","sparkpostData","isSparkpostConnected","isSparkpostLoading","onSparkpostDisconnect","isSparkpostDisconnecting","isSparkpostExists","_smtpIntegration$data","smtpData","isSmtpConnected","isSmtpLoading","isSmtpDisconnecting","onSmtpDisconnect","isSmtpExists","noneExists","showGmail","showOutlook","showSparkpost","showSmtp","handleGmailConnect","window","location","href","buildUrl","GMAIL_OAUTH_CONNECT_URL","handleOutlookConnect","OUTLOOK_OAUTH_CONNECT_URL","handleOwnDomainConnect","push","handleSmtpConnect","handleSmtpPaneClose","gmailEmail","prop","outlookEmail","sparkpostEmail","smtpEmail","gmailTitle","gmailDescription","outlookTitle","outlookDescription","ownDomainTitle","ownDomainDescription","smtpTitle","smtpDescription","Spinner","activeMessage","GmailIcon","OutlookIcon","MailSend"],"mappings":"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"}
1
+ {"version":3,"file":"EmailDeliveryScreen.js","sources":["../app/javascript/src/components/Smtp/constants.js","../app/javascript/src/components/Smtp/Setup.jsx","../app/javascript/src/hooks/integrations/useGmail.js","../app/javascript/src/hooks/integrations/useOutlook.js","../app/javascript/src/hooks/integrations/useSmtp.js","../app/javascript/src/components/EmailDeliveryScreen/constants.js","../app/javascript/src/components/EmailDeliveryScreen/IntegrationCard.jsx","../app/javascript/src/components/EmailDeliveryScreen/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const ENCRYPTION_OPTIONS = [\n { label: \"None\", value: \"none\" },\n { label: \"StartTLS\", value: \"starttls\" },\n { label: \"SSL\", value: \"ssl\" },\n];\n\nexport const SMTP_ACCOUNT_INITIAL_VALUES = {\n host: \"\",\n port: 587,\n username: \"\",\n password: \"\",\n email: \"\",\n encryption: \"starttls\",\n displayName: \"\",\n};\n\nexport const SMTP_ACCOUNT_VALIDATION_SCHEMA = yup.object().shape({\n host: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.hostLabel\"),\n })\n ),\n port: yup.number().required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.portLabel\"),\n })\n ),\n username: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.usernameLabel\"),\n })\n ),\n password: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.passwordLabel\"),\n })\n ),\n email: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.emailLabel\"),\n })\n )\n .email(t(\"neetoEmailDelivery.smtp.setup.emailInvalid\")),\n displayName: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.displayNameLabel\"),\n })\n ),\n encryption: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.encryptionLabel\"),\n })\n ),\n});\n","import { Callout, Pane, Typography } from \"neetoui\";\nimport { Form, Input, Radio, ActionBlock } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateSmtp } from \"hooks/reactQuery/integrations/useSmtpIntegrationApi\";\n\nimport {\n SMTP_ACCOUNT_INITIAL_VALUES,\n SMTP_ACCOUNT_VALIDATION_SCHEMA,\n ENCRYPTION_OPTIONS,\n} from \"./constants\";\n\nconst SmtpSetup = ({ ownerId, onDone, onCancel, isOpen }) => {\n const { t } = useTranslation();\n\n const { isPending: isCreating, mutate: createSmtp } = useCreateSmtp({\n ownerId,\n });\n\n const handleSubmit = values => {\n createSmtp({ smtp_account: values }, { onSuccess: onDone });\n };\n\n return (\n <Pane {...{ isOpen }} size=\"lg\" onClose={onCancel}>\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {t(\"neetoEmailDelivery.smtp.setup.title\")}\n </Typography>\n </Pane.Header>\n <Form\n className=\"w-full\"\n formikProps={{\n initialValues: SMTP_ACCOUNT_INITIAL_VALUES,\n validationSchema: SMTP_ACCOUNT_VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <Pane.Body className=\"space-y-4\">\n <div className=\"flex flex-col gap-6\">\n <Callout style=\"warning\">\n {t(\"neetoEmailDelivery.smtp.setup.note\")}\n </Callout>\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.hostLabel\")}\n name=\"host\"\n />\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.portLabel\")}\n name=\"port\"\n type=\"number\"\n />\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.usernameLabel\")}\n name=\"username\"\n />\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.passwordLabel\")}\n name=\"password\"\n type=\"password\"\n />\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.emailLabel\")}\n name=\"email\"\n type=\"email\"\n />\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.displayNameLabel\")}\n name=\"displayName\"\n />\n <Radio\n label={t(\"neetoEmailDelivery.smtp.setup.encryptionLabel\")}\n name=\"encryption\"\n >\n {ENCRYPTION_OPTIONS.map(option => (\n <Radio.Item\n key={option.value}\n label={option.label}\n value={option.value}\n />\n ))}\n </Radio>\n </div>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onCancel }}\n isSubmitting={isCreating}\n submitButtonProps={{\n label: t(\"neetoEmailDelivery.smtp.setup.saveAndActivate\"),\n }}\n />\n </Pane.Footer>\n </Form>\n </Pane>\n );\n};\n\nexport default SmtpSetup;\n","import { useState } from \"react\";\n\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { useHistory } from \"react-router-dom\";\n\nimport {\n useFetchGmail,\n useDestroyGmail,\n} from \"hooks/reactQuery/integrations/useGmailIntegrationApi\";\nimport { invalidateAllIntegrationQueries } from \"src/utils\";\n\nconst useGmail = ({ ownerId, indexRoute, canManageIntegrations }) => {\n const [isDisconnectAlertOpen, setIsDisconnectAlertOpen] = useState(false);\n\n const history = useHistory();\n\n const queryClient = useQueryClient();\n\n const { isLoading, data = {} } = useFetchGmail(ownerId, {\n enabled: canManageIntegrations,\n });\n\n const { isPending: isDestroying, mutate: destroyIntegration } =\n useDestroyGmail({ ownerId });\n\n const onClose = () => history.replace(indexRoute);\n\n const onDisconnect = () => {\n destroyIntegration(false, {\n onSuccess: () => {\n setIsDisconnectAlertOpen(false);\n invalidateAllIntegrationQueries(queryClient, ownerId);\n history.replace(indexRoute);\n },\n });\n };\n\n return {\n data,\n isLoading,\n isDestroying,\n exists: data?.exists,\n isConnected: data?.connected,\n isDisconnectAlertOpen,\n setIsDisconnectAlertOpen,\n onDisconnect,\n onClose,\n errorMessage: data?.error,\n };\n};\n\nexport default useGmail;\n","import { useState } from \"react\";\n\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { useHistory } from \"react-router-dom\";\n\nimport {\n useFetchOutlook,\n useDestroyOutlook,\n} from \"hooks/reactQuery/integrations/useOutlookIntegrationApi\";\nimport { invalidateAllIntegrationQueries } from \"src/utils\";\n\nconst useOutlook = ({ ownerId, indexRoute, canManageIntegrations }) => {\n const [isDisconnectAlertOpen, setIsDisconnectAlertOpen] = useState(false);\n\n const history = useHistory();\n\n const queryClient = useQueryClient();\n\n const { isLoading, data = {} } = useFetchOutlook(ownerId, {\n enabled: canManageIntegrations,\n });\n\n const { isPending: isDestroying, mutate: destroyIntegration } =\n useDestroyOutlook({ ownerId });\n\n const onClose = () => history.replace(indexRoute);\n\n const onDisconnect = () => {\n destroyIntegration(false, {\n onSuccess: () => {\n setIsDisconnectAlertOpen(false);\n invalidateAllIntegrationQueries(queryClient, ownerId);\n history.replace(indexRoute);\n },\n });\n };\n\n return {\n data,\n isLoading,\n exists: data?.exists,\n status: data?.status,\n shadowAccount: data?.shadowAccount,\n isWaitingForTestEmail: data?.status === \"inactive\" && !data?.connected,\n isDestroying,\n isConnected: data?.connected,\n isDisconnectAlertOpen,\n setIsDisconnectAlertOpen,\n onDisconnect,\n onClose,\n errorMessage: data?.error,\n };\n};\n\nexport default useOutlook;\n","import {\n useFetchSmtp,\n useDestroySmtp,\n} from \"hooks/reactQuery/integrations/useSmtpIntegrationApi\";\n\nconst useSmtp = ({ ownerId, canManageIntegrations }) => {\n const { isLoading, data = {} } = useFetchSmtp(ownerId, {\n enabled: canManageIntegrations,\n });\n\n const { isPending: isDestroying, mutate: onDisconnect } = useDestroySmtp({\n ownerId,\n });\n\n return {\n data,\n isConnected: data?.connected,\n isLoading,\n isDestroying,\n onDisconnect,\n exists: data?.exists,\n };\n};\n\nexport default useSmtp;\n","import { t } from \"i18next\";\n\nexport const ERROR_MESSAGES = {\n gmail_permission_not_given: t(\"neetoEmailDelivery.gmail.permissionNotGiven\"),\n outlook_permission_not_given: t(\n \"neetoEmailDelivery.outlook.permissionNotGiven\"\n ),\n outlook_invalid_client: t(\"neetoEmailDelivery.outlook.invalidClient\"),\n outlook_nil_json_web_token: t(\"neetoEmailDelivery.outlook.nilJsonWebToken\"),\n};\n","import { Button, Tag, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst IntegrationCard = ({\n icon: Icon,\n title,\n description,\n isConnected,\n isDisconnecting,\n onConnect,\n onDisconnect,\n connectButtonText,\n disconnectButtonText = \"neetoEmailDelivery.sparkpost.emailDelivery.disconnect\",\n connectedTagText = \"neetoEmailDelivery.sparkpost.emailDelivery.connected\",\n showDisconnect = false,\n}) => {\n const { t } = useTranslation();\n\n const shouldShowDisconnect = isConnected || showDisconnect;\n\n return (\n <div className=\"neeto-ui-rounded-lg neeto-ui-shadow-xs neeto-ui-border-gray-300 translate flex flex-col gap-y-4 border p-6 no-underline transition-transform duration-300 ease-in-out outline-none hover:-translate-y-1\">\n <div className=\"flex flex-col gap-4\">\n <div className=\"flex items-center gap-3\">\n <Icon className=\"shrink-0\" size={32} />\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex items-center gap-2\">\n <Typography style=\"h4\" weight=\"semibold\">\n {title}\n </Typography>\n {isConnected && <Tag label={t(connectedTagText)} />}\n </div>\n </div>\n </div>\n <Typography style=\"body2\">{description}</Typography>\n {connectButtonText && (\n <div className=\"flex gap-2\">\n {shouldShowDisconnect ? (\n <Button\n data-cy=\"disconnect-button\"\n label={t(disconnectButtonText)}\n loading={isDisconnecting}\n size=\"small\"\n style=\"danger\"\n onClick={onDisconnect}\n />\n ) : (\n <Button\n data-cy=\"connect-button\"\n label={t(connectButtonText)}\n size=\"small\"\n style=\"primary\"\n onClick={onConnect}\n />\n )}\n </div>\n )}\n </div>\n </div>\n );\n};\n\nexport default IntegrationCard;\n","import { useState } from \"react\";\n\nimport { humanize, isPresent } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { MailSend } from \"neetoicons\";\nimport { Gmail as GmailIcon, Outlook as OutlookIcon } from \"neetoicons/misc\";\nimport { Spinner, Callout, Toastr } from \"neetoui\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport {\n GMAIL_OAUTH_CONNECT_URL,\n OUTLOOK_OAUTH_CONNECT_URL,\n} from \"apis/integrations/constants\";\nimport SmtpSetup from \"components/Smtp/Setup\";\nimport useGmail from \"hooks/integrations/useGmail\";\nimport useOutlook from \"hooks/integrations/useOutlook\";\nimport useSmtp from \"hooks/integrations/useSmtp\";\nimport useSparkpostDomain from \"hooks/integrations/useSparkpostDomain\";\n\nimport { ERROR_MESSAGES } from \"./constants\";\nimport IntegrationCard from \"./IntegrationCard\";\n\nconst EmailDeliveryScreen = ({\n indexRoute,\n ownerId,\n ownDomainSetupRoute,\n canManageIntegrations,\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n const [isSmtpPaneOpen, setIsSmtpPaneOpen] = useState(false);\n const { error, errorDescription } = useQueryParams();\n\n if (isPresent(error)) {\n let errorMessage = ERROR_MESSAGES[error];\n if (errorDescription) {\n errorMessage = `${errorMessage} ${errorDescription}`;\n }\n Toastr.error(errorMessage ?? humanize(error));\n\n history.replace(indexRoute);\n }\n\n const gmailIntegration = useGmail({\n ownerId,\n indexRoute,\n canManageIntegrations,\n });\n\n const outlookIntegration = useOutlook({\n ownerId,\n indexRoute,\n canManageIntegrations,\n });\n\n const sparkpostIntegration = useSparkpostDomain({\n ownerId,\n canManageIntegrations,\n });\n\n const smtpIntegration = useSmtp({ ownerId, canManageIntegrations });\n\n const {\n data: gmailData = {},\n isConnected: isGmailConnected,\n isLoading: isGmailLoading,\n isDestroying: isGmailDisconnecting,\n onDisconnect: onGmailDisconnect,\n exists: isGmailExists,\n } = gmailIntegration;\n\n const {\n data: outlookData = {},\n isConnected: isOutlookConnected,\n isLoading: isOutlookLoading,\n isDestroying: isOutlookDisconnecting,\n isWaitingForTestEmail: isOutlookWaitingForTestEmail,\n shadowAccount: isOutlookShadowAccount,\n onDisconnect: onOutlookDisconnect,\n exists: isOutlookExists,\n } = outlookIntegration;\n\n const {\n data: sparkpostData = {},\n isConnected: isSparkpostConnected,\n isLoading: isSparkpostLoading,\n onDisconnect: onSparkpostDisconnect,\n isDestroying: isSparkpostDisconnecting,\n exists: isSparkpostExists,\n } = sparkpostIntegration;\n\n const {\n data: smtpData = {},\n isConnected: isSmtpConnected,\n isLoading: isSmtpLoading,\n isDestroying: isSmtpDisconnecting,\n onDisconnect: onSmtpDisconnect,\n exists: isSmtpExists,\n } = smtpIntegration;\n\n const isLoading =\n isGmailLoading || isOutlookLoading || isSparkpostLoading || isSmtpLoading;\n\n const noneExists =\n !isGmailExists && !isOutlookExists && !isSparkpostExists && !isSmtpExists;\n const showGmail = noneExists || isGmailExists;\n const showOutlook = noneExists || isOutlookExists;\n const showSparkpost = noneExists || isSparkpostExists;\n const showSmtp = noneExists || isSmtpExists;\n\n const handleGmailConnect = () => {\n window.location.href = buildUrl(GMAIL_OAUTH_CONNECT_URL, { ownerId });\n };\n\n const handleOutlookConnect = () => {\n window.location.href = buildUrl(OUTLOOK_OAUTH_CONNECT_URL, { ownerId });\n };\n\n const handleOwnDomainConnect = () => {\n history.push(ownDomainSetupRoute);\n };\n\n const handleSmtpConnect = () => {\n setIsSmtpPaneOpen(true);\n };\n\n const handleSmtpPaneClose = () => {\n setIsSmtpPaneOpen(false);\n };\n\n const gmailEmail = prop(\"email\", gmailData);\n const outlookEmail = prop(\"email\", outlookData);\n const sparkpostEmail = prop(\"email\", sparkpostData);\n const smtpEmail = prop(\"email\", smtpData);\n\n const gmailTitle = t(\"neetoEmailDelivery.gmail.title\");\n const gmailDescription = isGmailConnected\n ? t(\"neetoEmailDelivery.sparkpost.emailDelivery.connectedEmail\", {\n email: gmailEmail,\n })\n : t(\"neetoEmailDelivery.gmail.description\");\n\n const outlookTitle = t(\"neetoEmailDelivery.outlook.title\");\n const outlookDescription = isOutlookConnected\n ? t(\"neetoEmailDelivery.sparkpost.emailDelivery.connectedEmail\", {\n email: outlookEmail,\n })\n : t(\"neetoEmailDelivery.outlook.description\");\n\n const ownDomainTitle = t(\n \"neetoEmailDelivery.sparkpost.emailDelivery.ownDomainTitle\"\n );\n\n const ownDomainDescription = isSparkpostConnected\n ? t(\"neetoEmailDelivery.sparkpost.emailDelivery.connectedEmail\", {\n email: sparkpostEmail,\n })\n : t(\"neetoEmailDelivery.sparkpost.emailDelivery.ownDomainDescription\");\n\n const smtpTitle = t(\"neetoEmailDelivery.smtp.title\");\n const smtpDescription = isSmtpConnected\n ? t(\"neetoEmailDelivery.sparkpost.emailDelivery.connectedEmail\", {\n email: smtpEmail,\n })\n : t(\"neetoEmailDelivery.smtp.description\");\n\n if (isLoading) {\n return (\n <div className=\"flex grow items-center justify-center w-full\">\n <Spinner />\n </div>\n );\n }\n\n const activeMessage =\n (isGmailConnected && t(\"neetoEmailDelivery.gmail.gmailConfigured\")) ||\n (isOutlookConnected && t(\"neetoEmailDelivery.outlook.outlookConfigured\")) ||\n (isSparkpostConnected &&\n t(\"neetoEmailDelivery.sparkpost.ownDomainConfigured\")) ||\n (isSmtpConnected && t(\"neetoEmailDelivery.smtp.smtpConfigured\"));\n\n return (\n <div className=\"min-h-0 w-full grow\">\n <div className=\"@container mx-auto space-y-6\">\n <div className=\"grid grid-cols-1 gap-3 py-1 @lg:grid-cols-2 @lg:gap-6 @3xl:grid-cols-3 @7xl:grid-cols-4\">\n {/* Gmail Option */}\n {showGmail && (\n <IntegrationCard\n connectButtonText=\"neetoEmailDelivery.gmail.connectGmail\"\n description={gmailDescription}\n icon={GmailIcon}\n isConnected={isGmailConnected}\n isDisconnecting={isGmailDisconnecting}\n title={gmailTitle}\n onConnect={handleGmailConnect}\n onDisconnect={onGmailDisconnect}\n />\n )}\n {/* Outlook Option */}\n {showOutlook && (\n <IntegrationCard\n connectButtonText=\"neetoEmailDelivery.outlook.connectOutlook\"\n description={outlookDescription}\n icon={OutlookIcon}\n isConnected={isOutlookConnected}\n isDisconnecting={isOutlookDisconnecting}\n title={outlookTitle}\n showDisconnect={\n isOutlookWaitingForTestEmail || isOutlookShadowAccount\n }\n onConnect={handleOutlookConnect}\n onDisconnect={onOutlookDisconnect}\n />\n )}\n {/* Own Domain (Sparkpost) Option */}\n {showSparkpost && (\n <IntegrationCard\n connectButtonText=\"neetoEmailDelivery.sparkpost.emailDelivery.setupDomain\"\n description={ownDomainDescription}\n icon={MailSend}\n isConnected={isSparkpostConnected}\n isDisconnecting={isSparkpostDisconnecting}\n title={ownDomainTitle}\n onConnect={handleOwnDomainConnect}\n onDisconnect={onSparkpostDisconnect}\n />\n )}\n {/* SMTP Option */}\n {showSmtp && (\n <IntegrationCard\n connectButtonText=\"neetoEmailDelivery.smtp.connectSmtp\"\n description={smtpDescription}\n icon={MailSend}\n isConnected={isSmtpConnected}\n isDisconnecting={isSmtpDisconnecting}\n title={smtpTitle}\n onConnect={handleSmtpConnect}\n onDisconnect={onSmtpDisconnect}\n />\n )}\n </div>\n {activeMessage && <Callout style=\"success\">{activeMessage}</Callout>}\n {isOutlookWaitingForTestEmail && (\n <Callout style=\"warning\">\n {t(\"neetoEmailDelivery.outlook.waitingForTestEmail\", {\n email: outlookEmail,\n })}\n </Callout>\n )}\n {isOutlookShadowAccount && (\n <Callout style=\"warning\">\n {t(\"neetoEmailDelivery.outlook.shadowAccountMessage\", {\n email: outlookEmail,\n })}\n </Callout>\n )}\n </div>\n <SmtpSetup\n {...{ ownerId }}\n isOpen={isSmtpPaneOpen}\n onCancel={handleSmtpPaneClose}\n onDone={handleSmtpPaneClose}\n />\n </div>\n );\n};\n\nexport default EmailDeliveryScreen;\n"],"names":["ENCRYPTION_OPTIONS","label","value","SMTP_ACCOUNT_INITIAL_VALUES","host","port","username","password","email","encryption","displayName","SMTP_ACCOUNT_VALIDATION_SCHEMA","yup","object","shape","string","trim","required","t","field","number","SmtpSetup","_ref","ownerId","onDone","onCancel","isOpen","_useTranslation","useTranslation","_useCreateSmtp","useCreateSmtp","isCreating","isPending","createSmtp","mutate","handleSubmit","values","smtp_account","onSuccess","_jsxs","Pane","size","onClose","children","_jsx","Header","Typography","style","weight","Form","className","formikProps","initialValues","validationSchema","onSubmit","Body","Callout","Input","name","type","Radio","map","option","Item","Footer","ActionBlock","cancelButtonProps","onClick","isSubmitting","submitButtonProps","useGmail","indexRoute","canManageIntegrations","_useState","useState","_useState2","_slicedToArray","isDisconnectAlertOpen","setIsDisconnectAlertOpen","history","useHistory","queryClient","useQueryClient","_useFetchGmail","useFetchGmail","enabled","isLoading","_useFetchGmail$data","data","_useDestroyGmail","useDestroyGmail","isDestroying","destroyIntegration","replace","onDisconnect","invalidateAllIntegrationQueries","exists","isConnected","connected","errorMessage","error","useOutlook","_useFetchOutlook","useFetchOutlook","_useFetchOutlook$data","_useDestroyOutlook","useDestroyOutlook","status","shadowAccount","isWaitingForTestEmail","useSmtp","_useFetchSmtp","useFetchSmtp","_useFetchSmtp$data","_useDestroySmtp","useDestroySmtp","ERROR_MESSAGES","gmail_permission_not_given","outlook_permission_not_given","outlook_invalid_client","outlook_nil_json_web_token","IntegrationCard","Icon","icon","title","description","isDisconnecting","onConnect","connectButtonText","_ref$disconnectButton","disconnectButtonText","_ref$connectedTagText","connectedTagText","_ref$showDisconnect","showDisconnect","shouldShowDisconnect","Tag","Button","loading","EmailDeliveryScreen","ownDomainSetupRoute","isSmtpPaneOpen","setIsSmtpPaneOpen","_useQueryParams","useQueryParams","errorDescription","isPresent","_errorMessage","concat","Toastr","humanize","gmailIntegration","outlookIntegration","sparkpostIntegration","useSparkpostDomain","smtpIntegration","_gmailIntegration$dat","gmailData","isGmailConnected","isGmailLoading","isGmailDisconnecting","onGmailDisconnect","isGmailExists","_outlookIntegration$d","outlookData","isOutlookConnected","isOutlookLoading","isOutlookDisconnecting","isOutlookWaitingForTestEmail","isOutlookShadowAccount","onOutlookDisconnect","isOutlookExists","_sparkpostIntegration","sparkpostData","isSparkpostConnected","isSparkpostLoading","onSparkpostDisconnect","isSparkpostDisconnecting","isSparkpostExists","_smtpIntegration$data","smtpData","isSmtpConnected","isSmtpLoading","isSmtpDisconnecting","onSmtpDisconnect","isSmtpExists","noneExists","showGmail","showOutlook","showSparkpost","showSmtp","handleGmailConnect","window","location","href","buildUrl","GMAIL_OAUTH_CONNECT_URL","handleOutlookConnect","OUTLOOK_OAUTH_CONNECT_URL","handleOwnDomainConnect","push","handleSmtpConnect","handleSmtpPaneClose","gmailEmail","prop","outlookEmail","sparkpostEmail","smtpEmail","gmailTitle","gmailDescription","outlookTitle","outlookDescription","ownDomainTitle","ownDomainDescription","smtpTitle","smtpDescription","Spinner","activeMessage","GmailIcon","OutlookIcon","MailSend"],"mappings":"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"}
@@ -6,8 +6,8 @@ import ActionBlock from '@bigbinary/neetoui/formik/ActionBlock';
6
6
  import Form from '@bigbinary/neetoui/formik/Form';
7
7
  import { useTranslation } from 'react-i18next';
8
8
  import { useHistory } from 'react-router-dom';
9
- import { P as PageWrapper, a as PageContent, V as VALIDATION_SCHEMA } from './constants-Cvxv8ly7.js';
10
- import { u as useSparkpostDomain } from './useSparkpostDomain-CuX-Gl5a.js';
9
+ import { P as PageWrapper, a as PageContent, I as INITIAL_VALUES, V as VALIDATION_SCHEMA } from './constants-DbB8UFcr.js';
10
+ import { u as useSparkpostDomain } from './useSparkpostDomain-De-Fz3ek.js';
11
11
  import { jsx, jsxs } from 'react/jsx-runtime';
12
12
  import '@babel/runtime/helpers/defineProperty';
13
13
  import '@babel/runtime/helpers/objectWithoutProperties';
@@ -45,7 +45,7 @@ var SparkpostDomainSetup = function SparkpostDomainSetup(_ref) {
45
45
  isCreating = _useSparkpostDomain.isCreating;
46
46
  var handleSubmit = function handleSubmit(values, _ref2) {
47
47
  var setFieldError = _ref2.setFieldError;
48
- onCreateDomain(values.email.trim(), function (response) {
48
+ onCreateDomain(values.email.trim(), values.displayName.trim(), function (response) {
49
49
  if (response !== null && response !== void 0 && response.alreadyVerified) {
50
50
  // Domain is already verified, go back to email delivery settings
51
51
  history.push(alreadyVerifiedRoute);
@@ -71,9 +71,7 @@ var SparkpostDomainSetup = function SparkpostDomainSetup(_ref) {
71
71
  children: /*#__PURE__*/jsx(Form, {
72
72
  className: "w-full",
73
73
  formikProps: {
74
- initialValues: {
75
- email: ""
76
- },
74
+ initialValues: INITIAL_VALUES,
77
75
  validationSchema: VALIDATION_SCHEMA,
78
76
  onSubmit: handleSubmit
79
77
  },
@@ -107,6 +105,11 @@ var SparkpostDomainSetup = function SparkpostDomainSetup(_ref) {
107
105
  domain: domain
108
106
  }),
109
107
  placeholder: t("neetoEmailDelivery.sparkpost.setup.emailPlaceholder")
108
+ }), /*#__PURE__*/jsx(Input, {
109
+ required: true,
110
+ name: "displayName",
111
+ helpText: t("neetoEmailDelivery.sparkpost.setup.displayNameHelp"),
112
+ label: t("neetoEmailDelivery.sparkpost.setup.displayNameLabel")
110
113
  })]
111
114
  })
112
115
  });
@@ -1 +1 @@
1
- {"version":3,"file":"SparkpostDomainSetup.js","sources":["../app/javascript/src/components/SparkpostDomain/utils.js","../app/javascript/src/components/SparkpostDomain/Setup.jsx"],"sourcesContent":["const getDomainFromEmail = email => email.trim().split(\"@\")[1];\n\nexport { getDomainFromEmail };\n","import { buildUrl } from \"neetocommons/utils\";\nimport CardLayout from \"neetomolecules/CardLayout\";\nimport { Callout } from \"neetoui\";\nimport { Input, ActionBlock, Form } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { PageContent, PageWrapper } from \"components/PageLayout\";\nimport useSparkpostDomain from \"hooks/integrations/useSparkpostDomain\";\n\nimport { VALIDATION_SCHEMA } from \"./constants\";\nimport { getDomainFromEmail } from \"./utils\";\n\nconst SparkpostDomainSetup = ({\n ownerId,\n alreadyVerifiedRoute,\n verifyRoute,\n onCancelRoute,\n canManageIntegrations,\n}) => {\n const { t } = useTranslation();\n\n const history = useHistory();\n\n const { onCreateDomain, isCreating } = useSparkpostDomain({\n ownerId,\n canManageIntegrations,\n });\n\n const handleSubmit = (values, { setFieldError }) => {\n onCreateDomain(\n values.email.trim(),\n response => {\n if (response?.alreadyVerified) {\n // Domain is already verified, go back to email delivery settings\n history.push(alreadyVerifiedRoute);\n } else {\n // Navigate to verification page with domain query parameter\n const domain = getDomainFromEmail(values.email);\n history.push(\n buildUrl(verifyRoute, { domain, email: values.email.trim() })\n );\n }\n },\n error => {\n const errorMessage =\n error?.response?.data?.error ||\n t(\"neetoEmailDelivery.sparkpost.setup.validation.setupFailed\");\n setFieldError(\"email\", errorMessage);\n }\n );\n };\n\n const handleCancel = () => {\n history.push(onCancelRoute);\n };\n\n return (\n <PageWrapper>\n <PageContent>\n <Form\n className=\"w-full\"\n formikProps={{\n initialValues: { email: \"\" },\n validationSchema: VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n {({ values }) => {\n const domain = values.email\n ? getDomainFromEmail(values.email)\n : t(\"neetoEmailDelivery.sparkpost.customDomain\");\n\n return (\n <CardLayout\n title={String(t(\"neetoEmailDelivery.sparkpost.setup.title\"))}\n actionBlock={\n <ActionBlock\n cancelButtonProps={{ onClick: handleCancel }}\n isSubmitting={isCreating}\n submitButtonProps={{\n label: t(\"neetoEmailDelivery.sparkpost.setup.setupEmail\"),\n }}\n />\n }\n description={String(\n t(\"neetoEmailDelivery.sparkpost.setup.description\")\n )}\n >\n <div className=\"flex flex-col gap-6\">\n <Callout style=\"warning\">\n {t(\"neetoEmailDelivery.sparkpost.setup.note\")}\n </Callout>\n <Input\n required\n unlimitedChars\n label={t(\"neetoEmailDelivery.sparkpost.setup.emailLabel\")}\n name=\"email\"\n type=\"email\"\n helpText={t(\n \"neetoEmailDelivery.sparkpost.setup.emailHelp\",\n { domain }\n )}\n placeholder={t(\n \"neetoEmailDelivery.sparkpost.setup.emailPlaceholder\"\n )}\n />\n </div>\n </CardLayout>\n );\n }}\n </Form>\n </PageContent>\n </PageWrapper>\n );\n};\n\nexport default SparkpostDomainSetup;\n"],"names":["getDomainFromEmail","email","trim","split","SparkpostDomainSetup","_ref","ownerId","alreadyVerifiedRoute","verifyRoute","onCancelRoute","canManageIntegrations","_useTranslation","useTranslation","t","history","useHistory","_useSparkpostDomain","useSparkpostDomain","onCreateDomain","isCreating","handleSubmit","values","_ref2","setFieldError","response","alreadyVerified","push","domain","buildUrl","error","_error$response","errorMessage","data","handleCancel","_jsx","PageWrapper","children","PageContent","Form","className","formikProps","initialValues","validationSchema","VALIDATION_SCHEMA","onSubmit","_ref3","CardLayout","title","String","actionBlock","ActionBlock","cancelButtonProps","onClick","isSubmitting","submitButtonProps","label","description","_jsxs","Callout","style","Input","required","unlimitedChars","name","type","helpText","placeholder"],"mappings":"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"}
1
+ {"version":3,"file":"SparkpostDomainSetup.js","sources":["../app/javascript/src/components/SparkpostDomain/utils.js","../app/javascript/src/components/SparkpostDomain/Setup.jsx"],"sourcesContent":["const getDomainFromEmail = email => email.trim().split(\"@\")[1];\n\nexport { getDomainFromEmail };\n","import { buildUrl } from \"neetocommons/utils\";\nimport CardLayout from \"neetomolecules/CardLayout\";\nimport { Callout } from \"neetoui\";\nimport { Input, ActionBlock, Form } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { PageContent, PageWrapper } from \"components/PageLayout\";\nimport useSparkpostDomain from \"hooks/integrations/useSparkpostDomain\";\n\nimport { VALIDATION_SCHEMA, INITIAL_VALUES } from \"./constants\";\nimport { getDomainFromEmail } from \"./utils\";\n\nconst SparkpostDomainSetup = ({\n ownerId,\n alreadyVerifiedRoute,\n verifyRoute,\n onCancelRoute,\n canManageIntegrations,\n}) => {\n const { t } = useTranslation();\n\n const history = useHistory();\n\n const { onCreateDomain, isCreating } = useSparkpostDomain({\n ownerId,\n canManageIntegrations,\n });\n\n const handleSubmit = (values, { setFieldError }) => {\n onCreateDomain(\n values.email.trim(),\n values.displayName.trim(),\n response => {\n if (response?.alreadyVerified) {\n // Domain is already verified, go back to email delivery settings\n history.push(alreadyVerifiedRoute);\n } else {\n // Navigate to verification page with domain query parameter\n const domain = getDomainFromEmail(values.email);\n history.push(\n buildUrl(verifyRoute, { domain, email: values.email.trim() })\n );\n }\n },\n error => {\n const errorMessage =\n error?.response?.data?.error ||\n t(\"neetoEmailDelivery.sparkpost.setup.validation.setupFailed\");\n setFieldError(\"email\", errorMessage);\n }\n );\n };\n\n const handleCancel = () => {\n history.push(onCancelRoute);\n };\n\n return (\n <PageWrapper>\n <PageContent>\n <Form\n className=\"w-full\"\n formikProps={{\n initialValues: INITIAL_VALUES,\n validationSchema: VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n {({ values }) => {\n const domain = values.email\n ? getDomainFromEmail(values.email)\n : t(\"neetoEmailDelivery.sparkpost.customDomain\");\n\n return (\n <CardLayout\n title={String(t(\"neetoEmailDelivery.sparkpost.setup.title\"))}\n actionBlock={\n <ActionBlock\n cancelButtonProps={{ onClick: handleCancel }}\n isSubmitting={isCreating}\n submitButtonProps={{\n label: t(\"neetoEmailDelivery.sparkpost.setup.setupEmail\"),\n }}\n />\n }\n description={String(\n t(\"neetoEmailDelivery.sparkpost.setup.description\")\n )}\n >\n <div className=\"flex flex-col gap-6\">\n <Callout style=\"warning\">\n {t(\"neetoEmailDelivery.sparkpost.setup.note\")}\n </Callout>\n <Input\n required\n unlimitedChars\n label={t(\"neetoEmailDelivery.sparkpost.setup.emailLabel\")}\n name=\"email\"\n type=\"email\"\n helpText={t(\n \"neetoEmailDelivery.sparkpost.setup.emailHelp\",\n { domain }\n )}\n placeholder={t(\n \"neetoEmailDelivery.sparkpost.setup.emailPlaceholder\"\n )}\n />\n <Input\n required\n name=\"displayName\"\n helpText={t(\n \"neetoEmailDelivery.sparkpost.setup.displayNameHelp\"\n )}\n label={t(\n \"neetoEmailDelivery.sparkpost.setup.displayNameLabel\"\n )}\n />\n </div>\n </CardLayout>\n );\n }}\n </Form>\n </PageContent>\n </PageWrapper>\n );\n};\n\nexport default SparkpostDomainSetup;\n"],"names":["getDomainFromEmail","email","trim","split","SparkpostDomainSetup","_ref","ownerId","alreadyVerifiedRoute","verifyRoute","onCancelRoute","canManageIntegrations","_useTranslation","useTranslation","t","history","useHistory","_useSparkpostDomain","useSparkpostDomain","onCreateDomain","isCreating","handleSubmit","values","_ref2","setFieldError","displayName","response","alreadyVerified","push","domain","buildUrl","error","_error$response","errorMessage","data","handleCancel","_jsx","PageWrapper","children","PageContent","Form","className","formikProps","initialValues","INITIAL_VALUES","validationSchema","VALIDATION_SCHEMA","onSubmit","_ref3","CardLayout","title","String","actionBlock","ActionBlock","cancelButtonProps","onClick","isSubmitting","submitButtonProps","label","description","_jsxs","Callout","style","Input","required","unlimitedChars","name","type","helpText","placeholder"],"mappings":"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"}
@@ -6,8 +6,8 @@ import Spinner from '@bigbinary/neetoui/Spinner';
6
6
  import { isEmpty, pathOr } from 'ramda';
7
7
  import { useTranslation } from 'react-i18next';
8
8
  import { useHistory } from 'react-router-dom';
9
- import { b as PURPOSE_COLORS, D as DEFAULT_COLOR, c as VERIFICATION_STATUS_CONFIG, d as VERIFICATION_STATUSES, P as PageWrapper, a as PageContent } from './constants-Cvxv8ly7.js';
10
- import { u as useSparkpostDomain } from './useSparkpostDomain-CuX-Gl5a.js';
9
+ import { b as PURPOSE_COLORS, D as DEFAULT_COLOR, c as VERIFICATION_STATUS_CONFIG, d as VERIFICATION_STATUSES, P as PageWrapper, a as PageContent } from './constants-DbB8UFcr.js';
10
+ import { u as useSparkpostDomain } from './useSparkpostDomain-De-Fz3ek.js';
11
11
  import { u as useFetchSparkpostDomain } from './useSparkpostApi-qpRhsK7H.js';
12
12
  import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
13
13
  import Typography from '@bigbinary/neetoui/Typography';
@@ -26,7 +26,7 @@ var i18next = require('i18next');
26
26
  var yup = require('yup');
27
27
  var jsxRuntime = require('react/jsx-runtime');
28
28
  var reactQuery = require('@tanstack/react-query');
29
- var useSparkpostDomain = require('../useSparkpostDomain-Brk7SmL4.js');
29
+ var useSparkpostDomain = require('../useSparkpostDomain-DtEcunpG.js');
30
30
  var Button = require('@bigbinary/neetoui/Button');
31
31
  var Tag = require('@bigbinary/neetoui/Tag');
32
32
  require('@babel/runtime/helpers/defineProperty');
@@ -97,7 +97,8 @@ var SMTP_ACCOUNT_VALIDATION_SCHEMA = yup__namespace.object().shape({
97
97
  var SmtpSetup = function SmtpSetup(_ref) {
98
98
  var ownerId = _ref.ownerId,
99
99
  onDone = _ref.onDone,
100
- onCancel = _ref.onCancel;
100
+ onCancel = _ref.onCancel,
101
+ isOpen = _ref.isOpen;
101
102
  var _useTranslation = reactI18next.useTranslation(),
102
103
  t = _useTranslation.t;
103
104
  var _useCreateSmtp = useOutlookIntegrationApi.useCreateSmtp({
@@ -113,7 +114,7 @@ var SmtpSetup = function SmtpSetup(_ref) {
113
114
  });
114
115
  };
115
116
  return /*#__PURE__*/jsxRuntime.jsxs(Pane, {
116
- isOpen: true,
117
+ isOpen: isOpen,
117
118
  size: "lg",
118
119
  onClose: onCancel,
119
120
  children: [/*#__PURE__*/jsxRuntime.jsx(Pane.Header, {
@@ -563,8 +564,9 @@ var EmailDeliveryScreen = function EmailDeliveryScreen(_ref) {
563
564
  email: outlookEmail
564
565
  })
565
566
  })]
566
- }), isSmtpPaneOpen && /*#__PURE__*/jsxRuntime.jsx(SmtpSetup, {
567
+ }), /*#__PURE__*/jsxRuntime.jsx(SmtpSetup, {
567
568
  ownerId: ownerId,
569
+ isOpen: isSmtpPaneOpen,
568
570
  onCancel: handleSmtpPaneClose,
569
571
  onDone: handleSmtpPaneClose
570
572
  })]
@@ -1 +1 @@
1
- {"version":3,"file":"EmailDeliveryScreen.js","sources":["../../app/javascript/src/components/Smtp/constants.js","../../app/javascript/src/components/Smtp/Setup.jsx","../../app/javascript/src/hooks/integrations/useGmail.js","../../app/javascript/src/hooks/integrations/useOutlook.js","../../app/javascript/src/hooks/integrations/useSmtp.js","../../app/javascript/src/components/EmailDeliveryScreen/constants.js","../../app/javascript/src/components/EmailDeliveryScreen/IntegrationCard.jsx","../../app/javascript/src/components/EmailDeliveryScreen/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const ENCRYPTION_OPTIONS = [\n { label: \"None\", value: \"none\" },\n { label: \"StartTLS\", value: \"starttls\" },\n { label: \"SSL\", value: \"ssl\" },\n];\n\nexport const SMTP_ACCOUNT_INITIAL_VALUES = {\n host: \"\",\n port: 587,\n username: \"\",\n password: \"\",\n email: \"\",\n encryption: \"starttls\",\n displayName: \"\",\n};\n\nexport const SMTP_ACCOUNT_VALIDATION_SCHEMA = yup.object().shape({\n host: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.hostLabel\"),\n })\n ),\n port: yup.number().required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.portLabel\"),\n })\n ),\n username: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.usernameLabel\"),\n })\n ),\n password: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.passwordLabel\"),\n })\n ),\n email: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.emailLabel\"),\n })\n )\n .email(t(\"neetoEmailDelivery.smtp.setup.emailInvalid\")),\n displayName: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.displayNameLabel\"),\n })\n ),\n encryption: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.encryptionLabel\"),\n })\n ),\n});\n","import { Callout, Pane, Typography } from \"neetoui\";\nimport { Form, Input, Radio, ActionBlock } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateSmtp } from \"hooks/reactQuery/integrations/useSmtpIntegrationApi\";\n\nimport {\n SMTP_ACCOUNT_INITIAL_VALUES,\n SMTP_ACCOUNT_VALIDATION_SCHEMA,\n ENCRYPTION_OPTIONS,\n} from \"./constants\";\n\nconst SmtpSetup = ({ ownerId, onDone, onCancel }) => {\n const { t } = useTranslation();\n\n const { isPending: isCreating, mutate: createSmtp } = useCreateSmtp({\n ownerId,\n });\n\n const handleSubmit = values => {\n createSmtp({ smtp_account: values }, { onSuccess: onDone });\n };\n\n return (\n <Pane isOpen size=\"lg\" onClose={onCancel}>\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {t(\"neetoEmailDelivery.smtp.setup.title\")}\n </Typography>\n </Pane.Header>\n <Form\n className=\"w-full\"\n formikProps={{\n initialValues: SMTP_ACCOUNT_INITIAL_VALUES,\n validationSchema: SMTP_ACCOUNT_VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <Pane.Body className=\"space-y-4\">\n <div className=\"flex flex-col gap-6\">\n <Callout style=\"warning\">\n {t(\"neetoEmailDelivery.smtp.setup.note\")}\n </Callout>\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.hostLabel\")}\n name=\"host\"\n />\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.portLabel\")}\n name=\"port\"\n type=\"number\"\n />\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.usernameLabel\")}\n name=\"username\"\n />\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.passwordLabel\")}\n name=\"password\"\n type=\"password\"\n />\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.emailLabel\")}\n name=\"email\"\n type=\"email\"\n />\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.displayNameLabel\")}\n name=\"displayName\"\n />\n <Radio\n label={t(\"neetoEmailDelivery.smtp.setup.encryptionLabel\")}\n name=\"encryption\"\n >\n {ENCRYPTION_OPTIONS.map(option => (\n <Radio.Item\n key={option.value}\n label={option.label}\n value={option.value}\n />\n ))}\n </Radio>\n </div>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onCancel }}\n isSubmitting={isCreating}\n submitButtonProps={{\n label: t(\"neetoEmailDelivery.smtp.setup.saveAndActivate\"),\n }}\n />\n </Pane.Footer>\n </Form>\n </Pane>\n );\n};\n\nexport default SmtpSetup;\n","import { useState } from \"react\";\n\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { useHistory } from \"react-router-dom\";\n\nimport {\n useFetchGmail,\n useDestroyGmail,\n} from \"hooks/reactQuery/integrations/useGmailIntegrationApi\";\nimport { invalidateAllIntegrationQueries } from \"src/utils\";\n\nconst useGmail = ({ ownerId, indexRoute, canManageIntegrations }) => {\n const [isDisconnectAlertOpen, setIsDisconnectAlertOpen] = useState(false);\n\n const history = useHistory();\n\n const queryClient = useQueryClient();\n\n const { isLoading, data = {} } = useFetchGmail(ownerId, {\n enabled: canManageIntegrations,\n });\n\n const { isPending: isDestroying, mutate: destroyIntegration } =\n useDestroyGmail({ ownerId });\n\n const onClose = () => history.replace(indexRoute);\n\n const onDisconnect = () => {\n destroyIntegration(false, {\n onSuccess: () => {\n setIsDisconnectAlertOpen(false);\n invalidateAllIntegrationQueries(queryClient, ownerId);\n history.replace(indexRoute);\n },\n });\n };\n\n return {\n data,\n isLoading,\n isDestroying,\n exists: data?.exists,\n isConnected: data?.connected,\n isDisconnectAlertOpen,\n setIsDisconnectAlertOpen,\n onDisconnect,\n onClose,\n errorMessage: data?.error,\n };\n};\n\nexport default useGmail;\n","import { useState } from \"react\";\n\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { useHistory } from \"react-router-dom\";\n\nimport {\n useFetchOutlook,\n useDestroyOutlook,\n} from \"hooks/reactQuery/integrations/useOutlookIntegrationApi\";\nimport { invalidateAllIntegrationQueries } from \"src/utils\";\n\nconst useOutlook = ({ ownerId, indexRoute, canManageIntegrations }) => {\n const [isDisconnectAlertOpen, setIsDisconnectAlertOpen] = useState(false);\n\n const history = useHistory();\n\n const queryClient = useQueryClient();\n\n const { isLoading, data = {} } = useFetchOutlook(ownerId, {\n enabled: canManageIntegrations,\n });\n\n const { isPending: isDestroying, mutate: destroyIntegration } =\n useDestroyOutlook({ ownerId });\n\n const onClose = () => history.replace(indexRoute);\n\n const onDisconnect = () => {\n destroyIntegration(false, {\n onSuccess: () => {\n setIsDisconnectAlertOpen(false);\n invalidateAllIntegrationQueries(queryClient, ownerId);\n history.replace(indexRoute);\n },\n });\n };\n\n return {\n data,\n isLoading,\n exists: data?.exists,\n status: data?.status,\n shadowAccount: data?.shadowAccount,\n isWaitingForTestEmail: data?.status === \"inactive\" && !data?.connected,\n isDestroying,\n isConnected: data?.connected,\n isDisconnectAlertOpen,\n setIsDisconnectAlertOpen,\n onDisconnect,\n onClose,\n errorMessage: data?.error,\n };\n};\n\nexport default useOutlook;\n","import {\n useFetchSmtp,\n useDestroySmtp,\n} from \"hooks/reactQuery/integrations/useSmtpIntegrationApi\";\n\nconst useSmtp = ({ ownerId, canManageIntegrations }) => {\n const { isLoading, data = {} } = useFetchSmtp(ownerId, {\n enabled: canManageIntegrations,\n });\n\n const { isPending: isDestroying, mutate: onDisconnect } = useDestroySmtp({\n ownerId,\n });\n\n return {\n data,\n isConnected: data?.connected,\n isLoading,\n isDestroying,\n onDisconnect,\n exists: data?.exists,\n };\n};\n\nexport default useSmtp;\n","import { t } from \"i18next\";\n\nexport const ERROR_MESSAGES = {\n gmail_permission_not_given: t(\"neetoEmailDelivery.gmail.permissionNotGiven\"),\n outlook_permission_not_given: t(\n \"neetoEmailDelivery.outlook.permissionNotGiven\"\n ),\n outlook_invalid_client: t(\"neetoEmailDelivery.outlook.invalidClient\"),\n outlook_nil_json_web_token: t(\"neetoEmailDelivery.outlook.nilJsonWebToken\"),\n};\n","import { Button, Tag, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst IntegrationCard = ({\n icon: Icon,\n title,\n description,\n isConnected,\n isDisconnecting,\n onConnect,\n onDisconnect,\n connectButtonText,\n disconnectButtonText = \"neetoEmailDelivery.sparkpost.emailDelivery.disconnect\",\n connectedTagText = \"neetoEmailDelivery.sparkpost.emailDelivery.connected\",\n showDisconnect = false,\n}) => {\n const { t } = useTranslation();\n\n const shouldShowDisconnect = isConnected || showDisconnect;\n\n return (\n <div className=\"neeto-ui-rounded-lg neeto-ui-shadow-xs neeto-ui-border-gray-300 translate flex flex-col gap-y-4 border p-6 no-underline transition-transform duration-300 ease-in-out outline-none hover:-translate-y-1\">\n <div className=\"flex flex-col gap-4\">\n <div className=\"flex items-center gap-3\">\n <Icon className=\"shrink-0\" size={32} />\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex items-center gap-2\">\n <Typography style=\"h4\" weight=\"semibold\">\n {title}\n </Typography>\n {isConnected && <Tag label={t(connectedTagText)} />}\n </div>\n </div>\n </div>\n <Typography style=\"body2\">{description}</Typography>\n {connectButtonText && (\n <div className=\"flex gap-2\">\n {shouldShowDisconnect ? (\n <Button\n data-cy=\"disconnect-button\"\n label={t(disconnectButtonText)}\n loading={isDisconnecting}\n size=\"small\"\n style=\"danger\"\n onClick={onDisconnect}\n />\n ) : (\n <Button\n data-cy=\"connect-button\"\n label={t(connectButtonText)}\n size=\"small\"\n style=\"primary\"\n onClick={onConnect}\n />\n )}\n </div>\n )}\n </div>\n </div>\n );\n};\n\nexport default IntegrationCard;\n","import { useState } from \"react\";\n\nimport { humanize, isPresent } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { MailSend } from \"neetoicons\";\nimport { Gmail as GmailIcon, Outlook as OutlookIcon } from \"neetoicons/misc\";\nimport { Spinner, Callout, Toastr } from \"neetoui\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport {\n GMAIL_OAUTH_CONNECT_URL,\n OUTLOOK_OAUTH_CONNECT_URL,\n} from \"apis/integrations/constants\";\nimport SmtpSetup from \"components/Smtp/Setup\";\nimport useGmail from \"hooks/integrations/useGmail\";\nimport useOutlook from \"hooks/integrations/useOutlook\";\nimport useSmtp from \"hooks/integrations/useSmtp\";\nimport useSparkpostDomain from \"hooks/integrations/useSparkpostDomain\";\n\nimport { ERROR_MESSAGES } from \"./constants\";\nimport IntegrationCard from \"./IntegrationCard\";\n\nconst EmailDeliveryScreen = ({\n indexRoute,\n ownerId,\n ownDomainSetupRoute,\n canManageIntegrations,\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n const [isSmtpPaneOpen, setIsSmtpPaneOpen] = useState(false);\n const { error, errorDescription } = useQueryParams();\n\n if (isPresent(error)) {\n let errorMessage = ERROR_MESSAGES[error];\n if (errorDescription) {\n errorMessage = `${errorMessage} ${errorDescription}`;\n }\n Toastr.error(errorMessage ?? humanize(error));\n\n history.replace(indexRoute);\n }\n\n const gmailIntegration = useGmail({\n ownerId,\n indexRoute,\n canManageIntegrations,\n });\n\n const outlookIntegration = useOutlook({\n ownerId,\n indexRoute,\n canManageIntegrations,\n });\n\n const sparkpostIntegration = useSparkpostDomain({\n ownerId,\n canManageIntegrations,\n });\n\n const smtpIntegration = useSmtp({ ownerId, canManageIntegrations });\n\n const {\n data: gmailData = {},\n isConnected: isGmailConnected,\n isLoading: isGmailLoading,\n isDestroying: isGmailDisconnecting,\n onDisconnect: onGmailDisconnect,\n exists: isGmailExists,\n } = gmailIntegration;\n\n const {\n data: outlookData = {},\n isConnected: isOutlookConnected,\n isLoading: isOutlookLoading,\n isDestroying: isOutlookDisconnecting,\n isWaitingForTestEmail: isOutlookWaitingForTestEmail,\n shadowAccount: isOutlookShadowAccount,\n onDisconnect: onOutlookDisconnect,\n exists: isOutlookExists,\n } = outlookIntegration;\n\n const {\n data: sparkpostData = {},\n isConnected: isSparkpostConnected,\n isLoading: isSparkpostLoading,\n onDisconnect: onSparkpostDisconnect,\n isDestroying: isSparkpostDisconnecting,\n exists: isSparkpostExists,\n } = sparkpostIntegration;\n\n const {\n data: smtpData = {},\n isConnected: isSmtpConnected,\n isLoading: isSmtpLoading,\n isDestroying: isSmtpDisconnecting,\n onDisconnect: onSmtpDisconnect,\n exists: isSmtpExists,\n } = smtpIntegration;\n\n const isLoading =\n isGmailLoading || isOutlookLoading || isSparkpostLoading || isSmtpLoading;\n\n const noneExists =\n !isGmailExists && !isOutlookExists && !isSparkpostExists && !isSmtpExists;\n const showGmail = noneExists || isGmailExists;\n const showOutlook = noneExists || isOutlookExists;\n const showSparkpost = noneExists || isSparkpostExists;\n const showSmtp = noneExists || isSmtpExists;\n\n const handleGmailConnect = () => {\n window.location.href = buildUrl(GMAIL_OAUTH_CONNECT_URL, { ownerId });\n };\n\n const handleOutlookConnect = () => {\n window.location.href = buildUrl(OUTLOOK_OAUTH_CONNECT_URL, { ownerId });\n };\n\n const handleOwnDomainConnect = () => {\n history.push(ownDomainSetupRoute);\n };\n\n const handleSmtpConnect = () => {\n setIsSmtpPaneOpen(true);\n };\n\n const handleSmtpPaneClose = () => {\n setIsSmtpPaneOpen(false);\n };\n\n const gmailEmail = prop(\"email\", gmailData);\n const outlookEmail = prop(\"email\", outlookData);\n const sparkpostEmail = prop(\"email\", sparkpostData);\n const smtpEmail = prop(\"email\", smtpData);\n\n const gmailTitle = t(\"neetoEmailDelivery.gmail.title\");\n const gmailDescription = isGmailConnected\n ? t(\"neetoEmailDelivery.sparkpost.emailDelivery.connectedEmail\", {\n email: gmailEmail,\n })\n : t(\"neetoEmailDelivery.gmail.description\");\n\n const outlookTitle = t(\"neetoEmailDelivery.outlook.title\");\n const outlookDescription = isOutlookConnected\n ? t(\"neetoEmailDelivery.sparkpost.emailDelivery.connectedEmail\", {\n email: outlookEmail,\n })\n : t(\"neetoEmailDelivery.outlook.description\");\n\n const ownDomainTitle = t(\n \"neetoEmailDelivery.sparkpost.emailDelivery.ownDomainTitle\"\n );\n\n const ownDomainDescription = isSparkpostConnected\n ? t(\"neetoEmailDelivery.sparkpost.emailDelivery.connectedEmail\", {\n email: sparkpostEmail,\n })\n : t(\"neetoEmailDelivery.sparkpost.emailDelivery.ownDomainDescription\");\n\n const smtpTitle = t(\"neetoEmailDelivery.smtp.title\");\n const smtpDescription = isSmtpConnected\n ? t(\"neetoEmailDelivery.sparkpost.emailDelivery.connectedEmail\", {\n email: smtpEmail,\n })\n : t(\"neetoEmailDelivery.smtp.description\");\n\n if (isLoading) {\n return (\n <div className=\"flex grow items-center justify-center w-full\">\n <Spinner />\n </div>\n );\n }\n\n const activeMessage =\n (isGmailConnected && t(\"neetoEmailDelivery.gmail.gmailConfigured\")) ||\n (isOutlookConnected && t(\"neetoEmailDelivery.outlook.outlookConfigured\")) ||\n (isSparkpostConnected &&\n t(\"neetoEmailDelivery.sparkpost.ownDomainConfigured\")) ||\n (isSmtpConnected && t(\"neetoEmailDelivery.smtp.smtpConfigured\"));\n\n return (\n <div className=\"min-h-0 w-full grow\">\n <div className=\"@container mx-auto space-y-6\">\n <div className=\"grid grid-cols-1 gap-3 py-1 @lg:grid-cols-2 @lg:gap-6 @3xl:grid-cols-3 @7xl:grid-cols-4\">\n {/* Gmail Option */}\n {showGmail && (\n <IntegrationCard\n connectButtonText=\"neetoEmailDelivery.gmail.connectGmail\"\n description={gmailDescription}\n icon={GmailIcon}\n isConnected={isGmailConnected}\n isDisconnecting={isGmailDisconnecting}\n title={gmailTitle}\n onConnect={handleGmailConnect}\n onDisconnect={onGmailDisconnect}\n />\n )}\n {/* Outlook Option */}\n {showOutlook && (\n <IntegrationCard\n connectButtonText=\"neetoEmailDelivery.outlook.connectOutlook\"\n description={outlookDescription}\n icon={OutlookIcon}\n isConnected={isOutlookConnected}\n isDisconnecting={isOutlookDisconnecting}\n title={outlookTitle}\n showDisconnect={\n isOutlookWaitingForTestEmail || isOutlookShadowAccount\n }\n onConnect={handleOutlookConnect}\n onDisconnect={onOutlookDisconnect}\n />\n )}\n {/* Own Domain (Sparkpost) Option */}\n {showSparkpost && (\n <IntegrationCard\n connectButtonText=\"neetoEmailDelivery.sparkpost.emailDelivery.setupDomain\"\n description={ownDomainDescription}\n icon={MailSend}\n isConnected={isSparkpostConnected}\n isDisconnecting={isSparkpostDisconnecting}\n title={ownDomainTitle}\n onConnect={handleOwnDomainConnect}\n onDisconnect={onSparkpostDisconnect}\n />\n )}\n {/* SMTP Option */}\n {showSmtp && (\n <IntegrationCard\n connectButtonText=\"neetoEmailDelivery.smtp.connectSmtp\"\n description={smtpDescription}\n icon={MailSend}\n isConnected={isSmtpConnected}\n isDisconnecting={isSmtpDisconnecting}\n title={smtpTitle}\n onConnect={handleSmtpConnect}\n onDisconnect={onSmtpDisconnect}\n />\n )}\n </div>\n {activeMessage && <Callout style=\"success\">{activeMessage}</Callout>}\n {isOutlookWaitingForTestEmail && (\n <Callout style=\"warning\">\n {t(\"neetoEmailDelivery.outlook.waitingForTestEmail\", {\n email: outlookEmail,\n })}\n </Callout>\n )}\n {isOutlookShadowAccount && (\n <Callout style=\"warning\">\n {t(\"neetoEmailDelivery.outlook.shadowAccountMessage\", {\n email: outlookEmail,\n })}\n </Callout>\n )}\n </div>\n {isSmtpPaneOpen && (\n <SmtpSetup\n {...{ ownerId }}\n onCancel={handleSmtpPaneClose}\n onDone={handleSmtpPaneClose}\n />\n )}\n </div>\n );\n};\n\nexport default EmailDeliveryScreen;\n"],"names":["ENCRYPTION_OPTIONS","label","value","SMTP_ACCOUNT_INITIAL_VALUES","host","port","username","password","email","encryption","displayName","SMTP_ACCOUNT_VALIDATION_SCHEMA","yup","object","shape","string","trim","required","t","field","number","SmtpSetup","_ref","ownerId","onDone","onCancel","_useTranslation","useTranslation","_useCreateSmtp","useCreateSmtp","isCreating","isPending","createSmtp","mutate","handleSubmit","values","smtp_account","onSuccess","_jsxs","Pane","isOpen","size","onClose","children","_jsx","Header","Typography","style","weight","Form","className","formikProps","initialValues","validationSchema","onSubmit","Body","Callout","Input","name","type","Radio","map","option","Item","Footer","ActionBlock","cancelButtonProps","onClick","isSubmitting","submitButtonProps","useGmail","indexRoute","canManageIntegrations","_useState","useState","_useState2","_slicedToArray","isDisconnectAlertOpen","setIsDisconnectAlertOpen","history","useHistory","queryClient","useQueryClient","_useFetchGmail","useFetchGmail","enabled","isLoading","_useFetchGmail$data","data","_useDestroyGmail","useDestroyGmail","isDestroying","destroyIntegration","replace","onDisconnect","invalidateAllIntegrationQueries","exists","isConnected","connected","errorMessage","error","useOutlook","_useFetchOutlook","useFetchOutlook","_useFetchOutlook$data","_useDestroyOutlook","useDestroyOutlook","status","shadowAccount","isWaitingForTestEmail","useSmtp","_useFetchSmtp","useFetchSmtp","_useFetchSmtp$data","_useDestroySmtp","useDestroySmtp","ERROR_MESSAGES","gmail_permission_not_given","outlook_permission_not_given","outlook_invalid_client","outlook_nil_json_web_token","IntegrationCard","Icon","icon","title","description","isDisconnecting","onConnect","connectButtonText","_ref$disconnectButton","disconnectButtonText","_ref$connectedTagText","connectedTagText","_ref$showDisconnect","showDisconnect","shouldShowDisconnect","Tag","Button","loading","EmailDeliveryScreen","ownDomainSetupRoute","isSmtpPaneOpen","setIsSmtpPaneOpen","_useQueryParams","useQueryParams","errorDescription","isPresent","_errorMessage","concat","Toastr","humanize","gmailIntegration","outlookIntegration","sparkpostIntegration","useSparkpostDomain","smtpIntegration","_gmailIntegration$dat","gmailData","isGmailConnected","isGmailLoading","isGmailDisconnecting","onGmailDisconnect","isGmailExists","_outlookIntegration$d","outlookData","isOutlookConnected","isOutlookLoading","isOutlookDisconnecting","isOutlookWaitingForTestEmail","isOutlookShadowAccount","onOutlookDisconnect","isOutlookExists","_sparkpostIntegration","sparkpostData","isSparkpostConnected","isSparkpostLoading","onSparkpostDisconnect","isSparkpostDisconnecting","isSparkpostExists","_smtpIntegration$data","smtpData","isSmtpConnected","isSmtpLoading","isSmtpDisconnecting","onSmtpDisconnect","isSmtpExists","noneExists","showGmail","showOutlook","showSparkpost","showSmtp","handleGmailConnect","window","location","href","buildUrl","GMAIL_OAUTH_CONNECT_URL","handleOutlookConnect","OUTLOOK_OAUTH_CONNECT_URL","handleOwnDomainConnect","push","handleSmtpConnect","handleSmtpPaneClose","gmailEmail","prop","outlookEmail","sparkpostEmail","smtpEmail","gmailTitle","gmailDescription","outlookTitle","outlookDescription","ownDomainTitle","ownDomainDescription","smtpTitle","smtpDescription","Spinner","activeMessage","GmailIcon","OutlookIcon","MailSend"],"mappings":"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"}
1
+ {"version":3,"file":"EmailDeliveryScreen.js","sources":["../../app/javascript/src/components/Smtp/constants.js","../../app/javascript/src/components/Smtp/Setup.jsx","../../app/javascript/src/hooks/integrations/useGmail.js","../../app/javascript/src/hooks/integrations/useOutlook.js","../../app/javascript/src/hooks/integrations/useSmtp.js","../../app/javascript/src/components/EmailDeliveryScreen/constants.js","../../app/javascript/src/components/EmailDeliveryScreen/IntegrationCard.jsx","../../app/javascript/src/components/EmailDeliveryScreen/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const ENCRYPTION_OPTIONS = [\n { label: \"None\", value: \"none\" },\n { label: \"StartTLS\", value: \"starttls\" },\n { label: \"SSL\", value: \"ssl\" },\n];\n\nexport const SMTP_ACCOUNT_INITIAL_VALUES = {\n host: \"\",\n port: 587,\n username: \"\",\n password: \"\",\n email: \"\",\n encryption: \"starttls\",\n displayName: \"\",\n};\n\nexport const SMTP_ACCOUNT_VALIDATION_SCHEMA = yup.object().shape({\n host: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.hostLabel\"),\n })\n ),\n port: yup.number().required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.portLabel\"),\n })\n ),\n username: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.usernameLabel\"),\n })\n ),\n password: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.passwordLabel\"),\n })\n ),\n email: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.emailLabel\"),\n })\n )\n .email(t(\"neetoEmailDelivery.smtp.setup.emailInvalid\")),\n displayName: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.displayNameLabel\"),\n })\n ),\n encryption: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.smtp.setup.requiredField\", {\n field: t(\"neetoEmailDelivery.smtp.setup.encryptionLabel\"),\n })\n ),\n});\n","import { Callout, Pane, Typography } from \"neetoui\";\nimport { Form, Input, Radio, ActionBlock } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateSmtp } from \"hooks/reactQuery/integrations/useSmtpIntegrationApi\";\n\nimport {\n SMTP_ACCOUNT_INITIAL_VALUES,\n SMTP_ACCOUNT_VALIDATION_SCHEMA,\n ENCRYPTION_OPTIONS,\n} from \"./constants\";\n\nconst SmtpSetup = ({ ownerId, onDone, onCancel, isOpen }) => {\n const { t } = useTranslation();\n\n const { isPending: isCreating, mutate: createSmtp } = useCreateSmtp({\n ownerId,\n });\n\n const handleSubmit = values => {\n createSmtp({ smtp_account: values }, { onSuccess: onDone });\n };\n\n return (\n <Pane {...{ isOpen }} size=\"lg\" onClose={onCancel}>\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {t(\"neetoEmailDelivery.smtp.setup.title\")}\n </Typography>\n </Pane.Header>\n <Form\n className=\"w-full\"\n formikProps={{\n initialValues: SMTP_ACCOUNT_INITIAL_VALUES,\n validationSchema: SMTP_ACCOUNT_VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <Pane.Body className=\"space-y-4\">\n <div className=\"flex flex-col gap-6\">\n <Callout style=\"warning\">\n {t(\"neetoEmailDelivery.smtp.setup.note\")}\n </Callout>\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.hostLabel\")}\n name=\"host\"\n />\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.portLabel\")}\n name=\"port\"\n type=\"number\"\n />\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.usernameLabel\")}\n name=\"username\"\n />\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.passwordLabel\")}\n name=\"password\"\n type=\"password\"\n />\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.emailLabel\")}\n name=\"email\"\n type=\"email\"\n />\n <Input\n required\n label={t(\"neetoEmailDelivery.smtp.setup.displayNameLabel\")}\n name=\"displayName\"\n />\n <Radio\n label={t(\"neetoEmailDelivery.smtp.setup.encryptionLabel\")}\n name=\"encryption\"\n >\n {ENCRYPTION_OPTIONS.map(option => (\n <Radio.Item\n key={option.value}\n label={option.label}\n value={option.value}\n />\n ))}\n </Radio>\n </div>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onCancel }}\n isSubmitting={isCreating}\n submitButtonProps={{\n label: t(\"neetoEmailDelivery.smtp.setup.saveAndActivate\"),\n }}\n />\n </Pane.Footer>\n </Form>\n </Pane>\n );\n};\n\nexport default SmtpSetup;\n","import { useState } from \"react\";\n\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { useHistory } from \"react-router-dom\";\n\nimport {\n useFetchGmail,\n useDestroyGmail,\n} from \"hooks/reactQuery/integrations/useGmailIntegrationApi\";\nimport { invalidateAllIntegrationQueries } from \"src/utils\";\n\nconst useGmail = ({ ownerId, indexRoute, canManageIntegrations }) => {\n const [isDisconnectAlertOpen, setIsDisconnectAlertOpen] = useState(false);\n\n const history = useHistory();\n\n const queryClient = useQueryClient();\n\n const { isLoading, data = {} } = useFetchGmail(ownerId, {\n enabled: canManageIntegrations,\n });\n\n const { isPending: isDestroying, mutate: destroyIntegration } =\n useDestroyGmail({ ownerId });\n\n const onClose = () => history.replace(indexRoute);\n\n const onDisconnect = () => {\n destroyIntegration(false, {\n onSuccess: () => {\n setIsDisconnectAlertOpen(false);\n invalidateAllIntegrationQueries(queryClient, ownerId);\n history.replace(indexRoute);\n },\n });\n };\n\n return {\n data,\n isLoading,\n isDestroying,\n exists: data?.exists,\n isConnected: data?.connected,\n isDisconnectAlertOpen,\n setIsDisconnectAlertOpen,\n onDisconnect,\n onClose,\n errorMessage: data?.error,\n };\n};\n\nexport default useGmail;\n","import { useState } from \"react\";\n\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { useHistory } from \"react-router-dom\";\n\nimport {\n useFetchOutlook,\n useDestroyOutlook,\n} from \"hooks/reactQuery/integrations/useOutlookIntegrationApi\";\nimport { invalidateAllIntegrationQueries } from \"src/utils\";\n\nconst useOutlook = ({ ownerId, indexRoute, canManageIntegrations }) => {\n const [isDisconnectAlertOpen, setIsDisconnectAlertOpen] = useState(false);\n\n const history = useHistory();\n\n const queryClient = useQueryClient();\n\n const { isLoading, data = {} } = useFetchOutlook(ownerId, {\n enabled: canManageIntegrations,\n });\n\n const { isPending: isDestroying, mutate: destroyIntegration } =\n useDestroyOutlook({ ownerId });\n\n const onClose = () => history.replace(indexRoute);\n\n const onDisconnect = () => {\n destroyIntegration(false, {\n onSuccess: () => {\n setIsDisconnectAlertOpen(false);\n invalidateAllIntegrationQueries(queryClient, ownerId);\n history.replace(indexRoute);\n },\n });\n };\n\n return {\n data,\n isLoading,\n exists: data?.exists,\n status: data?.status,\n shadowAccount: data?.shadowAccount,\n isWaitingForTestEmail: data?.status === \"inactive\" && !data?.connected,\n isDestroying,\n isConnected: data?.connected,\n isDisconnectAlertOpen,\n setIsDisconnectAlertOpen,\n onDisconnect,\n onClose,\n errorMessage: data?.error,\n };\n};\n\nexport default useOutlook;\n","import {\n useFetchSmtp,\n useDestroySmtp,\n} from \"hooks/reactQuery/integrations/useSmtpIntegrationApi\";\n\nconst useSmtp = ({ ownerId, canManageIntegrations }) => {\n const { isLoading, data = {} } = useFetchSmtp(ownerId, {\n enabled: canManageIntegrations,\n });\n\n const { isPending: isDestroying, mutate: onDisconnect } = useDestroySmtp({\n ownerId,\n });\n\n return {\n data,\n isConnected: data?.connected,\n isLoading,\n isDestroying,\n onDisconnect,\n exists: data?.exists,\n };\n};\n\nexport default useSmtp;\n","import { t } from \"i18next\";\n\nexport const ERROR_MESSAGES = {\n gmail_permission_not_given: t(\"neetoEmailDelivery.gmail.permissionNotGiven\"),\n outlook_permission_not_given: t(\n \"neetoEmailDelivery.outlook.permissionNotGiven\"\n ),\n outlook_invalid_client: t(\"neetoEmailDelivery.outlook.invalidClient\"),\n outlook_nil_json_web_token: t(\"neetoEmailDelivery.outlook.nilJsonWebToken\"),\n};\n","import { Button, Tag, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst IntegrationCard = ({\n icon: Icon,\n title,\n description,\n isConnected,\n isDisconnecting,\n onConnect,\n onDisconnect,\n connectButtonText,\n disconnectButtonText = \"neetoEmailDelivery.sparkpost.emailDelivery.disconnect\",\n connectedTagText = \"neetoEmailDelivery.sparkpost.emailDelivery.connected\",\n showDisconnect = false,\n}) => {\n const { t } = useTranslation();\n\n const shouldShowDisconnect = isConnected || showDisconnect;\n\n return (\n <div className=\"neeto-ui-rounded-lg neeto-ui-shadow-xs neeto-ui-border-gray-300 translate flex flex-col gap-y-4 border p-6 no-underline transition-transform duration-300 ease-in-out outline-none hover:-translate-y-1\">\n <div className=\"flex flex-col gap-4\">\n <div className=\"flex items-center gap-3\">\n <Icon className=\"shrink-0\" size={32} />\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex items-center gap-2\">\n <Typography style=\"h4\" weight=\"semibold\">\n {title}\n </Typography>\n {isConnected && <Tag label={t(connectedTagText)} />}\n </div>\n </div>\n </div>\n <Typography style=\"body2\">{description}</Typography>\n {connectButtonText && (\n <div className=\"flex gap-2\">\n {shouldShowDisconnect ? (\n <Button\n data-cy=\"disconnect-button\"\n label={t(disconnectButtonText)}\n loading={isDisconnecting}\n size=\"small\"\n style=\"danger\"\n onClick={onDisconnect}\n />\n ) : (\n <Button\n data-cy=\"connect-button\"\n label={t(connectButtonText)}\n size=\"small\"\n style=\"primary\"\n onClick={onConnect}\n />\n )}\n </div>\n )}\n </div>\n </div>\n );\n};\n\nexport default IntegrationCard;\n","import { useState } from \"react\";\n\nimport { humanize, isPresent } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { MailSend } from \"neetoicons\";\nimport { Gmail as GmailIcon, Outlook as OutlookIcon } from \"neetoicons/misc\";\nimport { Spinner, Callout, Toastr } from \"neetoui\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport {\n GMAIL_OAUTH_CONNECT_URL,\n OUTLOOK_OAUTH_CONNECT_URL,\n} from \"apis/integrations/constants\";\nimport SmtpSetup from \"components/Smtp/Setup\";\nimport useGmail from \"hooks/integrations/useGmail\";\nimport useOutlook from \"hooks/integrations/useOutlook\";\nimport useSmtp from \"hooks/integrations/useSmtp\";\nimport useSparkpostDomain from \"hooks/integrations/useSparkpostDomain\";\n\nimport { ERROR_MESSAGES } from \"./constants\";\nimport IntegrationCard from \"./IntegrationCard\";\n\nconst EmailDeliveryScreen = ({\n indexRoute,\n ownerId,\n ownDomainSetupRoute,\n canManageIntegrations,\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n const [isSmtpPaneOpen, setIsSmtpPaneOpen] = useState(false);\n const { error, errorDescription } = useQueryParams();\n\n if (isPresent(error)) {\n let errorMessage = ERROR_MESSAGES[error];\n if (errorDescription) {\n errorMessage = `${errorMessage} ${errorDescription}`;\n }\n Toastr.error(errorMessage ?? humanize(error));\n\n history.replace(indexRoute);\n }\n\n const gmailIntegration = useGmail({\n ownerId,\n indexRoute,\n canManageIntegrations,\n });\n\n const outlookIntegration = useOutlook({\n ownerId,\n indexRoute,\n canManageIntegrations,\n });\n\n const sparkpostIntegration = useSparkpostDomain({\n ownerId,\n canManageIntegrations,\n });\n\n const smtpIntegration = useSmtp({ ownerId, canManageIntegrations });\n\n const {\n data: gmailData = {},\n isConnected: isGmailConnected,\n isLoading: isGmailLoading,\n isDestroying: isGmailDisconnecting,\n onDisconnect: onGmailDisconnect,\n exists: isGmailExists,\n } = gmailIntegration;\n\n const {\n data: outlookData = {},\n isConnected: isOutlookConnected,\n isLoading: isOutlookLoading,\n isDestroying: isOutlookDisconnecting,\n isWaitingForTestEmail: isOutlookWaitingForTestEmail,\n shadowAccount: isOutlookShadowAccount,\n onDisconnect: onOutlookDisconnect,\n exists: isOutlookExists,\n } = outlookIntegration;\n\n const {\n data: sparkpostData = {},\n isConnected: isSparkpostConnected,\n isLoading: isSparkpostLoading,\n onDisconnect: onSparkpostDisconnect,\n isDestroying: isSparkpostDisconnecting,\n exists: isSparkpostExists,\n } = sparkpostIntegration;\n\n const {\n data: smtpData = {},\n isConnected: isSmtpConnected,\n isLoading: isSmtpLoading,\n isDestroying: isSmtpDisconnecting,\n onDisconnect: onSmtpDisconnect,\n exists: isSmtpExists,\n } = smtpIntegration;\n\n const isLoading =\n isGmailLoading || isOutlookLoading || isSparkpostLoading || isSmtpLoading;\n\n const noneExists =\n !isGmailExists && !isOutlookExists && !isSparkpostExists && !isSmtpExists;\n const showGmail = noneExists || isGmailExists;\n const showOutlook = noneExists || isOutlookExists;\n const showSparkpost = noneExists || isSparkpostExists;\n const showSmtp = noneExists || isSmtpExists;\n\n const handleGmailConnect = () => {\n window.location.href = buildUrl(GMAIL_OAUTH_CONNECT_URL, { ownerId });\n };\n\n const handleOutlookConnect = () => {\n window.location.href = buildUrl(OUTLOOK_OAUTH_CONNECT_URL, { ownerId });\n };\n\n const handleOwnDomainConnect = () => {\n history.push(ownDomainSetupRoute);\n };\n\n const handleSmtpConnect = () => {\n setIsSmtpPaneOpen(true);\n };\n\n const handleSmtpPaneClose = () => {\n setIsSmtpPaneOpen(false);\n };\n\n const gmailEmail = prop(\"email\", gmailData);\n const outlookEmail = prop(\"email\", outlookData);\n const sparkpostEmail = prop(\"email\", sparkpostData);\n const smtpEmail = prop(\"email\", smtpData);\n\n const gmailTitle = t(\"neetoEmailDelivery.gmail.title\");\n const gmailDescription = isGmailConnected\n ? t(\"neetoEmailDelivery.sparkpost.emailDelivery.connectedEmail\", {\n email: gmailEmail,\n })\n : t(\"neetoEmailDelivery.gmail.description\");\n\n const outlookTitle = t(\"neetoEmailDelivery.outlook.title\");\n const outlookDescription = isOutlookConnected\n ? t(\"neetoEmailDelivery.sparkpost.emailDelivery.connectedEmail\", {\n email: outlookEmail,\n })\n : t(\"neetoEmailDelivery.outlook.description\");\n\n const ownDomainTitle = t(\n \"neetoEmailDelivery.sparkpost.emailDelivery.ownDomainTitle\"\n );\n\n const ownDomainDescription = isSparkpostConnected\n ? t(\"neetoEmailDelivery.sparkpost.emailDelivery.connectedEmail\", {\n email: sparkpostEmail,\n })\n : t(\"neetoEmailDelivery.sparkpost.emailDelivery.ownDomainDescription\");\n\n const smtpTitle = t(\"neetoEmailDelivery.smtp.title\");\n const smtpDescription = isSmtpConnected\n ? t(\"neetoEmailDelivery.sparkpost.emailDelivery.connectedEmail\", {\n email: smtpEmail,\n })\n : t(\"neetoEmailDelivery.smtp.description\");\n\n if (isLoading) {\n return (\n <div className=\"flex grow items-center justify-center w-full\">\n <Spinner />\n </div>\n );\n }\n\n const activeMessage =\n (isGmailConnected && t(\"neetoEmailDelivery.gmail.gmailConfigured\")) ||\n (isOutlookConnected && t(\"neetoEmailDelivery.outlook.outlookConfigured\")) ||\n (isSparkpostConnected &&\n t(\"neetoEmailDelivery.sparkpost.ownDomainConfigured\")) ||\n (isSmtpConnected && t(\"neetoEmailDelivery.smtp.smtpConfigured\"));\n\n return (\n <div className=\"min-h-0 w-full grow\">\n <div className=\"@container mx-auto space-y-6\">\n <div className=\"grid grid-cols-1 gap-3 py-1 @lg:grid-cols-2 @lg:gap-6 @3xl:grid-cols-3 @7xl:grid-cols-4\">\n {/* Gmail Option */}\n {showGmail && (\n <IntegrationCard\n connectButtonText=\"neetoEmailDelivery.gmail.connectGmail\"\n description={gmailDescription}\n icon={GmailIcon}\n isConnected={isGmailConnected}\n isDisconnecting={isGmailDisconnecting}\n title={gmailTitle}\n onConnect={handleGmailConnect}\n onDisconnect={onGmailDisconnect}\n />\n )}\n {/* Outlook Option */}\n {showOutlook && (\n <IntegrationCard\n connectButtonText=\"neetoEmailDelivery.outlook.connectOutlook\"\n description={outlookDescription}\n icon={OutlookIcon}\n isConnected={isOutlookConnected}\n isDisconnecting={isOutlookDisconnecting}\n title={outlookTitle}\n showDisconnect={\n isOutlookWaitingForTestEmail || isOutlookShadowAccount\n }\n onConnect={handleOutlookConnect}\n onDisconnect={onOutlookDisconnect}\n />\n )}\n {/* Own Domain (Sparkpost) Option */}\n {showSparkpost && (\n <IntegrationCard\n connectButtonText=\"neetoEmailDelivery.sparkpost.emailDelivery.setupDomain\"\n description={ownDomainDescription}\n icon={MailSend}\n isConnected={isSparkpostConnected}\n isDisconnecting={isSparkpostDisconnecting}\n title={ownDomainTitle}\n onConnect={handleOwnDomainConnect}\n onDisconnect={onSparkpostDisconnect}\n />\n )}\n {/* SMTP Option */}\n {showSmtp && (\n <IntegrationCard\n connectButtonText=\"neetoEmailDelivery.smtp.connectSmtp\"\n description={smtpDescription}\n icon={MailSend}\n isConnected={isSmtpConnected}\n isDisconnecting={isSmtpDisconnecting}\n title={smtpTitle}\n onConnect={handleSmtpConnect}\n onDisconnect={onSmtpDisconnect}\n />\n )}\n </div>\n {activeMessage && <Callout style=\"success\">{activeMessage}</Callout>}\n {isOutlookWaitingForTestEmail && (\n <Callout style=\"warning\">\n {t(\"neetoEmailDelivery.outlook.waitingForTestEmail\", {\n email: outlookEmail,\n })}\n </Callout>\n )}\n {isOutlookShadowAccount && (\n <Callout style=\"warning\">\n {t(\"neetoEmailDelivery.outlook.shadowAccountMessage\", {\n email: outlookEmail,\n })}\n </Callout>\n )}\n </div>\n <SmtpSetup\n {...{ ownerId }}\n isOpen={isSmtpPaneOpen}\n onCancel={handleSmtpPaneClose}\n onDone={handleSmtpPaneClose}\n />\n </div>\n );\n};\n\nexport default EmailDeliveryScreen;\n"],"names":["ENCRYPTION_OPTIONS","label","value","SMTP_ACCOUNT_INITIAL_VALUES","host","port","username","password","email","encryption","displayName","SMTP_ACCOUNT_VALIDATION_SCHEMA","yup","object","shape","string","trim","required","t","field","number","SmtpSetup","_ref","ownerId","onDone","onCancel","isOpen","_useTranslation","useTranslation","_useCreateSmtp","useCreateSmtp","isCreating","isPending","createSmtp","mutate","handleSubmit","values","smtp_account","onSuccess","_jsxs","Pane","size","onClose","children","_jsx","Header","Typography","style","weight","Form","className","formikProps","initialValues","validationSchema","onSubmit","Body","Callout","Input","name","type","Radio","map","option","Item","Footer","ActionBlock","cancelButtonProps","onClick","isSubmitting","submitButtonProps","useGmail","indexRoute","canManageIntegrations","_useState","useState","_useState2","_slicedToArray","isDisconnectAlertOpen","setIsDisconnectAlertOpen","history","useHistory","queryClient","useQueryClient","_useFetchGmail","useFetchGmail","enabled","isLoading","_useFetchGmail$data","data","_useDestroyGmail","useDestroyGmail","isDestroying","destroyIntegration","replace","onDisconnect","invalidateAllIntegrationQueries","exists","isConnected","connected","errorMessage","error","useOutlook","_useFetchOutlook","useFetchOutlook","_useFetchOutlook$data","_useDestroyOutlook","useDestroyOutlook","status","shadowAccount","isWaitingForTestEmail","useSmtp","_useFetchSmtp","useFetchSmtp","_useFetchSmtp$data","_useDestroySmtp","useDestroySmtp","ERROR_MESSAGES","gmail_permission_not_given","outlook_permission_not_given","outlook_invalid_client","outlook_nil_json_web_token","IntegrationCard","Icon","icon","title","description","isDisconnecting","onConnect","connectButtonText","_ref$disconnectButton","disconnectButtonText","_ref$connectedTagText","connectedTagText","_ref$showDisconnect","showDisconnect","shouldShowDisconnect","Tag","Button","loading","EmailDeliveryScreen","ownDomainSetupRoute","isSmtpPaneOpen","setIsSmtpPaneOpen","_useQueryParams","useQueryParams","errorDescription","isPresent","_errorMessage","concat","Toastr","humanize","gmailIntegration","outlookIntegration","sparkpostIntegration","useSparkpostDomain","smtpIntegration","_gmailIntegration$dat","gmailData","isGmailConnected","isGmailLoading","isGmailDisconnecting","onGmailDisconnect","isGmailExists","_outlookIntegration$d","outlookData","isOutlookConnected","isOutlookLoading","isOutlookDisconnecting","isOutlookWaitingForTestEmail","isOutlookShadowAccount","onOutlookDisconnect","isOutlookExists","_sparkpostIntegration","sparkpostData","isSparkpostConnected","isSparkpostLoading","onSparkpostDisconnect","isSparkpostDisconnecting","isSparkpostExists","_smtpIntegration$data","smtpData","isSmtpConnected","isSmtpLoading","isSmtpDisconnecting","onSmtpDisconnect","isSmtpExists","noneExists","showGmail","showOutlook","showSparkpost","showSmtp","handleGmailConnect","window","location","href","buildUrl","GMAIL_OAUTH_CONNECT_URL","handleOutlookConnect","OUTLOOK_OAUTH_CONNECT_URL","handleOwnDomainConnect","push","handleSmtpConnect","handleSmtpPaneClose","gmailEmail","prop","outlookEmail","sparkpostEmail","smtpEmail","gmailTitle","gmailDescription","outlookTitle","outlookDescription","ownDomainTitle","ownDomainDescription","smtpTitle","smtpDescription","Spinner","activeMessage","GmailIcon","OutlookIcon","MailSend"],"mappings":"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"}
@@ -8,8 +8,8 @@ var ActionBlock = require('@bigbinary/neetoui/formik/ActionBlock');
8
8
  var Form = require('@bigbinary/neetoui/formik/Form');
9
9
  var reactI18next = require('react-i18next');
10
10
  var reactRouterDom = require('react-router-dom');
11
- var constants = require('../constants-D3nzz3Te.js');
12
- var useSparkpostDomain = require('../useSparkpostDomain-Brk7SmL4.js');
11
+ var constants = require('../constants-DPhFGbtO.js');
12
+ var useSparkpostDomain = require('../useSparkpostDomain-DtEcunpG.js');
13
13
  var jsxRuntime = require('react/jsx-runtime');
14
14
  require('@babel/runtime/helpers/defineProperty');
15
15
  require('@babel/runtime/helpers/objectWithoutProperties');
@@ -47,7 +47,7 @@ var SparkpostDomainSetup = function SparkpostDomainSetup(_ref) {
47
47
  isCreating = _useSparkpostDomain.isCreating;
48
48
  var handleSubmit = function handleSubmit(values, _ref2) {
49
49
  var setFieldError = _ref2.setFieldError;
50
- onCreateDomain(values.email.trim(), function (response) {
50
+ onCreateDomain(values.email.trim(), values.displayName.trim(), function (response) {
51
51
  if (response !== null && response !== void 0 && response.alreadyVerified) {
52
52
  // Domain is already verified, go back to email delivery settings
53
53
  history.push(alreadyVerifiedRoute);
@@ -73,9 +73,7 @@ var SparkpostDomainSetup = function SparkpostDomainSetup(_ref) {
73
73
  children: /*#__PURE__*/jsxRuntime.jsx(Form, {
74
74
  className: "w-full",
75
75
  formikProps: {
76
- initialValues: {
77
- email: ""
78
- },
76
+ initialValues: constants.INITIAL_VALUES,
79
77
  validationSchema: constants.VALIDATION_SCHEMA,
80
78
  onSubmit: handleSubmit
81
79
  },
@@ -109,6 +107,11 @@ var SparkpostDomainSetup = function SparkpostDomainSetup(_ref) {
109
107
  domain: domain
110
108
  }),
111
109
  placeholder: t("neetoEmailDelivery.sparkpost.setup.emailPlaceholder")
110
+ }), /*#__PURE__*/jsxRuntime.jsx(Input, {
111
+ required: true,
112
+ name: "displayName",
113
+ helpText: t("neetoEmailDelivery.sparkpost.setup.displayNameHelp"),
114
+ label: t("neetoEmailDelivery.sparkpost.setup.displayNameLabel")
112
115
  })]
113
116
  })
114
117
  });
@@ -1 +1 @@
1
- {"version":3,"file":"SparkpostDomainSetup.js","sources":["../../app/javascript/src/components/SparkpostDomain/utils.js","../../app/javascript/src/components/SparkpostDomain/Setup.jsx"],"sourcesContent":["const getDomainFromEmail = email => email.trim().split(\"@\")[1];\n\nexport { getDomainFromEmail };\n","import { buildUrl } from \"neetocommons/utils\";\nimport CardLayout from \"neetomolecules/CardLayout\";\nimport { Callout } from \"neetoui\";\nimport { Input, ActionBlock, Form } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { PageContent, PageWrapper } from \"components/PageLayout\";\nimport useSparkpostDomain from \"hooks/integrations/useSparkpostDomain\";\n\nimport { VALIDATION_SCHEMA } from \"./constants\";\nimport { getDomainFromEmail } from \"./utils\";\n\nconst SparkpostDomainSetup = ({\n ownerId,\n alreadyVerifiedRoute,\n verifyRoute,\n onCancelRoute,\n canManageIntegrations,\n}) => {\n const { t } = useTranslation();\n\n const history = useHistory();\n\n const { onCreateDomain, isCreating } = useSparkpostDomain({\n ownerId,\n canManageIntegrations,\n });\n\n const handleSubmit = (values, { setFieldError }) => {\n onCreateDomain(\n values.email.trim(),\n response => {\n if (response?.alreadyVerified) {\n // Domain is already verified, go back to email delivery settings\n history.push(alreadyVerifiedRoute);\n } else {\n // Navigate to verification page with domain query parameter\n const domain = getDomainFromEmail(values.email);\n history.push(\n buildUrl(verifyRoute, { domain, email: values.email.trim() })\n );\n }\n },\n error => {\n const errorMessage =\n error?.response?.data?.error ||\n t(\"neetoEmailDelivery.sparkpost.setup.validation.setupFailed\");\n setFieldError(\"email\", errorMessage);\n }\n );\n };\n\n const handleCancel = () => {\n history.push(onCancelRoute);\n };\n\n return (\n <PageWrapper>\n <PageContent>\n <Form\n className=\"w-full\"\n formikProps={{\n initialValues: { email: \"\" },\n validationSchema: VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n {({ values }) => {\n const domain = values.email\n ? getDomainFromEmail(values.email)\n : t(\"neetoEmailDelivery.sparkpost.customDomain\");\n\n return (\n <CardLayout\n title={String(t(\"neetoEmailDelivery.sparkpost.setup.title\"))}\n actionBlock={\n <ActionBlock\n cancelButtonProps={{ onClick: handleCancel }}\n isSubmitting={isCreating}\n submitButtonProps={{\n label: t(\"neetoEmailDelivery.sparkpost.setup.setupEmail\"),\n }}\n />\n }\n description={String(\n t(\"neetoEmailDelivery.sparkpost.setup.description\")\n )}\n >\n <div className=\"flex flex-col gap-6\">\n <Callout style=\"warning\">\n {t(\"neetoEmailDelivery.sparkpost.setup.note\")}\n </Callout>\n <Input\n required\n unlimitedChars\n label={t(\"neetoEmailDelivery.sparkpost.setup.emailLabel\")}\n name=\"email\"\n type=\"email\"\n helpText={t(\n \"neetoEmailDelivery.sparkpost.setup.emailHelp\",\n { domain }\n )}\n placeholder={t(\n \"neetoEmailDelivery.sparkpost.setup.emailPlaceholder\"\n )}\n />\n </div>\n </CardLayout>\n );\n }}\n </Form>\n </PageContent>\n </PageWrapper>\n );\n};\n\nexport default SparkpostDomainSetup;\n"],"names":["getDomainFromEmail","email","trim","split","SparkpostDomainSetup","_ref","ownerId","alreadyVerifiedRoute","verifyRoute","onCancelRoute","canManageIntegrations","_useTranslation","useTranslation","t","history","useHistory","_useSparkpostDomain","useSparkpostDomain","onCreateDomain","isCreating","handleSubmit","values","_ref2","setFieldError","response","alreadyVerified","push","domain","buildUrl","error","_error$response","errorMessage","data","handleCancel","_jsx","PageWrapper","children","PageContent","Form","className","formikProps","initialValues","validationSchema","VALIDATION_SCHEMA","onSubmit","_ref3","CardLayout","title","String","actionBlock","ActionBlock","cancelButtonProps","onClick","isSubmitting","submitButtonProps","label","description","_jsxs","Callout","style","Input","required","unlimitedChars","name","type","helpText","placeholder"],"mappings":"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"}
1
+ {"version":3,"file":"SparkpostDomainSetup.js","sources":["../../app/javascript/src/components/SparkpostDomain/utils.js","../../app/javascript/src/components/SparkpostDomain/Setup.jsx"],"sourcesContent":["const getDomainFromEmail = email => email.trim().split(\"@\")[1];\n\nexport { getDomainFromEmail };\n","import { buildUrl } from \"neetocommons/utils\";\nimport CardLayout from \"neetomolecules/CardLayout\";\nimport { Callout } from \"neetoui\";\nimport { Input, ActionBlock, Form } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { PageContent, PageWrapper } from \"components/PageLayout\";\nimport useSparkpostDomain from \"hooks/integrations/useSparkpostDomain\";\n\nimport { VALIDATION_SCHEMA, INITIAL_VALUES } from \"./constants\";\nimport { getDomainFromEmail } from \"./utils\";\n\nconst SparkpostDomainSetup = ({\n ownerId,\n alreadyVerifiedRoute,\n verifyRoute,\n onCancelRoute,\n canManageIntegrations,\n}) => {\n const { t } = useTranslation();\n\n const history = useHistory();\n\n const { onCreateDomain, isCreating } = useSparkpostDomain({\n ownerId,\n canManageIntegrations,\n });\n\n const handleSubmit = (values, { setFieldError }) => {\n onCreateDomain(\n values.email.trim(),\n values.displayName.trim(),\n response => {\n if (response?.alreadyVerified) {\n // Domain is already verified, go back to email delivery settings\n history.push(alreadyVerifiedRoute);\n } else {\n // Navigate to verification page with domain query parameter\n const domain = getDomainFromEmail(values.email);\n history.push(\n buildUrl(verifyRoute, { domain, email: values.email.trim() })\n );\n }\n },\n error => {\n const errorMessage =\n error?.response?.data?.error ||\n t(\"neetoEmailDelivery.sparkpost.setup.validation.setupFailed\");\n setFieldError(\"email\", errorMessage);\n }\n );\n };\n\n const handleCancel = () => {\n history.push(onCancelRoute);\n };\n\n return (\n <PageWrapper>\n <PageContent>\n <Form\n className=\"w-full\"\n formikProps={{\n initialValues: INITIAL_VALUES,\n validationSchema: VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n {({ values }) => {\n const domain = values.email\n ? getDomainFromEmail(values.email)\n : t(\"neetoEmailDelivery.sparkpost.customDomain\");\n\n return (\n <CardLayout\n title={String(t(\"neetoEmailDelivery.sparkpost.setup.title\"))}\n actionBlock={\n <ActionBlock\n cancelButtonProps={{ onClick: handleCancel }}\n isSubmitting={isCreating}\n submitButtonProps={{\n label: t(\"neetoEmailDelivery.sparkpost.setup.setupEmail\"),\n }}\n />\n }\n description={String(\n t(\"neetoEmailDelivery.sparkpost.setup.description\")\n )}\n >\n <div className=\"flex flex-col gap-6\">\n <Callout style=\"warning\">\n {t(\"neetoEmailDelivery.sparkpost.setup.note\")}\n </Callout>\n <Input\n required\n unlimitedChars\n label={t(\"neetoEmailDelivery.sparkpost.setup.emailLabel\")}\n name=\"email\"\n type=\"email\"\n helpText={t(\n \"neetoEmailDelivery.sparkpost.setup.emailHelp\",\n { domain }\n )}\n placeholder={t(\n \"neetoEmailDelivery.sparkpost.setup.emailPlaceholder\"\n )}\n />\n <Input\n required\n name=\"displayName\"\n helpText={t(\n \"neetoEmailDelivery.sparkpost.setup.displayNameHelp\"\n )}\n label={t(\n \"neetoEmailDelivery.sparkpost.setup.displayNameLabel\"\n )}\n />\n </div>\n </CardLayout>\n );\n }}\n </Form>\n </PageContent>\n </PageWrapper>\n );\n};\n\nexport default SparkpostDomainSetup;\n"],"names":["getDomainFromEmail","email","trim","split","SparkpostDomainSetup","_ref","ownerId","alreadyVerifiedRoute","verifyRoute","onCancelRoute","canManageIntegrations","_useTranslation","useTranslation","t","history","useHistory","_useSparkpostDomain","useSparkpostDomain","onCreateDomain","isCreating","handleSubmit","values","_ref2","setFieldError","displayName","response","alreadyVerified","push","domain","buildUrl","error","_error$response","errorMessage","data","handleCancel","_jsx","PageWrapper","children","PageContent","Form","className","formikProps","initialValues","INITIAL_VALUES","validationSchema","VALIDATION_SCHEMA","onSubmit","_ref3","CardLayout","title","String","actionBlock","ActionBlock","cancelButtonProps","onClick","isSubmitting","submitButtonProps","label","description","_jsxs","Callout","style","Input","required","unlimitedChars","name","type","helpText","placeholder"],"mappings":"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"}
@@ -8,8 +8,8 @@ var Spinner = require('@bigbinary/neetoui/Spinner');
8
8
  var ramda = require('ramda');
9
9
  var reactI18next = require('react-i18next');
10
10
  var reactRouterDom = require('react-router-dom');
11
- var constants = require('../constants-D3nzz3Te.js');
12
- var useSparkpostDomain = require('../useSparkpostDomain-Brk7SmL4.js');
11
+ var constants = require('../constants-DPhFGbtO.js');
12
+ var useSparkpostDomain = require('../useSparkpostDomain-DtEcunpG.js');
13
13
  var useSparkpostApi = require('../useSparkpostApi-D9NOjTNA.js');
14
14
  var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
15
15
  var Typography = require('@bigbinary/neetoui/Typography');
package/dist/cjs/index.js CHANGED
@@ -31,11 +31,11 @@ require('../useOutlookIntegrationApi-BC-RPHmJ.js');
31
31
  require('i18next');
32
32
  require('yup');
33
33
  require('react/jsx-runtime');
34
- require('../useSparkpostDomain-Brk7SmL4.js');
34
+ require('../useSparkpostDomain-DtEcunpG.js');
35
35
  require('@bigbinary/neetoui/Button');
36
36
  require('@bigbinary/neetoui/Tag');
37
37
  require('@bigbinary/neeto-molecules/CardLayout');
38
- require('../constants-D3nzz3Te.js');
38
+ require('../constants-DPhFGbtO.js');
39
39
  require('@babel/runtime/helpers/objectWithoutProperties');
40
40
  require('classnames');
41
41
  require('@bigbinary/neeto-molecules/Container');
@@ -81,15 +81,23 @@ var VERIFICATION_STATUS_CONFIG = {
81
81
  descriptionKey: "neetoEmailDelivery.sparkpost.status.pendingDescription"
82
82
  }
83
83
  };
84
+ var INITIAL_VALUES = {
85
+ email: "",
86
+ displayName: ""
87
+ };
84
88
  var VALIDATION_SCHEMA = yup__namespace.object().shape({
85
- email: yup__namespace.string().trim().required(i18next.t("neetoEmailDelivery.sparkpost.setup.validation.emailRequired")).email(i18next.t("neetoEmailDelivery.sparkpost.setup.validation.emailInvalid"))
89
+ email: yup__namespace.string().trim().required(i18next.t("neetoEmailDelivery.sparkpost.setup.validation.emailRequired")).email(i18next.t("neetoEmailDelivery.sparkpost.setup.validation.emailInvalid")),
90
+ displayName: yup__namespace.string().trim().required(i18next.t("neetoEmailDelivery.sparkpost.setup.validation.requiredField", {
91
+ field: i18next.t("neetoEmailDelivery.sparkpost.setup.displayNameLabel")
92
+ }))
86
93
  });
87
94
 
88
95
  exports.DEFAULT_COLOR = DEFAULT_COLOR;
96
+ exports.INITIAL_VALUES = INITIAL_VALUES;
89
97
  exports.PURPOSE_COLORS = PURPOSE_COLORS;
90
98
  exports.PageContent = PageContent;
91
99
  exports.PageWrapper = PageWrapper;
92
100
  exports.VALIDATION_SCHEMA = VALIDATION_SCHEMA;
93
101
  exports.VERIFICATION_STATUSES = VERIFICATION_STATUSES;
94
102
  exports.VERIFICATION_STATUS_CONFIG = VERIFICATION_STATUS_CONFIG;
95
- //# sourceMappingURL=constants-D3nzz3Te.js.map
103
+ //# sourceMappingURL=constants-DPhFGbtO.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants-DPhFGbtO.js","sources":["../app/javascript/src/components/PageLayout.jsx","../app/javascript/src/components/SparkpostDomain/constants.js"],"sourcesContent":["import { forwardRef, memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport Container from \"neetomolecules/Container\";\nimport Header from \"neetomolecules/Header\";\nimport { useTranslation } from \"react-i18next\";\n\nconst PageWrapper = ({ children, className = \"\" }) => (\n <Container {...{ className }}>{children}</Container>\n);\n\nconst PageHeader = ({\n title,\n actionBlock,\n breadcrumbs,\n titleHelpPopoverProps,\n ...otherProps\n}) => {\n const { t } = useTranslation();\n const defaultBreadcrumbs = [\n { text: t(\"neetoEmailDelivery.settings\"), link: \"/\" },\n { text: title },\n ];\n\n return (\n <Header\n {...{ title, titleHelpPopoverProps, ...otherProps }}\n actionBlock={actionBlock && actionBlock}\n breadcrumbs={breadcrumbs ?? defaultBreadcrumbs}\n size=\"small\"\n />\n );\n};\n\nconst customPropEqualityCheck = (prevProps, nextProps) =>\n prevProps.title === nextProps.title &&\n prevProps.breadcrumbs === nextProps.breadcrumbs;\nconst MemoizedPageHeader = memo(PageHeader, customPropEqualityCheck);\n\nconst PageContent = forwardRef(({ children, className = \"\" }, ref) => (\n <div className=\"min-h-0 w-full grow\">\n <div {...{ ref }} className={classnames([\"mx-auto max-w-7xl\", className])}>\n {children}\n </div>\n </div>\n));\n\nPageContent.displayName = \"PageContent\";\n\nexport { PageWrapper, MemoizedPageHeader as PageHeader, PageContent };\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const PURPOSE_COLORS = { dkim: \"info\", txt: \"warning\" };\nexport const DEFAULT_COLOR = \"secondary\";\n\nexport const VERIFICATION_STATUSES = {\n SUCCESS: \"success\",\n ERROR: \"error\",\n PENDING: \"pending\",\n};\n\nexport const VERIFICATION_STATUS_CONFIG = {\n success: {\n style: \"success\",\n titleKey: \"neetoEmailDelivery.sparkpost.status.successTitle\",\n descriptionKey: \"neetoEmailDelivery.sparkpost.status.successDescription\",\n },\n error: {\n style: \"danger\",\n titleKey: \"neetoEmailDelivery.sparkpost.status.errorTitle\",\n descriptionKey: \"neetoEmailDelivery.sparkpost.status.errorDescription\",\n },\n pending: {\n style: \"warning\",\n titleKey: \"neetoEmailDelivery.sparkpost.status.pendingTitle\",\n descriptionKey: \"neetoEmailDelivery.sparkpost.status.pendingDescription\",\n },\n};\n\nexport const INITIAL_VALUES = { email: \"\", displayName: \"\" };\n\nexport const VALIDATION_SCHEMA = yup.object().shape({\n email: yup\n .string()\n .trim()\n .required(t(\"neetoEmailDelivery.sparkpost.setup.validation.emailRequired\"))\n .email(t(\"neetoEmailDelivery.sparkpost.setup.validation.emailInvalid\")),\n displayName: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.sparkpost.setup.validation.requiredField\", {\n field: t(\"neetoEmailDelivery.sparkpost.setup.displayNameLabel\"),\n })\n ),\n});\n"],"names":["PageWrapper","_ref","children","_ref$className","className","_jsx","Container","PageContent","forwardRef","_ref3","ref","_ref3$className","classnames","displayName","PURPOSE_COLORS","dkim","txt","DEFAULT_COLOR","VERIFICATION_STATUSES","SUCCESS","ERROR","PENDING","VERIFICATION_STATUS_CONFIG","success","style","titleKey","descriptionKey","error","pending","INITIAL_VALUES","email","VALIDATION_SCHEMA","yup","object","shape","string","trim","required","t","field"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,IAAMA,WAAW,GAAG,SAAdA,WAAWA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAAC,cAAA,GAAAF,IAAA,CAAEG,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,cAAA;EAAA,oBAC7CE,cAAA,CAACC,SAAS,EAAA;AAAOF,IAAAA,SAAS,EAATA,SAAS;AAAAF,IAAAA,QAAA,EAAKA;AAAQ,GAAY,CAAC;AAAA;AA+BtD,IAAMK,WAAW,gBAAGC,gBAAU,CAAC,UAAAC,KAAA,EAA+BC,GAAG,EAAA;AAAA,EAAA,IAA/BR,QAAQ,GAAAO,KAAA,CAARP,QAAQ;IAAAS,eAAA,GAAAF,KAAA,CAAEL,SAAS;AAATA,IAAAA,SAAS,GAAAO,eAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,eAAA;AAAA,EAAA,oBACxDN,cAAA,CAAA,KAAA,EAAA;AAAKD,IAAAA,SAAS,EAAC,qBAAqB;AAAAF,IAAAA,QAAA,eAClCG,cAAA,CAAA,KAAA,EAAA;AAAWK,MAAAA,GAAG,EAAHA,GAAG;MAAIN,SAAS,EAAEQ,UAAU,CAAC,CAAC,mBAAmB,EAAER,SAAS,CAAC,CAAE;AAAAF,MAAAA,QAAA,EACvEA;KACE;AAAC,GACH,CAAC;AAAA,CACP;AAEDK,WAAW,CAACM,WAAW,GAAG,aAAa;;AC5ChC,IAAMC,cAAc,GAAG;AAAEC,EAAAA,IAAI,EAAE,MAAM;AAAEC,EAAAA,GAAG,EAAE;AAAU;AACtD,IAAMC,aAAa,GAAG;AAEtB,IAAMC,qBAAqB,GAAG;AACnCC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,OAAO,EAAE;AACX;AAEO,IAAMC,0BAA0B,GAAG;AACxCC,EAAAA,OAAO,EAAE;AACPC,IAAAA,KAAK,EAAE,SAAS;AAChBC,IAAAA,QAAQ,EAAE,kDAAkD;AAC5DC,IAAAA,cAAc,EAAE;GACjB;AACDC,EAAAA,KAAK,EAAE;AACLH,IAAAA,KAAK,EAAE,QAAQ;AACfC,IAAAA,QAAQ,EAAE,gDAAgD;AAC1DC,IAAAA,cAAc,EAAE;GACjB;AACDE,EAAAA,OAAO,EAAE;AACPJ,IAAAA,KAAK,EAAE,SAAS;AAChBC,IAAAA,QAAQ,EAAE,kDAAkD;AAC5DC,IAAAA,cAAc,EAAE;AAClB;AACF;AAEO,IAAMG,cAAc,GAAG;AAAEC,EAAAA,KAAK,EAAE,EAAE;AAAEjB,EAAAA,WAAW,EAAE;AAAG;AAEpD,IAAMkB,iBAAiB,GAAGC,cAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAC;EAClDJ,KAAK,EAAEE,cAAG,CACPG,MAAM,EAAE,CACRC,IAAI,EAAE,CACNC,QAAQ,CAACC,SAAC,CAAC,6DAA6D,CAAC,CAAC,CAC1ER,KAAK,CAACQ,SAAC,CAAC,4DAA4D,CAAC,CAAC;AACzEzB,EAAAA,WAAW,EAAEmB,cAAG,CACbG,MAAM,EAAE,CACRC,IAAI,EAAE,CACNC,QAAQ,CACPC,SAAC,CAAC,6DAA6D,EAAE;IAC/DC,KAAK,EAAED,SAAC,CAAC,qDAAqD;AAChE,GAAC,CACH;AACJ,CAAC;;;;;;;;;;;"}
@@ -60,9 +60,16 @@ var VERIFICATION_STATUS_CONFIG = {
60
60
  descriptionKey: "neetoEmailDelivery.sparkpost.status.pendingDescription"
61
61
  }
62
62
  };
63
+ var INITIAL_VALUES = {
64
+ email: "",
65
+ displayName: ""
66
+ };
63
67
  var VALIDATION_SCHEMA = yup.object().shape({
64
- email: yup.string().trim().required(t("neetoEmailDelivery.sparkpost.setup.validation.emailRequired")).email(t("neetoEmailDelivery.sparkpost.setup.validation.emailInvalid"))
68
+ email: yup.string().trim().required(t("neetoEmailDelivery.sparkpost.setup.validation.emailRequired")).email(t("neetoEmailDelivery.sparkpost.setup.validation.emailInvalid")),
69
+ displayName: yup.string().trim().required(t("neetoEmailDelivery.sparkpost.setup.validation.requiredField", {
70
+ field: t("neetoEmailDelivery.sparkpost.setup.displayNameLabel")
71
+ }))
65
72
  });
66
73
 
67
- export { DEFAULT_COLOR as D, PageWrapper as P, VALIDATION_SCHEMA as V, PageContent as a, PURPOSE_COLORS as b, VERIFICATION_STATUS_CONFIG as c, VERIFICATION_STATUSES as d };
68
- //# sourceMappingURL=constants-Cvxv8ly7.js.map
74
+ export { DEFAULT_COLOR as D, INITIAL_VALUES as I, PageWrapper as P, VALIDATION_SCHEMA as V, PageContent as a, PURPOSE_COLORS as b, VERIFICATION_STATUS_CONFIG as c, VERIFICATION_STATUSES as d };
75
+ //# sourceMappingURL=constants-DbB8UFcr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants-DbB8UFcr.js","sources":["../app/javascript/src/components/PageLayout.jsx","../app/javascript/src/components/SparkpostDomain/constants.js"],"sourcesContent":["import { forwardRef, memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport Container from \"neetomolecules/Container\";\nimport Header from \"neetomolecules/Header\";\nimport { useTranslation } from \"react-i18next\";\n\nconst PageWrapper = ({ children, className = \"\" }) => (\n <Container {...{ className }}>{children}</Container>\n);\n\nconst PageHeader = ({\n title,\n actionBlock,\n breadcrumbs,\n titleHelpPopoverProps,\n ...otherProps\n}) => {\n const { t } = useTranslation();\n const defaultBreadcrumbs = [\n { text: t(\"neetoEmailDelivery.settings\"), link: \"/\" },\n { text: title },\n ];\n\n return (\n <Header\n {...{ title, titleHelpPopoverProps, ...otherProps }}\n actionBlock={actionBlock && actionBlock}\n breadcrumbs={breadcrumbs ?? defaultBreadcrumbs}\n size=\"small\"\n />\n );\n};\n\nconst customPropEqualityCheck = (prevProps, nextProps) =>\n prevProps.title === nextProps.title &&\n prevProps.breadcrumbs === nextProps.breadcrumbs;\nconst MemoizedPageHeader = memo(PageHeader, customPropEqualityCheck);\n\nconst PageContent = forwardRef(({ children, className = \"\" }, ref) => (\n <div className=\"min-h-0 w-full grow\">\n <div {...{ ref }} className={classnames([\"mx-auto max-w-7xl\", className])}>\n {children}\n </div>\n </div>\n));\n\nPageContent.displayName = \"PageContent\";\n\nexport { PageWrapper, MemoizedPageHeader as PageHeader, PageContent };\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const PURPOSE_COLORS = { dkim: \"info\", txt: \"warning\" };\nexport const DEFAULT_COLOR = \"secondary\";\n\nexport const VERIFICATION_STATUSES = {\n SUCCESS: \"success\",\n ERROR: \"error\",\n PENDING: \"pending\",\n};\n\nexport const VERIFICATION_STATUS_CONFIG = {\n success: {\n style: \"success\",\n titleKey: \"neetoEmailDelivery.sparkpost.status.successTitle\",\n descriptionKey: \"neetoEmailDelivery.sparkpost.status.successDescription\",\n },\n error: {\n style: \"danger\",\n titleKey: \"neetoEmailDelivery.sparkpost.status.errorTitle\",\n descriptionKey: \"neetoEmailDelivery.sparkpost.status.errorDescription\",\n },\n pending: {\n style: \"warning\",\n titleKey: \"neetoEmailDelivery.sparkpost.status.pendingTitle\",\n descriptionKey: \"neetoEmailDelivery.sparkpost.status.pendingDescription\",\n },\n};\n\nexport const INITIAL_VALUES = { email: \"\", displayName: \"\" };\n\nexport const VALIDATION_SCHEMA = yup.object().shape({\n email: yup\n .string()\n .trim()\n .required(t(\"neetoEmailDelivery.sparkpost.setup.validation.emailRequired\"))\n .email(t(\"neetoEmailDelivery.sparkpost.setup.validation.emailInvalid\")),\n displayName: yup\n .string()\n .trim()\n .required(\n t(\"neetoEmailDelivery.sparkpost.setup.validation.requiredField\", {\n field: t(\"neetoEmailDelivery.sparkpost.setup.displayNameLabel\"),\n })\n ),\n});\n"],"names":["PageWrapper","_ref","children","_ref$className","className","_jsx","Container","PageContent","forwardRef","_ref3","ref","_ref3$className","classnames","displayName","PURPOSE_COLORS","dkim","txt","DEFAULT_COLOR","VERIFICATION_STATUSES","SUCCESS","ERROR","PENDING","VERIFICATION_STATUS_CONFIG","success","style","titleKey","descriptionKey","error","pending","INITIAL_VALUES","email","VALIDATION_SCHEMA","yup","object","shape","string","trim","required","t","field"],"mappings":";;;;;;;;;;;AAOA,IAAMA,WAAW,GAAG,SAAdA,WAAWA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAAC,cAAA,GAAAF,IAAA,CAAEG,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,cAAA;EAAA,oBAC7CE,GAAA,CAACC,SAAS,EAAA;AAAOF,IAAAA,SAAS,EAATA,SAAS;AAAAF,IAAAA,QAAA,EAAKA;AAAQ,GAAY,CAAC;AAAA;AA+BtD,IAAMK,WAAW,gBAAGC,UAAU,CAAC,UAAAC,KAAA,EAA+BC,GAAG,EAAA;AAAA,EAAA,IAA/BR,QAAQ,GAAAO,KAAA,CAARP,QAAQ;IAAAS,eAAA,GAAAF,KAAA,CAAEL,SAAS;AAATA,IAAAA,SAAS,GAAAO,eAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,eAAA;AAAA,EAAA,oBACxDN,GAAA,CAAA,KAAA,EAAA;AAAKD,IAAAA,SAAS,EAAC,qBAAqB;AAAAF,IAAAA,QAAA,eAClCG,GAAA,CAAA,KAAA,EAAA;AAAWK,MAAAA,GAAG,EAAHA,GAAG;MAAIN,SAAS,EAAEQ,UAAU,CAAC,CAAC,mBAAmB,EAAER,SAAS,CAAC,CAAE;AAAAF,MAAAA,QAAA,EACvEA;KACE;AAAC,GACH,CAAC;AAAA,CACP;AAEDK,WAAW,CAACM,WAAW,GAAG,aAAa;;AC5ChC,IAAMC,cAAc,GAAG;AAAEC,EAAAA,IAAI,EAAE,MAAM;AAAEC,EAAAA,GAAG,EAAE;AAAU;AACtD,IAAMC,aAAa,GAAG;AAEtB,IAAMC,qBAAqB,GAAG;AACnCC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,OAAO,EAAE;AACX;AAEO,IAAMC,0BAA0B,GAAG;AACxCC,EAAAA,OAAO,EAAE;AACPC,IAAAA,KAAK,EAAE,SAAS;AAChBC,IAAAA,QAAQ,EAAE,kDAAkD;AAC5DC,IAAAA,cAAc,EAAE;GACjB;AACDC,EAAAA,KAAK,EAAE;AACLH,IAAAA,KAAK,EAAE,QAAQ;AACfC,IAAAA,QAAQ,EAAE,gDAAgD;AAC1DC,IAAAA,cAAc,EAAE;GACjB;AACDE,EAAAA,OAAO,EAAE;AACPJ,IAAAA,KAAK,EAAE,SAAS;AAChBC,IAAAA,QAAQ,EAAE,kDAAkD;AAC5DC,IAAAA,cAAc,EAAE;AAClB;AACF;AAEO,IAAMG,cAAc,GAAG;AAAEC,EAAAA,KAAK,EAAE,EAAE;AAAEjB,EAAAA,WAAW,EAAE;AAAG;AAEpD,IAAMkB,iBAAiB,GAAGC,GAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAC;EAClDJ,KAAK,EAAEE,GAAG,CACPG,MAAM,EAAE,CACRC,IAAI,EAAE,CACNC,QAAQ,CAACC,CAAC,CAAC,6DAA6D,CAAC,CAAC,CAC1ER,KAAK,CAACQ,CAAC,CAAC,4DAA4D,CAAC,CAAC;AACzEzB,EAAAA,WAAW,EAAEmB,GAAG,CACbG,MAAM,EAAE,CACRC,IAAI,EAAE,CACNC,QAAQ,CACPC,CAAC,CAAC,6DAA6D,EAAE;IAC/DC,KAAK,EAAED,CAAC,CAAC,qDAAqD;AAChE,GAAC,CACH;AACJ,CAAC;;;;"}
package/dist/index.js CHANGED
@@ -29,11 +29,11 @@ import './useOutlookIntegrationApi-b_mNVfRE.js';
29
29
  import 'i18next';
30
30
  import 'yup';
31
31
  import 'react/jsx-runtime';
32
- import './useSparkpostDomain-CuX-Gl5a.js';
32
+ import './useSparkpostDomain-De-Fz3ek.js';
33
33
  import '@bigbinary/neetoui/Button';
34
34
  import '@bigbinary/neetoui/Tag';
35
35
  import '@bigbinary/neeto-molecules/CardLayout';
36
- import './constants-Cvxv8ly7.js';
36
+ import './constants-DbB8UFcr.js';
37
37
  import '@babel/runtime/helpers/objectWithoutProperties';
38
38
  import 'classnames';
39
39
  import '@bigbinary/neeto-molecules/Container';
@@ -36,10 +36,11 @@ var useSparkpostDomain = function useSparkpostDomain(_ref) {
36
36
  }),
37
37
  isDestroying = _useDestroySparkpostD.isPending,
38
38
  destroyDomain = _useDestroySparkpostD.mutate;
39
- var onCreateDomain = function onCreateDomain(email, _onSuccess, _onError) {
39
+ var onCreateDomain = function onCreateDomain(email, displayName, _onSuccess, _onError) {
40
40
  createDomain({
41
41
  sparkpostDomain: {
42
- email: email
42
+ email: email,
43
+ displayName: displayName
43
44
  }
44
45
  }, {
45
46
  onSuccess: function onSuccess(response) {
@@ -95,4 +96,4 @@ var useSparkpostDomain = function useSparkpostDomain(_ref) {
95
96
  };
96
97
 
97
98
  export { useSparkpostDomain as u };
98
- //# sourceMappingURL=useSparkpostDomain-CuX-Gl5a.js.map
99
+ //# sourceMappingURL=useSparkpostDomain-De-Fz3ek.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSparkpostDomain-De-Fz3ek.js","sources":["../app/javascript/src/hooks/integrations/useSparkpostDomain.js"],"sourcesContent":["import { useState } from \"react\";\n\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { Toastr } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n useFetchSparkpostDomain,\n useCreateSparkpostDomain,\n useVerifySparkpostDomain,\n useDestroySparkpostDomain,\n} from \"hooks/reactQuery/integrations/useSparkpostApi\";\nimport { invalidateAllIntegrationQueries } from \"src/utils\";\n\nconst useSparkpostDomain = ({ ownerId, canManageIntegrations }) => {\n const [isDisconnectAlertOpen, setIsDisconnectAlertOpen] = useState(false);\n const { t } = useTranslation();\n const queryClient = useQueryClient();\n\n const { isLoading, data = {} } = useFetchSparkpostDomain(ownerId, {\n enabled: canManageIntegrations,\n });\n\n const { isPending: isCreating, mutate: createDomain } =\n useCreateSparkpostDomain({ ownerId });\n\n const { isPending: isVerifying, mutate: verifyDomain } =\n useVerifySparkpostDomain({ ownerId });\n\n const { isPending: isDestroying, mutate: destroyDomain } =\n useDestroySparkpostDomain({ ownerId });\n\n const onCreateDomain = (email, displayName, onSuccess, onError) => {\n createDomain(\n { sparkpostDomain: { email, displayName } },\n {\n onSuccess: response => {\n if (response?.alreadyVerified) {\n Toastr.success(\n t(\"neetoEmailDelivery.sparkpost.toasts.domainVerifiedConnected\")\n );\n }\n onSuccess?.(response);\n },\n onError: error => {\n onError?.(error);\n },\n }\n );\n };\n\n const onVerifyDomain = (onSuccess, onError) => {\n verifyDomain(false, {\n onSuccess: response => {\n if (response?.verified) {\n Toastr.success(\n t(\"neetoEmailDelivery.sparkpost.toasts.domainVerified\")\n );\n } else {\n Toastr.warning(\n t(\"neetoEmailDelivery.sparkpost.toasts.verificationPending\")\n );\n }\n onSuccess?.(response);\n },\n onError: error => {\n onError?.(error);\n },\n });\n };\n\n const onDisconnect = onSuccess => {\n destroyDomain(false, {\n onSuccess: () => {\n Toastr.success(\n t(\"neetoEmailDelivery.sparkpost.toasts.domainDisconnected\")\n );\n setIsDisconnectAlertOpen(false);\n invalidateAllIntegrationQueries(queryClient, ownerId);\n onSuccess?.();\n },\n });\n };\n\n return {\n data,\n isLoading,\n isCreating,\n isVerifying,\n isDestroying,\n exists: data?.exists,\n isConnected: data?.connected || false,\n isDisconnectAlertOpen,\n setIsDisconnectAlertOpen,\n onCreateDomain,\n onVerifyDomain,\n onDisconnect,\n };\n};\n\nexport default useSparkpostDomain;\n"],"names":["useSparkpostDomain","_ref","ownerId","canManageIntegrations","_useState","useState","_useState2","_slicedToArray","isDisconnectAlertOpen","setIsDisconnectAlertOpen","_useTranslation","useTranslation","t","queryClient","useQueryClient","_useFetchSparkpostDom","useFetchSparkpostDomain","enabled","isLoading","_useFetchSparkpostDom2","data","_useCreateSparkpostDo","useCreateSparkpostDomain","isCreating","isPending","createDomain","mutate","_useVerifySparkpostDo","useVerifySparkpostDomain","isVerifying","verifyDomain","_useDestroySparkpostD","useDestroySparkpostDomain","isDestroying","destroyDomain","onCreateDomain","email","displayName","onSuccess","onError","sparkpostDomain","response","alreadyVerified","Toastr","success","error","onVerifyDomain","verified","warning","onDisconnect","invalidateAllIntegrationQueries","exists","isConnected","connected"],"mappings":"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"}
@@ -38,10 +38,11 @@ var useSparkpostDomain = function useSparkpostDomain(_ref) {
38
38
  }),
39
39
  isDestroying = _useDestroySparkpostD.isPending,
40
40
  destroyDomain = _useDestroySparkpostD.mutate;
41
- var onCreateDomain = function onCreateDomain(email, _onSuccess, _onError) {
41
+ var onCreateDomain = function onCreateDomain(email, displayName, _onSuccess, _onError) {
42
42
  createDomain({
43
43
  sparkpostDomain: {
44
- email: email
44
+ email: email,
45
+ displayName: displayName
45
46
  }
46
47
  }, {
47
48
  onSuccess: function onSuccess(response) {
@@ -97,4 +98,4 @@ var useSparkpostDomain = function useSparkpostDomain(_ref) {
97
98
  };
98
99
 
99
100
  exports.useSparkpostDomain = useSparkpostDomain;
100
- //# sourceMappingURL=useSparkpostDomain-Brk7SmL4.js.map
101
+ //# sourceMappingURL=useSparkpostDomain-DtEcunpG.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSparkpostDomain-DtEcunpG.js","sources":["../app/javascript/src/hooks/integrations/useSparkpostDomain.js"],"sourcesContent":["import { useState } from \"react\";\n\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { Toastr } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n useFetchSparkpostDomain,\n useCreateSparkpostDomain,\n useVerifySparkpostDomain,\n useDestroySparkpostDomain,\n} from \"hooks/reactQuery/integrations/useSparkpostApi\";\nimport { invalidateAllIntegrationQueries } from \"src/utils\";\n\nconst useSparkpostDomain = ({ ownerId, canManageIntegrations }) => {\n const [isDisconnectAlertOpen, setIsDisconnectAlertOpen] = useState(false);\n const { t } = useTranslation();\n const queryClient = useQueryClient();\n\n const { isLoading, data = {} } = useFetchSparkpostDomain(ownerId, {\n enabled: canManageIntegrations,\n });\n\n const { isPending: isCreating, mutate: createDomain } =\n useCreateSparkpostDomain({ ownerId });\n\n const { isPending: isVerifying, mutate: verifyDomain } =\n useVerifySparkpostDomain({ ownerId });\n\n const { isPending: isDestroying, mutate: destroyDomain } =\n useDestroySparkpostDomain({ ownerId });\n\n const onCreateDomain = (email, displayName, onSuccess, onError) => {\n createDomain(\n { sparkpostDomain: { email, displayName } },\n {\n onSuccess: response => {\n if (response?.alreadyVerified) {\n Toastr.success(\n t(\"neetoEmailDelivery.sparkpost.toasts.domainVerifiedConnected\")\n );\n }\n onSuccess?.(response);\n },\n onError: error => {\n onError?.(error);\n },\n }\n );\n };\n\n const onVerifyDomain = (onSuccess, onError) => {\n verifyDomain(false, {\n onSuccess: response => {\n if (response?.verified) {\n Toastr.success(\n t(\"neetoEmailDelivery.sparkpost.toasts.domainVerified\")\n );\n } else {\n Toastr.warning(\n t(\"neetoEmailDelivery.sparkpost.toasts.verificationPending\")\n );\n }\n onSuccess?.(response);\n },\n onError: error => {\n onError?.(error);\n },\n });\n };\n\n const onDisconnect = onSuccess => {\n destroyDomain(false, {\n onSuccess: () => {\n Toastr.success(\n t(\"neetoEmailDelivery.sparkpost.toasts.domainDisconnected\")\n );\n setIsDisconnectAlertOpen(false);\n invalidateAllIntegrationQueries(queryClient, ownerId);\n onSuccess?.();\n },\n });\n };\n\n return {\n data,\n isLoading,\n isCreating,\n isVerifying,\n isDestroying,\n exists: data?.exists,\n isConnected: data?.connected || false,\n isDisconnectAlertOpen,\n setIsDisconnectAlertOpen,\n onCreateDomain,\n onVerifyDomain,\n onDisconnect,\n };\n};\n\nexport default useSparkpostDomain;\n"],"names":["useSparkpostDomain","_ref","ownerId","canManageIntegrations","_useState","useState","_useState2","_slicedToArray","isDisconnectAlertOpen","setIsDisconnectAlertOpen","_useTranslation","useTranslation","t","queryClient","useQueryClient","_useFetchSparkpostDom","useFetchSparkpostDomain","enabled","isLoading","_useFetchSparkpostDom2","data","_useCreateSparkpostDo","useCreateSparkpostDomain","isCreating","isPending","createDomain","mutate","_useVerifySparkpostDo","useVerifySparkpostDomain","isVerifying","verifyDomain","_useDestroySparkpostD","useDestroySparkpostDomain","isDestroying","destroyDomain","onCreateDomain","email","displayName","onSuccess","onError","sparkpostDomain","response","alreadyVerified","Toastr","success","error","onVerifyDomain","verified","warning","onDisconnect","invalidateAllIntegrationQueries","exists","isConnected","connected"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neeto-email-delivery-frontend",
3
- "version": "1.0.16",
3
+ "version": "1.0.18",
4
4
  "description": "This repo is for implementing custom email delivery functionality for the Neeto platform.",
5
5
  "license": "UNLICENSED",
6
6
  "homepage": "https://github.com/bigbinary/neeto-email-delivery-nano",
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants-Cvxv8ly7.js","sources":["../app/javascript/src/components/PageLayout.jsx","../app/javascript/src/components/SparkpostDomain/constants.js"],"sourcesContent":["import { forwardRef, memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport Container from \"neetomolecules/Container\";\nimport Header from \"neetomolecules/Header\";\nimport { useTranslation } from \"react-i18next\";\n\nconst PageWrapper = ({ children, className = \"\" }) => (\n <Container {...{ className }}>{children}</Container>\n);\n\nconst PageHeader = ({\n title,\n actionBlock,\n breadcrumbs,\n titleHelpPopoverProps,\n ...otherProps\n}) => {\n const { t } = useTranslation();\n const defaultBreadcrumbs = [\n { text: t(\"neetoEmailDelivery.settings\"), link: \"/\" },\n { text: title },\n ];\n\n return (\n <Header\n {...{ title, titleHelpPopoverProps, ...otherProps }}\n actionBlock={actionBlock && actionBlock}\n breadcrumbs={breadcrumbs ?? defaultBreadcrumbs}\n size=\"small\"\n />\n );\n};\n\nconst customPropEqualityCheck = (prevProps, nextProps) =>\n prevProps.title === nextProps.title &&\n prevProps.breadcrumbs === nextProps.breadcrumbs;\nconst MemoizedPageHeader = memo(PageHeader, customPropEqualityCheck);\n\nconst PageContent = forwardRef(({ children, className = \"\" }, ref) => (\n <div className=\"min-h-0 w-full grow\">\n <div {...{ ref }} className={classnames([\"mx-auto max-w-7xl\", className])}>\n {children}\n </div>\n </div>\n));\n\nPageContent.displayName = \"PageContent\";\n\nexport { PageWrapper, MemoizedPageHeader as PageHeader, PageContent };\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const PURPOSE_COLORS = { dkim: \"info\", txt: \"warning\" };\nexport const DEFAULT_COLOR = \"secondary\";\n\nexport const VERIFICATION_STATUSES = {\n SUCCESS: \"success\",\n ERROR: \"error\",\n PENDING: \"pending\",\n};\n\nexport const VERIFICATION_STATUS_CONFIG = {\n success: {\n style: \"success\",\n titleKey: \"neetoEmailDelivery.sparkpost.status.successTitle\",\n descriptionKey: \"neetoEmailDelivery.sparkpost.status.successDescription\",\n },\n error: {\n style: \"danger\",\n titleKey: \"neetoEmailDelivery.sparkpost.status.errorTitle\",\n descriptionKey: \"neetoEmailDelivery.sparkpost.status.errorDescription\",\n },\n pending: {\n style: \"warning\",\n titleKey: \"neetoEmailDelivery.sparkpost.status.pendingTitle\",\n descriptionKey: \"neetoEmailDelivery.sparkpost.status.pendingDescription\",\n },\n};\n\nexport const VALIDATION_SCHEMA = yup.object().shape({\n email: yup\n .string()\n .trim()\n .required(t(\"neetoEmailDelivery.sparkpost.setup.validation.emailRequired\"))\n .email(t(\"neetoEmailDelivery.sparkpost.setup.validation.emailInvalid\")),\n});\n"],"names":["PageWrapper","_ref","children","_ref$className","className","_jsx","Container","PageContent","forwardRef","_ref3","ref","_ref3$className","classnames","displayName","PURPOSE_COLORS","dkim","txt","DEFAULT_COLOR","VERIFICATION_STATUSES","SUCCESS","ERROR","PENDING","VERIFICATION_STATUS_CONFIG","success","style","titleKey","descriptionKey","error","pending","VALIDATION_SCHEMA","yup","object","shape","email","string","trim","required","t"],"mappings":";;;;;;;;;;;AAOA,IAAMA,WAAW,GAAG,SAAdA,WAAWA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAAC,cAAA,GAAAF,IAAA,CAAEG,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,cAAA;EAAA,oBAC7CE,GAAA,CAACC,SAAS,EAAA;AAAOF,IAAAA,SAAS,EAATA,SAAS;AAAAF,IAAAA,QAAA,EAAKA;AAAQ,GAAY,CAAC;AAAA;AA+BtD,IAAMK,WAAW,gBAAGC,UAAU,CAAC,UAAAC,KAAA,EAA+BC,GAAG,EAAA;AAAA,EAAA,IAA/BR,QAAQ,GAAAO,KAAA,CAARP,QAAQ;IAAAS,eAAA,GAAAF,KAAA,CAAEL,SAAS;AAATA,IAAAA,SAAS,GAAAO,eAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,eAAA;AAAA,EAAA,oBACxDN,GAAA,CAAA,KAAA,EAAA;AAAKD,IAAAA,SAAS,EAAC,qBAAqB;AAAAF,IAAAA,QAAA,eAClCG,GAAA,CAAA,KAAA,EAAA;AAAWK,MAAAA,GAAG,EAAHA,GAAG;MAAIN,SAAS,EAAEQ,UAAU,CAAC,CAAC,mBAAmB,EAAER,SAAS,CAAC,CAAE;AAAAF,MAAAA,QAAA,EACvEA;KACE;AAAC,GACH,CAAC;AAAA,CACP;AAEDK,WAAW,CAACM,WAAW,GAAG,aAAa;;AC5ChC,IAAMC,cAAc,GAAG;AAAEC,EAAAA,IAAI,EAAE,MAAM;AAAEC,EAAAA,GAAG,EAAE;AAAU;AACtD,IAAMC,aAAa,GAAG;AAEtB,IAAMC,qBAAqB,GAAG;AACnCC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,OAAO,EAAE;AACX;AAEO,IAAMC,0BAA0B,GAAG;AACxCC,EAAAA,OAAO,EAAE;AACPC,IAAAA,KAAK,EAAE,SAAS;AAChBC,IAAAA,QAAQ,EAAE,kDAAkD;AAC5DC,IAAAA,cAAc,EAAE;GACjB;AACDC,EAAAA,KAAK,EAAE;AACLH,IAAAA,KAAK,EAAE,QAAQ;AACfC,IAAAA,QAAQ,EAAE,gDAAgD;AAC1DC,IAAAA,cAAc,EAAE;GACjB;AACDE,EAAAA,OAAO,EAAE;AACPJ,IAAAA,KAAK,EAAE,SAAS;AAChBC,IAAAA,QAAQ,EAAE,kDAAkD;AAC5DC,IAAAA,cAAc,EAAE;AAClB;AACF;AAEO,IAAMG,iBAAiB,GAAGC,GAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAC;EAClDC,KAAK,EAAEH,GAAG,CACPI,MAAM,EAAE,CACRC,IAAI,EAAE,CACNC,QAAQ,CAACC,CAAC,CAAC,6DAA6D,CAAC,CAAC,CAC1EJ,KAAK,CAACI,CAAC,CAAC,4DAA4D,CAAC;AAC1E,CAAC;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants-D3nzz3Te.js","sources":["../app/javascript/src/components/PageLayout.jsx","../app/javascript/src/components/SparkpostDomain/constants.js"],"sourcesContent":["import { forwardRef, memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport Container from \"neetomolecules/Container\";\nimport Header from \"neetomolecules/Header\";\nimport { useTranslation } from \"react-i18next\";\n\nconst PageWrapper = ({ children, className = \"\" }) => (\n <Container {...{ className }}>{children}</Container>\n);\n\nconst PageHeader = ({\n title,\n actionBlock,\n breadcrumbs,\n titleHelpPopoverProps,\n ...otherProps\n}) => {\n const { t } = useTranslation();\n const defaultBreadcrumbs = [\n { text: t(\"neetoEmailDelivery.settings\"), link: \"/\" },\n { text: title },\n ];\n\n return (\n <Header\n {...{ title, titleHelpPopoverProps, ...otherProps }}\n actionBlock={actionBlock && actionBlock}\n breadcrumbs={breadcrumbs ?? defaultBreadcrumbs}\n size=\"small\"\n />\n );\n};\n\nconst customPropEqualityCheck = (prevProps, nextProps) =>\n prevProps.title === nextProps.title &&\n prevProps.breadcrumbs === nextProps.breadcrumbs;\nconst MemoizedPageHeader = memo(PageHeader, customPropEqualityCheck);\n\nconst PageContent = forwardRef(({ children, className = \"\" }, ref) => (\n <div className=\"min-h-0 w-full grow\">\n <div {...{ ref }} className={classnames([\"mx-auto max-w-7xl\", className])}>\n {children}\n </div>\n </div>\n));\n\nPageContent.displayName = \"PageContent\";\n\nexport { PageWrapper, MemoizedPageHeader as PageHeader, PageContent };\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const PURPOSE_COLORS = { dkim: \"info\", txt: \"warning\" };\nexport const DEFAULT_COLOR = \"secondary\";\n\nexport const VERIFICATION_STATUSES = {\n SUCCESS: \"success\",\n ERROR: \"error\",\n PENDING: \"pending\",\n};\n\nexport const VERIFICATION_STATUS_CONFIG = {\n success: {\n style: \"success\",\n titleKey: \"neetoEmailDelivery.sparkpost.status.successTitle\",\n descriptionKey: \"neetoEmailDelivery.sparkpost.status.successDescription\",\n },\n error: {\n style: \"danger\",\n titleKey: \"neetoEmailDelivery.sparkpost.status.errorTitle\",\n descriptionKey: \"neetoEmailDelivery.sparkpost.status.errorDescription\",\n },\n pending: {\n style: \"warning\",\n titleKey: \"neetoEmailDelivery.sparkpost.status.pendingTitle\",\n descriptionKey: \"neetoEmailDelivery.sparkpost.status.pendingDescription\",\n },\n};\n\nexport const VALIDATION_SCHEMA = yup.object().shape({\n email: yup\n .string()\n .trim()\n .required(t(\"neetoEmailDelivery.sparkpost.setup.validation.emailRequired\"))\n .email(t(\"neetoEmailDelivery.sparkpost.setup.validation.emailInvalid\")),\n});\n"],"names":["PageWrapper","_ref","children","_ref$className","className","_jsx","Container","PageContent","forwardRef","_ref3","ref","_ref3$className","classnames","displayName","PURPOSE_COLORS","dkim","txt","DEFAULT_COLOR","VERIFICATION_STATUSES","SUCCESS","ERROR","PENDING","VERIFICATION_STATUS_CONFIG","success","style","titleKey","descriptionKey","error","pending","VALIDATION_SCHEMA","yup","object","shape","email","string","trim","required","t"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,IAAMA,WAAW,GAAG,SAAdA,WAAWA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAAC,cAAA,GAAAF,IAAA,CAAEG,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,cAAA;EAAA,oBAC7CE,cAAA,CAACC,SAAS,EAAA;AAAOF,IAAAA,SAAS,EAATA,SAAS;AAAAF,IAAAA,QAAA,EAAKA;AAAQ,GAAY,CAAC;AAAA;AA+BtD,IAAMK,WAAW,gBAAGC,gBAAU,CAAC,UAAAC,KAAA,EAA+BC,GAAG,EAAA;AAAA,EAAA,IAA/BR,QAAQ,GAAAO,KAAA,CAARP,QAAQ;IAAAS,eAAA,GAAAF,KAAA,CAAEL,SAAS;AAATA,IAAAA,SAAS,GAAAO,eAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,eAAA;AAAA,EAAA,oBACxDN,cAAA,CAAA,KAAA,EAAA;AAAKD,IAAAA,SAAS,EAAC,qBAAqB;AAAAF,IAAAA,QAAA,eAClCG,cAAA,CAAA,KAAA,EAAA;AAAWK,MAAAA,GAAG,EAAHA,GAAG;MAAIN,SAAS,EAAEQ,UAAU,CAAC,CAAC,mBAAmB,EAAER,SAAS,CAAC,CAAE;AAAAF,MAAAA,QAAA,EACvEA;KACE;AAAC,GACH,CAAC;AAAA,CACP;AAEDK,WAAW,CAACM,WAAW,GAAG,aAAa;;AC5ChC,IAAMC,cAAc,GAAG;AAAEC,EAAAA,IAAI,EAAE,MAAM;AAAEC,EAAAA,GAAG,EAAE;AAAU;AACtD,IAAMC,aAAa,GAAG;AAEtB,IAAMC,qBAAqB,GAAG;AACnCC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,OAAO,EAAE;AACX;AAEO,IAAMC,0BAA0B,GAAG;AACxCC,EAAAA,OAAO,EAAE;AACPC,IAAAA,KAAK,EAAE,SAAS;AAChBC,IAAAA,QAAQ,EAAE,kDAAkD;AAC5DC,IAAAA,cAAc,EAAE;GACjB;AACDC,EAAAA,KAAK,EAAE;AACLH,IAAAA,KAAK,EAAE,QAAQ;AACfC,IAAAA,QAAQ,EAAE,gDAAgD;AAC1DC,IAAAA,cAAc,EAAE;GACjB;AACDE,EAAAA,OAAO,EAAE;AACPJ,IAAAA,KAAK,EAAE,SAAS;AAChBC,IAAAA,QAAQ,EAAE,kDAAkD;AAC5DC,IAAAA,cAAc,EAAE;AAClB;AACF;AAEO,IAAMG,iBAAiB,GAAGC,cAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAC;EAClDC,KAAK,EAAEH,cAAG,CACPI,MAAM,EAAE,CACRC,IAAI,EAAE,CACNC,QAAQ,CAACC,SAAC,CAAC,6DAA6D,CAAC,CAAC,CAC1EJ,KAAK,CAACI,SAAC,CAAC,4DAA4D,CAAC;AAC1E,CAAC;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useSparkpostDomain-Brk7SmL4.js","sources":["../app/javascript/src/hooks/integrations/useSparkpostDomain.js"],"sourcesContent":["import { useState } from \"react\";\n\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { Toastr } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n useFetchSparkpostDomain,\n useCreateSparkpostDomain,\n useVerifySparkpostDomain,\n useDestroySparkpostDomain,\n} from \"hooks/reactQuery/integrations/useSparkpostApi\";\nimport { invalidateAllIntegrationQueries } from \"src/utils\";\n\nconst useSparkpostDomain = ({ ownerId, canManageIntegrations }) => {\n const [isDisconnectAlertOpen, setIsDisconnectAlertOpen] = useState(false);\n const { t } = useTranslation();\n const queryClient = useQueryClient();\n\n const { isLoading, data = {} } = useFetchSparkpostDomain(ownerId, {\n enabled: canManageIntegrations,\n });\n\n const { isPending: isCreating, mutate: createDomain } =\n useCreateSparkpostDomain({ ownerId });\n\n const { isPending: isVerifying, mutate: verifyDomain } =\n useVerifySparkpostDomain({ ownerId });\n\n const { isPending: isDestroying, mutate: destroyDomain } =\n useDestroySparkpostDomain({ ownerId });\n\n const onCreateDomain = (email, onSuccess, onError) => {\n createDomain(\n { sparkpostDomain: { email } },\n {\n onSuccess: response => {\n if (response?.alreadyVerified) {\n Toastr.success(\n t(\"neetoEmailDelivery.sparkpost.toasts.domainVerifiedConnected\")\n );\n }\n onSuccess?.(response);\n },\n onError: error => {\n onError?.(error);\n },\n }\n );\n };\n\n const onVerifyDomain = (onSuccess, onError) => {\n verifyDomain(false, {\n onSuccess: response => {\n if (response?.verified) {\n Toastr.success(\n t(\"neetoEmailDelivery.sparkpost.toasts.domainVerified\")\n );\n } else {\n Toastr.warning(\n t(\"neetoEmailDelivery.sparkpost.toasts.verificationPending\")\n );\n }\n onSuccess?.(response);\n },\n onError: error => {\n onError?.(error);\n },\n });\n };\n\n const onDisconnect = onSuccess => {\n destroyDomain(false, {\n onSuccess: () => {\n Toastr.success(\n t(\"neetoEmailDelivery.sparkpost.toasts.domainDisconnected\")\n );\n setIsDisconnectAlertOpen(false);\n invalidateAllIntegrationQueries(queryClient, ownerId);\n onSuccess?.();\n },\n });\n };\n\n return {\n data,\n isLoading,\n isCreating,\n isVerifying,\n isDestroying,\n exists: data?.exists,\n isConnected: data?.connected || false,\n isDisconnectAlertOpen,\n setIsDisconnectAlertOpen,\n onCreateDomain,\n onVerifyDomain,\n onDisconnect,\n };\n};\n\nexport default useSparkpostDomain;\n"],"names":["useSparkpostDomain","_ref","ownerId","canManageIntegrations","_useState","useState","_useState2","_slicedToArray","isDisconnectAlertOpen","setIsDisconnectAlertOpen","_useTranslation","useTranslation","t","queryClient","useQueryClient","_useFetchSparkpostDom","useFetchSparkpostDomain","enabled","isLoading","_useFetchSparkpostDom2","data","_useCreateSparkpostDo","useCreateSparkpostDomain","isCreating","isPending","createDomain","mutate","_useVerifySparkpostDo","useVerifySparkpostDomain","isVerifying","verifyDomain","_useDestroySparkpostD","useDestroySparkpostDomain","isDestroying","destroyDomain","onCreateDomain","email","onSuccess","onError","sparkpostDomain","response","alreadyVerified","Toastr","success","error","onVerifyDomain","verified","warning","onDisconnect","invalidateAllIntegrationQueries","exists","isConnected","connected"],"mappings":";;;;;;;;;AAcA,IAAMA,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAC,IAAA,EAA2C;AAAA,EAAA,IAArCC,OAAO,GAAAD,IAAA,CAAPC,OAAO;IAAEC,qBAAqB,GAAAF,IAAA,CAArBE,qBAAqB;AAC1D,EAAA,IAAAC,SAAA,GAA0DC,cAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAlEI,IAAAA,qBAAqB,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,wBAAwB,GAAAH,UAAA,CAAA,CAAA,CAAA;AACtD,EAAA,IAAAI,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AACT,EAAA,IAAMC,WAAW,GAAGC,yBAAc,EAAE;AAEpC,EAAA,IAAAC,qBAAA,GAAiCC,uCAAuB,CAACd,OAAO,EAAE;AAChEe,MAAAA,OAAO,EAAEd;AACX,KAAC,CAAC;IAFMe,SAAS,GAAAH,qBAAA,CAATG,SAAS;IAAAC,sBAAA,GAAAJ,qBAAA,CAAEK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,sBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,sBAAA;EAI5B,IAAAE,qBAAA,GACEC,wCAAwB,CAAC;AAAEpB,MAAAA,OAAO,EAAPA;AAAQ,KAAC,CAAC;IADpBqB,UAAU,GAAAF,qBAAA,CAArBG,SAAS;IAAsBC,YAAY,GAAAJ,qBAAA,CAApBK,MAAM;EAGrC,IAAAC,qBAAA,GACEC,wCAAwB,CAAC;AAAE1B,MAAAA,OAAO,EAAPA;AAAQ,KAAC,CAAC;IADpB2B,WAAW,GAAAF,qBAAA,CAAtBH,SAAS;IAAuBM,YAAY,GAAAH,qBAAA,CAApBD,MAAM;EAGtC,IAAAK,qBAAA,GACEC,yCAAyB,CAAC;AAAE9B,MAAAA,OAAO,EAAPA;AAAQ,KAAC,CAAC;IADrB+B,YAAY,GAAAF,qBAAA,CAAvBP,SAAS;IAAwBU,aAAa,GAAAH,qBAAA,CAArBL,MAAM;EAGvC,IAAMS,cAAc,GAAG,SAAjBA,cAAcA,CAAIC,KAAK,EAAEC,UAAS,EAAEC,QAAO,EAAK;AACpDb,IAAAA,YAAY,CACV;AAAEc,MAAAA,eAAe,EAAE;AAAEH,QAAAA,KAAK,EAALA;AAAM;AAAE,KAAC,EAC9B;AACEC,MAAAA,SAAS,EAAE,SAAXA,SAASA,CAAEG,QAAQ,EAAI;AACrB,QAAA,IAAIA,QAAQ,KAARA,IAAAA,IAAAA,QAAQ,eAARA,QAAQ,CAAEC,eAAe,EAAE;AAC7BC,UAAAA,MAAM,CAACC,OAAO,CACZ/B,CAAC,CAAC,6DAA6D,CACjE,CAAC;AACH;AACAyB,QAAAA,UAAS,aAATA,UAAS,KAAA,KAAA,CAAA,IAATA,UAAS,CAAGG,QAAQ,CAAC;OACtB;AACDF,MAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEM,KAAK,EAAI;AAChBN,QAAAA,QAAO,aAAPA,QAAO,KAAA,KAAA,CAAA,IAAPA,QAAO,CAAGM,KAAK,CAAC;AAClB;AACF,KACF,CAAC;GACF;EAED,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,CAAIR,WAAS,EAAEC,SAAO,EAAK;IAC7CR,YAAY,CAAC,KAAK,EAAE;AAClBO,MAAAA,SAAS,EAAE,SAAXA,SAASA,CAAEG,QAAQ,EAAI;AACrB,QAAA,IAAIA,QAAQ,KAARA,IAAAA,IAAAA,QAAQ,eAARA,QAAQ,CAAEM,QAAQ,EAAE;AACtBJ,UAAAA,MAAM,CAACC,OAAO,CACZ/B,CAAC,CAAC,oDAAoD,CACxD,CAAC;AACH,SAAC,MAAM;AACL8B,UAAAA,MAAM,CAACK,OAAO,CACZnC,CAAC,CAAC,yDAAyD,CAC7D,CAAC;AACH;AACAyB,QAAAA,WAAS,aAATA,WAAS,KAAA,KAAA,CAAA,IAATA,WAAS,CAAGG,QAAQ,CAAC;OACtB;AACDF,MAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEM,KAAK,EAAI;AAChBN,QAAAA,SAAO,aAAPA,SAAO,KAAA,KAAA,CAAA,IAAPA,SAAO,CAAGM,KAAK,CAAC;AAClB;AACF,KAAC,CAAC;GACH;AAED,EAAA,IAAMI,YAAY,GAAG,SAAfA,YAAYA,CAAGX,WAAS,EAAI;IAChCH,aAAa,CAAC,KAAK,EAAE;AACnBG,MAAAA,SAAS,EAAE,SAAXA,SAASA,GAAQ;AACfK,QAAAA,MAAM,CAACC,OAAO,CACZ/B,CAAC,CAAC,wDAAwD,CAC5D,CAAC;QACDH,wBAAwB,CAAC,KAAK,CAAC;AAC/BwC,QAAAA,+CAA+B,CAACpC,WAAW,EAAEX,OAAO,CAAC;AACrDmC,QAAAA,WAAS,KAATA,IAAAA,IAAAA,WAAS,KAATA,KAAAA,CAAAA,IAAAA,WAAS,EAAI;AACf;AACF,KAAC,CAAC;GACH;EAED,OAAO;AACLjB,IAAAA,IAAI,EAAJA,IAAI;AACJF,IAAAA,SAAS,EAATA,SAAS;AACTK,IAAAA,UAAU,EAAVA,UAAU;AACVM,IAAAA,WAAW,EAAXA,WAAW;AACXI,IAAAA,YAAY,EAAZA,YAAY;AACZiB,IAAAA,MAAM,EAAE9B,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAJA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,IAAI,CAAE8B,MAAM;IACpBC,WAAW,EAAE,CAAA/B,IAAI,KAAJA,IAAAA,IAAAA,IAAI,uBAAJA,IAAI,CAAEgC,SAAS,KAAI,KAAK;AACrC5C,IAAAA,qBAAqB,EAArBA,qBAAqB;AACrBC,IAAAA,wBAAwB,EAAxBA,wBAAwB;AACxB0B,IAAAA,cAAc,EAAdA,cAAc;AACdU,IAAAA,cAAc,EAAdA,cAAc;AACdG,IAAAA,YAAY,EAAZA;GACD;AACH;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useSparkpostDomain-CuX-Gl5a.js","sources":["../app/javascript/src/hooks/integrations/useSparkpostDomain.js"],"sourcesContent":["import { useState } from \"react\";\n\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { Toastr } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n useFetchSparkpostDomain,\n useCreateSparkpostDomain,\n useVerifySparkpostDomain,\n useDestroySparkpostDomain,\n} from \"hooks/reactQuery/integrations/useSparkpostApi\";\nimport { invalidateAllIntegrationQueries } from \"src/utils\";\n\nconst useSparkpostDomain = ({ ownerId, canManageIntegrations }) => {\n const [isDisconnectAlertOpen, setIsDisconnectAlertOpen] = useState(false);\n const { t } = useTranslation();\n const queryClient = useQueryClient();\n\n const { isLoading, data = {} } = useFetchSparkpostDomain(ownerId, {\n enabled: canManageIntegrations,\n });\n\n const { isPending: isCreating, mutate: createDomain } =\n useCreateSparkpostDomain({ ownerId });\n\n const { isPending: isVerifying, mutate: verifyDomain } =\n useVerifySparkpostDomain({ ownerId });\n\n const { isPending: isDestroying, mutate: destroyDomain } =\n useDestroySparkpostDomain({ ownerId });\n\n const onCreateDomain = (email, onSuccess, onError) => {\n createDomain(\n { sparkpostDomain: { email } },\n {\n onSuccess: response => {\n if (response?.alreadyVerified) {\n Toastr.success(\n t(\"neetoEmailDelivery.sparkpost.toasts.domainVerifiedConnected\")\n );\n }\n onSuccess?.(response);\n },\n onError: error => {\n onError?.(error);\n },\n }\n );\n };\n\n const onVerifyDomain = (onSuccess, onError) => {\n verifyDomain(false, {\n onSuccess: response => {\n if (response?.verified) {\n Toastr.success(\n t(\"neetoEmailDelivery.sparkpost.toasts.domainVerified\")\n );\n } else {\n Toastr.warning(\n t(\"neetoEmailDelivery.sparkpost.toasts.verificationPending\")\n );\n }\n onSuccess?.(response);\n },\n onError: error => {\n onError?.(error);\n },\n });\n };\n\n const onDisconnect = onSuccess => {\n destroyDomain(false, {\n onSuccess: () => {\n Toastr.success(\n t(\"neetoEmailDelivery.sparkpost.toasts.domainDisconnected\")\n );\n setIsDisconnectAlertOpen(false);\n invalidateAllIntegrationQueries(queryClient, ownerId);\n onSuccess?.();\n },\n });\n };\n\n return {\n data,\n isLoading,\n isCreating,\n isVerifying,\n isDestroying,\n exists: data?.exists,\n isConnected: data?.connected || false,\n isDisconnectAlertOpen,\n setIsDisconnectAlertOpen,\n onCreateDomain,\n onVerifyDomain,\n onDisconnect,\n };\n};\n\nexport default useSparkpostDomain;\n"],"names":["useSparkpostDomain","_ref","ownerId","canManageIntegrations","_useState","useState","_useState2","_slicedToArray","isDisconnectAlertOpen","setIsDisconnectAlertOpen","_useTranslation","useTranslation","t","queryClient","useQueryClient","_useFetchSparkpostDom","useFetchSparkpostDomain","enabled","isLoading","_useFetchSparkpostDom2","data","_useCreateSparkpostDo","useCreateSparkpostDomain","isCreating","isPending","createDomain","mutate","_useVerifySparkpostDo","useVerifySparkpostDomain","isVerifying","verifyDomain","_useDestroySparkpostD","useDestroySparkpostDomain","isDestroying","destroyDomain","onCreateDomain","email","onSuccess","onError","sparkpostDomain","response","alreadyVerified","Toastr","success","error","onVerifyDomain","verified","warning","onDisconnect","invalidateAllIntegrationQueries","exists","isConnected","connected"],"mappings":"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"}