e-virt-table 1.0.2 → 1.0.4

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.
@@ -24,6 +24,12 @@ export default class Editor {
24
24
  writable: true,
25
25
  value: null
26
26
  });
27
+ Object.defineProperty(this, "selectorArrStr", {
28
+ enumerable: true,
29
+ configurable: true,
30
+ writable: true,
31
+ value: ''
32
+ });
27
33
  Object.defineProperty(this, "ctx", {
28
34
  enumerable: true,
29
35
  configurable: true,
@@ -113,33 +119,73 @@ export default class Editor {
113
119
  this.ctx.on('adjustBoundaryPosition', (cell) => {
114
120
  // 调整位置会触发重绘可能会导致cellClick事件不能触发,调整位置时需要赋值cellTarget
115
121
  this.cellTarget = cell;
116
- });
117
- this.ctx.on('mouseup', () => {
118
- if (!this.ctx.selectOnlyOne) {
119
- this.cellTarget = null;
120
- }
122
+ const { xArr, yArr } = this.ctx.selector;
123
+ this.selectorArrStr = JSON.stringify(xArr) + JSON.stringify(yArr);
121
124
  });
122
125
  this.ctx.on('cellClick', (cell) => {
126
+ // 没有编辑器的情况下不进入编辑模式
127
+ if (cell.editorType === 'none') {
128
+ return;
129
+ }
123
130
  // 如果是调整边界位置,不进入编辑模式
124
131
  if (this.ctx.adjustPositioning) {
125
132
  return;
126
133
  }
127
- if (!this.ctx.selectOnlyOne) {
134
+ // 不在区域内
135
+ if (!this.isInSelectorRange(cell.rowIndex, cell.colIndex)) {
128
136
  return;
129
137
  }
130
- if (cell.rowKey === this.cellTarget?.rowKey && cell.key === this.cellTarget?.key) {
131
- this.startEdit();
138
+ const { xArr, yArr } = this.ctx.selector;
139
+ const selectorArrStr = JSON.stringify(xArr) + JSON.stringify(yArr);
140
+ if (this.selectorArrStr === selectorArrStr && this.cellTarget) {
141
+ // 启用合并单元格关联&&只有合并单元格时才进入编辑模式
142
+ if (this.ctx.config.ENABLE_MERGE_CELL_LINK && this.ctx.onlyMergeCell) {
143
+ this.startEdit();
144
+ return;
145
+ }
146
+ // 只有一个的情况下才进入编辑模式
147
+ if (this.ctx.selectOnlyOne &&
148
+ cell.rowKey === this.cellTarget.rowKey &&
149
+ cell.key === this.cellTarget.key) {
150
+ this.startEdit();
151
+ return;
152
+ }
132
153
  }
133
- else {
134
- this.doneEdit();
135
- this.cellTarget = cell;
136
- // 单击单元格进入编辑模式
137
- if (this.ctx.config.ENABLE_EDIT_SINGLE_CLICK) {
154
+ this.selectorArrStr = selectorArrStr;
155
+ this.doneEdit();
156
+ this.cellTarget = cell;
157
+ // 单击单元格进入编辑模式
158
+ if (this.ctx.config.ENABLE_EDIT_SINGLE_CLICK) {
159
+ // 启用合并单元格关联&&只有合并单元格时才进入编辑模式
160
+ if (this.ctx.config.ENABLE_MERGE_CELL_LINK && this.ctx.onlyMergeCell) {
161
+ this.startEdit();
162
+ return;
163
+ }
164
+ // 只有一个的情况下才进入编辑模式
165
+ if (this.ctx.selectOnlyOne) {
138
166
  this.startEdit();
139
167
  }
140
168
  }
141
169
  });
142
170
  }
171
+ isInSelectorRange(rowIndex, colIndex) {
172
+ const { xArr, yArr } = this.ctx.selector;
173
+ const [minX, maxX] = xArr;
174
+ const [minY, maxY] = yArr;
175
+ if (colIndex < minX) {
176
+ return false;
177
+ }
178
+ if (colIndex > maxX) {
179
+ return false;
180
+ }
181
+ if (rowIndex < minY) {
182
+ return false;
183
+ }
184
+ if (rowIndex > maxY) {
185
+ return false;
186
+ }
187
+ return true;
188
+ }
143
189
  initTextEditor() {
144
190
  // 初始化文本编辑器
145
191
  this.inputEl = document.createElement('textarea');
@@ -193,7 +239,10 @@ export default class Editor {
193
239
  const { stageHeight, footer, header, config: { SCROLLER_TRACK_SIZE }, } = this.ctx;
194
240
  const bottomY = stageHeight - footer.height - SCROLLER_TRACK_SIZE;
195
241
  this.editorEl.style.bottom = `auto`;
196
- if (this.drawY + scrollHeight > bottomY || this.drawY < header.height) {
242
+ if (this.drawY < header.height) {
243
+ this.editorEl.style.top = `${header.height - 1}px`;
244
+ }
245
+ if (this.drawY + scrollHeight > bottomY) {
197
246
  this.editorEl.style.left = `${this.drawX - 1}px`;
198
247
  this.editorEl.style.top = `auto`;
199
248
  this.editorEl.style.bottom = `${stageHeight - bottomY}px`;
@@ -202,12 +251,13 @@ export default class Editor {
202
251
  }
203
252
  startEditByInput(cell) {
204
253
  const value = cell.getValue();
205
- const { width, editorType } = cell;
206
- const drawX = cell.getDrawX();
207
- let drawY = cell.getDrawY();
254
+ const { editorType } = cell;
255
+ if (this.ctx.config.ENABLE_MERGE_CELL_LINK) {
256
+ cell.updateSpanInfo(); // 更新合并单元格信息
257
+ }
258
+ let { drawX, drawY, height, width } = cell;
208
259
  this.drawX = drawX;
209
260
  this.drawY = drawY;
210
- let { height } = cell;
211
261
  const { config: { CELL_PADDING }, header, } = this.ctx;
212
262
  let maxHeight = this.ctx.body.visibleHeight;
213
263
  if (height > maxHeight) {
@@ -254,7 +304,8 @@ export default class Editor {
254
304
  const textContent = this.inputEl.value;
255
305
  // !(text.textContent === '' && value === null)剔除点击编辑后未修改会把null变为''的情况
256
306
  if (textContent !== value && !(textContent === '' && value === null)) {
257
- this.ctx.database.setItemValue(rowKey, key, textContent, true, true, true);
307
+ this.ctx.setItemValueByEditor(rowKey, key, textContent, true);
308
+ // this.cellTarget.setValue(textContent);
258
309
  }
259
310
  this.inputEl.value = '';
260
311
  }
@@ -325,7 +376,7 @@ export default class Editor {
325
376
  this.ctx.emit('doneEdit', this.cellTarget);
326
377
  this.enable = false;
327
378
  this.ctx.editing = false;
328
- // this.ctx.emit('draw');
379
+ this.ctx.emit('draw');
329
380
  }
330
381
  destroy() {
331
382
  this.editorEl?.remove();
@@ -1 +1 @@
1
- {"version":3,"file":"Editor.js","sourceRoot":"","sources":["../../src/Editor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Editor.js","sourceRoot":"","sources":["../../src/Editor.ts"],"names":[],"mappings":"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"}
@@ -265,7 +265,7 @@ class Scrollbar {
265
265
  this.trackWidth = SCROLLER_TRACK_SIZE;
266
266
  this.trackHeight = visibleHeight;
267
267
  // 滚动条的X位置=轨道的X位置+(轨道的宽度-滚动条的宽度)/2
268
- this.barX = this.trackX - 0.5 + (SCROLLER_TRACK_SIZE - SCROLLER_SIZE) / 2;
268
+ this.barX = this.trackX - 1 + (SCROLLER_TRACK_SIZE - SCROLLER_SIZE) / 2;
269
269
  this.barWidth = SCROLLER_SIZE;
270
270
  const ratio = this.distance ? this.visibleDistance / (bodyHeight + footerHeight) : 0;
271
271
  let _barHeight = Math.floor(ratio * this.visibleDistance);
@@ -297,7 +297,7 @@ class Scrollbar {
297
297
  this.trackHeight = SCROLLER_TRACK_SIZE;
298
298
  const ratio = this.distance ? this.visibleDistance / headerWidth : 0;
299
299
  let _barWidth = Math.floor(ratio * this.visibleDistance);
300
- this.barY = this.trackY - 0.5 + (SCROLLER_TRACK_SIZE - SCROLLER_SIZE) / 2;
300
+ this.barY = this.trackY - 1 + (SCROLLER_TRACK_SIZE - SCROLLER_SIZE) / 2;
301
301
  // 最小30,超出可见区域则隐藏
302
302
  if (_barWidth < 30) {
303
303
  _barWidth = 30;
@@ -1 +1 @@
1
- {"version":3,"file":"Scroller.js","sourceRoot":"","sources":["../../src/Scroller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Scroller.js","sourceRoot":"","sources":["../../src/Scroller.ts"],"names":[],"mappings":"AAGA,MAAM,SAAS;IAqBX,YAAY,GAAY,EAAE,IAAmB;QApBrC;;;;;WAAa;QACb;;;;;WAAoB;QACpB;;;;mBAAU,KAAK;WAAC;QAChB;;;;mBAAS,CAAC;WAAC;QACX;;;;mBAAS,CAAC;WAAC;QACX;;;;mBAAa,CAAC;WAAC;QACf;;;;mBAAc,CAAC;WAAC;QAChB;;;;mBAAwB,EAAE;WAAC,CAAC,KAAK;QACjC;;;;mBAAO,CAAC;WAAC;QACT;;;;mBAAO,CAAC;WAAC;QACT;;;;mBAAW,CAAC;WAAC;QACb;;;;mBAAY,CAAC;WAAC;QACd;;;;mBAAW,CAAC;WAAC,CAAC,SAAS;QACvB;;;;mBAAkB,CAAC;WAAC,CAAC,SAAS;QAC9B;;;;mBAAU,CAAC;WAAC;QACZ;;;;mBAAU,CAAC;WAAC;QACZ;;;;mBAAY,CAAC;WAAC,CAAC,UAAU;QACjC;;;;mBAAa,KAAK;WAAC;QACnB;;;;mBAAS,CAAC;WAAC;QAGP,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC3B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;QACnC,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;QACnC,CAAC;IACL,CAAC;IAED,OAAO,CAAC,CAAa;QACjB,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IAED,WAAW,CAAC,CAAa;QACrB,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,YAAY,OAAO,CAAC,EAAE,CAAC;YACjC,OAAO;QACX,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC;YACvB,OAAO;QACX,CAAC;QACD,YAAY;QACZ,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;YACtD,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,YAAY;QACZ,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;YACtD,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;QACjD,IAAI,OAAO,IAAI,IAAI,CAAC,OAAO,IAAI,OAAO,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QAC/D,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YACvB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,IAAI,CAAC,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,QAAQ;YACtC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC;YAC7B,CAAC,CAAC,cAAc,EAAE,CAAC;QACvB,CAAC;aAAM,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;YAC1C,SAAS;YACT,IAAI,MAAM,GAAG,CAAC,CAAC;YACf,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC3B,sDAAsD;gBACtD,oBAAoB;gBACpB,MAAM,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;gBACrE,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;YAChF,CAAC;iBAAM,CAAC;gBACJ,MAAM,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;gBAC3C,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/E,CAAC;YACD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC/D,CAAC;IACL,CAAC;IAED,SAAS;QACL,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;IACrB,CAAC;IAED,WAAW,CAAC,CAAa;QACrB,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;QACjD,OAAO;QACP,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YAC9E,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACxB,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACzB,CAAC;QACD,UAAU;QACV,IAAI,OAAO,IAAI,IAAI,CAAC,OAAO,IAAI,OAAO,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QAC/D,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAC7B,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QACpC,CAAC;aAAM,CAAC;YACJ,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QACpC,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;YAClC,2CAA2C;YAC3C,IAAI,MAAM,GAAG,CAAC,CAAC;YACf,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC3B,MAAM,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;YACjG,CAAC;iBAAM,CAAC;gBACJ,MAAM,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;YAChG,CAAC;YACD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC/D,CAAC;IACL,CAAC;IAEO,gBAAgB,CACpB,MAAc,EACd,MAAc,EACd,QAAgB,EAChB,QAAgB,EAChB,YAAoB,EACpB,aAAqB;QAErB,OAAO,CACH,MAAM,IAAI,QAAQ;YAClB,MAAM,IAAI,QAAQ,GAAG,YAAY;YACjC,MAAM,IAAI,QAAQ;YAClB,MAAM,IAAI,QAAQ,GAAG,aAAa,CACrC,CAAC;IACN,CAAC;IACO,YAAY;QAChB,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QAC9B,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAC7B,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAEO,aAAa,CAAC,CAAS,EAAE,CAAS;QACtC,OAAO,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5F,CAAC;IACO,SAAS,CAAC,CAAS,EAAE,CAAS;QAClC,OAAO,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACpG,CAAC;IAEO,YAAY,CAAC,CAAa;QAC9B,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;QACxB,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;QACxB,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;YACnD,qBAAqB;YACrB,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YACzC,IAAI,YAAY,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,QAAQ,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxG,CAAC,CAAC,cAAc,EAAE,CAAC;YACvB,CAAC;YACD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC7E,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACpC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;gBACb,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC7E,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC7E,CAAC;QACL,CAAC;IACL,CAAC;IACO,WAAW;QACf,MAAM,EACF,IAAI,EACJ,MAAM,EACN,WAAW,EACX,UAAU,EACV,MAAM,EAAE,EAAE,mBAAmB,GAAG,CAAC,EAAE,aAAa,GAAG,CAAC,EAAE,GACzD,GAAG,IAAI,CAAC,GAAG,CAAC;QACb,MAAM,YAAY,GAAG,UAAU,CAAC;QAChC,MAAM,aAAa,GAAG,WAAW,CAAC;QAClC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;QACnC,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;QACjC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC;QAC/B,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC;QAC5C,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC3B,IAAI,CAAC,eAAe,GAAG,aAAa,GAAG,mBAAmB,GAAG,YAAY,CAAC;YAC1E,IAAI,CAAC,QAAQ,GAAG,UAAU,GAAG,IAAI,CAAC,eAAe,GAAG,YAAY,CAAC;YACjE,IAAI,CAAC,MAAM,GAAG,YAAY,GAAG,mBAAmB,CAAC;YACjD,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;YAChB,MAAM;YACN,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,GAAG,mBAAmB,EAAE,YAAY,CAAC,CAAC;YAChG,IAAI,CAAC,UAAU,GAAG,mBAAmB,CAAC;YACtC,IAAI,CAAC,WAAW,GAAG,aAAa,CAAC;YACjC,kCAAkC;YAClC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,mBAAmB,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;YACxE,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC;YAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACrF,IAAI,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC;YAC1D,iBAAiB;YACjB,IAAI,UAAU,GAAG,EAAE,EAAE,CAAC;gBAClB,UAAU,GAAG,EAAE,CAAC;YACpB,CAAC;iBAAM,IAAI,UAAU,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;gBAC3C,UAAU,GAAG,CAAC,CAAC;YACnB,CAAC;YACD,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;YAE5B,IAAI,CAAC,IAAI,GAAG,YAAY,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;YACnG,OAAO;YACP,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QACpE,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,eAAe,GAAG,YAAY,GAAG,mBAAmB,CAAC;YAC1D,IAAI,CAAC,QAAQ,GAAG,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC;YACnD,MAAM;YACN,IAAI,CAAC,WAAW,GAAG;gBACf,YAAY,GAAG,mBAAmB;gBAClC,aAAa,GAAG,mBAAmB;gBACnC,YAAY,GAAG,mBAAmB;gBAClC,aAAa;aAChB,CAAC;YACF,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;YAChB,IAAI,CAAC,MAAM,GAAG,aAAa,GAAG,mBAAmB,CAAC;YAClD,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC;YAC/B,IAAI,CAAC,WAAW,GAAG,mBAAmB,CAAC;YAEvC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YAErE,IAAI,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC;YACzD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,mBAAmB,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;YACxE,iBAAiB;YACjB,IAAI,SAAS,GAAG,EAAE,EAAE,CAAC;gBACjB,SAAS,GAAG,EAAE,CAAC;YACnB,CAAC;iBAAM,IAAI,SAAS,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBAC3C,SAAS,GAAG,CAAC,CAAC;YAClB,CAAC;YACD,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;YAC1B,IAAI,CAAC,SAAS,GAAG,aAAa,CAAC;YAC/B,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;YACnF,OAAO;YACP,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QACpE,CAAC;IACL,CAAC;IACD,IAAI;QACA,MAAM,EACF,MAAM,EAAE,EAAE,oBAAoB,EAAE,cAAc,EAAE,YAAY,EAAE,oBAAoB,EAAE,GACvF,GAAG,IAAI,CAAC,GAAG,CAAC;QACb,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,KAAK;QACL,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE;YACjF,WAAW,EAAE,YAAY;YACzB,SAAS,EAAE,oBAAoB;SAClC,CAAC,CAAC;QACH,MAAM;QACN,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE;YACzE,SAAS,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,cAAc;YAClF,MAAM,EAAE,CAAC;SACZ,CAAC,CAAC;QACH,SAAS;QACT,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE;gBACtC,WAAW,EAAE,YAAY;gBACzB,WAAW,EAAE,CAAC;aACjB,CAAC,CAAC;QACP,CAAC;QACD,OAAO;QACP,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC;IAC1C,CAAC;CACJ;AAED,MAAM,CAAC,OAAO,OAAO,QAAQ;IAKzB,YAAY,GAAY;QAJhB;;;;;WAAa;QACb;;;;;WAA6B;QAC7B;;;;;WAA+B;QAGnC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,iBAAiB,GAAG,IAAI,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QACxD,IAAI,CAAC,mBAAmB,GAAG,IAAI,SAAS,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAC5D,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7C,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;QACrD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;QACrD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAC/C,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,OAAe,EAAE,OAAe,EAAE,EAAE;YAC1D,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,OAAe,EAAE,EAAE;YAC1C,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,OAAe,EAAE,EAAE;YAC1C,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACP,CAAC;IAED,OAAO,CAAC,CAAa;QACjB,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,EAAE,CAAC;IAChB,CAAC;IAED,WAAW,CAAC,CAAa;QACrB,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACtC,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACxC,IAAI,CAAC,IAAI,EAAE,CAAC;IAChB,CAAC;IAED,WAAW,CAAC,CAAa;QACrB,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACtC,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACxC,IAAI,CAAC,IAAI,EAAE,CAAC;IAChB,CAAC;IAED,SAAS;QACL,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,CAAC;QACnC,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,CAAC;QACrC,IAAI,CAAC,GAAG,CAAC,YAAY,GAAG,KAAK,CAAC;IAClC,CAAC;IAED,IAAI;QACA,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC1D,iBAAiB;QACjB,IAAI,OAAO,KAAK,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,OAAO,KAAK,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YAC/D,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC5C,IAAI,OAAO,KAAK,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;gBAC/B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACxC,CAAC;YACD,IAAI,OAAO,KAAK,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;gBAC/B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACxC,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;YAC3B,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;YAC3B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1B,CAAC;IACL,CAAC;IACD,SAAS,CAAC,CAAS,EAAE,CAAS;QAC1B,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAC;QACpC,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC;IACD,UAAU,CAAC,OAAe;QACtB,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,OAAO,CAAC;QAC1C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC;IACD,UAAU,CAAC,OAAe;QACtB,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,OAAO,CAAC;QACxC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC;IACD,cAAc,CAAC,GAAW;QACtB,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;QACrE,IAAI,IAAI,EAAE,CAAC;YACP,YAAY;YACZ,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;QACtD,CAAC;IACL,CAAC;IACD,gBAAgB,CAAC,QAAgB;QAC7B,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;QAC/E,IAAI,IAAI,EAAE,CAAC;YACP,YAAY;YACZ,IAAI,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;gBACnC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;YACtD,CAAC;QACL,CAAC;IACL,CAAC;IACD,gBAAgB,CAAC,QAAgB;QAC7B,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QACpC,MAAM,EAAE,GAAG,EAAE,GAAG,QAAQ,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAC1D,IAAI,GAAG,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YAC3B,IAAI,CAAC,UAAU,CAAC,GAAG,GAAG,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;QAClD,CAAC;IACL,CAAC;IACD,cAAc,CAAC,MAAc;QACzB,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QACpC,MAAM,QAAQ,GAAG,QAAQ,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;QACvD,MAAM,EAAE,GAAG,EAAE,GAAG,QAAQ,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAC1D,IAAI,CAAC,UAAU,CAAC,GAAG,GAAG,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;IAClD,CAAC;CACJ"}
@@ -11,6 +11,7 @@ export default class Selector {
11
11
  constructor(ctx: Context);
12
12
  private init;
13
13
  private setSelector;
14
+ private adjustMergeCells;
14
15
  private selectCols;
15
16
  private selectAll;
16
17
  private selectRows;
@@ -110,6 +110,7 @@ export default class Selector {
110
110
  e.preventDefault();
111
111
  this.isMultipleRow = false;
112
112
  this.click(e.shiftKey);
113
+ this.ctx.emit('selectorClick', cell);
113
114
  });
114
115
  this.ctx.on('mouseup', () => {
115
116
  this.mousedownHeader = false;
@@ -256,18 +257,105 @@ export default class Selector {
256
257
  }
257
258
  // 聚焦,解决iframe键盘事件不触发
258
259
  this.ctx.stageElement.focus();
260
+ // 启用合并单元格关联
261
+ if (this.ctx.config.ENABLE_MERGE_CELL_LINK) {
262
+ const adjustMerge = this.adjustMergeCells(_xArr, _yArr);
263
+ // 合并单元格时,调整选择器的位置
264
+ minY = adjustMerge.yArr[0];
265
+ maxY = adjustMerge.yArr[1];
266
+ minX = adjustMerge.xArr[0];
267
+ maxX = adjustMerge.xArr[1];
268
+ // 只有一个合并单元格时
269
+ this.ctx.onlyMergeCell = adjustMerge.onlyMergeCell;
270
+ }
259
271
  if (minX === maxX && minY === maxY) {
260
272
  this.ctx.selectOnlyOne = true;
261
273
  }
262
274
  else {
263
275
  this.ctx.selectOnlyOne = false;
264
276
  }
265
- this.ctx.selector.xArr = [Math.max(areaMinX, minX), Math.min(areaMaxX, maxX)];
266
- this.ctx.selector.yArr = [Math.max(areaMinY, minY), Math.min(areaMaxY, maxY)];
277
+ _xArr = [Math.max(areaMinX, minX), Math.min(areaMaxX, maxX)];
278
+ _yArr = [Math.max(areaMinY, minY), Math.min(areaMaxY, maxY)];
279
+ // 调整选择器的位置前回调
280
+ const { BEFORE_SET_SELECTOR_METHOD } = this.ctx.config;
281
+ if (typeof BEFORE_SET_SELECTOR_METHOD === 'function') {
282
+ const beforeSetSelectorMethod = BEFORE_SET_SELECTOR_METHOD;
283
+ const res = beforeSetSelectorMethod({
284
+ focusCell: this.ctx.focusCell,
285
+ xArr: _xArr,
286
+ yArr: _yArr,
287
+ });
288
+ if (!res) {
289
+ return;
290
+ }
291
+ _xArr = res.xArr;
292
+ _yArr = res.yArr;
293
+ }
294
+ this.ctx.selector.xArr = _xArr;
295
+ this.ctx.selector.yArr = _yArr;
267
296
  this.ctx.emit('setSelector', this.ctx.selector);
268
297
  this.ctx.emit('drawView');
269
298
  }
270
299
  }
300
+ adjustMergeCells(xArr, yArr) {
301
+ const [minY, maxY] = yArr;
302
+ const [minX, maxX] = xArr;
303
+ let topBottomCells = [];
304
+ let leftRightCells = [];
305
+ // 遍历选择中的单元格
306
+ for (let ri = 0; ri <= yArr[1] - yArr[0]; ri++) {
307
+ for (let ci = 0; ci <= xArr[1] - xArr[0]; ci++) {
308
+ const rowIndex = ri + yArr[0];
309
+ const colIndex = ci + xArr[0];
310
+ const cell = this.ctx.database.getVirtualBodyCell(rowIndex, colIndex);
311
+ if (cell) {
312
+ // 顶部和底部的单元格
313
+ if (rowIndex === minY || rowIndex === maxY) {
314
+ topBottomCells.push(cell);
315
+ }
316
+ // 左右的单元格
317
+ if (colIndex === minX || colIndex === maxX) {
318
+ leftRightCells.push(cell);
319
+ }
320
+ }
321
+ }
322
+ }
323
+ const topBottomBoundary = topBottomCells.reduce((prev, cell) => {
324
+ const { yArr } = cell.getSpanInfo();
325
+ const [topIndex, bottomIndex] = yArr;
326
+ prev.minY = Math.min(prev.minY, topIndex);
327
+ prev.maxY = Math.max(prev.maxY, bottomIndex);
328
+ return prev;
329
+ }, {
330
+ minY,
331
+ maxY,
332
+ });
333
+ const leftRightBoundary = leftRightCells.reduce((prev, cell) => {
334
+ const { xArr } = cell.getSpanInfo();
335
+ const [leftIndex, rightIndex] = xArr;
336
+ prev.minX = Math.min(prev.minX, leftIndex);
337
+ prev.maxX = Math.max(prev.maxX, rightIndex);
338
+ return prev;
339
+ }, {
340
+ minX,
341
+ maxX,
342
+ });
343
+ const _xArr = [leftRightBoundary.minX, leftRightBoundary.maxX];
344
+ const _yArr = [topBottomBoundary.minY, topBottomBoundary.maxY];
345
+ let onlyMergeCell = false;
346
+ // Check if the selected area is a single merged cell
347
+ if (leftRightBoundary.minX !== leftRightBoundary.maxX || topBottomBoundary.minY !== topBottomBoundary.maxY) {
348
+ const selectorStr = JSON.stringify(_xArr) + JSON.stringify(_yArr);
349
+ const spanInfo = this.ctx.focusCell?.getSpanInfo();
350
+ const spanStr = spanInfo && JSON.stringify(spanInfo.xArr) + JSON.stringify(spanInfo.yArr);
351
+ onlyMergeCell = spanStr === selectorStr;
352
+ }
353
+ return {
354
+ xArr: _xArr,
355
+ yArr: _yArr,
356
+ onlyMergeCell,
357
+ };
358
+ }
271
359
  selectCols(cell) {
272
360
  // 启用单选就不能批量选中
273
361
  if (this.ctx.config.ENABLE_SELECTOR_SINGLE) {
@@ -450,7 +538,43 @@ export default class Selector {
450
538
  if (!this.ctx.config.ENABLE_COPY) {
451
539
  return;
452
540
  }
453
- const { value } = this.ctx.getSelectedData();
541
+ let { value, xArr, yArr } = this.ctx.getSelectedData();
542
+ if (this.ctx.config.ENABLE_MERGE_CELL_LINK && this.ctx.database.hasMergeCell(xArr, yArr)) {
543
+ if (this.ctx.onlyMergeCell && this.ctx.focusCell) {
544
+ const cell = this.ctx.focusCell;
545
+ value = [[cell.getValue()]];
546
+ xArr = [cell.colIndex, cell.colIndex];
547
+ yArr = [cell.rowIndex, cell.rowIndex];
548
+ }
549
+ else {
550
+ const err = {
551
+ code: 'ERR_MERGED_CELLS_COPY',
552
+ message: 'Merged cells cannot span copy data',
553
+ };
554
+ if (this.ctx.hasEvent('error')) {
555
+ this.ctx.emit('error', err);
556
+ }
557
+ else {
558
+ alert(err.message);
559
+ }
560
+ return;
561
+ }
562
+ }
563
+ // 复制前回调
564
+ const { BEFORE_COPY_METHOD } = this.ctx.config;
565
+ if (typeof BEFORE_COPY_METHOD === 'function') {
566
+ const beforeCopyMethod = BEFORE_COPY_METHOD;
567
+ const res = beforeCopyMethod({
568
+ focusCell: this.ctx.focusCell,
569
+ data: value,
570
+ xArr,
571
+ yArr,
572
+ });
573
+ if (!res) {
574
+ return;
575
+ }
576
+ value = res.data;
577
+ }
454
578
  const text = encodeToSpreadsheetStr(value);
455
579
  if (navigator.clipboard) {
456
580
  navigator.clipboard
@@ -526,6 +650,26 @@ export default class Selector {
526
650
  .readText()
527
651
  .then(async (val) => {
528
652
  let textArr = decodeSpreadsheetStr(val);
653
+ const _xArr = [colIndex, colIndex + textArr[0].length - 1];
654
+ const _yArr = [rowIndex, rowIndex + textArr.length - 1];
655
+ // textArr只有一个
656
+ const isOneData = textArr.length === 1 && textArr[0].length === 1;
657
+ // 启用合并时禁用粘贴填充
658
+ if (this.ctx.config.ENABLE_MERGE_CELL_LINK &&
659
+ this.ctx.database.hasMergeCell(_xArr, _yArr) &&
660
+ !isOneData) {
661
+ const err = {
662
+ code: 'ERR_MERGED_CELLS_PASTE',
663
+ message: 'Merged cells cannot span paste data',
664
+ };
665
+ if (this.ctx.hasEvent('error')) {
666
+ this.ctx.emit('error', err);
667
+ }
668
+ else {
669
+ alert(err.message);
670
+ }
671
+ return;
672
+ }
529
673
  let changeList = [];
530
674
  for (let ri = 0; ri <= textArr.length - 1; ri++) {
531
675
  const len = textArr[ri].length;
@@ -567,9 +711,9 @@ export default class Selector {
567
711
  return;
568
712
  }
569
713
  // 剪贴板内容改变前回调
570
- const { BEFORE_PASTE_CHANGE_METHOD } = this.ctx.config;
571
- if (typeof BEFORE_PASTE_CHANGE_METHOD === 'function') {
572
- const beforePasteChangeMethod = BEFORE_PASTE_CHANGE_METHOD;
714
+ const { BEFORE_PASTE_DATA_METHOD } = this.ctx.config;
715
+ if (typeof BEFORE_PASTE_DATA_METHOD === 'function') {
716
+ const beforePasteDataMethod = BEFORE_PASTE_DATA_METHOD;
573
717
  const _changeList = changeList.map((item) => ({
574
718
  rowKey: item.rowKey,
575
719
  key: item.key,
@@ -577,12 +721,15 @@ export default class Selector {
577
721
  oldValue: this.ctx.database.getItemValue(item.rowKey, item.key),
578
722
  row: this.ctx.database.getRowDataItemForRowKey(item.rowKey),
579
723
  }));
580
- changeList = await beforePasteChangeMethod(_changeList);
724
+ changeList = await beforePasteDataMethod(_changeList, _xArr, _yArr);
725
+ if (changeList && !changeList.length) {
726
+ return;
727
+ }
581
728
  }
582
729
  // 清除复制线
583
730
  this.clearCopyLine();
584
731
  // 批量设置数据,并记录历史
585
- this.ctx.database.batchSetItemValue(changeList, true);
732
+ this.ctx.batchSetItemValueByEditor(changeList, true);
586
733
  let rows = [];
587
734
  rowKeyList.forEach((rowKey) => {
588
735
  rows.push(this.ctx.database.getRowDataItemForRowKey(rowKey));
@@ -750,36 +897,41 @@ export default class Selector {
750
897
  * 调整滚动条位置,让焦点单元格始终出现在可视区域内
751
898
  */
752
899
  adjustBoundaryPosition() {
753
- const { stageHeight, stageWidth, focusCell, fixedRightWidth, fixedLeftWidth, header, footer, body, scrollX, scrollY, config: { SCROLLER_TRACK_SIZE, FOOTER_FIXED, FOOTER_POSITION }, } = this.ctx;
900
+ const { stageHeight, stageWidth, focusCell, fixedRightWidth, fixedLeftWidth, header, footer, body, scrollX, scrollY, config: { SCROLLER_TRACK_SIZE, FOOTER_FIXED, FOOTER_POSITION, ENABLE_MERGE_CELL_LINK }, } = this.ctx;
754
901
  if (!focusCell) {
755
902
  return;
756
903
  }
904
+ // 处理合并的单元格的移动
905
+ if (ENABLE_MERGE_CELL_LINK && this.ctx.onlyMergeCell) {
906
+ focusCell.updateSpanInfo();
907
+ }
908
+ const { drawX, drawY, width, height, fixed } = focusCell;
757
909
  // 加1补选中框的边框,且可以移动滚动,以为getCell是获取渲染的cell
758
- const diffLeft = fixedLeftWidth - focusCell.drawX + 1;
759
- const diffRight = focusCell.drawX + focusCell.width - (stageWidth - fixedRightWidth) + 1;
760
- let diffTop = header.height - focusCell.drawY;
910
+ const diffLeft = fixedLeftWidth - drawX + 1;
911
+ const diffRight = focusCell.drawX + width - (stageWidth - fixedRightWidth) + 1;
912
+ let diffTop = header.height - drawY;
761
913
  // 格子大于可视高度就取可视高度,防止上下跳动
762
- let cellheight = focusCell.height;
914
+ let cellheight = height;
763
915
  if (cellheight > body.visibleHeight) {
764
916
  cellheight = body.visibleHeight;
765
917
  }
766
918
  let footerHeight = 0;
767
919
  if (FOOTER_FIXED) {
768
920
  if (FOOTER_POSITION === 'top') {
769
- diffTop = header.height + footer.height - focusCell.drawY;
921
+ diffTop = header.height + footer.height - drawY;
770
922
  }
771
923
  else {
772
924
  footerHeight = footer.visibleHeight;
773
925
  }
774
926
  }
775
- const diffBottom = focusCell.drawY + cellheight - (stageHeight - footerHeight - SCROLLER_TRACK_SIZE);
927
+ const diffBottom = drawY + cellheight - (stageHeight - footerHeight - SCROLLER_TRACK_SIZE);
776
928
  let _scrollX = scrollX;
777
929
  let _scrollY = scrollY;
778
930
  // fixed禁用左右横向移动
779
- if (diffRight > 0 && !focusCell.fixed) {
931
+ if (diffRight > 0 && !fixed) {
780
932
  _scrollX = Math.floor(scrollX + diffRight);
781
933
  }
782
- else if (diffLeft > 0 && !focusCell.fixed) {
934
+ else if (diffLeft > 0 && !fixed) {
783
935
  _scrollX = Math.floor(scrollX - diffLeft);
784
936
  }
785
937
  if (diffTop > 0) {