@bigbinary/neeto-molecules 1.2.0-beta1 → 1.2.0-beta3

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 (251) hide show
  1. package/README.md +1 -0
  2. package/dist/BrowserSupport.js +3 -3
  3. package/dist/Builder.js +5 -5
  4. package/dist/CalendarView.js +5 -5
  5. package/dist/{Chevron-c64ff676.js → Chevron-c639aa31.js} +5 -5
  6. package/dist/{Chevron-c64ff676.js.map → Chevron-c639aa31.js.map} +1 -1
  7. package/dist/Codeblock.js +4 -4
  8. package/dist/Columns.js +5 -5
  9. package/dist/ConfigurePageSidebar.js +5 -5
  10. package/dist/CopyToClipboardButton.js +4 -4
  11. package/dist/Currency.js +2 -2
  12. package/dist/CustomDomain.js +5 -5
  13. package/dist/CustomDomainDashboard.js +6 -6
  14. package/dist/DateFormat.js +1 -1
  15. package/dist/DateRangeFilter.js +9 -8
  16. package/dist/DateRangeFilter.js.map +1 -1
  17. package/dist/DeleteArchiveModal.js +1 -1
  18. package/dist/DocumentEditor.js +4 -4
  19. package/dist/DynamicVariables.js +3 -3
  20. package/dist/EmailForm.js +5 -5
  21. package/dist/EmojiPicker.js +54 -15
  22. package/dist/EmojiPicker.js.map +1 -1
  23. package/dist/EmojiReactions.js +1 -1
  24. package/dist/ErrorPage.js +1 -1
  25. package/dist/FloatingActionMenu.js +6 -6
  26. package/dist/FloatingActionMenu.js.map +1 -1
  27. package/dist/Header.js +4 -4
  28. package/dist/HelpPopover.js +2 -2
  29. package/dist/IconPicker.js +3 -3
  30. package/dist/ImageWithFallback.js +4 -4
  31. package/dist/InlineInput.js +8 -7
  32. package/dist/InlineInput.js.map +1 -1
  33. package/dist/Insights.js +4 -3
  34. package/dist/Insights.js.map +1 -1
  35. package/dist/IntegrationCard.js +3 -3
  36. package/dist/IntegrationDisconnectAlert.js +2 -2
  37. package/dist/IpRestriction.js +23 -32
  38. package/dist/IpRestriction.js.map +1 -1
  39. package/dist/KeyboardShortcuts.js +2 -2
  40. package/dist/LoginPage.js +7 -6
  41. package/dist/LoginPage.js.map +1 -1
  42. package/dist/MadeWith.js +4 -3
  43. package/dist/MadeWith.js.map +1 -1
  44. package/dist/MenuBar.js +3 -3
  45. package/dist/Metadata.js +1 -1
  46. package/dist/MoreDropdown.js +3 -3
  47. package/dist/NavigationHeader.js +18 -10
  48. package/dist/NavigationHeader.js.map +1 -1
  49. package/dist/NeetoWidget.js +30 -62
  50. package/dist/NeetoWidget.js.map +1 -1
  51. package/dist/Onboarding.js +47 -186
  52. package/dist/Onboarding.js.map +1 -1
  53. package/dist/OptionFields.js +4 -4
  54. package/dist/PageLoader.js +6 -66
  55. package/dist/PageLoader.js.map +1 -1
  56. package/dist/PhoneNumber.js +28 -19
  57. package/dist/PhoneNumber.js.map +1 -1
  58. package/dist/ProductEmbed.js +5 -5
  59. package/dist/PublishBlock.js +2 -2
  60. package/dist/Rename.js +5 -5
  61. package/dist/ResponsiveDevicePicker.js +5 -5
  62. package/dist/Schedule.js +8 -29
  63. package/dist/Schedule.js.map +1 -1
  64. package/dist/Scrollable.js +3 -3
  65. package/dist/Search.js +4 -4
  66. package/dist/Security.js +13 -18
  67. package/dist/Security.js.map +1 -1
  68. package/dist/SendToFields.js +3 -3
  69. package/dist/Settings.js +4 -4
  70. package/dist/ShareRecordingPane.js +4 -4
  71. package/dist/ShareViaEmail.js +5 -5
  72. package/dist/ShareViaLink.js +5 -5
  73. package/dist/ShareViaLink.js.map +1 -1
  74. package/dist/Sidebar.js +5 -5
  75. package/dist/StickyRibbonsContainer.js +81 -0
  76. package/dist/StickyRibbonsContainer.js.map +1 -0
  77. package/dist/SubHeader.js +5 -5
  78. package/dist/SuffixedInput.js +4 -4
  79. package/dist/Taxonomy.js +12 -18
  80. package/dist/Taxonomy.js.map +1 -1
  81. package/dist/ThemeSidebar.js +14 -13
  82. package/dist/ThemeSidebar.js.map +1 -1
  83. package/dist/TimeFormat.js +1 -1
  84. package/dist/TimezoneMismatchModal.js +7 -12
  85. package/dist/TimezoneMismatchModal.js.map +1 -1
  86. package/dist/ToggleFeatureCard.js +4 -4
  87. package/dist/cjs/BrowserSupport.js +9 -6
  88. package/dist/cjs/BrowserSupport.js.map +1 -1
  89. package/dist/cjs/Builder.js +22 -18
  90. package/dist/cjs/Builder.js.map +1 -1
  91. package/dist/cjs/CalendarView.js +19 -15
  92. package/dist/cjs/CalendarView.js.map +1 -1
  93. package/dist/cjs/{Chevron-8a4ed9cd.js → Chevron-5fe59f57.js} +16 -13
  94. package/dist/cjs/{Chevron-8a4ed9cd.js.map → Chevron-5fe59f57.js.map} +1 -1
  95. package/dist/cjs/Codeblock.js +7 -6
  96. package/dist/cjs/Codeblock.js.map +1 -1
  97. package/dist/cjs/Columns.js +5 -5
  98. package/dist/cjs/ConfigurePageSidebar.js +8 -7
  99. package/dist/cjs/ConfigurePageSidebar.js.map +1 -1
  100. package/dist/cjs/CopyToClipboardButton.js +12 -8
  101. package/dist/cjs/CopyToClipboardButton.js.map +1 -1
  102. package/dist/cjs/Currency.js +8 -6
  103. package/dist/cjs/Currency.js.map +1 -1
  104. package/dist/cjs/CustomDomain.js +8 -7
  105. package/dist/cjs/CustomDomain.js.map +1 -1
  106. package/dist/cjs/CustomDomainDashboard.js +13 -11
  107. package/dist/cjs/CustomDomainDashboard.js.map +1 -1
  108. package/dist/cjs/DateFormat.js +4 -3
  109. package/dist/cjs/DateFormat.js.map +1 -1
  110. package/dist/cjs/DateRangeFilter.js +13 -10
  111. package/dist/cjs/DateRangeFilter.js.map +1 -1
  112. package/dist/cjs/DeleteArchiveModal.js +3 -2
  113. package/dist/cjs/DeleteArchiveModal.js.map +1 -1
  114. package/dist/cjs/DocumentEditor.js +13 -10
  115. package/dist/cjs/DocumentEditor.js.map +1 -1
  116. package/dist/cjs/DynamicVariables.js +9 -6
  117. package/dist/cjs/DynamicVariables.js.map +1 -1
  118. package/dist/cjs/EmailForm.js +12 -10
  119. package/dist/cjs/EmailForm.js.map +1 -1
  120. package/dist/cjs/EmojiPicker.js +59 -19
  121. package/dist/cjs/EmojiPicker.js.map +1 -1
  122. package/dist/cjs/EmojiReactions.js +3 -2
  123. package/dist/cjs/EmojiReactions.js.map +1 -1
  124. package/dist/cjs/ErrorPage.js +3 -2
  125. package/dist/cjs/ErrorPage.js.map +1 -1
  126. package/dist/cjs/FloatingActionMenu.js +28 -23
  127. package/dist/cjs/FloatingActionMenu.js.map +1 -1
  128. package/dist/cjs/Header.js +11 -8
  129. package/dist/cjs/Header.js.map +1 -1
  130. package/dist/cjs/HelpPopover.js +8 -6
  131. package/dist/cjs/HelpPopover.js.map +1 -1
  132. package/dist/cjs/IconPicker.js +11 -8
  133. package/dist/cjs/IconPicker.js.map +1 -1
  134. package/dist/cjs/ImageWithFallback.js +15 -11
  135. package/dist/cjs/ImageWithFallback.js.map +1 -1
  136. package/dist/cjs/InlineInput.js +25 -18
  137. package/dist/cjs/InlineInput.js.map +1 -1
  138. package/dist/cjs/Insights.js +4 -3
  139. package/dist/cjs/Insights.js.map +1 -1
  140. package/dist/cjs/IntegrationCard.js +9 -7
  141. package/dist/cjs/IntegrationCard.js.map +1 -1
  142. package/dist/cjs/IntegrationDisconnectAlert.js +6 -4
  143. package/dist/cjs/IntegrationDisconnectAlert.js.map +1 -1
  144. package/dist/cjs/IpRestriction.js +27 -34
  145. package/dist/cjs/IpRestriction.js.map +1 -1
  146. package/dist/cjs/KeyboardShortcuts.js +9 -7
  147. package/dist/cjs/KeyboardShortcuts.js.map +1 -1
  148. package/dist/cjs/LoginPage.js +11 -7
  149. package/dist/cjs/LoginPage.js.map +1 -1
  150. package/dist/cjs/MadeWith.js +8 -5
  151. package/dist/cjs/MadeWith.js.map +1 -1
  152. package/dist/cjs/MenuBar.js +22 -19
  153. package/dist/cjs/MenuBar.js.map +1 -1
  154. package/dist/cjs/Metadata.js +5 -4
  155. package/dist/cjs/Metadata.js.map +1 -1
  156. package/dist/cjs/MoreDropdown.js +18 -15
  157. package/dist/cjs/MoreDropdown.js.map +1 -1
  158. package/dist/cjs/NavigationHeader.js +23 -13
  159. package/dist/cjs/NavigationHeader.js.map +1 -1
  160. package/dist/cjs/NeetoWidget.js +41 -70
  161. package/dist/cjs/NeetoWidget.js.map +1 -1
  162. package/dist/cjs/Onboarding.js +46 -187
  163. package/dist/cjs/Onboarding.js.map +1 -1
  164. package/dist/cjs/OptionFields.js +21 -17
  165. package/dist/cjs/OptionFields.js.map +1 -1
  166. package/dist/cjs/PageLoader.js +9 -85
  167. package/dist/cjs/PageLoader.js.map +1 -1
  168. package/dist/cjs/PhoneNumber.js +48 -34
  169. package/dist/cjs/PhoneNumber.js.map +1 -1
  170. package/dist/cjs/ProductEmbed.js +24 -21
  171. package/dist/cjs/ProductEmbed.js.map +1 -1
  172. package/dist/cjs/PublishBlock.js +13 -11
  173. package/dist/cjs/PublishBlock.js.map +1 -1
  174. package/dist/cjs/Rename.js +17 -13
  175. package/dist/cjs/Rename.js.map +1 -1
  176. package/dist/cjs/ResponsiveDevicePicker.js +12 -8
  177. package/dist/cjs/ResponsiveDevicePicker.js.map +1 -1
  178. package/dist/cjs/Schedule.js +24 -39
  179. package/dist/cjs/Schedule.js.map +1 -1
  180. package/dist/cjs/Scrollable.js +9 -6
  181. package/dist/cjs/Scrollable.js.map +1 -1
  182. package/dist/cjs/Search.js +12 -8
  183. package/dist/cjs/Search.js.map +1 -1
  184. package/dist/cjs/Security.js +20 -22
  185. package/dist/cjs/Security.js.map +1 -1
  186. package/dist/cjs/SendToFields.js +12 -9
  187. package/dist/cjs/SendToFields.js.map +1 -1
  188. package/dist/cjs/Settings.js +14 -11
  189. package/dist/cjs/Settings.js.map +1 -1
  190. package/dist/cjs/ShareRecordingPane.js +16 -12
  191. package/dist/cjs/ShareRecordingPane.js.map +1 -1
  192. package/dist/cjs/ShareViaEmail.js +15 -10
  193. package/dist/cjs/ShareViaEmail.js.map +1 -1
  194. package/dist/cjs/ShareViaLink.js +9 -8
  195. package/dist/cjs/ShareViaLink.js.map +1 -1
  196. package/dist/cjs/Sidebar.js +16 -12
  197. package/dist/cjs/Sidebar.js.map +1 -1
  198. package/dist/cjs/StickyRibbonsContainer.js +90 -0
  199. package/dist/cjs/StickyRibbonsContainer.js.map +1 -0
  200. package/dist/cjs/SubHeader.js +14 -11
  201. package/dist/cjs/SubHeader.js.map +1 -1
  202. package/dist/cjs/SuffixedInput.js +10 -7
  203. package/dist/cjs/SuffixedInput.js.map +1 -1
  204. package/dist/cjs/Taxonomy.js +27 -30
  205. package/dist/cjs/Taxonomy.js.map +1 -1
  206. package/dist/cjs/ThemeSidebar.js +33 -26
  207. package/dist/cjs/ThemeSidebar.js.map +1 -1
  208. package/dist/cjs/TimeFormat.js +1 -1
  209. package/dist/cjs/TimezoneMismatchModal.js +9 -13
  210. package/dist/cjs/TimezoneMismatchModal.js.map +1 -1
  211. package/dist/cjs/ToggleFeatureCard.js +17 -13
  212. package/dist/cjs/ToggleFeatureCard.js.map +1 -1
  213. package/dist/cjs/{index-00fdb8c2.js → index-27f4aa6e.js} +18 -21
  214. package/dist/cjs/index-27f4aa6e.js.map +1 -0
  215. package/dist/cjs/{useColumns-a1c3668f.js → useColumns-9978cf70.js} +18 -14
  216. package/dist/cjs/{useColumns-a1c3668f.js.map → useColumns-9978cf70.js.map} +1 -1
  217. package/dist/{index-90c89467.js → index-f2f4a6ba.js} +14 -19
  218. package/dist/index-f2f4a6ba.js.map +1 -0
  219. package/dist/{useColumns-d17d1f72.js → useColumns-751e9192.js} +5 -5
  220. package/dist/{useColumns-d17d1f72.js.map → useColumns-751e9192.js.map} +1 -1
  221. package/package.json +6 -7
  222. package/src/translations/en.json +1 -1
  223. package/types/Onboarding.d.ts +4 -2
  224. package/types/ProductEmbed.d.ts +53 -9
  225. package/types/StickyRibbonsContainer.d.ts +26 -0
  226. package/dist/cjs/defineProperty-886ed289.js +0 -47
  227. package/dist/cjs/defineProperty-886ed289.js.map +0 -1
  228. package/dist/cjs/extends-1b35a664.js +0 -19
  229. package/dist/cjs/extends-1b35a664.js.map +0 -1
  230. package/dist/cjs/index-00fdb8c2.js.map +0 -1
  231. package/dist/cjs/index-c55ad2bc.js +0 -375
  232. package/dist/cjs/index-c55ad2bc.js.map +0 -1
  233. package/dist/cjs/objectWithoutProperties-2fed2d7d.js +0 -33
  234. package/dist/cjs/objectWithoutProperties-2fed2d7d.js.map +0 -1
  235. package/dist/cjs/slicedToArray-f320d9e7.js +0 -61
  236. package/dist/cjs/slicedToArray-f320d9e7.js.map +0 -1
  237. package/dist/cjs/toConsumableArray-9abb3858.js +0 -22
  238. package/dist/cjs/toConsumableArray-9abb3858.js.map +0 -1
  239. package/dist/defineProperty-549061a7.js +0 -43
  240. package/dist/defineProperty-549061a7.js.map +0 -1
  241. package/dist/extends-093996c9.js +0 -17
  242. package/dist/extends-093996c9.js.map +0 -1
  243. package/dist/index-90c89467.js.map +0 -1
  244. package/dist/index-9720867c.js +0 -372
  245. package/dist/index-9720867c.js.map +0 -1
  246. package/dist/objectWithoutProperties-a0edb288.js +0 -31
  247. package/dist/objectWithoutProperties-a0edb288.js.map +0 -1
  248. package/dist/slicedToArray-b4278ecd.js +0 -57
  249. package/dist/slicedToArray-b4278ecd.js.map +0 -1
  250. package/dist/toConsumableArray-1cc38429.js +0 -20
  251. package/dist/toConsumableArray-1cc38429.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"OptionFields.js","sources":["../../src/components/OptionFields/DragHandle.jsx","../../src/components/OptionFields/BlockOption.jsx","../../src/components/OptionFields/BulkOptionModal.jsx","../../src/components/OptionFields/constants.js","../../src/components/OptionFields/utils.js","../../src/components/OptionFields/hooks/useOptionFields.js","../../src/components/OptionFields/InputOption.jsx","../../src/components/OptionFields/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport { Reorder } from \"neetoicons\";\n\nconst DragHandle = props => (\n <div\n className=\"neeto-ui-text-gray-400 absolute bottom-0 left-0 top-0 my-auto -ml-6 h-6 cursor-grab opacity-0 transition-opacity duration-300 ease-in-out group-hover:opacity-100\"\n data-cy=\"drag-handle\"\n data-testid=\"drag-handle\"\n {...props}\n >\n <Reorder size={24} strokeWidth={2} />\n </div>\n);\n\nexport default DragHandle;\n","import React from \"react\";\n\nimport { withT } from \"neetocommons/react-utils\";\nimport { Delete, Edit } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\n\nimport DragHandle from \"./DragHandle\";\n\nconst BlockOption = withT(\n ({\n t,\n innerRef,\n hideDeleteOption = false,\n draggableProps,\n dragHandleProps,\n label,\n index,\n onEdit,\n handleDeleteClick,\n }) => (\n <div ref={innerRef} {...draggableProps} {...dragHandleProps}>\n <div\n className=\"neeto-ui-border-gray-400 hover:neeto-ui-bg-gray-200 neeto-ui-rounded-sm shadow-xs group relative mb-2 flex h-10 cursor-pointer items-center gap-2 border p-3 transition-colors duration-300 ease-in-out\"\n data-cy=\"address-field-block\"\n >\n <DragHandle {...dragHandleProps} />\n <Typography\n className=\"flex-grow leading-4\"\n data-cy=\"address-text-field\"\n data-testid=\"address-text-field\"\n style=\"body2\"\n >\n {label}\n </Typography>\n <div className=\"flex items-center justify-end gap-2 opacity-0 group-hover:opacity-100\">\n <Button\n className=\"neeto-ui-rounded hover:neeto-ui-bg-gray-400 p-1\"\n data-cy=\"address-field-edit-button\"\n data-testid=\"address-field-edit-button\"\n icon={Edit}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.edit\"),\n position: \"top\",\n }}\n onClick={() => onEdit(index)}\n />\n {!hideDeleteOption && (\n <Button\n className=\"neeto-ui-rounded hover:neeto-ui-bg-gray-400 p-1\"\n data-cy=\"address-field-delete-button\"\n data-testid=\"address-field-delete-button\"\n icon={Delete}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.delete\"),\n position: \"top\",\n }}\n onClick={() => handleDeleteClick({ index })}\n />\n )}\n </div>\n </div>\n </div>\n )\n);\n\nexport default BlockOption;\n","import React, { useState } from \"react\";\n\nimport { Button, Modal, Textarea, Typography } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nconst BulkOptionModal = ({\n isOpen,\n onClose,\n handleBulkAdd,\n bulkAddHelpDocUrl,\n}) => {\n const { t } = useTranslation();\n const [optionsString, setOptionsString] = useState(\"\");\n\n const handleSave = () => {\n handleBulkAdd(optionsString);\n handleClose();\n };\n\n const handleClose = () => {\n setOptionsString(\"\");\n onClose();\n };\n\n return (\n <Modal {...{ isOpen }} onClose={handleClose}>\n <Modal.Header>\n <Typography style=\"h3\">\n {t(\"neetoMolecules.optionFields.bulkOption.title\")}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <Textarea\n className=\"my-2\"\n data-cy=\"bulk-add-options-textarea\"\n data-testid=\"bulk-add-options-textarea\"\n label={t(\"neetoMolecules.optionFields.bulkOption.label\")}\n placeholder={t(\"neetoMolecules.optionFields.bulkOption.label\")}\n rows={8}\n value={optionsString}\n helpText={\n <Trans\n i18nKey=\"neetoMolecules.optionFields.bulkOption.helpText\"\n components={{\n Link: (\n <Button\n className=\"text-xs\"\n href={bulkAddHelpDocUrl}\n style=\"link\"\n target=\"_blank\"\n />\n ),\n }}\n />\n }\n onChange={e => setOptionsString(e.target.value)}\n />\n </Modal.Body>\n <Modal.Footer className=\"gap-x-2\">\n <Button\n data-cy=\"bulk-add-options-done-button\"\n data-testid=\"bulk-add-options-done-button\"\n label={t(\"neetoMolecules.common.actions.submit\")}\n onClick={handleSave}\n />\n <Button\n data-cy=\"bulk-add-options-cancel-button\"\n data-testid=\"bulk-add-options-cancel-button\"\n label={t(\"neetoMolecules.common.actions.cancel\")}\n style=\"text\"\n onClick={handleClose}\n />\n </Modal.Footer>\n </Modal>\n );\n};\n\nexport default BulkOptionModal;\n","import i18next from \"i18next\";\n\nexport const DEFAULT_OPTION_LABEL = i18next.t(\n \"neetoMolecules.optionFields.defaultOption\"\n);\n","import { prop, reject } from \"ramda\";\n\nexport const getVisibleOptions = (options = []) =>\n options\n .filter(option => !option.deleted)\n .sort((a, b) => a.position - b.position);\n\nexport const filterDeletedRecords = reject(prop(\"deleted\"));\n\nexport const randomId = () => Math.random().toString(36).substring(2, 13);\n","import { useState } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { isNotEmpty } from \"neetocist\";\nimport { pluck, append, assocPath, move, path, remove, isEmpty } from \"ramda\";\n\nimport { DEFAULT_OPTION_LABEL } from \"../constants\";\nimport { filterDeletedRecords, randomId } from \"../utils\";\n\nconst attachPosition = options =>\n options.map((option, index) => ({ ...option, position: index + 1 }));\n\nconst useOptionFields = ({\n options,\n onChange,\n shouldDestroy,\n name = \"\",\n currentRecord,\n itemLabel = DEFAULT_OPTION_LABEL,\n}) => {\n const [shouldFocus, setShouldFocus] = useState(false);\n\n const deletedOptions = options.filter(option => !!option?.deleted);\n\n const { initialValues } = useFormikContext();\n\n const handleChange = (index, value, isOnBlur = false) => {\n const draftAttributes = currentRecord?.draftAttributes;\n\n const getNextOptions = () =>\n assocPath(\n [index, \"label\"],\n isOnBlur\n ? path(name.split(\".\"), initialValues)[index]?.label ||\n path(name.split(\".\"), draftAttributes)[index]?.label\n : value,\n filterDeletedRecords(options)\n );\n if (isOnBlur && !isEmpty(value)) return;\n onChange([...deletedOptions, ...getNextOptions()]);\n };\n\n const generateLabel = (opts, count) => {\n const labelCount = count || opts.length + 1;\n const tempLabel = `${itemLabel} ${labelCount}`;\n const isDuplicateLabel = pluck(\"label\", opts).includes(tempLabel);\n\n return isDuplicateLabel ? generateLabel(opts, labelCount + 1) : tempLabel;\n };\n\n const handleDelete = index => {\n let nextOptions;\n\n if (shouldDestroy) {\n nextOptions = assocPath(\n [index, \"deleted\"],\n true,\n filterDeletedRecords(options)\n );\n } else {\n nextOptions = remove(index, 1, options);\n nextOptions = attachPosition(nextOptions);\n }\n onChange([...deletedOptions, ...nextOptions]);\n };\n\n const handleDragEnd = ({ source, destination }) => {\n // When dragged outside of draggable\n if (destination === null) return;\n\n const filteredOptions = filterDeletedRecords(options);\n const nextOptions = move(source.index, destination.index, filteredOptions);\n const finalOptions = attachPosition(nextOptions);\n onChange([...deletedOptions, ...finalOptions]);\n };\n\n const handleAddOption = () => {\n setShouldFocus(true);\n const position = filterDeletedRecords(options).length;\n const id = randomId();\n const newOption = {\n id: `draft-${id}`,\n altId: `alt-${id}`,\n label: generateLabel(options, null),\n position,\n };\n const nextOptions = append(newOption, options);\n onChange(nextOptions);\n };\n\n const handleBulkAddOption = optionsString => {\n setShouldFocus(true);\n const position = filterDeletedRecords(options).length;\n const newOptions = optionsString\n .trim()\n .split(/\\r?\\n|,/)\n .filter(isNotEmpty)\n .map((option, index) => ({\n id: `draft-${randomId()}`,\n altId: `alt-${randomId()}`,\n label: option.trim(),\n position: position + index,\n }));\n onChange([...options, ...newOptions]);\n };\n\n const handleKeyDown = () => event => {\n if (event.key !== \"Enter\") return;\n const form = event.target.form;\n const inputs = Array.from(form.querySelectorAll(\"input\"));\n const currentInput = inputs.indexOf(event.target);\n\n if (currentInput >= inputs.length - 1) {\n handleAddOption();\n } else {\n inputs[currentInput + 1]?.focus();\n event.preventDefault();\n }\n event.stopPropagation();\n };\n\n return {\n shouldFocus,\n handleAddOption,\n handleBulkAddOption,\n handleChange,\n handleKeyDown,\n handleDelete,\n handleDragEnd,\n };\n};\n\nexport default useOptionFields;\n","import React from \"react\";\n\nimport { ImageUpload, Delete } from \"neetoicons\";\nimport { Button, Input, Textarea } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DragHandle from \"./DragHandle\";\n\nconst InputOption = ({\n shouldFocus,\n hideDeleteOption = false,\n innerRef,\n draggableProps,\n dragHandleProps,\n isPictureChoice,\n onKeyDown,\n onDelete,\n onChange,\n label,\n index,\n disabled,\n isTextArea,\n}) => {\n const { t } = useTranslation();\n\n const Component = isTextArea ? Textarea : Input;\n\n return (\n <div\n ref={innerRef}\n {...draggableProps}\n {...dragHandleProps}\n data-cy=\"form-block-options\"\n >\n <div className=\"nf-input-options group relative mb-2 flex items-center gap-2\">\n <DragHandle {...dragHandleProps} />\n {isPictureChoice && (\n <>\n {index === 0 ? (\n <img\n className=\"neeto-ui-rounded-sm h-8 w-8 cursor-pointer overflow-hidden object-cover\"\n data-testid=\"picture-choice-option\"\n src=\"https://i.pravatar.cc/300\"\n />\n ) : (\n <div className=\"hover:neeto-ui-bg-gray-100 neeto-ui-border-primary-600 neeto-ui-text-primary-800 neeto-ui-rounded-sm flex h-8 w-8 cursor-pointer items-center justify-center border border-dashed transition-all duration-300 ease-in-out\">\n <ImageUpload size={16} />\n </div>\n )}\n </>\n )}\n <Component\n {...{ disabled }}\n autoFocus={shouldFocus}\n data-cy={`option-input-${index}`}\n data-testid={isTextArea ? \"textarea-option\" : \"input-option\"}\n placeholder={t(\"neetoMolecules.optionFields.optionName\")}\n value={label}\n suffix={\n !hideDeleteOption && (\n <Button\n {...{ disabled }}\n className=\"p-0.5\"\n data-cy={`delete-option-button-${index}`}\n data-testid=\"delete-option-button\"\n icon={Delete}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.delete\"),\n position: \"top\",\n }}\n onClick={() => onDelete({ index })}\n />\n )\n }\n onBlur={({ target }) => onChange(index, target.value, true)}\n onChange={({ target }) => onChange(index, target.value)}\n onFocus={({ target }) => target.select()}\n onKeyDown={onKeyDown(index)}\n />\n </div>\n </div>\n );\n};\n\nexport default InputOption;\n","import React, { useState } from \"react\";\n\nimport { DragDropContext, Droppable, Draggable } from \"@hello-pangea/dnd\";\nimport { noop, slugify } from \"neetocist\";\nimport { Plus } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport BlockOption from \"./BlockOption\";\nimport BulkOptionModal from \"./BulkOptionModal\";\nimport useOptionFields from \"./hooks/useOptionFields\";\nimport InputOption from \"./InputOption\";\nimport { getVisibleOptions } from \"./utils\";\n\nconst OptionFields = ({\n options,\n error,\n onChange,\n name,\n onDelete,\n itemLabel,\n onEdit = noop,\n buttonProps = {},\n minOptions = 0,\n draggable = false,\n editable = true,\n isPictureChoice = false,\n isTextArea = false,\n shouldDestroy = false,\n currentRecord = {},\n bulkActionProps = { enabled: false, bulkAddHelpDocUrl: \"\" },\n}) => {\n const { t } = useTranslation();\n const [isBulkOptionModalOpen, setIsBulkOptionModalOpen] = useState(false);\n\n const {\n shouldFocus,\n handleAddOption,\n handleBulkAddOption,\n handleChange,\n handleKeyDown,\n handleDelete,\n handleDragEnd,\n } = useOptionFields({\n options,\n onChange,\n shouldDestroy,\n name,\n currentRecord,\n itemLabel,\n });\n\n // Temporarily disables the modifications to options when changed are getting saved to server\n // This condition only needed for server id generated types\n let isEditable = true;\n if (shouldDestroy) {\n isEditable =\n options.every(prop(\"id\") || error) && !options.some(prop(\"_destroy\"));\n }\n\n const handleDeleteClick = ({ index }) => {\n const deleteFunction = onDelete ?? handleDelete;\n deleteFunction(index);\n };\n const visibleOptions = getVisibleOptions(options);\n const hideDeleteOption = visibleOptions.length <= minOptions;\n\n const getUniqueOptionId = option =>\n option.altId ||\n option.id?.toString() ||\n option.position?.toString() ||\n slugify(option.label);\n\n return (\n <form onSubmit={e => e.preventDefault()}>\n <DragDropContext onDragEnd={handleDragEnd}>\n <Droppable\n droppableId={`neeto-molecules-option-fields-${name}`}\n isDropDisabled={!draggable}\n >\n {({ innerRef, droppableProps, placeholder }) => (\n <div ref={innerRef} {...droppableProps}>\n {visibleOptions.map((option, index) => (\n <Draggable\n {...{ index }}\n draggableId={getUniqueOptionId(option)}\n isDragDisabled={!draggable}\n key={getUniqueOptionId(option)}\n >\n {({ innerRef, draggableProps, dragHandleProps }) =>\n editable ? (\n <InputOption\n {...{\n dragHandleProps,\n draggableProps,\n hideDeleteOption,\n index,\n innerRef,\n isPictureChoice,\n isTextArea,\n name,\n shouldFocus,\n }}\n disabled={!isEditable}\n label={option.label}\n onChange={handleChange}\n onDelete={handleDeleteClick}\n onKeyDown={handleKeyDown}\n />\n ) : (\n <BlockOption\n {...{\n dragHandleProps,\n draggableProps,\n handleDeleteClick,\n hideDeleteOption,\n index,\n innerRef,\n onEdit,\n }}\n label={option.label}\n />\n )\n }\n </Draggable>\n ))}\n {error && (\n <Typography\n className=\"neeto-ui-input__error\"\n data-testid=\"validation-error-container\"\n style=\"body3\"\n >\n {error}\n </Typography>\n )}\n {placeholder}\n </div>\n )}\n </Droppable>\n <div className=\"mt-4 flex items-center justify-between\">\n <Button\n data-cy=\"add-option-link\"\n data-testid=\"add-option-link\"\n disabled={!isEditable}\n icon={Plus}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.optionFields.addOption\")}\n size=\"small\"\n style=\"link\"\n onClick={handleAddOption}\n {...buttonProps}\n />\n {bulkActionProps.enabled && (\n <Button\n data-cy=\"add-bulk-option-link\"\n data-testid=\"add-bulk-option-link\"\n disabled={!isEditable}\n label={t(\"neetoMolecules.optionFields.addBulk\")}\n size=\"small\"\n style=\"text\"\n onClick={() => setIsBulkOptionModalOpen(true)}\n />\n )}\n </div>\n </DragDropContext>\n <BulkOptionModal\n bulkAddHelpDocUrl={bulkActionProps.bulkAddHelpDocUrl}\n handleBulkAdd={handleBulkAddOption}\n isOpen={isBulkOptionModalOpen}\n onClose={() => setIsBulkOptionModalOpen(false)}\n />\n </form>\n );\n};\n\nOptionFields.propTypes = {\n /**\n * Props to be passed to the add option button\n */\n buttonProps: PropTypes.object,\n /**\n * Current record object\n */\n currentRecord: PropTypes.object,\n /**\n * Enable drag and drop functionality\n */\n draggable: PropTypes.bool,\n\n /**\n * Enable edit functionality\n */\n editable: PropTypes.bool,\n\n /**\n * Error message to be displayed\n */\n error: PropTypes.string,\n\n /**\n * The field name in Formik state.\n */\n name: PropTypes.string,\n\n /**\n * Function to handle option deletion\n */\n onDelete: PropTypes.func,\n\n /**\n * Function to handle option edit\n *\n */\n onEdit: PropTypes.func,\n\n /**\n * Minimum number of options required\n */\n minOptions: PropTypes.number,\n\n /**\n * Options array\n */\n options: PropTypes.array,\n\n /**\n * Prop to switch between Input and Textarea\n */\n isTextArea: PropTypes.bool,\n\n /**\n * Function to handle options change\n */\n onChange: PropTypes.func,\n\n /**\n * Prop to switch between PictureChoice and normal options\n * */\n isPictureChoice: PropTypes.bool,\n\n /**\n * Prop to destroy options\n * */\n shouldDestroy: PropTypes.bool,\n\n /**\n * Prop to set the item label\n * */\n\n itemLabel: PropTypes.string,\n\n /**\n * Props for bulk action\n */\n bulkActionProps: PropTypes.shape({\n enabled: PropTypes.bool,\n bulkAddHelpDocUrl: PropTypes.string,\n }),\n};\nexport default OptionFields;\n"],"names":["DragHandle","props","React","createElement","_extends","className","Reorder","size","strokeWidth","BlockOption","withT","_ref","t","innerRef","_ref$hideDeleteOption","hideDeleteOption","draggableProps","dragHandleProps","label","index","onEdit","handleDeleteClick","ref","Typography","style","Button","icon","Edit","tooltipProps","content","position","onClick","Delete","BulkOptionModal","isOpen","onClose","handleBulkAdd","bulkAddHelpDocUrl","_useTranslation","useTranslation","_useState","useState","_useState2","_slicedToArray","optionsString","setOptionsString","handleSave","handleClose","Modal","Header","Body","Textarea","placeholder","rows","value","helpText","Trans","i18nKey","components","Link","href","target","onChange","e","Footer","DEFAULT_OPTION_LABEL","i18next","getVisibleOptions","options","arguments","length","undefined","filter","option","deleted","sort","a","b","filterDeletedRecords","reject","prop","randomId","Math","random","toString","substring","attachPosition","map","_objectSpread","useOptionFields","shouldDestroy","_ref$name","name","currentRecord","_ref$itemLabel","itemLabel","shouldFocus","setShouldFocus","deletedOptions","_useFormikContext","useFormikContext","initialValues","handleChange","isOnBlur","draftAttributes","getNextOptions","_path$index","_path$index2","assocPath","path","split","isEmpty","concat","_toConsumableArray","generateLabel","opts","count","labelCount","tempLabel","isDuplicateLabel","pluck","includes","handleDelete","nextOptions","remove","handleDragEnd","_ref2","source","destination","filteredOptions","move","finalOptions","handleAddOption","id","newOption","altId","append","handleBulkAddOption","newOptions","trim","isNotEmpty","handleKeyDown","event","key","form","inputs","Array","from","querySelectorAll","currentInput","indexOf","_inputs","focus","preventDefault","stopPropagation","InputOption","isPictureChoice","onKeyDown","onDelete","disabled","isTextArea","Component","Input","Fragment","src","ImageUpload","autoFocus","suffix","onBlur","_ref3","onFocus","_ref4","select","OptionFields","error","_ref$onEdit","noop","_ref$buttonProps","buttonProps","_ref$minOptions","minOptions","_ref$draggable","draggable","_ref$editable","editable","_ref$isPictureChoice","_ref$isTextArea","_ref$shouldDestroy","_ref$currentRecord","_ref$bulkActionProps","bulkActionProps","enabled","isBulkOptionModalOpen","setIsBulkOptionModalOpen","_useOptionFields","isEditable","every","some","deleteFunction","visibleOptions","getUniqueOptionId","_option$id","_option$position","slugify","onSubmit","DragDropContext","onDragEnd","Droppable","droppableId","isDropDisabled","droppableProps","Draggable","draggableId","isDragDisabled","Plus","iconPosition"],"mappings":"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"}
