@bigbinary/neeto-molecules 3.7.21 → 3.7.22
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/Breadcrumbs.js +1 -1
- package/dist/BrowserSupport.js +3 -3
- package/dist/Builder.js +1 -1
- package/dist/CalendarView.js +2 -2
- package/dist/{Chevron-a5e99340.js → Chevron-DWt0ncDv.js} +2 -2
- package/dist/{Chevron-a5e99340.js.map → Chevron-DWt0ncDv.js.map} +1 -1
- package/dist/Codeblock.js +1 -1
- package/dist/Columns.js +2 -2
- package/dist/ConfigurePageSidebar.js +2 -2
- package/dist/Container.js +3 -3
- package/dist/CopyToClipboardButton.js +1 -1
- package/dist/CustomDomain.js +2 -2
- package/dist/CustomDomainDashboard.js +5 -5
- package/dist/DeviceIncompatibilityMessage.js +2 -2
- package/dist/DocumentEditor.js +1 -1
- package/dist/DownloadMobileAppCallout.js +2 -2
- package/dist/DynamicVariables.js +1 -1
- package/dist/EmailForm.js +3 -3
- package/dist/EmailPreview.js +2 -2
- package/dist/ErrorPage.js +1 -1
- package/dist/FileUpload.js +1 -1
- package/dist/FloatingActionMenu.js +3 -3
- package/dist/Header.js +1 -1
- package/dist/IconPicker.js +1 -1
- package/dist/IconPicker.js.map +1 -1
- package/dist/InlineInput.js +1 -1
- package/dist/IntegrationCard.js +1 -1
- package/dist/IpRestriction.js +44 -44
- package/dist/IpRestriction.js.map +1 -1
- package/dist/KeyboardShortcuts.js +3 -3
- package/dist/MadeWith.js +1 -1
- package/dist/MenuBar.js +6 -8
- package/dist/MenuBar.js.map +1 -1
- package/dist/Metadata.js +1 -1
- package/dist/MoreDropdown.js +1 -1
- package/dist/NavigationHeader.js +1 -1
- package/dist/NeetoWidget.js +2 -4
- package/dist/NeetoWidget.js.map +1 -1
- package/dist/Onboarding.js +1 -1
- package/dist/PageLoader.js +1 -1
- package/dist/PhoneNumber.js +5 -5
- package/dist/ProductEmbed.js +1 -1
- package/dist/PublishBlock.js +1 -1
- package/dist/PublishYourItem.js +2 -2
- package/dist/Rename.js +1 -1
- package/dist/Schedule.js +2 -2
- package/dist/Scrollable.js +1 -1
- package/dist/Search.js +1 -1
- package/dist/SendToFields.js +2 -3
- package/dist/SendToFields.js.map +1 -1
- package/dist/SessionEnvironment.js +3 -3
- package/dist/Settings.js +1 -1
- package/dist/ShareRecordingPane.js +1 -1
- package/dist/ShareViaEmail.js +2 -2
- package/dist/ShareViaLink.js +1 -1
- package/dist/ShareViaLink.js.map +1 -1
- package/dist/Sidebar.js +2 -2
- package/dist/StatusDropdown.js +1 -1
- package/dist/StickyRibbonsContainer.js +1 -1
- package/dist/SubHeader.js +2 -2
- package/dist/SuffixedInput.js +1 -1
- package/dist/TableWrapper.js +1 -1
- package/dist/Taxonomy.js +4 -4
- package/dist/ToggleFeatureCard.js +1 -1
- package/dist/{_commonjsHelpers-1789f0cf.js → _commonjsHelpers-BFTU3MAI.js} +1 -1
- package/dist/_commonjsHelpers-BFTU3MAI.js.map +1 -0
- package/dist/cjs/Breadcrumbs.js +3 -8
- package/dist/cjs/Breadcrumbs.js.map +1 -1
- package/dist/cjs/BrowserSupport.js +7 -14
- package/dist/cjs/BrowserSupport.js.map +1 -1
- package/dist/cjs/Builder.js +40 -59
- package/dist/cjs/Builder.js.map +1 -1
- package/dist/cjs/CalendarView.js +26 -43
- package/dist/cjs/CalendarView.js.map +1 -1
- package/dist/cjs/{Chevron-bb98447f.js → Chevron-DpYyQWkK.js} +13 -22
- package/dist/cjs/{Chevron-bb98447f.js.map → Chevron-DpYyQWkK.js.map} +1 -1
- package/dist/cjs/Codeblock.js +2 -6
- package/dist/cjs/Codeblock.js.map +1 -1
- package/dist/cjs/Columns.js +3 -3
- package/dist/cjs/ConfigurePageSidebar.js +6 -12
- package/dist/cjs/ConfigurePageSidebar.js.map +1 -1
- package/dist/cjs/ConfirmationModal.js +12 -20
- package/dist/cjs/ConfirmationModal.js.map +1 -1
- package/dist/cjs/Container.js +4 -8
- package/dist/cjs/Container.js.map +1 -1
- package/dist/cjs/CopyToClipboardButton.js +8 -18
- package/dist/cjs/CopyToClipboardButton.js.map +1 -1
- package/dist/cjs/Currency.js +6 -15
- package/dist/cjs/Currency.js.map +1 -1
- package/dist/cjs/CustomDomain.js +8 -16
- package/dist/cjs/CustomDomain.js.map +1 -1
- package/dist/cjs/CustomDomainDashboard.js +24 -38
- package/dist/cjs/CustomDomainDashboard.js.map +1 -1
- package/dist/cjs/DateFormat.js +4 -11
- package/dist/cjs/DateFormat.js.map +1 -1
- package/dist/cjs/DateRangeFilter.js +4 -11
- package/dist/cjs/DateRangeFilter.js.map +1 -1
- package/dist/cjs/DeleteArchiveModal.js +10 -18
- package/dist/cjs/DeleteArchiveModal.js.map +1 -1
- package/dist/cjs/DeviceIncompatibilityMessage.js +8 -14
- package/dist/cjs/DeviceIncompatibilityMessage.js.map +1 -1
- package/dist/cjs/DocumentEditor.js +11 -21
- package/dist/cjs/DocumentEditor.js.map +1 -1
- package/dist/cjs/DownloadMobileAppCallout.js +3 -7
- package/dist/cjs/DownloadMobileAppCallout.js.map +1 -1
- package/dist/cjs/DynamicVariables.js +7 -15
- package/dist/cjs/DynamicVariables.js.map +1 -1
- package/dist/cjs/EmailForm.js +23 -40
- package/dist/cjs/EmailForm.js.map +1 -1
- package/dist/cjs/EmailPreview.js +12 -20
- package/dist/cjs/EmailPreview.js.map +1 -1
- package/dist/cjs/EmojiPicker.js +5 -13
- package/dist/cjs/EmojiPicker.js.map +1 -1
- package/dist/cjs/EmojiReactions.js +4 -11
- package/dist/cjs/EmojiReactions.js.map +1 -1
- package/dist/cjs/ErrorPage.js +9 -15
- package/dist/cjs/ErrorPage.js.map +1 -1
- package/dist/cjs/FileUpload.js +19 -36
- package/dist/cjs/FileUpload.js.map +1 -1
- package/dist/cjs/FloatingActionMenu.js +67 -90
- package/dist/cjs/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/Header.js +6 -13
- package/dist/cjs/Header.js.map +1 -1
- package/dist/cjs/HelpPopover.js +9 -19
- package/dist/cjs/HelpPopover.js.map +1 -1
- package/dist/cjs/IconPicker.js +24 -42
- package/dist/cjs/IconPicker.js.map +1 -1
- package/dist/cjs/ImageWithFallback.js +6 -13
- package/dist/cjs/ImageWithFallback.js.map +1 -1
- package/dist/cjs/InlineInput.js +20 -38
- package/dist/cjs/InlineInput.js.map +1 -1
- package/dist/cjs/Insights.js +13 -21
- package/dist/cjs/Insights.js.map +1 -1
- package/dist/cjs/IntegrationCard.js +14 -27
- package/dist/cjs/IntegrationCard.js.map +1 -1
- package/dist/cjs/IpRestriction.js +83 -104
- package/dist/cjs/IpRestriction.js.map +1 -1
- package/dist/cjs/KeyboardShortcuts.js +23 -36
- package/dist/cjs/KeyboardShortcuts.js.map +1 -1
- package/dist/cjs/LoginPage.js +16 -27
- package/dist/cjs/LoginPage.js.map +1 -1
- package/dist/cjs/MadeWith.js +3 -8
- package/dist/cjs/MadeWith.js.map +1 -1
- package/dist/cjs/MenuBar.js +46 -66
- package/dist/cjs/MenuBar.js.map +1 -1
- package/dist/cjs/Metadata.js +18 -29
- package/dist/cjs/Metadata.js.map +1 -1
- package/dist/cjs/MobilePreviewHeader.js +2 -7
- package/dist/cjs/MobilePreviewHeader.js.map +1 -1
- package/dist/cjs/MoreDropdown.js +21 -32
- package/dist/cjs/MoreDropdown.js.map +1 -1
- package/dist/cjs/NavigationHeader.js +9 -18
- package/dist/cjs/NavigationHeader.js.map +1 -1
- package/dist/cjs/NeetoWidget.js +69 -95
- package/dist/cjs/NeetoWidget.js.map +1 -1
- package/dist/cjs/Onboarding.js +22 -34
- package/dist/cjs/Onboarding.js.map +1 -1
- package/dist/cjs/OptionFields.js +34 -51
- package/dist/cjs/OptionFields.js.map +1 -1
- package/dist/cjs/PageLoader.js +4 -10
- package/dist/cjs/PageLoader.js.map +1 -1
- package/dist/cjs/PhoneNumber.js +10 -20
- package/dist/cjs/PhoneNumber.js.map +1 -1
- package/dist/cjs/ProductEmbed.js +57 -80
- package/dist/cjs/ProductEmbed.js.map +1 -1
- package/dist/cjs/PublishBlock.js +41 -60
- package/dist/cjs/PublishBlock.js.map +1 -1
- package/dist/cjs/PublishYourItem.js +5 -10
- package/dist/cjs/PublishYourItem.js.map +1 -1
- package/dist/cjs/Rename.js +20 -35
- package/dist/cjs/Rename.js.map +1 -1
- package/dist/cjs/ResponsiveDevicePicker.js +9 -20
- package/dist/cjs/ResponsiveDevicePicker.js.map +1 -1
- package/dist/cjs/Schedule.js +47 -69
- package/dist/cjs/Schedule.js.map +1 -1
- package/dist/cjs/Scrollable.js +4 -10
- package/dist/cjs/Scrollable.js.map +1 -1
- package/dist/cjs/Search.js +11 -22
- package/dist/cjs/Search.js.map +1 -1
- package/dist/cjs/SendToFields.js +31 -49
- package/dist/cjs/SendToFields.js.map +1 -1
- package/dist/cjs/SessionEnvironment.js +39 -69
- package/dist/cjs/SessionEnvironment.js.map +1 -1
- package/dist/cjs/Settings.js +18 -29
- package/dist/cjs/Settings.js.map +1 -1
- package/dist/cjs/ShareRecordingPane.js +17 -29
- package/dist/cjs/ShareRecordingPane.js.map +1 -1
- package/dist/cjs/ShareViaEmail.js +31 -51
- package/dist/cjs/ShareViaEmail.js.map +1 -1
- package/dist/cjs/ShareViaLink.js +46 -64
- package/dist/cjs/ShareViaLink.js.map +1 -1
- package/dist/cjs/Sidebar.js +22 -35
- package/dist/cjs/Sidebar.js.map +1 -1
- package/dist/cjs/StatusDropdown.js +8 -16
- package/dist/cjs/StatusDropdown.js.map +1 -1
- package/dist/cjs/StickyRibbonsContainer.js +6 -14
- package/dist/cjs/StickyRibbonsContainer.js.map +1 -1
- package/dist/cjs/SubHeader.js +15 -25
- package/dist/cjs/SubHeader.js.map +1 -1
- package/dist/cjs/SuffixedInput.js +5 -12
- package/dist/cjs/SuffixedInput.js.map +1 -1
- package/dist/cjs/TableWrapper.js +3 -7
- package/dist/cjs/TableWrapper.js.map +1 -1
- package/dist/cjs/Taxonomy.js +46 -64
- package/dist/cjs/Taxonomy.js.map +1 -1
- package/dist/cjs/TimezoneMismatchModal.js +14 -23
- package/dist/cjs/TimezoneMismatchModal.js.map +1 -1
- package/dist/cjs/ToggleFeatureCard.js +18 -34
- package/dist/cjs/ToggleFeatureCard.js.map +1 -1
- package/dist/cjs/{_commonjsHelpers-b3309d7b.js → _commonjsHelpers-BJu3ubxk.js} +1 -1
- package/dist/cjs/_commonjsHelpers-BJu3ubxk.js.map +1 -0
- package/dist/cjs/{index-3ab0acb9.js → index-Dfq9GJPm.js} +64 -84
- package/dist/cjs/{index-3ab0acb9.js.map → index-Dfq9GJPm.js.map} +1 -1
- package/dist/cjs/{index-57253dc4.js → index-JY2zVpnv.js} +2 -2
- package/dist/cjs/{index-57253dc4.js.map → index-JY2zVpnv.js.map} +1 -1
- package/dist/cjs/{inject-css-80a5faa3.js → inject-css-vQvjPR2x.js} +1 -1
- package/dist/cjs/{inject-css-80a5faa3.js.map → inject-css-vQvjPR2x.js.map} +1 -1
- package/dist/cjs/{phone-number-7119ec88.js → phone-number-BtEbUAse.js} +24 -39
- package/dist/cjs/phone-number-BtEbUAse.js.map +1 -0
- package/dist/cjs/{platform-4e0a3b75.js → platform-BUcCb8Jx.js} +2 -2
- package/dist/cjs/{platform-4e0a3b75.js.map → platform-BUcCb8Jx.js.map} +1 -1
- package/dist/cjs/{useColumns-8894f767.js → useColumns-E3db4ucs.js} +19 -32
- package/dist/cjs/{useColumns-8894f767.js.map → useColumns-E3db4ucs.js.map} +1 -1
- package/dist/{index-1f87fe13.js → index-DAYCJu79.js} +2 -2
- package/dist/{index-1f87fe13.js.map → index-DAYCJu79.js.map} +1 -1
- package/dist/{index-2f9a2a41.js → index-YZ7vuBmP.js} +2 -2
- package/dist/{index-2f9a2a41.js.map → index-YZ7vuBmP.js.map} +1 -1
- package/dist/{inject-css-c86de496.js → inject-css-DmrvuTKK.js} +1 -1
- package/dist/{inject-css-c86de496.js.map → inject-css-DmrvuTKK.js.map} +1 -1
- package/dist/{phone-number-aa7dd15f.js → phone-number-B2DdoQZX.js} +4 -5
- package/dist/phone-number-B2DdoQZX.js.map +1 -0
- package/dist/{platform-9320726a.js → platform-F44zJ4Xh.js} +2 -2
- package/dist/{platform-9320726a.js.map → platform-F44zJ4Xh.js.map} +1 -1
- package/dist/{useColumns-13263cd8.js → useColumns-B8JL1GjK.js} +2 -2
- package/dist/{useColumns-13263cd8.js.map → useColumns-B8JL1GjK.js.map} +1 -1
- package/package.json +4 -4
- package/dist/_commonjsHelpers-1789f0cf.js.map +0 -1
- package/dist/cjs/_commonjsHelpers-b3309d7b.js.map +0 -1
- package/dist/cjs/phone-number-7119ec88.js.map +0 -1
- package/dist/phone-number-aa7dd15f.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TimezoneMismatchModal.js","sources":["../../src/components/TimezoneMismatchModal/apis/time_zone.js","../../src/components/TimezoneMismatchModal/useTimeZoneApi.js","../../src/components/TimezoneMismatchModal/utils.js","../../src/components/TimezoneMismatchModal/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\nconst timeZoneUrl = \"api/v1/time_zone\";\n\nconst updateTimeZone = payload => axios.patch(timeZoneUrl, payload);\n\nconst timeZoneApi = { updateTimeZone };\n\nexport default timeZoneApi;\n","import { useMutation } from \"@tanstack/react-query\";\n\nimport timeZoneApi from \"./apis/time_zone\";\n\nconst useUpdateTimeZone = () =>\n useMutation({\n mutationFn: timeZoneApi.updateTimeZone,\n onSuccess: () => window.location.reload(),\n });\n\nexport { useUpdateTimeZone };\n","import dayjs from \"dayjs\";\nimport { globalProps } from \"neetocommons/initializers\";\n\nexport const getBrowserTimeZone = () => dayjs.tz.guess();\n\nexport const getUserTimeZone = () => globalProps.user?.timeZone;\n\nexport const checkIfTwoTimeZonesAreSame = (timeZone1, timeZone2) =>\n // eslint-disable-next-line @bigbinary/neeto/use-standard-date-time-formats\n dayjs().tz(timeZone1).format(\"Z\") === dayjs().tz(timeZone2).format(\"Z\");\n","/* eslint-disable @bigbinary/neeto/use-webpack-alias */\nimport { useEffect, useState } from \"react\";\n\nimport { noop } from \"@bigbinary/neeto-cist\";\nimport { Button, Modal, Typography } from \"@bigbinary/neetoui\";\nimport PropTypes from \"prop-types\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { useUpdateTimeZone } from \"./useTimeZoneApi\";\nimport {\n checkIfTwoTimeZonesAreSame,\n getBrowserTimeZone,\n getUserTimeZone,\n} from \"./utils\";\n\nconst TimezoneMismatchModal = ({ isOpen = false, onClose = noop }) => {\n const { t } = useTranslation();\n const [isTimezoneModalOpen, setIsTimezoneModalOpen] = useState(false);\n const { isPending, mutate: updateTimeZone } = useUpdateTimeZone();\n const isUserAndBrowserTimeZoneSame = checkIfTwoTimeZonesAreSame(\n getUserTimeZone(),\n getBrowserTimeZone()\n );\n\n const handleUpdateTimeZone = () => {\n const payload = { timeZone: getBrowserTimeZone() };\n\n updateTimeZone(payload, {\n onSuccess: () => {\n setIsTimezoneModalOpen(false);\n onClose();\n },\n });\n };\n\n const handleCancel = () => {\n setIsTimezoneModalOpen(false);\n onClose();\n };\n\n useEffect(() => {\n if (!(process.env.RAILS_ENV !== \"heroku\")) return;\n setIsTimezoneModalOpen(!isUserAndBrowserTimeZoneSame);\n }, []);\n\n return (\n <Modal\n closeOnOutsideClick={false}\n isOpen={isTimezoneModalOpen || isOpen}\n size=\"large\"\n onClose={handleCancel}\n >\n <Modal.Header>\n <Typography style=\"h2\" weight=\"normal\">\n {t(\"neetoMolecules.alert.timezone.title\")}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <span className=\"flex flex-col space-y-4\">\n <Typography component=\"span\" style=\"body2\">\n {t(\"neetoMolecules.alert.timezone.message\", {\n entity: globalProps.appName,\n })}\n </Typography>\n <Typography component=\"span\" style=\"h4\">\n <Trans\n i18nKey=\"neetoMolecules.alert.timezone.userTimezone\"\n values={{ entity: getUserTimeZone() }}\n />\n </Typography>\n <Typography component=\"span\" style=\"h4\">\n <Trans\n i18nKey=\"neetoMolecules.alert.timezone.browserTimezone\"\n values={{ entity: getBrowserTimeZone() }}\n />\n </Typography>\n </span>\n </Modal.Body>\n <Modal.Footer className=\"space-x-2\">\n <Button\n data-testid=\"update-timezone-button\"\n disabled={isPending}\n label={t(\"neetoMolecules.alert.timezone.updateProfile\")}\n loading={isPending}\n style=\"primary\"\n onClick={handleUpdateTimeZone}\n />\n <Button\n label={t(\"neetoMolecules.common.actions.cancel\")}\n style=\"text\"\n onClick={handleCancel}\n />\n </Modal.Footer>\n </Modal>\n );\n};\n\nTimezoneMismatchModal.propTypes = {\n /**\n * Boolean value to toggle the modal.\n */\n isOpen: PropTypes.bool,\n /**\n * The function that's called after the modal is closed.\n */\n onClose: PropTypes.func,\n};\n\nexport default TimezoneMismatchModal;\n"],"names":["timeZoneUrl","updateTimeZone","payload","axios","patch","timeZoneApi","useUpdateTimeZone","useMutation","mutationFn","onSuccess","window","location","reload","getBrowserTimeZone","dayjs","tz","guess","getUserTimeZone","_globalProps$user","globalProps","user","timeZone","checkIfTwoTimeZonesAreSame","timeZone1","timeZone2","format","TimezoneMismatchModal","_ref","_ref$isOpen","isOpen","_ref$onClose","onClose","noop","_useTranslation","useTranslation","t","_useState","useState","_useState2","_slicedToArray","isTimezoneModalOpen","setIsTimezoneModalOpen","_useUpdateTimeZone","isPending","mutate","isUserAndBrowserTimeZoneSame","handleUpdateTimeZone","handleCancel","useEffect","process","env","RAILS_ENV","_jsxs","Modal","closeOnOutsideClick","size","children","_jsx","Header","Typography","style","weight","Body","className","component","entity","appName","Trans","i18nKey","values","Footer","Button","disabled","label","loading","onClick"],"mappings":"
|
|
1
|
+
{"version":3,"file":"TimezoneMismatchModal.js","sources":["../../src/components/TimezoneMismatchModal/apis/time_zone.js","../../src/components/TimezoneMismatchModal/useTimeZoneApi.js","../../src/components/TimezoneMismatchModal/utils.js","../../src/components/TimezoneMismatchModal/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\nconst timeZoneUrl = \"api/v1/time_zone\";\n\nconst updateTimeZone = payload => axios.patch(timeZoneUrl, payload);\n\nconst timeZoneApi = { updateTimeZone };\n\nexport default timeZoneApi;\n","import { useMutation } from \"@tanstack/react-query\";\n\nimport timeZoneApi from \"./apis/time_zone\";\n\nconst useUpdateTimeZone = () =>\n useMutation({\n mutationFn: timeZoneApi.updateTimeZone,\n onSuccess: () => window.location.reload(),\n });\n\nexport { useUpdateTimeZone };\n","import dayjs from \"dayjs\";\nimport { globalProps } from \"neetocommons/initializers\";\n\nexport const getBrowserTimeZone = () => dayjs.tz.guess();\n\nexport const getUserTimeZone = () => globalProps.user?.timeZone;\n\nexport const checkIfTwoTimeZonesAreSame = (timeZone1, timeZone2) =>\n // eslint-disable-next-line @bigbinary/neeto/use-standard-date-time-formats\n dayjs().tz(timeZone1).format(\"Z\") === dayjs().tz(timeZone2).format(\"Z\");\n","/* eslint-disable @bigbinary/neeto/use-webpack-alias */\nimport { useEffect, useState } from \"react\";\n\nimport { noop } from \"@bigbinary/neeto-cist\";\nimport { Button, Modal, Typography } from \"@bigbinary/neetoui\";\nimport PropTypes from \"prop-types\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { useUpdateTimeZone } from \"./useTimeZoneApi\";\nimport {\n checkIfTwoTimeZonesAreSame,\n getBrowserTimeZone,\n getUserTimeZone,\n} from \"./utils\";\n\nconst TimezoneMismatchModal = ({ isOpen = false, onClose = noop }) => {\n const { t } = useTranslation();\n const [isTimezoneModalOpen, setIsTimezoneModalOpen] = useState(false);\n const { isPending, mutate: updateTimeZone } = useUpdateTimeZone();\n const isUserAndBrowserTimeZoneSame = checkIfTwoTimeZonesAreSame(\n getUserTimeZone(),\n getBrowserTimeZone()\n );\n\n const handleUpdateTimeZone = () => {\n const payload = { timeZone: getBrowserTimeZone() };\n\n updateTimeZone(payload, {\n onSuccess: () => {\n setIsTimezoneModalOpen(false);\n onClose();\n },\n });\n };\n\n const handleCancel = () => {\n setIsTimezoneModalOpen(false);\n onClose();\n };\n\n useEffect(() => {\n if (!(process.env.RAILS_ENV !== \"heroku\")) return;\n setIsTimezoneModalOpen(!isUserAndBrowserTimeZoneSame);\n }, []);\n\n return (\n <Modal\n closeOnOutsideClick={false}\n isOpen={isTimezoneModalOpen || isOpen}\n size=\"large\"\n onClose={handleCancel}\n >\n <Modal.Header>\n <Typography style=\"h2\" weight=\"normal\">\n {t(\"neetoMolecules.alert.timezone.title\")}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <span className=\"flex flex-col space-y-4\">\n <Typography component=\"span\" style=\"body2\">\n {t(\"neetoMolecules.alert.timezone.message\", {\n entity: globalProps.appName,\n })}\n </Typography>\n <Typography component=\"span\" style=\"h4\">\n <Trans\n i18nKey=\"neetoMolecules.alert.timezone.userTimezone\"\n values={{ entity: getUserTimeZone() }}\n />\n </Typography>\n <Typography component=\"span\" style=\"h4\">\n <Trans\n i18nKey=\"neetoMolecules.alert.timezone.browserTimezone\"\n values={{ entity: getBrowserTimeZone() }}\n />\n </Typography>\n </span>\n </Modal.Body>\n <Modal.Footer className=\"space-x-2\">\n <Button\n data-testid=\"update-timezone-button\"\n disabled={isPending}\n label={t(\"neetoMolecules.alert.timezone.updateProfile\")}\n loading={isPending}\n style=\"primary\"\n onClick={handleUpdateTimeZone}\n />\n <Button\n label={t(\"neetoMolecules.common.actions.cancel\")}\n style=\"text\"\n onClick={handleCancel}\n />\n </Modal.Footer>\n </Modal>\n );\n};\n\nTimezoneMismatchModal.propTypes = {\n /**\n * Boolean value to toggle the modal.\n */\n isOpen: PropTypes.bool,\n /**\n * The function that's called after the modal is closed.\n */\n onClose: PropTypes.func,\n};\n\nexport default TimezoneMismatchModal;\n"],"names":["timeZoneUrl","updateTimeZone","payload","axios","patch","timeZoneApi","useUpdateTimeZone","useMutation","mutationFn","onSuccess","window","location","reload","getBrowserTimeZone","dayjs","tz","guess","getUserTimeZone","_globalProps$user","globalProps","user","timeZone","checkIfTwoTimeZonesAreSame","timeZone1","timeZone2","format","TimezoneMismatchModal","_ref","_ref$isOpen","isOpen","_ref$onClose","onClose","noop","_useTranslation","useTranslation","t","_useState","useState","_useState2","_slicedToArray","isTimezoneModalOpen","setIsTimezoneModalOpen","_useUpdateTimeZone","isPending","mutate","isUserAndBrowserTimeZoneSame","handleUpdateTimeZone","handleCancel","useEffect","process","env","RAILS_ENV","_jsxs","Modal","closeOnOutsideClick","size","children","_jsx","Header","Typography","style","weight","Body","className","component","entity","appName","Trans","i18nKey","values","Footer","Button","disabled","label","loading","onClick"],"mappings":"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"}
|
|
@@ -15,28 +15,12 @@ var Button = require('@bigbinary/neetoui/Button');
|
|
|
15
15
|
var Input = require('@bigbinary/neetoui/formik/Input');
|
|
16
16
|
var ramda = require('ramda');
|
|
17
17
|
var reactI18next = require('react-i18next');
|
|
18
|
-
var injectCss = require('./inject-css-
|
|
18
|
+
var injectCss = require('./inject-css-vQvjPR2x.js');
|
|
19
19
|
var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
|
|
20
20
|
var Tooltip = require('@bigbinary/neetoui/Tooltip');
|
|
21
21
|
var Switch = require('@bigbinary/neetoui/formik/Switch');
|
|
22
22
|
var jsxRuntime = require('react/jsx-runtime');
|
|
23
23
|
|
|
24
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
25
|
-
|
|
26
|
-
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
|
|
27
|
-
var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
|
|
28
|
-
var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
|
|
29
|
-
var useOnClickOutside__default = /*#__PURE__*/_interopDefaultLegacy(useOnClickOutside);
|
|
30
|
-
var useHotkeys__default = /*#__PURE__*/_interopDefaultLegacy(useHotkeys);
|
|
31
|
-
var Close__default = /*#__PURE__*/_interopDefaultLegacy(Close);
|
|
32
|
-
var Typography__default = /*#__PURE__*/_interopDefaultLegacy(Typography);
|
|
33
|
-
var Label__default = /*#__PURE__*/_interopDefaultLegacy(Label);
|
|
34
|
-
var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
|
|
35
|
-
var Input__default = /*#__PURE__*/_interopDefaultLegacy(Input);
|
|
36
|
-
var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
|
|
37
|
-
var Tooltip__default = /*#__PURE__*/_interopDefaultLegacy(Tooltip);
|
|
38
|
-
var Switch__default = /*#__PURE__*/_interopDefaultLegacy(Switch);
|
|
39
|
-
|
|
40
24
|
var useScrollIntoView = function useScrollIntoView(_ref) {
|
|
41
25
|
var elementId = _ref.elementId,
|
|
42
26
|
trigger = _ref.trigger;
|
|
@@ -52,7 +36,7 @@ injectCss.n(css,{});
|
|
|
52
36
|
|
|
53
37
|
var _excluded = ["enabledCondition", "name", "isDisabled", "switchDataCy", "tooltipProps"];
|
|
54
38
|
function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
55
|
-
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) {
|
|
39
|
+
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
56
40
|
var TooltipSwitch = function TooltipSwitch(_ref) {
|
|
57
41
|
var enabledCondition = _ref.enabledCondition,
|
|
58
42
|
_ref$name = _ref.name,
|
|
@@ -62,15 +46,15 @@ var TooltipSwitch = function TooltipSwitch(_ref) {
|
|
|
62
46
|
switchDataCy = _ref.switchDataCy,
|
|
63
47
|
_ref$tooltipProps = _ref.tooltipProps,
|
|
64
48
|
tooltipProps = _ref$tooltipProps === void 0 ? {} : _ref$tooltipProps,
|
|
65
|
-
otherProps =
|
|
49
|
+
otherProps = _objectWithoutProperties(_ref, _excluded);
|
|
66
50
|
var tooltipContent = enabledCondition ? tooltipProps.enabledSwitchText : tooltipProps.disabledSwitchText;
|
|
67
|
-
return /*#__PURE__*/jsxRuntime.jsx(
|
|
51
|
+
return /*#__PURE__*/jsxRuntime.jsx(Tooltip, _objectSpread$1(_objectSpread$1({
|
|
68
52
|
content: tooltipContent,
|
|
69
53
|
disabled: !tooltipContent,
|
|
70
54
|
position: "top"
|
|
71
55
|
}, tooltipProps), {}, {
|
|
72
56
|
children: /*#__PURE__*/jsxRuntime.jsx("span", {
|
|
73
|
-
children: /*#__PURE__*/jsxRuntime.jsx(
|
|
57
|
+
children: /*#__PURE__*/jsxRuntime.jsx(Switch, _objectSpread$1({
|
|
74
58
|
"data-cy": switchDataCy,
|
|
75
59
|
"data-testid": "toggle-feature-card-switch",
|
|
76
60
|
disabled: isDisabled
|
|
@@ -82,7 +66,7 @@ var TooltipSwitch = function TooltipSwitch(_ref) {
|
|
|
82
66
|
};
|
|
83
67
|
|
|
84
68
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
85
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {
|
|
69
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
86
70
|
var ToggleFeatureCard = function ToggleFeatureCard(_ref) {
|
|
87
71
|
var _ref$title = _ref.title,
|
|
88
72
|
title = _ref$title === void 0 ? "" : _ref$title,
|
|
@@ -110,7 +94,7 @@ var ToggleFeatureCard = function ToggleFeatureCard(_ref) {
|
|
|
110
94
|
var cardRef = React.useRef();
|
|
111
95
|
var id = neetoCist.slugify(title);
|
|
112
96
|
var _useState = React.useState(false),
|
|
113
|
-
_useState2 =
|
|
97
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
114
98
|
isEditing = _useState2[0],
|
|
115
99
|
setIsEditing = _useState2[1];
|
|
116
100
|
var _useFormikContext = formik.useFormikContext(),
|
|
@@ -128,7 +112,7 @@ var ToggleFeatureCard = function ToggleFeatureCard(_ref) {
|
|
|
128
112
|
setIsEditing(true);
|
|
129
113
|
}, [values, errors]);
|
|
130
114
|
var _useState3 = React.useState(location.hash.split("#")[1] === id),
|
|
131
|
-
_useState4 =
|
|
115
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
132
116
|
shouldHighlight = _useState4[0],
|
|
133
117
|
setShouldHighlight = _useState4[1];
|
|
134
118
|
var hasInput = (values === null || values === void 0 ? void 0 : values[switchName]) && (inputProps === null || inputProps === void 0 ? void 0 : inputProps.name);
|
|
@@ -137,14 +121,14 @@ var ToggleFeatureCard = function ToggleFeatureCard(_ref) {
|
|
|
137
121
|
setIsEditing(false);
|
|
138
122
|
hasInput && setFieldValue(inputProps === null || inputProps === void 0 ? void 0 : inputProps.name, initialValues === null || initialValues === void 0 ? void 0 : initialValues[inputProps === null || inputProps === void 0 ? void 0 : inputProps.name]);
|
|
139
123
|
};
|
|
140
|
-
|
|
124
|
+
useOnClickOutside(cardRef, function () {
|
|
141
125
|
return setShouldHighlight(false);
|
|
142
126
|
});
|
|
143
127
|
useScrollIntoView({
|
|
144
128
|
elementId: id,
|
|
145
129
|
trigger: shouldHighlight
|
|
146
130
|
});
|
|
147
|
-
var inputRef =
|
|
131
|
+
var inputRef = useHotkeys("enter", function () {
|
|
148
132
|
return setIsEditing(false);
|
|
149
133
|
}, {
|
|
150
134
|
mode: "scoped"
|
|
@@ -154,12 +138,12 @@ var ToggleFeatureCard = function ToggleFeatureCard(_ref) {
|
|
|
154
138
|
"data-cy": "feature-card-container",
|
|
155
139
|
"data-testid": "toggle-feature-card",
|
|
156
140
|
ref: cardRef,
|
|
157
|
-
className:
|
|
141
|
+
className: classnames("neeto-ui-bg-white neeto-ui-rounded-lg flex flex-col space-y-2 border p-4", {
|
|
158
142
|
"neeto-ui-border-gray-300": !shouldHighlight
|
|
159
143
|
}, {
|
|
160
144
|
"toggle-feature-card--highlighted": shouldHighlight
|
|
161
145
|
}),
|
|
162
|
-
children: [/*#__PURE__*/jsxRuntime.jsxs(
|
|
146
|
+
children: [/*#__PURE__*/jsxRuntime.jsxs(Label, {
|
|
163
147
|
className: "flex flex-row items-center gap-2",
|
|
164
148
|
children: [/*#__PURE__*/jsxRuntime.jsx(TooltipSwitch, _objectSpread(_objectSpread({}, _objectSpread({
|
|
165
149
|
enabledCondition: enabledCondition,
|
|
@@ -167,7 +151,7 @@ var ToggleFeatureCard = function ToggleFeatureCard(_ref) {
|
|
|
167
151
|
switchDataCy: switchDataCy
|
|
168
152
|
}, switchProps)), {}, {
|
|
169
153
|
name: switchName
|
|
170
|
-
})), /*#__PURE__*/jsxRuntime.jsx(
|
|
154
|
+
})), /*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
171
155
|
component: "span",
|
|
172
156
|
"data-cy": titleDataCy,
|
|
173
157
|
"data-testid": "toggle-feature-card-title",
|
|
@@ -175,7 +159,7 @@ var ToggleFeatureCard = function ToggleFeatureCard(_ref) {
|
|
|
175
159
|
weight: "semibold",
|
|
176
160
|
children: title
|
|
177
161
|
})]
|
|
178
|
-
}), /*#__PURE__*/jsxRuntime.jsx(
|
|
162
|
+
}), /*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
179
163
|
className: "mb-4 whitespace-pre-line",
|
|
180
164
|
"data-cy": descriptionDataCy,
|
|
181
165
|
"data-testid": "toggle-feature-card-description",
|
|
@@ -183,7 +167,7 @@ var ToggleFeatureCard = function ToggleFeatureCard(_ref) {
|
|
|
183
167
|
children: description
|
|
184
168
|
}), hasInput && !isEditing && /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
185
169
|
className: "m-0 flex flex-row items-center space-x-2",
|
|
186
|
-
children: [inputProps === null || inputProps === void 0 ? void 0 : inputProps.display, /*#__PURE__*/jsxRuntime.jsx(
|
|
170
|
+
children: [inputProps === null || inputProps === void 0 ? void 0 : inputProps.display, /*#__PURE__*/jsxRuntime.jsx(Button, _objectSpread({
|
|
187
171
|
"data-cy": inputProps === null || inputProps === void 0 ? void 0 : inputProps.editButtonDataCy,
|
|
188
172
|
"data-testid": "toggle-feature-card-input-display-edit",
|
|
189
173
|
label: t("neetoMolecules.common.actions.edit"),
|
|
@@ -194,7 +178,7 @@ var ToggleFeatureCard = function ToggleFeatureCard(_ref) {
|
|
|
194
178
|
return setIsEditing(true);
|
|
195
179
|
}
|
|
196
180
|
}, editButtonProps))]
|
|
197
|
-
}), hasInput && isEditing && /*#__PURE__*/jsxRuntime.jsx(
|
|
181
|
+
}), hasInput && isEditing && /*#__PURE__*/jsxRuntime.jsx(Input, _objectSpread({
|
|
198
182
|
autoFocus: true,
|
|
199
183
|
"data-cy": inputProps === null || inputProps === void 0 ? void 0 : inputProps.dataCy,
|
|
200
184
|
"data-testid": "toggle-feature-card-input-field",
|
|
@@ -203,9 +187,9 @@ var ToggleFeatureCard = function ToggleFeatureCard(_ref) {
|
|
|
203
187
|
placeholder: inputProps === null || inputProps === void 0 ? void 0 : inputProps.placeholder,
|
|
204
188
|
ref: inputRef,
|
|
205
189
|
size: "medium",
|
|
206
|
-
suffix: /*#__PURE__*/jsxRuntime.jsx(
|
|
190
|
+
suffix: /*#__PURE__*/jsxRuntime.jsx(Button, {
|
|
207
191
|
"data-testid": "toggle-feature-card-input-reset",
|
|
208
|
-
icon:
|
|
192
|
+
icon: Close,
|
|
209
193
|
size: "small",
|
|
210
194
|
style: "text",
|
|
211
195
|
type: "button",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToggleFeatureCard.js","sources":["../../src/components/ToggleFeatureCard/hooks/useScrollIntoView.js","../../src/components/ToggleFeatureCard/ToolTipSwitch.jsx","../../src/components/ToggleFeatureCard/index.jsx"],"sourcesContent":["import { useEffect } from \"react\";\n\nconst useScrollIntoView = ({ elementId, trigger }) => {\n useEffect(() => {\n if (!trigger) return;\n document.getElementById(elementId)?.scrollIntoView();\n }, [trigger]);\n};\n\nexport default useScrollIntoView;\n","import { Tooltip } from \"neetoui\";\nimport { Switch as FormikSwitch } from \"neetoui/formik\";\n\nconst TooltipSwitch = ({\n enabledCondition,\n name = \"\",\n isDisabled = false,\n switchDataCy,\n tooltipProps = {},\n ...otherProps\n}) => {\n const tooltipContent = enabledCondition\n ? tooltipProps.enabledSwitchText\n : tooltipProps.disabledSwitchText;\n\n return (\n <Tooltip\n content={tooltipContent}\n disabled={!tooltipContent}\n position=\"top\"\n {...tooltipProps}\n >\n <span>\n <FormikSwitch\n data-cy={switchDataCy}\n data-testid=\"toggle-feature-card-switch\"\n disabled={isDisabled}\n {...{ name, ...otherProps }}\n />\n </span>\n </Tooltip>\n );\n};\n\nexport default TooltipSwitch;\n","import { useRef, useState, useEffect } from \"react\";\n\nimport classnames from \"classnames\";\nimport { useFormikContext } from \"formik\";\nimport { slugify } from \"neetocist\";\nimport useOnClickOutside from \"neetocommons/react-utils/useOnClickOutside\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Close } from \"neetoicons\";\nimport { Typography, Label, Button } from \"neetoui\";\nimport { Input } from \"neetoui/formik\";\nimport PropTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { SIZES } from \"./constants\";\nimport useScrollIntoView from \"./hooks/useScrollIntoView\";\nimport \"./toggleFeatureCard.scss\";\nimport TooltipSwitch from \"./ToolTipSwitch\";\n\nconst ToggleFeatureCard = ({\n title = \"\",\n description = null,\n switchName = \"switch\",\n titleDataCy = \"\",\n switchDataCy = \"\",\n descriptionDataCy = \"\",\n isDisabled = false,\n children = null,\n inputProps,\n switchProps = {},\n editButtonProps = {},\n}) => {\n const { t } = useTranslation();\n const cardRef = useRef();\n const id = slugify(title);\n\n const [isEditing, setIsEditing] = useState(false);\n\n const { setFieldValue, values, submitCount, errors, initialValues } =\n useFormikContext();\n\n useEffect(() => {\n if (!(submitCount >= 1 && isEmpty(errors))) return;\n setIsEditing(false);\n }, [submitCount]);\n\n useEffect(() => {\n if (isEmpty(errors)) return;\n setIsEditing(true);\n }, [values, errors]);\n\n const [shouldHighlight, setShouldHighlight] = useState(\n location.hash.split(\"#\")[1] === id\n );\n\n const hasInput = values?.[switchName] && inputProps?.name;\n const enabledCondition = values?.[switchName];\n\n const handleInputReset = () => {\n setIsEditing(false);\n hasInput &&\n setFieldValue(inputProps?.name, initialValues?.[inputProps?.name]);\n };\n\n useOnClickOutside(cardRef, () => setShouldHighlight(false));\n\n useScrollIntoView({ elementId: id, trigger: shouldHighlight });\n\n const inputRef = useHotkeys(\"enter\", () => setIsEditing(false), {\n mode: \"scoped\",\n });\n\n return (\n <div\n {...{ id }}\n data-cy=\"feature-card-container\"\n data-testid=\"toggle-feature-card\"\n ref={cardRef}\n className={classnames(\n \"neeto-ui-bg-white neeto-ui-rounded-lg flex flex-col space-y-2 border p-4\",\n { \"neeto-ui-border-gray-300\": !shouldHighlight },\n { \"toggle-feature-card--highlighted\": shouldHighlight }\n )}\n >\n <Label className=\"flex flex-row items-center gap-2\">\n <TooltipSwitch\n {...{\n enabledCondition,\n isDisabled,\n switchDataCy,\n ...switchProps,\n }}\n name={switchName}\n />\n <Typography\n component=\"span\"\n data-cy={titleDataCy}\n data-testid=\"toggle-feature-card-title\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n </Label>\n <Typography\n className=\"mb-4 whitespace-pre-line\"\n data-cy={descriptionDataCy}\n data-testid=\"toggle-feature-card-description\"\n style=\"body2\"\n >\n {description}\n </Typography>\n {hasInput && !isEditing && (\n <div className=\"m-0 flex flex-row items-center space-x-2\">\n {inputProps?.display}\n <Button\n data-cy={inputProps?.editButtonDataCy}\n data-testid=\"toggle-feature-card-input-display-edit\"\n label={t(\"neetoMolecules.common.actions.edit\")}\n size=\"small\"\n style=\"link\"\n type=\"button\"\n onClick={() => setIsEditing(true)}\n {...editButtonProps}\n />\n </div>\n )}\n {hasInput && isEditing && (\n <Input\n autoFocus\n data-cy={inputProps?.dataCy}\n data-testid=\"toggle-feature-card-input-field\"\n label={inputProps?.label}\n name={inputProps?.name}\n placeholder={inputProps?.placeholder}\n ref={inputRef}\n size=\"medium\"\n suffix={\n <Button\n data-testid=\"toggle-feature-card-input-reset\"\n icon={Close}\n size=\"small\"\n style=\"text\"\n type=\"button\"\n onClick={handleInputReset}\n />\n }\n {...inputProps}\n />\n )}\n {children}\n </div>\n );\n};\n\nToggleFeatureCard.propTypes = {\n /**\n * The title that will be displayed for the card.\n */\n title: PropTypes.string,\n /**\n * The descripton text for the particular feature or setting.\n */\n description: PropTypes.string,\n /**\n * The formik name of the feature or setting to be toggled. eg:\n {switchName: \"enableEmails\"}.\n */\n switchName: PropTypes.string,\n /**\n * Can be used to disable the toggle switch conditionally.\n */\n isDisabled: PropTypes.bool,\n /**\n * Custom child components to be displayed in the card.\n */\n children: PropTypes.node,\n /**\n * Can be used to add an input field for a setting or a feature.\n For example, `Enable email notifications` card can have an email input field.\n */\n inputProps: PropTypes.shape({\n name: PropTypes.string,\n display: PropTypes.node,\n label: PropTypes.string,\n editButtonTooltip: PropTypes.string,\n editButtonDataCy: PropTypes.string,\n placeholder: PropTypes.string,\n dataCy: PropTypes.string,\n onChange: PropTypes.func,\n suffix: PropTypes.node,\n prefix: PropTypes.node,\n className: PropTypes.string,\n nakedInput: PropTypes.bool,\n size: PropTypes.oneOf(Object.values(SIZES)),\n type: PropTypes.string,\n maxLength: PropTypes.number,\n contentSize: PropTypes.number,\n unlimitedChars: PropTypes.bool,\n }),\n /**\n * Can be used to add props to the switch component.\n */\n switchProps: PropTypes.shape({\n onChange: PropTypes.func,\n className: PropTypes.string,\n checked: PropTypes.bool,\n tooltipProps: PropTypes.shape({\n enabledSwitchText: PropTypes.string,\n disabledSwitchText: PropTypes.string,\n }),\n }),\n /**\n * Can be used to add props to the edit button component.\n */\n editButtonProps: PropTypes.shape({\n onClick: PropTypes.func,\n className: PropTypes.string,\n style: PropTypes.string,\n size: PropTypes.string,\n type: PropTypes.string,\n tooltipProps: PropTypes.object,\n }),\n};\n\nexport default ToggleFeatureCard;\n"],"names":["useScrollIntoView","_ref","elementId","trigger","useEffect","_document$getElementB","document","getElementById","scrollIntoView","TooltipSwitch","enabledCondition","_ref$name","name","_ref$isDisabled","isDisabled","switchDataCy","_ref$tooltipProps","tooltipProps","otherProps","_objectWithoutProperties","_excluded","tooltipContent","enabledSwitchText","disabledSwitchText","_jsx","Tooltip","_objectSpread","content","disabled","position","children","FormikSwitch","ToggleFeatureCard","_ref$title","title","_ref$description","description","_ref$switchName","switchName","_ref$titleDataCy","titleDataCy","_ref$switchDataCy","_ref$descriptionDataC","descriptionDataCy","_ref$children","inputProps","_ref$switchProps","switchProps","_ref$editButtonProps","editButtonProps","_useTranslation","useTranslation","t","cardRef","useRef","id","slugify","_useState","useState","_useState2","_slicedToArray","isEditing","setIsEditing","_useFormikContext","useFormikContext","setFieldValue","values","submitCount","errors","initialValues","isEmpty","_useState3","location","hash","split","_useState4","shouldHighlight","setShouldHighlight","hasInput","handleInputReset","useOnClickOutside","inputRef","useHotkeys","mode","_jsxs","ref","className","classnames","Label","Typography","component","style","weight","display","Button","editButtonDataCy","label","size","type","onClick","Input","autoFocus","dataCy","placeholder","suffix","icon","Close"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ToggleFeatureCard.js","sources":["../../src/components/ToggleFeatureCard/hooks/useScrollIntoView.js","../../src/components/ToggleFeatureCard/ToolTipSwitch.jsx","../../src/components/ToggleFeatureCard/index.jsx"],"sourcesContent":["import { useEffect } from \"react\";\n\nconst useScrollIntoView = ({ elementId, trigger }) => {\n useEffect(() => {\n if (!trigger) return;\n document.getElementById(elementId)?.scrollIntoView();\n }, [trigger]);\n};\n\nexport default useScrollIntoView;\n","import { Tooltip } from \"neetoui\";\nimport { Switch as FormikSwitch } from \"neetoui/formik\";\n\nconst TooltipSwitch = ({\n enabledCondition,\n name = \"\",\n isDisabled = false,\n switchDataCy,\n tooltipProps = {},\n ...otherProps\n}) => {\n const tooltipContent = enabledCondition\n ? tooltipProps.enabledSwitchText\n : tooltipProps.disabledSwitchText;\n\n return (\n <Tooltip\n content={tooltipContent}\n disabled={!tooltipContent}\n position=\"top\"\n {...tooltipProps}\n >\n <span>\n <FormikSwitch\n data-cy={switchDataCy}\n data-testid=\"toggle-feature-card-switch\"\n disabled={isDisabled}\n {...{ name, ...otherProps }}\n />\n </span>\n </Tooltip>\n );\n};\n\nexport default TooltipSwitch;\n","import { useRef, useState, useEffect } from \"react\";\n\nimport classnames from \"classnames\";\nimport { useFormikContext } from \"formik\";\nimport { slugify } from \"neetocist\";\nimport useOnClickOutside from \"neetocommons/react-utils/useOnClickOutside\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Close } from \"neetoicons\";\nimport { Typography, Label, Button } from \"neetoui\";\nimport { Input } from \"neetoui/formik\";\nimport PropTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { SIZES } from \"./constants\";\nimport useScrollIntoView from \"./hooks/useScrollIntoView\";\nimport \"./toggleFeatureCard.scss\";\nimport TooltipSwitch from \"./ToolTipSwitch\";\n\nconst ToggleFeatureCard = ({\n title = \"\",\n description = null,\n switchName = \"switch\",\n titleDataCy = \"\",\n switchDataCy = \"\",\n descriptionDataCy = \"\",\n isDisabled = false,\n children = null,\n inputProps,\n switchProps = {},\n editButtonProps = {},\n}) => {\n const { t } = useTranslation();\n const cardRef = useRef();\n const id = slugify(title);\n\n const [isEditing, setIsEditing] = useState(false);\n\n const { setFieldValue, values, submitCount, errors, initialValues } =\n useFormikContext();\n\n useEffect(() => {\n if (!(submitCount >= 1 && isEmpty(errors))) return;\n setIsEditing(false);\n }, [submitCount]);\n\n useEffect(() => {\n if (isEmpty(errors)) return;\n setIsEditing(true);\n }, [values, errors]);\n\n const [shouldHighlight, setShouldHighlight] = useState(\n location.hash.split(\"#\")[1] === id\n );\n\n const hasInput = values?.[switchName] && inputProps?.name;\n const enabledCondition = values?.[switchName];\n\n const handleInputReset = () => {\n setIsEditing(false);\n hasInput &&\n setFieldValue(inputProps?.name, initialValues?.[inputProps?.name]);\n };\n\n useOnClickOutside(cardRef, () => setShouldHighlight(false));\n\n useScrollIntoView({ elementId: id, trigger: shouldHighlight });\n\n const inputRef = useHotkeys(\"enter\", () => setIsEditing(false), {\n mode: \"scoped\",\n });\n\n return (\n <div\n {...{ id }}\n data-cy=\"feature-card-container\"\n data-testid=\"toggle-feature-card\"\n ref={cardRef}\n className={classnames(\n \"neeto-ui-bg-white neeto-ui-rounded-lg flex flex-col space-y-2 border p-4\",\n { \"neeto-ui-border-gray-300\": !shouldHighlight },\n { \"toggle-feature-card--highlighted\": shouldHighlight }\n )}\n >\n <Label className=\"flex flex-row items-center gap-2\">\n <TooltipSwitch\n {...{\n enabledCondition,\n isDisabled,\n switchDataCy,\n ...switchProps,\n }}\n name={switchName}\n />\n <Typography\n component=\"span\"\n data-cy={titleDataCy}\n data-testid=\"toggle-feature-card-title\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n </Label>\n <Typography\n className=\"mb-4 whitespace-pre-line\"\n data-cy={descriptionDataCy}\n data-testid=\"toggle-feature-card-description\"\n style=\"body2\"\n >\n {description}\n </Typography>\n {hasInput && !isEditing && (\n <div className=\"m-0 flex flex-row items-center space-x-2\">\n {inputProps?.display}\n <Button\n data-cy={inputProps?.editButtonDataCy}\n data-testid=\"toggle-feature-card-input-display-edit\"\n label={t(\"neetoMolecules.common.actions.edit\")}\n size=\"small\"\n style=\"link\"\n type=\"button\"\n onClick={() => setIsEditing(true)}\n {...editButtonProps}\n />\n </div>\n )}\n {hasInput && isEditing && (\n <Input\n autoFocus\n data-cy={inputProps?.dataCy}\n data-testid=\"toggle-feature-card-input-field\"\n label={inputProps?.label}\n name={inputProps?.name}\n placeholder={inputProps?.placeholder}\n ref={inputRef}\n size=\"medium\"\n suffix={\n <Button\n data-testid=\"toggle-feature-card-input-reset\"\n icon={Close}\n size=\"small\"\n style=\"text\"\n type=\"button\"\n onClick={handleInputReset}\n />\n }\n {...inputProps}\n />\n )}\n {children}\n </div>\n );\n};\n\nToggleFeatureCard.propTypes = {\n /**\n * The title that will be displayed for the card.\n */\n title: PropTypes.string,\n /**\n * The descripton text for the particular feature or setting.\n */\n description: PropTypes.string,\n /**\n * The formik name of the feature or setting to be toggled. eg:\n {switchName: \"enableEmails\"}.\n */\n switchName: PropTypes.string,\n /**\n * Can be used to disable the toggle switch conditionally.\n */\n isDisabled: PropTypes.bool,\n /**\n * Custom child components to be displayed in the card.\n */\n children: PropTypes.node,\n /**\n * Can be used to add an input field for a setting or a feature.\n For example, `Enable email notifications` card can have an email input field.\n */\n inputProps: PropTypes.shape({\n name: PropTypes.string,\n display: PropTypes.node,\n label: PropTypes.string,\n editButtonTooltip: PropTypes.string,\n editButtonDataCy: PropTypes.string,\n placeholder: PropTypes.string,\n dataCy: PropTypes.string,\n onChange: PropTypes.func,\n suffix: PropTypes.node,\n prefix: PropTypes.node,\n className: PropTypes.string,\n nakedInput: PropTypes.bool,\n size: PropTypes.oneOf(Object.values(SIZES)),\n type: PropTypes.string,\n maxLength: PropTypes.number,\n contentSize: PropTypes.number,\n unlimitedChars: PropTypes.bool,\n }),\n /**\n * Can be used to add props to the switch component.\n */\n switchProps: PropTypes.shape({\n onChange: PropTypes.func,\n className: PropTypes.string,\n checked: PropTypes.bool,\n tooltipProps: PropTypes.shape({\n enabledSwitchText: PropTypes.string,\n disabledSwitchText: PropTypes.string,\n }),\n }),\n /**\n * Can be used to add props to the edit button component.\n */\n editButtonProps: PropTypes.shape({\n onClick: PropTypes.func,\n className: PropTypes.string,\n style: PropTypes.string,\n size: PropTypes.string,\n type: PropTypes.string,\n tooltipProps: PropTypes.object,\n }),\n};\n\nexport default ToggleFeatureCard;\n"],"names":["useScrollIntoView","_ref","elementId","trigger","useEffect","_document$getElementB","document","getElementById","scrollIntoView","TooltipSwitch","enabledCondition","_ref$name","name","_ref$isDisabled","isDisabled","switchDataCy","_ref$tooltipProps","tooltipProps","otherProps","_objectWithoutProperties","_excluded","tooltipContent","enabledSwitchText","disabledSwitchText","_jsx","Tooltip","_objectSpread","content","disabled","position","children","FormikSwitch","ToggleFeatureCard","_ref$title","title","_ref$description","description","_ref$switchName","switchName","_ref$titleDataCy","titleDataCy","_ref$switchDataCy","_ref$descriptionDataC","descriptionDataCy","_ref$children","inputProps","_ref$switchProps","switchProps","_ref$editButtonProps","editButtonProps","_useTranslation","useTranslation","t","cardRef","useRef","id","slugify","_useState","useState","_useState2","_slicedToArray","isEditing","setIsEditing","_useFormikContext","useFormikContext","setFieldValue","values","submitCount","errors","initialValues","isEmpty","_useState3","location","hash","split","_useState4","shouldHighlight","setShouldHighlight","hasInput","handleInputReset","useOnClickOutside","inputRef","useHotkeys","mode","_jsxs","ref","className","classnames","Label","Typography","component","style","weight","display","Button","editButtonDataCy","label","size","type","onClick","Input","autoFocus","dataCy","placeholder","suffix","icon","Close"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_commonjsHelpers-BJu3ubxk.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
|