@sme.up/ketchup 9.6.4 → 9.6.5

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 (232) hide show
  1. package/dist/cjs/{bar.helpers-f46a5a83.js → bar.helpers-c481a535.js} +45 -13
  2. package/dist/cjs/{f-button-89de2403.js → f-button-23ec3db5.js} +1 -1
  3. package/dist/cjs/{f-cell-75dbd6eb.js → f-cell-bcc51c0f.js} +5 -5
  4. package/dist/cjs/{f-chip-08857345.js → f-chip-63363ecf.js} +2 -2
  5. package/dist/cjs/{f-image-a41d7f1e.js → f-image-f3944c01.js} +2 -5
  6. package/dist/cjs/{f-paginator-utils-ff07301e.js → f-paginator-utils-60e05759.js} +2 -2
  7. package/dist/cjs/{f-text-field-eb207a83.js → f-text-field-354b6c78.js} +1 -1
  8. package/dist/cjs/index.cjs.js +1 -1
  9. package/dist/cjs/ketchup.cjs.js +1 -1
  10. package/dist/cjs/kup-accordion.cjs.entry.js +2 -2
  11. package/dist/cjs/kup-autocomplete_27.cjs.entry.js +46 -46
  12. package/dist/cjs/kup-box.cjs.entry.js +7 -7
  13. package/dist/cjs/kup-calendar.cjs.entry.js +4 -4
  14. package/dist/cjs/kup-card-list.cjs.entry.js +1 -1
  15. package/dist/cjs/kup-cell.cjs.entry.js +6 -6
  16. package/dist/cjs/kup-custom-task-list-header_4.cjs.entry.js +253 -37
  17. package/dist/cjs/kup-dashboard.cjs.entry.js +4 -4
  18. package/dist/cjs/kup-drawer.cjs.entry.js +1 -1
  19. package/dist/cjs/kup-echart.cjs.entry.js +1 -1
  20. package/dist/cjs/kup-editor.cjs.entry.js +1 -1
  21. package/dist/cjs/kup-family-tree.cjs.entry.js +3 -3
  22. package/dist/cjs/kup-gantt_10.cjs.entry.js +104 -38
  23. package/dist/cjs/kup-grid.cjs.entry.js +1 -1
  24. package/dist/cjs/kup-iframe.cjs.entry.js +1 -1
  25. package/dist/cjs/kup-image-list.cjs.entry.js +20 -13
  26. package/dist/cjs/kup-input-panel.cjs.entry.js +199 -53
  27. package/dist/cjs/kup-lazy.cjs.entry.js +1 -1
  28. package/dist/cjs/kup-magic-box.cjs.entry.js +2 -2
  29. package/dist/cjs/{kup-manager-abfe4ddd.js → kup-manager-e1bfd4f8.js} +647 -120
  30. package/dist/cjs/kup-nav-bar.cjs.entry.js +1 -1
  31. package/dist/cjs/kup-numeric-picker.cjs.entry.js +2 -2
  32. package/dist/cjs/kup-pdf.cjs.entry.js +1 -1
  33. package/dist/cjs/kup-photo-frame.cjs.entry.js +1 -1
  34. package/dist/cjs/{kup-planner-declarations-d3dec885.js → kup-planner-declarations-cb33663d.js} +3 -0
  35. package/dist/cjs/{kup-planner-renderer-helper-9f776d6e.js → kup-planner-renderer-helper-f001fad7.js} +55 -7
  36. package/dist/cjs/kup-planner-renderer.cjs.entry.js +43 -10
  37. package/dist/cjs/{kup-planner-time-formatter-a74e70f0.js → kup-planner-time-formatter-b7dca3ea.js} +3 -0
  38. package/dist/cjs/kup-planner.cjs.entry.js +80 -8
  39. package/dist/cjs/kup-probe.cjs.entry.js +2 -2
  40. package/dist/cjs/kup-qlik.cjs.entry.js +2 -2
  41. package/dist/cjs/kup-snackbar.cjs.entry.js +4 -4
  42. package/dist/cjs/loader.cjs.js +1 -1
  43. package/dist/collection/assets/image-list.js +332 -2
  44. package/dist/collection/assets/input-panel.js +307 -76
  45. package/dist/collection/assets/planner-example-5.js +19 -7
  46. package/dist/collection/assets/planner-example-6.js +3 -0
  47. package/dist/collection/assets/planner.js +4 -3
  48. package/dist/collection/components/kup-badge/kup-badge.css +4 -4
  49. package/dist/collection/components/kup-image-list/kup-image-list.css +37 -4
  50. package/dist/collection/components/kup-image-list/kup-image-list.js +15 -8
  51. package/dist/collection/components/kup-input-panel/kup-input-panel-declarations.js +1 -1
  52. package/dist/collection/components/kup-input-panel/kup-input-panel.css +38 -1
  53. package/dist/collection/components/kup-input-panel/kup-input-panel.e2e.js +69 -28
  54. package/dist/collection/components/kup-input-panel/kup-input-panel.js +206 -59
  55. package/dist/collection/components/kup-planner/kup-planner-declarations.js +3 -0
  56. package/dist/collection/components/kup-planner/kup-planner-helper.js +42 -1
  57. package/dist/collection/components/kup-planner/kup-planner.js +191 -5
  58. package/dist/collection/components/kup-planner/utils/custom-task-list-table.js +103 -11
  59. package/dist/collection/components/kup-planner/utils/gantt-table.module.css +80 -2
  60. package/dist/collection/components/kup-planner/utils/helpers/bar.helpers.js +41 -13
  61. package/dist/collection/components/kup-planner/utils/helpers/other.helpers.js +3 -0
  62. package/dist/collection/components/kup-planner/utils/kup-gantt/kup-gantt.css +10 -0
  63. package/dist/collection/components/kup-planner/utils/kup-gantt/kup-gantt.js +61 -6
  64. package/dist/collection/components/kup-planner/utils/kup-gantt-calendar/kup-gantt-calendar.js +32 -2
  65. package/dist/collection/components/kup-planner/utils/kup-grid-renderer/kup-grid-renderer.css +4 -0
  66. package/dist/collection/components/kup-planner/utils/kup-grid-renderer/kup-grid-renderer.js +208 -24
  67. package/dist/collection/components/kup-planner/utils/kup-horizontal-scroll/kup-horizontal-scroll.css +4 -0
  68. package/dist/collection/components/kup-planner/utils/kup-horizontal-scroll/kup-horizontal-scroll.js +131 -7
  69. package/dist/collection/components/kup-planner/utils/kup-planner-renderer-helper.js +55 -6
  70. package/dist/collection/components/kup-planner/utils/kup-planner-renderer.js +40 -7
  71. package/dist/collection/components/kup-planner/utils/kup-switcher/kup-switcher.css +22 -15
  72. package/dist/collection/components/kup-planner/utils/kup-switcher/kup-switcher.js +21 -5
  73. package/dist/collection/components/kup-planner/utils/kup-task-gantt/kup-task-gantt.js +19 -3
  74. package/dist/collection/components/kup-planner/utils/kup-task-list/kup-task-list-header.js +7 -7
  75. package/dist/collection/components/kup-planner/utils/kup-task-list/kup-task-list-table.js +1 -1
  76. package/dist/collection/components/kup-planner/utils/kup-task-list/kup-task-list.js +76 -2
  77. package/dist/collection/components/kup-planner/utils/kup-tooltip/kup-standard-tooltip.js +1 -1
  78. package/dist/collection/components/kup-planner/utils/kup-tooltip/kup-tooltip.js +1 -1
  79. package/dist/collection/components/kup-planner/utils/kup-vertical-scroll/kup-vertical-scroll.js +2 -2
  80. package/dist/collection/components/kup-probe/kup-probe.js +1 -1
  81. package/dist/collection/components/kup-progress-bar/kup-progress-bar.js +1 -1
  82. package/dist/collection/components/kup-qlik/kup-qlik.js +1 -1
  83. package/dist/collection/components/kup-rating/kup-rating.js +1 -1
  84. package/dist/collection/components/kup-snackbar/kup-snackbar.js +1 -1
  85. package/dist/collection/components/kup-spinner/kup-spinner.js +34 -34
  86. package/dist/collection/components/kup-switch/kup-switch.js +1 -1
  87. package/dist/collection/components/kup-time-picker/kup-time-picker.js +1 -1
  88. package/dist/collection/f-components/f-image/f-image.js +2 -5
  89. package/dist/components/_commonjsHelpers.js +26 -0
  90. package/dist/components/custom-task-list-table.js +58 -13
  91. package/dist/components/kup-autocomplete2.js +43 -45
  92. package/dist/components/kup-calendar.js +1 -1
  93. package/dist/components/kup-dates.js +2 -25
  94. package/dist/components/kup-editor.js +1 -1
  95. package/dist/components/kup-gantt-calendar2.js +31 -1
  96. package/dist/components/kup-gantt2.js +26 -7
  97. package/dist/components/kup-grid-renderer2.js +219 -81
  98. package/dist/components/kup-horizontal-scroll2.js +48 -10
  99. package/dist/components/kup-image-list.js +14 -7
  100. package/dist/components/kup-input-panel.js +192 -46
  101. package/dist/components/kup-manager.js +649 -121
  102. package/dist/components/kup-pdf.js +1 -1
  103. package/dist/components/kup-planner-declarations.js +91 -0
  104. package/dist/components/kup-planner-renderer2.js +42 -9
  105. package/dist/components/kup-planner.js +86 -6
  106. package/dist/components/kup-probe.js +1 -1
  107. package/dist/components/kup-qlik.js +1 -1
  108. package/dist/components/kup-snackbar.js +1 -1
  109. package/dist/components/kup-standard-tooltip2.js +1 -1
  110. package/dist/components/kup-switcher2.js +19 -7
  111. package/dist/components/kup-task-gantt2.js +6 -4
  112. package/dist/components/kup-task-list-header2.js +7 -7
  113. package/dist/components/kup-task-list-table2.js +1 -1
  114. package/dist/components/kup-task-list2.js +434 -84
  115. package/dist/components/kup-tooltip2.js +1 -1
  116. package/dist/components/kup-vertical-scroll2.js +2 -2
  117. package/dist/components/other.helpers.js +47 -0
  118. package/dist/esm/{bar.helpers-0898efb9.js → bar.helpers-23a51579.js} +45 -14
  119. package/dist/esm/{f-button-1eebd42e.js → f-button-d6dbcfd6.js} +1 -1
  120. package/dist/esm/{f-cell-af19d5c7.js → f-cell-7b41415c.js} +5 -5
  121. package/dist/esm/{f-chip-9e5fdb25.js → f-chip-68d27d7a.js} +2 -2
  122. package/dist/esm/{f-image-1e1ed567.js → f-image-a67229e5.js} +2 -5
  123. package/dist/esm/{f-paginator-utils-dede029b.js → f-paginator-utils-8773e358.js} +2 -2
  124. package/dist/esm/{f-text-field-802b45fb.js → f-text-field-d364ffd2.js} +1 -1
  125. package/dist/esm/index.js +1 -1
  126. package/dist/esm/ketchup.js +1 -1
  127. package/dist/esm/kup-accordion.entry.js +2 -2
  128. package/dist/esm/kup-autocomplete_27.entry.js +46 -46
  129. package/dist/esm/kup-box.entry.js +7 -7
  130. package/dist/esm/kup-calendar.entry.js +4 -4
  131. package/dist/esm/kup-card-list.entry.js +1 -1
  132. package/dist/esm/kup-cell.entry.js +6 -6
  133. package/dist/esm/kup-custom-task-list-header_4.entry.js +253 -37
  134. package/dist/esm/kup-dashboard.entry.js +4 -4
  135. package/dist/esm/kup-drawer.entry.js +1 -1
  136. package/dist/esm/kup-echart.entry.js +1 -1
  137. package/dist/esm/kup-editor.entry.js +1 -1
  138. package/dist/esm/kup-family-tree.entry.js +3 -3
  139. package/dist/esm/kup-gantt_10.entry.js +105 -39
  140. package/dist/esm/kup-grid.entry.js +1 -1
  141. package/dist/esm/kup-iframe.entry.js +1 -1
  142. package/dist/esm/kup-image-list.entry.js +20 -13
  143. package/dist/esm/kup-input-panel.entry.js +199 -53
  144. package/dist/esm/kup-lazy.entry.js +1 -1
  145. package/dist/esm/kup-magic-box.entry.js +2 -2
  146. package/dist/esm/{kup-manager-dd24fb5a.js → kup-manager-a316a70e.js} +647 -120
  147. package/dist/esm/kup-nav-bar.entry.js +1 -1
  148. package/dist/esm/kup-numeric-picker.entry.js +2 -2
  149. package/dist/esm/kup-pdf.entry.js +1 -1
  150. package/dist/esm/kup-photo-frame.entry.js +1 -1
  151. package/dist/esm/{kup-planner-declarations-b9345758.js → kup-planner-declarations-398babf9.js} +3 -0
  152. package/dist/esm/{kup-planner-renderer-helper-b4727e44.js → kup-planner-renderer-helper-a2ec9a1c.js} +56 -7
  153. package/dist/esm/kup-planner-renderer.entry.js +43 -10
  154. package/dist/esm/{kup-planner-time-formatter-a68e05ba.js → kup-planner-time-formatter-ddf84f9b.js} +1 -1
  155. package/dist/esm/kup-planner.entry.js +80 -8
  156. package/dist/esm/kup-probe.entry.js +2 -2
  157. package/dist/esm/kup-qlik.entry.js +2 -2
  158. package/dist/esm/kup-snackbar.entry.js +4 -4
  159. package/dist/esm/loader.js +1 -1
  160. package/dist/ketchup/index.esm.js +1 -1
  161. package/dist/ketchup/ketchup.esm.js +1 -1
  162. package/dist/ketchup/p-008bdcdc.js +1 -0
  163. package/dist/ketchup/p-042e874a.entry.js +1 -0
  164. package/dist/ketchup/{p-b3b50bb5.entry.js → p-074ccd53.entry.js} +1 -1
  165. package/dist/ketchup/{p-26d42b88.entry.js → p-1088ab22.entry.js} +1 -1
  166. package/dist/ketchup/{p-201f8d7b.entry.js → p-1bcac01f.entry.js} +1 -1
  167. package/dist/ketchup/{p-3b544027.entry.js → p-1e028d95.entry.js} +1 -1
  168. package/dist/ketchup/p-25058baa.js +1 -0
  169. package/dist/ketchup/{p-dcf7e9b6.entry.js → p-2932e7e8.entry.js} +1 -1
  170. package/dist/ketchup/{p-b238cde7.entry.js → p-2b84db7b.entry.js} +1 -1
  171. package/dist/ketchup/{p-f998ff28.entry.js → p-2ef90f60.entry.js} +1 -1
  172. package/dist/ketchup/{p-8fcdf454.js → p-339bbeae.js} +1 -1
  173. package/dist/ketchup/{p-cd7fec02.entry.js → p-48e45ac0.entry.js} +1 -1
  174. package/dist/ketchup/p-53af4c87.js +1 -0
  175. package/dist/ketchup/{p-6972fa0c.entry.js → p-556f7ddc.entry.js} +1 -1
  176. package/dist/ketchup/{p-e7507dd6.entry.js → p-5f7d8c21.entry.js} +1 -1
  177. package/dist/ketchup/{p-e0e47ca9.entry.js → p-6362738c.entry.js} +1 -1
  178. package/dist/ketchup/{p-a2e14d8b.entry.js → p-65e363c6.entry.js} +1 -1
  179. package/dist/ketchup/p-6921bc81.entry.js +16 -0
  180. package/dist/ketchup/p-6961e0ce.entry.js +1 -0
  181. package/dist/ketchup/p-7123d2a4.entry.js +1 -0
  182. package/dist/ketchup/{p-6c888179.js → p-801776bc.js} +1 -1
  183. package/dist/ketchup/{p-4f69f6f9.entry.js → p-81645576.entry.js} +1 -1
  184. package/dist/ketchup/p-838dea62.js +1 -0
  185. package/dist/ketchup/{p-924b841b.js → p-84b511e1.js} +1 -1
  186. package/dist/ketchup/{p-8229b97a.js → p-8d4050ec.js} +4 -4
  187. package/dist/ketchup/{p-79f4dc5b.entry.js → p-9e2533e1.entry.js} +1 -1
  188. package/dist/ketchup/{p-158076de.entry.js → p-a06974a3.entry.js} +1 -1
  189. package/dist/ketchup/p-a6beb822.js +1 -0
  190. package/dist/ketchup/p-abe181d0.entry.js +1 -0
  191. package/dist/ketchup/{p-61e8d573.js → p-b3540f83.js} +1 -1
  192. package/dist/ketchup/{p-19a13672.entry.js → p-c702eb45.entry.js} +1 -1
  193. package/dist/ketchup/{p-2e04042b.entry.js → p-ccb6dbb0.entry.js} +1 -1
  194. package/dist/ketchup/{p-a2e691b8.entry.js → p-cf44485a.entry.js} +2 -2
  195. package/dist/ketchup/{p-8f3d400a.entry.js → p-d2001dec.entry.js} +1 -1
  196. package/dist/ketchup/{p-34d70475.entry.js → p-dbb6cd8d.entry.js} +1 -1
  197. package/dist/ketchup/{p-2d4a9235.js → p-f6c8f006.js} +1 -1
  198. package/dist/ketchup/{p-43ce397b.entry.js → p-f79ffe77.entry.js} +1 -1
  199. package/dist/ketchup/{p-489af77f.entry.js → p-fdcfaedd.entry.js} +1 -1
  200. package/dist/ketchup/p-fe75ede2.entry.js +1 -0
  201. package/dist/types/components/kup-image-list/kup-image-list.d.ts +1 -1
  202. package/dist/types/components/kup-input-panel/kup-input-panel-declarations.d.ts +9 -7
  203. package/dist/types/components/kup-input-panel/kup-input-panel.d.ts +4 -4
  204. package/dist/types/components/kup-planner/kup-planner-declarations.d.ts +29 -2
  205. package/dist/types/components/kup-planner/kup-planner-helper.d.ts +2 -1
  206. package/dist/types/components/kup-planner/kup-planner.d.ts +38 -0
  207. package/dist/types/components/kup-planner/utils/custom-task-list-table.d.ts +7 -0
  208. package/dist/types/components/kup-planner/utils/helpers/bar.helpers.d.ts +1 -1
  209. package/dist/types/components/kup-planner/utils/helpers/other.helpers.d.ts +1 -0
  210. package/dist/types/components/kup-planner/utils/kup-gantt/kup-gantt.d.ts +6 -0
  211. package/dist/types/components/kup-planner/utils/kup-gantt-calendar/kup-gantt-calendar.d.ts +1 -0
  212. package/dist/types/components/kup-planner/utils/kup-grid-renderer/kup-grid-renderer.d.ts +13 -1
  213. package/dist/types/components/kup-planner/utils/kup-horizontal-scroll/kup-horizontal-scroll.d.ts +7 -0
  214. package/dist/types/components/kup-planner/utils/kup-planner-renderer-helper.d.ts +6 -2
  215. package/dist/types/components/kup-planner/utils/kup-planner-renderer.d.ts +1 -0
  216. package/dist/types/components/kup-planner/utils/kup-switcher/kup-switcher.d.ts +3 -1
  217. package/dist/types/components/kup-planner/utils/kup-task-gantt/kup-task-gantt.d.ts +1 -0
  218. package/dist/types/components/kup-planner/utils/kup-task-list/kup-task-list.d.ts +4 -0
  219. package/dist/types/components.d.ts +122 -16
  220. package/package.json +1 -1
  221. package/dist/components/kup-planner-renderer-helper.js +0 -379
  222. package/dist/ketchup/p-14943de9.entry.js +0 -1
  223. package/dist/ketchup/p-180cd7ab.entry.js +0 -1
  224. package/dist/ketchup/p-636be6f1.entry.js +0 -16
  225. package/dist/ketchup/p-63c141d9.entry.js +0 -1
  226. package/dist/ketchup/p-818e61d5.entry.js +0 -1
  227. package/dist/ketchup/p-8e3b6de8.js +0 -1
  228. package/dist/ketchup/p-a46f99d4.js +0 -1
  229. package/dist/ketchup/p-c0f660d6.js +0 -1
  230. package/dist/ketchup/p-e4c63684.js +0 -1
  231. package/dist/ketchup/p-e841c2ae.js +0 -1
  232. package/dist/ketchup/p-f9a7c21c.entry.js +0 -1
