@jmruthers/pace-core 0.5.105 → 0.5.107

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 (159) hide show
  1. package/dist/{DataTable-BE0OXZKQ.d.ts → DataTable-D5cBRca8.d.ts} +1 -1
  2. package/dist/{DataTable-LWHFLTEW.js → DataTable-H2WIR2DN.js} +3 -3
  3. package/dist/{chunk-QPCAGLUS.js → chunk-4OX5PXHX.js} +5 -2
  4. package/dist/chunk-4OX5PXHX.js.map +1 -0
  5. package/dist/{chunk-75G3NZWN.js → chunk-5JJCXTVE.js} +293 -37
  6. package/dist/chunk-5JJCXTVE.js.map +1 -0
  7. package/dist/{chunk-HBGPLSA5.js → chunk-DMNMZKWS.js} +70 -24
  8. package/dist/chunk-DMNMZKWS.js.map +1 -0
  9. package/dist/{chunk-AZFPGDCJ.js → chunk-EWKCROSF.js} +133 -49
  10. package/dist/chunk-EWKCROSF.js.map +1 -0
  11. package/dist/{chunk-4BWGRQBG.js → chunk-NFPV7MRN.js} +22 -2
  12. package/dist/chunk-NFPV7MRN.js.map +1 -0
  13. package/dist/{chunk-DWYMGSGU.js → chunk-VJ7MPS2K.js} +2 -2
  14. package/dist/components.d.ts +3 -3
  15. package/dist/components.js +4 -4
  16. package/dist/{formatting-BfDeV-ja.d.ts → formatting-BiEv5oEk.d.ts} +32 -2
  17. package/dist/hooks.d.ts +2 -2
  18. package/dist/hooks.js +3 -3
  19. package/dist/index.d.ts +5 -5
  20. package/dist/index.js +6 -6
  21. package/dist/{types-BDg1mAGG.d.ts → types-D4TVpDa1.d.ts} +24 -1
  22. package/dist/{useToast-Bm6TnSK-.d.ts → useToast-DRah6K-g.d.ts} +5 -2
  23. package/dist/utils.d.ts +3 -3
  24. package/dist/utils.js +2 -2
  25. package/docs/api/classes/ColumnFactory.md +1 -1
  26. package/docs/api/classes/ErrorBoundary.md +1 -1
  27. package/docs/api/classes/InvalidScopeError.md +1 -1
  28. package/docs/api/classes/MissingUserContextError.md +1 -1
  29. package/docs/api/classes/OrganisationContextRequiredError.md +1 -1
  30. package/docs/api/classes/PermissionDeniedError.md +1 -1
  31. package/docs/api/classes/PublicErrorBoundary.md +1 -1
  32. package/docs/api/classes/RBACAuditManager.md +1 -1
  33. package/docs/api/classes/RBACCache.md +1 -1
  34. package/docs/api/classes/RBACEngine.md +1 -1
  35. package/docs/api/classes/RBACError.md +1 -1
  36. package/docs/api/classes/RBACNotInitializedError.md +1 -1
  37. package/docs/api/classes/SecureSupabaseClient.md +1 -1
  38. package/docs/api/classes/StorageUtils.md +1 -1
  39. package/docs/api/enums/FileCategory.md +1 -1
  40. package/docs/api/interfaces/AggregateConfig.md +4 -4
  41. package/docs/api/interfaces/ButtonProps.md +1 -1
  42. package/docs/api/interfaces/CardProps.md +1 -1
  43. package/docs/api/interfaces/ColorPalette.md +1 -1
  44. package/docs/api/interfaces/ColorShade.md +1 -1
  45. package/docs/api/interfaces/DataAccessRecord.md +1 -1
  46. package/docs/api/interfaces/DataRecord.md +1 -1
  47. package/docs/api/interfaces/DataTableAction.md +18 -18
  48. package/docs/api/interfaces/DataTableColumn.md +115 -10
  49. package/docs/api/interfaces/DataTableProps.md +38 -38
  50. package/docs/api/interfaces/DataTableToolbarButton.md +7 -7
  51. package/docs/api/interfaces/EmptyStateConfig.md +5 -5
  52. package/docs/api/interfaces/EnhancedNavigationMenuProps.md +1 -1
  53. package/docs/api/interfaces/FileDisplayProps.md +1 -1
  54. package/docs/api/interfaces/FileMetadata.md +1 -1
  55. package/docs/api/interfaces/FileReference.md +1 -1
  56. package/docs/api/interfaces/FileSizeLimits.md +1 -1
  57. package/docs/api/interfaces/FileUploadOptions.md +1 -1
  58. package/docs/api/interfaces/FileUploadProps.md +1 -1
  59. package/docs/api/interfaces/FooterProps.md +1 -1
  60. package/docs/api/interfaces/InactivityWarningModalProps.md +1 -1
  61. package/docs/api/interfaces/InputProps.md +1 -1
  62. package/docs/api/interfaces/LabelProps.md +1 -1
  63. package/docs/api/interfaces/LoginFormProps.md +1 -1
  64. package/docs/api/interfaces/NavigationAccessRecord.md +1 -1
  65. package/docs/api/interfaces/NavigationContextType.md +1 -1
  66. package/docs/api/interfaces/NavigationGuardProps.md +1 -1
  67. package/docs/api/interfaces/NavigationItem.md +1 -1
  68. package/docs/api/interfaces/NavigationMenuProps.md +1 -1
  69. package/docs/api/interfaces/NavigationProviderProps.md +1 -1
  70. package/docs/api/interfaces/Organisation.md +1 -1
  71. package/docs/api/interfaces/OrganisationContextType.md +1 -1
  72. package/docs/api/interfaces/OrganisationMembership.md +1 -1
  73. package/docs/api/interfaces/OrganisationProviderProps.md +1 -1
  74. package/docs/api/interfaces/OrganisationSecurityError.md +1 -1
  75. package/docs/api/interfaces/PaceAppLayoutProps.md +1 -1
  76. package/docs/api/interfaces/PaceLoginPageProps.md +1 -1
  77. package/docs/api/interfaces/PageAccessRecord.md +1 -1
  78. package/docs/api/interfaces/PagePermissionContextType.md +1 -1
  79. package/docs/api/interfaces/PagePermissionGuardProps.md +1 -1
  80. package/docs/api/interfaces/PagePermissionProviderProps.md +1 -1
  81. package/docs/api/interfaces/PaletteData.md +1 -1
  82. package/docs/api/interfaces/PermissionEnforcerProps.md +1 -1
  83. package/docs/api/interfaces/ProtectedRouteProps.md +1 -1
  84. package/docs/api/interfaces/PublicErrorBoundaryProps.md +1 -1
  85. package/docs/api/interfaces/PublicErrorBoundaryState.md +1 -1
  86. package/docs/api/interfaces/PublicLoadingSpinnerProps.md +1 -1
  87. package/docs/api/interfaces/PublicPageFooterProps.md +1 -1
  88. package/docs/api/interfaces/PublicPageHeaderProps.md +1 -1
  89. package/docs/api/interfaces/PublicPageLayoutProps.md +1 -1
  90. package/docs/api/interfaces/RBACConfig.md +1 -1
  91. package/docs/api/interfaces/RBACLogger.md +1 -1
  92. package/docs/api/interfaces/RoleBasedRouterContextType.md +1 -1
  93. package/docs/api/interfaces/RoleBasedRouterProps.md +1 -1
  94. package/docs/api/interfaces/RouteAccessRecord.md +1 -1
  95. package/docs/api/interfaces/RouteConfig.md +1 -1
  96. package/docs/api/interfaces/SecureDataContextType.md +1 -1
  97. package/docs/api/interfaces/SecureDataProviderProps.md +1 -1
  98. package/docs/api/interfaces/StorageConfig.md +1 -1
  99. package/docs/api/interfaces/StorageFileInfo.md +1 -1
  100. package/docs/api/interfaces/StorageFileMetadata.md +1 -1
  101. package/docs/api/interfaces/StorageListOptions.md +1 -1
  102. package/docs/api/interfaces/StorageListResult.md +1 -1
  103. package/docs/api/interfaces/StorageUploadOptions.md +1 -1
  104. package/docs/api/interfaces/StorageUploadResult.md +1 -1
  105. package/docs/api/interfaces/StorageUrlOptions.md +1 -1
  106. package/docs/api/interfaces/StyleImport.md +1 -1
  107. package/docs/api/interfaces/SwitchProps.md +1 -1
  108. package/docs/api/interfaces/ToastActionElement.md +1 -1
  109. package/docs/api/interfaces/ToastProps.md +1 -1
  110. package/docs/api/interfaces/UnifiedAuthContextType.md +1 -1
  111. package/docs/api/interfaces/UnifiedAuthProviderProps.md +1 -1
  112. package/docs/api/interfaces/UseInactivityTrackerOptions.md +1 -1
  113. package/docs/api/interfaces/UseInactivityTrackerReturn.md +1 -1
  114. package/docs/api/interfaces/UsePublicEventOptions.md +1 -1
  115. package/docs/api/interfaces/UsePublicEventReturn.md +1 -1
  116. package/docs/api/interfaces/UsePublicFileDisplayOptions.md +1 -1
  117. package/docs/api/interfaces/UsePublicFileDisplayReturn.md +1 -1
  118. package/docs/api/interfaces/UsePublicRouteParamsReturn.md +1 -1
  119. package/docs/api/interfaces/UseResolvedScopeOptions.md +1 -1
  120. package/docs/api/interfaces/UseResolvedScopeReturn.md +1 -1
  121. package/docs/api/interfaces/UserEventAccess.md +1 -1
  122. package/docs/api/interfaces/UserMenuProps.md +1 -1
  123. package/docs/api/interfaces/UserProfile.md +1 -1
  124. package/docs/api/modules.md +39 -18
  125. package/docs/api-reference/utilities.md +26 -3
  126. package/docs/implementation-guides/data-tables.md +390 -0
  127. package/package.json +1 -1
  128. package/src/components/DataTable/DataTable.tsx +4 -0
  129. package/src/components/DataTable/__tests__/DataTableCore.test.tsx +25 -10
  130. package/src/components/DataTable/components/EditableRow.tsx +174 -16
  131. package/src/components/DataTable/components/UnifiedTableBody.tsx +205 -35
  132. package/src/components/DataTable/types.ts +34 -4
  133. package/src/components/FileDisplay/FileDisplay.test.tsx +184 -201
  134. package/src/components/FileDisplay/FileDisplay.tsx +40 -39
  135. package/src/components/NavigationMenu/NavigationMenu.test.tsx +189 -13
  136. package/src/components/NavigationMenu/NavigationMenu.tsx +142 -35
  137. package/src/components/PublicLayout/__tests__/PublicPageHeader.test.tsx +4 -4
  138. package/src/components/Toast/Toast.tsx +1 -1
  139. package/src/hooks/public/usePublicFileDisplay.ts +25 -15
  140. package/src/hooks/useEventTheme.test.ts +11 -0
  141. package/src/hooks/useFileDisplay.ts +11 -0
  142. package/src/hooks/useSecureDataAccess.test.ts +22 -5
  143. package/src/hooks/useToast.ts +11 -2
  144. package/src/providers/UnifiedAuthProvider.smoke.test.tsx +67 -3
  145. package/src/providers/__tests__/ProviderLifecycle.test.tsx +72 -4
  146. package/src/services/__tests__/OrganisationService.pagination.test.ts +10 -2
  147. package/src/styles/core.css +11 -0
  148. package/src/utils/__tests__/formatting.unit.test.ts +33 -0
  149. package/src/utils/file-reference.test.ts +44 -5
  150. package/src/utils/file-reference.ts +49 -26
  151. package/src/utils/formatting.ts +57 -2
  152. package/src/validation/__tests__/passwordSchema.unit.test.ts +3 -3
  153. package/dist/chunk-4BWGRQBG.js.map +0 -1
  154. package/dist/chunk-75G3NZWN.js.map +0 -1
  155. package/dist/chunk-AZFPGDCJ.js.map +0 -1
  156. package/dist/chunk-HBGPLSA5.js.map +0 -1
  157. package/dist/chunk-QPCAGLUS.js.map +0 -1
  158. /package/dist/{DataTable-LWHFLTEW.js.map → DataTable-H2WIR2DN.js.map} +0 -0
  159. /package/dist/{chunk-DWYMGSGU.js.map → chunk-VJ7MPS2K.js.map} +0 -0