1
+ {"version":3,"file":"OptionFields.js","sources":["../../src/components/OptionFields/DragHandle.jsx","../../src/components/OptionFields/BlockOption.jsx","../../src/components/OptionFields/BulkOptionModal.jsx","../../src/components/OptionFields/constants.js","../../src/components/OptionFields/utils.js","../../src/components/OptionFields/hooks/useOptionFields.js","../../src/components/OptionFields/InputOption.jsx","../../src/components/OptionFields/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport { Reorder } from \"neetoicons\";\n\nconst DragHandle = props => (\n <div\n className=\"neeto-ui-text-gray-400 absolute bottom-0 left-0 top-0 my-auto -ml-6 h-6 cursor-grab opacity-0 transition-opacity duration-300 ease-in-out group-hover:opacity-100\"\n data-cy=\"drag-handle\"\n data-testid=\"drag-handle\"\n {...props}\n >\n <Reorder size={24} strokeWidth={2} />\n </div>\n);\n\nexport default DragHandle;\n","import React from \"react\";\n\nimport { withT } from \"neetocommons/react-utils\";\nimport { Delete, Edit } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\n\nimport DragHandle from \"./DragHandle\";\n\nconst BlockOption = withT(\n ({\n t,\n innerRef,\n hideDeleteOption = false,\n draggableProps,\n dragHandleProps,\n label,\n index,\n onEdit,\n handleDeleteClick,\n }) => (\n <div ref={innerRef} {...draggableProps} {...dragHandleProps}>\n <div\n className=\"neeto-ui-border-gray-400 hover:neeto-ui-bg-gray-200 neeto-ui-rounded-sm shadow-xs group relative mb-2 flex h-10 cursor-pointer items-center gap-2 border p-3 transition-colors duration-300 ease-in-out\"\n data-cy=\"address-field-block\"\n >\n <DragHandle {...dragHandleProps} />\n <Typography\n className=\"flex-grow leading-4\"\n data-cy=\"address-text-field\"\n data-testid=\"address-text-field\"\n style=\"body2\"\n >\n {label}\n </Typography>\n <div className=\"flex items-center justify-end gap-2 opacity-0 group-hover:opacity-100\">\n <Button\n className=\"neeto-ui-rounded hover:neeto-ui-bg-gray-400 p-1\"\n data-cy=\"address-field-edit-button\"\n data-testid=\"address-field-edit-button\"\n icon={Edit}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.edit\"),\n position: \"top\",\n }}\n onClick={() => onEdit(index)}\n />\n {!hideDeleteOption && (\n <Button\n className=\"neeto-ui-rounded hover:neeto-ui-bg-gray-400 p-1\"\n data-cy=\"address-field-delete-button\"\n data-testid=\"address-field-delete-button\"\n icon={Delete}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.delete\"),\n position: \"top\",\n }}\n onClick={() => handleDeleteClick({ index })}\n />\n )}\n </div>\n </div>\n </div>\n )\n);\n\nexport default BlockOption;\n","import React, { useState } from \"react\";\n\nimport { Button, Modal, Textarea, Typography } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nconst BulkOptionModal = ({\n isOpen,\n onClose,\n handleBulkAdd,\n bulkAddHelpDocUrl,\n}) => {\n const { t } = useTranslation();\n const [optionsString, setOptionsString] = useState(\"\");\n\n const handleSave = () => {\n handleBulkAdd(optionsString);\n handleClose();\n };\n\n const handleClose = () => {\n setOptionsString(\"\");\n onClose();\n };\n\n return (\n <Modal {...{ isOpen }} onClose={handleClose}>\n <Modal.Header>\n <Typography style=\"h3\">\n {t(\"neetoMolecules.optionFields.bulkOption.title\")}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <Textarea\n className=\"my-2\"\n data-cy=\"bulk-add-options-textarea\"\n data-testid=\"bulk-add-options-textarea\"\n label={t(\"neetoMolecules.optionFields.bulkOption.label\")}\n placeholder={t(\"neetoMolecules.optionFields.bulkOption.label\")}\n rows={8}\n value={optionsString}\n helpText={\n <Trans\n i18nKey=\"neetoMolecules.optionFields.bulkOption.helpText\"\n components={{\n Link: (\n <Button\n className=\"text-xs\"\n href={bulkAddHelpDocUrl}\n style=\"link\"\n target=\"_blank\"\n />\n ),\n }}\n />\n }\n onChange={e => setOptionsString(e.target.value)}\n />\n </Modal.Body>\n <Modal.Footer className=\"gap-x-2\">\n <Button\n data-cy=\"bulk-add-options-done-button\"\n data-testid=\"bulk-add-options-done-button\"\n label={t(\"neetoMolecules.common.actions.submit\")}\n onClick={handleSave}\n />\n <Button\n data-cy=\"bulk-add-options-cancel-button\"\n data-testid=\"bulk-add-options-cancel-button\"\n label={t(\"neetoMolecules.common.actions.cancel\")}\n style=\"text\"\n onClick={handleClose}\n />\n </Modal.Footer>\n </Modal>\n );\n};\n\nexport default BulkOptionModal;\n","import i18next from \"i18next\";\n\nexport const DEFAULT_OPTION_LABEL = i18next.t(\n \"neetoMolecules.optionFields.defaultOption\"\n);\n","import { prop, reject } from \"ramda\";\n\nexport const getVisibleOptions = (options = []) =>\n options\n .filter(option => !option.deleted)\n .sort((a, b) => a.position - b.position);\n\nexport const filterDeletedRecords = reject(prop(\"deleted\"));\n\nexport const randomId = () => Math.random().toString(36).substring(2, 13);\n","import { useState } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { isNotEmpty } from \"neetocist\";\nimport { pluck, append, assocPath, move, path, remove, isEmpty } from \"ramda\";\n\nimport { DEFAULT_OPTION_LABEL } from \"../constants\";\nimport { filterDeletedRecords, randomId } from \"../utils\";\n\nconst attachPosition = options =>\n options.map((option, index) => ({ ...option, position: index + 1 }));\n\nconst useOptionFields = ({\n options,\n onChange,\n shouldDestroy,\n name = \"\",\n currentRecord,\n itemLabel = DEFAULT_OPTION_LABEL,\n}) => {\n const [shouldFocus, setShouldFocus] = useState(false);\n\n const deletedOptions = options.filter(option => !!option?.deleted);\n\n const { initialValues } = useFormikContext();\n\n const handleChange = (index, value, isOnBlur = false) => {\n const draftAttributes = currentRecord?.draftAttributes;\n\n const getNextOptions = () =>\n assocPath(\n [index, \"label\"],\n isOnBlur\n ? path(name.split(\".\"), initialValues)[index]?.label ||\n path(name.split(\".\"), draftAttributes)[index]?.label\n : value,\n filterDeletedRecords(options)\n );\n if (isOnBlur && !isEmpty(value)) return;\n onChange([...deletedOptions, ...getNextOptions()]);\n };\n\n const generateLabel = (opts, count) => {\n const labelCount = count || opts.length + 1;\n const tempLabel = `${itemLabel} ${labelCount}`;\n const isDuplicateLabel = pluck(\"label\", opts).includes(tempLabel);\n\n return isDuplicateLabel ? generateLabel(opts, labelCount + 1) : tempLabel;\n };\n\n const handleDelete = index => {\n let nextOptions;\n\n if (shouldDestroy) {\n nextOptions = assocPath(\n [index, \"deleted\"],\n true,\n filterDeletedRecords(options)\n );\n } else {\n nextOptions = remove(index, 1, options);\n nextOptions = attachPosition(nextOptions);\n }\n onChange([...deletedOptions, ...nextOptions]);\n };\n\n const handleDragEnd = ({ source, destination }) => {\n // When dragged outside of draggable\n if (destination === null) return;\n\n const filteredOptions = filterDeletedRecords(options);\n const nextOptions = move(source.index, destination.index, filteredOptions);\n const finalOptions = attachPosition(nextOptions);\n onChange([...deletedOptions, ...finalOptions]);\n };\n\n const handleAddOption = () => {\n setShouldFocus(true);\n const position = filterDeletedRecords(options).length;\n const id = randomId();\n const newOption = {\n id: `draft-${id}`,\n altId: `alt-${id}`,\n label: generateLabel(options, null),\n position,\n };\n const nextOptions = append(newOption, options);\n onChange(nextOptions);\n };\n\n const handleBulkAddOption = optionsString => {\n setShouldFocus(true);\n const position = filterDeletedRecords(options).length;\n const newOptions = optionsString\n .trim()\n .split(/\\r?\\n|,/)\n .filter(isNotEmpty)\n .map((option, index) => ({\n id: `draft-${randomId()}`,\n altId: `alt-${randomId()}`,\n label: option.trim(),\n position: position + index,\n }));\n onChange([...options, ...newOptions]);\n };\n\n const handleKeyDown = () => event => {\n if (event.key !== \"Enter\") return;\n const form = event.target.form;\n const inputs = Array.from(form.querySelectorAll(\"input\"));\n const currentInput = inputs.indexOf(event.target);\n\n if (currentInput >= inputs.length - 1) {\n handleAddOption();\n } else {\n inputs[currentInput + 1]?.focus();\n event.preventDefault();\n }\n event.stopPropagation();\n };\n\n return {\n shouldFocus,\n handleAddOption,\n handleBulkAddOption,\n handleChange,\n handleKeyDown,\n handleDelete,\n handleDragEnd,\n };\n};\n\nexport default useOptionFields;\n","import React from \"react\";\n\nimport { ImageUpload, Delete } from \"neetoicons\";\nimport { Button, Input, Textarea } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DragHandle from \"./DragHandle\";\n\nconst InputOption = ({\n shouldFocus,\n hideDeleteOption = false,\n innerRef,\n draggableProps,\n dragHandleProps,\n isPictureChoice,\n onKeyDown,\n onDelete,\n onChange,\n label,\n index,\n disabled,\n isTextArea,\n}) => {\n const { t } = useTranslation();\n\n const Component = isTextArea ? Textarea : Input;\n\n return (\n <div\n ref={innerRef}\n {...draggableProps}\n {...dragHandleProps}\n data-cy=\"form-block-options\"\n >\n <div className=\"nf-input-options group relative mb-2 flex items-center gap-2\">\n <DragHandle {...dragHandleProps} />\n {isPictureChoice && (\n <>\n {index === 0 ? (\n <img\n className=\"neeto-ui-rounded-sm h-8 w-8 cursor-pointer overflow-hidden object-cover\"\n data-testid=\"picture-choice-option\"\n src=\"https://i.pravatar.cc/300\"\n />\n ) : (\n <div className=\"hover:neeto-ui-bg-gray-100 neeto-ui-border-primary-600 neeto-ui-text-primary-800 neeto-ui-rounded-sm flex h-8 w-8 cursor-pointer items-center justify-center border border-dashed transition-all duration-300 ease-in-out\">\n <ImageUpload size={16} />\n </div>\n )}\n </>\n )}\n <Component\n {...{ disabled }}\n autoFocus={shouldFocus}\n data-cy={`option-input-${index}`}\n data-testid={isTextArea ? \"textarea-option\" : \"input-option\"}\n placeholder={t(\"neetoMolecules.optionFields.optionName\")}\n value={label}\n suffix={\n !hideDeleteOption && (\n <Button\n {...{ disabled }}\n className=\"p-0.5\"\n data-cy={`delete-option-button-${index}`}\n data-testid=\"delete-option-button\"\n icon={Delete}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.delete\"),\n position: \"top\",\n }}\n onClick={() => onDelete({ index })}\n />\n )\n }\n onBlur={({ target }) => onChange(index, target.value, true)}\n onChange={({ target }) => onChange(index, target.value)}\n onFocus={({ target }) => target.select()}\n onKeyDown={onKeyDown(index)}\n />\n </div>\n </div>\n );\n};\n\nexport default InputOption;\n","import React, { useState } from \"react\";\n\nimport { DragDropContext, Droppable, Draggable } from \"@hello-pangea/dnd\";\nimport { noop, slugify } from \"neetocist\";\nimport { Plus } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport BlockOption from \"./BlockOption\";\nimport BulkOptionModal from \"./BulkOptionModal\";\nimport useOptionFields from \"./hooks/useOptionFields\";\nimport InputOption from \"./InputOption\";\nimport { getVisibleOptions } from \"./utils\";\n\nconst OptionFields = ({\n options,\n error,\n onChange,\n name,\n onDelete,\n itemLabel,\n onEdit = noop,\n buttonProps = {},\n minOptions = 0,\n draggable = false,\n editable = true,\n isPictureChoice = false,\n isTextArea = false,\n shouldDestroy = false,\n currentRecord = {},\n bulkActionProps = { enabled: false, bulkAddHelpDocUrl: \"\" },\n}) => {\n const { t } = useTranslation();\n const [isBulkOptionModalOpen, setIsBulkOptionModalOpen] = useState(false);\n\n const {\n shouldFocus,\n handleAddOption,\n handleBulkAddOption,\n handleChange,\n handleKeyDown,\n handleDelete,\n handleDragEnd,\n } = useOptionFields({\n options,\n onChange,\n shouldDestroy,\n name,\n currentRecord,\n itemLabel,\n });\n\n // Temporarily disables the modifications to options when changed are getting saved to server\n // This condition only needed for server id generated types\n let isEditable = true;\n if (shouldDestroy) {\n isEditable =\n options.every(prop(\"id\") || error) && !options.some(prop(\"_destroy\"));\n }\n\n const handleDeleteClick = ({ index }) => {\n const deleteFunction = onDelete ?? handleDelete;\n deleteFunction(index);\n };\n const visibleOptions = getVisibleOptions(options);\n const hideDeleteOption = visibleOptions.length <= minOptions;\n\n const getUniqueOptionId = option =>\n option.altId ||\n option.id?.toString() ||\n option.position?.toString() ||\n slugify(option.label);\n\n return (\n <form onSubmit={e => e.preventDefault()}>\n <DragDropContext onDragEnd={handleDragEnd}>\n <Droppable\n droppableId={`neeto-molecules-option-fields-${name}`}\n isDropDisabled={!draggable}\n >\n {({ innerRef, droppableProps, placeholder }) => (\n <div ref={innerRef} {...droppableProps}>\n {visibleOptions.map((option, index) => (\n <Draggable\n {...{ index }}\n draggableId={getUniqueOptionId(option)}\n isDragDisabled={!draggable}\n key={getUniqueOptionId(option)}\n >\n {({ innerRef, draggableProps, dragHandleProps }) =>\n editable ? (\n <InputOption\n {...{\n dragHandleProps,\n draggableProps,\n hideDeleteOption,\n index,\n innerRef,\n isPictureChoice,\n isTextArea,\n name,\n shouldFocus,\n }}\n disabled={!isEditable}\n label={option.label}\n onChange={handleChange}\n onDelete={handleDeleteClick}\n onKeyDown={handleKeyDown}\n />\n ) : (\n <BlockOption\n {...{\n dragHandleProps,\n draggableProps,\n handleDeleteClick,\n hideDeleteOption,\n index,\n innerRef,\n onEdit,\n }}\n label={option.label}\n />\n )\n }\n </Draggable>\n ))}\n {error && (\n <Typography\n className=\"neeto-ui-input__error\"\n data-testid=\"validation-error-container\"\n style=\"body3\"\n >\n {error}\n </Typography>\n )}\n {placeholder}\n </div>\n )}\n </Droppable>\n <div className=\"mt-4 flex items-center justify-between\">\n <Button\n data-cy=\"add-option-link\"\n data-testid=\"add-option-link\"\n disabled={!isEditable}\n icon={Plus}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.optionFields.addOption\")}\n size=\"small\"\n style=\"link\"\n onClick={handleAddOption}\n {...buttonProps}\n />\n {bulkActionProps.enabled && (\n <Button\n data-cy=\"add-bulk-option-link\"\n data-testid=\"add-bulk-option-link\"\n disabled={!isEditable}\n label={t(\"neetoMolecules.optionFields.addBulk\")}\n size=\"small\"\n style=\"text\"\n onClick={() => setIsBulkOptionModalOpen(true)}\n />\n )}\n </div>\n </DragDropContext>\n <BulkOptionModal\n bulkAddHelpDocUrl={bulkActionProps.bulkAddHelpDocUrl}\n handleBulkAdd={handleBulkAddOption}\n isOpen={isBulkOptionModalOpen}\n onClose={() => setIsBulkOptionModalOpen(false)}\n />\n </form>\n );\n};\n\nOptionFields.propTypes = {\n /**\n * Props to be passed to the add option button\n */\n buttonProps: PropTypes.object,\n /**\n * Current record object\n */\n currentRecord: PropTypes.object,\n /**\n * Enable drag and drop functionality\n */\n draggable: PropTypes.bool,\n\n /**\n * Enable edit functionality\n */\n editable: PropTypes.bool,\n\n /**\n * Error message to be displayed\n */\n error: PropTypes.string,\n\n /**\n * The field name in Formik state.\n */\n name: PropTypes.string,\n\n /**\n * Function to handle option deletion\n */\n onDelete: PropTypes.func,\n\n /**\n * Function to handle option edit\n *\n */\n onEdit: PropTypes.func,\n\n /**\n * Minimum number of options required\n */\n minOptions: PropTypes.number,\n\n /**\n * Options array\n */\n options: PropTypes.array,\n\n /**\n * Prop to switch between Input and Textarea\n */\n isTextArea: PropTypes.bool,\n\n /**\n * Function to handle options change\n */\n onChange: PropTypes.func,\n\n /**\n * Prop to switch between PictureChoice and normal options\n * */\n isPictureChoice: PropTypes.bool,\n\n /**\n * Prop to destroy options\n * */\n shouldDestroy: PropTypes.bool,\n\n /**\n * Prop to set the item label\n * */\n\n itemLabel: PropTypes.string,\n\n /**\n * Props for bulk action\n */\n bulkActionProps: PropTypes.shape({\n enabled: PropTypes.bool,\n bulkAddHelpDocUrl: PropTypes.string,\n }),\n};\nexport default OptionFields;\n"],"names":["DragHandle","props","React","createElement","_extends","className","Reorder","size","strokeWidth","BlockOption","withT","_ref","t","innerRef","_ref$hideDeleteOption","hideDeleteOption","draggableProps","dragHandleProps","label","index","onEdit","handleDeleteClick","ref","Typography","style","Button","icon","Edit","tooltipProps","content","position","onClick","Delete","BulkOptionModal","isOpen","onClose","handleBulkAdd","bulkAddHelpDocUrl","_useTranslation","useTranslation","_useState","useState","_useState2","_slicedToArray","optionsString","setOptionsString","handleSave","handleClose","Modal","Header","Body","Textarea","placeholder","rows","value","helpText","Trans","i18nKey","components","Link","href","target","onChange","e","Footer","DEFAULT_OPTION_LABEL","i18next","getVisibleOptions","options","arguments","length","undefined","filter","option","deleted","sort","a","b","filterDeletedRecords","reject","prop","randomId","Math","random","toString","substring","attachPosition","map","_objectSpread","useOptionFields","shouldDestroy","_ref$name","name","currentRecord","_ref$itemLabel","itemLabel","shouldFocus","setShouldFocus","deletedOptions","_useFormikContext","useFormikContext","initialValues","handleChange","isOnBlur","draftAttributes","getNextOptions","_path$index","_path$index2","assocPath","path","split","isEmpty","concat","_toConsumableArray","generateLabel","opts","count","labelCount","tempLabel","isDuplicateLabel","pluck","includes","handleDelete","nextOptions","remove","handleDragEnd","_ref2","source","destination","filteredOptions","move","finalOptions","handleAddOption","id","newOption","altId","append","handleBulkAddOption","newOptions","trim","isNotEmpty","handleKeyDown","event","key","form","inputs","Array","from","querySelectorAll","currentInput","indexOf","_inputs","focus","preventDefault","stopPropagation","InputOption","isPictureChoice","onKeyDown","onDelete","disabled","isTextArea","Component","Input","Fragment","src","ImageUpload","autoFocus","suffix","onBlur","_ref3","onFocus","_ref4","select","OptionFields","error","_ref$onEdit","noop","_ref$buttonProps","buttonProps","_ref$minOptions","minOptions","_ref$draggable","draggable","_ref$editable","editable","_ref$isPictureChoice","_ref$isTextArea","_ref$shouldDestroy","_ref$currentRecord","_ref$bulkActionProps","bulkActionProps","enabled","isBulkOptionModalOpen","setIsBulkOptionModalOpen","_useOptionFields","isEditable","every","some","deleteFunction","visibleOptions","getUniqueOptionId","_option$id","_option$position","slugify","onSubmit","DragDropContext","onDragEnd","Droppable","droppableId","isDropDisabled","droppableProps","Draggable","draggableId","isDragDisabled","Plus","iconPosition"],"mappings":"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"}
@@ -1,111 +1,35 @@
1
1
  'use strict';
