e-virt-table 1.3.1 → 1.3.2

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/index.es.js CHANGED
@@ -1,4 +1,4 @@
1
- (function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode(":root{--evt-header-font: 12px normal Arial;--evt-body-font: 12px normal Arial;--evt-color-white: #fff;--evt-color-black: #000000;--evt-color-primary: rgb(82, 146, 247);--evt-text-color-primary: #333;--evt-text-color-regular: #666;--evt-text-color-secondary: #999;--evt-box-shadow: 0 2px 12px 0 #0000001a;--evt-editor-bg-color: #fff;--evt-editor-text-color: #333;--evt-border-color: #e1e6eb;--evt-stripe-color: #fafafa;--evt-placeholder-color: #cdd0dc;--evt-header-bg-color: #f8faff;--evt-body-bg-color: #fff;--evt-header-text-color: #1d2129;--evt-body-text-color: #4e5969;--evt-footer-text-color: #4e5969;--evt-loading-icon-color: #4e5969;--evt-expand-icon-color: #4e5969;--evt-shrink-icon-color: #4e5969;--evt-error-tip-icon-color: red;--evt-required-color: #f56c6c;--evt-cell-hover-icon-bg-color: #fff;--evt-cell-hover-icon-border-color: #dde0ea;--evt-scroller-color: #dee0e3;--evt-scroller-track-color: #fff;--evt-scroller-focus-color: #bbbec4;--evt-select-border-color: var(--evt-color-primary);--evt-select-area-color: rgba(82, 146, 247, .1);--evt-select-row-col-bg-color: rgba(82, 146, 247, .1);--evt-autofill-point-border-color: #fff;--evt-edit-bg-color: #fcf6ed;--evt-checkbox-color: var(--evt-color-primary);--evt-checkbox-uncheck-color: #dde0ea;--evt-checkbox-disabled-color: #f1f2f4;--evt-checkbox-check-disabled-color: #dde0ea;--evt-icon-edit-color: #4e5969;--evt-icon-select-color: #4e5969;--evt-readonly-color: #fff;--evt-readonly-text-color: var(--evt-body-text-color);--evt-error-tip-color: #ed3f14;--evt-footer-bg-color: #fafafa;--evt-highlight-hover-row-color: rgba(186, 203, 231, .1);--evt-highlight-selected-row-color: rgba(82, 146, 247, .1);--evt-tooltip-bg-color: #303133;--evt-tooltip-text-color: #fff;--evt-resize-row-line-color: #e1e6eb;--evt-resize-column-text-color: #fff;--evt-resize-column-text-bg-color: var(--evt-color-primary);--evt-resize-column-line-color: #e1e6eb;--evt-tree-line-color: #e1e6eb;--evt-sort-icon-color: var(--evt-color-primary);--evt-drag-tip-bg-color: rgba(82, 146, 247, .1);--evt-drag-tip-line-color: var(--evt-color-primary);--evt-context-menu-min-width: 150px;--evt-context-menu-max-width: 220px;--evt-context-menu-item-padding: 8px 8px 8px 14px;--evt-context-menu-bg-color: #fff;--evt-context-menu-text-color: #333;--evt-context-menu-item-hover-text-color: var(--evt-color-primary);--evt-context-menu-item-hover-bg-color: #f5f5f5}.dark{--evt-border-color: #363637;--evt-header-bg-color: #141414;--evt-body-bg-color: #141414;--evt-header-text-color: #a3a6ad;--evt-body-text-color: #cfd3dc;--evt-readonly-text-color: #cfd3dc;--evt-footer-text-color: #cfd3dc;--evt-scroller-color: #414243;--evt-scroller-track-color: #141414;--evt-scroller-focus-color: #a3a6ad;--evt-edit-bg-color: #141414;--evt-footer-bg-color: #262727;--evt-autofill-point-border-color: #fff;--evt-editor-bg-color: #434343;--evt-editor-text-color: #cfd3dc;--evt-context-menu-bg-color: #141414;--evt-context-menu-text-color: #cfd3dc;--evt-context-menu-item-hover-text-color: var(--evt-color-primary);--evt-context-menu-item-hover-bg-color: #414243}.e-virt-table-container{position:relative;outline:none}.e-virt-table-stage{position:relative;overflow:hidden;outline:none;box-sizing:border-box;z-index:10;border-radius:8px;border:1px solid var(--evt-border-color)}.e-virt-table-canvas{position:absolute;left:0;top:0;box-sizing:border-box;border:none;outline:none;z-index:10}.e-virt-table-editor{position:absolute;top:-10000px;left:-10000px;text-align:left;height:auto;line-height:0;z-index:100;overflow:hidden;background-color:var(--evt-editor-bg-color);border:2px solid var(--evt-color-primary);box-sizing:border-box;box-shadow:var(--evt-box-shadow);display:flex;align-items:center}.e-virt-table-overlayer{position:absolute;left:0;top:0;overflow:hidden;z-index:100;pointer-events:none}.e-virt-table-editor-textarea{width:100%;box-sizing:border-box;outline:none;font-weight:400;padding:8px;font-size:12px;color:inherit;white-space:pre-wrap;word-wrap:break-word;word-break:break-all;line-height:1.5;margin:0;border:none;vertical-align:middle;background:var(--evt-editor-bg-color);color:var(--evt-editor-text-color);overflow-y:auto;resize:none}.e-virt-table-context-menu{position:absolute;font-size:14px;color:var(--evt-text-color-regular);background-color:var(--evt-color-white);border-radius:4px;border:1px solid #e4e7ed;box-shadow:var(--evt-box-shadow);width:fit-content;padding:6px 0;z-index:9999;left:-99999px;top:-99999px}.e-virt-table-context-menu-item{cursor:pointer;padding:6px 24px;color:var(--evt-text-color-regular)}.e-virt-table-context-menu-item:hover{color:var(--evt-color-primary);background-color:#f5f7fa}.e-virt-table-loading{display:none;position:absolute;left:0;top:0;right:0;bottom:0;width:100%;height:100%;z-index:2000;background-color:#fff6;display:flex;align-items:center;justify-content:center}.e-virt-table-loading-spinner{opacity:1;display:flex;flex-direction:column;align-items:center;justify-content:center}.e-virt-table-loading-spinner svg{color:var(--evt-text-color-regular);animation:rotate 1s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.e-virt-table-loading-text{margin:0;font-size:12px;color:var(--evt-text-color-regular)}.e-virt-table-main-menu,.e-virt-table-submenu{position:absolute;background:var(--evt-context-menu-bg-color);border-radius:4px;box-shadow:0 2px 8px #0000001a;min-width:var(--evt-context-menu-min-width);max-width:var(--evt-context-menu-max-width);color:var(--evt-text-color-primary)}.e-virt-table-main-menu{border:1px solid var(--evt-border-color);z-index:3000;left:-99999px;top:-99999px;display:none;background-color:var(--evt-body-bg-color)}.e-virt-table-submenu{border:1px solid var(--evt-border-color);z-index:1000;max-height:350px;overflow-y:auto;opacity:0;visibility:hidden;transform:translate(-10px);transition:opacity .2s,visibility .2s,transform .2s;-ms-overflow-style:none;scrollbar-width:none}.e-virt-table-submenu::-webkit-scrollbar{display:none}.e-virt-table-submenu.show{opacity:1;visibility:visible;transform:translate(0)}.e-virt-table-submenu:not(.show){transition:none}.e-virt-table-menu-item,.e-virt-table-submenu-item{position:relative;-webkit-user-select:none;user-select:none;padding:var(--evt-context-menu-item-padding);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background .2s,color .2s;color:var(--evt-context-menu-text-color);font-size:14px}.e-virt-table-menu-item:last-child,.e-virt-table-submenu-item:last-child{border-bottom:none}.menu-item-content{display:flex;align-items:center;flex:1}.menu-item-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-right:8px;flex-shrink:0}.menu-item-icon svg{width:100%;height:100%;fill:currentColor}.menu-item-text{flex:1}.e-virt-table-menu-arrow{display:inline-flex;align-items:center;justify-content:center;color:var(--evt-text-color-regular);transition:color .2s}.e-virt-table-menu-arrow svg{width:20px;height:20px;fill:currentColor}.e-virt-table-submenu-item:hover,.e-virt-table-menu-item:hover,.e-virt-table-menu-item.active{background:var(--evt-context-menu-item-hover-bg-color);color:var(--evt-context-menu-item-hover-text-color)}.e-virt-table-menu-item.disabled,.e-virt-table-submenu-item.disabled{cursor:not-allowed}")),document.head.appendChild(e)}}catch(o){console.error("vite-plugin-css-injected-by-js",o)}})();
1
+ (function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode(":root{--evt-header-font: 12px normal Arial;--evt-body-font: 12px normal Arial;--evt-color-white: #fff;--evt-color-black: #000000;--evt-color-primary: rgb(82, 146, 247);--evt-text-color-primary: #333;--evt-text-color-regular: #666;--evt-text-color-secondary: #999;--evt-box-shadow: 0 2px 12px 0 #0000001a;--evt-editor-bg-color: #fff;--evt-editor-text-color: #333;--evt-border-color: #e1e6eb;--evt-stripe-color: #fafafa;--evt-placeholder-color: #cdd0dc;--evt-header-bg-color: #f8faff;--evt-body-bg-color: #fff;--evt-header-text-color: #1d2129;--evt-body-text-color: #4e5969;--evt-footer-text-color: #4e5969;--evt-loading-icon-color: #4e5969;--evt-expand-icon-color: #4e5969;--evt-shrink-icon-color: #4e5969;--evt-error-tip-icon-color: red;--evt-required-color: #f56c6c;--evt-cell-hover-icon-bg-color: #fff;--evt-cell-hover-icon-border-color: #dde0ea;--evt-scroller-color: #dee0e3;--evt-scroller-track-color: #fff;--evt-scroller-focus-color: #bbbec4;--evt-select-border-color: var(--evt-color-primary);--evt-select-area-color: rgba(82, 146, 247, .1);--evt-select-row-col-bg-color: rgba(82, 146, 247, .1);--evt-autofill-point-border-color: #fff;--evt-edit-bg-color: #fcf6ed;--evt-checkbox-color: var(--evt-color-primary);--evt-checkbox-uncheck-color: #dde0ea;--evt-checkbox-disabled-color: #f1f2f4;--evt-checkbox-check-disabled-color: #dde0ea;--evt-icon-edit-color: #4e5969;--evt-icon-select-color: #4e5969;--evt-readonly-color: #fff;--evt-readonly-text-color: var(--evt-body-text-color);--evt-error-tip-color: #ed3f14;--evt-footer-bg-color: #fafafa;--evt-highlight-hover-row-color: rgba(186, 203, 231, .1);--evt-highlight-selected-row-color: rgba(82, 146, 247, .1);--evt-tooltip-bg-color: #303133;--evt-tooltip-text-color: #fff;--evt-resize-row-line-color: #e1e6eb;--evt-resize-column-text-color: #fff;--evt-resize-column-text-bg-color: var(--evt-color-primary);--evt-resize-column-line-color: #e1e6eb;--evt-tree-line-color: #e1e6eb;--evt-sort-icon-color: var(--evt-color-primary);--evt-drag-tip-bg-color: rgba(82, 146, 247, .1);--evt-drag-tip-line-color: var(--evt-color-primary);--evt-context-menu-min-width: 150px;--evt-context-menu-max-width: 220px;--evt-context-menu-item-padding: 8px 12px;--evt-context-menu-bg-color: #fff;--evt-context-menu-text-color: #333;--evt-context-menu-item-hover-text-color: var(--evt-color-primary);--evt-context-menu-item-hover-bg-color: #f5f5f5;--evt-context-menu-text-size: 13px}.dark{--evt-border-color: #363637;--evt-header-bg-color: #141414;--evt-body-bg-color: #141414;--evt-header-text-color: #a3a6ad;--evt-body-text-color: #cfd3dc;--evt-readonly-text-color: #cfd3dc;--evt-footer-text-color: #cfd3dc;--evt-scroller-color: #414243;--evt-scroller-track-color: #141414;--evt-scroller-focus-color: #a3a6ad;--evt-edit-bg-color: #141414;--evt-footer-bg-color: #262727;--evt-autofill-point-border-color: #fff;--evt-editor-bg-color: #434343;--evt-editor-text-color: #cfd3dc;--evt-context-menu-bg-color: #141414;--evt-context-menu-text-color: #cfd3dc;--evt-context-menu-item-hover-text-color: var(--evt-color-primary);--evt-context-menu-item-hover-bg-color: #414243}.e-virt-table-container{position:relative;outline:none}.e-virt-table-stage{position:relative;overflow:hidden;outline:none;box-sizing:border-box;z-index:10;border-radius:8px;border:1px solid var(--evt-border-color)}.e-virt-table-canvas{position:absolute;left:0;top:0;box-sizing:border-box;border:none;outline:none;z-index:10}.e-virt-table-editor{position:absolute;top:-10000px;left:-10000px;text-align:left;height:auto;line-height:0;z-index:100;overflow:hidden;background-color:var(--evt-editor-bg-color);border:2px solid var(--evt-color-primary);box-sizing:border-box;box-shadow:var(--evt-box-shadow);display:flex;align-items:center}.e-virt-table-overlayer{position:absolute;left:0;top:0;overflow:hidden;z-index:100;pointer-events:none}.e-virt-table-editor-textarea{width:100%;box-sizing:border-box;outline:none;font-weight:400;padding:8px;font-size:12px;color:inherit;white-space:pre-wrap;word-wrap:break-word;word-break:break-all;line-height:1.5;margin:0;border:none;vertical-align:middle;background:var(--evt-editor-bg-color);color:var(--evt-editor-text-color);overflow-y:auto;resize:none}.e-virt-table-context-menu{position:absolute;font-size:14px;color:var(--evt-text-color-regular);background-color:var(--evt-color-white);border-radius:4px;border:1px solid #e4e7ed;box-shadow:var(--evt-box-shadow);width:fit-content;padding:6px 0;z-index:9999;left:-99999px;top:-99999px}.e-virt-table-context-menu-item{cursor:pointer;padding:6px 24px;color:var(--evt-text-color-regular)}.e-virt-table-context-menu-item:hover{color:var(--evt-color-primary);background-color:#f5f7fa}.e-virt-table-loading{display:none;position:absolute;left:0;top:0;right:0;bottom:0;width:100%;height:100%;z-index:2000;background-color:#fff6;display:flex;align-items:center;justify-content:center}.e-virt-table-loading-spinner{opacity:1;display:flex;flex-direction:column;align-items:center;justify-content:center}.e-virt-table-loading-spinner svg{color:var(--evt-text-color-regular);animation:rotate 1s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.e-virt-table-loading-text{margin:0;font-size:12px;color:var(--evt-text-color-regular)}.e-virt-table-main-menu,.e-virt-table-submenu{position:absolute;background:var(--evt-context-menu-bg-color);border-radius:4px;box-shadow:0 2px 8px #0000001a;min-width:var(--evt-context-menu-min-width);max-width:var(--evt-context-menu-max-width);color:var(--evt-text-color-primary)}.e-virt-table-main-menu{border:1px solid var(--evt-border-color);z-index:3000;left:-99999px;top:-99999px;display:none;position:fixed;background-color:var(--evt-body-bg-color)}.e-virt-table-submenu{border:1px solid var(--evt-border-color);z-index:1000;max-height:350px;overflow-y:auto;opacity:0;visibility:hidden;transform:translate(-10px);transition:opacity .2s,visibility .2s,transform .2s;-ms-overflow-style:none;scrollbar-width:none}.e-virt-table-submenu::-webkit-scrollbar{display:none}.e-virt-table-submenu.show{opacity:1;visibility:visible;transform:translate(0)}.e-virt-table-submenu:not(.show){transition:none}.e-virt-table-menu-item,.e-virt-table-submenu-item{position:relative;-webkit-user-select:none;user-select:none;padding:var(--evt-context-menu-item-padding);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background .2s,color .2s;color:var(--evt-context-menu-text-color);font-size:var(--evt-context-menu-text-size)}.e-virt-table-menu-item:last-child,.e-virt-table-submenu-item:last-child{border-bottom:none}.e-virt-table-menu-item:has(.menu-item-icon){padding-left:8px}.menu-item-content{display:flex;align-items:center;flex:1;min-width:0}.menu-item-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-right:8px;flex-shrink:0}.menu-item-icon svg{width:100%;height:100%;fill:currentColor}.menu-item-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.e-virt-table-menu-arrow{display:inline-flex;align-items:center;justify-content:center;color:var(--evt-text-color-regular);transition:color .2s}.e-virt-table-menu-arrow svg{width:20px;height:20px;fill:currentColor}.e-virt-table-submenu-item:hover,.e-virt-table-menu-item:hover,.e-virt-table-menu-item.active{background:var(--evt-context-menu-item-hover-bg-color);color:var(--evt-context-menu-item-hover-text-color)}.e-virt-table-menu-item.disabled,.e-virt-table-submenu-item.disabled{cursor:not-allowed}")),document.head.appendChild(e)}}catch(o){console.error("vite-plugin-css-injected-by-js",o)}})();
2
2
  var de = Object.defineProperty;
