@social-mail/social-mail-client 1.4.2 → 1.4.3

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 (45) hide show
  1. package/dist/admin/AdminAppIndex.pack.js +41 -43
  2. package/dist/admin/AdminAppIndex.pack.js.map +1 -1
  3. package/dist/admin/AdminAppIndex.pack.min.js +4 -4
  4. package/dist/admin/AdminAppIndex.pack.min.js.map +1 -1
  5. package/dist/common/FileUrlService.d.ts +10 -5
  6. package/dist/common/FileUrlService.d.ts.map +1 -1
  7. package/dist/common/FileUrlService.js +10 -2
  8. package/dist/common/FileUrlService.js.map +1 -1
  9. package/dist/common/commands/CommonCommands.js +4 -4
  10. package/dist/common/commands/CommonCommands.js.map +1 -1
  11. package/dist/common/pages/files/preview/document/DownloadZip.js +4 -4
  12. package/dist/common/pages/files/preview/document/DownloadZip.js.map +1 -1
  13. package/dist/common/pages/files/preview/document/PreviewDocument.d.ts.map +1 -1
  14. package/dist/common/pages/files/preview/document/PreviewDocument.js +7 -13
  15. package/dist/common/pages/files/preview/document/PreviewDocument.js.map +1 -1
  16. package/dist/common/pages/files/preview/document/PreviewPDF.d.ts.map +1 -1
  17. package/dist/common/pages/files/preview/document/PreviewPDF.js +6 -4
  18. package/dist/common/pages/files/preview/document/PreviewPDF.js.map +1 -1
  19. package/dist/common/pages/files/preview/image/PreviewImage.d.ts.map +1 -1
  20. package/dist/common/pages/files/preview/image/PreviewImage.js +7 -13
  21. package/dist/common/pages/files/preview/image/PreviewImage.js.map +1 -1
  22. package/dist/common/pages/files/preview/media/PreviewMedia.d.ts.map +1 -1
  23. package/dist/common/pages/files/preview/media/PreviewMedia.js +7 -7
  24. package/dist/common/pages/files/preview/media/PreviewMedia.js.map +1 -1
  25. package/dist/public/channel/ChannelApp.pack.js +1 -1
  26. package/dist/public/channel/ChannelApp.pack.min.js +1 -1
  27. package/dist/site-editor/editor/webComponentsPath.js +1 -1
  28. package/dist/site-editor-app/SiteEditorApp.pack.js +46 -48
  29. package/dist/site-editor-app/SiteEditorApp.pack.js.map +1 -1
  30. package/dist/site-editor-app/SiteEditorApp.pack.min.js +6 -6
  31. package/dist/site-editor-app/SiteEditorApp.pack.min.js.map +1 -1
  32. package/dist/tsconfig.tsbuildinfo +1 -1
  33. package/dist/web/AppIndex.pack.js +41 -43
  34. package/dist/web/AppIndex.pack.js.map +1 -1
  35. package/dist/web/AppIndex.pack.min.js +4 -4
  36. package/dist/web/AppIndex.pack.min.js.map +1 -1
  37. package/package.json +1 -1
  38. package/src/common/FileUrlService.ts +20 -5
  39. package/src/common/commands/CommonCommands.ts +4 -4
  40. package/src/common/pages/files/preview/document/DownloadZip.tsx +4 -4
  41. package/src/common/pages/files/preview/document/PreviewDocument.tsx +4 -5
  42. package/src/common/pages/files/preview/document/PreviewPDF.tsx +5 -4
  43. package/src/common/pages/files/preview/image/PreviewImage.tsx +4 -5
  44. package/src/common/pages/files/preview/media/PreviewMedia.tsx +4 -5
  45. package/src/site-editor/editor/webComponentsPath.ts +1 -1
@@ -1785,7 +1785,7 @@ html, body {
1785
1785
  }
1786
1786
  }
1787
1787
  }
1788
- `.installLocal();_export("default",SignupPage=class SignupPage extends ContentPage{constructor(){super(...arguments);this.termsAgreed=false;this.model={name:"",username:"",password:"",passwordAgain:"",phoneNumber:"",country:"US",phoneNumberText:"",captcha:VerificationToken.create({type:"captcha",verifyCode:""}),phone:VerificationToken.create({type:"sms",verifyCode:""})}}init(){return __awaiter(this,void 0,void 0,(function*(){this.hideToolbar=true;this.element.className=css;this.title="Social Mail Signup";this.renderer=XNode.create("div",null,XNode.create(Loader,null));const{verificationID:id,accessCode}=yield this.entityService.save(this.model.captcha);this.renderer=XNode.create("div",null,XNode.create("div",null,XNode.create("div",{"data-max-width":"size-large"},XNode.create(Form,null,XNode.create(FormField,{label:"Your Name"},XNode.create("input",{autofocus:true,placeholder:"Display Name",value:Bind.twoWaysImmediate((()=>this.model.name))})),XNode.create(FormField,{label:"Email Address"},XNode.create("div",{"data-layout":"row","data-padding":"auto"},XNode.create("input",{"data-border":"none",placeholder:"first-last-name",style:"outline: none",type:"text",value:Bind.twoWaysImmediate((()=>this.model.username))}),XNode.create("span",{text:"@socialmail.me"}))),XNode.create("details",null,XNode.create("summary",null,"Username Policy"),"Please choose username that resembles your real legal name. Any other name will be banned and blocked permanently. And you will not be able to create new username with same phone number as well."),XNode.create(FormField,{label:"Password"},XNode.create("input",{type:"password",value:Bind.twoWaysImmediate((()=>this.model.password))})),XNode.create(FormField,{label:"Password Again"},XNode.create("input",{type:"password",value:Bind.twoWaysImmediate((()=>this.model.passwordAgain))})),XNode.create(FormField,{label:"Phone Number"},XNode.create(PhoneEditor,{value:Bind.twoWaysImmediate((()=>this.model.phoneNumber))})),XNode.create("div",null,"We require phone number verification to prevent misuse and fraud over the email. And it will also help you in setting up two factor authentication to prevent hackers from accessing your private emails."),XNode.create("br",null),XNode.create("br",null),XNode.create(FormField,{label:"Captcha"},XNode.create("img",{src:`/api/users/captcha/${id}/${accessCode}`})),XNode.create(FormField,{label:"Enter 5 Digit Code"},XNode.create("input",{type:"tel",value:Bind.twoWaysImmediate((()=>this.model.captcha.verifyCode))})),XNode.create("div",{"data-layout":"row"},XNode.create("input",{type:"checkbox",checked:Bind.twoWaysImmediate((()=>this.termsAgreed))}),XNode.create("span",{text:"I agree the "}),XNode.create("a",{href:"https://socialmail.in/terms.html",target:"_blank"},"Terms & Conditions")),XNode.create("div",{"data-layout":"row"},XNode.create("button",{"data-layout":"go-button","data-submit-event":"request-phone-verification"},"Signup"))))))}))}requestPhoneVerification(){return __awaiter(this,void 0,void 0,(function*(){const{verificationID,accessCode,verifyCode}=this.model.captcha;const vc=yield this.entityService.invoke(VerificationToken,"verifyCode",this.model.captcha,verificationID,accessCode,verifyCode);if(!vc.verified){throw new Error("Invalid captcha code")}this.model.phone.verifyAddresses=this.model.phoneNumber;const{externalConfig}=yield this.entityService.save(this.model.phone);this.renderer=XNode.create("div",null,XNode.create("div",null,XNode.create("div",{"data-max-width":"size-large"},XNode.create(QRCodeControl,{smsConfig:JSON.parse(externalConfig)}))));const ve=this.model.phone;for(;;){const v=yield this.entityService.query(VerificationToken,"get",ve.verificationID,ve.accessCode).firstOrDefault();if(v.verified){ve.verified=true;ve.verifyCode="verified";break}yield sleep(5e3)}yield this.signup()}))}signup(){return __awaiter(this,void 0,void 0,(function*(){const{model}=this;delete model.phone.addresses;delete model.captcha.addresses;if(!this.termsAgreed){throw new Error("You must agree to Terms & Conditions.")}if(!model.password){throw new Error("Password is required")}if(model.password.length<7){throw new Error("Password is cannot be less than 7 characters")}if(/\s/i.test(model.password)){throw new Error("Password must not any whitespace characters")}const isdCode=yield isdForCountry(model.country);const phoneNumber=model.phoneNumberText.replace(/[^0-9]/g,"");model.phoneNumber=isdCode.startsWith("+")?isdCode+phoneNumber:`+${isdCode}${phoneNumber}`;const{userID}=yield FetchBuilder.post("/api/users/signup").jsonBody(model).asJson();if(userID){location.href="/";return}}))}askPhoneCode(){return __awaiter(this,void 0,void 0,(function*(){this.renderer=XNode.create("div",null,XNode.create("div",null,XNode.create("div",{"data-max-width":"size-large"},XNode.create(QRCodeControl,{smsConfig:this.model.phone.smsConfig}))));do{yield sleep(5e3);yield this.signup()}while(true)}))}});__decorate([InjectProperty,__metadata("design:type",EntityService)],SignupPage.prototype,"entityService",void 0);__decorate([Action({onEvent:"request-phone-verification"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],SignupPage.prototype,"requestPhoneVerification",null);__decorate([Action({onEvent:"signup"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],SignupPage.prototype,"signup",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/page/users/SignupPage");System.register(["@web-atoms/core/dist/core/Command","../../common/commands/CommonCommands"],(function(_export,_context){"use strict";var Command,CommonCommands,AppCommands;_export("default",void 0);return{setters:[function(_webAtomsCoreDistCoreCommand){Command=_webAtomsCoreDistCoreCommand.default},function(_commonCommandsCommonCommands){CommonCommands=_commonCommandsCommonCommands.default}],execute:function(){_export("default",AppCommands=class AppCommands extends CommonCommands{});AppCommands.openHome=Command.create({route:"/",routeOrder:200,openPage:()=>_context.import("../page/home/HomePage")});AppCommands.openMailboxList=Command.create({route:"/mailboxes",routeOrder:100,openPage:()=>_context.import("../../common/pages/mailboxes/MailboxListPage")});AppCommands.openMails=Command.create({route:"/mails",routeOrder:100,openPage:()=>_context.import("../page/mails/MailboxContacts")});AppCommands.signup=Command.create({route:"/social-mail/users/signup",openPage:()=>_context.import("../page/users/SignupPage")})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/commands/AppCommands");System.register([],(function(_export,_context){"use strict";var FileUrlService;return{setters:[],execute:function(){_export("FileUrlService",FileUrlService={downloadUrl(file){const url=file.url;return url.replace("/view/","/download/")},webP(file,size=300){const url=file.url;return url.replace("/view/",`/webp(${300})/`)+`.${size}.webp`},webM(file){const url=file.url;return url.replace("/view/",`/webm/`)+`.webm`},webMBranded(file){const url=file.url;return url.replace("/view/",`/webm-branded/`)+`.branded.webm`}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/FileUrlService");System.register(["@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/style/styled","../../NumberFormats","../../../web/commands/AppCommands","@social-mail/social-mail-client/content/images/icons/audio.svg","../../FileUrlService"],(function(_export,_context){"use strict";var XNode,styled,toFileSize,AppCommands,audioIcon,FileUrlService;function FilePreview(a){const size=a.fileSize&&toFileSize(a.fileSize);const{emailID,appFileID,name,fileContentID}=a;let src=FileUrlService.webP(a,300);if(/^audio\//i.test(a.contentType)){src=audioIcon}const command=AppCommands.getPreviewCommand(a);if(command){return XNode.create("a",{href:command.displayRoute({emailID,appFileID,name,fileContentID}),"data-click-event":"route",title:size?`${name} (${size})`:name,"data-file-preview":"file-preview"},XNode.create("img",{"data-element":"preview",src}),XNode.create("label",{"data-element":"file-name"},name))}return XNode.create("a",{href:FileUrlService.downloadUrl(a),title:size?`${name} (${size})`:name,target:"_blank","data-file-preview":"attachment"},XNode.create("i",{class:"fas fa-paperclip"}),XNode.create("label",{"data-element":"file-name"},name))}_export("default",FilePreview);return{setters:[function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default},function(_NumberFormats){toFileSize=_NumberFormats.toFileSize},function(_webCommandsAppCommands){AppCommands=_webCommandsAppCommands.default},function(_socialMailSocialMailClientContentImagesIconsAudioSvg){audioIcon=_socialMailSocialMailClientContentImagesIconsAudioSvg.default},function(_FileUrlService){FileUrlService=_FileUrlService.FileUrlService}],execute:function(){styled.css`
1788
+ `.installLocal();_export("default",SignupPage=class SignupPage extends ContentPage{constructor(){super(...arguments);this.termsAgreed=false;this.model={name:"",username:"",password:"",passwordAgain:"",phoneNumber:"",country:"US",phoneNumberText:"",captcha:VerificationToken.create({type:"captcha",verifyCode:""}),phone:VerificationToken.create({type:"sms",verifyCode:""})}}init(){return __awaiter(this,void 0,void 0,(function*(){this.hideToolbar=true;this.element.className=css;this.title="Social Mail Signup";this.renderer=XNode.create("div",null,XNode.create(Loader,null));const{verificationID:id,accessCode}=yield this.entityService.save(this.model.captcha);this.renderer=XNode.create("div",null,XNode.create("div",null,XNode.create("div",{"data-max-width":"size-large"},XNode.create(Form,null,XNode.create(FormField,{label:"Your Name"},XNode.create("input",{autofocus:true,placeholder:"Display Name",value:Bind.twoWaysImmediate((()=>this.model.name))})),XNode.create(FormField,{label:"Email Address"},XNode.create("div",{"data-layout":"row","data-padding":"auto"},XNode.create("input",{"data-border":"none",placeholder:"first-last-name",style:"outline: none",type:"text",value:Bind.twoWaysImmediate((()=>this.model.username))}),XNode.create("span",{text:"@socialmail.me"}))),XNode.create("details",null,XNode.create("summary",null,"Username Policy"),"Please choose username that resembles your real legal name. Any other name will be banned and blocked permanently. And you will not be able to create new username with same phone number as well."),XNode.create(FormField,{label:"Password"},XNode.create("input",{type:"password",value:Bind.twoWaysImmediate((()=>this.model.password))})),XNode.create(FormField,{label:"Password Again"},XNode.create("input",{type:"password",value:Bind.twoWaysImmediate((()=>this.model.passwordAgain))})),XNode.create(FormField,{label:"Phone Number"},XNode.create(PhoneEditor,{value:Bind.twoWaysImmediate((()=>this.model.phoneNumber))})),XNode.create("div",null,"We require phone number verification to prevent misuse and fraud over the email. And it will also help you in setting up two factor authentication to prevent hackers from accessing your private emails."),XNode.create("br",null),XNode.create("br",null),XNode.create(FormField,{label:"Captcha"},XNode.create("img",{src:`/api/users/captcha/${id}/${accessCode}`})),XNode.create(FormField,{label:"Enter 5 Digit Code"},XNode.create("input",{type:"tel",value:Bind.twoWaysImmediate((()=>this.model.captcha.verifyCode))})),XNode.create("div",{"data-layout":"row"},XNode.create("input",{type:"checkbox",checked:Bind.twoWaysImmediate((()=>this.termsAgreed))}),XNode.create("span",{text:"I agree the "}),XNode.create("a",{href:"https://socialmail.in/terms.html",target:"_blank"},"Terms & Conditions")),XNode.create("div",{"data-layout":"row"},XNode.create("button",{"data-layout":"go-button","data-submit-event":"request-phone-verification"},"Signup"))))))}))}requestPhoneVerification(){return __awaiter(this,void 0,void 0,(function*(){const{verificationID,accessCode,verifyCode}=this.model.captcha;const vc=yield this.entityService.invoke(VerificationToken,"verifyCode",this.model.captcha,verificationID,accessCode,verifyCode);if(!vc.verified){throw new Error("Invalid captcha code")}this.model.phone.verifyAddresses=this.model.phoneNumber;const{externalConfig}=yield this.entityService.save(this.model.phone);this.renderer=XNode.create("div",null,XNode.create("div",null,XNode.create("div",{"data-max-width":"size-large"},XNode.create(QRCodeControl,{smsConfig:JSON.parse(externalConfig)}))));const ve=this.model.phone;for(;;){const v=yield this.entityService.query(VerificationToken,"get",ve.verificationID,ve.accessCode).firstOrDefault();if(v.verified){ve.verified=true;ve.verifyCode="verified";break}yield sleep(5e3)}yield this.signup()}))}signup(){return __awaiter(this,void 0,void 0,(function*(){const{model}=this;delete model.phone.addresses;delete model.captcha.addresses;if(!this.termsAgreed){throw new Error("You must agree to Terms & Conditions.")}if(!model.password){throw new Error("Password is required")}if(model.password.length<7){throw new Error("Password is cannot be less than 7 characters")}if(/\s/i.test(model.password)){throw new Error("Password must not any whitespace characters")}const isdCode=yield isdForCountry(model.country);const phoneNumber=model.phoneNumberText.replace(/[^0-9]/g,"");model.phoneNumber=isdCode.startsWith("+")?isdCode+phoneNumber:`+${isdCode}${phoneNumber}`;const{userID}=yield FetchBuilder.post("/api/users/signup").jsonBody(model).asJson();if(userID){location.href="/";return}}))}askPhoneCode(){return __awaiter(this,void 0,void 0,(function*(){this.renderer=XNode.create("div",null,XNode.create("div",null,XNode.create("div",{"data-max-width":"size-large"},XNode.create(QRCodeControl,{smsConfig:this.model.phone.smsConfig}))));do{yield sleep(5e3);yield this.signup()}while(true)}))}});__decorate([InjectProperty,__metadata("design:type",EntityService)],SignupPage.prototype,"entityService",void 0);__decorate([Action({onEvent:"request-phone-verification"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],SignupPage.prototype,"requestPhoneVerification",null);__decorate([Action({onEvent:"signup"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],SignupPage.prototype,"signup",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/page/users/SignupPage");System.register(["@web-atoms/core/dist/core/Command","../../common/commands/CommonCommands"],(function(_export,_context){"use strict";var Command,CommonCommands,AppCommands;_export("default",void 0);return{setters:[function(_webAtomsCoreDistCoreCommand){Command=_webAtomsCoreDistCoreCommand.default},function(_commonCommandsCommonCommands){CommonCommands=_commonCommandsCommonCommands.default}],execute:function(){_export("default",AppCommands=class AppCommands extends CommonCommands{});AppCommands.openHome=Command.create({route:"/",routeOrder:200,openPage:()=>_context.import("../page/home/HomePage")});AppCommands.openMailboxList=Command.create({route:"/mailboxes",routeOrder:100,openPage:()=>_context.import("../../common/pages/mailboxes/MailboxListPage")});AppCommands.openMails=Command.create({route:"/mails",routeOrder:100,openPage:()=>_context.import("../page/mails/MailboxContacts")});AppCommands.signup=Command.create({route:"/social-mail/users/signup",openPage:()=>_context.import("../page/users/SignupPage")})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/commands/AppCommands");System.register([],(function(_export,_context){"use strict";var FileUrlService;return{setters:[],execute:function(){_export("FileUrlService",FileUrlService={downloadUrl(file){const url=file.url;return url.replace("/view/","/download/")},pdf(file){const url=file.url;return url.replace("/view/","/pdf/")+".pdf"},html(file){const url=file.url;return url.replace("/view/","/html/")+".html"},webP(file,size=300){const url=file.url.replace("/view/",`/webp(${300})/`);return url+`.${size}.webp`},webM(file){const url=file.url;return url.replace("/view/",`/webm/`)+`.webm`},webMBranded(file){const url=file.url;return url.replace("/view/",`/webm-branded/`)+`.branded.webm`}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/FileUrlService");System.register(["@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/style/styled","../../NumberFormats","../../../web/commands/AppCommands","@social-mail/social-mail-client/content/images/icons/audio.svg","../../FileUrlService"],(function(_export,_context){"use strict";var XNode,styled,toFileSize,AppCommands,audioIcon,FileUrlService;function FilePreview(a){const size=a.fileSize&&toFileSize(a.fileSize);const{emailID,appFileID,name,fileContentID}=a;let src=FileUrlService.webP(a,300);if(/^audio\//i.test(a.contentType)){src=audioIcon}const command=AppCommands.getPreviewCommand(a);if(command){return XNode.create("a",{href:command.displayRoute({emailID,appFileID,name,fileContentID}),"data-click-event":"route",title:size?`${name} (${size})`:name,"data-file-preview":"file-preview"},XNode.create("img",{"data-element":"preview",src}),XNode.create("label",{"data-element":"file-name"},name))}return XNode.create("a",{href:FileUrlService.downloadUrl(a),title:size?`${name} (${size})`:name,target:"_blank","data-file-preview":"attachment"},XNode.create("i",{class:"fas fa-paperclip"}),XNode.create("label",{"data-element":"file-name"},name))}_export("default",FilePreview);return{setters:[function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default},function(_NumberFormats){toFileSize=_NumberFormats.toFileSize},function(_webCommandsAppCommands){AppCommands=_webCommandsAppCommands.default},function(_socialMailSocialMailClientContentImagesIconsAudioSvg){audioIcon=_socialMailSocialMailClientContentImagesIconsAudioSvg.default},function(_FileUrlService){FileUrlService=_FileUrlService.FileUrlService}],execute:function(){styled.css`
1789
1789
  border: solid 2px lightgray;
