@social-mail/social-mail-client 1.2.216 → 1.2.217

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.
@@ -4416,7 +4416,7 @@ display: grid;
4416
4416
  }
4417
4417
 
4418
4418
  }
4419
- `.installLocal();_export("default",ChooseMediaPage=class ChooseMediaPage extends PopupWindowPage{constructor(){super(...arguments);this.search="";this.version=1;this.size=700;this.selectedFile=null}init(){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.renderer=XNode.create("div",{class:css},XNode.create(FolderTreeView,{class:"folder-tree",accept,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,{selectOnClick:true,selectedItem:Bind.twoWaysImmediate((()=>this.selectedFile)),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,accept,cancelToken}))),itemRenderer:item=>XNode.create("div",{class:"media-file"},XNode.create("img",{src:apiPath(`/api/files/webp(300)/${item.appFileID}/${item.fileContentID}/${item.name}.300.webp`)}))})));this.footerRenderer=()=>XNode.create("div",{"style-display":Bind.oneWay((()=>this.selectedFile!==null)),"data-layout":"row"},XNode.create("input",{type:"range",min:"100",max:"2000",step:"100",value:Bind.twoWaysImmediate((()=>this.size))}),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 file=this.selectedFile;const size=this.size;return{file,size}}))}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*(){this.file=this.parameters.file;this.title=this.file.name;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 file=this.file;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/${file.name}`)}))}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(["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"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,BindableProperty,HtmlPageEditor,ChooseMediaPage,PageNavigator,StylerSet,InjectProperty,CloudFileService,Action,CodeEditorPage,apiPath,FetchBuilder,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}],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{file,size}=yield PageNavigator.pushPageForResult(ChooseMediaPage,{folder:this.folder,accept:"image/*"});const src=apiPath(`/api/site/asset/webp(${size})/${this.folder.appFileID}/${file.appFileID}/${file.fileContentID}/${file.name}.${size}.webp`);yield this.insertImage(src)}))}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,{file,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*(){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(script)}script.setAttribute("src","//cdn.jsdelivr.net/npm/@social-mail/web-components@1.0.36/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(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"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,InjectProperty,WebSiteService,XNode,AtomRepeater,InfiniteRepeater,DateFormats,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},function(_controlsRepeaterInfiniteRepeater){InfiniteRepeater=_controlsRepeaterInfiniteRepeater.default},function(_dateDateFormats){DateFormats=_dateDateFormats.DateFormats}],execute:function(){_export("default",WebSiteHistory=class WebSiteHistory extends PopupWindowPage{constructor(){super(...arguments);this.versions=[]}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",items:this.versions},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.websiteService.getVersions({folderID:this.parameters.folderID,start,cancelToken}))),{itemRenderer:item=>XNode.create("div",null,XNode.create("span",{text:item.name}),XNode.create("span",{text:DateFormats.relative.short(item.dateCreated)}),XNode.create("span",{text:item.author.displayName}))})))}))}});__decorate([InjectProperty,__metadata("design:type",WebSiteService)],WebSiteHistory.prototype,"websiteService",void 0)}}}));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.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`
4419
+ `.installLocal();_export("default",ChooseMediaPage=class ChooseMediaPage extends PopupWindowPage{constructor(){super(...arguments);this.search="";this.version=1;this.size=700;this.selectedFile=null}init(){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.renderer=XNode.create("div",{class:css},XNode.create(FolderTreeView,{class:"folder-tree",accept,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,{selectOnClick:true,selectedItem:Bind.twoWaysImmediate((()=>this.selectedFile)),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,accept,cancelToken}))),itemRenderer:item=>XNode.create("div",{class:"media-file"},XNode.create("img",{src:apiPath(`/api/files/webp(300)/${item.appFileID}/${item.fileContentID}/${item.name}.300.webp`)}))})));this.footerRenderer=()=>XNode.create("div",{"style-display":Bind.oneWay((()=>this.selectedFile!==null)),"data-layout":"row"},XNode.create("input",{type:"range",min:"100",max:"2000",step:"100",value:Bind.twoWaysImmediate((()=>this.size))}),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 file=this.selectedFile;const size=this.size;return{file,size}}))}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*(){this.file=this.parameters.file;this.title=this.file.name;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 file=this.file;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/${file.name}`)}))}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(["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"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,BindableProperty,HtmlPageEditor,ChooseMediaPage,PageNavigator,StylerSet,InjectProperty,CloudFileService,Action,CodeEditorPage,apiPath,FetchBuilder,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}],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{file,size}=yield PageNavigator.pushPageForResult(ChooseMediaPage,{folder:this.folder,accept:"image/*"});const src=apiPath(`/api/site/asset/webp(${size})/${this.folder.appFileID}/${file.appFileID}/${file.fileContentID}/${file.name}.${size}.webp`);yield this.insertImage(src)}))}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,{file,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*(){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(script)}script.setAttribute("src","//cdn.jsdelivr.net/npm/@social-mail/web-components@1.0.38/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(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"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,InjectProperty,WebSiteService,XNode,AtomRepeater,InfiniteRepeater,DateFormats,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},function(_controlsRepeaterInfiniteRepeater){InfiniteRepeater=_controlsRepeaterInfiniteRepeater.default},function(_dateDateFormats){DateFormats=_dateDateFormats.DateFormats}],execute:function(){_export("default",WebSiteHistory=class WebSiteHistory extends PopupWindowPage{constructor(){super(...arguments);this.versions=[]}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",items:this.versions},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.websiteService.getVersions({folderID:this.parameters.folderID,start,cancelToken}))),{itemRenderer:item=>XNode.create("div",null,XNode.create("span",{text:item.name}),XNode.create("span",{text:DateFormats.relative.short(item.dateCreated)}),XNode.create("span",{text:item.author.displayName}))})))}))}});__decorate([InjectProperty,__metadata("design:type",WebSiteService)],WebSiteHistory.prototype,"websiteService",void 0)}}}));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.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`
4420
4420
  display: grid;
4421
4421
  grid-template-columns: 200px 1fr;
4422
4422
  gap: 5px;
@@ -4477,7 +4477,7 @@ display: grid;
4477
4477
  padding: 10px;
4478
4478
  border: solid 1px lightgray;
4479
4479
  border-radius: 10px;
4480
- `.installGlobal("div[data-collection-editor]");hasKeys=(model,schema)=>{for(const iterator of schema.schema.keys){if(!model[iterator.name]){return false}}return true};_export("default",CollectionEditorEx=class CollectionEditorEx extends AtomControl{constructor(app,e=document.createElement("details")){super(app,e);this.label="";this.model=null;this.field=null;this.pageResultToItem=null;this.itemFactory=null;this.addPage=null;this.editPage=null;this.itemRenderer=null;this.autoFocus=false;this.saveAfterAdd=true;this.addItemDefaults=null;this.schema=null;this.items=[];this.fieldName=null;this.relation=null;this.runAfterInit((()=>this.app.runAsync((()=>this.init()))))}init(){return __awaiter(this,void 0,void 0,(function*(){const fieldName=ExpressionParser.parsePath(this.field)[0][0];this.fieldName=fieldName;const fx=()=>{var _a;var _b,_c;return(_a=(_b=this.model)[_c=this.fieldName])!==null&&_a!==void 0?_a:_b[_c]=[]};fx.toString=()=>`() => this.model.${this.fieldName}`;this.renderer=XNode.create("details",{"data-border":"frame",open:true,items:Bind.oneWay(fx),schema:Bind.oneWay((()=>modelEntitySchemas[this.model.$type])),relation:Bind.oneWay((()=>this.schema.schema.relations.find((x=>x.name===this.fieldName))))},XNode.create("summary",{text:Bind.oneWay((()=>this.label))}),XNode.create("div",null,XNode.create(AtomRepeater,{presenter:Bind.presenter((c=>this.repeater=c)),"data-layout":"data-grid","event-delete-collection-item":ce=>this.deleteItem(ce.detail),items:Bind.oneWay((()=>this.items)),footer:true,itemRenderer:item=>{const node=this.itemRenderer(item);node.children.push(XNode.create("span",null,XNode.create(DeleteIconButton,{"data-click-event":"delete-collection-item"})));return node}}),XNode.create("div",null,XNode.create(AddIconTextButton,{"event-click":()=>this.onAddItem(),text:"Add New"}))))}))}deleteItem(item){return __awaiter(this,void 0,void 0,(function*(){const{items,repeater}=this;if(typeof item.$deleted==="undefined"){items.remove(item);return}item.$deleted=true;const es=repeater.app.resolve(EntityService);const copy=es.cloner(item).copy;yield es.save(copy);items.remove(item)}))}onAddItem(){var _a;return __awaiter(this,void 0,void 0,(function*(){const{repeater,addPage,addItemDefaults,pageResultToItem,itemFactory,model,schema}=this;const es=this.resolve(EntityService);let newItem;if(addPage){const result=yield PageNavigator.pushPageForResult(addPage,Object.assign({},addItemDefaults!==null&&addItemDefaults!==void 0?addItemDefaults:{}));newItem=pageResultToItem?pageResultToItem(result):result}else{newItem=(_a=itemFactory===null||itemFactory===void 0?void 0:itemFactory())!==null&&_a!==void 0?_a:this.relation.relatedModel.create(Object.assign({},addItemDefaults!==null&&addItemDefaults!==void 0?addItemDefaults:{}))}if(!newItem){return}if(newItem===null||newItem===void 0?void 0:newItem.then){newItem=yield newItem}if(hasKeys(model,schema)&&this.saveAfterAdd){const draft=Object.assign(Object.assign({},model),{[this.fieldName]:[newItem]});let clone=es.cloner(draft);clone=clone.include((x=>x[this.fieldName]));yield es.save(clone.copy)}repeater.items.add(newItem)}))}});__decorate([InjectProperty,__metadata("design:type",EntityService)],CollectionEditorEx.prototype,"entityService",void 0);__decorate([Action({confirm:"Are you sure you want to delete this?",confirmTitle:"Confirm Delete"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],CollectionEditorEx.prototype,"deleteItem",null);__decorate([Action({}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],CollectionEditorEx.prototype,"onAddItem",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/controls/collection-editor/CollectionEditorEx");System.register(["tslib","@web-atoms/core/dist/di/Inject","../EntityService","../../model/model","@web-atoms/core/dist/di/DISingleton"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,Inject,EntityService,Contact,DISingleton,ContactService;return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistDiInject){Inject=_webAtomsCoreDistDiInject.Inject},function(_EntityService){EntityService=_EntityService.default},function(_modelModel){Contact=_modelModel.Contact},function(_webAtomsCoreDistDiDISingleton){DISingleton=_webAtomsCoreDistDiDISingleton.default}],execute:function(){ContactService=class ContactService{get(id){return __awaiter(this,void 0,void 0,(function*(){return this.entityService.query(Contact).where({id},(p=>x=>x.contactID===p.id)).include((x=>[x.addresses,x.items,x.emails,x.phones,x.domain])).firstOrDefault()}))}save(contact){return __awaiter(this,void 0,void 0,(function*(){yield this.entityService.save(contact,(c=>c.include((x=>x.addresses)).include((x=>x.items)).include((x=>x.emails)).include((x=>x.phones))))}))}};__decorate([Inject,__metadata("design:type",EntityService)],ContactService.prototype,"entityService",void 0);ContactService=__decorate([DISingleton()],ContactService);_export("default",ContactService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/services/contacts/ContactService");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../model/model","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/core/dist/core/Bind","@web-atoms/web-controls/dist/basic/ToggleButtonBar","@web-atoms/web-controls/dist/basic/Select","@web-atoms/core/dist/core/InjectProperty","../../../services/EntityService","../../controls/collection-editor/CollectionEditorEx","../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action","../../../services/contacts/ContactService"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,Contact,ContactEmail,ContactPhone,HostedDomain,XNode,Form,FormField,Bind,ToggleButtonBar,Select,InjectProperty,EntityService,CollectionEditorEx,SaveIconTextButton,Action,ContactService,ContactEditorPage,contactTypes;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_modelModel){Contact=_modelModel.Contact;ContactEmail=_modelModel.ContactEmail;ContactPhone=_modelModel.ContactPhone;HostedDomain=_modelModel.HostedDomain},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsWebControlsDistBasicToggleButtonBar){ToggleButtonBar=_webAtomsWebControlsDistBasicToggleButtonBar.default},function(_webAtomsWebControlsDistBasicSelect){Select=_webAtomsWebControlsDistBasicSelect.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_controlsCollectionEditorCollectionEditorEx){CollectionEditorEx=_controlsCollectionEditorCollectionEditorEx.default},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_servicesContactsContactService){ContactService=_servicesContactsContactService.default}],execute:function(){contactTypes=[{label:"Company",value:"company"},{label:"Person",value:"person"}];_export("default",ContactEditorPage=class ContactEditorPage extends PopupWindowPage{constructor(){super(...arguments);this.model=null}init(){var _a;return __awaiter(this,void 0,void 0,(function*(){this.model=((_a=this.parameters)===null||_a===void 0?void 0:_a.contactID)?yield this.contactService.get(this.parameters.contactID):Contact.create({type:"person",name:"",emails:[ContactEmail.create({emailAddressText:"",emailAddressID:null})],phones:[ContactPhone.create({phoneNumberE64:""})]});this.title=this.model.contactID?"Edit "+this.model.name:"Add New Contact";this.renderer=XNode.create("div",null,XNode.create(Form,null,XNode.create(FormField,{label:"Name",required:true,error:Bind.oneWay((()=>this.model.name?"":"Name is required"))},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.name)),autofocus:true})),XNode.create(FormField,{label:"Type"},XNode.create(ToggleButtonBar,{items:contactTypes,labelPath:x=>x.label,valuePath:x=>x.value,value:Bind.twoWaysImmediate((()=>this.model.type))})),XNode.create(FormField,{label:"Domain"},XNode.create(Select,{items:Bind.oneWay((()=>this.entityService.query(HostedDomain).include((x=>x.domain)).toArray())),labelPath:x=>x.domain.name,valuePath:x=>x.domainID,value:Bind.twoWaysImmediate((()=>this.model.domainID))})),XNode.create("div",{"data-layout":"flex-wrap-padding"},XNode.create(CollectionEditorEx,{label:"Phone",model:this.model,field:x=>x.phones,itemRenderer:item=>XNode.create("div",null,XNode.create("input",{value:Bind.sourceTwoWays(item,(x=>x.source.phoneNumberE64))}))}),XNode.create(CollectionEditorEx,{label:"Email",model:this.model,field:x=>x.emails,itemRenderer:item=>XNode.create("div",null,item.emailAddress?XNode.create("div",{text:item.emailAddress.emailAddress}):XNode.create("input",{value:Bind.sourceTwoWays(item,(x=>x.source.emailAddress))}))})),XNode.create("details",{open:true,"data-border":"frame"},XNode.create("summary",null,"Tax Numbers"),XNode.create("div",{"data-layout":"vertical-flex-stretch-items"},XNode.create(FormField,{label:"GST ID (GSTIN)"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.gstTaxID))})),XNode.create(FormField,{label:"Income TAX (PAN/TAX ID)"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.incomeTaxID))})),XNode.create(FormField,{label:"Sales TAX ID"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.salesTaxID))})))),XNode.create("div",{"data-layout":"sticky-command-row"},XNode.create(SaveIconTextButton,{"data-submit-event":"save-contact"}))))}))}saveContact(){return __awaiter(this,void 0,void 0,(function*(){yield this.contactService.save(this.model);return this.model}))}});__decorate([InjectProperty,__metadata("design:type",EntityService)],ContactEditorPage.prototype,"entityService",void 0);__decorate([InjectProperty,__metadata("design:type",ContactService)],ContactEditorPage.prototype,"contactService",void 0);__decorate([Action({onEvent:"save-contact",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],ContactEditorPage.prototype,"saveContact",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/contacts/ContactEditorPage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../model/model","@web-atoms/core/dist/core/InjectProperty","../../../../services/store/StoreOrderService","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/Expander","../../../controls/reference-editor/ReferenceEditor","../../../Sql","../../contacts/ContactEditorPage","../../../controls/collection-editor/CollectionEditorEx","@web-atoms/core/dist/core/Bind","@web-atoms/web-controls/dist/basic/AtomRepeater"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,ContentPage,StoreJournal,StoreJournalLineItem,InjectProperty,StoreOrderService,XNode,Form,Expander,ReferenceEditor,Sql,ContactEditorPage,CollectionEditorEx,Bind,AtomRepeater,EditOrderPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_modelModel){StoreJournal=_modelModel.StoreJournal;StoreJournalLineItem=_modelModel.StoreJournalLineItem},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesStoreStoreOrderService){StoreOrderService=_servicesStoreStoreOrderService.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicExpander){Expander=_webAtomsWebControlsDistBasicExpander.default},function(_controlsReferenceEditorReferenceEditor){ReferenceEditor=_controlsReferenceEditorReferenceEditor.default},function(_Sql){Sql=_Sql.Sql},function(_contactsContactEditorPage){ContactEditorPage=_contactsContactEditorPage.default},function(_controlsCollectionEditorCollectionEditorEx){CollectionEditorEx=_controlsCollectionEditorCollectionEditorEx.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default}],execute:function(){_export("default",EditOrderPage=class EditOrderPage extends ContentPage{init(){var _a;return __awaiter(this,void 0,void 0,(function*(){const storeID=this.parameters.storeID;if(!storeID){alert("StoreID must be present.");this.cancel();return}this.model=this.parameters.journalID?yield this.storeOrderService.get(this.parameters.journalID):StoreJournal.create(Object.assign(Object.assign({},this.parameters),{journalType:"sales-invoice",storeID,buyer:null,seller:null,lineItems:[StoreJournalLineItem.create({item:null,itemPrice:null,quantity:1})]}));this.renderer=XNode.create("div",{"data-layout":"vertical-flex-stretch-items"},XNode.create(Form,null,XNode.create(ReferenceEditor,{label:"Buyer",model:this.model,field:x=>x.buyer,editModelPage:ContactEditorPage,searchQuery:(q,search)=>(search?q.where({search,likeSearch:search+"%"},(p=>x=>Sql.text.iLike(x.name,p.likeSearch)||x.emails.some((e=>Sql.text.iLike(e.emailAddress.emailAddress,p.likeSearch)))||x.phones.some((e=>e.phoneNumberE64===p.search)))):q).where((x=>x.type!=="domain")).include((x=>[x.items,x.domains,x.addresses])).orderBy((x=>x.name)),itemRenderer:x=>XNode.create("div",{"data-layout":"flex-wrap"},XNode.create("label",{text:x.name}),XNode.create("label",{text:x.gstTaxID||x.incomeTaxID}))})),XNode.create(CollectionEditorEx,{label:"Items",model:this.model,field:x=>x.lineItems,addItemDefaults:{item:null,itemPrice:null,quantity:1},"event-item-deleted":ce=>this.onLineItemDeleted(ce.detail),itemRenderer:line=>XNode.create("div",{"data-layout":"row","data-align-items":"flex-start"},XNode.create(ReferenceEditor,{label:"",model:line,field:f=>f.item,addNewDefaults:{storeID},searchQuery:(q,search)=>(search?q.where({search,likeSearch:search+"%"},(p=>x=>Sql.text.iLike(x.name,p.likeSearch))):q).where({storeID},(p=>x=>x.storeID===p.storeID)),itemRenderer:x=>XNode.create("div",{text:x.name})}),XNode.create(ReferenceEditor,{label:"",model:line,field:f=>f.itemPrice,addNewDefaults:Bind.source(line,(x=>({storeItemID:x.source.itemID}))),"event-reference-updated":ce=>this.onItemPriceUpdated(line,ce.detail),searchQuery:(q,search)=>q.where({id:line.itemID},(p=>x=>x.storeItemID===p.id)),itemRenderer:x=>XNode.create("div",{text:`${x.currency} ${x.amount}`})}),XNode.create("input",{value:Bind.sourceTwoWays(line,(x=>x.source.quantity))}),XNode.create("input",{readOnly:true,value:Bind.source(line,(x=>x.source.amount))}),XNode.create("div",{"data-layout":"vertical-flex","style-padding":"0","style-overflow":"visible"},XNode.create(ReferenceEditor,{label:"",model:line,field:f=>f.taxFolder,"event-reference-updated":ce=>this.taxFolderUpdated(line,ce.detail),searchQuery:(q,search)=>search?q.where({search:search+"%"},(p=>x=>Sql.text.iLike(x.name,p.search))):q,itemRenderer:x=>XNode.create("div",{text:x.name})}),XNode.create(AtomRepeater,{items:Bind.source(line,(x=>x.source.relatedItems)),itemRenderer:ri=>XNode.create("div",{"data-layout":"row"},XNode.create("div",{text:Bind.source(ri,(x=>x.source.item?x.source.item.name:""))}),XNode.create("div",{text:Bind.source(ri,(x=>x.source.amount))}))})))}),XNode.create(Expander,{isExpanded:false,"data-border":"frame"},XNode.create("div",null,"Journal Entries"),XNode.create("table",null,XNode.create("tr",null,XNode.create("th",null,"Ledger"),XNode.create("th",null,"Debit"),XNode.create("th",null,"Credit"),XNode.create("th",{title:"Balance when entry was posted"},"Posted Balance")),...((_a=this.model.entries)!==null&&_a!==void 0?_a:[]).map((x=>XNode.create("tr",null,XNode.create("td",null,x.ledger.name),XNode.create("td",null,x.debit),XNode.create("td",null,x.credit),XNode.create("td",{title:"Balance when posted"},x.balance)))))))}))}onItemPriceUpdated(line,detail){line.amount=Number(detail.amount)}onLineItemDeleted(line){return __awaiter(this,void 0,void 0,(function*(){yield this.storeOrderService.deleteLineItem(this.model,line)}))}taxFolderUpdated(line,taxFolder){return __awaiter(this,void 0,void 0,(function*(){yield this.storeOrderService.updateTaxFolder(this.model,line,taxFolder)}))}});__decorate([InjectProperty,__metadata("design:type",StoreOrderService)],EditOrderPage.prototype,"storeOrderService",void 0)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/orders/EditOrderPage");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomRepeater","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../services/store/StoreService","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/core/Bind","../../commands/CommonCommands","../../controls/repeater/InfiniteRepeater","../../../services/store/StoreOrderService","../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action","@web-atoms/web-controls/dist/PageNavigator","./orders/EditOrderPage"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,XNode,AtomRepeater,ContentPage,StoreService,InjectProperty,Bind,CommonCommands,InfiniteRepeater,StoreOrderService,AddIconTextButton,Action,PageNavigator,EditOrderPage,StoreDetailPage;_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(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_servicesStoreStoreService){StoreService=_servicesStoreStoreService.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_commandsCommonCommands){CommonCommands=_commandsCommonCommands.default},function(_controlsRepeaterInfiniteRepeater){InfiniteRepeater=_controlsRepeaterInfiniteRepeater.default},function(_servicesStoreStoreOrderService){StoreOrderService=_servicesStoreStoreOrderService.default},function(_controlsButtonsIconButton){AddIconTextButton=_controlsButtonsIconButton.AddIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_ordersEditOrderPage){EditOrderPage=_ordersEditOrderPage.default}],execute:function(){_export("default",StoreDetailPage=class StoreDetailPage extends ContentPage{constructor(){super(...arguments);this.items=[];this.selectedItem=null;this.search=""}init(){return __awaiter(this,void 0,void 0,(function*(){this.model=yield this.storeService.get(this.parameters.id);this.title=`${this.model.name} Orders`;this.headerRenderer=()=>XNode.create("div",{"data-layout":"flex-wrap-padding"},XNode.create("input",{type:"search",value:Bind.twoWaysImmediate((()=>this.search))}),XNode.create("a",{"data-click-event":"route",href:CommonCommands.editProductList.displayRoute({storeID:this.parameters.id}),text:"Products"}));this.renderer=XNode.create("div",null,XNode.create("div",null,XNode.create(AtomRepeater,Object.assign({"data-layout":"data-grid",items:this.items},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.storeOrderService.list({storeID:this.parameters.id,start,search:this.search,cancelToken}))),{itemRenderer:item=>{var _a;return XNode.create("div",null,XNode.create("label",{text:item.journalID}),XNode.create("label",{text:item.journalType}),XNode.create("a",{text:(_a=item.buyer)===null||_a===void 0?void 0:_a.name,"data-click-event":"route"}))}}))));this.footerRenderer=()=>XNode.create("div",{"data-layout":"row"},XNode.create(AddIconTextButton,{"data-click-event":"create-order",text:"Create Order"}))}))}createOrder(){return __awaiter(this,void 0,void 0,(function*(){yield PageNavigator.pushPageForResult(EditOrderPage,{storeID:this.parameters.id})}))}});__decorate([InjectProperty,__metadata("design:type",StoreService)],StoreDetailPage.prototype,"storeService",void 0);__decorate([InjectProperty,__metadata("design:type",StoreOrderService)],StoreDetailPage.prototype,"storeOrderService",void 0);__decorate([Action({onEvent:"create-order"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],StoreDetailPage.prototype,"createOrder",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/StoreDetailPage");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,StoreItem,Sql,StoreItemService;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){StoreItem=_modelModel.StoreItem},function(_commonSql){Sql=_commonSql.Sql}],execute:function(){StoreItemService=class StoreItemService{get(id){return this.entityService.query(StoreItem).where({id},(p=>x=>x.storeItemID===p.id)).include((x=>[x.storeItemPrices,x.storeItemTags.forEach((t=>t.tag)),x.itemFolder,x.fileFolder])).firstOrDefault()}list({start=0,size=100,search="",storeID=void 0,cancelToken}){return __awaiter(this,void 0,void 0,(function*(){let q=this.entityService.query(StoreItem).where({storeID},(p=>x=>x.storeID===p.storeID));if(search){search=search+"%";q=q.where({search},(p=>x=>Sql.text.iLike(x.name,p.search)||Sql.text.iLike(x.description,p.search)))}return q.orderByDescending((x=>x.storeItemID)).include((x=>[x.itemFolder])).toPagedList({start,size,cancelToken})}))}save(storeItem){return __awaiter(this,void 0,void 0,(function*(){yield this.entityService.save(storeItem,(c=>c.include((x=>x.storeItemPrices)).include((x=>x.storeItemTags)).thenInclude((x=>x.tag))));return storeItem}))}};__decorate([Inject,__metadata("design:type",EntityService)],StoreItemService.prototype,"entityService",void 0);StoreItemService=__decorate([DISingleton()],StoreItemService);_export("default",StoreItemService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/services/store/StoreItemService");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/FormField","../../../../controls/countries/CountrySelect","@web-atoms/core/dist/core/Bind","@web-atoms/web-controls/dist/basic/DateField","../../../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,XNode,Form,FormField,CurrencySelect,Bind,DateField,SaveIconTextButton,Action,EditItemPricePage;_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(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_controlsCountriesCountrySelect){CurrencySelect=_controlsCountriesCountrySelect.CurrencySelect},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsWebControlsDistBasicDateField){DateField=_webAtomsWebControlsDistBasicDateField.default},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default}],execute:function(){_export("default",EditItemPricePage=class EditItemPricePage extends PopupWindowPage{init(){return __awaiter(this,void 0,void 0,(function*(){this.model=this.parameters;this.renderer=XNode.create("div",null,XNode.create(Form,null,XNode.create(FormField,{label:"Currency"},XNode.create(CurrencySelect,{value:Bind.twoWaysImmediate((()=>this.model.currency))})),XNode.create(FormField,{label:"Amount"},XNode.create("input",{type:"number",value:Bind.twoWaysImmediate((()=>this.model.amount))})),XNode.create(FormField,{label:"Start Date"},XNode.create(DateField,{value:Bind.twoWaysImmediate((()=>this.model.startDate))})),XNode.create(FormField,{label:"End Date"},XNode.create(DateField,{value:Bind.twoWaysImmediate((()=>this.model.endDate))})),XNode.create("div",{"data-layout":"command-row"},XNode.create(SaveIconTextButton,{"data-submit-event":"save-currency"}))))}))}saveCurrency(){return __awaiter(this,void 0,void 0,(function*(){return this.model}))}});__decorate([Action({onEvent:"save-currency",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],EditItemPricePage.prototype,"saveCurrency",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/products/prices/EditItemPricePage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../model/model","@web-atoms/core/dist/core/InjectProperty","../../../../services/EntityService","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/core/dist/core/Bind","../../../controls/reference-editor/ReferenceEditor","../../../Sql","../../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,StoreItemFolder,InjectProperty,EntityService,XNode,Form,FormField,Bind,ReferenceEditor,Sql,SaveIconTextButton,Action,EditItemFolderPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_modelModel){StoreItemFolder=_modelModel.StoreItemFolder},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_controlsReferenceEditorReferenceEditor){ReferenceEditor=_controlsReferenceEditorReferenceEditor.default},function(_Sql){Sql=_Sql.Sql},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default}],execute:function(){_export("default",EditItemFolderPage=class EditItemFolderPage extends PopupWindowPage{constructor(){super(...arguments);this.model=null}init(){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){this.model=((_a=this.parameters)===null||_a===void 0?void 0:_a.itemFolderID)?yield this.entityService.query(StoreItemFolder).where(this.parameters,(p=>x=>x.itemFolderID===p.itemFolderID)).firstOrDefault():StoreItemFolder.create({parent:null,storeID:(_b=this.parameters)===null||_b===void 0?void 0:_b.storeID});if(!this.parameters.storeID){alert("Store is not set");this.cancel();return}this.renderer=XNode.create("div",null,XNode.create(Form,null,XNode.create(FormField,{label:"Name"},XNode.create("input",{placeholder:"Name",value:Bind.twoWaysImmediate((()=>this.model.name)),autofocus:true})),XNode.create(ReferenceEditor,{label:"Folder",model:this.model,field:x=>x.parent,searchQuery:(q,search)=>(search?q.where({search},(p=>x=>Sql.text.startsWith(x.name,p.search))):q).orderBy((x=>x.path)),itemRenderer:x=>XNode.create("div",null,XNode.create("label",{text:x.name}))}),XNode.create("div",{"data-layout":"command-row"},XNode.create(SaveIconTextButton,{"data-submit-event":"save-folder"}))))}))}saveFolder(){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)],EditItemFolderPage.prototype,"entityService",void 0);__decorate([Action({onEvent:"save-folder",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],EditItemFolderPage.prototype,"saveFolder",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/folders/EditItemFolderPage");System.register(["tslib","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomChips","../../../services/EntityService","../../../model/model","../../Sql"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,Bind,InjectProperty,XNode,AtomChips,Chip,EntityService,Tag,Sql,TagChips;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicAtomChips){AtomChips=_webAtomsWebControlsDistBasicAtomChips.default;Chip=_webAtomsWebControlsDistBasicAtomChips.Chip},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_modelModel){Tag=_modelModel.Tag},function(_Sql){Sql=_Sql.Sql}],execute:function(){_export("default",TagChips=class TagChips extends AtomChips{preCreate(){super.preCreate();this.labelPath=x=>{var _a;return(_a=x.tag)===null||_a===void 0?void 0:_a.name};this.prompt="Tags";this.itemRenderer=x=>{var _a;return XNode.create(Chip,{deleted:x.$deleted,label:(_a=x.tag)===null||_a===void 0?void 0:_a.name})};this.enterKeyHint="enter";this.itemToChip=(item,name)=>({$deleted:false,tag:Tag.create({name})});this.render(XNode.create("div",{suggestions:Bind.oneWayAsync(((c,e,cancelToken)=>this.searchItems(cancelToken,this.search)),{watchDelayInMS:750})}));this.valuePath=x=>{var _a,_b;return(_b=(_a=x.tag)===null||_a===void 0?void 0:_a.tagID)!==null&&_b!==void 0?_b:x.tagID}}searchItems(cancelToken,search){return __awaiter(this,void 0,void 0,(function*(){let q=this.entityService.query(Tag);if(search){search=search.toLocaleLowerCase();q=q.where({search:search+"%"},(p=>x=>Sql.text.like(x.name,p.search)))}const items=yield q.orderBy((x=>x.name)).toPagedList({cancelToken,hideActivityIndicator:true,size:10});return items.items.map((tag=>({tag})))}))}});__decorate([InjectProperty,__metadata("design:type",EntityService)],TagChips.prototype,"entityService",void 0)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/controls/tags/TagChips");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../model/model","../../../../services/store/StoreItemService","@web-atoms/core/dist/core/InjectProperty","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/core/dist/core/Bind","./prices/EditItemPricePage","@web-atoms/web-controls/dist/basic/Select","../../../controls/reference-editor/ReferenceEditor","../../../Sql","../folders/EditItemFolderPage","../../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action","../../../commands/CommonCommands","../../../controls/collection-editor/CollectionEditorEx","../../../controls/tags/TagChips"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,XNode,Form,ContentPage,StoreItem,StoreItemItemTypeArray,StoreItemService,InjectProperty,FormField,Bind,EditItemPricePage,Select,ReferenceEditor,Sql,EditItemFolderPage,SaveIconTextButton,Action,CommonCommands,CollectionEditorEx,TagChips,EditProductDetailPage;_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(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_modelModel){StoreItem=_modelModel.StoreItem;StoreItemItemTypeArray=_modelModel.StoreItemItemTypeArray},function(_servicesStoreStoreItemService){StoreItemService=_servicesStoreStoreItemService.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_pricesEditItemPricePage){EditItemPricePage=_pricesEditItemPricePage.default},function(_webAtomsWebControlsDistBasicSelect){Select=_webAtomsWebControlsDistBasicSelect.default},function(_controlsReferenceEditorReferenceEditor){ReferenceEditor=_controlsReferenceEditorReferenceEditor.default},function(_Sql){Sql=_Sql.Sql},function(_foldersEditItemFolderPage){EditItemFolderPage=_foldersEditItemFolderPage.default},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_commandsCommonCommands){CommonCommands=_commandsCommonCommands.default},function(_controlsCollectionEditorCollectionEditorEx){CollectionEditorEx=_controlsCollectionEditorCollectionEditorEx.default},function(_controlsTagsTagChips){TagChips=_controlsTagsTagChips.default}],execute:function(){_export("default",EditProductDetailPage=class EditProductDetailPage extends ContentPage{constructor(){super(...arguments);this.model=null}init(){var _a;var _b;return __awaiter(this,void 0,void 0,(function*(){this.model=this.parameters.storeItemID?yield this.storeItemService.get(this.parameters.storeItemID):StoreItem.create({storeID:this.parameters.storeID,name:"",itemFolder:null});const{storeID}=this.model;if(!storeID){alert("StoreID must be present.");this.cancel();return}this.headerRenderer=()=>XNode.create("div",{"data-layout":"header-row"},XNode.create("nav",{"data-layout":"row"},XNode.create("a",{"data-click-event":"route",href:CommonCommands.editStore.displayRoute({id:storeID})},"Store"),XNode.create("a",{"data-click-event":"route",href:CommonCommands.editProductList.displayRoute({storeID})},"Products")));(_a=(_b=this.model).storeItemTags)!==null&&_a!==void 0?_a:_b.storeItemTags=[];this.renderer=XNode.create("div",null,XNode.create(Form,null,XNode.create("div",{"data-layout":"frame-vertical-flex"},XNode.create(FormField,{label:"Type"},XNode.create(Select,{labelPath:x=>x.label[0].toUpperCase()+x.label.substring(1),valuePath:x=>x.value,value:Bind.twoWaysImmediate((()=>this.model.itemType)),items:StoreItemItemTypeArray})),XNode.create(ReferenceEditor,{label:"Folder",model:this.model,field:x=>x.itemFolder,addNewDefaults:{storeID:this.model.storeID},editModelPage:EditItemFolderPage,searchQuery:(q,search)=>(search?q.where({search},(p=>x=>Sql.text.startsWith(x.name,p.search))):q).where({storeID:this.model.storeID},(p=>x=>x.storeID===p.storeID)).orderBy((x=>x.name)),itemRenderer:x=>XNode.create("div",{text:x.name})}),XNode.create(FormField,{label:"Name"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.name))})),XNode.create(FormField,{label:"Description"},XNode.create("textarea",{rows:"5",cols:"80",value:Bind.twoWaysImmediate((()=>this.model.name))}))),XNode.create(CollectionEditorEx,{label:"Prices",model:this.model,field:x=>x.storeItemPrices,addPage:EditItemPricePage,itemRenderer:item=>XNode.create("tr",null,XNode.create("td",{text:item.currency}),XNode.create("td",{text:item.amount}),XNode.create("td",{text:item.startDate}),XNode.create("td",{text:item.endDate}))}),XNode.create(TagChips,{items:Bind.twoWaysImmediate((()=>this.model.storeItemTags))}),XNode.create("div",{"data-layout":"sticky-command-row"},XNode.create(SaveIconTextButton,{"data-submit-event":"save-product"}))))}))}saveProduct(){return __awaiter(this,void 0,void 0,(function*(){yield this.storeItemService.save(this.model)}))}});__decorate([InjectProperty,__metadata("design:type",StoreItemService)],EditProductDetailPage.prototype,"storeItemService",void 0);__decorate([Action({onEvent:"save-product"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],EditProductDetailPage.prototype,"saveProduct",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/products/EditProductDetailPage");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/store/StoreItemService","../../../commands/CommonCommands","@web-atoms/core/dist/view-model/Action","@web-atoms/core/dist/core/Bind","./EditProductDetailPage","@web-atoms/web-controls/dist/basic/InlinePopup","@web-atoms/web-controls/dist/basic/PopupButton","@web-atoms/web-controls/dist/PageNavigator"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,ContentPage,XNode,AtomRepeater,InfiniteRepeater,InjectProperty,StoreItemService,CommonCommands,Action,Bind,EditProductDetailPage,InlinePopupButton,MenuItem,PageNavigator,EditProductListPage;_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(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_controlsRepeaterInfiniteRepeater){InfiniteRepeater=_controlsRepeaterInfiniteRepeater.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesStoreStoreItemService){StoreItemService=_servicesStoreStoreItemService.default},function(_commandsCommonCommands){CommonCommands=_commandsCommonCommands.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_EditProductDetailPage){EditProductDetailPage=_EditProductDetailPage.default},function(_webAtomsWebControlsDistBasicInlinePopup){InlinePopupButton=_webAtomsWebControlsDistBasicInlinePopup.InlinePopupButton},function(_webAtomsWebControlsDistBasicPopupButton){MenuItem=_webAtomsWebControlsDistBasicPopupButton.MenuItem},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default}],execute:function(){_export("default",EditProductListPage=class EditProductListPage extends ContentPage{constructor(){super(...arguments);this.search="";this.items=[];this.selectedItem=null}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(InlinePopupButton,{icon:"fas fa-plus",text:"Add",popup:()=>XNode.create("div",null,XNode.create(MenuItem,{"data-click-event":"add-item","data-item-type":"product",label:"Product"}),XNode.create(MenuItem,{"data-click-event":"add-item","data-item-type":"service",label:"Service"}),XNode.create(MenuItem,{"data-click-event":"add-item","data-item-type":"tax",label:"Tax"}))}));this.renderer=XNode.create("div",null,XNode.create("div",null,XNode.create(AtomRepeater,Object.assign({"data-layout":"data-grid",items:this.items},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.storeItemService.list({storeID:this.parameters.storeID,start,search:this.search,cancelToken}))),{itemRenderer:item=>{var _a;return XNode.create("div",null,XNode.create("label",{text:item.storeItemID}),XNode.create("label",{text:item.itemType}),XNode.create("label",{text:(_a=item.itemFolder)===null||_a===void 0?void 0:_a.name}),XNode.create("a",{text:item.name,"data-click-event":"route",href:CommonCommands.editProduct.displayRoute({storeItemID:item.storeItemID})}))}}))))}))}addNew({itemType}){return __awaiter(this,void 0,void 0,(function*(){const product=yield PageNavigator.pushPageForResult(EditProductDetailPage,{storeID:this.parameters.storeID});this.items.add(product);this.selectedItem=product}))}});__decorate([InjectProperty,__metadata("design:type",StoreItemService)],EditProductListPage.prototype,"storeItemService",void 0);__decorate([Action({onEvent:"add-item"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],EditProductListPage.prototype,"addNew",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/products/EditProductListPage");System.register(["@web-atoms/core/dist/core/Command","../apiPath"],(function(_export,_context){"use strict";var Command,Commands,apiPathRoot,CommonCommands;_export("default",void 0);return{setters:[function(_webAtomsCoreDistCoreCommand){Command=_webAtomsCoreDistCoreCommand.default;Commands=_webAtomsCoreDistCoreCommand.Commands},function(_apiPath){apiPathRoot=_apiPath.apiPathRoot}],execute:function(){Command.routePrefix=apiPathRoot;_export("default",CommonCommands=class CommonCommands extends Commands{});CommonCommands.openMailbox=Command.create({route:"/mailbox/{id}",routeOrder:50,openPage:()=>_context.import("../../web/page/mails/MailboxContacts")});CommonCommands.openChannel=Command.create({route:"/channel/{id}",routeOrder:50,openPage:()=>_context.import("../../web/page/channels/detail/ChannelDetailPage")});CommonCommands.openSubscribers=Command.create({route:"/mailbox-subscribers/{id}",routeOrder:50,openPage:()=>_context.import("../../web/page/channels/subscribers/ChannelSubscribersPage")});CommonCommands.openDrives=Command.create({route:"/drives",routeOrder:100,openPage:()=>_context.import("../pages/drives/DriveListPage")});CommonCommands.manageWebSite=Command.create({route:"/studio/manage/{id}",routeOrder:100,openPage:()=>_context.import("../pages/websites/manage/ManageWebSitePage")});CommonCommands.editWebSite=Command.create({route:"/studio/edit/{id}",routeOrder:100,openPage:()=>_context.import("../pages/websites/studio/WebSiteStudioPage")});CommonCommands.changePassword=Command.create({route:"/user/change-password",pushPage:()=>_context.import("../pages/user/change-password/ChangePasswordPage")});CommonCommands.setupMultiFactor=Command.create({route:"/user/multi-factor/setup",pushPage:()=>_context.import("../pages/user/multi-factor/MultiFactorSetupPage")});CommonCommands.openWebSiteList=Command.create({route:"/websites",routeOrder:2e3,openPage:()=>_context.import("../pages/websites/list/WebSiteListPage")});CommonCommands.editStore=Command.create({route:"/stores/detail/{id}",routeOrder:100,openPage:()=>_context.import("../pages/stores/StoreDetailPage")});CommonCommands.editProductList=Command.create({route:"/stores/{storeID}",routeOrder:500,openPage:()=>_context.import("../pages/stores/products/EditProductListPage")});CommonCommands.editProduct=Command.create({route:"/stores/product/{storeItemID}",routeOrder:200,openPage:()=>_context.import("../pages/stores/products/EditProductDetailPage")})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/commands/CommonCommands");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../model/model","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/FormField","../../../controls/form/RequiredFormField","@web-atoms/core/dist/core/Bind","@web-atoms/web-controls/dist/basic/Checkbox","../../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action","../../../../services/EntityService"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,MailboxSyncTarget,XNode,Form,FormField,PasswordFormField,TextFormField,Bind,Checkbox,SaveIconTextButton,Action,EntityService,EditSyncTargetPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_modelModel){MailboxSyncTarget=_modelModel.MailboxSyncTarget},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_controlsFormRequiredFormField){PasswordFormField=_controlsFormRequiredFormField.PasswordFormField;TextFormField=_controlsFormRequiredFormField.TextFormField},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsWebControlsDistBasicCheckbox){Checkbox=_webAtomsWebControlsDistBasicCheckbox.default},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_servicesEntityService){EntityService=_servicesEntityService.default}],execute:function(){_export("default",EditSyncTargetPage=class EditSyncTargetPage extends PopupWindowPage{init(){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){this.model=((_a=this.parameters)===null||_a===void 0?void 0:_a.syncTargetID)?this.parameters:MailboxSyncTarget.create(Object.assign(Object.assign({},(_b=this.parameters)!==null&&_b!==void 0?_b:{}),{active:true,port:993,isSecure:true,newPassword:"",intervalSeconds:86400}));this.title="Create Sync Target";this.renderer=XNode.create("div",null,XNode.create(Form,null,XNode.create(FormField,{label:"Protocol"},XNode.create("div",{"data-layout":"row"},XNode.create("span",{text:this.model.protocol}),XNode.create("span",{text:this.model.direction}))),XNode.create(TextFormField,{label:"Host",value:()=>this.model.host}),XNode.create(TextFormField,{label:"Port",value:()=>this.model.port}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.model.isSecure)),text:"SSL Enabled"}),XNode.create(TextFormField,{label:"Username",value:()=>this.model.username}),XNode.create(PasswordFormField,{label:"Password",value:()=>this.model.newPassword}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.model.syncAllFolders)),text:"Sync All Folders (Slow, Not Recommended)"}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.model.syncJunkMails)),text:"Sync Junk/Spam Folder (Slow, Not Recommended)"}),XNode.create(FormField,{label:"Name of All Folder"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.allFolderName))})),XNode.create("p",null,"Leave it empty if your mailbox supports new IMAP extensions for All Folders.",XNode.create("br",null),"If specified, only this folder will be synced."),XNode.create("div",{"data-layout":"command-row"},XNode.create(SaveIconTextButton,{"data-submit-event":"save-form",text:"Save"}))))}))}saveForm(){return __awaiter(this,void 0,void 0,(function*(){if(this.model.syncTargetID){const es=this.resolve(EntityService);yield es.save(es.cloner(this.model).copy)}return this.model}))}});__decorate([Action({onEvent:"save-form",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],EditSyncTargetPage.prototype,"saveForm",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/mailboxes/settings/EditSyncTargetPage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/XNode","../../controls/collection-editor/CollectionEditor","./settings/EditSyncTargetPage","./services/MailboxService","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/view-model/Action","@web-atoms/core/dist/web/services/PopupService"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,ContentPage,XNode,CollectionEditor,EditSyncTargetPage,MailboxService,InjectProperty,Action,PopupService,MailboxDetailPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_controlsCollectionEditorCollectionEditor){CollectionEditor=_controlsCollectionEditorCollectionEditor.default},function(_settingsEditSyncTargetPage){EditSyncTargetPage=_settingsEditSyncTargetPage.default},function(_servicesMailboxService){MailboxService=_servicesMailboxService.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsCoreDistWebServicesPopupService){PopupService=_webAtomsCoreDistWebServicesPopupService.default}],execute:function(){_export("default",MailboxDetailPage=class MailboxDetailPage extends ContentPage{init(){return __awaiter(this,void 0,void 0,(function*(){this.model=yield this.mailboxService.get(this.parameters.mailboxID);this.title=this.model.emailAddress.emailAddress;const username=this.model.emailAddress.emailAddress;const host=`imap.${username.split("@").pop()}`;this.renderer=XNode.create("div",null,XNode.create(CollectionEditor,{label:"Sync Targets",model:this.model,collection:"syncTargets",addPage:EditSyncTargetPage,addItemDefaults:{username,host},itemRenderer:item=>XNode.create("div",null,XNode.create("span",null,XNode.create("span",{text:item.protocol})),XNode.create("span",null,XNode.create("span",{text:item.username})),XNode.create("span",null,XNode.create("span",{text:item.host})),XNode.create("span",null,item.active?XNode.create("i",{"data-click-event":"pause-sync",class:"fas fa-pause",title:"Pause Sync"}):XNode.create("i",{"data-click-event":"start-sync",class:"fas fa-play",title:"Start Sync"})),XNode.create("span",null,XNode.create("i",{"data-click-event":"check-sync-logs",class:"fas fa-circle-info",title:"Check Logs"})))}))}))}pauseSync(item){return __awaiter(this,void 0,void 0,(function*(){item.active=false;yield this.mailboxService.saveSyncTarget(item);yield this.init()}))}startSync(item){return __awaiter(this,void 0,void 0,(function*(){item.active=true;yield this.mailboxService.saveSyncTarget(item);yield this.init()}))}checkSyncLogs(item){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){const syncState=JSON.parse((_a=item.syncLog)!==null&&_a!==void 0?_a:"{}");yield PopupService.alert({message:XNode.create("div",null,XNode.create("pre",null,...((_b=syncState.log)!==null&&_b!==void 0?_b:[]).map((x=>[XNode.create("span",{text:x}),XNode.create("br",null)])).flat(2)))})}))}});__decorate([InjectProperty,__metadata("design:type",MailboxService)],MailboxDetailPage.prototype,"mailboxService",void 0);__decorate([Action({onEvent:"pause-sync",confirm:"Are you sure you want to pause the sync?"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MailboxDetailPage.prototype,"pauseSync",null);__decorate([Action({onEvent:"start-sync",confirm:"Are you sure you want to start the sync?"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MailboxDetailPage.prototype,"startSync",null);__decorate([Action({onEvent:"check-sync-logs"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MailboxDetailPage.prototype,"checkSyncLogs",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/mailboxes/MailboxDetailPage");System.register(["tslib","@web-atoms/core/dist/core/XNode"],(function(_export,_context){"use strict";var __rest,XNode,IconClass,Icon;_export({default:void 0,Icon:void 0});return{setters:[function(_tslib){__rest=_tslib.__rest},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default}],execute:function(){_export("default",IconClass=class IconClass{static forMailbox(mb){return mb.isChannel?mb.isPrivateChannel?"fas fa-users-rectangle":"fas fa-users":"fas fa-envelope"}});_export("Icon",Icon=class Icon{static Mailbox(_a){var{mailbox}=_a,a=__rest(_a,["mailbox"]);return XNode.create("i",Object.assign({},a,{class:IconClass.forMailbox(mailbox)}))}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/icons/Icons");System.register(["tslib","@web-atoms/core/dist/di/DITransient","@web-atoms/core/dist/di/Inject","../../../../services/EntityService","../../../../model/model","@web-atoms/date-time/dist/DateTime"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,DITransient,Inject,EntityService,HostedDomain,Mailbox,MailboxSyncTarget,DateTime,ExternalMailboxService;return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistDiDITransient){DITransient=_webAtomsCoreDistDiDITransient.default},function(_webAtomsCoreDistDiInject){Inject=_webAtomsCoreDistDiInject.Inject},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_modelModel){HostedDomain=_modelModel.HostedDomain;Mailbox=_modelModel.Mailbox;MailboxSyncTarget=_modelModel.MailboxSyncTarget},function(_webAtomsDateTimeDistDateTime){DateTime=_webAtomsDateTimeDistDateTime.default}],execute:function(){ExternalMailboxService=class ExternalMailboxService{createDomain(emailAddress,retry=3){return __awaiter(this,void 0,void 0,(function*(){try{const index=emailAddress.lastIndexOf("@");let domainName=emailAddress;if(index!==-1){domainName=emailAddress.substring(index+1)}domainName=domainName.toLocaleLowerCase();const d=yield this.entityService.query(HostedDomain).where({domainName},(p=>x=>x.domain.name===p.domainName)).firstOrDefault();if(d){return d}const hd=HostedDomain.create({domainNameToCreate:domainName,external:true});return yield this.entityService.save(hd)}catch(error){if(retry--){return yield this.createDomain(emailAddress,retry-1)}throw error}}))}createMailbox(model){return __awaiter(this,void 0,void 0,(function*(){const{emailAddress,displayName:name,username,password,imapHost,imapPort,imapSecure,smtpHost,smtpPort,smtpSecure,smtpUsername,smtpPassword}=model;const hd=yield this.createDomain(emailAddress);const dateCreated=DateTime.now;const[emailUsername]=emailAddress.split("@");const mb=Mailbox.create({domainID:hd.domainID,username:emailUsername,name,dateCreated,dateUpdated:dateCreated,indexAttachments:true,indexImageAttachments:true,syncTargets:[MailboxSyncTarget.create({protocol:"imap",host:imapHost,port:imapPort,isSecure:imapSecure,username,newPassword:password,direction:"in",active:true}),MailboxSyncTarget.create({protocol:"smtp",host:smtpHost,port:smtpPort,isSecure:smtpSecure,username:smtpUsername||username,newPassword:smtpPassword||password,direction:"in",active:true})]});yield this.entityService.save(mb)}))}};__decorate([Inject,__metadata("design:type",EntityService)],ExternalMailboxService.prototype,"entityService",void 0);ExternalMailboxService=__decorate([DITransient()],ExternalMailboxService);_export("default",ExternalMailboxService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/mailboxes/services/ExternalMailboxService");System.register(["tslib","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/view-model/Action","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/web-controls/dist/basic/PasswordBox","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../controls/buttons/IconButton","@web-atoms/core/dist/core/InjectProperty","../services/ExternalMailboxService","@web-atoms/web-controls/dist/basic/Checkbox"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,Bind,XNode,Action,Form,FormField,PasswordBox,PopupWindowPage,AddIconButton,InjectProperty,ExternalMailboxService,Checkbox,AddExternalMailboxPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_webAtomsWebControlsDistBasicPasswordBox){PasswordBox=_webAtomsWebControlsDistBasicPasswordBox.default},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_controlsButtonsIconButton){AddIconButton=_controlsButtonsIconButton.AddIconButton},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesExternalMailboxService){ExternalMailboxService=_servicesExternalMailboxService.default},function(_webAtomsWebControlsDistBasicCheckbox){Checkbox=_webAtomsWebControlsDistBasicCheckbox.default}],execute:function(){_export("default",AddExternalMailboxPage=class AddExternalMailboxPage extends PopupWindowPage{constructor(){super(...arguments);this.model={emailAddress:"",displayName:"",imapHost:"",imapPort:993,imapSecure:true,smtpHost:"",smtpPort:465,smtpSecure:true,username:"",password:"",smtpUsername:"",smtpPassword:""}}init(){return __awaiter(this,void 0,void 0,(function*(){this.title="Add External Mailbox";this.renderer=XNode.create("div",{"style-max-width":"400px"},XNode.create("div",null,"Use this form only if you do not own the domain of the email address. If you plan to migrate domain back to this server, we recommend creating hosted mailbox and add sync account to migrate your emails."),XNode.create("hr",null),XNode.create(Form,null,XNode.create(FormField,{label:"Display/From Name"},XNode.create("input",{autofocus:true,value:Bind.twoWaysImmediate((()=>this.model.displayName))})),XNode.create(FormField,{label:"Email Address"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.emailAddress))})),XNode.create(FormField,{label:"Username"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.username))})),XNode.create(FormField,{label:"Password"},XNode.create(PasswordBox,{value:Bind.twoWaysImmediate((()=>this.model.password))})),XNode.create(FormField,{label:"IMAP (Server/Host)"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.imapHost))})),XNode.create(FormField,{label:"IMAP Port"},XNode.create("div",{"data-layout":"row"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.imapPort))}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.model.imapSecure)),text:"Secure"}))),XNode.create(FormField,{label:"SMTP (Server/Host)"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.smtpHost))})),XNode.create(FormField,{label:"SMTP Port"},XNode.create("div",{"data-layout":"row"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.smtpPort))}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.model.smtpSecure)),text:"Secure"}))),XNode.create("div",{"data-layout":"sticky-command-row"},XNode.create(AddIconButton,{"data-submit-event":"add-new-mailbox",text:"Add Mailbox"}))))}))}onInput(){return __awaiter(this,void 0,void 0,(function*(){if(this.model.imapHost){return}const{emailAddress}=this.model;if(!emailAddress){return}if(emailAddress.indexOf("@")===-1){return}const domain=emailAddress.split("@").pop();if(domain.length<=5){return}this.model.imapHost=`imap.${domain}`;this.model.smtpHost=`smtp.${domain}`;this.model.username=emailAddress}))}addNewMailbox(){return this.externalMailboxService.createMailbox(this.model)}});__decorate([InjectProperty,__metadata("design:type",ExternalMailboxService)],AddExternalMailboxPage.prototype,"externalMailboxService",void 0);__decorate([Action({onEvent:"input",defer:1e3}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],AddExternalMailboxPage.prototype,"onInput",null);__decorate([Action({onEvent:"add-new-mailbox",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",void 0)],AddExternalMailboxPage.prototype,"addNewMailbox",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/mailboxes/external-mailboxes/AddExternalMailboxPage");System.register(["tslib","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomRepeater","../../controls/repeater/InfiniteRepeater","./services/MailboxService","@web-atoms/core/dist/core/InjectProperty","../../../model/model","@web-atoms/core/dist/view-model/Action","@web-atoms/web-controls/dist/PageNavigator","./MailboxEditorPage","../../NumberFormats","../../commands/CommonCommands","@web-atoms/web-controls/dist/mobile-app/MasterDetailPage","@web-atoms/core/dist/style/styled","./MailboxDetailPage","@web-atoms/web-controls/dist/basic/ComboBox","../../icons/Icons","@web-atoms/web-controls/dist/basic/InlinePopup","@web-atoms/web-controls/dist/basic/PopupButton","./external-mailboxes/AddExternalMailboxPage"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,Bind,XNode,AtomRepeater,InfiniteRepeater,MailboxService,InjectProperty,Domain,Action,PageNavigator,MailboxEditorPage,toFileSize,CommonCommands,MasterDetailPage,styled,MailboxDetailPage,ComboBox,Icon,InlinePopupButton,MenuItem,AddExternalMailboxPage,MailboxListPage,css;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_controlsRepeaterInfiniteRepeater){InfiniteRepeater=_controlsRepeaterInfiniteRepeater.default},function(_servicesMailboxService){MailboxService=_servicesMailboxService.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_modelModel){Domain=_modelModel.Domain},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_MailboxEditorPage){MailboxEditorPage=_MailboxEditorPage.default},function(_NumberFormats){toFileSize=_NumberFormats.toFileSize},function(_commandsCommonCommands){CommonCommands=_commandsCommonCommands.default},function(_webAtomsWebControlsDistMobileAppMasterDetailPage){MasterDetailPage=_webAtomsWebControlsDistMobileAppMasterDetailPage.default},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default},function(_MailboxDetailPage){MailboxDetailPage=_MailboxDetailPage.default},function(_webAtomsWebControlsDistBasicComboBox){ComboBox=_webAtomsWebControlsDistBasicComboBox.default},function(_iconsIcons){Icon=_iconsIcons.Icon},function(_webAtomsWebControlsDistBasicInlinePopup){InlinePopupButton=_webAtomsWebControlsDistBasicInlinePopup.InlinePopupButton},function(_webAtomsWebControlsDistBasicPopupButton){MenuItem=_webAtomsWebControlsDistBasicPopupButton.MenuItem},function(_externalMailboxesAddExternalMailboxPage){AddExternalMailboxPage=_externalMailboxesAddExternalMailboxPage.default}],execute:function(){css=styled.css`
4480
+ `.installGlobal("div[data-collection-editor]");hasKeys=(model,schema)=>{for(const iterator of schema.schema.keys){if(!model[iterator.name]){return false}}return true};_export("default",CollectionEditorEx=class CollectionEditorEx extends AtomControl{constructor(app,e=document.createElement("details")){super(app,e);this.label="";this.model=null;this.field=null;this.pageResultToItem=null;this.itemFactory=null;this.addPage=null;this.editPage=null;this.itemRenderer=null;this.autoFocus=false;this.saveAfterAdd=true;this.addItemDefaults=null;this.schema=null;this.items=[];this.fieldName=null;this.relation=null;this.runAfterInit((()=>this.app.runAsync((()=>this.init()))))}init(){return __awaiter(this,void 0,void 0,(function*(){const fieldName=ExpressionParser.parsePath(this.field)[0][0];this.fieldName=fieldName;const fx=()=>{var _a;var _b,_c;return(_a=(_b=this.model)[_c=this.fieldName])!==null&&_a!==void 0?_a:_b[_c]=[]};fx.toString=()=>`() => this.model.${this.fieldName}`;this.renderer=XNode.create("details",{"data-border":"frame",open:true,items:Bind.oneWay(fx),schema:Bind.oneWay((()=>modelEntitySchemas[this.model.$type])),relation:Bind.oneWay((()=>this.schema.schema.relations.find((x=>x.name===this.fieldName))))},XNode.create("summary",{text:Bind.oneWay((()=>this.label))}),XNode.create("div",null,XNode.create(AtomRepeater,{presenter:Bind.presenter((c=>this.repeater=c)),"data-layout":"data-grid","event-delete-collection-item":ce=>this.deleteItem(ce.detail),items:Bind.oneWay((()=>this.items)),footer:true,itemRenderer:item=>{const node=this.itemRenderer(item);node.children.push(XNode.create("span",null,XNode.create(DeleteIconButton,{"data-click-event":"delete-collection-item"})));return node}}),XNode.create("div",null,XNode.create(AddIconTextButton,{"event-click":()=>this.onAddItem(),text:"Add New"}))))}))}deleteItem(item){return __awaiter(this,void 0,void 0,(function*(){const{items,repeater}=this;if(typeof item.$deleted==="undefined"){items.remove(item);return}item.$deleted=true;const es=repeater.app.resolve(EntityService);const copy=es.cloner(item).copy;yield es.save(copy);items.remove(item)}))}onAddItem(){var _a;return __awaiter(this,void 0,void 0,(function*(){const{repeater,addPage,addItemDefaults,pageResultToItem,itemFactory,model,schema}=this;const es=this.resolve(EntityService);let newItem;if(addPage){const result=yield PageNavigator.pushPageForResult(addPage,Object.assign({},addItemDefaults!==null&&addItemDefaults!==void 0?addItemDefaults:{}));newItem=pageResultToItem?pageResultToItem(result):result}else{newItem=(_a=itemFactory===null||itemFactory===void 0?void 0:itemFactory())!==null&&_a!==void 0?_a:this.relation.relatedModel.create(Object.assign({},addItemDefaults!==null&&addItemDefaults!==void 0?addItemDefaults:{}))}if(!newItem){return}if(newItem===null||newItem===void 0?void 0:newItem.then){newItem=yield newItem}if(hasKeys(model,schema)&&this.saveAfterAdd){const draft=Object.assign(Object.assign({},model),{[this.fieldName]:[newItem]});let clone=es.cloner(draft);clone=clone.include((x=>x[this.fieldName]));yield es.save(clone.copy)}repeater.items.add(newItem)}))}});__decorate([InjectProperty,__metadata("design:type",EntityService)],CollectionEditorEx.prototype,"entityService",void 0);__decorate([Action({confirm:"Are you sure you want to delete this?",confirmTitle:"Confirm Delete"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],CollectionEditorEx.prototype,"deleteItem",null);__decorate([Action({}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],CollectionEditorEx.prototype,"onAddItem",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/controls/collection-editor/CollectionEditorEx");System.register(["tslib","@web-atoms/core/dist/di/Inject","../EntityService","../../model/model","@web-atoms/core/dist/di/DISingleton"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,Inject,EntityService,Contact,DISingleton,ContactService;return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistDiInject){Inject=_webAtomsCoreDistDiInject.Inject},function(_EntityService){EntityService=_EntityService.default},function(_modelModel){Contact=_modelModel.Contact},function(_webAtomsCoreDistDiDISingleton){DISingleton=_webAtomsCoreDistDiDISingleton.default}],execute:function(){ContactService=class ContactService{get(id){return __awaiter(this,void 0,void 0,(function*(){return this.entityService.query(Contact).where({id},(p=>x=>x.contactID===p.id)).include((x=>[x.addresses,x.items,x.emails,x.phones,x.domain])).firstOrDefault()}))}save(contact){return __awaiter(this,void 0,void 0,(function*(){yield this.entityService.save(contact,(c=>c.include((x=>x.addresses)).include((x=>x.items)).include((x=>x.emails)).include((x=>x.phones))))}))}};__decorate([Inject,__metadata("design:type",EntityService)],ContactService.prototype,"entityService",void 0);ContactService=__decorate([DISingleton()],ContactService);_export("default",ContactService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/services/contacts/ContactService");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../model/model","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/core/dist/core/Bind","@web-atoms/web-controls/dist/basic/ToggleButtonBar","@web-atoms/web-controls/dist/basic/Select","@web-atoms/core/dist/core/InjectProperty","../../../services/EntityService","../../controls/collection-editor/CollectionEditorEx","../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action","../../../services/contacts/ContactService"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,Contact,ContactEmail,ContactPhone,HostedDomain,XNode,Form,FormField,Bind,ToggleButtonBar,Select,InjectProperty,EntityService,CollectionEditorEx,SaveIconTextButton,Action,ContactService,ContactEditorPage,contactTypes;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_modelModel){Contact=_modelModel.Contact;ContactEmail=_modelModel.ContactEmail;ContactPhone=_modelModel.ContactPhone;HostedDomain=_modelModel.HostedDomain},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsWebControlsDistBasicToggleButtonBar){ToggleButtonBar=_webAtomsWebControlsDistBasicToggleButtonBar.default},function(_webAtomsWebControlsDistBasicSelect){Select=_webAtomsWebControlsDistBasicSelect.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_controlsCollectionEditorCollectionEditorEx){CollectionEditorEx=_controlsCollectionEditorCollectionEditorEx.default},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_servicesContactsContactService){ContactService=_servicesContactsContactService.default}],execute:function(){contactTypes=[{label:"Company",value:"company"},{label:"Person",value:"person"}];_export("default",ContactEditorPage=class ContactEditorPage extends PopupWindowPage{constructor(){super(...arguments);this.model=null}init(){var _a;return __awaiter(this,void 0,void 0,(function*(){this.model=((_a=this.parameters)===null||_a===void 0?void 0:_a.contactID)?yield this.contactService.get(this.parameters.contactID):Contact.create({type:"person",name:"",emails:[ContactEmail.create({emailAddressText:"",emailAddressID:null})],phones:[ContactPhone.create({phoneNumberE64:""})]});this.title=this.model.contactID?"Edit "+this.model.name:"Add New Contact";this.renderer=XNode.create("div",null,XNode.create(Form,null,XNode.create(FormField,{label:"Name",required:true,error:Bind.oneWay((()=>this.model.name?"":"Name is required"))},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.name)),autofocus:true})),XNode.create(FormField,{label:"Type"},XNode.create(ToggleButtonBar,{items:contactTypes,labelPath:x=>x.label,valuePath:x=>x.value,value:Bind.twoWaysImmediate((()=>this.model.type))})),XNode.create(FormField,{label:"Domain"},XNode.create(Select,{items:Bind.oneWay((()=>this.entityService.query(HostedDomain).include((x=>x.domain)).toArray())),labelPath:x=>x.domain.name,valuePath:x=>x.domainID,value:Bind.twoWaysImmediate((()=>this.model.domainID))})),XNode.create("div",{"data-layout":"flex-wrap-padding"},XNode.create(CollectionEditorEx,{label:"Phone",model:this.model,field:x=>x.phones,itemRenderer:item=>XNode.create("div",null,XNode.create("input",{value:Bind.sourceTwoWays(item,(x=>x.source.phoneNumberE64))}))}),XNode.create(CollectionEditorEx,{label:"Email",model:this.model,field:x=>x.emails,itemRenderer:item=>XNode.create("div",null,item.emailAddress?XNode.create("div",{text:item.emailAddress.emailAddress}):XNode.create("input",{value:Bind.sourceTwoWays(item,(x=>x.source.emailAddress))}))})),XNode.create("details",{open:true,"data-border":"frame"},XNode.create("summary",null,"Tax Numbers"),XNode.create("div",{"data-layout":"vertical-flex-stretch-items"},XNode.create(FormField,{label:"GST ID (GSTIN)"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.gstTaxID))})),XNode.create(FormField,{label:"Income TAX (PAN/TAX ID)"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.incomeTaxID))})),XNode.create(FormField,{label:"Sales TAX ID"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.salesTaxID))})))),XNode.create("div",{"data-layout":"sticky-command-row"},XNode.create(SaveIconTextButton,{"data-submit-event":"save-contact"}))))}))}saveContact(){return __awaiter(this,void 0,void 0,(function*(){yield this.contactService.save(this.model);return this.model}))}});__decorate([InjectProperty,__metadata("design:type",EntityService)],ContactEditorPage.prototype,"entityService",void 0);__decorate([InjectProperty,__metadata("design:type",ContactService)],ContactEditorPage.prototype,"contactService",void 0);__decorate([Action({onEvent:"save-contact",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],ContactEditorPage.prototype,"saveContact",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/contacts/ContactEditorPage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../model/model","@web-atoms/core/dist/core/InjectProperty","../../../../services/store/StoreOrderService","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/Expander","../../../controls/reference-editor/ReferenceEditor","../../../Sql","../../contacts/ContactEditorPage","../../../controls/collection-editor/CollectionEditorEx","@web-atoms/core/dist/core/Bind","@web-atoms/web-controls/dist/basic/AtomRepeater"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,ContentPage,StoreJournal,StoreJournalLineItem,InjectProperty,StoreOrderService,XNode,Form,Expander,ReferenceEditor,Sql,ContactEditorPage,CollectionEditorEx,Bind,AtomRepeater,EditOrderPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_modelModel){StoreJournal=_modelModel.StoreJournal;StoreJournalLineItem=_modelModel.StoreJournalLineItem},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesStoreStoreOrderService){StoreOrderService=_servicesStoreStoreOrderService.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicExpander){Expander=_webAtomsWebControlsDistBasicExpander.default},function(_controlsReferenceEditorReferenceEditor){ReferenceEditor=_controlsReferenceEditorReferenceEditor.default},function(_Sql){Sql=_Sql.Sql},function(_contactsContactEditorPage){ContactEditorPage=_contactsContactEditorPage.default},function(_controlsCollectionEditorCollectionEditorEx){CollectionEditorEx=_controlsCollectionEditorCollectionEditorEx.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default}],execute:function(){_export("default",EditOrderPage=class EditOrderPage extends ContentPage{init(){var _a;return __awaiter(this,void 0,void 0,(function*(){const storeID=this.parameters.storeID;if(!storeID){alert("StoreID must be present.");this.cancel();return}this.model=this.parameters.journalID?yield this.storeOrderService.get(this.parameters.journalID):StoreJournal.create(Object.assign(Object.assign({},this.parameters),{journalType:"sales-invoice",storeID,buyer:null,seller:null,lineItems:[StoreJournalLineItem.create({item:null,itemPrice:null,quantity:1})]}));this.renderer=XNode.create("div",{"data-layout":"vertical-flex-stretch-items"},XNode.create(Form,null,XNode.create(ReferenceEditor,{label:"Buyer",model:this.model,field:x=>x.buyer,editModelPage:ContactEditorPage,searchQuery:(q,search)=>(search?q.where({search,likeSearch:search+"%"},(p=>x=>Sql.text.iLike(x.name,p.likeSearch)||x.emails.some((e=>Sql.text.iLike(e.emailAddress.emailAddress,p.likeSearch)))||x.phones.some((e=>e.phoneNumberE64===p.search)))):q).where((x=>x.type!=="domain")).include((x=>[x.items,x.domains,x.addresses])).orderBy((x=>x.name)),itemRenderer:x=>XNode.create("div",{"data-layout":"flex-wrap"},XNode.create("label",{text:x.name}),XNode.create("label",{text:x.gstTaxID||x.incomeTaxID}))})),XNode.create(CollectionEditorEx,{label:"Items",model:this.model,field:x=>x.lineItems,addItemDefaults:{item:null,itemPrice:null,quantity:1},"event-item-deleted":ce=>this.onLineItemDeleted(ce.detail),itemRenderer:line=>XNode.create("div",{"data-layout":"row","data-align-items":"flex-start"},XNode.create(ReferenceEditor,{label:"",model:line,field:f=>f.item,addNewDefaults:{storeID},searchQuery:(q,search)=>(search?q.where({search,likeSearch:search+"%"},(p=>x=>Sql.text.iLike(x.name,p.likeSearch))):q).where({storeID},(p=>x=>x.storeID===p.storeID)),itemRenderer:x=>XNode.create("div",{text:x.name})}),XNode.create(ReferenceEditor,{label:"",model:line,field:f=>f.itemPrice,addNewDefaults:Bind.source(line,(x=>({storeItemID:x.source.itemID}))),"event-reference-updated":ce=>this.onItemPriceUpdated(line,ce.detail),searchQuery:(q,search)=>q.where({id:line.itemID},(p=>x=>x.storeItemID===p.id)),itemRenderer:x=>XNode.create("div",{text:`${x.currency} ${x.amount}`})}),XNode.create("input",{value:Bind.sourceTwoWays(line,(x=>x.source.quantity))}),XNode.create("input",{readOnly:true,value:Bind.source(line,(x=>x.source.amount))}),XNode.create("div",{"data-layout":"vertical-flex","style-padding":"0","style-overflow":"visible"},XNode.create(ReferenceEditor,{label:"",model:line,field:f=>f.taxFolder,"event-reference-updated":ce=>this.taxFolderUpdated(line,ce.detail),searchQuery:(q,search)=>search?q.where({search:search+"%"},(p=>x=>Sql.text.iLike(x.name,p.search))):q,itemRenderer:x=>XNode.create("div",{text:x.name})}),XNode.create(AtomRepeater,{items:Bind.source(line,(x=>x.source.relatedItems)),itemRenderer:ri=>XNode.create("div",{"data-layout":"row"},XNode.create("div",{text:Bind.source(ri,(x=>x.source.item?x.source.item.name:""))}),XNode.create("div",{text:Bind.source(ri,(x=>x.source.amount))}))})))}),XNode.create(Expander,{isExpanded:false,"data-border":"frame"},XNode.create("div",null,"Journal Entries"),XNode.create("table",null,XNode.create("tr",null,XNode.create("th",null,"Ledger"),XNode.create("th",null,"Debit"),XNode.create("th",null,"Credit"),XNode.create("th",{title:"Balance when entry was posted"},"Posted Balance")),...((_a=this.model.entries)!==null&&_a!==void 0?_a:[]).map((x=>XNode.create("tr",null,XNode.create("td",null,x.ledger.name),XNode.create("td",null,x.debit),XNode.create("td",null,x.credit),XNode.create("td",{title:"Balance when posted"},x.balance)))))))}))}onItemPriceUpdated(line,detail){line.amount=Number(detail.amount)}onLineItemDeleted(line){return __awaiter(this,void 0,void 0,(function*(){yield this.storeOrderService.deleteLineItem(this.model,line)}))}taxFolderUpdated(line,taxFolder){return __awaiter(this,void 0,void 0,(function*(){yield this.storeOrderService.updateTaxFolder(this.model,line,taxFolder)}))}});__decorate([InjectProperty,__metadata("design:type",StoreOrderService)],EditOrderPage.prototype,"storeOrderService",void 0)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/orders/EditOrderPage");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomRepeater","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../services/store/StoreService","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/core/Bind","../../commands/CommonCommands","../../controls/repeater/InfiniteRepeater","../../../services/store/StoreOrderService","../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action","@web-atoms/web-controls/dist/PageNavigator","./orders/EditOrderPage"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,XNode,AtomRepeater,ContentPage,StoreService,InjectProperty,Bind,CommonCommands,InfiniteRepeater,StoreOrderService,AddIconTextButton,Action,PageNavigator,EditOrderPage,StoreDetailPage;_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(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_servicesStoreStoreService){StoreService=_servicesStoreStoreService.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_commandsCommonCommands){CommonCommands=_commandsCommonCommands.default},function(_controlsRepeaterInfiniteRepeater){InfiniteRepeater=_controlsRepeaterInfiniteRepeater.default},function(_servicesStoreStoreOrderService){StoreOrderService=_servicesStoreStoreOrderService.default},function(_controlsButtonsIconButton){AddIconTextButton=_controlsButtonsIconButton.AddIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_ordersEditOrderPage){EditOrderPage=_ordersEditOrderPage.default}],execute:function(){_export("default",StoreDetailPage=class StoreDetailPage extends ContentPage{constructor(){super(...arguments);this.items=[];this.selectedItem=null;this.search=""}init(){return __awaiter(this,void 0,void 0,(function*(){this.model=yield this.storeService.get(this.parameters.id);this.title=`${this.model.name} Orders`;this.headerRenderer=()=>XNode.create("div",{"data-layout":"flex-wrap-padding"},XNode.create("input",{type:"search",value:Bind.twoWaysImmediate((()=>this.search))}),XNode.create("a",{"data-click-event":"route",href:CommonCommands.editProductList.displayRoute({storeID:this.parameters.id}),text:"Products"}));this.renderer=XNode.create("div",null,XNode.create("div",null,XNode.create(AtomRepeater,Object.assign({"data-layout":"data-grid",items:this.items},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.storeOrderService.list({storeID:this.parameters.id,start,search:this.search,cancelToken}))),{itemRenderer:item=>{var _a;return XNode.create("div",null,XNode.create("label",{text:item.journalID}),XNode.create("label",{text:item.journalType}),XNode.create("a",{text:(_a=item.buyer)===null||_a===void 0?void 0:_a.name,"data-click-event":"route"}))}}))));this.footerRenderer=()=>XNode.create("div",{"data-layout":"row"},XNode.create(AddIconTextButton,{"data-click-event":"create-order",text:"Create Order"}))}))}createOrder(){return __awaiter(this,void 0,void 0,(function*(){yield PageNavigator.pushPageForResult(EditOrderPage,{storeID:this.parameters.id})}))}});__decorate([InjectProperty,__metadata("design:type",StoreService)],StoreDetailPage.prototype,"storeService",void 0);__decorate([InjectProperty,__metadata("design:type",StoreOrderService)],StoreDetailPage.prototype,"storeOrderService",void 0);__decorate([Action({onEvent:"create-order"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],StoreDetailPage.prototype,"createOrder",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/StoreDetailPage");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,StoreItem,Sql,StoreItemService;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){StoreItem=_modelModel.StoreItem},function(_commonSql){Sql=_commonSql.Sql}],execute:function(){StoreItemService=class StoreItemService{get(id){return this.entityService.query(StoreItem).where({id},(p=>x=>x.storeItemID===p.id)).include((x=>[x.storeItemPrices,x.storeItemTags.forEach((t=>t.tag)),x.itemFolder,x.fileFolder])).firstOrDefault()}list({start=0,size=100,search="",storeID=void 0,cancelToken}){return __awaiter(this,void 0,void 0,(function*(){let q=this.entityService.query(StoreItem).where({storeID},(p=>x=>x.storeID===p.storeID));if(search){search=search+"%";q=q.where({search},(p=>x=>Sql.text.iLike(x.name,p.search)||Sql.text.iLike(x.description,p.search)))}return q.orderByDescending((x=>x.storeItemID)).include((x=>[x.itemFolder])).toPagedList({start,size,cancelToken})}))}save(storeItem){return __awaiter(this,void 0,void 0,(function*(){yield this.entityService.save(storeItem,(c=>c.include((x=>x.storeItemPrices)).include((x=>x.storeItemTags)).thenInclude((x=>x.tag))));return storeItem}))}};__decorate([Inject,__metadata("design:type",EntityService)],StoreItemService.prototype,"entityService",void 0);StoreItemService=__decorate([DISingleton()],StoreItemService);_export("default",StoreItemService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/services/store/StoreItemService");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/FormField","../../../../controls/countries/CountrySelect","@web-atoms/core/dist/core/Bind","@web-atoms/web-controls/dist/basic/DateField","../../../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,XNode,Form,FormField,CurrencySelect,Bind,DateField,SaveIconTextButton,Action,EditItemPricePage;_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(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_controlsCountriesCountrySelect){CurrencySelect=_controlsCountriesCountrySelect.CurrencySelect},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsWebControlsDistBasicDateField){DateField=_webAtomsWebControlsDistBasicDateField.default},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default}],execute:function(){_export("default",EditItemPricePage=class EditItemPricePage extends PopupWindowPage{init(){return __awaiter(this,void 0,void 0,(function*(){this.model=this.parameters;this.renderer=XNode.create("div",null,XNode.create(Form,null,XNode.create(FormField,{label:"Currency"},XNode.create(CurrencySelect,{value:Bind.twoWaysImmediate((()=>this.model.currency))})),XNode.create(FormField,{label:"Amount"},XNode.create("input",{type:"number",value:Bind.twoWaysImmediate((()=>this.model.amount))})),XNode.create(FormField,{label:"Start Date"},XNode.create(DateField,{value:Bind.twoWaysImmediate((()=>this.model.startDate))})),XNode.create(FormField,{label:"End Date"},XNode.create(DateField,{value:Bind.twoWaysImmediate((()=>this.model.endDate))})),XNode.create("div",{"data-layout":"command-row"},XNode.create(SaveIconTextButton,{"data-submit-event":"save-currency"}))))}))}saveCurrency(){return __awaiter(this,void 0,void 0,(function*(){return this.model}))}});__decorate([Action({onEvent:"save-currency",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],EditItemPricePage.prototype,"saveCurrency",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/products/prices/EditItemPricePage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../model/model","@web-atoms/core/dist/core/InjectProperty","../../../../services/EntityService","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/core/dist/core/Bind","../../../controls/reference-editor/ReferenceEditor","../../../Sql","../../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,StoreItemFolder,InjectProperty,EntityService,XNode,Form,FormField,Bind,ReferenceEditor,Sql,SaveIconTextButton,Action,EditItemFolderPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_modelModel){StoreItemFolder=_modelModel.StoreItemFolder},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_controlsReferenceEditorReferenceEditor){ReferenceEditor=_controlsReferenceEditorReferenceEditor.default},function(_Sql){Sql=_Sql.Sql},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default}],execute:function(){_export("default",EditItemFolderPage=class EditItemFolderPage extends PopupWindowPage{constructor(){super(...arguments);this.model=null}init(){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){this.model=((_a=this.parameters)===null||_a===void 0?void 0:_a.itemFolderID)?yield this.entityService.query(StoreItemFolder).where(this.parameters,(p=>x=>x.itemFolderID===p.itemFolderID)).firstOrDefault():StoreItemFolder.create({parent:null,storeID:(_b=this.parameters)===null||_b===void 0?void 0:_b.storeID});if(!this.parameters.storeID){alert("Store is not set");this.cancel();return}this.renderer=XNode.create("div",null,XNode.create(Form,null,XNode.create(FormField,{label:"Name"},XNode.create("input",{placeholder:"Name",value:Bind.twoWaysImmediate((()=>this.model.name)),autofocus:true})),XNode.create(ReferenceEditor,{label:"Folder",model:this.model,field:x=>x.parent,searchQuery:(q,search)=>(search?q.where({search},(p=>x=>Sql.text.startsWith(x.name,p.search))):q).orderBy((x=>x.path)),itemRenderer:x=>XNode.create("div",null,XNode.create("label",{text:x.name}))}),XNode.create("div",{"data-layout":"command-row"},XNode.create(SaveIconTextButton,{"data-submit-event":"save-folder"}))))}))}saveFolder(){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)],EditItemFolderPage.prototype,"entityService",void 0);__decorate([Action({onEvent:"save-folder",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],EditItemFolderPage.prototype,"saveFolder",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/folders/EditItemFolderPage");System.register(["tslib","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomChips","../../../services/EntityService","../../../model/model","../../Sql"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,Bind,InjectProperty,XNode,AtomChips,Chip,Suggestion,EntityService,Tag,Sql,TagChips;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicAtomChips){AtomChips=_webAtomsWebControlsDistBasicAtomChips.default;Chip=_webAtomsWebControlsDistBasicAtomChips.Chip;Suggestion=_webAtomsWebControlsDistBasicAtomChips.Suggestion},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_modelModel){Tag=_modelModel.Tag},function(_Sql){Sql=_Sql.Sql}],execute:function(){_export("default",TagChips=class TagChips extends AtomChips{preCreate(){super.preCreate();this.labelPath=x=>{var _a;return(_a=x.tag)===null||_a===void 0?void 0:_a.name};this.prompt="Tags";this.itemRenderer=x=>{var _a;return XNode.create(Chip,{deleted:x.$deleted,label:(_a=x.tag)===null||_a===void 0?void 0:_a.name})};this.suggestionRenderer=x=>XNode.create(Suggestion,{text:x.name});this.enterKeyHint="enter";this.itemToChip=(item,name)=>({$deleted:false,tag:Tag.create({name})});this.render(XNode.create("div",{suggestions:Bind.oneWayAsync(((c,e,cancelToken)=>this.searchItems(cancelToken,this.search)),{watchDelayInMS:750})}));this.valuePath=x=>{var _a,_b;return(_b=(_a=x.tag)===null||_a===void 0?void 0:_a.tagID)!==null&&_b!==void 0?_b:x.tagID}}searchItems(cancelToken,search){return __awaiter(this,void 0,void 0,(function*(){if(!search){return null}let q=this.entityService.query(Tag);search=search.toLocaleLowerCase();q=q.where({search:search+"%"},(p=>x=>Sql.text.like(x.name,p.search)));const items=yield q.orderBy((x=>x.name)).toPagedList({cancelToken,hideActivityIndicator:true,size:10});return items.items.map((tag=>({tag})))}))}});__decorate([InjectProperty,__metadata("design:type",EntityService)],TagChips.prototype,"entityService",void 0)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/controls/tags/TagChips");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../model/model","../../../../services/store/StoreItemService","@web-atoms/core/dist/core/InjectProperty","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/core/dist/core/Bind","./prices/EditItemPricePage","@web-atoms/web-controls/dist/basic/Select","../../../controls/reference-editor/ReferenceEditor","../../../Sql","../folders/EditItemFolderPage","../../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action","../../../commands/CommonCommands","../../../controls/collection-editor/CollectionEditorEx","../../../controls/tags/TagChips","../../../date/DateFormats"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,XNode,Form,ContentPage,StoreItem,StoreItemItemTypeArray,StoreItemService,InjectProperty,FormField,Bind,EditItemPricePage,Select,ReferenceEditor,Sql,EditItemFolderPage,SaveIconTextButton,Action,CommonCommands,CollectionEditorEx,TagChips,DateFormats,EditProductDetailPage;_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(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_modelModel){StoreItem=_modelModel.StoreItem;StoreItemItemTypeArray=_modelModel.StoreItemItemTypeArray},function(_servicesStoreStoreItemService){StoreItemService=_servicesStoreStoreItemService.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_pricesEditItemPricePage){EditItemPricePage=_pricesEditItemPricePage.default},function(_webAtomsWebControlsDistBasicSelect){Select=_webAtomsWebControlsDistBasicSelect.default},function(_controlsReferenceEditorReferenceEditor){ReferenceEditor=_controlsReferenceEditorReferenceEditor.default},function(_Sql){Sql=_Sql.Sql},function(_foldersEditItemFolderPage){EditItemFolderPage=_foldersEditItemFolderPage.default},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_commandsCommonCommands){CommonCommands=_commandsCommonCommands.default},function(_controlsCollectionEditorCollectionEditorEx){CollectionEditorEx=_controlsCollectionEditorCollectionEditorEx.default},function(_controlsTagsTagChips){TagChips=_controlsTagsTagChips.default},function(_dateDateFormats){DateFormats=_dateDateFormats.DateFormats}],execute:function(){_export("default",EditProductDetailPage=class EditProductDetailPage extends ContentPage{constructor(){super(...arguments);this.model=null}init(){var _a;var _b;return __awaiter(this,void 0,void 0,(function*(){this.model=this.parameters.storeItemID?yield this.storeItemService.get(this.parameters.storeItemID):StoreItem.create({storeID:this.parameters.storeID,name:"",itemFolder:null});const{storeID}=this.model;if(!storeID){alert("StoreID must be present.");this.cancel();return}this.headerRenderer=()=>XNode.create("div",{"data-layout":"header-row"},XNode.create("nav",{"data-layout":"row"},XNode.create("a",{"data-click-event":"route",href:CommonCommands.editStore.displayRoute({id:storeID})},"Store"),XNode.create("a",{"data-click-event":"route",href:CommonCommands.editProductList.displayRoute({storeID})},"Products")));(_a=(_b=this.model).storeItemTags)!==null&&_a!==void 0?_a:_b.storeItemTags=[];this.renderer=XNode.create("div",null,XNode.create(Form,null,XNode.create("div",{"data-layout":"frame-vertical-flex"},XNode.create(FormField,{label:"Type"},XNode.create(Select,{labelPath:x=>x.label[0].toUpperCase()+x.label.substring(1),valuePath:x=>x.value,value:Bind.twoWaysImmediate((()=>this.model.itemType)),items:StoreItemItemTypeArray})),XNode.create(ReferenceEditor,{label:"Folder",model:this.model,field:x=>x.itemFolder,addNewDefaults:{storeID:this.model.storeID},editModelPage:EditItemFolderPage,searchQuery:(q,search)=>(search?q.where({search},(p=>x=>Sql.text.startsWith(x.name,p.search))):q).where({storeID:this.model.storeID},(p=>x=>x.storeID===p.storeID)).orderBy((x=>x.name)),itemRenderer:x=>XNode.create("div",{text:x.name})}),XNode.create(FormField,{label:"Name"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.name))})),XNode.create(FormField,{label:"Description"},XNode.create("textarea",{rows:"5",cols:"80",value:Bind.twoWaysImmediate((()=>this.model.name))}))),XNode.create(CollectionEditorEx,{label:"Prices",model:this.model,field:x=>x.storeItemPrices,addPage:EditItemPricePage,itemRenderer:item=>XNode.create("div",null,XNode.create("div",{text:item.currency}),XNode.create("div",{text:item.amount}),XNode.create("div",{title:DateFormats.withWeekDayAndTime(item.startDate),text:DateFormats.relative.short(item.startDate)}),item.endDate?XNode.create("div",{title:DateFormats.withWeekDayAndTime(item.endDate),text:DateFormats.relative.short(item.endDate)}):XNode.create("div",null))}),XNode.create(TagChips,{softDeleteProperty:Bind.oneWay((()=>this.model.storeItemID>0)),items:Bind.twoWaysImmediate((()=>this.model.storeItemTags))}),XNode.create("div",{"data-layout":"sticky-command-row"},XNode.create(SaveIconTextButton,{"data-submit-event":"save-product"}))))}))}saveProduct(){return __awaiter(this,void 0,void 0,(function*(){yield this.storeItemService.save(this.model);yield this.init()}))}});__decorate([InjectProperty,__metadata("design:type",StoreItemService)],EditProductDetailPage.prototype,"storeItemService",void 0);__decorate([Action({onEvent:"save-product"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],EditProductDetailPage.prototype,"saveProduct",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/products/EditProductDetailPage");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/store/StoreItemService","../../../commands/CommonCommands","@web-atoms/core/dist/view-model/Action","@web-atoms/core/dist/core/Bind","./EditProductDetailPage","@web-atoms/web-controls/dist/basic/InlinePopup","@web-atoms/web-controls/dist/basic/PopupButton","@web-atoms/web-controls/dist/PageNavigator"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,ContentPage,XNode,AtomRepeater,InfiniteRepeater,InjectProperty,StoreItemService,CommonCommands,Action,Bind,EditProductDetailPage,InlinePopupButton,MenuItem,PageNavigator,EditProductListPage;_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(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_controlsRepeaterInfiniteRepeater){InfiniteRepeater=_controlsRepeaterInfiniteRepeater.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesStoreStoreItemService){StoreItemService=_servicesStoreStoreItemService.default},function(_commandsCommonCommands){CommonCommands=_commandsCommonCommands.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_EditProductDetailPage){EditProductDetailPage=_EditProductDetailPage.default},function(_webAtomsWebControlsDistBasicInlinePopup){InlinePopupButton=_webAtomsWebControlsDistBasicInlinePopup.InlinePopupButton},function(_webAtomsWebControlsDistBasicPopupButton){MenuItem=_webAtomsWebControlsDistBasicPopupButton.MenuItem},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default}],execute:function(){_export("default",EditProductListPage=class EditProductListPage extends ContentPage{constructor(){super(...arguments);this.search="";this.items=[];this.selectedItem=null}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(InlinePopupButton,{icon:"fas fa-plus",text:"Add",popup:()=>XNode.create("div",null,XNode.create(MenuItem,{"data-click-event":"add-item","data-item-type":"product",label:"Product"}),XNode.create(MenuItem,{"data-click-event":"add-item","data-item-type":"service",label:"Service"}),XNode.create(MenuItem,{"data-click-event":"add-item","data-item-type":"tax",label:"Tax"}))}));this.renderer=XNode.create("div",null,XNode.create("div",null,XNode.create(AtomRepeater,Object.assign({"data-layout":"data-grid",items:this.items},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.storeItemService.list({storeID:this.parameters.storeID,start,search:this.search,cancelToken}))),{itemRenderer:item=>{var _a;return XNode.create("div",null,XNode.create("label",{text:item.storeItemID}),XNode.create("label",{text:item.itemType}),XNode.create("label",{text:(_a=item.itemFolder)===null||_a===void 0?void 0:_a.name}),XNode.create("a",{text:item.name,"data-click-event":"route",href:CommonCommands.editProduct.displayRoute({storeItemID:item.storeItemID})}))}}))))}))}addNew({itemType}){return __awaiter(this,void 0,void 0,(function*(){const product=yield PageNavigator.pushPageForResult(EditProductDetailPage,{storeID:this.parameters.storeID});this.items.add(product);this.selectedItem=product}))}});__decorate([InjectProperty,__metadata("design:type",StoreItemService)],EditProductListPage.prototype,"storeItemService",void 0);__decorate([Action({onEvent:"add-item"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],EditProductListPage.prototype,"addNew",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/products/EditProductListPage");System.register(["@web-atoms/core/dist/core/Command","../apiPath"],(function(_export,_context){"use strict";var Command,Commands,apiPathRoot,CommonCommands;_export("default",void 0);return{setters:[function(_webAtomsCoreDistCoreCommand){Command=_webAtomsCoreDistCoreCommand.default;Commands=_webAtomsCoreDistCoreCommand.Commands},function(_apiPath){apiPathRoot=_apiPath.apiPathRoot}],execute:function(){Command.routePrefix=apiPathRoot;_export("default",CommonCommands=class CommonCommands extends Commands{});CommonCommands.openMailbox=Command.create({route:"/mailbox/{id}",routeOrder:50,openPage:()=>_context.import("../../web/page/mails/MailboxContacts")});CommonCommands.openChannel=Command.create({route:"/channel/{id}",routeOrder:50,openPage:()=>_context.import("../../web/page/channels/detail/ChannelDetailPage")});CommonCommands.openSubscribers=Command.create({route:"/mailbox-subscribers/{id}",routeOrder:50,openPage:()=>_context.import("../../web/page/channels/subscribers/ChannelSubscribersPage")});CommonCommands.openDrives=Command.create({route:"/drives",routeOrder:100,openPage:()=>_context.import("../pages/drives/DriveListPage")});CommonCommands.manageWebSite=Command.create({route:"/studio/manage/{id}",routeOrder:100,openPage:()=>_context.import("../pages/websites/manage/ManageWebSitePage")});CommonCommands.editWebSite=Command.create({route:"/studio/edit/{id}",routeOrder:100,openPage:()=>_context.import("../pages/websites/studio/WebSiteStudioPage")});CommonCommands.changePassword=Command.create({route:"/user/change-password",pushPage:()=>_context.import("../pages/user/change-password/ChangePasswordPage")});CommonCommands.setupMultiFactor=Command.create({route:"/user/multi-factor/setup",pushPage:()=>_context.import("../pages/user/multi-factor/MultiFactorSetupPage")});CommonCommands.openWebSiteList=Command.create({route:"/websites",routeOrder:2e3,openPage:()=>_context.import("../pages/websites/list/WebSiteListPage")});CommonCommands.editStore=Command.create({route:"/stores/detail/{id}",routeOrder:100,openPage:()=>_context.import("../pages/stores/StoreDetailPage")});CommonCommands.editProductList=Command.create({route:"/stores/{storeID}",routeOrder:500,openPage:()=>_context.import("../pages/stores/products/EditProductListPage")});CommonCommands.editProduct=Command.create({route:"/stores/product/{storeItemID}",routeOrder:200,openPage:()=>_context.import("../pages/stores/products/EditProductDetailPage")})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/commands/CommonCommands");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../model/model","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/FormField","../../../controls/form/RequiredFormField","@web-atoms/core/dist/core/Bind","@web-atoms/web-controls/dist/basic/Checkbox","../../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action","../../../../services/EntityService"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,MailboxSyncTarget,XNode,Form,FormField,PasswordFormField,TextFormField,Bind,Checkbox,SaveIconTextButton,Action,EntityService,EditSyncTargetPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_modelModel){MailboxSyncTarget=_modelModel.MailboxSyncTarget},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_controlsFormRequiredFormField){PasswordFormField=_controlsFormRequiredFormField.PasswordFormField;TextFormField=_controlsFormRequiredFormField.TextFormField},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsWebControlsDistBasicCheckbox){Checkbox=_webAtomsWebControlsDistBasicCheckbox.default},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_servicesEntityService){EntityService=_servicesEntityService.default}],execute:function(){_export("default",EditSyncTargetPage=class EditSyncTargetPage extends PopupWindowPage{init(){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){this.model=((_a=this.parameters)===null||_a===void 0?void 0:_a.syncTargetID)?this.parameters:MailboxSyncTarget.create(Object.assign(Object.assign({},(_b=this.parameters)!==null&&_b!==void 0?_b:{}),{active:true,port:993,isSecure:true,newPassword:"",intervalSeconds:86400}));this.title="Create Sync Target";this.renderer=XNode.create("div",null,XNode.create(Form,null,XNode.create(FormField,{label:"Protocol"},XNode.create("div",{"data-layout":"row"},XNode.create("span",{text:this.model.protocol}),XNode.create("span",{text:this.model.direction}))),XNode.create(TextFormField,{label:"Host",value:()=>this.model.host}),XNode.create(TextFormField,{label:"Port",value:()=>this.model.port}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.model.isSecure)),text:"SSL Enabled"}),XNode.create(TextFormField,{label:"Username",value:()=>this.model.username}),XNode.create(PasswordFormField,{label:"Password",value:()=>this.model.newPassword}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.model.syncAllFolders)),text:"Sync All Folders (Slow, Not Recommended)"}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.model.syncJunkMails)),text:"Sync Junk/Spam Folder (Slow, Not Recommended)"}),XNode.create(FormField,{label:"Name of All Folder"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.allFolderName))})),XNode.create("p",null,"Leave it empty if your mailbox supports new IMAP extensions for All Folders.",XNode.create("br",null),"If specified, only this folder will be synced."),XNode.create("div",{"data-layout":"command-row"},XNode.create(SaveIconTextButton,{"data-submit-event":"save-form",text:"Save"}))))}))}saveForm(){return __awaiter(this,void 0,void 0,(function*(){if(this.model.syncTargetID){const es=this.resolve(EntityService);yield es.save(es.cloner(this.model).copy)}return this.model}))}});__decorate([Action({onEvent:"save-form",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],EditSyncTargetPage.prototype,"saveForm",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/mailboxes/settings/EditSyncTargetPage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/XNode","../../controls/collection-editor/CollectionEditor","./settings/EditSyncTargetPage","./services/MailboxService","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/view-model/Action","@web-atoms/core/dist/web/services/PopupService"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,ContentPage,XNode,CollectionEditor,EditSyncTargetPage,MailboxService,InjectProperty,Action,PopupService,MailboxDetailPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_controlsCollectionEditorCollectionEditor){CollectionEditor=_controlsCollectionEditorCollectionEditor.default},function(_settingsEditSyncTargetPage){EditSyncTargetPage=_settingsEditSyncTargetPage.default},function(_servicesMailboxService){MailboxService=_servicesMailboxService.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsCoreDistWebServicesPopupService){PopupService=_webAtomsCoreDistWebServicesPopupService.default}],execute:function(){_export("default",MailboxDetailPage=class MailboxDetailPage extends ContentPage{init(){return __awaiter(this,void 0,void 0,(function*(){this.model=yield this.mailboxService.get(this.parameters.mailboxID);this.title=this.model.emailAddress.emailAddress;const username=this.model.emailAddress.emailAddress;const host=`imap.${username.split("@").pop()}`;this.renderer=XNode.create("div",null,XNode.create(CollectionEditor,{label:"Sync Targets",model:this.model,collection:"syncTargets",addPage:EditSyncTargetPage,addItemDefaults:{username,host},itemRenderer:item=>XNode.create("div",null,XNode.create("span",null,XNode.create("span",{text:item.protocol})),XNode.create("span",null,XNode.create("span",{text:item.username})),XNode.create("span",null,XNode.create("span",{text:item.host})),XNode.create("span",null,item.active?XNode.create("i",{"data-click-event":"pause-sync",class:"fas fa-pause",title:"Pause Sync"}):XNode.create("i",{"data-click-event":"start-sync",class:"fas fa-play",title:"Start Sync"})),XNode.create("span",null,XNode.create("i",{"data-click-event":"check-sync-logs",class:"fas fa-circle-info",title:"Check Logs"})))}))}))}pauseSync(item){return __awaiter(this,void 0,void 0,(function*(){item.active=false;yield this.mailboxService.saveSyncTarget(item);yield this.init()}))}startSync(item){return __awaiter(this,void 0,void 0,(function*(){item.active=true;yield this.mailboxService.saveSyncTarget(item);yield this.init()}))}checkSyncLogs(item){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){const syncState=JSON.parse((_a=item.syncLog)!==null&&_a!==void 0?_a:"{}");yield PopupService.alert({message:XNode.create("div",null,XNode.create("pre",null,...((_b=syncState.log)!==null&&_b!==void 0?_b:[]).map((x=>[XNode.create("span",{text:x}),XNode.create("br",null)])).flat(2)))})}))}});__decorate([InjectProperty,__metadata("design:type",MailboxService)],MailboxDetailPage.prototype,"mailboxService",void 0);__decorate([Action({onEvent:"pause-sync",confirm:"Are you sure you want to pause the sync?"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MailboxDetailPage.prototype,"pauseSync",null);__decorate([Action({onEvent:"start-sync",confirm:"Are you sure you want to start the sync?"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MailboxDetailPage.prototype,"startSync",null);__decorate([Action({onEvent:"check-sync-logs"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MailboxDetailPage.prototype,"checkSyncLogs",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/mailboxes/MailboxDetailPage");System.register(["tslib","@web-atoms/core/dist/core/XNode"],(function(_export,_context){"use strict";var __rest,XNode,IconClass,Icon;_export({default:void 0,Icon:void 0});return{setters:[function(_tslib){__rest=_tslib.__rest},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default}],execute:function(){_export("default",IconClass=class IconClass{static forMailbox(mb){return mb.isChannel?mb.isPrivateChannel?"fas fa-users-rectangle":"fas fa-users":"fas fa-envelope"}});_export("Icon",Icon=class Icon{static Mailbox(_a){var{mailbox}=_a,a=__rest(_a,["mailbox"]);return XNode.create("i",Object.assign({},a,{class:IconClass.forMailbox(mailbox)}))}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/icons/Icons");System.register(["tslib","@web-atoms/core/dist/di/DITransient","@web-atoms/core/dist/di/Inject","../../../../services/EntityService","../../../../model/model","@web-atoms/date-time/dist/DateTime"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,DITransient,Inject,EntityService,HostedDomain,Mailbox,MailboxSyncTarget,DateTime,ExternalMailboxService;return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistDiDITransient){DITransient=_webAtomsCoreDistDiDITransient.default},function(_webAtomsCoreDistDiInject){Inject=_webAtomsCoreDistDiInject.Inject},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_modelModel){HostedDomain=_modelModel.HostedDomain;Mailbox=_modelModel.Mailbox;MailboxSyncTarget=_modelModel.MailboxSyncTarget},function(_webAtomsDateTimeDistDateTime){DateTime=_webAtomsDateTimeDistDateTime.default}],execute:function(){ExternalMailboxService=class ExternalMailboxService{createDomain(emailAddress,retry=3){return __awaiter(this,void 0,void 0,(function*(){try{const index=emailAddress.lastIndexOf("@");let domainName=emailAddress;if(index!==-1){domainName=emailAddress.substring(index+1)}domainName=domainName.toLocaleLowerCase();const d=yield this.entityService.query(HostedDomain).where({domainName},(p=>x=>x.domain.name===p.domainName)).firstOrDefault();if(d){return d}const hd=HostedDomain.create({domainNameToCreate:domainName,external:true});return yield this.entityService.save(hd)}catch(error){if(retry--){return yield this.createDomain(emailAddress,retry-1)}throw error}}))}createMailbox(model){return __awaiter(this,void 0,void 0,(function*(){const{emailAddress,displayName:name,username,password,imapHost,imapPort,imapSecure,smtpHost,smtpPort,smtpSecure,smtpUsername,smtpPassword}=model;const hd=yield this.createDomain(emailAddress);const dateCreated=DateTime.now;const[emailUsername]=emailAddress.split("@");const mb=Mailbox.create({domainID:hd.domainID,username:emailUsername,name,dateCreated,dateUpdated:dateCreated,indexAttachments:true,indexImageAttachments:true,syncTargets:[MailboxSyncTarget.create({protocol:"imap",host:imapHost,port:imapPort,isSecure:imapSecure,username,newPassword:password,direction:"in",active:true}),MailboxSyncTarget.create({protocol:"smtp",host:smtpHost,port:smtpPort,isSecure:smtpSecure,username:smtpUsername||username,newPassword:smtpPassword||password,direction:"in",active:true})]});yield this.entityService.save(mb)}))}};__decorate([Inject,__metadata("design:type",EntityService)],ExternalMailboxService.prototype,"entityService",void 0);ExternalMailboxService=__decorate([DITransient()],ExternalMailboxService);_export("default",ExternalMailboxService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/mailboxes/services/ExternalMailboxService");System.register(["tslib","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/view-model/Action","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/web-controls/dist/basic/PasswordBox","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../controls/buttons/IconButton","@web-atoms/core/dist/core/InjectProperty","../services/ExternalMailboxService","@web-atoms/web-controls/dist/basic/Checkbox"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,Bind,XNode,Action,Form,FormField,PasswordBox,PopupWindowPage,AddIconButton,InjectProperty,ExternalMailboxService,Checkbox,AddExternalMailboxPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_webAtomsWebControlsDistBasicPasswordBox){PasswordBox=_webAtomsWebControlsDistBasicPasswordBox.default},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_controlsButtonsIconButton){AddIconButton=_controlsButtonsIconButton.AddIconButton},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesExternalMailboxService){ExternalMailboxService=_servicesExternalMailboxService.default},function(_webAtomsWebControlsDistBasicCheckbox){Checkbox=_webAtomsWebControlsDistBasicCheckbox.default}],execute:function(){_export("default",AddExternalMailboxPage=class AddExternalMailboxPage extends PopupWindowPage{constructor(){super(...arguments);this.model={emailAddress:"",displayName:"",imapHost:"",imapPort:993,imapSecure:true,smtpHost:"",smtpPort:465,smtpSecure:true,username:"",password:"",smtpUsername:"",smtpPassword:""}}init(){return __awaiter(this,void 0,void 0,(function*(){this.title="Add External Mailbox";this.renderer=XNode.create("div",{"style-max-width":"400px"},XNode.create("div",null,"Use this form only if you do not own the domain of the email address. If you plan to migrate domain back to this server, we recommend creating hosted mailbox and add sync account to migrate your emails."),XNode.create("hr",null),XNode.create(Form,null,XNode.create(FormField,{label:"Display/From Name"},XNode.create("input",{autofocus:true,value:Bind.twoWaysImmediate((()=>this.model.displayName))})),XNode.create(FormField,{label:"Email Address"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.emailAddress))})),XNode.create(FormField,{label:"Username"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.username))})),XNode.create(FormField,{label:"Password"},XNode.create(PasswordBox,{value:Bind.twoWaysImmediate((()=>this.model.password))})),XNode.create(FormField,{label:"IMAP (Server/Host)"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.imapHost))})),XNode.create(FormField,{label:"IMAP Port"},XNode.create("div",{"data-layout":"row"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.imapPort))}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.model.imapSecure)),text:"Secure"}))),XNode.create(FormField,{label:"SMTP (Server/Host)"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.smtpHost))})),XNode.create(FormField,{label:"SMTP Port"},XNode.create("div",{"data-layout":"row"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.smtpPort))}),XNode.create(Checkbox,{checked:Bind.twoWaysImmediate((()=>this.model.smtpSecure)),text:"Secure"}))),XNode.create("div",{"data-layout":"sticky-command-row"},XNode.create(AddIconButton,{"data-submit-event":"add-new-mailbox",text:"Add Mailbox"}))))}))}onInput(){return __awaiter(this,void 0,void 0,(function*(){if(this.model.imapHost){return}const{emailAddress}=this.model;if(!emailAddress){return}if(emailAddress.indexOf("@")===-1){return}const domain=emailAddress.split("@").pop();if(domain.length<=5){return}this.model.imapHost=`imap.${domain}`;this.model.smtpHost=`smtp.${domain}`;this.model.username=emailAddress}))}addNewMailbox(){return this.externalMailboxService.createMailbox(this.model)}});__decorate([InjectProperty,__metadata("design:type",ExternalMailboxService)],AddExternalMailboxPage.prototype,"externalMailboxService",void 0);__decorate([Action({onEvent:"input",defer:1e3}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],AddExternalMailboxPage.prototype,"onInput",null);__decorate([Action({onEvent:"add-new-mailbox",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",void 0)],AddExternalMailboxPage.prototype,"addNewMailbox",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/mailboxes/external-mailboxes/AddExternalMailboxPage");System.register(["tslib","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomRepeater","../../controls/repeater/InfiniteRepeater","./services/MailboxService","@web-atoms/core/dist/core/InjectProperty","../../../model/model","@web-atoms/core/dist/view-model/Action","@web-atoms/web-controls/dist/PageNavigator","./MailboxEditorPage","../../NumberFormats","../../commands/CommonCommands","@web-atoms/web-controls/dist/mobile-app/MasterDetailPage","@web-atoms/core/dist/style/styled","./MailboxDetailPage","@web-atoms/web-controls/dist/basic/ComboBox","../../icons/Icons","@web-atoms/web-controls/dist/basic/InlinePopup","@web-atoms/web-controls/dist/basic/PopupButton","./external-mailboxes/AddExternalMailboxPage"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,Bind,XNode,AtomRepeater,InfiniteRepeater,MailboxService,InjectProperty,Domain,Action,PageNavigator,MailboxEditorPage,toFileSize,CommonCommands,MasterDetailPage,styled,MailboxDetailPage,ComboBox,Icon,InlinePopupButton,MenuItem,AddExternalMailboxPage,MailboxListPage,css;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_controlsRepeaterInfiniteRepeater){InfiniteRepeater=_controlsRepeaterInfiniteRepeater.default},function(_servicesMailboxService){MailboxService=_servicesMailboxService.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_modelModel){Domain=_modelModel.Domain},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_MailboxEditorPage){MailboxEditorPage=_MailboxEditorPage.default},function(_NumberFormats){toFileSize=_NumberFormats.toFileSize},function(_commandsCommonCommands){CommonCommands=_commandsCommonCommands.default},function(_webAtomsWebControlsDistMobileAppMasterDetailPage){MasterDetailPage=_webAtomsWebControlsDistMobileAppMasterDetailPage.default},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default},function(_MailboxDetailPage){MailboxDetailPage=_MailboxDetailPage.default},function(_webAtomsWebControlsDistBasicComboBox){ComboBox=_webAtomsWebControlsDistBasicComboBox.default},function(_iconsIcons){Icon=_iconsIcons.Icon},function(_webAtomsWebControlsDistBasicInlinePopup){InlinePopupButton=_webAtomsWebControlsDistBasicInlinePopup.InlinePopupButton},function(_webAtomsWebControlsDistBasicPopupButton){MenuItem=_webAtomsWebControlsDistBasicPopupButton.MenuItem},function(_externalMailboxesAddExternalMailboxPage){AddExternalMailboxPage=_externalMailboxesAddExternalMailboxPage.default}],execute:function(){css=styled.css`
4481
4481
  &[data-page-type=master-detail] > [data-page-element=content][data-mode=desktop] {
4482
4482
  grid-template-columns: 150px 1fr auto;
4483
4483
  }