@bit.rhplus/ag-grid 0.0.77 → 0.0.78

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 (62) hide show
  1. package/BulkEdit/BulkEditButton.jsx +11 -1
  2. package/BulkEdit/BulkEditDatePicker.jsx +10 -1
  3. package/BulkEdit/BulkEditInput.jsx +10 -1
  4. package/BulkEdit/BulkEditModule.jsx +10 -1
  5. package/BulkEdit/BulkEditPopover.jsx +10 -1
  6. package/BulkEdit/BulkEditSelect.jsx +10 -1
  7. package/Renderers/BooleanRenderer.jsx +10 -1
  8. package/Renderers/ButtonRenderer.jsx +14 -2
  9. package/Renderers/IconRenderer.jsx +10 -1
  10. package/Renderers/ImageRenderer.jsx +11 -2
  11. package/Renderers/LinkRenderer.jsx +10 -1
  12. package/Renderers/ObjectRenderer.jsx +10 -1
  13. package/Renderers/SelectRenderer.jsx +11 -1
  14. package/Renderers/StateRenderer.jsx +10 -1
  15. package/dist/BulkEdit/BulkEditButton.d.ts +4 -17
  16. package/dist/BulkEdit/BulkEditButton.js +5 -1
  17. package/dist/BulkEdit/BulkEditButton.js.map +1 -1
  18. package/dist/BulkEdit/BulkEditDatePicker.d.ts +4 -3
  19. package/dist/BulkEdit/BulkEditDatePicker.js +6 -1
  20. package/dist/BulkEdit/BulkEditDatePicker.js.map +1 -1
  21. package/dist/BulkEdit/BulkEditInput.d.ts +4 -3
  22. package/dist/BulkEdit/BulkEditInput.js +6 -1
  23. package/dist/BulkEdit/BulkEditInput.js.map +1 -1
  24. package/dist/BulkEdit/BulkEditModule.d.ts +4 -3
  25. package/dist/BulkEdit/BulkEditModule.js +6 -1
  26. package/dist/BulkEdit/BulkEditModule.js.map +1 -1
  27. package/dist/BulkEdit/BulkEditPopover.d.ts +4 -17
  28. package/dist/BulkEdit/BulkEditPopover.js +4 -1
  29. package/dist/BulkEdit/BulkEditPopover.js.map +1 -1
  30. package/dist/BulkEdit/BulkEditSelect.d.ts +4 -3
  31. package/dist/BulkEdit/BulkEditSelect.js +6 -1
  32. package/dist/BulkEdit/BulkEditSelect.js.map +1 -1
  33. package/dist/Renderers/BooleanRenderer.d.ts +1 -2
  34. package/dist/Renderers/BooleanRenderer.js +4 -1
  35. package/dist/Renderers/BooleanRenderer.js.map +1 -1
  36. package/dist/Renderers/ButtonRenderer.d.ts +1 -5
  37. package/dist/Renderers/ButtonRenderer.js +8 -2
  38. package/dist/Renderers/ButtonRenderer.js.map +1 -1
  39. package/dist/Renderers/IconRenderer.d.ts +1 -2
  40. package/dist/Renderers/IconRenderer.js +4 -1
  41. package/dist/Renderers/IconRenderer.js.map +1 -1
  42. package/dist/Renderers/ImageRenderer.d.ts +1 -5
  43. package/dist/Renderers/ImageRenderer.js +4 -1
  44. package/dist/Renderers/ImageRenderer.js.map +1 -1
  45. package/dist/Renderers/LinkRenderer.d.ts +1 -5
  46. package/dist/Renderers/LinkRenderer.js +4 -1
  47. package/dist/Renderers/LinkRenderer.js.map +1 -1
  48. package/dist/Renderers/ObjectRenderer.d.ts +1 -5
  49. package/dist/Renderers/ObjectRenderer.js +4 -1
  50. package/dist/Renderers/ObjectRenderer.js.map +1 -1
  51. package/dist/Renderers/SelectRenderer.d.ts +1 -5
  52. package/dist/Renderers/SelectRenderer.js +5 -1
  53. package/dist/Renderers/SelectRenderer.js.map +1 -1
  54. package/dist/Renderers/StateRenderer.d.ts +1 -2
  55. package/dist/Renderers/StateRenderer.js +4 -1
  56. package/dist/Renderers/StateRenderer.js.map +1 -1
  57. package/dist/index.d.ts +2 -2
  58. package/dist/index.js +192 -66
  59. package/dist/index.js.map +1 -1
  60. package/index.jsx +214 -66
  61. package/package.json +6 -5
  62. /package/dist/{preview-1768366534788.js → preview-1768388646791.js} +0 -0
