@social-mail/social-mail-client 1.2.375 → 1.2.376

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.
@@ -3449,7 +3449,7 @@ html, body {
3449
3449
 
3450
3450
  & nav {
3451
3451
 
3452
- menu {
3452
+ input:not(:checked)+nav menu {
3453
3453
  position: relative;
3454
3454
  padding-inline-start: 0;
3455
3455
  margin: 0;
@@ -3481,6 +3481,33 @@ html, body {
3481
3481
  }
3482
3482
  }
3483
3483
 
3484
+ input:checked+nav > menu {
3485
+ position: relative;
3486
+ padding-inline-start: 0;
3487
+ margin: 0;
3488
+
3489
+ & > ul {
3490
+ background-color: canvas;
3491
+ margin: 10px;
3492
+ border-radius: 5px;
3493
+ border: solid 1px lightgray;
3494
+ padding-inline-start: 0;
3495
+ }
3496
+
3497
+ & li {
3498
+ list-style-type: none;
3499
+
3500
+ padding: 10px;
3501
+ margin: 5px;
3502
+
3503
+ &:hover {
3504
+ background-color: var(--hover-color);
3505
+ color: var(--hover-text-color);
3506
+ }
3507
+ }
3508
+ }
3509
+
3510
+
3484
3511
  }
3485
3512
 
3486
3513
  `.expand("[styler-element=navbar]"))}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/site-editor/blocks/Block");System.register(["@web-atoms/core/dist/core/XNode","./Block","../styler/StylerSets","@web-atoms/core/dist/style/styled","../styler/Styler"],(function(_export,_context){"use strict";var XNode,Block,StylerSets,styled,stylerVars,WrapGrid;return{setters:[function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_Block){Block=_Block.Block},function(_stylerStylerSets){StylerSets=_stylerStylerSets.StylerSets},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default},function(_stylerStyler){stylerVars=_stylerStyler.stylerVars}],execute:function(){StylerSets.register("low",styled.css`
@@ -4567,7 +4594,7 @@ display: grid;
4567
4594
  }
4568
4595
 
4569
4596
  }
