@bigbinary/neeto-molecules 4.0.18 → 4.0.29

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 (372) hide show
  1. package/dist/AuditLogs.js +5 -5
  2. package/dist/AuditLogs.js.map +1 -1
  3. package/dist/BoardView.js +6 -6
  4. package/dist/BoardView.js.map +1 -1
  5. package/dist/Breadcrumbs.js +1 -1
  6. package/dist/Breadcrumbs.js.map +1 -1
  7. package/dist/BrowserPreview.js +1 -1
  8. package/dist/BrowserPreview.js.map +1 -1
  9. package/dist/BrowserSupport.js +2 -2
  10. package/dist/BrowserSupport.js.map +1 -1
  11. package/dist/Builder.js +7 -7
  12. package/dist/Builder.js.map +1 -1
  13. package/dist/ButtonGroup.js +2 -2
  14. package/dist/ButtonGroup.js.map +1 -1
  15. package/dist/CalendarView.js +4 -4
  16. package/dist/CalendarView.js.map +1 -1
  17. package/dist/CardLayout.js.map +1 -1
  18. package/dist/{Chevron-DEQtNhrI.js → Chevron-BFX_mIg6.js} +5 -5
  19. package/dist/{Chevron-DEQtNhrI.js.map → Chevron-BFX_mIg6.js.map} +1 -1
  20. package/dist/Codeblock.js +2 -2
  21. package/dist/Codeblock.js.map +1 -1
  22. package/dist/{Columns-CwbG5wLv.js → Columns-xoAs08GC.js} +6 -6
  23. package/dist/{Columns-CwbG5wLv.js.map → Columns-xoAs08GC.js.map} +1 -1
  24. package/dist/Columns.js +2 -2
  25. package/dist/ConfigurePageSidebar.js +2 -2
  26. package/dist/ConfigurePageSidebar.js.map +1 -1
  27. package/dist/ConfirmationModal.js.map +1 -1
  28. package/dist/Container.js +1 -1
  29. package/dist/Container.js.map +1 -1
  30. package/dist/CopyToClipboardButton.js +2 -2
  31. package/dist/CopyToClipboardButton.js.map +1 -1
  32. package/dist/Currency.js +2 -2
  33. package/dist/Currency.js.map +1 -1
  34. package/dist/DateFormat.js +1 -1
  35. package/dist/DateFormat.js.map +1 -1
  36. package/dist/DateRangeFilter.js +1 -1
  37. package/dist/DateRangeFilter.js.map +1 -1
  38. package/dist/DeleteArchiveModal.js.map +1 -1
  39. package/dist/DeviceIncompatibilityMessage.js.map +1 -1
  40. package/dist/DocumentEditor.js +2 -2
  41. package/dist/DocumentEditor.js.map +1 -1
  42. package/dist/DownloadMobileAppCallout.js.map +1 -1
  43. package/dist/DynamicVariables.js +2 -2
  44. package/dist/DynamicVariables.js.map +1 -1
  45. package/dist/EmailForm.js +5 -5
  46. package/dist/EmailForm.js.map +1 -1
  47. package/dist/EmailPreview.js.map +1 -1
  48. package/dist/EmojiPicker.js +1 -1
  49. package/dist/EmojiPicker.js.map +1 -1
  50. package/dist/EmojiReactions.js.map +1 -1
  51. package/dist/Engagements.js +2 -2
  52. package/dist/Engagements.js.map +1 -1
  53. package/dist/ErrorPage.js +369 -657
  54. package/dist/ErrorPage.js.map +1 -1
  55. package/dist/FileUpload.js +14 -14
  56. package/dist/FileUpload.js.map +1 -1
  57. package/dist/FinderModal.js +3 -3
  58. package/dist/FinderModal.js.map +1 -1
  59. package/dist/FloatingActionMenu.js +7 -7
  60. package/dist/FloatingActionMenu.js.map +1 -1
  61. package/dist/GoogleFontPicker.js +21 -21
  62. package/dist/GoogleFontPicker.js.map +1 -1
  63. package/dist/Header.js +2 -2
  64. package/dist/Header.js.map +1 -1
  65. package/dist/HelpPopover.js +1 -1
  66. package/dist/HelpPopover.js.map +1 -1
  67. package/dist/IconPicker.js +2 -2
  68. package/dist/IconPicker.js.map +1 -1
  69. package/dist/ImageWithFallback.js +2 -2
  70. package/dist/ImageWithFallback.js.map +1 -1
  71. package/dist/InlineInput.js +17 -17
  72. package/dist/InlineInput.js.map +1 -1
  73. package/dist/Insights.js +2 -8
  74. package/dist/Insights.js.map +1 -1
  75. package/dist/IntegrationCard.js +3 -3
  76. package/dist/IntegrationCard.js.map +1 -1
  77. package/dist/IpRestriction.js +574 -488
  78. package/dist/IpRestriction.js.map +1 -1
  79. package/dist/KeyboardShortcuts.js +2 -4
  80. package/dist/KeyboardShortcuts.js.map +1 -1
  81. package/dist/LoginPage.js +23 -24
  82. package/dist/LoginPage.js.map +1 -1
  83. package/dist/MadeWith.js +2 -2
  84. package/dist/MadeWith.js.map +1 -1
  85. package/dist/MenuBar.js +6 -6
  86. package/dist/MenuBar.js.map +1 -1
  87. package/dist/Metadata.js +1 -1
  88. package/dist/Metadata.js.map +1 -1
  89. package/dist/MobilePreviewHeader.js.map +1 -1
  90. package/dist/MoreDropdown.js +4 -4
  91. package/dist/MoreDropdown.js.map +1 -1
  92. package/dist/NavigationHeader.js +4 -4
  93. package/dist/NavigationHeader.js.map +1 -1
  94. package/dist/NeetoWidget.js +5 -5
  95. package/dist/NeetoWidget.js.map +1 -1
  96. package/dist/Onboarding.js +4 -4
  97. package/dist/Onboarding.js.map +1 -1
  98. package/dist/OptionFields.js +7 -7
  99. package/dist/OptionFields.js.map +1 -1
  100. package/dist/PageLoader.js +2 -2
  101. package/dist/PageLoader.js.map +1 -1
  102. package/dist/PhoneNumber.js +5 -6
  103. package/dist/PhoneNumber.js.map +1 -1
  104. package/dist/ProductEmbed.js +6 -6
  105. package/dist/ProductEmbed.js.map +1 -1
  106. package/dist/PublishBlock.js +3 -3
  107. package/dist/PublishBlock.js.map +1 -1
  108. package/dist/PublishYourItem.js.map +1 -1
  109. package/dist/Rename.js +5 -5
  110. package/dist/Rename.js.map +1 -1
  111. package/dist/ResponsiveDevicePicker.js +2 -2
  112. package/dist/ResponsiveDevicePicker.js.map +1 -1
  113. package/dist/Schedule.js +3 -3
  114. package/dist/Schedule.js.map +1 -1
  115. package/dist/Scrollable.js +2 -2
  116. package/dist/Scrollable.js.map +1 -1
  117. package/dist/Search.js +2 -2
  118. package/dist/Search.js.map +1 -1
  119. package/dist/SendToFields.js +93 -70
  120. package/dist/SendToFields.js.map +1 -1
  121. package/dist/SessionEnvironment.js +3 -4
  122. package/dist/SessionEnvironment.js.map +1 -1
  123. package/dist/Settings.js +6 -6
  124. package/dist/Settings.js.map +1 -1
  125. package/dist/ShareRecordingPane.js +2 -2
  126. package/dist/ShareRecordingPane.js.map +1 -1
  127. package/dist/ShareViaEmail.js +3 -3
  128. package/dist/ShareViaEmail.js.map +1 -1
  129. package/dist/ShareViaLink.js +30 -30
  130. package/dist/ShareViaLink.js.map +1 -1
  131. package/dist/Sidebar.js +6 -6
  132. package/dist/Sidebar.js.map +1 -1
  133. package/dist/StatusDropdown.js +2 -2
  134. package/dist/StatusDropdown.js.map +1 -1
  135. package/dist/StickyRibbonsContainer.js +10 -12
  136. package/dist/StickyRibbonsContainer.js.map +1 -1
  137. package/dist/SubHeader.js +5 -5
  138. package/dist/SubHeader.js.map +1 -1
  139. package/dist/SubscriptionNotificationsContainer.js +1 -1
  140. package/dist/SubscriptionNotificationsContainer.js.map +1 -1
  141. package/dist/SuffixedInput.js +2 -2
  142. package/dist/SuffixedInput.js.map +1 -1
  143. package/dist/TableWrapper.js +1 -1
  144. package/dist/TableWrapper.js.map +1 -1
  145. package/dist/Taxonomy.js +16 -16
  146. package/dist/Taxonomy.js.map +1 -1
  147. package/dist/TimeFormat.js.map +1 -1
  148. package/dist/TimezoneMismatchModal.js.map +1 -1
  149. package/dist/ToggleFeatureCard.js +3 -3
  150. package/dist/ToggleFeatureCard.js.map +1 -1
  151. package/dist/VersionHistory.js +3 -3
  152. package/dist/VersionHistory.js.map +1 -1
  153. package/dist/cjs/AuditLogs.js +5 -5
  154. package/dist/cjs/AuditLogs.js.map +1 -1
  155. package/dist/cjs/BoardView.js +6 -6
  156. package/dist/cjs/BoardView.js.map +1 -1
  157. package/dist/cjs/Breadcrumbs.js +1 -1
  158. package/dist/cjs/Breadcrumbs.js.map +1 -1
  159. package/dist/cjs/BrowserPreview.js +1 -1
  160. package/dist/cjs/BrowserPreview.js.map +1 -1
  161. package/dist/cjs/BrowserSupport.js +2 -2
  162. package/dist/cjs/BrowserSupport.js.map +1 -1
  163. package/dist/cjs/Builder.js +6 -6
  164. package/dist/cjs/Builder.js.map +1 -1
  165. package/dist/cjs/ButtonGroup.js +2 -2
  166. package/dist/cjs/ButtonGroup.js.map +1 -1
  167. package/dist/cjs/CalendarView.js +4 -4
  168. package/dist/cjs/CalendarView.js.map +1 -1
  169. package/dist/cjs/CardLayout.js.map +1 -1
  170. package/dist/cjs/{Chevron-u-rD2gAf.js → Chevron-ClvaNo3d.js} +5 -5
  171. package/dist/cjs/{Chevron-u-rD2gAf.js.map → Chevron-ClvaNo3d.js.map} +1 -1
  172. package/dist/cjs/Codeblock.js +2 -2
  173. package/dist/cjs/Codeblock.js.map +1 -1
  174. package/dist/cjs/{Columns-CZDLxh70.js → Columns-C95kM2yL.js} +6 -6
  175. package/dist/cjs/{Columns-CZDLxh70.js.map → Columns-C95kM2yL.js.map} +1 -1
  176. package/dist/cjs/Columns.js +2 -2
  177. package/dist/cjs/ConfigurePageSidebar.js +2 -2
  178. package/dist/cjs/ConfigurePageSidebar.js.map +1 -1
  179. package/dist/cjs/ConfirmationModal.js.map +1 -1
  180. package/dist/cjs/Container.js +1 -1
  181. package/dist/cjs/Container.js.map +1 -1
  182. package/dist/cjs/CopyToClipboardButton.js +2 -2
  183. package/dist/cjs/CopyToClipboardButton.js.map +1 -1
  184. package/dist/cjs/Currency.js +2 -2
  185. package/dist/cjs/Currency.js.map +1 -1
  186. package/dist/cjs/DateFormat.js +1 -1
  187. package/dist/cjs/DateFormat.js.map +1 -1
  188. package/dist/cjs/DateRangeFilter.js +1 -1
  189. package/dist/cjs/DateRangeFilter.js.map +1 -1
  190. package/dist/cjs/DeleteArchiveModal.js.map +1 -1
  191. package/dist/cjs/DeviceIncompatibilityMessage.js.map +1 -1
  192. package/dist/cjs/DocumentEditor.js +2 -2
  193. package/dist/cjs/DocumentEditor.js.map +1 -1
  194. package/dist/cjs/DownloadMobileAppCallout.js.map +1 -1
  195. package/dist/cjs/DynamicVariables.js +2 -2
  196. package/dist/cjs/DynamicVariables.js.map +1 -1
  197. package/dist/cjs/EmailForm.js +5 -5
  198. package/dist/cjs/EmailForm.js.map +1 -1
  199. package/dist/cjs/EmailPreview.js.map +1 -1
  200. package/dist/cjs/EmojiPicker.js +1 -1
  201. package/dist/cjs/EmojiPicker.js.map +1 -1
  202. package/dist/cjs/EmojiReactions.js.map +1 -1
  203. package/dist/cjs/Engagements.js +2 -2
  204. package/dist/cjs/Engagements.js.map +1 -1
  205. package/dist/cjs/ErrorPage.js +369 -657
  206. package/dist/cjs/ErrorPage.js.map +1 -1
  207. package/dist/cjs/FileUpload.js +14 -14
  208. package/dist/cjs/FileUpload.js.map +1 -1
  209. package/dist/cjs/FinderModal.js +3 -3
  210. package/dist/cjs/FinderModal.js.map +1 -1
  211. package/dist/cjs/FloatingActionMenu.js +6 -6
  212. package/dist/cjs/FloatingActionMenu.js.map +1 -1
  213. package/dist/cjs/GoogleFontPicker.js +21 -21
  214. package/dist/cjs/GoogleFontPicker.js.map +1 -1
  215. package/dist/cjs/Header.js +2 -2
  216. package/dist/cjs/Header.js.map +1 -1
  217. package/dist/cjs/HelpPopover.js +1 -1
  218. package/dist/cjs/HelpPopover.js.map +1 -1
  219. package/dist/cjs/IconPicker.js +2 -2
  220. package/dist/cjs/IconPicker.js.map +1 -1
  221. package/dist/cjs/ImageWithFallback.js +2 -2
  222. package/dist/cjs/ImageWithFallback.js.map +1 -1
  223. package/dist/cjs/InlineInput.js +17 -17
  224. package/dist/cjs/InlineInput.js.map +1 -1
  225. package/dist/cjs/Insights.js +2 -8
  226. package/dist/cjs/Insights.js.map +1 -1
  227. package/dist/cjs/IntegrationCard.js +3 -3
  228. package/dist/cjs/IntegrationCard.js.map +1 -1
  229. package/dist/cjs/IpRestriction.js +574 -488
  230. package/dist/cjs/IpRestriction.js.map +1 -1
  231. package/dist/cjs/KeyboardShortcuts.js +2 -4
  232. package/dist/cjs/KeyboardShortcuts.js.map +1 -1
  233. package/dist/cjs/LoginPage.js +23 -24
  234. package/dist/cjs/LoginPage.js.map +1 -1
  235. package/dist/cjs/MadeWith.js +2 -2
  236. package/dist/cjs/MadeWith.js.map +1 -1
  237. package/dist/cjs/MenuBar.js +6 -6
  238. package/dist/cjs/MenuBar.js.map +1 -1
  239. package/dist/cjs/Metadata.js +1 -1
  240. package/dist/cjs/Metadata.js.map +1 -1
  241. package/dist/cjs/MobilePreviewHeader.js.map +1 -1
  242. package/dist/cjs/MoreDropdown.js +4 -4
  243. package/dist/cjs/MoreDropdown.js.map +1 -1
  244. package/dist/cjs/NavigationHeader.js +4 -4
  245. package/dist/cjs/NavigationHeader.js.map +1 -1
  246. package/dist/cjs/NeetoWidget.js +5 -5
  247. package/dist/cjs/NeetoWidget.js.map +1 -1
  248. package/dist/cjs/Onboarding.js +3 -3
  249. package/dist/cjs/Onboarding.js.map +1 -1
  250. package/dist/cjs/OptionFields.js +6 -6
  251. package/dist/cjs/OptionFields.js.map +1 -1
  252. package/dist/cjs/PageLoader.js +2 -2
  253. package/dist/cjs/PageLoader.js.map +1 -1
  254. package/dist/cjs/PhoneNumber.js +4 -5
  255. package/dist/cjs/PhoneNumber.js.map +1 -1
  256. package/dist/cjs/ProductEmbed.js +5 -5
  257. package/dist/cjs/ProductEmbed.js.map +1 -1
  258. package/dist/cjs/PublishBlock.js +3 -3
  259. package/dist/cjs/PublishBlock.js.map +1 -1
  260. package/dist/cjs/PublishYourItem.js.map +1 -1
  261. package/dist/cjs/Rename.js +5 -5
  262. package/dist/cjs/Rename.js.map +1 -1
  263. package/dist/cjs/ResponsiveDevicePicker.js +2 -2
  264. package/dist/cjs/ResponsiveDevicePicker.js.map +1 -1
  265. package/dist/cjs/Schedule.js +3 -3
  266. package/dist/cjs/Schedule.js.map +1 -1
  267. package/dist/cjs/Scrollable.js +2 -2
  268. package/dist/cjs/Scrollable.js.map +1 -1
  269. package/dist/cjs/Search.js +2 -2
  270. package/dist/cjs/Search.js.map +1 -1
  271. package/dist/cjs/SendToFields.js +93 -70
  272. package/dist/cjs/SendToFields.js.map +1 -1
  273. package/dist/cjs/SessionEnvironment.js +3 -4
  274. package/dist/cjs/SessionEnvironment.js.map +1 -1
  275. package/dist/cjs/Settings.js +6 -6
  276. package/dist/cjs/Settings.js.map +1 -1
  277. package/dist/cjs/ShareRecordingPane.js +2 -2
  278. package/dist/cjs/ShareRecordingPane.js.map +1 -1
  279. package/dist/cjs/ShareViaEmail.js +3 -3
  280. package/dist/cjs/ShareViaEmail.js.map +1 -1
  281. package/dist/cjs/ShareViaLink.js +24 -24
  282. package/dist/cjs/ShareViaLink.js.map +1 -1
  283. package/dist/cjs/Sidebar.js +5 -5
  284. package/dist/cjs/Sidebar.js.map +1 -1
  285. package/dist/cjs/StatusDropdown.js +2 -2
  286. package/dist/cjs/StatusDropdown.js.map +1 -1
  287. package/dist/cjs/StickyRibbonsContainer.js +10 -12
  288. package/dist/cjs/StickyRibbonsContainer.js.map +1 -1
  289. package/dist/cjs/SubHeader.js +5 -5
  290. package/dist/cjs/SubHeader.js.map +1 -1
  291. package/dist/cjs/SubscriptionNotificationsContainer.js +1 -1
  292. package/dist/cjs/SubscriptionNotificationsContainer.js.map +1 -1
  293. package/dist/cjs/SuffixedInput.js +2 -2
  294. package/dist/cjs/SuffixedInput.js.map +1 -1
  295. package/dist/cjs/TableWrapper.js +1 -1
  296. package/dist/cjs/TableWrapper.js.map +1 -1
  297. package/dist/cjs/Taxonomy.js +16 -16
  298. package/dist/cjs/Taxonomy.js.map +1 -1
  299. package/dist/cjs/TimeFormat.js.map +1 -1
  300. package/dist/cjs/TimezoneMismatchModal.js.map +1 -1
  301. package/dist/cjs/ToggleFeatureCard.js +3 -3
  302. package/dist/cjs/ToggleFeatureCard.js.map +1 -1
  303. package/dist/cjs/VersionHistory.js +3 -3
  304. package/dist/cjs/VersionHistory.js.map +1 -1
  305. package/dist/cjs/index-JY2zVpnv.js.map +1 -1
  306. package/dist/cjs/inject-css-B6qYtOJe.js +6 -0
  307. package/dist/cjs/inject-css-B6qYtOJe.js.map +1 -0
  308. package/dist/cjs/{phone-number-C93qn93_.js → phone-number-1EDAr56u.js} +34 -24
  309. package/dist/cjs/phone-number-1EDAr56u.js.map +1 -0
  310. package/dist/cjs/platform-BUcCb8Jx.js.map +1 -1
  311. package/dist/cjs/useKeyboardShortcutsPaneState-YnXpWOcs.js.map +1 -1
  312. package/dist/index-DAYCJu79.js.map +1 -1
  313. package/dist/inject-css-C2dztUxs.js +4 -0
  314. package/dist/inject-css-C2dztUxs.js.map +1 -0
  315. package/dist/{phone-number-CSXPpNBP.js → phone-number-BDkpXCIq.js} +36 -26
  316. package/dist/phone-number-BDkpXCIq.js.map +1 -0
  317. package/dist/platform-F44zJ4Xh.js.map +1 -1
  318. package/dist/useKeyboardShortcutsPaneState-C_eLceJQ.js.map +1 -1
  319. package/package.json +12 -14
  320. package/types/ButtonGroup.d.ts +2 -1
  321. package/types/CopyToClipboardButton.d.ts +2 -1
  322. package/types/EmailPreview.d.ts +2 -1
  323. package/types/FileUpload.d.ts +2 -1
  324. package/types/Header.d.ts +2 -1
  325. package/types/HelpPopover.d.ts +2 -1
  326. package/types/InlineInput.d.ts +2 -1
  327. package/types/IntegrationCard.d.ts +2 -1
  328. package/types/MoreDropdown.d.ts +1 -1
  329. package/types/PhoneNumber.d.ts +2 -1
  330. package/types/PublishBlock.d.ts +1 -1
  331. package/types/SubHeader.d.ts +1 -1
  332. package/types/ToggleFeatureCard.d.ts +1 -1
  333. package/dist/cjs/inject-css-vQvjPR2x.js +0 -6
  334. package/dist/cjs/inject-css-vQvjPR2x.js.map +0 -1
  335. package/dist/cjs/phone-number-C93qn93_.js.map +0 -1
  336. package/dist/inject-css-DmrvuTKK.js +0 -4
  337. package/dist/inject-css-DmrvuTKK.js.map +0 -1
  338. package/dist/phone-number-CSXPpNBP.js.map +0 -1
  339. package/src/translations/ar.json +0 -867
  340. package/src/translations/bg.json +0 -119
  341. package/src/translations/ca.json +0 -867
  342. package/src/translations/cs.json +0 -867
  343. package/src/translations/da.json +0 -867
  344. package/src/translations/de.json +0 -867
  345. package/src/translations/en.json +0 -867
  346. package/src/translations/es-MX.json +0 -867
  347. package/src/translations/es.json +0 -867
  348. package/src/translations/et.json +0 -867
  349. package/src/translations/fi.json +0 -867
  350. package/src/translations/fil.json +0 -867
  351. package/src/translations/fr.json +0 -867
  352. package/src/translations/hi.json +0 -119
  353. package/src/translations/hr.json +0 -867
  354. package/src/translations/id.json +0 -867
  355. package/src/translations/it.json +0 -867
  356. package/src/translations/ja.json +0 -867
  357. package/src/translations/ko.json +0 -867
  358. package/src/translations/nl.json +0 -867
  359. package/src/translations/pl.json +0 -867
  360. package/src/translations/pt-BR.json +0 -867
  361. package/src/translations/pt.json +0 -867
  362. package/src/translations/ro.json +0 -867
  363. package/src/translations/ru.json +0 -867
  364. package/src/translations/sk.json +0 -867
  365. package/src/translations/sl.json +0 -867
  366. package/src/translations/sv.json +0 -867
  367. package/src/translations/th.json +0 -867
  368. package/src/translations/tr.json +0 -867
  369. package/src/translations/uk.json +0 -867
  370. package/src/translations/vi.json +0 -867
  371. package/src/translations/zh-CN.json +0 -867
  372. package/src/translations/zh-TW.json +0 -867