2
2
 
3
- var _extends$1 = require('./extends-1b35a664.js');
4
- var objectWithoutProperties = require('./objectWithoutProperties-2fed2d7d.js');
3
+ var _extends = require('@babel/runtime/helpers/extends');
4
+ var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
5
5
  var React = require('react');
6
6
  var neetoui = require('@bigbinary/neetoui');
7
7
  var injectCss = require('./inject-css-80a5faa3.js');
8
8
 
9
9
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
10
10
 
11
- function _interopNamespace(e) {
12
- if (e && e.__esModule) return e;
13
- var n = Object.create(null);
14
- if (e) {
15
- Object.keys(e).forEach(function (k) {
16
- if (k !== 'default') {
17
- var d = Object.getOwnPropertyDescriptor(e, k);
18
- Object.defineProperty(n, k, d.get ? d : {
19
- enumerable: true,
20
- get: function () { return e[k]; }
21
- });
22
- }
23
- });
24
- }
25
- n["default"] = e;
26
- return Object.freeze(n);
27
- }
28
-
29
- var React__namespace = /*#__PURE__*/_interopNamespace(React);
11
+ var _extends__default = /*#__PURE__*/_interopDefaultLegacy(_extends);
12
+ var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
30
13
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
31
14
 
32
- var _path, _path2, _g, _defs;
33
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
34
- var SvgNeeto = function SvgNeeto(props) {
35
- return /*#__PURE__*/React__namespace.createElement("svg", _extends({
36
- width: 50,
37
- height: 50,
38
- viewBox: "0 0 415 415",
39
- fill: "none",
40
- xmlns: "http://www.w3.org/2000/svg"
41
- }, props), _path || (_path = /*#__PURE__*/React__namespace.createElement("path", {
42
- d: "M414.989 207.495C414.989 92.899 322.091 0 207.495 0H0v414.989h414.989V207.495Z",
43
- fill: "#0043AC"
44
- })), /*#__PURE__*/React__namespace.createElement("mask", {
45
- id: "neeto_svg__a",
46
- style: {
47
- maskType: "alpha"
48
- },
49
- maskUnits: "userSpaceOnUse",
50
- x: 0,
51
- y: 0,
52
- width: 415,
53
- height: 415
54
- }, _path2 || (_path2 = /*#__PURE__*/React__namespace.createElement("path", {
55
- d: "M414.989 207.495C414.989 92.899 322.091 0 207.495 0H0v414.989h414.989V207.495Z",
56
- fill: "#0043AC"
57
- }))), _g || (_g = /*#__PURE__*/React__namespace.createElement("g", {
58
- mask: "url(#neeto_svg__a)"
59
- }, /*#__PURE__*/React__namespace.createElement("path", {
60
- d: "M233.747 348.74c88.579 101.145 172.015 116.411 202.661 111.401v32.491H-8.032V230.487c43.685-2.726 153.2 17.108 241.779 118.253Z",
61
- fill: "url(#neeto_svg__b)"
62
- }))), _defs || (_defs = /*#__PURE__*/React__namespace.createElement("defs", null, /*#__PURE__*/React__namespace.createElement("radialGradient", {
63
- id: "neeto_svg__b",
64
- cx: 0,
65
- cy: 0,
66
- r: 1,
67
- gradientUnits: "userSpaceOnUse",
68
- gradientTransform: "rotate(47.118 -220.556 214.818) scale(427.964 725.049)"
69
- }, /*#__PURE__*/React__namespace.createElement("stop", {
70
- stopColor: "#0043AC"
71
- }), /*#__PURE__*/React__namespace.createElement("stop", {
72
- offset: 1,
73
- stopColor: "#3DB1CA",
74
- stopOpacity: 0.8
75
- })))));
76
- };
77
-
78
- var css = ".neeto-molecules-pageloader__wrapper{height:100%;position:relative;width:100%}.neeto-molecules-pageloader__wrapper .neeto-molecules-pageloader{height:100%;left:0;position:absolute;top:0;width:100%}.neeto-molecules-pageloader__wrapper .neeto-molecules-pageloader__content{height:66px;margin-bottom:16px;overflow:hidden;padding:8px;position:relative;width:66px}.neeto-molecules-pageloader__wrapper .neeto-molecules-pageloader__text{color:rgb(var(--neeto-ui-gray-800));font-size:1.25rem;line-height:1.75rem;margin-bottom:4rem;text-align:center}.neeto-molecules-pageloader__spinner{display:flex;gap:2px;height:25px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.neeto-molecules-pageloader__spinner>div{animation:neeto-ui-stretch-delay 1.2s ease-in-out infinite;background-color:#fff;border-radius:2px;display:inline-flex;height:100%;width:2px}.neeto-molecules-pageloader__spinner .neeto-molecules-pageloader__rect2{animation-delay:-1.1s}.neeto-molecules-pageloader__spinner .neeto-molecules-pageloader__rect3{animation-delay:-1s}.neeto-molecules-pageloader__spinner .neeto-molecules-pageloader__rect4{animation-delay:-.9s}.neeto-molecules-pageloader__spinner .neeto-molecules-pageloader__rect5{animation-delay:-.8s}@keyframes neeto-ui-stretch-delay{0%,40%,to{transform:scaleY(.4);-webkit-transform:scaleY(.4)}20%{transform:scaleY(1);-webkit-transform:scaleY(1)}}";
15
+ var css = ".neeto-molecules-pageloader__wrapper{height:100%;position:relative;width:100%}.neeto-molecules-pageloader__wrapper .neeto-molecules-pageloader{height:100%;left:0;position:absolute;top:0;width:100%}.neeto-molecules-pageloader__wrapper .neeto-molecules-pageloader__content{margin-bottom:16px;padding:8px;position:relative}.neeto-molecules-pageloader__wrapper .neeto-molecules-pageloader__text{color:rgb(var(--neeto-ui-gray-800));font-size:1.25rem;line-height:1.75rem;margin-bottom:4rem;text-align:center}.neeto-molecules-pageloader__loader{animation:neeto-molecules-pageloader-anim1 .8s linear infinite alternate,neeto-molecules-pageloader-anim2 1.6s linear infinite;aspect-ratio:1;border:5px solid #5bcc5a;border-radius:50%;width:36px}@keyframes neeto-molecules-pageloader-anim1{0%{-webkit-clip-path:polygon(50% 50%,0 0,50% 0,50% 0,50% 0,50% 0,50% 0);clip-path:polygon(50% 50%,0 0,50% 0,50% 0,50% 0,50% 0,50% 0)}12.5%{-webkit-clip-path:polygon(50% 50%,0 0,50% 0,100% 0,100% 0,100% 0,100% 0);clip-path:polygon(50% 50%,0 0,50% 0,100% 0,100% 0,100% 0,100% 0)}25%{-webkit-clip-path:polygon(50% 50%,0 0,50% 0,100% 0,100% 100%,100% 100%,100% 100%);clip-path:polygon(50% 50%,0 0,50% 0,100% 0,100% 100%,100% 100%,100% 100%)}50%{-webkit-clip-path:polygon(50% 50%,0 0,50% 0,100% 0,100% 100%,50% 100%,0 100%);clip-path:polygon(50% 50%,0 0,50% 0,100% 0,100% 100%,50% 100%,0 100%)}62.5%{-webkit-clip-path:polygon(50% 50%,100% 0,100% 0,100% 0,100% 100%,50% 100%,0 100%);clip-path:polygon(50% 50%,100% 0,100% 0,100% 0,100% 100%,50% 100%,0 100%)}75%{-webkit-clip-path:polygon(50% 50%,100% 100%,100% 100%,100% 100%,100% 100%,50% 100%,0 100%);clip-path:polygon(50% 50%,100% 100%,100% 100%,100% 100%,100% 100%,50% 100%,0 100%)}to{-webkit-clip-path:polygon(50% 50%,50% 100%,50% 100%,50% 100%,50% 100%,50% 100%,0 100%);clip-path:polygon(50% 50%,50% 100%,50% 100%,50% 100%,50% 100%,50% 100%,0 100%)}}@keyframes neeto-molecules-pageloader-anim2{0%{transform:scaleY(1) rotate(0deg)}49.99%{transform:scaleY(1) rotate(135deg)}50%{transform:scaleY(-1) rotate(0deg)}to{transform:scaleY(-1) rotate(-135deg)}}";
79
16
  injectCss.n(css,{});
