@bigbinary/neeto-email-delivery-frontend 1.0.33 → 1.0.35

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/README.md +4 -4
  2. package/app/javascript/src/translations/ar.json +4 -3
  3. package/app/javascript/src/translations/bg.json +4 -3
  4. package/app/javascript/src/translations/ca.json +4 -3
  5. package/app/javascript/src/translations/cs.json +4 -3
  6. package/app/javascript/src/translations/da.json +4 -3
  7. package/app/javascript/src/translations/de.json +4 -3
  8. package/app/javascript/src/translations/en.json +1 -1
  9. package/app/javascript/src/translations/es-MX.json +4 -3
  10. package/app/javascript/src/translations/es.json +4 -3
  11. package/app/javascript/src/translations/et.json +4 -3
  12. package/app/javascript/src/translations/fi.json +4 -3
  13. package/app/javascript/src/translations/fil.json +4 -3
  14. package/app/javascript/src/translations/fr.json +4 -3
  15. package/app/javascript/src/translations/he.json +4 -3
  16. package/app/javascript/src/translations/hi.json +4 -3
  17. package/app/javascript/src/translations/hr.json +4 -3
  18. package/app/javascript/src/translations/hu.json +4 -3
  19. package/app/javascript/src/translations/id.json +4 -3
  20. package/app/javascript/src/translations/it.json +4 -3
  21. package/app/javascript/src/translations/ja.json +4 -3
  22. package/app/javascript/src/translations/ko.json +4 -3
  23. package/app/javascript/src/translations/nl.json +4 -3
  24. package/app/javascript/src/translations/pl.json +4 -3
  25. package/app/javascript/src/translations/pt-BR.json +4 -3
  26. package/app/javascript/src/translations/pt.json +4 -3
  27. package/app/javascript/src/translations/ro.json +4 -3
  28. package/app/javascript/src/translations/ru.json +4 -3
  29. package/app/javascript/src/translations/sk.json +4 -3
  30. package/app/javascript/src/translations/sl.json +4 -3
  31. package/app/javascript/src/translations/sv.json +4 -3
  32. package/app/javascript/src/translations/th.json +4 -3
  33. package/app/javascript/src/translations/tr.json +4 -3
  34. package/app/javascript/src/translations/uk.json +4 -3
  35. package/app/javascript/src/translations/vi.json +4 -3
  36. package/app/javascript/src/translations/zh-CN.json +4 -3
  37. package/app/javascript/src/translations/zh-TW.json +4 -3
  38. package/dist/.ready +1 -1
  39. package/dist/EmailDeliveryScreen.js +193 -14
  40. package/dist/EmailDeliveryScreen.js.map +1 -1
  41. package/dist/PageLayout-B_USy8hj.js +75 -0
  42. package/dist/PageLayout-B_USy8hj.js.map +1 -0
  43. package/dist/PageLayout-pMKr_80l.js +103 -0
  44. package/dist/PageLayout-pMKr_80l.js.map +1 -0
  45. package/dist/SparkpostDomainSetup.js +3 -3
  46. package/dist/SparkpostDomainVerify.js +4 -4
  47. package/dist/Verify-80b6NK1q.js +295 -0
  48. package/dist/Verify-80b6NK1q.js.map +1 -0
  49. package/dist/{Verify-Cbn8WE7T.js → Verify-D0bZSCRH.js} +4 -4
  50. package/dist/{Verify-Cbn8WE7T.js.map → Verify-D0bZSCRH.js.map} +1 -1
  51. package/dist/Verify-Dnvx5OTi.js +292 -0
  52. package/dist/Verify-Dnvx5OTi.js.map +1 -0
  53. package/dist/cjs/EmailDeliveryScreen.js +189 -14
  54. package/dist/cjs/EmailDeliveryScreen.js.map +1 -1
  55. package/dist/cjs/index.js +7 -6
  56. package/dist/cjs/index.js.map +1 -1
  57. package/dist/cjs/v2/EmailDeliveryScreen.js +201 -0
  58. package/dist/cjs/v2/EmailDeliveryScreen.js.map +1 -0
  59. package/dist/cjs/v2/SparkpostDomainSetup.js +140 -0
  60. package/dist/cjs/v2/SparkpostDomainSetup.js.map +1 -0
  61. package/dist/cjs/v2/SparkpostDomainVerify.js +35 -0
  62. package/dist/cjs/v2/SparkpostDomainVerify.js.map +1 -0
  63. package/dist/cjs/v2/hooks.js +17 -0
  64. package/dist/cjs/v2/hooks.js.map +1 -0
  65. package/dist/cjs/v2/index.js +522 -0
  66. package/dist/cjs/v2/index.js.map +1 -0
  67. package/dist/hooks.js +2 -2
  68. package/dist/index.js +8 -8
  69. package/dist/{useEmailDeliveryIntegrationApi-Dk9WPotT.js → useEmailDeliveryIntegrationApi-CfgmbuRA.js} +2 -2
  70. package/dist/{useEmailDeliveryIntegrationApi-Dk9WPotT.js.map → useEmailDeliveryIntegrationApi-CfgmbuRA.js.map} +1 -1
  71. package/dist/useSmtp-BCcRaVYr.js +136 -0
  72. package/dist/useSmtp-BCcRaVYr.js.map +1 -0
  73. package/dist/useSmtp-DxZlXdtr.js +132 -0
  74. package/dist/useSmtp-DxZlXdtr.js.map +1 -0
  75. package/dist/{useSparkpostApi-B-D8RNRF.js → useSparkpostApi-CQT4JD8-.js} +2 -2
  76. package/dist/{useSparkpostApi-B-D8RNRF.js.map → useSparkpostApi-CQT4JD8-.js.map} +1 -1
  77. package/dist/useSparkpostDomain-DDjj-dyF.js +99 -0
  78. package/dist/useSparkpostDomain-DDjj-dyF.js.map +1 -0
  79. package/dist/{useSparkpostDomain-DA1nrWS3.js → useSparkpostDomain-Dt4Q3GSP.js} +2 -2
  80. package/dist/{useSparkpostDomain-DA1nrWS3.js.map → useSparkpostDomain-Dt4Q3GSP.js.map} +1 -1
  81. package/dist/useSparkpostDomain-IJPoCQ0f.js +101 -0
  82. package/dist/useSparkpostDomain-IJPoCQ0f.js.map +1 -0
  83. package/dist/{index-BbOAmk2e.js → v2/EmailDeliveryScreen.js} +27 -148
  84. package/dist/v2/EmailDeliveryScreen.js.map +1 -0
  85. package/dist/v2/SparkpostDomainSetup.js +138 -0
  86. package/dist/v2/SparkpostDomainSetup.js.map +1 -0
  87. package/dist/v2/SparkpostDomainVerify.js +29 -0
  88. package/dist/v2/SparkpostDomainVerify.js.map +1 -0
  89. package/dist/v2/hooks.js +11 -0
  90. package/dist/v2/hooks.js.map +1 -0
  91. package/dist/v2/index.js +499 -0
  92. package/dist/v2/index.js.map +1 -0
  93. package/package.json +34 -22
  94. package/dist/index-BbOAmk2e.js.map +0 -1
  95. package/dist/index-YMe54v79.js +0 -325
  96. package/dist/index-YMe54v79.js.map +0 -1
