@bit.rhplus/ag-grid 0.0.114 → 0.0.116

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 (163) hide show
  1. package/AgGridOnRowDataChanged.js +3 -8
  2. package/CheckBoxRenderer.jsx +1 -0
  3. package/Components/ExtendButton.jsx +1 -0
  4. package/Editors/ModuleLookupEditor.jsx +65 -0
  5. package/Editors/index.jsx +1 -0
  6. package/Renderers/CheckboxRenderer.jsx +1 -0
  7. package/Renderers/CountrySelectRenderer.jsx +1 -0
  8. package/Renderers/ModuleLookupRenderer.jsx +40 -0
  9. package/Renderers/SelectCellRenderer.jsx +1 -0
  10. package/Renderers/index.jsx +1 -0
  11. package/dist/AgGridAddNewItem.d.ts +1 -0
  12. package/dist/AgGridAddNewItem.js +6 -0
  13. package/dist/AgGridAddNewItem.js.map +1 -0
  14. package/dist/AgGridColumn.d.ts +3 -0
  15. package/dist/AgGridColumn.js +357 -0
  16. package/dist/AgGridColumn.js.map +1 -0
  17. package/dist/AgGridColumnFilter.d.ts +4 -0
  18. package/dist/AgGridColumnFilter.js +19 -0
  19. package/dist/AgGridColumnFilter.js.map +1 -0
  20. package/dist/AgGridOnGridReady.d.ts +1 -0
  21. package/dist/AgGridOnGridReady.js +6 -0
  22. package/dist/AgGridOnGridReady.js.map +1 -0
  23. package/dist/AgGridOnRowDataChanged.d.ts +1 -0
  24. package/dist/AgGridOnRowDataChanged.js +4 -0
  25. package/dist/AgGridOnRowDataChanged.js.map +1 -0
  26. package/dist/AgGridOnRowDataUpdated.d.ts +1 -0
  27. package/dist/AgGridOnRowDataUpdated.js +27 -0
  28. package/dist/AgGridOnRowDataUpdated.js.map +1 -0
  29. package/dist/AgGridPostSort.d.ts +1 -0
  30. package/dist/AgGridPostSort.js +32 -0
  31. package/dist/AgGridPostSort.js.map +1 -0
  32. package/dist/AggregationNotification.d.ts +1 -0
  33. package/dist/AggregationNotification.js +121 -0
  34. package/dist/AggregationNotification.js.map +1 -0
  35. package/dist/AggregationStatusBar.d.ts +3 -0
  36. package/dist/AggregationStatusBar.js +122 -0
  37. package/dist/AggregationStatusBar.js.map +1 -0
  38. package/dist/Aggregations.d.ts +2 -0
  39. package/dist/Aggregations.js +313 -0
  40. package/dist/Aggregations.js.map +1 -0
  41. package/dist/BulkEdit/BulkEditButton.d.ts +14 -0
  42. package/dist/BulkEdit/BulkEditButton.js +140 -0
  43. package/dist/BulkEdit/BulkEditButton.js.map +1 -0
  44. package/dist/BulkEdit/BulkEditDatePicker.d.ts +11 -0
  45. package/dist/BulkEdit/BulkEditDatePicker.js +160 -0
  46. package/dist/BulkEdit/BulkEditDatePicker.js.map +1 -0
  47. package/dist/BulkEdit/BulkEditInput.d.ts +14 -0
  48. package/dist/BulkEdit/BulkEditInput.js +34 -0
  49. package/dist/BulkEdit/BulkEditInput.js.map +1 -0
  50. package/dist/BulkEdit/BulkEditModule.d.ts +11 -0
  51. package/dist/BulkEdit/BulkEditModule.js +34 -0
  52. package/dist/BulkEdit/BulkEditModule.js.map +1 -0
  53. package/dist/BulkEdit/BulkEditPopover.d.ts +14 -0
  54. package/dist/BulkEdit/BulkEditPopover.js +125 -0
  55. package/dist/BulkEdit/BulkEditPopover.js.map +1 -0
  56. package/dist/BulkEdit/BulkEditSelect.d.ts +18 -0
  57. package/dist/BulkEdit/BulkEditSelect.js +56 -0
  58. package/dist/BulkEdit/BulkEditSelect.js.map +1 -0
  59. package/dist/BulkEdit/BulkEditTagsSelect.d.ts +15 -0
  60. package/dist/BulkEdit/BulkEditTagsSelect.js +45 -0
  61. package/dist/BulkEdit/BulkEditTagsSelect.js.map +1 -0
  62. package/dist/BulkEdit/index.d.ts +1 -0
  63. package/dist/BulkEdit/index.js +11 -0
  64. package/dist/BulkEdit/index.js.map +1 -0
  65. package/dist/BulkEdit/useBulkCellEdit.d.ts +1 -0
  66. package/dist/BulkEdit/useBulkCellEdit.js +397 -0
  67. package/dist/BulkEdit/useBulkCellEdit.js.map +1 -0
  68. package/dist/BulkEdit/utils.d.ts +7 -0
  69. package/dist/BulkEdit/utils.js +568 -0
  70. package/dist/BulkEdit/utils.js.map +1 -0
  71. package/dist/CheckBoxRenderer.d.ts +6 -0
  72. package/dist/CheckBoxRenderer.js +19 -0
  73. package/dist/CheckBoxRenderer.js.map +1 -0
  74. package/dist/Components/ExtendButton.css +6 -0
  75. package/dist/Components/ExtendButton.d.ts +2 -0
  76. package/dist/Components/ExtendButton.js +13 -0
  77. package/dist/Components/ExtendButton.js.map +1 -0
  78. package/dist/CountryCellRenderer.d.ts +1 -0
  79. package/dist/CountryCellRenderer.js +12 -0
  80. package/dist/CountryCellRenderer.js.map +1 -0
  81. package/dist/Editors/DatePickerEditor.d.ts +9 -0
  82. package/dist/Editors/DatePickerEditor.js +55 -0
  83. package/dist/Editors/DatePickerEditor.js.map +1 -0
  84. package/dist/Editors/ModuleLookupEditor.d.ts +8 -0
  85. package/dist/Editors/ModuleLookupEditor.js +43 -0
  86. package/dist/Editors/ModuleLookupEditor.js.map +1 -0
  87. package/dist/Editors/index.d.ts +1 -0
  88. package/dist/Editors/index.js +3 -0
  89. package/dist/Editors/index.js.map +1 -0
  90. package/dist/Functions/index.d.ts +2 -0
  91. package/dist/Functions/index.js +27 -0
  92. package/dist/Functions/index.js.map +1 -0
  93. package/dist/HeaderTemplates/CommonHeaderTemplate.d.ts +1 -0
  94. package/dist/HeaderTemplates/CommonHeaderTemplate.js +15 -0
  95. package/dist/HeaderTemplates/CommonHeaderTemplate.js.map +1 -0
  96. package/dist/HyperModuleEditor.d.ts +1 -0
  97. package/dist/HyperModuleEditor.js +119 -0
  98. package/dist/HyperModuleEditor.js.map +1 -0
  99. package/dist/HyperModuleRenderer.d.ts +1 -0
  100. package/dist/HyperModuleRenderer.js +138 -0
  101. package/dist/HyperModuleRenderer.js.map +1 -0
  102. package/dist/NotificationOptions.d.ts +10 -0
  103. package/dist/NotificationOptions.js +80 -0
  104. package/dist/NotificationOptions.js.map +1 -0
  105. package/dist/OnCellDoubleClicked.d.ts +1 -0
  106. package/dist/OnCellDoubleClicked.js +6 -0
  107. package/dist/OnCellDoubleClicked.js.map +1 -0
  108. package/dist/OnCellEditingStarted.d.ts +1 -0
  109. package/dist/OnCellEditingStarted.js +7 -0
  110. package/dist/OnCellEditingStarted.js.map +1 -0
  111. package/dist/OnCellValueChanged.d.ts +1 -0
  112. package/dist/OnCellValueChanged.js +10 -0
  113. package/dist/OnCellValueChanged.js.map +1 -0
  114. package/dist/Renderers/BooleanRenderer.d.ts +3 -0
  115. package/dist/Renderers/BooleanRenderer.js +55 -0
  116. package/dist/Renderers/BooleanRenderer.js.map +1 -0
  117. package/dist/Renderers/ButtonRenderer.d.ts +3 -0
  118. package/dist/Renderers/ButtonRenderer.js +66 -0
  119. package/dist/Renderers/ButtonRenderer.js.map +1 -0
  120. package/dist/Renderers/CheckboxRenderer.d.ts +7 -0
  121. package/dist/Renderers/CheckboxRenderer.js +37 -0
  122. package/dist/Renderers/CheckboxRenderer.js.map +1 -0
  123. package/dist/Renderers/CountrySelectRenderer.d.ts +7 -0
  124. package/dist/Renderers/CountrySelectRenderer.js +56 -0
  125. package/dist/Renderers/CountrySelectRenderer.js.map +1 -0
  126. package/dist/Renderers/IconRenderer.d.ts +3 -0
  127. package/dist/Renderers/IconRenderer.js +187 -0
  128. package/dist/Renderers/IconRenderer.js.map +1 -0
  129. package/dist/Renderers/ImageRenderer.d.ts +3 -0
  130. package/dist/Renderers/ImageRenderer.js +58 -0
  131. package/dist/Renderers/ImageRenderer.js.map +1 -0
  132. package/dist/Renderers/LinkRenderer.d.ts +3 -0
  133. package/dist/Renderers/LinkRenderer.js +76 -0
  134. package/dist/Renderers/LinkRenderer.js.map +1 -0
  135. package/dist/Renderers/ModuleLookupRenderer.d.ts +3 -0
  136. package/dist/Renderers/ModuleLookupRenderer.js +28 -0
  137. package/dist/Renderers/ModuleLookupRenderer.js.map +1 -0
  138. package/dist/Renderers/ObjectRenderer.d.ts +3 -0
  139. package/dist/Renderers/ObjectRenderer.js +96 -0
  140. package/dist/Renderers/ObjectRenderer.js.map +1 -0
  141. package/dist/Renderers/SelectCellRenderer.d.ts +4 -0
  142. package/dist/Renderers/SelectCellRenderer.js +19 -0
  143. package/dist/Renderers/SelectCellRenderer.js.map +1 -0
  144. package/dist/Renderers/SelectRenderer.d.ts +3 -0
  145. package/dist/Renderers/SelectRenderer.js +56 -0
  146. package/dist/Renderers/SelectRenderer.js.map +1 -0
  147. package/dist/Renderers/StateRenderer.d.ts +3 -0
  148. package/dist/Renderers/StateRenderer.js +137 -0
  149. package/dist/Renderers/StateRenderer.js.map +1 -0
  150. package/dist/Renderers/index.d.ts +1 -0
  151. package/dist/Renderers/index.js +3 -0
  152. package/dist/Renderers/index.js.map +1 -0
  153. package/dist/index.d.ts +3 -0
  154. package/dist/index.js +868 -0
  155. package/dist/index.js.map +1 -0
  156. package/dist/preview-1773828129212.js +7 -0
  157. package/dist/util.d.ts +15 -0
  158. package/dist/util.js +108 -0
  159. package/dist/util.js.map +1 -0
  160. package/package.json +5 -5
  161. package/types/asset.d.ts +43 -0
  162. package/types/env.d.ts +15 -0
  163. package/types/style.d.ts +42 -0