80
17
 
81
18
  var _excluded = ["text"];
82
19
  var PageLoader = function PageLoader(_ref) {
83
20
  var _ref$text = _ref.text,
84
21
  text = _ref$text === void 0 ? "" : _ref$text,
85
- otherProps = objectWithoutProperties._objectWithoutProperties(_ref, _excluded);
86
- return /*#__PURE__*/React__default["default"].createElement("div", _extends$1._extends({
22
+ otherProps = _objectWithoutProperties__default["default"](_ref, _excluded);
23
+ return /*#__PURE__*/React__default["default"].createElement("div", _extends__default["default"]({
87
24
  className: "neeto-molecules-pageloader__wrapper"
88
25
  }, otherProps), /*#__PURE__*/React__default["default"].createElement("div", {
89
26
  className: "neeto-molecules-pageloader neeto-ui-flex neeto-ui-flex-col neeto-ui-items-center neeto-ui-justify-center"
90
27
  }, /*#__PURE__*/React__default["default"].createElement("div", {
91
28
  className: "neeto-molecules-pageloader__content neeto-ui-flex neeto-ui-flex-shrink-0 neeto-ui-items-center neeto-ui-justify-center",
92
29
  "data-cy": "neeto-molecules-pageloader"
93
- }, /*#__PURE__*/React__default["default"].createElement(SvgNeeto, {
94
- className: "neeto-molecules-pageloader__logo",
95
- size: 50
96
- }), /*#__PURE__*/React__default["default"].createElement("div", {
97
- className: "neeto-molecules-pageloader__spinner"
98
30
  }, /*#__PURE__*/React__default["default"].createElement("div", {
99
- className: "neeto-molecules-pageloader__rect1"
100
- }), /*#__PURE__*/React__default["default"].createElement("div", {
101
- className: "neeto-molecules-pageloader__rect2"
102
- }), /*#__PURE__*/React__default["default"].createElement("div", {
103
- className: "neeto-molecules-pageloader__rect3"
104
- }), /*#__PURE__*/React__default["default"].createElement("div", {
105
- className: "neeto-molecules-pageloader__rect4"
106
- }), /*#__PURE__*/React__default["default"].createElement("div", {
107
- className: "neeto-molecules-pageloader__rect5"
108
- }))), text && /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
31
+ className: "neeto-molecules-pageloader__loader"
32
+ })), text && /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
109
33
  style: "h5",
110
34
  weight: "semibold"
111
35
  }, text)));
