@visactor/vtable 0.13.4-alpha.5 → 0.13.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/body-helper/style/CheckboxStyle.d.ts +8 -2
- package/cjs/body-helper/style/CheckboxStyle.js +17 -3
- package/cjs/body-helper/style/CheckboxStyle.js.map +1 -1
- package/cjs/core/BaseTable.d.ts +1 -0
- package/cjs/core/BaseTable.js +27 -2
- package/cjs/core/BaseTable.js.map +1 -1
- package/cjs/header-helper/header-helper.d.ts +2 -1
- package/cjs/header-helper/style/CheckboxStyle.d.ts +8 -2
- package/cjs/header-helper/style/CheckboxStyle.js +15 -1
- package/cjs/header-helper/style/CheckboxStyle.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/layout/pivot-header-layout.js +2 -1
- package/cjs/layout/pivot-header-layout.js.map +1 -1
- package/cjs/render/layout/arc.d.ts +10 -21
- package/cjs/render/layout/arc.js +7 -9
- package/cjs/render/layout/arc.js.map +1 -1
- package/cjs/render/layout/circle.d.ts +10 -17
- package/cjs/render/layout/circle.js +5 -6
- package/cjs/render/layout/circle.js.map +1 -1
- package/cjs/render/layout/container.d.ts +10 -48
- package/cjs/render/layout/container.js +15 -100
- package/cjs/render/layout/container.js.map +1 -1
- package/cjs/render/layout/group-element.d.ts +4 -24
- package/cjs/render/layout/group-element.js +4 -40
- package/cjs/render/layout/group-element.js.map +1 -1
- package/cjs/render/layout/group.d.ts +12 -0
- package/cjs/render/layout/group.js +18 -0
- package/cjs/render/layout/group.js.map +1 -0
- package/cjs/render/layout/icon.d.ts +10 -10
- package/cjs/render/layout/icon.js +11 -9
- package/cjs/render/layout/icon.js.map +1 -1
- package/cjs/render/layout/image.d.ts +10 -17
- package/cjs/render/layout/image.js +6 -7
- package/cjs/render/layout/image.js.map +1 -1
- package/cjs/render/layout/index.d.ts +2 -0
- package/cjs/render/layout/index.js +2 -1
- package/cjs/render/layout/index.js.map +1 -1
- package/cjs/render/layout/percent-calc.d.ts +1 -4
- package/cjs/render/layout/percent-calc.js.map +1 -1
- package/cjs/render/layout/rect.d.ts +10 -20
- package/cjs/render/layout/rect.js +5 -6
- package/cjs/render/layout/rect.js.map +1 -1
- package/cjs/render/layout/tag.d.ts +14 -0
- package/cjs/render/layout/tag.js +21 -0
- package/cjs/render/layout/tag.js.map +1 -0
- package/cjs/render/layout/text.d.ts +9 -46
- package/cjs/render/layout/text.js +8 -18
- package/cjs/render/layout/text.js.map +1 -1
- package/cjs/scenegraph/component/custom.d.ts +2 -2
- package/cjs/scenegraph/component/custom.js +14 -6
- package/cjs/scenegraph/component/custom.js.map +1 -1
- package/cjs/scenegraph/graphic/group.d.ts +6 -2
- package/cjs/scenegraph/graphic/group.js.map +1 -1
- package/cjs/scenegraph/group-creater/cell-helper.d.ts +3 -3
- package/cjs/scenegraph/group-creater/cell-helper.js +40 -40
- package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
- package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.js +22 -3
- package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.js.map +1 -1
- package/cjs/scenegraph/group-creater/cell-type/text-cell.d.ts +2 -2
- package/cjs/scenegraph/group-creater/cell-type/text-cell.js +2 -2
- package/cjs/scenegraph/group-creater/cell-type/text-cell.js.map +1 -1
- package/cjs/scenegraph/group-creater/column-helper.d.ts +3 -2
- package/cjs/scenegraph/group-creater/column-helper.js +78 -46
- package/cjs/scenegraph/group-creater/column-helper.js.map +1 -1
- package/cjs/scenegraph/group-creater/progress/proxy.js +1 -1
- package/cjs/scenegraph/group-creater/progress/proxy.js.map +1 -1
- package/cjs/scenegraph/group-creater/progress/update-position/dynamic-set-x.js +2 -3
- package/cjs/scenegraph/group-creater/progress/update-position/dynamic-set-x.js.map +1 -1
- package/cjs/scenegraph/group-creater/progress/update-position/dynamic-set-y.js +4 -5
- package/cjs/scenegraph/group-creater/progress/update-position/dynamic-set-y.js.map +1 -1
- package/cjs/scenegraph/icon/icon-update.d.ts +17 -0
- package/cjs/scenegraph/icon/icon-update.js +165 -0
- package/cjs/scenegraph/icon/icon-update.js.map +1 -0
- package/cjs/scenegraph/layout/compute-col-width.js +22 -15
- package/cjs/scenegraph/layout/compute-col-width.js.map +1 -1
- package/cjs/scenegraph/layout/compute-row-height.js +49 -15
- package/cjs/scenegraph/layout/compute-row-height.js.map +1 -1
- package/cjs/scenegraph/layout/move-cell.js +8 -27
- package/cjs/scenegraph/layout/move-cell.js.map +1 -1
- package/cjs/scenegraph/layout/update-height.js +37 -25
- package/cjs/scenegraph/layout/update-height.js.map +1 -1
- package/cjs/scenegraph/layout/update-row.js +6 -2
- package/cjs/scenegraph/layout/update-row.js.map +1 -1
- package/cjs/scenegraph/layout/update-width.js +43 -29
- package/cjs/scenegraph/layout/update-width.js.map +1 -1
- package/cjs/scenegraph/scenegraph.d.ts +7 -13
- package/cjs/scenegraph/scenegraph.js +25 -141
- package/cjs/scenegraph/scenegraph.js.map +1 -1
- package/cjs/scenegraph/stick-text/index.js +77 -38
- package/cjs/scenegraph/stick-text/index.js.map +1 -1
- package/cjs/scenegraph/utils/is-merge-cell-group.d.ts +2 -0
- package/cjs/scenegraph/utils/is-merge-cell-group.js +16 -0
- package/cjs/scenegraph/utils/is-merge-cell-group.js.map +1 -0
- package/cjs/scenegraph/utils/text-icon-layout.d.ts +1 -1
- package/cjs/scenegraph/utils/text-icon-layout.js +11 -5
- package/cjs/scenegraph/utils/text-icon-layout.js.map +1 -1
- package/cjs/state/cell-move/index.js +14 -12
- package/cjs/state/cell-move/index.js.map +1 -1
- package/cjs/state/hover/is-cell-hover.js +4 -2
- package/cjs/state/hover/is-cell-hover.js.map +1 -1
- package/cjs/state/hover/update-cell.js +10 -5
- package/cjs/state/hover/update-cell.js.map +1 -1
- package/cjs/state/state.js +1 -1
- package/cjs/state/state.js.map +1 -1
- package/cjs/themes/BRIGHT.js +2 -1
- package/cjs/themes/DARK.js +1 -2
- package/cjs/tools/calc.js +1 -1
- package/cjs/tools/util.js +1 -1
- package/cjs/tools/util.js.map +1 -1
- package/cjs/ts-types/base-table.d.ts +9 -1
- package/cjs/ts-types/base-table.js.map +1 -1
- package/cjs/ts-types/column/style.d.ts +4 -1
- package/cjs/ts-types/column/style.js.map +1 -1
- package/cjs/ts-types/table-engine.d.ts +13 -0
- package/cjs/ts-types/table-engine.js.map +1 -1
- package/dist/vtable.js +23205 -12381
- package/dist/vtable.min.js +2 -2
- package/es/body-helper/style/CheckboxStyle.d.ts +8 -2
- package/es/body-helper/style/CheckboxStyle.js +17 -3
- package/es/body-helper/style/CheckboxStyle.js.map +1 -1
- package/es/core/BaseTable.d.ts +1 -0
- package/es/core/BaseTable.js +27 -2
- package/es/core/BaseTable.js.map +1 -1
- package/es/header-helper/header-helper.d.ts +2 -1
- package/es/header-helper/style/CheckboxStyle.d.ts +8 -2
- package/es/header-helper/style/CheckboxStyle.js +15 -1
- package/es/header-helper/style/CheckboxStyle.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/layout/pivot-header-layout.js +2 -1
- package/es/layout/pivot-header-layout.js.map +1 -1
- package/es/render/layout/arc.d.ts +10 -21
- package/es/render/layout/arc.js +7 -7
- package/es/render/layout/arc.js.map +1 -1
- package/es/render/layout/circle.d.ts +10 -17
- package/es/render/layout/circle.js +7 -6
- package/es/render/layout/circle.js.map +1 -1
- package/es/render/layout/container.d.ts +10 -48
- package/es/render/layout/container.js +16 -107
- package/es/render/layout/container.js.map +1 -1
- package/es/render/layout/group-element.d.ts +4 -24
- package/es/render/layout/group-element.js +4 -42
- package/es/render/layout/group-element.js.map +1 -1
- package/es/render/layout/group.d.ts +12 -0
- package/es/render/layout/group.js +12 -0
- package/es/render/layout/group.js.map +1 -0
- package/es/render/layout/icon.d.ts +10 -10
- package/es/render/layout/icon.js +12 -10
- package/es/render/layout/icon.js.map +1 -1
- package/es/render/layout/image.d.ts +10 -17
- package/es/render/layout/image.js +8 -7
- package/es/render/layout/image.js.map +1 -1
- package/es/render/layout/index.d.ts +2 -0
- package/es/render/layout/index.js +4 -0
- package/es/render/layout/index.js.map +1 -1
- package/es/render/layout/percent-calc.d.ts +1 -4
- package/es/render/layout/percent-calc.js.map +1 -1
- package/es/render/layout/rect.d.ts +10 -20
- package/es/render/layout/rect.js +7 -6
- package/es/render/layout/rect.js.map +1 -1
- package/es/render/layout/tag.d.ts +14 -0
- package/es/render/layout/tag.js +15 -0
- package/es/render/layout/tag.js.map +1 -0
- package/es/render/layout/text.d.ts +9 -46
- package/es/render/layout/text.js +10 -18
- package/es/render/layout/text.js.map +1 -1
- package/es/scenegraph/component/custom.d.ts +2 -2
- package/es/scenegraph/component/custom.js +15 -7
- package/es/scenegraph/component/custom.js.map +1 -1
- package/es/scenegraph/graphic/group.d.ts +6 -2
- package/es/scenegraph/graphic/group.js.map +1 -1
- package/es/scenegraph/group-creater/cell-helper.d.ts +3 -3
- package/es/scenegraph/group-creater/cell-helper.js +41 -40
- package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
- package/es/scenegraph/group-creater/cell-type/checkbox-cell.js +22 -2
- package/es/scenegraph/group-creater/cell-type/checkbox-cell.js.map +1 -1
- package/es/scenegraph/group-creater/cell-type/text-cell.d.ts +2 -2
- package/es/scenegraph/group-creater/cell-type/text-cell.js +2 -2
- package/es/scenegraph/group-creater/cell-type/text-cell.js.map +1 -1
- package/es/scenegraph/group-creater/column-helper.d.ts +3 -2
- package/es/scenegraph/group-creater/column-helper.js +75 -44
- package/es/scenegraph/group-creater/column-helper.js.map +1 -1
- package/es/scenegraph/group-creater/progress/proxy.js +1 -1
- package/es/scenegraph/group-creater/progress/proxy.js.map +1 -1
- package/es/scenegraph/group-creater/progress/update-position/dynamic-set-x.js +3 -4
- package/es/scenegraph/group-creater/progress/update-position/dynamic-set-x.js.map +1 -1
- package/es/scenegraph/group-creater/progress/update-position/dynamic-set-y.js +3 -6
- package/es/scenegraph/group-creater/progress/update-position/dynamic-set-y.js.map +1 -1
- package/es/scenegraph/icon/icon-update.d.ts +17 -0
- package/es/scenegraph/icon/icon-update.js +154 -0
- package/es/scenegraph/icon/icon-update.js.map +1 -0
- package/es/scenegraph/layout/compute-col-width.js +23 -14
- package/es/scenegraph/layout/compute-col-width.js.map +1 -1
- package/es/scenegraph/layout/compute-row-height.js +51 -15
- package/es/scenegraph/layout/compute-row-height.js.map +1 -1
- package/es/scenegraph/layout/move-cell.js +8 -27
- package/es/scenegraph/layout/move-cell.js.map +1 -1
- package/es/scenegraph/layout/update-height.js +39 -23
- package/es/scenegraph/layout/update-height.js.map +1 -1
- package/es/scenegraph/layout/update-row.js +6 -1
- package/es/scenegraph/layout/update-row.js.map +1 -1
- package/es/scenegraph/layout/update-width.js +45 -27
- package/es/scenegraph/layout/update-width.js.map +1 -1
- package/es/scenegraph/scenegraph.d.ts +7 -13
- package/es/scenegraph/scenegraph.js +25 -142
- package/es/scenegraph/scenegraph.js.map +1 -1
- package/es/scenegraph/stick-text/index.js +75 -38
- package/es/scenegraph/stick-text/index.js.map +1 -1
- package/es/scenegraph/utils/is-merge-cell-group.d.ts +2 -0
- package/es/scenegraph/utils/is-merge-cell-group.js +6 -0
- package/es/scenegraph/utils/is-merge-cell-group.js.map +1 -0
- package/es/scenegraph/utils/text-icon-layout.d.ts +1 -1
- package/es/scenegraph/utils/text-icon-layout.js +11 -5
- package/es/scenegraph/utils/text-icon-layout.js.map +1 -1
- package/es/state/cell-move/index.js +14 -12
- package/es/state/cell-move/index.js.map +1 -1
- package/es/state/hover/is-cell-hover.js +3 -1
- package/es/state/hover/is-cell-hover.js.map +1 -1
- package/es/state/hover/update-cell.js +4 -2
- package/es/state/hover/update-cell.js.map +1 -1
- package/es/state/state.js +1 -1
- package/es/state/state.js.map +1 -1
- package/es/themes/BRIGHT.js +2 -1
- package/es/themes/DARK.js +1 -2
- package/es/tools/calc.js +1 -1
- package/es/tools/util.js +1 -1
- package/es/tools/util.js.map +1 -1
- package/es/ts-types/base-table.d.ts +9 -1
- package/es/ts-types/base-table.js.map +1 -1
- package/es/ts-types/column/style.d.ts +4 -1
- package/es/ts-types/column/style.js.map +1 -1
- package/es/ts-types/table-engine.d.ts +13 -0
- package/es/ts-types/table-engine.js.map +1 -1
- package/package.json +2 -2
- package/cjs/scenegraph/header-icon/layout.d.ts +0 -3
- package/cjs/scenegraph/header-icon/layout.js +0 -75
- package/cjs/scenegraph/header-icon/layout.js.map +0 -1
- package/cjs/scenegraph/hover-state.d.ts +0 -14
- package/cjs/scenegraph/hover-state.js +0 -27
- package/cjs/scenegraph/hover-state.js.map +0 -1
- package/es/scenegraph/header-icon/layout.d.ts +0 -3
- package/es/scenegraph/header-icon/layout.js +0 -69
- package/es/scenegraph/header-icon/layout.js.map +0 -1
- package/es/scenegraph/hover-state.d.ts +0 -14
- package/es/scenegraph/hover-state.js +0 -19
- package/es/scenegraph/hover-state.js.map +0 -1
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: !0
|
|
5
|
-
}), exports.HoverState = void 0;
|
|
6
|
-
|
|
7
|
-
class HoverState {
|
|
8
|
-
constructor(table) {
|
|
9
|
-
this.highlightMode = "cell", this.cell = {
|
|
10
|
-
row: -1,
|
|
11
|
-
col: -1
|
|
12
|
-
}, this.disableHeaderHover = !1, this.table = table;
|
|
13
|
-
}
|
|
14
|
-
get state() {
|
|
15
|
-
return this._state;
|
|
16
|
-
}
|
|
17
|
-
set state(state) {
|
|
18
|
-
state && this._state && (state.address.col !== this._state.address.col || state.address.row !== this._state.address.row) ? (this.table.scenegraph.update(this.table.scenegraph.getCell(this._state.address.col, this._state.address.row), state.address.col, state.address.row, 0, "fill", "normal"),
|
|
19
|
-
this.table.scenegraph.update(this.table.scenegraph.getCell(state.address.col, state.address.row), state.address.col, state.address.row, 0, "fill", "#c8daf6"),
|
|
20
|
-
this._state = state) : !state && this._state ? (this.table.scenegraph.update(this.table.scenegraph.getCell(this._state.address.col, this._state.address.row), this._state.address.col, this._state.address.row, 0, "fill", "normal"),
|
|
21
|
-
this._state = state) : state && !this._state && (this.table.scenegraph.update(this.table.scenegraph.getCell(state.address.col, state.address.row), state.address.col, state.address.row, 0, "fill", "#c8daf6"),
|
|
22
|
-
this._state = state);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
exports.HoverState = HoverState;
|
|
27
|
-
//# sourceMappingURL=hover-state.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["scenegraph/hover-state.ts"],"names":[],"mappings":";;;AAAA,MAAa,UAAU;IAQrB,YAAY,KAAU;QACpB,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC;QACjC,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAI,KAAK,CAAC,KAAK;QACb,IACE,KAAK;YACL,IAAI,CAAC,MAAM;YACX,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAChG;YACA,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAC1B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAC/E,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,CAAC,EACD,MAAM,EACN,QAAQ,CACT,CAAC;YAEF,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAC1B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EACnE,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,CAAC,EACD,MAAM,EACN,SAAS,CACV,CAAC;YAEF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;SACrB;aAAM,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;YAChC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAC1B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAC/E,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EACvB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EACvB,CAAC,EACD,MAAM,EACN,QAAQ,CACT,CAAC;YAEF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;SACrB;aAAM,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAC1B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EACnE,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,CAAC,EACD,MAAM,EACN,SAAS,CACV,CAAC;YAEF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;SACrB;IACH,CAAC;CACF;AApED,gCAoEC","file":"hover-state.js","sourcesContent":["export class HoverState {\n highlightMode: 'cross' | 'column' | 'row' | 'cell';\n disableHover: boolean;\n disableHeaderHover: boolean;\n cell: { row: number; col: number };\n _state: any;\n table: any;\n\n constructor(table: any) {\n this.highlightMode = 'cell';\n this.cell = { row: -1, col: -1 };\n this.disableHeaderHover = false;\n this.table = table;\n }\n\n get state() {\n return this._state;\n }\n\n set state(state) {\n if (\n state &&\n this._state &&\n (state.address.col !== this._state.address.col || state.address.row !== this._state.address.row)\n ) {\n this.table.scenegraph.update(\n this.table.scenegraph.getCell(this._state.address.col, this._state.address.row),\n state.address.col,\n state.address.row,\n 0,\n 'fill',\n 'normal'\n );\n\n this.table.scenegraph.update(\n this.table.scenegraph.getCell(state.address.col, state.address.row),\n state.address.col,\n state.address.row,\n 0,\n 'fill',\n '#c8daf6'\n );\n\n this._state = state;\n } else if (!state && this._state) {\n this.table.scenegraph.update(\n this.table.scenegraph.getCell(this._state.address.col, this._state.address.row),\n this._state.address.col,\n this._state.address.row,\n 0,\n 'fill',\n 'normal'\n );\n\n this._state = state;\n } else if (state && !this._state) {\n this.table.scenegraph.update(\n this.table.scenegraph.getCell(state.address.col, state.address.row),\n state.address.col,\n state.address.row,\n 0,\n 'fill',\n '#c8daf6'\n );\n\n this._state = state;\n }\n }\n}\n"]}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import type { Group } from '@visactor/vrender';
|
|
2
|
-
import type { ColumnIconOption } from '../../ts-types';
|
|
3
|
-
export declare function iconLayout(icons: ColumnIconOption[], cellGroup: Group, padding: number[], width: number, height: number, textWidth: number, textAlign: CanvasTextAlign): number;
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import { IconPosition } from "../../ts-types";
|
|
2
|
-
|
|
3
|
-
import { Icon } from "../graphic/icon";
|
|
4
|
-
|
|
5
|
-
function createIcon(option) {
|
|
6
|
-
const icon = new Icon(option);
|
|
7
|
-
return icon.role = "icon", icon;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export function iconLayout(icons, cellGroup, padding, width, height, textWidth, textAlign) {
|
|
11
|
-
const absoluteRightIcons = null == icons ? void 0 : icons.filter((value => value.positionType === IconPosition.absoluteRight)), absoluteRightIconsWidths = absoluteRightIcons.map((icon => icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0))), totalAbsoluteRightIconWidth = absoluteRightIconsWidths.reduce(((a, b) => a + b), 0), rightIcons = null == icons ? void 0 : icons.filter((value => value.positionType === IconPosition.right)), rightIconsWidths = rightIcons.map((icon => icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0))), totalRightIconWidth = rightIconsWidths.reduce(((a, b) => a + b), 0), leftIcons = null == icons ? void 0 : icons.filter((value => value.positionType === IconPosition.left)), leftIconsWidths = leftIcons.map((icon => icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0))), totalLeftIconWidth = leftIconsWidths.reduce(((a, b) => a + b), 0), middleFrontIcons = null == icons ? void 0 : icons.filter((value => value.positionType === IconPosition.inlineFront)), middleFrontIconsWidths = middleFrontIcons.map((icon => icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0))), totalMiddleFrontIconWidth = middleFrontIconsWidths.reduce(((a, b) => a + b), 0), middleEndIcons = null == icons ? void 0 : icons.filter((value => value.positionType === IconPosition.inlineEnd)), middleEndIconsWidths = middleEndIcons.map((icon => icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0))), totalMiddleEndIconWidth = middleEndIconsWidths.reduce(((a, b) => a + b), 0);
|
|
12
|
-
let rightIconsLeft = width - padding[1] - totalRightIconWidth, leftIconsLeft = padding[3];
|
|
13
|
-
rightIcons.forEach(((icon, index) => {
|
|
14
|
-
const image = createIcon({
|
|
15
|
-
x: rightIconsLeft,
|
|
16
|
-
y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,
|
|
17
|
-
width: icon.width,
|
|
18
|
-
height: icon.height,
|
|
19
|
-
image: icon.svg
|
|
20
|
-
});
|
|
21
|
-
cellGroup.addChild(image), rightIconsLeft += rightIconsWidths[index];
|
|
22
|
-
})), leftIcons.forEach(((icon, index) => {
|
|
23
|
-
const image = createIcon({
|
|
24
|
-
x: leftIconsLeft,
|
|
25
|
-
y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,
|
|
26
|
-
width: icon.width,
|
|
27
|
-
height: icon.height,
|
|
28
|
-
image: icon.svg
|
|
29
|
-
});
|
|
30
|
-
cellGroup.addChild(image), leftIconsLeft += leftIconsWidths[index];
|
|
31
|
-
}));
|
|
32
|
-
let middleFrontIconsLeft = leftIconsLeft, middleEndIconsLeft = padding[3] + totalLeftIconWidth + totalMiddleFrontIconWidth + textWidth;
|
|
33
|
-
if ("right" === textAlign) middleFrontIconsLeft = width - padding[1] - totalRightIconWidth - totalMiddleEndIconWidth - textWidth - totalMiddleFrontIconWidth,
|
|
34
|
-
middleEndIconsLeft = width - padding[1] - totalRightIconWidth - totalMiddleEndIconWidth; else if ("center" === textAlign) {
|
|
35
|
-
const centerX = padding[1] + (width - padding[1] - padding[3]) / 2;
|
|
36
|
-
middleFrontIconsLeft = centerX - textWidth / 2 - totalMiddleFrontIconWidth, middleEndIconsLeft = centerX + textWidth / 2;
|
|
37
|
-
}
|
|
38
|
-
middleFrontIcons.forEach(((icon, index) => {
|
|
39
|
-
const image = createIcon({
|
|
40
|
-
x: middleFrontIconsLeft,
|
|
41
|
-
y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,
|
|
42
|
-
width: icon.width,
|
|
43
|
-
height: icon.height,
|
|
44
|
-
image: icon.svg
|
|
45
|
-
});
|
|
46
|
-
cellGroup.addChild(image), middleFrontIconsLeft += middleFrontIconsWidths[index];
|
|
47
|
-
})), middleEndIcons.forEach(((icon, index) => {
|
|
48
|
-
const image = createIcon({
|
|
49
|
-
x: middleEndIconsLeft,
|
|
50
|
-
y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,
|
|
51
|
-
width: icon.width,
|
|
52
|
-
height: icon.height,
|
|
53
|
-
image: icon.svg
|
|
54
|
-
});
|
|
55
|
-
cellGroup.addChild(image), middleEndIconsLeft += middleEndIconsWidths[index];
|
|
56
|
-
}));
|
|
57
|
-
let absoluteRightIconsLeft = width - totalAbsoluteRightIconWidth;
|
|
58
|
-
return absoluteRightIcons.forEach(((icon, index) => {
|
|
59
|
-
const image = createIcon({
|
|
60
|
-
x: absoluteRightIconsLeft,
|
|
61
|
-
y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,
|
|
62
|
-
width: icon.width,
|
|
63
|
-
height: icon.height,
|
|
64
|
-
image: icon.svg
|
|
65
|
-
});
|
|
66
|
-
cellGroup.addChild(image), absoluteRightIconsLeft += absoluteRightIconsWidths[index];
|
|
67
|
-
})), "right" === textAlign ? -totalRightIconWidth - totalMiddleEndIconWidth : "center" === textAlign ? 0 : totalLeftIconWidth + totalMiddleFrontIconWidth;
|
|
68
|
-
}
|
|
69
|
-
//# sourceMappingURL=layout.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["scenegraph/header-icon/layout.ts"],"names":[],"mappings":"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","file":"layout.js","sourcesContent":["import type { Group, IImageGraphicAttribute } from '@visactor/vrender';\nimport type { ColumnIconOption } from '../../ts-types';\nimport { IconPosition } from '../../ts-types';\nimport { Icon } from '../graphic/icon';\n\nfunction createIcon(option: IImageGraphicAttribute): Icon {\n const icon = new Icon(option);\n icon.role = 'icon';\n return icon;\n}\n\nexport function iconLayout(\n icons: ColumnIconOption[],\n cellGroup: Group,\n padding: number[],\n width: number,\n height: number,\n textWidth: number,\n textAlign: CanvasTextAlign\n): number {\n // icons.forEach((icon, index) => {\n // const image = createIcon({\n // x: 100 + index * 20,\n // y: 20,\n // width: icon.width,\n // height: icon.height,\n // image: (<any>icon).svg,\n // });\n // cellGroup.addChild(image);\n // });\n\n //图标的inline对象\n const absoluteRightIcons = icons?.filter((value: ColumnIconOption) => {\n if (value.positionType === IconPosition.absoluteRight) {\n return true;\n }\n return false;\n });\n const absoluteRightIconsWidths = absoluteRightIcons.map(icon => {\n return icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0);\n });\n const totalAbsoluteRightIconWidth = absoluteRightIconsWidths.reduce((a: number, b: number) => {\n return a + b;\n }, 0);\n\n const rightIcons = icons?.filter((value: ColumnIconOption) => {\n if (value.positionType === IconPosition.right) {\n return true;\n }\n return false;\n });\n const rightIconsWidths = rightIcons.map(icon => {\n return icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0);\n });\n const totalRightIconWidth = rightIconsWidths.reduce((a: number, b: number) => {\n return a + b;\n }, 0);\n\n const leftIcons = icons?.filter((value: ColumnIconOption) => {\n if (value.positionType === IconPosition.left) {\n return true;\n }\n return false;\n });\n const leftIconsWidths = leftIcons.map(icon => {\n return icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0);\n });\n const totalLeftIconWidth = leftIconsWidths.reduce((a: number, b: number) => {\n return a + b;\n }, 0);\n\n // TODO: 处理行内换行图标\n const middleFrontIcons = icons?.filter((value: ColumnIconOption) => {\n if (value.positionType === IconPosition.inlineFront) {\n return true;\n }\n return false;\n });\n const middleFrontIconsWidths = middleFrontIcons.map(icon => {\n return icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0);\n });\n const totalMiddleFrontIconWidth = middleFrontIconsWidths.reduce((a: number, b: number) => {\n return a + b;\n }, 0);\n\n const middleEndIcons = icons?.filter((value: ColumnIconOption) => {\n if (value.positionType === IconPosition.inlineEnd) {\n return true;\n }\n return false;\n });\n const middleEndIconsWidths = middleEndIcons.map(icon => {\n return icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0);\n });\n const totalMiddleEndIconWidth = middleEndIconsWidths.reduce((a: number, b: number) => {\n return a + b;\n }, 0);\n\n let rightIconsLeft = width - padding[1] - totalRightIconWidth;\n let leftIconsLeft = padding[3];\n\n // 处理右侧图标\n // let rightIconsLeft = width - padding[1] - totalRightIconWidth;\n rightIcons.forEach((icon, index) => {\n const image = createIcon({\n x: rightIconsLeft,\n y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,\n width: icon.width,\n height: icon.height,\n image: (<any>icon).svg\n });\n cellGroup.addChild(image);\n\n rightIconsLeft += rightIconsWidths[index];\n });\n\n // 处理左侧图标\n // let leftIconsLeft = padding[3];\n leftIcons.forEach((icon, index) => {\n const image = createIcon({\n x: leftIconsLeft,\n y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,\n width: icon.width,\n height: icon.height,\n image: (<any>icon).svg\n });\n cellGroup.addChild(image);\n\n leftIconsLeft += leftIconsWidths[index];\n });\n\n // textAlign === 'left'\n let middleFrontIconsLeft = leftIconsLeft;\n let middleEndIconsLeft = padding[3] + totalLeftIconWidth + totalMiddleFrontIconWidth + textWidth;\n if (textAlign === 'right') {\n middleFrontIconsLeft =\n width - padding[1] - totalRightIconWidth - totalMiddleEndIconWidth - textWidth - totalMiddleFrontIconWidth;\n middleEndIconsLeft = width - padding[1] - totalRightIconWidth - totalMiddleEndIconWidth;\n } else if (textAlign === 'center') {\n const centerX = padding[1] + (width - padding[1] - padding[3]) / 2;\n middleFrontIconsLeft = centerX - textWidth / 2 - totalMiddleFrontIconWidth;\n middleEndIconsLeft = centerX + textWidth / 2;\n }\n\n // 处理行内左侧图标\n middleFrontIcons.forEach((icon, index) => {\n const image = createIcon({\n x: middleFrontIconsLeft,\n y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,\n width: icon.width,\n height: icon.height,\n image: (<any>icon).svg\n });\n cellGroup.addChild(image);\n\n middleFrontIconsLeft += middleFrontIconsWidths[index];\n });\n\n // 处理行内右侧图标\n // let middleEndIconsLeft = padding[3] + totalLeftIconWidth + totalMiddleFrontIconWidth + textWidth;\n middleEndIcons.forEach((icon, index) => {\n const image = createIcon({\n x: middleEndIconsLeft,\n y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,\n width: icon.width,\n height: icon.height,\n image: (<any>icon).svg\n });\n cellGroup.addChild(image);\n\n middleEndIconsLeft += middleEndIconsWidths[index];\n });\n\n // 处理absolute右侧图标\n let absoluteRightIconsLeft = width - totalAbsoluteRightIconWidth;\n absoluteRightIcons.forEach((icon, index) => {\n const image = createIcon({\n x: absoluteRightIconsLeft,\n y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,\n width: icon.width,\n height: icon.height,\n image: (<any>icon).svg\n });\n cellGroup.addChild(image);\n\n absoluteRightIconsLeft += absoluteRightIconsWidths[index];\n });\n\n if (textAlign === 'right') {\n return -totalRightIconWidth - totalMiddleEndIconWidth;\n } else if (textAlign === 'center') {\n return 0;\n }\n // textAlign === 'left'\n return totalLeftIconWidth + totalMiddleFrontIconWidth;\n}\n"]}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export declare class HoverState {
|
|
2
|
-
highlightMode: 'cross' | 'column' | 'row' | 'cell';
|
|
3
|
-
disableHover: boolean;
|
|
4
|
-
disableHeaderHover: boolean;
|
|
5
|
-
cell: {
|
|
6
|
-
row: number;
|
|
7
|
-
col: number;
|
|
8
|
-
};
|
|
9
|
-
_state: any;
|
|
10
|
-
table: any;
|
|
11
|
-
constructor(table: any);
|
|
12
|
-
get state(): any;
|
|
13
|
-
set state(state: any);
|
|
14
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
export class HoverState {
|
|
2
|
-
constructor(table) {
|
|
3
|
-
this.highlightMode = "cell", this.cell = {
|
|
4
|
-
row: -1,
|
|
5
|
-
col: -1
|
|
6
|
-
}, this.disableHeaderHover = !1, this.table = table;
|
|
7
|
-
}
|
|
8
|
-
get state() {
|
|
9
|
-
return this._state;
|
|
10
|
-
}
|
|
11
|
-
set state(state) {
|
|
12
|
-
state && this._state && (state.address.col !== this._state.address.col || state.address.row !== this._state.address.row) ? (this.table.scenegraph.update(this.table.scenegraph.getCell(this._state.address.col, this._state.address.row), state.address.col, state.address.row, 0, "fill", "normal"),
|
|
13
|
-
this.table.scenegraph.update(this.table.scenegraph.getCell(state.address.col, state.address.row), state.address.col, state.address.row, 0, "fill", "#c8daf6"),
|
|
14
|
-
this._state = state) : !state && this._state ? (this.table.scenegraph.update(this.table.scenegraph.getCell(this._state.address.col, this._state.address.row), this._state.address.col, this._state.address.row, 0, "fill", "normal"),
|
|
15
|
-
this._state = state) : state && !this._state && (this.table.scenegraph.update(this.table.scenegraph.getCell(state.address.col, state.address.row), state.address.col, state.address.row, 0, "fill", "#c8daf6"),
|
|
16
|
-
this._state = state);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
//# sourceMappingURL=hover-state.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["scenegraph/hover-state.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,UAAU;IAQrB,YAAY,KAAU;QACpB,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC;QACjC,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAI,KAAK,CAAC,KAAK;QACb,IACE,KAAK;YACL,IAAI,CAAC,MAAM;YACX,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAChG;YACA,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAC1B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAC/E,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,CAAC,EACD,MAAM,EACN,QAAQ,CACT,CAAC;YAEF,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAC1B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EACnE,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,CAAC,EACD,MAAM,EACN,SAAS,CACV,CAAC;YAEF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;SACrB;aAAM,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;YAChC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAC1B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAC/E,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EACvB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EACvB,CAAC,EACD,MAAM,EACN,QAAQ,CACT,CAAC;YAEF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;SACrB;aAAM,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAC1B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EACnE,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,CAAC,EACD,MAAM,EACN,SAAS,CACV,CAAC;YAEF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;SACrB;IACH,CAAC;CACF","file":"hover-state.js","sourcesContent":["export class HoverState {\n highlightMode: 'cross' | 'column' | 'row' | 'cell';\n disableHover: boolean;\n disableHeaderHover: boolean;\n cell: { row: number; col: number };\n _state: any;\n table: any;\n\n constructor(table: any) {\n this.highlightMode = 'cell';\n this.cell = { row: -1, col: -1 };\n this.disableHeaderHover = false;\n this.table = table;\n }\n\n get state() {\n return this._state;\n }\n\n set state(state) {\n if (\n state &&\n this._state &&\n (state.address.col !== this._state.address.col || state.address.row !== this._state.address.row)\n ) {\n this.table.scenegraph.update(\n this.table.scenegraph.getCell(this._state.address.col, this._state.address.row),\n state.address.col,\n state.address.row,\n 0,\n 'fill',\n 'normal'\n );\n\n this.table.scenegraph.update(\n this.table.scenegraph.getCell(state.address.col, state.address.row),\n state.address.col,\n state.address.row,\n 0,\n 'fill',\n '#c8daf6'\n );\n\n this._state = state;\n } else if (!state && this._state) {\n this.table.scenegraph.update(\n this.table.scenegraph.getCell(this._state.address.col, this._state.address.row),\n this._state.address.col,\n this._state.address.row,\n 0,\n 'fill',\n 'normal'\n );\n\n this._state = state;\n } else if (state && !this._state) {\n this.table.scenegraph.update(\n this.table.scenegraph.getCell(state.address.col, state.address.row),\n state.address.col,\n state.address.row,\n 0,\n 'fill',\n '#c8daf6'\n );\n\n this._state = state;\n }\n }\n}\n"]}
|