@json-to-office/core-docx 0.32.0 → 0.34.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.
Files changed (58) hide show
  1. package/dist/components/heading.d.ts.map +1 -1
  2. package/dist/components/list.d.ts.map +1 -1
  3. package/dist/components/paragraph.d.ts.map +1 -1
  4. package/dist/components/section.d.ts.map +1 -1
  5. package/dist/components/table.d.ts.map +1 -1
  6. package/dist/components/toc/index.d.ts.map +1 -1
  7. package/dist/core/cached-render.d.ts +9 -1
  8. package/dist/core/cached-render.d.ts.map +1 -1
  9. package/dist/core/collectTocHeadings.d.ts +60 -0
  10. package/dist/core/collectTocHeadings.d.ts.map +1 -0
  11. package/dist/core/content.d.ts +17 -1
  12. package/dist/core/content.d.ts.map +1 -1
  13. package/dist/core/layout.d.ts +5 -0
  14. package/dist/core/layout.d.ts.map +1 -1
  15. package/dist/core/render.d.ts.map +1 -1
  16. package/dist/core/sectionBookmarks.d.ts +53 -0
  17. package/dist/core/sectionBookmarks.d.ts.map +1 -0
  18. package/dist/core/sectionOrdinals.d.ts +32 -0
  19. package/dist/core/sectionOrdinals.d.ts.map +1 -0
  20. package/dist/index.d.ts +1 -1
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +816 -169
  23. package/dist/index.js.map +1 -1
  24. package/dist/plugin/example/index.js +815 -169
  25. package/dist/plugin/example/index.js.map +1 -1
  26. package/dist/styles/index.d.ts +2 -2
  27. package/dist/styles/index.d.ts.map +1 -1
  28. package/dist/styles/themeToDocxAdapter.d.ts.map +1 -1
  29. package/dist/styles/utils/layoutUtils.d.ts +48 -0
  30. package/dist/styles/utils/layoutUtils.d.ts.map +1 -1
  31. package/dist/templates/themes/index.d.ts +400 -8
  32. package/dist/templates/themes/index.d.ts.map +1 -1
  33. package/dist/themes/defaults.d.ts +96 -0
  34. package/dist/themes/defaults.d.ts.map +1 -1
  35. package/dist/tsconfig.tsbuildinfo +1 -1
  36. package/dist/types/index.d.ts +8 -0
  37. package/dist/types/index.d.ts.map +1 -1
  38. package/dist/utils/commentAnchors.d.ts +39 -0
  39. package/dist/utils/commentAnchors.d.ts.map +1 -0
  40. package/dist/utils/commentRegistry.d.ts +49 -0
  41. package/dist/utils/commentRegistry.d.ts.map +1 -0
  42. package/dist/utils/componentAnnotations.d.ts +23 -0
  43. package/dist/utils/componentAnnotations.d.ts.map +1 -0
  44. package/dist/utils/fixFloatingImageIds.d.ts +1 -1
  45. package/dist/utils/fixFloatingImageIds.d.ts.map +1 -1
  46. package/dist/utils/noteRegistry.d.ts +43 -0
  47. package/dist/utils/noteRegistry.d.ts.map +1 -0
  48. package/dist/utils/noteResolver.d.ts +31 -0
  49. package/dist/utils/noteResolver.d.ts.map +1 -0
  50. package/dist/utils/numberingConfig.d.ts +15 -0
  51. package/dist/utils/numberingConfig.d.ts.map +1 -1
  52. package/dist/utils/placeholderProcessor.d.ts +2 -2
  53. package/dist/utils/placeholderProcessor.d.ts.map +1 -1
  54. package/dist/utils/revisionUtils.d.ts +32 -9
  55. package/dist/utils/revisionUtils.d.ts.map +1 -1
  56. package/dist/utils/textParser.d.ts +12 -0
  57. package/dist/utils/textParser.d.ts.map +1 -1
  58. package/package.json +4 -4
@@ -1,5 +1,6 @@
1
1
  import { ISectionOptions } from 'docx';
2
2
  import type { ThemeName } from '../styles';
3
+ import type { TocHeadingEntry } from '../core/collectTocHeadings';
3
4
  import type { ServicesConfig, PptxRasterizeBatchSlideResult } from '@json-to-office/shared';
