@visactor/vtable 0.9.3-alpha.2 → 0.9.3-alpha.3

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.
Files changed (75) hide show
  1. package/cjs/components/menu/dom/MenuHandler.js +1 -1
  2. package/cjs/components/menu/dom/MenuHandler.js.map +1 -1
  3. package/cjs/components/menu/dom/logic/MenuContainer.js +3 -1
  4. package/cjs/components/menu/dom/logic/MenuContainer.js.map +1 -1
  5. package/cjs/components/menu/dom/logic/MenuElement.js +11 -7
  6. package/cjs/components/menu/dom/logic/MenuElement.js.map +1 -1
  7. package/cjs/components/tooltip/TooltipHandler.js +1 -1
  8. package/cjs/components/tooltip/TooltipHandler.js.map +1 -1
  9. package/cjs/core/BaseTable.d.ts +2 -11
  10. package/cjs/core/BaseTable.js +14 -25
  11. package/cjs/core/BaseTable.js.map +1 -1
  12. package/cjs/event/event.d.ts +1 -1
  13. package/cjs/event/event.js +2 -2
  14. package/cjs/event/event.js.map +1 -1
  15. package/cjs/event/listener/table-group.js +28 -21
  16. package/cjs/event/listener/table-group.js.map +1 -1
  17. package/cjs/index.d.ts +1 -1
  18. package/cjs/index.js +1 -1
  19. package/cjs/index.js.map +1 -1
  20. package/cjs/scenegraph/group-creater/cell-helper.js +4 -2
  21. package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
  22. package/cjs/scenegraph/group-creater/cell-type/text-cell.js +2 -2
  23. package/cjs/scenegraph/group-creater/cell-type/text-cell.js.map +1 -1
  24. package/cjs/scenegraph/layout/compute-col-width.js +7 -6
  25. package/cjs/scenegraph/layout/compute-col-width.js.map +1 -1
  26. package/cjs/scenegraph/scenegraph.js +9 -8
  27. package/cjs/scenegraph/scenegraph.js.map +1 -1
  28. package/cjs/scenegraph/utils/text-icon-layout.js +1 -1
  29. package/cjs/scenegraph/utils/text-icon-layout.js.map +1 -1
  30. package/cjs/state/state.d.ts +2 -1
  31. package/cjs/state/state.js +8 -6
  32. package/cjs/state/state.js.map +1 -1
  33. package/cjs/themes/theme.js +2 -2
  34. package/cjs/themes/theme.js.map +1 -1
  35. package/cjs/ts-types/base-table.d.ts +2 -1
  36. package/cjs/ts-types/base-table.js.map +1 -1
  37. package/dist/vtable.js +120 -88
  38. package/dist/vtable.min.js +2 -2
  39. package/es/components/menu/dom/MenuHandler.js +1 -1
  40. package/es/components/menu/dom/MenuHandler.js.map +1 -1
  41. package/es/components/menu/dom/logic/MenuContainer.js +3 -1
  42. package/es/components/menu/dom/logic/MenuContainer.js.map +1 -1
  43. package/es/components/menu/dom/logic/MenuElement.js +11 -7
  44. package/es/components/menu/dom/logic/MenuElement.js.map +1 -1
  45. package/es/components/tooltip/TooltipHandler.js +1 -1
  46. package/es/components/tooltip/TooltipHandler.js.map +1 -1
  47. package/es/core/BaseTable.d.ts +2 -11
  48. package/es/core/BaseTable.js +14 -25
  49. package/es/core/BaseTable.js.map +1 -1
  50. package/es/event/event.d.ts +1 -1
  51. package/es/event/event.js +2 -2
  52. package/es/event/event.js.map +1 -1
  53. package/es/event/listener/table-group.js +28 -21
  54. package/es/event/listener/table-group.js.map +1 -1
  55. package/es/index.d.ts +1 -1
  56. package/es/index.js +1 -1
  57. package/es/index.js.map +1 -1
  58. package/es/scenegraph/group-creater/cell-helper.js +4 -2
  59. package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
  60. package/es/scenegraph/group-creater/cell-type/text-cell.js +2 -2
  61. package/es/scenegraph/group-creater/cell-type/text-cell.js.map +1 -1
  62. package/es/scenegraph/layout/compute-col-width.js +7 -6
  63. package/es/scenegraph/layout/compute-col-width.js.map +1 -1
  64. package/es/scenegraph/scenegraph.js +9 -8
  65. package/es/scenegraph/scenegraph.js.map +1 -1
  66. package/es/scenegraph/utils/text-icon-layout.js +1 -1
  67. package/es/scenegraph/utils/text-icon-layout.js.map +1 -1
  68. package/es/state/state.d.ts +2 -1
  69. package/es/state/state.js +8 -6
  70. package/es/state/state.js.map +1 -1
  71. package/es/themes/theme.js +2 -2
  72. package/es/themes/theme.js.map +1 -1
  73. package/es/ts-types/base-table.d.ts +2 -1
  74. package/es/ts-types/base-table.js.map +1 -1
  75. package/package.json +1 -1