4570
- `.installLocal();_export("default",ChooseMediaPage=class ChooseMediaPage extends PopupWindowPage{constructor(){super(...arguments);this.search="";this.version=1;this.size=700;this.selectedFiles=[];this.showSize=true}init(){var _a;return __awaiter(this,void 0,void 0,(function*(){this.title="Choose Media";const{accept="image/*, video/*, audio/*"}=this.parameters;this.selectedFolder=this.parameters.folder;this.element.style.minWidth="90%";this.element.style.minHeight="90%";this.showSize=/^(image|video)\//i.test(accept);const selected=this.parameters.selected;if((selected===null||selected===void 0?void 0:selected.tagName)==="IMG"){if(/^image\-grid$/i.test((_a=selected.parentElement)===null||_a===void 0?void 0:_a.tagName)){this.size=480}}this.renderer=XNode.create("div",{class:css},XNode.create(FolderTreeView,{class:"folder-tree",folderId:this.parameters.folder.appFileID,selectedItem:Bind.twoWaysImmediate((()=>this.selectedFolder))}),XNode.create("div",{class:"search","data-layout":"row"},XNode.create("input",{type:"search",value:Bind.twoWaysImmediate((()=>this.search))}),XNode.create("button",Object.assign({"data-layout":"accent-icon-button"},UploadEvent.AttachUploadAction({multiple:true,extra:Bind.oneWay((()=>{var _a;return JSON.stringify({parentID:(_a=this.selectedFolder)===null||_a===void 0?void 0:_a.appFileID})})),accept})),XNode.create("i",{class:"fas fa-upload"}),"Upload")),XNode.create("div",Object.assign({class:"file-list"},FilesDragDrop({extra:Bind.oneWay((()=>{var _a;return JSON.stringify({parentID:(_a=this.selectedFolder)===null||_a===void 0?void 0:_a.appFileID})}))})),XNode.create(AtomRepeater,{presenter:Bind.presenter((c=>this.filesRepeater=c)),selectOnClick:true,selectedItems:this.selectedFiles,allowMultipleSelection:this.parameters.multiple,header:true,headerRenderer:item=>XNode.create("div",{"data-position":"sticky-top","data-layout":"header-row"}),items:Bind.oneWayAsync(((c,e,cancelToken)=>this.cloudFileService.files({search:this.search,folder:this.selectedFolder,version:this.version,showFolder:false,includeFilesInFolder:false,accept,cancelToken}))),itemRenderer:item=>{if(/text\/html/i.test(item.contentType)){return XNode.create("div",{class:"media-file"},this.parameters.multiple&&XNode.create(SelectorCheckBox,null),XNode.create("label",{class:"file-name",title:item.name,text:item.name}),XNode.create("div",{class:"file-preview",text:"HTML File"}))}return XNode.create("div",{class:"media-file"},this.parameters.multiple&&XNode.create(SelectorCheckBox,null),XNode.create("label",{class:"file-name",title:item.name,text:item.name}),XNode.create("img",{class:"file-preview",src:apiPath(`/api/files/webp(300)/${item.appFileID}/${item.fileContentID}/${item.name}.300.webp`)}))}})));this.footerRenderer=()=>XNode.create("div",{"style-display":Bind.oneWay((()=>this.selectedFiles.length>0)),"data-layout":"row"},this.parameters.multiple&&XNode.create(SelectAll,{items:Bind.oneWay((()=>this.filesRepeater.items)),selectedItems:this.selectedFiles}),this.showSize&&XNode.create("input",{type:"range",min:"100",max:"2000",step:"100",value:Bind.twoWaysImmediate((()=>this.size))}),this.showSize&&XNode.create("span",{text:Bind.oneWay((()=>`${this.size}px`))}),XNode.create(SaveIconTextButton,{"data-click-event":"select-file",text:"Insert"}))}))}selectFile(){return __awaiter(this,void 0,void 0,(function*(){const size=this.size;return this.selectedFiles.map((file=>({file,size,folder:this.getFolder(file)})))}))}getFolder(file){var _a;if(file.appFileID===this.parameters.folder.appFileID){return[]}const parent=(_a=file.parent)!==null&&_a!==void 0?_a:this.selectedFolder;if(parent.appFileID===this.parameters.folder.appFileID){return[]}return[...this.getFolder(parent),parent.name]}onFilesUploaded(){return __awaiter(this,void 0,void 0,(function*(){this.version++}))}});__decorate([InjectProperty,__metadata("design:type",CloudFileService)],ChooseMediaPage.prototype,"cloudFileService",void 0);__decorate([Action({onEvent:"select-file",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],ChooseMediaPage.prototype,"selectFile",null);__decorate([Action({onEvent:"files-available"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],ChooseMediaPage.prototype,"onFilesUploaded",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/page/files/media/ChooseMediaPage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/XNode","../common/controls/buttons/IconButton","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/view-model/Action","@web-atoms/core/dist/core/InjectProperty","../web/page/files/service/CloudFileService","./MonacoService"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,ContentPage,XNode,SaveIconTextButton,Bind,Action,InjectProperty,CloudFileService,MonacoService,CodeEditorPage;_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(_commonControlsButtonsIconButton){SaveIconTextButton=_commonControlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webPageFilesServiceCloudFileService){CloudFileService=_webPageFilesServiceCloudFileService.default},function(_MonacoService){MonacoService=_MonacoService.default}],execute:function(){_export("default",CodeEditorPage=class CodeEditorPage extends ContentPage{constructor(){super(...arguments);this.modified=false}init(){return __awaiter(this,void 0,void 0,(function*(){const{fileName}=this.parameters;this.title=fileName;this.renderer=XNode.create("div",{"data-display":"grid","data-align-items":"stretch","data-justify-items":"stretch"},XNode.create("iframe",null));this.footerRenderer=()=>XNode.create("div",{"data-layout":"command-row","style-display":Bind.oneWay((()=>this.modified),false)},XNode.create(SaveIconTextButton,{"data-click-event":"save-file",text:"Close"}));const iframe=this.element.querySelector("iframe");this.monacoService=yield MonacoService.createEditor(this,iframe);this.content=this.parameters.content;this.monacoService.setCodeModel(this,this.content,`http://a/${fileName}`)}))}codeChanged({code}){this.modified||(this.modified=this.content!==code);this.content=code}saveFile(){return __awaiter(this,void 0,void 0,(function*(){const{content}=this;return content}))}hide(){this.element.setAttribute("data-page-state","hidden")}show(){if(!this.element._logicalParent.contains(this.element)){this.element._logicalParent.appendChild(this.element)}setTimeout((()=>this.element.setAttribute("data-page-state","ready")),1)}});__decorate([InjectProperty,__metadata("design:type",CloudFileService)],CodeEditorPage.prototype,"cloudFileService",void 0);__decorate([Action({onEvent:"code-changed"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",void 0)],CodeEditorPage.prototype,"codeChanged",null);__decorate([Action({onEvent:"save-file",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],CodeEditorPage.prototype,"saveFile",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/code-editor/CodeEditorPage");System.register(["./apiPath"],(function(_export,_context){"use strict";var apiPath,viewFileUrl,imageUrl,srcSetUrl,signedImageUrl,signedUrl,storeFileUrl;return{setters:[function(_apiPath){apiPath=_apiPath.apiPath}],execute:function(){_export("viewFileUrl",viewFileUrl=(site,file)=>apiPath(`/api/site/asset/view/${site.appFileID}/${file.appFileID}/${file.fileContentID}/${file.name}`));_export("imageUrl",imageUrl=(site,file,size)=>{const name=encodeURIComponent(file.name);if(!size){return apiPath(`/api/site/asset/webp/${site.appFileID}/${file.appFileID}/${file.fileContentID}/${name}.webp`)}return apiPath(`/api/site/asset/webp(${size})/${site.appFileID}/${file.appFileID}/${file.fileContentID}/${name}.${size}.webp`)});_export("srcSetUrl",srcSetUrl=(site,file,imgUrlFunc=imageUrl)=>{const small=imgUrlFunc(site,file,480)+" 640w";const medium=imgUrlFunc(site,file,720)+" 1024w";const large=imgUrlFunc(site,file)+" 1256w";return`${small},${medium},${large}`});_export("signedImageUrl",signedImageUrl=({fileID=0,appFileID=fileID,fileContentID=void 0,signed=void 0},size)=>apiPath(`/api/signed/webp(${size})/${appFileID}/${fileContentID}/${signed}/file.${size}.webp`));_export("signedUrl",signedUrl=({fileID=0,appFileID=fileID,fileContentID=void 0,signed=void 0})=>apiPath(`/api/signed/download/${appFileID}/${fileContentID}/${signed}/file.dat`));_export("storeFileUrl",storeFileUrl=(rootFolderID,file,type="download",name=file.name)=>apiPath(`/api/store/file/${type}/${rootFolderID}/${file.appFileID}/${file.fileContentID}/${name}`))}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/fileUrl");System.register(["tslib","@web-atoms/core/dist/core/BindableProperty","./HtmlPageEditor","../../web/page/files/media/ChooseMediaPage","@web-atoms/web-controls/dist/PageNavigator","../styler/StylerSet","@web-atoms/core/dist/core/InjectProperty","../../web/page/files/service/CloudFileService","@web-atoms/core/dist/view-model/Action","../../code-editor/CodeEditorPage","../../common/apiPath","@web-atoms/core/dist/services/FetchBuilder","../../common/fileUrl"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,BindableProperty,HtmlPageEditor,ChooseMediaPage,PageNavigator,StylerSet,InjectProperty,CloudFileService,Action,CodeEditorPage,apiPath,FetchBuilder,imageUrl,srcSetUrl,WebSitePageEditor;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreBindableProperty){BindableProperty=_webAtomsCoreDistCoreBindableProperty.BindableProperty},function(_HtmlPageEditor){HtmlPageEditor=_HtmlPageEditor.default},function(_webPageFilesMediaChooseMediaPage){ChooseMediaPage=_webPageFilesMediaChooseMediaPage.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_stylerStylerSet){StylerSet=_stylerStylerSet.StylerSet},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webPageFilesServiceCloudFileService){CloudFileService=_webPageFilesServiceCloudFileService.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_codeEditorCodeEditorPage){CodeEditorPage=_codeEditorCodeEditorPage.default},function(_commonApiPath){apiPath=_commonApiPath.apiPath},function(_webAtomsCoreDistServicesFetchBuilder){FetchBuilder=_webAtomsCoreDistServicesFetchBuilder.default},function(_commonFileUrl){imageUrl=_commonFileUrl.imageUrl;srcSetUrl=_commonFileUrl.srcSetUrl}],execute:function(){_export("default",WebSitePageEditor=class WebSitePageEditor extends HtmlPageEditor{constructor(){super(...arguments);this.folder=null}changeImage(){return __awaiter(this,void 0,void 0,(function*(){const element=this.selection.element;const{tagName}=element;let accept="image/*";let multiple=true;let isVideo=false;let isPdf=false;let inject=false;switch(tagName){case"VIDEO":accept="video/*";multiple=false;isVideo=true;break;case"INJECT":accept="text/html";multiple=false;inject=true;break}if(/pdf/i.test(tagName)){accept="application/pdf";multiple=false;inject=false;isPdf=true}const files=yield PageNavigator.pushPageForResult(ChooseMediaPage,{folder:this.folder,accept,multiple,selected:element});if(inject||isVideo||isPdf){const[{file,folder}]=files;const path="./"+[...folder,file.name].join("/");element.setAttribute("src",path);element.setAttribute("poster",imageUrl(this.folder,file,300));this.commit();return}const images=files.map((({file,size})=>{const src=imageUrl(this.folder,file,size);const srcset=srcSetUrl(this.folder,file);return{src,"data-src-set":srcset}}));yield this.insertImage(...images)}))}extractElement(){return __awaiter(this,void 0,void 0,(function*(){const selectedElement=this.selection.element;const outerText=selectedElement.outerHTML;let fileName=prompt("File Name","/templates/header.html");if(!fileName){return}if(fileName.startsWith("/")){fileName=fileName.substring(1)}const hasFile=yield this.cloudFileService.children(this.folder.appFileID,fileName).firstOrDefault();if(hasFile){alert("File already exists");return}const file=`<!DOCTYPE html>\n <html>\n <body>\n ${outerText}\n </body>\n </html>\n `;const folder=[];for(const iterator of fileName.split("/")){folder.push(iterator)}fileName=folder.pop();yield this.cloudFileService.saveFile({content:new File([file],fileName,{type:"text/html"}),parentID:this.folder.appFileID,folder:folder.join("/")||null});folder.push(fileName);const injectElement=selectedElement.ownerDocument.createElement("inject");injectElement.setAttribute("src","/"+folder.join("/"));selectedElement.parentElement.replaceChild(injectElement,selectedElement);injectElement.appendChild(selectedElement);selectedElement.setAttribute("contentEditable","off");this.selection.update(injectElement)}))}openVariables(){return __awaiter(this,void 0,void 0,(function*(){let file=yield this.cloudFileService.children(this.folder.appFileID,"styles/vars.css").firstOrDefault();let content=yield FetchBuilder.get(file.downloadUrl).responseAsText();const modifiedContent=yield PageNavigator.pushPageForResult(CodeEditorPage,{fileName:file.name,content});if(modifiedContent!==content){content=modifiedContent;yield this.cloudFileService.saveFile({content:new File([content],file.name,{type:file.contentType}),appFileID:file.appFileID});file=yield this.cloudFileService.getFile(file.appFileID)}yield this.addStyleSheet(file)}))}setStylerSheet(){return __awaiter(this,void 0,void 0,(function*(){for(const e of Array.from(this.htmlDocument.querySelectorAll("inject"))){let src=e.getAttribute("src");if(src.startsWith("/")){src=src.substring(1)}else{}const file=yield this.cloudFileService.children(this.folder.appFileID,src).firstOrDefault();const text=yield FetchBuilder.get(file.downloadUrl).responseAsText();const parser=new DOMParser;const dom=parser.parseFromString(text,"text/html");const children=Array.from(dom.body.children);for(const iterator of Array.from(e.children)){iterator.remove()}for(const iterator of children){iterator.setAttribute("contentEditable","false");e.appendChild(iterator)}}const stylerCSS=yield this.createFile("styler.css",StylerSet.instance.toString());yield this.addStyleSheet(stylerCSS);let vars=yield this.cloudFileService.children(this.folder.appFileID,"styles/vars.css").firstOrDefault();if(!vars){vars=yield this.createFile("vars.css",`* {\n ${StylerSet.instance.varsCss}\n }`)}yield this.addStyleSheet(vars);let script=this.htmlDocument.querySelector("script[web-components]");if(!script){script=this.htmlDocument.createElement("script");script.setAttribute("web-components","social");script.setAttribute("async","true");script.setAttribute("defer","true");this.htmlDocument.head.appendChild(this.htmlDocument.createTextNode("\n"));this.htmlDocument.head.appendChild(script)}script.setAttribute("src","//cdn.jsdelivr.net/npm/@social-mail/web-components@1.0.72/dist/components.webpack.js")}))}addStyleSheet(file){return __awaiter(this,void 0,void 0,(function*(){const document=this.htmlDocument;const href=apiPath(`/api/site/asset/download/${this.folder.appFileID}/${file.appFileID}/${file.fileContentID}/${file.name}`);let link;for(const iterator of Array.from(document.querySelectorAll(`link[rel="stylesheet"][styler-css]`))){if(iterator.getAttribute("styler-css")===file.name){link=iterator;break}}if(!link){link!==null&&link!==void 0?link:link=document.createElement("link");document.head.appendChild(this.htmlDocument.createTextNode("\n"));document.head.appendChild(link);link.rel="stylesheet";link.setAttribute("styler-css",file.name)}link.href=href}))}createFile(fileName,css){return __awaiter(this,void 0,void 0,(function*(){const content=new File([css],fileName,{type:"text/css"});const{appFileID}=yield this.cloudFileService.saveFile({parentID:this.folder.appFileID,folder:"styles",content});const file=yield this.cloudFileService.getFile(appFileID);return file}))}});__decorate([BindableProperty,__metadata("design:type",Object)],WebSitePageEditor.prototype,"folder",void 0);__decorate([InjectProperty,__metadata("design:type",CloudFileService)],WebSitePageEditor.prototype,"cloudFileService",void 0);__decorate([Action({onEvent:"open-variables"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSitePageEditor.prototype,"openVariables",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/site-editor/editor/WebSitePageEditor");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/InjectProperty","../../../../services/websites/WebSiteService","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomRepeater","../../../controls/repeater/InfiniteRepeater","../../../date/DateFormats","../../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action","../../../../services/EntityService","../../../NumberFormats"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,InjectProperty,WebSiteService,XNode,AtomRepeater,SelectorCheckBox,InfiniteRepeater,DateFormats,DeleteIconTextButton,Action,EntityService,toFileSize,WebSiteHistory;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesWebsitesWebSiteService){WebSiteService=_servicesWebsitesWebSiteService.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default;SelectorCheckBox=_webAtomsWebControlsDistBasicAtomRepeater.SelectorCheckBox},function(_controlsRepeaterInfiniteRepeater){InfiniteRepeater=_controlsRepeaterInfiniteRepeater.default},function(_dateDateFormats){DateFormats=_dateDateFormats.DateFormats},function(_controlsButtonsIconButton){DeleteIconTextButton=_controlsButtonsIconButton.DeleteIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_NumberFormats){toFileSize=_NumberFormats.toFileSize}],execute:function(){_export("default",WebSiteHistory=class WebSiteHistory extends PopupWindowPage{constructor(){super(...arguments);this.versions=[];this.selectedVersions=[]}init(){return __awaiter(this,void 0,void 0,(function*(){this.title=`${this.parameters.folder.name} Versions`;this.renderer=XNode.create("div",null,XNode.create(AtomRepeater,Object.assign({"data-layout":"data-grid",allowMultipleSelection:true,items:this.versions,selectedItems:this.selectedVersions},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.websiteService.getVersions({folderID:this.parameters.folderID,start,cancelToken}))),{itemRenderer:item=>XNode.create("div",null,item.snapshotFolderID===this.parameters.currentVersionID?XNode.create("div",null):XNode.create(SelectorCheckBox,null),XNode.create("span",{text:item.name}),XNode.create("span",{text:DateFormats.relative.short(item.dateCreated)}),XNode.create("span",{text:item.author.displayName}),XNode.create("span",{text:toFileSize(item.snapshotFolder.fileSize)}))})));this.footerRenderer=()=>XNode.create("div",{"data-layout":"row"},XNode.create(DeleteIconTextButton,{"data-click-event":"delete-versions"}))}))}deleteVersions(){return __awaiter(this,void 0,void 0,(function*(){const copy=[...this.selectedVersions];for(const iterator of copy){iterator.$deleted=true}yield this.entityService.save(copy,(c=>c));this.selectedVersions.length=0;for(const iterator of copy){this.versions.remove(iterator)}}))}});__decorate([InjectProperty,__metadata("design:type",WebSiteService)],WebSiteHistory.prototype,"websiteService",void 0);__decorate([InjectProperty,__metadata("design:type",EntityService)],WebSiteHistory.prototype,"entityService",void 0);__decorate([Action({onEvent:"delete-versions",confirm:"Are you sure you want to delete old published verions? There is no way to recover these versions."}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteHistory.prototype,"deleteVersions",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/websites/history/WebSiteHistory");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../model/model","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/core/Bind","../../../controls/collection-editor/CollectionEditor"],(function(_export,_context){"use strict";var __awaiter,PopupWindowPage,WebSiteFolderHost,XNode,Bind,CollectionEditor,ViewWebSitePage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_modelModel){WebSiteFolderHost=_modelModel.WebSiteFolderHost},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_controlsCollectionEditorCollectionEditor){CollectionEditor=_controlsCollectionEditorCollectionEditor.default}],execute:function(){_export("default",ViewWebSitePage=class ViewWebSitePage extends PopupWindowPage{init(){var _a;var _b;return __awaiter(this,void 0,void 0,(function*(){this.model=this.parameters;(_a=(_b=this.model).hosts)!==null&&_a!==void 0?_a:_b.hosts=[];this.title=`View ${this.parameters.folder.name}`;this.headerRenderer=()=>XNode.create("div",{"style-display":Bind.oneWay((()=>this.parameters.hosts.length===0))},"To view website, you must add host name with correct DNS settings. Please contact support for more help.");this.renderer=XNode.create("div",null,XNode.create(CollectionEditor,{label:"Hosts",model:this.model,collection:"hosts",itemRenderer:item=>XNode.create("div",null,XNode.create("a",{href:`https://${item.host}`,target:"_blank",text:item.host})),itemFactory:()=>{const host=prompt("Internet URL Host","");if(!host){return}return WebSiteFolderHost.create({host})}}))}))}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/websites/view/ViewWebSitePage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../model/model","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/InjectProperty","../../../../services/EntityService","@web-atoms/web-controls/dist/basic/AtomRepeater","../../../controls/repeater/InfiniteRepeater","../../../Sql","../../../controls/buttons/IconButton"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,Mailbox,XNode,Bind,InjectProperty,EntityService,AtomRepeater,InfiniteRepeater,Sql,SaveIconTextButton,LookupChannelPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_modelModel){Mailbox=_modelModel.Mailbox},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_controlsRepeaterInfiniteRepeater){InfiniteRepeater=_controlsRepeaterInfiniteRepeater.default},function(_Sql){Sql=_Sql.Sql},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton}],execute:function(){_export("default",LookupChannelPage=class LookupChannelPage extends PopupWindowPage{constructor(){super(...arguments);this.search="";this.selected=null}init(){return __awaiter(this,void 0,void 0,(function*(){this.title="Search for Channels/Blogs";this.headerRenderer=()=>XNode.create("div",{"data-layout":"header-row"},XNode.create("input",{type:"search",value:Bind.twoWaysImmediate((()=>this.search))}));this.renderer=XNode.create("div",null,XNode.create(AtomRepeater,Object.assign({selectOnClick:true,"data-list-selection":"default",selectedItem:Bind.twoWaysImmediate((()=>this.selected))},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.searchItems({start,search:this.search,cancelToken}))))));this.footerRenderer=()=>XNode.create("div",{"style-display":Bind.oneWay((()=>this.selected!==null)),"data-layout":"command-row"},XNode.create(SaveIconTextButton,{"event-click":()=>this.close(this.selected),text:"Select"}))}))}searchItems({start,size=10,search="",cancelToken}){return __awaiter(this,void 0,void 0,(function*(){search=search===null||search===void 0?void 0:search.toLowerCase();search||(search="");let q=this.entityService.query(Mailbox).where((x=>x.isChannel===true&&x.isPrivateChannel===false));if(search){search=search+"%";if(search.startsWith("@")){q=q.where({search},(p=>x=>Sql.text.like(x.domain.name,p.search)))}else{q=q.where({search},(p=>x=>Sql.text.like(x.emailAddress.emailAddress,p.search)))}}return q.toPagedList({start,cancelToken,size})}))}});__decorate([InjectProperty,__metadata("design:type",EntityService)],LookupChannelPage.prototype,"entityService",void 0)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/websites/blogs/LookupChannelPage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../model/model","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/core/Bind","../../../controls/collection-editor/CollectionEditor","@web-atoms/web-controls/dist/PageNavigator","./LookupChannelPage"],(function(_export,_context){"use strict";var __awaiter,PopupWindowPage,WebSiteChannel,XNode,Bind,CollectionEditor,PageNavigator,LookupChannelPage,WebSiteBlogsPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_modelModel){WebSiteChannel=_modelModel.WebSiteChannel},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_controlsCollectionEditorCollectionEditor){CollectionEditor=_controlsCollectionEditorCollectionEditor.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_LookupChannelPage){LookupChannelPage=_LookupChannelPage.default}],execute:function(){_export("default",WebSiteBlogsPage=class WebSiteBlogsPage extends PopupWindowPage{init(){var _a;var _b;return __awaiter(this,void 0,void 0,(function*(){this.model=this.parameters;(_a=(_b=this.model).channels)!==null&&_a!==void 0?_a:_b.channels=[];this.title=`View ${this.parameters.folder.name}`;this.headerRenderer=()=>XNode.create("div",{"style-display":Bind.oneWay((()=>this.parameters.hosts.length===0))},"To display blog/channels on your website, you must add them here.");this.renderer=XNode.create("div",null,XNode.create(CollectionEditor,{label:"Channels",model:this.model,collection:"channels",itemRenderer:item=>XNode.create("div",null,item.channel.emailAddress.emailAddress),itemFactory:()=>__awaiter(this,void 0,void 0,(function*(){const{mailboxID:channelID}=yield PageNavigator.pushPageForResult(LookupChannelPage);return WebSiteChannel.create({channelID})}))}))}))}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/websites/blogs/WebSiteBlogsPage");System.register(["tslib","@web-atoms/core/dist/di/DITransient","@web-atoms/core/dist/di/Inject","../EntityService","../../model/model","../../common/Sql"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,DITransient,Inject,EntityService,AppFile,AppFileVersion,Sql,FileHistoryService;return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistDiDITransient){DITransient=_webAtomsCoreDistDiDITransient.default},function(_webAtomsCoreDistDiInject){Inject=_webAtomsCoreDistDiInject.Inject},function(_EntityService){EntityService=_EntityService.default},function(_modelModel){AppFile=_modelModel.AppFile;AppFileVersion=_modelModel.AppFileVersion},function(_commonSql){Sql=_commonSql.Sql}],execute:function(){_export("FileHistoryService",FileHistoryService=class FileHistoryService{list({start=0,size=20,appFileID=0,search="",cancelToken=void 0}){return __awaiter(this,void 0,void 0,(function*(){let q=this.entityService.query(AppFileVersion).where({appFileID},(p=>x=>x.fileID===p.appFileID));if(search){q=q.where({search},(p=>x=>Sql.text.includes(x.fileContent.textDocument.searchable,p.search)))}return q.include((x=>x.fileContent)).orderByDescending((x=>x.versionID)).toPagedList({start,size,cancelToken})}))}restore(version){return __awaiter(this,void 0,void 0,(function*(){const{fileID,fileContentID}=version;const file=yield this.entityService.query(AppFile).where({fileID},(p=>x=>x.appFileID===p.fileID)).firstOrDefault();file.fileContentID=fileContentID;yield this.entityService.save(file);return file}))}});__decorate([Inject,__metadata("design:type",EntityService)],FileHistoryService.prototype,"entityService",void 0);_export("FileHistoryService",FileHistoryService=__decorate([DITransient()],FileHistoryService))}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/services/files/FileHistoryService");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomRepeater","../../controls/repeater/InfiniteRepeater","@web-atoms/core/dist/core/InjectProperty","../../../services/files/FileHistoryService","../../date/DateFormats","../../NumberFormats","../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,XNode,AtomRepeater,InfiniteRepeater,InjectProperty,FileHistoryService,DateFormats,toFileSize,SaveIconTextButton,Action,FileHistoryPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_controlsRepeaterInfiniteRepeater){InfiniteRepeater=_controlsRepeaterInfiniteRepeater.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesFilesFileHistoryService){FileHistoryService=_servicesFilesFileHistoryService.FileHistoryService},function(_dateDateFormats){DateFormats=_dateDateFormats.DateFormats},function(_NumberFormats){toFileSize=_NumberFormats.toFileSize},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default}],execute:function(){_export("default",FileHistoryPage=class FileHistoryPage extends PopupWindowPage{init(){return __awaiter(this,void 0,void 0,(function*(){this.title=this.parameters.name+" History";this.renderer=XNode.create("div",null,XNode.create(AtomRepeater,Object.assign({"data-layout":"data-grid"},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.fileHistoryService.list({appFileID:this.parameters.appFileID,start,cancelToken}))),{itemRenderer:item=>XNode.create("div",null,XNode.create("label",{text:item.versionID}),XNode.create("label",{text:DateFormats.relative.short(item.dateCreated)}),XNode.create("label",{text:toFileSize(item.fileContent.contentSize)}),XNode.create("br",null),XNode.create(SaveIconTextButton,{"data-click-event":"restore-file",text:"Restore"}))})))}))}restoreFile(version){return __awaiter(this,void 0,void 0,(function*(){return yield this.fileHistoryService.restore(version)}))}});__decorate([InjectProperty,__metadata("design:type",FileHistoryService)],FileHistoryPage.prototype,"fileHistoryService",void 0);__decorate([Action({confirm:"Are you sure you want to restore this version?",onEvent:"restore-file",close:true,success:"File restored successfully."}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],FileHistoryPage.prototype,"restoreFile",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/files/FileHistoryPage");System.register(["tslib","@web-atoms/core/dist/core/InjectProperty","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../web/page/files/service/CloudFileService","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/style/styled","@web-atoms/core/dist/view-model/Action","@web-atoms/web-controls/dist/PageNavigator","@web-atoms/web-controls/dist/basic/PopupButton","../../../../model/model","../../../../web/page/files/shares/EditSharesPage","../../../../web/page/templates/EditTemplatePage","../templates/ChooseWebSiteTemplatePage","@web-atoms/core/dist/services/FetchBuilder","../../../controls/tree/FileTreeView","../../../../site-editor/editor/WebSitePageEditor","../../../../code-editor/CodeEditorPage","../../../../services/websites/WebSiteService","../../../controls/buttons/IconButton","../../../../web/commands/AppCommands","../history/WebSiteHistory","../view/ViewWebSitePage","../blogs/WebSiteBlogsPage","../../../apiPath","../../files/FileHistoryPage"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,InjectProperty,ContentPage,CloudFileService,Bind,XNode,styled,Action,PageNavigator,MenuItem,AppFile,EditSharesPage,EditTemplatePage,ChooseWebSiteTemplatePage,FetchBuilder,FileTreeView,WebSitePageEditor,CodeEditorPage,WebSiteService,EditIconTextButton,SaveIconTextButton,AppCommands,WebSiteHistory,ViewWebSitePage,WebSiteBlogsPage,apiPath,FileHistoryPage,WebSiteStudioPage,css,getExtension;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_webPageFilesServiceCloudFileService){CloudFileService=_webPageFilesServiceCloudFileService.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_webAtomsWebControlsDistBasicPopupButton){MenuItem=_webAtomsWebControlsDistBasicPopupButton.MenuItem},function(_modelModel){AppFile=_modelModel.AppFile},function(_webPageFilesSharesEditSharesPage){EditSharesPage=_webPageFilesSharesEditSharesPage.default},function(_webPageTemplatesEditTemplatePage){EditTemplatePage=_webPageTemplatesEditTemplatePage.default},function(_templatesChooseWebSiteTemplatePage){ChooseWebSiteTemplatePage=_templatesChooseWebSiteTemplatePage.default},function(_webAtomsCoreDistServicesFetchBuilder){FetchBuilder=_webAtomsCoreDistServicesFetchBuilder.default},function(_controlsTreeFileTreeView){FileTreeView=_controlsTreeFileTreeView.FileTreeView},function(_siteEditorEditorWebSitePageEditor){WebSitePageEditor=_siteEditorEditorWebSitePageEditor.default},function(_codeEditorCodeEditorPage){CodeEditorPage=_codeEditorCodeEditorPage.default},function(_servicesWebsitesWebSiteService){WebSiteService=_servicesWebsitesWebSiteService.default},function(_controlsButtonsIconButton){EditIconTextButton=_controlsButtonsIconButton.EditIconTextButton;SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webCommandsAppCommands){AppCommands=_webCommandsAppCommands.default},function(_historyWebSiteHistory){WebSiteHistory=_historyWebSiteHistory.default},function(_viewViewWebSitePage){ViewWebSitePage=_viewViewWebSitePage.default},function(_blogsWebSiteBlogsPage){WebSiteBlogsPage=_blogsWebSiteBlogsPage.default},function(_apiPath){apiPath=_apiPath.apiPath},function(_filesFileHistoryPage){FileHistoryPage=_filesFileHistoryPage.default}],execute:function(){css=styled.css`
4597
+ `.installLocal();_export("default",ChooseMediaPage=class ChooseMediaPage extends PopupWindowPage{constructor(){super(...arguments);this.search="";this.version=1;this.size=700;this.selectedFiles=[];this.showSize=true}init(){var _a;return __awaiter(this,void 0,void 0,(function*(){this.title="Choose Media";const{accept="image/*, video/*, audio/*"}=this.parameters;this.selectedFolder=this.parameters.folder;this.element.style.minWidth="90%";this.element.style.minHeight="90%";this.showSize=/^(image|video)\//i.test(accept);const selected=this.parameters.selected;if((selected===null||selected===void 0?void 0:selected.tagName)==="IMG"){if(/^image\-grid$/i.test((_a=selected.parentElement)===null||_a===void 0?void 0:_a.tagName)){this.size=480}}this.renderer=XNode.create("div",{class:css},XNode.create(FolderTreeView,{class:"folder-tree",folderId:this.parameters.folder.appFileID,selectedItem:Bind.twoWaysImmediate((()=>this.selectedFolder))}),XNode.create("div",{class:"search","data-layout":"row"},XNode.create("input",{type:"search",value:Bind.twoWaysImmediate((()=>this.search))}),XNode.create("button",Object.assign({"data-layout":"accent-icon-button"},UploadEvent.AttachUploadAction({multiple:true,extra:Bind.oneWay((()=>{var _a;return JSON.stringify({parentID:(_a=this.selectedFolder)===null||_a===void 0?void 0:_a.appFileID})})),accept})),XNode.create("i",{class:"fas fa-upload"}),"Upload")),XNode.create("div",Object.assign({class:"file-list"},FilesDragDrop({extra:Bind.oneWay((()=>{var _a;return JSON.stringify({parentID:(_a=this.selectedFolder)===null||_a===void 0?void 0:_a.appFileID})}))})),XNode.create(AtomRepeater,{presenter:Bind.presenter((c=>this.filesRepeater=c)),selectOnClick:true,selectedItems:this.selectedFiles,allowMultipleSelection:this.parameters.multiple,header:true,headerRenderer:item=>XNode.create("div",{"data-position":"sticky-top","data-layout":"header-row"}),items:Bind.oneWayAsync(((c,e,cancelToken)=>this.cloudFileService.files({search:this.search,folder:this.selectedFolder,version:this.version,showFolder:false,includeFilesInFolder:false,accept,cancelToken}))),itemRenderer:item=>{if(/text\/html/i.test(item.contentType)){return XNode.create("div",{class:"media-file"},this.parameters.multiple&&XNode.create(SelectorCheckBox,null),XNode.create("label",{class:"file-name",title:item.name,text:item.name}),XNode.create("div",{class:"file-preview",text:"HTML File"}))}return XNode.create("div",{class:"media-file"},this.parameters.multiple&&XNode.create(SelectorCheckBox,null),XNode.create("label",{class:"file-name",title:item.name,text:item.name}),XNode.create("img",{class:"file-preview",src:apiPath(`/api/files/webp(300)/${item.appFileID}/${item.fileContentID}/${item.name}.300.webp`)}))}})));this.footerRenderer=()=>XNode.create("div",{"style-display":Bind.oneWay((()=>this.selectedFiles.length>0)),"data-layout":"row"},this.parameters.multiple&&XNode.create(SelectAll,{items:Bind.oneWay((()=>this.filesRepeater.items)),selectedItems:this.selectedFiles}),this.showSize&&XNode.create("input",{type:"range",min:"100",max:"2000",step:"100",value:Bind.twoWaysImmediate((()=>this.size))}),this.showSize&&XNode.create("span",{text:Bind.oneWay((()=>`${this.size}px`))}),XNode.create(SaveIconTextButton,{"data-click-event":"select-file",text:"Insert"}))}))}selectFile(){return __awaiter(this,void 0,void 0,(function*(){const size=this.size;return this.selectedFiles.map((file=>({file,size,folder:this.getFolder(file)})))}))}getFolder(file){var _a;if(file.appFileID===this.parameters.folder.appFileID){return[]}const parent=(_a=file.parent)!==null&&_a!==void 0?_a:this.selectedFolder;if(parent.appFileID===this.parameters.folder.appFileID){return[]}return[...this.getFolder(parent),parent.name]}onFilesUploaded(){return __awaiter(this,void 0,void 0,(function*(){this.version++}))}});__decorate([InjectProperty,__metadata("design:type",CloudFileService)],ChooseMediaPage.prototype,"cloudFileService",void 0);__decorate([Action({onEvent:"select-file",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],ChooseMediaPage.prototype,"selectFile",null);__decorate([Action({onEvent:"files-available"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],ChooseMediaPage.prototype,"onFilesUploaded",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/page/files/media/ChooseMediaPage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/XNode","../common/controls/buttons/IconButton","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/view-model/Action","@web-atoms/core/dist/core/InjectProperty","../web/page/files/service/CloudFileService","./MonacoService"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,ContentPage,XNode,SaveIconTextButton,Bind,Action,InjectProperty,CloudFileService,MonacoService,CodeEditorPage;_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(_commonControlsButtonsIconButton){SaveIconTextButton=_commonControlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webPageFilesServiceCloudFileService){CloudFileService=_webPageFilesServiceCloudFileService.default},function(_MonacoService){MonacoService=_MonacoService.default}],execute:function(){_export("default",CodeEditorPage=class CodeEditorPage extends ContentPage{constructor(){super(...arguments);this.modified=false}init(){return __awaiter(this,void 0,void 0,(function*(){const{fileName}=this.parameters;this.title=fileName;this.renderer=XNode.create("div",{"data-display":"grid","data-align-items":"stretch","data-justify-items":"stretch"},XNode.create("iframe",null));this.footerRenderer=()=>XNode.create("div",{"data-layout":"command-row","style-display":Bind.oneWay((()=>this.modified),false)},XNode.create(SaveIconTextButton,{"data-click-event":"save-file",text:"Close"}));const iframe=this.element.querySelector("iframe");this.monacoService=yield MonacoService.createEditor(this,iframe);this.content=this.parameters.content;this.monacoService.setCodeModel(this,this.content,`http://a/${fileName}`)}))}codeChanged({code}){this.modified||(this.modified=this.content!==code);this.content=code}saveFile(){return __awaiter(this,void 0,void 0,(function*(){const{content}=this;return content}))}hide(){this.element.setAttribute("data-page-state","hidden")}show(){if(!this.element._logicalParent.contains(this.element)){this.element._logicalParent.appendChild(this.element)}setTimeout((()=>this.element.setAttribute("data-page-state","ready")),1)}});__decorate([InjectProperty,__metadata("design:type",CloudFileService)],CodeEditorPage.prototype,"cloudFileService",void 0);__decorate([Action({onEvent:"code-changed"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",void 0)],CodeEditorPage.prototype,"codeChanged",null);__decorate([Action({onEvent:"save-file",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],CodeEditorPage.prototype,"saveFile",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/code-editor/CodeEditorPage");System.register(["./apiPath"],(function(_export,_context){"use strict";var apiPath,viewFileUrl,imageUrl,srcSetUrl,signedImageUrl,signedUrl,storeFileUrl;return{setters:[function(_apiPath){apiPath=_apiPath.apiPath}],execute:function(){_export("viewFileUrl",viewFileUrl=(site,file)=>apiPath(`/api/site/asset/view/${site.appFileID}/${file.appFileID}/${file.fileContentID}/${file.name}`));_export("imageUrl",imageUrl=(site,file,size)=>{const name=encodeURIComponent(file.name);if(!size){return apiPath(`/api/site/asset/webp/${site.appFileID}/${file.appFileID}/${file.fileContentID}/${name}.webp`)}return apiPath(`/api/site/asset/webp(${size})/${site.appFileID}/${file.appFileID}/${file.fileContentID}/${name}.${size}.webp`)});_export("srcSetUrl",srcSetUrl=(site,file,imgUrlFunc=imageUrl)=>{const small=imgUrlFunc(site,file,480)+" 640w";const medium=imgUrlFunc(site,file,720)+" 1024w";const large=imgUrlFunc(site,file)+" 1256w";return`${small},${medium},${large}`});_export("signedImageUrl",signedImageUrl=({fileID=0,appFileID=fileID,fileContentID=void 0,signed=void 0},size)=>apiPath(`/api/signed/webp(${size})/${appFileID}/${fileContentID}/${signed}/file.${size}.webp`));_export("signedUrl",signedUrl=({fileID=0,appFileID=fileID,fileContentID=void 0,signed=void 0})=>apiPath(`/api/signed/download/${appFileID}/${fileContentID}/${signed}/file.dat`));_export("storeFileUrl",storeFileUrl=(rootFolderID,file,type="download",name=file.name)=>apiPath(`/api/store/file/${type}/${rootFolderID}/${file.appFileID}/${file.fileContentID}/${name}`))}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/fileUrl");System.register(["tslib","@web-atoms/core/dist/core/BindableProperty","./HtmlPageEditor","../../web/page/files/media/ChooseMediaPage","@web-atoms/web-controls/dist/PageNavigator","../styler/StylerSet","@web-atoms/core/dist/core/InjectProperty","../../web/page/files/service/CloudFileService","@web-atoms/core/dist/view-model/Action","../../code-editor/CodeEditorPage","@web-atoms/core/dist/services/FetchBuilder","../../common/fileUrl"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,BindableProperty,HtmlPageEditor,ChooseMediaPage,PageNavigator,StylerSet,InjectProperty,CloudFileService,Action,CodeEditorPage,FetchBuilder,imageUrl,srcSetUrl,WebSitePageEditor;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreBindableProperty){BindableProperty=_webAtomsCoreDistCoreBindableProperty.BindableProperty},function(_HtmlPageEditor){HtmlPageEditor=_HtmlPageEditor.default},function(_webPageFilesMediaChooseMediaPage){ChooseMediaPage=_webPageFilesMediaChooseMediaPage.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_stylerStylerSet){StylerSet=_stylerStylerSet.StylerSet},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webPageFilesServiceCloudFileService){CloudFileService=_webPageFilesServiceCloudFileService.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_codeEditorCodeEditorPage){CodeEditorPage=_codeEditorCodeEditorPage.default},function(_webAtomsCoreDistServicesFetchBuilder){FetchBuilder=_webAtomsCoreDistServicesFetchBuilder.default},function(_commonFileUrl){imageUrl=_commonFileUrl.imageUrl;srcSetUrl=_commonFileUrl.srcSetUrl}],execute:function(){_export("default",WebSitePageEditor=class WebSitePageEditor extends HtmlPageEditor{constructor(){super(...arguments);this.folder=null;this.selectedFile=null}changeImage(){return __awaiter(this,void 0,void 0,(function*(){const element=this.selection.element;const{tagName}=element;let accept="image/*";let multiple=true;let isVideo=false;let isPdf=false;let inject=false;switch(tagName){case"VIDEO":accept="video/*";multiple=false;isVideo=true;break;case"INJECT":accept="text/html";multiple=false;inject=true;break}if(/pdf/i.test(tagName)){accept="application/pdf";multiple=false;inject=false;isPdf=true}const files=yield PageNavigator.pushPageForResult(ChooseMediaPage,{folder:this.folder,accept,multiple,selected:element});if(inject||isVideo||isPdf){const[{file,folder}]=files;const path="./"+[...folder,file.name].join("/");element.setAttribute("src",path);element.setAttribute("poster",imageUrl(this.folder,file,300));this.commit();return}const images=files.map((({file,size})=>{const src=imageUrl(this.folder,file,size);const srcset=srcSetUrl(this.folder,file);return{src,"data-src-set":srcset}}));yield this.insertImage(...images)}))}extractElement(){return __awaiter(this,void 0,void 0,(function*(){const selectedElement=this.selection.element;const outerText=selectedElement.outerHTML;let fileName=prompt("File Name","/templates/header.html");if(!fileName){return}if(fileName.startsWith("/")){fileName=fileName.substring(1)}const hasFile=yield this.cloudFileService.children(this.folder.appFileID,fileName).firstOrDefault();if(hasFile){alert("File already exists");return}const file=`<!DOCTYPE html>\n <html>\n <body>\n ${outerText}\n </body>\n </html>\n `;const folder=[];for(const iterator of fileName.split("/")){folder.push(iterator)}fileName=folder.pop();yield this.cloudFileService.saveFile({content:new File([file],fileName,{type:"text/html"}),parentID:this.folder.appFileID,folder:folder.join("/")||null});folder.push(fileName);const injectElement=selectedElement.ownerDocument.createElement("inject");injectElement.setAttribute("src","/"+folder.join("/"));selectedElement.parentElement.replaceChild(injectElement,selectedElement);injectElement.appendChild(selectedElement);selectedElement.setAttribute("contentEditable","off");this.selection.update(injectElement)}))}openVariables(){return __awaiter(this,void 0,void 0,(function*(){let file=yield this.cloudFileService.children(this.folder.appFileID,"styles/vars.css").firstOrDefault();let content=yield FetchBuilder.get(file.downloadUrl).responseAsText();const modifiedContent=yield PageNavigator.pushPageForResult(CodeEditorPage,{fileName:file.name,content});if(modifiedContent!==content){content=modifiedContent;yield this.cloudFileService.saveFile({content:new File([content],file.name,{type:file.contentType}),appFileID:file.appFileID});file=yield this.cloudFileService.getFile(file.appFileID)}yield this.addStyleSheet(file,"styles/vars.css")}))}setStylerSheet(){return __awaiter(this,void 0,void 0,(function*(){for(const e of Array.from(this.htmlDocument.querySelectorAll("inject"))){let src=e.getAttribute("src");if(src.startsWith("/")){src=src.substring(1)}else{}const file=yield this.cloudFileService.children(this.folder.appFileID,src).firstOrDefault();const text=yield FetchBuilder.get(file.downloadUrl).responseAsText();const parser=new DOMParser;const dom=parser.parseFromString(text,"text/html");const children=Array.from(dom.body.children);for(const iterator of Array.from(e.children)){iterator.remove()}for(const iterator of children){iterator.setAttribute("contentEditable","false");e.appendChild(iterator)}}const stylerCSS=yield this.createFile("styler.css",StylerSet.instance.toString());yield this.addStyleSheet(stylerCSS,"styles/styler.css");let vars=yield this.cloudFileService.children(this.folder.appFileID,"styles/vars.css").firstOrDefault();if(!vars){vars=yield this.createFile("vars.css",`* {\n ${StylerSet.instance.varsCss}\n }`)}yield this.addStyleSheet(vars,"styles/vars.css");let script=this.htmlDocument.querySelector("script[web-components]");if(!script){script=this.htmlDocument.createElement("script");script.setAttribute("web-components","social");script.setAttribute("async","true");script.setAttribute("defer","true");this.htmlDocument.head.appendChild(this.htmlDocument.createTextNode("\n"));this.htmlDocument.head.appendChild(script);this.htmlDocument.head.appendChild(this.htmlDocument.createTextNode("\n"))}script.setAttribute("src","//cdn.jsdelivr.net/npm/@social-mail/web-components@1.0.72/dist/components.webpack.js")}))}addStyleSheet(file,path){return __awaiter(this,void 0,void 0,(function*(){const filePath=this.selectedFile.path.substring(this.folder.path.length);let folder=filePath.split("/").length-2;while(folder>0){path="../"+path;folder--}const document=this.htmlDocument;const href="./"+path;let link;for(const iterator of Array.from(document.querySelectorAll(`link[rel="stylesheet"][styler-css]`))){if(iterator.getAttribute("styler-css")===file.name){link=iterator;break}}if(!link){link!==null&&link!==void 0?link:link=document.createElement("link");document.head.appendChild(this.htmlDocument.createTextNode("\n"));document.head.appendChild(link);link.rel="stylesheet";link.setAttribute("styler-css",file.name)}link.href=href}))}createFile(fileName,css){return __awaiter(this,void 0,void 0,(function*(){const content=new File([css],fileName,{type:"text/css"});const{appFileID}=yield this.cloudFileService.saveFile({parentID:this.folder.appFileID,folder:"styles",content});const file=yield this.cloudFileService.getFile(appFileID);return file}))}});__decorate([BindableProperty,__metadata("design:type",Object)],WebSitePageEditor.prototype,"folder",void 0);__decorate([InjectProperty,__metadata("design:type",CloudFileService)],WebSitePageEditor.prototype,"cloudFileService",void 0);__decorate([Action({onEvent:"open-variables"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSitePageEditor.prototype,"openVariables",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/site-editor/editor/WebSitePageEditor");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/InjectProperty","../../../../services/websites/WebSiteService","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomRepeater","../../../controls/repeater/InfiniteRepeater","../../../date/DateFormats","../../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action","../../../../services/EntityService","../../../NumberFormats"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,InjectProperty,WebSiteService,XNode,AtomRepeater,SelectorCheckBox,InfiniteRepeater,DateFormats,DeleteIconTextButton,Action,EntityService,toFileSize,WebSiteHistory;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesWebsitesWebSiteService){WebSiteService=_servicesWebsitesWebSiteService.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default;SelectorCheckBox=_webAtomsWebControlsDistBasicAtomRepeater.SelectorCheckBox},function(_controlsRepeaterInfiniteRepeater){InfiniteRepeater=_controlsRepeaterInfiniteRepeater.default},function(_dateDateFormats){DateFormats=_dateDateFormats.DateFormats},function(_controlsButtonsIconButton){DeleteIconTextButton=_controlsButtonsIconButton.DeleteIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_NumberFormats){toFileSize=_NumberFormats.toFileSize}],execute:function(){_export("default",WebSiteHistory=class WebSiteHistory extends PopupWindowPage{constructor(){super(...arguments);this.versions=[];this.selectedVersions=[]}init(){return __awaiter(this,void 0,void 0,(function*(){this.title=`${this.parameters.folder.name} Versions`;this.renderer=XNode.create("div",null,XNode.create(AtomRepeater,Object.assign({"data-layout":"data-grid",allowMultipleSelection:true,items:this.versions,selectedItems:this.selectedVersions},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.websiteService.getVersions({folderID:this.parameters.folderID,start,cancelToken}))),{itemRenderer:item=>XNode.create("div",null,item.snapshotFolderID===this.parameters.currentVersionID?XNode.create("div",null):XNode.create(SelectorCheckBox,null),XNode.create("span",{text:item.name}),XNode.create("span",{text:DateFormats.relative.short(item.dateCreated)}),XNode.create("span",{text:item.author.displayName}),XNode.create("span",{text:toFileSize(item.snapshotFolder.fileSize)}))})));this.footerRenderer=()=>XNode.create("div",{"data-layout":"row"},XNode.create(DeleteIconTextButton,{"data-click-event":"delete-versions"}))}))}deleteVersions(){return __awaiter(this,void 0,void 0,(function*(){const copy=[...this.selectedVersions];for(const iterator of copy){iterator.$deleted=true}yield this.entityService.save(copy,(c=>c));this.selectedVersions.length=0;for(const iterator of copy){this.versions.remove(iterator)}}))}});__decorate([InjectProperty,__metadata("design:type",WebSiteService)],WebSiteHistory.prototype,"websiteService",void 0);__decorate([InjectProperty,__metadata("design:type",EntityService)],WebSiteHistory.prototype,"entityService",void 0);__decorate([Action({onEvent:"delete-versions",confirm:"Are you sure you want to delete old published verions? There is no way to recover these versions."}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteHistory.prototype,"deleteVersions",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/websites/history/WebSiteHistory");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../model/model","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/core/Bind","../../../controls/collection-editor/CollectionEditor"],(function(_export,_context){"use strict";var __awaiter,PopupWindowPage,WebSiteFolderHost,XNode,Bind,CollectionEditor,ViewWebSitePage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_modelModel){WebSiteFolderHost=_modelModel.WebSiteFolderHost},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_controlsCollectionEditorCollectionEditor){CollectionEditor=_controlsCollectionEditorCollectionEditor.default}],execute:function(){_export("default",ViewWebSitePage=class ViewWebSitePage extends PopupWindowPage{init(){var _a;var _b;return __awaiter(this,void 0,void 0,(function*(){this.model=this.parameters;(_a=(_b=this.model).hosts)!==null&&_a!==void 0?_a:_b.hosts=[];this.title=`View ${this.parameters.folder.name}`;this.headerRenderer=()=>XNode.create("div",{"style-display":Bind.oneWay((()=>this.parameters.hosts.length===0))},"To view website, you must add host name with correct DNS settings. Please contact support for more help.");this.renderer=XNode.create("div",null,XNode.create(CollectionEditor,{label:"Hosts",model:this.model,collection:"hosts",itemRenderer:item=>XNode.create("div",null,XNode.create("a",{href:`https://${item.host}`,target:"_blank",text:item.host})),itemFactory:()=>{const host=prompt("Internet URL Host","");if(!host){return}return WebSiteFolderHost.create({host})}}))}))}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/websites/view/ViewWebSitePage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../model/model","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/InjectProperty","../../../../services/EntityService","@web-atoms/web-controls/dist/basic/AtomRepeater","../../../controls/repeater/InfiniteRepeater","../../../Sql","../../../controls/buttons/IconButton"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,Mailbox,XNode,Bind,InjectProperty,EntityService,AtomRepeater,InfiniteRepeater,Sql,SaveIconTextButton,LookupChannelPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_modelModel){Mailbox=_modelModel.Mailbox},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_controlsRepeaterInfiniteRepeater){InfiniteRepeater=_controlsRepeaterInfiniteRepeater.default},function(_Sql){Sql=_Sql.Sql},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton}],execute:function(){_export("default",LookupChannelPage=class LookupChannelPage extends PopupWindowPage{constructor(){super(...arguments);this.search="";this.selected=null}init(){return __awaiter(this,void 0,void 0,(function*(){this.title="Search for Channels/Blogs";this.headerRenderer=()=>XNode.create("div",{"data-layout":"header-row"},XNode.create("input",{type:"search",value:Bind.twoWaysImmediate((()=>this.search))}));this.renderer=XNode.create("div",null,XNode.create(AtomRepeater,Object.assign({selectOnClick:true,"data-list-selection":"default",selectedItem:Bind.twoWaysImmediate((()=>this.selected))},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.searchItems({start,search:this.search,cancelToken}))))));this.footerRenderer=()=>XNode.create("div",{"style-display":Bind.oneWay((()=>this.selected!==null)),"data-layout":"command-row"},XNode.create(SaveIconTextButton,{"event-click":()=>this.close(this.selected),text:"Select"}))}))}searchItems({start,size=10,search="",cancelToken}){return __awaiter(this,void 0,void 0,(function*(){search=search===null||search===void 0?void 0:search.toLowerCase();search||(search="");let q=this.entityService.query(Mailbox).where((x=>x.isChannel===true&&x.isPrivateChannel===false));if(search){search=search+"%";if(search.startsWith("@")){q=q.where({search},(p=>x=>Sql.text.like(x.domain.name,p.search)))}else{q=q.where({search},(p=>x=>Sql.text.like(x.emailAddress.emailAddress,p.search)))}}return q.toPagedList({start,cancelToken,size})}))}});__decorate([InjectProperty,__metadata("design:type",EntityService)],LookupChannelPage.prototype,"entityService",void 0)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/websites/blogs/LookupChannelPage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../model/model","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/core/Bind","../../../controls/collection-editor/CollectionEditor","@web-atoms/web-controls/dist/PageNavigator","./LookupChannelPage"],(function(_export,_context){"use strict";var __awaiter,PopupWindowPage,WebSiteChannel,XNode,Bind,CollectionEditor,PageNavigator,LookupChannelPage,WebSiteBlogsPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_modelModel){WebSiteChannel=_modelModel.WebSiteChannel},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_controlsCollectionEditorCollectionEditor){CollectionEditor=_controlsCollectionEditorCollectionEditor.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_LookupChannelPage){LookupChannelPage=_LookupChannelPage.default}],execute:function(){_export("default",WebSiteBlogsPage=class WebSiteBlogsPage extends PopupWindowPage{init(){var _a;var _b;return __awaiter(this,void 0,void 0,(function*(){this.model=this.parameters;(_a=(_b=this.model).channels)!==null&&_a!==void 0?_a:_b.channels=[];this.title=`View ${this.parameters.folder.name}`;this.headerRenderer=()=>XNode.create("div",{"style-display":Bind.oneWay((()=>this.parameters.hosts.length===0))},"To display blog/channels on your website, you must add them here.");this.renderer=XNode.create("div",null,XNode.create(CollectionEditor,{label:"Channels",model:this.model,collection:"channels",itemRenderer:item=>XNode.create("div",null,item.channel.emailAddress.emailAddress),itemFactory:()=>__awaiter(this,void 0,void 0,(function*(){const{mailboxID:channelID}=yield PageNavigator.pushPageForResult(LookupChannelPage);return WebSiteChannel.create({channelID})}))}))}))}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/websites/blogs/WebSiteBlogsPage");System.register(["tslib","@web-atoms/core/dist/di/DITransient","@web-atoms/core/dist/di/Inject","../EntityService","../../model/model","../../common/Sql"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,DITransient,Inject,EntityService,AppFile,AppFileVersion,Sql,FileHistoryService;return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistDiDITransient){DITransient=_webAtomsCoreDistDiDITransient.default},function(_webAtomsCoreDistDiInject){Inject=_webAtomsCoreDistDiInject.Inject},function(_EntityService){EntityService=_EntityService.default},function(_modelModel){AppFile=_modelModel.AppFile;AppFileVersion=_modelModel.AppFileVersion},function(_commonSql){Sql=_commonSql.Sql}],execute:function(){_export("FileHistoryService",FileHistoryService=class FileHistoryService{list({start=0,size=20,appFileID=0,search="",cancelToken=void 0}){return __awaiter(this,void 0,void 0,(function*(){let q=this.entityService.query(AppFileVersion).where({appFileID},(p=>x=>x.fileID===p.appFileID));if(search){q=q.where({search},(p=>x=>Sql.text.includes(x.fileContent.textDocument.searchable,p.search)))}return q.include((x=>x.fileContent)).orderByDescending((x=>x.versionID)).toPagedList({start,size,cancelToken})}))}restore(version){return __awaiter(this,void 0,void 0,(function*(){const{fileID,fileContentID}=version;const file=yield this.entityService.query(AppFile).where({fileID},(p=>x=>x.appFileID===p.fileID)).firstOrDefault();file.fileContentID=fileContentID;yield this.entityService.save(file);return file}))}});__decorate([Inject,__metadata("design:type",EntityService)],FileHistoryService.prototype,"entityService",void 0);_export("FileHistoryService",FileHistoryService=__decorate([DITransient()],FileHistoryService))}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/services/files/FileHistoryService");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomRepeater","../../controls/repeater/InfiniteRepeater","@web-atoms/core/dist/core/InjectProperty","../../../services/files/FileHistoryService","../../date/DateFormats","../../NumberFormats","../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,XNode,AtomRepeater,InfiniteRepeater,InjectProperty,FileHistoryService,DateFormats,toFileSize,SaveIconTextButton,Action,FileHistoryPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_controlsRepeaterInfiniteRepeater){InfiniteRepeater=_controlsRepeaterInfiniteRepeater.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesFilesFileHistoryService){FileHistoryService=_servicesFilesFileHistoryService.FileHistoryService},function(_dateDateFormats){DateFormats=_dateDateFormats.DateFormats},function(_NumberFormats){toFileSize=_NumberFormats.toFileSize},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default}],execute:function(){_export("default",FileHistoryPage=class FileHistoryPage extends PopupWindowPage{init(){return __awaiter(this,void 0,void 0,(function*(){this.title=this.parameters.name+" History";this.renderer=XNode.create("div",null,XNode.create(AtomRepeater,Object.assign({"data-layout":"data-grid"},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.fileHistoryService.list({appFileID:this.parameters.appFileID,start,cancelToken}))),{itemRenderer:item=>XNode.create("div",null,XNode.create("label",{text:item.versionID}),XNode.create("label",{text:DateFormats.relative.short(item.dateCreated)}),XNode.create("label",{text:toFileSize(item.fileContent.contentSize)}),XNode.create("br",null),XNode.create(SaveIconTextButton,{"data-click-event":"restore-file",text:"Restore"}))})))}))}restoreFile(version){return __awaiter(this,void 0,void 0,(function*(){return yield this.fileHistoryService.restore(version)}))}});__decorate([InjectProperty,__metadata("design:type",FileHistoryService)],FileHistoryPage.prototype,"fileHistoryService",void 0);__decorate([Action({confirm:"Are you sure you want to restore this version?",onEvent:"restore-file",close:true,success:"File restored successfully."}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],FileHistoryPage.prototype,"restoreFile",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/files/FileHistoryPage");System.register(["tslib","@web-atoms/core/dist/core/InjectProperty","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../web/page/files/service/CloudFileService","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/style/styled","@web-atoms/core/dist/view-model/Action","@web-atoms/web-controls/dist/PageNavigator","@web-atoms/web-controls/dist/basic/PopupButton","../../../../model/model","../../../../web/page/files/shares/EditSharesPage","../../../../web/page/templates/EditTemplatePage","../templates/ChooseWebSiteTemplatePage","@web-atoms/core/dist/services/FetchBuilder","../../../controls/tree/FileTreeView","../../../../site-editor/editor/WebSitePageEditor","../../../../code-editor/CodeEditorPage","../../../../services/websites/WebSiteService","../../../controls/buttons/IconButton","../../../../web/commands/AppCommands","../history/WebSiteHistory","../view/ViewWebSitePage","../blogs/WebSiteBlogsPage","../../../apiPath","../../files/FileHistoryPage"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,InjectProperty,ContentPage,CloudFileService,Bind,XNode,styled,Action,PageNavigator,MenuItem,AppFile,EditSharesPage,EditTemplatePage,ChooseWebSiteTemplatePage,FetchBuilder,FileTreeView,WebSitePageEditor,CodeEditorPage,WebSiteService,EditIconTextButton,SaveIconTextButton,AppCommands,WebSiteHistory,ViewWebSitePage,WebSiteBlogsPage,apiPath,FileHistoryPage,WebSiteStudioPage,css,getExtension;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_webPageFilesServiceCloudFileService){CloudFileService=_webPageFilesServiceCloudFileService.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_webAtomsWebControlsDistBasicPopupButton){MenuItem=_webAtomsWebControlsDistBasicPopupButton.MenuItem},function(_modelModel){AppFile=_modelModel.AppFile},function(_webPageFilesSharesEditSharesPage){EditSharesPage=_webPageFilesSharesEditSharesPage.default},function(_webPageTemplatesEditTemplatePage){EditTemplatePage=_webPageTemplatesEditTemplatePage.default},function(_templatesChooseWebSiteTemplatePage){ChooseWebSiteTemplatePage=_templatesChooseWebSiteTemplatePage.default},function(_webAtomsCoreDistServicesFetchBuilder){FetchBuilder=_webAtomsCoreDistServicesFetchBuilder.default},function(_controlsTreeFileTreeView){FileTreeView=_controlsTreeFileTreeView.FileTreeView},function(_siteEditorEditorWebSitePageEditor){WebSitePageEditor=_siteEditorEditorWebSitePageEditor.default},function(_codeEditorCodeEditorPage){CodeEditorPage=_codeEditorCodeEditorPage.default},function(_servicesWebsitesWebSiteService){WebSiteService=_servicesWebsitesWebSiteService.default},function(_controlsButtonsIconButton){EditIconTextButton=_controlsButtonsIconButton.EditIconTextButton;SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webCommandsAppCommands){AppCommands=_webCommandsAppCommands.default},function(_historyWebSiteHistory){WebSiteHistory=_historyWebSiteHistory.default},function(_viewViewWebSitePage){ViewWebSitePage=_viewViewWebSitePage.default},function(_blogsWebSiteBlogsPage){WebSiteBlogsPage=_blogsWebSiteBlogsPage.default},function(_apiPath){apiPath=_apiPath.apiPath},function(_filesFileHistoryPage){FileHistoryPage=_filesFileHistoryPage.default}],execute:function(){css=styled.css`
4571
4598
  display: grid;
