@bit.rhplus/ag-grid 0.0.75 → 0.0.77
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/AgGridColumn.js +35 -5
- package/Renderers/ButtonRenderer.jsx +2 -0
- package/Renderers/CheckboxRenderer.jsx +22 -9
- package/Renderers/CountrySelectRenderer.jsx +62 -14
- package/Renderers/ImageRenderer.jsx +2 -0
- package/Renderers/LinkRenderer.jsx +123 -0
- package/Renderers/ObjectRenderer.jsx +130 -0
- package/Renderers/SelectRenderer.jsx +65 -8
- package/dist/AgGridColumn.js +35 -5
- package/dist/AgGridColumn.js.map +1 -1
- package/dist/Renderers/ButtonRenderer.d.ts +3 -0
- package/dist/Renderers/ButtonRenderer.js +1 -0
- package/dist/Renderers/ButtonRenderer.js.map +1 -1
- package/dist/Renderers/CheckboxRenderer.d.ts +4 -1
- package/dist/Renderers/CheckboxRenderer.js +17 -7
- package/dist/Renderers/CheckboxRenderer.js.map +1 -1
- package/dist/Renderers/CountrySelectRenderer.d.ts +4 -1
- package/dist/Renderers/CountrySelectRenderer.js +40 -11
- package/dist/Renderers/CountrySelectRenderer.js.map +1 -1
- package/dist/Renderers/ImageRenderer.d.ts +3 -0
- package/dist/Renderers/ImageRenderer.js +1 -0
- package/dist/Renderers/ImageRenderer.js.map +1 -1
- package/dist/Renderers/LinkRenderer.d.ts +7 -0
- package/dist/Renderers/LinkRenderer.js +72 -0
- package/dist/Renderers/LinkRenderer.js.map +1 -0
- package/dist/Renderers/ObjectRenderer.d.ts +7 -0
- package/dist/Renderers/ObjectRenderer.js +75 -0
- package/dist/Renderers/ObjectRenderer.js.map +1 -0
- package/dist/Renderers/SelectRenderer.d.ts +4 -1
- package/dist/Renderers/SelectRenderer.js +46 -8
- package/dist/Renderers/SelectRenderer.js.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/index.jsx +4 -0
- package/package.json +7 -7
- /package/dist/{preview-1767698534605.js → preview-1768366534788.js} +0 -0
package/AgGridColumn.js
CHANGED
|
@@ -21,20 +21,50 @@ export const AgGridColumn = (column, options) => {
|
|
|
21
21
|
(data.value && moment(data.value).format(column.dateRenderer)) || "";
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
-
if (column.booleanRenderer)
|
|
24
|
+
if (column.booleanRenderer) {
|
|
25
25
|
column.cellRenderer = "booleanRenderer";
|
|
26
|
+
// AG-Grid deferRender: odkládá rendering během scrollování pro lepší výkon
|
|
27
|
+
column.cellRendererParams = {
|
|
28
|
+
...column.booleanRendererParams,
|
|
29
|
+
deferRender: true
|
|
30
|
+
};
|
|
31
|
+
}
|
|
26
32
|
|
|
27
|
-
if (column.iconRenderer)
|
|
33
|
+
if (column.iconRenderer) {
|
|
28
34
|
column.cellRenderer = "iconRenderer";
|
|
35
|
+
// AG-Grid deferRender: odkládá rendering během scrollování pro lepší výkon
|
|
36
|
+
column.cellRendererParams = {
|
|
37
|
+
...column.iconRendererParams,
|
|
38
|
+
deferRender: true
|
|
39
|
+
};
|
|
40
|
+
}
|
|
29
41
|
|
|
30
|
-
if (column.imageRenderer)
|
|
42
|
+
if (column.imageRenderer) {
|
|
31
43
|
column.cellRenderer = "imageRenderer";
|
|
44
|
+
// AG-Grid deferRender: odkládá rendering během scrollování pro lepší výkon
|
|
45
|
+
column.cellRendererParams = {
|
|
46
|
+
...column.imageRendererParams,
|
|
47
|
+
deferRender: true
|
|
48
|
+
};
|
|
49
|
+
}
|
|
32
50
|
|
|
33
|
-
if (column.stateRenderer)
|
|
51
|
+
if (column.stateRenderer) {
|
|
34
52
|
column.cellRenderer = "stateRenderer";
|
|
53
|
+
// AG-Grid deferRender: odkládá rendering během scrollování pro lepší výkon
|
|
54
|
+
column.cellRendererParams = {
|
|
55
|
+
...column.stateRendererParams,
|
|
56
|
+
deferRender: true
|
|
57
|
+
};
|
|
58
|
+
}
|
|
35
59
|
|
|
36
|
-
if (column.buttonRenderer)
|
|
60
|
+
if (column.buttonRenderer) {
|
|
37
61
|
column.cellRenderer = "buttonRenderer";
|
|
62
|
+
// AG-Grid deferRender: odkládá rendering během scrollování pro lepší výkon
|
|
63
|
+
column.cellRendererParams = {
|
|
64
|
+
...column.buttonRendererParams,
|
|
65
|
+
deferRender: true
|
|
66
|
+
};
|
|
67
|
+
}
|
|
38
68
|
|
|
39
69
|
if (column.headerHtmlText) {
|
|
40
70
|
column.headerComponentParams = {
|
|
@@ -1,7 +1,20 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
|
|
3
3
|
// Style constant
|
|
4
|
-
const CONTAINER_STYLE = {
|
|
4
|
+
const CONTAINER_STYLE = {
|
|
5
|
+
textAlign: "center",
|
|
6
|
+
display: "flex",
|
|
7
|
+
alignItems: "center",
|
|
8
|
+
justifyContent: "center",
|
|
9
|
+
height: "100%",
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
// Memoizovaný CheckboxElement sub-komponenta
|
|
13
|
+
const CheckboxElement = React.memo(({ checked, onChange }) => (
|
|
14
|
+
<input type="checkbox" checked={checked} onChange={onChange} />
|
|
15
|
+
));
|
|
16
|
+
|
|
17
|
+
CheckboxElement.displayName = 'CheckboxElement';
|
|
5
18
|
|
|
6
19
|
function CheckboxRenderer(props) {
|
|
7
20
|
const {
|
|
@@ -12,9 +25,10 @@ function CheckboxRenderer(props) {
|
|
|
12
25
|
|
|
13
26
|
const onChange = React.useCallback((e) => {
|
|
14
27
|
e.preventDefault();
|
|
15
|
-
const {context: { componentParent: {onCheckboxChange} = {}} = {}} = props || {};
|
|
16
|
-
if (onCheckboxChange)
|
|
28
|
+
const { context: { componentParent: { onCheckboxChange } = {} } = {} } = props || {};
|
|
29
|
+
if (onCheckboxChange) {
|
|
17
30
|
onCheckboxChange(props);
|
|
31
|
+
}
|
|
18
32
|
}, [props]);
|
|
19
33
|
|
|
20
34
|
const visibleCondition = React.useMemo(() =>
|
|
@@ -27,17 +41,16 @@ function CheckboxRenderer(props) {
|
|
|
27
41
|
return !newItem && (showOnGroup || !!data) && visibleCondition;
|
|
28
42
|
}, [data, showOnGroup, visibleCondition]);
|
|
29
43
|
|
|
30
|
-
if (!showCondition) return
|
|
31
|
-
|
|
32
|
-
if (value === undefined) {
|
|
33
|
-
return <div />
|
|
34
|
-
}
|
|
44
|
+
if (!showCondition) return null;
|
|
45
|
+
if (value === undefined) return null;
|
|
35
46
|
|
|
36
47
|
return (
|
|
37
48
|
<div style={CONTAINER_STYLE}>
|
|
38
|
-
<
|
|
49
|
+
<CheckboxElement checked={value} onChange={onChange} />
|
|
39
50
|
</div>
|
|
40
51
|
);
|
|
41
52
|
}
|
|
42
53
|
|
|
54
|
+
CheckboxRenderer.displayName = 'CheckboxRenderer';
|
|
55
|
+
|
|
43
56
|
export default React.memo(CheckboxRenderer);
|
|
@@ -1,8 +1,55 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
|
|
3
3
|
// Style constants
|
|
4
|
-
const
|
|
5
|
-
|
|
4
|
+
const CONTAINER_STYLE = {
|
|
5
|
+
display: 'flex',
|
|
6
|
+
alignItems: 'center',
|
|
7
|
+
height: '100%',
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
const FLAG_WRAPPER_STYLE = {
|
|
11
|
+
marginLeft: 10,
|
|
12
|
+
marginRight: 10,
|
|
13
|
+
display: 'inline-flex',
|
|
14
|
+
alignItems: 'center',
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
const IMG_STYLE = {
|
|
18
|
+
marginTop: -5,
|
|
19
|
+
objectFit: 'contain',
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
// Memoizovaná CountryFlag sub-komponenta
|
|
23
|
+
const CountryFlag = React.memo(({ code, size = 16 }) => {
|
|
24
|
+
const [hasError, setHasError] = React.useState(false);
|
|
25
|
+
|
|
26
|
+
const imageUrl = React.useMemo(() => {
|
|
27
|
+
if (!code) return "";
|
|
28
|
+
return `https://rhplus.blob.core.windows.net/countries/${code.toUpperCase()}.png`;
|
|
29
|
+
}, [code]);
|
|
30
|
+
|
|
31
|
+
const handleError = React.useCallback(() => {
|
|
32
|
+
setHasError(true);
|
|
33
|
+
}, []);
|
|
34
|
+
|
|
35
|
+
React.useEffect(() => {
|
|
36
|
+
setHasError(false);
|
|
37
|
+
}, [imageUrl]);
|
|
38
|
+
|
|
39
|
+
if (hasError || !imageUrl) return null;
|
|
40
|
+
|
|
41
|
+
return (
|
|
42
|
+
<img
|
|
43
|
+
alt="country flag"
|
|
44
|
+
style={{ ...IMG_STYLE, width: size, height: size }}
|
|
45
|
+
src={imageUrl}
|
|
46
|
+
loading="lazy"
|
|
47
|
+
onError={handleError}
|
|
48
|
+
/>
|
|
49
|
+
);
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
CountryFlag.displayName = 'CountryFlag';
|
|
6
53
|
|
|
7
54
|
function SimpleCountryCellRenderer(params) {
|
|
8
55
|
const {
|
|
@@ -14,31 +61,32 @@ function SimpleCountryCellRenderer(params) {
|
|
|
14
61
|
} = {},
|
|
15
62
|
} = {},
|
|
16
63
|
} = params;
|
|
17
|
-
const {id, name, code} = value;
|
|
64
|
+
const { id, name, code } = value;
|
|
18
65
|
|
|
19
|
-
|
|
66
|
+
// Memoizovaná visibleCondition
|
|
67
|
+
const visibleCondition = React.useMemo(() =>
|
|
68
|
+
condition ? condition(data) : true,
|
|
69
|
+
[condition, data]
|
|
70
|
+
);
|
|
20
71
|
|
|
21
72
|
const showCondition = React.useMemo(() => {
|
|
22
73
|
const newItem = (data && data._rh_plus_ag_grid_new_item) || false;
|
|
23
74
|
return !newItem && (showOnGroup || !!data) && visibleCondition;
|
|
24
75
|
}, [data, showOnGroup, visibleCondition]);
|
|
25
76
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
return `https://rhplus.blob.core.windows.net/countries/${code.toUpperCase()}.png`;
|
|
29
|
-
}, [code]);
|
|
30
|
-
|
|
31
|
-
if (!showCondition) return <div />;
|
|
32
|
-
if (!id || !code) return <div />;
|
|
77
|
+
if (!showCondition) return null;
|
|
78
|
+
if (!id || !code) return null;
|
|
33
79
|
|
|
34
80
|
return (
|
|
35
|
-
<div>
|
|
36
|
-
<span style={
|
|
37
|
-
<
|
|
81
|
+
<div style={CONTAINER_STYLE}>
|
|
82
|
+
<span style={FLAG_WRAPPER_STYLE}>
|
|
83
|
+
<CountryFlag code={code} size={16} />
|
|
38
84
|
</span>
|
|
39
85
|
{name}
|
|
40
86
|
</div>
|
|
41
87
|
);
|
|
42
88
|
}
|
|
43
89
|
|
|
90
|
+
SimpleCountryCellRenderer.displayName = 'SimpleCountryCellRenderer';
|
|
91
|
+
|
|
44
92
|
export default React.memo(SimpleCountryCellRenderer);
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
|
|
4
|
+
// Style constants
|
|
5
|
+
const CONTAINER_STYLE = {
|
|
6
|
+
width: '100%',
|
|
7
|
+
height: '100%',
|
|
8
|
+
display: 'flex',
|
|
9
|
+
alignItems: 'center',
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
const DEFAULT_LINK_STYLE = {
|
|
13
|
+
color: '#1a73e8',
|
|
14
|
+
textDecoration: 'none',
|
|
15
|
+
cursor: 'pointer',
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
const DEFAULT_HOVER_STYLE = {
|
|
19
|
+
textDecoration: 'underline',
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
function LinkRenderer(props) {
|
|
23
|
+
const {
|
|
24
|
+
value,
|
|
25
|
+
data,
|
|
26
|
+
colDef: { linkRendererParams = {} } = {},
|
|
27
|
+
} = props;
|
|
28
|
+
|
|
29
|
+
const {
|
|
30
|
+
onClick,
|
|
31
|
+
linkStyle,
|
|
32
|
+
hoverStyle,
|
|
33
|
+
overviewToggle = false,
|
|
34
|
+
showOnGroup = false,
|
|
35
|
+
visibleGetter,
|
|
36
|
+
} = linkRendererParams;
|
|
37
|
+
|
|
38
|
+
const [isHovered, setIsHovered] = React.useState(false);
|
|
39
|
+
|
|
40
|
+
const handleMouseEnter = React.useCallback(() => {
|
|
41
|
+
setIsHovered(true);
|
|
42
|
+
}, []);
|
|
43
|
+
|
|
44
|
+
const handleMouseLeave = React.useCallback(() => {
|
|
45
|
+
setIsHovered(false);
|
|
46
|
+
}, []);
|
|
47
|
+
|
|
48
|
+
const handleClick = React.useCallback(
|
|
49
|
+
(event) => {
|
|
50
|
+
event.stopPropagation();
|
|
51
|
+
|
|
52
|
+
if (overviewToggle && props.api) {
|
|
53
|
+
props.api.dispatchEvent({
|
|
54
|
+
type: 'overviewToggle',
|
|
55
|
+
data: props.data,
|
|
56
|
+
params: props,
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
if (onClick) {
|
|
61
|
+
onClick(props);
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
[onClick, overviewToggle, props]
|
|
65
|
+
);
|
|
66
|
+
|
|
67
|
+
const handleKeyPress = React.useCallback(
|
|
68
|
+
(event) => {
|
|
69
|
+
if (event.key === 'Enter' || event.key === ' ') {
|
|
70
|
+
handleClick(event);
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
[handleClick]
|
|
74
|
+
);
|
|
75
|
+
|
|
76
|
+
const visibleResult = React.useMemo(() =>
|
|
77
|
+
visibleGetter ? visibleGetter(data) : true,
|
|
78
|
+
[visibleGetter, data]
|
|
79
|
+
);
|
|
80
|
+
|
|
81
|
+
const showCondition = React.useMemo(() => {
|
|
82
|
+
const newItem = (data && data._rh_plus_ag_grid_new_item) || false;
|
|
83
|
+
return !newItem && (showOnGroup || !!data) && visibleResult;
|
|
84
|
+
}, [data, showOnGroup, visibleResult]);
|
|
85
|
+
|
|
86
|
+
const computedLinkStyle = React.useMemo(() => ({
|
|
87
|
+
...DEFAULT_LINK_STYLE,
|
|
88
|
+
...(typeof linkStyle === 'function'
|
|
89
|
+
? linkStyle(props)
|
|
90
|
+
: linkStyle || {}),
|
|
91
|
+
}), [linkStyle, props]);
|
|
92
|
+
|
|
93
|
+
const computedHoverStyle = React.useMemo(() => ({
|
|
94
|
+
...DEFAULT_LINK_STYLE,
|
|
95
|
+
...computedLinkStyle,
|
|
96
|
+
...DEFAULT_HOVER_STYLE,
|
|
97
|
+
...(typeof hoverStyle === 'function'
|
|
98
|
+
? hoverStyle(props)
|
|
99
|
+
: hoverStyle || {}),
|
|
100
|
+
}), [computedLinkStyle, hoverStyle, props]);
|
|
101
|
+
|
|
102
|
+
if (!showCondition || !value) return null;
|
|
103
|
+
|
|
104
|
+
return (
|
|
105
|
+
<div className="link-cell-container" style={CONTAINER_STYLE}>
|
|
106
|
+
<span
|
|
107
|
+
onClick={handleClick}
|
|
108
|
+
onMouseEnter={handleMouseEnter}
|
|
109
|
+
onMouseLeave={handleMouseLeave}
|
|
110
|
+
onKeyPress={handleKeyPress}
|
|
111
|
+
style={isHovered ? computedHoverStyle : computedLinkStyle}
|
|
112
|
+
role="button"
|
|
113
|
+
tabIndex={0}
|
|
114
|
+
>
|
|
115
|
+
{value}
|
|
116
|
+
</span>
|
|
117
|
+
</div>
|
|
118
|
+
);
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
LinkRenderer.displayName = 'LinkRenderer';
|
|
122
|
+
|
|
123
|
+
export default React.memo(LinkRenderer);
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
|
|
4
|
+
// Style constants
|
|
5
|
+
const CONTAINER_STYLE = {
|
|
6
|
+
position: 'relative',
|
|
7
|
+
width: '100%',
|
|
8
|
+
height: '100%',
|
|
9
|
+
display: 'flex',
|
|
10
|
+
alignItems: 'center',
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
const CONTENT_STYLE = {
|
|
14
|
+
flexGrow: 1,
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
const BUTTON_STYLE = {
|
|
18
|
+
position: 'absolute',
|
|
19
|
+
right: '4px',
|
|
20
|
+
background: 'transparent',
|
|
21
|
+
border: 'none',
|
|
22
|
+
cursor: 'pointer',
|
|
23
|
+
padding: '4px',
|
|
24
|
+
display: 'flex',
|
|
25
|
+
alignItems: 'center',
|
|
26
|
+
justifyContent: 'center',
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
const BUTTON_ICON_STYLE = {
|
|
30
|
+
fontSize: '16px',
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
// Memoizovaný EditButton sub-komponenta
|
|
34
|
+
const EditButton = React.memo(({ onClick, title = 'Upravit' }) => (
|
|
35
|
+
<button
|
|
36
|
+
className="edit-object-button"
|
|
37
|
+
style={BUTTON_STYLE}
|
|
38
|
+
onClick={onClick}
|
|
39
|
+
title={title}
|
|
40
|
+
>
|
|
41
|
+
<span style={BUTTON_ICON_STYLE}>⋮</span>
|
|
42
|
+
</button>
|
|
43
|
+
));
|
|
44
|
+
|
|
45
|
+
EditButton.displayName = 'EditButton';
|
|
46
|
+
|
|
47
|
+
function ObjectRenderer(props) {
|
|
48
|
+
const {
|
|
49
|
+
value,
|
|
50
|
+
data,
|
|
51
|
+
colDef: { objectRendererParams = {} } = {},
|
|
52
|
+
} = props;
|
|
53
|
+
|
|
54
|
+
const {
|
|
55
|
+
editable = false,
|
|
56
|
+
onEditClick,
|
|
57
|
+
showOnGroup = false,
|
|
58
|
+
visibleGetter,
|
|
59
|
+
displayField,
|
|
60
|
+
} = objectRendererParams;
|
|
61
|
+
|
|
62
|
+
const [isHovered, setIsHovered] = React.useState(false);
|
|
63
|
+
|
|
64
|
+
const handleMouseEnter = React.useCallback(() => {
|
|
65
|
+
setIsHovered(true);
|
|
66
|
+
}, []);
|
|
67
|
+
|
|
68
|
+
const handleMouseLeave = React.useCallback(() => {
|
|
69
|
+
setIsHovered(false);
|
|
70
|
+
}, []);
|
|
71
|
+
|
|
72
|
+
const handleEditClick = React.useCallback(
|
|
73
|
+
(event) => {
|
|
74
|
+
event.stopPropagation();
|
|
75
|
+
if (onEditClick) {
|
|
76
|
+
onEditClick(props);
|
|
77
|
+
}
|
|
78
|
+
},
|
|
79
|
+
[onEditClick, props]
|
|
80
|
+
);
|
|
81
|
+
|
|
82
|
+
const visibleResult = React.useMemo(() =>
|
|
83
|
+
visibleGetter ? visibleGetter(data) : true,
|
|
84
|
+
[visibleGetter, data]
|
|
85
|
+
);
|
|
86
|
+
|
|
87
|
+
const showCondition = React.useMemo(() => {
|
|
88
|
+
const newItem = (data && data._rh_plus_ag_grid_new_item) || false;
|
|
89
|
+
return !newItem && (showOnGroup || !!data) && visibleResult;
|
|
90
|
+
}, [data, showOnGroup, visibleResult]);
|
|
91
|
+
|
|
92
|
+
const displayValue = React.useMemo(() => {
|
|
93
|
+
if (!value) return null;
|
|
94
|
+
|
|
95
|
+
if (displayField) {
|
|
96
|
+
if (typeof displayField === 'function') {
|
|
97
|
+
return displayField({ data, value, props });
|
|
98
|
+
}
|
|
99
|
+
if (typeof displayField === 'string') {
|
|
100
|
+
return value[displayField] || value;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
if (typeof value === 'object' && value !== null) {
|
|
105
|
+
return value.name || value.title || value.label || JSON.stringify(value);
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
return value;
|
|
109
|
+
}, [value, displayField, data, props]);
|
|
110
|
+
|
|
111
|
+
if (!showCondition) return null;
|
|
112
|
+
|
|
113
|
+
return (
|
|
114
|
+
<div
|
|
115
|
+
className="object-cell-container"
|
|
116
|
+
style={CONTAINER_STYLE}
|
|
117
|
+
onMouseEnter={handleMouseEnter}
|
|
118
|
+
onMouseLeave={handleMouseLeave}
|
|
119
|
+
>
|
|
120
|
+
<div style={CONTENT_STYLE}>{displayValue}</div>
|
|
121
|
+
{isHovered && editable && (
|
|
122
|
+
<EditButton onClick={handleEditClick} />
|
|
123
|
+
)}
|
|
124
|
+
</div>
|
|
125
|
+
);
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
ObjectRenderer.displayName = 'ObjectRenderer';
|
|
129
|
+
|
|
130
|
+
export default React.memo(ObjectRenderer);
|
|
@@ -1,17 +1,74 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
// Style konstanty mimo komponentu
|
|
4
|
+
const CONTAINER_STYLE = {
|
|
5
|
+
display: 'flex',
|
|
6
|
+
alignItems: 'center',
|
|
7
|
+
height: '100%',
|
|
8
|
+
};
|
|
5
9
|
|
|
6
|
-
|
|
7
|
-
|
|
10
|
+
function SelectRenderer(props) {
|
|
11
|
+
const { data, value, colDef: { selectRendererParams = {} } = {} } = props;
|
|
8
12
|
|
|
9
|
-
//
|
|
13
|
+
// Extrakce parametrů
|
|
14
|
+
const {
|
|
15
|
+
cellAlign = 'left',
|
|
16
|
+
visibleGetter,
|
|
17
|
+
showOnGroup = false,
|
|
18
|
+
displayField = 'name', // Které pole zobrazit z objektu
|
|
19
|
+
} = selectRendererParams;
|
|
10
20
|
|
|
11
|
-
//
|
|
12
|
-
|
|
21
|
+
// Memoizovaný displayValue
|
|
22
|
+
const displayValue = React.useMemo(() => {
|
|
23
|
+
if (!value) return null;
|
|
13
24
|
|
|
14
|
-
|
|
25
|
+
// Pokud je displayField funkce
|
|
26
|
+
if (typeof displayField === 'function') {
|
|
27
|
+
return displayField({ data, value, props });
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
// Pokud je displayField string (název pole)
|
|
31
|
+
if (typeof displayField === 'string') {
|
|
32
|
+
return value[displayField] || value;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
// Fallback - pokud value je string, vrať ho přímo
|
|
36
|
+
if (typeof value === 'string') {
|
|
37
|
+
return value;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
return null;
|
|
41
|
+
}, [value, displayField, data, props]);
|
|
42
|
+
|
|
43
|
+
// Memoizovaná viditelnost
|
|
44
|
+
const visibleResult = React.useMemo(() =>
|
|
45
|
+
visibleGetter ? visibleGetter(data) : true,
|
|
46
|
+
[visibleGetter, data]
|
|
47
|
+
);
|
|
48
|
+
|
|
49
|
+
const showCondition = React.useMemo(() => {
|
|
50
|
+
const newItem = (data && data._rh_plus_ag_grid_new_item) || false;
|
|
51
|
+
return !newItem && (showOnGroup || !!data) && visibleResult;
|
|
52
|
+
}, [data, showOnGroup, visibleResult]);
|
|
53
|
+
|
|
54
|
+
// Container style s alignmentem
|
|
55
|
+
const containerStyle = React.useMemo(() => ({
|
|
56
|
+
...CONTAINER_STYLE,
|
|
57
|
+
justifyContent:
|
|
58
|
+
cellAlign === 'center' ? 'center' :
|
|
59
|
+
cellAlign === 'right' ? 'flex-end' :
|
|
60
|
+
'flex-start',
|
|
61
|
+
}), [cellAlign]);
|
|
62
|
+
|
|
63
|
+
if (!showCondition || !displayValue) return null;
|
|
64
|
+
|
|
65
|
+
return (
|
|
66
|
+
<div style={containerStyle}>
|
|
67
|
+
{displayValue}
|
|
68
|
+
</div>
|
|
69
|
+
);
|
|
15
70
|
}
|
|
16
71
|
|
|
72
|
+
SelectRenderer.displayName = 'SelectRenderer';
|
|
73
|
+
|
|
17
74
|
export default React.memo(SelectRenderer);
|
package/dist/AgGridColumn.js
CHANGED
|
@@ -12,16 +12,46 @@ export const AgGridColumn = (column, options) => {
|
|
|
12
12
|
if (column.dateRenderer) {
|
|
13
13
|
column.cellRenderer = (data) => (data.value && moment(data.value).format(column.dateRenderer)) || "";
|
|
14
14
|
}
|
|
15
|
-
if (column.booleanRenderer)
|
|
15
|
+
if (column.booleanRenderer) {
|
|
16
16
|
column.cellRenderer = "booleanRenderer";
|
|
17
|
-
|
|
17
|
+
// AG-Grid deferRender: odkládá rendering během scrollování pro lepší výkon
|
|
18
|
+
column.cellRendererParams = {
|
|
19
|
+
...column.booleanRendererParams,
|
|
20
|
+
deferRender: true
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
if (column.iconRenderer) {
|
|
18
24
|
column.cellRenderer = "iconRenderer";
|
|
19
|
-
|
|
25
|
+
// AG-Grid deferRender: odkládá rendering během scrollování pro lepší výkon
|
|
26
|
+
column.cellRendererParams = {
|
|
27
|
+
...column.iconRendererParams,
|
|
28
|
+
deferRender: true
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
if (column.imageRenderer) {
|
|
20
32
|
column.cellRenderer = "imageRenderer";
|
|
21
|
-
|
|
33
|
+
// AG-Grid deferRender: odkládá rendering během scrollování pro lepší výkon
|
|
34
|
+
column.cellRendererParams = {
|
|
35
|
+
...column.imageRendererParams,
|
|
36
|
+
deferRender: true
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
if (column.stateRenderer) {
|
|
22
40
|
column.cellRenderer = "stateRenderer";
|
|
23
|
-
|
|
41
|
+
// AG-Grid deferRender: odkládá rendering během scrollování pro lepší výkon
|
|
42
|
+
column.cellRendererParams = {
|
|
43
|
+
...column.stateRendererParams,
|
|
44
|
+
deferRender: true
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
if (column.buttonRenderer) {
|
|
24
48
|
column.cellRenderer = "buttonRenderer";
|
|
49
|
+
// AG-Grid deferRender: odkládá rendering během scrollování pro lepší výkon
|
|
50
|
+
column.cellRendererParams = {
|
|
51
|
+
...column.buttonRendererParams,
|
|
52
|
+
deferRender: true
|
|
53
|
+
};
|
|
54
|
+
}
|
|
25
55
|
if (column.headerHtmlText) {
|
|
26
56
|
column.headerComponentParams = {
|
|
27
57
|
template: CommonHeaderTemplate(column.headerHtmlText),
|
package/dist/AgGridColumn.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgGridColumn.js","sourceRoot":"","sources":["../AgGridColumn.js"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,GAAG,MAAM,YAAY,CAAC;AAC7B,OAAO,GAAG,MAAM,YAAY,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EACL,qBAAqB,EACrB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,EAAE;IACjC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;AACpC,CAAC,CAAC;AAEF,sCAAsC;AACtC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;IAE9C,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;QACxB,MAAM,CAAC,YAAY,GAAG,CAAC,IAAI,EAAE,EAAE,CAC7B,CAAC,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC;IACzE,CAAC;IAED,IAAI,MAAM,CAAC,eAAe;
|
|
1
|
+
{"version":3,"file":"AgGridColumn.js","sourceRoot":"","sources":["../AgGridColumn.js"],"names":[],"mappings":"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"}
|
|
@@ -53,5 +53,6 @@ function ButtonRenderer(props) {
|
|
|
53
53
|
}), [isEmptyValue]);
|
|
54
54
|
return (_jsxs("div", { className: "custom-cell-renderer", onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, style: containerStyle, children: [!isEmptyValue && _jsx("span", { style: SPAN_STYLE, children: value }), visible && hovered && buttons.length > 0 && (isEmptyValue ? (_jsx("div", { style: LARGE_CONTAINER_STYLE, children: buttons.map((button, index) => (_jsx(LargeButton, { button: button, onClick: onClick, props: props }, index))) })) : (_jsx("div", { style: SMALL_CONTAINER_STYLE, children: buttons.map((button, index) => (_jsx(SmallButton, { button: button, onClick: onClick, props: props }, index))) })))] }));
|
|
55
55
|
}
|
|
56
|
+
ButtonRenderer.displayName = 'ButtonRenderer';
|
|
56
57
|
export default React.memo(ButtonRenderer);
|
|
57
58
|
//# sourceMappingURL=ButtonRenderer.js.map
|