@bigbinary/neeto-molecules 4.0.130 → 4.0.131

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.
Files changed (248) hide show
  1. package/dist/AuditLogs.js +4 -4
  2. package/dist/AuditLogs.js.map +1 -1
  3. package/dist/Breadcrumbs.js +2 -2
  4. package/dist/Breadcrumbs.js.map +1 -1
  5. package/dist/Builder.js +15 -22
  6. package/dist/Builder.js.map +1 -1
  7. package/dist/CalendarView.js +5 -6
  8. package/dist/CalendarView.js.map +1 -1
  9. package/dist/CardLayout.js +0 -1
  10. package/dist/CardLayout.js.map +1 -1
  11. package/dist/{Chevron-Cat_oK6Q.js → Chevron-CvDNGT0i.js} +9 -10
  12. package/dist/Chevron-CvDNGT0i.js.map +1 -0
  13. package/dist/Codeblock.js +3 -5
  14. package/dist/Codeblock.js.map +1 -1
  15. package/dist/{Columns-CsOYfWFt.js → Columns-D51hN86M.js} +8 -9
  16. package/dist/Columns-D51hN86M.js.map +1 -0
  17. package/dist/Columns.js +1 -1
  18. package/dist/ConfigurePageSidebar.js +2 -3
  19. package/dist/ConfigurePageSidebar.js.map +1 -1
  20. package/dist/ConfirmationModal.js +2 -2
  21. package/dist/ConfirmationModal.js.map +1 -1
  22. package/dist/CopyToClipboardButton.js +1 -2
  23. package/dist/CopyToClipboardButton.js.map +1 -1
  24. package/dist/DeleteArchiveModal.js +5 -7
  25. package/dist/DeleteArchiveModal.js.map +1 -1
  26. package/dist/DeviceIncompatibilityMessage.js +0 -1
  27. package/dist/DeviceIncompatibilityMessage.js.map +1 -1
  28. package/dist/DocumentEditor.js +3 -3
  29. package/dist/DocumentEditor.js.map +1 -1
  30. package/dist/DynamicVariables.js +4 -6
  31. package/dist/DynamicVariables.js.map +1 -1
  32. package/dist/EmailForm.js +4 -5
  33. package/dist/EmailForm.js.map +1 -1
  34. package/dist/EmailPreview.js +4 -5
  35. package/dist/EmailPreview.js.map +1 -1
  36. package/dist/EmojiPicker.js +1 -1
  37. package/dist/EmojiPicker.js.map +1 -1
  38. package/dist/EmojiReactions.js +1 -1
  39. package/dist/EmojiReactions.js.map +1 -1
  40. package/dist/ErrorPage.js +5 -5
  41. package/dist/ErrorPage.js.map +1 -1
  42. package/dist/FileUpload.js +9 -10
  43. package/dist/FileUpload.js.map +1 -1
  44. package/dist/FloatingActionMenu.js +19 -38
  45. package/dist/FloatingActionMenu.js.map +1 -1
  46. package/dist/Header.js +1 -3
  47. package/dist/Header.js.map +1 -1
  48. package/dist/HelpPopover.js +1 -5
  49. package/dist/HelpPopover.js.map +1 -1
  50. package/dist/IconPicker.js +2 -3
  51. package/dist/IconPicker.js.map +1 -1
  52. package/dist/Insights.js +3 -6
  53. package/dist/Insights.js.map +1 -1
  54. package/dist/IntegrationCard.js +10 -12
  55. package/dist/IntegrationCard.js.map +1 -1
  56. package/dist/IpRestriction.js +11 -13
  57. package/dist/IpRestriction.js.map +1 -1
  58. package/dist/KeyboardShortcuts.js +3 -4
  59. package/dist/KeyboardShortcuts.js.map +1 -1
  60. package/dist/LoginPage.js +3 -6
  61. package/dist/LoginPage.js.map +1 -1
  62. package/dist/MadeWith.js +0 -1
  63. package/dist/MadeWith.js.map +1 -1
  64. package/dist/MenuBar.js +6 -6
  65. package/dist/MenuBar.js.map +1 -1
  66. package/dist/Metadata.js +4 -7
  67. package/dist/Metadata.js.map +1 -1
  68. package/dist/MobilePreviewHeader.js +1 -1
  69. package/dist/MobilePreviewHeader.js.map +1 -1
  70. package/dist/MoreDropdown.js +1 -2
  71. package/dist/MoreDropdown.js.map +1 -1
  72. package/dist/NavigationHeader.js +1 -6
  73. package/dist/NavigationHeader.js.map +1 -1
  74. package/dist/NeetoWidget.js +1 -2
  75. package/dist/NeetoWidget.js.map +1 -1
  76. package/dist/Onboarding.js +1 -9
  77. package/dist/Onboarding.js.map +1 -1
  78. package/dist/OptionFields.js +6 -22
  79. package/dist/OptionFields.js.map +1 -1
  80. package/dist/PageLoader.js +1 -1
  81. package/dist/PageLoader.js.map +1 -1
  82. package/dist/PhoneNumber.js +0 -1
  83. package/dist/PhoneNumber.js.map +1 -1
  84. package/dist/ProductEmbed.js +7 -20
  85. package/dist/ProductEmbed.js.map +1 -1
  86. package/dist/PublishBlock.js +1 -12
  87. package/dist/PublishBlock.js.map +1 -1
  88. package/dist/PublishYourItem.js +2 -2
  89. package/dist/PublishYourItem.js.map +1 -1
  90. package/dist/Rename.js +9 -13
  91. package/dist/Rename.js.map +1 -1
  92. package/dist/Schedule.js +16 -20
  93. package/dist/Schedule.js.map +1 -1
  94. package/dist/SendToFields.js +1 -5
  95. package/dist/SendToFields.js.map +1 -1
  96. package/dist/SessionEnvironment.js +1 -7
  97. package/dist/SessionEnvironment.js.map +1 -1
  98. package/dist/Settings.js +8 -9
  99. package/dist/Settings.js.map +1 -1
  100. package/dist/ShareRecordingPane.js +6 -6
  101. package/dist/ShareRecordingPane.js.map +1 -1
  102. package/dist/ShareViaEmail.js +6 -9
  103. package/dist/ShareViaEmail.js.map +1 -1
  104. package/dist/ShareViaLink.js +5 -21
  105. package/dist/ShareViaLink.js.map +1 -1
  106. package/dist/Sidebar.js +5 -7
  107. package/dist/Sidebar.js.map +1 -1
  108. package/dist/StatusDropdown.js +7 -10
  109. package/dist/StatusDropdown.js.map +1 -1
  110. package/dist/StickyRibbonsContainer.js +3 -3
  111. package/dist/StickyRibbonsContainer.js.map +1 -1
  112. package/dist/SubHeader.js +12 -15
  113. package/dist/SubHeader.js.map +1 -1
  114. package/dist/Taxonomy.js +3 -5
  115. package/dist/Taxonomy.js.map +1 -1
  116. package/dist/ToggleFeatureCard.js +18 -24
  117. package/dist/ToggleFeatureCard.js.map +1 -1
  118. package/dist/VersionHistory.js +1 -3
  119. package/dist/VersionHistory.js.map +1 -1
  120. package/dist/cjs/AuditLogs.js +4 -4
  121. package/dist/cjs/AuditLogs.js.map +1 -1
  122. package/dist/cjs/Breadcrumbs.js +2 -2
  123. package/dist/cjs/Breadcrumbs.js.map +1 -1
  124. package/dist/cjs/Builder.js +15 -22
  125. package/dist/cjs/Builder.js.map +1 -1
  126. package/dist/cjs/CalendarView.js +5 -6
  127. package/dist/cjs/CalendarView.js.map +1 -1
  128. package/dist/cjs/CardLayout.js +0 -1
  129. package/dist/cjs/CardLayout.js.map +1 -1
  130. package/dist/cjs/{Chevron-ChTcXDNM.js → Chevron-CLyBYgRO.js} +9 -10
  131. package/dist/cjs/Chevron-CLyBYgRO.js.map +1 -0
  132. package/dist/cjs/Codeblock.js +3 -5
  133. package/dist/cjs/Codeblock.js.map +1 -1
  134. package/dist/cjs/{Columns-DHPNrFgq.js → Columns-7xltEL2z.js} +8 -9
  135. package/dist/cjs/Columns-7xltEL2z.js.map +1 -0
  136. package/dist/cjs/Columns.js +1 -1
  137. package/dist/cjs/ConfigurePageSidebar.js +2 -3
  138. package/dist/cjs/ConfigurePageSidebar.js.map +1 -1
  139. package/dist/cjs/ConfirmationModal.js +2 -2
  140. package/dist/cjs/ConfirmationModal.js.map +1 -1
  141. package/dist/cjs/CopyToClipboardButton.js +1 -2
  142. package/dist/cjs/CopyToClipboardButton.js.map +1 -1
  143. package/dist/cjs/DeleteArchiveModal.js +5 -7
  144. package/dist/cjs/DeleteArchiveModal.js.map +1 -1
  145. package/dist/cjs/DeviceIncompatibilityMessage.js +0 -1
  146. package/dist/cjs/DeviceIncompatibilityMessage.js.map +1 -1
  147. package/dist/cjs/DocumentEditor.js +3 -3
  148. package/dist/cjs/DocumentEditor.js.map +1 -1
  149. package/dist/cjs/DynamicVariables.js +4 -6
  150. package/dist/cjs/DynamicVariables.js.map +1 -1
  151. package/dist/cjs/EmailForm.js +4 -5
  152. package/dist/cjs/EmailForm.js.map +1 -1
  153. package/dist/cjs/EmailPreview.js +4 -5
  154. package/dist/cjs/EmailPreview.js.map +1 -1
  155. package/dist/cjs/EmojiPicker.js +1 -1
  156. package/dist/cjs/EmojiPicker.js.map +1 -1
  157. package/dist/cjs/EmojiReactions.js +1 -1
  158. package/dist/cjs/EmojiReactions.js.map +1 -1
  159. package/dist/cjs/ErrorPage.js +5 -5
  160. package/dist/cjs/ErrorPage.js.map +1 -1
  161. package/dist/cjs/FileUpload.js +9 -10
  162. package/dist/cjs/FileUpload.js.map +1 -1
  163. package/dist/cjs/FloatingActionMenu.js +19 -38
  164. package/dist/cjs/FloatingActionMenu.js.map +1 -1
  165. package/dist/cjs/Header.js +1 -3
  166. package/dist/cjs/Header.js.map +1 -1
  167. package/dist/cjs/HelpPopover.js +1 -5
  168. package/dist/cjs/HelpPopover.js.map +1 -1
  169. package/dist/cjs/IconPicker.js +2 -3
  170. package/dist/cjs/IconPicker.js.map +1 -1
  171. package/dist/cjs/Insights.js +3 -6
  172. package/dist/cjs/Insights.js.map +1 -1
  173. package/dist/cjs/IntegrationCard.js +9 -11
  174. package/dist/cjs/IntegrationCard.js.map +1 -1
  175. package/dist/cjs/IpRestriction.js +11 -13
  176. package/dist/cjs/IpRestriction.js.map +1 -1
  177. package/dist/cjs/KeyboardShortcuts.js +3 -4
  178. package/dist/cjs/KeyboardShortcuts.js.map +1 -1
  179. package/dist/cjs/LoginPage.js +3 -6
  180. package/dist/cjs/LoginPage.js.map +1 -1
  181. package/dist/cjs/MadeWith.js +0 -1
  182. package/dist/cjs/MadeWith.js.map +1 -1
  183. package/dist/cjs/MenuBar.js +6 -6
  184. package/dist/cjs/MenuBar.js.map +1 -1
  185. package/dist/cjs/Metadata.js +4 -7
  186. package/dist/cjs/Metadata.js.map +1 -1
  187. package/dist/cjs/MobilePreviewHeader.js +1 -1
  188. package/dist/cjs/MobilePreviewHeader.js.map +1 -1
  189. package/dist/cjs/MoreDropdown.js +1 -2
  190. package/dist/cjs/MoreDropdown.js.map +1 -1
  191. package/dist/cjs/NavigationHeader.js +1 -6
  192. package/dist/cjs/NavigationHeader.js.map +1 -1
  193. package/dist/cjs/NeetoWidget.js +1 -2
  194. package/dist/cjs/NeetoWidget.js.map +1 -1
  195. package/dist/cjs/Onboarding.js +1 -9
  196. package/dist/cjs/Onboarding.js.map +1 -1
  197. package/dist/cjs/OptionFields.js +6 -22
  198. package/dist/cjs/OptionFields.js.map +1 -1
  199. package/dist/cjs/PageLoader.js +1 -1
  200. package/dist/cjs/PageLoader.js.map +1 -1
  201. package/dist/cjs/PhoneNumber.js +0 -1
  202. package/dist/cjs/PhoneNumber.js.map +1 -1
  203. package/dist/cjs/ProductEmbed.js +7 -20
  204. package/dist/cjs/ProductEmbed.js.map +1 -1
  205. package/dist/cjs/PublishBlock.js +1 -12
  206. package/dist/cjs/PublishBlock.js.map +1 -1
  207. package/dist/cjs/PublishYourItem.js +2 -2
  208. package/dist/cjs/PublishYourItem.js.map +1 -1
  209. package/dist/cjs/Rename.js +9 -13
  210. package/dist/cjs/Rename.js.map +1 -1
  211. package/dist/cjs/Schedule.js +16 -20
  212. package/dist/cjs/Schedule.js.map +1 -1
  213. package/dist/cjs/SendToFields.js +1 -5
  214. package/dist/cjs/SendToFields.js.map +1 -1
  215. package/dist/cjs/SessionEnvironment.js +1 -7
  216. package/dist/cjs/SessionEnvironment.js.map +1 -1
  217. package/dist/cjs/Settings.js +8 -9
  218. package/dist/cjs/Settings.js.map +1 -1
  219. package/dist/cjs/ShareRecordingPane.js +6 -6
  220. package/dist/cjs/ShareRecordingPane.js.map +1 -1
  221. package/dist/cjs/ShareViaEmail.js +6 -9
  222. package/dist/cjs/ShareViaEmail.js.map +1 -1
  223. package/dist/cjs/ShareViaLink.js +5 -21
  224. package/dist/cjs/ShareViaLink.js.map +1 -1
  225. package/dist/cjs/Sidebar.js +5 -7
  226. package/dist/cjs/Sidebar.js.map +1 -1
  227. package/dist/cjs/StatusDropdown.js +6 -9
  228. package/dist/cjs/StatusDropdown.js.map +1 -1
  229. package/dist/cjs/StickyRibbonsContainer.js +3 -3
  230. package/dist/cjs/StickyRibbonsContainer.js.map +1 -1
  231. package/dist/cjs/SubHeader.js +12 -15
  232. package/dist/cjs/SubHeader.js.map +1 -1
  233. package/dist/cjs/Taxonomy.js +3 -5
  234. package/dist/cjs/Taxonomy.js.map +1 -1
  235. package/dist/cjs/ToggleFeatureCard.js +17 -23
  236. package/dist/cjs/ToggleFeatureCard.js.map +1 -1
  237. package/dist/cjs/VersionHistory.js +1 -3
  238. package/dist/cjs/VersionHistory.js.map +1 -1
  239. package/package.json +1 -1
  240. package/types/IntegrationCard.d.ts +1 -1
  241. package/types/Settings.d.ts +2 -2
  242. package/types/ShareViaLink.d.ts +2 -2
  243. package/types/SubHeader.d.ts +2 -2
  244. package/types/ToggleFeatureCard.d.ts +3 -3
  245. package/dist/Chevron-Cat_oK6Q.js.map +0 -1
  246. package/dist/Columns-CsOYfWFt.js.map +0 -1
  247. package/dist/cjs/Chevron-ChTcXDNM.js.map +0 -1
  248. 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-cy": "".concat(hyphenate(metric), "-metric"),
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-cy": "insights-type",
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-cy": "submissions-insights-title",
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
  })
