@bigbinary/neeto-molecules 1.19.10-beta → 1.19.11
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/Builder.js +5 -1
- package/dist/Builder.js.map +1 -1
- package/dist/CalendarView.js +8 -2
- package/dist/CalendarView.js.map +1 -1
- package/dist/{Chevron-e9377de4.js → Chevron-fe44fbdd.js} +6 -7
- package/dist/Chevron-fe44fbdd.js.map +1 -0
- package/dist/Codeblock.js +1 -1
- package/dist/Columns.js +6 -2
- package/dist/Columns.js.map +1 -1
- package/dist/ConfigurePageSidebar.js +10 -5
- package/dist/ConfigurePageSidebar.js.map +1 -1
- package/dist/ConfirmationModal.js +5 -2
- package/dist/ConfirmationModal.js.map +1 -1
- package/dist/CopyToClipboardButton.js +1 -1
- package/dist/Currency.js +2 -2
- package/dist/CustomDomain.js +13 -3
- package/dist/CustomDomain.js.map +1 -1
- package/dist/CustomDomainDashboard.js +16 -4
- package/dist/CustomDomainDashboard.js.map +1 -1
- package/dist/DateFormat.js +2 -1
- package/dist/DateFormat.js.map +1 -1
- package/dist/DateRangeFilter.js +2 -1
- package/dist/DateRangeFilter.js.map +1 -1
- package/dist/DeleteArchiveModal.js +4 -1
- package/dist/DeleteArchiveModal.js.map +1 -1
- package/dist/DocumentEditor.js +2 -2
- package/dist/DownloadMobileAppCallout.js +1 -1
- package/dist/DynamicVariables.js +2 -1
- package/dist/DynamicVariables.js.map +1 -1
- package/dist/EmailForm.js +13 -2
- package/dist/EmailForm.js.map +1 -1
- package/dist/EmailPreview.js +2 -1
- package/dist/EmailPreview.js.map +1 -1
- package/dist/EmojiPicker.js +1 -1
- package/dist/EmojiReactions.js +2 -1
- package/dist/EmojiReactions.js.map +1 -1
- package/dist/ErrorPage.js +2 -1
- package/dist/ErrorPage.js.map +1 -1
- package/dist/FloatingActionMenu.js +9 -2
- package/dist/FloatingActionMenu.js.map +1 -1
- package/dist/Header.js +5 -1
- package/dist/Header.js.map +1 -1
- package/dist/HelpPopover.js +3 -1
- package/dist/HelpPopover.js.map +1 -1
- package/dist/IconPicker.js +6 -1
- package/dist/IconPicker.js.map +1 -1
- package/dist/InlineInput.js +2 -1
- package/dist/InlineInput.js.map +1 -1
- package/dist/Insights.js +6 -1
- package/dist/Insights.js.map +1 -1
- package/dist/IntegrationCard.js +6 -1
- package/dist/IntegrationCard.js.map +1 -1
- package/dist/IntegrationDisconnectAlert.js +1 -1
- package/dist/IntegrationWalkthroughModal.js +3 -1
- package/dist/IntegrationWalkthroughModal.js.map +1 -1
- package/dist/IpRestriction.js +10 -2
- package/dist/IpRestriction.js.map +1 -1
- package/dist/KeyboardShortcuts.js +3 -1
- package/dist/KeyboardShortcuts.js.map +1 -1
- package/dist/LoginPage.js +5 -2
- package/dist/LoginPage.js.map +1 -1
- package/dist/MenuBar.js +3 -1
- package/dist/MenuBar.js.map +1 -1
- package/dist/Metadata.js +2 -1
- package/dist/Metadata.js.map +1 -1
- package/dist/MoreDropdown.js +3 -1
- package/dist/MoreDropdown.js.map +1 -1
- package/dist/NavigationHeader.js +6 -1
- package/dist/NavigationHeader.js.map +1 -1
- package/dist/NeetoWidget.js +11 -2
- package/dist/NeetoWidget.js.map +1 -1
- package/dist/Onboarding.js +3 -1
- package/dist/Onboarding.js.map +1 -1
- package/dist/OptionFields.js +5 -1
- package/dist/OptionFields.js.map +1 -1
- package/dist/PageLoader.js +1 -1
- package/dist/PhoneNumber.js +4 -1
- package/dist/PhoneNumber.js.map +1 -1
- package/dist/ProductEmbed.js +11 -1
- package/dist/ProductEmbed.js.map +1 -1
- package/dist/PublishBlock.js +3 -1
- package/dist/PublishBlock.js.map +1 -1
- package/dist/PublishYourItem.js +1 -1
- package/dist/Rename.js +5 -1
- package/dist/Rename.js.map +1 -1
- package/dist/ResponsiveDevicePicker.js +1 -1
- package/dist/Schedule.js +8 -2
- package/dist/Schedule.js.map +1 -1
- package/dist/Search.js +1 -1
- package/dist/SendToFields.js +6 -2
- package/dist/SendToFields.js.map +1 -1
- package/dist/Settings.js +7 -1
- package/dist/Settings.js.map +1 -1
- package/dist/ShareRecordingPane.js +7 -1
- package/dist/ShareRecordingPane.js.map +1 -1
- package/dist/ShareViaEmail.js +12 -2
- package/dist/ShareViaEmail.js.map +1 -1
- package/dist/ShareViaLink.js +9 -2
- package/dist/ShareViaLink.js.map +1 -1
- package/dist/Sidebar.js +11 -4
- package/dist/Sidebar.js.map +1 -1
- package/dist/StickyRibbonsContainer.js +1 -1
- package/dist/SubHeader.js +7 -2
- package/dist/SubHeader.js.map +1 -1
- package/dist/SuffixedInput.js +2 -2
- package/dist/Taxonomy.js +16 -3
- package/dist/Taxonomy.js.map +1 -1
- package/dist/TimeFormat.js +2 -1
- package/dist/TimeFormat.js.map +1 -1
- package/dist/TimezoneMismatchModal.js +3 -1
- package/dist/TimezoneMismatchModal.js.map +1 -1
- package/dist/ToggleFeatureCard.js +6 -2
- package/dist/ToggleFeatureCard.js.map +1 -1
- package/dist/cjs/Breadcrumbs.js +3 -2
- package/dist/cjs/Breadcrumbs.js.map +1 -1
- package/dist/cjs/Builder.js +21 -14
- package/dist/cjs/Builder.js.map +1 -1
- package/dist/cjs/CalendarView.js +22 -12
- package/dist/cjs/CalendarView.js.map +1 -1
- package/dist/cjs/{Chevron-90e580d5.js → Chevron-37ef38ee.js} +9 -9
- package/dist/cjs/Chevron-37ef38ee.js.map +1 -0
- package/dist/cjs/Codeblock.js +1 -1
- package/dist/cjs/Columns.js +6 -2
- package/dist/cjs/Columns.js.map +1 -1
- package/dist/cjs/ConfigurePageSidebar.js +12 -6
- package/dist/cjs/ConfigurePageSidebar.js.map +1 -1
- package/dist/cjs/ConfirmationModal.js +17 -9
- package/dist/cjs/ConfirmationModal.js.map +1 -1
- package/dist/cjs/CopyToClipboardButton.js +3 -2
- package/dist/cjs/CopyToClipboardButton.js.map +1 -1
- package/dist/cjs/Currency.js +6 -4
- package/dist/cjs/Currency.js.map +1 -1
- package/dist/cjs/CustomDomain.js +19 -6
- package/dist/cjs/CustomDomain.js.map +1 -1
- package/dist/cjs/CustomDomainDashboard.js +25 -9
- package/dist/cjs/CustomDomainDashboard.js.map +1 -1
- package/dist/cjs/DateFormat.js +6 -3
- package/dist/cjs/DateFormat.js.map +1 -1
- package/dist/cjs/DateRangeFilter.js +6 -3
- package/dist/cjs/DateRangeFilter.js.map +1 -1
- package/dist/cjs/DeleteArchiveModal.js +15 -8
- package/dist/cjs/DeleteArchiveModal.js.map +1 -1
- package/dist/cjs/DocumentEditor.js +6 -4
- package/dist/cjs/DocumentEditor.js.map +1 -1
- package/dist/cjs/DownloadMobileAppCallout.js +3 -2
- package/dist/cjs/DownloadMobileAppCallout.js.map +1 -1
- package/dist/cjs/DynamicVariables.js +7 -4
- package/dist/cjs/DynamicVariables.js.map +1 -1
- package/dist/cjs/EmailForm.js +29 -11
- package/dist/cjs/EmailForm.js.map +1 -1
- package/dist/cjs/EmailPreview.js +12 -9
- package/dist/cjs/EmailPreview.js.map +1 -1
- package/dist/cjs/EmojiPicker.js +3 -2
- package/dist/cjs/EmojiPicker.js.map +1 -1
- package/dist/cjs/EmojiReactions.js +6 -3
- package/dist/cjs/EmojiReactions.js.map +1 -1
- package/dist/cjs/ErrorPage.js +8 -5
- package/dist/cjs/ErrorPage.js.map +1 -1
- package/dist/cjs/FloatingActionMenu.js +41 -28
- package/dist/cjs/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/Header.js +7 -2
- package/dist/cjs/Header.js.map +1 -1
- package/dist/cjs/HelpPopover.js +11 -6
- package/dist/cjs/HelpPopover.js.map +1 -1
- package/dist/cjs/IconPicker.js +20 -9
- package/dist/cjs/IconPicker.js.map +1 -1
- package/dist/cjs/InlineInput.js +7 -4
- package/dist/cjs/InlineInput.js.map +1 -1
- package/dist/cjs/Insights.js +18 -11
- package/dist/cjs/Insights.js.map +1 -1
- package/dist/cjs/IntegrationCard.js +18 -8
- package/dist/cjs/IntegrationCard.js.map +1 -1
- package/dist/cjs/IntegrationDisconnectAlert.js +3 -2
- package/dist/cjs/IntegrationDisconnectAlert.js.map +1 -1
- package/dist/cjs/IntegrationWalkthroughModal.js +10 -5
- package/dist/cjs/IntegrationWalkthroughModal.js.map +1 -1
- package/dist/cjs/IpRestriction.js +43 -25
- package/dist/cjs/IpRestriction.js.map +1 -1
- package/dist/cjs/KeyboardShortcuts.js +13 -8
- package/dist/cjs/KeyboardShortcuts.js.map +1 -1
- package/dist/cjs/LoginPage.js +21 -13
- package/dist/cjs/LoginPage.js.map +1 -1
- package/dist/cjs/MenuBar.js +15 -10
- package/dist/cjs/MenuBar.js.map +1 -1
- package/dist/cjs/Metadata.js +10 -7
- package/dist/cjs/Metadata.js.map +1 -1
- package/dist/cjs/MoreDropdown.js +14 -9
- package/dist/cjs/MoreDropdown.js.map +1 -1
- package/dist/cjs/NavigationHeader.js +10 -3
- package/dist/cjs/NavigationHeader.js.map +1 -1
- package/dist/cjs/NeetoWidget.js +52 -32
- package/dist/cjs/NeetoWidget.js.map +1 -1
- package/dist/cjs/Onboarding.js +16 -11
- package/dist/cjs/Onboarding.js.map +1 -1
- package/dist/cjs/OptionFields.js +25 -16
- package/dist/cjs/OptionFields.js.map +1 -1
- package/dist/cjs/PageLoader.js +3 -2
- package/dist/cjs/PageLoader.js.map +1 -1
- package/dist/cjs/PhoneNumber.js +13 -6
- package/dist/cjs/PhoneNumber.js.map +1 -1
- package/dist/cjs/ProductEmbed.js +53 -32
- package/dist/cjs/ProductEmbed.js.map +1 -1
- package/dist/cjs/PublishBlock.js +12 -7
- package/dist/cjs/PublishBlock.js.map +1 -1
- package/dist/cjs/PublishYourItem.js +4 -3
- package/dist/cjs/PublishYourItem.js.map +1 -1
- package/dist/cjs/Rename.js +12 -5
- package/dist/cjs/Rename.js.map +1 -1
- package/dist/cjs/ResponsiveDevicePicker.js +3 -2
- package/dist/cjs/ResponsiveDevicePicker.js.map +1 -1
- package/dist/cjs/Schedule.js +37 -23
- package/dist/cjs/Schedule.js.map +1 -1
- package/dist/cjs/Search.js +3 -2
- package/dist/cjs/Search.js.map +1 -1
- package/dist/cjs/SendToFields.js +30 -20
- package/dist/cjs/SendToFields.js.map +1 -1
- package/dist/cjs/Settings.js +15 -6
- package/dist/cjs/Settings.js.map +1 -1
- package/dist/cjs/ShareRecordingPane.js +21 -9
- package/dist/cjs/ShareRecordingPane.js.map +1 -1
- package/dist/cjs/ShareViaEmail.js +33 -15
- package/dist/cjs/ShareViaEmail.js.map +1 -1
- package/dist/cjs/ShareViaLink.js +37 -23
- package/dist/cjs/ShareViaLink.js.map +1 -1
- package/dist/cjs/Sidebar.js +15 -6
- package/dist/cjs/Sidebar.js.map +1 -1
- package/dist/cjs/StickyRibbonsContainer.js +3 -2
- package/dist/cjs/StickyRibbonsContainer.js.map +1 -1
- package/dist/cjs/SubHeader.js +11 -5
- package/dist/cjs/SubHeader.js.map +1 -1
- package/dist/cjs/SuffixedInput.js +4 -3
- package/dist/cjs/SuffixedInput.js.map +1 -1
- package/dist/cjs/Taxonomy.js +44 -21
- package/dist/cjs/Taxonomy.js.map +1 -1
- package/dist/cjs/TimeFormat.js +2 -1
- package/dist/cjs/TimeFormat.js.map +1 -1
- package/dist/cjs/TimezoneMismatchModal.js +15 -10
- package/dist/cjs/TimezoneMismatchModal.js.map +1 -1
- package/dist/cjs/ToggleFeatureCard.js +22 -12
- package/dist/cjs/ToggleFeatureCard.js.map +1 -1
- package/dist/cjs/{index-9b0c3047.js → index-5189db17.js} +36 -20
- package/dist/cjs/{index-9b0c3047.js.map → index-5189db17.js.map} +1 -1
- package/dist/cjs/{useColumns-9978cf70.js → useColumns-5660bfea.js} +19 -10
- package/dist/cjs/{useColumns-9978cf70.js.map → useColumns-5660bfea.js.map} +1 -1
- package/dist/{index-8fd0cad5.js → index-e29acf27.js} +10 -3
- package/dist/{index-8fd0cad5.js.map → index-e29acf27.js.map} +1 -1
- package/dist/{useColumns-751e9192.js → useColumns-cec6e827.js} +6 -2
- package/dist/{useColumns-751e9192.js.map → useColumns-cec6e827.js.map} +1 -1
- package/package.json +24 -3
- package/dist/Chevron-e9377de4.js.map +0 -1
- package/dist/cjs/Chevron-90e580d5.js.map +0 -1
|
@@ -3,7 +3,9 @@
|
|
|
3
3
|
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
|
|
4
4
|
var React = require('react');
|
|
5
5
|
var neetoCist = require('@bigbinary/neeto-cist');
|
|
6
|
-
var
|
|
6
|
+
var Button = require('@bigbinary/neetoui/Button');
|
|
7
|
+
var Modal = require('@bigbinary/neetoui/Modal');
|
|
8
|
+
var Typography = require('@bigbinary/neetoui/Typography');
|
|
7
9
|
var reactI18next = require('react-i18next');
|
|
8
10
|
var reactQuery = require('react-query');
|
|
9
11
|
var axios = require('axios');
|
|
@@ -16,6 +18,9 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
|
|
|
16
18
|
|
|
17
19
|
var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
|
|
18
20
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
21
|
+
var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
|
|
22
|
+
var Modal__default = /*#__PURE__*/_interopDefaultLegacy(Modal);
|
|
23
|
+
var Typography__default = /*#__PURE__*/_interopDefaultLegacy(Typography);
|
|
19
24
|
var axios__default = /*#__PURE__*/_interopDefaultLegacy(axios);
|
|
20
25
|
var dayjs__default = /*#__PURE__*/_interopDefaultLegacy(dayjs);
|
|
21
26
|
var timezone__default = /*#__PURE__*/_interopDefaultLegacy(timezone);
|
|
@@ -87,22 +92,22 @@ var TimezoneMismatchModal = function TimezoneMismatchModal(_ref) {
|
|
|
87
92
|
if (!(process.env.RAILS_ENV !== "heroku")) return;
|
|
88
93
|
setIsTimezoneModalOpen(!isUserAndBrowserTimeZoneSame);
|
|
89
94
|
}, []);
|
|
90
|
-
return /*#__PURE__*/React__default["default"].createElement(
|
|
95
|
+
return /*#__PURE__*/React__default["default"].createElement(Modal__default["default"], {
|
|
91
96
|
closeOnOutsideClick: false,
|
|
92
97
|
isOpen: isTimezoneModalOpen || isOpen,
|
|
93
98
|
size: "large",
|
|
94
99
|
onClose: handleCancel
|
|
95
|
-
}, /*#__PURE__*/React__default["default"].createElement(
|
|
100
|
+
}, /*#__PURE__*/React__default["default"].createElement(Modal__default["default"].Header, null, /*#__PURE__*/React__default["default"].createElement(Typography__default["default"], {
|
|
96
101
|
style: "h2",
|
|
97
102
|
weight: "normal"
|
|
98
|
-
}, t("neetoMolecules.alert.timezone.title"))), /*#__PURE__*/React__default["default"].createElement(
|
|
103
|
+
}, t("neetoMolecules.alert.timezone.title"))), /*#__PURE__*/React__default["default"].createElement(Modal__default["default"].Body, null, /*#__PURE__*/React__default["default"].createElement("span", {
|
|
99
104
|
className: "flex flex-col space-y-4"
|
|
100
|
-
}, /*#__PURE__*/React__default["default"].createElement(
|
|
105
|
+
}, /*#__PURE__*/React__default["default"].createElement(Typography__default["default"], {
|
|
101
106
|
component: "span",
|
|
102
107
|
style: "body2"
|
|
103
108
|
}, t("neetoMolecules.alert.timezone.message", {
|
|
104
109
|
entity: globalProps.appName
|
|
105
|
-
})), /*#__PURE__*/React__default["default"].createElement(
|
|
110
|
+
})), /*#__PURE__*/React__default["default"].createElement(Typography__default["default"], {
|
|
106
111
|
component: "span",
|
|
107
112
|
style: "h4"
|
|
108
113
|
}, /*#__PURE__*/React__default["default"].createElement(reactI18next.Trans, {
|
|
@@ -110,7 +115,7 @@ var TimezoneMismatchModal = function TimezoneMismatchModal(_ref) {
|
|
|
110
115
|
values: {
|
|
111
116
|
entity: getUserTimeZone()
|
|
112
117
|
}
|
|
113
|
-
})), /*#__PURE__*/React__default["default"].createElement(
|
|
118
|
+
})), /*#__PURE__*/React__default["default"].createElement(Typography__default["default"], {
|
|
114
119
|
component: "span",
|
|
115
120
|
style: "h4"
|
|
116
121
|
}, /*#__PURE__*/React__default["default"].createElement(reactI18next.Trans, {
|
|
@@ -118,16 +123,16 @@ var TimezoneMismatchModal = function TimezoneMismatchModal(_ref) {
|
|
|
118
123
|
values: {
|
|
119
124
|
entity: getBrowserTimeZone()
|
|
120
125
|
}
|
|
121
|
-
})))), /*#__PURE__*/React__default["default"].createElement(
|
|
126
|
+
})))), /*#__PURE__*/React__default["default"].createElement(Modal__default["default"].Footer, {
|
|
122
127
|
className: "space-x-2"
|
|
123
|
-
}, /*#__PURE__*/React__default["default"].createElement(
|
|
128
|
+
}, /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
|
|
124
129
|
"data-testid": "update-timezone-button",
|
|
125
130
|
disabled: isLoading,
|
|
126
131
|
label: t("neetoMolecules.alert.timezone.updateProfile"),
|
|
127
132
|
loading: isLoading,
|
|
128
133
|
style: "primary",
|
|
129
134
|
onClick: handleUpdateTimeZone
|
|
130
|
-
}), /*#__PURE__*/React__default["default"].createElement(
|
|
135
|
+
}), /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
|
|
131
136
|
label: t("neetoMolecules.common.actions.cancel"),
|
|
132
137
|
style: "text",
|
|
133
138
|
onClick: handleCancel
|
|
@@ -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 \"react-query\";\n\nimport timeZoneApi from \"./apis/time_zone\";\n\nconst useUpdateTimeZone = () =>\n useMutation(timeZoneApi.updateTimeZone, {\n onSuccess: () => window.location.reload(),\n });\n\nexport { useUpdateTimeZone };\n","import dayjs from \"dayjs\";\nimport timezone from \"dayjs/plugin/timezone\";\nimport utc from \"dayjs/plugin/utc\";\nimport { globalProps } from \"neetocommons/initializers\";\n\ndayjs.extend(utc);\ndayjs.extend(timezone);\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 React, { 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 { isLoading, 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={isLoading}\n label={t(\"neetoMolecules.alert.timezone.updateProfile\")}\n loading={isLoading}\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","onSuccess","window","location","reload","dayjs","extend","utc","timezone","getBrowserTimeZone","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","isLoading","mutate","isUserAndBrowserTimeZoneSame","handleUpdateTimeZone","handleCancel","useEffect","process","env","RAILS_ENV","React","createElement","Modal","closeOnOutsideClick","size","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 \"react-query\";\n\nimport timeZoneApi from \"./apis/time_zone\";\n\nconst useUpdateTimeZone = () =>\n useMutation(timeZoneApi.updateTimeZone, {\n onSuccess: () => window.location.reload(),\n });\n\nexport { useUpdateTimeZone };\n","import dayjs from \"dayjs\";\nimport timezone from \"dayjs/plugin/timezone\";\nimport utc from \"dayjs/plugin/utc\";\nimport { globalProps } from \"neetocommons/initializers\";\n\ndayjs.extend(utc);\ndayjs.extend(timezone);\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 React, { 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 { isLoading, 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={isLoading}\n label={t(\"neetoMolecules.alert.timezone.updateProfile\")}\n loading={isLoading}\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","onSuccess","window","location","reload","dayjs","extend","utc","timezone","getBrowserTimeZone","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","isLoading","mutate","isUserAndBrowserTimeZoneSame","handleUpdateTimeZone","handleCancel","useEffect","process","env","RAILS_ENV","React","createElement","Modal","closeOnOutsideClick","size","Header","Typography","style","weight","Body","className","component","entity","appName","Trans","i18nKey","values","Footer","Button","disabled","label","loading","onClick"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,WAAW,GAAG,kBAAkB,CAAA;AAEtC,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,CAAGC,OAAO,EAAA;AAAA,EAAA,OAAIC,yBAAK,CAACC,KAAK,CAACJ,WAAW,EAAEE,OAAO,CAAC,CAAA;AAAA,CAAA,CAAA;AAEnE,IAAMG,WAAW,GAAG;AAAEJ,EAAAA,cAAc,EAAdA,cAAAA;AAAe,CAAC;;ACFtC,IAAMK,iBAAiB,GAAG,SAApBA,iBAAiBA,GAAA;AAAA,EAAA,OACrBC,sBAAW,CAACF,WAAW,CAACJ,cAAc,EAAE;IACtCO,SAAS,EAAE,SAAAA,SAAA,GAAA;AAAA,MAAA,OAAMC,MAAM,CAACC,QAAQ,CAACC,MAAM,EAAE,CAAA;AAAA,KAAA;AAC3C,GAAC,CAAC,CAAA;AAAA,CAAA;;ACFJC,yBAAK,CAACC,MAAM,CAACC,uBAAG,CAAC,CAAA;AACjBF,yBAAK,CAACC,MAAM,CAACE,4BAAQ,CAAC,CAAA;AAEf,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkBA,GAAA;AAAA,EAAA,OAASJ,yBAAK,CAACK,EAAE,CAACC,KAAK,EAAE,CAAA;AAAA,CAAA,CAAA;AAEjD,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,GAAA;AAAA,EAAA,IAAAC,iBAAA,CAAA;EAAA,OAAAA,CAAAA,iBAAA,GAASC,wBAAW,CAACC,IAAI,cAAAF,iBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAhBA,iBAAA,CAAkBG,QAAQ,CAAA;AAAA,CAAA,CAAA;AAExD,IAAMC,0BAA0B,GAAG,SAA7BA,0BAA0BA,CAAIC,SAAS,EAAEC,SAAS,EAAA;AAAA,EAAA;AAC7D;IACAd,yBAAK,EAAE,CAACK,EAAE,CAACQ,SAAS,CAAC,CAACE,MAAM,CAAC,GAAG,CAAC,KAAKf,yBAAK,EAAE,CAACK,EAAE,CAACS,SAAS,CAAC,CAACC,MAAM,CAAC,GAAG,CAAA;AAAC,IAAA;AAAA,CAAA;;ACCzE,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAAC,IAAA,EAA2C;AAAA,EAAA,IAAAC,WAAA,GAAAD,IAAA,CAArCE,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,WAAA;IAAAE,YAAA,GAAAH,IAAA,CAAEI,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAGE,KAAAA,CAAAA,GAAAA,cAAI,GAAAF,YAAA,CAAA;AAC7D,EAAA,IAAAG,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;AACT,EAAA,IAAAC,SAAA,GAAsDC,cAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,kCAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA9DI,IAAAA,mBAAmB,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,sBAAsB,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;AAClD,EAAA,IAAAI,kBAAA,GAA8CtC,iBAAiB,EAAE;IAAzDuC,SAAS,GAAAD,kBAAA,CAATC,SAAS;IAAU5C,cAAc,GAAA2C,kBAAA,CAAtBE,MAAM,CAAA;EACzB,IAAMC,4BAA4B,GAAGvB,0BAA0B,CAC7DL,eAAe,EAAE,EACjBH,kBAAkB,EACpB,CAAC,CAAA;AAED,EAAA,IAAMgC,oBAAoB,GAAG,SAAvBA,oBAAoBA,GAAS;AACjC,IAAA,IAAM9C,OAAO,GAAG;MAAEqB,QAAQ,EAAEP,kBAAkB,EAAC;KAAG,CAAA;IAElDf,cAAc,CAACC,OAAO,EAAE;MACtBM,SAAS,EAAE,SAAAA,SAAAA,GAAM;QACfmC,sBAAsB,CAAC,KAAK,CAAC,CAAA;AAC7BV,QAAAA,OAAO,EAAE,CAAA;AACX,OAAA;AACF,KAAC,CAAC,CAAA;GACH,CAAA;AAED,EAAA,IAAMgB,YAAY,GAAG,SAAfA,YAAYA,GAAS;IACzBN,sBAAsB,CAAC,KAAK,CAAC,CAAA;AAC7BV,IAAAA,OAAO,EAAE,CAAA;GACV,CAAA;AAEDiB,EAAAA,eAAS,CAAC,YAAM;IACd,IAAI,EAAEC,OAAO,CAACC,GAAG,CAACC,SAAS,KAAK,QAAQ,CAAC,EAAE,OAAA;IAC3CV,sBAAsB,CAAC,CAACI,4BAA4B,CAAC,CAAA;GACtD,EAAE,EAAE,CAAC,CAAA;AAEN,EAAA,oBACEO,yBAAA,CAAAC,aAAA,CAACC,yBAAK,EAAA;AACJC,IAAAA,mBAAmB,EAAE,KAAM;IAC3B1B,MAAM,EAAEW,mBAAmB,IAAIX,MAAO;AACtC2B,IAAAA,IAAI,EAAC,OAAO;AACZzB,IAAAA,OAAO,EAAEgB,YAAAA;AAAa,GAAA,eAEtBK,yBAAA,CAAAC,aAAA,CAACC,yBAAK,CAACG,MAAM,EAAA,IAAA,eACXL,yBAAA,CAAAC,aAAA,CAACK,8BAAU,EAAA;AAACC,IAAAA,KAAK,EAAC,IAAI;AAACC,IAAAA,MAAM,EAAC,QAAA;AAAQ,GAAA,EACnCzB,CAAC,CAAC,qCAAqC,CAC9B,CACA,CAAC,eACfiB,yBAAA,CAAAC,aAAA,CAACC,yBAAK,CAACO,IAAI,EACTT,IAAAA,eAAAA,yBAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAMS,IAAAA,SAAS,EAAC,yBAAA;AAAyB,GAAA,eACvCV,yBAAA,CAAAC,aAAA,CAACK,8BAAU,EAAA;AAACK,IAAAA,SAAS,EAAC,MAAM;AAACJ,IAAAA,KAAK,EAAC,OAAA;GAChCxB,EAAAA,CAAC,CAAC,uCAAuC,EAAE;IAC1C6B,MAAM,EAAE7C,WAAW,CAAC8C,OAAAA;AACtB,GAAC,CACS,CAAC,eACbb,yBAAA,CAAAC,aAAA,CAACK,8BAAU,EAAA;AAACK,IAAAA,SAAS,EAAC,MAAM;AAACJ,IAAAA,KAAK,EAAC,IAAA;AAAI,GAAA,eACrCP,yBAAA,CAAAC,aAAA,CAACa,kBAAK,EAAA;AACJC,IAAAA,OAAO,EAAC,4CAA4C;AACpDC,IAAAA,MAAM,EAAE;MAAEJ,MAAM,EAAE/C,eAAe,EAAC;AAAE,KAAA;AAAE,GACvC,CACS,CAAC,eACbmC,yBAAA,CAAAC,aAAA,CAACK,8BAAU,EAAA;AAACK,IAAAA,SAAS,EAAC,MAAM;AAACJ,IAAAA,KAAK,EAAC,IAAA;AAAI,GAAA,eACrCP,yBAAA,CAAAC,aAAA,CAACa,kBAAK,EAAA;AACJC,IAAAA,OAAO,EAAC,+CAA+C;AACvDC,IAAAA,MAAM,EAAE;MAAEJ,MAAM,EAAElD,kBAAkB,EAAC;AAAE,KAAA;GACxC,CACS,CACR,CACI,CAAC,eACbsC,yBAAA,CAAAC,aAAA,CAACC,yBAAK,CAACe,MAAM,EAAA;AAACP,IAAAA,SAAS,EAAC,WAAA;AAAW,GAAA,eACjCV,yBAAA,CAAAC,aAAA,CAACiB,0BAAM,EAAA;AACL,IAAA,aAAA,EAAY,wBAAwB;AACpCC,IAAAA,QAAQ,EAAE5B,SAAU;AACpB6B,IAAAA,KAAK,EAAErC,CAAC,CAAC,6CAA6C,CAAE;AACxDsC,IAAAA,OAAO,EAAE9B,SAAU;AACnBgB,IAAAA,KAAK,EAAC,SAAS;AACfe,IAAAA,OAAO,EAAE5B,oBAAAA;AAAqB,GAC/B,CAAC,eACFM,yBAAA,CAAAC,aAAA,CAACiB,0BAAM,EAAA;AACLE,IAAAA,KAAK,EAAErC,CAAC,CAAC,sCAAsC,CAAE;AACjDwB,IAAAA,KAAK,EAAC,MAAM;AACZe,IAAAA,OAAO,EAAE3B,YAAAA;GACV,CACW,CACT,CAAC,CAAA;AAEZ;;;;"}
|
|
@@ -5,17 +5,21 @@ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
|
5
5
|
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
|
|
6
6
|
var React = require('react');
|
|
7
7
|
var classnames = require('classnames');
|
|
8
|
-
var formik
|
|
8
|
+
var formik = require('formik');
|
|
9
9
|
var neetoCist = require('@bigbinary/neeto-cist');
|
|
10
10
|
var useOnClickOutside = require('@bigbinary/neeto-commons-frontend/react-utils/useOnClickOutside');
|
|
11
11
|
var useHotkeys = require('@bigbinary/neeto-hotkeys');
|
|
12
12
|
var neetoIcons = require('@bigbinary/neeto-icons');
|
|
13
|
-
var
|
|
14
|
-
var
|
|
13
|
+
var Typography = require('@bigbinary/neetoui/Typography');
|
|
14
|
+
var Label = require('@bigbinary/neetoui/Label');
|
|
15
|
+
var Button = require('@bigbinary/neetoui/Button');
|
|
16
|
+
var Input = require('@bigbinary/neetoui/formik/Input');
|
|
15
17
|
var ramda = require('ramda');
|
|
16
18
|
var reactI18next = require('react-i18next');
|
|
17
19
|
var injectCss = require('./inject-css-80a5faa3.js');
|
|
18
20
|
var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
|
|
21
|
+
var Tooltip = require('@bigbinary/neetoui/Tooltip');
|
|
22
|
+
var Switch = require('@bigbinary/neetoui/formik/Switch');
|
|
19
23
|
var i18next = require('i18next');
|
|
20
24
|
|
|
21
25
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
@@ -27,7 +31,13 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
|
27
31
|
var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
|
|
28
32
|
var useOnClickOutside__default = /*#__PURE__*/_interopDefaultLegacy(useOnClickOutside);
|
|
29
33
|
var useHotkeys__default = /*#__PURE__*/_interopDefaultLegacy(useHotkeys);
|
|
34
|
+
var Typography__default = /*#__PURE__*/_interopDefaultLegacy(Typography);
|
|
35
|
+
var Label__default = /*#__PURE__*/_interopDefaultLegacy(Label);
|
|
36
|
+
var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
|
|
37
|
+
var Input__default = /*#__PURE__*/_interopDefaultLegacy(Input);
|
|
30
38
|
var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
|
|
39
|
+
var Tooltip__default = /*#__PURE__*/_interopDefaultLegacy(Tooltip);
|
|
40
|
+
var Switch__default = /*#__PURE__*/_interopDefaultLegacy(Switch);
|
|
31
41
|
|
|
32
42
|
var useScrollIntoView = function useScrollIntoView(_ref) {
|
|
33
43
|
var elementId = _ref.elementId,
|
|
@@ -64,13 +74,13 @@ var TooltipSwitch = function TooltipSwitch(_ref) {
|
|
|
64
74
|
_ref$tooltipProps = _ref.tooltipProps,
|
|
65
75
|
tooltipProps = _ref$tooltipProps === void 0 ? {} : _ref$tooltipProps,
|
|
66
76
|
otherProps = _objectWithoutProperties__default["default"](_ref, _excluded);
|
|
67
|
-
return /*#__PURE__*/React__default["default"].createElement(
|
|
77
|
+
return /*#__PURE__*/React__default["default"].createElement(Tooltip__default["default"], _extends__default["default"]({
|
|
68
78
|
content: getTooltipContent({
|
|
69
79
|
enabledCondition: enabledCondition,
|
|
70
80
|
tooltipProps: tooltipProps
|
|
71
81
|
}),
|
|
72
82
|
position: "top"
|
|
73
|
-
}, tooltipProps), /*#__PURE__*/React__default["default"].createElement("span", null, /*#__PURE__*/React__default["default"].createElement(
|
|
83
|
+
}, tooltipProps), /*#__PURE__*/React__default["default"].createElement("span", null, /*#__PURE__*/React__default["default"].createElement(Switch__default["default"], _extends__default["default"]({
|
|
74
84
|
"data-cy": switchDataCy,
|
|
75
85
|
"data-testid": "toggle-feature-card-switch",
|
|
76
86
|
disabled: isDisabled
|
|
@@ -109,7 +119,7 @@ var ToggleFeatureCard = function ToggleFeatureCard(_ref) {
|
|
|
109
119
|
_useState2 = _slicedToArray__default["default"](_useState, 2),
|
|
110
120
|
isEditing = _useState2[0],
|
|
111
121
|
setIsEditing = _useState2[1];
|
|
112
|
-
var _useFormikContext = formik
|
|
122
|
+
var _useFormikContext = formik.useFormikContext(),
|
|
113
123
|
setFieldValue = _useFormikContext.setFieldValue,
|
|
114
124
|
values = _useFormikContext.values,
|
|
115
125
|
submitCount = _useFormikContext.submitCount,
|
|
@@ -154,7 +164,7 @@ var ToggleFeatureCard = function ToggleFeatureCard(_ref) {
|
|
|
154
164
|
}, {
|
|
155
165
|
"toggle-feature-card--highlighted": shouldHighlight
|
|
156
166
|
})
|
|
157
|
-
}, /*#__PURE__*/React__default["default"].createElement(
|
|
167
|
+
}, /*#__PURE__*/React__default["default"].createElement(Label__default["default"], {
|
|
158
168
|
className: "flex flex-row items-center gap-2"
|
|
159
169
|
}, /*#__PURE__*/React__default["default"].createElement(TooltipSwitch, _extends__default["default"]({}, _objectSpread({
|
|
160
170
|
enabledCondition: enabledCondition,
|
|
@@ -162,20 +172,20 @@ var ToggleFeatureCard = function ToggleFeatureCard(_ref) {
|
|
|
162
172
|
switchDataCy: switchDataCy
|
|
163
173
|
}, switchProps), {
|
|
164
174
|
name: switchName
|
|
165
|
-
})), /*#__PURE__*/React__default["default"].createElement(
|
|
175
|
+
})), /*#__PURE__*/React__default["default"].createElement(Typography__default["default"], {
|
|
166
176
|
component: "span",
|
|
167
177
|
"data-cy": titleDataCy,
|
|
168
178
|
"data-testid": "toggle-feature-card-title",
|
|
169
179
|
style: "h4",
|
|
170
180
|
weight: "semibold"
|
|
171
|
-
}, title)), /*#__PURE__*/React__default["default"].createElement(
|
|
181
|
+
}, title)), /*#__PURE__*/React__default["default"].createElement(Typography__default["default"], {
|
|
172
182
|
className: "mb-4 whitespace-pre-line",
|
|
173
183
|
"data-cy": descriptionDataCy,
|
|
174
184
|
"data-testid": "toggle-feature-card-description",
|
|
175
185
|
style: "body2"
|
|
176
186
|
}, description), hasInput && !isEditing && /*#__PURE__*/React__default["default"].createElement("div", {
|
|
177
187
|
className: "m-0 flex flex-row items-center space-x-2"
|
|
178
|
-
}, inputProps === null || inputProps === void 0 ? void 0 : inputProps.display, /*#__PURE__*/React__default["default"].createElement(
|
|
188
|
+
}, inputProps === null || inputProps === void 0 ? void 0 : inputProps.display, /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
|
|
179
189
|
"data-cy": inputProps === null || inputProps === void 0 ? void 0 : inputProps.editButtonDataCy,
|
|
180
190
|
"data-testid": "toggle-feature-card-input-display-edit",
|
|
181
191
|
icon: neetoIcons.Edit,
|
|
@@ -189,7 +199,7 @@ var ToggleFeatureCard = function ToggleFeatureCard(_ref) {
|
|
|
189
199
|
onClick: function onClick() {
|
|
190
200
|
return setIsEditing(true);
|
|
191
201
|
}
|
|
192
|
-
})), hasInput && isEditing && /*#__PURE__*/React__default["default"].createElement(
|
|
202
|
+
})), hasInput && isEditing && /*#__PURE__*/React__default["default"].createElement(Input__default["default"], _extends__default["default"]({
|
|
193
203
|
autoFocus: true,
|
|
194
204
|
"data-cy": inputProps === null || inputProps === void 0 ? void 0 : inputProps.dataCy,
|
|
195
205
|
"data-testid": "toggle-feature-card-input-field",
|
|
@@ -198,7 +208,7 @@ var ToggleFeatureCard = function ToggleFeatureCard(_ref) {
|
|
|
198
208
|
placeholder: inputProps === null || inputProps === void 0 ? void 0 : inputProps.placeholder,
|
|
199
209
|
ref: inputRef,
|
|
200
210
|
size: "medium",
|
|
201
|
-
suffix: /*#__PURE__*/React__default["default"].createElement(
|
|
211
|
+
suffix: /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
|
|
202
212
|
"data-testid": "toggle-feature-card-input-reset",
|
|
203
213
|
icon: neetoIcons.Close,
|
|
204
214
|
size: "small",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToggleFeatureCard.js","sources":["../../src/components/ToggleFeatureCard/hooks/useScrollIntoView.js","../../src/components/ToggleFeatureCard/utils.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 { t } from \"i18next\";\n\nexport const getTooltipContent = ({ enabledCondition, tooltipProps }) => {\n if (enabledCondition) {\n return (\n tooltipProps.enabledSwitchText ||\n t(\"neetoMolecules.toggleFeatureCard.switchTooltip.enabled\")\n );\n }\n\n return (\n tooltipProps.disabledSwitchText ||\n t(\"neetoMolecules.toggleFeatureCard.switchTooltip.disabled\")\n );\n};\n","import React from \"react\";\n\nimport { Tooltip } from \"neetoui\";\nimport { Switch as FormikSwitch } from \"neetoui/formik\";\n\nimport { getTooltipContent } from \"./utils\";\n\nconst TooltipSwitch = ({\n enabledCondition,\n name = \"\",\n isDisabled = false,\n switchDataCy,\n tooltipProps = {},\n ...otherProps\n}) => (\n <Tooltip\n content={getTooltipContent({ enabledCondition, tooltipProps })}\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);\nexport default TooltipSwitch;\n","import React, { 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 { Edit, 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}) => {\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-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 icon={Edit}\n size=\"small\"\n style=\"text\"\n type=\"button\"\n tooltipProps={{\n content:\n inputProps?.editButtonTooltip ||\n t(\n \"neetoMolecules.toggleFeatureCard.input.editButtonDefaultTooltip\"\n ),\n position: \"right\",\n }}\n onClick={() => setIsEditing(true)}\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\nexport default ToggleFeatureCard;\n"],"names":["useScrollIntoView","_ref","elementId","trigger","useEffect","_document$getElementB","document","getElementById","scrollIntoView","getTooltipContent","enabledCondition","tooltipProps","enabledSwitchText","t","disabledSwitchText","TooltipSwitch","_ref$name","name","_ref$isDisabled","isDisabled","switchDataCy","_ref$tooltipProps","otherProps","_objectWithoutProperties","_excluded","React","createElement","Tooltip","_extends","content","position","FormikSwitch","disabled","_objectSpread","ToggleFeatureCard","_ref$title","title","_ref$description","description","_ref$switchName","switchName","_ref$titleDataCy","titleDataCy","_ref$switchDataCy","_ref$descriptionDataC","descriptionDataCy","_ref$children","children","inputProps","_ref$switchProps","switchProps","_useTranslation","useTranslation","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","ref","className","classnames","Label","Typography","component","style","weight","display","Button","editButtonDataCy","icon","Edit","size","type","editButtonTooltip","onClick","Input","autoFocus","dataCy","label","placeholder","suffix","Close"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ToggleFeatureCard.js","sources":["../../src/components/ToggleFeatureCard/hooks/useScrollIntoView.js","../../src/components/ToggleFeatureCard/utils.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 { t } from \"i18next\";\n\nexport const getTooltipContent = ({ enabledCondition, tooltipProps }) => {\n if (enabledCondition) {\n return (\n tooltipProps.enabledSwitchText ||\n t(\"neetoMolecules.toggleFeatureCard.switchTooltip.enabled\")\n );\n }\n\n return (\n tooltipProps.disabledSwitchText ||\n t(\"neetoMolecules.toggleFeatureCard.switchTooltip.disabled\")\n );\n};\n","import React from \"react\";\n\nimport { Tooltip } from \"neetoui\";\nimport { Switch as FormikSwitch } from \"neetoui/formik\";\n\nimport { getTooltipContent } from \"./utils\";\n\nconst TooltipSwitch = ({\n enabledCondition,\n name = \"\",\n isDisabled = false,\n switchDataCy,\n tooltipProps = {},\n ...otherProps\n}) => (\n <Tooltip\n content={getTooltipContent({ enabledCondition, tooltipProps })}\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);\nexport default TooltipSwitch;\n","import React, { 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 { Edit, 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}) => {\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-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 icon={Edit}\n size=\"small\"\n style=\"text\"\n type=\"button\"\n tooltipProps={{\n content:\n inputProps?.editButtonTooltip ||\n t(\n \"neetoMolecules.toggleFeatureCard.input.editButtonDefaultTooltip\"\n ),\n position: \"right\",\n }}\n onClick={() => setIsEditing(true)}\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\nexport default ToggleFeatureCard;\n"],"names":["useScrollIntoView","_ref","elementId","trigger","useEffect","_document$getElementB","document","getElementById","scrollIntoView","getTooltipContent","enabledCondition","tooltipProps","enabledSwitchText","t","disabledSwitchText","TooltipSwitch","_ref$name","name","_ref$isDisabled","isDisabled","switchDataCy","_ref$tooltipProps","otherProps","_objectWithoutProperties","_excluded","React","createElement","Tooltip","_extends","content","position","FormikSwitch","disabled","_objectSpread","ToggleFeatureCard","_ref$title","title","_ref$description","description","_ref$switchName","switchName","_ref$titleDataCy","titleDataCy","_ref$switchDataCy","_ref$descriptionDataC","descriptionDataCy","_ref$children","children","inputProps","_ref$switchProps","switchProps","_useTranslation","useTranslation","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","ref","className","classnames","Label","Typography","component","style","weight","display","Button","editButtonDataCy","icon","Edit","size","type","editButtonTooltip","onClick","Input","autoFocus","dataCy","label","placeholder","suffix","Close"],"mappings":"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"}
|
|
@@ -1,21 +1,28 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var React = require('react');
|
|
4
|
-
var
|
|
4
|
+
var Alert = require('@bigbinary/neetoui/Alert');
|
|
5
5
|
var reactI18next = require('react-i18next');
|
|
6
6
|
var formik = require('formik');
|
|
7
7
|
var neetoCist = require('@bigbinary/neeto-cist');
|
|
8
|
+
var Label = require('@bigbinary/neetoui/Label');
|
|
9
|
+
var Pane = require('@bigbinary/neetoui/Pane');
|
|
10
|
+
var Typography = require('@bigbinary/neetoui/Typography');
|
|
11
|
+
var Button = require('@bigbinary/neetoui/Button');
|
|
8
12
|
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
|
|
9
13
|
var useHotkeys = require('@bigbinary/neeto-hotkeys');
|
|
10
14
|
var neetoIcons = require('@bigbinary/neeto-icons');
|
|
11
|
-
var
|
|
15
|
+
var Input = require('@bigbinary/neetoui/formik/Input');
|
|
12
16
|
var i18next = require('i18next');
|
|
13
17
|
var yup = require('yup');
|
|
14
18
|
var general = require('@bigbinary/neeto-commons-frontend/utils/general');
|
|
19
|
+
var Input$1 = require('@bigbinary/neetoui/Input');
|
|
20
|
+
var Callout = require('@bigbinary/neetoui/Callout');
|
|
15
21
|
var CopyToClipboardButton = require('./CopyToClipboardButton.js');
|
|
16
22
|
var constants = require('@bigbinary/neeto-commons-frontend/constants');
|
|
17
23
|
var MoreDropdown = require('./MoreDropdown.js');
|
|
18
24
|
var classnames = require('classnames');
|
|
25
|
+
var Tag = require('@bigbinary/neetoui/Tag');
|
|
19
26
|
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
20
27
|
var useMutationWithInvalidation = require('@bigbinary/neeto-commons-frontend/react-utils/useMutationWithInvalidation');
|
|
21
28
|
var reactQuery = require('react-query');
|
|
@@ -42,10 +49,19 @@ function _interopNamespace(e) {
|
|
|
42
49
|
}
|
|
43
50
|
|
|
44
51
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
52
|
+
var Alert__default = /*#__PURE__*/_interopDefaultLegacy(Alert);
|
|
53
|
+
var Label__default = /*#__PURE__*/_interopDefaultLegacy(Label);
|
|
54
|
+
var Pane__default = /*#__PURE__*/_interopDefaultLegacy(Pane);
|
|
55
|
+
var Typography__default = /*#__PURE__*/_interopDefaultLegacy(Typography);
|
|
56
|
+
var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
|
|
45
57
|
var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
|
|
46
58
|
var useHotkeys__default = /*#__PURE__*/_interopDefaultLegacy(useHotkeys);
|
|
59
|
+
var Input__default = /*#__PURE__*/_interopDefaultLegacy(Input);
|
|
47
60
|
var yup__namespace = /*#__PURE__*/_interopNamespace(yup);
|
|
61
|
+
var Input__default$1 = /*#__PURE__*/_interopDefaultLegacy(Input$1);
|
|
62
|
+
var Callout__default = /*#__PURE__*/_interopDefaultLegacy(Callout);
|
|
48
63
|
var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
|
|
64
|
+
var Tag__default = /*#__PURE__*/_interopDefaultLegacy(Tag);
|
|
49
65
|
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
|
|
50
66
|
var useMutationWithInvalidation__default = /*#__PURE__*/_interopDefaultLegacy(useMutationWithInvalidation);
|
|
51
67
|
var axios__default = /*#__PURE__*/_interopDefaultLegacy(axios);
|
|
@@ -58,7 +74,7 @@ var DeleteAlert = function DeleteAlert(_ref) {
|
|
|
58
74
|
hostname = _ref.hostname;
|
|
59
75
|
var _useTranslation = reactI18next.useTranslation(),
|
|
60
76
|
t = _useTranslation.t;
|
|
61
|
-
return /*#__PURE__*/React__default["default"].createElement(
|
|
77
|
+
return /*#__PURE__*/React__default["default"].createElement(Alert__default["default"], {
|
|
62
78
|
cancelButtonLabel: t("neetoMolecules.common.actions.cancel"),
|
|
63
79
|
isOpen: isOpen,
|
|
64
80
|
isSubmitting: isSubmitting,
|
|
@@ -125,14 +141,14 @@ var DomainEntryField = function DomainEntryField(_ref) {
|
|
|
125
141
|
});
|
|
126
142
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
127
143
|
className: "flex items-start gap-2"
|
|
128
|
-
}, /*#__PURE__*/React__default["default"].createElement(
|
|
144
|
+
}, /*#__PURE__*/React__default["default"].createElement(Input__default["default"], {
|
|
129
145
|
name: name,
|
|
130
146
|
"data-cy": "custom-domain-input-field",
|
|
131
147
|
disabled: neetoCist.isNotEmpty(customDomain),
|
|
132
148
|
error: touched && error,
|
|
133
149
|
placeholder: t("neetoMolecules.customDomain.placeholder"),
|
|
134
150
|
ref: mergeRefs(inputRef, initialFocusRef)
|
|
135
|
-
}), !neetoCist.isNotEmpty(customDomain) && /*#__PURE__*/React__default["default"].createElement(
|
|
151
|
+
}), !neetoCist.isNotEmpty(customDomain) && /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
|
|
136
152
|
"data-cy": "submit-custom-domain-button",
|
|
137
153
|
"data-testid": "submit-custom-domain-button",
|
|
138
154
|
disabled: !dirty || isCreating,
|
|
@@ -158,11 +174,11 @@ var TagBlock = function TagBlock(_ref) {
|
|
|
158
174
|
className: classnames__default["default"]("flex gap-2", {
|
|
159
175
|
"flex-col items-start": stacked
|
|
160
176
|
})
|
|
161
|
-
}, status === "failed" ? /*#__PURE__*/React__default["default"].createElement(
|
|
177
|
+
}, status === "failed" ? /*#__PURE__*/React__default["default"].createElement(Tag__default["default"], {
|
|
162
178
|
indicatorStyle: "danger",
|
|
163
179
|
label: t("neetoMolecules.customDomain.status.".concat(camelCasedStatus)),
|
|
164
180
|
style: "secondary"
|
|
165
|
-
}) : /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(
|
|
181
|
+
}) : /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(Tag__default["default"], {
|
|
166
182
|
"data-cy": "".concat(general.hyphenize(status), "-tag-container"),
|
|
167
183
|
indicatorStyle: isDomainValidated ? "success" : "warning",
|
|
168
184
|
style: "secondary",
|
|
@@ -171,7 +187,7 @@ var TagBlock = function TagBlock(_ref) {
|
|
|
171
187
|
className: classnames__default["default"]("flex items-center justify-between gap-2", {
|
|
172
188
|
"w-full": stacked
|
|
173
189
|
})
|
|
174
|
-
}, /*#__PURE__*/React__default["default"].createElement(
|
|
190
|
+
}, /*#__PURE__*/React__default["default"].createElement(Tag__default["default"], {
|
|
175
191
|
"data-cy": "".concat(general.hyphenize(status), "-tag-container"),
|
|
176
192
|
indicatorStyle: status === "active" ? "success" : "warning",
|
|
177
193
|
style: "secondary",
|
|
@@ -189,7 +205,7 @@ var renderColumnData = function renderColumnData(enableManagePane, enableDeleteA
|
|
|
189
205
|
render: function render(hostName, customDomain) {
|
|
190
206
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
191
207
|
className: "flex items-center justify-between gap-x-3"
|
|
192
|
-
}, /*#__PURE__*/React__default["default"].createElement(
|
|
208
|
+
}, /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
|
|
193
209
|
"data-cy": "hostname-button",
|
|
194
210
|
label: hostName,
|
|
195
211
|
style: "link",
|
|
@@ -274,17 +290,17 @@ var Record = function Record(_ref) {
|
|
|
274
290
|
recordValueLabel = _recordData.recordValueLabel;
|
|
275
291
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
276
292
|
className: "mt-6 grid gap-4"
|
|
277
|
-
}, customDomain.status !== "active" && /*#__PURE__*/React__default["default"].createElement(
|
|
293
|
+
}, customDomain.status !== "active" && /*#__PURE__*/React__default["default"].createElement(Callout__default["default"], {
|
|
278
294
|
style: "info"
|
|
279
295
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
280
296
|
className: "flex flex-col space-y-2"
|
|
281
|
-
}, /*#__PURE__*/React__default["default"].createElement("p", null, recordDescription), /*#__PURE__*/React__default["default"].createElement(
|
|
297
|
+
}, /*#__PURE__*/React__default["default"].createElement("p", null, recordDescription), /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
|
|
282
298
|
"data-cy": "custom-domain-help-doc-button",
|
|
283
299
|
href: HELP_DOC_URL,
|
|
284
300
|
label: "Read help doc",
|
|
285
301
|
style: "link",
|
|
286
302
|
target: "#"
|
|
287
|
-
}))), /*#__PURE__*/React__default["default"].createElement(
|
|
303
|
+
}))), /*#__PURE__*/React__default["default"].createElement(Input__default$1["default"], {
|
|
288
304
|
disabled: true,
|
|
289
305
|
"data-cy": general.joinHyphenCase(recordNameLabel),
|
|
290
306
|
label: neetoCist.capitalize(recordNameLabel),
|
|
@@ -294,7 +310,7 @@ var Record = function Record(_ref) {
|
|
|
294
310
|
style: "text",
|
|
295
311
|
value: recordName
|
|
296
312
|
})
|
|
297
|
-
}), /*#__PURE__*/React__default["default"].createElement(
|
|
313
|
+
}), /*#__PURE__*/React__default["default"].createElement(Input__default$1["default"], {
|
|
298
314
|
disabled: true,
|
|
299
315
|
"data-cy": general.joinHyphenCase(recordValueLabel),
|
|
300
316
|
label: neetoCist.capitalize(recordValueLabel),
|
|
@@ -475,7 +491,7 @@ var Manage = function Manage(_ref) {
|
|
|
475
491
|
}
|
|
476
492
|
});
|
|
477
493
|
};
|
|
478
|
-
return /*#__PURE__*/React__default["default"].createElement(
|
|
494
|
+
return /*#__PURE__*/React__default["default"].createElement(Pane__default["default"], {
|
|
479
495
|
initialFocusRef: initialFocusRef,
|
|
480
496
|
isOpen: isOpen,
|
|
481
497
|
onClose: onClose
|
|
@@ -486,11 +502,11 @@ var Manage = function Manage(_ref) {
|
|
|
486
502
|
onSubmit: handleSubmit
|
|
487
503
|
}, function (_ref3) {
|
|
488
504
|
var dirty = _ref3.dirty;
|
|
489
|
-
return /*#__PURE__*/React__default["default"].createElement(formik.Form, null, /*#__PURE__*/React__default["default"].createElement(
|
|
505
|
+
return /*#__PURE__*/React__default["default"].createElement(formik.Form, null, /*#__PURE__*/React__default["default"].createElement(Pane__default["default"].Header, null, /*#__PURE__*/React__default["default"].createElement(Typography__default["default"], {
|
|
490
506
|
"data-cy": "add-custom-domain-pane-heading",
|
|
491
507
|
style: "h2",
|
|
492
508
|
weight: "semibold"
|
|
493
|
-
}, neetoCist.isNotEmpty(customDomain) ? t("neetoMolecules.customDomain.edit") : t("neetoMolecules.customDomain.addNew"))), /*#__PURE__*/React__default["default"].createElement(
|
|
509
|
+
}, neetoCist.isNotEmpty(customDomain) ? t("neetoMolecules.customDomain.edit") : t("neetoMolecules.customDomain.addNew"))), /*#__PURE__*/React__default["default"].createElement(Pane__default["default"].Body, {
|
|
494
510
|
hasFooter: false
|
|
495
511
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
496
512
|
className: "w-full space-y-6"
|
|
@@ -501,7 +517,7 @@ var Manage = function Manage(_ref) {
|
|
|
501
517
|
status: customDomain.status
|
|
502
518
|
}), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
503
519
|
className: "space-y-2"
|
|
504
|
-
}, /*#__PURE__*/React__default["default"].createElement(
|
|
520
|
+
}, /*#__PURE__*/React__default["default"].createElement(Label__default["default"], {
|
|
505
521
|
required: true,
|
|
506
522
|
htmlFor: "hostname"
|
|
507
523
|
}, t("neetoMolecules.customDomain.label")), /*#__PURE__*/React__default["default"].createElement(DomainEntryField, {
|
|
@@ -513,13 +529,13 @@ var Manage = function Manage(_ref) {
|
|
|
513
529
|
onSubmit: handleSubmit
|
|
514
530
|
})), neetoCist.isNotEmpty(customDomain) && /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(Record$1, {
|
|
515
531
|
customDomain: customDomain
|
|
516
|
-
}), customDomain.status === "pending_domain_validation" && /*#__PURE__*/React__default["default"].createElement(
|
|
532
|
+
}), customDomain.status === "pending_domain_validation" && /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
|
|
517
533
|
"data-cy": "validate-domain-button",
|
|
518
534
|
disabled: isValidating,
|
|
519
535
|
loading: isValidating,
|
|
520
536
|
label: t("neetoMolecules.customDomain.validation.buttonLabel.domain"),
|
|
521
537
|
onClick: handleValidateDomain
|
|
522
|
-
}), customDomain.status === "pending_cname_validation" && /*#__PURE__*/React__default["default"].createElement(
|
|
538
|
+
}), customDomain.status === "pending_cname_validation" && /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
|
|
523
539
|
"data-cy": "validate-cname-record-button",
|
|
524
540
|
loading: isCnameValidating || isUpdating,
|
|
525
541
|
label: t("neetoMolecules.customDomain.validation.buttonLabel.cnameAdded"),
|
|
@@ -533,4 +549,4 @@ exports.Manage = Manage;
|
|
|
533
549
|
exports.renderColumnData = renderColumnData;
|
|
534
550
|
exports.useDeleteCustomDomain = useDeleteCustomDomain;
|
|
535
551
|
exports.useFetchCustomDomains = useFetchCustomDomains;
|
|
536
|
-
//# sourceMappingURL=index-
|
|
552
|
+
//# sourceMappingURL=index-5189db17.js.map
|