@bigbinary/neeto-molecules 5.1.18 → 5.1.19

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 (102) hide show
  1. package/dist/EmailForm.js +2 -0
  2. package/dist/EmailForm.js.map +1 -1
  3. package/dist/EmailPreview.js +1 -20
  4. package/dist/EmailPreview.js.map +1 -1
  5. package/dist/GoogleFontPicker.js +1 -449
  6. package/dist/GoogleFontPicker.js.map +1 -1
  7. package/dist/IconPicker.js +6 -914
  8. package/dist/IconPicker.js.map +1 -1
  9. package/dist/SendToFields.js +3 -1943
  10. package/dist/SendToFields.js.map +1 -1
  11. package/dist/ShareViaEmail.js +2 -0
  12. package/dist/ShareViaEmail.js.map +1 -1
  13. package/dist/avatar-placeholder-DEjUhVlU.js +23 -0
  14. package/dist/avatar-placeholder-DEjUhVlU.js.map +1 -0
  15. package/dist/cjs/EmailForm.js +2 -0
  16. package/dist/cjs/EmailForm.js.map +1 -1
  17. package/dist/cjs/EmailPreview.js +2 -39
  18. package/dist/cjs/EmailPreview.js.map +1 -1
  19. package/dist/cjs/GoogleFontPicker.js +9 -457
  20. package/dist/cjs/GoogleFontPicker.js.map +1 -1
  21. package/dist/cjs/IconPicker.js +6 -914
  22. package/dist/cjs/IconPicker.js.map +1 -1
  23. package/dist/cjs/SendToFields.js +4 -1944
  24. package/dist/cjs/SendToFields.js.map +1 -1
  25. package/dist/cjs/ShareViaEmail.js +2 -0
  26. package/dist/cjs/ShareViaEmail.js.map +1 -1
  27. package/dist/cjs/avatar-placeholder-CSJpe1V0.js +44 -0
  28. package/dist/cjs/avatar-placeholder-CSJpe1V0.js.map +1 -0
  29. package/dist/cjs/download-B53zeKGa.js +21 -0
  30. package/dist/cjs/download-B53zeKGa.js.map +1 -0
  31. package/dist/cjs/index.es-Bcx0v5Pd.js +454 -0
  32. package/dist/cjs/index.es-Bcx0v5Pd.js.map +1 -0
  33. package/dist/cjs/index.esm-Bb1Vtlp2.js +919 -0
  34. package/dist/cjs/index.esm-Bb1Vtlp2.js.map +1 -0
  35. package/dist/cjs/papaparse-B5u_uWB3.js +1948 -0
  36. package/dist/cjs/papaparse-B5u_uWB3.js.map +1 -0
  37. package/dist/cjs/upload-C5ZnN-d5.js +21 -0
  38. package/dist/cjs/upload-C5ZnN-d5.js.map +1 -0
  39. package/dist/cjs/v2/CalendarView.js +1 -0
  40. package/dist/cjs/v2/CalendarView.js.map +1 -1
  41. package/dist/cjs/v2/DeleteArchiveModal.js +91 -0
  42. package/dist/cjs/v2/DeleteArchiveModal.js.map +1 -0
  43. package/dist/cjs/v2/DownloadMobileAppCallout.js +43 -0
  44. package/dist/cjs/v2/DownloadMobileAppCallout.js.map +1 -0
  45. package/dist/cjs/v2/EmailForm.js +622 -0
  46. package/dist/cjs/v2/EmailForm.js.map +1 -0
  47. package/dist/cjs/v2/EmailPreview.js +138 -0
  48. package/dist/cjs/v2/EmailPreview.js.map +1 -0
  49. package/dist/cjs/v2/EmojiReactions.js +82 -0
  50. package/dist/cjs/v2/EmojiReactions.js.map +1 -0
  51. package/dist/cjs/v2/FileUpload.js +5 -19
  52. package/dist/cjs/v2/FileUpload.js.map +1 -1
  53. package/dist/cjs/v2/GoogleFontPicker.js +130 -0
  54. package/dist/cjs/v2/GoogleFontPicker.js.map +1 -0
  55. package/dist/cjs/v2/IconPicker.js +274 -0
  56. package/dist/cjs/v2/IconPicker.js.map +1 -0
  57. package/dist/cjs/v2/SendToFields.js +313 -0
  58. package/dist/cjs/v2/SendToFields.js.map +1 -0
  59. package/dist/cjs/v2/SubHeader.js +4 -18
  60. package/dist/cjs/v2/SubHeader.js.map +1 -1
  61. package/dist/download-CZ7Q6k7-.js +19 -0
  62. package/dist/download-CZ7Q6k7-.js.map +1 -0
  63. package/dist/index.es-BQ-dr8y1.js +451 -0
  64. package/dist/index.es-BQ-dr8y1.js.map +1 -0
  65. package/dist/index.esm-DLni3-hz.js +917 -0
  66. package/dist/index.esm-DLni3-hz.js.map +1 -0
  67. package/dist/papaparse-p7fkGgWo.js +1946 -0
  68. package/dist/papaparse-p7fkGgWo.js.map +1 -0
  69. package/dist/upload-BNvlRoRJ.js +19 -0
  70. package/dist/upload-BNvlRoRJ.js.map +1 -0
  71. package/dist/v2/CalendarView.js +1 -0
  72. package/dist/v2/CalendarView.js.map +1 -1
  73. package/dist/v2/DeleteArchiveModal.js +89 -0
  74. package/dist/v2/DeleteArchiveModal.js.map +1 -0
  75. package/dist/v2/DownloadMobileAppCallout.js +41 -0
  76. package/dist/v2/DownloadMobileAppCallout.js.map +1 -0
  77. package/dist/v2/EmailForm.js +596 -0
  78. package/dist/v2/EmailForm.js.map +1 -0
  79. package/dist/v2/EmailPreview.js +136 -0
  80. package/dist/v2/EmailPreview.js.map +1 -0
  81. package/dist/v2/EmojiReactions.js +80 -0
  82. package/dist/v2/EmojiReactions.js.map +1 -0
  83. package/dist/v2/FileUpload.js +4 -18
  84. package/dist/v2/FileUpload.js.map +1 -1
  85. package/dist/v2/GoogleFontPicker.js +128 -0
  86. package/dist/v2/GoogleFontPicker.js.map +1 -0
  87. package/dist/v2/IconPicker.js +272 -0
  88. package/dist/v2/IconPicker.js.map +1 -0
  89. package/dist/v2/SendToFields.js +311 -0
  90. package/dist/v2/SendToFields.js.map +1 -0
  91. package/dist/v2/SubHeader.js +3 -17
  92. package/dist/v2/SubHeader.js.map +1 -1
  93. package/package.json +5 -5
  94. package/types/v2/DeleteArchiveModal.d.ts +16 -0
  95. package/types/v2/DownloadMobileAppCallout.d.ts +7 -0
  96. package/types/v2/EmailForm.d.ts +88 -0
  97. package/types/v2/EmailFormProvider.d.ts +29 -0
  98. package/types/v2/EmailPreview.d.ts +16 -0
  99. package/types/v2/EmojiReactions.d.ts +22 -0
  100. package/types/v2/GoogleFontPicker.d.ts +19 -0
  101. package/types/v2/IconPicker.d.ts +11 -0
  102. package/types/v2/SendToFields.d.ts +25 -0
