tg-ganttchart 0.0.12 → 0.0.13

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.
@@ -3375,7 +3375,7 @@ if (typeof window !== 'undefined') {
3375
3375
  // Indicate to webpack that this file can be concatenated
3376
3376
  /* harmony default export */ var setPublicPath = (null);
3377
3377
 
3378
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/GanttElastic.standalone.vue?vue&type=template&id=c24bafbc
3378
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/GanttElastic.standalone.vue?vue&type=template&id=ba4781dc
3379
3379
  var render = function render() {
3380
3380
  var _vm = this,
3381
3381
  _c = _vm._self._c;
@@ -3384,6 +3384,32 @@ var render = function render() {
3384
3384
  "tasks": _vm.tasks,
3385
3385
  "options": _vm.options,
3386
3386
  "dynamicStyle": _vm.dynamicStyle
3387
+ },
3388
+ on: {
3389
+ "task-updated": function ($event) {
3390
+ return _vm.$emit('task-updated', $event);
3391
+ },
3392
+ "gantt-task-updated": function ($event) {
3393
+ return _vm.$emit('gantt-task-updated', $event);
3394
+ },
3395
+ "view-mode-changed": function ($event) {
3396
+ return _vm.$emit('view-mode-changed', $event);
3397
+ },
3398
+ "gantt-view-mode-changed": function ($event) {
3399
+ return _vm.$emit('gantt-view-mode-changed', $event);
3400
+ },
3401
+ "tasks-changed": function ($event) {
3402
+ return _vm.$emit('tasks-changed', $event);
3403
+ },
3404
+ "options-changed": function ($event) {
3405
+ return _vm.$emit('options-changed', $event);
3406
+ },
3407
+ "dynamic-style-changed": function ($event) {
3408
+ return _vm.$emit('dynamic-style-changed', $event);
3409
+ },
3410
+ "mounted": function ($event) {
3411
+ return _vm.$emit('mounted', $event);
3412
+ }
3387
3413
  }
3388
3414
  }, [_vm.components.header ? _c(_vm.components.header, {
3389
3415
  tag: "component",
@@ -3401,8 +3427,8 @@ var render = function render() {
3401
3427
  };
3402
3428
  var staticRenderFns = [];
3403
3429
 
3404
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/GanttElastic.vue?vue&type=template&id=100984c8
3405
- var GanttElasticvue_type_template_id_100984c8_render = function render() {
3430
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/GanttElastic.vue?vue&type=template&id=0a0b0d9f
3431
+ var GanttElasticvue_type_template_id_0a0b0d9f_render = function render() {
3406
3432
  var _vm = this,
3407
3433
  _c = _vm._self._c,
3408
3434
  _setup = _vm._self._setupProxy;
@@ -3431,7 +3457,7 @@ var GanttElasticvue_type_template_id_100984c8_render = function render() {
3431
3457
  }
3432
3458
  }), _vm._t("footer")], 2);
3433
3459
  };
3434
- var GanttElasticvue_type_template_id_100984c8_staticRenderFns = [];
3460
+ var GanttElasticvue_type_template_id_0a0b0d9f_staticRenderFns = [];
3435
3461
 
3436
3462
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.push.js
3437
3463
  var es_array_push = __webpack_require__(4114);
@@ -3674,8 +3700,8 @@ var component = normalizeComponent(
3674
3700
  )
3675
3701
 
3676
3702
  /* harmony default export */ var GanttViewFilter = (component.exports);
3677
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/MainView.vue?vue&type=template&id=33392d22
3678
- var MainViewvue_type_template_id_33392d22_render = function render() {
3703
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/MainView.vue?vue&type=template&id=79e1eba9
3704
+ var MainViewvue_type_template_id_79e1eba9_render = function render() {
3679
3705
  var _vm = this,
3680
3706
  _c = _vm._self._c;
3681
3707
  return _c('div', {
@@ -3784,7 +3810,7 @@ var MainViewvue_type_template_id_33392d22_render = function render() {
3784
3810
  }
3785
3811
  })])]);
3786
3812
  };
3787
- var MainViewvue_type_template_id_33392d22_staticRenderFns = [];
3813
+ var MainViewvue_type_template_id_79e1eba9_staticRenderFns = [];
3788
3814
 
3789
3815
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/TaskList/TaskList.vue?vue&type=template&id=74ce1216
3790
3816
  var TaskListvue_type_template_id_74ce1216_render = function render() {
@@ -4591,8 +4617,8 @@ var TaskList_component = normalizeComponent(
4591
4617
  )
4592
4618
 
4593
4619
  /* harmony default export */ var TaskList = (TaskList_component.exports);
4594
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Chart.vue?vue&type=template&id=2bc7fe5e
4595
- var Chartvue_type_template_id_2bc7fe5e_render = function render() {
4620
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Chart.vue?vue&type=template&id=0856b85c
4621
+ var Chartvue_type_template_id_0856b85c_render = function render() {
4596
4622
  var _vm = this,
4597
4623
  _c = _vm._self._c;
4598
4624
  return _c('div', {
@@ -4667,7 +4693,7 @@ var Chartvue_type_template_id_2bc7fe5e_render = function render() {
4667
4693
  })], 1);
4668
4694
  })], 2)])])])]);
