@visactor/vtable 1.5.1 → 1.5.2-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/dist/vtable.js CHANGED
@@ -44370,6 +44370,17 @@
44370
44370
  function isPromise(data) {
44371
44371
  return Boolean(data && typeof data.then === 'function');
44372
44372
  }
44373
+ function getPromiseValue(value, callback) {
44374
+ if (isPromise(value)) {
44375
+ value.then(result => {
44376
+ callback(result);
44377
+ }).catch((err) => {
44378
+ });
44379
+ }
44380
+ else {
44381
+ callback(value);
44382
+ }
44383
+ }
44373
44384
  function isTouchEvent$2(e) {
44374
44385
  return !!e.changedTouches;
44375
44386
  }
@@ -64826,16 +64837,18 @@
64826
64837
  }
64827
64838
  }
64828
64839
  const isCompleteEdit = table.editorManager?.completeEdit(e.nativeEvent);
64829
- if (isCompleteEdit === false) {
64830
- return;
64831
- }
64832
- stateManager.updateInteractionState(InteractionState.default);
64833
- eventManager.dealTableHover();
64834
- if (table.options.select?.outsideClickDeselect) {
64835
- const isHasSelected = !!stateManager.select.ranges?.length;
64836
- eventManager.dealTableSelect();
64837
- stateManager.endSelectCells(true, isHasSelected);
64838
- }
64840
+ getPromiseValue(isCompleteEdit, (isCompleteEdit) => {
64841
+ if (isCompleteEdit === false) {
64842
+ return;
64843
+ }
64844
+ stateManager.updateInteractionState(InteractionState.default);
64845
+ eventManager.dealTableHover();
64846
+ if (table.options.select?.outsideClickDeselect) {
64847
+ const isHasSelected = !!stateManager.select.ranges?.length;
64848
+ eventManager.dealTableSelect();
64849
+ stateManager.endSelectCells(true, isHasSelected);
64850
+ }
64851
+ });
64839
64852
  });
