@progress/kendo-react-orgchart 5.20.0-dev.202310061256

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 (87) hide show
  1. package/LICENSE.md +11 -0
  2. package/NOTICE.txt +117 -0
  3. package/README.md +50 -0
  4. package/about.md +3 -0
  5. package/dist/cdn/js/kendo-react-orgchart.js +1 -0
  6. package/dist/es/OrgChart.d.ts +6 -0
  7. package/dist/es/OrgChart.js +67 -0
  8. package/dist/es/OrgChartOperationDescriptors.d.ts +76 -0
  9. package/dist/es/OrgChartOperationDescriptors.js +2 -0
  10. package/dist/es/client/ClientOrgChart.d.ts +94 -0
  11. package/dist/es/client/ClientOrgChart.js +287 -0
  12. package/dist/es/client/ExpandButton.d.ts +13 -0
  13. package/dist/es/client/ExpandButton.js +23 -0
  14. package/dist/es/client/OrgChartCard.d.ts +19 -0
  15. package/dist/es/client/OrgChartCard.js +68 -0
  16. package/dist/es/client/OrgChartCardBody.d.ts +12 -0
  17. package/dist/es/client/OrgChartCardBody.js +13 -0
  18. package/dist/es/client/OrgChartGroupContainer.d.ts +19 -0
  19. package/dist/es/client/OrgChartGroupContainer.js +71 -0
  20. package/dist/es/interfaces/ChildGroup.d.ts +16 -0
  21. package/dist/es/interfaces/ChildGroup.js +1 -0
  22. package/dist/es/interfaces/OrgChartActionEvent.d.ts +22 -0
  23. package/dist/es/interfaces/OrgChartActionEvent.js +1 -0
  24. package/dist/es/interfaces/OrgChartExpandChangeEvent.d.ts +22 -0
  25. package/dist/es/interfaces/OrgChartExpandChangeEvent.js +1 -0
  26. package/dist/es/interfaces/SeverOrgChartProps.d.ts +106 -0
  27. package/dist/es/interfaces/SeverOrgChartProps.js +1 -0
  28. package/dist/es/main.d.ts +6 -0
  29. package/dist/es/main.js +3 -0
  30. package/dist/es/package-metadata.d.ts +5 -0
  31. package/dist/es/package-metadata.js +11 -0
  32. package/dist/es/processOrgChartItems.d.ts +51 -0
  33. package/dist/es/processOrgChartItems.js +163 -0
  34. package/dist/es/server/ServerGroupedOrgChart.d.ts +9 -0
  35. package/dist/es/server/ServerGroupedOrgChart.js +235 -0
  36. package/dist/es/server/ServerOrgChart.d.ts +9 -0
  37. package/dist/es/server/ServerOrgChart.js +192 -0
  38. package/dist/es/server/ServerOrgChartGroup.d.ts +96 -0
  39. package/dist/es/server/ServerOrgChartGroup.js +59 -0
  40. package/dist/es/server/ServerOrgChartNode.d.ts +75 -0
  41. package/dist/es/server/ServerOrgChartNode.js +57 -0
  42. package/dist/es/theming/theme-service.d.ts +5 -0
  43. package/dist/es/theming/theme-service.js +62 -0
  44. package/dist/es/utils/consts.d.ts +72 -0
  45. package/dist/es/utils/consts.js +72 -0
  46. package/dist/npm/OrgChart.d.ts +6 -0
  47. package/dist/npm/OrgChart.js +71 -0
  48. package/dist/npm/OrgChartOperationDescriptors.d.ts +76 -0
  49. package/dist/npm/OrgChartOperationDescriptors.js +3 -0
  50. package/dist/npm/client/ClientOrgChart.d.ts +94 -0
  51. package/dist/npm/client/ClientOrgChart.js +291 -0
  52. package/dist/npm/client/ExpandButton.d.ts +13 -0
  53. package/dist/npm/client/ExpandButton.js +27 -0
  54. package/dist/npm/client/OrgChartCard.d.ts +19 -0
  55. package/dist/npm/client/OrgChartCard.js +72 -0
  56. package/dist/npm/client/OrgChartCardBody.d.ts +12 -0
  57. package/dist/npm/client/OrgChartCardBody.js +17 -0
  58. package/dist/npm/client/OrgChartGroupContainer.d.ts +19 -0
  59. package/dist/npm/client/OrgChartGroupContainer.js +75 -0
  60. package/dist/npm/interfaces/ChildGroup.d.ts +16 -0
  61. package/dist/npm/interfaces/ChildGroup.js +2 -0
  62. package/dist/npm/interfaces/OrgChartActionEvent.d.ts +22 -0
  63. package/dist/npm/interfaces/OrgChartActionEvent.js +2 -0
  64. package/dist/npm/interfaces/OrgChartExpandChangeEvent.d.ts +22 -0
  65. package/dist/npm/interfaces/OrgChartExpandChangeEvent.js +2 -0
  66. package/dist/npm/interfaces/SeverOrgChartProps.d.ts +106 -0
  67. package/dist/npm/interfaces/SeverOrgChartProps.js +2 -0
  68. package/dist/npm/main.d.ts +6 -0
  69. package/dist/npm/main.js +21 -0
  70. package/dist/npm/package-metadata.d.ts +5 -0
  71. package/dist/npm/package-metadata.js +14 -0
  72. package/dist/npm/processOrgChartItems.d.ts +51 -0
  73. package/dist/npm/processOrgChartItems.js +167 -0
  74. package/dist/npm/server/ServerGroupedOrgChart.d.ts +9 -0
  75. package/dist/npm/server/ServerGroupedOrgChart.js +239 -0
  76. package/dist/npm/server/ServerOrgChart.d.ts +9 -0
  77. package/dist/npm/server/ServerOrgChart.js +196 -0
  78. package/dist/npm/server/ServerOrgChartGroup.d.ts +96 -0
  79. package/dist/npm/server/ServerOrgChartGroup.js +63 -0
  80. package/dist/npm/server/ServerOrgChartNode.d.ts +75 -0
  81. package/dist/npm/server/ServerOrgChartNode.js +61 -0
  82. package/dist/npm/theming/theme-service.d.ts +5 -0
  83. package/dist/npm/theming/theme-service.js +65 -0
  84. package/dist/npm/utils/consts.d.ts +72 -0
  85. package/dist/npm/utils/consts.js +75 -0
  86. package/dist/systemjs/kendo-react-orgchart.js +1 -0
  87. package/package.json +62 -0
