@visactor/vtable-gantt 1.11.2-alpha.1 → 1.11.2-alpha.2

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/cjs/index.d.ts CHANGED
@@ -5,5 +5,5 @@ import { Gantt } from './Gantt';
5
5
  import * as tools from './tools';
6
6
  import * as VRender from './vrender';
7
7
  import * as VTable from './vtable';
8
- export declare const version = "1.11.2-alpha.1";
8
+ export declare const version = "1.11.2-alpha.2";
9
9
  export { TYPES, GanttConstructorOptions, Gantt, ColumnsDefine, ColumnDefine, LinkColumnDefine, ChartColumnDefine, ImageColumnDefine, SparklineColumnDefine, ProgressbarColumnDefine, TextColumnDefine, GroupColumnDefine, TextAlignType, TextBaselineType, tools, VRender, VTable };
package/cjs/index.js CHANGED
@@ -52,5 +52,5 @@ exports.VRender = VRender;
52
52
 
53
53
  const VTable = __importStar(require("./vtable"));
54
54
 
55
- exports.VTable = VTable, exports.version = "1.11.2-alpha.1";
55
+ exports.VTable = VTable, exports.version = "1.11.2-alpha.2";
56
56
  //# sourceMappingURL=index.js.map
package/cjs/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,kDAAoC;AAuBlC,sBAAK;AATP,mCAAgC;AAW9B,sFAXO,aAAK,OAWP;AAVP,+CAAiC;AAsB/B,sBAAK;AArBP,mDAAqC;AAsBnC,0BAAO;AArBT,iDAAmC;AAsBjC,wBAAM;AArBK,QAAA,OAAO,GAAG,gBAAgB,CAAC","file":"index.js","sourcesContent":["import type { GanttConstructorOptions } from './ts-types';\nimport * as TYPES from './ts-types';\nimport type {\n ColumnDefine,\n ColumnsDefine,\n LinkColumnDefine,\n ChartColumnDefine,\n ImageColumnDefine,\n SparklineColumnDefine,\n ProgressbarColumnDefine,\n TextColumnDefine,\n GroupColumnDefine,\n TextAlignType,\n TextBaselineType\n} from '@visactor/vtable';\nimport { Gantt } from './Gantt';\nimport * as tools from './tools';\nimport * as VRender from './vrender';\nimport * as VTable from './vtable';\nexport const version = \"1.11.2-alpha.1\";\n/**\n * @namespace VTable\n */\nexport {\n TYPES,\n GanttConstructorOptions,\n Gantt,\n ColumnsDefine,\n ColumnDefine,\n LinkColumnDefine,\n ChartColumnDefine,\n ImageColumnDefine,\n SparklineColumnDefine,\n ProgressbarColumnDefine,\n TextColumnDefine,\n GroupColumnDefine,\n TextAlignType,\n TextBaselineType,\n tools,\n VRender,\n VTable\n};\n"]}
1
+ {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,kDAAoC;AAuBlC,sBAAK;AATP,mCAAgC;AAW9B,sFAXO,aAAK,OAWP;AAVP,+CAAiC;AAsB/B,sBAAK;AArBP,mDAAqC;AAsBnC,0BAAO;AArBT,iDAAmC;AAsBjC,wBAAM;AArBK,QAAA,OAAO,GAAG,gBAAgB,CAAC","file":"index.js","sourcesContent":["import type { GanttConstructorOptions } from './ts-types';\nimport * as TYPES from './ts-types';\nimport type {\n ColumnDefine,\n ColumnsDefine,\n LinkColumnDefine,\n ChartColumnDefine,\n ImageColumnDefine,\n SparklineColumnDefine,\n ProgressbarColumnDefine,\n TextColumnDefine,\n GroupColumnDefine,\n TextAlignType,\n TextBaselineType\n} from '@visactor/vtable';\nimport { Gantt } from './Gantt';\nimport * as tools from './tools';\nimport * as VRender from './vrender';\nimport * as VTable from './vtable';\nexport const version = \"1.11.2-alpha.2\";\n/**\n * @namespace VTable\n */\nexport {\n TYPES,\n GanttConstructorOptions,\n Gantt,\n ColumnsDefine,\n ColumnDefine,\n LinkColumnDefine,\n ChartColumnDefine,\n ImageColumnDefine,\n SparklineColumnDefine,\n ProgressbarColumnDefine,\n TextColumnDefine,\n GroupColumnDefine,\n TextAlignType,\n TextBaselineType,\n tools,\n VRender,\n VTable\n};\n"]}
@@ -32,8 +32,9 @@ class FrameBorder {
32
32
  }
33
33
  }