1790
1790
  display: inline-grid;
1791
1791
  margin: 5px;
@@ -2849,7 +2849,7 @@ html, body {
2849
2849
  & > .hide {
2850
2850
  display: none;
2851
2851
  }
2852
- `.installGlobal("div[data-pinch-zoom]")}}}));AmdLoader.instance.setup("@web-atoms/web-controls/dist/basic/styles/pinch-zoom-view-style");System.register(["tslib","@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","./styles/pinch-zoom-view-style"],(function(_export,_context){"use strict";var __decorate,__metadata,Bind,BindableProperty,XNode,AtomControl,PinchZoomView,center,distance;_export("default",void 0);return{setters:[function(_tslib){__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreBindableProperty){BindableProperty=_webAtomsCoreDistCoreBindableProperty.BindableProperty},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistWebControlsAtomControl){AtomControl=_webAtomsCoreDistWebControlsAtomControl.AtomControl},function(_stylesPinchZoomViewStyle){}],execute:function(){center=ev=>{const touch=ev.touches[0];if(touch){return{x:touch.clientX,y:touch.clientY}}return{x:0,y:0}};distance=(first,second)=>Math.hypot(first.pageX-second.pageX,first.pageY-second.pageY);_export("default",PinchZoomView=class PinchZoomView extends AtomControl{preCreate(){this.element.title="Use mouse wheel to zoom";this.loading=false;this.zoom={scale:0,anchorX:0,anchorY:0,x:0,y:0};this.element.dataset.pinchZoom="true";this.element.draggable=false;this.render(XNode.create("div",null,XNode.create("div",{class:"image-container"},XNode.create("img",{src:Bind.oneWay((()=>this.getSource(this.source))),"style-opacity":Bind.oneWay((()=>this.loading?"0.3":"1")),"event-load":()=>{this.loading=false;this.updateZoom(this.zoom)}})),XNode.create("i",{class:Bind.oneWay((()=>this.loading?"spinner fa-duotone fa-spinner fa-spin":"hide"))}),XNode.create("i",{"event-click":()=>this.updateZoom(),class:Bind.oneWay((()=>this.zoom.scale?"scale":"hide")),title:"Display entire image"})));this.imageContainer=this.element.firstElementChild;this.image=this.imageContainer.firstElementChild;const scrollView=this.element;let previous;let touchMoveDisposable;let touchEndDisposable;this.bindEvent(scrollView,"touchstart",(evs=>{previous=center(evs);let previousDistance=undefined;touchMoveDisposable!==null&&touchMoveDisposable!==void 0?touchMoveDisposable:touchMoveDisposable=this.bindEvent(scrollView,"touchmove",(ev=>{let{x,y,anchorX,anchorY,scale}=this.zoom;if(ev.touches.length===2){ev.preventDefault();ev.stopImmediatePropagation();const rect=this.element.getBoundingClientRect();const first=ev.touches[0];const second=ev.touches[1];anchorX=(first.clientX+second.clientX)/2-rect.left;anchorY=(first.clientY+second.clientY)/2-rect.top;const newScale=distance(first,second);if(previousDistance===void 0){previousDistance=newScale;return}if(previousDistance===newScale){return}scale+=newScale-previousDistance;previousDistance=newScale;this.updateZoom({anchorX,anchorY,x,y,scale});return}if(!previous){return}const cp=center(ev);x+=cp.x-previous.x;y+=cp.y-previous.y;previous=cp;this.updateZoom({anchorX,anchorY,x,y,scale})}));touchEndDisposable!==null&&touchEndDisposable!==void 0?touchEndDisposable:touchEndDisposable=this.bindEvent(scrollView,"touchend",(ev=>{touchMoveDisposable===null||touchMoveDisposable===void 0?void 0:touchMoveDisposable.dispose();touchEndDisposable===null||touchEndDisposable===void 0?void 0:touchEndDisposable.dispose();touchMoveDisposable=undefined;touchEndDisposable=undefined;previousDistance=undefined}))}));let mouseMoveDisposable;let mouseUpDisposable;this.bindEvent(scrollView,"dragstart",(ev=>{ev.preventDefault();ev.stopImmediatePropagation()}));this.bindEvent(scrollView,"mousedown",(ev=>{this.element.dataset.state="grabbing";previous={x:ev.clientX,y:ev.clientY};mouseMoveDisposable!==null&&mouseMoveDisposable!==void 0?mouseMoveDisposable:mouseMoveDisposable=this.bindEvent(scrollView,"mousemove",(e=>{var _a;e.preventDefault();(_a=e.stopImmediatePropagation)===null||_a===void 0?void 0:_a.call(e);const{anchorX,anchorY,scale}=this.zoom;let{x,y}=this.zoom;const cp={x:e.clientX,y:e.clientY};x+=cp.x-previous.x;y+=cp.y-previous.y;previous=cp;this.updateZoom({anchorX,anchorY,x,y,scale})}));mouseUpDisposable!==null&&mouseUpDisposable!==void 0?mouseUpDisposable:mouseUpDisposable=this.bindEvent(scrollView,"mouseup",(e=>{var _a;e.preventDefault();(_a=e.stopImmediatePropagation)===null||_a===void 0?void 0:_a.call(e);this.element.dataset.state="";previous=null;mouseMoveDisposable.dispose();mouseUpDisposable.dispose();mouseMoveDisposable=undefined;mouseUpDisposable=undefined}))}));this.bindEvent(scrollView,"wheel",(ev=>{var _a;const target=ev.currentTarget;ev.preventDefault();(_a=ev.stopImmediatePropagation)===null||_a===void 0?void 0:_a.call(ev);const newScale=this.zoom.scale-(ev.deltaY<0?-50:50);const anchorX=ev.offsetX;const anchorY=ev.offsetY;const{x,y}=this.zoom;this.updateZoom({anchorX,anchorY,x,y,scale:newScale<0?0:newScale})}),undefined,{passive:false})}getSource(text){if(text){this.loading=true}return text}updateZoom(zoom={x:0,y:0,anchorX:0,anchorY:0,scale:0}){const{anchorX,anchorY,x,y}=zoom;let{scale}=zoom;this.zoom=zoom;const image=this.image;if(!image.naturalHeight){return}const maxHeight=this.element.clientWidth>this.element.clientHeight;const s=maxHeight?this.element.clientWidth/image.naturalWidth:this.element.clientHeight/image.naturalHeight;if(scale<=0){scale=0}const newWidth=this.element.clientWidth+scale+"px";const newHeight=this.element.clientHeight+scale+"px";this.image.style.maxWidth=this.element.clientWidth+"px";this.image.style.maxHeight=this.element.clientHeight+"px";if(scale<=0){this.imageContainer.style.transform="";return}const clientWidth=this.element.clientWidth;const scaleFactor=(clientWidth+scale)/clientWidth;this.imageContainer.style.transformOrigin=`${anchorX}px ${anchorY}`;this.imageContainer.style.transform=`translate(${x}px, ${y}px) scale(${scaleFactor})`}});__decorate([BindableProperty,__metadata("design:type",Object)],PinchZoomView.prototype,"zoom",void 0);__decorate([BindableProperty,__metadata("design:type",String)],PinchZoomView.prototype,"source",void 0);__decorate([BindableProperty,__metadata("design:type",Boolean)],PinchZoomView.prototype,"loading",void 0)}}}));AmdLoader.instance.setup("@web-atoms/web-controls/dist/basic/PinchZoomView");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/PinchZoomView","../../../../../common/controls/buttons/IconButton","../../../../../common/fileUrl"],(function(_export,_context){"use strict";var __awaiter,ContentPage,XNode,PinchZoomView,IconButton,fileUrl,PreviewImage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicPinchZoomView){PinchZoomView=_webAtomsWebControlsDistBasicPinchZoomView.default},function(_commonControlsButtonsIconButton){IconButton=_commonControlsButtonsIconButton.IconButton},function(_commonFileUrl){fileUrl=_commonFileUrl.fileUrl}],execute:function(){_export("default",PreviewImage=class PreviewImage extends ContentPage{init(){return __awaiter(this,void 0,void 0,(function*(){const{name}=this.parameters;const pdf=fileUrl(this.parameters,{action:"pdf",ext:".pdf"});const download=fileUrl(this.parameters);this.title=name;this.headerRenderer=()=>XNode.create("div",{"data-layout":"header-row"},XNode.create("a",{href:pdf,target:"_blank"},XNode.create(IconButton,{icon:"fas fa-print",text:"Print"})),XNode.create("a",{href:download,target:"_blank"},XNode.create(IconButton,{icon:"fas fa-download",text:"Download"})));const webp=/\.(jpg|png|jpeg|bmp)/i.test(name)?download:fileUrl(this.parameters,{action:"webp",ext:".webp"});this.renderer=XNode.create("div",{"data-display":"grid","data-align-items":"stretch"},XNode.create(PinchZoomView,{source:webp}))}))}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/files/preview/image/PreviewImage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/services/FetchBuilder","@web-atoms/core/dist/core/XNode","../../../../../common/controls/buttons/IconButton","@web-atoms/core/dist/web/controls/AtomControl","../../../../../common/fileUrl"],(function(_export,_context){"use strict";var __awaiter,ContentPage,FetchBuilder,XNode,IconButton,AtomControl,fileUrl,PreviewDocument,renderHTML;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_webAtomsCoreDistServicesFetchBuilder){FetchBuilder=_webAtomsCoreDistServicesFetchBuilder.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_commonControlsButtonsIconButton){IconButton=_commonControlsButtonsIconButton.IconButton},function(_webAtomsCoreDistWebControlsAtomControl){AtomControl=_webAtomsCoreDistWebControlsAtomControl.AtomControl},function(_commonFileUrl){fileUrl=_commonFileUrl.fileUrl}],execute:function(){renderHTML=AtomControl.registerProperty("data-html","html",((c,e,value)=>{if(!value){e.innerHTML="";return}const html=value;const msg=document.createElement("div");msg.innerHTML=html;const shadow=e.attachShadow({mode:"open"});shadow.appendChild(msg);return}));_export("default",PreviewDocument=class PreviewDocument extends ContentPage{init(){return __awaiter(this,void 0,void 0,(function*(){const{name}=this.parameters;const pdf=fileUrl(this.parameters,{action:"pdf",ext:".pdf"});const download=fileUrl(this.parameters);this.title=name;this.headerRenderer=()=>XNode.create("div",{"data-layout":"header-row"},XNode.create("a",{href:pdf,target:"_blank"},XNode.create(IconButton,{icon:"fas fa-print",text:"Print"})),XNode.create("a",{href:download,target:"_blank"},XNode.create(IconButton,{icon:"fas fa-download",text:"Download"})));this.renderer=XNode.create("div",null,XNode.create("div",{text:"..."}));const html=yield FetchBuilder.get(fileUrl(this.parameters,{action:"html",ext:".html"})).asText();this.renderer=XNode.create("div",{"style-overflow-y":"hidden"},XNode.create("div",{"data-position":"absolute-fill","data-overflow":"auto"},XNode.create("div",Object.assign({"data-margin-left":"auto","data-margin-right":"auto"},renderHTML(html)))))}))}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/files/preview/document/PreviewDocument");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/style/styled","@web-atoms/web-controls/dist/mobile-app/MobileApp"],(function(_export,_context){"use strict";var __awaiter,XNode,styled,ContentPage,PreviewDocument,css;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage}],execute:function(){css=styled.css`
2852
+ `.installGlobal("div[data-pinch-zoom]")}}}));AmdLoader.instance.setup("@web-atoms/web-controls/dist/basic/styles/pinch-zoom-view-style");System.register(["tslib","@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","./styles/pinch-zoom-view-style"],(function(_export,_context){"use strict";var __decorate,__metadata,Bind,BindableProperty,XNode,AtomControl,PinchZoomView,center,distance;_export("default",void 0);return{setters:[function(_tslib){__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreBindableProperty){BindableProperty=_webAtomsCoreDistCoreBindableProperty.BindableProperty},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistWebControlsAtomControl){AtomControl=_webAtomsCoreDistWebControlsAtomControl.AtomControl},function(_stylesPinchZoomViewStyle){}],execute:function(){center=ev=>{const touch=ev.touches[0];if(touch){return{x:touch.clientX,y:touch.clientY}}return{x:0,y:0}};distance=(first,second)=>Math.hypot(first.pageX-second.pageX,first.pageY-second.pageY);_export("default",PinchZoomView=class PinchZoomView extends AtomControl{preCreate(){this.element.title="Use mouse wheel to zoom";this.loading=false;this.zoom={scale:0,anchorX:0,anchorY:0,x:0,y:0};this.element.dataset.pinchZoom="true";this.element.draggable=false;this.render(XNode.create("div",null,XNode.create("div",{class:"image-container"},XNode.create("img",{src:Bind.oneWay((()=>this.getSource(this.source))),"style-opacity":Bind.oneWay((()=>this.loading?"0.3":"1")),"event-load":()=>{this.loading=false;this.updateZoom(this.zoom)}})),XNode.create("i",{class:Bind.oneWay((()=>this.loading?"spinner fa-duotone fa-spinner fa-spin":"hide"))}),XNode.create("i",{"event-click":()=>this.updateZoom(),class:Bind.oneWay((()=>this.zoom.scale?"scale":"hide")),title:"Display entire image"})));this.imageContainer=this.element.firstElementChild;this.image=this.imageContainer.firstElementChild;const scrollView=this.element;let previous;let touchMoveDisposable;let touchEndDisposable;this.bindEvent(scrollView,"touchstart",(evs=>{previous=center(evs);let previousDistance=undefined;touchMoveDisposable!==null&&touchMoveDisposable!==void 0?touchMoveDisposable:touchMoveDisposable=this.bindEvent(scrollView,"touchmove",(ev=>{let{x,y,anchorX,anchorY,scale}=this.zoom;if(ev.touches.length===2){ev.preventDefault();ev.stopImmediatePropagation();const rect=this.element.getBoundingClientRect();const first=ev.touches[0];const second=ev.touches[1];anchorX=(first.clientX+second.clientX)/2-rect.left;anchorY=(first.clientY+second.clientY)/2-rect.top;const newScale=distance(first,second);if(previousDistance===void 0){previousDistance=newScale;return}if(previousDistance===newScale){return}scale+=newScale-previousDistance;previousDistance=newScale;this.updateZoom({anchorX,anchorY,x,y,scale});return}if(!previous){return}const cp=center(ev);x+=cp.x-previous.x;y+=cp.y-previous.y;previous=cp;this.updateZoom({anchorX,anchorY,x,y,scale})}));touchEndDisposable!==null&&touchEndDisposable!==void 0?touchEndDisposable:touchEndDisposable=this.bindEvent(scrollView,"touchend",(ev=>{touchMoveDisposable===null||touchMoveDisposable===void 0?void 0:touchMoveDisposable.dispose();touchEndDisposable===null||touchEndDisposable===void 0?void 0:touchEndDisposable.dispose();touchMoveDisposable=undefined;touchEndDisposable=undefined;previousDistance=undefined}))}));let mouseMoveDisposable;let mouseUpDisposable;this.bindEvent(scrollView,"dragstart",(ev=>{ev.preventDefault();ev.stopImmediatePropagation()}));this.bindEvent(scrollView,"mousedown",(ev=>{this.element.dataset.state="grabbing";previous={x:ev.clientX,y:ev.clientY};mouseMoveDisposable!==null&&mouseMoveDisposable!==void 0?mouseMoveDisposable:mouseMoveDisposable=this.bindEvent(scrollView,"mousemove",(e=>{var _a;e.preventDefault();(_a=e.stopImmediatePropagation)===null||_a===void 0?void 0:_a.call(e);const{anchorX,anchorY,scale}=this.zoom;let{x,y}=this.zoom;const cp={x:e.clientX,y:e.clientY};x+=cp.x-previous.x;y+=cp.y-previous.y;previous=cp;this.updateZoom({anchorX,anchorY,x,y,scale})}));mouseUpDisposable!==null&&mouseUpDisposable!==void 0?mouseUpDisposable:mouseUpDisposable=this.bindEvent(scrollView,"mouseup",(e=>{var _a;e.preventDefault();(_a=e.stopImmediatePropagation)===null||_a===void 0?void 0:_a.call(e);this.element.dataset.state="";previous=null;mouseMoveDisposable.dispose();mouseUpDisposable.dispose();mouseMoveDisposable=undefined;mouseUpDisposable=undefined}))}));this.bindEvent(scrollView,"wheel",(ev=>{var _a;const target=ev.currentTarget;ev.preventDefault();(_a=ev.stopImmediatePropagation)===null||_a===void 0?void 0:_a.call(ev);const newScale=this.zoom.scale-(ev.deltaY<0?-50:50);const anchorX=ev.offsetX;const anchorY=ev.offsetY;const{x,y}=this.zoom;this.updateZoom({anchorX,anchorY,x,y,scale:newScale<0?0:newScale})}),undefined,{passive:false})}getSource(text){if(text){this.loading=true}return text}updateZoom(zoom={x:0,y:0,anchorX:0,anchorY:0,scale:0}){const{anchorX,anchorY,x,y}=zoom;let{scale}=zoom;this.zoom=zoom;const image=this.image;if(!image.naturalHeight){return}const maxHeight=this.element.clientWidth>this.element.clientHeight;const s=maxHeight?this.element.clientWidth/image.naturalWidth:this.element.clientHeight/image.naturalHeight;if(scale<=0){scale=0}const newWidth=this.element.clientWidth+scale+"px";const newHeight=this.element.clientHeight+scale+"px";this.image.style.maxWidth=this.element.clientWidth+"px";this.image.style.maxHeight=this.element.clientHeight+"px";if(scale<=0){this.imageContainer.style.transform="";return}const clientWidth=this.element.clientWidth;const scaleFactor=(clientWidth+scale)/clientWidth;this.imageContainer.style.transformOrigin=`${anchorX}px ${anchorY}`;this.imageContainer.style.transform=`translate(${x}px, ${y}px) scale(${scaleFactor})`}});__decorate([BindableProperty,__metadata("design:type",Object)],PinchZoomView.prototype,"zoom",void 0);__decorate([BindableProperty,__metadata("design:type",String)],PinchZoomView.prototype,"source",void 0);__decorate([BindableProperty,__metadata("design:type",Boolean)],PinchZoomView.prototype,"loading",void 0)}}}));AmdLoader.instance.setup("@web-atoms/web-controls/dist/basic/PinchZoomView");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/PinchZoomView","../../../../../common/controls/buttons/IconButton","../../../../FileUrlService"],(function(_export,_context){"use strict";var __awaiter,ContentPage,XNode,PinchZoomView,IconButton,FileUrlService,PreviewImage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicPinchZoomView){PinchZoomView=_webAtomsWebControlsDistBasicPinchZoomView.default},function(_commonControlsButtonsIconButton){IconButton=_commonControlsButtonsIconButton.IconButton},function(_FileUrlService){FileUrlService=_FileUrlService.FileUrlService}],execute:function(){_export("default",PreviewImage=class PreviewImage extends ContentPage{init(){return __awaiter(this,void 0,void 0,(function*(){const{name}=this.parameters;const pdf=FileUrlService.pdf(this.parameters);const download=FileUrlService.downloadUrl(this.parameters);this.title=name;this.headerRenderer=()=>XNode.create("div",{"data-layout":"header-row"},XNode.create("a",{href:pdf,target:"_blank"},XNode.create(IconButton,{icon:"fas fa-print",text:"Print"})),XNode.create("a",{href:download,target:"_blank"},XNode.create(IconButton,{icon:"fas fa-download",text:"Download"})));const webp=/\.(jpg|png|jpeg|bmp)/i.test(name)?download:FileUrlService.webP(this.parameters);this.renderer=XNode.create("div",{"data-display":"grid","data-align-items":"stretch"},XNode.create(PinchZoomView,{source:webp}))}))}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/files/preview/image/PreviewImage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/services/FetchBuilder","@web-atoms/core/dist/core/XNode","../../../../../common/controls/buttons/IconButton","@web-atoms/core/dist/web/controls/AtomControl","../../../../FileUrlService"],(function(_export,_context){"use strict";var __awaiter,ContentPage,FetchBuilder,XNode,IconButton,AtomControl,FileUrlService,PreviewDocument,renderHTML;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_webAtomsCoreDistServicesFetchBuilder){FetchBuilder=_webAtomsCoreDistServicesFetchBuilder.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_commonControlsButtonsIconButton){IconButton=_commonControlsButtonsIconButton.IconButton},function(_webAtomsCoreDistWebControlsAtomControl){AtomControl=_webAtomsCoreDistWebControlsAtomControl.AtomControl},function(_FileUrlService){FileUrlService=_FileUrlService.FileUrlService}],execute:function(){renderHTML=AtomControl.registerProperty("data-html","html",((c,e,value)=>{if(!value){e.innerHTML="";return}const html=value;const msg=document.createElement("div");msg.innerHTML=html;const shadow=e.attachShadow({mode:"open"});shadow.appendChild(msg);return}));_export("default",PreviewDocument=class PreviewDocument extends ContentPage{init(){return __awaiter(this,void 0,void 0,(function*(){const{name}=this.parameters;const pdf=FileUrlService.pdf(this.parameters);const download=FileUrlService.downloadUrl(this.parameters);this.title=name;this.headerRenderer=()=>XNode.create("div",{"data-layout":"header-row"},XNode.create("a",{href:pdf,target:"_blank"},XNode.create(IconButton,{icon:"fas fa-print",text:"Print"})),XNode.create("a",{href:download,target:"_blank"},XNode.create(IconButton,{icon:"fas fa-download",text:"Download"})));this.renderer=XNode.create("div",null,XNode.create("div",{text:"..."}));const html=yield FetchBuilder.get(FileUrlService.html(this.parameters)).asText();this.renderer=XNode.create("div",{"style-overflow-y":"hidden"},XNode.create("div",{"data-position":"absolute-fill","data-overflow":"auto"},XNode.create("div",Object.assign({"data-margin-left":"auto","data-margin-right":"auto"},renderHTML(html)))))}))}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/files/preview/document/PreviewDocument");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/style/styled","@web-atoms/web-controls/dist/mobile-app/MobileApp"],(function(_export,_context){"use strict";var __awaiter,XNode,styled,ContentPage,PreviewDocument,css;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage}],execute:function(){css=styled.css`
2853
2853
  position: relative;
2854
2854
  & iframe {
2855
2855
  width: 100%;
@@ -2862,7 +2862,7 @@ html, body {
2862
2862
  border: none;
2863
2863
  outline: none;
2864
2864
  }
2865
- `.installLocal();_export("default",PreviewDocument=class PreviewDocument extends ContentPage{init(){return __awaiter(this,void 0,void 0,(function*(){const{name,fileContentID,appFileID}=this.parameters;const q=new URLSearchParams({name,fileContentID,appFileID});const url=`/social-mail/ui/dist/public/preview/pdf/PreviewPDF?${q.toString()}`;this.title=name;this.renderer=XNode.create("div",{class:css},XNode.create("iframe",{src:url}))}))}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/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`
2865
+ `.installLocal();_export("default",PreviewDocument=class PreviewDocument extends ContentPage{init(){return __awaiter(this,void 0,void 0,(function*(){const{name,fileContentID,appFileID,url}=this.parameters;const q=new URLSearchParams({name,fileContentID,appFileID,url});const previewUrl=`/social-mail/ui/dist/public/preview/pdf/PreviewPDF?${q.toString()}`;this.title=name;this.renderer=XNode.create("div",{class:css},XNode.create("iframe",{src:previewUrl}))}))}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/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`
2866
2866
 
2867
2867
  display: grid;
2868
2868
  grid-template-rows: auto 1fr auto auto auto;
@@ -3085,7 +3085,7 @@ html, body {
3085
3085
  }
3086
3086
  }
3087
3087
 
3088
- `.installGlobal("[data-video-player=video-player]");gatherElements=(e,data={})=>{var _a;const ce=ChildEnumerator.enumerate(e);for(const iterator of ce){const elementName=(_a=iterator.dataset.element)===null||_a===void 0?void 0:_a.replace(/-([a-z])/g,(g=>g[1].toUpperCase()));if(elementName){data[elementName]=iterator}gatherElements(iterator,data)}return data};numberToText=n=>{if(n<10){return"0"+n}return n.toString()};durationText=(n,total)=>{if(n===null||n===undefined){return""}const minutes=Math.floor(n/60);const seconds=numberToText(Math.ceil(n%60));const totalMinutes=Math.floor(total/60);const totalSeconds=numberToText(Math.ceil(total%60));return`${minutes}:${seconds} / ${totalMinutes}:${totalSeconds}`};noSoundIcon="fa-duotone fa-volume-slash";mute="fa-duotone fa-volume-xmark";low="fa-duotone fa-volume-low";mid="fa-duotone fa-volume";high="fa-duotone fa-volume-high";getPlayIcon=state=>{switch(state){case"ended":return"fa-solid fa-refresh";case"paused":return"fa-solid fa-play";case"playing":return"fa-solid fa-pause"}return"fa-solid fa-play"};_export("default",AtomVideoPlayer=class AtomVideoPlayer extends AtomControl{constructor(){super(...arguments);this.maxWidth=""}get poster(){return this.video.poster}set poster(v){this.video.poster=v}get state(){return this.element.getAttribute("data-state")}set state(v){this.element.setAttribute("data-state",v);AtomBinder.refreshValue(this,"paused");AtomBinder.refreshValue(this,"state")}get duration(){return this.video.duration}get time(){return this.video.currentTime}set time(v){this.video.currentTime=v}get paused(){return this.video.paused}get isFullScreen(){var _a;return(_a=document.fullscreenEnabled&&this.element===document.fullscreenElement)!==null&&_a!==void 0?_a:false}stopFullscreen(){if(this.isFullScreen){return document.exitFullscreen()}return Promise.resolve()}pause(){this.video.pause()}play(){this.video.play().catch(console.error)}onPropertyChanged(name){switch(name){case"source":this.updateSource();break}}setCurrentTime(n){this.video.currentTime=n*this.video.duration}create(){this.element.dataset.videoPlayer="video-player";this.bindEvent(this.element,"togglePlay",(e=>{if(e.defaultPrevented){return}e.preventDefault();if(isTouchEnabled){if(this.state==="playing"){if(e.target===this.video){if(this.element.dataset.controls==="true"){this.element.dataset.controls="false"}else{this.element.dataset.controls="true"}return}}if(e.target.tagName==="CANVAS"){return}}if(this.video.paused){this.video.play();this.element.dataset.controls="false"}else{this.video.pause();this.element.dataset.controls="true"}}));this.bindEvent(this.element,"volume",(e=>{this.video.muted=!this.video.muted;this.updateVolume()}));this.bindEvent(this.element,"fullScreen",(e=>__awaiter(this,void 0,void 0,(function*(){if(!this.element.requestFullscreen){this.video.webkitEnterFullscreen();return}if(this.isFullScreen){yield document.exitFullscreen();return}yield this.element.requestFullscreen({navigationUI:"show"})}))));this.bindEvent(document,"fullscreenchange",(()=>{AtomBinder.refreshValue(this,"isFullScreen")}));this.render(XNode.create("div",{"data-click-event":"toggle-play","data-state":"pause"},XNode.create("div",{"data-has-logo":Bind.oneWay((()=>this.logo?"true":"false"),"false"),"data-element":"banner","style-width":Bind.oneWay((()=>this.maxWidth))},XNode.create("img",{"data-element":"logo",src:Bind.oneWay((()=>this.logo))}),XNode.create("div",{"data-element":"logo-title",text:Bind.oneWay((()=>this.logo&&this.logoTitle))}),XNode.create("div",{"data-element":"logo-description",text:Bind.oneWay((()=>this.logo&&this.logoDescription))})),XNode.create("video",{"event-abort":()=>this.state="aborted","event-durationchange":e=>AtomBinder.refreshValue(this,"duration"),"event-ended":e=>__awaiter(this,void 0,void 0,(function*(){this.state="ended";if(document.fullscreenEnabled&&this.element===document.fullscreenElement){yield document.exitFullscreen()}e.target.dispatchEvent(new CustomEvent("videoEnded",{bubbles:true}))})),"event-loadedmetadata":()=>{this.updateVolume();this.currentTimeSpan.textContent=durationText(0,this.duration);this.updateProgress();const{video}=this;const{videoWidth,videoHeight}=video;const eW=video.offsetWidth*videoHeight/videoWidth;const maxWidth=100*(this.element.offsetWidth-eW)/this.element.offsetWidth;if(maxWidth>50&&maxWidth<100){this.maxWidth=`${maxWidth}%`}AtomBinder.refreshValue(this,"duration")},"event-pause":()=>this.state="paused","event-play":()=>this.state="playing","event-progress":()=>this.updateProgress(),"event-timeupdate":()=>{this.currentTimeSpan.textContent=durationText(this.time,this.duration);this.state="playing";this.updateProgress();AtomBinder.refreshValue(this,"time")},"event-waiting":()=>this.state="waiting","event-volumechange":()=>this.updateVolume(),autoplay:false,playsInline:true,"style-max-width":"100%","style-max-height":"100%","data-element":"video"}),XNode.create("canvas",{"data-element":"progress"}),XNode.create("img",{"data-element":"poster"}),XNode.create("div",{"data-element":"toolbar"},XNode.create("i",{"data-element":"play","data-style":"button",class:Bind.oneWay((()=>getPlayIcon(this.state)))}),XNode.create("i",{"data-click-event":"volume","data-style":"button","data-element":"sound",class:"fa-duotone fa-volume-slash"}),!isTouchEnabled&&XNode.create("input",{"data-click-event":"none","data-element":"volume-range",type:"range",min:0,max:1,step:.1}),XNode.create("span",{"data-font-size":"small","data-element":"current",text:"0:00"}),XNode.create("i",{"data-click-event":"full-screen","data-style":"button","data-element":"full-screen",class:Bind.oneWay((()=>this.isFullScreen?"fa-solid fa-compress":"fa-solid fa-expand"))})),XNode.create("div",{"data-click-event":"toggle-play","data-element":"play-element"},XNode.create("button",{class:"play"},XNode.create("i",{class:Bind.oneWay((()=>getPlayIcon(this.state)))})))));const all=gatherElements(this.element);this.video=all.video;this.progress=all.progress;this.currentTimeSpan=all.current;this.soundIcon=all.sound;this.volumeRange=all.volumeRange;if(this.volumeRange){this.bindEvent(this.volumeRange,"input",(()=>{setTimeout((()=>{this.video.volume=parseFloat(this.volumeRange.value)}),1)}))}this.bindEvent(this.element,"mouseenter",(()=>{this.element.dataset.controls="true"}));this.bindEvent(this.element,"mouseleave",(()=>{this.element.dataset.controls="false"}));this.bindEvent(this.progress,"pointerdown",(e=>{e.preventDefault();this.setCurrentTime(e.offsetX/this.progress.clientWidth);const move=e1=>{e1.preventDefault();this.setCurrentTime(e1.offsetX/this.progress.clientWidth)};const up=e1=>{e1.preventDefault();this.progress.removeEventListener("pointermove",move);this.progress.removeEventListener("pointerup",up)};this.progress.addEventListener("pointermove",move);this.progress.addEventListener("pointerup",up)}))}updateSource(){this.video.src=this.source}updateProgress(){const context=this.progress.getContext("2d");context.strokeStyle="rgba(0,0,0,0)";const width=this.progress.clientWidth;const height=this.progress.clientHeight;this.progress.width=width;this.progress.height=height;context.clearRect(0,0,width,height);const max=this.video.duration;const seekable=this.video.buffered;const scale=width/max;context.fillStyle="rgba(255,255,255,0.3)";context.fillRect(0,0,width,height);context.fillStyle="rgba(255,255,255,0.6)";for(let index=0;index<seekable.length;index++){const start=seekable.start(index)*scale;const end=seekable.end(index)*scale;context.fillRect(start,0,end,height)}context.fillStyle="#ffffff";context.fillRect(0,0,this.video.currentTime*scale,height)}updateVolume(){if(this.video.muted){this.soundIcon.className=mute;this.soundIcon.title="Unmute";if(this.volumeRange){this.volumeRange.style.display="none"}return}const audio=this.video.volume;if(this.volumeRange){this.volumeRange.style.display="";this.volumeRange.value=audio===null||audio===void 0?void 0:audio.toString()}this.soundIcon.title="Mute";if(audio>.8){this.soundIcon.className=high;return}if(audio<.2){this.soundIcon.className=low;return}this.soundIcon.className=mid}});__decorate([BindableProperty,__metadata("design:type",Object)],AtomVideoPlayer.prototype,"source",void 0);__decorate([BindableProperty,__metadata("design:type",Object)],AtomVideoPlayer.prototype,"logo",void 0);__decorate([BindableProperty,__metadata("design:type",String)],AtomVideoPlayer.prototype,"logoTitle",void 0);__decorate([BindableProperty,__metadata("design:type",String)],AtomVideoPlayer.prototype,"logoDescription",void 0)}}}));AmdLoader.instance.setup("@web-atoms/web-controls/dist/player/AtomVideoPlayer");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/player/AtomVideoPlayer","../../../../../common/controls/buttons/IconButton","../../../../../common/fileUrl"],(function(_export,_context){"use strict";var __awaiter,ContentPage,XNode,AtomVideoPlayer,IconButton,fileUrl,PreviewImage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistPlayerAtomVideoPlayer){AtomVideoPlayer=_webAtomsWebControlsDistPlayerAtomVideoPlayer.default},function(_commonControlsButtonsIconButton){IconButton=_commonControlsButtonsIconButton.IconButton},function(_commonFileUrl){fileUrl=_commonFileUrl.fileUrl}],execute:function(){_export("default",PreviewImage=class PreviewImage extends ContentPage{init(){return __awaiter(this,void 0,void 0,(function*(){const{name}=this.parameters;const download=fileUrl(this.parameters);this.title=name;this.headerRenderer=()=>XNode.create("div",{"data-layout":"header-row"},XNode.create("a",{href:download,target:"_blank"},XNode.create(IconButton,{icon:"fas fa-download",text:"Download"})));const webm=fileUrl.webm(this.parameters);const webp=fileUrl.webp(this.parameters);this.renderer=XNode.create("div",{"data-display":"grid","data-align-items":"stretch"},XNode.create(AtomVideoPlayer,{poster:webp,source:webm}))}))}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/files/preview/media/PreviewMedia");System.register([],(function(_export,_context){"use strict";var FileTypes;_export("default",void 0);return{setters:[],execute:function(){_export("default",FileTypes=class FileTypes{static canPreview(file){if(/(image|video|audio)\//.test(file.contentType)){return true}return/\.(pdf|docx|docm|pptx|pptm|xlsx|xlsm|doc|xls|pdf|ppt|dot|xlst|sxw|sxc|sxd|sxi|sxm|sxg|txt)$/i.test(file.name)}static isMedia(file){return/^(audio|video)\//i.test(file.contentType)}static isImage(file){return/^image\//i.test(file.contentType)||/\.(jpg|png|bmp|gif|tif|tiff|jiff|jpg)$/i.test(file.name)}static isDocument(file){return/\.(pdf|docx|docm|pptx|pptm|xlsx|xlsm|doc|xls|pdf|ppt|dot|xlst|sxw|sxc|sxd|sxi|sxm|sxg|txt|md)$/i.test(file.name)}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/services/FileTypes");System.register(["@web-atoms/core/dist/core/Command","../apiPath","../../services/FileTypes"],(function(_export,_context){"use strict";var Command,Commands,apiPathRoot,FileTypes,CommonCommands;_export("default",void 0);return{setters:[function(_webAtomsCoreDistCoreCommand){Command=_webAtomsCoreDistCoreCommand.default;Commands=_webAtomsCoreDistCoreCommand.Commands},function(_apiPath){apiPathRoot=_apiPath.apiPathRoot},function(_servicesFileTypes){FileTypes=_servicesFileTypes.default}],execute:function(){Command.routePrefix=apiPathRoot;_export("default",CommonCommands=class CommonCommands extends Commands{static getPreviewCommand(p){var _a;(_a=p.emailID)!==null&&_a!==void 0?_a:p.emailID=0;if(FileTypes.isDocument(p)){return this.previewPdf}if(FileTypes.isImage(p)){return this.previewImage}if(FileTypes.isMedia(p)){return this.previewMedia}}});CommonCommands.openMailbox=Command.create({route:"/mailbox/{id}",routeOrder:50,openPage:()=>_context.import("../../web/page/mails/MailboxContacts")});CommonCommands.openChannel=Command.create({route:"/channel/{id}",routeOrder:50,openPage:()=>_context.import("../../web/page/channels/detail/ChannelDetailPage")});CommonCommands.openSubscribers=Command.create({route:"/mailbox-subscribers/{id}",routeOrder:50,openPage:()=>_context.import("../../web/page/channels/subscribers/ChannelSubscribersPage")});CommonCommands.openDrives=Command.create({route:"/drives",routeOrder:100,openPage:()=>_context.import("../pages/drives/DriveListPage")});CommonCommands.openFiles=Command.create({route:"/files/{id}",routeOrder:100,openPage:()=>_context.import("../../common/pages/files/FolderPage")});CommonCommands.changePassword=Command.create({route:"/user/change-password",pushPage:()=>_context.import("../pages/user/change-password/ChangePasswordPage")});CommonCommands.setupMultiFactor=Command.create({route:"/user/multi-factor/setup",pushPage:()=>_context.import("../pages/user/multi-factor/MultiFactorSetupPage")});CommonCommands.openWebSiteList=Command.create({route:"/websites",routeOrder:2e3,openPage:()=>_context.import("../pages/websites/list/WebSiteListPage")});CommonCommands.accessTokenList=Command.create({route:"/user/access-tokens",openPage:()=>_context.import("../pages/user/access-tokens/AccessTokenListPage")});CommonCommands.dnsZoneList=Command.create({route:"/hosted-zones/list/",openPage:()=>_context.import("../pages/dns/DnsZoneListPage")});CommonCommands.editDnsZone=Command.create({route:"/hosted-zone/{zoneID}/",pushPage:()=>_context.import("../pages/dns/edit/DnsZoneEditorPage")});CommonCommands.openTemplates=Command.create({route:"/templates",routeOrder:100,routeDefaults:{templates:true},openPage:()=>_context.import("../pages/files/FolderPage")});CommonCommands.previewImage=Command.create({route:"/social-mail/file-preview/image/{appFileID}/{emailID}/{fileContentID}/{name}",pushPage:()=>_context.import("../pages/files/preview/image/PreviewImage")});CommonCommands.previewHtml=Command.create({route:"/social-mail/file-preview/html/{appFileID}/{emailID}/{fileContentID}/{name}",pushPage:()=>_context.import("../pages/files/preview/document/PreviewDocument")});CommonCommands.previewPdf=Command.create({route:"/social-mail/file-preview/pdf/{appFileID}/{emailID}/{fileContentID}/{name}",pushPage:()=>_context.import("../pages/files/preview/document/PreviewPDF")});CommonCommands.previewMedia=Command.create({route:"/social-mail/file-preview/media/{appFileID}/{emailID}/{fileContentID}/{name}",pushPage:()=>_context.import("../pages/files/preview/media/PreviewMedia")})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/commands/CommonCommands");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../model/model","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/FormField","../../../controls/form/RequiredFormField","@web-atoms/core/dist/core/Bind","@web-atoms/web-controls/dist/basic/Checkbox","../../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action","../../../../services/EntityService"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,MailboxSyncTarget,XNode,Form,FormField,PasswordFormField,TextFormField,Bind,Checkbox,SaveIconTextButton,Action,EntityService,EditSyncTargetPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_modelModel){MailboxSyncTarget=_modelModel.MailboxSyncTarget},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_controlsFormRequiredFormField){PasswordFormField=_controlsFormRequiredFormField.PasswordFormField;TextFormField=_controlsFormRequiredFormField.TextFormField},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsWebControlsDistBasicCheckbox){Checkbox=_webAtomsWebControlsDistBasicCheckbox.default},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_servicesEntityService){EntityService=_servicesEntityService.default}],execute:function(){_export("default",EditSyncTargetPage=class EditSyncTargetPage extends PopupWindowPage{init(){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){this.model=((_a=this.parameters)===null||_a===void 0?void 0:_a.syncTargetID)?this.parameters:MailboxSyncTarget.create(Object.assign(Object.assign({},(_b=this.parameters)!==null&&_b!==void 0?_b:{}),{active:true,port:993,isSecure:true,newPassword:"",intervalSeconds:86400}));this.title="Create Sync Target";this.renderer=XNode.create("div",null,XNode.create(Form,null,XNode.create(FormField,{label:"Protocol"},XNode.create("div",{"data-layout":"row"},XNode.create("span",{text:this.model.protocol}),XNode.create("span",{text:this.model.direction}))),XNode.create(TextFormField,{label:"Host",value:()=>this.model.host}),XNode.create(TextFormField,{label:"Port",value:()=>this.model.port}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.model.isSecure)),text:"SSL Enabled"}),XNode.create(TextFormField,{label:"Username",value:()=>this.model.username}),XNode.create(PasswordFormField,{label:"Password",value:()=>this.model.newPassword}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.model.syncAllFolders)),text:"Sync All Folders (Slow, Not Recommended)"}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.model.syncJunkMails)),text:"Sync Junk/Spam Folder (Slow, Not Recommended)"}),XNode.create(FormField,{label:"Name of All Folder"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.allFolderName))})),XNode.create("p",null,"Leave it empty if your mailbox supports new IMAP extensions for All Folders.",XNode.create("br",null),"If specified, only this folder will be synced."),XNode.create("div",{"data-layout":"command-row"},XNode.create(SaveIconTextButton,{"data-submit-event":"save-form",text:"Save"}))))}))}saveForm(){return __awaiter(this,void 0,void 0,(function*(){if(this.model.syncTargetID){const es=this.resolve(EntityService);yield es.save(es.cloner(this.model).copy)}return this.model}))}});__decorate([Action({onEvent:"save-form",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],EditSyncTargetPage.prototype,"saveForm",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/mailboxes/settings/EditSyncTargetPage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/XNode","../../controls/collection-editor/CollectionEditor","./settings/EditSyncTargetPage","./services/MailboxService","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/view-model/Action","@web-atoms/core/dist/web/services/PopupService"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,ContentPage,XNode,CollectionEditor,EditSyncTargetPage,MailboxService,InjectProperty,Action,PopupService,MailboxDetailPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_controlsCollectionEditorCollectionEditor){CollectionEditor=_controlsCollectionEditorCollectionEditor.default},function(_settingsEditSyncTargetPage){EditSyncTargetPage=_settingsEditSyncTargetPage.default},function(_servicesMailboxService){MailboxService=_servicesMailboxService.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsCoreDistWebServicesPopupService){PopupService=_webAtomsCoreDistWebServicesPopupService.default}],execute:function(){_export("default",MailboxDetailPage=class MailboxDetailPage extends ContentPage{init(){return __awaiter(this,void 0,void 0,(function*(){this.model=yield this.mailboxService.get(this.parameters.mailboxID);this.title=this.model.emailAddress.emailAddress;const username=this.model.emailAddress.emailAddress;const host=`imap.${username.split("@").pop()}`;this.renderer=XNode.create("div",null,XNode.create(CollectionEditor,{label:"Sync Targets",model:this.model,collection:"syncTargets",addPage:EditSyncTargetPage,addItemDefaults:{username,host},itemRenderer:item=>XNode.create("div",null,XNode.create("span",null,XNode.create("span",{text:item.protocol})),XNode.create("span",null,XNode.create("span",{text:item.username})),XNode.create("span",null,XNode.create("span",{text:item.host})),XNode.create("span",null,item.active?XNode.create("i",{"data-click-event":"pause-sync",class:"fas fa-pause",title:"Pause Sync"}):XNode.create("i",{"data-click-event":"start-sync",class:"fas fa-play",title:"Start Sync"})),XNode.create("span",null,XNode.create("i",{"data-click-event":"check-sync-logs",class:"fas fa-circle-info",title:"Check Logs"})))}))}))}pauseSync(item){return __awaiter(this,void 0,void 0,(function*(){item.active=false;yield this.mailboxService.saveSyncTarget(item);yield this.init()}))}startSync(item){return __awaiter(this,void 0,void 0,(function*(){item.active=true;yield this.mailboxService.saveSyncTarget(item);yield this.init()}))}checkSyncLogs(item){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){const syncState=JSON.parse((_a=item.syncLog)!==null&&_a!==void 0?_a:"{}");yield PopupService.alert({message:XNode.create("div",null,XNode.create("pre",null,...((_b=syncState.log)!==null&&_b!==void 0?_b:[]).map((x=>[XNode.create("span",{text:x}),XNode.create("br",null)])).flat(2)))})}))}});__decorate([InjectProperty,__metadata("design:type",MailboxService)],MailboxDetailPage.prototype,"mailboxService",void 0);__decorate([Action({onEvent:"pause-sync",confirm:"Are you sure you want to pause the sync?"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MailboxDetailPage.prototype,"pauseSync",null);__decorate([Action({onEvent:"start-sync",confirm:"Are you sure you want to start the sync?"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MailboxDetailPage.prototype,"startSync",null);__decorate([Action({onEvent:"check-sync-logs"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MailboxDetailPage.prototype,"checkSyncLogs",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/mailboxes/MailboxDetailPage");System.register(["tslib","@web-atoms/core/dist/core/XNode"],(function(_export,_context){"use strict";var __rest,XNode,IconClass,Icon;_export({default:void 0,Icon:void 0});return{setters:[function(_tslib){__rest=_tslib.__rest},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default}],execute:function(){_export("default",IconClass=class IconClass{static forMailbox(mb){return mb.isChannel?mb.isPrivateChannel?"fas fa-users-rectangle":"fas fa-users":"fas fa-envelope"}});_export("Icon",Icon=class Icon{static Mailbox(_a){var{mailbox}=_a,a=__rest(_a,["mailbox"]);return XNode.create("i",Object.assign({},a,{class:IconClass.forMailbox(mailbox)}))}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/icons/Icons");System.register(["tslib","@web-atoms/core/dist/di/DITransient","@web-atoms/core/dist/di/Inject","../../../../services/EntityService","../../../../model/model","@web-atoms/date-time/dist/DateTime"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,DITransient,Inject,EntityService,Mailbox,MailboxSyncTarget,DateTime,ExternalMailboxService;return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistDiDITransient){DITransient=_webAtomsCoreDistDiDITransient.default},function(_webAtomsCoreDistDiInject){Inject=_webAtomsCoreDistDiInject.Inject},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_modelModel){Mailbox=_modelModel.Mailbox;MailboxSyncTarget=_modelModel.MailboxSyncTarget},function(_webAtomsDateTimeDistDateTime){DateTime=_webAtomsDateTimeDistDateTime.default}],execute:function(){ExternalMailboxService=class ExternalMailboxService{createMailbox(model){return __awaiter(this,void 0,void 0,(function*(){const{emailAddress,displayName:name,username,password,imapHost,imapPort,imapSecure,smtpHost,smtpPort,smtpSecure,smtpUsername,smtpPassword}=model;const dateCreated=DateTime.now;const mb=Mailbox.create({externalEmailAddress:emailAddress,name,dateCreated,dateUpdated:dateCreated,indexAttachments:true,indexImageAttachments:true,syncTargets:[MailboxSyncTarget.create({protocol:"imap",host:imapHost,port:imapPort,isSecure:imapSecure,username,newPassword:password,direction:"in",active:true}),MailboxSyncTarget.create({protocol:"smtp",host:smtpHost,port:smtpPort,isSecure:smtpSecure,username:smtpUsername||username,newPassword:smtpPassword||password,direction:"in",active:true})]});yield this.entityService.save(mb)}))}};__decorate([Inject,__metadata("design:type",EntityService)],ExternalMailboxService.prototype,"entityService",void 0);ExternalMailboxService=__decorate([DITransient()],ExternalMailboxService);_export("default",ExternalMailboxService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/mailboxes/services/ExternalMailboxService");System.register(["tslib","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/view-model/Action","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/web-controls/dist/basic/PasswordBox","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../controls/buttons/IconButton","@web-atoms/core/dist/core/InjectProperty","../services/ExternalMailboxService","@web-atoms/web-controls/dist/basic/Checkbox"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,Bind,XNode,Action,Form,FormField,PasswordBox,PopupWindowPage,AddIconButton,InjectProperty,ExternalMailboxService,Checkbox,AddExternalMailboxPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_webAtomsWebControlsDistBasicPasswordBox){PasswordBox=_webAtomsWebControlsDistBasicPasswordBox.default},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_controlsButtonsIconButton){AddIconButton=_controlsButtonsIconButton.AddIconButton},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesExternalMailboxService){ExternalMailboxService=_servicesExternalMailboxService.default},function(_webAtomsWebControlsDistBasicCheckbox){Checkbox=_webAtomsWebControlsDistBasicCheckbox.default}],execute:function(){_export("default",AddExternalMailboxPage=class AddExternalMailboxPage extends PopupWindowPage{constructor(){super(...arguments);this.model={emailAddress:"",displayName:"",imapHost:"",imapPort:993,imapSecure:true,smtpHost:"",smtpPort:465,smtpSecure:true,username:"",password:"",smtpUsername:"",smtpPassword:""}}init(){return __awaiter(this,void 0,void 0,(function*(){this.title="Add External Mailbox";this.renderer=XNode.create("div",{"style-max-width":"400px"},XNode.create("div",null,"Use this form only if you do not own the domain of the email address. If you plan to migrate domain back to this server, we recommend creating hosted mailbox and add sync account to migrate your emails."),XNode.create("hr",null),XNode.create(Form,null,XNode.create(FormField,{label:"Display/From Name"},XNode.create("input",{autofocus:true,value:Bind.twoWaysImmediate((()=>this.model.displayName))})),XNode.create(FormField,{label:"Email Address"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.emailAddress))})),XNode.create(FormField,{label:"Username"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.username))})),XNode.create(FormField,{label:"Password"},XNode.create(PasswordBox,{value:Bind.twoWaysImmediate((()=>this.model.password))})),XNode.create(FormField,{label:"IMAP (Server/Host)"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.imapHost))})),XNode.create(FormField,{label:"IMAP Port"},XNode.create("div",{"data-layout":"row"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.imapPort))}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.model.imapSecure)),text:"Secure"}))),XNode.create(FormField,{label:"SMTP (Server/Host)"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.smtpHost))})),XNode.create(FormField,{label:"SMTP Port"},XNode.create("div",{"data-layout":"row"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.smtpPort))}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.model.smtpSecure)),text:"Secure"}))),XNode.create("div",{"data-layout":"sticky-command-row"},XNode.create(AddIconButton,{"data-submit-event":"add-new-mailbox",text:"Add Mailbox"}))))}))}onInput(){return __awaiter(this,void 0,void 0,(function*(){if(this.model.imapHost){return}const{emailAddress}=this.model;if(!emailAddress){return}if(emailAddress.indexOf("@")===-1){return}const domain=emailAddress.split("@").pop();if(domain.length<=5){return}this.model.imapHost=`imap.${domain}`;this.model.smtpHost=`smtp.${domain}`;this.model.username=emailAddress}))}addNewMailbox(){return this.externalMailboxService.createMailbox(this.model)}});__decorate([InjectProperty,__metadata("design:type",ExternalMailboxService)],AddExternalMailboxPage.prototype,"externalMailboxService",void 0);__decorate([Action({onEvent:"input",defer:1e3}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],AddExternalMailboxPage.prototype,"onInput",null);__decorate([Action({onEvent:"add-new-mailbox",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",void 0)],AddExternalMailboxPage.prototype,"addNewMailbox",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/mailboxes/external-mailboxes/AddExternalMailboxPage");System.register(["tslib","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomRepeater","../../controls/repeater/InfiniteRepeater","./services/MailboxService","@web-atoms/core/dist/core/InjectProperty","../../../model/model","@web-atoms/core/dist/view-model/Action","@web-atoms/web-controls/dist/PageNavigator","./MailboxEditorPage","../../NumberFormats","../../commands/CommonCommands","@web-atoms/web-controls/dist/mobile-app/MasterDetailPage","@web-atoms/core/dist/style/styled","./MailboxDetailPage","@web-atoms/web-controls/dist/basic/ComboBox","../../icons/Icons","@web-atoms/web-controls/dist/basic/InlinePopup","@web-atoms/web-controls/dist/basic/PopupButton","./external-mailboxes/AddExternalMailboxPage"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,Bind,XNode,AtomRepeater,InfiniteRepeater,MailboxService,InjectProperty,Domain,Action,PageNavigator,MailboxEditorPage,toFileSize,CommonCommands,MasterDetailPage,styled,MailboxDetailPage,ComboBox,Icon,InlinePopupButton,MenuItem,AddExternalMailboxPage,MailboxListPage,css;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_controlsRepeaterInfiniteRepeater){InfiniteRepeater=_controlsRepeaterInfiniteRepeater.default},function(_servicesMailboxService){MailboxService=_servicesMailboxService.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_modelModel){Domain=_modelModel.Domain},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_MailboxEditorPage){MailboxEditorPage=_MailboxEditorPage.default},function(_NumberFormats){toFileSize=_NumberFormats.toFileSize},function(_commandsCommonCommands){CommonCommands=_commandsCommonCommands.default},function(_webAtomsWebControlsDistMobileAppMasterDetailPage){MasterDetailPage=_webAtomsWebControlsDistMobileAppMasterDetailPage.default},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default},function(_MailboxDetailPage){MailboxDetailPage=_MailboxDetailPage.default},function(_webAtomsWebControlsDistBasicComboBox){ComboBox=_webAtomsWebControlsDistBasicComboBox.default},function(_iconsIcons){Icon=_iconsIcons.Icon},function(_webAtomsWebControlsDistBasicInlinePopup){InlinePopupButton=_webAtomsWebControlsDistBasicInlinePopup.InlinePopupButton},function(_webAtomsWebControlsDistBasicPopupButton){MenuItem=_webAtomsWebControlsDistBasicPopupButton.MenuItem},function(_externalMailboxesAddExternalMailboxPage){AddExternalMailboxPage=_externalMailboxesAddExternalMailboxPage.default}],execute:function(){css=styled.css`
3088
+ `.installGlobal("[data-video-player=video-player]");gatherElements=(e,data={})=>{var _a;const ce=ChildEnumerator.enumerate(e);for(const iterator of ce){const elementName=(_a=iterator.dataset.element)===null||_a===void 0?void 0:_a.replace(/-([a-z])/g,(g=>g[1].toUpperCase()));if(elementName){data[elementName]=iterator}gatherElements(iterator,data)}return data};numberToText=n=>{if(n<10){return"0"+n}return n.toString()};durationText=(n,total)=>{if(n===null||n===undefined){return""}const minutes=Math.floor(n/60);const seconds=numberToText(Math.ceil(n%60));const totalMinutes=Math.floor(total/60);const totalSeconds=numberToText(Math.ceil(total%60));return`${minutes}:${seconds} / ${totalMinutes}:${totalSeconds}`};noSoundIcon="fa-duotone fa-volume-slash";mute="fa-duotone fa-volume-xmark";low="fa-duotone fa-volume-low";mid="fa-duotone fa-volume";high="fa-duotone fa-volume-high";getPlayIcon=state=>{switch(state){case"ended":return"fa-solid fa-refresh";case"paused":return"fa-solid fa-play";case"playing":return"fa-solid fa-pause"}return"fa-solid fa-play"};_export("default",AtomVideoPlayer=class AtomVideoPlayer extends AtomControl{constructor(){super(...arguments);this.maxWidth=""}get poster(){return this.video.poster}set poster(v){this.video.poster=v}get state(){return this.element.getAttribute("data-state")}set state(v){this.element.setAttribute("data-state",v);AtomBinder.refreshValue(this,"paused");AtomBinder.refreshValue(this,"state")}get duration(){return this.video.duration}get time(){return this.video.currentTime}set time(v){this.video.currentTime=v}get paused(){return this.video.paused}get isFullScreen(){var _a;return(_a=document.fullscreenEnabled&&this.element===document.fullscreenElement)!==null&&_a!==void 0?_a:false}stopFullscreen(){if(this.isFullScreen){return document.exitFullscreen()}return Promise.resolve()}pause(){this.video.pause()}play(){this.video.play().catch(console.error)}onPropertyChanged(name){switch(name){case"source":this.updateSource();break}}setCurrentTime(n){this.video.currentTime=n*this.video.duration}create(){this.element.dataset.videoPlayer="video-player";this.bindEvent(this.element,"togglePlay",(e=>{if(e.defaultPrevented){return}e.preventDefault();if(isTouchEnabled){if(this.state==="playing"){if(e.target===this.video){if(this.element.dataset.controls==="true"){this.element.dataset.controls="false"}else{this.element.dataset.controls="true"}return}}if(e.target.tagName==="CANVAS"){return}}if(this.video.paused){this.video.play();this.element.dataset.controls="false"}else{this.video.pause();this.element.dataset.controls="true"}}));this.bindEvent(this.element,"volume",(e=>{this.video.muted=!this.video.muted;this.updateVolume()}));this.bindEvent(this.element,"fullScreen",(e=>__awaiter(this,void 0,void 0,(function*(){if(!this.element.requestFullscreen){this.video.webkitEnterFullscreen();return}if(this.isFullScreen){yield document.exitFullscreen();return}yield this.element.requestFullscreen({navigationUI:"show"})}))));this.bindEvent(document,"fullscreenchange",(()=>{AtomBinder.refreshValue(this,"isFullScreen")}));this.render(XNode.create("div",{"data-click-event":"toggle-play","data-state":"pause"},XNode.create("div",{"data-has-logo":Bind.oneWay((()=>this.logo?"true":"false"),"false"),"data-element":"banner","style-width":Bind.oneWay((()=>this.maxWidth))},XNode.create("img",{"data-element":"logo",src:Bind.oneWay((()=>this.logo))}),XNode.create("div",{"data-element":"logo-title",text:Bind.oneWay((()=>this.logo&&this.logoTitle))}),XNode.create("div",{"data-element":"logo-description",text:Bind.oneWay((()=>this.logo&&this.logoDescription))})),XNode.create("video",{"event-abort":()=>this.state="aborted","event-durationchange":e=>AtomBinder.refreshValue(this,"duration"),"event-ended":e=>__awaiter(this,void 0,void 0,(function*(){this.state="ended";if(document.fullscreenEnabled&&this.element===document.fullscreenElement){yield document.exitFullscreen()}e.target.dispatchEvent(new CustomEvent("videoEnded",{bubbles:true}))})),"event-loadedmetadata":()=>{this.updateVolume();this.currentTimeSpan.textContent=durationText(0,this.duration);this.updateProgress();const{video}=this;const{videoWidth,videoHeight}=video;const eW=video.offsetWidth*videoHeight/videoWidth;const maxWidth=100*(this.element.offsetWidth-eW)/this.element.offsetWidth;if(maxWidth>50&&maxWidth<100){this.maxWidth=`${maxWidth}%`}AtomBinder.refreshValue(this,"duration")},"event-pause":()=>this.state="paused","event-play":()=>this.state="playing","event-progress":()=>this.updateProgress(),"event-timeupdate":()=>{this.currentTimeSpan.textContent=durationText(this.time,this.duration);this.state="playing";this.updateProgress();AtomBinder.refreshValue(this,"time")},"event-waiting":()=>this.state="waiting","event-volumechange":()=>this.updateVolume(),autoplay:false,playsInline:true,"style-max-width":"100%","style-max-height":"100%","data-element":"video"}),XNode.create("canvas",{"data-element":"progress"}),XNode.create("img",{"data-element":"poster"}),XNode.create("div",{"data-element":"toolbar"},XNode.create("i",{"data-element":"play","data-style":"button",class:Bind.oneWay((()=>getPlayIcon(this.state)))}),XNode.create("i",{"data-click-event":"volume","data-style":"button","data-element":"sound",class:"fa-duotone fa-volume-slash"}),!isTouchEnabled&&XNode.create("input",{"data-click-event":"none","data-element":"volume-range",type:"range",min:0,max:1,step:.1}),XNode.create("span",{"data-font-size":"small","data-element":"current",text:"0:00"}),XNode.create("i",{"data-click-event":"full-screen","data-style":"button","data-element":"full-screen",class:Bind.oneWay((()=>this.isFullScreen?"fa-solid fa-compress":"fa-solid fa-expand"))})),XNode.create("div",{"data-click-event":"toggle-play","data-element":"play-element"},XNode.create("button",{class:"play"},XNode.create("i",{class:Bind.oneWay((()=>getPlayIcon(this.state)))})))));const all=gatherElements(this.element);this.video=all.video;this.progress=all.progress;this.currentTimeSpan=all.current;this.soundIcon=all.sound;this.volumeRange=all.volumeRange;if(this.volumeRange){this.bindEvent(this.volumeRange,"input",(()=>{setTimeout((()=>{this.video.volume=parseFloat(this.volumeRange.value)}),1)}))}this.bindEvent(this.element,"mouseenter",(()=>{this.element.dataset.controls="true"}));this.bindEvent(this.element,"mouseleave",(()=>{this.element.dataset.controls="false"}));this.bindEvent(this.progress,"pointerdown",(e=>{e.preventDefault();this.setCurrentTime(e.offsetX/this.progress.clientWidth);const move=e1=>{e1.preventDefault();this.setCurrentTime(e1.offsetX/this.progress.clientWidth)};const up=e1=>{e1.preventDefault();this.progress.removeEventListener("pointermove",move);this.progress.removeEventListener("pointerup",up)};this.progress.addEventListener("pointermove",move);this.progress.addEventListener("pointerup",up)}))}updateSource(){this.video.src=this.source}updateProgress(){const context=this.progress.getContext("2d");context.strokeStyle="rgba(0,0,0,0)";const width=this.progress.clientWidth;const height=this.progress.clientHeight;this.progress.width=width;this.progress.height=height;context.clearRect(0,0,width,height);const max=this.video.duration;const seekable=this.video.buffered;const scale=width/max;context.fillStyle="rgba(255,255,255,0.3)";context.fillRect(0,0,width,height);context.fillStyle="rgba(255,255,255,0.6)";for(let index=0;index<seekable.length;index++){const start=seekable.start(index)*scale;const end=seekable.end(index)*scale;context.fillRect(start,0,end,height)}context.fillStyle="#ffffff";context.fillRect(0,0,this.video.currentTime*scale,height)}updateVolume(){if(this.video.muted){this.soundIcon.className=mute;this.soundIcon.title="Unmute";if(this.volumeRange){this.volumeRange.style.display="none"}return}const audio=this.video.volume;if(this.volumeRange){this.volumeRange.style.display="";this.volumeRange.value=audio===null||audio===void 0?void 0:audio.toString()}this.soundIcon.title="Mute";if(audio>.8){this.soundIcon.className=high;return}if(audio<.2){this.soundIcon.className=low;return}this.soundIcon.className=mid}});__decorate([BindableProperty,__metadata("design:type",Object)],AtomVideoPlayer.prototype,"source",void 0);__decorate([BindableProperty,__metadata("design:type",Object)],AtomVideoPlayer.prototype,"logo",void 0);__decorate([BindableProperty,__metadata("design:type",String)],AtomVideoPlayer.prototype,"logoTitle",void 0);__decorate([BindableProperty,__metadata("design:type",String)],AtomVideoPlayer.prototype,"logoDescription",void 0)}}}));AmdLoader.instance.setup("@web-atoms/web-controls/dist/player/AtomVideoPlayer");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/player/AtomVideoPlayer","../../../../../common/controls/buttons/IconButton","../../../../FileUrlService"],(function(_export,_context){"use strict";var __awaiter,ContentPage,XNode,AtomVideoPlayer,IconButton,FileUrlService,PreviewImage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistPlayerAtomVideoPlayer){AtomVideoPlayer=_webAtomsWebControlsDistPlayerAtomVideoPlayer.default},function(_commonControlsButtonsIconButton){IconButton=_commonControlsButtonsIconButton.IconButton},function(_FileUrlService){FileUrlService=_FileUrlService.FileUrlService}],execute:function(){_export("default",PreviewImage=class PreviewImage extends ContentPage{init(){return __awaiter(this,void 0,void 0,(function*(){const{name}=this.parameters;const download=FileUrlService.downloadUrl(this.parameters);this.title=name;this.headerRenderer=()=>XNode.create("div",{"data-layout":"header-row"},XNode.create("a",{href:download,target:"_blank"},XNode.create(IconButton,{icon:"fas fa-download",text:"Download"})));const webm=FileUrlService.webM(this.parameters);const webp=FileUrlService.webP(this.parameters);this.renderer=XNode.create("div",{"data-display":"grid","data-align-items":"stretch"},XNode.create(AtomVideoPlayer,{poster:webp,source:webm}))}))}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/files/preview/media/PreviewMedia");System.register([],(function(_export,_context){"use strict";var FileTypes;_export("default",void 0);return{setters:[],execute:function(){_export("default",FileTypes=class FileTypes{static canPreview(file){if(/(image|video|audio)\//.test(file.contentType)){return true}return/\.(pdf|docx|docm|pptx|pptm|xlsx|xlsm|doc|xls|pdf|ppt|dot|xlst|sxw|sxc|sxd|sxi|sxm|sxg|txt)$/i.test(file.name)}static isMedia(file){return/^(audio|video)\//i.test(file.contentType)}static isImage(file){return/^image\//i.test(file.contentType)||/\.(jpg|png|bmp|gif|tif|tiff|jiff|jpg)$/i.test(file.name)}static isDocument(file){return/\.(pdf|docx|docm|pptx|pptm|xlsx|xlsm|doc|xls|pdf|ppt|dot|xlst|sxw|sxc|sxd|sxi|sxm|sxg|txt|md)$/i.test(file.name)}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/services/FileTypes");System.register(["@web-atoms/core/dist/core/Command","../apiPath","../../services/FileTypes"],(function(_export,_context){"use strict";var Command,Commands,apiPathRoot,FileTypes,CommonCommands;_export("default",void 0);return{setters:[function(_webAtomsCoreDistCoreCommand){Command=_webAtomsCoreDistCoreCommand.default;Commands=_webAtomsCoreDistCoreCommand.Commands},function(_apiPath){apiPathRoot=_apiPath.apiPathRoot},function(_servicesFileTypes){FileTypes=_servicesFileTypes.default}],execute:function(){Command.routePrefix=apiPathRoot;_export("default",CommonCommands=class CommonCommands extends Commands{static getPreviewCommand(p){var _a;(_a=p.emailID)!==null&&_a!==void 0?_a:p.emailID=0;if(FileTypes.isDocument(p)){return this.previewPdf}if(FileTypes.isImage(p)){return this.previewImage}if(FileTypes.isMedia(p)){return this.previewMedia}}});CommonCommands.openMailbox=Command.create({route:"/mailbox/{id}",routeOrder:50,openPage:()=>_context.import("../../web/page/mails/MailboxContacts")});CommonCommands.openChannel=Command.create({route:"/channel/{id}",routeOrder:50,openPage:()=>_context.import("../../web/page/channels/detail/ChannelDetailPage")});CommonCommands.openSubscribers=Command.create({route:"/mailbox-subscribers/{id}",routeOrder:50,openPage:()=>_context.import("../../web/page/channels/subscribers/ChannelSubscribersPage")});CommonCommands.openDrives=Command.create({route:"/drives",routeOrder:100,openPage:()=>_context.import("../pages/drives/DriveListPage")});CommonCommands.openFiles=Command.create({route:"/files/{id}",routeOrder:100,openPage:()=>_context.import("../../common/pages/files/FolderPage")});CommonCommands.changePassword=Command.create({route:"/user/change-password",pushPage:()=>_context.import("../pages/user/change-password/ChangePasswordPage")});CommonCommands.setupMultiFactor=Command.create({route:"/user/multi-factor/setup",pushPage:()=>_context.import("../pages/user/multi-factor/MultiFactorSetupPage")});CommonCommands.openWebSiteList=Command.create({route:"/websites",routeOrder:2e3,openPage:()=>_context.import("../pages/websites/list/WebSiteListPage")});CommonCommands.accessTokenList=Command.create({route:"/user/access-tokens",openPage:()=>_context.import("../pages/user/access-tokens/AccessTokenListPage")});CommonCommands.dnsZoneList=Command.create({route:"/hosted-zones/list/",openPage:()=>_context.import("../pages/dns/DnsZoneListPage")});CommonCommands.editDnsZone=Command.create({route:"/hosted-zone/{zoneID}/",pushPage:()=>_context.import("../pages/dns/edit/DnsZoneEditorPage")});CommonCommands.openTemplates=Command.create({route:"/templates",routeOrder:100,routeDefaults:{templates:true},openPage:()=>_context.import("../pages/files/FolderPage")});CommonCommands.previewImage=Command.create({route:"/social-mail/file-preview/image/{appFileID}/{emailID}/{fileContentID}/{name}/{url}",pushPage:()=>_context.import("../pages/files/preview/image/PreviewImage")});CommonCommands.previewHtml=Command.create({route:"/social-mail/file-preview/html/{appFileID}/{emailID}/{fileContentID}/{name}/{url}",pushPage:()=>_context.import("../pages/files/preview/document/PreviewDocument")});CommonCommands.previewPdf=Command.create({route:"/social-mail/file-preview/pdf/{appFileID}/{emailID}/{fileContentID}/{name}/{url}",pushPage:()=>_context.import("../pages/files/preview/document/PreviewPDF")});CommonCommands.previewMedia=Command.create({route:"/social-mail/file-preview/media/{appFileID}/{emailID}/{fileContentID}/{name}/{url}",pushPage:()=>_context.import("../pages/files/preview/media/PreviewMedia")})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/commands/CommonCommands");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../model/model","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/FormField","../../../controls/form/RequiredFormField","@web-atoms/core/dist/core/Bind","@web-atoms/web-controls/dist/basic/Checkbox","../../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action","../../../../services/EntityService"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,MailboxSyncTarget,XNode,Form,FormField,PasswordFormField,TextFormField,Bind,Checkbox,SaveIconTextButton,Action,EntityService,EditSyncTargetPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_modelModel){MailboxSyncTarget=_modelModel.MailboxSyncTarget},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_controlsFormRequiredFormField){PasswordFormField=_controlsFormRequiredFormField.PasswordFormField;TextFormField=_controlsFormRequiredFormField.TextFormField},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsWebControlsDistBasicCheckbox){Checkbox=_webAtomsWebControlsDistBasicCheckbox.default},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_servicesEntityService){EntityService=_servicesEntityService.default}],execute:function(){_export("default",EditSyncTargetPage=class EditSyncTargetPage extends PopupWindowPage{init(){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){this.model=((_a=this.parameters)===null||_a===void 0?void 0:_a.syncTargetID)?this.parameters:MailboxSyncTarget.create(Object.assign(Object.assign({},(_b=this.parameters)!==null&&_b!==void 0?_b:{}),{active:true,port:993,isSecure:true,newPassword:"",intervalSeconds:86400}));this.title="Create Sync Target";this.renderer=XNode.create("div",null,XNode.create(Form,null,XNode.create(FormField,{label:"Protocol"},XNode.create("div",{"data-layout":"row"},XNode.create("span",{text:this.model.protocol}),XNode.create("span",{text:this.model.direction}))),XNode.create(TextFormField,{label:"Host",value:()=>this.model.host}),XNode.create(TextFormField,{label:"Port",value:()=>this.model.port}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.model.isSecure)),text:"SSL Enabled"}),XNode.create(TextFormField,{label:"Username",value:()=>this.model.username}),XNode.create(PasswordFormField,{label:"Password",value:()=>this.model.newPassword}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.model.syncAllFolders)),text:"Sync All Folders (Slow, Not Recommended)"}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.model.syncJunkMails)),text:"Sync Junk/Spam Folder (Slow, Not Recommended)"}),XNode.create(FormField,{label:"Name of All Folder"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.allFolderName))})),XNode.create("p",null,"Leave it empty if your mailbox supports new IMAP extensions for All Folders.",XNode.create("br",null),"If specified, only this folder will be synced."),XNode.create("div",{"data-layout":"command-row"},XNode.create(SaveIconTextButton,{"data-submit-event":"save-form",text:"Save"}))))}))}saveForm(){return __awaiter(this,void 0,void 0,(function*(){if(this.model.syncTargetID){const es=this.resolve(EntityService);yield es.save(es.cloner(this.model).copy)}return this.model}))}});__decorate([Action({onEvent:"save-form",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],EditSyncTargetPage.prototype,"saveForm",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/mailboxes/settings/EditSyncTargetPage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/XNode","../../controls/collection-editor/CollectionEditor","./settings/EditSyncTargetPage","./services/MailboxService","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/view-model/Action","@web-atoms/core/dist/web/services/PopupService"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,ContentPage,XNode,CollectionEditor,EditSyncTargetPage,MailboxService,InjectProperty,Action,PopupService,MailboxDetailPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_controlsCollectionEditorCollectionEditor){CollectionEditor=_controlsCollectionEditorCollectionEditor.default},function(_settingsEditSyncTargetPage){EditSyncTargetPage=_settingsEditSyncTargetPage.default},function(_servicesMailboxService){MailboxService=_servicesMailboxService.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsCoreDistWebServicesPopupService){PopupService=_webAtomsCoreDistWebServicesPopupService.default}],execute:function(){_export("default",MailboxDetailPage=class MailboxDetailPage extends ContentPage{init(){return __awaiter(this,void 0,void 0,(function*(){this.model=yield this.mailboxService.get(this.parameters.mailboxID);this.title=this.model.emailAddress.emailAddress;const username=this.model.emailAddress.emailAddress;const host=`imap.${username.split("@").pop()}`;this.renderer=XNode.create("div",null,XNode.create(CollectionEditor,{label:"Sync Targets",model:this.model,collection:"syncTargets",addPage:EditSyncTargetPage,addItemDefaults:{username,host},itemRenderer:item=>XNode.create("div",null,XNode.create("span",null,XNode.create("span",{text:item.protocol})),XNode.create("span",null,XNode.create("span",{text:item.username})),XNode.create("span",null,XNode.create("span",{text:item.host})),XNode.create("span",null,item.active?XNode.create("i",{"data-click-event":"pause-sync",class:"fas fa-pause",title:"Pause Sync"}):XNode.create("i",{"data-click-event":"start-sync",class:"fas fa-play",title:"Start Sync"})),XNode.create("span",null,XNode.create("i",{"data-click-event":"check-sync-logs",class:"fas fa-circle-info",title:"Check Logs"})))}))}))}pauseSync(item){return __awaiter(this,void 0,void 0,(function*(){item.active=false;yield this.mailboxService.saveSyncTarget(item);yield this.init()}))}startSync(item){return __awaiter(this,void 0,void 0,(function*(){item.active=true;yield this.mailboxService.saveSyncTarget(item);yield this.init()}))}checkSyncLogs(item){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){const syncState=JSON.parse((_a=item.syncLog)!==null&&_a!==void 0?_a:"{}");yield PopupService.alert({message:XNode.create("div",null,XNode.create("pre",null,...((_b=syncState.log)!==null&&_b!==void 0?_b:[]).map((x=>[XNode.create("span",{text:x}),XNode.create("br",null)])).flat(2)))})}))}});__decorate([InjectProperty,__metadata("design:type",MailboxService)],MailboxDetailPage.prototype,"mailboxService",void 0);__decorate([Action({onEvent:"pause-sync",confirm:"Are you sure you want to pause the sync?"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MailboxDetailPage.prototype,"pauseSync",null);__decorate([Action({onEvent:"start-sync",confirm:"Are you sure you want to start the sync?"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MailboxDetailPage.prototype,"startSync",null);__decorate([Action({onEvent:"check-sync-logs"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MailboxDetailPage.prototype,"checkSyncLogs",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/mailboxes/MailboxDetailPage");System.register(["tslib","@web-atoms/core/dist/core/XNode"],(function(_export,_context){"use strict";var __rest,XNode,IconClass,Icon;_export({default:void 0,Icon:void 0});return{setters:[function(_tslib){__rest=_tslib.__rest},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default}],execute:function(){_export("default",IconClass=class IconClass{static forMailbox(mb){return mb.isChannel?mb.isPrivateChannel?"fas fa-users-rectangle":"fas fa-users":"fas fa-envelope"}});_export("Icon",Icon=class Icon{static Mailbox(_a){var{mailbox}=_a,a=__rest(_a,["mailbox"]);return XNode.create("i",Object.assign({},a,{class:IconClass.forMailbox(mailbox)}))}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/icons/Icons");System.register(["tslib","@web-atoms/core/dist/di/DITransient","@web-atoms/core/dist/di/Inject","../../../../services/EntityService","../../../../model/model","@web-atoms/date-time/dist/DateTime"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,DITransient,Inject,EntityService,Mailbox,MailboxSyncTarget,DateTime,ExternalMailboxService;return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistDiDITransient){DITransient=_webAtomsCoreDistDiDITransient.default},function(_webAtomsCoreDistDiInject){Inject=_webAtomsCoreDistDiInject.Inject},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_modelModel){Mailbox=_modelModel.Mailbox;MailboxSyncTarget=_modelModel.MailboxSyncTarget},function(_webAtomsDateTimeDistDateTime){DateTime=_webAtomsDateTimeDistDateTime.default}],execute:function(){ExternalMailboxService=class ExternalMailboxService{createMailbox(model){return __awaiter(this,void 0,void 0,(function*(){const{emailAddress,displayName:name,username,password,imapHost,imapPort,imapSecure,smtpHost,smtpPort,smtpSecure,smtpUsername,smtpPassword}=model;const dateCreated=DateTime.now;const mb=Mailbox.create({externalEmailAddress:emailAddress,name,dateCreated,dateUpdated:dateCreated,indexAttachments:true,indexImageAttachments:true,syncTargets:[MailboxSyncTarget.create({protocol:"imap",host:imapHost,port:imapPort,isSecure:imapSecure,username,newPassword:password,direction:"in",active:true}),MailboxSyncTarget.create({protocol:"smtp",host:smtpHost,port:smtpPort,isSecure:smtpSecure,username:smtpUsername||username,newPassword:smtpPassword||password,direction:"in",active:true})]});yield this.entityService.save(mb)}))}};__decorate([Inject,__metadata("design:type",EntityService)],ExternalMailboxService.prototype,"entityService",void 0);ExternalMailboxService=__decorate([DITransient()],ExternalMailboxService);_export("default",ExternalMailboxService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/mailboxes/services/ExternalMailboxService");System.register(["tslib","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/view-model/Action","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/web-controls/dist/basic/PasswordBox","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../controls/buttons/IconButton","@web-atoms/core/dist/core/InjectProperty","../services/ExternalMailboxService","@web-atoms/web-controls/dist/basic/Checkbox"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,Bind,XNode,Action,Form,FormField,PasswordBox,PopupWindowPage,AddIconButton,InjectProperty,ExternalMailboxService,Checkbox,AddExternalMailboxPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_webAtomsWebControlsDistBasicPasswordBox){PasswordBox=_webAtomsWebControlsDistBasicPasswordBox.default},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_controlsButtonsIconButton){AddIconButton=_controlsButtonsIconButton.AddIconButton},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesExternalMailboxService){ExternalMailboxService=_servicesExternalMailboxService.default},function(_webAtomsWebControlsDistBasicCheckbox){Checkbox=_webAtomsWebControlsDistBasicCheckbox.default}],execute:function(){_export("default",AddExternalMailboxPage=class AddExternalMailboxPage extends PopupWindowPage{constructor(){super(...arguments);this.model={emailAddress:"",displayName:"",imapHost:"",imapPort:993,imapSecure:true,smtpHost:"",smtpPort:465,smtpSecure:true,username:"",password:"",smtpUsername:"",smtpPassword:""}}init(){return __awaiter(this,void 0,void 0,(function*(){this.title="Add External Mailbox";this.renderer=XNode.create("div",{"style-max-width":"400px"},XNode.create("div",null,"Use this form only if you do not own the domain of the email address. If you plan to migrate domain back to this server, we recommend creating hosted mailbox and add sync account to migrate your emails."),XNode.create("hr",null),XNode.create(Form,null,XNode.create(FormField,{label:"Display/From Name"},XNode.create("input",{autofocus:true,value:Bind.twoWaysImmediate((()=>this.model.displayName))})),XNode.create(FormField,{label:"Email Address"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.emailAddress))})),XNode.create(FormField,{label:"Username"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.username))})),XNode.create(FormField,{label:"Password"},XNode.create(PasswordBox,{value:Bind.twoWaysImmediate((()=>this.model.password))})),XNode.create(FormField,{label:"IMAP (Server/Host)"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.imapHost))})),XNode.create(FormField,{label:"IMAP Port"},XNode.create("div",{"data-layout":"row"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.imapPort))}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.model.imapSecure)),text:"Secure"}))),XNode.create(FormField,{label:"SMTP (Server/Host)"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.smtpHost))})),XNode.create(FormField,{label:"SMTP Port"},XNode.create("div",{"data-layout":"row"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.smtpPort))}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.model.smtpSecure)),text:"Secure"}))),XNode.create("div",{"data-layout":"sticky-command-row"},XNode.create(AddIconButton,{"data-submit-event":"add-new-mailbox",text:"Add Mailbox"}))))}))}onInput(){return __awaiter(this,void 0,void 0,(function*(){if(this.model.imapHost){return}const{emailAddress}=this.model;if(!emailAddress){return}if(emailAddress.indexOf("@")===-1){return}const domain=emailAddress.split("@").pop();if(domain.length<=5){return}this.model.imapHost=`imap.${domain}`;this.model.smtpHost=`smtp.${domain}`;this.model.username=emailAddress}))}addNewMailbox(){return this.externalMailboxService.createMailbox(this.model)}});__decorate([InjectProperty,__metadata("design:type",ExternalMailboxService)],AddExternalMailboxPage.prototype,"externalMailboxService",void 0);__decorate([Action({onEvent:"input",defer:1e3}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],AddExternalMailboxPage.prototype,"onInput",null);__decorate([Action({onEvent:"add-new-mailbox",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",void 0)],AddExternalMailboxPage.prototype,"addNewMailbox",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/mailboxes/external-mailboxes/AddExternalMailboxPage");System.register(["tslib","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomRepeater","../../controls/repeater/InfiniteRepeater","./services/MailboxService","@web-atoms/core/dist/core/InjectProperty","../../../model/model","@web-atoms/core/dist/view-model/Action","@web-atoms/web-controls/dist/PageNavigator","./MailboxEditorPage","../../NumberFormats","../../commands/CommonCommands","@web-atoms/web-controls/dist/mobile-app/MasterDetailPage","@web-atoms/core/dist/style/styled","./MailboxDetailPage","@web-atoms/web-controls/dist/basic/ComboBox","../../icons/Icons","@web-atoms/web-controls/dist/basic/InlinePopup","@web-atoms/web-controls/dist/basic/PopupButton","./external-mailboxes/AddExternalMailboxPage"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,Bind,XNode,AtomRepeater,InfiniteRepeater,MailboxService,InjectProperty,Domain,Action,PageNavigator,MailboxEditorPage,toFileSize,CommonCommands,MasterDetailPage,styled,MailboxDetailPage,ComboBox,Icon,InlinePopupButton,MenuItem,AddExternalMailboxPage,MailboxListPage,css;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_controlsRepeaterInfiniteRepeater){InfiniteRepeater=_controlsRepeaterInfiniteRepeater.default},function(_servicesMailboxService){MailboxService=_servicesMailboxService.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_modelModel){Domain=_modelModel.Domain},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_MailboxEditorPage){MailboxEditorPage=_MailboxEditorPage.default},function(_NumberFormats){toFileSize=_NumberFormats.toFileSize},function(_commandsCommonCommands){CommonCommands=_commandsCommonCommands.default},function(_webAtomsWebControlsDistMobileAppMasterDetailPage){MasterDetailPage=_webAtomsWebControlsDistMobileAppMasterDetailPage.default},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default},function(_MailboxDetailPage){MailboxDetailPage=_MailboxDetailPage.default},function(_webAtomsWebControlsDistBasicComboBox){ComboBox=_webAtomsWebControlsDistBasicComboBox.default},function(_iconsIcons){Icon=_iconsIcons.Icon},function(_webAtomsWebControlsDistBasicInlinePopup){InlinePopupButton=_webAtomsWebControlsDistBasicInlinePopup.InlinePopupButton},function(_webAtomsWebControlsDistBasicPopupButton){MenuItem=_webAtomsWebControlsDistBasicPopupButton.MenuItem},function(_externalMailboxesAddExternalMailboxPage){AddExternalMailboxPage=_externalMailboxesAddExternalMailboxPage.default}],execute:function(){css=styled.css`
3089
3089
  &[data-page-type=master-detail] > [data-page-element=content][data-mode=desktop] {
3090
3090
  grid-template-columns: 150px 1fr auto;
3091
3091
  }