4
5
  import type { ComponentDefinition as SharedComponentDefinition, ReportComponent, SectionComponent, ColumnsComponent, HeadingComponent, ParagraphComponent, ImageComponent, HighchartsComponent, VisualComponent, StatisticComponent, TableComponent, ListComponent, TocComponent, TextBoxComponent, ReportProps as SharedReportProps, SectionProps as SharedSectionProps, HeadingProps as SharedHeadingProps, ParagraphProps as SharedParagraphProps, ColumnsProps as SharedColumnsProps, ImageProps as SharedImageProps, VisualProps as SharedVisualProps, StatisticProps as SharedStatisticProps, TableProps as SharedTableProps, ListProps as SharedListProps, TocProps as SharedTocProps, TextBoxProps as SharedTextBoxProps } from '@json-to-office/shared-docx';
5
6
  export { isReportComponent, isSectionComponent, isHeadingComponent, isParagraphComponent, isColumnsComponent, isImageComponent, isTextBoxComponent, isStatisticComponent, isTableComponent, isListComponent, isTocComponent, isHighchartsComponent, isVisualComponent, } from '@json-to-office/shared-docx';
@@ -158,5 +159,12 @@ export interface RenderContext {
158
159
  * consults it first and falls back to per-visual rasterization on a miss.
159
160
  */
160
161
  visualRasterResults?: ReadonlyMap<string, PptxRasterizeBatchSlideResult>;
162
+ /**
163
+ * Per-document TOC entries collected before rendering (#174). Seeded by the
164
+ * renderDocument pre-pass; `renderTocComponent` filters them by depth, scope
165
+ * and style mapping and passes them to docx as `cachedEntries`, so a TOC
166
+ * field has real content for readers that do not refresh fields.
167
+ */
168
+ tocHeadings?: readonly TocHeadingEntry[];
161
169
  }