@@ -25,7 +25,12 @@ import {
25
25
  SelectSeparator,
26
26
  SelectTrigger,
27
27
  SelectValue
28
- } from "./chunk-75G3NZWN.js";
28
+ } from "./chunk-5JJCXTVE.js";
29
+ import {
30
+ usePermissions,
31
+ useRBAC,
32
+ useResolvedScope
33
+ } from "./chunk-QDDUU625.js";
29
34
  import {
30
35
  isPermitted,
31
36
  isSuperAdmin
@@ -44,10 +49,10 @@ import {
44
49
  useIsPublicPage,
45
50
  usePublicFileDisplay,
46
51
  usePublicPageContext
47
- } from "./chunk-HBGPLSA5.js";
52
+ } from "./chunk-DMNMZKWS.js";
48
53
  import {
49
54
  useToast
50
- } from "./chunk-QPCAGLUS.js";
55
+ } from "./chunk-4OX5PXHX.js";
51
56
  import {
52
57
  useEvents,
53
58
  useOrganisations
@@ -900,34 +905,100 @@ var NavigationMenu = React9.forwardRef(({
900
905
  } catch (error) {
901
906
  console.warn("[NavigationMenu] useUnifiedAuth not available, running in unauthenticated mode");
902
907
  }
908
+ let rbacContext = null;
909
+ try {
910
+ rbacContext = useRBAC();
911
+ } catch (error) {
912
+ console.warn("[NavigationMenu] useRBAC not available, permission filtering disabled");
913
+ }
914
+ const { supabase } = authContext || {};
915
+ const { selectedOrganisation } = authContext || {};
916
+ const selectedEvent = authContext?.selectedEvent || null;
917
+ const { resolvedScope, isLoading: scopeLoading } = useResolvedScope({
918
+ supabase: supabase || null,
919
+ selectedOrganisationId: selectedOrganisation?.id || null,
920
+ selectedEventId: selectedEvent?.event_id || null
921
+ });
922
+ const userId = authContext?.user?.id || "";
923
+ const scope = resolvedScope || { organisationId: "", eventId: void 0, appId: void 0 };
924
+ const { permissions: permissionMap, hasAnyPermission, isLoading: permissionsLoading } = usePermissions(
925
+ userId,
926
+ scope
927
+ );
903
928
  const filteredItems = React9.useMemo(() => {
904
- if (!filterByPermissions || !authContext) return items || [];
929
+ if (!filterByPermissions || !authContext || !rbacContext || scopeLoading || permissionsLoading || !resolvedScope?.organisationId) {
930
+ return (items || []).filter((item) => !item.meta?.hidden);
931
+ }
905
932
  return (items || []).filter((item) => {
906
933
  if (item.meta?.hidden) return false;
907
934
  if (item.permissions && item.permissions.length > 0) {
908
- const hasPermission = item.permissions.some((permission) => {
909
- if (typeof permission !== "string") return true;
910
- return false;
911
- });
912
- if (!hasPermission) return false;
935
+ const permissions = item.permissions.filter((p) => typeof p === "string").map((p) => p);
936
+ if (permissions.length > 0) {
937
+ const hasPermission = hasAnyPermission(permissions);
938
+ if (!hasPermission) return false;
939
+ }
913
940
  }
914
941
  if (item.roles && item.roles.length > 0) {
915
942
  const hasRole = item.roles.some((role) => {
916
943
  if (typeof role !== "string") return true;
917
- return false;
944
+ switch (role.toLowerCase()) {
945
+ case "super_admin":
946
+ case "super admin":
947
+ return rbacContext.isSuperAdmin;
948
+ case "org_admin":
949
+ case "org admin":
950
+ case "admin":
951
+ return rbacContext.isOrgAdmin || rbacContext.isSuperAdmin;
952
+ case "event_admin":
953
+ case "event admin":
954
+ return rbacContext.isEventAdmin || rbacContext.isSuperAdmin;
955
+ default:
956
+ return rbacContext.organisationRole === role || rbacContext.eventAppRole === role || rbacContext.isSuperAdmin;
957
+ }
918
958
  });
919
959
  if (!hasRole) return false;
920
960
  }
921
961
  if (item.accessLevel) {
922
962
  if (typeof item.accessLevel === "string") {
923
- const accessLevel = item.accessLevel;
924
- const hasAccessLevel = false;
925
- if (!hasAccessLevel) return false;
963
+ const accessLevel = item.accessLevel.toLowerCase();
964
+ const userEventRole = rbacContext.eventAppRole;
965
+ if (rbacContext.isSuperAdmin) {
966
+ } else {
967
+ const roleToAccessLevel = {
968
+ "viewer": "viewer",
969
+ "participant": "participant",
970
+ "planner": "planner",
971
+ "event_admin": "admin"
972
+ };
973
+ const userAccessLevel = userEventRole ? roleToAccessLevel[userEventRole] || "viewer" : null;
974
+ const levelHierarchy = {
975
+ viewer: 1,
976
+ participant: 2,
977
+ planner: 3,
978
+ admin: 4,
979
+ super: 5
980
+ };
981
+ const requiredLevel = levelHierarchy[accessLevel] || 0;
982
+ const userLevel = userAccessLevel ? levelHierarchy[userAccessLevel] || 0 : 0;
983
+ if (userLevel < requiredLevel) {
984
+ return false;
985
+ }
986
+ }
926
987
  }
927
988
  }
928
989
  return true;
929
990
  });
930
- }, [items, filterByPermissions, authContext]);
991
+ }, [
992
+ items,
993
+ filterByPermissions,
994
+ authContext,
995
+ rbacContext,
996
+ permissionMap,
997
+ hasAnyPermission,
998
+ scopeLoading,
999
+ permissionsLoading,
1000
+ resolvedScope
1001
+ ]);
931
1002
  React9.useEffect(() => {
932
1003
  if (auditLog && authContext) {
933
1004
  console.log("[NavigationMenu] Navigation access attempt:", {
@@ -991,17 +1062,30 @@ var NavigationMenu = React9.forwardRef(({
991
1062
  }
992
1063
  const isItemVisible = filteredItems.some((filtered) => filtered.id === item.id);
993
1064
  let hasPermission = true;
994
- if (item.permissions && item.permissions.length > 0) {
995
- hasPermission = item.permissions.some((permission) => {
996
- if (typeof permission !== "string") return true;
997
- return false;
998
- });
1065
+ if (item.permissions && item.permissions.length > 0 && rbacContext && hasAnyPermission) {
1066
+ const permissions = item.permissions.filter((p) => typeof p === "string").map((p) => p);
1067
+ if (permissions.length > 0) {
1068
+ hasPermission = hasAnyPermission(permissions);
1069
+ }
999
1070
  }
1000
- if (!hasPermission) {
1071
+ if (!hasPermission && rbacContext) {
1001
1072
  if (item.roles && item.roles.length > 0) {
1002
1073
  hasPermission = item.roles.some((role) => {
1003
1074
  if (typeof role !== "string") return true;
1004
- return false;
1075
+ switch (role.toLowerCase()) {
1076
+ case "super_admin":
1077
+ case "super admin":
1078
+ return rbacContext.isSuperAdmin;
1079
+ case "org_admin":
1080
+ case "org admin":
1081
+ case "admin":
1082
+ return rbacContext.isOrgAdmin || rbacContext.isSuperAdmin;
1083
+ case "event_admin":
1084
+ case "event admin":
1085
+ return rbacContext.isEventAdmin || rbacContext.isSuperAdmin;
1086
+ default:
1087
+ return rbacContext.organisationRole === role || rbacContext.eventAppRole === role || rbacContext.isSuperAdmin;
1088
+ }
1005
1089
  });
1006
1090
  }
1007
1091
  }
@@ -3138,17 +3222,16 @@ function FileDisplayContent({
3138
3222
  const baseClasses = "flex items-center justify-center bg-sec-100 text-sec-600 font-semibold rounded";
3139
3223
  return `${baseClasses} ${sizeClass} ${className}`.trim();
3140
3224
  }, [fallbackSize, className]);
3141
- useEffect8(() => {
3142
- setInternalFileUrls(new Map(fileUrls));
3143
- }, [fileUrls]);
3144
3225
  useEffect8(() => {
3145
3226
  const currentIds = fileReferences.map((f) => f.id).join(",");
3146
3227
  const prevIds = fileReferencesRef.current.map((f) => f.id).join(",");
3147
3228
  if (currentIds !== prevIds) {
3148
3229
  fileReferencesRef.current = fileReferences;
3149
- setInternalFileUrls(/* @__PURE__ */ new Map());
3230
+ setInternalFileUrls(new Map(fileUrls));
3231
+ } else {
3232
+ setInternalFileUrls(new Map(fileUrls));
3150
3233
  }
3151
- }, [fileReferences]);
3234
+ }, [fileReferences, fileUrls]);
3152
3235
  const handleDeleteClick = () => {
3153
3236
  setDeleteDialogOpen(true);
3154
3237
  };
@@ -3191,6 +3274,28 @@ function FileDisplayContent({
3191
3274
  const i = Math.floor(Math.log(bytes) / Math.log(k));
3192
3275
  return parseFloat((bytes / Math.pow(k, i)).toFixed(2)) + " " + sizes[i];
3193
3276
  };
3277
+ if (error) {
3278
+ if (ErrorComponent) {
3279
+ return /* @__PURE__ */ jsx22(ErrorComponent, { error, retry: clearError });
3280
+ }
3281
+ if (showFallback) {
3282
+ return /* @__PURE__ */ jsx22("div", { className: fallbackClasses, title: "File unavailable", children: computedFallbackText });
3283
+ }
3284
+ return /* @__PURE__ */ jsxs18("div", { className: `p-4 bg-acc-50 border border-acc-200 rounded-lg ${className}`, children: [
3285
+ /* @__PURE__ */ jsxs18("div", { className: "text-acc-600", children: [
3286
+ "Error loading file: ",
3287
+ error instanceof Error ? error.message : String(error)
3288
+ ] }),
3289
+ clearError && /* @__PURE__ */ jsx22(
3290
+ "button",
3291
+ {
3292
+ onClick: clearError,
3293
+ className: "mt-2 text-sm text-acc-700 hover:text-acc-800 underline",
3294
+ children: "Try again"
3295
+ }
3296
+ )
3297
+ ] });
3298
+ }
3194
3299
  if (fileCount === 0 && !isLoading) {
3195
3300
  if (showFallback) {
3196
3301
  return /* @__PURE__ */ jsxs18("div", { className: fallbackClasses, title: "No file", children: [
@@ -3215,28 +3320,6 @@ function FileDisplayContent({
3215
3320
  }
3216
3321
  return /* @__PURE__ */ jsx22("div", { className: `flex items-center justify-center p-4 ${className}`, children: /* @__PURE__ */ jsx22("div", { className: "animate-spin rounded-full h-8 w-8 border-b-2 border-main-500" }) });
3217
3322
  }
3218
- if (error) {
3219
- if (ErrorComponent) {
3220
- return /* @__PURE__ */ jsx22(ErrorComponent, { error, retry: clearError });
3221
- }
3222
- if (showFallback) {
3223
- return /* @__PURE__ */ jsx22("div", { className: fallbackClasses, title: "File unavailable", children: computedFallbackText });
3224
- }
3225
- return /* @__PURE__ */ jsxs18("div", { className: `p-4 bg-acc-50 border border-acc-200 rounded-lg ${className}`, children: [
3226
- /* @__PURE__ */ jsxs18("div", { className: "text-acc-600", children: [
3227
- "Error loading file: ",
3228
- error instanceof Error ? error.message : String(error)
3229
- ] }),
3230
- clearError && /* @__PURE__ */ jsx22(
3231
- "button",
3232
- {
3233
- onClick: clearError,
3234
- className: "mt-2 text-sm text-acc-700 hover:text-acc-800 underline",
3235
- children: "Try again"
3236
- }
3237
- )
3238
- ] });
3239
- }
3240
3323
  if ((category || displayOnly) && fileReference) {
3241
3324
  const isImage = fileReference.file_metadata.fileType?.startsWith("image/");
3242
3325
  if (displayOnly && isImage && !showDelete) {
@@ -3547,6 +3630,7 @@ function FileDisplayAuthenticated({
3547
3630
  className,
3548
3631
  children,
3549
3632
  onDelete: showDelete ? handleDelete : void 0,
3633
+ clearError: refetch,
3550
3634
  organisation_id,
3551
3635
  loadingComponent,
3552
3636
  errorComponent,
@@ -4273,4 +4357,4 @@ export {
4273
4357
  PublicPageDiagnostic,
4274
4358
  PublicPageContextChecker
4275
4359
  };
4276
- //# sourceMappingURL=chunk-AZFPGDCJ.js.map
4360
+ //# sourceMappingURL=chunk-EWKCROSF.js.map