@@ -1 +1 @@
1
- {"version":3,"file":"PageLoader.js","sources":["../../src/assets/images/neeto.svg","../../src/components/PageLoader/index.jsx"],"sourcesContent":["<svg width=\"50\" height=\"50\" viewBox=\"0 0 415 415\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M414.989 207.495C414.989 92.8986 322.091 0 207.495 0H0V414.989H414.989V207.495Z\" fill=\"#0043AC\"/>\n <mask id=\"mask0_4209_5356\" style=\"mask-type:alpha\" maskUnits=\"userSpaceOnUse\" x=\"0\" y=\"0\" width=\"415\" height=\"415\">\n <path d=\"M414.989 207.495C414.989 92.8986 322.091 0 207.495 0H0V414.989H414.989V207.495Z\" fill=\"#0043AC\"/>\n </mask>\n <g mask=\"url(#mask0_4209_5356)\">\n <path d=\"M233.747 348.74C322.326 449.885 405.762 465.151 436.408 460.141V492.632H-8.03214V230.487C35.6531 227.761 145.168 247.595 233.747 348.74Z\" fill=\"url(#paint0_radial_4209_5356)\"/>\n </g>\n <defs>\n <radialGradient id=\"paint0_radial_4209_5356\" cx=\"0\" cy=\"0\" r=\"1\" gradientUnits=\"userSpaceOnUse\" gradientTransform=\"translate(86.9393 230.252) rotate(47.1183) scale(427.964 725.049)\">\n <stop stop-color=\"#0043AC\"/>\n <stop offset=\"1\" stop-color=\"#3DB1CA\" stop-opacity=\"0.8\"/>\n </radialGradient>\n </defs>\n</svg>\n","import React from \"react\";\n\nimport { Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport Neeto from \"assets/images/neeto\";\n\nimport \"./page-loader.scss\";\n\nconst PageLoader = ({ text = \"\", ...otherProps }) => (\n <div className=\"neeto-molecules-pageloader__wrapper\" {...otherProps}>\n <div className=\"neeto-molecules-pageloader neeto-ui-flex neeto-ui-flex-col neeto-ui-items-center neeto-ui-justify-center\">\n <div\n className=\"neeto-molecules-pageloader__content neeto-ui-flex neeto-ui-flex-shrink-0 neeto-ui-items-center neeto-ui-justify-center\"\n data-cy=\"neeto-molecules-pageloader\"\n >\n <Neeto className=\"neeto-molecules-pageloader__logo\" size={50} />\n <div className=\"neeto-molecules-pageloader__spinner\">\n <div className=\"neeto-molecules-pageloader__rect1\" />\n <div className=\"neeto-molecules-pageloader__rect2\" />\n <div className=\"neeto-molecules-pageloader__rect3\" />\n <div className=\"neeto-molecules-pageloader__rect4\" />\n <div className=\"neeto-molecules-pageloader__rect5\" />\n </div>\n </div>\n {text && (\n <Typography style=\"h5\" weight=\"semibold\">\n {text}\n </Typography>\n )}\n </div>\n </div>\n);\n\nPageLoader.propTypes = {\n /**\n * Text to indicate loading status (optional).\n */\n text: PropTypes.string,\n};\n\nexport default React.memo(PageLoader);\n"],"names":["React","PageLoader","_ref","_ref$text","text","otherProps","_objectWithoutProperties","_excluded","createElement","_extends","className","Neeto","size","Typography","style","weight","memo"],"mappings":"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"}
1
+ {"version":3,"file":"PageLoader.js","sources":["../../src/components/PageLoader/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport { Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport \"./page-loader.scss\";\n\nconst PageLoader = ({ text = \"\", ...otherProps }) => (\n <div className=\"neeto-molecules-pageloader__wrapper\" {...otherProps}>\n <div className=\"neeto-molecules-pageloader neeto-ui-flex neeto-ui-flex-col neeto-ui-items-center neeto-ui-justify-center\">\n <div\n className=\"neeto-molecules-pageloader__content neeto-ui-flex neeto-ui-flex-shrink-0 neeto-ui-items-center neeto-ui-justify-center\"\n data-cy=\"neeto-molecules-pageloader\"\n >\n <div className=\"neeto-molecules-pageloader__loader\" />\n </div>\n {text && (\n <Typography style=\"h5\" weight=\"semibold\">\n {text}\n </Typography>\n )}\n </div>\n </div>\n);\n\nPageLoader.propTypes = {\n /**\n * Text to indicate loading status (optional).\n */\n text: PropTypes.string,\n};\n\nexport default React.memo(PageLoader);\n"],"names":["PageLoader","_ref","_ref$text","text","otherProps","_objectWithoutProperties","_excluded","React","createElement","_extends","className","Typography","style","weight","memo"],"mappings":";;;;;;;;;;;;;;;;;;AAOA,IAAMA,UAAU,GAAG,SAAbA,UAAUA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAAC,SAAA,GAAAD,IAAA,CAAME,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,SAAA;AAAKE,IAAAA,UAAU,GAAAC,4CAAA,CAAAJ,IAAA,EAAAK,SAAA,CAAA,CAAA;AAAA,EAAA,oBAC5CC,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAAC,4BAAA,CAAA;AAAKC,IAAAA,SAAS,EAAC,qCAAA;AAAqC,GAAA,EAAKN,UAAU,CAAA,eACjEG,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKE,IAAAA,SAAS,EAAC,0GAAA;GACbH,eAAAA,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEE,IAAAA,SAAS,EAAC,wHAAwH;IAClI,SAAQ,EAAA,4BAAA;GAERH,eAAAA,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKE,IAAAA,SAAS,EAAC,oCAAA;GAAsC,CAClD,CAAC,EACLP,IAAI,iBACHI,yBAAA,CAAAC,aAAA,CAACG,kBAAU,EAAA;AAACC,IAAAA,KAAK,EAAC,IAAI;AAACC,IAAAA,MAAM,EAAC,UAAA;GAC3BV,EAAAA,IACS,CAEX,CACF,CAAC,CAAA;AAAA,CACP,CAAA;AASD,mBAAA,aAAeI,yBAAK,CAACO,IAAI,CAACd,UAAU,CAAC;;;;"}
@@ -2,9 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var _extends = require('./extends-1b35a664.js');
6
- var slicedToArray = require('./slicedToArray-f320d9e7.js');
7
- var objectWithoutProperties = require('./objectWithoutProperties-2fed2d7d.js');
5
+ var _extends = require('@babel/runtime/helpers/extends');
6
+ var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
7
+ var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
8
8
  var React = require('react');
