docxodus 3.4.1 → 3.5.1

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.
@@ -0,0 +1,272 @@
1
+ "use strict";
2
+ var DocxodusPagination = (() => {
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+
21
+ // src/pagination.ts
22
+ var pagination_exports = {};
23
+ __export(pagination_exports, {
24
+ PaginationEngine: () => PaginationEngine,
25
+ paginateHtml: () => paginateHtml
26
+ });
27
+ var DEFAULT_PAGE_WIDTH = 612;
28
+ var DEFAULT_PAGE_HEIGHT = 792;
29
+ var DEFAULT_MARGIN = 72;
30
+ function pxToPt(px) {
31
+ return px * 0.75;
32
+ }
33
+ function ptToPx(pt) {
34
+ return pt / 0.75;
35
+ }
36
+ function parseDimensions(section) {
37
+ const pageWidth = parseFloat(section.dataset.pageWidth || "") || DEFAULT_PAGE_WIDTH;
38
+ const pageHeight = parseFloat(section.dataset.pageHeight || "") || DEFAULT_PAGE_HEIGHT;
39
+ const contentWidth = parseFloat(section.dataset.contentWidth || "") || pageWidth - 2 * DEFAULT_MARGIN;
40
+ const contentHeight = parseFloat(section.dataset.contentHeight || "") || pageHeight - 2 * DEFAULT_MARGIN;
41
+ const marginTop = parseFloat(section.dataset.marginTop || "") || DEFAULT_MARGIN;
42
+ const marginRight = parseFloat(section.dataset.marginRight || "") || DEFAULT_MARGIN;
43
+ const marginBottom = parseFloat(section.dataset.marginBottom || "") || DEFAULT_MARGIN;
44
+ const marginLeft = parseFloat(section.dataset.marginLeft || "") || DEFAULT_MARGIN;
45
+ return {
46
+ pageWidth,
47
+ pageHeight,
48
+ contentWidth,
49
+ contentHeight,
50
+ marginTop,
51
+ marginRight,
52
+ marginBottom,
53
+ marginLeft
54
+ };
55
+ }
56
+ var PaginationEngine = class {
57
+ /**
58
+ * Creates a new pagination engine.
59
+ *
60
+ * @param staging - The staging element or its ID containing the content to paginate
61
+ * @param container - The container element or its ID where pages will be rendered
62
+ * @param options - Pagination options
63
+ */
64
+ constructor(staging, container, options = {}) {
65
+ this.stagingElement = typeof staging === "string" ? document.getElementById(staging) : staging;
66
+ this.containerElement = typeof container === "string" ? document.getElementById(container) : container;
67
+ if (!this.stagingElement) {
68
+ throw new Error("Staging element not found");
69
+ }
70
+ if (!this.containerElement) {
71
+ throw new Error("Container element not found");
72
+ }
73
+ this.scale = options.scale ?? 1;
74
+ this.cssPrefix = options.cssPrefix ?? "page-";
75
+ this.showPageNumbers = options.showPageNumbers ?? true;
76
+ this.pageGap = options.pageGap ?? 20;
77
+ }
78
+ /**
79
+ * Runs the pagination process.
80
+ *
81
+ * @returns PaginationResult with page information
82
+ */
83
+ paginate() {
84
+ const pages = [];
85
+ let pageNumber = 1;
86
+ const sections = this.stagingElement.querySelectorAll(
87
+ "[data-section-index]"
88
+ );
89
+ const sectionsToProcess = sections.length > 0 ? Array.from(sections) : [this.stagingElement];
90
+ for (const section of sectionsToProcess) {
91
+ const sectionIndex = parseInt(section.dataset.sectionIndex || "0", 10);
92
+ const dims = parseDimensions(section);
93
+ this.stagingElement.style.visibility = "hidden";
94
+ this.stagingElement.style.position = "absolute";
95
+ this.stagingElement.style.left = "-9999px";
96
+ this.stagingElement.style.display = "block";
97
+ section.style.width = `${dims.contentWidth}pt`;
98
+ const blocks = this.measureBlocks(section, dims);
99
+ const sectionPages = this.flowToPages(blocks, dims, pageNumber, sectionIndex);
100
+ pages.push(...sectionPages);
101
+ pageNumber += sectionPages.length;
102
+ }
103
+ this.stagingElement.style.display = "none";
104
+ return { totalPages: pages.length, pages };
105
+ }
106
+ /**
107
+ * Measures all content blocks in a section.
108
+ */
109
+ measureBlocks(section, dims) {
110
+ const blocks = [];
111
+ const children = Array.from(section.children);
112
+ for (const child of children) {
113
+ if (child.dataset.sectionIndex !== void 0) {
114
+ const nestedBlocks = this.measureBlocks(child, dims);
115
+ blocks.push(...nestedBlocks);
116
+ continue;
117
+ }
118
+ const rect = child.getBoundingClientRect();
119
+ const style = window.getComputedStyle(child);
120
+ const marginTopPx = parseFloat(style.marginTop) || 0;
121
+ const marginBottomPx = parseFloat(style.marginBottom) || 0;
122
+ const heightPt = pxToPt(rect.height);
123
+ const marginTopPt = pxToPt(marginTopPx);
124
+ const marginBottomPt = pxToPt(marginBottomPx);
125
+ const isPageBreak = child.dataset.pageBreak === "true" || child.classList.contains(`${this.cssPrefix}break`);
126
+ blocks.push({
127
+ element: child,
128
+ heightPt,
129
+ marginTopPt,
130
+ marginBottomPt,
131
+ keepWithNext: child.dataset.keepWithNext === "true",
132
+ keepLines: child.dataset.keepLines === "true",
133
+ pageBreakBefore: child.dataset.pageBreakBefore === "true",
134
+ isPageBreak
135
+ });
136
+ }
137
+ return blocks;
138
+ }
139
+ /**
140
+ * Flows measured blocks into page containers.
141
+ */
142
+ flowToPages(blocks, dims, startPageNumber, sectionIndex) {
143
+ const pages = [];
144
+ let currentContent = [];
145
+ let remainingHeight = dims.contentHeight;
146
+ let pageNumber = startPageNumber;
147
+ let prevMarginBottomPt = 0;
148
+ const finishPage = () => {
149
+ if (currentContent.length === 0) return;
150
+ const page = this.createPage(dims, pageNumber, sectionIndex, currentContent);
151
+ pages.push(page);
152
+ pageNumber++;
153
+ currentContent = [];
154
+ remainingHeight = dims.contentHeight;
155
+ prevMarginBottomPt = 0;
156
+ };
157
+ for (let i = 0; i < blocks.length; i++) {
158
+ const block = blocks[i];
159
+ const nextBlock = blocks[i + 1];
160
+ if (block.isPageBreak) {
161
+ finishPage();
162
+ continue;
163
+ }
164
+ if (block.pageBreakBefore && currentContent.length > 0) {
165
+ finishPage();
166
+ }
167
+ const isFirstOnPage = currentContent.length === 0;
168
+ let effectiveMarginTop = block.marginTopPt;
169
+ if (!isFirstOnPage) {
170
+ effectiveMarginTop = Math.max(block.marginTopPt, prevMarginBottomPt) - prevMarginBottomPt;
171
+ }
172
+ const blockSpace = effectiveMarginTop + block.heightPt + block.marginBottomPt;
173
+ let neededHeight = blockSpace;
174
+ if (block.keepWithNext && nextBlock && !nextBlock.isPageBreak) {
175
+ const collapsedMargin = Math.max(block.marginBottomPt, nextBlock.marginTopPt);
176
+ neededHeight = effectiveMarginTop + block.heightPt + collapsedMargin + nextBlock.heightPt + nextBlock.marginBottomPt;
177
+ }
178
+ if (blockSpace <= remainingHeight) {
179
+ currentContent.push(block.element.cloneNode(true));
180
+ remainingHeight -= blockSpace;
181
+ prevMarginBottomPt = block.marginBottomPt;
182
+ } else if (block.heightPt + block.marginTopPt + block.marginBottomPt <= dims.contentHeight) {
183
+ finishPage();
184
+ const newPageSpace = block.marginTopPt + block.heightPt + block.marginBottomPt;
185
+ currentContent.push(block.element.cloneNode(true));
186
+ remainingHeight = dims.contentHeight - newPageSpace;
187
+ prevMarginBottomPt = block.marginBottomPt;
188
+ } else {
189
+ if (currentContent.length > 0) {
190
+ finishPage();
191
+ }
192
+ currentContent.push(block.element.cloneNode(true));
193
+ finishPage();
194
+ }
195
+ }
196
+ finishPage();
197
+ return pages;
198
+ }
199
+ /**
200
+ * Creates a page container element.
201
+ */
202
+ createPage(dims, pageNumber, sectionIndex, content) {
203
+ const pageBox = document.createElement("div");
204
+ pageBox.className = `${this.cssPrefix}box`;
205
+ pageBox.style.width = `${dims.pageWidth}pt`;
206
+ pageBox.style.height = `${dims.pageHeight}pt`;
207
+ pageBox.style.overflow = "hidden";
208
+ pageBox.style.position = "relative";
209
+ if (this.scale !== 1) {
210
+ pageBox.style.zoom = String(this.scale);
211
+ pageBox.style.transform = `scale(${this.scale})`;
212
+ pageBox.style.transformOrigin = "top left";
213
+ const heightReductionPt = dims.pageHeight * (1 - this.scale);
214
+ const widthReductionPt = dims.pageWidth * (1 - this.scale);
215
+ const heightReductionPx = ptToPx(heightReductionPt);
216
+ const widthReductionPx = ptToPx(widthReductionPt);
217
+ pageBox.style.marginRight = `-${widthReductionPx}px`;
218
+ pageBox.style.marginBottom = `${this.pageGap - heightReductionPx}px`;
219
+ }
220
+ pageBox.style.willChange = "transform";
221
+ pageBox.style.contain = "layout paint";
222
+ pageBox.dataset.pageNumber = String(pageNumber);
223
+ pageBox.dataset.sectionIndex = String(sectionIndex);
224
+ const contentArea = document.createElement("div");
225
+ contentArea.className = `${this.cssPrefix}content`;
226
+ contentArea.style.position = "absolute";
227
+ contentArea.style.top = `${dims.marginTop}pt`;
228
+ contentArea.style.left = `${dims.marginLeft}pt`;
229
+ contentArea.style.width = `${dims.contentWidth}pt`;
230
+ contentArea.style.height = `${dims.contentHeight}pt`;
231
+ contentArea.style.overflow = "hidden";
232
+ for (const el of content) {
233
+ contentArea.appendChild(el);
234
+ }
235
+ pageBox.appendChild(contentArea);
236
+ if (this.showPageNumbers) {
237
+ const pageNum = document.createElement("div");
238
+ pageNum.className = `${this.cssPrefix}number`;
239
+ pageNum.textContent = String(pageNumber);
240
+ pageBox.appendChild(pageNum);
241
+ }
242
+ this.containerElement.appendChild(pageBox);
243
+ return {
244
+ pageNumber,
245
+ sectionIndex,
246
+ dimensions: dims,
247
+ element: pageBox
248
+ };
249
+ }
250
+ };
251
+ function paginateHtml(html, container, options = {}) {
252
+ const containerEl = typeof container === "string" ? document.getElementById(container) : container;
253
+ if (!containerEl) {
254
+ throw new Error("Container element not found");
255
+ }
256
+ containerEl.innerHTML = html;
257
+ const cssPrefix = options.cssPrefix ?? "page-";
258
+ const staging = containerEl.querySelector("#pagination-staging") || containerEl.querySelector(`.${cssPrefix}staging`);
259
+ const pageContainer = containerEl.querySelector("#pagination-container") || containerEl.querySelector(`.${cssPrefix}container`);
260
+ if (!staging) {
261
+ throw new Error(
262
+ "Pagination staging element not found. Make sure the HTML was generated with PaginationMode.Paginated"
263
+ );
264
+ }
265
+ if (!pageContainer) {
266
+ throw new Error("Pagination container element not found");
267
+ }
268
+ const engine = new PaginationEngine(staging, pageContainer, options);
269
+ return engine.paginate();
270
+ }
271
+ return __toCommonJS(pagination_exports);
272
+ })();
@@ -31,8 +31,12 @@ export interface PageDimensions {
31
31
  export interface MeasuredBlock {
32
32
  /** The DOM element */
33
33
  element: HTMLElement;
34
- /** Measured height in points */
34
+ /** Measured height in points (content + padding + border, excluding margins) */
35
35
  heightPt: number;
36
+ /** Top margin in points */
37
+ marginTopPt: number;
38
+ /** Bottom margin in points */
39
+ marginBottomPt: number;
36
40
  /** Whether to keep this block with the next one */
37
41
  keepWithNext: boolean;
38
42
  /** Whether to keep all lines of this block together */
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,2BAA2B;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,4BAA4B;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,YAAY,EAAE,MAAM,CAAC;IACrB,yDAAyD;IACzD,aAAa,EAAE,MAAM,CAAC;IACtB,2BAA2B;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,4BAA4B;IAC5B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,sBAAsB;IACtB,OAAO,EAAE,WAAW,CAAC;IACrB,gCAAgC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,mDAAmD;IACnD,YAAY,EAAE,OAAO,CAAC;IACtB,uDAAuD;IACvD,SAAS,EAAE,OAAO,CAAC;IACnB,sDAAsD;IACtD,eAAe,EAAE,OAAO,CAAC;IACzB,0CAA0C;IAC1C,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,0BAA0B;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,sBAAsB;IACtB,UAAU,EAAE,cAAc,CAAC;IAC3B,iCAAiC;IACjC,OAAO,EAAE,WAAW,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,4BAA4B;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,KAAK,EAAE,QAAQ,EAAE,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,0DAA0D;IAC1D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0DAA0D;IAC1D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kDAAkD;IAClD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,+CAA+C;IAC/C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AA8CD;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,cAAc,CAAc;IACpC,OAAO,CAAC,gBAAgB,CAAc;IACtC,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,eAAe,CAAU;IACjC,OAAO,CAAC,OAAO,CAAS;IAExB;;;;;;OAMG;gBAED,OAAO,EAAE,WAAW,GAAG,MAAM,EAC7B,SAAS,EAAE,WAAW,GAAG,MAAM,EAC/B,OAAO,GAAE,iBAAsB;IAwBjC;;;;OAIG;IACH,QAAQ,IAAI,gBAAgB;IAyC5B;;OAEG;IACH,OAAO,CAAC,aAAa;IAmCrB;;OAEG;IACH,OAAO,CAAC,WAAW;IAsEnB;;OAEG;IACH,OAAO,CAAC,UAAU;CAoDnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,WAAW,GAAG,MAAM,EAC/B,OAAO,GAAE,iBAAsB,GAC9B,gBAAgB,CAgClB"}
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,2BAA2B;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,4BAA4B;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,YAAY,EAAE,MAAM,CAAC;IACrB,yDAAyD;IACzD,aAAa,EAAE,MAAM,CAAC;IACtB,2BAA2B;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,4BAA4B;IAC5B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,sBAAsB;IACtB,OAAO,EAAE,WAAW,CAAC;IACrB,gFAAgF;IAChF,QAAQ,EAAE,MAAM,CAAC;IACjB,2BAA2B;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,mDAAmD;IACnD,YAAY,EAAE,OAAO,CAAC;IACtB,uDAAuD;IACvD,SAAS,EAAE,OAAO,CAAC;IACnB,sDAAsD;IACtD,eAAe,EAAE,OAAO,CAAC;IACzB,0CAA0C;IAC1C,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,0BAA0B;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,sBAAsB;IACtB,UAAU,EAAE,cAAc,CAAC;IAC3B,iCAAiC;IACjC,OAAO,EAAE,WAAW,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,4BAA4B;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,KAAK,EAAE,QAAQ,EAAE,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,0DAA0D;IAC1D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0DAA0D;IAC1D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kDAAkD;IAClD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,+CAA+C;IAC/C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AA8CD;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,cAAc,CAAc;IACpC,OAAO,CAAC,gBAAgB,CAAc;IACtC,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,eAAe,CAAU;IACjC,OAAO,CAAC,OAAO,CAAS;IAExB;;;;;;OAMG;gBAED,OAAO,EAAE,WAAW,GAAG,MAAM,EAC7B,SAAS,EAAE,WAAW,GAAG,MAAM,EAC/B,OAAO,GAAE,iBAAsB;IAwBjC;;;;OAIG;IACH,QAAQ,IAAI,gBAAgB;IAyC5B;;OAEG;IACH,OAAO,CAAC,aAAa;IA4CrB;;OAEG;IACH,OAAO,CAAC,WAAW;IA4FnB;;OAEG;IACH,OAAO,CAAC,UAAU;CA0EnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,WAAW,GAAG,MAAM,EAC/B,OAAO,GAAE,iBAAsB,GAC9B,gBAAgB,CAgClB"}
@@ -123,13 +123,22 @@ export class PaginationEngine {
123
123
  blocks.push(...nestedBlocks);
124
124
  continue;
125
125
  }
126
+ // Measure height and margins separately for proper margin collapsing calculation
127
+ // getBoundingClientRect() returns content+padding+border, not margins
126
128
  const rect = child.getBoundingClientRect();
129
+ const style = window.getComputedStyle(child);
130
+ const marginTopPx = parseFloat(style.marginTop) || 0;
131
+ const marginBottomPx = parseFloat(style.marginBottom) || 0;
127
132
  const heightPt = pxToPt(rect.height);
133
+ const marginTopPt = pxToPt(marginTopPx);
134
+ const marginBottomPt = pxToPt(marginBottomPx);
128
135
  const isPageBreak = child.dataset.pageBreak === "true" ||
129
136
  child.classList.contains(`${this.cssPrefix}break`);
130
137
  blocks.push({
131
138
  element: child,
132
139
  heightPt,
140
+ marginTopPt,
141
+ marginBottomPt,
133
142
  keepWithNext: child.dataset.keepWithNext === "true",
134
143
  keepLines: child.dataset.keepLines === "true",
135
144
  pageBreakBefore: child.dataset.pageBreakBefore === "true",
@@ -146,6 +155,8 @@ export class PaginationEngine {
146
155
  let currentContent = [];
147
156
  let remainingHeight = dims.contentHeight;
148
157
  let pageNumber = startPageNumber;
158
+ // Track the previous block's bottom margin for margin collapsing
159
+ let prevMarginBottomPt = 0;
149
160
  const finishPage = () => {
150
161
  if (currentContent.length === 0)
151
162
  return;
@@ -154,6 +165,7 @@ export class PaginationEngine {
154
165
  pageNumber++;
155
166
  currentContent = [];
156
167
  remainingHeight = dims.contentHeight;
168
+ prevMarginBottomPt = 0; // Reset margin tracking for new page
157
169
  };
158
170
  for (let i = 0; i < blocks.length; i++) {
159
171
  const block = blocks[i];
@@ -167,22 +179,40 @@ export class PaginationEngine {
167
179
  if (block.pageBreakBefore && currentContent.length > 0) {
168
180
  finishPage();
169
181
  }
182
+ // Calculate the effective height this block will consume
183
+ // Account for margin collapsing: the gap between blocks is max(prevBottom, currTop), not sum
184
+ const isFirstOnPage = currentContent.length === 0;
185
+ let effectiveMarginTop = block.marginTopPt;
186
+ if (!isFirstOnPage) {
187
+ // Margin collapsing: use the larger of the two adjacent margins
188
+ effectiveMarginTop = Math.max(block.marginTopPt, prevMarginBottomPt) - prevMarginBottomPt;
189
+ }
190
+ // Total height = top margin gap + content + bottom margin
191
+ // But we only count bottom margin if it's the last block (otherwise it collapses with next)
192
+ const blockSpace = effectiveMarginTop + block.heightPt + block.marginBottomPt;
170
193
  // Calculate needed height (including keepWithNext)
171
- let neededHeight = block.heightPt;
194
+ let neededHeight = blockSpace;
172
195
  if (block.keepWithNext && nextBlock && !nextBlock.isPageBreak) {
173
- neededHeight += nextBlock.heightPt;
196
+ // For keepWithNext, include the next block with collapsed margins
197
+ const collapsedMargin = Math.max(block.marginBottomPt, nextBlock.marginTopPt);
198
+ neededHeight = effectiveMarginTop + block.heightPt + collapsedMargin +
199
+ nextBlock.heightPt + nextBlock.marginBottomPt;
174
200
  }
175
201
  // Check if block fits on current page
176
- if (block.heightPt <= remainingHeight) {
202
+ if (blockSpace <= remainingHeight) {
177
203
  // Block fits
178
204
  currentContent.push(block.element.cloneNode(true));
179
- remainingHeight -= block.heightPt;
205
+ remainingHeight -= blockSpace;
206
+ prevMarginBottomPt = block.marginBottomPt;
180
207
  }
181
- else if (block.heightPt <= dims.contentHeight) {
208
+ else if (block.heightPt + block.marginTopPt + block.marginBottomPt <= dims.contentHeight) {
182
209
  // Block doesn't fit but will fit on a new page
183
210
  finishPage();
211
+ // On new page, include full top margin
212
+ const newPageSpace = block.marginTopPt + block.heightPt + block.marginBottomPt;
184
213
  currentContent.push(block.element.cloneNode(true));
185
- remainingHeight = dims.contentHeight - block.heightPt;
214
+ remainingHeight = dims.contentHeight - newPageSpace;
215
+ prevMarginBottomPt = block.marginBottomPt;
186
216
  }
187
217
  else {
188
218
  // Block is taller than a page - add it and let it overflow
@@ -202,24 +232,47 @@ export class PaginationEngine {
202
232
  * Creates a page container element.
203
233
  */
204
234
  createPage(dims, pageNumber, sectionIndex, content) {
205
- const scaledWidth = dims.pageWidth * this.scale;
206
- const scaledHeight = dims.pageHeight * this.scale;
207
- // Create page box
235
+ // Create page box at full size, then scale the entire box
236
+ // This ensures proper clipping and consistent scaling of all elements
208
237
  const pageBox = document.createElement("div");
209
238
  pageBox.className = `${this.cssPrefix}box`;
210
- pageBox.style.width = `${scaledWidth}pt`;
211
- pageBox.style.height = `${scaledHeight}pt`;
239
+ pageBox.style.width = `${dims.pageWidth}pt`;
240
+ pageBox.style.height = `${dims.pageHeight}pt`;
241
+ pageBox.style.overflow = "hidden";
242
+ pageBox.style.position = "relative";
243
+ // Use CSS zoom for better text rendering when supported, fall back to transform
244
+ // Zoom affects layout (no negative margin hack needed) and renders text more crisply
245
+ // Note: zoom is non-standard but supported in all major browsers
246
+ if (this.scale !== 1) {
247
+ // Try zoom first (better text quality), with transform as fallback
248
+ pageBox.style.zoom = String(this.scale);
249
+ // For browsers that don't support zoom, also set transform
250
+ // The zoom takes precedence in supporting browsers
251
+ pageBox.style.transform = `scale(${this.scale})`;
252
+ pageBox.style.transformOrigin = "top left";
253
+ // Compensate for transform not affecting layout (only needed if zoom not supported)
254
+ // Convert pt to px for consistent unit math
255
+ const heightReductionPt = dims.pageHeight * (1 - this.scale);
256
+ const widthReductionPt = dims.pageWidth * (1 - this.scale);
257
+ const heightReductionPx = ptToPx(heightReductionPt);
258
+ const widthReductionPx = ptToPx(widthReductionPt);
259
+ pageBox.style.marginRight = `-${widthReductionPx}px`;
260
+ pageBox.style.marginBottom = `${this.pageGap - heightReductionPx}px`;
261
+ }
262
+ // Hint browser for GPU compositing and layout isolation
263
+ pageBox.style.willChange = "transform";
264
+ pageBox.style.contain = "layout paint";
212
265
  pageBox.dataset.pageNumber = String(pageNumber);
213
266
  pageBox.dataset.sectionIndex = String(sectionIndex);
214
- // Create content area
267
+ // Create content area at full page margins and dimensions
215
268
  const contentArea = document.createElement("div");
216
269
  contentArea.className = `${this.cssPrefix}content`;
217
- contentArea.style.top = `${dims.marginTop * this.scale}pt`;
218
- contentArea.style.left = `${dims.marginLeft * this.scale}pt`;
270
+ contentArea.style.position = "absolute";
271
+ contentArea.style.top = `${dims.marginTop}pt`;
272
+ contentArea.style.left = `${dims.marginLeft}pt`;
219
273
  contentArea.style.width = `${dims.contentWidth}pt`;
220
274
  contentArea.style.height = `${dims.contentHeight}pt`;
221
- contentArea.style.transform = `scale(${this.scale})`;
222
- contentArea.style.transformOrigin = "top left";
275
+ contentArea.style.overflow = "hidden";
223
276
  // Add content
224
277
  for (const el of content) {
225
278
  contentArea.appendChild(el);
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAoFH,yDAAyD;AACzD,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAC/B,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAChC,MAAM,cAAc,GAAG,EAAE,CAAC,CAAC,SAAS;AAEpC;;GAEG;AACH,SAAS,MAAM,CAAC,EAAU;IACxB,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,wBAAwB;AAC5C,CAAC;AAED;;GAEG;AACH,SAAS,MAAM,CAAC,EAAU;IACxB,OAAO,EAAE,GAAG,IAAI,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,OAAoB;IAC3C,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,IAAI,kBAAkB,CAAC;IACpF,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC,IAAI,mBAAmB,CAAC;IACvF,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC,IAAI,SAAS,GAAG,CAAC,GAAG,cAAc,CAAC;IACtG,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE,CAAC,IAAI,UAAU,GAAG,CAAC,GAAG,cAAc,CAAC;IACzG,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,IAAI,cAAc,CAAC;IAChF,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC,IAAI,cAAc,CAAC;IACpF,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC,IAAI,cAAc,CAAC;IACtF,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC,IAAI,cAAc,CAAC;IAElF,OAAO;QACL,SAAS;QACT,UAAU;QACV,YAAY;QACZ,aAAa;QACb,SAAS;QACT,WAAW;QACX,YAAY;QACZ,UAAU;KACX,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,OAAO,gBAAgB;IAQ3B;;;;;;OAMG;IACH,YACE,OAA6B,EAC7B,SAA+B,EAC/B,UAA6B,EAAE;QAE/B,IAAI,CAAC,cAAc;YACjB,OAAO,OAAO,KAAK,QAAQ;gBACzB,CAAC,CAAE,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAiB;gBACnD,CAAC,CAAC,OAAO,CAAC;QACd,IAAI,CAAC,gBAAgB;YACnB,OAAO,SAAS,KAAK,QAAQ;gBAC3B,CAAC,CAAE,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAiB;gBACrD,CAAC,CAAC,SAAS,CAAC;QAEhB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC;QAC9C,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,IAAI,CAAC;QACvD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;IACvC,CAAC;IAED;;;;OAIG;IACH,QAAQ;QACN,MAAM,KAAK,GAAe,EAAE,CAAC;QAC7B,IAAI,UAAU,GAAG,CAAC,CAAC;QAEnB,8BAA8B;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,gBAAgB,CACnD,sBAAsB,CACvB,CAAC;QAEF,wEAAwE;QACxE,MAAM,iBAAiB,GACrB,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAErE,KAAK,MAAM,OAAO,IAAI,iBAAiB,EAAE,CAAC;YACxC,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;YACvE,MAAM,IAAI,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;YAEtC,uCAAuC;YACvC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAC;YAChD,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAC;YAChD,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC;YAC3C,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;YAE5C,uCAAuC;YACvC,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,IAAI,CAAC,YAAY,IAAI,CAAC;YAE/C,qCAAqC;YACrC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAEjD,yBAAyB;YACzB,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;YAC9E,KAAK,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC;YAC5B,UAAU,IAAI,YAAY,CAAC,MAAM,CAAC;QACpC,CAAC;QAED,iCAAiC;QACjC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QAE3C,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;IAC7C,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,OAAoB,EAAE,IAAoB;QAC9D,MAAM,MAAM,GAAoB,EAAE,CAAC;QAEnC,uDAAuD;QACvD,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAkB,CAAC;QAE/D,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;YAC7B,+CAA+C;YAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC7C,8CAA8C;gBAC9C,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBACrD,MAAM,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC;gBAC7B,SAAS;YACX,CAAC;YAED,iFAAiF;YACjF,sEAAsE;YACtE,MAAM,IAAI,GAAG,KAAK,CAAC,qBAAqB,EAAE,CAAC;YAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAC7C,MAAM,WAAW,GAAG,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACrD,MAAM,cAAc,GAAG,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAC3D,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACrC,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;YACxC,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;YAE9C,MAAM,WAAW,GACf,KAAK,CAAC,OAAO,CAAC,SAAS,KAAK,MAAM;gBAClC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,SAAS,OAAO,CAAC,CAAC;YAErD,MAAM,CAAC,IAAI,CAAC;gBACV,OAAO,EAAE,KAAK;gBACd,QAAQ;gBACR,WAAW;gBACX,cAAc;gBACd,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,YAAY,KAAK,MAAM;gBACnD,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,KAAK,MAAM;gBAC7C,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,eAAe,KAAK,MAAM;gBACzD,WAAW;aACZ,CAAC,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACK,WAAW,CACjB,MAAuB,EACvB,IAAoB,EACpB,eAAuB,EACvB,YAAoB;QAEpB,MAAM,KAAK,GAAe,EAAE,CAAC;QAC7B,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC;QACzC,IAAI,UAAU,GAAG,eAAe,CAAC;QACjC,iEAAiE;QACjE,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAE3B,MAAM,UAAU,GAAG,GAAG,EAAE;YACtB,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO;YAExC,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;YAC7E,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEjB,UAAU,EAAE,CAAC;YACb,cAAc,GAAG,EAAE,CAAC;YACpB,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC;YACrC,kBAAkB,GAAG,CAAC,CAAC,CAAC,qCAAqC;QAC/D,CAAC,CAAC;QAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAEhC,8BAA8B;YAC9B,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;gBACtB,UAAU,EAAE,CAAC;gBACb,SAAS;YACX,CAAC;YAED,2BAA2B;YAC3B,IAAI,KAAK,CAAC,eAAe,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvD,UAAU,EAAE,CAAC;YACf,CAAC;YAED,yDAAyD;YACzD,6FAA6F;YAC7F,MAAM,aAAa,GAAG,cAAc,CAAC,MAAM,KAAK,CAAC,CAAC;YAClD,IAAI,kBAAkB,GAAG,KAAK,CAAC,WAAW,CAAC;YAC3C,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,gEAAgE;gBAChE,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,kBAAkB,CAAC,GAAG,kBAAkB,CAAC;YAC5F,CAAC;YACD,0DAA0D;YAC1D,4FAA4F;YAC5F,MAAM,UAAU,GAAG,kBAAkB,GAAG,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,cAAc,CAAC;YAE9E,mDAAmD;YACnD,IAAI,YAAY,GAAG,UAAU,CAAC;YAC9B,IAAI,KAAK,CAAC,YAAY,IAAI,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;gBAC9D,kEAAkE;gBAClE,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;gBAC9E,YAAY,GAAG,kBAAkB,GAAG,KAAK,CAAC,QAAQ,GAAG,eAAe;oBACrD,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,cAAc,CAAC;YAC/D,CAAC;YAED,sCAAsC;YACtC,IAAI,UAAU,IAAI,eAAe,EAAE,CAAC;gBAClC,aAAa;gBACb,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAgB,CAAC,CAAC;gBAClE,eAAe,IAAI,UAAU,CAAC;gBAC9B,kBAAkB,GAAG,KAAK,CAAC,cAAc,CAAC;YAC5C,CAAC;iBAAM,IAAI,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,cAAc,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC3F,+CAA+C;gBAC/C,UAAU,EAAE,CAAC;gBACb,uCAAuC;gBACvC,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,cAAc,CAAC;gBAC/E,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAgB,CAAC,CAAC;gBAClE,eAAe,GAAG,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;gBACpD,kBAAkB,GAAG,KAAK,CAAC,cAAc,CAAC;YAC5C,CAAC;iBAAM,CAAC;gBACN,2DAA2D;gBAC3D,qEAAqE;gBACrE,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9B,UAAU,EAAE,CAAC;gBACf,CAAC;gBACD,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAgB,CAAC,CAAC;gBAClE,UAAU,EAAE,CAAC;YACf,CAAC;QACH,CAAC;QAED,mBAAmB;QACnB,UAAU,EAAE,CAAC;QAEb,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACK,UAAU,CAChB,IAAoB,EACpB,UAAkB,EAClB,YAAoB,EACpB,OAAsB;QAEtB,0DAA0D;QAC1D,sEAAsE;QACtE,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO,CAAC,SAAS,GAAG,GAAG,IAAI,CAAC,SAAS,KAAK,CAAC;QAC3C,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,IAAI,CAAC,SAAS,IAAI,CAAC;QAC5C,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,IAAI,CAAC;QAC9C,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAClC,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAC;QACpC,gFAAgF;QAChF,qFAAqF;QACrF,iEAAiE;QACjE,IAAI,IAAI,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;YACrB,mEAAmE;YACnE,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxC,2DAA2D;YAC3D,mDAAmD;YACnD,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG,SAAS,IAAI,CAAC,KAAK,GAAG,CAAC;YACjD,OAAO,CAAC,KAAK,CAAC,eAAe,GAAG,UAAU,CAAC;YAC3C,oFAAoF;YACpF,4CAA4C;YAC5C,MAAM,iBAAiB,GAAG,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;YAC7D,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3D,MAAM,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;YACpD,MAAM,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;YAClD,OAAO,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,gBAAgB,IAAI,CAAC;YACrD,OAAO,CAAC,KAAK,CAAC,YAAY,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,iBAAiB,IAAI,CAAC;QACvE,CAAC;QACD,wDAAwD;QACxD,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,WAAW,CAAC;QACvC,OAAO,CAAC,KAAK,CAAC,OAAO,GAAG,cAAc,CAAC;QACvC,OAAO,CAAC,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;QAChD,OAAO,CAAC,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;QAEpD,0DAA0D;QAC1D,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAClD,WAAW,CAAC,SAAS,GAAG,GAAG,IAAI,CAAC,SAAS,SAAS,CAAC;QACnD,WAAW,CAAC,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAC;QACxC,WAAW,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,SAAS,IAAI,CAAC;QAC9C,WAAW,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,UAAU,IAAI,CAAC;QAChD,WAAW,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,IAAI,CAAC,YAAY,IAAI,CAAC;QACnD,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,IAAI,CAAC;QACrD,WAAW,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAEtC,cAAc;QACd,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;YACzB,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC9B,CAAC;QAED,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAEjC,kBAAkB;QAClB,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC9C,OAAO,CAAC,SAAS,GAAG,GAAG,IAAI,CAAC,SAAS,QAAQ,CAAC;YAC9C,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;YACzC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;QAED,mBAAmB;QACnB,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAE3C,OAAO;YACL,UAAU;YACV,YAAY;YACZ,UAAU,EAAE,IAAI;YAChB,OAAO,EAAE,OAAO;SACjB,CAAC;IACJ,CAAC;CACF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,UAAU,YAAY,CAC1B,IAAY,EACZ,SAA+B,EAC/B,UAA6B,EAAE;IAE/B,MAAM,WAAW,GACf,OAAO,SAAS,KAAK,QAAQ;QAC3B,CAAC,CAAE,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAiB;QACrD,CAAC,CAAC,SAAS,CAAC;IAEhB,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IAED,6BAA6B;IAC7B,WAAW,CAAC,SAAS,GAAG,IAAI,CAAC;IAE7B,kCAAkC;IAClC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC;IAC/C,MAAM,OAAO,GAAG,WAAW,CAAC,aAAa,CAAc,qBAAqB,CAAC;QAC3E,WAAW,CAAC,aAAa,CAAc,IAAI,SAAS,SAAS,CAAC,CAAC;IACjE,MAAM,aAAa,GAAG,WAAW,CAAC,aAAa,CAAc,uBAAuB,CAAC;QACnF,WAAW,CAAC,aAAa,CAAc,IAAI,SAAS,WAAW,CAAC,CAAC;IAEnE,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,sGAAsG,CACvG,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,gBAAgB,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;IACrE,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;AAC3B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../src/react.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../src/react.ts"],"names":[],"mappings":"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"}
package/dist/react.js CHANGED
@@ -1,4 +1,4 @@
1
- import { useState, useEffect, useCallback, useRef, createElement } from "react";
1
+ import { useState, useEffect, useCallback, useRef, createElement, useMemo } from "react";
2
2
  import { initialize, convertDocxToHtml, compareDocuments, compareDocumentsToHtml, getRevisions, isInitialized, } from "./index.js";
3
3
  import { PaginationEngine, } from "./pagination.js";
4
4
  /**
@@ -295,6 +295,9 @@ export function usePagination(html, containerRef, options = {}) {
295
295
  const [result, setResult] = useState(null);
296
296
  const [isPaginating, setIsPaginating] = useState(false);
297
297
  const [error, setError] = useState(null);
298
+ // Destructure options to use individual values in dependency arrays
299
+ // This prevents infinite re-renders when options object is recreated each render
300
+ const { scale = 1, showPageNumbers = true, pageGap = 20, cssPrefix = "page-", } = options;
298
301
  const paginate = useCallback(() => {
299
302
  if (!containerRef.current || !html) {
300
303
  return;
@@ -306,7 +309,6 @@ export function usePagination(html, containerRef, options = {}) {
306
309
  // Insert HTML into container
307
310
  container.innerHTML = html;
308
311
  // Find staging and page container
309
- const cssPrefix = options.cssPrefix ?? "page-";
310
312
  const staging = container.querySelector("#pagination-staging") ||
311
313
  container.querySelector(`.${cssPrefix}staging`);
312
314
  const pageContainer = container.querySelector("#pagination-container") ||
@@ -314,7 +316,14 @@ export function usePagination(html, containerRef, options = {}) {
314
316
  if (!staging || !pageContainer) {
315
317
  throw new Error("Pagination elements not found. Ensure HTML was generated with PaginationMode.Paginated");
316
318
  }
317
- const engine = new PaginationEngine(staging, pageContainer, options);
319
+ // Reconstruct options object for the engine
320
+ const engineOptions = {
321
+ scale,
322
+ showPageNumbers,
323
+ pageGap,
324
+ cssPrefix,
325
+ };
326
+ const engine = new PaginationEngine(staging, pageContainer, engineOptions);
318
327
  const paginationResult = engine.paginate();
319
328
  setResult(paginationResult);
320
329
  }
@@ -324,7 +333,7 @@ export function usePagination(html, containerRef, options = {}) {
324
333
  finally {
325
334
  setIsPaginating(false);
326
335
  }
327
- }, [html, containerRef, options]);
336
+ }, [html, containerRef, scale, showPageNumbers, pageGap, cssPrefix]);
328
337
  // Auto-paginate when HTML changes
329
338
  useEffect(() => {
330
339
  if (html && containerRef.current) {
@@ -370,12 +379,15 @@ export function usePagination(html, containerRef, options = {}) {
370
379
  */
371
380
  export function PaginatedDocument({ html, scale = 1, showPageNumbers = true, pageGap = 20, backgroundColor = "#525659", cssPrefix = "page-", onPaginationComplete, onPageVisible, className, style, }) {
372
381
  const containerRef = useRef(null);
373
- const { result, isPaginating, error } = usePagination(html, containerRef, {
382
+ // Memoize options to prevent unnecessary re-renders
383
+ // (usePagination also handles this internally, but this is belt-and-suspenders)
384
+ const options = useMemo(() => ({
374
385
  scale,
375
386
  showPageNumbers,
376
387
  pageGap,
377
388
  cssPrefix,
378
- });
389
+ }), [scale, showPageNumbers, pageGap, cssPrefix]);
390
+ const { result, isPaginating, error } = usePagination(html, containerRef, options);
379
391
  // Notify when pagination completes
380
392
  useEffect(() => {
381
393
  if (result && onPaginationComplete) {
package/dist/react.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"react.js","sourceRoot":"","sources":["../src/react.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"react.js","sourceRoot":"","sources":["../src/react.ts"],"names":[],"mappings":"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"}
Binary file
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "mainAssemblyName": "DocxodusWasm.dll",
3
3
  "resources": {
4
- "hash": "sha256-IJZ7gkapGa2l3nS3/j9EKdVmei3MpXDqhJnBORPMlBo=",
4
+ "hash": "sha256-jq4o8pa7ZL4yHQi3EK7LlMSsK6Qldo/E5AdW+jEH2VA=",
5
5
  "jsModuleNative": {
6
6
  "dotnet.native.js": "sha256-YLwjs9CPwrZG7YKULjmqr5bYsmhxwcWJOhQNM4bG6Gc="
7
7
  },
@@ -17,8 +17,8 @@
17
17
  "assembly": {
18
18
  "DocumentFormat.OpenXml.wasm": "sha256-edAN2rIA7QQ8K5qp1o5QXplt8M80fEiVmuMgT/MBmLM=",
19
19
  "DocumentFormat.OpenXml.Framework.wasm": "sha256-CFdrD1dSpnkcOk0gxZcKb2T5p+q2ck9ivs+TOML6Jmw=",
20
- "Docxodus.wasm": "sha256-ZsuMwXS7B6Z7RJkbh17oKJt8S5Z7aBDD3bjzKCcWR+A=",
21
- "DocxodusWasm.wasm": "sha256-wSTIKJRTdb1a+ZTHXDYQdYBLPGJ5P0+DbvHpLrZKIhk=",
20
+ "Docxodus.wasm": "sha256-HZsnr4JwbS/HpbmuHjGmDA4QPm7twASpZ9HausPGKcw=",
21
+ "DocxodusWasm.wasm": "sha256-R+kmaGZNuD+1vKycSBax3j6Ifg1Et6CuNKtYNw5CzR8=",
22
22
  "SkiaSharp.wasm": "sha256-U6RbqUVBn8Vx8qpghJC5+r/DC1NSBY+EIRDxP8o6dsk=",
23
23
  "System.Collections.Concurrent.wasm": "sha256-xXJbJWNeQ2DSYvAGUoUHjF9y4Iajv2ed0eACOxWD19U=",
24
24
  "System.Collections.wasm": "sha256-J1FML3h2WBTlmekS0TVLGCvZGbIRG+AZnGmlZn3Y5+Q=",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "docxodus",
3
- "version": "3.4.1",
3
+ "version": "3.5.1",
4
4
  "description": "DOCX document comparison and HTML conversion in the browser using WebAssembly",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -22,8 +22,9 @@
22
22
  "scripts": {
23
23
  "build:wasm": "../scripts/build-wasm.sh",
24
24
  "build:ts": "tsc",
25
- "build": "npm run build:wasm && npm run build:ts",
26
- "pretest": "cp tests/test-harness.html dist/wasm/",
25
+ "build:pagination-bundle": "esbuild src/pagination.ts --bundle --format=iife --global-name=DocxodusPagination --outfile=dist/pagination.bundle.js",
26
+ "build": "npm run build:wasm && npm run build:ts && npm run build:pagination-bundle",
27
+ "pretest": "cp tests/test-harness.html dist/wasm/ && cp dist/pagination.bundle.js dist/wasm/",
27
28
  "test": "playwright test",
28
29
  "test:ui": "playwright test --ui",
29
30
  "prepublishOnly": "npm run build"
@@ -62,6 +63,7 @@
62
63
  "@playwright/test": "^1.57.0",
63
64
  "@types/node": "^20.10.0",
64
65
  "@types/react": "^19.2.7",
66
+ "esbuild": "^0.27.0",
65
67
  "typescript": "^5.3.0"
66
68
  }
67
69
  }