@nocios/crudify-components 2.0.61 → 2.0.81

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 (363) hide show
  1. package/.scannerwork/.sonar_lock +0 -0
  2. package/.scannerwork/report-task.txt +6 -0
  3. package/coverage/components/CrudiaAutoGenerate.tsx.html +616 -0
  4. package/coverage/components/CrudiaFileField/CrudiaFileField.tsx.html +1312 -0
  5. package/coverage/components/CrudiaFileField/components/DeleteConfirmationDialog.tsx.html +355 -0
  6. package/coverage/components/CrudiaFileField/components/DropZone.tsx.html +523 -0
  7. package/coverage/components/CrudiaFileField/components/FileItemRow.tsx.html +835 -0
  8. package/coverage/components/CrudiaFileField/components/FileThumbnail.tsx.html +1585 -0
  9. package/coverage/components/CrudiaFileField/components/index.html +176 -0
  10. package/coverage/components/CrudiaFileField/components/index.ts.html +115 -0
  11. package/coverage/components/CrudiaFileField/hooks/index.html +146 -0
  12. package/coverage/components/CrudiaFileField/hooks/index.ts.html +112 -0
  13. package/coverage/components/CrudiaFileField/hooks/useDeleteConfirmation.ts.html +433 -0
  14. package/coverage/components/CrudiaFileField/hooks/useDragDrop.ts.html +409 -0
  15. package/coverage/components/CrudiaFileField/index.html +131 -0
  16. package/coverage/components/CrudiaFileField/index.ts.html +112 -0
  17. package/coverage/components/CrudiaFileField/utils/formatters.ts.html +169 -0
  18. package/coverage/components/CrudiaFileField/utils/icons.tsx.html +253 -0
  19. package/coverage/components/CrudiaFileField/utils/index.html +146 -0
  20. package/coverage/components/CrudiaFileField/utils/index.ts.html +103 -0
  21. package/coverage/components/CrudiaMarkdownField.tsx.html +676 -0
  22. package/coverage/components/CrudifyInitializer.tsx.html +712 -0
  23. package/coverage/components/CrudifyLogin/Forms/CheckCodeForm.tsx.html +640 -0
  24. package/coverage/components/CrudifyLogin/Forms/ForgotPasswordForm.tsx.html +730 -0
  25. package/coverage/components/CrudifyLogin/Forms/LoginForm.tsx.html +892 -0
  26. package/coverage/components/CrudifyLogin/Forms/ResetPasswordForm.tsx.html +1219 -0
  27. package/coverage/components/CrudifyLogin/Forms/components/CodeInput.tsx.html +289 -0
  28. package/coverage/components/CrudifyLogin/Forms/components/FormAlert.tsx.html +202 -0
  29. package/coverage/components/CrudifyLogin/Forms/components/PasswordInput.tsx.html +346 -0
  30. package/coverage/components/CrudifyLogin/Forms/components/index.html +161 -0
  31. package/coverage/components/CrudifyLogin/Forms/components/index.ts.html +106 -0
  32. package/coverage/components/CrudifyLogin/Forms/index.html +176 -0
  33. package/coverage/components/CrudifyLogin/Forms/index.ts.html +145 -0
  34. package/coverage/components/CrudifyLogin/Forms/utils/errorTranslation.ts.html +268 -0
  35. package/coverage/components/CrudifyLogin/Forms/utils/index.html +161 -0
  36. package/coverage/components/CrudifyLogin/Forms/utils/index.ts.html +121 -0
  37. package/coverage/components/CrudifyLogin/Forms/utils/paramUtils.ts.html +496 -0
  38. package/coverage/components/CrudifyLogin/Forms/utils/validation.ts.html +307 -0
  39. package/coverage/components/CrudifyLogin/components/CrudifyInitializer.tsx.html +268 -0
  40. package/coverage/components/CrudifyLogin/components/index.html +116 -0
  41. package/coverage/components/CrudifyLogin/context/CrudifyProvider.tsx.html +409 -0
  42. package/coverage/components/CrudifyLogin/context/I18nProvider.tsx.html +430 -0
  43. package/coverage/components/CrudifyLogin/context/LoginStateProvider.tsx.html +1261 -0
  44. package/coverage/components/CrudifyLogin/context/index.html +161 -0
  45. package/coverage/components/CrudifyLogin/context/index.ts.html +91 -0
  46. package/coverage/components/CrudifyLogin/hooks/index.html +131 -0
  47. package/coverage/components/CrudifyLogin/hooks/useCrudifyLogin.ts.html +463 -0
  48. package/coverage/components/CrudifyLogin/hooks/useTranslationsFromUrl.ts.html +391 -0
  49. package/coverage/components/CrudifyLogin/index.html +116 -0
  50. package/coverage/components/CrudifyLogin/index.tsx.html +466 -0
  51. package/coverage/components/CrudifyLogin/utils/index.html +116 -0
  52. package/coverage/components/CrudifyLogin/utils/secureStorage.ts.html +859 -0
  53. package/coverage/components/GlobalNotificationProvider.tsx.html +844 -0
  54. package/coverage/components/LoginComponent.tsx.html +676 -0
  55. package/coverage/components/PasswordRequirements/index.html +116 -0
  56. package/coverage/components/PasswordRequirements/index.tsx.html +232 -0
  57. package/coverage/components/PublicPolicies/FieldSelector/FieldSelector.tsx.html +1078 -0
  58. package/coverage/components/PublicPolicies/FieldSelector/index.html +131 -0
  59. package/coverage/components/PublicPolicies/FieldSelector/index.ts.html +88 -0
  60. package/coverage/components/PublicPolicies/Policies.tsx.html +625 -0
  61. package/coverage/components/PublicPolicies/PolicyItem/PolicyItem.tsx.html +886 -0
  62. package/coverage/components/PublicPolicies/PolicyItem/index.html +131 -0
  63. package/coverage/components/PublicPolicies/PolicyItem/index.ts.html +88 -0
  64. package/coverage/components/PublicPolicies/constants.ts.html +106 -0
  65. package/coverage/components/PublicPolicies/index.html +146 -0
  66. package/coverage/components/PublicPolicies/index.ts.html +88 -0
  67. package/coverage/components/Routing/AuthRoute.tsx.html +382 -0
  68. package/coverage/components/Routing/GuestRoute.tsx.html +352 -0
  69. package/coverage/components/Routing/ProtectedRoute.tsx.html +316 -0
  70. package/coverage/components/Routing/index.html +161 -0
  71. package/coverage/components/Routing/index.ts.html +109 -0
  72. package/coverage/components/SessionLoadingScreen/index.html +116 -0
  73. package/coverage/components/SessionLoadingScreen/index.tsx.html +379 -0
  74. package/coverage/components/SessionTimeIndicator/index.html +116 -0
  75. package/coverage/components/SessionTimeIndicator/index.tsx.html +523 -0
  76. package/coverage/components/UserProfile/UserProfileDisplay.tsx.html +931 -0
  77. package/coverage/components/UserProfile/index.html +131 -0
  78. package/coverage/components/UserProfile/index.ts.html +88 -0
  79. package/coverage/components/index.html +191 -0
  80. package/coverage/components/index.ts.html +178 -0
  81. package/coverage/core/CrossTabSyncManager.ts.html +853 -0
  82. package/coverage/core/CrudifyInitializationManager.ts.html +1279 -0
  83. package/coverage/core/SessionManager.ts.html +3064 -0
  84. package/coverage/core/index.html +146 -0
  85. package/coverage/coverage-final.json +74 -77
  86. package/coverage/hooks/index.html +191 -0
  87. package/coverage/hooks/index.ts.html +136 -0
  88. package/coverage/hooks/useAuth.ts.html +529 -0
  89. package/coverage/hooks/useAutoGenerate.ts.html +571 -0
  90. package/coverage/hooks/useCrudifyWithNotifications/constants.ts.html +247 -0
  91. package/coverage/hooks/useCrudifyWithNotifications/hooks/index.html +116 -0
  92. package/coverage/hooks/useCrudifyWithNotifications/hooks/useCrudOperations.ts.html +820 -0
  93. package/coverage/hooks/useCrudifyWithNotifications/index.html +146 -0
  94. package/coverage/hooks/useCrudifyWithNotifications/index.ts.html +118 -0
  95. package/coverage/hooks/useCrudifyWithNotifications/useCrudifyWithNotifications.ts.html +565 -0
  96. package/coverage/hooks/useCrudifyWithNotifications/utils/errorMessageResolver.ts.html +847 -0
  97. package/coverage/hooks/useCrudifyWithNotifications/utils/index.html +146 -0
  98. package/coverage/hooks/useCrudifyWithNotifications/utils/notificationFilters.ts.html +313 -0
  99. package/coverage/hooks/useCrudifyWithNotifications/utils/successMessageResolver.ts.html +265 -0
  100. package/coverage/hooks/useData.ts.html +829 -0
  101. package/coverage/hooks/useFileUpload/index.html +131 -0
  102. package/coverage/hooks/useFileUpload/index.ts.html +112 -0
  103. package/coverage/hooks/useFileUpload/services/index.html +131 -0
  104. package/coverage/hooks/useFileUpload/services/index.ts.html +106 -0
  105. package/coverage/hooks/useFileUpload/services/uploadService.ts.html +610 -0
  106. package/coverage/hooks/useFileUpload/useFileUpload.ts.html +2092 -0
  107. package/coverage/hooks/useFileUpload/utils/fileUtils.ts.html +271 -0
  108. package/coverage/hooks/useFileUpload/utils/index.html +161 -0
  109. package/coverage/hooks/useFileUpload/utils/index.ts.html +109 -0
  110. package/coverage/hooks/useFileUpload/utils/mimeTypes.ts.html +235 -0
  111. package/coverage/hooks/useFileUpload/utils/validation.ts.html +403 -0
  112. package/coverage/hooks/useSession/constants.ts.html +217 -0
  113. package/coverage/hooks/useSession/hooks/index.html +176 -0
  114. package/coverage/hooks/useSession/hooks/useAuthEventSubscriber.ts.html +331 -0
  115. package/coverage/hooks/useSession/hooks/useCrossTabSync.ts.html +535 -0
  116. package/coverage/hooks/useSession/hooks/useSessionActions.ts.html +664 -0
  117. package/coverage/hooks/useSession/hooks/useSessionState.ts.html +295 -0
  118. package/coverage/hooks/useSession/hooks/useTokenRefreshScheduler.ts.html +535 -0
  119. package/coverage/hooks/useSession/index.html +161 -0
  120. package/coverage/hooks/useSession/index.ts.html +127 -0
  121. package/coverage/hooks/useSession/types.ts.html +427 -0
  122. package/coverage/hooks/useSession/useSession.ts.html +526 -0
  123. package/coverage/hooks/useSession/utils/index.html +131 -0
  124. package/coverage/hooks/useSession/utils/initializeSession.ts.html +424 -0
  125. package/coverage/hooks/useSession/utils/tokenUtils.ts.html +298 -0
  126. package/coverage/hooks/useUserData.ts.html +1210 -0
  127. package/coverage/hooks/useUserProfile.ts.html +820 -0
  128. package/coverage/index.html +205 -235
  129. package/coverage/lcov-report/components/CrudiaAutoGenerate.tsx.html +616 -0
  130. package/coverage/lcov-report/components/CrudiaFileField/CrudiaFileField.tsx.html +1312 -0
  131. package/coverage/lcov-report/components/CrudiaFileField/components/DeleteConfirmationDialog.tsx.html +355 -0
  132. package/coverage/lcov-report/components/CrudiaFileField/components/DropZone.tsx.html +523 -0
  133. package/coverage/lcov-report/components/CrudiaFileField/components/FileItemRow.tsx.html +835 -0
  134. package/coverage/lcov-report/components/CrudiaFileField/components/FileThumbnail.tsx.html +1585 -0
  135. package/coverage/lcov-report/components/CrudiaFileField/components/index.html +176 -0
  136. package/coverage/lcov-report/components/CrudiaFileField/components/index.ts.html +115 -0
  137. package/coverage/lcov-report/components/CrudiaFileField/hooks/index.html +146 -0
  138. package/coverage/lcov-report/components/CrudiaFileField/hooks/index.ts.html +112 -0
  139. package/coverage/lcov-report/components/CrudiaFileField/hooks/useDeleteConfirmation.ts.html +433 -0
  140. package/coverage/lcov-report/components/CrudiaFileField/hooks/useDragDrop.ts.html +409 -0
  141. package/coverage/lcov-report/components/CrudiaFileField/index.html +131 -0
  142. package/coverage/lcov-report/components/CrudiaFileField/index.ts.html +112 -0
  143. package/coverage/lcov-report/components/CrudiaFileField/utils/formatters.ts.html +169 -0
  144. package/coverage/lcov-report/components/CrudiaFileField/utils/icons.tsx.html +253 -0
  145. package/coverage/lcov-report/components/CrudiaFileField/utils/index.html +146 -0
  146. package/coverage/lcov-report/components/CrudiaFileField/utils/index.ts.html +103 -0
  147. package/coverage/lcov-report/components/CrudiaMarkdownField.tsx.html +676 -0
  148. package/coverage/lcov-report/components/CrudifyInitializer.tsx.html +712 -0
  149. package/coverage/lcov-report/components/CrudifyLogin/Forms/CheckCodeForm.tsx.html +640 -0
  150. package/coverage/lcov-report/components/CrudifyLogin/Forms/ForgotPasswordForm.tsx.html +730 -0
  151. package/coverage/lcov-report/components/CrudifyLogin/Forms/LoginForm.tsx.html +892 -0
  152. package/coverage/lcov-report/components/CrudifyLogin/Forms/ResetPasswordForm.tsx.html +1219 -0
  153. package/coverage/lcov-report/components/CrudifyLogin/Forms/components/CodeInput.tsx.html +289 -0
  154. package/coverage/lcov-report/components/CrudifyLogin/Forms/components/FormAlert.tsx.html +202 -0
  155. package/coverage/lcov-report/components/CrudifyLogin/Forms/components/PasswordInput.tsx.html +346 -0
  156. package/coverage/lcov-report/components/CrudifyLogin/Forms/components/index.html +161 -0
  157. package/coverage/lcov-report/components/CrudifyLogin/Forms/components/index.ts.html +106 -0
  158. package/coverage/lcov-report/components/CrudifyLogin/Forms/index.html +176 -0
  159. package/coverage/lcov-report/components/CrudifyLogin/Forms/index.ts.html +145 -0
  160. package/coverage/lcov-report/components/CrudifyLogin/Forms/utils/errorTranslation.ts.html +268 -0
  161. package/coverage/lcov-report/components/CrudifyLogin/Forms/utils/index.html +161 -0
  162. package/coverage/lcov-report/components/CrudifyLogin/Forms/utils/index.ts.html +121 -0
  163. package/coverage/lcov-report/components/CrudifyLogin/Forms/utils/paramUtils.ts.html +496 -0
  164. package/coverage/lcov-report/components/CrudifyLogin/Forms/utils/validation.ts.html +307 -0
  165. package/coverage/lcov-report/components/CrudifyLogin/components/CrudifyInitializer.tsx.html +268 -0
  166. package/coverage/lcov-report/components/CrudifyLogin/components/index.html +116 -0
  167. package/coverage/lcov-report/components/CrudifyLogin/context/CrudifyProvider.tsx.html +409 -0
  168. package/coverage/lcov-report/components/CrudifyLogin/context/I18nProvider.tsx.html +430 -0
  169. package/coverage/lcov-report/components/CrudifyLogin/context/LoginStateProvider.tsx.html +1261 -0
  170. package/coverage/lcov-report/components/CrudifyLogin/context/index.html +161 -0
  171. package/coverage/lcov-report/components/CrudifyLogin/context/index.ts.html +91 -0
  172. package/coverage/lcov-report/components/CrudifyLogin/hooks/index.html +131 -0
  173. package/coverage/lcov-report/components/CrudifyLogin/hooks/useCrudifyLogin.ts.html +463 -0
  174. package/coverage/lcov-report/components/CrudifyLogin/hooks/useTranslationsFromUrl.ts.html +391 -0
  175. package/coverage/lcov-report/components/CrudifyLogin/index.html +116 -0
  176. package/coverage/lcov-report/components/CrudifyLogin/index.tsx.html +466 -0
  177. package/coverage/lcov-report/components/CrudifyLogin/utils/index.html +116 -0
  178. package/coverage/lcov-report/components/CrudifyLogin/utils/secureStorage.ts.html +859 -0
  179. package/coverage/lcov-report/components/GlobalNotificationProvider.tsx.html +844 -0
  180. package/coverage/lcov-report/components/LoginComponent.tsx.html +676 -0
  181. package/coverage/lcov-report/components/PasswordRequirements/index.html +116 -0
  182. package/coverage/lcov-report/components/PasswordRequirements/index.tsx.html +232 -0
  183. package/coverage/lcov-report/components/PublicPolicies/FieldSelector/FieldSelector.tsx.html +1078 -0
  184. package/coverage/lcov-report/components/PublicPolicies/FieldSelector/index.html +131 -0
  185. package/coverage/lcov-report/components/PublicPolicies/FieldSelector/index.ts.html +88 -0
  186. package/coverage/lcov-report/components/PublicPolicies/Policies.tsx.html +625 -0
  187. package/coverage/lcov-report/components/PublicPolicies/PolicyItem/PolicyItem.tsx.html +886 -0
  188. package/coverage/lcov-report/components/PublicPolicies/PolicyItem/index.html +131 -0
  189. package/coverage/lcov-report/components/PublicPolicies/PolicyItem/index.ts.html +88 -0
  190. package/coverage/lcov-report/components/PublicPolicies/constants.ts.html +106 -0
  191. package/coverage/lcov-report/components/PublicPolicies/index.html +146 -0
  192. package/coverage/lcov-report/components/PublicPolicies/index.ts.html +88 -0
  193. package/coverage/lcov-report/components/Routing/AuthRoute.tsx.html +382 -0
  194. package/coverage/lcov-report/components/Routing/GuestRoute.tsx.html +352 -0
  195. package/coverage/lcov-report/components/Routing/ProtectedRoute.tsx.html +316 -0
  196. package/coverage/lcov-report/components/Routing/index.html +161 -0
  197. package/coverage/lcov-report/components/Routing/index.ts.html +109 -0
  198. package/coverage/lcov-report/components/SessionLoadingScreen/index.html +116 -0
  199. package/coverage/lcov-report/components/SessionLoadingScreen/index.tsx.html +379 -0
  200. package/coverage/lcov-report/components/SessionTimeIndicator/index.html +116 -0
  201. package/coverage/lcov-report/components/SessionTimeIndicator/index.tsx.html +523 -0
  202. package/coverage/lcov-report/components/UserProfile/UserProfileDisplay.tsx.html +931 -0
  203. package/coverage/lcov-report/components/UserProfile/index.html +131 -0
  204. package/coverage/lcov-report/components/UserProfile/index.ts.html +88 -0
  205. package/coverage/lcov-report/components/index.html +191 -0
  206. package/coverage/lcov-report/components/index.ts.html +178 -0
  207. package/coverage/lcov-report/core/CrossTabSyncManager.ts.html +853 -0
  208. package/coverage/lcov-report/core/CrudifyInitializationManager.ts.html +1279 -0
  209. package/coverage/lcov-report/core/SessionManager.ts.html +3064 -0
  210. package/coverage/lcov-report/core/index.html +146 -0
  211. package/coverage/lcov-report/hooks/index.html +191 -0
  212. package/coverage/lcov-report/hooks/index.ts.html +136 -0
  213. package/coverage/lcov-report/hooks/useAuth.ts.html +529 -0
  214. package/coverage/lcov-report/hooks/useAutoGenerate.ts.html +571 -0
  215. package/coverage/lcov-report/hooks/useCrudifyWithNotifications/constants.ts.html +247 -0
  216. package/coverage/lcov-report/hooks/useCrudifyWithNotifications/hooks/index.html +116 -0
  217. package/coverage/lcov-report/hooks/useCrudifyWithNotifications/hooks/useCrudOperations.ts.html +820 -0
  218. package/coverage/lcov-report/hooks/useCrudifyWithNotifications/index.html +146 -0
  219. package/coverage/lcov-report/hooks/useCrudifyWithNotifications/index.ts.html +118 -0
  220. package/coverage/lcov-report/hooks/useCrudifyWithNotifications/useCrudifyWithNotifications.ts.html +565 -0
  221. package/coverage/lcov-report/hooks/useCrudifyWithNotifications/utils/errorMessageResolver.ts.html +847 -0
  222. package/coverage/lcov-report/hooks/useCrudifyWithNotifications/utils/index.html +146 -0
  223. package/coverage/lcov-report/hooks/useCrudifyWithNotifications/utils/notificationFilters.ts.html +313 -0
  224. package/coverage/lcov-report/hooks/useCrudifyWithNotifications/utils/successMessageResolver.ts.html +265 -0
  225. package/coverage/lcov-report/hooks/useData.ts.html +829 -0
  226. package/coverage/lcov-report/hooks/useFileUpload/index.html +131 -0
  227. package/coverage/lcov-report/hooks/useFileUpload/index.ts.html +112 -0
  228. package/coverage/lcov-report/hooks/useFileUpload/services/index.html +131 -0
  229. package/coverage/lcov-report/hooks/useFileUpload/services/index.ts.html +106 -0
  230. package/coverage/lcov-report/hooks/useFileUpload/services/uploadService.ts.html +610 -0
  231. package/coverage/lcov-report/hooks/useFileUpload/useFileUpload.ts.html +2092 -0
  232. package/coverage/lcov-report/hooks/useFileUpload/utils/fileUtils.ts.html +271 -0
  233. package/coverage/lcov-report/hooks/useFileUpload/utils/index.html +161 -0
  234. package/coverage/lcov-report/hooks/useFileUpload/utils/index.ts.html +109 -0
  235. package/coverage/lcov-report/hooks/useFileUpload/utils/mimeTypes.ts.html +235 -0
  236. package/coverage/lcov-report/hooks/useFileUpload/utils/validation.ts.html +403 -0
  237. package/coverage/lcov-report/hooks/useSession/constants.ts.html +217 -0
  238. package/coverage/lcov-report/hooks/useSession/hooks/index.html +176 -0
  239. package/coverage/lcov-report/hooks/useSession/hooks/useAuthEventSubscriber.ts.html +331 -0
  240. package/coverage/lcov-report/hooks/useSession/hooks/useCrossTabSync.ts.html +535 -0
  241. package/coverage/lcov-report/hooks/useSession/hooks/useSessionActions.ts.html +664 -0
  242. package/coverage/lcov-report/hooks/useSession/hooks/useSessionState.ts.html +295 -0
  243. package/coverage/lcov-report/hooks/useSession/hooks/useTokenRefreshScheduler.ts.html +535 -0
  244. package/coverage/lcov-report/hooks/useSession/index.html +161 -0
  245. package/coverage/lcov-report/hooks/useSession/index.ts.html +127 -0
  246. package/coverage/lcov-report/hooks/useSession/types.ts.html +427 -0
  247. package/coverage/lcov-report/hooks/useSession/useSession.ts.html +526 -0
  248. package/coverage/lcov-report/hooks/useSession/utils/index.html +131 -0
  249. package/coverage/lcov-report/hooks/useSession/utils/initializeSession.ts.html +424 -0
  250. package/coverage/lcov-report/hooks/useSession/utils/tokenUtils.ts.html +298 -0
  251. package/coverage/lcov-report/hooks/useUserData.ts.html +1210 -0
  252. package/coverage/lcov-report/hooks/useUserProfile.ts.html +820 -0
  253. package/coverage/lcov-report/index.html +205 -235
  254. package/coverage/lcov-report/providers/CrudifyThemeProvider.tsx.html +316 -0
  255. package/coverage/lcov-report/providers/SessionProvider.tsx.html +1120 -0
  256. package/coverage/lcov-report/providers/TranslationsProvider.tsx.html +1756 -0
  257. package/coverage/lcov-report/providers/index.html +146 -0
  258. package/coverage/lcov-report/services/credentialsEventBus.ts.html +319 -0
  259. package/coverage/lcov-report/services/crudifyAdminWrapper.ts.html +754 -0
  260. package/coverage/lcov-report/services/index.html +146 -0
  261. package/coverage/lcov-report/services/translationService.ts.html +1558 -0
  262. package/coverage/lcov-report/translations/critical.ts.html +1216 -0
  263. package/coverage/lcov-report/translations/index.html +116 -0
  264. package/coverage/lcov-report/types/index.html +116 -0
  265. package/coverage/lcov-report/types/password.ts.html +178 -0
  266. package/coverage/lcov-report/utils/authErrorDetector.ts.html +793 -0
  267. package/coverage/lcov-report/utils/authEventBus.ts.html +454 -0
  268. package/coverage/lcov-report/utils/configResolver.ts.html +460 -0
  269. package/coverage/lcov-report/utils/cookieSync.ts.html +595 -0
  270. package/coverage/lcov-report/utils/errorHandler.ts.html +1480 -0
  271. package/coverage/lcov-report/utils/errorTranslation.ts.html +868 -0
  272. package/coverage/lcov-report/utils/index.html +341 -0
  273. package/coverage/lcov-report/utils/index.ts.html +193 -0
  274. package/coverage/lcov-report/utils/jwtUtils.ts.html +325 -0
  275. package/coverage/lcov-report/utils/logger.ts.html +952 -0
  276. package/coverage/lcov-report/utils/navigationTracker.ts.html +562 -0
  277. package/coverage/lcov-report/utils/passwordValidation.ts.html +259 -0
  278. package/coverage/lcov-report/utils/preAuthCheck.ts.html +442 -0
  279. package/coverage/lcov-report/utils/redirectSecurity.ts.html +733 -0
  280. package/coverage/lcov-report/utils/tenantConfig.ts.html +712 -0
  281. package/coverage/lcov-report/utils/tokenStorage.ts.html +1825 -0
  282. package/coverage/lcov-report/utils/webCrypto.ts.html +490 -0
  283. package/coverage/lcov.info +14988 -14009
  284. package/coverage/providers/CrudifyThemeProvider.tsx.html +316 -0
  285. package/coverage/providers/SessionProvider.tsx.html +1120 -0
  286. package/coverage/providers/TranslationsProvider.tsx.html +1756 -0
  287. package/coverage/providers/index.html +146 -0
  288. package/coverage/services/credentialsEventBus.ts.html +319 -0
  289. package/coverage/services/crudifyAdminWrapper.ts.html +754 -0
  290. package/coverage/services/index.html +146 -0
  291. package/coverage/services/translationService.ts.html +1558 -0
  292. package/coverage/translations/critical.ts.html +1216 -0
  293. package/coverage/translations/index.html +116 -0
  294. package/coverage/types/index.html +116 -0
  295. package/coverage/types/password.ts.html +178 -0
  296. package/coverage/utils/authErrorDetector.ts.html +793 -0
  297. package/coverage/utils/authEventBus.ts.html +454 -0
  298. package/coverage/utils/configResolver.ts.html +460 -0
  299. package/coverage/utils/cookieSync.ts.html +595 -0
  300. package/coverage/utils/errorHandler.ts.html +1480 -0
  301. package/coverage/utils/errorTranslation.ts.html +868 -0
  302. package/coverage/utils/index.html +341 -0
  303. package/coverage/utils/index.ts.html +193 -0
  304. package/coverage/utils/jwtUtils.ts.html +325 -0
  305. package/coverage/utils/logger.ts.html +952 -0
  306. package/coverage/utils/navigationTracker.ts.html +562 -0
  307. package/coverage/utils/passwordValidation.ts.html +259 -0
  308. package/coverage/utils/preAuthCheck.ts.html +442 -0
  309. package/coverage/utils/redirectSecurity.ts.html +733 -0
  310. package/coverage/utils/tenantConfig.ts.html +712 -0
  311. package/coverage/utils/tokenStorage.ts.html +1825 -0
  312. package/coverage/utils/webCrypto.ts.html +490 -0
  313. package/dist/{CrudiaMarkdownField-CkiBwG-U.d.ts → CrudiaMarkdownField-DM6NR8zw.d.mts} +22 -22
  314. package/dist/{CrudiaMarkdownField-D-DqiXMQ.d.mts → CrudiaMarkdownField-UJaiSq9_.d.ts} +22 -22
  315. package/dist/{GlobalNotificationProvider-CdwdNv_8.d.mts → GlobalNotificationProvider-Cx540WKg.d.mts} +15 -15
  316. package/dist/{GlobalNotificationProvider-CdwdNv_8.d.ts → GlobalNotificationProvider-Cx540WKg.d.ts} +15 -15
  317. package/dist/chunk-2DXLCBOT.mjs +1 -0
  318. package/dist/chunk-DYRZIARH.js +1 -0
  319. package/dist/chunk-GCSJXEGT.mjs +1 -0
  320. package/dist/chunk-GJUZD5ZN.js +1 -0
  321. package/dist/chunk-K47I475N.js +1 -0
  322. package/dist/chunk-OCYZGEM5.mjs +1 -0
  323. package/dist/chunk-PI7HPRDB.js +1 -0
  324. package/dist/chunk-QVEUGJBY.mjs +1 -0
  325. package/dist/chunk-UROR7G7N.mjs +1 -0
  326. package/dist/chunk-XFT47DEL.js +1 -0
  327. package/dist/components.d.mts +8 -8
  328. package/dist/components.d.ts +8 -8
  329. package/dist/components.js +1 -1
  330. package/dist/components.mjs +1 -1
  331. package/dist/{errorTranslation-CF-5JClP.d.ts → errorTranslation-BEWwDbCH.d.ts} +1 -1
  332. package/dist/{errorTranslation-BcX8AaK7.d.mts → errorTranslation-DsGZon0M.d.mts} +1 -1
  333. package/dist/hooks.d.mts +3 -3
  334. package/dist/hooks.d.ts +3 -3
  335. package/dist/hooks.js +1 -1
  336. package/dist/hooks.mjs +1 -1
  337. package/dist/{index-DEDnmsdO.d.ts → index-Dnmttf62.d.ts} +131 -114
  338. package/dist/{index-D06kTP0C.d.mts → index-ZcF6nJt4.d.mts} +131 -114
  339. package/dist/index.d.mts +153 -106
  340. package/dist/index.d.ts +153 -106
  341. package/dist/index.js +2 -2
  342. package/dist/index.mjs +2 -2
  343. package/dist/{tenantConfig-CYnS9TPV.d.mts → tenantConfig-DxpfrAof.d.mts} +1 -1
  344. package/dist/{tenantConfig-CYnS9TPV.d.ts → tenantConfig-DxpfrAof.d.ts} +1 -1
  345. package/dist/utils.d.mts +25 -25
  346. package/dist/utils.d.ts +25 -25
  347. package/dist/utils.js +1 -1
  348. package/dist/utils.mjs +1 -1
  349. package/eslint.config.mjs +2 -2
  350. package/package.json +1 -1
  351. package/tests/helpers/mockFactories.ts +218 -0
  352. package/tests/helpers/testUtils.tsx +66 -1
  353. package/vitest.config.ts +1 -0
  354. package/dist/chunk-2WAUZ6KI.js +0 -1
  355. package/dist/chunk-3IGZNZCT.mjs +0 -1
  356. package/dist/chunk-43L2PP77.mjs +0 -1
  357. package/dist/chunk-6VS5OT3A.mjs +0 -1
  358. package/dist/chunk-BWJTTMKS.js +0 -1
  359. package/dist/chunk-EMPPCCVU.js +0 -1
  360. package/dist/chunk-J43UPGBE.js +0 -1
  361. package/dist/chunk-K6ZRXOJ7.mjs +0 -1
  362. package/dist/chunk-RYQQZTEP.js +0 -1
  363. package/dist/chunk-VTMSOK4V.mjs +0 -1
