fix(DeDocument): Fix rendering of documents by properly moving new pages back to the document container
This commit is contained in:
parent
561b391f03
commit
7dd585553c
@ -1,5 +1,11 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 2024-11-27 - 1.0.103 - fix(DeDocument)
|
||||||
|
Fix rendering of documents by properly moving new pages back to the document container
|
||||||
|
|
||||||
|
- Resolved an issue in the DeDocument component where new pages were wrongly managed, causing errors in the rendering of documents.
|
||||||
|
- Added a documentBuildContainer for temporary storage during page setup, ensuring correct page ordering.
|
||||||
|
|
||||||
## 2024-11-27 - 1.0.102 - fix(contentinvoice)
|
## 2024-11-27 - 1.0.102 - fix(contentinvoice)
|
||||||
Fixed currency display issues in invoice content rendering.
|
Fixed currency display issues in invoice content rendering.
|
||||||
|
|
||||||
|
@ -3,6 +3,6 @@
|
|||||||
*/
|
*/
|
||||||
export const commitinfo = {
|
export const commitinfo = {
|
||||||
name: '@design.estate/dees-document',
|
name: '@design.estate/dees-document',
|
||||||
version: '1.0.102',
|
version: '1.0.103',
|
||||||
description: 'A comprehensive solution for generating documents like invoices, integrating elements, templates, and services to streamline document creation.'
|
description: 'A comprehensive solution for generating documents like invoices, integrating elements, templates, and services to streamline document creation.'
|
||||||
}
|
}
|
||||||
|
@ -3,6 +3,6 @@
|
|||||||
*/
|
*/
|
||||||
export const commitinfo = {
|
export const commitinfo = {
|
||||||
name: '@design.estate/dees-document',
|
name: '@design.estate/dees-document',
|
||||||
version: '1.0.102',
|
version: '1.0.103',
|
||||||
description: 'A comprehensive solution for generating documents like invoices, integrating elements, templates, and services to streamline document creation.'
|
description: 'A comprehensive solution for generating documents like invoices, integrating elements, templates, and services to streamline document creation.'
|
||||||
}
|
}
|
||||||
|
@ -117,7 +117,6 @@ export class DeDocument extends DeesElement {
|
|||||||
const response = await fetch(this.letterDataUrl);
|
const response = await fetch(this.letterDataUrl);
|
||||||
this.letterData = await response.json();
|
this.letterData = await response.json();
|
||||||
}
|
}
|
||||||
this.renderDocument();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public latestRenderedLetterData: plugins.tsclass.business.ILetter = null;
|
public latestRenderedLetterData: plugins.tsclass.business.ILetter = null;
|
||||||
@ -125,7 +124,11 @@ export class DeDocument extends DeesElement {
|
|||||||
|
|
||||||
public async renderDocument() {
|
public async renderDocument() {
|
||||||
const domtools = await this.domtoolsPromise;
|
const domtools = await this.domtoolsPromise;
|
||||||
const documentContainer = this.shadowRoot.querySelector('.documentContainer');
|
|
||||||
|
|
||||||
|
const documentBuildContainer = document.createElement('div');
|
||||||
|
document.body.appendChild(documentBuildContainer);
|
||||||
|
|
||||||
let pages: DePage[] = [];
|
let pages: DePage[] = [];
|
||||||
let pageCounter = 0;
|
let pageCounter = 0;
|
||||||
let complete = false;
|
let complete = false;
|
||||||
@ -149,13 +152,8 @@ export class DeDocument extends DeesElement {
|
|||||||
newPage.pageNumber = pageCounter;
|
newPage.pageNumber = pageCounter;
|
||||||
newPage.append(currentContent);
|
newPage.append(currentContent);
|
||||||
newPage.pageTotalNumber = pageCounter;
|
newPage.pageTotalNumber = pageCounter;
|
||||||
documentContainer.append(newPage);
|
documentBuildContainer.append(newPage);
|
||||||
// betweenPagesSpacer
|
|
||||||
if (!this.printMode) {
|
|
||||||
const betweenPagesSpacerDiv = document.createElement('div');
|
|
||||||
betweenPagesSpacerDiv.classList.add('betweenPagesSpacer');
|
|
||||||
documentContainer.append(betweenPagesSpacerDiv);
|
|
||||||
}
|
|
||||||
await currentContent.elementDomReady;
|
await currentContent.elementDomReady;
|
||||||
await currentContent.trimStartToOffset(overallContentOffset);
|
await currentContent.trimStartToOffset(overallContentOffset);
|
||||||
let newPageOverflows = await newPage.checkOverflow();
|
let newPageOverflows = await newPage.checkOverflow();
|
||||||
@ -174,9 +172,22 @@ export class DeDocument extends DeesElement {
|
|||||||
console.log(currentContentOffset);
|
console.log(currentContentOffset);
|
||||||
}
|
}
|
||||||
document.body.removeChild(content);
|
document.body.removeChild(content);
|
||||||
|
document.body.removeChild(documentBuildContainer);
|
||||||
|
|
||||||
|
const documentContainer = this.shadowRoot.querySelector('.documentContainer');
|
||||||
|
if (documentContainer) {
|
||||||
|
const children = Array.from(documentContainer.children);
|
||||||
|
children.forEach((child) => documentContainer.removeChild(child));
|
||||||
|
}
|
||||||
for (const page of pages) {
|
for (const page of pages) {
|
||||||
page.pageTotalNumber = pageCounter;
|
page.pageTotalNumber = pageCounter;
|
||||||
|
documentContainer.append(page);
|
||||||
|
// betweenPagesSpacer
|
||||||
|
if (!this.printMode) {
|
||||||
|
const betweenPagesSpacerDiv = document.createElement('div');
|
||||||
|
betweenPagesSpacerDiv.classList.add('betweenPagesSpacer');
|
||||||
|
documentContainer.appendChild(betweenPagesSpacerDiv);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
this.adjustDePageScaling();
|
this.adjustDePageScaling();
|
||||||
this.latestRenderedLetterData = this.letterData;
|
this.latestRenderedLetterData = this.letterData;
|
||||||
|
Loading…
Reference in New Issue
Block a user