@@ -0,0 +1,76 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ /* eslint-disable */
3
+ import * as React from 'react';
4
+ import { createMemoComparison } from '@bit.rhplus/react-memo';
5
+ // Style constants
6
+ const CONTAINER_STYLE = {
7
+ width: '100%',
8
+ height: '100%',
9
+ display: 'flex',
10
+ alignItems: 'center',
11
+ };
12
+ const DEFAULT_LINK_STYLE = {
13
+ color: '#1a73e8',
14
+ textDecoration: 'none',
15
+ cursor: 'pointer',
16
+ };
17
+ const DEFAULT_HOVER_STYLE = {
18
+ textDecoration: 'underline',
19
+ };
20
+ function LinkRenderer(props) {
21
+ const { value, data, colDef: { linkRendererParams = {} } = {}, } = props;
22
+ const { onClick, linkStyle, hoverStyle, overviewToggle = false, showOnGroup = false, visibleGetter, } = linkRendererParams;
23
+ const [isHovered, setIsHovered] = React.useState(false);
24
+ const handleMouseEnter = React.useCallback(() => {
25
+ setIsHovered(true);
26
+ }, []);
27
+ const handleMouseLeave = React.useCallback(() => {
28
+ setIsHovered(false);
29
+ }, []);
30
+ const handleClick = React.useCallback((event) => {
31
+ event.stopPropagation();
32
+ if (overviewToggle && props.api) {
33
+ props.api.dispatchEvent({
34
+ type: 'overviewToggle',
35
+ data: props.data,
36
+ params: props,
37
+ });
38
+ }
39
+ if (onClick) {
40
+ onClick(props);
41
+ }
42
+ }, [onClick, overviewToggle, props]);
43
+ const handleKeyPress = React.useCallback((event) => {
44
+ if (event.key === 'Enter' || event.key === ' ') {
45
+ handleClick(event);
46
+ }
47
+ }, [handleClick]);
48
+ const visibleResult = React.useMemo(() => visibleGetter ? visibleGetter(data) : true, [visibleGetter, data]);
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
+ const computedLinkStyle = React.useMemo(() => ({
54
+ ...DEFAULT_LINK_STYLE,
55
+ ...(typeof linkStyle === 'function'
56
+ ? linkStyle(props)
57
+ : linkStyle || {}),
58
+ }), [linkStyle, props]);
59
+ const computedHoverStyle = React.useMemo(() => ({
60
+ ...DEFAULT_LINK_STYLE,
61
+ ...computedLinkStyle,
62
+ ...DEFAULT_HOVER_STYLE,
63
+ ...(typeof hoverStyle === 'function'
64
+ ? hoverStyle(props)
65
+ : hoverStyle || {}),
66
+ }), [computedLinkStyle, hoverStyle, props]);
67
+ if (!showCondition || !value)
68
+ return null;
69
+ return (_jsx("div", { className: "link-cell-container", style: CONTAINER_STYLE, children: _jsx("span", { onClick: handleClick, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onKeyPress: handleKeyPress, style: isHovered ? computedHoverStyle : computedLinkStyle, role: "button", tabIndex: 0, children: value }) }));
70
+ }
71
+ LinkRenderer.displayName = 'LinkRenderer';
72
+ // React.memo optimalizace pro AG-Grid renderer
73
+ // ✅ PERFORMANCE FIX: colDef NESMÍ být v kritických props!
74
+ const arePropsEqual = createMemoComparison(['value', 'data'], ['colDef'], false, 'LinkRenderer');
75
+ export default React.memo(LinkRenderer, arePropsEqual);
76
+ //# sourceMappingURL=LinkRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LinkRenderer.js","sourceRoot":"","sources":["../../Renderers/LinkRenderer.jsx"],"names":[],"mappings":";AAAA,oBAAoB;AACpB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,kBAAkB;AAClB,MAAM,eAAe,GAAG;IACtB,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,MAAM;IACf,UAAU,EAAE,QAAQ;CACrB,CAAC;AAEF,MAAM,kBAAkB,GAAG;IACzB,KAAK,EAAE,SAAS;IAChB,cAAc,EAAE,MAAM;IACtB,MAAM,EAAE,SAAS;CAClB,CAAC;AAEF,MAAM,mBAAmB,GAAG;IAC1B,cAAc,EAAE,WAAW;CAC5B,CAAC;AAEF,SAAS,YAAY,CAAC,KAAK;IACzB,MAAM,EACJ,KAAK,EACL,IAAI,EACJ,MAAM,EAAE,EAAE,kBAAkB,GAAG,EAAE,EAAE,GAAG,EAAE,GACzC,GAAG,KAAK,CAAC;IAEV,MAAM,EACJ,OAAO,EACP,SAAS,EACT,UAAU,EACV,cAAc,GAAG,KAAK,EACtB,WAAW,GAAG,KAAK,EACnB,aAAa,GACd,GAAG,kBAAkB,CAAC;IAEvB,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAExD,MAAM,gBAAgB,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QAC9C,YAAY,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,gBAAgB,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QAC9C,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CACnC,CAAC,KAAK,EAAE,EAAE;QACR,KAAK,CAAC,eAAe,EAAE,CAAC;QAExB,IAAI,cAAc,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;YAChC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC;gBACtB,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,MAAM,EAAE,KAAK;aACd,CAAC,CAAC;QACL,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC;IACH,CAAC,EACD,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,CAAC,CACjC,CAAC;IAEF,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CACtC,CAAC,KAAK,EAAE,EAAE;QACR,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;YAC/C,WAAW,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;IACH,CAAC,EACD,CAAC,WAAW,CAAC,CACd,CAAC;IAEF,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CACvC,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAC1C,CAAC,aAAa,EAAE,IAAI,CAAC,CACtB,CAAC;IAEF,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACvC,MAAM,OAAO,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,yBAAyB,CAAC,IAAI,KAAK,CAAC;QAClE,OAAO,CAAC,OAAO,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC;IAC9D,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC;IAEvC,MAAM,iBAAiB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAC7C,GAAG,kBAAkB;QACrB,GAAG,CAAC,OAAO,SAAS,KAAK,UAAU;YACjC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC;YAClB,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC;KACrB,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IAExB,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAC9C,GAAG,kBAAkB;QACrB,GAAG,iBAAiB;QACpB,GAAG,mBAAmB;QACtB,GAAG,CAAC,OAAO,UAAU,KAAK,UAAU;YAClC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC;YACnB,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC;KACtB,CAAC,EAAE,CAAC,iBAAiB,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;IAE5C,IAAI,CAAC,aAAa,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAE1C,OAAO,CACL,cAAK,SAAS,EAAC,qBAAqB,EAAC,KAAK,EAAE,eAAe,YACzD,eACE,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,gBAAgB,EAC9B,YAAY,EAAE,gBAAgB,EAC9B,UAAU,EAAE,cAAc,EAC1B,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,iBAAiB,EACzD,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,CAAC,YAEV,KAAK,GACD,GACH,CACP,CAAC;AACJ,CAAC;AAED,YAAY,CAAC,WAAW,GAAG,cAAc,CAAC;AAE1C,+CAA+C;AAC/C,0DAA0D;AAC1D,MAAM,aAAa,GAAG,oBAAoB,CACxC,CAAC,OAAO,EAAE,MAAM,CAAC,EACjB,CAAC,QAAQ,CAAC,EACV,KAAK,EACL,cAAc,CACf,CAAC;AAEF,eAAe,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare const _default: React.NamedExoticComponent<any>;
2
+ export default _default;
3
+ import * as React from 'react';
@@ -0,0 +1,28 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ /* eslint-disable */
3
+ import * as React from 'react';
4
+ import { createMemoComparison } from '@bit.rhplus/react-memo';
5
+ function ModuleLookupRenderer(props) {
6
+ const { value, colDef: { cellRendererParams = {} } = {} } = props;
7
+ const { getDisplayValue } = cellRendererParams;
8
+ const displayText = React.useMemo(() => {
9
+ if (!value)
10
+ return '';
11
+ if (getDisplayValue)
12
+ return getDisplayValue(value);
13
+ return value.code || value.name || '';
14
+ }, [value, getDisplayValue]);
15
+ if (!displayText)
16
+ return null;
17
+ return (_jsx("span", { style: {
18
+ overflow: 'hidden',
19
+ textOverflow: 'ellipsis',
20
+ whiteSpace: 'nowrap',
21
+ display: 'block',
22
+ lineHeight: 'inherit',
23
+ }, children: displayText }));
24
+ }
25
+ ModuleLookupRenderer.displayName = 'ModuleLookupRenderer';
26
+ const arePropsEqual = createMemoComparison(['value', 'data'], ['colDef'], false, 'ModuleLookupRenderer');
27
+ export default React.memo(ModuleLookupRenderer, arePropsEqual);
28
+ //# sourceMappingURL=ModuleLookupRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModuleLookupRenderer.js","sourceRoot":"","sources":["../../Renderers/ModuleLookupRenderer.jsx"],"names":[],"mappings":";AAAA,oBAAoB;AACpB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,SAAS,oBAAoB,CAAC,KAAK;IACjC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,kBAAkB,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,KAAK,CAAC;IAClE,MAAM,EAAE,eAAe,EAAE,GAAG,kBAAkB,CAAC;IAE/C,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACrC,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,CAAC;QACtB,IAAI,eAAe;YAAE,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;QACnD,OAAO,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;IACxC,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC;IAE7B,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAE9B,OAAO,CACL,eAAM,KAAK,EAAE;YACX,QAAQ,EAAE,QAAQ;YAClB,YAAY,EAAE,UAAU;YACxB,UAAU,EAAE,QAAQ;YACpB,OAAO,EAAE,OAAO;YAChB,UAAU,EAAE,SAAS;SACtB,YACE,WAAW,GACP,CACR,CAAC;AACJ,CAAC;AAED,oBAAoB,CAAC,WAAW,GAAG,sBAAsB,CAAC;AAE1D,MAAM,aAAa,GAAG,oBAAoB,CACxC,CAAC,OAAO,EAAE,MAAM,CAAC,EACjB,CAAC,QAAQ,CAAC,EACV,KAAK,EACL,sBAAsB,CACvB,CAAC;AAEF,eAAe,KAAK,CAAC,IAAI,CAAC,oBAAoB,EAAE,aAAa,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare const _default: React.NamedExoticComponent<any>;
2
+ export default _default;
3
+ import * as React from 'react';
@@ -0,0 +1,96 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /* eslint-disable */
3
+ import * as React from 'react';
4
+ import { createMemoComparison } from '@bit.rhplus/react-memo';
5
+ import Avatar from '@bit.rhplus/ui.avatar';
6
+ // Style constants
7
+ const CONTAINER_STYLE = {
8
+ position: 'relative',
9
+ width: '100%',
10
+ height: '100%',
11
+ display: 'flex',
12
+ alignItems: 'center',
13
+ };
14
+ const CONTENT_STYLE = {
15
+ flexGrow: 1,
16
+ overflow: 'hidden',
17
+ textOverflow: 'ellipsis',
18
+ whiteSpace: 'nowrap',
19
+ };
20
+ const AVATAR_STYLE = {
21
+ marginRight: 6,
22
+ flexShrink: 0,
23
+ };
24
+ const BUTTON_STYLE = {
25
+ position: 'absolute',
26
+ right: '4px',
27
+ background: 'transparent',
28
+ border: 'none',
29
+ cursor: 'pointer',
30
+ padding: '4px',
31
+ display: 'flex',
32
+ alignItems: 'center',
33
+ justifyContent: 'center',
34
+ };
35
+ const BUTTON_ICON_STYLE = {
36
+ fontSize: '16px',
37
+ };
38
+ // Memoizovaný EditButton sub-komponenta
39
+ const EditButton = React.memo(({ onClick, title = 'Upravit' }) => (_jsx("button", { className: "edit-object-button", style: BUTTON_STYLE, onClick: onClick, title: title, children: _jsx("span", { style: BUTTON_ICON_STYLE, children: "\u22EE" }) })));
40
+ EditButton.displayName = 'EditButton';
41
+ function ObjectRenderer(props) {
42
+ const { value, data, editable = false, onEditClick, showOnGroup = false, visibleGetter, displayField, currentUserLabel, currentUserField, currentUserKey, showAvatar = false, avatarKeyField, } = props;
43
+ const [isHovered, setIsHovered] = React.useState(false);
44
+ const handleMouseEnter = React.useCallback(() => {
45
+ setIsHovered(true);
46
+ }, []);
47
+ const handleMouseLeave = React.useCallback(() => {
48
+ setIsHovered(false);
49
+ }, []);
50
+ const handleEditClick = React.useCallback((event) => {
51
+ event.stopPropagation();
52
+ if (onEditClick) {
53
+ onEditClick(props);
54
+ }
55
+ }, [onEditClick, props]);
56
+ const visibleResult = React.useMemo(() => visibleGetter ? visibleGetter(data) : true, [visibleGetter, data]);
57
+ const showCondition = React.useMemo(() => {
58
+ const newItem = (data && data._rh_plus_ag_grid_new_item) || false;
59
+ return !newItem && (showOnGroup || !!data) && visibleResult;
60
+ }, [data, showOnGroup, visibleResult]);
61
+ const displayValue = React.useMemo(() => {
62
+ if (!value)
63
+ return null;
64
+ if (displayField) {
65
+ if (typeof displayField === 'function') {
66
+ return displayField({ data, value, props });
67
+ }
68
+ if (typeof displayField === 'string') {
69
+ return value[displayField] || value;
70
+ }
71
+ }
72
+ if (typeof value === 'object' && value !== null) {
73
+ return value.name || value.title || value.label || JSON.stringify(value);
74
+ }
75
+ return value;
76
+ }, [value, displayField, data, props]);
77
+ // Zjistit userKey z dat pro "Já" logiku a avatar
78
+ const userKey = currentUserField && data ? data[currentUserField] : null;
79
+ const avatarKey = avatarKeyField && data ? data[avatarKeyField] : (userKey || null);
80
+ const isCurrentUser = currentUserKey && userKey && currentUserKey === userKey;
81
+ const finalDisplayValue = isCurrentUser && currentUserLabel ? currentUserLabel : displayValue;
82
+ const avatarUrl = React.useMemo(() => {
83
+ if (!showAvatar || !avatarKey)
84
+ return null;
85
+ return `/user_service_api/Users/Avatar?userKey=${avatarKey}`;
86
+ }, [showAvatar, avatarKey]);
87
+ if (!showCondition)
88
+ return null;
89
+ return (_jsxs("div", { className: "object-cell-container", style: CONTAINER_STYLE, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, children: [showAvatar && avatarKey && (_jsx("div", { style: AVATAR_STYLE, children: _jsx(Avatar, { src: avatarUrl, name: String(finalDisplayValue || ''), size: 22, round: true }) })), _jsx("div", { style: CONTENT_STYLE, children: finalDisplayValue }), isHovered && editable && (_jsx(EditButton, { onClick: handleEditClick }))] }));
90
+ }
91
+ ObjectRenderer.displayName = 'ObjectRenderer';
92
+ // React.memo optimalizace pro AG-Grid renderer
93
+ // ✅ PERFORMANCE FIX: colDef NESMÍ být v kritických props!
94
+ const arePropsEqual = createMemoComparison(['value', 'data'], ['colDef'], false, 'ObjectRenderer');
95
+ export default React.memo(ObjectRenderer, arePropsEqual);
96
+ //# sourceMappingURL=ObjectRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObjectRenderer.js","sourceRoot":"","sources":["../../Renderers/ObjectRenderer.jsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ declare function _default({ value }: {
2
+ value: any;
3
+ }): import("react/jsx-runtime").JSX.Element;
4
+ export default _default;
@@ -0,0 +1,19 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /* eslint-disable */
3
+ import React from 'react';
4
+ import * as LucideIcons from 'lucide-react';
5
+ export default ({ value }) => {
6
+ if (value == null)
7
+ return null;
8
+ const { name, icon } = value;
9
+ // Přímý přístup ke komponentě ikony
10
+ const Icon = icon && LucideIcons[icon] ? LucideIcons[icon] : null;
11
+ return (_jsxs("div", { style: {
12
+ display: 'flex',
13
+ alignItems: 'center',
14
+ gap: '8px',
15
+ overflow: 'hidden',
16
+ textOverflow: 'ellipsis'
17
+ }, children: [Icon && (_jsx("span", { style: { flexShrink: 0, display: 'flex', alignItems: 'center' }, children: _jsx(Icon, { size: 16 }) })), _jsx("span", { style: { overflow: 'hidden', textOverflow: 'ellipsis' }, children: name })] }));
18
+ };
19
+ //# sourceMappingURL=SelectCellRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectCellRenderer.js","sourceRoot":"","sources":["../../Renderers/SelectCellRenderer.jsx"],"names":[],"mappings":";AAAA,oBAAoB;AACpB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,WAAW,MAAM,cAAc,CAAC;AAE5C,eAAe,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE;IACvB,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAC/B,MAAM,EAAC,IAAI,EAAE,IAAI,EAAC,GAAG,KAAK,CAAC;IAE3B,oCAAoC;IACpC,MAAM,IAAI,GAAG,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAElE,OAAO,CACH,eAAK,KAAK,EAAE;YACR,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,QAAQ;YACpB,GAAG,EAAE,KAAK;YACV,QAAQ,EAAE,QAAQ;YAClB,YAAY,EAAE,UAAU;SAC3B,aACI,IAAI,IAAI,CACL,eAAM,KAAK,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,YACjE,KAAC,IAAI,IAAC,IAAI,EAAE,EAAE,GAAI,GACf,CACV,EACD,eAAM,KAAK,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,YACxD,IAAI,GACF,IACL,CACT,CAAA;AACL,CAAC,CAAA"}
@@ -0,0 +1,3 @@
1
+ declare const _default: React.NamedExoticComponent<any>;
2
+ export default _default;
3
+ import * as React from 'react';
@@ -0,0 +1,56 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ /* eslint-disable */
3
+ import * as React from 'react';
4
+ import { createMemoComparison } from '@bit.rhplus/react-memo';
5
+ // Style konstanty mimo komponentu
6
+ const CONTAINER_STYLE = {
7
+ display: 'flex',
8
+ alignItems: 'center',
9
+ height: '100%',
10
+ };
11
+ function SelectRenderer(props) {
12
+ const { data, value, colDef: { selectRendererParams = {} } = {} } = props;
13
+ // Extrakce parametrů
14
+ const { cellAlign = 'left', visibleGetter, showOnGroup = false, displayField = 'name', // Které pole zobrazit z objektu
15
+ } = selectRendererParams;
16
+ // Memoizovaný displayValue
17
+ const displayValue = React.useMemo(() => {
18
+ if (!value)
19
+ return null;
20
+ // Pokud je displayField funkce
21
+ if (typeof displayField === 'function') {
22
+ return displayField({ data, value, props });
23
+ }
24
+ // Pokud je displayField string (název pole)
25
+ if (typeof displayField === 'string') {
26
+ return value[displayField] || value;
27
+ }
28
+ // Fallback - pokud value je string, vrať ho přímo
29
+ if (typeof value === 'string') {
30
+ return value;
31
+ }
32
+ return null;
33
+ }, [value, displayField, data, props]);
34
+ // Memoizovaná viditelnost
35
+ const visibleResult = React.useMemo(() => visibleGetter ? visibleGetter(data) : true, [visibleGetter, data]);
36
+ const showCondition = React.useMemo(() => {
37
+ const newItem = (data && data._rh_plus_ag_grid_new_item) || false;
38
+ return !newItem && (showOnGroup || !!data) && visibleResult;
39
+ }, [data, showOnGroup, visibleResult]);
40
+ // Container style s alignmentem
41
+ const containerStyle = React.useMemo(() => ({
42
+ ...CONTAINER_STYLE,
43
+ justifyContent: cellAlign === 'center' ? 'center' :
44
+ cellAlign === 'right' ? 'flex-end' :
45
+ 'flex-start',
46
+ }), [cellAlign]);
47
+ if (!showCondition || !displayValue)
48
+ return null;
49
+ return (_jsx("div", { style: containerStyle, children: displayValue }));
50
+ }
51
+ SelectRenderer.displayName = 'SelectRenderer';
52
+ // React.memo optimalizace pro AG-Grid renderer
53
+ // ✅ PERFORMANCE FIX: colDef NESMÍ být v kritických props!
54
+ const arePropsEqual = createMemoComparison(['value', 'data'], ['colDef'], false, 'SelectRenderer');
55
+ export default React.memo(SelectRenderer, arePropsEqual);
56
+ //# sourceMappingURL=SelectRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectRenderer.js","sourceRoot":"","sources":["../../Renderers/SelectRenderer.jsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ declare const _default: React.NamedExoticComponent<any>;
2
+ export default _default;
3
+ import * as React from 'react';
@@ -0,0 +1,137 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ /* eslint-disable */
3
+ import * as React from 'react';
4
+ import { createMemoComparison } from '@bit.rhplus/react-memo';
5
+ // Helper function moved outside component
6
+ function getValueByPath(obj, path) {
7
+ if (!obj || !path)
8
+ return null;
9
+ return path.split('.').reduce((o, k) => (o && o[k] !== undefined) ? o[k] : null, obj);
10
+ }
11
+ function StateRenderer(props) {
12
+ const { data, value, colDef: { stateRendererParams = {} } = {} } = props;
13
+ if (!stateRendererParams)
14
+ return null;
15
+ const { visibleGetter = () => true, cellAlign = 'center', bgColor, // Barva pozadí nebo funkce vracející barvu
16
+ color, // Barva textu nebo funkce vracející barvu (nový název)
17
+ textColor, // Barva textu (starý název - zpětná kompatibilita)
18
+ bgColorField, // Název pole obsahujícího barvu pozadí
19
+ colorField, // Název pole obsahujícího barvu textu (nový název)
20
+ textColorField, // Název pole obsahujícího barvu textu (starý název - zpětná kompatibilita)
21
+ displayField, // Pole pro zobrazení textu
22
+ minWidth = 80, // Minimální šířka kruhového pozadí
23
+ fontSize = 12, // Velikost fontu
24
+ showOnGroup = false, // Zda zobrazit na skupinových řádcích
25
+ states, // Pole stavů s barvami pro lookup podle hodnoty buňky
26
+ } = stateRendererParams;
27
+ // Použít nový název s fallbackem na starý pro zpětnou kompatibilitu
28
+ const finalColor = color || textColor || 'white';
29
+ const finalColorField = colorField || textColorField;
30
+ // Mapa stavů pro rychlý lookup barvy podle hodnoty buňky
31
+ const stateMap = React.useMemo(() => {
32
+ if (!states || !Array.isArray(states) || states.length === 0)
33
+ return null;
34
+ return new Map(states.map(s => [s.value, s]));
35
+ }, [states]);
36
+ const visibleResult = React.useMemo(() => visibleGetter ? visibleGetter(data) : true, [visibleGetter, data]);
37
+ const computedBgColor = React.useMemo(() => {
38
+ // Priorita: bgColorField (hodnota z dat) -> states lookup -> bgColor (funkce nebo string) -> default
39
+ if (bgColorField && data) {
40
+ const fieldValue = getValueByPath(data, bgColorField);
41
+ if (fieldValue)
42
+ return fieldValue;
43
+ }
44
+ // Lookup z states pole podle aktuální hodnoty
45
+ if (stateMap && value) {
46
+ const state = stateMap.get(value);
47
+ if (state?.bgColor)
48
+ return state.bgColor;
49
+ }
50
+ if (!bgColor)
51
+ return '#666'; // default barva
52
+ // Pokud je bgColor funkce, zavolej ji s daty
53
+ if (typeof bgColor === 'function') {
54
+ return bgColor({ data, value, props });
55
+ }
56
+ // Pokud je bgColor string/hodnota
57
+ return bgColor;
58
+ }, [bgColor, bgColorField, stateMap, data, value, props]);
59
+ const computedTextColor = React.useMemo(() => {
60
+ // Priorita: colorField/textColorField (hodnota z dat) -> states lookup -> color/textColor (funkce nebo string) -> default
61
+ if (finalColorField && data) {
62
+ const fieldValue = getValueByPath(data, finalColorField);
63
+ if (fieldValue)
64
+ return fieldValue;
65
+ }
66
+ // Lookup z states pole podle aktuální hodnoty
67
+ if (stateMap && value) {
68
+ const state = stateMap.get(value);
69
+ if (state?.textColor)
70
+ return state.textColor;
71
+ }
72
+ if (!finalColor)
73
+ return 'white'; // default barva
74
+ // Pokud je finalColor funkce, zavolej ji s daty
75
+ if (typeof finalColor === 'function') {
76
+ return finalColor({ data, value, props });
77
+ }
78
+ // Pokud je finalColor string/hodnota
79
+ return finalColor;
80
+ }, [finalColor, finalColorField, stateMap, data, value, props]);
81
+ const displayText = React.useMemo(() => {
82
+ if (displayField) {
83
+ // Pokud je displayField funkce
84
+ if (typeof displayField === 'function') {
85
+ return displayField({ data, value, props });
86
+ }
87
+ // Pokud je displayField string (název pole)
88
+ if (typeof displayField === 'string') {
89
+ return data?.[displayField] || value;
90
+ }
91
+ }
92
+ // Fallback na value
93
+ return value || '';
94
+ }, [displayField, data, value, props]);
95
+ const showCondition = React.useMemo(() => {
96
+ const newItem = (data && data._rh_plus_ag_grid_new_item) || false;
97
+ return !newItem && (showOnGroup || !!data) && visibleResult;
98
+ }, [data, showOnGroup, visibleResult]);
99
+ // DŮLEŽITÉ: containerStyle a badgeStyle MUSÍ být PŘED podmíněnými returny
100
+ // React pravidlo: Všechny hooky musí být volány ve stejném pořadí při každém renderu
101
+ const containerStyle = React.useMemo(() => ({
102
+ width: '100%',
103
+ display: 'flex',
104
+ justifyContent: cellAlign === 'center' ? 'center' : cellAlign === 'right' ? 'flex-end' : 'flex-start',
105
+ alignItems: 'center',
106
+ height: '100%',
107
+ }), [cellAlign]);
108
+ const badgeStyle = React.useMemo(() => ({
109
+ backgroundColor: computedBgColor,
110
+ color: computedTextColor,
111
+ borderRadius: '20px',
112
+ padding: '2px 8px',
113
+ minWidth: `${minWidth}px`,
114
+ fontSize: `${fontSize}px`,
115
+ fontWeight: '500',
116
+ textAlign: 'center',
117
+ display: 'inline-block',
118
+ whiteSpace: 'nowrap',
119
+ overflow: 'hidden',
120
+ textOverflow: 'ellipsis',
121
+ boxShadow: '0 1px 3px rgba(0, 0, 0, 0.1)',
122
+ lineHeight: '1.2',
123
+ height: 'auto',
124
+ }), [computedBgColor, computedTextColor, minWidth, fontSize]);
125
+ // Podmíněné returny musí být AŽ PO všech hoocích
126
+ if (!showCondition)
127
+ return null;
128
+ // Pokud nemáme text k zobrazení, nevrací nic
129
+ if (!displayText)
130
+ return null;
131
+ return (_jsx("div", { style: containerStyle, children: _jsx("span", { style: badgeStyle, children: displayText }) }));
132
+ }
133
+ // React.memo optimalizace pro AG-Grid renderer
134
+ // ✅ PERFORMANCE FIX: colDef NESMÍ být v kritických props!
135
+ const arePropsEqual = createMemoComparison(['value', 'data'], ['colDef'], false, 'StateRenderer');
136
+ export default React.memo(StateRenderer, arePropsEqual);
137
+ //# sourceMappingURL=StateRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StateRenderer.js","sourceRoot":"","sources":["../../Renderers/StateRenderer.jsx"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,3 @@
1
+ export { default as SelectCellRenderer } from './SelectCellRenderer';
2
+ export { default as ModuleLookupRenderer } from './ModuleLookupRenderer';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../Renderers/index.jsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,IAAI,kBAAkB,EAAC,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAC,OAAO,IAAI,oBAAoB,EAAC,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare const _default: React.NamedExoticComponent<React.RefAttributes<any>>;
2
+ export default _default;
3
+ import * as React from 'react';