@@ -36,10 +36,10 @@ export const isDetail = (row) => {
36
36
  row.schedule &&
37
37
  row.schedule.length !== 0);
38
38
  };
39
- export const mergeTaskIntoProjects = (projects, { id, start, end }) => projects.map((project) => project.id === id ? withNewDates(project, start, end) : project);
40
- export const mergeTaskIntoPhases = (phases, { id, start, end }) => {
39
+ export const mergeTaskIntoProjects = (projects, { id, start, end, startHour, endHour }) => projects.map((project) => project.id === id ? withNewDates(project, start, end, startHour, endHour) : project);
40
+ export const mergeTaskIntoPhases = (phases, { id, start, end, startHour, endHour }) => {
41
41
  if (phases) {
42
- return phases.map((phase) => phase.id === id ? withNewDates(phase, start, end) : phase);
42
+ return phases.map((phase) => phase.id === id ? withNewDates(phase, start, end, startHour, endHour) : phase);
43
43
  }
44
44
  return undefined;
45
45
  };
@@ -77,6 +77,10 @@ export const convertProjectToTasks = (item, mainGanttStartDate, mainGanttEndDate
77
77
  isDisabled: false,
78
78
  hideChildren: false,
79
79
  icon: row.icon,
80
+ startHour: item.startHour,
81
+ endHour: item.endHour,
82
+ secondaryStartHour: item.secondaryStartHour,
83
+ secondaryEndHour: item.secondaryEndHour
80
84
  };
81
85
  const children1 = ((_a = row.phases) !== null && _a !== void 0 ? _a : []).map(convertPhaseToTask);
82
86
  return [mainTask, ...children1];
@@ -89,7 +93,7 @@ export const convertProjectToTasks = (item, mainGanttStartDate, mainGanttEndDate
89
93
  }
90
94
  };