package/dist/index.js CHANGED
@@ -11,6 +11,7 @@ import { AgGridOnRowDataChanged } from './AgGridOnRowDataChanged';
11
11
  import { AgGridOnRowDataUpdated } from './AgGridOnRowDataUpdated';
12
12
  import CheckboxRenderer from './Renderers/CheckboxRenderer';
13
13
  import BooleanRenderer from './Renderers/BooleanRenderer';
14
+ import { createGridComparison } from '@bit.rhplus/react-memo';
14
15
  import IconRenderer from './Renderers/IconRenderer';
15
16
  import ImageRenderer from './Renderers/ImageRenderer';
16
17
  import StateRenderer from './Renderers/StateRenderer';
@@ -168,11 +169,41 @@ const AgGrid = React.forwardRef((props, ref) => {
168
169
  setAggregationData(null);
169
170
  setActiveNotificationMode('full');
170
171
  }, [aggregationData, props, notificationHead, createNotificationDescription, style, placement]);
172
+ // ========== PERFORMANCE FIX: Stabilní refs pro updateAggregationNotification ==========
173
+ const activeNotificationModeRef = React.useRef(activeNotificationMode);
174
+ const isSelectingRef = React.useRef(isSelecting);
175
+ const notificationHeadRef = React.useRef(notificationHead);
176
+ const createNotificationDescriptionRef = React.useRef(createNotificationDescription);
177
+ const styleRef = React.useRef(style);
178
+ const placementRef = React.useRef(placement);
179
+ const propsRef = React.useRef(props);
180
+ React.useEffect(() => {
181
+ activeNotificationModeRef.current = activeNotificationMode;
182
+ }, [activeNotificationMode]);
183
+ React.useEffect(() => {
184
+ isSelectingRef.current = isSelecting;
185
+ }, [isSelecting]);
186
+ React.useEffect(() => {
187
+ notificationHeadRef.current = notificationHead;
188
+ }, [notificationHead]);
189
+ React.useEffect(() => {
190
+ createNotificationDescriptionRef.current = createNotificationDescription;
191
+ }, [createNotificationDescription]);
192
+ React.useEffect(() => {
193
+ styleRef.current = style;
194
+ }, [style]);
195
+ React.useEffect(() => {
196
+ placementRef.current = placement;
197
+ }, [placement]);
198
+ React.useEffect(() => {
199
+ propsRef.current = props;
200
+ }, [props]);
171
201
  // ✅ OPTIMALIZACE: Helper funkce pro aktualizaci aggregace notifikace s cache check
172
202
  // Volá se BĚHEM označování s 100ms throttle pro real-time feedback
