@forevka/wordcanvas 0.7.1 → 0.7.3
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-lib/assets/{worker-D8rUOKfg.js → worker-CqU4Popa.js} +10903 -10736
- package/dist-lib/assets/worker-Cw5cYW5z.js +2418 -0
- package/dist-lib/blockFactory-DDCRWDnA.js +91 -0
- package/dist-lib/browser-BUrsjziD.js +612 -0
- package/dist-lib/builder.js +13 -13
- package/dist-lib/editorApp-CB_ZArIF.js +9566 -0
- package/dist-lib/export.js +4507 -4456
- package/dist-lib/generate-toc.js +7 -7
- package/dist-lib/import.js +2 -2
- package/dist-lib/lists-DpmgbDyt.js +110 -0
- package/dist-lib/measure.js +2 -2
- package/dist-lib/{measureHost-CMiJKdlk.js → measureHost-BlukHGwx.js} +1 -1
- package/dist-lib/metrics-bvGO8KDK.js +96 -0
- package/dist-lib/paintStyle-vT6jtWbH.js +74 -0
- package/dist-lib/pipeline-UryP-u7Z.js +1850 -0
- package/dist-lib/recalc-docx.js +2 -2
- package/dist-lib/recalcToc-BfXlXZik.js +3985 -0
- package/dist-lib/styleProps-DhqDEfvc.js +149 -0
- package/dist-lib/stylesheet-LTBEGkvG.js +146 -0
- package/dist-lib/toc-D09f4PrI.js +939 -0
- package/dist-lib/{webmcp-6WxRNKCc.js → webmcp-K6UZgQJ0.js} +60 -68
- package/dist-lib/wordcanvas-DBx2ana_.js +734 -0
- package/dist-lib/wordcanvas.js +4 -2
- package/dist-node/{chunk-CDN6WU2P.js → chunk-373K2XRY.js} +40 -22
- package/dist-node/chunk-373K2XRY.js.map +7 -0
- package/dist-node/{chunk-22JHAERT.js → chunk-3PUV3BG6.js} +235 -39
- package/dist-node/chunk-3PUV3BG6.js.map +7 -0
- package/dist-node/{chunk-4ICCHZX4.js → chunk-5RX3IHWE.js} +39 -3
- package/dist-node/chunk-5RX3IHWE.js.map +7 -0
- package/dist-node/{chunk-4PDVRJF6.js → chunk-EMY2P524.js} +32 -2
- package/dist-node/chunk-EMY2P524.js.map +7 -0
- package/dist-node/{chunk-BRAPV465.js → chunk-HWQKGDS2.js} +2 -2
- package/dist-node/{chunk-6AJJMHKY.js → chunk-KJV7GJ3H.js} +1 -1
- package/dist-node/chunk-KJV7GJ3H.js.map +7 -0
- package/dist-node/{chunk-RNB336F3.js → chunk-ZLLSXOO2.js} +92 -14
- package/dist-node/{chunk-RNB336F3.js.map → chunk-ZLLSXOO2.js.map} +2 -2
- package/dist-node/{engine-5FGDJD2H.js → engine-LLA6PCS5.js} +4 -4
- package/dist-node/export.js +89 -24
- package/dist-node/export.js.map +2 -2
- package/dist-node/generate-toc.js +6 -6
- package/dist-node/import.js +3 -3
- package/dist-node/measure.js +2 -2
- package/dist-node/recalc-docx.js +4 -4
- package/package.json +1 -1
- package/types/model.d.ts +46 -0
- package/types/wordcanvas.d.ts +493 -1
- package/dist-lib/assets/worker-wXuuyshQ.js +0 -2258
- package/dist-lib/blockFactory-CUI4Rqiq.js +0 -186
- package/dist-lib/browser-DkKxreJM.js +0 -1305
- package/dist-lib/editorApp-DLXMmtu5.js +0 -8023
- package/dist-lib/lists-Sc5I40JO.js +0 -110
- package/dist-lib/metrics-CkAo4zh8.js +0 -143
- package/dist-lib/pipeline-CbxmCE84.js +0 -1705
- package/dist-lib/recalcToc-g1hFKSNs.js +0 -3935
- package/dist-lib/styleProps-Db5pEkG8.js +0 -127
- package/dist-lib/toc-B6VpkJge.js +0 -213
- package/dist-lib/wordcanvas-CFqpDK0k.js +0 -125
- package/dist-node/chunk-22JHAERT.js.map +0 -7
- package/dist-node/chunk-4ICCHZX4.js.map +0 -7
- package/dist-node/chunk-4PDVRJF6.js.map +0 -7
- package/dist-node/chunk-6AJJMHKY.js.map +0 -7
- package/dist-node/chunk-CDN6WU2P.js.map +0 -7
- /package/dist-node/{chunk-BRAPV465.js.map → chunk-HWQKGDS2.js.map} +0 -0
- /package/dist-node/{engine-5FGDJD2H.js.map → engine-LLA6PCS5.js.map} +0 -0
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
const f = [
|
|
2
|
-
[1e3, "m"],
|
|
3
|
-
[900, "cm"],
|
|
4
|
-
[500, "d"],
|
|
5
|
-
[400, "cd"],
|
|
6
|
-
[100, "c"],
|
|
7
|
-
[90, "xc"],
|
|
8
|
-
[50, "l"],
|
|
9
|
-
[40, "xl"],
|
|
10
|
-
[10, "x"],
|
|
11
|
-
[9, "ix"],
|
|
12
|
-
[5, "v"],
|
|
13
|
-
[4, "iv"],
|
|
14
|
-
[1, "i"]
|
|
15
|
-
];
|
|
16
|
-
function a(e) {
|
|
17
|
-
let n = "", t = Math.max(1, e);
|
|
18
|
-
for (const [r, l] of f)
|
|
19
|
-
for (; t >= r; )
|
|
20
|
-
n += l, t -= r;
|
|
21
|
-
return n;
|
|
22
|
-
}
|
|
23
|
-
function i(e) {
|
|
24
|
-
let n = "", t = Math.max(1, e);
|
|
25
|
-
for (; t > 0; )
|
|
26
|
-
t -= 1, n = String.fromCharCode(97 + t % 26) + n, t = Math.floor(t / 26);
|
|
27
|
-
return n;
|
|
28
|
-
}
|
|
29
|
-
function m(e, n) {
|
|
30
|
-
switch (n) {
|
|
31
|
-
case "decimal":
|
|
32
|
-
return String(e);
|
|
33
|
-
case "lowerLetter":
|
|
34
|
-
return i(e);
|
|
35
|
-
case "upperLetter":
|
|
36
|
-
return i(e).toUpperCase();
|
|
37
|
-
case "lowerRoman":
|
|
38
|
-
return a(e);
|
|
39
|
-
case "upperRoman":
|
|
40
|
-
return a(e).toUpperCase();
|
|
41
|
-
case "bullet":
|
|
42
|
-
return "";
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
function g(e, n, t) {
|
|
46
|
-
const r = e.levels[Math.min(n, e.levels.length - 1)];
|
|
47
|
-
return r ? r.format === "bullet" ? r.bulletChar ?? "•" : r.text.replace(/%(\d)/g, (l, u) => {
|
|
48
|
-
const o = Number(u) - 1, s = e.levels[Math.min(o, e.levels.length - 1)], c = t[o] ?? s?.start ?? 1;
|
|
49
|
-
return m(c, s?.format ?? "decimal");
|
|
50
|
-
}) : "";
|
|
51
|
-
}
|
|
52
|
-
const L = "bullets", h = "numbers", x = "multilevel", v = ["•", "◦", "▪"], b = ["decimal", "lowerLetter", "lowerRoman"];
|
|
53
|
-
function p(e) {
|
|
54
|
-
const n = [];
|
|
55
|
-
for (let t = 0; t < 9; t++)
|
|
56
|
-
e === "bullet" ? n.push({
|
|
57
|
-
format: "bullet",
|
|
58
|
-
text: "",
|
|
59
|
-
bulletChar: v[t % 3],
|
|
60
|
-
indentLeftPx: 24 + t * 24,
|
|
61
|
-
hangingPx: 18,
|
|
62
|
-
start: 1
|
|
63
|
-
}) : n.push({
|
|
64
|
-
format: b[t % 3],
|
|
65
|
-
text: `%${t + 1}.`,
|
|
66
|
-
indentLeftPx: 24 + t * 24,
|
|
67
|
-
hangingPx: 22,
|
|
68
|
-
start: 1
|
|
69
|
-
});
|
|
70
|
-
return { id: e === "bullet" ? L : h, levels: n };
|
|
71
|
-
}
|
|
72
|
-
function d(e, n) {
|
|
73
|
-
const t = [];
|
|
74
|
-
for (let r = 0; r < 9; r++)
|
|
75
|
-
t.push({ format: "bullet", text: "", bulletChar: n, indentLeftPx: 24 + r * 24, hangingPx: 18, start: 1 });
|
|
76
|
-
return { id: e, levels: t };
|
|
77
|
-
}
|
|
78
|
-
function _(e, n, t) {
|
|
79
|
-
const r = [];
|
|
80
|
-
for (let l = 0; l < 9; l++)
|
|
81
|
-
r.push({ format: n, text: `%${l + 1}${t}`, indentLeftPx: 24 + l * 24, hangingPx: 22, start: 1 });
|
|
82
|
-
return { id: e, levels: r };
|
|
83
|
-
}
|
|
84
|
-
function D() {
|
|
85
|
-
const e = [];
|
|
86
|
-
for (let n = 0; n < 9; n++) {
|
|
87
|
-
const t = Array.from({ length: n + 1 }, (r, l) => `%${l + 1}`).join(".") + ".";
|
|
88
|
-
e.push({
|
|
89
|
-
format: "decimal",
|
|
90
|
-
text: t,
|
|
91
|
-
// "%1.", "%1.%2.", "%1.%2.%3.", …
|
|
92
|
-
indentLeftPx: 24 + n * 24,
|
|
93
|
-
hangingPx: 24 + n * 8,
|
|
94
|
-
// compound markers widen with depth
|
|
95
|
-
start: 1
|
|
96
|
-
});
|
|
97
|
-
}
|
|
98
|
-
return { id: x, levels: e };
|
|
99
|
-
}
|
|
100
|
-
export {
|
|
101
|
-
h as D,
|
|
102
|
-
L as a,
|
|
103
|
-
d as b,
|
|
104
|
-
x as c,
|
|
105
|
-
p as d,
|
|
106
|
-
g as e,
|
|
107
|
-
m as f,
|
|
108
|
-
D as m,
|
|
109
|
-
_ as n
|
|
110
|
-
};
|
|
@@ -1,143 +0,0 @@
|
|
|
1
|
-
const C = ["Carlito", "Caladea", "Gelasio", "Arimo", "TimesNewRoman", "Cousine"], d = "Arimo", f = {
|
|
2
|
-
// metric clones of common Office/Windows fonts
|
|
3
|
-
calibri: "Carlito",
|
|
4
|
-
cambria: "Caladea",
|
|
5
|
-
georgia: "Gelasio",
|
|
6
|
-
arial: "Arimo",
|
|
7
|
-
helvetica: "Arimo",
|
|
8
|
-
"helvetica neue": "Arimo",
|
|
9
|
-
"times new roman": "TimesNewRoman",
|
|
10
|
-
times: "TimesNewRoman",
|
|
11
|
-
"courier new": "Cousine",
|
|
12
|
-
courier: "Cousine",
|
|
13
|
-
// reasonable substitutes for fonts we don't ship
|
|
14
|
-
verdana: "Arimo",
|
|
15
|
-
tahoma: "Arimo",
|
|
16
|
-
"segoe ui": "Arimo",
|
|
17
|
-
"trebuchet ms": "Arimo",
|
|
18
|
-
consolas: "Cousine",
|
|
19
|
-
monaco: "Cousine",
|
|
20
|
-
"lucida console": "Cousine",
|
|
21
|
-
garamond: "TimesNewRoman",
|
|
22
|
-
"book antiqua": "Caladea",
|
|
23
|
-
palatino: "Caladea",
|
|
24
|
-
// generic CSS families
|
|
25
|
-
serif: "TimesNewRoman",
|
|
26
|
-
"sans-serif": "Arimo",
|
|
27
|
-
sans: "Arimo",
|
|
28
|
-
monospace: "Cousine",
|
|
29
|
-
mono: "Cousine",
|
|
30
|
-
// identity (already a clone)
|
|
31
|
-
carlito: "Carlito",
|
|
32
|
-
caladea: "Caladea",
|
|
33
|
-
gelasio: "Gelasio",
|
|
34
|
-
arimo: "Arimo",
|
|
35
|
-
timesnewroman: "TimesNewRoman",
|
|
36
|
-
cousine: "Cousine"
|
|
37
|
-
}, O = {
|
|
38
|
-
Carlito: { ascent: 0.9375, descent: 0.25 },
|
|
39
|
-
Caladea: { ascent: 0.9375, descent: 0.25 },
|
|
40
|
-
Gelasio: { ascent: 0.9375, descent: 0.3125 },
|
|
41
|
-
Arimo: { ascent: 0.875, descent: 0.1875 },
|
|
42
|
-
TimesNewRoman: { ascent: 0.875, descent: 0.1875 },
|
|
43
|
-
Cousine: { ascent: 0.625, descent: 0.1875 }
|
|
44
|
-
};
|
|
45
|
-
function l(e) {
|
|
46
|
-
const a = e.trim().toLowerCase().replace(/^["']|["']$/g, ""), o = f[a];
|
|
47
|
-
return o ? { clone: o, substituted: !1 } : { clone: d, substituted: !0 };
|
|
48
|
-
}
|
|
49
|
-
const T = (e) => (e.split(",")[0] ?? "").trim(), L = ["Regular", "Bold", "Italic", "BoldItalic"], N = C.flatMap(
|
|
50
|
-
(e) => L.map((a) => `${e}-${a}.ttf`)
|
|
51
|
-
), b = [
|
|
52
|
-
{ value: "Calibri, sans-serif", label: "Calibri (Carlito)" },
|
|
53
|
-
{ value: "Cambria, serif", label: "Cambria (Caladea)" },
|
|
54
|
-
{ value: "Georgia, serif", label: "Georgia (Gelasio)" },
|
|
55
|
-
{ value: "Arial, sans-serif", label: "Arial (Arimo)" },
|
|
56
|
-
{ value: "Times New Roman, serif", label: "Times New Roman" },
|
|
57
|
-
{ value: "Verdana, sans-serif", label: "Verdana (Arimo)" },
|
|
58
|
-
{ value: "Consolas, monospace", label: "Consolas (Cousine)" },
|
|
59
|
-
{ value: "Courier New, monospace", label: "Courier New (Cousine)" }
|
|
60
|
-
], F = "#c0c4c9", A = "#0b57d0", u = "#202124", S = "#80868b", w = "#9aa0a6", x = "#f1f3f4", m = /* @__PURE__ */ new Set([
|
|
61
|
-
"#0563c1",
|
|
62
|
-
"#0000ff",
|
|
63
|
-
"#0000ee",
|
|
64
|
-
"#0b57d0",
|
|
65
|
-
"#0066cc",
|
|
66
|
-
"#1155cc"
|
|
67
|
-
]), p = (e) => m.has(e.toLowerCase()) ? u : e, E = 0.65, _ = -0.38, R = 0.16;
|
|
68
|
-
function v(e, a) {
|
|
69
|
-
return e === "super" ? _ * a : e === "sub" ? R * a : 0;
|
|
70
|
-
}
|
|
71
|
-
const I = (e) => Math.max(1, e / 14), g = 1.5, M = (e) => -0.28 * e;
|
|
72
|
-
function k(e) {
|
|
73
|
-
const a = e.link !== void 0 && e.link.startsWith("#"), o = e.link !== void 0 && !a;
|
|
74
|
-
let s = e.color;
|
|
75
|
-
return o ? s = A : a && m.has(e.color.toLowerCase()) && (s = u), {
|
|
76
|
-
color: s,
|
|
77
|
-
underline: o || !!e.underline && !a,
|
|
78
|
-
strike: !!e.strikethrough,
|
|
79
|
-
externalLink: o
|
|
80
|
-
};
|
|
81
|
-
}
|
|
82
|
-
function D(e) {
|
|
83
|
-
return e === "dot" ? [1, 3] : e === "dash" ? [4, 3] : [];
|
|
84
|
-
}
|
|
85
|
-
const B = (e) => Math.max(1, e / 14), G = [1, 4], U = 8, P = 1 / 3, H = (e) => Math.max(0.5, e);
|
|
86
|
-
function $(e, a) {
|
|
87
|
-
return e === "dashed" ? [a * 3, a * 2] : e === "dotted" ? [a, a * 1.5] : [];
|
|
88
|
-
}
|
|
89
|
-
const z = (e) => e + 1;
|
|
90
|
-
let i = null, t = null;
|
|
91
|
-
function W(e) {
|
|
92
|
-
i = e;
|
|
93
|
-
}
|
|
94
|
-
function h() {
|
|
95
|
-
return i || (t || (t = document.createElement("canvas").getContext("2d")), t);
|
|
96
|
-
}
|
|
97
|
-
const c = /* @__PURE__ */ new Map();
|
|
98
|
-
function X(e) {
|
|
99
|
-
const a = e.italic ? "italic " : "", o = e.bold ? "700" : "400", s = e.verticalAlign ? Math.round(e.fontSizePx * E) : e.fontSizePx, n = l(T(e.fontFamily)).clone;
|
|
100
|
-
return `${a}${o} ${s}px ${n}`;
|
|
101
|
-
}
|
|
102
|
-
function K(e, a) {
|
|
103
|
-
const o = h();
|
|
104
|
-
return o.font = a, o.measureText(e).width;
|
|
105
|
-
}
|
|
106
|
-
function j(e) {
|
|
107
|
-
let a = c.get(e);
|
|
108
|
-
if (!a) {
|
|
109
|
-
const o = /(\d+(?:\.\d+)?)px/.exec(e), s = o ? parseFloat(o[1]) : 16, n = e.slice(e.indexOf("px ") + 3).trim(), r = O[l(n).clone] ?? { ascent: 0.9, descent: 0.25 };
|
|
110
|
-
a = { ascent: Math.round(r.ascent * s), descent: Math.round(r.descent * s) }, c.set(e, a);
|
|
111
|
-
}
|
|
112
|
-
return a;
|
|
113
|
-
}
|
|
114
|
-
export {
|
|
115
|
-
C,
|
|
116
|
-
F as D,
|
|
117
|
-
S as F,
|
|
118
|
-
x as I,
|
|
119
|
-
E as S,
|
|
120
|
-
U as T,
|
|
121
|
-
g as U,
|
|
122
|
-
w as a,
|
|
123
|
-
G as b,
|
|
124
|
-
D as c,
|
|
125
|
-
I as d,
|
|
126
|
-
H as e,
|
|
127
|
-
$ as f,
|
|
128
|
-
z as g,
|
|
129
|
-
P as h,
|
|
130
|
-
l as i,
|
|
131
|
-
N as j,
|
|
132
|
-
W as k,
|
|
133
|
-
B as l,
|
|
134
|
-
X as m,
|
|
135
|
-
p as n,
|
|
136
|
-
L as o,
|
|
137
|
-
b as p,
|
|
138
|
-
K as q,
|
|
139
|
-
k as r,
|
|
140
|
-
M as s,
|
|
141
|
-
j as t,
|
|
142
|
-
v
|
|
143
|
-
};
|