91
95
  export const convertPhaseToTask = (item) => {
92
- const mapPhase = ({ startDate: phaseStart, endDate: phaseEnd, secondaryStartDate, secondaryEndDate, name: phaseName, id: phaseId, color, selectedColor, dependencies, icon, }) => {
96
+ const mapPhase = ({ startDate: phaseStart, endDate: phaseEnd, secondaryStartDate, secondaryEndDate, name: phaseName, id: phaseId, color, selectedColor, dependencies, icon, startHour, endHour, secondaryStartHour, secondaryEndHour, }) => {
93
97
  const kupDates = new KupDates();
94
98
  const { start, end } = kupDates.validDates(phaseStart, phaseEnd, phaseName);
95
99
  const { start: phaseStart2, end: phaseEnd2 } = kupDates.validDates(secondaryStartDate, secondaryEndDate, phaseName);
@@ -116,6 +120,10 @@ export const convertPhaseToTask = (item) => {
116
120
  }
117
121
  : {},
118
122
  icon,
123
+ startHour,
124
+ endHour,
125
+ secondaryStartHour,
126
+ secondaryEndHour,
119
127
  };
120
128
  };
121
129
  return mapPhase(item);
@@ -169,11 +177,11 @@ const convertDetailToTimeline = (item, mainGanttStartDate, mainGanttEndDate) =>
169
177
  };
170
178
  };
171
179
  /** Return a shallow copy, with the dates updated */
172
- const withNewDates = (p, start, end) => {
180
+ const withNewDates = (p, start, end, startHour, endHour) => {
173
181
  const kupDates = new KupDates();
174
182
  const startDate = kupDates.formatToIsoDate(start);
175
183
  const endDate = kupDates.formatToIsoDate(end);
176
- const extra = { startDate, endDate };
184
+ const extra = { startDate, endDate, startHour, endHour };
177
185
  return Object.assign(Object.assign({}, p), extra);
178
186
  };
179
187
  /**
@@ -211,6 +219,10 @@ export const ganttDateRangeFromGanttTask = (tasks, viewMode, preStepsCount, show
211
219
  end: kupDates.parseToDayEnd(item.endDate),
212
220
  secondaryStart: kupDates.parseToDayStart(item.secondaryStartDate),
213
221
  secondaryEnd: kupDates.parseToDayEnd(item.secondaryEndDate),
222
+ startHour: item.startHour,
223
+ endHour: item.endHour,
224
+ secondaryStartHour: item.secondaryStartHour,
225
+ secondaryEndHour: item.secondaryEndHour
214
226
  });
215
227
  (_a = item.phases) === null || _a === void 0 ? void 0 : _a.forEach((phase) => {
216
228
  dates.push({
@@ -218,6 +230,10 @@ export const ganttDateRangeFromGanttTask = (tasks, viewMode, preStepsCount, show
218
230
  end: kupDates.parseToDayEnd(phase.endDate),
219
231
  secondaryStart: kupDates.parseToDayStart(phase.secondaryStartDate),
220
232
  secondaryEnd: kupDates.parseToDayEnd(phase.secondaryEndDate),
233
+ startHour: item.startHour,
234
+ endHour: item.endHour,
235
+ secondaryStartHour: item.secondaryStartHour,
236
+ secondaryEndHour: item.secondaryEndHour
221
237
  });
222
238
  });
223
239
  });
@@ -270,6 +286,32 @@ export const ganttDateRangeGeneric = (dates, viewMode, preStepsCount, showSecond
270
286
  newEndDate = startOfDate(newEndDate, 'day');
271
287
  newEndDate = addToDate(newEndDate, 19, 'day');
272
288
  break;
289
+ case 'hour':
290
+ newStartDate = startOfDate(newStartDate, "hour");
291
+ newStartDate = addToDate(newStartDate, -1 * preStepsCount, "hour");
292
+ newEndDate = startOfDate(newEndDate, "day");
293
+ newEndDate = addToDate(newEndDate, 1, "day");
294
+ break;
295
+ /*
296
+ case ViewMode.QuarterDay:
297
+ newStartDate = startOfDate(newStartDate, "day");
298
+ newStartDate = addToDate(newStartDate, -1 * preStepsCount, "day");
299
+ newEndDate = startOfDate(newEndDate, "day");
300
+ newEndDate = addToDate(newEndDate, 66, "hour"); // 24(1 day)*3 - 6
301
+ break;
302
+ case ViewMode.HalfDay:
303
+ newStartDate = startOfDate(newStartDate, "day");
304
+ newStartDate = addToDate(newStartDate, -1 * preStepsCount, "day");
305
+ newEndDate = startOfDate(newEndDate, "day");
306
+ newEndDate = addToDate(newEndDate, 108, "hour"); // 24(1 day)*5 - 12
307
+ break;
308
+ case ViewMode.Hour:
309
+ newStartDate = startOfDate(newStartDate, "hour");
310
+ newStartDate = addToDate(newStartDate, -1 * preStepsCount, "hour");
311
+ newEndDate = startOfDate(newEndDate, "day");
312
+ newEndDate = addToDate(newEndDate, 1, "day");
313
+ break;
314
+ */
273
315
  }
