@jmruthers/pace-core 0.5.193 → 0.6.1

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 (191) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/README.md +7 -1
  3. package/cursor-rules/00-pace-core-compliance.mdc +372 -0
  4. package/cursor-rules/01-standards-compliance.mdc +275 -0
  5. package/cursor-rules/02-project-structure.mdc +200 -0
  6. package/cursor-rules/03-solid-principles.mdc +341 -0
  7. package/cursor-rules/04-testing-standards.mdc +315 -0
  8. package/cursor-rules/05-bug-reports-and-features.mdc +246 -0
  9. package/cursor-rules/06-code-quality.mdc +392 -0
  10. package/cursor-rules/07-tech-stack-compliance.mdc +309 -0
  11. package/cursor-rules/CHANGELOG.md +101 -0
  12. package/cursor-rules/README.md +191 -0
  13. package/dist/{DataTable-Be6dH_dR.d.ts → DataTable-CH1U5Tpy.d.ts} +1 -1
  14. package/dist/{DataTable-5FU7IESH.js → DataTable-DQ7RSOHE.js} +6 -6
  15. package/dist/{PublicPageProvider-C0Sm_e5k.d.ts → PublicPageProvider-ce4xlHYA.d.ts} +34 -155
  16. package/dist/{UnifiedAuthProvider-RGJTDE2C.js → UnifiedAuthProvider-ATAP5UTR.js} +2 -2
  17. package/dist/{chunk-6C4YBBJM 5.js → chunk-3QRJFVBR.js} +1 -1
  18. package/dist/chunk-3QRJFVBR.js.map +1 -0
  19. package/dist/{chunk-IIELH4DL.js → chunk-3XTALGJF.js} +2 -2
  20. package/dist/{chunk-IIELH4DL.js.map → chunk-3XTALGJF.js.map} +1 -1
  21. package/dist/{chunk-HWIIPPNI.js → chunk-4N5C5XZU.js} +20 -20
  22. package/dist/chunk-4N5C5XZU.js.map +1 -0
  23. package/dist/{chunk-7EQTDTTJ.js → chunk-4ZC4GX36.js} +5 -5
  24. package/dist/{chunk-7EQTDTTJ.js 2.map → chunk-4ZC4GX36.js.map} +1 -1
  25. package/dist/{chunk-7FLMSG37.js → chunk-BYFSK72L.js} +22 -22
  26. package/dist/chunk-BYFSK72L.js.map +1 -0
  27. package/dist/{chunk-LFNCN2SP.js → chunk-EXUD6RNJ.js} +46 -7
  28. package/dist/chunk-EXUD6RNJ.js.map +1 -0
  29. package/dist/{chunk-NOAYCWCX 5.js → chunk-GLK6VM3F.js} +167 -169
  30. package/dist/chunk-GLK6VM3F.js.map +1 -0
  31. package/dist/{chunk-HW3OVDUF.js → chunk-J36DSWQK.js} +1 -1
  32. package/dist/{chunk-HW3OVDUF.js.map → chunk-J36DSWQK.js.map} +1 -1
  33. package/dist/{chunk-BC4IJKSL.js → chunk-JBKQ3SAO.js} +2 -2
  34. package/dist/{chunk-QWWZ5CAQ.js → chunk-LXQLPRQ2.js} +2 -2
  35. package/dist/{chunk-E3SPN4VZ 5.js → chunk-T33XF5ZC.js} +119 -114
  36. package/dist/chunk-T33XF5ZC.js.map +1 -0
  37. package/dist/{chunk-XNXXZ43G.js → chunk-XM25TVIE.js} +27 -4
  38. package/dist/chunk-XM25TVIE.js.map +1 -0
  39. package/dist/components.d.ts +3 -3
  40. package/dist/components.js +8 -8
  41. package/dist/hooks.d.ts +6 -6
  42. package/dist/hooks.js +17 -22
  43. package/dist/hooks.js.map +1 -1
  44. package/dist/index.d.ts +7 -7
  45. package/dist/index.js +15 -16
  46. package/dist/index.js.map +1 -1
  47. package/dist/providers.js +1 -1
  48. package/dist/rbac/index.d.ts +1 -1
  49. package/dist/rbac/index.js +5 -5
  50. package/dist/{usePublicRouteParams-TZe0gy-4.d.ts → usePublicRouteParams-BJAlWfuJ.d.ts} +3 -3
  51. package/dist/{useToast-C8gR5ir4.d.ts → useToast-AyaT-x7p.d.ts} +2 -2
  52. package/dist/utils.d.ts +1 -1
  53. package/dist/utils.js +3 -3
  54. package/docs/getting-started/cursor-rules.md +262 -0
  55. package/docs/getting-started/installation-guide.md +6 -1
  56. package/docs/getting-started/quick-start.md +6 -1
  57. package/docs/migration/MIGRATION_GUIDE.md +4 -4
  58. package/docs/migration/REACT_19_MIGRATION.md +227 -0
  59. package/docs/standards/README.md +39 -0
  60. package/docs/troubleshooting/migration.md +4 -4
  61. package/examples/PublicPages/PublicEventPage.tsx +1 -1
  62. package/package.json +11 -6
  63. package/scripts/audit-consuming-app.cjs +961 -0
  64. package/scripts/check-pace-core-compliance.cjs +34 -15
  65. package/scripts/install-cursor-rules.cjs +236 -0
  66. package/src/__tests__/helpers/test-providers.tsx +1 -1
  67. package/src/__tests__/helpers/test-utils.tsx +1 -1
  68. package/src/components/Badge/Badge.tsx +2 -4
  69. package/src/components/Button/Button.tsx +5 -4
  70. package/src/components/Calendar/Calendar.tsx +1 -1
  71. package/src/components/DataTable/DataTable.test.tsx +57 -93
  72. package/src/components/DataTable/DataTable.tsx +2 -2
  73. package/src/components/DataTable/__tests__/pagination.modes.test.tsx +13 -5
  74. package/src/components/DataTable/__tests__/ssr.strict-mode.test.tsx +12 -12
  75. package/src/components/DataTable/components/AccessDeniedPage.tsx +1 -1
  76. package/src/components/DataTable/components/BulkOperationsDropdown.tsx +1 -1
  77. package/src/components/DataTable/components/DataTableCore.tsx +4 -7
  78. package/src/components/DataTable/components/DataTableModals.tsx +1 -1
  79. package/src/components/DataTable/components/EditableRow.tsx +1 -1
  80. package/src/components/DataTable/components/UnifiedTableBody.tsx +6 -8
  81. package/src/components/DataTable/components/__tests__/DataTableModals.test.tsx +23 -23
  82. package/src/components/DataTable/components/__tests__/EditableRow.test.tsx +11 -11
  83. package/src/components/DataTable/components/__tests__/ExpandButton.test.tsx +36 -36
  84. package/src/components/DataTable/components/__tests__/GroupHeader.test.tsx +27 -27
  85. package/src/components/DataTable/components/__tests__/ImportModal.test.tsx +39 -39
  86. package/src/components/DataTable/components/__tests__/UnifiedTableBody.test.tsx +33 -33
  87. package/src/components/DataTable/components/__tests__/ViewRowModal.test.tsx +29 -29
  88. package/src/components/DataTable/hooks/useColumnReordering.ts +2 -2
  89. package/src/components/DataTable/hooks/useKeyboardNavigation.ts +2 -2
  90. package/src/components/DatePickerWithTimezone/DatePickerWithTimezone.test.tsx +8 -14
  91. package/src/components/Dialog/Dialog.tsx +6 -5
  92. package/src/components/ErrorBoundary/ErrorBoundary.tsx +1 -1
  93. package/src/components/EventSelector/EventSelector.tsx +1 -1
  94. package/src/components/FileDisplay/FileDisplay.test.tsx +2 -2
  95. package/src/components/Footer/Footer.tsx +1 -1
  96. package/src/components/Form/Form.test.tsx +36 -15
  97. package/src/components/Form/Form.tsx +30 -26
  98. package/src/components/Header/Header.tsx +1 -1
  99. package/src/components/InactivityWarningModal/InactivityWarningModal.test.tsx +40 -40
  100. package/src/components/InactivityWarningModal/InactivityWarningModal.tsx +1 -1
  101. package/src/components/Input/Input.tsx +28 -30
  102. package/src/components/Label/Label.tsx +1 -1
  103. package/src/components/LoadingSpinner/LoadingSpinner.tsx +1 -1
  104. package/src/components/LoginForm/LoginForm.test.tsx +42 -42
  105. package/src/components/LoginForm/LoginForm.tsx +8 -8
  106. package/src/components/NavigationMenu/NavigationMenu.tsx +1 -1
  107. package/src/components/PaceAppLayout/PaceAppLayout.performance.test.tsx +1 -1
  108. package/src/components/PaceAppLayout/PaceAppLayout.test.tsx +50 -50
  109. package/src/components/PaceAppLayout/PaceAppLayout.tsx +1 -1
  110. package/src/components/PaceAppLayout/README.md +1 -1
  111. package/src/components/PaceLoginPage/PaceLoginPage.tsx +1 -1
  112. package/src/components/PasswordChange/PasswordChangeForm.test.tsx +33 -33
  113. package/src/components/PasswordChange/PasswordChangeForm.tsx +1 -1
  114. package/src/components/Progress/Progress.tsx +1 -1
  115. package/src/components/PublicLayout/PublicPageLayout.tsx +1 -1
  116. package/src/components/Select/Select.tsx +33 -22
  117. package/src/components/SessionRestorationLoader/SessionRestorationLoader.tsx +1 -1
  118. package/src/components/Table/Table.tsx +1 -1
  119. package/src/components/Textarea/Textarea.tsx +27 -29
  120. package/src/components/Toast/Toast.tsx +1 -1
  121. package/src/components/Tooltip/Tooltip.tsx +1 -1
  122. package/src/components/UserMenu/UserMenu.tsx +1 -1
  123. package/src/hooks/__tests__/hooks.integration.test.tsx +80 -55
  124. package/src/hooks/__tests__/useStorage.unit.test.ts +36 -36
  125. package/src/hooks/public/usePublicEvent.ts +1 -1
  126. package/src/hooks/public/usePublicEventLogo.ts +1 -1
  127. package/src/hooks/public/usePublicRouteParams.ts +1 -1
  128. package/src/hooks/useDataTableState.ts +8 -18
  129. package/src/hooks/useFocusManagement.ts +2 -2
  130. package/src/hooks/useFocusTrap.ts +4 -4
  131. package/src/hooks/useFormDialog.ts +8 -7
  132. package/src/hooks/useInactivityTracker.ts +1 -1
  133. package/src/hooks/usePermissionCache.ts +1 -1
  134. package/src/hooks/useSecureDataAccess.ts +19 -4
  135. package/src/hooks/useToast.ts +2 -2
  136. package/src/providers/__tests__/OrganisationProvider.test.tsx +57 -13
  137. package/src/providers/__tests__/ProviderLifecycle.test.tsx +21 -6
  138. package/src/providers/__tests__/UnifiedAuthProvider.test.tsx +10 -10
  139. package/src/providers/services/UnifiedAuthProvider.tsx +22 -22
  140. package/src/providers/services/__tests__/AuthServiceProvider.integration.test.tsx +13 -3
  141. package/src/rbac/__tests__/adapters.comprehensive.test.tsx +24 -24
  142. package/src/rbac/components/EnhancedNavigationMenu.tsx +1 -1
  143. package/src/rbac/components/NavigationGuard.tsx +1 -1
  144. package/src/rbac/components/NavigationProvider.tsx +1 -1
  145. package/src/rbac/components/PagePermissionGuard.tsx +1 -1
  146. package/src/rbac/components/PagePermissionProvider.tsx +1 -1
  147. package/src/rbac/components/PermissionEnforcer.tsx +1 -1
  148. package/src/rbac/components/RoleBasedRouter.tsx +1 -1
  149. package/src/rbac/components/SecureDataProvider.tsx +1 -1
  150. package/src/rbac/secureClient.ts +12 -0
  151. package/src/utils/security/secureDataAccess.test.ts +31 -20
  152. package/src/utils/security/secureDataAccess.ts +4 -3
  153. package/dist/chunk-6C4YBBJM.js +0 -628
  154. package/dist/chunk-6C4YBBJM.js.map +0 -1
  155. package/dist/chunk-7D4SUZUM.js 2.map +0 -1
  156. package/dist/chunk-7EQTDTTJ.js.map +0 -1
  157. package/dist/chunk-7FLMSG37.js 2.map +0 -1
  158. package/dist/chunk-7FLMSG37.js.map +0 -1
  159. package/dist/chunk-E3SPN4VZ.js +0 -12917
  160. package/dist/chunk-E3SPN4VZ.js.map +0 -1
  161. package/dist/chunk-E66EQZE6 5.js +0 -37
  162. package/dist/chunk-E66EQZE6.js 2.map +0 -1
  163. package/dist/chunk-HWIIPPNI.js.map +0 -1
  164. package/dist/chunk-I7PSE6JW 5.js +0 -191
  165. package/dist/chunk-I7PSE6JW.js 2.map +0 -1
  166. package/dist/chunk-KNC55RTG.js 5.map +0 -1
  167. package/dist/chunk-KQCRWDSA.js 5.map +0 -1
  168. package/dist/chunk-LFNCN2SP.js 2.map +0 -1
  169. package/dist/chunk-LFNCN2SP.js.map +0 -1
  170. package/dist/chunk-LMC26NLJ 2.js +0 -84
  171. package/dist/chunk-NOAYCWCX.js +0 -4993
  172. package/dist/chunk-NOAYCWCX.js.map +0 -1
  173. package/dist/chunk-QWWZ5CAQ.js.map +0 -1
  174. package/dist/chunk-QXHPKYJV 3.js +0 -113
  175. package/dist/chunk-R77UEZ4E 3.js +0 -68
  176. package/dist/chunk-VBXEHIUJ.js 6.map +0 -1
  177. package/dist/chunk-XNXXZ43G.js.map +0 -1
  178. package/dist/chunk-ZSAAAMVR 6.js +0 -25
  179. package/dist/components.js 5.map +0 -1
  180. package/dist/styles/index 2.js +0 -12
  181. package/dist/styles/index.js 5.map +0 -1
  182. package/dist/theming/runtime 5.js +0 -19
  183. package/dist/theming/runtime.js 5.map +0 -1
  184. /package/dist/{DataTable-5FU7IESH.js.map → DataTable-DQ7RSOHE.js.map} +0 -0
  185. /package/dist/{UnifiedAuthProvider-RGJTDE2C.js.map → UnifiedAuthProvider-ATAP5UTR.js.map} +0 -0
  186. /package/dist/{chunk-BC4IJKSL.js.map → chunk-JBKQ3SAO.js.map} +0 -0
  187. /package/dist/{chunk-QWWZ5CAQ.js 3.map → chunk-LXQLPRQ2.js.map} +0 -0
  188. /package/examples/{rbac → RBAC}/CompleteRBACExample.tsx +0 -0
  189. /package/examples/{rbac → RBAC}/EventBasedApp.tsx +0 -0
  190. /package/examples/{rbac → RBAC}/PermissionExample.tsx +0 -0
  191. /package/examples/{rbac → RBAC}/index.ts +0 -0
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  useCan
3
- } from "./chunk-XNXXZ43G.js";
3
+ } from "./chunk-XM25TVIE.js";
4
4
  import {
5
5
  toast,
6
6
  useDataTablePerformance
7
- } from "./chunk-6C4YBBJM.js";
7
+ } from "./chunk-3QRJFVBR.js";
8
8
  import {
9
9
  useResolvedScope
10
- } from "./chunk-IIELH4DL.js";
10
+ } from "./chunk-3XTALGJF.js";
11
11
  import {
12
12
  useUnifiedAuth
13
- } from "./chunk-7FLMSG37.js";
13
+ } from "./chunk-BYFSK72L.js";
14
14
  import {
15
15
  isSuperAdmin
16
16
  } from "./chunk-KNC55RTG.js";
