@progress/kendo-react-gantt 6.1.1 → 7.0.0-develop.1

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 (292) hide show
  1. package/{dist/npm/Gantt.d.ts → Gantt.d.ts} +4 -0
  2. package/LICENSE.md +1 -1
  3. package/{dist/es/cells → cells}/FilterCells/GanttBooleanFilter.d.ts +4 -0
  4. package/{dist/npm/cells → cells}/FilterCells/GanttDateFilter.d.ts +4 -0
  5. package/{dist/es/cells → cells}/FilterCells/GanttNumericFilter.d.ts +4 -0
  6. package/{dist/npm/cells → cells}/FilterCells/GanttTextFilter.d.ts +4 -0
  7. package/{dist/npm/cells → cells}/FilterCells/utils.d.ts +4 -0
  8. package/{dist/npm/components → components}/BaseView.d.ts +4 -0
  9. package/components/GanttDependency.d.ts +13 -0
  10. package/{dist/npm/components → components}/GanttTask.d.ts +4 -0
  11. package/{dist/npm/components → components}/GanttTreelist.d.ts +6 -2
  12. package/{dist/npm/components → components}/toolbar/AddButton.d.ts +4 -0
  13. package/{dist/npm/components → components}/toolbar/Toolbar.d.ts +4 -0
  14. package/{dist/es/components → components}/toolbar/view-selector/ViewSelector.d.ts +4 -0
  15. package/components/toolbar/view-selector/ViewSelectorItem.d.ts +15 -0
  16. package/components/toolbar/view-selector/ViewSelectorList.d.ts +7 -0
  17. package/{dist/npm/constants → constants}/index.d.ts +4 -0
  18. package/{dist/es/context → context}/GanttContext.d.ts +17 -13
  19. package/{dist/npm/context → context}/GanttViewContext.d.ts +8 -4
  20. package/dist/cdn/js/kendo-react-gantt.js +5 -1
  21. package/editors/FormDateTimePicker.d.ts +8 -0
  22. package/editors/FormInput.d.ts +8 -0
  23. package/editors/FormNumericTextBox.d.ts +8 -0
  24. package/editors/GanttEditor.d.ts +8 -0
  25. package/{dist/npm/editors → editors}/GanttForm.d.ts +4 -0
  26. package/{dist/es/editors → editors}/GanttRemoveDialog.d.ts +4 -0
  27. package/hooks/useControlledState.d.ts +8 -0
  28. package/{dist/es/hooks → hooks}/useDictionaryStore.d.ts +5 -1
  29. package/hooks/useGanttTask.d.ts +8 -0
  30. package/index.d.ts +30 -0
  31. package/index.js +5 -0
  32. package/index.mjs +2582 -0
  33. package/interfaces/AddDirection.d.ts +10 -0
  34. package/interfaces/DataItem.d.ts +10 -0
  35. package/interfaces/DateRange.d.ts +12 -0
  36. package/{dist/es/interfaces → interfaces}/DependencyModelFields.d.ts +4 -0
  37. package/{dist/npm/interfaces → interfaces}/GanttBaseProps.d.ts +4 -1
  38. package/{dist/es/interfaces → interfaces}/GanttCellProps.d.ts +4 -1
  39. package/{dist/npm/interfaces → interfaces}/GanttColumnProps.d.ts +4 -0
  40. package/{dist/npm/interfaces → interfaces}/GanttDependencyModelFields.d.ts +4 -0
  41. package/interfaces/GanttFilterCellProps.d.ts +10 -0
  42. package/interfaces/GanttFilterOperator.d.ts +10 -0
  43. package/interfaces/GanttHeaderCellProps.d.ts +10 -0
  44. package/interfaces/GanttNoRecordsProps.d.ts +13 -0
  45. package/{dist/npm/interfaces → interfaces}/GanttProps.d.ts +4 -1
  46. package/{dist/es/interfaces → interfaces}/GanttRowProps.d.ts +4 -1
  47. package/{dist/es/interfaces → interfaces}/GanttSelectableSettings.d.ts +5 -1
  48. package/interfaces/GanttSlotType.d.ts +8 -0
  49. package/interfaces/GanttSortSettings.d.ts +17 -0
  50. package/{dist/es/interfaces → interfaces}/GanttTaskModelFields.d.ts +4 -0
  51. package/{dist/npm/interfaces → interfaces}/GanttView.d.ts +6 -3
  52. package/{dist/es/interfaces → interfaces}/GanttViewTimelineHeaderCellProps.d.ts +4 -0
  53. package/interfaces/Rectangle.d.ts +10 -0
  54. package/interfaces/Slot.d.ts +16 -0
  55. package/interfaces/TaskModelFields.d.ts +19 -0
  56. package/{dist/npm/interfaces → interfaces}/events.d.ts +4 -0
  57. package/{dist/es/messages → messages}/index.d.ts +4 -0
  58. package/package-metadata.d.ts +9 -0
  59. package/package.json +40 -57
  60. package/rows/GanttRow.d.ts +8 -0
  61. package/{dist/es/utils → utils}/data-operations.d.ts +4 -0
  62. package/{dist/es/utils → utils}/index.d.ts +11 -7
  63. package/{dist/npm/views → views}/GanttDayView.d.ts +4 -0
  64. package/{dist/npm/views → views}/GanttMonthView.d.ts +4 -0
  65. package/{dist/es/views → views}/GanttWeekView.d.ts +4 -0
  66. package/{dist/npm/views → views}/GanttYearView.d.ts +4 -0
  67. package/about.md +0 -3
  68. package/dist/es/Gantt.d.ts +0 -25
  69. package/dist/es/Gantt.js +0 -332
  70. package/dist/es/GanttNoRecords.d.ts +0 -12
  71. package/dist/es/GanttNoRecords.js +0 -37
  72. package/dist/es/cells/FilterCells/GanttBooleanFilter.js +0 -31
  73. package/dist/es/cells/FilterCells/GanttDateFilter.d.ts +0 -10
  74. package/dist/es/cells/FilterCells/GanttDateFilter.js +0 -31
  75. package/dist/es/cells/FilterCells/GanttNumericFilter.js +0 -31
  76. package/dist/es/cells/FilterCells/GanttTextFilter.d.ts +0 -10
  77. package/dist/es/cells/FilterCells/GanttTextFilter.js +0 -31
  78. package/dist/es/cells/FilterCells/utils.d.ts +0 -38
  79. package/dist/es/cells/FilterCells/utils.js +0 -66
  80. package/dist/es/components/BaseView.d.ts +0 -20
  81. package/dist/es/components/BaseView.js +0 -253
  82. package/dist/es/components/GanttDependency.d.ts +0 -10
  83. package/dist/es/components/GanttDependency.js +0 -56
  84. package/dist/es/components/GanttTask.d.ts +0 -12
  85. package/dist/es/components/GanttTask.js +0 -164
  86. package/dist/es/components/GanttTreelist.d.ts +0 -138
  87. package/dist/es/components/GanttTreelist.js +0 -607
  88. package/dist/es/components/toolbar/AddButton.d.ts +0 -12
  89. package/dist/es/components/toolbar/AddButton.js +0 -47
  90. package/dist/es/components/toolbar/Toolbar.d.ts +0 -21
  91. package/dist/es/components/toolbar/Toolbar.js +0 -41
  92. package/dist/es/components/toolbar/view-selector/ViewSelector.js +0 -38
  93. package/dist/es/components/toolbar/view-selector/ViewSelectorItem.d.ts +0 -12
  94. package/dist/es/components/toolbar/view-selector/ViewSelectorItem.js +0 -17
  95. package/dist/es/components/toolbar/view-selector/ViewSelectorList.d.ts +0 -3
  96. package/dist/es/components/toolbar/view-selector/ViewSelectorList.js +0 -42
  97. package/dist/es/constants/index.d.ts +0 -53
  98. package/dist/es/constants/index.js +0 -63
  99. package/dist/es/context/GanttContext.js +0 -105
  100. package/dist/es/context/GanttViewContext.d.ts +0 -40
  101. package/dist/es/context/GanttViewContext.js +0 -31
  102. package/dist/es/editors/FormAssingmentsEditor.d.ts +0 -5
  103. package/dist/es/editors/FormAssingmentsEditor.js +0 -20
  104. package/dist/es/editors/FormDateTimePicker.d.ts +0 -5
  105. package/dist/es/editors/FormDateTimePicker.js +0 -45
  106. package/dist/es/editors/FormInput.d.ts +0 -5
  107. package/dist/es/editors/FormInput.js +0 -44
  108. package/dist/es/editors/FormNumericTextBox.d.ts +0 -5
  109. package/dist/es/editors/FormNumericTextBox.js +0 -44
  110. package/dist/es/editors/GanttEditor.d.ts +0 -5
  111. package/dist/es/editors/GanttEditor.js +0 -39
  112. package/dist/es/editors/GanttForm.d.ts +0 -44
  113. package/dist/es/editors/GanttForm.js +0 -72
  114. package/dist/es/editors/GanttRemoveDialog.js +0 -61
  115. package/dist/es/hooks/useControlledState.d.ts +0 -4
  116. package/dist/es/hooks/useControlledState.js +0 -23
  117. package/dist/es/hooks/useDictionaryStore.js +0 -24
  118. package/dist/es/hooks/useGanttTask.d.ts +0 -4
  119. package/dist/es/hooks/useGanttTask.js +0 -27
  120. package/dist/es/interfaces/AddDirection.d.ts +0 -6
  121. package/dist/es/interfaces/AddDirection.js +0 -1
  122. package/dist/es/interfaces/DataAction.d.ts +0 -25
  123. package/dist/es/interfaces/DataAction.js +0 -9
  124. package/dist/es/interfaces/DataItem.d.ts +0 -6
  125. package/dist/es/interfaces/DataItem.js +0 -1
  126. package/dist/es/interfaces/DateRange.d.ts +0 -8
  127. package/dist/es/interfaces/DateRange.js +0 -1
  128. package/dist/es/interfaces/DependencyModelFields.js +0 -1
  129. package/dist/es/interfaces/DragEvent.d.ts +0 -14
  130. package/dist/es/interfaces/DragEvent.js +0 -1
  131. package/dist/es/interfaces/GanttBaseProps.d.ts +0 -63
  132. package/dist/es/interfaces/GanttBaseProps.js +0 -1
  133. package/dist/es/interfaces/GanttCellProps.js +0 -1
  134. package/dist/es/interfaces/GanttColumnProps.d.ts +0 -36
  135. package/dist/es/interfaces/GanttColumnProps.js +0 -1
  136. package/dist/es/interfaces/GanttDependencyModelFields.d.ts +0 -25
  137. package/dist/es/interfaces/GanttDependencyModelFields.js +0 -1
  138. package/dist/es/interfaces/GanttFilterCellProps.d.ts +0 -6
  139. package/dist/es/interfaces/GanttFilterCellProps.js +0 -1
  140. package/dist/es/interfaces/GanttFilterOperator.d.ts +0 -6
  141. package/dist/es/interfaces/GanttFilterOperator.js +0 -1
  142. package/dist/es/interfaces/GanttHeaderCellProps.d.ts +0 -6
  143. package/dist/es/interfaces/GanttHeaderCellProps.js +0 -1
  144. package/dist/es/interfaces/GanttNoRecordsProps.d.ts +0 -10
  145. package/dist/es/interfaces/GanttNoRecordsProps.js +0 -1
  146. package/dist/es/interfaces/GanttProps.d.ts +0 -147
  147. package/dist/es/interfaces/GanttProps.js +0 -1
  148. package/dist/es/interfaces/GanttRowProps.js +0 -1
  149. package/dist/es/interfaces/GanttSelectableSettings.js +0 -2
  150. package/dist/es/interfaces/GanttSlotType.d.ts +0 -4
  151. package/dist/es/interfaces/GanttSlotType.js +0 -1
  152. package/dist/es/interfaces/GanttSortSettings.d.ts +0 -13
  153. package/dist/es/interfaces/GanttSortSettings.js +0 -19
  154. package/dist/es/interfaces/GanttTaskModelFields.js +0 -1
  155. package/dist/es/interfaces/GanttView.d.ts +0 -77
  156. package/dist/es/interfaces/GanttView.js +0 -1
  157. package/dist/es/interfaces/GanttViewTimelineHeaderCellProps.js +0 -1
  158. package/dist/es/interfaces/Rectangle.d.ts +0 -6
  159. package/dist/es/interfaces/Rectangle.js +0 -1
  160. package/dist/es/interfaces/Slot.d.ts +0 -12
  161. package/dist/es/interfaces/Slot.js +0 -1
  162. package/dist/es/interfaces/TaskModelFields.d.ts +0 -15
  163. package/dist/es/interfaces/TaskModelFields.js +0 -1
  164. package/dist/es/interfaces/events.d.ts +0 -294
  165. package/dist/es/interfaces/events.js +0 -84
  166. package/dist/es/main.d.ts +0 -26
  167. package/dist/es/main.js +0 -17
  168. package/dist/es/messages/index.js +0 -138
  169. package/dist/es/package-metadata.d.ts +0 -5
  170. package/dist/es/package-metadata.js +0 -11
  171. package/dist/es/rows/GanttRow.d.ts +0 -5
  172. package/dist/es/rows/GanttRow.js +0 -5
  173. package/dist/es/utils/data-operations.js +0 -319
  174. package/dist/es/utils/index.js +0 -455
  175. package/dist/es/views/GanttDayView.d.ts +0 -17
  176. package/dist/es/views/GanttDayView.js +0 -102
  177. package/dist/es/views/GanttMonthView.d.ts +0 -13
  178. package/dist/es/views/GanttMonthView.js +0 -78
  179. package/dist/es/views/GanttWeekView.js +0 -84
  180. package/dist/es/views/GanttYearView.d.ts +0 -13
  181. package/dist/es/views/GanttYearView.js +0 -70
  182. package/dist/npm/Gantt.js +0 -335
  183. package/dist/npm/GanttNoRecords.d.ts +0 -12
  184. package/dist/npm/GanttNoRecords.js +0 -40
  185. package/dist/npm/cells/FilterCells/GanttBooleanFilter.d.ts +0 -10
  186. package/dist/npm/cells/FilterCells/GanttBooleanFilter.js +0 -35
  187. package/dist/npm/cells/FilterCells/GanttDateFilter.js +0 -35
  188. package/dist/npm/cells/FilterCells/GanttNumericFilter.d.ts +0 -10
  189. package/dist/npm/cells/FilterCells/GanttNumericFilter.js +0 -35
  190. package/dist/npm/cells/FilterCells/GanttTextFilter.js +0 -35
  191. package/dist/npm/cells/FilterCells/utils.js +0 -70
  192. package/dist/npm/components/BaseView.js +0 -256
  193. package/dist/npm/components/GanttDependency.d.ts +0 -10
  194. package/dist/npm/components/GanttDependency.js +0 -60
  195. package/dist/npm/components/GanttTask.js +0 -167
  196. package/dist/npm/components/GanttTreelist.js +0 -610
  197. package/dist/npm/components/toolbar/AddButton.js +0 -50
  198. package/dist/npm/components/toolbar/Toolbar.js +0 -44
  199. package/dist/npm/components/toolbar/view-selector/ViewSelector.d.ts +0 -24
  200. package/dist/npm/components/toolbar/view-selector/ViewSelector.js +0 -41
  201. package/dist/npm/components/toolbar/view-selector/ViewSelectorItem.d.ts +0 -12
  202. package/dist/npm/components/toolbar/view-selector/ViewSelectorItem.js +0 -21
  203. package/dist/npm/components/toolbar/view-selector/ViewSelectorList.d.ts +0 -3
  204. package/dist/npm/components/toolbar/view-selector/ViewSelectorList.js +0 -45
  205. package/dist/npm/constants/index.js +0 -67
  206. package/dist/npm/context/GanttContext.d.ts +0 -121
  207. package/dist/npm/context/GanttContext.js +0 -121
  208. package/dist/npm/context/GanttViewContext.js +0 -38
  209. package/dist/npm/editors/FormAssingmentsEditor.d.ts +0 -5
  210. package/dist/npm/editors/FormAssingmentsEditor.js +0 -24
  211. package/dist/npm/editors/FormDateTimePicker.d.ts +0 -5
  212. package/dist/npm/editors/FormDateTimePicker.js +0 -49
  213. package/dist/npm/editors/FormInput.d.ts +0 -5
  214. package/dist/npm/editors/FormInput.js +0 -48
  215. package/dist/npm/editors/FormNumericTextBox.d.ts +0 -5
  216. package/dist/npm/editors/FormNumericTextBox.js +0 -48
  217. package/dist/npm/editors/GanttEditor.d.ts +0 -5
  218. package/dist/npm/editors/GanttEditor.js +0 -43
  219. package/dist/npm/editors/GanttForm.js +0 -76
  220. package/dist/npm/editors/GanttRemoveDialog.d.ts +0 -44
  221. package/dist/npm/editors/GanttRemoveDialog.js +0 -65
  222. package/dist/npm/hooks/useControlledState.d.ts +0 -4
  223. package/dist/npm/hooks/useControlledState.js +0 -27
  224. package/dist/npm/hooks/useDictionaryStore.d.ts +0 -18
  225. package/dist/npm/hooks/useDictionaryStore.js +0 -28
  226. package/dist/npm/hooks/useGanttTask.d.ts +0 -4
  227. package/dist/npm/hooks/useGanttTask.js +0 -31
  228. package/dist/npm/interfaces/AddDirection.d.ts +0 -6
  229. package/dist/npm/interfaces/AddDirection.js +0 -2
  230. package/dist/npm/interfaces/DataAction.d.ts +0 -25
  231. package/dist/npm/interfaces/DataAction.js +0 -12
  232. package/dist/npm/interfaces/DataItem.d.ts +0 -6
  233. package/dist/npm/interfaces/DataItem.js +0 -2
  234. package/dist/npm/interfaces/DateRange.d.ts +0 -8
  235. package/dist/npm/interfaces/DateRange.js +0 -2
  236. package/dist/npm/interfaces/DependencyModelFields.d.ts +0 -25
  237. package/dist/npm/interfaces/DependencyModelFields.js +0 -2
  238. package/dist/npm/interfaces/DragEvent.d.ts +0 -14
  239. package/dist/npm/interfaces/DragEvent.js +0 -2
  240. package/dist/npm/interfaces/GanttBaseProps.js +0 -2
  241. package/dist/npm/interfaces/GanttCellProps.d.ts +0 -42
  242. package/dist/npm/interfaces/GanttCellProps.js +0 -2
  243. package/dist/npm/interfaces/GanttColumnProps.js +0 -2
  244. package/dist/npm/interfaces/GanttDependencyModelFields.js +0 -2
  245. package/dist/npm/interfaces/GanttFilterCellProps.d.ts +0 -6
  246. package/dist/npm/interfaces/GanttFilterCellProps.js +0 -2
  247. package/dist/npm/interfaces/GanttFilterOperator.d.ts +0 -6
  248. package/dist/npm/interfaces/GanttFilterOperator.js +0 -2
  249. package/dist/npm/interfaces/GanttHeaderCellProps.d.ts +0 -6
  250. package/dist/npm/interfaces/GanttHeaderCellProps.js +0 -2
  251. package/dist/npm/interfaces/GanttNoRecordsProps.d.ts +0 -10
  252. package/dist/npm/interfaces/GanttNoRecordsProps.js +0 -2
  253. package/dist/npm/interfaces/GanttProps.js +0 -2
  254. package/dist/npm/interfaces/GanttRowProps.d.ts +0 -92
  255. package/dist/npm/interfaces/GanttRowProps.js +0 -2
  256. package/dist/npm/interfaces/GanttSelectableSettings.d.ts +0 -18
  257. package/dist/npm/interfaces/GanttSelectableSettings.js +0 -3
  258. package/dist/npm/interfaces/GanttSlotType.d.ts +0 -4
  259. package/dist/npm/interfaces/GanttSlotType.js +0 -2
  260. package/dist/npm/interfaces/GanttSortSettings.d.ts +0 -13
  261. package/dist/npm/interfaces/GanttSortSettings.js +0 -23
  262. package/dist/npm/interfaces/GanttTaskModelFields.d.ts +0 -55
  263. package/dist/npm/interfaces/GanttTaskModelFields.js +0 -2
  264. package/dist/npm/interfaces/GanttView.js +0 -2
  265. package/dist/npm/interfaces/GanttViewTimelineHeaderCellProps.d.ts +0 -19
  266. package/dist/npm/interfaces/GanttViewTimelineHeaderCellProps.js +0 -2
  267. package/dist/npm/interfaces/Rectangle.d.ts +0 -6
  268. package/dist/npm/interfaces/Rectangle.js +0 -2
  269. package/dist/npm/interfaces/Slot.d.ts +0 -12
  270. package/dist/npm/interfaces/Slot.js +0 -2
  271. package/dist/npm/interfaces/TaskModelFields.d.ts +0 -15
  272. package/dist/npm/interfaces/TaskModelFields.js +0 -2
  273. package/dist/npm/interfaces/events.js +0 -85
  274. package/dist/npm/main.d.ts +0 -26
  275. package/dist/npm/main.js +0 -46
  276. package/dist/npm/messages/index.d.ts +0 -137
  277. package/dist/npm/messages/index.js +0 -141
  278. package/dist/npm/package-metadata.d.ts +0 -5
  279. package/dist/npm/package-metadata.js +0 -14
  280. package/dist/npm/rows/GanttRow.d.ts +0 -5
  281. package/dist/npm/rows/GanttRow.js +0 -8
  282. package/dist/npm/utils/data-operations.d.ts +0 -43
  283. package/dist/npm/utils/data-operations.js +0 -326
  284. package/dist/npm/utils/index.d.ts +0 -178
  285. package/dist/npm/utils/index.js +0 -485
  286. package/dist/npm/views/GanttDayView.js +0 -105
  287. package/dist/npm/views/GanttMonthView.js +0 -81
  288. package/dist/npm/views/GanttWeekView.d.ts +0 -13
  289. package/dist/npm/views/GanttWeekView.js +0 -87
  290. package/dist/npm/views/GanttYearView.js +0 -73
  291. package/dist/systemjs/kendo-react-gantt.js +0 -1
  292. package/e2e-next/gantt.basic.tests.ts +0 -24