@@ -0,0 +1,522 @@
1
+ 'use strict';
2
+
3
+ var v2_EmailDeliveryScreen = require('./EmailDeliveryScreen.js');
4
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
5
+ var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
6
+ var react = require('react');
7
+ var neetoAtoms = require('@bigbinary/neeto-atoms');
8
+ var neetoCist = require('@bigbinary/neeto-cist');
9
+ var reactUtils = require('@bigbinary/neeto-commons-frontend/v2/react-utils');
10
+ var utils = require('@bigbinary/neeto-commons-frontend/v2/utils');
11
+ var Check = require('@bigbinary/neeto-icons/Check');
12
+ var Warning = require('@bigbinary/neeto-icons/Warning');
13
+ var CardLayout = require('@bigbinary/neeto-molecules/v2/CardLayout');
14
+ var reactI18next = require('react-i18next');
15
+ var reactRouterDom = require('react-router-dom');
16
+ var useSparkpostApi = require('../../useSparkpostApi-DlgW14Wu.js');
17
+ var useSmtp = require('../../useSmtp-BCcRaVYr.js');
18
+ var useEmailDeliveryIntegrationApi = require('../../useEmailDeliveryIntegrationApi-BcQDhMIH.js');
19
+ var formik = require('@bigbinary/neeto-atoms/formik');
20
+ var i18next = require('i18next');
21
+ var yup = require('yup');
22
+ var jsxRuntime = require('react/jsx-runtime');
23
+ var v2_SparkpostDomainVerify = require('../../Verify-80b6NK1q.js');
24
+ var useSparkpostDomain = require('../../useSparkpostDomain-IJPoCQ0f.js');
25
+ var MailSend = require('@bigbinary/neeto-icons/MailSend');
26
+ var GmailIcon = require('@bigbinary/neeto-icons/misc/Gmail');
27
+ var OutlookIcon = require('@bigbinary/neeto-icons/misc/Outlook');
28
+ var v2_SparkpostDomainSetup = require('./SparkpostDomainSetup.js');
29
+ require('@tanstack/react-query');
30
+ require('@bigbinary/neeto-commons-frontend/utils');
31
+ require('@bigbinary/neeto-commons-frontend/react-utils');
32
+ require('axios');
33
+ require('ramda');
34
+ require('../../PageLayout-pMKr_80l.js');
35
+ require('@babel/runtime/helpers/objectWithoutProperties');
36
+ require('classnames');
37
+ require('@bigbinary/neeto-molecules/v2/Container');
38
+ require('@bigbinary/neeto-molecules/v2/Header');
39
+ require('@babel/runtime/helpers/toConsumableArray');
40
+ require('@bigbinary/neeto-molecules/v2/CopyToClipboardButton');
41
+
42
+ function _interopNamespaceDefault(e) {
43
+ var n = Object.create(null);
44
+ if (e) {
45
+ Object.keys(e).forEach(function (k) {
46
+ if (k !== 'default') {
47
+ var d = Object.getOwnPropertyDescriptor(e, k);
48
+ Object.defineProperty(n, k, d.get ? d : {
49
+ enumerable: true,
50
+ get: function () { return e[k]; }
51
+ });
52
+ }
53
+ });
54
+ }
55
+ n.default = e;
56
+ return Object.freeze(n);
57
+ }
58
+
59
+ var yup__namespace = /*#__PURE__*/_interopNamespaceDefault(yup);
60
+
61
+ var ENCRYPTION_OPTIONS = [{
62
+ label: "None",
63
+ value: "none"
64
+ }, {
65
+ label: "StartTLS",
66
+ value: "starttls"
67
+ }, {
68
+ label: "SSL",
69
+ value: "ssl"
70
+ }];
71
+ var SMTP_ACCOUNT_INITIAL_VALUES = {
72
+ host: "",
73
+ port: 587,
74
+ username: "",
75
+ password: "",
76
+ email: "",
77
+ encryption: "starttls",
78
+ displayName: ""
79
+ };
80
+ var SMTP_ACCOUNT_VALIDATION_SCHEMA = yup__namespace.object().shape({
81
+ host: yup__namespace.string().trim().required(i18next.t("neetoEmailDelivery.smtp.setup.requiredField", {
82
+ field: i18next.t("neetoEmailDelivery.smtp.setup.hostLabel")
83
+ })),
84
+ port: yup__namespace.number().required(i18next.t("neetoEmailDelivery.smtp.setup.requiredField", {
85
+ field: i18next.t("neetoEmailDelivery.smtp.setup.portLabel")
86
+ })),
87
+ username: yup__namespace.string().trim().required(i18next.t("neetoEmailDelivery.smtp.setup.requiredField", {
88
+ field: i18next.t("neetoEmailDelivery.smtp.setup.usernameLabel")
89
+ })),
90
+ password: yup__namespace.string().trim().required(i18next.t("neetoEmailDelivery.smtp.setup.requiredField", {
91
+ field: i18next.t("neetoEmailDelivery.smtp.setup.passwordLabel")
92
+ })),
93
+ email: yup__namespace.string().trim().required(i18next.t("neetoEmailDelivery.smtp.setup.requiredField", {
94
+ field: i18next.t("neetoEmailDelivery.smtp.setup.emailLabel")
95
+ })).email(i18next.t("neetoEmailDelivery.smtp.setup.emailInvalid")),
96
+ displayName: yup__namespace.string().trim().required(i18next.t("neetoEmailDelivery.smtp.setup.requiredField", {
97
+ field: i18next.t("neetoEmailDelivery.smtp.setup.displayNameLabel")
98
+ })),
99
+ encryption: yup__namespace.string().trim().required(i18next.t("neetoEmailDelivery.smtp.setup.requiredField", {
100
+ field: i18next.t("neetoEmailDelivery.smtp.setup.encryptionLabel")
101
+ }))
102
+ });
103
+
104
+ var SmtpSetup = function SmtpSetup(_ref) {
105
+ var ownerId = _ref.ownerId,
106
+ onDone = _ref.onDone,
107
+ onCancel = _ref.onCancel,
108
+ isOpen = _ref.isOpen;
109
+ var _useTranslation = reactI18next.useTranslation(),
110
+ t = _useTranslation.t;
111
+ var _useCreateSmtp = useSparkpostApi.useCreateSmtp({
112
+ ownerId: ownerId
113
+ }),
114
+ isCreating = _useCreateSmtp.isPending,
115
+ createSmtp = _useCreateSmtp.mutate;
116
+ var handleSubmit = function handleSubmit(values) {
117
+ createSmtp({
118
+ smtp_account: values
119
+ }, {
120
+ onSuccess: onDone
121
+ });
122
+ };
123
+ return /*#__PURE__*/jsxRuntime.jsxs(neetoAtoms.Sheet, {
124
+ isOpen: isOpen,
125
+ size: "large",
126
+ onClose: onCancel,
127
+ children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Sheet.Header, {
128
+ children: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Sheet.Title, {
129
+ children: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Typography, {
130
+ variant: "h2",
131
+ weight: "semibold",
132
+ children: t("neetoEmailDelivery.smtp.setup.title")
133
+ })
134
+ })
135
+ }), /*#__PURE__*/jsxRuntime.jsxs(formik.Form, {
136
+ className: "w-full",
137
+ formikProps: {
138
+ initialValues: SMTP_ACCOUNT_INITIAL_VALUES,
139
+ validationSchema: SMTP_ACCOUNT_VALIDATION_SCHEMA,
140
+ onSubmit: handleSubmit
141
+ },
142
+ children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Sheet.Body, {
143
+ className: "space-y-4",
144
+ children: /*#__PURE__*/jsxRuntime.jsxs("div", {
145
+ className: "flex flex-col gap-6",
146
+ children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Callout, {
147
+ variant: "warning",
148
+ children: t("neetoEmailDelivery.smtp.setup.note")
149
+ }), /*#__PURE__*/jsxRuntime.jsx(formik.Input, {
150
+ required: true,
151
+ label: t("neetoEmailDelivery.smtp.setup.hostLabel"),
152
+ name: "host"
153
+ }), /*#__PURE__*/jsxRuntime.jsx(formik.Input, {
154
+ required: true,
155
+ label: t("neetoEmailDelivery.smtp.setup.portLabel"),
156
+ name: "port",
157
+ type: "number"
158
+ }), /*#__PURE__*/jsxRuntime.jsx(formik.Input, {
159
+ required: true,
160
+ label: t("neetoEmailDelivery.smtp.setup.usernameLabel"),
161
+ name: "username"
162
+ }), /*#__PURE__*/jsxRuntime.jsx(formik.Input, {
163
+ required: true,
164
+ label: t("neetoEmailDelivery.smtp.setup.passwordLabel"),
165
+ name: "password",
166
+ type: "password"
167
+ }), /*#__PURE__*/jsxRuntime.jsx(formik.Input, {
168
+ required: true,
169
+ label: t("neetoEmailDelivery.smtp.setup.emailLabel"),
170
+ name: "email",
171
+ type: "email"
172
+ }), /*#__PURE__*/jsxRuntime.jsx(formik.Input, {
173
+ required: true,
174
+ label: t("neetoEmailDelivery.smtp.setup.displayNameLabel"),
175
+ name: "displayName"
176
+ }), /*#__PURE__*/jsxRuntime.jsx(formik.RadioGroup, {
177
+ label: t("neetoEmailDelivery.smtp.setup.encryptionLabel"),
178
+ name: "encryption",
179
+ children: ENCRYPTION_OPTIONS.map(function (option) {
180
+ return /*#__PURE__*/jsxRuntime.jsx(formik.RadioGroup.Item, {
181
+ label: option.label,
182
+ value: option.value
183
+ }, option.value);
184
+ })
185
+ })]
186
+ })
187
+ }), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Sheet.Footer, {
188
+ children: /*#__PURE__*/jsxRuntime.jsx(formik.ActionBlock, {
189
+ cancelButtonProps: {
190
+ onClick: onCancel
191
+ },
192
+ isSubmitting: isCreating,
193
+ submitButtonProps: {
194
+ label: t("neetoEmailDelivery.smtp.setup.saveAndActivate")
195
+ }
196
+ })
197
+ })]
198
+ })]
199
+ });
200
+ };
201
+
202
+ var ERROR_MESSAGES = {
203
+ gmail_permission_not_given: i18next.t("neetoEmailDelivery.gmail.permissionNotGiven"),
204
+ outlook_permission_not_given: i18next.t("neetoEmailDelivery.outlook.permissionNotGiven"),
205
+ outlook_invalid_client: i18next.t("neetoEmailDelivery.outlook.invalidClient"),
206
+ outlook_nil_json_web_token: i18next.t("neetoEmailDelivery.outlook.nilJsonWebToken")
207
+ };
208
+ var INTEGRATION_TYPES = {
209
+ GMAIL: "gmail",
210
+ OUTLOOK: "outlook",
211
+ SPARKPOST: "sparkpost",
212
+ SMTP: "smtp"
213
+ };
214
+ var PROVIDER_LABELS = _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, INTEGRATION_TYPES.GMAIL, "Gmail"), INTEGRATION_TYPES.OUTLOOK, "Outlook"), INTEGRATION_TYPES.SPARKPOST, "Custom email provider"), INTEGRATION_TYPES.SMTP, "SMTP");
215
+ var PROVIDER_ICONS = _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, INTEGRATION_TYPES.GMAIL, GmailIcon), INTEGRATION_TYPES.OUTLOOK, OutlookIcon), INTEGRATION_TYPES.SPARKPOST, MailSend), INTEGRATION_TYPES.SMTP, MailSend);
216
+
217
+ var IntegrationDetailPage = function IntegrationDetailPage(_ref) {
218
+ var type = _ref.type,
219
+ ownerId = _ref.ownerId,
220
+ canManageIntegrations = _ref.canManageIntegrations,
221
+ appName = _ref.appName,
222
+ scopeText = _ref.scopeText,
223
+ connectedScopeText = _ref.connectedScopeText,
224
+ helpArticleUrl = _ref.helpArticleUrl,
225
+ indexRoute = _ref.indexRoute,
226
+ integrationRoutes = _ref.integrationRoutes,
227
+ ownDomainSetupRoute = _ref.ownDomainSetupRoute,
228
+ ownDomainVerifyRoute = _ref.ownDomainVerifyRoute,
229
+ onBeforeAction = _ref.onBeforeAction;
230
+ var _useTranslation = reactI18next.useTranslation(),
231
+ t = _useTranslation.t;
232
+ var history = reactRouterDom.useHistory();
233
+ var _useQueryParams = reactUtils.useQueryParams(),
234
+ error = _useQueryParams.error,
235
+ errorDescription = _useQueryParams.errorDescription;
236
+ var _useState = react.useState(false),
237
+ _useState2 = _slicedToArray(_useState, 2),
238
+ isSmtpPaneOpen = _useState2[0],
239
+ setIsSmtpPaneOpen = _useState2[1];
240
+ if (neetoCist.isPresent(error)) {
241
+ var _errorMessage2, _integrationRoutes$ty;
242
+ var _errorMessage = ERROR_MESSAGES[error];
243
+ if (errorDescription) {
244
+ _errorMessage = "".concat(_errorMessage, " ").concat(errorDescription);
245
+ }
246
+ neetoAtoms.Toastr.error((_errorMessage2 = _errorMessage) !== null && _errorMessage2 !== void 0 ? _errorMessage2 : neetoCist.humanize(error));
247
+ history.replace((_integrationRoutes$ty = integrationRoutes === null || integrationRoutes === void 0 ? void 0 : integrationRoutes[type]) !== null && _integrationRoutes$ty !== void 0 ? _integrationRoutes$ty : indexRoute);
248
+ }
249
+ var providerLabel = PROVIDER_LABELS[type];
250
+ var Icon = PROVIDER_ICONS[type];
251
+ var description = t("neetoEmailDelivery.".concat(type, ".description"));
252
+ var gmailIntegration = useSmtp.useGmail({
253
+ ownerId: ownerId,
254
+ indexRoute: indexRoute,
255
+ canManageIntegrations: canManageIntegrations
256
+ });
257
+ var outlookIntegration = useSmtp.useOutlook({
258
+ ownerId: ownerId,
259
+ indexRoute: indexRoute,
260
+ canManageIntegrations: canManageIntegrations
261
+ });
262
+ var sparkpostIntegration = useSparkpostDomain.useSparkpostDomain({
263
+ ownerId: ownerId,
264
+ canManageIntegrations: canManageIntegrations
265
+ });
266
+ var smtpIntegration = useSmtp.useSmtp({
267
+ ownerId: ownerId,
268
+ canManageIntegrations: canManageIntegrations
269
+ });
270
+ var _useFetchConnectedInt = useEmailDeliveryIntegrationApi.useFetchConnectedIntegration(ownerId),
271
+ connectedIntegration = _useFetchConnectedInt.integration,
272
+ isIntegrationLoading = _useFetchConnectedInt.isLoading;
273
+ var integrationMap = _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, INTEGRATION_TYPES.GMAIL, gmailIntegration), INTEGRATION_TYPES.OUTLOOK, outlookIntegration), INTEGRATION_TYPES.SPARKPOST, sparkpostIntegration), INTEGRATION_TYPES.SMTP, smtpIntegration);
274
+ var currentIntegration = integrationMap[type];
275
+ var isConnected = currentIntegration.isConnected,
276
+ isDestroying = currentIntegration.isDestroying,
277
+ onDisconnect = currentIntegration.onDisconnect,
278
+ _currentIntegration$d = currentIntegration.data,
279
+ data = _currentIntegration$d === void 0 ? {} : _currentIntegration$d,
280
+ errorMessage = currentIntegration.errorMessage;
281
+ var connectedEmail = data === null || data === void 0 ? void 0 : data.email;
282
+ var sparkpostVerificationRecords = (data === null || data === void 0 ? void 0 : data.verificationRecords) || [];
283
+ var showSparkpostConnectedDetails = type === INTEGRATION_TYPES.SPARKPOST && isConnected;
284
+ var isOutlookPending = type === INTEGRATION_TYPES.OUTLOOK && outlookIntegration.isWaitingForTestEmail;
285
+ var isSparkpostPending = type === INTEGRATION_TYPES.SPARKPOST && sparkpostIntegration.exists && !isConnected;
286
+ var isPending = isOutlookPending || isSparkpostPending;
287
+ var isLoading = gmailIntegration.isLoading || outlookIntegration.isLoading || sparkpostIntegration.isLoading || smtpIntegration.isLoading || isIntegrationLoading;
288
+ var isBlocked = connectedIntegration && connectedIntegration.type !== type;
289
+ var activeProviderLabel = isBlocked ? PROVIDER_LABELS[connectedIntegration.type] : null;
290
+ var activeProviderRoute = isBlocked ? integrationRoutes === null || integrationRoutes === void 0 ? void 0 : integrationRoutes[connectedIntegration.type] : null;
291
+ var executeConnect = function executeConnect() {
292
+ switch (type) {
293
+ case INTEGRATION_TYPES.GMAIL:
294
+ window.location.href = utils.buildUrl(useSparkpostApi.GMAIL_OAUTH_CONNECT_URL, {
295
+ ownerId: ownerId
296
+ });
297
+ break;
298
+ case INTEGRATION_TYPES.OUTLOOK:
299
+ window.location.href = utils.buildUrl(useSparkpostApi.OUTLOOK_OAUTH_CONNECT_URL, {
300
+ ownerId: ownerId
301
+ });
302
+ break;
303
+ case INTEGRATION_TYPES.SPARKPOST:
304
+ history.push(ownDomainSetupRoute);
305
+ break;
306
+ case INTEGRATION_TYPES.SMTP:
307
+ setIsSmtpPaneOpen(true);
308
+ break;
309
+ }
310
+ };
311
+ var handleConnect = function handleConnect() {
312
+ if (onBeforeAction) {
313
+ onBeforeAction(executeConnect);
314
+ } else {
315
+ executeConnect();
316
+ }
317
+ };
318
+ var handleDisconnect = function handleDisconnect() {
319
+ if (onBeforeAction) {
320
+ onBeforeAction(onDisconnect);
321
+ } else {
322
+ onDisconnect();
323
+ }
324
+ };
325
+ var getConnectButtonLabel = function getConnectButtonLabel() {
326
+ switch (type) {
327
+ case INTEGRATION_TYPES.GMAIL:
328
+ return t("neetoEmailDelivery.integrationDetail.connectGmail");
329
+ case INTEGRATION_TYPES.OUTLOOK:
330
+ return t("neetoEmailDelivery.integrationDetail.connectOutlook");
331
+ case INTEGRATION_TYPES.SPARKPOST:
332
+ return t("neetoEmailDelivery.integrationDetail.setupDomain");
333
+ case INTEGRATION_TYPES.SMTP:
334
+ return t("neetoEmailDelivery.integrationDetail.connectSmtp");
335
+ default:
336
+ return "";
337
+ }
338
+ };
339
+ var renderTitle = function renderTitle() {
340
+ if (isConnected) {
341
+ return /*#__PURE__*/jsxRuntime.jsxs("div", {
342
+ className: "flex items-center gap-2",
343
+ children: [/*#__PURE__*/jsxRuntime.jsx("span", {
344
+ children: t("neetoEmailDelivery.integrationDetail.connectedTitle", {
345
+ provider: providerLabel
346
+ })
347
+ }), /*#__PURE__*/jsxRuntime.jsx("div", {
348
+ className: "bg-success text-success-foreground flex items-center justify-center rounded-full p-1",
349
+ children: /*#__PURE__*/jsxRuntime.jsx(Check, {
350
+ size: 24
351
+ })
352
+ })]
353
+ });
354
+ }
355
+ if (isPending) {
356
+ return /*#__PURE__*/jsxRuntime.jsxs("div", {
357
+ className: "flex items-center gap-2",
358
+ children: [/*#__PURE__*/jsxRuntime.jsx("span", {
359
+ children: t("neetoEmailDelivery.integrationDetail.pendingTitle", {
360
+ provider: providerLabel
361
+ })
362
+ }), /*#__PURE__*/jsxRuntime.jsx("div", {
363
+ className: "text-warning-foreground flex items-center justify-center p-1",
364
+ children: /*#__PURE__*/jsxRuntime.jsx(Warning, {
365
+ size: 24
366
+ })
367
+ })]
368
+ });
369
+ }
370
+ return t("neetoEmailDelivery.integrationDetail.connectTitle", {
371
+ appName: appName,
372
+ provider: providerLabel
373
+ });
374
+ };
375
+ var renderActionBlock = function renderActionBlock() {
376
+ if (isConnected) {
377
+ return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
378
+ "data-testid": "disconnect-button",
379
+ label: t("neetoEmailDelivery.integrationDetail.disconnect"),
380
+ loading: isDestroying,
381
+ variant: "destructive",
382
+ onClick: handleDisconnect
383
+ });
384
+ }
385
+ if (isPending) {
386
+ return /*#__PURE__*/jsxRuntime.jsxs("div", {
387
+ className: "flex items-center gap-2",
388
+ children: [isSparkpostPending && /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
389
+ "data-testid": "continue-verification-button",
390
+ to: ownDomainVerifyRoute,
391
+ label: t("neetoEmailDelivery.sparkpost.emailDelivery.continueVerification")
392
+ }), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
393
+ "data-testid": "disconnect-button",
394
+ label: t("neetoEmailDelivery.integrationDetail.disconnect"),
395
+ loading: isDestroying,
396
+ variant: "destructive",
397
+ onClick: handleDisconnect
398
+ })]
399
+ });
400
+ }
401
+ if (isBlocked) return null;
402
+ return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
403
+ "data-testid": "connect-button",
404
+ label: getConnectButtonLabel(),
405
+ variant: "default",
406
+ onClick: handleConnect
407
+ });
408
+ };
409
+ if (isLoading) {
410
+ return /*#__PURE__*/jsxRuntime.jsx("div", {
411
+ className: "flex grow items-center justify-center w-full",
412
+ children: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Spinner, {})
413
+ });
414
+ }
415
+ return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
416
+ children: [/*#__PURE__*/jsxRuntime.jsxs(CardLayout, {
417
+ actionBlock: renderActionBlock(),
418
+ icon: /*#__PURE__*/jsxRuntime.jsx(Icon, {
419
+ size: 48
420
+ }),
421
+ title: renderTitle(),
422
+ description: isConnected ? /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
423
+ components: {
424
+ bold: /*#__PURE__*/jsxRuntime.jsx("strong", {})
425
+ },
426
+ i18nKey: "neetoEmailDelivery.integrationDetail.connectedEmail",
427
+ values: {
428
+ email: connectedEmail
429
+ }
430
+ }) : description,
431
+ children: [(isConnected ? connectedScopeText || scopeText : scopeText) && /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Typography, {
432
+ variant: "body1",
433
+ children: isConnected ? connectedScopeText || scopeText : scopeText
434
+ }), !isConnected && helpArticleUrl && /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Typography, {
435
+ className: "my-2",
436
+ variant: "body2",
437
+ children: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
438
+ i18nKey: "neetoEmailDelivery.integrationDetail.helpArticleText",
439
+ values: {
440
+ provider: providerLabel
441
+ },
442
+ components: {
443
+ helpLink: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
444
+ "data-testid": "help-doc-link",
445
+ href: helpArticleUrl,
446
+ target: "_blank",
447
+ variant: "link"
448
+ })
449
+ }
450
+ })
451
+ }), !isConnected && !isPending && isBlocked && /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Callout, {
452
+ variant: connectedIntegration.isPending ? "warning" : "danger",
453
+ children: /*#__PURE__*/jsxRuntime.jsx("p", {
454
+ children: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
455
+ components: {
456
+ disconnectLink: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
457
+ "data-testid": "disconnect-link",
458
+ href: activeProviderRoute,
459
+ variant: "link"
460
+ })
461
+ },
462
+ i18nKey: connectedIntegration.isPending ? "neetoEmailDelivery.integrationDetail.pendingIntegrationBlocked" : "neetoEmailDelivery.integrationDetail.onlyOneIntegration",
463
+ values: {
464
+ activeProvider: activeProviderLabel,
465
+ targetProvider: providerLabel
466
+ }
467
+ })
468
+ })
469
+ }), errorMessage && /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Callout, {
470
+ variant: "danger",
471
+ children: errorMessage
472
+ }), isOutlookPending && /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Callout, {
473
+ variant: "warning",
474
+ children: t("neetoEmailDelivery.outlook.waitingForTestEmail", {
475
+ email: connectedEmail
476
+ })
477
+ }), isSparkpostPending && /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Callout, {
478
+ variant: "warning",
479
+ children: t("neetoEmailDelivery.sparkpost.emailDelivery.verificationPending", {
480
+ domain: data === null || data === void 0 ? void 0 : data.domain
481
+ })
482
+ }), showSparkpostConnectedDetails && /*#__PURE__*/jsxRuntime.jsxs("div", {
483
+ className: "flex flex-col gap-2 mt-4",
484
+ children: [neetoCist.isNotEmpty(sparkpostVerificationRecords) && /*#__PURE__*/jsxRuntime.jsx(v2_SparkpostDomainVerify.DnsRecordsSection, {
485
+ dnsRecords: sparkpostVerificationRecords,
486
+ domain: data === null || data === void 0 ? void 0 : data.domain,
487
+ showTitle: false,
488
+ sparkpostData: data
489
+ }), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Callout, {
490
+ variant: "info",
491
+ children: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Typography, {
492
+ variant: "body3",
493
+ children: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
494
+ i18nKey: "neetoEmailDelivery.sparkpost.emailDelivery.spfGuidance",
495
+ components: {
496
+ bold: /*#__PURE__*/jsxRuntime.jsx("strong", {}),
497
+ code: /*#__PURE__*/jsxRuntime.jsx("code", {
498
+ className: "bg-muted rounded px-1"
499
+ })
500
+ }
501
+ })
502
+ })
503
+ })]
504
+ })]
505
+ }), type === INTEGRATION_TYPES.SMTP && /*#__PURE__*/jsxRuntime.jsx(SmtpSetup, {
506
+ ownerId: ownerId,
507
+ isOpen: isSmtpPaneOpen,
508
+ onCancel: function onCancel() {
509
+ return setIsSmtpPaneOpen(false);
510
+ },
511
+ onDone: function onDone() {
512
+ return setIsSmtpPaneOpen(false);
513
+ }
514
+ })]
515
+ });
516
+ };
517
+
518
+ exports.EmailDeliveryScreen = v2_EmailDeliveryScreen;
519
+ exports.SparkpostDomainVerify = v2_SparkpostDomainVerify.SparkpostDomainVerify;
520
+ exports.SparkpostDomainSetup = v2_SparkpostDomainSetup;
521
+ exports.IntegrationDetailPage = IntegrationDetailPage;
522
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../app/javascript/src/v2/components/Smtp/constants.js","../../../app/javascript/src/v2/components/Smtp/Setup.jsx","../../../app/javascript/src/v2/components/IntegrationDetailPage/constants.js","../../../app/javascript/src/v2/components/IntegrationDetailPage/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, Sheet, Typography } from \"@bigbinary/neeto-atoms\";\nimport {\n ActionBlock,\n Form,\n Input,\n RadioGroup,\n} from \"@bigbinary/neeto-atoms/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 <Sheet {...{ isOpen }} size=\"large\" onClose={onCancel}>\n <Sheet.Header>\n <Sheet.Title>\n <Typography variant=\"h2\" weight=\"semibold\">\n {t(\"neetoEmailDelivery.smtp.setup.title\")}\n </Typography>\n </Sheet.Title>\n </Sheet.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 <Sheet.Body className=\"space-y-4\">\n <div className=\"flex flex-col gap-6\">\n <Callout variant=\"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 <RadioGroup\n label={t(\"neetoEmailDelivery.smtp.setup.encryptionLabel\")}\n name=\"encryption\"\n >\n {ENCRYPTION_OPTIONS.map(option => (\n <RadioGroup.Item\n key={option.value}\n label={option.label}\n value={option.value}\n />\n ))}\n </RadioGroup>\n </div>\n </Sheet.Body>\n <Sheet.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onCancel }}\n isSubmitting={isCreating}\n submitButtonProps={{\n label: t(\"neetoEmailDelivery.smtp.setup.saveAndActivate\"),\n }}\n />\n </Sheet.Footer>\n </Form>\n </Sheet>\n );\n};\n\nexport default SmtpSetup;\n","import { t } from \"i18next\";\nimport { MailSend } from \"neetoicons\";\nimport { Gmail as GmailIcon, Outlook as OutlookIcon } from \"neetoicons/misc\";\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\nexport const INTEGRATION_TYPES = {\n GMAIL: \"gmail\",\n OUTLOOK: \"outlook\",\n SPARKPOST: \"sparkpost\",\n SMTP: \"smtp\",\n};\n\nexport const PROVIDER_LABELS = {\n [INTEGRATION_TYPES.GMAIL]: \"Gmail\",\n [INTEGRATION_TYPES.OUTLOOK]: \"Outlook\",\n [INTEGRATION_TYPES.SPARKPOST]: \"Custom email provider\",\n [INTEGRATION_TYPES.SMTP]: \"SMTP\",\n};\n\nexport const PROVIDER_ICONS = {\n [INTEGRATION_TYPES.GMAIL]: GmailIcon,\n [INTEGRATION_TYPES.OUTLOOK]: OutlookIcon,\n [INTEGRATION_TYPES.SPARKPOST]: MailSend,\n [INTEGRATION_TYPES.SMTP]: MailSend,\n};\n","import { useState } from \"react\";\n\nimport {\n Button,\n Callout,\n Spinner,\n Toastr,\n Typography,\n} from \"@bigbinary/neeto-atoms\";\nimport { humanize, isNotEmpty, isPresent } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/v2/react-utils\";\nimport { buildUrl } from \"neetocommons/v2/utils\";\nimport { Check, Warning } from \"neetoicons\";\nimport CardLayout from \"neetomolecules/v2/CardLayout\";\nimport { Trans, 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 useGmail from \"hooks/integrations/useGmail\";\nimport useOutlook from \"hooks/integrations/useOutlook\";\nimport useSmtp from \"hooks/integrations/useSmtp\";\nimport { useFetchConnectedIntegration } from \"hooks/reactQuery/integrations/useEmailDeliveryIntegrationApi\";\nimport SmtpSetup from \"v2/components/Smtp/Setup\";\nimport DnsRecordsSection from \"v2/components/SparkpostDomain/DnsRecordsSection\";\nimport useSparkpostDomain from \"v2/hooks/integrations/useSparkpostDomain\";\n\nimport {\n ERROR_MESSAGES,\n INTEGRATION_TYPES,\n PROVIDER_LABELS,\n PROVIDER_ICONS,\n} from \"./constants\";\n\nconst IntegrationDetailPage = ({\n type,\n ownerId,\n canManageIntegrations,\n appName,\n scopeText,\n connectedScopeText,\n helpArticleUrl,\n indexRoute,\n integrationRoutes,\n ownDomainSetupRoute,\n ownDomainVerifyRoute,\n onBeforeAction,\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n const { error, errorDescription } = useQueryParams();\n const [isSmtpPaneOpen, setIsSmtpPaneOpen] = useState(false);\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 history.replace(integrationRoutes?.[type] ?? indexRoute);\n }\n\n const providerLabel = PROVIDER_LABELS[type];\n const Icon = PROVIDER_ICONS[type];\n const description = t(`neetoEmailDelivery.${type}.description`);\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 { integration: connectedIntegration, isLoading: isIntegrationLoading } =\n useFetchConnectedIntegration(ownerId);\n\n const integrationMap = {\n [INTEGRATION_TYPES.GMAIL]: gmailIntegration,\n [INTEGRATION_TYPES.OUTLOOK]: outlookIntegration,\n [INTEGRATION_TYPES.SPARKPOST]: sparkpostIntegration,\n [INTEGRATION_TYPES.SMTP]: smtpIntegration,\n };\n\n const currentIntegration = integrationMap[type];\n const {\n isConnected,\n isDestroying,\n onDisconnect,\n data = {},\n errorMessage,\n } = currentIntegration;\n\n const connectedEmail = data?.email;\n const sparkpostVerificationRecords = data?.verificationRecords || [];\n const showSparkpostConnectedDetails =\n type === INTEGRATION_TYPES.SPARKPOST && isConnected;\n\n const isOutlookPending =\n type === INTEGRATION_TYPES.OUTLOOK &&\n outlookIntegration.isWaitingForTestEmail;\n\n const isSparkpostPending =\n type === INTEGRATION_TYPES.SPARKPOST &&\n sparkpostIntegration.exists &&\n !isConnected;\n\n const isPending = isOutlookPending || isSparkpostPending;\n\n const isLoading =\n gmailIntegration.isLoading ||\n outlookIntegration.isLoading ||\n sparkpostIntegration.isLoading ||\n smtpIntegration.isLoading ||\n isIntegrationLoading;\n\n const isBlocked = connectedIntegration && connectedIntegration.type !== type;\n\n const activeProviderLabel = isBlocked\n ? PROVIDER_LABELS[connectedIntegration.type]\n : null;\n\n const activeProviderRoute = isBlocked\n ? integrationRoutes?.[connectedIntegration.type]\n : null;\n\n const executeConnect = () => {\n switch (type) {\n case INTEGRATION_TYPES.GMAIL:\n window.location.href = buildUrl(GMAIL_OAUTH_CONNECT_URL, { ownerId });\n break;\n case INTEGRATION_TYPES.OUTLOOK:\n window.location.href = buildUrl(OUTLOOK_OAUTH_CONNECT_URL, {\n ownerId,\n });\n break;\n case INTEGRATION_TYPES.SPARKPOST:\n history.push(ownDomainSetupRoute);\n break;\n case INTEGRATION_TYPES.SMTP:\n setIsSmtpPaneOpen(true);\n break;\n default:\n break;\n }\n };\n\n const handleConnect = () => {\n if (onBeforeAction) {\n onBeforeAction(executeConnect);\n } else {\n executeConnect();\n }\n };\n\n const handleDisconnect = () => {\n if (onBeforeAction) {\n onBeforeAction(onDisconnect);\n } else {\n onDisconnect();\n }\n };\n\n const getConnectButtonLabel = () => {\n switch (type) {\n case INTEGRATION_TYPES.GMAIL:\n return t(\"neetoEmailDelivery.integrationDetail.connectGmail\");\n case INTEGRATION_TYPES.OUTLOOK:\n return t(\"neetoEmailDelivery.integrationDetail.connectOutlook\");\n case INTEGRATION_TYPES.SPARKPOST:\n return t(\"neetoEmailDelivery.integrationDetail.setupDomain\");\n case INTEGRATION_TYPES.SMTP:\n return t(\"neetoEmailDelivery.integrationDetail.connectSmtp\");\n default:\n return \"\";\n }\n };\n\n const renderTitle = () => {\n if (isConnected) {\n return (\n <div className=\"flex items-center gap-2\">\n <span>\n {t(\"neetoEmailDelivery.integrationDetail.connectedTitle\", {\n provider: providerLabel,\n })}\n </span>\n <div className=\"bg-success text-success-foreground flex items-center justify-center rounded-full p-1\">\n <Check size={24} />\n </div>\n </div>\n );\n }\n\n if (isPending) {\n return (\n <div className=\"flex items-center gap-2\">\n <span>\n {t(\"neetoEmailDelivery.integrationDetail.pendingTitle\", {\n provider: providerLabel,\n })}\n </span>\n <div className=\"text-warning-foreground flex items-center justify-center p-1\">\n <Warning size={24} />\n </div>\n </div>\n );\n }\n\n return t(\"neetoEmailDelivery.integrationDetail.connectTitle\", {\n appName,\n provider: providerLabel,\n });\n };\n\n const renderActionBlock = () => {\n if (isConnected) {\n return (\n <Button\n data-testid=\"disconnect-button\"\n label={t(\"neetoEmailDelivery.integrationDetail.disconnect\")}\n loading={isDestroying}\n variant=\"destructive\"\n onClick={handleDisconnect}\n />\n );\n }\n\n if (isPending) {\n return (\n <div className=\"flex items-center gap-2\">\n {isSparkpostPending && (\n <Button\n data-testid=\"continue-verification-button\"\n to={ownDomainVerifyRoute}\n label={t(\n \"neetoEmailDelivery.sparkpost.emailDelivery.continueVerification\"\n )}\n />\n )}\n <Button\n data-testid=\"disconnect-button\"\n label={t(\"neetoEmailDelivery.integrationDetail.disconnect\")}\n loading={isDestroying}\n variant=\"destructive\"\n onClick={handleDisconnect}\n />\n </div>\n );\n }\n\n if (isBlocked) return null;\n\n return (\n <Button\n data-testid=\"connect-button\"\n label={getConnectButtonLabel()}\n variant=\"default\"\n onClick={handleConnect}\n />\n );\n };\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 return (\n <>\n <CardLayout\n actionBlock={renderActionBlock()}\n icon={<Icon size={48} />}\n title={renderTitle()}\n description={\n isConnected ? (\n <Trans\n components={{ bold: <strong /> }}\n i18nKey=\"neetoEmailDelivery.integrationDetail.connectedEmail\"\n values={{ email: connectedEmail }}\n />\n ) : (\n description\n )\n }\n >\n {(isConnected ? connectedScopeText || scopeText : scopeText) && (\n <Typography variant=\"body1\">\n {isConnected ? connectedScopeText || scopeText : scopeText}\n </Typography>\n )}\n {!isConnected && helpArticleUrl && (\n <Typography className=\"my-2\" variant=\"body2\">\n <Trans\n i18nKey=\"neetoEmailDelivery.integrationDetail.helpArticleText\"\n values={{ provider: providerLabel }}\n components={{\n helpLink: (\n <Button\n data-testid=\"help-doc-link\"\n href={helpArticleUrl}\n target=\"_blank\"\n variant=\"link\"\n />\n ),\n }}\n />\n </Typography>\n )}\n {!isConnected && !isPending && isBlocked && (\n <Callout\n variant={connectedIntegration.isPending ? \"warning\" : \"danger\"}\n >\n <p>\n <Trans\n components={{\n disconnectLink: (\n <Button\n data-testid=\"disconnect-link\"\n href={activeProviderRoute}\n variant=\"link\"\n />\n ),\n }}\n i18nKey={\n connectedIntegration.isPending\n ? \"neetoEmailDelivery.integrationDetail.pendingIntegrationBlocked\"\n : \"neetoEmailDelivery.integrationDetail.onlyOneIntegration\"\n }\n values={{\n activeProvider: activeProviderLabel,\n targetProvider: providerLabel,\n }}\n />\n </p>\n </Callout>\n )}\n {errorMessage && <Callout variant=\"danger\">{errorMessage}</Callout>}\n {isOutlookPending && (\n <Callout variant=\"warning\">\n {t(\"neetoEmailDelivery.outlook.waitingForTestEmail\", {\n email: connectedEmail,\n })}\n </Callout>\n )}\n {isSparkpostPending && (\n <Callout variant=\"warning\">\n {t(\n \"neetoEmailDelivery.sparkpost.emailDelivery.verificationPending\",\n { domain: data?.domain }\n )}\n </Callout>\n )}\n {showSparkpostConnectedDetails && (\n <div className=\"flex flex-col gap-2 mt-4\">\n {isNotEmpty(sparkpostVerificationRecords) && (\n <DnsRecordsSection\n dnsRecords={sparkpostVerificationRecords}\n domain={data?.domain}\n showTitle={false}\n sparkpostData={data}\n />\n )}\n <Callout variant=\"info\">\n <Typography variant=\"body3\">\n <Trans\n i18nKey=\"neetoEmailDelivery.sparkpost.emailDelivery.spfGuidance\"\n components={{\n bold: <strong />,\n code: <code className=\"bg-muted rounded px-1\" />,\n }}\n />\n </Typography>\n </Callout>\n </div>\n )}\n </CardLayout>\n {type === INTEGRATION_TYPES.SMTP && (\n <SmtpSetup\n {...{ ownerId }}\n isOpen={isSmtpPaneOpen}\n onCancel={() => setIsSmtpPaneOpen(false)}\n onDone={() => setIsSmtpPaneOpen(false)}\n />\n )}\n </>\n );\n};\n\nexport default IntegrationDetailPage;\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","Sheet","size","onClose","children","_jsx","Header","Title","Typography","variant","weight","Form","className","formikProps","initialValues","validationSchema","onSubmit","Body","Callout","Input","name","type","RadioGroup","map","option","Item","Footer","ActionBlock","cancelButtonProps","onClick","isSubmitting","submitButtonProps","ERROR_MESSAGES","gmail_permission_not_given","outlook_permission_not_given","outlook_invalid_client","outlook_nil_json_web_token","INTEGRATION_TYPES","GMAIL","OUTLOOK","SPARKPOST","SMTP","PROVIDER_LABELS","_defineProperty","PROVIDER_ICONS","GmailIcon","OutlookIcon","MailSend","IntegrationDetailPage","canManageIntegrations","appName","scopeText","connectedScopeText","helpArticleUrl","indexRoute","integrationRoutes","ownDomainSetupRoute","ownDomainVerifyRoute","onBeforeAction","history","useHistory","_useQueryParams","useQueryParams","error","errorDescription","_useState","useState","_useState2","_slicedToArray","isSmtpPaneOpen","setIsSmtpPaneOpen","isPresent","_errorMessage2","_integrationRoutes$ty","errorMessage","concat","Toastr","humanize","replace","providerLabel","Icon","description","gmailIntegration","useGmail","outlookIntegration","useOutlook","sparkpostIntegration","useSparkpostDomain","smtpIntegration","useSmtp","_useFetchConnectedInt","useFetchConnectedIntegration","connectedIntegration","integration","isIntegrationLoading","isLoading","integrationMap","currentIntegration","isConnected","isDestroying","onDisconnect","_currentIntegration$d","data","connectedEmail","sparkpostVerificationRecords","verificationRecords","showSparkpostConnectedDetails","isOutlookPending","isWaitingForTestEmail","isSparkpostPending","exists","isBlocked","activeProviderLabel","activeProviderRoute","executeConnect","window","location","href","buildUrl","GMAIL_OAUTH_CONNECT_URL","OUTLOOK_OAUTH_CONNECT_URL","push","handleConnect","handleDisconnect","getConnectButtonLabel","renderTitle","provider","Check","Warning","renderActionBlock","Button","loading","to","Spinner","_Fragment","CardLayout","actionBlock","icon","title","Trans","components","bold","i18nKey","helpLink","target","disconnectLink","activeProvider","targetProvider","domain","isNotEmpty","DnsRecordsSection","dnsRecords","showTitle","sparkpostData","code"],"mappings":"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"}
package/dist/hooks.js CHANGED
@@ -1,7 +1,7 @@
1
- export { u as useFetchConnectedIntegration } from './useEmailDeliveryIntegrationApi-Dk9WPotT.js';
1
+ export { u as useFetchConnectedIntegration } from './useEmailDeliveryIntegrationApi-CfgmbuRA.js';
2
2
  import '@bigbinary/neeto-cist';
3
3
  import 'ramda';
4
- import './useSparkpostApi-B-D8RNRF.js';
4
+ import './useSparkpostApi-CQT4JD8-.js';
5
5
  import '@babel/runtime/helpers/defineProperty';
6
6
  import '@tanstack/react-query';
7
7
  import '@bigbinary/neeto-commons-frontend/react-utils';