@usejunior/docx-core 0.22.1 → 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/.tsbuildinfo +1 -1
- package/dist/integration/generation-probes.d.ts.map +1 -1
- package/dist/integration/generation-probes.js +26 -21
- package/dist/integration/generation-probes.js.map +1 -1
- package/dist/integration/libreoffice-oracle.d.ts +6 -1
- package/dist/integration/libreoffice-oracle.d.ts.map +1 -1
- package/dist/integration/libreoffice-oracle.js +113 -44
- package/dist/integration/libreoffice-oracle.js.map +1 -1
- package/dist/integration/soffice-lock.d.ts +30 -0
- package/dist/integration/soffice-lock.d.ts.map +1 -0
- package/dist/integration/soffice-lock.js +308 -0
- package/dist/integration/soffice-lock.js.map +1 -0
- package/dist/primitives/accept_changes.d.ts +27 -1
- package/dist/primitives/accept_changes.d.ts.map +1 -1
- package/dist/primitives/accept_changes.js +57 -2
- package/dist/primitives/accept_changes.js.map +1 -1
- package/dist/primitives/comments.d.ts.map +1 -1
- package/dist/primitives/comments.js +2 -2
- package/dist/primitives/comments.js.map +1 -1
- package/dist/primitives/document_view-headings.d.ts.map +1 -1
- package/dist/primitives/document_view-headings.js +16 -6
- package/dist/primitives/document_view-headings.js.map +1 -1
- package/dist/primitives/footnotes.js +2 -2
- package/dist/primitives/footnotes.js.map +1 -1
- package/dist/primitives/formatting_tags.d.ts +6 -3
- package/dist/primitives/formatting_tags.d.ts.map +1 -1
- package/dist/primitives/formatting_tags.js +50 -44
- package/dist/primitives/formatting_tags.js.map +1 -1
- package/dist/primitives/paragraph-index.d.ts +28 -2
- package/dist/primitives/paragraph-index.d.ts.map +1 -1
- package/dist/primitives/paragraph-index.js +25 -6
- package/dist/primitives/paragraph-index.js.map +1 -1
- package/dist/primitives/styles.d.ts +88 -20
- package/dist/primitives/styles.d.ts.map +1 -1
- package/dist/primitives/styles.js +207 -40
- package/dist/primitives/styles.js.map +1 -1
- package/dist/primitives/zip.d.ts +6 -0
- package/dist/primitives/zip.d.ts.map +1 -1
- package/dist/primitives/zip.js +7 -1
- package/dist/primitives/zip.js.map +1 -1
- package/package.json +2 -2
|
@@ -8,6 +8,21 @@ export type StyleDef = {
|
|
|
8
8
|
};
|
|
9
9
|
export type StylesModel = {
|
|
10
10
|
byId: Map<string, StyleDef>;
|
|
11
|
+
/**
|
|
12
|
+
* `w:docDefaults/w:rPrDefault/w:rPr`, when the styles part declares one.
|
|
13
|
+
* {@link extractEffectiveRunFormatting} reads it as the lowest-precedence
|
|
14
|
+
* run-property layer (#753). Optional so callers that build the `{ byId }`
|
|
15
|
+
* shape by hand remain source-compatible; such a model has no document
|
|
16
|
+
* defaults.
|
|
17
|
+
*/
|
|
18
|
+
docDefaultsRPr?: Element | null;
|
|
19
|
+
/**
|
|
20
|
+
* Every `w:rPr` carried by a table style, including the conditional
|
|
21
|
+
* `w:tblStylePr/w:rPr` blocks. A detection-only probe: the resolver does not
|
|
22
|
+
* read table styles, so a declaration here that could change a property of a
|
|
23
|
+
* run inside a table makes that property unresolved.
|
|
24
|
+
*/
|
|
25
|
+
tableStyleRPrs?: Element[];
|
|
11
26
|
};
|
|
12
27
|
export type ThemeModel = {
|
|
13
28
|
fonts: Map<string, string>;
|
|
@@ -34,22 +49,45 @@ export type ParagraphFormatting = {
|
|
|
34
49
|
outlineLevel: number | null;
|
|
35
50
|
};
|
|
36
51
|
export declare function extractParagraphFormatting(pPr: Element | null, styles: StylesModel): ParagraphFormatting;
|
|
52
|
+
/**
|
|
53
|
+
* Effective run formatting. `null` means the resolver could not establish the
|
|
54
|
+
* property, and never stands in for a rendered default. That happens when:
|
|
55
|
+
* - no layer the resolver reads above `w:docDefaults` declares the property,
|
|
56
|
+
* the run is inside a table, and a table style's run properties declare a
|
|
57
|
+
* value that differs from what `w:docDefaults` (or the OOXML default) gives
|
|
58
|
+
* — table styles sit above document defaults and are not read;
|
|
59
|
+
* - the nearest layer that declares it does so through a theme colour or
|
|
60
|
+
* theme font reference that cannot be resolved (no theme, or no matching
|
|
61
|
+
* theme entry, and no explicit fallback value); or
|
|
62
|
+
* - it has no OOXML default (`fontName`, `fontSizePt`) and no consulted layer,
|
|
63
|
+
* `w:docDefaults` included, declares it.
|
|
64
|
+
*
|
|
65
|
+
* A property declared nowhere in the document resolves to its OOXML default:
|
|
66
|
+
* `false` for toggles and `underline`, `false` for `highlightVal` (no
|
|
67
|
+
* highlight), and `'auto'` for `colorHex`. Explicit "off" declarations
|
|
68
|
+
* (`w:b w:val="0"`, `w:u w:val="none"`, `w:highlight w:val="none"`,
|
|
69
|
+
* `w:color w:val="auto"`) resolve to the same values, and like any other
|
|
70
|
+
* declaration they stop inheritance: `w:color w:val="auto"` on a run hides a
|
|
71
|
+
* character style's red, and `w:highlight w:val="none"` hides its highlight.
|
|
72
|
+
*
|
|
73
|
+
* @see https://github.com/UseJunior/safe-docx/issues/752
|
|
74
|
+
*/
|
|
37
75
|
export type RunFormatting = {
|
|
38
|
-
bold: boolean;
|
|
39
|
-
italic: boolean;
|
|
40
|
-
caps: boolean;
|
|
41
|
-
smallCaps: boolean;
|
|
42
|
-
strike: boolean;
|
|
43
|
-
emboss: boolean;
|
|
44
|
-
imprint: boolean;
|
|
45
|
-
outline: boolean;
|
|
46
|
-
shadow: boolean;
|
|
47
|
-
vanish: boolean;
|
|
48
|
-
underline: boolean;
|
|
49
|
-
highlightVal: string | null;
|
|
50
|
-
fontName: string;
|
|
51
|
-
fontSizePt: number;
|
|
52
|
-
colorHex: string | null;
|
|
76
|
+
bold: boolean | null;
|
|
77
|
+
italic: boolean | null;
|
|
78
|
+
caps: boolean | null;
|
|
79
|
+
smallCaps: boolean | null;
|
|
80
|
+
strike: boolean | null;
|
|
81
|
+
emboss: boolean | null;
|
|
82
|
+
imprint: boolean | null;
|
|
83
|
+
outline: boolean | null;
|
|
84
|
+
shadow: boolean | null;
|
|
85
|
+
vanish: boolean | null;
|
|
86
|
+
underline: boolean | null;
|
|
87
|
+
highlightVal: string | false | null;
|
|
88
|
+
fontName: string | null;
|
|
89
|
+
fontSizePt: number | null;
|
|
90
|
+
colorHex: string | 'auto' | null;
|
|
53
91
|
};
|
|
54
92
|
/**
|
|
55
93
|
* Tri-state run formatting resolved from a named style's `basedOn` chain: `null` means no
|
|
@@ -71,8 +109,8 @@ export declare function extractStyleRunFormatting(styles: StylesModel, styleId:
|
|
|
71
109
|
* the run declares. Ordinary properties are taken from the first layer that
|
|
72
110
|
* specifies them: direct `w:rPr` on the run, then the `w:rStyle`
|
|
73
111
|
* character-style `basedOn` chain, then the paragraph mark's `w:rPr` inside
|
|
74
|
-
* `pPr`, then the paragraph style's `basedOn` chain
|
|
75
|
-
*
|
|
112
|
+
* `pPr`, then the paragraph style's `basedOn` chain, and finally the
|
|
113
|
+
* document defaults (`w:docDefaults/w:rPrDefault/w:rPr`).
|
|
76
114
|
*
|
|
77
115
|
* Each property is resolved independently down the chain — a style that
|
|
78
116
|
* specifies only color does not mask an ancestor's bold.
|
|
@@ -84,9 +122,17 @@ export declare function extractStyleRunFormatting(styles: StylesModel, styleId:
|
|
|
84
122
|
* `w:caps`, `w:smallCaps`, `w:strike`, `w:emboss`, `w:imprint`, `w:outline`,
|
|
85
123
|
* `w:shadow`, and `w:vanish`.
|
|
86
124
|
*
|
|
87
|
-
*
|
|
88
|
-
*
|
|
89
|
-
*
|
|
125
|
+
* Document defaults seed toggle evaluation as an absolute base value rather
|
|
126
|
+
* than acting as another parity level (see {@link resolveToggleProperty}).
|
|
127
|
+
*
|
|
128
|
+
* Not read: table-style run properties. For a run inside a table, when a
|
|
129
|
+
* property is declared nowhere above the document defaults and a table style
|
|
130
|
+
* declares a value that would change it (for a toggle: turns it on), the
|
|
131
|
+
* result is `null` (unresolved) rather than a guess; when no layer declares it
|
|
132
|
+
* at all, the result is the OOXML default (see {@link RunFormatting}). A
|
|
133
|
+
* toggle that a direct layer sets absolutely is resolved regardless of table
|
|
134
|
+
* styles. Numbering-level `rPr` formats only the list label (`w:lvlText`),
|
|
135
|
+
* never the paragraph's runs, so it is out of scope.
|
|
90
136
|
*
|
|
91
137
|
* Part of docx-core's public surface (see `src/index.ts`) so external
|
|
92
138
|
* diagnostics — `scripts/check_docx_formatting_loss.mjs` today, the planned
|
|
@@ -102,7 +148,10 @@ export declare function extractStyleRunFormatting(styles: StylesModel, styleId:
|
|
|
102
148
|
* omitted, direct font/color fallbacks retain their previous behavior
|
|
103
149
|
*
|
|
104
150
|
* @conformance ECMA-376 edition 5, Part 1 § 17.7.3
|
|
151
|
+
* @conformance ECMA-376 edition 5, Part 1 § 17.7.5.1
|
|
105
152
|
* @see https://github.com/UseJunior/safe-docx/issues/737
|
|
153
|
+
* @see https://github.com/UseJunior/safe-docx/issues/752
|
|
154
|
+
* @see https://github.com/UseJunior/safe-docx/issues/753
|
|
106
155
|
*/
|
|
107
156
|
export declare function extractEffectiveRunFormatting(params: {
|
|
108
157
|
run: Element;
|
|
@@ -111,4 +160,23 @@ export declare function extractEffectiveRunFormatting(params: {
|
|
|
111
160
|
styles: StylesModel;
|
|
112
161
|
theme?: ThemeModel | null;
|
|
113
162
|
}): RunFormatting;
|
|
163
|
+
/**
|
|
164
|
+
* Effective run formatting for annotation bodies (comments, footnotes), whose
|
|
165
|
+
* `tagged_text` is emitted in `full` mode and read back by docx-markdoc.
|
|
166
|
+
* Toggles, underline and highlight resolve through every layer, document
|
|
167
|
+
* defaults included. Colour, size and font are reported only when a layer
|
|
168
|
+
* above `w:docDefaults` declares them, otherwise as not declared (`'auto'` /
|
|
169
|
+
* `null`), so the inherited document font is not tagged as `face` on every run
|
|
170
|
+
* and a direct value that restates the document default is still emitted
|
|
171
|
+
* over a character style that would otherwise show through on import.
|
|
172
|
+
*
|
|
173
|
+
* @see https://github.com/UseJunior/safe-docx/issues/753
|
|
174
|
+
*/
|
|
175
|
+
export declare function extractAnnotationRunFormatting(params: {
|
|
176
|
+
run: Element;
|
|
177
|
+
paragraphPPr: Element | null;
|
|
178
|
+
paragraphStyleId: string | null;
|
|
179
|
+
styles: StylesModel;
|
|
180
|
+
theme?: ThemeModel | null;
|
|
181
|
+
}): RunFormatting;
|
|
114
182
|
//# sourceMappingURL=styles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../src/primitives/styles.ts"],"names":[],"mappings":"AASA,MAAM,MAAM,QAAQ,GAAG;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC;IACpB,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../src/primitives/styles.ts"],"names":[],"mappings":"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"}
|
|
@@ -78,7 +78,11 @@ export function parseThemeXml(themeDoc) {
|
|
|
78
78
|
export function parseStylesXml(stylesDoc) {
|
|
79
79
|
const byId = new Map();
|
|
80
80
|
if (!stylesDoc)
|
|
81
|
-
return { byId };
|
|
81
|
+
return { byId, docDefaultsRPr: null, tableStyleRPrs: [] };
|
|
82
|
+
const docDefaults = stylesDoc.getElementsByTagNameNS(OOXML.W_NS, W.docDefaults).item(0);
|
|
83
|
+
const rPrDefault = docDefaults ? getFirstChild(docDefaults, OOXML.W_NS, W.rPrDefault) : null;
|
|
84
|
+
const docDefaultsRPr = rPrDefault ? getFirstChild(rPrDefault, OOXML.W_NS, W.rPr) : null;
|
|
85
|
+
const tableStyleRPrs = [];
|
|
82
86
|
const styles = Array.from(stylesDoc.getElementsByTagNameNS(OOXML.W_NS, W.style));
|
|
83
87
|
for (const st of styles) {
|
|
84
88
|
const id = getWAttr(st, 'styleId');
|
|
@@ -90,16 +94,26 @@ export function parseStylesXml(stylesDoc) {
|
|
|
90
94
|
const rPr = getFirstChild(st, OOXML.W_NS, W.rPr);
|
|
91
95
|
const name = nameEl ? (getWAttr(nameEl, 'val') ?? id) : id;
|
|
92
96
|
const basedOn = basedOnEl ? (getWAttr(basedOnEl, 'val') ?? null) : null;
|
|
97
|
+
const styleType = getWAttr(st, 'type');
|
|
98
|
+
if (styleType === 'table') {
|
|
99
|
+
if (rPr)
|
|
100
|
+
tableStyleRPrs.push(rPr);
|
|
101
|
+
for (const conditional of Array.from(st.getElementsByTagNameNS(OOXML.W_NS, 'tblStylePr'))) {
|
|
102
|
+
const conditionalRPr = getFirstChild(conditional, OOXML.W_NS, W.rPr);
|
|
103
|
+
if (conditionalRPr)
|
|
104
|
+
tableStyleRPrs.push(conditionalRPr);
|
|
105
|
+
}
|
|
106
|
+
}
|
|
93
107
|
byId.set(id, {
|
|
94
108
|
styleId: id,
|
|
95
|
-
styleType
|
|
109
|
+
styleType,
|
|
96
110
|
name,
|
|
97
111
|
basedOn,
|
|
98
112
|
pPr: pPr ?? null,
|
|
99
113
|
rPr: rPr ?? null,
|
|
100
114
|
});
|
|
101
115
|
}
|
|
102
|
-
return { byId };
|
|
116
|
+
return { byId, docDefaultsRPr: docDefaultsRPr ?? null, tableStyleRPrs };
|
|
103
117
|
}
|
|
104
118
|
function resolveStyleChain(model, styleId) {
|
|
105
119
|
const chain = [];
|
|
@@ -219,27 +233,63 @@ function parseBoolProp(parent, tagLocal) {
|
|
|
219
233
|
return true;
|
|
220
234
|
}
|
|
221
235
|
/**
|
|
222
|
-
* Evaluate a toggle property in hierarchy order.
|
|
223
|
-
*
|
|
224
|
-
* direct formatting sets an absolute
|
|
236
|
+
* Evaluate a toggle property in hierarchy order. Document defaults seed the
|
|
237
|
+
* starting value; style-level true values invert the accumulated state while
|
|
238
|
+
* style-level false values preserve it; direct formatting sets an absolute
|
|
239
|
+
* value.
|
|
240
|
+
*
|
|
241
|
+
* Microsoft's ISO/IEC 29500 implementation note for §17.7.3 says Word falls
|
|
242
|
+
* back to the document defaults when a hierarchy level supplies no value and
|
|
243
|
+
* treats the document-default value as the base for subsequent parity.
|
|
244
|
+
* MS-OE376 §2.7.7 documents a separate Word deviation for paragraph styles but
|
|
245
|
+
* does not make `w:docDefaults` another toggling style level. So defaults seed
|
|
246
|
+
* the state rather than invert it.
|
|
225
247
|
*
|
|
226
248
|
* @conformance ECMA-376 edition 5, Part 1 § 17.7.3
|
|
227
249
|
* @see https://github.com/UseJunior/safe-docx/issues/737
|
|
250
|
+
* @see https://github.com/UseJunior/safe-docx/issues/753
|
|
251
|
+
* @see https://learn.microsoft.com/en-us/openspecs/office_standards/ms-oi29500/f7130225-2368-48f3-acae-a9d278d0fb25
|
|
252
|
+
* @see https://learn.microsoft.com/en-us/openspecs/office_standards/ms-oe376/f936abaf-a9cb-439b-923d-7f688d9202e9
|
|
228
253
|
*/
|
|
229
|
-
function resolveToggleProperty(steps, tagLocal) {
|
|
254
|
+
function resolveToggleProperty(steps, tagLocal, unreadLayerTurnsOn) {
|
|
230
255
|
let effective = false;
|
|
256
|
+
// Once a direct step sets an absolute value, the base the hierarchy started
|
|
257
|
+
// from no longer affects the result.
|
|
258
|
+
let absolute = false;
|
|
231
259
|
for (const { rPr, kind } of steps) {
|
|
232
260
|
const declaration = parseBoolProp(rPr, tagLocal);
|
|
233
261
|
if (declaration === null)
|
|
234
262
|
continue;
|
|
235
|
-
if (kind === '
|
|
263
|
+
if (kind === 'default') {
|
|
264
|
+
// The seed sits below every unread layer (table styles), so it does not
|
|
265
|
+
// make the result absolute.
|
|
236
266
|
effective = declaration;
|
|
237
267
|
}
|
|
268
|
+
else if (kind === 'direct') {
|
|
269
|
+
effective = declaration;
|
|
270
|
+
absolute = true;
|
|
271
|
+
}
|
|
238
272
|
else if (declaration) {
|
|
239
273
|
effective = !effective;
|
|
240
274
|
}
|
|
241
275
|
}
|
|
242
|
-
|
|
276
|
+
// The walk starts from the document default (or `false`, the OOXML
|
|
277
|
+
// default). Table styles sit between that seed and the paragraph style and
|
|
278
|
+
// are not read, so a table style that turns the toggle on leaves the result
|
|
279
|
+
// depending on a layer the resolver does not read.
|
|
280
|
+
if (absolute || !unreadLayerTurnsOn)
|
|
281
|
+
return effective;
|
|
282
|
+
return null;
|
|
283
|
+
}
|
|
284
|
+
function isInsideTable(node) {
|
|
285
|
+
for (let cur = node.parentNode; cur; cur = cur.parentNode) {
|
|
286
|
+
if (cur.nodeType !== 1)
|
|
287
|
+
continue;
|
|
288
|
+
const el = cur;
|
|
289
|
+
if (el.localName === W.tbl && el.namespaceURI === OOXML.W_NS)
|
|
290
|
+
return true;
|
|
291
|
+
}
|
|
292
|
+
return false;
|
|
243
293
|
}
|
|
244
294
|
function parseUnderline(parent) {
|
|
245
295
|
if (!parent)
|
|
@@ -324,13 +374,59 @@ function parseHighlightVal(parent) {
|
|
|
324
374
|
return null;
|
|
325
375
|
return v;
|
|
326
376
|
}
|
|
377
|
+
/**
|
|
378
|
+
* Marks a layer that *does* declare a property whose value cannot be
|
|
379
|
+
* established — a theme colour or theme font with no theme to resolve it
|
|
380
|
+
* against. Resolution stops at that layer (a lower layer must not show
|
|
381
|
+
* through) and the property is reported as unresolved.
|
|
382
|
+
*/
|
|
383
|
+
const DECLARED_UNRESOLVED = Symbol('declared-unresolved');
|
|
384
|
+
/**
|
|
385
|
+
* `'auto'` for a declared automatic colour, the hex otherwise, `null` if
|
|
386
|
+
* undeclared, {@link DECLARED_UNRESOLVED} for a theme colour reference that
|
|
387
|
+
* resolves neither through the theme nor through an explicit hex `w:val`.
|
|
388
|
+
*/
|
|
389
|
+
function parseEffectiveColorHex(parent, theme) {
|
|
390
|
+
if (!parent)
|
|
391
|
+
return null;
|
|
392
|
+
const el = getFirstChild(parent, OOXML.W_NS, W.color);
|
|
393
|
+
if (!el)
|
|
394
|
+
return null;
|
|
395
|
+
const hex = parseColorHex(parent, theme);
|
|
396
|
+
if (hex !== null)
|
|
397
|
+
return hex;
|
|
398
|
+
return getWAttr(el, 'themeColor') ? DECLARED_UNRESOLVED : 'auto';
|
|
399
|
+
}
|
|
400
|
+
/**
|
|
401
|
+
* The font name, `null` if `w:rFonts` names none, or {@link DECLARED_UNRESOLVED}
|
|
402
|
+
* when it names the Latin font only through a theme reference that does not
|
|
403
|
+
* resolve and carries no explicit `w:ascii` / `w:hAnsi` fallback.
|
|
404
|
+
*/
|
|
405
|
+
function parseEffectiveFontName(parent, theme) {
|
|
406
|
+
const name = parseFontName(parent, theme);
|
|
407
|
+
if (name !== null || !parent)
|
|
408
|
+
return name;
|
|
409
|
+
const el = getFirstChild(parent, OOXML.W_NS, W.rFonts);
|
|
410
|
+
if (!el)
|
|
411
|
+
return null;
|
|
412
|
+
return getWAttr(el, 'asciiTheme') || getWAttr(el, 'hAnsiTheme') ? DECLARED_UNRESOLVED : null;
|
|
413
|
+
}
|
|
414
|
+
/** `false` for a declared `none`, the value otherwise, `null` if undeclared. */
|
|
415
|
+
function parseEffectiveHighlightVal(parent) {
|
|
416
|
+
if (!parent)
|
|
417
|
+
return null;
|
|
418
|
+
const el = getFirstChild(parent, OOXML.W_NS, W.highlight);
|
|
419
|
+
if (!el)
|
|
420
|
+
return null;
|
|
421
|
+
return parseHighlightVal(parent) ?? false;
|
|
422
|
+
}
|
|
327
423
|
/**
|
|
328
424
|
* Resolve the run formatting a reader actually sees, not merely the formatting
|
|
329
425
|
* the run declares. Ordinary properties are taken from the first layer that
|
|
330
426
|
* specifies them: direct `w:rPr` on the run, then the `w:rStyle`
|
|
331
427
|
* character-style `basedOn` chain, then the paragraph mark's `w:rPr` inside
|
|
332
|
-
* `pPr`, then the paragraph style's `basedOn` chain
|
|
333
|
-
*
|
|
428
|
+
* `pPr`, then the paragraph style's `basedOn` chain, and finally the
|
|
429
|
+
* document defaults (`w:docDefaults/w:rPrDefault/w:rPr`).
|
|
334
430
|
*
|
|
335
431
|
* Each property is resolved independently down the chain — a style that
|
|
336
432
|
* specifies only color does not mask an ancestor's bold.
|
|
@@ -342,9 +438,17 @@ function parseHighlightVal(parent) {
|
|
|
342
438
|
* `w:caps`, `w:smallCaps`, `w:strike`, `w:emboss`, `w:imprint`, `w:outline`,
|
|
343
439
|
* `w:shadow`, and `w:vanish`.
|
|
344
440
|
*
|
|
345
|
-
*
|
|
346
|
-
*
|
|
347
|
-
*
|
|
441
|
+
* Document defaults seed toggle evaluation as an absolute base value rather
|
|
442
|
+
* than acting as another parity level (see {@link resolveToggleProperty}).
|
|
443
|
+
*
|
|
444
|
+
* Not read: table-style run properties. For a run inside a table, when a
|
|
445
|
+
* property is declared nowhere above the document defaults and a table style
|
|
446
|
+
* declares a value that would change it (for a toggle: turns it on), the
|
|
447
|
+
* result is `null` (unresolved) rather than a guess; when no layer declares it
|
|
448
|
+
* at all, the result is the OOXML default (see {@link RunFormatting}). A
|
|
449
|
+
* toggle that a direct layer sets absolutely is resolved regardless of table
|
|
450
|
+
* styles. Numbering-level `rPr` formats only the list label (`w:lvlText`),
|
|
451
|
+
* never the paragraph's runs, so it is out of scope.
|
|
348
452
|
*
|
|
349
453
|
* Part of docx-core's public surface (see `src/index.ts`) so external
|
|
350
454
|
* diagnostics — `scripts/check_docx_formatting_loss.mjs` today, the planned
|
|
@@ -360,7 +464,10 @@ function parseHighlightVal(parent) {
|
|
|
360
464
|
* omitted, direct font/color fallbacks retain their previous behavior
|
|
361
465
|
*
|
|
362
466
|
* @conformance ECMA-376 edition 5, Part 1 § 17.7.3
|
|
467
|
+
* @conformance ECMA-376 edition 5, Part 1 § 17.7.5.1
|
|
363
468
|
* @see https://github.com/UseJunior/safe-docx/issues/737
|
|
469
|
+
* @see https://github.com/UseJunior/safe-docx/issues/752
|
|
470
|
+
* @see https://github.com/UseJunior/safe-docx/issues/753
|
|
364
471
|
*/
|
|
365
472
|
export function extractEffectiveRunFormatting(params) {
|
|
366
473
|
const { run, paragraphPPr, paragraphStyleId, styles, theme = null } = params;
|
|
@@ -373,44 +480,104 @@ export function extractEffectiveRunFormatting(params) {
|
|
|
373
480
|
const rStyleChain = resolveStyleChain(styles, rStyleId);
|
|
374
481
|
const paragraphStyleChain = resolveStyleChain(styles, paragraphStyleId);
|
|
375
482
|
// Priority: direct rPr → rStyle chain rPrs → paragraph mark rPr → paragraph
|
|
376
|
-
// style chain rPrs. Each property resolves
|
|
377
|
-
// chain member that specifies only color
|
|
378
|
-
// so the sources are the individual rPr
|
|
379
|
-
// member that has an rPr" (peer review
|
|
380
|
-
// above already resolved per property).
|
|
381
|
-
const
|
|
483
|
+
// style chain rPrs → document defaults. Each property resolves
|
|
484
|
+
// independently down this list: a chain member that specifies only color
|
|
485
|
+
// must not mask an ancestor's bold, so the sources are the individual rPr
|
|
486
|
+
// containers, never "the first chain member that has an rPr" (peer review
|
|
487
|
+
// on #684; extractStyleRunFormatting above already resolved per property).
|
|
488
|
+
const sourcesAboveDefaults = [
|
|
382
489
|
rPr,
|
|
383
490
|
...rStyleChain.map((s) => s.rPr),
|
|
384
491
|
pRPr,
|
|
385
492
|
...paragraphStyleChain.map((s) => s.rPr),
|
|
386
493
|
];
|
|
387
|
-
const
|
|
388
|
-
// Apply from the
|
|
389
|
-
// Paragraph-mark rPr is direct
|
|
390
|
-
//
|
|
391
|
-
// supplies the final absolute override.
|
|
494
|
+
const docDefaultsRPr = styles.docDefaultsRPr ?? null;
|
|
495
|
+
// Apply from the document defaults through the least specific style
|
|
496
|
+
// ancestor to direct run formatting. Paragraph-mark rPr is direct
|
|
497
|
+
// formatting at its hierarchy level; a character style can still contribute
|
|
498
|
+
// above it before the run's own rPr supplies the final absolute override.
|
|
392
499
|
const toggleSteps = [
|
|
500
|
+
{ rPr: docDefaultsRPr, kind: 'default' },
|
|
393
501
|
...[...paragraphStyleChain].reverse().map((style) => ({ rPr: style.rPr, kind: 'style' })),
|
|
394
502
|
{ rPr: pRPr, kind: 'direct' },
|
|
395
503
|
...[...rStyleChain].reverse().map((style) => ({ rPr: style.rPr, kind: 'style' })),
|
|
396
504
|
{ rPr, kind: 'direct' },
|
|
397
505
|
];
|
|
506
|
+
// Table styles are the one layer this resolver does not read. They sit
|
|
507
|
+
// between the document defaults and the paragraph style, so for a property
|
|
508
|
+
// declared nowhere above the document defaults, a table-style declaration
|
|
509
|
+
// that differs from the base below it makes the property unresolved. A
|
|
510
|
+
// declaration that restates that base cannot change the outcome.
|
|
511
|
+
const tableLayers = styles.tableStyleRPrs && styles.tableStyleRPrs.length > 0 && isInsideTable(run)
|
|
512
|
+
? styles.tableStyleRPrs
|
|
513
|
+
: [];
|
|
514
|
+
const toggle = (tagLocal) => resolveToggleProperty(toggleSteps, tagLocal, tableLayers.some((layer) => parseBoolProp(layer, tagLocal) === true));
|
|
515
|
+
/**
|
|
516
|
+
* Nearest declaration above the document defaults; otherwise the document
|
|
517
|
+
* default, otherwise `ooxmlDefault` (`null` for a property with no OOXML
|
|
518
|
+
* default), unless an unread table style could change that base.
|
|
519
|
+
*/
|
|
520
|
+
// Hex colours and font names compare case-insensitively: `abcdef` restates
|
|
521
|
+
// `ABCDEF`.
|
|
522
|
+
const sameValue = (a, b) => typeof a === 'string' && typeof b === 'string' ? a.toUpperCase() === b.toUpperCase() : a === b;
|
|
523
|
+
const resolveLayered = (parse, ooxmlDefault) => {
|
|
524
|
+
const above = firstNonNull(sourcesAboveDefaults.map(parse));
|
|
525
|
+
if (above === DECLARED_UNRESOLVED)
|
|
526
|
+
return null;
|
|
527
|
+
if (above !== null)
|
|
528
|
+
return above;
|
|
529
|
+
const base = parse(docDefaultsRPr) ?? ooxmlDefault;
|
|
530
|
+
if (tableLayers.some((layer) => {
|
|
531
|
+
const declared = parse(layer);
|
|
532
|
+
return declared !== null && !sameValue(declared, base);
|
|
533
|
+
})) {
|
|
534
|
+
return null;
|
|
535
|
+
}
|
|
536
|
+
return base === DECLARED_UNRESOLVED ? null : base;
|
|
537
|
+
};
|
|
538
|
+
return {
|
|
539
|
+
bold: toggle(W.b),
|
|
540
|
+
italic: toggle(W.i),
|
|
541
|
+
caps: toggle(W.caps),
|
|
542
|
+
smallCaps: toggle(W.smallCaps),
|
|
543
|
+
strike: toggle(W.strike),
|
|
544
|
+
emboss: toggle(W.emboss),
|
|
545
|
+
imprint: toggle(W.imprint),
|
|
546
|
+
outline: toggle(W.outline),
|
|
547
|
+
shadow: toggle(W.shadow),
|
|
548
|
+
vanish: toggle(W.vanish),
|
|
549
|
+
underline: resolveLayered(parseUnderline, false),
|
|
550
|
+
highlightVal: resolveLayered(parseEffectiveHighlightVal, false),
|
|
551
|
+
// No OOXML default: the rendered font and size are application-defined
|
|
552
|
+
// when nothing declares them, so an undeclared value stays unresolved.
|
|
553
|
+
fontName: resolveLayered((el) => parseEffectiveFontName(el, theme), null),
|
|
554
|
+
fontSizePt: resolveLayered(parseFontSizePt, null),
|
|
555
|
+
colorHex: resolveLayered((el) => parseEffectiveColorHex(el, theme), 'auto'),
|
|
556
|
+
};
|
|
557
|
+
}
|
|
558
|
+
/**
|
|
559
|
+
* Effective run formatting for annotation bodies (comments, footnotes), whose
|
|
560
|
+
* `tagged_text` is emitted in `full` mode and read back by docx-markdoc.
|
|
561
|
+
* Toggles, underline and highlight resolve through every layer, document
|
|
562
|
+
* defaults included. Colour, size and font are reported only when a layer
|
|
563
|
+
* above `w:docDefaults` declares them, otherwise as not declared (`'auto'` /
|
|
564
|
+
* `null`), so the inherited document font is not tagged as `face` on every run
|
|
565
|
+
* and a direct value that restates the document default is still emitted
|
|
566
|
+
* over a character style that would otherwise show through on import.
|
|
567
|
+
*
|
|
568
|
+
* @see https://github.com/UseJunior/safe-docx/issues/753
|
|
569
|
+
*/
|
|
570
|
+
export function extractAnnotationRunFormatting(params) {
|
|
571
|
+
const effective = extractEffectiveRunFormatting(params);
|
|
572
|
+
const declared = extractEffectiveRunFormatting({
|
|
573
|
+
...params,
|
|
574
|
+
styles: { ...params.styles, docDefaultsRPr: null },
|
|
575
|
+
});
|
|
398
576
|
return {
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
strike: resolveToggleProperty(toggleSteps, W.strike),
|
|
404
|
-
emboss: resolveToggleProperty(toggleSteps, W.emboss),
|
|
405
|
-
imprint: resolveToggleProperty(toggleSteps, W.imprint),
|
|
406
|
-
outline: resolveToggleProperty(toggleSteps, W.outline),
|
|
407
|
-
shadow: resolveToggleProperty(toggleSteps, W.shadow),
|
|
408
|
-
vanish: resolveToggleProperty(toggleSteps, W.vanish),
|
|
409
|
-
underline: resolve(parseUnderline) ?? false,
|
|
410
|
-
highlightVal: resolve(parseHighlightVal),
|
|
411
|
-
fontName: resolve((el) => parseFontName(el, theme)) ?? '',
|
|
412
|
-
fontSizePt: resolve(parseFontSizePt) ?? 0,
|
|
413
|
-
colorHex: resolve((el) => parseColorHex(el, theme)),
|
|
577
|
+
...effective,
|
|
578
|
+
colorHex: declared.colorHex,
|
|
579
|
+
fontSizePt: declared.fontSizePt,
|
|
580
|
+
fontName: declared.fontName,
|
|
414
581
|
};
|
|
415
582
|
}
|
|
416
583
|
//# sourceMappingURL=styles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/primitives/styles.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/primitives/styles.ts"],"names":[],"mappings":"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"}
|
package/dist/primitives/zip.d.ts
CHANGED
|
@@ -42,6 +42,12 @@ export declare function createZipBuffer(files: Record<string, string | Buffer |
|
|
|
42
42
|
compressionLevel?: number;
|
|
43
43
|
fileDate?: Date;
|
|
44
44
|
}): Promise<Buffer>;
|
|
45
|
+
/**
|
|
46
|
+
* Read one entry of a zip buffer as text, or null when the entry is missing.
|
|
47
|
+
* An XML part is normalized like `DocxZip.readText`: a leading byte-order
|
|
48
|
+
* mark (and whitespace before the first `<`) is dropped, so the result can be
|
|
49
|
+
* handed straight to `parseXml`.
|
|
50
|
+
*/
|
|
45
51
|
export declare function readZipText(buffer: Buffer, path: string): Promise<string | null>;
|
|
46
52
|
export declare function inspectZipEntries(buffer: Buffer): Promise<ZipEntryInfo[]>;
|
|
47
53
|
//# sourceMappingURL=zip.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zip.d.ts","sourceRoot":"","sources":["../../src/primitives/zip.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,SAAS,CAAC;AAEjD;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,MAAiC,CAAC;AAExD,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAsBF,qBAAa,OAAO;IAClB,OAAO,CAAC,GAAG,CAAQ;IACnB,8DAA8D;IAC9D,OAAO,CAAC,aAAa,CAAoC;IAEzD,OAAO;WAIM,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAK7C,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAMvC,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAM1D,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAM3C,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI9B,SAAS,IAAI,MAAM,EAAE;IAQrB;;;;;;;OAOG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;YAMvC,SAAS;CA8BxB;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC,EACnD,IAAI,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,cAAc,CAAC;IAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,IAAI,CAAA;CAAE,GAClF,OAAO,CAAC,MAAM,CAAC,CAkBjB;AAED,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAKtF;AAED,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAW/E"}
|
|
1
|
+
{"version":3,"file":"zip.d.ts","sourceRoot":"","sources":["../../src/primitives/zip.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,SAAS,CAAC;AAEjD;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,MAAiC,CAAC;AAExD,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAsBF,qBAAa,OAAO;IAClB,OAAO,CAAC,GAAG,CAAQ;IACnB,8DAA8D;IAC9D,OAAO,CAAC,aAAa,CAAoC;IAEzD,OAAO;WAIM,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAK7C,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAMvC,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAM1D,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAM3C,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI9B,SAAS,IAAI,MAAM,EAAE;IAQrB;;;;;;;OAOG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;YAMvC,SAAS;CA8BxB;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC,EACnD,IAAI,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,cAAc,CAAC;IAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,IAAI,CAAA;CAAE,GAClF,OAAO,CAAC,MAAM,CAAC,CAkBjB;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAKtF;AAED,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAW/E"}
|
package/dist/primitives/zip.js
CHANGED
|
@@ -126,12 +126,18 @@ export async function createZipBuffer(files, opts) {
|
|
|
126
126
|
});
|
|
127
127
|
return out;
|
|
128
128
|
}
|
|
129
|
+
/**
|
|
130
|
+
* Read one entry of a zip buffer as text, or null when the entry is missing.
|
|
131
|
+
* An XML part is normalized like `DocxZip.readText`: a leading byte-order
|
|
132
|
+
* mark (and whitespace before the first `<`) is dropped, so the result can be
|
|
133
|
+
* handed straight to `parseXml`.
|
|
134
|
+
*/
|
|
129
135
|
export async function readZipText(buffer, path) {
|
|
130
136
|
const zip = await JSZip.loadAsync(buffer);
|
|
131
137
|
const file = zip.file(path);
|
|
132
138
|
if (!file)
|
|
133
139
|
return null;
|
|
134
|
-
return file.async('text');
|
|
140
|
+
return normalizePartText(path, await file.async('text'));
|
|
135
141
|
}
|
|
136
142
|
export async function inspectZipEntries(buffer) {
|
|
137
143
|
const zip = await JSZip.loadAsync(buffer);
|