@@ -1,35 +0,0 @@
1
- "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __rest = (this && this.__rest) || function (s, e) {
14
- var t = {};
15
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
- t[p] = s[p];
17
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
- t[p[i]] = s[p[i]];
21
- }
22
- return t;
23
- };
24
- Object.defineProperty(exports, "__esModule", { value: true });
25
- exports.GanttNumericFilter = void 0;
26
- var React = require("react");
27
- var kendo_react_data_tools_1 = require("@progress/kendo-react-data-tools");
28
- var utils_1 = require("./utils");
29
- var kendo_react_intl_1 = require("@progress/kendo-react-intl");
30
- var GanttNumericFilter = function (props) {
31
- var operators = props.operators, restProps = __rest(props, ["operators"]);
32
- return (React.createElement(kendo_react_data_tools_1.NumericFilterCell, __assign({ ariaLabel: 'numeric filter' }, (0, utils_1.localizeFilter)((0, kendo_react_intl_1.useLocalization)(), operators || utils_1.numericFilterOperators), restProps)));
33
- };
34
- exports.GanttNumericFilter = GanttNumericFilter;
35
- exports.GanttNumericFilter.displayName = 'KendoReactGanttNumericFilter';
@@ -1,35 +0,0 @@
1
- "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __rest = (this && this.__rest) || function (s, e) {
14
- var t = {};
15
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
- t[p] = s[p];
17
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
- t[p[i]] = s[p[i]];
21
- }
22
- return t;
23
- };
24
- Object.defineProperty(exports, "__esModule", { value: true });
25
- exports.GanttTextFilter = void 0;
26
- var React = require("react");
27
- var kendo_react_data_tools_1 = require("@progress/kendo-react-data-tools");
28
- var utils_1 = require("./utils");
29
- var kendo_react_intl_1 = require("@progress/kendo-react-intl");
30
- var GanttTextFilter = function (props) {
31
- var operators = props.operators, restProps = __rest(props, ["operators"]);
32
- return (React.createElement(kendo_react_data_tools_1.TextFilterCell, __assign({ ariaLabel: 'text filter' }, (0, utils_1.localizeFilter)((0, kendo_react_intl_1.useLocalization)(), operators || utils_1.textFilterOperators), restProps)));
33
- };
34
- exports.GanttTextFilter = GanttTextFilter;
35
- exports.GanttTextFilter.displayName = 'KendoReactGanttTextFilter';
@@ -1,70 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.localizeFilter = exports.booleanFilterValues = exports.booleanOperator = exports.dateFilterOperators = exports.numericFilterOperators = exports.textFilterOperators = void 0;
4
- var messages = require("../../messages");
5
- /**
6
- * @hidden
7
- */
8
- exports.textFilterOperators = [
9
- { text: messages.filterContainsOperator, operator: 'contains' },
10
- { text: messages.filterNotContainsOperator, operator: 'doesnotcontain' },
11
- { text: messages.filterEqOperator, operator: 'eq' },
12
- { text: messages.filterNotEqOperator, operator: 'neq' },
13
- { text: messages.filterStartsWithOperator, operator: 'startswith' },
14
- { text: messages.filterEndsWithOperator, operator: 'endswith' },
15
- { text: messages.filterIsNullOperator, operator: 'isnull' },
16
- { text: messages.filterIsNotNullOperator, operator: 'isnotnull' },
17
- { text: messages.filterIsEmptyOperator, operator: 'isempty' },
18
- { text: messages.filterIsNotEmptyOperator, operator: 'isnotempty' }
19
- ];
20
- /**
21
- * @hidden
22
- */
23
- exports.numericFilterOperators = [
24
- { text: messages.filterEqOperator, operator: 'eq' },
25
- { text: messages.filterNotEqOperator, operator: 'neq' },
26
- { text: messages.filterGteOperator, operator: 'gte' },
27
- { text: messages.filterGtOperator, operator: 'gt' },
28
- { text: messages.filterLteOperator, operator: 'lte' },
29
- { text: messages.filterLtOperator, operator: 'lt' },
30
- { text: messages.filterIsNullOperator, operator: 'isnull' },
31
- { text: messages.filterIsNotNullOperator, operator: 'isnotnull' }
32
- ];
33
- /**
34
- * @hidden
35
- */
36
- exports.dateFilterOperators = [
37
- { text: messages.filterEqOperator, operator: 'eq' },
38
- { text: messages.filterNotEqOperator, operator: 'neq' },
39
- { text: messages.filterAfterOrEqualOperator, operator: 'gte' },
40
- { text: messages.filterAfterOperator, operator: 'gt' },
41
- { text: messages.filterBeforeOperator, operator: 'lt' },
42
- { text: messages.filterBeforeOrEqualOperator, operator: 'lte' },
43
- { text: messages.filterIsNullOperator, operator: 'isnull' },
44
- { text: messages.filterIsNotNullOperator, operator: 'isnotnull' }
45
- ];
46
- /**
47
- * @hidden
48
- */
49
- exports.booleanOperator = 'eq';
50
- /**
51
- * @hidden
52
- */
53
- exports.booleanFilterValues = [
54
- { text: messages.filterBooleanAll, operator: '' },
55
- { text: messages.filterIsTrue, operator: true },
56
- { text: messages.filterIsFalse, operator: false }
57
- ];
58
- /**
59
- * @hidden
60
- */
61
- function localizeFilter(localization, operators) {
62
- return {
63
- clearButtonTitle: localization.toLanguageString(messages.filterClearButton, messages.messages[messages.filterClearButton]),
64
- operators: operators.map(function (operator) { return ({
65
- text: localization.toLanguageString(operator.text, messages.messages[operator.text]),
66
- operator: operator.operator
67
- }); })
68
- };
69
- }
70
- exports.localizeFilter = localizeFilter;
@@ -1,256 +0,0 @@
1
- "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
14
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
15
- if (ar || !(i in from)) {
16
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
17
- ar[i] = from[i];
18
- }
19
- }
20
- return to.concat(ar || Array.prototype.slice.call(from));
21
- };
22
- Object.defineProperty(exports, "__esModule", { value: true });
23
- exports.BaseView = void 0;
24
- var React = require("react");
25
- var GanttContext_1 = require("./../context/GanttContext");
26
- var GanttViewContext_1 = require("../context/GanttViewContext");
27
- var GanttTask_1 = require("./GanttTask");
28
- var useDictionaryStore_1 = require("../hooks/useDictionaryStore");
29
- var GanttDependency_1 = require("./GanttDependency");
30
- var utils_1 = require("../utils");
31
- var kendo_react_data_tools_1 = require("@progress/kendo-react-data-tools");
32
- var constants_1 = require("../constants");
33
- var GanttTreelist_1 = require("./GanttTreelist");
34
- var kendo_react_common_1 = require("@progress/kendo-react-common");
35
- exports.BaseView = React.forwardRef(function (props, ref) {
36
- var slotLevels = props.slotLevels, slotWidth = props.slotWidth, timelineHeaderCell = props.timelineHeaderCell;
37
- var _a = (0, GanttContext_1.useGanttPropsContext)(), columns = _a.columns, noRecords = _a.noRecords, resizable = _a.resizable, reorderable = _a.reorderable, sortable = _a.sortable, sort = _a.sort, filter = _a.filter, columnMenuFilter = _a.columnMenuFilter, columnMenu = _a.columnMenu, navigatable = _a.navigatable, row = _a.row, selectable = _a.selectable;
38
- var _b = (0, GanttContext_1.useGanttEventsContext)(), onDataStateChange = _b.onDataStateChange, onSortChange = _b.onSortChange, onFilterChange = _b.onFilterChange, onColumnMenuFilterChange = _b.onColumnMenuFilterChange, onExpandChange = _b.onExpandChange, onRowClick = _b.onRowClick, onRowDoubleClick = _b.onRowDoubleClick, onRowContextMenu = _b.onRowContextMenu, onColumnResize = _b.onColumnResize, onColumnReorder = _b.onColumnReorder, onDependencyCreate = _b.onDependencyCreate, onKeyDown = _b.onKeyDown, onSelectionChange = _b.onSelectionChange, onHeaderSelectionChange = _b.onHeaderSelectionChange;
39
- var rowHeight = (0, GanttContext_1.useGanttRowHeightContext)();
40
- var toolbarHeight = (0, GanttContext_1.useGanttToolbarHeightContext)();
41
- var taskModelFields = (0, GanttContext_1.useGanttTaskModelFieldsContext)();
42
- var dependencyModelFields = (0, GanttContext_1.useGanttDependencyModelFieldsContext)();
43
- var tasksData = (0, GanttContext_1.useGanttTaskDataContext)();
44
- var dependenciesData = (0, GanttContext_1.useGanttDependencyDataContext)();
45
- var timelineHeaderRef = React.useRef(null);
46
- var timelineContentRef = React.useRef(null);
47
- var treelistRef = React.useRef(null);
48
- var timelineSvgRef = React.useRef(null);
49
- var svgLeftRef = React.useRef(0);
50
- var idPrefixRef = React.useRef((0, kendo_react_common_1.guid)());
51
- var contentRef = React.useRef(null);
52
- var baseViewRef = React.useRef(null);
53
- var scrollIntoView = React.useCallback(function (options) {
54
- if (treelistRef.current) {
55
- treelistRef.current.scrollIntoView(options);
56
- }
57
- }, []);
58
- React.useImperativeHandle(baseViewRef, function () { return ({ scrollIntoView: scrollIntoView }); });
59
- React.useImperativeHandle(ref, function () { return baseViewRef.current; });
60
- var initialXRef = React.useRef(0);
61
- var initialYRef = React.useRef(0);
62
- var offsetXRef = React.useRef(0);
63
- var offsetYRef = React.useRef(0);
64
- var startIdRef = React.useRef(null);
65
- var startDirectionRef = React.useRef(null);
66
- var _c = React.useState(null), coordinates = _c[0], setCoordinates = _c[1];
67
- var timelineHeader = (0, utils_1.getTimelineHeader)(slotLevels, timelineHeaderRef, timelineHeaderCell);
68
- var timelineContent = (0, utils_1.getTimelineContent)(slotLevels, timelineContentRef);
69
- var timelineWidth = (0, utils_1.getTimelineWidth)(slotLevels, slotWidth);
70
- var _d = React.useMemo(function () {
71
- var extendedCols = (0, kendo_react_data_tools_1.readColumns)(__spreadArray(__spreadArray([], columns, true), [
72
- {
73
- title: '',
74
- sortable: false,
75
- resizable: false,
76
- reorderable: false,
77
- width: timelineWidth,
78
- headerCell: function () { return timelineHeader; },
79
- cell: GanttTask_1.GanttTask,
80
- orderIndex: Number.MAX_SAFE_INTEGER,
81
- navigatable: false
82
- }
83
- ], false), { prevId: 0, idPrefix: idPrefixRef.current });
84
- var columnsWidthSum = 0;
85
- extendedCols.forEach(function (column, index, array) {
86
- var isLast = index + 1 === array.length;
87
- var isLeaf = column.children.length === 0;
88
- if (!isLast) {
89
- column.locked = true;
90
- if (isLeaf) {
91
- column.width = column.width || constants_1.DEFAULT_COLUMN_WIDTH;
92
- }
93
- }
94
- else {
95
- column.isAccessible = false;
96
- }
97
- if (isLeaf) {
98
- columnsWidthSum += parseFloat(String(column.width));
99
- }
100
- });
101
- return {
102
- extendedColumns: extendedCols,
103
- columnsWidth: columnsWidthSum,
104
- columnsMap: (0, kendo_react_data_tools_1.mapColumns)(extendedCols)
105
- };
106
- }, [columns, timelineWidth]), extendedColumns = _d.extendedColumns, columnsWidth = _d.columnsWidth, columnsMap = _d.columnsMap;
107
- var _e = (0, useDictionaryStore_1.useDictionaryStore)(), tasksStore = _e[0], dispatchTaskRef = _e[1];
108
- var getTimelineHeaderElement = React.useCallback(function () { return timelineHeaderRef.current && timelineHeaderRef.current.parentElement; }, []);
109
- var positionTimelineContent = function () {
110
- var timelineHeaderElement = getTimelineHeaderElement();
111
- var timelineContentElement = timelineContentRef.current;
112
- var treelistTbodyElement = treelistRef.current && treelistRef.current.tbodyElement;
113
- if (!timelineHeaderElement || !timelineContentElement || !treelistTbodyElement) {
114
- return;
115
- }
116
- var contentTop = treelistTbodyElement.offsetTop;
117
- var contentLeft = timelineHeaderElement.offsetLeft;
118
- var contentWidth = timelineWidth;
119
- timelineContentElement.style.top = contentTop + 'px';
120
- timelineContentElement.style.left = contentLeft + 'px';
121
- timelineContentElement.style.width = contentWidth + 'px';
122
- timelineContentElement.style.height = treelistTbodyElement.offsetHeight + 'px';
123
- };
124
- var getSvgLeft = function () {
125
- var timelineHeaderElement = getTimelineHeaderElement();
126
- if (!timelineHeaderElement) {
127
- return;
128
- }
129
- // Better be extracted as ColumnResizeStart event
130
- svgLeftRef.current = timelineHeaderElement.offsetLeft;
131
- };
132
- React.useEffect(positionTimelineContent);
133
- React.useEffect(getSvgLeft);
134
- var onColumnResizeHandler = React.useCallback(function (event) {
135
- if (!timelineSvgRef.current) {
136
- return;
137
- }
138
- var currentColumns = event.columns.slice(0, event.columns.length - 1);
139
- if (event.end) {
140
- timelineSvgRef.current.style.left = '0px';
141
- }
142
- else {
143
- var timelineHeaderElement = getTimelineHeaderElement();
144
- if (!timelineHeaderElement) {
145
- return;
146
- }
147
- timelineSvgRef.current.style.left = timelineHeaderElement.offsetLeft - svgLeftRef.current + 'px';
148
- positionTimelineContent();
149
- }
150
- onColumnResize(__assign(__assign({}, event), { columns: currentColumns }));
151
- }, [onColumnResize]);
152
- var onColumnReorderHandler = React.useCallback(function (event) {
153
- var currentColumns = event.columns.slice(0, event.columns.length - 1);
154
- onColumnReorder(__assign(__assign({}, event), { columns: currentColumns }));
155
- }, [onColumnResize]);
156
- var handleDependencyHandlePress = React.useCallback(function (dragEvent) {
157
- var ownerDocument = contentRef.current && contentRef.current.ownerDocument ? contentRef.current.ownerDocument : document;
158
- var targetElement = ownerDocument.elementFromPoint(dragEvent.clientX, dragEvent.clientY);
159
- var contentElement = contentRef.current;
160
- if (!targetElement || !targetElement.parentElement || !contentElement) {
161
- return;
162
- }
163
- var ganttWrapperElement = contentElement.parentElement;
164
- var scrollableContainer = contentElement.firstElementChild;
165
- if (!ganttWrapperElement || !scrollableContainer) {
166
- return;
167
- }
168
- var dragDirection = targetElement.getAttribute(constants_1.DEPENDENCY_DRAG_HANDLE);
169
- if (dragDirection) {
170
- var contentOffsetTop = contentElement.offsetTop;
171
- var contentOffsetLeft = contentElement.offsetLeft;
172
- var ganttOffsetTop = ganttWrapperElement.offsetTop;
173
- var ganttOffsetLeft = ganttWrapperElement.offsetLeft;
174
- var scrollTop = scrollableContainer.scrollTop;
175
- var scrollLeft = scrollableContainer.scrollLeft;
176
- offsetXRef.current = contentOffsetLeft + ganttOffsetLeft;
177
- offsetYRef.current = contentOffsetTop + ganttOffsetTop;
178
- initialXRef.current = dragEvent.clientX - offsetXRef.current + scrollLeft;
179
- initialYRef.current = dragEvent.clientY - offsetYRef.current + scrollTop;
180
- startIdRef.current = targetElement.parentElement.getAttribute(constants_1.TASK_ID_ATT);
181
- startDirectionRef.current = dragDirection;
182
- }
183
- }, []);
184
- var handleDependencyHandleDrag = React.useCallback(function (dragEvent) {
185
- var contentElement = contentRef.current;
186
- if (!contentElement) {
187
- return;
188
- }
189
- var scrollableContainer = contentElement.firstElementChild;
190
- if (!scrollableContainer) {
191
- return;
192
- }
193
- var scrollTop = scrollableContainer.scrollTop;
194
- var scrollLeft = scrollableContainer.scrollLeft;
195
- var endX = dragEvent.clientX - offsetXRef.current + scrollLeft;
196
- var endY = dragEvent.clientY - offsetYRef.current + scrollTop;
197
- if (Math.abs(initialXRef.current - endX) < 10 && Math.abs(initialYRef.current - endY) < 10) {
198
- return;
199
- }
200
- setCoordinates({
201
- startX: initialXRef.current,
202
- startY: initialYRef.current,
203
- endX: endX,
204
- endY: endY
205
- });
206
- }, []);
207
- var handleDependencyHandleRelease = React.useCallback(function (dragEvent) {
208
- var ownerDocument = contentRef.current && contentRef.current.ownerDocument ? contentRef.current.ownerDocument : document;
209
- var targetElement = ownerDocument.elementFromPoint(dragEvent.clientX, dragEvent.clientY);
210
- if (!targetElement || !targetElement.parentElement) {
211
- return;
212
- }
213
- var currentId = targetElement.parentElement.getAttribute(constants_1.TASK_ID_ATT);
214
- var currentDragDirection = targetElement.getAttribute(constants_1.DEPENDENCY_DRAG_HANDLE);
215
- if (currentDragDirection && currentId !== startIdRef.current) {
216
- if (onDependencyCreate) {
217
- // 0 - Finish-Finish
218
- // 1 - Finish-Start`
219
- // 2 - Start-Finish
220
- // 3 - Start-Start`
221
- var dependencyType = void 0;
222
- if (startDirectionRef.current === 'start') {
223
- dependencyType = currentDragDirection === 'start' ? 3 : 2;
224
- }
225
- else {
226
- dependencyType = currentDragDirection === 'start' ? 1 : 0;
227
- }
228
- onDependencyCreate({
229
- fromId: startIdRef.current,
230
- toId: currentId,
231
- type: dependencyType
232
- });
233
- }
234
- }
235
- initialXRef.current = 0;
236
- initialYRef.current = 0;
237
- offsetXRef.current = 0;
238
- offsetYRef.current = 0;
239
- startIdRef.current = null;
240
- startDirectionRef.current = null;
241
- setCoordinates(null);
242
- }, [onDependencyCreate, setCoordinates]);
243
- return (React.createElement(GanttViewContext_1.GanttViewContext, { tasksStore: [tasksStore, dispatchTaskRef], timelineWidth: timelineWidth, dependencyDrag: {
244
- isEnabled: Boolean(onDependencyCreate),
245
- draggedId: startIdRef.current,
246
- onDependencyHandlePress: handleDependencyHandlePress,
247
- onDependencyHandleDrag: handleDependencyHandleDrag,
248
- onDependencyHandleRelease: handleDependencyHandleRelease
249
- } },
250
- React.createElement("div", { className: 'k-gantt-content', ref: contentRef, style: { height: "calc(100% - ".concat(toolbarHeight, "px)") } },
251
- React.createElement(GanttTreelist_1.GanttTreeList, { ref: treelistRef, extendedColumns: extendedColumns, columnsMap: columnsMap, dataItemKey: taskModelFields.id, data: tasksData, idPrefix: idPrefixRef.current, navigatable: navigatable, expandField: taskModelFields.isExpanded, subItemsField: taskModelFields.children, editField: taskModelFields.isInEdit, selectedField: taskModelFields.isSelected, onDataStateChange: onDataStateChange, onSortChange: onSortChange, onFilterChange: onFilterChange, onExpandChange: onExpandChange, onRowClick: onRowClick, onRowDoubleClick: onRowDoubleClick, onRowContextMenu: onRowContextMenu, onColumnResize: onColumnResizeHandler, onColumnReorder: onColumnReorderHandler, onColumnMenuFilterChange: onColumnMenuFilterChange, onKeyDown: onKeyDown, onSelectionChange: onSelectionChange, onHeaderSelectionChange: onHeaderSelectionChange, tableProps: { style: { width: columnsWidth }, className: 'k-table k-table-md k-table-layout-fixed' }, noRecords: noRecords, rowHeight: rowHeight, resizable: resizable, reorderable: reorderable, sortable: sortable, sort: sort, filter: filter, columnMenuFilter: columnMenuFilter, columnMenu: columnMenu, row: row, selectable: selectable, afterContent: (React.createElement(React.Fragment, null,
252
- React.createElement("svg", { className: 'k-gantt-dependencies-svg', ref: timelineSvgRef, style: { left: 0, top: 0 } }, dependenciesData.map(function (dependency) { return React.createElement(GanttDependency_1.GanttDependency, { key: (0, kendo_react_common_1.getter)(dependencyModelFields.id)(dependency), dependency: dependency }); })),
253
- React.createElement("svg", { className: 'k-gantt-dependencies-svg', style: { left: 0, top: 0, zIndex: 3 } }, coordinates && (React.createElement("polyline", { points: "".concat(coordinates.startX, ",").concat(coordinates.startY, " ").concat(coordinates.endX, ",").concat(coordinates.endY) }))),
254
- tasksData && tasksData.length ? timelineContent : null)) }))));
255
- });
256
- exports.BaseView.displayName = 'KendoReactGanttBaseView';
@@ -1,10 +0,0 @@
1
- /// <reference types="react" />
2
- /** @hidden */
3
- export interface GanttDependencyProps {
4
- dependency: any;
5
- }
6
- /** @hidden */
7
- export declare const GanttDependency: {
8
- (props: GanttDependencyProps): JSX.Element;
9
- displayName: string;
10
- };
@@ -1,60 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GanttDependency = void 0;
4
- var React = require("react");
5
- var GanttContext_1 = require("./../context/GanttContext");
6
- var utils_1 = require("../utils");
7
- var kendo_react_common_1 = require("@progress/kendo-react-common");
8
- var GanttViewContext_1 = require("../context/GanttViewContext");
9
- /** @hidden */
10
- var GanttDependency = function (props) {
11
- var dependency = props.dependency;
12
- var tasksStore = (0, GanttViewContext_1.useGanttViewTasksContext)()[0];
13
- var element = React.useRef(null);
14
- var dependencyModelFields = (0, GanttContext_1.useGanttDependencyModelFieldsContext)();
15
- var rowHeight = (0, GanttContext_1.useGanttRowHeightContext)();
16
- var _a = React.useState(false), display = _a[0], setDisplay = _a[1];
17
- var drawCanvas = function () {
18
- if (element.current === null || tasksStore.current === null) {
19
- setDisplay(false);
20
- return;
21
- }
22
- var fromId = tasksStore.current[(0, kendo_react_common_1.getter)(dependencyModelFields.fromId)(dependency)];
23
- var toId = tasksStore.current[(0, kendo_react_common_1.getter)(dependencyModelFields.toId)(dependency)];
24
- if (!fromId || !toId) {
25
- setDisplay(false);
26
- return;
27
- }
28
- var fromElement = fromId.element;
29
- var toElement = toId.element;
30
- if (!fromElement || !toElement) {
31
- setDisplay(false);
32
- return;
33
- }
34
- if (display === false) {
35
- setDisplay(true);
36
- return; // avoid calculating coordinates twice
37
- }
38
- var fromCoordinates = {
39
- top: fromElement.offsetTop + (fromElement.offsetHeight / 2),
40
- start: fromElement.offsetLeft,
41
- end: fromElement.offsetLeft + fromElement.offsetWidth
42
- };
43
- var toCoordinates = {
44
- top: toElement.offsetTop + (toElement.offsetHeight / 2),
45
- start: toElement.offsetLeft,
46
- end: toElement.offsetLeft + toElement.offsetWidth
47
- };
48
- var type = (0, kendo_react_common_1.getter)(dependencyModelFields.type)(dependency);
49
- var points = (0, utils_1.dependencyCoordinates)(fromCoordinates, toCoordinates, rowHeight, type);
50
- if (points && points.length) {
51
- element.current.setAttribute('points', points.map(function (point) { return "".concat(point.left, ",").concat(point.top); }).join(' '));
52
- }
53
- };
54
- React.useEffect(drawCanvas);
55
- return (React.createElement("polyline", { ref: element, style: {
56
- display: display ? undefined : 'none'
57
- } }));
58
- };
59
- exports.GanttDependency = GanttDependency;
60
- exports.GanttDependency.displayName = 'KendoReactGanttDependency';
@@ -1,167 +0,0 @@
1
- "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.GanttTask = void 0;
15
- var React = require("react");
16
- var GanttContext_1 = require("./../context/GanttContext");
17
- var utils_1 = require("../utils");
18
- var kendo_react_common_1 = require("@progress/kendo-react-common");
19
- var kendo_svg_icons_1 = require("@progress/kendo-svg-icons");
20
- var GanttViewContext_1 = require("../context/GanttViewContext");
21
- var useGanttTask_1 = require("../hooks/useGanttTask");
22
- var constants_1 = require("../constants");
23
- /** @hidden */
24
- exports.GanttTask = React.forwardRef(function (props, ref) {
25
- var _a, _b;
26
- var range = (0, GanttContext_1.useGanttDateRangeContext)();
27
- var taskModelFields = (0, GanttContext_1.useGanttTaskModelFieldsContext)();
28
- var timelineWidth = (0, GanttViewContext_1.useGanttViewTimelineWidthContext)();
29
- var dependencyDrag = (0, GanttViewContext_1.useGanttViewDependencyDragContext)();
30
- var taskEvents = (0, GanttContext_1.useGanttTaskEventsContext)();
31
- var taskElementRef = React.useRef(null);
32
- var completeElementRef = React.useRef(null);
33
- (0, useGanttTask_1.useGanttTask)(props.dataItem, (0, kendo_react_common_1.getter)(taskModelFields.id)(props.dataItem), ref, taskElementRef);
34
- var slotElementRef = React.useRef(null);
35
- var taskId = (0, kendo_react_common_1.getter)(taskModelFields.id)(props.dataItem);
36
- var taskStart = (0, kendo_react_common_1.getter)(taskModelFields.start)(props.dataItem);
37
- var taskEnd = (0, kendo_react_common_1.getter)(taskModelFields.end)(props.dataItem);
38
- var taskTitle = (0, kendo_react_common_1.getter)(taskModelFields.title)(props.dataItem);
39
- var percentComplete = (0, kendo_react_common_1.getter)(taskModelFields.percentComplete)(props.dataItem);
40
- var taskChildren = (0, kendo_react_common_1.getter)(taskModelFields.children)(props.dataItem);
41
- var taskSelected = (0, kendo_react_common_1.getter)(taskModelFields.isSelected)(props.dataItem);
42
- var taskStartTime = taskStart && taskStart.getTime();
43
- var taskEndTime = taskEnd && taskEnd.getTime();
44
- var isSummaryTask = taskChildren && taskChildren.length;
45
- var isMilestone = !isSummaryTask && taskStartTime === taskEndTime;
46
- var display = taskStartTime && taskEndTime && (0, utils_1.isInRange)(range.start, range.end, taskStart, taskEnd);
47
- var _c = React.useState(false), visible = _c[0], setVisible = _c[1];
48
- var dependencyStartElementRef = React.useRef(null);
49
- var dependencyEndElementRef = React.useRef(null);
50
- (0, kendo_react_common_1.useDraggable)(dependencyStartElementRef, {
51
- onPress: dependencyDrag.onDependencyHandlePress,
52
- onDrag: dependencyDrag.onDependencyHandleDrag,
53
- onRelease: dependencyDrag.onDependencyHandleRelease
54
- });
55
- (0, kendo_react_common_1.useDraggable)(dependencyEndElementRef, {
56
- onPress: dependencyDrag.onDependencyHandlePress,
57
- onDrag: dependencyDrag.onDependencyHandleDrag,
58
- onRelease: dependencyDrag.onDependencyHandleRelease
59
- });
60
- var onClickHandler = React.useCallback(function (event) {
61
- if (taskEvents.onTaskClick) {
62
- taskEvents.onTaskClick({
63
- dataItem: props.dataItem,
64
- level: props.level,
65
- nativeEvent: event && event.nativeEvent,
66
- syntheticEvent: event,
67
- target: null
68
- });
69
- }
70
- }, [props.dataItem, props.level]);
71
- var onDoubleClickHandler = React.useCallback(function (event) {
72
- if (taskEvents.onTaskDoubleClick) {
73
- taskEvents.onTaskDoubleClick({
74
- dataItem: props.dataItem,
75
- level: props.level,
76
- nativeEvent: event && event.nativeEvent,
77
- syntheticEvent: event,
78
- target: null
79
- });
80
- }
81
- }, [props.dataItem, props.level]);
82
- var onContextMenuHandler = React.useCallback(function (event) {
83
- if (taskEvents.onTaskContextMenu) {
84
- taskEvents.onTaskContextMenu({
85
- dataItem: props.dataItem,
86
- level: props.level,
87
- nativeEvent: event && event.nativeEvent,
88
- syntheticEvent: event,
89
- target: null
90
- });
91
- }
92
- }, [props.dataItem, props.level]);
93
- var onRemoveHandler = React.useCallback(function (event) {
94
- if (taskEvents.onTaskRemoveClick) {
95
- taskEvents.onTaskRemoveClick({
96
- dataItem: props.dataItem,
97
- level: props.level,
98
- nativeEvent: event && event.nativeEvent,
99
- syntheticEvent: event,
100
- target: null
101
- });
102
- }
103
- }, [props.dataItem, props.level]);
104
- var position = React.useCallback(function () {
105
- var slotStart = range.start;
106
- var slotEnd = range.end;
107
- var slotElement = slotElementRef.current;
108
- var taskElement = taskElementRef.current;
109
- var completeElement = completeElementRef.current;
110
- if (!display || slotElement === null || taskElement === null) {
111
- return;
112
- }
113
- var pxPerMillisecond = slotElement.clientWidth / (slotEnd.getTime() - slotStart.getTime());
114
- var left = (taskStart.getTime() - slotStart.getTime()) * pxPerMillisecond;
115
- var width = (taskEnd.getTime() - taskStart.getTime()) * pxPerMillisecond;
116
- var top = (slotElement.offsetHeight - taskElement.offsetHeight) / 2;
117
- taskElement.style.left = "".concat(Math.round(isMilestone ? left - constants_1.MILESTONE_OFFSET : left), "px");
118
- taskElement.style.top = "".concat(Math.round(top), "px");
119
- if (!isMilestone) {
120
- taskElement.style.width = "".concat(Math.round(width), "px");
121
- if (completeElement !== null) {
122
- completeElement.style.width = "".concat(Math.round(width * (percentComplete || 0)), "px");
123
- }
124
- }
125
- setVisible(true);
126
- }, [range.start.getTime(), range.end.getTime(), taskStartTime, taskEndTime, display, percentComplete, timelineWidth]);
127
- React.useEffect(position, [position]);
128
- var taskStyles = {
129
- visibility: visible ? undefined : 'hidden',
130
- display: display ? undefined : 'none'
131
- };
132
- var dependencyDragStyles = {
133
- userSelect: 'none',
134
- display: dependencyDrag.draggedId === String(taskId) ? 'block' : undefined
135
- };
136
- return (React.createElement("td", { ref: slotElementRef, key: taskId, role: 'presentation' }, isMilestone ?
137
- (React.createElement("div", __assign({ "aria-hidden": true, className: (0, kendo_react_common_1.classNames)({
138
- 'k-task': true,
139
- 'k-task-milestone': true,
140
- 'k-selected': taskSelected && !Array.isArray(taskSelected)
141
- }), style: taskStyles, ref: taskElementRef }, (_a = {}, _a[constants_1.TASK_ID_ATT] = taskId, _a), { onClick: onClickHandler, onDoubleClick: onDoubleClickHandler, onContextMenu: onContextMenuHandler }),
142
- React.createElement("div", { className: 'k-task-milestone-content' }),
143
- dependencyDrag.isEnabled &&
144
- (React.createElement("div", __assign({ className: 'k-task-dot k-task-start', ref: dependencyStartElementRef, style: dependencyDragStyles }, constants_1.DEPENDENCY_DRAG_HANDLE_START_ATT))),
145
- dependencyDrag.isEnabled &&
146
- (React.createElement("div", __assign({ className: 'k-task-dot k-task-end', ref: dependencyEndElementRef, style: dependencyDragStyles }, constants_1.DEPENDENCY_DRAG_HANDLE_FINISH_ATT))))) :
147
- (React.createElement("div", __assign({ "aria-hidden": true, className: (0, kendo_react_common_1.classNames)({
148
- 'k-task': true,
149
- 'k-task-summary': isSummaryTask,
150
- 'k-task-single': !isSummaryTask,
151
- 'k-selected': taskSelected && !Array.isArray(taskSelected)
152
- }), ref: taskElementRef, style: taskStyles }, (_b = {}, _b[constants_1.TASK_ID_ATT] = taskId, _b), { onClick: onClickHandler, onDoubleClick: onDoubleClickHandler, onContextMenu: onContextMenuHandler }),
153
- isSummaryTask ?
154
- (React.createElement("div", { className: 'k-task-summary-progress', ref: completeElementRef },
155
- React.createElement("div", { className: 'k-task-summary-complete' }))) :
156
- (React.createElement("div", { className: 'k-task-complete', ref: completeElementRef })),
157
- !isSummaryTask && (React.createElement(React.Fragment, null,
158
- React.createElement("div", { className: 'k-task-content' }, taskTitle),
159
- taskEvents.onTaskRemoveClick ? (React.createElement("span", { className: 'k-task-actions' },
160
- React.createElement("span", { onClick: onRemoveHandler, className: 'k-link k-task-delete', "aria-label": "Delete" },
161
- React.createElement(kendo_react_common_1.IconWrap, { name: "x", icon: kendo_svg_icons_1.xIcon })))) : null)),
162
- dependencyDrag.isEnabled &&
163
- React.createElement("div", __assign({ className: 'k-task-dot k-task-start', ref: dependencyStartElementRef, style: dependencyDragStyles }, constants_1.DEPENDENCY_DRAG_HANDLE_START_ATT)),
164
- dependencyDrag.isEnabled &&
165
- React.createElement("div", __assign({ className: 'k-task-dot k-task-end', ref: dependencyEndElementRef, style: dependencyDragStyles }, constants_1.DEPENDENCY_DRAG_HANDLE_FINISH_ATT))))));
166
- });
167
- exports.GanttTask.displayName = 'KendoReactGanttTask';