274
316
  return [newStartDate, newEndDate];
275
317
  };
@@ -329,6 +371,10 @@ export const ganttDateRangeFromTask = (tasks, viewMode, preStepsCount, showSecon
329
371
  end: item.end,
330
372
  secondaryStart: item.secondaryStart,
331
373
  secondaryEnd: item.secondaryEnd,
374
+ startHour: item.startHour,
375
+ endHour: item.endHour,
376
+ secondaryStartHour: item.secondaryStartHour,
377
+ secondaryEndHour: item.secondaryEndHour
332
378
  });
333
379
  });
334
380
  if (mainGanttStartDate && mainGanttEndDate) {
@@ -358,6 +404,9 @@ export const seedDates = (startDate, endDate, viewMode) => {
358
404
  case 'day':
359
405
  currentDate = addToDate(currentDate, 1, 'day');
360
406
  break;
407
+ case 'hour':
408
+ currentDate = addToDate(currentDate, 1, "hour");
409
+ break;
361
410
  /*
362
411
  case ViewMode.HalfDay:
363
412
  currentDate = addToDate(currentDate, 12, "hour");
@@ -59,14 +59,14 @@ export class KupPlannerRenderer {
59
59
  }
60
60
  //---- Lifecycle hooks ----
61
61
  componentWillLoad() {
62
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
62
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
63
63
  this.timeUnit = (_a = this.props) === null || _a === void 0 ? void 0 : _a.viewMode;
64
64
  this.currentTasks = ((_b = this.props) === null || _b === void 0 ? void 0 : _b.mainGantt.items) || [];
65
65
  this.currentDetails = (_d = (_c = this.props) === null || _c === void 0 ? void 0 : _c.secondaryGantt) === null || _d === void 0 ? void 0 : _d.items;
66
- this.scrollX = ((_f = (_e = this.props) === null || _e === void 0 ? void 0 : _e.mainGantt) === null || _f === void 0 ? void 0 : _f.initialScrollX) || -1;
66
+ this.scrollX = (_g = (_f = (_e = this.props) === null || _e === void 0 ? void 0 : _e.mainGantt) === null || _f === void 0 ? void 0 : _f.initialScrollX) !== null && _g !== void 0 ? _g : -1;
67
67
  this.mainGanttDoubleView =
68
- (_j = (_h = (_g = this.props) === null || _g === void 0 ? void 0 : _g.mainGantt) === null || _h === void 0 ? void 0 : _h.showSecondaryDates) !== null && _j !== void 0 ? _j : false;
69
- this.displayedDates = calculateDisplayedDateRange(this.currentTasks, this.timeUnit, this.mainGanttDoubleView, this.currentDetails, (_k = this.props) === null || _k === void 0 ? void 0 : _k.preStepsCount);
68
+ (_k = (_j = (_h = this.props) === null || _h === void 0 ? void 0 : _h.mainGantt) === null || _j === void 0 ? void 0 : _j.showSecondaryDates) !== null && _k !== void 0 ? _k : false;
69
+ this.displayedDates = calculateDisplayedDateRange(this.currentTasks, this.timeUnit, this.mainGanttDoubleView, this.currentDetails, (_l = this.props) === null || _l === void 0 ? void 0 : _l.preStepsCount);
70
70
  this.viewDate = undefined;
71
71
  this.projection = undefined;
72
72
  this.updateTasks();
@@ -183,6 +183,31 @@ export class KupPlannerRenderer {
183
183
  // Use setTimeout to ensure DOM updates
184
184
  setTimeout(this.getScrollX, 500);
185
185
  }
186
+ // Handle phase drop
187
+ handlePhaseDrop(originalPhaseData,
188
+ // originalTaskData: KupPlannerGanttTaskN | KupPlannerItemDetail,
189
+ finalPhaseData, destinationData, onPhaseDrop) {
190
+ // Invoke callback
191
+ let row = undefined;
192
+ const currentProjects = this.currentTasks;
193
+ const parentOfClickedPhase = currentProjects.find((p) => { var _a; return (_a = p.phases) === null || _a === void 0 ? void 0 : _a.some((ph) => (ph === null || ph === void 0 ? void 0 : ph.id) === finalPhaseData.id); });
194
+ if (parentOfClickedPhase) {
195
+ const phases = mergeTaskIntoPhases(parentOfClickedPhase.phases, finalPhaseData);
196
+ const updatedProjects = currentProjects.map((p) => p.id === parentOfClickedPhase.id ? Object.assign(Object.assign({}, p), { phases }) : p);
197
+ row = getPhaseById(finalPhaseData.id, updatedProjects);
198
+ }
199
+ row === null || row === void 0 ? true : delete row['taskRow'];
200
+ onPhaseDrop === null || onPhaseDrop === void 0 ? void 0 : onPhaseDrop({
201
+ originalPhaseData,
202
+ // originalTaskData,
203
+ finalPhaseData: row,
204
+ destinationData,
205
+ });
206
+ // to move the phase back to its original position
207
+ this.currentTasks = JSON.parse(JSON.stringify(this.currentTasks));
208
+ // Use setTimeout to ensure DOM updates
209
+ setTimeout(this.getScrollX, 500);
210
+ }
186
211
  // Get scrollX
187
212
  getScrollX() {
188
213
  var _a, _b, _c;
@@ -195,7 +220,7 @@ export class KupPlannerRenderer {
195
220
  }
196
221
  render() {
197
222
  var _a, _b, _c;
198
- return (h("div", { key: 'e633ff68b8b848cd29b1fb4a44f4561ef9dfc65f', class: "planner-render" }, h("kup-switcher", { key: 'e8982db1704160c67839e156521f8cadbd9d182a', timeUnitChange: (timeUnit) => {
223
+ return (h("div", { key: 'ca2bc5b1e398639943fc073b92035b83d304dee1', class: "planner-render" }, h("kup-switcher", { key: '02903e6f1d14536cc3e82e535f98f56761004051', timeUnitChange: (timeUnit) => {
199
224
  var _a, _b;
200
225
  (_b = (_a = this.props).onSetViewMode) === null || _b === void 0 ? void 0 : _b.call(_a, timeUnit);
201
226
  this.timeUnit = timeUnit;
@@ -228,7 +253,15 @@ export class KupPlannerRenderer {
228
253
  if (row) {
229
254
  this.handleContextMenu(event, row, this.props.mainGantt.onContextMenu);
230
255
  }
231
- }, dateChange: (task) => this.handleDateChange(task, this.currentTasks, this.props.mainGantt.onDateChange), locale: this.locale, dateTimeFormatters: ganttDateTimeFormatters, initialScrollX: this.scrollX, initialScrollY: this.props.mainGantt.initialScrollY, readOnly: this.props.mainGantt.readOnly, scrollXChange: this.props.onScrollX, scrollYChange: this.props.mainGantt.onScrollY, currentTasks: this.currentTasks, handleClick: this.handleClick.bind(this), handleDblClick: this.handleDblClick.bind(this), handleContextMenu: this.handleContextMenu.bind(this), ganttOnClick: this.props.mainGantt.onClick, ganttOnDblClick: this.props.mainGantt.onDblClick, ganttonOnContextMenu: this.props.mainGantt.onContextMenu, label: this.props.mainGantt.title, doubleView: (_b = this.mainGanttDoubleView) !== null && _b !== void 0 ? _b : false, setDoubleView: this.handleSetDoubleView.bind(this) })), this.props.secondaryGantt && (h("kup-gantt", Object.assign({ ref: (el) => (this.secondaryGantt = el), ganttId: KUP_PLANNER_SECONDARY_GANTT_ID, key: KUP_PLANNER_SECONDARY_GANTT_ID, filter: this.props.secondaryGantt.filter, hideLabel: this.props.secondaryGantt.hideLabel, showSecondaryDates: this.mainGanttDoubleView, hideDependencies: this.props.secondaryGantt.hideDependencies, ganttHeight: this.props.secondaryGantt.ganttHeight, displayedStartDate: this.displayedDates.displayedStartDate, displayedEndDate: this.displayedDates.displayedEndDate, viewDate: this.viewDate, tasks: this.details, columnWidth: columnWidthForTimeUnit(this.timeUnit), viewMode: this.timeUnit }, this.props.secondaryGantt.stylingOptions, { TaskListHeader: this.props.secondaryGantt
256
+ }, dateChange: (task) => this.handleDateChange(task, this.currentTasks, this.props.mainGantt.onDateChange), locale: this.locale, dateTimeFormatters: ganttDateTimeFormatters, initialScrollX: this.scrollX, initialScrollY: this.props.mainGantt.initialScrollY, readOnly: this.props.mainGantt.readOnly, scrollXChange: this.props.onScrollX, scrollYChange: this.props.mainGantt.onScrollY, currentTasks: this.currentTasks, handleClick: this.handleClick.bind(this), handleDblClick: this.handleDblClick.bind(this), handleContextMenu: this.handleContextMenu.bind(this), ganttOnClick: this.props.mainGantt.onClick, ganttOnDblClick: this.props.mainGantt.onDblClick, ganttonOnContextMenu: this.props.mainGantt.onContextMenu, label: this.props.mainGantt.title, doubleView: (_b = this.mainGanttDoubleView) !== null && _b !== void 0 ? _b : false, setDoubleView: this.handleSetDoubleView.bind(this), scrollableTaskList: this.props.scrollableTaskList, phaseDrop: (originalPhaseData, originalTaskData, finalPhaseData, destinationData) => {
257
+ const originalPhase = getPhaseById(originalPhaseData.id, this.currentTasks);
258
+ const originalTask = getProjectById(originalTaskData.id, this.currentTasks);
259
+ const finalPhase = getPhaseById(finalPhaseData.id, this.currentTasks);
260
+ const destinationTask = getProjectById(destinationData.id, this.currentTasks);
261
+ this.handlePhaseDrop(originalPhase,
262
+ // originalTask,
263
+ finalPhaseData, destinationTask, this.props.mainGantt.onPhaseDrop);
264
+ } })), this.props.secondaryGantt && (h("kup-gantt", Object.assign({ ref: (el) => (this.secondaryGantt = el), ganttId: KUP_PLANNER_SECONDARY_GANTT_ID, key: KUP_PLANNER_SECONDARY_GANTT_ID, filter: this.props.secondaryGantt.filter, hideLabel: this.props.secondaryGantt.hideLabel, showSecondaryDates: this.mainGanttDoubleView, hideDependencies: this.props.secondaryGantt.hideDependencies, ganttHeight: this.props.secondaryGantt.ganttHeight, displayedStartDate: this.displayedDates.displayedStartDate, displayedEndDate: this.displayedDates.displayedEndDate, viewDate: this.viewDate, tasks: this.details, columnWidth: columnWidthForTimeUnit(this.timeUnit), viewMode: this.timeUnit }, this.props.secondaryGantt.stylingOptions, { TaskListHeader: this.props.secondaryGantt
232
265
  .taskListHeaderProject, TaskListTable: this.props.secondaryGantt
233
266
  .taskListTableProject, TooltipContent: (_c = this.props.secondaryGantt.tooltipContent) !== null && _c !== void 0 ? _c : CustomTooltipHOC(), projection: this.projection, barClick: (task) => {
234
267
  if (this.props.secondaryGantt) {
@@ -258,7 +291,7 @@ export class KupPlannerRenderer {
258
291
  }
259
292
  }
260
293
  }, dateChange: (task) => this.handleDateChange(task, this
261
- .currentTasks, this.props.secondaryGantt.onDateChange), locale: this.locale, dateTimeFormatters: ganttDateTimeFormatters, initialScrollX: this.scrollX, initialScrollY: this.props.secondaryGantt.initialScrollY, readOnly: this.props.secondaryGantt.readOnly, scrollXChange: this.props.onScrollX, scrollYChange: this.props.secondaryGantt.onScrollY, currentTasks: this.currentTasks, handleClick: this.handleClick.bind(this), handleDblClick: this.handleDblClick.bind(this), handleContextMenu: this.handleContextMenu.bind(this), ganttOnClick: this.props.secondaryGantt.onClick, ganttOnDblClick: this.props.secondaryGantt.onDblClick, ganttonOnContextMenu: this.props.secondaryGantt.onContextMenu, label: this.props.secondaryGantt.title })))))));
294
+ .currentTasks, this.props.secondaryGantt.onDateChange), locale: this.locale, dateTimeFormatters: ganttDateTimeFormatters, initialScrollX: this.scrollX, initialScrollY: this.props.secondaryGantt.initialScrollY, readOnly: this.props.secondaryGantt.readOnly, scrollXChange: this.props.onScrollX, scrollYChange: this.props.secondaryGantt.onScrollY, currentTasks: this.currentTasks, handleClick: this.handleClick.bind(this), handleDblClick: this.handleDblClick.bind(this), handleContextMenu: this.handleContextMenu.bind(this), ganttOnClick: this.props.secondaryGantt.onClick, ganttOnDblClick: this.props.secondaryGantt.onDblClick, ganttonOnContextMenu: this.props.secondaryGantt.onContextMenu, label: this.props.secondaryGantt.title, scrollableTaskList: this.props.scrollableTaskList })))))));
262
295
  }
263
296
  static get is() { return "kup-planner-renderer"; }
264
297
  static get properties() {
@@ -130,29 +130,36 @@
130
130
  display: grid;
131
131
  grid-auto-flow: column;
132
132
  grid-gap: 8px;
133
- margin-left: 12px;
134
133
  width: max-content;
134
+ margin-bottom: var(--kup-space-05);
135
+ margin-left: var(--kup-space-04);
135
136
  }
136
137
 
137
138
  .button {
138
- background: transparent;
139
- border-color: var(--kup-primary-color, #003b77);
140
- border-radius: 4px;
141
- border-width: 1px;
142
- box-shadow: 0 3px 1px -2px rgba(var(--kup-text-color-rgb, 51 51 51), 0.2), 0 2px 2px 0 rgba(var(--kup-text-color-rgb, 51 51 51), 0.14), 0 1px 5px 0 rgba(var(--kup-text-color-rgb, 51 51 51), 0.12);
139
+ background-color: var(--kup-gray-color-70);
140
+ border: none;
141
+ text-align: left;
143
142
  box-sizing: border-box;
144
- color: var(--kup-primary-color, #003b77);
143
+ color: var(--kup-gray-color-0);
145
144
  cursor: pointer;
146
- font-size: 11px;
147
- height: 32px;
148
- min-width: 64px;
145
+ padding: var(--kup-space-03) var(--kup-space-05);
146
+ }
147
+ .button:hover {
148
+ background-color: var(--kup-gray-color-90);
149
+ }
150
+ .button:focus {
151
+ background-color: var(--kup-primary-color-60);
149
152
  }
150
153
 
151
154
  .label {
152
- font-family: var(--kup-font-family, inherit);
153
- font-size: 11px;
154
- letter-spacing: 0.0892857143em;
155
155
  text-decoration: none;
156
- text-transform: uppercase;
157
- padding: 0 6px;
156
+ font-family: var(--kup-font-family);
157
+ font-size: 14px;
158
+ line-height: 18px;
159
+ font-weight: 400;
160
+ letter-spacing: 0.16px;
161
+ }
162
+
163
+ .buttonActive {
164
+ background-color: var(--kup-primary-color-60);
158
165
  }
@@ -1,14 +1,25 @@
1
1
  import { h } from "@stencil/core";
2
2
  export class KupSwitcher {
3
3
  constructor() {
4
+ this.buttonLabels = [
5
+ 'hour',
6
+ 'day',
7
+ 'week',
8
+ 'month',
9
+ 'year',
10
+ ];
4
11
  this.timeUnitChange = undefined;
12
+ this.activeButton = 'day';
5
13
  }
6
14
  render() {
7
- const day = () => this.timeUnitChange('day');
8
- const week = () => this.timeUnitChange('week');
9
- const month = () => this.timeUnitChange('month');
10
- const year = () => this.timeUnitChange('year');
11
- return (h("div", { key: '41dda7f6481d54c262a7362440167aa58b44e8e1', class: "switcher" }, h("button", { key: 'e286b6add4c59978c39cef79e8bddd0704b9b3be', type: "button", class: "button", onClick: day }, h("span", { key: '855e19deedcbb55d6d534260e6b2b76580eb8e71', class: "label" }, "Day")), h("button", { key: 'dffc909ef397ddd44957cad2b304343f9a96998c', type: "button", class: "button", onClick: week }, h("span", { key: 'd69ab19671de0f10e60ba584a1036c628d6204b1', class: "label" }, "Week")), h("button", { key: '42c686fc57fdd6bd4a0cc8fd939946048d663771', type: "button", class: "button", onClick: month }, h("span", { key: 'a1508d10ecfdb50527a2be3b9a7bd069f922753e', class: "label" }, "Month")), h("button", { key: 'b478c7c4ed13b4ed3ab72f148995bf4cc96533c8', type: "button", class: "button", onClick: year }, h("span", { key: 'c56ee36dac14420f256d327cfe6119e9792d072f', class: "label" }, "Year"))));
15
+ const handleButtonClick = (mode) => {
16
+ this.activeButton = mode;
17
+ this.timeUnitChange(mode);
18
+ };
19
+ return (h("div", { key: '1a1621221e411df713757eae42e028968277e0a5', class: "switcher" }, this.buttonLabels.map((label) => (h("button", { type: "button", class: {
20
+ button: true,
21
+ buttonActive: this.activeButton === label,
22
+ }, onClick: () => handleButtonClick(label) }, h("span", { class: "label" }, label.charAt(0).toUpperCase() + label.slice(1)))))));
12
23
  }
13
24
  static get is() { return "kup-switcher"; }
14
25
  static get originalStyleUrls() {
@@ -46,4 +57,9 @@ export class KupSwitcher {
46
57
  }
47
58
  };
48
59
  }
60
+ static get states() {
61
+ return {
62
+ "activeButton": {}
63
+ };
64
+ }
49
65
  }
@@ -8,6 +8,7 @@ export class TaskGantt {
8
8
  this.ganttHeight = undefined;
9
9
  this.scrollY = undefined;
10
10
  this.scrollX = undefined;
11
+ this.phaseDragScroll = undefined;
11
12
  }
12
13
  /*-------------------------------------------------*/
13
14
  /* W A T C H E R S */
@@ -32,13 +33,13 @@ export class TaskGantt {
32
33
  }, 75);
33
34
  }