34
34
  resize() {
35
+ var _a;
35
36
  const {cornerRadius: cornerRadius, borderColor: borderColor, borderLineWidth: borderLineWidth, borderLineDash: borderLineDash} = this._scene._gantt.parsedOptions.outerFrameStyle;
36
- this.border.setAttributes({
37
+ null === (_a = this.border) || void 0 === _a || _a.setAttributes({
37
38
  width: this._scene.tableGroup.attribute.width + borderLineWidth + (this._scene._gantt.taskListTableInstance ? this._scene._gantt.parsedOptions.verticalSplitLine.lineWidth : 0),
38
39
  height: this._scene._gantt.drawHeight + borderLineWidth
39
40
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/scenegraph/frame-border.ts"],"names":[],"mappings":"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","file":"frame-border.js","sourcesContent":["import { createRect } from '@visactor/vtable/es/vrender';\nimport type { IRect, IGroupGraphicAttribute, IRectGraphicAttribute } from '@visactor/vtable/es/vrender';\n\nimport type { Scenegraph } from './scenegraph';\n\nexport class FrameBorder {\n _scene: Scenegraph;\n border: IRect;\n constructor(scene: Scenegraph) {\n this._scene = scene;\n this.createFrameBorder();\n }\n createFrameBorder() {\n const justForXYPosition = false;\n const group = this._scene.tableGroup;\n const frameStyle = this._scene._gantt.parsedOptions.outerFrameStyle;\n // const strokeArray = [true, true, true, false];\n if (!frameStyle) {\n return;\n }\n const { cornerRadius, borderColor, borderLineWidth, borderLineDash } = frameStyle;\n\n // const hasShadow = false;\n const groupAttributes: IGroupGraphicAttribute = {};\n const rectAttributes: IRectGraphicAttribute = {\n pickable: false\n };\n\n // 处理边框\n if (borderLineWidth) {\n rectAttributes.stroke = true;\n rectAttributes.fill = false;\n rectAttributes.stroke = borderColor; // getStroke(borderColor, strokeArray);\n rectAttributes.lineWidth = borderLineWidth as number;\n borderLineDash && (rectAttributes.lineDash = borderLineDash as number[]);\n rectAttributes.lineCap = 'butt';\n }\n\n if (cornerRadius) {\n if (this._scene._gantt.taskListTableInstance) {\n rectAttributes.cornerRadius = [\n 0,\n this._scene._gantt.parsedOptions.outerFrameStyle.cornerRadius ?? 0,\n this._scene._gantt.parsedOptions.outerFrameStyle.cornerRadius ?? 0,\n 0\n ];\n groupAttributes.cornerRadius = [\n 0,\n this._scene._gantt.parsedOptions.outerFrameStyle.cornerRadius ?? 0,\n this._scene._gantt.parsedOptions.outerFrameStyle.cornerRadius ?? 0,\n 0\n ];\n } else {\n rectAttributes.cornerRadius = this._scene._gantt.parsedOptions.outerFrameStyle.cornerRadius ?? 0;\n groupAttributes.cornerRadius = this._scene._gantt.parsedOptions.outerFrameStyle.cornerRadius ?? 0;\n }\n }\n\n group.setAttributes(groupAttributes);\n\n if (justForXYPosition) {\n return;\n }\n\n if (rectAttributes.stroke) {\n rectAttributes.x = this._scene._gantt.taskListTableInstance ? -borderLineWidth / 2 : borderLineWidth / 2; //为了可以绘制完整矩形 且左侧的边框不出现在group中\n rectAttributes.y = borderLineWidth / 2;\n rectAttributes.pickable = false;\n\n rectAttributes.width =\n group.attribute.width +\n borderLineWidth +\n (this._scene._gantt.taskListTableInstance ? this._scene._gantt.parsedOptions.verticalSplitLine.lineWidth : 0);\n rectAttributes.height = group.attribute.height + borderLineWidth / 2 + borderLineWidth / 2;\n const borderRect = createRect(rectAttributes);\n borderRect.name = 'border-rect';\n group.parent.insertAfter(borderRect, group);\n (group as any).border = borderRect;\n this.border = borderRect;\n }\n }\n resize() {\n const { cornerRadius, borderColor, borderLineWidth, borderLineDash } =\n this._scene._gantt.parsedOptions.outerFrameStyle;\n this.border.setAttributes({\n // x: -borderLineWidth / 2,\n // y: borderLineWidth / 2,\n width:\n this._scene.tableGroup.attribute.width +\n borderLineWidth +\n (this._scene._gantt.taskListTableInstance ? this._scene._gantt.parsedOptions.verticalSplitLine.lineWidth : 0),\n // this._scene.tableGroup.attribute.width +\n // this.border.attribute.lineWidth +\n // this._scene._gantt.parsedOptions.verticalSplitLine.lineWidth,\n height: this._scene._gantt.drawHeight + borderLineWidth\n // height: this._scene.tableGroup.attribute.height + this.border.attribute.lineWidth\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/scenegraph/frame-border.ts"],"names":[],"mappings":"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","file":"frame-border.js","sourcesContent":["import { createRect } from '@visactor/vtable/es/vrender';\nimport type { IRect, IGroupGraphicAttribute, IRectGraphicAttribute } from '@visactor/vtable/es/vrender';\n\nimport type { Scenegraph } from './scenegraph';\n\nexport class FrameBorder {\n _scene: Scenegraph;\n border: IRect;\n constructor(scene: Scenegraph) {\n this._scene = scene;\n this.createFrameBorder();\n }\n createFrameBorder() {\n const justForXYPosition = false;\n const group = this._scene.tableGroup;\n const frameStyle = this._scene._gantt.parsedOptions.outerFrameStyle;\n // const strokeArray = [true, true, true, false];\n if (!frameStyle) {\n return;\n }\n const { cornerRadius, borderColor, borderLineWidth, borderLineDash } = frameStyle;\n\n // const hasShadow = false;\n const groupAttributes: IGroupGraphicAttribute = {};\n const rectAttributes: IRectGraphicAttribute = {\n pickable: false\n };\n\n // 处理边框\n if (borderLineWidth) {\n rectAttributes.stroke = true;\n rectAttributes.fill = false;\n rectAttributes.stroke = borderColor; // getStroke(borderColor, strokeArray);\n rectAttributes.lineWidth = borderLineWidth as number;\n borderLineDash && (rectAttributes.lineDash = borderLineDash as number[]);\n rectAttributes.lineCap = 'butt';\n }\n\n if (cornerRadius) {\n if (this._scene._gantt.taskListTableInstance) {\n rectAttributes.cornerRadius = [\n 0,\n this._scene._gantt.parsedOptions.outerFrameStyle.cornerRadius ?? 0,\n this._scene._gantt.parsedOptions.outerFrameStyle.cornerRadius ?? 0,\n 0\n ];\n groupAttributes.cornerRadius = [\n 0,\n this._scene._gantt.parsedOptions.outerFrameStyle.cornerRadius ?? 0,\n this._scene._gantt.parsedOptions.outerFrameStyle.cornerRadius ?? 0,\n 0\n ];\n } else {\n rectAttributes.cornerRadius = this._scene._gantt.parsedOptions.outerFrameStyle.cornerRadius ?? 0;\n groupAttributes.cornerRadius = this._scene._gantt.parsedOptions.outerFrameStyle.cornerRadius ?? 0;\n }\n }\n\n group.setAttributes(groupAttributes);\n\n if (justForXYPosition) {\n return;\n }\n\n if (rectAttributes.stroke) {\n rectAttributes.x = this._scene._gantt.taskListTableInstance ? -borderLineWidth / 2 : borderLineWidth / 2; //为了可以绘制完整矩形 且左侧的边框不出现在group中\n rectAttributes.y = borderLineWidth / 2;\n rectAttributes.pickable = false;\n\n rectAttributes.width =\n group.attribute.width +\n borderLineWidth +\n (this._scene._gantt.taskListTableInstance ? this._scene._gantt.parsedOptions.verticalSplitLine.lineWidth : 0);\n rectAttributes.height = group.attribute.height + borderLineWidth / 2 + borderLineWidth / 2;\n const borderRect = createRect(rectAttributes);\n borderRect.name = 'border-rect';\n group.parent.insertAfter(borderRect, group);\n (group as any).border = borderRect;\n this.border = borderRect;\n }\n }\n resize() {\n const { cornerRadius, borderColor, borderLineWidth, borderLineDash } =\n this._scene._gantt.parsedOptions.outerFrameStyle;\n this.border?.setAttributes({\n // x: -borderLineWidth / 2,\n // y: borderLineWidth / 2,\n width:\n this._scene.tableGroup.attribute.width +\n borderLineWidth +\n (this._scene._gantt.taskListTableInstance ? this._scene._gantt.parsedOptions.verticalSplitLine.lineWidth : 0),\n // this._scene.tableGroup.attribute.width +\n // this.border.attribute.lineWidth +\n // this._scene._gantt.parsedOptions.verticalSplitLine.lineWidth,\n height: this._scene._gantt.drawHeight + borderLineWidth\n // height: this._scene.tableGroup.attribute.height + this.border.attribute.lineWidth\n });\n }\n}\n"]}
@@ -82,7 +82,7 @@ class Scenegraph {
82
82
  y: this._gantt.tableY,
83
83
  width: this._gantt.tableNoFrameWidth,
84
84
  height: this.tableGroupHeight
85
- }), this.grid.resize(), this.taskBar.resize(), this.frameBorder.resize();
85
+ }), this.grid.resize(), this.taskBar.resize(), this.markLine.refresh(), this.frameBorder.resize();
86
86
  }
87
87
  renderSceneGraph() {
88
88
  this.stage.render();
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/scenegraph/scenegraph.ts"],"names":[],"mappings":";;;;;;AACA,yDAAqF;AACrF,iCAA8B;AAE9B,gCAA6B;AAC7B,6CAAkD;AAClD,4CAAwD;AACxD,uDAAmD;AACnD,yCAAqC;AACrC,2CAAuC;AACvC,iDAA6C;AAC7C,kDAAkD;AAClD,wDAA4C;AAC5C,iEAA4D;AAC5D,uDAAmD;AACnD,uDAAkD;AAClD,mBAAS,CAAC,IAAI,CAAC,iBAAmB,CAAC,CAAC;AACpC,MAAa,UAAU;IAkBrB,YAAY,KAAY;QACtB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,iBAAiB,CAAC;QAC/C,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,kBAAkB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC7E,IAAI,KAAK,CAAC;QACV,IAAI,MAAM,CAAC;QACX,IAAI,SAAG,CAAC,IAAI,KAAK,MAAM,EAAE;SAIxB;aAAM;YACL,iBAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC1B,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;YAC3B,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;SAC9B;QACD,IAAI,CAAC,KAAK,GAAG,IAAA,qBAAW,EAAC;YACvB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,KAAK;YACL,MAAM;YACN,kBAAkB,EAAE,KAAK;YACzB,UAAU,EAAE,KAAK,CAAC,aAAa,CAAC,uBAAuB;YAEvD,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,KAAK;YACjB,OAAO,EAAE;gBACP,OAAO,EAAE,QAAQ;aAClB;YACD,UAAU,EAAE,CAAC,eAAe,CAAC;SAI9B,CAAC,CAAC;QACF,IAAI,CAAC,KAAa,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;QACvC,IAAI,CAAC,KAAa,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;QACxC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC;YAC/B,KAAK,EAAE;gBACL,aAAa,EAAE,CAAC;gBAChB,kBAAkB,EAAE,CAAC;gBACrB,QAAQ,EAAE,OAAO;aAClB;YACD,IAAI,EAAE;gBACJ,SAAS,EAAE,IAAI;aAChB;SACF,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,cAAc;QACZ,MAAM,KAAK,GAAG,IAAI,CAAC;QAEnB,KAAK,CAAC,UAAU,GAAG,IAAI,eAAK,CAAC;YAC3B,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM;YACtB,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM;YACtB,KAAK,EAAE,IAAI,CAAC,eAAe;YAC3B,MAAM,EAAE,IAAI,CAAC,gBAAgB;YAC7B,IAAI,EAAE,IAAI;YACV,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAC;QACH,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC/C,KAAK,CAAC,UAAU,CAAC,IAAI,GAAG,OAAO,CAAC;QAEhC,KAAK,CAAC,cAAc,GAAG,IAAI,gCAAc,CAAC,KAAK,CAAC,CAAC;QAGjD,KAAK,CAAC,IAAI,GAAG,IAAI,WAAI,CAAC,KAAK,CAAC,CAAC;QAE7B,KAAK,CAAC,cAAc,GAAG,IAAI,gCAAc,CAAC,KAAK,CAAC,CAAC;QAEjD,KAAK,CAAC,OAAO,GAAG,IAAI,kBAAO,CAAC,KAAK,CAAC,CAAC;QAGnC,KAAK,CAAC,QAAQ,GAAG,IAAI,oBAAQ,CAAC,KAAK,CAAC,CAAC;QAGrC,KAAK,CAAC,WAAW,GAAG,IAAI,0BAAW,CAAC,KAAK,CAAC,CAAC;QAG3C,KAAK,CAAC,kBAAkB,GAAG,IAAI,+BAAkB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAChE,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QACvE,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAGvE,KAAK,CAAC,aAAa,GAAG,IAAI,+BAAa,CAAC,KAAK,CAAC,CAAC;IACjD,CAAC;IAED,qBAAqB;QACnB,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,CAAC;QAC1C,IAAA,8BAAqB,EAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAClD,CAAC;IAED,UAAU;QACR,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACzF,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC9D,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QACpB,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;QAC1B,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,CAAC;QAC1C,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED,eAAe;QAGb,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QAIvB,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IACD,sBAAsB;QACpB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACzF,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAE9D,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QACpB,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACvB,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;QAC1B,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,CAAC;QAC1C,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED,eAAe;QACb,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACzF,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;YAC5B,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;YACrB,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;YACrB,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,iBAAiB;YACpC,MAAM,EAAE,IAAI,CAAC,gBAAgB;SACvB,CAAC,CAAC;QACV,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACnB,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACtB,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;IAQD,gBAAgB;QACd,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;IACtB,CAAC;IAMD,eAAe;QACb,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;IAC/B,CAAC;IACD,IAAI,KAAK;;QACP,OAAO,MAAA,MAAA,IAAI,CAAC,UAAU,CAAC,SAAS,0CAAE,KAAK,mCAAI,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,MAAM;;QACR,OAAO,MAAA,MAAA,IAAI,CAAC,UAAU,CAAC,SAAS,0CAAE,MAAM,mCAAI,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,CAAC;;QACH,OAAO,MAAA,MAAA,IAAI,CAAC,UAAU,CAAC,SAAS,0CAAE,CAAC,mCAAI,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,CAAC;;QACH,OAAO,MAAA,MAAA,IAAI,CAAC,UAAU,CAAC,SAAS,0CAAE,CAAC,mCAAI,CAAC,CAAC;IAC3C,CAAC;IAOD,IAAI,CAAC,CAAS,EAAE,KAAK,GAAG,KAAK;QAC3B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACtB,IAAI,CAAC,eAAe,EAAE,CAAC;IAEzB,CAAC;IAOD,IAAI,CAAC,CAAS,EAAE,KAAK,GAAG,KAAK;QAE3B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED,aAAa,CAAC,UAAkB;QAI9B,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACrC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QACpB,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC;IACjC,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,eAAe,EAAE,CAAC;QAEvB,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,CAAC;QAC1C,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IACD,OAAO;QACL,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IACvB,CAAC;IACD,iBAAiB,CAAC,CAAS;QACzB,MAAM,SAAS,GAAG,IAAA,8BAAe,EAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACpD,CAAC;IAED,sBAAsB,CAAC,CAAS,EAAE,CAAS,EAAE,SAAiB,EAAE,MAAW;QACzE,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;YAC5B,IAAI,CAAC,kBAAkB,GAAG,IAAI,yCAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;SAC1E;QACD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QAClH,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED,sBAAsB;QACpB,IAAI,IAAI,CAAC,kBAAkB,EAAE;YAC3B,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;YAC/B,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB;IACH,CAAC;CACF;AA9PD,gCA8PC","file":"scenegraph.js","sourcesContent":["import type { Stage } from '@visactor/vtable/es/vrender';\nimport { container, Group, vglobal, createStage } from '@visactor/vtable/es/vrender';\nimport { Grid } from './grid';\nimport type { Gantt } from '../Gantt';\nimport { Env } from '../env';\nimport { ScrollBarComponent } from './scroll-bar';\nimport { bindScrollBarListener } from '../event/scroll';\nimport { TimelineHeader } from './timeline-header';\nimport { TaskBar } from './task-bar';\nimport { MarkLine } from './mark-line';\nimport { FrameBorder } from './frame-border';\nimport { getTaskIndexByY } from '../gantt-helper';\nimport graphicContribution from './graphic';\nimport { TaskCreationButton } from './task-creation-button';\nimport { DependencyLink } from './dependency-link';\nimport { DragOrderLine } from './drag-order-line';\ncontainer.load(graphicContribution);\nexport class Scenegraph {\n dateStepWidth: number;\n rowHeight: number;\n _scales: {}[];\n timelineHeader: TimelineHeader;\n grid: Grid;\n dependencyLink: DependencyLink;\n taskBar: TaskBar;\n _gantt: Gantt;\n tableGroup: Group;\n scrollbarComponent: ScrollBarComponent;\n markLine: MarkLine;\n dragOrderLine: DragOrderLine;\n frameBorder: FrameBorder;\n taskCreationButton: TaskCreationButton;\n stage: Stage;\n tableGroupWidth: number;\n tableGroupHeight: number;\n constructor(gantt: Gantt) {\n this._gantt = gantt;\n this.tableGroupWidth = gantt.tableNoFrameWidth;\n this.tableGroupHeight = Math.min(gantt.tableNoFrameHeight, gantt.drawHeight);\n let width;\n let height;\n if (Env.mode === 'node') {\n // vglobal.setEnv('node', gantt.options.modeParams);\n // width = table.canvasWidth;\n // height = table.canvasHeight;\n } else {\n vglobal.setEnv('browser');\n width = gantt.canvas.width;\n height = gantt.canvas.height;\n }\n this.stage = createStage({\n canvas: gantt.canvas,\n width,\n height,\n disableDirtyBounds: false,\n background: gantt.parsedOptions.underlayBackgroundColor,\n // dpr: gantt.internalProps.pixelRatio,\n enableLayout: true,\n autoRender: false,\n context: {\n appName: 'vtable'\n },\n pluginList: ['poptipForText']\n // afterRender: () => {\n // this._gantt.fireListeners('after_render', null);\n // }\n });\n (this.stage as any).gantt = this._gantt;\n (this.stage as any).table = this._gantt; // 为了使用bindDebugTool\n this.stage.defaultLayer.setTheme({\n group: {\n boundsPadding: 0,\n strokeBoundsBuffer: 0,\n lineJoin: 'round'\n },\n text: {\n ignoreBuf: true\n }\n });\n this.initSceneGraph();\n }\n\n initSceneGraph() {\n const scene = this;\n\n scene.tableGroup = new Group({\n x: scene._gantt.tableX,\n y: scene._gantt.tableY,\n width: this.tableGroupWidth,\n height: this.tableGroupHeight,\n clip: true,\n pickable: false\n });\n scene.stage.defaultLayer.add(scene.tableGroup);\n scene.tableGroup.name = 'table';\n // 初始化顶部时间线表头部分\n scene.timelineHeader = new TimelineHeader(scene);\n\n // 初始化网格线组件\n scene.grid = new Grid(scene);\n // 初始化任务条线组件\n scene.dependencyLink = new DependencyLink(scene);\n // 初始化任务条线组件\n scene.taskBar = new TaskBar(scene);\n\n // 初始化标记线组件\n scene.markLine = new MarkLine(scene);\n\n // 初始化边框\n scene.frameBorder = new FrameBorder(scene);\n\n // 初始化滚动条组件\n scene.scrollbarComponent = new ScrollBarComponent(scene._gantt);\n scene.stage.defaultLayer.addChild(scene.scrollbarComponent.hScrollBar);\n scene.stage.defaultLayer.addChild(scene.scrollbarComponent.vScrollBar);\n\n //初始化换位交互标记线\n scene.dragOrderLine = new DragOrderLine(scene);\n }\n\n afterCreateSceneGraph() {\n this.scrollbarComponent.updateScrollBar();\n bindScrollBarListener(this._gantt.eventManager);\n }\n\n refreshAll() {\n this.tableGroupHeight = Math.min(this._gantt.tableNoFrameHeight, this._gantt.drawHeight);\n this.tableGroup.setAttribute('height', this.tableGroupHeight);\n this.timelineHeader.refresh();\n this.grid.refresh();\n this.taskBar.refresh();\n this.markLine.refresh();\n this.frameBorder.resize();\n this.scrollbarComponent.updateScrollBar();\n this.updateNextFrame();\n }\n\n refreshTaskBars() {\n // this.timelineHeader.refresh();\n // this.grid.refresh();\n this.dependencyLink.refresh();\n this.taskBar.refresh();\n // this.markLine.refresh();\n // this.frameBorder.refresh();\n // this.scrollbarComponent.refresh();\n this.updateNextFrame();\n }\n refreshTaskBarsAndGrid() {\n this.tableGroupHeight = Math.min(this._gantt.tableNoFrameHeight, this._gantt.drawHeight);\n this.tableGroup.setAttribute('height', this.tableGroupHeight);\n // this.timelineHeader.refresh();\n this.grid.refresh();\n this.taskBar.refresh();\n this.dependencyLink.refresh();\n this.markLine.refresh();\n this.frameBorder.resize();\n this.scrollbarComponent.updateScrollBar();\n this.updateNextFrame();\n }\n\n updateTableSize() {\n this.tableGroupHeight = Math.min(this._gantt.tableNoFrameHeight, this._gantt.drawHeight);\n this.tableGroup.setAttributes({\n x: this._gantt.tableX,\n y: this._gantt.tableY,\n width: this._gantt.tableNoFrameWidth,\n height: this.tableGroupHeight\n } as any);\n this.grid.resize();\n this.taskBar.resize();\n this.frameBorder.resize();\n }\n\n /**\n * @description: 绘制场景树\n * @param {any} element\n * @param {CellRange} visibleCoord\n * @return {*}\n */\n renderSceneGraph() {\n this.stage.render();\n }\n\n /**\n * @description: 触发下一帧渲染\n * @return {*}\n */\n updateNextFrame() {\n this.stage.renderNextFrame();\n }\n get width(): number {\n return this.tableGroup.attribute?.width ?? 0;\n }\n\n get height(): number {\n return this.tableGroup.attribute?.height ?? 0;\n }\n\n get x(): number {\n return this.tableGroup.attribute?.x ?? 0;\n }\n\n get y(): number {\n return this.tableGroup.attribute?.y ?? 0;\n }\n\n /**\n * @description: 设置表格的x位置,滚动中使用\n * @param {number} x\n * @return {*}\n */\n setX(x: number, isEnd = false) {\n this.timelineHeader.setX(x);\n this.grid.setX(x);\n this.taskBar.setX(x);\n this.dependencyLink.setX(x);\n this.markLine.setX(x);\n this.updateNextFrame();\n // this._gantt.scenegraph.proxy.setX(-x, isEnd);\n }\n\n /**\n * @description: 更新表格的y位置,滚动中使用\n * @param {number} y\n * @return {*}\n */\n setY(y: number, isEnd = false) {\n // this._gantt.scenegraph.proxy.setY(-y, isEnd);\n this.grid.setY(y);\n this.taskBar.setY(y);\n this.dependencyLink.setY(y);\n this.updateNextFrame();\n }\n\n setPixelRatio(pixelRatio: number) {\n // this.stage.setDpr(pixelRatio);\n // 这里因为本时刻部分节点有更新bounds标记,直接render回导致开启DirtyBounds,无法完整重绘画布;\n // 所以这里先关闭DirtyBounds,等待下一帧再开启\n this.stage.disableDirtyBounds();\n this.stage.window.setDpr(pixelRatio);\n this.stage.render();\n this.stage.enableDirtyBounds();\n }\n\n resize() {\n this.updateTableSize();\n // this.updateBorderSizeAndPosition();\n this.scrollbarComponent.updateScrollBar();\n this.updateNextFrame();\n }\n release() {\n this.stage.release();\n }\n getTaskBarNodeByY(y: number) {\n const taskIndex = getTaskIndexByY(y, this._gantt);\n }\n\n showTaskCreationButton(x: number, y: number, taskIndex: number, record: any) {\n if (!this.taskCreationButton) {\n this.taskCreationButton = new TaskCreationButton(this._gantt.scenegraph);\n }\n this.taskCreationButton.show(x, y, this._gantt.parsedOptions.colWidthPerDay, this._gantt.parsedOptions.rowHeight);\n this.updateNextFrame();\n }\n\n hideTaskCreationButton() {\n if (this.taskCreationButton) {\n this.taskCreationButton.hide();\n this.updateNextFrame();\n }\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/scenegraph/scenegraph.ts"],"names":[],"mappings":"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","file":"scenegraph.js","sourcesContent":["import type { Stage } from '@visactor/vtable/es/vrender';\nimport { container, Group, vglobal, createStage } from '@visactor/vtable/es/vrender';\nimport { Grid } from './grid';\nimport type { Gantt } from '../Gantt';\nimport { Env } from '../env';\nimport { ScrollBarComponent } from './scroll-bar';\nimport { bindScrollBarListener } from '../event/scroll';\nimport { TimelineHeader } from './timeline-header';\nimport { TaskBar } from './task-bar';\nimport { MarkLine } from './mark-line';\nimport { FrameBorder } from './frame-border';\nimport { getTaskIndexByY } from '../gantt-helper';\nimport graphicContribution from './graphic';\nimport { TaskCreationButton } from './task-creation-button';\nimport { DependencyLink } from './dependency-link';\nimport { DragOrderLine } from './drag-order-line';\ncontainer.load(graphicContribution);\nexport class Scenegraph {\n dateStepWidth: number;\n rowHeight: number;\n _scales: {}[];\n timelineHeader: TimelineHeader;\n grid: Grid;\n dependencyLink: DependencyLink;\n taskBar: TaskBar;\n _gantt: Gantt;\n tableGroup: Group;\n scrollbarComponent: ScrollBarComponent;\n markLine: MarkLine;\n dragOrderLine: DragOrderLine;\n frameBorder: FrameBorder;\n taskCreationButton: TaskCreationButton;\n stage: Stage;\n tableGroupWidth: number;\n tableGroupHeight: number;\n constructor(gantt: Gantt) {\n this._gantt = gantt;\n this.tableGroupWidth = gantt.tableNoFrameWidth;\n this.tableGroupHeight = Math.min(gantt.tableNoFrameHeight, gantt.drawHeight);\n let width;\n let height;\n if (Env.mode === 'node') {\n // vglobal.setEnv('node', gantt.options.modeParams);\n // width = table.canvasWidth;\n // height = table.canvasHeight;\n } else {\n vglobal.setEnv('browser');\n width = gantt.canvas.width;\n height = gantt.canvas.height;\n }\n this.stage = createStage({\n canvas: gantt.canvas,\n width,\n height,\n disableDirtyBounds: false,\n background: gantt.parsedOptions.underlayBackgroundColor,\n // dpr: gantt.internalProps.pixelRatio,\n enableLayout: true,\n autoRender: false,\n context: {\n appName: 'vtable'\n },\n pluginList: ['poptipForText']\n // afterRender: () => {\n // this._gantt.fireListeners('after_render', null);\n // }\n });\n (this.stage as any).gantt = this._gantt;\n (this.stage as any).table = this._gantt; // 为了使用bindDebugTool\n this.stage.defaultLayer.setTheme({\n group: {\n boundsPadding: 0,\n strokeBoundsBuffer: 0,\n lineJoin: 'round'\n },\n text: {\n ignoreBuf: true\n }\n });\n this.initSceneGraph();\n }\n\n initSceneGraph() {\n const scene = this;\n\n scene.tableGroup = new Group({\n x: scene._gantt.tableX,\n y: scene._gantt.tableY,\n width: this.tableGroupWidth,\n height: this.tableGroupHeight,\n clip: true,\n pickable: false\n });\n scene.stage.defaultLayer.add(scene.tableGroup);\n scene.tableGroup.name = 'table';\n // 初始化顶部时间线表头部分\n scene.timelineHeader = new TimelineHeader(scene);\n\n // 初始化网格线组件\n scene.grid = new Grid(scene);\n // 初始化任务条线组件\n scene.dependencyLink = new DependencyLink(scene);\n // 初始化任务条线组件\n scene.taskBar = new TaskBar(scene);\n\n // 初始化标记线组件\n scene.markLine = new MarkLine(scene);\n\n // 初始化边框\n scene.frameBorder = new FrameBorder(scene);\n\n // 初始化滚动条组件\n scene.scrollbarComponent = new ScrollBarComponent(scene._gantt);\n scene.stage.defaultLayer.addChild(scene.scrollbarComponent.hScrollBar);\n scene.stage.defaultLayer.addChild(scene.scrollbarComponent.vScrollBar);\n\n //初始化换位交互标记线\n scene.dragOrderLine = new DragOrderLine(scene);\n }\n\n afterCreateSceneGraph() {\n this.scrollbarComponent.updateScrollBar();\n bindScrollBarListener(this._gantt.eventManager);\n }\n\n refreshAll() {\n this.tableGroupHeight = Math.min(this._gantt.tableNoFrameHeight, this._gantt.drawHeight);\n this.tableGroup.setAttribute('height', this.tableGroupHeight);\n this.timelineHeader.refresh();\n this.grid.refresh();\n this.taskBar.refresh();\n this.markLine.refresh();\n this.frameBorder.resize();\n this.scrollbarComponent.updateScrollBar();\n this.updateNextFrame();\n }\n\n refreshTaskBars() {\n // this.timelineHeader.refresh();\n // this.grid.refresh();\n this.dependencyLink.refresh();\n this.taskBar.refresh();\n // this.markLine.refresh();\n // this.frameBorder.refresh();\n // this.scrollbarComponent.refresh();\n this.updateNextFrame();\n }\n refreshTaskBarsAndGrid() {\n this.tableGroupHeight = Math.min(this._gantt.tableNoFrameHeight, this._gantt.drawHeight);\n this.tableGroup.setAttribute('height', this.tableGroupHeight);\n // this.timelineHeader.refresh();\n this.grid.refresh();\n this.taskBar.refresh();\n this.dependencyLink.refresh();\n this.markLine.refresh();\n this.frameBorder.resize();\n this.scrollbarComponent.updateScrollBar();\n this.updateNextFrame();\n }\n\n updateTableSize() {\n this.tableGroupHeight = Math.min(this._gantt.tableNoFrameHeight, this._gantt.drawHeight);\n this.tableGroup.setAttributes({\n x: this._gantt.tableX,\n y: this._gantt.tableY,\n width: this._gantt.tableNoFrameWidth,\n height: this.tableGroupHeight\n } as any);\n this.grid.resize();\n this.taskBar.resize();\n this.markLine.refresh();\n this.frameBorder.resize();\n }\n\n /**\n * @description: 绘制场景树\n * @param {any} element\n * @param {CellRange} visibleCoord\n * @return {*}\n */\n renderSceneGraph() {\n this.stage.render();\n }\n\n /**\n * @description: 触发下一帧渲染\n * @return {*}\n */\n updateNextFrame() {\n this.stage.renderNextFrame();\n }\n get width(): number {\n return this.tableGroup.attribute?.width ?? 0;\n }\n\n get height(): number {\n return this.tableGroup.attribute?.height ?? 0;\n }\n\n get x(): number {\n return this.tableGroup.attribute?.x ?? 0;\n }\n\n get y(): number {\n return this.tableGroup.attribute?.y ?? 0;\n }\n\n /**\n * @description: 设置表格的x位置,滚动中使用\n * @param {number} x\n * @return {*}\n */\n setX(x: number, isEnd = false) {\n this.timelineHeader.setX(x);\n this.grid.setX(x);\n this.taskBar.setX(x);\n this.dependencyLink.setX(x);\n this.markLine.setX(x);\n this.updateNextFrame();\n // this._gantt.scenegraph.proxy.setX(-x, isEnd);\n }\n\n /**\n * @description: 更新表格的y位置,滚动中使用\n * @param {number} y\n * @return {*}\n */\n setY(y: number, isEnd = false) {\n // this._gantt.scenegraph.proxy.setY(-y, isEnd);\n this.grid.setY(y);\n this.taskBar.setY(y);\n this.dependencyLink.setY(y);\n this.updateNextFrame();\n }\n\n setPixelRatio(pixelRatio: number) {\n // this.stage.setDpr(pixelRatio);\n // 这里因为本时刻部分节点有更新bounds标记,直接render回导致开启DirtyBounds,无法完整重绘画布;\n // 所以这里先关闭DirtyBounds,等待下一帧再开启\n this.stage.disableDirtyBounds();\n this.stage.window.setDpr(pixelRatio);\n this.stage.render();\n this.stage.enableDirtyBounds();\n }\n\n resize() {\n this.updateTableSize();\n // this.updateBorderSizeAndPosition();\n this.scrollbarComponent.updateScrollBar();\n this.updateNextFrame();\n }\n release() {\n this.stage.release();\n }\n getTaskBarNodeByY(y: number) {\n const taskIndex = getTaskIndexByY(y, this._gantt);\n }\n\n showTaskCreationButton(x: number, y: number, taskIndex: number, record: any) {\n if (!this.taskCreationButton) {\n this.taskCreationButton = new TaskCreationButton(this._gantt.scenegraph);\n }\n this.taskCreationButton.show(x, y, this._gantt.parsedOptions.colWidthPerDay, this._gantt.parsedOptions.rowHeight);\n this.updateNextFrame();\n }\n\n hideTaskCreationButton() {\n if (this.taskCreationButton) {\n this.taskCreationButton.hide();\n this.updateNextFrame();\n }\n }\n}\n"]}
@@ -28673,7 +28673,7 @@
28673
28673
  }
28674
28674
  resize() {
28675
28675
  const { cornerRadius, borderColor, borderLineWidth, borderLineDash } = this._scene._gantt.parsedOptions.outerFrameStyle;
28676
- this.border.setAttributes({
28676
+ this.border?.setAttributes({
28677
28677
  width: this._scene.tableGroup.attribute.width +
28678
28678
  borderLineWidth +
28679
28679
  (this._scene._gantt.taskListTableInstance ? this._scene._gantt.parsedOptions.verticalSplitLine.lineWidth : 0),
@@ -29585,6 +29585,7 @@
29585
29585
  });
29586
29586
  this.grid.resize();
29587
29587
  this.taskBar.resize();
29588
+ this.markLine.refresh();
29588
29589
  this.frameBorder.resize();
29589
29590
  }
29590
29591
  renderSceneGraph() {
@@ -43012,7 +43013,7 @@
43012
43013
  }
43013
43014
 
43014
43015
  function updateSelectPosition(state, col, row, isShift, isCtrl, isSelectAll) {
43015
- let isSelectMoving = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : !1;
43016
+ let makeSelectCellVisible = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : !0;
43016
43017
  let skipBodyMerge = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : !1;
43017
43018
  let forceSelect = arguments.length > 8 && arguments[8] !== undefined ? arguments[8] : !1;
43018
43019
  var _a, _b;
@@ -43028,7 +43029,7 @@
43028
43029
  disableHeader: disableHeader,
43029
43030
  cellPos: cellPos
43030
43031
  } = state.select;
43031
- if ((disableHeader && table.isHeader(col, row) || "none" === highlightScope) && !1 === forceSelect && (-1 === col || -1 === row || isSelectMoving || table._makeVisibleCell(col, row), col = -1, row = -1), -1 !== col && -1 !== row && !isSelectMoving) if (interactionState === InteractionState.grabing && state.select.ranges.length > 0) {
43032
+ if ((disableHeader && table.isHeader(col, row) || "none" === highlightScope) && !1 === forceSelect && (-1 !== col && -1 !== row && makeSelectCellVisible && table._makeVisibleCell(col, row), col = -1, row = -1), -1 !== col && -1 !== row && makeSelectCellVisible) if (interactionState === InteractionState.grabing && state.select.ranges.length > 0) {
43032
43033
  const currentRange = state.select.ranges[state.select.ranges.length - 1];
43033
43034
  col > currentRange.start.col && col > currentRange.end.col && table._makeVisibleCell(col + 1, row), row > currentRange.start.row && row > currentRange.end.row && table._makeVisibleCell(col, row + 1), col < currentRange.start.col && col < currentRange.end.col && table._makeVisibleCell(col - 1, row), row < currentRange.start.row && row < currentRange.end.row && table._makeVisibleCell(col, row - 1);
43034
43035
  } else table._makeVisibleCell(col, row);
@@ -43760,16 +43761,12 @@
43760
43761
  function initCheckedState(records, state) {
43761
43762
  state.checkedState = [], state.headerCheckedState = {}, state.radioState = {};
43762
43763
  let isNeedInitHeaderCheckedStateFromRecord = !1;
43763
- if (state._checkboxCellTypeFields = [], state._headerCheckFuncs = {}, state.table.internalProps.layoutMap.headerObjects.forEach((hd, index) => {
43764
+ state._checkboxCellTypeFields = [], state._headerCheckFuncs = {}, state.table.internalProps.layoutMap.headerObjects.forEach((hd, index) => {
43764
43765
  if ("checkbox" === hd.headerType) {
43765
43766
  const headerChecked = hd.define.checked;
43766
43767
  null == headerChecked || "function" == typeof headerChecked ? (isNeedInitHeaderCheckedStateFromRecord = !0, "function" == typeof headerChecked && (state._headerCheckFuncs[hd.field] = headerChecked)) : state.headerCheckedState[hd.field] = headerChecked, "checkbox" !== hd.define.cellType || hd.fieldFormat || state._checkboxCellTypeFields.push(hd.field);
43767
43768
  }
43768
- }), 1 === state.table.leftRowSeriesNumberCount) state.headerCheckedState._vtable_rowSeries_number = !1, state._checkboxCellTypeFields.push("_vtable_rowSeries_number"), isNeedInitHeaderCheckedStateFromRecord = !0;else if (state.table.leftRowSeriesNumberCount > 1) {
43769
- for (let i = 0; i < state.table.leftRowSeriesNumberCount; i++) state.headerCheckedState[`_vtable_rowSeries_number_${i}`] = !1, state._checkboxCellTypeFields.push(`_vtable_rowSeries_number_${i}`);
43770
- isNeedInitHeaderCheckedStateFromRecord = !0;
43771
- }
43772
- isNeedInitHeaderCheckedStateFromRecord && records.forEach((record, index) => {
43769
+ }), isNeedInitHeaderCheckedStateFromRecord && records.forEach((record, index) => {
43773
43770
  state._checkboxCellTypeFields.forEach(field => {
43774
43771
  const value = record[field];
43775
43772
  let isChecked;
@@ -43813,28 +43810,14 @@
43813
43810
  }
43814
43811
  }
43815
43812
  function setCellCheckboxState(col, row, checked, table) {
43816
- const cellGroup = table.scenegraph.getCell(col, row),
43817
- checkbox = null == cellGroup ? void 0 : cellGroup.getChildByName("checkbox");
43818
- if (!checkbox) {
43819
- const field = table.getHeaderField(col, row);
43820
- if (table.isHeader(col, row)) {
43821
- table.stateManager.setHeaderCheckedState(field, checked);
43822
- "checkbox" === table.getCellType(col, row) && table.scenegraph.updateCheckboxCellState(col, row, checked);
43823
- } else {
43824
- table.stateManager.setCheckedState(col, row, field, checked);
43825
- if ("checkbox" === table.getCellType(col, row)) {
43826
- const oldHeaderCheckedState = table.stateManager.headerCheckedState[field],
43827
- newHeaderCheckedState = table.stateManager.updateHeaderCheckedState(field, col, row);
43828
- oldHeaderCheckedState !== newHeaderCheckedState && table.scenegraph.updateHeaderCheckboxCellState(col, row, newHeaderCheckedState);
43829
- }
43830
- }
43831
- return;
43832
- }
43813
+ const cellGoup = table.scenegraph.getCell(col, row),
43814
+ chechbox = null == cellGoup ? void 0 : cellGoup.getChildByName("checkbox");
43815
+ if (!chechbox) return;
43833
43816
  const {
43834
43817
  checked: oldChecked,
43835
43818
  indeterminate: indeterminate
43836
- } = checkbox.attribute;
43837
- indeterminate ? (checked || checkbox._handlePointerUp(), checkbox._handlePointerUp()) : oldChecked ? checked || checkbox._handlePointerUp() : checked && checkbox._handlePointerUp();
43819
+ } = chechbox.attribute;
43820
+ indeterminate ? (checked || chechbox._handlePointerUp(), chechbox._handlePointerUp()) : oldChecked ? checked || chechbox._handlePointerUp() : checked && chechbox._handlePointerUp();
43838
43821
  }
43839
43822
  function changeCheckboxOrder(sourceIndex, targetIndex, state) {
43840
43823
  const {
@@ -44160,10 +44143,10 @@
44160
44143
  let isShift = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : !1;
44161
44144
  let isCtrl = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : !1;
44162
44145
  let isSelectAll = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : !1;
44163
- let isSelectMoving = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : !1;
44146
+ let makeSelectCellVisible = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : !0;
44164
44147
  let skipBodyMerge = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : !1;
44165
44148
  let forceSelect = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : !1;
44166
- -1 !== row && -1 !== row && (this.select.selecting = !0), updateSelectPosition(this, col, row, isShift, isCtrl, isSelectAll, isSelectMoving, skipBodyMerge, forceSelect);
44149
+ -1 !== row && -1 !== row && (this.select.selecting = !0), updateSelectPosition(this, col, row, isShift, isCtrl, isSelectAll, makeSelectCellVisible, skipBodyMerge, forceSelect);
44167
44150
  }
44168
44151
  checkCellRangeInSelect(cellPosStart, cellPosEnd) {
44169
44152
  return checkMultiCellInSelect(cellPosStart, cellPosEnd, this.select.ranges, this.select.highlightScope);
@@ -44249,10 +44232,7 @@
44249
44232
  }, 0), this.table.scenegraph.updateChartSizeForResizeRowHeight(this.rowResize.row), this.table.scenegraph.component.hideResizeRow(), this.table.scenegraph.updateNextFrame();
44250
44233
  }
44251
44234
  startResizeRow(row, x, y, isBottomFrozen) {
44252
- var _a;
44253
- this.rowResize.resizing = !0, this.rowResize.row = row, this.rowResize.y = y, this.rowResize.isBottomFrozen = isBottomFrozen, this.table.scenegraph.component.showResizeRow(row, x, isBottomFrozen);
44254
- const isHasSelected = !!(null === (_a = this.select.ranges) || void 0 === _a ? void 0 : _a.length);
44255
- this.updateSelectPos(-1, -1), this.endSelectCells(!0, isHasSelected), this.table.scenegraph.updateNextFrame();
44235
+ this.rowResize.resizing = !0, this.rowResize.row = row, this.rowResize.y = y, this.rowResize.isBottomFrozen = isBottomFrozen, this.table.scenegraph.component.showResizeRow(row, x, isBottomFrozen), this.table.scenegraph.updateNextFrame();
44256
44236
  }
44257
44237
  updateResizeRow(xInTable, yInTable) {
44258
44238
  updateResizeRow(xInTable, yInTable, this);
@@ -45417,15 +45397,15 @@
45417
45397
  handler.on(table.getElement(), "blur", e => {
45418
45398
  eventManager.dealTableHover();
45419
45399
  }), handler.on(table.getElement(), "keydown", e => {
45420
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
45400
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v;
45421
45401
  if ("a" === e.key && (e.ctrlKey || e.metaKey)) (null === (_a = table.keyboardOptions) || void 0 === _a ? void 0 : _a.selectAllOnCtrlA) && (e.preventDefault(), eventManager.deelTableSelectAll());else if (stateManager.select.cellPos.col >= 0 && stateManager.select.cellPos.row >= 0 && ("ArrowUp" === e.key || "ArrowDown" === e.key || "ArrowLeft" === e.key || "ArrowRight" === e.key)) {
45422
- if ((null === (_c = null === (_b = table.options.keyboardOptions) || void 0 === _b ? void 0 : _b.moveEditCellOnArrowKeys) || void 0 === _c || !_c) && (null === (_d = table.editorManager) || void 0 === _d ? void 0 : _d.editingEditor)) return;
45402
+ if ((null === (_c = null === (_b = table.options.keyboardOptions) || void 0 === _b ? void 0 : _b.moveEditCellOnArrowKeys) || void 0 === _c || !_c) && (null === (_d = table.editorManager) || void 0 === _d ? void 0 : _d.editingEditor) || !1 === (null === (_e = table.options.keyboardOptions) || void 0 === _e ? void 0 : _e.moveSelectedCellOnArrowKeys)) return;
45423
45403
  let targetCol, targetRow;
45424
45404
  if (e.preventDefault(), e.stopPropagation(), "ArrowUp" === e.key ? e.ctrlKey || e.metaKey ? (targetCol = stateManager.select.cellPos.col, targetRow = 0) : (e.shiftKey, targetCol = stateManager.select.cellPos.col, targetRow = Math.min(table.rowCount - 1, Math.max(0, stateManager.select.cellPos.row - 1))) : "ArrowDown" === e.key ? e.ctrlKey || e.metaKey ? (targetCol = stateManager.select.cellPos.col, targetRow = table.rowCount - 1) : (e.shiftKey, targetCol = stateManager.select.cellPos.col, targetRow = Math.min(table.rowCount - 1, Math.max(0, stateManager.select.cellPos.row + 1))) : "ArrowLeft" === e.key ? e.ctrlKey || e.metaKey ? (targetCol = 0, targetRow = stateManager.select.cellPos.row) : (e.shiftKey, targetRow = stateManager.select.cellPos.row, targetCol = Math.min(table.colCount - 1, Math.max(0, stateManager.select.cellPos.col - 1))) : "ArrowRight" === e.key && (e.ctrlKey || e.metaKey ? (targetCol = table.colCount - 1, targetRow = stateManager.select.cellPos.row) : (e.shiftKey, targetRow = stateManager.select.cellPos.row, targetCol = Math.min(table.colCount - 1, Math.max(0, stateManager.select.cellPos.col + 1)))), isCellDisableSelect(table, targetCol, targetRow)) return;
45425
- table.selectCell(targetCol, targetRow, e.shiftKey), null !== (_f = null === (_e = table.options.keyboardOptions) || void 0 === _e ? void 0 : _e.moveEditCellOnArrowKeys) && void 0 !== _f && _f && (null === (_g = table.editorManager) || void 0 === _g ? void 0 : _g.editingEditor) && (table.editorManager.completeEdit(), table.getElement().focus(), table.getEditor(targetCol, targetRow) && table.editorManager.startEditCell(targetCol, targetRow));
45426
- } else if ("Escape" === e.key) null === (_h = table.editorManager) || void 0 === _h || _h.cancelEdit(), table.getElement().focus();else if ("Enter" === e.key) {
45427
- if (null === (_j = table.editorManager) || void 0 === _j ? void 0 : _j.editingEditor) {
45428
- if (handleKeydownListener(e), table.editorManager.completeEdit(), table.getElement().focus(), !0 === (null === (_k = table.options.keyboardOptions) || void 0 === _k ? void 0 : _k.moveFocusCellOnEnter)) {
45405
+ table.selectCell(targetCol, targetRow, e.shiftKey), null !== (_g = null === (_f = table.options.keyboardOptions) || void 0 === _f ? void 0 : _f.moveEditCellOnArrowKeys) && void 0 !== _g && _g && (null === (_h = table.editorManager) || void 0 === _h ? void 0 : _h.editingEditor) && (table.editorManager.completeEdit(), table.getElement().focus(), table.getEditor(targetCol, targetRow) && table.editorManager.startEditCell(targetCol, targetRow));
45406
+ } else if ("Escape" === e.key) null === (_j = table.editorManager) || void 0 === _j || _j.cancelEdit(), table.getElement().focus();else if ("Enter" === e.key) {
45407
+ if (null === (_k = table.editorManager) || void 0 === _k ? void 0 : _k.editingEditor) {
45408
+ if (handleKeydownListener(e), table.editorManager.completeEdit(), table.getElement().focus(), !0 === (null === (_l = table.options.keyboardOptions) || void 0 === _l ? void 0 : _l.moveFocusCellOnEnter)) {
45429
45409
  const targetCol = stateManager.select.cellPos.col,
45430
45410
  targetRow = Math.min(table.rowCount - 1, Math.max(0, stateManager.select.cellPos.row + 1));
45431
45411
  if (isCellDisableSelect(table, targetCol, targetRow)) return;
@@ -45433,12 +45413,12 @@
45433
45413
  }
45434
45414
  return;
45435
45415
  }
45436
- if (!0 === (null === (_l = table.options.keyboardOptions) || void 0 === _l ? void 0 : _l.moveFocusCellOnEnter)) {
45416
+ if (!0 === (null === (_m = table.options.keyboardOptions) || void 0 === _m ? void 0 : _m.moveFocusCellOnEnter)) {
45437
45417
  const targetCol = stateManager.select.cellPos.col,
45438
45418
  targetRow = Math.min(table.rowCount - 1, Math.max(0, stateManager.select.cellPos.row + 1));
45439
45419
  if (isCellDisableSelect(table, targetCol, targetRow)) return;
45440
45420
  table.selectCell(targetCol, targetRow, e.shiftKey);
45441
- } else if ((null === (_o = null === (_m = table.options.keyboardOptions) || void 0 === _m ? void 0 : _m.editCellOnEnter) || void 0 === _o || _o) && 1 === (null !== (_q = null === (_p = table.stateManager.select.ranges) || void 0 === _p ? void 0 : _p.length) && void 0 !== _q ? _q : 0)) {
45421
+ } else if ((null === (_p = null === (_o = table.options.keyboardOptions) || void 0 === _o ? void 0 : _o.editCellOnEnter) || void 0 === _p || _p) && 1 === (null !== (_r = null === (_q = table.stateManager.select.ranges) || void 0 === _q ? void 0 : _q.length) && void 0 !== _r ? _r : 0)) {
45442
45422
  const startCol = table.stateManager.select.ranges[0].start.col,
45443
45423
  startRow = table.stateManager.select.ranges[0].start.row,
45444
45424
  endCol = table.stateManager.select.ranges[0].end.col,
@@ -45446,15 +45426,15 @@
45446
45426
  startCol === endCol && startRow === endRow && table.getEditor(startCol, startRow) && table.editorManager.startEditCell(startCol, startRow);
45447
45427
  }
45448
45428
  } else if ("Tab" === e.key) {
45449
- if ((null === (_s = null === (_r = table.options.keyboardOptions) || void 0 === _r ? void 0 : _r.moveFocusCellOnTab) || void 0 === _s || _s) && stateManager.select.cellPos.col >= 0 && stateManager.select.cellPos.row >= 0) {
45429
+ if ((null === (_t = null === (_s = table.options.keyboardOptions) || void 0 === _s ? void 0 : _s.moveFocusCellOnTab) || void 0 === _t || _t) && stateManager.select.cellPos.col >= 0 && stateManager.select.cellPos.row >= 0) {
45450
45430
  if (stateManager.select.cellPos.col === table.colCount - 1 && stateManager.select.cellPos.row === table.rowCount - 1) return;
45451
45431
  let targetCol, targetRow;
45452
45432
  if (e.preventDefault(), stateManager.select.cellPos.col === table.colCount - 1 ? (targetRow = Math.min(table.rowCount - 1, stateManager.select.cellPos.row + 1), targetCol = table.rowHeaderLevelCount) : (targetRow = stateManager.select.cellPos.row, targetCol = stateManager.select.cellPos.col + 1), isCellDisableSelect(table, targetCol, targetRow)) return;
45453
- table.selectCell(targetCol, targetRow), (null === (_t = table.editorManager) || void 0 === _t ? void 0 : _t.editingEditor) && (table.editorManager.completeEdit(), table.getElement().focus(), table.getEditor(targetCol, targetRow) && table.editorManager.startEditCell(targetCol, targetRow));
45433
+ table.selectCell(targetCol, targetRow), (null === (_u = table.editorManager) || void 0 === _u ? void 0 : _u.editingEditor) && (table.editorManager.completeEdit(), table.getElement().focus(), table.getEditor(targetCol, targetRow) && table.editorManager.startEditCell(targetCol, targetRow));
45454
45434
  }
45455
45435
  } else if (!(e.ctrlKey || e.metaKey || e.shiftKey)) {
45456
45436
  const editCellTrigger = table.options.editCellTrigger;
45457
- if (("keydown" === editCellTrigger || Array.isArray(editCellTrigger) && editCellTrigger.includes("keydown")) && !(null === (_u = table.editorManager) || void 0 === _u ? void 0 : _u.editingEditor)) {
45437
+ if (("keydown" === editCellTrigger || Array.isArray(editCellTrigger) && editCellTrigger.includes("keydown")) && !(null === (_v = table.editorManager) || void 0 === _v ? void 0 : _v.editingEditor)) {
45458
45438
  const allowedKeys = /^[a-zA-Z0-9+\-*\/%=.,\s]$/;
45459
45439
  e.key.match(allowedKeys) && table.editorManager.startEditCell(stateManager.select.cellPos.col, stateManager.select.cellPos.row, "");
45460
45440
  }
@@ -45709,7 +45689,7 @@
45709
45689
  right || left || (x > table.tableNoFrameWidth - table.getRightFrozenColsWidth() && x < table.tableNoFrameWidth || x > 0 && x < table.getFrozenColsWidth() ? (selectX = x, considerFrozenX = !0) : selectX = table.scrollLeft + x), bottom || top || (y > table.tableNoFrameHeight - table.getBottomFrozenRowsHeight() && y < table.tableNoFrameHeight || y > 0 && y < table.getFrozenRowsHeight() ? (selectY = y, considerFrozenY = !0) : selectY = table.scrollTop + y), table.stateManager.updateInteractionState(InteractionState.grabing);
45710
45690
  const targetCol = table.getTargetColAtConsiderRightFrozen(selectX, considerFrozenX),
45711
45691
  targetRow = table.getTargetRowAtConsiderBottomFrozen(selectY, considerFrozenY);
45712
- isValid$1(targetCol) && isValid$1(targetRow) && table.stateManager.updateSelectPos(targetCol.col, targetRow.row, !1, !1, !1, !0);
45692
+ isValid$1(targetCol) && isValid$1(targetRow) && table.stateManager.updateSelectPos(targetCol.col, targetRow.row, !1, !1, !1, !1);
45713
45693
  });
45714
45694
  } else table.eventManager.inertiaScroll.isInertiaScrolling() ? table.eventManager.inertiaScroll.endInertia() : table.eventManager.scrollYSpeed = 0;
45715
45695
  }
@@ -45934,7 +45914,7 @@
45934
45914
  }
45935
45915
  dealMenuHover(eventArgsSet) {}
45936
45916
  dealTableSelect(eventArgsSet, isSelectMoving) {
45937
- var _a, _b, _c, _d;
45917
+ var _a, _b, _c, _d, _e, _f;
45938
45918
  if (!eventArgsSet) return this.table.stateManager.updateSelectPos(-1, -1), !1;
45939
45919
  const {
45940
45920
  eventArgs: eventArgs
@@ -45950,7 +45930,7 @@
45950
45930
  }
45951
45931
  return !1;
45952
45932
  }
45953
- return !this.table.isPivotChart() || "axis-label" !== (null === (_c = null == eventArgsSet ? void 0 : eventArgsSet.eventArgs) || void 0 === _c ? void 0 : _c.target.name) && "chart" !== (null === (_d = null == eventArgsSet ? void 0 : eventArgsSet.eventArgs) || void 0 === _d ? void 0 : _d.target.type) ? (this.table.stateManager.updateSelectPos(eventArgs.col, eventArgs.row, eventArgs.event.shiftKey, eventArgs.event.ctrlKey || eventArgs.event.metaKey, !1, isSelectMoving), !0) : (this.table.stateManager.updateSelectPos(-1, -1), !1);
45933
+ return !this.table.isPivotChart() || "axis-label" !== (null === (_c = null == eventArgsSet ? void 0 : eventArgsSet.eventArgs) || void 0 === _c ? void 0 : _c.target.name) && "chart" !== (null === (_d = null == eventArgsSet ? void 0 : eventArgsSet.eventArgs) || void 0 === _d ? void 0 : _d.target.type) ? (this.table.stateManager.updateSelectPos(eventArgs.col, eventArgs.row, eventArgs.event.shiftKey, eventArgs.event.ctrlKey || eventArgs.event.metaKey, !1, null === (_f = null === (_e = this.table.options.select) || void 0 === _e ? void 0 : _e.makeSelectCellVisible) || void 0 === _f || _f), !0) : (this.table.stateManager.updateSelectPos(-1, -1), !1);
45954
45934
  }
45955
45935
  return !1;
45956
45936
  }
@@ -45963,8 +45943,8 @@
45963
45943
  if ((null === (_b = null === (_a = this.table.stateManager.select) || void 0 === _a ? void 0 : _a.ranges) || void 0 === _b ? void 0 : _b.length) && this.table.stateManager.isFillHandle()) {
45964
45944
  let updateRow, updateCol;
45965
45945
  const currentRange = this.table.stateManager.select.ranges[this.table.stateManager.select.ranges.length - 1];
45966
- isSelectMoving && (isValid$1(this.table.stateManager.fillHandle.directionRow) || (Math.abs(this.table.stateManager.fillHandle.startY - eventArgsSet.abstractPos.y) >= Math.abs(this.table.stateManager.fillHandle.startX - eventArgsSet.abstractPos.x) ? this.table.stateManager.fillHandle.directionRow = !0 : this.table.stateManager.fillHandle.directionRow = !1), Math.abs(this.table.stateManager.fillHandle.startY - eventArgsSet.abstractPos.y) >= Math.abs(this.table.stateManager.fillHandle.startX - eventArgsSet.abstractPos.x) ? this.table.stateManager.fillHandle.startY - eventArgsSet.abstractPos.y > 0 ? this.table.stateManager.fillHandle.direction = "top" : this.table.stateManager.fillHandle.direction = "bottom" : this.table.stateManager.fillHandle.startX - eventArgsSet.abstractPos.x > 0 ? this.table.stateManager.fillHandle.direction = "left" : this.table.stateManager.fillHandle.direction = "right", this.table.stateManager.fillHandle.directionRow ? (updateRow = eventArgs.row, updateCol = currentRange.end.col) : (updateRow = currentRange.end.row, updateCol = eventArgs.col)), this.table.stateManager.updateSelectPos(isSelectMoving ? updateCol : currentRange.end.col, isSelectMoving ? updateRow : currentRange.end.row, !0, eventArgs.event.ctrlKey || eventArgs.event.metaKey, !1, isSelectMoving);
45967
- } else this.table.stateManager.updateSelectPos(eventArgs.col, eventArgs.row, eventArgs.event.shiftKey, eventArgs.event.ctrlKey || eventArgs.event.metaKey, !1, isSelectMoving);
45946
+ isSelectMoving && (isValid$1(this.table.stateManager.fillHandle.directionRow) || (Math.abs(this.table.stateManager.fillHandle.startY - eventArgsSet.abstractPos.y) >= Math.abs(this.table.stateManager.fillHandle.startX - eventArgsSet.abstractPos.x) ? this.table.stateManager.fillHandle.directionRow = !0 : this.table.stateManager.fillHandle.directionRow = !1), Math.abs(this.table.stateManager.fillHandle.startY - eventArgsSet.abstractPos.y) >= Math.abs(this.table.stateManager.fillHandle.startX - eventArgsSet.abstractPos.x) ? this.table.stateManager.fillHandle.startY - eventArgsSet.abstractPos.y > 0 ? this.table.stateManager.fillHandle.direction = "top" : this.table.stateManager.fillHandle.direction = "bottom" : this.table.stateManager.fillHandle.startX - eventArgsSet.abstractPos.x > 0 ? this.table.stateManager.fillHandle.direction = "left" : this.table.stateManager.fillHandle.direction = "right", this.table.stateManager.fillHandle.directionRow ? (updateRow = eventArgs.row, updateCol = currentRange.end.col) : (updateRow = currentRange.end.row, updateCol = eventArgs.col)), this.table.stateManager.updateSelectPos(isSelectMoving ? updateCol : currentRange.end.col, isSelectMoving ? updateRow : currentRange.end.row, !0, eventArgs.event.ctrlKey || eventArgs.event.metaKey, !1, !isSelectMoving);
45947
+ } else this.table.stateManager.updateSelectPos(eventArgs.col, eventArgs.row, eventArgs.event.shiftKey, eventArgs.event.ctrlKey || eventArgs.event.metaKey, !1, !isSelectMoving);
45968
45948
  return !0;
45969
45949
  }
45970
45950
  return !1;
@@ -46020,11 +46000,11 @@
46020
46000
  this.table.stateManager.updateResizeRow(xInTable, yInTable);
46021
46001
  }
46022
46002
  chechColumnMover(eventArgsSet) {
46023
- var _a, _b, _c;
46003
+ var _a;
46024
46004
  const {
46025
46005
  eventArgs: eventArgs
46026
46006
  } = eventArgsSet;
46027
- return !!(eventArgs && this.table.isHeader(eventArgs.col, eventArgs.row) && (checkCellInSelect(eventArgs.col, eventArgs.row, this.table.stateManager.select.ranges) || (null === (_a = this.table.options.select) || void 0 === _a ? void 0 : _a.disableHeaderSelect) || (null === (_b = this.table.options.select) || void 0 === _b ? void 0 : _b.disableSelect)) && this.table._canDragHeaderPosition(eventArgs.col, eventArgs.row)) && (this.table.stateManager.startMoveCol(eventArgs.col, eventArgs.row, eventArgsSet.abstractPos.x, eventArgsSet.abstractPos.y, null === (_c = null == eventArgs ? void 0 : eventArgs.event) || void 0 === _c ? void 0 : _c.nativeEvent), !0);
46007
+ return !(!eventArgs || !this.table._canDragHeaderPosition(eventArgs.col, eventArgs.row)) && (this.table.stateManager.startMoveCol(eventArgs.col, eventArgs.row, eventArgsSet.abstractPos.x, eventArgsSet.abstractPos.y, null === (_a = null == eventArgs ? void 0 : eventArgs.event) || void 0 === _a ? void 0 : _a.nativeEvent), !0);
46028
46008
  }
46029
46009
  dealColumnMover(eventArgsSet) {
46030
46010
  var _a;
@@ -48500,7 +48480,7 @@
48500
48480
  constructor(container) {
48501
48481
  let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
48502
48482
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
48503
- if (super(), this.showFrozenIcon = !0, this.version = "1.11.2-alpha.1", this.id = `VTable${Date.now()}`, this.isReleased = !1, this._chartEventMap = {}, this.throttleInvalidate = throttle2(this.render.bind(this), 200), !container && "node" !== options.mode && !options.canvas) throw new Error("vtable's container is undefined");
48483
+ if (super(), this.showFrozenIcon = !0, this.version = "1.11.2-alpha.2", this.id = `VTable${Date.now()}`, this.isReleased = !1, this._chartEventMap = {}, this.throttleInvalidate = throttle2(this.render.bind(this), 200), !container && "node" !== options.mode && !options.canvas) throw new Error("vtable's container is undefined");
48504
48484
  const {
48505
48485
  frozenColCount = 0,
48506
48486
  frozenRowCount: frozenRowCount,
@@ -49416,13 +49396,12 @@
49416
49396
  clearSelected() {
49417
49397
  this.stateManager.updateSelectPos(-1, -1);
49418
49398
  }
49419
- selectCell(col, row, isShift, isCtrl) {
49420
- let makeSelectCellVisible = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : !0;
49399
+ selectCell(col, row, isShift, isCtrl, makeSelectCellVisible) {
49421
49400
  let skipBodyMerge = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : !1;
49422
49401
  let forceSelect = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : !1;
49423
- var _a;
49402
+ var _a, _b, _c;
49424
49403
  const isHasSelected = !!(null === (_a = this.stateManager.select.ranges) || void 0 === _a ? void 0 : _a.length);
49425
- this.stateManager.updateSelectPos(col, row, isShift, isCtrl, !1, !makeSelectCellVisible, skipBodyMerge, forceSelect), this.stateManager.endSelectCells(!0, isHasSelected);
49404
+ this.stateManager.updateSelectPos(col, row, isShift, isCtrl, !1, null === (_c = null != makeSelectCellVisible ? makeSelectCellVisible : null === (_b = this.options.select) || void 0 === _b ? void 0 : _b.makeSelectCellVisible) || void 0 === _c || _c, skipBodyMerge, forceSelect), this.stateManager.endSelectCells(!0, isHasSelected);
49426
49405
  }
49427
49406
  selectCells(cellRanges) {
49428
49407
  const {
@@ -49430,7 +49409,8 @@
49430
49409
  scrollTop: scrollTop
49431
49410
  } = this;
49432
49411
  cellRanges.forEach((cellRange, index) => {
49433
- cellRange.start.col === cellRange.end.col && cellRange.start.row === cellRange.end.row ? this.stateManager.updateSelectPos(cellRange.start.col, cellRange.start.row, !1, index >= 1, !1, !1, !0) : (this.stateManager.updateSelectPos(cellRange.start.col, cellRange.start.row, !1, index >= 1, !1, !1, !0), this.stateManager.updateInteractionState(InteractionState.grabing), this.stateManager.updateSelectPos(cellRange.end.col, cellRange.end.row, !1, index >= 1, !1, !1, !0)), this.stateManager.endSelectCells(!1, !1), this.stateManager.updateInteractionState(InteractionState.default);
49412
+ var _a, _b, _c, _d, _e, _f;
49413
+ cellRange.start.col === cellRange.end.col && cellRange.start.row === cellRange.end.row ? this.stateManager.updateSelectPos(cellRange.start.col, cellRange.start.row, !1, index >= 1, !1, null === (_b = null === (_a = this.options.select) || void 0 === _a ? void 0 : _a.makeSelectCellVisible) || void 0 === _b || _b, !0) : (this.stateManager.updateSelectPos(cellRange.start.col, cellRange.start.row, !1, index >= 1, !1, null === (_d = null === (_c = this.options.select) || void 0 === _c ? void 0 : _c.makeSelectCellVisible) || void 0 === _d || _d, !0), this.stateManager.updateInteractionState(InteractionState.grabing), this.stateManager.updateSelectPos(cellRange.end.col, cellRange.end.row, !1, index >= 1, !1, null === (_f = null === (_e = this.options.select) || void 0 === _e ? void 0 : _e.makeSelectCellVisible) || void 0 === _f || _f, !0)), this.stateManager.endSelectCells(!1, !1), this.stateManager.updateInteractionState(InteractionState.default);
49434
49414
  }), this.setScrollTop(scrollTop), this.setScrollLeft(scrollLeft);
49435
49415
  }
49436
49416
  get recordsCount() {
@@ -49715,8 +49695,8 @@
49715
49695
  return !0;
49716
49696
  }
49717
49697
  _canDragHeaderPosition(col, row) {
49718
- var _a, _b;
49719
- if (this.isHeader(col, row) && (this.stateManager.isSelected(col, row) || (null === (_a = this.options.select) || void 0 === _a ? void 0 : _a.disableHeaderSelect) || (null === (_b = this.options.select) || void 0 === _b ? void 0 : _b.disableSelect))) {
49698
+ var _a, _b, _c;
49699
+ if (this.isHeader(col, row) && (this.stateManager.isSelected(col, row) || "body" === (null === (_a = this.options.select) || void 0 === _a ? void 0 : _a.headerSelectMode) && checkCellInSelect(col, row, [this.getCellRange(this.stateManager.select.cellPos.col, this.stateManager.select.cellPos.row)]) || (null === (_b = this.options.select) || void 0 === _b ? void 0 : _b.disableHeaderSelect) || (null === (_c = this.options.select) || void 0 === _c ? void 0 : _c.disableSelect))) {
49720
49700
  if ("disabled" === this.internalProps.frozenColDragHeaderMode && this.isFrozenColumn(col)) return !1;
49721
49701
  if (this.stateManager.isSelected(col, row)) {
49722
49702
  const selectRange = this.stateManager.select.ranges[0];
@@ -50974,20 +50954,18 @@
50974
50954
  }
50975
50955
  handleRowSeriesNumber(rowSeriesNumber) {
50976
50956
  var _a, _b;
50977
- rowSeriesNumber && (Array.isArray(rowSeriesNumber) ? this.rowSeriesNumberColumn = rowSeriesNumber.map((seriesNumber, index) => {
50978
- var _a, _b, _c;
50957
+ rowSeriesNumber && (Array.isArray(rowSeriesNumber) ? this.rowSeriesNumberColumn = rowSeriesNumber.map(seriesNumber => {
50958
+ var _a, _b;
50979
50959
  return {
50980
50960
  id: this.seqId++,
50981
50961
  title: seriesNumber.title,
50982
- define: merge({
50983
- field: "_vtable_rowSeries_number_" + index
50984
- }, seriesNumber),
50962
+ define: seriesNumber,
50985
50963
  cellType: null !== (_a = seriesNumber.cellType) && void 0 !== _a ? _a : "text",
50986
50964
  headerType: null !== (_b = rowSeriesNumber.cellType) && void 0 !== _b ? _b : "text",
50987
50965
  style: seriesNumber.style,
50988
50966
  width: seriesNumber.width,
50989
50967
  format: seriesNumber.format,
50990
- field: null !== (_c = seriesNumber.field) && void 0 !== _c ? _c : "_vtable_rowSeries_number_" + index,
50968
+ field: seriesNumber.field,
50991
50969
  icon: seriesNumber.icon,
50992
50970
  headerIcon: seriesNumber.headerIcon,
50993
50971
  isChildNode: !1
@@ -50995,15 +50973,13 @@
50995
50973
  }) : this.rowSeriesNumberColumn = [{
50996
50974
  id: this.seqId++,
50997
50975
  title: rowSeriesNumber.title,
50998
- define: merge({
50999
- field: "_vtable_rowSeries_number"
51000
- }, rowSeriesNumber),
50976
+ define: rowSeriesNumber,
51001
50977
  cellType: null !== (_a = rowSeriesNumber.cellType) && void 0 !== _a ? _a : "text",
51002
50978
  headerType: null !== (_b = rowSeriesNumber.cellType) && void 0 !== _b ? _b : "text",
51003
50979
  style: rowSeriesNumber.style,
51004
50980
  width: rowSeriesNumber.width,
51005
50981
  format: rowSeriesNumber.format,
51006
- field: "_vtable_rowSeries_number",
50982
+ field: "",
51007
50983
  icon: rowSeriesNumber.icon,
51008
50984
  headerIcon: rowSeriesNumber.headerIcon,
51009
50985
  isChildNode: !1
@@ -51396,11 +51372,9 @@
51396
51372
  return this._headerObjectMap[id];
51397
51373
  }
51398
51374
  getHeaderField(col, row) {
51399
- var _a, _b, _c;
51400
- if (this.isSeriesNumberInHeader(col, row)) return null === (_a = this.getSeriesNumberHeader(col, row)) || void 0 === _a ? void 0 : _a.field;
51401
- if (this.isSeriesNumberInBody(col, row)) return null === (_b = this.getSeriesNumberBody(col, row)) || void 0 === _b ? void 0 : _b.field;
51375
+ var _a;
51402
51376
  const id = this.getCellId(col, row);
51403
- return (null === (_c = this._headerObjectMap[id]) || void 0 === _c ? void 0 : _c.field) || (this.transpose ? this._columns[row] && this._columns[row].field : this._columns[col - this.leftRowSeriesNumberColumnCount] && this._columns[col - this.leftRowSeriesNumberColumnCount].field);
51377
+ return (null === (_a = this._headerObjectMap[id]) || void 0 === _a ? void 0 : _a.field) || (this.transpose ? this._columns[row] && this._columns[row].field : this._columns[col - this.leftRowSeriesNumberColumnCount] && this._columns[col - this.leftRowSeriesNumberColumnCount].field);
51404
51378
  }
51405
51379
  getHeaderCellAdressById(id) {
51406
51380
  for (let i = 0; i < this._headerCellIds.length; i++) {
@@ -58389,7 +58363,7 @@
58389
58363
  themes: themes$1
58390
58364
  });
58391
58365
 
58392
- const version = "1.11.2-alpha.1";
58366
+ const version = "1.11.2-alpha.2";
58393
58367
 
58394
58368
  exports.Gantt = Gantt;
58395
58369
  exports.TYPES = index$2;