vxe-gantt 4.9.0-beta.0 → 4.9.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/all.esm.js CHANGED
@@ -6,7 +6,7 @@ import DomZIndex from 'dom-zindex';
6
6
  import { VxeTable } from 'vxe-table';
7
7
 
8
8
  const { setConfig: setConfig$1, setIcon } = VxeUI;
9
- VxeUI.ganttVersion = "4.9.0-beta.0";
9
+ VxeUI.ganttVersion = "4.9.0-beta.1";
10
10
  const ymdFormat = 'yyyy-MM-dd';
11
11
  const ymdhmsFormat = 'yyyy-MM-dd HH:mm:ss';
12
12
  setConfig$1({
@@ -130,7 +130,7 @@ setIcon({
130
130
  });
131
131
 
132
132
  const { log } = VxeUI;
133
- const ganttVersion = `gantt v${"4.9.0-beta.0"}`;
133
+ const ganttVersion = `gantt v${"4.9.0-beta.1"}`;
134
134
  function createComponentLog(name) {
135
135
  const uiVersion = VxeUI.uiVersion ? `ui v${VxeUI.uiVersion}` : '';
136
136
  const tableVersion = VxeUI.tableVersion ? `table v${VxeUI.tableVersion}` : '';
@@ -885,8 +885,8 @@ var GanttViewChartComponent = defineVxeComponent({
885
885
  },
886
886
  onMousedown(evnt) {
887
887
  evnt.stopPropagation();
888
- if ($xeGantt.handleTaskBarMousedownEvent) {
889
- $xeGantt.handleTaskBarMousedownEvent(evnt, childCtParams);
888
+ if ($xeGantt.handleTaskBarModnEvent) {
889
+ $xeGantt.handleTaskBarModnEvent(evnt, childCtParams);
890
890
  }
891
891
  }
892
892
  }, [
@@ -990,8 +990,8 @@ var GanttViewChartComponent = defineVxeComponent({
990
990
  $xeGantt.handleTaskBarDblclickEvent(evnt, barParams);
991
991
  },
992
992
  onMousedown(evnt) {
993
- if ($xeGantt.handleTaskBarMousedownEvent) {
994
- $xeGantt.handleTaskBarMousedownEvent(evnt, barParams);
993
+ if ($xeGantt.handleTaskBarModnEvent) {
994
+ $xeGantt.handleTaskBarModnEvent(evnt, barParams);
995
995
  }
996
996
  }
997
997
  }, cbVNs)
@@ -1486,7 +1486,7 @@ var GanttViewComponent = defineVxeComponent({
1486
1486
  const ganttProps = $xeGantt.props;
1487
1487
  const ganttReactData = $xeGantt.reactData;
1488
1488
  const ganttInternalData = $xeGantt.internalData;
1489
- const { computeDateFormat, computeTaskBarOpts, computeTaskViewOpts, computeStartField, computeEndField, computeTypeField, computeScrollbarOpts, computeScaleUnit, computeWeekScale, computeMinScale, computeTaskNowLineOpts, computeScaleStep } = $xeGantt.getComputeMaps();
1489
+ const { computeDateFormat, computeTaskBarOpts, computeTaskViewOpts, computeStartField, computeEndField, computeTypeField, computeScrollbarOpts, computeScaleUnit, computeWeekScale, computeMinScale, computeTaskNowLineOpts, computeScaleStep, computeIsVScrollbar } = $xeGantt.getComputeMaps();
1490
1490
  const refElem = ref();
1491
1491
  const refTrackXElem = ref();
1492
1492
  const refTrackYElem = ref();
@@ -1512,6 +1512,10 @@ var GanttViewComponent = defineVxeComponent({
1512
1512
  refScrollXHandleElem,
1513
1513
  refScrollYHandleElem
1514
1514
  };
1515
+ const computeGanttIsVScrollbar = computed(() => {
1516
+ const isVScrollbar = computeIsVScrollbar.value;
1517
+ return isVScrollbar;
1518
+ });
1515
1519
  const computeScrollbarXOpts = computed(() => {
1516
1520
  const scrollbarOpts = computeScrollbarOpts.value;
1517
1521
  return scrollbarOpts.x ? Object.assign({}, scrollbarOpts.x, scrollbarOpts.xConfig) : (scrollbarOpts.xConfig || {});
@@ -3543,6 +3547,30 @@ var GanttViewComponent = defineVxeComponent({
3543
3547
  const handleGlobalResizeEvent = () => {
3544
3548
  handleLazyRecalculate();
3545
3549
  };
3550
+ const bindScrollbarResize = () => {
3551
+ const { elemStore, scrollObserver } = internalData;
3552
+ const isVScrollbar = computeIsVScrollbar.value;
3553
+ if (isVScrollbar) {
3554
+ if (!scrollObserver) {
3555
+ const el = refElem.value;
3556
+ const viewInnerXEl = getRefElem(elemStore['main-body-xSpace']);
3557
+ const viewInnerYEl = getRefElem(elemStore['main-body-xSpace']);
3558
+ const scrollObserver = globalResize.create(() => {
3559
+ reScrollFlag.value++;
3560
+ });
3561
+ if (el) {
3562
+ scrollObserver.observe(el);
3563
+ }
3564
+ if (viewInnerXEl) {
3565
+ scrollObserver.observe(viewInnerXEl);
3566
+ }
3567
+ if (viewInnerYEl) {
3568
+ scrollObserver.observe(viewInnerYEl);
3569
+ }
3570
+ internalData.scrollObserver = scrollObserver;
3571
+ }
3572
+ }
3573
+ };
3546
3574
  const updateThumbSize = () => {
3547
3575
  const { elemStore } = internalData;
3548
3576
  const viewEl = getRefElem(elemStore['main-body-scroll']);
@@ -3801,8 +3829,8 @@ var GanttViewComponent = defineVxeComponent({
3801
3829
  };
3802
3830
  const renderVirtualBody = () => {
3803
3831
  const { showLeftView } = ganttReactData;
3804
- const { useScrollbar } = ganttProps;
3805
3832
  const { xThumbWidth, yThumbHeight } = reactData;
3833
+ const isVScrollbar = computeIsVScrollbar.value;
3806
3834
  const scrollbarOpts = computeScrollbarOpts.value;
3807
3835
  const scrollXAutoHide = computeScrollXAutoHide.value;
3808
3836
  const scrollYAutoHide = computeScrollYAutoHide.value;
@@ -3814,10 +3842,10 @@ var GanttViewComponent = defineVxeComponent({
3814
3842
  return h('div', {
3815
3843
  key: 'lvb',
3816
3844
  class: ['vxe-gantt--layout-wrapper', `sx-pos--${scrollbarXToTop ? 'top' : 'bottom'}`, `sy-pos--${scrollbarYToLeft ? 'left' : 'right'}`, {
3817
- 'is--virtual-scrollbar': useScrollbar,
3818
- 'ov-padding': useScrollbar && scrollbarOpts.padding,
3819
- 'ov-x--auto-hide': useScrollbar && scrollXAutoHide,
3820
- 'ov-y--auto-hide': useScrollbar && scrollYAutoHide,
3845
+ 'is--virtual-scrollbar': isVScrollbar,
3846
+ 'ov-padding': isVScrollbar && scrollbarOpts.padding,
3847
+ 'ov-x--auto-hide': isVScrollbar && scrollXAutoHide,
3848
+ 'ov-y--auto-hide': isVScrollbar && scrollYAutoHide,
3821
3849
  'overflow-y': yThumbHeight,
3822
3850
  'overflow-x': xThumbWidth
3823
3851
  }]
@@ -3864,8 +3892,8 @@ var GanttViewComponent = defineVxeComponent({
3864
3892
  ]);
3865
3893
  };
3866
3894
  const renderVN = () => {
3867
- const { useScrollbar } = ganttProps;
3868
3895
  const { overflowX, overflowY, scrollXLoad, scrollYLoad } = reactData;
3896
+ const isVScrollbar = computeIsVScrollbar.value;
3869
3897
  const scrollbarXToTop = computeScrollbarXToTop.value;
3870
3898
  return h('div', {
3871
3899
  ref: refElem,
@@ -3878,7 +3906,7 @@ var GanttViewComponent = defineVxeComponent({
3878
3906
  }, [
3879
3907
  h('div', {
3880
3908
  class: 'vxe-gantt-view--render-wrapper'
3881
- }, useScrollbar
3909
+ }, isVScrollbar
3882
3910
  ? [renderVirtualBody()]
3883
3911
  : (scrollbarXToTop
3884
3912
  ? [
@@ -3900,6 +3928,14 @@ var GanttViewComponent = defineVxeComponent({
3900
3928
  ]);
3901
3929
  };
3902
3930
  const reScrollFlag = ref(0);
3931
+ watch(computeGanttIsVScrollbar, () => {
3932
+ nextTick(() => {
3933
+ bindScrollbarResize();
3934
+ nextTick(() => {
3935
+ reScrollFlag.value++;
3936
+ });
3937
+ });
3938
+ });
3903
3939
  watch(computeScrollbarXToTop, () => {
3904
3940
  reScrollFlag.value++;
3905
3941
  });
@@ -3928,22 +3964,7 @@ var GanttViewComponent = defineVxeComponent({
3928
3964
  });
3929
3965
  onMounted(() => {
3930
3966
  nextTick(() => {
3931
- const { useScrollbar } = ganttProps;
3932
- const { elemStore } = internalData;
3933
- const el = refElem.value;
3934
- if (useScrollbar) {
3935
- const viewInnerEl = getRefElem(elemStore['main-body-table']);
3936
- const scrollObserver = globalResize.create(() => {
3937
- reScrollFlag.value++;
3938
- });
3939
- if (el) {
3940
- scrollObserver.observe(el);
3941
- }
3942
- if (viewInnerEl) {
3943
- scrollObserver.observe(viewInnerEl);
3944
- }
3945
- internalData.scrollObserver = scrollObserver;
3946
- }
3967
+ bindScrollbarResize();
3947
3968
  });
3948
3969
  globalEvents$1.on($xeGanttView, 'resize', handleGlobalResizeEvent);
3949
3970
  });
@@ -4080,6 +4101,7 @@ var VxeGanttComponent = defineVxeComponent({
4080
4101
  const VxeUITooltipComponent = VxeUI.getComponent('VxeTooltip');
4081
4102
  const scrollDefaultConf = Object.assign({}, getConfig().scrollbar);
4082
4103
  const { computeSize } = useFns.useSize(props);
4104
+ const { computeIsVScrollbar } = useFns.useVScrollbar(props);
4083
4105
  const reactData = reactive(createReactData());
4084
4106
  const internalData = createInternalData();
4085
4107
  const refElem = ref();
@@ -4284,8 +4306,9 @@ var VxeGanttComponent = defineVxeComponent({
4284
4306
  return taskBarOpts.showCriticalPath;
4285
4307
  });
4286
4308
  const computeWrapperStyle = computed(() => {
4287
- const { height, maxHeight, useScrollbar, taskBarSubviewConfig } = props;
4309
+ const { height, maxHeight, taskBarSubviewConfig } = props;
4288
4310
  const { isZMax, tZindex, overflowY, scrollbarWidth } = reactData;
4311
+ const isVScrollbar = computeIsVScrollbar.value;
4289
4312
  const taskViewOpts = computeTaskViewOpts.value;
4290
4313
  const { viewStyle, tableStyle } = taskViewOpts;
4291
4314
  const taskBarOpts = computeTaskBarOpts.value;
@@ -4298,7 +4321,7 @@ var VxeGanttComponent = defineVxeComponent({
4298
4321
  const barWidth = computeScrollYWidth.value;
4299
4322
  const barHeight = computeScrollXHeight.value;
4300
4323
  const stys = {
4301
- '--vxe-ui-gantt-scrollbar-width': (overflowY ? (useScrollbar ? 'var(--vxe-ui-scrollbar-y-width)' : (scrollbarWidth + 'px')) : '')
4324
+ '--vxe-ui-gantt-scrollbar-width': (overflowY ? (isVScrollbar ? 'var(--vxe-ui-scrollbar-y-width)' : (scrollbarWidth + 'px')) : '')
4302
4325
  };
4303
4326
  if (cpLineColor) {
4304
4327
  stys['--vxe-ui-gantt-view-bar-critical-path-line-color'] = cpLineColor;
@@ -4491,6 +4514,8 @@ var VxeGanttComponent = defineVxeComponent({
4491
4514
  refPopupContainerElem
4492
4515
  };
4493
4516
  const computeMaps = {
4517
+ computeSize,
4518
+ computeIsVScrollbar,
4494
4519
  computeProxyOpts,
4495
4520
  computePagerOpts,
4496
4521
  computeFormOpts,
@@ -6397,8 +6422,8 @@ var VxeGanttComponent = defineVxeComponent({
6397
6422
  ]);
6398
6423
  };
6399
6424
  const renderChildLayout = (layoutKeys) => {
6400
- const { useScrollbar } = props;
6401
6425
  const { showLeftView, showRightView } = reactData;
6426
+ const isVScrollbar = computeIsVScrollbar.value;
6402
6427
  const taskSplitOpts = computeTaskSplitOpts.value;
6403
6428
  const scrollbarXToTop = computeScrollbarXToTop.value;
6404
6429
  const scrollbarYToLeft = computeScrollbarYToLeft.value;
@@ -6422,9 +6447,9 @@ var VxeGanttComponent = defineVxeComponent({
6422
6447
  ref: refGanttContainerElem,
6423
6448
  key: 'tv',
6424
6449
  class: ['vxe-gantt--gantt-container', `sx-pos--${scrollbarXToTop ? 'top' : 'bottom'}`, `sy-pos--${scrollbarYToLeft ? 'left' : 'right'}`, {
6425
- 'is--virtual-scrollbar': useScrollbar,
6426
- 'ov-x--auto-hide': useScrollbar && scrollXAutoHide,
6427
- 'ov-y--auto-hide': useScrollbar && scrollYAutoHide,
6450
+ 'is--virtual-scrollbar': isVScrollbar,
6451
+ 'ov-x--auto-hide': isVScrollbar && scrollXAutoHide,
6452
+ 'ov-y--auto-hide': isVScrollbar && scrollYAutoHide,
6428
6453
  'show--left': showLeftView,
6429
6454
  'hide--left': !showLeftView,
6430
6455
  'show--right': showRightView,
@@ -6544,6 +6569,7 @@ var VxeGanttComponent = defineVxeComponent({
6544
6569
  const renderVN = () => {
6545
6570
  const { showLeftView, showRightView, overflowY, overflowX, showSplitAnimat } = reactData;
6546
6571
  const vSize = computeSize.value;
6572
+ const isVScrollbar = computeIsVScrollbar.value;
6547
6573
  const wrapperStyle = computeWrapperStyle.value;
6548
6574
  const isLoading = computeIsLoading.value;
6549
6575
  const taskSplitOpts = computeTaskSplitOpts.value;
@@ -6554,6 +6580,7 @@ var VxeGanttComponent = defineVxeComponent({
6554
6580
  ref: refElem,
6555
6581
  class: ['vxe-gantt', `border--${tableBorder}`, `sx-pos--${scrollbarXToTop ? 'top' : 'bottom'}`, `sy-pos--${scrollbarYToLeft ? 'left' : 'right'}`, {
6556
6582
  [`size--${vSize}`]: vSize,
6583
+ 'is--virtual-scrollbar': isVScrollbar,
6557
6584
  'is--round': props.round,
6558
6585
  'show--animat': taskSplitOpts.animation,
6559
6586
  'is--maximize': reactData.isZMax,
@@ -236,8 +236,8 @@ export default defineVxeComponent({
236
236
  },
237
237
  onMousedown(evnt) {
238
238
  evnt.stopPropagation();
239
- if ($xeGantt.handleTaskBarMousedownEvent) {
240
- $xeGantt.handleTaskBarMousedownEvent(evnt, childCtParams);
239
+ if ($xeGantt.handleTaskBarModnEvent) {
240
+ $xeGantt.handleTaskBarModnEvent(evnt, childCtParams);
241
241
  }
242
242
  }
243
243
  }, [
@@ -341,8 +341,8 @@ export default defineVxeComponent({
341
341
  $xeGantt.handleTaskBarDblclickEvent(evnt, barParams);
342
342
  },
343
343
  onMousedown(evnt) {
344
- if ($xeGantt.handleTaskBarMousedownEvent) {
345
- $xeGantt.handleTaskBarMousedownEvent(evnt, barParams);
344
+ if ($xeGantt.handleTaskBarModnEvent) {
345
+ $xeGantt.handleTaskBarModnEvent(evnt, barParams);
346
346
  }
347
347
  }
348
348
  }, cbVNs)
@@ -95,7 +95,7 @@ export default defineVxeComponent({
95
95
  const ganttProps = $xeGantt.props;
96
96
  const ganttReactData = $xeGantt.reactData;
97
97
  const ganttInternalData = $xeGantt.internalData;
98
- const { computeDateFormat, computeTaskBarOpts, computeTaskViewOpts, computeStartField, computeEndField, computeTypeField, computeScrollbarOpts, computeScaleUnit, computeWeekScale, computeMinScale, computeTaskNowLineOpts, computeScaleStep } = $xeGantt.getComputeMaps();
98
+ const { computeDateFormat, computeTaskBarOpts, computeTaskViewOpts, computeStartField, computeEndField, computeTypeField, computeScrollbarOpts, computeScaleUnit, computeWeekScale, computeMinScale, computeTaskNowLineOpts, computeScaleStep, computeIsVScrollbar } = $xeGantt.getComputeMaps();
99
99
  const refElem = ref();
100
100
  const refTrackXElem = ref();
101
101
  const refTrackYElem = ref();
@@ -121,6 +121,10 @@ export default defineVxeComponent({
121
121
  refScrollXHandleElem,
122
122
  refScrollYHandleElem
123
123
  };
124
+ const computeGanttIsVScrollbar = computed(() => {
125
+ const isVScrollbar = computeIsVScrollbar.value;
126
+ return isVScrollbar;
127
+ });
124
128
  const computeScrollbarXOpts = computed(() => {
125
129
  const scrollbarOpts = computeScrollbarOpts.value;
126
130
  return scrollbarOpts.x ? Object.assign({}, scrollbarOpts.x, scrollbarOpts.xConfig) : (scrollbarOpts.xConfig || {});
@@ -2152,6 +2156,30 @@ export default defineVxeComponent({
2152
2156
  const handleGlobalResizeEvent = () => {
2153
2157
  handleLazyRecalculate();
2154
2158
  };
2159
+ const bindScrollbarResize = () => {
2160
+ const { elemStore, scrollObserver } = internalData;
2161
+ const isVScrollbar = computeIsVScrollbar.value;
2162
+ if (isVScrollbar) {
2163
+ if (!scrollObserver) {
2164
+ const el = refElem.value;
2165
+ const viewInnerXEl = getRefElem(elemStore['main-body-xSpace']);
2166
+ const viewInnerYEl = getRefElem(elemStore['main-body-xSpace']);
2167
+ const scrollObserver = globalResize.create(() => {
2168
+ reScrollFlag.value++;
2169
+ });
2170
+ if (el) {
2171
+ scrollObserver.observe(el);
2172
+ }
2173
+ if (viewInnerXEl) {
2174
+ scrollObserver.observe(viewInnerXEl);
2175
+ }
2176
+ if (viewInnerYEl) {
2177
+ scrollObserver.observe(viewInnerYEl);
2178
+ }
2179
+ internalData.scrollObserver = scrollObserver;
2180
+ }
2181
+ }
2182
+ };
2155
2183
  const updateThumbSize = () => {
2156
2184
  const { elemStore } = internalData;
2157
2185
  const viewEl = getRefElem(elemStore['main-body-scroll']);
@@ -2410,8 +2438,8 @@ export default defineVxeComponent({
2410
2438
  };
2411
2439
  const renderVirtualBody = () => {
2412
2440
  const { showLeftView } = ganttReactData;
2413
- const { useScrollbar } = ganttProps;
2414
2441
  const { xThumbWidth, yThumbHeight } = reactData;
2442
+ const isVScrollbar = computeIsVScrollbar.value;
2415
2443
  const scrollbarOpts = computeScrollbarOpts.value;
2416
2444
  const scrollXAutoHide = computeScrollXAutoHide.value;
2417
2445
  const scrollYAutoHide = computeScrollYAutoHide.value;
@@ -2423,10 +2451,10 @@ export default defineVxeComponent({
2423
2451
  return h('div', {
2424
2452
  key: 'lvb',
2425
2453
  class: ['vxe-gantt--layout-wrapper', `sx-pos--${scrollbarXToTop ? 'top' : 'bottom'}`, `sy-pos--${scrollbarYToLeft ? 'left' : 'right'}`, {
2426
- 'is--virtual-scrollbar': useScrollbar,
2427
- 'ov-padding': useScrollbar && scrollbarOpts.padding,
2428
- 'ov-x--auto-hide': useScrollbar && scrollXAutoHide,
2429
- 'ov-y--auto-hide': useScrollbar && scrollYAutoHide,
2454
+ 'is--virtual-scrollbar': isVScrollbar,
2455
+ 'ov-padding': isVScrollbar && scrollbarOpts.padding,
2456
+ 'ov-x--auto-hide': isVScrollbar && scrollXAutoHide,
2457
+ 'ov-y--auto-hide': isVScrollbar && scrollYAutoHide,
2430
2458
  'overflow-y': yThumbHeight,
2431
2459
  'overflow-x': xThumbWidth
2432
2460
  }]
@@ -2473,8 +2501,8 @@ export default defineVxeComponent({
2473
2501
  ]);
2474
2502
  };
2475
2503
  const renderVN = () => {
2476
- const { useScrollbar } = ganttProps;
2477
2504
  const { overflowX, overflowY, scrollXLoad, scrollYLoad } = reactData;
2505
+ const isVScrollbar = computeIsVScrollbar.value;
2478
2506
  const scrollbarXToTop = computeScrollbarXToTop.value;
2479
2507
  return h('div', {
2480
2508
  ref: refElem,
@@ -2487,7 +2515,7 @@ export default defineVxeComponent({
2487
2515
  }, [
2488
2516
  h('div', {
2489
2517
  class: 'vxe-gantt-view--render-wrapper'
2490
- }, useScrollbar
2518
+ }, isVScrollbar
2491
2519
  ? [renderVirtualBody()]
2492
2520
  : (scrollbarXToTop
2493
2521
  ? [
@@ -2509,6 +2537,14 @@ export default defineVxeComponent({
2509
2537
  ]);
2510
2538
  };
2511
2539
  const reScrollFlag = ref(0);
2540
+ watch(computeGanttIsVScrollbar, () => {
2541
+ nextTick(() => {
2542
+ bindScrollbarResize();
2543
+ nextTick(() => {
2544
+ reScrollFlag.value++;
2545
+ });
2546
+ });
2547
+ });
2512
2548
  watch(computeScrollbarXToTop, () => {
2513
2549
  reScrollFlag.value++;
2514
2550
  });
@@ -2537,22 +2573,7 @@ export default defineVxeComponent({
2537
2573
  });
2538
2574
  onMounted(() => {
2539
2575
  nextTick(() => {
2540
- const { useScrollbar } = ganttProps;
2541
- const { elemStore } = internalData;
2542
- const el = refElem.value;
2543
- if (useScrollbar) {
2544
- const viewInnerEl = getRefElem(elemStore['main-body-table']);
2545
- const scrollObserver = globalResize.create(() => {
2546
- reScrollFlag.value++;
2547
- });
2548
- if (el) {
2549
- scrollObserver.observe(el);
2550
- }
2551
- if (viewInnerEl) {
2552
- scrollObserver.observe(viewInnerEl);
2553
- }
2554
- internalData.scrollObserver = scrollObserver;
2555
- }
2576
+ bindScrollbarResize();
2556
2577
  });
2557
2578
  globalEvents.on($xeGanttView, 'resize', handleGlobalResizeEvent);
2558
2579
  });
@@ -124,6 +124,7 @@ export default defineVxeComponent({
124
124
  const VxeUITooltipComponent = VxeUI.getComponent('VxeTooltip');
125
125
  const scrollDefaultConf = Object.assign({}, getConfig().scrollbar);
126
126
  const { computeSize } = useFns.useSize(props);
127
+ const { computeIsVScrollbar } = useFns.useVScrollbar(props);
127
128
  const reactData = reactive(createReactData());
128
129
  const internalData = createInternalData();
129
130
  const refElem = ref();
@@ -328,8 +329,9 @@ export default defineVxeComponent({
328
329
  return taskBarOpts.showCriticalPath;
329
330
  });
330
331
  const computeWrapperStyle = computed(() => {
331
- const { height, maxHeight, useScrollbar, taskBarSubviewConfig } = props;
332
+ const { height, maxHeight, taskBarSubviewConfig } = props;
332
333
  const { isZMax, tZindex, overflowY, scrollbarWidth } = reactData;
334
+ const isVScrollbar = computeIsVScrollbar.value;
333
335
  const taskViewOpts = computeTaskViewOpts.value;
334
336
  const { viewStyle, tableStyle } = taskViewOpts;
335
337
  const taskBarOpts = computeTaskBarOpts.value;
@@ -342,7 +344,7 @@ export default defineVxeComponent({
342
344
  const barWidth = computeScrollYWidth.value;
343
345
  const barHeight = computeScrollXHeight.value;
344
346
  const stys = {
345
- '--vxe-ui-gantt-scrollbar-width': (overflowY ? (useScrollbar ? 'var(--vxe-ui-scrollbar-y-width)' : (scrollbarWidth + 'px')) : '')
347
+ '--vxe-ui-gantt-scrollbar-width': (overflowY ? (isVScrollbar ? 'var(--vxe-ui-scrollbar-y-width)' : (scrollbarWidth + 'px')) : '')
346
348
  };
347
349
  if (cpLineColor) {
348
350
  stys['--vxe-ui-gantt-view-bar-critical-path-line-color'] = cpLineColor;
@@ -535,6 +537,8 @@ export default defineVxeComponent({
535
537
  refPopupContainerElem
536
538
  };
537
539
  const computeMaps = {
540
+ computeSize,
541
+ computeIsVScrollbar,
538
542
  computeProxyOpts,
539
543
  computePagerOpts,
540
544
  computeFormOpts,
@@ -2441,8 +2445,8 @@ export default defineVxeComponent({
2441
2445
  ]);
2442
2446
  };
2443
2447
  const renderChildLayout = (layoutKeys) => {
2444
- const { useScrollbar } = props;
2445
2448
  const { showLeftView, showRightView } = reactData;
2449
+ const isVScrollbar = computeIsVScrollbar.value;
2446
2450
  const taskSplitOpts = computeTaskSplitOpts.value;
2447
2451
  const scrollbarXToTop = computeScrollbarXToTop.value;
2448
2452
  const scrollbarYToLeft = computeScrollbarYToLeft.value;
@@ -2466,9 +2470,9 @@ export default defineVxeComponent({
2466
2470
  ref: refGanttContainerElem,
2467
2471
  key: 'tv',
2468
2472
  class: ['vxe-gantt--gantt-container', `sx-pos--${scrollbarXToTop ? 'top' : 'bottom'}`, `sy-pos--${scrollbarYToLeft ? 'left' : 'right'}`, {
2469
- 'is--virtual-scrollbar': useScrollbar,
2470
- 'ov-x--auto-hide': useScrollbar && scrollXAutoHide,
2471
- 'ov-y--auto-hide': useScrollbar && scrollYAutoHide,
2473
+ 'is--virtual-scrollbar': isVScrollbar,
2474
+ 'ov-x--auto-hide': isVScrollbar && scrollXAutoHide,
2475
+ 'ov-y--auto-hide': isVScrollbar && scrollYAutoHide,
2472
2476
  'show--left': showLeftView,
2473
2477
  'hide--left': !showLeftView,
2474
2478
  'show--right': showRightView,
@@ -2588,6 +2592,7 @@ export default defineVxeComponent({
2588
2592
  const renderVN = () => {
2589
2593
  const { showLeftView, showRightView, overflowY, overflowX, showSplitAnimat } = reactData;
2590
2594
  const vSize = computeSize.value;
2595
+ const isVScrollbar = computeIsVScrollbar.value;
2591
2596
  const wrapperStyle = computeWrapperStyle.value;
2592
2597
  const isLoading = computeIsLoading.value;
2593
2598
  const taskSplitOpts = computeTaskSplitOpts.value;
@@ -2598,6 +2603,7 @@ export default defineVxeComponent({
2598
2603
  ref: refElem,
2599
2604
  class: ['vxe-gantt', `border--${tableBorder}`, `sx-pos--${scrollbarXToTop ? 'top' : 'bottom'}`, `sy-pos--${scrollbarYToLeft ? 'left' : 'right'}`, {
2600
2605
  [`size--${vSize}`]: vSize,
2606
+ 'is--virtual-scrollbar': isVScrollbar,
2601
2607
  'is--round': props.round,
2602
2608
  'show--animat': taskSplitOpts.animation,
2603
2609
  'is--maximize': reactData.isZMax,
package/es/ui/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { VxeUI } from '@vxe-ui/core';
2
2
  const { setConfig, setIcon } = VxeUI;
3
- VxeUI.ganttVersion = "4.9.0-beta.0";
3
+ VxeUI.ganttVersion = "4.9.0-beta.1";
4
4
  const ymdFormat = 'yyyy-MM-dd';
5
5
  const ymdhmsFormat = 'yyyy-MM-dd HH:mm:ss';
6
6
  setConfig({
package/es/ui/src/log.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { VxeUI } from '@vxe-ui/core';
2
2
  const { log } = VxeUI;
3
- const ganttVersion = `gantt v${"4.9.0-beta.0"}`;
3
+ const ganttVersion = `gantt v${"4.9.0-beta.1"}`;
4
4
  export function createComponentLog(name) {
5
5
  const uiVersion = VxeUI.uiVersion ? `ui v${VxeUI.uiVersion}` : '';
6
6
  const tableVersion = VxeUI.tableVersion ? `table v${VxeUI.tableVersion}` : '';
@@ -299,8 +299,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
299
299
  },
300
300
  onMousedown(evnt) {
301
301
  evnt.stopPropagation();
302
- if ($xeGantt.handleTaskBarMousedownEvent) {
303
- $xeGantt.handleTaskBarMousedownEvent(evnt, childCtParams);
302
+ if ($xeGantt.handleTaskBarModnEvent) {
303
+ $xeGantt.handleTaskBarModnEvent(evnt, childCtParams);
304
304
  }
305
305
  }
306
306
  }, [taskBarSlot ? (0, _vue.h)('div', Object.assign({
@@ -397,8 +397,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
397
397
  $xeGantt.handleTaskBarDblclickEvent(evnt, barParams);
398
398
  },
399
399
  onMousedown(evnt) {
400
- if ($xeGantt.handleTaskBarMousedownEvent) {
401
- $xeGantt.handleTaskBarMousedownEvent(evnt, barParams);
400
+ if ($xeGantt.handleTaskBarModnEvent) {
401
+ $xeGantt.handleTaskBarModnEvent(evnt, barParams);
402
402
  }
403
403
  }
404
404
  }, cbVNs)]);
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_core=require("@vxe-ui/core"),_xeUtils=_interopRequireDefault(require("xe-utils")),_util=require("./util"),_utils=require("../../ui/src/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getIcon,renderEmptyElement}=_core.VxeUI,sourceType="gantt",viewType="chart";var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGanttViewChart",setup(){let W=(0,_vue.inject)("$xeGantt",{});var e=(0,_vue.inject)("$xeGanttView",{});let{props:Y,context:v,reactData:J,internalData:Q}=W,{reactData:_,internalData:u}=e,{computeProgressField:X,computeTitleField:Z,computeTypeField:ee,computeTaskBarOpts:te,computeScaleUnit:ae,computeTaskLinkOpts:c,computeTaskBarMilestoneOpts:re,computeTaskBarSubviewOpts:se}=W.getComputeMaps(),d=e.getComputeMaps().computeNowLineLeft,p=(0,_vue.ref)(),w=(0,_vue.ref)(),h=(0,_vue.ref)(),g=(0,_vue.ref)(),x=(0,_vue.ref)(),m=(t,e,a,r,s,i,n,l)=>{let{resizeHeightFlag:j,pendingRowFlag:g}=t.reactData,{fullAllDataRowIdData:$,pendingRowMaps:_}=t.internalData;var{computeCellOpts:o,computeRowOpts:v,computeDefaultRowHeight:u}=t.getComputeMaps(),o=o.value,v=v.value,u=u.value,c=t.getComputeMaps().computeTreeOpts,c=c.value,c=c.children||c.childrenField,d=W.context.slots;let x=d.taskBar||d["task-bar"];d=d.taskBarOverview||d["task-bar-overview"];let{treeConfig:V,taskBarMilestoneConfig:m,taskBarSubviewConfig:b}=Y,{activeLink:p,activeBarRowid:G,criticalPathFlag:k}=J,L=Q.criticalRowMaps,q=Z.value,P=X.value,A=ee.value;var w=te.value;let f=re.value,T=se.value,{showOverview:N,barStyle:y}=T,E=ae.value,C={$gantt:W,source:sourceType,type:viewType,scaleType:E,row:e,$rowIndex:s,rowIndex:r,_rowIndex:i},{showProgress:M,showCriticalPath:H,showContent:B,contentMethod:D,barStyle:O,moveable:S,showTooltip:z}=w,U=_xeUtils.default.isFunction(O);var s=(O?U?O(C)||void 0:O:{})||{},r=s.round,i=s.bgColor,w=s.completedBgColor,s=s.style,K=$[a]||{},K=j?(0,_util.getCellRestHeight)(K,o,v,u):0;let R=(0,_utils.getStringValue)(_xeUtils.default.get(e,q));o=M?Math.min(100,Math.max(0,_xeUtils.default.toNumber(_xeUtils.default.get(e,P)))):0,v=(0,_util.getTaskType)(_xeUtils.default.get(e,A)),u=!(!(0,_utils.hasEnableConf)(m,f)||!(0,_util.hasMilestoneTask)(v));let I=Object.assign({},C);var h={},o={width:`${o||0}%`};u||U&&(i&&(h["--vxe-ui-gantt-view-task-bar-background-color"]=i),w)&&(h["--vxe-ui-gantt-view-task-bar-completed-background-color"]=w),s&&_xeUtils.default.assign(h,s);let F=[];if(W.renderGanttTaskBarContent)F=W.renderGanttTaskBarContent(I,{$gantt:W,$table:t,rowid:a});else{i=!(!(0,_utils.hasEnableConf)(b,T)||!(0,_util.hasSubviewTask)(v));D&&(R=(0,_utils.getStringValue)(D({row:e,title:R,scaleType:E})));let h={};if(z&&(h.onMouseover=e=>{var t=Q.dragBarRow,a=Object.assign({$event:e},I);t||W.triggerTaskBarTooltipEvent(e,a),W.dispatchEvent("task-bar-mouseenter",a,e)},h.onMouseleave=e=>{var t=Q.dragBarRow,a=Object.assign({$event:e},I);t||W.handleTaskBarTooltipLeaveEvent(e,a),W.dispatchEvent("task-bar-mouseleave",a,e)}),i&&V&&n&&n.length)if(l)N&&F.push((0,_vue.h)("div",{key:"vcso",class:"vxe-gantt-view--chart-subview-wrapper is--overview"},[(0,_vue.h)("div",{key:a,rowid:a,class:["vxe-gantt-view--chart-subview-row",{"is--progress":M,"is--round":r,"is--move":S}]},[(0,_vue.h)("div",{rowid:a,class:[d?"vxe-gantt-view--chart-subview-custom-bar":"vxe-gantt-view--chart-subview-bar","is--"+v]},[d?(0,_vue.h)("div",{key:"cbc",class:"vxe-gantt-view--chart-subview-custom-bar-content-wrapper"},W.callSlot(d,C)):(0,_vue.h)("div",{class:"vxe-gantt-view--chart-subview-bar-content-wrapper"},[B?(0,_vue.h)("div",{class:"vxe-gantt-view--chart-content"},R):renderEmptyElement(W)])])])]));else{let w=[];_xeUtils.default.eachTree(n,e=>{var a={$gantt:W,source:sourceType,type:viewType,scaleType:E,row:e,$rowIndex:t.getRowIndex(e),rowIndex:t.getVMRowIndex(e),_rowIndex:t.getVTRowIndex(e)},r=_xeUtils.default.isFunction(y),r=_xeUtils.default.assign({},(O?U?O(a):O:{})||{},(y?r?y(a):y:{})||{}),s=r.round,i=r.bgColor,n=r.completedBgColor,l=r.style,o=t.getRowid(e);let v=(0,_utils.getStringValue)(_xeUtils.default.get(e,q));var u=M?Math.min(100,Math.max(0,_xeUtils.default.toNumber(_xeUtils.default.get(e,P)))):0,c=(0,_util.getTaskType)(_xeUtils.default.get(e,A)),d=!(!(0,_utils.hasEnableConf)(m,f)||!(0,_util.hasMilestoneTask)(c)),p=!(!(0,_utils.hasEnableConf)(b,T)||!(0,_util.hasSubviewTask)(c));if(!p){p={},u={width:`${u||0}%`};d||(i&&(p["--vxe-ui-gantt-view-task-bar-background-color"]=i),n&&(u["--vxe-ui-gantt-view-task-bar-completed-background-color"]=n)),r.top&&(p.top=r.top),l&&_xeUtils.default.assign(p,l);let t=Object.assign({},a);D&&(v=(0,_utils.getStringValue)(D({row:e,title:v,scaleType:E}))),w.push((0,_vue.h)("div",{key:o,rowid:o,class:["vxe-gantt-view--chart-subview-row","is--"+c,{"is--progress":M,"is--critical":H&&k&&L.has(o),"is--round":s,"is--move":S,"row--pending":!!g&&!!_[o]}]},[(0,_vue.h)("div",{rowid:o,class:[x?"vxe-gantt-view--chart-subview-custom-bar":"vxe-gantt-view--chart-subview-bar","is--"+c],style:p,onClick(e){e.stopPropagation(),W.handleTaskBarClickEvent(e,t)},onDblclick(e){e.stopPropagation(),W.handleTaskBarDblclickEvent(e,t)},onMousedown(e){e.stopPropagation(),W.handleTaskBarMousedownEvent&&W.handleTaskBarMousedownEvent(e,t)}},[x?(0,_vue.h)("div",Object.assign({key:"cbc",class:"vxe-gantt-view--chart-subview-custom-bar-content-wrapper"},h),W.callSlot(x,t)):(0,_vue.h)("div",Object.assign({class:"vxe-gantt-view--chart-subview-bar-content-wrapper"},h),[M?(0,_vue.h)("div",{class:"vxe-gantt-view--chart-progress",style:u}):renderEmptyElement(W),B?(0,_vue.h)("div",{class:"vxe-gantt-view--chart-content"},v):renderEmptyElement(W)])])]))}},{children:c}),F.push((0,_vue.h)("div",{key:"vcsc",class:"vxe-gantt-view--chart-subview-wrapper is--inline"},w))}else x?F.push((0,_vue.h)("div",Object.assign({key:"cbc",class:"vxe-gantt-view--chart-custom-bar-content-wrapper"},h),W.callSlot(x,C))):u?({icon:w,iconStatus:s,iconStyle:i}=f,l={$gantt:W,row:e},F.push((0,_vue.h)("div",Object.assign({key:"vcm",class:"vxe-gantt-view--chart-milestone-wrapper"},h),[(0,_vue.h)("div",{class:["vxe-gantt-view--chart-milestone-icon",s?"theme--"+(_xeUtils.default.isFunction(s)?s(l):s):""],style:i?Object.assign({},_xeUtils.default.isFunction(i)?i(l):i):void 0},[(0,_vue.h)("i",{class:(w?_xeUtils.default.isFunction(w)?w(l):w:"")||getIcon().GANTT_VIEW_TASK_MILESTONE})]),B?(0,_vue.h)("div",{class:"vxe-gantt-view--chart-milestone-content"},R):renderEmptyElement(W)]))):F.push((0,_vue.h)("div",Object.assign({key:"vbc",class:"vxe-gantt-view--chart-bar-content-wrapper"},h),[M?(0,_vue.h)("div",{class:"vxe-gantt-view--chart-progress",style:o}):renderEmptyElement(W),B?(0,_vue.h)("div",{class:"vxe-gantt-view--chart-content"},R):renderEmptyElement(W)]))}return(0,_vue.h)("div",{key:a,rowid:a,class:["vxe-gantt-view--chart-row","is--"+v,{"is--progress":M,"is--critical":H&&k&&L.has(a),"row--pending":!!g&&!!_[a],"is--round":r,"is--move":S}],style:{height:K+"px"},onDragstart(e){Q.dragBarRow&&e.preventDefault()},onContextmenu(e){W.handleTaskBarContextmenuEvent(e,I)}},[(0,_vue.h)("div",{class:[x?"vxe-gantt-view--chart-custom-bar":"vxe-gantt-view--chart-bar","is--"+v,{"is--active":G===a,"active--link":p&&(a===""+p.from||a===""+p.to)}],style:h,rowid:a,onClick(e){W.handleTaskBarClickEvent(e,C)},onDblclick(e){W.handleTaskBarDblclickEvent(e,C)},onMousedown(e){W.handleTaskBarMousedownEvent&&W.handleTaskBarMousedownEvent(e,C)}},F)])},b=(o,e)=>{let v=o.props.treeConfig,u=o.reactData.treeExpandedFlag,{fullAllDataRowIdData:c,treeExpandedMaps:d}=o.internalData;var t=o.getComputeMaps().computeTreeOpts,t=t.value;let p=t.transform,w=t.children||t.childrenField,h=_.scrollYLoad,g=[];return e.forEach((e,t)=>{var a=o.getRowid(e),r=c[a]||{};let s=t,i=-1,n=(r&&(s=r.index,i=r._index),!1),l=[];v&&(l=e[w],n=!!u&&l&&0<l.length&&!!d[a]),g.push(m(o,e,a,s,t,i,l,n)),v&&n&&!h&&!p&&g.push(...b(o,l))}),g};return(0,_vue.onMounted)(()=>{var e=u.elemStore,t="main-chart-";e[t+"now-line"]=x,e[t+"task-wrapper"]=w,e[t+"before-wrapper"]=h,e[t+"after-wrapper"]=g}),(0,_vue.onUnmounted)(()=>{var e=u.elemStore,t="main-chart-";e[t+"now-line"]=null,e[t+"task-wrapper"]=null,e[t+"before-wrapper"]=null,e[t+"after-wrapper"]=null}),()=>{var e=u.xeTable,t=v.slots,a=J.dragLinkFromStore,r=_.tableData,s=c.value,i=te.value,n=d.value,{isCurrent:l,isHover:o}=s,i=i.linkCreatable,t=t.taskNowLine||t["task-now-line"];return(0,_vue.h)("div",{ref:p,class:["vxe-gantt-view--chart-wrapper",{"is--cl-drag":a.rowid}]},[0<n?(0,_vue.h)("div",{ref:x,class:"vxe-gantt-view--chart-now-line",style:{left:n+"px"}},t?t({}):[]):renderEmptyElement(W),W.renderGanttTaskChartBefores?(0,_vue.h)("div",{ref:h,class:["vxe-gantt-view--chart-before-wrapper",{"link--current":l,"link--hover":o}]},e&&(0,_utils.isEnableConf)(s)?W.renderGanttTaskChartBefores():[]):renderEmptyElement(W),(0,_vue.h)("div",{ref:w,class:["vxe-gantt-view--chart-task-wrapper",{"link--current":l,"link--create":i}]},e?b(e,r):[]),W.renderGanttTaskChartAfters?(0,_vue.h)("div",{ref:g,class:"vxe-gantt-view--chart-after-wrapper"},e&&(0,_utils.isEnableConf)(s)?W.renderGanttTaskChartAfters():[]):renderEmptyElement(W)])}}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_core=require("@vxe-ui/core"),_xeUtils=_interopRequireDefault(require("xe-utils")),_util=require("./util"),_utils=require("../../ui/src/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getIcon,renderEmptyElement}=_core.VxeUI,sourceType="gantt",viewType="chart";var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGanttViewChart",setup(){let W=(0,_vue.inject)("$xeGantt",{});var e=(0,_vue.inject)("$xeGanttView",{});let{props:Y,context:v,reactData:J,internalData:Q}=W,{reactData:_,internalData:u}=e,{computeProgressField:X,computeTitleField:Z,computeTypeField:ee,computeTaskBarOpts:te,computeScaleUnit:ae,computeTaskLinkOpts:c,computeTaskBarMilestoneOpts:re,computeTaskBarSubviewOpts:se}=W.getComputeMaps(),d=e.getComputeMaps().computeNowLineLeft,p=(0,_vue.ref)(),w=(0,_vue.ref)(),h=(0,_vue.ref)(),g=(0,_vue.ref)(),x=(0,_vue.ref)(),m=(t,e,a,r,s,i,n,l)=>{let{resizeHeightFlag:j,pendingRowFlag:g}=t.reactData,{fullAllDataRowIdData:$,pendingRowMaps:_}=t.internalData;var{computeCellOpts:o,computeRowOpts:v,computeDefaultRowHeight:u}=t.getComputeMaps(),o=o.value,v=v.value,u=u.value,c=t.getComputeMaps().computeTreeOpts,c=c.value,c=c.children||c.childrenField,d=W.context.slots;let x=d.taskBar||d["task-bar"];d=d.taskBarOverview||d["task-bar-overview"];let{treeConfig:V,taskBarMilestoneConfig:m,taskBarSubviewConfig:b}=Y,{activeLink:p,activeBarRowid:G,criticalPathFlag:k}=J,L=Q.criticalRowMaps,q=Z.value,P=X.value,A=ee.value;var w=te.value;let f=re.value,T=se.value,{showOverview:N,barStyle:y}=T,E=ae.value,C={$gantt:W,source:sourceType,type:viewType,scaleType:E,row:e,$rowIndex:s,rowIndex:r,_rowIndex:i},{showProgress:M,showCriticalPath:H,showContent:B,contentMethod:D,barStyle:O,moveable:S,showTooltip:z}=w,U=_xeUtils.default.isFunction(O);var s=(O?U?O(C)||void 0:O:{})||{},r=s.round,i=s.bgColor,w=s.completedBgColor,s=s.style,K=$[a]||{},K=j?(0,_util.getCellRestHeight)(K,o,v,u):0;let R=(0,_utils.getStringValue)(_xeUtils.default.get(e,q));o=M?Math.min(100,Math.max(0,_xeUtils.default.toNumber(_xeUtils.default.get(e,P)))):0,v=(0,_util.getTaskType)(_xeUtils.default.get(e,A)),u=!(!(0,_utils.hasEnableConf)(m,f)||!(0,_util.hasMilestoneTask)(v));let I=Object.assign({},C);var h={},o={width:`${o||0}%`};u||U&&(i&&(h["--vxe-ui-gantt-view-task-bar-background-color"]=i),w)&&(h["--vxe-ui-gantt-view-task-bar-completed-background-color"]=w),s&&_xeUtils.default.assign(h,s);let F=[];if(W.renderGanttTaskBarContent)F=W.renderGanttTaskBarContent(I,{$gantt:W,$table:t,rowid:a});else{i=!(!(0,_utils.hasEnableConf)(b,T)||!(0,_util.hasSubviewTask)(v));D&&(R=(0,_utils.getStringValue)(D({row:e,title:R,scaleType:E})));let h={};if(z&&(h.onMouseover=e=>{var t=Q.dragBarRow,a=Object.assign({$event:e},I);t||W.triggerTaskBarTooltipEvent(e,a),W.dispatchEvent("task-bar-mouseenter",a,e)},h.onMouseleave=e=>{var t=Q.dragBarRow,a=Object.assign({$event:e},I);t||W.handleTaskBarTooltipLeaveEvent(e,a),W.dispatchEvent("task-bar-mouseleave",a,e)}),i&&V&&n&&n.length)if(l)N&&F.push((0,_vue.h)("div",{key:"vcso",class:"vxe-gantt-view--chart-subview-wrapper is--overview"},[(0,_vue.h)("div",{key:a,rowid:a,class:["vxe-gantt-view--chart-subview-row",{"is--progress":M,"is--round":r,"is--move":S}]},[(0,_vue.h)("div",{rowid:a,class:[d?"vxe-gantt-view--chart-subview-custom-bar":"vxe-gantt-view--chart-subview-bar","is--"+v]},[d?(0,_vue.h)("div",{key:"cbc",class:"vxe-gantt-view--chart-subview-custom-bar-content-wrapper"},W.callSlot(d,C)):(0,_vue.h)("div",{class:"vxe-gantt-view--chart-subview-bar-content-wrapper"},[B?(0,_vue.h)("div",{class:"vxe-gantt-view--chart-content"},R):renderEmptyElement(W)])])])]));else{let w=[];_xeUtils.default.eachTree(n,e=>{var a={$gantt:W,source:sourceType,type:viewType,scaleType:E,row:e,$rowIndex:t.getRowIndex(e),rowIndex:t.getVMRowIndex(e),_rowIndex:t.getVTRowIndex(e)},r=_xeUtils.default.isFunction(y),r=_xeUtils.default.assign({},(O?U?O(a):O:{})||{},(y?r?y(a):y:{})||{}),s=r.round,i=r.bgColor,n=r.completedBgColor,l=r.style,o=t.getRowid(e);let v=(0,_utils.getStringValue)(_xeUtils.default.get(e,q));var u=M?Math.min(100,Math.max(0,_xeUtils.default.toNumber(_xeUtils.default.get(e,P)))):0,c=(0,_util.getTaskType)(_xeUtils.default.get(e,A)),d=!(!(0,_utils.hasEnableConf)(m,f)||!(0,_util.hasMilestoneTask)(c)),p=!(!(0,_utils.hasEnableConf)(b,T)||!(0,_util.hasSubviewTask)(c));if(!p){p={},u={width:`${u||0}%`};d||(i&&(p["--vxe-ui-gantt-view-task-bar-background-color"]=i),n&&(u["--vxe-ui-gantt-view-task-bar-completed-background-color"]=n)),r.top&&(p.top=r.top),l&&_xeUtils.default.assign(p,l);let t=Object.assign({},a);D&&(v=(0,_utils.getStringValue)(D({row:e,title:v,scaleType:E}))),w.push((0,_vue.h)("div",{key:o,rowid:o,class:["vxe-gantt-view--chart-subview-row","is--"+c,{"is--progress":M,"is--critical":H&&k&&L.has(o),"is--round":s,"is--move":S,"row--pending":!!g&&!!_[o]}]},[(0,_vue.h)("div",{rowid:o,class:[x?"vxe-gantt-view--chart-subview-custom-bar":"vxe-gantt-view--chart-subview-bar","is--"+c],style:p,onClick(e){e.stopPropagation(),W.handleTaskBarClickEvent(e,t)},onDblclick(e){e.stopPropagation(),W.handleTaskBarDblclickEvent(e,t)},onMousedown(e){e.stopPropagation(),W.handleTaskBarModnEvent&&W.handleTaskBarModnEvent(e,t)}},[x?(0,_vue.h)("div",Object.assign({key:"cbc",class:"vxe-gantt-view--chart-subview-custom-bar-content-wrapper"},h),W.callSlot(x,t)):(0,_vue.h)("div",Object.assign({class:"vxe-gantt-view--chart-subview-bar-content-wrapper"},h),[M?(0,_vue.h)("div",{class:"vxe-gantt-view--chart-progress",style:u}):renderEmptyElement(W),B?(0,_vue.h)("div",{class:"vxe-gantt-view--chart-content"},v):renderEmptyElement(W)])])]))}},{children:c}),F.push((0,_vue.h)("div",{key:"vcsc",class:"vxe-gantt-view--chart-subview-wrapper is--inline"},w))}else x?F.push((0,_vue.h)("div",Object.assign({key:"cbc",class:"vxe-gantt-view--chart-custom-bar-content-wrapper"},h),W.callSlot(x,C))):u?({icon:w,iconStatus:s,iconStyle:i}=f,l={$gantt:W,row:e},F.push((0,_vue.h)("div",Object.assign({key:"vcm",class:"vxe-gantt-view--chart-milestone-wrapper"},h),[(0,_vue.h)("div",{class:["vxe-gantt-view--chart-milestone-icon",s?"theme--"+(_xeUtils.default.isFunction(s)?s(l):s):""],style:i?Object.assign({},_xeUtils.default.isFunction(i)?i(l):i):void 0},[(0,_vue.h)("i",{class:(w?_xeUtils.default.isFunction(w)?w(l):w:"")||getIcon().GANTT_VIEW_TASK_MILESTONE})]),B?(0,_vue.h)("div",{class:"vxe-gantt-view--chart-milestone-content"},R):renderEmptyElement(W)]))):F.push((0,_vue.h)("div",Object.assign({key:"vbc",class:"vxe-gantt-view--chart-bar-content-wrapper"},h),[M?(0,_vue.h)("div",{class:"vxe-gantt-view--chart-progress",style:o}):renderEmptyElement(W),B?(0,_vue.h)("div",{class:"vxe-gantt-view--chart-content"},R):renderEmptyElement(W)]))}return(0,_vue.h)("div",{key:a,rowid:a,class:["vxe-gantt-view--chart-row","is--"+v,{"is--progress":M,"is--critical":H&&k&&L.has(a),"row--pending":!!g&&!!_[a],"is--round":r,"is--move":S}],style:{height:K+"px"},onDragstart(e){Q.dragBarRow&&e.preventDefault()},onContextmenu(e){W.handleTaskBarContextmenuEvent(e,I)}},[(0,_vue.h)("div",{class:[x?"vxe-gantt-view--chart-custom-bar":"vxe-gantt-view--chart-bar","is--"+v,{"is--active":G===a,"active--link":p&&(a===""+p.from||a===""+p.to)}],style:h,rowid:a,onClick(e){W.handleTaskBarClickEvent(e,C)},onDblclick(e){W.handleTaskBarDblclickEvent(e,C)},onMousedown(e){W.handleTaskBarModnEvent&&W.handleTaskBarModnEvent(e,C)}},F)])},b=(o,e)=>{let v=o.props.treeConfig,u=o.reactData.treeExpandedFlag,{fullAllDataRowIdData:c,treeExpandedMaps:d}=o.internalData;var t=o.getComputeMaps().computeTreeOpts,t=t.value;let p=t.transform,w=t.children||t.childrenField,h=_.scrollYLoad,g=[];return e.forEach((e,t)=>{var a=o.getRowid(e),r=c[a]||{};let s=t,i=-1,n=(r&&(s=r.index,i=r._index),!1),l=[];v&&(l=e[w],n=!!u&&l&&0<l.length&&!!d[a]),g.push(m(o,e,a,s,t,i,l,n)),v&&n&&!h&&!p&&g.push(...b(o,l))}),g};return(0,_vue.onMounted)(()=>{var e=u.elemStore,t="main-chart-";e[t+"now-line"]=x,e[t+"task-wrapper"]=w,e[t+"before-wrapper"]=h,e[t+"after-wrapper"]=g}),(0,_vue.onUnmounted)(()=>{var e=u.elemStore,t="main-chart-";e[t+"now-line"]=null,e[t+"task-wrapper"]=null,e[t+"before-wrapper"]=null,e[t+"after-wrapper"]=null}),()=>{var e=u.xeTable,t=v.slots,a=J.dragLinkFromStore,r=_.tableData,s=c.value,i=te.value,n=d.value,{isCurrent:l,isHover:o}=s,i=i.linkCreatable,t=t.taskNowLine||t["task-now-line"];return(0,_vue.h)("div",{ref:p,class:["vxe-gantt-view--chart-wrapper",{"is--cl-drag":a.rowid}]},[0<n?(0,_vue.h)("div",{ref:x,class:"vxe-gantt-view--chart-now-line",style:{left:n+"px"}},t?t({}):[]):renderEmptyElement(W),W.renderGanttTaskChartBefores?(0,_vue.h)("div",{ref:h,class:["vxe-gantt-view--chart-before-wrapper",{"link--current":l,"link--hover":o}]},e&&(0,_utils.isEnableConf)(s)?W.renderGanttTaskChartBefores():[]):renderEmptyElement(W),(0,_vue.h)("div",{ref:w,class:["vxe-gantt-view--chart-task-wrapper",{"link--current":l,"link--create":i}]},e?b(e,r):[]),W.renderGanttTaskChartAfters?(0,_vue.h)("div",{ref:g,class:"vxe-gantt-view--chart-after-wrapper"},e&&(0,_utils.isEnableConf)(s)?W.renderGanttTaskChartAfters():[]):renderEmptyElement(W)])}}});