4669
4695
  };
4670
- var Chartvue_type_template_id_2bc7fe5e_staticRenderFns = [];
4696
+ var Chartvue_type_template_id_0856b85c_staticRenderFns = [];
4671
4697
 
4672
4698
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Grid.vue?vue&type=template&id=244ea0ee
4673
4699
  var Gridvue_type_template_id_244ea0ee_render = function render() {
@@ -5876,8 +5902,8 @@ var DependencyLines_component = normalizeComponent(
5876
5902
  )
5877
5903
 
5878
5904
  /* harmony default export */ var DependencyLines = (DependencyLines_component.exports);
5879
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Row/Task.vue?vue&type=template&id=2c01a3c8
5880
- var Taskvue_type_template_id_2c01a3c8_render = function render() {
5905
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Row/Task.vue?vue&type=template&id=23849415
5906
+ var Taskvue_type_template_id_23849415_render = function render() {
5881
5907
  var _vm = this,
5882
5908
  _c = _vm._self._c;
5883
5909
  return _c('g', {
@@ -5989,16 +6015,17 @@ var Taskvue_type_template_id_2c01a3c8_render = function render() {
5989
6015
  "clip-path": 'url(#' + _vm.clipPathId + ')'
5990
6016
  }
5991
6017
  }), _c('rect', {
5992
- staticClass: "gantt-elastic__chart-row-extend-handle",
6018
+ staticClass: "gantt-elastic__chart-row-extend-handle gantt-elastic__drag-handle",
5993
6019
  staticStyle: {
5994
6020
  "pointer-events": "all",
5995
- "z-index": "20"
6021
+ "z-index": "50",
6022
+ "cursor": "ew-resize !important"
5996
6023
  },
5997
6024
  style: _vm.root.style['chart-row-extend-handle'],
5998
6025
  attrs: {
5999
- "x": "8",
6026
+ "x": "0",
6000
6027
  "y": "0",
6001
- "width": 8,
6028
+ "width": 12,
6002
6029
  "height": _vm.task.height
6003
6030
  },
6004
6031
  on: {
@@ -6012,16 +6039,17 @@ var Taskvue_type_template_id_2c01a3c8_render = function render() {
6012
6039
  }
6013
6040
  }
6014
6041
  }), _c('rect', {
6015
- staticClass: "gantt-elastic__chart-row-extend-handle",
6042
+ staticClass: "gantt-elastic__chart-row-extend-handle gantt-elastic__drag-handle",
6016
6043
  staticStyle: {
6017
6044
  "pointer-events": "all",
6018
- "z-index": "20"
6045
+ "z-index": "50",
6046
+ "cursor": "ew-resize !important"
6019
6047
  },
6020
6048
  style: _vm.root.style['chart-row-extend-handle'],
6021
6049
  attrs: {
6022
- "x": _vm.task.width - 8,
6050
+ "x": _vm.task.width - 12,
6023
6051
  "y": "0",
6024
- "width": 8,
6052
+ "width": 12,
6025
6053
  "height": _vm.task.height
6026
6054
  },
6027
6055
  on: {
@@ -6040,7 +6068,7 @@ var Taskvue_type_template_id_2c01a3c8_render = function render() {
6040
6068
  }
6041
6069
  }) : _vm._e()], 1);
6042
6070
  };
6043
- var Taskvue_type_template_id_2c01a3c8_staticRenderFns = [];
6071
+ var Taskvue_type_template_id_23849415_staticRenderFns = [];
6044
6072
 
6045
6073
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Text.vue?vue&type=template&id=634f40aa
6046
6074
  var Textvue_type_template_id_634f40aa_render = function render() {
@@ -6391,13 +6419,13 @@ var ProgressBar_component = normalizeComponent(
6391
6419
  event.stopPropagation();
6392
6420
 
6393
6421
  // Debug logging
6394
- console.log('Starting drag:', {
6395
- type: type,
6396
- taskId: this.task.id,
6397
- taskType: this.task.type,
6398
- originalStart: this.task.startTime,
6399
- originalEnd: this.task.endTime
6400
- });
6422
+ // console.log('Starting drag:', {
6423
+ // type: type,
6424
+ // taskId: this.task.id,
6425
+ // taskType: this.task.type,
6426
+ // originalStart: this.task.startTime,
6427
+ // originalEnd: this.task.endTime
6428
+ // });
6401
6429
 
6402
6430
  // Safety checks
6403
6431
  if (!this.root || !this.root.state || !this.root.state.options || !this.root.state.options.times) {
@@ -6521,15 +6549,15 @@ var ProgressBar_component = normalizeComponent(
6521
6549
 
6522
6550
  // Debug logging for epic tasks
6523
6551
  if (this.task.type === 'epic') {
6524
- console.log('Epic task drag:', {
6525
- dragType: this.dragType,
6526
- originalStart: this.originalStartTime,
6527
- originalEnd: this.originalEndTime,
6528
- newStart: newStartTime,
6529
- newEnd: newEndTime,
6530
- startChanged: newStartTime !== this.originalStartTime,
6531
- endChanged: newEndTime !== this.originalEndTime
6532
- });
6552
+ // console.log('Epic task drag:', {
6553
+ // dragType: this.dragType,
6554
+ // originalStart: this.originalStartTime,
6555
+ // originalEnd: this.originalEndTime,
6556
+ // newStart: newStartTime,
6557
+ // newEnd: newEndTime,
6558
+ // startChanged: newStartTime !== this.originalStartTime,
6559
+ // endChanged: newEndTime !== this.originalEndTime
6560
+ // });
6533
6561
  }
6534
6562
 
6535
6563
  // Update task data
@@ -6538,15 +6566,15 @@ var ProgressBar_component = normalizeComponent(
6538
6566
  this.task.duration = newEndTime - newStartTime;
6539
6567
 
6540
6568
  // Debug logging
6541
- console.log('Updating task time:', {
6542
- taskId: this.task.id,
6543
- newStartTime,
6544
- newEndTime,
6545
- duration: this.task.duration,
6546
- root: !!this.root,
6547
- timeToPixelOffsetX: !!(this.root && this.root.timeToPixelOffsetX),
6548
- timePerPixel: this.root && this.root.state && this.root.state.options && this.root.state.options.times && this.root.state.options.times.timePerPixel
6549
- });
6569
+ // console.log('Updating task time:', {
6570
+ // taskId: this.task.id,
6571
+ // newStartTime,
6572
+ // newEndTime,
6573
+ // duration: this.task.duration,
6574
+ // root: !!this.root,
6575
+ // timeToPixelOffsetX: !!(this.root && this.root.timeToPixelOffsetX),
6576
+ // timePerPixel: this.root && this.root.state && this.root.state.options && this.root.state.options.times && this.root.state.options.times.timePerPixel
6577
+ // });
6550
6578
 
6551
6579
  // Update task position and width using the correct method
6552
6580
  if (this.root && this.root.timeToPixelOffsetX) {
@@ -6590,15 +6618,15 @@ var ProgressBar_component = normalizeComponent(
6590
6618
  });
6591
6619
 
6592
6620
  // Log the update for debugging
6593
- console.log('Task drag completed:', {
6594
- id: this.task.id,
6595
- dragType: this.dragType,
6596
- startDate: startDate.toLocaleDateString(),
6597
- endDate: endDate.toLocaleDateString(),
6598
- duration: `${durationDays} days`,
6599
- startTime: this.task.startTime,
6600
- endTime: this.task.endTime
6601
- });
6621
+ // console.log('Task drag completed:', {
6622
+ // id: this.task.id,
6623
+ // dragType: this.dragType,
6624
+ // startDate: startDate.toLocaleDateString(),
6625
+ // endDate: endDate.toLocaleDateString(),
6626
+ // duration: `${durationDays} days`,
6627
+ // startTime: this.task.startTime,
6628
+ // endTime: this.task.endTime
6629
+ // });
6602
6630
  },
6603
6631
  /**
6604
6632
  * Show context menu for task actions
@@ -7048,8 +7076,8 @@ var ProgressBar_component = normalizeComponent(
7048
7076
  ;
7049
7077
  var Task_component = normalizeComponent(
7050
7078
  Row_Taskvue_type_script_lang_js,
7051
- Taskvue_type_template_id_2c01a3c8_render,
7052
- Taskvue_type_template_id_2c01a3c8_staticRenderFns,
7079
+ Taskvue_type_template_id_23849415_render,
7080
+ Taskvue_type_template_id_23849415_staticRenderFns,
7053
7081
  false,
7054
7082
  null,
7055
7083
  null,
@@ -7058,8 +7086,8 @@ var Task_component = normalizeComponent(
7058
7086
  )
7059
7087
 
7060
7088
  /* harmony default export */ var Task = (Task_component.exports);
7061
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Row/Milestone.vue?vue&type=template&id=4cea99c4
7062
- var Milestonevue_type_template_id_4cea99c4_render = function render() {
7089
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Row/Milestone.vue?vue&type=template&id=c9bfeb4a
7090
+ var Milestonevue_type_template_id_c9bfeb4a_render = function render() {
7063
7091
  var _vm = this,
7064
7092
  _c = _vm._self._c;
7065
7093
  return _c('g', {
@@ -7171,16 +7199,17 @@ var Milestonevue_type_template_id_4cea99c4_render = function render() {
7171
7199
  "clip-path": 'url(#' + _vm.clipPathId + ')'
7172
7200
  }
7173
7201
  }), _c('rect', {
7174
- staticClass: "gantt-elastic__chart-row-extend-handle",
7202
+ staticClass: "gantt-elastic__chart-row-extend-handle gantt-elastic__drag-handle",
7175
7203
  staticStyle: {
7176
7204
  "pointer-events": "all",
7177
- "z-index": "20"
7205
+ "z-index": "50",
7206
+ "cursor": "ew-resize !important"
7178
7207
  },
7179
7208
  style: _vm.root.style['chart-row-extend-handle'],
7180
7209
  attrs: {
7181
- "x": "8",
7210
+ "x": "0",
7182
7211
  "y": "0",
7183
- "width": 8,
7212
+ "width": 12,
7184
7213
  "height": _vm.task.height
7185
7214
  },
7186
7215
  on: {
@@ -7194,16 +7223,17 @@ var Milestonevue_type_template_id_4cea99c4_render = function render() {
7194
7223
  }
7195
7224
  }
7196
7225
  }), _c('rect', {
7197
- staticClass: "gantt-elastic__chart-row-extend-handle",
7226
+ staticClass: "gantt-elastic__chart-row-extend-handle gantt-elastic__drag-handle",
7198
7227
  staticStyle: {
7199
7228
  "pointer-events": "all",
7200
- "z-index": "20"
7229
+ "z-index": "50",
7230
+ "cursor": "ew-resize !important"
7201
7231
  },
7202
7232
  style: _vm.root.style['chart-row-extend-handle'],
7203
7233
  attrs: {
7204
- "x": _vm.task.width - 8,
7234
+ "x": _vm.task.width - 12,
7205
7235
  "y": "0",
7206
- "width": 8,
7236
+ "width": 12,
7207
7237
  "height": _vm.task.height
7208
7238
  },
7209
7239
  on: {
@@ -7222,7 +7252,7 @@ var Milestonevue_type_template_id_4cea99c4_render = function render() {
7222
7252
  }
7223
7253
  }) : _vm._e()], 1);
7224
7254
  };
7225
- var Milestonevue_type_template_id_4cea99c4_staticRenderFns = [];
7255
+ var Milestonevue_type_template_id_c9bfeb4a_staticRenderFns = [];
7226
7256
 
7227
7257
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Row/Milestone.vue?vue&type=script&lang=js
7228
7258
 
@@ -7304,8 +7334,8 @@ var Milestonevue_type_template_id_4cea99c4_staticRenderFns = [];
7304
7334
  ;
7305
7335
  var Milestone_component = normalizeComponent(
7306
7336
  Row_Milestonevue_type_script_lang_js,
7307
- Milestonevue_type_template_id_4cea99c4_render,
7308
- Milestonevue_type_template_id_4cea99c4_staticRenderFns,
7337
+ Milestonevue_type_template_id_c9bfeb4a_render,
7338
+ Milestonevue_type_template_id_c9bfeb4a_staticRenderFns,
7309
7339
  false,
7310
7340
  null,
7311
7341
  null,
@@ -7314,8 +7344,8 @@ var Milestone_component = normalizeComponent(
7314
7344
  )
7315
7345
 
7316
7346
  /* harmony default export */ var Milestone = (Milestone_component.exports);
7317
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Row/Project.vue?vue&type=template&id=5dcaf9ef
7318
- var Projectvue_type_template_id_5dcaf9ef_render = function render() {
7347
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Row/Project.vue?vue&type=template&id=72239142
7348
+ var Projectvue_type_template_id_72239142_render = function render() {
7319
7349
  var _vm = this,
7320
7350
  _c = _vm._self._c;
7321
7351
  return _c('g', {
@@ -7427,16 +7457,17 @@ var Projectvue_type_template_id_5dcaf9ef_render = function render() {
7427
7457
  "clip-path": 'url(#' + _vm.clipPathId + ')'
7428
7458
  }
7429
7459
  }), _c('rect', {
7430
- staticClass: "gantt-elastic__chart-row-extend-handle",
7460
+ staticClass: "gantt-elastic__chart-row-extend-handle gantt-elastic__drag-handle",
7431
7461
  staticStyle: {
7432
7462
  "pointer-events": "all",
7433
- "z-index": "20"
7463
+ "z-index": "50",
7464
+ "cursor": "ew-resize !important"
7434
7465
  },
7435
7466
  style: _vm.root.style['chart-row-extend-handle'],
7436
7467
  attrs: {
7437
- "x": "8",
7468
+ "x": "0",
7438
7469
  "y": "0",
7439
- "width": 8,
7470
+ "width": 12,
7440
7471
  "height": _vm.task.height
7441
7472
  },
7442
7473
  on: {
@@ -7450,16 +7481,17 @@ var Projectvue_type_template_id_5dcaf9ef_render = function render() {
7450
7481
  }
7451
7482
  }
7452
7483
  }), _c('rect', {
7453
- staticClass: "gantt-elastic__chart-row-extend-handle",
7484
+ staticClass: "gantt-elastic__chart-row-extend-handle gantt-elastic__drag-handle",
7454
7485
  staticStyle: {
7455
7486
  "pointer-events": "all",
7456
- "z-index": "20"
7487
+ "z-index": "50",
7488
+ "cursor": "ew-resize !important"
7457
7489
  },
7458
7490
  style: _vm.root.style['chart-row-extend-handle'],
7459
7491
  attrs: {
7460
- "x": _vm.task.width - 8,
7492
+ "x": _vm.task.width - 12,
7461
7493
  "y": "0",
7462
- "width": 8,
7494
+ "width": 12,
7463
7495
  "height": _vm.task.height
7464
7496
  },
7465
7497
  on: {
@@ -7478,7 +7510,7 @@ var Projectvue_type_template_id_5dcaf9ef_render = function render() {
7478
7510
  }
7479
7511
  }) : _vm._e()], 1);
7480
7512
  };
7481
- var Projectvue_type_template_id_5dcaf9ef_staticRenderFns = [];
7513
+ var Projectvue_type_template_id_72239142_staticRenderFns = [];
7482
7514
 
7483
7515
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Row/Project.vue?vue&type=script&lang=js
7484
7516
 
@@ -7578,8 +7610,8 @@ var Projectvue_type_template_id_5dcaf9ef_staticRenderFns = [];
7578
7610
  ;
7579
7611
  var Project_component = normalizeComponent(
7580
7612
  Row_Projectvue_type_script_lang_js,
7581
- Projectvue_type_template_id_5dcaf9ef_render,
7582
- Projectvue_type_template_id_5dcaf9ef_staticRenderFns,
7613
+ Projectvue_type_template_id_72239142_render,
7614
+ Projectvue_type_template_id_72239142_staticRenderFns,
7583
7615
  false,
7584
7616
  null,
7585
7617
  null,
@@ -7588,8 +7620,8 @@ var Project_component = normalizeComponent(
7588
7620
  )
7589
7621
 
7590
7622
  /* harmony default export */ var Project = (Project_component.exports);
7591
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Row/Epic.vue?vue&type=template&id=6e337196
7592
- var Epicvue_type_template_id_6e337196_render = function render() {
7623
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Row/Epic.vue?vue&type=template&id=80ad2e9c
7624
+ var Epicvue_type_template_id_80ad2e9c_render = function render() {
7593
7625
  var _vm = this,
7594
7626
  _c = _vm._self._c;
7595
7627
  return _c('g', {
@@ -7703,16 +7735,17 @@ var Epicvue_type_template_id_6e337196_render = function render() {
7703
7735
  "clip-path": 'url(#' + _vm.clipPathId + ')'
7704
7736
  }
7705
7737
  }) : _vm._e(), _c('rect', {
7706
- staticClass: "gantt-elastic__chart-row-extend-handle",
7738
+ staticClass: "gantt-elastic__chart-row-extend-handle gantt-elastic__drag-handle",
7707
7739
  staticStyle: {
7708
7740
  "pointer-events": "all",
7709
- "z-index": "30"
7741
+ "z-index": "50",
7742
+ "cursor": "ew-resize !important"
7710
7743
  },
7711
7744
  style: _vm.root.style['chart-row-extend-handle'],
7712
7745
  attrs: {
7713
- "x": "8",
7746
+ "x": "0",
7714
7747
  "y": "0",
7715
- "width": 8,
7748
+ "width": 12,
7716
7749
  "height": _vm.task.height
7717
7750
  },
7718
7751
  on: {
@@ -7726,16 +7759,17 @@ var Epicvue_type_template_id_6e337196_render = function render() {
7726
7759
  }
7727
7760
  }
7728
7761
  }), _c('rect', {
7729
- staticClass: "gantt-elastic__chart-row-extend-handle",
7762
+ staticClass: "gantt-elastic__chart-row-extend-handle gantt-elastic__drag-handle",
7730
7763
  staticStyle: {
7731
7764
  "pointer-events": "all",
7732
- "z-index": "30"
7765
+ "z-index": "50",
7766
+ "cursor": "ew-resize !important"
7733
7767
  },
7734
7768
  style: _vm.root.style['chart-row-extend-handle'],
7735
7769
  attrs: {
7736
- "x": _vm.task.width - 8,
7770
+ "x": _vm.task.width - 12,
7737
7771
  "y": "0",
7738
- "width": 8,
7772
+ "width": 12,
7739
7773
  "height": _vm.task.height
7740
7774
  },
7741
7775
  on: {
@@ -7754,7 +7788,7 @@ var Epicvue_type_template_id_6e337196_render = function render() {
7754
7788
  }
7755
7789
  }) : _vm._e()], 1);
7756
7790
  };
7757
- var Epicvue_type_template_id_6e337196_staticRenderFns = [];
7791
+ var Epicvue_type_template_id_80ad2e9c_staticRenderFns = [];
7758
7792
 
7759
7793
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Row/Epic.vue?vue&type=script&lang=js
7760
7794
 
@@ -7854,8 +7888,8 @@ var Epicvue_type_template_id_6e337196_staticRenderFns = [];
7854
7888
  ;
7855
7889
  var Epic_component = normalizeComponent(
7856
7890
  Row_Epicvue_type_script_lang_js,
7857
- Epicvue_type_template_id_6e337196_render,
7858
- Epicvue_type_template_id_6e337196_staticRenderFns,
7891
+ Epicvue_type_template_id_80ad2e9c_render,
7892
+ Epicvue_type_template_id_80ad2e9c_staticRenderFns,
7859
7893
  false,
7860
7894
  null,
7861
7895
  null,
@@ -7864,8 +7898,8 @@ var Epic_component = normalizeComponent(
7864
7898
  )
7865
7899
 
7866
7900
  /* harmony default export */ var Epic = (Epic_component.exports);
7867
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Row/Subtask.vue?vue&type=template&id=339b7174
7868
- var Subtaskvue_type_template_id_339b7174_render = function render() {
7901
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Row/Subtask.vue?vue&type=template&id=52219a35
7902
+ var Subtaskvue_type_template_id_52219a35_render = function render() {
7869
7903
  var _vm = this,
7870
7904
  _c = _vm._self._c;
7871
7905
  return _c('g', {
@@ -7977,16 +8011,17 @@ var Subtaskvue_type_template_id_339b7174_render = function render() {
7977
8011
  "clip-path": 'url(#' + _vm.clipPathId + ')'
7978
8012
  }
7979
8013
  }), _c('rect', {
7980
- staticClass: "gantt-elastic__chart-row-extend-handle",
8014
+ staticClass: "gantt-elastic__chart-row-extend-handle gantt-elastic__drag-handle",
7981
8015
  staticStyle: {
7982
8016
  "pointer-events": "all",
7983
- "z-index": "20"
8017
+ "z-index": "50",
8018
+ "cursor": "ew-resize !important"
7984
8019
  },
7985
8020
  style: _vm.root.style['chart-row-extend-handle'],
7986
8021
  attrs: {
7987
- "x": "8",
8022
+ "x": "0",
7988
8023
  "y": "0",
7989
- "width": 8,
8024
+ "width": 12,
7990
8025
  "height": _vm.task.height
7991
8026
  },
7992
8027
  on: {
@@ -8000,16 +8035,17 @@ var Subtaskvue_type_template_id_339b7174_render = function render() {
8000
8035
  }
8001
8036
  }
8002
8037
  }), _c('rect', {
8003
- staticClass: "gantt-elastic__chart-row-extend-handle",
8038
+ staticClass: "gantt-elastic__chart-row-extend-handle gantt-elastic__drag-handle",
8004
8039
  staticStyle: {
8005
8040
  "pointer-events": "all",
8006
- "z-index": "20"
8041
+ "z-index": "50",
8042
+ "cursor": "ew-resize !important"
8007
8043
  },
8008
8044
  style: _vm.root.style['chart-row-extend-handle'],
8009
8045
  attrs: {
8010
- "x": _vm.task.width - 8,
8046
+ "x": _vm.task.width - 12,
8011
8047
  "y": "0",
8012
- "width": 8,
8048
+ "width": 12,
8013
8049
  "height": _vm.task.height
8014
8050
  },
8015
8051
  on: {
@@ -8028,7 +8064,7 @@ var Subtaskvue_type_template_id_339b7174_render = function render() {
8028
8064
  }
8029
8065
  }) : _vm._e()], 1);
8030
8066
  };
8031
- var Subtaskvue_type_template_id_339b7174_staticRenderFns = [];
8067
+ var Subtaskvue_type_template_id_52219a35_staticRenderFns = [];
8032
8068
 
8033
8069
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Row/Subtask.vue?vue&type=script&lang=js
8034
8070
 
@@ -8100,8 +8136,8 @@ var Subtaskvue_type_template_id_339b7174_staticRenderFns = [];
8100
8136
  ;
8101
8137
  var Subtask_component = normalizeComponent(
8102
8138
  Row_Subtaskvue_type_script_lang_js,
8103
- Subtaskvue_type_template_id_339b7174_render,
8104
- Subtaskvue_type_template_id_339b7174_staticRenderFns,
8139
+ Subtaskvue_type_template_id_52219a35_render,
8140
+ Subtaskvue_type_template_id_52219a35_staticRenderFns,
8105
8141
  false,
8106
8142
  null,
8107
8143
  null,
@@ -8110,8 +8146,8 @@ var Subtask_component = normalizeComponent(
8110
8146
  )
8111
8147
 
8112
8148
  /* harmony default export */ var Subtask = (Subtask_component.exports);
8113
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Row/Story.vue?vue&type=template&id=3d0395f2
8114
- var Storyvue_type_template_id_3d0395f2_render = function render() {
8149
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Row/Story.vue?vue&type=template&id=5d688d0c
8150
+ var Storyvue_type_template_id_5d688d0c_render = function render() {
8115
8151
  var _vm = this,
8116
8152
  _c = _vm._self._c;
8117
8153
  return _c('g', {
@@ -8223,16 +8259,17 @@ var Storyvue_type_template_id_3d0395f2_render = function render() {
8223
8259
  "clip-path": 'url(#' + _vm.clipPathId + ')'
8224
8260
  }
8225
8261
  }), _c('rect', {
8226
- staticClass: "gantt-elastic__chart-row-extend-handle",
8262
+ staticClass: "gantt-elastic__chart-row-extend-handle gantt-elastic__drag-handle",
8227
8263
  staticStyle: {
8228
8264
  "pointer-events": "all",
8229
- "z-index": "20"
8265
+ "z-index": "50",
8266
+ "cursor": "ew-resize !important"
8230
8267
  },
8231
8268
  style: _vm.root.style['chart-row-extend-handle'],
8232
8269
  attrs: {
8233
- "x": "8",
8270
+ "x": "0",
8234
8271
  "y": "0",
8235
- "width": 8,
8272
+ "width": 12,
8236
8273
  "height": _vm.task.height
8237
8274
  },
8238
8275
  on: {
@@ -8246,16 +8283,17 @@ var Storyvue_type_template_id_3d0395f2_render = function render() {
8246
8283
  }
8247
8284
  }
8248
8285
  }), _c('rect', {
8249
- staticClass: "gantt-elastic__chart-row-extend-handle",
8286
+ staticClass: "gantt-elastic__chart-row-extend-handle gantt-elastic__drag-handle",
8250
8287
  staticStyle: {
8251
8288
  "pointer-events": "all",
8252
- "z-index": "20"
8289
+ "z-index": "50",
8290
+ "cursor": "ew-resize !important"
8253
8291
  },
8254
8292
  style: _vm.root.style['chart-row-extend-handle'],
8255
8293
  attrs: {
8256
- "x": _vm.task.width - 8,
8294
+ "x": _vm.task.width - 12,
8257
8295
  "y": "0",
8258
- "width": 8,
8296
+ "width": 12,
8259
8297
  "height": _vm.task.height
8260
8298
  },
8261
8299
  on: {
@@ -8274,7 +8312,7 @@ var Storyvue_type_template_id_3d0395f2_render = function render() {
8274
8312
  }
8275
8313
  }) : _vm._e()], 1);
8276
8314
  };
8277
- var Storyvue_type_template_id_3d0395f2_staticRenderFns = [];
8315
+ var Storyvue_type_template_id_5d688d0c_staticRenderFns = [];
8278
8316
 
8279
8317
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/Chart/Row/Story.vue?vue&type=script&lang=js
8280
8318
 
@@ -8366,8 +8404,8 @@ var Storyvue_type_template_id_3d0395f2_staticRenderFns = [];
8366
8404
  ;
8367
8405
  var Story_component = normalizeComponent(
8368
8406
  Row_Storyvue_type_script_lang_js,
8369
- Storyvue_type_template_id_3d0395f2_render,
8370
- Storyvue_type_template_id_3d0395f2_staticRenderFns,
8407
+ Storyvue_type_template_id_5d688d0c_render,
8408
+ Storyvue_type_template_id_5d688d0c_staticRenderFns,
8371
8409
  false,
8372
8410
  null,
8373
8411
  null,
@@ -8425,6 +8463,7 @@ var Story_component = normalizeComponent(
8425
8463
  */
8426
8464
  handleTaskUpdated(updatedTask) {
8427
8465
  // Emit event to parent component
8466
+ console.log("task-updated --Chart");
8428
8467
  this.$emit('task-updated', updatedTask);
8429
8468
 
8430
8469
  // Update the task in the root state
@@ -8476,8 +8515,8 @@ var Story_component = normalizeComponent(
8476
8515
  ;
8477
8516
  var Chart_component = normalizeComponent(
8478
8517
  Chart_Chartvue_type_script_lang_js,
8479
- Chartvue_type_template_id_2bc7fe5e_render,
8480
- Chartvue_type_template_id_2bc7fe5e_staticRenderFns,
8518
+ Chartvue_type_template_id_0856b85c_render,
8519
+ Chartvue_type_template_id_0856b85c_staticRenderFns,
8481
8520
  false,
8482
8521
  null,
8483
8522
  null,
@@ -8573,6 +8612,7 @@ let ignoreScrollEvents = false;
8573
8612
  */
8574
8613
  handleTaskUpdated(updatedTask) {
8575
8614
  // Emit event to parent component
8615
+ console.log("task-updated --MainView");
8576
8616
  this.$emit('task-updated', updatedTask);
8577
8617
  },
8578
8618
  /**
@@ -8691,8 +8731,8 @@ let ignoreScrollEvents = false;
8691
8731
  ;
8692
8732
  var MainView_component = normalizeComponent(
8693
8733
  components_MainViewvue_type_script_lang_js,
8694
- MainViewvue_type_template_id_33392d22_render,
8695
- MainViewvue_type_template_id_33392d22_staticRenderFns,
8734
+ MainViewvue_type_template_id_79e1eba9_render,
8735
+ MainViewvue_type_template_id_79e1eba9_staticRenderFns,
8696
8736
  false,
8697
8737
  null,
8698
8738
  null,
@@ -11374,6 +11414,15 @@ const GanttElastic = {
11374
11414
  }
11375
11415
  }
11376
11416
 
11417
+ // Emit event to parent component
11418
+ this.$emit('view-mode-changed', mode);
11419
+
11420
+ // Also emit to root for plugin usage
11421
+ this.$root.$emit('gantt-view-mode-changed', mode);
11422
+
11423
+ // Log the view mode change for debugging
11424
+ console.log('View mode changed - from GanttElastic:', mode);
11425
+
11377
11426
  // Force recalculation by triggering a reactive update
11378
11427
  this.$nextTick(() => {
11379
11428
  this.$forceUpdate();
@@ -11399,15 +11448,12 @@ const GanttElastic = {
11399
11448
  */
11400
11449
  handleTaskUpdated(updatedTask) {
11401
11450
  // Emit event to parent component
11451
+ console.log('Task updated -- GanttElastic:');
11402
11452
  this.$emit('task-updated', updatedTask);
11453
+ this.$emit('gantt-task-updated', updatedTask);
11403
11454
 
11404
- // Log the update for debugging
11405
- console.log('Task updated:', updatedTask);
11406
-
11407
- // You can add additional logic here like:
11408
- // - Save to backend
11409
- // - Update local storage
11410
- // - Trigger other updates
11455
+ // Also emit to root for plugin usage
11456
+ this.$root.$emit('gantt-task-updated', updatedTask);
11411
11457
  },
11412
11458
  /**
11413
11459
  * Calculate height of scrollbar in current browser
@@ -12751,6 +12797,38 @@ const GanttElastic = {
12751
12797
  this.$root.$emit('gantt-elastic-mounted', this);
12752
12798
  this.$emit('mounted', this);
12753
12799
  this.$root.$emit('gantt-elastic-ready', this);
12800
+
12801
+ // Expose methods for plugin usage
12802
+ this.$gantt = {
12803
+ onTaskUpdated: this.handleTaskUpdated,
12804
+ onViewModeChanged: this.onViewModeChanged,
12805
+ getTasks: () => this.state.tasks,
12806
+ updateTask: (taskId, updates) => {
12807
+ const taskIndex = this.state.tasks.findIndex(task => task.id === taskId);
12808
+ if (taskIndex !== -1) {
12809
+ Object.assign(this.state.tasks[taskIndex], updates);
12810
+ this.$forceUpdate();
12811
+ }
12812
+ }
12813
+ };
12814
+
12815
+ /*
12816
+ * PLUGIN USAGE EXAMPLE:
12817
+ *
12818
+ * // Listen to events when using as plugin:
12819
+ * this.$root.$on('gantt-task-updated', (updatedTask) => {
12820
+ * console.log('Task updated:', updatedTask);
12821
+ * });
12822
+ *
12823
+ * this.$root.$on('gantt-view-mode-changed', (mode) => {
12824
+ * console.log('View mode changed:', mode);
12825
+ * });
12826
+ *
12827
+ * // Access gantt methods:
12828
+ * const ganttInstance = this.$refs.ganttChart.$gantt;
12829
+ * ganttInstance.updateTask(1, { label: 'New Task Name' });
12830
+ * const tasks = ganttInstance.getTasks();
12831
+ */
12754
12832
  },
12755
12833
  /**
12756
12834
  * Emit event when data was changed and before update (you can cleanup dom events here for example)
@@ -12790,10 +12868,10 @@ const GanttElastic = {
12790
12868
  /* harmony default export */ var GanttElasticvue_type_script_lang_js = (GanttElastic);
12791
12869
  ;// ./src/GanttElastic.vue?vue&type=script&lang=js
12792
12870
  /* harmony default export */ var src_GanttElasticvue_type_script_lang_js = (GanttElasticvue_type_script_lang_js);
12793
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-12.use[0]!./node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/GanttElastic.vue?vue&type=style&index=0&id=100984c8&prod&lang=css
12871
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-12.use[0]!./node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/GanttElastic.vue?vue&type=style&index=0&id=0a0b0d9f&prod&lang=css
12794
12872
  // extracted by mini-css-extract-plugin
12795
12873
 
12796
- ;// ./src/GanttElastic.vue?vue&type=style&index=0&id=100984c8&prod&lang=css
12874
+ ;// ./src/GanttElastic.vue?vue&type=style&index=0&id=0a0b0d9f&prod&lang=css
12797
12875
 
12798
12876
  ;// ./src/GanttElastic.vue
12799
12877
 
@@ -12806,8 +12884,8 @@ const GanttElastic = {
12806
12884
 
12807
12885
  var GanttElastic_component = normalizeComponent(
12808
12886
  src_GanttElasticvue_type_script_lang_js,
12809
- GanttElasticvue_type_template_id_100984c8_render,
12810
- GanttElasticvue_type_template_id_100984c8_staticRenderFns,
12887
+ GanttElasticvue_type_template_id_0a0b0d9f_render,
12888
+ GanttElasticvue_type_template_id_0a0b0d9f_staticRenderFns,
12811
12889
  false,
12812
12890
  null,
12813
12891
  null,