3
3
  var fe = (h, t, e) => t in h ? de(h, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : h[t] = e;
4
4
  var n = (h, t, e) => fe(h, typeof t != "symbol" ? t + "" : t, e);
@@ -66,7 +66,7 @@ function $t() {
66
66
  return (h === "x" ? t : t & 3 | 8).toString(16);
67
67
  });
68
68
  }
69
- function Q(h, t) {
69
+ function J(h, t) {
70
70
  let e = 0, i;
71
71
  return function(...s) {
72
72
  const o = (/* @__PURE__ */ new Date()).getTime(), r = o - e, a = typeof t == "function" ? t() : t;
@@ -95,7 +95,7 @@ function nt(h = [], t = 1, e = 0, i = "") {
95
95
  s.children.forEach((l) => {
96
96
  l.fixed = r;
97
97
  });
98
- const a = nt(s.children, t - 1, e + 1, i);
98
+ const a = nt(s.children, t - 1, e + 1, s.key);
99
99
  return a && a.forEach((l) => {
100
100
  o += l.colspan ?? 0;
101
101
  }), {
@@ -117,10 +117,10 @@ function nt(h = [], t = 1, e = 0, i = "") {
117
117
  };
118
118
  });
119
119
  }
120
- function j(h = []) {
120
+ function Q(h = []) {
121
121
  let t = [];
122
122
  return h.forEach((e) => {
123
- e.children ? t = t.concat(j(e.children)) : t.push(e);
123
+ e.children ? t = t.concat(Q(e.children)) : t.push(e);
124
124
  }), t;
125
125
  }
126
126
  function Gt(h) {
@@ -181,7 +181,7 @@ function Ut(h, t, e = []) {
181
181
  }
182
182
  }), s;
183
183
  }
184
- function jt(h, t) {
184
+ function qt(h, t) {
185
185
  let e = "", i = "";
186
186
  const s = {};
187
187
  return t.forEach((o, r) => {
@@ -205,7 +205,7 @@ function Ee(h, t, e = []) {
205
205
  function pe(h, t = []) {
206
206
  const { column: e, row: i, visibleLeafColumns: s } = h, o = s.filter((r) => t.includes(r.key));
207
207
  if (t.includes(e.key)) {
208
- const r = jt(i, o);
208
+ const r = qt(i, o);
209
209
  return r[e.key] === 0 ? {
210
210
  rowspan: 0,
211
211
  colspan: 0,
@@ -281,15 +281,15 @@ function ye(h, t) {
281
281
  const e = Dt(h), i = Dt(t);
282
282
  return isNaN(e.getTime()) && isNaN(i.getTime()) ? 0 : isNaN(e.getTime()) ? -1 : isNaN(i.getTime()) ? 1 : e.getTime() - i.getTime();
283
283
  }
284
- function Et(h, t = /* @__PURE__ */ new WeakMap()) {
284
+ function at(h, t = /* @__PURE__ */ new WeakMap()) {
285
285
  if (h === null || typeof h != "object") return h;
286
286
  if (t.has(h)) return t.get(h);
287
287
  const e = Array.isArray(h) ? [] : {};
288
288
  return t.set(h, e), Reflect.ownKeys(h).forEach((i) => {
289
- e[i] = Et(h[i], t);
289
+ e[i] = at(h[i], t);
290
290
  }), e;
291
291
  }
292
- class qt {
292
+ class jt {
293
293
  constructor(t, e, i, s, o, r, a) {
294
294
  n(this, "ctx");
295
295
  n(this, "x", 0);
@@ -335,7 +335,7 @@ class qt {
335
335
  getRightFixedX() {
336
336
  }
337
337
  }
338
- class Rt extends qt {
338
+ class It extends jt {
339
339
  constructor(e, i, s, o, r, a, l, c, d, f = "body") {
340
340
  super(e, o, r, a, l, f, c.fixed);
341
341
  n(this, "formatter");
@@ -541,11 +541,11 @@ class Rt extends qt {
541
541
  this.rowExpand = c, this.rowHasChildren = d;
542
542
  const { TREE_INDENT: u = 16, CHECKBOX_SIZE: w, TREE_ICON_SIZE: m } = this.ctx.config;
543
543
  if (r = x * u, f) {
544
- const I = this.ctx.icons.get("loading");
545
- a = "loading", o = I;
544
+ const v = this.ctx.icons.get("loading");
545
+ a = "loading", o = v;
546
546
  } else if (d) {
547
- const I = this.ctx.icons.get("expand"), _ = this.ctx.icons.get("shrink");
548
- o = c ? _ : I, a = c ? "shrink" : "expand";
547
+ const v = this.ctx.icons.get("expand"), _ = this.ctx.icons.get("shrink");
548
+ o = c ? _ : v, a = c ? "shrink" : "expand";
549
549
  }
550
550
  let g = m, E = m, C = this.drawX;
551
551
  (this.align === "center" || this.align === "right") && (C = this.drawX + (this.visibleWidth - g - 2 * e) / 2, this.align = "left");
@@ -613,31 +613,31 @@ class Rt extends qt {
613
613
  STRIPE_COLOR: m
614
614
  } = this.ctx.config;
615
615
  if (this.cellType === "footer") {
616
- let _ = c, T = l;
616
+ let _ = c, S = l;
617
617
  if (typeof o == "function") {
618
- const v = o, { backgroundColor: R, color: S, font: O } = v({
618
+ const I = o, { backgroundColor: R, color: T, font: O } = I({
619
619
  row: this.row,
620
620
  rowIndex: this.rowIndex,
621
621
  colIndex: this.colIndex,
622
622
  column: this.column,
623
623
  value: this.getValue()
624
624
  }) || {};
625
- R && (_ = R), S && (T = S), O && (this.drawTextFont = O);
625
+ R && (_ = R), T && (S = T), O && (this.drawTextFont = O);
626
626
  }
627
- this.drawCellSkyBgColor = "transparent", this.drawCellBgColor = _, this.drawTextColor = T;
627
+ this.drawCellSkyBgColor = "transparent", this.drawCellBgColor = _, this.drawTextColor = S;
628
628
  return;
629
629
  }
630
630
  let g = "transparent";
631
631
  const E = this.ctx.hoverCell, C = this.ctx.currentCell;
632
632
  let p = this.rowIndex, b = this.rowIndex;
633
633
  if (this.rowspan !== 1 && (x || d)) {
634
- const _ = this.getSpanInfo(), { yArr: T } = _;
635
- p = T[0], b = T[1];
634
+ const _ = this.getSpanInfo(), { yArr: S } = _;
635
+ p = S[0], b = S[1];
636
636
  }
637
637
  x && E && (E.rowKey === this.rowKey && (g = u), E.rowIndex >= p && E.rowIndex <= b && (g = u)), d && C && (C.rowKey === this.rowKey && (g = f), C.rowIndex >= p && C.rowIndex <= b && (g = f)), this.drawCellSkyBgColor = g;
638
- let y = e, I = a;
639
- if (this.ctx.database.getReadonly(this.rowKey, this.key) || (y = i, I = r), w && (this.rowIndex % 2 ? y = m : y = e), typeof s == "function") {
640
- const _ = s, { backgroundColor: T, color: v, font: R } = _({
638
+ let y = e, v = a;
639
+ if (this.ctx.database.getReadonly(this.rowKey, this.key) || (y = i, v = r), w && (this.rowIndex % 2 ? y = m : y = e), typeof s == "function") {
640
+ const _ = s, { backgroundColor: S, color: I, font: R } = _({
641
641
  row: this.row,
642
642
  rowIndex: this.rowIndex,
643
643
  colIndex: this.colIndex,
@@ -645,9 +645,9 @@ class Rt extends qt {
645
645
  isHasChanged: this.isHasChanged,
646
646
  value: this.getValue()
647
647
  }) || {};
648
- T && (y = T), v && (I = v), R && (this.drawTextFont = R);
648
+ S && (y = S), I && (v = I), R && (this.drawTextFont = R);
649
649
  }
650
- this.drawCellBgColor = y, this.drawTextColor = I;
650
+ this.drawCellBgColor = y, this.drawTextColor = v;
651
651
  }
652
652
  updateSelection() {
653
653
  const { visibleWidth: e, visibleHeight: i, rowspan: s, colspan: o, cellType: r, type: a, rowIndex: l, rowKey: c } = this;
@@ -659,8 +659,8 @@ class Rt extends qt {
659
659
  let w = u, m = this.drawY + (i - f) / 2;
660
660
  if (a !== "selection-tree") {
661
661
  if (a === "tree-selection") {
662
- const { TREE_INDENT: C = 16, TREE_ICON_SIZE: p } = this.ctx.config, b = this.ctx.database.getRowForRowKey(c), { level: y = 0 } = b || {}, I = y * C;
663
- w = u + p + I;
662
+ const { TREE_INDENT: C = 16, TREE_ICON_SIZE: p } = this.ctx.config, b = this.ctx.database.getRowForRowKey(c), { level: y = 0 } = b || {}, v = y * C;
663
+ w = u + p + v;
664
664
  }
665
665
  }
666
666
  let g = this.ctx.icons.get("checkbox-uncheck"), E = "checkbox-uncheck";
@@ -969,8 +969,8 @@ class Rt extends qt {
969
969
  let c = i, d = s;
970
970
  const { xArr: f, yArr: x, lineDash: u = [], borderWidth: w = 1, borderColor: m, fillColor: g } = e, E = f[0], C = f[1], p = x[0], b = x[1];
971
971
  if (r >= E && r <= C && o === p) {
972
- const y = r === C ? 1 : 0, I = r === E ? 1 : 0;
973
- this.ctx.paint.drawLine([c + I, d + 1, c + l - y, d + 1], {
972
+ const y = r === C ? 1 : 0, v = r === E ? 1 : 0;
973
+ this.ctx.paint.drawLine([c + v, d + 1, c + l - y, d + 1], {
974
974
  borderColor: m,
975
975
  fillColor: g,
976
976
  borderWidth: w,
@@ -980,8 +980,8 @@ class Rt extends qt {
980
980
  });
981
981
  }
982
982
  if (r === C && o >= p && o <= b) {
983
- const y = o === p ? 1 : 0, I = o === b ? 1 : 0;
984
- this.ctx.paint.drawLine([c + l - 1, d + y, c + l - 1, d + a - I], {
983
+ const y = o === p ? 1 : 0, v = o === b ? 1 : 0;
984
+ this.ctx.paint.drawLine([c + l - 1, d + y, c + l - 1, d + a - v], {
985
985
  borderColor: m,
986
986
  fillColor: g,
987
987
  borderWidth: w,
@@ -991,8 +991,8 @@ class Rt extends qt {
991
991
  });
992
992
  }
993
993
  if (r >= E && r <= C && o === b) {
994
- const y = r === C ? 1 : 0, I = r === E ? 1 : 0;
995
- this.ctx.paint.drawLine([c + I, d + a - 1, c + l - y, d + a - 1], {
994
+ const y = r === C ? 1 : 0, v = r === E ? 1 : 0;
995
+ this.ctx.paint.drawLine([c + v, d + a - 1, c + l - y, d + a - 1], {
996
996
  borderColor: m,
997
997
  fillColor: g,
998
998
  borderWidth: w,
@@ -1002,8 +1002,8 @@ class Rt extends qt {
1002
1002
  });
1003
1003
  }
1004
1004
  if (r === E && o >= p && o <= b) {
1005
- const y = o === b ? 1 : 0, I = o === p ? 1 : 0;
1006
- this.ctx.paint.drawLine([c + 1, d + I, c + 1, d + a - y], {
1005
+ const y = o === b ? 1 : 0, v = o === p ? 1 : 0;
1006
+ this.ctx.paint.drawLine([c + 1, d + v, c + 1, d + a - y], {
1007
1007
  borderColor: m,
1008
1008
  fillColor: g,
1009
1009
  borderWidth: w,
@@ -1054,12 +1054,12 @@ class be {
1054
1054
  n(this, "sortState", /* @__PURE__ */ new Map());
1055
1055
  this.ctx = t;
1056
1056
  const { data: i = [], columns: s = [], footerData: o = [] } = e;
1057
- this.data = i, this.footerData = o, this.columns = s, this.originalColumns = Et(s), this.init();
1057
+ this.data = i, this.footerData = o, this.columns = s, this.originalColumns = at(s), this.init();
1058
1058
  }
1059
1059
  // 初始化默认不忽略清空改变值和校验map
1060
1060
  init(t = !0) {
1061
1061
  this.ctx.paint.clearTextCache(), this.clearBufferData(), this.rowKeyMap.clear(), this.checkboxKeyMap.clear(), this.colIndexKeyMap.clear(), this.rowIndexRowKeyMap.clear(), this.rowKeyRowIndexMap.clear();
1062
- const e = this.getColumns(), i = j(e);
1062
+ const e = this.getColumns(), i = Q(e);
1063
1063
  if (this.ctx.hasSelection = i.some((s) => s.type === "selection"), this.ctx.hasTree = i.some((s) => s.type === "tree"), t) {
1064
1064
  this.originalDataMap.clear(), this.changedDataMap.clear(), this.validationErrorMap.clear();
1065
1065
  const { ROW_KEY: s } = this.ctx.config;
@@ -1185,7 +1185,7 @@ class be {
1185
1185
  return e(t);
1186
1186
  }
1187
1187
  getColumns() {
1188
- const t = Et(this.columns);
1188
+ const t = at(this.columns);
1189
1189
  return this.generateColumns(t);
1190
1190
  }
1191
1191
  setColumns(t) {
@@ -1987,40 +1987,40 @@ class be {
1987
1987
  }
1988
1988
  ]
1989
1989
  };
1990
- let g = e, E = e, C = a, p = a, b = [], y = 0, I = 0, _ = 0, T = 0;
1990
+ let g = e, E = e, C = a, p = a, b = [], y = 0, v = 0, _ = 0, S = 0;
1991
1991
  if (d !== 1 && w) {
1992
- T = x;
1993
- const v = l.reduce((R, S) => {
1994
- const O = this.getItemValue(s, S) ?? "";
1992
+ S = x;
1993
+ const I = l.reduce((R, T) => {
1994
+ const O = this.getItemValue(s, T) ?? "";
1995
1995
  return `${R}${O}`;
1996
1996
  }, "");
1997
1997
  for (let R = e - 1; R >= 0; R--) {
1998
- const S = this.rowIndexRowKeyMap.get(R) || "", O = l.reduce((M, L) => {
1999
- const A = this.getItemValue(S, L) ?? "";
1998
+ const T = this.rowIndexRowKeyMap.get(R) || "", O = l.reduce((M, L) => {
1999
+ const A = this.getItemValue(T, L) ?? "";
2000
2000
  return `${M}${A}`;
2001
2001
  }, "");
2002
- if (v === O)
2002
+ if (I === O)
2003
2003
  g = R;
2004
2004
  else
2005
2005
  break;
2006
2006
  }
2007
2007
  for (let R = e; R <= this.ctx.maxRowIndex; R++) {
2008
- const S = this.rowIndexRowKeyMap.get(R) || "", O = l.reduce((M, L) => {
2009
- const A = this.getItemValue(S, L) ?? "";
2008
+ const T = this.rowIndexRowKeyMap.get(R) || "", O = l.reduce((M, L) => {
2009
+ const A = this.getItemValue(T, L) ?? "";
2010
2010
  return `${M}${A}`;
2011
2011
  }, "");
2012
- if (v === O)
2012
+ if (I === O)
2013
2013
  E = R;
2014
2014
  else
2015
2015
  break;
2016
2016
  }
2017
2017
  for (let R = g; R < e; R++) {
2018
- const { height: S } = this.positions[R];
2019
- y += S;
2018
+ const { height: T } = this.positions[R];
2019
+ y += T;
2020
2020
  }
2021
2021
  for (let R = g; R <= E; R++) {
2022
- const { height: S } = this.positions[R];
2023
- _ += S;
2022
+ const { height: T } = this.positions[R];
2023
+ _ += T;
2024
2024
  const O = this.rowIndexRowKeyMap.get(R) || "", { item: M } = this.rowKeyMap.get(O), L = this.getItemValue(O, i);
2025
2025
  b.push({
2026
2026
  rowKey: O,
@@ -2032,37 +2032,37 @@ class be {
2032
2032
  }
2033
2033
  if (u !== 1 && m) {
2034
2034
  _ = f;
2035
- for (let v = a - 1; v >= 0; v--) {
2036
- const R = this.getColumnByColIndex(v);
2035
+ for (let I = a - 1; I >= 0; I--) {
2036
+ const R = this.getColumnByColIndex(I);
2037
2037
  if (!R)
2038
2038
  break;
2039
- const S = this.getItemValue(s, i), O = this.getItemValue(s, R.key);
2040
- if (S === O && c.includes(R.key))
2041
- C = v;
2039
+ const T = this.getItemValue(s, i), O = this.getItemValue(s, R.key);
2040
+ if (T === O && c.includes(R.key))
2041
+ C = I;
2042
2042
  else
2043
2043
  break;
2044
2044
  }
2045
- for (let v = a; v <= this.ctx.maxColIndex; v++) {
2046
- const R = this.getColumnByColIndex(v);
2045
+ for (let I = a; I <= this.ctx.maxColIndex; I++) {
2046
+ const R = this.getColumnByColIndex(I);
2047
2047
  if (!R)
2048
2048
  break;
2049
- const S = this.getItemValue(s, i), O = this.getItemValue(s, R.key);
2050
- if (S === O && c.includes(R.key))
2051
- p = v;
2049
+ const T = this.getItemValue(s, i), O = this.getItemValue(s, R.key);
2050
+ if (T === O && c.includes(R.key))
2051
+ p = I;
2052
2052
  else
2053
2053
  break;
2054
2054
  }
2055
- for (let v = C; v < a; v++) {
2056
- const R = this.getColumnByColIndex(v);
2055
+ for (let I = C; I < a; I++) {
2056
+ const R = this.getColumnByColIndex(I);
2057
2057
  if (!R)
2058
2058
  break;
2059
- I += R.width || 100;
2059
+ v += R.width || 100;
2060
2060
  }
2061
- for (let v = C; v <= p; v++) {
2062
- const R = this.getColumnByColIndex(v);
2061
+ for (let I = C; I <= p; I++) {
2062
+ const R = this.getColumnByColIndex(I);
2063
2063
  if (!R)
2064
2064
  break;
2065
- T += R.width || 100, b.push({
2065
+ S += R.width || 100, b.push({
2066
2066
  rowKey: s,
2067
2067
  key: R.key,
2068
2068
  value: this.getItemValue(s, R.key),
@@ -2076,9 +2076,9 @@ class be {
2076
2076
  rowspan: d,
2077
2077
  colspan: u,
2078
2078
  height: _,
2079
- width: T,
2079
+ width: S,
2080
2080
  offsetTop: y,
2081
- offsetLeft: I,
2081
+ offsetLeft: v,
2082
2082
  dataList: b
2083
2083
  };
2084
2084
  }
@@ -2117,7 +2117,7 @@ class be {
2117
2117
  // 获取虚拟单元格,只针对可见的
2118
2118
  getVirtualBodyCell(t, e) {
2119
2119
  const i = this.getColumnByColIndex(e), s = this.getRowForRowIndex(t);
2120
- return !i || !s ? void 0 : new Rt(this.ctx, t, e, 0, 0, 0, 0, i, s.item, "body");
2120
+ return !i || !s ? void 0 : new It(this.ctx, t, e, 0, 0, 0, 0, i, s.item, "body");
2121
2121
  }
2122
2122
  getVirtualBodyCellByKey(t, e) {
2123
2123
  const i = this.getRowIndexForRowKey(t), s = this.getColIndexForKey(e);
@@ -2507,35 +2507,35 @@ class _e {
2507
2507
  const E = parseInt(((R = a.match(/\d+/)) == null ? void 0 : R[0]) || "12") * (r.lineHeight || 1.2), C = s - d * 2 - w - m;
2508
2508
  let p = !1;
2509
2509
  const b = Math.round((o - 2 * d) / E);
2510
- let y = this.wrapText(t, C, r.cacheTextKey), I = Math.min(y.length, Math.max(b, 1));
2511
- x === "auto" && u ? I = y.length : typeof x == "number" && x < I && x !== 1 ? I = x : (x === 1 && (y = [t], I = 1), x === "auto" && b === 1 && (y = [t], I = 1));
2510
+ let y = this.wrapText(t, C, r.cacheTextKey), v = Math.min(y.length, Math.max(b, 1));
2511
+ x === "auto" && u ? v = y.length : typeof x == "number" && x < v && x !== 1 ? v = x : (x === 1 && (y = [t], v = 1), x === "auto" && b === 1 && (y = [t], v = 1));
2512
2512
  let _ = i + d;
2513
- const T = Math.round(I * E);
2514
- f === "middle" ? _ = i + (o - T) / 2 : f === "bottom" && (_ = i + o - T - d);
2515
- let v = e + d + w;
2516
- l === "center" ? v = e + s / 2 : l === "right" && (v = e + s - d - m);
2517
- for (let S = 0; S < y.length; S++) {
2518
- const O = y[S], M = _ + S * E;
2519
- if (this.ctx.textBaseline = "top", S === I - 1) {
2520
- const A = y.slice(S).join(""), { _text: D, ellipsis: H } = this.handleEllipsis(A, s, d, a);
2521
- this.ctx.fillText(D, v, M), p = H;
2513
+ const S = Math.round(v * E);
2514
+ f === "middle" ? _ = i + (o - S) / 2 : f === "bottom" && (_ = i + o - S - d);
2515
+ let I = e + d + w;
2516
+ l === "center" ? I = e + s / 2 : l === "right" && (I = e + s - d - m);
2517
+ for (let T = 0; T < y.length; T++) {
2518
+ const O = y[T], M = _ + T * E;
2519
+ if (this.ctx.textBaseline = "top", T === v - 1) {
2520
+ const A = y.slice(T).join(""), { _text: D, ellipsis: H } = this.handleEllipsis(A, s, d, a);
2521
+ this.ctx.fillText(D, I, M), p = H;
2522
2522
  break;
2523
2523
  }
2524
- this.ctx.fillText(O, v, M);
2524
+ this.ctx.fillText(O, I, M);
2525
2525
  }
2526
2526
  if (r.textCallback && y.length) {
2527
- const S = y.reduce((D, H) => Math.max(D, this.ctx.measureText(H).width), 0), O = Math.round(S);
2528
- let M = v, L = v + O;
2529
- l === "center" ? (M = v - O / 2, L = v + O / 2) : l === "right" && (M = v - O, L = v);
2527
+ const T = y.reduce((D, H) => Math.max(D, this.ctx.measureText(H).width), 0), O = Math.round(T);
2528
+ let M = I, L = I + O;
2529
+ l === "center" ? (M = I - O / 2, L = I + O / 2) : l === "right" && (M = I - O, L = I);
2530
2530
  const A = {
2531
- x: v,
2531
+ x: I,
2532
2532
  y: _,
2533
2533
  width: O,
2534
- height: T,
2534
+ height: S,
2535
2535
  left: M,
2536
2536
  right: L,
2537
2537
  top: _,
2538
- bottom: _ + T
2538
+ bottom: _ + S
2539
2539
  };
2540
2540
  r.textCallback(A);
2541
2541
  }
@@ -2646,8 +2646,6 @@ class Nt {
2646
2646
  n(this, "STRIPE_COLOR", "#fafafa");
2647
2647
  /** 区域边框颜色 */
2648
2648
  n(this, "BORDER_COLOR", "#e1e6eb");
2649
- /** 宽度为 0 表示自适应100% */
2650
- n(this, "WIDTH", 0);
2651
2649
  /** 高度,为 0 表示自适应 */
2652
2650
  n(this, "HEIGHT", 0);
2653
2651
  /** 占位文本颜色 */
@@ -2974,7 +2972,7 @@ class Nt {
2974
2972
  }), Object.assign(this, t, this._config);
2975
2973
  }
2976
2974
  }
2977
- const Zt = '<svg t="1724122015492" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4237" width="32" height="32"><path d="M401.472 316.992l159.04 217.664L591.488 512l-30.976-22.656-159.04 217.728q-2.24 3.008-3.84 6.464-1.6 3.456-2.496 7.104-0.896 3.648-1.024 7.424-0.192 3.84 0.384 7.552 0.64 3.712 1.92 7.296 1.28 3.52 3.2 6.784 1.984 3.2 4.544 6.016 2.56 2.752 5.632 4.992 3.072 2.24 6.464 3.84 3.456 1.6 7.168 2.496 3.648 0.896 7.424 1.024 3.776 0.192 7.488-0.448 3.776-0.576 7.296-1.856 3.584-1.28 6.784-3.264 3.2-1.92 6.016-4.48 2.816-2.56 5.056-5.632l159.04-217.728q3.584-4.928 5.504-10.752 1.92-5.76 1.92-11.904 0-6.08-1.92-11.904-1.92-5.76-5.504-10.752L463.488 271.68q-2.24-3.072-5.056-5.632-2.752-2.56-6.016-4.48-3.2-1.984-6.784-3.328-3.52-1.28-7.296-1.856-3.712-0.576-7.488-0.448-3.84 0.192-7.424 1.088-3.712 0.896-7.168 2.496-3.392 1.6-6.4 3.84-3.136 2.176-5.696 4.992-2.56 2.752-4.48 6.016-1.984 3.2-3.264 6.784-1.28 3.52-1.92 7.296-0.576 3.712-0.384 7.488 0.128 3.84 1.024 7.488 0.896 3.648 2.496 7.04 1.6 3.456 3.84 6.528z m30.976-61.056q-3.776 0-7.488 0.704-3.712 0.768-7.168 2.24-3.52 1.408-6.656 3.52-3.2 2.112-5.824 4.8-2.688 2.624-4.8 5.76-2.112 3.2-3.52 6.656-1.472 3.52-2.176 7.232-0.768 3.712-0.768 7.488 0 3.776 0.768 7.488 0.704 3.712 2.176 7.232 1.408 3.456 3.52 6.592 2.112 3.2 4.8 5.824 2.688 2.688 5.76 4.8 3.2 2.112 6.72 3.52 3.456 1.472 7.168 2.176 3.712 0.768 7.488 0.768 3.84 0 7.488-0.768 3.712-0.704 7.232-2.176 3.456-1.408 6.592-3.52 3.2-2.112 5.824-4.8 2.688-2.688 4.8-5.76 2.112-3.2 3.52-6.656 1.472-3.52 2.24-7.232 0.704-3.712 0.704-7.488 0-3.84-0.704-7.488-0.768-3.712-2.24-7.232-1.408-3.456-3.52-6.592-2.112-3.2-4.8-5.824-2.624-2.688-5.76-4.8-3.2-2.112-6.656-3.52-3.52-1.472-7.232-2.24Q436.224 256 432.448 256z m0 435.392q-3.776 0-7.488 0.704-3.712 0.768-7.168 2.176-3.52 1.472-6.656 3.584-3.2 2.112-5.824 4.736-2.688 2.688-4.8 5.824-2.112 3.2-3.52 6.656-1.472 3.52-2.176 7.232-0.768 3.712-0.768 7.488 0 3.776 0.768 7.488 0.704 3.712 2.176 7.168 1.408 3.52 3.52 6.656 2.112 3.2 4.8 5.76 2.688 2.752 5.76 4.8 3.2 2.112 6.72 3.584 3.456 1.472 7.168 2.176 3.712 0.768 7.488 0.768 3.84 0 7.488-0.768 3.712-0.704 7.232-2.176 3.456-1.472 6.592-3.584 3.2-2.048 5.824-4.736 2.688-2.688 4.8-5.824 2.112-3.2 3.52-6.656 1.472-3.456 2.24-7.168 0.704-3.712 0.704-7.488 0-3.84-0.704-7.488-0.768-3.712-2.24-7.232-1.408-3.52-3.52-6.656-2.112-3.136-4.8-5.76-2.624-2.688-5.76-4.8-3.2-2.112-6.656-3.584-3.52-1.408-7.232-2.176-3.712-0.704-7.488-0.704z" p-id="4238"></path></svg>', kt = '<svg t="1722595535853" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4551" width="32" height="32"><path d="M640 128H384c-170.496 0-256 85.504-256 256v256c0 170.496 85.504 256 256 256h256c170.496 0 256-85.504 256-256V384c0-170.496-85.504-256-256-256z m67.584 302.592c-2.048 4.608-4.608 8.704-8.192 12.288L506.88 634.88c-3.584 3.584-7.68 6.144-12.288 8.192-4.608 2.048-9.728 3.072-14.848 3.072s-10.24-1.024-14.848-3.072c-4.608-2.048-8.704-4.608-12.288-8.192l-96.256-96.256c-3.584-3.584-6.144-7.68-8.192-12.288-2.048-4.608-3.072-9.728-3.072-14.848 0-2.56 0-5.12 1.024-7.68 0.512-2.56 1.024-5.12 2.048-7.168 1.024-2.56 2.048-4.608 3.584-6.656 1.536-2.048 3.072-4.096 4.608-5.632 1.536-2.048 3.584-3.584 5.632-4.608 2.048-1.536 4.096-2.56 6.656-3.584 2.56-1.024 4.608-1.536 7.168-2.048 2.56-0.512 5.12-0.512 7.68-0.512 5.12 0 10.24 1.024 14.848 3.072 4.608 2.048 8.704 4.608 12.288 8.192l69.12 68.608L645.12 389.12c3.584-3.584 7.68-6.144 12.288-8.192 4.608-2.048 9.728-3.072 14.848-3.072 2.56 0 5.12 0 7.68 0.512s5.12 1.024 7.168 2.048c2.56 1.024 4.608 2.048 6.656 3.584 2.048 1.536 4.096 3.072 5.632 4.608 1.536 1.536 3.584 3.584 4.608 5.632 1.536 2.048 2.56 4.096 3.584 6.656 1.024 2.56 1.536 4.608 2.048 7.168 0.512 2.56 1.024 5.12 1.024 7.68 0 5.12-1.024 10.24-3.072 14.848z" p-id="4552"></path></svg>', Xt = '<svg t="1724122044148" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4551" width="32" height="32"><path d="M707.648 401.28L489.28 560.704l22.656 30.976 22.656-30.976L316.16 401.216q-3.072-2.24-6.464-3.84-3.456-1.536-7.104-2.432-3.712-0.896-7.488-1.088-3.776-0.128-7.488 0.448-3.776 0.64-7.296 1.92-3.584 1.28-6.784 3.2-3.2 1.984-6.016 4.544-2.816 2.56-5.056 5.632-2.176 3.072-3.84 6.464-1.536 3.456-2.432 7.104-0.896 3.712-1.088 7.488-0.128 3.776 0.448 7.488 0.64 3.776 1.92 7.296 1.28 3.584 3.2 6.784 1.984 3.2 4.544 6.016 2.56 2.752 5.632 4.992l218.368 159.552q4.928 3.584 10.752 5.504 5.76 1.92 11.904 1.92 6.08 0 11.904-1.92 5.76-1.92 10.752-5.504l218.368-159.552q3.008-2.24 5.568-4.992 2.56-2.816 4.544-6.016 1.92-3.2 3.264-6.784 1.28-3.52 1.92-7.296 0.576-3.712 0.384-7.488-0.128-3.84-1.024-7.488-0.896-3.648-2.496-7.04-1.6-3.456-3.84-6.528-2.24-3.072-4.992-5.632-2.816-2.56-6.016-4.48-3.2-1.984-6.784-3.328-3.584-1.28-7.296-1.856-3.712-0.64-7.488-0.448-3.84 0.192-7.488 1.088-3.648 0.896-7.04 2.496-3.456 1.536-6.528 3.84z m61.056 30.976q0-3.84-0.768-7.488-0.704-3.712-2.176-7.232-1.472-3.456-3.52-6.656-2.112-3.136-4.8-5.76-2.688-2.688-5.76-4.8-3.2-2.112-6.72-3.584-3.456-1.408-7.168-2.176-3.712-0.704-7.488-0.704-3.84 0-7.488 0.704-3.712 0.768-7.232 2.176-3.456 1.472-6.656 3.584-3.136 2.112-5.76 4.8-2.688 2.624-4.8 5.76-2.112 3.2-3.584 6.656-1.408 3.52-2.176 7.232-0.704 3.712-0.704 7.488 0 3.776 0.704 7.488 0.768 3.712 2.176 7.168 1.472 3.52 3.584 6.656 2.112 3.2 4.8 5.824 2.624 2.688 5.76 4.8 3.2 2.112 6.656 3.52 3.52 1.472 7.232 2.176 3.712 0.768 7.488 0.768 3.776 0 7.488-0.768 3.712-0.704 7.168-2.176 3.52-1.408 6.656-3.52 3.2-2.112 5.824-4.8 2.688-2.688 4.8-5.76 2.048-3.2 3.52-6.72 1.472-3.456 2.176-7.168 0.768-3.712 0.768-7.488z m-436.736 0q0-3.84-0.768-7.488-0.704-3.712-2.176-7.232-1.408-3.456-3.52-6.656-2.112-3.136-4.8-5.76-2.688-2.688-5.76-4.8-3.2-2.112-6.656-3.584-3.52-1.408-7.232-2.176-3.712-0.704-7.488-0.704-3.84 0-7.488 0.704-3.712 0.768-7.232 2.176-3.456 1.472-6.592 3.584-3.2 2.112-5.824 4.8-2.688 2.624-4.8 5.76-2.112 3.2-3.52 6.656-1.472 3.52-2.24 7.232-0.704 3.712-0.704 7.488 0 3.776 0.704 7.488 0.768 3.712 2.24 7.168 1.408 3.52 3.52 6.656 2.112 3.2 4.8 5.824 2.624 2.688 5.76 4.8 3.2 2.112 6.656 3.52 3.52 1.472 7.232 2.176 3.712 0.768 7.488 0.768 3.776 0 7.488-0.768 3.712-0.704 7.232-2.176 3.456-1.408 6.592-3.52 3.2-2.112 5.824-4.8 2.688-2.688 4.8-5.76 2.112-3.2 3.52-6.72 1.472-3.456 2.176-7.168 0.768-3.712 0.768-7.488z" p-id="4552"></path></svg>', vt = '<svg t="1755138507987" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5079" width="200" height="200"><path d="M512 938.688a42.688 42.688 0 0 1-35.072-18.432l-192-277.312A42.56 42.56 0 0 1 320 576h384a42.752 42.752 0 0 1 35.072 66.944l-192 277.312a42.688 42.688 0 0 1-35.072 18.432" fill="currentColor" p-id="2016"></path><path d="M704 448H320a42.752 42.752 0 0 1-35.072-66.944l192-277.312c16-23.04 54.208-23.04 70.144 0l192 277.312A42.56 42.56 0 0 1 704 448" fill="currentColor" p-id="2015"></path></svg>', Se = vt.replace('fill="currentColor" p-id="2016"', 'fill="#bec4c7" p-id="2016"'), Te = vt.replace('fill="currentColor" p-id="2015"', 'fill="#bec4c7" p-id="2015"');
2975
+ const Zt = '<svg t="1724122015492" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4237" width="32" height="32"><path d="M401.472 316.992l159.04 217.664L591.488 512l-30.976-22.656-159.04 217.728q-2.24 3.008-3.84 6.464-1.6 3.456-2.496 7.104-0.896 3.648-1.024 7.424-0.192 3.84 0.384 7.552 0.64 3.712 1.92 7.296 1.28 3.52 3.2 6.784 1.984 3.2 4.544 6.016 2.56 2.752 5.632 4.992 3.072 2.24 6.464 3.84 3.456 1.6 7.168 2.496 3.648 0.896 7.424 1.024 3.776 0.192 7.488-0.448 3.776-0.576 7.296-1.856 3.584-1.28 6.784-3.264 3.2-1.92 6.016-4.48 2.816-2.56 5.056-5.632l159.04-217.728q3.584-4.928 5.504-10.752 1.92-5.76 1.92-11.904 0-6.08-1.92-11.904-1.92-5.76-5.504-10.752L463.488 271.68q-2.24-3.072-5.056-5.632-2.752-2.56-6.016-4.48-3.2-1.984-6.784-3.328-3.52-1.28-7.296-1.856-3.712-0.576-7.488-0.448-3.84 0.192-7.424 1.088-3.712 0.896-7.168 2.496-3.392 1.6-6.4 3.84-3.136 2.176-5.696 4.992-2.56 2.752-4.48 6.016-1.984 3.2-3.264 6.784-1.28 3.52-1.92 7.296-0.576 3.712-0.384 7.488 0.128 3.84 1.024 7.488 0.896 3.648 2.496 7.04 1.6 3.456 3.84 6.528z m30.976-61.056q-3.776 0-7.488 0.704-3.712 0.768-7.168 2.24-3.52 1.408-6.656 3.52-3.2 2.112-5.824 4.8-2.688 2.624-4.8 5.76-2.112 3.2-3.52 6.656-1.472 3.52-2.176 7.232-0.768 3.712-0.768 7.488 0 3.776 0.768 7.488 0.704 3.712 2.176 7.232 1.408 3.456 3.52 6.592 2.112 3.2 4.8 5.824 2.688 2.688 5.76 4.8 3.2 2.112 6.72 3.52 3.456 1.472 7.168 2.176 3.712 0.768 7.488 0.768 3.84 0 7.488-0.768 3.712-0.704 7.232-2.176 3.456-1.408 6.592-3.52 3.2-2.112 5.824-4.8 2.688-2.688 4.8-5.76 2.112-3.2 3.52-6.656 1.472-3.52 2.24-7.232 0.704-3.712 0.704-7.488 0-3.84-0.704-7.488-0.768-3.712-2.24-7.232-1.408-3.456-3.52-6.592-2.112-3.2-4.8-5.824-2.624-2.688-5.76-4.8-3.2-2.112-6.656-3.52-3.52-1.472-7.232-2.24Q436.224 256 432.448 256z m0 435.392q-3.776 0-7.488 0.704-3.712 0.768-7.168 2.176-3.52 1.472-6.656 3.584-3.2 2.112-5.824 4.736-2.688 2.688-4.8 5.824-2.112 3.2-3.52 6.656-1.472 3.52-2.176 7.232-0.768 3.712-0.768 7.488 0 3.776 0.768 7.488 0.704 3.712 2.176 7.168 1.408 3.52 3.52 6.656 2.112 3.2 4.8 5.76 2.688 2.752 5.76 4.8 3.2 2.112 6.72 3.584 3.456 1.472 7.168 2.176 3.712 0.768 7.488 0.768 3.84 0 7.488-0.768 3.712-0.704 7.232-2.176 3.456-1.472 6.592-3.584 3.2-2.048 5.824-4.736 2.688-2.688 4.8-5.824 2.112-3.2 3.52-6.656 1.472-3.456 2.24-7.168 0.704-3.712 0.704-7.488 0-3.84-0.704-7.488-0.768-3.712-2.24-7.232-1.408-3.52-3.52-6.656-2.112-3.136-4.8-5.76-2.624-2.688-5.76-4.8-3.2-2.112-6.656-3.584-3.52-1.408-7.232-2.176-3.712-0.704-7.488-0.704z" p-id="4238"></path></svg>', kt = '<svg t="1722595535853" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4551" width="32" height="32"><path d="M640 128H384c-170.496 0-256 85.504-256 256v256c0 170.496 85.504 256 256 256h256c170.496 0 256-85.504 256-256V384c0-170.496-85.504-256-256-256z m67.584 302.592c-2.048 4.608-4.608 8.704-8.192 12.288L506.88 634.88c-3.584 3.584-7.68 6.144-12.288 8.192-4.608 2.048-9.728 3.072-14.848 3.072s-10.24-1.024-14.848-3.072c-4.608-2.048-8.704-4.608-12.288-8.192l-96.256-96.256c-3.584-3.584-6.144-7.68-8.192-12.288-2.048-4.608-3.072-9.728-3.072-14.848 0-2.56 0-5.12 1.024-7.68 0.512-2.56 1.024-5.12 2.048-7.168 1.024-2.56 2.048-4.608 3.584-6.656 1.536-2.048 3.072-4.096 4.608-5.632 1.536-2.048 3.584-3.584 5.632-4.608 2.048-1.536 4.096-2.56 6.656-3.584 2.56-1.024 4.608-1.536 7.168-2.048 2.56-0.512 5.12-0.512 7.68-0.512 5.12 0 10.24 1.024 14.848 3.072 4.608 2.048 8.704 4.608 12.288 8.192l69.12 68.608L645.12 389.12c3.584-3.584 7.68-6.144 12.288-8.192 4.608-2.048 9.728-3.072 14.848-3.072 2.56 0 5.12 0 7.68 0.512s5.12 1.024 7.168 2.048c2.56 1.024 4.608 2.048 6.656 3.584 2.048 1.536 4.096 3.072 5.632 4.608 1.536 1.536 3.584 3.584 4.608 5.632 1.536 2.048 2.56 4.096 3.584 6.656 1.024 2.56 1.536 4.608 2.048 7.168 0.512 2.56 1.024 5.12 1.024 7.68 0 5.12-1.024 10.24-3.072 14.848z" p-id="4552"></path></svg>', Xt = '<svg t="1724122044148" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4551" width="32" height="32"><path d="M707.648 401.28L489.28 560.704l22.656 30.976 22.656-30.976L316.16 401.216q-3.072-2.24-6.464-3.84-3.456-1.536-7.104-2.432-3.712-0.896-7.488-1.088-3.776-0.128-7.488 0.448-3.776 0.64-7.296 1.92-3.584 1.28-6.784 3.2-3.2 1.984-6.016 4.544-2.816 2.56-5.056 5.632-2.176 3.072-3.84 6.464-1.536 3.456-2.432 7.104-0.896 3.712-1.088 7.488-0.128 3.776 0.448 7.488 0.64 3.776 1.92 7.296 1.28 3.584 3.2 6.784 1.984 3.2 4.544 6.016 2.56 2.752 5.632 4.992l218.368 159.552q4.928 3.584 10.752 5.504 5.76 1.92 11.904 1.92 6.08 0 11.904-1.92 5.76-1.92 10.752-5.504l218.368-159.552q3.008-2.24 5.568-4.992 2.56-2.816 4.544-6.016 1.92-3.2 3.264-6.784 1.28-3.52 1.92-7.296 0.576-3.712 0.384-7.488-0.128-3.84-1.024-7.488-0.896-3.648-2.496-7.04-1.6-3.456-3.84-6.528-2.24-3.072-4.992-5.632-2.816-2.56-6.016-4.48-3.2-1.984-6.784-3.328-3.584-1.28-7.296-1.856-3.712-0.64-7.488-0.448-3.84 0.192-7.488 1.088-3.648 0.896-7.04 2.496-3.456 1.536-6.528 3.84z m61.056 30.976q0-3.84-0.768-7.488-0.704-3.712-2.176-7.232-1.472-3.456-3.52-6.656-2.112-3.136-4.8-5.76-2.688-2.688-5.76-4.8-3.2-2.112-6.72-3.584-3.456-1.408-7.168-2.176-3.712-0.704-7.488-0.704-3.84 0-7.488 0.704-3.712 0.768-7.232 2.176-3.456 1.472-6.656 3.584-3.136 2.112-5.76 4.8-2.688 2.624-4.8 5.76-2.112 3.2-3.584 6.656-1.408 3.52-2.176 7.232-0.704 3.712-0.704 7.488 0 3.776 0.704 7.488 0.768 3.712 2.176 7.168 1.472 3.52 3.584 6.656 2.112 3.2 4.8 5.824 2.624 2.688 5.76 4.8 3.2 2.112 6.656 3.52 3.52 1.472 7.232 2.176 3.712 0.768 7.488 0.768 3.776 0 7.488-0.768 3.712-0.704 7.168-2.176 3.52-1.408 6.656-3.52 3.2-2.112 5.824-4.8 2.688-2.688 4.8-5.76 2.048-3.2 3.52-6.72 1.472-3.456 2.176-7.168 0.768-3.712 0.768-7.488z m-436.736 0q0-3.84-0.768-7.488-0.704-3.712-2.176-7.232-1.408-3.456-3.52-6.656-2.112-3.136-4.8-5.76-2.688-2.688-5.76-4.8-3.2-2.112-6.656-3.584-3.52-1.408-7.232-2.176-3.712-0.704-7.488-0.704-3.84 0-7.488 0.704-3.712 0.768-7.232 2.176-3.456 1.472-6.592 3.584-3.2 2.112-5.824 4.8-2.688 2.624-4.8 5.76-2.112 3.2-3.52 6.656-1.472 3.52-2.24 7.232-0.704 3.712-0.704 7.488 0 3.776 0.704 7.488 0.768 3.712 2.24 7.168 1.408 3.52 3.52 6.656 2.112 3.2 4.8 5.824 2.624 2.688 5.76 4.8 3.2 2.112 6.656 3.52 3.52 1.472 7.232 2.176 3.712 0.768 7.488 0.768 3.776 0 7.488-0.768 3.712-0.704 7.232-2.176 3.456-1.408 6.592-3.52 3.2-2.112 5.824-4.8 2.688-2.688 4.8-5.76 2.112-3.2 3.52-6.72 1.472-3.456 2.176-7.168 0.768-3.712 0.768-7.488z" p-id="4552"></path></svg>', Rt = '<svg t="1755138507987" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5079" width="200" height="200"><path d="M512 938.688a42.688 42.688 0 0 1-35.072-18.432l-192-277.312A42.56 42.56 0 0 1 320 576h384a42.752 42.752 0 0 1 35.072 66.944l-192 277.312a42.688 42.688 0 0 1-35.072 18.432" fill="currentColor" p-id="2016"></path><path d="M704 448H320a42.752 42.752 0 0 1-35.072-66.944l192-277.312c16-23.04 54.208-23.04 70.144 0l192 277.312A42.56 42.56 0 0 1 704 448" fill="currentColor" p-id="2015"></path></svg>', Se = Rt.replace('fill="currentColor" p-id="2016"', 'fill="#bec4c7" p-id="2016"'), Te = Rt.replace('fill="currentColor" p-id="2015"', 'fill="#bec4c7" p-id="2015"');
2978
2976
  class Oe {
2979
2977
  constructor(t) {
2980
2978
  n(this, "ctx");
@@ -3065,7 +3063,7 @@ class Oe {
3065
3063
  {
3066
3064
  name: "sort-default",
3067
3065
  configName: "SORTABLE_ICON_SVG",
3068
- svg: vt,
3066
+ svg: Rt,
3069
3067
  color: "#bec4c7"
3070
3068
  }
3071
3069
  ]);
@@ -3128,7 +3126,7 @@ class Oe {
3128
3126
  return this.list.find((e) => e.name === t);
3129
3127
  }
3130
3128
  }
3131
- class pt extends qt {
3129
+ class Et extends jt {
3132
3130
  constructor(e, i, s, o, r, a, l) {
3133
3131
  super(e, s, o, r, a, "header", l.fixed);
3134
3132
  n(this, "align");
@@ -3456,7 +3454,7 @@ class Le {
3456
3454
  t.drawSelectionImageWidth,
3457
3455
  t.drawSelectionImageHeight
3458
3456
  ))
3459
- if (t instanceof pt)
3457
+ if (t instanceof Et)
3460
3458
  t.drawSelectionImageName === "checkbox-uncheck" || t.drawSelectionImageName === "checkbox-indeterminate" ? this.ctx.database.toggleAllSelection() : t.drawSelectionImageName === "checkbox-check" && this.ctx.database.clearSelection(!0);
3461
3459
  else {
3462
3460
  if (!this.ctx.database.getRowSelectable(t.rowKey))
@@ -3521,7 +3519,7 @@ class Le {
3521
3519
  */
3522
3520
  imageEnterAndLeave(t, e) {
3523
3521
  const { offsetY: i, offsetX: s } = this.ctx.getOffset(e), o = i, r = s;
3524
- if (t instanceof pt) {
3522
+ if (t instanceof Et) {
3525
3523
  if (t.drawSelectionImageSource && this.isInsideElement(
3526
3524
  r,
3527
3525
  o,
@@ -3545,7 +3543,7 @@ class Le {
3545
3543
  return;
3546
3544
  }
3547
3545
  }
3548
- if (t instanceof Rt) {
3546
+ if (t instanceof It) {
3549
3547
  if (t.drawSelectionImageSource && this.isInsideElement(
3550
3548
  r,
3551
3549
  o,
@@ -4235,7 +4233,7 @@ class De {
4235
4233
  n(this, "renderFixedCellHeaders", []);
4236
4234
  this.ctx = t, this.ctx.on(
4237
4235
  "resetHeader",
4238
- Q(() => {
4236
+ J(() => {
4239
4237
  this.init(), this.ctx.clearSelector(), this.ctx.emit("draw");
4240
4238
  }, 100)
4241
4239
  ), this.init(), this.initResizeColumn(), this.initDragColumn();
@@ -4245,7 +4243,7 @@ class De {
4245
4243
  config: { HEADER_HEIGHT: t, SCROLLER_TRACK_SIZE: e }
4246
4244
  } = this.ctx, i = this.ctx.database.getColumns();
4247
4245
  this.columns = i, this.allCellHeaders = [], this.leafCellHeaders = [], this.fixedLeftCellHeaders = [], this.fixedRightCellHeaders = [], this.centerCellHeaders = [], this.visibleHeight = this.height, this.visibleColumns = Gt(i);
4248
- const s = rt(this.visibleColumns), o = j(this.visibleColumns);
4246
+ const s = rt(this.visibleColumns), o = Q(this.visibleColumns);
4249
4247
  this.height = t * s, this.width = o.reduce((f, x) => {
4250
4248
  const u = x.width || 100, { maxWidth: w, minWidth: m } = x;
4251
4249
  return w && u > w ? f + w : m && u < m ? f + m : f + u;
@@ -4253,7 +4251,10 @@ class De {
4253
4251
  const r = xe(nt(this.visibleColumns, s));
4254
4252
  this.render(r, 0), this.ctx.database.updateColIndexKeyMap(this.leafCellHeaders);
4255
4253
  const a = this.ctx.containerElement.getBoundingClientRect();
4256
- this.resizeNum > 0 ? this.ctx.stageWidth = Math.floor(a.width) : this.ctx.stageWidth = Math.floor(this.width + e), this.ctx.stageElement.style.width = this.ctx.stageWidth + "px", this.visibleWidth = this.ctx.stageWidth - e;
4254
+ this.resizeNum > 0 ? this.ctx.stageWidth = Math.floor(a.width) : this.ctx.stageWidth = Math.min(
4255
+ Math.floor(this.width + e),
4256
+ Math.floor(a.width)
4257
+ ), this.ctx.stageElement.style.width = this.ctx.stageWidth + "px", this.visibleWidth = this.ctx.stageWidth - e;
4257
4258
  const l = this.visibleWidth - this.width;
4258
4259
  if (this.resizeNum && l > 0) {
4259
4260
  const f = Math.floor(l / this.resizeNum * 100) / 100;
@@ -4290,9 +4291,14 @@ class De {
4290
4291
  this.ctx.stageElement.style.cursor === "col-resize" && (this.ctx.stageElement.style.cursor = "default");
4291
4292
  const s = [...this.renderFixedCellHeaders, ...this.renderCenterCellHeaders];
4292
4293
  for (const o of s) {
4293
- const { offsetX: r, offsetY: a } = this.ctx.getOffset(t), l = r, c = o.getDrawX();
4294
- l > c + o.width - 5 && l < c + o.width + 4 && l < e - 4 && // 视窗中最后一列不允许调整宽
4295
- o.colspan <= 1 && this.ctx.isTarget(t) && a <= this.height && (this.ctx.stageElement.style.cursor = "col-resize", this.resizeTarget = o);
4294
+ const { offsetX: r, offsetY: a } = this.ctx.getOffset(t), l = r, c = a, d = o.getDrawX(), f = o.getDrawY();
4295
+ if (l > d + o.width - 5 && l < d + o.width + 4 && l < e - 4 && // 视窗中最后一列不允许调整宽
4296
+ c > f) {
4297
+ const x = o.colIndex + o.colspan - 1, u = this.leafCellHeaders.find((w) => w.colIndex === x);
4298
+ if (!u || !u.fixed && this.ctx.stageWidth - this.ctx.fixedRightWidth < d + o.width)
4299
+ return;
4300
+ this.ctx.isTarget(t) && a <= this.height && (this.ctx.stageElement.style.cursor = "col-resize", this.resizeTarget = u);
4301
+ }
4296
4302
  }
4297
4303
  }
4298
4304
  });
@@ -4307,7 +4313,7 @@ class De {
4307
4313
  if (this.dragingCell && this.dragTarget) {
4308
4314
  const t = (c, d = {}) => (c.forEach((f, x) => {
4309
4315
  f.children && t(f.children, d), d[f.key] = x;
4310
- }), d), e = this.ctx.database.getColumns(), i = nt(e, rt(e)), s = new He(JSON.parse(JSON.stringify(i)), {
4316
+ }), d), e = this.ctx.database.getColumns(), i = nt(e, rt(e)), s = new He(at(i), {
4311
4317
  key: "key",
4312
4318
  // 节点唯一标识字段(对应我们之前的field)
4313
4319
  childrenKey: "children"
@@ -4412,8 +4418,8 @@ class De {
4412
4418
  for (let r = 0; r < i; r++) {
4413
4419
  const a = t[r], l = o * (a.rowspan || 0), c = o * (a.level || 0);
4414
4420
  let { minWidth: d, maxWidth: f } = a, x = a.width || 100;
4415
- d && x < d && (x = d), f && x > f && (x = f), a.children && (x = j(a.children).reduce((m, g) => m + ((g == null ? void 0 : g.width) || 100), 0));
4416
- const u = new pt(this.ctx, this.columnIndex, s, c, x, l, a);
4421
+ d && x < d && (x = d), f && x > f && (x = f), a.children && (x = Q(a.children).reduce((m, g) => m + ((g == null ? void 0 : g.width) || 100), 0));
4422
+ const u = new Et(this.ctx, this.columnIndex, s, c, x, l, a);
4417
4423
  this.ctx.database.setHeader(a.key, u), this.allCellHeaders.push(u), a.children || (this.leafCellHeaders.push(u), u.column.widthFillDisable || this.resizeNum++), a.fixed === "left" ? this.fixedLeftCellHeaders.push(u) : a.fixed === "right" ? this.fixedRightCellHeaders.push(u) : this.centerCellHeaders.push(u), !a.children && this.columnIndex++, a.children && this.render(a.children, s), s += x;
4418
4424
  }
4419
4425
  }
@@ -4547,7 +4553,7 @@ class Jt {
4547
4553
  update() {
4548
4554
  const { header: t } = this.ctx, e = [], i = [], s = [], o = [];
4549
4555
  t.renderLeafCellHeaders.forEach((r) => {
4550
- const a = new Rt(
4556
+ const a = new It(
4551
4557
  this.ctx,
4552
4558
  this.rowIndex,
4553
4559
  r.colIndex,
@@ -4649,20 +4655,20 @@ class Ne {
4649
4655
  E > 0 && (this.ctx.stageHeight = Math.floor(E), this.ctx.stageElement.style.height = `${this.ctx.stageHeight}px`);
4650
4656
  let b = this.ctx.stageHeight - e.height - r;
4651
4657
  o ? this.visibleHeight = b - m : this.visibleHeight = b, this.data.length || (this.height = this.visibleHeight), this.ctx.body.x = this.x, this.ctx.body.y = this.y, this.ctx.body.width = this.width, this.ctx.body.height = this.height, this.ctx.body.visibleWidth = this.visibleWidth, this.ctx.body.visibleHeight = this.visibleHeight, this.ctx.body.data = u;
4652
- const y = window.devicePixelRatio || 1, I = this.ctx.stageWidth * y, _ = this.ctx.stageHeight * y;
4653
- t.width = Math.round(I), t.height = Math.round(_);
4654
- const T = this.data.length ? "not-empty" : "empty";
4658
+ const y = window.devicePixelRatio || 1, v = this.ctx.stageWidth * y, _ = this.ctx.stageHeight * y;
4659
+ t.width = Math.round(v), t.height = Math.round(_);
4660
+ const S = this.data.length ? "not-empty" : "empty";
4655
4661
  this.ctx.emit("emptyChange", {
4656
- isEmpty: T,
4657
- type: T,
4662
+ isEmpty: S,
4663
+ type: S,
4658
4664
  headerHeight: e.height,
4659
4665
  bodyHeight: this.height,
4660
4666
  footerHeight: m,
4661
4667
  width: this.width,
4662
4668
  height: this.data.length ? 0 : l + m
4663
4669
  });
4664
- const v = Math.round(t.width / y * 1e4) / 1e4, R = Math.round(t.height / y * 1e4) / 1e4;
4665
- this.ctx.canvasElement.setAttribute("style", `height:${R}px;width:${v}px;`), this.ctx.paint.scale(y);
4670
+ const I = Math.round(t.width / y * 1e4) / 1e4, R = Math.round(t.height / y * 1e4) / 1e4;
4671
+ this.ctx.canvasElement.setAttribute("style", `height:${R}px;width:${I}px;`), this.ctx.paint.scale(y);
4666
4672
  }
4667
4673
  // 调整行的高度
4668
4674
  initResizeRow() {
@@ -4909,7 +4915,7 @@ class Xe {
4909
4915
  this.moveFocus(t);
4910
4916
  }), this.ctx.on(
4911
4917
  "mousemove",
4912
- Q((t) => {
4918
+ J((t) => {
4913
4919
  var e, i;
4914
4920
  (e = this.ctx.focusCell) != null && e.fixed || (i = this.ctx.focusCellHeader) != null && i.fixed || !this.ctx.dragHeaderIng && this.ctx.selectorMove && this.ctx.startAdjustPosition(t);
4915
4921
  }, 100)
@@ -5021,8 +5027,8 @@ class Xe {
5021
5027
  if (E < u || C > w || p < m || b > g)
5022
5028
  return;
5023
5029
  if (this.ctx.stageElement.focus({ preventScroll: !0 }), this.ctx.config.ENABLE_MERGE_CELL_LINK) {
5024
- const I = this.adjustMergeCells(o, r);
5025
- p = I.yArr[0], b = I.yArr[1], E = I.xArr[0], C = I.xArr[1], this.ctx.onlyMergeCell = I.onlyMergeCell;
5030
+ const v = this.adjustMergeCells(o, r);
5031
+ p = v.yArr[0], b = v.yArr[1], E = v.xArr[0], C = v.xArr[1], this.ctx.onlyMergeCell = v.onlyMergeCell;
5026
5032
  }
5027
5033
  E === C && p === b ? this.ctx.selectOnlyOne = !0 : this.ctx.selectOnlyOne = !1, o = [Math.max(u, E), Math.min(w, C)], r = [Math.max(m, p), Math.min(g, b)];
5028
5034
  const { BEFORE_SET_SELECTOR_METHOD: y } = this.ctx.config;
@@ -5272,16 +5278,16 @@ class Xe {
5272
5278
  for (let p = 0; p <= r.length - 1; p++) {
5273
5279
  const b = r[p].length;
5274
5280
  for (let y = 0; y <= b - 1; y++) {
5275
- const I = p + e, _ = y + i, T = r[p][y], v = this.ctx.database.getItemValueForRowIndexAndColIndex(
5276
- I,
5281
+ const v = p + e, _ = y + i, S = r[p][y], I = this.ctx.database.getItemValueForRowIndexAndColIndex(
5282
+ v,
5277
5283
  _
5278
5284
  );
5279
- if (v) {
5280
- const { rowKey: R, key: S } = v;
5281
- this.ctx.database.getReadonly(R, S) || (s.add(R), g.push({
5285
+ if (I) {
5286
+ const { rowKey: R, key: T } = I;
5287
+ this.ctx.database.getReadonly(R, T) || (s.add(R), g.push({
5282
5288
  rowKey: R,
5283
- key: S,
5284
- value: T,
5289
+ key: T,
5290
+ value: S,
5285
5291
  row: {}
5286
5292
  //内部有设置
5287
5293
  }));
@@ -5384,13 +5390,13 @@ class Xe {
5384
5390
  return;
5385
5391
  w && this.ctx.onlyMergeCell && i.updateSpanInfo();
5386
5392
  const { drawX: m, drawY: g, width: E, height: C, fixed: p } = i, b = o - m + 1, y = i.drawX + E - (e - s) + 1;
5387
- let I = r.height - g, _ = C;
5393
+ let v = r.height - g, _ = C;
5388
5394
  _ > l.visibleHeight && (_ = l.visibleHeight);
5389
- let T = 0;
5390
- x && (u === "top" ? I = r.height + a.height - g : T = a.visibleHeight);
5391
- const v = g + _ - (t - T - f);
5392
- let R = c, S = d;
5393
- y > 0 && !p ? R = Math.floor(c + y) : b > 0 && !p && (R = Math.floor(c - b)), I > 0 ? S = Math.floor(d - I) : v > 0 && (S = Math.floor(d + v)), (Math.abs(c - R) > 2 || Math.abs(d - S) > 2) && (this.ctx.adjustPositioning = !0, this.ctx.setScroll(R, S), this.ctx.emit("adjustBoundaryPosition", i));
5395
+ let S = 0;
5396
+ x && (u === "top" ? v = r.height + a.height - g : S = a.visibleHeight);
5397
+ const I = g + _ - (t - S - f);
5398
+ let R = c, T = d;
5399
+ y > 0 && !p ? R = Math.floor(c + y) : b > 0 && !p && (R = Math.floor(c - b)), v > 0 ? T = Math.floor(d - v) : I > 0 && (T = Math.floor(d + I)), (Math.abs(c - R) > 2 || Math.abs(d - T) > 2) && (this.ctx.adjustPositioning = !0, this.ctx.setScroll(R, T), this.ctx.emit("adjustBoundaryPosition", i));
5394
5400
  }
5395
5401
  destroy() {
5396
5402
  }
@@ -5458,16 +5464,16 @@ class Be {
5458
5464
  if (C < w || b < g)
5459
5465
  return;
5460
5466
  r = [Math.max(w, C), Math.min(m, p)], a = [Math.max(g, b), Math.min(E, y)];
5461
- const { BEFORE_SET_AUTOFILL_METHOD: I } = this.ctx.config;
5462
- if (typeof I == "function") {
5463
- const T = I({
5467
+ const { BEFORE_SET_AUTOFILL_METHOD: v } = this.ctx.config;
5468
+ if (typeof v == "function") {
5469
+ const S = v({
5464
5470
  focusCell: this.ctx.focusCell,
5465
5471
  xArr: r,
5466
5472
  yArr: a
5467
5473
  });
5468
- if (!T)
5474
+ if (!S)
5469
5475
  return;
5470
- r = T.xArr, a = T.yArr;
5476
+ r = S.xArr, a = S.yArr;
5471
5477
  }
5472
5478
  this.ctx.autofill.xArr = r, this.ctx.autofill.yArr = a, this.ctx.emit("setAutofill", this.ctx.autofill), this.ctx.emit("draw");
5473
5479
  }
@@ -5538,7 +5544,7 @@ class Be {
5538
5544
  destroy() {
5539
5545
  }
5540
5546
  }
5541
- const q = Math.min, z = Math.max, at = Math.round, ot = Math.floor, Y = (h) => ({
5547
+ const q = Math.min, z = Math.max, lt = Math.round, ot = Math.floor, Y = (h) => ({
5542
5548
  x: h,
5543
5549
  y: h
5544
5550
  }), Ye = {
@@ -5550,7 +5556,7 @@ const q = Math.min, z = Math.max, at = Math.round, ot = Math.floor, Y = (h) => (
5550
5556
  start: "end",
5551
5557
  end: "start"
5552
5558
  };
5553
- function Ct(h, t, e) {
5559
+ function pt(h, t, e) {
5554
5560
  return z(h, q(t, e));
5555
5561
  }
5556
5562
  function et(h, t) {
@@ -5565,27 +5571,27 @@ function it(h) {
5565
5571
  function Qt(h) {
5566
5572
  return h === "x" ? "y" : "x";
5567
5573
  }
5568
- function _t(h) {
5574
+ function vt(h) {
5569
5575
  return h === "y" ? "height" : "width";
5570
5576
  }
5571
5577
  const Fe = /* @__PURE__ */ new Set(["top", "bottom"]);
5572
5578
  function V(h) {
5573
5579
  return Fe.has($(h)) ? "y" : "x";
5574
5580
  }
5575
- function St(h) {
5581
+ function _t(h) {
5576
5582
  return Qt(V(h));
5577
5583
  }
5578
5584
  function We(h, t, e) {
5579
5585
  e === void 0 && (e = !1);
5580
- const i = it(h), s = St(h), o = _t(s);
5586
+ const i = it(h), s = _t(h), o = vt(s);
5581
5587
  let r = s === "x" ? i === (e ? "end" : "start") ? "right" : "left" : i === "start" ? "bottom" : "top";
5582
- return t.reference[o] > t.floating[o] && (r = lt(r)), [r, lt(r)];
5588
+ return t.reference[o] > t.floating[o] && (r = ct(r)), [r, ct(r)];
5583
5589
  }
5584
5590
  function Ve(h) {
5585
- const t = lt(h);
5586
- return [yt(h), t, yt(t)];
5591
+ const t = ct(h);
5592
+ return [Ct(h), t, Ct(t)];
5587
5593
  }
5588
- function yt(h) {
5594
+ function Ct(h) {
5589
5595
  return h.replace(/start|end/g, (t) => Ke[t]);
5590
5596
  }
5591
5597
  const Yt = ["left", "right"], Kt = ["right", "left"], Pe = ["top", "bottom"], ze = ["bottom", "top"];
@@ -5604,9 +5610,9 @@ function $e(h, t, e) {
5604
5610
  function Ge(h, t, e, i) {
5605
5611
  const s = it(h);
5606
5612
  let o = $e($(h), e === "start", i);
5607
- return s && (o = o.map((r) => r + "-" + s), t && (o = o.concat(o.map(yt)))), o;
5613
+ return s && (o = o.map((r) => r + "-" + s), t && (o = o.concat(o.map(Ct)))), o;
5608
5614
  }
5609
- function lt(h) {
5615
+ function ct(h) {
5610
5616
  return h.replace(/left|right|bottom|top/g, (t) => Ye[t]);
5611
5617
  }
5612
5618
  function Ue(h) {
@@ -5626,7 +5632,7 @@ function te(h) {
5626
5632
  left: h
5627
5633
  };
5628
5634
  }
5629
- function ct(h) {
5635
+ function ht(h) {
5630
5636
  const {
5631
5637
  x: t,
5632
5638
  y: e,
@@ -5649,7 +5655,7 @@ function Ft(h, t, e) {
5649
5655
  reference: i,
5650
5656
  floating: s
5651
5657
  } = h;
5652
- const o = V(t), r = St(t), a = _t(r), l = $(t), c = o === "y", d = i.x + i.width / 2 - s.width / 2, f = i.y + i.height / 2 - s.height / 2, x = i[a] / 2 - s[a] / 2;
5658
+ const o = V(t), r = _t(t), a = vt(r), l = $(t), c = o === "y", d = i.x + i.width / 2 - s.width / 2, f = i.y + i.height / 2 - s.height / 2, x = i[a] / 2 - s[a] / 2;
5653
5659
  let u;
5654
5660
  switch (l) {
5655
5661
  case "top":
@@ -5692,7 +5698,7 @@ function Ft(h, t, e) {
5692
5698
  }
5693
5699
  return u;
5694
5700
  }
5695
- const je = async (h, t, e) => {
5701
+ const qe = async (h, t, e) => {
5696
5702
  const {
5697
5703
  placement: i = "bottom",
5698
5704
  strategy: s = "absolute",
@@ -5769,7 +5775,7 @@ async function ee(h, t) {
5769
5775
  elementContext: f = "floating",
5770
5776
  altBoundary: x = !1,
5771
5777
  padding: u = 0
5772
- } = et(t, h), w = te(u), g = a[x ? f === "floating" ? "reference" : "floating" : f], E = ct(await o.getClippingRect({
5778
+ } = et(t, h), w = te(u), g = a[x ? f === "floating" ? "reference" : "floating" : f], E = ht(await o.getClippingRect({
5773
5779
  element: (e = await (o.isElement == null ? void 0 : o.isElement(g))) == null || e ? g : g.contextElement || await (o.getDocumentElement == null ? void 0 : o.getDocumentElement(a.floating)),
5774
5780
  boundary: c,
5775
5781
  rootBoundary: d,
@@ -5785,7 +5791,7 @@ async function ee(h, t) {
5785
5791
  } : {
5786
5792
  x: 1,
5787
5793
  y: 1
5788
- }, y = ct(o.convertOffsetParentRelativeRectToViewportRelativeRect ? await o.convertOffsetParentRelativeRectToViewportRelativeRect({
5794
+ }, y = ht(o.convertOffsetParentRelativeRectToViewportRelativeRect ? await o.convertOffsetParentRelativeRectToViewportRelativeRect({
5789
5795
  elements: a,
5790
5796
  rect: C,
5791
5797
  offsetParent: p,
@@ -5798,7 +5804,7 @@ async function ee(h, t) {
5798
5804
  right: (y.right - E.right + w.right) / b.x
5799
5805
  };
5800
5806
  }
5801
- const qe = (h) => ({
5807
+ const je = (h) => ({
5802
5808
  name: "arrow",
5803
5809
  options: h,
5804
5810
  async fn(t) {
@@ -5819,10 +5825,10 @@ const qe = (h) => ({
5819
5825
  const f = te(d), x = {
5820
5826
  x: e,
5821
5827
  y: i
5822
- }, u = St(s), w = _t(u), m = await r.getDimensions(c), g = u === "y", E = g ? "top" : "left", C = g ? "bottom" : "right", p = g ? "clientHeight" : "clientWidth", b = o.reference[w] + o.reference[u] - x[u] - o.floating[w], y = x[u] - o.reference[u], I = await (r.getOffsetParent == null ? void 0 : r.getOffsetParent(c));
5823
- let _ = I ? I[p] : 0;
5824
- (!_ || !await (r.isElement == null ? void 0 : r.isElement(I))) && (_ = a.floating[p] || o.floating[w]);
5825
- const T = b / 2 - y / 2, v = _ / 2 - m[w] / 2 - 1, R = q(f[E], v), S = q(f[C], v), O = R, M = _ - m[w] - S, L = _ / 2 - m[w] / 2 + T, A = Ct(O, L, M), D = !l.arrow && it(s) != null && L !== A && o.reference[w] / 2 - (L < O ? R : S) - m[w] / 2 < 0, H = D ? L < O ? L - O : L - M : 0;
5828
+ }, u = _t(s), w = vt(u), m = await r.getDimensions(c), g = u === "y", E = g ? "top" : "left", C = g ? "bottom" : "right", p = g ? "clientHeight" : "clientWidth", b = o.reference[w] + o.reference[u] - x[u] - o.floating[w], y = x[u] - o.reference[u], v = await (r.getOffsetParent == null ? void 0 : r.getOffsetParent(c));
5829
+ let _ = v ? v[p] : 0;
5830
+ (!_ || !await (r.isElement == null ? void 0 : r.isElement(v))) && (_ = a.floating[p] || o.floating[w]);
5831
+ const S = b / 2 - y / 2, I = _ / 2 - m[w] / 2 - 1, R = q(f[E], I), T = q(f[C], I), O = R, M = _ - m[w] - T, L = _ / 2 - m[w] / 2 + S, A = pt(O, L, M), D = !l.arrow && it(s) != null && L !== A && o.reference[w] / 2 - (L < O ? R : T) - m[w] / 2 < 0, H = D ? L < O ? L - O : L - M : 0;
5826
5832
  return {
5827
5833
  [u]: x[u] + H,
5828
5834
  data: {
@@ -5859,20 +5865,20 @@ const qe = (h) => ({
5859
5865
  } = et(h, t);
5860
5866
  if ((e = o.arrow) != null && e.alignmentOffset)
5861
5867
  return {};
5862
- const E = $(s), C = V(a), p = $(a) === a, b = await (l.isRTL == null ? void 0 : l.isRTL(c.floating)), y = x || (p || !m ? [lt(a)] : Ve(a)), I = w !== "none";
5863
- !x && I && y.push(...Ge(a, m, w, b));
5864
- const _ = [a, ...y], T = await ee(t, g), v = [];
5868
+ const E = $(s), C = V(a), p = $(a) === a, b = await (l.isRTL == null ? void 0 : l.isRTL(c.floating)), y = x || (p || !m ? [ct(a)] : Ve(a)), v = w !== "none";
5869
+ !x && v && y.push(...Ge(a, m, w, b));
5870
+ const _ = [a, ...y], S = await ee(t, g), I = [];
5865
5871
  let R = ((i = o.flip) == null ? void 0 : i.overflows) || [];
5866
- if (d && v.push(T[E]), f) {
5872
+ if (d && I.push(S[E]), f) {
5867
5873
  const L = We(s, r, b);
5868
- v.push(T[L[0]], T[L[1]]);
5874
+ I.push(S[L[0]], S[L[1]]);
5869
5875
  }
5870
5876
  if (R = [...R, {
5871
5877
  placement: s,
5872
- overflows: v
5873
- }], !v.every((L) => L <= 0)) {
5874
- var S, O;
5875
- const L = (((S = o.flip) == null ? void 0 : S.index) || 0) + 1, A = _[L];
5878
+ overflows: I
5879
+ }], !I.every((L) => L <= 0)) {
5880
+ var T, O;
5881
+ const L = (((T = o.flip) == null ? void 0 : T.index) || 0) + 1, A = _[L];
5876
5882
  if (A && (!(f === "alignment" ? C !== V(A) : !1) || // We leave the current main axis only if every placement on that axis
5877
5883
  // overflows the main axis.
5878
5884
  R.every((k) => V(k.placement) === C ? k.overflows[0] > 0 : !0)))
@@ -5891,7 +5897,7 @@ const qe = (h) => ({
5891
5897
  case "bestFit": {
5892
5898
  var M;
5893
5899
  const H = (M = R.filter((k) => {
5894
- if (I) {
5900
+ if (v) {
5895
5901
  const W = V(k.placement);
5896
5902
  return W === C || // Create a bias to the `y` side axis due to horizontal
5897
5903
  // reading directions favoring greater width.
@@ -5998,11 +6004,11 @@ const ti = function(h) {
5998
6004
  let u = c[x], w = c[f];
5999
6005
  if (o) {
6000
6006
  const g = x === "y" ? "top" : "left", E = x === "y" ? "bottom" : "right", C = u + d[g], p = u - d[E];
6001
- u = Ct(C, u, p);
6007
+ u = pt(C, u, p);
6002
6008
  }
6003
6009
  if (r) {
6004
6010
  const g = f === "y" ? "top" : "left", E = f === "y" ? "bottom" : "right", C = w + d[g], p = w - d[E];
6005
- w = Ct(C, w, p);
6011
+ w = pt(C, w, p);
6006
6012
  }
6007
6013
  const m = a.fn({
6008
6014
  ...t,
@@ -6026,7 +6032,7 @@ const ti = function(h) {
6026
6032
  function xt() {
6027
6033
  return typeof window < "u";
6028
6034
  }
6029
- function J(h) {
6035
+ function Z(h) {
6030
6036
  return ie(h) ? (h.nodeName || "").toLowerCase() : "#document";
6031
6037
  }
6032
6038
  function N(h) {
@@ -6061,7 +6067,7 @@ function st(h) {
6061
6067
  }
6062
6068
  const si = /* @__PURE__ */ new Set(["table", "td", "th"]);
6063
6069
  function oi(h) {
6064
- return si.has(J(h));
6070
+ return si.has(Z(h));
6065
6071
  }
6066
6072
  const ri = [":popover-open", ":modal"];
6067
6073
  function gt(h) {
@@ -6074,14 +6080,14 @@ function gt(h) {
6074
6080
  });
6075
6081
  }
6076
6082
  const ni = ["transform", "translate", "scale", "rotate", "perspective"], ai = ["transform", "translate", "scale", "rotate", "perspective", "filter"], li = ["paint", "layout", "strict", "content"];
6077
- function Tt(h) {
6078
- const t = Ot(), e = X(h) ? B(h) : h;
6083
+ function St(h) {
6084
+ const t = Tt(), e = X(h) ? B(h) : h;
6079
6085
  return ni.some((i) => e[i] ? e[i] !== "none" : !1) || (e.containerType ? e.containerType !== "normal" : !1) || !t && (e.backdropFilter ? e.backdropFilter !== "none" : !1) || !t && (e.filter ? e.filter !== "none" : !1) || ai.some((i) => (e.willChange || "").includes(i)) || li.some((i) => (e.contain || "").includes(i));
6080
6086
  }
6081
6087
  function ci(h) {
6082
6088
  let t = P(h);
6083
- for (; K(t) && !Z(t); ) {
6084
- if (Tt(t))
6089
+ for (; K(t) && !j(t); ) {
6090
+ if (St(t))
6085
6091
  return t;
6086
6092
  if (gt(t))
6087
6093
  return null;
@@ -6089,12 +6095,12 @@ function ci(h) {
6089
6095
  }
6090
6096
  return null;
6091
6097
  }
6092
- function Ot() {
6098
+ function Tt() {
6093
6099
  return typeof CSS > "u" || !CSS.supports ? !1 : CSS.supports("-webkit-backdrop-filter", "none");
6094
6100
  }
6095
6101
  const hi = /* @__PURE__ */ new Set(["html", "body", "#document"]);
6096
- function Z(h) {
6097
- return hi.has(J(h));
6102
+ function j(h) {
6103
+ return hi.has(Z(h));
6098
6104
  }
6099
6105
  function B(h) {
6100
6106
  return N(h).getComputedStyle(h);
@@ -6109,7 +6115,7 @@ function wt(h) {
6109
6115
  };
6110
6116
  }
6111
6117
  function P(h) {
6112
- if (J(h) === "html")
6118
+ if (Z(h) === "html")
6113
6119
  return h;
6114
6120
  const t = (
6115
6121
  // Step into the shadow DOM of the parent of a slotted node.
@@ -6122,36 +6128,36 @@ function P(h) {
6122
6128
  }
6123
6129
  function se(h) {
6124
6130
  const t = P(h);
6125
- return Z(t) ? h.ownerDocument ? h.ownerDocument.body : h.body : K(t) && st(t) ? t : se(t);
6131
+ return j(t) ? h.ownerDocument ? h.ownerDocument.body : h.body : K(t) && st(t) ? t : se(t);
6126
6132
  }
6127
6133
  function tt(h, t, e) {
6128
6134
  var i;
6129
6135
  t === void 0 && (t = []), e === void 0 && (e = !0);
6130
6136
  const s = se(h), o = s === ((i = h.ownerDocument) == null ? void 0 : i.body), r = N(s);
6131
6137
  if (o) {
6132
- const a = bt(r);
6138
+ const a = yt(r);
6133
6139
  return t.concat(r, r.visualViewport || [], st(s) ? s : [], a && e ? tt(a) : []);
6134
6140
  }
6135
6141
  return t.concat(s, tt(s, [], e));
6136
6142
  }
6137
- function bt(h) {
6143
+ function yt(h) {
6138
6144
  return h.parent && Object.getPrototypeOf(h.parent) ? h.frameElement : null;
6139
6145
  }
6140
6146
  function oe(h) {
6141
6147
  const t = B(h);
6142
6148
  let e = parseFloat(t.width) || 0, i = parseFloat(t.height) || 0;
6143
- const s = K(h), o = s ? h.offsetWidth : e, r = s ? h.offsetHeight : i, a = at(e) !== o || at(i) !== r;
6149
+ const s = K(h), o = s ? h.offsetWidth : e, r = s ? h.offsetHeight : i, a = lt(e) !== o || lt(i) !== r;
6144
6150
  return a && (e = o, i = r), {
6145
6151
  width: e,
6146
6152
  height: i,
6147
6153
  $: a
6148
6154
  };
6149
6155
  }
6150
- function Lt(h) {
6156
+ function Ot(h) {
6151
6157
  return X(h) ? h : h.contextElement;
6152
6158
  }
6153
6159
  function U(h) {
6154
- const t = Lt(h);
6160
+ const t = Ot(h);
6155
6161
  if (!K(t))
6156
6162
  return Y(1);
6157
6163
  const e = t.getBoundingClientRect(), {
@@ -6159,7 +6165,7 @@ function U(h) {
6159
6165
  height: s,
6160
6166
  $: o
6161
6167
  } = oe(t);
6162
- let r = (o ? at(e.width) : e.width) / i, a = (o ? at(e.height) : e.height) / s;
6168
+ let r = (o ? lt(e.width) : e.width) / i, a = (o ? lt(e.height) : e.height) / s;
6163
6169
  return (!r || !Number.isFinite(r)) && (r = 1), (!a || !Number.isFinite(a)) && (a = 1), {
6164
6170
  x: r,
6165
6171
  y: a
@@ -6168,7 +6174,7 @@ function U(h) {
6168
6174
  const di = /* @__PURE__ */ Y(0);
6169
6175
  function re(h) {
6170
6176
  const t = N(h);
6171
- return !Ot() || !t.visualViewport ? di : {
6177
+ return !Tt() || !t.visualViewport ? di : {
6172
6178
  x: t.visualViewport.offsetLeft,
6173
6179
  y: t.visualViewport.offsetTop
6174
6180
  };
@@ -6178,27 +6184,27 @@ function fi(h, t, e) {
6178
6184
  }
6179
6185
  function G(h, t, e, i) {
6180
6186
  t === void 0 && (t = !1), e === void 0 && (e = !1);
6181
- const s = h.getBoundingClientRect(), o = Lt(h);
6187
+ const s = h.getBoundingClientRect(), o = Ot(h);
6182
6188
  let r = Y(1);
6183
6189
  t && (i ? X(i) && (r = U(i)) : r = U(h));
6184
6190
  const a = fi(o, e, i) ? re(o) : Y(0);
6185
6191
  let l = (s.left + a.x) / r.x, c = (s.top + a.y) / r.y, d = s.width / r.x, f = s.height / r.y;
6186
6192
  if (o) {
6187
6193
  const x = N(o), u = i && X(i) ? N(i) : i;
6188
- let w = x, m = bt(w);
6194
+ let w = x, m = yt(w);
6189
6195
  for (; m && i && u !== w; ) {
6190
6196
  const g = U(m), E = m.getBoundingClientRect(), C = B(m), p = E.left + (m.clientLeft + parseFloat(C.paddingLeft)) * g.x, b = E.top + (m.clientTop + parseFloat(C.paddingTop)) * g.y;
6191
- l *= g.x, c *= g.y, d *= g.x, f *= g.y, l += p, c += b, w = N(m), m = bt(w);
6197
+ l *= g.x, c *= g.y, d *= g.x, f *= g.y, l += p, c += b, w = N(m), m = yt(w);
6192
6198
  }
6193
6199
  }
6194
- return ct({
6200
+ return ht({
6195
6201
  width: d,
6196
6202
  height: f,
6197
6203
  x: l,
6198
6204
  y: c
6199
6205
  });
6200
6206
  }
6201
- function Mt(h, t) {
6207
+ function Lt(h, t) {
6202
6208
  const e = wt(h).scrollLeft;
6203
6209
  return t ? t.left + e : G(F(h)).left + e;
6204
6210
  }
@@ -6206,7 +6212,7 @@ function ne(h, t, e) {
6206
6212
  e === void 0 && (e = !1);
6207
6213
  const i = h.getBoundingClientRect(), s = i.left + t.scrollLeft - (e ? 0 : (
6208
6214
  // RTL <body> scrollbar.
6209
- Mt(h, i)
6215
+ Lt(h, i)
6210
6216
  )), o = i.top + t.scrollTop;
6211
6217
  return {
6212
6218
  x: s,
@@ -6228,7 +6234,7 @@ function ui(h) {
6228
6234
  scrollTop: 0
6229
6235
  }, c = Y(1);
6230
6236
  const d = Y(0), f = K(i);
6231
- if ((f || !f && !o) && ((J(i) !== "body" || st(r)) && (l = wt(i)), K(i))) {
6237
+ if ((f || !f && !o) && ((Z(i) !== "body" || st(r)) && (l = wt(i)), K(i))) {
6232
6238
  const u = G(i);
6233
6239
  c = U(i), d.x = u.x + i.clientLeft, d.y = u.y + i.clientTop;
6234
6240
  }
@@ -6245,7 +6251,7 @@ function xi(h) {
6245
6251
  }
6246
6252
  function gi(h) {
6247
6253
  const t = F(h), e = wt(h), i = h.ownerDocument.body, s = z(t.scrollWidth, t.clientWidth, i.scrollWidth, i.clientWidth), o = z(t.scrollHeight, t.clientHeight, i.scrollHeight, i.clientHeight);
6248
- let r = -e.scrollLeft + Mt(h);
6254
+ let r = -e.scrollLeft + Lt(h);
6249
6255
  const a = -e.scrollTop;
6250
6256
  return B(i).direction === "rtl" && (r += z(t.clientWidth, i.clientWidth) - s), {
6251
6257
  width: s,
@@ -6259,7 +6265,7 @@ function wi(h, t) {
6259
6265
  let o = i.clientWidth, r = i.clientHeight, a = 0, l = 0;
6260
6266
  if (s) {
6261
6267
  o = s.width, r = s.height;
6262
- const c = Ot();
6268
+ const c = Tt();
6263
6269
  (!c || c && t === "fixed") && (a = s.offsetLeft, l = s.offsetTop);
6264
6270
  }
6265
6271
  return {
@@ -6296,21 +6302,21 @@ function Vt(h, t, e) {
6296
6302
  height: t.height
6297
6303
  };
6298
6304
  }
6299
- return ct(i);
6305
+ return ht(i);
6300
6306
  }
6301
6307
  function ae(h, t) {
6302
6308
  const e = P(h);
6303
- return e === t || !X(e) || Z(e) ? !1 : B(e).position === "fixed" || ae(e, t);
6309
+ return e === t || !X(e) || j(e) ? !1 : B(e).position === "fixed" || ae(e, t);
6304
6310
  }
6305
6311
  function pi(h, t) {
6306
6312
  const e = t.get(h);
6307
6313
  if (e)
6308
6314
  return e;
6309
- let i = tt(h, [], !1).filter((a) => X(a) && J(a) !== "body"), s = null;
6315
+ let i = tt(h, [], !1).filter((a) => X(a) && Z(a) !== "body"), s = null;
6310
6316
  const o = B(h).position === "fixed";
6311
6317
  let r = o ? P(h) : h;
6312
- for (; X(r) && !Z(r); ) {
6313
- const a = B(r), l = Tt(r);
6318
+ for (; X(r) && !j(r); ) {
6319
+ const a = B(r), l = St(r);
6314
6320
  !l && a.position === "fixed" && (s = null), (o ? !l && !s : !l && a.position === "static" && !!s && mi.has(s.position) || st(r) && !l && ae(h, r)) ? i = i.filter((d) => d !== r) : s = a, r = P(r);
6315
6321
  }
6316
6322
  return t.set(h, i), i;
@@ -6351,10 +6357,10 @@ function bi(h, t, e) {
6351
6357
  };
6352
6358
  const l = Y(0);
6353
6359
  function c() {
6354
- l.x = Mt(s);
6360
+ l.x = Lt(s);
6355
6361
  }
6356
6362
  if (i || !i && !o)
6357
- if ((J(t) !== "body" || st(s)) && (a = wt(t)), i) {
6363
+ if ((Z(t) !== "body" || st(s)) && (a = wt(t)), i) {
6358
6364
  const u = G(t, !0, o, t);
6359
6365
  l.x = u.x + t.clientLeft, l.y = u.y + t.clientTop;
6360
6366
  } else s && c();
@@ -6384,7 +6390,7 @@ function le(h, t) {
6384
6390
  return e;
6385
6391
  if (!K(h)) {
6386
6392
  let s = P(h);
6387
- for (; s && !Z(s); ) {
6393
+ for (; s && !j(s); ) {
6388
6394
  if (X(s) && !mt(s))
6389
6395
  return s;
6390
6396
  s = P(s);
@@ -6394,7 +6400,7 @@ function le(h, t) {
6394
6400
  let i = Pt(h, t);
6395
6401
  for (; i && oi(i) && mt(i); )
6396
6402
  i = Pt(i, t);
6397
- return i && Z(i) && mt(i) && !Tt(i) ? e : i || ci(h) || e;
6403
+ return i && j(i) && mt(i) && !St(i) ? e : i || ci(h) || e;
6398
6404
  }
6399
6405
  const Ii = async function(h) {
6400
6406
  const t = this.getOffsetParent || le, e = this.getDimensions, i = await e(h.floating);
@@ -6448,8 +6454,8 @@ function _i(h, t) {
6448
6454
  threshold: z(0, q(1, l)) || 1
6449
6455
  };
6450
6456
  let b = !0;
6451
- function y(I) {
6452
- const _ = I[0].intersectionRatio;
6457
+ function y(v) {
6458
+ const _ = v[0].intersectionRatio;
6453
6459
  if (_ !== l) {
6454
6460
  if (!b)
6455
6461
  return r();
@@ -6472,7 +6478,7 @@ function _i(h, t) {
6472
6478
  }
6473
6479
  return r(!0), o;
6474
6480
  }
6475
- function It(h, t, e, i) {
6481
+ function bt(h, t, e, i) {
6476
6482
  i === void 0 && (i = {});
6477
6483
  const {
6478
6484
  ancestorScroll: s = !0,
@@ -6480,7 +6486,7 @@ function It(h, t, e, i) {
6480
6486
  elementResize: r = typeof ResizeObserver == "function",
6481
6487
  layoutShift: a = typeof IntersectionObserver == "function",
6482
6488
  animationFrame: l = !1
6483
- } = i, c = Lt(h), d = s || o ? [...c ? tt(c) : [], ...tt(t)] : [];
6489
+ } = i, c = Ot(h), d = s || o ? [...c ? tt(c) : [], ...tt(t)] : [];
6484
6490
  d.forEach((E) => {
6485
6491
  s && E.addEventListener("scroll", e, {
6486
6492
  passive: !0
@@ -6508,7 +6514,7 @@ function It(h, t, e, i) {
6508
6514
  }), f == null || f(), (E = u) == null || E.disconnect(), u = null, l && cancelAnimationFrame(w);
6509
6515
  };
6510
6516
  }
6511
- const ht = ti, dt = ei, ft = Ze, Si = qe, ut = (h, t, e) => {
6517
+ const dt = ti, ft = ei, Mt = Ze, Si = je, ut = (h, t, e) => {
6512
6518
  const i = /* @__PURE__ */ new Map(), s = {
6513
6519
  platform: vi,
6514
6520
  ...e
@@ -6516,7 +6522,7 @@ const ht = ti, dt = ei, ft = Ze, Si = qe, ut = (h, t, e) => {
6516
6522
  ...s.platform,
6517
6523
  _c: i
6518
6524
  };
6519
- return je(h, t, {
6525
+ return qe(h, t, {
6520
6526
  ...s,
6521
6527
  platform: o
6522
6528
  });
@@ -6602,7 +6608,7 @@ let Ti = class {
6602
6608
  }
6603
6609
  }, this.floatingEl, {
6604
6610
  placement: t.overflowTooltipPlacement,
6605
- middleware: [dt(), ft(), ht(6), Si({ element: this.arrowEl })]
6611
+ middleware: [ft(), Mt(), dt(6), Si({ element: this.arrowEl })]
6606
6612
  }).then((a) => {
6607
6613
  const { x: l, y: c, placement: d, middlewareData: f } = a;
6608
6614
  if (Object.assign(this.floatingEl.style, {
@@ -6868,7 +6874,7 @@ class Mi {
6868
6874
  n(this, "ctx");
6869
6875
  n(this, "observer");
6870
6876
  this.ctx = t, this.observer = new MutationObserver(
6871
- Q(() => {
6877
+ J(() => {
6872
6878
  const e = this.ctx.overlayerElement.querySelectorAll('[data-auto-height="true"]'), i = /* @__PURE__ */ new Map();
6873
6879
  e.forEach((r) => {
6874
6880
  const a = Number(r.getAttribute("data-row-index")), l = Number(r.getAttribute("data-col-index"));
@@ -7143,7 +7149,7 @@ class zt {
7143
7149
  handleHover(t) {
7144
7150
  t.classList.contains("e-virt-table-menu-item") && (this.container.querySelectorAll(".e-virt-table-menu-item").forEach((i) => i.classList.remove("active")), t.classList.contains("disabled") || t.classList.add("active"));
7145
7151
  const e = t._submenu || t.querySelector(".e-virt-table-submenu");
7146
- e && this.showSubmenu(t, e);
7152
+ e && (this.hideSiblingSubmenus(t), this.showSubmenu(t, e));
7147
7153
  }
7148
7154
  handleLeave(t) {
7149
7155
  const e = t._submenu || t.querySelector(".e-virt-table-submenu");
@@ -7152,17 +7158,32 @@ class zt {
7152
7158
  i && !i.matches(":hover") && !t.matches(":hover") && (this.hideSubmenu(i), t.classList.contains("e-virt-table-menu-item") && t.classList.remove("active"));
7153
7159
  }, 150);
7154
7160
  }
7161
+ hideSiblingSubmenus(t) {
7162
+ let e;
7163
+ if (t.classList.contains("e-virt-table-menu-item"))
7164
+ e = this.container.querySelectorAll(".e-virt-table-menu-item");
7165
+ else {
7166
+ const i = t.closest(".e-virt-table-submenu");
7167
+ if (i)
7168
+ e = i.querySelectorAll(".e-virt-table-submenu-item");
7169
+ else
7170
+ return;
7171
+ }
7172
+ e.forEach((i) => {
7173
+ i !== t && i._submenu && this.hideSubmenu(i._submenu);
7174
+ });
7175
+ }
7155
7176
  async showSubmenu(t, e) {
7156
7177
  if (this.activeSubmenus.has(e)) return;
7157
7178
  this.activeSubmenus.add(e), e.classList.add("show");
7158
- const i = It(t, e, async () => {
7159
- const { x: s, y: o } = await ut(t, e, {
7160
- placement: "right-start",
7161
- middleware: [ht(8), ft(), dt({ padding: 8 })]
7179
+ const i = bt(t, e, async () => {
7180
+ const s = this.container.getBoundingClientRect(), o = window.innerWidth, r = e.offsetWidth || 200, a = o - s.right, l = s.left, c = a >= r || a >= l ? "right-start" : "left-start", { x: d, y: f } = await ut(t, e, {
7181
+ placement: c,
7182
+ middleware: [dt(8), ft({ padding: 8 })]
7162
7183
  });
7163
7184
  Object.assign(e.style, {
7164
- left: `${s}px`,
7165
- top: `${o}px`
7185
+ left: `${d}px`,
7186
+ top: `${f}px`
7166
7187
  });
7167
7188
  });
7168
7189
  e._cleanup = i;
@@ -7225,10 +7246,10 @@ class zt {
7225
7246
  }),
7226
7247
  contextElement: document.body
7227
7248
  };
7228
- It(e, this.container, () => {
7249
+ bt(e, this.container, () => {
7229
7250
  ut(e, this.container, {
7230
7251
  placement: "right-start",
7231
- middleware: [ht(), dt(), ft()]
7252
+ middleware: [dt(), ft(), Mt()]
7232
7253
  }).then(({ x: i, y: s }) => {
7233
7254
  this.container && Object.assign(this.container.style, {
7234
7255
  left: `${i}px`,
@@ -7262,7 +7283,24 @@ class zt {
7262
7283
  */
7263
7284
  removeSubMenuItem(t) {
7264
7285
  const e = this.container.querySelector(`[data-submenu="${t}"]`);
7265
- return e ? (e.remove(), !0) : !1;
7286
+ if (!e)
7287
+ return !1;
7288
+ const i = e.closest(".e-virt-table-submenu"), s = e._submenu;
7289
+ if (s && this.cleanupSubmenuRecursively(s), e.remove(), i && i.querySelectorAll(".e-virt-table-submenu-item").length === 0) {
7290
+ const r = this.container.querySelector("[data-menu]");
7291
+ if (r && r._submenu === i)
7292
+ this.removeMenuItem(r.getAttribute("data-menu") || "");
7293
+ else {
7294
+ const a = this.container.querySelectorAll("[data-menu], [data-submenu]");
7295
+ for (const l of a)
7296
+ if (l._submenu === i) {
7297
+ const c = l.getAttribute("data-menu") || l.getAttribute("data-submenu");
7298
+ c && (l.hasAttribute("data-menu") ? this.removeMenuItem(c) : this.removeSubMenuItem(c));
7299
+ break;
7300
+ }
7301
+ }
7302
+ }
7303
+ return !0;
7266
7304
  }
7267
7305
  cleanupAllSubmenus(t) {
7268
7306
  t.querySelectorAll(".e-virt-table-menu-item").forEach((i) => {
@@ -7306,37 +7344,36 @@ class Ai {
7306
7344
  this.contextMenuEl.style.display = "block", this.positionMenu(e);
7307
7345
  return;
7308
7346
  }
7309
- const { HEADER_CONTEXT_MENU: i, CUSTOM_HEADER_CONTEXT_MENU: s, ENABLE_HEADER_CONTEXT_MENU: o } = this.ctx.config, r = [...i, ...s];
7310
- if (!o || r.length === 0) return;
7347
+ const { SELECTOR_AREA_MIN_X: i, SELECTOR_AREA_MAX_X: s, SELECTOR_AREA_MAX_X_OFFSET: o } = this.ctx.config, r = i, a = s || this.ctx.maxColIndex - o;
7348
+ if (t.colIndex < r || t.colIndex > a)
7349
+ return;
7350
+ const { HEADER_CONTEXT_MENU: l, CUSTOM_HEADER_CONTEXT_MENU: c, ENABLE_HEADER_CONTEXT_MENU: d } = this.ctx.config, f = [...l, ...c];
7351
+ if (!d || f.length === 0) return;
7311
7352
  e.preventDefault();
7312
- const { xArr: a } = this.ctx.selector, [l, c] = a, { colIndex: d } = t;
7313
- d >= l && d <= c || (this.ctx.focusCellHeader = t, this.ctx.emit("selectCols", t)), this.currentDOMTreeMenu && this.currentDOMTreeMenu.destroy();
7314
- const x = this.ctx.database.getColumns(), w = j(x).filter((g) => g.hide), m = r.map((g) => g.value === "visible" ? {
7315
- ...g,
7316
- children: w.map((E) => ({
7317
- label: E.title,
7318
- value: `visible_${E.key}`
7319
- // 使用唯一的值来标识每个隐藏的列
7320
- }))
7321
- } : g);
7322
- this.ctx.contextMenuIng = !0, this.currentDOMTreeMenu = new zt(this.contextMenuEl, m, {
7323
- onClick: (g, E) => {
7324
- const { xArr: C } = this.ctx.selector, [p, b] = C;
7325
- if (E === "fixedLeft" || E === "fixedRight" || E === "fixedNone") {
7326
- const y = this.ctx.header.allCellHeaders.filter((I) => I.colIndex >= p && I.colIndex <= b).filter((I) => I.level === 0).filter((I) => !I.column.fixedDisabled).map((I) => I.key);
7353
+ const { xArr: x } = this.ctx.selector, [u, w] = x, { colIndex: m } = t;
7354
+ m >= u && m <= w || (this.ctx.focusCellHeader = t, this.ctx.emit("selectCols", t)), this.currentDOMTreeMenu && this.currentDOMTreeMenu.destroy();
7355
+ const E = this.ctx.database.getColumns(), C = f.map((p) => p.value === "visible" ? {
7356
+ ...p,
7357
+ children: this.filterColumns(E)
7358
+ } : p);
7359
+ this.ctx.contextMenuIng = !0, this.currentDOMTreeMenu = new zt(this.contextMenuEl, C, {
7360
+ onClick: (p, b) => {
7361
+ const { xArr: y } = this.ctx.selector, [v, _] = y;
7362
+ if (b === "fixedLeft" || b === "fixedRight" || b === "fixedNone") {
7363
+ const S = this.ctx.header.allCellHeaders.filter((I) => I.colIndex >= v && I.colIndex <= _).filter((I) => I.level === 0).filter((I) => !I.column.fixedDisabled).map((I) => I.key);
7327
7364
  this.ctx.database.setCustomHeaderFixedData(
7328
- y,
7329
- E === "fixedLeft" ? "left" : E === "fixedRight" ? "right" : ""
7365
+ S,
7366
+ b === "fixedLeft" ? "left" : b === "fixedRight" ? "right" : ""
7330
7367
  ), this.hide();
7331
- } else if (E === "hide") {
7332
- const y = this.ctx.header.leafCellHeaders.filter((I) => I.colIndex >= p && I.colIndex <= b).filter((I) => !I.children.length).filter((I) => !I.column.hideDisabled).map((I) => I.key);
7333
- y.length > 0 && this.ctx.database.setCustomHeaderHideData(y, !0), this.hide();
7334
- } else if (E !== "visible") if (E.startsWith("visible_")) {
7335
- const y = E.replace("visible_", "");
7336
- this.ctx.database.setCustomHeaderHideData([y], !1), this.currentDOMTreeMenu && this.currentDOMTreeMenu.removeSubMenuItem(E);
7368
+ } else if (b === "hide") {
7369
+ const S = this.ctx.header.leafCellHeaders.filter((I) => I.colIndex >= v && I.colIndex <= _).filter((I) => !I.children.length).filter((I) => !I.column.hideDisabled).map((I) => I.key);
7370
+ S.length > 0 && this.ctx.database.setCustomHeaderHideData(S, !0), this.hide();
7371
+ } else if (b !== "visible") if (b.startsWith("visible_")) {
7372
+ const S = b.replace("visible_", "");
7373
+ this.ctx.database.setCustomHeaderHideData([S], !1), this.currentDOMTreeMenu && this.currentDOMTreeMenu.removeSubMenuItem(b);
7337
7374
  const I = this.ctx.database.getColumns();
7338
- j(I).filter((v) => v.hide).length === 0 && this.hide();
7339
- } else E === "resetHeader" && (this.ctx.database.resetCustomHeader(), this.hide());
7375
+ Q(I).filter((O) => O.hide).length === 0 && this.hide();
7376
+ } else b === "resetHeader" && (this.ctx.database.resetCustomHeader(), this.hide());
7340
7377
  }
7341
7378
  }), this.positionMenu(e);
7342
7379
  }), this.ctx.on("click", () => {
@@ -7357,10 +7394,10 @@ class Ai {
7357
7394
  }),
7358
7395
  contextElement: document.body
7359
7396
  };
7360
- It(e, this.contextMenuEl, () => {
7397
+ bt(e, this.contextMenuEl, () => {
7361
7398
  ut(e, this.contextMenuEl, {
7362
7399
  placement: "right-start",
7363
- middleware: [ht(), dt(), ft()]
7400
+ middleware: [dt(), ft(), Mt()]
7364
7401
  }).then(({ x: i, y: s }) => {
7365
7402
  this.contextMenuEl && Object.assign(this.contextMenuEl.style, {
7366
7403
  left: `${i}px`,
@@ -7369,6 +7406,21 @@ class Ai {
7369
7406
  });
7370
7407
  });
7371
7408
  }
7409
+ filterColumns(t) {
7410
+ const e = [];
7411
+ for (const i of t)
7412
+ if (i.children && i.children.length > 0) {
7413
+ const s = this.filterColumns(i.children);
7414
+ s.length > 0 && e.push({
7415
+ label: i.title,
7416
+ value: `visible_${i.key}`,
7417
+ disabled: !0,
7418
+ // 非末级,且有子项保留 → disabled
7419
+ children: s
7420
+ });
7421
+ } else i.hide && e.push({ label: i.title, value: `visible_${i.key}` });
7422
+ return e;
7423
+ }
7372
7424
  hide() {
7373
7425
  this.currentDOMTreeMenu && (this.currentDOMTreeMenu.destroy(), this.currentDOMTreeMenu = void 0), this.contextMenuEl.style.display = "none", this.ctx.contextMenuIng = !1;
7374
7426
  }
@@ -7435,7 +7487,7 @@ class Xi {
7435
7487
  );
7436
7488
  this.ctx = new Me(a, this.options), this.header = new De(this.ctx), this.footer = new ke(this.ctx), this.body = new Ne(this.ctx), this.scroller = new Ae(this.ctx), this.selector = new Xe(this.ctx), this.autofill = new Be(this.ctx), this.tooltip = new Ti(this.ctx), this.empty = new Li(this.ctx), this.editor = new Oi(this.ctx), this.overlayer = new Mi(this.ctx), this.contextMenu = new Ai(this.ctx), this.loading = new Hi(this.ctx), this.ctx.on(
7437
7489
  "draw",
7438
- Q(
7490
+ J(
7439
7491
  () => {
7440
7492
  this.draw();
7441
7493
  },
@@ -7443,7 +7495,7 @@ class Xi {
7443
7495
  )
7444
7496
  ), this.ctx.on(
7445
7497
  "drawView",
7446
- Q(
7498
+ J(
7447
7499
  () => {
7448
7500
  this.draw(!0);
7449
7501
  },
@@ -7702,7 +7754,7 @@ class Xi {
7702
7754
  mergeColCell: pe,
7703
7755
  mergeRowCell: Ee,
7704
7756
  getSpanArrByRow: Ut,
7705
- getSpanObjByColumn: jt
7757
+ getSpanObjByColumn: qt
7706
7758
  };
7707
7759
  }
7708
7760
  getColumnByKey(t) {