9
9
  var formik = require('formik');
10
10
  var shallow = require('zustand/shallow');
@@ -16,12 +16,13 @@ var reactI18next = require('react-i18next');
16
16
  var countriesList = require('countries-list');
17
17
  var ramda = require('ramda');
18
18
  var reactQuery = require('@tanstack/react-query');
19
+ var axios = require('axios');
19
20
  var withImmutableActions = require('@bigbinary/neeto-commons-frontend/react-utils/withImmutableActions');
20
21
  var zustand = require('zustand');
21
22
  var middleware = require('zustand/middleware');
22
23
  var i18next = require('i18next');
23
24
  var yup = require('yup');
24
- var defineProperty = require('./defineProperty-886ed289.js');
25
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
25
26
 
26
27
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
27
28
 
@@ -43,11 +44,16 @@ function _interopNamespace(e) {
43
44
  return Object.freeze(n);
44
45
  }
45
46
 
47
+ var _extends__default = /*#__PURE__*/_interopDefaultLegacy(_extends);
48
+ var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
49
+ var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
46
50
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
47
51
  var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
52
+ var axios__default = /*#__PURE__*/_interopDefaultLegacy(axios);
48
53
  var withImmutableActions__default = /*#__PURE__*/_interopDefaultLegacy(withImmutableActions);
