@bit.rhplus/ui.grid 0.0.24 → 0.0.25
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/AgGridColumns.js +2 -0
- package/ColumnBuilder.jsx +171 -96
- package/dist/AgGridColumns.js +2 -0
- package/dist/AgGridColumns.js.map +1 -1
- package/dist/ColumnBuilder.js +154 -82
- package/dist/ColumnBuilder.js.map +1 -1
- package/dist/index.js +16 -19
- package/dist/index.js.map +1 -1
- package/dist/style.css +0 -0
- package/index.jsx +17 -18
- package/package.json +2 -2
- package/style.css +0 -0
- /package/dist/{preview-1748952580414.js → preview-1748958626847.js} +0 -0
package/AgGridColumns.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
1
2
|
import * as React from 'react';
|
|
2
3
|
import ColumnBuilder from './ColumnBuilder';
|
|
3
4
|
import * as Tooltip from './tooltips';
|
|
@@ -49,3 +50,4 @@ export const AgGridColumns = (columnDefs, options) => {
|
|
|
49
50
|
const cols = resolvedColumnDefs && resolvedColumnDefs.map((column) => AgGridColumn(column, options));
|
|
50
51
|
return cols;
|
|
51
52
|
};
|
|
53
|
+
/* eslint-enable */
|
package/ColumnBuilder.jsx
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
1
2
|
import * as React from 'react';
|
|
2
|
-
import { Menu, Dropdown, Divider } from 'antd';
|
|
3
|
+
import { Menu, Dropdown, Button, Divider } from 'antd';
|
|
3
4
|
import { prepareCellStyle, prepareColDef, getValueByPath } from './utils';
|
|
4
5
|
import { currencySymbols } from './enums';
|
|
5
6
|
import { ActionIcon } from './Icons';
|
|
@@ -121,6 +122,72 @@ const useObjectCellRenderer = (params, editable, onEditClick) => {
|
|
|
121
122
|
};
|
|
122
123
|
};
|
|
123
124
|
|
|
125
|
+
// Vytvoříme React hook funkci pro row hover action renderer
|
|
126
|
+
const useRowHoverActionRenderer = (params) => {
|
|
127
|
+
const [isRowHovered, setIsRowHovered] = React.useState(false);
|
|
128
|
+
const rowRef = React.useRef(null);
|
|
129
|
+
|
|
130
|
+
React.useEffect(() => {
|
|
131
|
+
if (!params.node) return undefined;
|
|
132
|
+
|
|
133
|
+
// Funkce pro kontrolu, zda je řádek v hover stavu
|
|
134
|
+
const checkRowHoverState = () => {
|
|
135
|
+
// Najdeme DOM element řádku pomocí rowIndex
|
|
136
|
+
const rowElement = document.querySelector(
|
|
137
|
+
`.ag-row[row-index="${params.rowIndex}"]`
|
|
138
|
+
);
|
|
139
|
+
if (rowElement) {
|
|
140
|
+
rowRef.current = rowElement;
|
|
141
|
+
// AG-Grid automaticky přidává třídu ag-row-hover k řádku při najetí myší
|
|
142
|
+
const isHovered = rowElement.classList.contains('ag-row-hover');
|
|
143
|
+
setIsRowHovered(isHovered);
|
|
144
|
+
}
|
|
145
|
+
};
|
|
146
|
+
|
|
147
|
+
// Vytvoříme MutationObserver pro sledování změn tříd na řádku
|
|
148
|
+
const observer = new MutationObserver((mutations) => {
|
|
149
|
+
mutations.forEach((mutation) => {
|
|
150
|
+
if (
|
|
151
|
+
mutation.type === 'attributes' &&
|
|
152
|
+
mutation.attributeName === 'class'
|
|
153
|
+
) {
|
|
154
|
+
checkRowHoverState();
|
|
155
|
+
}
|
|
156
|
+
});
|
|
157
|
+
});
|
|
158
|
+
|
|
159
|
+
// Inicializujeme stav
|
|
160
|
+
checkRowHoverState();
|
|
161
|
+
|
|
162
|
+
// Přidáme observer k element řádku, pokud existuje
|
|
163
|
+
if (rowRef.current) {
|
|
164
|
+
observer.observe(rowRef.current, { attributes: true });
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
// Přidáme event listeners na grid container pro sledování pohybu myši
|
|
168
|
+
const gridContainer = document.querySelector('.ag-root-wrapper');
|
|
169
|
+
if (gridContainer) {
|
|
170
|
+
gridContainer.addEventListener('mouseover', checkRowHoverState);
|
|
171
|
+
gridContainer.addEventListener('mouseout', checkRowHoverState);
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
// Cleanup při odmontování komponenty
|
|
175
|
+
return () => {
|
|
176
|
+
if (rowRef.current) {
|
|
177
|
+
observer.disconnect();
|
|
178
|
+
}
|
|
179
|
+
if (gridContainer) {
|
|
180
|
+
gridContainer.removeEventListener('mouseover', checkRowHoverState);
|
|
181
|
+
gridContainer.removeEventListener('mouseout', checkRowHoverState);
|
|
182
|
+
}
|
|
183
|
+
};
|
|
184
|
+
}, [params.node, params.rowIndex]);
|
|
185
|
+
|
|
186
|
+
return {
|
|
187
|
+
isRowHovered,
|
|
188
|
+
};
|
|
189
|
+
};
|
|
190
|
+
|
|
124
191
|
class ColumnBuilder {
|
|
125
192
|
#addPreparedColumn(props) {
|
|
126
193
|
this.columns.push(prepareColDef(this.intl, props));
|
|
@@ -261,7 +328,7 @@ class ColumnBuilder {
|
|
|
261
328
|
hoverStyle,
|
|
262
329
|
cellAlign = 'left',
|
|
263
330
|
editable,
|
|
264
|
-
overviewToggle = false,
|
|
331
|
+
overviewToggle = false, // Přidán výchozí parametr pro overview
|
|
265
332
|
...restProps
|
|
266
333
|
}) {
|
|
267
334
|
// Vytvořím komponentu pro cell renderer, která používá hook
|
|
@@ -281,12 +348,6 @@ class ColumnBuilder {
|
|
|
281
348
|
overviewToggle
|
|
282
349
|
);
|
|
283
350
|
|
|
284
|
-
const handleKeyPress = React.useCallback((event) => {
|
|
285
|
-
if (event.key === 'Enter' || event.key === ' ') {
|
|
286
|
-
handleClick(event);
|
|
287
|
-
}
|
|
288
|
-
}, [handleClick]);
|
|
289
|
-
|
|
290
351
|
return (
|
|
291
352
|
<div
|
|
292
353
|
className="link-cell-container"
|
|
@@ -301,10 +362,14 @@ class ColumnBuilder {
|
|
|
301
362
|
onClick={handleClick}
|
|
302
363
|
onMouseEnter={handleMouseEnter}
|
|
303
364
|
onMouseLeave={handleMouseLeave}
|
|
304
|
-
onKeyPress={handleKeyPress}
|
|
305
365
|
style={isHovered ? computedHoverStyle : computedLinkStyle}
|
|
306
366
|
role="button"
|
|
307
367
|
tabIndex={0}
|
|
368
|
+
onKeyPress={(event) => {
|
|
369
|
+
if (event.key === 'Enter' || event.key === ' ') {
|
|
370
|
+
handleClick(event);
|
|
371
|
+
}
|
|
372
|
+
}}
|
|
308
373
|
>
|
|
309
374
|
{params.value}
|
|
310
375
|
</span>
|
|
@@ -321,7 +386,7 @@ class ColumnBuilder {
|
|
|
321
386
|
cellAlign,
|
|
322
387
|
cellRenderer,
|
|
323
388
|
editable: this.#resolveEditable(editable),
|
|
324
|
-
overviewToggle,
|
|
389
|
+
overviewToggle, // Předání příznaku dál
|
|
325
390
|
...restProps,
|
|
326
391
|
});
|
|
327
392
|
return this;
|
|
@@ -395,7 +460,6 @@ class ColumnBuilder {
|
|
|
395
460
|
}}
|
|
396
461
|
onClick={handleEditClick}
|
|
397
462
|
title="Upravit"
|
|
398
|
-
type="button"
|
|
399
463
|
>
|
|
400
464
|
<span style={{ fontSize: '16px' }}>⋮</span>
|
|
401
465
|
</button>
|
|
@@ -486,29 +550,58 @@ class ColumnBuilder {
|
|
|
486
550
|
const currentHoveredRowRef = React.useRef(null);
|
|
487
551
|
const mouseListenersSetupRef = React.useRef(false);
|
|
488
552
|
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
553
|
+
React.useEffect(() => {
|
|
554
|
+
return () => {
|
|
555
|
+
isMountedRef.current = false;
|
|
556
|
+
cleanup();
|
|
557
|
+
};
|
|
558
|
+
}, []);
|
|
492
559
|
|
|
493
|
-
|
|
494
|
-
|
|
560
|
+
// Cleanup funkce
|
|
561
|
+
const cleanup = () => {
|
|
562
|
+
if (observerRef.current) {
|
|
563
|
+
observerRef.current.disconnect();
|
|
564
|
+
observerRef.current = null;
|
|
495
565
|
}
|
|
496
566
|
|
|
497
|
-
if (
|
|
498
|
-
|
|
567
|
+
if (gridContainerRef.current && mouseListenersSetupRef.current) {
|
|
568
|
+
gridContainerRef.current.removeEventListener(
|
|
569
|
+
'mousemove',
|
|
570
|
+
handleMouseMove
|
|
571
|
+
);
|
|
572
|
+
gridContainerRef.current.removeEventListener(
|
|
573
|
+
'mouseleave',
|
|
574
|
+
handleMouseLeave
|
|
575
|
+
);
|
|
576
|
+
// gridContainerRef.current.removeEventListener(
|
|
577
|
+
// 'mouseenter',
|
|
578
|
+
// handleMouseEnter
|
|
579
|
+
// );
|
|
580
|
+
mouseListenersSetupRef.current = false;
|
|
499
581
|
}
|
|
500
|
-
}
|
|
582
|
+
};
|
|
501
583
|
|
|
502
|
-
//
|
|
584
|
+
// Získáme row index z params
|
|
585
|
+
React.useEffect(() => {
|
|
586
|
+
if (params.node && params.node.rowIndex !== undefined) {
|
|
587
|
+
rowIndexRef.current = params.node.rowIndex.toString();
|
|
588
|
+
} else if (params.rowIndex !== undefined) {
|
|
589
|
+
rowIndexRef.current = params.rowIndex.toString();
|
|
590
|
+
}
|
|
591
|
+
}, [params.node, params.rowIndex]);
|
|
592
|
+
|
|
593
|
+
// Mouse event handlers
|
|
503
594
|
const handleMouseMove = React.useCallback((event) => {
|
|
504
595
|
if (!isMountedRef.current) return;
|
|
505
596
|
|
|
506
|
-
const
|
|
597
|
+
const target = event.target;
|
|
507
598
|
if (!target) return;
|
|
508
599
|
|
|
509
|
-
|
|
600
|
+
// Najdeme nejbližší AG-Grid row element
|
|
601
|
+
let rowElement = target.closest('.ag-row');
|
|
510
602
|
|
|
511
603
|
if (rowElement) {
|
|
604
|
+
// Získáme row index z AG-Grid attributů
|
|
512
605
|
const rowIndex =
|
|
513
606
|
rowElement.getAttribute('row-index') ||
|
|
514
607
|
rowElement.getAttribute('aria-rowindex') ||
|
|
@@ -518,26 +611,34 @@ class ColumnBuilder {
|
|
|
518
611
|
if (rowIndex !== null) {
|
|
519
612
|
const normalizedRowIndex = rowIndex.toString();
|
|
520
613
|
|
|
614
|
+
// KLÍČOVÁ ZMĚNA: Explicitně resetujeme předchozí řádek při změně
|
|
521
615
|
if (normalizedRowIndex !== currentHoveredRowRef.current) {
|
|
616
|
+
// Pokud jsme měli předchozí řádek, nastavíme mu hover false
|
|
522
617
|
if (currentHoveredRowRef.current !== null) {
|
|
523
618
|
notifyRowHoverChange(currentHoveredRowRef.current, false);
|
|
524
619
|
}
|
|
525
620
|
|
|
621
|
+
// Nastavíme nový řádek jako hovered
|
|
526
622
|
currentHoveredRowRef.current = normalizedRowIndex;
|
|
527
623
|
notifyRowHoverChange(normalizedRowIndex, true);
|
|
528
624
|
}
|
|
529
625
|
}
|
|
530
|
-
} else
|
|
531
|
-
|
|
532
|
-
currentHoveredRowRef.current
|
|
626
|
+
} else {
|
|
627
|
+
// Myš není nad žádným řádkem - resetujeme všechny
|
|
628
|
+
if (currentHoveredRowRef.current !== null) {
|
|
629
|
+
notifyRowHoverChange(currentHoveredRowRef.current, false);
|
|
630
|
+
currentHoveredRowRef.current = null;
|
|
631
|
+
}
|
|
533
632
|
}
|
|
534
|
-
}, [
|
|
633
|
+
}, []);
|
|
535
634
|
|
|
536
635
|
const handleMouseLeave = React.useCallback((event) => {
|
|
537
636
|
if (!isMountedRef.current) return;
|
|
538
637
|
|
|
539
|
-
|
|
638
|
+
// Lepší detekce opuštění gridu
|
|
639
|
+
const relatedTarget = event.relatedTarget;
|
|
540
640
|
|
|
641
|
+
// Pokud myš opustí celý grid container NEBO jde mimo dokument
|
|
541
642
|
if (
|
|
542
643
|
gridContainerRef.current &&
|
|
543
644
|
(!relatedTarget || !gridContainerRef.current.contains(relatedTarget))
|
|
@@ -547,53 +648,31 @@ class ColumnBuilder {
|
|
|
547
648
|
currentHoveredRowRef.current = null;
|
|
548
649
|
}
|
|
549
650
|
}
|
|
550
|
-
}, [
|
|
651
|
+
}, []);
|
|
551
652
|
|
|
552
|
-
//
|
|
553
|
-
const
|
|
554
|
-
if (
|
|
555
|
-
observerRef.current.disconnect();
|
|
556
|
-
observerRef.current = null;
|
|
557
|
-
}
|
|
653
|
+
// Notifikace o změně hover stavu pro tento specifický grid
|
|
654
|
+
const notifyRowHoverChange = (rowIndex, isHovered) => {
|
|
655
|
+
if (!isMountedRef.current) return;
|
|
558
656
|
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
handleMouseMove
|
|
563
|
-
);
|
|
564
|
-
gridContainerRef.current.removeEventListener(
|
|
565
|
-
'mouseleave',
|
|
566
|
-
handleMouseLeave
|
|
567
|
-
);
|
|
568
|
-
mouseListenersSetupRef.current = false;
|
|
657
|
+
// EXPLICITNÍ ŘÍZENÍ: Pokud nastavujeme hover false, resetujeme stav pro všechny řádky
|
|
658
|
+
if (!isHovered && rowIndexRef.current) {
|
|
659
|
+
setIsRowHovered(false);
|
|
569
660
|
}
|
|
570
|
-
}, [handleMouseMove, handleMouseLeave]);
|
|
571
661
|
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
cleanup();
|
|
576
|
-
};
|
|
577
|
-
}, [cleanup]);
|
|
578
|
-
|
|
579
|
-
// Získáme row index z params
|
|
580
|
-
React.useEffect(() => {
|
|
581
|
-
const { node, rowIndex } = params;
|
|
582
|
-
if (node && node.rowIndex !== undefined) {
|
|
583
|
-
rowIndexRef.current = node.rowIndex.toString();
|
|
584
|
-
} else if (rowIndex !== undefined) {
|
|
585
|
-
rowIndexRef.current = rowIndex.toString();
|
|
662
|
+
// Pokud je toto náš řádek a nastavujeme hover true, aktualizujeme stav
|
|
663
|
+
if (isHovered && rowIndexRef.current === rowIndex) {
|
|
664
|
+
setIsRowHovered(true);
|
|
586
665
|
}
|
|
587
|
-
}
|
|
666
|
+
};
|
|
588
667
|
|
|
589
668
|
// Nastavení observer pro tento konkrétní grid
|
|
590
669
|
const setupGridObserver = React.useCallback(() => {
|
|
591
|
-
|
|
592
|
-
if (!api || observerRef.current || !isMountedRef.current) return;
|
|
670
|
+
if (!params.api || observerRef.current || !isMountedRef.current) return;
|
|
593
671
|
|
|
672
|
+
// Najdeme grid container pro tento konkrétní grid instance
|
|
594
673
|
const findThisGridContainer = () => {
|
|
595
|
-
if (eGridCell) {
|
|
596
|
-
let current = eGridCell;
|
|
674
|
+
if (params.eGridCell) {
|
|
675
|
+
let current = params.eGridCell;
|
|
597
676
|
while (current && current !== document.body) {
|
|
598
677
|
if (
|
|
599
678
|
current.classList &&
|
|
@@ -616,12 +695,14 @@ class ColumnBuilder {
|
|
|
616
695
|
|
|
617
696
|
const gridContainer = findThisGridContainer();
|
|
618
697
|
if (!gridContainer) {
|
|
698
|
+
// Zkusíme znovu za chvíli
|
|
619
699
|
setTimeout(setupGridObserver, 100);
|
|
620
700
|
return;
|
|
621
701
|
}
|
|
622
702
|
|
|
623
703
|
gridContainerRef.current = gridContainer;
|
|
624
704
|
|
|
705
|
+
// Přidáme mouse event listenery pouze pokud ještě nejsou
|
|
625
706
|
if (!mouseListenersSetupRef.current) {
|
|
626
707
|
gridContainer.addEventListener('mousemove', handleMouseMove, {
|
|
627
708
|
passive: true,
|
|
@@ -630,8 +711,10 @@ class ColumnBuilder {
|
|
|
630
711
|
passive: true,
|
|
631
712
|
});
|
|
632
713
|
|
|
714
|
+
// DŮLEŽITÉ: Přidáme také mouseenter pro reset při vstupu do gridu
|
|
633
715
|
const handleMouseEnter = () => {
|
|
634
716
|
if (isMountedRef.current) {
|
|
717
|
+
// Reset stavu při vstupu do gridu
|
|
635
718
|
currentHoveredRowRef.current = null;
|
|
636
719
|
setIsRowHovered(false);
|
|
637
720
|
}
|
|
@@ -643,6 +726,7 @@ class ColumnBuilder {
|
|
|
643
726
|
mouseListenersSetupRef.current = true;
|
|
644
727
|
}
|
|
645
728
|
|
|
729
|
+
// Nastavíme MutationObserver pro tento grid
|
|
646
730
|
observerRef.current = new MutationObserver((mutations) => {
|
|
647
731
|
if (!isMountedRef.current) return;
|
|
648
732
|
|
|
@@ -671,9 +755,11 @@ class ColumnBuilder {
|
|
|
671
755
|
});
|
|
672
756
|
|
|
673
757
|
if (shouldRecalculate) {
|
|
758
|
+
// Reset hover stavu
|
|
674
759
|
currentHoveredRowRef.current = null;
|
|
675
760
|
setIsRowHovered(false);
|
|
676
761
|
|
|
762
|
+
// Znovu detekujeme aktuální pozici myši po krátké době
|
|
677
763
|
setTimeout(() => {
|
|
678
764
|
if (isMountedRef.current && gridContainerRef.current) {
|
|
679
765
|
const rect = gridContainerRef.current.getBoundingClientRect();
|
|
@@ -688,12 +774,14 @@ class ColumnBuilder {
|
|
|
688
774
|
}
|
|
689
775
|
});
|
|
690
776
|
|
|
777
|
+
// Spustíme observer na grid container
|
|
691
778
|
observerRef.current.observe(gridContainer, {
|
|
692
779
|
childList: true,
|
|
693
780
|
subtree: true,
|
|
694
781
|
attributes: false,
|
|
695
782
|
});
|
|
696
783
|
|
|
784
|
+
// Sledujeme pozici myši globálně pro tento observer
|
|
697
785
|
const trackMouse = (e) => {
|
|
698
786
|
window.lastMouseX = e.clientX;
|
|
699
787
|
window.lastMouseY = e.clientY;
|
|
@@ -701,13 +789,13 @@ class ColumnBuilder {
|
|
|
701
789
|
|
|
702
790
|
document.addEventListener('mousemove', trackMouse, { passive: true });
|
|
703
791
|
|
|
704
|
-
|
|
792
|
+
// Cleanup tracking při unmount
|
|
793
|
+
return () => {
|
|
705
794
|
document.removeEventListener('mousemove', trackMouse);
|
|
706
795
|
};
|
|
796
|
+
}, [params.api, params.eGridCell, handleMouseMove, handleMouseLeave]);
|
|
707
797
|
|
|
708
|
-
|
|
709
|
-
}, [params, handleMouseMove, handleMouseLeave]);
|
|
710
|
-
|
|
798
|
+
// Spustíme setup při mount a při změně params
|
|
711
799
|
React.useEffect(() => {
|
|
712
800
|
setupGridObserver();
|
|
713
801
|
}, [setupGridObserver]);
|
|
@@ -727,7 +815,7 @@ class ColumnBuilder {
|
|
|
727
815
|
setCurrentMenuItems(updatedMenuItems);
|
|
728
816
|
}
|
|
729
817
|
} catch (error) {
|
|
730
|
-
|
|
818
|
+
console.error('Chyba při volání onBeforeShow:', error);
|
|
731
819
|
if (isMountedRef.current) {
|
|
732
820
|
setCurrentMenuItems(menuItems);
|
|
733
821
|
}
|
|
@@ -738,14 +826,14 @@ class ColumnBuilder {
|
|
|
738
826
|
setIsDropdownVisible(visible);
|
|
739
827
|
}
|
|
740
828
|
},
|
|
741
|
-
[params]
|
|
829
|
+
[params, menuItems, onBeforeShow]
|
|
742
830
|
);
|
|
743
831
|
|
|
744
832
|
React.useEffect(() => {
|
|
745
833
|
if (isMountedRef.current) {
|
|
746
834
|
setCurrentMenuItems(menuItems);
|
|
747
835
|
}
|
|
748
|
-
}, []);
|
|
836
|
+
}, [menuItems]);
|
|
749
837
|
|
|
750
838
|
const menu = React.useMemo(
|
|
751
839
|
() => (
|
|
@@ -763,14 +851,13 @@ class ColumnBuilder {
|
|
|
763
851
|
return <Divider key={item.key} style={{ margin: '4px 0' }} />;
|
|
764
852
|
}
|
|
765
853
|
|
|
766
|
-
const { disable, disabled } = item;
|
|
767
854
|
let isDisabled = false;
|
|
768
|
-
if (typeof disable === 'function') {
|
|
769
|
-
isDisabled = disable(params);
|
|
770
|
-
} else if (typeof disable === 'boolean') {
|
|
771
|
-
isDisabled = disable;
|
|
772
|
-
} else if (disabled !== undefined) {
|
|
773
|
-
isDisabled = disabled;
|
|
855
|
+
if (typeof item.disable === 'function') {
|
|
856
|
+
isDisabled = item.disable(params);
|
|
857
|
+
} else if (typeof item.disable === 'boolean') {
|
|
858
|
+
isDisabled = item.disable;
|
|
859
|
+
} else if (item.disabled !== undefined) {
|
|
860
|
+
isDisabled = item.disabled;
|
|
774
861
|
}
|
|
775
862
|
|
|
776
863
|
return (
|
|
@@ -781,7 +868,7 @@ class ColumnBuilder {
|
|
|
781
868
|
})}
|
|
782
869
|
</Menu>
|
|
783
870
|
),
|
|
784
|
-
[currentMenuItems, params]
|
|
871
|
+
[currentMenuItems, onActionClick, params]
|
|
785
872
|
);
|
|
786
873
|
|
|
787
874
|
const containerStyle = {
|
|
@@ -810,17 +897,6 @@ class ColumnBuilder {
|
|
|
810
897
|
pointerEvents: isRowHovered || isDropdownVisible ? 'auto' : 'none',
|
|
811
898
|
};
|
|
812
899
|
|
|
813
|
-
const handleDropdownClick = React.useCallback((e) => {
|
|
814
|
-
e.stopPropagation();
|
|
815
|
-
}, []);
|
|
816
|
-
|
|
817
|
-
const handleKeyDown = React.useCallback((e) => {
|
|
818
|
-
if (e.key === 'Enter' || e.key === ' ') {
|
|
819
|
-
e.preventDefault();
|
|
820
|
-
setIsDropdownVisible(!isDropdownVisible);
|
|
821
|
-
}
|
|
822
|
-
}, [isDropdownVisible]);
|
|
823
|
-
|
|
824
900
|
return (
|
|
825
901
|
<div style={containerStyle}>
|
|
826
902
|
<Dropdown
|
|
@@ -833,11 +909,9 @@ class ColumnBuilder {
|
|
|
833
909
|
>
|
|
834
910
|
<div
|
|
835
911
|
style={buttonStyle}
|
|
836
|
-
onClick={
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
tabIndex={0}
|
|
840
|
-
aria-label="Otevřít akční menu"
|
|
912
|
+
onClick={(e) => {
|
|
913
|
+
e.stopPropagation();
|
|
914
|
+
}}
|
|
841
915
|
>
|
|
842
916
|
<ActionIcon />
|
|
843
917
|
</div>
|
|
@@ -894,4 +968,5 @@ class ColumnBuilder {
|
|
|
894
968
|
}
|
|
895
969
|
}
|
|
896
970
|
|
|
897
|
-
export default ColumnBuilder;
|
|
971
|
+
export default ColumnBuilder;
|
|
972
|
+
/* eslint-enable */
|
package/dist/AgGridColumns.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
1
2
|
import * as React from 'react';
|
|
2
3
|
import ColumnBuilder from './ColumnBuilder';
|
|
3
4
|
import * as Tooltip from './tooltips';
|
|
@@ -40,4 +41,5 @@ export const AgGridColumns = (columnDefs, options) => {
|
|
|
40
41
|
const cols = resolvedColumnDefs && resolvedColumnDefs.map((column) => AgGridColumn(column, options));
|
|
41
42
|
return cols;
|
|
42
43
|
};
|
|
44
|
+
/* eslint-enable */
|
|
43
45
|
//# sourceMappingURL=AgGridColumns.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgGridColumns.js","sourceRoot":"","sources":["../AgGridColumns.js"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AAEtC,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,IAAI,EAAE,MAAM;CACb,CAAA;AAED,sCAAsC;AACtC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,EAAE;IACrC,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAErE,MAAM,aAAa,GAAG,CAAC,cAAc,EAAE,EAAE;QACvC,QAAQ,cAAc,EAAE,CAAC;YACvB,KAAK,YAAY,CAAC,IAAI;gBACpB,OAAO,OAAO,CAAC,IAAI,CAAC;YACtB;gBACE,MAAM,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACjD,CAAC;IACH,CAAC,CAAA;IAED,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,aAAa,GAAG,KAAK,IAAI,EAAE;YAC/B,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;gBAC1B,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;gBACpD,mBAAmB,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,uBAAuB;YAC5D,CAAC;QACH,CAAC,CAAC;QAEF,aAAa,EAAE,CAAC;IAClB,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;IAE5B,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,CAAC,gBAAgB,GAAG,gBAAgB,CAAC,CAAC,uBAAuB;QACrE,CAAC;IACH,CAAC,EAAE,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC;IAE/B,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE;IACnD,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,CAAC;IAE3B,MAAM,kBAAkB,GAAG,UAAU,YAAY,aAAa,IAAI,OAAO,UAAU,CAAC,KAAK,KAAK,UAAU;QACtG,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE;QACpB,CAAC,CAAC,UAAU,CAAC;IAEb,MAAM,IAAI,GAAG,kBAAkB,IAAI,kBAAkB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACvG,OAAO,IAAI,CAAC;AACd,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"AgGridColumns.js","sourceRoot":"","sources":["../AgGridColumns.js"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AAEtC,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,IAAI,EAAE,MAAM;CACb,CAAA;AAED,sCAAsC;AACtC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,EAAE;IACrC,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAErE,MAAM,aAAa,GAAG,CAAC,cAAc,EAAE,EAAE;QACvC,QAAQ,cAAc,EAAE,CAAC;YACvB,KAAK,YAAY,CAAC,IAAI;gBACpB,OAAO,OAAO,CAAC,IAAI,CAAC;YACtB;gBACE,MAAM,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACjD,CAAC;IACH,CAAC,CAAA;IAED,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,aAAa,GAAG,KAAK,IAAI,EAAE;YAC/B,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;gBAC1B,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;gBACpD,mBAAmB,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,uBAAuB;YAC5D,CAAC;QACH,CAAC,CAAC;QAEF,aAAa,EAAE,CAAC;IAClB,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;IAE5B,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,CAAC,gBAAgB,GAAG,gBAAgB,CAAC,CAAC,uBAAuB;QACrE,CAAC;IACH,CAAC,EAAE,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC;IAE/B,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE;IACnD,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,CAAC;IAE3B,MAAM,kBAAkB,GAAG,UAAU,YAAY,aAAa,IAAI,OAAO,UAAU,CAAC,KAAK,KAAK,UAAU;QACtG,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE;QACpB,CAAC,CAAC,UAAU,CAAC;IAEb,MAAM,IAAI,GAAG,kBAAkB,IAAI,kBAAkB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACvG,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AACF,mBAAmB"}
|
package/dist/ColumnBuilder.js
CHANGED
|
@@ -5,8 +5,9 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
5
5
|
};
|
|
6
6
|
var _ColumnBuilder_instances, _ColumnBuilder_addPreparedColumn, _ColumnBuilder_resolveEditable;
|
|
7
7
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
8
|
+
/* eslint-disable */
|
|
8
9
|
import * as React from 'react';
|
|
9
|
-
import { Menu, Dropdown, Divider } from 'antd';
|
|
10
|
+
import { Menu, Dropdown, Button, Divider } from 'antd';
|
|
10
11
|
import { prepareCellStyle, prepareColDef, getValueByPath } from './utils';
|
|
11
12
|
import { currencySymbols } from './enums';
|
|
12
13
|
import { ActionIcon } from './Icons';
|
|
@@ -87,6 +88,60 @@ const useObjectCellRenderer = (params, editable, onEditClick) => {
|
|
|
87
88
|
handleEditClick,
|
|
88
89
|
};
|
|
89
90
|
};
|
|
91
|
+
// Vytvoříme React hook funkci pro row hover action renderer
|
|
92
|
+
const useRowHoverActionRenderer = (params) => {
|
|
93
|
+
const [isRowHovered, setIsRowHovered] = React.useState(false);
|
|
94
|
+
const rowRef = React.useRef(null);
|
|
95
|
+
React.useEffect(() => {
|
|
96
|
+
if (!params.node)
|
|
97
|
+
return undefined;
|
|
98
|
+
// Funkce pro kontrolu, zda je řádek v hover stavu
|
|
99
|
+
const checkRowHoverState = () => {
|
|
100
|
+
// Najdeme DOM element řádku pomocí rowIndex
|
|
101
|
+
const rowElement = document.querySelector(`.ag-row[row-index="${params.rowIndex}"]`);
|
|
102
|
+
if (rowElement) {
|
|
103
|
+
rowRef.current = rowElement;
|
|
104
|
+
// AG-Grid automaticky přidává třídu ag-row-hover k řádku při najetí myší
|
|
105
|
+
const isHovered = rowElement.classList.contains('ag-row-hover');
|
|
106
|
+
setIsRowHovered(isHovered);
|
|
107
|
+
}
|
|
108
|
+
};
|
|
109
|
+
// Vytvoříme MutationObserver pro sledování změn tříd na řádku
|
|
110
|
+
const observer = new MutationObserver((mutations) => {
|
|
111
|
+
mutations.forEach((mutation) => {
|
|
112
|
+
if (mutation.type === 'attributes' &&
|
|
113
|
+
mutation.attributeName === 'class') {
|
|
114
|
+
checkRowHoverState();
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
});
|
|
118
|
+
// Inicializujeme stav
|
|
119
|
+
checkRowHoverState();
|
|
120
|
+
// Přidáme observer k element řádku, pokud existuje
|
|
121
|
+
if (rowRef.current) {
|
|
122
|
+
observer.observe(rowRef.current, { attributes: true });
|
|
123
|
+
}
|
|
124
|
+
// Přidáme event listeners na grid container pro sledování pohybu myši
|
|
125
|
+
const gridContainer = document.querySelector('.ag-root-wrapper');
|
|
126
|
+
if (gridContainer) {
|
|
127
|
+
gridContainer.addEventListener('mouseover', checkRowHoverState);
|
|
128
|
+
gridContainer.addEventListener('mouseout', checkRowHoverState);
|
|
129
|
+
}
|
|
130
|
+
// Cleanup při odmontování komponenty
|
|
131
|
+
return () => {
|
|
132
|
+
if (rowRef.current) {
|
|
133
|
+
observer.disconnect();
|
|
134
|
+
}
|
|
135
|
+
if (gridContainer) {
|
|
136
|
+
gridContainer.removeEventListener('mouseover', checkRowHoverState);
|
|
137
|
+
gridContainer.removeEventListener('mouseout', checkRowHoverState);
|
|
138
|
+
}
|
|
139
|
+
};
|
|
140
|
+
}, [params.node, params.rowIndex]);
|
|
141
|
+
return {
|
|
142
|
+
isRowHovered,
|
|
143
|
+
};
|
|
144
|
+
};
|
|
90
145
|
class ColumnBuilder {
|
|
91
146
|
constructor(intl) {
|
|
92
147
|
_ColumnBuilder_instances.add(this);
|
|
@@ -175,21 +230,21 @@ class ColumnBuilder {
|
|
|
175
230
|
});
|
|
176
231
|
return this;
|
|
177
232
|
}
|
|
178
|
-
addLinkColumn({ onClick, linkStyle, hoverStyle, cellAlign = 'left', editable, overviewToggle = false,
|
|
233
|
+
addLinkColumn({ onClick, linkStyle, hoverStyle, cellAlign = 'left', editable, overviewToggle = false, // Přidán výchozí parametr pro overview
|
|
234
|
+
...restProps }) {
|
|
179
235
|
// Vytvořím komponentu pro cell renderer, která používá hook
|
|
180
236
|
const LinkCellRenderer = React.memo((params) => {
|
|
181
237
|
const { isHovered, handleMouseEnter, handleMouseLeave, handleClick, computedLinkStyle, computedHoverStyle, } = useLinkCellRenderer(params, onClick, linkStyle, hoverStyle, overviewToggle);
|
|
182
|
-
const handleKeyPress = React.useCallback((event) => {
|
|
183
|
-
if (event.key === 'Enter' || event.key === ' ') {
|
|
184
|
-
handleClick(event);
|
|
185
|
-
}
|
|
186
|
-
}, [handleClick]);
|
|
187
238
|
return (_jsx("div", { className: "link-cell-container", style: {
|
|
188
239
|
width: '100%',
|
|
189
240
|
height: '100%',
|
|
190
241
|
display: 'flex',
|
|
191
242
|
alignItems: 'center',
|
|
192
|
-
}, children: _jsx("span", { onClick: handleClick, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave,
|
|
243
|
+
}, children: _jsx("span", { onClick: handleClick, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, style: isHovered ? computedHoverStyle : computedLinkStyle, role: "button", tabIndex: 0, onKeyPress: (event) => {
|
|
244
|
+
if (event.key === 'Enter' || event.key === ' ') {
|
|
245
|
+
handleClick(event);
|
|
246
|
+
}
|
|
247
|
+
}, children: params.value }) }));
|
|
193
248
|
});
|
|
194
249
|
// Používáme funkci, která vrátí React komponentu
|
|
195
250
|
const cellRenderer = (params) => {
|
|
@@ -199,7 +254,7 @@ class ColumnBuilder {
|
|
|
199
254
|
cellAlign,
|
|
200
255
|
cellRenderer,
|
|
201
256
|
editable: __classPrivateFieldGet(this, _ColumnBuilder_instances, "m", _ColumnBuilder_resolveEditable).call(this, editable),
|
|
202
|
-
overviewToggle,
|
|
257
|
+
overviewToggle, // Předání příznaku dál
|
|
203
258
|
...restProps,
|
|
204
259
|
});
|
|
205
260
|
return this;
|
|
@@ -238,7 +293,7 @@ class ColumnBuilder {
|
|
|
238
293
|
display: 'flex',
|
|
239
294
|
alignItems: 'center',
|
|
240
295
|
justifyContent: 'center',
|
|
241
|
-
}, onClick: handleEditClick, title: "Upravit",
|
|
296
|
+
}, onClick: handleEditClick, title: "Upravit", children: _jsx("span", { style: { fontSize: '16px' }, children: "\u22EE" }) }))] }));
|
|
242
297
|
});
|
|
243
298
|
// Používáme funkci, která vrátí React komponentu
|
|
244
299
|
const cellRenderer = (params) => {
|
|
@@ -297,50 +352,80 @@ class ColumnBuilder {
|
|
|
297
352
|
const gridContainerRef = React.useRef(null);
|
|
298
353
|
const currentHoveredRowRef = React.useRef(null);
|
|
299
354
|
const mouseListenersSetupRef = React.useRef(false);
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
355
|
+
React.useEffect(() => {
|
|
356
|
+
return () => {
|
|
357
|
+
isMountedRef.current = false;
|
|
358
|
+
cleanup();
|
|
359
|
+
};
|
|
360
|
+
}, []);
|
|
361
|
+
// Cleanup funkce
|
|
362
|
+
const cleanup = () => {
|
|
363
|
+
if (observerRef.current) {
|
|
364
|
+
observerRef.current.disconnect();
|
|
365
|
+
observerRef.current = null;
|
|
306
366
|
}
|
|
307
|
-
if (
|
|
308
|
-
|
|
367
|
+
if (gridContainerRef.current && mouseListenersSetupRef.current) {
|
|
368
|
+
gridContainerRef.current.removeEventListener('mousemove', handleMouseMove);
|
|
369
|
+
gridContainerRef.current.removeEventListener('mouseleave', handleMouseLeave);
|
|
370
|
+
// gridContainerRef.current.removeEventListener(
|
|
371
|
+
// 'mouseenter',
|
|
372
|
+
// handleMouseEnter
|
|
373
|
+
// );
|
|
374
|
+
mouseListenersSetupRef.current = false;
|
|
309
375
|
}
|
|
310
|
-
}
|
|
311
|
-
//
|
|
376
|
+
};
|
|
377
|
+
// Získáme row index z params
|
|
378
|
+
React.useEffect(() => {
|
|
379
|
+
if (params.node && params.node.rowIndex !== undefined) {
|
|
380
|
+
rowIndexRef.current = params.node.rowIndex.toString();
|
|
381
|
+
}
|
|
382
|
+
else if (params.rowIndex !== undefined) {
|
|
383
|
+
rowIndexRef.current = params.rowIndex.toString();
|
|
384
|
+
}
|
|
385
|
+
}, [params.node, params.rowIndex]);
|
|
386
|
+
// Mouse event handlers
|
|
312
387
|
const handleMouseMove = React.useCallback((event) => {
|
|
313
388
|
if (!isMountedRef.current)
|
|
314
389
|
return;
|
|
315
|
-
const
|
|
390
|
+
const target = event.target;
|
|
316
391
|
if (!target)
|
|
317
392
|
return;
|
|
318
|
-
|
|
393
|
+
// Najdeme nejbližší AG-Grid row element
|
|
394
|
+
let rowElement = target.closest('.ag-row');
|
|
319
395
|
if (rowElement) {
|
|
396
|
+
// Získáme row index z AG-Grid attributů
|
|
320
397
|
const rowIndex = rowElement.getAttribute('row-index') ||
|
|
321
398
|
rowElement.getAttribute('aria-rowindex') ||
|
|
322
399
|
rowElement.dataset.rowIndex ||
|
|
323
400
|
rowElement.getAttribute('data-ag-row-index');
|
|
324
401
|
if (rowIndex !== null) {
|
|
325
402
|
const normalizedRowIndex = rowIndex.toString();
|
|
403
|
+
// KLÍČOVÁ ZMĚNA: Explicitně resetujeme předchozí řádek při změně
|
|
326
404
|
if (normalizedRowIndex !== currentHoveredRowRef.current) {
|
|
405
|
+
// Pokud jsme měli předchozí řádek, nastavíme mu hover false
|
|
327
406
|
if (currentHoveredRowRef.current !== null) {
|
|
328
407
|
notifyRowHoverChange(currentHoveredRowRef.current, false);
|
|
329
408
|
}
|
|
409
|
+
// Nastavíme nový řádek jako hovered
|
|
330
410
|
currentHoveredRowRef.current = normalizedRowIndex;
|
|
331
411
|
notifyRowHoverChange(normalizedRowIndex, true);
|
|
332
412
|
}
|
|
333
413
|
}
|
|
334
414
|
}
|
|
335
|
-
else
|
|
336
|
-
|
|
337
|
-
currentHoveredRowRef.current
|
|
415
|
+
else {
|
|
416
|
+
// Myš není nad žádným řádkem - resetujeme všechny
|
|
417
|
+
if (currentHoveredRowRef.current !== null) {
|
|
418
|
+
notifyRowHoverChange(currentHoveredRowRef.current, false);
|
|
419
|
+
currentHoveredRowRef.current = null;
|
|
420
|
+
}
|
|
338
421
|
}
|
|
339
|
-
}, [
|
|
422
|
+
}, []);
|
|
340
423
|
const handleMouseLeave = React.useCallback((event) => {
|
|
341
424
|
if (!isMountedRef.current)
|
|
342
425
|
return;
|
|
343
|
-
|
|
426
|
+
// Lepší detekce opuštění gridu
|
|
427
|
+
const relatedTarget = event.relatedTarget;
|
|
428
|
+
// Pokud myš opustí celý grid container NEBO jde mimo dokument
|
|
344
429
|
if (gridContainerRef.current &&
|
|
345
430
|
(!relatedTarget || !gridContainerRef.current.contains(relatedTarget))) {
|
|
346
431
|
if (currentHoveredRowRef.current !== null) {
|
|
@@ -348,43 +433,28 @@ class ColumnBuilder {
|
|
|
348
433
|
currentHoveredRowRef.current = null;
|
|
349
434
|
}
|
|
350
435
|
}
|
|
351
|
-
}, [
|
|
352
|
-
//
|
|
353
|
-
const
|
|
354
|
-
if (
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
gridContainerRef.current.removeEventListener('mousemove', handleMouseMove);
|
|
360
|
-
gridContainerRef.current.removeEventListener('mouseleave', handleMouseLeave);
|
|
361
|
-
mouseListenersSetupRef.current = false;
|
|
362
|
-
}
|
|
363
|
-
}, [handleMouseMove, handleMouseLeave]);
|
|
364
|
-
React.useEffect(() => {
|
|
365
|
-
return () => {
|
|
366
|
-
isMountedRef.current = false;
|
|
367
|
-
cleanup();
|
|
368
|
-
};
|
|
369
|
-
}, [cleanup]);
|
|
370
|
-
// Získáme row index z params
|
|
371
|
-
React.useEffect(() => {
|
|
372
|
-
const { node, rowIndex } = params;
|
|
373
|
-
if (node && node.rowIndex !== undefined) {
|
|
374
|
-
rowIndexRef.current = node.rowIndex.toString();
|
|
436
|
+
}, []);
|
|
437
|
+
// Notifikace o změně hover stavu pro tento specifický grid
|
|
438
|
+
const notifyRowHoverChange = (rowIndex, isHovered) => {
|
|
439
|
+
if (!isMountedRef.current)
|
|
440
|
+
return;
|
|
441
|
+
// EXPLICITNÍ ŘÍZENÍ: Pokud nastavujeme hover false, resetujeme stav pro všechny řádky
|
|
442
|
+
if (!isHovered && rowIndexRef.current) {
|
|
443
|
+
setIsRowHovered(false);
|
|
375
444
|
}
|
|
376
|
-
|
|
377
|
-
|
|
445
|
+
// Pokud je toto náš řádek a nastavujeme hover true, aktualizujeme stav
|
|
446
|
+
if (isHovered && rowIndexRef.current === rowIndex) {
|
|
447
|
+
setIsRowHovered(true);
|
|
378
448
|
}
|
|
379
|
-
}
|
|
449
|
+
};
|
|
380
450
|
// Nastavení observer pro tento konkrétní grid
|
|
381
451
|
const setupGridObserver = React.useCallback(() => {
|
|
382
|
-
|
|
383
|
-
if (!api || observerRef.current || !isMountedRef.current)
|
|
452
|
+
if (!params.api || observerRef.current || !isMountedRef.current)
|
|
384
453
|
return;
|
|
454
|
+
// Najdeme grid container pro tento konkrétní grid instance
|
|
385
455
|
const findThisGridContainer = () => {
|
|
386
|
-
if (eGridCell) {
|
|
387
|
-
let current = eGridCell;
|
|
456
|
+
if (params.eGridCell) {
|
|
457
|
+
let current = params.eGridCell;
|
|
388
458
|
while (current && current !== document.body) {
|
|
389
459
|
if (current.classList &&
|
|
390
460
|
(current.classList.contains('ag-root-wrapper') ||
|
|
@@ -404,10 +474,12 @@ class ColumnBuilder {
|
|
|
404
474
|
};
|
|
405
475
|
const gridContainer = findThisGridContainer();
|
|
406
476
|
if (!gridContainer) {
|
|
477
|
+
// Zkusíme znovu za chvíli
|
|
407
478
|
setTimeout(setupGridObserver, 100);
|
|
408
479
|
return;
|
|
409
480
|
}
|
|
410
481
|
gridContainerRef.current = gridContainer;
|
|
482
|
+
// Přidáme mouse event listenery pouze pokud ještě nejsou
|
|
411
483
|
if (!mouseListenersSetupRef.current) {
|
|
412
484
|
gridContainer.addEventListener('mousemove', handleMouseMove, {
|
|
413
485
|
passive: true,
|
|
@@ -415,8 +487,10 @@ class ColumnBuilder {
|
|
|
415
487
|
gridContainer.addEventListener('mouseleave', handleMouseLeave, {
|
|
416
488
|
passive: true,
|
|
417
489
|
});
|
|
490
|
+
// DŮLEŽITÉ: Přidáme také mouseenter pro reset při vstupu do gridu
|
|
418
491
|
const handleMouseEnter = () => {
|
|
419
492
|
if (isMountedRef.current) {
|
|
493
|
+
// Reset stavu při vstupu do gridu
|
|
420
494
|
currentHoveredRowRef.current = null;
|
|
421
495
|
setIsRowHovered(false);
|
|
422
496
|
}
|
|
@@ -426,6 +500,7 @@ class ColumnBuilder {
|
|
|
426
500
|
});
|
|
427
501
|
mouseListenersSetupRef.current = true;
|
|
428
502
|
}
|
|
503
|
+
// Nastavíme MutationObserver pro tento grid
|
|
429
504
|
observerRef.current = new MutationObserver((mutations) => {
|
|
430
505
|
if (!isMountedRef.current)
|
|
431
506
|
return;
|
|
@@ -444,8 +519,10 @@ class ColumnBuilder {
|
|
|
444
519
|
}
|
|
445
520
|
});
|
|
446
521
|
if (shouldRecalculate) {
|
|
522
|
+
// Reset hover stavu
|
|
447
523
|
currentHoveredRowRef.current = null;
|
|
448
524
|
setIsRowHovered(false);
|
|
525
|
+
// Znovu detekujeme aktuální pozici myši po krátké době
|
|
449
526
|
setTimeout(() => {
|
|
450
527
|
if (isMountedRef.current && gridContainerRef.current) {
|
|
451
528
|
const rect = gridContainerRef.current.getBoundingClientRect();
|
|
@@ -459,21 +536,24 @@ class ColumnBuilder {
|
|
|
459
536
|
}, 100);
|
|
460
537
|
}
|
|
461
538
|
});
|
|
539
|
+
// Spustíme observer na grid container
|
|
462
540
|
observerRef.current.observe(gridContainer, {
|
|
463
541
|
childList: true,
|
|
464
542
|
subtree: true,
|
|
465
543
|
attributes: false,
|
|
466
544
|
});
|
|
545
|
+
// Sledujeme pozici myši globálně pro tento observer
|
|
467
546
|
const trackMouse = (e) => {
|
|
468
547
|
window.lastMouseX = e.clientX;
|
|
469
548
|
window.lastMouseY = e.clientY;
|
|
470
549
|
};
|
|
471
550
|
document.addEventListener('mousemove', trackMouse, { passive: true });
|
|
472
|
-
|
|
551
|
+
// Cleanup tracking při unmount
|
|
552
|
+
return () => {
|
|
473
553
|
document.removeEventListener('mousemove', trackMouse);
|
|
474
554
|
};
|
|
475
|
-
|
|
476
|
-
|
|
555
|
+
}, [params.api, params.eGridCell, handleMouseMove, handleMouseLeave]);
|
|
556
|
+
// Spustíme setup při mount a při změně params
|
|
477
557
|
React.useEffect(() => {
|
|
478
558
|
setupGridObserver();
|
|
479
559
|
}, [setupGridObserver]);
|
|
@@ -490,7 +570,7 @@ class ColumnBuilder {
|
|
|
490
570
|
}
|
|
491
571
|
}
|
|
492
572
|
catch (error) {
|
|
493
|
-
|
|
573
|
+
console.error('Chyba při volání onBeforeShow:', error);
|
|
494
574
|
if (isMountedRef.current) {
|
|
495
575
|
setCurrentMenuItems(menuItems);
|
|
496
576
|
}
|
|
@@ -499,12 +579,12 @@ class ColumnBuilder {
|
|
|
499
579
|
if (isMountedRef.current) {
|
|
500
580
|
setIsDropdownVisible(visible);
|
|
501
581
|
}
|
|
502
|
-
}, [params]);
|
|
582
|
+
}, [params, menuItems, onBeforeShow]);
|
|
503
583
|
React.useEffect(() => {
|
|
504
584
|
if (isMountedRef.current) {
|
|
505
585
|
setCurrentMenuItems(menuItems);
|
|
506
586
|
}
|
|
507
|
-
}, []);
|
|
587
|
+
}, [menuItems]);
|
|
508
588
|
const menu = React.useMemo(() => (_jsx(Menu, { onClick: (e) => {
|
|
509
589
|
if (onActionClick) {
|
|
510
590
|
const item = currentMenuItems.filter(f => f.key === e.key)[0];
|
|
@@ -515,19 +595,18 @@ class ColumnBuilder {
|
|
|
515
595
|
if (item.type === 'divider') {
|
|
516
596
|
return _jsx(Divider, { style: { margin: '4px 0' } }, item.key);
|
|
517
597
|
}
|
|
518
|
-
const { disable, disabled } = item;
|
|
519
598
|
let isDisabled = false;
|
|
520
|
-
if (typeof disable === 'function') {
|
|
521
|
-
isDisabled = disable(params);
|
|
599
|
+
if (typeof item.disable === 'function') {
|
|
600
|
+
isDisabled = item.disable(params);
|
|
522
601
|
}
|
|
523
|
-
else if (typeof disable === 'boolean') {
|
|
524
|
-
isDisabled = disable;
|
|
602
|
+
else if (typeof item.disable === 'boolean') {
|
|
603
|
+
isDisabled = item.disable;
|
|
525
604
|
}
|
|
526
|
-
else if (disabled !== undefined) {
|
|
527
|
-
isDisabled = disabled;
|
|
605
|
+
else if (item.disabled !== undefined) {
|
|
606
|
+
isDisabled = item.disabled;
|
|
528
607
|
}
|
|
529
608
|
return (_jsx(Menu.Item, { disabled: isDisabled, children: item.label }, item.key));
|
|
530
|
-
}) })), [currentMenuItems, params]);
|
|
609
|
+
}) })), [currentMenuItems, onActionClick, params]);
|
|
531
610
|
const containerStyle = {
|
|
532
611
|
width: '32px',
|
|
533
612
|
height: '32px',
|
|
@@ -552,16 +631,9 @@ class ColumnBuilder {
|
|
|
552
631
|
transition: 'opacity 0.15s ease-in-out, visibility 0.15s ease-in-out',
|
|
553
632
|
pointerEvents: isRowHovered || isDropdownVisible ? 'auto' : 'none',
|
|
554
633
|
};
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
const handleKeyDown = React.useCallback((e) => {
|
|
559
|
-
if (e.key === 'Enter' || e.key === ' ') {
|
|
560
|
-
e.preventDefault();
|
|
561
|
-
setIsDropdownVisible(!isDropdownVisible);
|
|
562
|
-
}
|
|
563
|
-
}, [isDropdownVisible]);
|
|
564
|
-
return (_jsx("div", { style: containerStyle, children: _jsx(Dropdown, { overlayStyle: { zIndex: 5000 }, overlay: menu, trigger: ['click'], visible: isDropdownVisible, onVisibleChange: handleVisibleChange, getPopupContainer: () => document.body, children: _jsx("div", { style: buttonStyle, onClick: handleDropdownClick, onKeyDown: handleKeyDown, role: "button", tabIndex: 0, "aria-label": "Otev\u0159\u00EDt ak\u010Dn\u00ED menu", children: _jsx(ActionIcon, {}) }) }) }));
|
|
634
|
+
return (_jsx("div", { style: containerStyle, children: _jsx(Dropdown, { overlayStyle: { zIndex: 5000 }, overlay: menu, trigger: ['click'], visible: isDropdownVisible, onVisibleChange: handleVisibleChange, getPopupContainer: () => document.body, children: _jsx("div", { style: buttonStyle, onClick: (e) => {
|
|
635
|
+
e.stopPropagation();
|
|
636
|
+
}, children: _jsx(ActionIcon, {}) }) }) }));
|
|
565
637
|
};
|
|
566
638
|
__classPrivateFieldGet(this, _ColumnBuilder_instances, "m", _ColumnBuilder_addPreparedColumn).call(this, {
|
|
567
639
|
headerName: '',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnBuilder.js","sourceRoot":"","sources":["../ColumnBuilder.jsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ColumnBuilder.js","sourceRoot":"","sources":["../ColumnBuilder.jsx"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
/* eslint-disable */
|
|
2
3
|
import React, { useCallback, useEffect, useState } from 'react';
|
|
3
4
|
import AgGrid from '@bit.rhplus/ag-grid';
|
|
4
5
|
import classnames from 'classnames';
|
|
@@ -6,9 +7,7 @@ import { OperationType, useSharedGrid } from '@bit.rhplus/shared-grid-form';
|
|
|
6
7
|
import { AgGridColumns } from './AgGridColumns';
|
|
7
8
|
const Grid = (props) => {
|
|
8
9
|
const gridRef = React.useRef(null);
|
|
9
|
-
const { appearance = 'ag-theme-alpine', columnDefs, height = '100%', defaultColDef, gridOptions, rowClassRules, editableDefault = true,
|
|
10
|
-
// onRowDoubleClicked - odstraněna nepoužitá proměnná
|
|
11
|
-
} = props;
|
|
10
|
+
const { appearance = 'ag-theme-alpine', columnDefs, height = '100%', defaultColDef, gridOptions, rowClassRules, editableDefault = true, onRowDoubleClicked, } = props;
|
|
12
11
|
const { items, onGridReady, addItem, updateItem, deleteItem, pendingChanges = [], isCellEditable } = useSharedGrid();
|
|
13
12
|
const [gridApi, setGridApi] = useState(null);
|
|
14
13
|
// Handler pro připravení gridu
|
|
@@ -25,7 +24,7 @@ const Grid = (props) => {
|
|
|
25
24
|
const changes = { [colDef.field]: newValue };
|
|
26
25
|
updateItem(data.id, changes);
|
|
27
26
|
}, [updateItem]);
|
|
28
|
-
// Handler pro dvojklik na buňku
|
|
27
|
+
// Handler pro dvojklik na buňku
|
|
29
28
|
// const handleCellDoubleClicked = useCallback((params) => {
|
|
30
29
|
// const { colDef } = params;
|
|
31
30
|
// // Pokud je buňka needitovatelná, vyvoláme událost onRowDoubleClicked
|
|
@@ -82,23 +81,20 @@ const Grid = (props) => {
|
|
|
82
81
|
// Vlastní CSS třídy pro řádky s čekajícími změnami
|
|
83
82
|
const defaultRowClassRules = {
|
|
84
83
|
'row-pending-add': (params) => {
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
pendingChanges[data.id].operation === OperationType.ADD;
|
|
84
|
+
return pendingChanges[params.data.id] &&
|
|
85
|
+
pendingChanges[params.data.id].operation === OperationType.ADD;
|
|
88
86
|
},
|
|
89
87
|
'row-pending-update': (params) => {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
pendingChanges[data.id].operation === OperationType.UPDATE;
|
|
88
|
+
return pendingChanges[params.data.id] &&
|
|
89
|
+
pendingChanges[params.data.id].operation === OperationType.UPDATE;
|
|
93
90
|
},
|
|
94
91
|
'row-pending-delete': (params) => {
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
pendingChanges[data.id].operation === OperationType.DELETE;
|
|
92
|
+
return pendingChanges[params.data.id] &&
|
|
93
|
+
pendingChanges[params.data.id].operation === OperationType.DELETE;
|
|
98
94
|
}
|
|
99
95
|
};
|
|
100
|
-
// Kombinované rowClassRules
|
|
101
|
-
|
|
96
|
+
// Kombinované rowClassRules
|
|
97
|
+
const combinedRowClassRules = { ...defaultRowClassRules, ...rowClassRules };
|
|
102
98
|
// Exportovat metody pro přidání/odstranění řádků
|
|
103
99
|
useEffect(() => {
|
|
104
100
|
if (gridApi) {
|
|
@@ -113,10 +109,11 @@ const Grid = (props) => {
|
|
|
113
109
|
resizable: true,
|
|
114
110
|
...defaultColDef,
|
|
115
111
|
}, isRowSelectable: (params) => {
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
112
|
+
return !pendingChanges[params.data.id] ||
|
|
113
|
+
pendingChanges[params.data.id].operation !== OperationType.DELETE;
|
|
114
|
+
}, isEditable: isCellEditable, onGridReady: handleGridReady, onCellValueChanged: handleCellValueChanged,
|
|
115
|
+
// rowClassRules={combinedRowClassRules}
|
|
116
|
+
getRowId: (params) => params.data.id, ...gridOptions, context: {
|
|
120
117
|
componentParent: this,
|
|
121
118
|
}, ...props, ref: gridRef, columnDefs: AgGridColumns(columnDefs, props) }) }));
|
|
122
119
|
};
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.jsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAChE,OAAO,MAAM,MAAM,qBAAqB,CAAC;AACzC,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,IAAI,GAAG,CAAC,KAAK,EAAE,EAAE;IACrB,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,EACJ,UAAU,GAAG,iBAAiB,EAC9B,UAAU,EACV,MAAM,GAAG,MAAM,EACf,aAAa,EACb,WAAW,EACX,aAAa,EACb,eAAe,GAAG,IAAI
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.jsx"],"names":[],"mappings":"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"}
|
package/dist/style.css
ADDED
|
File without changes
|
package/index.jsx
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
1
2
|
import React, { useCallback, useEffect, useState } from 'react';
|
|
2
3
|
import AgGrid from '@bit.rhplus/ag-grid';
|
|
3
4
|
import classnames from 'classnames';
|
|
@@ -14,7 +15,7 @@ const Grid = (props) => {
|
|
|
14
15
|
gridOptions,
|
|
15
16
|
rowClassRules,
|
|
16
17
|
editableDefault = true,
|
|
17
|
-
|
|
18
|
+
onRowDoubleClicked,
|
|
18
19
|
} = props;
|
|
19
20
|
|
|
20
21
|
const {
|
|
@@ -45,7 +46,7 @@ const Grid = (props) => {
|
|
|
45
46
|
updateItem(data.id, changes);
|
|
46
47
|
}, [updateItem]);
|
|
47
48
|
|
|
48
|
-
// Handler pro dvojklik na buňku
|
|
49
|
+
// Handler pro dvojklik na buňku
|
|
49
50
|
// const handleCellDoubleClicked = useCallback((params) => {
|
|
50
51
|
// const { colDef } = params;
|
|
51
52
|
|
|
@@ -112,24 +113,21 @@ const Grid = (props) => {
|
|
|
112
113
|
// Vlastní CSS třídy pro řádky s čekajícími změnami
|
|
113
114
|
const defaultRowClassRules = {
|
|
114
115
|
'row-pending-add': (params) => {
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
pendingChanges[data.id].operation === OperationType.ADD;
|
|
116
|
+
return pendingChanges[params.data.id] &&
|
|
117
|
+
pendingChanges[params.data.id].operation === OperationType.ADD;
|
|
118
118
|
},
|
|
119
119
|
'row-pending-update': (params) => {
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
pendingChanges[data.id].operation === OperationType.UPDATE;
|
|
120
|
+
return pendingChanges[params.data.id] &&
|
|
121
|
+
pendingChanges[params.data.id].operation === OperationType.UPDATE;
|
|
123
122
|
},
|
|
124
123
|
'row-pending-delete': (params) => {
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
pendingChanges[data.id].operation === OperationType.DELETE;
|
|
124
|
+
return pendingChanges[params.data.id] &&
|
|
125
|
+
pendingChanges[params.data.id].operation === OperationType.DELETE;
|
|
128
126
|
}
|
|
129
127
|
};
|
|
130
128
|
|
|
131
|
-
// Kombinované rowClassRules
|
|
132
|
-
|
|
129
|
+
// Kombinované rowClassRules
|
|
130
|
+
const combinedRowClassRules = { ...defaultRowClassRules, ...rowClassRules };
|
|
133
131
|
|
|
134
132
|
// Exportovat metody pro přidání/odstranění řádků
|
|
135
133
|
useEffect(() => {
|
|
@@ -141,6 +139,7 @@ const Grid = (props) => {
|
|
|
141
139
|
}, [gridApi, handleAddRow, handleDeleteRow]);
|
|
142
140
|
|
|
143
141
|
return (
|
|
142
|
+
|
|
144
143
|
<div className={classnames(appearance)} style={{ height }}>
|
|
145
144
|
<AgGrid
|
|
146
145
|
rowData={items}
|
|
@@ -151,14 +150,13 @@ const Grid = (props) => {
|
|
|
151
150
|
...defaultColDef,
|
|
152
151
|
}}
|
|
153
152
|
isRowSelectable={(params) => {
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
pendingChanges[data.id].operation !== OperationType.DELETE;
|
|
153
|
+
return !pendingChanges[params.data.id] ||
|
|
154
|
+
pendingChanges[params.data.id].operation !== OperationType.DELETE;
|
|
157
155
|
}}
|
|
158
156
|
isEditable={isCellEditable}
|
|
159
157
|
onGridReady={handleGridReady}
|
|
160
158
|
onCellValueChanged={handleCellValueChanged}
|
|
161
|
-
rowClassRules={
|
|
159
|
+
// rowClassRules={combinedRowClassRules}
|
|
162
160
|
getRowId={(params) => params.data.id}
|
|
163
161
|
{...gridOptions}
|
|
164
162
|
context={{
|
|
@@ -175,4 +173,5 @@ const Grid = (props) => {
|
|
|
175
173
|
export default Grid;
|
|
176
174
|
export * from './enums';
|
|
177
175
|
export { default as ColumnBuilder } from './ColumnBuilder';
|
|
178
|
-
export { default as ContextBuilder } from './ContextBuilder';
|
|
176
|
+
export { default as ContextBuilder } from './ContextBuilder';
|
|
177
|
+
/* eslint-enable */
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bit.rhplus/ui.grid",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.25",
|
|
4
4
|
"homepage": "https://bit.cloud/remote-scope/ui/grid",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "remote-scope",
|
|
8
8
|
"name": "ui/grid",
|
|
9
|
-
"version": "0.0.
|
|
9
|
+
"version": "0.0.25"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"antd": "^5.20.6",
|
package/style.css
ADDED
|
File without changes
|
|
File without changes
|