@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.
Files changed (64) hide show
  1. package/dist-lib/assets/{worker-D8rUOKfg.js → worker-CqU4Popa.js} +10903 -10736
  2. package/dist-lib/assets/worker-Cw5cYW5z.js +2418 -0
  3. package/dist-lib/blockFactory-DDCRWDnA.js +91 -0
  4. package/dist-lib/browser-BUrsjziD.js +612 -0
  5. package/dist-lib/builder.js +13 -13
  6. package/dist-lib/editorApp-CB_ZArIF.js +9566 -0
  7. package/dist-lib/export.js +4507 -4456
  8. package/dist-lib/generate-toc.js +7 -7
  9. package/dist-lib/import.js +2 -2
  10. package/dist-lib/lists-DpmgbDyt.js +110 -0
  11. package/dist-lib/measure.js +2 -2
  12. package/dist-lib/{measureHost-CMiJKdlk.js → measureHost-BlukHGwx.js} +1 -1
  13. package/dist-lib/metrics-bvGO8KDK.js +96 -0
  14. package/dist-lib/paintStyle-vT6jtWbH.js +74 -0
  15. package/dist-lib/pipeline-UryP-u7Z.js +1850 -0
  16. package/dist-lib/recalc-docx.js +2 -2
  17. package/dist-lib/recalcToc-BfXlXZik.js +3985 -0
  18. package/dist-lib/styleProps-DhqDEfvc.js +149 -0
  19. package/dist-lib/stylesheet-LTBEGkvG.js +146 -0
  20. package/dist-lib/toc-D09f4PrI.js +939 -0
  21. package/dist-lib/{webmcp-6WxRNKCc.js → webmcp-K6UZgQJ0.js} +60 -68
  22. package/dist-lib/wordcanvas-DBx2ana_.js +734 -0
  23. package/dist-lib/wordcanvas.js +4 -2
  24. package/dist-node/{chunk-CDN6WU2P.js → chunk-373K2XRY.js} +40 -22
  25. package/dist-node/chunk-373K2XRY.js.map +7 -0
  26. package/dist-node/{chunk-22JHAERT.js → chunk-3PUV3BG6.js} +235 -39
  27. package/dist-node/chunk-3PUV3BG6.js.map +7 -0
  28. package/dist-node/{chunk-4ICCHZX4.js → chunk-5RX3IHWE.js} +39 -3
  29. package/dist-node/chunk-5RX3IHWE.js.map +7 -0
  30. package/dist-node/{chunk-4PDVRJF6.js → chunk-EMY2P524.js} +32 -2
  31. package/dist-node/chunk-EMY2P524.js.map +7 -0
  32. package/dist-node/{chunk-BRAPV465.js → chunk-HWQKGDS2.js} +2 -2
  33. package/dist-node/{chunk-6AJJMHKY.js → chunk-KJV7GJ3H.js} +1 -1
  34. package/dist-node/chunk-KJV7GJ3H.js.map +7 -0
  35. package/dist-node/{chunk-RNB336F3.js → chunk-ZLLSXOO2.js} +92 -14
  36. package/dist-node/{chunk-RNB336F3.js.map → chunk-ZLLSXOO2.js.map} +2 -2
  37. package/dist-node/{engine-5FGDJD2H.js → engine-LLA6PCS5.js} +4 -4
  38. package/dist-node/export.js +89 -24
  39. package/dist-node/export.js.map +2 -2
  40. package/dist-node/generate-toc.js +6 -6
  41. package/dist-node/import.js +3 -3
  42. package/dist-node/measure.js +2 -2
  43. package/dist-node/recalc-docx.js +4 -4
  44. package/package.json +1 -1
  45. package/types/model.d.ts +46 -0
  46. package/types/wordcanvas.d.ts +493 -1
  47. package/dist-lib/assets/worker-wXuuyshQ.js +0 -2258
  48. package/dist-lib/blockFactory-CUI4Rqiq.js +0 -186
  49. package/dist-lib/browser-DkKxreJM.js +0 -1305
  50. package/dist-lib/editorApp-DLXMmtu5.js +0 -8023
  51. package/dist-lib/lists-Sc5I40JO.js +0 -110
  52. package/dist-lib/metrics-CkAo4zh8.js +0 -143
  53. package/dist-lib/pipeline-CbxmCE84.js +0 -1705
  54. package/dist-lib/recalcToc-g1hFKSNs.js +0 -3935
  55. package/dist-lib/styleProps-Db5pEkG8.js +0 -127
  56. package/dist-lib/toc-B6VpkJge.js +0 -213
  57. package/dist-lib/wordcanvas-CFqpDK0k.js +0 -125
  58. package/dist-node/chunk-22JHAERT.js.map +0 -7
  59. package/dist-node/chunk-4ICCHZX4.js.map +0 -7
  60. package/dist-node/chunk-4PDVRJF6.js.map +0 -7
  61. package/dist-node/chunk-6AJJMHKY.js.map +0 -7
  62. package/dist-node/chunk-CDN6WU2P.js.map +0 -7
  63. /package/dist-node/{chunk-BRAPV465.js.map → chunk-HWQKGDS2.js.map} +0 -0
  64. /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
- };