@@ -0,0 +1,565 @@
1
+
2
+ <!doctype html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <title>Code coverage report for hooks/useCrudifyWithNotifications/useCrudifyWithNotifications.ts</title>
7
+ <meta charset="utf-8" />
8
+ <link rel="stylesheet" href="../../prettify.css" />
9
+ <link rel="stylesheet" href="../../base.css" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" />
11
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
12
+ <style type='text/css'>
13
+ .coverage-summary .sorter {
14
+ background-image: url(../../sort-arrow-sprite.png);
15
+ }
16
+ </style>
17
+ </head>
18
+
19
+ <body>
20
+ <div class='wrapper'>
21
+ <div class='pad1'>
22
+ <h1><a href="../../index.html">All files</a> / <a href="index.html">hooks/useCrudifyWithNotifications</a> useCrudifyWithNotifications.ts</h1>
23
+ <div class='clearfix'>
24
+
25
+ <div class='fl pad1y space-right2'>
26
+ <span class="strong">99.37% </span>
27
+ <span class="quiet">Statements</span>
28
+ <span class='fraction'>159/160</span>
29
+ </div>
30
+
31
+
32
+ <div class='fl pad1y space-right2'>
33
+ <span class="strong">100% </span>
34
+ <span class="quiet">Branches</span>
35
+ <span class='fraction'>16/16</span>
36
+ </div>
37
+
38
+
39
+ <div class='fl pad1y space-right2'>
40
+ <span class="strong">100% </span>
41
+ <span class="quiet">Functions</span>
42
+ <span class='fraction'>2/2</span>
43
+ </div>
44
+
45
+
46
+ <div class='fl pad1y space-right2'>
47
+ <span class="strong">99.37% </span>
48
+ <span class="quiet">Lines</span>
49
+ <span class='fraction'>159/160</span>
50
+ </div>
51
+
52
+
53
+ </div>
54
+ <p class="quiet">
55
+ Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
+ </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input type="search" id="fileSearch">
61
+ </div>
62
+ </template>
63
+ </div>
64
+ <div class='status-line high'></div>
65
+ <pre><table class="coverage">
66
+ <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
+ <a name='L2'></a><a href='#L2'>2</a>
68
+ <a name='L3'></a><a href='#L3'>3</a>
69
+ <a name='L4'></a><a href='#L4'>4</a>
70
+ <a name='L5'></a><a href='#L5'>5</a>
71
+ <a name='L6'></a><a href='#L6'>6</a>
72
+ <a name='L7'></a><a href='#L7'>7</a>
73
+ <a name='L8'></a><a href='#L8'>8</a>
74
+ <a name='L9'></a><a href='#L9'>9</a>
75
+ <a name='L10'></a><a href='#L10'>10</a>
76
+ <a name='L11'></a><a href='#L11'>11</a>
77
+ <a name='L12'></a><a href='#L12'>12</a>
78
+ <a name='L13'></a><a href='#L13'>13</a>
79
+ <a name='L14'></a><a href='#L14'>14</a>
80
+ <a name='L15'></a><a href='#L15'>15</a>
81
+ <a name='L16'></a><a href='#L16'>16</a>
82
+ <a name='L17'></a><a href='#L17'>17</a>
83
+ <a name='L18'></a><a href='#L18'>18</a>
84
+ <a name='L19'></a><a href='#L19'>19</a>
85
+ <a name='L20'></a><a href='#L20'>20</a>
86
+ <a name='L21'></a><a href='#L21'>21</a>
87
+ <a name='L22'></a><a href='#L22'>22</a>
88
+ <a name='L23'></a><a href='#L23'>23</a>
89
+ <a name='L24'></a><a href='#L24'>24</a>
90
+ <a name='L25'></a><a href='#L25'>25</a>
91
+ <a name='L26'></a><a href='#L26'>26</a>
92
+ <a name='L27'></a><a href='#L27'>27</a>
93
+ <a name='L28'></a><a href='#L28'>28</a>
94
+ <a name='L29'></a><a href='#L29'>29</a>
95
+ <a name='L30'></a><a href='#L30'>30</a>
96
+ <a name='L31'></a><a href='#L31'>31</a>
97
+ <a name='L32'></a><a href='#L32'>32</a>
98
+ <a name='L33'></a><a href='#L33'>33</a>
99
+ <a name='L34'></a><a href='#L34'>34</a>
100
+ <a name='L35'></a><a href='#L35'>35</a>
101
+ <a name='L36'></a><a href='#L36'>36</a>
102
+ <a name='L37'></a><a href='#L37'>37</a>
103
+ <a name='L38'></a><a href='#L38'>38</a>
104
+ <a name='L39'></a><a href='#L39'>39</a>
105
+ <a name='L40'></a><a href='#L40'>40</a>
106
+ <a name='L41'></a><a href='#L41'>41</a>
107
+ <a name='L42'></a><a href='#L42'>42</a>
108
+ <a name='L43'></a><a href='#L43'>43</a>
109
+ <a name='L44'></a><a href='#L44'>44</a>
110
+ <a name='L45'></a><a href='#L45'>45</a>
111
+ <a name='L46'></a><a href='#L46'>46</a>
112
+ <a name='L47'></a><a href='#L47'>47</a>
113
+ <a name='L48'></a><a href='#L48'>48</a>
114
+ <a name='L49'></a><a href='#L49'>49</a>
115
+ <a name='L50'></a><a href='#L50'>50</a>
116
+ <a name='L51'></a><a href='#L51'>51</a>
117
+ <a name='L52'></a><a href='#L52'>52</a>
118
+ <a name='L53'></a><a href='#L53'>53</a>
119
+ <a name='L54'></a><a href='#L54'>54</a>
120
+ <a name='L55'></a><a href='#L55'>55</a>
121
+ <a name='L56'></a><a href='#L56'>56</a>
122
+ <a name='L57'></a><a href='#L57'>57</a>
123
+ <a name='L58'></a><a href='#L58'>58</a>
124
+ <a name='L59'></a><a href='#L59'>59</a>
125
+ <a name='L60'></a><a href='#L60'>60</a>
126
+ <a name='L61'></a><a href='#L61'>61</a>
127
+ <a name='L62'></a><a href='#L62'>62</a>
128
+ <a name='L63'></a><a href='#L63'>63</a>
129
+ <a name='L64'></a><a href='#L64'>64</a>
130
+ <a name='L65'></a><a href='#L65'>65</a>
131
+ <a name='L66'></a><a href='#L66'>66</a>
132
+ <a name='L67'></a><a href='#L67'>67</a>
133
+ <a name='L68'></a><a href='#L68'>68</a>
134
+ <a name='L69'></a><a href='#L69'>69</a>
135
+ <a name='L70'></a><a href='#L70'>70</a>
136
+ <a name='L71'></a><a href='#L71'>71</a>
137
+ <a name='L72'></a><a href='#L72'>72</a>
138
+ <a name='L73'></a><a href='#L73'>73</a>
139
+ <a name='L74'></a><a href='#L74'>74</a>
140
+ <a name='L75'></a><a href='#L75'>75</a>
141
+ <a name='L76'></a><a href='#L76'>76</a>
142
+ <a name='L77'></a><a href='#L77'>77</a>
143
+ <a name='L78'></a><a href='#L78'>78</a>
144
+ <a name='L79'></a><a href='#L79'>79</a>
145
+ <a name='L80'></a><a href='#L80'>80</a>
146
+ <a name='L81'></a><a href='#L81'>81</a>
147
+ <a name='L82'></a><a href='#L82'>82</a>
148
+ <a name='L83'></a><a href='#L83'>83</a>
149
+ <a name='L84'></a><a href='#L84'>84</a>
150
+ <a name='L85'></a><a href='#L85'>85</a>
151
+ <a name='L86'></a><a href='#L86'>86</a>
152
+ <a name='L87'></a><a href='#L87'>87</a>
153
+ <a name='L88'></a><a href='#L88'>88</a>
154
+ <a name='L89'></a><a href='#L89'>89</a>
155
+ <a name='L90'></a><a href='#L90'>90</a>
156
+ <a name='L91'></a><a href='#L91'>91</a>
157
+ <a name='L92'></a><a href='#L92'>92</a>
158
+ <a name='L93'></a><a href='#L93'>93</a>
159
+ <a name='L94'></a><a href='#L94'>94</a>
160
+ <a name='L95'></a><a href='#L95'>95</a>
161
+ <a name='L96'></a><a href='#L96'>96</a>
162
+ <a name='L97'></a><a href='#L97'>97</a>
163
+ <a name='L98'></a><a href='#L98'>98</a>
164
+ <a name='L99'></a><a href='#L99'>99</a>
165
+ <a name='L100'></a><a href='#L100'>100</a>
166
+ <a name='L101'></a><a href='#L101'>101</a>
167
+ <a name='L102'></a><a href='#L102'>102</a>
168
+ <a name='L103'></a><a href='#L103'>103</a>
169
+ <a name='L104'></a><a href='#L104'>104</a>
170
+ <a name='L105'></a><a href='#L105'>105</a>
171
+ <a name='L106'></a><a href='#L106'>106</a>
172
+ <a name='L107'></a><a href='#L107'>107</a>
173
+ <a name='L108'></a><a href='#L108'>108</a>
174
+ <a name='L109'></a><a href='#L109'>109</a>
175
+ <a name='L110'></a><a href='#L110'>110</a>
176
+ <a name='L111'></a><a href='#L111'>111</a>
177
+ <a name='L112'></a><a href='#L112'>112</a>
178
+ <a name='L113'></a><a href='#L113'>113</a>
179
+ <a name='L114'></a><a href='#L114'>114</a>
180
+ <a name='L115'></a><a href='#L115'>115</a>
181
+ <a name='L116'></a><a href='#L116'>116</a>
182
+ <a name='L117'></a><a href='#L117'>117</a>
183
+ <a name='L118'></a><a href='#L118'>118</a>
184
+ <a name='L119'></a><a href='#L119'>119</a>
185
+ <a name='L120'></a><a href='#L120'>120</a>
186
+ <a name='L121'></a><a href='#L121'>121</a>
187
+ <a name='L122'></a><a href='#L122'>122</a>
188
+ <a name='L123'></a><a href='#L123'>123</a>
189
+ <a name='L124'></a><a href='#L124'>124</a>
190
+ <a name='L125'></a><a href='#L125'>125</a>
191
+ <a name='L126'></a><a href='#L126'>126</a>
192
+ <a name='L127'></a><a href='#L127'>127</a>
193
+ <a name='L128'></a><a href='#L128'>128</a>
194
+ <a name='L129'></a><a href='#L129'>129</a>
195
+ <a name='L130'></a><a href='#L130'>130</a>
196
+ <a name='L131'></a><a href='#L131'>131</a>
197
+ <a name='L132'></a><a href='#L132'>132</a>
198
+ <a name='L133'></a><a href='#L133'>133</a>
199
+ <a name='L134'></a><a href='#L134'>134</a>
200
+ <a name='L135'></a><a href='#L135'>135</a>
201
+ <a name='L136'></a><a href='#L136'>136</a>
202
+ <a name='L137'></a><a href='#L137'>137</a>
203
+ <a name='L138'></a><a href='#L138'>138</a>
204
+ <a name='L139'></a><a href='#L139'>139</a>
205
+ <a name='L140'></a><a href='#L140'>140</a>
206
+ <a name='L141'></a><a href='#L141'>141</a>
207
+ <a name='L142'></a><a href='#L142'>142</a>
208
+ <a name='L143'></a><a href='#L143'>143</a>
209
+ <a name='L144'></a><a href='#L144'>144</a>
210
+ <a name='L145'></a><a href='#L145'>145</a>
211
+ <a name='L146'></a><a href='#L146'>146</a>
212
+ <a name='L147'></a><a href='#L147'>147</a>
213
+ <a name='L148'></a><a href='#L148'>148</a>
214
+ <a name='L149'></a><a href='#L149'>149</a>
215
+ <a name='L150'></a><a href='#L150'>150</a>
216
+ <a name='L151'></a><a href='#L151'>151</a>
217
+ <a name='L152'></a><a href='#L152'>152</a>
218
+ <a name='L153'></a><a href='#L153'>153</a>
219
+ <a name='L154'></a><a href='#L154'>154</a>
220
+ <a name='L155'></a><a href='#L155'>155</a>
221
+ <a name='L156'></a><a href='#L156'>156</a>
222
+ <a name='L157'></a><a href='#L157'>157</a>
223
+ <a name='L158'></a><a href='#L158'>158</a>
224
+ <a name='L159'></a><a href='#L159'>159</a>
225
+ <a name='L160'></a><a href='#L160'>160</a>
226
+ <a name='L161'></a><a href='#L161'>161</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
227
+ <span class="cline-any cline-yes">1x</span>
228
+ <span class="cline-any cline-yes">1x</span>
229
+ <span class="cline-any cline-yes">1x</span>
230
+ <span class="cline-any cline-yes">1x</span>
231
+ <span class="cline-any cline-yes">1x</span>
232
+ <span class="cline-any cline-yes">1x</span>
233
+ <span class="cline-any cline-yes">1x</span>
234
+ <span class="cline-any cline-yes">1x</span>
235
+ <span class="cline-any cline-yes">1x</span>
236
+ <span class="cline-any cline-yes">1x</span>
237
+ <span class="cline-any cline-yes">1x</span>
238
+ <span class="cline-any cline-yes">1x</span>
239
+ <span class="cline-any cline-yes">1x</span>
240
+ <span class="cline-any cline-yes">1x</span>
241
+ <span class="cline-any cline-yes">1x</span>
242
+ <span class="cline-any cline-yes">1x</span>
243
+ <span class="cline-any cline-yes">1x</span>
244
+ <span class="cline-any cline-yes">1x</span>
245
+ <span class="cline-any cline-yes">1x</span>
246
+ <span class="cline-any cline-yes">1x</span>
247
+ <span class="cline-any cline-yes">1x</span>
248
+ <span class="cline-any cline-yes">1x</span>
249
+ <span class="cline-any cline-yes">1x</span>
250
+ <span class="cline-any cline-yes">1x</span>
251
+ <span class="cline-any cline-yes">1x</span>
252
+ <span class="cline-any cline-yes">1x</span>
253
+ <span class="cline-any cline-yes">1x</span>
254
+ <span class="cline-any cline-yes">1x</span>
255
+ <span class="cline-any cline-yes">1x</span>
256
+ <span class="cline-any cline-yes">1x</span>
257
+ <span class="cline-any cline-yes">1x</span>
258
+ <span class="cline-any cline-yes">1x</span>
259
+ <span class="cline-any cline-yes">1x</span>
260
+ <span class="cline-any cline-yes">1x</span>
261
+ <span class="cline-any cline-yes">49x</span>
262
+ <span class="cline-any cline-yes">49x</span>
263
+ <span class="cline-any cline-yes">49x</span>
264
+ <span class="cline-any cline-yes">49x</span>
265
+ <span class="cline-any cline-yes">49x</span>
266
+ <span class="cline-any cline-yes">49x</span>
267
+ <span class="cline-any cline-yes">49x</span>
268
+ <span class="cline-any cline-yes">49x</span>
269
+ <span class="cline-any cline-yes">49x</span>
270
+ <span class="cline-any cline-yes">49x</span>
271
+ <span class="cline-any cline-yes">49x</span>
272
+ <span class="cline-any cline-yes">49x</span>
273
+ <span class="cline-any cline-yes">49x</span>
274
+ <span class="cline-any cline-yes">49x</span>
275
+ <span class="cline-any cline-yes">49x</span>
276
+ <span class="cline-any cline-yes">49x</span>
277
+ <span class="cline-any cline-yes">49x</span>
278
+ <span class="cline-any cline-yes">49x</span>
279
+ <span class="cline-any cline-yes">10x</span>
280
+ <span class="cline-any cline-yes">10x</span>
281
+ <span class="cline-any cline-yes">2x</span>
282
+ <span class="cline-any cline-yes">2x</span>
283
+ <span class="cline-any cline-yes">8x</span>
284
+ <span class="cline-any cline-yes">10x</span>
285
+ <span class="cline-any cline-yes">49x</span>
286
+ <span class="cline-any cline-yes">49x</span>
287
+ <span class="cline-any cline-yes">49x</span>
288
+ <span class="cline-any cline-yes">49x</span>
289
+ <span class="cline-any cline-yes">49x</span>
290
+ <span class="cline-any cline-yes">49x</span>
291
+ <span class="cline-any cline-yes">49x</span>
292
+ <span class="cline-any cline-yes">49x</span>
293
+ <span class="cline-any cline-yes">49x</span>
294
+ <span class="cline-any cline-yes">49x</span>
295
+ <span class="cline-any cline-yes">49x</span>
296
+ <span class="cline-any cline-yes">49x</span>
297
+ <span class="cline-any cline-yes">49x</span>
298
+ <span class="cline-any cline-yes">49x</span>
299
+ <span class="cline-any cline-yes">49x</span>
300
+ <span class="cline-any cline-yes">49x</span>
301
+ <span class="cline-any cline-yes">49x</span>
302
+ <span class="cline-any cline-yes">49x</span>
303
+ <span class="cline-any cline-yes">49x</span>
304
+ <span class="cline-any cline-yes">49x</span>
305
+ <span class="cline-any cline-yes">49x</span>
306
+ <span class="cline-any cline-yes">49x</span>
307
+ <span class="cline-any cline-yes">49x</span>
308
+ <span class="cline-any cline-yes">49x</span>
309
+ <span class="cline-any cline-yes">49x</span>
310
+ <span class="cline-any cline-yes">49x</span>
311
+ <span class="cline-any cline-yes">49x</span>
312
+ <span class="cline-any cline-yes">49x</span>
313
+ <span class="cline-any cline-yes">49x</span>
314
+ <span class="cline-any cline-yes">49x</span>
315
+ <span class="cline-any cline-yes">19x</span>
316
+ <span class="cline-any cline-yes">18x</span>
317
+ <span class="cline-any cline-yes">18x</span>
318
+ <span class="cline-any cline-yes">1x</span>
319
+ <span class="cline-any cline-yes">49x</span>
320
+ <span class="cline-any cline-yes">49x</span>
321
+ <span class="cline-any cline-yes">49x</span>
322
+ <span class="cline-any cline-yes">49x</span>
323
+ <span class="cline-any cline-yes">49x</span>
324
+ <span class="cline-any cline-yes">49x</span>
325
+ <span class="cline-any cline-yes">49x</span>
326
+ <span class="cline-any cline-no">&nbsp;</span>
327
+ <span class="cline-any cline-yes">49x</span>
328
+ <span class="cline-any cline-yes">49x</span>
329
+ <span class="cline-any cline-yes">49x</span>
330
+ <span class="cline-any cline-yes">49x</span>
331
+ <span class="cline-any cline-yes">49x</span>
332
+ <span class="cline-any cline-yes">49x</span>
333
+ <span class="cline-any cline-yes">49x</span>
334
+ <span class="cline-any cline-yes">49x</span>
335
+ <span class="cline-any cline-yes">49x</span>
336
+ <span class="cline-any cline-yes">49x</span>
337
+ <span class="cline-any cline-yes">49x</span>
338
+ <span class="cline-any cline-yes">49x</span>
339
+ <span class="cline-any cline-yes">49x</span>
340
+ <span class="cline-any cline-yes">49x</span>
341
+ <span class="cline-any cline-yes">49x</span>
342
+ <span class="cline-any cline-yes">49x</span>
343
+ <span class="cline-any cline-yes">49x</span>
344
+ <span class="cline-any cline-yes">49x</span>
345
+ <span class="cline-any cline-yes">49x</span>
346
+ <span class="cline-any cline-yes">49x</span>
347
+ <span class="cline-any cline-yes">49x</span>
348
+ <span class="cline-any cline-yes">3x</span>
349
+ <span class="cline-any cline-yes">1x</span>
350
+ <span class="cline-any cline-yes">1x</span>
351
+ <span class="cline-any cline-yes">1x</span>
352
+ <span class="cline-any cline-yes">3x</span>
353
+ <span class="cline-any cline-yes">1x</span>
354
+ <span class="cline-any cline-yes">1x</span>
355
+ <span class="cline-any cline-yes">3x</span>
356
+ <span class="cline-any cline-yes">3x</span>
357
+ <span class="cline-any cline-yes">3x</span>
358
+ <span class="cline-any cline-yes">49x</span>
359
+ <span class="cline-any cline-yes">49x</span>
360
+ <span class="cline-any cline-yes">49x</span>
361
+ <span class="cline-any cline-yes">49x</span>
362
+ <span class="cline-any cline-yes">49x</span>
363
+ <span class="cline-any cline-yes">49x</span>
364
+ <span class="cline-any cline-yes">49x</span>
365
+ <span class="cline-any cline-yes">49x</span>
366
+ <span class="cline-any cline-yes">49x</span>
367
+ <span class="cline-any cline-yes">49x</span>
368
+ <span class="cline-any cline-yes">49x</span>
369
+ <span class="cline-any cline-yes">49x</span>
370
+ <span class="cline-any cline-yes">49x</span>
371
+ <span class="cline-any cline-yes">49x</span>
372
+ <span class="cline-any cline-yes">49x</span>
373
+ <span class="cline-any cline-yes">49x</span>
374
+ <span class="cline-any cline-yes">49x</span>
375
+ <span class="cline-any cline-yes">49x</span>
376
+ <span class="cline-any cline-yes">49x</span>
377
+ <span class="cline-any cline-yes">49x</span>
378
+ <span class="cline-any cline-yes">49x</span>
379
+ <span class="cline-any cline-yes">49x</span>
380
+ <span class="cline-any cline-yes">49x</span>
381
+ <span class="cline-any cline-yes">49x</span>
382
+ <span class="cline-any cline-yes">49x</span>
383
+ <span class="cline-any cline-yes">49x</span>
384
+ <span class="cline-any cline-yes">49x</span>
385
+ <span class="cline-any cline-yes">49x</span>
386
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/**
387
+ * useCrudifyWithNotifications Hook
388
+ *
389
+ * Provides wrapped CRUD operations from crudify SDK with automatic notifications.
390
+ *
391
+ * This is the main orchestrator that composes utilities and sub-hooks.
392
+ */
393
+ &nbsp;
394
+ import { useCallback } from 'react';
395
+ import { useGlobalNotification, type NotificationSeverity } from '../../components/GlobalNotificationProvider';
396
+ import type { CrudifyResponse } from '@nocios/crudify-sdk';
397
+ &nbsp;
398
+ // Import from centralized errorHandler to avoid duplication
399
+ import { ERROR_SEVERITY_MAP } from '../../utils/errorHandler';
400
+ &nbsp;
401
+ // Local imports
402
+ import type {
403
+ CrudifyWithNotificationsOptions,
404
+ ErrorMessageResolverOptions,
405
+ SuccessMessageResolverOptions,
406
+ AppStructureAction,
407
+ } from './types';
408
+ import { DEFAULT_ERROR_MESSAGE, DEFAULT_AUTO_HIDE_DURATION } from './constants';
409
+ import { shouldShowNotification } from './utils/notificationFilters';
410
+ import { resolveErrorMessage } from './utils/errorMessageResolver';
411
+ import { resolveSuccessMessage } from './utils/successMessageResolver';
412
+ import { useCrudOperations } from './hooks/useCrudOperations';
413
+ &nbsp;
414
+ /**
415
+ * Hook that wraps crudify SDK operations with automatic notifications
416
+ *
417
+ * @param options - Configuration options
418
+ * @returns Object with wrapped CRUD operations and utility functions
419
+ */
420
+ export const useCrudifyWithNotifications = (options: CrudifyWithNotificationsOptions = {}) =&gt; {
421
+ const { showNotification } = useGlobalNotification();
422
+ &nbsp;
423
+ // Destructure options with defaults
424
+ const {
425
+ showSuccessNotifications = false,
426
+ showErrorNotifications = true,
427
+ customErrorMessages = {},
428
+ defaultErrorMessage = DEFAULT_ERROR_MESSAGE,
429
+ autoHideDuration = DEFAULT_AUTO_HIDE_DURATION,
430
+ appStructure = [],
431
+ translateFn = (key: string) =&gt; key,
432
+ } = options;
433
+ &nbsp;
434
+ /**
435
+ * Safe translation helper - returns fallback if translation doesn't exist
436
+ */
437
+ const getSafeTranslation = useCallback(
438
+ (key: string, fallback?: string): string =&gt; {
439
+ const translated = translateFn(key);
440
+ if (translated === key) {
441
+ return fallback || translateFn('error.unknown');
442
+ }
443
+ return translated;
444
+ },
445
+ [translateFn]
446
+ );
447
+ &nbsp;
448
+ // Options for error message resolution
449
+ const errorResolverOptions: ErrorMessageResolverOptions = {
450
+ customErrorMessages,
451
+ defaultErrorMessage,
452
+ translateFn,
453
+ getSafeTranslation,
454
+ };
455
+ &nbsp;
456
+ // Options for success message resolution
457
+ const successResolverOptions: SuccessMessageResolverOptions = {
458
+ translateFn,
459
+ getSafeTranslation,
460
+ };
461
+ &nbsp;
462
+ /**
463
+ * Gets a human-readable error message from a CrudifyResponse
464
+ */
465
+ const getErrorMessage = useCallback(
466
+ (response: CrudifyResponse): string =&gt; resolveErrorMessage(response, errorResolverOptions),
467
+ // eslint-disable-next-line react-hooks/exhaustive-deps
468
+ [customErrorMessages, defaultErrorMessage, translateFn, getSafeTranslation]
469
+ );
470
+ &nbsp;
471
+ /**
472
+ * Gets the appropriate notification severity for an error
473
+ */
474
+ const getErrorSeverity = useCallback((response: CrudifyResponse): NotificationSeverity =&gt; {
475
+ if (response.errorCode &amp;&amp; ERROR_SEVERITY_MAP[response.errorCode as keyof typeof ERROR_SEVERITY_MAP]) {
476
+ return ERROR_SEVERITY_MAP[response.errorCode as keyof typeof ERROR_SEVERITY_MAP] as NotificationSeverity;
477
+ }
478
+ return 'error';
479
+ }, []);
480
+ &nbsp;
481
+ /**
482
+ * Gets a success message for an operation
483
+ */
484
+ const getSuccessMessage = useCallback(
485
+ (operation: string, moduleKey?: string, actionConfig?: AppStructureAction): string =&gt;
486
+ <span class="cstat-no" title="statement not covered" > resolveSuccessMessage(operation, moduleKey, actionConfig, successResolverOptions),</span>
487
+ // eslint-disable-next-line react-hooks/exhaustive-deps
488
+ [translateFn, getSafeTranslation]
489
+ );
490
+ &nbsp;
491
+ // Get wrapped CRUD operations from sub-hook
492
+ const { createItem, updateItem, deleteItem, readItem, readItems, transaction } = useCrudOperations({
493
+ showErrorNotifications,
494
+ showSuccessNotifications,
495
+ autoHideDuration,
496
+ appStructure,
497
+ showNotification,
498
+ getErrorMessage,
499
+ getErrorSeverity,
500
+ getSuccessMessage,
501
+ });
502
+ &nbsp;
503
+ /**
504
+ * Generic response handler for any crudify response
505
+ */
506
+ const handleResponse = useCallback(
507
+ (response: CrudifyResponse, successMessage?: string): CrudifyResponse =&gt; {
508
+ if (!response.success &amp;&amp; showErrorNotifications &amp;&amp; shouldShowNotification(response)) {
509
+ const message = getErrorMessage(response);
510
+ const severity = getErrorSeverity(response);
511
+ showNotification(message, severity, { autoHideDuration });
512
+ } else if (response.success &amp;&amp; showSuccessNotifications &amp;&amp; successMessage) {
513
+ showNotification(successMessage, 'success', { autoHideDuration });
514
+ }
515
+ &nbsp;
516
+ return response;
517
+ },
518
+ [
519
+ showErrorNotifications,
520
+ showSuccessNotifications,
521
+ showNotification,
522
+ getErrorMessage,
523
+ getErrorSeverity,
524
+ autoHideDuration,
525
+ ]
526
+ );
527
+ &nbsp;
528
+ return {
529
+ // Wrapped CRUD methods with automatic notifications
530
+ createItem,
531
+ updateItem,
532
+ deleteItem,
533
+ readItem,
534
+ readItems,
535
+ transaction,
536
+ &nbsp;
537
+ // Generic response handler
538
+ handleResponse,
539
+ &nbsp;
540
+ // Utility functions
541
+ getErrorMessage,
542
+ getErrorSeverity,
543
+ shouldShowNotification,
544
+ };
545
+ };
546
+ &nbsp;</pre></td></tr></table></pre>
547
+
548
+ <div class='push'></div><!-- for sticky footer -->
549
+ </div><!-- /wrapper -->
550
+ <div class='footer quiet pad2 space-top1 center small'>
551
+ Code coverage generated by
552
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
553
+ at 2026-02-07T06:55:20.810Z
554
+ </div>
555
+ <script src="../../prettify.js"></script>
556
+ <script>
557
+ window.onload = function () {
558
+ prettyPrint();
559
+ };
560
+ </script>
561
+ <script src="../../sorter.js"></script>
562
+ <script src="../../block-navigation.js"></script>
563
+ </body>
564
+ </html>
565
+