49
54
  var i18next__default = /*#__PURE__*/_interopDefaultLegacy(i18next);
50
55
  var yup__namespace = /*#__PURE__*/_interopNamespace(yup);
56
+ var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
51
57
 
52
58
  var COUNTRY_PICKER_OPTIONS = min.getCountries().filter(function (code) {
53
59
  return countriesList.countries[code];
@@ -79,12 +85,12 @@ var SingleValue = function SingleValue(_ref) {
79
85
  var countryCode = _ref.countryCode,
80
86
  _ref$showEmoji = _ref.showEmoji,
81
87
  showEmoji = _ref$showEmoji === void 0 ? false : _ref$showEmoji,
82
- otherProps = objectWithoutProperties._objectWithoutProperties(_ref, _excluded$4);
88
+ otherProps = _objectWithoutProperties__default["default"](_ref, _excluded$4);
83
89
  if (!showEmoji) return null;
84
90
  var countryData = countriesList.countries[countryCode];
85
91
  return /*#__PURE__*/React__default["default"].createElement(neetoui.Tooltip, {
86
92
  content: countryData === null || countryData === void 0 ? void 0 : countryData.name
87
- }, /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, _extends._extends({
93
+ }, /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, _extends__default["default"]({
88
94
  className: "cursor-pointer text-center text-xl",
89
95
  style: "body2"
90
96
  }, otherProps), countryData === null || countryData === void 0 ? void 0 : countryData.emoji));
@@ -98,9 +104,9 @@ var CountryPicker = function CountryPicker(_ref) {
98
104
  onInputChange = _ref.onInputChange,
99
105
  prefix = _ref.prefix,
100
106
  phoneNumber = _ref.phoneNumber,
101
- otherProps = objectWithoutProperties._objectWithoutProperties(_ref, _excluded$3);
107
+ otherProps = _objectWithoutProperties__default["default"](_ref, _excluded$3);
102
108
  var _useState = React.useState(""),
103
- _useState2 = slicedToArray._slicedToArray(_useState, 2),
109
+ _useState2 = _slicedToArray__default["default"](_useState, 2),
104
110
  searchTerm = _useState2[0],
105
111
  setSearchTerm = _useState2[1];
106
112
  var handleCountryChange = function handleCountryChange(_ref2) {
@@ -113,7 +119,7 @@ var CountryPicker = function CountryPicker(_ref) {
113
119
  "w-10": !searchTerm,
114
120
  "w-24": searchTerm
115
121
  })
116
- }, /*#__PURE__*/React__default["default"].createElement(neetoui.Select, _extends._extends({
122
+ }, /*#__PURE__*/React__default["default"].createElement(neetoui.Select, _extends__default["default"]({
117
123
  isSearchable: true,
118
124
  "data-testid": "phonenumber-country-picker",
119
125
  options: COUNTRY_PICKER_OPTIONS,
@@ -132,7 +138,7 @@ var CountryPicker = function CountryPicker(_ref) {
132
138
  },
133
139
  isOptionSelected: function isOptionSelected(_ref3, _ref4) {
134
140
  var value = _ref3.value;
135
- var _ref5 = slicedToArray._slicedToArray(_ref4, 1),
141
+ var _ref5 = _slicedToArray__default["default"](_ref4, 1),
136
142
  selectedOption = _ref5[0];
137
143
  return (selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.name) === value;
138
144
  },
@@ -142,6 +148,19 @@ var CountryPicker = function CountryPicker(_ref) {
142
148
  };
143
149
  var CountryPicker$1 = /*#__PURE__*/React__default["default"].memo(CountryPicker);
144
150
 
151
+ var IP_LOOKUP_ACCESS_TOKEN = "083c694c79f119c7f227e737de9a5c8c";
152
+
153
+ var fetchLocationDetails = function fetchLocationDetails() {
154
+ return axios__default["default"].get("https://neeto-ip-lookup-web-production.neetodeployapp.com/location", {
155
+ headers: {
156
+ "X-ACCESS-TOKEN": IP_LOOKUP_ACCESS_TOKEN
157
+ }
158
+ });
159
+ };
160
+ var neetoIpLookupApi = {
161
+ fetchLocationDetails: fetchLocationDetails
162
+ };
163
+
145
164
  /** @type {import("neetocommons/react-utils").ZustandStoreHook} */
146
165
  var useCountryCodeStore = zustand.create(withImmutableActions__default["default"](middleware.persist(function (set, _) {
147
166
  return {
@@ -217,27 +236,22 @@ var useSetInitialCountry = function useSetInitialCountry(initialCountryCode, ini
217
236
  var _getPhoneData = getPhoneData(initialValue),
218
237
  countryCodeFromInitialValue = _getPhoneData.countryCode;
219
238
  var isFetchLocationEnabled = !initialCountryCode && !countryCodeFromInitialValue;
220
-
221
- // useQuery(
222
- // "IP_LOOKUP_LOCATION",
223
- // () => neetoIpLookupApi.fetchLocationDetails(),
224
- // {
225
- // enabled: isFetchLocationEnabled,
226
- // onSuccess: ({ countryCode }) => setCountryCode(countryCode),
227
- // }
228
- // );
229
-
230
239
  var _useQuery = reactQuery.useQuery({
231
240
  queryKey: ["IP_LOOKUP_LOCATION"],
241
+ queryFn: function queryFn() {
242
+ return neetoIpLookupApi.fetchLocationDetails();
243
+ },
232
244
  enabled: isFetchLocationEnabled
233
245
  }),
234
- _useQuery$data = _useQuery.data,
235
- _useQuery$data2 = _useQuery$data === void 0 ? {} : _useQuery$data,
236
- countryCode = _useQuery$data2.countryCode;
246
+ data = _useQuery.data;
237
247
  React.useEffect(function () {
238
248
  if (isFetchLocationEnabled) return;
239
- setCountryCode(countryCode || countryCodeFromInitialValue || initialCountryCode);
240
- }, [countryCode]);
249
+ setCountryCode(countryCodeFromInitialValue || initialCountryCode);
250
+ }, []);
251
+ React.useEffect(function () {
252
+ if (!data) return;
253
+ setCountryCode(data.countryCode);
254
+ }, [data]);
241
255
  };
242
256
 
243
257
  var _excluded$2 = ["value", "onChange", "className", "error", "selectProps", "initialCountryCode"];
@@ -250,7 +264,7 @@ var PhoneNumberInput = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
250
264
  error = _ref.error,
251
265
  selectProps = _ref.selectProps,
252
266
  initialCountryCode = _ref.initialCountryCode,
253
- inputProps = objectWithoutProperties._objectWithoutProperties(_ref, _excluded$2);
267
+ inputProps = _objectWithoutProperties__default["default"](_ref, _excluded$2);
254
268
  var _useTranslation = reactI18next.useTranslation(),
255
269
  t = _useTranslation.t;
256
270
  var internalValue = React.useRef(value);
@@ -293,7 +307,7 @@ var PhoneNumberInput = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
293
307
  }, [value]);
294
308
  return /*#__PURE__*/React__default["default"].createElement("div", {
295
309
  className: classnames__default["default"]([className])
296
- }, /*#__PURE__*/React__default["default"].createElement(neetoui.Input, _extends._extends({
310
+ }, /*#__PURE__*/React__default["default"].createElement(neetoui.Input, _extends__default["default"]({
297
311
  error: error,
298
312
  ref: ref,
299
313
  "data-testid": "phonenumber-input",
@@ -302,7 +316,7 @@ var PhoneNumberInput = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
302
316
  placeholder: t("neetoMolecules.phoneNumberInput.placeholder", {
303
317
  prefix: prefix
304
318
  }),
305
- prefix: /*#__PURE__*/React__default["default"].createElement(CountryPicker$1, _extends._extends({
319
+ prefix: /*#__PURE__*/React__default["default"].createElement(CountryPicker$1, _extends__default["default"]({
306
320
  countryCode: countryCode,
307
321
  prefix: prefix,
308
322
  setCountryCode: setCountryCode,
@@ -317,13 +331,13 @@ PhoneNumberInput.displayName = "PhoneNumberInput";
317
331
  var _excluded$1 = ["name"];
318
332
  var FormikPhoneNumberInput = function FormikPhoneNumberInput(_ref) {
319
333
  var name = _ref.name,
320
- props = objectWithoutProperties._objectWithoutProperties(_ref, _excluded$1);
334
+ props = _objectWithoutProperties__default["default"](_ref, _excluded$1);
321
335
  var _useField = formik.useField(name),
322
- _useField2 = slicedToArray._slicedToArray(_useField, 3),
336
+ _useField2 = _slicedToArray__default["default"](_useField, 3),
323
337
  field = _useField2[0],
324
338
  meta = _useField2[1],
325
339
  setValue = _useField2[2].setValue;
326
- return /*#__PURE__*/React__default["default"].createElement(PhoneNumberInput, _extends._extends({}, field, {
340
+ return /*#__PURE__*/React__default["default"].createElement(PhoneNumberInput, _extends__default["default"]({}, field, {
327
341
  error: meta.touched ? meta.error : "",
328
342
  onChange: setValue
329
343
  }, props));
@@ -331,7 +345,7 @@ var FormikPhoneNumberInput = function FormikPhoneNumberInput(_ref) {
331
345
 
332
346
  var _excluded = ["className", "defaultCountry", "value", "showEmoji", "children"];
333
347
  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; }
334
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { defineProperty._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; }
348
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty__default["default"](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; }
335
349
  var PhoneNumber = function PhoneNumber(_ref) {
336
350
  var className = _ref.className,
337
351
  _ref$defaultCountry = _ref.defaultCountry,
@@ -340,7 +354,7 @@ var PhoneNumber = function PhoneNumber(_ref) {
340
354
  _ref$showEmoji = _ref.showEmoji,
341
355
  showEmoji = _ref$showEmoji === void 0 ? false : _ref$showEmoji,
342
356
  children = _ref.children,
343
- otherProps = objectWithoutProperties._objectWithoutProperties(_ref, _excluded);
357
+ otherProps = _objectWithoutProperties__default["default"](_ref, _excluded);
344
358
  var _getPhoneData = getPhoneData(value || children, defaultCountry),
345
359
  international = _getPhoneData.international,
346
360
  countryCode = _getPhoneData.countryCode;
@@ -349,7 +363,7 @@ var PhoneNumber = function PhoneNumber(_ref) {
349
363
  }, /*#__PURE__*/React__default["default"].createElement(SingleValue$1, _objectSpread({
350
364
  countryCode: countryCode,
351
365
  showEmoji: showEmoji
352
- }, otherProps)), /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, _extends._extends({
366
+ }, otherProps)), /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, _extends__default["default"]({
353
367
  style: "body2"
354
368
  }, otherProps), international));
355
369
  };