4572
4599
  grid-template-columns: 200px 1fr;
4573
4600
  gap: 5px;
@@ -4584,7 +4611,7 @@ display: grid;
4584
4611
  justify-self: stretch;
4585
4612
  align-self: stretch;
4586
4613
  }
4587
- `.installLocal();getExtension=name=>{const index=name.lastIndexOf(".");if(index===-1){return"dat"}return name.substring(index+1)};_export("default",WebSiteStudioPage=class WebSiteStudioPage extends ContentPage{constructor(){super(...arguments);this.version=1;this.pageContent="";this.lastHtml=""}init(){var _a,_b;var _c;return __awaiter(this,void 0,void 0,(function*(){this.search="";this.root=yield this.cloudFileService.root(this.parameters);this.title=this.root.name;this.webSite=yield this.websiteService.get(this.root.appFileID);(_a=(_c=this.root).children)!==null&&_a!==void 0?_a:_c.children=[];this.root.children.remove((x=>x.isDeleted||!(/^(text\/(html|css))$/i.test(x.contentType)||x.isFolder)));this.root.children.sort(((a,b)=>a.isFolder?-1:0));if(!((_b=this.root.children)===null||_b===void 0?void 0:_b.some((f=>f.name==="index.html")))){yield this.createIndexHtml();return}const indexHtml=this.root.children.find((x=>x.name==="index.html"));this.selectedFile=indexHtml;this.titleRenderer=()=>XNode.create("div",{"data-layout":"row"},XNode.create("div",{text:this.root.name}),XNode.create("div",{"style-display":Bind.oneWay((()=>this.webSite.isModified))},XNode.create(SaveIconTextButton,{"data-click-event":"publish-website",text:"Publish"})),XNode.create("a",{"data-click-event":"route",href:AppCommands.openFiles.displayRoute({id:this.webSite.folderID})},XNode.create(EditIconTextButton,{text:"Modify Files",title:"Use this to upload files manually"})),XNode.create(EditIconTextButton,{"data-click-event":"version-history",icon:"fas fa-history",text:"History",title:"Version History"}),XNode.create(EditIconTextButton,{"data-click-event":"link-blog",icon:"fad fa-blog",text:"Linked Blogs"}),XNode.create(EditIconTextButton,{"data-click-event":"view-website",icon:"fad fa-globe-pointer",text:"View Site"}),XNode.create("a",{href:Bind.oneWay((()=>apiPath(`/api/site/draft/${this.webSite.folderID}/${this.selectedFile.name}`))),target:"_blank"},XNode.create(EditIconTextButton,{icon:"fad fa-globe-pointer",text:"Preview Draft"})),this.parameters.templates&&XNode.create("div",{"data-layout":"row","style-display":Bind.oneWay((()=>this.selectedFile.appFileID>0))},XNode.create("i",{class:"fas fa-plus","data-click-event":"new-template"}),XNode.create("span",{"data-click-event":"new-template",text:"New Template"})));this.renderer=XNode.create("div",{class:css},XNode.create(FileTreeView,{root:this.root,class:"folder-tree",accept:"text/html",presenter:Bind.presenter((c=>this.folderTree=c)),selectedItem:Bind.twoWaysImmediate((()=>this.selectedFile)),menuActions:x=>!x.isFolder?/\.(htm|html)$/i.test(x.name)?[XNode.create(MenuItem,{icon:"fas fa-copy","data-click-event":"duplicate-html",label:"Duplicate Page"}),XNode.create(MenuItem,{icon:"fas fa-history","data-click-event":"file-history",label:"File History"})]:[]:void 0,"event-selected-item-changing":ce=>{if(this.pageContent!==this.lastHtml){if(confirm("Page is modified but not saved, your changes will be lost")){return}ce.preventDefault()}}}),XNode.create(WebSitePageEditor,{class:"file-list",baseUrl:Bind.oneWay((()=>apiPath(`/api/site/draft/${this.selectedFile.appFileID}/`))),folder:this.root,presenter:Bind.presenter((c=>this.htmlEditor=c)),"event-html-page-changed":ce=>this.pageContent=ce.detail,htmlPage:Bind.oneWayAsync(((s,e,cancelToken)=>this.selectedFile?this.downloadHtml(this.selectedFile,cancelToken):void 0))}));this.footerRenderer=()=>XNode.create("div",{"data-layout":"command-row","style-display":Bind.oneWay((()=>this.lastHtml!==this.pageContent))},XNode.create(SaveIconTextButton,{"data-click-event":"save-page",text:"Save"}))}))}downloadHtml(file,cancelToken){return __awaiter(this,void 0,void 0,(function*(){const text=yield FetchBuilder.get(file.downloadUrl).cancelToken(cancelToken).responseAsText(true);this.lastHtml=text;this.pageContent=text;return text}))}createIndexHtml(){return __awaiter(this,void 0,void 0,(function*(){yield PageNavigator.pushPageForResultOrCancel(ChooseWebSiteTemplatePage,this.root);yield this.init()}))}editShares(file){PageNavigator.pushPage(EditSharesPage,file)}editCode(){var _a;return __awaiter(this,void 0,void 0,(function*(){const content=yield PageNavigator.pushPageForResult(CodeEditorPage,{fileName:this.selectedFile.name,content:(_a=this.htmlEditor.lastCommittedHtml)!==null&&_a!==void 0?_a:this.lastHtml});this.pageContent=content;this.htmlEditor.htmlPage=content}))}openFolder(file){this.selectedFile=file}onFilesUploaded(){return __awaiter(this,void 0,void 0,(function*(){this.version++}))}newTemplate(){return __awaiter(this,void 0,void 0,(function*(){const parentID=this.selectedFile.appFileID;const file=yield PageNavigator.pushPageForResult(EditTemplatePage,{file:AppFile.create({parentID})});this.selectedFile.children.add(file)}))}openTemplate(file){return __awaiter(this,void 0,void 0,(function*(){yield PageNavigator.pushPageForResultOrCancel(EditTemplatePage,{file})}))}savePage(){return __awaiter(this,void 0,void 0,(function*(){let html=this.pageContent;if(!html.trim().startsWith("<!")){html=`<!DOCTYPE html>${this.pageContent}`}const content=new File([html],this.selectedFile.name,{type:this.selectedFile.contentType});const result=yield this.cloudFileService.saveFile({appFileID:this.selectedFile.appFileID,content});this.selectedFile.url=result.url;this.selectedFile.fileContentID=result.fileContentID;this.selectedFile.downloadUrl=result.downloadUrl;this.webSite.isModified=true;this.lastHtml=html;this.pageContent=html}))}duplicateHtml(file){return __awaiter(this,void 0,void 0,(function*(){let{name}=file;name=name.replace(/(\.[^\.]+)$/,(ext=>" Copy"+ext));file=yield this.cloudFileService.save(Object.assign(Object.assign({},file),{appFileID:void 0,children:void 0,parent:void 0,name}));this.root.children.add(file);this.selectedFile=file}))}fileHistory(file){return __awaiter(this,void 0,void 0,(function*(){const{fileContentID,url,downloadUrl}=yield PageNavigator.pushPageForResult(FileHistoryPage,file);const{selectedFile}=this;if(file.appFileID===(selectedFile===null||selectedFile===void 0?void 0:selectedFile.appFileID)){selectedFile.url=url;selectedFile.downloadUrl=downloadUrl;selectedFile.fileContentID=fileContentID}}))}publishWebsite(){return __awaiter(this,void 0,void 0,(function*(){yield this.websiteService.publish(this.webSite)}))}versionHistory(){return __awaiter(this,void 0,void 0,(function*(){PageNavigator.pushPage(WebSiteHistory,this.webSite)}))}viewWebSite(){return __awaiter(this,void 0,void 0,(function*(){PageNavigator.pushPage(ViewWebSitePage,this.webSite)}))}linkBlog(){return __awaiter(this,void 0,void 0,(function*(){PageNavigator.pushPage(WebSiteBlogsPage,this.webSite)}))}hide(){var _a,_b,_c;this.pageContent=(_b=(_a=this.htmlEditor)===null||_a===void 0?void 0:_a.lastCommittedHtml)!==null&&_b!==void 0?_b:(_c=this.htmlEditor)===null||_c===void 0?void 0:_c.htmlPage;super.hide()}show(){super.show();if(this.pageContent){setTimeout((()=>this.htmlEditor.htmlPage=this.pageContent),400)}}});__decorate([InjectProperty,__metadata("design:type",CloudFileService)],WebSiteStudioPage.prototype,"cloudFileService",void 0);__decorate([InjectProperty,__metadata("design:type",WebSiteService)],WebSiteStudioPage.prototype,"websiteService",void 0);__decorate([Action({onEvent:"edit-shares"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",void 0)],WebSiteStudioPage.prototype,"editShares",null);__decorate([Action({onEvent:"edit-code"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"editCode",null);__decorate([Action({onEvent:"open-folder"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",void 0)],WebSiteStudioPage.prototype,"openFolder",null);__decorate([Action({onEvent:"files-available"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"onFilesUploaded",null);__decorate([Action({onEvent:"new-template"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"newTemplate",null);__decorate([Action({onEvent:"open-template"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"openTemplate",null);__decorate([Action({onEvent:"save-page"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"savePage",null);__decorate([Action({onEvent:"duplicate-html"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"duplicateHtml",null);__decorate([Action({onEvent:"file-history"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"fileHistory",null);__decorate([Action({onEvent:"publish-website",confirm:"Are you sure you want to publish this version?",success:"Web site published successfully."}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"publishWebsite",null);__decorate([Action({onEvent:"version-history"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"versionHistory",null);__decorate([Action({onEvent:"view-website"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"viewWebSite",null);__decorate([Action({onEvent:"link-blog"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"linkBlog",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/websites/studio/WebSiteStudioPage");System.register(["tslib","@web-atoms/core/dist/di/DITransient","@web-atoms/core/dist/di/Inject","../../../../services/EntityService","../../../../model/model","../../../SocialMailApp","@web-atoms/date-time/dist/DateTime"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,DITransient,Inject,EntityService,User,UserAuthFactor,SocialMailApp,DateTime,UserService;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){User=_modelModel.User;UserAuthFactor=_modelModel.UserAuthFactor},function(_SocialMailApp){SocialMailApp=_SocialMailApp.default},function(_webAtomsDateTimeDistDateTime){DateTime=_webAtomsDateTimeDistDateTime.default}],execute:function(){UserService=class UserService{getCurrent(){return __awaiter(this,void 0,void 0,(function*(){const{userID}=SocialMailApp.user;return this.entityService.query(User).where({userID},(p=>x=>x.userID===p.userID)).include((x=>x.authFactors.forEach((t=>t.verificationToken)))).firstOrDefault()}))}save(user){return __awaiter(this,void 0,void 0,(function*(){let cloner=this.entityService.cloner(user);if(user.changePassword){cloner=cloner.include((x=>x.changePassword))}yield this.entityService.save(cloner.copy)}))}saveAuthFactors(af){return __awaiter(this,void 0,void 0,(function*(){yield this.entityService.save(af,(x=>x))}))}createAuthFactor(user,method="totp"){return __awaiter(this,void 0,void 0,(function*(){const authFactor=UserAuthFactor.create({userID:user.userID,method});yield this.entityService.save(authFactor);return authFactor}))}verify(af){return __awaiter(this,void 0,void 0,(function*(){af.dateUpdated=DateTime.now;yield this.entityService.save(af,(x=>x))}))}};__decorate([Inject,__metadata("design:type",EntityService)],UserService.prototype,"entityService",void 0);UserService=__decorate([DITransient()],UserService);_export("default",UserService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/user/services/UserService");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/InjectProperty","../services/UserService","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/Form","../../../controls/form/RequiredFormField","@web-atoms/core/dist/core/Bind","../../../controls/password/PasswordStrength","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/web-controls/dist/basic/PasswordBox","../../../validators/Validators","../../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,InjectProperty,UserService,XNode,Form,PasswordFormField,Bind,PasswordStrength,FormField,PasswordBox,Validators,SaveIconTextButton,Action,ChangePasswordPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesUserService){UserService=_servicesUserService.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_controlsFormRequiredFormField){PasswordFormField=_controlsFormRequiredFormField.PasswordFormField},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_controlsPasswordPasswordStrength){PasswordStrength=_controlsPasswordPasswordStrength.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_webAtomsWebControlsDistBasicPasswordBox){PasswordBox=_webAtomsWebControlsDistBasicPasswordBox.default},function(_validatorsValidators){Validators=_validatorsValidators.Validators},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default}],execute:function(){_export("default",ChangePasswordPage=class ChangePasswordPage extends PopupWindowPage{constructor(){super(...arguments);this.password=""}init(){return __awaiter(this,void 0,void 0,(function*(){this.model=yield this.userService.getCurrent();this.title="Change Password";this.model.changePassword={oldPassword:"",newPassword:"",forceChangePasswordOnLogin:false};this.renderer=XNode.create("div",null,XNode.create(Form,null,XNode.create(PasswordFormField,{label:"Current Password",value:()=>this.model.changePassword.oldPassword}),XNode.create(FormField,{label:"Password",required:true,error:Bind.oneWay((()=>Validators.isValidPassword(this.password)?"":"Password is invalid"))},XNode.create(PasswordBox,{value:Bind.twoWaysImmediate((()=>this.password))})),XNode.create(PasswordStrength,{password:Bind.oneWay((()=>this.password))}),XNode.create(FormField,{label:"Password again",required:true,error:Bind.oneWay((()=>this.password!==this.model.changePassword.newPassword?"Passwords do not match":""))},XNode.create(PasswordBox,{value:Bind.twoWaysImmediate((()=>this.model.changePassword.newPassword))})),XNode.create("div",{"data-layout":"command-row"},XNode.create(SaveIconTextButton,{"data-submit-event":"save-user",text:"Change"}))))}))}saveUser(){return __awaiter(this,void 0,void 0,(function*(){yield this.userService.save(this.model)}))}});__decorate([InjectProperty,__metadata("design:type",UserService)],ChangePasswordPage.prototype,"userService",void 0);__decorate([Action({onEvent:"save-user",success:"Password changed successfully.",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],ChangePasswordPage.prototype,"saveUser",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/user/change-password/ChangePasswordPage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../model/model","@web-atoms/core/dist/core/InjectProperty","../services/UserService","@web-atoms/core/dist/core/XNode","../../../controls/buttons/IconButton","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/view-model/Action","@web-atoms/web-controls/dist/basic/AtomRepeater","../../../date/DateFormats","../../../form/AppForm"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,ContentPage,UserAuthFactor,InjectProperty,UserService,XNode,AddIconTextButton,DeleteIconTextButton,SaveIconTextButton,FormField,Bind,Action,AtomRepeater,DateFormats,AppForm,MultiFactorSetupPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_modelModel){UserAuthFactor=_modelModel.UserAuthFactor},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesUserService){UserService=_servicesUserService.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_controlsButtonsIconButton){AddIconTextButton=_controlsButtonsIconButton.AddIconTextButton;DeleteIconTextButton=_controlsButtonsIconButton.DeleteIconTextButton;SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_dateDateFormats){DateFormats=_dateDateFormats.DateFormats},function(_formAppForm){AppForm=_formAppForm.default}],execute:function(){_export("default",MultiFactorSetupPage=class MultiFactorSetupPage extends ContentPage{init(){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){this.model=yield this.userService.getCurrent();const{multiFactor}=this.model;this.title="Setup Multi Factor Authentication";if(!((_a=this.model.authFactors)===null||_a===void 0?void 0:_a.length)){yield this.notSetup();return}if(multiFactor){this.renderer=XNode.create("div",{"data-layout":"center-page-900px"},XNode.create(AppForm,null,XNode.create(FormField,{label:"Methods"},XNode.create(AtomRepeater,{for:"table",items:this.model.authFactors,itemRenderer:item=>this.renderAuthFactor(item)})),!multiFactor&&XNode.create("div",{"data-layout":"command-row"},XNode.create(AddIconTextButton,{"event-click":()=>this.addAuthenticator(),text:"Add Authenticator"}),XNode.create(AddIconTextButton,{"event-click":()=>this.generateOTP(),text:"Generate OTP"})),XNode.create("div",{"data-layout":"command-row"},XNode.create("div",null,"Multi factor authentication is enabled."),XNode.create(DeleteIconTextButton,{text:"Disable"}))));return}const disable=!((_b=this.model.authFactors)===null||_b===void 0?void 0:_b.length)||!this.model.authFactors.some((i=>i.method==="totp"&&i.verified))||this.model.authFactors.filter((i=>i.method==="one-time")).length<8;this.renderer=XNode.create("div",{"data-layout":"center-page-900px"},XNode.create(AppForm,null,XNode.create(FormField,{label:"Methods"},XNode.create(AtomRepeater,{for:"table",items:this.model.authFactors,itemRenderer:item=>this.renderAuthFactor(item)})),!multiFactor&&XNode.create("div",{"data-layout":"command-row"},XNode.create(AddIconTextButton,{"event-click":()=>this.addAuthenticator(),text:"Add Authenticator"}),XNode.create(AddIconTextButton,{"event-click":()=>this.generateOTP(),text:"Generate OTP"})),disable&&XNode.create("div",null,"You must add at least one authenticator and generate 8 OTPs (one time passwords) to enable Multi factor authentication."),!multiFactor&&XNode.create("div",{"data-layout":"command-row"},XNode.create(SaveIconTextButton,{disabled:disable,"style-color":disable?"gray":"","data-click-event":"enable-multi-factor",text:"Enable"}),XNode.create(DeleteIconTextButton,{"data-submit-event":"clear-all",text:"Clear All"})),multiFactor&&XNode.create("div",{"data-layout":"command-row"},XNode.create(DeleteIconTextButton,{text:"Disable"}))))}))}renderAuthFactor(item){if(item.method==="totp"){return XNode.create("tr",null,XNode.create("td",null,"Authenticator"),XNode.create("td",null,item.hint),XNode.create("td",null,DateFormats.relative.short(item.dateUpdated)),XNode.create("td",null,XNode.create("i",{class:"fas fa-check green"})))}if(item.method==="one-time"){return XNode.create("tr",null,XNode.create("td",null,"OTP"),XNode.create("td",null,item.hint,"*****************"),XNode.create("td",null,DateFormats.relative.short(item.dateUpdated)),XNode.create("td",null,XNode.create("i",{class:"fas fa-check green"})))}return XNode.create("tr",null,XNode.create("td",null,item.method),XNode.create("td",null,item.hint),XNode.create("td",null,DateFormats.relative.short(item.dateUpdated)),XNode.create("td",null,XNode.create("i",{class:"fas fa-check green"})))}notSetup(){return __awaiter(this,void 0,void 0,(function*(){this.renderer=XNode.create("div",{"data-layout":"center-page-900px"},XNode.create("p",null,"You account is not secure, please setup multi factor authentication."),XNode.create(AddIconTextButton,{"event-click":()=>this.addAuthenticator(),text:"Add Authenticator"}))}))}addAuthenticator(){return __awaiter(this,void 0,void 0,(function*(){const authFactor=yield this.userService.createAuthFactor(this.model);this.authFactor=authFactor;this.renderer=XNode.create("div",{"data-layout":"center-page-900px"},XNode.create(AppForm,null,XNode.create(FormField,{label:""},XNode.create("div",null,"Scan following QR Code in any compatible Authenticator App. Enter the generated code and hit the verify button.")),XNode.create(FormField,{label:"Secret"},XNode.create("img",{src:authFactor.qrCodeDataUrl})),XNode.create(FormField,{label:"Code",required:true,error:Bind.oneWay((()=>this.authFactor.token?"":"Code is required"))},XNode.create("input",{type:"tel",value:Bind.twoWaysImmediate((()=>this.authFactor.token))})),XNode.create("div",{"data-layout":"command-row"},XNode.create(SaveIconTextButton,{"data-submit-event":"save-auth-factor",text:"Verify"}))))}))}generateOTP(){var _a;var _b;return __awaiter(this,void 0,void 0,(function*(){const authList=(_a=(_b=this.model).authFactors)!==null&&_a!==void 0?_a:_b.authFactors=[];for(let index=0;index<8;index++){authList.push(UserAuthFactor.create({method:"one-time"}))}yield this.userService.save(this.model);let text="";for(const iterator of authList){if(!(iterator===null||iterator===void 0?void 0:iterator.displaySecret)){continue}text+="\r\n"+iterator.displaySecret}text+="\r\n";this.renderer=XNode.create("div",{"data-layout":"center-page-900px"},XNode.create(AppForm,null,XNode.create(FormField,{label:"One Time Passwords"},XNode.create("div",null,"Please copy and save these passwords somewhere safe. You can use them if you cannot access Authenticator app.")),XNode.create(FormField,{label:""},XNode.create("textarea",{rows:12,value:text})),XNode.create("div",null,"After copying, click go to previous screen."),XNode.create("div",{"data-layout":"command-row"},XNode.create(SaveIconTextButton,{"event-click":()=>this.init(),text:"Go"}))))}))}clearAll(){return __awaiter(this,void 0,void 0,(function*(){const all=this.model.authFactors;if(!(all===null||all===void 0?void 0:all.length)){return}for(const iterator of all){iterator.$deleted=true}yield this.userService.save(this.model);yield this.init()}))}enableMultiFactor(){return __awaiter(this,void 0,void 0,(function*(){this.model.multiFactor=true;yield this.userService.save(this.model);yield this.init()}))}saveAuthFactor(){return __awaiter(this,void 0,void 0,(function*(){yield this.userService.save(this.model);yield this.init()}))}});__decorate([InjectProperty,__metadata("design:type",UserService)],MultiFactorSetupPage.prototype,"userService",void 0);__decorate([Action({onEvent:"clear-all",confirm:"Are you sure you want to delete all existing methods?"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MultiFactorSetupPage.prototype,"clearAll",null);__decorate([Action({onEvent:"enable-multi-factor",success:"Multi factor authentication enabled successfully."}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MultiFactorSetupPage.prototype,"enableMultiFactor",null);__decorate([Action({onEvent:"save-auth-factor",success:"Authenticator setup successfully."}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MultiFactorSetupPage.prototype,"saveAuthFactor",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/user/multi-factor/MultiFactorSetupPage");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../model/model","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/view-model/Action","@web-atoms/core/dist/core/InjectProperty","../../../../services/websites/WebSiteService","@web-atoms/web-controls/dist/basic/Checkbox"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,XNode,Form,FormField,PopupWindowPage,AppFile,WebSiteFolder,Bind,Action,InjectProperty,WebSiteService,Checkbox,WebSiteFolderEditor;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_modelModel){AppFile=_modelModel.AppFile;WebSiteFolder=_modelModel.WebSiteFolder},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesWebsitesWebSiteService){WebSiteService=_servicesWebsitesWebSiteService.default},function(_webAtomsWebControlsDistBasicCheckbox){Checkbox=_webAtomsWebControlsDistBasicCheckbox.default}],execute:function(){_export("default",WebSiteFolderEditor=class WebSiteFolderEditor extends PopupWindowPage{init(){return __awaiter(this,void 0,void 0,(function*(){this.title="Create Website Folder";this.model=WebSiteFolder.create({folder:AppFile.create({name:"",isFolder:true,contentType:"application/site"}),isStatic:true});this.renderer=XNode.create("div",null,XNode.create(Form,null,XNode.create(FormField,{label:"Name"},XNode.create("input",{autofocus:true,value:Bind.twoWaysImmediate((()=>this.model.folder.name))})),XNode.create(FormField,{label:"Template"},XNode.create(Checkbox,{checked:Bind.twoWays((()=>this.model.isTemplate)),text:"Save this as a Template"})),XNode.create("div",null,"We recommend using the host name as folder name, e.g. akashkava.com"),XNode.create("div",{"data-layout":"command-row"},XNode.create("button",{"data-submit-event":"save-web-site"},"Save"))))}))}saveWebSite(){return __awaiter(this,void 0,void 0,(function*(){yield this.websiteService.save(this.model);return this.model}))}});__decorate([InjectProperty,__metadata("design:type",WebSiteService)],WebSiteFolderEditor.prototype,"websiteService",void 0);__decorate([Action({onEvent:"save-web-site",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteFolderEditor.prototype,"saveWebSite",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/websites/edit/WebSiteFolderEditor");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/core/dist/core/Bind","../../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action","../../../../services/EntityService","@web-atoms/core/dist/core/InjectProperty"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,XNode,PopupWindowPage,Form,FormField,Bind,SaveIconTextButton,Action,EntityService,InjectProperty,WebSiteFolderSettings;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default}],execute:function(){_export("default",WebSiteFolderSettings=class WebSiteFolderSettings extends PopupWindowPage{init(){return __awaiter(this,void 0,void 0,(function*(){this.model=Object.assign({},this.parameters);this.renderer=XNode.create("div",null,XNode.create(Form,null,XNode.create(FormField,{label:"From Email"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.fromEmail))})),XNode.create(FormField,{label:"Support Email"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.supportEmail))})),XNode.create(FormField,{label:""},XNode.create(SaveIconTextButton,{"data-submit-event":"save-settings",text:"Save"}))))}))}saveSettings(){return __awaiter(this,void 0,void 0,(function*(){yield this.entityService.save(this.model,(c=>c));return this.model}))}});__decorate([InjectProperty,__metadata("design:type",EntityService)],WebSiteFolderSettings.prototype,"entityService",void 0);__decorate([Action({onEvent:"save-settings",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteFolderSettings.prototype,"saveSettings",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/websites/edit/WebSiteFolderSettings");System.register(["tslib","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomRepeater","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../services/websites/WebSiteService","@web-atoms/core/dist/view-model/Action","@web-atoms/web-controls/dist/PageNavigator","../edit/WebSiteFolderEditor","../../../../web/commands/AppCommands","@web-atoms/core/dist/core/Bind","@web-atoms/web-controls/dist/basic/Checkbox","../../../controls/repeater/InfiniteRepeater","../../../NumberFormats","../edit/WebSiteFolderSettings"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,InjectProperty,XNode,AtomRepeater,ContentPage,WebSiteService,Action,PageNavigator,WebSiteFolderEditor,AppCommands,Bind,Checkbox,InfiniteRepeater,toFileSize,WebSiteFolderSettings,WebSiteListPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_servicesWebsitesWebSiteService){WebSiteService=_servicesWebsitesWebSiteService.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_editWebSiteFolderEditor){WebSiteFolderEditor=_editWebSiteFolderEditor.default},function(_webCommandsAppCommands){AppCommands=_webCommandsAppCommands.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsWebControlsDistBasicCheckbox){Checkbox=_webAtomsWebControlsDistBasicCheckbox.default},function(_controlsRepeaterInfiniteRepeater){InfiniteRepeater=_controlsRepeaterInfiniteRepeater.default},function(_NumberFormats){toFileSize=_NumberFormats.toFileSize},function(_editWebSiteFolderSettings){WebSiteFolderSettings=_editWebSiteFolderSettings.default}],execute:function(){_export("default",WebSiteListPage=class WebSiteListPage extends ContentPage{constructor(){super(...arguments);this.search="";this.showTemplate=false;this.sites=[]}init(){return __awaiter(this,void 0,void 0,(function*(){this.headerRenderer=()=>XNode.create("div",{"data-layout":"header-row"},XNode.create("input",{type:"search",value:Bind.twoWaysImmediate((()=>this.search))}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.showTemplate)),text:"Templates"}));this.renderer=XNode.create("div",null,XNode.create(AtomRepeater,Object.assign({"data-layout":"data-grid",items:this.sites},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.websiteService.list({search:this.search,showTemplate:this.showTemplate,start,cancelToken}))),{itemRenderer:item=>XNode.create("div",null,item.isTemplate?XNode.create("i",{title:"This is a template",class:"fa-duotone fa-folder-grid"}):XNode.create("i",{class:"fa-duotone fa-folder"}),XNode.create("a",{"data-click-event":"route",href:AppCommands.editWebSite.displayRoute({id:item.folderID}),text:item.folder.name}),XNode.create("label",{text:toFileSize(Number(item.folder.fileSize)+Number(item.snapshotStorage))}),XNode.create("br",null),XNode.create("a",{"data-click-event":"route",href:AppCommands.openFiles.displayRoute({id:item.folderID})},XNode.create("i",{class:"fas fa-folder"})),XNode.create("i",{"data-click-event":"change-settings",class:"fas fa-gears"}))})));this.footerRenderer=()=>XNode.create("div",{"data-layout":"command-row"},XNode.create("button",{"data-click-event":"create-new-website"},"Create New Website"))}))}createNewWebsite(){return __awaiter(this,void 0,void 0,(function*(){yield PageNavigator.pushPageForResult(WebSiteFolderEditor);yield this.init()}))}changeSettings(item){return __awaiter(this,void 0,void 0,(function*(){PageNavigator.pushPage(WebSiteFolderSettings,item)}))}});__decorate([InjectProperty,__metadata("design:type",WebSiteService)],WebSiteListPage.prototype,"websiteService",void 0);__decorate([Action({onEvent:"create-new-website"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteListPage.prototype,"createNewWebsite",null);__decorate([Action({onEvent:"change-settings"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],WebSiteListPage.prototype,"changeSettings",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/websites/list/WebSiteListPage");System.register(["tslib","@web-atoms/core/dist/di/DISingleton","@web-atoms/core/dist/di/Inject","../EntityService","../../model/model","../../common/Sql"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,DISingleton,Inject,EntityService,Store,Sql,StoreService;return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistDiDISingleton){DISingleton=_webAtomsCoreDistDiDISingleton.default},function(_webAtomsCoreDistDiInject){Inject=_webAtomsCoreDistDiInject.Inject},function(_EntityService){EntityService=_EntityService.default},function(_modelModel){Store=_modelModel.Store},function(_commonSql){Sql=_commonSql.Sql}],execute:function(){StoreService=class StoreService{get(storeID){return __awaiter(this,void 0,void 0,(function*(){return this.entityService.query(Store).where({storeID},(p=>x=>x.storeID===p.storeID)).include((x=>[x.storeUsers.forEach((u=>u.user)),x.storeWebsites.forEach((w=>w.website.folder))])).firstOrDefault()}))}top(){return __awaiter(this,void 0,void 0,(function*(){const{items}=yield this.stores({size:3,cancelToken:null});return items}))}stores({search="",start=0,size=100,cancelToken}){return __awaiter(this,void 0,void 0,(function*(){let q=this.entityService.query(Store);if(search){search=search+"%";q=q.where({search},(p=>x=>Sql.text.like(x.name,p.search)))}return q.orderByDescending((x=>x.storeID)).toPagedList({start,size,cancelToken})}))}save(store){return __awaiter(this,void 0,void 0,(function*(){yield this.entityService.save(store,(x=>x))}))}};__decorate([Inject,__metadata("design:type",EntityService)],StoreService.prototype,"entityService",void 0);StoreService=__decorate([DISingleton()],StoreService);_export("default",StoreService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/services/store/StoreService");System.register(["tslib","@web-atoms/core/dist/di/DISingleton","@web-atoms/core/dist/di/Inject","../EntityService","../../model/model","../../common/Sql","@web-atoms/date-time/dist/DateTime"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,DISingleton,Inject,EntityService,StoreItemPrice,StoreJournal,StoreJournalLineItem,Sql,DateTime,StoreOrderService;return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistDiDISingleton){DISingleton=_webAtomsCoreDistDiDISingleton.default},function(_webAtomsCoreDistDiInject){Inject=_webAtomsCoreDistDiInject.Inject},function(_EntityService){EntityService=_EntityService.default},function(_modelModel){StoreItemPrice=_modelModel.StoreItemPrice;StoreJournal=_modelModel.StoreJournal;StoreJournalLineItem=_modelModel.StoreJournalLineItem},function(_commonSql){Sql=_commonSql.Sql},function(_webAtomsDateTimeDistDateTime){DateTime=_webAtomsDateTimeDistDateTime.default}],execute:function(){StoreOrderService=class StoreOrderService{get(orderID){return this.entityService.query(StoreJournal).where({orderID},(p=>x=>x.journalID===p.orderID)).include((x=>[x.lineItems.forEach((oi=>[oi.itemPrice.storeItem.store])),x.entries.forEach((e=>e.ledger)),x.buyer.items,x.seller.items])).firstOrDefault()}list({storeID=void 0,start=0,size=100,search="",cancelToken=void 0}){return __awaiter(this,void 0,void 0,(function*(){let q=this.entityService.query(StoreJournal).where({storeID},(p=>x=>x.storeID===p.storeID));if(search){search=search+"%";q=q.where({search},(p=>x=>Sql.text.iLike(x.buyer.name,p.search)||x.lineItems.some((oi=>Sql.text.iLike(oi.itemPrice.storeItem.name,p.search)))))}return q.orderByDescending((x=>x.journalID)).toPagedList({start,size,cancelToken})}))}save(order){return __awaiter(this,void 0,void 0,(function*(){yield this.entityService.save(order,(c=>c.include((x=>x.entries)).include((x=>x.lineItems)).thenInclude((x=>x.relatedItems))));return order}))}updateTaxFolder(model,line,taxFolder){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){if(!taxFolder){if(!line.relatedItems){return}for(const iterator of[...line.relatedItems]){if(iterator.itemType!=="tax"){continue}line.relatedItems.remove(iterator)}return}const{itemFolderID}=taxFolder;const date=(_a=model.dateCreated)!==null&&_a!==void 0?_a:DateTime.now;const taxItemPrices=yield this.entityService.query(StoreItemPrice).where({itemFolderID,date},(p=>x=>x.startDate<=p.date&&x.storeItem.itemFolderID===p.itemFolderID)).include((x=>x.storeItem)).toArray();const taxItems=taxItemPrices.map((x=>x.storeItem)).groupBy((x=>x.storeItemID)).map((x=>x[0]));const taxItemIDs=new Set(taxItems.map((x=>x.storeItemID)));(_b=line.relatedItems)!==null&&_b!==void 0?_b:line.relatedItems=[];for(const iterator of[...line.relatedItems]){if(iterator.itemType!=="tax"){continue}if(!taxItemIDs.has(iterator.itemID)){line.relatedItems.remove(iterator);iterator.source=null;iterator.journal=null;model.lineItems.remove(iterator)}}for(const iterator of taxItems){const{storeItemID:itemID}=iterator;let taxLine=line.relatedItems.find((x=>x.itemID===itemID));if(!taxLine){taxLine=StoreJournalLineItem.create({itemID,source:line});if(line.lineItemID){taxLine.sourceID=line.lineItemID}line.relatedItems.add(taxLine)}taxLine.itemID=itemID;taxLine.item=iterator;taxLine.itemType="tax";const taxItemPrice=taxItemPrices.find((x=>x.storeItemID===itemID));taxLine.itemPriceID=taxItemPrice.priceID;const amount=Number(line.amount)*Number(taxItemPrice.amount);taxLine.amount=amount}}))}deleteLineItem(model,line){return __awaiter(this,void 0,void 0,(function*(){}))}};__decorate([Inject,__metadata("design:type",EntityService)],StoreOrderService.prototype,"entityService",void 0);StoreOrderService=__decorate([DISingleton()],StoreOrderService);_export("default",StoreOrderService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/services/store/StoreOrderService");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomRepeater","@web-atoms/web-controls/dist/PageNavigator","@web-atoms/core/dist/core/Bind","../../../services/EntityService","@web-atoms/core/dist/style/styled","@web-atoms/core/dist/web/controls/AtomControl","@web-atoms/core/dist/core/ExpressionParser","../../../model/model","@web-atoms/core/dist/core/InjectProperty","../repeater/InfiniteRepeater","@web-atoms/core/dist/view-model/Action"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,XNode,AtomRepeater,PageNavigator,Bind,EntityService,styled,AtomControl,ExpressionParser,modelEntitySchemas,InjectProperty,InfiniteRepeater,Action,ReferenceEditor;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default},function(_webAtomsCoreDistWebControlsAtomControl){AtomControl=_webAtomsCoreDistWebControlsAtomControl.AtomControl},function(_webAtomsCoreDistCoreExpressionParser){ExpressionParser=_webAtomsCoreDistCoreExpressionParser.default},function(_modelModel){modelEntitySchemas=_modelModel.modelEntitySchemas},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_repeaterInfiniteRepeater){InfiniteRepeater=_repeaterInfiniteRepeater.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default}],execute:function(){styled.css`
4614
+ `.installLocal();getExtension=name=>{const index=name.lastIndexOf(".");if(index===-1){return"dat"}return name.substring(index+1)};_export("default",WebSiteStudioPage=class WebSiteStudioPage extends ContentPage{constructor(){super(...arguments);this.version=1;this.pageContent="";this.lastHtml=""}init(){var _a,_b;var _c;return __awaiter(this,void 0,void 0,(function*(){this.search="";this.root=yield this.cloudFileService.root(this.parameters);this.title=this.root.name;this.webSite=yield this.websiteService.get(this.root.appFileID);(_a=(_c=this.root).children)!==null&&_a!==void 0?_a:_c.children=[];this.root.children.remove((x=>x.isDeleted||!(/^(text\/(html|css))$/i.test(x.contentType)||x.isFolder)));this.root.children.sort(((a,b)=>a.isFolder?-1:0));if(!((_b=this.root.children)===null||_b===void 0?void 0:_b.some((f=>f.name==="index.html")))){yield this.createIndexHtml();return}const indexHtml=this.root.children.find((x=>x.name==="index.html"));this.selectedFile=indexHtml;this.titleRenderer=()=>XNode.create("div",{"data-layout":"row"},XNode.create("div",{text:this.root.name}),XNode.create("div",{"style-display":Bind.oneWay((()=>this.webSite.isModified))},XNode.create(SaveIconTextButton,{"data-click-event":"publish-website",text:"Publish"})),XNode.create("a",{"data-click-event":"route",href:AppCommands.openFiles.displayRoute({id:this.webSite.folderID})},XNode.create(EditIconTextButton,{text:"Modify Files",title:"Use this to upload files manually"})),XNode.create(EditIconTextButton,{"data-click-event":"version-history",icon:"fas fa-history",text:"History",title:"Version History"}),XNode.create(EditIconTextButton,{"data-click-event":"link-blog",icon:"fad fa-blog",text:"Linked Blogs"}),XNode.create(EditIconTextButton,{"data-click-event":"view-website",icon:"fad fa-globe-pointer",text:"View Site"}),XNode.create("a",{href:Bind.oneWay((()=>apiPath(`/api/site/draft/${this.webSite.folderID}/${this.selectedFile.name}`))),target:"_blank"},XNode.create(EditIconTextButton,{icon:"fad fa-globe-pointer",text:"Preview Draft"})),this.parameters.templates&&XNode.create("div",{"data-layout":"row","style-display":Bind.oneWay((()=>this.selectedFile.appFileID>0))},XNode.create("i",{class:"fas fa-plus","data-click-event":"new-template"}),XNode.create("span",{"data-click-event":"new-template",text:"New Template"})));this.renderer=XNode.create("div",{class:css},XNode.create(FileTreeView,{root:this.root,class:"folder-tree",accept:"text/html",presenter:Bind.presenter((c=>this.folderTree=c)),selectedItem:Bind.twoWaysImmediate((()=>this.selectedFile)),menuActions:x=>!x.isFolder?/\.(htm|html)$/i.test(x.name)?[XNode.create(MenuItem,{icon:"fas fa-copy","data-click-event":"duplicate-html",label:"Duplicate Page"}),XNode.create(MenuItem,{icon:"fas fa-history","data-click-event":"file-history",label:"File History"})]:[]:void 0,"event-selected-item-changing":ce=>{if(this.pageContent!==this.lastHtml){if(confirm("Page is modified but not saved, your changes will be lost")){return}ce.preventDefault()}}}),XNode.create(WebSitePageEditor,{class:"file-list",selectedFile:Bind.oneWay((()=>this.selectedFile)),baseUrl:Bind.oneWay((()=>apiPath(`/api/site/draft/${this.root.appFileID}/`))),folder:this.root,presenter:Bind.presenter((c=>this.htmlEditor=c)),"event-html-page-changed":ce=>this.pageContent=ce.detail,htmlPage:Bind.oneWayAsync(((s,e,cancelToken)=>this.selectedFile?this.downloadHtml(this.selectedFile,cancelToken):void 0))}));this.footerRenderer=()=>XNode.create("div",{"data-layout":"command-row","style-display":Bind.oneWay((()=>this.lastHtml!==this.pageContent))},XNode.create(SaveIconTextButton,{"data-click-event":"save-page",text:"Save"}))}))}downloadHtml(file,cancelToken){return __awaiter(this,void 0,void 0,(function*(){const text=yield FetchBuilder.get(file.downloadUrl).cancelToken(cancelToken).responseAsText(true);this.lastHtml=text;this.pageContent=text;return text}))}createIndexHtml(){return __awaiter(this,void 0,void 0,(function*(){yield PageNavigator.pushPageForResultOrCancel(ChooseWebSiteTemplatePage,this.root);yield this.init()}))}editShares(file){PageNavigator.pushPage(EditSharesPage,file)}editCode(){var _a;return __awaiter(this,void 0,void 0,(function*(){const content=yield PageNavigator.pushPageForResult(CodeEditorPage,{fileName:this.selectedFile.name,content:(_a=this.htmlEditor.lastCommittedHtml)!==null&&_a!==void 0?_a:this.lastHtml});this.pageContent=content;this.htmlEditor.htmlPage=content}))}openFolder(file){this.selectedFile=file}onFilesUploaded(){return __awaiter(this,void 0,void 0,(function*(){this.version++}))}newTemplate(){return __awaiter(this,void 0,void 0,(function*(){const parentID=this.selectedFile.appFileID;const file=yield PageNavigator.pushPageForResult(EditTemplatePage,{file:AppFile.create({parentID})});this.selectedFile.children.add(file)}))}openTemplate(file){return __awaiter(this,void 0,void 0,(function*(){yield PageNavigator.pushPageForResultOrCancel(EditTemplatePage,{file})}))}savePage(){return __awaiter(this,void 0,void 0,(function*(){let html=this.pageContent;if(!html.trim().startsWith("<!")){html=`<!DOCTYPE html>${this.pageContent}`}const content=new File([html],this.selectedFile.name,{type:this.selectedFile.contentType});const result=yield this.cloudFileService.saveFile({appFileID:this.selectedFile.appFileID,content});this.selectedFile.url=result.url;this.selectedFile.fileContentID=result.fileContentID;this.selectedFile.downloadUrl=result.downloadUrl;this.webSite.isModified=true;this.lastHtml=html;this.pageContent=html}))}duplicateHtml(file){return __awaiter(this,void 0,void 0,(function*(){let{name}=file;name=name.replace(/(\.[^\.]+)$/,(ext=>" Copy"+ext));file=yield this.cloudFileService.save(Object.assign(Object.assign({},file),{appFileID:void 0,children:void 0,parent:void 0,name}));this.root.children.add(file);this.selectedFile=file}))}fileHistory(file){return __awaiter(this,void 0,void 0,(function*(){const{fileContentID,url,downloadUrl}=yield PageNavigator.pushPageForResult(FileHistoryPage,file);const{selectedFile}=this;if(file.appFileID===(selectedFile===null||selectedFile===void 0?void 0:selectedFile.appFileID)){selectedFile.url=url;selectedFile.downloadUrl=downloadUrl;selectedFile.fileContentID=fileContentID}}))}publishWebsite(){return __awaiter(this,void 0,void 0,(function*(){yield this.websiteService.publish(this.webSite)}))}versionHistory(){return __awaiter(this,void 0,void 0,(function*(){PageNavigator.pushPage(WebSiteHistory,this.webSite)}))}viewWebSite(){return __awaiter(this,void 0,void 0,(function*(){PageNavigator.pushPage(ViewWebSitePage,this.webSite)}))}linkBlog(){return __awaiter(this,void 0,void 0,(function*(){PageNavigator.pushPage(WebSiteBlogsPage,this.webSite)}))}hide(){var _a,_b,_c;this.pageContent=(_b=(_a=this.htmlEditor)===null||_a===void 0?void 0:_a.lastCommittedHtml)!==null&&_b!==void 0?_b:(_c=this.htmlEditor)===null||_c===void 0?void 0:_c.htmlPage;super.hide()}show(){super.show();if(this.pageContent){setTimeout((()=>this.htmlEditor.htmlPage=this.pageContent),400)}}});__decorate([InjectProperty,__metadata("design:type",CloudFileService)],WebSiteStudioPage.prototype,"cloudFileService",void 0);__decorate([InjectProperty,__metadata("design:type",WebSiteService)],WebSiteStudioPage.prototype,"websiteService",void 0);__decorate([Action({onEvent:"edit-shares"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",void 0)],WebSiteStudioPage.prototype,"editShares",null);__decorate([Action({onEvent:"edit-code"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"editCode",null);__decorate([Action({onEvent:"open-folder"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",void 0)],WebSiteStudioPage.prototype,"openFolder",null);__decorate([Action({onEvent:"files-available"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"onFilesUploaded",null);__decorate([Action({onEvent:"new-template"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"newTemplate",null);__decorate([Action({onEvent:"open-template"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"openTemplate",null);__decorate([Action({onEvent:"save-page"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"savePage",null);__decorate([Action({onEvent:"duplicate-html"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"duplicateHtml",null);__decorate([Action({onEvent:"file-history"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"fileHistory",null);__decorate([Action({onEvent:"publish-website",confirm:"Are you sure you want to publish this version?",success:"Web site published successfully."}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"publishWebsite",null);__decorate([Action({onEvent:"version-history"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"versionHistory",null);__decorate([Action({onEvent:"view-website"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"viewWebSite",null);__decorate([Action({onEvent:"link-blog"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteStudioPage.prototype,"linkBlog",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/websites/studio/WebSiteStudioPage");System.register(["tslib","@web-atoms/core/dist/di/DITransient","@web-atoms/core/dist/di/Inject","../../../../services/EntityService","../../../../model/model","../../../SocialMailApp","@web-atoms/date-time/dist/DateTime"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,DITransient,Inject,EntityService,User,UserAuthFactor,SocialMailApp,DateTime,UserService;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){User=_modelModel.User;UserAuthFactor=_modelModel.UserAuthFactor},function(_SocialMailApp){SocialMailApp=_SocialMailApp.default},function(_webAtomsDateTimeDistDateTime){DateTime=_webAtomsDateTimeDistDateTime.default}],execute:function(){UserService=class UserService{getCurrent(){return __awaiter(this,void 0,void 0,(function*(){const{userID}=SocialMailApp.user;return this.entityService.query(User).where({userID},(p=>x=>x.userID===p.userID)).include((x=>x.authFactors.forEach((t=>t.verificationToken)))).firstOrDefault()}))}save(user){return __awaiter(this,void 0,void 0,(function*(){let cloner=this.entityService.cloner(user);if(user.changePassword){cloner=cloner.include((x=>x.changePassword))}yield this.entityService.save(cloner.copy)}))}saveAuthFactors(af){return __awaiter(this,void 0,void 0,(function*(){yield this.entityService.save(af,(x=>x))}))}createAuthFactor(user,method="totp"){return __awaiter(this,void 0,void 0,(function*(){const authFactor=UserAuthFactor.create({userID:user.userID,method});yield this.entityService.save(authFactor);return authFactor}))}verify(af){return __awaiter(this,void 0,void 0,(function*(){af.dateUpdated=DateTime.now;yield this.entityService.save(af,(x=>x))}))}};__decorate([Inject,__metadata("design:type",EntityService)],UserService.prototype,"entityService",void 0);UserService=__decorate([DITransient()],UserService);_export("default",UserService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/user/services/UserService");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/InjectProperty","../services/UserService","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/Form","../../../controls/form/RequiredFormField","@web-atoms/core/dist/core/Bind","../../../controls/password/PasswordStrength","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/web-controls/dist/basic/PasswordBox","../../../validators/Validators","../../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,InjectProperty,UserService,XNode,Form,PasswordFormField,Bind,PasswordStrength,FormField,PasswordBox,Validators,SaveIconTextButton,Action,ChangePasswordPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesUserService){UserService=_servicesUserService.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_controlsFormRequiredFormField){PasswordFormField=_controlsFormRequiredFormField.PasswordFormField},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_controlsPasswordPasswordStrength){PasswordStrength=_controlsPasswordPasswordStrength.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_webAtomsWebControlsDistBasicPasswordBox){PasswordBox=_webAtomsWebControlsDistBasicPasswordBox.default},function(_validatorsValidators){Validators=_validatorsValidators.Validators},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default}],execute:function(){_export("default",ChangePasswordPage=class ChangePasswordPage extends PopupWindowPage{constructor(){super(...arguments);this.password=""}init(){return __awaiter(this,void 0,void 0,(function*(){this.model=yield this.userService.getCurrent();this.title="Change Password";this.model.changePassword={oldPassword:"",newPassword:"",forceChangePasswordOnLogin:false};this.renderer=XNode.create("div",null,XNode.create(Form,null,XNode.create(PasswordFormField,{label:"Current Password",value:()=>this.model.changePassword.oldPassword}),XNode.create(FormField,{label:"Password",required:true,error:Bind.oneWay((()=>Validators.isValidPassword(this.password)?"":"Password is invalid"))},XNode.create(PasswordBox,{value:Bind.twoWaysImmediate((()=>this.password))})),XNode.create(PasswordStrength,{password:Bind.oneWay((()=>this.password))}),XNode.create(FormField,{label:"Password again",required:true,error:Bind.oneWay((()=>this.password!==this.model.changePassword.newPassword?"Passwords do not match":""))},XNode.create(PasswordBox,{value:Bind.twoWaysImmediate((()=>this.model.changePassword.newPassword))})),XNode.create("div",{"data-layout":"command-row"},XNode.create(SaveIconTextButton,{"data-submit-event":"save-user",text:"Change"}))))}))}saveUser(){return __awaiter(this,void 0,void 0,(function*(){yield this.userService.save(this.model)}))}});__decorate([InjectProperty,__metadata("design:type",UserService)],ChangePasswordPage.prototype,"userService",void 0);__decorate([Action({onEvent:"save-user",success:"Password changed successfully.",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],ChangePasswordPage.prototype,"saveUser",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/user/change-password/ChangePasswordPage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../model/model","@web-atoms/core/dist/core/InjectProperty","../services/UserService","@web-atoms/core/dist/core/XNode","../../../controls/buttons/IconButton","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/view-model/Action","@web-atoms/web-controls/dist/basic/AtomRepeater","../../../date/DateFormats","../../../form/AppForm"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,ContentPage,UserAuthFactor,InjectProperty,UserService,XNode,AddIconTextButton,DeleteIconTextButton,SaveIconTextButton,FormField,Bind,Action,AtomRepeater,DateFormats,AppForm,MultiFactorSetupPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_modelModel){UserAuthFactor=_modelModel.UserAuthFactor},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesUserService){UserService=_servicesUserService.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_controlsButtonsIconButton){AddIconTextButton=_controlsButtonsIconButton.AddIconTextButton;DeleteIconTextButton=_controlsButtonsIconButton.DeleteIconTextButton;SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_dateDateFormats){DateFormats=_dateDateFormats.DateFormats},function(_formAppForm){AppForm=_formAppForm.default}],execute:function(){_export("default",MultiFactorSetupPage=class MultiFactorSetupPage extends ContentPage{init(){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){this.model=yield this.userService.getCurrent();const{multiFactor}=this.model;this.title="Setup Multi Factor Authentication";if(!((_a=this.model.authFactors)===null||_a===void 0?void 0:_a.length)){yield this.notSetup();return}if(multiFactor){this.renderer=XNode.create("div",{"data-layout":"center-page-900px"},XNode.create(AppForm,null,XNode.create(FormField,{label:"Methods"},XNode.create(AtomRepeater,{for:"table",items:this.model.authFactors,itemRenderer:item=>this.renderAuthFactor(item)})),!multiFactor&&XNode.create("div",{"data-layout":"command-row"},XNode.create(AddIconTextButton,{"event-click":()=>this.addAuthenticator(),text:"Add Authenticator"}),XNode.create(AddIconTextButton,{"event-click":()=>this.generateOTP(),text:"Generate OTP"})),XNode.create("div",{"data-layout":"command-row"},XNode.create("div",null,"Multi factor authentication is enabled."),XNode.create(DeleteIconTextButton,{text:"Disable"}))));return}const disable=!((_b=this.model.authFactors)===null||_b===void 0?void 0:_b.length)||!this.model.authFactors.some((i=>i.method==="totp"&&i.verified))||this.model.authFactors.filter((i=>i.method==="one-time")).length<8;this.renderer=XNode.create("div",{"data-layout":"center-page-900px"},XNode.create(AppForm,null,XNode.create(FormField,{label:"Methods"},XNode.create(AtomRepeater,{for:"table",items:this.model.authFactors,itemRenderer:item=>this.renderAuthFactor(item)})),!multiFactor&&XNode.create("div",{"data-layout":"command-row"},XNode.create(AddIconTextButton,{"event-click":()=>this.addAuthenticator(),text:"Add Authenticator"}),XNode.create(AddIconTextButton,{"event-click":()=>this.generateOTP(),text:"Generate OTP"})),disable&&XNode.create("div",null,"You must add at least one authenticator and generate 8 OTPs (one time passwords) to enable Multi factor authentication."),!multiFactor&&XNode.create("div",{"data-layout":"command-row"},XNode.create(SaveIconTextButton,{disabled:disable,"style-color":disable?"gray":"","data-click-event":"enable-multi-factor",text:"Enable"}),XNode.create(DeleteIconTextButton,{"data-submit-event":"clear-all",text:"Clear All"})),multiFactor&&XNode.create("div",{"data-layout":"command-row"},XNode.create(DeleteIconTextButton,{text:"Disable"}))))}))}renderAuthFactor(item){if(item.method==="totp"){return XNode.create("tr",null,XNode.create("td",null,"Authenticator"),XNode.create("td",null,item.hint),XNode.create("td",null,DateFormats.relative.short(item.dateUpdated)),XNode.create("td",null,XNode.create("i",{class:"fas fa-check green"})))}if(item.method==="one-time"){return XNode.create("tr",null,XNode.create("td",null,"OTP"),XNode.create("td",null,item.hint,"*****************"),XNode.create("td",null,DateFormats.relative.short(item.dateUpdated)),XNode.create("td",null,XNode.create("i",{class:"fas fa-check green"})))}return XNode.create("tr",null,XNode.create("td",null,item.method),XNode.create("td",null,item.hint),XNode.create("td",null,DateFormats.relative.short(item.dateUpdated)),XNode.create("td",null,XNode.create("i",{class:"fas fa-check green"})))}notSetup(){return __awaiter(this,void 0,void 0,(function*(){this.renderer=XNode.create("div",{"data-layout":"center-page-900px"},XNode.create("p",null,"You account is not secure, please setup multi factor authentication."),XNode.create(AddIconTextButton,{"event-click":()=>this.addAuthenticator(),text:"Add Authenticator"}))}))}addAuthenticator(){return __awaiter(this,void 0,void 0,(function*(){const authFactor=yield this.userService.createAuthFactor(this.model);this.authFactor=authFactor;this.renderer=XNode.create("div",{"data-layout":"center-page-900px"},XNode.create(AppForm,null,XNode.create(FormField,{label:""},XNode.create("div",null,"Scan following QR Code in any compatible Authenticator App. Enter the generated code and hit the verify button.")),XNode.create(FormField,{label:"Secret"},XNode.create("img",{src:authFactor.qrCodeDataUrl})),XNode.create(FormField,{label:"Code",required:true,error:Bind.oneWay((()=>this.authFactor.token?"":"Code is required"))},XNode.create("input",{type:"tel",value:Bind.twoWaysImmediate((()=>this.authFactor.token))})),XNode.create("div",{"data-layout":"command-row"},XNode.create(SaveIconTextButton,{"data-submit-event":"save-auth-factor",text:"Verify"}))))}))}generateOTP(){var _a;var _b;return __awaiter(this,void 0,void 0,(function*(){const authList=(_a=(_b=this.model).authFactors)!==null&&_a!==void 0?_a:_b.authFactors=[];for(let index=0;index<8;index++){authList.push(UserAuthFactor.create({method:"one-time"}))}yield this.userService.save(this.model);let text="";for(const iterator of authList){if(!(iterator===null||iterator===void 0?void 0:iterator.displaySecret)){continue}text+="\r\n"+iterator.displaySecret}text+="\r\n";this.renderer=XNode.create("div",{"data-layout":"center-page-900px"},XNode.create(AppForm,null,XNode.create(FormField,{label:"One Time Passwords"},XNode.create("div",null,"Please copy and save these passwords somewhere safe. You can use them if you cannot access Authenticator app.")),XNode.create(FormField,{label:""},XNode.create("textarea",{rows:12,value:text})),XNode.create("div",null,"After copying, click go to previous screen."),XNode.create("div",{"data-layout":"command-row"},XNode.create(SaveIconTextButton,{"event-click":()=>this.init(),text:"Go"}))))}))}clearAll(){return __awaiter(this,void 0,void 0,(function*(){const all=this.model.authFactors;if(!(all===null||all===void 0?void 0:all.length)){return}for(const iterator of all){iterator.$deleted=true}yield this.userService.save(this.model);yield this.init()}))}enableMultiFactor(){return __awaiter(this,void 0,void 0,(function*(){this.model.multiFactor=true;yield this.userService.save(this.model);yield this.init()}))}saveAuthFactor(){return __awaiter(this,void 0,void 0,(function*(){yield this.userService.save(this.model);yield this.init()}))}});__decorate([InjectProperty,__metadata("design:type",UserService)],MultiFactorSetupPage.prototype,"userService",void 0);__decorate([Action({onEvent:"clear-all",confirm:"Are you sure you want to delete all existing methods?"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MultiFactorSetupPage.prototype,"clearAll",null);__decorate([Action({onEvent:"enable-multi-factor",success:"Multi factor authentication enabled successfully."}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MultiFactorSetupPage.prototype,"enableMultiFactor",null);__decorate([Action({onEvent:"save-auth-factor",success:"Authenticator setup successfully."}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MultiFactorSetupPage.prototype,"saveAuthFactor",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/user/multi-factor/MultiFactorSetupPage");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../model/model","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/view-model/Action","@web-atoms/core/dist/core/InjectProperty","../../../../services/websites/WebSiteService","@web-atoms/web-controls/dist/basic/Checkbox"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,XNode,Form,FormField,PopupWindowPage,AppFile,WebSiteFolder,Bind,Action,InjectProperty,WebSiteService,Checkbox,WebSiteFolderEditor;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_modelModel){AppFile=_modelModel.AppFile;WebSiteFolder=_modelModel.WebSiteFolder},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesWebsitesWebSiteService){WebSiteService=_servicesWebsitesWebSiteService.default},function(_webAtomsWebControlsDistBasicCheckbox){Checkbox=_webAtomsWebControlsDistBasicCheckbox.default}],execute:function(){_export("default",WebSiteFolderEditor=class WebSiteFolderEditor extends PopupWindowPage{init(){return __awaiter(this,void 0,void 0,(function*(){this.title="Create Website Folder";this.model=WebSiteFolder.create({folder:AppFile.create({name:"",isFolder:true,contentType:"application/site"}),isStatic:true});this.renderer=XNode.create("div",null,XNode.create(Form,null,XNode.create(FormField,{label:"Name"},XNode.create("input",{autofocus:true,value:Bind.twoWaysImmediate((()=>this.model.folder.name))})),XNode.create(FormField,{label:"Template"},XNode.create(Checkbox,{checked:Bind.twoWays((()=>this.model.isTemplate)),text:"Save this as a Template"})),XNode.create("div",null,"We recommend using the host name as folder name, e.g. akashkava.com"),XNode.create("div",{"data-layout":"command-row"},XNode.create("button",{"data-submit-event":"save-web-site"},"Save"))))}))}saveWebSite(){return __awaiter(this,void 0,void 0,(function*(){yield this.websiteService.save(this.model);return this.model}))}});__decorate([InjectProperty,__metadata("design:type",WebSiteService)],WebSiteFolderEditor.prototype,"websiteService",void 0);__decorate([Action({onEvent:"save-web-site",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteFolderEditor.prototype,"saveWebSite",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/websites/edit/WebSiteFolderEditor");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/core/dist/core/Bind","../../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action","../../../../services/EntityService","@web-atoms/core/dist/core/InjectProperty"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,XNode,PopupWindowPage,Form,FormField,Bind,SaveIconTextButton,Action,EntityService,InjectProperty,WebSiteFolderSettings;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default}],execute:function(){_export("default",WebSiteFolderSettings=class WebSiteFolderSettings extends PopupWindowPage{init(){return __awaiter(this,void 0,void 0,(function*(){this.model=Object.assign({},this.parameters);this.renderer=XNode.create("div",null,XNode.create(Form,null,XNode.create(FormField,{label:"From Email"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.fromEmail))})),XNode.create(FormField,{label:"Support Email"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.supportEmail))})),XNode.create(FormField,{label:""},XNode.create(SaveIconTextButton,{"data-submit-event":"save-settings",text:"Save"}))))}))}saveSettings(){return __awaiter(this,void 0,void 0,(function*(){yield this.entityService.save(this.model,(c=>c));return this.model}))}});__decorate([InjectProperty,__metadata("design:type",EntityService)],WebSiteFolderSettings.prototype,"entityService",void 0);__decorate([Action({onEvent:"save-settings",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteFolderSettings.prototype,"saveSettings",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/websites/edit/WebSiteFolderSettings");System.register(["tslib","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomRepeater","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../services/websites/WebSiteService","@web-atoms/core/dist/view-model/Action","@web-atoms/web-controls/dist/PageNavigator","../edit/WebSiteFolderEditor","../../../../web/commands/AppCommands","@web-atoms/core/dist/core/Bind","@web-atoms/web-controls/dist/basic/Checkbox","../../../controls/repeater/InfiniteRepeater","../../../NumberFormats","../edit/WebSiteFolderSettings"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,InjectProperty,XNode,AtomRepeater,ContentPage,WebSiteService,Action,PageNavigator,WebSiteFolderEditor,AppCommands,Bind,Checkbox,InfiniteRepeater,toFileSize,WebSiteFolderSettings,WebSiteListPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_servicesWebsitesWebSiteService){WebSiteService=_servicesWebsitesWebSiteService.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_editWebSiteFolderEditor){WebSiteFolderEditor=_editWebSiteFolderEditor.default},function(_webCommandsAppCommands){AppCommands=_webCommandsAppCommands.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsWebControlsDistBasicCheckbox){Checkbox=_webAtomsWebControlsDistBasicCheckbox.default},function(_controlsRepeaterInfiniteRepeater){InfiniteRepeater=_controlsRepeaterInfiniteRepeater.default},function(_NumberFormats){toFileSize=_NumberFormats.toFileSize},function(_editWebSiteFolderSettings){WebSiteFolderSettings=_editWebSiteFolderSettings.default}],execute:function(){_export("default",WebSiteListPage=class WebSiteListPage extends ContentPage{constructor(){super(...arguments);this.search="";this.showTemplate=false;this.sites=[]}init(){return __awaiter(this,void 0,void 0,(function*(){this.headerRenderer=()=>XNode.create("div",{"data-layout":"header-row"},XNode.create("input",{type:"search",value:Bind.twoWaysImmediate((()=>this.search))}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.showTemplate)),text:"Templates"}));this.renderer=XNode.create("div",null,XNode.create(AtomRepeater,Object.assign({"data-layout":"data-grid",items:this.sites},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.websiteService.list({search:this.search,showTemplate:this.showTemplate,start,cancelToken}))),{itemRenderer:item=>XNode.create("div",null,item.isTemplate?XNode.create("i",{title:"This is a template",class:"fa-duotone fa-folder-grid"}):XNode.create("i",{class:"fa-duotone fa-folder"}),XNode.create("a",{"data-click-event":"route",href:AppCommands.editWebSite.displayRoute({id:item.folderID}),text:item.folder.name}),XNode.create("label",{text:toFileSize(Number(item.folder.fileSize)+Number(item.snapshotStorage))}),XNode.create("br",null),XNode.create("a",{"data-click-event":"route",href:AppCommands.openFiles.displayRoute({id:item.folderID})},XNode.create("i",{class:"fas fa-folder"})),XNode.create("i",{"data-click-event":"change-settings",class:"fas fa-gears"}))})));this.footerRenderer=()=>XNode.create("div",{"data-layout":"command-row"},XNode.create("button",{"data-click-event":"create-new-website"},"Create New Website"))}))}createNewWebsite(){return __awaiter(this,void 0,void 0,(function*(){yield PageNavigator.pushPageForResult(WebSiteFolderEditor);yield this.init()}))}changeSettings(item){return __awaiter(this,void 0,void 0,(function*(){PageNavigator.pushPage(WebSiteFolderSettings,item)}))}});__decorate([InjectProperty,__metadata("design:type",WebSiteService)],WebSiteListPage.prototype,"websiteService",void 0);__decorate([Action({onEvent:"create-new-website"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],WebSiteListPage.prototype,"createNewWebsite",null);__decorate([Action({onEvent:"change-settings"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],WebSiteListPage.prototype,"changeSettings",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/websites/list/WebSiteListPage");System.register(["tslib","@web-atoms/core/dist/di/DISingleton","@web-atoms/core/dist/di/Inject","../EntityService","../../model/model","../../common/Sql"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,DISingleton,Inject,EntityService,Store,Sql,StoreService;return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistDiDISingleton){DISingleton=_webAtomsCoreDistDiDISingleton.default},function(_webAtomsCoreDistDiInject){Inject=_webAtomsCoreDistDiInject.Inject},function(_EntityService){EntityService=_EntityService.default},function(_modelModel){Store=_modelModel.Store},function(_commonSql){Sql=_commonSql.Sql}],execute:function(){StoreService=class StoreService{get(storeID){return __awaiter(this,void 0,void 0,(function*(){return this.entityService.query(Store).where({storeID},(p=>x=>x.storeID===p.storeID)).include((x=>[x.storeUsers.forEach((u=>u.user)),x.storeWebsites.forEach((w=>w.website.folder))])).firstOrDefault()}))}top(){return __awaiter(this,void 0,void 0,(function*(){const{items}=yield this.stores({size:3,cancelToken:null});return items}))}stores({search="",start=0,size=100,cancelToken}){return __awaiter(this,void 0,void 0,(function*(){let q=this.entityService.query(Store);if(search){search=search+"%";q=q.where({search},(p=>x=>Sql.text.like(x.name,p.search)))}return q.orderByDescending((x=>x.storeID)).toPagedList({start,size,cancelToken})}))}save(store){return __awaiter(this,void 0,void 0,(function*(){yield this.entityService.save(store,(x=>x))}))}};__decorate([Inject,__metadata("design:type",EntityService)],StoreService.prototype,"entityService",void 0);StoreService=__decorate([DISingleton()],StoreService);_export("default",StoreService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/services/store/StoreService");System.register(["tslib","@web-atoms/core/dist/di/DISingleton","@web-atoms/core/dist/di/Inject","../EntityService","../../model/model","../../common/Sql","@web-atoms/date-time/dist/DateTime"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,DISingleton,Inject,EntityService,StoreItemPrice,StoreJournal,StoreJournalLineItem,Sql,DateTime,StoreOrderService;return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistDiDISingleton){DISingleton=_webAtomsCoreDistDiDISingleton.default},function(_webAtomsCoreDistDiInject){Inject=_webAtomsCoreDistDiInject.Inject},function(_EntityService){EntityService=_EntityService.default},function(_modelModel){StoreItemPrice=_modelModel.StoreItemPrice;StoreJournal=_modelModel.StoreJournal;StoreJournalLineItem=_modelModel.StoreJournalLineItem},function(_commonSql){Sql=_commonSql.Sql},function(_webAtomsDateTimeDistDateTime){DateTime=_webAtomsDateTimeDistDateTime.default}],execute:function(){StoreOrderService=class StoreOrderService{get(orderID){return this.entityService.query(StoreJournal).where({orderID},(p=>x=>x.journalID===p.orderID)).include((x=>[x.lineItems.forEach((oi=>[oi.itemPrice.storeItem.store])),x.entries.forEach((e=>e.ledger)),x.buyer.items,x.seller.items])).firstOrDefault()}list({storeID=void 0,start=0,size=100,search="",cancelToken=void 0}){return __awaiter(this,void 0,void 0,(function*(){let q=this.entityService.query(StoreJournal).where({storeID},(p=>x=>x.storeID===p.storeID));if(search){search=search+"%";q=q.where({search},(p=>x=>Sql.text.iLike(x.buyer.name,p.search)||x.lineItems.some((oi=>Sql.text.iLike(oi.itemPrice.storeItem.name,p.search)))))}return q.orderByDescending((x=>x.journalID)).toPagedList({start,size,cancelToken})}))}save(order){return __awaiter(this,void 0,void 0,(function*(){yield this.entityService.save(order,(c=>c.include((x=>x.entries)).include((x=>x.lineItems)).thenInclude((x=>x.relatedItems))));return order}))}updateTaxFolder(model,line,taxFolder){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){if(!taxFolder){if(!line.relatedItems){return}for(const iterator of[...line.relatedItems]){if(iterator.itemType!=="tax"){continue}line.relatedItems.remove(iterator)}return}const{itemFolderID}=taxFolder;const date=(_a=model.dateCreated)!==null&&_a!==void 0?_a:DateTime.now;const taxItemPrices=yield this.entityService.query(StoreItemPrice).where({itemFolderID,date},(p=>x=>x.startDate<=p.date&&x.storeItem.itemFolderID===p.itemFolderID)).include((x=>x.storeItem)).toArray();const taxItems=taxItemPrices.map((x=>x.storeItem)).groupBy((x=>x.storeItemID)).map((x=>x[0]));const taxItemIDs=new Set(taxItems.map((x=>x.storeItemID)));(_b=line.relatedItems)!==null&&_b!==void 0?_b:line.relatedItems=[];for(const iterator of[...line.relatedItems]){if(iterator.itemType!=="tax"){continue}if(!taxItemIDs.has(iterator.itemID)){line.relatedItems.remove(iterator);iterator.source=null;iterator.journal=null;model.lineItems.remove(iterator)}}for(const iterator of taxItems){const{storeItemID:itemID}=iterator;let taxLine=line.relatedItems.find((x=>x.itemID===itemID));if(!taxLine){taxLine=StoreJournalLineItem.create({itemID,source:line});if(line.lineItemID){taxLine.sourceID=line.lineItemID}line.relatedItems.add(taxLine)}taxLine.itemID=itemID;taxLine.item=iterator;taxLine.itemType="tax";const taxItemPrice=taxItemPrices.find((x=>x.storeItemID===itemID));taxLine.itemPriceID=taxItemPrice.priceID;const amount=Number(line.amount)*Number(taxItemPrice.amount);taxLine.amount=amount}}))}deleteLineItem(model,line){return __awaiter(this,void 0,void 0,(function*(){}))}};__decorate([Inject,__metadata("design:type",EntityService)],StoreOrderService.prototype,"entityService",void 0);StoreOrderService=__decorate([DISingleton()],StoreOrderService);_export("default",StoreOrderService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/services/store/StoreOrderService");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomRepeater","@web-atoms/web-controls/dist/PageNavigator","@web-atoms/core/dist/core/Bind","../../../services/EntityService","@web-atoms/core/dist/style/styled","@web-atoms/core/dist/web/controls/AtomControl","@web-atoms/core/dist/core/ExpressionParser","../../../model/model","@web-atoms/core/dist/core/InjectProperty","../repeater/InfiniteRepeater","@web-atoms/core/dist/view-model/Action"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,XNode,AtomRepeater,PageNavigator,Bind,EntityService,styled,AtomControl,ExpressionParser,modelEntitySchemas,InjectProperty,InfiniteRepeater,Action,ReferenceEditor;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default},function(_webAtomsCoreDistWebControlsAtomControl){AtomControl=_webAtomsCoreDistWebControlsAtomControl.AtomControl},function(_webAtomsCoreDistCoreExpressionParser){ExpressionParser=_webAtomsCoreDistCoreExpressionParser.default},function(_modelModel){modelEntitySchemas=_modelModel.modelEntitySchemas},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_repeaterInfiniteRepeater){InfiniteRepeater=_repeaterInfiniteRepeater.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default}],execute:function(){styled.css`
4588
4615
 
4589
4616
  position: relative;
4590
4617
  overflow: visible !important;