docxmlater 3.5.0 → 4.0.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.
@@ -8,27 +8,27 @@ class StylesManager {
8
8
  styles = new Map();
9
9
  includeBuiltInStyles;
10
10
  static BUILT_IN_STYLE_FACTORIES = new Map([
11
- ['Normal', () => Style_1.Style.createNormalStyle()],
12
- ['Heading1', () => Style_1.Style.createHeadingStyle(1)],
13
- ['Heading2', () => Style_1.Style.createHeadingStyle(2)],
14
- ['Heading3', () => Style_1.Style.createHeadingStyle(3)],
15
- ['Heading4', () => Style_1.Style.createHeadingStyle(4)],
16
- ['Heading5', () => Style_1.Style.createHeadingStyle(5)],
17
- ['Heading6', () => Style_1.Style.createHeadingStyle(6)],
18
- ['Heading7', () => Style_1.Style.createHeadingStyle(7)],
19
- ['Heading8', () => Style_1.Style.createHeadingStyle(8)],
20
- ['Heading9', () => Style_1.Style.createHeadingStyle(9)],
21
- ['Title', () => Style_1.Style.createTitleStyle()],
22
- ['Subtitle', () => Style_1.Style.createSubtitleStyle()],
23
- ['ListParagraph', () => Style_1.Style.createListParagraphStyle()],
24
- ['TOCHeading', () => Style_1.Style.createTOCHeadingStyle()],
25
- ['TableNormal', () => Style_1.Style.createTableNormalStyle()],
26
- ['TableGrid', () => Style_1.Style.createTableGridStyle()],
11
+ ["Normal", () => Style_1.Style.createNormalStyle()],
12
+ ["Heading1", () => Style_1.Style.createHeadingStyle(1)],
13
+ ["Heading2", () => Style_1.Style.createHeadingStyle(2)],
14
+ ["Heading3", () => Style_1.Style.createHeadingStyle(3)],
15
+ ["Heading4", () => Style_1.Style.createHeadingStyle(4)],
16
+ ["Heading5", () => Style_1.Style.createHeadingStyle(5)],
17
+ ["Heading6", () => Style_1.Style.createHeadingStyle(6)],
18
+ ["Heading7", () => Style_1.Style.createHeadingStyle(7)],
19
+ ["Heading8", () => Style_1.Style.createHeadingStyle(8)],
20
+ ["Heading9", () => Style_1.Style.createHeadingStyle(9)],
21
+ ["Title", () => Style_1.Style.createTitleStyle()],
22
+ ["Subtitle", () => Style_1.Style.createSubtitleStyle()],
23
+ ["ListParagraph", () => Style_1.Style.createListParagraphStyle()],
24
+ ["TOCHeading", () => Style_1.Style.createTOCHeadingStyle()],
25
+ ["TableNormal", () => Style_1.Style.createTableNormalStyle()],
26
+ ["TableGrid", () => Style_1.Style.createTableGridStyle()],
27
27
  ]);
28
28
  constructor(includeBuiltInStyles = true) {
29
29
  this.includeBuiltInStyles = includeBuiltInStyles;
30
30
  if (includeBuiltInStyles) {
31
- this.ensureStyleLoaded('Normal');
31
+ this.ensureStyleLoaded("Normal");
32
32
  }
33
33
  }
34
34
  ensureStyleLoaded(styleId) {
@@ -65,18 +65,19 @@ class StylesManager {
65
65
  return Array.from(this.styles.values());
66
66
  }
67
67
  getStylesByType(type) {
68
- return this.getAllStyles().filter(style => style.getType() === type);
68
+ return this.getAllStyles().filter((style) => style.getType() === type);
69
69
  }
70
70
  getQuickStyles() {
71
- return this.getAllStyles().filter(style => {
71
+ return this.getAllStyles().filter((style) => {
72
72
  const props = style.getProperties();
73
- const isQuick = props.qFormat === true || (!props.customStyle && props.qFormat !== false);
73
+ const isQuick = props.qFormat === true ||
74
+ (!props.customStyle && props.qFormat !== false);
74
75
  const isVisible = !props.semiHidden;
75
76
  return isQuick && isVisible;
76
77
  });
77
78
  }
78
79
  getVisibleStyles() {
79
- return this.getAllStyles().filter(style => {
80
+ return this.getAllStyles().filter((style) => {
80
81
  const props = style.getProperties();
81
82
  return !props.semiHidden;
82
83
  });
@@ -102,13 +103,13 @@ class StylesManager {
102
103
  return this.getStyle(props.link);
103
104
  }
104
105
  getTableStyles() {
105
- return this.getAllStyles().filter(style => style.getType() === 'table');
106
+ return this.getAllStyles().filter((style) => style.getType() === "table");
106
107
  }
107
108
  createTableStyle(styleId, name, basedOn) {
108
109
  const style = Style_1.Style.create({
109
110
  styleId,
110
111
  name,
111
- type: 'table',
112
+ type: "table",
112
113
  basedOn,
113
114
  customStyle: true,
114
115
  });
@@ -130,7 +131,7 @@ class StylesManager {
130
131
  }
131
132
  getStats() {
132
133
  const loadedStyles = this.styles.size;
133
- const customStyles = this.getAllStyles().filter(s => s.getProperties().customStyle).length;
134
+ const customStyles = this.getAllStyles().filter((s) => s.getProperties().customStyle).length;
134
135
  return {
135
136
  loadedStyles,
136
137
  availableBuiltInStyles: this.includeBuiltInStyles
@@ -143,7 +144,7 @@ class StylesManager {
143
144
  const style = Style_1.Style.create({
144
145
  styleId,
145
146
  name,
146
- type: 'paragraph',
147
+ type: "paragraph",
147
148
  basedOn,
148
149
  customStyle: true,
149
150
  });
@@ -154,7 +155,7 @@ class StylesManager {
154
155
  const style = Style_1.Style.create({
155
156
  styleId,
156
157
  name,
157
- type: 'character',
158
+ type: "character",
158
159
  basedOn,
159
160
  customStyle: true,
160
161
  });
@@ -168,41 +169,41 @@ class StylesManager {
168
169
  for (const style of this.getAllStyles()) {
169
170
  stylesChildren.push(style.toXML());
170
171
  }
171
- builder.element('w:styles', {
172
- 'xmlns:w': 'http://schemas.openxmlformats.org/wordprocessingml/2006/main',
173
- 'xmlns:r': 'http://schemas.openxmlformats.org/officeDocument/2006/relationships',
172
+ builder.element("w:styles", {
173
+ "xmlns:w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main",
174
+ "xmlns:r": "http://schemas.openxmlformats.org/officeDocument/2006/relationships",
174
175
  }, stylesChildren);
175
176
  return builder.build(true);
176
177
  }
177
178
  generateDocDefaults() {
178
179
  const rPrDefaultChildren = [
179
- XMLBuilder_1.XMLBuilder.wSelf('rFonts', {
180
- 'w:ascii': 'Calibri',
181
- 'w:hAnsi': 'Calibri',
182
- 'w:eastAsia': 'Calibri',
183
- 'w:cs': 'Calibri',
180
+ XMLBuilder_1.XMLBuilder.wSelf("rFonts", {
181
+ "w:ascii": "Calibri",
182
+ "w:hAnsi": "Calibri",
183
+ "w:eastAsia": "Calibri",
184
+ "w:cs": "Calibri",
184
185
  }),
185
- XMLBuilder_1.XMLBuilder.wSelf('sz', { 'w:val': '22' }),
186
- XMLBuilder_1.XMLBuilder.wSelf('szCs', { 'w:val': '22' }),
187
- XMLBuilder_1.XMLBuilder.wSelf('lang', {
188
- 'w:val': 'en-US',
189
- 'w:eastAsia': 'en-US',
190
- 'w:bidi': 'ar-SA',
186
+ XMLBuilder_1.XMLBuilder.wSelf("sz", { "w:val": "22" }),
187
+ XMLBuilder_1.XMLBuilder.wSelf("szCs", { "w:val": "22" }),
188
+ XMLBuilder_1.XMLBuilder.wSelf("lang", {
189
+ "w:val": "en-US",
190
+ "w:eastAsia": "en-US",
191
+ "w:bidi": "ar-SA",
191
192
  }),
192
193
  ];
193
194
  const pPrDefaultChildren = [
194
- XMLBuilder_1.XMLBuilder.wSelf('spacing', {
195
- 'w:after': '200',
196
- 'w:line': '276',
197
- 'w:lineRule': 'auto',
195
+ XMLBuilder_1.XMLBuilder.wSelf("spacing", {
196
+ "w:after": "200",
197
+ "w:line": "276",
198
+ "w:lineRule": "auto",
198
199
  }),
199
200
  ];
200
- return XMLBuilder_1.XMLBuilder.w('docDefaults', undefined, [
201
- XMLBuilder_1.XMLBuilder.w('rPrDefault', undefined, [
202
- XMLBuilder_1.XMLBuilder.w('rPr', undefined, rPrDefaultChildren),
201
+ return XMLBuilder_1.XMLBuilder.w("docDefaults", undefined, [
202
+ XMLBuilder_1.XMLBuilder.w("rPrDefault", undefined, [
203
+ XMLBuilder_1.XMLBuilder.w("rPr", undefined, rPrDefaultChildren),
203
204
  ]),
204
- XMLBuilder_1.XMLBuilder.w('pPrDefault', undefined, [
205
- XMLBuilder_1.XMLBuilder.w('pPr', undefined, pPrDefaultChildren),
205
+ XMLBuilder_1.XMLBuilder.w("pPrDefault", undefined, [
206
+ XMLBuilder_1.XMLBuilder.w("pPr", undefined, pPrDefaultChildren),
206
207
  ]),
207
208
  ]);
208
209
  }
@@ -218,45 +219,45 @@ class StylesManager {
218
219
  errors: [],
219
220
  warnings: [],
220
221
  styleCount: 0,
221
- styleIds: []
222
+ styleIds: [],
222
223
  };
223
224
  if (!xml || xml.trim().length === 0) {
224
225
  result.isValid = false;
225
- result.errors.push('Styles XML is empty or null');
226
+ result.errors.push("Styles XML is empty or null");
226
227
  return result;
227
228
  }
228
- if (xml.includes('<w:') || xml.includes('>')) {
229
+ if (xml.includes("<w:") || xml.includes(">")) {
229
230
  result.isValid = false;
230
- result.errors.push('XML contains escaped tags - possible double-encoding corruption');
231
+ result.errors.push("XML contains escaped tags - possible double-encoding corruption");
231
232
  return result;
232
233
  }
233
- const stylesContent = XMLParser_1.XMLParser.extractBetweenTags(xml, '<w:styles', '</w:styles>');
234
+ const stylesContent = XMLParser_1.XMLParser.extractBetweenTags(xml, "<w:styles", "</w:styles>");
234
235
  if (!stylesContent) {
235
236
  result.isValid = false;
236
- result.errors.push('Missing required <w:styles> root element');
237
+ result.errors.push("Missing required <w:styles> root element");
237
238
  return result;
238
239
  }
239
- if (!xml.includes('xmlns:w=')) {
240
- result.warnings.push('Missing WordprocessingML namespace declaration');
240
+ if (!xml.includes("xmlns:w=")) {
241
+ result.warnings.push("Missing WordprocessingML namespace declaration");
241
242
  }
242
- const styleElements = XMLParser_1.XMLParser.extractElements(stylesContent, 'w:style');
243
+ const styleElements = XMLParser_1.XMLParser.extractElements(stylesContent, "w:style");
243
244
  result.styleCount = styleElements.length;
244
245
  if (styleElements.length === 0) {
245
- result.warnings.push('No styles found in document');
246
+ result.warnings.push("No styles found in document");
246
247
  return result;
247
248
  }
248
- const styleWithoutAttrs = styleElements.filter(el => {
249
- const openTagEnd = el.indexOf('>');
249
+ const styleWithoutAttrs = styleElements.filter((el) => {
250
+ const openTagEnd = el.indexOf(">");
250
251
  const openTag = el.substring(0, openTagEnd);
251
- return !openTag.includes('w:type') || !openTag.includes('w:styleId');
252
+ return !openTag.includes("w:type") || !openTag.includes("w:styleId");
252
253
  });
253
254
  if (styleWithoutAttrs.length > 0) {
254
255
  result.isValid = false;
255
- result.errors.push('Style found without any attributes - w:type and w:styleId are required');
256
+ result.errors.push("Style found without any attributes - w:type and w:styleId are required");
256
257
  }
257
258
  const foundStyleIds = new Set();
258
259
  for (const styleElement of styleElements) {
259
- const styleId = XMLParser_1.XMLParser.extractAttribute(styleElement, 'w:styleId');
260
+ const styleId = XMLParser_1.XMLParser.extractAttribute(styleElement, "w:styleId");
260
261
  if (styleId) {
261
262
  if (foundStyleIds.has(styleId)) {
262
263
  result.isValid = false;
@@ -269,38 +270,150 @@ class StylesManager {
269
270
  }
270
271
  else {
271
272
  result.isValid = false;
272
- result.errors.push('Style found without required w:styleId attribute');
273
+ result.errors.push("Style found without required w:styleId attribute");
273
274
  }
274
- const type = XMLParser_1.XMLParser.extractAttribute(styleElement, 'w:type');
275
+ const type = XMLParser_1.XMLParser.extractAttribute(styleElement, "w:type");
275
276
  if (type) {
276
- if (!['paragraph', 'character', 'table', 'numbering'].includes(type)) {
277
+ if (!["paragraph", "character", "table", "numbering"].includes(type)) {
277
278
  result.warnings.push(`Invalid style type: "${type}"`);
278
279
  }
279
280
  }
280
281
  else {
281
282
  result.isValid = false;
282
- result.errors.push('Style found without required w:type attribute');
283
+ result.errors.push("Style found without required w:type attribute");
283
284
  }
284
- const basedOnElement = XMLParser_1.XMLParser.extractElements(styleElement, 'w:basedOn')[0];
285
+ const basedOnElement = XMLParser_1.XMLParser.extractElements(styleElement, "w:basedOn")[0];
285
286
  if (basedOnElement && styleId) {
286
- const basedOn = XMLParser_1.XMLParser.extractAttribute(basedOnElement, 'w:val');
287
+ const basedOn = XMLParser_1.XMLParser.extractAttribute(basedOnElement, "w:val");
287
288
  if (basedOn && styleId === basedOn) {
288
289
  result.isValid = false;
289
290
  result.errors.push(`Circular reference detected: style "${styleId}" based on itself`);
290
291
  }
291
292
  }
292
293
  }
293
- if (!foundStyleIds.has('Normal')) {
294
+ if (!foundStyleIds.has("Normal")) {
294
295
  result.warnings.push('Missing "Normal" style - document may not render correctly');
295
296
  }
296
- if (xml.charCodeAt(0) === 0xFEFF) {
297
- result.warnings.push('XML contains BOM (Byte Order Mark) - may cause parsing issues');
297
+ if (xml.charCodeAt(0) === 0xfeff) {
298
+ result.warnings.push("XML contains BOM (Byte Order Mark) - may cause parsing issues");
298
299
  }
299
300
  if (result.styleCount === 0) {
300
- result.warnings.push('No styles found in document');
301
+ result.warnings.push("No styles found in document");
301
302
  }
302
303
  return result;
303
304
  }
305
+ searchByName(searchTerm) {
306
+ const term = searchTerm.toLowerCase();
307
+ return this.getAllStyles().filter((style) => style.getName().toLowerCase().includes(term));
308
+ }
309
+ findByFont(fontName) {
310
+ return this.getAllStyles().filter((style) => {
311
+ const runFormatting = style.getRunFormatting();
312
+ return runFormatting?.font === fontName;
313
+ });
314
+ }
315
+ findStyles(predicate) {
316
+ return this.getAllStyles().filter(predicate);
317
+ }
318
+ findUnusedStyles(paragraphs) {
319
+ const usedStyles = new Set();
320
+ for (const para of paragraphs) {
321
+ const styleId = para.getStyle();
322
+ if (styleId) {
323
+ usedStyles.add(styleId);
324
+ }
325
+ }
326
+ const allStyleIds = this.getAllStyles().map((style) => style.getStyleId());
327
+ return allStyleIds.filter((styleId) => !usedStyles.has(styleId));
328
+ }
329
+ cleanupUnusedStyles(paragraphs) {
330
+ const unused = this.findUnusedStyles(paragraphs);
331
+ let count = 0;
332
+ for (const styleId of unused) {
333
+ if (!StylesManager.isBuiltInStyle(styleId)) {
334
+ if (this.removeStyle(styleId)) {
335
+ count++;
336
+ }
337
+ }
338
+ }
339
+ return count;
340
+ }
341
+ validateStyleReferences() {
342
+ const broken = [];
343
+ const circular = [];
344
+ for (const style of this.getAllStyles()) {
345
+ const props = style.getProperties();
346
+ if (props.basedOn && !this.hasStyle(props.basedOn)) {
347
+ broken.push({ styleId: props.styleId, basedOn: props.basedOn });
348
+ }
349
+ const chain = this.getInheritanceChain(props.styleId);
350
+ const ids = chain.map((s) => s.getStyleId());
351
+ if (new Set(ids).size !== ids.length) {
352
+ circular.push(ids);
353
+ }
354
+ }
355
+ return {
356
+ valid: broken.length === 0 && circular.length === 0,
357
+ brokenReferences: broken,
358
+ circularReferences: circular,
359
+ };
360
+ }
361
+ getInheritanceChain(styleId) {
362
+ const chain = [];
363
+ let current = this.getStyle(styleId);
364
+ if (!current) {
365
+ throw new Error(`Style '${styleId}' not found`);
366
+ }
367
+ while (current) {
368
+ chain.unshift(current);
369
+ const props = current.getProperties();
370
+ current = props.basedOn ? this.getStyle(props.basedOn) : undefined;
371
+ }
372
+ return chain;
373
+ }
374
+ getDerivedStyles(baseStyleId) {
375
+ return this.getAllStyles().filter((style) => style.getProperties().basedOn === baseStyleId);
376
+ }
377
+ exportStyle(styleId) {
378
+ const style = this.getStyle(styleId);
379
+ if (!style) {
380
+ throw new Error(`Style '${styleId}' not found`);
381
+ }
382
+ return JSON.stringify(style.getProperties(), null, 2);
383
+ }
384
+ importStyle(json) {
385
+ try {
386
+ const props = JSON.parse(json);
387
+ const style = Style_1.Style.create(props);
388
+ this.addStyle(style);
389
+ return style;
390
+ }
391
+ catch (error) {
392
+ throw new Error(`Failed to import style: ${error instanceof Error ? error.message : "Invalid JSON"}`);
393
+ }
394
+ }
395
+ exportAllStyles() {
396
+ const styles = this.getAllStyles().map((style) => style.getProperties());
397
+ return JSON.stringify(styles, null, 2);
398
+ }
399
+ importStyles(json) {
400
+ try {
401
+ const propsArray = JSON.parse(json);
402
+ if (!Array.isArray(propsArray)) {
403
+ throw new Error("JSON must contain an array of style properties");
404
+ }
405
+ const styles = [];
406
+ for (const props of propsArray) {
407
+ const style = Style_1.Style.create(props);
408
+ this.addStyle(style);
409
+ styles.push(style);
410
+ }
411
+ return styles;
412
+ }
413
+ catch (error) {
414
+ throw new Error(`Failed to import styles: ${error instanceof Error ? error.message : "Invalid JSON"}`);
415
+ }
416
+ }
304
417
  }
305
418
  exports.StylesManager = StylesManager;
306
419
  //# sourceMappingURL=StylesManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StylesManager.js","sourceRoot":"","sources":["../../src/formatting/StylesManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StylesManager.js","sourceRoot":"","sources":["../../src/formatting/StylesManager.ts"],"names":[],"mappings":"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"}
@@ -10,12 +10,12 @@ export interface StyleRunFormatting {
10
10
  preserveUnderline?: boolean;
11
11
  }
12
12
  export interface StyleParagraphFormatting {
13
- alignment?: 'left' | 'center' | 'right' | 'justify';
13
+ alignment?: "left" | "center" | "right" | "justify";
14
14
  spacing?: {
15
15
  before?: number;
16
16
  after?: number;
17
17
  line?: number;
18
- lineRule?: 'auto' | 'exact' | 'atLeast';
18
+ lineRule?: "auto" | "exact" | "atLeast";
19
19
  };
20
20
  indentation?: {
21
21
  left?: number;
@@ -40,7 +40,7 @@ export interface StyleConfig {
40
40
  export interface Heading2Config extends StyleConfig {
41
41
  tableOptions?: Heading2TableOptions;
42
42
  }
43
- export interface ApplyCustomFormattingOptions {
43
+ export interface ApplyStylesOptions {
44
44
  heading1?: StyleConfig;
45
45
  heading2?: Heading2Config;
46
46
  heading3?: StyleConfig;
@@ -48,4 +48,5 @@ export interface ApplyCustomFormattingOptions {
48
48
  listParagraph?: StyleConfig;
49
49
  preserveBlankLinesAfterHeader2Tables?: boolean;
50
50
  }
51
+ export type ApplyCustomFormattingOptions = ApplyStylesOptions;
51
52
  //# sourceMappingURL=styleConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"styleConfig.d.ts","sourceRoot":"","sources":["../../src/types/styleConfig.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,kBAAkB;IAEjC,IAAI,CAAC,EAAE,MAAM,CAAC;IAGd,IAAI,CAAC,EAAE,MAAM,CAAC;IAGd,IAAI,CAAC,EAAE,OAAO,CAAC;IAGf,MAAM,CAAC,EAAE,OAAO,CAAC;IAGjB,SAAS,CAAC,EAAE,OAAO,CAAC;IAGpB,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,YAAY,CAAC,EAAE,OAAO,CAAC;IAGvB,cAAc,CAAC,EAAE,OAAO,CAAC;IAGzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAKD,MAAM,WAAW,wBAAwB;IAEvC,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;IAGpD,OAAO,CAAC,EAAE;QAER,MAAM,CAAC,EAAE,MAAM,CAAC;QAGhB,KAAK,CAAC,EAAE,MAAM,CAAC;QAGf,IAAI,CAAC,EAAE,MAAM,CAAC;QAGd,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;KACzC,CAAC;IAGF,WAAW,CAAC,EAAE;QAEZ,IAAI,CAAC,EAAE,MAAM,CAAC;QAGd,KAAK,CAAC,EAAE,MAAM,CAAC;QAGf,SAAS,CAAC,EAAE,MAAM,CAAC;QAGnB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IAMF,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAMD,MAAM,WAAW,oBAAoB;IAEnC,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAKD,MAAM,WAAW,WAAW;IAE1B,GAAG,CAAC,EAAE,kBAAkB,CAAC;IAGzB,SAAS,CAAC,EAAE,wBAAwB,CAAC;CACtC;AAMD,MAAM,WAAW,cAAe,SAAQ,WAAW;IAEjD,YAAY,CAAC,EAAE,oBAAoB,CAAC;CACrC;AAMD,MAAM,WAAW,4BAA4B;IAE3C,QAAQ,CAAC,EAAE,WAAW,CAAC;IAGvB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAG1B,QAAQ,CAAC,EAAE,WAAW,CAAC;IAGvB,MAAM,CAAC,EAAE,WAAW,CAAC;IAGrB,aAAa,CAAC,EAAE,WAAW,CAAC;IAQ5B,oCAAoC,CAAC,EAAE,OAAO,CAAC;CAChD"}
1
+ {"version":3,"file":"styleConfig.d.ts","sourceRoot":"","sources":["../../src/types/styleConfig.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,kBAAkB;IAEjC,IAAI,CAAC,EAAE,MAAM,CAAC;IAGd,IAAI,CAAC,EAAE,MAAM,CAAC;IAGd,IAAI,CAAC,EAAE,OAAO,CAAC;IAGf,MAAM,CAAC,EAAE,OAAO,CAAC;IAGjB,SAAS,CAAC,EAAE,OAAO,CAAC;IAGpB,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,YAAY,CAAC,EAAE,OAAO,CAAC;IAGvB,cAAc,CAAC,EAAE,OAAO,CAAC;IAGzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAKD,MAAM,WAAW,wBAAwB;IAEvC,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;IAGpD,OAAO,CAAC,EAAE;QAER,MAAM,CAAC,EAAE,MAAM,CAAC;QAGhB,KAAK,CAAC,EAAE,MAAM,CAAC;QAGf,IAAI,CAAC,EAAE,MAAM,CAAC;QAGd,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;KACzC,CAAC;IAGF,WAAW,CAAC,EAAE;QAEZ,IAAI,CAAC,EAAE,MAAM,CAAC;QAGd,KAAK,CAAC,EAAE,MAAM,CAAC;QAGf,SAAS,CAAC,EAAE,MAAM,CAAC;QAGnB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IAMF,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAMD,MAAM,WAAW,oBAAoB;IAEnC,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAKD,MAAM,WAAW,WAAW;IAE1B,GAAG,CAAC,EAAE,kBAAkB,CAAC;IAGzB,SAAS,CAAC,EAAE,wBAAwB,CAAC;CACtC;AAMD,MAAM,WAAW,cAAe,SAAQ,WAAW;IAEjD,YAAY,CAAC,EAAE,oBAAoB,CAAC;CACrC;AAMD,MAAM,WAAW,kBAAkB;IAEjC,QAAQ,CAAC,EAAE,WAAW,CAAC;IAGvB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAG1B,QAAQ,CAAC,EAAE,WAAW,CAAC;IAGvB,MAAM,CAAC,EAAE,WAAW,CAAC;IAGrB,aAAa,CAAC,EAAE,WAAW,CAAC;IAQ5B,oCAAoC,CAAC,EAAE,OAAO,CAAC;CAChD;AAKD,MAAM,MAAM,4BAA4B,GAAG,kBAAkB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "docxmlater",
3
- "version": "3.5.0",
3
+ "version": "4.0.0",
4
4
  "description": "A comprehensive DOCX editing framework for creating, reading, and manipulating Microsoft Word documents",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -13,7 +13,8 @@
13
13
  "clean": "rimraf dist",
14
14
  "prepublishOnly": "npm run clean && npm run build",
15
15
  "docs:metrics": "echo 'Source Files:' && find src -name '*.ts' | wc -l && echo 'Test Files:' && find tests -name '*.test.ts' | wc -l && echo 'Lines of Code:' && find src -name '*.ts' -exec wc -l {} + | tail -1",
16
- "docs:check": "echo 'Checking documentation...' && ls -1 CLAUDE.md README.md CHANGELOG.md src/*/CLAUDE.md 2>/dev/null || echo 'Missing documentation files'"
16
+ "docs:check": "echo 'Checking documentation...' && ls -1 CLAUDE.md README.md CHANGELOG.md src/*/CLAUDE.md 2>/dev/null || echo 'Missing documentation files'",
17
+ "test-list-arch": "ts-node examples/test-list-formatting-architecture.ts"
17
18
  },
18
19
  "keywords": [
19
20
  "docx",