203
+ // STABILNÍ callback - používá pouze refs!
173
204
  const updateAggregationNotification = React.useCallback((event) => {
174
205
  // Pokud je notificationMode 'none', nedělat nic
175
- if (notificationMode === 'none') {
206
+ if (notificationModeRef.current === 'none') {
176
207
  return;
177
208
  }
178
209
  // Lightweight cache check PŘED voláním Aggregations()
@@ -182,13 +213,13 @@ const AgGrid = React.forwardRef((props, ref) => {
182
213
  if (!ranges || ranges.length === 0 || !ranges[0]?.startRow) {
183
214
  lastRangeHashRef.current = null;
184
215
  // V 'full' módu zavřít notifikaci
185
- if (activeNotificationMode === 'full') {
186
- const gridId = props.gridName || props.id || 'default';
216
+ if (activeNotificationModeRef.current === 'full') {
217
+ const gridId = propsRef.current.gridName || propsRef.current.id || 'default';
187
218
  const key = `aggregation-grid-${gridId}`;
188
219
  notification.destroy(key);
189
220
  }
190
221
  // V 'simple' módu vyčistit aggregationData
191
- if (activeNotificationMode === 'simple') {
222
+ if (activeNotificationModeRef.current === 'simple') {
192
223
  setAggregationData(null);
193
224
  }
194
225
  return;
@@ -203,28 +234,28 @@ const AgGrid = React.forwardRef((props, ref) => {
203
234
  // Uložit hash pro příští porovnání
204
235
  lastRangeHashRef.current = currentRangeHash;
205
236
  // Zavolat onAggregationChanged callback pokud existuje
206
- if (props.onAggregationChanged) {
207
- props.onAggregationChanged(messageInfo);
237
+ if (propsRef.current.onAggregationChanged) {
238
+ propsRef.current.onAggregationChanged(messageInfo);
208
239
  }
209
240
  // Podle aktivního módu zobrazit buď notifikaci nebo aktualizovat status bar
210
- if (activeNotificationMode === 'full') {
241
+ if (activeNotificationModeRef.current === 'full') {
211
242
  // FULL mód - zobrazit plovoucí notifikaci s tlačítkem pro přepnutí na simple
212
- const gridId = props.gridName || props.id || 'default';
243
+ const gridId = propsRef.current.gridName || propsRef.current.id || 'default';
213
244
  const key = `aggregation-grid-${gridId}`;
214
245
  const dynamicStyle = {
215
- ...style,
216
- pointerEvents: isSelecting ? 'none' : 'auto'
246
+ ...styleRef.current,
247
+ pointerEvents: isSelectingRef.current ? 'none' : 'auto'
217
248
  };
218
249
  notification.info({
219
250
  key,
220
- message: notificationHead(messageInfo),
221
- description: createNotificationDescription(messageInfo, true),
251
+ message: notificationHeadRef.current(messageInfo),
252
+ description: createNotificationDescriptionRef.current(messageInfo, true),
222
253
  duration: 0,
223
254
  style: dynamicStyle,
224
- placement,
255
+ placement: placementRef.current,
225
256
  });
226
257
  }
227
- else if (activeNotificationMode === 'simple') {
258
+ else if (activeNotificationModeRef.current === 'simple') {
228
259
  // SIMPLE mód - aktualizovat state pro status bar
229
260
  setAggregationData(messageInfo);
230
261
  }
@@ -232,16 +263,16 @@ const AgGrid = React.forwardRef((props, ref) => {
232
263
  else {
233
264
  // Jen jedna buňka - zavřít/vyčistit vše
234
265
  lastRangeHashRef.current = null;
235
- if (activeNotificationMode === 'full') {
236
- const gridId = props.gridName || props.id || 'default';
266
+ if (activeNotificationModeRef.current === 'full') {
267
+ const gridId = propsRef.current.gridName || propsRef.current.id || 'default';
237
268
  const key = `aggregation-grid-${gridId}`;
238
269
  notification.destroy(key);
239
270
  }
240
- if (activeNotificationMode === 'simple') {
271
+ if (activeNotificationModeRef.current === 'simple') {
241
272
  setAggregationData(null);
242
273
  }
243
274
  }
244
- }, [notificationMode, activeNotificationMode, internalRef, props, notificationHead, createNotificationDescription, style, placement, isSelecting]);
275
+ }, [internalRef]); // Pouze internalRef v dependencies!
245
276
  // Detekce konce označování pomocí mouseup event
246
277
  React.useEffect(() => {
247
278
  const handleMouseUp = () => {
@@ -432,14 +463,38 @@ const AgGrid = React.forwardRef((props, ref) => {
432
463
  }
433
464
  previousRowDataRef.current = rowData;
434
465
  }, [rowData, newRowFlash, updatedRowFlash]);
466
+ // ========== PERFORMANCE FIX: Stabilní ref pattern pro callbacks ==========
467
+ // Refs pro aktuální hodnoty - zabraňuje re-creation RhPlusRangeSelectionChanged při změně stavu
468
+ const notificationModeRef = React.useRef(notificationMode);
469
+ const enableBulkEditRef = React.useRef(enableBulkEdit);
470
+ const handleRangeChangeRef = React.useRef(handleRangeChange);
471
+ const onRangeSelectionChangedRef = React.useRef(props.onRangeSelectionChanged);
472
+ const updateAggregationNotificationRef = React.useRef(updateAggregationNotification);
473
+ // Aktualizovat refs při změně hodnot
474
+ React.useEffect(() => {
475
+ notificationModeRef.current = notificationMode;
476
+ }, [notificationMode]);
477
+ React.useEffect(() => {
478
+ enableBulkEditRef.current = enableBulkEdit;
479
+ }, [enableBulkEdit]);
480
+ React.useEffect(() => {
481
+ handleRangeChangeRef.current = handleRangeChange;
482
+ }, [handleRangeChange]);
483
+ React.useEffect(() => {
484
+ onRangeSelectionChangedRef.current = props.onRangeSelectionChanged;
485
+ }, [props.onRangeSelectionChanged]);
486
+ React.useEffect(() => {
487
+ updateAggregationNotificationRef.current = updateAggregationNotification;
488
+ }, [updateAggregationNotification]);
489
+ // Stabilní callback s prázdnými dependencies - používá pouze refs
435
490
  const RhPlusRangeSelectionChanged = React.useCallback((event) => {
436
491
  // Detekovat začátek označování - nastavit isSelecting na true
437
492
  setIsSelecting(true);
438
493
  // 1. ✅ OPTIMALIZACE: Zobrazení notifikace BĚHEM označování s THROTTLE
439
494
  // Simple mode: 300ms throttle (méně častá aktualizace, lepší výkon)
440
495
  // Full mode: 100ms throttle (rychlejší feedback, plovoucí notifikace je levná)
441
- if (notificationMode !== 'none') {
442
- const throttleInterval = notificationMode === 'simple' ? 300 : 100;
496
+ if (notificationModeRef.current !== 'none') {
497
+ const throttleInterval = notificationModeRef.current === 'simple' ? 300 : 100;
443
498
  const now = Date.now();
444
499
  const timeSinceLastCall = now - notificationLastCallRef.current;
445
500
  // První volání NEBO uplynul throttle interval
@@ -447,7 +502,7 @@ const AgGrid = React.forwardRef((props, ref) => {
447
502
  // Okamžité volání
448
503
  notificationLastCallRef.current = now;
449
504
  if (internalRef?.current) {
450
- updateAggregationNotification(event);
505
+ updateAggregationNotificationRef.current(event);
451
506
  }
452
507
  }
453
508
  else {
@@ -458,7 +513,7 @@ const AgGrid = React.forwardRef((props, ref) => {
458
513
  notificationThrottleRef.current = setTimeout(() => {
459
514
  notificationLastCallRef.current = Date.now();
460
515
  if (internalRef?.current) {
461
- updateAggregationNotification(event);
516
+ updateAggregationNotificationRef.current(event);
462
517
  }
463
518
  }, throttleInterval - timeSinceLastCall);
464
519
  }
@@ -466,13 +521,15 @@ const AgGrid = React.forwardRef((props, ref) => {
466
521
  // 2. ✅ OPTIMALIZACE: Bulk edit handler BEZ debounce - okamžité zobrazení ikony
467
522
  // Lightweight validace v useBulkCellEdit zajistí okamžité zobrazení
468
523
  // Těžká validace proběhne s 15ms debounce uvnitř useBulkCellEdit
469
- if (enableBulkEdit) {
470
- handleRangeChange(event);
524
+ if (enableBulkEditRef.current) {
525
+ handleRangeChangeRef.current(event);
471
526
  }
472
527
  // 3. Custom onRangeSelectionChanged callback - bez debounce
473
- if (props.onRangeSelectionChanged)
474
- props.onRangeSelectionChanged(event);
475
- }, [notificationMode, enableBulkEdit, handleRangeChange, props.onRangeSelectionChanged, updateAggregationNotification]);
528
+ if (onRangeSelectionChangedRef.current) {
529
+ onRangeSelectionChangedRef.current(event);
530
+ }
531
+ }, [] // ✅ PRÁZDNÉ dependencies - stabilní reference!
532
+ );
476
533
  const AgGridOnGridReady = (event, options) => {
477
534
  if (onGridReady) {
478
535
  onGridReady(event, options);
@@ -585,8 +642,9 @@ const AgGrid = React.forwardRef((props, ref) => {
585
642
  const memoizedOnRowDataChanged = React.useCallback((event) => AgGridOnRowDataChanged(event, props), [props.onRowDataChanged]);
586
643
  const memoizedOnRowDataUpdated = React.useCallback((event) => AgGridOnRowDataUpdated(event, props), [props.onRowDataUpdated]);
587
644
  // Memoizovaný context object
645
+ // ✅ OPTIMALIZACE: Použít pouze relevantní props pro context - neměnit při změně props
588
646
  const memoizedContext = React.useMemo(() => ({
589
- componentParent: { ...props }
647
+ componentParent: props
590
648
  }), [props.context, props.gridName, props.id]);
591
649
  // Memoizovaný defaultColDef
592
650
  const memoizedDefaultColDef = React.useMemo(() => ({
@@ -594,50 +652,113 @@ const AgGrid = React.forwardRef((props, ref) => {
594
652
  suppressHeaderMenuButton: true,
595
653
  suppressHeaderFilterButton: true,
596
654
  suppressMenu: true,
655
+ // ✅ FIX AG-Grid v35: Bezpečné zpracování null hodnot v Quick Filter
656
+ // AG-Grid v35 změnil implementaci Quick Filter - nyní volá .toString() na hodnotách buněk bez null check
657
+ // Tento callback zajistí že nikdy nedojde k chybě "Cannot read properties of null (reading 'toString')"
658
+ getQuickFilterText: (params) => {
659
+ const value = params.value;
660
+ // Null/undefined → prázdný string (bez chyby)
661
+ if (value == null)
662
+ return '';
663
+ // Objekty a pole → JSON string
664
+ if (typeof value === 'object') {
665
+ try {
666
+ return JSON.stringify(value);
667
+ }
668
+ catch {
669
+ // Cirkulární reference nebo jiná chyba při serializaci → prázdný string
670
+ return '';
671
+ }
672
+ }
673
+ // Primitivní typy → toString
674
+ return value.toString();
675
+ },
597
676
  }), [props.defaultColDef]);
598
- // ========== PERFORMANCE OPTIMIZATION: Memoizovaný allGridProps ==========
599
- const allGridProps = React.useMemo(() => ({
600
- ref: internalRef,
601
- ...props,
602
- theme: themeObject,
603
- columnDefs: AgGridColumns(props.columnDefs, props),
604
- defaultColDef: memoizedDefaultColDef,
605
- onCellEditingStarted: memoizedOnCellEditingStarted,
606
- onCellDoubleClicked: memoizedOnCellDoubleClicked,
607
- onCellValueChanged: memoizedOnCellValueChanged,
608
- postSort: memoizedPostSort,
609
- onGridReady: memoizedOnGridReady,
610
- onRowDataChanged: memoizedOnRowDataChanged,
611
- onRowDataUpdated: memoizedOnRowDataUpdated,
612
- onRangeSelectionChanged: RhPlusRangeSelectionChanged,
613
- context: memoizedContext,
614
- components,
615
- // Explicitně zajistit že enableRangeSelection je propagováno
616
- enableRangeSelection: props.enableRangeSelection,
617
- }), [
618
- internalRef,
619
- themeObject,
620
- props.columnDefs,
621
- props.enableRangeSelection,
622
- memoizedDefaultColDef,
623
- memoizedOnCellEditingStarted,
624
- memoizedOnCellDoubleClicked,
625
- memoizedOnCellValueChanged,
626
- memoizedPostSort,
627
- memoizedOnGridReady,
628
- memoizedOnRowDataChanged,
629
- memoizedOnRowDataUpdated,
630
- RhPlusRangeSelectionChanged,
631
- memoizedContext,
632
- components,
633
- ]);
677
+ // ========== PERFORMANCE FIX: Memoizovat columnDefs ==========
678
+ // AgGridColumns vrací nový array při každém volání, i když jsou vstupy stejné
679
+ const memoizedColumnDefs = React.useMemo(() => {
680
+ return AgGridColumns(props.columnDefs, props);
681
+ }, [props.columnDefs, props.getRowId, props.frameworkComponents]);
682
+ // ========== CRITICAL FIX: Stabilní allGridProps objekt pomocí ref a forceUpdate ==========
683
+ // Problém: Jakékoli použití useMemo vytváří nový objekt při změně dependencies
684
+ // Řešení: Použít ref pro VŽDY stejný objekt a forceUpdate pro kontrolované re-rendery
685
+ const allGridPropsRef = React.useRef(null);
686
+ const [, forceUpdate] = React.useReducer((x) => x + 1, 0);
687
+ // Sledovat klíčové props pro detekci kdy je potřeba forceUpdate
688
+ const prevRowDataRef = React.useRef(props.rowData);
689
+ const prevColumnDefsRef = React.useRef(memoizedColumnDefs);
690
+ // Inicializace objektu
691
+ if (!allGridPropsRef.current) {
692
+ allGridPropsRef.current = {};
693
+ }
694
+ // Aktualizovat props v EXISTUJÍCÍM objektu (mutace)
695
+ // AG Grid interně detekuje změny props, nepotřebuje nový objekt
696
+ allGridPropsRef.current.ref = internalRef;
697
+ allGridPropsRef.current.rowData = props.rowData;
698
+ allGridPropsRef.current.getRowId = props.getRowId;
699
+ allGridPropsRef.current.theme = themeObject;
700
+ allGridPropsRef.current.columnDefs = memoizedColumnDefs;
701
+ allGridPropsRef.current.defaultColDef = memoizedDefaultColDef;
702
+ allGridPropsRef.current.onCellEditingStarted = memoizedOnCellEditingStarted;
703
+ allGridPropsRef.current.onCellDoubleClicked = memoizedOnCellDoubleClicked;
704
+ // allGridPropsRef.current.onCellValueChanged = memoizedOnCellValueChanged;
705
+ allGridPropsRef.current.postSort = memoizedPostSort;
706
+ allGridPropsRef.current.onGridReady = memoizedOnGridReady;
707
+ allGridPropsRef.current.onRowDataChanged = memoizedOnRowDataChanged;
708
+ allGridPropsRef.current.onRowDataUpdated = memoizedOnRowDataUpdated;
709
+ allGridPropsRef.current.onRangeSelectionChanged = RhPlusRangeSelectionChanged;
710
+ allGridPropsRef.current.context = memoizedContext;
711
+ allGridPropsRef.current.components = components;
712
+ // Další AG Grid props
713
+ allGridPropsRef.current.rowModelType = props.rowModelType;
714
+ allGridPropsRef.current.rowSelection = props.rowSelection;
715
+ allGridPropsRef.current.enableRangeSelection = props.enableRangeSelection;
716
+ allGridPropsRef.current.enableRangeHandle = props.enableRangeHandle;
717
+ allGridPropsRef.current.enableFillHandle = props.enableFillHandle;
718
+ allGridPropsRef.current.suppressRowClickSelection = props.suppressRowClickSelection;
719
+ allGridPropsRef.current.singleClickEdit = props.singleClickEdit;
720
+ allGridPropsRef.current.stopEditingWhenCellsLoseFocus = props.stopEditingWhenCellsLoseFocus;
721
+ allGridPropsRef.current.rowClass = props.rowClass;
722
+ allGridPropsRef.current.rowStyle = props.rowStyle;
723
+ allGridPropsRef.current.getRowClass = props.getRowClass;
724
+ allGridPropsRef.current.getRowStyle = props.getRowStyle;
725
+ allGridPropsRef.current.animateRows = props.animateRows;
726
+ allGridPropsRef.current.suppressCellFocus = props.suppressCellFocus;
727
+ allGridPropsRef.current.suppressMenuHide = props.suppressMenuHide;
728
+ allGridPropsRef.current.enableCellTextSelection = props.enableCellTextSelection;
729
+ allGridPropsRef.current.ensureDomOrder = props.ensureDomOrder;
730
+ allGridPropsRef.current.suppressRowTransform = props.suppressRowTransform;
731
+ allGridPropsRef.current.suppressColumnVirtualisation = props.suppressColumnVirtualisation;
732
+ allGridPropsRef.current.suppressRowVirtualisation = props.suppressRowVirtualisation;
733
+ allGridPropsRef.current.tooltipShowDelay = props.tooltipShowDelay;
734
+ allGridPropsRef.current.tooltipHideDelay = props.tooltipHideDelay;
735
+ allGridPropsRef.current.tooltipMouseTrack = props.tooltipMouseTrack;
736
+ allGridPropsRef.current.gridId = props.gridId;
737
+ allGridPropsRef.current.id = props.id;
738
+ allGridPropsRef.current.gridName = props.gridName;
739
+ // ✅ Detekovat změny které VYŽADUJÍ re-render AG Gridu
740
+ React.useEffect(() => {
741
+ const rowDataChanged = prevRowDataRef.current !== props.rowData;
742
+ const columnDefsChanged = prevColumnDefsRef.current !== memoizedColumnDefs;
743
+ if (rowDataChanged || columnDefsChanged) {
744
+ prevRowDataRef.current = props.rowData;
745
+ prevColumnDefsRef.current = memoizedColumnDefs;
746
+ // Vynutit re-render pouze když se data nebo sloupce změní
747
+ forceUpdate();
748
+ }
749
+ }, [props.rowData, memoizedColumnDefs]);
750
+ // ✅ Vracíme VŽDY stejný objekt (stabilní reference)
751
+ const allGridProps = allGridPropsRef.current;
634
752
  // State pro sledování, kdy je API ready
635
753
  const [isApiReady, setIsApiReady] = React.useState(false);
636
754
  // Nastavení Quick Filter přes API (podle AG-Grid v33 dokumentace)
637
755
  // Tento useEffect se volá při změně quickFilterText NEBO když API je ready
638
756
  React.useEffect(() => {
639
757
  if (internalRef.current?.api && !internalRef.current.api.isDestroyed?.()) {
640
- internalRef.current.api.setGridOption("quickFilterText", quickFilterText);
758
+ // ✅ FIX AG-Grid v35: Zajistit že quickFilterText není null/undefined
759
+ // AG-Grid v35 interně volá .toString() na této hodnotě bez null checku
760
+ const safeQuickFilterText = quickFilterText ?? '';
761
+ internalRef.current.api.setGridOption("quickFilterText", safeQuickFilterText);
641
762
  }
642
763
  }, [quickFilterText, isApiReady]);
643
764
  // Status bar se zobrazuje pouze v simple mode
@@ -663,7 +784,12 @@ const AgGrid = React.forwardRef((props, ref) => {
663
784
  willChange: 'opacity'
664
785
  }, children: _jsx(AggregationStatusBar, { data: aggregationData || {}, metrics: statusBarMetrics, height: statusBarHeight, onSwitchToFull: handleSwitchToFull }) })), enableBulkEdit && floatingButton.visible && (_jsx(BulkEditButton, { visible: floatingButton.visible, position: floatingButton.position, range: floatingButton.range, column: floatingButton.column, cellCount: floatingButton.cellCount, rowsContainer: floatingButton.rowsContainer, editPopover: editPopover, onOpenPopover: handleOpenPopover, onValueChange: handleValueChange, onSubmit: handleSubmitEdit, onCancel: handleCancelEdit }))] }));
665
786
  });
666
- export default AgGrid;
787
+ // ========== PERFORMANCE OPTIMIZATION: React.memo ==========
788
+ // Refactored: Používá createGridComparison utility místo manuálního deep comparison
789
+ // Eliminováno ~120 řádků duplicitního kódu, zachována stejná funkcionalita
790
+ // Diagnostic mode: zapnutý pouze ve development módu
791
+ export default React.memo(AgGrid, createGridComparison(process.env.NODE_ENV !== 'production' // Diagnostic mode pouze ve development
792
+ ));
667
793
  export { useBulkCellEdit, BulkEditButton, BulkEditPopover, BulkEditSelect, BulkEditDatePicker, BulkEditModule, BulkEditInput } from './BulkEdit';
668
794
  export { default as CheckboxRenderer } from './Renderers/CheckboxRenderer';
669
795
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.jsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.jsx"],"names":[],"mappings":"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"}