@social-mail/social-mail-client 1.2.332 → 1.2.334
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 +141 -379
- package/dist/admin/AdminAppIndex.pack.js.map +1 -1
- package/dist/admin/AdminAppIndex.pack.min.js +6 -6
- package/dist/admin/AdminAppIndex.pack.min.js.map +1 -1
- package/dist/common/pages/mailboxes/MailboxEditorPage.js +1 -1
- package/dist/common/pages/mailboxes/MailboxEditorPage.js.map +1 -1
- package/dist/common/pages/mailboxes/services/ExternalMailboxService.d.ts +0 -3
- package/dist/common/pages/mailboxes/services/ExternalMailboxService.d.ts.map +1 -1
- package/dist/common/pages/mailboxes/services/ExternalMailboxService.js +2 -34
- package/dist/common/pages/mailboxes/services/ExternalMailboxService.js.map +1 -1
- package/dist/common/pages/mailboxes/services/MailboxService.d.ts.map +1 -1
- package/dist/common/pages/mailboxes/services/MailboxService.js +2 -5
- package/dist/common/pages/mailboxes/services/MailboxService.js.map +1 -1
- package/dist/common/pages/websites/blogs/LookupChannelPage.js +1 -1
- package/dist/common/pages/websites/blogs/LookupChannelPage.js.map +1 -1
- package/dist/model/model.d.ts +34 -76
- package/dist/model/model.d.ts.map +1 -1
- package/dist/model/model.js +134 -337
- package/dist/model/model.js.map +1 -1
- package/dist/public/channel/ChannelView.pack.js +134 -337
- 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 +197 -346
- package/dist/public/store/Store.pack.js.map +1 -1
- package/dist/public/store/Store.pack.min.js +35 -8
- package/dist/public/store/Store.pack.min.js.map +1 -1
- package/dist/public/store/StoreItemDetailView.js +3 -3
- package/dist/public/store/StoreItemListView.d.ts +2 -1
- package/dist/public/store/StoreItemListView.d.ts.map +1 -1
- package/dist/public/store/StoreItemListView.js +60 -6
- package/dist/public/store/StoreItemListView.js.map +1 -1
- package/dist/services/contacts/ContactService.js +1 -1
- package/dist/services/contacts/ContactService.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/web/AppIndex.pack.js +141 -379
- package/dist/web/AppIndex.pack.js.map +1 -1
- package/dist/web/AppIndex.pack.min.js +5 -5
- package/dist/web/AppIndex.pack.min.js.map +1 -1
- package/package.json +1 -1
- package/src/common/pages/mailboxes/MailboxEditorPage.tsx +1 -1
- package/src/common/pages/mailboxes/services/ExternalMailboxService.ts +1 -32
- package/src/common/pages/mailboxes/services/MailboxService.ts +2 -5
- package/src/common/pages/websites/blogs/LookupChannelPage.tsx +1 -1
- package/src/model/model.ts +64 -120
- package/src/public/store/StoreItemDetailView.tsx +3 -3
- package/src/public/store/StoreItemListView.tsx +58 -5
- package/src/services/contacts/ContactService.ts +1 -1
package/package.json
CHANGED
|
@@ -64,7 +64,7 @@ export default class MailboxEditorPage extends PopupWindowPage {
|
|
|
64
64
|
/>
|
|
65
65
|
</FormField>
|
|
66
66
|
<FormField label="Email Address">
|
|
67
|
-
<span text={Bind.oneWay(() => `${this.model.username}@${this.model.domain.
|
|
67
|
+
<span text={Bind.oneWay(() => `${this.model.username}@${this.model.domain.name}`)}/>
|
|
68
68
|
</FormField>
|
|
69
69
|
<FormField label="Create Channel">
|
|
70
70
|
<Checkbox
|
|
@@ -25,33 +25,6 @@ export default class ExternalMailboxService {
|
|
|
25
25
|
@Inject
|
|
26
26
|
private entityService: EntityService;
|
|
27
27
|
|
|
28
|
-
public async createDomain(emailAddress: string, retry = 3): Promise<{ domainID?: number }> {
|
|
29
|
-
try {
|
|
30
|
-
const index = emailAddress.lastIndexOf("@");
|
|
31
|
-
let domainName = emailAddress;
|
|
32
|
-
if (index !== -1) {
|
|
33
|
-
domainName = emailAddress.substring(index + 1);
|
|
34
|
-
}
|
|
35
|
-
domainName = domainName.toLocaleLowerCase();
|
|
36
|
-
const d = await this.entityService.query(HostedDomain)
|
|
37
|
-
.where({ domainName }, (p) => (x) => x.domain.name === p.domainName)
|
|
38
|
-
.firstOrDefault();
|
|
39
|
-
if (d) {
|
|
40
|
-
return d;
|
|
41
|
-
}
|
|
42
|
-
const hd = HostedDomain.create({
|
|
43
|
-
domainNameToCreate: domainName,
|
|
44
|
-
external: true
|
|
45
|
-
});
|
|
46
|
-
return await this.entityService.save(hd);
|
|
47
|
-
} catch (error) {
|
|
48
|
-
if(retry--) {
|
|
49
|
-
return await this.createDomain(emailAddress, retry - 1);
|
|
50
|
-
}
|
|
51
|
-
throw error;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
|
|
55
28
|
async createMailbox(model: IExternalMailbox) {
|
|
56
29
|
const {
|
|
57
30
|
emailAddress,
|
|
@@ -67,15 +40,11 @@ export default class ExternalMailboxService {
|
|
|
67
40
|
smtpUsername,
|
|
68
41
|
smtpPassword,
|
|
69
42
|
} = model;
|
|
70
|
-
const hd = await this.createDomain(emailAddress);
|
|
71
43
|
|
|
72
44
|
const dateCreated = DateTime.now;
|
|
73
45
|
|
|
74
|
-
const [ emailUsername ] = emailAddress.split("@");
|
|
75
|
-
|
|
76
46
|
const mb = Mailbox.create({
|
|
77
|
-
|
|
78
|
-
username: emailUsername,
|
|
47
|
+
externalEmailAddress: emailAddress,
|
|
79
48
|
name,
|
|
80
49
|
dateCreated,
|
|
81
50
|
dateUpdated: dateCreated,
|
|
@@ -12,10 +12,7 @@ export default class MailboxService {
|
|
|
12
12
|
private entityService: EntityService;
|
|
13
13
|
|
|
14
14
|
public async domains(onlyHosted = false) {
|
|
15
|
-
|
|
16
|
-
if (onlyHosted) {
|
|
17
|
-
q = q.where({}, (p) => (x) => x.external === false);
|
|
18
|
-
}
|
|
15
|
+
const q = this.entityService.query(HostedDomain);
|
|
19
16
|
const hosted = await q
|
|
20
17
|
.include((x) => x.domain)
|
|
21
18
|
.toArray();
|
|
@@ -100,7 +97,7 @@ export default class MailboxService {
|
|
|
100
97
|
async get(id) {
|
|
101
98
|
return this.entityService.query(Mailbox)
|
|
102
99
|
.where({ id }, (p) => (x) => x.mailboxID === p.id)
|
|
103
|
-
.include((x) => [x.userMailboxes, x.syncTargets, x.emailAddress, x.domain
|
|
100
|
+
.include((x) => [x.userMailboxes, x.syncTargets, x.emailAddress, x.domain])
|
|
104
101
|
.firstOrDefault();
|
|
105
102
|
}
|
|
106
103
|
|
|
@@ -59,7 +59,7 @@ export default class LookupChannelPage extends PopupWindowPage<any, IMailbox> {
|
|
|
59
59
|
if (search) {
|
|
60
60
|
search = search + "%";
|
|
61
61
|
if (search.startsWith("@")) {
|
|
62
|
-
q = q.where({ search }, (p) => (x) => Sql.text.like(x.domain.
|
|
62
|
+
q = q.where({ search }, (p) => (x) => Sql.text.like(x.domain.name, p.search) );
|
|
63
63
|
} else {
|
|
64
64
|
q = q.where({ search }, (p) => (x) => Sql.text.like(x.emailAddress.emailAddress, p.search));
|
|
65
65
|
}
|
package/src/model/model.ts
CHANGED
|
@@ -211,7 +211,7 @@ export interface IContact extends IClrEntity {
|
|
|
211
211
|
shippingAddressID?: number | null;
|
|
212
212
|
user?: IUser;
|
|
213
213
|
mailbox?: IMailbox;
|
|
214
|
-
|
|
214
|
+
hostedDomain?: IHostedDomain;
|
|
215
215
|
preview?: IAppFile;
|
|
216
216
|
billingAddress?: IContactAddress;
|
|
217
217
|
addresses?: ICollection<IContactAddress>;
|
|
@@ -232,7 +232,7 @@ export const Contact: IModel<IContact> = new Model<IContact>(
|
|
|
232
232
|
"Contact",
|
|
233
233
|
["contactID"],
|
|
234
234
|
{ name: "",type: "",dateCreated: new DefaultFactory(() => new DateTime()),dateUpdated: new DefaultFactory(() => new DateTime()) },
|
|
235
|
-
{"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":"
|
|
235
|
+
{"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":"hostedDomain","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"}]}
|
|
236
236
|
);
|
|
237
237
|
modelEntitySchemas["Contact"] = Contact;
|
|
238
238
|
|
|
@@ -352,6 +352,7 @@ export interface IDomain extends IClrEntity {
|
|
|
352
352
|
received?: number;
|
|
353
353
|
failed?: number;
|
|
354
354
|
emailAddresses?: ICollection<IEmailAddress>;
|
|
355
|
+
mailboxes?: ICollection<IMailbox>;
|
|
355
356
|
hostedDomain?: IHostedDomain;
|
|
356
357
|
contactDomains?: ICollection<IContactDomain>;
|
|
357
358
|
activities?: ICollection<IServerActivity>;
|
|
@@ -361,7 +362,7 @@ export const Domain: IModel<IDomain> = new Model<IDomain>(
|
|
|
361
362
|
"Domain",
|
|
362
363
|
["domainID"],
|
|
363
364
|
{ name: "",received: 0,failed: 0 },
|
|
364
|
-
{"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"}]}
|
|
365
|
+
{"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":"mailboxes","isCollection":true,"isInverse":true,"relatedName":"Mailbox"},{"name":"hostedDomain","isCollection":false,"isInverse":true,"relatedName":"HostedDomain"},{"name":"contactDomains","isCollection":true,"isInverse":true,"relatedName":"ContactDomain"},{"name":"activities","isCollection":true,"isInverse":true,"relatedName":"ServerActivity"}]}
|
|
365
366
|
);
|
|
366
367
|
modelEntitySchemas["Domain"] = Domain;
|
|
367
368
|
|
|
@@ -370,13 +371,11 @@ export interface IHostedDomain extends IClrEntity {
|
|
|
370
371
|
enableReceive?: boolean;
|
|
371
372
|
enableSend?: boolean;
|
|
372
373
|
useRelay?: boolean;
|
|
373
|
-
external?: boolean;
|
|
374
374
|
aliasForName?: string | null;
|
|
375
375
|
domainNameToCreate?: string;
|
|
376
376
|
domain?: IDomain;
|
|
377
377
|
aliasFor?: IHostedDomain;
|
|
378
378
|
aliases?: ICollection<IHostedDomain>;
|
|
379
|
-
mailboxes?: ICollection<IMailbox>;
|
|
380
379
|
contacts?: ICollection<IContact>;
|
|
381
380
|
domainUsers?: ICollection<IDomainUser>;
|
|
382
381
|
relays?: ICollection<IDomainRelay>;
|
|
@@ -387,8 +386,8 @@ export interface IHostedDomain extends IClrEntity {
|
|
|
387
386
|
export const HostedDomain: IModel<IHostedDomain> = new Model<IHostedDomain>(
|
|
388
387
|
"HostedDomain",
|
|
389
388
|
["domainID"],
|
|
390
|
-
{ enableReceive: false,enableSend: false,useRelay: false
|
|
391
|
-
{"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":"
|
|
389
|
+
{ enableReceive: false,enableSend: false,useRelay: false },
|
|
390
|
+
{"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":"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":"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"}]}
|
|
392
391
|
);
|
|
393
392
|
modelEntitySchemas["HostedDomain"] = HostedDomain;
|
|
394
393
|
|
|
@@ -438,14 +437,14 @@ export interface IDomainKey extends IClrEntity {
|
|
|
438
437
|
keyType?: string;
|
|
439
438
|
readonly publicKey?: string;
|
|
440
439
|
domainID?: number;
|
|
441
|
-
|
|
440
|
+
hostedDomain?: IHostedDomain;
|
|
442
441
|
}
|
|
443
442
|
|
|
444
443
|
export const DomainKey: IModel<IDomainKey> = new Model<IDomainKey>(
|
|
445
444
|
"DomainKey",
|
|
446
445
|
["domainKeyID"],
|
|
447
446
|
{ name: "",keyType: "",publicKey: "" },
|
|
448
|
-
{"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":"
|
|
447
|
+
{"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":"hostedDomain","fkMap":[{"fk":"domainID","relatedKey":"domainID"}],"relatedName":"HostedDomain"}]}
|
|
449
448
|
);
|
|
450
449
|
modelEntitySchemas["DomainKey"] = DomainKey;
|
|
451
450
|
|
|
@@ -621,7 +620,7 @@ export interface IEmailTemplate extends IClrEntity {
|
|
|
621
620
|
domainID?: number | null;
|
|
622
621
|
mailboxID?: number | null;
|
|
623
622
|
folderID?: number;
|
|
624
|
-
|
|
623
|
+
hostedDomain?: IHostedDomain;
|
|
625
624
|
mailbox?: IMailbox;
|
|
626
625
|
folder?: IAppFile;
|
|
627
626
|
}
|
|
@@ -630,7 +629,7 @@ export const EmailTemplate: IModel<IEmailTemplate> = new Model<IEmailTemplate>(
|
|
|
630
629
|
"EmailTemplate",
|
|
631
630
|
["templateID"],
|
|
632
631
|
{ },
|
|
633
|
-
{"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":"
|
|
632
|
+
{"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":"hostedDomain","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"}]}
|
|
634
633
|
);
|
|
635
634
|
modelEntitySchemas["EmailTemplate"] = EmailTemplate;
|
|
636
635
|
|
|
@@ -655,11 +654,12 @@ export interface IMailbox extends IClrEntity {
|
|
|
655
654
|
datePublished?: DateTime | null;
|
|
656
655
|
dateEngaged?: DateTime | null;
|
|
657
656
|
username?: string;
|
|
657
|
+
externalEmailAddress?: string;
|
|
658
658
|
name?: string;
|
|
659
659
|
notify?: boolean;
|
|
660
660
|
deleteVerificationID?: string;
|
|
661
661
|
emailAddress?: IEmailAddress;
|
|
662
|
-
domain?:
|
|
662
|
+
domain?: IDomain;
|
|
663
663
|
logo?: IAppFile;
|
|
664
664
|
contacts?: ICollection<IContact>;
|
|
665
665
|
templates?: ICollection<IEmailTemplate>;
|
|
@@ -678,7 +678,7 @@ export const Mailbox: IModel<IMailbox> = new Model<IMailbox>(
|
|
|
678
678
|
"Mailbox",
|
|
679
679
|
["mailboxID"],
|
|
680
680
|
{ storage: 0,maxStorage: 0,indexAttachments: false,indexImageAttachments: false,openThreads: 0,totalThreads: 0,unread: 0,dateCreated: new DefaultFactory(() => new DateTime()),dateUpdated: new DefaultFactory(() => new DateTime()),isChannel: false,isPrivateChannel: false,requireApproval: false,subscriberCount: 0 },
|
|
681
|
-
{"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":"openThreads","type":"number","default":["openThreads","0"]},{"name":"totalThreads","type":"number","default":["totalThreads","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":"
|
|
681
|
+
{"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":"openThreads","type":"number","default":["openThreads","0"]},{"name":"totalThreads","type":"number","default":["totalThreads","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":"Domain"},{"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"}]}
|
|
682
682
|
);
|
|
683
683
|
modelEntitySchemas["Mailbox"] = Mailbox;
|
|
684
684
|
|
|
@@ -925,6 +925,7 @@ export interface IStore extends IClrEntity {
|
|
|
925
925
|
insights?: ICollection<IStoreInsight>;
|
|
926
926
|
ledgers?: ICollection<IStoreLedger>;
|
|
927
927
|
journals?: ICollection<IStoreJournal>;
|
|
928
|
+
tags?: ICollection<IStoreTag>;
|
|
928
929
|
storeWebsites?: ICollection<IWebSiteStore>;
|
|
929
930
|
}
|
|
930
931
|
|
|
@@ -932,7 +933,7 @@ export const Store: IModel<IStore> = new Model<IStore>(
|
|
|
932
933
|
"Store",
|
|
933
934
|
["storeID"],
|
|
934
935
|
{ name: "" },
|
|
935
|
-
{"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"}]}
|
|
936
|
+
{"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":"tags","isCollection":true,"isInverse":true,"relatedName":"StoreTag"},{"name":"storeWebsites","isCollection":true,"isInverse":true,"relatedName":"WebSiteStore"}]}
|
|
936
937
|
);
|
|
937
938
|
modelEntitySchemas["Store"] = Store;
|
|
938
939
|
|
|
@@ -1024,16 +1025,33 @@ export interface IStoreItemFolder extends IClrEntity {
|
|
|
1024
1025
|
parent?: IStoreItemFolder;
|
|
1025
1026
|
children?: ICollection<IStoreItemFolder>;
|
|
1026
1027
|
items?: ICollection<IStoreItem>;
|
|
1028
|
+
tags?: ICollection<IStoreItemFolderTag>;
|
|
1027
1029
|
}
|
|
1028
1030
|
|
|
1029
1031
|
export const StoreItemFolder: IModel<IStoreItemFolder> = new Model<IStoreItemFolder>(
|
|
1030
1032
|
"StoreItemFolder",
|
|
1031
1033
|
["itemFolderID"],
|
|
1032
1034
|
{ name: "",path: "" },
|
|
1033
|
-
{"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"}]}
|
|
1035
|
+
{"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":"tags","isCollection":true,"isInverse":true,"relatedName":"StoreItemFolderTag"}]}
|
|
1034
1036
|
);
|
|
1035
1037
|
modelEntitySchemas["StoreItemFolder"] = StoreItemFolder;
|
|
1036
1038
|
|
|
1039
|
+
export interface IStoreItemFolderTag extends IClrEntity {
|
|
1040
|
+
itemFolderID?: number;
|
|
1041
|
+
tagID?: number;
|
|
1042
|
+
count?: number;
|
|
1043
|
+
itemFolder?: IStoreItemFolder;
|
|
1044
|
+
tag?: ITag;
|
|
1045
|
+
}
|
|
1046
|
+
|
|
1047
|
+
export const StoreItemFolderTag: IModel<IStoreItemFolderTag> = new Model<IStoreItemFolderTag>(
|
|
1048
|
+
"StoreItemFolderTag",
|
|
1049
|
+
["itemFolderID","tagID"],
|
|
1050
|
+
{ count: 0 },
|
|
1051
|
+
{"name":"store_item_folder_tags","keys":[{"name":"itemFolderID","type":"number"},{"name":"tagID","type":"number"}],"properties":[{"name":"count","type":"number","default":["count","0"]}],"relations":[{"name":"itemFolder","fkMap":[{"fk":"itemFolderID","relatedKey":"itemFolderID"}],"relatedName":"StoreItemFolder"},{"name":"tag","fkMap":[{"fk":"tagID","relatedKey":"tagID"}],"relatedName":"Tag"}]}
|
|
1052
|
+
);
|
|
1053
|
+
modelEntitySchemas["StoreItemFolderTag"] = StoreItemFolderTag;
|
|
1054
|
+
|
|
1037
1055
|
export interface IStoreItemPrice extends IClrEntity {
|
|
1038
1056
|
readonly priceID?: number;
|
|
1039
1057
|
storeItemID?: number;
|
|
@@ -1236,6 +1254,22 @@ export const StoreItemTax: IModel<IStoreItemTax> = new Model<IStoreItemTax>(
|
|
|
1236
1254
|
);
|
|
1237
1255
|
modelEntitySchemas["StoreItemTax"] = StoreItemTax;
|
|
1238
1256
|
|
|
1257
|
+
export interface IStoreTag extends IClrEntity {
|
|
1258
|
+
storeID?: number;
|
|
1259
|
+
tagID?: number;
|
|
1260
|
+
count?: number;
|
|
1261
|
+
store?: IStore;
|
|
1262
|
+
tag?: ITag;
|
|
1263
|
+
}
|
|
1264
|
+
|
|
1265
|
+
export const StoreTag: IModel<IStoreTag> = new Model<IStoreTag>(
|
|
1266
|
+
"StoreTag",
|
|
1267
|
+
["storeID","tagID"],
|
|
1268
|
+
{ count: 0 },
|
|
1269
|
+
{"name":"store_tags","keys":[{"name":"storeID","type":"number"},{"name":"tagID","type":"number"}],"properties":[{"name":"count","type":"number","default":["count","0"]}],"relations":[{"name":"store","fkMap":[{"fk":"storeID","relatedKey":"storeID"}],"relatedName":"Store"},{"name":"tag","fkMap":[{"fk":"tagID","relatedKey":"tagID"}],"relatedName":"Tag"}]}
|
|
1270
|
+
);
|
|
1271
|
+
modelEntitySchemas["StoreTag"] = StoreTag;
|
|
1272
|
+
|
|
1239
1273
|
export interface IStoreItemTag extends IClrEntity {
|
|
1240
1274
|
storeItemID?: number;
|
|
1241
1275
|
tagID?: number;
|
|
@@ -1263,11 +1297,17 @@ export interface IUser extends IClrEntity {
|
|
|
1263
1297
|
dateUpdated?: DateTime;
|
|
1264
1298
|
readonly storage?: number;
|
|
1265
1299
|
maxStorage?: number;
|
|
1300
|
+
maxWebSites?: number;
|
|
1301
|
+
maxExternalInboxes?: number;
|
|
1302
|
+
maxChildUsers?: number;
|
|
1303
|
+
parentID?: number | null;
|
|
1266
1304
|
/** Save this to change password */
|
|
1267
1305
|
changePassword?: { oldPassword?: string;newPassword?: string;forceChangePasswordOnLogin?: boolean };
|
|
1268
1306
|
createFolder?: boolean;
|
|
1269
1307
|
createWebSite?: boolean;
|
|
1270
1308
|
autoEnableMF?: boolean;
|
|
1309
|
+
parent?: IUser;
|
|
1310
|
+
children?: ICollection<IUser>;
|
|
1271
1311
|
createdFiles?: ICollection<IAppFile>;
|
|
1272
1312
|
sentEmails?: ICollection<IEmail>;
|
|
1273
1313
|
accessTokens?: ICollection<IAccessToken>;
|
|
@@ -1290,8 +1330,8 @@ export const UserStatusArray = [{"label":"active","value":"active"},{"label":"bl
|
|
|
1290
1330
|
export const User: IModel<IUser> = new Model<IUser>(
|
|
1291
1331
|
"User",
|
|
1292
1332
|
["userID"],
|
|
1293
|
-
{ userName: "",displayName: "",status: "active",isExternal: false,multiFactor: false,dateUpdated: new DefaultFactory(() => new DateTime()),storage: 0,maxStorage: 0 },
|
|
1294
|
-
{"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"}]}
|
|
1333
|
+
{ userName: "",displayName: "",status: "active",isExternal: false,multiFactor: false,dateUpdated: new DefaultFactory(() => new DateTime()),storage: 0,maxStorage: 0,maxWebSites: 0,maxExternalInboxes: 0,maxChildUsers: 0 },
|
|
1334
|
+
{"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"]},{"name":"maxWebSites","type":"number","default":["maxWebSites","0"]},{"name":"maxExternalInboxes","type":"number","default":["maxExternalInboxes","0"]},{"name":"maxChildUsers","type":"number","default":["maxChildUsers","0"]},{"name":"parentID","type":"number"}],"relations":[{"name":"parent","fkMap":[{"fk":"parentID","relatedKey":"userID"}],"relatedName":"User"},{"name":"children","isCollection":true,"isInverse":true,"relatedName":"User"},{"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"}]}
|
|
1295
1335
|
);
|
|
1296
1336
|
modelEntitySchemas["User"] = User;
|
|
1297
1337
|
|
|
@@ -1546,13 +1586,13 @@ modelEntitySchemas["IncomingSmsSource"] = IncomingSmsSource;
|
|
|
1546
1586
|
export interface IVerificationToken extends IClrEntity {
|
|
1547
1587
|
readonly verificationID?: number;
|
|
1548
1588
|
externalID?: string | null;
|
|
1549
|
-
externalConfig?: string | null;
|
|
1550
1589
|
dateCreated?: DateTime;
|
|
1551
1590
|
expiry?: DateTime;
|
|
1552
1591
|
verified?: boolean;
|
|
1553
1592
|
code?: string;
|
|
1554
1593
|
accessCode?: string;
|
|
1555
1594
|
ipAddress?: string | null;
|
|
1595
|
+
externalConfig?: string | null;
|
|
1556
1596
|
smsConfig?: Object;
|
|
1557
1597
|
loginSessions?: ICollection<ILoginSession>;
|
|
1558
1598
|
authFactors?: ICollection<IUserAuthFactor>;
|
|
@@ -1563,7 +1603,7 @@ export const VerificationToken: IModel<IVerificationToken> = new Model<IVerifica
|
|
|
1563
1603
|
"VerificationToken",
|
|
1564
1604
|
["verificationID"],
|
|
1565
1605
|
{ dateCreated: new DefaultFactory(() => new DateTime()),expiry: new DefaultFactory(() => new DateTime()),verified: false,code: "",accessCode: "" },
|
|
1566
|
-
{"name":"verification_tokens","keys":[{"name":"verificationID","type":"number","generated":"identity"}],"properties":[{"name":"externalID","type":"string","default":["externalID","\"\""]},{"name":"dateCreated","type":"DateTime","default":["dateCreated","new DefaultFactory(() => new DateTime())"]},{"name":"expiry","type":"DateTime","default":["expiry","new DefaultFactory(() => new DateTime())"]},{"name":"verified","type":"boolean","default":["verified","false"]},{"name":"code","type":"string","default":["code","\"\""]},{"name":"accessCode","type":"string","default":["accessCode","\"\""]},{"name":"ipAddress","type":"string","default":["ipAddress","\"\""]}],"relations":[{"name":"loginSessions","isCollection":true,"isInverse":true,"relatedName":"LoginSession"},{"name":"authFactors","isCollection":true,"isInverse":true,"relatedName":"UserAuthFactor"},{"name":"addresses","isCollection":true,"isInverse":true,"relatedName":"VerificationTokenAddress"}]}
|
|
1606
|
+
{"name":"verification_tokens","keys":[{"name":"verificationID","type":"number","generated":"identity"}],"properties":[{"name":"externalID","type":"string","default":["externalID","\"\""]},{"name":"dateCreated","type":"DateTime","default":["dateCreated","new DefaultFactory(() => new DateTime())"]},{"name":"expiry","type":"DateTime","default":["expiry","new DefaultFactory(() => new DateTime())"]},{"name":"verified","type":"boolean","default":["verified","false"]},{"name":"code","type":"string","default":["code","\"\""]},{"name":"accessCode","type":"string","default":["accessCode","\"\""]},{"name":"ipAddress","type":"string","default":["ipAddress","\"\""]},{"name":"externalConfig","type":"string","default":["externalConfig","\"\""]}],"relations":[{"name":"loginSessions","isCollection":true,"isInverse":true,"relatedName":"LoginSession"},{"name":"authFactors","isCollection":true,"isInverse":true,"relatedName":"UserAuthFactor"},{"name":"addresses","isCollection":true,"isInverse":true,"relatedName":"VerificationTokenAddress"}]}
|
|
1567
1607
|
);
|
|
1568
1608
|
modelEntitySchemas["VerificationToken"] = VerificationToken;
|
|
1569
1609
|
|
|
@@ -1584,6 +1624,7 @@ modelEntitySchemas["VerificationTokenAddress"] = VerificationTokenAddress;
|
|
|
1584
1624
|
export interface ITag extends IClrEntity {
|
|
1585
1625
|
readonly tagID?: number;
|
|
1586
1626
|
name?: string;
|
|
1627
|
+
label?: string;
|
|
1587
1628
|
readonly lowerCaseName?: string;
|
|
1588
1629
|
path?: string | null;
|
|
1589
1630
|
isSystemTag?: boolean;
|
|
@@ -1594,116 +1635,19 @@ export interface ITag extends IClrEntity {
|
|
|
1594
1635
|
fileTags?: ICollection<IAppFileTag>;
|
|
1595
1636
|
emailTags?: ICollection<IEmailTag>;
|
|
1596
1637
|
mailboxContactTags?: ICollection<IMailboxContactTag>;
|
|
1638
|
+
storeItemFolderTags?: ICollection<IStoreItemFolderTag>;
|
|
1639
|
+
storeTags?: ICollection<IStoreTag>;
|
|
1597
1640
|
storeItemTags?: ICollection<IStoreItemTag>;
|
|
1598
1641
|
}
|
|
1599
1642
|
|
|
1600
1643
|
export const Tag: IModel<ITag> = new Model<ITag>(
|
|
1601
1644
|
"Tag",
|
|
1602
1645
|
["tagID"],
|
|
1603
|
-
{ name: "",isSystemTag: false },
|
|
1604
|
-
{"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"}]}
|
|
1646
|
+
{ name: "",label: "",isSystemTag: false },
|
|
1647
|
+
{"name":"tags","keys":[{"name":"tagID","type":"number","generated":"identity"}],"properties":[{"name":"name","type":"string","default":["name","\"\""]},{"name":"label","type":"string","default":["label","\"\""]},{"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":"storeItemFolderTags","isCollection":true,"isInverse":true,"relatedName":"StoreItemFolderTag"},{"name":"storeTags","isCollection":true,"isInverse":true,"relatedName":"StoreTag"},{"name":"storeItemTags","isCollection":true,"isInverse":true,"relatedName":"StoreItemTag"}]}
|
|
1605
1648
|
);
|
|
1606
1649
|
modelEntitySchemas["Tag"] = Tag;
|
|
1607
1650
|
|
|
1608
|
-
export interface IVirtualServer extends IClrEntity {
|
|
1609
|
-
readonly serverID?: number;
|
|
1610
|
-
serverName?: string;
|
|
1611
|
-
ownerEmailAddress?: string | null;
|
|
1612
|
-
ownerPhoneNumber?: string | null;
|
|
1613
|
-
active?: boolean;
|
|
1614
|
-
bucketName?: string | null;
|
|
1615
|
-
database?: string | null;
|
|
1616
|
-
host?: string;
|
|
1617
|
-
forwardHost?: string | null;
|
|
1618
|
-
forwardPublicKey?: string | null;
|
|
1619
|
-
environmentVariables?: string | null;
|
|
1620
|
-
maxStorageGB?: number;
|
|
1621
|
-
dnsZones?: ICollection<IDnsZone>;
|
|
1622
|
-
}
|
|
1623
|
-
|
|
1624
|
-
export const VirtualServer: IModel<IVirtualServer> = new Model<IVirtualServer>(
|
|
1625
|
-
"VirtualServer",
|
|
1626
|
-
["serverID"],
|
|
1627
|
-
{ serverName: "",active: false,host: "",maxStorageGB: 0 },
|
|
1628
|
-
{"name":"virtual_servers","keys":[{"name":"serverID","type":"number","generated":"identity"}],"properties":[{"name":"serverName","type":"string","default":["serverName","\"\""]},{"name":"ownerEmailAddress","type":"string","default":["ownerEmailAddress","\"\""]},{"name":"ownerPhoneNumber","type":"string","default":["ownerPhoneNumber","\"\""]},{"name":"active","type":"boolean","default":["active","false"]},{"name":"bucketName","type":"string","default":["bucketName","\"\""]},{"name":"database","type":"string","default":["database","\"\""]},{"name":"host","type":"string","default":["host","\"\""]},{"name":"forwardHost","type":"string","default":["forwardHost","\"\""]},{"name":"forwardPrivateKey","type":"string","default":["forwardPrivateKey","\"\""]},{"name":"forwardPublicKey","type":"string","default":["forwardPublicKey","\"\""]},{"name":"environmentVariables","type":"string","default":["environmentVariables","\"\""]},{"name":"maxStorageGB","type":"number","default":["maxStorageGB","0"]}],"relations":[{"name":"dnsZones","isCollection":true,"isInverse":true,"relatedName":"DnsZone"}]}
|
|
1629
|
-
);
|
|
1630
|
-
modelEntitySchemas["VirtualServer"] = VirtualServer;
|
|
1631
|
-
|
|
1632
|
-
export interface IDnsZone extends IClrEntity {
|
|
1633
|
-
readonly zoneID?: number;
|
|
1634
|
-
serverID?: number;
|
|
1635
|
-
zone?: string;
|
|
1636
|
-
keySigningKeyID?: number;
|
|
1637
|
-
zoneSigningKeyID?: number;
|
|
1638
|
-
dateCreated?: DateTime;
|
|
1639
|
-
dateUpdated?: DateTime;
|
|
1640
|
-
signed?: string | null;
|
|
1641
|
-
unsigned?: string | null;
|
|
1642
|
-
virtualServer?: IVirtualServer;
|
|
1643
|
-
ksk?: IDnsSigningKey;
|
|
1644
|
-
zsk?: IDnsSigningKey;
|
|
1645
|
-
records?: ICollection<IDnsZoneRecord>;
|
|
1646
|
-
}
|
|
1647
|
-
|
|
1648
|
-
export const DnsZone: IModel<IDnsZone> = new Model<IDnsZone>(
|
|
1649
|
-
"DnsZone",
|
|
1650
|
-
["zoneID"],
|
|
1651
|
-
{ zone: "",dateCreated: new DefaultFactory(() => new DateTime()),dateUpdated: new DefaultFactory(() => new DateTime()) },
|
|
1652
|
-
{"name":"dns_zones","keys":[{"name":"zoneID","type":"number","generated":"identity"}],"properties":[{"name":"serverID","type":"number"},{"name":"zone","type":"string","default":["zone","\"\""]},{"name":"zoneLowerCase","type":"string","generated":"computed"},{"name":"keySigningKeyID","type":"number"},{"name":"zoneSigningKeyID","type":"number"},{"name":"dateCreated","type":"DateTime","default":["dateCreated","new DefaultFactory(() => new DateTime())"]},{"name":"dateUpdated","type":"DateTime","default":["dateUpdated","new DefaultFactory(() => new DateTime())"]},{"name":"signed","type":"string","default":["signed","\"\""]},{"name":"unsigned","type":"string","default":["unsigned","\"\""]}],"relations":[{"name":"virtualServer","fkMap":[{"fk":"serverID","relatedKey":"serverID"}],"relatedName":"VirtualServer"},{"name":"ksk","fkMap":[{"fk":"keySigningKeyID","relatedKey":"keyID"}],"relatedName":"DnsSigningKey"},{"name":"zsk","fkMap":[{"fk":"zoneSigningKeyID","relatedKey":"keyID"}],"relatedName":"DnsSigningKey"},{"name":"records","isCollection":true,"isInverse":true,"relatedName":"DnsZoneRecord"}]}
|
|
1653
|
-
);
|
|
1654
|
-
modelEntitySchemas["DnsZone"] = DnsZone;
|
|
1655
|
-
|
|
1656
|
-
export interface IDnsZoneRecord extends IClrEntity {
|
|
1657
|
-
readonly recordID?: number;
|
|
1658
|
-
zoneID?: number;
|
|
1659
|
-
disabled?: boolean;
|
|
1660
|
-
name?: string;
|
|
1661
|
-
type?: "A" | "AAAA" | "CNAME" | "MX" | "TXT" | "PTR" | "SRV" | "CAA" | "NS" | "SOA";
|
|
1662
|
-
isAlias?: boolean;
|
|
1663
|
-
value?: string;
|
|
1664
|
-
ttl?: number;
|
|
1665
|
-
dateCreated?: DateTime;
|
|
1666
|
-
dateUpdated?: DateTime;
|
|
1667
|
-
notes?: string | null;
|
|
1668
|
-
signature?: string | null;
|
|
1669
|
-
expiryDate?: DateTime | null;
|
|
1670
|
-
readonly fqdn?: string | null;
|
|
1671
|
-
hosted?: boolean;
|
|
1672
|
-
zone?: IDnsZone;
|
|
1673
|
-
}
|
|
1674
|
-
|
|
1675
|
-
export const DnsZoneRecordTypeArray = [{"label":"A","value":"A"},{"label":"AAAA","value":"AAAA"},{"label":"CNAME","value":"CNAME"},{"label":"MX","value":"MX"},{"label":"TXT","value":"TXT"},{"label":"PTR","value":"PTR"},{"label":"SRV","value":"SRV"},{"label":"CAA","value":"CAA"},{"label":"NS","value":"NS"},{"label":"SOA","value":"SOA"}];
|
|
1676
|
-
|
|
1677
|
-
export const DnsZoneRecord: IModel<IDnsZoneRecord> = new Model<IDnsZoneRecord>(
|
|
1678
|
-
"DnsZoneRecord",
|
|
1679
|
-
["recordID"],
|
|
1680
|
-
{ disabled: false,name: "",type: "A",isAlias: false,value: "",ttl: 0,dateCreated: new DefaultFactory(() => new DateTime()),dateUpdated: new DefaultFactory(() => new DateTime()),hosted: false },
|
|
1681
|
-
{"name":"dns_zone_records","keys":[{"name":"recordID","type":"number","generated":"identity"}],"properties":[{"name":"zoneID","type":"number"},{"name":"disabled","type":"boolean","default":["disabled","false"]},{"name":"name","type":"string","default":["name","\"\""]},{"name":"type","type":"Object","default":["type","\"A\""]},{"name":"isAlias","type":"boolean","default":["isAlias","false"]},{"name":"value","type":"string","default":["value","\"\""]},{"name":"ttl","type":"number","default":["ttl","0"]},{"name":"dateCreated","type":"DateTime","default":["dateCreated","new DefaultFactory(() => new DateTime())"]},{"name":"dateUpdated","type":"DateTime","default":["dateUpdated","new DefaultFactory(() => new DateTime())"]},{"name":"notes","type":"string","default":["notes","\"\""]},{"name":"signature","type":"string","default":["signature","\"\""]},{"name":"expiryDate","type":"DateTime","default":["expiryDate","new DefaultFactory(() => new DateTime())"]},{"name":"fqdn","type":"string","default":["fqdn","\"\""]},{"name":"hosted","type":"boolean","default":["hosted","false"]}],"relations":[{"name":"zone","fkMap":[{"fk":"zoneID","relatedKey":"zoneID"}],"relatedName":"DnsZone"}]}
|
|
1682
|
-
);
|
|
1683
|
-
modelEntitySchemas["DnsZoneRecord"] = DnsZoneRecord;
|
|
1684
|
-
|
|
1685
|
-
export interface IDnsSigningKey extends IClrEntity {
|
|
1686
|
-
readonly keyID?: number;
|
|
1687
|
-
publicKey?: string;
|
|
1688
|
-
digestAlgorithm?: number;
|
|
1689
|
-
signingAlgorithm?: number;
|
|
1690
|
-
digest?: string;
|
|
1691
|
-
flags?: number;
|
|
1692
|
-
dateCreated?: DateTime;
|
|
1693
|
-
expiryDate?: DateTime;
|
|
1694
|
-
fileName?: string;
|
|
1695
|
-
kskZones?: ICollection<IDnsZone>;
|
|
1696
|
-
zskZones?: ICollection<IDnsZone>;
|
|
1697
|
-
}
|
|
1698
|
-
|
|
1699
|
-
export const DnsSigningKey: IModel<IDnsSigningKey> = new Model<IDnsSigningKey>(
|
|
1700
|
-
"DnsSigningKey",
|
|
1701
|
-
["keyID"],
|
|
1702
|
-
{ publicKey: "",digestAlgorithm: 0,signingAlgorithm: 0,digest: "",flags: 0,dateCreated: new DefaultFactory(() => new DateTime()),expiryDate: new DefaultFactory(() => new DateTime()),fileName: "" },
|
|
1703
|
-
{"name":"dns_signing_keys","keys":[{"name":"keyID","type":"number","generated":"identity"}],"properties":[{"name":"publicKey","type":"string","default":["publicKey","\"\""]},{"name":"privateKey","type":"string","default":["privateKey","\"\""]},{"name":"digestAlgorithm","type":"number","default":["digestAlgorithm","0"]},{"name":"signingAlgorithm","type":"number","default":["signingAlgorithm","0"]},{"name":"digest","type":"string","default":["digest","\"\""]},{"name":"flags","type":"number","default":["flags","0"]},{"name":"dateCreated","type":"DateTime","default":["dateCreated","new DefaultFactory(() => new DateTime())"]},{"name":"expiryDate","type":"DateTime","default":["expiryDate","new DefaultFactory(() => new DateTime())"]},{"name":"fileName","type":"string","default":["fileName","\"\""]}],"relations":[{"name":"kskZones","isCollection":true,"isInverse":true,"relatedName":"DnsZone"},{"name":"zskZones","isCollection":true,"isInverse":true,"relatedName":"DnsZone"}]}
|
|
1704
|
-
);
|
|
1705
|
-
modelEntitySchemas["DnsSigningKey"] = DnsSigningKey;
|
|
1706
|
-
|
|
1707
1651
|
const fixRelatedSchemas = (schema) => {
|
|
1708
1652
|
for (const key in schema) {
|
|
1709
1653
|
if (Object.prototype.hasOwnProperty.call(schema, key)) {
|
|
@@ -66,8 +66,8 @@ const css = styled.css `
|
|
|
66
66
|
& > .preview {
|
|
67
67
|
grid-row: 1;
|
|
68
68
|
grid-column: 2;
|
|
69
|
-
height:
|
|
70
|
-
min-width:
|
|
69
|
+
height: 60%;
|
|
70
|
+
min-width: 50%;
|
|
71
71
|
& img {
|
|
72
72
|
-webkit-user-drag: none;
|
|
73
73
|
}
|
|
@@ -76,7 +76,7 @@ const css = styled.css `
|
|
|
76
76
|
}
|
|
77
77
|
|
|
78
78
|
& img {
|
|
79
|
-
max-width:
|
|
79
|
+
max-width: 90%;
|
|
80
80
|
}
|
|
81
81
|
`.installLocal();
|
|
82
82
|
|