@xiee/utils
Advanced tools
Comparing version 1.13.54 to 1.13.55
@@ -139,3 +139,3 @@ // move elements into page boxes such that each box contains as many elements as | ||
cls.add('pagesjs'); book && cls.add('page-book'); | ||
cls.add('pagesjs'); | ||
d.body.insertAdjacentElement('afterbegin', newPage()); | ||
@@ -142,0 +142,0 @@ H = box.clientHeight || window.innerHeight; // use window height if box height not specified |
@@ -1,2 +0,2 @@ | ||
(e=>{function t(t,n=e){return n?.querySelector(t)}function n(t,n=e){return n?n.querySelectorAll(t):[]}function r(e){return e.childElementCount}const s=e.createElement("div"),a=n("h1").length>1,i="pagesjs-fragmented";s.className="pagesjs-page",s.innerHTML='<div class="pagesjs-header"></div>\n<div class="pagesjs-body"></div>\n<div class="pagesjs-footer"></div>';let o,c,l,d=[];function f(e){return e&&!t(".pagesjs-body",e)&&e.insertAdjacentHTML("afterbegin",s.innerHTML),o=e||s.cloneNode(!0),c=o.children[1],d.length&&o.classList.add(...d),o}function p(e){if(!e)return!1;const t=""===e.innerText.trim();return t&&e.remove(),t}function g(e){if(e.classList.contains("pagesjs-page"))return o.after(f(e)),void(r(e)>3&&(c.append(...[...e.children].slice(3)),o.after(f())));if(o.scrollHeight>l){const[e,t]=[o,c];e.after(f()),r(t)>1&&c.append(t.lastChild)}c.append(e),h(e)}function h(e,t,n,s){const a=e.tagName,d="CODE"===a;if((!d||!t)&&o.scrollHeight<=l)return;e.classList.add(i);const g=s||o,u=e.cloneNode();if(t?t.append(u):(c.append(u),g.after(f()),c.append(e)),"PRE"===a){const t=e.firstElementChild;"CODE"==t?.tagName&&/\n/.test(t.innerHTML)&&h(t,u,e,g)}else"DIV"===a&&1===r(e)&&h(e.firstElementChild,u,e,g);const m=u.previousElementSibling;if(["UL","OL","BLOCKQUOTE"].includes(a)&&r(e)>1)for(;;){const t=e.firstChild;if(!t)break;if(u.append(t),g.scrollHeight>l){(m||r(u)>1)&&e.insertBefore(t,e.firstChild),"OL"===a&&(e.start+=r(u));break}}if(d){const t=e.innerHTML.split("\n"),r=[];for(let e of t)if(r.push(e),u.innerHTML=r.join("\n"),g.scrollHeight>l){r.pop(),u.innerHTML=r.join("\n");break}if(r.length>0&&(e.innerHTML=t.slice(r.length).join("\n"),p(n)))return}const b=p(u);b&&e.classList.remove(i),(!b||d||m)&&h(t?n:e)}function u(e){return e&&(e.dataset.shortTitle||e.innerText)}const m=u(t("h1.title, .frontmatter h1, .title, h1")),b=(a?"h1":"h2")+":not(.frontmatter *)",L=["top","bottom"].map((t=>+getComputedStyle(e.documentElement).getPropertyValue(`--paper-margin-${t}`).replace("px","")||0));function E(){if("complete"!==e.readyState)return setTimeout(E,10);const r=e.body.classList;if(r.contains("pagesjs"))return;r.add("pagesjs"),a&&r.add("page-book"),e.body.insertAdjacentElement("afterbegin",f()),l=o.clientHeight||window.innerHeight,n(":is(#TOC, .footnotes, .chapter-before, .chapter-after):is(.side-left, .side-right).side").forEach((e=>{e.classList.remove("side","side-left","side-right")})),r.add("pagesjs-filling"),[t(".frontmatter"),t("#TOC"),t(".abstract")].forEach((e=>{e&&(g(e),a&&o.after(f()))})),n(".body").forEach((e=>{d=["chapter","appendix"].filter((t=>e.classList.contains(t))),a&&(""===o.innerText?f(o):o.after(f())),[...e.children].map(g),p(e.parentNode),p(e)})),r.remove("pagesjs-filling"),n('#TOC a[href^="#"]').forEach((t=>{const n=e.createElement("span"),r=t.firstElementChild;for(r?.classList.contains("section-number")?r.after(n):t.insertAdjacentElement("afterbegin",n);n.nextSibling;)n.append(n.nextSibling);t.insertAdjacentHTML("beforeend",'<span class="dot-leader"></span>'),t.dataset.pageNumber="000"}));let s,i=0;n(".pagesjs-page").forEach((e=>{if(p(e))return;if(a){if(t(".frontmatter",e))return;t(b,e)&&(s="")}const r=function(e){let t=+e.dataset.pagesOffset;if(t)return t;const r=e.scrollHeight;if(t=Math.ceil(r/l),t<=1)return t;const s=L.concat([...n("thead",e)].map((e=>+e.offsetHeight))).reduce(((e,t)=>e+t));if(!s)return t;function a(){return Math.ceil((r+(t-1)*s)/l)}let i=a();for(;i>t;)t=i,i=a();return t}(e);r>1&&e.classList.add("page-multiple"),i+=r,e.classList.add("page-"+(i%2==0?"even":"odd"));const o={pageNumber:i,mainTitle:m,pageTitle:s};let c;[e.children[0],e.children[2]].forEach((e=>{for(const t in o)o[t]&&(e.dataset[t]=o[t])})),s=u([...n(b,e)].pop())||s,n(".footnotes",e).forEach(((t,n)=>{0===n?(c=t,e.children[1].after(t)):(c.append(...t.children),t.remove())}))})),n('#TOC a[href^="#"]').forEach((e=>{const n=t(`.pagesjs-page:has(#${CSS.escape(e.getAttribute("href").replace(/^#/,""))}) .pagesjs-header`);e.dataset.pageNumber=n?n.dataset.pageNumber:""}))}addEventListener("beforeprint",E);let j=sessionStorage.getItem("pagesjs");j&&E(),addEventListener("keypress",(e=>"p"===e.key&&(E(),j=j?"":"1",sessionStorage.setItem("pagesjs",j),j||location.reload())))})(document); | ||
(e=>{function t(t,n=e){return n?.querySelector(t)}function n(t,n=e){return n?n.querySelectorAll(t):[]}function r(e){return e.childElementCount}const s=e.createElement("div"),a=n("h1").length>1,i="pagesjs-fragmented";s.className="pagesjs-page",s.innerHTML='<div class="pagesjs-header"></div>\n<div class="pagesjs-body"></div>\n<div class="pagesjs-footer"></div>';let o,c,l,d=[];function f(e){return e&&!t(".pagesjs-body",e)&&e.insertAdjacentHTML("afterbegin",s.innerHTML),o=e||s.cloneNode(!0),c=o.children[1],d.length&&o.classList.add(...d),o}function p(e){if(!e)return!1;const t=""===e.innerText.trim();return t&&e.remove(),t}function g(e){if(e.classList.contains("pagesjs-page"))return o.after(f(e)),void(r(e)>3&&(c.append(...[...e.children].slice(3)),o.after(f())));if(o.scrollHeight>l){const[e,t]=[o,c];e.after(f()),r(t)>1&&c.append(t.lastChild)}c.append(e),h(e)}function h(e,t,n,s){const a=e.tagName,d="CODE"===a;if((!d||!t)&&o.scrollHeight<=l)return;e.classList.add(i);const g=s||o,u=e.cloneNode();if(t?t.append(u):(c.append(u),g.after(f()),c.append(e)),"PRE"===a){const t=e.firstElementChild;"CODE"==t?.tagName&&/\n/.test(t.innerHTML)&&h(t,u,e,g)}else"DIV"===a&&1===r(e)&&h(e.firstElementChild,u,e,g);const m=u.previousElementSibling;if(["UL","OL","BLOCKQUOTE"].includes(a)&&r(e)>1)for(;;){const t=e.firstChild;if(!t)break;if(u.append(t),g.scrollHeight>l){(m||r(u)>1)&&e.insertBefore(t,e.firstChild),"OL"===a&&(e.start+=r(u));break}}if(d){const t=e.innerHTML.split("\n"),r=[];for(let e of t)if(r.push(e),u.innerHTML=r.join("\n"),g.scrollHeight>l){r.pop(),u.innerHTML=r.join("\n");break}if(r.length>0&&(e.innerHTML=t.slice(r.length).join("\n"),p(n)))return}const b=p(u);b&&e.classList.remove(i),(!b||d||m)&&h(t?n:e)}function u(e){return e&&(e.dataset.shortTitle||e.innerText)}const m=u(t("h1.title, .frontmatter h1, .title, h1")),b=(a?"h1":"h2")+":not(.frontmatter *)",L=["top","bottom"].map((t=>+getComputedStyle(e.documentElement).getPropertyValue(`--paper-margin-${t}`).replace("px","")||0));function E(){if("complete"!==e.readyState)return setTimeout(E,10);const r=e.body.classList;if(r.contains("pagesjs"))return;r.add("pagesjs"),e.body.insertAdjacentElement("afterbegin",f()),l=o.clientHeight||window.innerHeight,n(":is(#TOC, .footnotes, .chapter-before, .chapter-after):is(.side-left, .side-right).side").forEach((e=>{e.classList.remove("side","side-left","side-right")})),r.add("pagesjs-filling"),[t(".frontmatter"),t("#TOC"),t(".abstract")].forEach((e=>{e&&(g(e),a&&o.after(f()))})),n(".body").forEach((e=>{d=["chapter","appendix"].filter((t=>e.classList.contains(t))),a&&(""===o.innerText?f(o):o.after(f())),[...e.children].map(g),p(e.parentNode),p(e)})),r.remove("pagesjs-filling"),n('#TOC a[href^="#"]').forEach((t=>{const n=e.createElement("span"),r=t.firstElementChild;for(r?.classList.contains("section-number")?r.after(n):t.insertAdjacentElement("afterbegin",n);n.nextSibling;)n.append(n.nextSibling);t.insertAdjacentHTML("beforeend",'<span class="dot-leader"></span>'),t.dataset.pageNumber="000"}));let s,i=0;n(".pagesjs-page").forEach((e=>{if(p(e))return;if(a){if(t(".frontmatter",e))return;t(b,e)&&(s="")}const r=function(e){let t=+e.dataset.pagesOffset;if(t)return t;const r=e.scrollHeight;if(t=Math.ceil(r/l),t<=1)return t;const s=L.concat([...n("thead",e)].map((e=>+e.offsetHeight))).reduce(((e,t)=>e+t));if(!s)return t;function a(){return Math.ceil((r+(t-1)*s)/l)}let i=a();for(;i>t;)t=i,i=a();return t}(e);r>1&&e.classList.add("page-multiple"),i+=r,e.classList.add("page-"+(i%2==0?"even":"odd"));const o={pageNumber:i,mainTitle:m,pageTitle:s};let c;[e.children[0],e.children[2]].forEach((e=>{for(const t in o)o[t]&&(e.dataset[t]=o[t])})),s=u([...n(b,e)].pop())||s,n(".footnotes",e).forEach(((t,n)=>{0===n?(c=t,e.children[1].after(t)):(c.append(...t.children),t.remove())}))})),n('#TOC a[href^="#"]').forEach((e=>{const n=t(`.pagesjs-page:has(#${CSS.escape(e.getAttribute("href").replace(/^#/,""))}) .pagesjs-header`);e.dataset.pageNumber=n?n.dataset.pageNumber:""}))}addEventListener("beforeprint",E);let j=sessionStorage.getItem("pagesjs");j&&E(),addEventListener("keypress",(e=>"p"===e.key&&(E(),j=j?"":"1",sessionStorage.setItem("pagesjs",j),j||location.reload())))})(document); | ||
//# sourceMappingURL=pages.min.js.map |
{ | ||
"name": "@xiee/utils", | ||
"version": "1.13.54", | ||
"version": "1.13.55", | ||
"description": "Miscellaneous tools and utilities to manipulate HTML pages", | ||
@@ -5,0 +5,0 @@ "scripts": { |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
2904
237219