@sme.up/ketchup 10.1.2 → 10.1.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 (61) hide show
  1. package/dist/cjs/ketchup.cjs.js +1 -1
  2. package/dist/cjs/kup-custom-task-list-header_4.cjs.entry.js +195 -22
  3. package/dist/cjs/kup-gantt_10.cjs.entry.js +19 -17
  4. package/dist/cjs/{kup-planner-declarations-7291d01c.js → kup-planner-declarations-959110da.js} +1 -1
  5. package/dist/cjs/kup-planner-renderer.cjs.entry.js +3 -3
  6. package/dist/cjs/kup-planner.cjs.entry.js +112 -4
  7. package/dist/cjs/loader.cjs.js +1 -1
  8. package/dist/collection/assets/index.js +4 -0
  9. package/dist/collection/assets/planner-example-7.js +370 -0
  10. package/dist/collection/components/kup-planner/kup-planner-declarations.js +1 -1
  11. package/dist/collection/components/kup-planner/kup-planner.js +153 -3
  12. package/dist/collection/components/kup-planner/utils/custom-task-list-table.js +30 -12
  13. package/dist/collection/components/kup-planner/utils/kup-gantt/kup-gantt.js +31 -7
  14. package/dist/collection/components/kup-planner/utils/kup-grid-renderer/kup-grid-renderer.js +181 -4
  15. package/dist/collection/components/kup-planner/utils/kup-planner-renderer.js +2 -2
  16. package/dist/collection/components/kup-planner/utils/kup-task-gantt/kup-task-gantt.js +4 -4
  17. package/dist/collection/components/kup-planner/utils/kup-task-list/kup-task-list.css +1 -0
  18. package/dist/components/kup-custom-task-list-table.js +1 -1
  19. package/dist/components/kup-gantt.js +1 -1
  20. package/dist/components/kup-grid-renderer.js +1 -1
  21. package/dist/components/kup-planner-renderer.js +1 -1
  22. package/dist/components/kup-planner.js +122 -12
  23. package/dist/components/kup-task-gantt.js +1 -1
  24. package/dist/components/kup-task-list-header.js +1 -1
  25. package/dist/components/kup-task-list-table.js +1 -1
  26. package/dist/components/kup-task-list.js +1 -1
  27. package/dist/components/{p-76c4c708.js → p-26d3e5b2.js} +1 -1
  28. package/dist/components/{p-2fff7268.js → p-45cdd2a4.js} +10 -10
  29. package/dist/components/{p-a0eeacbd.js → p-4edc1bd0.js} +1 -1
  30. package/dist/components/{p-9da8cd93.js → p-5cbf86c3.js} +13 -10
  31. package/dist/components/{p-53e38c4a.js → p-90c212d2.js} +1 -1
  32. package/dist/components/{p-0e6c0355.js → p-9c8c4e2e.js} +30 -12
  33. package/dist/components/{p-5517e8e8.js → p-c2b9b4ba.js} +4 -4
  34. package/dist/components/{p-4efa19a7.js → p-c8302548.js} +3 -3
  35. package/dist/components/{p-c43d08ab.js → p-d72814f5.js} +161 -5
  36. package/dist/esm/ketchup.js +1 -1
  37. package/dist/esm/kup-custom-task-list-header_4.entry.js +191 -18
  38. package/dist/esm/kup-gantt_10.entry.js +14 -12
  39. package/dist/esm/{kup-planner-declarations-0704bc6c.js → kup-planner-declarations-5981474b.js} +1 -1
  40. package/dist/esm/kup-planner-renderer.entry.js +3 -3
  41. package/dist/esm/kup-planner.entry.js +112 -4
  42. package/dist/esm/loader.js +1 -1
  43. package/dist/ketchup/ketchup.esm.js +1 -1
  44. package/dist/ketchup/p-088e2f23.entry.js +1 -0
  45. package/dist/ketchup/p-58bc7c00.entry.js +1 -0
  46. package/dist/ketchup/{p-54ebe3bd.entry.js → p-6aec24be.entry.js} +1 -1
  47. package/dist/ketchup/p-78c0ff1b.js +1 -0
  48. package/dist/ketchup/p-ca9ec047.entry.js +16 -0
  49. package/dist/types/components/kup-planner/kup-planner-declarations.d.ts +19 -0
  50. package/dist/types/components/kup-planner/kup-planner.d.ts +12 -1
  51. package/dist/types/components/kup-planner/utils/kup-gantt/kup-gantt.d.ts +2 -1
  52. package/dist/types/components/kup-planner/utils/kup-grid-renderer/kup-grid-renderer.d.ts +7 -0
  53. package/dist/types/components.d.ts +24 -2
  54. package/package.json +1 -1
  55. package/dist/ketchup/p-008bdcdc.js +0 -1
  56. package/dist/ketchup/p-792e9244.entry.js +0 -1
  57. package/dist/ketchup/p-e8823224.entry.js +0 -1
  58. package/dist/ketchup/p-f38c2d0e.entry.js +0 -16
  59. package/dist/cjs/{bar.helpers-c481a535.js → other.helpers-8782a839.js} +46 -46
  60. package/dist/esm/{bar.helpers-23a51579.js → other.helpers-83e3225b.js} +46 -46
  61. /package/dist/ketchup/{p-cd3a7d53.js → p-17c9ef50.js} +0 -0
@@ -3,9 +3,9 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-e8aa3c73.js');
6
+ const other_helpers = require('./other.helpers-8782a839.js');
6
7
  const kupPlannerRendererHelper = require('./kup-planner-renderer-helper-63478d1c.js');
7
- const bar_helpers = require('./bar.helpers-c481a535.js');
8
- const kupPlannerDeclarations = require('./kup-planner-declarations-7291d01c.js');
8
+ const kupPlannerDeclarations = require('./kup-planner-declarations-959110da.js');
9
9
  require('./kup-dates-bc4cf9d0.js');
10
10
 
11
11
  const kupGanttCss = ".kup-body-compact-01{font-family:var(--kup-font-family);font-size:var(--kup-body-compact-01-font-size, 14px);line-height:18px;font-weight:400;letter-spacing:0.16px}.kup-body-01{font-family:var(--kup-font-family);font-size:var(--kup-body-01-font-size, 14px);line-height:20px;font-weight:400;letter-spacing:0.16px}.kup-code-01{font-family:var(--kup-font-family-monospace);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-label-01{font-family:var(--kup-font-family);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-caption-02{font-family:var(--kup-font-family);font-size:12px;line-height:15px;font-weight:500;letter-spacing:1px}.kup-caption-01{font-family:var(--kup-font-family);font-size:10px;line-height:13px;font-weight:400;letter-spacing:1px}.kup-small-label-01{font-family:var(--kup-font-family);font-size:6px;line-height:9px;font-weight:400;letter-spacing:1px}.kup-heading-compact-01{font-family:var(--kup-font-family);font-size:14px;line-height:18px;font-weight:600;letter-spacing:0.16px}.kup-heading-01{font-family:var(--kup-font-family);font-size:14px;line-height:20px;font-weight:600;letter-spacing:0.16px}.kup-heading-02{font-family:var(--kup-font-family);font-size:16px;line-height:24px;font-weight:500;letter-spacing:0}.kup-heading-03{font-family:var(--kup-font-family);font-size:20px;line-height:28px;font-weight:400;letter-spacing:0}.kup-heading-04{font-family:var(--kup-font-family);font-size:28px;line-height:36px;font-weight:400;letter-spacing:0}.kup-heading-05{font-family:var(--kup-font-family);font-size:32px;line-height:40px;font-weight:300;letter-spacing:0}.kup-heading-06{font-family:var(--kup-font-family);font-size:42px;line-height:50px;font-weight:300;letter-spacing:0}.kup-heading-07{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:300;letter-spacing:0}.kup-heading-08{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:600;letter-spacing:0}.wrapper{display:flex;padding:0;margin:0;list-style:none;outline:none;position:relative}.ganttContainer{background:var(--kup-layer-2);border-radius:var(--kup-radius-00);overflow:hidden;padding:var(--kup-space-05)}.ganttVerticalContainer{overflow:hidden;font-size:0;margin:0;padding:0}.horizontalContainer{margin:0;padding:0;overflow:hidden}.horizontalContainerScrollable{overflow:auto !important;scrollbar-width:0}.horizontalContainerScrollable::-webkit-scrollbar{width:0;height:0}.task-gantt{overflow:hidden}";
