@bigbinary/neeto-molecules 3.7.9 → 3.7.10

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.
@@ -4,27 +4,29 @@ import Typography from '@bigbinary/neetoui/Typography';
4
4
  import Form$1 from '@bigbinary/neetoui/formik/Form';
5
5
  import { useTranslation } from 'react-i18next';
6
6
  import EmailPreview from './EmailPreview.js';
7
- import { forwardRef, useRef } from 'react';
8
- import classnames from 'classnames';
7
+ import { useState, forwardRef, useRef } from 'react';
9
8
  import { useField, useFormikContext } from 'formik';
10
- import Label from '@bigbinary/neetoui/Label';
11
9
  import Input from '@bigbinary/neetoui/formik/Input';
12
- import Switch from '@bigbinary/neetoui/formik/Switch';
13
10
  import ActionBlock from '@bigbinary/neetoui/formik/ActionBlock';
14
11
  import SendToFields from './SendToFields.js';
15
- import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
16
- import FormikEditor from '@bigbinary/neeto-editor/FormikEditor';
17
- import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
18
- import _defineProperty from '@babel/runtime/helpers/defineProperty';
19
12
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
13
+ import classnames from 'classnames';
14
+ import Down from '@bigbinary/neeto-icons/Down';
15
+ import Up from '@bigbinary/neeto-icons/Up';
16
+ import Label from '@bigbinary/neetoui/Label';
17
+ import Switch from '@bigbinary/neetoui/formik/Switch';
18
+ import { prop, not } from 'ramda';
19
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
20
20
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
21
21
  import DatePicker from '@bigbinary/neetoui/DatePicker';
22
22
  import { t } from 'i18next';
23
23
  import { dynamicArray } from '@bigbinary/neeto-cist';
24
24
  import { dayjs } from '@bigbinary/neeto-commons-frontend/utils';
25
25
  import { isEditorEmpty } from '@bigbinary/neeto-editor/utils';
26
- import { prop } from 'ramda';
27
26
  import * as yup from 'yup';
27
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
28
+ import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
29
+ import FormikEditor from '@bigbinary/neeto-editor/FormikEditor';
28
30
  import '@bigbinary/neeto-commons-frontend/react-utils/withT';
29
31
  import '@bigbinary/neeto-editor/EditorContent';
30
32
  import './index-1f87fe13.js';
@@ -52,24 +54,6 @@ var INITIAL_VALUES = {
52
54
  var EDITOR_ADDONS = ["emoji", "block-quote", "image-upload", "divider"];
53
55
  var TIME_FORMAT = "hh:mm A";
54
56
 
55
- var EmailBody = /*#__PURE__*/forwardRef(function (_ref, ref) {
56
- var id = _ref.id,
57
- showVideoEmbedInEditor = _ref.showVideoEmbedInEditor;
58
- var _useTranslation = useTranslation(),
59
- t = _useTranslation.t;
60
- return /*#__PURE__*/jsx(FormikEditor, {
61
- id: id,
62
- ref: ref,
63
- required: true,
64
- className: "mb-6",
65
- "data-cy": "email-body",
66
- label: t("neetoMolecules.shareViaEmail.emailBody"),
67
- name: "emailBody",
68
- addons: showVideoEmbedInEditor ? [].concat(_toConsumableArray(EDITOR_ADDONS), ["video-embed"]) : EDITOR_ADDONS
69
- });
70
- });
71
- EmailBody.displayName = "EmailBody";
72
-
73
57
  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; }
74
58
  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), !0).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; }
75
59
  var isPastDate = function isPastDate(date) {
@@ -170,42 +154,41 @@ var FormikDatePicker = function FormikDatePicker(_ref) {
170
154
  }, props));
171
155
  };
172
156
 
