@social-mail/social-mail-client 1.2.261 → 1.2.263
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.
- package/dist/admin/AdminAppIndex.pack.js +172 -38
- package/dist/admin/AdminAppIndex.pack.js.map +1 -1
- package/dist/admin/AdminAppIndex.pack.min.js +10 -6
- package/dist/admin/AdminAppIndex.pack.min.js.map +1 -1
- package/dist/common/currency.js +1 -1
- package/dist/common/currency.js.map +1 -1
- package/dist/common/pages/stores/products/ProductEditor.d.ts.map +1 -1
- package/dist/common/pages/stores/products/ProductEditor.js +2 -0
- package/dist/common/pages/stores/products/ProductEditor.js.map +1 -1
- package/dist/model/model.d.ts +27 -2
- package/dist/model/model.d.ts.map +1 -1
- package/dist/model/model.js +120 -14
- package/dist/model/model.js.map +1 -1
- package/dist/public/channel/ChannelView.pack.js +120 -14
- package/dist/public/channel/ChannelView.pack.js.map +1 -1
- package/dist/public/channel/ChannelView.pack.min.js +1 -1
- package/dist/public/channel/ChannelView.pack.min.js.map +1 -1
- package/dist/public/store/Store.pack.js +124 -19
- package/dist/public/store/Store.pack.js.map +1 -1
- package/dist/public/store/Store.pack.min.js +3 -3
- package/dist/public/store/Store.pack.min.js.map +1 -1
- package/dist/public/store/StoreItemDetailView.d.ts.map +1 -1
- package/dist/public/store/StoreItemDetailView.js +3 -4
- package/dist/public/store/StoreItemDetailView.js.map +1 -1
- package/dist/public/store/StoreItemListView.d.ts.map +1 -1
- package/dist/public/store/StoreItemListView.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/web/AppIndex.pack.js +172 -38
- package/dist/web/AppIndex.pack.js.map +1 -1
- package/dist/web/AppIndex.pack.min.js +10 -6
- package/dist/web/AppIndex.pack.min.js.map +1 -1
- package/dist/web/page/mails/ConversationPage.d.ts +2 -1
- package/dist/web/page/mails/ConversationPage.d.ts.map +1 -1
- package/dist/web/page/mails/ConversationPage.js +29 -13
- package/dist/web/page/mails/ConversationPage.js.map +1 -1
- package/dist/web/page/mails/mini-compose/MiniComposeBox.d.ts.map +1 -1
- package/dist/web/page/mails/mini-compose/MiniComposeBox.js +21 -11
- package/dist/web/page/mails/mini-compose/MiniComposeBox.js.map +1 -1
- package/package.json +1 -1
- package/src/common/currency.ts +1 -1
- package/src/common/pages/stores/products/ProductEditor.tsx +1 -0
- package/src/model/model.ts +44 -13
- package/src/public/store/StoreItemDetailView.tsx +2 -3
- package/src/public/store/StoreItemListView.tsx +0 -1
- package/src/web/page/mails/ConversationPage.tsx +20 -3
- package/src/web/page/mails/mini-compose/MiniComposeBox.tsx +13 -6
|
@@ -695,7 +695,7 @@ html, body {
|
|
|
695
695
|
}
|
|
696
696
|
}
|
|
697
697
|
|
|
698
|
-
`.installLocal();stack=0;_export("default",BusyProgress=class BusyProgress{static create(){if(!container){container=document.createElement("div");container.className=css;const progressBar=document.createElement("div");progressBar.className="progress-bar";container.appendChild(progressBar);const progressBarValue=document.createElement("div");progressBarValue.className="progress-bar-value";progressBar.appendChild(progressBarValue);document.body.appendChild(container)}stack++;if(stack===1){container.setAttribute("data-show","true")}return{dispose(){stack--;if(stack<=0){container.removeAttribute("data-show")}}}}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/services/BusyProgress");System.register([],(function(_export,_context){"use strict";var _a,root,apiPath,apiPathRoot;return{setters:[],execute:function(){root=((_a=window.socialMail)===null||_a===void 0?void 0:_a.path)||"/";if(root.endsWith("/")){root=root.substring(0,root.length-1)}_export("apiPath",apiPath=root?url=>root+url:url=>url);_export("apiPathRoot",apiPathRoot=root)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/apiPath");System.register(["tslib","@web-atoms/core/dist/di/DISingleton","@web-atoms/entity/dist/services/BaseEntityService","@web-atoms/core/dist/di/Inject","@web-atoms/core/dist/App","./BusyProgress","../common/apiPath"],(function(_export,_context){"use strict";var __decorate,__metadata,DISingleton,BaseEntityService,Inject,App,BusyProgress,apiPath,EntityService;return{setters:[function(_tslib){__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistDiDISingleton){DISingleton=_webAtomsCoreDistDiDISingleton.default},function(_webAtomsEntityDistServicesBaseEntityService){BaseEntityService=_webAtomsEntityDistServicesBaseEntityService.default},function(_webAtomsCoreDistDiInject){Inject=_webAtomsCoreDistDiInject.Inject},function(_webAtomsCoreDistApp){App=_webAtomsCoreDistApp.App},function(_BusyProgress){BusyProgress=_BusyProgress.default},function(_commonApiPath){apiPath=_commonApiPath.apiPath}],execute:function(){EntityService=class EntityService extends BaseEntityService{constructor(){super(...arguments);this.queryProcessor="JavaScript";this.url=apiPath("/api/entity/")}createBusyIndicator(options){if(options.hideActivityIndicator){return}return BusyProgress.create()}};__decorate([Inject,__metadata("design:type",App)],EntityService.prototype,"app",void 0);EntityService=__decorate([DISingleton()],EntityService);_export("default",EntityService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/services/EntityService");System.register(["@web-atoms/date-time/dist/DateTime","@web-atoms/entity/dist/services/BaseEntityService"],(function(_export,_context){"use strict";var DateTime,Model,DefaultFactory,modelEntitySchemas,AppRole,AppFileContentDispositionArray,AppFile,AccessToken,AppFileVersion,AppFileAccessTypeArray,AppFileAccess,AppFileTag,FileContent,Configuration,Contact,ContactEmail,ContactPhone,ContactItem,ContactDomain,ContactAddress,CachedItem,Domain,HostedDomain,DomainUser,DomainRelayTypeArray,DomainRelay,DomainKey,EmailStatusArray,Email,EmailEngagement,EmailLog,EmailRecipientTypeArray,EmailRecipient,EmailTag,EmailAddress,EmailTemplate,Mailbox,MailboxEmail,MailboxContactStatusArray,MailboxContact,MailboxContactEmail,MailboxContactTag,MailboxSyncTargetDirectionArray,MailboxSyncTargetProtocolArray,MailboxSyncTargetLastSyncStatusArray,MailboxSyncTarget,ChannelConfig,SubscriberActivity,SearchWordStatusArray,SearchWord,SearchWordIndex,Store,StoreUser,StoreConfig,StoreItemItemTypeArray,StoreItem,StoreItemFolder,StoreItemPrice,StorePriceAddOn,StoreMediaFile,StoreInsight,StoreLedger,StoreJournalJournalTypeArray,StoreJournal,StoreJournalEntry,StoreJournalLineItemItemTypeArray,StoreJournalLineItem,StoreItemTag,UserStatusArray,User,UserPin,UserPushSubscription,UserRole,UserMailbox,UserAuthFactorMethodArray,UserAuthFactor,WebSiteFolder,WebSiteFolderHost,WebSiteFolderVersion,WebSiteChannel,WebSiteStore,LoginSession,TextDocument,Tag,fixRelatedSchemas;return{setters:[function(_webAtomsDateTimeDistDateTime){DateTime=_webAtomsDateTimeDistDateTime.default},function(_webAtomsEntityDistServicesBaseEntityService){Model=_webAtomsEntityDistServicesBaseEntityService.Model;DefaultFactory=_webAtomsEntityDistServicesBaseEntityService.DefaultFactory}],execute:function(){_export("modelEntitySchemas",modelEntitySchemas={});_export("AppRole",AppRole=new Model("AppRole",["roleName"],{},{name:"app_roles",keys:[{name:"roleName",type:"string"}],properties:[],relations:[{name:"roles",isCollection:true,isInverse:true,relatedName:"UserRole"}]}));modelEntitySchemas["AppRole"]=AppRole;_export("AppFileContentDispositionArray",AppFileContentDispositionArray=[{label:"attachment",value:"attachment"},{label:"inline",value:"inline"}]);_export("AppFile",AppFile=new Model("AppFile",["appFileID"],{isFolder:false,name:"",fileSize:0,contentType:"",isDeleted:false,isShared:false,dateCreated:new DefaultFactory((()=>new DateTime))},{name:"app_files",keys:[{name:"appFileID",type:"number",generated:"identity"}],properties:[{name:"path",type:"string",default:["path",'""']},{name:"isFolder",type:"boolean",default:["isFolder","false"]},{name:"name",type:"string",default:["name",'""']},{name:"fileSize",type:"number",default:["fileSize","0"]},{name:"contentType",type:"string",default:["contentType",'""']},{name:"contentDisposition",type:"string",default:["contentDisposition",'"attachment"']},{name:"contentID",type:"string",default:["contentID",'""']},{name:"fileContentID",type:"number"},{name:"creatorID",type:"number"},{name:"parentID",type:"number"},{name:"emailID",type:"number"},{name:"isDeleted",type:"boolean",default:["isDeleted","false"]},{name:"isShared",type:"boolean",default:["isShared","false"]},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]},{name:"versions",type:"number",default:["versions","0"]}],relations:[{name:"fileContent",fkMap:[{fk:"fileContentID",relatedKey:"fileContentID"}],relatedName:"FileContent"},{name:"creator",fkMap:[{fk:"creatorID",relatedKey:"userID"}],relatedName:"User"},{name:"parent",fkMap:[{fk:"parentID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"children",isCollection:true,isInverse:true,relatedName:"AppFile"},{name:"email",fkMap:[{fk:"emailID",relatedKey:"emailID"}],relatedName:"Email"},{name:"fileVersions",isCollection:true,isInverse:true,relatedName:"AppFileVersion"},{name:"folderVersions",isCollection:true,isInverse:true,relatedName:"AppFileVersion"},{name:"accessList",isCollection:true,isInverse:true,relatedName:"AppFileAccess"},{name:"tags",isCollection:true,isInverse:true,relatedName:"AppFileTag"},{name:"mailboxLogos",isCollection:true,isInverse:true,relatedName:"Mailbox"},{name:"previewContacts",isCollection:true,isInverse:true,relatedName:"Contact"},{name:"templates",isCollection:true,isInverse:true,relatedName:"EmailTemplate"},{name:"stores",isCollection:true,isInverse:true,relatedName:"Store"},{name:"storeItems",isCollection:true,isInverse:true,relatedName:"StoreItem"},{name:"storeMediaFiles",isCollection:true,isInverse:true,relatedName:"StoreMediaFile"},{name:"storeJournals",isCollection:true,isInverse:true,relatedName:"StoreJournal"},{name:"userPins",isCollection:true,isInverse:true,relatedName:"UserPin"},{name:"websiteFolder",isCollection:false,isInverse:true,relatedName:"WebSiteFolder"},{name:"currentVersionWebSites",isCollection:true,isInverse:true,relatedName:"WebSiteFolder"},{name:"websiteVersions",isCollection:true,isInverse:true,relatedName:"WebSiteFolderVersion"}]}));modelEntitySchemas["AppFile"]=AppFile;_export("AccessToken",AccessToken=new Model("AccessToken",["tokenID"],{dateCreated:new DefaultFactory((()=>new DateTime)),expiryDate:new DefaultFactory((()=>new DateTime))},{name:"access_tokens",keys:[{name:"tokenID",type:"number",generated:"identity"}],properties:[{name:"userID",type:"number"},{name:"secret",type:"string",default:["secret",'""']},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"expiryDate",type:"DateTime",default:["expiryDate","new DefaultFactory(() => new DateTime())"]}],relations:[{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"}]}));modelEntitySchemas["AccessToken"]=AccessToken;_export("AppFileVersion",AppFileVersion=new Model("AppFileVersion",["versionID"],{name:"",dateCreated:new DefaultFactory((()=>new DateTime))},{name:"app_file_versions",keys:[{name:"versionID",type:"number",generated:"identity"}],properties:[{name:"fileID",type:"number"},{name:"userID",type:"number"},{name:"sessionID",type:"number"},{name:"fileContentID",type:"number"},{name:"name",type:"string",default:["name",'""']},{name:"folderID",type:"number"},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]}],relations:[{name:"file",fkMap:[{fk:"fileID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"},{name:"session",fkMap:[{fk:"sessionID",relatedKey:"sessionID"}],relatedName:"LoginSession"},{name:"fileContent",fkMap:[{fk:"fileContentID",relatedKey:"fileContentID"}],relatedName:"FileContent"},{name:"folder",fkMap:[{fk:"folderID",relatedKey:"appFileID"}],relatedName:"AppFile"}]}));modelEntitySchemas["AppFileVersion"]=AppFileVersion;_export("AppFileAccessTypeArray",AppFileAccessTypeArray=[{label:"create",value:"create"},{label:"read",value:"read"},{label:"write",value:"write"},{label:"delegate",value:"delegate"}]);_export("AppFileAccess",AppFileAccess=new Model("AppFileAccess",["accessID","type"],{dateCreated:new DefaultFactory((()=>new DateTime)),dateUpdated:new DefaultFactory((()=>new DateTime))},{name:"app_file_access",keys:[{name:"accessID",type:"number",generated:"identity"},{name:"type",type:"string"}],properties:[{name:"fileID",type:"number"},{name:"userID",type:"number"},{name:"accessCode",type:"string",default:["accessCode",'""']},{name:"expires",type:"DateTime",default:["expires","new DefaultFactory(() => new DateTime())"]},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]}],relations:[{name:"file",fkMap:[{fk:"fileID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"}]}));modelEntitySchemas["AppFileAccess"]=AppFileAccess;_export("AppFileTag",AppFileTag=new Model("AppFileTag",["appFileID","tagID"],{},{name:"app_file_tags",keys:[{name:"appFileID",type:"number"},{name:"tagID",type:"number"}],properties:[],relations:[{name:"file",fkMap:[{fk:"appFileID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"tag",fkMap:[{fk:"tagID",relatedKey:"tagID"}],relatedName:"Tag"}]}));modelEntitySchemas["AppFileTag"]=AppFileTag;_export("FileContent",FileContent=new Model("FileContent",["fileContentID"],{contentHash:"",contentType:"",contentSize:0,dateCreated:new DefaultFactory((()=>new DateTime)),deleted:false},{name:"file_contents",keys:[{name:"fileContentID",type:"number",generated:"identity"}],properties:[{name:"contentHash",type:"string",default:["contentHash",'""']},{name:"cloudPath",type:"string",default:["cloudPath",'""']},{name:"contentType",type:"string",default:["contentType",'""']},{name:"contentSize",type:"number",default:["contentSize","0"]},{name:"compression",type:"string",default:["compression",'""']},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"textDocumentID",type:"number"},{name:"deleted",type:"boolean",default:["deleted","false"]}],relations:[{name:"textDocument",fkMap:[{fk:"textDocumentID",relatedKey:"textDocumentID"}],relatedName:"TextDocument"},{name:"appFiles",isCollection:true,isInverse:true,relatedName:"AppFile"},{name:"versions",isCollection:true,isInverse:true,relatedName:"AppFileVersion"}]}));modelEntitySchemas["FileContent"]=FileContent;_export("Configuration",Configuration=new Model("Configuration",["name"],{},{name:"configuration",keys:[{name:"name",type:"string"}],properties:[{name:"configValue",type:"string",default:["configValue",'""']}],relations:[]}));modelEntitySchemas["Configuration"]=Configuration;_export("Contact",Contact=new Model("Contact",["contactID"],{name:"",type:"",dateCreated:new DefaultFactory((()=>new DateTime)),dateUpdated:new DefaultFactory((()=>new DateTime))},{name:"contacts",keys:[{name:"contactID",type:"number",generated:"identity"}],properties:[{name:"externalID",type:"string",default:["externalID",'""']},{name:"userID",type:"number"},{name:"mailboxID",type:"number"},{name:"domainID",type:"number"},{name:"name",type:"string",default:["name",'""']},{name:"description",type:"string",default:["description",'""']},{name:"companyID",type:"string",default:["companyID",'""']},{name:"salesTaxID",type:"string",default:["salesTaxID",'""']},{name:"gstTaxID",type:"string",default:["gstTaxID",'""']},{name:"vatTaxID",type:"string",default:["vatTaxID",'""']},{name:"incomeTaxID",type:"string",default:["incomeTaxID",'""']},{name:"type",type:"string",default:["type",'""']},{name:"synchronization",type:"string",default:["synchronization",'""']},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]},{name:"previewID",type:"number"},{name:"billingAddressID",type:"number"},{name:"shippingAddressID",type:"number"}],relations:[{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"},{name:"mailbox",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"}],relatedName:"Mailbox"},{name:"domain",fkMap:[{fk:"domainID",relatedKey:"domainID"}],relatedName:"HostedDomain"},{name:"preview",fkMap:[{fk:"previewID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"billingAddress",fkMap:[{fk:"billingAddressID",relatedKey:"addressID"}],relatedName:"ContactAddress"},{name:"addresses",isCollection:true,isInverse:true,relatedName:"ContactAddress"},{name:"shippingAddress",fkMap:[{fk:"shippingAddressID",relatedKey:"addressID"}],relatedName:"ContactAddress"},{name:"emails",isCollection:true,isInverse:true,relatedName:"ContactEmail"},{name:"phones",isCollection:true,isInverse:true,relatedName:"ContactPhone"},{name:"items",isCollection:true,isInverse:true,relatedName:"ContactItem"},{name:"domains",isCollection:true,isInverse:true,relatedName:"ContactDomain"},{name:"sellerStores",isCollection:true,isInverse:true,relatedName:"Store"},{name:"vendorItems",isCollection:true,isInverse:true,relatedName:"StoreItem"},{name:"ledgers",isCollection:true,isInverse:true,relatedName:"StoreLedger"},{name:"soldInvoices",isCollection:true,isInverse:true,relatedName:"StoreJournal"},{name:"boughtInvoices",isCollection:true,isInverse:true,relatedName:"StoreJournal"},{name:"soldItems",isCollection:true,isInverse:true,relatedName:"StoreJournalLineItem"}]}));modelEntitySchemas["Contact"]=Contact;_export("ContactEmail",ContactEmail=new Model("ContactEmail",["emailAddressID","contactID"],{type:"",blocked:false},{name:"contact_emails",keys:[{name:"emailAddressID",type:"number"},{name:"contactID",type:"number"}],properties:[{name:"type",type:"string",default:["type",'""']},{name:"notes",type:"string",default:["notes",'""']},{name:"blocked",type:"boolean",default:["blocked","false"]}],relations:[{name:"emailAddress",fkMap:[{fk:"emailAddressID",relatedKey:"emailAddressID"}],relatedName:"EmailAddress"},{name:"contact",fkMap:[{fk:"contactID",relatedKey:"contactID"}],relatedName:"Contact"}]}));modelEntitySchemas["ContactEmail"]=ContactEmail;_export("ContactPhone",ContactPhone=new Model("ContactPhone",["contactID","phoneNumberE64"],{type:""},{name:"contact_phones",keys:[{name:"contactID",type:"number"},{name:"phoneNumberE64",type:"string"}],properties:[{name:"type",type:"string",default:["type",'""']},{name:"notes",type:"string",default:["notes",'""']}],relations:[{name:"contact",fkMap:[{fk:"contactID",relatedKey:"contactID"}],relatedName:"Contact"}]}));modelEntitySchemas["ContactPhone"]=ContactPhone;_export("ContactItem",ContactItem=new Model("ContactItem",["itemID"],{type:"",title:"",valuesJson:""},{name:"contact_items",keys:[{name:"itemID",type:"number",generated:"identity"}],properties:[{name:"contactID",type:"number"},{name:"type",type:"string",default:["type",'""']},{name:"title",type:"string",default:["title",'""']},{name:"valuesJson",type:"string",default:["valuesJson",'""']}],relations:[{name:"contact",fkMap:[{fk:"contactID",relatedKey:"contactID"}],relatedName:"Contact"}]}));modelEntitySchemas["ContactItem"]=ContactItem;_export("ContactDomain",ContactDomain=new Model("ContactDomain",["domainID","contactID"],{blocked:false},{name:"contact_domains",keys:[{name:"domainID",type:"number"},{name:"contactID",type:"number"}],properties:[{name:"blocked",type:"boolean",default:["blocked","false"]}],relations:[{name:"domain",fkMap:[{fk:"domainID",relatedKey:"domainID"}],relatedName:"Domain"},{name:"contact",fkMap:[{fk:"contactID",relatedKey:"contactID"}],relatedName:"Contact"}]}));modelEntitySchemas["ContactDomain"]=ContactDomain;_export("ContactAddress",ContactAddress=new Model("ContactAddress",["addressID"],{title:"",line1:""},{name:"contact_addresses",keys:[{name:"addressID",type:"number",generated:"identity"}],properties:[{name:"contactID",type:"number"},{name:"title",type:"string",default:["title",'""']},{name:"line1",type:"string",default:["line1",'""']},{name:"line2",type:"string",default:["line2",'""']},{name:"line3",type:"string",default:["line3",'""']},{name:"city",type:"string",default:["city",'""']},{name:"state",type:"string",default:["state",'""']},{name:"countryCode",type:"string",default:["countryCode",'""']},{name:"phoneNumber",type:"string",default:["phoneNumber",'""']},{name:"notes",type:"string",default:["notes",'""']}],relations:[{name:"contact",fkMap:[{fk:"contactID",relatedKey:"contactID"}],relatedName:"Contact"},{name:"billingContacts",isCollection:true,isInverse:true,relatedName:"Contact"},{name:"shippingContacts",isCollection:true,isInverse:true,relatedName:"Contact"}]}));modelEntitySchemas["ContactAddress"]=ContactAddress;_export("CachedItem",CachedItem=new Model("CachedItem",["itemID","keyHash"],{key:"",expiry:new DefaultFactory((()=>new DateTime)),ready:false,slide:false},{name:"cached_item",keys:[{name:"itemID",type:"number",generated:"identity"},{name:"keyHash",type:"string"}],properties:[{name:"key",type:"string",default:["key",'""']},{name:"expiry",type:"DateTime",default:["expiry","new DefaultFactory(() => new DateTime())"]},{name:"ready",type:"boolean",default:["ready","false"]},{name:"slide",type:"boolean",default:["slide","false"]},{name:"lockToken",type:"string",default:["lockToken",'""']},{name:"lockExpiry",type:"DateTime",default:["lockExpiry","new DefaultFactory(() => new DateTime())"]}],relations:[]}));modelEntitySchemas["CachedItem"]=CachedItem;_export("Domain",Domain=new Model("Domain",["domainID"],{name:""},{name:"domains",keys:[{name:"domainID",type:"number",generated:"identity"}],properties:[{name:"name",type:"string",default:["name",'""']}],relations:[{name:"emailAddresses",isCollection:true,isInverse:true,relatedName:"EmailAddress"},{name:"hostedDomain",isCollection:false,isInverse:true,relatedName:"HostedDomain"},{name:"contactDomains",isCollection:true,isInverse:true,relatedName:"ContactDomain"}]}));modelEntitySchemas["Domain"]=Domain;_export("HostedDomain",HostedDomain=new Model("HostedDomain",["domainID"],{enableReceive:false,enableSend:false,useRelay:false,external:false},{name:"hosted_domains",keys:[{name:"domainID",type:"number"}],properties:[{name:"enableReceive",type:"boolean",default:["enableReceive","false"]},{name:"enableSend",type:"boolean",default:["enableSend","false"]},{name:"useRelay",type:"boolean",default:["useRelay","false"]},{name:"external",type:"boolean",default:["external","false"]},{name:"aliasForName",type:"string"}],relations:[{name:"domain",fkMap:[{fk:"domainID",relatedKey:"domainID"}],relatedName:"Domain"},{name:"aliasFor",fkMap:[{fk:"aliasForName",relatedKey:"domainID"}],relatedName:"HostedDomain"},{name:"aliases",isCollection:true,isInverse:true,relatedName:"HostedDomain"},{name:"mailboxes",isCollection:true,isInverse:true,relatedName:"Mailbox"},{name:"contacts",isCollection:true,isInverse:true,relatedName:"Contact"},{name:"domainUsers",isCollection:true,isInverse:true,relatedName:"DomainUser"},{name:"relays",isCollection:true,isInverse:true,relatedName:"DomainRelay"},{name:"domainKeys",isCollection:true,isInverse:true,relatedName:"DomainKey"},{name:"templates",isCollection:true,isInverse:true,relatedName:"EmailTemplate"}]}));modelEntitySchemas["HostedDomain"]=HostedDomain;_export("DomainUser",DomainUser=new Model("DomainUser",["domainID","userID"],{isAdmin:false,allowCreateMailbox:false},{name:"domain_users",keys:[{name:"domainID",type:"number"},{name:"userID",type:"number"}],properties:[{name:"prefix",type:"string",default:["prefix",'""']},{name:"isAdmin",type:"boolean",default:["isAdmin","false"]},{name:"allowCreateMailbox",type:"boolean",default:["allowCreateMailbox","false"]}],relations:[{name:"hostedDomain",fkMap:[{fk:"domainID",relatedKey:"domainID"}],relatedName:"HostedDomain"},{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"}]}));modelEntitySchemas["DomainUser"]=DomainUser;_export("DomainRelayTypeArray",DomainRelayTypeArray=[{label:"smtp",value:"smtp"},{label:"ses",value:"ses"},{label:"https",value:"https"}]);_export("DomainRelay",DomainRelay=new Model("DomainRelay",["domainRelayID"],{type:"smtp",host:"",username:"",password:"",priority:0},{name:"domain_relays",keys:[{name:"domainRelayID",type:"number",generated:"identity"}],properties:[{name:"domainID",type:"number"},{name:"type",type:"string",default:["type",'"smtp"']},{name:"host",type:"string",default:["host",'""']},{name:"username",type:"string",default:["username",'""']},{name:"password",type:"string",default:["password",'""']},{name:"priority",type:"number",default:["priority","0"]},{name:"script",type:"string",default:["script",'""']}],relations:[{name:"hostedDomain",fkMap:[{fk:"domainID",relatedKey:"domainID"}],relatedName:"HostedDomain"}]}));modelEntitySchemas["DomainRelay"]=DomainRelay;_export("DomainKey",DomainKey=new Model("DomainKey",["domainKeyID"],{name:"",keyType:"",publicKey:""},{name:"domain_keys",keys:[{name:"domainKeyID",type:"number",generated:"identity"}],properties:[{name:"name",type:"string",default:["name",'""']},{name:"keyType",type:"string",default:["keyType",'""']},{name:"publicKey",type:"string",default:["publicKey",'""']},{name:"domainID",type:"number"},{name:"privateKey",type:"string",default:["privateKey",'""']}],relations:[{name:"domain",fkMap:[{fk:"domainID",relatedKey:"domainID"}],relatedName:"HostedDomain"}]}));modelEntitySchemas["DomainKey"]=DomainKey;_export("EmailStatusArray",EmailStatusArray=[{label:"queued",value:"queued"},{label:"received",value:"received"},{label:"draft",value:"draft"},{label:"published",value:"published"},{label:"pending-approval",value:"pending-approval"},{label:"scheduled",value:"scheduled"},{label:"sent",value:"sent"},{label:"sent-failed",value:"sent-failed"},{label:"deleted",value:"deleted"}]);_export("Email",Email=new Model("Email",["emailID"],{senderName:"",received:false,dateReceived:new DefaultFactory((()=>new DateTime)),dateCreated:new DefaultFactory((()=>new DateTime)),status:"queued",forwardCount:0,replyCount:0,viewCount:0,emailSize:0,originalFileSize:0},{name:"emails",keys:[{name:"emailID",type:"number",generated:"identity"}],properties:[{name:"subject",type:"string",default:["subject",'""']},{name:"summary",type:"string",default:["summary",'""']},{name:"textBody",type:"string",default:["textBody",'""']},{name:"htmlBody",type:"string",default:["htmlBody",'""']},{name:"senderName",type:"string",default:["senderName",'""']},{name:"senderID",type:"number"},{name:"userID",type:"number"},{name:"received",type:"boolean",default:["received","false"]},{name:"headers",type:"string",default:["headers",'""']},{name:"headerMessageID",type:"string",default:["headerMessageID",'""']},{name:"externalEmailID",type:"string",default:["externalEmailID",'""']},{name:"dateReceived",type:"DateTime",default:["dateReceived","new DefaultFactory(() => new DateTime())"]},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"dateSent",type:"DateTime",default:["dateSent","new DefaultFactory(() => new DateTime())"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]},{name:"status",type:"string",default:["status",'"queued"']},{name:"forwardCount",type:"number",default:["forwardCount","0"]},{name:"replyCount",type:"number",default:["replyCount","0"]},{name:"viewCount",type:"number",default:["viewCount","0"]},{name:"mimeFileID",type:"number"},{name:"htmlBodyID",type:"number"},{name:"emailSize",type:"number",default:["emailSize","0"]},{name:"originalFileSize",type:"number",default:["originalFileSize","0"]},{name:"workflowID",type:"string",default:["workflowID",'""']},{name:"parentID",type:"number"},{name:"forwardedID",type:"number"},{name:"engagement",type:"string",default:["engagement",'""']},{name:"tags",type:"string",default:["tags",'""']}],relations:[{name:"senderEmail",fkMap:[{fk:"senderID",relatedKey:"emailAddressID"}],relatedName:"EmailAddress"},{name:"senderUser",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"},{name:"mimeFile",fkMap:[{fk:"mimeFileID",relatedKey:"logID"}],relatedName:"EmailLog"},{name:"logs",isCollection:true,isInverse:true,relatedName:"EmailLog"},{name:"htmlBodyFile",fkMap:[{fk:"htmlBodyID",relatedKey:"logID"}],relatedName:"EmailLog"},{name:"parent",fkMap:[{fk:"parentID",relatedKey:"emailID"}],relatedName:"Email"},{name:"children",isCollection:true,isInverse:true,relatedName:"Email"},{name:"forwarded",fkMap:[{fk:"forwardedID",relatedKey:"emailID"}],relatedName:"Email"},{name:"forwards",isCollection:true,isInverse:true,relatedName:"Email"},{name:"attachments",isCollection:true,isInverse:true,relatedName:"AppFile"},{name:"engagements",isCollection:true,isInverse:true,relatedName:"EmailEngagement"},{name:"recipients",isCollection:true,isInverse:true,relatedName:"EmailRecipient"},{name:"emailTags",isCollection:true,isInverse:true,relatedName:"EmailTag"},{name:"mailboxes",isCollection:true,isInverse:true,relatedName:"MailboxEmail"},{name:"lastEmailThreads",isCollection:true,isInverse:true,relatedName:"MailboxContact"},{name:"threadEmails",isCollection:true,isInverse:true,relatedName:"MailboxContactEmail"},{name:"subscriberActivities",isCollection:true,isInverse:true,relatedName:"SubscriberActivity"}]}));modelEntitySchemas["Email"]=Email;_export("EmailEngagement",EmailEngagement=new Model("EmailEngagement",["emailID","engagement"],{count:0},{name:"email_engagements",keys:[{name:"emailID",type:"number"},{name:"engagement",type:"string"}],properties:[{name:"count",type:"number",default:["count","0"]}],relations:[{name:"email",fkMap:[{fk:"emailID",relatedKey:"emailID"}],relatedName:"Email"}]}));modelEntitySchemas["EmailEngagement"]=EmailEngagement;_export("EmailLog",EmailLog=new Model("EmailLog",["logID"],{fileName:"",fileSize:0,compression:"",dateCreated:new DefaultFactory((()=>new DateTime)),cloudPath:""},{name:"email_logs",keys:[{name:"logID",type:"number",generated:"identity"}],properties:[{name:"emailID",type:"number"},{name:"fileName",type:"string",default:["fileName",'""']},{name:"fileSize",type:"number",default:["fileSize","0"]},{name:"compression",type:"string",default:["compression",'""']},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"cloudPath",type:"string",default:["cloudPath",'""']}],relations:[{name:"email",fkMap:[{fk:"emailID",relatedKey:"emailID"}],relatedName:"Email"},{name:"mimeFileEmails",isCollection:true,isInverse:true,relatedName:"Email"},{name:"htmlBodyFileEmails",isCollection:true,isInverse:true,relatedName:"Email"}]}));modelEntitySchemas["EmailLog"]=EmailLog;_export("EmailRecipientTypeArray",EmailRecipientTypeArray=[{label:"from",value:"from"},{label:"to",value:"to"},{label:"cc",value:"cc"},{label:"bcc",value:"bcc"},{label:"viewer",value:"viewer"},{label:"editor",value:"editor"}]);_export("EmailRecipient",EmailRecipient=new Model("EmailRecipient",["emailID","emailAddressID"],{type:"from"},{name:"email_recipients",keys:[{name:"emailID",type:"number"},{name:"emailAddressID",type:"number"}],properties:[{name:"type",type:"string",default:["type",'"from"']},{name:"name",type:"string",default:["name",'""']},{name:"dateSent",type:"DateTime",default:["dateSent","new DefaultFactory(() => new DateTime())"]},{name:"error",type:"string",default:["error",'""']},{name:"status",type:"string",default:["status",'""']},{name:"replyTo",type:"string",default:["replyTo",'""']}],relations:[{name:"email",fkMap:[{fk:"emailID",relatedKey:"emailID"}],relatedName:"Email"},{name:"emailAddress",fkMap:[{fk:"emailAddressID",relatedKey:"emailAddressID"}],relatedName:"EmailAddress"}]}));modelEntitySchemas["EmailRecipient"]=EmailRecipient;_export("EmailTag",EmailTag=new Model("EmailTag",["emailID","tagID"],{},{name:"email_tags",keys:[{name:"emailID",type:"number"},{name:"tagID",type:"number"}],properties:[],relations:[{name:"email",fkMap:[{fk:"emailID",relatedKey:"emailID"}],relatedName:"Email"},{name:"tag",fkMap:[{fk:"tagID",relatedKey:"tagID"}],relatedName:"Tag"}]}));modelEntitySchemas["EmailTag"]=EmailTag;_export("EmailAddress",EmailAddress=new Model("EmailAddress",["emailAddressID"],{emailAddress:"",name:"",blocked:false},{name:"email_addresses",keys:[{name:"emailAddressID",type:"number",generated:"identity"}],properties:[{name:"emailAddress",type:"string",default:["emailAddress",'""']},{name:"domainID",type:"number"},{name:"name",type:"string",default:["name",'""']},{name:"blocked",type:"boolean",default:["blocked","false"]}],relations:[{name:"domain",fkMap:[{fk:"domainID",relatedKey:"domainID"}],relatedName:"Domain"},{name:"senders",isCollection:true,isInverse:true,relatedName:"Email"},{name:"mailbox",isCollection:false,isInverse:true,relatedName:"Mailbox"},{name:"contactEmails",isCollection:true,isInverse:true,relatedName:"ContactEmail"},{name:"recipients",isCollection:true,isInverse:true,relatedName:"EmailRecipient"},{name:"threads",isCollection:true,isInverse:true,relatedName:"MailboxContact"},{name:"subscriberActivities",isCollection:true,isInverse:true,relatedName:"SubscriberActivity"}]}));modelEntitySchemas["EmailAddress"]=EmailAddress;_export("EmailTemplate",EmailTemplate=new Model("EmailTemplate",["templateID"],{},{name:"email_templates",keys:[{name:"templateID",type:"number",generated:"identity"}],properties:[{name:"domainID",type:"number"},{name:"mailboxID",type:"number"},{name:"folderID",type:"number"}],relations:[{name:"domain",fkMap:[{fk:"domainID",relatedKey:"domainID"}],relatedName:"HostedDomain"},{name:"mailbox",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"}],relatedName:"Mailbox"},{name:"folder",fkMap:[{fk:"folderID",relatedKey:"appFileID"}],relatedName:"AppFile"}]}));modelEntitySchemas["EmailTemplate"]=EmailTemplate;_export("Mailbox",Mailbox=new Model("Mailbox",["mailboxID"],{storage:0,maxStorage:0,indexAttachments:false,indexImageAttachments:false,dateCreated:new DefaultFactory((()=>new DateTime)),dateUpdated:new DefaultFactory((()=>new DateTime)),isChannel:false,isPrivateChannel:false,requireApproval:false,subscriberCount:0},{name:"mailboxes",keys:[{name:"mailboxID",type:"number"}],properties:[{name:"domainID",type:"number"},{name:"storage",type:"number",default:["storage","0"]},{name:"maxStorage",type:"number",default:["maxStorage","0"]},{name:"indexAttachments",type:"boolean",default:["indexAttachments","false"]},{name:"indexImageAttachments",type:"boolean",default:["indexImageAttachments","false"]},{name:"firstID",type:"number",default:["firstID","0"]},{name:"recentID",type:"number",default:["recentID","0"]},{name:"logoID",type:"number"},{name:"description",type:"string",default:["description",'""']},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]},{name:"isChannel",type:"boolean",default:["isChannel","false"]},{name:"isPrivateChannel",type:"boolean",default:["isPrivateChannel","false"]},{name:"requireApproval",type:"boolean",default:["requireApproval","false"]},{name:"subscriberCount",type:"number",default:["subscriberCount","0"]},{name:"datePublished",type:"DateTime",default:["datePublished","new DefaultFactory(() => new DateTime())"]},{name:"dateEngaged",type:"DateTime",default:["dateEngaged","new DefaultFactory(() => new DateTime())"]},{name:"parentID",type:"number",default:["parentID","0"]}],relations:[{name:"emailAddress",fkMap:[{fk:"mailboxID",relatedKey:"emailAddressID"}],relatedName:"EmailAddress"},{name:"domain",fkMap:[{fk:"domainID",relatedKey:"domainID"}],relatedName:"HostedDomain"},{name:"logo",fkMap:[{fk:"logoID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"contacts",isCollection:true,isInverse:true,relatedName:"Contact"},{name:"templates",isCollection:true,isInverse:true,relatedName:"EmailTemplate"},{name:"emails",isCollection:true,isInverse:true,relatedName:"MailboxEmail"},{name:"mailboxContacts",isCollection:true,isInverse:true,relatedName:"MailboxContact"},{name:"threadEmails",isCollection:true,isInverse:true,relatedName:"MailboxContactEmail"},{name:"syncTargets",isCollection:true,isInverse:true,relatedName:"MailboxSyncTarget"},{name:"channelConfig",isCollection:false,isInverse:true,relatedName:"ChannelConfig"},{name:"subscriberActivities",isCollection:true,isInverse:true,relatedName:"SubscriberActivity"},{name:"userPins",isCollection:true,isInverse:true,relatedName:"UserPin"},{name:"userMailboxes",isCollection:true,isInverse:true,relatedName:"UserMailbox"},{name:"websiteChannels",isCollection:true,isInverse:true,relatedName:"WebSiteChannel"}]}));modelEntitySchemas["Mailbox"]=Mailbox;_export("MailboxEmail",MailboxEmail=new Model("MailboxEmail",["mailboxID","emailID"],{},{name:"mailbox_emails",keys:[{name:"mailboxID",type:"number"},{name:"emailID",type:"number"}],properties:[],relations:[{name:"mailbox",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"}],relatedName:"Mailbox"},{name:"email",fkMap:[{fk:"emailID",relatedKey:"emailID"}],relatedName:"Email"}]}));modelEntitySchemas["MailboxEmail"]=MailboxEmail;_export("MailboxContactStatusArray",MailboxContactStatusArray=[{label:"invited",value:"invited"},{label:"added",value:"added"},{label:"active",value:"active"},{label:"unsubscribed",value:"unsubscribed"},{label:"blocked",value:"blocked"}]);_export("MailboxContact",MailboxContact=new Model("MailboxContact",["mailboxID","emailAddressID"],{dateCreated:new DefaultFactory((()=>new DateTime)),dateUpdated:new DefaultFactory((()=>new DateTime)),unread:0,total:0,isOwner:false,canContribute:false,priority:0,blocked:false,mute:false,status:"invited"},{name:"mailbox_contacts",keys:[{name:"mailboxID",type:"number"},{name:"emailAddressID",type:"number"}],properties:[{name:"lastEmailID",type:"number"},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]},{name:"unread",type:"number",default:["unread","0"]},{name:"total",type:"number",default:["total","0"]},{name:"doNotIndex",type:"boolean",default:["doNotIndex","false"]},{name:"doNotIndexAttachments",type:"boolean",default:["doNotIndexAttachments","false"]},{name:"isOwner",type:"boolean",default:["isOwner","false"]},{name:"canContribute",type:"boolean",default:["canContribute","false"]},{name:"priority",type:"number",default:["priority","0"]},{name:"blocked",type:"boolean",default:["blocked","false"]},{name:"mute",type:"boolean",default:["mute","false"]},{name:"status",type:"string",default:["status",'"invited"']}],relations:[{name:"mailbox",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"}],relatedName:"Mailbox"},{name:"emailAddress",fkMap:[{fk:"emailAddressID",relatedKey:"emailAddressID"}],relatedName:"EmailAddress"},{name:"lastEmail",fkMap:[{fk:"lastEmailID",relatedKey:"emailID"}],relatedName:"Email"},{name:"tags",isCollection:true,isInverse:true,relatedName:"MailboxContactTag"}]}));modelEntitySchemas["MailboxContact"]=MailboxContact;_export("MailboxContactEmail",MailboxContactEmail=new Model("MailboxContactEmail",["mailboxID","emailAddressID","emailID"],{dateReceived:new DefaultFactory((()=>new DateTime))},{name:"mailbox_contact_emails",keys:[{name:"mailboxID",type:"number"},{name:"emailAddressID",type:"number"},{name:"emailID",type:"number"}],properties:[{name:"dateReceived",type:"DateTime",default:["dateReceived","new DefaultFactory(() => new DateTime())"]},{name:"timeRead",type:"DateTime",default:["timeRead","new DefaultFactory(() => new DateTime())"]},{name:"engagement",type:"string",default:["engagement",'""']},{name:"signedFileLogID",type:"number",default:["signedFileLogID","0"]}],relations:[{name:"mailbox",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"}],relatedName:"Mailbox"},{name:"email",fkMap:[{fk:"emailID",relatedKey:"emailID"}],relatedName:"Email"}]}));modelEntitySchemas["MailboxContactEmail"]=MailboxContactEmail;_export("MailboxContactTag",MailboxContactTag=new Model("MailboxContactTag",["mailboxID","emailAddressID","tagID"],{count:0,dateUpdated:new DefaultFactory((()=>new DateTime))},{name:"mailbox_contact_tags",keys:[{name:"mailboxID",type:"number"},{name:"emailAddressID",type:"number"},{name:"tagID",type:"number"}],properties:[{name:"count",type:"number",default:["count","0"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]}],relations:[{name:"tag",fkMap:[{fk:"tagID",relatedKey:"tagID"}],relatedName:"Tag"},{name:"mailboxContact",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"},{fk:"emailAddressID",relatedKey:"emailAddressID"}],relatedName:"MailboxContact"}]}));modelEntitySchemas["MailboxContactTag"]=MailboxContactTag;_export("MailboxSyncTargetDirectionArray",MailboxSyncTargetDirectionArray=[{label:"in",value:"in"},{label:"out",value:"out"}]);_export("MailboxSyncTargetProtocolArray",MailboxSyncTargetProtocolArray=[{label:"imap",value:"imap"}]);_export("MailboxSyncTargetLastSyncStatusArray",MailboxSyncTargetLastSyncStatusArray=[{label:"none",value:"none"},{label:"success",value:"success"},{label:"failed",value:"failed"}]);_export("MailboxSyncTarget",MailboxSyncTarget=new Model("MailboxSyncTarget",["syncTargetID"],{direction:"in",protocol:"imap",username:"",host:"",port:0,isSecure:false,syncAllFolders:false,syncJunkMails:false,intervalSeconds:0,active:false},{name:"mailbox_sync_targets",keys:[{name:"syncTargetID",type:"number",generated:"identity"}],properties:[{name:"mailboxID",type:"number"},{name:"direction",type:"string",default:["direction",'"in"']},{name:"protocol",type:"string",default:["protocol",'"imap"']},{name:"username",type:"string",default:["username",'""']},{name:"password",type:"string",default:["password",'""']},{name:"host",type:"string",default:["host",'""']},{name:"port",type:"number",default:["port","0"]},{name:"isSecure",type:"boolean",default:["isSecure","false"]},{name:"syncAllFolders",type:"boolean",default:["syncAllFolders","false"]},{name:"syncJunkMails",type:"boolean",default:["syncJunkMails","false"]},{name:"allFolderName",type:"string",default:["allFolderName",'""']},{name:"intervalSeconds",type:"number",default:["intervalSeconds","0"]},{name:"active",type:"boolean",default:["active","false"]},{name:"lastSync",type:"DateTime",default:["lastSync","new DefaultFactory(() => new DateTime())"]},{name:"lastSyncStatus",type:"string",default:["lastSyncStatus",'"none"']},{name:"syncState",type:"string",default:["syncState",'""']},{name:"lastSyncError",type:"string",default:["lastSyncError",'""']}],relations:[{name:"mailbox",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"}],relatedName:"Mailbox"}]}));modelEntitySchemas["MailboxSyncTarget"]=MailboxSyncTarget;_export("ChannelConfig",ChannelConfig=new Model("ChannelConfig",["mailboxID"],{sendInviteOnEngagement:false,memberOnlyEngagement:false,notSafeForWork:false},{name:"channel_configs",keys:[{name:"mailboxID",type:"number"}],properties:[{name:"inviteContent",type:"string",default:["inviteContent",'""']},{name:"welcomeContent",type:"string",default:["welcomeContent",'""']},{name:"sendInviteOnEngagement",type:"boolean",default:["sendInviteOnEngagement","false"]},{name:"memberOnlyEngagement",type:"boolean",default:["memberOnlyEngagement","false"]},{name:"notSafeForWork",type:"boolean",default:["notSafeForWork","false"]},{name:"postFooter",type:"string",default:["postFooter",'""']}],relations:[{name:"mailbox",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"}],relatedName:"Mailbox"}]}));modelEntitySchemas["ChannelConfig"]=ChannelConfig;_export("SubscriberActivity",SubscriberActivity=new Model("SubscriberActivity",["activityID"],{activity:"",dateCreated:new DefaultFactory((()=>new DateTime))},{name:"subscriber_activities",keys:[{name:"activityID",type:"number",generated:"identity"}],properties:[{name:"mailboxID",type:"number"},{name:"emailID",type:"number"},{name:"emailAddressID",type:"number"},{name:"activity",type:"string",default:["activity",'""']},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"ipAddress",type:"string",default:["ipAddress",'""']},{name:"accessCode",type:"string",default:["accessCode",'""']}],relations:[{name:"mailbox",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"}],relatedName:"Mailbox"},{name:"email",fkMap:[{fk:"emailID",relatedKey:"emailID"}],relatedName:"Email"},{name:"subscriber",fkMap:[{fk:"emailAddressID",relatedKey:"emailAddressID"}],relatedName:"EmailAddress"}]}));modelEntitySchemas["SubscriberActivity"]=SubscriberActivity;_export("SearchWordStatusArray",SearchWordStatusArray=[{label:"begin",value:"begin"},{label:"ready",value:"ready"},{label:"deleted",value:"deleted"}]);_export("SearchWord",SearchWord=new Model("SearchWord",["wordID"],{word:"",dateCreated:new DefaultFactory((()=>new DateTime)),dateUpdated:new DefaultFactory((()=>new DateTime)),status:"begin"},{name:"search_words",keys:[{name:"wordID",type:"number",generated:"identity"}],properties:[{name:"word",type:"string",default:["word",'""']},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]},{name:"expires",type:"DateTime",default:["expires","new DefaultFactory(() => new DateTime())"]},{name:"status",type:"string",default:["status",'"begin"']},{name:"recentID",type:"number",default:["recentID","0"]},{name:"firstID",type:"number",default:["firstID","0"]}],relations:[{name:"indexes",isCollection:true,isInverse:true,relatedName:"SearchWordIndex"}]}));modelEntitySchemas["SearchWord"]=SearchWord;_export("SearchWordIndex",SearchWordIndex=new Model("SearchWordIndex",["wordID","fileContentID"],{rank:0},{name:"search_word_index",keys:[{name:"wordID",type:"number"},{name:"fileContentID",type:"number"}],properties:[{name:"rank",type:"number",default:["rank","0"]}],relations:[{name:"word",fkMap:[{fk:"wordID",relatedKey:"wordID"}],relatedName:"SearchWord"}]}));modelEntitySchemas["SearchWordIndex"]=SearchWordIndex;_export("Store",Store=new Model("Store",["storeID"],{name:""},{name:"stores",keys:[{name:"storeID",type:"number",generated:"identity"}],properties:[{name:"name",type:"string",default:["name",'""']},{name:"sellerID",type:"number"},{name:"folderID",type:"number"}],relations:[{name:"seller",fkMap:[{fk:"sellerID",relatedKey:"contactID"}],relatedName:"Contact"},{name:"folder",fkMap:[{fk:"folderID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"storeUsers",isCollection:true,isInverse:true,relatedName:"StoreUser"},{name:"configs",isCollection:true,isInverse:true,relatedName:"StoreConfig"},{name:"storeItems",isCollection:true,isInverse:true,relatedName:"StoreItem"},{name:"itemFolders",isCollection:true,isInverse:true,relatedName:"StoreItemFolder"},{name:"insights",isCollection:true,isInverse:true,relatedName:"StoreInsight"},{name:"ledgers",isCollection:true,isInverse:true,relatedName:"StoreLedger"},{name:"journals",isCollection:true,isInverse:true,relatedName:"StoreJournal"},{name:"storeWebsites",isCollection:true,isInverse:true,relatedName:"WebSiteStore"}]}));modelEntitySchemas["Store"]=Store;_export("StoreUser",StoreUser=new Model("StoreUser",["storeID","userID"],{},{name:"store_users",keys:[{name:"storeID",type:"number"},{name:"userID",type:"number"}],properties:[],relations:[{name:"store",fkMap:[{fk:"storeID",relatedKey:"storeID"}],relatedName:"Store"},{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"}]}));modelEntitySchemas["StoreUser"]=StoreUser;_export("StoreConfig",StoreConfig=new Model("StoreConfig",["storeID","groupName","configName"],{encrypted:false,configValue:""},{name:"store_configs",keys:[{name:"storeID",type:"number"},{name:"groupName",type:"string"},{name:"configName",type:"string"}],properties:[{name:"encrypted",type:"boolean",default:["encrypted","false"]},{name:"configValue",type:"string",default:["configValue",'""']}],relations:[{name:"store",fkMap:[{fk:"storeID",relatedKey:"storeID"}],relatedName:"Store"}]}));modelEntitySchemas["StoreConfig"]=StoreConfig;_export("StoreItemItemTypeArray",StoreItemItemTypeArray=[{label:"product",value:"product"},{label:"service",value:"service"},{label:"tax",value:"tax"},{label:"fee",value:"fee"},{label:"commission",value:"commission"},{label:"variant",value:"variant"},{label:"size",value:"size"}]);_export("StoreItem",StoreItem=new Model("StoreItem",["storeItemID"],{name:"",active:false,itemType:"product",dateCreated:new DefaultFactory((()=>new DateTime)),dateUpdated:new DefaultFactory((()=>new DateTime))},{name:"store_items",keys:[{name:"storeItemID",type:"number",generated:"identity"}],properties:[{name:"storeID",type:"number"},{name:"itemFolderID",type:"number"},{name:"name",type:"string",default:["name",'""']},{name:"active",type:"boolean",default:["active","false"]},{name:"internalNotes",type:"string",default:["internalNotes",'""']},{name:"description",type:"string",default:["description",'""']},{name:"itemType",type:"string",default:["itemType",'"product"']},{name:"folderID",type:"number"},{name:"sizeForID",type:"number"},{name:"variantForID",type:"number"},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]},{name:"vendorID",type:"number"}],relations:[{name:"store",fkMap:[{fk:"storeID",relatedKey:"storeID"}],relatedName:"Store"},{name:"itemFolder",fkMap:[{fk:"itemFolderID",relatedKey:"itemFolderID"}],relatedName:"StoreItemFolder"},{name:"fileFolder",fkMap:[{fk:"folderID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"sizeFor",fkMap:[{fk:"sizeForID",relatedKey:"storeItemID"}],relatedName:"StoreItem"},{name:"sizes",isCollection:true,isInverse:true,relatedName:"StoreItem"},{name:"variantFor",fkMap:[{fk:"variantForID",relatedKey:"storeItemID"}],relatedName:"StoreItem"},{name:"variants",isCollection:true,isInverse:true,relatedName:"StoreItem"},{name:"vendor",fkMap:[{fk:"vendorID",relatedKey:"contactID"}],relatedName:"Contact"},{name:"storeItemPrices",isCollection:true,isInverse:true,relatedName:"StoreItemPrice"},{name:"priceAddOns",isCollection:true,isInverse:true,relatedName:"StorePriceAddOn"},{name:"mediaFiles",isCollection:true,isInverse:true,relatedName:"StoreMediaFile"},{name:"insights",isCollection:true,isInverse:true,relatedName:"StoreInsight"},{name:"ledgers",isCollection:true,isInverse:true,relatedName:"StoreLedger"},{name:"lineItems",isCollection:true,isInverse:true,relatedName:"StoreJournalLineItem"},{name:"storeItemTags",isCollection:true,isInverse:true,relatedName:"StoreItemTag"}]}));modelEntitySchemas["StoreItem"]=StoreItem;_export("StoreItemFolder",StoreItemFolder=new Model("StoreItemFolder",["itemFolderID"],{name:"",path:""},{name:"store_item_folders",keys:[{name:"itemFolderID",type:"number",generated:"identity"}],properties:[{name:"storeID",type:"number"},{name:"name",type:"string",default:["name",'""']},{name:"path",type:"string",default:["path",'""']},{name:"parentID",type:"number"}],relations:[{name:"store",fkMap:[{fk:"storeID",relatedKey:"storeID"}],relatedName:"Store"},{name:"parent",fkMap:[{fk:"parentID",relatedKey:"itemFolderID"}],relatedName:"StoreItemFolder"},{name:"children",isCollection:true,isInverse:true,relatedName:"StoreItemFolder"},{name:"items",isCollection:true,isInverse:true,relatedName:"StoreItem"},{name:"taxLineItems",isCollection:true,isInverse:true,relatedName:"StoreJournalLineItem"}]}));modelEntitySchemas["StoreItemFolder"]=StoreItemFolder;_export("StoreItemPrice",StoreItemPrice=new Model("StoreItemPrice",["priceID"],{startDate:new DefaultFactory((()=>new DateTime)),currency:"",amount:0,active:false},{name:"store_item_prices",keys:[{name:"priceID",type:"number",generated:"identity"}],properties:[{name:"storeItemID",type:"number"},{name:"startDate",type:"DateTime",default:["startDate","new DefaultFactory(() => new DateTime())"]},{name:"endDate",type:"DateTime",default:["endDate","new DefaultFactory(() => new DateTime())"]},{name:"currency",type:"string",default:["currency",'""']},{name:"amount",type:"number",default:["amount","0"]},{name:"maxAmount",type:"number",default:["maxAmount","0"]},{name:"active",type:"boolean",default:["active","false"]}],relations:[{name:"storeItem",fkMap:[{fk:"storeItemID",relatedKey:"storeItemID"}],relatedName:"StoreItem"},{name:"addons",isCollection:true,isInverse:true,relatedName:"StorePriceAddOn"},{name:"lineItems",isCollection:true,isInverse:true,relatedName:"StoreJournalLineItem"}]}));modelEntitySchemas["StoreItemPrice"]=StoreItemPrice;_export("StorePriceAddOn",StorePriceAddOn=new Model("StorePriceAddOn",["priceID","addOnItemID"],{inclusive:false,print:false},{name:"store_price_add_ons",keys:[{name:"priceID",type:"number"},{name:"addOnItemID",type:"number"}],properties:[{name:"inclusive",type:"boolean",default:["inclusive","false"]},{name:"print",type:"boolean",default:["print","false"]}],relations:[{name:"price",fkMap:[{fk:"priceID",relatedKey:"priceID"}],relatedName:"StoreItemPrice"},{name:"addOnItem",fkMap:[{fk:"addOnItemID",relatedKey:"storeItemID"}],relatedName:"StoreItem"}]}));modelEntitySchemas["StorePriceAddOn"]=StorePriceAddOn;_export("StoreMediaFile",StoreMediaFile=new Model("StoreMediaFile",["storeItemID","appFileID"],{sortOrder:0,title:"",isPreview:false,isDeleted:false},{name:"store_media_files",keys:[{name:"storeItemID",type:"number"},{name:"appFileID",type:"number"}],properties:[{name:"fileContentID",type:"number",default:["fileContentID","0"]},{name:"sortOrder",type:"number",default:["sortOrder","0"]},{name:"title",type:"string",default:["title",'""']},{name:"description",type:"string",default:["description",'""']},{name:"isPreview",type:"boolean",default:["isPreview","false"]},{name:"isDeleted",type:"boolean",default:["isDeleted","false"]},{name:"fileHtmlView",type:"string",default:["fileHtmlView",'""']},{name:"fileLink",type:"string",default:["fileLink",'""']}],relations:[{name:"storeItem",fkMap:[{fk:"storeItemID",relatedKey:"storeItemID"}],relatedName:"StoreItem"},{name:"appFile",fkMap:[{fk:"appFileID",relatedKey:"appFileID"}],relatedName:"AppFile"}]}));modelEntitySchemas["StoreMediaFile"]=StoreMediaFile;_export("StoreInsight",StoreInsight=new Model("StoreInsight",["insightID"],{name:"",value:0,isPublic:false},{name:"store_insights",keys:[{name:"insightID",type:"number",generated:"identity"}],properties:[{name:"storeID",type:"number"},{name:"storeItemID",type:"number"},{name:"name",type:"string",default:["name",'""']},{name:"value",type:"number",default:["value","0"]},{name:"isPublic",type:"boolean",default:["isPublic","false"]}],relations:[{name:"store",fkMap:[{fk:"storeID",relatedKey:"storeID"}],relatedName:"Store"},{name:"storeItem",fkMap:[{fk:"storeItemID",relatedKey:"storeItemID"}],relatedName:"StoreItem"}]}));modelEntitySchemas["StoreInsight"]=StoreInsight;_export("StoreLedger",StoreLedger=new Model("StoreLedger",["ledgerID"],{ledgerType:"",name:"",balance:0},{name:"store_ledger",keys:[{name:"ledgerID",type:"number",generated:"identity"}],properties:[{name:"path",type:"string",default:["path",'""']},{name:"storeID",type:"number"},{name:"parentID",type:"number"},{name:"contactID",type:"number"},{name:"itemID",type:"number"},{name:"head",type:"string",default:["head",'""']},{name:"ledgerType",type:"string",default:["ledgerType",'""']},{name:"name",type:"string",default:["name",'""']},{name:"description",type:"string",default:["description",'""']},{name:"balance",type:"number",default:["balance","0"]}],relations:[{name:"store",fkMap:[{fk:"storeID",relatedKey:"storeID"}],relatedName:"Store"},{name:"parent",fkMap:[{fk:"parentID",relatedKey:"ledgerID"}],relatedName:"StoreLedger"},{name:"children",isCollection:true,isInverse:true,relatedName:"StoreLedger"},{name:"contact",fkMap:[{fk:"contactID",relatedKey:"contactID"}],relatedName:"Contact"},{name:"item",fkMap:[{fk:"itemID",relatedKey:"storeItemID"}],relatedName:"StoreItem"},{name:"entries",isCollection:true,isInverse:true,relatedName:"StoreJournalEntry"}]}));modelEntitySchemas["StoreLedger"]=StoreLedger;_export("StoreJournalJournalTypeArray",StoreJournalJournalTypeArray=[{label:"order",value:"order"},{label:"purchase-order",value:"purchase-order"},{label:"sales-invoice",value:"sales-invoice"},{label:"journal",value:"journal"},{label:"purchase-bill",value:"purchase-bill"},{label:"payment",value:"payment"}]);_export("StoreJournal",StoreJournal=new Model("StoreJournal",["journalID"],{dateCreated:new DefaultFactory((()=>new DateTime)),dateUpdated:new DefaultFactory((()=>new DateTime)),journalType:"order",posted:false,status:"",total:0,balance:0},{name:"store_journals",keys:[{name:"journalID",type:"number",generated:"identity"}],properties:[{name:"storeID",type:"number"},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]},{name:"journalType",type:"string",default:["journalType",'"order"']},{name:"description",type:"string",default:["description",'""']},{name:"posted",type:"boolean",default:["posted","false"]},{name:"status",type:"string",default:["status",'""']},{name:"sellerID",type:"number"},{name:"buyerID",type:"number"},{name:"total",type:"number",default:["total","0"]},{name:"balance",type:"number",default:["balance","0"]},{name:"referenceID",type:"number"},{name:"folderID",type:"number"}],relations:[{name:"store",fkMap:[{fk:"storeID",relatedKey:"storeID"}],relatedName:"Store"},{name:"seller",fkMap:[{fk:"sellerID",relatedKey:"contactID"}],relatedName:"Contact"},{name:"buyer",fkMap:[{fk:"buyerID",relatedKey:"contactID"}],relatedName:"Contact"},{name:"reference",fkMap:[{fk:"referenceID",relatedKey:"journalID"}],relatedName:"StoreJournal"},{name:"references",isCollection:true,isInverse:true,relatedName:"StoreJournal"},{name:"folder",fkMap:[{fk:"folderID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"entries",isCollection:true,isInverse:true,relatedName:"StoreJournalEntry"},{name:"lineItems",isCollection:true,isInverse:true,relatedName:"StoreJournalLineItem"}]}));modelEntitySchemas["StoreJournal"]=StoreJournal;_export("StoreJournalEntry",StoreJournalEntry=new Model("StoreJournalEntry",["entryID"],{credit:0,debit:0},{name:"store_journal_entries",keys:[{name:"entryID",type:"number",generated:"identity"}],properties:[{name:"journalID",type:"number"},{name:"ledgerID",type:"number"},{name:"credit",type:"number",default:["credit","0"]},{name:"debit",type:"number",default:["debit","0"]},{name:"balance",type:"number",default:["balance","0"]},{name:"description",type:"string",default:["description",'""']},{name:"lineItemID",type:"number"}],relations:[{name:"journal",fkMap:[{fk:"journalID",relatedKey:"journalID"}],relatedName:"StoreJournal"},{name:"ledger",fkMap:[{fk:"ledgerID",relatedKey:"ledgerID"}],relatedName:"StoreLedger"},{name:"lineItem",fkMap:[{fk:"lineItemID",relatedKey:"lineItemID"}],relatedName:"StoreJournalLineItem"}]}));modelEntitySchemas["StoreJournalEntry"]=StoreJournalEntry;_export("StoreJournalLineItemItemTypeArray",StoreJournalLineItemItemTypeArray=[{label:"commission",value:"commission"},{label:"fee",value:"fee"},{label:"tax",value:"tax"},{label:"variant",value:"variant"},{label:"size",value:"size"}]);_export("StoreJournalLineItem",StoreJournalLineItem=new Model("StoreJournalLineItem",["lineItemID"],{amount:0,total:0,quantity:0,inclusive:false,hide:false},{name:"store_journal_line_items",keys:[{name:"lineItemID",type:"number",generated:"identity"}],properties:[{name:"journalID",type:"number"},{name:"itemID",type:"number"},{name:"itemPriceID",type:"number"},{name:"amount",type:"number",default:["amount","0"]},{name:"total",type:"number",default:["total","0"]},{name:"quantity",type:"number",default:["quantity","0"]},{name:"inclusive",type:"boolean",default:["inclusive","false"]},{name:"itemType",type:"string",default:["itemType",'"commission"']},{name:"hide",type:"boolean",default:["hide","false"]},{name:"vendorID",type:"number"},{name:"sourceID",type:"number"},{name:"taxFolderID",type:"number"}],relations:[{name:"journal",fkMap:[{fk:"journalID",relatedKey:"journalID"}],relatedName:"StoreJournal"},{name:"item",fkMap:[{fk:"itemID",relatedKey:"storeItemID"}],relatedName:"StoreItem"},{name:"itemPrice",fkMap:[{fk:"itemPriceID",relatedKey:"priceID"}],relatedName:"StoreItemPrice"},{name:"vendor",fkMap:[{fk:"vendorID",relatedKey:"contactID"}],relatedName:"Contact"},{name:"source",fkMap:[{fk:"sourceID",relatedKey:"lineItemID"}],relatedName:"StoreJournalLineItem"},{name:"relatedItems",isCollection:true,isInverse:true,relatedName:"StoreJournalLineItem"},{name:"taxFolder",fkMap:[{fk:"taxFolderID",relatedKey:"itemFolderID"}],relatedName:"StoreItemFolder"},{name:"entries",isCollection:true,isInverse:true,relatedName:"StoreJournalEntry"}]}));modelEntitySchemas["StoreJournalLineItem"]=StoreJournalLineItem;_export("StoreItemTag",StoreItemTag=new Model("StoreItemTag",["storeItemID","tagID"],{sortOrder:0},{name:"store_item_tags",keys:[{name:"storeItemID",type:"number"},{name:"tagID",type:"number"}],properties:[{name:"sortOrder",type:"number",default:["sortOrder","0"]},{name:"tagValue",type:"string",default:["tagValue",'""']}],relations:[{name:"storeItem",fkMap:[{fk:"storeItemID",relatedKey:"storeItemID"}],relatedName:"StoreItem"},{name:"tag",fkMap:[{fk:"tagID",relatedKey:"tagID"}],relatedName:"Tag"}]}));modelEntitySchemas["StoreItemTag"]=StoreItemTag;_export("UserStatusArray",UserStatusArray=[{label:"active",value:"active"},{label:"blocked",value:"blocked"},{label:"locked",value:"locked"},{label:"change-password",value:"change-password"},{label:"external",value:"external"}]);_export("User",User=new Model("User",["userID"],{userName:"",displayName:"",status:"active",isExternal:false,multiFactor:false,dateUpdated:new DefaultFactory((()=>new DateTime)),storage:0,maxStorage:0},{name:"users",keys:[{name:"userID",type:"number",generated:"identity"}],properties:[{name:"userName",type:"string",default:["userName",'""']},{name:"displayName",type:"string",default:["displayName",'""']},{name:"passwordHash",type:"string",default:["passwordHash",'""']},{name:"passwordSalt",type:"string",default:["passwordSalt",'""']},{name:"status",type:"string",default:["status",'"active"']},{name:"isExternal",type:"boolean",default:["isExternal","false"]},{name:"multiFactor",type:"boolean",default:["multiFactor","false"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]},{name:"storage",type:"number",default:["storage","0"]},{name:"maxStorage",type:"number",default:["maxStorage","0"]}],relations:[{name:"createdFiles",isCollection:true,isInverse:true,relatedName:"AppFile"},{name:"sentEmails",isCollection:true,isInverse:true,relatedName:"Email"},{name:"accessTokens",isCollection:true,isInverse:true,relatedName:"AccessToken"},{name:"versions",isCollection:true,isInverse:true,relatedName:"AppFileVersion"},{name:"sessions",isCollection:true,isInverse:true,relatedName:"LoginSession"},{name:"fileAccessList",isCollection:true,isInverse:true,relatedName:"AppFileAccess"},{name:"contacts",isCollection:true,isInverse:true,relatedName:"Contact"},{name:"domainUsers",isCollection:true,isInverse:true,relatedName:"DomainUser"},{name:"stores",isCollection:true,isInverse:true,relatedName:"StoreUser"},{name:"pins",isCollection:true,isInverse:true,relatedName:"UserPin"},{name:"userPushSubscriptions",isCollection:true,isInverse:true,relatedName:"UserPushSubscription"},{name:"roles",isCollection:true,isInverse:true,relatedName:"UserRole"},{name:"userMailboxes",isCollection:true,isInverse:true,relatedName:"UserMailbox"},{name:"authFactors",isCollection:true,isInverse:true,relatedName:"UserAuthFactor"},{name:"publishedWebSiteVersions",isCollection:true,isInverse:true,relatedName:"WebSiteFolderVersion"}]}));modelEntitySchemas["User"]=User;_export("UserPin",UserPin=new Model("UserPin",["pinID"],{},{name:"user_pins",keys:[{name:"pinID",type:"number",generated:"identity"}],properties:[{name:"userID",type:"number"},{name:"appFileID",type:"number"},{name:"mailboxID",type:"number"}],relations:[{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"},{name:"file",fkMap:[{fk:"appFileID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"mailbox",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"}],relatedName:"Mailbox"}]}));modelEntitySchemas["UserPin"]=UserPin;_export("UserPushSubscription",UserPushSubscription=new Model("UserPushSubscription",["subscriptionID"],{notify:false},{name:"user_push_subscriptions",keys:[{name:"subscriptionID",type:"number",generated:"identity"}],properties:[{name:"userID",type:"number"},{name:"mailboxID",type:"number",default:["mailboxID","0"]},{name:"emailAddressID",type:"number",default:["emailAddressID","0"]},{name:"notify",type:"boolean",default:["notify","false"]}],relations:[{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"}]}));modelEntitySchemas["UserPushSubscription"]=UserPushSubscription;_export("UserRole",UserRole=new Model("UserRole",["userID","roleName"],{},{name:"user_roles",keys:[{name:"userID",type:"number"},{name:"roleName",type:"string"}],properties:[],relations:[{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"},{name:"role",fkMap:[{fk:"roleName",relatedKey:"roleName"}],relatedName:"AppRole"}]}));modelEntitySchemas["UserRole"]=UserRole;_export("UserMailbox",UserMailbox=new Model("UserMailbox",["userID","mailboxID"],{},{name:"user_mailboxes",keys:[{name:"userID",type:"number"},{name:"mailboxID",type:"number"}],properties:[],relations:[{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"},{name:"mailbox",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"}],relatedName:"Mailbox"}]}));modelEntitySchemas["UserMailbox"]=UserMailbox;_export("UserAuthFactorMethodArray",UserAuthFactorMethodArray=[{label:"totp",value:"totp"},{label:"hotp",value:"hotp"},{label:"fido2",value:"fido2"},{label:"one-time",value:"one-time"},{label:"otp",value:"otp"}]);_export("UserAuthFactor",UserAuthFactor=new Model("UserAuthFactor",["authFactorID"],{method:"totp",verified:false,dateUpdated:new DefaultFactory((()=>new DateTime))},{name:"user_auth_factor",keys:[{name:"authFactorID",type:"number",generated:"identity"}],properties:[{name:"userID",type:"number"},{name:"method",type:"string",default:["method",'"totp"']},{name:"secret",type:"string",default:["secret",'""']},{name:"hint",type:"string",default:["hint",'""']},{name:"verified",type:"boolean",default:["verified","false"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]}],relations:[{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"}]}));modelEntitySchemas["UserAuthFactor"]=UserAuthFactor;_export("WebSiteFolder",WebSiteFolder=new Model("WebSiteFolder",["folderID"],{isStatic:false,isTemplate:false,isModified:false},{name:"web_site_folders",keys:[{name:"folderID",type:"number"}],properties:[{name:"currentVersionID",type:"number"},{name:"isStatic",type:"boolean",default:["isStatic","false"]},{name:"isTemplate",type:"boolean",default:["isTemplate","false"]},{name:"isModified",type:"boolean",default:["isModified","false"]}],relations:[{name:"folder",fkMap:[{fk:"folderID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"currentVersion",fkMap:[{fk:"currentVersionID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"hosts",isCollection:true,isInverse:true,relatedName:"WebSiteFolderHost"},{name:"versions",isCollection:true,isInverse:true,relatedName:"WebSiteFolderVersion"},{name:"channels",isCollection:true,isInverse:true,relatedName:"WebSiteChannel"},{name:"websiteStores",isCollection:true,isInverse:true,relatedName:"WebSiteStore"}]}));modelEntitySchemas["WebSiteFolder"]=WebSiteFolder;_export("WebSiteFolderHost",WebSiteFolderHost=new Model("WebSiteFolderHost",["host"],{},{name:"web_site_folder_host",keys:[{name:"host",type:"string"}],properties:[{name:"folderID",type:"number"}],relations:[{name:"folder",fkMap:[{fk:"folderID",relatedKey:"folderID"}],relatedName:"WebSiteFolder"}]}));modelEntitySchemas["WebSiteFolderHost"]=WebSiteFolderHost;_export("WebSiteFolderVersion",WebSiteFolderVersion=new Model("WebSiteFolderVersion",["folderID","snapshotFolderID"],{dateCreated:new DefaultFactory((()=>new DateTime)),name:""},{name:"web_site_folder_version",keys:[{name:"folderID",type:"number"},{name:"snapshotFolderID",type:"number"}],properties:[{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"name",type:"string",default:["name",'""']},{name:"description",type:"string",default:["description",'""']},{name:"authorID",type:"number"}],relations:[{name:"websiteFolder",fkMap:[{fk:"folderID",relatedKey:"folderID"}],relatedName:"WebSiteFolder"},{name:"snapshotFolder",fkMap:[{fk:"snapshotFolderID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"author",fkMap:[{fk:"authorID",relatedKey:"userID"}],relatedName:"User"}]}));modelEntitySchemas["WebSiteFolderVersion"]=WebSiteFolderVersion;_export("WebSiteChannel",WebSiteChannel=new Model("WebSiteChannel",["folderID","channelID"],{},{name:"web_site_channels",keys:[{name:"folderID",type:"number"},{name:"channelID",type:"number"}],properties:[],relations:[{name:"website",fkMap:[{fk:"folderID",relatedKey:"folderID"}],relatedName:"WebSiteFolder"},{name:"channel",fkMap:[{fk:"channelID",relatedKey:"mailboxID"}],relatedName:"Mailbox"}]}));modelEntitySchemas["WebSiteChannel"]=WebSiteChannel;_export("WebSiteStore",WebSiteStore=new Model("WebSiteStore",["folderID","storeID"],{},{name:"web_site_stores",keys:[{name:"folderID",type:"number"},{name:"storeID",type:"number"}],properties:[],relations:[{name:"website",fkMap:[{fk:"folderID",relatedKey:"folderID"}],relatedName:"WebSiteFolder"},{name:"store",fkMap:[{fk:"storeID",relatedKey:"storeID"}],relatedName:"Store"}]}));modelEntitySchemas["WebSiteStore"]=WebSiteStore;_export("LoginSession",LoginSession=new Model("LoginSession",["sessionID"],{invalid:false,dateUpdated:new DefaultFactory((()=>new DateTime))},{name:"login_sessions",keys:[{name:"sessionID",type:"number",generated:"identity"}],properties:[{name:"userID",type:"number"},{name:"start",type:"DateTime",default:["start","new DefaultFactory(() => new Date())"]},{name:"expiry",type:"DateTime",default:["expiry","new DefaultFactory(() => new Date())"]},{name:"invalid",type:"boolean",default:["invalid","false"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]},{name:"status",type:"string",default:["status",'""']},{name:"deviceToken",type:"string",default:["deviceToken",'""']},{name:"deviceTokenType",type:"string",default:["deviceTokenType",'""']}],relations:[{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"},{name:"versions",isCollection:true,isInverse:true,relatedName:"AppFileVersion"}]}));modelEntitySchemas["LoginSession"]=LoginSession;_export("TextDocument",TextDocument=new Model("TextDocument",["textDocumentID"],{searchable:""},{name:"text_documents",keys:[{name:"textDocumentID",type:"number"}],properties:[{name:"searchable",type:"string",default:["searchable",'""']}],relations:[{name:"fileContent",isCollection:false,isInverse:true,relatedName:"FileContent"}]}));modelEntitySchemas["TextDocument"]=TextDocument;_export("Tag",Tag=new Model("Tag",["tagID"],{name:"",isSystemTag:false},{name:"tags",keys:[{name:"tagID",type:"number",generated:"identity"}],properties:[{name:"name",type:"string",default:["name",'""']},{name:"lowerCaseName",type:"string",generated:"computed"},{name:"path",type:"string",default:["path",'""']},{name:"isSystemTag",type:"boolean",default:["isSystemTag","false"]},{name:"contentTypes",type:"string",default:["contentTypes",'""']},{name:"parentID",type:"number"}],relations:[{name:"parent",fkMap:[{fk:"parentID",relatedKey:"tagID"}],relatedName:"Tag"},{name:"children",isCollection:true,isInverse:true,relatedName:"Tag"},{name:"fileTags",isCollection:true,isInverse:true,relatedName:"AppFileTag"},{name:"emailTags",isCollection:true,isInverse:true,relatedName:"EmailTag"},{name:"mailboxContactTags",isCollection:true,isInverse:true,relatedName:"MailboxContactTag"},{name:"storeItemTags",isCollection:true,isInverse:true,relatedName:"StoreItemTag"}]}));modelEntitySchemas["Tag"]=Tag;fixRelatedSchemas=schema=>{for(const key in schema){if(Object.prototype.hasOwnProperty.call(schema,key)){const element=schema[key];if(!element.name){continue}const{relations}=element.schema;if(!relations){continue}for(const iterator of relations){iterator.relatedModel=schema[iterator.relatedName]}}}};fixRelatedSchemas(modelEntitySchemas)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/model/model");System.register([],(function(_export,_context){"use strict";var SocialMailApp,_a,socialMail;_export("default",void 0);return{setters:[],execute:function(){socialMail=(_a=window.socialMail)!==null&&_a!==void 0?_a:{path:"/",name:"Social Mail"};_export("default",SocialMailApp=class SocialMailApp{});SocialMailApp.config=socialMail}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/SocialMailApp");System.register(["tslib","@web-atoms/core/dist/di/DISingleton","@web-atoms/core/dist/di/Inject","./EntityService","../model/model","../common/SocialMailApp","@web-atoms/core/dist/App","@web-atoms/core/dist/core/sleep"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,DISingleton,Inject,EntityService,LoginSession,SocialMailApp,App,sleep,LoginService;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){LoginSession=_modelModel.LoginSession},function(_commonSocialMailApp){SocialMailApp=_commonSocialMailApp.default},function(_webAtomsCoreDistApp){App=_webAtomsCoreDistApp.App},function(_webAtomsCoreDistCoreSleep){sleep=_webAtomsCoreDistCoreSleep.default}],execute:function(){LoginService=class LoginService{getUser(){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){(_a=this.user)!==null&&_a!==void 0?_a:this.user=(_b=yield this.entityService.query(LoginSession,"currentUser").firstOrDefault())===null||_b===void 0?void 0:_b.user;SocialMailApp.user=this.user;return this.user}))}login(session){return __awaiter(this,void 0,void 0,(function*(){yield this.entityService.save(session);if(session.invalid){return session.status}location.reload()}))}updateRegistration(s){return __awaiter(this,void 0,void 0,(function*(){throw new Error("Method not implemented.")}))}logout(){return __awaiter(this,void 0,void 0,(function*(){const session=yield this.entityService.query(LoginSession,"currentUser").firstOrDefault();session.invalid=true;const cloner=this.entityService.cloner(session);yield this.entityService.save(cloner.copy);yield sleep(1e3);location.reload()}))}};__decorate([Inject,__metadata("design:type",EntityService)],LoginService.prototype,"entityService",void 0);__decorate([Inject,__metadata("design:type",App)],LoginService.prototype,"app",void 0);LoginService=__decorate([DISingleton()],LoginService);_export("default",LoginService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/services/LoginService");System.register([],(function(_export,_context){"use strict";function InjectProperty(target,key){Object.defineProperty(target,key,{get:function(){const plist=Reflect.getMetadata("design:type",target,key);const result=this.app.resolve(plist);Object.defineProperty(this,key,{get:()=>result});return result},configurable:true})}_export("default",InjectProperty);return{setters:[],execute:function(){}}}));AmdLoader.instance.setup("@web-atoms/core/dist/core/InjectProperty");System.register(["@web-atoms/web-controls/dist/mobile-app/MobileApp"],(function(_export,_context){"use strict";var ContentPage,AdminHome;_export("default",void 0);return{setters:[function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage}],execute:function(){_export("default",AdminHome=class AdminHome extends ContentPage{})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/admin/pages/home/AdminHome");System.register([],(function(_export,_context){"use strict";var ColorItem,Colors;function toFixedString(t){return("0"+t.toString(16)).slice(-2)}_export({ColorItem:void 0,default:void 0});return{setters:[],execute:function(){_export("ColorItem",ColorItem=class ColorItem{constructor(colorCodeOrRed,namedColorOrGreen,blue,alpha){if(typeof colorCodeOrRed==="string"){this.colorCode=colorCodeOrRed;if(typeof namedColorOrGreen==="string"){this.namedColor=namedColorOrGreen}const r=ColorItem.parseRgb(this.colorCode);this.red=r.red;this.green=r.green;this.blue=r.blue;this.alpha=r.alpha}else{this.red=colorCodeOrRed;if(typeof namedColorOrGreen==="number"){this.green=namedColorOrGreen}this.blue=blue;this.alpha=alpha;this.colorCode=ColorItem.rgb(this.red,this.green,this.blue,this.alpha)}}toString(){return this.colorCode}withAlphaPercent(a){return new ColorItem(this.red,this.green,this.blue,a)}static parseRgb(rgba){if(/^\#/.test(rgba)){rgba=rgba.substr(1);if(rgba.length===3){rgba=rgba.split("").map((x=>x+x)).join("")}const red=Number.parseInt(rgba[0]+rgba[1],16);const green=Number.parseInt(rgba[2]+rgba[3],16);const blue=Number.parseInt(rgba[4]+rgba[5],16);if(rgba.length>6){const alpha=Number.parseInt(rgba[6]+rgba[7],16);return{red,green,blue,alpha}}return{red,green,blue}}if(/^rgba/i.test(rgba)){rgba=rgba.substr(5);rgba=rgba.substr(0,rgba.length-1);const a=rgba.split(",").map(((x,i)=>i===3?Number.parseFloat(x):Number.parseInt(x,10)));return{red:a[0],green:a[1],blue:a[2],alpha:a[3]}}if(/^rgb/i.test(rgba)){rgba=rgba.substr(4);rgba=rgba.substr(0,rgba.length-1);const a=rgba.split(",").map((x=>Number.parseInt(x,10)));return{red:a[0],green:a[1],blue:a[2]}}throw new Error("Unknown color format "+rgba)}static rgb(r,g,b,a){if(a!==undefined){return`rgba(${r},${g},${b},${a})`}return"#"+toFixedString(r)+toFixedString(g)+toFixedString(b)}});_export("default",Colors=class Colors{static rgba(red,green,blue,alpha){return new ColorItem(red,green,blue,alpha)}static parse(color){if(!color){return null}color=color.toLowerCase();for(const key in Colors){if(Colors.hasOwnProperty(key)){const element=Colors[key];if(element instanceof ColorItem){const ci=element;if(ci.namedColor===color){return ci}}}}if(/^(\#|rgb\(|rgba\()/i.test(color)){return new ColorItem(color)}throw new Error("Invalid color format "+color)}});Colors.black=new ColorItem("#000000","black");Colors.silver=new ColorItem("#c0c0c0","silver");Colors.gray=new ColorItem("#808080","gray");Colors.white=new ColorItem("#ffffff","white");Colors.maroon=new ColorItem("#800000","maroon");Colors.red=new ColorItem("#ff0000","red");Colors.purple=new ColorItem("#800080","purple");Colors.fuchsia=new ColorItem("#ff00ff","fuchsia");Colors.green=new ColorItem("#008000","green");Colors.lime=new ColorItem("#00ff00","lime");Colors.olive=new ColorItem("#808000","olive");Colors.yellow=new ColorItem("#ffff00","yellow");Colors.navy=new ColorItem("#000080","navy");Colors.blue=new ColorItem("#0000ff","blue");Colors.teal=new ColorItem("#008080","teal");Colors.aqua=new ColorItem("#00ffff","aqua");Colors.orange=new ColorItem("#ffa500","orange");Colors.aliceBlue=new ColorItem("#f0f8ff","aliceblue");Colors.antiqueWhite=new ColorItem("#faebd7","antiquewhite");Colors.aquaMarine=new ColorItem("#7fffd4","aquamarine");Colors.azure=new ColorItem("#f0ffff","azure");Colors.beige=new ColorItem("#f5f5dc","beige");Colors.bisque=new ColorItem("#ffe4c4","bisque");Colors.blanchedAlmond=new ColorItem("#ffebcd","blanchedalmond");Colors.blueViolet=new ColorItem("#8a2be2","blueviolet");Colors.brown=new ColorItem("#a52a2a","brown");Colors.burlyWood=new ColorItem("#deb887","burlywood");Colors.cadetBlue=new ColorItem("#5f9ea0","cadetblue");Colors.chartReuse=new ColorItem("#7fff00","chartreuse");Colors.chocolate=new ColorItem("#d2691e","chocolate");Colors.coral=new ColorItem("#ff7f50","coral");Colors.cornFlowerBlue=new ColorItem("#6495ed","cornflowerblue");Colors.cornSilk=new ColorItem("#fff8dc","cornsilk");Colors.crimson=new ColorItem("#dc143c","crimson");Colors.cyan=new ColorItem("#00ffff","cyan");Colors.darkBlue=new ColorItem("#00008b","darkblue");Colors.darkCyan=new ColorItem("#008b8b","darkcyan");Colors.darkGoldenRod=new ColorItem("#b8860b","darkgoldenrod");Colors.darkGray=new ColorItem("#a9a9a9","darkgray");Colors.darkGreen=new ColorItem("#006400","darkgreen");Colors.darkGrey=new ColorItem("#a9a9a9","darkgrey");Colors.darkKhaki=new ColorItem("#bdb76b","darkkhaki");Colors.darkMagenta=new ColorItem("#8b008b","darkmagenta");Colors.darkOliveGreen=new ColorItem("#556b2f","darkolivegreen");Colors.darkOrange=new ColorItem("#ff8c00","darkorange");Colors.darkOrchid=new ColorItem("#9932cc","darkorchid");Colors.darkRed=new ColorItem("#8b0000","darkred");Colors.darkSalmon=new ColorItem("#e9967a","darksalmon");Colors.darkSeaGreen=new ColorItem("#8fbc8f","darkseagreen");Colors.darkSlateBlue=new ColorItem("#483d8b","darkslateblue");Colors.darkSlateGray=new ColorItem("#2f4f4f","darkslategray");Colors.darkSlateGrey=new ColorItem("#2f4f4f","darkslategrey");Colors.darkTurquoise=new ColorItem("#00ced1","darkturquoise");Colors.darkViolet=new ColorItem("#9400d3","darkviolet");Colors.deepPink=new ColorItem("#ff1493","deeppink");Colors.deepSkyBlue=new ColorItem("#00bfff","deepskyblue");Colors.dimGray=new ColorItem("#696969","dimgray");Colors.dimGrey=new ColorItem("#696969","dimgrey");Colors.dodgerBlue=new ColorItem("#1e90ff","dodgerblue");Colors.fireBrick=new ColorItem("#b22222","firebrick");Colors.floralWhite=new ColorItem("#fffaf0","floralwhite");Colors.forestGreen=new ColorItem("#228b22","forestgreen");Colors.gainsboro=new ColorItem("#dcdcdc","gainsboro");Colors.ghostWhite=new ColorItem("#f8f8ff","ghostwhite");Colors.gold=new ColorItem("#ffd700","gold");Colors.goldenRod=new ColorItem("#daa520","goldenrod");Colors.greenYellow=new ColorItem("#adff2f","greenyellow");Colors.grey=new ColorItem("#808080","grey");Colors.honeyDew=new ColorItem("#f0fff0","honeydew");Colors.hotPink=new ColorItem("#ff69b4","hotpink");Colors.indianRed=new ColorItem("#cd5c5c","indianred");Colors.indigo=new ColorItem("#4b0082","indigo");Colors.ivory=new ColorItem("#fffff0","ivory");Colors.khaki=new ColorItem("#f0e68c","khaki");Colors.lavender=new ColorItem("#e6e6fa","lavender");Colors.lavenderBlush=new ColorItem("#fff0f5","lavenderblush");Colors.lawnGreen=new ColorItem("#7cfc00","lawngreen");Colors.lemonChiffon=new ColorItem("#fffacd","lemonchiffon");Colors.lightBlue=new ColorItem("#add8e6","lightblue");Colors.lightCoral=new ColorItem("#f08080","lightcoral");Colors.lightCyan=new ColorItem("#e0ffff","lightcyan");Colors.lightGoldenRodYellow=new ColorItem("#fafad2","lightgoldenrodyellow");Colors.lightGray=new ColorItem("#d3d3d3","lightgray");Colors.lightGreen=new ColorItem("#90ee90","lightgreen");Colors.lightGrey=new ColorItem("#d3d3d3","lightgrey");Colors.lightPink=new ColorItem("#ffb6c1","lightpink");Colors.lightSalmon=new ColorItem("#ffa07a","lightsalmon");Colors.lightSeaGreen=new ColorItem("#20b2aa","lightseagreen");Colors.lightSkyBlue=new ColorItem("#87cefa","lightskyblue");Colors.lightSlateGray=new ColorItem("#778899","lightslategray");Colors.lightSlateGrey=new ColorItem("#778899","lightslategrey");Colors.lightSteelBlue=new ColorItem("#b0c4de","lightsteelblue");Colors.lightYellow=new ColorItem("#ffffe0","lightyellow");Colors.limeGreen=new ColorItem("#32cd32","limegreen");Colors.linen=new ColorItem("#faf0e6","linen");Colors.magenta=new ColorItem("#ff00ff","magenta");Colors.mediumAquaMarine=new ColorItem("#66cdaa","mediumaquamarine");Colors.mediumBlue=new ColorItem("#0000cd","mediumblue");Colors.mediumOrchid=new ColorItem("#ba55d3","mediumorchid");Colors.mediumPurple=new ColorItem("#9370db","mediumpurple");Colors.mediumSeaGreen=new ColorItem("#3cb371","mediumseagreen");Colors.mediumSlateBlue=new ColorItem("#7b68ee","mediumslateblue");Colors.mediumSpringGreen=new ColorItem("#00fa9a","mediumspringgreen");Colors.mediumTurquoise=new ColorItem("#48d1cc","mediumturquoise");Colors.mediumVioletred=new ColorItem("#c71585","mediumvioletred");Colors.midNightBlue=new ColorItem("#191970","midnightblue");Colors.mintCream=new ColorItem("#f5fffa","mintcream");Colors.mistyRose=new ColorItem("#ffe4e1","mistyrose");Colors.moccasin=new ColorItem("#ffe4b5","moccasin");Colors.navajoWhite=new ColorItem("#ffdead","navajowhite");Colors.oldLace=new ColorItem("#fdf5e6","oldlace");Colors.oliveDrab=new ColorItem("#6b8e23","olivedrab");Colors.orangeRed=new ColorItem("#ff4500","orangered");Colors.orchid=new ColorItem("#da70d6","orchid");Colors.paleGoldenRod=new ColorItem("#eee8aa","palegoldenrod");Colors.paleGreen=new ColorItem("#98fb98","palegreen");Colors.paleTurquoise=new ColorItem("#afeeee","paleturquoise");Colors.paleVioletRed=new ColorItem("#db7093","palevioletred");Colors.papayaWhip=new ColorItem("#ffefd5","papayawhip");Colors.peachPuff=new ColorItem("#ffdab9","peachpuff");Colors.peru=new ColorItem("#cd853f","peru");Colors.pink=new ColorItem("#ffc0cb","pink");Colors.plum=new ColorItem("#dda0dd","plum");Colors.powderBlue=new ColorItem("#b0e0e6","powderblue");Colors.rosyBrown=new ColorItem("#bc8f8f","rosybrown");Colors.royalBlue=new ColorItem("#4169e1","royalblue");Colors.saddleBrown=new ColorItem("#8b4513","saddlebrown");Colors.salmon=new ColorItem("#fa8072","salmon");Colors.sandyBrown=new ColorItem("#f4a460","sandybrown");Colors.seaGreen=new ColorItem("#2e8b57","seagreen");Colors.seaShell=new ColorItem("#fff5ee","seashell");Colors.sienna=new ColorItem("#a0522d","sienna");Colors.skyBlue=new ColorItem("#87ceeb","skyblue");Colors.slateBlue=new ColorItem("#6a5acd","slateblue");Colors.slateGray=new ColorItem("#708090","slategray");Colors.slateGrey=new ColorItem("#708090","slategrey");Colors.snow=new ColorItem("#fffafa","snow");Colors.springGreen=new ColorItem("#00ff7f","springgreen");Colors.steelBlue=new ColorItem("#4682b4","steelblue");Colors.tan=new ColorItem("#d2b48c","tan");Colors.thistle=new ColorItem("#d8bfd8","thistle");Colors.tomato=new ColorItem("#ff6347","tomato");Colors.turquoise=new ColorItem("#40e0d0","turquoise");Colors.violet=new ColorItem("#ee82ee","violet");Colors.wheat=new ColorItem("#f5deb3","wheat");Colors.whiteSmoke=new ColorItem("#f5f5f5","whitesmoke");Colors.yellowGreen=new ColorItem("#9acd32","yellowgreen");Colors.rebeccaPurple=new ColorItem("#663399","rebeccapurple");Colors.transparent=new ColorItem("#00000000","transparent")}}}));AmdLoader.instance.setup("@web-atoms/core/dist/core/Colors");System.register(["./AtomBinder","./AtomWatcher"],(function(_export,_context){"use strict";var AtomBinder,AtomWatcher;function WatchProperty(target,key,descriptor){const{get}=descriptor;const isSetup=Symbol.for(`isSetup${key}`);return{get:function(){const watcher=new AtomWatcher(this,get,(()=>{AtomBinder.refreshValue(this,key)}),this);watcher.init(false);this.registerDisposable(watcher);this[isSetup]=watcher;Object.defineProperty(this,key,descriptor);return get.apply(this)},configurable:true}}_export("default",WatchProperty);return{setters:[function(_AtomBinder){AtomBinder=_AtomBinder.AtomBinder},function(_AtomWatcher){AtomWatcher=_AtomWatcher.AtomWatcher}],execute:function(){}}}));AmdLoader.instance.setup("@web-atoms/core/dist/core/WatchProperty");System.register(["@web-atoms/core/dist/style/styled"],(function(_export,_context){"use strict";var styled;return{setters:[function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default}],execute:function(){styled.css`
|
|
698
|
+
`.installLocal();stack=0;_export("default",BusyProgress=class BusyProgress{static create(){if(!container){container=document.createElement("div");container.className=css;const progressBar=document.createElement("div");progressBar.className="progress-bar";container.appendChild(progressBar);const progressBarValue=document.createElement("div");progressBarValue.className="progress-bar-value";progressBar.appendChild(progressBarValue);document.body.appendChild(container)}stack++;if(stack===1){container.setAttribute("data-show","true")}return{dispose(){stack--;if(stack<=0){container.removeAttribute("data-show")}}}}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/services/BusyProgress");System.register([],(function(_export,_context){"use strict";var _a,root,apiPath,apiPathRoot;return{setters:[],execute:function(){root=((_a=window.socialMail)===null||_a===void 0?void 0:_a.path)||"/";if(root.endsWith("/")){root=root.substring(0,root.length-1)}_export("apiPath",apiPath=root?url=>root+url:url=>url);_export("apiPathRoot",apiPathRoot=root)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/apiPath");System.register(["tslib","@web-atoms/core/dist/di/DISingleton","@web-atoms/entity/dist/services/BaseEntityService","@web-atoms/core/dist/di/Inject","@web-atoms/core/dist/App","./BusyProgress","../common/apiPath"],(function(_export,_context){"use strict";var __decorate,__metadata,DISingleton,BaseEntityService,Inject,App,BusyProgress,apiPath,EntityService;return{setters:[function(_tslib){__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistDiDISingleton){DISingleton=_webAtomsCoreDistDiDISingleton.default},function(_webAtomsEntityDistServicesBaseEntityService){BaseEntityService=_webAtomsEntityDistServicesBaseEntityService.default},function(_webAtomsCoreDistDiInject){Inject=_webAtomsCoreDistDiInject.Inject},function(_webAtomsCoreDistApp){App=_webAtomsCoreDistApp.App},function(_BusyProgress){BusyProgress=_BusyProgress.default},function(_commonApiPath){apiPath=_commonApiPath.apiPath}],execute:function(){EntityService=class EntityService extends BaseEntityService{constructor(){super(...arguments);this.queryProcessor="JavaScript";this.url=apiPath("/api/entity/")}createBusyIndicator(options){if(options.hideActivityIndicator){return}return BusyProgress.create()}};__decorate([Inject,__metadata("design:type",App)],EntityService.prototype,"app",void 0);EntityService=__decorate([DISingleton()],EntityService);_export("default",EntityService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/services/EntityService");System.register(["@web-atoms/date-time/dist/DateTime","@web-atoms/entity/dist/services/BaseEntityService"],(function(_export,_context){"use strict";var DateTime,Model,DefaultFactory,modelEntitySchemas,AppRole,AppFileContentDispositionArray,AppFile,AccessToken,AppFileVersion,AppFileAccessTypeArray,AppFileAccess,AppFileTag,FileContent,Configuration,Contact,ContactEmail,ContactPhone,ContactItem,ContactDomain,ContactAddress,CachedItem,Domain,HostedDomain,DomainUser,DomainRelayTypeArray,DomainRelay,DomainKey,EmailStatusArray,Email,EmailEngagement,EmailLog,EmailRecipientTypeArray,EmailRecipient,EmailTag,EmailAddress,EmailTemplate,Mailbox,MailboxEmail,MailboxContactStatusArray,MailboxContact,MailboxContactEmail,MailboxContactTag,MailboxSyncTargetDirectionArray,MailboxSyncTargetProtocolArray,MailboxSyncTargetLastSyncStatusArray,MailboxSyncTarget,ChannelConfig,SubscriberActivity,SearchWordStatusArray,SearchWord,SearchWordIndex,ServerActivityActivityArray,ServerActivity,Store,StoreUser,StoreConfig,StoreItemItemTypeArray,StoreItem,StoreItemFolder,StoreItemPrice,StorePriceAddOn,StoreMediaFile,StoreInsight,StoreLedger,StoreJournalJournalTypeArray,StoreJournal,StoreJournalEntry,StoreJournalLineItemItemTypeArray,StoreJournalLineItem,StoreItemTag,UserStatusArray,User,UserPin,UserPushSubscription,UserRole,UserMailbox,UserAuthFactorMethodArray,UserAuthFactor,WebSiteFolder,WebSiteFolderHost,WebSiteFolderVersion,WebSiteChannel,WebSiteStore,LoginSession,TextDocument,Tag,fixRelatedSchemas;return{setters:[function(_webAtomsDateTimeDistDateTime){DateTime=_webAtomsDateTimeDistDateTime.default},function(_webAtomsEntityDistServicesBaseEntityService){Model=_webAtomsEntityDistServicesBaseEntityService.Model;DefaultFactory=_webAtomsEntityDistServicesBaseEntityService.DefaultFactory}],execute:function(){_export("modelEntitySchemas",modelEntitySchemas={});_export("AppRole",AppRole=new Model("AppRole",["roleName"],{},{name:"app_roles",keys:[{name:"roleName",type:"string"}],properties:[],relations:[{name:"roles",isCollection:true,isInverse:true,relatedName:"UserRole"}]}));modelEntitySchemas["AppRole"]=AppRole;_export("AppFileContentDispositionArray",AppFileContentDispositionArray=[{label:"attachment",value:"attachment"},{label:"inline",value:"inline"}]);_export("AppFile",AppFile=new Model("AppFile",["appFileID"],{isFolder:false,name:"",fileSize:0,contentType:"",isDeleted:false,isShared:false,dateCreated:new DefaultFactory((()=>new DateTime))},{name:"app_files",keys:[{name:"appFileID",type:"number",generated:"identity"}],properties:[{name:"path",type:"string",default:["path",'""']},{name:"isFolder",type:"boolean",default:["isFolder","false"]},{name:"name",type:"string",default:["name",'""']},{name:"fileSize",type:"number",default:["fileSize","0"]},{name:"contentType",type:"string",default:["contentType",'""']},{name:"contentDisposition",type:"string",default:["contentDisposition",'"attachment"']},{name:"contentID",type:"string",default:["contentID",'""']},{name:"fileContentID",type:"number"},{name:"creatorID",type:"number"},{name:"parentID",type:"number"},{name:"emailID",type:"number"},{name:"isDeleted",type:"boolean",default:["isDeleted","false"]},{name:"isShared",type:"boolean",default:["isShared","false"]},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]},{name:"versions",type:"number",default:["versions","0"]}],relations:[{name:"fileContent",fkMap:[{fk:"fileContentID",relatedKey:"fileContentID"}],relatedName:"FileContent"},{name:"creator",fkMap:[{fk:"creatorID",relatedKey:"userID"}],relatedName:"User"},{name:"parent",fkMap:[{fk:"parentID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"children",isCollection:true,isInverse:true,relatedName:"AppFile"},{name:"email",fkMap:[{fk:"emailID",relatedKey:"emailID"}],relatedName:"Email"},{name:"fileVersions",isCollection:true,isInverse:true,relatedName:"AppFileVersion"},{name:"folderVersions",isCollection:true,isInverse:true,relatedName:"AppFileVersion"},{name:"accessList",isCollection:true,isInverse:true,relatedName:"AppFileAccess"},{name:"tags",isCollection:true,isInverse:true,relatedName:"AppFileTag"},{name:"mailboxLogos",isCollection:true,isInverse:true,relatedName:"Mailbox"},{name:"previewContacts",isCollection:true,isInverse:true,relatedName:"Contact"},{name:"templates",isCollection:true,isInverse:true,relatedName:"EmailTemplate"},{name:"websiteFolder",isCollection:false,isInverse:true,relatedName:"WebSiteFolder"},{name:"currentVersionWebSites",isCollection:true,isInverse:true,relatedName:"WebSiteFolder"},{name:"stores",isCollection:true,isInverse:true,relatedName:"Store"},{name:"storeItems",isCollection:true,isInverse:true,relatedName:"StoreItem"},{name:"storeMediaFiles",isCollection:true,isInverse:true,relatedName:"StoreMediaFile"},{name:"storeJournals",isCollection:true,isInverse:true,relatedName:"StoreJournal"},{name:"userPins",isCollection:true,isInverse:true,relatedName:"UserPin"},{name:"websiteVersions",isCollection:true,isInverse:true,relatedName:"WebSiteFolderVersion"}]}));modelEntitySchemas["AppFile"]=AppFile;_export("AccessToken",AccessToken=new Model("AccessToken",["tokenID"],{dateCreated:new DefaultFactory((()=>new DateTime)),expiryDate:new DefaultFactory((()=>new DateTime))},{name:"access_tokens",keys:[{name:"tokenID",type:"number",generated:"identity"}],properties:[{name:"userID",type:"number"},{name:"secret",type:"string",default:["secret",'""']},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"expiryDate",type:"DateTime",default:["expiryDate","new DefaultFactory(() => new DateTime())"]}],relations:[{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"}]}));modelEntitySchemas["AccessToken"]=AccessToken;_export("AppFileVersion",AppFileVersion=new Model("AppFileVersion",["versionID"],{name:"",dateCreated:new DefaultFactory((()=>new DateTime))},{name:"app_file_versions",keys:[{name:"versionID",type:"number",generated:"identity"}],properties:[{name:"fileID",type:"number"},{name:"userID",type:"number"},{name:"sessionID",type:"number"},{name:"fileContentID",type:"number"},{name:"name",type:"string",default:["name",'""']},{name:"folderID",type:"number"},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]}],relations:[{name:"file",fkMap:[{fk:"fileID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"},{name:"session",fkMap:[{fk:"sessionID",relatedKey:"sessionID"}],relatedName:"LoginSession"},{name:"fileContent",fkMap:[{fk:"fileContentID",relatedKey:"fileContentID"}],relatedName:"FileContent"},{name:"folder",fkMap:[{fk:"folderID",relatedKey:"appFileID"}],relatedName:"AppFile"}]}));modelEntitySchemas["AppFileVersion"]=AppFileVersion;_export("AppFileAccessTypeArray",AppFileAccessTypeArray=[{label:"create",value:"create"},{label:"read",value:"read"},{label:"write",value:"write"},{label:"delegate",value:"delegate"}]);_export("AppFileAccess",AppFileAccess=new Model("AppFileAccess",["accessID","type"],{dateCreated:new DefaultFactory((()=>new DateTime)),dateUpdated:new DefaultFactory((()=>new DateTime))},{name:"app_file_access",keys:[{name:"accessID",type:"number",generated:"identity"},{name:"type",type:"string"}],properties:[{name:"fileID",type:"number"},{name:"userID",type:"number"},{name:"accessCode",type:"string",default:["accessCode",'""']},{name:"expires",type:"DateTime",default:["expires","new DefaultFactory(() => new DateTime())"]},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]}],relations:[{name:"file",fkMap:[{fk:"fileID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"}]}));modelEntitySchemas["AppFileAccess"]=AppFileAccess;_export("AppFileTag",AppFileTag=new Model("AppFileTag",["appFileID","tagID"],{},{name:"app_file_tags",keys:[{name:"appFileID",type:"number"},{name:"tagID",type:"number"}],properties:[],relations:[{name:"file",fkMap:[{fk:"appFileID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"tag",fkMap:[{fk:"tagID",relatedKey:"tagID"}],relatedName:"Tag"}]}));modelEntitySchemas["AppFileTag"]=AppFileTag;_export("FileContent",FileContent=new Model("FileContent",["fileContentID"],{contentHash:"",contentType:"",contentSize:0,dateCreated:new DefaultFactory((()=>new DateTime)),deleted:false},{name:"file_contents",keys:[{name:"fileContentID",type:"number",generated:"identity"}],properties:[{name:"contentHash",type:"string",default:["contentHash",'""']},{name:"cloudPath",type:"string",default:["cloudPath",'""']},{name:"contentType",type:"string",default:["contentType",'""']},{name:"contentSize",type:"number",default:["contentSize","0"]},{name:"compression",type:"string",default:["compression",'""']},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"textDocumentID",type:"number"},{name:"deleted",type:"boolean",default:["deleted","false"]}],relations:[{name:"textDocument",fkMap:[{fk:"textDocumentID",relatedKey:"textDocumentID"}],relatedName:"TextDocument"},{name:"appFiles",isCollection:true,isInverse:true,relatedName:"AppFile"},{name:"versions",isCollection:true,isInverse:true,relatedName:"AppFileVersion"}]}));modelEntitySchemas["FileContent"]=FileContent;_export("Configuration",Configuration=new Model("Configuration",["name"],{},{name:"configuration",keys:[{name:"name",type:"string"}],properties:[{name:"configValue",type:"string",default:["configValue",'""']}],relations:[]}));modelEntitySchemas["Configuration"]=Configuration;_export("Contact",Contact=new Model("Contact",["contactID"],{name:"",type:"",dateCreated:new DefaultFactory((()=>new DateTime)),dateUpdated:new DefaultFactory((()=>new DateTime))},{name:"contacts",keys:[{name:"contactID",type:"number",generated:"identity"}],properties:[{name:"externalID",type:"string",default:["externalID",'""']},{name:"userID",type:"number"},{name:"mailboxID",type:"number"},{name:"domainID",type:"number"},{name:"name",type:"string",default:["name",'""']},{name:"description",type:"string",default:["description",'""']},{name:"companyID",type:"string",default:["companyID",'""']},{name:"salesTaxID",type:"string",default:["salesTaxID",'""']},{name:"gstTaxID",type:"string",default:["gstTaxID",'""']},{name:"vatTaxID",type:"string",default:["vatTaxID",'""']},{name:"incomeTaxID",type:"string",default:["incomeTaxID",'""']},{name:"type",type:"string",default:["type",'""']},{name:"synchronization",type:"string",default:["synchronization",'""']},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]},{name:"previewID",type:"number"},{name:"billingAddressID",type:"number"},{name:"shippingAddressID",type:"number"}],relations:[{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"},{name:"mailbox",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"}],relatedName:"Mailbox"},{name:"domain",fkMap:[{fk:"domainID",relatedKey:"domainID"}],relatedName:"HostedDomain"},{name:"preview",fkMap:[{fk:"previewID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"billingAddress",fkMap:[{fk:"billingAddressID",relatedKey:"addressID"}],relatedName:"ContactAddress"},{name:"addresses",isCollection:true,isInverse:true,relatedName:"ContactAddress"},{name:"shippingAddress",fkMap:[{fk:"shippingAddressID",relatedKey:"addressID"}],relatedName:"ContactAddress"},{name:"emails",isCollection:true,isInverse:true,relatedName:"ContactEmail"},{name:"phones",isCollection:true,isInverse:true,relatedName:"ContactPhone"},{name:"items",isCollection:true,isInverse:true,relatedName:"ContactItem"},{name:"domains",isCollection:true,isInverse:true,relatedName:"ContactDomain"},{name:"sellerStores",isCollection:true,isInverse:true,relatedName:"Store"},{name:"vendorItems",isCollection:true,isInverse:true,relatedName:"StoreItem"},{name:"ledgers",isCollection:true,isInverse:true,relatedName:"StoreLedger"},{name:"soldInvoices",isCollection:true,isInverse:true,relatedName:"StoreJournal"},{name:"boughtInvoices",isCollection:true,isInverse:true,relatedName:"StoreJournal"},{name:"soldItems",isCollection:true,isInverse:true,relatedName:"StoreJournalLineItem"}]}));modelEntitySchemas["Contact"]=Contact;_export("ContactEmail",ContactEmail=new Model("ContactEmail",["emailAddressID","contactID"],{type:"",blocked:false},{name:"contact_emails",keys:[{name:"emailAddressID",type:"number"},{name:"contactID",type:"number"}],properties:[{name:"type",type:"string",default:["type",'""']},{name:"notes",type:"string",default:["notes",'""']},{name:"blocked",type:"boolean",default:["blocked","false"]}],relations:[{name:"emailAddress",fkMap:[{fk:"emailAddressID",relatedKey:"emailAddressID"}],relatedName:"EmailAddress"},{name:"contact",fkMap:[{fk:"contactID",relatedKey:"contactID"}],relatedName:"Contact"}]}));modelEntitySchemas["ContactEmail"]=ContactEmail;_export("ContactPhone",ContactPhone=new Model("ContactPhone",["contactID","phoneNumberE64"],{type:""},{name:"contact_phones",keys:[{name:"contactID",type:"number"},{name:"phoneNumberE64",type:"string"}],properties:[{name:"type",type:"string",default:["type",'""']},{name:"notes",type:"string",default:["notes",'""']}],relations:[{name:"contact",fkMap:[{fk:"contactID",relatedKey:"contactID"}],relatedName:"Contact"}]}));modelEntitySchemas["ContactPhone"]=ContactPhone;_export("ContactItem",ContactItem=new Model("ContactItem",["itemID"],{type:"",title:"",valuesJson:""},{name:"contact_items",keys:[{name:"itemID",type:"number",generated:"identity"}],properties:[{name:"contactID",type:"number"},{name:"type",type:"string",default:["type",'""']},{name:"title",type:"string",default:["title",'""']},{name:"valuesJson",type:"string",default:["valuesJson",'""']}],relations:[{name:"contact",fkMap:[{fk:"contactID",relatedKey:"contactID"}],relatedName:"Contact"}]}));modelEntitySchemas["ContactItem"]=ContactItem;_export("ContactDomain",ContactDomain=new Model("ContactDomain",["domainID","contactID"],{blocked:false},{name:"contact_domains",keys:[{name:"domainID",type:"number"},{name:"contactID",type:"number"}],properties:[{name:"blocked",type:"boolean",default:["blocked","false"]}],relations:[{name:"domain",fkMap:[{fk:"domainID",relatedKey:"domainID"}],relatedName:"Domain"},{name:"contact",fkMap:[{fk:"contactID",relatedKey:"contactID"}],relatedName:"Contact"}]}));modelEntitySchemas["ContactDomain"]=ContactDomain;_export("ContactAddress",ContactAddress=new Model("ContactAddress",["addressID"],{title:"",line1:""},{name:"contact_addresses",keys:[{name:"addressID",type:"number",generated:"identity"}],properties:[{name:"contactID",type:"number"},{name:"title",type:"string",default:["title",'""']},{name:"line1",type:"string",default:["line1",'""']},{name:"line2",type:"string",default:["line2",'""']},{name:"line3",type:"string",default:["line3",'""']},{name:"city",type:"string",default:["city",'""']},{name:"state",type:"string",default:["state",'""']},{name:"countryCode",type:"string",default:["countryCode",'""']},{name:"phoneNumber",type:"string",default:["phoneNumber",'""']},{name:"notes",type:"string",default:["notes",'""']}],relations:[{name:"contact",fkMap:[{fk:"contactID",relatedKey:"contactID"}],relatedName:"Contact"},{name:"billingContacts",isCollection:true,isInverse:true,relatedName:"Contact"},{name:"shippingContacts",isCollection:true,isInverse:true,relatedName:"Contact"}]}));modelEntitySchemas["ContactAddress"]=ContactAddress;_export("CachedItem",CachedItem=new Model("CachedItem",["itemID","keyHash"],{key:"",expiry:new DefaultFactory((()=>new DateTime)),ready:false,slide:false},{name:"cached_item",keys:[{name:"itemID",type:"number",generated:"identity"},{name:"keyHash",type:"string"}],properties:[{name:"key",type:"string",default:["key",'""']},{name:"expiry",type:"DateTime",default:["expiry","new DefaultFactory(() => new DateTime())"]},{name:"ready",type:"boolean",default:["ready","false"]},{name:"slide",type:"boolean",default:["slide","false"]},{name:"lockToken",type:"string",default:["lockToken",'""']},{name:"lockExpiry",type:"DateTime",default:["lockExpiry","new DefaultFactory(() => new DateTime())"]}],relations:[]}));modelEntitySchemas["CachedItem"]=CachedItem;_export("Domain",Domain=new Model("Domain",["domainID"],{name:"",received:0,failed:0},{name:"domains",keys:[{name:"domainID",type:"number",generated:"identity"}],properties:[{name:"name",type:"string",default:["name",'""']},{name:"received",type:"number",default:["received","0"]},{name:"failed",type:"number",default:["failed","0"]}],relations:[{name:"emailAddresses",isCollection:true,isInverse:true,relatedName:"EmailAddress"},{name:"hostedDomain",isCollection:false,isInverse:true,relatedName:"HostedDomain"},{name:"contactDomains",isCollection:true,isInverse:true,relatedName:"ContactDomain"},{name:"activities",isCollection:true,isInverse:true,relatedName:"ServerActivity"}]}));modelEntitySchemas["Domain"]=Domain;_export("HostedDomain",HostedDomain=new Model("HostedDomain",["domainID"],{enableReceive:false,enableSend:false,useRelay:false,external:false},{name:"hosted_domains",keys:[{name:"domainID",type:"number"}],properties:[{name:"enableReceive",type:"boolean",default:["enableReceive","false"]},{name:"enableSend",type:"boolean",default:["enableSend","false"]},{name:"useRelay",type:"boolean",default:["useRelay","false"]},{name:"external",type:"boolean",default:["external","false"]},{name:"aliasForName",type:"string"}],relations:[{name:"domain",fkMap:[{fk:"domainID",relatedKey:"domainID"}],relatedName:"Domain"},{name:"aliasFor",fkMap:[{fk:"aliasForName",relatedKey:"domainID"}],relatedName:"HostedDomain"},{name:"aliases",isCollection:true,isInverse:true,relatedName:"HostedDomain"},{name:"mailboxes",isCollection:true,isInverse:true,relatedName:"Mailbox"},{name:"contacts",isCollection:true,isInverse:true,relatedName:"Contact"},{name:"domainUsers",isCollection:true,isInverse:true,relatedName:"DomainUser"},{name:"relays",isCollection:true,isInverse:true,relatedName:"DomainRelay"},{name:"domainKeys",isCollection:true,isInverse:true,relatedName:"DomainKey"},{name:"templates",isCollection:true,isInverse:true,relatedName:"EmailTemplate"}]}));modelEntitySchemas["HostedDomain"]=HostedDomain;_export("DomainUser",DomainUser=new Model("DomainUser",["domainID","userID"],{isAdmin:false,allowCreateMailbox:false},{name:"domain_users",keys:[{name:"domainID",type:"number"},{name:"userID",type:"number"}],properties:[{name:"prefix",type:"string",default:["prefix",'""']},{name:"isAdmin",type:"boolean",default:["isAdmin","false"]},{name:"allowCreateMailbox",type:"boolean",default:["allowCreateMailbox","false"]}],relations:[{name:"hostedDomain",fkMap:[{fk:"domainID",relatedKey:"domainID"}],relatedName:"HostedDomain"},{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"}]}));modelEntitySchemas["DomainUser"]=DomainUser;_export("DomainRelayTypeArray",DomainRelayTypeArray=[{label:"smtp",value:"smtp"},{label:"ses",value:"ses"},{label:"https",value:"https"}]);_export("DomainRelay",DomainRelay=new Model("DomainRelay",["domainRelayID"],{type:"smtp",host:"",username:"",password:"",priority:0},{name:"domain_relays",keys:[{name:"domainRelayID",type:"number",generated:"identity"}],properties:[{name:"domainID",type:"number"},{name:"type",type:"string",default:["type",'"smtp"']},{name:"host",type:"string",default:["host",'""']},{name:"username",type:"string",default:["username",'""']},{name:"password",type:"string",default:["password",'""']},{name:"priority",type:"number",default:["priority","0"]},{name:"script",type:"string",default:["script",'""']}],relations:[{name:"hostedDomain",fkMap:[{fk:"domainID",relatedKey:"domainID"}],relatedName:"HostedDomain"}]}));modelEntitySchemas["DomainRelay"]=DomainRelay;_export("DomainKey",DomainKey=new Model("DomainKey",["domainKeyID"],{name:"",keyType:"",publicKey:""},{name:"domain_keys",keys:[{name:"domainKeyID",type:"number",generated:"identity"}],properties:[{name:"name",type:"string",default:["name",'""']},{name:"keyType",type:"string",default:["keyType",'""']},{name:"publicKey",type:"string",default:["publicKey",'""']},{name:"domainID",type:"number"},{name:"privateKey",type:"string",default:["privateKey",'""']}],relations:[{name:"domain",fkMap:[{fk:"domainID",relatedKey:"domainID"}],relatedName:"HostedDomain"}]}));modelEntitySchemas["DomainKey"]=DomainKey;_export("EmailStatusArray",EmailStatusArray=[{label:"queued",value:"queued"},{label:"received",value:"received"},{label:"draft",value:"draft"},{label:"published",value:"published"},{label:"pending-approval",value:"pending-approval"},{label:"scheduled",value:"scheduled"},{label:"sent",value:"sent"},{label:"sent-failed",value:"sent-failed"},{label:"deleted",value:"deleted"}]);_export("Email",Email=new Model("Email",["emailID"],{senderName:"",received:false,dateReceived:new DefaultFactory((()=>new DateTime)),dateCreated:new DefaultFactory((()=>new DateTime)),status:"queued",forwardCount:0,replyCount:0,viewCount:0,emailSize:0,originalFileSize:0},{name:"emails",keys:[{name:"emailID",type:"number",generated:"identity"}],properties:[{name:"subject",type:"string",default:["subject",'""']},{name:"summary",type:"string",default:["summary",'""']},{name:"textBody",type:"string",default:["textBody",'""']},{name:"htmlBody",type:"string",default:["htmlBody",'""']},{name:"senderName",type:"string",default:["senderName",'""']},{name:"senderID",type:"number"},{name:"userID",type:"number"},{name:"received",type:"boolean",default:["received","false"]},{name:"headers",type:"string",default:["headers",'""']},{name:"headerMessageID",type:"string",default:["headerMessageID",'""']},{name:"externalEmailID",type:"string",default:["externalEmailID",'""']},{name:"dateReceived",type:"DateTime",default:["dateReceived","new DefaultFactory(() => new DateTime())"]},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"dateSent",type:"DateTime",default:["dateSent","new DefaultFactory(() => new DateTime())"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]},{name:"status",type:"string",default:["status",'"queued"']},{name:"forwardCount",type:"number",default:["forwardCount","0"]},{name:"replyCount",type:"number",default:["replyCount","0"]},{name:"viewCount",type:"number",default:["viewCount","0"]},{name:"mimeFileID",type:"number"},{name:"htmlBodyID",type:"number"},{name:"emailSize",type:"number",default:["emailSize","0"]},{name:"originalFileSize",type:"number",default:["originalFileSize","0"]},{name:"workflowID",type:"string",default:["workflowID",'""']},{name:"parentID",type:"number"},{name:"forwardedID",type:"number"},{name:"engagement",type:"string",default:["engagement",'""']},{name:"tags",type:"string",default:["tags",'""']}],relations:[{name:"senderEmail",fkMap:[{fk:"senderID",relatedKey:"emailAddressID"}],relatedName:"EmailAddress"},{name:"senderUser",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"},{name:"mimeFile",fkMap:[{fk:"mimeFileID",relatedKey:"logID"}],relatedName:"EmailLog"},{name:"logs",isCollection:true,isInverse:true,relatedName:"EmailLog"},{name:"htmlBodyFile",fkMap:[{fk:"htmlBodyID",relatedKey:"logID"}],relatedName:"EmailLog"},{name:"parent",fkMap:[{fk:"parentID",relatedKey:"emailID"}],relatedName:"Email"},{name:"children",isCollection:true,isInverse:true,relatedName:"Email"},{name:"forwarded",fkMap:[{fk:"forwardedID",relatedKey:"emailID"}],relatedName:"Email"},{name:"forwards",isCollection:true,isInverse:true,relatedName:"Email"},{name:"attachments",isCollection:true,isInverse:true,relatedName:"AppFile"},{name:"engagements",isCollection:true,isInverse:true,relatedName:"EmailEngagement"},{name:"recipients",isCollection:true,isInverse:true,relatedName:"EmailRecipient"},{name:"emailTags",isCollection:true,isInverse:true,relatedName:"EmailTag"},{name:"mailboxes",isCollection:true,isInverse:true,relatedName:"MailboxEmail"},{name:"lastEmailThreads",isCollection:true,isInverse:true,relatedName:"MailboxContact"},{name:"threadEmails",isCollection:true,isInverse:true,relatedName:"MailboxContactEmail"},{name:"subscriberActivities",isCollection:true,isInverse:true,relatedName:"SubscriberActivity"}]}));modelEntitySchemas["Email"]=Email;_export("EmailEngagement",EmailEngagement=new Model("EmailEngagement",["emailID","engagement"],{count:0},{name:"email_engagements",keys:[{name:"emailID",type:"number"},{name:"engagement",type:"string"}],properties:[{name:"count",type:"number",default:["count","0"]}],relations:[{name:"email",fkMap:[{fk:"emailID",relatedKey:"emailID"}],relatedName:"Email"}]}));modelEntitySchemas["EmailEngagement"]=EmailEngagement;_export("EmailLog",EmailLog=new Model("EmailLog",["logID"],{fileName:"",fileSize:0,compression:"",dateCreated:new DefaultFactory((()=>new DateTime)),cloudPath:""},{name:"email_logs",keys:[{name:"logID",type:"number",generated:"identity"}],properties:[{name:"emailID",type:"number"},{name:"fileName",type:"string",default:["fileName",'""']},{name:"fileSize",type:"number",default:["fileSize","0"]},{name:"compression",type:"string",default:["compression",'""']},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"cloudPath",type:"string",default:["cloudPath",'""']}],relations:[{name:"email",fkMap:[{fk:"emailID",relatedKey:"emailID"}],relatedName:"Email"},{name:"mimeFileEmails",isCollection:true,isInverse:true,relatedName:"Email"},{name:"htmlBodyFileEmails",isCollection:true,isInverse:true,relatedName:"Email"}]}));modelEntitySchemas["EmailLog"]=EmailLog;_export("EmailRecipientTypeArray",EmailRecipientTypeArray=[{label:"from",value:"from"},{label:"to",value:"to"},{label:"cc",value:"cc"},{label:"bcc",value:"bcc"},{label:"viewer",value:"viewer"},{label:"editor",value:"editor"}]);_export("EmailRecipient",EmailRecipient=new Model("EmailRecipient",["emailID","emailAddressID"],{type:"from"},{name:"email_recipients",keys:[{name:"emailID",type:"number"},{name:"emailAddressID",type:"number"}],properties:[{name:"type",type:"string",default:["type",'"from"']},{name:"name",type:"string",default:["name",'""']},{name:"dateSent",type:"DateTime",default:["dateSent","new DefaultFactory(() => new DateTime())"]},{name:"error",type:"string",default:["error",'""']},{name:"status",type:"string",default:["status",'""']},{name:"replyTo",type:"string",default:["replyTo",'""']}],relations:[{name:"email",fkMap:[{fk:"emailID",relatedKey:"emailID"}],relatedName:"Email"},{name:"emailAddress",fkMap:[{fk:"emailAddressID",relatedKey:"emailAddressID"}],relatedName:"EmailAddress"}]}));modelEntitySchemas["EmailRecipient"]=EmailRecipient;_export("EmailTag",EmailTag=new Model("EmailTag",["emailID","tagID"],{},{name:"email_tags",keys:[{name:"emailID",type:"number"},{name:"tagID",type:"number"}],properties:[],relations:[{name:"email",fkMap:[{fk:"emailID",relatedKey:"emailID"}],relatedName:"Email"},{name:"tag",fkMap:[{fk:"tagID",relatedKey:"tagID"}],relatedName:"Tag"}]}));modelEntitySchemas["EmailTag"]=EmailTag;_export("EmailAddress",EmailAddress=new Model("EmailAddress",["emailAddressID"],{emailAddress:"",name:"",blocked:false},{name:"email_addresses",keys:[{name:"emailAddressID",type:"number",generated:"identity"}],properties:[{name:"emailAddress",type:"string",default:["emailAddress",'""']},{name:"domainID",type:"number"},{name:"name",type:"string",default:["name",'""']},{name:"blocked",type:"boolean",default:["blocked","false"]}],relations:[{name:"domain",fkMap:[{fk:"domainID",relatedKey:"domainID"}],relatedName:"Domain"},{name:"senders",isCollection:true,isInverse:true,relatedName:"Email"},{name:"mailbox",isCollection:false,isInverse:true,relatedName:"Mailbox"},{name:"contactEmails",isCollection:true,isInverse:true,relatedName:"ContactEmail"},{name:"recipients",isCollection:true,isInverse:true,relatedName:"EmailRecipient"},{name:"threads",isCollection:true,isInverse:true,relatedName:"MailboxContact"},{name:"subscriberActivities",isCollection:true,isInverse:true,relatedName:"SubscriberActivity"}]}));modelEntitySchemas["EmailAddress"]=EmailAddress;_export("EmailTemplate",EmailTemplate=new Model("EmailTemplate",["templateID"],{},{name:"email_templates",keys:[{name:"templateID",type:"number",generated:"identity"}],properties:[{name:"domainID",type:"number"},{name:"mailboxID",type:"number"},{name:"folderID",type:"number"}],relations:[{name:"domain",fkMap:[{fk:"domainID",relatedKey:"domainID"}],relatedName:"HostedDomain"},{name:"mailbox",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"}],relatedName:"Mailbox"},{name:"folder",fkMap:[{fk:"folderID",relatedKey:"appFileID"}],relatedName:"AppFile"}]}));modelEntitySchemas["EmailTemplate"]=EmailTemplate;_export("Mailbox",Mailbox=new Model("Mailbox",["mailboxID"],{storage:0,maxStorage:0,indexAttachments:false,indexImageAttachments:false,unreplied:0,unread:0,dateCreated:new DefaultFactory((()=>new DateTime)),dateUpdated:new DefaultFactory((()=>new DateTime)),isChannel:false,isPrivateChannel:false,requireApproval:false,subscriberCount:0},{name:"mailboxes",keys:[{name:"mailboxID",type:"number"}],properties:[{name:"domainID",type:"number"},{name:"storage",type:"number",default:["storage","0"]},{name:"maxStorage",type:"number",default:["maxStorage","0"]},{name:"indexAttachments",type:"boolean",default:["indexAttachments","false"]},{name:"indexImageAttachments",type:"boolean",default:["indexImageAttachments","false"]},{name:"firstID",type:"number",default:["firstID","0"]},{name:"recentID",type:"number",default:["recentID","0"]},{name:"unreplied",type:"number",default:["unreplied","0"]},{name:"unread",type:"number",default:["unread","0"]},{name:"logoID",type:"number"},{name:"description",type:"string",default:["description",'""']},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]},{name:"isChannel",type:"boolean",default:["isChannel","false"]},{name:"isPrivateChannel",type:"boolean",default:["isPrivateChannel","false"]},{name:"requireApproval",type:"boolean",default:["requireApproval","false"]},{name:"subscriberCount",type:"number",default:["subscriberCount","0"]},{name:"datePublished",type:"DateTime",default:["datePublished","new DefaultFactory(() => new DateTime())"]},{name:"dateEngaged",type:"DateTime",default:["dateEngaged","new DefaultFactory(() => new DateTime())"]},{name:"parentID",type:"number",default:["parentID","0"]}],relations:[{name:"emailAddress",fkMap:[{fk:"mailboxID",relatedKey:"emailAddressID"}],relatedName:"EmailAddress"},{name:"domain",fkMap:[{fk:"domainID",relatedKey:"domainID"}],relatedName:"HostedDomain"},{name:"logo",fkMap:[{fk:"logoID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"contacts",isCollection:true,isInverse:true,relatedName:"Contact"},{name:"templates",isCollection:true,isInverse:true,relatedName:"EmailTemplate"},{name:"emails",isCollection:true,isInverse:true,relatedName:"MailboxEmail"},{name:"mailboxContacts",isCollection:true,isInverse:true,relatedName:"MailboxContact"},{name:"threadEmails",isCollection:true,isInverse:true,relatedName:"MailboxContactEmail"},{name:"syncTargets",isCollection:true,isInverse:true,relatedName:"MailboxSyncTarget"},{name:"channelConfig",isCollection:false,isInverse:true,relatedName:"ChannelConfig"},{name:"subscriberActivities",isCollection:true,isInverse:true,relatedName:"SubscriberActivity"},{name:"userPins",isCollection:true,isInverse:true,relatedName:"UserPin"},{name:"userMailboxes",isCollection:true,isInverse:true,relatedName:"UserMailbox"},{name:"websiteChannels",isCollection:true,isInverse:true,relatedName:"WebSiteChannel"}]}));modelEntitySchemas["Mailbox"]=Mailbox;_export("MailboxEmail",MailboxEmail=new Model("MailboxEmail",["mailboxID","emailID"],{},{name:"mailbox_emails",keys:[{name:"mailboxID",type:"number"},{name:"emailID",type:"number"}],properties:[],relations:[{name:"mailbox",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"}],relatedName:"Mailbox"},{name:"email",fkMap:[{fk:"emailID",relatedKey:"emailID"}],relatedName:"Email"}]}));modelEntitySchemas["MailboxEmail"]=MailboxEmail;_export("MailboxContactStatusArray",MailboxContactStatusArray=[{label:"invited",value:"invited"},{label:"added",value:"added"},{label:"active",value:"active"},{label:"unsubscribed",value:"unsubscribed"},{label:"blocked",value:"blocked"}]);_export("MailboxContact",MailboxContact=new Model("MailboxContact",["mailboxID","emailAddressID"],{dateCreated:new DefaultFactory((()=>new DateTime)),dateUpdated:new DefaultFactory((()=>new DateTime)),unread:0,total:0,isOwner:false,canContribute:false,priority:0,blocked:false,mute:false,status:"invited"},{name:"mailbox_contacts",keys:[{name:"mailboxID",type:"number"},{name:"emailAddressID",type:"number"}],properties:[{name:"lastEmailID",type:"number"},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]},{name:"unread",type:"number",default:["unread","0"]},{name:"replied",type:"DateTime",default:["replied","new DefaultFactory(() => new DateTime())"]},{name:"total",type:"number",default:["total","0"]},{name:"doNotIndex",type:"boolean",default:["doNotIndex","false"]},{name:"doNotIndexAttachments",type:"boolean",default:["doNotIndexAttachments","false"]},{name:"isOwner",type:"boolean",default:["isOwner","false"]},{name:"canContribute",type:"boolean",default:["canContribute","false"]},{name:"priority",type:"number",default:["priority","0"]},{name:"blocked",type:"boolean",default:["blocked","false"]},{name:"mute",type:"boolean",default:["mute","false"]},{name:"status",type:"string",default:["status",'"invited"']}],relations:[{name:"mailbox",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"}],relatedName:"Mailbox"},{name:"emailAddress",fkMap:[{fk:"emailAddressID",relatedKey:"emailAddressID"}],relatedName:"EmailAddress"},{name:"lastEmail",fkMap:[{fk:"lastEmailID",relatedKey:"emailID"}],relatedName:"Email"},{name:"tags",isCollection:true,isInverse:true,relatedName:"MailboxContactTag"}]}));modelEntitySchemas["MailboxContact"]=MailboxContact;_export("MailboxContactEmail",MailboxContactEmail=new Model("MailboxContactEmail",["mailboxID","emailAddressID","emailID"],{dateReceived:new DefaultFactory((()=>new DateTime))},{name:"mailbox_contact_emails",keys:[{name:"mailboxID",type:"number"},{name:"emailAddressID",type:"number"},{name:"emailID",type:"number"}],properties:[{name:"dateReceived",type:"DateTime",default:["dateReceived","new DefaultFactory(() => new DateTime())"]},{name:"timeRead",type:"DateTime",default:["timeRead","new DefaultFactory(() => new DateTime())"]},{name:"engagement",type:"string",default:["engagement",'""']},{name:"signedFileLogID",type:"number",default:["signedFileLogID","0"]}],relations:[{name:"mailbox",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"}],relatedName:"Mailbox"},{name:"email",fkMap:[{fk:"emailID",relatedKey:"emailID"}],relatedName:"Email"}]}));modelEntitySchemas["MailboxContactEmail"]=MailboxContactEmail;_export("MailboxContactTag",MailboxContactTag=new Model("MailboxContactTag",["mailboxID","emailAddressID","tagID"],{count:0,dateUpdated:new DefaultFactory((()=>new DateTime))},{name:"mailbox_contact_tags",keys:[{name:"mailboxID",type:"number"},{name:"emailAddressID",type:"number"},{name:"tagID",type:"number"}],properties:[{name:"count",type:"number",default:["count","0"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]}],relations:[{name:"tag",fkMap:[{fk:"tagID",relatedKey:"tagID"}],relatedName:"Tag"},{name:"mailboxContact",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"},{fk:"emailAddressID",relatedKey:"emailAddressID"}],relatedName:"MailboxContact"}]}));modelEntitySchemas["MailboxContactTag"]=MailboxContactTag;_export("MailboxSyncTargetDirectionArray",MailboxSyncTargetDirectionArray=[{label:"in",value:"in"},{label:"out",value:"out"}]);_export("MailboxSyncTargetProtocolArray",MailboxSyncTargetProtocolArray=[{label:"imap",value:"imap"}]);_export("MailboxSyncTargetLastSyncStatusArray",MailboxSyncTargetLastSyncStatusArray=[{label:"none",value:"none"},{label:"success",value:"success"},{label:"failed",value:"failed"}]);_export("MailboxSyncTarget",MailboxSyncTarget=new Model("MailboxSyncTarget",["syncTargetID"],{direction:"in",protocol:"imap",username:"",host:"",port:0,isSecure:false,syncAllFolders:false,syncJunkMails:false,intervalSeconds:0,active:false},{name:"mailbox_sync_targets",keys:[{name:"syncTargetID",type:"number",generated:"identity"}],properties:[{name:"mailboxID",type:"number"},{name:"direction",type:"string",default:["direction",'"in"']},{name:"protocol",type:"string",default:["protocol",'"imap"']},{name:"username",type:"string",default:["username",'""']},{name:"password",type:"string",default:["password",'""']},{name:"host",type:"string",default:["host",'""']},{name:"port",type:"number",default:["port","0"]},{name:"isSecure",type:"boolean",default:["isSecure","false"]},{name:"syncAllFolders",type:"boolean",default:["syncAllFolders","false"]},{name:"syncJunkMails",type:"boolean",default:["syncJunkMails","false"]},{name:"allFolderName",type:"string",default:["allFolderName",'""']},{name:"intervalSeconds",type:"number",default:["intervalSeconds","0"]},{name:"active",type:"boolean",default:["active","false"]},{name:"lastSync",type:"DateTime",default:["lastSync","new DefaultFactory(() => new DateTime())"]},{name:"lastSyncStatus",type:"string",default:["lastSyncStatus",'"none"']},{name:"syncState",type:"string",default:["syncState",'""']},{name:"lastSyncError",type:"string",default:["lastSyncError",'""']}],relations:[{name:"mailbox",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"}],relatedName:"Mailbox"}]}));modelEntitySchemas["MailboxSyncTarget"]=MailboxSyncTarget;_export("ChannelConfig",ChannelConfig=new Model("ChannelConfig",["mailboxID"],{sendInviteOnEngagement:false,memberOnlyEngagement:false,notSafeForWork:false},{name:"channel_configs",keys:[{name:"mailboxID",type:"number"}],properties:[{name:"inviteContent",type:"string",default:["inviteContent",'""']},{name:"welcomeContent",type:"string",default:["welcomeContent",'""']},{name:"sendInviteOnEngagement",type:"boolean",default:["sendInviteOnEngagement","false"]},{name:"memberOnlyEngagement",type:"boolean",default:["memberOnlyEngagement","false"]},{name:"notSafeForWork",type:"boolean",default:["notSafeForWork","false"]},{name:"postFooter",type:"string",default:["postFooter",'""']}],relations:[{name:"mailbox",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"}],relatedName:"Mailbox"}]}));modelEntitySchemas["ChannelConfig"]=ChannelConfig;_export("SubscriberActivity",SubscriberActivity=new Model("SubscriberActivity",["activityID"],{activity:"",dateCreated:new DefaultFactory((()=>new DateTime))},{name:"subscriber_activities",keys:[{name:"activityID",type:"number",generated:"identity"}],properties:[{name:"mailboxID",type:"number"},{name:"emailID",type:"number"},{name:"emailAddressID",type:"number"},{name:"activity",type:"string",default:["activity",'""']},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"ipAddress",type:"string",default:["ipAddress",'""']},{name:"accessCode",type:"string",default:["accessCode",'""']}],relations:[{name:"mailbox",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"}],relatedName:"Mailbox"},{name:"email",fkMap:[{fk:"emailID",relatedKey:"emailID"}],relatedName:"Email"},{name:"subscriber",fkMap:[{fk:"emailAddressID",relatedKey:"emailAddressID"}],relatedName:"EmailAddress"}]}));modelEntitySchemas["SubscriberActivity"]=SubscriberActivity;_export("SearchWordStatusArray",SearchWordStatusArray=[{label:"begin",value:"begin"},{label:"ready",value:"ready"},{label:"deleted",value:"deleted"}]);_export("SearchWord",SearchWord=new Model("SearchWord",["wordID"],{word:"",dateCreated:new DefaultFactory((()=>new DateTime)),dateUpdated:new DefaultFactory((()=>new DateTime)),status:"begin"},{name:"search_words",keys:[{name:"wordID",type:"number",generated:"identity"}],properties:[{name:"word",type:"string",default:["word",'""']},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]},{name:"expires",type:"DateTime",default:["expires","new DefaultFactory(() => new DateTime())"]},{name:"status",type:"string",default:["status",'"begin"']},{name:"recentID",type:"number",default:["recentID","0"]},{name:"firstID",type:"number",default:["firstID","0"]}],relations:[{name:"indexes",isCollection:true,isInverse:true,relatedName:"SearchWordIndex"}]}));modelEntitySchemas["SearchWord"]=SearchWord;_export("SearchWordIndex",SearchWordIndex=new Model("SearchWordIndex",["wordID","fileContentID"],{rank:0},{name:"search_word_index",keys:[{name:"wordID",type:"number"},{name:"fileContentID",type:"number"}],properties:[{name:"rank",type:"number",default:["rank","0"]}],relations:[{name:"word",fkMap:[{fk:"wordID",relatedKey:"wordID"}],relatedName:"SearchWord"}]}));modelEntitySchemas["SearchWordIndex"]=SearchWordIndex;_export("ServerActivityActivityArray",ServerActivityActivityArray=[{label:"visit",value:"visit"},{label:"rcpt-not-found",value:"rcpt-not-found"},{label:"mail-received",value:"mail-received"}]);_export("ServerActivity",ServerActivity=new Model("ServerActivity",["activityID"],{dateCreated:new DefaultFactory((()=>new DateTime)),ipAddress:"",activity:"visit"},{name:"server_activities",keys:[{name:"activityID",type:"number",generated:"identity"}],properties:[{name:"domainID",type:"number"},{name:"webSiteFolderID",type:"number"},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"ipAddress",type:"string",default:["ipAddress",'""']},{name:"activity",type:"string",default:["activity",'"visit"']}],relations:[{name:"domain",fkMap:[{fk:"domainID",relatedKey:"domainID"}],relatedName:"Domain"},{name:"webSite",fkMap:[{fk:"webSiteFolderID",relatedKey:"folderID"}],relatedName:"WebSiteFolder"}]}));modelEntitySchemas["ServerActivity"]=ServerActivity;_export("Store",Store=new Model("Store",["storeID"],{name:""},{name:"stores",keys:[{name:"storeID",type:"number",generated:"identity"}],properties:[{name:"name",type:"string",default:["name",'""']},{name:"sellerID",type:"number"},{name:"folderID",type:"number"}],relations:[{name:"seller",fkMap:[{fk:"sellerID",relatedKey:"contactID"}],relatedName:"Contact"},{name:"folder",fkMap:[{fk:"folderID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"storeUsers",isCollection:true,isInverse:true,relatedName:"StoreUser"},{name:"configs",isCollection:true,isInverse:true,relatedName:"StoreConfig"},{name:"storeItems",isCollection:true,isInverse:true,relatedName:"StoreItem"},{name:"itemFolders",isCollection:true,isInverse:true,relatedName:"StoreItemFolder"},{name:"insights",isCollection:true,isInverse:true,relatedName:"StoreInsight"},{name:"ledgers",isCollection:true,isInverse:true,relatedName:"StoreLedger"},{name:"journals",isCollection:true,isInverse:true,relatedName:"StoreJournal"},{name:"storeWebsites",isCollection:true,isInverse:true,relatedName:"WebSiteStore"}]}));modelEntitySchemas["Store"]=Store;_export("StoreUser",StoreUser=new Model("StoreUser",["storeID","userID"],{},{name:"store_users",keys:[{name:"storeID",type:"number"},{name:"userID",type:"number"}],properties:[],relations:[{name:"store",fkMap:[{fk:"storeID",relatedKey:"storeID"}],relatedName:"Store"},{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"}]}));modelEntitySchemas["StoreUser"]=StoreUser;_export("StoreConfig",StoreConfig=new Model("StoreConfig",["storeID","groupName","configName"],{encrypted:false,configValue:""},{name:"store_configs",keys:[{name:"storeID",type:"number"},{name:"groupName",type:"string"},{name:"configName",type:"string"}],properties:[{name:"encrypted",type:"boolean",default:["encrypted","false"]},{name:"configValue",type:"string",default:["configValue",'""']}],relations:[{name:"store",fkMap:[{fk:"storeID",relatedKey:"storeID"}],relatedName:"Store"}]}));modelEntitySchemas["StoreConfig"]=StoreConfig;_export("StoreItemItemTypeArray",StoreItemItemTypeArray=[{label:"product",value:"product"},{label:"service",value:"service"},{label:"tax",value:"tax"},{label:"fee",value:"fee"},{label:"commission",value:"commission"},{label:"variant",value:"variant"},{label:"size",value:"size"}]);_export("StoreItem",StoreItem=new Model("StoreItem",["storeItemID"],{name:"",active:false,itemType:"product",dateCreated:new DefaultFactory((()=>new DateTime)),dateUpdated:new DefaultFactory((()=>new DateTime)),price:0,maxPrice:0},{name:"store_items",keys:[{name:"storeItemID",type:"number",generated:"identity"}],properties:[{name:"storeID",type:"number"},{name:"itemFolderID",type:"number"},{name:"name",type:"string",default:["name",'""']},{name:"active",type:"boolean",default:["active","false"]},{name:"internalNotes",type:"string",default:["internalNotes",'""']},{name:"description",type:"string",default:["description",'""']},{name:"itemType",type:"string",default:["itemType",'"product"']},{name:"folderID",type:"number"},{name:"sizeForID",type:"number"},{name:"variantForID",type:"number"},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]},{name:"vendorID",type:"number"},{name:"price",type:"number",default:["price","0"]},{name:"maxPrice",type:"number",default:["maxPrice","0"]}],relations:[{name:"store",fkMap:[{fk:"storeID",relatedKey:"storeID"}],relatedName:"Store"},{name:"itemFolder",fkMap:[{fk:"itemFolderID",relatedKey:"itemFolderID"}],relatedName:"StoreItemFolder"},{name:"fileFolder",fkMap:[{fk:"folderID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"sizeFor",fkMap:[{fk:"sizeForID",relatedKey:"storeItemID"}],relatedName:"StoreItem"},{name:"sizes",isCollection:true,isInverse:true,relatedName:"StoreItem"},{name:"variantFor",fkMap:[{fk:"variantForID",relatedKey:"storeItemID"}],relatedName:"StoreItem"},{name:"variants",isCollection:true,isInverse:true,relatedName:"StoreItem"},{name:"vendor",fkMap:[{fk:"vendorID",relatedKey:"contactID"}],relatedName:"Contact"},{name:"storeItemPrices",isCollection:true,isInverse:true,relatedName:"StoreItemPrice"},{name:"priceAddOns",isCollection:true,isInverse:true,relatedName:"StorePriceAddOn"},{name:"mediaFiles",isCollection:true,isInverse:true,relatedName:"StoreMediaFile"},{name:"insights",isCollection:true,isInverse:true,relatedName:"StoreInsight"},{name:"ledgers",isCollection:true,isInverse:true,relatedName:"StoreLedger"},{name:"lineItems",isCollection:true,isInverse:true,relatedName:"StoreJournalLineItem"},{name:"storeItemTags",isCollection:true,isInverse:true,relatedName:"StoreItemTag"}]}));modelEntitySchemas["StoreItem"]=StoreItem;_export("StoreItemFolder",StoreItemFolder=new Model("StoreItemFolder",["itemFolderID"],{name:"",path:""},{name:"store_item_folders",keys:[{name:"itemFolderID",type:"number",generated:"identity"}],properties:[{name:"storeID",type:"number"},{name:"name",type:"string",default:["name",'""']},{name:"path",type:"string",default:["path",'""']},{name:"parentID",type:"number"}],relations:[{name:"store",fkMap:[{fk:"storeID",relatedKey:"storeID"}],relatedName:"Store"},{name:"parent",fkMap:[{fk:"parentID",relatedKey:"itemFolderID"}],relatedName:"StoreItemFolder"},{name:"children",isCollection:true,isInverse:true,relatedName:"StoreItemFolder"},{name:"items",isCollection:true,isInverse:true,relatedName:"StoreItem"},{name:"taxLineItems",isCollection:true,isInverse:true,relatedName:"StoreJournalLineItem"}]}));modelEntitySchemas["StoreItemFolder"]=StoreItemFolder;_export("StoreItemPrice",StoreItemPrice=new Model("StoreItemPrice",["priceID"],{startDate:new DefaultFactory((()=>new DateTime)),currency:"",amount:0,active:false,addonsAmount:0},{name:"store_item_prices",keys:[{name:"priceID",type:"number",generated:"identity"}],properties:[{name:"storeItemID",type:"number"},{name:"startDate",type:"DateTime",default:["startDate","new DefaultFactory(() => new DateTime())"]},{name:"endDate",type:"DateTime",default:["endDate","new DefaultFactory(() => new DateTime())"]},{name:"currency",type:"string",default:["currency",'""']},{name:"amount",type:"number",default:["amount","0"]},{name:"maxAmount",type:"number",default:["maxAmount","0"]},{name:"active",type:"boolean",default:["active","false"]},{name:"addonsAmount",type:"number",default:["addonsAmount","0"]}],relations:[{name:"storeItem",fkMap:[{fk:"storeItemID",relatedKey:"storeItemID"}],relatedName:"StoreItem"},{name:"addons",isCollection:true,isInverse:true,relatedName:"StorePriceAddOn"},{name:"lineItems",isCollection:true,isInverse:true,relatedName:"StoreJournalLineItem"}]}));modelEntitySchemas["StoreItemPrice"]=StoreItemPrice;_export("StorePriceAddOn",StorePriceAddOn=new Model("StorePriceAddOn",["priceID","addOnItemID"],{inclusive:false,print:false},{name:"store_price_add_ons",keys:[{name:"priceID",type:"number"},{name:"addOnItemID",type:"number"}],properties:[{name:"inclusive",type:"boolean",default:["inclusive","false"]},{name:"print",type:"boolean",default:["print","false"]}],relations:[{name:"price",fkMap:[{fk:"priceID",relatedKey:"priceID"}],relatedName:"StoreItemPrice"},{name:"addOnItem",fkMap:[{fk:"addOnItemID",relatedKey:"storeItemID"}],relatedName:"StoreItem"}]}));modelEntitySchemas["StorePriceAddOn"]=StorePriceAddOn;_export("StoreMediaFile",StoreMediaFile=new Model("StoreMediaFile",["storeItemID","appFileID"],{sortOrder:0,title:"",isPreview:false,isDeleted:false},{name:"store_media_files",keys:[{name:"storeItemID",type:"number"},{name:"appFileID",type:"number"}],properties:[{name:"fileContentID",type:"number",default:["fileContentID","0"]},{name:"sortOrder",type:"number",default:["sortOrder","0"]},{name:"title",type:"string",default:["title",'""']},{name:"description",type:"string",default:["description",'""']},{name:"isPreview",type:"boolean",default:["isPreview","false"]},{name:"isDeleted",type:"boolean",default:["isDeleted","false"]},{name:"fileHtmlView",type:"string",default:["fileHtmlView",'""']},{name:"fileLink",type:"string",default:["fileLink",'""']}],relations:[{name:"storeItem",fkMap:[{fk:"storeItemID",relatedKey:"storeItemID"}],relatedName:"StoreItem"},{name:"appFile",fkMap:[{fk:"appFileID",relatedKey:"appFileID"}],relatedName:"AppFile"}]}));modelEntitySchemas["StoreMediaFile"]=StoreMediaFile;_export("StoreInsight",StoreInsight=new Model("StoreInsight",["insightID"],{name:"",value:0,isPublic:false},{name:"store_insights",keys:[{name:"insightID",type:"number",generated:"identity"}],properties:[{name:"storeID",type:"number"},{name:"storeItemID",type:"number"},{name:"name",type:"string",default:["name",'""']},{name:"value",type:"number",default:["value","0"]},{name:"isPublic",type:"boolean",default:["isPublic","false"]}],relations:[{name:"store",fkMap:[{fk:"storeID",relatedKey:"storeID"}],relatedName:"Store"},{name:"storeItem",fkMap:[{fk:"storeItemID",relatedKey:"storeItemID"}],relatedName:"StoreItem"}]}));modelEntitySchemas["StoreInsight"]=StoreInsight;_export("StoreLedger",StoreLedger=new Model("StoreLedger",["ledgerID"],{ledgerType:"",name:"",balance:0},{name:"store_ledger",keys:[{name:"ledgerID",type:"number",generated:"identity"}],properties:[{name:"path",type:"string",default:["path",'""']},{name:"storeID",type:"number"},{name:"parentID",type:"number"},{name:"contactID",type:"number"},{name:"itemID",type:"number"},{name:"head",type:"string",default:["head",'""']},{name:"ledgerType",type:"string",default:["ledgerType",'""']},{name:"name",type:"string",default:["name",'""']},{name:"description",type:"string",default:["description",'""']},{name:"balance",type:"number",default:["balance","0"]}],relations:[{name:"store",fkMap:[{fk:"storeID",relatedKey:"storeID"}],relatedName:"Store"},{name:"parent",fkMap:[{fk:"parentID",relatedKey:"ledgerID"}],relatedName:"StoreLedger"},{name:"children",isCollection:true,isInverse:true,relatedName:"StoreLedger"},{name:"contact",fkMap:[{fk:"contactID",relatedKey:"contactID"}],relatedName:"Contact"},{name:"item",fkMap:[{fk:"itemID",relatedKey:"storeItemID"}],relatedName:"StoreItem"},{name:"entries",isCollection:true,isInverse:true,relatedName:"StoreJournalEntry"}]}));modelEntitySchemas["StoreLedger"]=StoreLedger;_export("StoreJournalJournalTypeArray",StoreJournalJournalTypeArray=[{label:"order",value:"order"},{label:"purchase-order",value:"purchase-order"},{label:"sales-invoice",value:"sales-invoice"},{label:"journal",value:"journal"},{label:"purchase-bill",value:"purchase-bill"},{label:"payment",value:"payment"}]);_export("StoreJournal",StoreJournal=new Model("StoreJournal",["journalID"],{dateCreated:new DefaultFactory((()=>new DateTime)),dateUpdated:new DefaultFactory((()=>new DateTime)),journalType:"order",posted:false,status:"",total:0,balance:0},{name:"store_journals",keys:[{name:"journalID",type:"number",generated:"identity"}],properties:[{name:"storeID",type:"number"},{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]},{name:"journalType",type:"string",default:["journalType",'"order"']},{name:"description",type:"string",default:["description",'""']},{name:"posted",type:"boolean",default:["posted","false"]},{name:"status",type:"string",default:["status",'""']},{name:"sellerID",type:"number"},{name:"buyerID",type:"number"},{name:"total",type:"number",default:["total","0"]},{name:"balance",type:"number",default:["balance","0"]},{name:"referenceID",type:"number"},{name:"folderID",type:"number"}],relations:[{name:"store",fkMap:[{fk:"storeID",relatedKey:"storeID"}],relatedName:"Store"},{name:"seller",fkMap:[{fk:"sellerID",relatedKey:"contactID"}],relatedName:"Contact"},{name:"buyer",fkMap:[{fk:"buyerID",relatedKey:"contactID"}],relatedName:"Contact"},{name:"reference",fkMap:[{fk:"referenceID",relatedKey:"journalID"}],relatedName:"StoreJournal"},{name:"references",isCollection:true,isInverse:true,relatedName:"StoreJournal"},{name:"folder",fkMap:[{fk:"folderID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"entries",isCollection:true,isInverse:true,relatedName:"StoreJournalEntry"},{name:"lineItems",isCollection:true,isInverse:true,relatedName:"StoreJournalLineItem"}]}));modelEntitySchemas["StoreJournal"]=StoreJournal;_export("StoreJournalEntry",StoreJournalEntry=new Model("StoreJournalEntry",["entryID"],{credit:0,debit:0},{name:"store_journal_entries",keys:[{name:"entryID",type:"number",generated:"identity"}],properties:[{name:"journalID",type:"number"},{name:"ledgerID",type:"number"},{name:"credit",type:"number",default:["credit","0"]},{name:"debit",type:"number",default:["debit","0"]},{name:"balance",type:"number",default:["balance","0"]},{name:"description",type:"string",default:["description",'""']},{name:"lineItemID",type:"number"}],relations:[{name:"journal",fkMap:[{fk:"journalID",relatedKey:"journalID"}],relatedName:"StoreJournal"},{name:"ledger",fkMap:[{fk:"ledgerID",relatedKey:"ledgerID"}],relatedName:"StoreLedger"},{name:"lineItem",fkMap:[{fk:"lineItemID",relatedKey:"lineItemID"}],relatedName:"StoreJournalLineItem"}]}));modelEntitySchemas["StoreJournalEntry"]=StoreJournalEntry;_export("StoreJournalLineItemItemTypeArray",StoreJournalLineItemItemTypeArray=[{label:"commission",value:"commission"},{label:"fee",value:"fee"},{label:"tax",value:"tax"},{label:"variant",value:"variant"},{label:"size",value:"size"}]);_export("StoreJournalLineItem",StoreJournalLineItem=new Model("StoreJournalLineItem",["lineItemID"],{amount:0,total:0,quantity:0,inclusive:false,hide:false},{name:"store_journal_line_items",keys:[{name:"lineItemID",type:"number",generated:"identity"}],properties:[{name:"journalID",type:"number"},{name:"itemID",type:"number"},{name:"itemPriceID",type:"number"},{name:"amount",type:"number",default:["amount","0"]},{name:"total",type:"number",default:["total","0"]},{name:"quantity",type:"number",default:["quantity","0"]},{name:"inclusive",type:"boolean",default:["inclusive","false"]},{name:"itemType",type:"string",default:["itemType",'"commission"']},{name:"hide",type:"boolean",default:["hide","false"]},{name:"vendorID",type:"number"},{name:"sourceID",type:"number"},{name:"taxFolderID",type:"number"}],relations:[{name:"journal",fkMap:[{fk:"journalID",relatedKey:"journalID"}],relatedName:"StoreJournal"},{name:"item",fkMap:[{fk:"itemID",relatedKey:"storeItemID"}],relatedName:"StoreItem"},{name:"itemPrice",fkMap:[{fk:"itemPriceID",relatedKey:"priceID"}],relatedName:"StoreItemPrice"},{name:"vendor",fkMap:[{fk:"vendorID",relatedKey:"contactID"}],relatedName:"Contact"},{name:"source",fkMap:[{fk:"sourceID",relatedKey:"lineItemID"}],relatedName:"StoreJournalLineItem"},{name:"relatedItems",isCollection:true,isInverse:true,relatedName:"StoreJournalLineItem"},{name:"taxFolder",fkMap:[{fk:"taxFolderID",relatedKey:"itemFolderID"}],relatedName:"StoreItemFolder"},{name:"entries",isCollection:true,isInverse:true,relatedName:"StoreJournalEntry"}]}));modelEntitySchemas["StoreJournalLineItem"]=StoreJournalLineItem;_export("StoreItemTag",StoreItemTag=new Model("StoreItemTag",["storeItemID","tagID"],{sortOrder:0},{name:"store_item_tags",keys:[{name:"storeItemID",type:"number"},{name:"tagID",type:"number"}],properties:[{name:"sortOrder",type:"number",default:["sortOrder","0"]},{name:"tagValue",type:"string",default:["tagValue",'""']}],relations:[{name:"storeItem",fkMap:[{fk:"storeItemID",relatedKey:"storeItemID"}],relatedName:"StoreItem"},{name:"tag",fkMap:[{fk:"tagID",relatedKey:"tagID"}],relatedName:"Tag"}]}));modelEntitySchemas["StoreItemTag"]=StoreItemTag;_export("UserStatusArray",UserStatusArray=[{label:"active",value:"active"},{label:"blocked",value:"blocked"},{label:"locked",value:"locked"},{label:"change-password",value:"change-password"},{label:"external",value:"external"}]);_export("User",User=new Model("User",["userID"],{userName:"",displayName:"",status:"active",isExternal:false,multiFactor:false,dateUpdated:new DefaultFactory((()=>new DateTime)),storage:0,maxStorage:0},{name:"users",keys:[{name:"userID",type:"number",generated:"identity"}],properties:[{name:"userName",type:"string",default:["userName",'""']},{name:"displayName",type:"string",default:["displayName",'""']},{name:"passwordHash",type:"string",default:["passwordHash",'""']},{name:"passwordSalt",type:"string",default:["passwordSalt",'""']},{name:"status",type:"string",default:["status",'"active"']},{name:"isExternal",type:"boolean",default:["isExternal","false"]},{name:"multiFactor",type:"boolean",default:["multiFactor","false"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]},{name:"storage",type:"number",default:["storage","0"]},{name:"maxStorage",type:"number",default:["maxStorage","0"]}],relations:[{name:"createdFiles",isCollection:true,isInverse:true,relatedName:"AppFile"},{name:"sentEmails",isCollection:true,isInverse:true,relatedName:"Email"},{name:"accessTokens",isCollection:true,isInverse:true,relatedName:"AccessToken"},{name:"versions",isCollection:true,isInverse:true,relatedName:"AppFileVersion"},{name:"sessions",isCollection:true,isInverse:true,relatedName:"LoginSession"},{name:"fileAccessList",isCollection:true,isInverse:true,relatedName:"AppFileAccess"},{name:"contacts",isCollection:true,isInverse:true,relatedName:"Contact"},{name:"domainUsers",isCollection:true,isInverse:true,relatedName:"DomainUser"},{name:"stores",isCollection:true,isInverse:true,relatedName:"StoreUser"},{name:"pins",isCollection:true,isInverse:true,relatedName:"UserPin"},{name:"userPushSubscriptions",isCollection:true,isInverse:true,relatedName:"UserPushSubscription"},{name:"roles",isCollection:true,isInverse:true,relatedName:"UserRole"},{name:"userMailboxes",isCollection:true,isInverse:true,relatedName:"UserMailbox"},{name:"authFactors",isCollection:true,isInverse:true,relatedName:"UserAuthFactor"},{name:"publishedWebSiteVersions",isCollection:true,isInverse:true,relatedName:"WebSiteFolderVersion"}]}));modelEntitySchemas["User"]=User;_export("UserPin",UserPin=new Model("UserPin",["pinID"],{},{name:"user_pins",keys:[{name:"pinID",type:"number",generated:"identity"}],properties:[{name:"userID",type:"number"},{name:"appFileID",type:"number"},{name:"mailboxID",type:"number"}],relations:[{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"},{name:"file",fkMap:[{fk:"appFileID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"mailbox",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"}],relatedName:"Mailbox"}]}));modelEntitySchemas["UserPin"]=UserPin;_export("UserPushSubscription",UserPushSubscription=new Model("UserPushSubscription",["subscriptionID"],{notify:false},{name:"user_push_subscriptions",keys:[{name:"subscriptionID",type:"number",generated:"identity"}],properties:[{name:"userID",type:"number"},{name:"mailboxID",type:"number",default:["mailboxID","0"]},{name:"emailAddressID",type:"number",default:["emailAddressID","0"]},{name:"notify",type:"boolean",default:["notify","false"]}],relations:[{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"}]}));modelEntitySchemas["UserPushSubscription"]=UserPushSubscription;_export("UserRole",UserRole=new Model("UserRole",["userID","roleName"],{},{name:"user_roles",keys:[{name:"userID",type:"number"},{name:"roleName",type:"string"}],properties:[],relations:[{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"},{name:"role",fkMap:[{fk:"roleName",relatedKey:"roleName"}],relatedName:"AppRole"}]}));modelEntitySchemas["UserRole"]=UserRole;_export("UserMailbox",UserMailbox=new Model("UserMailbox",["userID","mailboxID"],{},{name:"user_mailboxes",keys:[{name:"userID",type:"number"},{name:"mailboxID",type:"number"}],properties:[],relations:[{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"},{name:"mailbox",fkMap:[{fk:"mailboxID",relatedKey:"mailboxID"}],relatedName:"Mailbox"}]}));modelEntitySchemas["UserMailbox"]=UserMailbox;_export("UserAuthFactorMethodArray",UserAuthFactorMethodArray=[{label:"totp",value:"totp"},{label:"hotp",value:"hotp"},{label:"fido2",value:"fido2"},{label:"one-time",value:"one-time"},{label:"otp",value:"otp"}]);_export("UserAuthFactor",UserAuthFactor=new Model("UserAuthFactor",["authFactorID"],{method:"totp",verified:false,dateUpdated:new DefaultFactory((()=>new DateTime))},{name:"user_auth_factor",keys:[{name:"authFactorID",type:"number",generated:"identity"}],properties:[{name:"userID",type:"number"},{name:"method",type:"string",default:["method",'"totp"']},{name:"secret",type:"string",default:["secret",'""']},{name:"hint",type:"string",default:["hint",'""']},{name:"verified",type:"boolean",default:["verified","false"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]}],relations:[{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"}]}));modelEntitySchemas["UserAuthFactor"]=UserAuthFactor;_export("WebSiteFolder",WebSiteFolder=new Model("WebSiteFolder",["folderID"],{isStatic:false,isTemplate:false,isModified:false},{name:"web_site_folders",keys:[{name:"folderID",type:"number"}],properties:[{name:"currentVersionID",type:"number"},{name:"isStatic",type:"boolean",default:["isStatic","false"]},{name:"isTemplate",type:"boolean",default:["isTemplate","false"]},{name:"isModified",type:"boolean",default:["isModified","false"]}],relations:[{name:"folder",fkMap:[{fk:"folderID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"currentVersion",fkMap:[{fk:"currentVersionID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"activities",isCollection:true,isInverse:true,relatedName:"ServerActivity"},{name:"hosts",isCollection:true,isInverse:true,relatedName:"WebSiteFolderHost"},{name:"versions",isCollection:true,isInverse:true,relatedName:"WebSiteFolderVersion"},{name:"channels",isCollection:true,isInverse:true,relatedName:"WebSiteChannel"},{name:"websiteStores",isCollection:true,isInverse:true,relatedName:"WebSiteStore"}]}));modelEntitySchemas["WebSiteFolder"]=WebSiteFolder;_export("WebSiteFolderHost",WebSiteFolderHost=new Model("WebSiteFolderHost",["host"],{},{name:"web_site_folder_host",keys:[{name:"host",type:"string"}],properties:[{name:"folderID",type:"number"}],relations:[{name:"folder",fkMap:[{fk:"folderID",relatedKey:"folderID"}],relatedName:"WebSiteFolder"}]}));modelEntitySchemas["WebSiteFolderHost"]=WebSiteFolderHost;_export("WebSiteFolderVersion",WebSiteFolderVersion=new Model("WebSiteFolderVersion",["folderID","snapshotFolderID"],{dateCreated:new DefaultFactory((()=>new DateTime)),name:""},{name:"web_site_folder_version",keys:[{name:"folderID",type:"number"},{name:"snapshotFolderID",type:"number"}],properties:[{name:"dateCreated",type:"DateTime",default:["dateCreated","new DefaultFactory(() => new DateTime())"]},{name:"name",type:"string",default:["name",'""']},{name:"description",type:"string",default:["description",'""']},{name:"authorID",type:"number"}],relations:[{name:"websiteFolder",fkMap:[{fk:"folderID",relatedKey:"folderID"}],relatedName:"WebSiteFolder"},{name:"snapshotFolder",fkMap:[{fk:"snapshotFolderID",relatedKey:"appFileID"}],relatedName:"AppFile"},{name:"author",fkMap:[{fk:"authorID",relatedKey:"userID"}],relatedName:"User"}]}));modelEntitySchemas["WebSiteFolderVersion"]=WebSiteFolderVersion;_export("WebSiteChannel",WebSiteChannel=new Model("WebSiteChannel",["folderID","channelID"],{},{name:"web_site_channels",keys:[{name:"folderID",type:"number"},{name:"channelID",type:"number"}],properties:[],relations:[{name:"website",fkMap:[{fk:"folderID",relatedKey:"folderID"}],relatedName:"WebSiteFolder"},{name:"channel",fkMap:[{fk:"channelID",relatedKey:"mailboxID"}],relatedName:"Mailbox"}]}));modelEntitySchemas["WebSiteChannel"]=WebSiteChannel;_export("WebSiteStore",WebSiteStore=new Model("WebSiteStore",["folderID","storeID"],{},{name:"web_site_stores",keys:[{name:"folderID",type:"number"},{name:"storeID",type:"number"}],properties:[],relations:[{name:"website",fkMap:[{fk:"folderID",relatedKey:"folderID"}],relatedName:"WebSiteFolder"},{name:"store",fkMap:[{fk:"storeID",relatedKey:"storeID"}],relatedName:"Store"}]}));modelEntitySchemas["WebSiteStore"]=WebSiteStore;_export("LoginSession",LoginSession=new Model("LoginSession",["sessionID"],{invalid:false,dateUpdated:new DefaultFactory((()=>new DateTime))},{name:"login_sessions",keys:[{name:"sessionID",type:"number",generated:"identity"}],properties:[{name:"userID",type:"number"},{name:"start",type:"DateTime",default:["start","new DefaultFactory(() => new Date())"]},{name:"expiry",type:"DateTime",default:["expiry","new DefaultFactory(() => new Date())"]},{name:"invalid",type:"boolean",default:["invalid","false"]},{name:"dateUpdated",type:"DateTime",default:["dateUpdated","new DefaultFactory(() => new DateTime())"]},{name:"status",type:"string",default:["status",'""']},{name:"deviceToken",type:"string",default:["deviceToken",'""']},{name:"deviceTokenType",type:"string",default:["deviceTokenType",'""']}],relations:[{name:"user",fkMap:[{fk:"userID",relatedKey:"userID"}],relatedName:"User"},{name:"versions",isCollection:true,isInverse:true,relatedName:"AppFileVersion"}]}));modelEntitySchemas["LoginSession"]=LoginSession;_export("TextDocument",TextDocument=new Model("TextDocument",["textDocumentID"],{searchable:""},{name:"text_documents",keys:[{name:"textDocumentID",type:"number"}],properties:[{name:"searchable",type:"string",default:["searchable",'""']}],relations:[{name:"fileContent",isCollection:false,isInverse:true,relatedName:"FileContent"}]}));modelEntitySchemas["TextDocument"]=TextDocument;_export("Tag",Tag=new Model("Tag",["tagID"],{name:"",isSystemTag:false},{name:"tags",keys:[{name:"tagID",type:"number",generated:"identity"}],properties:[{name:"name",type:"string",default:["name",'""']},{name:"lowerCaseName",type:"string",generated:"computed"},{name:"path",type:"string",default:["path",'""']},{name:"isSystemTag",type:"boolean",default:["isSystemTag","false"]},{name:"contentTypes",type:"string",default:["contentTypes",'""']},{name:"parentID",type:"number"}],relations:[{name:"parent",fkMap:[{fk:"parentID",relatedKey:"tagID"}],relatedName:"Tag"},{name:"children",isCollection:true,isInverse:true,relatedName:"Tag"},{name:"fileTags",isCollection:true,isInverse:true,relatedName:"AppFileTag"},{name:"emailTags",isCollection:true,isInverse:true,relatedName:"EmailTag"},{name:"mailboxContactTags",isCollection:true,isInverse:true,relatedName:"MailboxContactTag"},{name:"storeItemTags",isCollection:true,isInverse:true,relatedName:"StoreItemTag"}]}));modelEntitySchemas["Tag"]=Tag;fixRelatedSchemas=schema=>{for(const key in schema){if(Object.prototype.hasOwnProperty.call(schema,key)){const element=schema[key];if(!element.name){continue}const{relations}=element.schema;if(!relations){continue}for(const iterator of relations){iterator.relatedModel=schema[iterator.relatedName]}}}};fixRelatedSchemas(modelEntitySchemas)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/model/model");System.register([],(function(_export,_context){"use strict";var SocialMailApp,_a,socialMail;_export("default",void 0);return{setters:[],execute:function(){socialMail=(_a=window.socialMail)!==null&&_a!==void 0?_a:{path:"/",name:"Social Mail"};_export("default",SocialMailApp=class SocialMailApp{});SocialMailApp.config=socialMail}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/SocialMailApp");System.register(["tslib","@web-atoms/core/dist/di/DISingleton","@web-atoms/core/dist/di/Inject","./EntityService","../model/model","../common/SocialMailApp","@web-atoms/core/dist/App","@web-atoms/core/dist/core/sleep"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,DISingleton,Inject,EntityService,LoginSession,SocialMailApp,App,sleep,LoginService;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){LoginSession=_modelModel.LoginSession},function(_commonSocialMailApp){SocialMailApp=_commonSocialMailApp.default},function(_webAtomsCoreDistApp){App=_webAtomsCoreDistApp.App},function(_webAtomsCoreDistCoreSleep){sleep=_webAtomsCoreDistCoreSleep.default}],execute:function(){LoginService=class LoginService{getUser(){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){(_a=this.user)!==null&&_a!==void 0?_a:this.user=(_b=yield this.entityService.query(LoginSession,"currentUser").firstOrDefault())===null||_b===void 0?void 0:_b.user;SocialMailApp.user=this.user;return this.user}))}login(session){return __awaiter(this,void 0,void 0,(function*(){yield this.entityService.save(session);if(session.invalid){return session.status}location.reload()}))}updateRegistration(s){return __awaiter(this,void 0,void 0,(function*(){throw new Error("Method not implemented.")}))}logout(){return __awaiter(this,void 0,void 0,(function*(){const session=yield this.entityService.query(LoginSession,"currentUser").firstOrDefault();session.invalid=true;const cloner=this.entityService.cloner(session);yield this.entityService.save(cloner.copy);yield sleep(1e3);location.reload()}))}};__decorate([Inject,__metadata("design:type",EntityService)],LoginService.prototype,"entityService",void 0);__decorate([Inject,__metadata("design:type",App)],LoginService.prototype,"app",void 0);LoginService=__decorate([DISingleton()],LoginService);_export("default",LoginService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/services/LoginService");System.register([],(function(_export,_context){"use strict";function InjectProperty(target,key){Object.defineProperty(target,key,{get:function(){const plist=Reflect.getMetadata("design:type",target,key);const result=this.app.resolve(plist);Object.defineProperty(this,key,{get:()=>result});return result},configurable:true})}_export("default",InjectProperty);return{setters:[],execute:function(){}}}));AmdLoader.instance.setup("@web-atoms/core/dist/core/InjectProperty");System.register(["@web-atoms/web-controls/dist/mobile-app/MobileApp"],(function(_export,_context){"use strict";var ContentPage,AdminHome;_export("default",void 0);return{setters:[function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage}],execute:function(){_export("default",AdminHome=class AdminHome extends ContentPage{})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/admin/pages/home/AdminHome");System.register([],(function(_export,_context){"use strict";var ColorItem,Colors;function toFixedString(t){return("0"+t.toString(16)).slice(-2)}_export({ColorItem:void 0,default:void 0});return{setters:[],execute:function(){_export("ColorItem",ColorItem=class ColorItem{constructor(colorCodeOrRed,namedColorOrGreen,blue,alpha){if(typeof colorCodeOrRed==="string"){this.colorCode=colorCodeOrRed;if(typeof namedColorOrGreen==="string"){this.namedColor=namedColorOrGreen}const r=ColorItem.parseRgb(this.colorCode);this.red=r.red;this.green=r.green;this.blue=r.blue;this.alpha=r.alpha}else{this.red=colorCodeOrRed;if(typeof namedColorOrGreen==="number"){this.green=namedColorOrGreen}this.blue=blue;this.alpha=alpha;this.colorCode=ColorItem.rgb(this.red,this.green,this.blue,this.alpha)}}toString(){return this.colorCode}withAlphaPercent(a){return new ColorItem(this.red,this.green,this.blue,a)}static parseRgb(rgba){if(/^\#/.test(rgba)){rgba=rgba.substr(1);if(rgba.length===3){rgba=rgba.split("").map((x=>x+x)).join("")}const red=Number.parseInt(rgba[0]+rgba[1],16);const green=Number.parseInt(rgba[2]+rgba[3],16);const blue=Number.parseInt(rgba[4]+rgba[5],16);if(rgba.length>6){const alpha=Number.parseInt(rgba[6]+rgba[7],16);return{red,green,blue,alpha}}return{red,green,blue}}if(/^rgba/i.test(rgba)){rgba=rgba.substr(5);rgba=rgba.substr(0,rgba.length-1);const a=rgba.split(",").map(((x,i)=>i===3?Number.parseFloat(x):Number.parseInt(x,10)));return{red:a[0],green:a[1],blue:a[2],alpha:a[3]}}if(/^rgb/i.test(rgba)){rgba=rgba.substr(4);rgba=rgba.substr(0,rgba.length-1);const a=rgba.split(",").map((x=>Number.parseInt(x,10)));return{red:a[0],green:a[1],blue:a[2]}}throw new Error("Unknown color format "+rgba)}static rgb(r,g,b,a){if(a!==undefined){return`rgba(${r},${g},${b},${a})`}return"#"+toFixedString(r)+toFixedString(g)+toFixedString(b)}});_export("default",Colors=class Colors{static rgba(red,green,blue,alpha){return new ColorItem(red,green,blue,alpha)}static parse(color){if(!color){return null}color=color.toLowerCase();for(const key in Colors){if(Colors.hasOwnProperty(key)){const element=Colors[key];if(element instanceof ColorItem){const ci=element;if(ci.namedColor===color){return ci}}}}if(/^(\#|rgb\(|rgba\()/i.test(color)){return new ColorItem(color)}throw new Error("Invalid color format "+color)}});Colors.black=new ColorItem("#000000","black");Colors.silver=new ColorItem("#c0c0c0","silver");Colors.gray=new ColorItem("#808080","gray");Colors.white=new ColorItem("#ffffff","white");Colors.maroon=new ColorItem("#800000","maroon");Colors.red=new ColorItem("#ff0000","red");Colors.purple=new ColorItem("#800080","purple");Colors.fuchsia=new ColorItem("#ff00ff","fuchsia");Colors.green=new ColorItem("#008000","green");Colors.lime=new ColorItem("#00ff00","lime");Colors.olive=new ColorItem("#808000","olive");Colors.yellow=new ColorItem("#ffff00","yellow");Colors.navy=new ColorItem("#000080","navy");Colors.blue=new ColorItem("#0000ff","blue");Colors.teal=new ColorItem("#008080","teal");Colors.aqua=new ColorItem("#00ffff","aqua");Colors.orange=new ColorItem("#ffa500","orange");Colors.aliceBlue=new ColorItem("#f0f8ff","aliceblue");Colors.antiqueWhite=new ColorItem("#faebd7","antiquewhite");Colors.aquaMarine=new ColorItem("#7fffd4","aquamarine");Colors.azure=new ColorItem("#f0ffff","azure");Colors.beige=new ColorItem("#f5f5dc","beige");Colors.bisque=new ColorItem("#ffe4c4","bisque");Colors.blanchedAlmond=new ColorItem("#ffebcd","blanchedalmond");Colors.blueViolet=new ColorItem("#8a2be2","blueviolet");Colors.brown=new ColorItem("#a52a2a","brown");Colors.burlyWood=new ColorItem("#deb887","burlywood");Colors.cadetBlue=new ColorItem("#5f9ea0","cadetblue");Colors.chartReuse=new ColorItem("#7fff00","chartreuse");Colors.chocolate=new ColorItem("#d2691e","chocolate");Colors.coral=new ColorItem("#ff7f50","coral");Colors.cornFlowerBlue=new ColorItem("#6495ed","cornflowerblue");Colors.cornSilk=new ColorItem("#fff8dc","cornsilk");Colors.crimson=new ColorItem("#dc143c","crimson");Colors.cyan=new ColorItem("#00ffff","cyan");Colors.darkBlue=new ColorItem("#00008b","darkblue");Colors.darkCyan=new ColorItem("#008b8b","darkcyan");Colors.darkGoldenRod=new ColorItem("#b8860b","darkgoldenrod");Colors.darkGray=new ColorItem("#a9a9a9","darkgray");Colors.darkGreen=new ColorItem("#006400","darkgreen");Colors.darkGrey=new ColorItem("#a9a9a9","darkgrey");Colors.darkKhaki=new ColorItem("#bdb76b","darkkhaki");Colors.darkMagenta=new ColorItem("#8b008b","darkmagenta");Colors.darkOliveGreen=new ColorItem("#556b2f","darkolivegreen");Colors.darkOrange=new ColorItem("#ff8c00","darkorange");Colors.darkOrchid=new ColorItem("#9932cc","darkorchid");Colors.darkRed=new ColorItem("#8b0000","darkred");Colors.darkSalmon=new ColorItem("#e9967a","darksalmon");Colors.darkSeaGreen=new ColorItem("#8fbc8f","darkseagreen");Colors.darkSlateBlue=new ColorItem("#483d8b","darkslateblue");Colors.darkSlateGray=new ColorItem("#2f4f4f","darkslategray");Colors.darkSlateGrey=new ColorItem("#2f4f4f","darkslategrey");Colors.darkTurquoise=new ColorItem("#00ced1","darkturquoise");Colors.darkViolet=new ColorItem("#9400d3","darkviolet");Colors.deepPink=new ColorItem("#ff1493","deeppink");Colors.deepSkyBlue=new ColorItem("#00bfff","deepskyblue");Colors.dimGray=new ColorItem("#696969","dimgray");Colors.dimGrey=new ColorItem("#696969","dimgrey");Colors.dodgerBlue=new ColorItem("#1e90ff","dodgerblue");Colors.fireBrick=new ColorItem("#b22222","firebrick");Colors.floralWhite=new ColorItem("#fffaf0","floralwhite");Colors.forestGreen=new ColorItem("#228b22","forestgreen");Colors.gainsboro=new ColorItem("#dcdcdc","gainsboro");Colors.ghostWhite=new ColorItem("#f8f8ff","ghostwhite");Colors.gold=new ColorItem("#ffd700","gold");Colors.goldenRod=new ColorItem("#daa520","goldenrod");Colors.greenYellow=new ColorItem("#adff2f","greenyellow");Colors.grey=new ColorItem("#808080","grey");Colors.honeyDew=new ColorItem("#f0fff0","honeydew");Colors.hotPink=new ColorItem("#ff69b4","hotpink");Colors.indianRed=new ColorItem("#cd5c5c","indianred");Colors.indigo=new ColorItem("#4b0082","indigo");Colors.ivory=new ColorItem("#fffff0","ivory");Colors.khaki=new ColorItem("#f0e68c","khaki");Colors.lavender=new ColorItem("#e6e6fa","lavender");Colors.lavenderBlush=new ColorItem("#fff0f5","lavenderblush");Colors.lawnGreen=new ColorItem("#7cfc00","lawngreen");Colors.lemonChiffon=new ColorItem("#fffacd","lemonchiffon");Colors.lightBlue=new ColorItem("#add8e6","lightblue");Colors.lightCoral=new ColorItem("#f08080","lightcoral");Colors.lightCyan=new ColorItem("#e0ffff","lightcyan");Colors.lightGoldenRodYellow=new ColorItem("#fafad2","lightgoldenrodyellow");Colors.lightGray=new ColorItem("#d3d3d3","lightgray");Colors.lightGreen=new ColorItem("#90ee90","lightgreen");Colors.lightGrey=new ColorItem("#d3d3d3","lightgrey");Colors.lightPink=new ColorItem("#ffb6c1","lightpink");Colors.lightSalmon=new ColorItem("#ffa07a","lightsalmon");Colors.lightSeaGreen=new ColorItem("#20b2aa","lightseagreen");Colors.lightSkyBlue=new ColorItem("#87cefa","lightskyblue");Colors.lightSlateGray=new ColorItem("#778899","lightslategray");Colors.lightSlateGrey=new ColorItem("#778899","lightslategrey");Colors.lightSteelBlue=new ColorItem("#b0c4de","lightsteelblue");Colors.lightYellow=new ColorItem("#ffffe0","lightyellow");Colors.limeGreen=new ColorItem("#32cd32","limegreen");Colors.linen=new ColorItem("#faf0e6","linen");Colors.magenta=new ColorItem("#ff00ff","magenta");Colors.mediumAquaMarine=new ColorItem("#66cdaa","mediumaquamarine");Colors.mediumBlue=new ColorItem("#0000cd","mediumblue");Colors.mediumOrchid=new ColorItem("#ba55d3","mediumorchid");Colors.mediumPurple=new ColorItem("#9370db","mediumpurple");Colors.mediumSeaGreen=new ColorItem("#3cb371","mediumseagreen");Colors.mediumSlateBlue=new ColorItem("#7b68ee","mediumslateblue");Colors.mediumSpringGreen=new ColorItem("#00fa9a","mediumspringgreen");Colors.mediumTurquoise=new ColorItem("#48d1cc","mediumturquoise");Colors.mediumVioletred=new ColorItem("#c71585","mediumvioletred");Colors.midNightBlue=new ColorItem("#191970","midnightblue");Colors.mintCream=new ColorItem("#f5fffa","mintcream");Colors.mistyRose=new ColorItem("#ffe4e1","mistyrose");Colors.moccasin=new ColorItem("#ffe4b5","moccasin");Colors.navajoWhite=new ColorItem("#ffdead","navajowhite");Colors.oldLace=new ColorItem("#fdf5e6","oldlace");Colors.oliveDrab=new ColorItem("#6b8e23","olivedrab");Colors.orangeRed=new ColorItem("#ff4500","orangered");Colors.orchid=new ColorItem("#da70d6","orchid");Colors.paleGoldenRod=new ColorItem("#eee8aa","palegoldenrod");Colors.paleGreen=new ColorItem("#98fb98","palegreen");Colors.paleTurquoise=new ColorItem("#afeeee","paleturquoise");Colors.paleVioletRed=new ColorItem("#db7093","palevioletred");Colors.papayaWhip=new ColorItem("#ffefd5","papayawhip");Colors.peachPuff=new ColorItem("#ffdab9","peachpuff");Colors.peru=new ColorItem("#cd853f","peru");Colors.pink=new ColorItem("#ffc0cb","pink");Colors.plum=new ColorItem("#dda0dd","plum");Colors.powderBlue=new ColorItem("#b0e0e6","powderblue");Colors.rosyBrown=new ColorItem("#bc8f8f","rosybrown");Colors.royalBlue=new ColorItem("#4169e1","royalblue");Colors.saddleBrown=new ColorItem("#8b4513","saddlebrown");Colors.salmon=new ColorItem("#fa8072","salmon");Colors.sandyBrown=new ColorItem("#f4a460","sandybrown");Colors.seaGreen=new ColorItem("#2e8b57","seagreen");Colors.seaShell=new ColorItem("#fff5ee","seashell");Colors.sienna=new ColorItem("#a0522d","sienna");Colors.skyBlue=new ColorItem("#87ceeb","skyblue");Colors.slateBlue=new ColorItem("#6a5acd","slateblue");Colors.slateGray=new ColorItem("#708090","slategray");Colors.slateGrey=new ColorItem("#708090","slategrey");Colors.snow=new ColorItem("#fffafa","snow");Colors.springGreen=new ColorItem("#00ff7f","springgreen");Colors.steelBlue=new ColorItem("#4682b4","steelblue");Colors.tan=new ColorItem("#d2b48c","tan");Colors.thistle=new ColorItem("#d8bfd8","thistle");Colors.tomato=new ColorItem("#ff6347","tomato");Colors.turquoise=new ColorItem("#40e0d0","turquoise");Colors.violet=new ColorItem("#ee82ee","violet");Colors.wheat=new ColorItem("#f5deb3","wheat");Colors.whiteSmoke=new ColorItem("#f5f5f5","whitesmoke");Colors.yellowGreen=new ColorItem("#9acd32","yellowgreen");Colors.rebeccaPurple=new ColorItem("#663399","rebeccapurple");Colors.transparent=new ColorItem("#00000000","transparent")}}}));AmdLoader.instance.setup("@web-atoms/core/dist/core/Colors");System.register(["./AtomBinder","./AtomWatcher"],(function(_export,_context){"use strict";var AtomBinder,AtomWatcher;function WatchProperty(target,key,descriptor){const{get}=descriptor;const isSetup=Symbol.for(`isSetup${key}`);return{get:function(){const watcher=new AtomWatcher(this,get,(()=>{AtomBinder.refreshValue(this,key)}),this);watcher.init(false);this.registerDisposable(watcher);this[isSetup]=watcher;Object.defineProperty(this,key,descriptor);return get.apply(this)},configurable:true}}_export("default",WatchProperty);return{setters:[function(_AtomBinder){AtomBinder=_AtomBinder.AtomBinder},function(_AtomWatcher){AtomWatcher=_AtomWatcher.AtomWatcher}],execute:function(){}}}));AmdLoader.instance.setup("@web-atoms/core/dist/core/WatchProperty");System.register(["@web-atoms/core/dist/style/styled"],(function(_export,_context){"use strict";var styled;return{setters:[function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default}],execute:function(){styled.css`
|
|
699
699
|
position: absolute;
|
|
700
700
|
border-radius: 5px;
|
|
701
701
|
padding: 5px;
|
|
@@ -2617,7 +2617,7 @@ html, body {
|
|
|
2617
2617
|
}
|
|
2618
2618
|
}
|
|
2619
2619
|
}
|
|
2620
|
-
`.installLocal();_export("default",AtomHtmlEditor=class AtomHtmlEditor extends AtomControl{get htmlContent(){var _a,_b;try{return(_b=(_a=this.editor)===null||_a===void 0?void 0:_a.innerHTML)!==null&&_b!==void 0?_b:this.initialContent}catch(ex){console.warn(ex)}}set htmlContent(v){if(this.editor){this.editor.innerHTML=v}else{this.initialContent=v}AtomBinder.refreshValue(this,"htmlContent")}insertImage(s,e){return showImageDialog(s,e)}executeCommand(cmd,showUI,value){const r=this.editorDocument.execCommand(cmd,showUI,value);setTimeout((()=>this.version++),1);return r}queryCommandState(cmd,...a){return this.editorDocument.queryCommandState(cmd)}getStyle(name,v){try{const node=this.editorWindow.getSelection().getRangeAt(0);const e=node.startContainer.parentElement;return this.editorWindow.getComputedStyle(e)[name]}catch(ex){return null}}onPropertyChanged(name){super.onPropertyChanged(name);if(name==="tags"){this.setupTags()}}setupTags(){const doc=this.editorDocument;if(!doc){return}if(Array.isArray(this.tags)){for(const{name,style}of this.tags){if(style){const styleElement=doc.createElement("style");styleElement.textContent=`*[data-command=${name}] {\n ${style.toStyleSheet()}\n }`;doc.head.appendChild(styleElement)}}}}preCreate(){this.version=1;this.files=[];this.runAfterInit((()=>{this.setup()}));this.element.classList.add(css);this.element.classList.add("html-editor")}onPasteEvent(e){if(!e.clipboardData.types.find((x=>x==="text/html"))){return}const d=e.clipboardData.getData("text/plain");if(d){const s=window.getSelection();const r=s.getRangeAt(0);let last;const tags=[];for(const iterator of d.split("\n")){const text=iterator.trim();if(!text){continue}last=document.createElement("p");last.innerText=iterator;tags.push(last)}while(tags.length){r.insertNode(tags.pop())}r.setStartAfter(last)}e.preventDefault()}onInputEvent(e){console.log(e)}setup(){var _a;const frame=this.element.getElementsByTagName("iframe")[0];const doc=frame.contentWindow.document;doc.open();const baseUrl=`${location.protocol}//${location.host}`;doc.writeln(`<base href="${baseUrl}"></base><div id="editor"><p> </p></div>`);doc.close();const style=doc.createElement("style");style.textContent=`body {\n font-family: arial,sans-serif\n }\n #editor {\n min-height: 500px;\n }\n *[data-prompt] {\n background: yellow\n }\n `;doc.head.appendChild(style);doc.body.addEventListener("click",(e=>preventLinkClick(e,this.element,doc)));this.editor=doc.getElementById("editor");this.editor.contentEditable="true";this.editor.innerHTML=(_a=this.initialContent)!==null&&_a!==void 0?_a:"";doc.execCommand("styleWithCSS");doc.execCommand("insertBrOnReturn");const updateVersion=()=>setTimeout((()=>{this.version++;AtomBinder.refreshValue(this,"htmlContent");this.element.dispatchEvent(new CustomEvent("documentUpdated",{detail:this.editor}));this.documentUpdated(this.editor)}),1);this.editor.addEventListener("click",updateVersion);this.editor.addEventListener("keydown",updateVersion);this.editor.addEventListener("keypress",updateVersion);this.editor.addEventListener("input",updateVersion);this.editorWindow=frame.contentWindow;this.editorDocument=doc;updateVersion();this.documentCreated(this.editor);this.element.dispatchEvent(new CustomEvent("documentCreated",{detail:this.editor}));this.registerDisposable({dispose:()=>{this.editor.removeEventListener("click",updateVersion);this.editor.removeEventListener("keydown",updateVersion);this.editor.removeEventListener("keypress",updateVersion);this.editor.removeEventListener("input",updateVersion)}});this.bindEvent(this.element,"editorClick",(ce=>{var _a,_b;const{detail:{data,target}}=ce;if(data.prompt){const element=target;const result=prompt("Enter "+((_a=data.promptTitle)!==null&&_a!==void 0?_a:data.prompt),data.promptDefault);if(result){const replace=((_b=data.replace)!==null&&_b!==void 0?_b:"textContent").split(",").map((x=>x.trim()));for(const iterator of replace){const template=element.getAttribute("data-"+iterator+"-template")||element.getAttribute("data-template");if(template){element[iterator]=template.replace(data.prompt,result)}else{element[iterator]=result}}}return}if(this.tags){for(const{name,handler}of this.tags){if(name===data.command||name===data.clickEvent){handler(ce)}}}}));this.setupTags()}documentCreated(e){}documentUpdated(e){}render(node,e,creator){this.render=super.render;if(!node.children||node.children.length===0){node.children[0]=XNode.create(Toolbar,null,XNode.create(Bold,null),XNode.create(Italic,null),XNode.create(Underline,null),XNode.create(StrikeThrough,null),XNode.create(Align,null),XNode.create(Separator,null),XNode.create(Headings,null),XNode.create(ChangeColor,null),XNode.create(HorizontalRule,null),XNode.create(Separator,null),XNode.create(ChangeFont,null),XNode.create(ChangeFontSize,null),XNode.create(Separator,null),XNode.create(NumberedList,null),XNode.create(UnorderedList,null),XNode.create(IndentLess,null),XNode.create(IndentMore,null),XNode.create(Separator,null),XNode.create(AddImage,null),XNode.create(AttachFile,null),XNode.create(Separator,null),XNode.create(AddLink,null),XNode.create(Unlink,null),XNode.create(RemoveFormat,null),XNode.create(Separator,null),XNode.create(Source,null))}super.render(XNode.create("div",Object.assign({},node.attributes),...node.children,XNode.create(AtomRepeater,{class:"files","event-item-delete":ce=>this.files.remove(ce.detail),items:Bind.oneWay((()=>this.files)),itemRenderer:file=>XNode.create("div",{class:"file"},XNode.create("i",{class:"ri-attachment-2"}),XNode.create("label",{text:file.name}),XNode.create("i",{"data-click-event":"item-delete",class:"ri-close-circle-fill"}))}),XNode.create("iframe",{class:"editor-frame"})))}});__decorate([BindableProperty,__metadata("design:type",String)],AtomHtmlEditor.prototype,"content",void 0);__decorate([BindableProperty,__metadata("design:type",Array)],AtomHtmlEditor.prototype,"header",void 0);__decorate([BindableProperty,__metadata("design:type",Number)],AtomHtmlEditor.prototype,"version",void 0);__decorate([BindableProperty,__metadata("design:type",Array)],AtomHtmlEditor.prototype,"files",void 0);__decorate([BindableProperty,__metadata("design:type",Array)],AtomHtmlEditor.prototype,"tags",void 0)}}}));AmdLoader.instance.setup("@web-atoms/web-controls/dist/html-editor/AtomHtmlEditor");System.register(["tslib","@web-atoms/core/dist/core/types","@web-atoms/core/dist/services/FetchBuilder"],(function(_export,_context){"use strict";var __awaiter,UMD,FetchBuilder,MonacoService,monacoPath,codeModelChangedDisposable;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsCoreDistCoreTypes){UMD=_webAtomsCoreDistCoreTypes.UMD},function(_webAtomsCoreDistServicesFetchBuilder){FetchBuilder=_webAtomsCoreDistServicesFetchBuilder.default}],execute:function(){monacoPath=UMD.resolvePath("@social-mail/social-mail-client/content/modules/monaco/monaco.html");codeModelChangedDisposable=Symbol("codeModelChangedDisposable");_export("default",MonacoService=class MonacoService{static createEditor(ctrl,iframe){return __awaiter(this,void 0,void 0,(function*(){const ms=new MonacoService;const srcdoc=yield FetchBuilder.get(monacoPath).responseAsText();const{monaco,editor}=yield new Promise(((resolve,reject)=>{iframe.parentEditor={resolve,reject,codeEditor:ctrl};iframe.srcdoc=srcdoc}));ctrl.registerDisposable({dispose:()=>{ms.monaco=null;ms.editor=null}});ms.monaco=monaco;ms.editor=editor;ms.languages=monaco.languages.getLanguages();return ms}))}clearModels(){for(const model of this.monaco.editor.getModels()){model.dispose()}}getLanguages(){return this.languages.map((x=>{var _a,_b,_c;return{label:(_b=(_a=x.aliases)===null||_a===void 0?void 0:_a[0])!==null&&_b!==void 0?_b:x.id,value:x.id,ext:(_c=x.extensions)===null||_c===void 0?void 0:_c[0],extensions:x.extensions}}))}createModel({code,url="http://a/file.html"}){const{monaco}=this;const uri=monaco.Uri.parse(url);const model=monaco.editor.getModel(uri);if(model){model.setValue(code);return model}return monaco.editor.createModel(code,void 0,uri)}setCodeModel(ctrl,code,url,clear=false){var _a;const{monaco,editor}=this;const uri=monaco.Uri.parse(url);let model=monaco.editor.getModel(uri);if(model){model.setValue(code);editor.setModel(model);return}(_a=ctrl[codeModelChangedDisposable])===null||_a===void 0?void 0:_a.dispose();if(clear){this.clearModels()}model=monaco.editor.createModel(code,void 0,uri);editor.setModel(model);let id=0;ctrl[codeModelChangedDisposable]=ctrl.registerDisposable(model.onDidChangeContent((()=>{if(id){clearTimeout(id)}id=setTimeout((()=>{var _a;const newCode=model.getValue();const ce=new CustomEvent("codeChanged",{bubbles:true,detail:{code:newCode,originalCode:code}});ctrl.element.dispatchEvent(ce);(_a=ctrl===null||ctrl===void 0?void 0:ctrl.onCodeChanged)===null||_a===void 0?void 0:_a.call(ctrl,newCode,code)}),500)})));return model}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/code-editor/MonacoService");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/Bind","../common/controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action","./MonacoService","@web-atoms/web-controls/dist/basic/Select"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,XNode,PopupWindowPage,isMobileView,Bind,SaveIconTextButton,Action,MonacoService,Select,CodeSnippetPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage;isMobileView=_webAtomsWebControlsDistMobileAppMobileApp.isMobileView},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_commonControlsButtonsIconButton){SaveIconTextButton=_commonControlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_MonacoService){MonacoService=_MonacoService.default},function(_webAtomsWebControlsDistBasicSelect){Select=_webAtomsWebControlsDistBasicSelect.default}],execute:function(){_export("default",CodeSnippetPage=class CodeSnippetPage extends PopupWindowPage{constructor(){super(...arguments);this.langaugeId="html";this.code=""}init(){var _a,_b,_c,_d;return __awaiter(this,void 0,void 0,(function*(){this.code=(_b=(_a=this.parameters)===null||_a===void 0?void 0:_a.code)!==null&&_b!==void 0?_b:"";this.langaugeId=(_d=(_c=this.parameters)===null||_c===void 0?void 0:_c.languageId)!==null&&_d!==void 0?_d:"html";this.title="Insert Code Snippet";if(!isMobileView){this.element.style.minWidth="70vw";this.element.style.minHeight="60vh"}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"},XNode.create(SaveIconTextButton,{"data-click-event":"save-code"}));const iframe=this.element.querySelector("iframe");this.monacoService=yield MonacoService.createEditor(this,iframe);this.headerRenderer=()=>XNode.create("div",{"data-layout":"header-row"},XNode.create(Select,{items:this.monacoService.getLanguages(),value:Bind.twoWaysImmediate((()=>this.langaugeId)),"event-input":()=>setTimeout((()=>this.createModel()))}));this.createModel()}))}save(){return __awaiter(this,void 0,void 0,(function*(){this.code=this.textModel.getValue();const colorizedText=yield this.monacoService.monaco.editor.colorize(this.code,this.textModel.getLanguageId(),{});const colorized=yield this.colorize(colorizedText);return colorized}))}codeChanged({code}){this.code=code}createModel(){var _a,_b,_c;const lang=(_a=this.monacoService.languages.find((x=>x.id===this.langaugeId)))!==null&&_a!==void 0?_a:this.monacoService.languages[0];this.textModel=this.monacoService.setCodeModel(this,this.code,`http://a/file${(_c=(_b=lang.extensions)===null||_b===void 0?void 0:_b[0])!==null&&_c!==void 0?_c:".txt"}`)}colorize(code){return __awaiter(this,void 0,void 0,(function*(){}))}});__decorate([Action({onEvent:"save-code",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],CodeSnippetPage.prototype,"save",null);__decorate([Action({onEvent:"code-changed"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",void 0)],CodeSnippetPage.prototype,"codeChanged",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/code-editor/CodeSnippetPage");System.register(["tslib","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/PageNavigator","@web-atoms/web-controls/dist/basic/PopupButton","@web-atoms/web-controls/dist/basic/UploadEvent","../../../../code-editor/CodeSnippetPage"],(function(_export,_context){"use strict";var __awaiter,Bind,XNode,PageNavigator,PopupButton,MenuItem,UploadEvent,CodeSnippetPage;function Insert({alignment="above"}){return XNode.create(PopupButton,{class:"command","data-layout":"toolbar-button",icon:"fas fa-plus",title:"Insert",alignment},XNode.create(MenuItem,{icon:"ri-list-unordered",label:"List","event-click":Bind.event((editor=>editor.executeCommand("insertUnorderedList")))}),XNode.create(MenuItem,{icon:"ri-list-ordered",label:"Numbered List","event-click":Bind.event((editor=>editor.executeCommand("insertOrderedList")))}),XNode.create(MenuItem,{icon:"ri-list-ordered",label:"Insert Code","event-click":Bind.event((editor=>__awaiter(this,void 0,void 0,(function*(){const code=yield PageNavigator.pushPageForResult(CodeSnippetPage);editor.executeCommand("insertHTML",void 0,`<pre style="margin: 5px; border: solid 1px lightgray; padding: 10px; border-radius: 10px;" contentEditable="true" spellcheck="false">${code}</pre><br/><p contentEditable="true"></p>`)}))))}),XNode.create(MenuItem,Object.assign({},UploadEvent.AttachUploadAction({accept:"image/*",multiple:true,extra:{insert:true}}),{"data-click-event":"send-photos",icon:"fas fa-image",label:"Add Photos"})),XNode.create(MenuItem,Object.assign({},UploadEvent.AttachUploadAction({accept:"image/*",capture:"user",extra:{insert:true}}),{"data-click-event":"take-photo",icon:"fa-duotone fa-camera-retro",label:"Take Photo"})),XNode.create(MenuItem,Object.assign({},UploadEvent.AttachUploadAction({accept:"video/*",multiple:false,extra:{insert:true}}),{"data-click-event":"send-video",icon:"fas fa-file-video",label:"Add Video"})),XNode.create(MenuItem,Object.assign({},UploadEvent.AttachUploadAction({accept:"video/*",capture:"user",extra:{insert:true}}),{"data-click-event":"record-video",icon:"fa-duotone fa-video-plus",label:"Record Video"})))}_export("default",Insert);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_webAtomsWebControlsDistBasicPopupButton){PopupButton=_webAtomsWebControlsDistBasicPopupButton.default;MenuItem=_webAtomsWebControlsDistBasicPopupButton.MenuItem},function(_webAtomsWebControlsDistBasicUploadEvent){UploadEvent=_webAtomsWebControlsDistBasicUploadEvent.default},function(_codeEditorCodeSnippetPage){CodeSnippetPage=_codeEditorCodeSnippetPage.default}],execute:function(){}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/page/mails/mini-compose/Insert");System.register(["@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/PopupButton","@web-atoms/web-controls/dist/basic/UploadEvent"],(function(_export,_context){"use strict";var XNode,PopupButton,MenuItem,UploadEvent;function Attach({alignment="above"}){return XNode.create(PopupButton,{class:"command","data-layout":"toolbar-button",icon:"fa-light fa-file-plus",title:"Attach",alignment},XNode.create(MenuItem,Object.assign({},UploadEvent.AttachUploadAction({accept:"image/*",multiple:true,extra:{}}),{icon:"fas fa-image",label:"Attach Photos"})),XNode.create(MenuItem,Object.assign({},UploadEvent.AttachUploadAction({accept:"image/*",capture:"user",extra:{}}),{icon:"fa-duotone fa-camera-retro",label:"Take Photo"})),XNode.create(MenuItem,Object.assign({},UploadEvent.AttachUploadAction({accept:"video/*",multiple:false,extra:{}}),{icon:"fas fa-file-video",label:"Attach Video"})),XNode.create(MenuItem,Object.assign({},UploadEvent.AttachUploadAction({accept:"video/*",capture:"user",extra:{}}),{icon:"fa-duotone fa-video-plus",label:"Record Video"})),XNode.create(MenuItem,Object.assign({},UploadEvent.AttachUploadAction({accept:"*/*",extra:{}}),{icon:"fa-duotone fa-file",label:"Attach Documents","style-min-width":"150px"})))}_export("default",Attach);return{setters:[function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicPopupButton){PopupButton=_webAtomsWebControlsDistBasicPopupButton.default;MenuItem=_webAtomsWebControlsDistBasicPopupButton.MenuItem},function(_webAtomsWebControlsDistBasicUploadEvent){UploadEvent=_webAtomsWebControlsDistBasicUploadEvent.default}],execute:function(){}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/page/mails/mini-compose/Attach");System.register(["@web-atoms/core/dist/core/XNode"],(function(_export,_context){"use strict";var XNode;function EmailLabel({recipient=void 0}){return XNode.create("a",{href:`mailto:${recipient.emailAddress.emailAddress}`},recipient.name&&XNode.create("span",null,'"',recipient.name,'"'),"<",recipient.emailAddress.emailAddress,">")}_export("default",EmailLabel);return{setters:[function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default}],execute:function(){}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/controls/email-recipients/EmailLabel");System.register(["@web-atoms/core/dist/core/XNode"],(function(_export,_context){"use strict";var XNode;function Loader(){return XNode.create("div",{"data-position":"absolute-fill","data-layout":"center-all"},XNode.create("i",{class:"fas fa-spinner fa-spin"}))}_export("default",Loader);return{setters:[function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default}],execute:function(){}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/controls/Loader");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/style/styled","@web-atoms/core/dist/web/controls/AtomControl","../../../../model/model","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/view-model/Action","../../../../common/controls/audio/AudioRecorder","../service/ConversationService","@web-atoms/web-controls/dist/basic/AtomRepeater","@web-atoms/core/dist/core/InjectProperty","../../../../common/events/CommonEvents","../service/MailService","@web-atoms/date-time/dist/DateTime","@web-atoms/core/dist/core/sleep","../../../../common/controls/html/InlineHtmlEditorWithToolbar","@web-atoms/web-controls/dist/html-editor/AtomHtmlEditor","@web-atoms/web-controls/dist/html-editor/commands/Align","@web-atoms/web-controls/dist/html-editor/commands/Bold","@web-atoms/web-controls/dist/html-editor/commands/Italic","@web-atoms/web-controls/dist/html-editor/commands/StrikeThrough","@web-atoms/web-controls/dist/html-editor/commands/Underline","@web-atoms/web-controls/dist/html-editor/commands/AddLink","@web-atoms/web-controls/dist/html-editor/commands/Unlink","@web-atoms/web-controls/dist/html-editor/commands/Separator","./Insert","@web-atoms/date-time/dist/TimeSpan","./Attach","@web-atoms/core/dist/core/types","@web-atoms/email-dom/dist/DomToString","../../../../common/controls/email-recipients/EmailLabel","../../../../common/controls/Loader","@web-atoms/core/dist/web/core/AtomUI"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,XNode,styled,AtomControl,AppFile,Email,Bind,Action,AudioRecorder,ConversationService,AtomRepeater,InjectProperty,CommonEvents,MailService,DateTime,sleep,MailHtmlEditor,Toolbar,Align,Bold,Italic,StrikeThrough,Underline,AddLink,Unlink,Separator,Insert,TimeSpan,Attach,CancelToken,DomToString,EmailLabel,Loader,descendentElementIterator,MiniComposeBox,css,defaultEmailBody;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default},function(_webAtomsCoreDistWebControlsAtomControl){AtomControl=_webAtomsCoreDistWebControlsAtomControl.AtomControl},function(_modelModel){AppFile=_modelModel.AppFile;Email=_modelModel.Email},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_commonControlsAudioAudioRecorder){AudioRecorder=_commonControlsAudioAudioRecorder.default},function(_serviceConversationService){ConversationService=_serviceConversationService.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_commonEventsCommonEvents){CommonEvents=_commonEventsCommonEvents.CommonEvents},function(_serviceMailService){MailService=_serviceMailService.default},function(_webAtomsDateTimeDistDateTime){DateTime=_webAtomsDateTimeDistDateTime.default},function(_webAtomsCoreDistCoreSleep){sleep=_webAtomsCoreDistCoreSleep.default},function(_commonControlsHtmlInlineHtmlEditorWithToolbar){MailHtmlEditor=_commonControlsHtmlInlineHtmlEditorWithToolbar.MailHtmlEditor},function(_webAtomsWebControlsDistHtmlEditorAtomHtmlEditor){Toolbar=_webAtomsWebControlsDistHtmlEditorAtomHtmlEditor.Toolbar},function(_webAtomsWebControlsDistHtmlEditorCommandsAlign){Align=_webAtomsWebControlsDistHtmlEditorCommandsAlign.default},function(_webAtomsWebControlsDistHtmlEditorCommandsBold){Bold=_webAtomsWebControlsDistHtmlEditorCommandsBold.default},function(_webAtomsWebControlsDistHtmlEditorCommandsItalic){Italic=_webAtomsWebControlsDistHtmlEditorCommandsItalic.default},function(_webAtomsWebControlsDistHtmlEditorCommandsStrikeThrough){StrikeThrough=_webAtomsWebControlsDistHtmlEditorCommandsStrikeThrough.default},function(_webAtomsWebControlsDistHtmlEditorCommandsUnderline){Underline=_webAtomsWebControlsDistHtmlEditorCommandsUnderline.default},function(_webAtomsWebControlsDistHtmlEditorCommandsAddLink){AddLink=_webAtomsWebControlsDistHtmlEditorCommandsAddLink.default},function(_webAtomsWebControlsDistHtmlEditorCommandsUnlink){Unlink=_webAtomsWebControlsDistHtmlEditorCommandsUnlink.default},function(_webAtomsWebControlsDistHtmlEditorCommandsSeparator){Separator=_webAtomsWebControlsDistHtmlEditorCommandsSeparator.default},function(_Insert){Insert=_Insert.default},function(_webAtomsDateTimeDistTimeSpan){TimeSpan=_webAtomsDateTimeDistTimeSpan.default},function(_Attach){Attach=_Attach.default},function(_webAtomsCoreDistCoreTypes){CancelToken=_webAtomsCoreDistCoreTypes.CancelToken},function(_webAtomsEmailDomDistDomToString){DomToString=_webAtomsEmailDomDistDomToString.default},function(_commonControlsEmailRecipientsEmailLabel){EmailLabel=_commonControlsEmailRecipientsEmailLabel.default},function(_commonControlsLoader){Loader=_commonControlsLoader.default},function(_webAtomsCoreDistWebCoreAtomUI){descendentElementIterator=_webAtomsCoreDistWebCoreAtomUI.descendentElementIterator}],execute:function(){css=styled.css`
|
|
2620
|
+
`.installLocal();_export("default",AtomHtmlEditor=class AtomHtmlEditor extends AtomControl{get htmlContent(){var _a,_b;try{return(_b=(_a=this.editor)===null||_a===void 0?void 0:_a.innerHTML)!==null&&_b!==void 0?_b:this.initialContent}catch(ex){console.warn(ex)}}set htmlContent(v){if(this.editor){this.editor.innerHTML=v}else{this.initialContent=v}AtomBinder.refreshValue(this,"htmlContent")}insertImage(s,e){return showImageDialog(s,e)}executeCommand(cmd,showUI,value){const r=this.editorDocument.execCommand(cmd,showUI,value);setTimeout((()=>this.version++),1);return r}queryCommandState(cmd,...a){return this.editorDocument.queryCommandState(cmd)}getStyle(name,v){try{const node=this.editorWindow.getSelection().getRangeAt(0);const e=node.startContainer.parentElement;return this.editorWindow.getComputedStyle(e)[name]}catch(ex){return null}}onPropertyChanged(name){super.onPropertyChanged(name);if(name==="tags"){this.setupTags()}}setupTags(){const doc=this.editorDocument;if(!doc){return}if(Array.isArray(this.tags)){for(const{name,style}of this.tags){if(style){const styleElement=doc.createElement("style");styleElement.textContent=`*[data-command=${name}] {\n ${style.toStyleSheet()}\n }`;doc.head.appendChild(styleElement)}}}}preCreate(){this.version=1;this.files=[];this.runAfterInit((()=>{this.setup()}));this.element.classList.add(css);this.element.classList.add("html-editor")}onPasteEvent(e){if(!e.clipboardData.types.find((x=>x==="text/html"))){return}const d=e.clipboardData.getData("text/plain");if(d){const s=window.getSelection();const r=s.getRangeAt(0);let last;const tags=[];for(const iterator of d.split("\n")){const text=iterator.trim();if(!text){continue}last=document.createElement("p");last.innerText=iterator;tags.push(last)}while(tags.length){r.insertNode(tags.pop())}r.setStartAfter(last)}e.preventDefault()}onInputEvent(e){console.log(e)}setup(){var _a;const frame=this.element.getElementsByTagName("iframe")[0];const doc=frame.contentWindow.document;doc.open();const baseUrl=`${location.protocol}//${location.host}`;doc.writeln(`<base href="${baseUrl}"></base><div id="editor"><p> </p></div>`);doc.close();const style=doc.createElement("style");style.textContent=`body {\n font-family: arial,sans-serif\n }\n #editor {\n min-height: 500px;\n }\n *[data-prompt] {\n background: yellow\n }\n `;doc.head.appendChild(style);doc.body.addEventListener("click",(e=>preventLinkClick(e,this.element,doc)));this.editor=doc.getElementById("editor");this.editor.contentEditable="true";this.editor.innerHTML=(_a=this.initialContent)!==null&&_a!==void 0?_a:"";doc.execCommand("styleWithCSS");doc.execCommand("insertBrOnReturn");const updateVersion=()=>setTimeout((()=>{this.version++;AtomBinder.refreshValue(this,"htmlContent");this.element.dispatchEvent(new CustomEvent("documentUpdated",{detail:this.editor}));this.documentUpdated(this.editor)}),1);this.editor.addEventListener("click",updateVersion);this.editor.addEventListener("keydown",updateVersion);this.editor.addEventListener("keypress",updateVersion);this.editor.addEventListener("input",updateVersion);this.editorWindow=frame.contentWindow;this.editorDocument=doc;updateVersion();this.documentCreated(this.editor);this.element.dispatchEvent(new CustomEvent("documentCreated",{detail:this.editor}));this.registerDisposable({dispose:()=>{this.editor.removeEventListener("click",updateVersion);this.editor.removeEventListener("keydown",updateVersion);this.editor.removeEventListener("keypress",updateVersion);this.editor.removeEventListener("input",updateVersion)}});this.bindEvent(this.element,"editorClick",(ce=>{var _a,_b;const{detail:{data,target}}=ce;if(data.prompt){const element=target;const result=prompt("Enter "+((_a=data.promptTitle)!==null&&_a!==void 0?_a:data.prompt),data.promptDefault);if(result){const replace=((_b=data.replace)!==null&&_b!==void 0?_b:"textContent").split(",").map((x=>x.trim()));for(const iterator of replace){const template=element.getAttribute("data-"+iterator+"-template")||element.getAttribute("data-template");if(template){element[iterator]=template.replace(data.prompt,result)}else{element[iterator]=result}}}return}if(this.tags){for(const{name,handler}of this.tags){if(name===data.command||name===data.clickEvent){handler(ce)}}}}));this.setupTags()}documentCreated(e){}documentUpdated(e){}render(node,e,creator){this.render=super.render;if(!node.children||node.children.length===0){node.children[0]=XNode.create(Toolbar,null,XNode.create(Bold,null),XNode.create(Italic,null),XNode.create(Underline,null),XNode.create(StrikeThrough,null),XNode.create(Align,null),XNode.create(Separator,null),XNode.create(Headings,null),XNode.create(ChangeColor,null),XNode.create(HorizontalRule,null),XNode.create(Separator,null),XNode.create(ChangeFont,null),XNode.create(ChangeFontSize,null),XNode.create(Separator,null),XNode.create(NumberedList,null),XNode.create(UnorderedList,null),XNode.create(IndentLess,null),XNode.create(IndentMore,null),XNode.create(Separator,null),XNode.create(AddImage,null),XNode.create(AttachFile,null),XNode.create(Separator,null),XNode.create(AddLink,null),XNode.create(Unlink,null),XNode.create(RemoveFormat,null),XNode.create(Separator,null),XNode.create(Source,null))}super.render(XNode.create("div",Object.assign({},node.attributes),...node.children,XNode.create(AtomRepeater,{class:"files","event-item-delete":ce=>this.files.remove(ce.detail),items:Bind.oneWay((()=>this.files)),itemRenderer:file=>XNode.create("div",{class:"file"},XNode.create("i",{class:"ri-attachment-2"}),XNode.create("label",{text:file.name}),XNode.create("i",{"data-click-event":"item-delete",class:"ri-close-circle-fill"}))}),XNode.create("iframe",{class:"editor-frame"})))}});__decorate([BindableProperty,__metadata("design:type",String)],AtomHtmlEditor.prototype,"content",void 0);__decorate([BindableProperty,__metadata("design:type",Array)],AtomHtmlEditor.prototype,"header",void 0);__decorate([BindableProperty,__metadata("design:type",Number)],AtomHtmlEditor.prototype,"version",void 0);__decorate([BindableProperty,__metadata("design:type",Array)],AtomHtmlEditor.prototype,"files",void 0);__decorate([BindableProperty,__metadata("design:type",Array)],AtomHtmlEditor.prototype,"tags",void 0)}}}));AmdLoader.instance.setup("@web-atoms/web-controls/dist/html-editor/AtomHtmlEditor");System.register(["tslib","@web-atoms/core/dist/core/types","@web-atoms/core/dist/services/FetchBuilder"],(function(_export,_context){"use strict";var __awaiter,UMD,FetchBuilder,MonacoService,monacoPath,codeModelChangedDisposable;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsCoreDistCoreTypes){UMD=_webAtomsCoreDistCoreTypes.UMD},function(_webAtomsCoreDistServicesFetchBuilder){FetchBuilder=_webAtomsCoreDistServicesFetchBuilder.default}],execute:function(){monacoPath=UMD.resolvePath("@social-mail/social-mail-client/content/modules/monaco/monaco.html");codeModelChangedDisposable=Symbol("codeModelChangedDisposable");_export("default",MonacoService=class MonacoService{static createEditor(ctrl,iframe){return __awaiter(this,void 0,void 0,(function*(){const ms=new MonacoService;const srcdoc=yield FetchBuilder.get(monacoPath).responseAsText();const{monaco,editor}=yield new Promise(((resolve,reject)=>{iframe.parentEditor={resolve,reject,codeEditor:ctrl};iframe.srcdoc=srcdoc}));ctrl.registerDisposable({dispose:()=>{ms.monaco=null;ms.editor=null}});ms.monaco=monaco;ms.editor=editor;ms.languages=monaco.languages.getLanguages();return ms}))}clearModels(){for(const model of this.monaco.editor.getModels()){model.dispose()}}getLanguages(){return this.languages.map((x=>{var _a,_b,_c;return{label:(_b=(_a=x.aliases)===null||_a===void 0?void 0:_a[0])!==null&&_b!==void 0?_b:x.id,value:x.id,ext:(_c=x.extensions)===null||_c===void 0?void 0:_c[0],extensions:x.extensions}}))}createModel({code,url="http://a/file.html"}){const{monaco}=this;const uri=monaco.Uri.parse(url);const model=monaco.editor.getModel(uri);if(model){model.setValue(code);return model}return monaco.editor.createModel(code,void 0,uri)}setCodeModel(ctrl,code,url,clear=false){var _a;const{monaco,editor}=this;const uri=monaco.Uri.parse(url);let model=monaco.editor.getModel(uri);if(model){model.setValue(code);editor.setModel(model);return}(_a=ctrl[codeModelChangedDisposable])===null||_a===void 0?void 0:_a.dispose();if(clear){this.clearModels()}model=monaco.editor.createModel(code,void 0,uri);editor.setModel(model);let id=0;ctrl[codeModelChangedDisposable]=ctrl.registerDisposable(model.onDidChangeContent((()=>{if(id){clearTimeout(id)}id=setTimeout((()=>{var _a;const newCode=model.getValue();const ce=new CustomEvent("codeChanged",{bubbles:true,detail:{code:newCode,originalCode:code}});ctrl.element.dispatchEvent(ce);(_a=ctrl===null||ctrl===void 0?void 0:ctrl.onCodeChanged)===null||_a===void 0?void 0:_a.call(ctrl,newCode,code)}),500)})));return model}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/code-editor/MonacoService");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/Bind","../common/controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action","./MonacoService","@web-atoms/web-controls/dist/basic/Select"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,XNode,PopupWindowPage,isMobileView,Bind,SaveIconTextButton,Action,MonacoService,Select,CodeSnippetPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage;isMobileView=_webAtomsWebControlsDistMobileAppMobileApp.isMobileView},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_commonControlsButtonsIconButton){SaveIconTextButton=_commonControlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_MonacoService){MonacoService=_MonacoService.default},function(_webAtomsWebControlsDistBasicSelect){Select=_webAtomsWebControlsDistBasicSelect.default}],execute:function(){_export("default",CodeSnippetPage=class CodeSnippetPage extends PopupWindowPage{constructor(){super(...arguments);this.langaugeId="html";this.code=""}init(){var _a,_b,_c,_d;return __awaiter(this,void 0,void 0,(function*(){this.code=(_b=(_a=this.parameters)===null||_a===void 0?void 0:_a.code)!==null&&_b!==void 0?_b:"";this.langaugeId=(_d=(_c=this.parameters)===null||_c===void 0?void 0:_c.languageId)!==null&&_d!==void 0?_d:"html";this.title="Insert Code Snippet";if(!isMobileView){this.element.style.minWidth="70vw";this.element.style.minHeight="60vh"}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"},XNode.create(SaveIconTextButton,{"data-click-event":"save-code"}));const iframe=this.element.querySelector("iframe");this.monacoService=yield MonacoService.createEditor(this,iframe);this.headerRenderer=()=>XNode.create("div",{"data-layout":"header-row"},XNode.create(Select,{items:this.monacoService.getLanguages(),value:Bind.twoWaysImmediate((()=>this.langaugeId)),"event-input":()=>setTimeout((()=>this.createModel()))}));this.createModel()}))}save(){return __awaiter(this,void 0,void 0,(function*(){this.code=this.textModel.getValue();const colorizedText=yield this.monacoService.monaco.editor.colorize(this.code,this.textModel.getLanguageId(),{});const colorized=yield this.colorize(colorizedText);return colorized}))}codeChanged({code}){this.code=code}createModel(){var _a,_b,_c;const lang=(_a=this.monacoService.languages.find((x=>x.id===this.langaugeId)))!==null&&_a!==void 0?_a:this.monacoService.languages[0];this.textModel=this.monacoService.setCodeModel(this,this.code,`http://a/file${(_c=(_b=lang.extensions)===null||_b===void 0?void 0:_b[0])!==null&&_c!==void 0?_c:".txt"}`)}colorize(code){return __awaiter(this,void 0,void 0,(function*(){}))}});__decorate([Action({onEvent:"save-code",close:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],CodeSnippetPage.prototype,"save",null);__decorate([Action({onEvent:"code-changed"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",void 0)],CodeSnippetPage.prototype,"codeChanged",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/code-editor/CodeSnippetPage");System.register(["tslib","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/PageNavigator","@web-atoms/web-controls/dist/basic/PopupButton","@web-atoms/web-controls/dist/basic/UploadEvent","../../../../code-editor/CodeSnippetPage"],(function(_export,_context){"use strict";var __awaiter,Bind,XNode,PageNavigator,PopupButton,MenuItem,UploadEvent,CodeSnippetPage;function Insert({alignment="above"}){return XNode.create(PopupButton,{class:"command","data-layout":"toolbar-button",icon:"fas fa-plus",title:"Insert",alignment},XNode.create(MenuItem,{icon:"ri-list-unordered",label:"List","event-click":Bind.event((editor=>editor.executeCommand("insertUnorderedList")))}),XNode.create(MenuItem,{icon:"ri-list-ordered",label:"Numbered List","event-click":Bind.event((editor=>editor.executeCommand("insertOrderedList")))}),XNode.create(MenuItem,{icon:"ri-list-ordered",label:"Insert Code","event-click":Bind.event((editor=>__awaiter(this,void 0,void 0,(function*(){const code=yield PageNavigator.pushPageForResult(CodeSnippetPage);editor.executeCommand("insertHTML",void 0,`<pre style="margin: 5px; border: solid 1px lightgray; padding: 10px; border-radius: 10px;" contentEditable="true" spellcheck="false">${code}</pre><br/><p contentEditable="true"></p>`)}))))}),XNode.create(MenuItem,Object.assign({},UploadEvent.AttachUploadAction({accept:"image/*",multiple:true,extra:{insert:true}}),{"data-click-event":"send-photos",icon:"fas fa-image",label:"Add Photos"})),XNode.create(MenuItem,Object.assign({},UploadEvent.AttachUploadAction({accept:"image/*",capture:"user",extra:{insert:true}}),{"data-click-event":"take-photo",icon:"fa-duotone fa-camera-retro",label:"Take Photo"})),XNode.create(MenuItem,Object.assign({},UploadEvent.AttachUploadAction({accept:"video/*",multiple:false,extra:{insert:true}}),{"data-click-event":"send-video",icon:"fas fa-file-video",label:"Add Video"})),XNode.create(MenuItem,Object.assign({},UploadEvent.AttachUploadAction({accept:"video/*",capture:"user",extra:{insert:true}}),{"data-click-event":"record-video",icon:"fa-duotone fa-video-plus",label:"Record Video"})))}_export("default",Insert);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_webAtomsWebControlsDistBasicPopupButton){PopupButton=_webAtomsWebControlsDistBasicPopupButton.default;MenuItem=_webAtomsWebControlsDistBasicPopupButton.MenuItem},function(_webAtomsWebControlsDistBasicUploadEvent){UploadEvent=_webAtomsWebControlsDistBasicUploadEvent.default},function(_codeEditorCodeSnippetPage){CodeSnippetPage=_codeEditorCodeSnippetPage.default}],execute:function(){}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/page/mails/mini-compose/Insert");System.register(["@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/PopupButton","@web-atoms/web-controls/dist/basic/UploadEvent"],(function(_export,_context){"use strict";var XNode,PopupButton,MenuItem,UploadEvent;function Attach({alignment="above"}){return XNode.create(PopupButton,{class:"command","data-layout":"toolbar-button",icon:"fa-light fa-file-plus",title:"Attach",alignment},XNode.create(MenuItem,Object.assign({},UploadEvent.AttachUploadAction({accept:"image/*",multiple:true,extra:{}}),{icon:"fas fa-image",label:"Attach Photos"})),XNode.create(MenuItem,Object.assign({},UploadEvent.AttachUploadAction({accept:"image/*",capture:"user",extra:{}}),{icon:"fa-duotone fa-camera-retro",label:"Take Photo"})),XNode.create(MenuItem,Object.assign({},UploadEvent.AttachUploadAction({accept:"video/*",multiple:false,extra:{}}),{icon:"fas fa-file-video",label:"Attach Video"})),XNode.create(MenuItem,Object.assign({},UploadEvent.AttachUploadAction({accept:"video/*",capture:"user",extra:{}}),{icon:"fa-duotone fa-video-plus",label:"Record Video"})),XNode.create(MenuItem,Object.assign({},UploadEvent.AttachUploadAction({accept:"*/*",extra:{}}),{icon:"fa-duotone fa-file",label:"Attach Documents","style-min-width":"150px"})))}_export("default",Attach);return{setters:[function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicPopupButton){PopupButton=_webAtomsWebControlsDistBasicPopupButton.default;MenuItem=_webAtomsWebControlsDistBasicPopupButton.MenuItem},function(_webAtomsWebControlsDistBasicUploadEvent){UploadEvent=_webAtomsWebControlsDistBasicUploadEvent.default}],execute:function(){}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/page/mails/mini-compose/Attach");System.register(["@web-atoms/core/dist/core/XNode"],(function(_export,_context){"use strict";var XNode;function EmailLabel({recipient=void 0}){return XNode.create("a",{href:`mailto:${recipient.emailAddress.emailAddress}`},recipient.name&&XNode.create("span",null,'"',recipient.name,'"'),"<",recipient.emailAddress.emailAddress,">")}_export("default",EmailLabel);return{setters:[function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default}],execute:function(){}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/controls/email-recipients/EmailLabel");System.register(["@web-atoms/core/dist/core/XNode"],(function(_export,_context){"use strict";var XNode;function Loader(){return XNode.create("div",{"data-position":"absolute-fill","data-layout":"center-all"},XNode.create("i",{class:"fas fa-spinner fa-spin"}))}_export("default",Loader);return{setters:[function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default}],execute:function(){}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/controls/Loader");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/style/styled","@web-atoms/core/dist/web/controls/AtomControl","../../../../model/model","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/view-model/Action","../../../../common/controls/audio/AudioRecorder","../service/ConversationService","@web-atoms/web-controls/dist/basic/AtomRepeater","@web-atoms/core/dist/core/InjectProperty","../../../../common/events/CommonEvents","../service/MailService","@web-atoms/date-time/dist/DateTime","@web-atoms/core/dist/core/sleep","../../../../common/controls/html/InlineHtmlEditorWithToolbar","@web-atoms/web-controls/dist/html-editor/AtomHtmlEditor","@web-atoms/web-controls/dist/html-editor/commands/Align","@web-atoms/web-controls/dist/html-editor/commands/Bold","@web-atoms/web-controls/dist/html-editor/commands/Italic","@web-atoms/web-controls/dist/html-editor/commands/StrikeThrough","@web-atoms/web-controls/dist/html-editor/commands/Underline","@web-atoms/web-controls/dist/html-editor/commands/AddLink","@web-atoms/web-controls/dist/html-editor/commands/Unlink","@web-atoms/web-controls/dist/html-editor/commands/Separator","./Insert","@web-atoms/date-time/dist/TimeSpan","./Attach","@web-atoms/core/dist/core/types","@web-atoms/email-dom/dist/DomToString","../../../../common/controls/email-recipients/EmailLabel","../../../../common/controls/Loader","@web-atoms/core/dist/web/core/AtomUI","@web-atoms/web-controls/dist/basic/TitleEditor"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,XNode,styled,AtomControl,AppFile,Email,Bind,Action,AudioRecorder,ConversationService,AtomRepeater,InjectProperty,CommonEvents,MailService,DateTime,sleep,MailHtmlEditor,Toolbar,Align,Bold,Italic,StrikeThrough,Underline,AddLink,Unlink,Separator,Insert,TimeSpan,Attach,CancelToken,DomToString,EmailLabel,Loader,descendentElementIterator,TitleEditor,MiniComposeBox,css,defaultEmailBody;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default},function(_webAtomsCoreDistWebControlsAtomControl){AtomControl=_webAtomsCoreDistWebControlsAtomControl.AtomControl},function(_modelModel){AppFile=_modelModel.AppFile;Email=_modelModel.Email},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_commonControlsAudioAudioRecorder){AudioRecorder=_commonControlsAudioAudioRecorder.default},function(_serviceConversationService){ConversationService=_serviceConversationService.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_commonEventsCommonEvents){CommonEvents=_commonEventsCommonEvents.CommonEvents},function(_serviceMailService){MailService=_serviceMailService.default},function(_webAtomsDateTimeDistDateTime){DateTime=_webAtomsDateTimeDistDateTime.default},function(_webAtomsCoreDistCoreSleep){sleep=_webAtomsCoreDistCoreSleep.default},function(_commonControlsHtmlInlineHtmlEditorWithToolbar){MailHtmlEditor=_commonControlsHtmlInlineHtmlEditorWithToolbar.MailHtmlEditor},function(_webAtomsWebControlsDistHtmlEditorAtomHtmlEditor){Toolbar=_webAtomsWebControlsDistHtmlEditorAtomHtmlEditor.Toolbar},function(_webAtomsWebControlsDistHtmlEditorCommandsAlign){Align=_webAtomsWebControlsDistHtmlEditorCommandsAlign.default},function(_webAtomsWebControlsDistHtmlEditorCommandsBold){Bold=_webAtomsWebControlsDistHtmlEditorCommandsBold.default},function(_webAtomsWebControlsDistHtmlEditorCommandsItalic){Italic=_webAtomsWebControlsDistHtmlEditorCommandsItalic.default},function(_webAtomsWebControlsDistHtmlEditorCommandsStrikeThrough){StrikeThrough=_webAtomsWebControlsDistHtmlEditorCommandsStrikeThrough.default},function(_webAtomsWebControlsDistHtmlEditorCommandsUnderline){Underline=_webAtomsWebControlsDistHtmlEditorCommandsUnderline.default},function(_webAtomsWebControlsDistHtmlEditorCommandsAddLink){AddLink=_webAtomsWebControlsDistHtmlEditorCommandsAddLink.default},function(_webAtomsWebControlsDistHtmlEditorCommandsUnlink){Unlink=_webAtomsWebControlsDistHtmlEditorCommandsUnlink.default},function(_webAtomsWebControlsDistHtmlEditorCommandsSeparator){Separator=_webAtomsWebControlsDistHtmlEditorCommandsSeparator.default},function(_Insert){Insert=_Insert.default},function(_webAtomsDateTimeDistTimeSpan){TimeSpan=_webAtomsDateTimeDistTimeSpan.default},function(_Attach){Attach=_Attach.default},function(_webAtomsCoreDistCoreTypes){CancelToken=_webAtomsCoreDistCoreTypes.CancelToken},function(_webAtomsEmailDomDistDomToString){DomToString=_webAtomsEmailDomDistDomToString.default},function(_commonControlsEmailRecipientsEmailLabel){EmailLabel=_commonControlsEmailRecipientsEmailLabel.default},function(_commonControlsLoader){Loader=_commonControlsLoader.default},function(_webAtomsCoreDistWebCoreAtomUI){descendentElementIterator=_webAtomsCoreDistWebCoreAtomUI.descendentElementIterator},function(_webAtomsWebControlsDistBasicTitleEditor){TitleEditor=_webAtomsWebControlsDistBasicTitleEditor.default}],execute:function(){css=styled.css`
|
|
2621
2621
|
display: grid;
|
|
2622
2622
|
grid-template-columns: auto 1fr auto;
|
|
2623
2623
|
grid-template-rows: auto 1fr auto;
|
|
@@ -2659,7 +2659,7 @@ html, body {
|
|
|
2659
2659
|
border-color: transparent;
|
|
2660
2660
|
}
|
|
2661
2661
|
|
|
2662
|
-
&
|
|
2662
|
+
& .subject {
|
|
2663
2663
|
border-bottom: solid 1px lightgray;
|
|
2664
2664
|
place-self: stretch;
|
|
2665
2665
|
margin-left: 5px;
|
|
@@ -2669,8 +2669,12 @@ html, body {
|
|
|
2669
2669
|
outline: none;
|
|
2670
2670
|
border: none;
|
|
2671
2671
|
border-bottom: solid 1px lightgray;
|
|
2672
|
+
& input {
|
|
2673
|
+
border: none;
|
|
2674
|
+
outline: none;
|
|
2675
|
+
}
|
|
2672
2676
|
}
|
|
2673
|
-
`.installLocal();defaultEmailBody=`<section style="background-color: white; color: black;">\n<section contentEditable="true"> <br/></section>\n<footer data-social-mail-commands="emoji-bar"></footer>\n</section>`;_export("default",MiniComposeBox=class MiniComposeBox extends AtomControl{constructor(app,e){super(app,e);this.mailboxContact=null;this.draft=null;this.typedMessage="";this.active=false;this.savedSubject=void 0;this.savedBody=void 0;this.element.className=css;this.app.runAsync((()=>this.init()))}init(){var _a,_b,_c,_d,_e;var _f;return __awaiter(this,void 0,void 0,(function*(){this.renderer=XNode.create("div",null,XNode.create(Loader,null));yield sleep(100);(_a=this.draft)!==null&&_a!==void 0?_a:this.draft=(_b=yield this.conversationService.getDraft(this.mailboxContact))===null||_b===void 0?void 0:_b.email;if(this.draft){(_c=(_f=this.draft).attachments)!==null&&_c!==void 0?_c:_f.attachments=[]}this.typedMessage=((_d=this.draft)===null||_d===void 0?void 0:_d.htmlBody)?this.draft.htmlBody:defaultEmailBody;this.renderer=XNode.create("div",null,XNode.create(MailHtmlEditor,{toolbar:()=>XNode.create("div",null,XNode.create(Toolbar,null,XNode.create(Insert,null),XNode.create(Separator,null),XNode.create(Attach,null),XNode.create(Separator,null),XNode.create(Bold,null),XNode.create(Italic,null),XNode.create(Underline,null),XNode.create(StrikeThrough,null),XNode.create(Align,{alignment:"above"}),XNode.create(Separator,null),XNode.create(AddLink,null),XNode.create(Unlink,null)),XNode.create("input",{class:"subject",placeholder:"Subject ... ",value:Bind.sourceTwoWays(this,(x=>x.source.draft.subject))})),"data-element":"editor","data-html-editor":"email-editor",presenter:Bind.presenter((c=>this.editor=c)),content:this.typedMessage,"style-min-height":"50px",attachments:Bind.oneWay((()=>this.draft.attachments))}),XNode.create("i",{"data-element":"send",class:"fa-solid fa-microphone-lines mic","event-click":()=>this.sendAudioMessage(),"style-display":Bind.oneWay((()=>!this.typedMessage))}),XNode.create("i",{"data-element":"send",class:"fa-solid fa-angle-double-right send","style-display":Bind.oneWay((()=>!!this.typedMessage)),"data-click-event":"send-email"}),XNode.create(AtomRepeater,{"data-element":"files",items:Bind.oneWay((()=>{var _a;return(_a=this.draft)===null||_a===void 0?void 0:_a.attachments})),"style-display":Bind.oneWay((()=>this.draft&&this.draft.attachments&&this.draft.attachments.length>0),false),"data-layout":"flex-wrap-padding",itemRenderer:item=>XNode.create("div",{"data-layout":"icon-button"},XNode.create("label",{text:item.name}),XNode.create("i",{"data-click-event":"delete-attachment",class:"fas fa-times-circle","data-cursor":"pointer","data-color":"red"}))}));yield sleep(100);if(!this.draft.subject){(_e=this.editor.element.querySelector("input.subject"))===null||_e===void 0?void 0:_e.focus();return}const editor=this.editor.element.querySelector(`[data-element="editor"]`);for(const iterator of descendentElementIterator(editor)){if(iterator.isContentEditable){let start=iterator;let next;while((next=start.firstElementChild)&&next.tagName!=="BR"){start=next}start.focus();window.getSelection().setPosition(start.firstElementChild);return}}}))}filesAvailable({files,extra}){return __awaiter(this,void 0,void 0,(function*(){if(extra.stream){yield this.streamFiles({files,extra});return}const size=files.reduce(((pv,cv)=>pv+cv.file.size),0);if(size>20*1024*1024){if(!extra.stream){throw new Error(`Total size of attachments cannot be more than 20MB.`)}}if(extra.insert){this.ensureDraft();const firstChild=this.editor.editor.firstElementChild;for(const iterator of files){if(/^image\//.test(iterator.contentType)){const af=this.createAppFile(iterator);const img=firstChild.ownerDocument.createElement("img");img.src=iterator.url;img.setAttribute("data-content-id",af.contentID);this.draft.attachments.add(af);firstChild.appendChild(img);const newLine=document.createElement("div");newLine.appendChild(document.createElement("br"));firstChild.appendChild(newLine);continue}if(/^(video|audio)\//.test(iterator.contentType)){const af=this.createAppFile(iterator);const img=firstChild.ownerDocument.createElement("video");img.src=iterator.url;img.setAttribute("data-content-id",af.contentID);this.draft.attachments.add(af);firstChild.appendChild(img);const newLine=document.createElement("div");newLine.appendChild(document.createElement("br"));firstChild.appendChild(newLine);continue}}return}yield this.addFiles(...files)}))}streamFiles({files,extra}){return __awaiter(this,void 0,void 0,(function*(){}))}deleteAttachment(file){var _a;return __awaiter(this,void 0,void 0,(function*(){yield this.mailService.deleteAttachment(file);(_a=this.draft)===null||_a===void 0?void 0:_a.attachments.remove(file)}))}recreateDraft(){var _a,_b;var _c;return __awaiter(this,void 0,void 0,(function*(){this.draft=null;(_a=this.draft)!==null&&_a!==void 0?_a:this.draft=Email.create({subject:"",attachments:[]});(_b=(_c=this.draft).attachments)!==null&&_b!==void 0?_b:_c.attachments=[]}))}onChanged(){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){if(!((_a=this.editor)===null||_a===void 0?void 0:_a.htmlTextContent)){return}(_b=this.draft)!==null&&_b!==void 0?_b:this.draft=Email.create({attachments:[]});const{html,text}=this.editor.htmlTextContent;if(this.savedSubject===this.draft.subject&&this.savedBody===html){return}if(this.prevSave){yield this.prevSave}this.savedSubject=this.draft.subject;this.savedBody=html;this.draft.htmlBody=html;this.draft.textBody=text;yield this.save(false)}))}onEmailUnscheduled(mce){return __awaiter(this,void 0,void 0,(function*(){this.draft=mce.email}))}onForwardEmail(mce){var _a;return __awaiter(this,void 0,void 0,(function*(){if((_a=this.draft)===null||_a===void 0?void 0:_a.emailID){yield this.save(true);this.draft=null}this.ensureDraft();const{email}=mce;const{recipients}=email;const to=recipients===null||recipients===void 0?void 0:recipients.filter((x=>x.type==="to"));const cc=recipients===null||recipients===void 0?void 0:recipients.filter((x=>x.type==="cc"));this.draft.htmlBody=DomToString(XNode.create("section",{style:"background-color: white; color: black;"},XNode.create("section",{contentEditable:"true"}," ",XNode.create("br",null)),XNode.create("blockquote",{contentEditable:"false","data-type":"forwarded",style:"margin-inline-start: 20px; margin-inline-end: 0; border-left: solid 1px lightgray; padding-left: 10px;"},XNode.create("summary",null,XNode.create("div",null,"From: $",email.senderName," ",`<${email.senderEmail.emailAddress}>`),XNode.create("div",null,(to===null||to===void 0?void 0:to.length)&&XNode.create("div",null,XNode.create("label",{style:"margin-right:10px;"},"To:"),...to.map((x=>XNode.create(EmailLabel,{recipient:x})))),(cc===null||cc===void 0?void 0:cc.length)&&XNode.create("div",null,XNode.create("label",{style:"margin-right:10px;"},"CC:"),...cc.map((x=>XNode.create(EmailLabel,{recipient:x})))),XNode.create("div",null,XNode.create("label",{style:"margin-right:10px;"},"Subject:"),XNode.create("label",null,email.subject)),XNode.create("div",{"data-type":"html-body"},email.htmlBody)))),XNode.create("footer",{"data-social-mail-commands":"emoji-bar"})));this.editor.htmlContent=this.draft.htmlBody;const attachments=mce.email.attachments;if(attachments){for(const iterator of attachments){this.draft.attachments.add(AppFile.create(Object.assign(Object.assign({},iterator),{appFileID:void 0})))}}yield this.save(!!attachments)}))}onForwardEmailAsAttachment(mce){var _a;return __awaiter(this,void 0,void 0,(function*(){if((_a=this.draft)===null||_a===void 0?void 0:_a.emailID){yield this.save(true);this.draft=null}this.ensureDraft();const{email,signedFileLogID}=mce;const{mimeFileID}=email;this.draft.htmlBody=DomToString(XNode.create("section",{style:"background-color: white; color: black;"},XNode.create("section",{contentEditable:"true"}," ",XNode.create("br",null))));this.editor.htmlContent=this.draft.htmlBody;this.draft.attachments.add(AppFile.create({name:"forwarded.eml",sourceEmailLogID:mimeFileID!==null&&mimeFileID!==void 0?mimeFileID:signedFileLogID,contentType:"message/rfc822"}));yield this.save(true)}))}sendEmail(){var _a,_b,_c;return __awaiter(this,void 0,void 0,(function*(){if(!((_a=this.draft)===null||_a===void 0?void 0:_a.textBody)){if(!((_c=(_b=this.draft)===null||_b===void 0?void 0:_b.attachments)===null||_c===void 0?void 0:_c.length)){alert("Cannot send empty email");return}}const{html,text}=this.editor.htmlTextContent;this.draft.htmlBody=html;this.draft.textBody=text;yield this.save();this.draft.status="scheduled";this.draft.dateSent=DateTime.now.add(TimeSpan.fromSeconds(30));this.draft.dateUpdated=DateTime.now;yield this.mailService.send(this.draft);this.draft=Email.create({subject:"",htmlBody:defaultEmailBody,attachments:[]});this.editor.htmlContent=this.draft.htmlBody}))}sendAudioMessage(){return __awaiter(this,void 0,void 0,(function*(){const uploadedFile=yield AudioRecorder.show();this.ensureDraft();this.draft.textBody=this.typedMessage;yield this.addFiles(uploadedFile)}))}addFiles(...files){return __awaiter(this,void 0,void 0,(function*(){this.ensureDraft();const attachments=this.draft.attachments;for(const file of files){attachments.add(this.createAppFile(file))}yield this.save()}))}createAppFile(file){return AppFile.create({appFileID:file.appFileID,contentType:file.file.type,name:file.file.name,contentID:file.appFileID.toString(36),url:file.url})}ensureDraft(){var _a,_b;var _c;(_a=this.draft)!==null&&_a!==void 0?_a:this.draft=Email.create({subject:"",attachments:[]});(_b=(_c=this.draft).attachments)!==null&&_b!==void 0?_b:_c.attachments=[]}save(saveAttachments=true){return __awaiter(this,void 0,void 0,(function*(){const{prevSave,saveCancelToken}=this;saveCancelToken===null||saveCancelToken===void 0?void 0:saveCancelToken.cancel();const ct=this.saveCancelToken=new CancelToken;this.prevSave=(()=>__awaiter(this,void 0,void 0,(function*(){try{if(prevSave){yield prevSave}this.draft=yield this.conversationService.draft(Object.assign(Object.assign({},this.mailboxContact),{email:this.draft}),true,saveAttachments,ct)}catch(_a){}})))().catch(console.error)}))}});__decorate([InjectProperty,__metadata("design:type",ConversationService)],MiniComposeBox.prototype,"conversationService",void 0);__decorate([InjectProperty,__metadata("design:type",MailService)],MiniComposeBox.prototype,"mailService",void 0);__decorate([Action({onEvent:"filesAvailable"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MiniComposeBox.prototype,"filesAvailable",null);__decorate([Action({onEvent:"delete-attachment",confirm:"Are you sure you want to delete this attachment?"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MiniComposeBox.prototype,"deleteAttachment",null);__decorate([Action({onEvent:CommonEvents.onDraftDeleted}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MiniComposeBox.prototype,"recreateDraft",null);__decorate([Action({onEvent:"input",defer:500,blockMultipleExecution:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MiniComposeBox.prototype,"onChanged",null);__decorate([Action({onEvent:CommonEvents.onEmailUnscheduled}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MiniComposeBox.prototype,"onEmailUnscheduled",null);__decorate([Action({onEvent:CommonEvents.onEmailForward}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MiniComposeBox.prototype,"onForwardEmail",null);__decorate([Action({onEvent:CommonEvents.onEmailForwardAsAttachment}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MiniComposeBox.prototype,"onForwardEmailAsAttachment",null);__decorate([Action({onEvent:"send-email"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MiniComposeBox.prototype,"sendEmail",null);__decorate([Action({}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MiniComposeBox.prototype,"sendAudioMessage",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/page/mails/mini-compose/MiniComposeBox");System.register([],(function(_export,_context){"use strict";var AtomOnce;_export("AtomOnce",void 0);return{setters:[],execute:function(){_export("AtomOnce",AtomOnce=class AtomOnce{run(f){if(this.isRunning){return}let isAsync=false;try{this.isRunning=true;const p=f();if(p&&p.then&&p.catch){isAsync=true;p.then((()=>{this.isRunning=false})).catch((()=>{this.isRunning=false}))}}finally{if(!isAsync){this.isRunning=false}}}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/core/AtomOnce");System.register([],(function(_export,_context){"use strict";var StyleBuilder;function cssNumberToString(n,unit="px"){if(typeof n==="number"){if(n===0){return n+""}return n+unit}return n}_export({cssNumberToString,default:void 0});return{setters:[],execute:function(){_export("default",StyleBuilder=class StyleBuilder{static get newStyle(){return new StyleBuilder}constructor(style){this.style=style;this.style=this.style||{}}toStyle(){return this.style}size(width,height){width=cssNumberToString(width);height=cssNumberToString(height);return this.merge({width,height})}roundBorder(radius){radius=cssNumberToString(radius);return this.merge({borderRadius:radius,padding:radius})}border(borderWidth,borderColor,borderStyle="solid"){borderWidth=cssNumberToString(borderWidth);return this.merge({borderWidth,borderStyle,borderColor})}center(width,height){width=cssNumberToString(width);height=cssNumberToString(height);return this.merge({position:"absolute",left:0,right:0,top:0,bottom:0,width,height,margin:"auto"})}absolute(left,top,right,bottom){left=cssNumberToString(left);top=cssNumberToString(top);if(right!==undefined){right=cssNumberToString(right);bottom=cssNumberToString(bottom);return this.merge({position:"absolute",left,top,right,bottom})}return this.merge({position:"absolute",left,top})}merge(style){return new StyleBuilder(Object.assign(Object.assign({},this.style),style))}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/styles/StyleBuilder");System.register(["tslib","../../App","../../di/Inject","../../di/RegisterSingleton","../../services/BusyIndicatorService","../../services/NavigationService","../controls/AtomControl","../styles/StyleBuilder"],(function(_export,_context){"use strict";var __decorate,__metadata,App,Inject,RegisterSingleton,BusyIndicatorService,NavigationService,AtomControl,cssNumberToString,WebBusyIndicatorService;return{setters:[function(_tslib){__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_App){App=_App.App},function(_diInject){Inject=_diInject.Inject},function(_diRegisterSingleton){RegisterSingleton=_diRegisterSingleton.RegisterSingleton},function(_servicesBusyIndicatorService){BusyIndicatorService=_servicesBusyIndicatorService.BusyIndicatorService},function(_servicesNavigationService){NavigationService=_servicesNavigationService.NavigationService},function(_controlsAtomControl){AtomControl=_controlsAtomControl.AtomControl},function(_stylesStyleBuilder){cssNumberToString=_stylesStyleBuilder.cssNumberToString}],execute:function(){_export("WebBusyIndicatorService",WebBusyIndicatorService=class WebBusyIndicatorService extends BusyIndicatorService{constructor(){super(...arguments);this.zIndex=5e4;this.indicators=0}createIndicator(){const host=document.createElement("div");const popup=new AtomControl(this.app,host);host.className="indicator-host";const span=document.createElement("i");const divStyle=host.style;divStyle.position="absolute";divStyle.overflow="hidden";divStyle.left=divStyle.right=divStyle.bottom=divStyle.top="0";divStyle.zIndex=this.zIndex+++"";const spanStyle=span.style;spanStyle.position="absolute";spanStyle.margin="auto";spanStyle.width="16px";spanStyle.height="16px";spanStyle.overflow="hidden";spanStyle.maxHeight="100%";spanStyle.maxWidth="100%";spanStyle.left=spanStyle.right=spanStyle.bottom=spanStyle.top="0";span.className="fas fa-spinner fa-spin";host.appendChild(span);const ws=this.navigationService;const e=ws.getHostForElement();if(e){e.appendChild(host)}else{document.body.appendChild(host);ws.refreshScreen();popup.bind(host,"styleLeft",[["this","scrollLeft"]],false,cssNumberToString,ws.screen);popup.bind(host,"styleTop",[["this","scrollTop"]],false,cssNumberToString,ws.screen);popup.bind(host,"styleWidth",[["this","width"]],false,cssNumberToString,ws.screen);popup.bind(host,"styleHeight",[["this","height"]],false,cssNumberToString,ws.screen)}popup.registerDisposable({dispose:()=>{host.remove()}});return popup}});__decorate([Inject,__metadata("design:type",NavigationService)],WebBusyIndicatorService.prototype,"navigationService",void 0);__decorate([Inject,__metadata("design:type",App)],WebBusyIndicatorService.prototype,"app",void 0);_export("WebBusyIndicatorService",WebBusyIndicatorService=__decorate([RegisterSingleton],WebBusyIndicatorService))}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/services/WebBusyIndicatorService");System.register(["tslib"],(function(_export,_context){"use strict";var __awaiter,Atom;_export("Atom",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter}],execute:function(){_export("Atom",Atom=class Atom{static superProperty(tc,target,name){let c=tc;do{c=Object.getPrototypeOf(c);if(!c){throw new Error("No property descriptor found for "+name)}const pd=Object.getOwnPropertyDescriptor(c.prototype,name);if(!pd){continue}return pd.get.apply(target)}while(true)}static get(target,path){const segments=path.split(".");for(const iterator of segments){if(target===undefined||target===null){return target}target=target[iterator]}return target}static delay(n,ct){return new Promise(((resolve,reject)=>{const h={};h.id=setTimeout((()=>{resolve()}),n);if(ct){ct.registerForCancel((()=>{clearTimeout(h.id);reject(new Error("cancelled"))}))}}))}static encodeParameters(p){if(!p){return""}let s="";for(const key in p){if(p.hasOwnProperty(key)){const element=p[key];let v=element;if(v===undefined||v===null){continue}if(v instanceof Date){v=v.toISOString()}else if(typeof element==="object"){v=JSON.stringify(element)}if(s){s+="&"}s+=`${key}=${encodeURIComponent(v)}`}}return s}static url(url,query,hash){if(!url){return url}let p=this.encodeParameters(query);if(p){if(url.indexOf("?")===-1){url+="?"}else{url+="&"}url+=p}p=this.encodeParameters(hash);if(p){if(url.indexOf("#")===-1){url+="#"}else{url+="&"}url+=p}return url}static postAsync(app,f){return new Promise(((resolve,reject)=>{app.callLater((()=>__awaiter(this,void 0,void 0,(function*(){try{resolve(yield f())}catch(error){reject(error)}}))))}))}});Atom.designMode=false}}}));AmdLoader.instance.setup("@web-atoms/core/dist/Atom");System.register([],(function(_export,_context){"use strict";var FormattedError;_export("default",void 0);return{setters:[],execute:function(){_export("default",FormattedError=class FormattedError{constructor(msg){const e=new Error(msg.toString());e.formattedMessage=msg;e.__proto__=FormattedError.prototype;return e}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/core/FormattedError");System.register([],(function(_export,_context){"use strict";function registerInit(target,fx){const t=target;const inits=t._$_inits=t._$_inits||[];inits.push(fx)}_export("registerInit",registerInit);return{setters:[],execute:function(){}}}));AmdLoader.instance.setup("@web-atoms/core/dist/view-model/baseTypes");System.register(["tslib","../App","../Atom","../core/AtomBinder","../core/AtomDisposableList","../core/AtomWatcher","../core/BindableProperty","../di/Inject","./baseTypes"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,__param,App,Atom,AtomBinder,AtomDisposableList,AtomWatcher,BindableProperty,Inject,registerInit,AtomViewModel;function runDecoratorInits(){const v=this.constructor.prototype;if(!v){return}const ris=v._$_inits;if(ris){for(const ri of ris){ri.call(this,this)}}}function privateInit(){return __awaiter(this,void 0,void 0,(function*(){try{yield Atom.postAsync(this.app,(()=>__awaiter(this,void 0,void 0,(function*(){runDecoratorInits.apply(this)}))));yield Atom.postAsync(this.app,(()=>__awaiter(this,void 0,void 0,(function*(){yield this.init();this.onReady()}))));if(this.postInit){for(const i of this.postInit){i()}this.postInit=null}}finally{const pi=this.pendingInits;this.pendingInits=null;for(const iterator of pi){iterator()}}}))}function waitForReady(vm){return __awaiter(this,void 0,void 0,(function*(){while(vm.pendingInits){yield Atom.delay(100)}}))}function Receive(...channel){return(target,key)=>{registerInit(target,(vm=>{const fx=vm[key];const a=(ch,d)=>{const p=fx.call(vm,ch,d);if(p&&p.then&&p.catch){p.catch((e=>{console.warn(e)}))}};const ivm=vm;for(const c of channel){ivm.registerDisposable(ivm.app.subscribe(c,a))}}))}}function BindableReceive(...channel){return(target,key)=>{const bp=BindableProperty(target,key);registerInit(target,(vm=>{const fx=(cx,m)=>{vm[key]=m};const ivm=vm;for(const c of channel){ivm.registerDisposable(ivm.app.subscribe(c,fx))}}));return bp}}function BindableBroadcast(...channel){return(target,key)=>{const bp=BindableProperty(target,key);registerInit(target,(vm=>{const fx=t=>{const v=vm[key];for(const c of channel){vm.app.broadcast(c,v)}};const d=new AtomWatcher(vm,[key.split(".")],fx);d.init();vm.registerDisposable(d)}));return bp}}function Watch(target,key,descriptor){registerInit(target,(vm=>{const ivm=vm;if(descriptor&&descriptor.get){ivm.setupWatch(descriptor.get,(()=>{vm.refresh(key.toString())}));return}ivm.setupWatch(vm[key])}))}function CachedWatch(target,key,descriptor){const getMethod=descriptor.get;descriptor.get=()=>null;registerInit(target,(vm=>{const ivm=vm;const fieldName=`_${key}`;Object.defineProperty(ivm,key,{enumerable:true,configurable:true,get(){const c=ivm[fieldName]||(ivm[fieldName]={value:getMethod.apply(ivm)});return c.value}});ivm.setupWatch(getMethod,(()=>{ivm[fieldName]=null;AtomBinder.refreshValue(ivm,key)}))}))}function Validate(target,key,descriptor){const getMethod=descriptor.get;descriptor.get=()=>null;registerInit(target,(vm=>{const initialized={i:false};const ivm=vm;Object.defineProperty(ivm,key,{enumerable:true,configurable:true,get(){if(vm.mShouldValidate&&initialized.i){return getMethod.apply(this)}return null}});ivm.setupWatch(getMethod,(()=>{initialized.i=true;vm.refresh(key.toString())}),true,key.toString());return}))}_export({waitForReady,Receive,BindableReceive,BindableBroadcast,Watch,CachedWatch,Validate});return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata;__param=_tslib.__param},function(_App){App=_App.App},function(_Atom){Atom=_Atom.Atom},function(_coreAtomBinder){AtomBinder=_coreAtomBinder.AtomBinder},function(_coreAtomDisposableList){AtomDisposableList=_coreAtomDisposableList.AtomDisposableList},function(_coreAtomWatcher){AtomWatcher=_coreAtomWatcher.AtomWatcher},function(_coreBindableProperty){BindableProperty=_coreBindableProperty.BindableProperty},function(_diInject){Inject=_diInject.Inject},function(_baseTypes){registerInit=_baseTypes.registerInit}],execute:function(){_export("AtomViewModel",AtomViewModel=class AtomViewModel{get isReady(){return this.pendingInits===null}get errors(){const e=[];if(!this.mShouldValidate){return e}for(const v of this.validations){if(!v.initialized){return e}const error=this[v.name];if(error){e.push({name:v.name,error})}}return e}get parent(){return this.mParent}set parent(v){if(this.mParent&&this.mParent.mChildren){this.mParent.mChildren.remove(this)}this.mParent=v;if(v){const c=v.mChildren||(v.mChildren=[]);c.add(this);this.registerDisposable({dispose:()=>{c.remove(this)}})}}get isValid(){let valid=true;const validateWasFalse=this.mShouldValidate===false;this.mShouldValidate=true;for(const v of this.validations){if(!v.initialized){v.watcher.init(true);v.initialized=true}if(this[v.name]){if(validateWasFalse){AtomBinder.refreshValue(this,v.name)}valid=false}}if(this.mChildren){for(const child of this.mChildren){if(!child.isValid){valid=false}}}AtomBinder.refreshValue(this,"errors");return valid}constructor(app){this.app=app;this.disposables=null;this.validations=[];this.pendingInits=[];this.mShouldValidate=false;this.app.runAsync((()=>privateInit.apply(this)))}resetValidations(resetChildren=true){this.mShouldValidate=false;for(const v of this.validations){this.refresh(v.name)}if(resetChildren&&this.mChildren){for(const iterator of this.mChildren){iterator.resetValidations(resetChildren)}}}runAfterInit(f){if(this.pendingInits){this.pendingInits.push(f);return}f()}refresh(name){AtomBinder.refreshValue(this,name)}init(){return __awaiter(this,void 0,void 0,(function*(){}))}dispose(){if(this.disposables){this.disposables.dispose()}}registerDisposable(d){this.disposables=this.disposables||new AtomDisposableList;return this.disposables.add(d)}onReady(){}setupWatch(ft,proxy,forValidation,name){const d=new AtomWatcher(this,ft,proxy,this);if(forValidation){this.validations=this.validations||[];this.validations.push({name,watcher:d,initialized:false})}else{d.init()}return this.registerDisposable(d)}onPropertyChanged(name){}});_export("AtomViewModel",AtomViewModel=__decorate([__param(0,Inject),__metadata("design:paramtypes",[App])],AtomViewModel))}}}));AmdLoader.instance.setup("@web-atoms/core/dist/view-model/AtomViewModel");System.register(["tslib","../services/NavigationService","./AtomViewModel"],(function(_export,_context){"use strict";var __awaiter,NavigationService,AtomViewModel,AtomWindowViewModel;_export("AtomWindowViewModel",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_servicesNavigationService){NavigationService=_servicesNavigationService.NavigationService},function(_AtomViewModel){AtomViewModel=_AtomViewModel.AtomViewModel}],execute:function(){_export("AtomWindowViewModel",AtomWindowViewModel=class AtomWindowViewModel extends AtomViewModel{close(result){this.app.broadcast(`atom-window-close:${this.windowName}`,result)}cancel(){return __awaiter(this,void 0,void 0,(function*(){if(this.closeWarning){const navigationService=this.app.resolve(NavigationService);if(!(yield navigationService.confirm(this.closeWarning,"Are you sure?"))){return false}}this.app.broadcast(`atom-window-cancel:${this.windowName}`,"cancelled");return true}))}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/view-model/AtomWindowViewModel");System.register(["@web-atoms/core/src/web/images/close-button-hover.svg","../styles/AtomStyle"],(function(_export,_context){"use strict";var closeButtonHover,AtomStyle,AtomWindowStyle;_export("AtomWindowStyle",void 0);return{setters:[function(_webAtomsCoreSrcWebImagesCloseButtonHoverSvg){closeButtonHover=_webAtomsCoreSrcWebImagesCloseButtonHoverSvg.default},function(_stylesAtomStyle){AtomStyle=_stylesAtomStyle.AtomStyle}],execute:function(){_export("AtomWindowStyle",AtomWindowStyle=class AtomWindowStyle extends AtomStyle{get root(){return Object.assign(Object.assign({},this.frameHost),{subclasses:{" .close-button":this.closeButton," .command-bar-presenter":this.commandBarPresenter," .command-bar":this.commandBar," .content-presenter":this.contentPresenter," .content":this.content," .frame":this.frame," .title":this.title," .title-host":this.titleHost," .title-presenter":this.titlePresenter}})}get frameHost(){return{position:"absolute",left:0,right:0,top:0,bottom:0,backgroundColor:"#50505080"}}get frame(){return{position:"absolute",minHeight:"100px",minWidth:"300px",margin:"auto",border:"solid 1px #808080",borderRadius:"5px",backgroundColor:"white"}}get titlePresenter(){return{position:"relative",left:0,right:0,top:0,height:"37px"}}get titleHost(){return{position:"absolute",left:0,right:0,padding:"7px",minHeight:"32px",backgroundColor:"#404040",color:"white",top:0,borderTopRightRadius:"4px",borderTopLeftRadius:"4px"}}get title(){return{margin:"auto"}}get closeButton(){return{position:"absolute",right:"6px",top:"7px",width:"0",height:"0",padding:"9px",border:"none",backgroundColor:"transparent",backgroundImage:closeButtonHover}}get content(){return{}}get contentPresenter(){return{position:"relative",padding:"10px",background:"white"}}get commandBarPresenter(){return{left:0,right:0,bottom:0,padding:"5px",backgroundColor:"#d4d4d4",textAlign:"right",borderBottomRightRadius:"4px",borderBottomLeftRadius:"4px"}}get commandBar(){return{subclasses:{" button":{borderRadius:"3px",marginLeft:"5px",marginRight:"5px",padding:"4px 16px",backgroundColor:"whitesmoke",border:"1px solid gray"}}}}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/styles/AtomWindowStyle");System.register(["../../core/Colors","./AtomWindowStyle"],(function(_export,_context){"use strict";var Colors,AtomWindowStyle,AtomAlertWindowStyle;_export("default",void 0);return{setters:[function(_coreColors){Colors=_coreColors.default},function(_AtomWindowStyle){AtomWindowStyle=_AtomWindowStyle.AtomWindowStyle}],execute:function(){_export("default",AtomAlertWindowStyle=class AtomAlertWindowStyle extends AtomWindowStyle{get titleHost(){return Object.assign(Object.assign({},this.getBaseProperty(AtomAlertWindowStyle,"titleHost")),{color:Colors.black,backgroundColor:Colors.white})}get contentPresenter(){return Object.assign(Object.assign({},this.getBaseProperty(AtomAlertWindowStyle,"contentPresenter")),{padding:"0px 10px 30px 10px",textAlign:"center",color:Colors.rgba(51,51,51)})}get commandBar(){return Object.assign(Object.assign({},this.getBaseProperty(AtomAlertWindowStyle,"commandBar")),{textAlign:"center",subclasses:{" button":this.buttonStyle," .yes-button":{backgroundColor:Colors.rgba(0,128,0)}," .no-button":{backgroundColor:Colors.rgba(255,0,0)}}})}get buttonStyle(){return{border:"none",color:Colors.white,width:"50%",height:"40px"}}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/styles/AtomAlertWindowStyle");System.register(["./AtomControl"],(function(_export,_context){"use strict";var AtomControl,AtomTemplate;_export("AtomTemplate",void 0);return{setters:[function(_AtomControl){AtomControl=_AtomControl.AtomControl}],execute:function(){_export("AtomTemplate",AtomTemplate=class AtomTemplate extends AtomControl{})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/controls/AtomTemplate");System.register(["../../App","../../core/Bind","../../core/XNode","../styles/AtomWindowStyle","./AtomControl","./AtomTemplate"],(function(_export,_context){"use strict";var App,Bind,XNode,AtomWindowStyle,AtomControl,AtomTemplate,AtomWindowFrameTemplate,AtomWindowTitleTemplate,AtomWindow;function getTemplateParent(e){const tp=e._templateParent;if(tp){return tp}const p=e._logicalParent||e.parentElement;if(p){return getTemplateParent(p)}}_export({getTemplateParent,AtomWindowFrameTemplate:void 0,AtomWindow:void 0});return{setters:[function(_App){App=_App.App},function(_coreBind){Bind=_coreBind.default},function(_coreXNode){XNode=_coreXNode.default},function(_stylesAtomWindowStyle){AtomWindowStyle=_stylesAtomWindowStyle.AtomWindowStyle},function(_AtomControl){AtomControl=_AtomControl.AtomControl},function(_AtomTemplate){AtomTemplate=_AtomTemplate.AtomTemplate}],execute:function(){_export("AtomWindowFrameTemplate",AtomWindowFrameTemplate=class AtomWindowFrameTemplate extends AtomTemplate{get templateParent(){return getTemplateParent(this.element)}preCreate(){this.titlePresenter=null;this.commandPresenter=null;this.contentPresenter=null;super.preCreate()}create(){this.render(XNode.create("div",{class:"frame",styleWidth:Bind.oneWay((()=>this.templateParent.width||undefined)),styleHeight:Bind.oneWay((()=>this.templateParent.height||undefined)),styleLeft:Bind.oneWay((()=>this.templateParent.x>=0?`${this.templateParent.x}px`:undefined)),styleTop:Bind.oneWay((()=>this.templateParent.y>=0?`${this.templateParent.y}px`:undefined)),styleMarginTop:Bind.oneWay((()=>this.templateParent.x>=0?"0":undefined)),styleMarginLeft:Bind.oneWay((()=>this.templateParent.x>=0?"0":undefined)),styleMarginRight:Bind.oneWay((()=>this.templateParent.x>=0?"0":undefined)),styleMarginBottom:Bind.oneWay((()=>this.templateParent.x>=0?"0":undefined))},XNode.create("div",{class:"title-presenter",presenter:Bind.presenter("titlePresenter")}),XNode.create("div",{class:"content-presenter",presenter:Bind.presenter("contentPresenter")}),XNode.create("div",{class:"command-bar-presenter",presenter:Bind.presenter("commandPresenter")})))}});AtomWindowTitleTemplate=class AtomWindowTitleTemplate extends AtomControl{get templateParent(){return getTemplateParent(this.element)}create(){this.render(XNode.create("div",{class:"title-host"},XNode.create("span",{class:"title",text:Bind.oneWay((()=>this.templateParent.title))}),XNode.create("button",{class:"close-button",eventClick:Bind.event((()=>this.templateParent.close()))})))}};_export("AtomWindow",AtomWindow=class AtomWindow extends AtomControl{constructor(){super(...arguments);this.title="";this.width="";this.height="";this.x=-1;this.y=-1;this.titleTemplate=AtomWindowTitleTemplate;this.frameTemplate=AtomWindowFrameTemplate;this.isReady=false}get templateParent(){return getTemplateParent(this.element)}onPropertyChanged(name){switch(name){case"windowTemplate":case"commandTemplate":case"frameTemplate":this.invalidate();break}}close(){const vm=this.viewModel;if(vm.cancel){this.app.runAsync((()=>vm.cancel()));return}const message=`atom-window-cancel:${this.id}`;const device=this.app.resolve(App);device.broadcast(message,"cancelled")}onUpdateUI(){if(!(this.windowTemplate&&this.frameTemplate)){return}if(this.isReady){return}this.bind(this.element,"title",[["viewModel","title"]]);const frame=new this.frameTemplate(this.app);const fe=frame.element;const titleContent=new this.titleTemplate(this.app);titleContent.element._templateParent=this;frame.titlePresenter.appendChild(titleContent.element);this.setupDragging(frame.titlePresenter);this.element.classList.add("frame-host");fe._logicalParent=this.element;fe._templateParent=this;if(!frame.contentPresenter){throw new Error("ContentPresenter must be set inside frameTemplate before creating window")}const content=new this.windowTemplate(this.app);content.element._templateParent=this;this.setElementClass(content.element,{content:1});frame.contentPresenter.appendChild(content.element);if(this.commandTemplate){if(!frame.commandPresenter){throw new Error("CommandPresenter must be set inside frameTemplate"+"before creating window if command template is present")}const command=new this.commandTemplate(this.app);command.element._templateParent=this;this.setElementClass(command.element,{"command-bar":1});frame.commandPresenter.appendChild(command.element)}this.append(frame);setTimeout((()=>{this.centerFrame(frame.element)}),100);this.isReady=true}preCreate(){this.defaultControlStyle=AtomWindowStyle;this.title=null;this.width="";this.height="";this.x=-1;this.y=-1;this.windowTemplate=null;this.commandTemplate=null;this.titleTemplate=AtomWindowTitleTemplate;this.frameTemplate=AtomWindowFrameTemplate;super.preCreate();this.render(XNode.create("div",{styleClass:Bind.oneTime((()=>this.controlStyle.name))}))}centerFrame(e){if(!this.element){return}const parent=this.element.parentElement;if(parent===window||parent===document.body){return}if(parent.offsetWidth<=0||parent.offsetHeight<=0){setTimeout((()=>{this.centerFrame(e)}),100);return}if(e.offsetWidth<=0||e.offsetHeight<=0){setTimeout((()=>{this.centerFrame(e)}),100);return}const x=(parent.offsetWidth-e.offsetWidth)/2;const y=(parent.offsetHeight-e.offsetHeight)/2;this.x=x;this.y=y;e.style.opacity="1";this.element.style.removeProperty("opacity")}setupDragging(tp){this.bindEvent(tp,"mousedown",(startEvent=>{startEvent.preventDefault();const disposables=[];const offset={x:tp.parentElement.offsetLeft,y:tp.parentElement.offsetTop};const rect={x:startEvent.clientX,y:startEvent.clientY};const cursor=tp.style.cursor;tp.style.cursor="move";disposables.push(this.bindEvent(document.body,"mousemove",(moveEvent=>{const{clientX,clientY}=moveEvent;const dx=clientX-rect.x;const dy=clientY-rect.y;offset.x+=dx;offset.y+=dy;this.x=offset.x;this.y=offset.y;rect.x=clientX;rect.y=clientY})));disposables.push(this.bindEvent(document.body,"mouseup",(endEvent=>{tp.style.cursor=cursor;for(const iterator of disposables){iterator.dispose()}})))}))}});AtomWindow.windowTemplate=XNode.prepare("windowTemplate",true,true);AtomWindow.commandTemplate=XNode.prepare("commandTemplate",true,true);AtomWindow.titleTemplate=XNode.prepare("titleTemplate",true,true);AtomWindow.frameTemplate=XNode.prepare("frameTemplate",true,true)}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/controls/AtomWindow");System.register(["tslib","../../core/Bind","../../core/BindableProperty","../../core/XNode","../../view-model/AtomWindowViewModel","../styles/AtomAlertWindowStyle","./AtomWindow"],(function(_export,_context){"use strict";var __decorate,__metadata,Bind,BindableProperty,XNode,AtomWindowViewModel,AtomAlertWindowStyle,AtomWindow,AtomAlertWindow,AtomAlertViewModel;_export("default",void 0);return{setters:[function(_tslib){__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_coreBind){Bind=_coreBind.default},function(_coreBindableProperty){BindableProperty=_coreBindableProperty.BindableProperty},function(_coreXNode){XNode=_coreXNode.default},function(_viewModelAtomWindowViewModel){AtomWindowViewModel=_viewModelAtomWindowViewModel.AtomWindowViewModel},function(_stylesAtomAlertWindowStyle){AtomAlertWindowStyle=_stylesAtomAlertWindowStyle.default},function(_AtomWindow){AtomWindow=_AtomWindow.AtomWindow}],execute:function(){_export("default",AtomAlertWindow=class AtomAlertWindow extends AtomWindow{create(){this.defaultControlStyle=AtomAlertWindowStyle;this.viewModel=this.resolve(AtomAlertViewModel);this.render(XNode.create(AtomWindow,{title:Bind.oneWay((()=>this.viewModel.title))},XNode.create(AtomWindow.windowTemplate,null,XNode.create("div",{formattedText:Bind.oneWay((()=>this.viewModel.message))})),XNode.create(AtomWindow.commandTemplate,null,XNode.create("div",null,XNode.create("button",{class:"yes-button",styleDisplay:Bind.oneWay((()=>this.viewModel.okTitle?"":"none")),text:Bind.oneWay((()=>this.viewModel.okTitle)),eventClick:()=>this.viewModel.onOkClicked()}),XNode.create("button",{class:"no-button",styleMarginBottom:Bind.oneWay((()=>this.viewModel.cancelTitle?"0":"10px")),styleDisplay:Bind.oneWay((()=>this.viewModel.cancelTitle?"":"none")),text:Bind.oneWay((()=>this.viewModel.cancelTitle)),eventClick:()=>this.viewModel.onCancelClicked()})))))}});AtomAlertViewModel=class AtomAlertViewModel extends AtomWindowViewModel{onOkClicked(){this.close(true)}onCancelClicked(){this.cancel()}};__decorate([BindableProperty,__metadata("design:type",String)],AtomAlertViewModel.prototype,"title",void 0);__decorate([BindableProperty,__metadata("design:type",String)],AtomAlertViewModel.prototype,"message",void 0);__decorate([BindableProperty,__metadata("design:type",String)],AtomAlertViewModel.prototype,"okTitle",void 0);__decorate([BindableProperty,__metadata("design:type",String)],AtomAlertViewModel.prototype,"cancelTitle",void 0)}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/controls/AtomAlertWindow");System.register(["../../core/Colors","./AtomStyle"],(function(_export,_context){"use strict";var Colors,AtomStyle,AtomNotificationStyle;_export("default",void 0);return{setters:[function(_coreColors){Colors=_coreColors.default},function(_AtomStyle){AtomStyle=_AtomStyle.AtomStyle}],execute:function(){_export("default",AtomNotificationStyle=class AtomNotificationStyle extends AtomStyle{get root(){return{padding:"5px",borderRadius:"5px",border:"solid 1px lightgray",fontFamily:"Verdana, Geneva, sans-serif",fontSize:"16px",subclasses:{".error":{borderColor:Colors.red,color:Colors.red},".warning":{backgroundColor:Colors.lightYellow}}}}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/styles/AtomNotificationStyle");System.register(["tslib","../../core/Bind","../../core/BindableProperty","../../core/XNode","../styles/AtomNotificationStyle","./AtomControl"],(function(_export,_context){"use strict";var __decorate,__metadata,Bind,BindableProperty,XNode,AtomNotificationStyle,AtomControl,AtomNotification;_export("default",void 0);return{setters:[function(_tslib){__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_coreBind){Bind=_coreBind.default},function(_coreBindableProperty){BindableProperty=_coreBindableProperty.BindableProperty},function(_coreXNode){XNode=_coreXNode.default},function(_stylesAtomNotificationStyle){AtomNotificationStyle=_stylesAtomNotificationStyle.default},function(_AtomControl){AtomControl=_AtomControl.AtomControl}],execute:function(){_export("default",AtomNotification=class AtomNotification extends AtomControl{constructor(){super(...arguments);this.timeout=5e3;this.timeoutKey=null}onPropertyChanged(name){switch(name){case"timeout":this.setupTimeout();break}}create(){this.defaultControlStyle=AtomNotificationStyle;this.render(XNode.create("div",{formattedText:Bind.oneWay((()=>this.viewModel.message)),timeout:Bind.oneWay((()=>this.viewModel.timeout||5e3)),styleClass:Bind.oneWay((()=>({[this.controlStyle.name]:1,error:this.viewModel.type&&/error/i.test(this.viewModel.type),warning:this.viewModel.type&&/warn/i.test(this.viewModel.type)})))}))}setupTimeout(){if(this.timeoutKey){clearTimeout(this.timeoutKey)}this.timeoutKey=setTimeout((()=>{if(this.element){this.app.broadcast(`atom-window-close:${this.id}`,"")}}),this.timeout)}});__decorate([BindableProperty,__metadata("design:type",Number)],AtomNotification.prototype,"timeout",void 0)}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/controls/AtomNotification");System.register(["../styles/AtomStyle"],(function(_export,_context){"use strict";var AtomStyle,AtomPopupStyle;_export("AtomPopupStyle",void 0);return{setters:[function(_stylesAtomStyle){AtomStyle=_stylesAtomStyle.AtomStyle}],execute:function(){_export("AtomPopupStyle",AtomPopupStyle=class AtomPopupStyle extends AtomStyle{get root(){return{backgroundColor:"white",border:"solid 1px lightgray",padding:"5px",borderRadius:"5px"}}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/styles/AtomPopupStyle");System.register(["../../core/XNode","../../style/styled","./PopupService"],(function(_export,_context){"use strict";var XNode,styled,PopupWindow,css;function NotificationPopup({message,type}){return class Notification extends PopupWindow{create(){if(message instanceof XNode){this.render(XNode.create("div",{styleClass:{[css]:1,error:/error/i.test(type),warning:/warn/i.test(type)}},message));return}this.render(XNode.create("div",{styleClass:{[css]:1,error:/error/i.test(type),warning:/warn/i.test(type)},formattedText:message}))}}}_export("default",NotificationPopup);return{setters:[function(_coreXNode){XNode=_coreXNode.default},function(_styleStyled){styled=_styleStyled.default},function(_PopupService){PopupWindow=_PopupService.PopupWindow}],execute:function(){css=styled.css`
|
|
2677
|
+
`.installLocal();defaultEmailBody=`<section style="background-color: white; color: black;">\n<section contentEditable="true"> <br/></section>\n<footer data-social-mail-commands="emoji-bar"></footer>\n</section>`;_export("default",MiniComposeBox=class MiniComposeBox extends AtomControl{constructor(app,e){super(app,e);this.mailboxContact=null;this.draft=null;this.typedMessage="";this.active=false;this.savedSubject=void 0;this.savedBody=void 0;this.element.className=css;this.app.runAsync((()=>this.init()))}init(){var _a,_b,_c;return __awaiter(this,void 0,void 0,(function*(){this.renderer=XNode.create("div",null,XNode.create(Loader,null));yield sleep(100);(_a=this.draft)!==null&&_a!==void 0?_a:this.draft=null;if(!this.draft){this.ensureDraft()}this.typedMessage=((_b=this.draft)===null||_b===void 0?void 0:_b.htmlBody)?this.draft.htmlBody:defaultEmailBody;this.renderer=XNode.create("div",null,XNode.create(MailHtmlEditor,{toolbar:()=>XNode.create("div",null,XNode.create(Toolbar,null,XNode.create(Insert,null),XNode.create(Separator,null),XNode.create(Attach,null),XNode.create(Separator,null),XNode.create(Bold,null),XNode.create(Italic,null),XNode.create(Underline,null),XNode.create(StrikeThrough,null),XNode.create(Align,{alignment:"above"}),XNode.create(Separator,null),XNode.create(AddLink,null),XNode.create(Unlink,null)),XNode.create(TitleEditor,{class:"subject",placeholder:"Subject ... ",value:Bind.sourceTwoWays(this,(x=>x.source.draft.subject))})),"data-element":"editor","data-html-editor":"email-editor",presenter:Bind.presenter((c=>this.editor=c)),content:this.typedMessage,"style-min-height":"50px",attachments:Bind.oneWay((()=>this.draft.attachments))}),XNode.create("i",{"data-element":"send",class:"fa-solid fa-microphone-lines mic","event-click":()=>this.sendAudioMessage(),"style-display":Bind.oneWay((()=>!this.typedMessage))}),XNode.create("i",{"data-element":"send",class:"fa-solid fa-angle-double-right send","style-display":Bind.oneWay((()=>!!this.typedMessage)),"data-click-event":"send-email"}),XNode.create(AtomRepeater,{"data-element":"files",items:Bind.oneWay((()=>{var _a;return(_a=this.draft)===null||_a===void 0?void 0:_a.attachments})),"style-display":Bind.oneWay((()=>this.draft&&this.draft.attachments&&this.draft.attachments.length>0),false),"data-layout":"flex-wrap-padding",itemRenderer:item=>XNode.create("div",{"data-layout":"icon-button"},XNode.create("label",{text:item.name}),XNode.create("i",{"data-click-event":"delete-attachment",class:"fas fa-times-circle","data-cursor":"pointer","data-color":"red"}))}));yield sleep(100);if(!this.draft.subject){(_c=this.editor.element.querySelector(".subject > input"))===null||_c===void 0?void 0:_c.focus();return}const editor=this.editor.element.querySelector(`[data-element="editor"]`);for(const iterator of descendentElementIterator(editor)){if(iterator.isContentEditable){let start=iterator;let next;while((next=start.firstElementChild)&&next.tagName!=="BR"){start=next}start.focus();window.getSelection().setPosition(start.firstElementChild);return}}}))}filesAvailable({files,extra}){return __awaiter(this,void 0,void 0,(function*(){if(extra.stream){yield this.streamFiles({files,extra});return}const size=files.reduce(((pv,cv)=>pv+cv.file.size),0);if(size>20*1024*1024){if(!extra.stream){throw new Error(`Total size of attachments cannot be more than 20MB.`)}}if(extra.insert){this.ensureDraft();const firstChild=this.editor.editor.firstElementChild;for(const iterator of files){if(/^image\//.test(iterator.contentType)){const af=this.createAppFile(iterator);const img=firstChild.ownerDocument.createElement("img");img.src=iterator.url;img.setAttribute("data-content-id",af.contentID);this.draft.attachments.add(af);firstChild.appendChild(img);const newLine=document.createElement("div");newLine.appendChild(document.createElement("br"));firstChild.appendChild(newLine);continue}if(/^(video|audio)\//.test(iterator.contentType)){const af=this.createAppFile(iterator);const img=firstChild.ownerDocument.createElement("video");img.src=iterator.url;img.setAttribute("data-content-id",af.contentID);this.draft.attachments.add(af);firstChild.appendChild(img);const newLine=document.createElement("div");newLine.appendChild(document.createElement("br"));firstChild.appendChild(newLine);continue}}return}yield this.addFiles(...files)}))}streamFiles({files,extra}){return __awaiter(this,void 0,void 0,(function*(){}))}deleteAttachment(file){var _a;return __awaiter(this,void 0,void 0,(function*(){yield this.mailService.deleteAttachment(file);(_a=this.draft)===null||_a===void 0?void 0:_a.attachments.remove(file)}))}recreateDraft(){var _a,_b;var _c;return __awaiter(this,void 0,void 0,(function*(){this.draft=null;(_a=this.draft)!==null&&_a!==void 0?_a:this.draft=Email.create({subject:"",attachments:[]});(_b=(_c=this.draft).attachments)!==null&&_b!==void 0?_b:_c.attachments=[]}))}onChanged(){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){if(!((_a=this.editor)===null||_a===void 0?void 0:_a.htmlTextContent)){return}(_b=this.draft)!==null&&_b!==void 0?_b:this.draft=Email.create({attachments:[]});const{html,text}=this.editor.htmlTextContent;if(this.savedSubject===this.draft.subject&&this.savedBody===html){return}if(this.prevSave){yield this.prevSave}this.savedSubject=this.draft.subject;this.savedBody=html;this.draft.htmlBody=html;this.draft.textBody=text;yield this.save(false)}))}onEmailUnscheduled(mce){return __awaiter(this,void 0,void 0,(function*(){this.draft=mce.email}))}onForwardEmail(mce){var _a;return __awaiter(this,void 0,void 0,(function*(){if((_a=this.draft)===null||_a===void 0?void 0:_a.emailID){yield this.save(true);this.draft=null}this.ensureDraft();const{email}=mce;const{recipients}=email;const to=recipients===null||recipients===void 0?void 0:recipients.filter((x=>x.type==="to"));const cc=recipients===null||recipients===void 0?void 0:recipients.filter((x=>x.type==="cc"));this.draft.htmlBody=DomToString(XNode.create("section",{style:"background-color: white; color: black;"},XNode.create("section",{contentEditable:"true"}," ",XNode.create("br",null)),XNode.create("blockquote",{contentEditable:"false","data-type":"forwarded",style:"margin-inline-start: 20px; margin-inline-end: 0; border-left: solid 1px lightgray; padding-left: 10px;"},XNode.create("summary",null,XNode.create("div",null,"From: $",email.senderName," ",`<${email.senderEmail.emailAddress}>`),XNode.create("div",null,(to===null||to===void 0?void 0:to.length)&&XNode.create("div",null,XNode.create("label",{style:"margin-right:10px;"},"To:"),...to.map((x=>XNode.create(EmailLabel,{recipient:x})))),(cc===null||cc===void 0?void 0:cc.length)&&XNode.create("div",null,XNode.create("label",{style:"margin-right:10px;"},"CC:"),...cc.map((x=>XNode.create(EmailLabel,{recipient:x})))),XNode.create("div",null,XNode.create("label",{style:"margin-right:10px;"},"Subject:"),XNode.create("label",null,email.subject)),XNode.create("div",{"data-type":"html-body"},email.htmlBody)))),XNode.create("footer",{"data-social-mail-commands":"emoji-bar"})));this.editor.htmlContent=this.draft.htmlBody;const attachments=mce.email.attachments;if(attachments){for(const iterator of attachments){this.draft.attachments.add(AppFile.create(Object.assign(Object.assign({},iterator),{appFileID:void 0})))}}yield this.save(!!attachments)}))}onForwardEmailAsAttachment(mce){var _a;return __awaiter(this,void 0,void 0,(function*(){if((_a=this.draft)===null||_a===void 0?void 0:_a.emailID){yield this.save(true);this.draft=null}this.ensureDraft();const{email,signedFileLogID}=mce;const{mimeFileID}=email;this.draft.htmlBody=DomToString(XNode.create("section",{style:"background-color: white; color: black;"},XNode.create("section",{contentEditable:"true"}," ",XNode.create("br",null))));this.editor.htmlContent=this.draft.htmlBody;this.draft.attachments.add(AppFile.create({name:"forwarded.eml",sourceEmailLogID:mimeFileID!==null&&mimeFileID!==void 0?mimeFileID:signedFileLogID,contentType:"message/rfc822"}));yield this.save(true)}))}sendEmail(){var _a,_b,_c;return __awaiter(this,void 0,void 0,(function*(){if(!((_a=this.draft)===null||_a===void 0?void 0:_a.textBody)){if(!((_c=(_b=this.draft)===null||_b===void 0?void 0:_b.attachments)===null||_c===void 0?void 0:_c.length)){alert("Cannot send empty email");return}}const{html,text}=this.editor.htmlTextContent;this.draft.htmlBody=html;this.draft.textBody=text;yield this.save();this.draft.status="scheduled";this.draft.dateSent=DateTime.now.add(TimeSpan.fromSeconds(30));this.draft.dateUpdated=DateTime.now;yield this.mailService.send(this.draft);const saved=this.draft;this.draft=Email.create({subject:"",htmlBody:defaultEmailBody,attachments:[]});this.editor.htmlContent=this.draft.htmlBody;this.element.dispatchEvent(new CustomEvent("emailSent",{bubbles:true,detail:saved}))}))}sendAudioMessage(){return __awaiter(this,void 0,void 0,(function*(){const uploadedFile=yield AudioRecorder.show();this.ensureDraft();this.draft.textBody=this.typedMessage;yield this.addFiles(uploadedFile)}))}addFiles(...files){return __awaiter(this,void 0,void 0,(function*(){this.ensureDraft();const attachments=this.draft.attachments;for(const file of files){attachments.add(this.createAppFile(file))}yield this.save()}))}createAppFile(file){return AppFile.create({appFileID:file.appFileID,contentType:file.file.type,name:file.file.name,contentID:file.appFileID.toString(36),url:file.url})}ensureDraft(){var _a,_b;var _c;(_a=this.draft)!==null&&_a!==void 0?_a:this.draft=Email.create({subject:"",attachments:[]});(_b=(_c=this.draft).attachments)!==null&&_b!==void 0?_b:_c.attachments=[]}save(saveAttachments=true){return __awaiter(this,void 0,void 0,(function*(){const{prevSave,saveCancelToken}=this;saveCancelToken===null||saveCancelToken===void 0?void 0:saveCancelToken.cancel();const ct=this.saveCancelToken=new CancelToken;this.prevSave=(()=>__awaiter(this,void 0,void 0,(function*(){try{if(prevSave){yield prevSave}this.draft=yield this.conversationService.draft(Object.assign(Object.assign({},this.mailboxContact),{email:this.draft}),true,saveAttachments,ct)}catch(_a){}})))().catch(console.error)}))}});__decorate([InjectProperty,__metadata("design:type",ConversationService)],MiniComposeBox.prototype,"conversationService",void 0);__decorate([InjectProperty,__metadata("design:type",MailService)],MiniComposeBox.prototype,"mailService",void 0);__decorate([Action({onEvent:"filesAvailable"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MiniComposeBox.prototype,"filesAvailable",null);__decorate([Action({onEvent:"delete-attachment",confirm:"Are you sure you want to delete this attachment?"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MiniComposeBox.prototype,"deleteAttachment",null);__decorate([Action({onEvent:CommonEvents.onDraftDeleted}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MiniComposeBox.prototype,"recreateDraft",null);__decorate([Action({onEvent:"input",defer:500,blockMultipleExecution:true}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MiniComposeBox.prototype,"onChanged",null);__decorate([Action({onEvent:CommonEvents.onEmailUnscheduled}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MiniComposeBox.prototype,"onEmailUnscheduled",null);__decorate([Action({onEvent:CommonEvents.onEmailForward}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MiniComposeBox.prototype,"onForwardEmail",null);__decorate([Action({onEvent:CommonEvents.onEmailForwardAsAttachment}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],MiniComposeBox.prototype,"onForwardEmailAsAttachment",null);__decorate([Action({onEvent:"send-email"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MiniComposeBox.prototype,"sendEmail",null);__decorate([Action({}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MiniComposeBox.prototype,"sendAudioMessage",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/page/mails/mini-compose/MiniComposeBox");System.register([],(function(_export,_context){"use strict";var AtomOnce;_export("AtomOnce",void 0);return{setters:[],execute:function(){_export("AtomOnce",AtomOnce=class AtomOnce{run(f){if(this.isRunning){return}let isAsync=false;try{this.isRunning=true;const p=f();if(p&&p.then&&p.catch){isAsync=true;p.then((()=>{this.isRunning=false})).catch((()=>{this.isRunning=false}))}}finally{if(!isAsync){this.isRunning=false}}}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/core/AtomOnce");System.register([],(function(_export,_context){"use strict";var StyleBuilder;function cssNumberToString(n,unit="px"){if(typeof n==="number"){if(n===0){return n+""}return n+unit}return n}_export({cssNumberToString,default:void 0});return{setters:[],execute:function(){_export("default",StyleBuilder=class StyleBuilder{static get newStyle(){return new StyleBuilder}constructor(style){this.style=style;this.style=this.style||{}}toStyle(){return this.style}size(width,height){width=cssNumberToString(width);height=cssNumberToString(height);return this.merge({width,height})}roundBorder(radius){radius=cssNumberToString(radius);return this.merge({borderRadius:radius,padding:radius})}border(borderWidth,borderColor,borderStyle="solid"){borderWidth=cssNumberToString(borderWidth);return this.merge({borderWidth,borderStyle,borderColor})}center(width,height){width=cssNumberToString(width);height=cssNumberToString(height);return this.merge({position:"absolute",left:0,right:0,top:0,bottom:0,width,height,margin:"auto"})}absolute(left,top,right,bottom){left=cssNumberToString(left);top=cssNumberToString(top);if(right!==undefined){right=cssNumberToString(right);bottom=cssNumberToString(bottom);return this.merge({position:"absolute",left,top,right,bottom})}return this.merge({position:"absolute",left,top})}merge(style){return new StyleBuilder(Object.assign(Object.assign({},this.style),style))}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/styles/StyleBuilder");System.register(["tslib","../../App","../../di/Inject","../../di/RegisterSingleton","../../services/BusyIndicatorService","../../services/NavigationService","../controls/AtomControl","../styles/StyleBuilder"],(function(_export,_context){"use strict";var __decorate,__metadata,App,Inject,RegisterSingleton,BusyIndicatorService,NavigationService,AtomControl,cssNumberToString,WebBusyIndicatorService;return{setters:[function(_tslib){__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_App){App=_App.App},function(_diInject){Inject=_diInject.Inject},function(_diRegisterSingleton){RegisterSingleton=_diRegisterSingleton.RegisterSingleton},function(_servicesBusyIndicatorService){BusyIndicatorService=_servicesBusyIndicatorService.BusyIndicatorService},function(_servicesNavigationService){NavigationService=_servicesNavigationService.NavigationService},function(_controlsAtomControl){AtomControl=_controlsAtomControl.AtomControl},function(_stylesStyleBuilder){cssNumberToString=_stylesStyleBuilder.cssNumberToString}],execute:function(){_export("WebBusyIndicatorService",WebBusyIndicatorService=class WebBusyIndicatorService extends BusyIndicatorService{constructor(){super(...arguments);this.zIndex=5e4;this.indicators=0}createIndicator(){const host=document.createElement("div");const popup=new AtomControl(this.app,host);host.className="indicator-host";const span=document.createElement("i");const divStyle=host.style;divStyle.position="absolute";divStyle.overflow="hidden";divStyle.left=divStyle.right=divStyle.bottom=divStyle.top="0";divStyle.zIndex=this.zIndex+++"";const spanStyle=span.style;spanStyle.position="absolute";spanStyle.margin="auto";spanStyle.width="16px";spanStyle.height="16px";spanStyle.overflow="hidden";spanStyle.maxHeight="100%";spanStyle.maxWidth="100%";spanStyle.left=spanStyle.right=spanStyle.bottom=spanStyle.top="0";span.className="fas fa-spinner fa-spin";host.appendChild(span);const ws=this.navigationService;const e=ws.getHostForElement();if(e){e.appendChild(host)}else{document.body.appendChild(host);ws.refreshScreen();popup.bind(host,"styleLeft",[["this","scrollLeft"]],false,cssNumberToString,ws.screen);popup.bind(host,"styleTop",[["this","scrollTop"]],false,cssNumberToString,ws.screen);popup.bind(host,"styleWidth",[["this","width"]],false,cssNumberToString,ws.screen);popup.bind(host,"styleHeight",[["this","height"]],false,cssNumberToString,ws.screen)}popup.registerDisposable({dispose:()=>{host.remove()}});return popup}});__decorate([Inject,__metadata("design:type",NavigationService)],WebBusyIndicatorService.prototype,"navigationService",void 0);__decorate([Inject,__metadata("design:type",App)],WebBusyIndicatorService.prototype,"app",void 0);_export("WebBusyIndicatorService",WebBusyIndicatorService=__decorate([RegisterSingleton],WebBusyIndicatorService))}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/services/WebBusyIndicatorService");System.register(["tslib"],(function(_export,_context){"use strict";var __awaiter,Atom;_export("Atom",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter}],execute:function(){_export("Atom",Atom=class Atom{static superProperty(tc,target,name){let c=tc;do{c=Object.getPrototypeOf(c);if(!c){throw new Error("No property descriptor found for "+name)}const pd=Object.getOwnPropertyDescriptor(c.prototype,name);if(!pd){continue}return pd.get.apply(target)}while(true)}static get(target,path){const segments=path.split(".");for(const iterator of segments){if(target===undefined||target===null){return target}target=target[iterator]}return target}static delay(n,ct){return new Promise(((resolve,reject)=>{const h={};h.id=setTimeout((()=>{resolve()}),n);if(ct){ct.registerForCancel((()=>{clearTimeout(h.id);reject(new Error("cancelled"))}))}}))}static encodeParameters(p){if(!p){return""}let s="";for(const key in p){if(p.hasOwnProperty(key)){const element=p[key];let v=element;if(v===undefined||v===null){continue}if(v instanceof Date){v=v.toISOString()}else if(typeof element==="object"){v=JSON.stringify(element)}if(s){s+="&"}s+=`${key}=${encodeURIComponent(v)}`}}return s}static url(url,query,hash){if(!url){return url}let p=this.encodeParameters(query);if(p){if(url.indexOf("?")===-1){url+="?"}else{url+="&"}url+=p}p=this.encodeParameters(hash);if(p){if(url.indexOf("#")===-1){url+="#"}else{url+="&"}url+=p}return url}static postAsync(app,f){return new Promise(((resolve,reject)=>{app.callLater((()=>__awaiter(this,void 0,void 0,(function*(){try{resolve(yield f())}catch(error){reject(error)}}))))}))}});Atom.designMode=false}}}));AmdLoader.instance.setup("@web-atoms/core/dist/Atom");System.register([],(function(_export,_context){"use strict";var FormattedError;_export("default",void 0);return{setters:[],execute:function(){_export("default",FormattedError=class FormattedError{constructor(msg){const e=new Error(msg.toString());e.formattedMessage=msg;e.__proto__=FormattedError.prototype;return e}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/core/FormattedError");System.register([],(function(_export,_context){"use strict";function registerInit(target,fx){const t=target;const inits=t._$_inits=t._$_inits||[];inits.push(fx)}_export("registerInit",registerInit);return{setters:[],execute:function(){}}}));AmdLoader.instance.setup("@web-atoms/core/dist/view-model/baseTypes");System.register(["tslib","../App","../Atom","../core/AtomBinder","../core/AtomDisposableList","../core/AtomWatcher","../core/BindableProperty","../di/Inject","./baseTypes"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,__param,App,Atom,AtomBinder,AtomDisposableList,AtomWatcher,BindableProperty,Inject,registerInit,AtomViewModel;function runDecoratorInits(){const v=this.constructor.prototype;if(!v){return}const ris=v._$_inits;if(ris){for(const ri of ris){ri.call(this,this)}}}function privateInit(){return __awaiter(this,void 0,void 0,(function*(){try{yield Atom.postAsync(this.app,(()=>__awaiter(this,void 0,void 0,(function*(){runDecoratorInits.apply(this)}))));yield Atom.postAsync(this.app,(()=>__awaiter(this,void 0,void 0,(function*(){yield this.init();this.onReady()}))));if(this.postInit){for(const i of this.postInit){i()}this.postInit=null}}finally{const pi=this.pendingInits;this.pendingInits=null;for(const iterator of pi){iterator()}}}))}function waitForReady(vm){return __awaiter(this,void 0,void 0,(function*(){while(vm.pendingInits){yield Atom.delay(100)}}))}function Receive(...channel){return(target,key)=>{registerInit(target,(vm=>{const fx=vm[key];const a=(ch,d)=>{const p=fx.call(vm,ch,d);if(p&&p.then&&p.catch){p.catch((e=>{console.warn(e)}))}};const ivm=vm;for(const c of channel){ivm.registerDisposable(ivm.app.subscribe(c,a))}}))}}function BindableReceive(...channel){return(target,key)=>{const bp=BindableProperty(target,key);registerInit(target,(vm=>{const fx=(cx,m)=>{vm[key]=m};const ivm=vm;for(const c of channel){ivm.registerDisposable(ivm.app.subscribe(c,fx))}}));return bp}}function BindableBroadcast(...channel){return(target,key)=>{const bp=BindableProperty(target,key);registerInit(target,(vm=>{const fx=t=>{const v=vm[key];for(const c of channel){vm.app.broadcast(c,v)}};const d=new AtomWatcher(vm,[key.split(".")],fx);d.init();vm.registerDisposable(d)}));return bp}}function Watch(target,key,descriptor){registerInit(target,(vm=>{const ivm=vm;if(descriptor&&descriptor.get){ivm.setupWatch(descriptor.get,(()=>{vm.refresh(key.toString())}));return}ivm.setupWatch(vm[key])}))}function CachedWatch(target,key,descriptor){const getMethod=descriptor.get;descriptor.get=()=>null;registerInit(target,(vm=>{const ivm=vm;const fieldName=`_${key}`;Object.defineProperty(ivm,key,{enumerable:true,configurable:true,get(){const c=ivm[fieldName]||(ivm[fieldName]={value:getMethod.apply(ivm)});return c.value}});ivm.setupWatch(getMethod,(()=>{ivm[fieldName]=null;AtomBinder.refreshValue(ivm,key)}))}))}function Validate(target,key,descriptor){const getMethod=descriptor.get;descriptor.get=()=>null;registerInit(target,(vm=>{const initialized={i:false};const ivm=vm;Object.defineProperty(ivm,key,{enumerable:true,configurable:true,get(){if(vm.mShouldValidate&&initialized.i){return getMethod.apply(this)}return null}});ivm.setupWatch(getMethod,(()=>{initialized.i=true;vm.refresh(key.toString())}),true,key.toString());return}))}_export({waitForReady,Receive,BindableReceive,BindableBroadcast,Watch,CachedWatch,Validate});return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata;__param=_tslib.__param},function(_App){App=_App.App},function(_Atom){Atom=_Atom.Atom},function(_coreAtomBinder){AtomBinder=_coreAtomBinder.AtomBinder},function(_coreAtomDisposableList){AtomDisposableList=_coreAtomDisposableList.AtomDisposableList},function(_coreAtomWatcher){AtomWatcher=_coreAtomWatcher.AtomWatcher},function(_coreBindableProperty){BindableProperty=_coreBindableProperty.BindableProperty},function(_diInject){Inject=_diInject.Inject},function(_baseTypes){registerInit=_baseTypes.registerInit}],execute:function(){_export("AtomViewModel",AtomViewModel=class AtomViewModel{get isReady(){return this.pendingInits===null}get errors(){const e=[];if(!this.mShouldValidate){return e}for(const v of this.validations){if(!v.initialized){return e}const error=this[v.name];if(error){e.push({name:v.name,error})}}return e}get parent(){return this.mParent}set parent(v){if(this.mParent&&this.mParent.mChildren){this.mParent.mChildren.remove(this)}this.mParent=v;if(v){const c=v.mChildren||(v.mChildren=[]);c.add(this);this.registerDisposable({dispose:()=>{c.remove(this)}})}}get isValid(){let valid=true;const validateWasFalse=this.mShouldValidate===false;this.mShouldValidate=true;for(const v of this.validations){if(!v.initialized){v.watcher.init(true);v.initialized=true}if(this[v.name]){if(validateWasFalse){AtomBinder.refreshValue(this,v.name)}valid=false}}if(this.mChildren){for(const child of this.mChildren){if(!child.isValid){valid=false}}}AtomBinder.refreshValue(this,"errors");return valid}constructor(app){this.app=app;this.disposables=null;this.validations=[];this.pendingInits=[];this.mShouldValidate=false;this.app.runAsync((()=>privateInit.apply(this)))}resetValidations(resetChildren=true){this.mShouldValidate=false;for(const v of this.validations){this.refresh(v.name)}if(resetChildren&&this.mChildren){for(const iterator of this.mChildren){iterator.resetValidations(resetChildren)}}}runAfterInit(f){if(this.pendingInits){this.pendingInits.push(f);return}f()}refresh(name){AtomBinder.refreshValue(this,name)}init(){return __awaiter(this,void 0,void 0,(function*(){}))}dispose(){if(this.disposables){this.disposables.dispose()}}registerDisposable(d){this.disposables=this.disposables||new AtomDisposableList;return this.disposables.add(d)}onReady(){}setupWatch(ft,proxy,forValidation,name){const d=new AtomWatcher(this,ft,proxy,this);if(forValidation){this.validations=this.validations||[];this.validations.push({name,watcher:d,initialized:false})}else{d.init()}return this.registerDisposable(d)}onPropertyChanged(name){}});_export("AtomViewModel",AtomViewModel=__decorate([__param(0,Inject),__metadata("design:paramtypes",[App])],AtomViewModel))}}}));AmdLoader.instance.setup("@web-atoms/core/dist/view-model/AtomViewModel");System.register(["tslib","../services/NavigationService","./AtomViewModel"],(function(_export,_context){"use strict";var __awaiter,NavigationService,AtomViewModel,AtomWindowViewModel;_export("AtomWindowViewModel",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_servicesNavigationService){NavigationService=_servicesNavigationService.NavigationService},function(_AtomViewModel){AtomViewModel=_AtomViewModel.AtomViewModel}],execute:function(){_export("AtomWindowViewModel",AtomWindowViewModel=class AtomWindowViewModel extends AtomViewModel{close(result){this.app.broadcast(`atom-window-close:${this.windowName}`,result)}cancel(){return __awaiter(this,void 0,void 0,(function*(){if(this.closeWarning){const navigationService=this.app.resolve(NavigationService);if(!(yield navigationService.confirm(this.closeWarning,"Are you sure?"))){return false}}this.app.broadcast(`atom-window-cancel:${this.windowName}`,"cancelled");return true}))}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/view-model/AtomWindowViewModel");System.register(["@web-atoms/core/src/web/images/close-button-hover.svg","../styles/AtomStyle"],(function(_export,_context){"use strict";var closeButtonHover,AtomStyle,AtomWindowStyle;_export("AtomWindowStyle",void 0);return{setters:[function(_webAtomsCoreSrcWebImagesCloseButtonHoverSvg){closeButtonHover=_webAtomsCoreSrcWebImagesCloseButtonHoverSvg.default},function(_stylesAtomStyle){AtomStyle=_stylesAtomStyle.AtomStyle}],execute:function(){_export("AtomWindowStyle",AtomWindowStyle=class AtomWindowStyle extends AtomStyle{get root(){return Object.assign(Object.assign({},this.frameHost),{subclasses:{" .close-button":this.closeButton," .command-bar-presenter":this.commandBarPresenter," .command-bar":this.commandBar," .content-presenter":this.contentPresenter," .content":this.content," .frame":this.frame," .title":this.title," .title-host":this.titleHost," .title-presenter":this.titlePresenter}})}get frameHost(){return{position:"absolute",left:0,right:0,top:0,bottom:0,backgroundColor:"#50505080"}}get frame(){return{position:"absolute",minHeight:"100px",minWidth:"300px",margin:"auto",border:"solid 1px #808080",borderRadius:"5px",backgroundColor:"white"}}get titlePresenter(){return{position:"relative",left:0,right:0,top:0,height:"37px"}}get titleHost(){return{position:"absolute",left:0,right:0,padding:"7px",minHeight:"32px",backgroundColor:"#404040",color:"white",top:0,borderTopRightRadius:"4px",borderTopLeftRadius:"4px"}}get title(){return{margin:"auto"}}get closeButton(){return{position:"absolute",right:"6px",top:"7px",width:"0",height:"0",padding:"9px",border:"none",backgroundColor:"transparent",backgroundImage:closeButtonHover}}get content(){return{}}get contentPresenter(){return{position:"relative",padding:"10px",background:"white"}}get commandBarPresenter(){return{left:0,right:0,bottom:0,padding:"5px",backgroundColor:"#d4d4d4",textAlign:"right",borderBottomRightRadius:"4px",borderBottomLeftRadius:"4px"}}get commandBar(){return{subclasses:{" button":{borderRadius:"3px",marginLeft:"5px",marginRight:"5px",padding:"4px 16px",backgroundColor:"whitesmoke",border:"1px solid gray"}}}}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/styles/AtomWindowStyle");System.register(["../../core/Colors","./AtomWindowStyle"],(function(_export,_context){"use strict";var Colors,AtomWindowStyle,AtomAlertWindowStyle;_export("default",void 0);return{setters:[function(_coreColors){Colors=_coreColors.default},function(_AtomWindowStyle){AtomWindowStyle=_AtomWindowStyle.AtomWindowStyle}],execute:function(){_export("default",AtomAlertWindowStyle=class AtomAlertWindowStyle extends AtomWindowStyle{get titleHost(){return Object.assign(Object.assign({},this.getBaseProperty(AtomAlertWindowStyle,"titleHost")),{color:Colors.black,backgroundColor:Colors.white})}get contentPresenter(){return Object.assign(Object.assign({},this.getBaseProperty(AtomAlertWindowStyle,"contentPresenter")),{padding:"0px 10px 30px 10px",textAlign:"center",color:Colors.rgba(51,51,51)})}get commandBar(){return Object.assign(Object.assign({},this.getBaseProperty(AtomAlertWindowStyle,"commandBar")),{textAlign:"center",subclasses:{" button":this.buttonStyle," .yes-button":{backgroundColor:Colors.rgba(0,128,0)}," .no-button":{backgroundColor:Colors.rgba(255,0,0)}}})}get buttonStyle(){return{border:"none",color:Colors.white,width:"50%",height:"40px"}}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/styles/AtomAlertWindowStyle");System.register(["./AtomControl"],(function(_export,_context){"use strict";var AtomControl,AtomTemplate;_export("AtomTemplate",void 0);return{setters:[function(_AtomControl){AtomControl=_AtomControl.AtomControl}],execute:function(){_export("AtomTemplate",AtomTemplate=class AtomTemplate extends AtomControl{})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/controls/AtomTemplate");System.register(["../../App","../../core/Bind","../../core/XNode","../styles/AtomWindowStyle","./AtomControl","./AtomTemplate"],(function(_export,_context){"use strict";var App,Bind,XNode,AtomWindowStyle,AtomControl,AtomTemplate,AtomWindowFrameTemplate,AtomWindowTitleTemplate,AtomWindow;function getTemplateParent(e){const tp=e._templateParent;if(tp){return tp}const p=e._logicalParent||e.parentElement;if(p){return getTemplateParent(p)}}_export({getTemplateParent,AtomWindowFrameTemplate:void 0,AtomWindow:void 0});return{setters:[function(_App){App=_App.App},function(_coreBind){Bind=_coreBind.default},function(_coreXNode){XNode=_coreXNode.default},function(_stylesAtomWindowStyle){AtomWindowStyle=_stylesAtomWindowStyle.AtomWindowStyle},function(_AtomControl){AtomControl=_AtomControl.AtomControl},function(_AtomTemplate){AtomTemplate=_AtomTemplate.AtomTemplate}],execute:function(){_export("AtomWindowFrameTemplate",AtomWindowFrameTemplate=class AtomWindowFrameTemplate extends AtomTemplate{get templateParent(){return getTemplateParent(this.element)}preCreate(){this.titlePresenter=null;this.commandPresenter=null;this.contentPresenter=null;super.preCreate()}create(){this.render(XNode.create("div",{class:"frame",styleWidth:Bind.oneWay((()=>this.templateParent.width||undefined)),styleHeight:Bind.oneWay((()=>this.templateParent.height||undefined)),styleLeft:Bind.oneWay((()=>this.templateParent.x>=0?`${this.templateParent.x}px`:undefined)),styleTop:Bind.oneWay((()=>this.templateParent.y>=0?`${this.templateParent.y}px`:undefined)),styleMarginTop:Bind.oneWay((()=>this.templateParent.x>=0?"0":undefined)),styleMarginLeft:Bind.oneWay((()=>this.templateParent.x>=0?"0":undefined)),styleMarginRight:Bind.oneWay((()=>this.templateParent.x>=0?"0":undefined)),styleMarginBottom:Bind.oneWay((()=>this.templateParent.x>=0?"0":undefined))},XNode.create("div",{class:"title-presenter",presenter:Bind.presenter("titlePresenter")}),XNode.create("div",{class:"content-presenter",presenter:Bind.presenter("contentPresenter")}),XNode.create("div",{class:"command-bar-presenter",presenter:Bind.presenter("commandPresenter")})))}});AtomWindowTitleTemplate=class AtomWindowTitleTemplate extends AtomControl{get templateParent(){return getTemplateParent(this.element)}create(){this.render(XNode.create("div",{class:"title-host"},XNode.create("span",{class:"title",text:Bind.oneWay((()=>this.templateParent.title))}),XNode.create("button",{class:"close-button",eventClick:Bind.event((()=>this.templateParent.close()))})))}};_export("AtomWindow",AtomWindow=class AtomWindow extends AtomControl{constructor(){super(...arguments);this.title="";this.width="";this.height="";this.x=-1;this.y=-1;this.titleTemplate=AtomWindowTitleTemplate;this.frameTemplate=AtomWindowFrameTemplate;this.isReady=false}get templateParent(){return getTemplateParent(this.element)}onPropertyChanged(name){switch(name){case"windowTemplate":case"commandTemplate":case"frameTemplate":this.invalidate();break}}close(){const vm=this.viewModel;if(vm.cancel){this.app.runAsync((()=>vm.cancel()));return}const message=`atom-window-cancel:${this.id}`;const device=this.app.resolve(App);device.broadcast(message,"cancelled")}onUpdateUI(){if(!(this.windowTemplate&&this.frameTemplate)){return}if(this.isReady){return}this.bind(this.element,"title",[["viewModel","title"]]);const frame=new this.frameTemplate(this.app);const fe=frame.element;const titleContent=new this.titleTemplate(this.app);titleContent.element._templateParent=this;frame.titlePresenter.appendChild(titleContent.element);this.setupDragging(frame.titlePresenter);this.element.classList.add("frame-host");fe._logicalParent=this.element;fe._templateParent=this;if(!frame.contentPresenter){throw new Error("ContentPresenter must be set inside frameTemplate before creating window")}const content=new this.windowTemplate(this.app);content.element._templateParent=this;this.setElementClass(content.element,{content:1});frame.contentPresenter.appendChild(content.element);if(this.commandTemplate){if(!frame.commandPresenter){throw new Error("CommandPresenter must be set inside frameTemplate"+"before creating window if command template is present")}const command=new this.commandTemplate(this.app);command.element._templateParent=this;this.setElementClass(command.element,{"command-bar":1});frame.commandPresenter.appendChild(command.element)}this.append(frame);setTimeout((()=>{this.centerFrame(frame.element)}),100);this.isReady=true}preCreate(){this.defaultControlStyle=AtomWindowStyle;this.title=null;this.width="";this.height="";this.x=-1;this.y=-1;this.windowTemplate=null;this.commandTemplate=null;this.titleTemplate=AtomWindowTitleTemplate;this.frameTemplate=AtomWindowFrameTemplate;super.preCreate();this.render(XNode.create("div",{styleClass:Bind.oneTime((()=>this.controlStyle.name))}))}centerFrame(e){if(!this.element){return}const parent=this.element.parentElement;if(parent===window||parent===document.body){return}if(parent.offsetWidth<=0||parent.offsetHeight<=0){setTimeout((()=>{this.centerFrame(e)}),100);return}if(e.offsetWidth<=0||e.offsetHeight<=0){setTimeout((()=>{this.centerFrame(e)}),100);return}const x=(parent.offsetWidth-e.offsetWidth)/2;const y=(parent.offsetHeight-e.offsetHeight)/2;this.x=x;this.y=y;e.style.opacity="1";this.element.style.removeProperty("opacity")}setupDragging(tp){this.bindEvent(tp,"mousedown",(startEvent=>{startEvent.preventDefault();const disposables=[];const offset={x:tp.parentElement.offsetLeft,y:tp.parentElement.offsetTop};const rect={x:startEvent.clientX,y:startEvent.clientY};const cursor=tp.style.cursor;tp.style.cursor="move";disposables.push(this.bindEvent(document.body,"mousemove",(moveEvent=>{const{clientX,clientY}=moveEvent;const dx=clientX-rect.x;const dy=clientY-rect.y;offset.x+=dx;offset.y+=dy;this.x=offset.x;this.y=offset.y;rect.x=clientX;rect.y=clientY})));disposables.push(this.bindEvent(document.body,"mouseup",(endEvent=>{tp.style.cursor=cursor;for(const iterator of disposables){iterator.dispose()}})))}))}});AtomWindow.windowTemplate=XNode.prepare("windowTemplate",true,true);AtomWindow.commandTemplate=XNode.prepare("commandTemplate",true,true);AtomWindow.titleTemplate=XNode.prepare("titleTemplate",true,true);AtomWindow.frameTemplate=XNode.prepare("frameTemplate",true,true)}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/controls/AtomWindow");System.register(["tslib","../../core/Bind","../../core/BindableProperty","../../core/XNode","../../view-model/AtomWindowViewModel","../styles/AtomAlertWindowStyle","./AtomWindow"],(function(_export,_context){"use strict";var __decorate,__metadata,Bind,BindableProperty,XNode,AtomWindowViewModel,AtomAlertWindowStyle,AtomWindow,AtomAlertWindow,AtomAlertViewModel;_export("default",void 0);return{setters:[function(_tslib){__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_coreBind){Bind=_coreBind.default},function(_coreBindableProperty){BindableProperty=_coreBindableProperty.BindableProperty},function(_coreXNode){XNode=_coreXNode.default},function(_viewModelAtomWindowViewModel){AtomWindowViewModel=_viewModelAtomWindowViewModel.AtomWindowViewModel},function(_stylesAtomAlertWindowStyle){AtomAlertWindowStyle=_stylesAtomAlertWindowStyle.default},function(_AtomWindow){AtomWindow=_AtomWindow.AtomWindow}],execute:function(){_export("default",AtomAlertWindow=class AtomAlertWindow extends AtomWindow{create(){this.defaultControlStyle=AtomAlertWindowStyle;this.viewModel=this.resolve(AtomAlertViewModel);this.render(XNode.create(AtomWindow,{title:Bind.oneWay((()=>this.viewModel.title))},XNode.create(AtomWindow.windowTemplate,null,XNode.create("div",{formattedText:Bind.oneWay((()=>this.viewModel.message))})),XNode.create(AtomWindow.commandTemplate,null,XNode.create("div",null,XNode.create("button",{class:"yes-button",styleDisplay:Bind.oneWay((()=>this.viewModel.okTitle?"":"none")),text:Bind.oneWay((()=>this.viewModel.okTitle)),eventClick:()=>this.viewModel.onOkClicked()}),XNode.create("button",{class:"no-button",styleMarginBottom:Bind.oneWay((()=>this.viewModel.cancelTitle?"0":"10px")),styleDisplay:Bind.oneWay((()=>this.viewModel.cancelTitle?"":"none")),text:Bind.oneWay((()=>this.viewModel.cancelTitle)),eventClick:()=>this.viewModel.onCancelClicked()})))))}});AtomAlertViewModel=class AtomAlertViewModel extends AtomWindowViewModel{onOkClicked(){this.close(true)}onCancelClicked(){this.cancel()}};__decorate([BindableProperty,__metadata("design:type",String)],AtomAlertViewModel.prototype,"title",void 0);__decorate([BindableProperty,__metadata("design:type",String)],AtomAlertViewModel.prototype,"message",void 0);__decorate([BindableProperty,__metadata("design:type",String)],AtomAlertViewModel.prototype,"okTitle",void 0);__decorate([BindableProperty,__metadata("design:type",String)],AtomAlertViewModel.prototype,"cancelTitle",void 0)}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/controls/AtomAlertWindow");System.register(["../../core/Colors","./AtomStyle"],(function(_export,_context){"use strict";var Colors,AtomStyle,AtomNotificationStyle;_export("default",void 0);return{setters:[function(_coreColors){Colors=_coreColors.default},function(_AtomStyle){AtomStyle=_AtomStyle.AtomStyle}],execute:function(){_export("default",AtomNotificationStyle=class AtomNotificationStyle extends AtomStyle{get root(){return{padding:"5px",borderRadius:"5px",border:"solid 1px lightgray",fontFamily:"Verdana, Geneva, sans-serif",fontSize:"16px",subclasses:{".error":{borderColor:Colors.red,color:Colors.red},".warning":{backgroundColor:Colors.lightYellow}}}}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/styles/AtomNotificationStyle");System.register(["tslib","../../core/Bind","../../core/BindableProperty","../../core/XNode","../styles/AtomNotificationStyle","./AtomControl"],(function(_export,_context){"use strict";var __decorate,__metadata,Bind,BindableProperty,XNode,AtomNotificationStyle,AtomControl,AtomNotification;_export("default",void 0);return{setters:[function(_tslib){__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_coreBind){Bind=_coreBind.default},function(_coreBindableProperty){BindableProperty=_coreBindableProperty.BindableProperty},function(_coreXNode){XNode=_coreXNode.default},function(_stylesAtomNotificationStyle){AtomNotificationStyle=_stylesAtomNotificationStyle.default},function(_AtomControl){AtomControl=_AtomControl.AtomControl}],execute:function(){_export("default",AtomNotification=class AtomNotification extends AtomControl{constructor(){super(...arguments);this.timeout=5e3;this.timeoutKey=null}onPropertyChanged(name){switch(name){case"timeout":this.setupTimeout();break}}create(){this.defaultControlStyle=AtomNotificationStyle;this.render(XNode.create("div",{formattedText:Bind.oneWay((()=>this.viewModel.message)),timeout:Bind.oneWay((()=>this.viewModel.timeout||5e3)),styleClass:Bind.oneWay((()=>({[this.controlStyle.name]:1,error:this.viewModel.type&&/error/i.test(this.viewModel.type),warning:this.viewModel.type&&/warn/i.test(this.viewModel.type)})))}))}setupTimeout(){if(this.timeoutKey){clearTimeout(this.timeoutKey)}this.timeoutKey=setTimeout((()=>{if(this.element){this.app.broadcast(`atom-window-close:${this.id}`,"")}}),this.timeout)}});__decorate([BindableProperty,__metadata("design:type",Number)],AtomNotification.prototype,"timeout",void 0)}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/controls/AtomNotification");System.register(["../styles/AtomStyle"],(function(_export,_context){"use strict";var AtomStyle,AtomPopupStyle;_export("AtomPopupStyle",void 0);return{setters:[function(_stylesAtomStyle){AtomStyle=_stylesAtomStyle.AtomStyle}],execute:function(){_export("AtomPopupStyle",AtomPopupStyle=class AtomPopupStyle extends AtomStyle{get root(){return{backgroundColor:"white",border:"solid 1px lightgray",padding:"5px",borderRadius:"5px"}}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/styles/AtomPopupStyle");System.register(["../../core/XNode","../../style/styled","./PopupService"],(function(_export,_context){"use strict";var XNode,styled,PopupWindow,css;function NotificationPopup({message,type}){return class Notification extends PopupWindow{create(){if(message instanceof XNode){this.render(XNode.create("div",{styleClass:{[css]:1,error:/error/i.test(type),warning:/warn/i.test(type)}},message));return}this.render(XNode.create("div",{styleClass:{[css]:1,error:/error/i.test(type),warning:/warn/i.test(type)},formattedText:message}))}}}_export("default",NotificationPopup);return{setters:[function(_coreXNode){XNode=_coreXNode.default},function(_styleStyled){styled=_styleStyled.default},function(_PopupService){PopupWindow=_PopupService.PopupWindow}],execute:function(){css=styled.css`
|
|
2674
2678
|
padding: 5px;
|
|
2675
2679
|
font-size: larger;
|
|
2676
2680
|
& .error {
|
|
@@ -2758,7 +2762,7 @@ html, body {
|
|
|
2758
2762
|
|
|
2759
2763
|
}
|
|
2760
2764
|
}
|
|
2761
|
-
`.installLocal();id=1;fixLinks=()=>{const mID=`m_id_${id++}`;setTimeout((x=>{const m=document.getElementById(x);if(!m){return}m.querySelectorAll("a").forEach((a=>a.target="_blank"))}),100,mID);return mID};_export("default",ConversationPage=class ConversationPage extends ContentPage{constructor(){super(...arguments);this.mails=[];this.search="";this.version=1}init(){return __awaiter(this,void 0,void 0,(function*(){this.element.className=css;const mb=this.parameters;const name=mb.emailAddress.name;const emailAddress=mb.emailAddress.emailAddress;const title=`${name} <${emailAddress}>`;if(isMobileView){this.title=title;this.headerRenderer=()=>XNode.create("div",{"data-layout":"row"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.search)),type:"search",placeholder:"Search"}))}else{this.titleRenderer=()=>XNode.create("div",{"data-layout":"row"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.search)),type:"search",placeholder:"Search"}),XNode.create("span",{text:title}))}this.registerDisposable(yield this.resolve(MailboxSocket).join(mb.mailboxID.toString(),{newMail:()=>{this.version++},mailRead:(mailboxID,emailAddressID,emailID)=>{for(const iterator of this.mailsRepeater.items){if(iterator.emailID!==emailID){continue}iterator.timeRead=DateTime.now;this.mailsRepeater.refreshItem(iterator)}}}));this.renderer=XNode.create("div",null,XNode.create(AtomRepeater,Object.assign({"data-layout":"vertical-flex",style:"flex-direction: column-reverse",presenter:Bind.presenter((c=>this.mailsRepeater=c)),items:this.mails},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.conversationService.list({start,size:10,search:this.search,mailboxID:mb.mailboxID,emailAddressID:mb.emailAddressID,version:this.version,cancelToken}))),{itemRenderer:thread=>{var _a,_b,_c,_d,_e,_f,_g,_h;const item=thread.email;const internalDate=(_b=(_a=item.dateSent)!==null&&_a!==void 0?_a:item.dateReceived)!==null&&_b!==void 0?_b:item.dateCreated;const sent=item.senderID===thread.mailboxID;const remaining=DateTime.from((_c=item.dateSent)!==null&&_c!==void 0?_c:DateTime.today).diff(DateTime.now);const isSending=thread.email.status==="scheduled"&&remaining.totalSeconds>3;const engagements=(_d=thread.email.engagements)!==null&&_d!==void 0?_d:[];const tags=((_e=thread.email.tags)!==null&&_e!==void 0?_e:"").split(",").filter((x=>x));const isDraft=item.status==="draft";let readStatus="";let readColor="";if(sent){const timeRead=thread.timeRead&&DateTime.from(thread.timeRead);if(timeRead){readStatus=`Read ${DateFormats.relative.short(timeRead)}`;readColor="green"}else if(item.status==="sent"){readStatus="Sent";readColor="yellow"}else if(item.status==="scheduled"){readStatus="In queue";readColor="lightblue"}else{readStatus="";readColor=""}}if(remaining.totalSeconds>0){setTimeout((()=>this.mailsRepeater.refreshItem(thread)),2e3)}return XNode.create("div",{class:itemCss,"data-sent":sent},XNode.create("div",{"data-layout":"row"},XNode.create("div",{"data-flex":"stretch-full",text:item.subject}),item.received?XNode.create("div",null):item.userID!==SocialMailApp.user.userID&&XNode.create("div",{"style-max-width":"20ch",title:(_f=item.senderUser)===null||_f===void 0?void 0:_f.displayName,text:(_g=item.senderUser)===null||_g===void 0?void 0:_g.displayName}),XNode.create("div",{text:DateFormats.relative.short(internalDate),title:DateFormats.withWeekDayAndTime(internalDate)}),XNode.create("i",{"data-click-event":"mail-options",class:"fa-light fa-square-ellipsis-vertical",title:"Options"})),XNode.create(LimitedText,{height:"40vh"},XNode.create("div",Object.assign({class:"message"},renderMail(thread)))),XNode.create("div",{class:"engagements"},readStatus&&XNode.create("i",{class:"fa-solid fa-circle-small","style-color":readColor,title:readStatus}),...engagements.map((x=>XNode.create("span",{"data-click-event":"view-engagements","data-cursor":"pointer",title:`View all ${x.engagement} ${x.count}`,text:`${x.engagement} ${x.count}`})))),((_h=item.attachments)===null||_h===void 0?void 0:_h.length)&&XNode.create("div",{class:"attachments","data-layout":"flex-wrap-padding"},...item.attachments.map(FilePreview)),XNode.create("div",{"data-layout":"row","data-margin-top":"default","data-margin-bottom":"default"},...tags.map((x=>XNode.create("span",{text:`#${x.startsWith("#")?x.substring(1):x}`})))),isDraft&&XNode.create("div",{"data-layout":"row","data-margin-top":"default"},XNode.create(EditIconTextButton,{"data-click-event":"edit-draft",text:"Edit Draft"}),XNode.create(DeleteIconTextButton,{"data-click-event":"delete-draft",text:"Delete Draft"})),!sent&&XNode.create("div",{"data-layout":"row","data-margin-top":"default"},XNode.create("i",{"data-click-event":"react-email",class:"fa-light fa-face-smile-plus",title:"React"}),XNode.create("i",{"data-click-event":"reply-email",class:"fas fa-reply",title:"Reply"}),XNode.create("i",{"data-click-event":"reply-all-email",class:"fa-solid fa-reply-all",title:"Reply All"}),XNode.create("i",{"data-click-event":"forward-email",class:"fa-solid fa-share-all",title:"Forward"})),isSending&&XNode.create("div",{"data-layout":"command-row","style-padding-left":"20px"},XNode.create("span",{text:`Sending in (${Math.ceil(remaining.totalSeconds)} sec) `}),XNode.create("button",{"data-click-event":"stop-email","data-layout":"stop-icon-button","style-margin-left":"20px"},XNode.create("i",{class:"fas fa-stop"}),"Stop")))}})));this.actionRenderer=()=>XNode.create(PopupActionButton,{icon:"fas fa-bars"},XNode.create("div",{"data-layout":"vertical-flex","style-width":"200px"},this.parameters.blocked?XNode.create(MenuItem,{"data-click-event":"unblock-sender",icon:"fas fa-badge-check",label:"Unblock Sender"}):XNode.create(MenuItem,{"data-click-event":"block-sender",icon:"fas fa-ban",label:"Block Sender"})));this.footerRenderer=()=>XNode.create("div",{"data-position":"absolute","style-right":"20px","style-bottom":"5px","data-layout":"row"},XNode.create(AddIconTextButton,{"event-click":()=>this.startCompose(),"data-margin-left":"auto",text:"Compose"}))}))}startCompose(thread=null,email=null){this.footerRenderer=()=>{var _a;return XNode.create(MiniComposeBox,{mailboxContact:thread!==null&&thread!==void 0?thread:this.parameters,draft:(_a=thread===null||thread===void 0?void 0:thread.email)!==null&&_a!==void 0?_a:email})}}onClick(a,e){var _a,_b,_c;return __awaiter(this,void 0,void 0,(function*(){const anchor=e.composed?e.composedPath().find((x=>x.tagName==="A")):AncestorEnumerator.find(e.target,(x=>x.tagName==="A"));if(!anchor){return}const href=anchor.getAttribute("href");if(!/^mailto\:/.test(href)){return}e.preventDefault();const url=new URL(href);const to=url.pathname;const subject=(_a=url.searchParams.get("subject"))!==null&&_a!==void 0?_a:"";const body=(_b=url.searchParams.get("body"))!==null&&_b!==void 0?_b:"";const inReplyTo=(_c=url.searchParams.get("inReplyTo"))!==null&&_c!==void 0?_c:"";const{item}=AtomRepeater.itemFromElement(e.target);const{email:{parentID,headerMessageID}}=item;const recipients=[EmailRecipient.create({emailAddressText:to})];const child=Email.create({senderID:this.parameters.mailboxID,subject,headers:JSON.stringify({inReplyTo}),parentID:inReplyTo===headerMessageID?parentID:null,received:false,recipients,htmlBody:`<div contentEditable="true">${body}</div>`});yield PageNavigator.pushPageForResult(ComposeMailPage,{mailboxID:child.senderID,mailbox:this.parameters.mailbox,model:child})}))}onEmailScheduled(email){if(email.senderID!==this.parameters.mailboxID){return}const{emailID}=email;const{emailAddressID,mailboxID}=this.parameters;this.mails.insert(0,MailboxContactEmail.create({emailID,emailAddressID,mailboxID,email}))}stopEmail(thread){return __awaiter(this,void 0,void 0,(function*(){yield this.conversationService.stopEmail(thread)}))}forwardEmail(thread,ce){return __awaiter(this,void 0,void 0,(function*(){void InlinePopup.show(ce.target,XNode.create("div",{"data-click-event":"none","data-click-animate":"none"},XNode.create(MenuItem,{eventClick:()=>CommonEvents.onEmailForward.dispatchEvent(thread),label:"As Inline Message"}),XNode.create(MenuItem,{eventClick:()=>CommonEvents.onEmailForwardAsAttachment.dispatchEvent(thread),label:"As Attachment"})),{alignment:"above"})}))}mailOptions(thread,ce){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){void InlinePopupControl.showPopup(ce.target,XNode.create("div",{"data-click-event":"none","data-click-animate":"none"},((_a=thread.email)===null||_a===void 0?void 0:_a.status)==="published"&&XNode.create(MenuItem,{icon:"fas fa-delete","data-click-event":"un-publish-mail"}),XNode.create(MenuItem,{eventClick:()=>PageNavigator.pushPage(MailDetailPage,thread.email),icon:"fas fa-eye",label:"Details"}),XNode.create(MenuItem,{href:apiPath(`/api/emails/logs/${thread.email.mimeFileID}/${thread.email.emailID}.eml`),icon:"fas fa-download",label:"Download"}),XNode.create(MenuItem,{"data-click-event":"open-logs",icon:"fa-regular fa-clock-rotate-left",label:"Logs"}),((_b=thread.email)===null||_b===void 0?void 0:_b.status)==="draft"&&XNode.create(MenuItem,{"data-click-event":"delete-draft",icon:"fa-regular fa-clock-rotate-left",label:"Delete Draft"})))}))}openLogs({emailID}){return __awaiter(this,void 0,void 0,(function*(){PageNavigator.pushPage(LogsPage,{emailID})}))}reactEmail(thread,ce){var _a;var _b;return __awaiter(this,void 0,void 0,(function*(){const emoji=yield EmojiPicker.show({parameters:{thread,preview:XNode.create("div",Object.assign({},renderMail(thread)))}});const{email:{emailID,subject}}=thread;const now=DateTime.now;const{emailAddressID}=thread;const email=Email.create({parentID:emailID,subject:"Re: "+subject,textBody:emoji+"\n",htmlBody:`<div>${emoji}</div>`,engagement:emoji,senderID:this.parameters.mailboxID,headers:JSON.stringify({"x-engagement":emoji}),dateSent:now,dateReceived:now,dateCreated:now,received:false,status:"scheduled",recipients:[EmailRecipient.create({emailAddressID})]});yield this.resolve(EntityService).save(email);const engagements=(_a=(_b=thread.email).engagements)!==null&&_a!==void 0?_a:_b.engagements=[];let e=engagements.find((x=>x.engagement===emoji));if(!e){e=EmailEngagement.create({engagement:emoji,emailID,count:1});engagements.add(e)}else{e.count++}this.mailsRepeater.refreshItem(thread)}))}replyEmail({email},ce){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){const parse=JSON.parse(email.headers);const replyTo=(_a=parse===null||parse===void 0?void 0:parse.replyTo)===null||_a===void 0?void 0:_a[0];const emailAddressText=this.parameters.emailAddress.emailAddress.toLocaleLowerCase();const name=email.senderName;const parentID=(_b=email.parentID)!==null&&_b!==void 0?_b:email.emailID;const recipients=[EmailRecipient.create({name,replyTo,emailAddressText})];if(/all/i.test(ce.type)){for(const{name:rName,emailAddressID,emailAddress:{emailAddress}}of email.recipients){if(recipients.some((er=>er.emailAddressText===emailAddress))){continue}if(this.parameters.mailboxID===emailAddressID){continue}recipients.push(EmailRecipient.create({name:rName,emailAddressText:emailAddress}))}}const subject=/^re\s?\:/i.test(email.subject)?email.subject:`Re: ${email.subject}`;const child=Email.create({senderID:this.parameters.mailboxID,subject,parentID,received:false,recipients,htmlBody:`<section>\n <section contentEditable="true">\n <p>\n <br/>\n <br/>\n </p>\n </section>\n <blockquote data-type="reply-to" style="margin-inline-start: 20px; margin-inline-end: 0; border-left: solid 1px lightgray; padding-left: 10px;">\n <details>\n <summary>From: ${email.senderName} ${`<${this.parameters.emailAddress.emailAddress}>`}<br/>\n Subject: ${email.subject}\n </summary>\n <div>\n\n ${email.htmlBody}\n </div>\n </details>\n </blockquote>\n </section>`});this.startCompose(null,child)}))}blockSender(){return __awaiter(this,void 0,void 0,(function*(){yield this.conversationService.block(this.parameters)}))}unblockSender(){return __awaiter(this,void 0,void 0,(function*(){yield this.conversationService.block(this.parameters)}))}viewEngagements(thread){return __awaiter(this,void 0,void 0,(function*(){PageNavigator.pushPage(EngagementDetails,thread)}))}deleteDraft(mce){return __awaiter(this,void 0,void 0,(function*(){yield this.conversationService.delete(mce.email);this.mails.remove(mce)}))}});__decorate([InjectProperty,__metadata("design:type",ConversationService)],ConversationPage.prototype,"conversationService",void 0);__decorate([Action({onEvent:"edit-draft"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object,Object]),__metadata("design:returntype",void 0)],ConversationPage.prototype,"startCompose",null);__decorate([Action({onEvent:"click"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object,PointerEvent]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"onClick",null);__decorate([Action({onEvent:CommonEvents.onEmailScheduled}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",void 0)],ConversationPage.prototype,"onEmailScheduled",null);__decorate([Action({onEvent:"stop-email"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"stopEmail",null);__decorate([Action({onEvent:"forward-email"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object,CustomEvent]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"forwardEmail",null);__decorate([Action({onEvent:"mail-options"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object,CustomEvent]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"mailOptions",null);__decorate([Action({onEvent:"open-logs"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"openLogs",null);__decorate([Action({onEvent:"react-email"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object,CustomEvent]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"reactEmail",null);__decorate([Action({onEvent:["reply-email","reply-all-email"]}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object,CustomEvent]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"replyEmail",null);__decorate([Action({onEvent:"block-sender",confirm:"Are you sure you want to block this sender?"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"blockSender",null);__decorate([Action({onEvent:"unblock-sender",confirm:"Are you sure you want to unblock this sender?"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"unblockSender",null);__decorate([Action({onEvent:"view-engagements"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"viewEngagements",null);__decorate([Action({onEvent:"delete-draft",confirm:"Are you sure you want to delete this draft?"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"deleteDraft",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/page/mails/ConversationPage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../common/pages/mailboxes/services/MailboxService","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomRepeater","../../../common/controls/repeater/InfiniteRepeater","../../../common/NumberFormats","../../commands/AppCommands","@web-atoms/core/dist/core/Bind"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,MailboxService,InjectProperty,XNode,AtomRepeater,InfiniteRepeater,toFileSize,AppCommands,Bind,ChooseMailboxPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_commonPagesMailboxesServicesMailboxService){MailboxService=_commonPagesMailboxesServicesMailboxService.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_commonControlsRepeaterInfiniteRepeater){InfiniteRepeater=_commonControlsRepeaterInfiniteRepeater.default},function(_commonNumberFormats){toFileSize=_commonNumberFormats.toFileSize},function(_commandsAppCommands){AppCommands=_commandsAppCommands.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default}],execute:function(){_export("default",ChooseMailboxPage=class ChooseMailboxPage extends PopupWindowPage{constructor(){super(...arguments);this.mailboxes=[];this.search=""}init(){return __awaiter(this,void 0,void 0,(function*(){this.title="Open Mailbox";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({"data-layout":"list",items:this.mailboxes},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.mailboxService.list({search:this.search,cancelToken,start}))),{itemRenderer:item=>XNode.create("div",null,XNode.create("a",{"data-click-event":"route",href:AppCommands.openMailbox.displayRoute({id:item.mailboxID}),text:item.emailAddress.emailAddress}),XNode.create("span",{text:toFileSize(item.storage)}))})))}))}});__decorate([InjectProperty,__metadata("design:type",MailboxService)],ChooseMailboxPage.prototype,"mailboxService",void 0)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/page/mails/ChooseMailboxPage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../web/page/files/service/CloudFileService","@web-atoms/core/dist/core/XNode","../../controls/tree/TreeView","../../../model/model","@web-atoms/core/dist/core/InjectProperty","../../controls/buttons/IconButton","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/style/styled","../../../services/mime-service/MimeMessage"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,CloudFileService,XNode,TreeView,AppFile,InjectProperty,SaveIconTextButton,Bind,styled,MimeMessage,ChooserTemplatePage,css;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_webPageFilesServiceCloudFileService){CloudFileService=_webPageFilesServiceCloudFileService.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_controlsTreeTreeView){TreeView=_controlsTreeTreeView.default},function(_modelModel){AppFile=_modelModel.AppFile},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default},function(_servicesMimeServiceMimeMessage){MimeMessage=_servicesMimeServiceMimeMessage.default}],execute:function(){css=styled.css`
|
|
2765
|
+
`.installLocal();id=1;fixLinks=()=>{const mID=`m_id_${id++}`;setTimeout((x=>{const m=document.getElementById(x);if(!m){return}m.querySelectorAll("a").forEach((a=>a.target="_blank"))}),100,mID);return mID};_export("default",ConversationPage=class ConversationPage extends ContentPage{constructor(){super(...arguments);this.mails=[];this.search="";this.version=1}init(){return __awaiter(this,void 0,void 0,(function*(){this.element.className=css;const mb=this.parameters;const name=mb.emailAddress.name;const emailAddress=mb.emailAddress.emailAddress;const title=`${name} <${emailAddress}>`;if(isMobileView){this.title=title;this.headerRenderer=()=>XNode.create("div",{"data-layout":"row"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.search)),type:"search",placeholder:"Search"}))}else{this.titleRenderer=()=>XNode.create("div",{"data-layout":"row"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.search)),type:"search",placeholder:"Search"}),XNode.create("span",{text:title}))}this.registerDisposable(yield this.resolve(MailboxSocket).join(mb.mailboxID.toString(),{newMail:()=>{this.version++},mailRead:(mailboxID,emailAddressID,emailID)=>{for(const iterator of this.mailsRepeater.items){if(iterator.emailID!==emailID){continue}iterator.timeRead=DateTime.now;this.mailsRepeater.refreshItem(iterator)}}}));this.renderer=XNode.create("div",null,XNode.create(AtomRepeater,Object.assign({"data-layout":"vertical-flex",style:"flex-direction: column-reverse",presenter:Bind.presenter((c=>this.mailsRepeater=c)),items:this.mails},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.conversationService.list({start,size:10,search:this.search,mailboxID:mb.mailboxID,emailAddressID:mb.emailAddressID,version:this.version,cancelToken}))),{itemRenderer:thread=>{var _a,_b,_c,_d,_e,_f,_g,_h;const item=thread.email;const internalDate=(_b=(_a=item.dateSent)!==null&&_a!==void 0?_a:item.dateReceived)!==null&&_b!==void 0?_b:item.dateCreated;const sent=item.senderID===thread.mailboxID;const remaining=DateTime.from((_c=item.dateSent)!==null&&_c!==void 0?_c:DateTime.today).diff(DateTime.now);const isSending=thread.email.status==="scheduled"&&remaining.totalSeconds>3;const engagements=(_d=thread.email.engagements)!==null&&_d!==void 0?_d:[];const tags=((_e=thread.email.tags)!==null&&_e!==void 0?_e:"").split(",").filter((x=>x));const isDraft=item.status==="draft";let readStatus="";let readColor="";if(sent){const timeRead=thread.timeRead&&DateTime.from(thread.timeRead);if(timeRead){readStatus=`Read ${DateFormats.relative.short(timeRead)}`;readColor="green"}else if(item.status==="sent"){readStatus="Sent";readColor="yellow"}else if(item.status==="scheduled"){readStatus="In queue";readColor="lightblue"}else{readStatus="";readColor=""}}if(remaining.totalSeconds>0){setTimeout((()=>this.mailsRepeater.refreshItem(thread)),2e3)}return XNode.create("div",{class:itemCss,"data-sent":sent},XNode.create("div",{"data-layout":"row"},XNode.create("div",{"data-flex":"stretch-full",text:item.subject}),item.received?XNode.create("div",null):item.userID!==SocialMailApp.user.userID&&XNode.create("div",{"style-max-width":"20ch",title:(_f=item.senderUser)===null||_f===void 0?void 0:_f.displayName,text:(_g=item.senderUser)===null||_g===void 0?void 0:_g.displayName}),XNode.create("div",{text:DateFormats.relative.short(internalDate),title:DateFormats.withWeekDayAndTime(internalDate)}),XNode.create("i",{"data-click-event":"mail-options",class:"fa-light fa-square-ellipsis-vertical",title:"Options"})),XNode.create(LimitedText,{height:"40vh"},XNode.create("div",Object.assign({class:"message"},renderMail(thread)))),XNode.create("div",{class:"engagements"},readStatus&&XNode.create("i",{class:"fa-solid fa-circle-small","style-color":readColor,title:readStatus}),...engagements.map((x=>XNode.create("span",{"data-click-event":"view-engagements","data-cursor":"pointer",title:`View all ${x.engagement} ${x.count}`,text:`${x.engagement} ${x.count}`})))),((_h=item.attachments)===null||_h===void 0?void 0:_h.length)&&XNode.create("div",{class:"attachments","data-layout":"flex-wrap-padding"},...item.attachments.map(FilePreview)),XNode.create("div",{"data-layout":"row","data-margin-top":"default","data-margin-bottom":"default"},...tags.map((x=>XNode.create("span",{text:`#${x.startsWith("#")?x.substring(1):x}`})))),isDraft&&XNode.create("div",{"data-layout":"row","data-margin-top":"default"},XNode.create(EditIconTextButton,{"data-click-event":"edit-draft",text:"Edit Draft"}),XNode.create(DeleteIconTextButton,{"data-click-event":"delete-draft",text:"Delete Draft"})),!sent&&XNode.create("div",{"data-layout":"row","data-margin-top":"default"},XNode.create("i",{"data-click-event":"react-email",class:"fa-light fa-face-smile-plus",title:"React"}),XNode.create("i",{"data-click-event":"reply-email",class:"fas fa-reply",title:"Reply"}),XNode.create("i",{"data-click-event":"reply-all-email",class:"fa-solid fa-reply-all",title:"Reply All"}),XNode.create("i",{"data-click-event":"forward-email",class:"fa-solid fa-share-all",title:"Forward"})),isSending&&XNode.create("div",{"data-layout":"command-row","style-padding-left":"20px"},XNode.create("span",{text:`Sending in (${Math.ceil(remaining.totalSeconds)} sec) `}),XNode.create("button",{"data-click-event":"stop-email","data-layout":"stop-icon-button","style-margin-left":"20px"},XNode.create("i",{class:"fas fa-stop"}),"Stop")))}})));this.actionRenderer=()=>XNode.create(PopupActionButton,{icon:"fas fa-bars"},XNode.create("div",{"data-layout":"vertical-flex","style-width":"200px"},this.parameters.blocked?XNode.create(MenuItem,{"data-click-event":"unblock-sender",icon:"fas fa-badge-check",label:"Unblock Sender"}):XNode.create(MenuItem,{"data-click-event":"block-sender",icon:"fas fa-ban",label:"Block Sender"})));this.showComposeButton()}))}showComposeButton(email=null){if(email){this.mailsRepeater.items.remove(email)}this.footerRenderer=()=>XNode.create("div",{"data-position":"absolute","style-right":"20px","style-bottom":"5px","data-layout":"row"},XNode.create(AddIconTextButton,{"event-click":()=>this.startCompose(),"data-margin-left":"auto",text:"Compose"}))}startCompose(thread=null,email=null){this.footerRenderer=()=>{var _a;return XNode.create(MiniComposeBox,{mailboxContact:thread!==null&&thread!==void 0?thread:this.parameters,draft:(_a=thread===null||thread===void 0?void 0:thread.email)!==null&&_a!==void 0?_a:email})}}onClick(a,e){var _a,_b,_c;return __awaiter(this,void 0,void 0,(function*(){const anchor=e.composed?e.composedPath().find((x=>x.tagName==="A")):AncestorEnumerator.find(e.target,(x=>x.tagName==="A"));if(!anchor){return}const href=anchor.getAttribute("href");if(!/^mailto\:/.test(href)){return}e.preventDefault();const url=new URL(href);const to=url.pathname;const subject=(_a=url.searchParams.get("subject"))!==null&&_a!==void 0?_a:"";const body=(_b=url.searchParams.get("body"))!==null&&_b!==void 0?_b:"";const inReplyTo=(_c=url.searchParams.get("inReplyTo"))!==null&&_c!==void 0?_c:"";const{item}=AtomRepeater.itemFromElement(e.target);const{email:{parentID,headerMessageID}}=item;const recipients=[EmailRecipient.create({emailAddressText:to})];const child=Email.create({senderID:this.parameters.mailboxID,subject,headers:JSON.stringify({inReplyTo}),parentID:inReplyTo===headerMessageID?parentID:null,received:false,recipients,htmlBody:`<div contentEditable="true">${body}</div>`});yield PageNavigator.pushPageForResult(ComposeMailPage,{mailboxID:child.senderID,mailbox:this.parameters.mailbox,model:child})}))}onEmailScheduled(email){if(email.senderID!==this.parameters.mailboxID){return}const{emailID}=email;const{emailAddressID,mailboxID}=this.parameters;const index=this.mails.findIndex((x=>x.emailID===emailID));if(index!==-1){this.mails.removeAt(index)}this.mails.insert(0,MailboxContactEmail.create({emailID,emailAddressID,mailboxID,email}))}stopEmail(thread){return __awaiter(this,void 0,void 0,(function*(){yield this.conversationService.stopEmail(thread)}))}forwardEmail(thread,ce){return __awaiter(this,void 0,void 0,(function*(){void InlinePopup.show(ce.target,XNode.create("div",{"data-click-event":"none","data-click-animate":"none"},XNode.create(MenuItem,{eventClick:()=>CommonEvents.onEmailForward.dispatchEvent(thread),label:"As Inline Message"}),XNode.create(MenuItem,{eventClick:()=>CommonEvents.onEmailForwardAsAttachment.dispatchEvent(thread),label:"As Attachment"})),{alignment:"above"})}))}mailOptions(thread,ce){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){void InlinePopupControl.showPopup(ce.target,XNode.create("div",{"data-click-event":"none","data-click-animate":"none"},((_a=thread.email)===null||_a===void 0?void 0:_a.status)==="published"&&XNode.create(MenuItem,{icon:"fas fa-delete","data-click-event":"un-publish-mail"}),XNode.create(MenuItem,{eventClick:()=>PageNavigator.pushPage(MailDetailPage,thread.email),icon:"fas fa-eye",label:"Details"}),XNode.create(MenuItem,{href:apiPath(`/api/emails/logs/${thread.email.mimeFileID}/${thread.email.emailID}.eml`),icon:"fas fa-download",label:"Download"}),XNode.create(MenuItem,{"data-click-event":"open-logs",icon:"fa-regular fa-clock-rotate-left",label:"Logs"}),((_b=thread.email)===null||_b===void 0?void 0:_b.status)==="draft"&&XNode.create(MenuItem,{"data-click-event":"delete-draft",icon:"fa-regular fa-clock-rotate-left",label:"Delete Draft"})))}))}openLogs({emailID}){return __awaiter(this,void 0,void 0,(function*(){PageNavigator.pushPage(LogsPage,{emailID})}))}reactEmail(thread,ce){var _a;var _b;return __awaiter(this,void 0,void 0,(function*(){const emoji=yield EmojiPicker.show({parameters:{thread,preview:XNode.create("div",Object.assign({},renderMail(thread)))}});const{email:{emailID,subject}}=thread;const now=DateTime.now;const{emailAddressID}=thread;const email=Email.create({parentID:emailID,subject:"Re: "+subject,textBody:emoji+"\n",htmlBody:`<div>${emoji}</div>`,engagement:emoji,senderID:this.parameters.mailboxID,headers:JSON.stringify({"x-engagement":emoji}),dateSent:now,dateReceived:now,dateCreated:now,received:false,status:"scheduled",recipients:[EmailRecipient.create({emailAddressID})]});yield this.resolve(EntityService).save(email);const engagements=(_a=(_b=thread.email).engagements)!==null&&_a!==void 0?_a:_b.engagements=[];let e=engagements.find((x=>x.engagement===emoji));if(!e){e=EmailEngagement.create({engagement:emoji,emailID,count:1});engagements.add(e)}else{e.count++}this.mailsRepeater.refreshItem(thread)}))}replyEmail(mce,ce){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){const{email}=mce;const parse=JSON.parse(email.headers);const replyTo=(_a=parse===null||parse===void 0?void 0:parse.replyTo)===null||_a===void 0?void 0:_a[0];const emailAddressText=this.parameters.emailAddress.emailAddress.toLocaleLowerCase();const name=email.senderName;const parentID=(_b=email.parentID)!==null&&_b!==void 0?_b:email.emailID;const recipients=[EmailRecipient.create({name,replyTo,emailAddressID:this.parameters.emailAddressID,emailAddressText})];if(/all/i.test(ce.type)){for(const{name:rName,emailAddressID,emailAddress:{emailAddress}}of email.recipients){if(recipients.some((er=>er.emailAddressText===emailAddress))){continue}if(this.parameters.mailboxID===emailAddressID){continue}recipients.push(EmailRecipient.create({name:rName,emailAddressID,emailAddressText:emailAddress}))}}const subject=/^re\s?\:/i.test(email.subject)?email.subject:`Re: ${email.subject}`;const child=Email.create({senderID:this.parameters.mailboxID,subject,parentID,received:false,recipients,htmlBody:`<section>\n <section contentEditable="true">\n <p>\n <br/>\n <br/>\n </p>\n </section>\n <blockquote data-type="reply-to" style="margin-inline-start: 20px; margin-inline-end: 0; border-left: solid 1px lightgray; padding-left: 10px;">\n <details>\n <summary>From: ${email.senderName} ${`<${this.parameters.emailAddress.emailAddress}>`}<br/>\n Subject: ${email.subject}\n </summary>\n <div>\n\n ${email.htmlBody}\n </div>\n </details>\n </blockquote>\n </section>`});this.startCompose(null,child)}))}blockSender(){return __awaiter(this,void 0,void 0,(function*(){yield this.conversationService.block(this.parameters)}))}unblockSender(){return __awaiter(this,void 0,void 0,(function*(){yield this.conversationService.block(this.parameters)}))}viewEngagements(thread){return __awaiter(this,void 0,void 0,(function*(){PageNavigator.pushPage(EngagementDetails,thread)}))}deleteDraft(mce){return __awaiter(this,void 0,void 0,(function*(){yield this.conversationService.delete(mce.email);this.mails.remove(mce)}))}});__decorate([InjectProperty,__metadata("design:type",ConversationService)],ConversationPage.prototype,"conversationService",void 0);__decorate([Action({onEvent:"emailSent"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",void 0)],ConversationPage.prototype,"showComposeButton",null);__decorate([Action({onEvent:"edit-draft"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object,Object]),__metadata("design:returntype",void 0)],ConversationPage.prototype,"startCompose",null);__decorate([Action({onEvent:"click"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object,PointerEvent]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"onClick",null);__decorate([Action({onEvent:CommonEvents.onEmailScheduled}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",void 0)],ConversationPage.prototype,"onEmailScheduled",null);__decorate([Action({onEvent:"stop-email"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"stopEmail",null);__decorate([Action({onEvent:"forward-email"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object,CustomEvent]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"forwardEmail",null);__decorate([Action({onEvent:"mail-options"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object,CustomEvent]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"mailOptions",null);__decorate([Action({onEvent:"open-logs"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"openLogs",null);__decorate([Action({onEvent:"react-email"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object,CustomEvent]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"reactEmail",null);__decorate([Action({onEvent:["reply-email","reply-all-email"]}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object,CustomEvent]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"replyEmail",null);__decorate([Action({onEvent:"block-sender",confirm:"Are you sure you want to block this sender?"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"blockSender",null);__decorate([Action({onEvent:"unblock-sender",confirm:"Are you sure you want to unblock this sender?"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"unblockSender",null);__decorate([Action({onEvent:"view-engagements"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"viewEngagements",null);__decorate([Action({onEvent:"delete-draft",confirm:"Are you sure you want to delete this draft?"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],ConversationPage.prototype,"deleteDraft",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/page/mails/ConversationPage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../common/pages/mailboxes/services/MailboxService","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomRepeater","../../../common/controls/repeater/InfiniteRepeater","../../../common/NumberFormats","../../commands/AppCommands","@web-atoms/core/dist/core/Bind"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,MailboxService,InjectProperty,XNode,AtomRepeater,InfiniteRepeater,toFileSize,AppCommands,Bind,ChooseMailboxPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_commonPagesMailboxesServicesMailboxService){MailboxService=_commonPagesMailboxesServicesMailboxService.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_commonControlsRepeaterInfiniteRepeater){InfiniteRepeater=_commonControlsRepeaterInfiniteRepeater.default},function(_commonNumberFormats){toFileSize=_commonNumberFormats.toFileSize},function(_commandsAppCommands){AppCommands=_commandsAppCommands.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default}],execute:function(){_export("default",ChooseMailboxPage=class ChooseMailboxPage extends PopupWindowPage{constructor(){super(...arguments);this.mailboxes=[];this.search=""}init(){return __awaiter(this,void 0,void 0,(function*(){this.title="Open Mailbox";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({"data-layout":"list",items:this.mailboxes},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.mailboxService.list({search:this.search,cancelToken,start}))),{itemRenderer:item=>XNode.create("div",null,XNode.create("a",{"data-click-event":"route",href:AppCommands.openMailbox.displayRoute({id:item.mailboxID}),text:item.emailAddress.emailAddress}),XNode.create("span",{text:toFileSize(item.storage)}))})))}))}});__decorate([InjectProperty,__metadata("design:type",MailboxService)],ChooseMailboxPage.prototype,"mailboxService",void 0)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/page/mails/ChooseMailboxPage");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../web/page/files/service/CloudFileService","@web-atoms/core/dist/core/XNode","../../controls/tree/TreeView","../../../model/model","@web-atoms/core/dist/core/InjectProperty","../../controls/buttons/IconButton","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/style/styled","../../../services/mime-service/MimeMessage"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,PopupWindowPage,CloudFileService,XNode,TreeView,AppFile,InjectProperty,SaveIconTextButton,Bind,styled,MimeMessage,ChooserTemplatePage,css;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsWebControlsDistMobileAppMobileApp){PopupWindowPage=_webAtomsWebControlsDistMobileAppMobileApp.PopupWindowPage},function(_webPageFilesServiceCloudFileService){CloudFileService=_webPageFilesServiceCloudFileService.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_controlsTreeTreeView){TreeView=_controlsTreeTreeView.default},function(_modelModel){AppFile=_modelModel.AppFile},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default},function(_servicesMimeServiceMimeMessage){MimeMessage=_servicesMimeServiceMimeMessage.default}],execute:function(){css=styled.css`
|
|
2762
2766
|
display: grid;
|
|
2763
2767
|
grid-template-columns: auto auto;
|
|
2764
2768
|
|
|
@@ -4679,7 +4683,7 @@ display: grid;
|
|
|
4679
4683
|
}
|
|
4680
4684
|
|
|
4681
4685
|
}
|
|
4682
|
-
`.installGlobal("[data-folder-view=folder-view]");getExtension=name=>{const index=name.lastIndexOf(".");if(index===-1){return"dat"}return name.substring(index+1)};_export("default",FolderViewControl=class FolderViewControl extends AtomControl{constructor(app,e){super(app,e);this.mode="thumbnails";this.selectedFolder=null;this.root=null;this.search="";this.version=0;this.selectedFiles=[];this.files=[];this.element.setAttribute("data-folder-view","folder-view");this.runAfterInit((()=>this.app.runAsync((()=>this.init()))))}init(){return __awaiter(this,void 0,void 0,(function*(){this.renderer=XNode.create("div",{files:Bind.oneWayAsync(((c,e,cancelToken)=>this.cloudFileService.files({search:this.search,folder:this.selectedFolder,version:this.version,cancelToken})))},XNode.create(FolderTreeView,{class:"folder-tree",folderId:Bind.oneWay((()=>this.root.appFileID)),presenter:Bind.presenter((c=>this.folderTree=c)),selectedItem:Bind.twoWaysImmediate((()=>this.selectedFolder))}),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,{allowMultipleSelection:true,selectedItems:this.selectedFiles,header:true,headerRenderer:()=>XNode.create("header",null,XNode.create(SelectAll,{items:Bind.oneWay((()=>this.files)),selectedItems:this.selectedFiles})),itemRenderer:Bind.oneWay((()=>this.getItemRenderere(this.mode))),items:Bind.oneWay((()=>this.files))})),XNode.create("div",{"style-display":Bind.oneWay((()=>this.selectedFiles.length>0))},XNode.create(DeleteIconTextButton,{"data-click-event":"delete-files"})))}))}getItemRenderere(m){switch(this.mode){case"list":return f=>this.renderFile(f)}return f=>this.renderPreview(f)}renderPreview(item){if(/^(image|video)\//i.test(item.contentType)){return XNode.create("div",{class:"media-file"},XNode.create(SelectorCheckBox,null),XNode.create("label",{class:"file-name",text:item.name}),XNode.create("img",{class:"file-preview",title:item.name,src:apiPath(`/api/files/webp(300)/${item.appFileID}/${item.fileContentID}/${item.name}.300.webp`)}))}return XNode.create("div",{class:"media-file"},XNode.create("img",null))}renderFile(item){if(item.isFolder){return XNode.create("div",null,XNode.create(SelectorCheckBox,null),XNode.create("div",null,XNode.create("i",{class:item.isFolder?"fiv-viv fiv-icon-folder":`fiv-viv fiv-icon-${getExtension(item.name)}`}),XNode.create("span",{"data-click-event":"open-folder",class:"file-link",text:item.name,"data-padding-left":"auto"})),XNode.create("div",null,item.isShared&&XNode.create("i",{title:"Shared",class:"fas fa-folder-user"})),XNode.create("div",{text:toFileSize(item.fileSize)}),XNode.create("div",null),XNode.create("div",null,XNode.create("i",{"data-click-event":"edit-shares",class:"fas fa-share"})))}return XNode.create("div",null,XNode.create(SelectorCheckBox,null),XNode.create("div",null,XNode.create("i",{class:item.isFolder?"fiv-viv fiv-icon-folder":`fiv-viv fiv-icon-${getExtension(item.name)}`}),XNode.create("a",{href:item.url,target:"_blank",text:item.name,"data-margin-left":"default"})),XNode.create("div",null,item.isShared&&XNode.create("i",{title:"Shared",class:"fas fa-folder-user"})),XNode.create("div",{text:toFileSize(item.fileSize)}),XNode.create("div",null,XNode.create("a",{href:item.downloadUrl,target:"_blank",download:true},XNode.create("i",{class:"fas fa-download"}))),XNode.create("div",null,XNode.create("i",{"data-click-event":"edit-shares",class:"fas fa-share"})))}deleteFiles(){return __awaiter(this,void 0,void 0,(function*(){const copy=[].concat(this.selectedFiles);while(copy.length){const slice=copy.splice(0,10);yield this.cloudFileService.delete(slice);for(const iterator of slice){this.selectedFiles.remove(iterator);this.files.remove(iterator)}}this.version++}))}onFilesUploaded(){return __awaiter(this,void 0,void 0,(function*(){this.version++}))}});__decorate([InjectProperty,__metadata("design:type",CloudFileService)],FolderViewControl.prototype,"cloudFileService",void 0);__decorate([Action({onEvent:"delete-files",confirm:"Are you sure you want to delete selected files?"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],FolderViewControl.prototype,"deleteFiles",null);__decorate([Action({onEvent:"files-available"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],FolderViewControl.prototype,"onFilesUploaded",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/folder-view/FolderViewControl");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/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(["@web-atoms/core/dist/core/XNode","@web-atoms/email-dom/dist/DomToString"],(function(_export,_context){"use strict";var XNode,DomToString,Offers;return{setters:[function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsEmailDomDistDomToString){DomToString=_webAtomsEmailDomDistDomToString.default}],execute:function(){_export("Offers",Offers=()=>DomToString(XNode.create("main",null,XNode.create("section",{"styler-layout":"column"}),XNode.create("section",{"styler-layout":"column"}))))}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/products/html/Offsers");System.register(["@web-atoms/core/dist/core/XNode","@web-atoms/email-dom/dist/DomToString"],(function(_export,_context){"use strict";var XNode,DomToString,Specifications;return{setters:[function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsEmailDomDistDomToString){DomToString=_webAtomsEmailDomDistDomToString.default}],execute:function(){_export("Specifications",Specifications=()=>DomToString(XNode.create("main",null,XNode.create("section",{"styler-layout":"columns-2"},XNode.create("table",null,XNode.create("thead",null,XNode.create("tr",null,XNode.create("th",{colspan:2},"Spec 1"))),XNode.create("tbody",null,XNode.create("tr",null,XNode.create("td",null,"Size"),XNode.create("td",null,"Medium")),XNode.create("tr",null,XNode.create("td",null,"Color"),XNode.create("td",null,"Transparent")))),XNode.create("table",null,XNode.create("thead",null,XNode.create("tr",null,XNode.create("th",{colspan:2},"Spec 1"))),XNode.create("tbody",null,XNode.create("tr",null,XNode.create("td",null,"Size"),XNode.create("td",null,"Medium")),XNode.create("tr",null,XNode.create("td",null,"Color"),XNode.create("td",null,"Transparent"))))))))}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/products/html/Specifications");System.register(["tslib","@web-atoms/core/dist/web/controls/AtomControl","../../../../model/model","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/web-controls/dist/basic/Select","../../../Sql","../../../controls/buttons/IconButton","../../../controls/collection-editor/CollectionEditorEx","../../../controls/reference-editor/ReferenceEditor","../../../controls/tags/TagChips","../../../date/DateFormats","../../../folder-view/FolderViewControl","../folders/EditItemFolderPage","./prices/EditItemPricePage","@web-atoms/core/dist/core/BindableProperty","../../../controls/drag-drop/FilesDragDrop","@web-atoms/web-controls/dist/basic/UploadEvent","@web-atoms/core/dist/view-model/Action","../../../fileUrl","@web-atoms/core/dist/core/InjectProperty","../../../../services/store/StoreItemService","@web-atoms/web-controls/dist/basic/InlinePopup","@web-atoms/web-controls/dist/basic/PopupButton","./html/Offsers","./html/Specifications"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,AtomControl,StoreItem,StoreItemItemTypeArray,StoreMediaFile,StorePriceAddOn,Bind,XNode,FormField,Select,Sql,UploadIconTextButton,CollectionEditorEx,ReferenceEditor,TagChips,DateFormats,FolderViewControl,EditItemFolderPage,EditItemPricePage,BindableProperty,FilesDragDrop,UploadEvent,Action,signedImageUrl,InjectProperty,StoreItemService,InlinePopupButton,MenuItem,Offers,Specifications,ProductEditor;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistWebControlsAtomControl){AtomControl=_webAtomsCoreDistWebControlsAtomControl.AtomControl},function(_modelModel){StoreItem=_modelModel.StoreItem;StoreItemItemTypeArray=_modelModel.StoreItemItemTypeArray;StoreMediaFile=_modelModel.StoreMediaFile;StorePriceAddOn=_modelModel.StorePriceAddOn},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_webAtomsWebControlsDistBasicSelect){Select=_webAtomsWebControlsDistBasicSelect.default},function(_Sql){Sql=_Sql.Sql},function(_controlsButtonsIconButton){UploadIconTextButton=_controlsButtonsIconButton.UploadIconTextButton},function(_controlsCollectionEditorCollectionEditorEx){CollectionEditorEx=_controlsCollectionEditorCollectionEditorEx.default},function(_controlsReferenceEditorReferenceEditor){ReferenceEditor=_controlsReferenceEditorReferenceEditor.default},function(_controlsTagsTagChips){TagChips=_controlsTagsTagChips.default},function(_dateDateFormats){DateFormats=_dateDateFormats.DateFormats},function(_folderViewFolderViewControl){FolderViewControl=_folderViewFolderViewControl.default},function(_foldersEditItemFolderPage){EditItemFolderPage=_foldersEditItemFolderPage.default},function(_pricesEditItemPricePage){EditItemPricePage=_pricesEditItemPricePage.default},function(_webAtomsCoreDistCoreBindableProperty){BindableProperty=_webAtomsCoreDistCoreBindableProperty.BindableProperty},function(_controlsDragDropFilesDragDrop){FilesDragDrop=_controlsDragDropFilesDragDrop.FilesDragDrop},function(_webAtomsWebControlsDistBasicUploadEvent){UploadEvent=_webAtomsWebControlsDistBasicUploadEvent.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_fileUrl){signedImageUrl=_fileUrl.signedImageUrl},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesStoreStoreItemService){StoreItemService=_servicesStoreStoreItemService.default},function(_webAtomsWebControlsDistBasicInlinePopup){InlinePopupButton=_webAtomsWebControlsDistBasicInlinePopup.InlinePopupButton},function(_webAtomsWebControlsDistBasicPopupButton){MenuItem=_webAtomsWebControlsDistBasicPopupButton.MenuItem},function(_htmlOffsers){Offers=_htmlOffsers.Offers},function(_htmlSpecifications){Specifications=_htmlSpecifications.Specifications}],execute:function(){_export("default",ProductEditor=class ProductEditor extends AtomControl{constructor(){super(...arguments);this.productID=null;this.model=null}onPropertyChanged(name){super.onPropertyChanged(name);switch(name){case"model":this.app.runAsync((()=>this.init()));break;case"productID":this.app.runAsync((()=>this.loadProduct()));break}}loadProduct(){return __awaiter(this,void 0,void 0,(function*(){if(!this.productID){return}this.model=yield this.storeItemService.get(this.productID)}))}init(){var _a;var _b;return __awaiter(this,void 0,void 0,(function*(){if(!this.model){return}(_a=(_b=this.model).storeItemTags)!==null&&_a!==void 0?_a:_b.storeItemTags=[];this.renderer=XNode.create("div",null,XNode.create("div",{"data-border":"frame","data-layout":"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.description))}))),XNode.create(TagChips,{softDeleteProperty:Bind.oneWay((()=>this.model.storeItemID>0)),items:Bind.twoWaysImmediate((()=>this.model.storeItemTags))}),XNode.create(CollectionEditorEx,{"style-display":Bind.oneWay((()=>this.model.storeItemID>0),false),label:"Sizes",model:this.model,field:x=>x.sizes,itemFactory:()=>{const name=prompt("Name of new size");if(name){return StoreItem.create({sizeForID:this.model.storeItemID,storeID:this.model.storeID,itemType:"size",name})}},itemRenderer:item=>XNode.create("div",null,XNode.create("a",{text:item.name}))}),XNode.create(CollectionEditorEx,{"style-display":Bind.oneWay((()=>this.model.storeItemID>0),false),label:"Variants",model:this.model,field:x=>x.variants,itemFactory:()=>{const name=prompt("Name of new variant");if(name){return StoreItem.create({variantForID:this.model.storeItemID,storeID:this.model.storeID,itemType:"variant",name})}},itemRenderer:item=>XNode.create("div",null,XNode.create("a",{text:item.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(CollectionEditorEx,{label:"Add Ons",model:item,field:x=>x.addons,itemFactory:()=>StorePriceAddOn.create({price:item,priceID:item.priceID,addOnItemID:null,addOnItem:null,inclusive:false,print:true}),saveAfterAdd:false,itemRenderer:x=>XNode.create("div",null,XNode.create(ReferenceEditor,{model:x,field:a=>a.addOnItem,searchQuery:(q,search)=>search?q.where({search:search+"%"},(p=>i=>Sql.text.iLike(i.name,p.search))):q,suggestionRenderer:i=>XNode.create("div",null,XNode.create("label",{text:i.name})),itemRenderer:a=>XNode.create("div",null,XNode.create("label",{text:a.name}))}))}))}),XNode.create("details",{"data-border":"frame"},XNode.create("summary",{text:"Files"}),XNode.create(FolderViewControl,{root:Bind.oneWay((()=>this.model.fileFolder))})),XNode.create(CollectionEditorEx,Object.assign({"style-display":Bind.oneWay((()=>this.model.storeItemID>0),false),label:"Media",layout:"flex-wrap",model:this.model,field:x=>x.mediaFiles,footer:()=>XNode.create("div",{"data-layout":"row"},XNode.create(UploadIconTextButton,Object.assign({},UploadEvent.AttachUploadAction({uploadEvent:"files-uploaded",extra:Bind.oneWay((()=>JSON.stringify({parentID:this.model.folderID})))}))),XNode.create(InlinePopupButton,{icon:"fas fa-plus",label:"Add Html",popup:()=>XNode.create("div",null,XNode.create(MenuItem,{"data-click-event":"add-offer",label:"Add Offers"}),XNode.create(MenuItem,{"data-click-event":"add-specifications",label:"Add Specifications"}))})),itemRenderer:item=>XNode.create("div",null,item.isPreview?XNode.create("img",{src:this.mediaFileUrl(item)}):XNode.create("button",{"data-click-event":"edit-media-file","data-layout":"link",text:item.title}))},FilesDragDrop({uploadEvent:"files-uploaded",extra:Bind.oneWay((()=>JSON.stringify({parentID:this.model.folderID})))}))))}))}mediaFileUrl(item){if(item.appFile){return`/api/files/webp(200)/${item.appFileID}/${item.appFile.fileContentID}/${item.appFile.name}.webp`}return signedImageUrl(item,200)}onFilesUploaded({files}){var _a;var _b;return __awaiter(this,void 0,void 0,(function*(){(_a=(_b=this.model).mediaFiles)!==null&&_a!==void 0?_a:_b.mediaFiles=[];for(const appFile of files){this.model.mediaFiles.add(StoreMediaFile.create({appFile,appFileID:appFile.appFileID}))}}))}onAddHtmlFile(data,e){return __awaiter(this,void 0,void 0,(function*(){let title="";let template;switch(e.type){case"addOffer":title="offer.html";template=Offers;break;case"addSpecifications":title="specs.html";template=Specifications;break;default:return}const file=yield this.storeItemService.getOrCreateMediaFile(this.model,title,template);this.element.dispatchEvent(new CustomEvent("editMediaFile",{detail:file,bubbles:true}))}))}});__decorate([BindableProperty,__metadata("design:type",Number)],ProductEditor.prototype,"productID",void 0);__decorate([BindableProperty,__metadata("design:type",Object)],ProductEditor.prototype,"model",void 0);__decorate([InjectProperty,__metadata("design:type",StoreItemService)],ProductEditor.prototype,"storeItemService",void 0);__decorate([Action({onEvent:"files-uploaded"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],ProductEditor.prototype,"onFilesUploaded",null);__decorate([Action({onEvent:["add-offer","add-specifications"]}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object,Event]),__metadata("design:returntype",Promise)],ProductEditor.prototype,"onAddHtmlFile",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/products/ProductEditor");System.register(["tslib","@web-atoms/core/dist/core/BindableProperty","@web-atoms/core/dist/core/InjectProperty","@web-atoms/web-controls/dist/PageNavigator","../../../../../site-editor/editor/HtmlPageEditor","../../../../../web/page/files/media/ChooseMediaPage","../../../../../web/page/files/service/CloudFileService","../../../../fileUrl"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,BindableProperty,InjectProperty,PageNavigator,HtmlPageEditor,ChooseMediaPage,CloudFileService,srcSetUrl,storeFileUrl,ProductHtmlEditor;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreBindableProperty){BindableProperty=_webAtomsCoreDistCoreBindableProperty.BindableProperty},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_siteEditorEditorHtmlPageEditor){HtmlPageEditor=_siteEditorEditorHtmlPageEditor.default},function(_webPageFilesMediaChooseMediaPage){ChooseMediaPage=_webPageFilesMediaChooseMediaPage.default},function(_webPageFilesServiceCloudFileService){CloudFileService=_webPageFilesServiceCloudFileService.default},function(_fileUrl){srcSetUrl=_fileUrl.srcSetUrl;storeFileUrl=_fileUrl.storeFileUrl}],execute:function(){_export("default",ProductHtmlEditor=class ProductHtmlEditor extends HtmlPageEditor{constructor(){super(...arguments);this.folder=null}changeImage(){return __awaiter(this,void 0,void 0,(function*(){const files=yield PageNavigator.pushPageForResult(ChooseMediaPage,{folder:this.folder,accept:"image/*",multiple:true,selected:this.selection.element});const images=files.map((({file,size})=>{const src=storeFileUrl(this.folder.appFileID,file,`webp(${size})`,`${file.name}.${size}.webp`);const srcset=srcSetUrl(this.folder,file,((folder,f,s)=>storeFileUrl(this.folder.appFileID,file,`webp(${s})`,`${file.name}.${s}.webp`)));return{src,"data-src-set":srcset}}));yield this.insertImage(...images)}))}setStylerSheet(){return __awaiter(this,void 0,void 0,(function*(){}))}});__decorate([BindableProperty,__metadata("design:type",Object)],ProductHtmlEditor.prototype,"folder",void 0);__decorate([InjectProperty,__metadata("design:type",CloudFileService)],ProductHtmlEditor.prototype,"cloudFileService",void 0)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/products/html/ProductHtmlEditor");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/core/Bind","../../../../controls/Loader","../../../../fileUrl","@web-atoms/core/dist/services/FetchBuilder","./ProductHtmlEditor","../../../../../site-editor/styler/StylerSet","@web-atoms/web-controls/dist/PageNavigator","../../../../../code-editor/CodeEditorPage","@web-atoms/core/dist/view-model/Action","../../../../controls/buttons/IconButton","@web-atoms/core/dist/core/InjectProperty","../../../../../web/page/files/service/CloudFileService","../../../../../services/EntityService"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,ContentPage,XNode,Bind,Loader,signedUrl,FetchBuilder,ProductHtmlEditor,StylerSet,PageNavigator,CodeEditorPage,Action,SaveIconTextButton,InjectProperty,CloudFileService,EntityService,ProductHtmlEditorPage,wrap;_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(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_controlsLoader){Loader=_controlsLoader.default},function(_fileUrl){signedUrl=_fileUrl.signedUrl},function(_webAtomsCoreDistServicesFetchBuilder){FetchBuilder=_webAtomsCoreDistServicesFetchBuilder.default},function(_ProductHtmlEditor){ProductHtmlEditor=_ProductHtmlEditor.default},function(_siteEditorStylerStylerSet){StylerSet=_siteEditorStylerStylerSet.StylerSet},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_codeEditorCodeEditorPage){CodeEditorPage=_codeEditorCodeEditorPage.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webPageFilesServiceCloudFileService){CloudFileService=_webPageFilesServiceCloudFileService.default},function(_servicesEntityService){EntityService=_servicesEntityService.default}],execute:function(){wrap=(styleText,body)=>`\n<!DOCTYPE html>\n<html>\n<style styler-style-sheet="styler-style-sheet">\n${styleText}\n</style>\n<body>\n${body}\n</body>\n</html>\n`;_export("default",ProductHtmlEditorPage=class ProductHtmlEditorPage extends ContentPage{init(){return __awaiter(this,void 0,void 0,(function*(){this.renderer=XNode.create("div",null,XNode.create(Loader,null));this.storeItem=this.parameters.item;this.mediaFile=this.parameters.file;const htmlMain=this.mediaFile.fileContentID?yield FetchBuilder.get(signedUrl(this.mediaFile)).responseAsText():"<main>Content</main>";this.originalHtml=htmlMain;const css=StylerSet.instance.toString();this.html=wrap(css,htmlMain);this.renderer=XNode.create("div",null,XNode.create(ProductHtmlEditor,{"data-position":"absolute-fill",folder:this.storeItem.store.folder,presenter:Bind.presenter((c=>this.htmlEditor=c)),"event-html-page-changed":ce=>this.pageContent=ce.detail,htmlPage:this.html}));this.footerRenderer=()=>XNode.create("div",{"data-layout":"header-row","style-display":Bind.oneWay((()=>this.pageContent!==this.html))},XNode.create(SaveIconTextButton,{"event-click":()=>this.savePage(),text:"Save"}),XNode.create(SaveIconTextButton,{"event-click":()=>this.savePage(true),text:"Save and Close"}))}))}savePage(close=false){return __awaiter(this,void 0,void 0,(function*(){if(!this.htmlEditor.lastCommittedBody){if(close){this.close(this.mediaFile)}return}const{fileContentID}=yield this.cloudFileService.saveFile({appFileID:this.mediaFile.appFileID,content:new File([this.htmlEditor.lastCommittedBody],this.parameters.file.title,{type:"text/html"})});this.mediaFile.fileContentID=fileContentID;const es=this.resolve(EntityService);yield es.save(this.mediaFile,(c=>c));if(close){this.close(this.mediaFile)}}))}editCode(){var _a;return __awaiter(this,void 0,void 0,(function*(){const content=yield PageNavigator.pushPageForResult(CodeEditorPage,{fileName:this.parameters.file.title,content:(_a=this.htmlEditor.lastCommittedHtml)!==null&&_a!==void 0?_a:this.htmlEditor.htmlPage});this.pageContent=content;this.htmlEditor.htmlPage=content}))}hide(){var _a,_b,_c;this.pageContent=(_b=(_a=this.htmlEditor)===null||_a===void 0?void 0:_a.lastCommittedHtml)!==null&&_b!==void 0?_b:(_c=this.htmlEditor)===null||_c===void 0?void 0:_c.htmlPage;super.hide()}show(){super.show();if(this.pageContent){setTimeout((()=>this.htmlEditor.htmlPage=this.pageContent),400)}}});__decorate([InjectProperty,__metadata("design:type",CloudFileService)],ProductHtmlEditorPage.prototype,"cloudFileService",void 0);__decorate([Action({}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],ProductHtmlEditorPage.prototype,"savePage",null);__decorate([Action({onEvent:"edit-code"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],ProductHtmlEditorPage.prototype,"editCode",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/products/html/ProductHtmlEditorPage");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/Form","../../../../model/model","../../../../services/store/StoreItemService","@web-atoms/core/dist/core/InjectProperty","../../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action","../../../commands/CommonCommands","./ProductEditor","@web-atoms/web-controls/dist/mobile-app/MasterDetailPage","./html/ProductHtmlEditorPage","@web-atoms/web-controls/dist/PageNavigator"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,XNode,Form,StoreItem,StoreItemService,InjectProperty,SaveIconTextButton,Action,CommonCommands,ProductEditor,MasterDetailPage,ProductHtmlEditor,PageNavigator,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(_modelModel){StoreItem=_modelModel.StoreItem},function(_servicesStoreStoreItemService){StoreItemService=_servicesStoreStoreItemService.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_commandsCommonCommands){CommonCommands=_commandsCommonCommands.default},function(_ProductEditor){ProductEditor=_ProductEditor.default},function(_webAtomsWebControlsDistMobileAppMasterDetailPage){MasterDetailPage=_webAtomsWebControlsDistMobileAppMasterDetailPage.default},function(_htmlProductHtmlEditorPage){ProductHtmlEditor=_htmlProductHtmlEditorPage.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default}],execute:function(){_export("default",EditProductDetailPage=class EditProductDetailPage extends MasterDetailPage{constructor(){super(...arguments);this.model=null}init(){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")));this.renderer=XNode.create("div",null,XNode.create(Form,null,XNode.create(ProductEditor,{model:this.model}),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*(){if(this.model.storeItemTags){let sortOrder=0;for(const iterator of this.model.storeItemTags){iterator.sortOrder=sortOrder++}}yield this.storeItemService.save(this.model);yield this.init()}))}editMediaFile(file){return __awaiter(this,void 0,void 0,(function*(){const item=this.model;yield PageNavigator.pushPageForResult(ProductHtmlEditor,{item,file})}))}});__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);__decorate([Action({onEvent:"editMediaFile"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],EditProductDetailPage.prototype,"editMediaFile",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,SelectorCheckBox,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;SelectorCheckBox=_webAtomsWebControlsDistBasicAtomRepeater.SelectorCheckBox},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",allowMultipleSelection:true,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(SelectorCheckBox,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(["tslib","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../services/EntityService","../../../../model/model","../../../controls/collection-editor/CollectionEditorEx","@web-atoms/core/dist/core/Bind"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,InjectProperty,XNode,ContentPage,EntityService,Store,CollectionEditorEx,Bind,EditSettingsPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_modelModel){Store=_modelModel.Store},function(_controlsCollectionEditorCollectionEditorEx){CollectionEditorEx=_controlsCollectionEditorCollectionEditorEx.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default}],execute:function(){_export("default",EditSettingsPage=class EditSettingsPage extends ContentPage{constructor(){super(...arguments);this.model=null}init(){return __awaiter(this,void 0,void 0,(function*(){const{storeID}=this.parameters;this.model=yield this.entityService.query(Store).where({storeID},(p=>x=>x.storeID===p.storeID)).include((x=>[x.configs])).firstOrDefault();this.renderer=XNode.create("div",null,XNode.create(CollectionEditorEx,{label:"Settings",inlineAdd:true,model:this.model,field:x=>x.configs,addItemDefaults:()=>({storeID}),itemRenderer:item=>XNode.create("div",null,XNode.create("input",{placeholder:"Group",value:Bind.sourceTwoWays(item,(x=>x.source.groupName))}),XNode.create("input",{placeholder:"Name",value:Bind.sourceTwoWays(item,(x=>x.source.configName))}),XNode.create("i",{class:"fas fa-lock"}),XNode.create("input",{type:"checkbox",checked:Bind.sourceTwoWays(item,(x=>x.source.encrypted))}),XNode.create("input",{placeholder:"Value",value:Bind.sourceTwoWays(item,(x=>x.source.configValue))}))}))}))}});__decorate([InjectProperty,__metadata("design:type",EntityService)],EditSettingsPage.prototype,"entityService",void 0)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/settings/EditSettingsPage");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.editConfig=Command.create({route:"/stores/config/{storeID}",openPage:()=>_context.import("../pages/stores/settings/EditSettingsPage")});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`
|
|
4686
|
+
`.installGlobal("[data-folder-view=folder-view]");getExtension=name=>{const index=name.lastIndexOf(".");if(index===-1){return"dat"}return name.substring(index+1)};_export("default",FolderViewControl=class FolderViewControl extends AtomControl{constructor(app,e){super(app,e);this.mode="thumbnails";this.selectedFolder=null;this.root=null;this.search="";this.version=0;this.selectedFiles=[];this.files=[];this.element.setAttribute("data-folder-view","folder-view");this.runAfterInit((()=>this.app.runAsync((()=>this.init()))))}init(){return __awaiter(this,void 0,void 0,(function*(){this.renderer=XNode.create("div",{files:Bind.oneWayAsync(((c,e,cancelToken)=>this.cloudFileService.files({search:this.search,folder:this.selectedFolder,version:this.version,cancelToken})))},XNode.create(FolderTreeView,{class:"folder-tree",folderId:Bind.oneWay((()=>this.root.appFileID)),presenter:Bind.presenter((c=>this.folderTree=c)),selectedItem:Bind.twoWaysImmediate((()=>this.selectedFolder))}),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,{allowMultipleSelection:true,selectedItems:this.selectedFiles,header:true,headerRenderer:()=>XNode.create("header",null,XNode.create(SelectAll,{items:Bind.oneWay((()=>this.files)),selectedItems:this.selectedFiles})),itemRenderer:Bind.oneWay((()=>this.getItemRenderere(this.mode))),items:Bind.oneWay((()=>this.files))})),XNode.create("div",{"style-display":Bind.oneWay((()=>this.selectedFiles.length>0))},XNode.create(DeleteIconTextButton,{"data-click-event":"delete-files"})))}))}getItemRenderere(m){switch(this.mode){case"list":return f=>this.renderFile(f)}return f=>this.renderPreview(f)}renderPreview(item){if(/^(image|video)\//i.test(item.contentType)){return XNode.create("div",{class:"media-file"},XNode.create(SelectorCheckBox,null),XNode.create("label",{class:"file-name",text:item.name}),XNode.create("img",{class:"file-preview",title:item.name,src:apiPath(`/api/files/webp(300)/${item.appFileID}/${item.fileContentID}/${item.name}.300.webp`)}))}return XNode.create("div",{class:"media-file"},XNode.create("img",null))}renderFile(item){if(item.isFolder){return XNode.create("div",null,XNode.create(SelectorCheckBox,null),XNode.create("div",null,XNode.create("i",{class:item.isFolder?"fiv-viv fiv-icon-folder":`fiv-viv fiv-icon-${getExtension(item.name)}`}),XNode.create("span",{"data-click-event":"open-folder",class:"file-link",text:item.name,"data-padding-left":"auto"})),XNode.create("div",null,item.isShared&&XNode.create("i",{title:"Shared",class:"fas fa-folder-user"})),XNode.create("div",{text:toFileSize(item.fileSize)}),XNode.create("div",null),XNode.create("div",null,XNode.create("i",{"data-click-event":"edit-shares",class:"fas fa-share"})))}return XNode.create("div",null,XNode.create(SelectorCheckBox,null),XNode.create("div",null,XNode.create("i",{class:item.isFolder?"fiv-viv fiv-icon-folder":`fiv-viv fiv-icon-${getExtension(item.name)}`}),XNode.create("a",{href:item.url,target:"_blank",text:item.name,"data-margin-left":"default"})),XNode.create("div",null,item.isShared&&XNode.create("i",{title:"Shared",class:"fas fa-folder-user"})),XNode.create("div",{text:toFileSize(item.fileSize)}),XNode.create("div",null,XNode.create("a",{href:item.downloadUrl,target:"_blank",download:true},XNode.create("i",{class:"fas fa-download"}))),XNode.create("div",null,XNode.create("i",{"data-click-event":"edit-shares",class:"fas fa-share"})))}deleteFiles(){return __awaiter(this,void 0,void 0,(function*(){const copy=[].concat(this.selectedFiles);while(copy.length){const slice=copy.splice(0,10);yield this.cloudFileService.delete(slice);for(const iterator of slice){this.selectedFiles.remove(iterator);this.files.remove(iterator)}}this.version++}))}onFilesUploaded(){return __awaiter(this,void 0,void 0,(function*(){this.version++}))}});__decorate([InjectProperty,__metadata("design:type",CloudFileService)],FolderViewControl.prototype,"cloudFileService",void 0);__decorate([Action({onEvent:"delete-files",confirm:"Are you sure you want to delete selected files?"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],FolderViewControl.prototype,"deleteFiles",null);__decorate([Action({onEvent:"files-available"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],FolderViewControl.prototype,"onFilesUploaded",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/folder-view/FolderViewControl");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/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(["@web-atoms/core/dist/core/XNode","@web-atoms/email-dom/dist/DomToString"],(function(_export,_context){"use strict";var XNode,DomToString,Offers;return{setters:[function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsEmailDomDistDomToString){DomToString=_webAtomsEmailDomDistDomToString.default}],execute:function(){_export("Offers",Offers=()=>DomToString(XNode.create("main",null,XNode.create("section",{"styler-layout":"column"}),XNode.create("section",{"styler-layout":"column"}))))}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/products/html/Offsers");System.register(["@web-atoms/core/dist/core/XNode","@web-atoms/email-dom/dist/DomToString"],(function(_export,_context){"use strict";var XNode,DomToString,Specifications;return{setters:[function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsEmailDomDistDomToString){DomToString=_webAtomsEmailDomDistDomToString.default}],execute:function(){_export("Specifications",Specifications=()=>DomToString(XNode.create("main",null,XNode.create("section",{"styler-layout":"columns-2"},XNode.create("table",null,XNode.create("thead",null,XNode.create("tr",null,XNode.create("th",{colspan:2},"Spec 1"))),XNode.create("tbody",null,XNode.create("tr",null,XNode.create("td",null,"Size"),XNode.create("td",null,"Medium")),XNode.create("tr",null,XNode.create("td",null,"Color"),XNode.create("td",null,"Transparent")))),XNode.create("table",null,XNode.create("thead",null,XNode.create("tr",null,XNode.create("th",{colspan:2},"Spec 1"))),XNode.create("tbody",null,XNode.create("tr",null,XNode.create("td",null,"Size"),XNode.create("td",null,"Medium")),XNode.create("tr",null,XNode.create("td",null,"Color"),XNode.create("td",null,"Transparent"))))))))}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/products/html/Specifications");System.register(["tslib","@web-atoms/core/dist/web/controls/AtomControl","../../../../model/model","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/web-controls/dist/basic/Select","../../../Sql","../../../controls/buttons/IconButton","../../../controls/collection-editor/CollectionEditorEx","../../../controls/reference-editor/ReferenceEditor","../../../controls/tags/TagChips","../../../date/DateFormats","../../../folder-view/FolderViewControl","../folders/EditItemFolderPage","./prices/EditItemPricePage","@web-atoms/core/dist/core/BindableProperty","../../../controls/drag-drop/FilesDragDrop","@web-atoms/web-controls/dist/basic/UploadEvent","@web-atoms/core/dist/view-model/Action","../../../fileUrl","@web-atoms/core/dist/core/InjectProperty","../../../../services/store/StoreItemService","@web-atoms/web-controls/dist/basic/InlinePopup","@web-atoms/web-controls/dist/basic/PopupButton","./html/Offsers","./html/Specifications"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,AtomControl,StoreItem,StoreItemItemTypeArray,StoreMediaFile,StorePriceAddOn,Bind,XNode,FormField,Select,Sql,UploadIconTextButton,CollectionEditorEx,ReferenceEditor,TagChips,DateFormats,FolderViewControl,EditItemFolderPage,EditItemPricePage,BindableProperty,FilesDragDrop,UploadEvent,Action,signedImageUrl,InjectProperty,StoreItemService,InlinePopupButton,MenuItem,Offers,Specifications,ProductEditor;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistWebControlsAtomControl){AtomControl=_webAtomsCoreDistWebControlsAtomControl.AtomControl},function(_modelModel){StoreItem=_modelModel.StoreItem;StoreItemItemTypeArray=_modelModel.StoreItemItemTypeArray;StoreMediaFile=_modelModel.StoreMediaFile;StorePriceAddOn=_modelModel.StorePriceAddOn},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_webAtomsWebControlsDistBasicSelect){Select=_webAtomsWebControlsDistBasicSelect.default},function(_Sql){Sql=_Sql.Sql},function(_controlsButtonsIconButton){UploadIconTextButton=_controlsButtonsIconButton.UploadIconTextButton},function(_controlsCollectionEditorCollectionEditorEx){CollectionEditorEx=_controlsCollectionEditorCollectionEditorEx.default},function(_controlsReferenceEditorReferenceEditor){ReferenceEditor=_controlsReferenceEditorReferenceEditor.default},function(_controlsTagsTagChips){TagChips=_controlsTagsTagChips.default},function(_dateDateFormats){DateFormats=_dateDateFormats.DateFormats},function(_folderViewFolderViewControl){FolderViewControl=_folderViewFolderViewControl.default},function(_foldersEditItemFolderPage){EditItemFolderPage=_foldersEditItemFolderPage.default},function(_pricesEditItemPricePage){EditItemPricePage=_pricesEditItemPricePage.default},function(_webAtomsCoreDistCoreBindableProperty){BindableProperty=_webAtomsCoreDistCoreBindableProperty.BindableProperty},function(_controlsDragDropFilesDragDrop){FilesDragDrop=_controlsDragDropFilesDragDrop.FilesDragDrop},function(_webAtomsWebControlsDistBasicUploadEvent){UploadEvent=_webAtomsWebControlsDistBasicUploadEvent.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_fileUrl){signedImageUrl=_fileUrl.signedImageUrl},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesStoreStoreItemService){StoreItemService=_servicesStoreStoreItemService.default},function(_webAtomsWebControlsDistBasicInlinePopup){InlinePopupButton=_webAtomsWebControlsDistBasicInlinePopup.InlinePopupButton},function(_webAtomsWebControlsDistBasicPopupButton){MenuItem=_webAtomsWebControlsDistBasicPopupButton.MenuItem},function(_htmlOffsers){Offers=_htmlOffsers.Offers},function(_htmlSpecifications){Specifications=_htmlSpecifications.Specifications}],execute:function(){_export("default",ProductEditor=class ProductEditor extends AtomControl{constructor(){super(...arguments);this.productID=null;this.model=null}onPropertyChanged(name){super.onPropertyChanged(name);switch(name){case"model":this.app.runAsync((()=>this.init()));break;case"productID":this.app.runAsync((()=>this.loadProduct()));break}}loadProduct(){return __awaiter(this,void 0,void 0,(function*(){if(!this.productID){return}this.model=yield this.storeItemService.get(this.productID)}))}init(){var _a;var _b;return __awaiter(this,void 0,void 0,(function*(){if(!this.model){return}(_a=(_b=this.model).storeItemTags)!==null&&_a!==void 0?_a:_b.storeItemTags=[];this.renderer=XNode.create("div",null,XNode.create("div",{"data-border":"frame","data-layout":"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.description))}))),XNode.create(TagChips,{softDeleteProperty:Bind.oneWay((()=>this.model.storeItemID>0)),items:Bind.twoWaysImmediate((()=>this.model.storeItemTags))}),XNode.create(CollectionEditorEx,{"style-display":Bind.oneWay((()=>this.model.storeItemID>0),false),label:"Sizes",model:this.model,field:x=>x.sizes,itemFactory:()=>{const name=prompt("Name of new size");if(name){return StoreItem.create({sizeForID:this.model.storeItemID,storeID:this.model.storeID,itemType:"size",name})}},itemRenderer:item=>XNode.create("div",null,XNode.create("a",{text:item.name}))}),XNode.create(CollectionEditorEx,{"style-display":Bind.oneWay((()=>this.model.storeItemID>0),false),label:"Variants",model:this.model,field:x=>x.variants,itemFactory:()=>{const name=prompt("Name of new variant");if(name){return StoreItem.create({variantForID:this.model.storeItemID,storeID:this.model.storeID,itemType:"variant",name})}},itemRenderer:item=>XNode.create("div",null,XNode.create("a",{text:item.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",{text:item.addonsAmount}),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(CollectionEditorEx,{label:"Add Ons",model:item,field:x=>x.addons,itemFactory:()=>StorePriceAddOn.create({price:item,priceID:item.priceID,addOnItemID:null,addOnItem:null,inclusive:false,print:true}),saveAfterAdd:false,itemRenderer:x=>XNode.create("div",null,XNode.create(ReferenceEditor,{model:x,field:a=>a.addOnItem,searchQuery:(q,search)=>search?q.where({search:search+"%"},(p=>i=>Sql.text.iLike(i.name,p.search))):q,suggestionRenderer:i=>XNode.create("div",null,XNode.create("label",{text:i.name})),itemRenderer:a=>XNode.create("div",null,XNode.create("label",{text:a.name}))}))}))}),XNode.create("details",{"data-border":"frame"},XNode.create("summary",{text:"Files"}),XNode.create(FolderViewControl,{root:Bind.oneWay((()=>this.model.fileFolder))})),XNode.create(CollectionEditorEx,Object.assign({"style-display":Bind.oneWay((()=>this.model.storeItemID>0),false),label:"Media",layout:"flex-wrap",model:this.model,field:x=>x.mediaFiles,footer:()=>XNode.create("div",{"data-layout":"row"},XNode.create(UploadIconTextButton,Object.assign({},UploadEvent.AttachUploadAction({uploadEvent:"files-uploaded",extra:Bind.oneWay((()=>JSON.stringify({parentID:this.model.folderID})))}))),XNode.create(InlinePopupButton,{icon:"fas fa-plus",label:"Add Html",popup:()=>XNode.create("div",null,XNode.create(MenuItem,{"data-click-event":"add-offer",label:"Add Offers"}),XNode.create(MenuItem,{"data-click-event":"add-specifications",label:"Add Specifications"}))})),itemRenderer:item=>XNode.create("div",null,item.isPreview?XNode.create("img",{src:this.mediaFileUrl(item)}):XNode.create("button",{"data-click-event":"edit-media-file","data-layout":"link",text:item.title}))},FilesDragDrop({uploadEvent:"files-uploaded",extra:Bind.oneWay((()=>JSON.stringify({parentID:this.model.folderID})))}))))}))}mediaFileUrl(item){if(item.appFile){return`/api/files/webp(200)/${item.appFileID}/${item.appFile.fileContentID}/${item.appFile.name}.webp`}return signedImageUrl(item,200)}onFilesUploaded({files}){var _a;var _b;return __awaiter(this,void 0,void 0,(function*(){(_a=(_b=this.model).mediaFiles)!==null&&_a!==void 0?_a:_b.mediaFiles=[];for(const appFile of files){this.model.mediaFiles.add(StoreMediaFile.create({appFile,appFileID:appFile.appFileID}))}}))}onAddHtmlFile(data,e){return __awaiter(this,void 0,void 0,(function*(){let title="";let template;switch(e.type){case"addOffer":title="offer.html";template=Offers;break;case"addSpecifications":title="specs.html";template=Specifications;break;default:return}const file=yield this.storeItemService.getOrCreateMediaFile(this.model,title,template);this.element.dispatchEvent(new CustomEvent("editMediaFile",{detail:file,bubbles:true}))}))}});__decorate([BindableProperty,__metadata("design:type",Number)],ProductEditor.prototype,"productID",void 0);__decorate([BindableProperty,__metadata("design:type",Object)],ProductEditor.prototype,"model",void 0);__decorate([InjectProperty,__metadata("design:type",StoreItemService)],ProductEditor.prototype,"storeItemService",void 0);__decorate([Action({onEvent:"files-uploaded"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],ProductEditor.prototype,"onFilesUploaded",null);__decorate([Action({onEvent:["add-offer","add-specifications"]}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object,Event]),__metadata("design:returntype",Promise)],ProductEditor.prototype,"onAddHtmlFile",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/products/ProductEditor");System.register(["tslib","@web-atoms/core/dist/core/BindableProperty","@web-atoms/core/dist/core/InjectProperty","@web-atoms/web-controls/dist/PageNavigator","../../../../../site-editor/editor/HtmlPageEditor","../../../../../web/page/files/media/ChooseMediaPage","../../../../../web/page/files/service/CloudFileService","../../../../fileUrl"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,BindableProperty,InjectProperty,PageNavigator,HtmlPageEditor,ChooseMediaPage,CloudFileService,srcSetUrl,storeFileUrl,ProductHtmlEditor;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreBindableProperty){BindableProperty=_webAtomsCoreDistCoreBindableProperty.BindableProperty},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_siteEditorEditorHtmlPageEditor){HtmlPageEditor=_siteEditorEditorHtmlPageEditor.default},function(_webPageFilesMediaChooseMediaPage){ChooseMediaPage=_webPageFilesMediaChooseMediaPage.default},function(_webPageFilesServiceCloudFileService){CloudFileService=_webPageFilesServiceCloudFileService.default},function(_fileUrl){srcSetUrl=_fileUrl.srcSetUrl;storeFileUrl=_fileUrl.storeFileUrl}],execute:function(){_export("default",ProductHtmlEditor=class ProductHtmlEditor extends HtmlPageEditor{constructor(){super(...arguments);this.folder=null}changeImage(){return __awaiter(this,void 0,void 0,(function*(){const files=yield PageNavigator.pushPageForResult(ChooseMediaPage,{folder:this.folder,accept:"image/*",multiple:true,selected:this.selection.element});const images=files.map((({file,size})=>{const src=storeFileUrl(this.folder.appFileID,file,`webp(${size})`,`${file.name}.${size}.webp`);const srcset=srcSetUrl(this.folder,file,((folder,f,s)=>storeFileUrl(this.folder.appFileID,file,`webp(${s})`,`${file.name}.${s}.webp`)));return{src,"data-src-set":srcset}}));yield this.insertImage(...images)}))}setStylerSheet(){return __awaiter(this,void 0,void 0,(function*(){}))}});__decorate([BindableProperty,__metadata("design:type",Object)],ProductHtmlEditor.prototype,"folder",void 0);__decorate([InjectProperty,__metadata("design:type",CloudFileService)],ProductHtmlEditor.prototype,"cloudFileService",void 0)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/products/html/ProductHtmlEditor");System.register(["tslib","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/core/Bind","../../../../controls/Loader","../../../../fileUrl","@web-atoms/core/dist/services/FetchBuilder","./ProductHtmlEditor","../../../../../site-editor/styler/StylerSet","@web-atoms/web-controls/dist/PageNavigator","../../../../../code-editor/CodeEditorPage","@web-atoms/core/dist/view-model/Action","../../../../controls/buttons/IconButton","@web-atoms/core/dist/core/InjectProperty","../../../../../web/page/files/service/CloudFileService","../../../../../services/EntityService"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,ContentPage,XNode,Bind,Loader,signedUrl,FetchBuilder,ProductHtmlEditor,StylerSet,PageNavigator,CodeEditorPage,Action,SaveIconTextButton,InjectProperty,CloudFileService,EntityService,ProductHtmlEditorPage,wrap;_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(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_controlsLoader){Loader=_controlsLoader.default},function(_fileUrl){signedUrl=_fileUrl.signedUrl},function(_webAtomsCoreDistServicesFetchBuilder){FetchBuilder=_webAtomsCoreDistServicesFetchBuilder.default},function(_ProductHtmlEditor){ProductHtmlEditor=_ProductHtmlEditor.default},function(_siteEditorStylerStylerSet){StylerSet=_siteEditorStylerStylerSet.StylerSet},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_codeEditorCodeEditorPage){CodeEditorPage=_codeEditorCodeEditorPage.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webPageFilesServiceCloudFileService){CloudFileService=_webPageFilesServiceCloudFileService.default},function(_servicesEntityService){EntityService=_servicesEntityService.default}],execute:function(){wrap=(styleText,body)=>`\n<!DOCTYPE html>\n<html>\n<style styler-style-sheet="styler-style-sheet">\n${styleText}\n</style>\n<body>\n${body}\n</body>\n</html>\n`;_export("default",ProductHtmlEditorPage=class ProductHtmlEditorPage extends ContentPage{init(){return __awaiter(this,void 0,void 0,(function*(){this.renderer=XNode.create("div",null,XNode.create(Loader,null));this.storeItem=this.parameters.item;this.mediaFile=this.parameters.file;const htmlMain=this.mediaFile.fileContentID?yield FetchBuilder.get(signedUrl(this.mediaFile)).responseAsText():"<main>Content</main>";this.originalHtml=htmlMain;const css=StylerSet.instance.toString();this.html=wrap(css,htmlMain);this.renderer=XNode.create("div",null,XNode.create(ProductHtmlEditor,{"data-position":"absolute-fill",folder:this.storeItem.store.folder,presenter:Bind.presenter((c=>this.htmlEditor=c)),"event-html-page-changed":ce=>this.pageContent=ce.detail,htmlPage:this.html}));this.footerRenderer=()=>XNode.create("div",{"data-layout":"header-row","style-display":Bind.oneWay((()=>this.pageContent!==this.html))},XNode.create(SaveIconTextButton,{"event-click":()=>this.savePage(),text:"Save"}),XNode.create(SaveIconTextButton,{"event-click":()=>this.savePage(true),text:"Save and Close"}))}))}savePage(close=false){return __awaiter(this,void 0,void 0,(function*(){if(!this.htmlEditor.lastCommittedBody){if(close){this.close(this.mediaFile)}return}const{fileContentID}=yield this.cloudFileService.saveFile({appFileID:this.mediaFile.appFileID,content:new File([this.htmlEditor.lastCommittedBody],this.parameters.file.title,{type:"text/html"})});this.mediaFile.fileContentID=fileContentID;const es=this.resolve(EntityService);yield es.save(this.mediaFile,(c=>c));if(close){this.close(this.mediaFile)}}))}editCode(){var _a;return __awaiter(this,void 0,void 0,(function*(){const content=yield PageNavigator.pushPageForResult(CodeEditorPage,{fileName:this.parameters.file.title,content:(_a=this.htmlEditor.lastCommittedHtml)!==null&&_a!==void 0?_a:this.htmlEditor.htmlPage});this.pageContent=content;this.htmlEditor.htmlPage=content}))}hide(){var _a,_b,_c;this.pageContent=(_b=(_a=this.htmlEditor)===null||_a===void 0?void 0:_a.lastCommittedHtml)!==null&&_b!==void 0?_b:(_c=this.htmlEditor)===null||_c===void 0?void 0:_c.htmlPage;super.hide()}show(){super.show();if(this.pageContent){setTimeout((()=>this.htmlEditor.htmlPage=this.pageContent),400)}}});__decorate([InjectProperty,__metadata("design:type",CloudFileService)],ProductHtmlEditorPage.prototype,"cloudFileService",void 0);__decorate([Action({}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],ProductHtmlEditorPage.prototype,"savePage",null);__decorate([Action({onEvent:"edit-code"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],ProductHtmlEditorPage.prototype,"editCode",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/products/html/ProductHtmlEditorPage");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/Form","../../../../model/model","../../../../services/store/StoreItemService","@web-atoms/core/dist/core/InjectProperty","../../../controls/buttons/IconButton","@web-atoms/core/dist/view-model/Action","../../../commands/CommonCommands","./ProductEditor","@web-atoms/web-controls/dist/mobile-app/MasterDetailPage","./html/ProductHtmlEditorPage","@web-atoms/web-controls/dist/PageNavigator"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,XNode,Form,StoreItem,StoreItemService,InjectProperty,SaveIconTextButton,Action,CommonCommands,ProductEditor,MasterDetailPage,ProductHtmlEditor,PageNavigator,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(_modelModel){StoreItem=_modelModel.StoreItem},function(_servicesStoreStoreItemService){StoreItemService=_servicesStoreStoreItemService.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_controlsButtonsIconButton){SaveIconTextButton=_controlsButtonsIconButton.SaveIconTextButton},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_commandsCommonCommands){CommonCommands=_commandsCommonCommands.default},function(_ProductEditor){ProductEditor=_ProductEditor.default},function(_webAtomsWebControlsDistMobileAppMasterDetailPage){MasterDetailPage=_webAtomsWebControlsDistMobileAppMasterDetailPage.default},function(_htmlProductHtmlEditorPage){ProductHtmlEditor=_htmlProductHtmlEditorPage.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default}],execute:function(){_export("default",EditProductDetailPage=class EditProductDetailPage extends MasterDetailPage{constructor(){super(...arguments);this.model=null}init(){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")));this.renderer=XNode.create("div",null,XNode.create(Form,null,XNode.create(ProductEditor,{model:this.model}),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*(){if(this.model.storeItemTags){let sortOrder=0;for(const iterator of this.model.storeItemTags){iterator.sortOrder=sortOrder++}}yield this.storeItemService.save(this.model);yield this.init()}))}editMediaFile(file){return __awaiter(this,void 0,void 0,(function*(){const item=this.model;yield PageNavigator.pushPageForResult(ProductHtmlEditor,{item,file})}))}});__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);__decorate([Action({onEvent:"editMediaFile"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Promise)],EditProductDetailPage.prototype,"editMediaFile",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,SelectorCheckBox,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;SelectorCheckBox=_webAtomsWebControlsDistBasicAtomRepeater.SelectorCheckBox},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",allowMultipleSelection:true,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(SelectorCheckBox,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(["tslib","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../../services/EntityService","../../../../model/model","../../../controls/collection-editor/CollectionEditorEx","@web-atoms/core/dist/core/Bind"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,InjectProperty,XNode,ContentPage,EntityService,Store,CollectionEditorEx,Bind,EditSettingsPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_modelModel){Store=_modelModel.Store},function(_controlsCollectionEditorCollectionEditorEx){CollectionEditorEx=_controlsCollectionEditorCollectionEditorEx.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default}],execute:function(){_export("default",EditSettingsPage=class EditSettingsPage extends ContentPage{constructor(){super(...arguments);this.model=null}init(){return __awaiter(this,void 0,void 0,(function*(){const{storeID}=this.parameters;this.model=yield this.entityService.query(Store).where({storeID},(p=>x=>x.storeID===p.storeID)).include((x=>[x.configs])).firstOrDefault();this.renderer=XNode.create("div",null,XNode.create(CollectionEditorEx,{label:"Settings",inlineAdd:true,model:this.model,field:x=>x.configs,addItemDefaults:()=>({storeID}),itemRenderer:item=>XNode.create("div",null,XNode.create("input",{placeholder:"Group",value:Bind.sourceTwoWays(item,(x=>x.source.groupName))}),XNode.create("input",{placeholder:"Name",value:Bind.sourceTwoWays(item,(x=>x.source.configName))}),XNode.create("i",{class:"fas fa-lock"}),XNode.create("input",{type:"checkbox",checked:Bind.sourceTwoWays(item,(x=>x.source.encrypted))}),XNode.create("input",{placeholder:"Value",value:Bind.sourceTwoWays(item,(x=>x.source.configValue))}))}))}))}});__decorate([InjectProperty,__metadata("design:type",EntityService)],EditSettingsPage.prototype,"entityService",void 0)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/stores/settings/EditSettingsPage");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.editConfig=Command.create({route:"/stores/config/{storeID}",openPage:()=>_context.import("../pages/stores/settings/EditSettingsPage")});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`
|
|
4683
4687
|
&[data-page-type=master-detail] > [data-page-element=content][data-mode=desktop] {
|
|
4684
4688
|
grid-template-columns: 150px 1fr auto;
|
|
4685
4689
|
}
|