@@ -10,7 +10,7 @@ var reactI18next = require('react-i18next');
10
10
  var jsxRuntime = require('react/jsx-runtime');
11
11
  var path = require('path');
12
12
  var i18next = require('i18next');
13
- var injectCss = require('./inject-css-vQvjPR2x.js');
13
+ var injectCss = require('./inject-css-B6qYtOJe.js');
14
14
  var FileGeneric = require('@bigbinary/neeto-icons/FileGeneric');
15
15
  var Check = require('@bigbinary/neeto-icons/Check');
16
16
  var Close = require('@bigbinary/neeto-icons/Close');
@@ -18,7 +18,6 @@ var framerMotion = require('framer-motion');
18
18
  var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
19
19
  var _asyncToGenerator = require('@babel/runtime/helpers/asyncToGenerator');
20
20
  var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
21
- var _regeneratorRuntime = require('@babel/runtime/regenerator');
22
21
  var React = require('react');
23
22
  var activestorage = require('@rails/activestorage');
24
23
  var reactDropzone = require('react-dropzone');
@@ -64,7 +63,7 @@ var DIRECT_UPLOAD_URL = "/api/direct_uploads";
64
63
  var MAX_FILE_SIZE = (initializers.globalProps === null || initializers.globalProps === void 0 ? void 0 : initializers.globalProps.endUserUploadedFileSizeLimitInMb) || 10;
65
64
 
66
65
  function ownKeys$2(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; }
67
- function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
66
+ function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
68
67
  var DropZone = function DropZone(_ref) {
69
68
  var isDragActive = _ref.isDragActive,
70
69
  getRootProps = _ref.getRootProps,
@@ -344,8 +343,10 @@ var FilePreview = function FilePreview(_ref) {
344
343
  }, file.url);
345
344
  };
346
345
 
346
+ function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = false, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = true, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), true), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
347
+ function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
347
348
  function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
348
- function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
349
+ function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
349
350
  var useFileUpload = function useFileUpload(_ref) {
350
351
  var disabled = _ref.disabled,
351
352
  accept = _ref.accept,
@@ -380,10 +381,10 @@ var useFileUpload = function useFileUpload(_ref) {
380
381
  uploadError && setError(uploadError);
381
382
  }, [uploadError]);