@@ -0,0 +1,291 @@
1
+ "use strict";
2
+ 'use client';
3
+ var __assign = (this && this.__assign) || function () {
4
+ __assign = Object.assign || function(t) {
5
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
6
+ s = arguments[i];
7
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
8
+ t[p] = s[p];
9
+ }
10
+ return t;
11
+ };
12
+ return __assign.apply(this, arguments);
13
+ };
14
+ var __rest = (this && this.__rest) || function (s, e) {
15
+ var t = {};
16
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
17
+ t[p] = s[p];
18
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
19
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
20
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
21
+ t[p[i]] = s[p[i]];
22
+ }
23
+ return t;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.ClientOrgChart = exports.OrgChartEventsContextContext = void 0;
27
+ var React = require("react");
28
+ var PropTypes = require("prop-types");
29
+ var kendo_react_common_1 = require("@progress/kendo-react-common");
30
+ var theme_service_1 = require("../theming/theme-service");
31
+ var consts_1 = require("../utils/consts");
32
+ exports.OrgChartEventsContextContext = React.createContext({
33
+ cardColors: undefined,
34
+ onExpandChange: undefined,
35
+ onKeyDown: undefined,
36
+ onItemAction: undefined,
37
+ onItemContextMenu: undefined,
38
+ onItemDoubleClick: undefined,
39
+ onGroupAction: undefined,
40
+ onGroupBlur: undefined,
41
+ onGroupFocus: undefined
42
+ });
43
+ /**
44
+ * @hidden
45
+ */
46
+ var ClientOrgChart = function (props) {
47
+ var combinedProps = __assign({ tabIndex: 0, navigatable: true, expandField: 'expanded', ariaLabel: 'Org Chart', idField: 'id', childrenField: 'items', avatarField: 'avatar', titleField: 'title', subTitleField: 'subtitle' }, props);
48
+ var navigatable = combinedProps.navigatable, id = combinedProps.id, tabIndex = combinedProps.tabIndex, className = combinedProps.className, style = combinedProps.style, data = combinedProps.data, groupField = combinedProps.groupField, cardWidth = combinedProps.cardWidth, cardHeight = combinedProps.cardHeight, groupTitleHeight = combinedProps.groupTitleHeight, groupSubtitleHeight = combinedProps.groupSubtitleHeight, verticalLine = combinedProps.verticalLine, idField = combinedProps.idField, childrenField = combinedProps.childrenField, expandField = combinedProps.expandField, hasChildrenField = combinedProps.hasChildrenField, avatarField = combinedProps.avatarField, titleField = combinedProps.titleField, subTitleField = combinedProps.subTitleField, onExpandChange = combinedProps.onExpandChange, onItemAction = combinedProps.onItemAction, onItemDoubleClick = combinedProps.onItemDoubleClick, onItemContextMenu = combinedProps.onItemContextMenu, onKeyDown = combinedProps.onKeyDown, onGroupAction = combinedProps.onGroupAction, onGroupBlur = combinedProps.onGroupBlur, onGroupFocus = combinedProps.onGroupFocus, cardsColors = combinedProps.cardsColors, ariaLabel = combinedProps.ariaLabel, itemRender = combinedProps.itemRender, groupTitleRender = combinedProps.groupTitleRender, groupSubtitleRender = combinedProps.groupSubtitleRender, height = combinedProps.height, children = combinedProps.children, other = __rest(combinedProps, ["navigatable", "id", "tabIndex", "className", "style", "data", "groupField", "cardWidth", "cardHeight", "groupTitleHeight", "groupSubtitleHeight", "verticalLine", "idField", "childrenField", "expandField", "hasChildrenField", "avatarField", "titleField", "subTitleField", "onExpandChange", "onItemAction", "onItemDoubleClick", "onItemContextMenu", "onKeyDown", "onGroupAction", "onGroupBlur", "onGroupFocus", "cardsColors", "ariaLabel", "itemRender", "groupTitleRender", "groupSubtitleRender", "height", "children"]);
49
+ var orgChartRef = React.useRef(null);
50
+ var navigation = React.useRef(new kendo_react_common_1.Navigation({
51
+ tabIndex: tabIndex,
52
+ root: orgChartRef,
53
+ selectors: [combinedProps.groupField ? '.k-orgchart-node-group-container' : '.k-orgchart-card'],
54
+ focusOptions: {}
55
+ }));
56
+ var _a = React.useState([]), cardColorsFromTheme = _a[0], setCardColorsFromTheme = _a[1];
57
+ var innerNavigation = React.useRef(null);
58
+ var onRight = function (target, nav, ev) {
59
+ ev.preventDefault();
60
+ nav.focusNext(target);
61
+ };
62
+ var onLeft = function (target, nav, ev) {
63
+ ev.preventDefault();
64
+ nav.focusPrevious(target);
65
+ };
66
+ var onUp = function (target, nav, ev, options) {
67
+ var _a;
68
+ ev.preventDefault();
69
+ var expanded = combinedProps.groupField
70
+ ? options.items.some(function (i) { return i[combinedProps.expandField]; })
71
+ : options.item[combinedProps.expandField];
72
+ if (expanded && combinedProps.onExpandChange) {
73
+ combinedProps.onExpandChange.call(undefined, options);
74
+ }
75
+ else {
76
+ var parentSelector = '.k-orgchart-group';
77
+ var current = (_a = target.closest(parentSelector)) === null || _a === void 0 ? void 0 : _a.getAttribute('id');
78
+ var next = document.querySelector("[aria-owns=\"".concat(current, "\"]"));
79
+ if (next) {
80
+ nav.focusElement(next, target);
81
+ }
82
+ else {
83
+ nav.focusPrevious(target);
84
+ }
85
+ }
86
+ };
87
+ var onDown = function (target, nav, ev, options) {
88
+ var _a;
89
+ ev.preventDefault();
90
+ var expanded = combinedProps.groupField
91
+ ? options.items.some(function (i) { return i[combinedProps.expandField]; })
92
+ : options.item[combinedProps.expandField];
93
+ var subItems = combinedProps.groupField
94
+ ? options.items.find(function (i) { return i[combinedProps.childrenField]; })
95
+ : options.item[combinedProps.childrenField];
96
+ var hasChildren = combinedProps.groupField
97
+ ? options.items.some(function (i) { return combinedProps.hasChildrenField && i[combinedProps.hasChildrenField]; })
98
+ : combinedProps.hasChildrenField && options.item[combinedProps.hasChildrenField];
99
+ var hasSubItems = combinedProps.groupField
100
+ ? subItems && subItems[combinedProps.childrenField] && subItems[combinedProps.childrenField].length
101
+ : subItems && subItems.length;
102
+ if ((hasChildren || hasSubItems) && !expanded && combinedProps.onExpandChange) {
103
+ combinedProps.onExpandChange.call(undefined, options);
104
+ }
105
+ else {
106
+ var selector = combinedProps.groupField ? '.k-orgchart-node-group-container' : '.k-orgchart-card';
107
+ var current = target.getAttribute('aria-owns');
108
+ var next = (_a = document.getElementById(current)) === null || _a === void 0 ? void 0 : _a.querySelector(selector);
109
+ if (next) {
110
+ nav.focusElement(next, target);
111
+ }
112
+ else {
113
+ nav.focusNext(target);
114
+ }
115
+ }
116
+ };
117
+ var onHome = function (_target, nav, ev) {
118
+ ev.preventDefault();
119
+ nav.focusElement(nav.first, null);
120
+ };
121
+ var onEnd = function (_target, nav, ev) {
122
+ ev.preventDefault();
123
+ nav.focusElement(nav.last, null);
124
+ };
125
+ var onEnter = function (target, _nav, ev, options) {
126
+ ev.stopPropagation();
127
+ var isGroupFocused = target.className.indexOf('k-orgchart-node-group-container') !== -1;
128
+ if (props.groupField && isGroupFocused) {
129
+ if (innerNavigation.current && innerNavigation.current.first) {
130
+ innerNavigation.current.focusElement(innerNavigation.current.first, null);
131
+ }
132
+ return;
133
+ }
134
+ if (combinedProps.onItemAction) {
135
+ combinedProps.onItemAction({
136
+ event: ev,
137
+ item: options.item
138
+ });
139
+ }
140
+ };
141
+ var onEscape = function (target) {
142
+ if (props.groupField) {
143
+ var parentGroup = target.closest('.k-orgchart-node-group-container');
144
+ if (parentGroup) {
145
+ navigation.current.focusElement(parentGroup, null);
146
+ }
147
+ }
148
+ };
149
+ React.useEffect(function () {
150
+ if (navigatable) {
151
+ if (navigation.current.first) {
152
+ navigation.current.first.setAttribute('tabindex', String(tabIndex));
153
+ }
154
+ }
155
+ if (!cardsColors) {
156
+ var doc = orgChartRef.current.ownerDocument || document;
157
+ (0, theme_service_1.loadTheme)(function (groupsColors) {
158
+ setCardColorsFromTheme(groupsColors);
159
+ }, doc);
160
+ }
161
+ }, [navigatable, tabIndex]);
162
+ var handleKeyDown = function (e) {
163
+ if (combinedProps.navigatable) {
164
+ // defaulted to this one but oddly didn't work in some cases
165
+ // navigation.current.triggerKeyboardEvent(e.event, e);
166
+ var event_1 = e.event;
167
+ var key = event_1.key === ' ' ? 'Space' : event_1.key;
168
+ var currentNavigation = props.groupField
169
+ ? event_1.target.className.indexOf('k-orgchart-card') !== -1
170
+ ? innerNavigation.current || navigation.current
171
+ : navigation.current
172
+ : navigation.current;
173
+ var target = event_1.target.closest(currentNavigation.selectors.join(','));
174
+ switch (key) {
175
+ case 'ArrowUp':
176
+ onUp(target, currentNavigation, event_1, e);
177
+ break;
178
+ case 'ArrowDown':
179
+ onDown(target, currentNavigation, event_1, e);
180
+ break;
181
+ case 'ArrowLeft':
182
+ onLeft(target, currentNavigation, event_1);
183
+ break;
184
+ case 'ArrowRight':
185
+ onRight(target, currentNavigation, event_1);
186
+ break;
187
+ case 'End':
188
+ onEnd(target, currentNavigation, event_1);
189
+ break;
190
+ case 'Home':
191
+ onHome(target, currentNavigation, event_1);
192
+ break;
193
+ case 'Enter':
194
+ onEnter(target, currentNavigation, event_1, e);
195
+ break;
196
+ case 'Escape':
197
+ onEscape(target);
198
+ break;
199
+ default:
200
+ break;
201
+ }
202
+ }
203
+ };
204
+ var handleItemAction = function (e) {
205
+ e.event.stopPropagation();
206
+ if (onItemAction) {
207
+ onItemAction.call(undefined, e);
208
+ }
209
+ if (combinedProps.navigatable) {
210
+ var closestOrgChartCard = e.event.target.closest('.k-orgchart-card');
211
+ if (closestOrgChartCard) {
212
+ navigation.current.focusElement(closestOrgChartCard, null);
213
+ }
214
+ }
215
+ };
216
+ var handleContextMenu = function (e) {
217
+ e.event.stopPropagation();
218
+ if (onItemAction) {
219
+ onItemAction.call(undefined, e);
220
+ }
221
+ };
222
+ var handleDoubleClick = function (e) {
223
+ e.event.stopPropagation();
224
+ if (onItemAction) {
225
+ onItemAction.call(undefined, e);
226
+ }
227
+ };
228
+ var handleGroupAction = function (e) {
229
+ if (onGroupAction) {
230
+ onGroupAction.call(undefined, e);
231
+ }
232
+ if (combinedProps.navigatable) {
233
+ var closestOrgChartCard = e.event.target.closest('.k-orgchart-node-group-container');
234
+ if (closestOrgChartCard) {
235
+ navigation.current.focusElement(closestOrgChartCard, null);
236
+ }
237
+ }
238
+ };
239
+ var handleGroupBlur = function (_e) {
240
+ innerNavigation.current = null;
241
+ };
242
+ var handleGroupFocus = function (e) {
243
+ innerNavigation.current = new kendo_react_common_1.Navigation({
244
+ tabIndex: 0,
245
+ root: e.containerRef,
246
+ selectors: ['.k-orgchart-card'],
247
+ focusOptions: {}
248
+ });
249
+ };
250
+ return (React.createElement("div", { style: style, ref: orgChartRef, className: (0, kendo_react_common_1.classNames)(className, consts_1.ORGCHART_CLASSNAME) },
251
+ React.createElement(exports.OrgChartEventsContextContext.Provider, __assign({ value: {
252
+ cardColors: cardsColors || cardColorsFromTheme,
253
+ onExpandChange: props.onExpandChange,
254
+ onKeyDown: handleKeyDown,
255
+ onItemAction: handleItemAction,
256
+ onItemDoubleClick: handleDoubleClick,
257
+ onItemContextMenu: handleContextMenu,
258
+ onGroupAction: handleGroupAction,
259
+ onGroupBlur: handleGroupBlur,
260
+ onGroupFocus: handleGroupFocus
261
+ } }, other), props.children)));
262
+ };
263
+ exports.ClientOrgChart = ClientOrgChart;
264
+ exports.ClientOrgChart.propTypes = {
265
+ className: PropTypes.string,
266
+ style: PropTypes.object,
267
+ id: PropTypes.string,
268
+ ariaLabel: PropTypes.string,
269
+ idField: PropTypes.string,
270
+ childrenField: PropTypes.string,
271
+ expandField: PropTypes.string,
272
+ titleField: PropTypes.string,
273
+ hasChildrenField: PropTypes.string,
274
+ subTitleField: PropTypes.string,
275
+ avatarField: PropTypes.string,
276
+ cardsColors: PropTypes.array,
277
+ data: PropTypes.array,
278
+ groupField: PropTypes.string,
279
+ cardHeight: PropTypes.number,
280
+ cardWidth: PropTypes.number,
281
+ groupTitleHeight: PropTypes.number,
282
+ groupSubtitleHeight: PropTypes.number,
283
+ verticalLine: PropTypes.number,
284
+ height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
285
+ onExpandChange: PropTypes.func,
286
+ onItemAction: PropTypes.func,
287
+ onItemDoubleClick: PropTypes.func,
288
+ onItemContextMenu: PropTypes.func,
289
+ onGroupAction: PropTypes.func
290
+ };
291
+ exports.ClientOrgChart.displayName = 'KendoClientOrgChart';
@@ -0,0 +1,13 @@
1
+ import * as React from 'react';
2
+ /**
3
+ * @hidden
4
+ */
5
+ export interface ExpandButtonProps {
6
+ node?: any;
7
+ nodes?: any[];
8
+ expanded?: boolean;
9
+ }
10
+ /**
11
+ * @hidden
12
+ */
13
+ export declare const ExpandButton: React.FunctionComponent<ExpandButtonProps>;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ 'use client';
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.ExpandButton = void 0;
5
+ var React = require("react");
6
+ var kendo_react_buttons_1 = require("@progress/kendo-react-buttons");
7
+ var kendo_svg_icons_1 = require("@progress/kendo-svg-icons");
8
+ var ClientOrgChart_1 = require("./ClientOrgChart");
9
+ /**
10
+ * @hidden
11
+ */
12
+ var ExpandButton = function (props) {
13
+ var expanded = props.expanded, node = props.node, nodes = props.nodes;
14
+ var context = React.useContext(ClientOrgChart_1.OrgChartEventsContextContext);
15
+ var onClick = function (event) {
16
+ if (context.onExpandChange) {
17
+ context.onExpandChange.call(undefined, {
18
+ event: event,
19
+ expand: !expanded,
20
+ item: node,
21
+ items: nodes
22
+ });
23
+ }
24
+ };
25
+ return (React.createElement(kendo_react_buttons_1.Button, { className: "k-orgchart-button", icon: expanded ? 'minus' : 'plus', tabIndex: -1, svgIcon: expanded ? kendo_svg_icons_1.minusIcon : kendo_svg_icons_1.plusIcon, "aria-label": expanded ? 'collapse' : 'expand', onClick: onClick }));
26
+ };
27
+ exports.ExpandButton = ExpandButton;
@@ -0,0 +1,19 @@
1
+ import * as React from 'react';
2
+ /**
3
+ * @hidden
4
+ */
5
+ export interface OrgChartCardProps {
6
+ /**
7
+ * @hidden
8
+ */
9
+ children?: React.ReactNode;
10
+ /**
11
+ * The styles that are applied to the OrgChart.
12
+ */
13
+ style?: React.CSSProperties;
14
+ node?: any;
15
+ }
16
+ /**
17
+ * @hidden
18
+ */
19
+ export declare const OrgChartCard: React.FunctionComponent<OrgChartCardProps>;
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ 'use client';
3
+ var __assign = (this && this.__assign) || function () {
4
+ __assign = Object.assign || function(t) {
5
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
6
+ s = arguments[i];
7
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
8
+ t[p] = s[p];
9
+ }
10
+ return t;
11
+ };
12
+ return __assign.apply(this, arguments);
13
+ };
14
+ var __rest = (this && this.__rest) || function (s, e) {
15
+ var t = {};
16
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
17
+ t[p] = s[p];
18
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
19
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
20
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
21
+ t[p[i]] = s[p[i]];
22
+ }
23
+ return t;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.OrgChartCard = void 0;
27
+ var React = require("react");
28
+ var kendo_react_layout_1 = require("@progress/kendo-react-layout");
29
+ var kendo_react_common_1 = require("@progress/kendo-react-common");
30
+ var ClientOrgChart_1 = require("./ClientOrgChart");
31
+ /**
32
+ * @hidden
33
+ */
34
+ var OrgChartCard = function (props) {
35
+ var node = props.node, children = props.children, style = props.style, others = __rest(props, ["node", "children", "style"]);
36
+ var _a = React.useState(false), selected = _a[0], setSelected = _a[1];
37
+ var context = React.useContext(ClientOrgChart_1.OrgChartEventsContextContext);
38
+ var handleKeyDown = function (event) {
39
+ if (context.onKeyDown) {
40
+ context.onKeyDown.call(undefined, {
41
+ event: event,
42
+ item: node
43
+ });
44
+ }
45
+ };
46
+ var handleClick = function (event) {
47
+ if (context.onItemAction) {
48
+ context.onItemAction.call(undefined, {
49
+ event: event,
50
+ item: node
51
+ });
52
+ }
53
+ };
54
+ var handleContextMenu = function (event) {
55
+ if (context.onItemContextMenu) {
56
+ context.onItemContextMenu.call(undefined, {
57
+ event: event,
58
+ item: node
59
+ });
60
+ }
61
+ };
62
+ var handleDoubleClick = function (event) {
63
+ if (context.onItemDoubleClick) {
64
+ context.onItemDoubleClick.call(undefined, {
65
+ event: event,
66
+ item: node
67
+ });
68
+ }
69
+ };
70
+ return (React.createElement(kendo_react_layout_1.Card, __assign({ role: "treeitem", className: (0, kendo_react_common_1.classNames)('k-orgchart-card', { 'k-focus': selected }), onClick: handleClick, onKeyDown: handleKeyDown, onContextMenu: handleContextMenu, onDoubleClick: handleDoubleClick, style: style, "aria-selected": selected, "aria-keyshortcuts": "Enter", onFocus: function () { return setSelected(true); }, onBlur: function () { return setSelected(false); } }, others), children));
71
+ };
72
+ exports.OrgChartCard = OrgChartCard;
@@ -0,0 +1,12 @@
1
+ import * as React from 'react';
2
+ /**
3
+ * @hidden
4
+ */
5
+ export interface OrgChartCardBodyProps {
6
+ level: number;
7
+ children?: React.ReactNode;
8
+ }
9
+ /**
10
+ * @hidden
11
+ */
12
+ export declare const OrgChartCardBody: React.FunctionComponent<OrgChartCardBodyProps>;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ 'use client';
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.OrgChartCardBody = void 0;
5
+ var React = require("react");
6
+ var ClientOrgChart_1 = require("./ClientOrgChart");
7
+ var kendo_react_layout_1 = require("@progress/kendo-react-layout");
8
+ /**
9
+ * @hidden
10
+ */
11
+ var OrgChartCardBody = function (props) {
12
+ var level = props.level, children = props.children;
13
+ var context = React.useContext(ClientOrgChart_1.OrgChartEventsContextContext);
14
+ var cardColor = context.cardColors ? context.cardColors[level] || 'green' : 'green';
15
+ return (React.createElement(kendo_react_layout_1.CardBody, { className: "k-hstack", style: { borderTopColor: cardColor } }, children));
16
+ };
17
+ exports.OrgChartCardBody = OrgChartCardBody;
@@ -0,0 +1,19 @@
1
+ import * as React from 'react';
2
+ /**
3
+ * @hidden
4
+ */
5
+ export interface OrgChartGroupContainerProps {
6
+ /**
7
+ * @hidden
8
+ */
9
+ children?: React.ReactNode;
10
+ /**
11
+ * The styles that are applied to the OrgChart.
12
+ */
13
+ style?: React.CSSProperties;
14
+ nodes?: any[];
15
+ }
16
+ /**
17
+ * @hidden
18
+ */
19
+ export declare const OrgChartGroupContainer: React.FunctionComponent<OrgChartGroupContainerProps>;
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ 'use client';
3
+ var __assign = (this && this.__assign) || function () {
4
+ __assign = Object.assign || function(t) {
5
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
6
+ s = arguments[i];
7
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
8
+ t[p] = s[p];
9
+ }
10
+ return t;
11
+ };
12
+ return __assign.apply(this, arguments);
13
+ };
14
+ var __rest = (this && this.__rest) || function (s, e) {
15
+ var t = {};
16
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
17
+ t[p] = s[p];
18
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
19
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
20
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
21
+ t[p[i]] = s[p[i]];
22
+ }
23
+ return t;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.OrgChartGroupContainer = void 0;
27
+ var React = require("react");
28
+ var kendo_react_common_1 = require("@progress/kendo-react-common");
29
+ var ClientOrgChart_1 = require("./ClientOrgChart");
30
+ /**
31
+ * @hidden
32
+ */
33
+ var OrgChartGroupContainer = function (props) {
34
+ var nodes = props.nodes, children = props.children, style = props.style, others = __rest(props, ["nodes", "children", "style"]);
35
+ var _a = React.useState(false), selected = _a[0], setSelected = _a[1];
36
+ var context = React.useContext(ClientOrgChart_1.OrgChartEventsContextContext);
37
+ var containerRef = React.useRef(null);
38
+ var handleKeyDown = function (event) {
39
+ if (context.onKeyDown) {
40
+ context.onKeyDown({
41
+ event: event,
42
+ items: nodes
43
+ });
44
+ }
45
+ };
46
+ var handleClick = function (event) {
47
+ if (context.onGroupAction) {
48
+ context.onGroupAction({
49
+ event: event,
50
+ items: nodes
51
+ });
52
+ }
53
+ };
54
+ var handleFocus = function (event) {
55
+ setSelected(true);
56
+ if (context.onGroupFocus) {
57
+ context.onGroupFocus({
58
+ event: event,
59
+ items: nodes,
60
+ containerRef: containerRef
61
+ });
62
+ }
63
+ };
64
+ var handleBlur = function (event) {
65
+ setSelected(false);
66
+ if (context.onGroupBlur) {
67
+ context.onGroupBlur({
68
+ event: event,
69
+ items: nodes
70
+ });
71
+ }
72
+ };
73
+ return (React.createElement("div", __assign({ role: "treeitem", "aria-selected": selected, ref: containerRef, className: (0, kendo_react_common_1.classNames)('k-orgchart-node-group-container', 'k-vstack', { 'k-focus': selected }), style: style, onKeyDown: handleKeyDown, onClick: handleClick, onFocus: handleFocus, onBlur: handleBlur }, others), children));
74
+ };
75
+ exports.OrgChartGroupContainer = OrgChartGroupContainer;
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @hidden
3
+ */
4
+ export interface ChildGroup {
5
+ items: any[];
6
+ groupedItems: any[];
7
+ level: number;
8
+ ids: number[];
9
+ parentId: number;
10
+ hasChildren: boolean;
11
+ orientation: 'horizontal' | 'vertical';
12
+ width: number | null;
13
+ childLineWidths?: number[];
14
+ left?: number;
15
+ top?: number;
16
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,22 @@
1
+ /// <reference types="react" />
2
+ /**
3
+ * Represents the OrgChartActionEvent event argument.
4
+ */
5
+ export interface OrgChartActionEvent {
6
+ /**
7
+ * Represents the triggered React event.
8
+ */
9
+ event: React.KeyboardEvent | React.MouseEvent | React.FocusEvent;
10
+ /**
11
+ * Item that triggers the event.
12
+ */
13
+ item?: any;
14
+ /**
15
+ * Items that belong to the group that triggers the event.
16
+ */
17
+ items?: any;
18
+ /**
19
+ * @hidden
20
+ */
21
+ containerRef?: React.RefObject<HTMLDivElement>;
22
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,22 @@
1
+ /// <reference types="react" />
2
+ /**
3
+ * Represents the OrgChartExpandChangeEvent event argument.
4
+ */
5
+ export interface OrgChartExpandChangeEvent {
6
+ /**
7
+ * Represents the triggered React event.
8
+ */
9
+ event: React.MouseEvent | React.KeyboardEvent;
10
+ /**
11
+ * Represents expand value of the item or group.
12
+ */
13
+ expand: boolean;
14
+ /**
15
+ * Item that triggers the event.
16
+ */
17
+ item?: any;
18
+ /**
19
+ * Items that belong to the group that triggers the event.
20
+ */
21
+ items?: any[];
22
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });