@bigbinary/neeto-molecules 5.2.1 → 5.2.2
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/dist/{Columns-BFBWAHqh.js → Columns-CLfAUkgh.js} +4 -4
- package/dist/Columns-CLfAUkgh.js.map +1 -0
- package/dist/{ConfigureView-CohhUNxy.js → ConfigureView-DfBAWbOJ.js} +4 -2
- package/dist/ConfigureView-DfBAWbOJ.js.map +1 -0
- package/dist/cjs/{Columns-CHOsnC9n.js → Columns-CKgVNYub.js} +4 -4
- package/dist/cjs/Columns-CKgVNYub.js.map +1 -0
- package/dist/cjs/{ConfigureView-CCjMYBjp.js → ConfigureView-BeNSaMvm.js} +4 -2
- package/dist/cjs/ConfigureView-BeNSaMvm.js.map +1 -0
- package/dist/cjs/{phone-number-DMH57syY.js → phone-number-YL_ULNtx.js} +2 -2
- package/dist/cjs/{phone-number-DMH57syY.js.map → phone-number-YL_ULNtx.js.map} +1 -1
- package/dist/cjs/v2/ButtonGroup.js +2 -2
- package/dist/cjs/v2/ButtonGroup.js.map +1 -1
- package/dist/cjs/v2/CalendarView.js +1 -1
- package/dist/cjs/v2/Codeblock.js +2 -2
- package/dist/cjs/v2/Codeblock.js.map +1 -1
- package/dist/cjs/v2/Columns.js +1 -1
- package/dist/cjs/v2/ConfigurePageSidebar.js +1 -1
- package/dist/cjs/v2/DndTable.js +120 -51
- package/dist/cjs/v2/DndTable.js.map +1 -1
- package/dist/cjs/v2/EmailPreview.js +1 -1
- package/dist/cjs/v2/EmailPreview.js.map +1 -1
- package/dist/cjs/v2/ErrorPage.js +2 -2
- package/dist/cjs/v2/ErrorPage.js.map +1 -1
- package/dist/cjs/v2/FloatingActionMenu.js +1 -1
- package/dist/cjs/v2/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/v2/NeetoWidget.js +1 -1
- package/dist/cjs/v2/NeetoWidget.js.map +1 -1
- package/dist/cjs/v2/OptionFields.js +2 -2
- package/dist/cjs/v2/OptionFields.js.map +1 -1
- package/dist/cjs/v2/PhoneNumber.js +1 -1
- package/dist/cjs/v2/ProductEmbed.js +54 -28
- package/dist/cjs/v2/ProductEmbed.js.map +1 -1
- package/dist/cjs/v2/SessionEnvironment.js +1 -1
- package/dist/cjs/v2/ShareViaEmail.js +1 -1
- package/dist/cjs/v2/ShareViaEmail.js.map +1 -1
- package/dist/cjs/v2/ShareViaLink.js +30 -25
- package/dist/cjs/v2/ShareViaLink.js.map +1 -1
- package/dist/cjs/v2/Sidebar.js +1 -1
- package/dist/cjs/v2/SubHeader.js +1 -1
- package/dist/cjs/v2/Taxonomy.js +1 -1
- package/dist/{phone-number-D9soCpCv.js → phone-number-ChAzsdbN.js} +2 -2
- package/dist/{phone-number-D9soCpCv.js.map → phone-number-ChAzsdbN.js.map} +1 -1
- package/dist/v2/ButtonGroup.js +2 -2
- package/dist/v2/ButtonGroup.js.map +1 -1
- package/dist/v2/CalendarView.js +1 -1
- package/dist/v2/Codeblock.js +2 -2
- package/dist/v2/Codeblock.js.map +1 -1
- package/dist/v2/Columns.js +1 -1
- package/dist/v2/ConfigurePageSidebar.js +1 -1
- package/dist/v2/DndTable.js +121 -52
- package/dist/v2/DndTable.js.map +1 -1
- package/dist/v2/EmailPreview.js +1 -1
- package/dist/v2/EmailPreview.js.map +1 -1
- package/dist/v2/ErrorPage.js +2 -2
- package/dist/v2/ErrorPage.js.map +1 -1
- package/dist/v2/FloatingActionMenu.js +1 -1
- package/dist/v2/FloatingActionMenu.js.map +1 -1
- package/dist/v2/NeetoWidget.js +1 -1
- package/dist/v2/NeetoWidget.js.map +1 -1
- package/dist/v2/OptionFields.js +2 -2
- package/dist/v2/OptionFields.js.map +1 -1
- package/dist/v2/PhoneNumber.js +2 -2
- package/dist/v2/ProductEmbed.js +55 -29
- package/dist/v2/ProductEmbed.js.map +1 -1
- package/dist/v2/SessionEnvironment.js +1 -1
- package/dist/v2/ShareViaEmail.js +1 -1
- package/dist/v2/ShareViaEmail.js.map +1 -1
- package/dist/v2/ShareViaLink.js +30 -25
- package/dist/v2/ShareViaLink.js.map +1 -1
- package/dist/v2/Sidebar.js +1 -1
- package/dist/v2/SubHeader.js +1 -1
- package/dist/v2/Taxonomy.js +1 -1
- package/package.json +1 -1
- package/src/translations/en.json +4 -0
- package/dist/Columns-BFBWAHqh.js.map +0 -1
- package/dist/ConfigureView-CohhUNxy.js.map +0 -1
- package/dist/cjs/Columns-CHOsnC9n.js.map +0 -1
- package/dist/cjs/ConfigureView-CCjMYBjp.js.map +0 -1
|
@@ -23,7 +23,7 @@ var useHotkeys = require('@bigbinary/neeto-hotkeys');
|
|
|
23
23
|
var jsxRuntime = require('react/jsx-runtime');
|
|
24
24
|
require('@babel/runtime/helpers/objectWithoutProperties');
|
|
25
25
|
require('formik');
|
|
26
|
-
var phoneNumber = require('../phone-number-
|
|
26
|
+
var phoneNumber = require('../phone-number-YL_ULNtx.js');
|
|
27
27
|
require('../index.es5.min-CUvhPmKJ.js');
|
|
28
28
|
require('@babel/runtime/helpers/asyncToGenerator');
|
|
29
29
|
require('i18next');
|
|
@@ -338,7 +338,7 @@ var ShareViaEmail = function ShareViaEmail(_ref) {
|
|
|
338
338
|
className: "col-span-1 p-6 pb-0 md:col-span-6 md:h-full md:overflow-y-auto lg:col-span-5",
|
|
339
339
|
"data-testid": "share-via-email-frame-wrapper",
|
|
340
340
|
children: [backToUrl && /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
|
|
341
|
-
className: "mb-4",
|
|
341
|
+
className: "mb-4 rtl:[&_svg]:scale-x-[-1]",
|
|
342
342
|
"data-testid": "back-to-url-button",
|
|
343
343
|
icon: arrowLeft.ArrowLeft,
|
|
344
344
|
iconPosition: "left",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShareViaEmail.js","sources":["../../../src/v2/components/ShareViaEmail/constants.js","../../../src/v2/components/ShareViaEmail/FormikDatePicker.jsx","../../../src/v2/components/ShareViaEmail/utils.js","../../../src/v2/components/ShareViaEmail/AdvancedProperties.jsx","../../../src/v2/components/ShareViaEmail/EmailBodyEditor.jsx","../../../src/v2/components/ShareViaEmail/Form.jsx","../../../src/v2/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 { DatePicker } from \"@bigbinary/neeto-atoms\";\nimport { useField } from \"formik\";\n\nimport { TIME_FORMAT } from \"./constants\";\n\nconst FormikDatePicker = ({\n name,\n disabledDate,\n \"data-testid\": dataTestId,\n ...props\n}) => {\n const [field, meta, { setValue, setTouched }] = useField(name);\n\n return (\n <div className=\"w-full\" data-testid={dataTestId}>\n <DatePicker\n {...{ disabledDate }}\n showTime\n error={meta.error}\n timeFormat={TIME_FORMAT}\n value={field.value}\n onBlur={() => !meta.touched && setTouched(true)}\n onChange={date => {\n setValue(date || undefined);\n if (!meta.touched) setTouched(true);\n }}\n {...props}\n />\n </div>\n );\n};\n\nexport default FormikDatePicker;\n","import { t } from \"i18next\";\nimport { dynamicArray, isNot } from \"neetocist\";\nimport { dayjs } from \"neetocommons/v2/utils\";\nimport { isEditorEmpty } from \"neetoeditor/v2\";\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 { useState } from \"react\";\n\nimport { Label, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Input, Switch } from \"@bigbinary/neeto-atoms/formik\";\nimport classNames from \"classnames\";\nimport { useFormikContext } from \"formik\";\nimport { ChevronDown, ChevronUp } from \"lucide-react\";\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 as=\"span\"\n className=\"flex min-w-0 flex-grow\"\n variant=\"h5\"\n weight=\"medium\"\n >\n {t(\"neetoMolecules.shareViaEmail.advancedProperties\")}\n </Typography>\n {isAdvancedPropertiesVisible ? (\n <ChevronUp className=\"flex-shrink-0\" size={20} />\n ) : (\n <ChevronDown 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-testid=\"send-later-switch\"\n name=\"isSendLaterEnabled\"\n />\n <Typography\n as=\"span\"\n className=\"leading-normal\"\n data-testid=\"send-later-label\"\n variant=\"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-testid=\"email-share-date-input\"\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/v2\";\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-testid=\"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 { Input, ActionBlock } from \"@bigbinary/neeto-atoms/formik\";\nimport { useFormikContext } from \"formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport AdvancedProperties from \"./AdvancedProperties\";\nimport EmailBody from \"./EmailBodyEditor\";\n\nimport SendToFields from \"../SendToFields\";\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=\"flex flex-col gap-y-6\">\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=\"border-border 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=\"bg-background sticky bottom-0 z-10 mt-6 py-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 { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Form } from \"@bigbinary/neeto-atoms/formik\";\nimport { ArrowLeft } from \"lucide-react\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport EmailForm from \"./Form\";\nimport { emailFormValidationSchema, generateInitialValues } from \"./utils\";\n\nimport EmailPreview from \"../EmailPreview\";\nimport MobilePreviewHeader from \"../MobilePreviewHeader\";\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=\"w-full\">\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 md:h-[calc(100dvh-4rem)] md:grid-cols-12\">\n <div\n className=\"col-span-1 p-6 pb-0 md:col-span-6 md:h-full md:overflow-y-auto lg:col-span-5\"\n data-testid=\"share-via-email-frame-wrapper\"\n >\n {backToUrl && (\n <Button\n className=\"mb-4\"\n data-testid=\"back-to-url-button\"\n icon={ArrowLeft}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.shareViaEmail.backToShare\")}\n size=\"sm\"\n to={backToUrl}\n variant=\"link\"\n />\n )}\n <div className=\"mb-6\">\n <Typography\n className=\"mb-0.5 leading-normal break-words\"\n data-testid=\"share-via-email-heading\"\n variant=\"h2\"\n weight=\"semibold\"\n >\n {shareViaEmailTitle}\n </Typography>\n {description && (\n <Typography\n className=\"text-foreground leading-normal\"\n data-testid=\"share-via-email-sub-heading\"\n variant=\"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 <MobilePreviewHeader className=\"col-span-1 md:hidden\" />\n <div className=\"bg-muted col-span-1 p-6 py-10 md:col-span-6 md:h-full md:overflow-y-auto lg:col-span-7\">\n <EmailPreview\n actionButtonText={values.actionButtonText}\n body={values.emailBody}\n subject={values.emailSubject}\n to={sendToEmails(values.notifyEmails)}\n />\n </div>\n </div>\n )}\n </Form>\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","FormikDatePicker","_ref","name","disabledDate","dataTestId","props","_objectWithoutProperties","_excluded","_useField","useField","_useField2","_slicedToArray","field","meta","_useField2$","setValue","setTouched","_jsx","className","children","DatePicker","_objectSpread","showTime","error","timeFormat","value","onBlur","touched","onChange","date","isPastDate","dayjs","isBefore","subtract","generateInitialValues","defaultValues","emailFormValidationSchema","disableReplyTo","yup","object","shape","string","required","t","test","isEditorEmpty","trim","email","array","min","emails","every","prop","when","is","then","AdvancedProperties","showSendFromField","_useTranslation","useTranslation","_useFormikContext","useFormikContext","values","_useState","useState","_useState2","isAdvancedPropertiesVisible","setIsAdvancedPropertiesVisible","toggleAdvancedOptions","not","_jsxs","type","onClick","Typography","as","variant","weight","ChevronUp","size","ChevronDown","_Fragment","Label","Switch","autoFocus","Input","label","classNames","EmailBody","forwardRef","ref","id","showVideoEmbedInEditor","FormikEditor","addons","concat","_toConsumableArray","displayName","Form","initialValues","editorRef","useRef","handleReset","current","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","ArrowLeft","iconPosition","to","EmailForm","MobilePreviewHeader","EmailPreview","body","subject"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ShareViaEmail.js","sources":["../../../src/v2/components/ShareViaEmail/constants.js","../../../src/v2/components/ShareViaEmail/FormikDatePicker.jsx","../../../src/v2/components/ShareViaEmail/utils.js","../../../src/v2/components/ShareViaEmail/AdvancedProperties.jsx","../../../src/v2/components/ShareViaEmail/EmailBodyEditor.jsx","../../../src/v2/components/ShareViaEmail/Form.jsx","../../../src/v2/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 { DatePicker } from \"@bigbinary/neeto-atoms\";\nimport { useField } from \"formik\";\n\nimport { TIME_FORMAT } from \"./constants\";\n\nconst FormikDatePicker = ({\n name,\n disabledDate,\n \"data-testid\": dataTestId,\n ...props\n}) => {\n const [field, meta, { setValue, setTouched }] = useField(name);\n\n return (\n <div className=\"w-full\" data-testid={dataTestId}>\n <DatePicker\n {...{ disabledDate }}\n showTime\n error={meta.error}\n timeFormat={TIME_FORMAT}\n value={field.value}\n onBlur={() => !meta.touched && setTouched(true)}\n onChange={date => {\n setValue(date || undefined);\n if (!meta.touched) setTouched(true);\n }}\n {...props}\n />\n </div>\n );\n};\n\nexport default FormikDatePicker;\n","import { t } from \"i18next\";\nimport { dynamicArray, isNot } from \"neetocist\";\nimport { dayjs } from \"neetocommons/v2/utils\";\nimport { isEditorEmpty } from \"neetoeditor/v2\";\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 { useState } from \"react\";\n\nimport { Label, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Input, Switch } from \"@bigbinary/neeto-atoms/formik\";\nimport classNames from \"classnames\";\nimport { useFormikContext } from \"formik\";\nimport { ChevronDown, ChevronUp } from \"lucide-react\";\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 as=\"span\"\n className=\"flex min-w-0 flex-grow\"\n variant=\"h5\"\n weight=\"medium\"\n >\n {t(\"neetoMolecules.shareViaEmail.advancedProperties\")}\n </Typography>\n {isAdvancedPropertiesVisible ? (\n <ChevronUp className=\"flex-shrink-0\" size={20} />\n ) : (\n <ChevronDown 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-testid=\"send-later-switch\"\n name=\"isSendLaterEnabled\"\n />\n <Typography\n as=\"span\"\n className=\"leading-normal\"\n data-testid=\"send-later-label\"\n variant=\"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-testid=\"email-share-date-input\"\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/v2\";\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-testid=\"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 { Input, ActionBlock } from \"@bigbinary/neeto-atoms/formik\";\nimport { useFormikContext } from \"formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport AdvancedProperties from \"./AdvancedProperties\";\nimport EmailBody from \"./EmailBodyEditor\";\n\nimport SendToFields from \"../SendToFields\";\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=\"flex flex-col gap-y-6\">\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=\"border-border 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=\"bg-background sticky bottom-0 z-10 mt-6 py-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 { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Form } from \"@bigbinary/neeto-atoms/formik\";\nimport { ArrowLeft } from \"lucide-react\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport EmailForm from \"./Form\";\nimport { emailFormValidationSchema, generateInitialValues } from \"./utils\";\n\nimport EmailPreview from \"../EmailPreview\";\nimport MobilePreviewHeader from \"../MobilePreviewHeader\";\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=\"w-full\">\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 md:h-[calc(100dvh-4rem)] md:grid-cols-12\">\n <div\n className=\"col-span-1 p-6 pb-0 md:col-span-6 md:h-full md:overflow-y-auto lg:col-span-5\"\n data-testid=\"share-via-email-frame-wrapper\"\n >\n {backToUrl && (\n <Button\n className=\"mb-4 rtl:[&_svg]:scale-x-[-1]\"\n data-testid=\"back-to-url-button\"\n icon={ArrowLeft}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.shareViaEmail.backToShare\")}\n size=\"sm\"\n to={backToUrl}\n variant=\"link\"\n />\n )}\n <div className=\"mb-6\">\n <Typography\n className=\"mb-0.5 leading-normal break-words\"\n data-testid=\"share-via-email-heading\"\n variant=\"h2\"\n weight=\"semibold\"\n >\n {shareViaEmailTitle}\n </Typography>\n {description && (\n <Typography\n className=\"text-foreground leading-normal\"\n data-testid=\"share-via-email-sub-heading\"\n variant=\"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 <MobilePreviewHeader className=\"col-span-1 md:hidden\" />\n <div className=\"bg-muted col-span-1 p-6 py-10 md:col-span-6 md:h-full md:overflow-y-auto lg:col-span-7\">\n <EmailPreview\n actionButtonText={values.actionButtonText}\n body={values.emailBody}\n subject={values.emailSubject}\n to={sendToEmails(values.notifyEmails)}\n />\n </div>\n </div>\n )}\n </Form>\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","FormikDatePicker","_ref","name","disabledDate","dataTestId","props","_objectWithoutProperties","_excluded","_useField","useField","_useField2","_slicedToArray","field","meta","_useField2$","setValue","setTouched","_jsx","className","children","DatePicker","_objectSpread","showTime","error","timeFormat","value","onBlur","touched","onChange","date","isPastDate","dayjs","isBefore","subtract","generateInitialValues","defaultValues","emailFormValidationSchema","disableReplyTo","yup","object","shape","string","required","t","test","isEditorEmpty","trim","email","array","min","emails","every","prop","when","is","then","AdvancedProperties","showSendFromField","_useTranslation","useTranslation","_useFormikContext","useFormikContext","values","_useState","useState","_useState2","isAdvancedPropertiesVisible","setIsAdvancedPropertiesVisible","toggleAdvancedOptions","not","_jsxs","type","onClick","Typography","as","variant","weight","ChevronUp","size","ChevronDown","_Fragment","Label","Switch","autoFocus","Input","label","classNames","EmailBody","forwardRef","ref","id","showVideoEmbedInEditor","FormikEditor","addons","concat","_toConsumableArray","displayName","Form","initialValues","editorRef","useRef","handleReset","current","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","ArrowLeft","iconPosition","to","EmailForm","MobilePreviewHeader","EmailPreview","body","subject"],"mappings":"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"}
|
|
@@ -149,12 +149,10 @@ var ExpiryNotice = function ExpiryNotice(_ref) {
|
|
|
149
149
|
}
|
|
150
150
|
return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Typography, {
|
|
151
151
|
as: "span",
|
|
152
|
+
className: "ms-1",
|
|
153
|
+
color: daysBeforeExpiry <= 1 ? "destructive" : "muted",
|
|
152
154
|
"data-testid": "expiry-notice",
|
|
153
155
|
variant: "body3",
|
|
154
|
-
className: classnames("ms-1", {
|
|
155
|
-
"text-destructive": daysBeforeExpiry <= 1,
|
|
156
|
-
"text-muted-foreground": daysBeforeExpiry > 1
|
|
157
|
-
}),
|
|
158
156
|
children: notice
|
|
159
157
|
});
|
|
160
158
|
};
|
|
@@ -337,9 +335,10 @@ var EditURL = function EditURL(_ref) {
|
|
|
337
335
|
},
|
|
338
336
|
children: function children() {
|
|
339
337
|
return /*#__PURE__*/jsxRuntime.jsxs(formik.Form, {
|
|
340
|
-
|
|
338
|
+
className: "flex min-h-0 flex-1 flex-col",
|
|
339
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Sheet.Body, {
|
|
341
340
|
className: "flex flex-col gap-y-6",
|
|
342
|
-
children:
|
|
341
|
+
children: /*#__PURE__*/jsxRuntime.jsx(formik.Field, {
|
|
343
342
|
name: "path",
|
|
344
343
|
children: function children(_ref3) {
|
|
345
344
|
var field = _ref3.field,
|
|
@@ -354,16 +353,14 @@ var EditURL = function EditURL(_ref) {
|
|
|
354
353
|
prefix: displayedPrefix,
|
|
355
354
|
ref: setInputRef,
|
|
356
355
|
value: field.value,
|
|
356
|
+
helpText: t("neetoMolecules.shareViaLink.editUrl.description"),
|
|
357
357
|
onBlur: field.onBlur,
|
|
358
358
|
onChange: function onChange(event) {
|
|
359
359
|
return form.setFieldValue("path", normalizeEditablePath(event.target.value));
|
|
360
360
|
}
|
|
361
361
|
});
|
|
362
362
|
}
|
|
363
|
-
})
|
|
364
|
-
variant: "body2",
|
|
365
|
-
children: t("neetoMolecules.shareViaLink.editUrl.description")
|
|
366
|
-
})]
|
|
363
|
+
})
|
|
367
364
|
}), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Sheet.Footer, {
|
|
368
365
|
className: "flex items-center gap-x-2",
|
|
369
366
|
children: /*#__PURE__*/jsxRuntime.jsx(formik$1.ActionBlock, {
|
|
@@ -460,7 +457,7 @@ var RegenerateURL = function RegenerateURL(_ref) {
|
|
|
460
457
|
})
|
|
461
458
|
}), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Dialog.Body, {
|
|
462
459
|
children: /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
463
|
-
className: "flex w-full flex-col gap-y-
|
|
460
|
+
className: "flex w-full flex-col gap-y-2",
|
|
464
461
|
children: [regenerateStrategy === "basic" && /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Input, {
|
|
465
462
|
disabled: true,
|
|
466
463
|
label: t("neetoMolecules.shareViaLink.regenerateUrl.inputLabel"),
|
|
@@ -469,6 +466,9 @@ var RegenerateURL = function RegenerateURL(_ref) {
|
|
|
469
466
|
className: "flex flex-row gap-2",
|
|
470
467
|
children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Select, {
|
|
471
468
|
dataTestId: "expires-in-select",
|
|
469
|
+
dropdownProps: {
|
|
470
|
+
className: "min-w-max"
|
|
471
|
+
},
|
|
472
472
|
label: expiresInLabel,
|
|
473
473
|
options: regenerateConfig.expiresInOptions,
|
|
474
474
|
value: selectedExpiresInOption,
|
|
@@ -490,23 +490,23 @@ var RegenerateURL = function RegenerateURL(_ref) {
|
|
|
490
490
|
})
|
|
491
491
|
})]
|
|
492
492
|
}), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Typography, {
|
|
493
|
+
color: "muted",
|
|
493
494
|
variant: "body2",
|
|
494
495
|
children: t("neetoMolecules.shareViaLink.regenerateUrl.description")
|
|
495
496
|
})]
|
|
496
497
|
})
|
|
497
498
|
}), /*#__PURE__*/jsxRuntime.jsxs(neetoAtoms.Dialog.Footer, {
|
|
498
|
-
className: "flex items-center gap-x-2",
|
|
499
499
|
children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
|
|
500
|
+
"data-testid": "regenerate-url-cancel-button",
|
|
501
|
+
variant: "ghost",
|
|
502
|
+
label: t("neetoMolecules.shareViaLink.regenerateUrl.cancelButtonLabel"),
|
|
503
|
+
onClick: onClose
|
|
504
|
+
}), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
|
|
500
505
|
"data-testid": "regenerate-url-confirm-button",
|
|
501
506
|
loading: isLoading,
|
|
502
507
|
disabled: regenerateStrategy === "expiryBased" && !isValidExpiryConfig,
|
|
503
508
|
label: t("neetoMolecules.shareViaLink.regenerateUrl.submitButtonLabel"),
|
|
504
509
|
onClick: onSubmit
|
|
505
|
-
}), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
|
|
506
|
-
"data-testid": "regenerate-url-cancel-button",
|
|
507
|
-
variant: "ghost",
|
|
508
|
-
label: t("neetoMolecules.shareViaLink.regenerateUrl.cancelButtonLabel"),
|
|
509
|
-
onClick: onClose
|
|
510
510
|
})]
|
|
511
511
|
})]
|
|
512
512
|
});
|
|
@@ -544,9 +544,9 @@ var Link = function Link(_ref) {
|
|
|
544
544
|
className: "relative flex min-w-0 flex-grow items-stretch truncate leading-none",
|
|
545
545
|
"data-testid": "nui-input-field",
|
|
546
546
|
children: [/*#__PURE__*/jsxRuntime.jsx("div", {
|
|
547
|
-
className: "border-border bg-muted relative flex min-w-0 flex-grow items-center truncate rounded-
|
|
547
|
+
className: "border-border bg-muted relative flex min-w-0 flex-grow items-center truncate rounded-s-md rounded-e-none border border-e-0 leading-none",
|
|
548
548
|
children: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
|
|
549
|
-
className: "relative min-w-0 flex-grow flex-row justify-start truncate px-2 py-1 leading-none",
|
|
549
|
+
className: "relative min-w-0 flex-grow flex-row justify-start truncate !px-2 py-1 leading-none",
|
|
550
550
|
href: url,
|
|
551
551
|
icon: Link$1,
|
|
552
552
|
iconPosition: "left",
|
|
@@ -555,7 +555,7 @@ var Link = function Link(_ref) {
|
|
|
555
555
|
variant: "link"
|
|
556
556
|
})
|
|
557
557
|
}), /*#__PURE__*/jsxRuntime.jsx(v2_CopyToClipboardButton, {
|
|
558
|
-
className: "rounded-
|
|
558
|
+
className: "rounded-s-none",
|
|
559
559
|
"data-testid": "link-copy-button",
|
|
560
560
|
label: !isMobile ? t("neetoMolecules.shareViaLink.copyLink") : null,
|
|
561
561
|
value: url
|
|
@@ -577,6 +577,9 @@ var Link = function Link(_ref) {
|
|
|
577
577
|
}
|
|
578
578
|
}), isDropdownEnabled && /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
579
579
|
children: [/*#__PURE__*/jsxRuntime.jsx(v2_MoreDropdown, {
|
|
580
|
+
dropdownProps: {
|
|
581
|
+
className: "w-max"
|
|
582
|
+
},
|
|
580
583
|
menuItems: [{
|
|
581
584
|
isVisible: enabledOptions.regenerate || neetoCist.isPresent(enabledOptions.regenerate),
|
|
582
585
|
"data-testid": "regenerate-url-button",
|
|
@@ -634,7 +637,7 @@ var Card = function Card(_ref) {
|
|
|
634
637
|
var Component = neetoCist.isPresent(link) ? reactRouterDom.Link : "div";
|
|
635
638
|
return /*#__PURE__*/jsxRuntime.jsxs(Component, _objectSpread(_objectSpread({
|
|
636
639
|
onClick: onClick,
|
|
637
|
-
className: "border-border hover:border-primary flex cursor-pointer flex-col gap-3 rounded-lg border p-3 transition-all duration-300",
|
|
640
|
+
className: "border-border outline-background hover:border-primary hover:outline-primary flex cursor-pointer flex-col gap-3 rounded-lg border p-3 outline outline-1 transition-all duration-300",
|
|
638
641
|
to: link
|
|
639
642
|
}, otherProps), {}, {
|
|
640
643
|
children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
@@ -645,13 +648,14 @@ var Card = function Card(_ref) {
|
|
|
645
648
|
}), /*#__PURE__*/jsxRuntime.jsxs(neetoAtoms.Typography, {
|
|
646
649
|
className: "min-w-0 flex-grow break-words",
|
|
647
650
|
"data-testid": "share-card-title",
|
|
648
|
-
variant: "
|
|
651
|
+
variant: "h6",
|
|
649
652
|
children: [title, helpPopoverProps && /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
650
653
|
children: [" ", /*#__PURE__*/jsxRuntime.jsx(v2_HelpPopover, _objectSpread({}, helpPopoverProps))]
|
|
651
654
|
})]
|
|
652
655
|
})]
|
|
653
656
|
}), description && /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Typography, {
|
|
654
657
|
className: "break-words",
|
|
658
|
+
color: "muted",
|
|
655
659
|
"data-testid": "share-card-description",
|
|
656
660
|
variant: "body2",
|
|
657
661
|
children: description
|
|
@@ -760,7 +764,7 @@ var MainPanel = function MainPanel(_ref) {
|
|
|
760
764
|
className: "mx-auto w-full max-w-5xl py-10",
|
|
761
765
|
children: [customTopContent, /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Typography, {
|
|
762
766
|
"data-testid": "share-your-meeting-heading",
|
|
763
|
-
variant: "
|
|
767
|
+
variant: "h4",
|
|
764
768
|
className: classnames({
|
|
765
769
|
"mb-2": neetoCist.isPresent(description),
|
|
766
770
|
"mb-6": !neetoCist.isPresent(description)
|
|
@@ -770,6 +774,7 @@ var MainPanel = function MainPanel(_ref) {
|
|
|
770
774
|
})
|
|
771
775
|
}), description && /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Typography, {
|
|
772
776
|
className: "mb-6",
|
|
777
|
+
color: "muted",
|
|
773
778
|
"data-testid": "share-your-meeting-heading",
|
|
774
779
|
variant: "body1",
|
|
775
780
|
children: description
|
|
@@ -837,7 +842,7 @@ var QRCode = function QRCode(_ref) {
|
|
|
837
842
|
return /*#__PURE__*/jsxRuntime.jsxs(v2_Container, {
|
|
838
843
|
className: "py-8",
|
|
839
844
|
children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
|
|
840
|
-
className: "mb-4",
|
|
845
|
+
className: "mb-4 rtl:[&_svg]:scale-x-[-1]",
|
|
841
846
|
"data-testid": "back-button",
|
|
842
847
|
icon: arrowLeft.ArrowLeft,
|
|
843
848
|
iconPosition: "left",
|
|
@@ -891,7 +896,7 @@ var SocialMedia = function SocialMedia(_ref) {
|
|
|
891
896
|
return /*#__PURE__*/jsxRuntime.jsxs(v2_Container, {
|
|
892
897
|
className: "py-8",
|
|
893
898
|
children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
|
|
894
|
-
className: "mb-4",
|
|
899
|
+
className: "mb-4 rtl:[&_svg]:scale-x-[-1]",
|
|
895
900
|
"data-testid": "back-button",
|
|
896
901
|
icon: arrowLeft.ArrowLeft,
|
|
897
902
|
iconPosition: "left",
|