@bigbinary/neeto-molecules 4.0.10 → 4.0.12
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/Builder.js +5 -5
- package/dist/Builder.js.map +1 -1
- package/dist/CalendarView.js +2 -2
- package/dist/CalendarView.js.map +1 -1
- package/dist/ConfirmationModal.js +2 -2
- package/dist/ConfirmationModal.js.map +1 -1
- package/dist/EmailForm.js +28 -6
- package/dist/EmailForm.js.map +1 -1
- package/dist/EmailPreview.js +3 -3
- package/dist/EmailPreview.js.map +1 -1
- package/dist/EmojiReactions.js +1 -1
- package/dist/EmojiReactions.js.map +1 -1
- package/dist/Engagements.js +1 -1
- package/dist/Engagements.js.map +1 -1
- package/dist/FinderModal.js +1 -1
- package/dist/FinderModal.js.map +1 -1
- package/dist/IconPicker.js +1 -1
- package/dist/IconPicker.js.map +1 -1
- package/dist/IpRestriction.js +5 -5
- package/dist/IpRestriction.js.map +1 -1
- package/dist/LoginPage.js +2 -2
- package/dist/LoginPage.js.map +1 -1
- package/dist/Metadata.js +3 -3
- package/dist/Metadata.js.map +1 -1
- package/dist/NeetoWidget.js +1 -1
- package/dist/NeetoWidget.js.map +1 -1
- package/dist/Onboarding.js +4 -4
- package/dist/Onboarding.js.map +1 -1
- package/dist/OptionFields.js +1 -1
- package/dist/OptionFields.js.map +1 -1
- package/dist/PhoneNumber.js +1 -1
- package/dist/PhoneNumber.js.map +1 -1
- package/dist/ProductEmbed.js +3 -3
- package/dist/ProductEmbed.js.map +1 -1
- package/dist/PublishBlock.js +3 -3
- package/dist/PublishBlock.js.map +1 -1
- package/dist/PublishYourItem.js +1 -1
- package/dist/PublishYourItem.js.map +1 -1
- package/dist/Schedule.js +4 -4
- package/dist/Schedule.js.map +1 -1
- package/dist/SendToFields.js +5 -5
- package/dist/SendToFields.js.map +1 -1
- package/dist/Settings.js +1 -1
- package/dist/Settings.js.map +1 -1
- package/dist/ShareRecordingPane.js +1 -1
- package/dist/ShareRecordingPane.js.map +1 -1
- package/dist/ShareViaEmail.js +1 -1
- package/dist/ShareViaEmail.js.map +1 -1
- package/dist/ShareViaLink.js +8 -8
- package/dist/ShareViaLink.js.map +1 -1
- package/dist/Taxonomy.js +2 -2
- package/dist/Taxonomy.js.map +1 -1
- package/dist/TimezoneMismatchModal.js +2 -2
- package/dist/TimezoneMismatchModal.js.map +1 -1
- package/dist/ToggleFeatureCard.js +2 -2
- package/dist/ToggleFeatureCard.js.map +1 -1
- package/dist/VersionHistory.js +1 -1
- package/dist/VersionHistory.js.map +1 -1
- package/dist/cjs/Builder.js +5 -5
- package/dist/cjs/Builder.js.map +1 -1
- package/dist/cjs/CalendarView.js +2 -2
- package/dist/cjs/CalendarView.js.map +1 -1
- package/dist/cjs/ConfirmationModal.js +2 -2
- package/dist/cjs/ConfirmationModal.js.map +1 -1
- package/dist/cjs/EmailForm.js +28 -6
- package/dist/cjs/EmailForm.js.map +1 -1
- package/dist/cjs/EmailPreview.js +3 -3
- package/dist/cjs/EmailPreview.js.map +1 -1
- package/dist/cjs/EmojiReactions.js +1 -1
- package/dist/cjs/EmojiReactions.js.map +1 -1
- package/dist/cjs/Engagements.js +1 -1
- package/dist/cjs/Engagements.js.map +1 -1
- package/dist/cjs/FinderModal.js +1 -1
- package/dist/cjs/FinderModal.js.map +1 -1
- package/dist/cjs/IconPicker.js +1 -1
- package/dist/cjs/IconPicker.js.map +1 -1
- package/dist/cjs/IpRestriction.js +5 -5
- package/dist/cjs/IpRestriction.js.map +1 -1
- package/dist/cjs/LoginPage.js +2 -2
- package/dist/cjs/LoginPage.js.map +1 -1
- package/dist/cjs/Metadata.js +3 -3
- package/dist/cjs/Metadata.js.map +1 -1
- package/dist/cjs/NeetoWidget.js +1 -1
- package/dist/cjs/NeetoWidget.js.map +1 -1
- package/dist/cjs/Onboarding.js +4 -4
- package/dist/cjs/Onboarding.js.map +1 -1
- package/dist/cjs/OptionFields.js +1 -1
- package/dist/cjs/OptionFields.js.map +1 -1
- package/dist/cjs/PhoneNumber.js +1 -1
- package/dist/cjs/PhoneNumber.js.map +1 -1
- package/dist/cjs/ProductEmbed.js +3 -3
- package/dist/cjs/ProductEmbed.js.map +1 -1
- package/dist/cjs/PublishBlock.js +3 -3
- package/dist/cjs/PublishBlock.js.map +1 -1
- package/dist/cjs/PublishYourItem.js +1 -1
- package/dist/cjs/PublishYourItem.js.map +1 -1
- package/dist/cjs/Schedule.js +4 -4
- package/dist/cjs/Schedule.js.map +1 -1
- package/dist/cjs/SendToFields.js +5 -5
- package/dist/cjs/SendToFields.js.map +1 -1
- package/dist/cjs/Settings.js +1 -1
- package/dist/cjs/Settings.js.map +1 -1
- package/dist/cjs/ShareRecordingPane.js +1 -1
- package/dist/cjs/ShareRecordingPane.js.map +1 -1
- package/dist/cjs/ShareViaEmail.js +1 -1
- package/dist/cjs/ShareViaEmail.js.map +1 -1
- package/dist/cjs/ShareViaLink.js +8 -8
- package/dist/cjs/ShareViaLink.js.map +1 -1
- package/dist/cjs/Taxonomy.js +2 -2
- package/dist/cjs/Taxonomy.js.map +1 -1
- package/dist/cjs/TimezoneMismatchModal.js +2 -2
- package/dist/cjs/TimezoneMismatchModal.js.map +1 -1
- package/dist/cjs/ToggleFeatureCard.js +2 -2
- package/dist/cjs/ToggleFeatureCard.js.map +1 -1
- package/dist/cjs/VersionHistory.js +1 -1
- package/dist/cjs/VersionHistory.js.map +1 -1
- package/package.json +1 -1
- package/types/EmailForm.d.ts +2 -0
package/dist/Settings.js
CHANGED
|
@@ -56,7 +56,7 @@ var Item = function Item(_ref) {
|
|
|
56
56
|
otherProps = _objectWithoutProperties(_ref, _excluded$1);
|
|
57
57
|
var commonProps = _objectSpread$4({
|
|
58
58
|
"data-cy": dataCy,
|
|
59
|
-
className: classnames("neeto-ui-rounded-lg neeto-ui-shadow-xs neeto-ui-border-gray-300 translate flex cursor-pointer flex-col
|
|
59
|
+
className: classnames("neeto-ui-rounded-lg neeto-ui-shadow-xs neeto-ui-border-gray-300 translate flex cursor-pointer flex-col gap-y-4 border p-6 no-underline outline-none transition-transform duration-300 ease-in-out hover:-translate-y-1", className)
|
|
60
60
|
}, omit(UNSUPPORTED_LINK_PROPS, otherProps));
|
|
61
61
|
var LinkElement = href ? "a" : Link;
|
|
62
62
|
var linkProps = href ? _objectSpread$4({
|
package/dist/Settings.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Settings.js","sources":["../src/components/Settings/constants.js","../src/components/Settings/Item.jsx","../src/components/Settings/IntegrationItem.jsx","../src/components/Settings/Category.jsx","../src/components/Settings/utils.js","../src/components/Settings/index.jsx"],"sourcesContent":["export const UNSUPPORTED_LINK_PROPS = [\"staticContext\", \"tReady\"];\n","import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Typography } from \"neetoui\";\nimport { omit } from \"ramda\";\nimport { withRouter, Link } from \"react-router-dom\";\n\nimport { UNSUPPORTED_LINK_PROPS } from \"./constants\";\nimport \"./settings.scss\";\n\nconst Item = ({\n label,\n description,\n icon: Icon = null,\n path,\n href,\n dataCy,\n className = \"\",\n children,\n ...otherProps\n}) => {\n const commonProps = {\n \"data-cy\": dataCy,\n className: classnames(\n \"neeto-ui-rounded-lg neeto-ui-shadow-xs neeto-ui-border-gray-300 translate flex cursor-pointer flex-col space-y-4 border p-6 no-underline outline-none transition-transform duration-300 ease-in-out hover:-translate-y-1\",\n className\n ),\n ...omit(UNSUPPORTED_LINK_PROPS, otherProps),\n };\n\n const LinkElement = href ? \"a\" : Link;\n const linkProps = href\n ? { href, ...commonProps }\n : { to: path, ...commonProps };\n\n return (\n <LinkElement {...linkProps}>\n <div\n className=\"neeto-molecules-settings-item\"\n data-cy={`settings-item-${joinHyphenCase(label)}`}\n data-testid={`settings-item-${joinHyphenCase(label)}`}\n >\n <div className=\"mb-2 flex items-center gap-4\">\n {Icon && <Icon className=\"neeto-ui-text-gray-600\" size={32} />}\n <Typography\n data-cy=\"settings-item-heading\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n </div>\n <Typography data-cy=\"settings-item-description\" style=\"body2\">\n {description}\n </Typography>\n </div>\n {children && (\n <div className=\"neeto-ui-border-gray-300 border-t pt-3\">{children}</div>\n )}\n </LinkElement>\n );\n};\n\nexport default memo(withRouter(Item));\n","import { memo } from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Check } from \"neetoicons\";\nimport { Tag } from \"neetoui\";\n\nimport Item from \"./Item\";\n\nconst IntegrationItem = withT(\n ({ t, isConnected, icon, description, label, path, ...otherProps }) => (\n <Item\n {...{ description, icon, label, path, ...otherProps }}\n dataCy={`${hyphenate(label).replace(/\\./g, \"-\")}-integration-card`}\n >\n {isConnected && (\n <Tag\n className=\"flex-row-reverse\"\n data-cy=\"integration-status-tag\"\n icon={Check}\n label={t(\"neetoMolecules.integrationCard.connected\")}\n style=\"success\"\n />\n )}\n </Item>\n )\n);\n\nexport default memo(IntegrationItem);\n","import classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport IntegrationItem from \"./IntegrationItem\";\nimport Item from \"./Item\";\n\nconst Category = ({ items, label, id, isIntegration }) => {\n const SettingsCard = isIntegration ? IntegrationItem : Item;\n\n const isLabelPresent = isPresent(label);\n\n return (\n <div\n {...{ id }}\n className={classNames(\"flex flex-col\", { \"mb-7\": isLabelPresent })}\n >\n {isLabelPresent && (\n <Typography\n className=\"mb-6 mt-2\"\n component=\"h2\"\n data-cy=\"settings-category-heading\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n )}\n <div className=\"grid grid-cols-1 gap-3 py-1 md:grid-cols-2 lg:grid-cols-2 lg:gap-6 xl:grid-cols-3 2xl:grid-cols-4\">\n {items.map(item => (\n <SettingsCard key={item.label} {...item} />\n ))}\n </div>\n </div>\n );\n};\n\nexport default Category;\n","import { filterBy, isNotEmpty } from \"neetocist\";\n\nconst isTextMatching = (label, searchTerm) =>\n label.toLowerCase().includes(searchTerm.trim().toLowerCase());\n\nexport const scrollIntoSettingCategory = activeCategory => {\n document.getElementById(activeCategory)?.scrollIntoView({\n behavior: \"smooth\",\n });\n};\n\nexport const filterCategories = ({ categories = [], searchTerm = \"\" }) => {\n const isSearchTermBlank = !searchTerm.trim();\n\n const filteredCategories = isSearchTermBlank\n ? categories\n : categories.map(category => ({\n ...category,\n items: filterBy(\n ({ label, description }) =>\n isTextMatching(label, searchTerm) ||\n isTextMatching(description, searchTerm),\n category.items\n ),\n }));\n\n return filterBy({ items: isNotEmpty }, filteredCategories);\n};\n","import { useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport useQueryParams from \"neetocommons/react-utils/useQueryParams\";\nimport { NoData } from \"neetoui\";\nimport propTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Header from \"components/Header\";\n\nimport Category from \"./Category\";\nimport { filterCategories, scrollIntoSettingCategory } from \"./utils\";\n\nconst Settings = ({\n isTitleHidden = false,\n isSearchHidden = false,\n title,\n headerProps = {},\n categories = [],\n className = \"\",\n}) => {\n const { t } = useTranslation();\n\n const { category: categoryParam, searchTerm = \"\" } = useQueryParams();\n\n const filteredCategories = filterCategories({ categories, searchTerm });\n\n const isHeaderVisible = !isSearchHidden || !isTitleHidden;\n\n const headerTitle = title ?? t(\"neetoMolecules.settingsPage.title\");\n\n useEffect(() => {\n scrollIntoSettingCategory(categoryParam);\n }, [categoryParam]);\n\n return (\n <div\n className={classNames(\"neeto-molecules-container\", className, {\n \"h-auto overflow-y-auto\": isTitleHidden,\n })}\n >\n {isHeaderVisible && (\n <Header\n className={classNames({ \"min-h-0 pb-4 pt-8\": isTitleHidden })}\n title={!isTitleHidden && headerTitle}\n searchProps={\n isSearchHidden\n ? null\n : {\n className: \"w-72\",\n placeholder: t(\n \"neetoMolecules.settingsPage.placeholder.search\"\n ),\n }\n }\n {...headerProps}\n />\n )}\n {isEmpty(filteredCategories) ? (\n <div\n className=\"flex h-full w-full flex-grow items-center justify-center\"\n data-testid=\"settings-no-data\"\n >\n <NoData title={t(\"neetoMolecules.settingsPage.noData\")} />\n </div>\n ) : (\n <div className=\"w-full\">\n {filteredCategories.map(({ id, label, items, isIntegration }) => (\n <Category {...{ id, isIntegration, items, label }} key={id} />\n ))}\n </div>\n )}\n </div>\n );\n};\n\nSettings.propTypes = {\n /**\n * Whether to hide the title or not.\n */\n isTitleHidden: propTypes.bool,\n /**\n * This can be used to customize the title.\n */\n title: propTypes.string,\n /**\n * Whether to hide the search bar or not.\n */\n isSearchHidden: propTypes.bool,\n /**\n * An array of setting categories to be displayed.\n */\n categories: propTypes.array,\n /**\n * Additional classes to be added to the container.\n */\n className: propTypes.string,\n /**\n * Props to be passed to the header component.\n */\n headerProps: propTypes.object,\n};\n\nexport default Settings;\n"],"names":["UNSUPPORTED_LINK_PROPS","Item","_ref","label","description","_ref$icon","icon","Icon","path","href","dataCy","_ref$className","className","children","otherProps","_objectWithoutProperties","_excluded","commonProps","_objectSpread","classnames","omit","LinkElement","Link","linkProps","to","_jsxs","concat","joinHyphenCase","_jsx","size","Typography","style","weight","memo","withRouter","IntegrationItem","withT","t","isConnected","hyphenate","replace","Tag","Check","Category","items","id","isIntegration","SettingsCard","isLabelPresent","isPresent","classNames","component","map","item","isTextMatching","searchTerm","toLowerCase","includes","trim","scrollIntoSettingCategory","activeCategory","_document$getElementB","document","getElementById","scrollIntoView","behavior","filterCategories","_ref$categories","categories","_ref$searchTerm","isSearchTermBlank","filteredCategories","category","filterBy","_ref2","isNotEmpty","Settings","_ref$isTitleHidden","isTitleHidden","_ref$isSearchHidden","isSearchHidden","title","_ref$headerProps","headerProps","_useTranslation","useTranslation","_useQueryParams","useQueryParams","categoryParam","_useQueryParams$searc","isHeaderVisible","headerTitle","useEffect","Header","searchProps","placeholder","isEmpty","NoData","_createElement","key"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Settings.js","sources":["../src/components/Settings/constants.js","../src/components/Settings/Item.jsx","../src/components/Settings/IntegrationItem.jsx","../src/components/Settings/Category.jsx","../src/components/Settings/utils.js","../src/components/Settings/index.jsx"],"sourcesContent":["export const UNSUPPORTED_LINK_PROPS = [\"staticContext\", \"tReady\"];\n","import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Typography } from \"neetoui\";\nimport { omit } from \"ramda\";\nimport { withRouter, Link } from \"react-router-dom\";\n\nimport { UNSUPPORTED_LINK_PROPS } from \"./constants\";\nimport \"./settings.scss\";\n\nconst Item = ({\n label,\n description,\n icon: Icon = null,\n path,\n href,\n dataCy,\n className = \"\",\n children,\n ...otherProps\n}) => {\n const commonProps = {\n \"data-cy\": dataCy,\n className: classnames(\n \"neeto-ui-rounded-lg neeto-ui-shadow-xs neeto-ui-border-gray-300 translate flex cursor-pointer flex-col gap-y-4 border p-6 no-underline outline-none transition-transform duration-300 ease-in-out hover:-translate-y-1\",\n className\n ),\n ...omit(UNSUPPORTED_LINK_PROPS, otherProps),\n };\n\n const LinkElement = href ? \"a\" : Link;\n const linkProps = href\n ? { href, ...commonProps }\n : { to: path, ...commonProps };\n\n return (\n <LinkElement {...linkProps}>\n <div\n className=\"neeto-molecules-settings-item\"\n data-cy={`settings-item-${joinHyphenCase(label)}`}\n data-testid={`settings-item-${joinHyphenCase(label)}`}\n >\n <div className=\"mb-2 flex items-center gap-4\">\n {Icon && <Icon className=\"neeto-ui-text-gray-600\" size={32} />}\n <Typography\n data-cy=\"settings-item-heading\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n </div>\n <Typography data-cy=\"settings-item-description\" style=\"body2\">\n {description}\n </Typography>\n </div>\n {children && (\n <div className=\"neeto-ui-border-gray-300 border-t pt-3\">{children}</div>\n )}\n </LinkElement>\n );\n};\n\nexport default memo(withRouter(Item));\n","import { memo } from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Check } from \"neetoicons\";\nimport { Tag } from \"neetoui\";\n\nimport Item from \"./Item\";\n\nconst IntegrationItem = withT(\n ({ t, isConnected, icon, description, label, path, ...otherProps }) => (\n <Item\n {...{ description, icon, label, path, ...otherProps }}\n dataCy={`${hyphenate(label).replace(/\\./g, \"-\")}-integration-card`}\n >\n {isConnected && (\n <Tag\n className=\"flex-row-reverse\"\n data-cy=\"integration-status-tag\"\n icon={Check}\n label={t(\"neetoMolecules.integrationCard.connected\")}\n style=\"success\"\n />\n )}\n </Item>\n )\n);\n\nexport default memo(IntegrationItem);\n","import classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport IntegrationItem from \"./IntegrationItem\";\nimport Item from \"./Item\";\n\nconst Category = ({ items, label, id, isIntegration }) => {\n const SettingsCard = isIntegration ? IntegrationItem : Item;\n\n const isLabelPresent = isPresent(label);\n\n return (\n <div\n {...{ id }}\n className={classNames(\"flex flex-col\", { \"mb-7\": isLabelPresent })}\n >\n {isLabelPresent && (\n <Typography\n className=\"mb-6 mt-2\"\n component=\"h2\"\n data-cy=\"settings-category-heading\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n )}\n <div className=\"grid grid-cols-1 gap-3 py-1 md:grid-cols-2 lg:grid-cols-2 lg:gap-6 xl:grid-cols-3 2xl:grid-cols-4\">\n {items.map(item => (\n <SettingsCard key={item.label} {...item} />\n ))}\n </div>\n </div>\n );\n};\n\nexport default Category;\n","import { filterBy, isNotEmpty } from \"neetocist\";\n\nconst isTextMatching = (label, searchTerm) =>\n label.toLowerCase().includes(searchTerm.trim().toLowerCase());\n\nexport const scrollIntoSettingCategory = activeCategory => {\n document.getElementById(activeCategory)?.scrollIntoView({\n behavior: \"smooth\",\n });\n};\n\nexport const filterCategories = ({ categories = [], searchTerm = \"\" }) => {\n const isSearchTermBlank = !searchTerm.trim();\n\n const filteredCategories = isSearchTermBlank\n ? categories\n : categories.map(category => ({\n ...category,\n items: filterBy(\n ({ label, description }) =>\n isTextMatching(label, searchTerm) ||\n isTextMatching(description, searchTerm),\n category.items\n ),\n }));\n\n return filterBy({ items: isNotEmpty }, filteredCategories);\n};\n","import { useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport useQueryParams from \"neetocommons/react-utils/useQueryParams\";\nimport { NoData } from \"neetoui\";\nimport propTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Header from \"components/Header\";\n\nimport Category from \"./Category\";\nimport { filterCategories, scrollIntoSettingCategory } from \"./utils\";\n\nconst Settings = ({\n isTitleHidden = false,\n isSearchHidden = false,\n title,\n headerProps = {},\n categories = [],\n className = \"\",\n}) => {\n const { t } = useTranslation();\n\n const { category: categoryParam, searchTerm = \"\" } = useQueryParams();\n\n const filteredCategories = filterCategories({ categories, searchTerm });\n\n const isHeaderVisible = !isSearchHidden || !isTitleHidden;\n\n const headerTitle = title ?? t(\"neetoMolecules.settingsPage.title\");\n\n useEffect(() => {\n scrollIntoSettingCategory(categoryParam);\n }, [categoryParam]);\n\n return (\n <div\n className={classNames(\"neeto-molecules-container\", className, {\n \"h-auto overflow-y-auto\": isTitleHidden,\n })}\n >\n {isHeaderVisible && (\n <Header\n className={classNames({ \"min-h-0 pb-4 pt-8\": isTitleHidden })}\n title={!isTitleHidden && headerTitle}\n searchProps={\n isSearchHidden\n ? null\n : {\n className: \"w-72\",\n placeholder: t(\n \"neetoMolecules.settingsPage.placeholder.search\"\n ),\n }\n }\n {...headerProps}\n />\n )}\n {isEmpty(filteredCategories) ? (\n <div\n className=\"flex h-full w-full flex-grow items-center justify-center\"\n data-testid=\"settings-no-data\"\n >\n <NoData title={t(\"neetoMolecules.settingsPage.noData\")} />\n </div>\n ) : (\n <div className=\"w-full\">\n {filteredCategories.map(({ id, label, items, isIntegration }) => (\n <Category {...{ id, isIntegration, items, label }} key={id} />\n ))}\n </div>\n )}\n </div>\n );\n};\n\nSettings.propTypes = {\n /**\n * Whether to hide the title or not.\n */\n isTitleHidden: propTypes.bool,\n /**\n * This can be used to customize the title.\n */\n title: propTypes.string,\n /**\n * Whether to hide the search bar or not.\n */\n isSearchHidden: propTypes.bool,\n /**\n * An array of setting categories to be displayed.\n */\n categories: propTypes.array,\n /**\n * Additional classes to be added to the container.\n */\n className: propTypes.string,\n /**\n * Props to be passed to the header component.\n */\n headerProps: propTypes.object,\n};\n\nexport default Settings;\n"],"names":["UNSUPPORTED_LINK_PROPS","Item","_ref","label","description","_ref$icon","icon","Icon","path","href","dataCy","_ref$className","className","children","otherProps","_objectWithoutProperties","_excluded","commonProps","_objectSpread","classnames","omit","LinkElement","Link","linkProps","to","_jsxs","concat","joinHyphenCase","_jsx","size","Typography","style","weight","memo","withRouter","IntegrationItem","withT","t","isConnected","hyphenate","replace","Tag","Check","Category","items","id","isIntegration","SettingsCard","isLabelPresent","isPresent","classNames","component","map","item","isTextMatching","searchTerm","toLowerCase","includes","trim","scrollIntoSettingCategory","activeCategory","_document$getElementB","document","getElementById","scrollIntoView","behavior","filterCategories","_ref$categories","categories","_ref$searchTerm","isSearchTermBlank","filteredCategories","category","filterBy","_ref2","isNotEmpty","Settings","_ref$isTitleHidden","isTitleHidden","_ref$isSearchHidden","isSearchHidden","title","_ref$headerProps","headerProps","_useTranslation","useTranslation","_useQueryParams","useQueryParams","categoryParam","_useQueryParams$searc","isHeaderVisible","headerTitle","useEffect","Header","searchProps","placeholder","isEmpty","NoData","_createElement","key"],"mappings":"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"}
|
|
@@ -237,7 +237,7 @@ var ShareRecordingPane = function ShareRecordingPane(_ref) {
|
|
|
237
237
|
children: t("neetoMolecules.shareRecording.title")
|
|
238
238
|
})
|
|
239
239
|
}), /*#__PURE__*/jsx(Pane.Body, {
|
|
240
|
-
className: "flex flex-col
|
|
240
|
+
className: "flex flex-col gap-y-2",
|
|
241
241
|
children: isLoading ? /*#__PURE__*/jsx(Spinner, {
|
|
242
242
|
className: "mx-auto"
|
|
243
243
|
}) : /*#__PURE__*/jsx(SharePaneBody, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShareRecordingPane.js","sources":["../src/components/ShareRecordingPane/constants.js","../src/components/ShareRecordingPane/utils.js","../src/components/ShareRecordingPane/SharePaneBody.jsx","../src/components/ShareRecordingPane/index.jsx"],"sourcesContent":["export const ONE_SECOND = 1;\nexport const ONE_MINUTE = 60 * ONE_SECOND;\nexport const ONE_HOUR = 60 * ONE_MINUTE;\n","import { ONE_HOUR, ONE_MINUTE } from \"./constants\";\n\nexport const padZero = (number, length = 2) => {\n let string = String(number);\n const threshold = Math.pow(10, length - 1);\n\n if (number < threshold) {\n while (String(threshold).length > string.length) {\n string = `0${number}`;\n }\n }\n\n return string;\n};\n\nexport const shouldRenderHoursInput = duration => {\n const hours = Math.floor(duration / ONE_HOUR);\n\n return hours > 0;\n};\n\nexport const formatTime = (timeInSeconds, showHours) => {\n const hours = Math.floor(timeInSeconds / ONE_HOUR);\n const minutes = Math.floor((timeInSeconds % ONE_HOUR) / ONE_MINUTE);\n const seconds = timeInSeconds % ONE_MINUTE;\n\n return showHours\n ? `${padZero(hours)}:${padZero(minutes)}:${padZero(seconds)}`\n : `${padZero(minutes)}:${padZero(seconds)}`;\n};\n\nexport const parseTime = timeString => {\n const parts = timeString\n .split(\":\")\n .map(part => (part === \"\" ? NaN : parseInt(part, 10)));\n if (parts.some(isNaN) || parts.length > 3) {\n return 0;\n }\n\n if (parts.length === 1) {\n return parts[0];\n } else if (parts.length === 2) {\n return parts[0] * ONE_MINUTE + parts[1];\n } else if (parts.length === 3) {\n return parts[0] * ONE_HOUR + parts[1] * ONE_MINUTE + parts[2];\n }\n\n return 0;\n};\n\nexport const validateInput = input => {\n const regex = /^[0-9:]{0,8}$/;\n const colons = (input.match(/:/g) || []).length;\n\n return regex.test(input) && colons <= 2;\n};\n","import { useState, useEffect } from \"react\";\n\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Label, Typography, Input, Tooltip, Switch } from \"neetoui\";\nimport { assoc, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\n\nimport {\n formatTime,\n parseTime,\n shouldRenderHoursInput,\n validateInput,\n} from \"./utils\";\n\nconst SharePaneBody = ({\n recordingUrls,\n totalDuration,\n getCurrentTimestamp,\n isOpen,\n preview: Preview,\n enableAutoplayAndMuteFlags,\n}) => {\n const { t } = useTranslation();\n\n const currentTimestamp = getCurrentTimestamp();\n\n const [shareLinks, setShareLinks] = useState([]);\n const [currentPlaybackTime, setCurrentPlaybackTime] =\n useState(currentTimestamp);\n\n const [params, setParams] = useState({\n muted: false,\n autoplay: false,\n });\n\n const { muted, autoplay } = params;\n\n const [rawInput, setRawInput] = useState(\"\");\n\n const showHours = shouldRenderHoursInput(totalDuration);\n\n const handlePlaybackTimestampChange = e => {\n const input = e.target.value;\n if (validateInput(input)) {\n setRawInput(input);\n }\n };\n\n const handleFlagsChange = (key, value) => setParams(assoc(key, value));\n\n const formatAndSetTime = () => {\n let timeInSeconds = parseTime(rawInput);\n if (timeInSeconds > totalDuration) {\n timeInSeconds = totalDuration;\n }\n setCurrentPlaybackTime(timeInSeconds);\n setRawInput(formatTime(timeInSeconds, showHours));\n };\n\n const handleKeyDown = e => {\n if (e.key !== \"Enter\") return;\n formatAndSetTime();\n };\n\n useEffect(() => {\n if (not(isOpen)) return;\n\n setCurrentPlaybackTime(currentTimestamp > 0 ? currentTimestamp : 0);\n setRawInput(\n formatTime(currentTimestamp > 0 ? currentTimestamp : 0, showHours)\n );\n }, [isOpen, showHours, currentTimestamp]);\n\n useEffect(() => {\n const playbackUrls = recordingUrls.map(recordingUrl =>\n buildUrl(recordingUrl, {\n time: currentPlaybackTime,\n muted: muted ? 1 : undefined,\n autoplay: autoplay ? 1 : undefined,\n })\n );\n\n setShareLinks(playbackUrls);\n }, [recordingUrls, currentPlaybackTime, muted, autoplay]);\n\n return (\n <>\n {shareLinks.map((shareLink, index) => (\n <div\n className=\"neeto-ui-bg-gray-100 neeto-ui-rounded-lg mb-2 flex w-full items-center justify-between gap-1 p-2\"\n key={index}\n >\n <Tooltip content={shareLink}>\n <Typography className=\"truncate\" style=\"body2\">\n {shareLink}\n </Typography>\n </Tooltip>\n <CopyToClipboardButton\n className=\"flex-shrink-0\"\n style=\"secondary\"\n value={shareLink}\n />\n </div>\n ))}\n <div className=\"flex items-center gap-x-2\">\n <Label>{t(\"neetoMolecules.shareRecording.checkboxLabel\")}</Label>\n <Input\n className=\"w-40\"\n data-cy=\"time-input\"\n placeholder={showHours ? \"HH:MM:SS\" : \"MM:SS\"}\n value={rawInput}\n onBlur={formatAndSetTime}\n onChange={handlePlaybackTimestampChange}\n onKeyDown={handleKeyDown}\n />\n </div>\n {enableAutoplayAndMuteFlags && (\n <>\n <div className=\"flex items-center gap-x-2\">\n <Switch\n checked={muted}\n data-cy=\"muted-checkbox\"\n id=\"muted\"\n label={t(\"neetoMolecules.shareRecording.muted\")}\n name=\"muted\"\n onChange={e => handleFlagsChange(\"muted\", e.target.checked)}\n />\n </div>\n <div className=\"flex items-center gap-x-2\">\n <Switch\n checked={autoplay}\n data-cy=\"autoplay-checkbox\"\n id=\"autoplay\"\n label={t(\"neetoMolecules.shareRecording.autoplay\")}\n name=\"autoplay\"\n onChange={e => handleFlagsChange(\"autoplay\", e.target.checked)}\n />\n </div>\n </>\n )}\n {Preview && (\n <div className=\"flex flex-col gap-y-2 pt-2\">\n <Label>{t(\"neetoMolecules.shareRecording.preview\")}</Label>\n <Preview {...{ currentPlaybackTime }} />\n </div>\n )}\n </>\n );\n};\n\nexport default SharePaneBody;\n","/* eslint-disable @bigbinary/neeto/no-dumb-components-with-use-translation */\nimport { isNotEmpty } from \"neetocist\";\nimport { Pane, Typography, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SharePaneBody from \"./SharePaneBody\";\n\nconst ShareRecordingPane = ({\n recordingUrl = null,\n recordingUrls = [],\n totalDuration,\n getCurrentTimestamp,\n isOpen,\n onClose,\n isLoading = false,\n preview,\n enableAutoplayAndMuteFlags = false,\n ...otherProps\n}) => {\n const { t } = useTranslation();\n\n const recordingUrlsToShare = isNotEmpty(recordingUrls)\n ? recordingUrls\n : [recordingUrl];\n\n return (\n <Pane\n {...{ isOpen, onClose, ...otherProps }}\n data-cy=\"share-pane\"\n size=\"large\"\n >\n <Pane.Header>\n <Typography style=\"h2\">\n {t(\"neetoMolecules.shareRecording.title\")}\n </Typography>\n </Pane.Header>\n <Pane.Body className=\"flex flex-col space-y-2\">\n {isLoading ? (\n <Spinner className=\"mx-auto\" />\n ) : (\n <SharePaneBody\n {...{\n enableAutoplayAndMuteFlags,\n getCurrentTimestamp,\n isOpen,\n preview,\n totalDuration,\n }}\n recordingUrls={recordingUrlsToShare}\n />\n )}\n </Pane.Body>\n </Pane>\n );\n};\n\nShareRecordingPane.propTypes = {\n /**\n * Recording URL used for building the share link.\n */\n recordingUrl: PropTypes.string,\n /**\n * Recording URLs used for building the share link.\n */\n recordingUrls: PropTypes.array,\n /**\n * Total duration of the content being shared.\n */\n totalDuration: PropTypes.number.isRequired,\n /**\n * A function that returns current playback time of the recorded content in seconds.\n */\n getCurrentTimestamp: PropTypes.func.isRequired,\n /**\n * Boolean indicating whether the pane is open or not.\n */\n isOpen: PropTypes.bool.isRequired,\n /**\n * Function to close the pane.\n */\n onClose: PropTypes.func.isRequired,\n /**\n * Boolean indicating whether content is loading or not.\n */\n isLoading: PropTypes.bool,\n /**\n * Component to render as a preview of the recording.\n */\n preview: PropTypes.elementType,\n};\n\nexport default ShareRecordingPane;\n"],"names":["ONE_SECOND","ONE_MINUTE","ONE_HOUR","padZero","number","length","arguments","undefined","string","String","threshold","Math","pow","concat","shouldRenderHoursInput","duration","hours","floor","formatTime","timeInSeconds","showHours","minutes","seconds","parseTime","timeString","parts","split","map","part","NaN","parseInt","some","isNaN","validateInput","input","regex","colons","match","test","SharePaneBody","_ref","recordingUrls","totalDuration","getCurrentTimestamp","isOpen","Preview","preview","enableAutoplayAndMuteFlags","_useTranslation","useTranslation","t","currentTimestamp","_useState","useState","_useState2","_slicedToArray","shareLinks","setShareLinks","_useState3","_useState4","currentPlaybackTime","setCurrentPlaybackTime","_useState5","muted","autoplay","_useState6","params","setParams","_useState7","_useState8","rawInput","setRawInput","handlePlaybackTimestampChange","e","target","value","handleFlagsChange","key","assoc","formatAndSetTime","handleKeyDown","useEffect","not","playbackUrls","recordingUrl","buildUrl","time","_jsxs","_Fragment","children","shareLink","index","className","_jsx","Tooltip","content","Typography","style","CopyToClipboardButton","Label","Input","placeholder","onBlur","onChange","onKeyDown","Switch","checked","id","label","name","ShareRecordingPane","_ref$recordingUrl","_ref$recordingUrls","onClose","_ref$isLoading","isLoading","_ref$enableAutoplayAn","otherProps","_objectWithoutProperties","_excluded","recordingUrlsToShare","isNotEmpty","Pane","_objectSpread","size","Header","Body","Spinner"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ShareRecordingPane.js","sources":["../src/components/ShareRecordingPane/constants.js","../src/components/ShareRecordingPane/utils.js","../src/components/ShareRecordingPane/SharePaneBody.jsx","../src/components/ShareRecordingPane/index.jsx"],"sourcesContent":["export const ONE_SECOND = 1;\nexport const ONE_MINUTE = 60 * ONE_SECOND;\nexport const ONE_HOUR = 60 * ONE_MINUTE;\n","import { ONE_HOUR, ONE_MINUTE } from \"./constants\";\n\nexport const padZero = (number, length = 2) => {\n let string = String(number);\n const threshold = Math.pow(10, length - 1);\n\n if (number < threshold) {\n while (String(threshold).length > string.length) {\n string = `0${number}`;\n }\n }\n\n return string;\n};\n\nexport const shouldRenderHoursInput = duration => {\n const hours = Math.floor(duration / ONE_HOUR);\n\n return hours > 0;\n};\n\nexport const formatTime = (timeInSeconds, showHours) => {\n const hours = Math.floor(timeInSeconds / ONE_HOUR);\n const minutes = Math.floor((timeInSeconds % ONE_HOUR) / ONE_MINUTE);\n const seconds = timeInSeconds % ONE_MINUTE;\n\n return showHours\n ? `${padZero(hours)}:${padZero(minutes)}:${padZero(seconds)}`\n : `${padZero(minutes)}:${padZero(seconds)}`;\n};\n\nexport const parseTime = timeString => {\n const parts = timeString\n .split(\":\")\n .map(part => (part === \"\" ? NaN : parseInt(part, 10)));\n if (parts.some(isNaN) || parts.length > 3) {\n return 0;\n }\n\n if (parts.length === 1) {\n return parts[0];\n } else if (parts.length === 2) {\n return parts[0] * ONE_MINUTE + parts[1];\n } else if (parts.length === 3) {\n return parts[0] * ONE_HOUR + parts[1] * ONE_MINUTE + parts[2];\n }\n\n return 0;\n};\n\nexport const validateInput = input => {\n const regex = /^[0-9:]{0,8}$/;\n const colons = (input.match(/:/g) || []).length;\n\n return regex.test(input) && colons <= 2;\n};\n","import { useState, useEffect } from \"react\";\n\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Label, Typography, Input, Tooltip, Switch } from \"neetoui\";\nimport { assoc, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\n\nimport {\n formatTime,\n parseTime,\n shouldRenderHoursInput,\n validateInput,\n} from \"./utils\";\n\nconst SharePaneBody = ({\n recordingUrls,\n totalDuration,\n getCurrentTimestamp,\n isOpen,\n preview: Preview,\n enableAutoplayAndMuteFlags,\n}) => {\n const { t } = useTranslation();\n\n const currentTimestamp = getCurrentTimestamp();\n\n const [shareLinks, setShareLinks] = useState([]);\n const [currentPlaybackTime, setCurrentPlaybackTime] =\n useState(currentTimestamp);\n\n const [params, setParams] = useState({\n muted: false,\n autoplay: false,\n });\n\n const { muted, autoplay } = params;\n\n const [rawInput, setRawInput] = useState(\"\");\n\n const showHours = shouldRenderHoursInput(totalDuration);\n\n const handlePlaybackTimestampChange = e => {\n const input = e.target.value;\n if (validateInput(input)) {\n setRawInput(input);\n }\n };\n\n const handleFlagsChange = (key, value) => setParams(assoc(key, value));\n\n const formatAndSetTime = () => {\n let timeInSeconds = parseTime(rawInput);\n if (timeInSeconds > totalDuration) {\n timeInSeconds = totalDuration;\n }\n setCurrentPlaybackTime(timeInSeconds);\n setRawInput(formatTime(timeInSeconds, showHours));\n };\n\n const handleKeyDown = e => {\n if (e.key !== \"Enter\") return;\n formatAndSetTime();\n };\n\n useEffect(() => {\n if (not(isOpen)) return;\n\n setCurrentPlaybackTime(currentTimestamp > 0 ? currentTimestamp : 0);\n setRawInput(\n formatTime(currentTimestamp > 0 ? currentTimestamp : 0, showHours)\n );\n }, [isOpen, showHours, currentTimestamp]);\n\n useEffect(() => {\n const playbackUrls = recordingUrls.map(recordingUrl =>\n buildUrl(recordingUrl, {\n time: currentPlaybackTime,\n muted: muted ? 1 : undefined,\n autoplay: autoplay ? 1 : undefined,\n })\n );\n\n setShareLinks(playbackUrls);\n }, [recordingUrls, currentPlaybackTime, muted, autoplay]);\n\n return (\n <>\n {shareLinks.map((shareLink, index) => (\n <div\n className=\"neeto-ui-bg-gray-100 neeto-ui-rounded-lg mb-2 flex w-full items-center justify-between gap-1 p-2\"\n key={index}\n >\n <Tooltip content={shareLink}>\n <Typography className=\"truncate\" style=\"body2\">\n {shareLink}\n </Typography>\n </Tooltip>\n <CopyToClipboardButton\n className=\"flex-shrink-0\"\n style=\"secondary\"\n value={shareLink}\n />\n </div>\n ))}\n <div className=\"flex items-center gap-x-2\">\n <Label>{t(\"neetoMolecules.shareRecording.checkboxLabel\")}</Label>\n <Input\n className=\"w-40\"\n data-cy=\"time-input\"\n placeholder={showHours ? \"HH:MM:SS\" : \"MM:SS\"}\n value={rawInput}\n onBlur={formatAndSetTime}\n onChange={handlePlaybackTimestampChange}\n onKeyDown={handleKeyDown}\n />\n </div>\n {enableAutoplayAndMuteFlags && (\n <>\n <div className=\"flex items-center gap-x-2\">\n <Switch\n checked={muted}\n data-cy=\"muted-checkbox\"\n id=\"muted\"\n label={t(\"neetoMolecules.shareRecording.muted\")}\n name=\"muted\"\n onChange={e => handleFlagsChange(\"muted\", e.target.checked)}\n />\n </div>\n <div className=\"flex items-center gap-x-2\">\n <Switch\n checked={autoplay}\n data-cy=\"autoplay-checkbox\"\n id=\"autoplay\"\n label={t(\"neetoMolecules.shareRecording.autoplay\")}\n name=\"autoplay\"\n onChange={e => handleFlagsChange(\"autoplay\", e.target.checked)}\n />\n </div>\n </>\n )}\n {Preview && (\n <div className=\"flex flex-col gap-y-2 pt-2\">\n <Label>{t(\"neetoMolecules.shareRecording.preview\")}</Label>\n <Preview {...{ currentPlaybackTime }} />\n </div>\n )}\n </>\n );\n};\n\nexport default SharePaneBody;\n","/* eslint-disable @bigbinary/neeto/no-dumb-components-with-use-translation */\nimport { isNotEmpty } from \"neetocist\";\nimport { Pane, Typography, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SharePaneBody from \"./SharePaneBody\";\n\nconst ShareRecordingPane = ({\n recordingUrl = null,\n recordingUrls = [],\n totalDuration,\n getCurrentTimestamp,\n isOpen,\n onClose,\n isLoading = false,\n preview,\n enableAutoplayAndMuteFlags = false,\n ...otherProps\n}) => {\n const { t } = useTranslation();\n\n const recordingUrlsToShare = isNotEmpty(recordingUrls)\n ? recordingUrls\n : [recordingUrl];\n\n return (\n <Pane\n {...{ isOpen, onClose, ...otherProps }}\n data-cy=\"share-pane\"\n size=\"large\"\n >\n <Pane.Header>\n <Typography style=\"h2\">\n {t(\"neetoMolecules.shareRecording.title\")}\n </Typography>\n </Pane.Header>\n <Pane.Body className=\"flex flex-col gap-y-2\">\n {isLoading ? (\n <Spinner className=\"mx-auto\" />\n ) : (\n <SharePaneBody\n {...{\n enableAutoplayAndMuteFlags,\n getCurrentTimestamp,\n isOpen,\n preview,\n totalDuration,\n }}\n recordingUrls={recordingUrlsToShare}\n />\n )}\n </Pane.Body>\n </Pane>\n );\n};\n\nShareRecordingPane.propTypes = {\n /**\n * Recording URL used for building the share link.\n */\n recordingUrl: PropTypes.string,\n /**\n * Recording URLs used for building the share link.\n */\n recordingUrls: PropTypes.array,\n /**\n * Total duration of the content being shared.\n */\n totalDuration: PropTypes.number.isRequired,\n /**\n * A function that returns current playback time of the recorded content in seconds.\n */\n getCurrentTimestamp: PropTypes.func.isRequired,\n /**\n * Boolean indicating whether the pane is open or not.\n */\n isOpen: PropTypes.bool.isRequired,\n /**\n * Function to close the pane.\n */\n onClose: PropTypes.func.isRequired,\n /**\n * Boolean indicating whether content is loading or not.\n */\n isLoading: PropTypes.bool,\n /**\n * Component to render as a preview of the recording.\n */\n preview: PropTypes.elementType,\n};\n\nexport default ShareRecordingPane;\n"],"names":["ONE_SECOND","ONE_MINUTE","ONE_HOUR","padZero","number","length","arguments","undefined","string","String","threshold","Math","pow","concat","shouldRenderHoursInput","duration","hours","floor","formatTime","timeInSeconds","showHours","minutes","seconds","parseTime","timeString","parts","split","map","part","NaN","parseInt","some","isNaN","validateInput","input","regex","colons","match","test","SharePaneBody","_ref","recordingUrls","totalDuration","getCurrentTimestamp","isOpen","Preview","preview","enableAutoplayAndMuteFlags","_useTranslation","useTranslation","t","currentTimestamp","_useState","useState","_useState2","_slicedToArray","shareLinks","setShareLinks","_useState3","_useState4","currentPlaybackTime","setCurrentPlaybackTime","_useState5","muted","autoplay","_useState6","params","setParams","_useState7","_useState8","rawInput","setRawInput","handlePlaybackTimestampChange","e","target","value","handleFlagsChange","key","assoc","formatAndSetTime","handleKeyDown","useEffect","not","playbackUrls","recordingUrl","buildUrl","time","_jsxs","_Fragment","children","shareLink","index","className","_jsx","Tooltip","content","Typography","style","CopyToClipboardButton","Label","Input","placeholder","onBlur","onChange","onKeyDown","Switch","checked","id","label","name","ShareRecordingPane","_ref$recordingUrl","_ref$recordingUrls","onClose","_ref$isLoading","isLoading","_ref$enableAutoplayAn","otherProps","_objectWithoutProperties","_excluded","recordingUrlsToShare","isNotEmpty","Pane","_objectSpread","size","Header","Body","Spinner"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAO,IAAMA,UAAU,GAAG,CAAC,CAAA;AACpB,IAAMC,UAAU,GAAG,EAAE,GAAGD,UAAU,CAAA;AAClC,IAAME,QAAQ,GAAG,EAAE,GAAGD,UAAU;;ACAhC,IAAME,OAAO,GAAG,SAAVA,OAAOA,CAAIC,MAAM,EAAiB;AAAA,EAAA,IAAfC,MAAM,GAAAC,SAAA,CAAAD,MAAA,GAAA,CAAA,IAAAC,SAAA,CAAA,CAAA,CAAA,KAAAC,SAAA,GAAAD,SAAA,CAAA,CAAA,CAAA,GAAG,CAAC,CAAA;AACxC,EAAA,IAAIE,MAAM,GAAGC,MAAM,CAACL,MAAM,CAAC,CAAA;EAC3B,IAAMM,SAAS,GAAGC,IAAI,CAACC,GAAG,CAAC,EAAE,EAAEP,MAAM,GAAG,CAAC,CAAC,CAAA;EAE1C,IAAID,MAAM,GAAGM,SAAS,EAAE;IACtB,OAAOD,MAAM,CAACC,SAAS,CAAC,CAACL,MAAM,GAAGG,MAAM,CAACH,MAAM,EAAE;AAC/CG,MAAAA,MAAM,GAAAK,GAAAA,CAAAA,MAAA,CAAOT,MAAM,CAAE,CAAA;AACvB,KAAA;AACF,GAAA;AAEA,EAAA,OAAOI,MAAM,CAAA;AACf,CAAC,CAAA;AAEM,IAAMM,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAGC,QAAQ,EAAI;EAChD,IAAMC,KAAK,GAAGL,IAAI,CAACM,KAAK,CAACF,QAAQ,GAAGb,QAAQ,CAAC,CAAA;EAE7C,OAAOc,KAAK,GAAG,CAAC,CAAA;AAClB,CAAC,CAAA;AAEM,IAAME,UAAU,GAAG,SAAbA,UAAUA,CAAIC,aAAa,EAAEC,SAAS,EAAK;EACtD,IAAMJ,KAAK,GAAGL,IAAI,CAACM,KAAK,CAACE,aAAa,GAAGjB,QAAQ,CAAC,CAAA;EAClD,IAAMmB,OAAO,GAAGV,IAAI,CAACM,KAAK,CAAEE,aAAa,GAAGjB,QAAQ,GAAID,UAAU,CAAC,CAAA;AACnE,EAAA,IAAMqB,OAAO,GAAGH,aAAa,GAAGlB,UAAU,CAAA;AAE1C,EAAA,OAAOmB,SAAS,GAAAP,EAAAA,CAAAA,MAAA,CACTV,OAAO,CAACa,KAAK,CAAC,EAAAH,GAAAA,CAAAA,CAAAA,MAAA,CAAIV,OAAO,CAACkB,OAAO,CAAC,OAAAR,MAAA,CAAIV,OAAO,CAACmB,OAAO,CAAC,CAAA,GAAA,EAAA,CAAAT,MAAA,CACtDV,OAAO,CAACkB,OAAO,CAAC,EAAA,GAAA,CAAA,CAAAR,MAAA,CAAIV,OAAO,CAACmB,OAAO,CAAC,CAAE,CAAA;AAC/C,CAAC,CAAA;AAEM,IAAMC,SAAS,GAAG,SAAZA,SAASA,CAAGC,UAAU,EAAI;AACrC,EAAA,IAAMC,KAAK,GAAGD,UAAU,CACrBE,KAAK,CAAC,GAAG,CAAC,CACVC,GAAG,CAAC,UAAAC,IAAI,EAAA;IAAA,OAAKA,IAAI,KAAK,EAAE,GAAGC,GAAG,GAAGC,QAAQ,CAACF,IAAI,EAAE,EAAE,CAAC,CAAA;AAAA,GAAC,CAAC,CAAA;AACxD,EAAA,IAAIH,KAAK,CAACM,IAAI,CAACC,KAAK,CAAC,IAAIP,KAAK,CAACpB,MAAM,GAAG,CAAC,EAAE;AACzC,IAAA,OAAO,CAAC,CAAA;AACV,GAAA;AAEA,EAAA,IAAIoB,KAAK,CAACpB,MAAM,KAAK,CAAC,EAAE;IACtB,OAAOoB,KAAK,CAAC,CAAC,CAAC,CAAA;AACjB,GAAC,MAAM,IAAIA,KAAK,CAACpB,MAAM,KAAK,CAAC,EAAE;IAC7B,OAAOoB,KAAK,CAAC,CAAC,CAAC,GAAGxB,UAAU,GAAGwB,KAAK,CAAC,CAAC,CAAC,CAAA;AACzC,GAAC,MAAM,IAAIA,KAAK,CAACpB,MAAM,KAAK,CAAC,EAAE;AAC7B,IAAA,OAAOoB,KAAK,CAAC,CAAC,CAAC,GAAGvB,QAAQ,GAAGuB,KAAK,CAAC,CAAC,CAAC,GAAGxB,UAAU,GAAGwB,KAAK,CAAC,CAAC,CAAC,CAAA;AAC/D,GAAA;AAEA,EAAA,OAAO,CAAC,CAAA;AACV,CAAC,CAAA;AAEM,IAAMQ,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,KAAK,EAAI;EACpC,IAAMC,KAAK,GAAG,eAAe,CAAA;AAC7B,EAAA,IAAMC,MAAM,GAAG,CAACF,KAAK,CAACG,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,EAAEhC,MAAM,CAAA;EAE/C,OAAO8B,KAAK,CAACG,IAAI,CAACJ,KAAK,CAAC,IAAIE,MAAM,IAAI,CAAC,CAAA;AACzC,CAAC;;ACvCD,IAAMG,aAAa,GAAG,SAAhBA,aAAaA,CAAAC,IAAA,EAOb;AAAA,EAAA,IANJC,aAAa,GAAAD,IAAA,CAAbC,aAAa;IACbC,aAAa,GAAAF,IAAA,CAAbE,aAAa;IACbC,mBAAmB,GAAAH,IAAA,CAAnBG,mBAAmB;IACnBC,MAAM,GAAAJ,IAAA,CAANI,MAAM;IACGC,OAAO,GAAAL,IAAA,CAAhBM,OAAO;IACPC,0BAA0B,GAAAP,IAAA,CAA1BO,0BAA0B,CAAA;AAE1B,EAAA,IAAAC,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;AAET,EAAA,IAAMC,gBAAgB,GAAGR,mBAAmB,EAAE,CAAA;AAE9C,EAAA,IAAAS,SAAA,GAAoCC,QAAQ,CAAC,EAAE,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAzCI,IAAAA,UAAU,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,aAAa,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;AAChC,EAAA,IAAAI,UAAA,GACEL,QAAQ,CAACF,gBAAgB,CAAC;IAAAQ,UAAA,GAAAJ,cAAA,CAAAG,UAAA,EAAA,CAAA,CAAA;AADrBE,IAAAA,mBAAmB,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,sBAAsB,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;EAGlD,IAAAG,UAAA,GAA4BT,QAAQ,CAAC;AACnCU,MAAAA,KAAK,EAAE,KAAK;AACZC,MAAAA,QAAQ,EAAE,KAAA;AACZ,KAAC,CAAC;IAAAC,UAAA,GAAAV,cAAA,CAAAO,UAAA,EAAA,CAAA,CAAA;AAHKI,IAAAA,MAAM,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,SAAS,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AAKxB,EAAA,IAAQF,KAAK,GAAeG,MAAM,CAA1BH,KAAK;IAAEC,QAAQ,GAAKE,MAAM,CAAnBF,QAAQ,CAAA;AAEvB,EAAA,IAAAI,UAAA,GAAgCf,QAAQ,CAAC,EAAE,CAAC;IAAAgB,UAAA,GAAAd,cAAA,CAAAa,UAAA,EAAA,CAAA,CAAA;AAArCE,IAAAA,QAAQ,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,WAAW,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AAE5B,EAAA,IAAMjD,SAAS,GAAGN,sBAAsB,CAAC4B,aAAa,CAAC,CAAA;AAEvD,EAAA,IAAM8B,6BAA6B,GAAG,SAAhCA,6BAA6BA,CAAGC,CAAC,EAAI;AACzC,IAAA,IAAMvC,KAAK,GAAGuC,CAAC,CAACC,MAAM,CAACC,KAAK,CAAA;AAC5B,IAAA,IAAI1C,aAAa,CAACC,KAAK,CAAC,EAAE;MACxBqC,WAAW,CAACrC,KAAK,CAAC,CAAA;AACpB,KAAA;GACD,CAAA;AAED,EAAA,IAAM0C,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,GAAG,EAAEF,KAAK,EAAA;IAAA,OAAKR,SAAS,CAACW,KAAK,CAACD,GAAG,EAAEF,KAAK,CAAC,CAAC,CAAA;AAAA,GAAA,CAAA;AAEtE,EAAA,IAAMI,gBAAgB,GAAG,SAAnBA,gBAAgBA,GAAS;AAC7B,IAAA,IAAI5D,aAAa,GAAGI,SAAS,CAAC+C,QAAQ,CAAC,CAAA;IACvC,IAAInD,aAAa,GAAGuB,aAAa,EAAE;AACjCvB,MAAAA,aAAa,GAAGuB,aAAa,CAAA;AAC/B,KAAA;IACAmB,sBAAsB,CAAC1C,aAAa,CAAC,CAAA;AACrCoD,IAAAA,WAAW,CAACrD,UAAU,CAACC,aAAa,EAAEC,SAAS,CAAC,CAAC,CAAA;GAClD,CAAA;AAED,EAAA,IAAM4D,aAAa,GAAG,SAAhBA,aAAaA,CAAGP,CAAC,EAAI;AACzB,IAAA,IAAIA,CAAC,CAACI,GAAG,KAAK,OAAO,EAAE,OAAA;AACvBE,IAAAA,gBAAgB,EAAE,CAAA;GACnB,CAAA;AAEDE,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,IAAIC,GAAG,CAACtC,MAAM,CAAC,EAAE,OAAA;IAEjBiB,sBAAsB,CAACV,gBAAgB,GAAG,CAAC,GAAGA,gBAAgB,GAAG,CAAC,CAAC,CAAA;AACnEoB,IAAAA,WAAW,CACTrD,UAAU,CAACiC,gBAAgB,GAAG,CAAC,GAAGA,gBAAgB,GAAG,CAAC,EAAE/B,SAAS,CACnE,CAAC,CAAA;GACF,EAAE,CAACwB,MAAM,EAAExB,SAAS,EAAE+B,gBAAgB,CAAC,CAAC,CAAA;AAEzC8B,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,IAAME,YAAY,GAAG1C,aAAa,CAACd,GAAG,CAAC,UAAAyD,YAAY,EAAA;MAAA,OACjDC,QAAQ,CAACD,YAAY,EAAE;AACrBE,QAAAA,IAAI,EAAE1B,mBAAmB;AACzBG,QAAAA,KAAK,EAAEA,KAAK,GAAG,CAAC,GAAGxD,SAAS;AAC5ByD,QAAAA,QAAQ,EAAEA,QAAQ,GAAG,CAAC,GAAGzD,SAAAA;AAC3B,OAAC,CAAC,CAAA;AAAA,KACJ,CAAC,CAAA;IAEDkD,aAAa,CAAC0B,YAAY,CAAC,CAAA;GAC5B,EAAE,CAAC1C,aAAa,EAAEmB,mBAAmB,EAAEG,KAAK,EAAEC,QAAQ,CAAC,CAAC,CAAA;EAEzD,oBACEuB,IAAA,CAAAC,QAAA,EAAA;IAAAC,QAAA,EAAA,CACGjC,UAAU,CAAC7B,GAAG,CAAC,UAAC+D,SAAS,EAAEC,KAAK,EAAA;AAAA,MAAA,oBAC/BJ,IAAA,CAAA,KAAA,EAAA;AACEK,QAAAA,SAAS,EAAC,kGAAkG;QAAAH,QAAA,EAAA,cAG5GI,GAAA,CAACC,OAAO,EAAA;AAACC,UAAAA,OAAO,EAAEL,SAAU;UAAAD,QAAA,eAC1BI,GAAA,CAACG,UAAU,EAAA;AAACJ,YAAAA,SAAS,EAAC,UAAU;AAACK,YAAAA,KAAK,EAAC,OAAO;AAAAR,YAAAA,QAAA,EAC3CC,SAAAA;WACS,CAAA;AAAC,SACN,CAAC,eACVG,GAAA,CAACK,qBAAqB,EAAA;AACpBN,UAAAA,SAAS,EAAC,eAAe;AACzBK,UAAAA,KAAK,EAAC,WAAW;AACjBtB,UAAAA,KAAK,EAAEe,SAAAA;AAAU,SAClB,CAAC,CAAA;AAAA,OAAA,EAXGC,KAYF,CAAC,CAAA;KACP,CAAC,eACFJ,IAAA,CAAA,KAAA,EAAA;AAAKK,MAAAA,SAAS,EAAC,2BAA2B;MAAAH,QAAA,EAAA,cACxCI,GAAA,CAACM,KAAK,EAAA;QAAAV,QAAA,EAAEvC,CAAC,CAAC,6CAA6C,CAAA;AAAC,OAAQ,CAAC,eACjE2C,GAAA,CAACO,KAAK,EAAA;AACJR,QAAAA,SAAS,EAAC,MAAM;AAChB,QAAA,SAAA,EAAQ,YAAY;AACpBS,QAAAA,WAAW,EAAEjF,SAAS,GAAG,UAAU,GAAG,OAAQ;AAC9CuD,QAAAA,KAAK,EAAEL,QAAS;AAChBgC,QAAAA,MAAM,EAAEvB,gBAAiB;AACzBwB,QAAAA,QAAQ,EAAE/B,6BAA8B;AACxCgC,QAAAA,SAAS,EAAExB,aAAAA;AAAc,OAC1B,CAAC,CAAA;AAAA,KACC,CAAC,EACLjC,0BAA0B,iBACzBwC,IAAA,CAAAC,QAAA,EAAA;AAAAC,MAAAA,QAAA,gBACEI,GAAA,CAAA,KAAA,EAAA;AAAKD,QAAAA,SAAS,EAAC,2BAA2B;QAAAH,QAAA,eACxCI,GAAA,CAACY,MAAM,EAAA;AACLC,UAAAA,OAAO,EAAE3C,KAAM;AACf,UAAA,SAAA,EAAQ,gBAAgB;AACxB4C,UAAAA,EAAE,EAAC,OAAO;AACVC,UAAAA,KAAK,EAAE1D,CAAC,CAAC,qCAAqC,CAAE;AAChD2D,UAAAA,IAAI,EAAC,OAAO;AACZN,UAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAE9B,CAAC,EAAA;YAAA,OAAIG,iBAAiB,CAAC,OAAO,EAAEH,CAAC,CAACC,MAAM,CAACgC,OAAO,CAAC,CAAA;AAAA,WAAA;SAC5D,CAAA;OACE,CAAC,eACNb,GAAA,CAAA,KAAA,EAAA;AAAKD,QAAAA,SAAS,EAAC,2BAA2B;QAAAH,QAAA,eACxCI,GAAA,CAACY,MAAM,EAAA;AACLC,UAAAA,OAAO,EAAE1C,QAAS;AAClB,UAAA,SAAA,EAAQ,mBAAmB;AAC3B2C,UAAAA,EAAE,EAAC,UAAU;AACbC,UAAAA,KAAK,EAAE1D,CAAC,CAAC,wCAAwC,CAAE;AACnD2D,UAAAA,IAAI,EAAC,UAAU;AACfN,UAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAE9B,CAAC,EAAA;YAAA,OAAIG,iBAAiB,CAAC,UAAU,EAAEH,CAAC,CAACC,MAAM,CAACgC,OAAO,CAAC,CAAA;AAAA,WAAA;SAC/D,CAAA;AAAC,OACC,CAAC,CAAA;AAAA,KACN,CACH,EACA7D,OAAO,iBACN0C,IAAA,CAAA,KAAA,EAAA;AAAKK,MAAAA,SAAS,EAAC,4BAA4B;MAAAH,QAAA,EAAA,cACzCI,GAAA,CAACM,KAAK,EAAA;QAAAV,QAAA,EAAEvC,CAAC,CAAC,uCAAuC,CAAA;AAAC,OAAQ,CAAC,eAC3D2C,GAAA,CAAChD,OAAO,EAAA;AAAOe,QAAAA,mBAAmB,EAAnBA,mBAAAA;AAAmB,OAAK,CAAC,CAAA;AAAA,KACrC,CACN,CAAA;AAAA,GACD,CAAC,CAAA;AAEP,CAAC;;;;;AC9ID,IAAMkD,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAtE,IAAA,EAWlB;AAAA,EAAA,IAAAuE,iBAAA,GAAAvE,IAAA,CAVJ4C,YAAY;AAAZA,IAAAA,YAAY,GAAA2B,iBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,iBAAA;IAAAC,kBAAA,GAAAxE,IAAA,CACnBC,aAAa;AAAbA,IAAAA,aAAa,GAAAuE,kBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,kBAAA;IAClBtE,aAAa,GAAAF,IAAA,CAAbE,aAAa;IACbC,mBAAmB,GAAAH,IAAA,CAAnBG,mBAAmB;IACnBC,MAAM,GAAAJ,IAAA,CAANI,MAAM;IACNqE,OAAO,GAAAzE,IAAA,CAAPyE,OAAO;IAAAC,cAAA,GAAA1E,IAAA,CACP2E,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,cAAA;IACjBpE,OAAO,GAAAN,IAAA,CAAPM,OAAO;IAAAsE,qBAAA,GAAA5E,IAAA,CACPO,0BAA0B;AAA1BA,IAAAA,0BAA0B,GAAAqE,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA;AAC/BC,IAAAA,UAAU,GAAAC,wBAAA,CAAA9E,IAAA,EAAA+E,SAAA,CAAA,CAAA;AAEb,EAAA,IAAAvE,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;EAET,IAAMsE,oBAAoB,GAAGC,UAAU,CAAChF,aAAa,CAAC,GAClDA,aAAa,GACb,CAAC2C,YAAY,CAAC,CAAA;EAElB,oBACEG,IAAA,CAACmC,IAAI,EAAAC,aAAA,CAAAA,aAAA,KAAAA,aAAA,CAAA;AACG/E,IAAAA,MAAM,EAANA,MAAM;AAAEqE,IAAAA,OAAO,EAAPA,OAAAA;AAAO,GAAA,EAAKI,UAAU,CAAA,CAAA,EAAA,EAAA,EAAA;AACpC,IAAA,SAAA,EAAQ,YAAY;AACpBO,IAAAA,IAAI,EAAC,OAAO;AAAAnC,IAAAA,QAAA,EAEZI,cAAAA,GAAA,CAAC6B,IAAI,CAACG,MAAM,EAAA;MAAApC,QAAA,eACVI,GAAA,CAACG,UAAU,EAAA;AAACC,QAAAA,KAAK,EAAC,IAAI;QAAAR,QAAA,EACnBvC,CAAC,CAAC,qCAAqC,CAAA;OAC9B,CAAA;AAAC,KACF,CAAC,eACd2C,GAAA,CAAC6B,IAAI,CAACI,IAAI,EAAA;AAAClC,MAAAA,SAAS,EAAC,uBAAuB;AAAAH,MAAAA,QAAA,EACzC0B,SAAS,gBACRtB,GAAA,CAACkC,OAAO,EAAA;AAACnC,QAAAA,SAAS,EAAC,SAAA;AAAS,OAAE,CAAC,gBAE/BC,GAAA,CAACtD,aAAa,EAAA;AAEVQ,QAAAA,0BAA0B,EAA1BA,0BAA0B;AAC1BJ,QAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBC,QAAAA,MAAM,EAANA,MAAM;AACNE,QAAAA,OAAO,EAAPA,OAAO;AACPJ,QAAAA,aAAa,EAAbA,aAAa;AAEfD,QAAAA,aAAa,EAAE+E,oBAAAA;OAChB,CAAA;AACF,KACQ,CAAC,CAAA;AAAA,GAAA,CACR,CAAC,CAAA;AAEX;;;;"}
|
package/dist/ShareViaEmail.js
CHANGED
|
@@ -275,7 +275,7 @@ var Form = function Form(_ref) {
|
|
|
275
275
|
};
|
|
276
276
|
return /*#__PURE__*/jsxs(Fragment, {
|
|
277
277
|
children: [/*#__PURE__*/jsxs("div", {
|
|
278
|
-
className: "
|
|
278
|
+
className: "flex flex-col gap-y-6",
|
|
279
279
|
children: [/*#__PURE__*/jsx(SendToFields, {
|
|
280
280
|
showUploadCsvButton: true,
|
|
281
281
|
emailInputProps: {
|
|
@@ -1 +1 @@
|
|
|
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-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=\"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=\"neeto-ui-bg-white 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 { 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\";\nimport MobilePreviewHeader from \"components/MobilePreviewHeader\";\n\nimport EmailForm from \"./Form\";\nimport \"./share-via-email.scss\";\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=\"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=\"neeto-molecules-share-frame grid grid-cols-1 md:grid-cols-12\">\n <div\n className=\"neeto-molecules-share-frame__left-wrap col-span-1 p-6 pb-0 md:col-span-6 lg:col-span-5\"\n data-cy=\"share-via-email-frame-wrapper\"\n >\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 <MobilePreviewHeader className=\"col-span-1 md:hidden\" />\n <div className=\"neeto-molecules-share-frame__right-wrap neeto-ui-bg-gray-100 col-span-1 p-6 py-10 md:col-span-6 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","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","MobilePreviewHeader","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=\"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=\"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=\"neeto-ui-bg-white 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 { 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\";\nimport MobilePreviewHeader from \"components/MobilePreviewHeader\";\n\nimport EmailForm from \"./Form\";\nimport \"./share-via-email.scss\";\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=\"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=\"neeto-molecules-share-frame grid grid-cols-1 md:grid-cols-12\">\n <div\n className=\"neeto-molecules-share-frame__left-wrap col-span-1 p-6 pb-0 md:col-span-6 lg:col-span-5\"\n data-cy=\"share-via-email-frame-wrapper\"\n >\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 <MobilePreviewHeader className=\"col-span-1 md:hidden\" />\n <div className=\"neeto-molecules-share-frame__right-wrap neeto-ui-bg-gray-100 col-span-1 p-6 py-10 md:col-span-6 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","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","MobilePreviewHeader","EmailPreview","body","subject"],"mappings":"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"}
|
package/dist/ShareViaLink.js
CHANGED
|
@@ -266,7 +266,7 @@ var EditURL = function EditURL(_ref) {
|
|
|
266
266
|
dirty = _ref5.dirty;
|
|
267
267
|
return /*#__PURE__*/jsxs(Form, {
|
|
268
268
|
children: [/*#__PURE__*/jsxs(Body, {
|
|
269
|
-
className: "
|
|
269
|
+
className: "flex flex-col gap-y-6",
|
|
270
270
|
children: [/*#__PURE__*/jsx(Input, {
|
|
271
271
|
className: "no-padding w-full flex-grow-0",
|
|
272
272
|
"data-testid": "edit-url-input",
|
|
@@ -282,9 +282,9 @@ var EditURL = function EditURL(_ref) {
|
|
|
282
282
|
children: t("neetoMolecules.shareViaLink.editUrl.description")
|
|
283
283
|
})]
|
|
284
284
|
}), /*#__PURE__*/jsx(Footer, {
|
|
285
|
-
className: "
|
|
285
|
+
className: "flex items-center gap-x-2",
|
|
286
286
|
children: /*#__PURE__*/jsx(ActionBlock, {
|
|
287
|
-
className: "flex items-center
|
|
287
|
+
className: "flex items-center gap-x-2",
|
|
288
288
|
cancelButtonProps: {
|
|
289
289
|
onClick: onClose,
|
|
290
290
|
disabled: isSubmitting,
|
|
@@ -366,7 +366,7 @@ var RegenerateURL = function RegenerateURL(_ref) {
|
|
|
366
366
|
})
|
|
367
367
|
}), /*#__PURE__*/jsx(Modal.Body, {
|
|
368
368
|
children: /*#__PURE__*/jsxs("div", {
|
|
369
|
-
className: "w-full
|
|
369
|
+
className: "flex w-full flex-col gap-y-6",
|
|
370
370
|
children: [regenerateStrategy === "basic" && /*#__PURE__*/jsx(Input$1, {
|
|
371
371
|
disabled: true,
|
|
372
372
|
label: t("neetoMolecules.shareViaLink.regenerateUrl.inputLabel"),
|
|
@@ -420,7 +420,7 @@ var RegenerateURL = function RegenerateURL(_ref) {
|
|
|
420
420
|
})]
|
|
421
421
|
})
|
|
422
422
|
}), /*#__PURE__*/jsxs(Modal.Footer, {
|
|
423
|
-
className: "
|
|
423
|
+
className: "flex items-center gap-x-2",
|
|
424
424
|
children: [/*#__PURE__*/jsx(Button, {
|
|
425
425
|
"data-cy": "regenerate-url-confirm-button",
|
|
426
426
|
"data-testid": "regenerate-url-confirm-button",
|
|
@@ -463,7 +463,7 @@ var Link = function Link(_ref) {
|
|
|
463
463
|
var isMobile = isSize("mobile");
|
|
464
464
|
var isDropdownEnabled = enabledOptions.regenerate || enabledOptions.edit;
|
|
465
465
|
return /*#__PURE__*/jsx("div", {
|
|
466
|
-
className: "
|
|
466
|
+
className: "flex flex-col gap-y-4",
|
|
467
467
|
"data-cy": "link-block",
|
|
468
468
|
"data-testid": "link-block",
|
|
469
469
|
children: /*#__PURE__*/jsxs("div", {
|
|
@@ -705,9 +705,9 @@ var MainPanel = function MainPanel(_ref) {
|
|
|
705
705
|
className: "neeto-ui-rounded-lg neeto-ui-bg-white p-6 sm:p-8",
|
|
706
706
|
"data-testid": "share-via-link",
|
|
707
707
|
children: [isNotEmpty(urls) && /*#__PURE__*/jsxs("div", {
|
|
708
|
-
className: "
|
|
708
|
+
className: "flex flex-col gap-y-1",
|
|
709
709
|
children: [/*#__PURE__*/jsx("div", {
|
|
710
|
-
className: "inline-flex max-w-full flex-col
|
|
710
|
+
className: "inline-flex max-w-full flex-col gap-y-4",
|
|
711
711
|
children: urls === null || urls === void 0 ? void 0 : urls.map(function (urlOption) {
|
|
712
712
|
return /*#__PURE__*/createElement(Link, {
|
|
713
713
|
enabledOptions: enabledOptions,
|