34
35
  render() {
35
- const newBarProps = Object.assign(Object.assign({}, this.barProps), { gridProps: this.gridProps });
36
- return (h("div", { key: '905f0400ac4a0103896527ef5197cf1d1377b47b', class: "ganttVerticalContainer", ref: (el) => (this.verticalGanttContainerRef = el), dir: "ltr" }, h("kup-gantt-calendar", { key: '5663eafd88795240ff35fb92eb68af99d6b285d7', dateSetup: this.calendarProps.dateSetup, locale: this.calendarProps.locale, rtl: this.calendarProps.rtl, headerHeight: this.calendarProps.headerHeight, columnWidth: this.calendarProps.columnWidth, fontFamily: this.calendarProps.fontFamily, fontSize: this.calendarProps.fontSize, dateTimeFormatters: this.calendarProps.dateTimeFormatters, singleLineHeader: this.calendarProps.singleLineHeader, currentDateIndicator: this.calendarProps.currentDateIndicator, svgWidth: this.gridProps.svgWidth }), h("div", { key: 'ececb1964b8a3a9e0b0a12889b680f8667e49690', ref: (el) => (this.horizontalContainerRef = el), class: "horizontalContainer", style: this.ganttHeight
36
+ const newBarProps = Object.assign(Object.assign({}, this.barProps), { gridProps: this.gridProps, phaseDragScroll: this.phaseDragScroll });
37
+ return (h("div", { key: '70a643ef8eeac75a4860e9f7b267b09fc2e7a44a', class: "ganttVerticalContainer", ref: (el) => (this.verticalGanttContainerRef = el), dir: "ltr" }, h("kup-gantt-calendar", { key: '845ae3e99e6ae05f78af126bf72b6aea0f5c535b', dateSetup: this.calendarProps.dateSetup, locale: this.calendarProps.locale, rtl: this.calendarProps.rtl, headerHeight: this.calendarProps.headerHeight, columnWidth: this.calendarProps.columnWidth, fontFamily: this.calendarProps.fontFamily, fontSize: this.calendarProps.fontSize, dateTimeFormatters: this.calendarProps.dateTimeFormatters, singleLineHeader: this.calendarProps.singleLineHeader, currentDateIndicator: this.calendarProps.currentDateIndicator, svgWidth: this.gridProps.svgWidth }), h("div", { key: '72cb7c8fc59bf4fef2800d5c73af4be641d7a8bf', ref: (el) => (this.horizontalContainerRef = el), class: "horizontalContainer", style: this.ganttHeight
37
38
  ? {
38
39
  height: `${this.ganttHeight}px`,
39
40
  width: `${this.gridProps.svgWidth}px`,
40
41
  }
41
- : { width: `${this.gridProps.svgWidth}px` } }, h("kup-grid-renderer", Object.assign({ key: '2117872fcdad4e4a3afe4eb4bfc303fce6ea2db7' }, newBarProps)))));
42
+ : { width: `${this.gridProps.svgWidth}px` } }, h("kup-grid-renderer", Object.assign({ key: '4e80893d377f70548b5301f5b00eb928ef60ae91' }, newBarProps)))));
42
43
  }
