docxmlater 0.1.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 (163) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +624 -0
  3. package/dist/core/Document.d.ts +215 -0
  4. package/dist/core/Document.d.ts.map +1 -0
  5. package/dist/core/Document.js +980 -0
  6. package/dist/core/Document.js.map +1 -0
  7. package/dist/core/Relationship.d.ts +42 -0
  8. package/dist/core/Relationship.d.ts.map +1 -0
  9. package/dist/core/Relationship.js +115 -0
  10. package/dist/core/Relationship.js.map +1 -0
  11. package/dist/core/RelationshipManager.d.ts +28 -0
  12. package/dist/core/RelationshipManager.d.ts.map +1 -0
  13. package/dist/core/RelationshipManager.js +126 -0
  14. package/dist/core/RelationshipManager.js.map +1 -0
  15. package/dist/elements/Bookmark.d.ts +22 -0
  16. package/dist/elements/Bookmark.d.ts.map +1 -0
  17. package/dist/elements/Bookmark.js +75 -0
  18. package/dist/elements/Bookmark.js.map +1 -0
  19. package/dist/elements/BookmarkManager.d.ts +22 -0
  20. package/dist/elements/BookmarkManager.d.ts.map +1 -0
  21. package/dist/elements/BookmarkManager.js +76 -0
  22. package/dist/elements/BookmarkManager.js.map +1 -0
  23. package/dist/elements/Comment.d.ts +42 -0
  24. package/dist/elements/Comment.d.ts.map +1 -0
  25. package/dist/elements/Comment.js +156 -0
  26. package/dist/elements/Comment.js.map +1 -0
  27. package/dist/elements/CommentManager.d.ts +40 -0
  28. package/dist/elements/CommentManager.d.ts.map +1 -0
  29. package/dist/elements/CommentManager.js +177 -0
  30. package/dist/elements/CommentManager.js.map +1 -0
  31. package/dist/elements/Field.d.ts +36 -0
  32. package/dist/elements/Field.d.ts.map +1 -0
  33. package/dist/elements/Field.js +216 -0
  34. package/dist/elements/Field.js.map +1 -0
  35. package/dist/elements/Footer.d.ts +32 -0
  36. package/dist/elements/Footer.d.ts.map +1 -0
  37. package/dist/elements/Footer.js +125 -0
  38. package/dist/elements/Footer.js.map +1 -0
  39. package/dist/elements/Header.d.ts +32 -0
  40. package/dist/elements/Header.d.ts.map +1 -0
  41. package/dist/elements/Header.js +125 -0
  42. package/dist/elements/Header.js.map +1 -0
  43. package/dist/elements/HeaderFooterManager.d.ts +37 -0
  44. package/dist/elements/HeaderFooterManager.d.ts.map +1 -0
  45. package/dist/elements/HeaderFooterManager.js +87 -0
  46. package/dist/elements/HeaderFooterManager.js.map +1 -0
  47. package/dist/elements/Hyperlink.d.ts +39 -0
  48. package/dist/elements/Hyperlink.d.ts.map +1 -0
  49. package/dist/elements/Hyperlink.js +107 -0
  50. package/dist/elements/Hyperlink.js.map +1 -0
  51. package/dist/elements/Image.d.ts +48 -0
  52. package/dist/elements/Image.d.ts.map +1 -0
  53. package/dist/elements/Image.js +431 -0
  54. package/dist/elements/Image.js.map +1 -0
  55. package/dist/elements/ImageManager.d.ts +33 -0
  56. package/dist/elements/ImageManager.d.ts.map +1 -0
  57. package/dist/elements/ImageManager.js +109 -0
  58. package/dist/elements/ImageManager.js.map +1 -0
  59. package/dist/elements/Paragraph.d.ts +82 -0
  60. package/dist/elements/Paragraph.d.ts.map +1 -0
  61. package/dist/elements/Paragraph.js +272 -0
  62. package/dist/elements/Paragraph.js.map +1 -0
  63. package/dist/elements/Revision.d.ts +34 -0
  64. package/dist/elements/Revision.d.ts.map +1 -0
  65. package/dist/elements/Revision.js +115 -0
  66. package/dist/elements/Revision.js.map +1 -0
  67. package/dist/elements/RevisionManager.d.ts +31 -0
  68. package/dist/elements/RevisionManager.d.ts.map +1 -0
  69. package/dist/elements/RevisionManager.js +96 -0
  70. package/dist/elements/RevisionManager.js.map +1 -0
  71. package/dist/elements/Run.d.ts +39 -0
  72. package/dist/elements/Run.d.ts.map +1 -0
  73. package/dist/elements/Run.js +140 -0
  74. package/dist/elements/Run.js.map +1 -0
  75. package/dist/elements/Section.d.ts +65 -0
  76. package/dist/elements/Section.d.ts.map +1 -0
  77. package/dist/elements/Section.js +232 -0
  78. package/dist/elements/Section.js.map +1 -0
  79. package/dist/elements/Table.d.ts +49 -0
  80. package/dist/elements/Table.d.ts.map +1 -0
  81. package/dist/elements/Table.js +159 -0
  82. package/dist/elements/Table.js.map +1 -0
  83. package/dist/elements/TableCell.d.ts +46 -0
  84. package/dist/elements/TableCell.d.ts.map +1 -0
  85. package/dist/elements/TableCell.js +128 -0
  86. package/dist/elements/TableCell.js.map +1 -0
  87. package/dist/elements/TableOfContents.d.ts +36 -0
  88. package/dist/elements/TableOfContents.d.ts.map +1 -0
  89. package/dist/elements/TableOfContents.js +197 -0
  90. package/dist/elements/TableOfContents.js.map +1 -0
  91. package/dist/elements/TableOfContentsElement.d.ts +14 -0
  92. package/dist/elements/TableOfContentsElement.d.ts.map +1 -0
  93. package/dist/elements/TableOfContentsElement.js +32 -0
  94. package/dist/elements/TableOfContentsElement.js.map +1 -0
  95. package/dist/elements/TableRow.d.ts +25 -0
  96. package/dist/elements/TableRow.d.ts.map +1 -0
  97. package/dist/elements/TableRow.js +84 -0
  98. package/dist/elements/TableRow.js.map +1 -0
  99. package/dist/formatting/AbstractNumbering.d.ts +31 -0
  100. package/dist/formatting/AbstractNumbering.d.ts.map +1 -0
  101. package/dist/formatting/AbstractNumbering.js +132 -0
  102. package/dist/formatting/AbstractNumbering.js.map +1 -0
  103. package/dist/formatting/NumberingInstance.d.ts +16 -0
  104. package/dist/formatting/NumberingInstance.d.ts.map +1 -0
  105. package/dist/formatting/NumberingInstance.js +35 -0
  106. package/dist/formatting/NumberingInstance.js.map +1 -0
  107. package/dist/formatting/NumberingLevel.d.ts +37 -0
  108. package/dist/formatting/NumberingLevel.d.ts.map +1 -0
  109. package/dist/formatting/NumberingLevel.js +164 -0
  110. package/dist/formatting/NumberingLevel.js.map +1 -0
  111. package/dist/formatting/NumberingManager.d.ts +33 -0
  112. package/dist/formatting/NumberingManager.d.ts.map +1 -0
  113. package/dist/formatting/NumberingManager.js +162 -0
  114. package/dist/formatting/NumberingManager.js.map +1 -0
  115. package/dist/formatting/Style.d.ts +38 -0
  116. package/dist/formatting/Style.d.ts.map +1 -0
  117. package/dist/formatting/Style.js +298 -0
  118. package/dist/formatting/Style.js.map +1 -0
  119. package/dist/formatting/StylesManager.d.ts +30 -0
  120. package/dist/formatting/StylesManager.d.ts.map +1 -0
  121. package/dist/formatting/StylesManager.js +165 -0
  122. package/dist/formatting/StylesManager.js.map +1 -0
  123. package/dist/index.d.ts +40 -0
  124. package/dist/index.d.ts.map +1 -0
  125. package/dist/index.js +135 -0
  126. package/dist/index.js.map +1 -0
  127. package/dist/utils/units.d.ts +89 -0
  128. package/dist/utils/units.d.ts.map +1 -0
  129. package/dist/utils/units.js +176 -0
  130. package/dist/utils/units.js.map +1 -0
  131. package/dist/utils/validation.d.ts +16 -0
  132. package/dist/utils/validation.d.ts.map +1 -0
  133. package/dist/utils/validation.js +151 -0
  134. package/dist/utils/validation.js.map +1 -0
  135. package/dist/xml/XMLBuilder.d.ts +24 -0
  136. package/dist/xml/XMLBuilder.d.ts.map +1 -0
  137. package/dist/xml/XMLBuilder.js +126 -0
  138. package/dist/xml/XMLBuilder.js.map +1 -0
  139. package/dist/xml/XMLParser.d.ts +10 -0
  140. package/dist/xml/XMLParser.d.ts.map +1 -0
  141. package/dist/xml/XMLParser.js +120 -0
  142. package/dist/xml/XMLParser.js.map +1 -0
  143. package/dist/zip/ZipHandler.d.ts +50 -0
  144. package/dist/zip/ZipHandler.d.ts.map +1 -0
  145. package/dist/zip/ZipHandler.js +307 -0
  146. package/dist/zip/ZipHandler.js.map +1 -0
  147. package/dist/zip/ZipReader.d.ts +21 -0
  148. package/dist/zip/ZipReader.d.ts.map +1 -0
  149. package/dist/zip/ZipReader.js +152 -0
  150. package/dist/zip/ZipReader.js.map +1 -0
  151. package/dist/zip/ZipWriter.d.ts +20 -0
  152. package/dist/zip/ZipWriter.d.ts.map +1 -0
  153. package/dist/zip/ZipWriter.js +118 -0
  154. package/dist/zip/ZipWriter.js.map +1 -0
  155. package/dist/zip/errors.d.ts +19 -0
  156. package/dist/zip/errors.d.ts.map +1 -0
  157. package/dist/zip/errors.js +52 -0
  158. package/dist/zip/errors.js.map +1 -0
  159. package/dist/zip/types.d.ts +37 -0
  160. package/dist/zip/types.d.ts.map +1 -0
  161. package/dist/zip/types.js +23 -0
  162. package/dist/zip/types.js.map +1 -0
  163. package/package.json +59 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Document.js","sourceRoot":"","sources":["../../src/core/Document.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ export declare enum RelationshipType {
2
+ STYLES = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",
3
+ NUMBERING = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/numbering",
4
+ IMAGE = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",
5
+ HEADER = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/header",
6
+ FOOTER = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer",
7
+ FONT_TABLE = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/fontTable",
8
+ SETTINGS = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/settings",
9
+ THEME = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",
10
+ HYPERLINK = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink",
11
+ COMMENTS = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments",
12
+ WEB_SETTINGS = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/webSettings"
13
+ }
14
+ export interface RelationshipProperties {
15
+ id: string;
16
+ type: string | RelationshipType;
17
+ target: string;
18
+ targetMode?: 'Internal' | 'External';
19
+ }
20
+ export declare class Relationship {
21
+ private id;
22
+ private type;
23
+ private target;
24
+ private targetMode;
25
+ constructor(properties: RelationshipProperties);
26
+ private validate;
27
+ getId(): string;
28
+ getType(): string;
29
+ getTarget(): string;
30
+ getTargetMode(): 'Internal' | 'External';
31
+ isExternal(): boolean;
32
+ toXML(): string;
33
+ static create(properties: RelationshipProperties): Relationship;
34
+ static createStyles(id?: string): Relationship;
35
+ static createNumbering(id?: string): Relationship;
36
+ static createImage(id: string, target: string): Relationship;
37
+ static createHeader(id: string, target: string): Relationship;
38
+ static createFooter(id: string, target: string): Relationship;
39
+ static createHyperlink(id: string, url: string): Relationship;
40
+ static createComments(id?: string): Relationship;
41
+ }
42
+ //# sourceMappingURL=Relationship.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Relationship.d.ts","sourceRoot":"","sources":["../../src/core/Relationship.ts"],"names":[],"mappings":"AAUA,oBAAY,gBAAgB;IAE1B,MAAM,+EAA+E;IAGrF,SAAS,kFAAkF;IAG3F,KAAK,8EAA8E;IAGnF,MAAM,+EAA+E;IAGrF,MAAM,+EAA+E;IAGrF,UAAU,kFAAkF;IAG5F,QAAQ,iFAAiF;IAGzF,KAAK,8EAA8E;IAGnF,SAAS,kFAAkF;IAG3F,QAAQ,iFAAiF;IAGzF,YAAY,oFAAoF;CACjG;AAKD,MAAM,WAAW,sBAAsB;IAErC,EAAE,EAAE,MAAM,CAAC;IAGX,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAAC;IAGhC,MAAM,EAAE,MAAM,CAAC;IAGf,UAAU,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;CACtC;AAKD,qBAAa,YAAY;IACvB,OAAO,CAAC,EAAE,CAAS;IACnB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,UAAU,CAA0B;gBAMhC,UAAU,EAAE,sBAAsB;IAY9C,OAAO,CAAC,QAAQ;IAiBhB,KAAK,IAAI,MAAM;IAOf,OAAO,IAAI,MAAM;IAOjB,SAAS,IAAI,MAAM;IAOnB,aAAa,IAAI,UAAU,GAAG,UAAU;IAOxC,UAAU,IAAI,OAAO;IAOrB,KAAK,IAAI,MAAM;IAef,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,sBAAsB,GAAG,YAAY;IAQ/D,MAAM,CAAC,YAAY,CAAC,EAAE,GAAE,MAAe,GAAG,YAAY;IAYtD,MAAM,CAAC,eAAe,CAAC,EAAE,GAAE,MAAe,GAAG,YAAY;IAazD,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY;IAa5D,MAAM,CAAC,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY;IAa7D,MAAM,CAAC,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY;IAa7D,MAAM,CAAC,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,YAAY;IAa7D,MAAM,CAAC,cAAc,CAAC,EAAE,GAAE,MAAe,GAAG,YAAY;CAOzD"}
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Relationship = exports.RelationshipType = void 0;
4
+ var RelationshipType;
5
+ (function (RelationshipType) {
6
+ RelationshipType["STYLES"] = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles";
7
+ RelationshipType["NUMBERING"] = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/numbering";
8
+ RelationshipType["IMAGE"] = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/image";
9
+ RelationshipType["HEADER"] = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/header";
10
+ RelationshipType["FOOTER"] = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer";
11
+ RelationshipType["FONT_TABLE"] = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/fontTable";
12
+ RelationshipType["SETTINGS"] = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/settings";
13
+ RelationshipType["THEME"] = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme";
14
+ RelationshipType["HYPERLINK"] = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink";
15
+ RelationshipType["COMMENTS"] = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments";
16
+ RelationshipType["WEB_SETTINGS"] = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/webSettings";
17
+ })(RelationshipType || (exports.RelationshipType = RelationshipType = {}));
18
+ class Relationship {
19
+ constructor(properties) {
20
+ this.id = properties.id;
21
+ this.type = properties.type;
22
+ this.target = properties.target;
23
+ this.targetMode = properties.targetMode || 'Internal';
24
+ this.validate();
25
+ }
26
+ validate() {
27
+ if (!this.id || !this.id.startsWith('rId')) {
28
+ throw new Error(`Relationship ID must start with 'rId', got '${this.id}'`);
29
+ }
30
+ if (!this.type) {
31
+ throw new Error('Relationship type is required');
32
+ }
33
+ if (!this.target) {
34
+ throw new Error('Relationship target is required');
35
+ }
36
+ }
37
+ getId() {
38
+ return this.id;
39
+ }
40
+ getType() {
41
+ return this.type;
42
+ }
43
+ getTarget() {
44
+ return this.target;
45
+ }
46
+ getTargetMode() {
47
+ return this.targetMode;
48
+ }
49
+ isExternal() {
50
+ return this.targetMode === 'External';
51
+ }
52
+ toXML() {
53
+ let xml = ` <Relationship Id="${this.id}" Type="${this.type}" Target="${this.target}"`;
54
+ if (this.targetMode === 'External') {
55
+ xml += ` TargetMode="External"`;
56
+ }
57
+ xml += '/>';
58
+ return xml;
59
+ }
60
+ static create(properties) {
61
+ return new Relationship(properties);
62
+ }
63
+ static createStyles(id = 'rId1') {
64
+ return new Relationship({
65
+ id,
66
+ type: RelationshipType.STYLES,
67
+ target: 'styles.xml',
68
+ });
69
+ }
70
+ static createNumbering(id = 'rId2') {
71
+ return new Relationship({
72
+ id,
73
+ type: RelationshipType.NUMBERING,
74
+ target: 'numbering.xml',
75
+ });
76
+ }
77
+ static createImage(id, target) {
78
+ return new Relationship({
79
+ id,
80
+ type: RelationshipType.IMAGE,
81
+ target,
82
+ });
83
+ }
84
+ static createHeader(id, target) {
85
+ return new Relationship({
86
+ id,
87
+ type: RelationshipType.HEADER,
88
+ target,
89
+ });
90
+ }
91
+ static createFooter(id, target) {
92
+ return new Relationship({
93
+ id,
94
+ type: RelationshipType.FOOTER,
95
+ target,
96
+ });
97
+ }
98
+ static createHyperlink(id, url) {
99
+ return new Relationship({
100
+ id,
101
+ type: RelationshipType.HYPERLINK,
102
+ target: url,
103
+ targetMode: 'External',
104
+ });
105
+ }
106
+ static createComments(id = 'rId3') {
107
+ return new Relationship({
108
+ id,
109
+ type: RelationshipType.COMMENTS,
110
+ target: 'comments.xml',
111
+ });
112
+ }
113
+ }
114
+ exports.Relationship = Relationship;
115
+ //# sourceMappingURL=Relationship.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Relationship.js","sourceRoot":"","sources":["../../src/core/Relationship.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import { Relationship, RelationshipType } from './Relationship';
2
+ export declare class RelationshipManager {
3
+ private relationships;
4
+ private nextId;
5
+ constructor();
6
+ addRelationship(relationship: Relationship): Relationship;
7
+ getRelationship(id: string): Relationship | undefined;
8
+ getAllRelationships(): Relationship[];
9
+ getRelationshipsByType(type: string | RelationshipType): Relationship[];
10
+ hasRelationship(id: string): boolean;
11
+ removeRelationship(id: string): boolean;
12
+ getCount(): number;
13
+ clear(): this;
14
+ generateId(): string;
15
+ addStyles(): Relationship;
16
+ addNumbering(): Relationship;
17
+ addImage(target: string): Relationship;
18
+ addHeader(target: string): Relationship;
19
+ addFooter(target: string): Relationship;
20
+ addHyperlink(url: string): Relationship;
21
+ addComments(): Relationship;
22
+ generateXml(): string;
23
+ static createForDocument(): RelationshipManager;
24
+ static create(): RelationshipManager;
25
+ static fromXml(xml: string): RelationshipManager;
26
+ private static extractAttribute;
27
+ }
28
+ //# sourceMappingURL=RelationshipManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RelationshipManager.d.ts","sourceRoot":"","sources":["../../src/core/RelationshipManager.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAKhE,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,aAAa,CAA4B;IACjD,OAAO,CAAC,MAAM,CAAS;;IAevB,eAAe,CAAC,YAAY,EAAE,YAAY,GAAG,YAAY;IAmBzD,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAOrD,mBAAmB,IAAI,YAAY,EAAE;IAQrC,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,YAAY,EAAE;IAQvE,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IASpC,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAOvC,QAAQ,IAAI,MAAM;IAOlB,KAAK,IAAI,IAAI;IAUb,UAAU,IAAI,MAAM;IAQpB,SAAS,IAAI,YAAY;IASzB,YAAY,IAAI,YAAY;IAU5B,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY;IAUtC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY;IAUvC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY;IAUvC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY;IASvC,WAAW,IAAI,YAAY;IAS3B,WAAW,IAAI,MAAM;IAmBrB,MAAM,CAAC,iBAAiB,IAAI,mBAAmB;IAW/C,MAAM,CAAC,MAAM,IAAI,mBAAmB;IASpC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,mBAAmB;IA6ChD,OAAO,CAAC,MAAM,CAAC,gBAAgB;CAMhC"}
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RelationshipManager = void 0;
4
+ const Relationship_1 = require("./Relationship");
5
+ class RelationshipManager {
6
+ constructor() {
7
+ this.relationships = new Map();
8
+ this.nextId = 1;
9
+ }
10
+ addRelationship(relationship) {
11
+ this.relationships.set(relationship.getId(), relationship);
12
+ const idMatch = relationship.getId().match(/^rId(\d+)$/);
13
+ if (idMatch && idMatch[1]) {
14
+ const idNum = parseInt(idMatch[1], 10);
15
+ if (idNum >= this.nextId) {
16
+ this.nextId = idNum + 1;
17
+ }
18
+ }
19
+ return relationship;
20
+ }
21
+ getRelationship(id) {
22
+ return this.relationships.get(id);
23
+ }
24
+ getAllRelationships() {
25
+ return Array.from(this.relationships.values());
26
+ }
27
+ getRelationshipsByType(type) {
28
+ return this.getAllRelationships().filter(rel => rel.getType() === type);
29
+ }
30
+ hasRelationship(id) {
31
+ return this.relationships.has(id);
32
+ }
33
+ removeRelationship(id) {
34
+ return this.relationships.delete(id);
35
+ }
36
+ getCount() {
37
+ return this.relationships.size;
38
+ }
39
+ clear() {
40
+ this.relationships.clear();
41
+ this.nextId = 1;
42
+ return this;
43
+ }
44
+ generateId() {
45
+ return `rId${this.nextId++}`;
46
+ }
47
+ addStyles() {
48
+ const id = this.generateId();
49
+ return this.addRelationship(Relationship_1.Relationship.createStyles(id));
50
+ }
51
+ addNumbering() {
52
+ const id = this.generateId();
53
+ return this.addRelationship(Relationship_1.Relationship.createNumbering(id));
54
+ }
55
+ addImage(target) {
56
+ const id = this.generateId();
57
+ return this.addRelationship(Relationship_1.Relationship.createImage(id, target));
58
+ }
59
+ addHeader(target) {
60
+ const id = this.generateId();
61
+ return this.addRelationship(Relationship_1.Relationship.createHeader(id, target));
62
+ }
63
+ addFooter(target) {
64
+ const id = this.generateId();
65
+ return this.addRelationship(Relationship_1.Relationship.createFooter(id, target));
66
+ }
67
+ addHyperlink(url) {
68
+ const id = this.generateId();
69
+ return this.addRelationship(Relationship_1.Relationship.createHyperlink(id, url));
70
+ }
71
+ addComments() {
72
+ const id = this.generateId();
73
+ return this.addRelationship(Relationship_1.Relationship.createComments(id));
74
+ }
75
+ generateXml() {
76
+ const relationships = this.getAllRelationships();
77
+ let xml = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n';
78
+ xml += '<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">\n';
79
+ for (const rel of relationships) {
80
+ xml += rel.toXML() + '\n';
81
+ }
82
+ xml += '</Relationships>';
83
+ return xml;
84
+ }
85
+ static createForDocument() {
86
+ const manager = new RelationshipManager();
87
+ manager.addStyles();
88
+ manager.addNumbering();
89
+ return manager;
90
+ }
91
+ static create() {
92
+ return new RelationshipManager();
93
+ }
94
+ static fromXml(xml) {
95
+ const manager = new RelationshipManager();
96
+ const relationshipPattern = /<Relationship\s+([^>]+)\/>/g;
97
+ let match;
98
+ while ((match = relationshipPattern.exec(xml)) !== null) {
99
+ const attributesString = match[1];
100
+ if (!attributesString) {
101
+ continue;
102
+ }
103
+ const id = this.extractAttribute(attributesString, 'Id');
104
+ const type = this.extractAttribute(attributesString, 'Type');
105
+ const target = this.extractAttribute(attributesString, 'Target');
106
+ const targetMode = this.extractAttribute(attributesString, 'TargetMode');
107
+ if (id !== undefined && type !== undefined && target !== undefined) {
108
+ const relationship = Relationship_1.Relationship.create({
109
+ id,
110
+ type,
111
+ target,
112
+ targetMode: targetMode || 'Internal',
113
+ });
114
+ manager.addRelationship(relationship);
115
+ }
116
+ }
117
+ return manager;
118
+ }
119
+ static extractAttribute(attributesString, attributeName) {
120
+ const pattern = new RegExp(`${attributeName}=["']([^"']+)["']`, 'i');
121
+ const match = attributesString.match(pattern);
122
+ return match ? match[1] : undefined;
123
+ }
124
+ }
125
+ exports.RelationshipManager = RelationshipManager;
126
+ //# sourceMappingURL=RelationshipManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RelationshipManager.js","sourceRoot":"","sources":["../../src/core/RelationshipManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { XMLElement } from '../xml/XMLBuilder';
2
+ export interface BookmarkProperties {
3
+ id?: number;
4
+ name: string;
5
+ }
6
+ export declare class Bookmark {
7
+ private id;
8
+ private name;
9
+ constructor(properties: BookmarkProperties);
10
+ private normalizeName;
11
+ getId(): number;
12
+ setId(id: number): void;
13
+ getName(): string;
14
+ setName(name: string): this;
15
+ toStartXML(): XMLElement;
16
+ toEndXML(): XMLElement;
17
+ toXML(): [XMLElement, XMLElement];
18
+ static create(name: string): Bookmark;
19
+ static createForHeading(headingText: string): Bookmark;
20
+ static createAuto(prefix?: string): Bookmark;
21
+ }
22
+ //# sourceMappingURL=Bookmark.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Bookmark.d.ts","sourceRoot":"","sources":["../../src/elements/Bookmark.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAK/C,MAAM,WAAW,kBAAkB;IAEjC,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,IAAI,EAAE,MAAM,CAAC;CACd;AAKD,qBAAa,QAAQ;IACnB,OAAO,CAAC,EAAE,CAAS;IACnB,OAAO,CAAC,IAAI,CAAS;gBAMT,UAAU,EAAE,kBAAkB;IAc1C,OAAO,CAAC,aAAa;IAyBrB,KAAK,IAAI,MAAM;IAQf,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAOvB,OAAO,IAAI,MAAM;IAOjB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAS3B,UAAU,IAAI,UAAU;IAexB,QAAQ,IAAI,UAAU;IActB,KAAK,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC;IASjC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ;IAUrC,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,QAAQ;IAetD,MAAM,CAAC,UAAU,CAAC,MAAM,GAAE,MAAmB,GAAG,QAAQ;CAMzD"}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Bookmark = void 0;
4
+ class Bookmark {
5
+ constructor(properties) {
6
+ this.id = properties.id ?? 0;
7
+ this.name = this.normalizeName(properties.name);
8
+ }
9
+ normalizeName(name) {
10
+ let normalized = name.replace(/[^a-zA-Z0-9_]/g, '_');
11
+ if (normalized.length > 0 && /^\d/.test(normalized)) {
12
+ normalized = '_' + normalized;
13
+ }
14
+ if (normalized.length > 40) {
15
+ normalized = normalized.substring(0, 40);
16
+ }
17
+ if (normalized.length === 0) {
18
+ normalized = '_bookmark';
19
+ }
20
+ return normalized;
21
+ }
22
+ getId() {
23
+ return this.id;
24
+ }
25
+ setId(id) {
26
+ this.id = id;
27
+ }
28
+ getName() {
29
+ return this.name;
30
+ }
31
+ setName(name) {
32
+ this.name = this.normalizeName(name);
33
+ return this;
34
+ }
35
+ toStartXML() {
36
+ return {
37
+ name: 'w:bookmarkStart',
38
+ attributes: {
39
+ 'w:id': this.id.toString(),
40
+ 'w:name': this.name,
41
+ },
42
+ selfClosing: true,
43
+ };
44
+ }
45
+ toEndXML() {
46
+ return {
47
+ name: 'w:bookmarkEnd',
48
+ attributes: {
49
+ 'w:id': this.id.toString(),
50
+ },
51
+ selfClosing: true,
52
+ };
53
+ }
54
+ toXML() {
55
+ return [this.toStartXML(), this.toEndXML()];
56
+ }
57
+ static create(name) {
58
+ return new Bookmark({ name });
59
+ }
60
+ static createForHeading(headingText) {
61
+ const name = headingText
62
+ .trim()
63
+ .replace(/[^a-zA-Z0-9]+/g, '_')
64
+ .substring(0, 40);
65
+ return new Bookmark({ name: name || '_heading' });
66
+ }
67
+ static createAuto(prefix = 'bookmark') {
68
+ const timestamp = Date.now().toString(36);
69
+ const random = Math.random().toString(36).substring(2, 7);
70
+ const name = `${prefix}_${timestamp}_${random}`;
71
+ return new Bookmark({ name });
72
+ }
73
+ }
74
+ exports.Bookmark = Bookmark;
75
+ //# sourceMappingURL=Bookmark.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Bookmark.js","sourceRoot":"","sources":["../../src/elements/Bookmark.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { Bookmark } from './Bookmark';
2
+ export declare class BookmarkManager {
3
+ private bookmarks;
4
+ private nextId;
5
+ register(bookmark: Bookmark): Bookmark;
6
+ getBookmark(name: string): Bookmark | undefined;
7
+ hasBookmark(name: string): boolean;
8
+ getAllBookmarks(): Bookmark[];
9
+ getCount(): number;
10
+ removeBookmark(name: string): boolean;
11
+ clear(): void;
12
+ getUniqueName(baseName: string): string;
13
+ createBookmark(name: string): Bookmark;
14
+ createHeadingBookmark(headingText: string): Bookmark;
15
+ getStats(): {
16
+ total: number;
17
+ nextId: number;
18
+ names: string[];
19
+ };
20
+ static create(): BookmarkManager;
21
+ }
22
+ //# sourceMappingURL=BookmarkManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BookmarkManager.d.ts","sourceRoot":"","sources":["../../src/elements/BookmarkManager.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAKtC,qBAAa,eAAe;IAC1B,OAAO,CAAC,SAAS,CAAoC;IACrD,OAAO,CAAC,MAAM,CAAa;IAS3B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,QAAQ;IAwBtC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;IAS/C,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAQlC,eAAe,IAAI,QAAQ,EAAE;IAQ7B,QAAQ,IAAI,MAAM;IASlB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAOrC,KAAK,IAAI,IAAI;IAUb,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IA6BvC,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ;IAYtC,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,QAAQ;IAWpD,QAAQ,IAAI;QACV,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,EAAE,CAAC;KACjB;IAYD,MAAM,CAAC,MAAM,IAAI,eAAe;CAGjC"}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BookmarkManager = void 0;
4
+ const Bookmark_1 = require("./Bookmark");
5
+ class BookmarkManager {
6
+ constructor() {
7
+ this.bookmarks = new Map();
8
+ this.nextId = 0;
9
+ }
10
+ register(bookmark) {
11
+ const name = bookmark.getName();
12
+ if (this.bookmarks.has(name)) {
13
+ throw new Error(`Bookmark with name "${name}" already exists. Bookmark names must be unique within a document.`);
14
+ }
15
+ bookmark.setId(this.nextId++);
16
+ this.bookmarks.set(name, bookmark);
17
+ return bookmark;
18
+ }
19
+ getBookmark(name) {
20
+ return this.bookmarks.get(name);
21
+ }
22
+ hasBookmark(name) {
23
+ return this.bookmarks.has(name);
24
+ }
25
+ getAllBookmarks() {
26
+ return Array.from(this.bookmarks.values());
27
+ }
28
+ getCount() {
29
+ return this.bookmarks.size;
30
+ }
31
+ removeBookmark(name) {
32
+ return this.bookmarks.delete(name);
33
+ }
34
+ clear() {
35
+ this.bookmarks.clear();
36
+ this.nextId = 0;
37
+ }
38
+ getUniqueName(baseName) {
39
+ if (!this.hasBookmark(baseName)) {
40
+ return baseName;
41
+ }
42
+ let counter = 1;
43
+ let uniqueName = `${baseName}_${counter}`;
44
+ while (this.hasBookmark(uniqueName)) {
45
+ counter++;
46
+ uniqueName = `${baseName}_${counter}`;
47
+ if (counter > 1000) {
48
+ throw new Error(`Could not generate unique bookmark name from base "${baseName}"`);
49
+ }
50
+ }
51
+ return uniqueName;
52
+ }
53
+ createBookmark(name) {
54
+ const uniqueName = this.getUniqueName(name);
55
+ const bookmark = Bookmark_1.Bookmark.create(uniqueName);
56
+ return this.register(bookmark);
57
+ }
58
+ createHeadingBookmark(headingText) {
59
+ const bookmark = Bookmark_1.Bookmark.createForHeading(headingText);
60
+ const uniqueName = this.getUniqueName(bookmark.getName());
61
+ bookmark.setName(uniqueName);
62
+ return this.register(bookmark);
63
+ }
64
+ getStats() {
65
+ return {
66
+ total: this.bookmarks.size,
67
+ nextId: this.nextId,
68
+ names: Array.from(this.bookmarks.keys()),
69
+ };
70
+ }
71
+ static create() {
72
+ return new BookmarkManager();
73
+ }
74
+ }
75
+ exports.BookmarkManager = BookmarkManager;
76
+ //# sourceMappingURL=BookmarkManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BookmarkManager.js","sourceRoot":"","sources":["../../src/elements/BookmarkManager.ts"],"names":[],"mappings":"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"}