@bigbinary/neeto-molecules 1.1.78 → 1.2.0-beta2
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.
- package/README.md +67 -52
- package/dist/Breadcrumbs.js +16 -19
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/BrowserSupport.js +41 -138
- package/dist/BrowserSupport.js.map +1 -1
- package/dist/Builder.js +207 -364
- package/dist/Builder.js.map +1 -1
- package/dist/CalendarView.js +40 -288
- package/dist/CalendarView.js.map +1 -1
- package/dist/Chevron-c639aa31.js +190 -0
- package/dist/Chevron-c639aa31.js.map +1 -0
- package/dist/Codeblock.js +26 -209
- package/dist/Codeblock.js.map +1 -1
- package/dist/Columns.js +16 -240
- package/dist/Columns.js.map +1 -1
- package/dist/ConfigurePageSidebar.js +97 -0
- package/dist/ConfigurePageSidebar.js.map +1 -0
- package/dist/ConfirmationModal.js +10 -10
- package/dist/ConfirmationModal.js.map +1 -1
- package/dist/Container.js +5 -1187
- package/dist/Container.js.map +1 -1
- package/dist/CopyToClipboardButton.js +26 -155
- package/dist/CopyToClipboardButton.js.map +1 -1
- package/dist/Currency.js +912 -0
- package/dist/Currency.js.map +1 -0
- package/dist/CustomDomain.js +37 -633
- package/dist/CustomDomain.js.map +1 -1
- package/dist/CustomDomainDashboard.js +69 -2192
- package/dist/CustomDomainDashboard.js.map +1 -1
- package/dist/DateFormat.js +6 -20
- package/dist/DateFormat.js.map +1 -1
- package/dist/DateRangeFilter.js +22 -77
- package/dist/DateRangeFilter.js.map +1 -1
- package/dist/DeleteArchiveModal.js +86 -0
- package/dist/DeleteArchiveModal.js.map +1 -0
- package/dist/DocumentEditor.js +43 -133
- package/dist/DocumentEditor.js.map +1 -1
- package/dist/DownloadMobileAppCallout.js +4 -4
- package/dist/DownloadMobileAppCallout.js.map +1 -1
- package/dist/DynamicVariables.js +12 -95
- package/dist/DynamicVariables.js.map +1 -1
- package/dist/EmailForm.js +79 -1741
- package/dist/EmailForm.js.map +1 -1
- package/dist/EmailPreview.js +32 -1213
- package/dist/EmailPreview.js.map +1 -1
- package/dist/EmojiPicker.js +106 -0
- package/dist/EmojiPicker.js.map +1 -0
- package/dist/EmojiReactions.js +69 -0
- package/dist/EmojiReactions.js.map +1 -0
- package/dist/ErrorPage.js +17 -26
- package/dist/ErrorPage.js.map +1 -1
- package/dist/FloatingActionMenu.js +646 -0
- package/dist/FloatingActionMenu.js.map +1 -0
- package/dist/Header.js +45 -117
- package/dist/Header.js.map +1 -1
- package/dist/HelpPopover.js +73 -0
- package/dist/HelpPopover.js.map +1 -0
- package/dist/IconPicker.js +36 -129
- package/dist/IconPicker.js.map +1 -1
- package/dist/ImageWithFallback.js +8 -144
- package/dist/ImageWithFallback.js.map +1 -1
- package/dist/InlineInput.js +25 -528
- package/dist/InlineInput.js.map +1 -1
- package/dist/Insights.js +305 -0
- package/dist/Insights.js.map +1 -0
- package/dist/IntegrationCard.js +42 -226
- package/dist/IntegrationCard.js.map +1 -1
- package/dist/IntegrationDisconnectAlert.js +6 -48
- package/dist/IntegrationDisconnectAlert.js.map +1 -1
- package/dist/IntegrationWalkthroughModal.js +10 -10
- package/dist/IntegrationWalkthroughModal.js.map +1 -1
- package/dist/IpRestriction.js +74 -221
- package/dist/IpRestriction.js.map +1 -1
- package/dist/KeyboardShortcuts.js +38 -128
- package/dist/KeyboardShortcuts.js.map +1 -1
- package/dist/LoginPage.js +44 -463
- package/dist/LoginPage.js.map +1 -1
- package/dist/MadeWith.js +32 -0
- package/dist/MadeWith.js.map +1 -0
- package/dist/MenuBar.js +34 -1295
- package/dist/MenuBar.js.map +1 -1
- package/dist/Metadata.js +65 -86
- package/dist/Metadata.js.map +1 -1
- package/dist/MoreDropdown.js +48 -107
- package/dist/MoreDropdown.js.map +1 -1
- package/dist/NavigationHeader.js +62 -733
- package/dist/NavigationHeader.js.map +1 -1
- package/dist/NeetoWidget.js +148 -316
- package/dist/NeetoWidget.js.map +1 -1
- package/dist/Onboarding.js +204 -0
- package/dist/Onboarding.js.map +1 -0
- package/dist/OptionFields.js +507 -0
- package/dist/OptionFields.js.map +1 -0
- package/dist/PageLoader.js +9 -112
- package/dist/PageLoader.js.map +1 -1
- package/dist/PhoneNumber.js +122 -201
- package/dist/PhoneNumber.js.map +1 -1
- package/dist/ProductEmbed.js +767 -0
- package/dist/ProductEmbed.js.map +1 -0
- package/dist/PublishBlock.js +19 -60
- package/dist/PublishBlock.js.map +1 -1
- package/dist/PublishYourItem.js +52 -0
- package/dist/PublishYourItem.js.map +1 -0
- package/dist/Rename.js +127 -394
- package/dist/Rename.js.map +1 -1
- package/dist/ResponsiveDevicePicker.js +8 -144
- package/dist/ResponsiveDevicePicker.js.map +1 -1
- package/dist/Schedule.js +134 -389
- package/dist/Schedule.js.map +1 -1
- package/dist/Scrollable.js +6 -89
- package/dist/Scrollable.js.map +1 -1
- package/dist/Search.js +54 -157
- package/dist/Search.js.map +1 -1
- package/dist/Security.js +72 -1567
- package/dist/Security.js.map +1 -1
- package/dist/SendToFields.js +51 -133
- package/dist/SendToFields.js.map +1 -1
- package/dist/Settings.js +141 -412
- package/dist/Settings.js.map +1 -1
- package/dist/ShareRecordingPane.js +189 -0
- package/dist/ShareRecordingPane.js.map +1 -0
- package/dist/ShareViaEmail.js +126 -551
- package/dist/ShareViaEmail.js.map +1 -1
- package/dist/ShareViaLink.js +127 -345
- package/dist/ShareViaLink.js.map +1 -1
- package/dist/Sidebar.js +161 -758
- package/dist/Sidebar.js.map +1 -1
- package/dist/StickyRibbonsContainer.js +81 -0
- package/dist/StickyRibbonsContainer.js.map +1 -0
- package/dist/SubHeader.js +63 -108
- package/dist/SubHeader.js.map +1 -1
- package/dist/SuffixedInput.js +105 -0
- package/dist/SuffixedInput.js.map +1 -0
- package/dist/TableWrapper.js +8 -9
- package/dist/TableWrapper.js.map +1 -1
- package/dist/Taxonomy.js +112 -1774
- package/dist/Taxonomy.js.map +1 -1
- package/dist/ThemeSidebar.js +168 -784
- package/dist/ThemeSidebar.js.map +1 -1
- package/dist/TimeFormat.js +8 -44
- package/dist/TimeFormat.js.map +1 -1
- package/dist/TimezoneMismatchModal.js +49 -84
- package/dist/TimezoneMismatchModal.js.map +1 -1
- package/dist/ToggleFeatureCard.js +46 -169
- package/dist/ToggleFeatureCard.js.map +1 -1
- package/dist/cjs/Breadcrumbs.js +49 -0
- package/dist/cjs/Breadcrumbs.js.map +1 -0
- package/dist/cjs/BrowserSupport.js +332 -0
- package/dist/cjs/BrowserSupport.js.map +1 -0
- package/dist/cjs/Builder.js +560 -0
- package/dist/cjs/Builder.js.map +1 -0
- package/dist/cjs/CalendarView.js +303 -0
- package/dist/cjs/CalendarView.js.map +1 -0
- package/dist/cjs/Chevron-5fe59f57.js +206 -0
- package/dist/cjs/Chevron-5fe59f57.js.map +1 -0
- package/dist/cjs/Codeblock.js +59 -0
- package/dist/cjs/Codeblock.js.map +1 -0
- package/dist/cjs/Columns.js +31 -0
- package/dist/cjs/Columns.js.map +1 -0
- package/dist/cjs/ConfigurePageSidebar.js +105 -0
- package/dist/cjs/ConfigurePageSidebar.js.map +1 -0
- package/dist/cjs/ConfirmationModal.js +120 -0
- package/dist/cjs/ConfirmationModal.js.map +1 -0
- package/dist/cjs/Container.js +36 -0
- package/dist/cjs/Container.js.map +1 -0
- package/dist/cjs/CopyToClipboardButton.js +90 -0
- package/dist/cjs/CopyToClipboardButton.js.map +1 -0
- package/dist/cjs/Currency.js +923 -0
- package/dist/cjs/Currency.js.map +1 -0
- package/dist/cjs/CustomDomain.js +126 -0
- package/dist/cjs/CustomDomain.js.map +1 -0
- package/dist/cjs/CustomDomainDashboard.js +202 -0
- package/dist/cjs/CustomDomainDashboard.js.map +1 -0
- package/dist/cjs/DateFormat.js +41 -0
- package/dist/cjs/DateFormat.js.map +1 -0
- package/dist/cjs/DateRangeFilter.js +183 -0
- package/dist/cjs/DateRangeFilter.js.map +1 -0
- package/dist/cjs/DeleteArchiveModal.js +93 -0
- package/dist/cjs/DeleteArchiveModal.js.map +1 -0
- package/dist/cjs/DocumentEditor.js +197 -0
- package/dist/cjs/DocumentEditor.js.map +1 -0
- package/dist/cjs/DownloadMobileAppCallout.js +45 -0
- package/dist/cjs/DownloadMobileAppCallout.js.map +1 -0
- package/dist/cjs/DynamicVariables.js +109 -0
- package/dist/cjs/DynamicVariables.js.map +1 -0
- package/dist/cjs/EmailForm.js +397 -0
- package/dist/cjs/EmailForm.js.map +1 -0
- package/dist/cjs/EmailPreview.js +139 -0
- package/dist/cjs/EmailPreview.js.map +1 -0
- package/dist/cjs/EmojiPicker.js +115 -0
- package/dist/cjs/EmojiPicker.js.map +1 -0
- package/dist/cjs/EmojiReactions.js +77 -0
- package/dist/cjs/EmojiReactions.js.map +1 -0
- package/dist/cjs/ErrorPage.js +180 -0
- package/dist/cjs/ErrorPage.js.map +1 -0
- package/dist/cjs/FloatingActionMenu.js +680 -0
- package/dist/cjs/FloatingActionMenu.js.map +1 -0
- package/dist/cjs/Header.js +107 -0
- package/dist/cjs/Header.js.map +1 -0
- package/dist/cjs/HelpPopover.js +82 -0
- package/dist/cjs/HelpPopover.js.map +1 -0
- package/dist/cjs/IconPicker.js +231 -0
- package/dist/cjs/IconPicker.js.map +1 -0
- package/dist/cjs/ImageWithFallback.js +56 -0
- package/dist/cjs/ImageWithFallback.js.map +1 -0
- package/dist/cjs/InlineInput.js +240 -0
- package/dist/cjs/InlineInput.js.map +1 -0
- package/dist/cjs/Insights.js +311 -0
- package/dist/cjs/Insights.js.map +1 -0
- package/dist/cjs/IntegrationCard.js +210 -0
- package/dist/cjs/IntegrationCard.js.map +1 -0
- package/dist/cjs/IntegrationDisconnectAlert.js +50 -0
- package/dist/cjs/IntegrationDisconnectAlert.js.map +1 -0
- package/dist/cjs/IntegrationWalkthroughModal.js +51 -0
- package/dist/cjs/IntegrationWalkthroughModal.js.map +1 -0
- package/dist/cjs/IpRestriction.js +527 -0
- package/dist/cjs/IpRestriction.js.map +1 -0
- package/dist/cjs/KeyboardShortcuts.js +284 -0
- package/dist/cjs/KeyboardShortcuts.js.map +1 -0
- package/dist/cjs/LoginPage.js +202 -0
- package/dist/cjs/LoginPage.js.map +1 -0
- package/dist/cjs/MadeWith.js +40 -0
- package/dist/cjs/MadeWith.js.map +1 -0
- package/dist/cjs/MenuBar.js +211 -0
- package/dist/cjs/MenuBar.js.map +1 -0
- package/dist/cjs/Metadata.js +196 -0
- package/dist/cjs/Metadata.js.map +1 -0
- package/dist/cjs/MoreDropdown.js +155 -0
- package/dist/cjs/MoreDropdown.js.map +1 -0
- package/dist/cjs/NavigationHeader.js +187 -0
- package/dist/cjs/NavigationHeader.js.map +1 -0
- package/dist/cjs/NeetoWidget.js +915 -0
- package/dist/cjs/NeetoWidget.js.map +1 -0
- package/dist/cjs/Onboarding.js +216 -0
- package/dist/cjs/Onboarding.js.map +1 -0
- package/dist/cjs/OptionFields.js +518 -0
- package/dist/cjs/OptionFields.js.map +1 -0
- package/dist/cjs/PageLoader.js +40 -0
- package/dist/cjs/PageLoader.js.map +1 -0
- package/dist/cjs/PhoneNumber.js +367 -0
- package/dist/cjs/PhoneNumber.js.map +1 -0
- package/dist/cjs/ProductEmbed.js +777 -0
- package/dist/cjs/ProductEmbed.js.map +1 -0
- package/dist/cjs/PublishBlock.js +127 -0
- package/dist/cjs/PublishBlock.js.map +1 -0
- package/dist/cjs/PublishYourItem.js +59 -0
- package/dist/cjs/PublishYourItem.js.map +1 -0
- package/dist/cjs/Rename.js +354 -0
- package/dist/cjs/Rename.js.map +1 -0
- package/dist/cjs/ResponsiveDevicePicker.js +68 -0
- package/dist/cjs/ResponsiveDevicePicker.js.map +1 -0
- package/dist/cjs/Schedule.js +874 -0
- package/dist/cjs/Schedule.js.map +1 -0
- package/dist/cjs/Scrollable.js +49 -0
- package/dist/cjs/Scrollable.js.map +1 -0
- package/dist/cjs/Search.js +121 -0
- package/dist/cjs/Search.js.map +1 -0
- package/dist/cjs/Security.js +379 -0
- package/dist/cjs/Security.js.map +1 -0
- package/dist/cjs/SendToFields.js +275 -0
- package/dist/cjs/SendToFields.js.map +1 -0
- package/dist/cjs/Settings.js +217 -0
- package/dist/cjs/Settings.js.map +1 -0
- package/dist/cjs/ShareRecordingPane.js +199 -0
- package/dist/cjs/ShareRecordingPane.js.map +1 -0
- package/dist/cjs/ShareViaEmail.js +353 -0
- package/dist/cjs/ShareViaEmail.js.map +1 -0
- package/dist/cjs/ShareViaLink.js +508 -0
- package/dist/cjs/ShareViaLink.js.map +1 -0
- package/dist/cjs/Sidebar.js +292 -0
- package/dist/cjs/Sidebar.js.map +1 -0
- package/dist/cjs/StickyRibbonsContainer.js +90 -0
- package/dist/cjs/StickyRibbonsContainer.js.map +1 -0
- package/dist/cjs/SubHeader.js +181 -0
- package/dist/cjs/SubHeader.js.map +1 -0
- package/dist/cjs/SuffixedInput.js +114 -0
- package/dist/cjs/SuffixedInput.js.map +1 -0
- package/dist/cjs/TableWrapper.js +32 -0
- package/dist/cjs/TableWrapper.js.map +1 -0
- package/dist/cjs/Taxonomy.js +445 -0
- package/dist/cjs/Taxonomy.js.map +1 -0
- package/dist/cjs/ThemeSidebar.js +1443 -0
- package/dist/cjs/ThemeSidebar.js.map +1 -0
- package/dist/cjs/TimeFormat.js +15 -0
- package/dist/cjs/TimeFormat.js.map +1 -0
- package/dist/cjs/TimezoneMismatchModal.js +144 -0
- package/dist/cjs/TimezoneMismatchModal.js.map +1 -0
- package/dist/cjs/ToggleFeatureCard.js +213 -0
- package/dist/cjs/ToggleFeatureCard.js.map +1 -0
- package/dist/cjs/index-248c4f4c.js +1186 -0
- package/dist/cjs/index-248c4f4c.js.map +1 -0
- package/dist/cjs/index-7db1772e.js +544 -0
- package/dist/cjs/index-7db1772e.js.map +1 -0
- package/dist/cjs/inject-css-80a5faa3.js +6 -0
- package/dist/cjs/inject-css-80a5faa3.js.map +1 -0
- package/dist/cjs/useColumns-9978cf70.js +275 -0
- package/dist/cjs/useColumns-9978cf70.js.map +1 -0
- package/dist/index-7d311b7a.js +509 -0
- package/dist/index-7d311b7a.js.map +1 -0
- package/dist/index-e5588516.js +1184 -0
- package/dist/index-e5588516.js.map +1 -0
- package/dist/inject-css-c86de496.js +4 -0
- package/dist/inject-css-c86de496.js.map +1 -0
- package/dist/useColumns-751e9192.js +258 -0
- package/dist/useColumns-751e9192.js.map +1 -0
- package/package.json +30 -19
- package/src/translations/de.json +7 -0
- package/src/translations/en.json +191 -31
- package/src/translations/es.json +7 -0
- package/src/translations/fr.json +7 -0
- package/src/translations/nl.json +7 -0
- package/src/translations/pl.json +7 -0
- package/src/translations/pt.json +7 -0
- package/types/Breadcrumbs.d.ts +1 -0
- package/types/Builder.d.ts +61 -12
- package/types/Columns.d.ts +112 -5
- package/types/ConfigurePageSidebar.d.ts +43 -0
- package/types/CopyToClipboardButton.d.ts +3 -0
- package/types/Currency.d.ts +48 -0
- package/types/CustomDomain.d.ts +2 -0
- package/types/CustomDomainDashboard.d.ts +14 -0
- package/types/DateRangeFilter.d.ts +2 -0
- package/types/DeleteArchiveModal.d.ts +60 -0
- package/types/EmailForm.d.ts +1 -1
- package/types/EmojiPicker.d.ts +33 -0
- package/types/EmojiReactions.d.ts +60 -0
- package/types/ErrorPage.d.ts +1 -0
- package/types/FloatingActionMenu.d.ts +56 -0
- package/types/Header.d.ts +2 -1
- package/types/HelpPopover.d.ts +42 -0
- package/types/Insights.d.ts +108 -0
- package/types/IntegrationCard.d.ts +2 -0
- package/types/KeyboardShortcuts.d.ts +2 -2
- package/types/MadeWith.d.ts +16 -0
- package/types/MoreDropdown.d.ts +4 -1
- package/types/NavigationHeader.d.ts +3 -1
- package/types/Onboarding.d.ts +65 -0
- package/types/OptionFields.d.ts +63 -0
- package/types/PhoneNumber.d.ts +6 -2
- package/types/ProductEmbed.d.ts +87 -0
- package/types/Rename.d.ts +4 -1
- package/types/Schedule.d.ts +2 -0
- package/types/Search.d.ts +2 -0
- package/types/Settings.d.ts +13 -10
- package/types/ShareRecordingPane.d.ts +50 -0
- package/types/ShareViaLink.d.ts +15 -4
- package/types/Sidebar.d.ts +16 -32
- package/types/StickyRibbonsContainer.d.ts +26 -0
- package/types/SubHeader.d.ts +0 -1
- package/types/SuffixedInput.d.ts +43 -0
- package/types/ToggleFeatureCard.d.ts +8 -1
package/dist/ShareViaEmail.js
CHANGED
|
@@ -1,422 +1,27 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
1
|
+
import React__default, { forwardRef, useMemo, useRef } from 'react';
|
|
2
|
+
import { LeftArrow } from '@bigbinary/neeto-icons';
|
|
3
|
+
import { DateTimePicker, Label, Typography, Button } from '@bigbinary/neetoui';
|
|
4
|
+
import { Input, Switch, ActionBlock, Form as Form$1 } from '@bigbinary/neetoui/formik';
|
|
5
|
+
import { useTranslation } from 'react-i18next';
|
|
6
|
+
import EmailPreview from './EmailPreview.js';
|
|
6
7
|
import classnames from 'classnames';
|
|
7
|
-
import {
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import {
|
|
11
|
-
import
|
|
8
|
+
import { useField, useFormikContext } from 'formik';
|
|
9
|
+
import SendToFields from './SendToFields.js';
|
|
10
|
+
import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
|
|
11
|
+
import { FormikEditor, isEditorEmpty } from '@bigbinary/neeto-editor';
|
|
12
|
+
import _extends from '@babel/runtime/helpers/extends';
|
|
13
|
+
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
14
|
+
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
15
|
+
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
16
|
+
import dayjs from 'dayjs';
|
|
12
17
|
import { t } from 'i18next';
|
|
13
|
-
import
|
|
18
|
+
import '@bigbinary/neeto-cist';
|
|
19
|
+
import 'papaparse';
|
|
14
20
|
import { prop } from 'ramda';
|
|
15
21
|
import * as yup from 'yup';
|
|
16
|
-
import
|
|
17
|
-
import
|
|
18
|
-
|
|
19
|
-
var MemoizedEditorContent = /*#__PURE__*/React.memo(EditorContent);
|
|
20
|
-
var EmailPreview = withT(function (_ref) {
|
|
21
|
-
var t = _ref.t,
|
|
22
|
-
_ref$to = _ref.to,
|
|
23
|
-
to = _ref$to === void 0 ? [] : _ref$to,
|
|
24
|
-
subject = _ref.subject,
|
|
25
|
-
body = _ref.body,
|
|
26
|
-
productName = _ref.productName,
|
|
27
|
-
actionButtonText = _ref.actionButtonText,
|
|
28
|
-
_ref$className = _ref.className,
|
|
29
|
-
className = _ref$className === void 0 ? "" : _ref$className;
|
|
30
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
31
|
-
"data-cy": "email-preview-card",
|
|
32
|
-
"data-testid": "email-preview",
|
|
33
|
-
className: classnames("neeto-ui-border-gray-300 neeto-ui-shadow-m neeto-ui-bg-white flex flex-1 flex-col border", className)
|
|
34
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
35
|
-
className: "neeto-ui-border-gray-300 space-y-6 divide-y divide-gray-200 border-b p-6"
|
|
36
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
37
|
-
className: "flex gap-2",
|
|
38
|
-
"data-cy": "email-send-to-preview",
|
|
39
|
-
"data-testid": "email-to-block"
|
|
40
|
-
}, /*#__PURE__*/React.createElement(Typography, {
|
|
41
|
-
className: "neeto-ui-text-gray-500",
|
|
42
|
-
lineHeight: "normal",
|
|
43
|
-
style: "body2"
|
|
44
|
-
}, t("neetoMolecules.emailPreview.to"), ":"), isPresent(to) ? /*#__PURE__*/React.createElement(Typography, {
|
|
45
|
-
className: "neeto-ui-text-gray-800 min-w-0 flex-grow break-words",
|
|
46
|
-
lineHeight: "normal",
|
|
47
|
-
style: "body2"
|
|
48
|
-
}, to.join(", ")) : /*#__PURE__*/React.createElement("div", {
|
|
49
|
-
className: "neeto-ui-bg-gray-300 neeto-ui-rounded-full mt-2 h-2 w-40"
|
|
50
|
-
})), /*#__PURE__*/React.createElement("div", {
|
|
51
|
-
className: "flex items-center gap-2 pt-6"
|
|
52
|
-
}, /*#__PURE__*/React.createElement(Typography, {
|
|
53
|
-
className: "neeto-ui-text-gray-500",
|
|
54
|
-
lineHeight: "normal",
|
|
55
|
-
style: "body2"
|
|
56
|
-
}, t("neetoMolecules.emailPreview.subject"), ":"), /*#__PURE__*/React.createElement(Typography, {
|
|
57
|
-
className: "neeto-ui-text-gray-800 min-w-0 flex-grow break-words",
|
|
58
|
-
"data-cy": "email-subject-preview",
|
|
59
|
-
lineHeight: "normal",
|
|
60
|
-
style: "body2"
|
|
61
|
-
}, subject || /*#__PURE__*/React.createElement("span", {
|
|
62
|
-
className: "neeto-ui-bg-gray-300 neeto-ui-rounded-full h-2 w-40"
|
|
63
|
-
})))), /*#__PURE__*/React.createElement("div", {
|
|
64
|
-
className: "neeto-ui-text-gray-800 my-10 flex flex-1 flex-col justify-between space-y-6 p-6 pr-10 text-base leading-relaxed",
|
|
65
|
-
"data-cy": "email-body-preview-container"
|
|
66
|
-
}, body ? /*#__PURE__*/React.createElement(MemoizedEditorContent, {
|
|
67
|
-
content: body
|
|
68
|
-
}) : /*#__PURE__*/React.createElement("div", {
|
|
69
|
-
className: "space-y-4"
|
|
70
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
71
|
-
className: "neeto-ui-bg-gray-300 neeto-ui-rounded-full h-2 w-80"
|
|
72
|
-
}), /*#__PURE__*/React.createElement("div", {
|
|
73
|
-
className: "neeto-ui-bg-gray-300 neeto-ui-rounded-full h-2 w-72"
|
|
74
|
-
}), /*#__PURE__*/React.createElement("div", {
|
|
75
|
-
className: "neeto-ui-bg-gray-300 neeto-ui-rounded-full h-2 w-80"
|
|
76
|
-
})), actionButtonText && /*#__PURE__*/React.createElement("div", {
|
|
77
|
-
className: "mt-6 flex w-full items-center justify-center"
|
|
78
|
-
}, /*#__PURE__*/React.createElement(Button, {
|
|
79
|
-
className: "pointer-events-none",
|
|
80
|
-
label: actionButtonText
|
|
81
|
-
}))), productName && /*#__PURE__*/React.createElement("div", {
|
|
82
|
-
className: "neeto-ui-bg-gray-100 mt-auto p-2",
|
|
83
|
-
"data-testid": "product-name-block"
|
|
84
|
-
}, /*#__PURE__*/React.createElement(Typography, {
|
|
85
|
-
className: "neeto-ui-text-gray-600 text-center leading-6",
|
|
86
|
-
style: "body3"
|
|
87
|
-
}, t("neetoMolecules.emailPreview.poweredBy"), /*#__PURE__*/React.createElement("span", {
|
|
88
|
-
className: "neeto-ui-text-gray-800 font-medium"
|
|
89
|
-
}, productName))));
|
|
90
|
-
});
|
|
91
|
-
|
|
92
|
-
function _extends() {
|
|
93
|
-
_extends = Object.assign ? Object.assign.bind() : function (target) {
|
|
94
|
-
for (var i = 1; i < arguments.length; i++) {
|
|
95
|
-
var source = arguments[i];
|
|
96
|
-
for (var key in source) {
|
|
97
|
-
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
98
|
-
target[key] = source[key];
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
return target;
|
|
103
|
-
};
|
|
104
|
-
return _extends.apply(this, arguments);
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
function _arrayLikeToArray(arr, len) {
|
|
108
|
-
if (len == null || len > arr.length) len = arr.length;
|
|
109
|
-
for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
|
|
110
|
-
return arr2;
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
function _arrayWithoutHoles(arr) {
|
|
114
|
-
if (Array.isArray(arr)) return _arrayLikeToArray(arr);
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
function _iterableToArray(iter) {
|
|
118
|
-
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
function _unsupportedIterableToArray(o, minLen) {
|
|
122
|
-
if (!o) return;
|
|
123
|
-
if (typeof o === "string") return _arrayLikeToArray(o, minLen);
|
|
124
|
-
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
125
|
-
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
126
|
-
if (n === "Map" || n === "Set") return Array.from(o);
|
|
127
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
function _nonIterableSpread() {
|
|
131
|
-
throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
function _toConsumableArray(arr) {
|
|
135
|
-
return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
function _arrayWithHoles(arr) {
|
|
139
|
-
if (Array.isArray(arr)) return arr;
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
function _iterableToArrayLimit(r, l) {
|
|
143
|
-
var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
|
|
144
|
-
if (null != t) {
|
|
145
|
-
var e,
|
|
146
|
-
n,
|
|
147
|
-
i,
|
|
148
|
-
u,
|
|
149
|
-
a = [],
|
|
150
|
-
f = !0,
|
|
151
|
-
o = !1;
|
|
152
|
-
try {
|
|
153
|
-
if (i = (t = t.call(r)).next, 0 === l) {
|
|
154
|
-
if (Object(t) !== t) return;
|
|
155
|
-
f = !1;
|
|
156
|
-
} else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
|
|
157
|
-
} catch (r) {
|
|
158
|
-
o = !0, n = r;
|
|
159
|
-
} finally {
|
|
160
|
-
try {
|
|
161
|
-
if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
|
|
162
|
-
} finally {
|
|
163
|
-
if (o) throw n;
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
return a;
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
function _nonIterableRest() {
|
|
171
|
-
throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
172
|
-
}
|
|
173
|
-
|
|
174
|
-
function _slicedToArray(arr, i) {
|
|
175
|
-
return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
var ALLOWED_FILE_TYPES = [".csv"];
|
|
179
|
-
var ONE_MEGABYTE_IN_BYTES = 1024 * 1024;
|
|
180
|
-
var DOWNLOAD_SAMPLE_EMAIL_CSV_FILE = "https://d2v7kzglnr2dnh.cloudfront.net/others/sample-bulk-email.csv";
|
|
181
|
-
|
|
182
|
-
var Requirements = withT(function (_ref) {
|
|
183
|
-
var t = _ref.t,
|
|
184
|
-
fileSize = _ref.fileSize;
|
|
185
|
-
return /*#__PURE__*/React.createElement(Callout, {
|
|
186
|
-
className: "flex flex-col items-center py-6",
|
|
187
|
-
style: "info"
|
|
188
|
-
}, /*#__PURE__*/React.createElement("ul", {
|
|
189
|
-
className: "list-outside list-disc space-y-1 font-normal leading-normal"
|
|
190
|
-
}, fileSize && /*#__PURE__*/React.createElement("li", null, t("neetoMolecules.shareViaLink.requirements.fileTypeAndSize", {
|
|
191
|
-
limit: fileSize
|
|
192
|
-
})), /*#__PURE__*/React.createElement("li", null, /*#__PURE__*/React.createElement(Trans, {
|
|
193
|
-
components: {
|
|
194
|
-
strong: /*#__PURE__*/React.createElement("strong", {
|
|
195
|
-
className: "font-semibold"
|
|
196
|
-
})
|
|
197
|
-
},
|
|
198
|
-
i18nKey: "neetoMolecules.shareViaLink.requirements.shouldContainColumns"
|
|
199
|
-
}))), /*#__PURE__*/React.createElement(Button, {
|
|
200
|
-
href: DOWNLOAD_SAMPLE_EMAIL_CSV_FILE,
|
|
201
|
-
icon: Download,
|
|
202
|
-
iconPosition: "left",
|
|
203
|
-
label: t("neetoMolecules.shareViaLink.bulkUploadPane.downloadSampleCSV"),
|
|
204
|
-
style: "link"
|
|
205
|
-
}));
|
|
206
|
-
});
|
|
207
|
-
var Requirements$1 = /*#__PURE__*/React.memo(Requirements);
|
|
208
|
-
|
|
209
|
-
var BulkUploadPane = function BulkUploadPane(_ref) {
|
|
210
|
-
var _fileRejections$;
|
|
211
|
-
var isOpen = _ref.isOpen,
|
|
212
|
-
fileType = _ref.fileType,
|
|
213
|
-
fileSize = _ref.fileSize,
|
|
214
|
-
onClose = _ref.onClose,
|
|
215
|
-
handleFileSubmit = _ref.handleFileSubmit;
|
|
216
|
-
var _useDropzone = useDropzone({
|
|
217
|
-
accept: fileType,
|
|
218
|
-
maxFiles: 1,
|
|
219
|
-
maxSize: fileSize * ONE_MEGABYTE_IN_BYTES,
|
|
220
|
-
onDrop: function onDrop(files) {
|
|
221
|
-
return files[0] && handleFileSubmit(files[0]);
|
|
222
|
-
}
|
|
223
|
-
}),
|
|
224
|
-
getRootProps = _useDropzone.getRootProps,
|
|
225
|
-
getInputProps = _useDropzone.getInputProps,
|
|
226
|
-
isDragActive = _useDropzone.isDragActive,
|
|
227
|
-
fileRejections = _useDropzone.fileRejections;
|
|
228
|
-
var errors = (_fileRejections$ = fileRejections[0]) === null || _fileRejections$ === void 0 ? void 0 : _fileRejections$.errors.map(function (_ref2) {
|
|
229
|
-
var message = _ref2.message,
|
|
230
|
-
code = _ref2.code;
|
|
231
|
-
return /*#__PURE__*/React.createElement(Typography, {
|
|
232
|
-
className: "neeto-ui-text-error-500 items",
|
|
233
|
-
"data-cy": "file-input-error-message",
|
|
234
|
-
key: code,
|
|
235
|
-
style: "body3"
|
|
236
|
-
}, message);
|
|
237
|
-
});
|
|
238
|
-
var _useTranslation = useTranslation(),
|
|
239
|
-
t = _useTranslation.t;
|
|
240
|
-
return /*#__PURE__*/React.createElement(Pane, {
|
|
241
|
-
"data-testid": "bulk-upload-pane",
|
|
242
|
-
isOpen: isOpen,
|
|
243
|
-
onClose: onClose
|
|
244
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
245
|
-
tabIndex: 0
|
|
246
|
-
}, /*#__PURE__*/React.createElement(Pane.Header, null, /*#__PURE__*/React.createElement(Typography, {
|
|
247
|
-
"data-testid": "bulk-upload-header",
|
|
248
|
-
style: "h2",
|
|
249
|
-
weight: "semibold"
|
|
250
|
-
}, t("neetoMolecules.shareViaLink.bulkUpload"))), /*#__PURE__*/React.createElement(Pane.Body, null, /*#__PURE__*/React.createElement("div", {
|
|
251
|
-
className: "w-full space-y-4"
|
|
252
|
-
}, /*#__PURE__*/React.createElement(Requirements$1, {
|
|
253
|
-
fileSize: fileSize
|
|
254
|
-
}), /*#__PURE__*/React.createElement("div", getRootProps({
|
|
255
|
-
className: classnames("flex flex-col p-2 border neeto-ui-border-primary-500 border-dashed neeto-ui-rounded-md transition duration-500 ease-in-out hover:neeto-ui-bg-gray-100 cursor-pointer items-center", {
|
|
256
|
-
"neeto-ui-border-gray-100": isDragActive,
|
|
257
|
-
"neeto-ui-border-error neeto-ui-bg-pastel-red hover:neeto-ui-bg-pastel-red": fileRejections.length
|
|
258
|
-
})
|
|
259
|
-
}), /*#__PURE__*/React.createElement("div", {
|
|
260
|
-
className: "flex flex-col items-center space-y-3 p-4"
|
|
261
|
-
}, /*#__PURE__*/React.createElement(Upload, {
|
|
262
|
-
className: "neeto-ui-text-primary-500",
|
|
263
|
-
size: 32
|
|
264
|
-
}), /*#__PURE__*/React.createElement("input", _extends({}, getInputProps(), {
|
|
265
|
-
"data-cy": "csv-upload-input",
|
|
266
|
-
"data-testid": "csv-upload-input"
|
|
267
|
-
})), isDragActive ? /*#__PURE__*/React.createElement(Typography, {
|
|
268
|
-
style: "body2"
|
|
269
|
-
}, t("neetoMolecules.shareViaLink.bulkUploadPane.dropFileHere")) : /*#__PURE__*/React.createElement("div", {
|
|
270
|
-
className: "flex flex-col items-center space-y-1"
|
|
271
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
272
|
-
className: "flex w-full items-center justify-center gap-x-1"
|
|
273
|
-
}, /*#__PURE__*/React.createElement(Trans, {
|
|
274
|
-
i18nKey: "neetoMolecules.shareViaLink.bulkUploadPane.dragNDrop",
|
|
275
|
-
components: {
|
|
276
|
-
Button: /*#__PURE__*/React.createElement(Button, {
|
|
277
|
-
style: "link"
|
|
278
|
-
})
|
|
279
|
-
}
|
|
280
|
-
})), /*#__PURE__*/React.createElement(Typography, {
|
|
281
|
-
className: "neeto-ui-text-gray-700",
|
|
282
|
-
style: "body3"
|
|
283
|
-
}, fileType && /*#__PURE__*/React.createElement(Trans, {
|
|
284
|
-
i18nKey: "neetoMolecules.shareViaLink.bulkUploadPane.supportedFormat",
|
|
285
|
-
values: {
|
|
286
|
-
fileType: fileType
|
|
287
|
-
},
|
|
288
|
-
components: {
|
|
289
|
-
code: /*#__PURE__*/React.createElement("code", {
|
|
290
|
-
className: "neeto-ui-typography neeto-ui-text-body3 neeto-ui-bg-white m-0 border-l-0 p-0"
|
|
291
|
-
})
|
|
292
|
-
}
|
|
293
|
-
}), " ", fileSize && t("neetoMolecules.shareViaLink.bulkUploadPane.supportedSize", {
|
|
294
|
-
fileSize: fileSize
|
|
295
|
-
})))), errors))), /*#__PURE__*/React.createElement(Pane.Footer, {
|
|
296
|
-
className: "flex items-center space-x-2"
|
|
297
|
-
}, /*#__PURE__*/React.createElement(Button, {
|
|
298
|
-
"data-cy": "bulk-upload-cancel-button",
|
|
299
|
-
"data-testid": "bulk-upload-cancel-button",
|
|
300
|
-
label: t("neetoMolecules.common.actions.cancel"),
|
|
301
|
-
style: "text",
|
|
302
|
-
type: "reset",
|
|
303
|
-
onClick: onClose
|
|
304
|
-
}))));
|
|
305
|
-
};
|
|
306
|
-
|
|
307
|
-
var isValidEmail = function isValidEmail(email) {
|
|
308
|
-
return string().email().isValidSync(email);
|
|
309
|
-
};
|
|
310
|
-
var createEmailOptions = function createEmailOptions() {
|
|
311
|
-
var emails = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
312
|
-
return emails.map(function (email) {
|
|
313
|
-
return {
|
|
314
|
-
label: email,
|
|
315
|
-
value: email,
|
|
316
|
-
valid: isValidEmail(email)
|
|
317
|
-
};
|
|
318
|
-
});
|
|
319
|
-
};
|
|
320
|
-
var parseCsvEmails = function parseCsvEmails(file, onSuccess) {
|
|
321
|
-
Papa.parse(file, {
|
|
322
|
-
header: true,
|
|
323
|
-
skipEmptyLines: true,
|
|
324
|
-
transformHeader: function transformHeader(h) {
|
|
325
|
-
return h.toLowerCase().replace(/\W/g, "");
|
|
326
|
-
},
|
|
327
|
-
complete: function complete(results) {
|
|
328
|
-
var _results$meta$fields;
|
|
329
|
-
var isEmailFieldPresent = (_results$meta$fields = results.meta.fields) === null || _results$meta$fields === void 0 ? void 0 : _results$meta$fields.includes("email");
|
|
330
|
-
if (isEmailFieldPresent) {
|
|
331
|
-
var emails = results.data.filter(prop("email")).map(function (item) {
|
|
332
|
-
return item.email.trim();
|
|
333
|
-
});
|
|
334
|
-
onSuccess(createEmailOptions(emails));
|
|
335
|
-
} else {
|
|
336
|
-
Toastr.error(t("neetoMolecules.sendToFields.errors.invalidCsv"));
|
|
337
|
-
}
|
|
338
|
-
}
|
|
339
|
-
});
|
|
340
|
-
};
|
|
341
|
-
|
|
342
|
-
var SendToFields = function SendToFields(_ref) {
|
|
343
|
-
var emailInputProps = _ref.emailInputProps,
|
|
344
|
-
ccInputProps = _ref.ccInputProps,
|
|
345
|
-
bccInputProps = _ref.bccInputProps,
|
|
346
|
-
_ref$showUploadCsvBut = _ref.showUploadCsvButton,
|
|
347
|
-
showUploadCsvButton = _ref$showUploadCsvBut === void 0 ? false : _ref$showUploadCsvBut,
|
|
348
|
-
_ref$showCcBccButton = _ref.showCcBccButton,
|
|
349
|
-
showCcBccButton = _ref$showCcBccButton === void 0 ? false : _ref$showCcBccButton;
|
|
350
|
-
var _useState = useState(false),
|
|
351
|
-
_useState2 = _slicedToArray(_useState, 2),
|
|
352
|
-
isBulkUploadPaneOpen = _useState2[0],
|
|
353
|
-
setIsBulkUploadPaneOpen = _useState2[1];
|
|
354
|
-
var sendToFieldRef = useRef();
|
|
355
|
-
var _useFormikContext = useFormikContext(),
|
|
356
|
-
_useFormikContext$val = _useFormikContext.values,
|
|
357
|
-
showCopyEmails = _useFormikContext$val.showCopyEmails,
|
|
358
|
-
existingSendToEmails = _useFormikContext$val[emailInputProps.name || "sendTo"],
|
|
359
|
-
setFieldValue = _useFormikContext.setFieldValue;
|
|
360
|
-
var _useTranslation = useTranslation(),
|
|
361
|
-
t = _useTranslation.t;
|
|
362
|
-
var handleCSVFile = function handleCSVFile(file) {
|
|
363
|
-
try {
|
|
364
|
-
var _sendToFieldRef$curre;
|
|
365
|
-
var onSuccess = function onSuccess(values) {
|
|
366
|
-
return setFieldValue(emailInputProps.name || "sendTo", [].concat(_toConsumableArray(existingSendToEmails), _toConsumableArray(values)));
|
|
367
|
-
};
|
|
368
|
-
parseCsvEmails(file, onSuccess);
|
|
369
|
-
setIsBulkUploadPaneOpen(false);
|
|
370
|
-
(_sendToFieldRef$curre = sendToFieldRef.current) === null || _sendToFieldRef$curre === void 0 ? void 0 : _sendToFieldRef$curre.focus();
|
|
371
|
-
} catch (error) {
|
|
372
|
-
Toastr.error(error);
|
|
373
|
-
}
|
|
374
|
-
};
|
|
375
|
-
var handelCcBccButtonClick = function handelCcBccButtonClick(e) {
|
|
376
|
-
e.stopPropagation();
|
|
377
|
-
setFieldValue("showCopyEmails", !showCopyEmails);
|
|
378
|
-
};
|
|
379
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
380
|
-
className: "relative w-full flex-col gap-2"
|
|
381
|
-
}, showUploadCsvButton && /*#__PURE__*/React.createElement(Button, {
|
|
382
|
-
className: "absolute top-0 right-1",
|
|
383
|
-
"data-testid": "bulk-upload-button",
|
|
384
|
-
icon: Upload,
|
|
385
|
-
label: t("neetoMolecules.shareViaLink.bulkUpload"),
|
|
386
|
-
size: "small",
|
|
387
|
-
style: "link",
|
|
388
|
-
onClick: function onClick() {
|
|
389
|
-
return setIsBulkUploadPaneOpen(true);
|
|
390
|
-
}
|
|
391
|
-
}), /*#__PURE__*/React.createElement(MultiEmailInput, _extends({
|
|
392
|
-
"data-testid": "emails",
|
|
393
|
-
name: "sendTo",
|
|
394
|
-
ref: sendToFieldRef
|
|
395
|
-
}, emailInputProps, {
|
|
396
|
-
suffix: showCcBccButton && /*#__PURE__*/React.createElement(Button, {
|
|
397
|
-
"data-cy": "cc-bcc-button",
|
|
398
|
-
"data-testid": "cc-bcc-button",
|
|
399
|
-
label: t("neetoMolecules.emailForm.labels.ccBcc"),
|
|
400
|
-
size: "small",
|
|
401
|
-
style: "link",
|
|
402
|
-
onClick: handelCcBccButtonClick
|
|
403
|
-
})
|
|
404
|
-
})), showCopyEmails && /*#__PURE__*/React.createElement("div", {
|
|
405
|
-
className: "mt-5 flex w-full flex-col gap-6"
|
|
406
|
-
}, /*#__PURE__*/React.createElement(MultiEmailInput, _extends({
|
|
407
|
-
name: "sendToBcc"
|
|
408
|
-
}, ccInputProps)), /*#__PURE__*/React.createElement(MultiEmailInput, _extends({
|
|
409
|
-
name: "sendToCc"
|
|
410
|
-
}, bccInputProps))), /*#__PURE__*/React.createElement(BulkUploadPane, {
|
|
411
|
-
fileSize: globalProps.endUserUploadedFileSizeLimitInMb,
|
|
412
|
-
fileType: ALLOWED_FILE_TYPES,
|
|
413
|
-
handleFileSubmit: handleCSVFile,
|
|
414
|
-
isOpen: isBulkUploadPaneOpen,
|
|
415
|
-
onClose: function onClose() {
|
|
416
|
-
return setIsBulkUploadPaneOpen(false);
|
|
417
|
-
}
|
|
418
|
-
}));
|
|
419
|
-
};
|
|
22
|
+
import '@bigbinary/neeto-commons-frontend/react-utils/withT';
|
|
23
|
+
import './index-e5588516.js';
|
|
24
|
+
import 'react-dropzone';
|
|
420
25
|
|
|
421
26
|
var INITIAL_VALUES = {
|
|
422
27
|
sendFromEmail: "",
|
|
@@ -436,7 +41,7 @@ var EmailBody = function EmailBody(_ref, ref) {
|
|
|
436
41
|
showVideoEmbedInEditor = _ref.showVideoEmbedInEditor;
|
|
437
42
|
var _useTranslation = useTranslation(),
|
|
438
43
|
t = _useTranslation.t;
|
|
439
|
-
return /*#__PURE__*/
|
|
44
|
+
return /*#__PURE__*/React__default.createElement(FormikEditor, {
|
|
440
45
|
required: true,
|
|
441
46
|
className: "mb-6",
|
|
442
47
|
"data-cy": "email-body",
|
|
@@ -449,94 +54,6 @@ var EmailBody = function EmailBody(_ref, ref) {
|
|
|
449
54
|
};
|
|
450
55
|
var EmailBody$1 = /*#__PURE__*/forwardRef(EmailBody);
|
|
451
56
|
|
|
452
|
-
function _objectWithoutPropertiesLoose(source, excluded) {
|
|
453
|
-
if (source == null) return {};
|
|
454
|
-
var target = {};
|
|
455
|
-
var sourceKeys = Object.keys(source);
|
|
456
|
-
var key, i;
|
|
457
|
-
for (i = 0; i < sourceKeys.length; i++) {
|
|
458
|
-
key = sourceKeys[i];
|
|
459
|
-
if (excluded.indexOf(key) >= 0) continue;
|
|
460
|
-
target[key] = source[key];
|
|
461
|
-
}
|
|
462
|
-
return target;
|
|
463
|
-
}
|
|
464
|
-
|
|
465
|
-
function _objectWithoutProperties(source, excluded) {
|
|
466
|
-
if (source == null) return {};
|
|
467
|
-
var target = _objectWithoutPropertiesLoose(source, excluded);
|
|
468
|
-
var key, i;
|
|
469
|
-
if (Object.getOwnPropertySymbols) {
|
|
470
|
-
var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
|
|
471
|
-
for (i = 0; i < sourceSymbolKeys.length; i++) {
|
|
472
|
-
key = sourceSymbolKeys[i];
|
|
473
|
-
if (excluded.indexOf(key) >= 0) continue;
|
|
474
|
-
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
|
|
475
|
-
target[key] = source[key];
|
|
476
|
-
}
|
|
477
|
-
}
|
|
478
|
-
return target;
|
|
479
|
-
}
|
|
480
|
-
|
|
481
|
-
var _excluded = ["name"];
|
|
482
|
-
var FormikDatePicker = function FormikDatePicker(_ref) {
|
|
483
|
-
var name = _ref.name,
|
|
484
|
-
props = _objectWithoutProperties(_ref, _excluded);
|
|
485
|
-
var _useField = useField(name),
|
|
486
|
-
_useField2 = _slicedToArray(_useField, 3),
|
|
487
|
-
field = _useField2[0],
|
|
488
|
-
meta = _useField2[1],
|
|
489
|
-
setValue = _useField2[2].setValue;
|
|
490
|
-
return /*#__PURE__*/React.createElement(DatePicker, _extends({}, field, meta, {
|
|
491
|
-
onChange: function onChange(date) {
|
|
492
|
-
return setValue(date || undefined);
|
|
493
|
-
}
|
|
494
|
-
}, props, {
|
|
495
|
-
"data-cy": "email-share-date-input"
|
|
496
|
-
}));
|
|
497
|
-
};
|
|
498
|
-
|
|
499
|
-
function _typeof(o) {
|
|
500
|
-
"@babel/helpers - typeof";
|
|
501
|
-
|
|
502
|
-
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
|
|
503
|
-
return typeof o;
|
|
504
|
-
} : function (o) {
|
|
505
|
-
return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
|
|
506
|
-
}, _typeof(o);
|
|
507
|
-
}
|
|
508
|
-
|
|
509
|
-
function _toPrimitive(input, hint) {
|
|
510
|
-
if (_typeof(input) !== "object" || input === null) return input;
|
|
511
|
-
var prim = input[Symbol.toPrimitive];
|
|
512
|
-
if (prim !== undefined) {
|
|
513
|
-
var res = prim.call(input, hint || "default");
|
|
514
|
-
if (_typeof(res) !== "object") return res;
|
|
515
|
-
throw new TypeError("@@toPrimitive must return a primitive value.");
|
|
516
|
-
}
|
|
517
|
-
return (hint === "string" ? String : Number)(input);
|
|
518
|
-
}
|
|
519
|
-
|
|
520
|
-
function _toPropertyKey(arg) {
|
|
521
|
-
var key = _toPrimitive(arg, "string");
|
|
522
|
-
return _typeof(key) === "symbol" ? key : String(key);
|
|
523
|
-
}
|
|
524
|
-
|
|
525
|
-
function _defineProperty(obj, key, value) {
|
|
526
|
-
key = _toPropertyKey(key);
|
|
527
|
-
if (key in obj) {
|
|
528
|
-
Object.defineProperty(obj, key, {
|
|
529
|
-
value: value,
|
|
530
|
-
enumerable: true,
|
|
531
|
-
configurable: true,
|
|
532
|
-
writable: true
|
|
533
|
-
});
|
|
534
|
-
} else {
|
|
535
|
-
obj[key] = value;
|
|
536
|
-
}
|
|
537
|
-
return obj;
|
|
538
|
-
}
|
|
539
|
-
|
|
540
57
|
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; }
|
|
541
58
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).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; }
|
|
542
59
|
var isPastDate = function isPastDate(date) {
|
|
@@ -565,6 +82,65 @@ var emailFormValidationSchema = function emailFormValidationSchema(disableReplyT
|
|
|
565
82
|
actionButtonText: yup.string().required(t("neetoMolecules.shareViaEmail.validations.requiredField.startButtonText"))
|
|
566
83
|
});
|
|
567
84
|
};
|
|
85
|
+
var disabledTime = function disabledTime(selectedDate) {
|
|
86
|
+
var current = selectedDate ? dayjs(selectedDate).startOf("day") : null;
|
|
87
|
+
if (!current) return {};
|
|
88
|
+
var today = dayjs().startOf("day");
|
|
89
|
+
var isAfterToday = current.isAfter(today, "day");
|
|
90
|
+
var isBeforeToday = current.isBefore(today, "day");
|
|
91
|
+
if (isAfterToday) {
|
|
92
|
+
return {
|
|
93
|
+
minTime: null,
|
|
94
|
+
maxTime: null
|
|
95
|
+
};
|
|
96
|
+
} else if (isBeforeToday) {
|
|
97
|
+
return {
|
|
98
|
+
minTime: "0:00",
|
|
99
|
+
maxTime: "24:00"
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
// eslint-disable-next-line @bigbinary/neeto/use-standard-date-time-formats
|
|
104
|
+
var currentTime = dayjs().format("HH:mm");
|
|
105
|
+
var endOfDay = "23:59";
|
|
106
|
+
return {
|
|
107
|
+
minTime: currentTime,
|
|
108
|
+
maxTime: endOfDay
|
|
109
|
+
};
|
|
110
|
+
};
|
|
111
|
+
|
|
112
|
+
var _excluded = ["name", "disabledDate"];
|
|
113
|
+
var FormikDatePicker = function FormikDatePicker(_ref) {
|
|
114
|
+
var name = _ref.name,
|
|
115
|
+
disabledDate = _ref.disabledDate,
|
|
116
|
+
props = _objectWithoutProperties(_ref, _excluded);
|
|
117
|
+
var _useField = useField(name),
|
|
118
|
+
_useField2 = _slicedToArray(_useField, 3),
|
|
119
|
+
field = _useField2[0],
|
|
120
|
+
meta = _useField2[1],
|
|
121
|
+
_useField2$ = _useField2[2],
|
|
122
|
+
setValue = _useField2$.setValue,
|
|
123
|
+
setTouched = _useField2$.setTouched;
|
|
124
|
+
var disabledTimeFrame = useMemo(function () {
|
|
125
|
+
return disabledTime(field === null || field === void 0 ? void 0 : field.value);
|
|
126
|
+
}, [field === null || field === void 0 ? void 0 : field.value]);
|
|
127
|
+
return /*#__PURE__*/React__default.createElement(DateTimePicker, _extends({}, field, meta, {
|
|
128
|
+
timePickerProps: disabledTimeFrame,
|
|
129
|
+
datePickerProps: {
|
|
130
|
+
disabledDate: disabledDate,
|
|
131
|
+
"data-cy": props["data-cy"],
|
|
132
|
+
"data-testid": props["data-testid"]
|
|
133
|
+
},
|
|
134
|
+
onBlur: function onBlur(date) {
|
|
135
|
+
setValue(date || undefined);
|
|
136
|
+
setTouched(true);
|
|
137
|
+
},
|
|
138
|
+
onChange: function onChange(date) {
|
|
139
|
+
setValue(date || undefined);
|
|
140
|
+
setTouched(true);
|
|
141
|
+
}
|
|
142
|
+
}, props));
|
|
143
|
+
};
|
|
568
144
|
|
|
569
145
|
var Form = function Form(_ref) {
|
|
570
146
|
var showSendFromField = _ref.showSendFromField,
|
|
@@ -580,75 +156,74 @@ var Form = function Form(_ref) {
|
|
|
580
156
|
var handleReset = function handleReset() {
|
|
581
157
|
return editorRef.current.editor.commands.setContent(initialValues.emailBody);
|
|
582
158
|
};
|
|
583
|
-
return /*#__PURE__*/
|
|
159
|
+
return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("div", {
|
|
584
160
|
className: "space-y-4"
|
|
585
|
-
}, /*#__PURE__*/
|
|
161
|
+
}, /*#__PURE__*/React__default.createElement(SendToFields, {
|
|
586
162
|
showUploadCsvButton: true,
|
|
587
163
|
emailInputProps: {
|
|
588
164
|
label: t("neetoMolecules.shareViaEmail.sendTo"),
|
|
589
165
|
name: "notifyEmails",
|
|
590
166
|
required: true
|
|
591
167
|
}
|
|
592
|
-
}), /*#__PURE__*/
|
|
168
|
+
}), /*#__PURE__*/React__default.createElement(Input, {
|
|
593
169
|
required: true,
|
|
594
170
|
className: "col-span-1",
|
|
595
171
|
label: t("neetoMolecules.shareViaEmail.subject"),
|
|
596
172
|
name: "emailSubject"
|
|
597
|
-
}), /*#__PURE__*/
|
|
173
|
+
}), /*#__PURE__*/React__default.createElement(EmailBody$1, {
|
|
174
|
+
showVideoEmbedInEditor: showVideoEmbedInEditor,
|
|
598
175
|
id: "emailBody",
|
|
599
|
-
ref: editorRef,
|
|
600
|
-
showVideoEmbedInEditor: showVideoEmbedInEditor
|
|
601
|
-
}), /*#__PURE__*/React.createElement("div", {
|
|
602
176
|
ref: editorRef
|
|
603
|
-
}), /*#__PURE__*/
|
|
177
|
+
}), /*#__PURE__*/React__default.createElement("div", {
|
|
178
|
+
ref: editorRef
|
|
179
|
+
}), /*#__PURE__*/React__default.createElement("div", null, /*#__PURE__*/React__default.createElement(Label, {
|
|
604
180
|
className: "flex items-center gap-2"
|
|
605
|
-
}, /*#__PURE__*/
|
|
181
|
+
}, /*#__PURE__*/React__default.createElement(Switch, {
|
|
606
182
|
"data-cy": "send-later-switch",
|
|
607
183
|
"data-testid": "send-later-switch",
|
|
608
184
|
name: "isSendLaterEnabled"
|
|
609
|
-
}), /*#__PURE__*/
|
|
185
|
+
}), /*#__PURE__*/React__default.createElement(Typography, {
|
|
610
186
|
component: "span",
|
|
611
187
|
"data-cy": "send-later-label",
|
|
612
188
|
lineHeight: "normal",
|
|
613
189
|
style: "h4",
|
|
614
190
|
weight: "semibold"
|
|
615
|
-
}, t("neetoMolecules.shareViaEmail.sendLater")))), values.isSendLaterEnabled && /*#__PURE__*/
|
|
191
|
+
}, t("neetoMolecules.shareViaEmail.sendLater")))), values.isSendLaterEnabled && /*#__PURE__*/React__default.createElement(FormikDatePicker, {
|
|
616
192
|
autoFocus: true,
|
|
617
|
-
showTime: true,
|
|
618
193
|
"data-cy": "email-share-date-input",
|
|
619
194
|
"data-testid": "formik-date-picker",
|
|
620
195
|
disabledDate: isPastDate,
|
|
621
196
|
name: "sendEmailDatetime",
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
type: "date"
|
|
625
|
-
}), /*#__PURE__*/React.createElement(Input, {
|
|
197
|
+
size: "large"
|
|
198
|
+
}), /*#__PURE__*/React__default.createElement(Input, {
|
|
626
199
|
required: true,
|
|
627
200
|
label: t("neetoMolecules.shareViaEmail.startButtonText"),
|
|
628
201
|
name: "actionButtonText"
|
|
629
|
-
}), /*#__PURE__*/
|
|
630
|
-
className:
|
|
631
|
-
|
|
632
|
-
})
|
|
633
|
-
}, showSendFromField && /*#__PURE__*/React.createElement(Input, {
|
|
202
|
+
}), /*#__PURE__*/React__default.createElement("div", {
|
|
203
|
+
className: "flex flex-col gap-4 sm:flex-row sm:gap-6"
|
|
204
|
+
}, showSendFromField && /*#__PURE__*/React__default.createElement(Input, {
|
|
634
205
|
required: true,
|
|
635
|
-
className:
|
|
206
|
+
className: classnames({
|
|
207
|
+
"w-full flex-grow-0": !disableReplyTo
|
|
208
|
+
}),
|
|
636
209
|
"data-testid": "neeto-molecules-share-via-email-send-from",
|
|
637
210
|
label: t("neetoMolecules.shareViaEmail.sendFrom"),
|
|
638
211
|
name: "sendFromEmail"
|
|
639
|
-
}), !disableReplyTo && /*#__PURE__*/
|
|
212
|
+
}), !disableReplyTo && /*#__PURE__*/React__default.createElement(Input, {
|
|
640
213
|
required: true,
|
|
641
|
-
className: "col-auto",
|
|
642
214
|
"data-testid": "replyTo-field",
|
|
643
215
|
label: t("neetoMolecules.shareViaEmail.replyTo"),
|
|
644
|
-
name: "replyToEmail"
|
|
645
|
-
|
|
216
|
+
name: "replyToEmail",
|
|
217
|
+
className: classnames({
|
|
218
|
+
"w-full flex-grow-0": showSendFromField
|
|
219
|
+
})
|
|
220
|
+
}))), children && /*#__PURE__*/React__default.createElement("div", {
|
|
646
221
|
className: "neeto-ui-border-gray-300 mt-4 border-t py-4"
|
|
647
|
-
}, /*#__PURE__*/
|
|
222
|
+
}, /*#__PURE__*/React__default.createElement("h3", {
|
|
648
223
|
className: "mb-4"
|
|
649
|
-
}, t("neetoMolecules.shareViaEmail.additionalOptions")), children), /*#__PURE__*/
|
|
224
|
+
}, t("neetoMolecules.shareViaEmail.additionalOptions")), children), /*#__PURE__*/React__default.createElement("div", {
|
|
650
225
|
className: "mt-6"
|
|
651
|
-
}, /*#__PURE__*/
|
|
226
|
+
}, /*#__PURE__*/React__default.createElement(ActionBlock, {
|
|
652
227
|
cancelButtonProps: {
|
|
653
228
|
label: t("neetoMolecules.shareViaEmail.reset"),
|
|
654
229
|
type: "reset",
|
|
@@ -681,11 +256,11 @@ var ShareViaEmail = function ShareViaEmail(_ref) {
|
|
|
681
256
|
return email === null || email === void 0 ? void 0 : email.value;
|
|
682
257
|
});
|
|
683
258
|
};
|
|
684
|
-
return /*#__PURE__*/
|
|
685
|
-
className: "neeto-ui-bg-gray-100 flex w-full flex-1 flex-col p-8"
|
|
686
|
-
}, /*#__PURE__*/
|
|
259
|
+
return /*#__PURE__*/React__default.createElement("div", {
|
|
260
|
+
className: "neeto-ui-bg-gray-100 flex w-full flex-1 flex-col p-6 md:p-8"
|
|
261
|
+
}, /*#__PURE__*/React__default.createElement("div", {
|
|
687
262
|
className: "mx-auto flex w-full max-w-7xl flex-col"
|
|
688
|
-
}, /*#__PURE__*/
|
|
263
|
+
}, /*#__PURE__*/React__default.createElement(Form$1, {
|
|
689
264
|
scrollToErrorField: true,
|
|
690
265
|
formProps: {
|
|
691
266
|
noValidate: true
|
|
@@ -699,11 +274,11 @@ var ShareViaEmail = function ShareViaEmail(_ref) {
|
|
|
699
274
|
}
|
|
700
275
|
}, function (_ref2) {
|
|
701
276
|
var values = _ref2.values;
|
|
702
|
-
return /*#__PURE__*/
|
|
703
|
-
className: "grid grid-cols-
|
|
704
|
-
}, /*#__PURE__*/
|
|
705
|
-
className: "col-span-5"
|
|
706
|
-
}, backToUrl && /*#__PURE__*/
|
|
277
|
+
return /*#__PURE__*/React__default.createElement("div", {
|
|
278
|
+
className: "grid grid-cols-1 gap-8 md:grid-cols-12"
|
|
279
|
+
}, /*#__PURE__*/React__default.createElement("div", {
|
|
280
|
+
className: "col-span-1 md:col-span-6 lg:col-span-5"
|
|
281
|
+
}, backToUrl && /*#__PURE__*/React__default.createElement(Button, {
|
|
707
282
|
className: "mb-4",
|
|
708
283
|
"data-testid": "back-to-url-button",
|
|
709
284
|
icon: LeftArrow,
|
|
@@ -712,30 +287,30 @@ var ShareViaEmail = function ShareViaEmail(_ref) {
|
|
|
712
287
|
size: "small",
|
|
713
288
|
style: "link",
|
|
714
289
|
to: backToUrl
|
|
715
|
-
}), /*#__PURE__*/
|
|
290
|
+
}), /*#__PURE__*/React__default.createElement("div", {
|
|
716
291
|
className: "mb-6"
|
|
717
|
-
}, /*#__PURE__*/
|
|
292
|
+
}, /*#__PURE__*/React__default.createElement(Typography, {
|
|
718
293
|
className: "mb-0.5 break-words",
|
|
719
294
|
"data-cy": "share-via-email-heading",
|
|
720
295
|
lineHeight: "normal",
|
|
721
296
|
style: "h2",
|
|
722
297
|
weight: "semibold"
|
|
723
|
-
}, shareViaEmailTitle), description && /*#__PURE__*/
|
|
298
|
+
}, shareViaEmailTitle), description && /*#__PURE__*/React__default.createElement(Typography, {
|
|
724
299
|
className: "neeto-ui-text-gray-700",
|
|
725
300
|
"data-cy": "share-via-email-sub-heading",
|
|
726
301
|
lineHeight: "normal",
|
|
727
302
|
style: "body2"
|
|
728
|
-
}, description)), /*#__PURE__*/
|
|
303
|
+
}, description)), /*#__PURE__*/React__default.createElement(Form, {
|
|
729
304
|
disableReplyTo: disableReplyTo,
|
|
730
305
|
showSendFromField: showSendFromField,
|
|
731
306
|
showVideoEmbedInEditor: showVideoEmbedInEditor
|
|
732
|
-
}, children)), /*#__PURE__*/
|
|
733
|
-
className: "col-span-7"
|
|
734
|
-
}, /*#__PURE__*/
|
|
307
|
+
}, children)), /*#__PURE__*/React__default.createElement("div", {
|
|
308
|
+
className: "col-span-1 md:col-span-6 lg:col-span-7"
|
|
309
|
+
}, /*#__PURE__*/React__default.createElement(EmailPreview, {
|
|
310
|
+
productName: productName,
|
|
735
311
|
actionButtonText: values.actionButtonText,
|
|
736
312
|
body: values.emailBody,
|
|
737
|
-
className: "sticky mt-28
|
|
738
|
-
productName: productName,
|
|
313
|
+
className: "sticky pt-1 md:mt-28",
|
|
739
314
|
subject: values.emailSubject,
|
|
740
315
|
to: sendToEmails(values.notifyEmails)
|
|
741
316
|
})));
|