382
383
  var onDropAccepted = /*#__PURE__*/function () {
383
- var _ref2 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(acceptedFiles) {
384
+ var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(acceptedFiles) {
384
385
  var initialFiles, updatedFiles, newFiles, _updatedFiles;
385
- return _regeneratorRuntime.wrap(function _callee$(_context) {
386
- while (1) switch (_context.prev = _context.next) {
386
+ return _regenerator().w(function (_context) {
387
+ while (1) switch (_context.n) {
387
388
  case 0:
388
389
  setTouched(false);
389
390
  setUploadError("");
@@ -395,7 +396,7 @@ var useFileUpload = function useFileUpload(_ref) {
395
396
  });
396
397
  updatedFiles = multiple ? [].concat(_toConsumableArray(files || []), _toConsumableArray(initialFiles)) : initialFiles;
397
398
  onChange(updatedFiles);
398
- _context.next = 7;
399
+ _context.n = 1;
399
400
  return new Promise(function (resolve) {
400
401
  var files = [];
401
402
  acceptedFiles.forEach(function (file) {
@@ -429,8 +430,8 @@ var useFileUpload = function useFileUpload(_ref) {
429
430
  });
430
431
  return files;
431
432
  });
432
- case 7:
433
- newFiles = _context.sent;
433
+ case 1:
434
+ newFiles = _context.v;
434
435
  if (multiple) {
435
436
  _updatedFiles = filesRef.current.map(function (file) {
436
437
  var uploadedFile = neetoCist.findBy({
@@ -442,9 +443,8 @@ var useFileUpload = function useFileUpload(_ref) {
442
443
  } else {
443
444
  onChange(newFiles);
444
445
  }
445
- case 9:
446
- case "end":
447
- return _context.stop();
446
+ case 2:
447
+ return _context.a(2);
448
448
  }
449
449
  }, _callee);
450
450
  }));
@@ -567,7 +567,7 @@ var FileUpload = function FileUpload(_ref) {
567
567
 
568
568
  var _excluded = ["name"];
569
569
  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; }
570
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
570
+ 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; }
571
571
  var FormikFileUpload = function FormikFileUpload(_ref) {
572
572
  var name = _ref.name,
573
573
  props = _objectWithoutProperties(_ref, _excluded);
@@ -1 +1 @@
1
- {"version":3,"file":"FileUpload.js","sources":["../../src/components/FileUpload/constants.js","../../src/components/FileUpload/DropZone.jsx","../../src/components/FileUpload/utils.js","../../src/components/FileUpload/ErrorMessages.jsx","../../src/components/FileUpload/Progress.jsx","../../src/components/FileUpload/FilePreview.jsx","../../src/components/FileUpload/hooks/useFileUpload.js","../../src/components/FileUpload/FileUpload.jsx","../../src/components/FileUpload/FormikFileUpload.jsx"],"sourcesContent":["import { globalProps } from \"neetocommons/initializers\";\n\nexport const FILE_MIME_TYPES = {\n pdf: [\"application/pdf\"],\n doc: [\"application/msword\", \"application/wps-writer\"],\n docx: [\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\",\n ],\n xls: [\"application/vnd.ms-excel\"],\n xlsx: [\"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\"],\n csv: [\"text/csv\"],\n txt: [\"text/plain\"],\n rtf: [\"application/rtf\", \"text/rtf\"],\n html: [\"text/html\"],\n htm: [\"text/html\"],\n md: [\"text/markdown\", \"text/x-markdown\"],\n zip: [\"application/zip\"],\n mp3: [\"audio/mpeg\"],\n wma: [\"audio/x-ms-wma\", \"video/x-ms-asf\"],\n mp4: [\"video/mp4\"],\n mpg: [\"video/mpeg\"],\n mpeg: [\"video/mpeg\"],\n flv: [\"video/x-flv\"],\n avi: [\"video/x-msvideo\"],\n jpg: [\"image/jpeg\"],\n jpeg: [\"image/jpeg\"],\n png: [\"image/png\"],\n gif: [\"image/gif\"],\n json: [\"application/json\"],\n epub: [\"application/epub+zip\"],\n aac: [\"audio/aac\"],\n svg: [\"image/svg+xml\"],\n ico: [\"image/vnd.microsoft.icon\"],\n};\n\nexport const ERROR_CODES = {\n FILE_TOO_LARGE: \"file-too-large\",\n FILE_INVALID_TYPE: \"file-invalid-type\",\n TOO_MANY_FILES: \"too-many-files\",\n};\n\nexport const DIRECT_UPLOAD_URL = \"/api/direct_uploads\";\n\nexport const MAX_FILE_SIZE =\n globalProps?.endUserUploadedFileSizeLimitInMb || 10;\n","import classnames from \"classnames\";\nimport { FileUpload } from \"neetoicons\";\nimport { useTranslation } from \"react-i18next\";\n\nconst DropZone = ({\n isDragActive,\n getRootProps,\n getInputProps,\n multipleFilesAllowed,\n maxFileSize,\n allowedFileTypes,\n hasFileSizeLimit,\n}) => {\n const { t } = useTranslation();\n\n const shouldAllowSingleFileUpload = !multipleFilesAllowed;\n const shouldShowFileSizeLimit = hasFileSizeLimit && maxFileSize;\n\n return (\n <div\n {...getRootProps({\n className: classnames([\"neeto-molecules-file-upload__dropzone\"], {\n \"neeto-molecules-file-upload__dropzone--drag-active\": isDragActive,\n }),\n })}\n >\n <div\n className=\"neeto-molecules-file-upload__dropzone-inner\"\n data-cy=\"file-upload-body\"\n data-testid=\"file-upload-body\"\n >\n <FileUpload\n className=\"neeto-molecules-file-upload__upload-icon\"\n size=\"36\"\n />\n <div className=\"neeto-molecules-file-upload__dropzone-content\">\n <label\n className=\"neeto-molecules-file-upload__upload-label\"\n htmlFor=\"file-upload\"\n >\n <span className=\"neeto-molecules-file-upload__choose-file\">\n {t(\n \"neetoMolecules.fileUpload.filesDropzone.chooseFileOrDragHere\"\n )}\n </span>\n <input {...getInputProps()} data-cy=\"image-browse-button\" />\n </label>\n <div className=\"neeto-molecules-file-upload__dropzone-helper-block\">\n {shouldAllowSingleFileUpload && (\n <p\n className=\"neeto-molecules-file-upload__dropzone-helper-text\"\n data-cy=\"upload-only-one-file-text\"\n >\n {t(\"neetoMolecules.fileUpload.filesDropzone.oneFileAllowed\")}\n </p>\n )}\n {shouldShowFileSizeLimit && (\n <p\n className=\"neeto-molecules-file-upload__dropzone-helper-text\"\n data-cy=\"maximum-allowed-size-text\"\n >\n {t(\"neetoMolecules.fileUpload.filesDropzone.maxFileSize\", {\n size: maxFileSize,\n unit: \"MB\",\n })}\n </p>\n )}\n {allowedFileTypes && (\n <p\n className=\"neeto-molecules-file-upload__dropzone-helper-text\"\n data-cy=\"allowed-files-types-text\"\n >\n {t(\"neetoMolecules.fileUpload.filesDropzone.allowedFileTypes\", {\n types: allowedFileTypes,\n })}\n </p>\n )}\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default DropZone;\n","import path from \"path\";\n\nimport { t } from \"i18next\";\nimport { isNotPresent } from \"neetocist\";\n\nimport { FILE_MIME_TYPES, ERROR_CODES } from \"./constants\";\n\nexport const getAcceptedFileTypes = allowedFileTypes => {\n const accepted = {};\n\n allowedFileTypes.split(\", \").forEach(type => {\n const mimeTypes = FILE_MIME_TYPES[type] || [\"application/octet-stream\"];\n const extension = `.${type}`;\n\n if (isNotPresent(type) || isNotPresent(mimeTypes)) return;\n\n mimeTypes.forEach(mimeType => {\n if (accepted[mimeType]) accepted[mimeType].push(extension);\n else accepted[mimeType] = [extension];\n });\n });\n\n return accepted;\n};\n\nexport const convertBytesToMb = bytes =>\n ((bytes - 10) / (1028 * 1024)).toFixed(2);\n\nexport const renderErrorMessage = (errorObject, maxFileSize, isMultiple) => {\n const error = errorObject.errors[0];\n const file = errorObject.file;\n if (error) {\n const { code } = error;\n if (code === ERROR_CODES.FILE_TOO_LARGE) {\n return t(\"neetoMolecules.fileUpload.filesDropzone.errors.fileTooLarge\", {\n fileName: file.name,\n maxSize: `${Math.round(maxFileSize / 1048576)}MB`,\n });\n } else if (code === ERROR_CODES.FILE_INVALID_TYPE) {\n return t(\n \"neetoMolecules.fileUpload.filesDropzone.errors.fileInvalidType\",\n { fileType: path.extname(file.name) }\n );\n } else if (code === ERROR_CODES.TOO_MANY_FILES && !isMultiple) {\n return t(\"neetoMolecules.fileUpload.filesDropzone.errors.tooManyFiles\", {\n maxFiles: 1,\n });\n }\n }\n\n return t(\"neetoMolecules.fileUpload.filesDropzone.errors.defaultError\", {\n fileName: file.name,\n });\n};\n\nexport const convertMbToBytes = mb => mb * 1028 * 1024 + 10;\n","import { useTranslation } from \"react-i18next\";\n\nimport { ERROR_CODES } from \"./constants\";\nimport { renderErrorMessage } from \"./utils\";\n\nconst ErrorMessages = ({ fileRejections, maxFileSizeInBytes }) => {\n const { t } = useTranslation();\n\n const hasMultipleFileErrors = fileRejections.some(\n ({ errors }) => errors[0].code === ERROR_CODES.TOO_MANY_FILES\n );\n\n return (\n <>\n {hasMultipleFileErrors && (\n <p\n className=\"neeto-molecules-input__error-text\"\n data-cy=\"form-file-upload-input-error\"\n >\n <span className=\"neeto-molecules-input__error-text-style-handle\">\n {t(\"neetoMolecules.fileUpload.filesDropzone.errors.tooManyFiles\", {\n maxFiles: 1,\n })}\n </span>\n </p>\n )}\n {fileRejections\n .filter(({ errors }) => errors[0].code !== ERROR_CODES.TOO_MANY_FILES)\n .map((file, index) => (\n <p\n className=\"neeto-molecules-input__error-text\"\n data-cy=\"form-file-upload-input-error\"\n key={index}\n >\n <span className=\"neeto-molecules-input__error-text-style-handle\">\n {renderErrorMessage(file, maxFileSizeInBytes, false)}\n </span>\n </p>\n ))}\n </>\n );\n};\n\nexport default ErrorMessages;\n","import { motion } from \"framer-motion\";\n\nconst Progress = ({\n percents,\n stroke = \"currentColor\",\n emptyStroke = stroke,\n emptyStrokeOpacity = 0.25,\n duration = 0.5,\n delay = 0,\n size = 100,\n strokeWidth = 12,\n}) => {\n const radius = 45;\n const circumference = Math.ceil(2 * Math.PI * radius);\n const fillPercents = Math.abs(\n Math.ceil((circumference / 100) * (percents - 100))\n );\n\n const transition = { duration, delay };\n\n const variants = {\n hidden: { strokeDashoffset: circumference, transition },\n show: { strokeDashoffset: fillPercents, transition },\n };\n\n return (\n <div className=\"neeto-molecules-progress__circle\">\n <div\n className=\"neeto-molecules-progress__circle-wrapper\"\n style={{ height: size }}\n >\n <svg\n height={size}\n version=\"1.1\"\n viewBox=\"0 0 100 100\"\n width={size}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle\n {...{ strokeWidth }}\n className=\"circle\"\n cx=\"50\"\n cy=\"50\"\n fill=\"transparent\"\n r={radius}\n stroke={emptyStroke}\n strokeOpacity={emptyStrokeOpacity}\n />\n </svg>\n <svg\n height={size}\n viewBox=\"0 0 100 100\"\n width={size}\n style={{\n position: \"absolute\",\n transform: \"rotate(-90deg)\",\n overflow: \"visible\",\n top: 0,\n }}\n >\n <motion.circle\n {...{ stroke, strokeWidth, variants }}\n animate=\"show\"\n cx=\"50\"\n cy=\"50\"\n fill=\"transparent\"\n initial=\"hidden\"\n r={radius}\n strokeDasharray={circumference}\n strokeDashoffset={fillPercents}\n />\n </svg>\n </div>\n </div>\n );\n};\n\nexport default Progress;\n","import classnames from \"classnames\";\nimport { FileGeneric, Check, Close } from \"neetoicons\";\n\nimport Progress from \"./Progress\";\nimport { convertBytesToMb } from \"./utils\";\n\nconst FilePreview = ({ file, isUploading, cancel, progress }) => (\n <li\n className=\"neeto-molecules-file-upload__uploaded-list-item\"\n key={file.url}\n >\n <div className=\"neeto-molecules-file-upload__file-preview\">\n <a\n className={classnames({ \"neeto-molecules-invisible\": isUploading })}\n href={file.url}\n rel=\"noreferrer\"\n target=\"_blank\"\n >\n <FileGeneric />\n </a>\n {isUploading && (\n <div className=\"neeto-molecules-progress\">\n <Progress percents={progress || 0} size={20} />\n </div>\n )}\n </div>\n <div className=\"neeto-molecules-file-upload__file-info\">\n <span\n className=\"neeto-molecules-file-upload__file-info-name\"\n data-cy=\"file-name\"\n >\n {file.name}\n </span>\n <span className=\"neeto-molecules-file-upload__file-info-size\">\n {file.size ? `${convertBytesToMb(file.size)} MB` : \"\"}\n </span>\n </div>\n <div className=\"neeto-molecules-file-upload__actions\">\n <span\n className={classnames(\n \"neeto-molecules-file-upload__success-indicator\",\n { \"neeto-molecules-file-upload__success-indicator--active\": file.url }\n )}\n >\n {file.url && <Check data-cy=\"file-upload-success\" />}\n </span>\n <button\n className=\"neeto-molecules-file-upload__button--red neeto-molecules-file-upload__remove-button\"\n type=\"button\"\n onClick={cancel}\n >\n <Close />\n </button>\n </div>\n </li>\n);\n\nexport default FilePreview;\n","import { useState, useCallback, useEffect, useRef } from \"react\";\n\nimport { DirectUpload } from \"@rails/activestorage\";\nimport { findBy } from \"neetocist\";\nimport { assoc } from \"ramda\";\nimport { useDropzone } from \"react-dropzone\";\n\nimport { DIRECT_UPLOAD_URL } from \"../constants\";\nimport { convertMbToBytes, renderErrorMessage } from \"../utils\";\n\nconst useFileUpload = ({\n disabled,\n accept,\n multiple,\n maxFileSize,\n minFileSize,\n files,\n onChange,\n setError,\n setTouched,\n hasFileSizeLimit,\n}) => {\n const [uploadProgress, setUploadProgress] = useState({});\n const [uploadError, setUploadError] = useState(\"\");\n\n const filesRef = useRef(files);\n filesRef.current = files;\n\n const cancel = useCallback(\n index => () => {\n setUploadProgress(assoc(files[index].name, null));\n const newFiles = files?.filter((_, idx) => idx !== index);\n onChange(newFiles);\n },\n [files]\n );\n\n useEffect(() => {\n uploadError && setError(uploadError);\n }, [uploadError]);\n\n const onDropAccepted = async acceptedFiles => {\n setTouched(false);\n setUploadError(\"\");\n const initialFiles = acceptedFiles.map(file => ({\n name: file.name,\n size: file.size,\n }));\n\n const updatedFiles = multiple\n ? [...(files || []), ...initialFiles]\n : initialFiles;\n onChange(updatedFiles);\n const newFiles = await new Promise(resolve => {\n const files = [];\n\n acceptedFiles.forEach(file => {\n setUploadProgress(assoc(file.name, 0));\n\n const upload = new DirectUpload(file, DIRECT_UPLOAD_URL, {\n directUploadWillStoreFileWithXHR: xhr => {\n xhr.upload.addEventListener(\"progress\", event => {\n const percentComplete = Math.round(\n (event.loaded / event.total) * 100\n );\n setUploadProgress(assoc(file.name, percentComplete));\n });\n\n xhr.upload.addEventListener(\"load\", () => {\n setUploadProgress(assoc(file.name, undefined));\n });\n },\n });\n\n upload.create((error, blob) => {\n if (error) {\n return setUploadError(error);\n }\n\n files.push({\n url: blob.blob_url,\n name: blob.filename,\n signedId: blob.signed_id,\n });\n\n const isUploadCompleted = multiple\n ? acceptedFiles.length === files.length\n : files.length === 1;\n\n if (isUploadCompleted) {\n return resolve(files);\n }\n\n return \"\";\n });\n });\n\n return files;\n });\n\n if (multiple) {\n const updatedFiles = filesRef.current.map(file => {\n const uploadedFile = findBy({ name: file.name }, newFiles);\n\n return { ...file, ...uploadedFile };\n });\n onChange(updatedFiles);\n } else {\n onChange(newFiles);\n }\n };\n\n const onDropRejected = fileRejections => {\n fileRejections.forEach(fileObject => {\n setTouched(true);\n if (fileObject.errors[0].code === \"too-many-files\") {\n setUploadError(renderErrorMessage(fileObject, maxFileSize, multiple));\n } else {\n setUploadError(renderErrorMessage(fileObject, maxFileSize, multiple));\n }\n });\n };\n\n const { getRootProps, getInputProps, isDragActive, fileRejections } =\n useDropzone({\n disabled,\n accept,\n multiple,\n minSize: convertMbToBytes(minFileSize),\n onDropAccepted,\n onDropRejected,\n ...(maxFileSize &&\n hasFileSizeLimit && { maxSize: convertMbToBytes(maxFileSize) }),\n });\n\n return {\n progress: uploadProgress,\n cancel,\n getRootProps,\n getInputProps,\n isDragActive,\n fileRejections,\n };\n};\n\nexport default useFileUpload;\n","import { isNotEmpty, noop } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { isEmpty, isNotNil } from \"ramda\";\n\nimport { MAX_FILE_SIZE } from \"./constants\";\nimport DropZone from \"./DropZone\";\nimport ErrorMessages from \"./ErrorMessages\";\nimport \"./file-upload.scss\";\nimport FilePreview from \"./FilePreview\";\nimport useFileUpload from \"./hooks/useFileUpload\";\nimport { getAcceptedFileTypes } from \"./utils\";\n\nconst FileUpload = ({\n allowedFileTypes = \"\",\n multipleFilesAllowed = true,\n maxFileSize = MAX_FILE_SIZE,\n hasFileSizeLimit = true,\n isPreview = false,\n minFileSize = 0,\n files = [],\n onChange = noop,\n error,\n setError = noop,\n setTouched = noop,\n}) => {\n const {\n progress,\n cancel,\n getRootProps,\n getInputProps,\n isDragActive,\n fileRejections,\n } = useFileUpload({\n disabled: isPreview,\n accept: getAcceptedFileTypes(allowedFileTypes),\n multiple: multipleFilesAllowed,\n maxFileSize,\n minFileSize,\n files,\n onChange,\n setError,\n setTouched,\n hasFileSizeLimit,\n });\n\n const maxFileSizeInBytes = maxFileSize * 1000000;\n\n const isUploadingFile = file =>\n isNotNil(progress[file.name]) && (progress[file.name] !== 100 || !file.url);\n\n const shouldShowError = error && isEmpty(fileRejections);\n\n return (\n <>\n <DropZone\n {...{\n allowedFileTypes,\n getInputProps,\n getRootProps,\n hasFileSizeLimit,\n isDragActive,\n maxFileSize,\n multipleFilesAllowed,\n }}\n />\n {!isEmpty(files) && (\n <ul className=\"neeto-molecules-file-upload__uploaded-list\">\n {files?.map((file, idx) => (\n <FilePreview\n {...{ file }}\n cancel={cancel(idx)}\n isUploading={isUploadingFile(file)}\n key={idx}\n progress={progress[file.name]}\n />\n ))}\n </ul>\n )}\n {isNotEmpty(fileRejections) && (\n <ErrorMessages {...{ fileRejections, maxFileSizeInBytes }} />\n )}\n {shouldShowError && (\n <p\n className=\"neeto-molecules-input__error-text\"\n data-cy=\"form-file-upload-input-error\"\n >\n <span className=\"neeto-molecules-input__error-text-style-handle\">\n {error}\n </span>\n </p>\n )}\n </>\n );\n};\n\nFileUpload.propTypes = {\n /**\n * Allowed file types for the file upload component.\n */\n allowedFileTypes: PropTypes.string,\n /**\n * Boolean to allow multiple files to be uploaded.\n */\n multipleFilesAllowed: PropTypes.bool,\n /**\n * Maximum file size allowed for the file upload component(MB).\n */\n maxFileSize: PropTypes.number,\n /**\n * Boolean to check if file size limit is enabled.\n */\n hasFileSizeLimit: PropTypes.bool,\n /**\n * Boolean to use component as a preview component.\n */\n isPreview: PropTypes.bool,\n /**\n * Minimum file size allowed for the file upload component(MB).\n */\n minFileSize: PropTypes.number,\n /**\n * Uploaded files.\n */\n files: PropTypes.arrayOf(\n PropTypes.shape({\n name: PropTypes.string,\n size: PropTypes.number,\n url: PropTypes.string,\n })\n ),\n /**\n * Function to be called on file upload, with the updated files array.\n */\n onChange: PropTypes.func,\n /**\n * Error message to be displayed.\n */\n error: PropTypes.string,\n /**\n * Function to set error message.\n */\n setError: PropTypes.func,\n};\n\nexport default FileUpload;\n","import { useField } from \"formik\";\n\nimport FileUpload from \"./FileUpload\";\n\nconst FormikFileUpload = ({ name, ...props }) => {\n const [_, { value, touched, error }, { setValue, setTouched, setError }] =\n useField(name);\n\n const errorToDisplay = touched && error ? error : \"\";\n\n return (\n <FileUpload\n {...{ ...props, setError, setTouched }}\n error={errorToDisplay}\n files={value}\n onChange={setValue}\n />\n );\n};\n\nexport default FormikFileUpload;\n"],"names":["FILE_MIME_TYPES","pdf","doc","docx","xls","xlsx","csv","txt","rtf","html","htm","md","zip","mp3","wma","mp4","mpg","mpeg","flv","avi","jpg","jpeg","png","gif","json","epub","aac","svg","ico","ERROR_CODES","FILE_TOO_LARGE","FILE_INVALID_TYPE","TOO_MANY_FILES","DIRECT_UPLOAD_URL","MAX_FILE_SIZE","globalProps","endUserUploadedFileSizeLimitInMb","DropZone","_ref","isDragActive","getRootProps","getInputProps","multipleFilesAllowed","maxFileSize","allowedFileTypes","hasFileSizeLimit","_useTranslation","useTranslation","t","shouldAllowSingleFileUpload","shouldShowFileSizeLimit","_jsx","_objectSpread","className","classnames","children","_jsxs","FileUpload","size","htmlFor","unit","types","getAcceptedFileTypes","accepted","split","forEach","type","mimeTypes","extension","concat","isNotPresent","mimeType","push","convertBytesToMb","bytes","toFixed","renderErrorMessage","errorObject","isMultiple","error","errors","file","code","fileName","name","maxSize","Math","round","fileType","path","extname","maxFiles","convertMbToBytes","mb","ErrorMessages","fileRejections","maxFileSizeInBytes","hasMultipleFileErrors","some","_ref2","_Fragment","filter","_ref3","map","index","Progress","percents","_ref$stroke","stroke","_ref$emptyStroke","emptyStroke","_ref$emptyStrokeOpaci","emptyStrokeOpacity","_ref$duration","duration","_ref$delay","delay","_ref$size","_ref$strokeWidth","strokeWidth","radius","circumference","ceil","PI","fillPercents","abs","transition","variants","hidden","strokeDashoffset","show","style","height","version","viewBox","width","xmlns","cx","cy","fill","r","strokeOpacity","position","transform","overflow","top","motion","circle","animate","initial","strokeDasharray","FilePreview","isUploading","cancel","progress","href","url","rel","target","FileGeneric","Check","onClick","Close","useFileUpload","disabled","accept","multiple","minFileSize","files","onChange","setError","setTouched","_useState","useState","_useState2","_slicedToArray","uploadProgress","setUploadProgress","_useState3","_useState4","uploadError","setUploadError","filesRef","useRef","current","useCallback","assoc","newFiles","_","idx","useEffect","onDropAccepted","_asyncToGenerator","_regeneratorRuntime","mark","_callee","acceptedFiles","initialFiles","updatedFiles","_updatedFiles","wrap","_callee$","_context","prev","next","_toConsumableArray","Promise","resolve","upload","DirectUpload","directUploadWillStoreFileWithXHR","xhr","addEventListener","event","percentComplete","loaded","total","undefined","create","blob","blob_url","filename","signedId","signed_id","isUploadCompleted","length","sent","uploadedFile","findBy","stop","_x","apply","arguments","onDropRejected","fileObject","_useDropzone","useDropzone","minSize","_ref$allowedFileTypes","_ref$multipleFilesAll","_ref$maxFileSize","_ref$hasFileSizeLimit","_ref$isPreview","isPreview","_ref$minFileSize","_ref$files","_ref$onChange","noop","_ref$setError","_ref$setTouched","_useFileUpload","isUploadingFile","isNotNil","shouldShowError","isEmpty","_createElement","key","isNotEmpty","FormikFileUpload","props","_objectWithoutProperties","_excluded","_useField","useField","_useField2","_useField2$","value","touched","_useField2$2","setValue","errorToDisplay"],"mappings":"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"}
1
+ {"version":3,"file":"FileUpload.js","sources":["../../src/components/FileUpload/constants.js","../../src/components/FileUpload/DropZone.jsx","../../src/components/FileUpload/utils.js","../../src/components/FileUpload/ErrorMessages.jsx","../../src/components/FileUpload/Progress.jsx","../../src/components/FileUpload/FilePreview.jsx","../../src/components/FileUpload/hooks/useFileUpload.js","../../src/components/FileUpload/FileUpload.jsx","../../src/components/FileUpload/FormikFileUpload.jsx"],"sourcesContent":["import { globalProps } from \"neetocommons/initializers\";\n\nexport const FILE_MIME_TYPES = {\n pdf: [\"application/pdf\"],\n doc: [\"application/msword\", \"application/wps-writer\"],\n docx: [\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\",\n ],\n xls: [\"application/vnd.ms-excel\"],\n xlsx: [\"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\"],\n csv: [\"text/csv\"],\n txt: [\"text/plain\"],\n rtf: [\"application/rtf\", \"text/rtf\"],\n html: [\"text/html\"],\n htm: [\"text/html\"],\n md: [\"text/markdown\", \"text/x-markdown\"],\n zip: [\"application/zip\"],\n mp3: [\"audio/mpeg\"],\n wma: [\"audio/x-ms-wma\", \"video/x-ms-asf\"],\n mp4: [\"video/mp4\"],\n mpg: [\"video/mpeg\"],\n mpeg: [\"video/mpeg\"],\n flv: [\"video/x-flv\"],\n avi: [\"video/x-msvideo\"],\n jpg: [\"image/jpeg\"],\n jpeg: [\"image/jpeg\"],\n png: [\"image/png\"],\n gif: [\"image/gif\"],\n json: [\"application/json\"],\n epub: [\"application/epub+zip\"],\n aac: [\"audio/aac\"],\n svg: [\"image/svg+xml\"],\n ico: [\"image/vnd.microsoft.icon\"],\n};\n\nexport const ERROR_CODES = {\n FILE_TOO_LARGE: \"file-too-large\",\n FILE_INVALID_TYPE: \"file-invalid-type\",\n TOO_MANY_FILES: \"too-many-files\",\n};\n\nexport const DIRECT_UPLOAD_URL = \"/api/direct_uploads\";\n\nexport const MAX_FILE_SIZE =\n globalProps?.endUserUploadedFileSizeLimitInMb || 10;\n","import classnames from \"classnames\";\nimport { FileUpload } from \"neetoicons\";\nimport { useTranslation } from \"react-i18next\";\n\nconst DropZone = ({\n isDragActive,\n getRootProps,\n getInputProps,\n multipleFilesAllowed,\n maxFileSize,\n allowedFileTypes,\n hasFileSizeLimit,\n}) => {\n const { t } = useTranslation();\n\n const shouldAllowSingleFileUpload = !multipleFilesAllowed;\n const shouldShowFileSizeLimit = hasFileSizeLimit && maxFileSize;\n\n return (\n <div\n {...getRootProps({\n className: classnames([\"neeto-molecules-file-upload__dropzone\"], {\n \"neeto-molecules-file-upload__dropzone--drag-active\": isDragActive,\n }),\n })}\n >\n <div\n className=\"neeto-molecules-file-upload__dropzone-inner\"\n data-cy=\"file-upload-body\"\n data-testid=\"file-upload-body\"\n >\n <FileUpload\n className=\"neeto-molecules-file-upload__upload-icon\"\n size=\"36\"\n />\n <div className=\"neeto-molecules-file-upload__dropzone-content\">\n <label\n className=\"neeto-molecules-file-upload__upload-label\"\n htmlFor=\"file-upload\"\n >\n <span className=\"neeto-molecules-file-upload__choose-file\">\n {t(\n \"neetoMolecules.fileUpload.filesDropzone.chooseFileOrDragHere\"\n )}\n </span>\n <input {...getInputProps()} data-cy=\"image-browse-button\" />\n </label>\n <div className=\"neeto-molecules-file-upload__dropzone-helper-block\">\n {shouldAllowSingleFileUpload && (\n <p\n className=\"neeto-molecules-file-upload__dropzone-helper-text\"\n data-cy=\"upload-only-one-file-text\"\n >\n {t(\"neetoMolecules.fileUpload.filesDropzone.oneFileAllowed\")}\n </p>\n )}\n {shouldShowFileSizeLimit && (\n <p\n className=\"neeto-molecules-file-upload__dropzone-helper-text\"\n data-cy=\"maximum-allowed-size-text\"\n >\n {t(\"neetoMolecules.fileUpload.filesDropzone.maxFileSize\", {\n size: maxFileSize,\n unit: \"MB\",\n })}\n </p>\n )}\n {allowedFileTypes && (\n <p\n className=\"neeto-molecules-file-upload__dropzone-helper-text\"\n data-cy=\"allowed-files-types-text\"\n >\n {t(\"neetoMolecules.fileUpload.filesDropzone.allowedFileTypes\", {\n types: allowedFileTypes,\n })}\n </p>\n )}\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default DropZone;\n","import path from \"path\";\n\nimport { t } from \"i18next\";\nimport { isNotPresent } from \"neetocist\";\n\nimport { FILE_MIME_TYPES, ERROR_CODES } from \"./constants\";\n\nexport const getAcceptedFileTypes = allowedFileTypes => {\n const accepted = {};\n\n allowedFileTypes.split(\", \").forEach(type => {\n const mimeTypes = FILE_MIME_TYPES[type] || [\"application/octet-stream\"];\n const extension = `.${type}`;\n\n if (isNotPresent(type) || isNotPresent(mimeTypes)) return;\n\n mimeTypes.forEach(mimeType => {\n if (accepted[mimeType]) accepted[mimeType].push(extension);\n else accepted[mimeType] = [extension];\n });\n });\n\n return accepted;\n};\n\nexport const convertBytesToMb = bytes =>\n ((bytes - 10) / (1028 * 1024)).toFixed(2);\n\nexport const renderErrorMessage = (errorObject, maxFileSize, isMultiple) => {\n const error = errorObject.errors[0];\n const file = errorObject.file;\n if (error) {\n const { code } = error;\n if (code === ERROR_CODES.FILE_TOO_LARGE) {\n return t(\"neetoMolecules.fileUpload.filesDropzone.errors.fileTooLarge\", {\n fileName: file.name,\n maxSize: `${Math.round(maxFileSize / 1048576)}MB`,\n });\n } else if (code === ERROR_CODES.FILE_INVALID_TYPE) {\n return t(\n \"neetoMolecules.fileUpload.filesDropzone.errors.fileInvalidType\",\n { fileType: path.extname(file.name) }\n );\n } else if (code === ERROR_CODES.TOO_MANY_FILES && !isMultiple) {\n return t(\"neetoMolecules.fileUpload.filesDropzone.errors.tooManyFiles\", {\n maxFiles: 1,\n });\n }\n }\n\n return t(\"neetoMolecules.fileUpload.filesDropzone.errors.defaultError\", {\n fileName: file.name,\n });\n};\n\nexport const convertMbToBytes = mb => mb * 1028 * 1024 + 10;\n","import { useTranslation } from \"react-i18next\";\n\nimport { ERROR_CODES } from \"./constants\";\nimport { renderErrorMessage } from \"./utils\";\n\nconst ErrorMessages = ({ fileRejections, maxFileSizeInBytes }) => {\n const { t } = useTranslation();\n\n const hasMultipleFileErrors = fileRejections.some(\n ({ errors }) => errors[0].code === ERROR_CODES.TOO_MANY_FILES\n );\n\n return (\n <>\n {hasMultipleFileErrors && (\n <p\n className=\"neeto-molecules-input__error-text\"\n data-cy=\"form-file-upload-input-error\"\n >\n <span className=\"neeto-molecules-input__error-text-style-handle\">\n {t(\"neetoMolecules.fileUpload.filesDropzone.errors.tooManyFiles\", {\n maxFiles: 1,\n })}\n </span>\n </p>\n )}\n {fileRejections\n .filter(({ errors }) => errors[0].code !== ERROR_CODES.TOO_MANY_FILES)\n .map((file, index) => (\n <p\n className=\"neeto-molecules-input__error-text\"\n data-cy=\"form-file-upload-input-error\"\n key={index}\n >\n <span className=\"neeto-molecules-input__error-text-style-handle\">\n {renderErrorMessage(file, maxFileSizeInBytes, false)}\n </span>\n </p>\n ))}\n </>\n );\n};\n\nexport default ErrorMessages;\n","import { motion } from \"framer-motion\";\n\nconst Progress = ({\n percents,\n stroke = \"currentColor\",\n emptyStroke = stroke,\n emptyStrokeOpacity = 0.25,\n duration = 0.5,\n delay = 0,\n size = 100,\n strokeWidth = 12,\n}) => {\n const radius = 45;\n const circumference = Math.ceil(2 * Math.PI * radius);\n const fillPercents = Math.abs(\n Math.ceil((circumference / 100) * (percents - 100))\n );\n\n const transition = { duration, delay };\n\n const variants = {\n hidden: { strokeDashoffset: circumference, transition },\n show: { strokeDashoffset: fillPercents, transition },\n };\n\n return (\n <div className=\"neeto-molecules-progress__circle\">\n <div\n className=\"neeto-molecules-progress__circle-wrapper\"\n style={{ height: size }}\n >\n <svg\n height={size}\n version=\"1.1\"\n viewBox=\"0 0 100 100\"\n width={size}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle\n {...{ strokeWidth }}\n className=\"circle\"\n cx=\"50\"\n cy=\"50\"\n fill=\"transparent\"\n r={radius}\n stroke={emptyStroke}\n strokeOpacity={emptyStrokeOpacity}\n />\n </svg>\n <svg\n height={size}\n viewBox=\"0 0 100 100\"\n width={size}\n style={{\n position: \"absolute\",\n transform: \"rotate(-90deg)\",\n overflow: \"visible\",\n top: 0,\n }}\n >\n <motion.circle\n {...{ stroke, strokeWidth, variants }}\n animate=\"show\"\n cx=\"50\"\n cy=\"50\"\n fill=\"transparent\"\n initial=\"hidden\"\n r={radius}\n strokeDasharray={circumference}\n strokeDashoffset={fillPercents}\n />\n </svg>\n </div>\n </div>\n );\n};\n\nexport default Progress;\n","import classnames from \"classnames\";\nimport { FileGeneric, Check, Close } from \"neetoicons\";\n\nimport Progress from \"./Progress\";\nimport { convertBytesToMb } from \"./utils\";\n\nconst FilePreview = ({ file, isUploading, cancel, progress }) => (\n <li\n className=\"neeto-molecules-file-upload__uploaded-list-item\"\n key={file.url}\n >\n <div className=\"neeto-molecules-file-upload__file-preview\">\n <a\n className={classnames({ \"neeto-molecules-invisible\": isUploading })}\n href={file.url}\n rel=\"noreferrer\"\n target=\"_blank\"\n >\n <FileGeneric />\n </a>\n {isUploading && (\n <div className=\"neeto-molecules-progress\">\n <Progress percents={progress || 0} size={20} />\n </div>\n )}\n </div>\n <div className=\"neeto-molecules-file-upload__file-info\">\n <span\n className=\"neeto-molecules-file-upload__file-info-name\"\n data-cy=\"file-name\"\n >\n {file.name}\n </span>\n <span className=\"neeto-molecules-file-upload__file-info-size\">\n {file.size ? `${convertBytesToMb(file.size)} MB` : \"\"}\n </span>\n </div>\n <div className=\"neeto-molecules-file-upload__actions\">\n <span\n className={classnames(\n \"neeto-molecules-file-upload__success-indicator\",\n { \"neeto-molecules-file-upload__success-indicator--active\": file.url }\n )}\n >\n {file.url && <Check data-cy=\"file-upload-success\" />}\n </span>\n <button\n className=\"neeto-molecules-file-upload__button--red neeto-molecules-file-upload__remove-button\"\n type=\"button\"\n onClick={cancel}\n >\n <Close />\n </button>\n </div>\n </li>\n);\n\nexport default FilePreview;\n","import { useState, useCallback, useEffect, useRef } from \"react\";\n\nimport { DirectUpload } from \"@rails/activestorage\";\nimport { findBy } from \"neetocist\";\nimport { assoc } from \"ramda\";\nimport { useDropzone } from \"react-dropzone\";\n\nimport { DIRECT_UPLOAD_URL } from \"../constants\";\nimport { convertMbToBytes, renderErrorMessage } from \"../utils\";\n\nconst useFileUpload = ({\n disabled,\n accept,\n multiple,\n maxFileSize,\n minFileSize,\n files,\n onChange,\n setError,\n setTouched,\n hasFileSizeLimit,\n}) => {\n const [uploadProgress, setUploadProgress] = useState({});\n const [uploadError, setUploadError] = useState(\"\");\n\n const filesRef = useRef(files);\n filesRef.current = files;\n\n const cancel = useCallback(\n index => () => {\n setUploadProgress(assoc(files[index].name, null));\n const newFiles = files?.filter((_, idx) => idx !== index);\n onChange(newFiles);\n },\n [files]\n );\n\n useEffect(() => {\n uploadError && setError(uploadError);\n }, [uploadError]);\n\n const onDropAccepted = async acceptedFiles => {\n setTouched(false);\n setUploadError(\"\");\n const initialFiles = acceptedFiles.map(file => ({\n name: file.name,\n size: file.size,\n }));\n\n const updatedFiles = multiple\n ? [...(files || []), ...initialFiles]\n : initialFiles;\n onChange(updatedFiles);\n const newFiles = await new Promise(resolve => {\n const files = [];\n\n acceptedFiles.forEach(file => {\n setUploadProgress(assoc(file.name, 0));\n\n const upload = new DirectUpload(file, DIRECT_UPLOAD_URL, {\n directUploadWillStoreFileWithXHR: xhr => {\n xhr.upload.addEventListener(\"progress\", event => {\n const percentComplete = Math.round(\n (event.loaded / event.total) * 100\n );\n setUploadProgress(assoc(file.name, percentComplete));\n });\n\n xhr.upload.addEventListener(\"load\", () => {\n setUploadProgress(assoc(file.name, undefined));\n });\n },\n });\n\n upload.create((error, blob) => {\n if (error) {\n return setUploadError(error);\n }\n\n files.push({\n url: blob.blob_url,\n name: blob.filename,\n signedId: blob.signed_id,\n });\n\n const isUploadCompleted = multiple\n ? acceptedFiles.length === files.length\n : files.length === 1;\n\n if (isUploadCompleted) {\n return resolve(files);\n }\n\n return \"\";\n });\n });\n\n return files;\n });\n\n if (multiple) {\n const updatedFiles = filesRef.current.map(file => {\n const uploadedFile = findBy({ name: file.name }, newFiles);\n\n return { ...file, ...uploadedFile };\n });\n onChange(updatedFiles);\n } else {\n onChange(newFiles);\n }\n };\n\n const onDropRejected = fileRejections => {\n fileRejections.forEach(fileObject => {\n setTouched(true);\n if (fileObject.errors[0].code === \"too-many-files\") {\n setUploadError(renderErrorMessage(fileObject, maxFileSize, multiple));\n } else {\n setUploadError(renderErrorMessage(fileObject, maxFileSize, multiple));\n }\n });\n };\n\n const { getRootProps, getInputProps, isDragActive, fileRejections } =\n useDropzone({\n disabled,\n accept,\n multiple,\n minSize: convertMbToBytes(minFileSize),\n onDropAccepted,\n onDropRejected,\n ...(maxFileSize &&\n hasFileSizeLimit && { maxSize: convertMbToBytes(maxFileSize) }),\n });\n\n return {\n progress: uploadProgress,\n cancel,\n getRootProps,\n getInputProps,\n isDragActive,\n fileRejections,\n };\n};\n\nexport default useFileUpload;\n","import { isNotEmpty, noop } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { isEmpty, isNotNil } from \"ramda\";\n\nimport { MAX_FILE_SIZE } from \"./constants\";\nimport DropZone from \"./DropZone\";\nimport ErrorMessages from \"./ErrorMessages\";\nimport \"./file-upload.scss\";\nimport FilePreview from \"./FilePreview\";\nimport useFileUpload from \"./hooks/useFileUpload\";\nimport { getAcceptedFileTypes } from \"./utils\";\n\nconst FileUpload = ({\n allowedFileTypes = \"\",\n multipleFilesAllowed = true,\n maxFileSize = MAX_FILE_SIZE,\n hasFileSizeLimit = true,\n isPreview = false,\n minFileSize = 0,\n files = [],\n onChange = noop,\n error,\n setError = noop,\n setTouched = noop,\n}) => {\n const {\n progress,\n cancel,\n getRootProps,\n getInputProps,\n isDragActive,\n fileRejections,\n } = useFileUpload({\n disabled: isPreview,\n accept: getAcceptedFileTypes(allowedFileTypes),\n multiple: multipleFilesAllowed,\n maxFileSize,\n minFileSize,\n files,\n onChange,\n setError,\n setTouched,\n hasFileSizeLimit,\n });\n\n const maxFileSizeInBytes = maxFileSize * 1000000;\n\n const isUploadingFile = file =>\n isNotNil(progress[file.name]) && (progress[file.name] !== 100 || !file.url);\n\n const shouldShowError = error && isEmpty(fileRejections);\n\n return (\n <>\n <DropZone\n {...{\n allowedFileTypes,\n getInputProps,\n getRootProps,\n hasFileSizeLimit,\n isDragActive,\n maxFileSize,\n multipleFilesAllowed,\n }}\n />\n {!isEmpty(files) && (\n <ul className=\"neeto-molecules-file-upload__uploaded-list\">\n {files?.map((file, idx) => (\n <FilePreview\n {...{ file }}\n cancel={cancel(idx)}\n isUploading={isUploadingFile(file)}\n key={idx}\n progress={progress[file.name]}\n />\n ))}\n </ul>\n )}\n {isNotEmpty(fileRejections) && (\n <ErrorMessages {...{ fileRejections, maxFileSizeInBytes }} />\n )}\n {shouldShowError && (\n <p\n className=\"neeto-molecules-input__error-text\"\n data-cy=\"form-file-upload-input-error\"\n >\n <span className=\"neeto-molecules-input__error-text-style-handle\">\n {error}\n </span>\n </p>\n )}\n </>\n );\n};\n\nFileUpload.propTypes = {\n /**\n * Allowed file types for the file upload component.\n */\n allowedFileTypes: PropTypes.string,\n /**\n * Boolean to allow multiple files to be uploaded.\n */\n multipleFilesAllowed: PropTypes.bool,\n /**\n * Maximum file size allowed for the file upload component(MB).\n */\n maxFileSize: PropTypes.number,\n /**\n * Boolean to check if file size limit is enabled.\n */\n hasFileSizeLimit: PropTypes.bool,\n /**\n * Boolean to use component as a preview component.\n */\n isPreview: PropTypes.bool,\n /**\n * Minimum file size allowed for the file upload component(MB).\n */\n minFileSize: PropTypes.number,\n /**\n * Uploaded files.\n */\n files: PropTypes.arrayOf(\n PropTypes.shape({\n name: PropTypes.string,\n size: PropTypes.number,\n url: PropTypes.string,\n })\n ),\n /**\n * Function to be called on file upload, with the updated files array.\n */\n onChange: PropTypes.func,\n /**\n * Error message to be displayed.\n */\n error: PropTypes.string,\n /**\n * Function to set error message.\n */\n setError: PropTypes.func,\n};\n\nexport default FileUpload;\n","import { useField } from \"formik\";\n\nimport FileUpload from \"./FileUpload\";\n\nconst FormikFileUpload = ({ name, ...props }) => {\n const [_, { value, touched, error }, { setValue, setTouched, setError }] =\n useField(name);\n\n const errorToDisplay = touched && error ? error : \"\";\n\n return (\n <FileUpload\n {...{ ...props, setError, setTouched }}\n error={errorToDisplay}\n files={value}\n onChange={setValue}\n />\n );\n};\n\nexport default FormikFileUpload;\n"],"names":["FILE_MIME_TYPES","pdf","doc","docx","xls","xlsx","csv","txt","rtf","html","htm","md","zip","mp3","wma","mp4","mpg","mpeg","flv","avi","jpg","jpeg","png","gif","json","epub","aac","svg","ico","ERROR_CODES","FILE_TOO_LARGE","FILE_INVALID_TYPE","TOO_MANY_FILES","DIRECT_UPLOAD_URL","MAX_FILE_SIZE","globalProps","endUserUploadedFileSizeLimitInMb","DropZone","_ref","isDragActive","getRootProps","getInputProps","multipleFilesAllowed","maxFileSize","allowedFileTypes","hasFileSizeLimit","_useTranslation","useTranslation","t","shouldAllowSingleFileUpload","shouldShowFileSizeLimit","_jsx","_objectSpread","className","classnames","children","_jsxs","FileUpload","size","htmlFor","unit","types","getAcceptedFileTypes","accepted","split","forEach","type","mimeTypes","extension","concat","isNotPresent","mimeType","push","convertBytesToMb","bytes","toFixed","renderErrorMessage","errorObject","isMultiple","error","errors","file","code","fileName","name","maxSize","Math","round","fileType","path","extname","maxFiles","convertMbToBytes","mb","ErrorMessages","fileRejections","maxFileSizeInBytes","hasMultipleFileErrors","some","_ref2","_Fragment","filter","_ref3","map","index","Progress","percents","_ref$stroke","stroke","_ref$emptyStroke","emptyStroke","_ref$emptyStrokeOpaci","emptyStrokeOpacity","_ref$duration","duration","_ref$delay","delay","_ref$size","_ref$strokeWidth","strokeWidth","radius","circumference","ceil","PI","fillPercents","abs","transition","variants","hidden","strokeDashoffset","show","style","height","version","viewBox","width","xmlns","cx","cy","fill","r","strokeOpacity","position","transform","overflow","top","motion","circle","animate","initial","strokeDasharray","FilePreview","isUploading","cancel","progress","href","url","rel","target","FileGeneric","Check","onClick","Close","e","Symbol","n","iterator","o","toStringTag","i","c","prototype","Generator","u","Object","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","length","l","TypeError","call","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","_regenerator","w","m","defineProperty","_regeneratorDefine","_invoke","enumerable","configurable","writable","ownKeys","keys","getOwnPropertySymbols","getOwnPropertyDescriptor","apply","arguments","_defineProperty","getOwnPropertyDescriptors","defineProperties","useFileUpload","disabled","accept","multiple","minFileSize","files","onChange","setError","setTouched","_useState","useState","_useState2","_slicedToArray","uploadProgress","setUploadProgress","_useState3","_useState4","uploadError","setUploadError","filesRef","useRef","current","useCallback","assoc","newFiles","_","idx","useEffect","onDropAccepted","_asyncToGenerator","_callee","acceptedFiles","initialFiles","updatedFiles","_updatedFiles","_context","_toConsumableArray","Promise","resolve","upload","DirectUpload","directUploadWillStoreFileWithXHR","xhr","addEventListener","event","percentComplete","loaded","total","undefined","blob","blob_url","filename","signedId","signed_id","isUploadCompleted","uploadedFile","findBy","_x","onDropRejected","fileObject","_useDropzone","useDropzone","minSize","_ref$allowedFileTypes","_ref$multipleFilesAll","_ref$maxFileSize","_ref$hasFileSizeLimit","_ref$isPreview","isPreview","_ref$minFileSize","_ref$files","_ref$onChange","noop","_ref$setError","_ref$setTouched","_useFileUpload","isUploadingFile","isNotNil","shouldShowError","isEmpty","_createElement","key","isNotEmpty","FormikFileUpload","props","_objectWithoutProperties","_excluded","_useField","useField","_useField2","_useField2$","touched","_useField2$2","setValue","errorToDisplay"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAEO,IAAMA,eAAe,GAAG;EAC7BC,GAAG,EAAE,CAAC,iBAAiB,CAAC;AACxBC,EAAAA,GAAG,EAAE,CAAC,oBAAoB,EAAE,wBAAwB,CAAC;EACrDC,IAAI,EAAE,CACJ,yEAAyE,CAC1E;EACDC,GAAG,EAAE,CAAC,0BAA0B,CAAC;EACjCC,IAAI,EAAE,CAAC,mEAAmE,CAAC;EAC3EC,GAAG,EAAE,CAAC,UAAU,CAAC;EACjBC,GAAG,EAAE,CAAC,YAAY,CAAC;AACnBC,EAAAA,GAAG,EAAE,CAAC,iBAAiB,EAAE,UAAU,CAAC;EACpCC,IAAI,EAAE,CAAC,WAAW,CAAC;EACnBC,GAAG,EAAE,CAAC,WAAW,CAAC;AAClBC,EAAAA,EAAE,EAAE,CAAC,eAAe,EAAE,iBAAiB,CAAC;EACxCC,GAAG,EAAE,CAAC,iBAAiB,CAAC;EACxBC,GAAG,EAAE,CAAC,YAAY,CAAC;AACnBC,EAAAA,GAAG,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;EACzCC,GAAG,EAAE,CAAC,WAAW,CAAC;EAClBC,GAAG,EAAE,CAAC,YAAY,CAAC;EACnBC,IAAI,EAAE,CAAC,YAAY,CAAC;EACpBC,GAAG,EAAE,CAAC,aAAa,CAAC;EACpBC,GAAG,EAAE,CAAC,iBAAiB,CAAC;EACxBC,GAAG,EAAE,CAAC,YAAY,CAAC;EACnBC,IAAI,EAAE,CAAC,YAAY,CAAC;EACpBC,GAAG,EAAE,CAAC,WAAW,CAAC;EAClBC,GAAG,EAAE,CAAC,WAAW,CAAC;EAClBC,IAAI,EAAE,CAAC,kBAAkB,CAAC;EAC1BC,IAAI,EAAE,CAAC,sBAAsB,CAAC;EAC9BC,GAAG,EAAE,CAAC,WAAW,CAAC;EAClBC,GAAG,EAAE,CAAC,eAAe,CAAC;EACtBC,GAAG,EAAE,CAAC,0BAA0B;AAClC,CAAC;AAEM,IAAMC,WAAW,GAAG;AACzBC,EAAAA,cAAc,EAAE,gBAAgB;AAChCC,EAAAA,iBAAiB,EAAE,mBAAmB;AACtCC,EAAAA,cAAc,EAAE;AAClB,CAAC;AAEM,IAAMC,iBAAiB,GAAG,qBAAqB;AAE/C,IAAMC,aAAa,GACxB,CAAAC,wBAAW,KAAA,IAAA,IAAXA,wBAAW,KAAA,MAAA,GAAA,MAAA,GAAXA,wBAAW,CAAEC,gCAAgC,KAAI,EAAE;;;;ACxCrD,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAAC,IAAA,EAQR;AAAA,EAAA,IAPJC,YAAY,GAAAD,IAAA,CAAZC,YAAY;IACZC,YAAY,GAAAF,IAAA,CAAZE,YAAY;IACZC,aAAa,GAAAH,IAAA,CAAbG,aAAa;IACbC,oBAAoB,GAAAJ,IAAA,CAApBI,oBAAoB;IACpBC,WAAW,GAAAL,IAAA,CAAXK,WAAW;IACXC,gBAAgB,GAAAN,IAAA,CAAhBM,gBAAgB;IAChBC,gBAAgB,GAAAP,IAAA,CAAhBO,gBAAgB;AAEhB,EAAA,IAAAC,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;EAET,IAAMC,2BAA2B,GAAG,CAACP,oBAAoB;AACzD,EAAA,IAAMQ,uBAAuB,GAAGL,gBAAgB,IAAIF,WAAW;AAE/D,EAAA,oBACEQ,cAAA,CAAA,KAAA,EAAAC,eAAA,CAAAA,eAAA,CAAA,EAAA,EACMZ,YAAY,CAAC;AACfa,IAAAA,SAAS,EAAEC,UAAU,CAAC,CAAC,uCAAuC,CAAC,EAAE;AAC/D,MAAA,oDAAoD,EAAEf;KACvD;AACH,GAAC,CAAC,CAAA,EAAA,EAAA,EAAA;AAAAgB,IAAAA,QAAA,eAEFC,eAAA,CAAA,KAAA,EAAA;AACEH,MAAAA,SAAS,EAAC,6CAA6C;AACvD,MAAA,SAAA,EAAQ,kBAAkB;AAC1B,MAAA,aAAA,EAAY,kBAAkB;MAAAE,QAAA,EAAA,cAE9BJ,cAAA,CAACM,YAAU,EAAA;AACTJ,QAAAA,SAAS,EAAC,0CAA0C;AACpDK,QAAAA,IAAI,EAAC;OACN,CAAC,eACFF,eAAA,CAAA,KAAA,EAAA;AAAKH,QAAAA,SAAS,EAAC,+CAA+C;AAAAE,QAAAA,QAAA,gBAC5DC,eAAA,CAAA,OAAA,EAAA;AACEH,UAAAA,SAAS,EAAC,2CAA2C;AACrDM,UAAAA,OAAO,EAAC,aAAa;AAAAJ,UAAAA,QAAA,gBAErBJ,cAAA,CAAA,MAAA,EAAA;AAAME,YAAAA,SAAS,EAAC,0CAA0C;YAAAE,QAAA,EACvDP,CAAC,CACA,8DACF;WACI,CAAC,eACPG,cAAA,CAAA,OAAA,EAAAC,eAAA,CAAAA,eAAA,CAAA,EAAA,EAAWX,aAAa,EAAE,CAAA,EAAA,EAAA,EAAA;YAAE,SAAA,EAAQ;AAAqB,WAAA,CAAE,CAAC;SACvD,CAAC,eACRe,eAAA,CAAA,KAAA,EAAA;AAAKH,UAAAA,SAAS,EAAC,oDAAoD;UAAAE,QAAA,EAAA,CAChEN,2BAA2B,iBAC1BE,cAAA,CAAA,GAAA,EAAA;AACEE,YAAAA,SAAS,EAAC,mDAAmD;AAC7D,YAAA,SAAA,EAAQ,2BAA2B;YAAAE,QAAA,EAElCP,CAAC,CAAC,wDAAwD;AAAC,WAC3D,CACJ,EACAE,uBAAuB,iBACtBC,cAAA,CAAA,GAAA,EAAA;AACEE,YAAAA,SAAS,EAAC,mDAAmD;AAC7D,YAAA,SAAA,EAAQ,2BAA2B;AAAAE,YAAAA,QAAA,EAElCP,CAAC,CAAC,qDAAqD,EAAE;AACxDU,cAAAA,IAAI,EAAEf,WAAW;AACjBiB,cAAAA,IAAI,EAAE;aACP;AAAC,WACD,CACJ,EACAhB,gBAAgB,iBACfO,cAAA,CAAA,GAAA,EAAA;AACEE,YAAAA,SAAS,EAAC,mDAAmD;AAC7D,YAAA,SAAA,EAAQ,0BAA0B;AAAAE,YAAAA,QAAA,EAEjCP,CAAC,CAAC,0DAA0D,EAAE;AAC7Da,cAAAA,KAAK,EAAEjB;aACR;AAAC,WACD,CACJ;AAAA,SACE,CAAC;AAAA,OACH,CAAC;KACH;AAAC,GAAA,CACH,CAAC;AAEV,CAAC;;AC3EM,IAAMkB,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAGlB,gBAAgB,EAAI;EACtD,IAAMmB,QAAQ,GAAG,EAAE;EAEnBnB,gBAAgB,CAACoB,KAAK,CAAC,IAAI,CAAC,CAACC,OAAO,CAAC,UAAAC,IAAI,EAAI;IAC3C,IAAMC,SAAS,GAAGnE,eAAe,CAACkE,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC;AACvE,IAAA,IAAME,SAAS,GAAA,GAAA,CAAAC,MAAA,CAAOH,IAAI,CAAE;IAE5B,IAAII,sBAAY,CAACJ,IAAI,CAAC,IAAII,sBAAY,CAACH,SAAS,CAAC,EAAE;AAEnDA,IAAAA,SAAS,CAACF,OAAO,CAAC,UAAAM,QAAQ,EAAI;MAC5B,IAAIR,QAAQ,CAACQ,QAAQ,CAAC,EAAER,QAAQ,CAACQ,QAAQ,CAAC,CAACC,IAAI,CAACJ,SAAS,CAAC,CAAC,KACtDL,QAAQ,CAACQ,QAAQ,CAAC,GAAG,CAACH,SAAS,CAAC;AACvC,IAAA,CAAC,CAAC;AACJ,EAAA,CAAC,CAAC;AAEF,EAAA,OAAOL,QAAQ;AACjB,CAAC;AAEM,IAAMU,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGC,KAAK,EAAA;AAAA,EAAA,OACnC,CAAC,CAACA,KAAK,GAAG,EAAE,KAAK,IAAI,GAAG,IAAI,CAAC,EAAEC,OAAO,CAAC,CAAC,CAAC;AAAA,CAAA;AAEpC,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIC,WAAW,EAAElC,WAAW,EAAEmC,UAAU,EAAK;AAC1E,EAAA,IAAMC,KAAK,GAAGF,WAAW,CAACG,MAAM,CAAC,CAAC,CAAC;AACnC,EAAA,IAAMC,IAAI,GAAGJ,WAAW,CAACI,IAAI;AAC7B,EAAA,IAAIF,KAAK,EAAE;AACT,IAAA,IAAQG,IAAI,GAAKH,KAAK,CAAdG,IAAI;AACZ,IAAA,IAAIA,IAAI,KAAKrD,WAAW,CAACC,cAAc,EAAE;MACvC,OAAOkB,SAAC,CAAC,6DAA6D,EAAE;QACtEmC,QAAQ,EAAEF,IAAI,CAACG,IAAI;QACnBC,OAAO,EAAA,EAAA,CAAAhB,MAAA,CAAKiB,IAAI,CAACC,KAAK,CAAC5C,WAAW,GAAG,OAAO,CAAC,EAAA,IAAA;AAC/C,OAAC,CAAC;AACJ,IAAA,CAAC,MAAM,IAAIuC,IAAI,KAAKrD,WAAW,CAACE,iBAAiB,EAAE;MACjD,OAAOiB,SAAC,CACN,gEAAgE,EAChE;AAAEwC,QAAAA,QAAQ,EAAEC,IAAI,CAACC,OAAO,CAACT,IAAI,CAACG,IAAI;AAAE,OACtC,CAAC;IACH,CAAC,MAAM,IAAIF,IAAI,KAAKrD,WAAW,CAACG,cAAc,IAAI,CAAC8C,UAAU,EAAE;MAC7D,OAAO9B,SAAC,CAAC,6DAA6D,EAAE;AACtE2C,QAAAA,QAAQ,EAAE;AACZ,OAAC,CAAC;AACJ,IAAA;AACF,EAAA;EAEA,OAAO3C,SAAC,CAAC,6DAA6D,EAAE;IACtEmC,QAAQ,EAAEF,IAAI,CAACG;AACjB,GAAC,CAAC;AACJ,CAAC;AAEM,IAAMQ,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGC,EAAE,EAAA;AAAA,EAAA,OAAIA,EAAE,GAAG,IAAI,GAAG,IAAI,GAAG,EAAE;AAAA,CAAA;;AClD3D,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAAxD,IAAA,EAA+C;AAAA,EAAA,IAAzCyD,cAAc,GAAAzD,IAAA,CAAdyD,cAAc;IAAEC,kBAAkB,GAAA1D,IAAA,CAAlB0D,kBAAkB;AACzD,EAAA,IAAAlD,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAMiD,qBAAqB,GAAGF,cAAc,CAACG,IAAI,CAC/C,UAAAC,KAAA,EAAA;AAAA,IAAA,IAAGnB,MAAM,GAAAmB,KAAA,CAANnB,MAAM;IAAA,OAAOA,MAAM,CAAC,CAAC,CAAC,CAACE,IAAI,KAAKrD,WAAW,CAACG,cAAc;AAAA,EAAA,CAC/D,CAAC;EAED,oBACEwB,eAAA,CAAA4C,mBAAA,EAAA;IAAA7C,QAAA,EAAA,CACG0C,qBAAqB,iBACpB9C,cAAA,CAAA,GAAA,EAAA;AACEE,MAAAA,SAAS,EAAC,mCAAmC;AAC7C,MAAA,SAAA,EAAQ,8BAA8B;AAAAE,MAAAA,QAAA,eAEtCJ,cAAA,CAAA,MAAA,EAAA;AAAME,QAAAA,SAAS,EAAC,gDAAgD;AAAAE,QAAAA,QAAA,EAC7DP,CAAC,CAAC,6DAA6D,EAAE;AAChE2C,UAAAA,QAAQ,EAAE;SACX;OACG;AAAC,KACN,CACJ,EACAI,cAAc,CACZM,MAAM,CAAC,UAAAC,KAAA,EAAA;AAAA,MAAA,IAAGtB,MAAM,GAAAsB,KAAA,CAANtB,MAAM;MAAA,OAAOA,MAAM,CAAC,CAAC,CAAC,CAACE,IAAI,KAAKrD,WAAW,CAACG,cAAc;AAAA,IAAA,CAAA,CAAC,CACrEuE,GAAG,CAAC,UAACtB,IAAI,EAAEuB,KAAK,EAAA;AAAA,MAAA,oBACfrD,cAAA,CAAA,GAAA,EAAA;AACEE,QAAAA,SAAS,EAAC,mCAAmC;AAC7C,QAAA,SAAA,EAAQ,8BAA8B;AAAAE,QAAAA,QAAA,eAGtCJ,cAAA,CAAA,MAAA,EAAA;AAAME,UAAAA,SAAS,EAAC,gDAAgD;AAAAE,UAAAA,QAAA,EAC7DqB,kBAAkB,CAACK,IAAI,EAAEe,kBAAkB,EAAE,KAAK;SAC/C;AAAC,OAAA,EAJFQ,KAKJ,CAAC;AAAA,IAAA,CACL,CAAC;AAAA,GACJ,CAAC;AAEP,CAAC;;;;;ACvCD,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAAnE,IAAA,EASR;AAAA,EAAA,IARJoE,QAAQ,GAAApE,IAAA,CAARoE,QAAQ;IAAAC,WAAA,GAAArE,IAAA,CACRsE,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAA,MAAA,GAAG,cAAc,GAAAA,WAAA;IAAAE,gBAAA,GAAAvE,IAAA,CACvBwE,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAA,MAAA,GAAGD,MAAM,GAAAC,gBAAA;IAAAE,qBAAA,GAAAzE,IAAA,CACpB0E,kBAAkB;AAAlBA,IAAAA,kBAAkB,GAAAD,qBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,qBAAA;IAAAE,aAAA,GAAA3E,IAAA,CACzB4E,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAA,MAAA,GAAG,GAAG,GAAAA,aAAA;IAAAE,UAAA,GAAA7E,IAAA,CACd8E,KAAK;AAALA,IAAAA,KAAK,GAAAD,UAAA,KAAA,MAAA,GAAG,CAAC,GAAAA,UAAA;IAAAE,SAAA,GAAA/E,IAAA,CACToB,IAAI;AAAJA,IAAAA,IAAI,GAAA2D,SAAA,KAAA,MAAA,GAAG,GAAG,GAAAA,SAAA;IAAAC,gBAAA,GAAAhF,IAAA,CACViF,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,gBAAA;EAEhB,IAAME,MAAM,GAAG,EAAE;AACjB,EAAA,IAAMC,aAAa,GAAGnC,IAAI,CAACoC,IAAI,CAAC,CAAC,GAAGpC,IAAI,CAACqC,EAAE,GAAGH,MAAM,CAAC;AACrD,EAAA,IAAMI,YAAY,GAAGtC,IAAI,CAACuC,GAAG,CAC3BvC,IAAI,CAACoC,IAAI,CAAED,aAAa,GAAG,GAAG,IAAKf,QAAQ,GAAG,GAAG,CAAC,CACpD,CAAC;AAED,EAAA,IAAMoB,UAAU,GAAG;AAAEZ,IAAAA,QAAQ,EAARA,QAAQ;AAAEE,IAAAA,KAAK,EAALA;GAAO;AAEtC,EAAA,IAAMW,QAAQ,GAAG;AACfC,IAAAA,MAAM,EAAE;AAAEC,MAAAA,gBAAgB,EAAER,aAAa;AAAEK,MAAAA,UAAU,EAAVA;KAAY;AACvDI,IAAAA,IAAI,EAAE;AAAED,MAAAA,gBAAgB,EAAEL,YAAY;AAAEE,MAAAA,UAAU,EAAVA;AAAW;GACpD;AAED,EAAA,oBACE3E,cAAA,CAAA,KAAA,EAAA;AAAKE,IAAAA,SAAS,EAAC,kCAAkC;AAAAE,IAAAA,QAAA,eAC/CC,eAAA,CAAA,KAAA,EAAA;AACEH,MAAAA,SAAS,EAAC,0CAA0C;AACpD8E,MAAAA,KAAK,EAAE;AAAEC,QAAAA,MAAM,EAAE1E;OAAO;AAAAH,MAAAA,QAAA,gBAExBJ,cAAA,CAAA,KAAA,EAAA;AACEiF,QAAAA,MAAM,EAAE1E,IAAK;AACb2E,QAAAA,OAAO,EAAC,KAAK;AACbC,QAAAA,OAAO,EAAC,aAAa;AACrBC,QAAAA,KAAK,EAAE7E,IAAK;AACZ8E,QAAAA,KAAK,EAAC,4BAA4B;AAAAjF,QAAAA,QAAA,eAElCJ,cAAA,CAAA,QAAA,EAAA;AACQoE,UAAAA,WAAW,EAAXA,WAAW;AACjBlE,UAAAA,SAAS,EAAC,QAAQ;AAClBoF,UAAAA,EAAE,EAAC,IAAI;AACPC,UAAAA,EAAE,EAAC,IAAI;AACPC,UAAAA,IAAI,EAAC,aAAa;AAClBC,UAAAA,CAAC,EAAEpB,MAAO;AACVZ,UAAAA,MAAM,EAAEE,WAAY;AACpB+B,UAAAA,aAAa,EAAE7B;SAChB;OACE,CAAC,eACN7D,cAAA,CAAA,KAAA,EAAA;AACEiF,QAAAA,MAAM,EAAE1E,IAAK;AACb4E,QAAAA,OAAO,EAAC,aAAa;AACrBC,QAAAA,KAAK,EAAE7E,IAAK;AACZyE,QAAAA,KAAK,EAAE;AACLW,UAAAA,QAAQ,EAAE,UAAU;AACpBC,UAAAA,SAAS,EAAE,gBAAgB;AAC3BC,UAAAA,QAAQ,EAAE,SAAS;AACnBC,UAAAA,GAAG,EAAE;SACL;AAAA1F,QAAAA,QAAA,eAEFJ,cAAA,CAAC+F,mBAAM,CAACC,MAAM,EAAA;AACNvC,UAAAA,MAAM,EAANA,MAAM;AAAEW,UAAAA,WAAW,EAAXA,WAAW;AAAEQ,UAAAA,QAAQ,EAARA,QAAQ;AACnCqB,UAAAA,OAAO,EAAC,MAAM;AACdX,UAAAA,EAAE,EAAC,IAAI;AACPC,UAAAA,EAAE,EAAC,IAAI;AACPC,UAAAA,IAAI,EAAC,aAAa;AAClBU,UAAAA,OAAO,EAAC,QAAQ;AAChBT,UAAAA,CAAC,EAAEpB,MAAO;AACV8B,UAAAA,eAAe,EAAE7B,aAAc;AAC/BQ,UAAAA,gBAAgB,EAAEL;SACnB;AAAC,OACC,CAAC;KACH;AAAC,GACH,CAAC;AAEV,CAAC;;ACrED,IAAM2B,WAAW,GAAG,SAAdA,WAAWA,CAAAjH,IAAA,EAAA;AAAA,EAAA,IAAM2C,IAAI,GAAA3C,IAAA,CAAJ2C,IAAI;IAAEuE,WAAW,GAAAlH,IAAA,CAAXkH,WAAW;IAAEC,MAAM,GAAAnH,IAAA,CAANmH,MAAM;IAAEC,QAAQ,GAAApH,IAAA,CAARoH,QAAQ;AAAA,EAAA,oBACxDlG,eAAA,CAAA,IAAA,EAAA;AACEH,IAAAA,SAAS,EAAC,iDAAiD;AAAAE,IAAAA,QAAA,gBAG3DC,eAAA,CAAA,KAAA,EAAA;AAAKH,MAAAA,SAAS,EAAC,2CAA2C;AAAAE,MAAAA,QAAA,gBACxDJ,cAAA,CAAA,GAAA,EAAA;QACEE,SAAS,EAAEC,UAAU,CAAC;AAAE,UAAA,2BAA2B,EAAEkG;AAAY,SAAC,CAAE;QACpEG,IAAI,EAAE1E,IAAI,CAAC2E,GAAI;AACfC,QAAAA,GAAG,EAAC,YAAY;AAChBC,QAAAA,MAAM,EAAC,QAAQ;AAAAvG,QAAAA,QAAA,eAEfJ,cAAA,CAAC4G,WAAW,EAAA,EAAE;AAAC,OACd,CAAC,EACHP,WAAW,iBACVrG,cAAA,CAAA,KAAA,EAAA;AAAKE,QAAAA,SAAS,EAAC,0BAA0B;QAAAE,QAAA,eACvCJ,cAAA,CAACsD,QAAQ,EAAA;UAACC,QAAQ,EAAEgD,QAAQ,IAAI,CAAE;AAAChG,UAAAA,IAAI,EAAE;SAAK;AAAC,OAC5C,CACN;KACE,CAAC,eACNF,eAAA,CAAA,KAAA,EAAA;AAAKH,MAAAA,SAAS,EAAC,wCAAwC;AAAAE,MAAAA,QAAA,gBACrDJ,cAAA,CAAA,MAAA,EAAA;AACEE,QAAAA,SAAS,EAAC,6CAA6C;AACvD,QAAA,SAAA,EAAQ,WAAW;QAAAE,QAAA,EAElB0B,IAAI,CAACG;OACF,CAAC,eACPjC,cAAA,CAAA,MAAA,EAAA;AAAME,QAAAA,SAAS,EAAC,6CAA6C;AAAAE,QAAAA,QAAA,EAC1D0B,IAAI,CAACvB,IAAI,GAAA,EAAA,CAAAW,MAAA,CAAMI,gBAAgB,CAACQ,IAAI,CAACvB,IAAI,CAAC,EAAA,KAAA,CAAA,GAAQ;AAAE,OACjD,CAAC;KACJ,CAAC,eACNF,eAAA,CAAA,KAAA,EAAA;AAAKH,MAAAA,SAAS,EAAC,sCAAsC;AAAAE,MAAAA,QAAA,gBACnDJ,cAAA,CAAA,MAAA,EAAA;AACEE,QAAAA,SAAS,EAAEC,UAAU,CACnB,gDAAgD,EAChD;UAAE,wDAAwD,EAAE2B,IAAI,CAAC2E;AAAI,SACvE,CAAE;AAAArG,QAAAA,QAAA,EAED0B,IAAI,CAAC2E,GAAG,iBAAIzG,cAAA,CAAC6G,KAAK,EAAA;UAAC,SAAA,EAAQ;SAAuB;OAC/C,CAAC,eACP7G,cAAA,CAAA,QAAA,EAAA;AACEE,QAAAA,SAAS,EAAC,qFAAqF;AAC/Fa,QAAAA,IAAI,EAAC,QAAQ;AACb+F,QAAAA,OAAO,EAAER,MAAO;AAAAlG,QAAAA,QAAA,eAEhBJ,cAAA,CAAC+G,KAAK,EAAA,EAAE;AAAC,OACH,CAAC;AAAA,KACN,CAAC;GAAA,EA5CDjF,IAAI,CAAC2E,GA6CR,CAAC;AAAA,CACN;;ACtDD,SAAA,YAAA,GAAA,qKAAA,IAAAO,CAAA,EAAAnH,CAAA,EAAA4F,CAAA,GAAA,UAAA,IAAA,OAAAwB,MAAA,GAAAA,MAAA,GAAA,EAAA,EAAAC,CAAA,GAAAzB,CAAA,CAAA0B,QAAA,IAAA,YAAA,EAAAC,CAAA,GAAA3B,CAAA,CAAA4B,WAAA,IAAA,eAAA,CAAA,CAAA,SAAAC,EAAA7B,CAAA,EAAAyB,CAAA,EAAAE,CAAA,EAAAE,CAAA,EAAA,EAAA,IAAAC,CAAA,GAAAL,CAAA,IAAAA,CAAA,CAAAM,SAAA,YAAAC,SAAA,GAAAP,CAAA,GAAAO,SAAA,EAAAC,CAAA,GAAAC,MAAA,CAAAC,MAAA,CAAAL,CAAA,CAAAC,SAAA,CAAA,CAAA,CAAA,OAAAK,mBAAA,CAAAH,CAAA,EAAA,SAAA,EAAA,UAAAjC,CAAA,EAAAyB,CAAA,EAAAE,CAAA,EAAA,EAAA,IAAAE,CAAA,EAAAC,CAAA,EAAAG,CAAA,EAAAI,CAAA,GAAA,CAAA,EAAAC,CAAA,GAAAX,CAAA,IAAA,EAAA,EAAAY,CAAA,GAAA,KAAA,EAAAC,CAAA,GAAA,EAAAF,CAAA,EAAA,CAAA,EAAAb,CAAA,EAAA,CAAA,EAAAgB,CAAA,EAAAlB,CAAA,EAAAmB,CAAA,EAAAC,CAAA,EAAAN,CAAA,EAAAM,CAAA,CAAAC,IAAA,CAAArB,CAAA,EAAA,CAAA,CAAA,EAAAoB,CAAA,WAAAA,CAAAA,CAAAvI,CAAA,EAAA4F,CAAA,WAAA6B,CAAA,GAAAzH,CAAA,EAAA0H,CAAA,GAAA,CAAA,EAAAG,CAAA,GAAAV,CAAA,EAAAiB,CAAA,CAAAf,CAAA,GAAAzB,CAAA,EAAA0C,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,SAAAC,EAAA3C,CAAA,EAAAyB,CAAA,EAAA,EAAA,KAAAK,CAAA,GAAA9B,CAAA,EAAAiC,CAAA,GAAAR,CAAA,EAAArH,CAAA,OAAAmI,CAAA,IAAAF,CAAA,IAAA,CAAAV,CAAA,IAAAvH,CAAA,GAAAkI,CAAA,CAAAO,MAAA,EAAAzI,CAAA,UAAAuH,CAAA,EAAAE,CAAA,GAAAS,CAAA,CAAAlI,CAAA,CAAA,EAAAuI,CAAA,GAAAH,CAAA,CAAAF,CAAA,EAAAQ,CAAA,GAAAjB,CAAA,KAAA7B,CAAA,GAAA,CAAA,GAAA,CAAA2B,CAAA,GAAAmB,CAAA,KAAArB,CAAA,MAAAQ,CAAA,GAAAJ,CAAA,CAAA,CAAAC,CAAA,GAAAD,CAAA,CAAA,CAAA,CAAA,IAAA,CAAA,IAAAC,CAAA,GAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAAD,CAAA,CAAA,CAAA,CAAA,GAAAA,CAAA,CAAA,CAAA,CAAA,GAAAN,CAAA,IAAAM,CAAA,CAAA,CAAA,CAAA,IAAAc,CAAA,KAAA,CAAAhB,CAAA,GAAA3B,CAAA,GAAA,CAAA,IAAA2C,CAAA,GAAAd,CAAA,CAAA,CAAA,CAAA,KAAAC,CAAA,MAAAU,CAAA,CAAAC,CAAA,GAAAhB,CAAA,EAAAe,CAAA,CAAAf,CAAA,GAAAI,CAAA,CAAA,CAAA,CAAA,IAAAc,CAAA,GAAAG,CAAA,KAAAnB,CAAA,GAAA3B,CAAA,GAAA,CAAA,IAAA6B,CAAA,CAAA,CAAA,CAAA,GAAAJ,CAAA,IAAAA,CAAA,GAAAqB,CAAA,MAAAjB,CAAA,CAAA,CAAA,CAAA,GAAA7B,CAAA,EAAA6B,CAAA,CAAA,CAAA,CAAA,GAAAJ,CAAA,EAAAe,CAAA,CAAAf,CAAA,GAAAqB,CAAA,EAAAhB,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAAH,CAAA,IAAA3B,CAAA,GAAA,CAAA,EAAA,OAAA0C,CAAA,CAAA,CAAA,MAAAH,CAAA,GAAA,IAAA,EAAAd,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,UAAAE,CAAA,EAAAW,CAAA,EAAAQ,CAAA,EAAA,EAAA,IAAAT,CAAA,GAAA,CAAA,EAAA,MAAAU,SAAA,CAAA,8BAAA,CAAA,CAAA,CAAA,KAAAR,CAAA,UAAAD,CAAA,IAAAK,CAAA,CAAAL,CAAA,EAAAQ,CAAA,CAAA,EAAAhB,CAAA,GAAAQ,CAAA,EAAAL,CAAA,GAAAa,CAAA,EAAA,CAAA1I,CAAA,GAAA0H,CAAA,GAAA,CAAA,GAAAP,CAAA,GAAAU,CAAA,KAAA,CAAAM,CAAA,GAAA,EAAAV,CAAA,KAAAC,CAAA,GAAAA,CAAA,GAAA,CAAA,IAAAA,CAAA,GAAA,CAAA,KAAAU,CAAA,CAAAf,CAAA,GAAA,EAAA,CAAA,EAAAkB,CAAA,CAAAb,CAAA,EAAAG,CAAA,CAAA,IAAAO,CAAA,CAAAf,CAAA,GAAAQ,CAAA,GAAAO,CAAA,CAAAC,CAAA,GAAAR,CAAA,aAAAI,CAAA,GAAA,CAAA,EAAAR,CAAA,EAAA,EAAA,IAAAC,CAAA,KAAAH,CAAA,GAAA,MAAA,CAAA,EAAAvH,CAAA,GAAAyH,CAAA,CAAAF,CAAA,WAAAvH,CAAA,GAAAA,CAAA,CAAA4I,IAAA,CAAAnB,CAAA,EAAAI,CAAA,CAAA,CAAA,EAAA,MAAAc,SAAA,CAAA,kCAAA,CAAA,CAAA,CAAA,IAAA,CAAA3I,CAAA,CAAA6I,IAAA,EAAA,OAAA7I,CAAA,CAAA,CAAA6H,CAAA,GAAA7H,CAAA,CAAA8I,KAAA,EAAApB,CAAA,GAAA,CAAA,KAAAA,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MAAA,CAAA,KAAAA,CAAA,KAAA1H,CAAA,GAAAyH,CAAA,CAAA,QAAA,CAAA,CAAA,IAAAzH,CAAA,CAAA4I,IAAA,CAAAnB,CAAA,CAAA,EAAAC,CAAA,SAAAG,CAAA,GAAAc,SAAA,CAAA,mCAAA,GAAApB,CAAA,GAAA,UAAA,CAAA,EAAAG,CAAA,GAAA,CAAA,CAAA,CAAA,CAAAD,CAAA,GAAAN,CAAA,CAAA,CAAA,CAAA,MAAA,IAAA,CAAAnH,CAAA,IAAAmI,CAAA,GAAAC,CAAA,CAAAf,CAAA,GAAA,CAAA,IAAAQ,CAAA,GAAAjC,CAAA,CAAAgD,IAAA,CAAAvB,CAAA,EAAAe,CAAA,CAAA,MAAAE,CAAA,EAAA,MAAA,CAAA,CAAA,CAAA,OAAAtI,CAAA,EAAA,EAAAyH,CAAA,GAAAN,CAAA,EAAAO,CAAA,GAAA,CAAA,EAAAG,CAAA,GAAA7H,CAAA,CAAA,CAAA,CAAA,SAAA,EAAAiI,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,EAAAa,KAAA,EAAA9I,CAAA,EAAA6I,IAAA,EAAAV,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAvC,CAAA,EAAA2B,CAAA,EAAAE,CAAA,CAAA,EAAA,IAAA,CAAA,EAAAI,CAAA,CAAA,CAAA,CAAA,CAAA,IAAAS,CAAA,GAAA,EAAA,CAAA,CAAA,SAAAV,SAAAA,eAAAmB,iBAAAA,GAAA,CAAA,CAAA,CAAA,SAAAC,0BAAAA,GAAA,CAAA,CAAA,CAAAhJ,CAAA,GAAA8H,MAAA,CAAAmB,cAAA,CAAA,CAAA,IAAAvB,CAAA,GAAA,EAAA,CAAAL,CAAA,CAAA,GAAArH,CAAA,CAAAA,CAAA,IAAAqH,CAAA,CAAA,EAAA,CAAA,CAAA,IAAAW,mBAAA,CAAAhI,CAAA,GAAA,EAAA,EAAAqH,CAAA,EAAA,YAAA,EAAA,OAAA,IAAA,CAAA,CAAA,CAAA,CAAA,EAAArH,CAAA,GAAA6H,CAAA,GAAAmB,0BAAA,CAAArB,SAAA,GAAAC,SAAA,CAAAD,SAAA,GAAAG,MAAA,CAAAC,MAAA,CAAAL,CAAA,CAAA,CAAA,CAAA,SAAAO,CAAAA,CAAAd,CAAA,WAAAW,MAAA,CAAAoB,cAAA,GAAApB,MAAA,CAAAoB,cAAA,CAAA/B,CAAA,EAAA6B,0BAAA,CAAA,IAAA7B,CAAA,CAAAgC,SAAA,GAAAH,0BAAA,EAAAhB,mBAAA,CAAAb,CAAA,EAAAI,CAAA,EAAA,mBAAA,CAAA,CAAA,EAAAJ,CAAA,CAAAQ,SAAA,GAAAG,MAAA,CAAAC,MAAA,CAAAF,CAAA,CAAA,EAAAV,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA4B,iBAAA,CAAApB,SAAA,GAAAqB,0BAAA,EAAAhB,mBAAA,CAAAH,CAAA,iBAAAmB,0BAAA,CAAA,EAAAhB,mBAAA,CAAAgB,0BAAA,EAAA,aAAA,EAAAD,iBAAA,CAAA,EAAAA,iBAAA,CAAAK,WAAA,GAAA,mBAAA,EAAApB,mBAAA,CAAAgB,0BAAA,EAAAzB,CAAA,EAAA,mBAAA,CAAA,EAAAS,mBAAA,CAAAH,CAAA,CAAA,EAAAG,mBAAA,CAAAH,CAAA,EAAAN,CAAA,EAAA,WAAA,CAAA,EAAAS,mBAAA,CAAAH,CAAA,EAAAR,CAAA,EAAA,YAAA,EAAA,OAAA,IAAA,CAAA,CAAA,CAAA,CAAA,EAAAW,mBAAA,CAAAH,CAAA,8DAAAwB,YAAA,GAAA,SAAAA,YAAAA,GAAA,EAAA,OAAA,EAAAC,CAAA,EAAA7B,CAAA,EAAA8B,CAAA,EAAAtB,CAAA,EAAA,CAAA,CAAA,CAAA,GAAA,CAAA,CAAA;AAAA,SAAAD,mBAAAA,CAAAb,CAAA,EAAAvB,CAAA,EAAAyB,CAAA,EAAArH,CAAA,EAAA,EAAA,IAAAyH,CAAA,GAAAK,MAAA,CAAA0B,cAAA,CAAA,CAAA,IAAA,EAAA/B,CAAA,uBAAAN,CAAA,EAAA,EAAAM,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAAO,mBAAA,GAAA,SAAAyB,mBAAAtC,CAAA,EAAAvB,CAAA,EAAAyB,CAAA,EAAArH,CAAA,EAAA,EAAA,SAAAuH,CAAAA,CAAA3B,CAAA,EAAAyB,CAAA,IAAAW,mBAAA,CAAAb,CAAA,EAAAvB,CAAA,YAAAuB,CAAA,EAAA,EAAA,OAAA,IAAA,CAAAuC,OAAA,CAAA9D,CAAA,EAAAyB,CAAA,EAAAF,CAAA,SAAAvB,CAAA,GAAA6B,CAAA,GAAAA,CAAA,CAAAN,CAAA,EAAAvB,CAAA,IAAAkD,KAAA,EAAAzB,CAAA,EAAAsC,UAAA,GAAA3J,CAAA,EAAA4J,YAAA,EAAA,CAAA5J,CAAA,EAAA6J,QAAA,EAAA,CAAA7J,CAAA,MAAAmH,CAAA,CAAAvB,CAAA,CAAA,GAAAyB,CAAA,IAAAE,CAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAAA,CAAA,cAAAA,CAAA,CAAA,QAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAAS,mBAAA,CAAAb,CAAA,EAAAvB,CAAA,EAAAyB,CAAA,EAAArH,CAAA,CAAA,CAAA,CAAA;AAAA,SAAA8J,SAAAA,CAAA3C,CAAA,EAAAvB,CAAA,EAAA,EAAA,IAAA5F,CAAA,GAAA8H,MAAA,CAAAiC,IAAA,CAAA5C,CAAA,OAAAW,MAAA,CAAAkC,qBAAA,EAAA,EAAA,IAAAzC,CAAA,GAAAO,MAAA,CAAAkC,qBAAA,CAAA7C,CAAA,CAAA,CAAA,CAAAvB,CAAA,KAAA2B,CAAA,GAAAA,CAAA,CAAAlE,MAAA,CAAA,UAAAuC,CAAA,EAAA,EAAA,OAAAkC,MAAA,CAAAmC,wBAAA,CAAA9C,CAAA,EAAAvB,CAAA,EAAA+D,UAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA3J,CAAA,CAAAwB,IAAA,CAAA0I,KAAA,CAAAlK,CAAA,EAAAuH,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAAvH,CAAA,CAAA,CAAA;AAAA,SAAAI,gBAAA+G,CAAA,EAAA,EAAA,KAAA,IAAAvB,CAAA,GAAA,CAAA,EAAAA,CAAA,GAAAuE,SAAA,CAAA1B,MAAA,EAAA7C,CAAA,EAAA,EAAA,EAAA,IAAA5F,CAAA,WAAAmK,SAAA,CAAAvE,CAAA,CAAA,GAAAuE,SAAA,CAAAvE,CAAA,QAAAA,CAAA,GAAA,CAAA,GAAAkE,SAAA,CAAAhC,MAAA,CAAA9H,CAAA,CAAA,EAAA,IAAA,CAAA,CAAAiB,OAAA,CAAA,UAAA2E,CAAA,IAAAwE,eAAA,CAAAjD,CAAA,EAAAvB,CAAA,EAAA5F,CAAA,CAAA4F,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAAkC,MAAA,CAAAuC,yBAAA,GAAAvC,MAAA,CAAAwC,gBAAA,CAAAnD,CAAA,EAAAW,MAAA,CAAAuC,yBAAA,CAAArK,CAAA,KAAA8J,SAAA,CAAAhC,MAAA,CAAA9H,CAAA,CAAA,CAAA,CAAAiB,OAAA,WAAA2E,CAAA,EAAA,EAAAkC,MAAA,CAAA0B,cAAA,CAAArC,CAAA,EAAAvB,CAAA,EAAAkC,MAAA,CAAAmC,wBAAA,CAAAjK,CAAA,EAAA4F,CAAA,iBAAAuB,CAAA,CAAA,CAAA;AASA,IAAMoD,aAAa,GAAG,SAAhBA,aAAaA,CAAAjL,IAAA,EAWb;AAAA,EAAA,IAVJkL,QAAQ,GAAAlL,IAAA,CAARkL,QAAQ;IACRC,MAAM,GAAAnL,IAAA,CAANmL,MAAM;IACNC,QAAQ,GAAApL,IAAA,CAARoL,QAAQ;IACR/K,WAAW,GAAAL,IAAA,CAAXK,WAAW;IACXgL,WAAW,GAAArL,IAAA,CAAXqL,WAAW;IACXC,KAAK,GAAAtL,IAAA,CAALsL,KAAK;IACLC,QAAQ,GAAAvL,IAAA,CAARuL,QAAQ;IACRC,QAAQ,GAAAxL,IAAA,CAARwL,QAAQ;IACRC,UAAU,GAAAzL,IAAA,CAAVyL,UAAU;IACVlL,gBAAgB,GAAAP,IAAA,CAAhBO,gBAAgB;AAEhB,EAAA,IAAAmL,SAAA,GAA4CC,cAAQ,CAAC,EAAE,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAjDI,IAAAA,cAAc,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,iBAAiB,GAAAH,UAAA,CAAA,CAAA,CAAA;AACxC,EAAA,IAAAI,UAAA,GAAsCL,cAAQ,CAAC,EAAE,CAAC;IAAAM,UAAA,GAAAJ,cAAA,CAAAG,UAAA,EAAA,CAAA,CAAA;AAA3CE,IAAAA,WAAW,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,cAAc,GAAAF,UAAA,CAAA,CAAA,CAAA;AAElC,EAAA,IAAMG,QAAQ,GAAGC,YAAM,CAACf,KAAK,CAAC;EAC9Bc,QAAQ,CAACE,OAAO,GAAGhB,KAAK;AAExB,EAAA,IAAMnE,MAAM,GAAGoF,iBAAW,CACxB,UAAArI,KAAK,EAAA;AAAA,IAAA,OAAI,YAAM;AACb6H,MAAAA,iBAAiB,CAACS,WAAK,CAAClB,KAAK,CAACpH,KAAK,CAAC,CAACpB,IAAI,EAAE,IAAI,CAAC,CAAC;AACjD,MAAA,IAAM2J,QAAQ,GAAGnB,KAAK,KAAA,IAAA,IAALA,KAAK,KAAA,MAAA,GAAA,MAAA,GAALA,KAAK,CAAEvH,MAAM,CAAC,UAAC2I,CAAC,EAAEC,GAAG,EAAA;QAAA,OAAKA,GAAG,KAAKzI,KAAK;MAAA,CAAA,CAAC;MACzDqH,QAAQ,CAACkB,QAAQ,CAAC;IACpB,CAAC;EAAA,CAAA,EACD,CAACnB,KAAK,CACR,CAAC;AAEDsB,EAAAA,eAAS,CAAC,YAAM;AACdV,IAAAA,WAAW,IAAIV,QAAQ,CAACU,WAAW,CAAC;AACtC,EAAA,CAAC,EAAE,CAACA,WAAW,CAAC,CAAC;AAEjB,EAAA,IAAMW,cAAc,gBAAA,YAAA;IAAA,IAAAhJ,KAAA,GAAAiJ,iBAAA,cAAA/C,YAAA,GAAAE,CAAA,CAAG,SAAA8C,OAAAA,CAAMC,aAAa,EAAA;AAAA,MAAA,IAAAC,YAAA,EAAAC,YAAA,EAAAT,QAAA,EAAAU,aAAA;AAAA,MAAA,OAAApD,YAAA,EAAA,CAAAC,CAAA,CAAA,UAAAoD,QAAA,EAAA;QAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAArF,CAAA;AAAA,UAAA,KAAA,CAAA;YACxC0D,UAAU,CAAC,KAAK,CAAC;YACjBU,cAAc,CAAC,EAAE,CAAC;AACZc,YAAAA,YAAY,GAAGD,aAAa,CAAC/I,GAAG,CAAC,UAAAtB,IAAI,EAAA;cAAA,OAAK;gBAC9CG,IAAI,EAAEH,IAAI,CAACG,IAAI;gBACf1B,IAAI,EAAEuB,IAAI,CAACvB;eACZ;AAAA,YAAA,CAAC,CAAC;AAEG8L,YAAAA,YAAY,GAAG9B,QAAQ,GAAA,EAAA,CAAArJ,MAAA,CAAAsL,kBAAA,CACpB/B,KAAK,IAAI,EAAE,CAAA,EAAA+B,kBAAA,CAAMJ,YAAY,KAClCA,YAAY;YAChB1B,QAAQ,CAAC2B,YAAY,CAAC;AAACE,YAAAA,QAAA,CAAArF,CAAA,GAAA,CAAA;AAAA,YAAA,OACA,IAAIuF,OAAO,CAAC,UAAAC,OAAO,EAAI;cAC5C,IAAMjC,KAAK,GAAG,EAAE;AAEhB0B,cAAAA,aAAa,CAACrL,OAAO,CAAC,UAAAgB,IAAI,EAAI;gBAC5BoJ,iBAAiB,CAACS,WAAK,CAAC7J,IAAI,CAACG,IAAI,EAAE,CAAC,CAAC,CAAC;gBAEtC,IAAM0K,MAAM,GAAG,IAAIC,0BAAY,CAAC9K,IAAI,EAAEhD,iBAAiB,EAAE;AACvD+N,kBAAAA,gCAAgC,EAAE,SAAlCA,gCAAgCA,CAAEC,GAAG,EAAI;oBACvCA,GAAG,CAACH,MAAM,CAACI,gBAAgB,CAAC,UAAU,EAAE,UAAAC,KAAK,EAAI;AAC/C,sBAAA,IAAMC,eAAe,GAAG9K,IAAI,CAACC,KAAK,CAC/B4K,KAAK,CAACE,MAAM,GAAGF,KAAK,CAACG,KAAK,GAAI,GACjC,CAAC;sBACDjC,iBAAiB,CAACS,WAAK,CAAC7J,IAAI,CAACG,IAAI,EAAEgL,eAAe,CAAC,CAAC;AACtD,oBAAA,CAAC,CAAC;AAEFH,oBAAAA,GAAG,CAACH,MAAM,CAACI,gBAAgB,CAAC,MAAM,EAAE,YAAM;sBACxC7B,iBAAiB,CAACS,WAAK,CAAC7J,IAAI,CAACG,IAAI,EAAEmL,SAAS,CAAC,CAAC;AAChD,oBAAA,CAAC,CAAC;AACJ,kBAAA;AACF,iBAAC,CAAC;AAEFT,gBAAAA,MAAM,CAAC/E,MAAM,CAAC,UAAChG,KAAK,EAAEyL,IAAI,EAAK;AAC7B,kBAAA,IAAIzL,KAAK,EAAE;oBACT,OAAO0J,cAAc,CAAC1J,KAAK,CAAC;AAC9B,kBAAA;kBAEA6I,KAAK,CAACpJ,IAAI,CAAC;oBACToF,GAAG,EAAE4G,IAAI,CAACC,QAAQ;oBAClBrL,IAAI,EAAEoL,IAAI,CAACE,QAAQ;oBACnBC,QAAQ,EAAEH,IAAI,CAACI;AACjB,mBAAC,CAAC;AAEF,kBAAA,IAAMC,iBAAiB,GAAGnD,QAAQ,GAC9B4B,aAAa,CAAC7D,MAAM,KAAKmC,KAAK,CAACnC,MAAM,GACrCmC,KAAK,CAACnC,MAAM,KAAK,CAAC;AAEtB,kBAAA,IAAIoF,iBAAiB,EAAE;oBACrB,OAAOhB,OAAO,CAACjC,KAAK,CAAC;AACvB,kBAAA;AAEA,kBAAA,OAAO,EAAE;AACX,gBAAA,CAAC,CAAC;AACJ,cAAA,CAAC,CAAC;AAEF,cAAA,OAAOA,KAAK;AACd,YAAA,CAAC,CAAC;AAAA,UAAA,KAAA,CAAA;YA7CImB,QAAQ,GAAAW,QAAA,CAAArE,CAAA;AA+Cd,YAAA,IAAIqC,QAAQ,EAAE;cACN8B,aAAY,GAAGd,QAAQ,CAACE,OAAO,CAACrI,GAAG,CAAC,UAAAtB,IAAI,EAAI;gBAChD,IAAM6L,YAAY,GAAGC,gBAAM,CAAC;kBAAE3L,IAAI,EAAEH,IAAI,CAACG;iBAAM,EAAE2J,QAAQ,CAAC;AAE1D,gBAAA,OAAA3L,eAAA,CAAAA,eAAA,CAAA,EAAA,EAAY6B,IAAI,GAAK6L,YAAY,CAAA;AACnC,cAAA,CAAC,CAAC;cACFjD,QAAQ,CAAC2B,aAAY,CAAC;AACxB,YAAA,CAAC,MAAM;cACL3B,QAAQ,CAACkB,QAAQ,CAAC;AACpB,YAAA;AAAC,UAAA,KAAA,CAAA;YAAA,OAAAW,QAAA,CAAApE,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,MAAA,CAAA,EAAA+D,OAAA,CAAA;IAAA,CACF,CAAA,CAAA;IAAA,OAAA,SArEKF,cAAcA,CAAA6B,EAAA,EAAA;AAAA,MAAA,OAAA7K,KAAA,CAAA+G,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,IAAA,CAAA;EAAA,CAAA,EAqEnB;AAED,EAAA,IAAM8D,cAAc,GAAG,SAAjBA,cAAcA,CAAGlL,cAAc,EAAI;AACvCA,IAAAA,cAAc,CAAC9B,OAAO,CAAC,UAAAiN,UAAU,EAAI;MACnCnD,UAAU,CAAC,IAAI,CAAC;MAChB,IAAImD,UAAU,CAAClM,MAAM,CAAC,CAAC,CAAC,CAACE,IAAI,KAAK,gBAAgB,EAAE;QAClDuJ,cAAc,CAAC7J,kBAAkB,CAACsM,UAAU,EAAEvO,WAAW,EAAE+K,QAAQ,CAAC,CAAC;AACvE,MAAA,CAAC,MAAM;QACLe,cAAc,CAAC7J,kBAAkB,CAACsM,UAAU,EAAEvO,WAAW,EAAE+K,QAAQ,CAAC,CAAC;AACvE,MAAA;AACF,IAAA,CAAC,CAAC;EACJ,CAAC;AAED,EAAA,IAAAyD,YAAA,GACEC,yBAAW,CAAAhO,eAAA,CAAA;AACToK,MAAAA,QAAQ,EAARA,QAAQ;AACRC,MAAAA,MAAM,EAANA,MAAM;AACNC,MAAAA,QAAQ,EAARA,QAAQ;AACR2D,MAAAA,OAAO,EAAEzL,gBAAgB,CAAC+H,WAAW,CAAC;AACtCwB,MAAAA,cAAc,EAAdA,cAAc;AACd8B,MAAAA,cAAc,EAAdA;KAAc,EACVtO,WAAW,IACbE,gBAAgB,IAAI;MAAEwC,OAAO,EAAEO,gBAAgB,CAACjD,WAAW;AAAE,KAAC,CACjE,CAAC;IAVIH,YAAY,GAAA2O,YAAA,CAAZ3O,YAAY;IAAEC,aAAa,GAAA0O,YAAA,CAAb1O,aAAa;IAAEF,YAAY,GAAA4O,YAAA,CAAZ5O,YAAY;IAAEwD,cAAc,GAAAoL,YAAA,CAAdpL,cAAc;EAYjE,OAAO;AACL2D,IAAAA,QAAQ,EAAE0E,cAAc;AACxB3E,IAAAA,MAAM,EAANA,MAAM;AACNjH,IAAAA,YAAY,EAAZA,YAAY;AACZC,IAAAA,aAAa,EAAbA,aAAa;AACbF,IAAAA,YAAY,EAAZA,YAAY;AACZwD,IAAAA,cAAc,EAAdA;GACD;AACH,CAAC;;ACnID,IAAMtC,UAAU,GAAG,SAAbA,UAAUA,CAAAnB,IAAA,EAYV;AAAA,EAAA,IAAAgP,qBAAA,GAAAhP,IAAA,CAXJM,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAA0O,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAC,qBAAA,GAAAjP,IAAA,CACrBI,oBAAoB;AAApBA,IAAAA,oBAAoB,GAAA6O,qBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,qBAAA;IAAAC,gBAAA,GAAAlP,IAAA,CAC3BK,WAAW;AAAXA,IAAAA,WAAW,GAAA6O,gBAAA,KAAA,MAAA,GAAGtP,aAAa,GAAAsP,gBAAA;IAAAC,qBAAA,GAAAnP,IAAA,CAC3BO,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAA4O,qBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,qBAAA;IAAAC,cAAA,GAAApP,IAAA,CACvBqP,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,cAAA;IAAAE,gBAAA,GAAAtP,IAAA,CACjBqL,WAAW;AAAXA,IAAAA,WAAW,GAAAiE,gBAAA,KAAA,MAAA,GAAG,CAAC,GAAAA,gBAAA;IAAAC,UAAA,GAAAvP,IAAA,CACfsL,KAAK;AAALA,IAAAA,KAAK,GAAAiE,UAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,UAAA;IAAAC,aAAA,GAAAxP,IAAA,CACVuL,QAAQ;AAARA,IAAAA,QAAQ,GAAAiE,aAAA,KAAA,MAAA,GAAGC,cAAI,GAAAD,aAAA;IACf/M,KAAK,GAAAzC,IAAA,CAALyC,KAAK;IAAAiN,aAAA,GAAA1P,IAAA,CACLwL,QAAQ;AAARA,IAAAA,QAAQ,GAAAkE,aAAA,KAAA,MAAA,GAAGD,cAAI,GAAAC,aAAA;IAAAC,eAAA,GAAA3P,IAAA,CACfyL,UAAU;AAAVA,IAAAA,UAAU,GAAAkE,eAAA,KAAA,MAAA,GAAGF,cAAI,GAAAE,eAAA;EAEjB,IAAAC,cAAA,GAOI3E,aAAa,CAAC;AAChBC,MAAAA,QAAQ,EAAEmE,SAAS;AACnBlE,MAAAA,MAAM,EAAE3J,oBAAoB,CAAClB,gBAAgB,CAAC;AAC9C8K,MAAAA,QAAQ,EAAEhL,oBAAoB;AAC9BC,MAAAA,WAAW,EAAXA,WAAW;AACXgL,MAAAA,WAAW,EAAXA,WAAW;AACXC,MAAAA,KAAK,EAALA,KAAK;AACLC,MAAAA,QAAQ,EAARA,QAAQ;AACRC,MAAAA,QAAQ,EAARA,QAAQ;AACRC,MAAAA,UAAU,EAAVA,UAAU;AACVlL,MAAAA,gBAAgB,EAAhBA;AACF,KAAC,CAAC;IAjBA6G,QAAQ,GAAAwI,cAAA,CAARxI,QAAQ;IACRD,MAAM,GAAAyI,cAAA,CAANzI,MAAM;IACNjH,YAAY,GAAA0P,cAAA,CAAZ1P,YAAY;IACZC,aAAa,GAAAyP,cAAA,CAAbzP,aAAa;IACbF,YAAY,GAAA2P,cAAA,CAAZ3P,YAAY;IACZwD,cAAc,GAAAmM,cAAA,CAAdnM,cAAc;AAchB,EAAA,IAAMC,kBAAkB,GAAGrD,WAAW,GAAG,OAAO;AAEhD,EAAA,IAAMwP,eAAe,GAAG,SAAlBA,eAAeA,CAAGlN,IAAI,EAAA;IAAA,OAC1BmN,cAAQ,CAAC1I,QAAQ,CAACzE,IAAI,CAACG,IAAI,CAAC,CAAC,KAAKsE,QAAQ,CAACzE,IAAI,CAACG,IAAI,CAAC,KAAK,GAAG,IAAI,CAACH,IAAI,CAAC2E,GAAG,CAAC;AAAA,EAAA,CAAA;AAE7E,EAAA,IAAMyI,eAAe,GAAGtN,KAAK,IAAIuN,aAAO,CAACvM,cAAc,CAAC;EAExD,oBACEvC,eAAA,CAAA4C,mBAAA,EAAA;IAAA7C,QAAA,EAAA,cACEJ,cAAA,CAACd,QAAQ,EAAA;AAELO,MAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBH,MAAAA,aAAa,EAAbA,aAAa;AACbD,MAAAA,YAAY,EAAZA,YAAY;AACZK,MAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBN,MAAAA,YAAY,EAAZA,YAAY;AACZI,MAAAA,WAAW,EAAXA,WAAW;AACXD,MAAAA,oBAAoB,EAApBA;KAEH,CAAC,EACD,CAAC4P,aAAO,CAAC1E,KAAK,CAAC,iBACdzK,cAAA,CAAA,IAAA,EAAA;AAAIE,MAAAA,SAAS,EAAC,4CAA4C;AAAAE,MAAAA,QAAA,EACvDqK,KAAK,KAAA,IAAA,IAALA,KAAK,KAAA,MAAA,GAAA,MAAA,GAALA,KAAK,CAAErH,GAAG,CAAC,UAACtB,IAAI,EAAEgK,GAAG,EAAA;QAAA,oBACpBsD,mBAAA,CAAChJ,WAAW,EAAA;AACJtE,UAAAA,IAAI,EAAJA,IAAI;AACVwE,UAAAA,MAAM,EAAEA,MAAM,CAACwF,GAAG,CAAE;AACpBzF,UAAAA,WAAW,EAAE2I,eAAe,CAAClN,IAAI,CAAE;AACnCuN,UAAAA,GAAG,EAAEvD,GAAI;AACTvF,UAAAA,QAAQ,EAAEA,QAAQ,CAACzE,IAAI,CAACG,IAAI;AAAE,SAC/B,CAAC;MAAA,CACH;KACC,CACL,EACAqN,oBAAU,CAAC1M,cAAc,CAAC,iBACzB5C,cAAA,CAAC2C,aAAa,EAAA;AAAOC,MAAAA,cAAc,EAAdA,cAAc;AAAEC,MAAAA,kBAAkB,EAAlBA;AAAkB,KAAK,CAC7D,EACAqM,eAAe,iBACdlP,cAAA,CAAA,GAAA,EAAA;AACEE,MAAAA,SAAS,EAAC,mCAAmC;AAC7C,MAAA,SAAA,EAAQ,8BAA8B;AAAAE,MAAAA,QAAA,eAEtCJ,cAAA,CAAA,MAAA,EAAA;AAAME,QAAAA,SAAS,EAAC,gDAAgD;AAAAE,QAAAA,QAAA,EAC7DwB;OACG;AAAC,KACN,CACJ;AAAA,GACD,CAAC;AAEP;;;;;ACzFA,IAAM2N,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAApQ,IAAA,EAA2B;AAAA,EAAA,IAArB8C,IAAI,GAAA9C,IAAA,CAAJ8C,IAAI;AAAKuN,IAAAA,KAAK,GAAAC,wBAAA,CAAAtQ,IAAA,EAAAuQ,SAAA,CAAA;AACxC,EAAA,IAAAC,SAAA,GACEC,eAAQ,CAAC3N,IAAI,CAAC;IAAA4N,UAAA,GAAA7E,cAAA,CAAA2E,SAAA,EAAA,CAAA,CAAA;AADT9D,IAACgE,UAAA,CAAA,CAAA,CAAA;AAAAC,QAAAA,WAAA,GAAAD,UAAA,CAAA,CAAA,CAAA;IAAIlH,KAAK,GAAAmH,WAAA,CAALnH,KAAK;IAAEoH,OAAO,GAAAD,WAAA,CAAPC,OAAO;IAAEnO,KAAK,GAAAkO,WAAA,CAALlO,KAAK;AAAAoO,IAAAA,YAAA,GAAAH,UAAA,CAAA,CAAA,CAAA;IAAMI,QAAQ,GAAAD,YAAA,CAARC,QAAQ;IAAErF,UAAU,GAAAoF,YAAA,CAAVpF,UAAU;IAAED,QAAQ,GAAAqF,YAAA,CAARrF;EAG7D,IAAMuF,cAAc,GAAGH,OAAO,IAAInO,KAAK,GAAGA,KAAK,GAAG,EAAE;AAEpD,EAAA,oBACE5B,cAAA,CAACM,UAAU,EAAAL,aAAA,CAAAA,aAAA,CAAA,EAAA,EAAAA,aAAA,CAAAA,aAAA,CAAA,EAAA,EACAuP,KAAK,CAAA,EAAA,EAAA,EAAA;AAAE7E,IAAAA,QAAQ,EAARA,QAAQ;AAAEC,IAAAA,UAAU,EAAVA;AAAU,GAAA,CAAA,CAAA,EAAA,EAAA,EAAA;AACpChJ,IAAAA,KAAK,EAAEsO,cAAe;AACtBzF,IAAAA,KAAK,EAAE9B,KAAM;AACb+B,IAAAA,QAAQ,EAAEuF;AAAS,GAAA,CACpB,CAAC;AAEN;;;;;"}
@@ -13,7 +13,7 @@ var NoData = require('@bigbinary/neetoui/NoData');
13
13
  var reactI18next = require('react-i18next');
14
14
  var reactRouterDom = require('react-router-dom');
15
15
  var jsxRuntime = require('react/jsx-runtime');
16
- var injectCss = require('./inject-css-vQvjPR2x.js');
16
+ var injectCss = require('./inject-css-B6qYtOJe.js');
17
17
  var Down = require('@bigbinary/neeto-icons/Down');
18
18
  var Up = require('@bigbinary/neeto-icons/Up');
19
19
  var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
@@ -31,7 +31,7 @@ require('@bigbinary/neeto-commons-frontend/utils');
31
31
 
32
32
  var _excluded$1 = ["to", "children"];
33
33
  function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
34
- function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
34
+ function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
35
35
  var Link = function Link(_ref) {
36
36
  var to = _ref.to,
37
37
  children = _ref.children,
@@ -241,7 +241,7 @@ var ModalHeader = reactUtils.withT(function (_ref) {
241
241
 
242
242
  var _excluded = ["enableAdvancedSearch", "data", "iconComponentMap", "isFetching", "isOpen", "searchTerm", "setSearchTerm", "onClose", "onGoToAdvanced"];
243
243
  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; }
244
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
244
+ 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; }
245
245
  var FinderModal = function FinderModal(_ref) {
246
246
  var _ref$enableAdvancedSe = _ref.enableAdvancedSearch,
247
247
  enableAdvancedSearch = _ref$enableAdvancedSe === void 0 ? true : _ref$enableAdvancedSe,
@@ -1 +1 @@
1
- {"version":3,"file":"FinderModal.js","sources":["../../src/components/FinderModal/Link.jsx","../../src/components/FinderModal/utils.jsx","../../src/components/FinderModal/Body.jsx","../../src/components/FinderModal/Footer.jsx","../../src/components/FinderModal/Header.jsx","../../src/components/FinderModal/index.jsx"],"sourcesContent":["import { Link as RRDLink } from \"react-router-dom\";\n\nconst Link = ({ to, children, ...rest }) => {\n const url = new URL(to);\n url.host = \"\";\n\n return (\n <RRDLink {...rest} to={`${url.pathname}${url.search}`}>\n {children}\n </RRDLink>\n );\n};\n\nexport default Link;\n","import React from \"react\";\n\nexport const minMax = (number, max = Number.POSITIVE_INFINITY, min = 0) =>\n Math.min(max, Math.max(min, number));\n\nexport const htmlToText = html => {\n if (!html) return null;\n\n const tmp = document.createElement(\"div\");\n tmp.innerHTML = html;\n\n return tmp.textContent || tmp.innerText || \"\";\n};\n\nexport const highlightMatch = (text, searchTerm) => {\n if (!searchTerm) return text;\n\n const regex = new RegExp(`(${searchTerm})`, \"gi\");\n\n return text.split(regex).map((part, index) =>\n part?.toLowerCase() === searchTerm.toLowerCase() ? (\n <span className=\"neeto-molecules-finder-matched-tag\" key={index}>\n {part}\n </span>\n ) : (\n part\n )\n );\n};\n\nexport const filterAndHighlightContent = (bodyContent, searchTerm) => {\n if (!searchTerm) return bodyContent;\n\n if (!bodyContent) return null;\n\n return bodyContent\n .split(/(.{1,130}(?:\\s|$))/g)\n .filter(line => line.trim())\n .filter(line => line.toLowerCase().includes(searchTerm.toLowerCase()))\n .map((line, index) => (\n <React.Fragment key={index}>\n {highlightMatch(line, searchTerm)}\n <br />\n </React.Fragment>\n ));\n};\n","import classNames from \"classnames\";\nimport { humanize, isNotPresent } from \"neetocist\";\nimport { Modal, Typography, NoData } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Link from \"./Link\";\nimport { htmlToText, highlightMatch, filterAndHighlightContent } from \"./utils\";\n\nconst ModalBody = ({\n containerRef,\n data,\n iconComponentMap,\n onClose,\n loading,\n searchTerm,\n}) => {\n const { t } = useTranslation();\n\n const isDataEmpty =\n isNotPresent(data) || Object.values(data).every(isNotPresent);\n\n if (isDataEmpty && !loading) {\n return (\n <Modal.Body className=\"neeto-molecules-finder-modal__body flex h-96 items-center justify-center overflow-y-auto px-4 py-6\">\n <NoData\n description={t(\"neetoMolecules.finderModal.noDataDesc\")}\n title={t(\"neetoMolecules.finderModal.noDataTitle\")}\n />\n </Modal.Body>\n );\n }\n\n return (\n <Modal.Body className=\"neeto-molecules-finder-modal__body h-96 overflow-y-auto px-4 py-6\">\n <div className=\"flex flex-col gap-y-4\" ref={containerRef}>\n {Object.keys(data).map(key => {\n if (isNotPresent(data[key])) return null;\n\n return (\n <div className=\"w-full\" key={key}>\n <Typography className=\"mb-2\" style=\"h6\" textTransform=\"uppercase\">\n {humanize(key)}\n </Typography>\n <div className=\"w-full\">\n {data[key].map(item => {\n const Icon =\n iconComponentMap[key] || iconComponentMap.default;\n\n const nameContent = htmlToText(item.name);\n const bodyContent = htmlToText(item.body);\n\n const filteredBodyContent = filterAndHighlightContent(\n bodyContent,\n searchTerm\n );\n\n return (\n <Link\n className=\"neeto-molecules-search-result-item hover:neeto-ui-bg-accent-100 focus:neeto-ui-bg-accent-100 neeto-ui-rounded flex w-full cursor-pointer items-center gap-2 p-2 text-xs\"\n key={item.id}\n to={item.url}\n onClick={onClose}\n >\n <Icon\n className=\"neeto-ui-text-gray-500 min-w-fit\"\n size={16}\n />\n <div className=\"line-clamp-1 flex flex-col\">\n {nameContent && (\n <Typography className=\"neeto-ui-text-black text-sm font-medium\">\n {highlightMatch(nameContent, searchTerm)}\n </Typography>\n )}\n {bodyContent && (\n <Typography\n className={classNames(\"truncate\", {\n \"neeto-ui-text-gray-600 text-xs\": nameContent,\n \"neeto-ui-text-black text-sm font-medium\":\n !nameContent,\n })}\n >\n {filteredBodyContent || bodyContent}\n </Typography>\n )}\n </div>\n </Link>\n );\n })}\n </div>\n </div>\n );\n })}\n </div>\n </Modal.Body>\n );\n};\n\nexport default ModalBody;\n","import { Down, Up } from \"neetoicons\";\nimport { Modal, Typography } from \"neetoui\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ModalFooter = ({ enableAdvancedSearch }) => {\n const { t } = useTranslation();\n\n const shortcuts = [\n {\n label: t(\"neetoMolecules.finderModal.advancedSearch\"),\n keys: [\"Cmd/Ctrl\", \"Return\"],\n isVisible: enableAdvancedSearch,\n },\n {\n label: t(\"neetoMolecules.common.actions.open\"),\n keys: [\"Return\"],\n isVisible: true,\n },\n {\n label: t(\"neetoMolecules.common.actions.move\"),\n keys: [\n <Up className=\"neeto-ui-text-gray-800\" key=\"up\" size={12} />,\n <Down className=\"neeto-ui-text-gray-800\" key=\"down\" size={12} />,\n ],\n isVisible: true,\n },\n {\n label: t(\"neetoMolecules.common.actions.close\"),\n keys: [\"Esc\"],\n isVisible: true,\n },\n ];\n\n return (\n <Modal.Footer className=\"neeto-ui-border-gray-300 neeto-molecules-finder-modal__footer border-t px-4 py-3\">\n <div className=\"neeto-ui-text-xxs flex items-center justify-end gap-4\">\n {shortcuts.filter(prop(\"isVisible\")).map(({ label, keys }, index) => (\n <div className=\"flex items-center gap-1\" key={index}>\n <Typography component=\"span\" style=\"nano\">\n {label}\n </Typography>\n {keys.map((key, index) => (\n <Typography\n className=\"neeto-ui-bg-gray-200 neeto-ui-rounded-sm p-1\"\n component=\"span\"\n key={index}\n style=\"nano\"\n >\n {key}\n </Typography>\n ))}\n </div>\n ))}\n </div>\n </Modal.Footer>\n );\n};\n\nexport default ModalFooter;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Button, Modal, Spinner } from \"neetoui\";\n\nimport Search from \"components/Search\";\n\nconst ModalHeader = withT(\n ({ t, enableAdvancedSearch, loading, onSearch, onGoToAdvanced }) => (\n <Modal.Header className=\"neeto-molecules-finder-modal__header neeto-ui-border-gray-200 border-b px-0 py-0\">\n <Search\n {...{ onSearch }}\n nakedInput\n autoComplete=\"off\"\n className=\"neeto-molecules-finder-modal__search px-3 py-1.5\"\n name=\"term\"\n placeholder={t(\"neetoMolecules.common.actions.search\")}\n suffix={\n <div className=\"ml-3 flex items-center\">\n <div className=\"h-4 w-4 flex-shrink-0\">\n {loading && <Spinner size=\"small\" />}\n </div>\n {enableAdvancedSearch && (\n <Button\n className=\"ml-3 whitespace-nowrap\"\n label={t(\"neetoMolecules.finderModal.advancedSearch\")}\n size=\"small\"\n style=\"secondary\"\n onClick={onGoToAdvanced}\n />\n )}\n </div>\n }\n />\n </Modal.Header>\n )\n);\n\nexport default ModalHeader;\n","import { useRef } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Modal } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\n\nimport ModalBody from \"./Body\";\nimport \"./finder-modal.scss\";\nimport ModalFooter from \"./Footer\";\nimport ModalHeader from \"./Header\";\nimport { minMax } from \"./utils\";\n\nconst FinderModal = ({\n enableAdvancedSearch = true,\n data,\n iconComponentMap,\n isFetching,\n isOpen,\n searchTerm,\n setSearchTerm,\n onClose,\n onGoToAdvanced = noop,\n ...props\n}) => {\n const containerRef = useRef();\n const mutables = useRef({ focusIndex: -1 }).current;\n\n const onFocusChange = offset => {\n const container = containerRef.current;\n if (!container) return;\n\n const nodes = container.querySelectorAll(\n \"a.neeto-molecules-search-result-item\"\n );\n\n if (isEmpty(nodes)) return;\n\n mutables.focusIndex = minMax(\n mutables.focusIndex + offset,\n nodes.length - 1\n );\n\n const targetNode = nodes[mutables.focusIndex];\n if (targetNode) {\n targetNode.focus();\n }\n };\n\n useHotkeys(\n [\"up\", \"down\"],\n event => {\n event.preventDefault();\n if (event.code === \"ArrowUp\") onFocusChange(-1);\n else if (event.code === \"ArrowDown\") onFocusChange(1);\n },\n { mode: \"global\", enabled: isOpen }\n );\n\n useHotkeys([\"ctrl+enter\", \"command+enter\"], onGoToAdvanced, {\n mode: \"global\",\n enabled: isOpen && enableAdvancedSearch,\n });\n\n return (\n <Modal\n {...{ isOpen, onClose }}\n closeButton={false}\n {...props}\n backdropClassName=\"neeto-molecules-finder-modal-backdrop py-10 px-4\"\n className=\"neeto-molecules-finder-modal\"\n >\n <ModalHeader\n {...{ enableAdvancedSearch, onGoToAdvanced }}\n loading={isFetching}\n onSearch={setSearchTerm}\n />\n <ModalBody\n {...{ containerRef, data, iconComponentMap, onClose, searchTerm }}\n loading={isFetching}\n />\n <ModalFooter {...{ enableAdvancedSearch }} />\n </Modal>\n );\n};\n\nFinderModal.propTypes = {\n /*\n Boolean to indicate decide whether to show advanced search button or not\n */\n enableAdvancedSearch: PropTypes.bool,\n /*\n Data to be displayed in the modal\n */\n data: PropTypes.objectOf(\n PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string,\n url: PropTypes.string,\n body: PropTypes.string,\n name: PropTypes.string,\n })\n )\n ),\n /*\n Icon component map to render icons for each section\n */\n iconComponentMap: PropTypes.objectOf(PropTypes.elementType),\n /*\n Boolean to indicate whether data is being fetched or not\n */\n isFetching: PropTypes.bool,\n /*\n Boolean to indicate whether modal is open or not\n */\n isOpen: PropTypes.bool,\n /*\n Term used for search\n */\n searchTerm: PropTypes.string,\n /*\n Function to set search term\n */\n setSearchTerm: PropTypes.func,\n /*\n Function to close the modal\n */\n onClose: PropTypes.func,\n /*\n Function to execute when user clicks on advanced search button\n */\n onGoToAdvanced: PropTypes.func,\n};\n\nexport default FinderModal;\n"],"names":["Link","_ref","to","children","rest","_objectWithoutProperties","_excluded","url","URL","host","_jsx","RRDLink","_objectSpread","concat","pathname","search","minMax","number","max","arguments","length","undefined","Number","POSITIVE_INFINITY","min","Math","htmlToText","html","tmp","document","createElement","innerHTML","textContent","innerText","highlightMatch","text","searchTerm","regex","RegExp","split","map","part","index","toLowerCase","className","filterAndHighlightContent","bodyContent","filter","line","trim","includes","_jsxs","React","Fragment","ModalBody","containerRef","data","iconComponentMap","onClose","loading","_useTranslation","useTranslation","t","isDataEmpty","isNotPresent","Object","values","every","Modal","Body","NoData","description","title","ref","keys","key","Typography","style","textTransform","humanize","item","Icon","nameContent","name","body","filteredBodyContent","onClick","size","classNames","id","ModalFooter","enableAdvancedSearch","shortcuts","label","isVisible","Up","Down","Footer","prop","_ref2","component","ModalHeader","withT","onSearch","onGoToAdvanced","Header","Search","nakedInput","autoComplete","placeholder","suffix","Spinner","Button","FinderModal","_ref$enableAdvancedSe","isFetching","isOpen","setSearchTerm","_ref$onGoToAdvanced","noop","props","useRef","mutables","focusIndex","current","onFocusChange","offset","container","nodes","querySelectorAll","isEmpty","targetNode","focus","useHotkeys","event","preventDefault","code","mode","enabled","closeButton","backdropClassName"],"mappings":"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"}
1
+ {"version":3,"file":"FinderModal.js","sources":["../../src/components/FinderModal/Link.jsx","../../src/components/FinderModal/utils.jsx","../../src/components/FinderModal/Body.jsx","../../src/components/FinderModal/Footer.jsx","../../src/components/FinderModal/Header.jsx","../../src/components/FinderModal/index.jsx"],"sourcesContent":["import { Link as RRDLink } from \"react-router-dom\";\n\nconst Link = ({ to, children, ...rest }) => {\n const url = new URL(to);\n url.host = \"\";\n\n return (\n <RRDLink {...rest} to={`${url.pathname}${url.search}`}>\n {children}\n </RRDLink>\n );\n};\n\nexport default Link;\n","import React from \"react\";\n\nexport const minMax = (number, max = Number.POSITIVE_INFINITY, min = 0) =>\n Math.min(max, Math.max(min, number));\n\nexport const htmlToText = html => {\n if (!html) return null;\n\n const tmp = document.createElement(\"div\");\n tmp.innerHTML = html;\n\n return tmp.textContent || tmp.innerText || \"\";\n};\n\nexport const highlightMatch = (text, searchTerm) => {\n if (!searchTerm) return text;\n\n const regex = new RegExp(`(${searchTerm})`, \"gi\");\n\n return text.split(regex).map((part, index) =>\n part?.toLowerCase() === searchTerm.toLowerCase() ? (\n <span className=\"neeto-molecules-finder-matched-tag\" key={index}>\n {part}\n </span>\n ) : (\n part\n )\n );\n};\n\nexport const filterAndHighlightContent = (bodyContent, searchTerm) => {\n if (!searchTerm) return bodyContent;\n\n if (!bodyContent) return null;\n\n return bodyContent\n .split(/(.{1,130}(?:\\s|$))/g)\n .filter(line => line.trim())\n .filter(line => line.toLowerCase().includes(searchTerm.toLowerCase()))\n .map((line, index) => (\n <React.Fragment key={index}>\n {highlightMatch(line, searchTerm)}\n <br />\n </React.Fragment>\n ));\n};\n","import classNames from \"classnames\";\nimport { humanize, isNotPresent } from \"neetocist\";\nimport { Modal, Typography, NoData } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Link from \"./Link\";\nimport { htmlToText, highlightMatch, filterAndHighlightContent } from \"./utils\";\n\nconst ModalBody = ({\n containerRef,\n data,\n iconComponentMap,\n onClose,\n loading,\n searchTerm,\n}) => {\n const { t } = useTranslation();\n\n const isDataEmpty =\n isNotPresent(data) || Object.values(data).every(isNotPresent);\n\n if (isDataEmpty && !loading) {\n return (\n <Modal.Body className=\"neeto-molecules-finder-modal__body flex h-96 items-center justify-center overflow-y-auto px-4 py-6\">\n <NoData\n description={t(\"neetoMolecules.finderModal.noDataDesc\")}\n title={t(\"neetoMolecules.finderModal.noDataTitle\")}\n />\n </Modal.Body>\n );\n }\n\n return (\n <Modal.Body className=\"neeto-molecules-finder-modal__body h-96 overflow-y-auto px-4 py-6\">\n <div className=\"flex flex-col gap-y-4\" ref={containerRef}>\n {Object.keys(data).map(key => {\n if (isNotPresent(data[key])) return null;\n\n return (\n <div className=\"w-full\" key={key}>\n <Typography className=\"mb-2\" style=\"h6\" textTransform=\"uppercase\">\n {humanize(key)}\n </Typography>\n <div className=\"w-full\">\n {data[key].map(item => {\n const Icon =\n iconComponentMap[key] || iconComponentMap.default;\n\n const nameContent = htmlToText(item.name);\n const bodyContent = htmlToText(item.body);\n\n const filteredBodyContent = filterAndHighlightContent(\n bodyContent,\n searchTerm\n );\n\n return (\n <Link\n className=\"neeto-molecules-search-result-item hover:neeto-ui-bg-accent-100 focus:neeto-ui-bg-accent-100 neeto-ui-rounded flex w-full cursor-pointer items-center gap-2 p-2 text-xs\"\n key={item.id}\n to={item.url}\n onClick={onClose}\n >\n <Icon\n className=\"neeto-ui-text-gray-500 min-w-fit\"\n size={16}\n />\n <div className=\"line-clamp-1 flex flex-col\">\n {nameContent && (\n <Typography className=\"neeto-ui-text-black text-sm font-medium\">\n {highlightMatch(nameContent, searchTerm)}\n </Typography>\n )}\n {bodyContent && (\n <Typography\n className={classNames(\"truncate\", {\n \"neeto-ui-text-gray-600 text-xs\": nameContent,\n \"neeto-ui-text-black text-sm font-medium\":\n !nameContent,\n })}\n >\n {filteredBodyContent || bodyContent}\n </Typography>\n )}\n </div>\n </Link>\n );\n })}\n </div>\n </div>\n );\n })}\n </div>\n </Modal.Body>\n );\n};\n\nexport default ModalBody;\n","import { Down, Up } from \"neetoicons\";\nimport { Modal, Typography } from \"neetoui\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ModalFooter = ({ enableAdvancedSearch }) => {\n const { t } = useTranslation();\n\n const shortcuts = [\n {\n label: t(\"neetoMolecules.finderModal.advancedSearch\"),\n keys: [\"Cmd/Ctrl\", \"Return\"],\n isVisible: enableAdvancedSearch,\n },\n {\n label: t(\"neetoMolecules.common.actions.open\"),\n keys: [\"Return\"],\n isVisible: true,\n },\n {\n label: t(\"neetoMolecules.common.actions.move\"),\n keys: [\n <Up className=\"neeto-ui-text-gray-800\" key=\"up\" size={12} />,\n <Down className=\"neeto-ui-text-gray-800\" key=\"down\" size={12} />,\n ],\n isVisible: true,\n },\n {\n label: t(\"neetoMolecules.common.actions.close\"),\n keys: [\"Esc\"],\n isVisible: true,\n },\n ];\n\n return (\n <Modal.Footer className=\"neeto-ui-border-gray-300 neeto-molecules-finder-modal__footer border-t px-4 py-3\">\n <div className=\"neeto-ui-text-xxs flex items-center justify-end gap-4\">\n {shortcuts.filter(prop(\"isVisible\")).map(({ label, keys }, index) => (\n <div className=\"flex items-center gap-1\" key={index}>\n <Typography component=\"span\" style=\"nano\">\n {label}\n </Typography>\n {keys.map((key, index) => (\n <Typography\n className=\"neeto-ui-bg-gray-200 neeto-ui-rounded-sm p-1\"\n component=\"span\"\n key={index}\n style=\"nano\"\n >\n {key}\n </Typography>\n ))}\n </div>\n ))}\n </div>\n </Modal.Footer>\n );\n};\n\nexport default ModalFooter;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Button, Modal, Spinner } from \"neetoui\";\n\nimport Search from \"components/Search\";\n\nconst ModalHeader = withT(\n ({ t, enableAdvancedSearch, loading, onSearch, onGoToAdvanced }) => (\n <Modal.Header className=\"neeto-molecules-finder-modal__header neeto-ui-border-gray-200 border-b px-0 py-0\">\n <Search\n {...{ onSearch }}\n nakedInput\n autoComplete=\"off\"\n className=\"neeto-molecules-finder-modal__search px-3 py-1.5\"\n name=\"term\"\n placeholder={t(\"neetoMolecules.common.actions.search\")}\n suffix={\n <div className=\"ml-3 flex items-center\">\n <div className=\"h-4 w-4 flex-shrink-0\">\n {loading && <Spinner size=\"small\" />}\n </div>\n {enableAdvancedSearch && (\n <Button\n className=\"ml-3 whitespace-nowrap\"\n label={t(\"neetoMolecules.finderModal.advancedSearch\")}\n size=\"small\"\n style=\"secondary\"\n onClick={onGoToAdvanced}\n />\n )}\n </div>\n }\n />\n </Modal.Header>\n )\n);\n\nexport default ModalHeader;\n","import { useRef } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Modal } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\n\nimport ModalBody from \"./Body\";\nimport \"./finder-modal.scss\";\nimport ModalFooter from \"./Footer\";\nimport ModalHeader from \"./Header\";\nimport { minMax } from \"./utils\";\n\nconst FinderModal = ({\n enableAdvancedSearch = true,\n data,\n iconComponentMap,\n isFetching,\n isOpen,\n searchTerm,\n setSearchTerm,\n onClose,\n onGoToAdvanced = noop,\n ...props\n}) => {\n const containerRef = useRef();\n const mutables = useRef({ focusIndex: -1 }).current;\n\n const onFocusChange = offset => {\n const container = containerRef.current;\n if (!container) return;\n\n const nodes = container.querySelectorAll(\n \"a.neeto-molecules-search-result-item\"\n );\n\n if (isEmpty(nodes)) return;\n\n mutables.focusIndex = minMax(\n mutables.focusIndex + offset,\n nodes.length - 1\n );\n\n const targetNode = nodes[mutables.focusIndex];\n if (targetNode) {\n targetNode.focus();\n }\n };\n\n useHotkeys(\n [\"up\", \"down\"],\n event => {\n event.preventDefault();\n if (event.code === \"ArrowUp\") onFocusChange(-1);\n else if (event.code === \"ArrowDown\") onFocusChange(1);\n },\n { mode: \"global\", enabled: isOpen }\n );\n\n useHotkeys([\"ctrl+enter\", \"command+enter\"], onGoToAdvanced, {\n mode: \"global\",\n enabled: isOpen && enableAdvancedSearch,\n });\n\n return (\n <Modal\n {...{ isOpen, onClose }}\n closeButton={false}\n {...props}\n backdropClassName=\"neeto-molecules-finder-modal-backdrop py-10 px-4\"\n className=\"neeto-molecules-finder-modal\"\n >\n <ModalHeader\n {...{ enableAdvancedSearch, onGoToAdvanced }}\n loading={isFetching}\n onSearch={setSearchTerm}\n />\n <ModalBody\n {...{ containerRef, data, iconComponentMap, onClose, searchTerm }}\n loading={isFetching}\n />\n <ModalFooter {...{ enableAdvancedSearch }} />\n </Modal>\n );\n};\n\nFinderModal.propTypes = {\n /*\n Boolean to indicate decide whether to show advanced search button or not\n */\n enableAdvancedSearch: PropTypes.bool,\n /*\n Data to be displayed in the modal\n */\n data: PropTypes.objectOf(\n PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string,\n url: PropTypes.string,\n body: PropTypes.string,\n name: PropTypes.string,\n })\n )\n ),\n /*\n Icon component map to render icons for each section\n */\n iconComponentMap: PropTypes.objectOf(PropTypes.elementType),\n /*\n Boolean to indicate whether data is being fetched or not\n */\n isFetching: PropTypes.bool,\n /*\n Boolean to indicate whether modal is open or not\n */\n isOpen: PropTypes.bool,\n /*\n Term used for search\n */\n searchTerm: PropTypes.string,\n /*\n Function to set search term\n */\n setSearchTerm: PropTypes.func,\n /*\n Function to close the modal\n */\n onClose: PropTypes.func,\n /*\n Function to execute when user clicks on advanced search button\n */\n onGoToAdvanced: PropTypes.func,\n};\n\nexport default FinderModal;\n"],"names":["Link","_ref","to","children","rest","_objectWithoutProperties","_excluded","url","URL","host","_jsx","RRDLink","_objectSpread","concat","pathname","search","minMax","number","max","arguments","length","undefined","Number","POSITIVE_INFINITY","min","Math","htmlToText","html","tmp","document","createElement","innerHTML","textContent","innerText","highlightMatch","text","searchTerm","regex","RegExp","split","map","part","index","toLowerCase","className","filterAndHighlightContent","bodyContent","filter","line","trim","includes","_jsxs","React","Fragment","ModalBody","containerRef","data","iconComponentMap","onClose","loading","_useTranslation","useTranslation","t","isDataEmpty","isNotPresent","Object","values","every","Modal","Body","NoData","description","title","ref","keys","key","Typography","style","textTransform","humanize","item","Icon","nameContent","name","body","filteredBodyContent","onClick","size","classNames","id","ModalFooter","enableAdvancedSearch","shortcuts","label","isVisible","Up","Down","Footer","prop","_ref2","component","ModalHeader","withT","onSearch","onGoToAdvanced","Header","Search","nakedInput","autoComplete","placeholder","suffix","Spinner","Button","FinderModal","_ref$enableAdvancedSe","isFetching","isOpen","setSearchTerm","_ref$onGoToAdvanced","noop","props","useRef","mutables","focusIndex","current","onFocusChange","offset","container","nodes","querySelectorAll","isEmpty","targetNode","focus","useHotkeys","event","preventDefault","code","mode","enabled","closeButton","backdropClassName"],"mappings":"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"}
@@ -22,7 +22,7 @@ var Search = require('@bigbinary/neeto-icons/Search');
22
22
  var Input = require('@bigbinary/neetoui/Input');
23
23
  var Typography = require('@bigbinary/neetoui/Typography');
24
24
  var reactI18next = require('react-i18next');
25
- var injectCss = require('./inject-css-vQvjPR2x.js');
25
+ var injectCss = require('./inject-css-B6qYtOJe.js');
26
26
  var Neeto = require('@bigbinary/neeto-icons/typeface-logos/Neeto');
27
27
  var AppIcons = require('@bigbinary/neeto-icons/typeface-logos');
28
28
  var jsxRuntime = require('react/jsx-runtime');
@@ -109,7 +109,7 @@ var ProductLink = function ProductLink(_ref) {
109
109
  var ProductLink$1 = /*#__PURE__*/React.memo(ProductLink);
110
110
 
111
111
  function ownKeys$4(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; }
112
- function _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$4(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
112
+ function _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$4(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
113
113
  var Menu$3 = function Menu(_ref) {
114
114
  var _ref$isMobile = _ref.isMobile,
115
115
  isMobile = _ref$isMobile === void 0 ? false : _ref$isMobile;
@@ -260,7 +260,7 @@ var NEETO_AUTH_BILLING_INFO_URL = "/neeto_sso/api/v1/subscription/billing";
260
260
 
261
261
  var _excluded$2 = ["label", "icon", "changesCount"];
262
262
  function ownKeys$3(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; }
263
- function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
263
+ function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
264
264
  var LinkSection = function LinkSection(_ref) {
265
265
  var links = _ref.links;
266
266
  var MenuItem = Dropdown$1.MenuItem;
@@ -390,7 +390,7 @@ var OrganizationSwitcher = function OrganizationSwitcher() {
390
390
 
391
391
  var _excluded$1 = ["isLoading", "onMouseEnter"];
392
392
  function ownKeys$2(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; }
393
- function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
393
+ function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
394
394
  var MenuButton$1 = function MenuButton(_ref) {
395
395
  var isLoading = _ref.isLoading,
396
396
  onMouseEnter = _ref.onMouseEnter,
@@ -724,7 +724,7 @@ var ProfileMenu = function ProfileMenu(_ref) {
724
724
  };
725
725
 
726
726
  function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
727
- function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
727
+ function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
728
728
  var ProfileButton = function ProfileButton(_ref) {
729
729
  var profileInfoOverrides = _ref.profileInfoOverrides,
730
730
  showProductSwitcher = _ref.showProductSwitcher,
@@ -868,7 +868,7 @@ injectCss.n(css,{});
868
868
 
869
869
  var _excluded = ["profileInfoOverrides", "topLinks", "bottomLinks", "showProductSwitcher", "isThemeSwitcherEnabled", "isOrganizationSwitcherEnabled", "customContent", "profilePopoverProps", "isConsumer"];
870
870
  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; }
871
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
871
+ 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; }
872
872
  var FloatingActionMenu = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
873
873
  var _globalProps$user;
874
874
  var _ref$profileInfoOverr = _ref.profileInfoOverrides,