@bigbinary/neeto-commons-frontend 3.0.6 → 3.0.9

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 (420) hide show
  1. package/cjs/configs/babel.js +50 -0
  2. package/cjs/configs/eslint/globals.js +14 -0
  3. package/cjs/configs/eslint/helpers/index.js +74 -0
  4. package/cjs/configs/eslint/imports/enforced.js +29 -0
  5. package/cjs/configs/eslint/imports/order.js +65 -0
  6. package/cjs/configs/eslint/index.js +171 -0
  7. package/cjs/configs/eslint/overrides.js +30 -0
  8. package/cjs/configs/eslint/promise.js +8 -0
  9. package/cjs/configs/eslint/react.js +92 -0
  10. package/cjs/configs/nanos/eslint/imports/order.js +25 -0
  11. package/cjs/configs/nanos/eslint/index.js +28 -0
  12. package/cjs/configs/nanos/tailwind.js +11 -0
  13. package/cjs/configs/nanos/webpack/resolve.js +48 -0
  14. package/cjs/configs/nextjs/eslint/imports/order.js +25 -0
  15. package/cjs/configs/nextjs/eslint/index.js +22 -0
  16. package/cjs/configs/nextjs/webpack/resolve.js +1 -0
  17. package/cjs/configs/prettier.js +16 -0
  18. package/cjs/configs/scripts/dead-code-eliminator/constants.js +12 -0
  19. package/cjs/configs/scripts/dead-code-eliminator/index.js +266 -0
  20. package/cjs/configs/scripts/getPkgTranslations.js +45 -0
  21. package/cjs/configs/scripts/jsdoc-builder/constants.mjs +42 -0
  22. package/cjs/configs/scripts/jsdoc-builder/index.mjs +67 -0
  23. package/cjs/configs/scripts/jsdoc-builder/utils.mjs +219 -0
  24. package/cjs/configs/scripts/remove-unused-translation-keys/constants.js +11 -0
  25. package/cjs/configs/scripts/remove-unused-translation-keys/index.js +186 -0
  26. package/cjs/configs/tailwind.js +13 -0
  27. package/cjs/configs/webpack/helpers/customize-default-rules.js +54 -0
  28. package/cjs/configs/webpack/index.js +58 -0
  29. package/cjs/configs/webpack/resolve.js +53 -0
  30. package/cjs/configs/webpack/rules.js +34 -0
  31. package/{constants.cjs.js → cjs/constants/index.js} +11 -10
  32. package/cjs/constants/index.js.map +1 -0
  33. package/cjs/cypress-configs/initializer.js +32 -0
  34. package/cjs/cypress-configs/plugins.js +105 -0
  35. package/cjs/cypress-configs/resolve.js +17 -0
  36. package/cjs/cypress-configs/webpack.config.js +19 -0
  37. package/cjs/cypress-utils/commands.js +276 -0
  38. package/cjs/cypress-utils/commands.js.map +1 -0
  39. package/cjs/cypress-utils/constants/index.js +14 -0
  40. package/cjs/cypress-utils/constants/index.js.map +1 -0
  41. package/cjs/cypress-utils/constants/routes.js +40 -0
  42. package/cjs/cypress-utils/constants/routes.js.map +1 -0
  43. package/cjs/cypress-utils/constants/selectors/common.js +103 -0
  44. package/cjs/cypress-utils/constants/selectors/common.js.map +1 -0
  45. package/cjs/cypress-utils/constants/selectors/editor.js +29 -0
  46. package/cjs/cypress-utils/constants/selectors/editor.js.map +1 -0
  47. package/cjs/cypress-utils/constants/selectors/ipRestriction.js +19 -0
  48. package/cjs/cypress-utils/constants/selectors/ipRestriction.js.map +1 -0
  49. package/cjs/cypress-utils/constants/selectors/login.js +21 -0
  50. package/cjs/cypress-utils/constants/selectors/login.js.map +1 -0
  51. package/cjs/cypress-utils/constants/selectors/member.js +65 -0
  52. package/cjs/cypress-utils/constants/selectors/member.js.map +1 -0
  53. package/cjs/cypress-utils/constants/selectors/navigation.js +28 -0
  54. package/cjs/cypress-utils/constants/selectors/navigation.js.map +1 -0
  55. package/cjs/cypress-utils/constants/selectors/roles.js +24 -0
  56. package/cjs/cypress-utils/constants/selectors/roles.js.map +1 -0
  57. package/cjs/cypress-utils/constants/selectors/signUp.js +23 -0
  58. package/cjs/cypress-utils/constants/selectors/signUp.js.map +1 -0
  59. package/cjs/cypress-utils/constants/selectors/tags.js +31 -0
  60. package/cjs/cypress-utils/constants/selectors/tags.js.map +1 -0
  61. package/cjs/cypress-utils/constants/texts/common.js +40 -0
  62. package/cjs/cypress-utils/constants/texts/common.js.map +1 -0
  63. package/cjs/cypress-utils/constants/texts/member.js +68 -0
  64. package/cjs/cypress-utils/constants/texts/member.js.map +1 -0
  65. package/cjs/cypress-utils/constants/texts/navigation.js +24 -0
  66. package/cjs/cypress-utils/constants/texts/navigation.js.map +1 -0
  67. package/cjs/cypress-utils/constants/texts/roles.js +25 -0
  68. package/cjs/cypress-utils/constants/texts/roles.js.map +1 -0
  69. package/cjs/cypress-utils/constants/texts/signUp.js +14 -0
  70. package/cjs/cypress-utils/constants/texts/signUp.js.map +1 -0
  71. package/cjs/cypress-utils/constants/texts/tags.js +28 -0
  72. package/cjs/cypress-utils/constants/texts/tags.js.map +1 -0
  73. package/cjs/cypress-utils/fixtures/fake.js +177 -0
  74. package/cjs/cypress-utils/fixtures/fake.js.map +1 -0
  75. package/cjs/cypress-utils/index.js +226 -0
  76. package/cjs/cypress-utils/index.js.map +1 -0
  77. package/cjs/cypress-utils/utils/authentication.js +45 -0
  78. package/cjs/cypress-utils/utils/authentication.js.map +1 -0
  79. package/cjs/cypress-utils/utils/common.js +92 -0
  80. package/cjs/cypress-utils/utils/common.js.map +1 -0
  81. package/cjs/cypress-utils/utils/date.js +28 -0
  82. package/cjs/cypress-utils/utils/date.js.map +1 -0
  83. package/cjs/cypress-utils/utils/email.js +165 -0
  84. package/cjs/cypress-utils/utils/email.js.map +1 -0
  85. package/cjs/cypress-utils/utils/member.js +352 -0
  86. package/cjs/cypress-utils/utils/member.js.map +1 -0
  87. package/cjs/cypress-utils/utils/navigation.js +208 -0
  88. package/cjs/cypress-utils/utils/navigation.js.map +1 -0
  89. package/cjs/cypress-utils/utils/organization.js +109 -0
  90. package/cjs/cypress-utils/utils/organization.js.map +1 -0
  91. package/cjs/cypress-utils/utils/validation.js +17 -0
  92. package/cjs/cypress-utils/utils/validation.js.map +1 -0
  93. package/cjs/initializers/axios/index.js +199 -0
  94. package/cjs/initializers/axios/index.js.map +1 -0
  95. package/cjs/initializers/axios/paramsSerializer.js +27 -0
  96. package/cjs/initializers/axios/paramsSerializer.js.map +1 -0
  97. package/cjs/initializers/constants.js +23 -0
  98. package/cjs/initializers/constants.js.map +1 -0
  99. package/cjs/initializers/globalProps.js +15 -0
  100. package/cjs/initializers/globalProps.js.map +1 -0
  101. package/cjs/initializers/i18n.js +74 -0
  102. package/cjs/initializers/i18n.js.map +1 -0
  103. package/cjs/initializers/index.js +51 -0
  104. package/cjs/initializers/index.js.map +1 -0
  105. package/cjs/initializers/logger.js +17 -0
  106. package/cjs/initializers/logger.js.map +1 -0
  107. package/cjs/initializers/reactDevTools.js +26 -0
  108. package/cjs/initializers/reactDevTools.js.map +1 -0
  109. package/cjs/initializers/utils/customFormatters.js +52 -0
  110. package/cjs/initializers/utils/customFormatters.js.map +1 -0
  111. package/cjs/initializers/utils/customPostProcessors.js +21 -0
  112. package/cjs/initializers/utils/customPostProcessors.js.map +1 -0
  113. package/cjs/initializers/utils.js +37 -0
  114. package/cjs/initializers/utils.js.map +1 -0
  115. package/cjs/react-utils/BrowserPushNotifications/devices.js +26 -0
  116. package/cjs/react-utils/BrowserPushNotifications/devices.js.map +1 -0
  117. package/cjs/react-utils/BrowserPushNotifications/index.js +19 -0
  118. package/cjs/react-utils/BrowserPushNotifications/index.js.map +1 -0
  119. package/cjs/react-utils/BrowserPushNotifications/pushHelper.js +116 -0
  120. package/cjs/react-utils/BrowserPushNotifications/pushHelper.js.map +1 -0
  121. package/cjs/react-utils/BrowserPushNotifications/registerServiceWorker.js +146 -0
  122. package/cjs/react-utils/BrowserPushNotifications/registerServiceWorker.js.map +1 -0
  123. package/cjs/react-utils/HoneybadgerErrorBoundary/FallbackComponent.js +153 -0
  124. package/cjs/react-utils/HoneybadgerErrorBoundary/FallbackComponent.js.map +1 -0
  125. package/cjs/react-utils/HoneybadgerErrorBoundary/constants.js +9 -0
  126. package/cjs/react-utils/HoneybadgerErrorBoundary/constants.js.map +1 -0
  127. package/cjs/react-utils/HoneybadgerErrorBoundary/index.js +59 -0
  128. package/cjs/react-utils/HoneybadgerErrorBoundary/index.js.map +1 -0
  129. package/cjs/react-utils/HoneybadgerErrorBoundary/utils.js +17 -0
  130. package/cjs/react-utils/HoneybadgerErrorBoundary/utils.js.map +1 -0
  131. package/cjs/react-utils/PrivateRoute.js +80 -0
  132. package/cjs/react-utils/PrivateRoute.js.map +1 -0
  133. package/cjs/react-utils/constants/constants.js +11 -0
  134. package/cjs/react-utils/constants/constants.js.map +1 -0
  135. package/cjs/react-utils/constants/index.js +28 -0
  136. package/cjs/react-utils/constants/index.js.map +1 -0
  137. package/cjs/react-utils/constants/query.js +11 -0
  138. package/cjs/react-utils/constants/query.js.map +1 -0
  139. package/cjs/react-utils/index.js +242 -0
  140. package/cjs/react-utils/index.js.map +1 -0
  141. package/cjs/react-utils/metaClick.js +16 -0
  142. package/cjs/react-utils/metaClick.js.map +1 -0
  143. package/cjs/react-utils/useDebounce.js +28 -0
  144. package/cjs/react-utils/useDebounce.js.map +1 -0
  145. package/cjs/react-utils/useDisplayErrorPage.js +23 -0
  146. package/cjs/react-utils/useDisplayErrorPage.js.map +1 -0
  147. package/cjs/react-utils/useFetchNeetoApps/apis/neeto_apps.js +17 -0
  148. package/cjs/react-utils/useFetchNeetoApps/apis/neeto_apps.js.map +1 -0
  149. package/cjs/react-utils/useFetchNeetoApps/index.js +14 -0
  150. package/cjs/react-utils/useFetchNeetoApps/index.js.map +1 -0
  151. package/cjs/react-utils/useFetchNeetoApps/useFetchNeetoApps.js +27 -0
  152. package/cjs/react-utils/useFetchNeetoApps/useFetchNeetoApps.js.map +1 -0
  153. package/cjs/react-utils/useFieldSubmit.js +33 -0
  154. package/cjs/react-utils/useFieldSubmit.js.map +1 -0
  155. package/cjs/react-utils/useFuncDebounce.js +27 -0
  156. package/cjs/react-utils/useFuncDebounce.js.map +1 -0
  157. package/cjs/react-utils/useHotKeys/constants.js +36 -0
  158. package/cjs/react-utils/useHotKeys/constants.js.map +1 -0
  159. package/cjs/react-utils/useHotKeys/index.js +14 -0
  160. package/cjs/react-utils/useHotKeys/index.js.map +1 -0
  161. package/cjs/react-utils/useHotKeys/useHotKeys.js +65 -0
  162. package/cjs/react-utils/useHotKeys/useHotKeys.js.map +1 -0
  163. package/cjs/react-utils/useHotKeys/utils.js +37 -0
  164. package/cjs/react-utils/useHotKeys/utils.js.map +1 -0
  165. package/cjs/react-utils/useIsElementVisibleInDom/index.js +14 -0
  166. package/cjs/react-utils/useIsElementVisibleInDom/index.js.map +1 -0
  167. package/cjs/react-utils/useIsElementVisibleInDom/useForceUpdate.js +23 -0
  168. package/cjs/react-utils/useIsElementVisibleInDom/useForceUpdate.js.map +1 -0
  169. package/cjs/react-utils/useIsElementVisibleInDom/useIsElementVisibleInDom.js +34 -0
  170. package/cjs/react-utils/useIsElementVisibleInDom/useIsElementVisibleInDom.js.map +1 -0
  171. package/cjs/react-utils/useKeyboardShortcutsPaneState.js +36 -0
  172. package/cjs/react-utils/useKeyboardShortcutsPaneState.js.map +1 -0
  173. package/cjs/react-utils/useLocalStorage.js +39 -0
  174. package/cjs/react-utils/useLocalStorage.js.map +1 -0
  175. package/cjs/react-utils/useMutationWithInvalidation.js +33 -0
  176. package/cjs/react-utils/useMutationWithInvalidation.js.map +1 -0
  177. package/cjs/react-utils/useOnClickOutside.js +32 -0
  178. package/cjs/react-utils/useOnClickOutside.js.map +1 -0
  179. package/cjs/react-utils/usePersistedQuery.js +59 -0
  180. package/cjs/react-utils/usePersistedQuery.js.map +1 -0
  181. package/cjs/react-utils/usePrevious.js +17 -0
  182. package/cjs/react-utils/usePrevious.js.map +1 -0
  183. package/cjs/react-utils/useQueryParams.js +15 -0
  184. package/cjs/react-utils/useQueryParams.js.map +1 -0
  185. package/cjs/react-utils/useRegisterNavigationCheckpoint.js +43 -0
  186. package/cjs/react-utils/useRegisterNavigationCheckpoint.js.map +1 -0
  187. package/cjs/react-utils/useStateWithDependency.js +23 -0
  188. package/cjs/react-utils/useStateWithDependency.js.map +1 -0
  189. package/cjs/react-utils/useTimer.js +51 -0
  190. package/cjs/react-utils/useTimer.js.map +1 -0
  191. package/cjs/react-utils/useUpdateEffect.js +21 -0
  192. package/cjs/react-utils/useUpdateEffect.js.map +1 -0
  193. package/cjs/react-utils/withImmutableActions.js +29 -0
  194. package/cjs/react-utils/withImmutableActions.js.map +1 -0
  195. package/cjs/react-utils/withT.js +14 -0
  196. package/cjs/react-utils/withT.js.map +1 -0
  197. package/cjs/react-utils/withTitle.js +44 -0
  198. package/cjs/react-utils/withTitle.js.map +1 -0
  199. package/cjs/utils/axios.js +17 -0
  200. package/cjs/utils/axios.js.map +1 -0
  201. package/cjs/utils/createSubscription.js +22 -0
  202. package/cjs/utils/createSubscription.js.map +1 -0
  203. package/cjs/utils/currencyFormat.js +50 -0
  204. package/cjs/utils/currencyFormat.js.map +1 -0
  205. package/cjs/utils/datetime.js +69 -0
  206. package/cjs/utils/datetime.js.map +1 -0
  207. package/cjs/utils/general.js +193 -0
  208. package/cjs/utils/general.js.map +1 -0
  209. package/cjs/utils/index.js +72 -0
  210. package/cjs/utils/index.js.map +1 -0
  211. package/cjs/utils/permissions.js +25 -0
  212. package/cjs/utils/permissions.js.map +1 -0
  213. package/configs/scripts/getPkgTranslations.js +1 -1
  214. package/configs/scripts/jsdoc-builder/constants.mjs +1 -1
  215. package/configs/scripts/jsdoc-builder/index.mjs +1 -1
  216. package/configs/webpack/rules.js +2 -1
  217. package/constants/index.js +13 -0
  218. package/constants/index.js.map +1 -0
  219. package/cypress-utils/commands.js +268 -0
  220. package/cypress-utils/commands.js.map +1 -0
  221. package/cypress-utils/constants/index.js +7 -0
  222. package/cypress-utils/constants/index.js.map +1 -0
  223. package/cypress-utils/constants/routes.js +33 -0
  224. package/cypress-utils/constants/routes.js.map +1 -0
  225. package/cypress-utils/constants/selectors/common.js +94 -0
  226. package/cypress-utils/constants/selectors/common.js.map +1 -0
  227. package/cypress-utils/constants/selectors/editor.js +22 -0
  228. package/cypress-utils/constants/selectors/editor.js.map +1 -0
  229. package/cypress-utils/constants/selectors/ipRestriction.js +12 -0
  230. package/cypress-utils/constants/selectors/ipRestriction.js.map +1 -0
  231. package/cypress-utils/constants/selectors/login.js +14 -0
  232. package/cypress-utils/constants/selectors/login.js.map +1 -0
  233. package/cypress-utils/constants/selectors/member.js +56 -0
  234. package/cypress-utils/constants/selectors/member.js.map +1 -0
  235. package/cypress-utils/constants/selectors/navigation.js +20 -0
  236. package/cypress-utils/constants/selectors/navigation.js.map +1 -0
  237. package/cypress-utils/constants/selectors/roles.js +17 -0
  238. package/cypress-utils/constants/selectors/roles.js.map +1 -0
  239. package/cypress-utils/constants/selectors/signUp.js +16 -0
  240. package/cypress-utils/constants/selectors/signUp.js.map +1 -0
  241. package/cypress-utils/constants/selectors/tags.js +23 -0
  242. package/cypress-utils/constants/selectors/tags.js.map +1 -0
  243. package/cypress-utils/constants/texts/common.js +33 -0
  244. package/cypress-utils/constants/texts/common.js.map +1 -0
  245. package/cypress-utils/constants/texts/member.js +59 -0
  246. package/cypress-utils/constants/texts/member.js.map +1 -0
  247. package/cypress-utils/constants/texts/navigation.js +16 -0
  248. package/cypress-utils/constants/texts/navigation.js.map +1 -0
  249. package/cypress-utils/constants/texts/roles.js +18 -0
  250. package/cypress-utils/constants/texts/roles.js.map +1 -0
  251. package/cypress-utils/constants/texts/signUp.js +7 -0
  252. package/cypress-utils/constants/texts/signUp.js.map +1 -0
  253. package/cypress-utils/constants/texts/tags.js +21 -0
  254. package/cypress-utils/constants/texts/tags.js.map +1 -0
  255. package/cypress-utils/fixtures/fake.js +171 -0
  256. package/cypress-utils/fixtures/fake.js.map +1 -0
  257. package/cypress-utils/index.js +21 -0
  258. package/cypress-utils/index.js.map +1 -0
  259. package/cypress-utils/utils/authentication.js +38 -0
  260. package/cypress-utils/utils/authentication.js.map +1 -0
  261. package/cypress-utils/utils/common.js +75 -0
  262. package/cypress-utils/utils/common.js.map +1 -0
  263. package/cypress-utils/utils/date.js +20 -0
  264. package/cypress-utils/utils/date.js.map +1 -0
  265. package/cypress-utils/utils/email.js +156 -0
  266. package/cypress-utils/utils/email.js.map +1 -0
  267. package/cypress-utils/utils/member.js +344 -0
  268. package/cypress-utils/utils/member.js.map +1 -0
  269. package/cypress-utils/utils/navigation.js +200 -0
  270. package/cypress-utils/utils/navigation.js.map +1 -0
  271. package/cypress-utils/utils/organization.js +102 -0
  272. package/cypress-utils/utils/organization.js.map +1 -0
  273. package/cypress-utils/utils/validation.js +10 -0
  274. package/cypress-utils/utils/validation.js.map +1 -0
  275. package/initializers/axios/index.js +192 -0
  276. package/initializers/axios/index.js.map +1 -0
  277. package/initializers/axios/paramsSerializer.js +18 -0
  278. package/initializers/axios/paramsSerializer.js.map +1 -0
  279. package/initializers/constants.js +13 -0
  280. package/initializers/constants.js.map +1 -0
  281. package/initializers/globalProps.js +8 -0
  282. package/initializers/globalProps.js.map +1 -0
  283. package/initializers/i18n.js +67 -0
  284. package/initializers/i18n.js.map +1 -0
  285. package/initializers/index.js +28 -0
  286. package/initializers/index.js.map +1 -0
  287. package/initializers/logger.js +10 -0
  288. package/initializers/logger.js.map +1 -0
  289. package/initializers/reactDevTools.js +19 -0
  290. package/initializers/reactDevTools.js.map +1 -0
  291. package/initializers/utils/customFormatters.js +43 -0
  292. package/initializers/utils/customFormatters.js.map +1 -0
  293. package/initializers/utils/customPostProcessors.js +14 -0
  294. package/initializers/utils/customPostProcessors.js.map +1 -0
  295. package/initializers/utils.js +29 -0
  296. package/initializers/utils.js.map +1 -0
  297. package/package.json +51 -158
  298. package/pure.d.ts +384 -0
  299. package/react-utils/BrowserPushNotifications/devices.js +18 -0
  300. package/react-utils/BrowserPushNotifications/devices.js.map +1 -0
  301. package/react-utils/BrowserPushNotifications/index.js +1 -0
  302. package/react-utils/BrowserPushNotifications/index.js.map +1 -0
  303. package/react-utils/BrowserPushNotifications/pushHelper.js +107 -0
  304. package/react-utils/BrowserPushNotifications/pushHelper.js.map +1 -0
  305. package/react-utils/BrowserPushNotifications/registerServiceWorker.js +137 -0
  306. package/react-utils/BrowserPushNotifications/registerServiceWorker.js.map +1 -0
  307. package/react-utils/HoneybadgerErrorBoundary/FallbackComponent.js +144 -0
  308. package/react-utils/HoneybadgerErrorBoundary/FallbackComponent.js.map +1 -0
  309. package/react-utils/HoneybadgerErrorBoundary/constants.js +1 -0
  310. package/react-utils/HoneybadgerErrorBoundary/constants.js.map +1 -0
  311. package/react-utils/HoneybadgerErrorBoundary/index.js +52 -0
  312. package/react-utils/HoneybadgerErrorBoundary/index.js.map +1 -0
  313. package/react-utils/HoneybadgerErrorBoundary/utils.js +9 -0
  314. package/react-utils/HoneybadgerErrorBoundary/utils.js.map +1 -0
  315. package/react-utils/PrivateRoute.js +72 -0
  316. package/react-utils/PrivateRoute.js.map +1 -0
  317. package/react-utils/constants/constants.js +3 -0
  318. package/react-utils/constants/constants.js.map +1 -0
  319. package/react-utils/constants/index.js +3 -0
  320. package/react-utils/constants/index.js.map +1 -0
  321. package/react-utils/constants/query.js +4 -0
  322. package/react-utils/constants/query.js.map +1 -0
  323. package/react-utils/index.js +33 -0
  324. package/react-utils/index.js.map +1 -0
  325. package/react-utils/metaClick.js +8 -0
  326. package/react-utils/metaClick.js.map +1 -0
  327. package/react-utils/useDebounce.js +20 -0
  328. package/react-utils/useDebounce.js.map +1 -0
  329. package/react-utils/useDisplayErrorPage.js +15 -0
  330. package/react-utils/useDisplayErrorPage.js.map +1 -0
  331. package/react-utils/useFetchNeetoApps/apis/neeto_apps.js +9 -0
  332. package/react-utils/useFetchNeetoApps/apis/neeto_apps.js.map +1 -0
  333. package/react-utils/useFetchNeetoApps/index.js +1 -0
  334. package/react-utils/useFetchNeetoApps/index.js.map +1 -0
  335. package/react-utils/useFetchNeetoApps/useFetchNeetoApps.js +19 -0
  336. package/react-utils/useFetchNeetoApps/useFetchNeetoApps.js.map +1 -0
  337. package/react-utils/useFieldSubmit.js +26 -0
  338. package/react-utils/useFieldSubmit.js.map +1 -0
  339. package/react-utils/useFuncDebounce.js +20 -0
  340. package/react-utils/useFuncDebounce.js.map +1 -0
  341. package/react-utils/useHotKeys/constants.js +25 -0
  342. package/react-utils/useHotKeys/constants.js.map +1 -0
  343. package/react-utils/useHotKeys/index.js +1 -0
  344. package/react-utils/useHotKeys/index.js.map +1 -0
  345. package/react-utils/useHotKeys/useHotKeys.js +57 -0
  346. package/react-utils/useHotKeys/useHotKeys.js.map +1 -0
  347. package/react-utils/useHotKeys/utils.js +29 -0
  348. package/react-utils/useHotKeys/utils.js.map +1 -0
  349. package/react-utils/useIsElementVisibleInDom/index.js +1 -0
  350. package/react-utils/useIsElementVisibleInDom/index.js.map +1 -0
  351. package/react-utils/useIsElementVisibleInDom/useForceUpdate.js +15 -0
  352. package/react-utils/useIsElementVisibleInDom/useForceUpdate.js.map +1 -0
  353. package/react-utils/useIsElementVisibleInDom/useIsElementVisibleInDom.js +26 -0
  354. package/react-utils/useIsElementVisibleInDom/useIsElementVisibleInDom.js.map +1 -0
  355. package/react-utils/useKeyboardShortcutsPaneState.js +29 -0
  356. package/react-utils/useKeyboardShortcutsPaneState.js.map +1 -0
  357. package/react-utils/useLocalStorage.js +31 -0
  358. package/react-utils/useLocalStorage.js.map +1 -0
  359. package/react-utils/useMutationWithInvalidation.js +25 -0
  360. package/react-utils/useMutationWithInvalidation.js.map +1 -0
  361. package/react-utils/useOnClickOutside.js +25 -0
  362. package/react-utils/useOnClickOutside.js.map +1 -0
  363. package/react-utils/usePersistedQuery.js +51 -0
  364. package/react-utils/usePersistedQuery.js.map +1 -0
  365. package/react-utils/usePrevious.js +10 -0
  366. package/react-utils/usePrevious.js.map +1 -0
  367. package/react-utils/useQueryParams.js +8 -0
  368. package/react-utils/useQueryParams.js.map +1 -0
  369. package/react-utils/useRegisterNavigationCheckpoint.js +35 -0
  370. package/react-utils/useRegisterNavigationCheckpoint.js.map +1 -0
  371. package/react-utils/useStateWithDependency.js +15 -0
  372. package/react-utils/useStateWithDependency.js.map +1 -0
  373. package/react-utils/useTimer.js +43 -0
  374. package/react-utils/useTimer.js.map +1 -0
  375. package/react-utils/useUpdateEffect.js +14 -0
  376. package/react-utils/useUpdateEffect.js.map +1 -0
  377. package/react-utils/withImmutableActions.js +22 -0
  378. package/react-utils/withImmutableActions.js.map +1 -0
  379. package/react-utils/withT.js +7 -0
  380. package/react-utils/withT.js.map +1 -0
  381. package/react-utils/withTitle.js +36 -0
  382. package/react-utils/withTitle.js.map +1 -0
  383. package/react-utils.d.ts +14 -2
  384. package/translations/en.json +100 -0
  385. package/utils/axios.js +10 -0
  386. package/utils/axios.js.map +1 -0
  387. package/utils/createSubscription.js +15 -0
  388. package/utils/createSubscription.js.map +1 -0
  389. package/utils/currencyFormat.js +42 -0
  390. package/utils/currencyFormat.js.map +1 -0
  391. package/utils/datetime.js +60 -0
  392. package/utils/datetime.js.map +1 -0
  393. package/utils/general.js +172 -0
  394. package/utils/general.js.map +1 -0
  395. package/utils/index.js +7 -0
  396. package/utils/index.js.map +1 -0
  397. package/utils/permissions.js +16 -0
  398. package/utils/permissions.js.map +1 -0
  399. package/utils.d.ts +18 -2
  400. package/README.md +0 -173
  401. package/constants.cjs.js.map +0 -1
  402. package/constants.js +0 -15
  403. package/constants.js.map +0 -1
  404. package/cypress-utils.cjs.js +0 -1819
  405. package/cypress-utils.cjs.js.map +0 -1
  406. package/cypress-utils.js +0 -1773
  407. package/cypress-utils.js.map +0 -1
  408. package/initializers.cjs.js +0 -2648
  409. package/initializers.cjs.js.map +0 -1
  410. package/initializers.js +0 -2634
  411. package/initializers.js.map +0 -1
  412. package/react-utils.cjs.js +0 -4915
  413. package/react-utils.cjs.js.map +0 -1
  414. package/react-utils.js +0 -4860
  415. package/react-utils.js.map +0 -1
  416. package/utils.cjs.js +0 -1280
  417. package/utils.cjs.js.map +0 -1
  418. package/utils.js +0 -1248
  419. package/utils.js.map +0 -1
  420. /package/{src → cjs}/translations/en.json +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerServiceWorker.js","names":["urlB64ToUint8Array","base64String","padding","repeat","length","base64","replace","rawData","window","atob","outputArray","Uint8Array","i","charCodeAt","subscribeBrowserNotifications","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","vapidPublicKey","subscription","permission","sw","wrap","_callee$","_context","prev","next","Notification","requestPermission","sent","navigator","serviceWorker","register","ready","pushManager","subscribe","userVisibleOnly","applicationServerKey","abrupt","logger","error","t0","stop","_x","apply","arguments","unsubscribeBrowserNotifications","_ref2","_callee2","res","_callee2$","_context2","getSubscription","unsubscribe","registerServiceWorker","_ref3","_callee3","_callee3$","_context3","_x2"],"sources":["../../../src/react-utils/BrowserPushNotifications/registerServiceWorker.js"],"sourcesContent":["// THIS FILE HAS BEEN ADDED BY NEETO NOTIFICATIONS ENGINE\n// AND IS USED FOR BROWSER NOTIFICATIONS\n// CONTACT NEETO NOTIFICATIONS TEAM BEFORE MODIFYING THIS FILE\n\nfunction urlB64ToUint8Array(base64String) {\n const padding = \"=\".repeat((4 - (base64String.length % 4)) % 4);\n const base64 = (base64String + padding).replace(/-/g, \"+\").replace(/_/g, \"/\");\n\n const rawData = window.atob(base64);\n const outputArray = new Uint8Array(rawData.length);\n\n for (let i = 0; i < rawData.length; ++i) {\n outputArray[i] = rawData.charCodeAt(i);\n }\n\n return outputArray;\n}\n\nconst subscribeBrowserNotifications = async vapidPublicKey => {\n let subscription = {};\n try {\n const permission = await Notification.requestPermission();\n if (permission !== \"denied\") {\n await navigator.serviceWorker.register(\"/serviceworker.js\");\n const sw = await navigator.serviceWorker.ready;\n subscription = await sw.pushManager.subscribe({\n userVisibleOnly: true,\n applicationServerKey: urlB64ToUint8Array(vapidPublicKey),\n });\n\n return subscription;\n }\n logger.error(\"Notification Permission Denied\");\n } catch (error) {\n logger.error(error);\n }\n\n return null;\n};\nexport const unsubscribeBrowserNotifications = async () => {\n try {\n const sw = await navigator.serviceWorker.ready;\n const subscription = await sw.pushManager.getSubscription();\n if (subscription) {\n const res = await subscription.unsubscribe();\n logger.error(res);\n }\n } catch (error) {\n logger.error(error);\n }\n};\n\nexport const registerServiceWorker = async vapidPublicKey => {\n if (navigator.serviceWorker && vapidPublicKey) {\n const res = await subscribeBrowserNotifications(vapidPublicKey);\n\n return res;\n }\n logger.error(\"Service worker is not supported in this Browser\");\n\n return null;\n};\n"],"mappings":"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"}