173
- var Form = function Form(_ref) {
157
+ var AdvancedProperties = function AdvancedProperties(_ref) {
174
158
  var showSendFromField = _ref.showSendFromField,
175
- disableReplyTo = _ref.disableReplyTo,
176
- showVideoEmbedInEditor = _ref.showVideoEmbedInEditor,
177
- children = _ref.children;
178
- var _useFormikContext = useFormikContext(),
179
- values = _useFormikContext.values,
180
- initialValues = _useFormikContext.initialValues;
181
- var editorRef = useRef();
159
+ disableReplyTo = _ref.disableReplyTo;
182
160
  var _useTranslation = useTranslation(),
183
161
  t = _useTranslation.t;
184
- var handleReset = function handleReset() {
185
- return editorRef.current.editor.commands.setContent(initialValues.emailBody);
162
+ var _useFormikContext = useFormikContext(),
163
+ values = _useFormikContext.values;
164
+ var _useState = useState(false),
165
+ _useState2 = _slicedToArray(_useState, 2),
166
+ isAdvancedPropertiesVisible = _useState2[0],
167
+ setIsAdvancedPropertiesVisible = _useState2[1];
168
+ var toggleAdvancedOptions = function toggleAdvancedOptions() {
169
+ return setIsAdvancedPropertiesVisible(not);
186
170
  };
187
- return /*#__PURE__*/jsxs(Fragment, {
188
- children: [/*#__PURE__*/jsxs("div", {
189
- className: "space-y-4",
190
- children: [/*#__PURE__*/jsx(SendToFields, {
191
- showUploadCsvButton: true,
192
- emailInputProps: {
193
- label: t("neetoMolecules.shareViaEmail.sendTo"),
194
- name: "notifyEmails",
195
- required: true
196
- }
197
- }), /*#__PURE__*/jsx(Input, {
198
- required: true,
199
- className: "col-span-1",
200
- label: t("neetoMolecules.shareViaEmail.subject"),
201
- name: "emailSubject"
202
- }), /*#__PURE__*/jsx(EmailBody, {
203
- showVideoEmbedInEditor: showVideoEmbedInEditor,
204
- id: "emailBody",
205
- ref: editorRef
206
- }), /*#__PURE__*/jsx("div", {
207
- ref: editorRef
208
- }), /*#__PURE__*/jsx("div", {
171
+ return /*#__PURE__*/jsxs("div", {
172
+ className: "flex w-full flex-col items-start gap-4",
173
+ children: [/*#__PURE__*/jsxs("button", {
174
+ className: "flex w-full cursor-pointer items-start justify-between overflow-hidden border-0 py-4",
175
+ type: "button",
176
+ onClick: toggleAdvancedOptions,
177
+ children: [/*#__PURE__*/jsx(Typography, {
178
+ className: "flex min-w-0 flex-grow",
179
+ component: "span",
180
+ style: "h5",
181
+ weight: "medium",
182
+ children: t("neetoMolecules.shareViaEmail.advancedProperties")
183
+ }), isAdvancedPropertiesVisible ? /*#__PURE__*/jsx(Up, {
184
+ className: "flex-shrink-0",
185
+ size: 20
186
+ }) : /*#__PURE__*/jsx(Down, {
187
+ className: "flex-shrink-0",
188
+ size: 20
189
+ })]
190
+ }), isAdvancedPropertiesVisible && /*#__PURE__*/jsxs(Fragment, {
191
+ children: [/*#__PURE__*/jsx("div", {
209
192
  children: /*#__PURE__*/jsxs(Label, {
210
193
  className: "flex items-center gap-2",
211
194
  children: [/*#__PURE__*/jsx(Switch, {
@@ -230,18 +213,19 @@ var Form = function Form(_ref) {
230
213
  size: "large"
231
214
  }), /*#__PURE__*/jsx(Input, {
232
215
  required: true,
216
+ className: "w-full",
233
217
  label: t("neetoMolecules.shareViaEmail.startButtonText"),
234
218
  name: "actionButtonText"
235
219
  }), /*#__PURE__*/jsxs("div", {
236
- className: "flex flex-col gap-4 sm:flex-row sm:gap-6",
220
+ className: "flex w-full flex-col gap-4 sm:flex-row sm:gap-6",
237
221
  children: [showSendFromField && /*#__PURE__*/jsx(Input, {
238
222
  required: true,
239
- className: classnames({
240
- "w-full flex-grow-0": !disableReplyTo
241
- }),
242
223
  "data-testid": "neeto-molecules-share-via-email-send-from",
243
224
  label: t("neetoMolecules.shareViaEmail.sendFrom"),
244
- name: "sendFromEmail"
225
+ name: "sendFromEmail",
226
+ className: classnames({
227
+ "w-full flex-grow-0": !disableReplyTo
228
+ })
245
229
  }), !disableReplyTo && /*#__PURE__*/jsx(Input, {
246
230
  required: true,
247
231
  "data-testid": "replyTo-field",
@@ -252,6 +236,66 @@ var Form = function Form(_ref) {
252
236
  })
253
237
  })]
254
238
  })]
239
+ })]
240
+ });
241
+ };
242
+
243
+ var EmailBody = /*#__PURE__*/forwardRef(function (_ref, ref) {
244
+ var id = _ref.id,
245
+ showVideoEmbedInEditor = _ref.showVideoEmbedInEditor;
246
+ var _useTranslation = useTranslation(),
247
+ t = _useTranslation.t;
248
+ return /*#__PURE__*/jsx(FormikEditor, {
249
+ id: id,
250
+ ref: ref,
251
+ required: true,
252
+ className: "mb-6",
253
+ "data-cy": "email-body",
254
+ label: t("neetoMolecules.shareViaEmail.emailBody"),
255
+ name: "emailBody",
256
+ addons: showVideoEmbedInEditor ? [].concat(_toConsumableArray(EDITOR_ADDONS), ["video-embed"]) : EDITOR_ADDONS
257
+ });
258
+ });
259
+ EmailBody.displayName = "EmailBody";
260
+
261
+ var Form = function Form(_ref) {
262
+ var showSendFromField = _ref.showSendFromField,
263
+ disableReplyTo = _ref.disableReplyTo,
264
+ showVideoEmbedInEditor = _ref.showVideoEmbedInEditor,
265
+ children = _ref.children;
266
+ var _useFormikContext = useFormikContext(),
267
+ initialValues = _useFormikContext.initialValues;
268
+ var editorRef = useRef();
269
+ var _useTranslation = useTranslation(),
270
+ t = _useTranslation.t;
271
+ var handleReset = function handleReset() {
272
+ return editorRef.current.editor.commands.setContent(initialValues.emailBody);
273
+ };
274
+ return /*#__PURE__*/jsxs(Fragment, {
275
+ children: [/*#__PURE__*/jsxs("div", {
276
+ className: "space-y-4",
277
+ children: [/*#__PURE__*/jsx(SendToFields, {
278
+ showUploadCsvButton: true,
279
+ emailInputProps: {
280
+ label: t("neetoMolecules.shareViaEmail.sendTo"),
281
+ name: "notifyEmails",
282
+ required: true
283
+ }
284
+ }), /*#__PURE__*/jsx(Input, {
285
+ required: true,
286
+ className: "col-span-1",
287
+ label: t("neetoMolecules.shareViaEmail.subject"),
288
+ name: "emailSubject"
289
+ }), /*#__PURE__*/jsx(EmailBody, {
290
+ showVideoEmbedInEditor: showVideoEmbedInEditor,
291
+ id: "emailBody",
292
+ ref: editorRef
293
+ }), /*#__PURE__*/jsx("div", {
294
+ ref: editorRef
295
+ }), /*#__PURE__*/jsx(AdvancedProperties, {
296
+ disableReplyTo: disableReplyTo,
297
+ showSendFromField: showSendFromField
298
+ })]
255
299
  }), children && /*#__PURE__*/jsxs("div", {
256
300
  className: "neeto-ui-border-gray-300 mt-4 border-t py-4",
257
301
  children: [/*#__PURE__*/jsx("h3", {
@@ -1 +1 @@
1
- {"version":3,"file":"ShareViaEmail.js","sources":["../src/components/ShareViaEmail/constants.js","../src/components/ShareViaEmail/EmailBodyEditor.jsx","../src/components/ShareViaEmail/utils.js","../src/components/ShareViaEmail/FormikDatePicker.jsx","../src/components/ShareViaEmail/Form.jsx","../src/components/ShareViaEmail/index.jsx"],"sourcesContent":["export const ONE_MEGABYTE = 1_048_576;\n\nexport const INITIAL_VALUES = {\n sendFromEmail: \"\",\n replyToEmail: \"\",\n notifyEmails: [],\n emailSubject: \"\",\n emailBody: \"\",\n isSendLaterEnabled: false,\n sendEmailDatetime: undefined,\n category: \"email_share\",\n actionButtonText: \"\",\n};\n\nexport const EDITOR_ADDONS = [\n \"emoji\",\n \"block-quote\",\n \"image-upload\",\n \"divider\",\n];\n\nexport const ALLOWED_FILE_PICKER_TYPES = [\".csv\"];\n\nexport const TIME_FORMAT = \"hh:mm A\";\n","import { forwardRef } from \"react\";\n\nimport { FormikEditor } from \"neetoeditor\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { EDITOR_ADDONS } from \"./constants\";\n\nconst EmailBody = forwardRef(({ id, showVideoEmbedInEditor }, ref) => {\n const { t } = useTranslation();\n\n return (\n <FormikEditor\n {...{ id, ref }}\n required\n className=\"mb-6\"\n data-cy=\"email-body\"\n label={t(\"neetoMolecules.shareViaEmail.emailBody\")}\n name=\"emailBody\"\n addons={\n showVideoEmbedInEditor\n ? [...EDITOR_ADDONS, \"video-embed\"]\n : EDITOR_ADDONS\n }\n />\n );\n});\n\nEmailBody.displayName = \"EmailBody\";\n\nexport default EmailBody;\n","import { t } from \"i18next\";\nimport { dynamicArray, isNot } from \"neetocist\";\nimport { dayjs } from \"neetocommons/utils\";\nimport { isEditorEmpty } from \"neetoeditor\";\nimport Papa from \"papaparse\";\nimport { prop } from \"ramda\";\nimport { string } from \"yup\";\nimport * as yup from \"yup\";\n\nimport { INITIAL_VALUES } from \"./constants\";\n\nconst isValidEmail = email => string().email().isValidSync(email);\n\nexport const isPastDate = date =>\n dayjs(date).isBefore(dayjs().subtract(1, \"days\"));\n\nexport const createEmailOptions = (emails = []) =>\n emails.map(email => ({\n label: email,\n value: email,\n valid: isValidEmail(email),\n }));\n\nexport const parseCsvEmails = file =>\n new Promise(resolve => {\n Papa.parse(file, {\n header: true,\n skipEmptyLines: true,\n transformHeader: h => h.toLowerCase().replace(/\\W/g, \"\"),\n complete: results => {\n const isEmailFieldPresent = results.meta.fields?.includes(\"email\");\n if (!isEmailFieldPresent) return resolve([]);\n\n const emails = results.data\n .map(item => item.email?.trim())\n .filter(isNot(undefined));\n\n return resolve(createEmailOptions(emails));\n },\n });\n });\n\nexport const generateInitialValues = defaultValues => ({\n ...INITIAL_VALUES,\n ...defaultValues,\n});\n\nexport const emailFormValidationSchema = disableReplyTo =>\n yup.object().shape({\n emailSubject: yup\n .string()\n .required(\n t(\"neetoMolecules.shareViaEmail.validations.requiredField.subject\")\n ),\n emailBody: yup\n .string()\n .test(\n \"emailBody\",\n t(\"neetoMolecules.shareViaEmail.validations.requiredField.emailBody\"),\n value => !isEditorEmpty(value)\n ),\n sendFromEmail: yup\n .string()\n .trim()\n .email(\n t(\"neetoMolecules.shareViaEmail.validations.invalidField.emailAddress\")\n )\n .required(\n t(\"neetoMolecules.shareViaEmail.validations.requiredField.sendFrom\")\n ),\n replyToEmail:\n !disableReplyTo &&\n yup\n .string()\n .trim()\n .email(\n t(\n \"neetoMolecules.shareViaEmail.validations.invalidField.emailAddress\"\n )\n )\n .required(\n t(\"neetoMolecules.shareViaEmail.validations.requiredField.replyTo\")\n ),\n notifyEmails: yup\n .array()\n .min(\n 1,\n t(\n \"neetoMolecules.shareViaEmail.validations.atleastOneIsRequired.emailAddress\"\n )\n )\n .test(\n \"are-all-emails-valid\",\n t(\"neetoMolecules.shareViaEmail.validations.invalidField.emailAddress\"),\n emails => emails.every(prop(\"valid\"))\n ),\n isSendLaterEnabled: yup.boolean(),\n sendEmailDatetime: yup.date().when(\"isSendLaterEnabled\", {\n is: true,\n then: yup\n .date()\n .required(\n t(\"neetoMolecules.shareViaEmail.validations.requiredField.sendLater\")\n ),\n }),\n name: yup.string(),\n actionButtonText: yup\n .string()\n .required(\n t(\n \"neetoMolecules.shareViaEmail.validations.requiredField.startButtonText\"\n )\n ),\n });\n\nexport const disabledTime = selectedDate => {\n const current = dayjs(selectedDate).startOf(\"day\");\n const today = dayjs().startOf(\"day\");\n\n if (current.isBefore(today)) {\n return {\n disabledHours: () => dynamicArray(24, i => i),\n disabledMinutes: () => dynamicArray(60, i => i),\n };\n }\n\n if (current.isSame(today)) {\n const currentTime = dayjs();\n const currentHour = currentTime.hour();\n const currentMinute = currentTime.minute();\n\n return {\n disabledHours: () => dynamicArray(currentHour, i => i),\n disabledMinutes: selectedHour =>\n selectedHour === currentHour ? dynamicArray(currentMinute, i => i) : [],\n };\n }\n\n return {};\n};\n","import { useField } from \"formik\";\nimport { DatePicker } from \"neetoui\";\n\nimport { TIME_FORMAT } from \"./constants\";\nimport { disabledTime } from \"./utils\";\n\nconst FormikDatePicker = ({ name, disabledDate, ...props }) => {\n const [field, meta, { setValue, setTouched }] = useField(name);\n\n return (\n <DatePicker\n showTime\n timeFormat={TIME_FORMAT}\n {...{ ...field, ...meta, disabledDate }}\n data-cy={props[\"data-cy\"]}\n data-testid={props[\"data-testid\"]}\n timePickerProps={{ disabledTime }}\n onBlur={() => !meta.touched && setTouched(true)}\n onChange={date => {\n setValue(date || undefined);\n if (!meta.touched) setTouched(true);\n }}\n {...props}\n />\n );\n};\n\nexport default FormikDatePicker;\n","import { useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport { useFormikContext } from \"formik\";\nimport { Typography, Label } from \"neetoui\";\nimport { Input, Switch, ActionBlock } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SendToFields from \"components/SendToFields\";\n\nimport EmailBody from \"./EmailBodyEditor\";\nimport FormikDatePicker from \"./FormikDatePicker\";\nimport { isPastDate } from \"./utils\";\n\nconst Form = ({\n showSendFromField,\n disableReplyTo,\n showVideoEmbedInEditor,\n children,\n}) => {\n const { values, initialValues } = useFormikContext();\n const editorRef = useRef();\n const { t } = useTranslation();\n\n const handleReset = () =>\n editorRef.current.editor.commands.setContent(initialValues.emailBody);\n\n return (\n <>\n <div className=\"space-y-4\">\n <SendToFields\n showUploadCsvButton\n emailInputProps={{\n label: t(\"neetoMolecules.shareViaEmail.sendTo\"),\n name: \"notifyEmails\",\n required: true,\n }}\n />\n <Input\n required\n className=\"col-span-1\"\n label={t(\"neetoMolecules.shareViaEmail.subject\")}\n name=\"emailSubject\"\n />\n <EmailBody\n {...{ showVideoEmbedInEditor }}\n id=\"emailBody\"\n ref={editorRef}\n />\n <div ref={editorRef} />\n <div>\n <Label className=\"flex items-center gap-2\">\n <Switch\n data-cy=\"send-later-switch\"\n data-testid=\"send-later-switch\"\n name=\"isSendLaterEnabled\"\n />\n <Typography\n component=\"span\"\n data-cy=\"send-later-label\"\n lineHeight=\"normal\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {t(\"neetoMolecules.shareViaEmail.sendLater\")}\n </Typography>\n </Label>\n </div>\n {values.isSendLaterEnabled && (\n <FormikDatePicker\n autoFocus\n data-cy=\"email-share-date-input\"\n data-testid=\"formik-date-picker\"\n disabledDate={isPastDate}\n name=\"sendEmailDatetime\"\n size=\"large\"\n />\n )}\n <Input\n required\n label={t(\"neetoMolecules.shareViaEmail.startButtonText\")}\n name=\"actionButtonText\"\n />\n <div className=\"flex flex-col gap-4 sm:flex-row sm:gap-6\">\n {showSendFromField && (\n <Input\n required\n className={classnames({ \"w-full flex-grow-0\": !disableReplyTo })}\n data-testid=\"neeto-molecules-share-via-email-send-from\"\n label={t(\"neetoMolecules.shareViaEmail.sendFrom\")}\n name=\"sendFromEmail\"\n />\n )}\n {!disableReplyTo && (\n <Input\n required\n data-testid=\"replyTo-field\"\n label={t(\"neetoMolecules.shareViaEmail.replyTo\")}\n name=\"replyToEmail\"\n className={classnames({\n \"w-full flex-grow-0\": showSendFromField,\n })}\n />\n )}\n </div>\n </div>\n {children && (\n <div className=\"neeto-ui-border-gray-300 mt-4 border-t py-4\">\n <h3 className=\"mb-4\">\n {t(\"neetoMolecules.shareViaEmail.additionalOptions\")}\n </h3>\n {children}\n </div>\n )}\n <div className=\"mt-6\">\n <ActionBlock\n cancelButtonProps={{\n label: t(\"neetoMolecules.shareViaEmail.reset\"),\n type: \"reset\",\n onClick: handleReset,\n }}\n submitButtonProps={{\n label: t(\"neetoMolecules.shareViaEmail.sendEmail\"),\n }}\n />\n </div>\n </>\n );\n};\n\nexport default Form;\n","import { LeftArrow } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport { Form } from \"neetoui/formik\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport EmailPreview from \"components/EmailPreview\";\n\nimport EmailForm from \"./Form\";\nimport { emailFormValidationSchema, generateInitialValues } from \"./utils\";\n\nconst ShareViaEmail = ({\n showSendFromField = false,\n backToUrl,\n handleSubmit,\n children,\n description,\n defaultValues,\n disableReplyTo,\n showVideoEmbedInEditor,\n title = \"\",\n}) => {\n const { t } = useTranslation();\n\n const shareViaEmailTitle = title || t(\"neetoMolecules.shareViaEmail.title\");\n const sendToEmails = notifyEmails => notifyEmails.map(email => email?.value);\n\n return (\n <div className=\"neeto-ui-bg-gray-100 flex w-full flex-1 flex-col p-6 md:p-8\">\n <div className=\"mx-auto flex w-full max-w-7xl flex-col\">\n <Form\n scrollToErrorField\n formProps={{ noValidate: true }}\n formikProps={{\n enableReinitialize: true,\n validateOnMount: true,\n initialValues: generateInitialValues(defaultValues),\n validationSchema: emailFormValidationSchema(disableReplyTo),\n onSubmit: handleSubmit,\n }}\n >\n {({ values }) => (\n <div className=\"grid grid-cols-1 gap-8 md:grid-cols-12\">\n <div className=\"col-span-1 md:col-span-6 lg:col-span-5\">\n {backToUrl && (\n <Button\n className=\"mb-4\"\n data-testid=\"back-to-url-button\"\n icon={LeftArrow}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.shareViaEmail.backToShare\")}\n size=\"small\"\n style=\"link\"\n to={backToUrl}\n />\n )}\n <div className=\"mb-6\">\n <Typography\n className=\"mb-0.5 break-words\"\n data-cy=\"share-via-email-heading\"\n lineHeight=\"normal\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {shareViaEmailTitle}\n </Typography>\n {description && (\n <Typography\n className=\"neeto-ui-text-gray-700\"\n data-cy=\"share-via-email-sub-heading\"\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {description}\n </Typography>\n )}\n </div>\n <EmailForm\n {...{\n disableReplyTo,\n showSendFromField,\n showVideoEmbedInEditor,\n }}\n >\n {children}\n </EmailForm>\n </div>\n <div className=\"col-span-1 md:col-span-6 lg:col-span-7\">\n <EmailPreview\n actionButtonText={values.actionButtonText}\n body={values.emailBody}\n className=\"sticky pt-1 md:mt-28\"\n subject={values.emailSubject}\n to={sendToEmails(values.notifyEmails)}\n />\n </div>\n </div>\n )}\n </Form>\n </div>\n </div>\n );\n};\n\nShareViaEmail.propTypes = {\n /**\n * The path to navigate back to the required page on clicking the 'Back to share' button.\n */\n backToUrl: PropTypes.string,\n /**\n * The function that handles submitting of values to the API.\n */\n handleSubmit: PropTypes.func,\n /**\n * React components that can be passed on as children, to add optional fields.\n */\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n ]),\n /**\n * Description text to be displayed under the component title.\n */\n description: PropTypes.string,\n /**\n * An object to assign default values to the email form.\n */\n defaultValues: PropTypes.shape({\n sendFromEmail: PropTypes.string,\n replyToEmail: PropTypes.string,\n actionButtonText: PropTypes.string,\n emailSubject: PropTypes.string,\n emailBody: PropTypes.string,\n }),\n /**\n * Boolean value to show the \"Send From\" field if needed.\n */\n showSendFromField: PropTypes.bool,\n /**\n * Boolean value to hide the \"Reply to\" field if not needed.\n */\n disableReplyTo: PropTypes.bool,\n /**\n * Boolean value to show video url as embed video in email body.\n */\n showVideoEmbedInEditor: PropTypes.bool,\n /**\n * To specify the title of the component. Defaults to \"Share via email\"\n */\n title: PropTypes.string,\n};\n\nexport default ShareViaEmail;\n"],"names":["INITIAL_VALUES","sendFromEmail","replyToEmail","notifyEmails","emailSubject","emailBody","isSendLaterEnabled","sendEmailDatetime","undefined","category","actionButtonText","EDITOR_ADDONS","TIME_FORMAT","EmailBody","forwardRef","_ref","ref","id","showVideoEmbedInEditor","_useTranslation","useTranslation","t","_jsx","FormikEditor","required","className","label","name","addons","concat","_toConsumableArray","displayName","isPastDate","date","dayjs","isBefore","subtract","generateInitialValues","defaultValues","_objectSpread","emailFormValidationSchema","disableReplyTo","yup","object","shape","string","test","value","isEditorEmpty","trim","email","array","min","emails","every","prop","when","is","then","disabledTime","selectedDate","current","startOf","today","disabledHours","dynamicArray","i","disabledMinutes","isSame","currentTime","currentHour","hour","currentMinute","minute","selectedHour","FormikDatePicker","disabledDate","props","_objectWithoutProperties","_excluded","_useField","useField","_useField2","_slicedToArray","field","meta","_useField2$","setValue","setTouched","DatePicker","showTime","timeFormat","timePickerProps","onBlur","touched","onChange","Form","showSendFromField","children","_useFormikContext","useFormikContext","values","initialValues","editorRef","useRef","handleReset","editor","commands","setContent","_jsxs","_Fragment","SendToFields","showUploadCsvButton","emailInputProps","Input","Label","Switch","Typography","component","lineHeight","style","weight","autoFocus","size","classnames","ActionBlock","cancelButtonProps","type","onClick","submitButtonProps","ShareViaEmail","_ref$showSendFromFiel","backToUrl","handleSubmit","description","_ref$title","title","shareViaEmailTitle","sendToEmails","map","scrollToErrorField","formProps","noValidate","formikProps","enableReinitialize","validateOnMount","validationSchema","onSubmit","_ref2","Button","icon","LeftArrow","iconPosition","to","EmailForm","EmailPreview","body","subject"],"mappings":"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"}
1
+ {"version":3,"file":"ShareViaEmail.js","sources":["../src/components/ShareViaEmail/constants.js","../src/components/ShareViaEmail/utils.js","../src/components/ShareViaEmail/FormikDatePicker.jsx","../src/components/ShareViaEmail/AdvancedProperties.jsx","../src/components/ShareViaEmail/EmailBodyEditor.jsx","../src/components/ShareViaEmail/Form.jsx","../src/components/ShareViaEmail/index.jsx"],"sourcesContent":["export const ONE_MEGABYTE = 1_048_576;\n\nexport const INITIAL_VALUES = {\n sendFromEmail: \"\",\n replyToEmail: \"\",\n notifyEmails: [],\n emailSubject: \"\",\n emailBody: \"\",\n isSendLaterEnabled: false,\n sendEmailDatetime: undefined,\n category: \"email_share\",\n actionButtonText: \"\",\n};\n\nexport const EDITOR_ADDONS = [\n \"emoji\",\n \"block-quote\",\n \"image-upload\",\n \"divider\",\n];\n\nexport const ALLOWED_FILE_PICKER_TYPES = [\".csv\"];\n\nexport const TIME_FORMAT = \"hh:mm A\";\n","import { t } from \"i18next\";\nimport { dynamicArray, isNot } from \"neetocist\";\nimport { dayjs } from \"neetocommons/utils\";\nimport { isEditorEmpty } from \"neetoeditor\";\nimport Papa from \"papaparse\";\nimport { prop } from \"ramda\";\nimport { string } from \"yup\";\nimport * as yup from \"yup\";\n\nimport { INITIAL_VALUES } from \"./constants\";\n\nconst isValidEmail = email => string().email().isValidSync(email);\n\nexport const isPastDate = date =>\n dayjs(date).isBefore(dayjs().subtract(1, \"days\"));\n\nexport const createEmailOptions = (emails = []) =>\n emails.map(email => ({\n label: email,\n value: email,\n valid: isValidEmail(email),\n }));\n\nexport const parseCsvEmails = file =>\n new Promise(resolve => {\n Papa.parse(file, {\n header: true,\n skipEmptyLines: true,\n transformHeader: h => h.toLowerCase().replace(/\\W/g, \"\"),\n complete: results => {\n const isEmailFieldPresent = results.meta.fields?.includes(\"email\");\n if (!isEmailFieldPresent) return resolve([]);\n\n const emails = results.data\n .map(item => item.email?.trim())\n .filter(isNot(undefined));\n\n return resolve(createEmailOptions(emails));\n },\n });\n });\n\nexport const generateInitialValues = defaultValues => ({\n ...INITIAL_VALUES,\n ...defaultValues,\n});\n\nexport const emailFormValidationSchema = disableReplyTo =>\n yup.object().shape({\n emailSubject: yup\n .string()\n .required(\n t(\"neetoMolecules.shareViaEmail.validations.requiredField.subject\")\n ),\n emailBody: yup\n .string()\n .test(\n \"emailBody\",\n t(\"neetoMolecules.shareViaEmail.validations.requiredField.emailBody\"),\n value => !isEditorEmpty(value)\n ),\n sendFromEmail: yup\n .string()\n .trim()\n .email(\n t(\"neetoMolecules.shareViaEmail.validations.invalidField.emailAddress\")\n )\n .required(\n t(\"neetoMolecules.shareViaEmail.validations.requiredField.sendFrom\")\n ),\n replyToEmail:\n !disableReplyTo &&\n yup\n .string()\n .trim()\n .email(\n t(\n \"neetoMolecules.shareViaEmail.validations.invalidField.emailAddress\"\n )\n )\n .required(\n t(\"neetoMolecules.shareViaEmail.validations.requiredField.replyTo\")\n ),\n notifyEmails: yup\n .array()\n .min(\n 1,\n t(\n \"neetoMolecules.shareViaEmail.validations.atleastOneIsRequired.emailAddress\"\n )\n )\n .test(\n \"are-all-emails-valid\",\n t(\"neetoMolecules.shareViaEmail.validations.invalidField.emailAddress\"),\n emails => emails.every(prop(\"valid\"))\n ),\n isSendLaterEnabled: yup.boolean(),\n sendEmailDatetime: yup.date().when(\"isSendLaterEnabled\", {\n is: true,\n then: yup\n .date()\n .required(\n t(\"neetoMolecules.shareViaEmail.validations.requiredField.sendLater\")\n ),\n }),\n name: yup.string(),\n actionButtonText: yup\n .string()\n .required(\n t(\n \"neetoMolecules.shareViaEmail.validations.requiredField.startButtonText\"\n )\n ),\n });\n\nexport const disabledTime = selectedDate => {\n const current = dayjs(selectedDate).startOf(\"day\");\n const today = dayjs().startOf(\"day\");\n\n if (current.isBefore(today)) {\n return {\n disabledHours: () => dynamicArray(24, i => i),\n disabledMinutes: () => dynamicArray(60, i => i),\n };\n }\n\n if (current.isSame(today)) {\n const currentTime = dayjs();\n const currentHour = currentTime.hour();\n const currentMinute = currentTime.minute();\n\n return {\n disabledHours: () => dynamicArray(currentHour, i => i),\n disabledMinutes: selectedHour =>\n selectedHour === currentHour ? dynamicArray(currentMinute, i => i) : [],\n };\n }\n\n return {};\n};\n","import { useField } from \"formik\";\nimport { DatePicker } from \"neetoui\";\n\nimport { TIME_FORMAT } from \"./constants\";\nimport { disabledTime } from \"./utils\";\n\nconst FormikDatePicker = ({ name, disabledDate, ...props }) => {\n const [field, meta, { setValue, setTouched }] = useField(name);\n\n return (\n <DatePicker\n showTime\n timeFormat={TIME_FORMAT}\n {...{ ...field, ...meta, disabledDate }}\n data-cy={props[\"data-cy\"]}\n data-testid={props[\"data-testid\"]}\n timePickerProps={{ disabledTime }}\n onBlur={() => !meta.touched && setTouched(true)}\n onChange={date => {\n setValue(date || undefined);\n if (!meta.touched) setTouched(true);\n }}\n {...props}\n />\n );\n};\n\nexport default FormikDatePicker;\n","import { useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { useFormikContext } from \"formik\";\nimport { Down, Up } from \"neetoicons\";\nimport { Label, Typography } from \"neetoui\";\nimport { Input, Switch } from \"neetoui/formik\";\nimport { not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport FormikDatePicker from \"./FormikDatePicker\";\nimport { isPastDate } from \"./utils\";\n\nconst AdvancedProperties = ({ showSendFromField, disableReplyTo }) => {\n const { t } = useTranslation();\n\n const { values } = useFormikContext();\n\n const [isAdvancedPropertiesVisible, setIsAdvancedPropertiesVisible] =\n useState(false);\n\n const toggleAdvancedOptions = () => setIsAdvancedPropertiesVisible(not);\n\n return (\n <div className=\"flex w-full flex-col items-start gap-4\">\n <button\n className=\"flex w-full cursor-pointer items-start justify-between overflow-hidden border-0 py-4\"\n type=\"button\"\n onClick={toggleAdvancedOptions}\n >\n <Typography\n className=\"flex min-w-0 flex-grow\"\n component=\"span\"\n style=\"h5\"\n weight=\"medium\"\n >\n {t(\"neetoMolecules.shareViaEmail.advancedProperties\")}\n </Typography>\n {isAdvancedPropertiesVisible ? (\n <Up className=\"flex-shrink-0\" size={20} />\n ) : (\n <Down className=\"flex-shrink-0\" size={20} />\n )}\n </button>\n {isAdvancedPropertiesVisible && (\n <>\n <div>\n <Label className=\"flex items-center gap-2\">\n <Switch\n data-cy=\"send-later-switch\"\n data-testid=\"send-later-switch\"\n name=\"isSendLaterEnabled\"\n />\n <Typography\n component=\"span\"\n data-cy=\"send-later-label\"\n lineHeight=\"normal\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {t(\"neetoMolecules.shareViaEmail.sendLater\")}\n </Typography>\n </Label>\n </div>\n {values.isSendLaterEnabled && (\n <FormikDatePicker\n autoFocus\n data-cy=\"email-share-date-input\"\n data-testid=\"formik-date-picker\"\n disabledDate={isPastDate}\n name=\"sendEmailDatetime\"\n size=\"large\"\n />\n )}\n <Input\n required\n className=\"w-full\"\n label={t(\"neetoMolecules.shareViaEmail.startButtonText\")}\n name=\"actionButtonText\"\n />\n <div className=\"flex w-full flex-col gap-4 sm:flex-row sm:gap-6\">\n {showSendFromField && (\n <Input\n required\n data-testid=\"neeto-molecules-share-via-email-send-from\"\n label={t(\"neetoMolecules.shareViaEmail.sendFrom\")}\n name=\"sendFromEmail\"\n className={classNames({\n \"w-full flex-grow-0\": !disableReplyTo,\n })}\n />\n )}\n {!disableReplyTo && (\n <Input\n required\n data-testid=\"replyTo-field\"\n label={t(\"neetoMolecules.shareViaEmail.replyTo\")}\n name=\"replyToEmail\"\n className={classNames({\n \"w-full flex-grow-0\": showSendFromField,\n })}\n />\n )}\n </div>\n </>\n )}\n </div>\n );\n};\n\nexport default AdvancedProperties;\n","import { forwardRef } from \"react\";\n\nimport { FormikEditor } from \"neetoeditor\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { EDITOR_ADDONS } from \"./constants\";\n\nconst EmailBody = forwardRef(({ id, showVideoEmbedInEditor }, ref) => {\n const { t } = useTranslation();\n\n return (\n <FormikEditor\n {...{ id, ref }}\n required\n className=\"mb-6\"\n data-cy=\"email-body\"\n label={t(\"neetoMolecules.shareViaEmail.emailBody\")}\n name=\"emailBody\"\n addons={\n showVideoEmbedInEditor\n ? [...EDITOR_ADDONS, \"video-embed\"]\n : EDITOR_ADDONS\n }\n />\n );\n});\n\nEmailBody.displayName = \"EmailBody\";\n\nexport default EmailBody;\n","import { useRef } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { Input, ActionBlock } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SendToFields from \"components/SendToFields\";\n\nimport AdvancedProperties from \"./AdvancedProperties\";\nimport EmailBody from \"./EmailBodyEditor\";\n\nconst Form = ({\n showSendFromField,\n disableReplyTo,\n showVideoEmbedInEditor,\n children,\n}) => {\n const { initialValues } = useFormikContext();\n const editorRef = useRef();\n const { t } = useTranslation();\n\n const handleReset = () =>\n editorRef.current.editor.commands.setContent(initialValues.emailBody);\n\n return (\n <>\n <div className=\"space-y-4\">\n <SendToFields\n showUploadCsvButton\n emailInputProps={{\n label: t(\"neetoMolecules.shareViaEmail.sendTo\"),\n name: \"notifyEmails\",\n required: true,\n }}\n />\n <Input\n required\n className=\"col-span-1\"\n label={t(\"neetoMolecules.shareViaEmail.subject\")}\n name=\"emailSubject\"\n />\n <EmailBody\n {...{ showVideoEmbedInEditor }}\n id=\"emailBody\"\n ref={editorRef}\n />\n <div ref={editorRef} />\n <AdvancedProperties {...{ disableReplyTo, showSendFromField }} />\n </div>\n {children && (\n <div className=\"neeto-ui-border-gray-300 mt-4 border-t py-4\">\n <h3 className=\"mb-4\">\n {t(\"neetoMolecules.shareViaEmail.additionalOptions\")}\n </h3>\n {children}\n </div>\n )}\n <div className=\"mt-6\">\n <ActionBlock\n cancelButtonProps={{\n label: t(\"neetoMolecules.shareViaEmail.reset\"),\n type: \"reset\",\n onClick: handleReset,\n }}\n submitButtonProps={{\n label: t(\"neetoMolecules.shareViaEmail.sendEmail\"),\n }}\n />\n </div>\n </>\n );\n};\n\nexport default Form;\n","import { LeftArrow } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport { Form } from \"neetoui/formik\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport EmailPreview from \"components/EmailPreview\";\n\nimport EmailForm from \"./Form\";\nimport { emailFormValidationSchema, generateInitialValues } from \"./utils\";\n\nconst ShareViaEmail = ({\n showSendFromField = false,\n backToUrl,\n handleSubmit,\n children,\n description,\n defaultValues,\n disableReplyTo,\n showVideoEmbedInEditor,\n title = \"\",\n}) => {\n const { t } = useTranslation();\n\n const shareViaEmailTitle = title || t(\"neetoMolecules.shareViaEmail.title\");\n const sendToEmails = notifyEmails => notifyEmails.map(email => email?.value);\n\n return (\n <div className=\"neeto-ui-bg-gray-100 flex w-full flex-1 flex-col p-6 md:p-8\">\n <div className=\"mx-auto flex w-full max-w-7xl flex-col\">\n <Form\n scrollToErrorField\n formProps={{ noValidate: true }}\n formikProps={{\n enableReinitialize: true,\n validateOnMount: true,\n initialValues: generateInitialValues(defaultValues),\n validationSchema: emailFormValidationSchema(disableReplyTo),\n onSubmit: handleSubmit,\n }}\n >\n {({ values }) => (\n <div className=\"grid grid-cols-1 gap-8 md:grid-cols-12\">\n <div className=\"col-span-1 md:col-span-6 lg:col-span-5\">\n {backToUrl && (\n <Button\n className=\"mb-4\"\n data-testid=\"back-to-url-button\"\n icon={LeftArrow}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.shareViaEmail.backToShare\")}\n size=\"small\"\n style=\"link\"\n to={backToUrl}\n />\n )}\n <div className=\"mb-6\">\n <Typography\n className=\"mb-0.5 break-words\"\n data-cy=\"share-via-email-heading\"\n lineHeight=\"normal\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {shareViaEmailTitle}\n </Typography>\n {description && (\n <Typography\n className=\"neeto-ui-text-gray-700\"\n data-cy=\"share-via-email-sub-heading\"\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {description}\n </Typography>\n )}\n </div>\n <EmailForm\n {...{\n disableReplyTo,\n showSendFromField,\n showVideoEmbedInEditor,\n }}\n >\n {children}\n </EmailForm>\n </div>\n <div className=\"col-span-1 md:col-span-6 lg:col-span-7\">\n <EmailPreview\n actionButtonText={values.actionButtonText}\n body={values.emailBody}\n className=\"sticky pt-1 md:mt-28\"\n subject={values.emailSubject}\n to={sendToEmails(values.notifyEmails)}\n />\n </div>\n </div>\n )}\n </Form>\n </div>\n </div>\n );\n};\n\nShareViaEmail.propTypes = {\n /**\n * The path to navigate back to the required page on clicking the 'Back to share' button.\n */\n backToUrl: PropTypes.string,\n /**\n * The function that handles submitting of values to the API.\n */\n handleSubmit: PropTypes.func,\n /**\n * React components that can be passed on as children, to add optional fields.\n */\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n ]),\n /**\n * Description text to be displayed under the component title.\n */\n description: PropTypes.string,\n /**\n * An object to assign default values to the email form.\n */\n defaultValues: PropTypes.shape({\n sendFromEmail: PropTypes.string,\n replyToEmail: PropTypes.string,\n actionButtonText: PropTypes.string,\n emailSubject: PropTypes.string,\n emailBody: PropTypes.string,\n }),\n /**\n * Boolean value to show the \"Send From\" field if needed.\n */\n showSendFromField: PropTypes.bool,\n /**\n * Boolean value to hide the \"Reply to\" field if not needed.\n */\n disableReplyTo: PropTypes.bool,\n /**\n * Boolean value to show video url as embed video in email body.\n */\n showVideoEmbedInEditor: PropTypes.bool,\n /**\n * To specify the title of the component. Defaults to \"Share via email\"\n */\n title: PropTypes.string,\n};\n\nexport default ShareViaEmail;\n"],"names":["INITIAL_VALUES","sendFromEmail","replyToEmail","notifyEmails","emailSubject","emailBody","isSendLaterEnabled","sendEmailDatetime","undefined","category","actionButtonText","EDITOR_ADDONS","TIME_FORMAT","isPastDate","date","dayjs","isBefore","subtract","generateInitialValues","defaultValues","_objectSpread","emailFormValidationSchema","disableReplyTo","yup","object","shape","string","required","t","test","value","isEditorEmpty","trim","email","array","min","emails","every","prop","when","is","then","name","disabledTime","selectedDate","current","startOf","today","disabledHours","dynamicArray","i","disabledMinutes","isSame","currentTime","currentHour","hour","currentMinute","minute","selectedHour","FormikDatePicker","_ref","disabledDate","props","_objectWithoutProperties","_excluded","_useField","useField","_useField2","_slicedToArray","field","meta","_useField2$","setValue","setTouched","_jsx","DatePicker","showTime","timeFormat","timePickerProps","onBlur","touched","onChange","AdvancedProperties","showSendFromField","_useTranslation","useTranslation","_useFormikContext","useFormikContext","values","_useState","useState","_useState2","isAdvancedPropertiesVisible","setIsAdvancedPropertiesVisible","toggleAdvancedOptions","not","_jsxs","className","children","type","onClick","Typography","component","style","weight","Up","size","Down","_Fragment","Label","Switch","lineHeight","autoFocus","Input","label","classNames","EmailBody","forwardRef","ref","id","showVideoEmbedInEditor","FormikEditor","addons","concat","_toConsumableArray","displayName","Form","initialValues","editorRef","useRef","handleReset","editor","commands","setContent","SendToFields","showUploadCsvButton","emailInputProps","ActionBlock","cancelButtonProps","submitButtonProps","ShareViaEmail","_ref$showSendFromFiel","backToUrl","handleSubmit","description","_ref$title","title","shareViaEmailTitle","sendToEmails","map","scrollToErrorField","formProps","noValidate","formikProps","enableReinitialize","validateOnMount","validationSchema","onSubmit","_ref2","Button","icon","LeftArrow","iconPosition","to","EmailForm","EmailPreview","body","subject"],"mappings":"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"}
@@ -21,9 +21,9 @@ import { n } from './inject-css-c86de496.js';
21
21
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
22
22
  import Modal from '@bigbinary/neetoui/Modal';
23
23
  import Input$1 from '@bigbinary/neetoui/Input';
24
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
24
25
  import classnames from 'classnames';
25
26
  import { Link as Link$1 } from 'react-router-dom';
26
- import '@babel/runtime/helpers/defineProperty';
27
27
  import '@babel/runtime/helpers/objectWithoutProperties';
28
28
  import '@bigbinary/neeto-icons/Copy';
29
29
  import '@bigbinary/neeto-icons/Check';
@@ -1212,7 +1212,7 @@ var QRCode = function QRCode(_ref) {
1212
1212
  });
1213
1213
  };
1214
1214
  return /*#__PURE__*/jsxs("div", {
1215
- className: "neeto-ui-border-gray-200 flex flex-col justify-center space-y-2 border-t py-3 pl-8 sm:space-y-4 sm:border-l sm:py-2 sm:pl-6",
1215
+ className: "neeto-ui-border-gray-200 flex flex-col justify-start space-y-2 border-t py-3 pl-8 sm:space-y-4 sm:border-l sm:py-2 sm:pl-6",
1216
1216
  "data-cy": "qr-download-block",
1217
1217
  "data-testid": "qr-download-block",
1218
1218
  children: [/*#__PURE__*/jsx(Typography, {
@@ -1246,6 +1246,32 @@ var QRCode = function QRCode(_ref) {
1246
1246
  });
1247
1247
  };
1248
1248
 
1249
+ var Subtitle = function Subtitle(_ref) {
1250
+ var link = _ref.link,
1251
+ dataCy = _ref.dataCy,
1252
+ _onClick = _ref.onClick,
1253
+ subtitle = _ref.subtitle;
1254
+ var Component = isPresent(link) ? Link$1 : "div";
1255
+ return /*#__PURE__*/jsx(Component, {
1256
+ "data-cy": dataCy,
1257
+ to: link,
1258
+ onClick: function onClick(event) {
1259
+ event.stopPropagation();
1260
+ _onClick === null || _onClick === void 0 ? void 0 : _onClick(event);
1261
+ },
1262
+ children: /*#__PURE__*/jsx(Typography, {
1263
+ style: "body3",
1264
+ weight: "medium",
1265
+ className: classnames("break-words", {
1266
+ "neeto-ui-text-accent-800": isPresent(_onClick) || isPresent(link)
1267
+ }),
1268
+ children: subtitle
1269
+ })
1270
+ });
1271
+ };
1272
+
1273
+ 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; }
1274
+ 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; }
1249
1275
  var ShareBlock = function ShareBlock(_ref) {
1250
1276
  var entity = _ref.entity,
1251
1277
  postTitle = _ref.postTitle,
@@ -1260,13 +1286,14 @@ var ShareBlock = function ShareBlock(_ref) {
1260
1286
  return /*#__PURE__*/jsxs("div", {
1261
1287
  className: "flex flex-col divide-y sm:flex-row sm:gap-6 sm:divide-x sm:divide-y-0",
1262
1288
  children: [hasMoreOptions && /*#__PURE__*/jsx("div", {
1263
- className: "divide-y",
1289
+ className: "max-w-md divide-y",
1264
1290
  children: moreOptions.map(function (_ref2, index) {
1265
1291
  var title = _ref2.title,
1266
1292
  link = _ref2.link,
1267
1293
  Icon = _ref2.icon,
1268
1294
  onClick = _ref2.onClick,
1269
- dataCy = _ref2.dataCy;
1295
+ dataCy = _ref2.dataCy,
1296
+ subtitleProps = _ref2.subtitleProps;
1270
1297
  var Component = isPresent(link) ? Link$1 : "div";
1271
1298
  return /*#__PURE__*/createElement(Component, {
1272
1299
  onClick: onClick,
@@ -1276,14 +1303,20 @@ var ShareBlock = function ShareBlock(_ref) {
1276
1303
  className: classnames("neeto-ui-border-gray-200 flex cursor-pointer items-center gap-x-2 border-t py-3", {
1277
1304
  "border-none": index === 0
1278
1305
  })
1279
- }, /*#__PURE__*/jsx(Icon, {
1280
- className: "neeto-ui-text-gray-500",
1281
- size: 24
1282
- }), /*#__PURE__*/jsx(Typography, {
1283
- className: "group-hover:underline",
1284
- style: "body2",
1285
- weight: "medium",
1286
- children: title
1306
+ }, /*#__PURE__*/jsxs("div", {
1307
+ className: "flex flex-row gap-2",
1308
+ children: [/*#__PURE__*/jsx(Icon, {
1309
+ className: "neeto-ui-text-gray-500 flex-shrink-0",
1310
+ size: 24
1311
+ }), /*#__PURE__*/jsxs("div", {
1312
+ className: "flex flex-col gap-1",
1313
+ children: [/*#__PURE__*/jsx(Typography, {
1314
+ className: "group-hover:underline",
1315
+ style: "body2",
1316
+ weight: "medium",
1317
+ children: title
1318
+ }), subtitleProps && /*#__PURE__*/jsx(Subtitle, _objectSpread({}, subtitleProps))]
1319
+ })]
1287
1320
  }));
1288
1321
  })
1289
1322
  }), !disableShareSocialMedia && /*#__PURE__*/jsxs("div", {