162
170
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Comment anchors — the `word/document.xml` half of a review comment.
3
+ *
4
+ * Word expects, in this order inside the commented paragraph(s):
5
+ *
6
+ * <w:commentRangeStart w:id="N"/> …runs… <w:commentRangeEnd w:id="N"/>
7
+ * <w:r><w:commentReference w:id="N"/></w:r>
8
+ *
9
+ * The range may span several paragraphs, in which case the start sits in the
10
+ * first and the end plus reference in the last — which is how a list-level
11
+ * comment is anchored.
12
+ */
13
+ import type { ParagraphChild } from 'docx';
14
+ import type { Comment } from '@json-to-office/shared-docx';
15
+ export interface CommentAnchor {
16
+ /** Every comment in the thread: the root first, then its replies. */
17
+ ids: number[];
18
+ /** Range-start elements to place before the commented content. */
19
+ start: ParagraphChild[];
20
+ }
21
+ /**
22
+ * Register `comment` (and its replies) and return the opening anchors, or
23
+ * undefined when there is no comment. Callers must pair this with
24
+ * `closeCommentRange`.
25
+ *
26
+ * A thread anchors every one of its comments over the same range, which is how
27
+ * Word writes threads and how it groups them in the review pane.
28
+ */
29
+ export declare function openCommentRange(comment: Comment | undefined): CommentAnchor | undefined;
30
+ /**
31
+ * The closing anchors: each range end followed by its reference run.
32
+ *
33
+ * `w:commentReference` is run-inner content, so it has to sit inside a `w:r`.
34
+ * docx's `CommentReference` is the bare element; emitted as a direct child of
35
+ * `w:p` it is schema-invalid and readers drop the comment silently (verified in
36
+ * LibreOffice, which showed zero annotations before this wrapping).
37
+ */
38
+ export declare function closeCommentRange(ids: readonly number[]): ParagraphChild[];
39
+ //# sourceMappingURL=commentAnchors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commentAnchors.d.ts","sourceRoot":"","sources":["../../src/utils/commentAnchors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAQH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAC3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAG3D,MAAM,WAAW,aAAa;IAC5B,qEAAqE;IACrE,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,kEAAkE;IAClE,KAAK,EAAE,cAAc,EAAE,CAAC;CACzB;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,OAAO,GAAG,SAAS,GAC3B,aAAa,GAAG,SAAS,CAI3B;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,GAAG,cAAc,EAAE,CAK1E"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Comment (review annotation) registry.
3
+ *
4
+ * Word comment ids live in their own OOXML namespace, separate from the
5
+ * `w:ins` / `w:del` ids in `revisionUtils.ts`, so they get their own counter —
6
+ * but the same async-local scoping, and the registry must be entered from the
7
+ * same `runScoped` nest, or two concurrent generations interleave counters and
8
+ * a comment anchor points at another document's body.
9
+ *
10
+ * The registry holds both halves of a comment: the id used by the anchor in
11
+ * `word/document.xml`, and the body that `renderDocument` hands to docx for
12
+ * `word/comments.xml`.
13
+ */
14
+ import type { ICommentOptions } from 'docx';
15
+ import type { Comment } from '@json-to-office/shared-docx';
16
+ export declare const DEFAULT_COMMENT_AUTHOR = "json-to-office";
17
+ export declare const DEFAULT_COMMENT_DATE = "1970-01-01T00:00:00Z";
18
+ declare class CommentRegistry {
19
+ private fallback;
20
+ private readonly scopes;
21
+ private get state();
22
+ /** Run work with an isolated registry that follows its async call chain. */
23
+ runScoped<T>(callback: () => T): T;
24
+ /**
25
+ * Register a comment thread and return every id its anchors must carry — the
26
+ * root first, then each reply in order. Word anchors every comment in a
27
+ * thread over the same range, so all of them need a range and a reference.
28
+ *
29
+ * Ids are unique and monotonic within a render. `parentId` is derived here
30
+ * rather than authored; docx turns it into the `w15:paraIdParent` links in
31
+ * `word/commentsExtended.xml`.
32
+ */
33
+ register(comment: Comment): number[];
34
+ private toOptions;
35
+ /**
36
+ * Every comment registered in this scope, in id order.
37
+ *
38
+ * docx writes `word/commentsExtended.xml` — and therefore any `w15:done` —
39
+ * only when at least one comment in the document carries a `parentId`. A
40
+ * document whose only resolved comment has no replies would silently lose
41
+ * that state, so say so rather than dropping it quietly.
42
+ */
43
+ getAll(): ICommentOptions[];
44
+ /** Test-only: reset the current scope's counter and bodies. */
45
+ clear(): void;
46
+ }
47
+ export declare const globalCommentRegistry: CommentRegistry;
48
+ export {};
49
+ //# sourceMappingURL=commentRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commentRegistry.d.ts","sourceRoot":"","sources":["../../src/utils/commentRegistry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAE5C,OAAO,KAAK,EAAE,OAAO,EAAgB,MAAM,6BAA6B,CAAC;AAGzE,eAAO,MAAM,sBAAsB,mBAAmB,CAAC;AAEvD,eAAO,MAAM,oBAAoB,yBAAyB,CAAC;AAmC3D,cAAM,eAAe;IACnB,OAAO,CAAC,QAAQ,CAA+B;IAC/C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyC;IAEhE,OAAO,KAAK,KAAK,GAEhB;IAED,4EAA4E;IAC5E,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC;IAIlC;;;;;;;;OAQG;IACH,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,EAAE;IA0BpC,OAAO,CAAC,SAAS;IAcjB;;;;;;;OAOG;IACH,MAAM,IAAI,eAAe,EAAE;IAe3B,+DAA+D;IAC/D,KAAK,IAAI,IAAI;CAUd;AAED,eAAO,MAAM,qBAAqB,iBAAwB,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Detection of per-instance annotation props anywhere in a component subtree.
3
+ *
4
+ * `revision` and `comment` both render as document-scoped OOXML ids allocated
5
+ * from a per-render counter. A component carrying either must never be served
6
+ * from the cross-document component cache, or a cached subtree replays dead ids
7
+ * into a later document.
8
+ *
9
+ * The walk has to reach every place a component can hide: list items, table
10
+ * cells (the table model is column-major, so cells are only reachable through
11
+ * `props.columns[]`), components nested in a cell's `content`, and ordinary
12
+ * children.
13
+ */
14
+ export type MaybeComponent = {
15
+ props?: unknown;
16
+ children?: unknown[];
17
+ };
18
+ /**
19
+ * True when `key` appears anywhere in the component subtree: its own props,
20
+ * list items, row-parallel structural entries, table cells, or any descendant.
21
+ */
22
+ export declare function componentHasAnnotation(component: MaybeComponent, key: string): boolean;
23
+ //# sourceMappingURL=componentAnnotations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"componentAnnotations.d.ts","sourceRoot":"","sources":["../../src/utils/componentAnnotations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,MAAM,MAAM,cAAc,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAA;CAAE,CAAC;AAqBvE;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,cAAc,EACzB,GAAG,EAAE,MAAM,GACV,OAAO,CAyCT"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Post-processing utility to fix docx.js floating image bugs
3
3
  *