@@ -0,0 +1,144 @@
1
+ var _jsxFileName = "/home/runner/work/neeto-commons-frontend/neeto-commons-frontend/src/react-utils/HoneybadgerErrorBoundary/FallbackComponent.jsx",
2
+ _this = this;
3
+ import React, { useEffect } from "react";
4
+ import { Button, Typography } from "@bigbinary/neetoui";
5
+ import { isNil } from "ramda";
6
+ import { Trans, useTranslation } from "react-i18next";
7
+
8
+ // eslint-disable-next-line import/extensions
9
+ var FallbackComponentImage = function FallbackComponentImage(props) {
10
+ return /*#__PURE__*/React.createElement("svg", props, /*#__PURE__*/React.createElement("path", {
11
+ d: "M271.071 28.008c-8.563-12.544-25.317-10.81-38.577-10.717-30.899.206-159.103.047-168.105.497-13.866.713-27.79 6.33-30.041 20.132-1.216 7.456-.14 15.427.139 22.94 1.118 30.417 1.953 68.044 5.7 95.148 1.016 7.372 2.35 14.761 6.936 20.853 7.238 9.618 21.581 12.998 33.616 13.2.141.236 110.261 2.828 150.068-.154 11.579-.87 25.682-1.74 33.488-11.652 3.913-4.971 4.246-12.136 5.028-18.171 2.816-21.653 4.695-58.296 7.156-97.59.703-11.222 1.25-24.736-5.408-34.486Zm3.044 27.34c-.082 4.493-3.429 57.629-3.648 60.853-.746 10.901-3.144 45.195-6.244 55.905-3.064 10.571-16.833 13.173-26.189 14.167-7.926.857-15.906 1.35-23.877 1.608-40.911 1.322-129.772 1.044-133.332.949-14.415-.663-30.588-4.888-36.021-19.843a81.026 81.026 0 0 1-3.298-20.918c-2.712-32.616-2.294-42.461-4.372-92.667-.293-7.188-1.76-15.638 1.536-22.356C45.898 18.356 67.727 20.417 81.1 20.27c15.73-.172 149.231-.271 157.495-.338 7.347-.06 15.278-.433 22.12 2.756 12.343 5.744 13.613 20.671 13.399 32.649v.01Z",
12
+ fill: "#2F3941"
13
+ }), /*#__PURE__*/React.createElement("path", {
14
+ d: "M220.642 50.4a1.586 1.586 0 0 0-.415-1.21 1.607 1.607 0 0 0-1.177-.52c-35.537-.183-99.035-.669-135.303-.466a1.056 1.056 0 0 0-.76.238 1.044 1.044 0 0 0-.373.699c-.43 34.284-.24 68.58-.24 102.862 0 1.636.685 2.122 1.643 2.162 45.113 2.049 92.2.763 137.476.91a2.342 2.342 0 0 0 1.518-.675c.405-.403.648-.94.68-1.509-.443-33.909-1.227-68.635-3.049-102.49Zm-2.277.78c1.187 24.763 1.712 49.901 2.264 74.806-45.853 1.664-90.202.658-135.787.522 0-24.642-.313-50.868 0-76.093 43.482.375 89.992.537 133.523.764ZM91.463 151.855l16.27-22.423 18.964.294c-3.709 5.108-12.138 17.321-14.959 22.512-6.749-.114-20.275-.383-20.275-.383Zm42.769.671 15.24-22.699c6.347 0 12.699-.04 19.055-.12-3.627 6.705-10.492 16.8-14.739 22.976-6.51-.007-13.028-.059-19.556-.157Zm42.469.228c5.503-8.232 10.238-15.419 16.186-23.434 6.993-.163 13.993-.365 20.998-.605-4.761 6.22-12.597 17.04-15.361 23.986-7.274.037-14.548.054-21.823.053Z",
15
+ fill: "#2F3941"
16
+ }), /*#__PURE__*/React.createElement("path", {
17
+ d: "M153.904 69.903c-3.722-.185-22.748 30.824-20.049 34.788 2.493 3.664 37.821 2.965 39.914 0 2.39-3.436-16.031-34.596-19.865-34.788Zm.745 10.224c.19 2.645.576 11.328.205 13.546-.27 1.633-1.778.747-1.796-.113-.065-4.437-.177-8.883-.27-13.32a.957.957 0 0 1 .224-.699.925.925 0 0 1 1.551.221.973.973 0 0 1 .086.365Zm.707 18.984c-.727 2.011-2.791 1.389-2.791-.259-.057-3.119 3.572-1.901 2.791.26v-.001ZM155.392 199.891c1.926 4.35 9.139 2.15 6.621-3.658a3.653 3.653 0 0 0-2.338-2.083 3.669 3.669 0 0 0-3.092.487c-1.534 1.051-2.876 3.875-1.144 5.376a.499.499 0 0 0 .85-.353c.107-1.148-.119-2.371.838-3.231a2.288 2.288 0 0 1 3.549.378 2.661 2.661 0 0 1-.467 3.601 3.032 3.032 0 0 1-4.019-.994c-.313-.517-1.037-.06-.798.477ZM145.571 226.664c3.876.66 7.809.928 11.739.798 4.292.127 8.604.273 12.894.248a1.103 1.103 0 0 0 0-2.204c-4.29-.174-8.602-.186-12.894-.206a57.817 57.817 0 0 0-11.739.39.508.508 0 0 0 0 .974Z",
18
+ fill: "#2F3941"
19
+ }), /*#__PURE__*/React.createElement("path", {
20
+ d: "M290.099 17.651a26.343 26.343 0 0 0-14.443-13.727c-8.184-3.209-17.301-2.702-25.923-2.622-36.725.338-187.491.226-197.868.656a46.93 46.93 0 0 0-23.035 6.39c-15.658 9.89-12.084 26.386-11.458 44.885 1.203 35.566 2.12 79.713 6.107 111.322 1.049 8.324 2.204 16.755 6.676 24.05 7.983 13.016 24.148 17.93 39.357 17.867.586 0 34.396.811 73.168 1.099.06 2.045.465 4.305.694 6.462-.845-.102-23.612.467-30.303 1.419a.956.956 0 0 0-.771.893.982.982 0 0 0 .07.415c-3.429 2.898-6.462 6.492-9.588 9.661-3.848 3.879-7.906 7.645-11.5 11.758a.822.822 0 0 0 1.163 1.163c4.026-3.696 7.685-7.846 11.473-11.786 3.151-3.283 6.762-6.462 9.603-10.051a284.168 284.168 0 0 1 30.012-1.086c.02 1.633-.067 3.567 1.553 4.394.249.132.684.04.731-.3.119-2.158.03-4.322-.266-6.463a20.308 20.308 0 0 0-1.205-6.462c9.037.065 18.32.097 27.494.082a22.04 22.04 0 0 0-.498 11.488.589.589 0 0 0 .558.411.583.583 0 0 0 .558-.411c.323-1.081.516-2.196.575-3.323 5.085.679 9.298.204 22.997 1.059 2.081.132 5.048.161 6.8.151a49.891 49.891 0 0 0 9.03 9.507 126.265 126.265 0 0 0 10.551 9.276c.89.671 1.988-.798 1.188-1.541-3.547-3.244-7.275-6.278-10.814-9.542a93.19 93.19 0 0 0-8.62-8.122.687.687 0 0 0-.296-.8 16.466 16.466 0 0 0-6.571-1.034 303.46 303.46 0 0 0-8.896-.433 119.194 119.194 0 0 0-15.245-.532c.139-2.202.522-4.237.539-6.156 26.179-.057 51.28-.512 67.03-1.762 13.367-1.064 29.723-1.842 38.877-13.173 4.737-5.858 5.182-13.963 6.112-21.166 3.929-30.407 5.575-77.387 8.06-112.188.997-13.655 2.17-28.933-3.676-41.728Zm1.613 31.317c-.146 4.2-3.837 64.939-4.225 70.999-.84 12.757-3.594 52.564-7.069 65.039-3.355 12.052-18.191 15.578-28.953 16.886-9.22 1.123-18.553 1.715-27.836 2.028-47.201 1.6-152.146 1.016-154.02.947-17.12-.746-35.33-6.288-41.204-24.174-2.597-7.906-2.91-16.548-3.567-24.799-2.594-32.741-2.42-43.205-4.722-107.053-.313-8.463-1.814-17.863.596-26.12C26.38 3.355 51.897 4.623 67.642 4.416c18.621-.248 177.824-.437 187.33-.497 8.565-.045 17.791.174 25.046 5.349 12.02 8.565 12.159 26.432 11.694 39.692v.008ZM2.113 306.233c1.504-2.13 36.665-41.756 38.413-43.727a10.606 10.606 0 0 1 9.066-3.728c23.95-.139 47.907-.29 71.857.095 44.688.73 142.992-1.775 146.288-1.74 3.231.032 7.399-.711 9.864 1.66 2.352 2.264 26.674 35.343 35.177 44.204 1.322 1.374 3.407-.716 2.093-2.093-8.324-8.682-29.105-36.658-32.5-40.888a17.18 17.18 0 0 0-4.722-5.016c-4.243-2.115-53.46.465-74.499.942-24.904.57-18.499.127-150.918.092-5.858 0-10.004.249-13.864 5.043-4.439 5.52-35.989 42.114-37.403 44.477-.44.751.663 1.365 1.148.679ZM310.594 315.641c2.172-3.694 6.668-9.738 4.511-10.439-3.336-1.064-312.387 1.784-312.387 1.784s-5.946.154-.249 5.456c5.697 5.301 5.965 6.656 16.25 6.258 10.284-.397 262.609-1.203 269.642-1.091 7.034.112 20.856.37 22.233-1.968Z",
21
+ fill: "#2F3941"
22
+ }), /*#__PURE__*/React.createElement("path", {
23
+ d: "M34.938 281.227c-2.187 2.709-11.898 12.69-12.29 15.161a1.074 1.074 0 0 0 .471 1.163c1.328.85 41.622 0 50.602-.032 18.968-.08 153.463.745 156.865.79 2.603.032 4.444-.519 3.169-3.435-4.347-9.942-8.664-19.883-13.081-29.795-1.123-2.513-2.02-2.851-4.722-2.839 0 0-161.347 0-166.45-.059a.918.918 0 0 0-.874.921.92.92 0 0 0 .874.92c31.896.311 159.016-.087 167.966.445.724.045-.248-1.638 13.958 30.395.199.445.147 1.242-2.207 1.3-1.633.034-157.686-.624-193.429-.358-1.899 0-9.956.338-9.897-.14.2-1.6 12.619-14.798 23.217-31.038.365-.559-.497-1.016-.875-.512-.02-.007-8.443 11.098-13.297 17.113ZM238.084 290.689a39.103 39.103 0 0 0 3.124 6.895c.746 1.022 1.243 1.009 2.486 1.049 6.929.216 26.206-.664 45.483-.286 1.275.027 6.532.83 6.463-1.243-.102-3.042-9.343-13.789-22.084-33.67-1.454-2.272-2.08-2.411-4.956-2.284-4.702.199-32.4 1.195-41.541 1.491-1.216.04-1.223 1.934 0 1.894 47.176-1.491 43.545-1.605 43.833-1.422.93.592 1.862 2.879 2.458 3.793 1.33 2.021 17.513 26.115 18.981 28.222.878 1.256.02 1.183-1.739 1.149-1.989-.045-45.168.233-46.573.221-1.739-.022-2.589-3.415-3.3-4.931-9.112-19.476-10.563-22.476-13.054-26.54-.392-.638-1.409-.445-1.131.207 4.36 10.205 7.591 16.5 11.55 25.455ZM285.242 112.053v.445c0 .04.067.04.067 0 0-.147 0-.298.02-.445-.002-.047-.087-.052-.087 0ZM91.163 240.165s131.381-1.695 132.656-1.416c1.275.278-.313 8.776-4.226 8.751-3.912-.025-121.276.922-123.175.171-1.9-.75-7.28-7.478-5.255-7.506Z",
24
+ fill: "#2F3941"
25
+ }), /*#__PURE__*/React.createElement("path", {
26
+ d: "M45.82 293.676a.023.023 0 0 0 .014-.01.025.025 0 0 0 .005-.016.027.027 0 0 0-.019-.026.027.027 0 0 0-.014.042.023.023 0 0 0 .014.01ZM220.834 284.323c-2.237-.034-6-.062-10.973-.082-1.198-2.995.522 1.459-4.325-10.759 4.354 0 7.692 0 9.735.025a.767.767 0 0 0 .545-.226.767.767 0 0 0 0-1.09.77.77 0 0 0-.545-.225c-2.09-.03-5.666-.057-10.376-.077-1.134-2.734-1.506-3.154-2.411-3.637a.552.552 0 0 0-.798.319c-.291.832-.328 1.339.355 3.308-8.714-.03-20.504-.047-33.677-.05a23.38 23.38 0 0 0-2.021-4.446.51.51 0 0 0-.566-.224.509.509 0 0 0-.383.472c.033 1.409.199 2.811.497 4.188-11.212 0-23.326 0-35.336.027a706.988 706.988 0 0 0-.186-3.171.582.582 0 0 0-1.161 0 442.255 442.255 0 0 0-.313 3.174c-12.514.017-24.854.045-35.902.079a6.379 6.379 0 0 0-.378-2.835c-.107-.266-.457-.443-.676-.187a6.309 6.309 0 0 0-1.322 3.03c-12.572.042-23.276.094-30.335.154a18.732 18.732 0 0 0 1.8-3.577c.372-1.061-1.22-2.03-1.954-1.128-1.223 1.511-2.374 3.112-3.495 4.742-2.634.03-4.386.062-5.067.095a.503.503 0 0 0-.357.861.503.503 0 0 0 .357.148c1.155.087 2.55.164 4.158.236-5.903 8.771-5.418 7.829-7.526 11.008-3.607.032-5.985.067-6.83.104a.503.503 0 0 0-.505.505.505.505 0 0 0 .505.504c1.39.1 3.4.184 5.94.249a48.466 48.466 0 0 0-3.343 6.094.431.431 0 0 0 .746.433c1.491-2.168 3.149-4.337 4.859-6.462 8.45.191 21.417.268 36.556.28a22.934 22.934 0 0 0-1.295 5.891c-.048.723.89.823 1.242.338a22.61 22.61 0 0 0 2.963-6.214c12.082 0 25.401-.03 38.835-.079a13.904 13.904 0 0 0 .698 6.238.857.857 0 0 0 .746.429.857.857 0 0 0 .746-.429 13.875 13.875 0 0 0 .952-6.251c13.227-.052 26.474-.116 38.666-.171a25.556 25.556 0 0 0 2.281 5.572.781.781 0 0 0 1.442-.392 24.472 24.472 0 0 0-.816-5.193c13.586-.062 25.705-.111 34.797-.114a27.226 27.226 0 0 0 3.362 6.462c.353.47 1.362.41 1.283-.345a25.886 25.886 0 0 0-1.554-6.119c4.439 0 7.974.022 10.37.059a.761.761 0 0 0 .543-.229.766.766 0 0 0 .222-.546.77.77 0 0 0-.775-.766Zm-170.101.139c3.142-3.859 6.303-7.563 8.562-10.853 7.58.248 18.36.358 30.772.4a97.23 97.23 0 0 1-3.278 10.287c-15.024.045-27.84.102-36.056.166Zm38.892-.173c2.341-7.884 2.585-7.954 3.072-10.273 11.167.028 23.527 0 35.999-.057-.562 6.246-.38 6.529-.691 10.247-13.287.02-26.457.048-38.38.083Zm41.303-.087c-.144-3.319.03-4.226-.263-10.253 12.178-.057 24.392-.142 35.668-.221.621 2.423-.107-.639 2.838 10.439-12.059.01-25.167.017-38.243.035Zm41.164-.023c-.072-.248-3.022-10.14-3.122-10.471 13.235-.094 25.019-.181 33.668-.216 1.941 5.087 1.325 3.139 4.136 10.737-9.003-.032-21.099-.047-34.682-.05ZM281.202 286.259c-1.339-.479-2.53-.671-8.326-.591a140.94 140.94 0 0 0-7.491-12.89 25.902 25.902 0 0 0 7.379-.656.778.778 0 0 0 .398-1.209.778.778 0 0 0-.398-.282c-2.98-.66-6.05-.813-9.081-.452a201.697 201.697 0 0 0-2.486-3.634.674.674 0 0 0-1.163.679l1.695 3.022c-4.143.151-10.849.437-15.243.636a24.566 24.566 0 0 0-3.679-4.576.437.437 0 0 0-.251-.114.444.444 0 0 0-.479.539 25.034 25.034 0 0 0 1.613 4.28 45.342 45.342 0 0 0-8.833.763.515.515 0 0 0-.365.489.511.511 0 0 0 .365.488c3.286.677 6.655.86 9.996.542 1.327 2.443 2.833 4.824 4.079 7.126 1.006 1.854 1.953 3.842 2.965 5.798a40.865 40.865 0 0 0-9.527.716.499.499 0 0 0-.405.488.496.496 0 0 0 .405.489c3.549.665 7.169.868 10.769.604a28.675 28.675 0 0 0 3.542 5.078c.37.412.962-.035.868-.498a23.462 23.462 0 0 0-1.452-4.583 1830.64 1830.64 0 0 0 15.658-.134 30.665 30.665 0 0 0 2.662 4.012c.378.497 1.283.248 1.076-.45a29.948 29.948 0 0 0-1.337-3.587 23.018 23.018 0 0 0 7.071-.599.775.775 0 0 0 .542-.756.78.78 0 0 0-.567-.738Zm-26.223-.126c-1.213-2.414-2.63-4.75-3.865-6.989-1.029-1.859-2.068-3.91-3.211-5.911 3.728-.082 8.656-.218 15.263-.4 3.599 6.462 5.696 10.337 7.091 12.882-3.291.047-6.51.157-15.278.408v.01Z",
27
+ fill: "#2F3941"
28
+ }));
29
+ };
30
+ FallbackComponentImage.defaultProps = {
31
+ width: "230",
32
+ height: "230",
33
+ viewBox: "0 0 317 320",
34
+ fill: "none",
35
+ "'data-testid'": "fallback-svg",
36
+ xmlns: "http://www.w3.org/2000/svg"
37
+ };
38
+ var FallbackComponent = function FallbackComponent() {
39
+ var _useTranslation = useTranslation(),
40
+ t = _useTranslation.t;
41
+ useEffect(function () {
42
+ var listener = function listener(e) {
43
+ var _e$target;
44
+ if (isNil(e.state)) return;
45
+ window.location.href = (_e$target = e.target) === null || _e$target === void 0 ? void 0 : _e$target.location.href;
46
+ };
47
+ window.addEventListener("popstate", listener);
48
+ return function () {
49
+ return window.removeEventListener("popstate", listener);
50
+ };
51
+ }, []);
52
+ return /*#__PURE__*/React.createElement("div", {
53
+ className: "flex h-screen w-full flex-row items-start justify-start",
54
+ __self: _this,
55
+ __source: {
56
+ fileName: _jsxFileName,
57
+ lineNumber: 24,
58
+ columnNumber: 5
59
+ }
60
+ }, /*#__PURE__*/React.createElement("div", {
61
+ className: "m-auto text-center",
62
+ __self: _this,
63
+ __source: {
64
+ fileName: _jsxFileName,
65
+ lineNumber: 25,
66
+ columnNumber: 7
67
+ }
68
+ }, /*#__PURE__*/React.createElement("div", {
69
+ className: "m-auto mb-8 flex items-center justify-center",
70
+ __self: _this,
71
+ __source: {
72
+ fileName: _jsxFileName,
73
+ lineNumber: 26,
74
+ columnNumber: 9
75
+ }
76
+ }, /*#__PURE__*/React.createElement(FallbackComponentImage, {
77
+ __self: _this,
78
+ __source: {
79
+ fileName: _jsxFileName,
80
+ lineNumber: 27,
81
+ columnNumber: 11
82
+ }
83
+ })), /*#__PURE__*/React.createElement(Typography, {
84
+ className: "mb-4",
85
+ component: "h2",
86
+ style: "h2",
87
+ weight: "semibold",
88
+ __self: _this,
89
+ __source: {
90
+ fileName: _jsxFileName,
91
+ lineNumber: 29,
92
+ columnNumber: 9
93
+ }
94
+ }, t("neetoCommons.fallbackComponent.somethingWentWrong")), /*#__PURE__*/React.createElement(Typography, {
95
+ className: "neeto-ui-text-gray-600 mb-8",
96
+ component: "p",
97
+ style: "body1",
98
+ weight: "normal",
99
+ __self: _this,
100
+ __source: {
101
+ fileName: _jsxFileName,
102
+ lineNumber: 37,
103
+ columnNumber: 9
104
+ }
105
+ }, /*#__PURE__*/React.createElement(Trans, {
106
+ i18nKey: "neetoCommons.fallbackComponent.description",
107
+ components: {
108
+ reloading: /*#__PURE__*/React.createElement(Button, {
109
+ style: "link",
110
+ onClick: function onClick() {
111
+ return window.location.reload();
112
+ },
113
+ __self: _this,
114
+ __source: {
115
+ fileName: _jsxFileName,
116
+ lineNumber: 47,
117
+ columnNumber: 17
118
+ }
119
+ }),
120
+ contactus: /*#__PURE__*/React.createElement(Button, {
121
+ style: "link",
122
+ onClick: function onClick() {
123
+ var _window$NeetoChat, _window$NeetoChat$con, _window$NeetoChat2, _window$NeetoChat2$co;
124
+ (_window$NeetoChat = window.NeetoChat) === null || _window$NeetoChat === void 0 ? void 0 : (_window$NeetoChat$con = _window$NeetoChat.contextualHelp) === null || _window$NeetoChat$con === void 0 ? void 0 : _window$NeetoChat$con.maximizeWidget();
125
+ (_window$NeetoChat2 = window.NeetoChat) === null || _window$NeetoChat2 === void 0 ? void 0 : (_window$NeetoChat2$co = _window$NeetoChat2.contextualHelp) === null || _window$NeetoChat2$co === void 0 ? void 0 : _window$NeetoChat2$co.openWidget();
126
+ },
127
+ __self: _this,
128
+ __source: {
129
+ fileName: _jsxFileName,
130
+ lineNumber: 50,
131
+ columnNumber: 17
132
+ }
133
+ })
134
+ },
135
+ __self: _this,
136
+ __source: {
137
+ fileName: _jsxFileName,
138
+ lineNumber: 43,
139
+ columnNumber: 11
140
+ }
141
+ }))));
142
+ };
143
+ export default FallbackComponent;
144
+ //# sourceMappingURL=FallbackComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FallbackComponent.js","names":["React","useEffect","Button","Typography","isNil","Trans","useTranslation","FallbackComponentImage","props","createElement","d","fill","defaultProps","width","height","viewBox","xmlns","FallbackComponent","_useTranslation","t","listener","e","_e$target","state","window","location","href","target","addEventListener","removeEventListener","className","__self","_this","__source","fileName","_jsxFileName","lineNumber","columnNumber","component","style","weight","i18nKey","components","reloading","onClick","reload","contactus","_window$NeetoChat","_window$NeetoChat$con","_window$NeetoChat2","_window$NeetoChat2$co","NeetoChat","contextualHelp","maximizeWidget","openWidget"],"sources":["../../../src/react-utils/HoneybadgerErrorBoundary/FallbackComponent.jsx"],"sourcesContent":["import React, { useEffect } from \"react\";\n\nimport { Button, Typography } from \"neetoui\";\nimport { isNil } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\n// eslint-disable-next-line import/extensions\nimport FallbackComponentImage from \"assets/images/fallback-component.svg\";\n\nconst FallbackComponent = () => {\n const { t } = useTranslation();\n\n useEffect(() => {\n const listener = e => {\n if (isNil(e.state)) return;\n window.location.href = e.target?.location.href;\n };\n window.addEventListener(\"popstate\", listener);\n\n return () => window.removeEventListener(\"popstate\", listener);\n }, []);\n\n return (\n <div className=\"flex h-screen w-full flex-row items-start justify-start\">\n <div className=\"m-auto text-center\">\n <div className=\"m-auto mb-8 flex items-center justify-center\">\n <FallbackComponentImage />\n </div>\n <Typography\n className=\"mb-4\"\n component=\"h2\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {t(\"neetoCommons.fallbackComponent.somethingWentWrong\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-gray-600 mb-8\"\n component=\"p\"\n style=\"body1\"\n weight=\"normal\"\n >\n <Trans\n i18nKey=\"neetoCommons.fallbackComponent.description\"\n components={{\n reloading: (\n <Button style=\"link\" onClick={() => window.location.reload()} />\n ),\n contactus: (\n <Button\n style=\"link\"\n onClick={() => {\n window.NeetoChat?.contextualHelp?.maximizeWidget();\n window.NeetoChat?.contextualHelp?.openWidget();\n }}\n />\n ),\n }}\n />\n </Typography>\n </div>\n </div>\n );\n};\n\nexport default FallbackComponent;\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export var IGNORABLE_ERRORS_REGEX = /(window\.requestAnimationFrame|ResizeObserver|ChunkLoadError|window\.webkit\.messageHandlers|Request aborted|Network Error)/;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","names":["IGNORABLE_ERRORS_REGEX"],"sources":["../../../src/react-utils/HoneybadgerErrorBoundary/constants.js"],"sourcesContent":["export const IGNORABLE_ERRORS_REGEX =\n /(window\\.requestAnimationFrame|ResizeObserver|ChunkLoadError|window\\.webkit\\.messageHandlers|Request aborted|Network Error)/;\n"],"mappings":"AAAA,OAAO,IAAMA,sBAAsB,GACjC,6HAA6H"}
@@ -0,0 +1,52 @@
1
+ var _jsxFileName = "/home/runner/work/neeto-commons-frontend/neeto-commons-frontend/src/react-utils/HoneybadgerErrorBoundary/index.jsx",
2
+ _this = this;
3
+ import React from "react";
4
+ import { Honeybadger, HoneybadgerErrorBoundary as ErrorBoundary } from "@honeybadger-io/react";
5
+ import { IGNORABLE_ERRORS_REGEX } from "./constants";
6
+ import FallbackComponent from "./FallbackComponent";
7
+ import { attachContext, getSessionReplayUrl } from "./utils";
8
+
9
+ /** @type {import("neetocommons/react-utils").HoneybadgerErrorBoundary} */
10
+ var HoneybadgerErrorBoundary = function HoneybadgerErrorBoundary(_ref) {
11
+ var children = _ref.children,
12
+ _ref$ErrorComponent = _ref.ErrorComponent,
13
+ ErrorComponent = _ref$ErrorComponent === void 0 ? FallbackComponent : _ref$ErrorComponent,
14
+ _ref$filterErrors = _ref.filterErrors,
15
+ filterErrors = _ref$filterErrors === void 0 ? undefined : _ref$filterErrors;
16
+ Honeybadger.beforeNotify(function (notice) {
17
+ var _globalProps$user;
18
+ if (!notice) return false;
19
+ var isIgnorable = IGNORABLE_ERRORS_REGEX.test(notice.message) || notice.stack.includes("chrome-extension://") || (filterErrors === null || filterErrors === void 0 ? void 0 : filterErrors(notice)) === false;
20
+ if (isIgnorable) return false;
21
+ var context = {};
22
+ var user = (_globalProps$user = globalProps.user) === null || _globalProps$user === void 0 ? void 0 : _globalProps$user.email;
23
+ if (user) context.user = user;
24
+ var sessionReplay = getSessionReplayUrl();
25
+ if (sessionReplay) context.sessionReplay = sessionReplay;
26
+ attachContext(notice, context);
27
+ return true;
28
+ });
29
+ var honeybadger = Honeybadger.configure({
30
+ apiKey: globalProps.honeybadgerApiKey,
31
+ environment: globalProps.railsEnv,
32
+ revision: globalProps.honeybadgerRevision,
33
+ developmentEnvironments: ["development", "test"],
34
+ enableUncaught: true,
35
+ async: true,
36
+ breadcrumbsEnabled: true,
37
+ projectRoot: "webpack:///./",
38
+ enableUnhandledRejection: false
39
+ });
40
+ return /*#__PURE__*/React.createElement(ErrorBoundary, {
41
+ ErrorComponent: ErrorComponent,
42
+ honeybadger: honeybadger,
43
+ __self: _this,
44
+ __source: {
45
+ fileName: _jsxFileName,
46
+ lineNumber: 54,
47
+ columnNumber: 5
48
+ }
49
+ }, children);
50
+ };
51
+ export default HoneybadgerErrorBoundary;
52
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["React","Honeybadger","HoneybadgerErrorBoundary","ErrorBoundary","IGNORABLE_ERRORS_REGEX","FallbackComponent","attachContext","getSessionReplayUrl","_ref","children","_ref$ErrorComponent","ErrorComponent","_ref$filterErrors","filterErrors","undefined","beforeNotify","notice","_globalProps$user","isIgnorable","test","message","stack","includes","context","user","globalProps","email","sessionReplay","honeybadger","configure","apiKey","honeybadgerApiKey","environment","railsEnv","revision","honeybadgerRevision","developmentEnvironments","enableUncaught","async","breadcrumbsEnabled","projectRoot","enableUnhandledRejection","createElement","__self","_this","__source","fileName","_jsxFileName","lineNumber","columnNumber"],"sources":["../../../src/react-utils/HoneybadgerErrorBoundary/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport {\n Honeybadger,\n HoneybadgerErrorBoundary as ErrorBoundary,\n} from \"@honeybadger-io/react\";\n\nimport { IGNORABLE_ERRORS_REGEX } from \"./constants\";\nimport FallbackComponent from \"./FallbackComponent\";\nimport { attachContext, getSessionReplayUrl } from \"./utils\";\n\n/** @type {import(\"neetocommons/react-utils\").HoneybadgerErrorBoundary} */\nconst HoneybadgerErrorBoundary = ({\n children,\n ErrorComponent = FallbackComponent,\n filterErrors = undefined,\n}) => {\n Honeybadger.beforeNotify(notice => {\n if (!notice) return false;\n\n const isIgnorable =\n IGNORABLE_ERRORS_REGEX.test(notice.message) ||\n notice.stack.includes(\"chrome-extension://\") ||\n filterErrors?.(notice) === false;\n\n if (isIgnorable) return false;\n\n const context = {};\n\n const user = globalProps.user?.email;\n if (user) context.user = user;\n\n const sessionReplay = getSessionReplayUrl();\n if (sessionReplay) context.sessionReplay = sessionReplay;\n\n attachContext(notice, context);\n\n return true;\n });\n\n const honeybadger = Honeybadger.configure({\n apiKey: globalProps.honeybadgerApiKey,\n environment: globalProps.railsEnv,\n revision: globalProps.honeybadgerRevision,\n developmentEnvironments: [\"development\", \"test\"],\n enableUncaught: true,\n async: true,\n breadcrumbsEnabled: true,\n projectRoot: \"webpack:///./\",\n enableUnhandledRejection: false,\n });\n\n return (\n <ErrorBoundary ErrorComponent={ErrorComponent} honeybadger={honeybadger}>\n {children}\n </ErrorBoundary>\n );\n};\n\nexport default HoneybadgerErrorBoundary;\n"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SACEC,WAAW,EACXC,wBAAwB,IAAIC,aAAa,QACpC,uBAAuB;AAE9B,SAASC,sBAAsB;AAC/B,OAAOC,iBAAiB;AACxB,SAASC,aAAa,EAAEC,mBAAmB;;AAE3C;AACA,IAAML,wBAAwB,GAAG,SAA3BA,wBAAwBA,CAAAM,IAAA,EAIxB;EAAA,IAHJC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAAC,mBAAA,GAAAF,IAAA,CACRG,cAAc;IAAdA,cAAc,GAAAD,mBAAA,cAAGL,iBAAiB,GAAAK,mBAAA;IAAAE,iBAAA,GAAAJ,IAAA,CAClCK,YAAY;IAAZA,YAAY,GAAAD,iBAAA,cAAGE,SAAS,GAAAF,iBAAA;EAExBX,WAAW,CAACc,YAAY,CAAC,UAAAC,MAAM,EAAI;IAAA,IAAAC,iBAAA;IACjC,IAAI,CAACD,MAAM,EAAE,OAAO,KAAK;IAEzB,IAAME,WAAW,GACfd,sBAAsB,CAACe,IAAI,CAACH,MAAM,CAACI,OAAO,CAAC,IAC3CJ,MAAM,CAACK,KAAK,CAACC,QAAQ,CAAC,qBAAqB,CAAC,IAC5C,CAAAT,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAGG,MAAM,CAAC,MAAK,KAAK;IAElC,IAAIE,WAAW,EAAE,OAAO,KAAK;IAE7B,IAAMK,OAAO,GAAG,CAAC,CAAC;IAElB,IAAMC,IAAI,IAAAP,iBAAA,GAAGQ,WAAW,CAACD,IAAI,cAAAP,iBAAA,uBAAhBA,iBAAA,CAAkBS,KAAK;IACpC,IAAIF,IAAI,EAAED,OAAO,CAACC,IAAI,GAAGA,IAAI;IAE7B,IAAMG,aAAa,GAAGpB,mBAAmB,EAAE;IAC3C,IAAIoB,aAAa,EAAEJ,OAAO,CAACI,aAAa,GAAGA,aAAa;IAExDrB,aAAa,CAACU,MAAM,EAAEO,OAAO,CAAC;IAE9B,OAAO,IAAI;EACb,CAAC,CAAC;EAEF,IAAMK,WAAW,GAAG3B,WAAW,CAAC4B,SAAS,CAAC;IACxCC,MAAM,EAAEL,WAAW,CAACM,iBAAiB;IACrCC,WAAW,EAAEP,WAAW,CAACQ,QAAQ;IACjCC,QAAQ,EAAET,WAAW,CAACU,mBAAmB;IACzCC,uBAAuB,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC;IAChDC,cAAc,EAAE,IAAI;IACpBC,KAAK,EAAE,IAAI;IACXC,kBAAkB,EAAE,IAAI;IACxBC,WAAW,EAAE,eAAe;IAC5BC,wBAAwB,EAAE;EAC5B,CAAC,CAAC;EAEF,oBACEzC,KAAA,CAAA0C,aAAA,CAACvC,aAAa;IAACQ,cAAc,EAAEA,cAAe;IAACiB,WAAW,EAAEA,WAAY;IAAAe,MAAA,EAAAC,KAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAC,YAAA;MAAAC,UAAA;MAAAC,YAAA;IAAA;EAAA,GACrExC,QAAQ,CACK;AAEpB,CAAC;AAED,eAAeP,wBAAwB"}
@@ -0,0 +1,9 @@
1
+ export var attachContext = function attachContext(notice, context) {
2
+ if (notice.context) Object.assign(notice.context, context);else notice.context = context;
3
+ };
4
+ export var getSessionReplayUrl = function getSessionReplayUrl() {
5
+ var storage = sessionStorage.getItem("neeto-replay-widget--session");
6
+ var currentTimestamp = new Date().getTime();
7
+ return storage ? "".concat(JSON.parse(storage).url, "?goto=").concat(currentTimestamp) : "";
8
+ };
9
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","names":["attachContext","notice","context","Object","assign","getSessionReplayUrl","storage","sessionStorage","getItem","currentTimestamp","Date","getTime","concat","JSON","parse","url"],"sources":["../../../src/react-utils/HoneybadgerErrorBoundary/utils.js"],"sourcesContent":["export const attachContext = (notice, context) => {\n if (notice.context) Object.assign(notice.context, context);\n else notice.context = context;\n};\n\nexport const getSessionReplayUrl = () => {\n const storage = sessionStorage.getItem(\"neeto-replay-widget--session\");\n const currentTimestamp = new Date().getTime();\n\n return storage ? `${JSON.parse(storage).url}?goto=${currentTimestamp}` : \"\";\n};\n"],"mappings":"AAAA,OAAO,IAAMA,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,MAAM,EAAEC,OAAO,EAAK;EAChD,IAAID,MAAM,CAACC,OAAO,EAAEC,MAAM,CAACC,MAAM,CAACH,MAAM,CAACC,OAAO,EAAEA,OAAO,CAAC,CAAC,KACtDD,MAAM,CAACC,OAAO,GAAGA,OAAO;AAC/B,CAAC;AAED,OAAO,IAAMG,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAA,EAAS;EACvC,IAAMC,OAAO,GAAGC,cAAc,CAACC,OAAO,CAAC,8BAA8B,CAAC;EACtE,IAAMC,gBAAgB,GAAG,IAAIC,IAAI,EAAE,CAACC,OAAO,EAAE;EAE7C,OAAOL,OAAO,MAAAM,MAAA,CAAMC,IAAI,CAACC,KAAK,CAACR,OAAO,CAAC,CAACS,GAAG,YAAAH,MAAA,CAASH,gBAAgB,IAAK,EAAE;AAC7E,CAAC"}
@@ -0,0 +1,72 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ var _excluded = ["condition", "redirectRoute", "errorPage", "permissions"];
4
+ var _jsxFileName = "/home/runner/work/neeto-commons-frontend/neeto-commons-frontend/src/react-utils/PrivateRoute.jsx",
5
+ _this = this;
6
+ import React from "react";
7
+ import ErrorPage from "@bigbinary/neeto-molecules/ErrorPage";
8
+ import { __, includes } from "ramda";
9
+ import { Redirect, Route } from "react-router-dom";
10
+ var PrivateRoute = function PrivateRoute(_ref) {
11
+ var _ref$condition = _ref.condition,
12
+ condition = _ref$condition === void 0 ? globalProps.authenticated : _ref$condition,
13
+ _ref$redirectRoute = _ref.redirectRoute,
14
+ redirectRoute = _ref$redirectRoute === void 0 ? undefined : _ref$redirectRoute,
15
+ _ref$errorPage = _ref.errorPage,
16
+ errorPage = _ref$errorPage === void 0 ? undefined : _ref$errorPage,
17
+ _ref$permissions = _ref.permissions,
18
+ permissions = _ref$permissions === void 0 ? undefined : _ref$permissions,
19
+ props = _objectWithoutProperties(_ref, _excluded);
20
+ if (condition) {
21
+ if (permissions) {
22
+ return globalProps.permissions.some(includes(__, permissions)) ? /*#__PURE__*/React.createElement(Route, _extends({}, props, {
23
+ __self: _this,
24
+ __source: {
25
+ fileName: _jsxFileName,
26
+ lineNumber: 17,
27
+ columnNumber: 9
28
+ }
29
+ })) : errorPage || /*#__PURE__*/React.createElement(ErrorPage, {
30
+ status: 403,
31
+ __self: _this,
32
+ __source: {
33
+ fileName: _jsxFileName,
34
+ lineNumber: 19,
35
+ columnNumber: 22
36
+ }
37
+ });
38
+ }
39
+ return /*#__PURE__*/React.createElement(Route, _extends({}, props, {
40
+ __self: _this,
41
+ __source: {
42
+ fileName: _jsxFileName,
43
+ lineNumber: 23,
44
+ columnNumber: 12
45
+ }
46
+ }));
47
+ }
48
+ if (redirectRoute) {
49
+ return /*#__PURE__*/React.createElement(Redirect, {
50
+ to: {
51
+ pathname: redirectRoute
52
+ },
53
+ __self: _this,
54
+ __source: {
55
+ fileName: _jsxFileName,
56
+ lineNumber: 27,
57
+ columnNumber: 12
58
+ }
59
+ });
60
+ }
61
+ return errorPage || /*#__PURE__*/React.createElement(ErrorPage, {
62
+ status: 403,
63
+ __self: _this,
64
+ __source: {
65
+ fileName: _jsxFileName,
66
+ lineNumber: 30,
67
+ columnNumber: 23
68
+ }
69
+ });
70
+ };
71
+ export default PrivateRoute;
72
+ //# sourceMappingURL=PrivateRoute.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrivateRoute.js","names":["React","ErrorPage","__","includes","Redirect","Route","PrivateRoute","_ref","_ref$condition","condition","globalProps","authenticated","_ref$redirectRoute","redirectRoute","undefined","_ref$errorPage","errorPage","_ref$permissions","permissions","props","_objectWithoutProperties","_excluded","some","createElement","_extends","__self","_this","__source","fileName","_jsxFileName","lineNumber","columnNumber","status","to","pathname"],"sources":["../../src/react-utils/PrivateRoute.jsx"],"sourcesContent":["import React from \"react\";\n\nimport ErrorPage from \"neetomolecules/ErrorPage\";\nimport { __, includes } from \"ramda\";\nimport { Redirect, Route } from \"react-router-dom\";\n\nconst PrivateRoute = ({\n condition = globalProps.authenticated,\n redirectRoute = undefined,\n errorPage = undefined,\n permissions = undefined,\n ...props\n}) => {\n if (condition) {\n if (permissions) {\n return globalProps.permissions.some(includes(__, permissions)) ? (\n <Route {...props} />\n ) : (\n errorPage || <ErrorPage status={403} />\n );\n }\n\n return <Route {...props} />;\n }\n\n if (redirectRoute) {\n return <Redirect to={{ pathname: redirectRoute }} />;\n }\n\n return errorPage || <ErrorPage status={403} />;\n};\n\nexport default PrivateRoute;\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,SAAS;AAChB,SAASC,EAAE,EAAEC,QAAQ,QAAQ,OAAO;AACpC,SAASC,QAAQ,EAAEC,KAAK,QAAQ,kBAAkB;AAElD,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAAC,IAAA,EAMZ;EAAA,IAAAC,cAAA,GAAAD,IAAA,CALJE,SAAS;IAATA,SAAS,GAAAD,cAAA,cAAGE,WAAW,CAACC,aAAa,GAAAH,cAAA;IAAAI,kBAAA,GAAAL,IAAA,CACrCM,aAAa;IAAbA,aAAa,GAAAD,kBAAA,cAAGE,SAAS,GAAAF,kBAAA;IAAAG,cAAA,GAAAR,IAAA,CACzBS,SAAS;IAATA,SAAS,GAAAD,cAAA,cAAGD,SAAS,GAAAC,cAAA;IAAAE,gBAAA,GAAAV,IAAA,CACrBW,WAAW;IAAXA,WAAW,GAAAD,gBAAA,cAAGH,SAAS,GAAAG,gBAAA;IACpBE,KAAK,GAAAC,wBAAA,CAAAb,IAAA,EAAAc,SAAA;EAER,IAAIZ,SAAS,EAAE;IACb,IAAIS,WAAW,EAAE;MACf,OAAOR,WAAW,CAACQ,WAAW,CAACI,IAAI,CAACnB,QAAQ,CAACD,EAAE,EAAEgB,WAAW,CAAC,CAAC,gBAC5DlB,KAAA,CAAAuB,aAAA,CAAClB,KAAK,EAAAmB,QAAA,KAAKL,KAAK;QAAAM,MAAA,EAAAC,KAAA;QAAAC,QAAA;UAAAC,QAAA,EAAAC,YAAA;UAAAC,UAAA;UAAAC,YAAA;QAAA;MAAA,GAAI,GAEpBf,SAAS,iBAAIhB,KAAA,CAAAuB,aAAA,CAACtB,SAAS;QAAC+B,MAAM,EAAE,GAAI;QAAAP,MAAA,EAAAC,KAAA;QAAAC,QAAA;UAAAC,QAAA,EAAAC,YAAA;UAAAC,UAAA;UAAAC,YAAA;QAAA;MAAA,EACrC;IACH;IAEA,oBAAO/B,KAAA,CAAAuB,aAAA,CAAClB,KAAK,EAAAmB,QAAA,KAAKL,KAAK;MAAAM,MAAA,EAAAC,KAAA;MAAAC,QAAA;QAAAC,QAAA,EAAAC,YAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA;IAAA,GAAI;EAC7B;EAEA,IAAIlB,aAAa,EAAE;IACjB,oBAAOb,KAAA,CAAAuB,aAAA,CAACnB,QAAQ;MAAC6B,EAAE,EAAE;QAAEC,QAAQ,EAAErB;MAAc,CAAE;MAAAY,MAAA,EAAAC,KAAA;MAAAC,QAAA;QAAAC,QAAA,EAAAC,YAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA;IAAA,EAAG;EACtD;EAEA,OAAOf,SAAS,iBAAIhB,KAAA,CAAAuB,aAAA,CAACtB,SAAS;IAAC+B,MAAM,EAAE,GAAI;IAAAP,MAAA,EAAAC,KAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAC,YAAA;MAAAC,UAAA;MAAAC,YAAA;IAAA;EAAA,EAAG;AAChD,CAAC;AAED,eAAezB,YAAY"}
@@ -0,0 +1,3 @@
1
+ export var QUERY_CACHE_NAME_SPACE = "queryCache";
2
+ export var NEETO_APPS_LIST_STALE_TIME = 30 * 24 * 60 * 60 * 1000; // 30 days
3
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","names":["QUERY_CACHE_NAME_SPACE","NEETO_APPS_LIST_STALE_TIME"],"sources":["../../../src/react-utils/constants/constants.js"],"sourcesContent":["export const QUERY_CACHE_NAME_SPACE = \"queryCache\";\nexport const NEETO_APPS_LIST_STALE_TIME = 30 * 24 * 60 * 60 * 1000; // 30 days\n"],"mappings":"AAAA,OAAO,IAAMA,sBAAsB,GAAG,YAAY;AAClD,OAAO,IAAMC,0BAA0B,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from "./constants";
2
+ export * from "./query";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/react-utils/constants/index.js"],"sourcesContent":["export * from \"./constants\";\nexport * from \"./query\";\n"],"mappings":"AAAA;AACA"}
@@ -0,0 +1,4 @@
1
+ export var QUERY_KEYS = {
2
+ NEETO_APPS_LIST: "neeto-apps-list"
3
+ };
4
+ //# sourceMappingURL=query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query.js","names":["QUERY_KEYS","NEETO_APPS_LIST"],"sources":["../../../src/react-utils/constants/query.js"],"sourcesContent":["export const QUERY_KEYS = { NEETO_APPS_LIST: \"neeto-apps-list\" };\n"],"mappings":"AAAA,OAAO,IAAMA,UAAU,GAAG;EAAEC,eAAe,EAAE;AAAkB,CAAC"}
@@ -0,0 +1,33 @@
1
+ // components
2
+ export { default as HoneybadgerErrorBoundary } from "./HoneybadgerErrorBoundary";
3
+ export { default as PrivateRoute } from "./PrivateRoute";
4
+
5
+ // hooks
6
+ export { default as useDebounce } from "./useDebounce";
7
+ export * from "./useDisplayErrorPage";
8
+ export { default as useDisplayErrorPage } from "./useDisplayErrorPage";
9
+ export { default as useFetchNeetoApps } from "./useFetchNeetoApps";
10
+ export { default as useFieldSubmit } from "./useFieldSubmit";
11
+ export { default as useFuncDebounce } from "./useFuncDebounce";
12
+ export { default as useHotKeys } from "./useHotKeys";
13
+ export { default as useIsElementVisibleInDom } from "./useIsElementVisibleInDom";
14
+ export { default as useKeyboardShortcutsPaneState } from "./useKeyboardShortcutsPaneState";
15
+ export { default as useLocalStorage } from "./useLocalStorage";
16
+ export { default as useMutationWithInvalidation } from "./useMutationWithInvalidation";
17
+ export { default as useOnClickOutside } from "./useOnClickOutside";
18
+ export { default as usePersistedQuery } from "./usePersistedQuery";
19
+ export { default as usePrevious } from "./usePrevious";
20
+ export { default as useQueryParams } from "./useQueryParams";
21
+ export * from "./useRegisterNavigationCheckpoint";
22
+ export { default as useRegisterNavigationCheckpoint } from "./useRegisterNavigationCheckpoint";
23
+ export { default as useStateWithDependency } from "./useStateWithDependency";
24
+ export { default as useTimer } from "./useTimer";
25
+ export { default as useUpdateEffect } from "./useUpdateEffect";
26
+
27
+ // utils
28
+ export * from "./BrowserPushNotifications";
29
+ export * from "./metaClick";
30
+ export { default as withImmutableActions } from "./withImmutableActions";
31
+ export { default as withT } from "./withT";
32
+ export { default as withTitle } from "./withTitle";
33
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["default","HoneybadgerErrorBoundary","PrivateRoute","useDebounce","useDisplayErrorPage","useFetchNeetoApps","useFieldSubmit","useFuncDebounce","useHotKeys","useIsElementVisibleInDom","useKeyboardShortcutsPaneState","useLocalStorage","useMutationWithInvalidation","useOnClickOutside","usePersistedQuery","usePrevious","useQueryParams","useRegisterNavigationCheckpoint","useStateWithDependency","useTimer","useUpdateEffect","withImmutableActions","withT","withTitle"],"sources":["../../src/react-utils/index.js"],"sourcesContent":["// components\nexport { default as HoneybadgerErrorBoundary } from \"./HoneybadgerErrorBoundary\";\nexport { default as PrivateRoute } from \"./PrivateRoute\";\n\n// hooks\nexport { default as useDebounce } from \"./useDebounce\";\nexport * from \"./useDisplayErrorPage\";\nexport { default as useDisplayErrorPage } from \"./useDisplayErrorPage\";\nexport { default as useFetchNeetoApps } from \"./useFetchNeetoApps\";\nexport { default as useFieldSubmit } from \"./useFieldSubmit\";\nexport { default as useFuncDebounce } from \"./useFuncDebounce\";\nexport { default as useHotKeys } from \"./useHotKeys\";\nexport { default as useIsElementVisibleInDom } from \"./useIsElementVisibleInDom\";\nexport { default as useKeyboardShortcutsPaneState } from \"./useKeyboardShortcutsPaneState\";\nexport { default as useLocalStorage } from \"./useLocalStorage\";\nexport { default as useMutationWithInvalidation } from \"./useMutationWithInvalidation\";\nexport { default as useOnClickOutside } from \"./useOnClickOutside\";\nexport { default as usePersistedQuery } from \"./usePersistedQuery\";\nexport { default as usePrevious } from \"./usePrevious\";\nexport { default as useQueryParams } from \"./useQueryParams\";\nexport * from \"./useRegisterNavigationCheckpoint\";\nexport { default as useRegisterNavigationCheckpoint } from \"./useRegisterNavigationCheckpoint\";\nexport { default as useStateWithDependency } from \"./useStateWithDependency\";\nexport { default as useTimer } from \"./useTimer\";\nexport { default as useUpdateEffect } from \"./useUpdateEffect\";\n\n// utils\nexport * from \"./BrowserPushNotifications\";\nexport * from \"./metaClick\";\nexport { default as withImmutableActions } from \"./withImmutableActions\";\nexport { default as withT } from \"./withT\";\nexport { default as withTitle } from \"./withTitle\";\n"],"mappings":"AAAA;AACA,SAASA,OAAO,IAAIC,wBAAwB;AAC5C,SAASD,OAAO,IAAIE,YAAY;;AAEhC;AACA,SAASF,OAAO,IAAIG,WAAW;AAC/B;AACA,SAASH,OAAO,IAAII,mBAAmB;AACvC,SAASJ,OAAO,IAAIK,iBAAiB;AACrC,SAASL,OAAO,IAAIM,cAAc;AAClC,SAASN,OAAO,IAAIO,eAAe;AACnC,SAASP,OAAO,IAAIQ,UAAU;AAC9B,SAASR,OAAO,IAAIS,wBAAwB;AAC5C,SAAST,OAAO,IAAIU,6BAA6B;AACjD,SAASV,OAAO,IAAIW,eAAe;AACnC,SAASX,OAAO,IAAIY,2BAA2B;AAC/C,SAASZ,OAAO,IAAIa,iBAAiB;AACrC,SAASb,OAAO,IAAIc,iBAAiB;AACrC,SAASd,OAAO,IAAIe,WAAW;AAC/B,SAASf,OAAO,IAAIgB,cAAc;AAClC;AACA,SAAShB,OAAO,IAAIiB,+BAA+B;AACnD,SAASjB,OAAO,IAAIkB,sBAAsB;AAC1C,SAASlB,OAAO,IAAImB,QAAQ;AAC5B,SAASnB,OAAO,IAAIoB,eAAe;;AAEnC;AACA;AACA;AACA,SAASpB,OAAO,IAAIqB,oBAAoB;AACxC,SAASrB,OAAO,IAAIsB,KAAK;AACzB,SAAStB,OAAO,IAAIuB,SAAS"}
@@ -0,0 +1,8 @@
1
+ import { curry } from "ramda";
2
+ export var handleMetaClick = curry(function (history, params, event) {
3
+ return isMetaKeyPressed(event) ? window.open(params.pathname || params, "_blank") : history.push(params);
4
+ });
5
+ export var isMetaKeyPressed = function isMetaKeyPressed(event) {
6
+ return !!(event !== null && event !== void 0 && event.ctrlKey || event !== null && event !== void 0 && event.metaKey);
7
+ };
8
+ //# sourceMappingURL=metaClick.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metaClick.js","names":["curry","handleMetaClick","history","params","event","isMetaKeyPressed","window","open","pathname","push","ctrlKey","metaKey"],"sources":["../../src/react-utils/metaClick.js"],"sourcesContent":["import { curry } from \"ramda\";\n\nexport const handleMetaClick = curry((history, params, event) =>\n isMetaKeyPressed(event)\n ? window.open(params.pathname || params, \"_blank\")\n : history.push(params)\n);\n\nexport const isMetaKeyPressed = event => !!(event?.ctrlKey || event?.metaKey);\n"],"mappings":"AAAA,SAASA,KAAK,QAAQ,OAAO;AAE7B,OAAO,IAAMC,eAAe,GAAGD,KAAK,CAAC,UAACE,OAAO,EAAEC,MAAM,EAAEC,KAAK;EAAA,OAC1DC,gBAAgB,CAACD,KAAK,CAAC,GACnBE,MAAM,CAACC,IAAI,CAACJ,MAAM,CAACK,QAAQ,IAAIL,MAAM,EAAE,QAAQ,CAAC,GAChDD,OAAO,CAACO,IAAI,CAACN,MAAM,CAAC;AAAA,EACzB;AAED,OAAO,IAAME,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGD,KAAK;EAAA,OAAI,CAAC,EAAEA,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEM,OAAO,IAAIN,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEO,OAAO,CAAC;AAAA"}
@@ -0,0 +1,20 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ import { useState, useEffect } from "react";
3
+ var useDebounce = function useDebounce(value) {
4
+ var delay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 350;
5
+ var _useState = useState(value),
6
+ _useState2 = _slicedToArray(_useState, 2),
7
+ debouncedValue = _useState2[0],
8
+ setDebouncedValue = _useState2[1];
9
+ useEffect(function () {
10
+ var handler = setTimeout(function () {
11
+ setDebouncedValue(value);
12
+ }, delay);
13
+ return function () {
14
+ clearTimeout(handler);
15
+ };
16
+ }, [value]);
17
+ return debouncedValue;
18
+ };
19
+ export default useDebounce;
20
+ //# sourceMappingURL=useDebounce.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDebounce.js","names":["useState","useEffect","useDebounce","value","delay","arguments","length","undefined","_useState","_useState2","_slicedToArray","debouncedValue","setDebouncedValue","handler","setTimeout","clearTimeout"],"sources":["../../src/react-utils/useDebounce.js"],"sourcesContent":["import { useState, useEffect } from \"react\";\n\nconst useDebounce = (value, delay = 350) => {\n const [debouncedValue, setDebouncedValue] = useState(value);\n\n useEffect(() => {\n const handler = setTimeout(() => {\n setDebouncedValue(value);\n }, delay);\n\n return () => {\n clearTimeout(handler);\n };\n }, [value]);\n\n return debouncedValue;\n};\n\nexport default useDebounce;\n"],"mappings":";AAAA,SAASA,QAAQ,EAAEC,SAAS,QAAQ,OAAO;AAE3C,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAIC,KAAK,EAAkB;EAAA,IAAhBC,KAAK,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,GAAG;EACrC,IAAAG,SAAA,GAA4CR,QAAQ,CAACG,KAAK,CAAC;IAAAM,UAAA,GAAAC,cAAA,CAAAF,SAAA;IAApDG,cAAc,GAAAF,UAAA;IAAEG,iBAAiB,GAAAH,UAAA;EAExCR,SAAS,CAAC,YAAM;IACd,IAAMY,OAAO,GAAGC,UAAU,CAAC,YAAM;MAC/BF,iBAAiB,CAACT,KAAK,CAAC;IAC1B,CAAC,EAAEC,KAAK,CAAC;IAET,OAAO,YAAM;MACXW,YAAY,CAACF,OAAO,CAAC;IACvB,CAAC;EACH,CAAC,EAAE,CAACV,KAAK,CAAC,CAAC;EAEX,OAAOQ,cAAc;AACvB,CAAC;AAED,eAAeT,WAAW"}
@@ -0,0 +1,15 @@
1
+ import { prop } from "ramda";
2
+ import { create } from "zustand";
3
+ var useDisplayErrorPage = function useDisplayErrorPage() {
4
+ return useErrorDisplayStore(prop("showErrorPage"));
5
+ };
6
+ export var useErrorDisplayStore = create(function () {
7
+ return {
8
+ showErrorPage: false,
9
+ statusCode: 404,
10
+ failedApiUrl: "",
11
+ failedApiPath: ""
12
+ };
13
+ });
14
+ export default useDisplayErrorPage;
15
+ //# sourceMappingURL=useDisplayErrorPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDisplayErrorPage.js","names":["prop","create","useDisplayErrorPage","useErrorDisplayStore","showErrorPage","statusCode","failedApiUrl","failedApiPath"],"sources":["../../src/react-utils/useDisplayErrorPage.js"],"sourcesContent":["import { prop } from \"ramda\";\nimport { create } from \"zustand\";\n\nconst useDisplayErrorPage = () => useErrorDisplayStore(prop(\"showErrorPage\"));\n\nexport const useErrorDisplayStore = create(() => ({\n showErrorPage: false,\n statusCode: 404,\n failedApiUrl: \"\",\n failedApiPath: \"\",\n}));\n\nexport default useDisplayErrorPage;\n"],"mappings":"AAAA,SAASA,IAAI,QAAQ,OAAO;AAC5B,SAASC,MAAM,QAAQ,SAAS;AAEhC,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAA;EAAA,OAASC,oBAAoB,CAACH,IAAI,CAAC,eAAe,CAAC,CAAC;AAAA;AAE7E,OAAO,IAAMG,oBAAoB,GAAGF,MAAM,CAAC;EAAA,OAAO;IAChDG,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,GAAG;IACfC,YAAY,EAAE,EAAE;IAChBC,aAAa,EAAE;EACjB,CAAC;AAAA,CAAC,CAAC;AAEH,eAAeL,mBAAmB"}
@@ -0,0 +1,9 @@
1
+ import axios from "axios";
2
+ var fetch = function fetch() {
3
+ return axios.get("/api/v1/neeto_apps");
4
+ };
5
+ var neetoAppsApi = {
6
+ fetch: fetch
7
+ };
8
+ export default neetoAppsApi;
9
+ //# sourceMappingURL=neeto_apps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"neeto_apps.js","names":["axios","fetch","get","neetoAppsApi"],"sources":["../../../../src/react-utils/useFetchNeetoApps/apis/neeto_apps.js"],"sourcesContent":["import axios from \"axios\";\n\nconst fetch = () => axios.get(\"/api/v1/neeto_apps\");\n\nconst neetoAppsApi = { fetch };\n\nexport default neetoAppsApi;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,IAAMC,KAAK,GAAG,SAARA,KAAKA,CAAA;EAAA,OAASD,KAAK,CAACE,GAAG,CAAC,oBAAoB,CAAC;AAAA;AAEnD,IAAMC,YAAY,GAAG;EAAEF,KAAK,EAALA;AAAM,CAAC;AAE9B,eAAeE,YAAY"}
@@ -0,0 +1 @@
1
+ export { default } from "./useFetchNeetoApps";
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["default"],"sources":["../../../src/react-utils/useFetchNeetoApps/index.js"],"sourcesContent":["export { default } from \"./useFetchNeetoApps\";\n"],"mappings":"AAAA,SAASA,OAAO"}
@@ -0,0 +1,19 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
3
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
+ import { isNotPresent } from "@bigbinary/neeto-cist";
5
+ import { usePersistedQuery } from "@bigbinary/neeto-commons-frontend/react-utils";
6
+ import neetoAppsApi from "./apis/neeto_apps";
7
+ import { NEETO_APPS_LIST_STALE_TIME } from "../constants";
8
+ import { QUERY_KEYS } from "../constants/query";
9
+ var useFetchNeetoApps = function useFetchNeetoApps(options) {
10
+ var _globalProps$user;
11
+ var scopedQueryKey = "".concat(QUERY_KEYS.NEETO_APPS_LIST, "-").concat((_globalProps$user = globalProps.user) === null || _globalProps$user === void 0 ? void 0 : _globalProps$user.id);
12
+ var neetoApps = usePersistedQuery.getCache(scopedQueryKey);
13
+ return usePersistedQuery(scopedQueryKey, neetoAppsApi.fetch, _objectSpread({
14
+ staleTime: NEETO_APPS_LIST_STALE_TIME,
15
+ enabled: isNotPresent(neetoApps === null || neetoApps === void 0 ? void 0 : neetoApps.data)
16
+ }, options));
17
+ };
18
+ export default useFetchNeetoApps;
19
+ //# sourceMappingURL=useFetchNeetoApps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFetchNeetoApps.js","names":["isNotPresent","usePersistedQuery","neetoAppsApi","NEETO_APPS_LIST_STALE_TIME","QUERY_KEYS","useFetchNeetoApps","options","_globalProps$user","scopedQueryKey","concat","NEETO_APPS_LIST","globalProps","user","id","neetoApps","getCache","fetch","_objectSpread","staleTime","enabled","data"],"sources":["../../../src/react-utils/useFetchNeetoApps/useFetchNeetoApps.js"],"sourcesContent":["import { isNotPresent } from \"neetocist\";\nimport { usePersistedQuery } from \"neetocommons/react-utils\";\n\nimport neetoAppsApi from \"./apis/neeto_apps\";\n\nimport { NEETO_APPS_LIST_STALE_TIME } from \"../constants\";\nimport { QUERY_KEYS } from \"../constants/query\";\n\nconst useFetchNeetoApps = options => {\n const scopedQueryKey = `${QUERY_KEYS.NEETO_APPS_LIST}-${globalProps.user?.id}`;\n\n const neetoApps = usePersistedQuery.getCache(scopedQueryKey);\n\n return usePersistedQuery(scopedQueryKey, neetoAppsApi.fetch, {\n staleTime: NEETO_APPS_LIST_STALE_TIME,\n enabled: isNotPresent(neetoApps?.data),\n ...options,\n });\n};\n\nexport default useFetchNeetoApps;\n"],"mappings":";;;AAAA,SAASA,YAAY;AACrB,SAASC,iBAAiB;AAE1B,OAAOC,YAAY;AAEnB,SAASC,0BAA0B;AACnC,SAASC,UAAU;AAEnB,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAGC,OAAO,EAAI;EAAA,IAAAC,iBAAA;EACnC,IAAMC,cAAc,MAAAC,MAAA,CAAML,UAAU,CAACM,eAAe,OAAAD,MAAA,EAAAF,iBAAA,GAAII,WAAW,CAACC,IAAI,cAAAL,iBAAA,uBAAhBA,iBAAA,CAAkBM,EAAE,CAAE;EAE9E,IAAMC,SAAS,GAAGb,iBAAiB,CAACc,QAAQ,CAACP,cAAc,CAAC;EAE5D,OAAOP,iBAAiB,CAACO,cAAc,EAAEN,YAAY,CAACc,KAAK,EAAAC,aAAA;IACzDC,SAAS,EAAEf,0BAA0B;IACrCgB,OAAO,EAAEnB,YAAY,CAACc,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAEM,IAAI;EAAC,GACnCd,OAAO,EACV;AACJ,CAAC;AAED,eAAeD,iBAAiB"}
@@ -0,0 +1,26 @@
1
+ import { useCallback, useEffect, useRef } from "react";
2
+ var useFieldSubmit = function useFieldSubmit(onSubmit) {
3
+ /** @type {{ current: HTMLInputElement & HTMLTextAreaElement }} */
4
+ // @ts-ignore
5
+ var ref = useRef(null);
6
+ var keyDownHandler = useCallback(function (event) {
7
+ if (event.key !== "Enter") return;
8
+ if (event.shiftKey) {
9
+ event.stopPropagation();
10
+ } else {
11
+ onSubmit();
12
+ event.preventDefault();
13
+ }
14
+ }, []);
15
+ useEffect(function () {
16
+ var element = ref.current;
17
+ if (!element) return undefined;
18
+ element.addEventListener("keydown", keyDownHandler);
19
+ return function () {
20
+ return element.removeEventListener("keydown", keyDownHandler);
21
+ };
22
+ }, []);
23
+ return ref;
24
+ };
25
+ export default useFieldSubmit;
26
+ //# sourceMappingURL=useFieldSubmit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFieldSubmit.js","names":["useCallback","useEffect","useRef","useFieldSubmit","onSubmit","ref","keyDownHandler","event","key","shiftKey","stopPropagation","preventDefault","element","current","undefined","addEventListener","removeEventListener"],"sources":["../../src/react-utils/useFieldSubmit.js"],"sourcesContent":["import { useCallback, useEffect, useRef } from \"react\";\n\nconst useFieldSubmit = onSubmit => {\n /** @type {{ current: HTMLInputElement & HTMLTextAreaElement }} */\n // @ts-ignore\n const ref = useRef(null);\n\n const keyDownHandler = useCallback(event => {\n if (event.key !== \"Enter\") return;\n\n if (event.shiftKey) {\n event.stopPropagation();\n } else {\n onSubmit();\n event.preventDefault();\n }\n }, []);\n\n useEffect(() => {\n const element = ref.current;\n if (!element) return undefined;\n\n element.addEventListener(\"keydown\", keyDownHandler);\n\n return () => element.removeEventListener(\"keydown\", keyDownHandler);\n }, []);\n\n return ref;\n};\n\nexport default useFieldSubmit;\n"],"mappings":"AAAA,SAASA,WAAW,EAAEC,SAAS,EAAEC,MAAM,QAAQ,OAAO;AAEtD,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,CAAGC,QAAQ,EAAI;EACjC;EACA;EACA,IAAMC,GAAG,GAAGH,MAAM,CAAC,IAAI,CAAC;EAExB,IAAMI,cAAc,GAAGN,WAAW,CAAC,UAAAO,KAAK,EAAI;IAC1C,IAAIA,KAAK,CAACC,GAAG,KAAK,OAAO,EAAE;IAE3B,IAAID,KAAK,CAACE,QAAQ,EAAE;MAClBF,KAAK,CAACG,eAAe,EAAE;IACzB,CAAC,MAAM;MACLN,QAAQ,EAAE;MACVG,KAAK,CAACI,cAAc,EAAE;IACxB;EACF,CAAC,EAAE,EAAE,CAAC;EAENV,SAAS,CAAC,YAAM;IACd,IAAMW,OAAO,GAAGP,GAAG,CAACQ,OAAO;IAC3B,IAAI,CAACD,OAAO,EAAE,OAAOE,SAAS;IAE9BF,OAAO,CAACG,gBAAgB,CAAC,SAAS,EAAET,cAAc,CAAC;IAEnD,OAAO;MAAA,OAAMM,OAAO,CAACI,mBAAmB,CAAC,SAAS,EAAEV,cAAc,CAAC;IAAA;EACrE,CAAC,EAAE,EAAE,CAAC;EAEN,OAAOD,GAAG;AACZ,CAAC;AAED,eAAeF,cAAc"}
@@ -0,0 +1,20 @@
1
+ import { useRef } from "react";
2
+ var useFuncDebounce = function useFuncDebounce(func) {
3
+ var delay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 350;
4
+ var timer = useRef(null);
5
+ var debouncedFunc = function debouncedFunc() {
6
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
7
+ args[_key] = arguments[_key];
8
+ }
9
+ clearTimeout(timer.current);
10
+ timer.current = setTimeout(function () {
11
+ return func.apply(void 0, args);
12
+ }, delay);
13
+ };
14
+ debouncedFunc.cancel = function () {
15
+ return clearTimeout(timer.current);
16
+ };
17
+ return debouncedFunc;
18
+ };
19
+ export default useFuncDebounce;
20
+ //# sourceMappingURL=useFuncDebounce.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFuncDebounce.js","names":["useRef","useFuncDebounce","func","delay","arguments","length","undefined","timer","debouncedFunc","_len","args","Array","_key","clearTimeout","current","setTimeout","apply","cancel"],"sources":["../../src/react-utils/useFuncDebounce.js"],"sourcesContent":["import { useRef } from \"react\";\n\nconst useFuncDebounce = (func, delay = 350) => {\n const timer = useRef(null);\n const debouncedFunc = (...args) => {\n clearTimeout(timer.current);\n timer.current = setTimeout(() => func(...args), delay);\n };\n debouncedFunc.cancel = () => clearTimeout(timer.current);\n\n return debouncedFunc;\n};\n\nexport default useFuncDebounce;\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,OAAO;AAE9B,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,IAAI,EAAkB;EAAA,IAAhBC,KAAK,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,GAAG;EACxC,IAAMG,KAAK,GAAGP,MAAM,CAAC,IAAI,CAAC;EAC1B,IAAMQ,aAAa,GAAG,SAAhBA,aAAaA,CAAA,EAAgB;IAAA,SAAAC,IAAA,GAAAL,SAAA,CAAAC,MAAA,EAATK,IAAI,OAAAC,KAAA,CAAAF,IAAA,GAAAG,IAAA,MAAAA,IAAA,GAAAH,IAAA,EAAAG,IAAA;MAAJF,IAAI,CAAAE,IAAA,IAAAR,SAAA,CAAAQ,IAAA;IAAA;IAC5BC,YAAY,CAACN,KAAK,CAACO,OAAO,CAAC;IAC3BP,KAAK,CAACO,OAAO,GAAGC,UAAU,CAAC;MAAA,OAAMb,IAAI,CAAAc,KAAA,SAAIN,IAAI,CAAC;IAAA,GAAEP,KAAK,CAAC;EACxD,CAAC;EACDK,aAAa,CAACS,MAAM,GAAG;IAAA,OAAMJ,YAAY,CAACN,KAAK,CAACO,OAAO,CAAC;EAAA;EAExD,OAAON,aAAa;AACtB,CAAC;AAED,eAAeP,eAAe"}