@@ -73,7 +73,7 @@ export class BaseTable extends EventTarget {
73
73
  constructor(options = {}) {
74
74
  var _a, _b, _c, _d, _e, _f, _g;
75
75
  super(), this.showFrozenIcon = !0, this.showSort = !0, this.bottomFrozenRowCount = 0,
76
- this.rightFrozenColCount = 0, this.version = "0.9.3-alpha.2", this.id = `VTable${Date.now()}`,
76
+ this.rightFrozenColCount = 0, this.version = "0.9.3-alpha.3", this.id = `VTable${Date.now()}`,
77
77
  this.throttleInvalidate = throttle2(this.invalidate.bind(this), 200);
78
78
  const {frozenColCount: frozenColCount = 0, defaultRowHeight: defaultRowHeight = 40, defaultHeaderRowHeight: defaultHeaderRowHeight, defaultColWidth: defaultColWidth = 80, defaultHeaderColWidth: defaultHeaderColWidth, widthMode: widthMode = "standard", heightMode: heightMode = "standard", autoFillWidth: autoFillWidth = !1, keyboardOptions: keyboardOptions, parentElement: parentElement, columnResizeMode: columnResizeMode, dragHeaderMode: dragHeaderMode, showFrozenIcon: showFrozenIcon, allowFrozenColCount: allowFrozenColCount, padding: padding, hover: hover, menu: menu, select: click, customRender: customRender, pixelRatio: pixelRatio = defaultPixelRatio} = options;
79
79
  this.options = options, this._widthMode = widthMode, this._heightMode = heightMode,
@@ -402,7 +402,7 @@ export class BaseTable extends EventTarget {
402
402
  height;
403
403
  }
404
404
  let h = 0;
405
- if ("standard" === this.heightMode && this.internalProps.layoutMap && endRow >= this.columnHeaderLevelCount && !this.bottomFrozenRowCount) {
405
+ if ("standard" === this.heightMode && this.internalProps.layoutMap && endRow >= this.columnHeaderLevelCount && !this.bottomFrozenRowCount && !this.hasAutoImageColumn()) {
406
406
  for (let i = startRow; i < this.columnHeaderLevelCount; i++) h += this.getRowHeight(i);
407
407
  h += this.defaultRowHeight * (endRow - Math.max(this.columnHeaderLevelCount, startRow) + 1);
408
408
  } else for (let i = startRow; i <= endRow; i++) h += this.getRowHeight(i);
@@ -754,34 +754,20 @@ export class BaseTable extends EventTarget {
754
754
  }
755
755
  _getMouseAbstractPoint(evt, isAddScroll = !0) {
756
756
  let e;
757
- if (!evt) return null;
757
+ if (!evt) return {
758
+ inTable: !1,
759
+ x: void 0,
760
+ y: void 0
761
+ };
758
762
  e = isTouchEvent(evt) ? evt.changedTouches[0] : evt;
759
763
  const clientX = e.clientX || e.pageX + window.scrollX, clientY = e.clientY || e.pageY + window.scrollY, rect = this.internalProps.canvas.getBoundingClientRect();
760
- if (rect.right <= clientX) return null;
761
- if (rect.bottom <= clientY) return null;
764
+ let inTable = !0;
765
+ rect.right <= clientX && (inTable = !1), rect.bottom <= clientY && (inTable = !1);
762
766
  const currentWidth = rect.width, widthRatio = currentWidth / (this.canvas.offsetWidth || currentWidth), currentHeight = rect.height, heightRatio = currentHeight / (this.canvas.offsetHeight || currentHeight);
763
767
  return {
764
768
  x: (clientX - rect.left) / widthRatio + (isAddScroll ? this.scrollLeft : 0) - this.tableX,
765
- y: (clientY - rect.top) / heightRatio + (isAddScroll ? this.scrollTop : 0) - this.tableY
766
- };
767
- }
768
- _getCellEventArgsSet(e) {
769
- const abstractPos = this._getMouseAbstractPoint(e);
770
- if (!abstractPos) return {};
771
- const cell = this.getCellAt(abstractPos.x, abstractPos.y);
772
- if (cell.col < 0 || cell.row < 0) return {
773
- abstractPos: abstractPos,
774
- cell: cell
775
- };
776
- return {
777
- abstractPos: abstractPos,
778
- cell: cell,
779
- eventArgs: {
780
- col: cell.col,
781
- row: cell.row,
782
- event: e,
783
- rect: cell.rect
784
- }
769
+ y: (clientY - rect.top) / heightRatio + (isAddScroll ? this.scrollTop : 0) - this.tableY,
770
+ inTable: inTable
785
771
  };
786
772
  }
787
773
  getTheme() {
@@ -1379,5 +1365,8 @@ export class BaseTable extends EventTarget {
1379
1365
  }
1380
1366
  return customLayout;
1381
1367
  }
1368
+ hasAutoImageColumn() {
1369
+ return this.internalProps.layoutMap.columnObjects.find((column => !("image" !== column.columnType || !column.define.imageAutoSizing)));
1370
+ }
1382
1371
  }
1383
1372
  //# sourceMappingURL=BaseTable.js.map