4
- * The docx library (as of v9.5.1) has a known issue with floating images:
4
+ * The docx library (as of v9.7.1) has a known issue with floating images:
5
5
  * 1. Duplicate wp:docPr IDs (GitHub issue #2719)
6
6
  *
7
7
  * Historical note: We previously also post-processed relativeHeight and
@@ -1 +1 @@
1
- {"version":3,"file":"fixFloatingImageIds.d.ts","sourceRoot":"","sources":["../../src/utils/fixFloatingImageIds.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;;AAKH,wEAAwE;AACxE,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAmBlE;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGzE"}
1
+ {"version":3,"file":"fixFloatingImageIds.d.ts","sourceRoot":"","sources":["../../src/utils/fixFloatingImageIds.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;;AAKH,wEAAwE;AACxE,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAwBlE;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGzE"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Note registry — footnote and endnote bodies collected while rendering their
3
+ * markers.
4
+ *
5
+ * A note has two halves in the package: a reference run in
6
+ * `word/document.xml` and a body in `word/footnotes.xml` or
7
+ * `word/endnotes.xml`, joined by a numeric id that is document-scoped.
8
+ * Async-local state gives each render its own counters, so concurrent
9
+ * generations cannot interleave ids and point a reference at another
10
+ * document's body.
11
+ *
12
+ * Footnotes and endnotes are separate id spaces — they are separate parts —
13
+ * so each gets its own counter. Both start at 1: docx writes the reserved
14
+ * separator (-1) and continuationSeparator (0) notes itself.
15
+ */
16
+ import { Paragraph } from 'docx';
17
+ /** docx's shape for the `footnotes` / `endnotes` document options. */
18
+ export type NoteBodies = Record<string, {
19
+ children: Paragraph[];
20
+ }>;
21
+ declare class NoteRegistry {
22
+ private fallback;
23
+ private readonly scopes;
24
+ private get state();
25
+ /** Run work with an isolated registry that follows its async call chain. */
26
+ runScoped<T>(callback: () => T): T;
27
+ /**
28
+ * Register a footnote body and return the id its reference must use. Ids are
29
+ * unique and monotonic within a render.
30
+ */
31
+ registerFootnote(text: string): number;
32
+ /** Register an endnote body and return the id its reference must use. */
33
+ registerEndnote(text: string): number;
34
+ /** Every footnote registered in this scope, keyed by id. */
35
+ getFootnotes(): NoteBodies;
36
+ /** Every endnote registered in this scope, keyed by id. */
37
+ getEndnotes(): NoteBodies;
38
+ /** Test-only: reset the current scope's counters and bodies. */
39
+ clear(): void;
40
+ }
41
+ export declare const globalNoteRegistry: NoteRegistry;
42
+ export {};
43
+ //# sourceMappingURL=noteRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noteRegistry.d.ts","sourceRoot":"","sources":["../../src/utils/noteRegistry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,SAAS,EAAW,MAAM,MAAM,CAAC;AAI1C,sEAAsE;AACtE,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE;IAAE,QAAQ,EAAE,SAAS,EAAE,CAAA;CAAE,CAAC,CAAC;AA+BnE,cAAM,YAAY;IAChB,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsC;IAE7D,OAAO,KAAK,KAAK,GAEhB;IAED,4EAA4E;IAC5E,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC;IAIlC;;;OAGG;IACH,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAStC,yEAAyE;IACzE,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IASrC,4DAA4D;IAC5D,YAAY,IAAI,UAAU;IAI1B,2DAA2D;IAC3D,WAAW,IAAI,UAAU;IAIzB,gEAAgE;IAChE,KAAK,IAAI,IAAI;CAed;AAED,eAAO,MAAM,kBAAkB,cAAqB,CAAC"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Bind a paragraph's declared note bodies to the `[^id]` markers in its text.
3
+ *
4
+ * Footnotes and endnotes share the marker syntax and differ only in where Word
5
+ * puts the body, so one resolver serves both: an id is looked up in
6
+ * `footnotes` first, then `endnotes`.
7
+ *
8
+ * Registration is lazy — a body reaches its part only when a marker actually
9
+ * resolves to it — and memoized, so repeating `[^id]` points both references at
10
+ * the same note rather than duplicating the body.
11
+ */
12
+ import type { Note } from '@json-to-office/shared-docx';
13
+ export interface NoteResolver {
14
+ /** Called by the text parser for each `[^id]` marker it finds. */
15
+ resolve: (id: string) => {
16
+ id: number;
17
+ endnote: boolean;
18
+ } | undefined;
19
+ /**
20
+ * Report declared bodies that never made it into the document. Call once the
21
+ * paragraph's text has been fully parsed.
22
+ */
23
+ reportUnemitted: (text: string) => void;
24
+ }
25
+ /**
26
+ * Build the resolver `parseTextWithDecorators` consults for each marker, or
27
+ * undefined when the paragraph declares no notes (which leaves `[^…]` as
28
+ * ordinary text).
29
+ */
30
+ export declare function createNoteResolver(footnotes: readonly Note[] | undefined, endnotes: readonly Note[] | undefined): NoteResolver | undefined;
31
+ //# sourceMappingURL=noteResolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noteResolver.d.ts","sourceRoot":"","sources":["../../src/utils/noteResolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AAGxD,MAAM,WAAW,YAAY;IAC3B,kEAAkE;IAClE,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,GAAG,SAAS,CAAC;IACtE;;;OAGG;IACH,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AAyCD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,SAAS,IAAI,EAAE,GAAG,SAAS,EACtC,QAAQ,EAAE,SAAS,IAAI,EAAE,GAAG,SAAS,GACpC,YAAY,GAAG,SAAS,CAiD1B"}
@@ -3,6 +3,20 @@
3
3
  * Utilities for creating and managing docx numbering configurations
4
4
  */
5
5
  import type { ILevelsOptions } from 'docx';
6
+ /**
7
+ * Styling for the marker glyph itself (`w:lvl/w:rPr`), independent of the list
8
+ * text. `color` must already be resolved to a 6-char hex without '#'.
9
+ */
10
+ export interface ListMarkerFontConfig {
11
+ family?: string;
12
+ /** Points. */
13
+ size?: number;
14
+ /** Resolved hex, no leading '#'. */
15
+ color?: string;
16
+ bold?: boolean;
17
+ italic?: boolean;
18
+ underline?: boolean;
19
+ }
6
20
  export interface ListLevelConfig {
7
21
  level: number;
8
22
  format?: string;
@@ -13,6 +27,7 @@ export interface ListLevelConfig {
13
27
  hanging?: number;
14
28
  };
15
29
  start?: number;
30
+ font?: ListMarkerFontConfig;
16
31
  }
17
32
  export interface NumberingConfig {
18
33
  reference: string;
@@ -1 +1 @@
1
- {"version":3,"file":"numberingConfig.d.ts","sourceRoot":"","sources":["../../src/utils/numberingConfig.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAiF3C,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE;QACP,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AA2DD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,eAAe,GAAG;IAC9D,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;CACnB,CA8CA;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,EACjB,MAAM,GAAE,MAAY,GACnB;IAAE,MAAM,EAAE,cAAc,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CASjD;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,MAAM,EACjB,KAAK,GAAE,MAAU,GAChB;IAAE,MAAM,EAAE,cAAc,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CASjD;AAED;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAGvB;IACF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA2C;IAElE,OAAO,KAAK,KAAK,GAEhB;IAED,4EAA4E;IAC5E,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC;IAIlC;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,cAAc,EAAE,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM;IAMzE;;OAEG;IACH,iBAAiB,CAAC,MAAM,GAAE,MAAe,GAAG,MAAM;IAIlD;;OAEG;IACH,MAAM,IAAI;QAAE,MAAM,EAAE,cAAc,EAAE,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EAAE;IAI3D;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAI/B;;OAEG;IACH,GAAG,CACD,SAAS,EAAE,MAAM,GAChB;QAAE,MAAM,EAAE,cAAc,EAAE,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS;CAG/D;AAGD,eAAO,MAAM,uBAAuB,mBAA0B,CAAC"}
1
+ {"version":3,"file":"numberingConfig.d.ts","sourceRoot":"","sources":["../../src/utils/numberingConfig.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,cAAc,EAA8B,MAAM,MAAM,CAAC;AAiFvE;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE;QACP,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,oBAAoB,CAAC;CAC7B;AAED,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAmFD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,eAAe,GAAG;IAC9D,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;CACnB,CAmDA;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,EACjB,MAAM,GAAE,MAAY,GACnB;IAAE,MAAM,EAAE,cAAc,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CASjD;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,MAAM,EACjB,KAAK,GAAE,MAAU,GAChB;IAAE,MAAM,EAAE,cAAc,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CASjD;AAED;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAGvB;IACF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA2C;IAElE,OAAO,KAAK,KAAK,GAEhB;IAED,4EAA4E;IAC5E,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC;IAIlC;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,cAAc,EAAE,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM;IAMzE;;OAEG;IACH,iBAAiB,CAAC,MAAM,GAAE,MAAe,GAAG,MAAM;IAIlD;;OAEG;IACH,MAAM,IAAI;QAAE,MAAM,EAAE,cAAc,EAAE,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EAAE;IAI3D;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAI/B;;OAEG;IACH,GAAG,CACD,SAAS,EAAE,MAAM,GAChB;QAAE,MAAM,EAAE,cAAc,EAAE,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS;CAG/D;AAGD,eAAO,MAAM,uBAAuB,mBAA0B,CAAC"}
@@ -2,9 +2,9 @@
2
2
  * Placeholder Processing System
3
3
  * Handles dynamic content replacement in text with support for rich text formatting
4
4
  */
5
- import { TextRun, ExternalHyperlink, InternalHyperlink } from 'docx';
5
+ import { TextRun, ExternalHyperlink, InternalHyperlink, FootnoteReferenceRun, EndnoteReferenceRun } from 'docx';
6
6
  import { TextStyle } from './textParser';
7
- export type PlaceholderChild = TextRun | ExternalHyperlink | InternalHyperlink;
7
+ export type PlaceholderChild = TextRun | ExternalHyperlink | InternalHyperlink | FootnoteReferenceRun | EndnoteReferenceRun;
8
8
  /**
9
9
  * Placeholder handler function type
10
10
  */
@@ -1 +1 @@
1
- {"version":3,"file":"placeholderProcessor.d.ts","sourceRoot":"","sources":["../../src/utils/placeholderProcessor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,OAAO,EAEP,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,MAAM,CAAC;AACd,OAAO,EAIL,SAAS,EACV,MAAM,cAAc,CAAC;AAKtB,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,iBAAiB,GAAG,iBAAiB,CAAC;AAE/E;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAC/B,QAAQ,CAAC,EAAE,kBAAkB,KAC1B,gBAAgB,GAAG,gBAAgB,EAAE,GAAG,MAAM,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAkCD;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAyC;IAEhE;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAIhE;;OAEG;IACH,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS;IAIxD;;OAEG;IACH,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIjC;;OAEG;IACH,MAAM,CAAC,kBAAkB,IAAI,MAAM,EAAE;IAIrC;;OAEG;IACH,MAAM,CAAC,KAAK,IAAI,IAAI;CAGrB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,SAAS,GAAE,SAAc,EACzB,OAAO,GAAE,kBAAuB,GAC/B,gBAAgB,EAAE,CAgDpB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,EACZ,SAAS,GAAE,SAAc,EACzB,OAAO,GAAE,kBAAuB,EAChC,YAAY,CAAC,EAAE,MAAM,EAAE,GACtB,gBAAgB,EAAE,CAyGpB;AAgBD;;GAEG;AACH,wBAAgB,6BAA6B,IAAI,IAAI,CA4CpD"}
1
+ {"version":3,"file":"placeholderProcessor.d.ts","sourceRoot":"","sources":["../../src/utils/placeholderProcessor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,OAAO,EAEP,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,MAAM,CAAC;AACd,OAAO,EAIL,SAAS,EACV,MAAM,cAAc,CAAC;AAKtB,MAAM,MAAM,gBAAgB,GACxB,OAAO,GACP,iBAAiB,GACjB,iBAAiB,GAEjB,oBAAoB,GACpB,mBAAmB,CAAC;AAExB;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAC/B,QAAQ,CAAC,EAAE,kBAAkB,KAC1B,gBAAgB,GAAG,gBAAgB,EAAE,GAAG,MAAM,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAkCD;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAyC;IAEhE;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAIhE;;OAEG;IACH,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS;IAIxD;;OAEG;IACH,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIjC;;OAEG;IACH,MAAM,CAAC,kBAAkB,IAAI,MAAM,EAAE;IAIrC;;OAEG;IACH,MAAM,CAAC,KAAK,IAAI,IAAI;CAGrB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,SAAS,GAAE,SAAc,EACzB,OAAO,GAAE,kBAAuB,GAC/B,gBAAgB,EAAE,CAgDpB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,EACZ,SAAS,GAAE,SAAc,EACzB,OAAO,GAAE,kBAAuB,EAChC,YAAY,CAAC,EAAE,MAAM,EAAE,GACtB,gBAAgB,EAAE,CAyGpB;AAgBD;;GAEG;AACH,wBAAgB,6BAA6B,IAAI,IAAI,CA4CpD"}
@@ -6,7 +6,8 @@
6
6
  */
7
7
  import { TextRun, InsertedTextRun, DeletedTextRun } from 'docx';
8
8
  import type { IRunOptions, ParagraphChild } from 'docx';
9
- import type { Revision } from '@json-to-office/shared-docx';
9
+ import type { Revision, RevisionMark } from '@json-to-office/shared-docx';
10
+ import { type MaybeComponent } from './componentAnnotations';
10
11
  export declare const DEFAULT_REVISION_AUTHOR = "json-to-office";
11
12
  export declare const DEFAULT_REVISION_DATE = "1970-01-01T00:00:00Z";
12
13
  /**
@@ -37,14 +38,36 @@ type RevisionBaseStyle = Omit<IRunOptions, 'text' | 'children'>;
37
38
  */
38
39
  export declare function createRevisionRuns(revision: Revision, baseStyle: RevisionBaseStyle): ParagraphChild[];
39
40
  /**
40
- * True when a component carries revision data anywhere in its subtree
41
- * (own props, list items, or any descendant), meaning its render output
42
- * embeds document-scoped revision ids and must not be served from the
43
- * cross-document component cache.
41
+ * True when a component carries revision data anywhere in its subtree,
42
+ * meaning its render output embeds document-scoped w:ins/w:del ids and must not
43
+ * be served from the cross-document component cache.
44
44
  */
45
- export declare function componentHasRevision(component: {
46
- props?: unknown;
47
- children?: unknown[];
48
- }): boolean;
45
+ export declare function componentHasRevision(component: MaybeComponent): boolean;
46
+ /** docx's shape for a structural tracked change (`w:ins` / `w:del` attrs). */
47
+ export interface RevisionMarkAttributes {
48
+ id: number;
49
+ author: string;
50
+ date: string;
51
+ }
52
+ /**
53
+ * Turn a structural revision into the attribute triple docx wants, allocating
54
+ * the document-scoped id.
55
+ *
56
+ * Callers must invoke this in a synchronous prefix — before any `await` — or
57
+ * ids end up ordered by I/O completion rather than document order.
58
+ */
59
+ export declare function createRevisionMark(mark: RevisionMark): {
60
+ insertion?: RevisionMarkAttributes;
61
+ deletion?: RevisionMarkAttributes;
62
+ };
63
+ /**
64
+ * Render a cell's text as runs that are wholly inserted or wholly deleted,
65
+ * matching the structural mark on the row they sit in.
66
+ *
67
+ * A `w:trPr/w:del` alone leaves the cell text un-struck, and accepting the
68
+ * change would leave an empty row behind rather than removing it. Word needs
69
+ * both halves: the row mark and every run inside it marked the same way.
70
+ */
71
+ export declare function createMarkedTextRuns(text: string, mark: RevisionMark, baseStyle: RevisionBaseStyle): ParagraphChild[];
49
72
  export {};
50
73
  //# sourceMappingURL=revisionUtils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"revisionUtils.d.ts","sourceRoot":"","sources":["../../src/utils/revisionUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AACxD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAM5D,eAAO,MAAM,uBAAuB,mBAAmB,CAAC;AAExD,eAAO,MAAM,qBAAqB,yBAAyB,CAAC;AAE5D;;;;GAIG;AACH,cAAM,kBAAkB;IACtB,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgD;IAEvE,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC;IAIlC,IAAI,IAAI,MAAM;IAUd,4DAA4D;IAC5D,KAAK,IAAI,IAAI;CAQd;AAED,eAAO,MAAM,wBAAwB,oBAA2B,CAAC;AAEjE,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,eAAe,GAAG,cAAc,CAAC;AAIrE,KAAK,iBAAiB,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC;AAgBhE;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,iBAAiB,GAC3B,cAAc,EAAE,CAoDlB;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE;IAC9C,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;CACtB,GAAG,OAAO,CA6BV"}
1
+ {"version":3,"file":"revisionUtils.d.ts","sourceRoot":"","sources":["../../src/utils/revisionUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AACxD,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAK1E,OAAO,EAEL,KAAK,cAAc,EACpB,MAAM,wBAAwB,CAAC;AAEhC,eAAO,MAAM,uBAAuB,mBAAmB,CAAC;AAExD,eAAO,MAAM,qBAAqB,yBAAyB,CAAC;AAE5D;;;;GAIG;AACH,cAAM,kBAAkB;IACtB,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgD;IAEvE,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC;IAIlC,IAAI,IAAI,MAAM;IAUd,4DAA4D;IAC5D,KAAK,IAAI,IAAI;CAQd;AAED,eAAO,MAAM,wBAAwB,oBAA2B,CAAC;AAEjE,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,eAAe,GAAG,cAAc,CAAC;AAIrE,KAAK,iBAAiB,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC;AAgBhE;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,iBAAiB,GAC3B,cAAc,EAAE,CAoDlB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,cAAc,GAAG,OAAO,CAEvE;AAED,8EAA8E;AAC9E,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,YAAY,GAAG;IACtD,SAAS,CAAC,EAAE,sBAAsB,CAAC;IACnC,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CACnC,CASA;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,YAAY,EAClB,SAAS,EAAE,iBAAiB,GAC3B,cAAc,EAAE,CASlB"}
@@ -29,6 +29,18 @@ export interface TextDecoratorOptions {
29
29
  * text stays spell-checked.
30
30
  */
31
31
  noProofWords?: string[];
32
+ /**
33
+ * Resolve a `[^id]` note marker to its document-scoped id and kind, or
34
+ * undefined to leave the marker as literal text.
35
+ *
36
+ * Passing a resolver is what turns `[^…]` into syntax at all: without one,
37
+ * text that merely looks like a marker (a regex character class in a code
38
+ * sample, say) is untouched.
39
+ */
40
+ noteRef?: (id: string) => {
41
+ id: number;
42
+ endnote: boolean;
43
+ } | undefined;
32
44
  }
33
45
  /**
34
46
  * Build a matcher for the known-words allowlist, or null when there's nothing
@@ -1 +1 @@
1
- {"version":3,"file":"textParser.d.ts","sourceRoot":"","sources":["../../src/utils/textParser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAA6C,MAAM,MAAM,CAAC;AAC1E,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACxB,MAAM,wBAAwB,CAAC;AAGhC,MAAM,WAAW,SAAS;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE;QACV,IAAI,CAAC,EACD,QAAQ,GACR,QAAQ,GACR,OAAO,GACP,QAAQ,GACR,MAAM,GACN,SAAS,GACT,YAAY,GACZ,MAAM,GACN,MAAM,GACN,OAAO,GACP,aAAa,GACb,aAAa,GACb,UAAU,GACV,eAAe,GACf,cAAc,GACd,iBAAiB,GACjB,WAAW,GACX,YAAY,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,QAAQ,CAAC,EAAE;QACT,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;IAEF,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAMD;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAY7E;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,EACvD,YAAY,CAAC,EAAE,MAAM,EAAE,GACtB,OAAO,EAAE,CAoBX;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,MAAM,EACZ,SAAS,GAAE,SAAc,EACzB,OAAO,GAAE,oBAAyB,GACjC,gBAAgB,EAAE,CAoGpB;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,SAAS,EACpB,SAAS,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;;;;;;;;EAoBtE;AAyDD;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,EACnD,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;CAAO,GACxD,OAAO,EAAE,CAiBX"}
1
+ {"version":3,"file":"textParser.d.ts","sourceRoot":"","sources":["../../src/utils/textParser.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAMR,MAAM,MAAM,CAAC;AACd,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACxB,MAAM,wBAAwB,CAAC;AAGhC,MAAM,WAAW,SAAS;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE;QACV,IAAI,CAAC,EACD,QAAQ,GACR,QAAQ,GACR,OAAO,GACP,QAAQ,GACR,MAAM,GACN,SAAS,GACT,YAAY,GACZ,MAAM,GACN,MAAM,GACN,OAAO,GACP,aAAa,GACb,aAAa,GACb,UAAU,GACV,eAAe,GACf,cAAc,GACd,iBAAiB,GACjB,WAAW,GACX,YAAY,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,QAAQ,CAAC,EAAE;QACT,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;IAEF,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,GAAG,SAAS,CAAC;CACxE;AAaD;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAY7E;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,EACvD,YAAY,CAAC,EAAE,MAAM,EAAE,GACtB,OAAO,EAAE,CAoBX;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,MAAM,EACZ,SAAS,GAAE,SAAc,EACzB,OAAO,GAAE,oBAAyB,GACjC,gBAAgB,EAAE,CAoGpB;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,SAAS,EACpB,SAAS,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;;;;;;;;EAoBtE;AAyDD;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,EACnD,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;CAAO,GACxD,OAAO,EAAE,CAiBX"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@json-to-office/core-docx",
3
- "version": "0.32.0",
3
+ "version": "0.34.0",
4
4
  "description": "Core DOCX document generation engine",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -22,11 +22,11 @@
22
22
  "adm-zip": "0.5.16",
23
23
  "date-fns": "3.6.0",
24
24
  "probe-image-size": "7.2.3",
25
- "@json-to-office/shared": "^0.29.0",
26
- "@json-to-office/shared-docx": "^0.32.0"
25
+ "@json-to-office/shared": "^0.33.0",
26
+ "@json-to-office/shared-docx": "^0.34.0"
27
27
  },
28
28
  "peerDependencies": {
29
- "docx": "9.5.1"
29
+ "docx": "9.7.1"
30
30
  },
31
31
  "devDependencies": {
32
32
  "@types/adm-zip": "0.5.7",