43
44
  static get is() { return "kup-task-gantt"; }
44
45
  static get properties() {
@@ -195,6 +196,21 @@ export class TaskGantt {
195
196
  },
196
197
  "attribute": "scroll-x",
197
198
  "reflect": false
199
+ },
200
+ "phaseDragScroll": {
201
+ "type": "unknown",
202
+ "mutable": false,
203
+ "complexType": {
204
+ "original": "(scrollY: number) => void",
205
+ "resolved": "(scrollY: number) => void",
206
+ "references": {}
207
+ },
208
+ "required": false,
209
+ "optional": false,
210
+ "docs": {
211
+ "tags": [],
212
+ "text": ""
213
+ }
198
214
  }
199
215
  };
200
216
  }
@@ -7,22 +7,22 @@ export class KupTaskListHeader {
7
7
  this.rowWidth = undefined;
8
8
  }
9
9
  render() {
10
- return (h("div", { key: '116213bd504a1e48f0484e92db9f7c8fb4dcb602', class: "ganttTable", style: {
10
+ return (h("div", { key: 'fb2ebda78c2213e06581f760793f19a5de8fc5f6', class: "ganttTable", style: {
11
11
  fontFamily: this.fontFamily,
12
12
  fontSize: this.fontSize,
13
- } }, h("div", { key: 'afbe32d59d041d923cd831db83ca0b09087cda23', class: "ganttTable_Header", style: {
13
+ } }, h("div", { key: '7d3be11d08ca2682277d0ee5cd5b062daaf238d4', class: "ganttTable_Header", style: {
14
14
  height: `${this.headerHeight - 2}px`,
15
- } }, h("div", { key: 'ffa34b095e8b1d59516e6892c87f9eeeec8d9160', class: "ganttTable_HeaderItem", style: {
15
+ } }, h("div", { key: 'f5f4a2a599dd84a0616b699931823760bb0b07ed', class: "ganttTable_HeaderItem", style: {
16
16
  minWidth: this.rowWidth,
17
- } }, "\u00A0Name"), h("div", { key: 'fad1584e5c299645e59f988e1fedc6fb1c6b05ff', class: "ganttTable_HeaderSeparator", style: {
17
+ } }, "\u00A0Name"), h("div", { key: '6c09f131ce232248647bf9f1fc503fdc86cc557b', class: "ganttTable_HeaderSeparator", style: {
18
18
  height: `${this.headerHeight * 0.5}px`,
19
19
  marginTop: `${this.headerHeight * 0.2}px`,
20
- } }), h("div", { key: '630992695659d8963415808cb1734e06d9aff914', class: "ganttTable_HeaderItem", style: {
20
+ } }), h("div", { key: '278d663951a0e5c73e1d365f98aefdddc9344d43', class: "ganttTable_HeaderItem", style: {
21
21
  minWidth: this.rowWidth,
22
- } }, "\u00A0From"), h("div", { key: 'e676f60163f722f1fd72f9038157359e61c895d2', class: "ganttTable_HeaderSeparator", style: {
22
+ } }, "\u00A0From"), h("div", { key: 'a1ccf08fe5072d3f0fc9faa2e743c054aa6fbc19', class: "ganttTable_HeaderSeparator", style: {
23
23
  height: `${this.headerHeight * 0.5}px`,
24
24
  marginTop: `${this.headerHeight * 0.25}px`,
25
- } }), h("div", { key: 'ee2699da7a0afbfa6944c47621e07112dca46816', class: "ganttTable_HeaderItem", style: {
25
+ } }), h("div", { key: '9766eb1cfa74ed6227876d69304b772a9958fdb0', class: "ganttTable_HeaderItem", style: {
26
26
  minWidth: this.rowWidth,
27
27
  } }, "\u00A0To"))));
28
28
  }
@@ -22,7 +22,7 @@ export class TaskListTableDefault {
22
22
  return date.toLocaleDateString(this.locale, this.dateTimeOptions);
23
23
  }
24
24
  render() {
25
- return (h("div", { key: '00ce97c983f8b2fa306cfde7a15565913bbd08fa', class: "taskListWrapper", style: {
25
+ return (h("div", { key: '185eb1455b2e46d4ef578eaada2abc891458a763', class: "taskListWrapper", style: {
26
26
  fontFamily: this.fontFamily,
27
27
  fontSize: this.fontSize,
28
28
  } }, this.tasks.map((task) => (h("div", { class: {
@@ -20,6 +20,9 @@ export class TaskList {
20
20
  this.currentTasks = undefined;
21
21
  this.label = undefined;
22
22
  this.doubleView = undefined;
23
+ this.scrollableTaskList = undefined;
24
+ this.updateTaskListScrollX = false;
25
+ this.taskListScrollX = undefined;
23
26
  this.setDoubleView = undefined;
24
27
  this.handleClick = undefined;
25
28
  this.handleDblClick = undefined;
@@ -29,6 +32,7 @@ export class TaskList {
29
32
  this.ganttonOnContextMenu = undefined;
30
33
  this.setSelectedTask = undefined;
31
34
  this.expanderClick = undefined;
35
+ this.ontaskListScrollWidth = undefined;
32
36
  this.selectedTaskId = '';
33
37
  }
34
38
  componentDidLoad() {
@@ -70,6 +74,7 @@ export class TaskList {
70
74
  tasks: this.tasks,
71
75
  locale: this.locale,
72
76
  selectedTaskId: this.selectedTaskId,
77
+ scrollableTaskList: this.scrollableTaskList,
73
78
  setSelectedTask: this.setSelectedTask.bind(this),
74
79
  onExpanderClick: this.expanderClick,
75
80
  };
@@ -81,7 +86,7 @@ export class TaskList {
81
86
  if (TaskListTable && TaskListTable['$attrs$']) {
82
87
  Object.assign(TaskListTable['$attrs$'], Object.assign({}, tableProps));
83
88
  }
84
- return (h("div", { key: 'd09682f9ac25c58a917abb739e585d5b0e8eb15b', ref: (el) => (this.taskListRef = el) }, TaskListHeader && TaskListHeader['$attrs$'] ? (TaskListHeader) : (h("kup-custom-task-list-header", Object.assign({ label: this.label, doubleView: (_a = this.doubleView) !== null && _a !== void 0 ? _a : false, setDoubleView: this.setDoubleView }, headerProps))), h("div", { key: '5fdeb14c140ae767e0e76ff0cbb7a3cc1a952ac2', class: this.horizontalContainerClass, style: this.ganttHeight
89
+ return (h("div", { key: 'cfd1d8efa3a55550e105f5ad084f011dc64e8870', ref: (el) => (this.taskListRef = el) }, TaskListHeader && TaskListHeader['$attrs$'] ? (TaskListHeader) : (h("kup-custom-task-list-header", Object.assign({ label: this.label, doubleView: (_a = this.doubleView) !== null && _a !== void 0 ? _a : false, setDoubleView: this.setDoubleView }, headerProps))), h("div", { key: '1279ffece78a182c6ff1facb46bd493a8c74f363', class: `${this.horizontalContainerClass} ${this.scrollableTaskList ? 'horizontalContainerScrollable' : ''}`, style: this.ganttHeight
85
90
  ? { height: this.ganttHeight + 'px' }
86
91
  : {}, ref: (el) => (this.horizontalContainerRef = el) }, TaskListTable && TaskListTable['$attrs$'] ? (TaskListTable) : (h("kup-custom-task-list-table", Object.assign({}, tableProps, { onclickTaskList: (id) => {
87
92
  let row = getProjectById(id, this.currentTasks);
@@ -107,7 +112,9 @@ export class TaskList {
107
112
  if (row) {
108
113
  this.handleContextMenu(event, row, this.ganttonOnContextMenu);
109
114
  }
110
- }, ganttId: KUP_PLANNER_MAIN_GANTT_ID }))))));
115
+ }, ontaskListScrollWidth: (width) => {
116
+ this.ontaskListScrollWidth(width);
117
+ }, taskListScrollX: this.taskListScrollX, ganttId: KUP_PLANNER_MAIN_GANTT_ID }))))));
111
118
  }
112
119
  static get is() { return "kup-task-list"; }
113
120
  static get originalStyleUrls() {
@@ -439,6 +446,58 @@ export class TaskList {
439
446
  "attribute": "double-view",
440
447
  "reflect": false
441
448
  },
449
+ "scrollableTaskList": {
450
+ "type": "boolean",
451
+ "mutable": false,
452
+ "complexType": {
453
+ "original": "boolean",
454
+ "resolved": "boolean",
455
+ "references": {}
456
+ },
457
+ "required": false,
458
+ "optional": true,
459
+ "docs": {
460
+ "tags": [],
461
+ "text": ""
462
+ },
463
+ "attribute": "scrollable-task-list",
464
+ "reflect": false
465
+ },
466
+ "updateTaskListScrollX": {
467
+ "type": "boolean",
468
+ "mutable": false,
469
+ "complexType": {
470
+ "original": "boolean",
471
+ "resolved": "boolean",
472
+ "references": {}
473
+ },
474
+ "required": false,
475
+ "optional": false,
476
+ "docs": {
477
+ "tags": [],
478
+ "text": ""
479
+ },
480
+ "attribute": "update-task-list-scroll-x",
481
+ "reflect": false,
482
+ "defaultValue": "false"
483
+ },
484
+ "taskListScrollX": {
485
+ "type": "number",
486
+ "mutable": false,
487
+ "complexType": {
488
+ "original": "number",
489
+ "resolved": "number",
490
+ "references": {}
491
+ },
492
+ "required": false,
493
+ "optional": false,
494
+ "docs": {
495
+ "tags": [],
496
+ "text": ""
497
+ },
498
+ "attribute": "task-list-scroll-x",
499
+ "reflect": false
500
+ },
442
501
  "setDoubleView": {
443
502
  "type": "unknown",
444
503
  "mutable": false,
@@ -625,6 +684,21 @@ export class TaskList {
625
684
  "tags": [],
626
685
  "text": ""
627
686
  }
687
+ },
688
+ "ontaskListScrollWidth": {
689
+ "type": "unknown",
690
+ "mutable": false,
691
+ "complexType": {
692
+ "original": "(width: number) => void",
693
+ "resolved": "(width: number) => void",
694
+ "references": {}
695
+ },
696
+ "required": false,
697
+ "optional": false,
698
+ "docs": {
699
+ "tags": [],
700
+ "text": ""
701
+ }
628
702
  }
629
703
  };
630
704
  }
@@ -6,7 +6,7 @@ export class StandardTooltipContent {
6
6
  this.fontFamily = undefined;
7
7
  }
8
8
  render() {
9
- return (h("div", { key: 'a8cc2a7ee22805a4a0bc4ea5a04eba47635d905d', class: "tooltipDefaultContainer", style: { fontSize: this.fontSize, fontFamily: this.fontFamily } }, h("b", { key: 'b19bb682e89805a662965153baddfe3ecbcc714b', style: { fontSize: `${parseInt(this.fontSize) + 6}px` } }, `${this.task.name}: ${this.task.start.getDate()}-${this.task.start.getMonth() + 1}-${this.task.start.getFullYear()} - ${this.task.end.getDate()}-${this.task.end.getMonth() + 1}-${this.task.end.getFullYear()}`), this.task.end.getTime() - this.task.start.getTime() !== 0 && (h("p", { class: "tooltipDefaultContainerParagraph" }, `Duration: ${~~((this.task.end.getTime() - this.task.start.getTime()) / (1000 * 60 * 60 * 24))} day(s)`)), h("p", { key: '85c595ef756929440fac10ff2a63f19a01bd1e34', class: "tooltipDefaultContainerParagraph" }, !!this.task.progress && `Progress: ${this.task.progress} %`)));
9
+ return (h("div", { key: 'c9b5188678b4980a396d82ea533c06ab66559061', class: "tooltipDefaultContainer", style: { fontSize: this.fontSize, fontFamily: this.fontFamily } }, h("b", { key: 'f1597026854513f01c5f40c95ac1b5dee2284f1a', style: { fontSize: `${parseInt(this.fontSize) + 6}px` } }, `${this.task.name}: ${this.task.start.getDate()}-${this.task.start.getMonth() + 1}-${this.task.start.getFullYear()} - ${this.task.end.getDate()}-${this.task.end.getMonth() + 1}-${this.task.end.getFullYear()}`), this.task.end.getTime() - this.task.start.getTime() !== 0 && (h("p", { class: "tooltipDefaultContainerParagraph" }, `Duration: ${~~((this.task.end.getTime() - this.task.start.getTime()) / (1000 * 60 * 60 * 24))} day(s)`)), h("p", { key: 'c544fe0f4499f5ef8dbc3cbb0076b9a4addfd5d1', class: "tooltipDefaultContainerParagraph" }, !!this.task.progress && `Progress: ${this.task.progress} %`)));
10
10
  }
11
11
  static get is() { return "kup-standard-tooltip"; }
12
12
  static get encapsulation() { return "shadow"; }
@@ -59,7 +59,7 @@ export class Tooltip {
59
59
  }
60
60
  }
61
61
  render() {
62
- return (h("div", { key: '3399b85004b93210eb01154c38f03034009cadb4', class: this.relatedX ? 'tooltipDetailsContainer' : 'tooltipDetailsContainerHidden', style: { left: `${this.relatedX}px`, top: `${this.relatedY}px` } }, h(this.TooltipContent, { key: 'ac99f13b366842e83c15fb13d0488c518e9bab90', task: this.task, fontSize: this.fontSize, fontFamily: this.fontFamily })));
62
+ return (h("div", { key: '285d804e882396024becfcfb1bbe83f7b92ef1ba', class: this.relatedX ? 'tooltipDetailsContainer' : 'tooltipDetailsContainerHidden', style: { left: `${this.relatedX}px`, top: `${this.relatedY}px` } }, h(this.TooltipContent, { key: '64a79a8e5c79ef4985e289e2e86c9d4c8ef75175', task: this.task, fontSize: this.fontSize, fontFamily: this.fontFamily })));
63
63
  }
64
64
  static get is() { return "kup-tooltip"; }
65
65
  static get encapsulation() { return "shadow"; }
@@ -31,11 +31,11 @@ export class KupVerticalScroll {
31
31
  };
32
32
  }
33
33
  render() {
34
- return (h("div", { key: '383ad53a1b4494dada5c96330c11c344719308fc', style: {
34
+ return (h("div", { key: 'fd24a7eab2da0ee2317a1fde6aa2f052394a0d5b', style: {
35
35
  height: `${this.ganttHeight}px`,
36
36
  marginTop: `${this.headerHeight}px`,
37
37
  marginLeft: this.rtl ? '' : '-1rem',
38
- }, class: "scroll", onScroll: this.verticalScroll, ref: (el) => (this.scrollRef = el) }, h("div", { key: '3dbf51a648d41315f423d58df04abb21d2d3f63e', style: {
38
+ }, class: "scroll", onScroll: this.verticalScroll, ref: (el) => (this.scrollRef = el) }, h("div", { key: 'f6d2bacc2f3c5532d33cb148e46394bc9697ece9', style: {
39
39
  height: `${this.ganttFullHeight}px`,
40
40
  width: '1px',
41
41
  } })));
@@ -251,7 +251,7 @@ export class KupProbe {
251
251
  if (this.features.theme) {
252
252
  customStyle = this.kupManager.theme.setKupStyle(this.rootElement);
253
253
  }
254
- return (h(Host, { key: '77b3c9d2e379524e26961d087145fa132f978e8b' }, customStyle ? h("style", null, customStyle) : null, h("div", { key: 'c51b0c555daa8b00fbe2fcdc43e3f6fdd15d85ef', id: componentWrapperId }, this.content)));
254
+ return (h(Host, { key: '71372dfbcfbf66e3f83eda11eca5fddca3402d1c' }, customStyle ? h("style", null, customStyle) : null, h("div", { key: 'a05d5a30011b2e1ede2f6ca1eca593de48aebd06', id: componentWrapperId }, this.content)));
255
255
  }
256
256
  disconnectedCallback() {
257
257
  if (this.features.language) {
@@ -102,7 +102,7 @@ export class KupProgressBar {
102
102
  ? true
103
103
  : false,
104
104
  };
105
- return (h(Host, { key: 'e3d69a32dbec693f8422b7e7346b7b804eeb76ca' }, h("style", { key: '262b6848f0829cb32c4101e238bf4436e335246b' }, this.kupManager.theme.setKupStyle(this.rootElement)), h("div", { key: '71de2f445158aec16e207563d8a6dbfbc1935798', id: componentWrapperId }, h(FProgressBar, Object.assign({ key: '4a7d4af7f4f5029c9e0a113258291b3314886ad4' }, props)))));
105
+ return (h(Host, { key: '57a2cca6ae1cfd6ff6a69288018df10806d0e67c' }, h("style", { key: '7fd614839501fda6bf2d3d89ad66e76e59637297' }, this.kupManager.theme.setKupStyle(this.rootElement)), h("div", { key: 'eee4d3901f0552242a11513c990aa4cbecce32bc', id: componentWrapperId }, h(FProgressBar, Object.assign({ key: '3cee61bc06301e0f709610e30cb62fa092982ba0' }, props)))));
106
106
  }
107
107
  disconnectedCallback() {
108
108
  this.kupManager.theme.unregister(this);
@@ -110,7 +110,7 @@ export class KupQlik {
110
110
  layoutStyle = {
111
111
  ['--lyo_obj-height']: this.defobjsize,
112
112
  };
113
- return (h("div", { key: '7ac97c760e531f411986565b891fd93819c25eb3', class: classLayout, style: layoutStyle }, this.divlist));
113
+ return (h("div", { key: 'ad3b840b782c155e43d25d46b4fbf3150d0d5296', class: classLayout, style: layoutStyle }, this.divlist));
114
114
  }
115
115
  componentDidRender() {
116
116
  if (this.debug) {
@@ -91,7 +91,7 @@ export class KupRating {
91
91
  : false,
92
92
  onClick: (i) => this.onKupClick(i),
93
93
  };
94
- return (h(Host, { key: '4e24c6e19d8bdf55cd5af32b56443a16ad4338fd' }, h("style", { key: '134f0d0b306debe1051accef1f8f453d0b31a74a' }, this.kupManager.theme.setKupStyle(this.rootElement)), h("div", { key: '90bf22fb71164827090b8aa5c0e7130f0faa044d', id: componentWrapperId }, h(FRating, Object.assign({ key: 'd7528316b469425004dafadf7c3e23bcfc21d88d' }, props)))));
94
+ return (h(Host, { key: 'c56d698d5f1b274ee1a318104a3acb41156b78e1' }, h("style", { key: 'b1e57137e0a1461f12d73ec86d4dbdcf023ffe16' }, this.kupManager.theme.setKupStyle(this.rootElement)), h("div", { key: '4e934f072d83d0f6ffe7ffd7ef8edcccf3935d9e', id: componentWrapperId }, h(FRating, Object.assign({ key: '6a5946de139310a68c7e4d5221fc4444a28b80e1' }, props)))));
95
95
  }
96
96
  disconnectedCallback() {
97
97
  this.kupManager.theme.unregister(this);
@@ -92,7 +92,7 @@ export class KupSnackbar {
92
92
  this.kupManager.debug.logRender(this, true);
93
93
  }
94
94
  render() {
95
- return (h(Host, { key: 'bab6e44cdbdcbd0174991aa10a9df10b4edce2a8', "kup-visible": this.visible }, h("style", { key: 'e48b96994b94d274c276729b9c4e2abab08f534e' }, this.kupManager.theme.setKupStyle(this.rootElement)), h("div", { key: '57818756dc7dfb6fe3eb28ea48941fe0e7cb22ba', id: componentWrapperId }, h("div", { key: '05aa2207cd12926db3943ac4c25b57021fb62ddf', class: snackbarClass }, h("div", { key: 'f1f1279844e5faf955faab329015103e7b29ba7c', class: `${snackbarClass}__text` }, this.text), this.actionButton || this.closeButton ? (h("div", { class: `${snackbarClass}__buttons` }, this.actionButton ? (h("div", { class: `${snackbarClass}__action` }, h(FButton, Object.assign({}, this.actionButton, { onClick: () => this.onKupActionClick() })))) : null, this.closeButton ? (h("div", { class: `${snackbarClass}__close` }, h(FButton, { icon: "close", onClick: () => this.hide() }))) : null)) : null))));
95
+ return (h(Host, { key: '3e52e4dd0672594bf385bcd44f3ceac7474ebb54', "kup-visible": this.visible }, h("style", { key: '2b6dcba48e84c7ba0ded38c5a86907a1ddb0aed4' }, this.kupManager.theme.setKupStyle(this.rootElement)), h("div", { key: '6843781af0232d8dd65eb23941a2f33a17ec694f', id: componentWrapperId }, h("div", { key: '178a36a80ff89fa6b31af04c372367e0e4427b89', class: snackbarClass }, h("div", { key: '8383fa478dd8a4f35fb9718a83131d26caadb275', class: `${snackbarClass}__text` }, this.text), this.actionButton || this.closeButton ? (h("div", { class: `${snackbarClass}__buttons` }, this.actionButton ? (h("div", { class: `${snackbarClass}__action` }, h(FButton, Object.assign({}, this.actionButton, { onClick: () => this.onKupActionClick() })))) : null, this.closeButton ? (h("div", { class: `${snackbarClass}__close` }, h(FButton, { icon: "close", onClick: () => this.hide() }))) : null)) : null))));
96
96
  }
97
97
  disconnectedCallback() {
98
98
  this.kupManager.theme.unregister(this);