@@ -5511,7 +5511,7 @@ var require_lodash = __commonJS({
5511
5511
  import React21 from "react";
5512
5512
 
5513
5513
  // src/components/DataTable/components/DataTableCore.tsx
5514
- import React20, { useMemo as useMemo14, useCallback as useCallback10, useEffect as useEffect12, useRef as useRef6 } from "react";
5514
+ import React20, { useMemo as useMemo14, useCallback as useCallback9, useEffect as useEffect12, useRef as useRef6 } from "react";
5515
5515
  import { useReactTable } from "@tanstack/react-table";
5516
5516
  import { Edit, Trash, ChevronUp as ChevronUp2, ChevronDown as ChevronDown3, ChevronsUpDown } from "lucide-react";
5517
5517
 
@@ -5690,34 +5690,32 @@ var getTableClasses = (options = {}) => {
5690
5690
  // src/components/Input/Input.tsx
5691
5691
  import * as React3 from "react";
5692
5692
  import { jsx as jsx3 } from "react/jsx-runtime";
5693
- var Input = React3.forwardRef(
5694
- ({ className, variant = "default", size = "md", error, type, ...props }, ref) => {
5695
- return /* @__PURE__ */ jsx3(
5696
- "input",
5697
- {
5698
- type,
5699
- className: cn(
5700
- // Base styles
5701
- "flex w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",
5702
- // Variant styles
5703
- {
5704
- "border-input": variant === "default" && !error,
5705
- "border-destructive focus-visible:ring-destructive": variant === "destructive" || error
5706
- },
5707
- // Size styles
5708
- {
5709
- "h-8 px-2 py-1 text-xs": size === "sm",
5710
- "h-9 px-3 py-2 text-sm": size === "md",
5711
- "h-10 px-4 py-3 text-base": size === "lg"
5712
- },
5713
- className
5714
- ),
5715
- ref,
5716
- ...props
5717
- }
5718
- );
5719
- }
5720
- );
5693
+ function Input({ className, variant = "default", size = "md", error, type, ref, ...props }) {
5694
+ return /* @__PURE__ */ jsx3(
5695
+ "input",
5696
+ {
5697
+ type,
5698
+ className: cn(
5699
+ // Base styles
5700
+ "flex w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",
5701
+ // Variant styles
5702
+ {
5703
+ "border-input": variant === "default" && !error,
5704
+ "border-destructive focus-visible:ring-destructive": variant === "destructive" || error
5705
+ },
5706
+ // Size styles
5707
+ {
5708
+ "h-8 px-2 py-1 text-xs": size === "sm",
5709
+ "h-9 px-3 py-2 text-sm": size === "md",
5710
+ "h-10 px-4 py-3 text-base": size === "lg"
5711
+ },
5712
+ className
5713
+ ),
5714
+ ref,
5715
+ ...props
5716
+ }
5717
+ );
5718
+ }
5721
5719
  Input.displayName = "Input";
5722
5720
  var InputGroup = React3.forwardRef(
5723
5721
  ({ className, children, orientation = "vertical", spacing = "md", ...props }, ref) => {
@@ -5896,17 +5894,18 @@ var useSelectSearch = ({
5896
5894
  const filterChildren = (nodes) => {
5897
5895
  return React4.Children.map(nodes, (child) => {
5898
5896
  if (!React4.isValidElement(child)) return child;
5899
- const isSelectItem = child.props && (child.props["data-testid"] === "select-item" || child.props.value !== void 0);
5897
+ const childProps = child.props;
5898
+ const isSelectItem = childProps && (childProps["data-testid"] === "select-item" || childProps.value !== void 0);
5900
5899
  if (isSelectItem) {
5901
- const childText = React4.Children.toArray(child.props.children).join(" ").toLowerCase();
5900
+ const childText = React4.Children.toArray(childProps.children).join(" ").toLowerCase();
5902
5901
  const searchLower = searchTerm.toLowerCase();
5903
5902
  if (childText.includes(searchLower)) {
5904
5903
  return child;
5905
5904
  }
5906
5905
  return null;
5907
5906
  }
5908
- if (child.props.children) {
5909
- const filteredChildChildren = filterChildren(child.props.children);
5907
+ if (childProps.children) {
5908
+ const filteredChildChildren = filterChildren(childProps.children);
5910
5909
  if (React4.Children.count(filteredChildChildren) > 0) {
5911
5910
  return React4.cloneElement(child, {}, filteredChildChildren);
5912
5911
  }
@@ -6060,7 +6059,7 @@ var SelectTrigger = React4.forwardRef(
6060
6059
  ({ children, className, variant = "outline", size = "default", asChild = false, ...props }, ref) => {
6061
6060
  const { open, disabled, value, actions, direction = "down" } = useSelectContext();
6062
6061
  const opensUpward = direction === "up";
6063
- const handleClickRef = React4.useRef();
6062
+ const handleClickRef = React4.useRef(void 0);
6064
6063
  const handleClick = React4.useCallback((e) => {
6065
6064
  if (disabled) {
6066
6065
  e.preventDefault();
@@ -6119,10 +6118,15 @@ var SelectTrigger = React4.forwardRef(
6119
6118
  ...props
6120
6119
  };
6121
6120
  if (asChild) {
6122
- const childChildren = React4.Children.toArray(children.props.children);
6123
- const hasChevron = childChildren.some(
6124
- (child) => React4.isValidElement(child) && (child.type === ChevronDown || child.type === "svg" && child.props["data-testid"] === "chevron-down" || typeof child === "object" && "type" in child && typeof child.type === "function" && child.type.name === "ChevronDown")
6125
- );
6121
+ const childElement = children;
6122
+ const childChildren = React4.Children.toArray(childElement.props.children);
6123
+ const hasChevron = childChildren.some((child) => {
6124
+ if (React4.isValidElement(child)) {
6125
+ const childProps = child.props;
6126
+ return child.type === ChevronDown || child.type === "svg" && childProps["data-testid"] === "chevron-down" || typeof child === "object" && "type" in child && typeof child.type === "function" && child.type.name === "ChevronDown";
6127
+ }
6128
+ return false;
6129
+ });
6126
6130
  const childClassName = children.props.className;
6127
6131
  const mergedClassName = cn(
6128
6132
  triggerProps.className,
@@ -6318,8 +6322,11 @@ var SelectItem = React4.forwardRef(
6318
6322
  const getTextContent = (children2) => {
6319
6323
  if (typeof children2 === "string") return children2;
6320
6324
  if (typeof children2 === "number") return children2.toString();
6321
- if (React4.isValidElement(children2) && children2.props.children) {
6322
- return getTextContent(children2.props.children);
6325
+ if (React4.isValidElement(children2)) {
6326
+ const props = children2.props;
6327
+ if (props.children) {
6328
+ return getTextContent(props.children);
6329
+ }
6323
6330
  }
6324
6331
  if (Array.isArray(children2)) {
6325
6332
  return children2.map(getTextContent).join("");
@@ -7104,7 +7111,7 @@ function SelectEditField({
7104
7111
  onChange,
7105
7112
  className
7106
7113
  }) {
7107
- const logger2 = React9.useMemo(() => createLogger("SelectEditField"), []);
7114
+ const logger2 = createLogger("SelectEditField");
7108
7115
  const isSearchable = columnDef.selectSearchable !== false;
7109
7116
  const isCreatable = columnDef.creatable === true;
7110
7117
  const selectRef = React9.useRef(null);
@@ -7634,7 +7641,7 @@ function SelectEditField2({
7634
7641
  placeholder,
7635
7642
  onChange
7636
7643
  }) {
7637
- const logger2 = React10.useMemo(() => createLogger("SelectEditField"), []);
7644
+ const logger2 = createLogger("SelectEditField");
7638
7645
  const isSearchable = columnDef.selectSearchable !== false;
7639
7646
  const isCreatable = columnDef.creatable === true;
7640
7647
  const selectRef = React10.useRef(null);
@@ -7875,16 +7882,14 @@ var RowComponent = React10.memo(({
7875
7882
  }) => {
7876
7883
  const rowRef = useRef2(null);
7877
7884
  const firstInputRef = useRef2(null);
7878
- const logger2 = React10.useMemo(() => createLogger("RowComponent"), []);
7885
+ const logger2 = createLogger("RowComponent");
7879
7886
  const rowId = getRowIdSafe(row.original, row.index, getRowId);
7880
7887
  const hierarchicalRow = row.original;
7881
7888
  const isHierarchical = hierarchical?.enabled && hierarchicalRow?.isParent !== void 0;
7882
7889
  const isParent = isHierarchical && hierarchicalRow.isParent;
7883
7890
  const isChild = isHierarchical && !hierarchicalRow.isParent;
7884
- const visibleCells = React10.useMemo(() => row.getVisibleCells(), [row]);
7885
- const isSelected = React10.useMemo(() => {
7886
- return typeof row.getIsSelected === "function" ? row.getIsSelected() : false;
7887
- }, [row]);
7891
+ const visibleCells = row.getVisibleCells();
7892
+ const isSelected = typeof row.getIsSelected === "function" ? row.getIsSelected() : false;
7888
7893
  useEffect2(() => {
7889
7894
  if (isEditing && firstInputRef.current) {
7890
7895
  firstInputRef.current.focus();
@@ -8173,7 +8178,7 @@ function UnifiedTableBody({
8173
8178
  rbac,
8174
8179
  permissions
8175
8180
  }) {
8176
- const logger2 = React10.useMemo(() => createLogger("UnifiedTableBody"), []);
8181
+ const logger2 = createLogger("UnifiedTableBody");
8177
8182
  const headerRef = useRef2(null);
8178
8183
  const bodyRef = useRef2(null);
8179
8184
  const parentRef = useRef2(null);
@@ -8750,7 +8755,7 @@ function LoadingState() {
8750
8755
  }
8751
8756
 
8752
8757
  // src/components/DataTable/components/DataTableModals.tsx
8753
- import React15, { useEffect as useEffect5 } from "react";
8758
+ import { useEffect as useEffect5 } from "react";
8754
8759
 
8755
8760
  // src/components/DataTable/components/ImportModal.tsx
8756
8761
  import { useState as useState4, useRef as useRef3, useEffect as useEffect4 } from "react";
@@ -8878,16 +8883,16 @@ var DialogContent = React12.forwardRef(({
8878
8883
  minWidth,
8879
8884
  enableScrolling
8880
8885
  });
8881
- const handleEscapeKeyDown = React12.useCallback((event) => {
8886
+ const handleEscapeKeyDown = (event) => {
8882
8887
  if (preventCloseOnEscape) {
8883
8888
  event.preventDefault();
8884
8889
  }
8885
- }, [preventCloseOnEscape]);
8886
- const handlePointerDownOutside = React12.useCallback((event) => {
8890
+ };
8891
+ const handlePointerDownOutside = (event) => {
8887
8892
  if (preventCloseOnOutsideClick) {
8888
8893
  event.preventDefault();
8889
8894
  }
8890
- }, [preventCloseOnOutsideClick]);
8895
+ };
8891
8896
  const mergedStyle = React12.useMemo(() => {
8892
8897
  if (Object.keys(smartDimensions).length === 0) {
8893
8898
  return style;
@@ -9469,7 +9474,7 @@ function DataTableModals({
9469
9474
  onStoreFocus,
9470
9475
  onRestoreFocus
9471
9476
  }) {
9472
- const logger2 = React15.useMemo(() => createLogger("DataTableModals"), []);
9477
+ const logger2 = createLogger("DataTableModals");
9473
9478
  useEffect5(() => {
9474
9479
  if (showImportModal) {
9475
9480
  onStoreFocus?.();
@@ -9696,7 +9701,7 @@ var DataTableErrorBoundary = class extends Component {
9696
9701
  };
9697
9702
 
9698
9703
  // src/components/DataTable/hooks/useColumnOrderPersistence.ts
9699
- import { useState as useState5, useEffect as useEffect6, useCallback as useCallback3 } from "react";
9704
+ import { useState as useState5, useEffect as useEffect6, useCallback as useCallback2 } from "react";
9700
9705
  function useColumnOrderPersistence({
9701
9706
  tableId,
9702
9707
  defaultOrder = [],
@@ -9730,7 +9735,7 @@ function useColumnOrderPersistence({
9730
9735
  setIsLoaded(true);
9731
9736
  }
9732
9737
  }, [enablePersistence, finalStorageKey, storageKey, tableId]);
9733
- const saveColumnOrder = useCallback3((newOrder) => {
9738
+ const saveColumnOrder = useCallback2((newOrder) => {
9734
9739
  if (!enablePersistence || typeof window === "undefined") return;
9735
9740
  if (!storageKey && !tableId) return;
9736
9741
  try {
@@ -9739,11 +9744,11 @@ function useColumnOrderPersistence({
9739
9744
  logger2.warn("Failed to save column order to localStorage:", error);
9740
9745
  }
9741
9746
  }, [enablePersistence, finalStorageKey, storageKey, tableId]);
9742
- const updateColumnOrder = useCallback3((newOrder) => {
9747
+ const updateColumnOrder = useCallback2((newOrder) => {
9743
9748
  setColumnOrder(newOrder);
9744
9749
  saveColumnOrder(newOrder);
9745
9750
  }, [saveColumnOrder]);
9746
- const resetColumnOrder = useCallback3(() => {
9751
+ const resetColumnOrder = useCallback2(() => {
9747
9752
  setColumnOrder(defaultOrder);
9748
9753
  if (enablePersistence && (storageKey || tableId) && typeof window !== "undefined") {
9749
9754
  try {
@@ -9753,7 +9758,7 @@ function useColumnOrderPersistence({
9753
9758
  }
9754
9759
  }
9755
9760
  }, [defaultOrder, enablePersistence, finalStorageKey, storageKey, tableId]);
9756
- const clearAllPreferences = useCallback3(() => {
9761
+ const clearAllPreferences = useCallback2(() => {
9757
9762
  if (!enablePersistence || typeof window === "undefined") return;
9758
9763
  try {
9759
9764
  const keys = Object.keys(localStorage);
@@ -9776,7 +9781,7 @@ function useColumnOrderPersistence({
9776
9781
  }
9777
9782
 
9778
9783
  // src/components/DataTable/hooks/useColumnVisibilityPersistence.ts
9779
- import { useState as useState6, useEffect as useEffect7, useCallback as useCallback4 } from "react";
9784
+ import { useState as useState6, useEffect as useEffect7, useCallback as useCallback3 } from "react";
9780
9785
  function useColumnVisibilityPersistence({
9781
9786
  tableId,
9782
9787
  defaultVisibility = {},
@@ -9806,7 +9811,7 @@ function useColumnVisibilityPersistence({
9806
9811
  setIsLoaded(true);
9807
9812
  }
9808
9813
  }, [enablePersistence, finalStorageKey]);
9809
- const saveColumnVisibility = useCallback4((newVisibility) => {
9814
+ const saveColumnVisibility = useCallback3((newVisibility) => {
9810
9815
  if (!enablePersistence || typeof window === "undefined") return;
9811
9816
  try {
9812
9817
  localStorage.setItem(finalStorageKey, JSON.stringify(newVisibility));
@@ -9814,11 +9819,11 @@ function useColumnVisibilityPersistence({
9814
9819
  logger2.warn("Failed to save column visibility to localStorage:", error);
9815
9820
  }
9816
9821
  }, [enablePersistence, finalStorageKey]);
9817
- const updateColumnVisibility = useCallback4((newVisibility) => {
9822
+ const updateColumnVisibility = useCallback3((newVisibility) => {
9818
9823
  setColumnVisibility(newVisibility);
9819
9824
  saveColumnVisibility(newVisibility);
9820
9825
  }, [saveColumnVisibility]);
9821
- const resetColumnVisibility = useCallback4(() => {
9826
+ const resetColumnVisibility = useCallback3(() => {
9822
9827
  setColumnVisibility(defaultVisibility);
9823
9828
  if (enablePersistence && typeof window !== "undefined") {
9824
9829
  try {
@@ -9828,7 +9833,7 @@ function useColumnVisibilityPersistence({
9828
9833
  }
9829
9834
  }
9830
9835
  }, [defaultVisibility, enablePersistence, finalStorageKey]);
9831
- const clearAllPreferences = useCallback4(() => {
9836
+ const clearAllPreferences = useCallback3(() => {
9832
9837
  if (!enablePersistence || typeof window === "undefined") return;
9833
9838
  try {
9834
9839
  const keys = Object.keys(localStorage);
@@ -9851,7 +9856,7 @@ function useColumnVisibilityPersistence({
9851
9856
  }
9852
9857
 
9853
9858
  // src/components/DataTable/hooks/useDataTableState.ts
9854
- import { useReducer, useCallback as useCallback5, useMemo as useMemo6 } from "react";
9859
+ import { useReducer, useCallback as useCallback4, useMemo as useMemo6 } from "react";
9855
9860
  function dataTableReducer(state, action) {
9856
9861
  switch (action.type) {
9857
9862
  case "SET_SORTING":
@@ -9987,7 +9992,7 @@ function useDataTableState({
9987
9992
  hasFilters: state.columnFilters.length > 0 || state.searchQuery !== "",
9988
9993
  canClearFilters: state.columnFilters.length > 0 || state.searchQuery !== ""
9989
9994
  }), [state]);
9990
- const clearFilters = useCallback5(() => {
9995
+ const clearFilters = useCallback4(() => {
9991
9996
  dispatch({ type: "SET_COLUMN_FILTERS", payload: [] });
9992
9997
  dispatch({ type: "SET_SEARCH_QUERY", payload: "" });
9993
9998
  }, []);
@@ -10003,7 +10008,7 @@ function useDataTableState({
10003
10008
  import { useMemo as useMemo8 } from "react";
10004
10009
 
10005
10010
  // src/components/DataTable/hooks/useHierarchicalState.ts
10006
- import { useState as useState7, useCallback as useCallback6, useMemo as useMemo7, useEffect as useEffect8 } from "react";
10011
+ import { useState as useState7, useCallback as useCallback5, useMemo as useMemo7, useEffect as useEffect8 } from "react";
10007
10012
  function useHierarchicalState(data, config) {
10008
10013
  const initialExpandedState = useMemo7(() => {
10009
10014
  if (!config?.defaultExpanded) {
@@ -10065,7 +10070,7 @@ function useHierarchicalState(data, config) {
10065
10070
  }
10066
10071
  return visible;
10067
10072
  }, [data, expandedRows, parentChildMap]);
10068
- const toggleRow = useCallback6((rowId) => {
10073
+ const toggleRow = useCallback5((rowId) => {
10069
10074
  setExpandedRows((prev) => {
10070
10075
  const newSet = new Set(prev);
10071
10076
  if (newSet.has(rowId)) {
@@ -10079,32 +10084,32 @@ function useHierarchicalState(data, config) {
10079
10084
  return newSet;
10080
10085
  });
10081
10086
  }, [config]);
10082
- const expandAll = useCallback6(() => {
10087
+ const expandAll = useCallback5(() => {
10083
10088
  const parentIds = data.filter((row) => row.isParent).map((row) => row.id);
10084
10089
  setExpandedRows(new Set(parentIds));
10085
10090
  if (config?.onExpandedChange) {
10086
10091
  config.onExpandedChange(parentIds);
10087
10092
  }
10088
10093
  }, [data, config]);
10089
- const collapseAll = useCallback6(() => {
10094
+ const collapseAll = useCallback5(() => {
10090
10095
  setExpandedRows(/* @__PURE__ */ new Set());
10091
10096
  if (config?.onExpandedChange) {
10092
10097
  config.onExpandedChange([]);
10093
10098
  }
10094
10099
  }, [config]);
10095
- const isExpanded = useCallback6((rowId) => {
10100
+ const isExpanded = useCallback5((rowId) => {
10096
10101
  return expandedRows.has(rowId);
10097
10102
  }, [expandedRows]);
10098
- const hasChildren = useCallback6((rowId) => {
10103
+ const hasChildren = useCallback5((rowId) => {
10099
10104
  return parentChildMap.has(rowId) && (parentChildMap.get(rowId)?.length || 0) > 0;
10100
10105
  }, [parentChildMap]);
10101
- const getChildrenCount = useCallback6((rowId) => {
10106
+ const getChildrenCount = useCallback5((rowId) => {
10102
10107
  return parentChildMap.get(rowId)?.length || 0;
10103
10108
  }, [parentChildMap]);
10104
- const getExpandedIds = useCallback6(() => {
10109
+ const getExpandedIds = useCallback5(() => {
10105
10110
  return Array.from(expandedRows);
10106
10111
  }, [expandedRows]);
10107
- const setExpandedIds = useCallback6((ids) => {
10112
+ const setExpandedIds = useCallback5((ids) => {
10108
10113
  setExpandedRows(new Set(ids));
10109
10114
  }, []);
10110
10115
  return {
@@ -10285,7 +10290,7 @@ function useDataTableDataPipeline({
10285
10290
  }
10286
10291
 
10287
10292
  // src/components/DataTable/hooks/useServerSideDataEffect.ts
10288
- import { useCallback as useCallback7, useEffect as useEffect9 } from "react";
10293
+ import { useCallback as useCallback6, useEffect as useEffect9 } from "react";
10289
10294
  function useServerSideDataEffect({
10290
10295
  finalPaginationMode,
10291
10296
  serverSide,
@@ -10298,7 +10303,7 @@ function useServerSideDataEffect({
10298
10303
  fetchServerData,
10299
10304
  cleanup
10300
10305
  }) {
10301
- const handleServerSideChange = useCallback7(async () => {
10306
+ const handleServerSideChange = useCallback6(async () => {
10302
10307
  if (finalPaginationMode !== "server" || !serverSide) {
10303
10308
  return;
10304
10309
  }
@@ -10365,7 +10370,7 @@ function useEffectiveColumnOrder({
10365
10370
  }
10366
10371
 
10367
10372
  // src/components/DataTable/hooks/useTableHandlers.ts
10368
- import { useCallback as useCallback8, useMemo as useMemo10 } from "react";
10373
+ import { useCallback as useCallback7, useMemo as useMemo10 } from "react";
10369
10374
  function useTableHandlers({
10370
10375
  state,
10371
10376
  stateSnapshot,
@@ -10379,15 +10384,15 @@ function useTableHandlers({
10379
10384
  updateColumnOrder,
10380
10385
  onLayoutChange
10381
10386
  }) {
10382
- const handleSortingChange = useCallback8((updaterOrValue) => {
10387
+ const handleSortingChange = useCallback7((updaterOrValue) => {
10383
10388
  const nextValue = typeof updaterOrValue === "function" ? updaterOrValue(stateSnapshot.sorting) : updaterOrValue;
10384
10389
  actions.setSorting(nextValue);
10385
10390
  }, [actions, stateSnapshot.sorting]);
10386
- const handleColumnFiltersChange = useCallback8((updaterOrValue) => {
10391
+ const handleColumnFiltersChange = useCallback7((updaterOrValue) => {
10387
10392
  const nextValue = typeof updaterOrValue === "function" ? updaterOrValue(stateSnapshot.columnFilters) : updaterOrValue;
10388
10393
  actions.setColumnFilters(nextValue);
10389
10394
  }, [actions, stateSnapshot.columnFilters]);
10390
- const handleColumnVisibilityChange = useCallback8((updaterOrValue) => {
10395
+ const handleColumnVisibilityChange = useCallback7((updaterOrValue) => {
10391
10396
  const nextValue = typeof updaterOrValue === "function" ? updaterOrValue(stateSnapshot.columnVisibility) : updaterOrValue;
10392
10397
  actions.setColumnVisibility(nextValue);
10393
10398
  if (canPersistVisibility) {
@@ -10398,7 +10403,7 @@ function useTableHandlers({
10398
10403
  columnVisibility: nextValue
10399
10404
  });
10400
10405
  }, [actions, stateSnapshot.columnVisibility, canPersistVisibility, updateSavedColumnVisibility, onLayoutChange, effectiveColumnOrder]);
10401
- const handleRowSelectionChange = useCallback8((updaterOrValue) => {
10406
+ const handleRowSelectionChange = useCallback7((updaterOrValue) => {
10402
10407
  const currentSelection = selection ?? state.rowSelection;
10403
10408
  const nextSelection = typeof updaterOrValue === "function" ? updaterOrValue(currentSelection) : updaterOrValue;
10404
10409
  if (selection === void 0) {
@@ -10408,19 +10413,19 @@ function useTableHandlers({
10408
10413
  }
10409
10414
  onRowSelectionChange?.(nextSelection);
10410
10415
  }, [actions, selection, state.rowSelection, onRowSelectionChange]);
10411
- const handleGroupingChange = useCallback8((updaterOrValue) => {
10416
+ const handleGroupingChange = useCallback7((updaterOrValue) => {
10412
10417
  const nextValue = typeof updaterOrValue === "function" ? updaterOrValue(stateSnapshot.grouping) : updaterOrValue;
10413
10418
  actions.setGrouping(nextValue);
10414
10419
  }, [actions, stateSnapshot.grouping]);
10415
- const handleExpandedChange = useCallback8((updaterOrValue) => {
10420
+ const handleExpandedChange = useCallback7((updaterOrValue) => {
10416
10421
  const nextValue = typeof updaterOrValue === "function" ? updaterOrValue(stateSnapshot.expanded) : updaterOrValue;
10417
10422
  actions.setExpanded(nextValue);
10418
10423
  }, [actions, stateSnapshot.expanded]);
10419
- const handlePaginationChange = useCallback8((updaterOrValue) => {
10424
+ const handlePaginationChange = useCallback7((updaterOrValue) => {
10420
10425
  const nextValue = typeof updaterOrValue === "function" ? updaterOrValue(stateSnapshot.pagination) : updaterOrValue;
10421
10426
  actions.setPagination(nextValue);
10422
10427
  }, [actions, stateSnapshot.pagination]);
10423
- const handleColumnOrderChange = useCallback8((updaterOrValue) => {
10428
+ const handleColumnOrderChange = useCallback7((updaterOrValue) => {
10424
10429
  const nextValue = typeof updaterOrValue === "function" ? updaterOrValue(stateSnapshot.columnOrder) : updaterOrValue;
10425
10430
  const normalizedOrder = nextValue.includes("select") ? ["select", ...nextValue.filter((id) => id !== "select")] : nextValue;
10426
10431
  actions.setColumnOrder(normalizedOrder);
@@ -11517,7 +11522,7 @@ function getRowDescription(rowIndex, totalRows, isSelected = false, isEditing =
11517
11522
  }
11518
11523
 
11519
11524
  // src/components/DataTable/hooks/useKeyboardNavigation.ts
11520
- import { useCallback as useCallback9, useEffect as useEffect11, useRef as useRef5, useState as useState9 } from "react";
11525
+ import { useCallback as useCallback8, useEffect as useEffect11, useRef as useRef5, useState as useState9 } from "react";
11521
11526
  function useKeyboardNavigation(rowCount, columnCount, options = {}) {
11522
11527
  const {
11523
11528
  enabled = true,
@@ -11535,8 +11540,8 @@ function useKeyboardNavigation(rowCount, columnCount, options = {}) {
11535
11540
  const internalTableRef = useRef5(null);
11536
11541
  const tableRef = externalTableRef || internalTableRef;
11537
11542
  const storedFocusRef = useRef5(null);
11538
- const navigationTimeoutRef = useRef5();
11539
- const getCellElement = useCallback9((rowIndex, columnIndex) => {
11543
+ const navigationTimeoutRef = useRef5(void 0);
11544
+ const getCellElement = useCallback8((rowIndex, columnIndex) => {
11540
11545
  if (!tableRef.current) return null;
11541
11546
  const tbody = tableRef.current.querySelector("tbody");
11542
11547
  if (!tbody) return null;
@@ -11546,7 +11551,7 @@ function useKeyboardNavigation(rowCount, columnCount, options = {}) {
11546
11551
  const cells = row.querySelectorAll('td[role="cell"], th[role="columnheader"]');
11547
11552
  return cells[columnIndex] || null;
11548
11553
  }, []);
11549
- const getHeaderElement = useCallback9((columnIndex) => {
11554
+ const getHeaderElement = useCallback8((columnIndex) => {
11550
11555
  if (!tableRef.current) return null;
11551
11556
  const thead = tableRef.current.querySelector("thead");
11552
11557
  if (!thead) return null;
@@ -11555,7 +11560,7 @@ function useKeyboardNavigation(rowCount, columnCount, options = {}) {
11555
11560
  const headers = headerRow.querySelectorAll('th[role="columnheader"]');
11556
11561
  return headers[columnIndex] || null;
11557
11562
  }, []);
11558
- const focusCell = useCallback9((rowIndex, columnIndex) => {
11563
+ const focusCell = useCallback8((rowIndex, columnIndex) => {
11559
11564
  if (!enabled) return;
11560
11565
  const clampedRowIndex = Math.max(0, Math.min(rowIndex, rowCount - 1));
11561
11566
  const clampedColumnIndex = Math.max(0, Math.min(columnIndex, columnCount - 1));
@@ -11574,7 +11579,7 @@ function useKeyboardNavigation(rowCount, columnCount, options = {}) {
11574
11579
  announce(`Row ${clampedRowIndex + 1}, Column ${clampedColumnIndex + 1}`);
11575
11580
  }
11576
11581
  }, [enabled, rowCount, columnCount, getCellElement, onFocusChange, announceNavigation]);
11577
- const focusNext = useCallback9(() => {
11582
+ const focusNext = useCallback8(() => {
11578
11583
  const { focusedRowIndex, focusedColumnIndex } = state;
11579
11584
  if (focusedColumnIndex < columnCount - 1) {
11580
11585
  focusCell(focusedRowIndex, focusedColumnIndex + 1);
@@ -11582,7 +11587,7 @@ function useKeyboardNavigation(rowCount, columnCount, options = {}) {
11582
11587
  focusCell(focusedRowIndex + 1, 0);
11583
11588
  }
11584
11589
  }, [state, columnCount, rowCount, focusCell]);
11585
- const focusPrevious = useCallback9(() => {
11590
+ const focusPrevious = useCallback8(() => {
11586
11591
  const { focusedRowIndex, focusedColumnIndex } = state;
11587
11592
  if (focusedColumnIndex > 0) {
11588
11593
  focusCell(focusedRowIndex, focusedColumnIndex - 1);
@@ -11590,37 +11595,37 @@ function useKeyboardNavigation(rowCount, columnCount, options = {}) {
11590
11595
  focusCell(focusedRowIndex - 1, columnCount - 1);
11591
11596
  }
11592
11597
  }, [state, columnCount, focusCell]);
11593
- const focusUp = useCallback9(() => {
11598
+ const focusUp = useCallback8(() => {
11594
11599
  const { focusedRowIndex, focusedColumnIndex } = state;
11595
11600
  if (focusedRowIndex > 0) {
11596
11601
  focusCell(focusedRowIndex - 1, focusedColumnIndex);
11597
11602
  }
11598
11603
  }, [state, focusCell]);
11599
- const focusDown = useCallback9(() => {
11604
+ const focusDown = useCallback8(() => {
11600
11605
  const { focusedRowIndex, focusedColumnIndex } = state;
11601
11606
  if (focusedRowIndex < rowCount - 1) {
11602
11607
  focusCell(focusedRowIndex + 1, focusedColumnIndex);
11603
11608
  }
11604
11609
  }, [state, rowCount, focusCell]);
11605
- const focusRowStart = useCallback9(() => {
11610
+ const focusRowStart = useCallback8(() => {
11606
11611
  const { focusedRowIndex } = state;
11607
11612
  focusCell(focusedRowIndex, 0);
11608
11613
  }, [state, focusCell]);
11609
- const focusRowEnd = useCallback9(() => {
11614
+ const focusRowEnd = useCallback8(() => {
11610
11615
  const { focusedRowIndex } = state;
11611
11616
  focusCell(focusedRowIndex, columnCount - 1);
11612
11617
  }, [state, columnCount, focusCell]);
11613
- const focusTableStart = useCallback9(() => {
11618
+ const focusTableStart = useCallback8(() => {
11614
11619
  focusCell(0, 0);
11615
11620
  }, [focusCell]);
11616
- const focusTableEnd = useCallback9(() => {
11621
+ const focusTableEnd = useCallback8(() => {
11617
11622
  focusCell(rowCount - 1, columnCount - 1);
11618
11623
  }, [rowCount, columnCount, focusCell]);
11619
- const getCellTabIndex = useCallback9((rowIndex, columnIndex) => {
11624
+ const getCellTabIndex = useCallback8((rowIndex, columnIndex) => {
11620
11625
  if (!enabled) return -1;
11621
11626
  return state.focusedRowIndex === rowIndex && state.focusedColumnIndex === columnIndex ? 0 : -1;
11622
11627
  }, [enabled, state.focusedRowIndex, state.focusedColumnIndex]);
11623
- const getCellKeyboardHandlers = useCallback9((rowIndex, columnIndex) => {
11628
+ const getCellKeyboardHandlers = useCallback8((rowIndex, columnIndex) => {
11624
11629
  const onKeyDown = (event) => {
11625
11630
  if (!enabled) return;
11626
11631
  switch (event.key) {
@@ -11700,7 +11705,7 @@ function useKeyboardNavigation(rowCount, columnCount, options = {}) {
11700
11705
  };
11701
11706
  return { onKeyDown, onFocus, onBlur };
11702
11707
  }, [enabled, focusNext, focusPrevious, focusUp, focusDown, focusRowStart, focusRowEnd, focusTableStart, focusTableEnd, onFocusChange]);
11703
- const getHeaderKeyboardHandlers = useCallback9((columnIndex, onSort) => {
11708
+ const getHeaderKeyboardHandlers = useCallback8((columnIndex, onSort) => {
11704
11709
  const onKeyDown = (event) => {
11705
11710
  if (!enabled) return;
11706
11711
  switch (event.key) {
@@ -11758,20 +11763,20 @@ function useKeyboardNavigation(rowCount, columnCount, options = {}) {
11758
11763
  };
11759
11764
  return { onKeyDown, onFocus };
11760
11765
  }, [enabled, getHeaderElement, columnCount, supportsColumnReorder, supportsColumnResize]);
11761
- const resetFocus = useCallback9(() => {
11766
+ const resetFocus = useCallback8(() => {
11762
11767
  setState({
11763
11768
  focusedRowIndex: 0,
11764
11769
  focusedColumnIndex: 0,
11765
11770
  isNavigating: false
11766
11771
  });
11767
11772
  }, []);
11768
- const storeFocus = useCallback9(() => {
11773
+ const storeFocus = useCallback8(() => {
11769
11774
  storedFocusRef.current = {
11770
11775
  rowIndex: state.focusedRowIndex,
11771
11776
  columnIndex: state.focusedColumnIndex
11772
11777
  };
11773
11778
  }, [state.focusedRowIndex, state.focusedColumnIndex]);
11774
- const restoreFocus = useCallback9(() => {
11779
+ const restoreFocus = useCallback8(() => {
11775
11780
  if (storedFocusRef.current) {
11776
11781
  const { rowIndex, columnIndex } = storedFocusRef.current;
11777
11782
  focusCell(rowIndex, columnIndex);
@@ -11874,7 +11879,7 @@ function DataTableInternal(props) {
11874
11879
  storageKey,
11875
11880
  onLayoutChange
11876
11881
  } = props;
11877
- const logger2 = React20.useMemo(() => createLogger("DataTableCore"), []);
11882
+ const logger2 = createLogger("DataTableCore");
11878
11883
  const authResult = useUnifiedAuth();
11879
11884
  const user = authResult.user;
11880
11885
  const requestedFeatures = useMemo14(
@@ -11920,7 +11925,7 @@ function DataTableInternal(props) {
11920
11925
  initializeLiveRegion();
11921
11926
  }, []);
11922
11927
  const rowSelection = selection !== void 0 ? selection : state.rowSelection;
11923
- const resolvedGetRowId = useCallback10(
11928
+ const resolvedGetRowId = useCallback9(
11924
11929
  (row, index) => getRowIdSafe(row, index, getRowId),
11925
11930
  [getRowId]
11926
11931
  );
@@ -12099,7 +12104,7 @@ function DataTableInternal(props) {
12099
12104
  finalDataCount
12100
12105
  ]);
12101
12106
  const isLoading = externalIsLoading || performanceLoading;
12102
- const handleSearch = useCallback10((value) => {
12107
+ const handleSearch = useCallback9((value) => {
12103
12108
  stateActions.setSearchQuery(value);
12104
12109
  setSearchQuery(value);
12105
12110
  if (secureFeatures.pagination) {
@@ -12631,7 +12636,7 @@ function DataTableCore(props) {
12631
12636
  // src/components/DataTable/DataTable.tsx
12632
12637
  import { jsx as jsx26 } from "react/jsx-runtime";
12633
12638
  function DataTable(props) {
12634
- const logger2 = React21.useMemo(() => createLogger("DataTable"), []);
12639
+ const logger2 = createLogger("DataTable");
12635
12640
  const { features, ...rest } = props;
12636
12641
  const normalizedFeatures = React21.useMemo(
12637
12642
  () => normalizeDataTableFeatures(features),
@@ -12914,4 +12919,4 @@ lodash/lodash.js:
12914
12919
  * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
12915
12920
  *)
12916
12921
  */
12917
- //# sourceMappingURL=chunk-E3SPN4VZ.js.map
12922
+ //# sourceMappingURL=chunk-T33XF5ZC.js.map