@@ -55,6 +55,7 @@ const KupGantt = class {
55
55
  this.hideLabel = false;
56
56
  this.showSecondaryDates = false;
57
57
  this.hideDependencies = false;
58
+ this.dependencies = [];
58
59
  this.projection = undefined;
59
60
  this.displayedStartDate = undefined;
60
61
  this.displayedEndDate = undefined;
@@ -166,12 +167,12 @@ const KupGantt = class {
166
167
  updateGanttData() {
167
168
  let filteredTasks;
168
169
  if (this.expanderClick) {
169
- filteredTasks = bar_helpers.removeHiddenTasks(this.tasks);
170
+ filteredTasks = other_helpers.removeHiddenTasks(this.tasks);
170
171
  }
171
172
  else {
172
173
  filteredTasks = this.tasks;
173
174
  }
174
- filteredTasks = filteredTasks.sort(bar_helpers.sortTasks);
175
+ filteredTasks = filteredTasks.sort(other_helpers.sortTasks);
175
176
  const [startDate, endDate] = kupPlannerRendererHelper.ganttDateRangeFromTask(filteredTasks, this.viewMode, this.preStepsCount, this.showSecondaryDates, this.displayedStartDate, this.displayedEndDate);
176
177
  let newDates = kupPlannerRendererHelper.seedDates(startDate, endDate, this.viewMode);
177
178
  if (this.rtl) {
@@ -198,7 +199,7 @@ const KupGantt = class {
198
199
  if (set) {
199
200
  this.dateSetup = { dates: newDates, viewMode: this.viewMode };
200
201
  }
201
- this.barTasks = bar_helpers.convertToBarTasks(filteredTasks, newDates, this.columnWidth, this.rowHeight, this.taskHeight, this.projectHeight, this.timelineHeight, this.barCornerRadius, this.handleWidth, this.rtl, this.barProgressColor, this.barProgressSelectedColor, this.barBackgroundColor, this.barBackgroundSelectedColor, this.projectProgressColor, this.projectProgressSelectedColor, this.projectBackgroundColor, this.projectBackgroundSelectedColor, this.showSecondaryDates);
202
+ this.barTasks = other_helpers.convertToBarTasks(filteredTasks, newDates, this.columnWidth, this.rowHeight, this.taskHeight, this.projectHeight, this.timelineHeight, this.barCornerRadius, this.handleWidth, this.rtl, this.barProgressColor, this.barProgressSelectedColor, this.barBackgroundColor, this.barBackgroundSelectedColor, this.projectProgressColor, this.projectProgressSelectedColor, this.projectBackgroundColor, this.projectBackgroundSelectedColor, this.showSecondaryDates);
202
203
  }
203
204
  updateIgnoreScrollEvent() {
204
205
  if (this.viewMode === this.dateSetup.viewMode &&
@@ -313,7 +314,7 @@ const KupGantt = class {
313
314
  this.ignoreScrollEvent = true;
314
315
  }
315
316
  updateCurrentDateIndicatorContent() {
316
- const x = bar_helpers.calculateCurrentDateCalculator(this.dateSetup.dates, this.columnWidth);
317
+ const x = other_helpers.calculateCurrentDateCalculator(this.dateSetup.dates, this.columnWidth);
317
318
  if (x !== 0) {
318
319
  this.currentDateIndicatorContent = {
319
320
  color: this.todayColor,
@@ -323,7 +324,7 @@ const KupGantt = class {
323
324
  }
324
325
  updateProjectionContent() {
325
326
  if (this.projection) {
326
- const { x0, xf } = bar_helpers.calculateProjection(this.projection.start, this.projection.end, this.dateSetup.dates, this.columnWidth);
327
+ const { x0, xf } = other_helpers.calculateProjection(this.projection.start, this.projection.end, this.dateSetup.dates, this.columnWidth);
327
328
  this.projectionContent = {
328
329
  x0,
329
330
  xf,
@@ -542,6 +543,7 @@ const KupGantt = class {
542
543
  currentDateIndicator: this.currentDateIndicatorContent,
543
544
  projection: this.projectionContent,
544
545
  readOnly: this.readOnly,
546
+ dependencies: this.dependencies,
545
547
  setGanttEvent: this.setGanttEvent.bind(this),
546
548
  setFailedTask: this.setFailedTask.bind(this),
547
549
  setSelectedTask: this.handleSelectedTask.bind(this),
@@ -552,7 +554,7 @@ const KupGantt = class {
552
554
  barDblClick: this.barDblClick,
553
555
  barContextMenu: this.barContextMenu,
554
556
  delete: this.delete,
555
- phaseDrop: this.phaseDrop
557
+ phaseDrop: this.phaseDrop,
556
558
  };
557
559
  const tableProps = {
558
560
  rowHeight: this.rowHeight,
@@ -571,11 +573,11 @@ const KupGantt = class {
571
573
  setSelectedTask: this.handleSelectedTask.bind(this),
572
574
  expanderClick: this.handleExpanderClick.bind(this),
573
575
  TaskListHeader: this.TaskListHeader,
574
- TaskListTable: this.TaskListTable
576
+ TaskListTable: this.TaskListTable,
575
577
  };
576
- return (index.h("div", { key: '95eabbafe96bf8f67cfd5ed7d2b0598684cb23f3', class: "gannt-wrapper-main" }, index.h("div", { key: '55889af9cb5503f797fe68ec210c68af1374acc5', class: "wrapper", onKeyDown: this.handleKeyDown.bind(this), tabIndex: 0, ref: (el) => (this.wrapperRef = el) }, this.listCellWidth && (index.h("kup-task-list", Object.assign({ key: 'a4edfd9f6363f172bb31509ba37394b20cfdbd3d', currentTasks: this.currentTasks, handleClick: this.handleClick, handleDblClick: this.handleDblClick, handleContextMenu: this.handleContextMenu, ganttOnClick: this.ganttOnClick, ganttOnDblClick: this.ganttOnDblClick, ganttonOnContextMenu: this.ganttonOnContextMenu, label: this.label, doubleView: this.doubleView, setDoubleView: this.setDoubleView }, tableProps, { class: "tasks", scrollableTaskList: this.scrollableTaskList, updateTaskListScrollX: this.ignoreScrollEvent, ontaskListScrollWidth: (width) => {
578
+ return (index.h("div", { key: '121b1b2857d26033d74411289b05d0090556801b', class: "gannt-wrapper-main" }, index.h("div", { key: '7b775dcf04e33e317ff526186c2bc4905fcb4812', class: "wrapper", onKeyDown: this.handleKeyDown.bind(this), tabIndex: 0, ref: (el) => (this.wrapperRef = el) }, this.listCellWidth && (index.h("kup-task-list", Object.assign({ key: '898db18e0d258874ce7651c2925af28f35b04823', currentTasks: this.currentTasks, handleClick: this.handleClick, handleDblClick: this.handleDblClick, handleContextMenu: this.handleContextMenu, ganttOnClick: this.ganttOnClick, ganttOnDblClick: this.ganttOnDblClick, ganttonOnContextMenu: this.ganttonOnContextMenu, label: this.label, doubleView: this.doubleView, setDoubleView: this.setDoubleView }, tableProps, { class: "tasks", scrollableTaskList: this.scrollableTaskList, updateTaskListScrollX: this.ignoreScrollEvent, ontaskListScrollWidth: (width) => {
577
579
  this.taskListScrollWidth = width;
578
- }, taskListScrollX: this.taskListScrollX, ref: (el) => (this.taskListTrueRef = el) }))), index.h("kup-task-gantt", { key: '600b2af4dd6fd1dda0730f49d954282c898726ff', gridProps: gridProps, calendarProps: calendarProps, barProps: barProps, ganttHeight: this.ganttHeight, taskGanttRef: this.taskGanttRef, scrollY: this.scrollY, scrollX: this.scrollX, phaseDragScroll: this.handlePhaseDragScroll.bind(this), class: "ganttContainer" }), this.ganttEvent.changedTask && (index.h("kup-tooltip", { key: 'fa9b8855edcd4e95283cb65ec3429d3ec3756c18', arrowIndent: this.arrowIndent, rowHeight: this.rowHeight, svgContainerHeight: this.svgContainerHeight, svgContainerWidth: this.svgContainerWidth, fontFamily: this.fontFamily, fontSize: this.fontSize, scrollX: this.scrollX, scrollY: this.scrollY, task: this.ganttEvent.changedTask, headerHeight: this.headerHeight, taskListWidth: this.taskListWidth, TooltipContent: this.TooltipContent, rtl: this.rtl, svgWidth: this.svgWidth })), index.h("kup-vertical-scroll", { key: 'a8173cc05e5608dc797f01f314fa2ffdc21407f9', ganttFullHeight: this.ganttFullHeight, ganttHeight: this.ganttHeight, headerHeight: this.headerHeight, scrollNumber: this.scrollY, verticalScroll: this.handleScrollY.bind(this), rtl: this.rtl })), this.taskGanttRef && (index.h("kup-horizontal-scroll", { key: '0c50510e0abef51e326bc21a84b96520deac88c8', svgWidth: this.svgWidth, taskListTrueRef: this.taskListTrueRef, taskListWidth: this.taskListWidth, scrollNumber: this.scrollX, rtl: this.rtl, horizontalScroll: this.handleScrollX.bind(this), horizontalTaskListScroll: this.handleTaskListScrollX.bind(this), listCellWidth: this.listCellWidth, scrollableTaskList: this.scrollableTaskList, taskListScrollWidth: this.taskListScrollWidth, taskListScrollNumber: this.taskListScrollX }))));
580
+ }, taskListScrollX: this.taskListScrollX, ref: (el) => (this.taskListTrueRef = el) }))), index.h("kup-task-gantt", { key: '80670fd1bca1243258feab7fcda294ddb6b9e972', gridProps: gridProps, calendarProps: calendarProps, barProps: barProps, ganttHeight: this.ganttHeight, taskGanttRef: this.taskGanttRef, scrollY: this.scrollY, scrollX: this.scrollX, phaseDragScroll: this.handlePhaseDragScroll.bind(this), class: "ganttContainer" }), this.ganttEvent.changedTask && (index.h("kup-tooltip", { key: 'b81a3b3c980124ebdd668ead2bb81ba30fd1bedb', arrowIndent: this.arrowIndent, rowHeight: this.rowHeight, svgContainerHeight: this.svgContainerHeight, svgContainerWidth: this.svgContainerWidth, fontFamily: this.fontFamily, fontSize: this.fontSize, scrollX: this.scrollX, scrollY: this.scrollY, task: this.ganttEvent.changedTask, headerHeight: this.headerHeight, taskListWidth: this.taskListWidth, TooltipContent: this.TooltipContent, rtl: this.rtl, svgWidth: this.svgWidth })), index.h("kup-vertical-scroll", { key: '646408c0efc5eb955686c9ad4b45c12d61eb1db6', ganttFullHeight: this.ganttFullHeight, ganttHeight: this.ganttHeight, headerHeight: this.headerHeight, scrollNumber: this.scrollY, verticalScroll: this.handleScrollY.bind(this), rtl: this.rtl })), this.taskGanttRef && (index.h("kup-horizontal-scroll", { key: 'd8eb8d2ea2a7d3b9cbfa9c79aa608dfdac4786f7', svgWidth: this.svgWidth, taskListTrueRef: this.taskListTrueRef, taskListWidth: this.taskListWidth, scrollNumber: this.scrollX, rtl: this.rtl, horizontalScroll: this.handleScrollX.bind(this), horizontalTaskListScroll: this.handleTaskListScrollX.bind(this), listCellWidth: this.listCellWidth, scrollableTaskList: this.scrollableTaskList, taskListScrollWidth: this.taskListScrollWidth, taskListScrollNumber: this.taskListScrollX }))));
579
581
  }
580
582
  get rootElement() { return index.getElement(this); }
581
583
  static get watchers() { return {
@@ -789,13 +791,13 @@ const TaskGantt = class {
789
791
  }, 75);
790
792
  }
791
793
  render() {
792
- const newBarProps = Object.assign(Object.assign({}, this.barProps), { gridProps: this.gridProps, phaseDragScroll: this.phaseDragScroll });
793
- return (index.h("div", { key: 'e9b7f7f147fae5077c4b17232661030262170a76', class: "ganttVerticalContainer", ref: (el) => (this.verticalGanttContainerRef = el), dir: "ltr" }, index.h("kup-gantt-calendar", { key: '6575335f2a55573ad95089af45dc3dbf4292f37c', 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 }), index.h("div", { key: 'ec7b2e3f28ada7ac48c92686888b2b17898e2252', ref: (el) => (this.horizontalContainerRef = el), class: "horizontalContainer", style: this.ganttHeight
794
+ const newBarProps = Object.assign(Object.assign({}, this.barProps), { gridProps: this.gridProps, phaseDragScroll: this.phaseDragScroll, dependencies: this.barProps.dependencies || [] });
795
+ return (index.h("div", { key: 'f171a1dc93bb1bee342dc2384c5eda5a0a1670a5', class: "ganttVerticalContainer", ref: (el) => (this.verticalGanttContainerRef = el), dir: "ltr" }, index.h("kup-gantt-calendar", { key: '8df97b74146bc84af4a20d704efeb5d17202bfee', 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 }), index.h("div", { key: '1295b8511846e0de6f45d13f765124ec750ededb', ref: (el) => (this.horizontalContainerRef = el), class: "horizontalContainer", style: this.ganttHeight
794
796
  ? {
795
797
  height: `${this.ganttHeight}px`,
796
798
  width: `${this.gridProps.svgWidth}px`,
797
799
  }
798
- : { width: `${this.gridProps.svgWidth}px` } }, index.h("kup-grid-renderer", Object.assign({ key: '98ed84972a106b35ea7ba6a380d83e025a635ebd' }, newBarProps)))));
800
+ : { width: `${this.gridProps.svgWidth}px` } }, index.h("kup-grid-renderer", Object.assign({ key: '7a35e55a9dff2cef220055a55d71eccf6a1e0801' }, newBarProps)))));
799
801
  }
800
802
  get rootElement() { return index.getElement(this); }
801
803
  static get watchers() { return {
@@ -806,7 +808,7 @@ const TaskGantt = class {
806
808
  }; }
807
809
  };
808
810
 
809
- const kupTaskListCss$2 = ".kup-body-compact-01{font-family:var(--kup-font-family);font-size:var(--kup-body-compact-01-font-size, 14px);line-height:18px;font-weight:400;letter-spacing:0.16px}.kup-body-01{font-family:var(--kup-font-family);font-size:var(--kup-body-01-font-size, 14px);line-height:20px;font-weight:400;letter-spacing:0.16px}.kup-code-01{font-family:var(--kup-font-family-monospace);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-label-01{font-family:var(--kup-font-family);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-caption-02{font-family:var(--kup-font-family);font-size:12px;line-height:15px;font-weight:500;letter-spacing:1px}.kup-caption-01{font-family:var(--kup-font-family);font-size:10px;line-height:13px;font-weight:400;letter-spacing:1px}.kup-small-label-01{font-family:var(--kup-font-family);font-size:6px;line-height:9px;font-weight:400;letter-spacing:1px}.kup-heading-compact-01{font-family:var(--kup-font-family);font-size:14px;line-height:18px;font-weight:600;letter-spacing:0.16px}.kup-heading-01{font-family:var(--kup-font-family);font-size:14px;line-height:20px;font-weight:600;letter-spacing:0.16px}.kup-heading-02{font-family:var(--kup-font-family);font-size:16px;line-height:24px;font-weight:500;letter-spacing:0}.kup-heading-03{font-family:var(--kup-font-family);font-size:20px;line-height:28px;font-weight:400;letter-spacing:0}.kup-heading-04{font-family:var(--kup-font-family);font-size:28px;line-height:36px;font-weight:400;letter-spacing:0}.kup-heading-05{font-family:var(--kup-font-family);font-size:32px;line-height:40px;font-weight:300;letter-spacing:0}.kup-heading-06{font-family:var(--kup-font-family);font-size:42px;line-height:50px;font-weight:300;letter-spacing:0}.kup-heading-07{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:300;letter-spacing:0}.kup-heading-08{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:600;letter-spacing:0}.tasks{background:var(--kup-layer-2);border-radius:var(--kup-radius-00);padding:var(--kup-space-05);margin-right:var(--kup-space-05)}.taskListWrapper{display:table;border-bottom:#e6e4e4 1px solid;border-left:#e6e4e4 1px solid}.taskListTableRow{display:table-row;text-overflow:ellipsis}.taskListCell{display:table-cell;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.taskListNameWrapper{display:flex}.taskListExpander{color:rgb(86, 86, 86);font-size:0.6rem;padding:0.15rem 0.2rem 0 0.2rem;user-select:none;cursor:pointer}.taskListEmptyExpander{font-size:0.6rem;padding-left:1rem;user-select:none}.ganttTable{display:table;border-bottom:#e6e4e4 1px solid;border-top:#e6e4e4 1px solid;border-left:#e6e4e4 1px solid}.ganttTable_Header{display:table-row;list-style:none}.ganttTable_HeaderSeparator{border-right:1px solid rgb(196, 196, 196);opacity:1;margin-left:-2px}.ganttTable_HeaderItem{display:table-cell;vertical-align:-webkit-baseline-middle;vertical-align:middle}";
811
+ const kupTaskListCss$2 = ".kup-body-compact-01{font-family:var(--kup-font-family);font-size:var(--kup-body-compact-01-font-size, 14px);line-height:18px;font-weight:400;letter-spacing:0.16px}.kup-body-01{font-family:var(--kup-font-family);font-size:var(--kup-body-01-font-size, 14px);line-height:20px;font-weight:400;letter-spacing:0.16px}.kup-code-01{font-family:var(--kup-font-family-monospace);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-label-01{font-family:var(--kup-font-family);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-caption-02{font-family:var(--kup-font-family);font-size:12px;line-height:15px;font-weight:500;letter-spacing:1px}.kup-caption-01{font-family:var(--kup-font-family);font-size:10px;line-height:13px;font-weight:400;letter-spacing:1px}.kup-small-label-01{font-family:var(--kup-font-family);font-size:6px;line-height:9px;font-weight:400;letter-spacing:1px}.kup-heading-compact-01{font-family:var(--kup-font-family);font-size:14px;line-height:18px;font-weight:600;letter-spacing:0.16px}.kup-heading-01{font-family:var(--kup-font-family);font-size:14px;line-height:20px;font-weight:600;letter-spacing:0.16px}.kup-heading-02{font-family:var(--kup-font-family);font-size:16px;line-height:24px;font-weight:500;letter-spacing:0}.kup-heading-03{font-family:var(--kup-font-family);font-size:20px;line-height:28px;font-weight:400;letter-spacing:0}.kup-heading-04{font-family:var(--kup-font-family);font-size:28px;line-height:36px;font-weight:400;letter-spacing:0}.kup-heading-05{font-family:var(--kup-font-family);font-size:32px;line-height:40px;font-weight:300;letter-spacing:0}.kup-heading-06{font-family:var(--kup-font-family);font-size:42px;line-height:50px;font-weight:300;letter-spacing:0}.kup-heading-07{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:300;letter-spacing:0}.kup-heading-08{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:600;letter-spacing:0}.tasks{background:var(--kup-layer-2);border-radius:var(--kup-radius-00);padding:var(--kup-space-05);margin-right:var(--kup-space-05);min-width:25%}.taskListWrapper{display:table;border-bottom:#e6e4e4 1px solid;border-left:#e6e4e4 1px solid}.taskListTableRow{display:table-row;text-overflow:ellipsis}.taskListCell{display:table-cell;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.taskListNameWrapper{display:flex}.taskListExpander{color:rgb(86, 86, 86);font-size:0.6rem;padding:0.15rem 0.2rem 0 0.2rem;user-select:none;cursor:pointer}.taskListEmptyExpander{font-size:0.6rem;padding-left:1rem;user-select:none}.ganttTable{display:table;border-bottom:#e6e4e4 1px solid;border-top:#e6e4e4 1px solid;border-left:#e6e4e4 1px solid}.ganttTable_Header{display:table-row;list-style:none}.ganttTable_HeaderSeparator{border-right:1px solid rgb(196, 196, 196);opacity:1;margin-left:-2px}.ganttTable_HeaderItem{display:table-cell;vertical-align:-webkit-baseline-middle;vertical-align:middle}";
810
812
  const KupTaskListStyle0 = kupTaskListCss$2;
811
813
 
812
814
  const TaskList = class {
@@ -932,7 +934,7 @@ const TaskList = class {
932
934
  };
933
935
  TaskList.style = KupTaskListStyle0;
934
936
 
935
- const kupTaskListCss$1 = ".kup-body-compact-01{font-family:var(--kup-font-family);font-size:var(--kup-body-compact-01-font-size, 14px);line-height:18px;font-weight:400;letter-spacing:0.16px}.kup-body-01{font-family:var(--kup-font-family);font-size:var(--kup-body-01-font-size, 14px);line-height:20px;font-weight:400;letter-spacing:0.16px}.kup-code-01{font-family:var(--kup-font-family-monospace);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-label-01{font-family:var(--kup-font-family);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-caption-02{font-family:var(--kup-font-family);font-size:12px;line-height:15px;font-weight:500;letter-spacing:1px}.kup-caption-01{font-family:var(--kup-font-family);font-size:10px;line-height:13px;font-weight:400;letter-spacing:1px}.kup-small-label-01{font-family:var(--kup-font-family);font-size:6px;line-height:9px;font-weight:400;letter-spacing:1px}.kup-heading-compact-01{font-family:var(--kup-font-family);font-size:14px;line-height:18px;font-weight:600;letter-spacing:0.16px}.kup-heading-01{font-family:var(--kup-font-family);font-size:14px;line-height:20px;font-weight:600;letter-spacing:0.16px}.kup-heading-02{font-family:var(--kup-font-family);font-size:16px;line-height:24px;font-weight:500;letter-spacing:0}.kup-heading-03{font-family:var(--kup-font-family);font-size:20px;line-height:28px;font-weight:400;letter-spacing:0}.kup-heading-04{font-family:var(--kup-font-family);font-size:28px;line-height:36px;font-weight:400;letter-spacing:0}.kup-heading-05{font-family:var(--kup-font-family);font-size:32px;line-height:40px;font-weight:300;letter-spacing:0}.kup-heading-06{font-family:var(--kup-font-family);font-size:42px;line-height:50px;font-weight:300;letter-spacing:0}.kup-heading-07{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:300;letter-spacing:0}.kup-heading-08{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:600;letter-spacing:0}.tasks{background:var(--kup-layer-2);border-radius:var(--kup-radius-00);padding:var(--kup-space-05);margin-right:var(--kup-space-05)}.taskListWrapper{display:table;border-bottom:#e6e4e4 1px solid;border-left:#e6e4e4 1px solid}.taskListTableRow{display:table-row;text-overflow:ellipsis}.taskListCell{display:table-cell;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.taskListNameWrapper{display:flex}.taskListExpander{color:rgb(86, 86, 86);font-size:0.6rem;padding:0.15rem 0.2rem 0 0.2rem;user-select:none;cursor:pointer}.taskListEmptyExpander{font-size:0.6rem;padding-left:1rem;user-select:none}.ganttTable{display:table;border-bottom:#e6e4e4 1px solid;border-top:#e6e4e4 1px solid;border-left:#e6e4e4 1px solid}.ganttTable_Header{display:table-row;list-style:none}.ganttTable_HeaderSeparator{border-right:1px solid rgb(196, 196, 196);opacity:1;margin-left:-2px}.ganttTable_HeaderItem{display:table-cell;vertical-align:-webkit-baseline-middle;vertical-align:middle}";
937
+ const kupTaskListCss$1 = ".kup-body-compact-01{font-family:var(--kup-font-family);font-size:var(--kup-body-compact-01-font-size, 14px);line-height:18px;font-weight:400;letter-spacing:0.16px}.kup-body-01{font-family:var(--kup-font-family);font-size:var(--kup-body-01-font-size, 14px);line-height:20px;font-weight:400;letter-spacing:0.16px}.kup-code-01{font-family:var(--kup-font-family-monospace);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-label-01{font-family:var(--kup-font-family);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-caption-02{font-family:var(--kup-font-family);font-size:12px;line-height:15px;font-weight:500;letter-spacing:1px}.kup-caption-01{font-family:var(--kup-font-family);font-size:10px;line-height:13px;font-weight:400;letter-spacing:1px}.kup-small-label-01{font-family:var(--kup-font-family);font-size:6px;line-height:9px;font-weight:400;letter-spacing:1px}.kup-heading-compact-01{font-family:var(--kup-font-family);font-size:14px;line-height:18px;font-weight:600;letter-spacing:0.16px}.kup-heading-01{font-family:var(--kup-font-family);font-size:14px;line-height:20px;font-weight:600;letter-spacing:0.16px}.kup-heading-02{font-family:var(--kup-font-family);font-size:16px;line-height:24px;font-weight:500;letter-spacing:0}.kup-heading-03{font-family:var(--kup-font-family);font-size:20px;line-height:28px;font-weight:400;letter-spacing:0}.kup-heading-04{font-family:var(--kup-font-family);font-size:28px;line-height:36px;font-weight:400;letter-spacing:0}.kup-heading-05{font-family:var(--kup-font-family);font-size:32px;line-height:40px;font-weight:300;letter-spacing:0}.kup-heading-06{font-family:var(--kup-font-family);font-size:42px;line-height:50px;font-weight:300;letter-spacing:0}.kup-heading-07{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:300;letter-spacing:0}.kup-heading-08{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:600;letter-spacing:0}.tasks{background:var(--kup-layer-2);border-radius:var(--kup-radius-00);padding:var(--kup-space-05);margin-right:var(--kup-space-05);min-width:25%}.taskListWrapper{display:table;border-bottom:#e6e4e4 1px solid;border-left:#e6e4e4 1px solid}.taskListTableRow{display:table-row;text-overflow:ellipsis}.taskListCell{display:table-cell;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.taskListNameWrapper{display:flex}.taskListExpander{color:rgb(86, 86, 86);font-size:0.6rem;padding:0.15rem 0.2rem 0 0.2rem;user-select:none;cursor:pointer}.taskListEmptyExpander{font-size:0.6rem;padding-left:1rem;user-select:none}.ganttTable{display:table;border-bottom:#e6e4e4 1px solid;border-top:#e6e4e4 1px solid;border-left:#e6e4e4 1px solid}.ganttTable_Header{display:table-row;list-style:none}.ganttTable_HeaderSeparator{border-right:1px solid rgb(196, 196, 196);opacity:1;margin-left:-2px}.ganttTable_HeaderItem{display:table-cell;vertical-align:-webkit-baseline-middle;vertical-align:middle}";
936
938
  const KupTaskListHeaderStyle0 = kupTaskListCss$1;
937
939
 
938
940
  const KupTaskListHeader = class {
@@ -966,7 +968,7 @@ const KupTaskListHeader = class {
966
968
  };
967
969
  KupTaskListHeader.style = KupTaskListHeaderStyle0;
968
970
 
969
- const kupTaskListCss = ".kup-body-compact-01{font-family:var(--kup-font-family);font-size:var(--kup-body-compact-01-font-size, 14px);line-height:18px;font-weight:400;letter-spacing:0.16px}.kup-body-01{font-family:var(--kup-font-family);font-size:var(--kup-body-01-font-size, 14px);line-height:20px;font-weight:400;letter-spacing:0.16px}.kup-code-01{font-family:var(--kup-font-family-monospace);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-label-01{font-family:var(--kup-font-family);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-caption-02{font-family:var(--kup-font-family);font-size:12px;line-height:15px;font-weight:500;letter-spacing:1px}.kup-caption-01{font-family:var(--kup-font-family);font-size:10px;line-height:13px;font-weight:400;letter-spacing:1px}.kup-small-label-01{font-family:var(--kup-font-family);font-size:6px;line-height:9px;font-weight:400;letter-spacing:1px}.kup-heading-compact-01{font-family:var(--kup-font-family);font-size:14px;line-height:18px;font-weight:600;letter-spacing:0.16px}.kup-heading-01{font-family:var(--kup-font-family);font-size:14px;line-height:20px;font-weight:600;letter-spacing:0.16px}.kup-heading-02{font-family:var(--kup-font-family);font-size:16px;line-height:24px;font-weight:500;letter-spacing:0}.kup-heading-03{font-family:var(--kup-font-family);font-size:20px;line-height:28px;font-weight:400;letter-spacing:0}.kup-heading-04{font-family:var(--kup-font-family);font-size:28px;line-height:36px;font-weight:400;letter-spacing:0}.kup-heading-05{font-family:var(--kup-font-family);font-size:32px;line-height:40px;font-weight:300;letter-spacing:0}.kup-heading-06{font-family:var(--kup-font-family);font-size:42px;line-height:50px;font-weight:300;letter-spacing:0}.kup-heading-07{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:300;letter-spacing:0}.kup-heading-08{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:600;letter-spacing:0}.tasks{background:var(--kup-layer-2);border-radius:var(--kup-radius-00);padding:var(--kup-space-05);margin-right:var(--kup-space-05)}.taskListWrapper{display:table;border-bottom:#e6e4e4 1px solid;border-left:#e6e4e4 1px solid}.taskListTableRow{display:table-row;text-overflow:ellipsis}.taskListCell{display:table-cell;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.taskListNameWrapper{display:flex}.taskListExpander{color:rgb(86, 86, 86);font-size:0.6rem;padding:0.15rem 0.2rem 0 0.2rem;user-select:none;cursor:pointer}.taskListEmptyExpander{font-size:0.6rem;padding-left:1rem;user-select:none}.ganttTable{display:table;border-bottom:#e6e4e4 1px solid;border-top:#e6e4e4 1px solid;border-left:#e6e4e4 1px solid}.ganttTable_Header{display:table-row;list-style:none}.ganttTable_HeaderSeparator{border-right:1px solid rgb(196, 196, 196);opacity:1;margin-left:-2px}.ganttTable_HeaderItem{display:table-cell;vertical-align:-webkit-baseline-middle;vertical-align:middle}";
971
+ const kupTaskListCss = ".kup-body-compact-01{font-family:var(--kup-font-family);font-size:var(--kup-body-compact-01-font-size, 14px);line-height:18px;font-weight:400;letter-spacing:0.16px}.kup-body-01{font-family:var(--kup-font-family);font-size:var(--kup-body-01-font-size, 14px);line-height:20px;font-weight:400;letter-spacing:0.16px}.kup-code-01{font-family:var(--kup-font-family-monospace);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-label-01{font-family:var(--kup-font-family);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-caption-02{font-family:var(--kup-font-family);font-size:12px;line-height:15px;font-weight:500;letter-spacing:1px}.kup-caption-01{font-family:var(--kup-font-family);font-size:10px;line-height:13px;font-weight:400;letter-spacing:1px}.kup-small-label-01{font-family:var(--kup-font-family);font-size:6px;line-height:9px;font-weight:400;letter-spacing:1px}.kup-heading-compact-01{font-family:var(--kup-font-family);font-size:14px;line-height:18px;font-weight:600;letter-spacing:0.16px}.kup-heading-01{font-family:var(--kup-font-family);font-size:14px;line-height:20px;font-weight:600;letter-spacing:0.16px}.kup-heading-02{font-family:var(--kup-font-family);font-size:16px;line-height:24px;font-weight:500;letter-spacing:0}.kup-heading-03{font-family:var(--kup-font-family);font-size:20px;line-height:28px;font-weight:400;letter-spacing:0}.kup-heading-04{font-family:var(--kup-font-family);font-size:28px;line-height:36px;font-weight:400;letter-spacing:0}.kup-heading-05{font-family:var(--kup-font-family);font-size:32px;line-height:40px;font-weight:300;letter-spacing:0}.kup-heading-06{font-family:var(--kup-font-family);font-size:42px;line-height:50px;font-weight:300;letter-spacing:0}.kup-heading-07{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:300;letter-spacing:0}.kup-heading-08{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:600;letter-spacing:0}.tasks{background:var(--kup-layer-2);border-radius:var(--kup-radius-00);padding:var(--kup-space-05);margin-right:var(--kup-space-05);min-width:25%}.taskListWrapper{display:table;border-bottom:#e6e4e4 1px solid;border-left:#e6e4e4 1px solid}.taskListTableRow{display:table-row;text-overflow:ellipsis}.taskListCell{display:table-cell;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.taskListNameWrapper{display:flex}.taskListExpander{color:rgb(86, 86, 86);font-size:0.6rem;padding:0.15rem 0.2rem 0 0.2rem;user-select:none;cursor:pointer}.taskListEmptyExpander{font-size:0.6rem;padding-left:1rem;user-select:none}.ganttTable{display:table;border-bottom:#e6e4e4 1px solid;border-top:#e6e4e4 1px solid;border-left:#e6e4e4 1px solid}.ganttTable_Header{display:table-row;list-style:none}.ganttTable_HeaderSeparator{border-right:1px solid rgb(196, 196, 196);opacity:1;margin-left:-2px}.ganttTable_HeaderItem{display:table-cell;vertical-align:-webkit-baseline-middle;vertical-align:middle}";
970
972
  const KupTaskListTableStyle0 = kupTaskListCss;
971
973
 
972
974
  const TaskListTableDefault = class {
@@ -85,7 +85,7 @@ const defaultStylingOptions = {
85
85
  barProgressSelectedColor: '#A2A415',
86
86
  barBackgroundColor: '#A2A415',
87
87
  barBackgroundSelectedColor: '#A2A415',
88
- barDropZoneColor: '#4d9f0240'
88
+ barDropZoneColor: '#4d9f0240',
89
89
  };
90
90
  const KUP_PLANNER_MAIN_GANTT_ID = 'main';
91
91
  const KUP_PLANNER_SECONDARY_GANTT_ID = 'secondary';
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-e8aa3c73.js');
6
6
  const kupPlannerRendererHelper = require('./kup-planner-renderer-helper-63478d1c.js');
7
- const kupPlannerDeclarations = require('./kup-planner-declarations-7291d01c.js');
7
+ const kupPlannerDeclarations = require('./kup-planner-declarations-959110da.js');
8
8
  const kupDates = require('./kup-dates-bc4cf9d0.js');
9
9
  const kupPlannerTimeFormatter = require('./kup-planner-time-formatter-b7dca3ea.js');
10
10
 
@@ -239,7 +239,7 @@ const KupPlannerRenderer = class {
239
239
  } }), this.props && (index.h("div", { key: 'a07185cd6be444510aef8c07eef0a9afe72d9fd6', style: {
240
240
  display: 'flex',
241
241
  flexDirection: 'column',
242
- } }, index.h("kup-gantt", Object.assign({ ref: (el) => (this.mainGantt = el), ganttId: kupPlannerDeclarations.KUP_PLANNER_MAIN_GANTT_ID, key: kupPlannerDeclarations.KUP_PLANNER_MAIN_GANTT_ID, filter: this.props.mainGantt.filter, hideLabel: this.props.mainGantt.hideLabel, showSecondaryDates: this.mainGanttDoubleView, hideDependencies: this.props.mainGantt.hideDependencies, ganttHeight: this.props.mainGantt.ganttHeight, displayedStartDate: this.displayedDates.displayedStartDate, displayedEndDate: this.displayedDates.displayedEndDate, viewDate: this.viewDate, tasks: this.tasks, columnWidth: kupPlannerRendererHelper.columnWidthForTimeUnit(this.timeUnit), viewMode: this.timeUnit }, this.props.mainGantt.stylingOptions, { TaskListHeader: this.props.mainGantt.taskListHeaderProject, TaskListTable: this.props.mainGantt.taskListTableProject, TooltipContent: (_a = this.props.mainGantt.tooltipContent) !== null && _a !== void 0 ? _a : CustomTooltipHOC(), barClick: (task) => {
242
+ } }, index.h("kup-gantt", Object.assign({ ref: (el) => (this.mainGantt = el), ganttId: kupPlannerDeclarations.KUP_PLANNER_MAIN_GANTT_ID, key: kupPlannerDeclarations.KUP_PLANNER_MAIN_GANTT_ID, filter: this.props.mainGantt.filter, hideLabel: this.props.mainGantt.hideLabel, showSecondaryDates: this.mainGanttDoubleView, hideDependencies: this.props.mainGantt.hideDependencies, ganttHeight: this.props.mainGantt.ganttHeight, displayedStartDate: this.displayedDates.displayedStartDate, displayedEndDate: this.displayedDates.displayedEndDate, viewDate: this.viewDate, tasks: this.tasks, columnWidth: kupPlannerRendererHelper.columnWidthForTimeUnit(this.timeUnit), viewMode: this.timeUnit, dependencies: this.props.mainGantt.dependencies }, this.props.mainGantt.stylingOptions, { TaskListHeader: this.props.mainGantt.taskListHeaderProject, TaskListTable: this.props.mainGantt.taskListTableProject, TooltipContent: (_a = this.props.mainGantt.tooltipContent) !== null && _a !== void 0 ? _a : CustomTooltipHOC(), barClick: (task) => {
243
243
  let row = kupPlannerRendererHelper.getProjectById(task.id, this.currentTasks);
244
244
  if (!row) {
245
245
  row = kupPlannerRendererHelper.getPhaseById(task.id, this.currentTasks);
@@ -271,7 +271,7 @@ const KupPlannerRenderer = class {
271
271
  this.handlePhaseDrop(originalPhase,
272
272
  // originalTask,
273
273
  finalPhaseData, destinationTask, this.props.mainGantt.onPhaseDrop);
274
- } })), this.props.secondaryGantt && (index.h("kup-gantt", Object.assign({ ref: (el) => (this.secondaryGantt = el), ganttId: kupPlannerDeclarations.KUP_PLANNER_SECONDARY_GANTT_ID, key: kupPlannerDeclarations.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: kupPlannerRendererHelper.columnWidthForTimeUnit(this.timeUnit), viewMode: this.timeUnit }, this.props.secondaryGantt.stylingOptions, { TaskListHeader: this.props.secondaryGantt
274
+ } })), this.props.secondaryGantt && (index.h("kup-gantt", Object.assign({ ref: (el) => (this.secondaryGantt = el), ganttId: kupPlannerDeclarations.KUP_PLANNER_SECONDARY_GANTT_ID, key: kupPlannerDeclarations.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: kupPlannerRendererHelper.columnWidthForTimeUnit(this.timeUnit), viewMode: this.timeUnit, dependencies: this.props.secondaryGantt.dependencies }, this.props.secondaryGantt.stylingOptions, { TaskListHeader: this.props.secondaryGantt
275
275
  .taskListHeaderProject, TaskListTable: this.props.secondaryGantt
276
276
  .taskListTableProject, TooltipContent: (_c = this.props.secondaryGantt.tooltipContent) !== null && _c !== void 0 ? _c : CustomTooltipHOC(), projection: this.projection, barClick: (task) => {
277
277
  if (this.props.secondaryGantt) {
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-e8aa3c73.js');
6
6
  const kupManager$1 = require('./kup-manager-d67049ad.js');
7
- const kupPlannerDeclarations = require('./kup-planner-declarations-7291d01c.js');
7
+ const kupPlannerDeclarations = require('./kup-planner-declarations-959110da.js');
8
8
  const GenericVariables = require('./GenericVariables-1d52ba57.js');
9
9
  const fTextField = require('./f-text-field-80716a60.js');
10
10
  const fTextFieldMdc = require('./f-text-field-mdc-2a3c8c01.js');
@@ -189,6 +189,7 @@ const KupPlanner = class {
189
189
  this.listCellWidth = '300px';
190
190
  this.maxWidth = '90vw';
191
191
  this.phaseColorCol = undefined;
192
+ this.dependencyCol = undefined;
192
193
  this.phaseColumns = undefined;
193
194
  this.phaseColParDep = undefined;
194
195
  this.phaseDates = undefined;
@@ -198,6 +199,7 @@ const KupPlanner = class {
198
199
  this.phaseNameCol = undefined;
199
200
  this.phasePrevHours = [];
200
201
  this.phasePrevDates = undefined;
202
+ this.dependencies = [];
201
203
  this.readOnly = false;
202
204
  this.showSecondaryDates = false;
203
205
  this.taskColumns = undefined;
@@ -316,11 +318,12 @@ const KupPlanner = class {
316
318
  * @param data - Matrix which contains project phases
317
319
  */
318
320
  async addPhases(taskId, data) {
319
- var _a;
321
+ var _a, _b, _c, _d, _e, _f, _g;
320
322
  const task = __classPrivateFieldGet(this, _KupPlanner_instances, "m", _KupPlanner_getTask).call(this, taskId);
321
323
  if (task) {
322
324
  __classPrivateFieldGet(this, _KupPlanner_phases, "f")[taskId] = data;
323
325
  task.phases = (_a = data.rows) === null || _a === void 0 ? void 0 : _a.filter((row) => isAtLeastOneDateValid(row.cells[this.phaseDates[0]], row.cells[this.phaseDates[1]])).map((row) => {
326
+ var _a, _b;
324
327
  const datesSanitized = sanitizeAllDates(row.cells[this.phaseDates[0]], row.cells[this.phaseDates[1]], row.cells[this.phasePrevDates[0]], row.cells[this.phasePrevDates[1]], row.cells[this.phaseHours[0]], row.cells[this.phaseHours[1]], row.cells[this.phasePrevHours[0]], row.cells[this.phasePrevHours[1]]);
325
328
  const valuesToShow = getValuesToShow(row, this.phaseIdCol, this.phaseNameCol, data.columns, this.phaseColumns, () => this.phaseColumns.map((col) => col == this.phaseDates[0]
326
329
  ? '#START#'
@@ -329,10 +332,12 @@ const KupPlanner = class {
329
332
  : kupManager$1.getCellValueForDisplay(data.columns.find((kCol) => kCol.name == col), row.cells[col])));
330
333
  let iconUrl = __classPrivateFieldGet(this, _KupPlanner_instances, "m", _KupPlanner_getIconUrl).call(this, row, this.phaseIconCol);
331
334
  let iconColor = __classPrivateFieldGet(this, _KupPlanner_instances, "m", _KupPlanner_getIconColor).call(this, row, this.phaseIconCol);
335
+ const _phaseIdRaw = ((_b = (_a = row.cells[this.phaseIdCol]) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : '') + '';
332
336
  let phase = {
333
337
  taskRow: task.taskRow,
334
338
  phaseRow: row,
335
- id: task.id + '_' + row.cells[this.phaseIdCol].value,
339
+ // trim the phase id value to avoid padded/trailing spaces
340
+ id: `${task.id}_${_phaseIdRaw.trim()}`,
336
341
  phaseRowId: row.id,
337
342
  taskRowId: task.taskRowId,
338
343
  name: row.cells[this.phaseNameCol].value,
@@ -355,6 +360,92 @@ const KupPlanner = class {
355
360
  };
356
361
  return phase;
357
362
  });
363
+ // Diagnostic: log created phase ids for the task
364
+ try {
365
+ // eslint-disable-next-line no-console
366
+ console.log('kup-planner: addPhases created phases for', taskId, task.phases ? task.phases.map((p) => p.id) : []);
367
+ }
368
+ catch (e) {
369
+ /* ignore */
370
+ }
371
+ // If the phases dataset includes a dependency column, parse it and
372
+ // create structured dependencies. The column may contain a single
373
+ // dependency id or multiple comma-separated ids. The values can be
374
+ // either phase codes (e.g. 'P410') or full runtime ids
375
+ // ('G418_P410'). We'll normalize to runtime ids using the current
376
+ // task id when necessary.
377
+ try {
378
+ if (this.dependencyCol &&
379
+ data.columns.find((c) => c.name == this.dependencyCol)) {
380
+ const parsedDeps = [];
381
+ for (const row of data.rows || []) {
382
+ const raw = ((_d = (_c = (_b = row.cells) === null || _b === void 0 ? void 0 : _b[this.dependencyCol]) === null || _c === void 0 ? void 0 : _c.value) !== null && _d !== void 0 ? _d : '') + '';
383
+ if (!raw)
384
+ continue;
385
+ const parts = raw
386
+ .split(',')
387
+ .map((s) => s.trim())
388
+ .filter(Boolean);
389
+ // compute current phase runtime id (target of dependencies)
390
+ const phaseCode = ((_g = (_f = (_e = row.cells) === null || _e === void 0 ? void 0 : _e[this.phaseIdCol]) === null || _f === void 0 ? void 0 : _f.value) !== null && _g !== void 0 ? _g : '') + '';
391
+ const currentPhaseId = `${task.id}_${phaseCode.trim()}`;
392
+ for (const part of parts) {
393
+ // normalize referenced (source) phase id
394
+ let sourcePhaseId = part;
395
+ if (!sourcePhaseId.includes('_')) {
396
+ // assume phase code in the same task -> make runtime id
397
+ sourcePhaseId = `${task.id}_${sourcePhaseId}`;
398
+ }
399
+ // dependency goes from the referenced phase (source) to the current phase (target)
400
+ const depId = `${sourcePhaseId}__${currentPhaseId}`;
401
+ parsedDeps.push({
402
+ id: depId,
403
+ sourceId: sourcePhaseId,
404
+ targetId: currentPhaseId,
405
+ type: 'FS',
406
+ });
407
+ }
408
+ }
409
+ if (parsedDeps.length) {
410
+ // ensure plannerProps.mainGantt.dependencies exists
411
+ try {
412
+ if (!this.plannerProps.mainGantt.dependencies) {
413
+ this.plannerProps.mainGantt.dependencies = [];
414
+ }
415
+ }
416
+ catch (e) {
417
+ // ensure plannerProps in general exists
418
+ if (!this.plannerProps)
419
+ this.plannerProps = {};
420
+ if (!this.plannerProps.mainGantt)
421
+ this.plannerProps.mainGantt = {};
422
+ this.plannerProps.mainGantt.dependencies = [];
423
+ }
424
+ // merge while avoiding duplicates by id
425
+ const existing = new Map((this.plannerProps.mainGantt.dependencies || []).map((d) => [d.id, d]));
426
+ for (const pd of parsedDeps) {
427
+ if (!existing.has(pd.id)) {
428
+ existing.set(pd.id, pd);
429
+ }
430
+ }
431
+ this.plannerProps.mainGantt.dependencies = Array.from(existing.values());
432
+ // also forward to secondary if present
433
+ if (this.plannerProps.secondaryGantt) {
434
+ this.plannerProps.secondaryGantt.dependencies =
435
+ this.plannerProps.mainGantt.dependencies;
436
+ }
437
+ // Diagnostic
438
+ try {
439
+ // eslint-disable-next-line no-console
440
+ console.log('kup-planner: addPhases - injected dependencies', parsedDeps);
441
+ }
442
+ catch (e) { }
443
+ }
444
+ }
445
+ }
446
+ catch (e) {
447
+ // ignore parsing errors
448
+ }
358
449
  }
359
450
  this.plannerProps.mainGantt.initialScrollX =
360
451
  __classPrivateFieldGet(this, _KupPlanner_storedSettings, "f").taskInitialScrollX;
@@ -387,6 +478,7 @@ const KupPlanner = class {
387
478
  }, "f");
388
479
  }
389
480
  componentDidLoad() {
481
+ var _a, _b;
390
482
  let details = __classPrivateFieldGet(this, _KupPlanner_instances, "m", _KupPlanner_toDetails).call(this, __classPrivateFieldGet(this, _KupPlanner_instances, "m", _KupPlanner_getFilteredRows).call(this, __classPrivateFieldGet(this, _KupPlanner_storedSettings, "f").detailFilter, true));
391
483
  const mainFilter = this.rootElement.shadowRoot.querySelector('#main-filter');
392
484
  fTextFieldMdc.FTextFieldMDC(mainFilter);
@@ -420,6 +512,8 @@ const KupPlanner = class {
420
512
  taskScrollYTimeout = window.setTimeout(() => this.handleTaskGanttScrollY(y), scrollDelay);
421
513
  },
422
514
  onPhaseDrop: (nativeEvent) => this.handleOnPhaseDrop(nativeEvent),
515
+ // forward structured dependencies provided at planner level
516
+ dependencies: this.dependencies,
423
517
  },
424
518
  secondaryGantt: details
425
519
  ? {
@@ -435,6 +529,8 @@ const KupPlanner = class {
435
529
  initialScrollX: this.detailInitialScrollX,
436
530
  initialScrollY: this.detailInitialScrollY,
437
531
  readOnly: this.readOnly,
532
+ // forward structured dependencies to secondary gantt as well
533
+ dependencies: this.dependencies,
438
534
  onScrollY: (y) => {
439
535
  window.clearTimeout(detailScrollYTimeout);
440
536
  detailScrollYTimeout = window.setTimeout(() => this.handleDetailGanttScrollY(y), scrollDelay);
@@ -450,6 +546,12 @@ const KupPlanner = class {
450
546
  scrollXTimeout = window.setTimeout(() => this.handleOnScrollX(x), scrollDelay);
451
547
  },
452
548
  };
549
+ // Diagnostic: log what was forwarded into plannerProps.mainGantt.dependencies
550
+ try {
551
+ // eslint-disable-next-line no-console
552
+ console.log('kup-planner: componentDidLoad - plannerProps.mainGantt.dependencies', (_b = (_a = this.plannerProps) === null || _a === void 0 ? void 0 : _a.mainGantt) === null || _b === void 0 ? void 0 : _b.dependencies);
553
+ }
554
+ catch (e) { }
453
555
  this.kupReady.emit({
454
556
  comp: this,
455
557
  id: this.rootElement.id,
@@ -647,7 +749,7 @@ const KupPlanner = class {
647
749
  if ((_b = this.plannerProps) === null || _b === void 0 ? void 0 : _b.secondaryGantt) {
648
750
  plannerProps.secondaryGantt = Object.assign(Object.assign({}, this.plannerProps.secondaryGantt), { onScrollY: this.handleDetailGanttScrollY.bind(this) });
649
751
  }
650
- return (index.h(index.Host, { key: 'b52aea66cafe0bdaaf314087e43f1b7dca63f154' }, index.h("style", { key: '3ca539838d1025757f092fc0a18e3b7264520f25' }, __classPrivateFieldGet(this, _KupPlanner_kupManager, "f").theme.setKupStyle(this.rootElement)), index.h("div", { key: '94527d16797e8f4262cc369cc66b9eed008b4ec6', id: GenericVariables.componentWrapperId, style: { maxWidth: this.maxWidth } }, this.plannerProps && (index.h("kup-planner-renderer", { key: '6845e11fb230fbe0a72c04d5ad1c890820fdb01f', props: plannerProps, ref: (el) => (this.plannerRenderer = el) }))), index.h("div", { key: '6d911aaab4c3ab12a3022ee890ed449a1404ce44', style: { display: this.plannerProps ? 'none' : '' } }, index.h(fTextField.FTextField, { key: 'fa72076cc7117e0f68396625dc4e2ec3f94fd6a6', icon: kupManager$1.KupThemeIconValues.SEARCH, id: "main-filter", label: __classPrivateFieldGet(this, _KupPlanner_kupManager, "f").language.translate(kupManager$1.KupLanguageSearch.SEARCH), onKeyDown: (e) => {
752
+ return (index.h(index.Host, { key: '2be4622d126df65c075552acb7af8c953cef9712' }, index.h("style", { key: '6ec8c1df4bd0429bfac86ca5cfba8b8eabf012e3' }, __classPrivateFieldGet(this, _KupPlanner_kupManager, "f").theme.setKupStyle(this.rootElement)), index.h("div", { key: '1b242d8489b6f0a95d86fb2e088839557cf9ef0d', id: GenericVariables.componentWrapperId, style: { maxWidth: this.maxWidth } }, this.plannerProps && (index.h("kup-planner-renderer", { key: '31f5594e6f34012eabb69ee578ba6a71c3ac3415', props: plannerProps, ref: (el) => (this.plannerRenderer = el) }))), index.h("div", { key: '83cc5a397427da1a09a662936f03f14d5f0eecbf', style: { display: this.plannerProps ? 'none' : '' } }, index.h(fTextField.FTextField, { key: '39c000f13fb6614f1a4196a57a6bbc36581af4a9', icon: kupManager$1.KupThemeIconValues.SEARCH, id: "main-filter", label: __classPrivateFieldGet(this, _KupPlanner_kupManager, "f").language.translate(kupManager$1.KupLanguageSearch.SEARCH), onKeyDown: (e) => {
651
753
  if (e.key === 'Enter') {
652
754
  __classPrivateFieldGet(this, _KupPlanner_instances, "m", _KupPlanner_onFilter).call(this, e.target.value);
653
755
  }
@@ -807,6 +909,12 @@ _KupPlanner_kupManager = new WeakMap(), _KupPlanner_lastOnChangeReceived = new W
807
909
  : {
808
910
  mainGantt: Object.assign(Object.assign({}, this.plannerProps.mainGantt), { items: __classPrivateFieldGet(this, _KupPlanner_instances, "m", _KupPlanner_toTasks).call(this, __classPrivateFieldGet(this, _KupPlanner_instances, "m", _KupPlanner_getFilteredRows).call(this, value, isDetail)) }),
809
911
  };
912
+ // Diagnostic: inspect whether planner-level `dependencies` prop is set
913
+ try {
914
+ // eslint-disable-next-line no-console
915
+ console.log('kup-planner: componentDidLoad - this.dependencies', this.dependencies);
916
+ }
917
+ catch (e) { }
810
918
  this.plannerProps = Object.assign(Object.assign({}, this.plannerProps), newGantt);
811
919
  this.persistState();
812
920
  }, _KupPlanner_getFilteredRows = function _KupPlanner_getFilteredRows(value, isDetail) {