@visactor/vtable 1.0.0-alpha.3 → 1.0.1-alpha.0
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/PivotChart.d.ts +1 -1
- package/cjs/PivotChart.js +10 -2
- package/cjs/PivotChart.js.map +1 -1
- package/cjs/body-helper/body-helper.js +4 -3
- package/cjs/body-helper/body-helper.js.map +1 -1
- package/cjs/core/BaseTable.d.ts +2 -0
- package/cjs/core/BaseTable.js +44 -16
- package/cjs/core/BaseTable.js.map +1 -1
- package/cjs/header-helper/header-helper.js +1 -1
- package/cjs/header-helper/header-helper.js.map +1 -1
- package/cjs/index.d.ts +1 -1
- package/cjs/index.js +1 -1
- package/cjs/index.js.map +1 -1
- package/cjs/scenegraph/layout/compute-col-width.js +4 -2
- package/cjs/scenegraph/layout/compute-col-width.js.map +1 -1
- package/cjs/scenegraph/layout/frozen.js +1 -1
- package/cjs/scenegraph/layout/frozen.js.map +1 -1
- package/cjs/scenegraph/scenegraph.d.ts +4 -2
- package/cjs/scenegraph/scenegraph.js +3 -3
- package/cjs/scenegraph/scenegraph.js.map +1 -1
- package/cjs/scenegraph/select/update-select-border.d.ts +4 -1
- package/cjs/scenegraph/select/update-select-border.js +6 -1
- package/cjs/scenegraph/select/update-select-border.js.map +1 -1
- package/cjs/scenegraph/utils/break-string.js +1 -1
- package/cjs/scenegraph/utils/break-string.js.map +1 -1
- package/cjs/scenegraph/utils/text-icon-layout.d.ts +3 -1
- package/cjs/scenegraph/utils/text-icon-layout.js +13 -7
- package/cjs/scenegraph/utils/text-icon-layout.js.map +1 -1
- package/cjs/state/select/update-position.d.ts +1 -1
- package/cjs/state/select/update-position.js +14 -10
- package/cjs/state/select/update-position.js.map +1 -1
- package/cjs/state/state.d.ts +4 -2
- package/cjs/state/state.js +2 -2
- package/cjs/state/state.js.map +1 -1
- package/cjs/ts-types/base-table.d.ts +4 -2
- package/cjs/ts-types/base-table.js.map +1 -1
- package/cjs/vrender.js.map +1 -1
- package/dist/vtable.js +134 -51
- package/dist/vtable.min.js +2 -2
- package/es/PivotChart.d.ts +1 -1
- package/es/PivotChart.js +10 -2
- package/es/PivotChart.js.map +1 -1
- package/es/body-helper/body-helper.js +4 -3
- package/es/body-helper/body-helper.js.map +1 -1
- package/es/core/BaseTable.d.ts +2 -0
- package/es/core/BaseTable.js +42 -17
- package/es/core/BaseTable.js.map +1 -1
- package/es/header-helper/header-helper.js +1 -1
- package/es/header-helper/header-helper.js.map +1 -1
- package/es/index.d.ts +1 -1
- package/es/index.js +1 -1
- package/es/index.js.map +1 -1
- package/es/scenegraph/layout/compute-col-width.js +4 -2
- package/es/scenegraph/layout/compute-col-width.js.map +1 -1
- package/es/scenegraph/layout/frozen.js +1 -1
- package/es/scenegraph/layout/frozen.js.map +1 -1
- package/es/scenegraph/scenegraph.d.ts +4 -2
- package/es/scenegraph/scenegraph.js +3 -3
- package/es/scenegraph/scenegraph.js.map +1 -1
- package/es/scenegraph/select/update-select-border.d.ts +4 -1
- package/es/scenegraph/select/update-select-border.js +6 -1
- package/es/scenegraph/select/update-select-border.js.map +1 -1
- package/es/scenegraph/utils/break-string.js +1 -1
- package/es/scenegraph/utils/break-string.js.map +1 -1
- package/es/scenegraph/utils/text-icon-layout.d.ts +3 -1
- package/es/scenegraph/utils/text-icon-layout.js +11 -7
- package/es/scenegraph/utils/text-icon-layout.js.map +1 -1
- package/es/state/select/update-position.d.ts +1 -1
- package/es/state/select/update-position.js +14 -10
- package/es/state/select/update-position.js.map +1 -1
- package/es/state/state.d.ts +4 -2
- package/es/state/state.js +2 -2
- package/es/state/state.js.map +1 -1
- package/es/ts-types/base-table.d.ts +4 -2
- package/es/ts-types/base-table.js.map +1 -1
- package/es/vrender.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/body-helper/body-helper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,KAAK,aAAa,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,MAAM,OAAO,UAAU;IAIrB,YAAY,MAAoB;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,EAAE,CAAC;QAEvC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,gBAAgB,CAAC,cAAc,CAAY,CAAC;QACzE,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,gBAAgB,CAAC,gBAAgB,CAAY,CAAC;IAC/E,CAAC;IACD,QAAQ,CACN,GAAW,EACX,GAAW,EACX,SAAc,EACd,SAAc,EACd,OAAiC;QAGjC,MAAM,OAAO,GAAuB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"sources":["../src/body-helper/body-helper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,KAAK,aAAa,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,MAAM,OAAO,UAAU;IAIrB,YAAY,MAAoB;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,EAAE,CAAC;QAEvC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,gBAAgB,CAAC,cAAc,CAAY,CAAC;QACzE,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,gBAAgB,CAAC,gBAAgB,CAAY,CAAC;IAC/E,CAAC;IACD,QAAQ,CACN,GAAW,EACX,GAAW,EACX,SAAc,EACd,SAAc,EACd,OAAiC;QAGjC,MAAM,OAAO,GAAuB,EAAE,CAAC;QAEvC,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACtD,IAAI,aAAa,EAAE;YACjB,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;SAC7B;QAED,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAEvE,IAAI,UAAU,EAAE;YACd,IAAI,WAAW,CAAC;YAChB,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE;gBACpC,MAAM,GAAG,GAAG;oBACV,GAAG;oBACH,GAAG;oBACH,KAAK,EAAE,SAAS;oBAChB,SAAS;oBACT,KAAK,EAAE,IAAI,CAAC,MAAM;iBACnB,CAAC;gBACF,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;aAC/B;iBAAM;gBACL,WAAW,GAAG,UAAU,CAAC;aAC1B;YACD,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,EAAE,CAAC;YACvC,MAAM,OAAO,GAAG,CAAC,UAAqC,EAAE,EAAE;gBACxD,IAAI,IAAI,CAAC;gBACT,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;oBAClC,IAAI,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;iBAC/B;qBAAM;oBACL,IAAI,GAAG,UAAU,CAAC;iBACnB;gBACD,IAAI,IAAI,EAAE;oBACR,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBACpB;YACH,CAAC,CAAC;YACF,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;gBAC9B,WAAW,CAAC,OAAO,CAAC,CAAC,UAAqC,EAAE,KAAa,EAAE,EAAE;oBAC3E,OAAO,CAAC,UAAU,CAAC,CAAC;gBACtB,CAAC,CAAC,CAAC;aACJ;iBAAM;gBACL,OAAO,CAAC,WAAW,CAAC,CAAC;aACtB;SACF;QAED,OAAO;YACL,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;gBAC3B,IAAK,CAAS,CAAC,OAAO,IAAgB,CAAE,CAAC,GAAG,EAAE;oBAC5C,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;iBAG/D;YACH,CAAC,CAAC,CAAC;QAEL,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,aAAa,CACX,QAUW;QAEX,QAAQ,QAAQ,EAAE;YAChB,KAAK,MAAM;gBACT,OAAO,SAAS,CAAC;YACnB,KAAK,OAAO;gBACV,OAAO,UAAU,CAAC;YACpB,KAAK,OAAO;gBACV,OAAO,UAAU,CAAC;YACpB,KAAK,MAAM;gBACT,OAAO,SAAS,CAAC;YACnB,KAAK,OAAO;gBACV,OAAO,KAAK,CAAC;YACf,KAAK,WAAW;gBACd,OAAO,KAAK,CAAC;YACf,KAAK,aAAa;gBAChB,OAAO,gBAAgB,CAAC;YAC1B,KAAK,UAAU;gBACb,OAAO,aAAa,CAAC;YACvB,KAAK,OAAO;gBACV,OAAO,UAAU,CAAC;SACrB;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAQD,0BAA0B,CACxB,IAA2C,EAC3C,GAAW,EACX,GAAW;QAEX,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;SACpE;QAED,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE;YACrD,OAAQ,IAAI,CAAC,MAAuB,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;SACnE;QAED,MAAM,OAAO,GAAQ,EAAE,CAAC;QACxB,MAAM,OAAO,GAAQ,IAAI,CAAC;QAC1B,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;;YAC7B,IAAI,OAAO,OAAO,CAAC,CAAC,CAAC,KAAK,WAAW,EAAE;gBACrC,MAAM,CAAC,GAAI,IAAI,CAAC,MAAuB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;gBAC3E,IAAI,CAAC,IAAI,IAAI,EAAE;oBACb,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;iBAChB;qBAAM,IAAI,CAAC,CAAA,MAAA,MAAA,IAAI,CAAC,MAAM,EAAC,SAAS,mDAAG,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA,EAAE;oBACzD,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;iBACzB;aACF;QACH,CAAC,CAAC,CAAC;QACH,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,gBAAgB,CAAC,GAAW,EAAE,GAAW;QACvC,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC/D,IAAI,cAAc,KAAK,cAAc,CAAC,MAAM,EAAE;YAE5C,OAAO,IAAI,CAAC,UAAU,CAAC;SACxB;aAAM,IAAI,cAAc,KAAK,cAAc,CAAC,QAAQ,EAAE;YAErD,OAAO,IAAI,CAAC,YAAY,CAAC;SAC1B;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,qBAAqB;;QACnB,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,MAAA,IAAI,CAAC,UAAU,CAAC,UAAU,mCAAI,CAAC,CAAC,GAAG,CAAC,MAAA,IAAI,CAAC,UAAU,CAAC,WAAW,mCAAI,CAAC,CAAC,CAAC;IACxG,CAAC;CACF","file":"body-helper.js","sourcesContent":["import type { ColumnIconOption, ImageIcon, ListTableAPI, SvgIcon } from '../ts-types';\nimport { HierarchyState, InternalIconName } from '../ts-types';\nimport * as registerIcons from '../icons';\nimport { Style } from './style/Style';\nimport { TextStyle } from './style/MultilineTextStyle';\nimport { ProgressBarStyle } from './style/ProgressBarStyle';\nimport { ImageStyle } from './style/ImageStyle';\nimport type { BaseTableAPI } from '../ts-types/base-table';\nimport * as icons from '../tools/icons';\nimport { obj } from '../tools/helper';\nimport { CheckboxStyle } from './style/CheckboxStyle';\nimport { RadioStyle } from './style/RadioStyle';\nexport class BodyHelper {\n expandIcon: SvgIcon;\n collapseIcon: SvgIcon;\n _table: BaseTableAPI;\n constructor(_table: BaseTableAPI) {\n this._table = _table;\n const regedIcons = registerIcons.get();\n //展开折叠按钮\n this.expandIcon = regedIcons[InternalIconName.expandIconName] as SvgIcon;\n this.collapseIcon = regedIcons[InternalIconName.collapseIconName] as SvgIcon;\n }\n getIcons(\n col: number,\n row: number,\n cellValue: any,\n dataValue: any,\n context: CanvasRenderingContext2D\n ): ColumnIconOption[] {\n //加入固定列图标 排序 文本中元素\n const iconArr: ColumnIconOption[] = [];\n\n const hierarchyIcon = this.getHierarchyIcon(col, row);\n if (hierarchyIcon) {\n iconArr.push(hierarchyIcon);\n }\n\n const { icon: iconDefine } = this._table.getBodyColumnDefine(col, row);\n\n if (iconDefine) {\n let iconResults;\n if (typeof iconDefine === 'function') {\n const arg = {\n col,\n row,\n value: cellValue,\n dataValue,\n table: this._table\n };\n iconResults = iconDefine(arg);\n } else {\n iconResults = iconDefine;\n }\n const regedIcons = registerIcons.get();\n const addIcon = (columnIcon: string | ColumnIconOption) => {\n let icon;\n if (typeof columnIcon === 'string') {\n icon = regedIcons[columnIcon];\n } else {\n icon = columnIcon;\n }\n if (icon) {\n iconArr.push(icon);\n }\n };\n if (Array.isArray(iconResults)) {\n iconResults.forEach((columnIcon: string | ColumnIconOption, index: number) => {\n addIcon(columnIcon);\n });\n } else {\n addIcon(iconResults);\n }\n }\n\n context &&\n iconArr.forEach((i, index) => {\n if ((i as any).content || (<ImageIcon>i).src) {\n iconArr[index] = this.getCellIconFromRecordValue(i, col, row);\n // if ((<FontIcon>i).font)\n // helper.testFontLoad((<FontIcon>i).font, (<FontIcon>i).content, col, row);\n }\n });\n\n return iconArr;\n }\n getStyleClass(\n cellType:\n | 'text'\n | 'link'\n | 'image'\n | 'video'\n | 'chart'\n | 'sparkline'\n | 'progressbar'\n | 'chart'\n | 'checkbox'\n | 'radio'\n ) {\n switch (cellType) {\n case 'text':\n return TextStyle;\n case 'image':\n return ImageStyle;\n case 'video':\n return ImageStyle;\n case 'link':\n return TextStyle;\n case 'chart':\n return Style;\n case 'sparkline':\n return Style;\n case 'progressbar':\n return ProgressBarStyle;\n case 'checkbox':\n return CheckboxStyle;\n case 'radio':\n return RadioStyle;\n }\n return TextStyle;\n }\n getCellIconFromRecordValue(icon: ColumnIconOption, col: number, row: number): ColumnIconOption;\n getCellIconFromRecordValue(icon: ColumnIconOption[], col: number, row: number): ColumnIconOption[];\n getCellIconFromRecordValue(\n icon: ColumnIconOption | ColumnIconOption[],\n col: number,\n row: number\n ): ColumnIconOption | ColumnIconOption[];\n getCellIconFromRecordValue(\n icon: ColumnIconOption | ColumnIconOption[],\n col: number,\n row: number\n ): ColumnIconOption | ColumnIconOption[] {\n if (Array.isArray(icon)) {\n return icon.map(i => this.getCellIconFromRecordValue(i, col, row));\n }\n // icon.positionType = IconPosition.inlineFront;\n if (!obj.isObject(icon) || typeof icon === 'function') {\n return (this._table as ListTableAPI).getFieldData(icon, col, row);\n }\n // 新建对象 挨个属性赋值\n const retIcon: any = {};\n const iconOpt: any = icon;\n icons.iconPropKeys.forEach(k => {\n if (typeof iconOpt[k] !== 'undefined') {\n const f = (this._table as ListTableAPI).getFieldData(iconOpt[k], col, row);\n if (f != null) {\n retIcon[k] = f;\n } else if (!this._table._hasField?.(iconOpt[k], col, row)) {\n retIcon[k] = iconOpt[k];\n }\n }\n });\n return retIcon;\n }\n\n getHierarchyIcon(col: number, row: number) {\n const hierarchyState = this._table.getHierarchyState(col, row);\n if (hierarchyState === HierarchyState.expand) {\n //展开状态 应该显示-号\n return this.expandIcon;\n } else if (hierarchyState === HierarchyState.collapse) {\n //折叠状态 应该显示-号\n return this.collapseIcon;\n }\n return undefined;\n }\n getHierarchyIconWidth() {\n return this.expandIcon.width + (this.expandIcon.marginLeft ?? 0) + (this.expandIcon.marginRight ?? 0);\n }\n}\n"]}
|
package/es/core/BaseTable.d.ts
CHANGED
|
@@ -140,12 +140,14 @@ export declare abstract class BaseTable extends EventTarget implements BaseTable
|
|
|
140
140
|
getDefaultColumnWidth(col: number): number | "auto";
|
|
141
141
|
getDefaultRowHeight(row: number): number | "auto";
|
|
142
142
|
_setRowHeight(row: number, height: number, clearCache?: boolean): void;
|
|
143
|
+
setRowHeight(row: number, height: number): void;
|
|
143
144
|
getRowsHeight(startRow: number, endRow: number): number;
|
|
144
145
|
getColWidthDefined(col: number): string | number;
|
|
145
146
|
getColWidthDefinedNumber(col: number): number;
|
|
146
147
|
isAutoRowHeight(row: number): boolean;
|
|
147
148
|
getColWidth(col: number): number;
|
|
148
149
|
_setColWidth(col: number, width: string | number, clearCache?: boolean, skipCheckFrozen?: boolean): void;
|
|
150
|
+
setColWidth(col: number, width: number): void;
|
|
149
151
|
_clearColRangeWidthsMap(col?: number): void;
|
|
150
152
|
_clearRowRangeHeightsMap(row?: number): void;
|
|
151
153
|
_getColContentWidth(col: number): number;
|
package/es/core/BaseTable.js
CHANGED
|
@@ -82,7 +82,7 @@ export class BaseTable extends EventTarget {
|
|
|
82
82
|
}
|
|
83
83
|
constructor(container, options = {}) {
|
|
84
84
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
85
|
-
if (super(), this.showFrozenIcon = !0, this.version = "1.0.
|
|
85
|
+
if (super(), this.showFrozenIcon = !0, this.version = "1.0.1-alpha.0", this.id = `VTable${Date.now()}`,
|
|
86
86
|
this.isReleased = !1, this._chartEventMap = {}, this.throttleInvalidate = throttle2(this.render.bind(this), 200),
|
|
87
87
|
!container && "node" !== options.mode) throw new Error("vtable's container is undefined");
|
|
88
88
|
const {frozenColCount: frozenColCount = 0, defaultRowHeight: defaultRowHeight = 40, defaultHeaderRowHeight: defaultHeaderRowHeight, defaultColWidth: defaultColWidth = 80, defaultHeaderColWidth: defaultHeaderColWidth, widthMode: widthMode = "standard", heightMode: heightMode = "standard", autoFillWidth: autoFillWidth = !1, autoFillHeight: autoFillHeight = !1, widthAdaptiveMode: widthAdaptiveMode = "only-body", heightAdaptiveMode: heightAdaptiveMode = "only-body", keyboardOptions: keyboardOptions, eventOptions: eventOptions, rowSeriesNumber: rowSeriesNumber, columnResizeMode: columnResizeMode, rowResizeMode: rowResizeMode = "none", dragHeaderMode: dragHeaderMode, showFrozenIcon: showFrozenIcon, allowFrozenColCount: allowFrozenColCount, padding: padding, hover: hover, menu: menu, select: click, customRender: customRender, pixelRatio: pixelRatio = defaultPixelRatio, renderChartAsync: renderChartAsync, renderChartAsyncBatchCount: renderChartAsyncBatchCount, mode: mode, modeParams: modeParams, canvasWidth: canvasWidth, canvasHeight: canvasHeight, overscrollBehavior: overscrollBehavior, limitMinWidth: limitMinWidth, limitMinHeight: limitMinHeight, clearDOM: clearDOM = !0} = options;
|
|
@@ -101,7 +101,7 @@ export class BaseTable extends EventTarget {
|
|
|
101
101
|
this.tableNoFrameHeight = 0, this.canvasWidth = canvasWidth, this.canvasHeight = canvasHeight,
|
|
102
102
|
this.columnWidthComputeMode = null !== (_a = options.columnWidthComputeMode) && void 0 !== _a ? _a : "normal";
|
|
103
103
|
const internalProps = this.internalProps = {};
|
|
104
|
-
void 0 !== showFrozenIcon && (this.showFrozenIcon = showFrozenIcon), "number" == typeof allowFrozenColCount && allowFrozenColCount <= 0 && (this.showFrozenIcon = !1),
|
|
104
|
+
if (void 0 !== showFrozenIcon && (this.showFrozenIcon = showFrozenIcon), "number" == typeof allowFrozenColCount && allowFrozenColCount <= 0 && (this.showFrozenIcon = !1),
|
|
105
105
|
"node" !== Env.mode && (internalProps.element = createRootElement(this.padding),
|
|
106
106
|
internalProps.focusControl = new FocusInput(this, internalProps.element), internalProps.canvas = document.createElement("canvas"),
|
|
107
107
|
internalProps.element.appendChild(internalProps.canvas), internalProps.context = internalProps.canvas.getContext("2d")),
|
|
@@ -135,11 +135,18 @@ export class BaseTable extends EventTarget {
|
|
|
135
135
|
internalProps.limitMinWidth = null != limitMinWidth ? "number" == typeof limitMinWidth ? limitMinWidth : limitMinWidth ? 10 : 0 : 10,
|
|
136
136
|
internalProps.limitMinHeight = null != limitMinHeight ? "number" == typeof limitMinHeight ? limitMinHeight : limitMinHeight ? 10 : 0 : 10,
|
|
137
137
|
this._vDataSet = new DataSet, this.scenegraph = new Scenegraph(this), this.stateManager = new StateManager(this),
|
|
138
|
-
this.eventManager = new EventManager(this), options.legends
|
|
139
|
-
|
|
138
|
+
this.eventManager = new EventManager(this), options.legends) if (internalProps.legends = [],
|
|
139
|
+
Array.isArray(options.legends)) {
|
|
140
|
+
for (let i = 0; i < options.legends.length; i++) internalProps.legends.push(createLegend(options.legends[i], this));
|
|
141
|
+
this.scenegraph.tableGroup.setAttributes({
|
|
142
|
+
x: this.tableX,
|
|
143
|
+
y: this.tableY
|
|
144
|
+
});
|
|
145
|
+
} else internalProps.legends.push(createLegend(options.legends, this)), this.scenegraph.tableGroup.setAttributes({
|
|
140
146
|
x: this.tableX,
|
|
141
147
|
y: this.tableY
|
|
142
|
-
})
|
|
148
|
+
});
|
|
149
|
+
internalProps.tooltip = Object.assign({
|
|
143
150
|
renderMode: "html",
|
|
144
151
|
isShowOverflowTextTooltip: !1,
|
|
145
152
|
confine: !0
|
|
@@ -164,8 +171,10 @@ export class BaseTable extends EventTarget {
|
|
|
164
171
|
return this.internalProps.canvas;
|
|
165
172
|
}
|
|
166
173
|
resize() {
|
|
167
|
-
|
|
168
|
-
this.
|
|
174
|
+
var _a;
|
|
175
|
+
this._updateSize(), null === (_a = this.internalProps.legends) || void 0 === _a || _a.forEach((legend => {
|
|
176
|
+
null == legend || legend.resize();
|
|
177
|
+
})), this.internalProps.title && this.internalProps.title.resize(), this.scenegraph.resize();
|
|
169
178
|
}
|
|
170
179
|
get rowCount() {
|
|
171
180
|
return this.internalProps.rowCount;
|
|
@@ -429,6 +438,9 @@ export class BaseTable extends EventTarget {
|
|
|
429
438
|
this.rowHeightsMap.put(row, (null === (_a = this.options.customConfig) || void 0 === _a ? void 0 : _a._disableColumnAndRowSizeRound) ? height : Math.round(height)),
|
|
430
439
|
clearCache && this._clearRowRangeHeightsMap(row);
|
|
431
440
|
}
|
|
441
|
+
setRowHeight(row, height) {
|
|
442
|
+
this.scenegraph.setRowHeight(row, height), this.internalProps._heightResizedRowMap.add(row);
|
|
443
|
+
}
|
|
432
444
|
getRowsHeight(startRow, endRow) {
|
|
433
445
|
var _a, _b;
|
|
434
446
|
if (startRow > endRow || 0 === this.rowCount) return 0;
|
|
@@ -472,6 +484,9 @@ export class BaseTable extends EventTarget {
|
|
|
472
484
|
this.colWidthsMap.put(col, "number" == typeof width ? Math.round(width) : width),
|
|
473
485
|
clearCache && this._clearColRangeWidthsMap(col), skipCheckFrozen || this.stateManager.checkFrozen();
|
|
474
486
|
}
|
|
487
|
+
setColWidth(col, width) {
|
|
488
|
+
this.scenegraph.setColWidth(col, width), this.internalProps._widthResizedColMap.add(col);
|
|
489
|
+
}
|
|
475
490
|
_clearColRangeWidthsMap(col) {
|
|
476
491
|
if ("number" != typeof col) this._colRangeWidthsMap.clear(); else {
|
|
477
492
|
const keys = this._colRangeWidthsMap.keys();
|
|
@@ -765,8 +780,10 @@ export class BaseTable extends EventTarget {
|
|
|
765
780
|
IconCache.clearAll(), null === (_e = super.release) || void 0 === _e || _e.call(this),
|
|
766
781
|
null === (_g = null === (_f = internalProps.handler) || void 0 === _f ? void 0 : _f.release) || void 0 === _g || _g.call(_f),
|
|
767
782
|
null === (_j = null === (_h = internalProps.focusControl) || void 0 === _h ? void 0 : _h.release) || void 0 === _j || _j.call(_h),
|
|
768
|
-
null === (_k = internalProps.legends) || void 0 === _k || _k.
|
|
769
|
-
|
|
783
|
+
null === (_k = internalProps.legends) || void 0 === _k || _k.forEach((legend => {
|
|
784
|
+
null == legend || legend.release();
|
|
785
|
+
})), null === (_l = internalProps.title) || void 0 === _l || _l.release(), internalProps.layoutMap.release(),
|
|
786
|
+
internalProps.releaseList && (internalProps.releaseList.forEach((releaseObj => {
|
|
770
787
|
var _a;
|
|
771
788
|
return null === (_a = null == releaseObj ? void 0 : releaseObj.release) || void 0 === _a ? void 0 : _a.call(releaseObj);
|
|
772
789
|
})), internalProps.releaseList = null), this.scenegraph.stage.release(), this.scenegraph.proxy.release();
|
|
@@ -793,7 +810,7 @@ export class BaseTable extends EventTarget {
|
|
|
793
810
|
this.autoFillWidth = null != autoFillWidth && autoFillWidth, this.autoFillHeight = null != autoFillHeight && autoFillHeight,
|
|
794
811
|
this.customRender = customRender;
|
|
795
812
|
const internalProps = this.internalProps;
|
|
796
|
-
"node" !== Env.mode && updateRootElementPadding(internalProps.element, this.padding),
|
|
813
|
+
if ("node" !== Env.mode && updateRootElementPadding(internalProps.element, this.padding),
|
|
797
814
|
this.columnWidthComputeMode = null !== (_a = options.columnWidthComputeMode) && void 0 !== _a ? _a : "normal",
|
|
798
815
|
internalProps.frozenColCount = frozenColCount, internalProps.defaultRowHeight = defaultRowHeight,
|
|
799
816
|
internalProps.defaultHeaderRowHeight = null != defaultHeaderRowHeight ? defaultHeaderRowHeight : defaultRowHeight,
|
|
@@ -814,14 +831,22 @@ export class BaseTable extends EventTarget {
|
|
|
814
831
|
internalProps.limitMaxAutoWidth = null !== (_d = options.limitMaxAutoWidth) && void 0 !== _d ? _d : 450,
|
|
815
832
|
internalProps.limitMinWidth = null != limitMinWidth ? "number" == typeof limitMinWidth ? limitMinWidth : limitMinWidth ? 10 : 0 : 10,
|
|
816
833
|
internalProps.limitMinHeight = null != limitMinHeight ? "number" == typeof limitMinHeight ? limitMinHeight : limitMinHeight ? 10 : 0 : 10,
|
|
817
|
-
this._vDataSet = new DataSet, null === (_e = internalProps.legends) || void 0 === _e || _e.
|
|
818
|
-
|
|
834
|
+
this._vDataSet = new DataSet, null === (_e = internalProps.legends) || void 0 === _e || _e.forEach((legend => {
|
|
835
|
+
null == legend || legend.release();
|
|
836
|
+
})), null === (_f = internalProps.title) || void 0 === _f || _f.release(), internalProps.layoutMap.release(),
|
|
819
837
|
this.scenegraph.clearCells(), this.scenegraph.updateComponent(), this.stateManager.updateOptionSetState(),
|
|
820
|
-
this._updateSize(), this.eventManager.updateEventBinder(), options.legends
|
|
821
|
-
|
|
838
|
+
this._updateSize(), this.eventManager.updateEventBinder(), options.legends) if (internalProps.legends = [],
|
|
839
|
+
Array.isArray(options.legends)) {
|
|
840
|
+
for (let i = 0; i < options.legends.length; i++) internalProps.legends.push(createLegend(options.legends[i], this));
|
|
841
|
+
this.scenegraph.tableGroup.setAttributes({
|
|
842
|
+
x: this.tableX,
|
|
843
|
+
y: this.tableY
|
|
844
|
+
});
|
|
845
|
+
} else internalProps.legends.push(createLegend(options.legends, this)), this.scenegraph.tableGroup.setAttributes({
|
|
822
846
|
x: this.tableX,
|
|
823
847
|
y: this.tableY
|
|
824
|
-
})
|
|
848
|
+
});
|
|
849
|
+
internalProps.tooltip = Object.assign({
|
|
825
850
|
renderMode: "html",
|
|
826
851
|
isShowOverflowTextTooltip: !1,
|
|
827
852
|
confine: !0
|
|
@@ -1022,8 +1047,8 @@ export class BaseTable extends EventTarget {
|
|
|
1022
1047
|
selectCells(cellRanges) {
|
|
1023
1048
|
const {scrollLeft: scrollLeft, scrollTop: scrollTop} = this;
|
|
1024
1049
|
cellRanges.forEach(((cellRange, index) => {
|
|
1025
|
-
cellRange.start.col === cellRange.end.col && cellRange.start.row === cellRange.end.row ? this.stateManager.updateSelectPos(cellRange.start.col, cellRange.start.row, !1, index >= 1) : (this.stateManager.updateSelectPos(cellRange.start.col, cellRange.start.row, !1, index >= 1),
|
|
1026
|
-
this.stateManager.updateInteractionState(InteractionState.grabing), this.stateManager.updateSelectPos(cellRange.end.col, cellRange.end.row, !1, index >= 1)),
|
|
1050
|
+
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),
|
|
1051
|
+
this.stateManager.updateInteractionState(InteractionState.grabing), this.stateManager.updateSelectPos(cellRange.end.col, cellRange.end.row, !1, index >= 1, !1, !1, !0)),
|
|
1027
1052
|
this.stateManager.endSelectCells(!1), this.stateManager.updateInteractionState(InteractionState.default);
|
|
1028
1053
|
})), this.setScrollTop(scrollTop), this.setScrollLeft(scrollLeft);
|
|
1029
1054
|
}
|