@bigbinary/neeto-molecules 4.0.130 → 4.0.132
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/AuditLogs.js +4 -4
- package/dist/AuditLogs.js.map +1 -1
- package/dist/Breadcrumbs.js +2 -2
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/Builder.js +15 -22
- package/dist/Builder.js.map +1 -1
- package/dist/CalendarView.js +5 -6
- package/dist/CalendarView.js.map +1 -1
- package/dist/CardLayout.js +0 -1
- package/dist/CardLayout.js.map +1 -1
- package/dist/{Chevron-Cat_oK6Q.js → Chevron-CvDNGT0i.js} +9 -10
- package/dist/Chevron-CvDNGT0i.js.map +1 -0
- package/dist/Codeblock.js +3 -5
- package/dist/Codeblock.js.map +1 -1
- package/dist/{Columns-CsOYfWFt.js → Columns-D51hN86M.js} +8 -9
- package/dist/Columns-D51hN86M.js.map +1 -0
- package/dist/Columns.js +1 -1
- package/dist/ConfigurePageSidebar.js +2 -3
- package/dist/ConfigurePageSidebar.js.map +1 -1
- package/dist/ConfirmationModal.js +2 -2
- package/dist/ConfirmationModal.js.map +1 -1
- package/dist/CopyToClipboardButton.js +1 -2
- package/dist/CopyToClipboardButton.js.map +1 -1
- package/dist/DeleteArchiveModal.js +5 -7
- package/dist/DeleteArchiveModal.js.map +1 -1
- package/dist/DeviceIncompatibilityMessage.js +0 -1
- package/dist/DeviceIncompatibilityMessage.js.map +1 -1
- package/dist/DocumentEditor.js +3 -3
- package/dist/DocumentEditor.js.map +1 -1
- package/dist/DynamicVariables.js +4 -6
- package/dist/DynamicVariables.js.map +1 -1
- package/dist/EmailForm.js +4 -5
- package/dist/EmailForm.js.map +1 -1
- package/dist/EmailPreview.js +4 -5
- package/dist/EmailPreview.js.map +1 -1
- package/dist/EmojiPicker.js +1 -1
- package/dist/EmojiPicker.js.map +1 -1
- package/dist/EmojiReactions.js +1 -1
- package/dist/EmojiReactions.js.map +1 -1
- package/dist/ErrorPage.js +5 -5
- package/dist/ErrorPage.js.map +1 -1
- package/dist/FileUpload.js +9 -10
- package/dist/FileUpload.js.map +1 -1
- package/dist/FloatingActionMenu.js +19 -38
- package/dist/FloatingActionMenu.js.map +1 -1
- package/dist/Header.js +1 -3
- package/dist/Header.js.map +1 -1
- package/dist/HelpPopover.js +1 -5
- package/dist/HelpPopover.js.map +1 -1
- package/dist/IconPicker.js +2 -3
- package/dist/IconPicker.js.map +1 -1
- package/dist/Insights.js +3 -6
- package/dist/Insights.js.map +1 -1
- package/dist/IntegrationCard.js +10 -12
- package/dist/IntegrationCard.js.map +1 -1
- package/dist/IpRestriction.js +11 -13
- package/dist/IpRestriction.js.map +1 -1
- package/dist/KeyboardShortcuts.js +3 -4
- package/dist/KeyboardShortcuts.js.map +1 -1
- package/dist/LoginPage.js +3 -6
- package/dist/LoginPage.js.map +1 -1
- package/dist/MadeWith.js +0 -1
- package/dist/MadeWith.js.map +1 -1
- package/dist/MenuBar.js +6 -6
- package/dist/MenuBar.js.map +1 -1
- package/dist/Metadata.js +4 -7
- package/dist/Metadata.js.map +1 -1
- package/dist/MobilePreviewHeader.js +1 -1
- package/dist/MobilePreviewHeader.js.map +1 -1
- package/dist/MoreDropdown.js +1 -2
- package/dist/MoreDropdown.js.map +1 -1
- package/dist/NavigationHeader.js +1 -6
- package/dist/NavigationHeader.js.map +1 -1
- package/dist/NeetoWidget.js +1 -2
- package/dist/NeetoWidget.js.map +1 -1
- package/dist/Onboarding.js +1 -9
- package/dist/Onboarding.js.map +1 -1
- package/dist/OptionFields.js +6 -22
- package/dist/OptionFields.js.map +1 -1
- package/dist/PageLoader.js +1 -1
- package/dist/PageLoader.js.map +1 -1
- package/dist/PhoneNumber.js +0 -1
- package/dist/PhoneNumber.js.map +1 -1
- package/dist/ProductEmbed.js +7 -20
- package/dist/ProductEmbed.js.map +1 -1
- package/dist/PublishBlock.js +1 -12
- package/dist/PublishBlock.js.map +1 -1
- package/dist/PublishYourItem.js +2 -2
- package/dist/PublishYourItem.js.map +1 -1
- package/dist/Rename.js +18 -17
- package/dist/Rename.js.map +1 -1
- package/dist/Schedule.js +16 -20
- package/dist/Schedule.js.map +1 -1
- package/dist/SendToFields.js +1 -5
- package/dist/SendToFields.js.map +1 -1
- package/dist/SessionEnvironment.js +1 -7
- package/dist/SessionEnvironment.js.map +1 -1
- package/dist/Settings.js +8 -9
- package/dist/Settings.js.map +1 -1
- package/dist/ShareRecordingPane.js +6 -6
- package/dist/ShareRecordingPane.js.map +1 -1
- package/dist/ShareViaEmail.js +6 -9
- package/dist/ShareViaEmail.js.map +1 -1
- package/dist/ShareViaLink.js +5 -21
- package/dist/ShareViaLink.js.map +1 -1
- package/dist/Sidebar.js +5 -7
- package/dist/Sidebar.js.map +1 -1
- package/dist/StatusDropdown.js +7 -10
- package/dist/StatusDropdown.js.map +1 -1
- package/dist/StickyRibbonsContainer.js +3 -3
- package/dist/StickyRibbonsContainer.js.map +1 -1
- package/dist/SubHeader.js +12 -15
- package/dist/SubHeader.js.map +1 -1
- package/dist/Taxonomy.js +3 -5
- package/dist/Taxonomy.js.map +1 -1
- package/dist/ToggleFeatureCard.js +18 -24
- package/dist/ToggleFeatureCard.js.map +1 -1
- package/dist/VersionHistory.js +1 -3
- package/dist/VersionHistory.js.map +1 -1
- package/dist/cjs/AuditLogs.js +4 -4
- package/dist/cjs/AuditLogs.js.map +1 -1
- package/dist/cjs/Breadcrumbs.js +2 -2
- package/dist/cjs/Breadcrumbs.js.map +1 -1
- package/dist/cjs/Builder.js +15 -22
- package/dist/cjs/Builder.js.map +1 -1
- package/dist/cjs/CalendarView.js +5 -6
- package/dist/cjs/CalendarView.js.map +1 -1
- package/dist/cjs/CardLayout.js +0 -1
- package/dist/cjs/CardLayout.js.map +1 -1
- package/dist/cjs/{Chevron-ChTcXDNM.js → Chevron-CLyBYgRO.js} +9 -10
- package/dist/cjs/Chevron-CLyBYgRO.js.map +1 -0
- package/dist/cjs/Codeblock.js +3 -5
- package/dist/cjs/Codeblock.js.map +1 -1
- package/dist/cjs/{Columns-DHPNrFgq.js → Columns-7xltEL2z.js} +8 -9
- package/dist/cjs/Columns-7xltEL2z.js.map +1 -0
- package/dist/cjs/Columns.js +1 -1
- package/dist/cjs/ConfigurePageSidebar.js +2 -3
- package/dist/cjs/ConfigurePageSidebar.js.map +1 -1
- package/dist/cjs/ConfirmationModal.js +2 -2
- package/dist/cjs/ConfirmationModal.js.map +1 -1
- package/dist/cjs/CopyToClipboardButton.js +1 -2
- package/dist/cjs/CopyToClipboardButton.js.map +1 -1
- package/dist/cjs/DeleteArchiveModal.js +5 -7
- package/dist/cjs/DeleteArchiveModal.js.map +1 -1
- package/dist/cjs/DeviceIncompatibilityMessage.js +0 -1
- package/dist/cjs/DeviceIncompatibilityMessage.js.map +1 -1
- package/dist/cjs/DocumentEditor.js +3 -3
- package/dist/cjs/DocumentEditor.js.map +1 -1
- package/dist/cjs/DynamicVariables.js +4 -6
- package/dist/cjs/DynamicVariables.js.map +1 -1
- package/dist/cjs/EmailForm.js +4 -5
- package/dist/cjs/EmailForm.js.map +1 -1
- package/dist/cjs/EmailPreview.js +4 -5
- package/dist/cjs/EmailPreview.js.map +1 -1
- package/dist/cjs/EmojiPicker.js +1 -1
- package/dist/cjs/EmojiPicker.js.map +1 -1
- package/dist/cjs/EmojiReactions.js +1 -1
- package/dist/cjs/EmojiReactions.js.map +1 -1
- package/dist/cjs/ErrorPage.js +5 -5
- package/dist/cjs/ErrorPage.js.map +1 -1
- package/dist/cjs/FileUpload.js +9 -10
- package/dist/cjs/FileUpload.js.map +1 -1
- package/dist/cjs/FloatingActionMenu.js +19 -38
- package/dist/cjs/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/Header.js +1 -3
- package/dist/cjs/Header.js.map +1 -1
- package/dist/cjs/HelpPopover.js +1 -5
- package/dist/cjs/HelpPopover.js.map +1 -1
- package/dist/cjs/IconPicker.js +2 -3
- package/dist/cjs/IconPicker.js.map +1 -1
- package/dist/cjs/Insights.js +3 -6
- package/dist/cjs/Insights.js.map +1 -1
- package/dist/cjs/IntegrationCard.js +9 -11
- package/dist/cjs/IntegrationCard.js.map +1 -1
- package/dist/cjs/IpRestriction.js +11 -13
- package/dist/cjs/IpRestriction.js.map +1 -1
- package/dist/cjs/KeyboardShortcuts.js +3 -4
- package/dist/cjs/KeyboardShortcuts.js.map +1 -1
- package/dist/cjs/LoginPage.js +3 -6
- package/dist/cjs/LoginPage.js.map +1 -1
- package/dist/cjs/MadeWith.js +0 -1
- package/dist/cjs/MadeWith.js.map +1 -1
- package/dist/cjs/MenuBar.js +6 -6
- package/dist/cjs/MenuBar.js.map +1 -1
- package/dist/cjs/Metadata.js +4 -7
- package/dist/cjs/Metadata.js.map +1 -1
- package/dist/cjs/MobilePreviewHeader.js +1 -1
- package/dist/cjs/MobilePreviewHeader.js.map +1 -1
- package/dist/cjs/MoreDropdown.js +1 -2
- package/dist/cjs/MoreDropdown.js.map +1 -1
- package/dist/cjs/NavigationHeader.js +1 -6
- package/dist/cjs/NavigationHeader.js.map +1 -1
- package/dist/cjs/NeetoWidget.js +1 -2
- package/dist/cjs/NeetoWidget.js.map +1 -1
- package/dist/cjs/Onboarding.js +1 -9
- package/dist/cjs/Onboarding.js.map +1 -1
- package/dist/cjs/OptionFields.js +6 -22
- package/dist/cjs/OptionFields.js.map +1 -1
- package/dist/cjs/PageLoader.js +1 -1
- package/dist/cjs/PageLoader.js.map +1 -1
- package/dist/cjs/PhoneNumber.js +0 -1
- package/dist/cjs/PhoneNumber.js.map +1 -1
- package/dist/cjs/ProductEmbed.js +7 -20
- package/dist/cjs/ProductEmbed.js.map +1 -1
- package/dist/cjs/PublishBlock.js +1 -12
- package/dist/cjs/PublishBlock.js.map +1 -1
- package/dist/cjs/PublishYourItem.js +2 -2
- package/dist/cjs/PublishYourItem.js.map +1 -1
- package/dist/cjs/Rename.js +18 -17
- package/dist/cjs/Rename.js.map +1 -1
- package/dist/cjs/Schedule.js +16 -20
- package/dist/cjs/Schedule.js.map +1 -1
- package/dist/cjs/SendToFields.js +1 -5
- package/dist/cjs/SendToFields.js.map +1 -1
- package/dist/cjs/SessionEnvironment.js +1 -7
- package/dist/cjs/SessionEnvironment.js.map +1 -1
- package/dist/cjs/Settings.js +8 -9
- package/dist/cjs/Settings.js.map +1 -1
- package/dist/cjs/ShareRecordingPane.js +6 -6
- package/dist/cjs/ShareRecordingPane.js.map +1 -1
- package/dist/cjs/ShareViaEmail.js +6 -9
- package/dist/cjs/ShareViaEmail.js.map +1 -1
- package/dist/cjs/ShareViaLink.js +5 -21
- package/dist/cjs/ShareViaLink.js.map +1 -1
- package/dist/cjs/Sidebar.js +5 -7
- package/dist/cjs/Sidebar.js.map +1 -1
- package/dist/cjs/StatusDropdown.js +6 -9
- package/dist/cjs/StatusDropdown.js.map +1 -1
- package/dist/cjs/StickyRibbonsContainer.js +3 -3
- package/dist/cjs/StickyRibbonsContainer.js.map +1 -1
- package/dist/cjs/SubHeader.js +12 -15
- package/dist/cjs/SubHeader.js.map +1 -1
- package/dist/cjs/Taxonomy.js +3 -5
- package/dist/cjs/Taxonomy.js.map +1 -1
- package/dist/cjs/ToggleFeatureCard.js +17 -23
- package/dist/cjs/ToggleFeatureCard.js.map +1 -1
- package/dist/cjs/VersionHistory.js +1 -3
- package/dist/cjs/VersionHistory.js.map +1 -1
- package/package.json +1 -1
- package/types/IntegrationCard.d.ts +1 -1
- package/types/Rename.d.ts +2 -0
- package/types/Settings.d.ts +2 -2
- package/types/ShareViaLink.d.ts +2 -2
- package/types/SubHeader.d.ts +2 -2
- package/types/ToggleFeatureCard.d.ts +3 -3
- package/dist/Chevron-Cat_oK6Q.js.map +0 -1
- package/dist/Columns-CsOYfWFt.js.map +0 -1
- package/dist/cjs/Chevron-ChTcXDNM.js.map +0 -1
- package/dist/cjs/Columns-DHPNrFgq.js.map +0 -1
package/dist/Insights.js
CHANGED
|
@@ -213,14 +213,13 @@ var MetricItem = function MetricItem(_ref) {
|
|
|
213
213
|
};
|
|
214
214
|
return /*#__PURE__*/jsxs("div", {
|
|
215
215
|
className: "nf-insights__metric-item neeto-ui-border-gray-200 border-b pb-4",
|
|
216
|
-
"data-
|
|
216
|
+
"data-testid": "".concat(hyphenate(metric), "-metric"),
|
|
217
217
|
children: [/*#__PURE__*/jsxs("div", {
|
|
218
218
|
className: "flex items-center gap-2",
|
|
219
219
|
children: [/*#__PURE__*/jsx("div", {
|
|
220
220
|
className: "flex items-end gap-x-1",
|
|
221
221
|
children: isTime ? renderTime(value) : /*#__PURE__*/jsxs(Typography, {
|
|
222
222
|
className: "neeto-ui-text-gray-800",
|
|
223
|
-
"data-cy": "insights-count",
|
|
224
223
|
"data-testid": "insights-count",
|
|
225
224
|
style: "h1",
|
|
226
225
|
weight: "semibold",
|
|
@@ -233,7 +232,7 @@ var MetricItem = function MetricItem(_ref) {
|
|
|
233
232
|
})]
|
|
234
233
|
}), /*#__PURE__*/jsx(Typography, {
|
|
235
234
|
className: "neeto-ui-text-gray-700",
|
|
236
|
-
"data-
|
|
235
|
+
"data-testid": "insights-type",
|
|
237
236
|
style: "body3",
|
|
238
237
|
children: metric
|
|
239
238
|
})]
|
|
@@ -274,12 +273,11 @@ var Insights = function Insights(_ref) {
|
|
|
274
273
|
}
|
|
275
274
|
return /*#__PURE__*/jsxs("div", {
|
|
276
275
|
className: classnames("mx-auto pt-10", className),
|
|
277
|
-
"data-cy": "insights",
|
|
278
276
|
"data-testid": "insights",
|
|
279
277
|
children: [/*#__PURE__*/jsxs("div", {
|
|
280
278
|
className: "mb-10 flex w-full items-center",
|
|
281
279
|
children: [/*#__PURE__*/jsx(Typography, {
|
|
282
|
-
"data-
|
|
280
|
+
"data-testid": "submissions-insights-title",
|
|
283
281
|
style: "h2",
|
|
284
282
|
children: title || t("neetoMolecules.insights.title")
|
|
285
283
|
}), showWarningMessage && /*#__PURE__*/jsx(Tooltip, _objectSpread(_objectSpread({
|
|
@@ -291,7 +289,6 @@ var Insights = function Insights(_ref) {
|
|
|
291
289
|
className: "ms-3",
|
|
292
290
|
children: /*#__PURE__*/jsx(Warning, {
|
|
293
291
|
className: "neeto-ui-text-warning-500",
|
|
294
|
-
"data-cy": "insights-warning",
|
|
295
292
|
"data-testid": "insights-warning",
|
|
296
293
|
size: 20
|
|
297
294
|
})
|
package/dist/Insights.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Insights.js","sources":["../src/components/Insights/constants.js","../src/components/Insights/MetaInfo/PercentageBar.jsx","../src/components/Insights/MetaInfo/MetaInfoItem.jsx","../src/components/Insights/MetaInfo/DataDistribution.jsx","../src/components/Insights/utils.js","../src/components/Insights/MetaInfo/index.jsx","../src/components/Insights/TimeItem.jsx","../src/components/Insights/MetricItem.jsx","../src/components/Insights/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nexport const DEFAULT_DEVICES = [\n {\n label: t(\"neetoMolecules.insights.labels.devices.desktop\"),\n value: \"desktop\",\n },\n {\n label: t(\"neetoMolecules.insights.labels.devices.mobile\"),\n value: \"smartphone\",\n },\n];\n\nexport const DEFAULT_OS = [\n { label: t(\"neetoMolecules.insights.labels.os.macos\"), value: \"mac\" },\n {\n label: t(\"neetoMolecules.insights.labels.os.windows\"),\n value: \"windows\",\n },\n];\n\nexport const DEFAULT_BROWSERS = [\n {\n label: t(\"neetoMolecules.insights.labels.browsers.chrome\"),\n value: \"chrome\",\n },\n {\n label: t(\"neetoMolecules.insights.labels.browsers.safari\"),\n value: \"safari\",\n },\n];\n\nexport const INITIAL_TIME_PERIOD_VALUE = {\n label: t(\"neetoMolecules.insights.labels.allTime\"),\n value: { startDate: null, endDate: null, rangeType: \"all\" },\n};\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nconst PercentageBar = ({ value }) => (\n <>\n {value !== 0 && (\n <div\n className=\"neeto-ui-bg-gray-300 neeto-ui-rounded-full h-2\"\n style={{ width: `${value}%` }}\n />\n )}\n <Typography style=\"body3\">{value ? `${value}%` : 0}</Typography>\n </>\n);\n\nexport default memo(PercentageBar);\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nimport PercentageBar from \"./PercentageBar\";\n\nconst MetaInfoItem = ({ name, value }) => (\n <>\n <Typography style=\"body2\" textTransform=\"capitalize\">\n {name}\n </Typography>\n <div className=\"col-span-3 flex items-center gap-2\">\n <PercentageBar {...{ value }} />\n </div>\n </>\n);\n\nexport default memo(MetaInfoItem);\n","import MetaInfoItem from \"./MetaInfoItem\";\n\nconst DataDistribution = ({ data }) => (\n <div className=\"grid grid-cols-4 gap-2\">\n {data.map(({ name, value }) => (\n <MetaInfoItem {...{ name, value }} key={name} />\n ))}\n </div>\n);\n\nexport default DataDistribution;\n","import { existsBy } from \"neetocist\";\n\nconst getSum = (data, searchKey) => {\n let sum = 0;\n for (const key in data) {\n if (key.includes(searchKey)) sum += data[key];\n }\n\n return sum;\n};\n\nexport const transformInsights = (data, defaultItems) => {\n const othersData = Object.keys(data)\n .filter(key => !existsBy({ value: key }, defaultItems))\n .map(key => ({ name: key, value: data[key] }));\n\n const defaultData = defaultItems.map(({ label, value }) => ({\n name: label,\n value: getSum(data, value) || 0,\n }));\n\n return { defaultData, othersData };\n};\n","import { memo } from \"react\";\n\nimport { Tooltip, Typography } from \"neetoui\";\nimport { pluck, sum, values } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DataDistribution from \"./DataDistribution\";\nimport MetaInfoItem from \"./MetaInfoItem\";\n\nimport { transformInsights } from \"../utils\";\n\nconst MetaInfo = ({ type, data, defaultItems }) => {\n const { t } = useTranslation();\n const { defaultData, othersData } = transformInsights(data, defaultItems);\n\n const othersSum = sum(values(pluck(\"value\", othersData)));\n\n return (\n <div className=\"neeto-ui-bg-gray-100 neeto-ui-rounded p-4\">\n <Typography\n className=\"mb-2\"\n style=\"body2\"\n textTransform=\"uppercase\"\n weight=\"bold\"\n >\n {type}\n </Typography>\n <DataDistribution data={defaultData} />\n <Tooltip\n content={<DataDistribution data={othersData} />}\n disabled={!othersSum}\n position=\"bottom\"\n >\n <div className=\"mt-2 grid grid-cols-4 gap-2\">\n <MetaInfoItem\n name={t(\"neetoMolecules.insights.others\")}\n value={othersSum}\n />\n </div>\n </Tooltip>\n </div>\n );\n};\n\nexport default memo(MetaInfo);\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nconst TimeItem = ({ value, suffix }) => (\n <div className=\"flex items-end\" data-testid=\"time-item\">\n <Typography className=\"me-1\" style=\"h1\" weight=\"semibold\">\n {value}\n </Typography>\n <Typography lineHeight=\"loose\" style=\"body2\">\n {suffix}\n </Typography>\n </div>\n);\n\nexport default memo(TimeItem);\n","import { memo } from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport HelpPopover from \"components/HelpPopover\";\n\nimport TimeItem from \"./TimeItem\";\n\nconst MetricItem = ({ metric, value, helpText, isTime, isPercentage }) => {\n const renderTime = value => {\n const { h: hours, m: minutes, s: seconds } = value;\n const showSeconds = !hours && !minutes;\n\n return (\n <div className=\"flex gap-2\">\n {!!hours && <TimeItem suffix=\"H\" value={hours} />}\n {!!minutes && <TimeItem suffix=\"M\" value={minutes} />}\n {(!!seconds || showSeconds) && <TimeItem suffix=\"S\" value={seconds} />}\n </div>\n );\n };\n\n return (\n <div\n className=\"nf-insights__metric-item neeto-ui-border-gray-200 border-b pb-4\"\n data-cy={`${hyphenate(metric)}-metric`}\n >\n <div className=\"flex items-center gap-2\">\n <div className=\"flex items-end gap-x-1\">\n {isTime ? (\n renderTime(value)\n ) : (\n <Typography\n className=\"neeto-ui-text-gray-800\"\n data-cy=\"insights-count\"\n data-testid=\"insights-count\"\n style=\"h1\"\n weight=\"semibold\"\n >\n {value || 0}\n {isPercentage ? \"%\" : \"\"}\n </Typography>\n )}\n </div>\n {helpText && (\n <div>\n <HelpPopover description={helpText} />\n </div>\n )}\n </div>\n <Typography\n className=\"neeto-ui-text-gray-700\"\n data-cy=\"insights-type\"\n style=\"body3\"\n >\n {metric}\n </Typography>\n </div>\n );\n};\n\nexport default memo(MetricItem);\n","import classNames from \"classnames\";\nimport { Warning } from \"neetoicons\";\nimport { Tooltip, Typography, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DateRangeFilter from \"components/DateRangeFilter\";\n\nimport { DEFAULT_DEVICES, DEFAULT_BROWSERS, DEFAULT_OS } from \"./constants\";\nimport MetaInfo from \"./MetaInfo\";\nimport MetricItem from \"./MetricItem\";\n\nconst Insights = ({\n insightsData,\n isLoading,\n timePeriod,\n setTimePeriod,\n helpTexts = {},\n showWarningMessage = false,\n className,\n title,\n tooltipProps = {},\n}) => {\n const { t } = useTranslation();\n\n const {\n visitCount,\n startCount,\n submissionCount,\n completionRate,\n averageSubmissionTime,\n devices,\n operatingSystems,\n browsers,\n } = insightsData;\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <div\n className={classNames(\"mx-auto pt-10\", className)}\n data-cy=\"insights\"\n data-testid=\"insights\"\n >\n <div className=\"mb-10 flex w-full items-center\">\n <Typography data-cy=\"submissions-insights-title\" style=\"h2\">\n {title || t(\"neetoMolecules.insights.title\")}\n </Typography>\n {showWarningMessage && (\n <Tooltip\n content={t(\"neetoMolecules.insights.dataInaccuracyWarning\")}\n position=\"bottom\"\n touch={[\"hold\", 500]}\n {...tooltipProps}\n >\n <span className=\"ms-3\">\n <Warning\n className=\"neeto-ui-text-warning-500\"\n data-cy=\"insights-warning\"\n data-testid=\"insights-warning\"\n size={20}\n />\n </span>\n </Tooltip>\n )}\n <span className=\"ms-auto\">\n <DateRangeFilter {...{ setTimePeriod, timePeriod }} />\n </span>\n </div>\n <div className=\"mb-6 grid grid-cols-1 gap-x-9 gap-y-6 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-5 lg:gap-0\">\n <MetricItem\n helpText={helpTexts[\"visitCount\"]}\n metric={t(\"neetoMolecules.insights.metrics.visits\")}\n value={visitCount}\n />\n <MetricItem\n helpText={helpTexts[\"startCount\"]}\n metric={t(\"neetoMolecules.insights.metrics.starts\")}\n value={startCount}\n />\n <MetricItem\n helpText={helpTexts[\"submissions\"]}\n metric={t(\"neetoMolecules.insights.metrics.submissions\")}\n value={submissionCount}\n />\n <MetricItem\n isPercentage\n helpText={helpTexts[\"completionRate\"]}\n metric={t(\"neetoMolecules.insights.metrics.completionRate\")}\n value={completionRate}\n />\n <MetricItem\n isTime\n helpText={helpTexts[\"averageSubmissionTime\"]}\n metric={t(\"neetoMolecules.insights.metrics.avgTimeToComplete\")}\n timeSuffix={t(\"neetoMolecules.insights.mins\")}\n value={averageSubmissionTime}\n />\n </div>\n <div className=\"grid grid-cols-1 gap-6 sm:grid-cols-2 lg:grid-cols-3\">\n <MetaInfo\n data={devices}\n defaultItems={DEFAULT_DEVICES}\n type={t(\"neetoMolecules.insights.devices\")}\n />\n <MetaInfo\n data={operatingSystems}\n defaultItems={DEFAULT_OS}\n type={t(\"neetoMolecules.insights.os\")}\n />\n <MetaInfo\n data={browsers}\n defaultItems={DEFAULT_BROWSERS}\n type={t(\"neetoMolecules.insights.browsers\")}\n />\n </div>\n </div>\n );\n};\n\nInsights.propTypes = {\n /**\n * Title displayed for the Insights component.\n */\n title: PropTypes.string,\n /**\n * Props for the tooltip displayed on the warning icon.\n */\n tooltipProps: PropTypes.object,\n /**\n * Object containing metrics and statistics for insights\n */\n insightsData: PropTypes.shape({\n visitCount: PropTypes.number,\n startCount: PropTypes.number,\n submissionCount: PropTypes.number,\n completionRate: PropTypes.number,\n averageSubmissionTime: PropTypes.shape({\n h: PropTypes.number,\n m: PropTypes.number,\n s: PropTypes.number,\n }),\n devices: PropTypes.shape({\n desktop: PropTypes.number,\n smartphone: PropTypes.number,\n }),\n operatingSystems: PropTypes.shape({\n mac: PropTypes.number,\n windows: PropTypes.number,\n }),\n browsers: PropTypes.shape({\n chrome: PropTypes.number,\n safari: PropTypes.number,\n }),\n }),\n /**\n * Indicates whether insights data is currently being fetched from an API\n */\n isLoading: PropTypes.bool,\n /**\n * The state corresponding to the currently selected date range.\n */\n timePeriod: PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.object,\n }),\n /**\n * The setter method for `timePeriod` state.\n */\n setTimePeriod: PropTypes.func,\n /**\n * Object containing explanatory text for each metric, providing additional context that can help users understand the significance of the metrics displayed.\n */\n helpTexts: PropTypes.shape({\n visitCount: PropTypes.string,\n startCount: PropTypes.string,\n submissions: PropTypes.string,\n completionRate: PropTypes.string,\n averageSubmissionTime: PropTypes.string,\n }),\n /**\n * Displays a warning to indicate that the insights may not be accurate, as the insights integration occurred after the record's creation.\n */\n showWarningMessage: PropTypes.bool,\n /**\n * To provide additional classes.\n */\n className: PropTypes.string,\n};\n\nexport default Insights;\n"],"names":["DEFAULT_DEVICES","label","t","value","DEFAULT_OS","DEFAULT_BROWSERS","PercentageBar","_ref","_jsxs","_Fragment","children","_jsx","className","style","width","concat","Typography","memo","MetaInfoItem","name","textTransform","DataDistribution","data","map","_ref2","_createElement","key","getSum","searchKey","sum","includes","transformInsights","defaultItems","othersData","Object","keys","filter","existsBy","defaultData","MetaInfo","type","_useTranslation","useTranslation","_transformInsights","othersSum","values","pluck","weight","Tooltip","content","disabled","position","TimeItem","suffix","lineHeight","MetricItem","metric","helpText","isTime","isPercentage","renderTime","hours","h","minutes","m","seconds","s","showSeconds","hyphenate","HelpPopover","description","Insights","insightsData","isLoading","timePeriod","setTimePeriod","_ref$helpTexts","helpTexts","_ref$showWarningMessa","showWarningMessage","title","_ref$tooltipProps","tooltipProps","visitCount","startCount","submissionCount","completionRate","averageSubmissionTime","devices","operatingSystems","browsers","Spinner","classNames","_objectSpread","touch","Warning","size","DateRangeFilter","timeSuffix"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Insights.js","sources":["../src/components/Insights/constants.js","../src/components/Insights/MetaInfo/PercentageBar.jsx","../src/components/Insights/MetaInfo/MetaInfoItem.jsx","../src/components/Insights/MetaInfo/DataDistribution.jsx","../src/components/Insights/utils.js","../src/components/Insights/MetaInfo/index.jsx","../src/components/Insights/TimeItem.jsx","../src/components/Insights/MetricItem.jsx","../src/components/Insights/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nexport const DEFAULT_DEVICES = [\n {\n label: t(\"neetoMolecules.insights.labels.devices.desktop\"),\n value: \"desktop\",\n },\n {\n label: t(\"neetoMolecules.insights.labels.devices.mobile\"),\n value: \"smartphone\",\n },\n];\n\nexport const DEFAULT_OS = [\n { label: t(\"neetoMolecules.insights.labels.os.macos\"), value: \"mac\" },\n {\n label: t(\"neetoMolecules.insights.labels.os.windows\"),\n value: \"windows\",\n },\n];\n\nexport const DEFAULT_BROWSERS = [\n {\n label: t(\"neetoMolecules.insights.labels.browsers.chrome\"),\n value: \"chrome\",\n },\n {\n label: t(\"neetoMolecules.insights.labels.browsers.safari\"),\n value: \"safari\",\n },\n];\n\nexport const INITIAL_TIME_PERIOD_VALUE = {\n label: t(\"neetoMolecules.insights.labels.allTime\"),\n value: { startDate: null, endDate: null, rangeType: \"all\" },\n};\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nconst PercentageBar = ({ value }) => (\n <>\n {value !== 0 && (\n <div\n className=\"neeto-ui-bg-gray-300 neeto-ui-rounded-full h-2\"\n style={{ width: `${value}%` }}\n />\n )}\n <Typography style=\"body3\">{value ? `${value}%` : 0}</Typography>\n </>\n);\n\nexport default memo(PercentageBar);\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nimport PercentageBar from \"./PercentageBar\";\n\nconst MetaInfoItem = ({ name, value }) => (\n <>\n <Typography style=\"body2\" textTransform=\"capitalize\">\n {name}\n </Typography>\n <div className=\"col-span-3 flex items-center gap-2\">\n <PercentageBar {...{ value }} />\n </div>\n </>\n);\n\nexport default memo(MetaInfoItem);\n","import MetaInfoItem from \"./MetaInfoItem\";\n\nconst DataDistribution = ({ data }) => (\n <div className=\"grid grid-cols-4 gap-2\">\n {data.map(({ name, value }) => (\n <MetaInfoItem {...{ name, value }} key={name} />\n ))}\n </div>\n);\n\nexport default DataDistribution;\n","import { existsBy } from \"neetocist\";\n\nconst getSum = (data, searchKey) => {\n let sum = 0;\n for (const key in data) {\n if (key.includes(searchKey)) sum += data[key];\n }\n\n return sum;\n};\n\nexport const transformInsights = (data, defaultItems) => {\n const othersData = Object.keys(data)\n .filter(key => !existsBy({ value: key }, defaultItems))\n .map(key => ({ name: key, value: data[key] }));\n\n const defaultData = defaultItems.map(({ label, value }) => ({\n name: label,\n value: getSum(data, value) || 0,\n }));\n\n return { defaultData, othersData };\n};\n","import { memo } from \"react\";\n\nimport { Tooltip, Typography } from \"neetoui\";\nimport { pluck, sum, values } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DataDistribution from \"./DataDistribution\";\nimport MetaInfoItem from \"./MetaInfoItem\";\n\nimport { transformInsights } from \"../utils\";\n\nconst MetaInfo = ({ type, data, defaultItems }) => {\n const { t } = useTranslation();\n const { defaultData, othersData } = transformInsights(data, defaultItems);\n\n const othersSum = sum(values(pluck(\"value\", othersData)));\n\n return (\n <div className=\"neeto-ui-bg-gray-100 neeto-ui-rounded p-4\">\n <Typography\n className=\"mb-2\"\n style=\"body2\"\n textTransform=\"uppercase\"\n weight=\"bold\"\n >\n {type}\n </Typography>\n <DataDistribution data={defaultData} />\n <Tooltip\n content={<DataDistribution data={othersData} />}\n disabled={!othersSum}\n position=\"bottom\"\n >\n <div className=\"mt-2 grid grid-cols-4 gap-2\">\n <MetaInfoItem\n name={t(\"neetoMolecules.insights.others\")}\n value={othersSum}\n />\n </div>\n </Tooltip>\n </div>\n );\n};\n\nexport default memo(MetaInfo);\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nconst TimeItem = ({ value, suffix }) => (\n <div className=\"flex items-end\" data-testid=\"time-item\">\n <Typography className=\"me-1\" style=\"h1\" weight=\"semibold\">\n {value}\n </Typography>\n <Typography lineHeight=\"loose\" style=\"body2\">\n {suffix}\n </Typography>\n </div>\n);\n\nexport default memo(TimeItem);\n","import { memo } from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport HelpPopover from \"components/HelpPopover\";\n\nimport TimeItem from \"./TimeItem\";\n\nconst MetricItem = ({ metric, value, helpText, isTime, isPercentage }) => {\n const renderTime = value => {\n const { h: hours, m: minutes, s: seconds } = value;\n const showSeconds = !hours && !minutes;\n\n return (\n <div className=\"flex gap-2\">\n {!!hours && <TimeItem suffix=\"H\" value={hours} />}\n {!!minutes && <TimeItem suffix=\"M\" value={minutes} />}\n {(!!seconds || showSeconds) && <TimeItem suffix=\"S\" value={seconds} />}\n </div>\n );\n };\n\n return (\n <div\n className=\"nf-insights__metric-item neeto-ui-border-gray-200 border-b pb-4\"\n data-testid={`${hyphenate(metric)}-metric`}\n >\n <div className=\"flex items-center gap-2\">\n <div className=\"flex items-end gap-x-1\">\n {isTime ? (\n renderTime(value)\n ) : (\n <Typography\n className=\"neeto-ui-text-gray-800\"\n data-testid=\"insights-count\"\n style=\"h1\"\n weight=\"semibold\"\n >\n {value || 0}\n {isPercentage ? \"%\" : \"\"}\n </Typography>\n )}\n </div>\n {helpText && (\n <div>\n <HelpPopover description={helpText} />\n </div>\n )}\n </div>\n <Typography\n className=\"neeto-ui-text-gray-700\"\n data-testid=\"insights-type\"\n style=\"body3\"\n >\n {metric}\n </Typography>\n </div>\n );\n};\n\nexport default memo(MetricItem);\n","import classNames from \"classnames\";\nimport { Warning } from \"neetoicons\";\nimport { Tooltip, Typography, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DateRangeFilter from \"components/DateRangeFilter\";\n\nimport { DEFAULT_DEVICES, DEFAULT_BROWSERS, DEFAULT_OS } from \"./constants\";\nimport MetaInfo from \"./MetaInfo\";\nimport MetricItem from \"./MetricItem\";\n\nconst Insights = ({\n insightsData,\n isLoading,\n timePeriod,\n setTimePeriod,\n helpTexts = {},\n showWarningMessage = false,\n className,\n title,\n tooltipProps = {},\n}) => {\n const { t } = useTranslation();\n\n const {\n visitCount,\n startCount,\n submissionCount,\n completionRate,\n averageSubmissionTime,\n devices,\n operatingSystems,\n browsers,\n } = insightsData;\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <div\n className={classNames(\"mx-auto pt-10\", className)}\n data-testid=\"insights\"\n >\n <div className=\"mb-10 flex w-full items-center\">\n <Typography data-testid=\"submissions-insights-title\" style=\"h2\">\n {title || t(\"neetoMolecules.insights.title\")}\n </Typography>\n {showWarningMessage && (\n <Tooltip\n content={t(\"neetoMolecules.insights.dataInaccuracyWarning\")}\n position=\"bottom\"\n touch={[\"hold\", 500]}\n {...tooltipProps}\n >\n <span className=\"ms-3\">\n <Warning\n className=\"neeto-ui-text-warning-500\"\n data-testid=\"insights-warning\"\n size={20}\n />\n </span>\n </Tooltip>\n )}\n <span className=\"ms-auto\">\n <DateRangeFilter {...{ setTimePeriod, timePeriod }} />\n </span>\n </div>\n <div className=\"mb-6 grid grid-cols-1 gap-x-9 gap-y-6 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-5 lg:gap-0\">\n <MetricItem\n helpText={helpTexts[\"visitCount\"]}\n metric={t(\"neetoMolecules.insights.metrics.visits\")}\n value={visitCount}\n />\n <MetricItem\n helpText={helpTexts[\"startCount\"]}\n metric={t(\"neetoMolecules.insights.metrics.starts\")}\n value={startCount}\n />\n <MetricItem\n helpText={helpTexts[\"submissions\"]}\n metric={t(\"neetoMolecules.insights.metrics.submissions\")}\n value={submissionCount}\n />\n <MetricItem\n isPercentage\n helpText={helpTexts[\"completionRate\"]}\n metric={t(\"neetoMolecules.insights.metrics.completionRate\")}\n value={completionRate}\n />\n <MetricItem\n isTime\n helpText={helpTexts[\"averageSubmissionTime\"]}\n metric={t(\"neetoMolecules.insights.metrics.avgTimeToComplete\")}\n timeSuffix={t(\"neetoMolecules.insights.mins\")}\n value={averageSubmissionTime}\n />\n </div>\n <div className=\"grid grid-cols-1 gap-6 sm:grid-cols-2 lg:grid-cols-3\">\n <MetaInfo\n data={devices}\n defaultItems={DEFAULT_DEVICES}\n type={t(\"neetoMolecules.insights.devices\")}\n />\n <MetaInfo\n data={operatingSystems}\n defaultItems={DEFAULT_OS}\n type={t(\"neetoMolecules.insights.os\")}\n />\n <MetaInfo\n data={browsers}\n defaultItems={DEFAULT_BROWSERS}\n type={t(\"neetoMolecules.insights.browsers\")}\n />\n </div>\n </div>\n );\n};\n\nInsights.propTypes = {\n /**\n * Title displayed for the Insights component.\n */\n title: PropTypes.string,\n /**\n * Props for the tooltip displayed on the warning icon.\n */\n tooltipProps: PropTypes.object,\n /**\n * Object containing metrics and statistics for insights\n */\n insightsData: PropTypes.shape({\n visitCount: PropTypes.number,\n startCount: PropTypes.number,\n submissionCount: PropTypes.number,\n completionRate: PropTypes.number,\n averageSubmissionTime: PropTypes.shape({\n h: PropTypes.number,\n m: PropTypes.number,\n s: PropTypes.number,\n }),\n devices: PropTypes.shape({\n desktop: PropTypes.number,\n smartphone: PropTypes.number,\n }),\n operatingSystems: PropTypes.shape({\n mac: PropTypes.number,\n windows: PropTypes.number,\n }),\n browsers: PropTypes.shape({\n chrome: PropTypes.number,\n safari: PropTypes.number,\n }),\n }),\n /**\n * Indicates whether insights data is currently being fetched from an API\n */\n isLoading: PropTypes.bool,\n /**\n * The state corresponding to the currently selected date range.\n */\n timePeriod: PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.object,\n }),\n /**\n * The setter method for `timePeriod` state.\n */\n setTimePeriod: PropTypes.func,\n /**\n * Object containing explanatory text for each metric, providing additional context that can help users understand the significance of the metrics displayed.\n */\n helpTexts: PropTypes.shape({\n visitCount: PropTypes.string,\n startCount: PropTypes.string,\n submissions: PropTypes.string,\n completionRate: PropTypes.string,\n averageSubmissionTime: PropTypes.string,\n }),\n /**\n * Displays a warning to indicate that the insights may not be accurate, as the insights integration occurred after the record's creation.\n */\n showWarningMessage: PropTypes.bool,\n /**\n * To provide additional classes.\n */\n className: PropTypes.string,\n};\n\nexport default Insights;\n"],"names":["DEFAULT_DEVICES","label","t","value","DEFAULT_OS","DEFAULT_BROWSERS","PercentageBar","_ref","_jsxs","_Fragment","children","_jsx","className","style","width","concat","Typography","memo","MetaInfoItem","name","textTransform","DataDistribution","data","map","_ref2","_createElement","key","getSum","searchKey","sum","includes","transformInsights","defaultItems","othersData","Object","keys","filter","existsBy","defaultData","MetaInfo","type","_useTranslation","useTranslation","_transformInsights","othersSum","values","pluck","weight","Tooltip","content","disabled","position","TimeItem","suffix","lineHeight","MetricItem","metric","helpText","isTime","isPercentage","renderTime","hours","h","minutes","m","seconds","s","showSeconds","hyphenate","HelpPopover","description","Insights","insightsData","isLoading","timePeriod","setTimePeriod","_ref$helpTexts","helpTexts","_ref$showWarningMessa","showWarningMessage","title","_ref$tooltipProps","tooltipProps","visitCount","startCount","submissionCount","completionRate","averageSubmissionTime","devices","operatingSystems","browsers","Spinner","classNames","_objectSpread","touch","Warning","size","DateRangeFilter","timeSuffix"],"mappings":"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"}
|
package/dist/IntegrationCard.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
2
|
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
3
3
|
import classnames from 'classnames';
|
|
4
|
-
import { noop, isNotEmpty } from '@bigbinary/neeto-cist';
|
|
4
|
+
import { noop, isPresent, isNotEmpty } from '@bigbinary/neeto-cist';
|
|
5
5
|
import { joinHyphenCase } from '@bigbinary/neeto-commons-frontend/utils/general';
|
|
6
6
|
import Typography from '@bigbinary/neetoui/Typography';
|
|
7
7
|
import Button from '@bigbinary/neetoui/Button';
|
|
@@ -84,7 +84,7 @@ var Status = function Status(_ref) {
|
|
|
84
84
|
}));
|
|
85
85
|
};
|
|
86
86
|
|
|
87
|
-
var _excluded = ["icon", "subIcons", "label", "description", "className", "onConnect", "onDisconnect", "onManage", "isLoading", "isConnected", "isFailed", "isExpired", "disabled", "hidden", "hideDisconnect", "onClick", "tooltipProps", "customDropdown", "
|
|
87
|
+
var _excluded = ["icon", "subIcons", "label", "description", "className", "onConnect", "onDisconnect", "onManage", "isLoading", "isConnected", "isFailed", "isExpired", "disabled", "hidden", "hideDisconnect", "onClick", "tooltipProps", "customDropdown", "dataTestid", "connectPath", "connectUrl", "children"];
|
|
88
88
|
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; }
|
|
89
89
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).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; }
|
|
90
90
|
var IntegrationCard = function IntegrationCard(_ref) {
|
|
@@ -123,8 +123,8 @@ var IntegrationCard = function IntegrationCard(_ref) {
|
|
|
123
123
|
tooltipProps = _ref$tooltipProps === void 0 ? {} : _ref$tooltipProps,
|
|
124
124
|
_ref$customDropdown = _ref.customDropdown,
|
|
125
125
|
customDropdown = _ref$customDropdown === void 0 ? null : _ref$customDropdown,
|
|
126
|
-
_ref$
|
|
127
|
-
|
|
126
|
+
_ref$dataTestid = _ref.dataTestid,
|
|
127
|
+
dataTestid = _ref$dataTestid === void 0 ? "" : _ref$dataTestid,
|
|
128
128
|
_ref$connectPath = _ref.connectPath,
|
|
129
129
|
connectPath = _ref$connectPath === void 0 ? "" : _ref$connectPath,
|
|
130
130
|
_ref$connectUrl = _ref.connectUrl,
|
|
@@ -144,8 +144,7 @@ var IntegrationCard = function IntegrationCard(_ref) {
|
|
|
144
144
|
content: disabled && t("neetoMolecules.integrationCard.tooltip.integrationNotAvailable")
|
|
145
145
|
}, tooltipProps), {}, {
|
|
146
146
|
children: /*#__PURE__*/jsxs("div", _objectSpread(_objectSpread(_objectSpread({
|
|
147
|
-
"data-
|
|
148
|
-
"data-testid": "integration-card",
|
|
147
|
+
"data-testid": isPresent(dataTestid) ? dataTestid : "integration-card",
|
|
149
148
|
className: classnames("neeto-ui-border-gray-300 neeto-ui-shadow-xs hover:neeto-ui-border-gray-500 focus:neeto-ui-border-gray-500 neeto-ui-rounded-lg flex flex-col border p-6 no-underline outline-none transition-colors", {
|
|
150
149
|
"hover:neeto-ui-bg-100 cursor-not-allowed opacity-50": disabled,
|
|
151
150
|
"cursor-pointer": isCardClickable
|
|
@@ -153,7 +152,7 @@ var IntegrationCard = function IntegrationCard(_ref) {
|
|
|
153
152
|
}, cardProps), otherProps), {}, {
|
|
154
153
|
children: [/*#__PURE__*/jsxs("div", {
|
|
155
154
|
className: "flex flex-grow justify-between",
|
|
156
|
-
"data-
|
|
155
|
+
"data-testid": "integration-tabs",
|
|
157
156
|
children: [/*#__PURE__*/jsxs("div", {
|
|
158
157
|
className: "flex min-w-0 flex-col justify-end",
|
|
159
158
|
children: [/*#__PURE__*/jsx("div", {
|
|
@@ -165,13 +164,13 @@ var IntegrationCard = function IntegrationCard(_ref) {
|
|
|
165
164
|
className: "my-auto",
|
|
166
165
|
children: [/*#__PURE__*/jsx(Typography, {
|
|
167
166
|
className: "mb-2",
|
|
168
|
-
"data-
|
|
167
|
+
"data-testid": "integration-card-label",
|
|
169
168
|
style: "h4",
|
|
170
169
|
weight: "semibold",
|
|
171
170
|
children: label
|
|
172
171
|
}), /*#__PURE__*/jsx(Typography, {
|
|
173
172
|
className: "break-words",
|
|
174
|
-
"data-
|
|
173
|
+
"data-testid": "".concat(joinHyphenCase(label), "-integration-description"),
|
|
175
174
|
style: "body2",
|
|
176
175
|
children: description
|
|
177
176
|
}), children]
|
|
@@ -196,7 +195,7 @@ var IntegrationCard = function IntegrationCard(_ref) {
|
|
|
196
195
|
isExpired: isExpired
|
|
197
196
|
}), isFailed && /*#__PURE__*/jsx(Button, {
|
|
198
197
|
className: "neeto-ui-text-warning-500",
|
|
199
|
-
"data-
|
|
198
|
+
"data-testid": "connect-button",
|
|
200
199
|
disabled: disabled || isLoading,
|
|
201
200
|
href: connectUrl,
|
|
202
201
|
label: t("neetoMolecules.integrationCard.tryAgain"),
|
|
@@ -204,8 +203,7 @@ var IntegrationCard = function IntegrationCard(_ref) {
|
|
|
204
203
|
to: connectPath,
|
|
205
204
|
onClick: onConnect
|
|
206
205
|
}), !isConnected && !isFailed && /*#__PURE__*/jsx(Button, {
|
|
207
|
-
"data-
|
|
208
|
-
"data-testid": "integraiton-card-connect-button",
|
|
206
|
+
"data-testid": "connect-button",
|
|
209
207
|
disabled: disabled || isLoading,
|
|
210
208
|
href: connectUrl,
|
|
211
209
|
label: t("neetoMolecules.integrationCard.connect"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IntegrationCard.js","sources":["../src/components/IntegrationCard/Dropdown.jsx","../src/components/IntegrationCard/Status.jsx","../src/components/IntegrationCard/index.jsx"],"sourcesContent":["import { noop } from \"neetocist\";\nimport { isNotNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport MoreDropdown from \"components/MoreDropdown\";\n\nconst Dropdown = ({\n customDropdown,\n handleManage = noop,\n hideDisconnect = false,\n onDisconnect = noop,\n}) => {\n const { t } = useTranslation();\n\n if (isNotNil(customDropdown)) {\n return <div onClick={e => e.stopPropagation()}>{customDropdown}</div>;\n }\n\n const isManageable = isNotNil(handleManage);\n\n if (!isManageable && hideDisconnect) {\n return null;\n }\n\n return (\n <div onClick={e => e.stopPropagation()}>\n <MoreDropdown\n menuItems={[\n {\n isVisible: isManageable,\n onClick: handleManage,\n label: t(\"neetoMolecules.integrationCard.manage\"),\n key: \"integration-card-manage-integration\",\n },\n {\n isVisible: !hideDisconnect,\n onClick: onDisconnect,\n label: t(\"neetoMolecules.integrationCard.disconnect\"),\n key: \"integration-card-manage-disconnection\",\n },\n ]}\n />\n </div>\n );\n};\n\nexport default Dropdown;\n","import { Check, Warning } from \"neetoicons\";\nimport { Tag } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst Status = ({ isExpired }) => {\n const { t } = useTranslation();\n\n const tagProps = isExpired\n ? {\n icon: Warning,\n label: t(\"neetoMolecules.integrationCard.tags.expired\"),\n style: \"warning\",\n }\n : {\n icon: Check,\n label: t(\"neetoMolecules.integrationCard.tags.connected\"),\n style: \"success\",\n };\n\n return (\n <Tag\n className=\"flex-row-reverse\"\n {...tagProps}\n data-testid=\"integration-status\"\n />\n );\n};\n\nexport default Status;\n","import classnames from \"classnames\";\nimport { isNotEmpty, noop } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Typography, Button, Spinner, Tooltip } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { isNotNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Dropdown from \"./Dropdown\";\nimport Status from \"./Status\";\n\nconst IntegrationCard = ({\n icon: Icon,\n subIcons = [],\n label = \"\",\n description = \"\",\n className = \"\",\n onConnect = noop,\n onDisconnect = noop,\n onManage = undefined,\n isLoading = false,\n isConnected = false,\n isFailed = false,\n isExpired = false,\n disabled = false,\n hidden = false,\n hideDisconnect = false,\n onClick: onCardClick = undefined,\n tooltipProps = {},\n customDropdown = null,\n dataCy = \"\",\n connectPath = \"\",\n connectUrl = \"\",\n children,\n ...otherProps\n}) => {\n const { t } = useTranslation();\n\n if (hidden) return null;\n\n const isCardClickable = isConnected && isNotNil(onCardClick);\n\n const cardProps = isCardClickable ? { onClick: onCardClick } : {};\n\n return (\n <Tooltip\n disabled={!disabled}\n position=\"top\"\n content={\n disabled &&\n t(\"neetoMolecules.integrationCard.tooltip.integrationNotAvailable\")\n }\n {...tooltipProps}\n >\n <div\n data-cy={dataCy}\n data-testid=\"integration-card\"\n className={classnames(\n \"neeto-ui-border-gray-300 neeto-ui-shadow-xs hover:neeto-ui-border-gray-500 focus:neeto-ui-border-gray-500 neeto-ui-rounded-lg flex flex-col border p-6 no-underline outline-none transition-colors\",\n {\n \"hover:neeto-ui-bg-100 cursor-not-allowed opacity-50\": disabled,\n \"cursor-pointer\": isCardClickable,\n },\n className\n )}\n {...cardProps}\n {...otherProps}\n >\n <div\n className=\"flex flex-grow justify-between\"\n data-cy=\"integration-tabs\"\n >\n <div className=\"flex min-w-0 flex-col justify-end\">\n <div className=\"relative mb-4 flex h-8\">\n {Icon && <Icon size={32} />}\n </div>\n <div className=\"my-auto\">\n <Typography\n className=\"mb-2\"\n data-cy=\"integration-card-label\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n <Typography\n className=\"break-words\"\n data-cy={`${joinHyphenCase(label)}-integration-description`}\n style=\"body2\"\n >\n {description}\n </Typography>\n {children}\n </div>\n </div>\n {isNotEmpty(subIcons) && (\n <div className=\"flex h-24 flex-col gap-2\">\n {subIcons.map((Icon, index) => (\n <Icon\n className=\"neeto-ui-text-gray-600\"\n key={index}\n size={24}\n />\n ))}\n </div>\n )}\n </div>\n <div className=\"neeto-ui-border-gray-300 mt-4 w-full border-t pt-2\">\n {isLoading ? (\n <div className=\"mt-3 flex items-center justify-start\">\n <Spinner />\n </div>\n ) : (\n <div className=\"flex h-8 items-center justify-between\">\n {isConnected && <Status {...{ isExpired }} />}\n {isFailed && (\n <Button\n className=\"neeto-ui-text-warning-500\"\n data-cy=\"connect-button\"\n disabled={disabled || isLoading}\n href={connectUrl}\n label={t(\"neetoMolecules.integrationCard.tryAgain\")}\n style=\"link\"\n to={connectPath}\n onClick={onConnect}\n />\n )}\n {!isConnected && !isFailed && (\n <Button\n data-cy=\"connect-button\"\n data-testid=\"integraiton-card-connect-button\"\n disabled={disabled || isLoading}\n href={connectUrl}\n label={t(\"neetoMolecules.integrationCard.connect\")}\n style=\"link\"\n to={connectPath}\n onClick={onConnect}\n />\n )}\n {(isConnected || isFailed) && (\n <Dropdown\n {...{ customDropdown, hideDisconnect, onDisconnect }}\n handleManage={onManage}\n />\n )}\n </div>\n )}\n </div>\n </div>\n </Tooltip>\n );\n};\n\nIntegrationCard.propTypes = {\n /**\n * The icon component to be displayed on the card.\n */\n icon: PropTypes.elementType,\n /**\n * Array of sub-icons to be displayed on the card.\n */\n subIcons: PropTypes.arrayOf(PropTypes.elementType),\n /**\n * The label to be displayed on the card.\n */\n label: PropTypes.string,\n /**\n * The description of the card.\n */\n description: PropTypes.string,\n /**\n * Additional class names for styling the card.\n */\n className: PropTypes.string,\n /**\n * Handler function called when the integration is connected.\n */\n onConnect: PropTypes.func,\n /**\n * Handler function called when the manage dropdown is clicked.\n */\n onManage: PropTypes.func,\n /**\n * Handler function called when clicked on integration card.\n */\n onClick: PropTypes.func,\n /**\n * Handler function called when the disconnect dropdown is clicked.\n */\n onDisconnect: PropTypes.func,\n /**\n * Flag indicating if the integration is currently loading.\n */\n isLoading: PropTypes.bool,\n /**\n * Flag indicating if the integration is connected.\n */\n isConnected: PropTypes.bool,\n /**\n * Flag indicating if the integration has failed.\n */\n isFailed: PropTypes.bool,\n /**\n * Flag indicating if the integration has expired.\n */\n isExpired: PropTypes.bool,\n /**\n * Flag indicating if the integration is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * Flag indicating if the card should be hidden.\n */\n hidden: PropTypes.bool,\n /**\n * Flag indicating if the disconnect button should be hidden.\n */\n hideDisconnect: PropTypes.bool,\n /**\n * Additional props for customizing the tooltip wrapper.\n */\n tooltipProps: PropTypes.object,\n /**\n * Custom dropdown component to be rendered.\n */\n customDropdown: PropTypes.element,\n /**\n * Additional children elements to be rendered within the card.\n */\n children: PropTypes.node,\n /**\n * Internal path to the integration connection page.\n */\n connectPath: PropTypes.string,\n /**\n * External path to the integration connection page.\n */\n connectUrl: PropTypes.string,\n};\n\nexport default IntegrationCard;\n"],"names":["Dropdown","_ref","customDropdown","_ref$handleManage","handleManage","noop","_ref$hideDisconnect","hideDisconnect","_ref$onDisconnect","onDisconnect","_useTranslation","useTranslation","t","isNotNil","_jsx","onClick","e","stopPropagation","children","isManageable","MoreDropdown","menuItems","isVisible","label","key","Status","isExpired","tagProps","icon","Warning","style","Check","Tag","_objectSpread","className","IntegrationCard","Icon","_ref$subIcons","subIcons","_ref$label","_ref$description","description","_ref$className","_ref$onConnect","onConnect","_ref$onManage","onManage","undefined","_ref$isLoading","isLoading","_ref$isConnected","isConnected","_ref$isFailed","isFailed","_ref$isExpired","_ref$disabled","disabled","_ref$hidden","hidden","_ref$onClick","onCardClick","_ref$tooltipProps","tooltipProps","_ref$customDropdown","_ref$dataCy","dataCy","_ref$connectPath","connectPath","_ref$connectUrl","connectUrl","otherProps","_objectWithoutProperties","_excluded","isCardClickable","cardProps","Tooltip","position","content","_jsxs","classnames","size","Typography","weight","concat","joinHyphenCase","isNotEmpty","map","index","Spinner","Button","href","to"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"IntegrationCard.js","sources":["../src/components/IntegrationCard/Dropdown.jsx","../src/components/IntegrationCard/Status.jsx","../src/components/IntegrationCard/index.jsx"],"sourcesContent":["import { noop } from \"neetocist\";\nimport { isNotNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport MoreDropdown from \"components/MoreDropdown\";\n\nconst Dropdown = ({\n customDropdown,\n handleManage = noop,\n hideDisconnect = false,\n onDisconnect = noop,\n}) => {\n const { t } = useTranslation();\n\n if (isNotNil(customDropdown)) {\n return <div onClick={e => e.stopPropagation()}>{customDropdown}</div>;\n }\n\n const isManageable = isNotNil(handleManage);\n\n if (!isManageable && hideDisconnect) {\n return null;\n }\n\n return (\n <div onClick={e => e.stopPropagation()}>\n <MoreDropdown\n menuItems={[\n {\n isVisible: isManageable,\n onClick: handleManage,\n label: t(\"neetoMolecules.integrationCard.manage\"),\n key: \"integration-card-manage-integration\",\n },\n {\n isVisible: !hideDisconnect,\n onClick: onDisconnect,\n label: t(\"neetoMolecules.integrationCard.disconnect\"),\n key: \"integration-card-manage-disconnection\",\n },\n ]}\n />\n </div>\n );\n};\n\nexport default Dropdown;\n","import { Check, Warning } from \"neetoicons\";\nimport { Tag } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst Status = ({ isExpired }) => {\n const { t } = useTranslation();\n\n const tagProps = isExpired\n ? {\n icon: Warning,\n label: t(\"neetoMolecules.integrationCard.tags.expired\"),\n style: \"warning\",\n }\n : {\n icon: Check,\n label: t(\"neetoMolecules.integrationCard.tags.connected\"),\n style: \"success\",\n };\n\n return (\n <Tag\n className=\"flex-row-reverse\"\n {...tagProps}\n data-testid=\"integration-status\"\n />\n );\n};\n\nexport default Status;\n","import classnames from \"classnames\";\nimport { isNotEmpty, isPresent, noop } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Typography, Button, Spinner, Tooltip } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { isNotNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Dropdown from \"./Dropdown\";\nimport Status from \"./Status\";\n\nconst IntegrationCard = ({\n icon: Icon,\n subIcons = [],\n label = \"\",\n description = \"\",\n className = \"\",\n onConnect = noop,\n onDisconnect = noop,\n onManage = undefined,\n isLoading = false,\n isConnected = false,\n isFailed = false,\n isExpired = false,\n disabled = false,\n hidden = false,\n hideDisconnect = false,\n onClick: onCardClick = undefined,\n tooltipProps = {},\n customDropdown = null,\n dataTestid = \"\",\n connectPath = \"\",\n connectUrl = \"\",\n children,\n ...otherProps\n}) => {\n const { t } = useTranslation();\n\n if (hidden) return null;\n\n const isCardClickable = isConnected && isNotNil(onCardClick);\n\n const cardProps = isCardClickable ? { onClick: onCardClick } : {};\n\n return (\n <Tooltip\n disabled={!disabled}\n position=\"top\"\n content={\n disabled &&\n t(\"neetoMolecules.integrationCard.tooltip.integrationNotAvailable\")\n }\n {...tooltipProps}\n >\n <div\n data-testid={isPresent(dataTestid) ? dataTestid : \"integration-card\"}\n className={classnames(\n \"neeto-ui-border-gray-300 neeto-ui-shadow-xs hover:neeto-ui-border-gray-500 focus:neeto-ui-border-gray-500 neeto-ui-rounded-lg flex flex-col border p-6 no-underline outline-none transition-colors\",\n {\n \"hover:neeto-ui-bg-100 cursor-not-allowed opacity-50\": disabled,\n \"cursor-pointer\": isCardClickable,\n },\n className\n )}\n {...cardProps}\n {...otherProps}\n >\n <div\n className=\"flex flex-grow justify-between\"\n data-testid=\"integration-tabs\"\n >\n <div className=\"flex min-w-0 flex-col justify-end\">\n <div className=\"relative mb-4 flex h-8\">\n {Icon && <Icon size={32} />}\n </div>\n <div className=\"my-auto\">\n <Typography\n className=\"mb-2\"\n data-testid=\"integration-card-label\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n <Typography\n className=\"break-words\"\n data-testid={`${joinHyphenCase(label)}-integration-description`}\n style=\"body2\"\n >\n {description}\n </Typography>\n {children}\n </div>\n </div>\n {isNotEmpty(subIcons) && (\n <div className=\"flex h-24 flex-col gap-2\">\n {subIcons.map((Icon, index) => (\n <Icon\n className=\"neeto-ui-text-gray-600\"\n key={index}\n size={24}\n />\n ))}\n </div>\n )}\n </div>\n <div className=\"neeto-ui-border-gray-300 mt-4 w-full border-t pt-2\">\n {isLoading ? (\n <div className=\"mt-3 flex items-center justify-start\">\n <Spinner />\n </div>\n ) : (\n <div className=\"flex h-8 items-center justify-between\">\n {isConnected && <Status {...{ isExpired }} />}\n {isFailed && (\n <Button\n className=\"neeto-ui-text-warning-500\"\n data-testid=\"connect-button\"\n disabled={disabled || isLoading}\n href={connectUrl}\n label={t(\"neetoMolecules.integrationCard.tryAgain\")}\n style=\"link\"\n to={connectPath}\n onClick={onConnect}\n />\n )}\n {!isConnected && !isFailed && (\n <Button\n data-testid=\"connect-button\"\n disabled={disabled || isLoading}\n href={connectUrl}\n label={t(\"neetoMolecules.integrationCard.connect\")}\n style=\"link\"\n to={connectPath}\n onClick={onConnect}\n />\n )}\n {(isConnected || isFailed) && (\n <Dropdown\n {...{ customDropdown, hideDisconnect, onDisconnect }}\n handleManage={onManage}\n />\n )}\n </div>\n )}\n </div>\n </div>\n </Tooltip>\n );\n};\n\nIntegrationCard.propTypes = {\n /**\n * The icon component to be displayed on the card.\n */\n icon: PropTypes.elementType,\n /**\n * Array of sub-icons to be displayed on the card.\n */\n subIcons: PropTypes.arrayOf(PropTypes.elementType),\n /**\n * The label to be displayed on the card.\n */\n label: PropTypes.string,\n /**\n * The description of the card.\n */\n description: PropTypes.string,\n /**\n * Additional class names for styling the card.\n */\n className: PropTypes.string,\n /**\n * Handler function called when the integration is connected.\n */\n onConnect: PropTypes.func,\n /**\n * Handler function called when the manage dropdown is clicked.\n */\n onManage: PropTypes.func,\n /**\n * Handler function called when clicked on integration card.\n */\n onClick: PropTypes.func,\n /**\n * Handler function called when the disconnect dropdown is clicked.\n */\n onDisconnect: PropTypes.func,\n /**\n * Flag indicating if the integration is currently loading.\n */\n isLoading: PropTypes.bool,\n /**\n * Flag indicating if the integration is connected.\n */\n isConnected: PropTypes.bool,\n /**\n * Flag indicating if the integration has failed.\n */\n isFailed: PropTypes.bool,\n /**\n * Flag indicating if the integration has expired.\n */\n isExpired: PropTypes.bool,\n /**\n * Flag indicating if the integration is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * Flag indicating if the card should be hidden.\n */\n hidden: PropTypes.bool,\n /**\n * Flag indicating if the disconnect button should be hidden.\n */\n hideDisconnect: PropTypes.bool,\n /**\n * Additional props for customizing the tooltip wrapper.\n */\n tooltipProps: PropTypes.object,\n /**\n * Custom dropdown component to be rendered.\n */\n customDropdown: PropTypes.element,\n /**\n * Additional children elements to be rendered within the card.\n */\n children: PropTypes.node,\n /**\n * Internal path to the integration connection page.\n */\n connectPath: PropTypes.string,\n /**\n * External path to the integration connection page.\n */\n connectUrl: PropTypes.string,\n};\n\nexport default IntegrationCard;\n"],"names":["Dropdown","_ref","customDropdown","_ref$handleManage","handleManage","noop","_ref$hideDisconnect","hideDisconnect","_ref$onDisconnect","onDisconnect","_useTranslation","useTranslation","t","isNotNil","_jsx","onClick","e","stopPropagation","children","isManageable","MoreDropdown","menuItems","isVisible","label","key","Status","isExpired","tagProps","icon","Warning","style","Check","Tag","_objectSpread","className","IntegrationCard","Icon","_ref$subIcons","subIcons","_ref$label","_ref$description","description","_ref$className","_ref$onConnect","onConnect","_ref$onManage","onManage","undefined","_ref$isLoading","isLoading","_ref$isConnected","isConnected","_ref$isFailed","isFailed","_ref$isExpired","_ref$disabled","disabled","_ref$hidden","hidden","_ref$onClick","onCardClick","_ref$tooltipProps","tooltipProps","_ref$customDropdown","_ref$dataTestid","dataTestid","_ref$connectPath","connectPath","_ref$connectUrl","connectUrl","otherProps","_objectWithoutProperties","_excluded","isCardClickable","cardProps","Tooltip","position","content","_jsxs","isPresent","classnames","size","Typography","weight","concat","joinHyphenCase","isNotEmpty","map","index","Spinner","Button","href","to"],"mappings":"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"}
|
package/dist/IpRestriction.js
CHANGED
|
@@ -3342,7 +3342,7 @@ var AllowedIpRange = withT(function (_ref) {
|
|
|
3342
3342
|
className: "grid flex-grow grid-cols-1 gap-3 md:grid-cols-3",
|
|
3343
3343
|
children: [/*#__PURE__*/jsx(Input, {
|
|
3344
3344
|
className: "text-start",
|
|
3345
|
-
"data-
|
|
3345
|
+
"data-testid": "ip-start-text-field",
|
|
3346
3346
|
label: t("neetoMolecules.ipRestriction.ipStart"),
|
|
3347
3347
|
labelProps: {
|
|
3348
3348
|
className: "md:hidden"
|
|
@@ -3351,7 +3351,7 @@ var AllowedIpRange = withT(function (_ref) {
|
|
|
3351
3351
|
placeholder: t("neetoMolecules.ipRestriction.ipStart")
|
|
3352
3352
|
}), /*#__PURE__*/jsx(Input, {
|
|
3353
3353
|
className: "text-start",
|
|
3354
|
-
"data-
|
|
3354
|
+
"data-testid": "ip-end-text-field",
|
|
3355
3355
|
label: t("neetoMolecules.ipRestriction.ipEnd"),
|
|
3356
3356
|
labelProps: {
|
|
3357
3357
|
className: "md:hidden"
|
|
@@ -3372,8 +3372,7 @@ var AllowedIpRange = withT(function (_ref) {
|
|
|
3372
3372
|
className: "flex flex-shrink-0 justify-center md:min-w-14",
|
|
3373
3373
|
children: /*#__PURE__*/jsx(Button, {
|
|
3374
3374
|
className: "mt-5 md:mt-0",
|
|
3375
|
-
"data-
|
|
3376
|
-
"data-testid": "allowed-ip-range-delete-btn",
|
|
3375
|
+
"data-testid": "allowed-ip-range-delete-button",
|
|
3377
3376
|
icon: Delete,
|
|
3378
3377
|
style: "text",
|
|
3379
3378
|
tooltipProps: {
|
|
@@ -3393,9 +3392,9 @@ var AllowedIpRanges = withT(function (_ref) {
|
|
|
3393
3392
|
var t = _ref.t;
|
|
3394
3393
|
return /*#__PURE__*/jsxs("div", {
|
|
3395
3394
|
className: "flex flex-col gap-y-5",
|
|
3396
|
-
"data-
|
|
3395
|
+
"data-testid": "allowed-ip-range-container",
|
|
3397
3396
|
children: [/*#__PURE__*/jsx(Typography, {
|
|
3398
|
-
"data-
|
|
3397
|
+
"data-testid": "allowed-ip-range-heading",
|
|
3399
3398
|
style: "h4",
|
|
3400
3399
|
children: t("neetoMolecules.ipRestriction.allowedIpRangeTitle")
|
|
3401
3400
|
}), /*#__PURE__*/jsxs("div", {
|
|
@@ -3443,7 +3442,7 @@ var AllowedIpRanges = withT(function (_ref) {
|
|
|
3443
3442
|
}, index);
|
|
3444
3443
|
}), /*#__PURE__*/jsx(Button, {
|
|
3445
3444
|
className: "md:mt-2",
|
|
3446
|
-
"data-
|
|
3445
|
+
"data-testid": "add-allowed-ip-range-button",
|
|
3447
3446
|
icon: Plus,
|
|
3448
3447
|
iconPosition: "left",
|
|
3449
3448
|
label: t("neetoMolecules.ipRestriction.addNew"),
|
|
@@ -3486,7 +3485,7 @@ var CurrentIp = function CurrentIp() {
|
|
|
3486
3485
|
isLoading = _useShowCurrentIp.isLoading;
|
|
3487
3486
|
return /*#__PURE__*/jsx("div", {
|
|
3488
3487
|
className: "flex flex-wrap items-baseline gap-1",
|
|
3489
|
-
"data-
|
|
3488
|
+
"data-testid": "current-ip-container",
|
|
3490
3489
|
children: /*#__PURE__*/jsx(Typography, {
|
|
3491
3490
|
children: /*#__PURE__*/jsx(Trans, {
|
|
3492
3491
|
i18nKey: "neetoMolecules.ipRestriction.currentIpMessage",
|
|
@@ -3640,13 +3639,12 @@ var IpRestriction = function IpRestriction() {
|
|
|
3640
3639
|
actionBlock: /*#__PURE__*/jsxs("div", {
|
|
3641
3640
|
className: "flex flex-wrap items-center gap-2",
|
|
3642
3641
|
children: [/*#__PURE__*/jsx(Button$1, {
|
|
3643
|
-
"data-
|
|
3644
|
-
"data-testid": "save-changes-button",
|
|
3642
|
+
"data-testid": "ip-restriction-save-changes",
|
|
3645
3643
|
loading: isUpdating,
|
|
3646
3644
|
type: "submit",
|
|
3647
3645
|
children: t("neetoMolecules.common.actions.saveChanges")
|
|
3648
3646
|
}), /*#__PURE__*/jsx(Button, {
|
|
3649
|
-
"data-
|
|
3647
|
+
"data-testid": "ip-restriction-reset-btn",
|
|
3650
3648
|
disabled: !dirty,
|
|
3651
3649
|
label: t("neetoMolecules.common.actions.reset"),
|
|
3652
3650
|
style: "secondary",
|
|
@@ -3665,7 +3663,7 @@ var IpRestriction = function IpRestriction() {
|
|
|
3665
3663
|
children: [/*#__PURE__*/jsx(Switch, {
|
|
3666
3664
|
checked: values.ipRestriction,
|
|
3667
3665
|
className: "flex-grow-0",
|
|
3668
|
-
"data-
|
|
3666
|
+
"data-testid": "enable-ip-restriction-switch",
|
|
3669
3667
|
disabled: isFetchingIpRestriction || isUpdating,
|
|
3670
3668
|
id: "ipRestriction",
|
|
3671
3669
|
name: "ipRestriction",
|
|
@@ -3677,7 +3675,7 @@ var IpRestriction = function IpRestriction() {
|
|
|
3677
3675
|
return setFieldValue("ipRestriction", !values.ipRestriction);
|
|
3678
3676
|
}
|
|
3679
3677
|
}), /*#__PURE__*/jsx(Typography, {
|
|
3680
|
-
"data-
|
|
3678
|
+
"data-testid": "ip-restriction-description",
|
|
3681
3679
|
style: "body2",
|
|
3682
3680
|
children: t("neetoMolecules.ipRestriction.description")
|
|
3683
3681
|
})]
|