@@ -0,0 +1,43 @@
1
+ 'use strict';
2
+
3
+ var neetoAtoms = require('@bigbinary/neeto-atoms');
4
+ var initializers = require('@bigbinary/neeto-commons-frontend/v2/initializers');
5
+ var reactI18next = require('react-i18next');
6
+ var reactRouterDom = require('react-router-dom');
7
+ var uaParser = require('../ua-parser-DgQ3nYoO.js');
8
+ var jsxRuntime = require('react/jsx-runtime');
9
+
10
+ var MOBILE_PLATFORMS = ["Android", "iOS", "Windows Phone"];
11
+
12
+ var DownloadMobileAppCallout = function DownloadMobileAppCallout(_ref) {
13
+ var _globalProps$appName;
14
+ var excludePathRegex = _ref.excludePathRegex;
15
+ var _useLocation = reactRouterDom.useLocation(),
16
+ pathname = _useLocation.pathname;
17
+ var parser = new uaParser.UAParser(navigator.userAgent);
18
+ var result = parser.getResult();
19
+ var isMobilePlatform = MOBILE_PLATFORMS.includes(result.os.name);
20
+ if (!isMobilePlatform) return null;
21
+ var shouldExcludePath = excludePathRegex && excludePathRegex.test(pathname);
22
+ if (shouldExcludePath) return null;
23
+ var appName = (_globalProps$appName = initializers.globalProps.appName) === null || _globalProps$appName === void 0 ? void 0 : _globalProps$appName.toLowerCase();
24
+ var mobileAppDownloadUrl = "https://www.neeto.com/".concat(appName, "/mobile");
25
+ return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Callout, {
26
+ className: "m-4",
27
+ variant: "warning",
28
+ children: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
29
+ i18nKey: "neetoMolecules.downloadMobileAppCallout.message",
30
+ components: {
31
+ a: /*#__PURE__*/jsxRuntime.jsx("a", {
32
+ className: "text-primary decoration-primary/40 hover:decoration-primary underline underline-offset-4",
33
+ href: mobileAppDownloadUrl,
34
+ rel: "noreferrer",
35
+ target: "_blank"
36
+ })
37
+ }
38
+ })
39
+ });
40
+ };
41
+
42
+ module.exports = DownloadMobileAppCallout;
43
+ //# sourceMappingURL=DownloadMobileAppCallout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DownloadMobileAppCallout.js","sources":["../../../src/v2/components/DownloadMobileAppCallout/constants.js","../../../src/v2/components/DownloadMobileAppCallout/index.jsx"],"sourcesContent":["export const MOBILE_PLATFORMS = [\"Android\", \"iOS\", \"Windows Phone\"];\n","import { Callout } from \"@bigbinary/neeto-atoms\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport PropTypes from \"prop-types\";\nimport { Trans } from \"react-i18next\";\nimport { useLocation } from \"react-router-dom\";\nimport { UAParser } from \"ua-parser-js\";\n\nimport { MOBILE_PLATFORMS } from \"./constants\";\n\nconst DownloadMobileAppCallout = ({ excludePathRegex }) => {\n const { pathname } = useLocation();\n\n const parser = new UAParser(navigator.userAgent);\n const result = parser.getResult();\n const isMobilePlatform = MOBILE_PLATFORMS.includes(result.os.name);\n if (!isMobilePlatform) return null;\n\n const shouldExcludePath = excludePathRegex && excludePathRegex.test(pathname);\n if (shouldExcludePath) return null;\n\n const appName = globalProps.appName?.toLowerCase();\n const mobileAppDownloadUrl = `https://www.neeto.com/${appName}/mobile`;\n\n return (\n <Callout className=\"m-4\" variant=\"warning\">\n <Trans\n i18nKey=\"neetoMolecules.downloadMobileAppCallout.message\"\n components={{\n a: (\n <a\n className=\"text-primary decoration-primary/40 hover:decoration-primary underline underline-offset-4\"\n href={mobileAppDownloadUrl}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n }}\n />\n </Callout>\n );\n};\n\nDownloadMobileAppCallout.propTypes = {\n /**\n * To exclude specific paths where download mobile app callout should be hidden.\n */\n excludePathRegex: PropTypes.instanceOf(RegExp),\n};\n\nexport default DownloadMobileAppCallout;\n"],"names":["MOBILE_PLATFORMS","DownloadMobileAppCallout","_ref","_globalProps$appName","excludePathRegex","_useLocation","useLocation","pathname","parser","UAParser","navigator","userAgent","result","getResult","isMobilePlatform","includes","os","name","shouldExcludePath","test","appName","globalProps","toLowerCase","mobileAppDownloadUrl","concat","_jsx","Callout","className","variant","children","Trans","i18nKey","components","a","href","rel","target"],"mappings":";;;;;;;;;AAAO,IAAMA,gBAAgB,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,eAAe,CAAC;;ACSnE,IAAMC,wBAAwB,GAAG,SAA3BA,wBAAwBA,CAAAC,IAAA,EAA6B;AAAA,EAAA,IAAAC,oBAAA;AAAA,EAAA,IAAvBC,gBAAgB,GAAAF,IAAA,CAAhBE,gBAAgB;AAClD,EAAA,IAAAC,YAAA,GAAqBC,0BAAW,EAAE;IAA1BC,QAAQ,GAAAF,YAAA,CAARE,QAAQ;EAEhB,IAAMC,MAAM,GAAG,IAAIC,iBAAQ,CAACC,SAAS,CAACC,SAAS,CAAC;AAChD,EAAA,IAAMC,MAAM,GAAGJ,MAAM,CAACK,SAAS,EAAE;EACjC,IAAMC,gBAAgB,GAAGd,gBAAgB,CAACe,QAAQ,CAACH,MAAM,CAACI,EAAE,CAACC,IAAI,CAAC;AAClE,EAAA,IAAI,CAACH,gBAAgB,EAAE,OAAO,IAAI;EAElC,IAAMI,iBAAiB,GAAGd,gBAAgB,IAAIA,gBAAgB,CAACe,IAAI,CAACZ,QAAQ,CAAC;EAC7E,IAAIW,iBAAiB,EAAE,OAAO,IAAI;AAElC,EAAA,IAAME,OAAO,GAAA,CAAAjB,oBAAA,GAAGkB,wBAAW,CAACD,OAAO,MAAA,IAAA,IAAAjB,oBAAA,KAAA,MAAA,GAAA,MAAA,GAAnBA,oBAAA,CAAqBmB,WAAW,EAAE;AAClD,EAAA,IAAMC,oBAAoB,GAAA,wBAAA,CAAAC,MAAA,CAA4BJ,OAAO,EAAA,SAAA,CAAS;EAEtE,oBACEK,cAAA,CAACC,kBAAO,EAAA;AAACC,IAAAA,SAAS,EAAC,KAAK;AAACC,IAAAA,OAAO,EAAC,SAAS;IAAAC,QAAA,eACxCJ,cAAA,CAACK,kBAAK,EAAA;AACJC,MAAAA,OAAO,EAAC,iDAAiD;AACzDC,MAAAA,UAAU,EAAE;AACVC,QAAAA,CAAC,eACCR,cAAA,CAAA,GAAA,EAAA;AACEE,UAAAA,SAAS,EAAC,0FAA0F;AACpGO,UAAAA,IAAI,EAAEX,oBAAqB;AAC3BY,UAAAA,GAAG,EAAC,YAAY;AAChBC,UAAAA,MAAM,EAAC;SACR;AAEL;KACD;AAAC,GACK,CAAC;AAEd;;;;"}
@@ -0,0 +1,622 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
6
+ var React = require('react');
7
+ var neetoAtoms = require('@bigbinary/neeto-atoms');
8
+ var formik$1 = require('@bigbinary/neeto-atoms/formik');
9
+ var classnames = require('classnames');
10
+ var formik = require('formik');
11
+ var neetoCist = require('@bigbinary/neeto-cist');
12
+ var initializers = require('@bigbinary/neeto-commons-frontend/v2/initializers');
13
+ var FormikEditor = require('@bigbinary/neeto-editor/v2/FormikEditor');
14
+ var ramda = require('ramda');
15
+ var reactI18next = require('react-i18next');
16
+ var i18next = require('i18next');
17
+ var utils = require('@bigbinary/neeto-editor/utils');
18
+ var yup = require('yup');
19
+ var _typeof = require('@babel/runtime/helpers/typeof');
20
+ var jsxRuntime = require('react/jsx-runtime');
21
+ var v2_SendToFields = require('./SendToFields.js');
22
+ var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
23
+ var general = require('@bigbinary/neeto-commons-frontend/v2/utils/general');
24
+ var v2_DynamicVariables = require('./DynamicVariables.js');
25
+ var v2_Header = require('./Header.js');
26
+ var v2_MobilePreviewHeader = require('./MobilePreviewHeader.js');
27
+ var v2_EmailPreview = require('./EmailPreview.js');
28
+ require('@babel/runtime/helpers/toConsumableArray');
29
+ require('react-dropzone');
30
+ require('@bigbinary/neeto-commons-frontend/v2/react-utils');
31
+ require('../download-B53zeKGa.js');
32
+ require('../createLucideIcon-DBDhE7kE.js');
33
+ require('../upload-C5ZnN-d5.js');
34
+ require('../papaparse-B5u_uWB3.js');
35
+ require('../_commonjsHelpers-BJu3ubxk.js');
36
+ require('stream');
37
+ require('@babel/runtime/helpers/objectWithoutProperties');
38
+ require('./Breadcrumbs.js');
39
+ require('@bigbinary/neeto-atoms/primitives');
40
+ require('react-router-dom');
41
+ require('./HelpPopover.js');
42
+ require('../circle-question-mark-kxBMPyWQ.js');
43
+ require('./MoreDropdown.js');
44
+ require('../ellipsis-BcfLTtl5.js');
45
+ require('./Search.js');
46
+ require('@bigbinary/neeto-commons-frontend/v2/react-utils/useFuncDebounce');
47
+ require('@bigbinary/neeto-commons-frontend/v2/react-utils/useQueryParams');
48
+ require('@bigbinary/neeto-commons-frontend/v2/react-utils/useUpdateEffect');
49
+ require('@bigbinary/neeto-commons-frontend/v2/utils');
50
+ require('../search-BBuFYdmG.js');
51
+ require('@bigbinary/neeto-commons-frontend/react-utils');
52
+ require('../index-JY2zVpnv.js');
53
+ require('@bigbinary/neeto-editor/EditorContent');
54
+ require('../avatar-placeholder-CSJpe1V0.js');
55
+
56
+ function _interopNamespaceDefault(e) {
57
+ var n = Object.create(null);
58
+ if (e) {
59
+ Object.keys(e).forEach(function (k) {
60
+ if (k !== 'default') {
61
+ var d = Object.getOwnPropertyDescriptor(e, k);
62
+ Object.defineProperty(n, k, d.get ? d : {
63
+ enumerable: true,
64
+ get: function () { return e[k]; }
65
+ });
66
+ }
67
+ });
68
+ }
69
+ n.default = e;
70
+ return Object.freeze(n);
71
+ }
72
+
73
+ var yup__namespace = /*#__PURE__*/_interopNamespaceDefault(yup);
74
+
75
+ var INITIAL_FORM_VALUES = {
76
+ sendTo: [],
77
+ sendToId: "",
78
+ sendToCc: [],
79
+ sendToBcc: [],
80
+ replyTo: "",
81
+ showCopyEmails: false,
82
+ subject: "",
83
+ message: "",
84
+ isEnabled: false
85
+ };
86
+ var EMAIL_FORM_VALIDATION_SCHEMA = yup__namespace.object({
87
+ subject: yup__namespace.string().required(i18next.t("neetoMolecules.emailForm.errors.subjectRequired")),
88
+ message: yup__namespace.string().test("message", i18next.t("neetoMolecules.emailForm.errors.messageRequired"), function (value) {
89
+ return !utils.isEditorEmpty(value);
90
+ })
91
+ });
92
+ var sendToFieldValidation = function sendToFieldValidation(maxEmails) {
93
+ var validation = yup__namespace.array().test("all-emails-valid", i18next.t("neetoMolecules.emailForm.errors.invalidEmailAddress"), function (emails) {
94
+ return emails === null || emails === void 0 ? void 0 : emails.every(ramda.prop("valid"));
95
+ }).test("max-email-count", i18next.t("neetoMolecules.emailForm.errors.maxEmails", {
96
+ count: maxEmails
97
+ }), function (emails) {
98
+ return (emails === null || emails === void 0 ? void 0 : emails.length) <= maxEmails;
99
+ });
100
+ return yup__namespace.object({
101
+ sendTo: validation.min(1, i18next.t("neetoMolecules.emailForm.errors.required", {
102
+ entity: i18next.t("neetoMolecules.emailForm.fields.sendToEmailAddress")
103
+ })).nullable(),
104
+ sendToCc: validation,
105
+ sendToBcc: validation
106
+ });
107
+ };
108
+ var SEND_TO_ID_FIELD_VALIDATION = yup__namespace.object({
109
+ sendToId: yup__namespace.string().required(i18next.t("neetoMolecules.emailForm.errors.required", {
110
+ entity: i18next.t("neetoMolecules.emailForm.labels.sendTo")
111
+ }))
112
+ });
113
+ var REPLY_TO_FIELD_VALIDATION = yup__namespace.object({
114
+ replyTo: yup__namespace.string().nullable().email(i18next.t("neetoMolecules.emailForm.errors.invalidEmailAddress")).required(i18next.t("neetoMolecules.emailForm.errors.required", {
115
+ entity: i18next.t("neetoMolecules.emailForm.fields.replyToEmailAddress")
116
+ }))
117
+ });
118
+ var EDITOR_ADDONS = ["highlight", "emoji", "code-block", "block-quote", "image-upload", "divider", "video-embed"];
119
+
120
+ /* eslint-disable @bigbinary/neeto/use-zustand-for-global-state-management */
121
+ var EmailFormContext = /*#__PURE__*/React.createContext({
122
+ showSendToField: false,
123
+ showSendToAsRadio: false,
124
+ showReplyToField: false,
125
+ showCcField: false,
126
+ showBccField: false
127
+ });
128
+
129
+ function ownKeys$3(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
130
+ function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
131
+ var getValidationSchema = function getValidationSchema(_ref) {
132
+ var showSendToField = _ref.showSendToField,
133
+ showReplyToField = _ref.showReplyToField,
134
+ showSendToAsRadio = _ref.showSendToAsRadio,
135
+ customValidations = _ref.customValidations,
136
+ maxEmails = _ref.maxEmails;
137
+ var schema = EMAIL_FORM_VALIDATION_SCHEMA.clone();
138
+ if (showSendToField) {
139
+ schema = schema.concat(showSendToAsRadio ? SEND_TO_ID_FIELD_VALIDATION : sendToFieldValidation(maxEmails));
140
+ }
141
+ if (showReplyToField) schema = schema.concat(REPLY_TO_FIELD_VALIDATION);
142
+ var isYupObject = customValidations.type === "object";
143
+ if (isYupObject) {
144
+ var customFields = customValidations.fields || {};
145
+ schema = schema.shape(customFields);
146
+ } else if (_typeof(customValidations) === "object") {
147
+ schema = schema.shape(customValidations);
148
+ }
149
+ return schema;
150
+ };
151
+ var getReplyToFieldLabelProps = function getReplyToFieldLabelProps(_ref2) {
152
+ var popoverProps = _ref2.popoverProps;
153
+ return {
154
+ helpIconProps: _objectSpread$3({
155
+ className: "reply-to-help-icon"
156
+ }, neetoCist.isPresent(popoverProps) ? {
157
+ popoverProps: _objectSpread$3(_objectSpread$3({}, popoverProps), {}, {
158
+ description: popoverProps.description || i18next.t("neetoMolecules.emailForm.tooltips.replyTo")
159
+ })
160
+ } : {
161
+ tooltipProps: {
162
+ content: i18next.t("neetoMolecules.emailForm.tooltips.replyTo")
163
+ }
164
+ })
165
+ };
166
+ };
167
+ var resolveContent = function resolveContent(content, func, variable) {
168
+ if (typeof func === "function") {
169
+ return func(content, variable);
170
+ }
171
+ return content;
172
+ };
173
+ var normalizeHtmlString = function normalizeHtmlString(str) {
174
+ if (typeof str !== "string") return str;
175
+ return str.replace(/\uFEFF/g, "").replace(/\r\n|\r/g, "\n").replace(/&nbsp;/g, " ").replace(/[\t ]+/g, " ").replace(/\s*\n\s*/g, "\n").replace(/\n+/g, "\n").replace(/>\s+</g, "><").trim();
176
+ };
177
+
178
+ var ReplyToField = function ReplyToField(_ref) {
179
+ var _ref$options = _ref.options,
180
+ options = _ref$options === void 0 ? [] : _ref$options,
181
+ _ref$popoverProps = _ref.popoverProps,
182
+ popoverProps = _ref$popoverProps === void 0 ? {} : _ref$popoverProps;
183
+ var _useTranslation = reactI18next.useTranslation(),
184
+ t = _useTranslation.t;
185
+ var _useFormikContext = formik.useFormikContext(),
186
+ setFieldValue = _useFormikContext.setFieldValue;
187
+ var isDropdownField = neetoCist.isNotEmpty(options);
188
+ var labelProps = getReplyToFieldLabelProps({
189
+ popoverProps: popoverProps
190
+ });
191
+ if (isDropdownField) {
192
+ return /*#__PURE__*/jsxRuntime.jsx(formik$1.Select, {
193
+ labelProps: labelProps,
194
+ options: options,
195
+ isClearable: true,
196
+ className: "w-full",
197
+ "data-testid": "reply-to-select-field",
198
+ label: t("neetoMolecules.emailForm.labels.replyTo"),
199
+ name: "replyTo",
200
+ onChange: function onChange(value) {
201
+ return setFieldValue("replyTo", value !== null && value !== void 0 ? value : "");
202
+ }
203
+ });
204
+ }
205
+ return /*#__PURE__*/jsxRuntime.jsx(formik$1.Input, {
206
+ labelProps: labelProps,
207
+ autoFocus: true,
208
+ nakedInput: true,
209
+ required: true,
210
+ className: "w-full",
211
+ "data-testid": "reply-to-input-field",
212
+ label: t("neetoMolecules.emailForm.labels.replyTo"),
213
+ name: "replyTo",
214
+ placeholder: t("neetoMolecules.emailForm.placeholders.emailPlaceholder"),
215
+ size: "large",
216
+ onChange: function onChange(event) {
217
+ var _event$target$value;
218
+ return setFieldValue("replyTo", (_event$target$value = event.target.value) === null || _event$target$value === void 0 ? void 0 : _event$target$value.toLowerCase());
219
+ }
220
+ });
221
+ };
222
+
223
+ var SendToField = function SendToField(_ref) {
224
+ var showBccField = _ref.showBccField,
225
+ showCcField = _ref.showCcField,
226
+ showSendToTextField = _ref.showSendToTextField;
227
+ var _useTranslation = reactI18next.useTranslation(),
228
+ t = _useTranslation.t;
229
+ if (!showSendToTextField && !showBccField && !showCcField) return null;
230
+ return /*#__PURE__*/jsxRuntime.jsx(v2_SendToFields, {
231
+ showCcBccButton: true,
232
+ showBccField: showSendToTextField ? false : showBccField,
233
+ showCcField: showSendToTextField ? false : showCcField,
234
+ showSendToField: showSendToTextField,
235
+ bccInputProps: {
236
+ label: t("neetoMolecules.emailForm.labels.bCc"),
237
+ name: "sendToBcc",
238
+ placeholder: t("neetoMolecules.emailForm.placeholders.commaSeparatedEmails")
239
+ },
240
+ ccInputProps: {
241
+ label: t("neetoMolecules.emailForm.labels.cc"),
242
+ name: "sendToCc",
243
+ placeholder: t("neetoMolecules.emailForm.placeholders.commaSeparatedEmails")
244
+ },
245
+ emailInputProps: {
246
+ id: "sendTo",
247
+ name: "sendTo",
248
+ label: t("neetoMolecules.emailForm.labels.sendTo"),
249
+ placeholder: t("neetoMolecules.emailForm.placeholders.commaSeparatedEmails"),
250
+ required: true
251
+ }
252
+ });
253
+ };
254
+
255
+ var SubjectField = function SubjectField(_ref) {
256
+ var name = _ref.name,
257
+ text = _ref.text,
258
+ updateText = _ref.updateText,
259
+ _ref$subjectVariables = _ref.subjectVariables,
260
+ subjectVariables = _ref$subjectVariables === void 0 ? [] : _ref$subjectVariables,
261
+ error = _ref.error,
262
+ _ref$required = _ref.required,
263
+ required = _ref$required === void 0 ? false : _ref$required,
264
+ onBlur = _ref.onBlur;
265
+ var _useState = React.useState(false),
266
+ _useState2 = _slicedToArray(_useState, 2),
267
+ isFieldFocusedOnce = _useState2[0],
268
+ setIsFieldFocusedOnce = _useState2[1];
269
+ var _useTranslation = reactI18next.useTranslation(),
270
+ t = _useTranslation.t;
271
+ var tagClickHandler = function tagClickHandler(_ref2) {
272
+ var slug = _ref2.key,
273
+ category = _ref2.category;
274
+ var textAreaElement = document.querySelector("textarea[name=".concat(name, "]"));
275
+ var splitIndex = isFieldFocusedOnce && textAreaElement ? textAreaElement.selectionEnd : text.length;
276
+ var variable = category ? "".concat(category, ".").concat(slug) : slug;
277
+ var updatedSubject = [text.slice(0, splitIndex), " {{".concat(variable, "}}"), text.slice(splitIndex)].join("");
278
+ updateText(updatedSubject);
279
+ };
280
+ return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Input, {
281
+ error: error,
282
+ name: name,
283
+ onBlur: onBlur,
284
+ required: required,
285
+ nakedInput: true,
286
+ label: t("neetoMolecules.emailForm.labels.subject"),
287
+ placeholder: t("neetoMolecules.emailForm.placeholders.subject"),
288
+ value: text,
289
+ suffix: /*#__PURE__*/jsxRuntime.jsx(v2_DynamicVariables, {
290
+ buttonProps: {
291
+ className: "m-1"
292
+ },
293
+ dropdownProps: {
294
+ className: "overflow-y-auto"
295
+ },
296
+ variables: subjectVariables,
297
+ onVariableClick: tagClickHandler
298
+ }),
299
+ onChange: general.withEventTargetValue(updateText),
300
+ onFocus: function onFocus() {
301
+ return setIsFieldFocusedOnce(true);
302
+ }
303
+ });
304
+ };
305
+
306
+ function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
307
+ function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
308
+ var EmailForm = function EmailForm(_ref) {
309
+ var _globalProps$user;
310
+ var _ref$messageVariables = _ref.messageVariables,
311
+ messageVariables = _ref$messageVariables === void 0 ? [] : _ref$messageVariables,
312
+ _ref$subjectVariables = _ref.subjectVariables,
313
+ subjectVariables = _ref$subjectVariables === void 0 ? [] : _ref$subjectVariables,
314
+ handleCancel = _ref.handleCancel,
315
+ handleResetToDefault = _ref.handleResetToDefault,
316
+ isLoading = _ref.isLoading,
317
+ replyToFieldProps = _ref.replyToFieldProps,
318
+ sendToFieldProps = _ref.sendToFieldProps,
319
+ replyToOptions = _ref.replyToOptions,
320
+ _ref$sendToOptions = _ref.sendToOptions,
321
+ sendToOptions = _ref$sendToOptions === void 0 ? [] : _ref$sendToOptions,
322
+ _ref$isUpdating = _ref.isUpdating,
323
+ isUpdating = _ref$isUpdating === void 0 ? false : _ref$isUpdating,
324
+ _ref$isResetting = _ref.isResetting,
325
+ isResetting = _ref$isResetting === void 0 ? false : _ref$isResetting,
326
+ _ref$showFields = _ref.showFields,
327
+ showFields = _ref$showFields === void 0 ? true : _ref$showFields,
328
+ _ref$className = _ref.className,
329
+ className = _ref$className === void 0 ? "" : _ref$className,
330
+ _ref$editorAddons = _ref.editorAddons,
331
+ editorAddons = _ref$editorAddons === void 0 ? EDITOR_ADDONS : _ref$editorAddons,
332
+ showResetToDefaultButton = _ref.showResetToDefaultButton,
333
+ _ref$editorRef = _ref.editorRef,
334
+ editorRef = _ref$editorRef === void 0 ? null : _ref$editorRef,
335
+ _ref$defaultValues = _ref.defaultValues,
336
+ defaultValues = _ref$defaultValues === void 0 ? {} : _ref$defaultValues;
337
+ var _useTranslation = reactI18next.useTranslation(),
338
+ t = _useTranslation.t;
339
+ var _useContext = React.useContext(EmailFormContext),
340
+ showSendToField = _useContext.showSendToField,
341
+ showSendToAsRadio = _useContext.showSendToAsRadio,
342
+ showReplyToField = _useContext.showReplyToField,
343
+ showCcField = _useContext.showCcField,
344
+ showBccField = _useContext.showBccField;
345
+ var _useFormikContext = formik.useFormikContext(),
346
+ setFieldValue = _useFormikContext.setFieldValue,
347
+ values = _useFormikContext.values,
348
+ resetForm = _useFormikContext.resetForm;
349
+ var normalizedValues = _objectSpread$2(_objectSpread$2({}, values), {}, {
350
+ message: normalizeHtmlString(values.message)
351
+ });
352
+ var normalizedDefaultValues = _objectSpread$2(_objectSpread$2({}, defaultValues), {}, {
353
+ message: normalizeHtmlString(defaultValues === null || defaultValues === void 0 ? void 0 : defaultValues.message)
354
+ });
355
+ normalizedDefaultValues.replyTo || (normalizedDefaultValues.replyTo = (_globalProps$user = initializers.globalProps.user) === null || _globalProps$user === void 0 ? void 0 : _globalProps$user.email);
356
+ var disabled = ramda.equals(normalizedValues, normalizedDefaultValues);
357
+ var sendToFieldOptions = (sendToFieldProps === null || sendToFieldProps === void 0 ? void 0 : sendToFieldProps.options) || sendToOptions;
358
+ var showSendToRadioField = showSendToField && showSendToAsRadio && neetoCist.isNotEmpty(sendToFieldOptions);
359
+ var showSendToTextField = showSendToField && !showSendToRadioField;
360
+ return /*#__PURE__*/jsxRuntime.jsxs("div", {
361
+ "data-testid": "email-form",
362
+ className: classnames("flex flex-1 flex-col items-start gap-2 !pb-0", _defineProperty({}, className, className)),
363
+ children: [/*#__PURE__*/jsxRuntime.jsx("div", {
364
+ className: "w-full grow",
365
+ children: showFields && /*#__PURE__*/jsxRuntime.jsxs("div", {
366
+ className: "flex w-full flex-col items-start justify-start gap-5",
367
+ children: [showSendToRadioField && /*#__PURE__*/jsxRuntime.jsx(formik$1.RadioGroup, {
368
+ className: "pb-2",
369
+ "data-testid": "send-to-id",
370
+ label: t("neetoMolecules.emailForm.labels.sendTo"),
371
+ labelProps: {
372
+ required: true
373
+ },
374
+ name: "sendToId",
375
+ children: sendToFieldOptions.map(function (_ref2) {
376
+ var label = _ref2.label,
377
+ value = _ref2.value;
378
+ return /*#__PURE__*/React.createElement(formik$1.RadioGroup.Item, {
379
+ label: label,
380
+ value: value,
381
+ key: value
382
+ });
383
+ })
384
+ }), /*#__PURE__*/jsxRuntime.jsx(SendToField, {
385
+ showBccField: showBccField,
386
+ showCcField: showCcField,
387
+ showSendToTextField: showSendToTextField
388
+ }), showReplyToField && /*#__PURE__*/jsxRuntime.jsx("div", {
389
+ className: "border-border w-full border-b pb-1",
390
+ children: /*#__PURE__*/jsxRuntime.jsx(ReplyToField, _objectSpread$2({
391
+ options: replyToOptions
392
+ }, replyToFieldProps))
393
+ }), /*#__PURE__*/jsxRuntime.jsx(formik.Field, {
394
+ name: "subject",
395
+ children: function children(_ref3) {
396
+ var _ref3$field = _ref3.field,
397
+ value = _ref3$field.value,
398
+ onBlur = _ref3$field.onBlur,
399
+ _ref3$meta = _ref3.meta,
400
+ error = _ref3$meta.error,
401
+ touched = _ref3$meta.touched;
402
+ return /*#__PURE__*/jsxRuntime.jsx("div", {
403
+ className: "border-border w-full border-b pb-1",
404
+ children: /*#__PURE__*/jsxRuntime.jsx(SubjectField, {
405
+ onBlur: onBlur,
406
+ subjectVariables: subjectVariables,
407
+ required: true,
408
+ error: touched && error ? t(error) : undefined,
409
+ name: "subject",
410
+ text: value,
411
+ updateText: function updateText(text) {
412
+ return setFieldValue("subject", text);
413
+ }
414
+ })
415
+ });
416
+ }
417
+ }), /*#__PURE__*/jsxRuntime.jsx("div", {
418
+ className: "w-full",
419
+ "data-testid": "message-input-container",
420
+ children: /*#__PURE__*/jsxRuntime.jsx(FormikEditor, {
421
+ required: true,
422
+ addons: editorAddons,
423
+ "data-testid": "message-input-field",
424
+ hideSlashCommands: false,
425
+ id: "form_message",
426
+ menuType: "fixed",
427
+ name: "message",
428
+ placeholder: t("neetoMolecules.emailForm.placeholders.message"),
429
+ ref: editorRef,
430
+ variables: messageVariables,
431
+ shouldUpdate: function shouldUpdate(nextProps, prevProps) {
432
+ return neetoCist.notEqualsDeep(nextProps.variables, prevProps.variables);
433
+ }
434
+ })
435
+ })]
436
+ })
437
+ }), /*#__PURE__*/jsxRuntime.jsxs("div", {
438
+ className: "bg-background z-10 flex w-full justify-between py-6 lg:sticky lg:bottom-0",
439
+ children: [/*#__PURE__*/jsxRuntime.jsx(formik$1.ActionBlock, {
440
+ cancelButtonProps: {
441
+ onClick: handleCancel
442
+ },
443
+ isSubmitting: isLoading || isUpdating
444
+ }), showResetToDefaultButton && /*#__PURE__*/jsxRuntime.jsx("div", {
445
+ children: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
446
+ disabled: disabled,
447
+ "data-testid": "reset-to-default-button",
448
+ label: t("neetoMolecules.emailForm.labels.resetToDefault"),
449
+ loading: isResetting,
450
+ variant: "secondary",
451
+ onClick: function onClick() {
452
+ resetForm();
453
+ handleResetToDefault();
454
+ }
455
+ })
456
+ })]
457
+ })]
458
+ });
459
+ };
460
+
461
+ function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
462
+ function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
463
+ var EmailFormComponent = function EmailFormComponent(_ref) {
464
+ var _ref$onSubmit = _ref.onSubmit,
465
+ onSubmit = _ref$onSubmit === void 0 ? neetoCist.noop : _ref$onSubmit,
466
+ _ref$initialValues = _ref.initialValues,
467
+ initialValues = _ref$initialValues === void 0 ? INITIAL_FORM_VALUES : _ref$initialValues,
468
+ _children = _ref.children,
469
+ formikProps = _ref.formikProps,
470
+ validationSchema = _ref.validationSchema,
471
+ _ref$showSendToField = _ref.showSendToField,
472
+ showSendToField = _ref$showSendToField === void 0 ? false : _ref$showSendToField,
473
+ _ref$showReplyToField = _ref.showReplyToField,
474
+ showReplyToField = _ref$showReplyToField === void 0 ? false : _ref$showReplyToField,
475
+ _ref$showSendToAsRadi = _ref.showSendToAsRadio,
476
+ showSendToAsRadio = _ref$showSendToAsRadi === void 0 ? false : _ref$showSendToAsRadi,
477
+ _ref$blockNavigation = _ref.blockNavigation,
478
+ blockNavigation = _ref$blockNavigation === void 0 ? true : _ref$blockNavigation,
479
+ _ref$showCcField = _ref.showCcField,
480
+ showCcField = _ref$showCcField === void 0 ? false : _ref$showCcField,
481
+ _ref$showBccField = _ref.showBccField,
482
+ showBccField = _ref$showBccField === void 0 ? false : _ref$showBccField,
483
+ _ref$isLoading = _ref.isLoading,
484
+ isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
485
+ _ref$maxEmails = _ref.maxEmails,
486
+ maxEmails = _ref$maxEmails === void 0 ? 10 : _ref$maxEmails,
487
+ _ref$emailFormProps = _ref.emailFormProps,
488
+ emailFormProps = _ref$emailFormProps === void 0 ? {} : _ref$emailFormProps,
489
+ _ref$emailPreviewProp = _ref.emailPreviewProps,
490
+ emailPreviewProps = _ref$emailPreviewProp === void 0 ? {} : _ref$emailPreviewProp,
491
+ _ref$headerProps = _ref.headerProps,
492
+ headerProps = _ref$headerProps === void 0 ? {} : _ref$headerProps,
493
+ _ref$tooltipProps = _ref.tooltipProps,
494
+ tooltipProps = _ref$tooltipProps === void 0 ? {} : _ref$tooltipProps,
495
+ _ref$switchProps = _ref.switchProps,
496
+ switchProps = _ref$switchProps === void 0 ? {} : _ref$switchProps,
497
+ _ref$mobilePreviewPro = _ref.mobilePreviewProps,
498
+ mobilePreviewProps = _ref$mobilePreviewPro === void 0 ? {} : _ref$mobilePreviewPro;
499
+ var formatBody = emailPreviewProps.formatBody,
500
+ formatSubject = emailPreviewProps.formatSubject,
501
+ bodyVariables = emailPreviewProps.bodyVariables,
502
+ subjectVariables = emailPreviewProps.subjectVariables;
503
+ var shouldShowFields = function shouldShowFields(values) {
504
+ return ramda.isEmpty(switchProps) || values.isEnabled;
505
+ };
506
+ return /*#__PURE__*/jsxRuntime.jsx(EmailFormProvider, {
507
+ formikProps: formikProps,
508
+ initialValues: initialValues,
509
+ maxEmails: maxEmails,
510
+ onSubmit: onSubmit,
511
+ showBccField: showBccField,
512
+ showCcField: showCcField,
513
+ showReplyToField: showReplyToField,
514
+ showSendToAsRadio: showSendToAsRadio,
515
+ showSendToField: showSendToField,
516
+ validationSchema: validationSchema,
517
+ children: function children(_ref2) {
518
+ var _values$sendTo;
519
+ var values = _ref2.values,
520
+ isSubmitting = _ref2.isSubmitting;
521
+ return /*#__PURE__*/jsxRuntime.jsxs("div", {
522
+ className: "flex h-[calc(100dvh-64px)] flex-grow flex-col overflow-y-auto lg:flex-row",
523
+ children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
524
+ className: "flex w-full flex-col px-5 md:px-10 lg:h-full lg:w-1/2 lg:overflow-y-auto",
525
+ children: [blockNavigation && /*#__PURE__*/jsxRuntime.jsx(formik$1.BlockNavigation, {}), neetoCist.isNotEmpty(headerProps) && /*#__PURE__*/jsxRuntime.jsx(v2_Header, _objectSpread$1({
526
+ className: "px-0",
527
+ size: "small"
528
+ }, headerProps)), neetoCist.isNotEmpty(switchProps) && /*#__PURE__*/jsxRuntime.jsx("div", {
529
+ className: "flex items-center justify-between gap-y-0.5 pb-6",
530
+ children: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Tooltip, _objectSpread$1(_objectSpread$1({
531
+ disabled: !(switchProps !== null && switchProps !== void 0 && switchProps.disabled),
532
+ position: "top"
533
+ }, tooltipProps), {}, {
534
+ children: /*#__PURE__*/jsxRuntime.jsx("div", {
535
+ className: "flex items-center gap-2",
536
+ children: /*#__PURE__*/jsxRuntime.jsx(formik$1.Switch, _objectSpread$1({
537
+ "data-testid": "switch",
538
+ name: "isEnabled"
539
+ }, switchProps))
540
+ })
541
+ }))
542
+ }), shouldShowFields(values) && _children, /*#__PURE__*/jsxRuntime.jsx(EmailForm, _objectSpread$1({
543
+ isLoading: isSubmitting || isLoading,
544
+ isUpdating: isSubmitting || isLoading,
545
+ showFields: shouldShowFields(values)
546
+ }, emailFormProps))]
547
+ }), shouldShowFields(values) && /*#__PURE__*/jsxRuntime.jsx(v2_MobilePreviewHeader, _objectSpread$1({
548
+ className: "lg:hidden"
549
+ }, mobilePreviewProps)), shouldShowFields(values) && /*#__PURE__*/jsxRuntime.jsx("div", {
550
+ className: "bg-muted w-full px-6 py-10 lg:w-1/2 lg:overflow-y-auto",
551
+ children: /*#__PURE__*/jsxRuntime.jsx(v2_EmailPreview, _objectSpread$1({
552
+ body: resolveContent(values.message, formatBody, bodyVariables),
553
+ from: values.sendFrom,
554
+ to: ramda.pluck("value", (_values$sendTo = values === null || values === void 0 ? void 0 : values.sendTo) !== null && _values$sendTo !== void 0 ? _values$sendTo : []),
555
+ subject: resolveContent(values.subject, formatSubject, subjectVariables)
556
+ }, emailPreviewProps))
557
+ })]
558
+ });
559
+ }
560
+ });
561
+ };
562
+
563
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
564
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
565
+ var EmailFormProvider = function EmailFormProvider(_ref) {
566
+ var _globalProps$user;
567
+ var _ref$onSubmit = _ref.onSubmit,
568
+ onSubmit = _ref$onSubmit === void 0 ? neetoCist.noop : _ref$onSubmit,
569
+ _ref$initialValues = _ref.initialValues,
570
+ initialValues = _ref$initialValues === void 0 ? INITIAL_FORM_VALUES : _ref$initialValues,
571
+ children = _ref.children,
572
+ formikProps = _ref.formikProps,
573
+ _ref$validationSchema = _ref.validationSchema,
574
+ customValidations = _ref$validationSchema === void 0 ? {} : _ref$validationSchema,
575
+ _ref$showSendToField = _ref.showSendToField,
576
+ showSendToField = _ref$showSendToField === void 0 ? false : _ref$showSendToField,
577
+ _ref$showReplyToField = _ref.showReplyToField,
578
+ showReplyToField = _ref$showReplyToField === void 0 ? false : _ref$showReplyToField,
579
+ _ref$showSendToAsRadi = _ref.showSendToAsRadio,
580
+ showSendToAsRadio = _ref$showSendToAsRadi === void 0 ? false : _ref$showSendToAsRadi,
581
+ _ref$showCcField = _ref.showCcField,
582
+ showCcField = _ref$showCcField === void 0 ? false : _ref$showCcField,
583
+ _ref$showBccField = _ref.showBccField,
584
+ showBccField = _ref$showBccField === void 0 ? false : _ref$showBccField,
585
+ _ref$maxEmails = _ref.maxEmails,
586
+ maxEmails = _ref$maxEmails === void 0 ? 10 : _ref$maxEmails;
587
+ return /*#__PURE__*/jsxRuntime.jsx("div", {
588
+ "data-testid": "email-form-provider",
589
+ children: /*#__PURE__*/jsxRuntime.jsx(EmailFormContext.Provider, {
590
+ value: {
591
+ showSendToField: showSendToField,
592
+ showSendToAsRadio: showSendToAsRadio,
593
+ showReplyToField: showReplyToField,
594
+ showCcField: showCcField,
595
+ showBccField: showBccField
596
+ },
597
+ children: /*#__PURE__*/jsxRuntime.jsx(formik$1.Form, {
598
+ formikProps: _objectSpread({
599
+ enableReinitialize: true,
600
+ validationSchema: getValidationSchema({
601
+ showSendToField: showSendToField,
602
+ showReplyToField: showReplyToField,
603
+ showSendToAsRadio: showSendToAsRadio,
604
+ customValidations: customValidations,
605
+ maxEmails: maxEmails
606
+ }),
607
+ initialValues: _objectSpread(_objectSpread({}, initialValues), {}, {
608
+ replyTo: initialValues.replyTo || ((_globalProps$user = initializers.globalProps.user) === null || _globalProps$user === void 0 ? void 0 : _globalProps$user.email)
609
+ }),
610
+ onSubmit: onSubmit
611
+ }, formikProps),
612
+ children: children
613
+ })
614
+ })
615
+ });
616
+ };
617
+
618
+ exports.EmailPreview = v2_EmailPreview;
619
+ exports.EmailForm = EmailForm;
620
+ exports.EmailFormProvider = EmailFormProvider;
621
+ exports.default = EmailFormComponent;
622
+ //# sourceMappingURL=EmailForm.js.map