64840
64853
  table.scenegraph.tableGroup.addEventListener('pointerdown', (e) => {
64841
64854
  if (table.hasListeners(TABLE_EVENT_TYPE.MOUSEDOWN_TABLE)) {
@@ -64861,72 +64874,74 @@
64861
64874
  stateManager.hideMenu();
64862
64875
  }
64863
64876
  const isCompleteEdit = table.editorManager?.completeEdit(e.nativeEvent);
64864
- if (isCompleteEdit === false) {
64865
- return;
64866
- }
64867
- const hitIcon = eventArgsSet?.eventArgs?.target?.role?.startsWith('icon')
64868
- ? eventArgsSet.eventArgs.target
64869
- : e.target.role?.startsWith('icon')
64870
- ? e.target
64871
- : undefined;
64872
- eventManager.downIcon = hitIcon;
64873
- if (!hitIcon || hitIcon.attribute.interactive === false) {
64874
- if (e.pointerType === 'touch') {
64875
- eventManager.touchEnd = false;
64876
- eventManager.touchSetTimeout = setTimeout(() => {
64877
- eventManager.isTouchdown = false;
64878
- eventManager.touchMove = true;
64879
- if (!eventManager.touchEnd &&
64877
+ getPromiseValue(isCompleteEdit, (isCompleteEdit) => {
64878
+ if (isCompleteEdit === false) {
64879
+ return;
64880
+ }
64881
+ const hitIcon = eventArgsSet?.eventArgs?.target?.role?.startsWith('icon')
64882
+ ? eventArgsSet.eventArgs.target
64883
+ : e.target.role?.startsWith('icon')
64884
+ ? e.target
64885
+ : undefined;
64886
+ eventManager.downIcon = hitIcon;
64887
+ if (!hitIcon || hitIcon.attribute.interactive === false) {
64888
+ if (e.pointerType === 'touch') {
64889
+ eventManager.touchEnd = false;
64890
+ eventManager.touchSetTimeout = setTimeout(() => {
64891
+ eventManager.isTouchdown = false;
64892
+ eventManager.touchMove = true;
64893
+ if (!eventManager.touchEnd &&
64894
+ (eventManager.checkColumnResize(eventArgsSet, true) || eventManager.checkRowResize(eventArgsSet, true))) {
64895
+ stateManager.updateInteractionState(InteractionState.grabing);
64896
+ return;
64897
+ }
64898
+ if (!eventManager.touchEnd && eventManager.chechColumnMover(eventArgsSet)) {
64899
+ stateManager.updateInteractionState(InteractionState.grabing);
64900
+ return;
64901
+ }
64902
+ if (eventManager.dealTableSelect(eventArgsSet) && !eventManager.touchEnd) {
64903
+ stateManager.updateInteractionState(InteractionState.grabing);
64904
+ }
64905
+ }, 500);
64906
+ eventManager.dealTableHover(eventArgsSet);
64907
+ }
64908
+ else {
64909
+ if (!eventManager.checkCellFillhandle(eventArgsSet) &&
64880
64910
  (eventManager.checkColumnResize(eventArgsSet, true) || eventManager.checkRowResize(eventArgsSet, true))) {
64911
+ table.scenegraph.updateChartState(null);
64881
64912
  stateManager.updateInteractionState(InteractionState.grabing);
64882
64913
  return;
64883
64914
  }
64884
- if (!eventManager.touchEnd && eventManager.chechColumnMover(eventArgsSet)) {
64915
+ if (eventManager.chechColumnMover(eventArgsSet)) {
64885
64916
  stateManager.updateInteractionState(InteractionState.grabing);
64886
64917
  return;
64887
64918
  }
64888
- if (eventManager.dealTableSelect(eventArgsSet) && !eventManager.touchEnd) {
64919
+ if (eventManager.checkCellFillhandle(eventArgsSet, true) && eventManager.dealFillSelect(eventArgsSet)) {
64920
+ stateManager.updateInteractionState(InteractionState.grabing);
64921
+ return;
64922
+ }
64923
+ if (eventManager.dealTableSelect(eventArgsSet)) {
64889
64924
  stateManager.updateInteractionState(InteractionState.grabing);
64890
64925
  }
64891
- }, 500);
64892
- eventManager.dealTableHover(eventArgsSet);
64893
- }
64894
- else {
64895
- if (!eventManager.checkCellFillhandle(eventArgsSet) &&
64896
- (eventManager.checkColumnResize(eventArgsSet, true) || eventManager.checkRowResize(eventArgsSet, true))) {
64897
- table.scenegraph.updateChartState(null);
64898
- stateManager.updateInteractionState(InteractionState.grabing);
64899
- return;
64900
- }
64901
- if (eventManager.chechColumnMover(eventArgsSet)) {
64902
- stateManager.updateInteractionState(InteractionState.grabing);
64903
- return;
64904
- }
64905
- if (eventManager.checkCellFillhandle(eventArgsSet, true) && eventManager.dealFillSelect(eventArgsSet)) {
64906
- stateManager.updateInteractionState(InteractionState.grabing);
64907
- return;
64908
- }
64909
- if (eventManager.dealTableSelect(eventArgsSet)) {
64910
- stateManager.updateInteractionState(InteractionState.grabing);
64911
64926
  }
64912
64927
  }
64913
- }
64914
- else if (hitIcon.attribute.funcType === IconFuncTypeEnum.dragReorder) {
64915
- stateManager.startMoveCol(eventArgsSet.eventArgs.col, eventArgsSet.eventArgs.row, eventArgsSet.abstractPos.x, eventArgsSet.abstractPos.y);
64916
- stateManager.updateInteractionState(InteractionState.grabing);
64917
- }
64918
- if (table.hasListeners(TABLE_EVENT_TYPE.MOUSEDOWN_CELL)) {
64919
- const eventArgsSet = getCellEventArgsSet(e);
64920
- if (eventArgsSet.eventArgs) {
64921
- table.fireListeners(TABLE_EVENT_TYPE.MOUSEDOWN_CELL, {
64922
- col: eventArgsSet.eventArgs.col,
64923
- row: eventArgsSet.eventArgs.row,
64924
- event: e.nativeEvent,
64925
- target: eventArgsSet?.eventArgs?.target,
64926
- mergeCellInfo: eventArgsSet.eventArgs.mergeInfo
64927
- });
64928
+ else if (hitIcon.attribute.funcType === IconFuncTypeEnum.dragReorder) {
64929
+ stateManager.startMoveCol(eventArgsSet.eventArgs.col, eventArgsSet.eventArgs.row, eventArgsSet.abstractPos.x, eventArgsSet.abstractPos.y);
64930
+ stateManager.updateInteractionState(InteractionState.grabing);
64928
64931
  }
64929
- }
64932
+ if (table.hasListeners(TABLE_EVENT_TYPE.MOUSEDOWN_CELL)) {
64933
+ const eventArgsSet = getCellEventArgsSet(e);
64934
+ if (eventArgsSet.eventArgs) {
64935
+ table.fireListeners(TABLE_EVENT_TYPE.MOUSEDOWN_CELL, {
64936
+ col: eventArgsSet.eventArgs.col,
64937
+ row: eventArgsSet.eventArgs.row,
64938
+ event: e.nativeEvent,
64939
+ target: eventArgsSet?.eventArgs?.target,
64940
+ mergeCellInfo: eventArgsSet.eventArgs.mergeInfo
64941
+ });
64942
+ }
64943
+ }
64944
+ });
64930
64945
  });
64931
64946
  table.scenegraph.tableGroup.addEventListener('pointerup', (e) => {
64932
64947
  if (e.button !== 0) {
@@ -65089,30 +65104,32 @@
65089
65104
  stateManager.hideMenu();
65090
65105
  }
65091
65106
  const isCompleteEdit = table.editorManager?.completeEdit(e.nativeEvent);
65092
- if (isCompleteEdit === false) {
65093
- return;
65094
- }
65095
- const hitIcon = e.target.role?.startsWith('icon') ? e.target : undefined;
65096
- eventManager.downIcon = hitIcon;
65097
- if (!hitIcon &&
65098
- !eventManager.checkCellFillhandle(eventArgsSet) &&
65099
- !stateManager.columnResize.resizing &&
65100
- eventManager.checkColumnResize(eventArgsSet, true)) {
65101
- table.scenegraph.updateChartState(null);
65102
- stateManager.updateInteractionState(InteractionState.grabing);
65103
- const { eventArgs } = eventArgsSet;
65104
- if (!eventArgs?.targetCell) {
65105
- const cell = table.getCellAt(eventArgsSet.abstractPos.x - ResizeColumnHotSpotSize / 2, eventArgsSet.abstractPos.y);
65106
- if (cell) {
65107
- if (table.hasListeners(TABLE_EVENT_TYPE.MOUSEDOWN_TABLE)) {
65108
- table.fireListeners(TABLE_EVENT_TYPE.MOUSEDOWN_TABLE, {
65109
- event: e.nativeEvent
65110
- });
65107
+ getPromiseValue(isCompleteEdit, (isCompleteEdit) => {
65108
+ if (isCompleteEdit === false) {
65109
+ return;
65110
+ }
65111
+ const hitIcon = e.target.role?.startsWith('icon') ? e.target : undefined;
65112
+ eventManager.downIcon = hitIcon;
65113
+ if (!hitIcon &&
65114
+ !eventManager.checkCellFillhandle(eventArgsSet) &&
65115
+ !stateManager.columnResize.resizing &&
65116
+ eventManager.checkColumnResize(eventArgsSet, true)) {
65117
+ table.scenegraph.updateChartState(null);
65118
+ stateManager.updateInteractionState(InteractionState.grabing);
65119
+ const { eventArgs } = eventArgsSet;
65120
+ if (!eventArgs?.targetCell) {
65121
+ const cell = table.getCellAt(eventArgsSet.abstractPos.x - ResizeColumnHotSpotSize / 2, eventArgsSet.abstractPos.y);
65122
+ if (cell) {
65123
+ if (table.hasListeners(TABLE_EVENT_TYPE.MOUSEDOWN_TABLE)) {
65124
+ table.fireListeners(TABLE_EVENT_TYPE.MOUSEDOWN_TABLE, {
65125
+ event: e.nativeEvent
65126
+ });
65127
+ }
65111
65128
  }
65112
65129
  }
65130
+ return;
65113
65131
  }
65114
- return;
65115
- }
65132
+ });
65116
65133
  });
65117
65134
  table.scenegraph.stage.addEventListener('pointerup', (e) => {
65118
65135
  if (stateManager.interactionState === 'grabing') {
@@ -70205,7 +70222,7 @@
70205
70222
  return TABLE_EVENT_TYPE;
70206
70223
  }
70207
70224
  options;
70208
- version = "1.5.1";
70225
+ version = "1.5.2-alpha.0";
70209
70226
  pagination;
70210
70227
  id = `VTable${Date.now()}`;
70211
70228
  headerStyleCache;
@@ -75345,25 +75362,50 @@
75345
75362
  }
75346
75363
  }
75347
75364
  if (!this.editingEditor.getValue) ;
75348
- if (!this.editingEditor.validateValue || this.editingEditor.validateValue?.()) {
75349
- const changedValue = this.editingEditor.getValue?.();
75350
- const range = this.table.getCellRange(this.editCell.col, this.editCell.row);
75351
- const changedValues = [];
75352
- for (let row = range.start.row; row <= range.end.row; row++) {
75353
- const rowChangedValues = [];
75354
- for (let col = range.start.col; col <= range.end.col; col++) {
75355
- rowChangedValues.push(changedValue);
75356
- }
75357
- changedValues.push(rowChangedValues);
75358
- }
75359
- this.table.changeCellValues(range.start.col, range.start.row, changedValues);
75360
- this.editingEditor.exit && (void 0);
75361
- this.editingEditor.exit?.();
75362
- this.editingEditor.onEnd?.();
75363
- this.editingEditor = null;
75364
- return true;
75365
+ if (this.editingEditor.validateValue) {
75366
+ const maybePromiseOrValue = this.editingEditor.validateValue?.();
75367
+ if (isPromise(maybePromiseOrValue)) {
75368
+ return new Promise((resolve, reject) => {
75369
+ maybePromiseOrValue
75370
+ .then(result => {
75371
+ if (result) {
75372
+ this.doExit();
75373
+ resolve(true);
75374
+ }
75375
+ else {
75376
+ resolve(false);
75377
+ }
75378
+ })
75379
+ .catch((err) => {
75380
+ reject(err);
75381
+ });
75382
+ });
75383
+ }
75384
+ else if (maybePromiseOrValue) {
75385
+ this.doExit();
75386
+ return true;
75387
+ }
75388
+ return false;
75365
75389
  }
75366
- return false;
75390
+ this.doExit();
75391
+ return true;
75392
+ }
75393
+ doExit() {
75394
+ const changedValue = this.editingEditor.getValue?.();
75395
+ const range = this.table.getCellRange(this.editCell.col, this.editCell.row);
75396
+ const changedValues = [];
75397
+ for (let row = range.start.row; row <= range.end.row; row++) {
75398
+ const rowChangedValues = [];
75399
+ for (let col = range.start.col; col <= range.end.col; col++) {
75400
+ rowChangedValues.push(changedValue);
75401
+ }
75402
+ changedValues.push(rowChangedValues);
75403
+ }
75404
+ this.table.changeCellValues(range.start.col, range.start.row, changedValues);
75405
+ this.editingEditor.exit && (void 0);
75406
+ this.editingEditor.exit?.();
75407
+ this.editingEditor.onEnd?.();
75408
+ this.editingEditor = null;
75367
75409
  }
75368
75410
  cancelEdit() {
75369
75411
  if (this.editingEditor) {
@@ -88573,7 +88615,7 @@
88573
88615
  }
88574
88616
 
88575
88617
  registerForVrender();
88576
- const version = "1.5.1";
88618
+ const version = "1.5.2-alpha.0";
88577
88619
  function getIcons() {
88578
88620
  return get$2();
88579
88621
  }