ooxml-core 0.22.0 → 0.23.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/automation/index.cjs +53 -10
- package/dist/automation/index.mjs +53 -10
- package/dist/pptx/automation/index.cjs +8 -0
- package/dist/pptx/automation/index.d.ts +4 -3
- package/dist/pptx/automation/index.d.ts.map +1 -1
- package/dist/pptx/automation/index.mjs +8 -0
- package/dist/pptx/chunks/{index-ucqKcqvI.d.ts → index-CEyiW7oo.d.ts} +3 -2
- package/dist/pptx/chunks/index-CEyiW7oo.d.ts.map +1 -0
- package/dist/pptx/chunks/{index-D2y7ehZ5.d.ts → index-CvtFF9SI.d.ts} +4 -3
- package/dist/pptx/chunks/index-CvtFF9SI.d.ts.map +1 -0
- package/dist/pptx/chunks/smart-art-CO2jmJFf.d.ts +2908 -0
- package/dist/pptx/chunks/smart-art-CO2jmJFf.d.ts.map +1 -0
- package/dist/pptx/chunks/{text-operations-CR3pUJi-.d.ts → text-operations-DM2_DC-I.d.ts} +263 -3162
- package/dist/pptx/chunks/text-operations-DM2_DC-I.d.ts.map +1 -0
- package/dist/pptx/cli/index.cjs +8 -0
- package/dist/pptx/cli/index.d.ts +1 -1
- package/dist/pptx/cli/index.mjs +8 -0
- package/dist/pptx/converter/index.d.ts +1 -1
- package/dist/pptx/index.cjs +9 -0
- package/dist/pptx/index.d.ts +4 -3
- package/dist/pptx/index.mjs +9 -0
- package/dist/pptx/smartart-layouts/index.cjs +2120 -0
- package/dist/pptx/smartart-layouts/index.d.ts +35 -0
- package/dist/pptx/smartart-layouts/index.d.ts.map +1 -0
- package/dist/pptx/smartart-layouts/index.mjs +2113 -0
- package/dist/xlsx/edit/clipboard-html-parse.d.ts.map +1 -1
- package/dist/xlsx/edit/fill-series.d.ts.map +1 -1
- package/dist/xlsx/index.cjs +53 -10
- package/dist/xlsx/index.mjs +53 -10
- package/dist/xlsx/load/csv.d.ts.map +1 -1
- package/dist/xlsx/load/index.cjs +17 -8
- package/dist/xlsx/load/index.mjs +17 -8
- package/dist/xlsx/numfmt/input-date.d.ts.map +1 -1
- package/dist/xlsx/ui/index.cjs +50 -10
- package/dist/xlsx/ui/index.mjs +50 -10
- package/dist/xlsx/ui/selection.d.ts.map +1 -1
- package/dist/xlsx/write/drawing.d.ts.map +1 -1
- package/package.json +7 -1
- package/dist/pptx/chunks/index-D2y7ehZ5.d.ts.map +0 -1
- package/dist/pptx/chunks/index-ucqKcqvI.d.ts.map +0 -1
- package/dist/pptx/chunks/text-operations-CR3pUJi-.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clipboard-html-parse.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/clipboard-html-parse.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACX,SAAS,EAET,KAAK,EAGL,MAAM,aAAa,CAAC;AAGrB,OAAO,KAAK,EAAiB,cAAc,EAAE,MAAM,YAAY,CAAC;AAuBhE,iFAAiF;AACjF,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS,CAkB7D;AAWD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAOnD;
|
|
1
|
+
{"version":3,"file":"clipboard-html-parse.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/clipboard-html-parse.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACX,SAAS,EAET,KAAK,EAGL,MAAM,aAAa,CAAC;AAGrB,OAAO,KAAK,EAAiB,cAAc,EAAE,MAAM,YAAY,CAAC;AAuBhE,iFAAiF;AACjF,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS,CAkB7D;AAWD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAOnD;AA2ID;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,cAAc,GAAG,SAAS,CAoDxF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fill-series.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/fill-series.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAI7D,6FAA6F;AAC7F,MAAM,MAAM,UAAU,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,CAAC;AAEhF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,EAAE,MAAM,KAAK,UAAU,CAAC;AAIxD,eAAO,MAAM,GAAG,MAAO,MAAM,KAAK,MAAM,KAAG,MAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"fill-series.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/fill-series.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAI7D,6FAA6F;AAC7F,MAAM,MAAM,UAAU,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,CAAC;AAEhF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,EAAE,MAAM,KAAK,UAAU,CAAC;AAIxD,eAAO,MAAM,GAAG,MAAO,MAAM,KAAK,MAAM,KAAG,MAA2B,CAAC;AA0JvE;;;GAGG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,IAAI,GAAG,SAAS,CAAC,EAAE,GAAG,eAAe,CAa5F"}
|
package/dist/xlsx/index.cjs
CHANGED
|
@@ -1804,7 +1804,8 @@ function parseDay(text2) {
|
|
|
1804
1804
|
function parseDateTimeInput(text2, date1904) {
|
|
1805
1805
|
const time = parseTime(text2);
|
|
1806
1806
|
if (time) return { value: time.fraction, numFmt: time.format };
|
|
1807
|
-
const
|
|
1807
|
+
const tail = /(?:\s{1,8}|T)(\d{1,2}:\d{1,2}(?::\d{1,2})?(?:\s{0,8}(?:am|pm|a|p))?)$/i.exec(text2);
|
|
1808
|
+
const split = tail && tail.index > 0 ? [tail[0], text2.slice(0, tail.index), tail[1]] : null;
|
|
1808
1809
|
const dayText = split ? split[1] ?? "" : text2;
|
|
1809
1810
|
const day = parseDay(dayText);
|
|
1810
1811
|
if (!day) return void 0;
|
|
@@ -1849,10 +1850,10 @@ function parseNumberInput(text2) {
|
|
|
1849
1850
|
s = s.slice(lead[0].length);
|
|
1850
1851
|
if (!sign()) return void 0;
|
|
1851
1852
|
} else {
|
|
1852
|
-
const
|
|
1853
|
-
if (
|
|
1854
|
-
currency =
|
|
1855
|
-
s = s.slice(0, -
|
|
1853
|
+
const last = s.slice(-1);
|
|
1854
|
+
if (last === "\u20AC" || last === "\xA3") {
|
|
1855
|
+
currency = last;
|
|
1856
|
+
s = s.slice(0, -1).trimEnd();
|
|
1856
1857
|
}
|
|
1857
1858
|
}
|
|
1858
1859
|
let percent = false;
|
|
@@ -17173,7 +17174,10 @@ function writeDrawing(writer, partName, objects, sourceDrawing) {
|
|
|
17173
17174
|
let nextId = Math.max(
|
|
17174
17175
|
1,
|
|
17175
17176
|
...kept.flatMap(
|
|
17176
|
-
(xml) => [...xml.matchAll(/cNvPr[^>]
|
|
17177
|
+
(xml) => [...xml.matchAll(/cNvPr([^>]*)/g)].flatMap((m) => {
|
|
17178
|
+
const id = /\sid="(\d+)"/.exec(m[1] ?? "");
|
|
17179
|
+
return id ? [Number(id[1])] : [];
|
|
17180
|
+
})
|
|
17177
17181
|
)
|
|
17178
17182
|
) + 1;
|
|
17179
17183
|
let body = "";
|
|
@@ -20511,7 +20515,9 @@ function decodeEntities(text2) {
|
|
|
20511
20515
|
}
|
|
20512
20516
|
function parseAttributes(text2) {
|
|
20513
20517
|
const attrs2 = /* @__PURE__ */ new Map();
|
|
20514
|
-
for (const m of text2.matchAll(
|
|
20518
|
+
for (const m of text2.matchAll(
|
|
20519
|
+
/([\w:-]{1,64})\s{0,16}=\s{0,16}(?:"([^"]*)"|'([^']*)'|([^\s>]+))/g
|
|
20520
|
+
))
|
|
20515
20521
|
attrs2.set((m[1] ?? "").toLowerCase(), decodeEntities(m[2] ?? m[3] ?? m[4] ?? ""));
|
|
20516
20522
|
return attrs2;
|
|
20517
20523
|
}
|
|
@@ -20566,12 +20572,41 @@ function stylePatchFromCss(css, inner2) {
|
|
|
20566
20572
|
if (numFmt) patch.numFmt = decodeNumberFormat(numFmt);
|
|
20567
20573
|
return patch;
|
|
20568
20574
|
}
|
|
20575
|
+
function removeComments(text2) {
|
|
20576
|
+
let out = "";
|
|
20577
|
+
let from = 0;
|
|
20578
|
+
for (; ; ) {
|
|
20579
|
+
const open = text2.indexOf("<!--", from);
|
|
20580
|
+
const close = open < 0 ? -1 : text2.indexOf("-->", open + 4);
|
|
20581
|
+
if (close < 0) return out + text2.slice(from);
|
|
20582
|
+
out += text2.slice(from, open);
|
|
20583
|
+
from = close + 3;
|
|
20584
|
+
}
|
|
20585
|
+
}
|
|
20586
|
+
function removeTags(text2) {
|
|
20587
|
+
let out = "";
|
|
20588
|
+
let i = 0;
|
|
20589
|
+
while (i < text2.length) {
|
|
20590
|
+
const ch = text2[i];
|
|
20591
|
+
if (ch === "<") {
|
|
20592
|
+
let j = i + 1;
|
|
20593
|
+
while (j < text2.length && text2[j] !== "<" && text2[j] !== ">") j++;
|
|
20594
|
+
if (text2[j] === ">") {
|
|
20595
|
+
i = j + 1;
|
|
20596
|
+
continue;
|
|
20597
|
+
}
|
|
20598
|
+
}
|
|
20599
|
+
out += ch;
|
|
20600
|
+
i++;
|
|
20601
|
+
}
|
|
20602
|
+
return out;
|
|
20603
|
+
}
|
|
20569
20604
|
function stripTags(markup) {
|
|
20570
20605
|
let previous;
|
|
20571
20606
|
let text2 = markup;
|
|
20572
20607
|
do {
|
|
20573
20608
|
previous = text2;
|
|
20574
|
-
text2 =
|
|
20609
|
+
text2 = removeTags(removeComments(text2));
|
|
20575
20610
|
} while (text2 !== previous);
|
|
20576
20611
|
return removeAll(text2, ["<!--", "-->"]);
|
|
20577
20612
|
}
|
|
@@ -20766,7 +20801,15 @@ function linearTrend(values2) {
|
|
|
20766
20801
|
const slope = den ? num3 / den : 0;
|
|
20767
20802
|
return (k) => Number((meanY + slope * (k - meanX)).toPrecision(15));
|
|
20768
20803
|
}
|
|
20769
|
-
var
|
|
20804
|
+
var isDigit3 = (ch) => ch !== void 0 && ch >= "0" && ch <= "9";
|
|
20805
|
+
function matchTextNumber(text2) {
|
|
20806
|
+
let end = text2.length;
|
|
20807
|
+
while (end > 0 && !isDigit3(text2[end - 1])) end--;
|
|
20808
|
+
if (end === 0) return null;
|
|
20809
|
+
let start = end;
|
|
20810
|
+
while (start > 0 && isDigit3(text2[start - 1])) start--;
|
|
20811
|
+
return [text2, text2.slice(0, start), text2.slice(start, end), text2.slice(end)];
|
|
20812
|
+
}
|
|
20770
20813
|
var QUARTER = /^(q|qtr|quarter)(\s?)([1-4])$/i;
|
|
20771
20814
|
function textSeries(texts) {
|
|
20772
20815
|
const lists = texts.map(listMatch);
|
|
@@ -20788,7 +20831,7 @@ function textSeries(texts) {
|
|
|
20788
20831
|
const step2 = q1 ? mod(Number(q1[3]) - 1 - start, 4) || 1 : 1;
|
|
20789
20832
|
return (k) => ({ kind: "value", value: `${q0[1]}${q0[2]}${mod(start + step2 * k, 4) + 1}` });
|
|
20790
20833
|
}
|
|
20791
|
-
const parts = texts.map(
|
|
20834
|
+
const parts = texts.map(matchTextNumber);
|
|
20792
20835
|
const p0 = parts[0];
|
|
20793
20836
|
if (!p0 || !parts.every((p) => p && p[1] === p0[1] && p[3] === p0[3])) return void 0;
|
|
20794
20837
|
const numbers3 = parts.map((p) => Number(p?.[2]));
|
package/dist/xlsx/index.mjs
CHANGED
|
@@ -1798,7 +1798,8 @@ function parseDay(text2) {
|
|
|
1798
1798
|
function parseDateTimeInput(text2, date1904) {
|
|
1799
1799
|
const time = parseTime(text2);
|
|
1800
1800
|
if (time) return { value: time.fraction, numFmt: time.format };
|
|
1801
|
-
const
|
|
1801
|
+
const tail = /(?:\s{1,8}|T)(\d{1,2}:\d{1,2}(?::\d{1,2})?(?:\s{0,8}(?:am|pm|a|p))?)$/i.exec(text2);
|
|
1802
|
+
const split = tail && tail.index > 0 ? [tail[0], text2.slice(0, tail.index), tail[1]] : null;
|
|
1802
1803
|
const dayText = split ? split[1] ?? "" : text2;
|
|
1803
1804
|
const day = parseDay(dayText);
|
|
1804
1805
|
if (!day) return void 0;
|
|
@@ -1843,10 +1844,10 @@ function parseNumberInput(text2) {
|
|
|
1843
1844
|
s = s.slice(lead[0].length);
|
|
1844
1845
|
if (!sign()) return void 0;
|
|
1845
1846
|
} else {
|
|
1846
|
-
const
|
|
1847
|
-
if (
|
|
1848
|
-
currency =
|
|
1849
|
-
s = s.slice(0, -
|
|
1847
|
+
const last = s.slice(-1);
|
|
1848
|
+
if (last === "\u20AC" || last === "\xA3") {
|
|
1849
|
+
currency = last;
|
|
1850
|
+
s = s.slice(0, -1).trimEnd();
|
|
1850
1851
|
}
|
|
1851
1852
|
}
|
|
1852
1853
|
let percent = false;
|
|
@@ -17167,7 +17168,10 @@ function writeDrawing(writer, partName, objects, sourceDrawing) {
|
|
|
17167
17168
|
let nextId = Math.max(
|
|
17168
17169
|
1,
|
|
17169
17170
|
...kept.flatMap(
|
|
17170
|
-
(xml) => [...xml.matchAll(/cNvPr[^>]
|
|
17171
|
+
(xml) => [...xml.matchAll(/cNvPr([^>]*)/g)].flatMap((m) => {
|
|
17172
|
+
const id = /\sid="(\d+)"/.exec(m[1] ?? "");
|
|
17173
|
+
return id ? [Number(id[1])] : [];
|
|
17174
|
+
})
|
|
17171
17175
|
)
|
|
17172
17176
|
) + 1;
|
|
17173
17177
|
let body = "";
|
|
@@ -20505,7 +20509,9 @@ function decodeEntities(text2) {
|
|
|
20505
20509
|
}
|
|
20506
20510
|
function parseAttributes(text2) {
|
|
20507
20511
|
const attrs2 = /* @__PURE__ */ new Map();
|
|
20508
|
-
for (const m of text2.matchAll(
|
|
20512
|
+
for (const m of text2.matchAll(
|
|
20513
|
+
/([\w:-]{1,64})\s{0,16}=\s{0,16}(?:"([^"]*)"|'([^']*)'|([^\s>]+))/g
|
|
20514
|
+
))
|
|
20509
20515
|
attrs2.set((m[1] ?? "").toLowerCase(), decodeEntities(m[2] ?? m[3] ?? m[4] ?? ""));
|
|
20510
20516
|
return attrs2;
|
|
20511
20517
|
}
|
|
@@ -20560,12 +20566,41 @@ function stylePatchFromCss(css, inner2) {
|
|
|
20560
20566
|
if (numFmt) patch.numFmt = decodeNumberFormat(numFmt);
|
|
20561
20567
|
return patch;
|
|
20562
20568
|
}
|
|
20569
|
+
function removeComments(text2) {
|
|
20570
|
+
let out = "";
|
|
20571
|
+
let from = 0;
|
|
20572
|
+
for (; ; ) {
|
|
20573
|
+
const open = text2.indexOf("<!--", from);
|
|
20574
|
+
const close = open < 0 ? -1 : text2.indexOf("-->", open + 4);
|
|
20575
|
+
if (close < 0) return out + text2.slice(from);
|
|
20576
|
+
out += text2.slice(from, open);
|
|
20577
|
+
from = close + 3;
|
|
20578
|
+
}
|
|
20579
|
+
}
|
|
20580
|
+
function removeTags(text2) {
|
|
20581
|
+
let out = "";
|
|
20582
|
+
let i = 0;
|
|
20583
|
+
while (i < text2.length) {
|
|
20584
|
+
const ch = text2[i];
|
|
20585
|
+
if (ch === "<") {
|
|
20586
|
+
let j = i + 1;
|
|
20587
|
+
while (j < text2.length && text2[j] !== "<" && text2[j] !== ">") j++;
|
|
20588
|
+
if (text2[j] === ">") {
|
|
20589
|
+
i = j + 1;
|
|
20590
|
+
continue;
|
|
20591
|
+
}
|
|
20592
|
+
}
|
|
20593
|
+
out += ch;
|
|
20594
|
+
i++;
|
|
20595
|
+
}
|
|
20596
|
+
return out;
|
|
20597
|
+
}
|
|
20563
20598
|
function stripTags(markup) {
|
|
20564
20599
|
let previous;
|
|
20565
20600
|
let text2 = markup;
|
|
20566
20601
|
do {
|
|
20567
20602
|
previous = text2;
|
|
20568
|
-
text2 =
|
|
20603
|
+
text2 = removeTags(removeComments(text2));
|
|
20569
20604
|
} while (text2 !== previous);
|
|
20570
20605
|
return removeAll(text2, ["<!--", "-->"]);
|
|
20571
20606
|
}
|
|
@@ -20760,7 +20795,15 @@ function linearTrend(values2) {
|
|
|
20760
20795
|
const slope = den ? num3 / den : 0;
|
|
20761
20796
|
return (k) => Number((meanY + slope * (k - meanX)).toPrecision(15));
|
|
20762
20797
|
}
|
|
20763
|
-
var
|
|
20798
|
+
var isDigit3 = (ch) => ch !== void 0 && ch >= "0" && ch <= "9";
|
|
20799
|
+
function matchTextNumber(text2) {
|
|
20800
|
+
let end = text2.length;
|
|
20801
|
+
while (end > 0 && !isDigit3(text2[end - 1])) end--;
|
|
20802
|
+
if (end === 0) return null;
|
|
20803
|
+
let start = end;
|
|
20804
|
+
while (start > 0 && isDigit3(text2[start - 1])) start--;
|
|
20805
|
+
return [text2, text2.slice(0, start), text2.slice(start, end), text2.slice(end)];
|
|
20806
|
+
}
|
|
20764
20807
|
var QUARTER = /^(q|qtr|quarter)(\s?)([1-4])$/i;
|
|
20765
20808
|
function textSeries(texts) {
|
|
20766
20809
|
const lists = texts.map(listMatch);
|
|
@@ -20782,7 +20825,7 @@ function textSeries(texts) {
|
|
|
20782
20825
|
const step2 = q1 ? mod(Number(q1[3]) - 1 - start, 4) || 1 : 1;
|
|
20783
20826
|
return (k) => ({ kind: "value", value: `${q0[1]}${q0[2]}${mod(start + step2 * k, 4) + 1}` });
|
|
20784
20827
|
}
|
|
20785
|
-
const parts = texts.map(
|
|
20828
|
+
const parts = texts.map(matchTextNumber);
|
|
20786
20829
|
const p0 = parts[0];
|
|
20787
20830
|
if (!p0 || !parts.every((p) => p && p[1] === p0[1] && p[3] === p0[3])) return void 0;
|
|
20788
20831
|
const numbers3 = parts.map((p) => Number(p?.[2]));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"csv.d.ts","sourceRoot":"","sources":["../../../xlsx/load/csv.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,aAAa,CAAC;AAKlD,MAAM,WAAW,UAAU;IAC1B,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAyBD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAepD;AAKD,4FAA4F;AAC5F,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,UAAe,GAAG,MAAM,EAAE,EAAE,CA4C5E;AAKD,8EAA8E;AAC9E,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"csv.d.ts","sourceRoot":"","sources":["../../../xlsx/load/csv.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,aAAa,CAAC;AAKlD,MAAM,WAAW,UAAU;IAC1B,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAyBD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAepD;AAKD,4FAA4F;AAC5F,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,UAAe,GAAG,MAAM,EAAE,EAAE,CA4C5E;AAKD,8EAA8E;AAC9E,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAU1E;AAED,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IACrD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,QAAQ,CAmCtF;AAKD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,MAAM,WAAW,eAAgB,SAAQ,UAAU;IAClD;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CACzB;AAMD;;;;GAIG;AACH,wBAAgB,UAAU,CACzB,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,eAAoB,GAC3B,MAAM,CAwBR"}
|
package/dist/xlsx/load/index.cjs
CHANGED
|
@@ -6823,7 +6823,10 @@ function writeDrawing(writer, partName, objects, sourceDrawing) {
|
|
|
6823
6823
|
let nextId = Math.max(
|
|
6824
6824
|
1,
|
|
6825
6825
|
...kept.flatMap(
|
|
6826
|
-
(xml) => [...xml.matchAll(/cNvPr[^>]
|
|
6826
|
+
(xml) => [...xml.matchAll(/cNvPr([^>]*)/g)].flatMap((m) => {
|
|
6827
|
+
const id = /\sid="(\d+)"/.exec(m[1] ?? "");
|
|
6828
|
+
return id ? [Number(id[1])] : [];
|
|
6829
|
+
})
|
|
6827
6830
|
)
|
|
6828
6831
|
) + 1;
|
|
6829
6832
|
let body = "";
|
|
@@ -7806,7 +7809,8 @@ function parseDay(text) {
|
|
|
7806
7809
|
function parseDateTimeInput(text, date1904) {
|
|
7807
7810
|
const time = parseTime(text);
|
|
7808
7811
|
if (time) return { value: time.fraction, numFmt: time.format };
|
|
7809
|
-
const
|
|
7812
|
+
const tail = /(?:\s{1,8}|T)(\d{1,2}:\d{1,2}(?::\d{1,2})?(?:\s{0,8}(?:am|pm|a|p))?)$/i.exec(text);
|
|
7813
|
+
const split = tail && tail.index > 0 ? [tail[0], text.slice(0, tail.index), tail[1]] : null;
|
|
7810
7814
|
const dayText = split ? split[1] ?? "" : text;
|
|
7811
7815
|
const day = parseDay(dayText);
|
|
7812
7816
|
if (!day) return void 0;
|
|
@@ -7851,10 +7855,10 @@ function parseNumberInput(text) {
|
|
|
7851
7855
|
s = s.slice(lead[0].length);
|
|
7852
7856
|
if (!sign()) return void 0;
|
|
7853
7857
|
} else {
|
|
7854
|
-
const
|
|
7855
|
-
if (
|
|
7856
|
-
currency =
|
|
7857
|
-
s = s.slice(0, -
|
|
7858
|
+
const last = s.slice(-1);
|
|
7859
|
+
if (last === "\u20AC" || last === "\xA3") {
|
|
7860
|
+
currency = last;
|
|
7861
|
+
s = s.slice(0, -1).trimEnd();
|
|
7858
7862
|
}
|
|
7859
7863
|
}
|
|
7860
7864
|
let percent = false;
|
|
@@ -18674,8 +18678,13 @@ function parseCsv(input, options = {}) {
|
|
|
18674
18678
|
var INVALID_SHEET_CHARS = /[\\/?*[\]:]/g;
|
|
18675
18679
|
function sheetNameFromFileName(fileName) {
|
|
18676
18680
|
const base = (fileName ?? "").split(/[\\/]/).pop() ?? "";
|
|
18677
|
-
const
|
|
18678
|
-
const
|
|
18681
|
+
const dot = base.lastIndexOf(".");
|
|
18682
|
+
const stem = (dot < 0 ? base : base.slice(0, dot)).replace(INVALID_SHEET_CHARS, "_");
|
|
18683
|
+
let start = 0;
|
|
18684
|
+
let end = stem.length;
|
|
18685
|
+
while (start < end && stem[start] === "'") start++;
|
|
18686
|
+
while (end > start && stem[end - 1] === "'") end--;
|
|
18687
|
+
const trimmed = stem.slice(start, end).slice(0, 31).trim();
|
|
18679
18688
|
return trimmed && trimmed.toLowerCase() !== "history" ? trimmed : "Sheet1";
|
|
18680
18689
|
}
|
|
18681
18690
|
function csvToWorkbook(text, options = {}) {
|
package/dist/xlsx/load/index.mjs
CHANGED
|
@@ -6817,7 +6817,10 @@ function writeDrawing(writer, partName, objects, sourceDrawing) {
|
|
|
6817
6817
|
let nextId = Math.max(
|
|
6818
6818
|
1,
|
|
6819
6819
|
...kept.flatMap(
|
|
6820
|
-
(xml) => [...xml.matchAll(/cNvPr[^>]
|
|
6820
|
+
(xml) => [...xml.matchAll(/cNvPr([^>]*)/g)].flatMap((m) => {
|
|
6821
|
+
const id = /\sid="(\d+)"/.exec(m[1] ?? "");
|
|
6822
|
+
return id ? [Number(id[1])] : [];
|
|
6823
|
+
})
|
|
6821
6824
|
)
|
|
6822
6825
|
) + 1;
|
|
6823
6826
|
let body = "";
|
|
@@ -7800,7 +7803,8 @@ function parseDay(text) {
|
|
|
7800
7803
|
function parseDateTimeInput(text, date1904) {
|
|
7801
7804
|
const time = parseTime(text);
|
|
7802
7805
|
if (time) return { value: time.fraction, numFmt: time.format };
|
|
7803
|
-
const
|
|
7806
|
+
const tail = /(?:\s{1,8}|T)(\d{1,2}:\d{1,2}(?::\d{1,2})?(?:\s{0,8}(?:am|pm|a|p))?)$/i.exec(text);
|
|
7807
|
+
const split = tail && tail.index > 0 ? [tail[0], text.slice(0, tail.index), tail[1]] : null;
|
|
7804
7808
|
const dayText = split ? split[1] ?? "" : text;
|
|
7805
7809
|
const day = parseDay(dayText);
|
|
7806
7810
|
if (!day) return void 0;
|
|
@@ -7845,10 +7849,10 @@ function parseNumberInput(text) {
|
|
|
7845
7849
|
s = s.slice(lead[0].length);
|
|
7846
7850
|
if (!sign()) return void 0;
|
|
7847
7851
|
} else {
|
|
7848
|
-
const
|
|
7849
|
-
if (
|
|
7850
|
-
currency =
|
|
7851
|
-
s = s.slice(0, -
|
|
7852
|
+
const last = s.slice(-1);
|
|
7853
|
+
if (last === "\u20AC" || last === "\xA3") {
|
|
7854
|
+
currency = last;
|
|
7855
|
+
s = s.slice(0, -1).trimEnd();
|
|
7852
7856
|
}
|
|
7853
7857
|
}
|
|
7854
7858
|
let percent = false;
|
|
@@ -18668,8 +18672,13 @@ function parseCsv(input, options = {}) {
|
|
|
18668
18672
|
var INVALID_SHEET_CHARS = /[\\/?*[\]:]/g;
|
|
18669
18673
|
function sheetNameFromFileName(fileName) {
|
|
18670
18674
|
const base = (fileName ?? "").split(/[\\/]/).pop() ?? "";
|
|
18671
|
-
const
|
|
18672
|
-
const
|
|
18675
|
+
const dot = base.lastIndexOf(".");
|
|
18676
|
+
const stem = (dot < 0 ? base : base.slice(0, dot)).replace(INVALID_SHEET_CHARS, "_");
|
|
18677
|
+
let start = 0;
|
|
18678
|
+
let end = stem.length;
|
|
18679
|
+
while (start < end && stem[start] === "'") start++;
|
|
18680
|
+
while (end > start && stem[end - 1] === "'") end--;
|
|
18681
|
+
const trimmed = stem.slice(start, end).slice(0, 31).trim();
|
|
18673
18682
|
return trimmed && trimmed.toLowerCase() !== "history" ? trimmed : "Sheet1";
|
|
18674
18683
|
}
|
|
18675
18684
|
function csvToWorkbook(text, options = {}) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input-date.d.ts","sourceRoot":"","sources":["../../../xlsx/numfmt/input-date.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,SAAS;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CACf;AAiCD,wFAAwF;AACxF,wBAAgB,QAAQ,CACvB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,OAAO,GACf,MAAM,GAAG,SAAS,CASpB;AAED,UAAU,SAAS;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CACf;AAID,yEAAyE;AACzE,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CA2B7D;AA0DD,iFAAiF;AACjF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"input-date.d.ts","sourceRoot":"","sources":["../../../xlsx/numfmt/input-date.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,SAAS;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CACf;AAiCD,wFAAwF;AACxF,wBAAgB,QAAQ,CACvB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,OAAO,GACf,MAAM,GAAG,SAAS,CASpB;AAED,UAAU,SAAS;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CACf;AAID,yEAAyE;AACzE,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CA2B7D;AA0DD,iFAAiF;AACjF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,CAezF"}
|
package/dist/xlsx/ui/index.cjs
CHANGED
|
@@ -1737,7 +1737,8 @@ function parseDay(text) {
|
|
|
1737
1737
|
function parseDateTimeInput(text, date1904) {
|
|
1738
1738
|
const time = parseTime(text);
|
|
1739
1739
|
if (time) return { value: time.fraction, numFmt: time.format };
|
|
1740
|
-
const
|
|
1740
|
+
const tail = /(?:\s{1,8}|T)(\d{1,2}:\d{1,2}(?::\d{1,2})?(?:\s{0,8}(?:am|pm|a|p))?)$/i.exec(text);
|
|
1741
|
+
const split = tail && tail.index > 0 ? [tail[0], text.slice(0, tail.index), tail[1]] : null;
|
|
1741
1742
|
const dayText = split ? split[1] ?? "" : text;
|
|
1742
1743
|
const day = parseDay(dayText);
|
|
1743
1744
|
if (!day) return void 0;
|
|
@@ -1782,10 +1783,10 @@ function parseNumberInput(text) {
|
|
|
1782
1783
|
s = s.slice(lead[0].length);
|
|
1783
1784
|
if (!sign2()) return void 0;
|
|
1784
1785
|
} else {
|
|
1785
|
-
const
|
|
1786
|
-
if (
|
|
1787
|
-
currency =
|
|
1788
|
-
s = s.slice(0, -
|
|
1786
|
+
const last = s.slice(-1);
|
|
1787
|
+
if (last === "\u20AC" || last === "\xA3") {
|
|
1788
|
+
currency = last;
|
|
1789
|
+
s = s.slice(0, -1).trimEnd();
|
|
1789
1790
|
}
|
|
1790
1791
|
}
|
|
1791
1792
|
let percent = false;
|
|
@@ -14024,7 +14025,9 @@ function decodeEntities(text) {
|
|
|
14024
14025
|
}
|
|
14025
14026
|
function parseAttributes(text) {
|
|
14026
14027
|
const attrs = /* @__PURE__ */ new Map();
|
|
14027
|
-
for (const m of text.matchAll(
|
|
14028
|
+
for (const m of text.matchAll(
|
|
14029
|
+
/([\w:-]{1,64})\s{0,16}=\s{0,16}(?:"([^"]*)"|'([^']*)'|([^\s>]+))/g
|
|
14030
|
+
))
|
|
14028
14031
|
attrs.set((m[1] ?? "").toLowerCase(), decodeEntities(m[2] ?? m[3] ?? m[4] ?? ""));
|
|
14029
14032
|
return attrs;
|
|
14030
14033
|
}
|
|
@@ -14079,12 +14082,41 @@ function stylePatchFromCss(css, inner2) {
|
|
|
14079
14082
|
if (numFmt) patch.numFmt = decodeNumberFormat(numFmt);
|
|
14080
14083
|
return patch;
|
|
14081
14084
|
}
|
|
14085
|
+
function removeComments(text) {
|
|
14086
|
+
let out = "";
|
|
14087
|
+
let from = 0;
|
|
14088
|
+
for (; ; ) {
|
|
14089
|
+
const open = text.indexOf("<!--", from);
|
|
14090
|
+
const close = open < 0 ? -1 : text.indexOf("-->", open + 4);
|
|
14091
|
+
if (close < 0) return out + text.slice(from);
|
|
14092
|
+
out += text.slice(from, open);
|
|
14093
|
+
from = close + 3;
|
|
14094
|
+
}
|
|
14095
|
+
}
|
|
14096
|
+
function removeTags(text) {
|
|
14097
|
+
let out = "";
|
|
14098
|
+
let i = 0;
|
|
14099
|
+
while (i < text.length) {
|
|
14100
|
+
const ch = text[i];
|
|
14101
|
+
if (ch === "<") {
|
|
14102
|
+
let j = i + 1;
|
|
14103
|
+
while (j < text.length && text[j] !== "<" && text[j] !== ">") j++;
|
|
14104
|
+
if (text[j] === ">") {
|
|
14105
|
+
i = j + 1;
|
|
14106
|
+
continue;
|
|
14107
|
+
}
|
|
14108
|
+
}
|
|
14109
|
+
out += ch;
|
|
14110
|
+
i++;
|
|
14111
|
+
}
|
|
14112
|
+
return out;
|
|
14113
|
+
}
|
|
14082
14114
|
function stripTags(markup) {
|
|
14083
14115
|
let previous;
|
|
14084
14116
|
let text = markup;
|
|
14085
14117
|
do {
|
|
14086
14118
|
previous = text;
|
|
14087
|
-
text =
|
|
14119
|
+
text = removeTags(removeComments(text));
|
|
14088
14120
|
} while (text !== previous);
|
|
14089
14121
|
return removeAll(text, ["<!--", "-->"]);
|
|
14090
14122
|
}
|
|
@@ -14279,7 +14311,15 @@ function linearTrend(values2) {
|
|
|
14279
14311
|
const slope = den ? num2 / den : 0;
|
|
14280
14312
|
return (k) => Number((meanY + slope * (k - meanX)).toPrecision(15));
|
|
14281
14313
|
}
|
|
14282
|
-
var
|
|
14314
|
+
var isDigit3 = (ch) => ch !== void 0 && ch >= "0" && ch <= "9";
|
|
14315
|
+
function matchTextNumber(text) {
|
|
14316
|
+
let end = text.length;
|
|
14317
|
+
while (end > 0 && !isDigit3(text[end - 1])) end--;
|
|
14318
|
+
if (end === 0) return null;
|
|
14319
|
+
let start = end;
|
|
14320
|
+
while (start > 0 && isDigit3(text[start - 1])) start--;
|
|
14321
|
+
return [text, text.slice(0, start), text.slice(start, end), text.slice(end)];
|
|
14322
|
+
}
|
|
14283
14323
|
var QUARTER = /^(q|qtr|quarter)(\s?)([1-4])$/i;
|
|
14284
14324
|
function textSeries(texts) {
|
|
14285
14325
|
const lists = texts.map(listMatch);
|
|
@@ -14301,7 +14341,7 @@ function textSeries(texts) {
|
|
|
14301
14341
|
const step = q1 ? mod(Number(q1[3]) - 1 - start, 4) || 1 : 1;
|
|
14302
14342
|
return (k) => ({ kind: "value", value: `${q0[1]}${q0[2]}${mod(start + step * k, 4) + 1}` });
|
|
14303
14343
|
}
|
|
14304
|
-
const parts = texts.map(
|
|
14344
|
+
const parts = texts.map(matchTextNumber);
|
|
14305
14345
|
const p0 = parts[0];
|
|
14306
14346
|
if (!p0 || !parts.every((p) => p && p[1] === p0[1] && p[3] === p0[3])) return void 0;
|
|
14307
14347
|
const numbers3 = parts.map((p) => Number(p?.[2]));
|
|
@@ -27606,7 +27646,7 @@ var SheetSelections = class {
|
|
|
27606
27646
|
};
|
|
27607
27647
|
var isWholeRows2 = (range2) => range2.start.col === 0 && range2.end.col === MAX_COL;
|
|
27608
27648
|
var isWholeCols = (range2) => range2.start.row === 0 && range2.end.row === MAX_ROW;
|
|
27609
|
-
var columnPart = (address2) => formatAddress(address2).replace(/\d
|
|
27649
|
+
var columnPart = (address2) => formatAddress(address2).replace(/\d{1,10}$/u, "");
|
|
27610
27650
|
function rangeRef(range2) {
|
|
27611
27651
|
if (isWholeRows2(range2) && isWholeCols(range2)) return `1:${MAX_ROW + 1}`;
|
|
27612
27652
|
if (isWholeRows2(range2)) return `${range2.start.row + 1}:${range2.end.row + 1}`;
|
package/dist/xlsx/ui/index.mjs
CHANGED
|
@@ -1735,7 +1735,8 @@ function parseDay(text) {
|
|
|
1735
1735
|
function parseDateTimeInput(text, date1904) {
|
|
1736
1736
|
const time = parseTime(text);
|
|
1737
1737
|
if (time) return { value: time.fraction, numFmt: time.format };
|
|
1738
|
-
const
|
|
1738
|
+
const tail = /(?:\s{1,8}|T)(\d{1,2}:\d{1,2}(?::\d{1,2})?(?:\s{0,8}(?:am|pm|a|p))?)$/i.exec(text);
|
|
1739
|
+
const split = tail && tail.index > 0 ? [tail[0], text.slice(0, tail.index), tail[1]] : null;
|
|
1739
1740
|
const dayText = split ? split[1] ?? "" : text;
|
|
1740
1741
|
const day = parseDay(dayText);
|
|
1741
1742
|
if (!day) return void 0;
|
|
@@ -1780,10 +1781,10 @@ function parseNumberInput(text) {
|
|
|
1780
1781
|
s = s.slice(lead[0].length);
|
|
1781
1782
|
if (!sign2()) return void 0;
|
|
1782
1783
|
} else {
|
|
1783
|
-
const
|
|
1784
|
-
if (
|
|
1785
|
-
currency =
|
|
1786
|
-
s = s.slice(0, -
|
|
1784
|
+
const last = s.slice(-1);
|
|
1785
|
+
if (last === "\u20AC" || last === "\xA3") {
|
|
1786
|
+
currency = last;
|
|
1787
|
+
s = s.slice(0, -1).trimEnd();
|
|
1787
1788
|
}
|
|
1788
1789
|
}
|
|
1789
1790
|
let percent = false;
|
|
@@ -14022,7 +14023,9 @@ function decodeEntities(text) {
|
|
|
14022
14023
|
}
|
|
14023
14024
|
function parseAttributes(text) {
|
|
14024
14025
|
const attrs = /* @__PURE__ */ new Map();
|
|
14025
|
-
for (const m of text.matchAll(
|
|
14026
|
+
for (const m of text.matchAll(
|
|
14027
|
+
/([\w:-]{1,64})\s{0,16}=\s{0,16}(?:"([^"]*)"|'([^']*)'|([^\s>]+))/g
|
|
14028
|
+
))
|
|
14026
14029
|
attrs.set((m[1] ?? "").toLowerCase(), decodeEntities(m[2] ?? m[3] ?? m[4] ?? ""));
|
|
14027
14030
|
return attrs;
|
|
14028
14031
|
}
|
|
@@ -14077,12 +14080,41 @@ function stylePatchFromCss(css, inner2) {
|
|
|
14077
14080
|
if (numFmt) patch.numFmt = decodeNumberFormat(numFmt);
|
|
14078
14081
|
return patch;
|
|
14079
14082
|
}
|
|
14083
|
+
function removeComments(text) {
|
|
14084
|
+
let out = "";
|
|
14085
|
+
let from = 0;
|
|
14086
|
+
for (; ; ) {
|
|
14087
|
+
const open = text.indexOf("<!--", from);
|
|
14088
|
+
const close = open < 0 ? -1 : text.indexOf("-->", open + 4);
|
|
14089
|
+
if (close < 0) return out + text.slice(from);
|
|
14090
|
+
out += text.slice(from, open);
|
|
14091
|
+
from = close + 3;
|
|
14092
|
+
}
|
|
14093
|
+
}
|
|
14094
|
+
function removeTags(text) {
|
|
14095
|
+
let out = "";
|
|
14096
|
+
let i = 0;
|
|
14097
|
+
while (i < text.length) {
|
|
14098
|
+
const ch = text[i];
|
|
14099
|
+
if (ch === "<") {
|
|
14100
|
+
let j = i + 1;
|
|
14101
|
+
while (j < text.length && text[j] !== "<" && text[j] !== ">") j++;
|
|
14102
|
+
if (text[j] === ">") {
|
|
14103
|
+
i = j + 1;
|
|
14104
|
+
continue;
|
|
14105
|
+
}
|
|
14106
|
+
}
|
|
14107
|
+
out += ch;
|
|
14108
|
+
i++;
|
|
14109
|
+
}
|
|
14110
|
+
return out;
|
|
14111
|
+
}
|
|
14080
14112
|
function stripTags(markup) {
|
|
14081
14113
|
let previous;
|
|
14082
14114
|
let text = markup;
|
|
14083
14115
|
do {
|
|
14084
14116
|
previous = text;
|
|
14085
|
-
text =
|
|
14117
|
+
text = removeTags(removeComments(text));
|
|
14086
14118
|
} while (text !== previous);
|
|
14087
14119
|
return removeAll(text, ["<!--", "-->"]);
|
|
14088
14120
|
}
|
|
@@ -14277,7 +14309,15 @@ function linearTrend(values2) {
|
|
|
14277
14309
|
const slope = den ? num2 / den : 0;
|
|
14278
14310
|
return (k) => Number((meanY + slope * (k - meanX)).toPrecision(15));
|
|
14279
14311
|
}
|
|
14280
|
-
var
|
|
14312
|
+
var isDigit3 = (ch) => ch !== void 0 && ch >= "0" && ch <= "9";
|
|
14313
|
+
function matchTextNumber(text) {
|
|
14314
|
+
let end = text.length;
|
|
14315
|
+
while (end > 0 && !isDigit3(text[end - 1])) end--;
|
|
14316
|
+
if (end === 0) return null;
|
|
14317
|
+
let start = end;
|
|
14318
|
+
while (start > 0 && isDigit3(text[start - 1])) start--;
|
|
14319
|
+
return [text, text.slice(0, start), text.slice(start, end), text.slice(end)];
|
|
14320
|
+
}
|
|
14281
14321
|
var QUARTER = /^(q|qtr|quarter)(\s?)([1-4])$/i;
|
|
14282
14322
|
function textSeries(texts) {
|
|
14283
14323
|
const lists = texts.map(listMatch);
|
|
@@ -14299,7 +14339,7 @@ function textSeries(texts) {
|
|
|
14299
14339
|
const step = q1 ? mod(Number(q1[3]) - 1 - start, 4) || 1 : 1;
|
|
14300
14340
|
return (k) => ({ kind: "value", value: `${q0[1]}${q0[2]}${mod(start + step * k, 4) + 1}` });
|
|
14301
14341
|
}
|
|
14302
|
-
const parts = texts.map(
|
|
14342
|
+
const parts = texts.map(matchTextNumber);
|
|
14303
14343
|
const p0 = parts[0];
|
|
14304
14344
|
if (!p0 || !parts.every((p) => p && p[1] === p0[1] && p[3] === p0[3])) return void 0;
|
|
14305
14345
|
const numbers3 = parts.map((p) => Number(p?.[2]));
|
|
@@ -27604,7 +27644,7 @@ var SheetSelections = class {
|
|
|
27604
27644
|
};
|
|
27605
27645
|
var isWholeRows2 = (range2) => range2.start.col === 0 && range2.end.col === MAX_COL;
|
|
27606
27646
|
var isWholeCols = (range2) => range2.start.row === 0 && range2.end.row === MAX_ROW;
|
|
27607
|
-
var columnPart = (address2) => formatAddress(address2).replace(/\d
|
|
27647
|
+
var columnPart = (address2) => formatAddress(address2).replace(/\d{1,10}$/u, "");
|
|
27608
27648
|
function rangeRef(range2) {
|
|
27609
27649
|
if (isWholeRows2(range2) && isWholeCols(range2)) return `1:${MAX_ROW + 1}`;
|
|
27610
27650
|
if (isWholeRows2(range2)) return `${range2.start.row + 1}:${range2.end.row + 1}`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selection.d.ts","sourceRoot":"","sources":["../../../xlsx/ui/selection.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,OAAO,EAQN,KAAK,SAAS,EACd,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAK9D,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,SAAS,CAK9E;AAID,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,SAA+B,GAAG,cAAc,CA+B7F;AAED;;;GAGG;AACH,qBAAa,eAAe;IAC3B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuC;IAE7D,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,EAAE,SAAS,EAAE,SAAS,GAAG,IAAI,CAEjE;IAED,oFAAoF;IACpF,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,CAMhE;CACD;AAED,eAAO,MAAM,WAAW,UAAW,SAAS,KAAG,OACI,CAAC;AACpD,eAAO,MAAM,WAAW,UAAW,SAAS,KAAG,OACI,CAAC;
|
|
1
|
+
{"version":3,"file":"selection.d.ts","sourceRoot":"","sources":["../../../xlsx/ui/selection.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,OAAO,EAQN,KAAK,SAAS,EACd,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAK9D,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,SAAS,CAK9E;AAID,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,SAA+B,GAAG,cAAc,CA+B7F;AAED;;;GAGG;AACH,qBAAa,eAAe;IAC3B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuC;IAE7D,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,EAAE,SAAS,EAAE,SAAS,GAAG,IAAI,CAEjE;IAED,oFAAoF;IACpF,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,CAMhE;CACD;AAED,eAAO,MAAM,WAAW,UAAW,SAAS,KAAG,OACI,CAAC;AACpD,eAAO,MAAM,WAAW,UAAW,SAAS,KAAG,OACI,CAAC;AAIpD;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAKjD;AAED,sEAAsE;AACtE,wBAAgB,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,CAEzD;AAED,wBAAgB,SAAS,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,CAEtD;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAChC,GAAG,EAAE,MAAM,EACX,QAAQ,CAAC,EAAE,QAAQ,GACjB;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,SAAS,EAAE,CAAA;CAAE,GAAG,SAAS,CAuBrD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drawing.d.ts","sourceRoot":"","sources":["../../../xlsx/write/drawing.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAA8B,aAAa,EAAe,MAAM,aAAa,CAAC;AAI1F,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAG1E,mFAAmF;AACnF,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAMvE;AAsFD;;;GAGG;AACH,eAAO,MAAM,iBAAiB,YAAa,SAAS,aAAa,EAAE,KAAG,OAAO,EAK3E,CAAC;AAEH;;;GAGG;AACH,wBAAgB,YAAY,CAC3B,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,SAAS,aAAa,EAAE,EACjC,aAAa,EAAE,MAAM,GAAG,SAAS,GAC/B,OAAO,
|
|
1
|
+
{"version":3,"file":"drawing.d.ts","sourceRoot":"","sources":["../../../xlsx/write/drawing.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAA8B,aAAa,EAAe,MAAM,aAAa,CAAC;AAI1F,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAG1E,mFAAmF;AACnF,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAMvE;AAsFD;;;GAGG;AACH,eAAO,MAAM,iBAAiB,YAAa,SAAS,aAAa,EAAE,KAAG,OAAO,EAK3E,CAAC;AAEH;;;GAGG;AACH,wBAAgB,YAAY,CAC3B,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,SAAS,aAAa,EAAE,EACjC,aAAa,EAAE,MAAM,GAAG,SAAS,GAC/B,OAAO,CA2ET"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ooxml-core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.23.0",
|
|
4
4
|
"description": "Shared OOXML logic for the Word, PowerPoint and Excel viewers: everything except the UI",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"charts",
|
|
@@ -169,6 +169,11 @@
|
|
|
169
169
|
"import": "./dist/pptx/signature-node/index.mjs",
|
|
170
170
|
"require": "./dist/pptx/signature-node/index.cjs"
|
|
171
171
|
},
|
|
172
|
+
"./pptx/smartart-layouts": {
|
|
173
|
+
"types": "./dist/pptx/smartart-layouts/index.d.ts",
|
|
174
|
+
"import": "./dist/pptx/smartart-layouts/index.mjs",
|
|
175
|
+
"require": "./dist/pptx/smartart-layouts/index.cjs"
|
|
176
|
+
},
|
|
172
177
|
"./math": {
|
|
173
178
|
"types": "./dist/math/index.d.ts",
|
|
174
179
|
"import": "./dist/math/index.mjs",
|
|
@@ -223,6 +228,7 @@
|
|
|
223
228
|
"@xmldom/xmldom": "^0.9.12",
|
|
224
229
|
"emf-converter": "^4.8.21",
|
|
225
230
|
"fast-xml-parser": "^5.11.2",
|
|
231
|
+
"fflate": "^0.8.3",
|
|
226
232
|
"jszip": "^3.10.2",
|
|
227
233
|
"lib0": "^0.2.119",
|
|
228
234
|
"mtx-decompressor": "^1.8.0",
|