@@ -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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"}
@@ -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", "dataCy", "connectPath", "connectUrl", "children"];
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$dataCy = _ref.dataCy,
127
- dataCy = _ref$dataCy === void 0 ? "" : _ref$dataCy,
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-cy": dataCy,
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-cy": "integration-tabs",
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-cy": "integration-card-label",
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-cy": "".concat(joinHyphenCase(label), "-integration-description"),
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-cy": "connect-button",
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-cy": "connect-button",
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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"}
@@ -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-cy": "ip-start-text-field",
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-cy": "ip-end-text-field",
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-cy": "allowed-ip-range-delete-button",
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-cy": "allowed-ip-range-container",
3395
+ "data-testid": "allowed-ip-range-container",
3397
3396
  children: [/*#__PURE__*/jsx(Typography, {
3398
- "data-cy": "allowed-ip-range-heading",
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-cy": "add-allowed-ip-range-button",
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-cy": "current-ip-container",
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-cy": "ip-restriction-save-changes",
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-cy": "ip-restriction-reset-btn",
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-cy": "enable-ip-restriction-switch",
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-cy": "ip-restriction-description",
3678
+ "data-testid": "ip-restriction-description",
3681
3679
  style: "body2",
3682
3680
  children: t("neetoMolecules.ipRestriction.description")
3683
3681
  })]