@nocios/crudify-components 2.0.60 → 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.
- package/.scannerwork/report-task.txt +2 -2
- package/coverage/components/CrudiaAutoGenerate.tsx.html +616 -0
- package/coverage/components/CrudiaFileField/CrudiaFileField.tsx.html +1312 -0
- package/coverage/components/CrudiaFileField/components/DeleteConfirmationDialog.tsx.html +355 -0
- package/coverage/components/CrudiaFileField/components/DropZone.tsx.html +523 -0
- package/coverage/components/CrudiaFileField/components/FileItemRow.tsx.html +835 -0
- package/coverage/components/CrudiaFileField/components/FileThumbnail.tsx.html +1585 -0
- package/coverage/components/CrudiaFileField/components/index.html +176 -0
- package/coverage/components/CrudiaFileField/components/index.ts.html +115 -0
- package/coverage/components/CrudiaFileField/hooks/index.html +146 -0
- package/coverage/components/CrudiaFileField/hooks/index.ts.html +112 -0
- package/coverage/components/CrudiaFileField/hooks/useDeleteConfirmation.ts.html +433 -0
- package/coverage/components/CrudiaFileField/hooks/useDragDrop.ts.html +409 -0
- package/coverage/components/CrudiaFileField/index.html +131 -0
- package/coverage/components/CrudiaFileField/index.ts.html +112 -0
- package/coverage/components/CrudiaFileField/utils/formatters.ts.html +169 -0
- package/coverage/components/CrudiaFileField/utils/icons.tsx.html +253 -0
- package/coverage/components/CrudiaFileField/utils/index.html +146 -0
- package/coverage/components/CrudiaFileField/utils/index.ts.html +103 -0
- package/coverage/components/CrudiaMarkdownField.tsx.html +676 -0
- package/coverage/components/CrudifyInitializer.tsx.html +712 -0
- package/coverage/components/CrudifyLogin/Forms/CheckCodeForm.tsx.html +640 -0
- package/coverage/components/CrudifyLogin/Forms/ForgotPasswordForm.tsx.html +730 -0
- package/coverage/components/CrudifyLogin/Forms/LoginForm.tsx.html +892 -0
- package/coverage/components/CrudifyLogin/Forms/ResetPasswordForm.tsx.html +1219 -0
- package/coverage/components/CrudifyLogin/Forms/components/CodeInput.tsx.html +289 -0
- package/coverage/components/CrudifyLogin/Forms/components/FormAlert.tsx.html +202 -0
- package/coverage/components/CrudifyLogin/Forms/components/PasswordInput.tsx.html +346 -0
- package/coverage/components/CrudifyLogin/Forms/components/index.html +161 -0
- package/coverage/components/CrudifyLogin/Forms/components/index.ts.html +106 -0
- package/coverage/components/CrudifyLogin/Forms/index.html +176 -0
- package/coverage/components/CrudifyLogin/Forms/index.ts.html +145 -0
- package/coverage/components/CrudifyLogin/Forms/utils/errorTranslation.ts.html +268 -0
- package/coverage/components/CrudifyLogin/Forms/utils/index.html +161 -0
- package/coverage/components/CrudifyLogin/Forms/utils/index.ts.html +121 -0
- package/coverage/components/CrudifyLogin/Forms/utils/paramUtils.ts.html +496 -0
- package/coverage/components/CrudifyLogin/Forms/utils/validation.ts.html +307 -0
- package/coverage/components/CrudifyLogin/components/CrudifyInitializer.tsx.html +268 -0
- package/coverage/components/CrudifyLogin/components/index.html +116 -0
- package/coverage/components/CrudifyLogin/context/CrudifyProvider.tsx.html +409 -0
- package/coverage/components/CrudifyLogin/context/I18nProvider.tsx.html +430 -0
- package/coverage/components/CrudifyLogin/context/LoginStateProvider.tsx.html +1261 -0
- package/coverage/components/CrudifyLogin/context/index.html +161 -0
- package/coverage/components/CrudifyLogin/context/index.ts.html +91 -0
- package/coverage/components/CrudifyLogin/hooks/index.html +131 -0
- package/coverage/components/CrudifyLogin/hooks/useCrudifyLogin.ts.html +463 -0
- package/coverage/components/CrudifyLogin/hooks/useTranslationsFromUrl.ts.html +391 -0
- package/coverage/components/CrudifyLogin/index.html +116 -0
- package/coverage/components/CrudifyLogin/index.tsx.html +466 -0
- package/coverage/components/CrudifyLogin/utils/index.html +116 -0
- package/coverage/components/CrudifyLogin/utils/secureStorage.ts.html +859 -0
- package/coverage/components/GlobalNotificationProvider.tsx.html +844 -0
- package/coverage/components/LoginComponent.tsx.html +676 -0
- package/coverage/components/PasswordRequirements/index.html +116 -0
- package/coverage/components/PasswordRequirements/index.tsx.html +232 -0
- package/coverage/components/PublicPolicies/FieldSelector/FieldSelector.tsx.html +1078 -0
- package/coverage/components/PublicPolicies/FieldSelector/index.html +131 -0
- package/coverage/components/PublicPolicies/FieldSelector/index.ts.html +88 -0
- package/coverage/components/PublicPolicies/Policies.tsx.html +625 -0
- package/coverage/components/PublicPolicies/PolicyItem/PolicyItem.tsx.html +886 -0
- package/coverage/components/PublicPolicies/PolicyItem/index.html +131 -0
- package/coverage/components/PublicPolicies/PolicyItem/index.ts.html +88 -0
- package/coverage/components/PublicPolicies/constants.ts.html +106 -0
- package/coverage/components/PublicPolicies/index.html +146 -0
- package/coverage/components/PublicPolicies/index.ts.html +88 -0
- package/coverage/components/Routing/AuthRoute.tsx.html +382 -0
- package/coverage/components/Routing/GuestRoute.tsx.html +352 -0
- package/coverage/components/Routing/ProtectedRoute.tsx.html +316 -0
- package/coverage/components/Routing/index.html +161 -0
- package/coverage/components/Routing/index.ts.html +109 -0
- package/coverage/components/SessionLoadingScreen/index.html +116 -0
- package/coverage/components/SessionLoadingScreen/index.tsx.html +379 -0
- package/coverage/components/SessionTimeIndicator/index.html +116 -0
- package/coverage/components/SessionTimeIndicator/index.tsx.html +523 -0
- package/coverage/components/UserProfile/UserProfileDisplay.tsx.html +931 -0
- package/coverage/components/UserProfile/index.html +131 -0
- package/coverage/components/UserProfile/index.ts.html +88 -0
- package/coverage/components/index.html +191 -0
- package/coverage/components/index.ts.html +178 -0
- package/coverage/core/CrossTabSyncManager.ts.html +853 -0
- package/coverage/core/CrudifyInitializationManager.ts.html +1279 -0
- package/coverage/core/SessionManager.ts.html +3064 -0
- package/coverage/core/index.html +146 -0
- package/coverage/coverage-final.json +76 -79
- package/coverage/hooks/index.html +191 -0
- package/coverage/hooks/index.ts.html +136 -0
- package/coverage/hooks/useAuth.ts.html +529 -0
- package/coverage/hooks/useAutoGenerate.ts.html +571 -0
- package/coverage/hooks/useCrudifyWithNotifications/constants.ts.html +247 -0
- package/coverage/hooks/useCrudifyWithNotifications/hooks/index.html +116 -0
- package/coverage/hooks/useCrudifyWithNotifications/hooks/useCrudOperations.ts.html +820 -0
- package/coverage/hooks/useCrudifyWithNotifications/index.html +146 -0
- package/coverage/hooks/useCrudifyWithNotifications/index.ts.html +118 -0
- package/coverage/hooks/useCrudifyWithNotifications/useCrudifyWithNotifications.ts.html +565 -0
- package/coverage/hooks/useCrudifyWithNotifications/utils/errorMessageResolver.ts.html +847 -0
- package/coverage/hooks/useCrudifyWithNotifications/utils/index.html +146 -0
- package/coverage/hooks/useCrudifyWithNotifications/utils/notificationFilters.ts.html +313 -0
- package/coverage/hooks/useCrudifyWithNotifications/utils/successMessageResolver.ts.html +265 -0
- package/coverage/hooks/useData.ts.html +829 -0
- package/coverage/hooks/useFileUpload/index.html +131 -0
- package/coverage/hooks/useFileUpload/index.ts.html +112 -0
- package/coverage/hooks/useFileUpload/services/index.html +131 -0
- package/coverage/hooks/useFileUpload/services/index.ts.html +106 -0
- package/coverage/hooks/useFileUpload/services/uploadService.ts.html +610 -0
- package/coverage/hooks/useFileUpload/useFileUpload.ts.html +2092 -0
- package/coverage/hooks/useFileUpload/utils/fileUtils.ts.html +271 -0
- package/coverage/hooks/useFileUpload/utils/index.html +161 -0
- package/coverage/hooks/useFileUpload/utils/index.ts.html +109 -0
- package/coverage/hooks/useFileUpload/utils/mimeTypes.ts.html +235 -0
- package/coverage/hooks/useFileUpload/utils/validation.ts.html +403 -0
- package/coverage/hooks/useSession/constants.ts.html +217 -0
- package/coverage/hooks/useSession/hooks/index.html +176 -0
- package/coverage/hooks/useSession/hooks/useAuthEventSubscriber.ts.html +331 -0
- package/coverage/hooks/useSession/hooks/useCrossTabSync.ts.html +535 -0
- package/coverage/hooks/useSession/hooks/useSessionActions.ts.html +664 -0
- package/coverage/hooks/useSession/hooks/useSessionState.ts.html +295 -0
- package/coverage/hooks/useSession/hooks/useTokenRefreshScheduler.ts.html +535 -0
- package/coverage/hooks/useSession/index.html +161 -0
- package/coverage/hooks/useSession/index.ts.html +127 -0
- package/coverage/hooks/useSession/types.ts.html +427 -0
- package/coverage/hooks/useSession/useSession.ts.html +526 -0
- package/coverage/hooks/useSession/utils/index.html +131 -0
- package/coverage/hooks/useSession/utils/initializeSession.ts.html +424 -0
- package/coverage/hooks/useSession/utils/tokenUtils.ts.html +298 -0
- package/coverage/hooks/useUserData.ts.html +1210 -0
- package/coverage/hooks/useUserProfile.ts.html +820 -0
- package/coverage/index.html +205 -235
- package/coverage/lcov-report/components/CrudiaAutoGenerate.tsx.html +616 -0
- package/coverage/lcov-report/components/CrudiaFileField/CrudiaFileField.tsx.html +1312 -0
- package/coverage/lcov-report/components/CrudiaFileField/components/DeleteConfirmationDialog.tsx.html +355 -0
- package/coverage/lcov-report/components/CrudiaFileField/components/DropZone.tsx.html +523 -0
- package/coverage/lcov-report/components/CrudiaFileField/components/FileItemRow.tsx.html +835 -0
- package/coverage/lcov-report/components/CrudiaFileField/components/FileThumbnail.tsx.html +1585 -0
- package/coverage/lcov-report/components/CrudiaFileField/components/index.html +176 -0
- package/coverage/lcov-report/components/CrudiaFileField/components/index.ts.html +115 -0
- package/coverage/lcov-report/components/CrudiaFileField/hooks/index.html +146 -0
- package/coverage/lcov-report/components/CrudiaFileField/hooks/index.ts.html +112 -0
- package/coverage/lcov-report/components/CrudiaFileField/hooks/useDeleteConfirmation.ts.html +433 -0
- package/coverage/lcov-report/components/CrudiaFileField/hooks/useDragDrop.ts.html +409 -0
- package/coverage/lcov-report/components/CrudiaFileField/index.html +131 -0
- package/coverage/lcov-report/components/CrudiaFileField/index.ts.html +112 -0
- package/coverage/lcov-report/components/CrudiaFileField/utils/formatters.ts.html +169 -0
- package/coverage/lcov-report/components/CrudiaFileField/utils/icons.tsx.html +253 -0
- package/coverage/lcov-report/components/CrudiaFileField/utils/index.html +146 -0
- package/coverage/lcov-report/components/CrudiaFileField/utils/index.ts.html +103 -0
- package/coverage/lcov-report/components/CrudiaMarkdownField.tsx.html +676 -0
- package/coverage/lcov-report/components/CrudifyInitializer.tsx.html +712 -0
- package/coverage/lcov-report/components/CrudifyLogin/Forms/CheckCodeForm.tsx.html +640 -0
- package/coverage/lcov-report/components/CrudifyLogin/Forms/ForgotPasswordForm.tsx.html +730 -0
- package/coverage/lcov-report/components/CrudifyLogin/Forms/LoginForm.tsx.html +892 -0
- package/coverage/lcov-report/components/CrudifyLogin/Forms/ResetPasswordForm.tsx.html +1219 -0
- package/coverage/lcov-report/components/CrudifyLogin/Forms/components/CodeInput.tsx.html +289 -0
- package/coverage/lcov-report/components/CrudifyLogin/Forms/components/FormAlert.tsx.html +202 -0
- package/coverage/lcov-report/components/CrudifyLogin/Forms/components/PasswordInput.tsx.html +346 -0
- package/coverage/lcov-report/components/CrudifyLogin/Forms/components/index.html +161 -0
- package/coverage/lcov-report/components/CrudifyLogin/Forms/components/index.ts.html +106 -0
- package/coverage/lcov-report/components/CrudifyLogin/Forms/index.html +176 -0
- package/coverage/lcov-report/components/CrudifyLogin/Forms/index.ts.html +145 -0
- package/coverage/lcov-report/components/CrudifyLogin/Forms/utils/errorTranslation.ts.html +268 -0
- package/coverage/lcov-report/components/CrudifyLogin/Forms/utils/index.html +161 -0
- package/coverage/lcov-report/components/CrudifyLogin/Forms/utils/index.ts.html +121 -0
- package/coverage/lcov-report/components/CrudifyLogin/Forms/utils/paramUtils.ts.html +496 -0
- package/coverage/lcov-report/components/CrudifyLogin/Forms/utils/validation.ts.html +307 -0
- package/coverage/lcov-report/components/CrudifyLogin/components/CrudifyInitializer.tsx.html +268 -0
- package/coverage/lcov-report/components/CrudifyLogin/components/index.html +116 -0
- package/coverage/lcov-report/components/CrudifyLogin/context/CrudifyProvider.tsx.html +409 -0
- package/coverage/lcov-report/components/CrudifyLogin/context/I18nProvider.tsx.html +430 -0
- package/coverage/lcov-report/components/CrudifyLogin/context/LoginStateProvider.tsx.html +1261 -0
- package/coverage/lcov-report/components/CrudifyLogin/context/index.html +161 -0
- package/coverage/lcov-report/components/CrudifyLogin/context/index.ts.html +91 -0
- package/coverage/lcov-report/components/CrudifyLogin/hooks/index.html +131 -0
- package/coverage/lcov-report/components/CrudifyLogin/hooks/useCrudifyLogin.ts.html +463 -0
- package/coverage/lcov-report/components/CrudifyLogin/hooks/useTranslationsFromUrl.ts.html +391 -0
- package/coverage/lcov-report/components/CrudifyLogin/index.html +116 -0
- package/coverage/lcov-report/components/CrudifyLogin/index.tsx.html +466 -0
- package/coverage/lcov-report/components/CrudifyLogin/utils/index.html +116 -0
- package/coverage/lcov-report/components/CrudifyLogin/utils/secureStorage.ts.html +859 -0
- package/coverage/lcov-report/components/GlobalNotificationProvider.tsx.html +844 -0
- package/coverage/lcov-report/components/LoginComponent.tsx.html +676 -0
- package/coverage/lcov-report/components/PasswordRequirements/index.html +116 -0
- package/coverage/lcov-report/components/PasswordRequirements/index.tsx.html +232 -0
- package/coverage/lcov-report/components/PublicPolicies/FieldSelector/FieldSelector.tsx.html +1078 -0
- package/coverage/lcov-report/components/PublicPolicies/FieldSelector/index.html +131 -0
- package/coverage/lcov-report/components/PublicPolicies/FieldSelector/index.ts.html +88 -0
- package/coverage/lcov-report/components/PublicPolicies/Policies.tsx.html +625 -0
- package/coverage/lcov-report/components/PublicPolicies/PolicyItem/PolicyItem.tsx.html +886 -0
- package/coverage/lcov-report/components/PublicPolicies/PolicyItem/index.html +131 -0
- package/coverage/lcov-report/components/PublicPolicies/PolicyItem/index.ts.html +88 -0
- package/coverage/lcov-report/components/PublicPolicies/constants.ts.html +106 -0
- package/coverage/lcov-report/components/PublicPolicies/index.html +146 -0
- package/coverage/lcov-report/components/PublicPolicies/index.ts.html +88 -0
- package/coverage/lcov-report/components/Routing/AuthRoute.tsx.html +382 -0
- package/coverage/lcov-report/components/Routing/GuestRoute.tsx.html +352 -0
- package/coverage/lcov-report/components/Routing/ProtectedRoute.tsx.html +316 -0
- package/coverage/lcov-report/components/Routing/index.html +161 -0
- package/coverage/lcov-report/components/Routing/index.ts.html +109 -0
- package/coverage/lcov-report/components/SessionLoadingScreen/index.html +116 -0
- package/coverage/lcov-report/components/SessionLoadingScreen/index.tsx.html +379 -0
- package/coverage/lcov-report/components/SessionTimeIndicator/index.html +116 -0
- package/coverage/lcov-report/components/SessionTimeIndicator/index.tsx.html +523 -0
- package/coverage/lcov-report/components/UserProfile/UserProfileDisplay.tsx.html +931 -0
- package/coverage/lcov-report/components/UserProfile/index.html +131 -0
- package/coverage/lcov-report/components/UserProfile/index.ts.html +88 -0
- package/coverage/lcov-report/components/index.html +191 -0
- package/coverage/lcov-report/components/index.ts.html +178 -0
- package/coverage/lcov-report/core/CrossTabSyncManager.ts.html +853 -0
- package/coverage/lcov-report/core/CrudifyInitializationManager.ts.html +1279 -0
- package/coverage/lcov-report/core/SessionManager.ts.html +3064 -0
- package/coverage/lcov-report/core/index.html +146 -0
- package/coverage/lcov-report/hooks/index.html +191 -0
- package/coverage/lcov-report/hooks/index.ts.html +136 -0
- package/coverage/lcov-report/hooks/useAuth.ts.html +529 -0
- package/coverage/lcov-report/hooks/useAutoGenerate.ts.html +571 -0
- package/coverage/lcov-report/hooks/useCrudifyWithNotifications/constants.ts.html +247 -0
- package/coverage/lcov-report/hooks/useCrudifyWithNotifications/hooks/index.html +116 -0
- package/coverage/lcov-report/hooks/useCrudifyWithNotifications/hooks/useCrudOperations.ts.html +820 -0
- package/coverage/lcov-report/hooks/useCrudifyWithNotifications/index.html +146 -0
- package/coverage/lcov-report/hooks/useCrudifyWithNotifications/index.ts.html +118 -0
- package/coverage/lcov-report/hooks/useCrudifyWithNotifications/useCrudifyWithNotifications.ts.html +565 -0
- package/coverage/lcov-report/hooks/useCrudifyWithNotifications/utils/errorMessageResolver.ts.html +847 -0
- package/coverage/lcov-report/hooks/useCrudifyWithNotifications/utils/index.html +146 -0
- package/coverage/lcov-report/hooks/useCrudifyWithNotifications/utils/notificationFilters.ts.html +313 -0
- package/coverage/lcov-report/hooks/useCrudifyWithNotifications/utils/successMessageResolver.ts.html +265 -0
- package/coverage/lcov-report/hooks/useData.ts.html +829 -0
- package/coverage/lcov-report/hooks/useFileUpload/index.html +131 -0
- package/coverage/lcov-report/hooks/useFileUpload/index.ts.html +112 -0
- package/coverage/lcov-report/hooks/useFileUpload/services/index.html +131 -0
- package/coverage/lcov-report/hooks/useFileUpload/services/index.ts.html +106 -0
- package/coverage/lcov-report/hooks/useFileUpload/services/uploadService.ts.html +610 -0
- package/coverage/lcov-report/hooks/useFileUpload/useFileUpload.ts.html +2092 -0
- package/coverage/lcov-report/hooks/useFileUpload/utils/fileUtils.ts.html +271 -0
- package/coverage/lcov-report/hooks/useFileUpload/utils/index.html +161 -0
- package/coverage/lcov-report/hooks/useFileUpload/utils/index.ts.html +109 -0
- package/coverage/lcov-report/hooks/useFileUpload/utils/mimeTypes.ts.html +235 -0
- package/coverage/lcov-report/hooks/useFileUpload/utils/validation.ts.html +403 -0
- package/coverage/lcov-report/hooks/useSession/constants.ts.html +217 -0
- package/coverage/lcov-report/hooks/useSession/hooks/index.html +176 -0
- package/coverage/lcov-report/hooks/useSession/hooks/useAuthEventSubscriber.ts.html +331 -0
- package/coverage/lcov-report/hooks/useSession/hooks/useCrossTabSync.ts.html +535 -0
- package/coverage/lcov-report/hooks/useSession/hooks/useSessionActions.ts.html +664 -0
- package/coverage/lcov-report/hooks/useSession/hooks/useSessionState.ts.html +295 -0
- package/coverage/lcov-report/hooks/useSession/hooks/useTokenRefreshScheduler.ts.html +535 -0
- package/coverage/lcov-report/hooks/useSession/index.html +161 -0
- package/coverage/lcov-report/hooks/useSession/index.ts.html +127 -0
- package/coverage/lcov-report/hooks/useSession/types.ts.html +427 -0
- package/coverage/lcov-report/hooks/useSession/useSession.ts.html +526 -0
- package/coverage/lcov-report/hooks/useSession/utils/index.html +131 -0
- package/coverage/lcov-report/hooks/useSession/utils/initializeSession.ts.html +424 -0
- package/coverage/lcov-report/hooks/useSession/utils/tokenUtils.ts.html +298 -0
- package/coverage/lcov-report/hooks/useUserData.ts.html +1210 -0
- package/coverage/lcov-report/hooks/useUserProfile.ts.html +820 -0
- package/coverage/lcov-report/index.html +205 -235
- package/coverage/lcov-report/providers/CrudifyThemeProvider.tsx.html +316 -0
- package/coverage/lcov-report/providers/SessionProvider.tsx.html +1120 -0
- package/coverage/lcov-report/providers/TranslationsProvider.tsx.html +1756 -0
- package/coverage/lcov-report/providers/index.html +146 -0
- package/coverage/lcov-report/services/credentialsEventBus.ts.html +319 -0
- package/coverage/lcov-report/services/crudifyAdminWrapper.ts.html +754 -0
- package/coverage/lcov-report/services/index.html +146 -0
- package/coverage/lcov-report/services/translationService.ts.html +1558 -0
- package/coverage/lcov-report/translations/critical.ts.html +1216 -0
- package/coverage/lcov-report/translations/index.html +116 -0
- package/coverage/lcov-report/types/index.html +116 -0
- package/coverage/lcov-report/types/password.ts.html +178 -0
- package/coverage/lcov-report/utils/authErrorDetector.ts.html +793 -0
- package/coverage/lcov-report/utils/authEventBus.ts.html +454 -0
- package/coverage/lcov-report/utils/configResolver.ts.html +460 -0
- package/coverage/lcov-report/utils/cookieSync.ts.html +595 -0
- package/coverage/lcov-report/utils/errorHandler.ts.html +1480 -0
- package/coverage/lcov-report/utils/errorTranslation.ts.html +868 -0
- package/coverage/lcov-report/utils/index.html +341 -0
- package/coverage/lcov-report/utils/index.ts.html +193 -0
- package/coverage/lcov-report/utils/jwtUtils.ts.html +325 -0
- package/coverage/lcov-report/utils/logger.ts.html +952 -0
- package/coverage/lcov-report/utils/navigationTracker.ts.html +562 -0
- package/coverage/lcov-report/utils/passwordValidation.ts.html +259 -0
- package/coverage/lcov-report/utils/preAuthCheck.ts.html +442 -0
- package/coverage/lcov-report/utils/redirectSecurity.ts.html +733 -0
- package/coverage/lcov-report/utils/tenantConfig.ts.html +712 -0
- package/coverage/lcov-report/utils/tokenStorage.ts.html +1825 -0
- package/coverage/lcov-report/utils/webCrypto.ts.html +490 -0
- package/coverage/lcov.info +15262 -14283
- package/coverage/providers/CrudifyThemeProvider.tsx.html +316 -0
- package/coverage/providers/SessionProvider.tsx.html +1120 -0
- package/coverage/providers/TranslationsProvider.tsx.html +1756 -0
- package/coverage/providers/index.html +146 -0
- package/coverage/services/credentialsEventBus.ts.html +319 -0
- package/coverage/services/crudifyAdminWrapper.ts.html +754 -0
- package/coverage/services/index.html +146 -0
- package/coverage/services/translationService.ts.html +1558 -0
- package/coverage/translations/critical.ts.html +1216 -0
- package/coverage/translations/index.html +116 -0
- package/coverage/types/index.html +116 -0
- package/coverage/types/password.ts.html +178 -0
- package/coverage/utils/authErrorDetector.ts.html +793 -0
- package/coverage/utils/authEventBus.ts.html +454 -0
- package/coverage/utils/configResolver.ts.html +460 -0
- package/coverage/utils/cookieSync.ts.html +595 -0
- package/coverage/utils/errorHandler.ts.html +1480 -0
- package/coverage/utils/errorTranslation.ts.html +868 -0
- package/coverage/utils/index.html +341 -0
- package/coverage/utils/index.ts.html +193 -0
- package/coverage/utils/jwtUtils.ts.html +325 -0
- package/coverage/utils/logger.ts.html +952 -0
- package/coverage/utils/navigationTracker.ts.html +562 -0
- package/coverage/utils/passwordValidation.ts.html +259 -0
- package/coverage/utils/preAuthCheck.ts.html +442 -0
- package/coverage/utils/redirectSecurity.ts.html +733 -0
- package/coverage/utils/tenantConfig.ts.html +712 -0
- package/coverage/utils/tokenStorage.ts.html +1825 -0
- package/coverage/utils/webCrypto.ts.html +490 -0
- package/dist/{CrudiaMarkdownField-CkiBwG-U.d.ts → CrudiaMarkdownField-DM6NR8zw.d.mts} +22 -22
- package/dist/{CrudiaMarkdownField-D-DqiXMQ.d.mts → CrudiaMarkdownField-UJaiSq9_.d.ts} +22 -22
- package/dist/{GlobalNotificationProvider-CdwdNv_8.d.mts → GlobalNotificationProvider-Cx540WKg.d.mts} +15 -15
- package/dist/{GlobalNotificationProvider-CdwdNv_8.d.ts → GlobalNotificationProvider-Cx540WKg.d.ts} +15 -15
- package/dist/chunk-2DXLCBOT.mjs +1 -0
- package/dist/chunk-DYRZIARH.js +1 -0
- package/dist/chunk-GCSJXEGT.mjs +1 -0
- package/dist/chunk-GJUZD5ZN.js +1 -0
- package/dist/chunk-K47I475N.js +1 -0
- package/dist/chunk-OCYZGEM5.mjs +1 -0
- package/dist/chunk-PI7HPRDB.js +1 -0
- package/dist/chunk-QVEUGJBY.mjs +1 -0
- package/dist/chunk-UROR7G7N.mjs +1 -0
- package/dist/chunk-XFT47DEL.js +1 -0
- package/dist/components.d.mts +8 -8
- package/dist/components.d.ts +8 -8
- package/dist/components.js +1 -1
- package/dist/components.mjs +1 -1
- package/dist/{errorTranslation-CF-5JClP.d.ts → errorTranslation-BEWwDbCH.d.ts} +1 -1
- package/dist/{errorTranslation-BcX8AaK7.d.mts → errorTranslation-DsGZon0M.d.mts} +1 -1
- package/dist/hooks.d.mts +3 -3
- package/dist/hooks.d.ts +3 -3
- package/dist/hooks.js +1 -1
- package/dist/hooks.mjs +1 -1
- package/dist/{index-DEDnmsdO.d.ts → index-Dnmttf62.d.ts} +131 -114
- package/dist/{index-D06kTP0C.d.mts → index-ZcF6nJt4.d.mts} +131 -114
- package/dist/index.d.mts +153 -106
- package/dist/index.d.ts +153 -106
- package/dist/index.js +2 -2
- package/dist/index.mjs +2 -2
- package/dist/{tenantConfig-CYnS9TPV.d.mts → tenantConfig-DxpfrAof.d.mts} +1 -1
- package/dist/{tenantConfig-CYnS9TPV.d.ts → tenantConfig-DxpfrAof.d.ts} +1 -1
- package/dist/utils.d.mts +25 -25
- package/dist/utils.d.ts +25 -25
- package/dist/utils.js +1 -1
- package/dist/utils.mjs +1 -1
- package/eslint.config.mjs +2 -2
- package/package.json +3 -3
- package/tests/helpers/mockFactories.ts +218 -0
- package/tests/helpers/testUtils.tsx +66 -1
- package/vitest.config.ts +1 -0
- package/dist/chunk-2WAUZ6KI.js +0 -1
- package/dist/chunk-3IGZNZCT.mjs +0 -1
- package/dist/chunk-43L2PP77.mjs +0 -1
- package/dist/chunk-6VS5OT3A.mjs +0 -1
- package/dist/chunk-BWJTTMKS.js +0 -1
- package/dist/chunk-EMPPCCVU.js +0 -1
- package/dist/chunk-J43UPGBE.js +0 -1
- package/dist/chunk-K6ZRXOJ7.mjs +0 -1
- package/dist/chunk-RYQQZTEP.js +0 -1
- package/dist/chunk-VTMSOK4V.mjs +0 -1
|
@@ -2,5 +2,5 @@ projectKey=nocios_crudify-components
|
|
|
2
2
|
serverUrl=http://localhost:9000
|
|
3
3
|
serverVersion=26.1.0.118079
|
|
4
4
|
dashboardUrl=http://localhost:9000/dashboard?id=nocios_crudify-components
|
|
5
|
-
ceTaskId=
|
|
6
|
-
ceTaskUrl=http://localhost:9000/api/ce/task?id=
|
|
5
|
+
ceTaskId=29f4fce9-8259-449a-8395-8e3c955a20cd
|
|
6
|
+
ceTaskUrl=http://localhost:9000/api/ce/task?id=29f4fce9-8259-449a-8395-8e3c955a20cd
|
|
@@ -0,0 +1,616 @@
|
|
|
1
|
+
|
|
2
|
+
<!doctype html>
|
|
3
|
+
<html lang="en">
|
|
4
|
+
|
|
5
|
+
<head>
|
|
6
|
+
<title>Code coverage report for components/CrudiaAutoGenerate.tsx</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">components</a> CrudiaAutoGenerate.tsx</h1>
|
|
23
|
+
<div class='clearfix'>
|
|
24
|
+
|
|
25
|
+
<div class='fl pad1y space-right2'>
|
|
26
|
+
<span class="strong">100% </span>
|
|
27
|
+
<span class="quiet">Statements</span>
|
|
28
|
+
<span class='fraction'>177/177</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'>27/27</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'>5/5</span>
|
|
43
|
+
</div>
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
<div class='fl pad1y space-right2'>
|
|
47
|
+
<span class="strong">100% </span>
|
|
48
|
+
<span class="quiet">Lines</span>
|
|
49
|
+
<span class='fraction'>177/177</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>
|
|
227
|
+
<a name='L162'></a><a href='#L162'>162</a>
|
|
228
|
+
<a name='L163'></a><a href='#L163'>163</a>
|
|
229
|
+
<a name='L164'></a><a href='#L164'>164</a>
|
|
230
|
+
<a name='L165'></a><a href='#L165'>165</a>
|
|
231
|
+
<a name='L166'></a><a href='#L166'>166</a>
|
|
232
|
+
<a name='L167'></a><a href='#L167'>167</a>
|
|
233
|
+
<a name='L168'></a><a href='#L168'>168</a>
|
|
234
|
+
<a name='L169'></a><a href='#L169'>169</a>
|
|
235
|
+
<a name='L170'></a><a href='#L170'>170</a>
|
|
236
|
+
<a name='L171'></a><a href='#L171'>171</a>
|
|
237
|
+
<a name='L172'></a><a href='#L172'>172</a>
|
|
238
|
+
<a name='L173'></a><a href='#L173'>173</a>
|
|
239
|
+
<a name='L174'></a><a href='#L174'>174</a>
|
|
240
|
+
<a name='L175'></a><a href='#L175'>175</a>
|
|
241
|
+
<a name='L176'></a><a href='#L176'>176</a>
|
|
242
|
+
<a name='L177'></a><a href='#L177'>177</a>
|
|
243
|
+
<a name='L178'></a><a href='#L178'>178</a></td><td class="line-coverage quiet"><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">24x</span>
|
|
257
|
+
<span class="cline-any cline-yes">24x</span>
|
|
258
|
+
<span class="cline-any cline-yes">24x</span>
|
|
259
|
+
<span class="cline-any cline-yes">24x</span>
|
|
260
|
+
<span class="cline-any cline-yes">24x</span>
|
|
261
|
+
<span class="cline-any cline-yes">24x</span>
|
|
262
|
+
<span class="cline-any cline-yes">1x</span>
|
|
263
|
+
<span class="cline-any cline-yes">1x</span>
|
|
264
|
+
<span class="cline-any cline-yes">1x</span>
|
|
265
|
+
<span class="cline-any cline-yes">1x</span>
|
|
266
|
+
<span class="cline-any cline-yes">1x</span>
|
|
267
|
+
<span class="cline-any cline-yes">24x</span>
|
|
268
|
+
<span class="cline-any cline-yes">1x</span>
|
|
269
|
+
<span class="cline-any cline-yes">1x</span>
|
|
270
|
+
<span class="cline-any cline-yes">1x</span>
|
|
271
|
+
<span class="cline-any cline-yes">1x</span>
|
|
272
|
+
<span class="cline-any cline-yes">1x</span>
|
|
273
|
+
<span class="cline-any cline-yes">1x</span>
|
|
274
|
+
<span class="cline-any cline-yes">1x</span>
|
|
275
|
+
<span class="cline-any cline-yes">1x</span>
|
|
276
|
+
<span class="cline-any cline-yes">1x</span>
|
|
277
|
+
<span class="cline-any cline-yes">1x</span>
|
|
278
|
+
<span class="cline-any cline-yes">1x</span>
|
|
279
|
+
<span class="cline-any cline-yes">1x</span>
|
|
280
|
+
<span class="cline-any cline-yes">1x</span>
|
|
281
|
+
<span class="cline-any cline-yes">1x</span>
|
|
282
|
+
<span class="cline-any cline-yes">1x</span>
|
|
283
|
+
<span class="cline-any cline-yes">1x</span>
|
|
284
|
+
<span class="cline-any cline-yes">1x</span>
|
|
285
|
+
<span class="cline-any cline-yes">1x</span>
|
|
286
|
+
<span class="cline-any cline-yes">1x</span>
|
|
287
|
+
<span class="cline-any cline-yes">1x</span>
|
|
288
|
+
<span class="cline-any cline-yes">1x</span>
|
|
289
|
+
<span class="cline-any cline-yes">1x</span>
|
|
290
|
+
<span class="cline-any cline-yes">1x</span>
|
|
291
|
+
<span class="cline-any cline-yes">1x</span>
|
|
292
|
+
<span class="cline-any cline-yes">1x</span>
|
|
293
|
+
<span class="cline-any cline-yes">1x</span>
|
|
294
|
+
<span class="cline-any cline-yes">1x</span>
|
|
295
|
+
<span class="cline-any cline-yes">1x</span>
|
|
296
|
+
<span class="cline-any cline-yes">1x</span>
|
|
297
|
+
<span class="cline-any cline-yes">1x</span>
|
|
298
|
+
<span class="cline-any cline-yes">1x</span>
|
|
299
|
+
<span class="cline-any cline-yes">1x</span>
|
|
300
|
+
<span class="cline-any cline-yes">1x</span>
|
|
301
|
+
<span class="cline-any cline-yes">1x</span>
|
|
302
|
+
<span class="cline-any cline-yes">1x</span>
|
|
303
|
+
<span class="cline-any cline-yes">1x</span>
|
|
304
|
+
<span class="cline-any cline-yes">1x</span>
|
|
305
|
+
<span class="cline-any cline-yes">1x</span>
|
|
306
|
+
<span class="cline-any cline-yes">1x</span>
|
|
307
|
+
<span class="cline-any cline-yes">1x</span>
|
|
308
|
+
<span class="cline-any cline-yes">1x</span>
|
|
309
|
+
<span class="cline-any cline-yes">1x</span>
|
|
310
|
+
<span class="cline-any cline-yes">1x</span>
|
|
311
|
+
<span class="cline-any cline-yes">1x</span>
|
|
312
|
+
<span class="cline-any cline-yes">1x</span>
|
|
313
|
+
<span class="cline-any cline-yes">1x</span>
|
|
314
|
+
<span class="cline-any cline-yes">1x</span>
|
|
315
|
+
<span class="cline-any cline-yes">1x</span>
|
|
316
|
+
<span class="cline-any cline-yes">1x</span>
|
|
317
|
+
<span class="cline-any cline-yes">1x</span>
|
|
318
|
+
<span class="cline-any cline-yes">1x</span>
|
|
319
|
+
<span class="cline-any cline-yes">1x</span>
|
|
320
|
+
<span class="cline-any cline-yes">1x</span>
|
|
321
|
+
<span class="cline-any cline-yes">1x</span>
|
|
322
|
+
<span class="cline-any cline-yes">1x</span>
|
|
323
|
+
<span class="cline-any cline-yes">1x</span>
|
|
324
|
+
<span class="cline-any cline-yes">1x</span>
|
|
325
|
+
<span class="cline-any cline-yes">1x</span>
|
|
326
|
+
<span class="cline-any cline-yes">1x</span>
|
|
327
|
+
<span class="cline-any cline-yes">1x</span>
|
|
328
|
+
<span class="cline-any cline-yes">35x</span>
|
|
329
|
+
<span class="cline-any cline-yes">35x</span>
|
|
330
|
+
<span class="cline-any cline-yes">35x</span>
|
|
331
|
+
<span class="cline-any cline-yes">35x</span>
|
|
332
|
+
<span class="cline-any cline-yes">35x</span>
|
|
333
|
+
<span class="cline-any cline-yes">35x</span>
|
|
334
|
+
<span class="cline-any cline-yes">35x</span>
|
|
335
|
+
<span class="cline-any cline-yes">35x</span>
|
|
336
|
+
<span class="cline-any cline-yes">35x</span>
|
|
337
|
+
<span class="cline-any cline-yes">35x</span>
|
|
338
|
+
<span class="cline-any cline-yes">35x</span>
|
|
339
|
+
<span class="cline-any cline-yes">35x</span>
|
|
340
|
+
<span class="cline-any cline-yes">35x</span>
|
|
341
|
+
<span class="cline-any cline-yes">35x</span>
|
|
342
|
+
<span class="cline-any cline-yes">35x</span>
|
|
343
|
+
<span class="cline-any cline-yes">35x</span>
|
|
344
|
+
<span class="cline-any cline-yes">35x</span>
|
|
345
|
+
<span class="cline-any cline-yes">35x</span>
|
|
346
|
+
<span class="cline-any cline-yes">35x</span>
|
|
347
|
+
<span class="cline-any cline-yes">1x</span>
|
|
348
|
+
<span class="cline-any cline-yes">1x</span>
|
|
349
|
+
<span class="cline-any cline-yes">35x</span>
|
|
350
|
+
<span class="cline-any cline-yes">35x</span>
|
|
351
|
+
<span class="cline-any cline-yes">35x</span>
|
|
352
|
+
<span class="cline-any cline-yes">35x</span>
|
|
353
|
+
<span class="cline-any cline-yes">35x</span>
|
|
354
|
+
<span class="cline-any cline-yes">35x</span>
|
|
355
|
+
<span class="cline-any cline-yes">35x</span>
|
|
356
|
+
<span class="cline-any cline-yes">35x</span>
|
|
357
|
+
<span class="cline-any cline-yes">35x</span>
|
|
358
|
+
<span class="cline-any cline-yes">24x</span>
|
|
359
|
+
<span class="cline-any cline-yes">24x</span>
|
|
360
|
+
<span class="cline-any cline-yes">16x</span>
|
|
361
|
+
<span class="cline-any cline-yes">15x</span>
|
|
362
|
+
<span class="cline-any cline-yes">15x</span>
|
|
363
|
+
<span class="cline-any cline-yes">14x</span>
|
|
364
|
+
<span class="cline-any cline-yes">12x</span>
|
|
365
|
+
<span class="cline-any cline-yes">12x</span>
|
|
366
|
+
<span class="cline-any cline-yes">12x</span>
|
|
367
|
+
<span class="cline-any cline-yes">12x</span>
|
|
368
|
+
<span class="cline-any cline-yes">11x</span>
|
|
369
|
+
<span class="cline-any cline-yes">10x</span>
|
|
370
|
+
<span class="cline-any cline-yes">35x</span>
|
|
371
|
+
<span class="cline-any cline-yes">35x</span>
|
|
372
|
+
<span class="cline-any cline-yes">1x</span>
|
|
373
|
+
<span class="cline-any cline-yes">1x</span>
|
|
374
|
+
<span class="cline-any cline-yes">1x</span>
|
|
375
|
+
<span class="cline-any cline-yes">1x</span>
|
|
376
|
+
<span class="cline-any cline-yes">35x</span>
|
|
377
|
+
<span class="cline-any cline-yes">35x</span>
|
|
378
|
+
<span class="cline-any cline-yes">35x</span>
|
|
379
|
+
<span class="cline-any cline-yes">35x</span>
|
|
380
|
+
<span class="cline-any cline-yes">35x</span>
|
|
381
|
+
<span class="cline-any cline-yes">35x</span>
|
|
382
|
+
<span class="cline-any cline-yes">35x</span>
|
|
383
|
+
<span class="cline-any cline-yes">35x</span>
|
|
384
|
+
<span class="cline-any cline-yes">35x</span>
|
|
385
|
+
<span class="cline-any cline-yes">35x</span>
|
|
386
|
+
<span class="cline-any cline-yes">35x</span>
|
|
387
|
+
<span class="cline-any cline-yes">35x</span>
|
|
388
|
+
<span class="cline-any cline-yes">35x</span>
|
|
389
|
+
<span class="cline-any cline-yes">35x</span>
|
|
390
|
+
<span class="cline-any cline-yes">35x</span>
|
|
391
|
+
<span class="cline-any cline-yes">2x</span>
|
|
392
|
+
<span class="cline-any cline-yes">2x</span>
|
|
393
|
+
<span class="cline-any cline-yes">2x</span>
|
|
394
|
+
<span class="cline-any cline-yes">33x</span>
|
|
395
|
+
<span class="cline-any cline-yes">35x</span>
|
|
396
|
+
<span class="cline-any cline-yes">35x</span>
|
|
397
|
+
<span class="cline-any cline-yes">35x</span>
|
|
398
|
+
<span class="cline-any cline-yes">13x</span>
|
|
399
|
+
<span class="cline-any cline-yes">13x</span>
|
|
400
|
+
<span class="cline-any cline-yes">13x</span>
|
|
401
|
+
<span class="cline-any cline-yes">13x</span>
|
|
402
|
+
<span class="cline-any cline-yes">13x</span>
|
|
403
|
+
<span class="cline-any cline-yes">13x</span>
|
|
404
|
+
<span class="cline-any cline-yes">13x</span>
|
|
405
|
+
<span class="cline-any cline-yes">13x</span>
|
|
406
|
+
<span class="cline-any cline-yes">13x</span>
|
|
407
|
+
<span class="cline-any cline-yes">13x</span>
|
|
408
|
+
<span class="cline-any cline-yes">13x</span>
|
|
409
|
+
<span class="cline-any cline-yes">13x</span>
|
|
410
|
+
<span class="cline-any cline-yes">13x</span>
|
|
411
|
+
<span class="cline-any cline-yes">22x</span>
|
|
412
|
+
<span class="cline-any cline-yes">35x</span>
|
|
413
|
+
<span class="cline-any cline-yes">35x</span>
|
|
414
|
+
<span class="cline-any cline-yes">35x</span>
|
|
415
|
+
<span class="cline-any cline-yes">35x</span>
|
|
416
|
+
<span class="cline-any cline-yes">35x</span>
|
|
417
|
+
<span class="cline-any cline-yes">35x</span>
|
|
418
|
+
<span class="cline-any cline-yes">1x</span>
|
|
419
|
+
<span class="cline-any cline-yes">1x</span>
|
|
420
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import React from 'react';
|
|
421
|
+
import TextField from '@mui/material/TextField';
|
|
422
|
+
import CircularProgress from '@mui/material/CircularProgress';
|
|
423
|
+
import InputAdornment from '@mui/material/InputAdornment';
|
|
424
|
+
import IconButton from '@mui/material/IconButton';
|
|
425
|
+
import RefreshIcon from '@mui/icons-material/Refresh';
|
|
426
|
+
import { useAutoGenerate } from '../hooks/useAutoGenerate';
|
|
427
|
+
import type { AutoGenerateConfig } from '../hooks/useAutoGenerate';
|
|
428
|
+
|
|
429
|
+
/**
|
|
430
|
+
* Sanitizes the helperText by removing dangerous scripts while allowing basic HTML
|
|
431
|
+
*/
|
|
432
|
+
const sanitizeHelperText = (text: string): string => {
|
|
433
|
+
return text
|
|
434
|
+
.replaceAll(/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi, '')
|
|
435
|
+
.replaceAll(/javascript:/gi, '')
|
|
436
|
+
.replaceAll(/on\w+\s*=/gi, '')
|
|
437
|
+
.replaceAll(/<iframe\b[^<]*(?:(?!<\/iframe>)<[^<]*)*<\/iframe>/gi, '');
|
|
438
|
+
};
|
|
439
|
+
|
|
440
|
+
/**
|
|
441
|
+
* Component for rendering sanitized HTML in helperText
|
|
442
|
+
*/
|
|
443
|
+
const SafeHtmlSpan: React.FC<{ html: string }> = ({ html }) => (
|
|
444
|
+
<span dangerouslySetInnerHTML={{ __html: sanitizeHelperText(html) }} />
|
|
445
|
+
);
|
|
446
|
+
|
|
447
|
+
export interface CrudiaAutoGenerateProps {
|
|
448
|
+
config: AutoGenerateConfig;
|
|
449
|
+
value?: string;
|
|
450
|
+
onChange?: (value: string) => void;
|
|
451
|
+
label?: string;
|
|
452
|
+
error?: boolean;
|
|
453
|
+
helperText?: string;
|
|
454
|
+
readOnly?: boolean;
|
|
455
|
+
disabled?: boolean;
|
|
456
|
+
name?: string;
|
|
457
|
+
containerRef?: React.RefObject<HTMLDivElement | null>;
|
|
458
|
+
}
|
|
459
|
+
|
|
460
|
+
/**
|
|
461
|
+
* Component for auto-generated fields (sequential codes)
|
|
462
|
+
*
|
|
463
|
+
* Features:
|
|
464
|
+
* - Auto-fetches the code on mount
|
|
465
|
+
* - Automatic duplicate error detection
|
|
466
|
+
* - "Regenerate" button in endAdornment when there is a duplicate error
|
|
467
|
+
* - Loading and error states
|
|
468
|
+
* - Read-only by default
|
|
469
|
+
* - Integration with useAutoGenerate hook
|
|
470
|
+
*
|
|
471
|
+
* Duplicate Error Handling Flow:
|
|
472
|
+
* 1. User opens form -> Code is generated automatically (e.g.: PROD-0013671)
|
|
473
|
+
* 2. User fills the form and submits
|
|
474
|
+
* 3. Backend returns "duplicate key" or "unique constraint" error
|
|
475
|
+
* 4. Parent form passes error={true} and helperText="Code already exists"
|
|
476
|
+
* 5. Component detects duplicate keywords and shows regenerate button
|
|
477
|
+
* 6. User clicks regenerate button -> New code is generated
|
|
478
|
+
* 7. onChange is called with new code -> Parent form clears the error
|
|
479
|
+
* 8. Regenerate button disappears (because there is no longer an error)
|
|
480
|
+
*
|
|
481
|
+
* @example
|
|
482
|
+
* ```tsx
|
|
483
|
+
* // Basic usage
|
|
484
|
+
* <CrudiaAutoGenerate
|
|
485
|
+
* config={{ prefix: "PROD-", padding: 7 }}
|
|
486
|
+
* onChange={(code) => setFormData({ ...formData, barCode: code })}
|
|
487
|
+
* label="Código de Barras"
|
|
488
|
+
* />
|
|
489
|
+
*
|
|
490
|
+
* // With duplicate error handling from the form
|
|
491
|
+
* <CrudiaAutoGenerate
|
|
492
|
+
* config={{ prefix: "PROD-", padding: 7 }}
|
|
493
|
+
* onChange={(code) => {
|
|
494
|
+
* setFormData({ ...formData, barCode: code });
|
|
495
|
+
* // Clear error when the code changes
|
|
496
|
+
* setFormErrors({ ...formErrors, barCode: null });
|
|
497
|
+
* }}
|
|
498
|
+
* label="Código de Barras"
|
|
499
|
+
* error={!!formErrors.barCode}
|
|
500
|
+
* helperText={formErrors.barCode}
|
|
501
|
+
* />
|
|
502
|
+
* ```
|
|
503
|
+
*/
|
|
504
|
+
export const CrudiaAutoGenerate: React.FC<CrudiaAutoGenerateProps> = ({
|
|
505
|
+
config,
|
|
506
|
+
value: externalValue,
|
|
507
|
+
onChange,
|
|
508
|
+
label,
|
|
509
|
+
error = false,
|
|
510
|
+
helperText,
|
|
511
|
+
readOnly: _readOnly = false,
|
|
512
|
+
disabled = false,
|
|
513
|
+
name,
|
|
514
|
+
containerRef,
|
|
515
|
+
}) => {
|
|
516
|
+
const {
|
|
517
|
+
value: generatedValue,
|
|
518
|
+
loading,
|
|
519
|
+
error: fetchError,
|
|
520
|
+
regenerate,
|
|
521
|
+
} = useAutoGenerate(config, {
|
|
522
|
+
autoFetch: !externalValue, // Only auto-fetch if there is no external value
|
|
523
|
+
onSuccess: (code) => {
|
|
524
|
+
onChange?.(code);
|
|
525
|
+
},
|
|
526
|
+
});
|
|
527
|
+
|
|
528
|
+
const displayValue = externalValue || generatedValue;
|
|
529
|
+
const hasError = error || !!fetchError;
|
|
530
|
+
const errorMessage = fetchError || helperText;
|
|
531
|
+
|
|
532
|
+
// Detect if the error is due to a duplicate (unique constraint)
|
|
533
|
+
const isDuplicateError =
|
|
534
|
+
hasError &&
|
|
535
|
+
errorMessage &&
|
|
536
|
+
(errorMessage.toLowerCase().includes('duplicate') ||
|
|
537
|
+
errorMessage.toLowerCase().includes('duplicado') ||
|
|
538
|
+
errorMessage.toLowerCase().includes('duplicada') ||
|
|
539
|
+
errorMessage.toLowerCase().includes('unique') ||
|
|
540
|
+
errorMessage.toLowerCase().includes('único') ||
|
|
541
|
+
errorMessage.toLowerCase().includes('unico') || // without accent
|
|
542
|
+
errorMessage.toLowerCase().includes('única') ||
|
|
543
|
+
errorMessage.toLowerCase().includes('unica') || // without accent
|
|
544
|
+
errorMessage.toLowerCase().includes('already exists') ||
|
|
545
|
+
errorMessage.toLowerCase().includes('ya existe') ||
|
|
546
|
+
errorMessage.toLowerCase().includes('e11000')); // MongoDB duplicate key error code
|
|
547
|
+
|
|
548
|
+
const handleRegenerate = async () => {
|
|
549
|
+
if (!disabled && !loading) {
|
|
550
|
+
await regenerate();
|
|
551
|
+
}
|
|
552
|
+
};
|
|
553
|
+
|
|
554
|
+
return (
|
|
555
|
+
<div ref={containerRef}>
|
|
556
|
+
<TextField
|
|
557
|
+
name={name}
|
|
558
|
+
label={label}
|
|
559
|
+
fullWidth
|
|
560
|
+
value={displayValue}
|
|
561
|
+
error={hasError}
|
|
562
|
+
helperText={errorMessage ? <SafeHtmlSpan html={errorMessage} /> : ' '}
|
|
563
|
+
disabled={disabled}
|
|
564
|
+
slotProps={{
|
|
565
|
+
input: {
|
|
566
|
+
readOnly: true, // Always readonly
|
|
567
|
+
startAdornment: loading ? (
|
|
568
|
+
<InputAdornment position="start">
|
|
569
|
+
<CircularProgress size={20} />
|
|
570
|
+
</InputAdornment>
|
|
571
|
+
) : undefined,
|
|
572
|
+
// Show regenerate button ONLY if there is a duplicate error
|
|
573
|
+
endAdornment:
|
|
574
|
+
isDuplicateError && !loading ? (
|
|
575
|
+
<InputAdornment position="end">
|
|
576
|
+
<IconButton
|
|
577
|
+
edge="end"
|
|
578
|
+
onClick={handleRegenerate}
|
|
579
|
+
disabled={disabled}
|
|
580
|
+
size="small"
|
|
581
|
+
color="error"
|
|
582
|
+
aria-label="regenerar código"
|
|
583
|
+
title="Regenerar código"
|
|
584
|
+
>
|
|
585
|
+
<RefreshIcon />
|
|
586
|
+
</IconButton>
|
|
587
|
+
</InputAdornment>
|
|
588
|
+
) : undefined,
|
|
589
|
+
},
|
|
590
|
+
}}
|
|
591
|
+
/>
|
|
592
|
+
</div>
|
|
593
|
+
);
|
|
594
|
+
};
|
|
595
|
+
|
|
596
|
+
export default CrudiaAutoGenerate;
|
|
597
|
+
</pre></td></tr></table></pre>
|
|
598
|
+
|
|
599
|
+
<div class='push'></div><!-- for sticky footer -->
|
|
600
|
+
</div><!-- /wrapper -->
|
|
601
|
+
<div class='footer quiet pad2 space-top1 center small'>
|
|
602
|
+
Code coverage generated by
|
|
603
|
+
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
604
|
+
at 2026-02-07T06:55:20.810Z
|
|
605
|
+
</div>
|
|
606
|
+
<script src="../prettify.js"></script>
|
|
607
|
+
<script>
|
|
608
|
+
window.onload = function () {
|
|
609
|
+
prettyPrint();
|
|
610
|
+
};
|
|
611
|
+
</script>
|
|
612
|
+
<script src="../sorter.js"></script>
|
|
613
|
+
<script src="../block-navigation.js"></script>
|
|
614
|
+
</body>
|
|
615
|
+
</html>
|
|
616
|
+
|