@silurus/ooxml 0.25.0 → 0.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -304,11 +304,11 @@ function A(e, t, n) {
304
304
  let r = t.cellXfs[e.styleIndex ?? 0]?.numFmtId ?? 0, i = t.numFmts?.find((e) => e.numFmtId === r)?.formatCode ?? null, a = n?.numFmtId ?? r, o = n?.formatCode ?? i;
305
305
  if (e.value.type !== "number") {
306
306
  let t = ie(e.value);
307
- return o ? j(t, o) : t;
307
+ return o ? ae(t, o) : t;
308
308
  }
309
- return B(M(e.formula) ?? e.value.number, a, o);
309
+ return z(j(e.formula) ?? e.value.number, a, o);
310
310
  }
311
- function j(e, t) {
311
+ function ae(e, t) {
312
312
  let n = t.split(";");
313
313
  if (n.length < 4) return e;
314
314
  let r = n[3];
@@ -327,12 +327,12 @@ function j(e, t) {
327
327
  }
328
328
  return i;
329
329
  }
330
- function M(e) {
330
+ function j(e) {
331
331
  if (!e) return null;
332
332
  let t = e.trim().replace(/^=/, "").toUpperCase().replace(/\s+/g, "");
333
333
  return t === "TODAY()" ? et() : t === "NOW()" ? tt() : null;
334
334
  }
335
- var ae = {
335
+ var oe = {
336
336
  14: "m/d/yyyy",
337
337
  15: "d-mmm-yy",
338
338
  16: "d-mmm",
@@ -356,7 +356,7 @@ var ae = {
356
356
  56: "m\"月\"d\"日\"",
357
357
  57: "[$-411]ge.m.d",
358
358
  58: "[$-411]ggge\"年\"m\"月\"d\"日\""
359
- }, N = [
359
+ }, M = [
360
360
  "January",
361
361
  "February",
362
362
  "March",
@@ -369,7 +369,7 @@ var ae = {
369
369
  "October",
370
370
  "November",
371
371
  "December"
372
- ], P = [
372
+ ], N = [
373
373
  "Sunday",
374
374
  "Monday",
375
375
  "Tuesday",
@@ -377,7 +377,7 @@ var ae = {
377
377
  "Thursday",
378
378
  "Friday",
379
379
  "Saturday"
380
- ], F = [
380
+ ], P = [
381
381
  "日",
382
382
  "月",
383
383
  "火",
@@ -385,7 +385,7 @@ var ae = {
385
385
  "木",
386
386
  "金",
387
387
  "土"
388
- ], I = [
388
+ ], F = [
389
389
  "日曜日",
390
390
  "月曜日",
391
391
  "火曜日",
@@ -393,7 +393,7 @@ var ae = {
393
393
  "木曜日",
394
394
  "金曜日",
395
395
  "土曜日"
396
- ], L = [
396
+ ], I = [
397
397
  {
398
398
  start: new Date(Date.UTC(2019, 4, 1)),
399
399
  abbr: "R",
@@ -425,14 +425,14 @@ var ae = {
425
425
  long: "明治"
426
426
  }
427
427
  ];
428
- function R(e) {
429
- for (let t of L) if (e.getTime() >= t.start.getTime()) return {
428
+ function L(e) {
429
+ for (let t of I) if (e.getTime() >= t.start.getTime()) return {
430
430
  abbr: t.abbr,
431
431
  short: t.short,
432
432
  long: t.long,
433
433
  year: e.getUTCFullYear() - t.start.getUTCFullYear() + 1
434
434
  };
435
- let t = L[L.length - 1];
435
+ let t = I[I.length - 1];
436
436
  return {
437
437
  abbr: t.abbr,
438
438
  short: t.short,
@@ -440,11 +440,11 @@ function R(e) {
440
440
  year: e.getUTCFullYear()
441
441
  };
442
442
  }
443
- function z(e) {
443
+ function R(e) {
444
444
  return /* @__PURE__ */ new Date((e - 25569) * 86400 * 1e3);
445
445
  }
446
- function oe(e, t) {
447
- let n = z(e), r = n.getUTCFullYear(), i = n.getUTCMonth() + 1, a = n.getUTCDate(), o = n.getUTCDay(), s = n.getUTCHours(), c = n.getUTCMinutes(), l = n.getUTCSeconds(), u = t.split(";")[0], d = /am\/pm|a\/p/i.test(u), f = null, p = () => f ??= R(n), m = "", h = 0, g = !1;
446
+ function se(e, t) {
447
+ let n = R(e), r = n.getUTCFullYear(), i = n.getUTCMonth() + 1, a = n.getUTCDate(), o = n.getUTCDay(), s = n.getUTCHours(), c = n.getUTCMinutes(), l = n.getUTCSeconds(), u = t.split(";")[0], d = /am\/pm|a\/p/i.test(u), f = null, p = () => f ??= L(n), m = "", h = 0, g = !1;
448
448
  for (; h < u.length;) {
449
449
  let t = u[h];
450
450
  if (t === "\"") {
@@ -472,11 +472,11 @@ function oe(e, t) {
472
472
  let e = 0;
473
473
  for (; h < u.length && u[h].toLowerCase() === "m";) e++, h++;
474
474
  let t = u.slice(h).replace(/\[[^\]]*\]/g, "");
475
- g || /^:s/i.test(t) ? m += e >= 2 ? String(c).padStart(2, "0") : String(c) : e === 1 ? m += String(i) : e === 2 ? m += String(i).padStart(2, "0") : e === 3 ? m += N[i - 1].slice(0, 3) : e === 4 ? m += N[i - 1] : m += N[i - 1][0], g = !1;
475
+ g || /^:s/i.test(t) ? m += e >= 2 ? String(c).padStart(2, "0") : String(c) : e === 1 ? m += String(i) : e === 2 ? m += String(i).padStart(2, "0") : e === 3 ? m += M[i - 1].slice(0, 3) : e === 4 ? m += M[i - 1] : m += M[i - 1][0], g = !1;
476
476
  } else if (t === "d" || t === "D") {
477
477
  let e = 0;
478
478
  for (; h < u.length && u[h].toLowerCase() === "d";) e++, h++;
479
- e === 1 ? m += String(a) : e === 2 ? m += String(a).padStart(2, "0") : e === 3 ? m += P[o].slice(0, 3) : m += P[o], g = !1;
479
+ e === 1 ? m += String(a) : e === 2 ? m += String(a).padStart(2, "0") : e === 3 ? m += N[o].slice(0, 3) : m += N[o], g = !1;
480
480
  } else if (t === "h" || t === "H") {
481
481
  let e = 0;
482
482
  for (; h < u.length && u[h].toLowerCase() === "h";) e++, h++;
@@ -503,48 +503,48 @@ function oe(e, t) {
503
503
  m += e >= 2 ? String(t).padStart(2, "0") : String(t), g = !1;
504
504
  } else if (t === "A" || t === "a") {
505
505
  let e = u.slice(h).toUpperCase();
506
- e.startsWith("AAAA") ? (m += I[o], h += 4) : e.startsWith("AAA") ? (m += F[o], h += 3) : e.startsWith("AM/PM") ? (m += s < 12 ? "AM" : "PM", h += 5) : e.startsWith("A/P") ? (m += s < 12 ? "A" : "P", h += 3) : (m += t, h++), g = !1;
506
+ e.startsWith("AAAA") ? (m += F[o], h += 4) : e.startsWith("AAA") ? (m += P[o], h += 3) : e.startsWith("AM/PM") ? (m += s < 12 ? "AM" : "PM", h += 5) : e.startsWith("A/P") ? (m += s < 12 ? "A" : "P", h += 3) : (m += t, h++), g = !1;
507
507
  } else m += t, h++, t !== ":" && t !== "/" && t !== "-" && t !== "." && t !== " " && (g = !1);
508
508
  }
509
509
  return m;
510
510
  }
511
- function se(e) {
511
+ function ce(e) {
512
512
  if (/\[[hms]+\]/i.test(e)) return !0;
513
513
  let t = e.replace(/"[^"]*"/g, "").replace(/\[[^\]]*\]/g, "");
514
514
  return /[yd]/i.test(t) || /a{3,}/i.test(t);
515
515
  }
516
- function B(e, t, n) {
517
- let r = ae[t];
518
- if (r) return oe(e, r);
519
- if (n) return se(n) ? oe(e, n) : le(e, n);
516
+ function z(e, t, n) {
517
+ let r = oe[t];
518
+ if (r) return se(e, r);
519
+ if (n) return ce(n) ? se(e, n) : ue(e, n);
520
520
  switch (t) {
521
521
  case 0: return String(e);
522
522
  case 1: return Math.round(e).toString();
523
523
  case 2: return e.toFixed(2);
524
- case 3: return V(e, 0);
525
- case 4: return V(e, 2);
524
+ case 3: return B(e, 0);
525
+ case 4: return B(e, 2);
526
526
  case 9: return Math.round(e * 100) + "%";
527
527
  case 10: return (e * 100).toFixed(2) + "%";
528
528
  case 11: return e.toExponential(2);
529
529
  case 37:
530
- case 38: return V(e, 0);
530
+ case 38: return B(e, 0);
531
531
  case 39:
532
- case 40: return V(e, 2);
532
+ case 40: return B(e, 2);
533
533
  case 49: return String(e);
534
534
  default: return String(e);
535
535
  }
536
536
  }
537
- function V(e, t) {
537
+ function B(e, t) {
538
538
  return e.toLocaleString("en-US", {
539
539
  minimumFractionDigits: t,
540
540
  maximumFractionDigits: t
541
541
  });
542
542
  }
543
- function H(e) {
543
+ function V(e) {
544
544
  let t = e.match(/\.([0#]+)/);
545
545
  return t ? t[1].length : 0;
546
546
  }
547
- function U(e) {
547
+ function H(e) {
548
548
  let t = [], n = "", r = !1, i = !1, a = (e) => {
549
549
  if (!e) return;
550
550
  let n = t[t.length - 1];
@@ -581,39 +581,39 @@ function U(e) {
581
581
  numSpec: n
582
582
  };
583
583
  }
584
- function ce(e, t) {
585
- let n = t.includes(",") && /[#0]/.test(t), r = H(t);
586
- return n ? V(e, r) : t.includes(".") ? e.toFixed(r) : /[#0?]/.test(t) ? Math.round(e).toString() : String(e);
587
- }
588
584
  function le(e, t) {
585
+ let n = t.includes(",") && /[#0]/.test(t), r = V(t);
586
+ return n ? B(e, r) : t.includes(".") ? e.toFixed(r) : /[#0?]/.test(t) ? Math.round(e).toString() : String(e);
587
+ }
588
+ function ue(e, t) {
589
589
  let n = t.split(";"), r;
590
590
  r = e > 0 ? n[0] : e < 0 ? n.length > 1 ? n[1] : n[0] : n.length > 2 ? n[2] : n[0];
591
- let { tokens: i, numSpec: a } = U(r), o = i.some((e) => e.kind === "percent"), s = i.find((e) => e.kind === "sci"), c = e;
591
+ let { tokens: i, numSpec: a } = H(r), o = i.some((e) => e.kind === "percent"), s = i.find((e) => e.kind === "sci"), c = e;
592
592
  o && (c *= 100);
593
593
  let l, u = "";
594
594
  if (s) {
595
- let e = H(a), [t, n] = c.toExponential(e).split("e");
595
+ let e = V(a), [t, n] = c.toExponential(e).split("e");
596
596
  l = t;
597
597
  let r = parseInt(n, 10);
598
598
  u = (r < 0 ? "-" : s.expSign ? "+" : "") + String(Math.abs(r)).padStart(2, "0");
599
- } else l = ce(c, a);
599
+ } else l = le(c, a);
600
600
  let d = "", f = !1;
601
601
  for (let e of i) e.kind === "lit" ? d += e.text : e.kind === "percent" ? d += "%" : e.kind === "num" ? (d += l, f = !0) : e.kind === "sci" && (d += "E" + u);
602
602
  return !f && (a.length > 0 || s) && (d += l), d;
603
603
  }
604
- function ue(e, t, n) {
604
+ function de(e, t, n) {
605
605
  let r = [];
606
- for (let i of t.split("\n")) r.push(...W(e, i, n));
606
+ for (let i of t.split("\n")) r.push(...U(e, i, n));
607
607
  return r;
608
608
  }
609
- function de(e) {
609
+ function fe(e) {
610
610
  return e >= 12288 && e <= 40959 || e >= 63744 && e <= 64255 || e >= 44032 && e <= 55215 || e >= 65280 && e <= 65519;
611
611
  }
612
- function W(e, t, n) {
612
+ function U(e, t, n) {
613
613
  let r = [], i = [], a = 0;
614
614
  for (; a < t.length;) {
615
615
  let e = t[a], n = e.codePointAt(0) ?? 0;
616
- if (de(n)) i.push(e), a += n > 65535 ? 2 : 1;
616
+ if (fe(n)) i.push(e), a += n > 65535 ? 2 : 1;
617
617
  else if (e === " ") {
618
618
  let e = a;
619
619
  for (; e < t.length && t[e] === " ";) e++;
@@ -622,7 +622,7 @@ function W(e, t, n) {
622
622
  let e = a;
623
623
  for (; e < t.length;) {
624
624
  let n = t[e], r = n.codePointAt(0) ?? 0;
625
- if (n === " " || de(r)) break;
625
+ if (n === " " || fe(r)) break;
626
626
  e += r > 65535 ? 2 : 1;
627
627
  }
628
628
  i.push(t.slice(a, e)), a = e;
@@ -639,7 +639,7 @@ function W(e, t, n) {
639
639
  }
640
640
  return r.push(o), r;
641
641
  }
642
- function fe(e, t, n, r, i) {
642
+ function pe(e, t, n, r, i) {
643
643
  let a = [], o = [], s = 0, c = 0, l = () => {
644
644
  o.length !== 0 && (a.push({
645
645
  segments: o,
@@ -679,7 +679,7 @@ function fe(e, t, n, r, i) {
679
679
  }
680
680
  return l(), a;
681
681
  }
682
- function G(e) {
682
+ function me(e) {
683
683
  let t = "";
684
684
  for (; e > 0;) {
685
685
  let n = (e - 1) % 26;
@@ -687,19 +687,19 @@ function G(e) {
687
687
  }
688
688
  return t;
689
689
  }
690
- function pe(e, t, n) {
690
+ function W(e, t, n) {
691
691
  for (let r of e) if (t >= r.top && t <= r.bottom && n >= r.left && n <= r.right) return !0;
692
692
  return !1;
693
693
  }
694
- function me(e) {
694
+ function he(e) {
695
695
  return e && e.value.type === "number" ? e.value.number : null;
696
696
  }
697
- function he(e) {
697
+ function ge(e) {
698
698
  return e && e.value.type === "text" ? e.value.text : null;
699
699
  }
700
- function ge(e, t) {
700
+ function G(e, t) {
701
701
  let n = [];
702
- for (let r of e.rows) for (let e of r.cells) e.value.type === "number" && pe(t, e.row, e.col) && n.push(e.value.number);
702
+ for (let r of e.rows) for (let e of r.cells) e.value.type === "number" && W(t, e.row, e.col) && n.push(e.value.number);
703
703
  return n;
704
704
  }
705
705
  function _e(e, t) {
@@ -726,7 +726,7 @@ function ve(e) {
726
726
  let r = /* @__PURE__ */ new Map();
727
727
  for (let t of e.definedNames ?? []) r.set(t.name, t);
728
728
  for (let n of e.conditionalFormats ?? []) {
729
- let r = ge(e, n.sqref);
729
+ let r = G(e, n.sqref);
730
730
  for (let e of n.rules) {
731
731
  let i = {
732
732
  rule: e,
@@ -822,8 +822,8 @@ function Te(e, t, n, r, i) {
822
822
  let a = {};
823
823
  if (!r.compiled.length) return a;
824
824
  for (let o of r.compiled) {
825
- if (!pe(o.sqref, t, n)) continue;
826
- let s = o.rule, c = me(e);
825
+ if (!W(o.sqref, t, n)) continue;
826
+ let s = o.rule, c = he(e);
827
827
  if (s.type === "expression") {
828
828
  let e = o.sqref[0];
829
829
  if (!e) continue;
@@ -839,7 +839,7 @@ function Te(e, t, n, r, i) {
839
839
  continue;
840
840
  }
841
841
  if (s.type === "cellIs") {
842
- let t = s.formulas.map(be), n = he(e), r = !1;
842
+ let t = s.formulas.map(be), n = ge(e), r = !1;
843
843
  c != null && t.every((e) => e.num != null) ? r = ye(c, s.operator, t.map((e) => e.num)) : n != null && t.every((e) => e.text != null) && (r = xe(n, s.operator, t.map((e) => e.text))), r && we(a, s.dxfId == null ? null : i[s.dxfId]);
844
844
  } else if (s.type === "top10") {
845
845
  if (c == null || o.top10Threshold == null) continue;
@@ -1499,26 +1499,26 @@ function ft(e) {
1499
1499
  }
1500
1500
  function pt(e, t, n, r, a, o, s, c, l, u, d, f, p, m) {
1501
1501
  if (p <= 0 || m <= 0) return;
1502
- let { styles: g, cellMap: _, mergeAnchorMap: v, mergeSkipSet: y, cfContext: T, cs: ee, dpr: ie } = t, j = a.length, M = o.length, ae = [], N = -s;
1503
- for (let e = 0; e < j; e++) ae.push(N), N += a[e];
1504
- let P = [], F = -c;
1505
- for (let e = 0; e < M; e++) P.push(F), F += o[e];
1502
+ let { styles: g, cellMap: _, mergeAnchorMap: v, mergeSkipSet: y, cfContext: T, cs: ee, dpr: ie } = t, ae = a.length, j = o.length, oe = [], M = -s;
1503
+ for (let e = 0; e < ae; e++) oe.push(M), M += a[e];
1504
+ let N = [], P = -c;
1505
+ for (let e = 0; e < j; e++) N.push(P), P += o[e];
1506
1506
  e.save(), e.beginPath(), e.rect(d, f, p, m), e.clip();
1507
- let I = [];
1507
+ let F = [];
1508
1508
  for (let i of t.worksheet.mergeCells ?? []) {
1509
1509
  let a = i.top, o = i.left;
1510
- if (a >= n && a < n + M && o >= r && o < r + j || i.bottom < n || i.top >= n + M || i.right < r || i.left >= r + j) continue;
1510
+ if (a >= n && a < n + j && o >= r && o < r + ae || i.bottom < n || i.top >= n + j || i.right < r || i.left >= r + ae) continue;
1511
1511
  let d = t.mergeAnchorMap.get(`${a}:${o}`);
1512
1512
  if (!d) continue;
1513
1513
  let f;
1514
- if (o >= r) f = l + ae[o - r];
1514
+ if (o >= r) f = l + oe[o - r];
1515
1515
  else {
1516
1516
  let e = 0;
1517
1517
  for (let n = o; n < r; n++) e += Math.round(b(t.worksheet.colWidths[n] ?? t.worksheet.defaultColWidth, t.mdw) * ee);
1518
1518
  f = l - s - e;
1519
1519
  }
1520
1520
  let p;
1521
- if (a >= n) p = u + P[a - n];
1521
+ if (a >= n) p = u + N[a - n];
1522
1522
  else {
1523
1523
  let e = 0;
1524
1524
  for (let r = a; r < n; r++) e += Math.round(x(t.worksheet.rowHeights[r] ?? t.worksheet.defaultRowHeight) * ee);
@@ -1532,95 +1532,101 @@ function pt(e, t, n, r, a, o, s, c, l, u, d, f, p, m) {
1532
1532
  if (Ct(e, St(xt(D, a, o, d.right, d.bottom, t.cellMap, g), k.border), f, p, m, _), !y) continue;
1533
1533
  let ie = A(y, g, k.numFmt);
1534
1534
  if (!ie || ie === "0" && t.worksheet.showZeros === !1) continue;
1535
- let N = w.bold || !!k.fontBold, F = w.italic || !!k.fontItalic, I = w.underline || !!k.fontUnderline, L = w.strike || !!k.fontStrike;
1536
- e.font = te(N !== w.bold || F !== w.italic || I !== w.underline || L !== w.strike ? {
1535
+ let M = w.bold || !!k.fontBold, P = w.italic || !!k.fontItalic, F = w.underline || !!k.fontUnderline, I = w.strike || !!k.fontStrike;
1536
+ e.font = te(M !== w.bold || P !== w.italic || F !== w.underline || I !== w.strike ? {
1537
1537
  ...w,
1538
- bold: N,
1539
- italic: F,
1540
- underline: I,
1541
- strike: L
1538
+ bold: M,
1539
+ italic: P,
1540
+ underline: F,
1541
+ strike: I
1542
1542
  } : w, ee);
1543
- let R = t.hyperlinkMap.get(v) ? "#0563C1" : k.fontColor ?? w.color;
1544
- e.fillStyle = R ? S(R) : "#000000";
1545
- let z = y.value.type === "number", oe = O.alignH ?? (z ? "right" : "left"), se = O.alignV ?? "bottom", B = O.indent ? Math.round(O.indent * w.size * h * .5) : 0, V = 3 + (oe === "left" || !O.alignH ? B : 0);
1543
+ let L = t.hyperlinkMap.get(v) ? "#0563C1" : k.fontColor ?? w.color;
1544
+ e.fillStyle = L ? S(L) : "#000000";
1545
+ let R = y.value.type === "number", se = O.alignH ?? (R ? "right" : "left"), ce = O.alignV ?? "bottom", z = O.indent ? Math.round(O.indent * w.size * h * .5) : 0, B = 3 + (se === "left" || !O.alignH ? z : 0);
1546
1546
  e.save(), e.beginPath(), e.rect(f, p, m, _), e.clip();
1547
+ let V;
1548
+ se === "right" ? (V = f + m - 3, e.textAlign = "right") : se === "center" ? (V = f + m / 2, e.textAlign = "center") : (V = f + B, e.textAlign = "left");
1547
1549
  let H;
1548
- oe === "right" ? (H = f + m - 3, e.textAlign = "right") : oe === "center" ? (H = f + m / 2, e.textAlign = "center") : (H = f + V, e.textAlign = "left");
1549
- let U;
1550
- se === "top" ? (e.textBaseline = "top", U = p + 2) : se === "center" ? (e.textBaseline = "middle", U = p + _ / 2) : (e.textBaseline = "bottom", U = p + _ - 2), e.fillText(ie, H, U), e.restore();
1550
+ ce === "top" ? (e.textBaseline = "top", H = p + 2) : ce === "center" ? (e.textBaseline = "middle", H = p + _ / 2) : (e.textBaseline = "bottom", H = p + _ - 2), e.fillText(ie, V, H), e.restore();
1551
1551
  }
1552
- for (let s = 0; s < M; s++) {
1553
- let c = n + s, b = u + P[s], x = o[s];
1552
+ for (let s = 0; s < j; s++) {
1553
+ let c = n + s, b = u + N[s], x = o[s];
1554
1554
  if (b + x <= f || b >= f + m) continue;
1555
- let M = /* @__PURE__ */ new Set(), N = /* @__PURE__ */ new Set(), F = -1, L = (e) => {
1556
- if (F >= 0 && e - F >= 2) {
1557
- for (let t = F; t < e - 1; t++) M.add(t);
1558
- for (let t = F + 1; t < e; t++) N.add(t);
1555
+ let j = /* @__PURE__ */ new Set(), M = /* @__PURE__ */ new Set(), P = -1, I = (e) => {
1556
+ if (P >= 0 && e - P >= 2) {
1557
+ for (let t = P; t < e - 1; t++) j.add(t);
1558
+ for (let t = P + 1; t < e; t++) M.add(t);
1559
1559
  }
1560
- F = -1;
1560
+ P = -1;
1561
1561
  };
1562
- for (let e = 0; e <= j; e++) {
1562
+ for (let e = 0; e <= ae; e++) {
1563
1563
  let t = !1, n = !1;
1564
- if (e < j) {
1564
+ if (e < ae) {
1565
1565
  let i = `${c}:${r + e}`;
1566
1566
  if (!y.has(i) && !v.has(i)) {
1567
1567
  let e = _.get(i);
1568
1568
  t = re(g, e?.styleIndex ?? 0).xf.alignH === "centerContinuous", n = !!(e && e.value && e.value.type !== "empty");
1569
1569
  }
1570
1570
  }
1571
- t ? n && F >= 0 && e > F ? (L(e), F = e) : F < 0 && (F = e) : L(e);
1571
+ t ? n && P >= 0 && e > P ? (I(e), P = e) : P < 0 && (P = e) : I(e);
1572
1572
  }
1573
- for (let n = 0; n < j; n++) {
1574
- let o = r + n, u = l + ae[n], f = a[n];
1573
+ for (let n = 0; n < ae; n++) {
1574
+ let o = r + n, u = l + oe[n], f = a[n];
1575
1575
  if (u + f <= d || u >= d + p) continue;
1576
1576
  let m = `${c}:${o}`;
1577
1577
  if (y.has(m)) continue;
1578
- let P = v.get(m), F = P ? P.totalW : f, L = P ? P.totalH : x, R = _.get(m), { font: z, fill: oe, border: se, xf: B } = re(g, R?.styleIndex ?? 0), V = Te(R, c, o, T, g.dxfs ?? []), H = V.fill ?? oe, U = t.tableStyleMap.get(m), ce = U?.wholeTableDxf == null ? void 0 : (g.dxfs ?? [])[U.wholeTableDxf], le = U?.headerRowDxf == null ? void 0 : (g.dxfs ?? [])[U.headerRowDxf];
1579
- if (H.gradient && H.gradient.stops.length > 0) e.fillStyle = D(e, H.gradient, u, b, F, L), e.fillRect(u, b, F, L);
1580
- else if (H.patternType && H.patternType !== "none" && H.fgColor) {
1581
- let t = H.patternType, n = H.bgColor ?? "FFFFFF", r = E(e, t, H.fgColor, n);
1578
+ let N = v.get(m), P = N ? N.totalW : f, I = N ? N.totalH : x, L = _.get(m), { font: R, fill: se, border: ce, xf: z } = re(g, L?.styleIndex ?? 0), B = Te(L, c, o, T, g.dxfs ?? []), V = B.fill ?? se, H = t.tableStyleMap.get(m), le = H?.wholeTableDxf == null ? void 0 : (g.dxfs ?? [])[H.wholeTableDxf], ue = H?.headerRowDxf == null ? void 0 : (g.dxfs ?? [])[H.headerRowDxf];
1579
+ if (V.gradient && V.gradient.stops.length > 0) e.fillStyle = D(e, V.gradient, u, b, P, I), e.fillRect(u, b, P, I);
1580
+ else if (V.patternType && V.patternType !== "none" && V.fgColor) {
1581
+ let t = V.patternType, n = V.bgColor ?? "FFFFFF", r = E(e, t, V.fgColor, n);
1582
1582
  if (r) e.fillStyle = r;
1583
1583
  else {
1584
1584
  let r = w(t);
1585
- e.fillStyle = r >= 1 ? S(H.fgColor) : k(H.fgColor, n, r);
1585
+ e.fillStyle = r >= 1 ? S(V.fgColor) : k(V.fgColor, n, r);
1586
1586
  }
1587
- e.fillRect(u, b, F, L);
1588
- } else U && U.isHeader && le?.fill?.fgColor ? (e.fillStyle = S(le.fill.fgColor), e.fillRect(u, b, F, L)) : U && !U.isHeader && !U.isTotals && ce?.fill?.fgColor ? (e.fillStyle = S(ce.fill.fgColor), e.fillRect(u, b, F, L)) : U && U.isBanded && (e.fillStyle = ft(U.accent), e.fillRect(u, b, F, L));
1589
- if (t.commentCells.has(m) && O(e, u, b, F, L), V.dataBar && V.dataBar.ratio > 0) {
1590
- let t = Math.max(0, (F - 4) * V.dataBar.ratio);
1591
- C(e, V.dataBar.color, u + 2, b + 2, t, L - 4, V.dataBar.gradient);
1587
+ e.fillRect(u, b, P, I);
1588
+ } else H && H.isHeader && ue?.fill?.fgColor ? (e.fillStyle = S(ue.fill.fgColor), e.fillRect(u, b, P, I)) : H && !H.isHeader && !H.isTotals && le?.fill?.fgColor ? (e.fillStyle = S(le.fill.fgColor), e.fillRect(u, b, P, I)) : H && H.isBanded && (e.fillStyle = ft(H.accent), e.fillRect(u, b, P, I));
1589
+ if (t.commentCells.has(m) && O(e, u, b, P, I), B.dataBar && B.dataBar.ratio > 0) {
1590
+ let t = Math.max(0, (P - 4) * B.dataBar.ratio);
1591
+ C(e, B.dataBar.color, u + 2, b + 2, t, I - 4, B.dataBar.gradient);
1592
1592
  }
1593
- let de = t.sparklineMap.get(m);
1594
- if (de && i(e, {
1593
+ let fe = t.sparklineMap.get(m);
1594
+ if (fe && i(e, {
1595
1595
  x: u,
1596
1596
  y: b,
1597
- w: F,
1598
- h: L
1599
- }, de), t.worksheet.showGridlines !== !1) {
1597
+ w: P,
1598
+ h: I
1599
+ }, fe), t.worksheet.showGridlines !== !1) {
1600
1600
  let t = .5 / ie;
1601
- e.strokeStyle = "#d0d0d0", e.lineWidth = .5, e.beginPath(), M.has(n) || (e.moveTo(u + F + t, b), e.lineTo(u + F + t, b + L)), e.moveTo(u, b + L + t), e.lineTo(u + F, b + L + t), s === 0 && (e.moveTo(u, b + t), e.lineTo(u + F, b + t)), n === 0 && (e.moveTo(u + t, b), e.lineTo(u + t, b + L)), e.stroke();
1601
+ e.strokeStyle = "#d0d0d0", e.lineWidth = .5, e.beginPath(), j.has(n) || (e.moveTo(u + P + t, b), e.lineTo(u + P + t, b + I)), e.moveTo(u, b + I + t), e.lineTo(u + P, b + I + t), s === 0 && (e.moveTo(u, b + t), e.lineTo(u + P, b + t)), n === 0 && (e.moveTo(u + t, b), e.lineTo(u + t, b + I)), e.stroke();
1602
1602
  }
1603
- let W = St(P ? xt(se, c, o, P.right, P.bottom, _, g) : se, V.border);
1604
- if ((M.has(n) || N.has(n)) && (W = {
1605
- ...W,
1606
- left: N.has(n) ? null : W.left,
1607
- right: M.has(n) ? null : W.right
1608
- }), !W.top?.style) {
1609
- let e = _.get(`${c - 1}:${o}`), t = e ? re(g, e.styleIndex).border.bottom : null;
1610
- t?.style && (W = {
1611
- ...W,
1603
+ let U = St(N ? xt(ce, c, o, N.right, N.bottom, _, g) : ce, B.border);
1604
+ (j.has(n) || M.has(n)) && (U = {
1605
+ ...U,
1606
+ left: M.has(n) ? null : U.left,
1607
+ right: j.has(n) ? null : U.right
1608
+ });
1609
+ let me = _.get(`${c - 1}:${o}`), W = me ? re(g, me.styleIndex).border.bottom : null, he = !1;
1610
+ if (W?.style) {
1611
+ let e = U.top, t = Dt(e, W);
1612
+ U = {
1613
+ ...U,
1612
1614
  top: t
1613
- });
1615
+ }, he = t === W && e !== W;
1614
1616
  }
1615
- if (!W.left?.style && !N.has(n)) {
1617
+ let ge = !1;
1618
+ if (!M.has(n)) {
1616
1619
  let e = _.get(`${c}:${o - 1}`), t = e ? re(g, e.styleIndex).border.right : null;
1617
- t?.style && (W = {
1618
- ...W,
1619
- left: t
1620
- });
1620
+ if (t?.style) {
1621
+ let e = U.left, n = Dt(e, t);
1622
+ U = {
1623
+ ...U,
1624
+ left: n
1625
+ }, ge = n === t && e !== t;
1626
+ }
1621
1627
  }
1622
- if (Ct(e, W, u, b, F, L), U) {
1623
- let t = ce?.border?.horizontal, n = ce?.border?.vertical, r = ce?.border?.top, i = ce?.border?.bottom, a = ce?.border?.left, s = ce?.border?.right, c = le?.border?.bottom, l = le?.border?.top;
1628
+ if (Ct(e, U, u, b, P, I, he, ge), H) {
1629
+ let t = le?.border?.horizontal, n = le?.border?.vertical, r = le?.border?.top, i = le?.border?.bottom, a = le?.border?.left, s = le?.border?.right, c = ue?.border?.bottom, l = ue?.border?.top;
1624
1630
  if (t || n || r || i || a || s || c || l) {
1625
1631
  let n = {
1626
1632
  left: null,
@@ -1628,46 +1634,46 @@ function pt(e, t, n, r, a, o, s, c, l, u, d, f, p, m) {
1628
1634
  top: null,
1629
1635
  bottom: null
1630
1636
  };
1631
- U.isTopEdge ? n.top = r ?? null : t && (n.top = t), U.isHeader && c ? n.bottom = c : U.isBottomEdge ? n.bottom = i ?? null : t && (n.bottom = t), (U.isFirstCol || o === 0) && (n.left = a ?? null), U.isLastCol && (n.right = s ?? null), Ct(e, n, u, b, F, L);
1637
+ H.isTopEdge ? n.top = r ?? null : t && (n.top = t), H.isHeader && c ? n.bottom = c : H.isBottomEdge ? n.bottom = i ?? null : t && (n.bottom = t), (H.isFirstCol || o === 0) && (n.left = a ?? null), H.isLastCol && (n.right = s ?? null), Ct(e, n, u, b, P, I);
1632
1638
  } else {
1633
1639
  let t = .5 / ie;
1634
- e.strokeStyle = U.accent, e.lineWidth = U.isHeader ? 1.5 : 1, e.beginPath(), e.moveTo(u, b + L - t), e.lineTo(u + F, b + L - t), U.isTopEdge && (e.moveTo(u, b + t), e.lineTo(u + F, b + t)), e.stroke();
1640
+ e.strokeStyle = H.accent, e.lineWidth = H.isHeader ? 1.5 : 1, e.beginPath(), e.moveTo(u, b + I - t), e.lineTo(u + P, b + I - t), H.isTopEdge && (e.moveTo(u, b + t), e.lineTo(u + P, b + t)), e.stroke();
1635
1641
  }
1636
1642
  }
1637
- if (t.autoFilterCells.has(m) && lt(e, u, b, f, L), !R) continue;
1638
- let G = A(R, g, V.numFmt);
1639
- !G || G === "0" && t.worksheet.showZeros === !1 || I.push(() => {
1640
- let i = !!(U && (U.isHeader || U.isTotals)), s = z.bold || !!V.fontBold || i, l = z.italic || !!V.fontItalic, d = z.underline || !!V.fontUnderline, f = z.strike || !!V.fontStrike, p = s !== z.bold || l !== z.italic || d !== z.underline || f !== z.strike ? {
1641
- ...z,
1643
+ if (t.autoFilterCells.has(m) && lt(e, u, b, f, I), !L) continue;
1644
+ let G = A(L, g, B.numFmt);
1645
+ !G || G === "0" && t.worksheet.showZeros === !1 || F.push(() => {
1646
+ let i = !!(H && (H.isHeader || H.isTotals)), s = R.bold || !!B.fontBold || i, l = R.italic || !!B.fontItalic, d = R.underline || !!B.fontUnderline, f = R.strike || !!B.fontStrike, p = s !== R.bold || l !== R.italic || d !== R.underline || f !== R.strike ? {
1647
+ ...R,
1642
1648
  bold: s,
1643
1649
  italic: l,
1644
1650
  underline: d,
1645
1651
  strike: f
1646
- } : z;
1652
+ } : R;
1647
1653
  e.font = te(p, ee);
1648
- let x = t.hyperlinkMap.get(m), C = U?.isHeader && le?.font?.color ? le.font.color : U && !U.isHeader && !U.isTotals && ce?.font?.color ? ce.font.color : null, w = x ? "#0563C1" : V.fontColor ?? C ?? z.color;
1654
+ let x = t.hyperlinkMap.get(m), C = H?.isHeader && ue?.font?.color ? ue.font.color : H && !H.isHeader && !H.isTotals && le?.font?.color ? le.font.color : null, w = x ? "#0563C1" : B.fontColor ?? C ?? R.color;
1649
1655
  e.fillStyle = w ? S(w) : "#000000";
1650
- let T = R.value.type === "number", E = B.alignH ?? (T ? "right" : "left"), D = B.alignV ?? "bottom", O = B.indent ? Math.round(B.indent * z.size * h * .5) : 0, k = V.iconSet ? Math.max(8, Math.round(Math.min(F, L) * .55)) : 0, ie = k > 0 ? k + 4 : 0, A = 3 + (E === "left" || !B.alignH ? O : 0) + ie, M = F, ae = u, N = n;
1651
- if (E === "centerContinuous" && !P) for (let e = n + 1; e < j; e++) {
1656
+ let T = L.value.type === "number", E = z.alignH ?? (T ? "right" : "left"), D = z.alignV ?? "bottom", O = z.indent ? Math.round(z.indent * R.size * h * .5) : 0, k = B.iconSet ? Math.max(8, Math.round(Math.min(P, I) * .55)) : 0, ie = k > 0 ? k + 4 : 0, A = 3 + (E === "left" || !z.alignH ? O : 0) + ie, j = P, oe = u, M = n;
1657
+ if (E === "centerContinuous" && !N) for (let e = n + 1; e < ae; e++) {
1652
1658
  let t = `${c}:${r + e}`;
1653
1659
  if (y.has(t) || v.has(t)) break;
1654
1660
  let n = _.get(t);
1655
1661
  if (n && n.value.type !== "empty" || re(g, n?.styleIndex ?? 0).xf.alignH !== "centerContinuous") break;
1656
- M += a[e], N = e;
1662
+ j += a[e], M = e;
1657
1663
  }
1658
- let I = E === "centerContinuous" ? ae : u, oe = E === "centerContinuous" ? M : F, se = G.includes("\n");
1659
- if (!P && !B.wrapText && !B.textRotation && !T && !se) {
1660
- let t = e.measureText(G).width, i = E === "centerContinuous", o = i ? t + 6 : t + A + 3, s = i ? M : F;
1664
+ let F = E === "centerContinuous" ? oe : u, se = E === "centerContinuous" ? j : P, ce = G.includes("\n");
1665
+ if (!N && !z.wrapText && !z.textRotation && !T && !ce) {
1666
+ let t = e.measureText(G).width, i = E === "centerContinuous", o = i ? t + 6 : t + A + 3, s = i ? j : P;
1661
1667
  if (o > s) {
1662
1668
  let e = o - s, t = 0, l = 0;
1663
1669
  if (E === "right" ? l = e : E === "center" || i ? (l = e / 2, t = e / 2) : t = e, t > 0) {
1664
- let e = t, o = i ? N + 1 : n + 1;
1665
- for (let t = o; t < j && e > 0; t++) {
1670
+ let e = t, o = i ? M + 1 : n + 1;
1671
+ for (let t = o; t < ae && e > 0; t++) {
1666
1672
  let n = `${c}:${r + t}`;
1667
1673
  if (y.has(n) || v.has(n)) break;
1668
1674
  let i = _.get(n);
1669
1675
  if (i && i.value.type !== "empty") break;
1670
- oe += a[t], e -= a[t];
1676
+ se += a[t], e -= a[t];
1671
1677
  }
1672
1678
  }
1673
1679
  if (l > 0) {
@@ -1677,64 +1683,64 @@ function pt(e, t, n, r, a, o, s, c, l, u, d, f, p, m) {
1677
1683
  if (y.has(n) || v.has(n)) break;
1678
1684
  let i = _.get(n);
1679
1685
  if (i && i.value.type !== "empty") break;
1680
- I -= a[t], oe += a[t], e -= a[t];
1686
+ F -= a[t], se += a[t], e -= a[t];
1681
1687
  }
1682
1688
  }
1683
1689
  }
1684
1690
  }
1685
- let H = G, de = 0;
1691
+ let V = G, fe = 0;
1686
1692
  if (E === "fill" && !T && G.length > 0) {
1687
- let t = Math.max(1, F - 6), n = e.measureText(G).width;
1693
+ let t = Math.max(1, P - 6), n = e.measureText(G).width;
1688
1694
  if (n > 0 && n < t) {
1689
1695
  let e = Math.max(1, Math.floor(t / n));
1690
- H = G.repeat(e);
1696
+ V = G.repeat(e);
1691
1697
  }
1692
1698
  }
1693
- if (E === "distributed" || E === "justify" && !B.wrapText && !se) {
1694
- let t = Math.max(1, F - 6), n = e.measureText(H).width, r = Math.max(1, [...H].length - 1);
1695
- n < t && (de = Math.max(0, (t - n) / r));
1699
+ if (E === "distributed" || E === "justify" && !z.wrapText && !ce) {
1700
+ let t = Math.max(1, P - 6), n = e.measureText(V).width, r = Math.max(1, [...V].length - 1);
1701
+ n < t && (fe = Math.max(0, (t - n) / r));
1696
1702
  }
1697
- let W, pe;
1698
- E === "right" ? (W = u + F - 3, pe = "right") : E === "center" ? (W = u + F / 2, pe = "center") : E === "centerContinuous" ? (W = ae + M / 2, pe = "center") : E === "distributed" || E === "justify" && !B.wrapText && !se ? (W = u + 3, pe = "left") : (W = u + A, pe = "left");
1699
- let me = B.textRotation ?? 0, he = me === 255, ge = me > 0 && me !== 255;
1700
- if (V.iconSet && k > 0 && (e.save(), e.beginPath(), e.rect(u, b, F, L), e.clip(), ct(e, V.iconSet.name, V.iconSet.index, u + 2, b + (L - k) / 2, k), e.restore()), e.save(), e.beginPath(), e.rect(I, b, oe, L), e.clip(), he) {
1701
- let t = Math.round(z.size * h * 1.1), n = G.length * t, r = D === "top" ? b + 2 : D === "center" ? b + (L - n) / 2 : b + L - n - 2;
1703
+ let U, me;
1704
+ E === "right" ? (U = u + P - 3, me = "right") : E === "center" ? (U = u + P / 2, me = "center") : E === "centerContinuous" ? (U = oe + j / 2, me = "center") : E === "distributed" || E === "justify" && !z.wrapText && !ce ? (U = u + 3, me = "left") : (U = u + A, me = "left");
1705
+ let W = z.textRotation ?? 0, he = W === 255, ge = W > 0 && W !== 255;
1706
+ if (B.iconSet && k > 0 && (e.save(), e.beginPath(), e.rect(u, b, P, I), e.clip(), ct(e, B.iconSet.name, B.iconSet.index, u + 2, b + (I - k) / 2, k), e.restore()), e.save(), e.beginPath(), e.rect(F, b, se, I), e.clip(), he) {
1707
+ let t = Math.round(R.size * h * 1.1), n = G.length * t, r = D === "top" ? b + 2 : D === "center" ? b + (I - n) / 2 : b + I - n - 2;
1702
1708
  e.textAlign = "center", e.textBaseline = "top";
1703
- for (let n of G) e.fillText(n, u + F / 2, r), r += t;
1709
+ for (let n of G) e.fillText(n, u + P / 2, r), r += t;
1704
1710
  e.restore();
1705
1711
  return;
1706
1712
  }
1707
1713
  if (ge) {
1708
- let t = me <= 90 ? -(me * Math.PI / 180) : (me - 90) * Math.PI / 180;
1709
- e.translate(u + F / 2, b + L / 2), e.rotate(t), e.textAlign = "center", e.textBaseline = "middle", e.fillText(G, 0, 0), e.restore();
1714
+ let t = W <= 90 ? -(W * Math.PI / 180) : (W - 90) * Math.PI / 180;
1715
+ e.translate(u + P / 2, b + I / 2), e.rotate(t), e.textAlign = "center", e.textBaseline = "middle", e.fillText(G, 0, 0), e.restore();
1710
1716
  return;
1711
1717
  }
1712
- if (B.shrinkToFit) {
1713
- let t = e.measureText(G).width, n = F - A - 3;
1718
+ if (z.shrinkToFit) {
1719
+ let t = e.measureText(G).width, n = P - A - 3;
1714
1720
  if (t > n && t > 0) {
1715
- let r = n / t, i = E === "right" ? u + F - 3 : E === "center" ? u + F / 2 : u + A;
1721
+ let r = n / t, i = E === "right" ? u + P - 3 : E === "center" ? u + P / 2 : u + A;
1716
1722
  e.transform(r, 0, 0, 1, i * (1 - r), 0);
1717
1723
  }
1718
1724
  }
1719
- if (e.textAlign = pe, de > 0) try {
1720
- e.letterSpacing = `${de}px`;
1725
+ if (e.textAlign = me, fe > 0) try {
1726
+ e.letterSpacing = `${fe}px`;
1721
1727
  } catch {}
1722
- if (B.readingOrder === 2) try {
1728
+ if (z.readingOrder === 2) try {
1723
1729
  e.direction = "rtl";
1724
1730
  } catch {}
1725
- else if (B.readingOrder === 1) try {
1731
+ else if (z.readingOrder === 1) try {
1726
1732
  e.direction = "ltr";
1727
1733
  } catch {}
1728
- let _e = R.value.type === "text" ? R.value.runs : void 0, ve = _e && _e.length > 0;
1729
- if (B.wrapText && ve) {
1730
- let t = fe(e, _e, p, ee, F - A - 3), n = t.reduce((e, t) => e + Math.round(t.maxFontSize * h * 1.2), 0), r;
1731
- r = D === "top" ? b + 2 : D === "center" ? b + (L - n) / 2 : b + L - n - 2, e.textAlign = "left", e.textBaseline = "top";
1734
+ let _e = L.value.type === "text" ? L.value.runs : void 0, ve = _e && _e.length > 0;
1735
+ if (z.wrapText && ve) {
1736
+ let t = pe(e, _e, p, ee, P - A - 3), n = t.reduce((e, t) => e + Math.round(t.maxFontSize * h * 1.2), 0), r;
1737
+ r = D === "top" ? b + 2 : D === "center" ? b + (I - n) / 2 : b + I - n - 2, e.textAlign = "left", e.textBaseline = "top";
1732
1738
  for (let n of t) {
1733
1739
  let t = Math.round(n.maxFontSize * h * 1.2), i = n.segments.reduce((e, t) => e + t.width, 0), a;
1734
- a = E === "right" ? u + F - 3 - i : E === "center" ? u + F / 2 - i / 2 : u + A;
1740
+ a = E === "right" ? u + P - 3 - i : E === "center" ? u + P / 2 - i / 2 : u + A;
1735
1741
  for (let t of n.segments) {
1736
1742
  e.font = te(t.font, ee);
1737
- let n = V.fontColor ?? t.font.color;
1743
+ let n = B.fontColor ?? t.font.color;
1738
1744
  e.fillStyle = n ? S(n) : "#000000", e.fillText(t.text, a, r);
1739
1745
  let i = Math.round(t.font.size * h);
1740
1746
  if (t.font.underline && (e.save(), e.strokeStyle = n ? S(n) : "#000000", e.lineWidth = .5, e.beginPath(), e.moveTo(a, r + i + 1), e.lineTo(a + t.width, r + i + 1), e.stroke(), e.restore()), t.font.strike) {
@@ -1746,70 +1752,70 @@ function pt(e, t, n, r, a, o, s, c, l, u, d, f, p, m) {
1746
1752
  }
1747
1753
  r += t;
1748
1754
  }
1749
- } else if (B.wrapText) {
1750
- let t = ue(e, G, F - A - 3), n = Math.round(z.size * h * 1.2), r = t.length * n, i;
1751
- D === "top" ? (i = b + 2, e.textBaseline = "top") : D === "center" ? (i = b + (L - r) / 2, e.textBaseline = "top") : (i = b + L - r - 2, e.textBaseline = "top");
1752
- for (let r = 0; r < t.length; r++) e.fillText(t[r], W, i + r * n);
1755
+ } else if (z.wrapText) {
1756
+ let t = de(e, G, P - A - 3), n = Math.round(R.size * h * 1.2), r = t.length * n, i;
1757
+ D === "top" ? (i = b + 2, e.textBaseline = "top") : D === "center" ? (i = b + (I - r) / 2, e.textBaseline = "top") : (i = b + I - r - 2, e.textBaseline = "top");
1758
+ for (let r = 0; r < t.length; r++) e.fillText(t[r], U, i + r * n);
1753
1759
  } else if (ve) {
1754
1760
  let t = _e.map((e) => ne(p, e)), n = _e.map((n, r) => (e.font = te(t[r], ee), e.measureText(n.text).width)), r = n.reduce((e, t) => e + t, 0), i;
1755
- i = E === "right" ? u + F - 3 - r : E === "center" ? u + F / 2 - r / 2 : u + A, e.textAlign = "left";
1761
+ i = E === "right" ? u + P - 3 - r : E === "center" ? u + P / 2 - r / 2 : u + A, e.textAlign = "left";
1756
1762
  let a;
1757
- D === "top" ? (e.textBaseline = "top", a = b + 2) : D === "center" ? (e.textBaseline = "middle", a = b + L / 2) : (e.textBaseline = "bottom", a = b + L - 2);
1763
+ D === "top" ? (e.textBaseline = "top", a = b + 2) : D === "center" ? (e.textBaseline = "middle", a = b + I / 2) : (e.textBaseline = "bottom", a = b + I - 2);
1758
1764
  let o = i;
1759
1765
  for (let r = 0; r < _e.length; r++) {
1760
1766
  let i = t[r];
1761
1767
  e.font = te(i, ee);
1762
- let s = V.fontColor ?? i.color;
1768
+ let s = B.fontColor ?? i.color;
1763
1769
  e.fillStyle = s ? S(s) : "#000000", e.fillText(_e[r].text, o, a);
1764
1770
  let c = Math.round(i.size * h);
1765
1771
  if (i.underline) {
1766
- let t = D === "top" ? b + 2 + c + 1 : D === "center" ? b + L / 2 + Math.round(c * .55) : b + L - 2 + 1;
1772
+ let t = D === "top" ? b + 2 + c + 1 : D === "center" ? b + I / 2 + Math.round(c * .55) : b + I - 2 + 1;
1767
1773
  e.save(), e.strokeStyle = s ? S(s) : "#000000", e.lineWidth = .5, e.beginPath(), e.moveTo(o, t), e.lineTo(o + n[r], t), e.stroke(), e.restore();
1768
1774
  }
1769
1775
  if (i.strike) {
1770
- let t = D === "top" ? b + 2 + Math.round(c * .5) : D === "center" ? b + L / 2 : b + L - 2 - Math.round(c * .35);
1776
+ let t = D === "top" ? b + 2 + Math.round(c * .5) : D === "center" ? b + I / 2 : b + I - 2 - Math.round(c * .35);
1771
1777
  e.save(), e.strokeStyle = s ? S(s) : "#000000", e.lineWidth = .5, e.beginPath(), e.moveTo(o, t), e.lineTo(o + n[r], t), e.stroke(), e.restore();
1772
1778
  }
1773
1779
  o += n[r];
1774
1780
  }
1775
1781
  } else {
1776
1782
  let t = null, n = () => t ??= e.measureText(G), r = () => {
1777
- let e = Math.min(n().width, oe - A - 3);
1783
+ let e = Math.min(n().width, se - A - 3);
1778
1784
  return {
1779
- x: E === "right" ? u + F - 3 - e : E === "center" ? u + F / 2 - e / 2 : u + A,
1785
+ x: E === "right" ? u + P - 3 - e : E === "center" ? u + P / 2 - e / 2 : u + A,
1780
1786
  width: e
1781
1787
  };
1782
- }, i = Math.round(z.size * h);
1788
+ }, i = Math.round(R.size * h);
1783
1789
  if (p.underline || x) {
1784
- let { x: t, width: n } = r(), a = D === "top" ? b + 2 + i + 1 : D === "center" ? b + L / 2 + Math.round(i * .55) : b + L - 2 + 1;
1790
+ let { x: t, width: n } = r(), a = D === "top" ? b + 2 + i + 1 : D === "center" ? b + I / 2 + Math.round(i * .55) : b + I - 2 + 1;
1785
1791
  e.save(), e.strokeStyle = x ? "#0563C1" : w ? S(w) : "#000000", e.lineWidth = .5, e.beginPath(), e.moveTo(t, a), e.lineTo(t + n, a), e.stroke(), e.restore();
1786
1792
  }
1787
1793
  if (p.strike) {
1788
- let { x: t, width: n } = r(), a = D === "top" ? b + 2 + Math.round(i * .5) : D === "center" ? b + L / 2 : b + L - 2 - Math.round(i * .35);
1794
+ let { x: t, width: n } = r(), a = D === "top" ? b + 2 + Math.round(i * .5) : D === "center" ? b + I / 2 : b + I - 2 - Math.round(i * .35);
1789
1795
  e.save(), e.strokeStyle = w ? S(w) : "#000000", e.lineWidth = .5, e.beginPath(), e.moveTo(t, a), e.lineTo(t + n, a), e.stroke(), e.restore();
1790
1796
  }
1791
1797
  if (G.includes("\n")) {
1792
- let t = G.split("\n"), n = Math.round(z.size * h * 1.2), r = t.length * n, i;
1793
- D === "top" ? (i = b + 2, e.textBaseline = "top") : D === "center" ? (i = b + (L - r) / 2, e.textBaseline = "top") : (i = b + L - r - 2, e.textBaseline = "top");
1794
- for (let r = 0; r < t.length; r++) e.fillText(t[r], W, i + r * n);
1798
+ let t = G.split("\n"), n = Math.round(R.size * h * 1.2), r = t.length * n, i;
1799
+ D === "top" ? (i = b + 2, e.textBaseline = "top") : D === "center" ? (i = b + (I - r) / 2, e.textBaseline = "top") : (i = b + I - r - 2, e.textBaseline = "top");
1800
+ for (let r = 0; r < t.length; r++) e.fillText(t[r], U, i + r * n);
1795
1801
  } else {
1796
1802
  let t;
1797
- D === "top" ? (e.textBaseline = "top", t = b + 2) : D === "center" ? (e.textBaseline = "middle", t = b + L / 2) : (e.textBaseline = "bottom", t = b + L - 2), e.fillText(H, W, t);
1803
+ D === "top" ? (e.textBaseline = "top", t = b + 2) : D === "center" ? (e.textBaseline = "middle", t = b + I / 2) : (e.textBaseline = "bottom", t = b + I - 2), e.fillText(V, U, t);
1798
1804
  }
1799
1805
  }
1800
1806
  e.restore(), G && t.onTextRun && t.onTextRun({
1801
1807
  text: G,
1802
1808
  x: u,
1803
1809
  y: b,
1804
- width: F,
1805
- height: L,
1810
+ width: P,
1811
+ height: I,
1806
1812
  row: c,
1807
1813
  col: o
1808
1814
  });
1809
1815
  });
1810
1816
  }
1811
1817
  }
1812
- for (let e of I) e();
1818
+ for (let e of F) e();
1813
1819
  e.restore();
1814
1820
  }
1815
1821
  function mt(e, t, n, r, i = {}) {
@@ -1839,19 +1845,19 @@ function mt(e, t, n, r, i = {}) {
1839
1845
  });
1840
1846
  for (let t = e.top; t <= e.bottom; t++) for (let n = e.left; n <= e.right; n++) t === e.top && n === e.left || ie.add(`${t}:${n}`);
1841
1847
  }
1842
- let A = ve(t), j = /* @__PURE__ */ new Set();
1848
+ let A = ve(t), ae = /* @__PURE__ */ new Set();
1843
1849
  if (t.autoFilter) {
1844
1850
  let e = t.autoFilter;
1845
- for (let t = e.left; t <= e.right; t++) j.add(`${e.top}:${t}`);
1851
+ for (let t = e.left; t <= e.right; t++) ae.add(`${e.top}:${t}`);
1846
1852
  }
1847
- let M = /* @__PURE__ */ new Map();
1848
- for (let e of t.hyperlinks ?? []) e.url && M.set(`${e.row}:${e.col}`, e.url);
1849
- let ae = /* @__PURE__ */ new Set();
1853
+ let j = /* @__PURE__ */ new Map();
1854
+ for (let e of t.hyperlinks ?? []) e.url && j.set(`${e.row}:${e.col}`, e.url);
1855
+ let oe = /* @__PURE__ */ new Set();
1850
1856
  for (let e of t.commentRefs ?? []) {
1851
1857
  let t = ee(e);
1852
- t && ae.add(`${t.row}:${t.col}`);
1858
+ t && oe.add(`${t.row}:${t.col}`);
1853
1859
  }
1854
- let N = {
1860
+ let M = {
1855
1861
  worksheet: t,
1856
1862
  styles: n,
1857
1863
  cellMap: ne,
@@ -1868,21 +1874,21 @@ function mt(e, t, n, r, i = {}) {
1868
1874
  startCol: m,
1869
1875
  cs: o,
1870
1876
  dpr: a,
1871
- autoFilterCells: j,
1872
- hyperlinkMap: M,
1873
- commentCells: ae,
1877
+ autoFilterCells: ae,
1878
+ hyperlinkMap: j,
1879
+ commentCells: oe,
1874
1880
  tableStyleMap: ut(t),
1875
1881
  sparklineMap: dt(t),
1876
1882
  mdw: s,
1877
1883
  onTextRun: i.onTextRun
1878
- }, P = d, F = f, I = P + D, L = F + O, R = Math.max(0, c - I), z = Math.max(0, l - L);
1879
- C > 0 && w > 0 && pt(e, N, 1, 1, T, E, 0, 0, P, F, P, F, D, O), C > 0 && pt(e, N, 1, m, k, E, v, 0, I, F, I, F, R, O), w > 0 && pt(e, N, p, 1, T, te, 0, S, P, L, P, L, D, z), pt(e, N, p, m, k, te, v, S, I, L, I, L, R, z), t.images && t.images.length > 0 && i.loadedImages && gt(e, t, i.loadedImages, o, p, m, v, S, I, L, R, z), t.shapeGroups && t.shapeGroups.length > 0 && _t(e, t, o, p, m, v, S, I, L, R, z, i.loadedImages), t.charts && t.charts.length > 0 && Ot(e, t, o, p, m, v, S, I, L, R, z), t.slicers && t.slicers.length > 0 && Vt(e, t, o, p, m, v, S, I, L, R, z), ht(e, c, l, p, m, h, _, k, te, v, S, T, E, D, O, d, f, o, a), C > 0 && (e.save(), e.strokeStyle = g, e.lineWidth = .5, e.beginPath(), e.moveTo(d, L + .5), e.lineTo(c, L + .5), e.stroke(), e.restore()), w > 0 && (e.save(), e.strokeStyle = g, e.lineWidth = .5, e.beginPath(), e.moveTo(I + .5, f), e.lineTo(I + .5, l), e.stroke(), e.restore());
1884
+ }, N = d, P = f, F = N + D, I = P + O, L = Math.max(0, c - F), R = Math.max(0, l - I);
1885
+ C > 0 && w > 0 && pt(e, M, 1, 1, T, E, 0, 0, N, P, N, P, D, O), C > 0 && pt(e, M, 1, m, k, E, v, 0, F, P, F, P, L, O), w > 0 && pt(e, M, p, 1, T, te, 0, S, N, I, N, I, D, R), pt(e, M, p, m, k, te, v, S, F, I, F, I, L, R), t.images && t.images.length > 0 && i.loadedImages && gt(e, t, i.loadedImages, o, p, m, v, S, F, I, L, R), t.shapeGroups && t.shapeGroups.length > 0 && _t(e, t, o, p, m, v, S, F, I, L, R, i.loadedImages), t.charts && t.charts.length > 0 && At(e, t, o, p, m, v, S, F, I, L, R), t.slicers && t.slicers.length > 0 && Ut(e, t, o, p, m, v, S, F, I, L, R), ht(e, c, l, p, m, h, _, k, te, v, S, T, E, D, O, d, f, o, a), C > 0 && (e.save(), e.strokeStyle = g, e.lineWidth = .5, e.beginPath(), e.moveTo(d, I + .5), e.lineTo(c, I + .5), e.stroke(), e.restore()), w > 0 && (e.save(), e.strokeStyle = g, e.lineWidth = .5, e.beginPath(), e.moveTo(F + .5, f), e.lineTo(F + .5, l), e.stroke(), e.restore());
1880
1886
  }
1881
1887
  function ht(e, t, n, r, i, a, o, s, c, l, u, d, p, m, h, g, _, v, y) {
1882
1888
  let b = "#f8f9fa", x = "#c8ccd0", S = "#444", C = `${Math.max(1, Math.round(11 * v))}px ${f}`, w = g + m, T = _ + h, E = .5 / y;
1883
1889
  e.fillStyle = b, e.fillRect(0, 0, g, _), e.strokeStyle = x, e.lineWidth = .5, e.beginPath(), e.moveTo(E, 0), e.lineTo(E, _), e.moveTo(0, E), e.lineTo(g, E), e.moveTo(g - E, 0), e.lineTo(g - E, _), e.moveTo(0, _ - E), e.lineTo(g, _ - E), e.stroke(), e.font = C, e.fillStyle = S;
1884
1890
  let D = (t, n, r) => {
1885
- e.fillStyle = b, e.fillRect(n, 0, r, _), e.strokeStyle = x, e.lineWidth = .5, e.beginPath(), e.moveTo(n + r - E, 0), e.lineTo(n + r - E, _), e.moveTo(n, _ - E), e.lineTo(n + r, _ - E), e.moveTo(n, E), e.lineTo(n + r, E), e.stroke(), e.fillStyle = S, e.textAlign = "center", e.textBaseline = "middle", e.fillText(G(t), n + r / 2, _ / 2);
1891
+ e.fillStyle = b, e.fillRect(n, 0, r, _), e.strokeStyle = x, e.lineWidth = .5, e.beginPath(), e.moveTo(n + r - E, 0), e.lineTo(n + r - E, _), e.moveTo(n, _ - E), e.lineTo(n + r, _ - E), e.moveTo(n, E), e.lineTo(n + r, E), e.stroke(), e.fillStyle = S, e.textAlign = "center", e.textBaseline = "middle", e.fillText(me(t), n + r / 2, _ / 2);
1886
1892
  }, ee = (t, n, r) => {
1887
1893
  e.fillStyle = b, e.fillRect(0, n, g, r), e.strokeStyle = x, e.lineWidth = .5, e.beginPath(), e.moveTo(g - E, n), e.lineTo(g - E, n + r), e.moveTo(0, n + r - E), e.lineTo(g, n + r - E), e.moveTo(E, n), e.lineTo(E, n + r), e.stroke(), e.fillStyle = S, e.textAlign = "right", e.textBaseline = "middle", e.fillText(String(t), g - Math.max(2, Math.round(4 * v)), n + r / 2);
1888
1894
  };
@@ -2115,8 +2121,8 @@ function St(e, t) {
2115
2121
  diagonalDown: n(e.diagonalDown, t.diagonalDown)
2116
2122
  };
2117
2123
  }
2118
- function Ct(e, t, n, r, i, a) {
2119
- let o = [
2124
+ function Ct(e, t, n, r, i, a, o = !1, s = !1) {
2125
+ let c = [
2120
2126
  {
2121
2127
  edge: t.top,
2122
2128
  x1: n,
@@ -2166,39 +2172,40 @@ function Ct(e, t, n, r, i, a) {
2166
2172
  kind: "d"
2167
2173
  }
2168
2174
  ];
2169
- for (let { edge: t, x1: s, y1: c, x2: l, y2: u, kind: d } of o) {
2175
+ for (let { edge: t, x1: l, y1: u, x2: d, y2: f, kind: p } of c) {
2170
2176
  if (!t || !t.style || t.style === "none") continue;
2171
- let o = t.color ? S(t.color) : "#000000";
2172
- if (t.style === "double" && d !== "d") {
2173
- if (e.strokeStyle = o, e.lineWidth = 1, e.setLineDash([]), e.beginPath(), d === "h") {
2174
- let t = c === r, o = t ? r - 1 : r + a + 1, s = t ? r + 1 : r + a - 1;
2175
- e.moveTo(n - 1, o), e.lineTo(n + i + 1, o), e.moveTo(n + 1, s), e.lineTo(n + i - 1, s);
2177
+ let c = t.color ? S(t.color) : "#000000";
2178
+ if (t.style === "double" && p !== "d") {
2179
+ if (e.strokeStyle = c, e.lineWidth = 1, e.setLineDash([]), e.beginPath(), p === "h") {
2180
+ let t = u === r, s = t && o, c = t ? s ? r + 1 : r - 1 : r + a + 1, l = t ? s ? r - 1 : r + 1 : r + a - 1;
2181
+ e.moveTo(n - 1, c), e.lineTo(n + i + 1, c), e.moveTo(n + 1, l), e.lineTo(n + i - 1, l);
2176
2182
  } else {
2177
- let t = s === n, o = t ? n - 1 : n + i + 1, c = t ? n + 1 : n + i - 1;
2178
- e.moveTo(o, r - 1), e.lineTo(o, r + a + 1), e.moveTo(c, r + 1), e.lineTo(c, r + a - 1);
2183
+ let t = l === n, o = t && s, c = t ? o ? n + 1 : n - 1 : n + i + 1, u = t ? o ? n - 1 : n + 1 : n + i - 1;
2184
+ e.moveTo(c, r - 1), e.lineTo(c, r + a + 1), e.moveTo(u, r + 1), e.lineTo(u, r + a - 1);
2179
2185
  }
2180
2186
  e.stroke();
2181
2187
  continue;
2182
2188
  }
2183
- e.beginPath(), e.strokeStyle = o, e.lineWidth = wt(t.style);
2184
- let f = Tt(t.style);
2185
- e.setLineDash(f), e.moveTo(s, c), e.lineTo(l, u), e.stroke(), e.setLineDash([]);
2189
+ e.beginPath(), e.strokeStyle = c, e.lineWidth = wt(t.style);
2190
+ let m = Tt(t.style);
2191
+ e.setLineDash(m), e.moveTo(l, u), e.lineTo(d, f), e.stroke(), e.setLineDash([]);
2186
2192
  }
2187
2193
  }
2188
2194
  function wt(e) {
2189
2195
  switch (e) {
2190
- case "thick": return 2;
2196
+ case "thick": return 3;
2191
2197
  case "medium":
2192
2198
  case "mediumDashed":
2193
2199
  case "mediumDashDot":
2194
2200
  case "mediumDashDotDot":
2195
- case "slantDashDot": return 1.5;
2201
+ case "slantDashDot": return 2;
2196
2202
  case "hair": return .5;
2197
2203
  default: return 1;
2198
2204
  }
2199
2205
  }
2200
2206
  function Tt(e) {
2201
2207
  switch (e) {
2208
+ case "hair": return [1, 1];
2202
2209
  case "dashed":
2203
2210
  case "mediumDashed": return [4, 3];
2204
2211
  case "dotted": return [2, 2];
@@ -2228,6 +2235,28 @@ function Tt(e) {
2228
2235
  }
2229
2236
  }
2230
2237
  function Et(e) {
2238
+ switch (e) {
2239
+ case "double": return 13;
2240
+ case "thick": return 12;
2241
+ case "medium": return 11;
2242
+ case "mediumDashed": return 10;
2243
+ case "mediumDashDot": return 9;
2244
+ case "slantDashDot": return 8;
2245
+ case "mediumDashDotDot": return 7;
2246
+ case "thin": return 6;
2247
+ case "dashed": return 5;
2248
+ case "dashDot": return 4;
2249
+ case "dashDotDot": return 3;
2250
+ case "dotted": return 2;
2251
+ case "hair": return 1;
2252
+ default: return 0;
2253
+ }
2254
+ }
2255
+ function Dt(e, t) {
2256
+ let n = Et(e?.style), r = Et(t?.style);
2257
+ return n === 0 && r === 0 ? null : n >= r ? e ?? null : t ?? null;
2258
+ }
2259
+ function Ot(e) {
2231
2260
  let t = e.chartType, n = e.grouping;
2232
2261
  if (t === "bar") {
2233
2262
  let t = e.barDir === "bar";
@@ -2235,9 +2264,9 @@ function Et(e) {
2235
2264
  }
2236
2265
  return t === "line" ? n === "stacked" ? "stackedLine" : n === "percentStacked" ? "stackedLinePct" : "line" : t === "area" ? n === "stacked" ? "stackedArea" : n === "percentStacked" ? "stackedAreaPct" : "area" : t;
2237
2266
  }
2238
- function Dt(e) {
2267
+ function kt(e) {
2239
2268
  return {
2240
- chartType: Et(e),
2269
+ chartType: Ot(e),
2241
2270
  title: e.title,
2242
2271
  categories: e.categories,
2243
2272
  catAxisFormatCode: e.catAxisFormatCode ?? null,
@@ -2305,7 +2334,7 @@ function Dt(e) {
2305
2334
  plotAreaManualLayout: e.plotAreaManualLayout ?? null
2306
2335
  };
2307
2336
  }
2308
- function Ot(e, t, n, i, a, o, s, c, l, u, d) {
2337
+ function At(e, t, n, i, a, o, s, c, l, u, d) {
2309
2338
  if (u <= 0 || d <= 0) return;
2310
2339
  let f = Q(t, a, n), p = $(t, i, n);
2311
2340
  for (let i of t.charts) {
@@ -2315,7 +2344,7 @@ function Ot(e, t, n, i, a, o, s, c, l, u, d) {
2315
2344
  if (C + x < c || C > c + u || w + S < l || w > l + d) continue;
2316
2345
  e.save(), e.beginPath(), e.rect(c, l, u, d), e.clip();
2317
2346
  let T = 4 / 3 * n;
2318
- r(e, Dt(i.chart), {
2347
+ r(e, kt(i.chart), {
2319
2348
  x: C,
2320
2349
  y: w,
2321
2350
  w: x,
@@ -2323,8 +2352,8 @@ function Ot(e, t, n, i, a, o, s, c, l, u, d) {
2323
2352
  }, T), e.restore();
2324
2353
  }
2325
2354
  }
2326
- var kt = "600 12px \"Meiryo UI\", \"Segoe UI\", sans-serif", At = "11px \"Meiryo UI\", \"Segoe UI\", sans-serif", jt = "#FFFFFF", Mt = "#BFBFBF", Nt = "#F2F2F2", Pt = "#404040", Ft = "#FFFFFF", It = "#000000", Lt = "#A5A5A5", Rt = "#E7E6E6", zt = "#A6A6A6", Bt = "#C6C6C6";
2327
- function Vt(e, t, n, r, i, a, o, s, c, l, u) {
2355
+ var jt = "600 12px \"Meiryo UI\", \"Segoe UI\", sans-serif", Mt = "11px \"Meiryo UI\", \"Segoe UI\", sans-serif", Nt = "#FFFFFF", Pt = "#BFBFBF", Ft = "#F2F2F2", It = "#404040", Lt = "#FFFFFF", Rt = "#000000", zt = "#A5A5A5", Bt = "#E7E6E6", Vt = "#A6A6A6", Ht = "#C6C6C6";
2356
+ function Ut(e, t, n, r, i, a, o, s, c, l, u) {
2328
2357
  if (l <= 0 || u <= 0) return;
2329
2358
  let d = t.slicers;
2330
2359
  if (!d) return;
@@ -2333,30 +2362,30 @@ function Vt(e, t, n, r, i, a, o, s, c, l, u) {
2333
2362
  let i = r.fromCol + 1, d = r.fromRow + 1, m = r.toCol + 1, h = r.toRow + 1, g = Q(t, i, n) + r.fromColOff * n / Z, _ = $(t, d, n) + r.fromRowOff * n / Z, v = Q(t, m, n) + r.toColOff * n / Z, y = $(t, h, n) + r.toRowOff * n / Z, b = v - g, x = y - _;
2334
2363
  if (b <= 0 || x <= 0) continue;
2335
2364
  let S = s + (g - f) - a, C = c + (_ - p) - o;
2336
- S + b < s || S > s + l || C + x < c || C > c + u || (e.save(), e.beginPath(), e.rect(s, c, l, u), e.clip(), Ht(e, r.caption, r.items, S, C, b, x, n), e.restore());
2365
+ S + b < s || S > s + l || C + x < c || C > c + u || (e.save(), e.beginPath(), e.rect(s, c, l, u), e.clip(), Wt(e, r.caption, r.items, S, C, b, x, n), e.restore());
2337
2366
  }
2338
2367
  }
2339
- function Ht(e, t, n, r, i, a, o, s) {
2340
- e.fillStyle = jt, e.fillRect(r, i, a, o), e.strokeStyle = Mt, e.lineWidth = 1, e.strokeRect(r + .5, i + .5, a - 1, o - 1);
2368
+ function Wt(e, t, n, r, i, a, o, s) {
2369
+ e.fillStyle = Nt, e.fillRect(r, i, a, o), e.strokeStyle = Pt, e.lineWidth = 1, e.strokeRect(r + .5, i + .5, a - 1, o - 1);
2341
2370
  let c = Math.max(20 * s, 14);
2342
- e.fillStyle = Nt, e.fillRect(r + 1, i + 1, a - 2, c), e.fillStyle = Pt, e.font = Ut(kt, s), e.textBaseline = "middle", e.textAlign = "left";
2371
+ e.fillStyle = Ft, e.fillRect(r + 1, i + 1, a - 2, c), e.fillStyle = It, e.font = Gt(jt, s), e.textBaseline = "middle", e.textAlign = "left";
2343
2372
  let l = 6 * s;
2344
- if (Wt(e, t, r + l, i + c / 2 + 1, a - 2 * l), n.length === 0) return;
2373
+ if (Kt(e, t, r + l, i + c / 2 + 1, a - 2 * l), n.length === 0) return;
2345
2374
  let u = Math.max(1, Math.round(2 * s)), d = 4 * s, f = r + d, p = i + c + d, m = a - 2 * d, h = o - c - 2 * d;
2346
2375
  if (m <= 0 || h <= 0) return;
2347
2376
  let g = Math.max(18 * s, 16), _ = Math.max(1, Math.floor((h + u) / (g + u))), v = Math.min(n.length, _), y = Math.min(g, (h - u * (v - 1)) / v);
2348
2377
  if (y <= 0) return;
2349
- e.font = Ut(At, s);
2378
+ e.font = Gt(Mt, s);
2350
2379
  let b = 8 * s;
2351
2380
  for (let t = 0; t < v; t++) {
2352
2381
  let r = n[t], i = p + t * (y + u), a = r.selected;
2353
- e.fillStyle = a ? Ft : Rt, e.fillRect(f, i, m, y), e.strokeStyle = a ? Lt : Bt, e.lineWidth = 1, e.strokeRect(f + .5, i + .5, m - 1, y - 1), e.fillStyle = a ? It : zt, Wt(e, r.name, f + b, i + y / 2 + 1, m - 2 * b);
2382
+ e.fillStyle = a ? Lt : Bt, e.fillRect(f, i, m, y), e.strokeStyle = a ? zt : Ht, e.lineWidth = 1, e.strokeRect(f + .5, i + .5, m - 1, y - 1), e.fillStyle = a ? Rt : Vt, Kt(e, r.name, f + b, i + y / 2 + 1, m - 2 * b);
2354
2383
  }
2355
2384
  }
2356
- function Ut(e, t) {
2385
+ function Gt(e, t) {
2357
2386
  return e.replace(/(\d+(?:\.\d+)?)px/, (e, n) => `${Math.round(Number(n) * t)}px`);
2358
2387
  }
2359
- function Wt(e, t, n, r, i) {
2388
+ function Kt(e, t, n, r, i) {
2360
2389
  if (i <= 0) return;
2361
2390
  let a = t;
2362
2391
  if (e.measureText(a).width > i) {
@@ -2367,7 +2396,7 @@ function Wt(e, t, n, r, i) {
2367
2396
  }
2368
2397
  //#endregion
2369
2398
  //#region packages/xlsx/src/workbook.ts
2370
- var Gt = {
2399
+ var qt = {
2371
2400
  calibri: {
2372
2401
  url: "https://fonts.googleapis.com/css2?family=Carlito:ital,wght@0,400;0,700;1,400;1,700&display=swap",
2373
2402
  loadFamily: "Carlito"
@@ -2376,7 +2405,7 @@ var Gt = {
2376
2405
  url: "https://fonts.googleapis.com/css2?family=Caladea:ital,wght@0,400;0,700;1,400;1,700&display=swap",
2377
2406
  loadFamily: "Caladea"
2378
2407
  }
2379
- }, Kt = class {
2408
+ }, Jt = class {
2380
2409
  worker;
2381
2410
  parsedWorkbook = null;
2382
2411
  sheetCache = /* @__PURE__ */ new Map();
@@ -2398,7 +2427,7 @@ var Gt = {
2398
2427
  }), n.useGoogleFonts) {
2399
2428
  let t = /* @__PURE__ */ new Set();
2400
2429
  for (let e of this.parsedWorkbook.styles?.fonts ?? []) e.name && t.add(e.name);
2401
- await e(t, Gt);
2430
+ await e(t, qt);
2402
2431
  }
2403
2432
  }
2404
2433
  get sheetNames() {
@@ -2451,7 +2480,7 @@ var Gt = {
2451
2480
  this.worker.addEventListener("message", r), this.worker.postMessage(e);
2452
2481
  });
2453
2482
  }
2454
- }, qt = 30, Jt = class {
2483
+ }, Yt = 30, Xt = class {
2455
2484
  wb;
2456
2485
  canvas;
2457
2486
  canvasArea;
@@ -2471,9 +2500,9 @@ var Gt = {
2471
2500
  keydownHandler = null;
2472
2501
  pendingTap = null;
2473
2502
  constructor(e, t = {}) {
2474
- this.opts = t, this.wb = new Kt();
2503
+ this.opts = t, this.wb = new Jt();
2475
2504
  let n = document.createElement("div");
2476
- n.style.cssText = "position:relative;width:100%;height:100%;border:1px solid #c8ccd0;background:#fff;box-sizing:border-box;font-family:sans-serif;display:flex;flex-direction:column;", this.canvasArea = document.createElement("div"), this.canvasArea.style.cssText = "position:relative;flex:1;min-height:0;overflow:hidden;", this.canvas = document.createElement("canvas"), this.canvas.style.cssText = "position:absolute;top:0;left:0;z-index:0;display:block;", this.selectionOverlay = document.createElement("div"), this.selectionOverlay.style.cssText = "position:absolute;top:0;left:0;z-index:1;pointer-events:none;overflow:hidden;width:100%;height:100%;", this.scrollHost = document.createElement("div"), this.scrollHost.style.cssText = "position:absolute;inset:0;overflow:auto;z-index:2;background:transparent;", this.spacer = document.createElement("div"), this.spacer.style.cssText = "position:absolute;top:0;left:0;pointer-events:none;", this.scrollHost.appendChild(this.spacer), this.canvasArea.appendChild(this.canvas), this.canvasArea.appendChild(this.selectionOverlay), this.canvasArea.appendChild(this.scrollHost), this.tabBar = document.createElement("div"), this.tabBar.style.cssText = `display:flex;align-items:flex-end;height:${qt}px;flex-shrink:0;background:#f0f0f0;border-top:1px solid #c8ccd0;overflow-x:auto;overflow-y:hidden;padding:0 4px;gap:1px;scrollbar-width:none;`;
2505
+ n.style.cssText = "position:relative;width:100%;height:100%;border:1px solid #c8ccd0;background:#fff;box-sizing:border-box;font-family:sans-serif;display:flex;flex-direction:column;", this.canvasArea = document.createElement("div"), this.canvasArea.style.cssText = "position:relative;flex:1;min-height:0;overflow:hidden;", this.canvas = document.createElement("canvas"), this.canvas.style.cssText = "position:absolute;top:0;left:0;z-index:0;display:block;", this.selectionOverlay = document.createElement("div"), this.selectionOverlay.style.cssText = "position:absolute;top:0;left:0;z-index:1;pointer-events:none;overflow:hidden;width:100%;height:100%;", this.scrollHost = document.createElement("div"), this.scrollHost.style.cssText = "position:absolute;inset:0;overflow:auto;z-index:2;background:transparent;", this.spacer = document.createElement("div"), this.spacer.style.cssText = "position:absolute;top:0;left:0;pointer-events:none;", this.scrollHost.appendChild(this.spacer), this.canvasArea.appendChild(this.canvas), this.canvasArea.appendChild(this.selectionOverlay), this.canvasArea.appendChild(this.scrollHost), this.tabBar = document.createElement("div"), this.tabBar.style.cssText = `display:flex;align-items:flex-end;height:${Yt}px;flex-shrink:0;background:#f0f0f0;border-top:1px solid #c8ccd0;overflow-x:auto;overflow-y:hidden;padding:0 4px;gap:1px;scrollbar-width:none;`;
2477
2506
  let r = document.createElement("style");
2478
2507
  r.textContent = ".xlsx-tab-bar::-webkit-scrollbar{display:none}", document.head.appendChild(r), this.tabBar.classList.add("xlsx-tab-bar"), n.appendChild(this.canvasArea), n.appendChild(this.tabBar), e.appendChild(n), this.scrollHost.addEventListener("scroll", () => {
2479
2508
  this.renderCurrentSheet(), this.updateSelectionOverlay();
@@ -2800,7 +2829,7 @@ var Gt = {
2800
2829
  });
2801
2830
  }
2802
2831
  tabStyle(e) {
2803
- let t = qt - 2, n = qt - 5;
2832
+ let t = Yt - 2, n = Yt - 5;
2804
2833
  return e ? `display:inline-block;padding:0 14px;border:1px solid #c8ccd0;border-bottom:none;border-radius:3px 3px 0 0;cursor:pointer;white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis;outline:none;box-sizing:border-box;height:${t}px;font-size:13px;background:#fff;color:#000;border-bottom:1px solid #fff;font-weight:600;position:relative;top:1px;` : `display:inline-block;padding:0 14px;border:1px solid #c8ccd0;border-bottom:none;border-radius:3px 3px 0 0;cursor:pointer;white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis;outline:none;box-sizing:border-box;height:${n}px;font-size:11px;background:#e0e0e0;color:#555;`;
2805
2834
  }
2806
2835
  updateSpacerSize(e) {
@@ -2881,10 +2910,10 @@ var Gt = {
2881
2910
  destroy() {
2882
2911
  this.resizeObserver?.disconnect(), this.keydownHandler && document.removeEventListener("keydown", this.keydownHandler), this.wb.destroy();
2883
2912
  }
2884
- }, Yt = /* @__PURE__ */ t({
2885
- XlsxViewer: () => Jt,
2886
- XlsxWorkbook: () => Kt,
2913
+ }, Zt = /* @__PURE__ */ t({
2914
+ XlsxViewer: () => Xt,
2915
+ XlsxWorkbook: () => Jt,
2887
2916
  autoResize: () => n
2888
2917
  });
2889
2918
  //#endregion
2890
- export { Jt as n, Kt as r, Yt as t };
2919
+ export { Xt as n, Jt as r, Zt as t };