@social-mail/social-mail-client 1.2.303 → 1.2.304

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.
@@ -2181,10 +2181,20 @@ html, body {
2181
2181
  overflow: auto;
2182
2182
  gap: 10px;
2183
2183
  display: flex;
2184
- flex-wrap: wrap;
2185
- justify-content: center;
2184
+ flex-direction: column;
2185
+ justify-content: start;
2186
+ align-items: center;
2187
+ &[align-left=true] {
2188
+ align-items: start;
2189
+ }
2186
2190
  & > * {
2187
2191
  padding: 10px;
2192
+ position: relative;
2193
+ & > canvas {
2194
+ position: absolute;
2195
+ left: 10px;
2196
+ top: 10px;
2197
+ }
2188
2198
  }
2189
2199
  }
2190
2200
 
@@ -2247,7 +2257,7 @@ html, body {
2247
2257
  }
2248
2258
  }
2249
2259
 
2250
- `.installGlobal("div > .pdf-frame");installStyleSheet=()=>{App.installStyleSheet("https://cdn.jsdelivr.net/npm/pdfjs-dist@4.4.168/web/pdf_viewer.css");installStyleSheet=null};_export("default",PreviewDocument=class PreviewDocument extends ContentPage{constructor(){super(...arguments);this.scale=1}init(){return __awaiter(this,void 0,void 0,(function*(){installStyleSheet===null||installStyleSheet===void 0?void 0:installStyleSheet();const{appFileID,fileContentID,name}=this.parameters;const pdf=apiPath(`/api/files/pdf/${appFileID}/${fileContentID}/${name}/${name}.pdf`);const downloadUrl=apiPath(`/api/files/download/${appFileID}/${fileContentID}/${name}`);this.observer=new IntersectionObserver((entries=>this.updateEntries(entries)),{root:this.element});this.registerDisposable({dispose:()=>this.observer.disconnect()});yield Modules.import("https://mozilla.github.io/pdf.js/build/pdf.mjs");const{pdfjsLib}=globalThis;pdfjsLib.GlobalWorkerOptions.workerSrc="https://mozilla.github.io/pdf.js/build/pdf.worker.mjs";const pdfDoc=yield pdfjsLib.getDocument(pdf).promise;this.renderer=XNode.create("div",null,XNode.create("div",{class:"pdf-frame"},XNode.create("div",{class:"preview"}),XNode.create("div",{class:"viewer"}),XNode.create("div",{class:"toolbar"},XNode.create("div",{class:"left"}),XNode.create("div",{class:"middle"},XNode.create("i",{class:"fas fa-minus","event-click":()=>this.changeScale(-.1)}),XNode.create("div",{class:"scale",text:Bind.oneWay((()=>(this.scale*100).toFixed(0)+"%"))}),XNode.create("i",{class:"fas fa-plus","event-click":()=>this.changeScale(.1)})),XNode.create("div",{class:"right"},XNode.create("a",{href:downloadUrl,target:"_blank",title:"Download"},XNode.create("i",{class:"fas fa-download"})),XNode.create("a",{href:pdf,target:"_blank",title:"Print"},XNode.create("i",{class:"fas fa-print"}))))));const viewer=this.viewer=this.element.querySelector(".viewer");const preview=this.preview=this.element.querySelector(".preview");const firstPage=yield pdfDoc.getPage(1);this.firstPage=firstPage;const{scale}=this;const viewport=firstPage.getViewport({scale});const previewViewPort=firstPage.getViewport({scale:.3});const scaleText=scale.toFixed(2);const width=viewport.width+"px";const height=viewport.height+"px";const previewWidth=previewViewPort.width+"px";const previewHeight=previewViewPort.height+"px";for(let i=1;i<=pdfDoc.numPages;i++){const fullView=document.createElement("pdf-page");fullView.pdfDoc=pdfDoc;fullView.index=i;fullView.TextLayer=pdfjsLib.TextLayer;fullView.setAttribute("scale",scaleText);fullView.style.setProperty("--scale-factor",scaleText);fullView.style.minWidth=width;fullView.style.minHeight=height;viewer.appendChild(fullView);this.observer.observe(fullView);this.queueRenderPage(fullView);const thumbnail=document.createElement("pdf-page");thumbnail.pdfDoc=pdfDoc;thumbnail.index=i;thumbnail.fullView=fullView;thumbnail.style.minWidth=previewWidth;thumbnail.style.minHeight=previewHeight;thumbnail.setAttribute("scale","0.3");thumbnail.setAttribute("preview","true");preview.appendChild(thumbnail);this.observer.observe(thumbnail)}this.bindEvent(this.element,"click",(e=>{let start=e.target;while(start){const fullView=start.fullView;if(fullView){fullView.scrollIntoView({behavior:"smooth",block:"nearest"});return}start=start.parentElement}}));setTimeout((()=>this.updatePages()),100)}))}updateEntries(entries){for(const{target,isIntersecting}of entries){const te=target;if(isIntersecting){te.removeAttribute("hidden")}else{te.setAttribute("hidden","true")}this.queueRenderPage(te)}}changeScale(a){const scale=this.scale+=a;const viewport=this.firstPage.getViewport({scale});const width=viewport.width+"px";const height=viewport.height+"px";const scaleText=scale.toFixed(2);let page=this.viewer.firstElementChild;while(page){page.style.minWidth=width;page.style.minHeight=height;page.setAttribute("scale",scaleText);page=page.nextElementSibling}setTimeout((()=>this.updatePages()),100)}updatePages(){let page=this.viewer.firstElementChild;while(page){this.queueRenderPage(page);page=page.nextElementSibling}}focusPage(page){while(page){const{fullView}=page;if(fullView){fullView.scrollIntoView({behavior:"smooth",block:"nearest"});return}page=page.parentElement}}queueRenderPage(pageElement){const{lastTimer}=pageElement;if(lastTimer){clearTimeout(lastTimer)}pageElement.lastTimer=setTimeout((()=>{var _a;var _b;return((_a=(_b=pageElement).lastPromise)!==null&&_a!==void 0?_a:_b.lastPromise=this.renderPage(pageElement)).then((()=>pageElement.lastPromise=null),console.error)}),100)}renderPage(pageElement){return __awaiter(this,void 0,void 0,(function*(){pageElement.innerHTML="";if(pageElement.hasAttribute("hidden")){return}const canvas=document.createElement("canvas");const{index,pdfDoc,TextLayer}=pageElement;const page=yield pdfDoc.getPage(index);const canvasContext=canvas.getContext("2d");const scale=Number(pageElement.getAttribute("scale")||"0.5");const viewport=page.getViewport({scale});canvas.width=viewport.width;canvas.height=viewport.height;yield page.render({canvasContext,viewport}).promise;pageElement.appendChild(canvas);if(!TextLayer){return}const textLayerDiv=document.createElement("div");textLayerDiv.className="textLayer";textLayerDiv.style.setProperty("--scale-factor",scale.toFixed(2));const textContentSource=yield page.streamTextContent();const textLayer=new TextLayer({textContentSource,container:textLayerDiv,viewport});textLayer.render();pageElement.appendChild(textLayerDiv)}))}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/page/files/preview/document/PreviewPDF");System.register(["tslib","@web-atoms/core/dist/core/AtomBinder","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/BindableProperty","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/web/controls/AtomControl","@web-atoms/core/dist/web/core/AtomUI","@web-atoms/core/dist/style/styled"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,AtomBinder,Bind,BindableProperty,XNode,AtomControl,ChildEnumerator,styled,AtomVideoPlayer,isTouchEnabled,gatherElements,numberToText,durationText,noSoundIcon,mute,low,mid,high,getPlayIcon;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreAtomBinder){AtomBinder=_webAtomsCoreDistCoreAtomBinder.AtomBinder},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreBindableProperty){BindableProperty=_webAtomsCoreDistCoreBindableProperty.BindableProperty},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistWebControlsAtomControl){AtomControl=_webAtomsCoreDistWebControlsAtomControl.AtomControl},function(_webAtomsCoreDistWebCoreAtomUI){ChildEnumerator=_webAtomsCoreDistWebCoreAtomUI.ChildEnumerator},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default}],execute:function(){isTouchEnabled=/android|iPhone|iPad/i.test(navigator.userAgent);styled.css`
2260
+ `.installGlobal("div > .pdf-frame");installStyleSheet=()=>{App.installStyleSheet("https://cdn.jsdelivr.net/npm/pdfjs-dist@4.4.168/web/pdf_viewer.css");installStyleSheet=null};_export("default",PreviewDocument=class PreviewDocument extends ContentPage{constructor(){super(...arguments);this.scale=1}init(){return __awaiter(this,void 0,void 0,(function*(){installStyleSheet===null||installStyleSheet===void 0?void 0:installStyleSheet();const{appFileID,fileContentID,name}=this.parameters;const pdf=apiPath(`/api/files/pdf/${appFileID}/${fileContentID}/${name}/${name}.pdf`);const downloadUrl=apiPath(`/api/files/download/${appFileID}/${fileContentID}/${name}`);this.observer=new IntersectionObserver((entries=>this.updateEntries(entries)),{root:this.element});this.registerDisposable({dispose:()=>this.observer.disconnect()});yield Modules.import("https://mozilla.github.io/pdf.js/build/pdf.mjs");const{pdfjsLib}=globalThis;pdfjsLib.GlobalWorkerOptions.workerSrc="https://mozilla.github.io/pdf.js/build/pdf.worker.mjs";const pdfDoc=yield pdfjsLib.getDocument(pdf).promise;this.renderer=XNode.create("div",null,XNode.create("div",{class:"pdf-frame"},XNode.create("div",{class:"preview"}),XNode.create("div",{class:"viewer"}),XNode.create("div",{class:"toolbar"},XNode.create("div",{class:"left"}),XNode.create("div",{class:"middle"},XNode.create("i",{class:"fas fa-minus","event-click":()=>this.changeScale(-.1)}),XNode.create("div",{class:"scale",text:Bind.oneWay((()=>(this.scale*100).toFixed(0)+"%"))}),XNode.create("i",{class:"fas fa-plus","event-click":()=>this.changeScale(.1)})),XNode.create("div",{class:"right"},XNode.create("a",{href:downloadUrl,target:"_blank",title:"Download"},XNode.create("i",{class:"fas fa-download"})),XNode.create("a",{href:pdf,target:"_blank",title:"Print"},XNode.create("i",{class:"fas fa-print"}))))));const viewer=this.viewer=this.element.querySelector(".viewer");const preview=this.preview=this.element.querySelector(".preview");const firstPage=yield pdfDoc.getPage(1);this.firstPage=firstPage;const{scale}=this;const viewport=firstPage.getViewport({scale});const previewViewPort=firstPage.getViewport({scale:.3});const scaleText=scale.toFixed(2);const width=viewport.width+"px";const height=viewport.height+"px";const previewWidth=previewViewPort.width+"px";const previewHeight=previewViewPort.height+"px";for(let i=1;i<=pdfDoc.numPages;i++){const fullView=document.createElement("pdf-page");fullView.pdfDoc=pdfDoc;fullView.index=i;fullView.TextLayer=pdfjsLib.TextLayer;fullView.setAttribute("scale",scaleText);fullView.style.setProperty("--scale-factor",scaleText);fullView.style.minWidth=width;fullView.style.minHeight=height;viewer.appendChild(fullView);this.observer.observe(fullView);this.queueRenderPage(fullView);const thumbnail=document.createElement("pdf-page");thumbnail.pdfDoc=pdfDoc;thumbnail.index=i;thumbnail.fullView=fullView;thumbnail.style.minWidth=previewWidth;thumbnail.style.minHeight=previewHeight;thumbnail.setAttribute("scale","0.3");thumbnail.setAttribute("preview","true");preview.appendChild(thumbnail);this.observer.observe(thumbnail)}this.bindEvent(this.element,"click",(e=>{let start=e.target;while(start){const fullView=start.fullView;if(fullView){fullView.scrollIntoView({behavior:"smooth",block:"nearest"});return}start=start.parentElement}}));setTimeout((()=>this.updatePages()),100)}))}updateEntries(entries){for(const{target,isIntersecting}of entries){const te=target;if(isIntersecting){te.removeAttribute("hidden")}else{te.setAttribute("hidden","true")}this.queueRenderPage(te)}}changeScale(a){const scale=this.scale+=a;const viewport=this.firstPage.getViewport({scale});const width=viewport.width+"px";const height=viewport.height+"px";const scaleText=scale.toFixed(2);let page=this.viewer.firstElementChild;while(page){page.style.minWidth=width;page.style.minHeight=height;page.setAttribute("scale",scaleText);page=page.nextElementSibling}setTimeout((()=>this.updatePages()),100)}updatePages(){let page=this.viewer.firstElementChild;while(page){this.queueRenderPage(page);page=page.nextElementSibling}this.viewer.setAttribute("align-left",this.viewer.scrollWidth>this.viewer.offsetWidth?"true":"false")}focusPage(page){while(page){const{fullView}=page;if(fullView){fullView.scrollIntoView({behavior:"smooth",block:"nearest"});return}page=page.parentElement}}queueRenderPage(pageElement){const{lastTimer}=pageElement;if(lastTimer){clearTimeout(lastTimer)}pageElement.lastTimer=setTimeout((()=>{var _a;var _b;return((_a=(_b=pageElement).lastPromise)!==null&&_a!==void 0?_a:_b.lastPromise=this.renderPage(pageElement)).then((()=>pageElement.lastPromise=null),console.error)}),100)}renderPage(pageElement){return __awaiter(this,void 0,void 0,(function*(){pageElement.innerHTML="";if(pageElement.hasAttribute("hidden")){return}const canvas=document.createElement("canvas");const{index,pdfDoc,TextLayer}=pageElement;const page=yield pdfDoc.getPage(index);const canvasContext=canvas.getContext("2d");const scale=Number(pageElement.getAttribute("scale")||"0.5");const viewport=page.getViewport({scale});canvas.width=viewport.width;canvas.height=viewport.height;yield page.render({canvasContext,viewport}).promise;pageElement.appendChild(canvas);if(!TextLayer){return}const textLayerDiv=document.createElement("div");textLayerDiv.className="textLayer";textLayerDiv.style.setProperty("--scale-factor",scale.toFixed(2));const textContentSource=yield page.streamTextContent();const textLayer=new TextLayer({textContentSource,container:textLayerDiv,viewport});textLayer.render();pageElement.appendChild(textLayerDiv)}))}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/page/files/preview/document/PreviewPDF");System.register(["tslib","@web-atoms/core/dist/core/AtomBinder","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/BindableProperty","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/web/controls/AtomControl","@web-atoms/core/dist/web/core/AtomUI","@web-atoms/core/dist/style/styled"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,AtomBinder,Bind,BindableProperty,XNode,AtomControl,ChildEnumerator,styled,AtomVideoPlayer,isTouchEnabled,gatherElements,numberToText,durationText,noSoundIcon,mute,low,mid,high,getPlayIcon;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreAtomBinder){AtomBinder=_webAtomsCoreDistCoreAtomBinder.AtomBinder},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreBindableProperty){BindableProperty=_webAtomsCoreDistCoreBindableProperty.BindableProperty},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistWebControlsAtomControl){AtomControl=_webAtomsCoreDistWebControlsAtomControl.AtomControl},function(_webAtomsCoreDistWebCoreAtomUI){ChildEnumerator=_webAtomsCoreDistWebCoreAtomUI.ChildEnumerator},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default}],execute:function(){isTouchEnabled=/android|iPhone|iPad/i.test(navigator.userAgent);styled.css`
2251
2261
 
2252
2262
  display: grid;
2253
2263
  grid-template-rows: auto 1fr auto auto auto;