@social-mail/social-mail-web-server 1.5.270 → 1.5.271
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/server/model/SocialMailContextEvents.js +1 -1
- package/dist/server/model/SocialMailContextEvents.js.map +1 -1
- package/dist/server/model/entities/StoreAccount.d.ts +1 -2
- package/dist/server/model/entities/StoreAccount.d.ts.map +1 -1
- package/dist/server/model/entities/StoreAccount.js +10 -14
- package/dist/server/model/entities/StoreAccount.js.map +1 -1
- package/dist/server/model/entities/StorePaymentGateway.js +1 -1
- package/dist/server/model/entities/StorePaymentGateway.js.map +1 -1
- package/dist/server/model/entities/User.d.ts +1 -1
- package/dist/server/model/entities/User.d.ts.map +1 -1
- package/dist/server/model/events/StoreAccountAddressEvents.js +1 -1
- package/dist/server/model/events/StoreAccountAddressEvents.js.map +1 -1
- package/dist/server/model/events/StoreAccountEmailEvents.js +1 -1
- package/dist/server/model/events/StoreAccountEmailEvents.js.map +1 -1
- package/dist/server/model/events/{StoreLedgerEvents.d.ts → StoreAccountEvents.d.ts} +4 -2
- package/dist/server/model/events/StoreAccountEvents.d.ts.map +1 -0
- package/dist/server/model/events/StoreAccountEvents.js +74 -0
- package/dist/server/model/events/StoreAccountEvents.js.map +1 -0
- package/dist/server/model/events/StoreAccountPhoneEvents.js +1 -1
- package/dist/server/model/events/StoreAccountPhoneEvents.js.map +1 -1
- package/dist/server/model/events/StoreJournalEntryEvents.js +1 -1
- package/dist/server/model/events/StoreJournalEntryEvents.js.map +1 -1
- package/dist/server/model/events/StoreJournalEvents.js +1 -1
- package/dist/server/model/events/StoreJournalEvents.js.map +1 -1
- package/dist/server/model/events/StoreJournalLineItemEvents.js +1 -1
- package/dist/server/model/events/StoreJournalLineItemEvents.js.map +1 -1
- package/dist/server/model/events/VerificationTokenEvents.d.ts.map +1 -1
- package/dist/server/model/events/VerificationTokenEvents.js +9 -4
- package/dist/server/model/events/VerificationTokenEvents.js.map +1 -1
- package/dist/server/seed/ui/seed-ui.js +1 -1
- package/dist/server/services/accounts/chart-of-accounts/ChartOfAccounts.js +1 -1
- package/dist/server/services/accounts/chart-of-accounts/ChartOfAccounts.js.map +1 -1
- package/dist/server/services/external-otp-in/ExternalOtpInService.d.ts.map +1 -1
- package/dist/server/services/external-otp-in/ExternalOtpInService.js +2 -2
- package/dist/server/services/external-otp-in/ExternalOtpInService.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/wwwroot/routes/social-mail/user/signup/post.d.ts.map +1 -1
- package/dist/wwwroot/routes/social-mail/user/signup/post.js +19 -21
- package/dist/wwwroot/routes/social-mail/user/signup/post.js.map +1 -1
- package/dist/wwwroot/routes/store/buy/[productID]/get.js +1 -1
- package/dist/wwwroot/routes/store/buy/[productID]/get.js.map +1 -1
- package/package.json +3 -3
- package/src/server/model/SocialMailContextEvents.ts +1 -1
- package/src/server/model/entities/StoreAccount.ts +11 -14
- package/src/server/model/entities/StorePaymentGateway.ts +1 -1
- package/src/server/model/entities/User.ts +1 -1
- package/src/server/model/events/StoreAccountAddressEvents.ts +1 -1
- package/src/server/model/events/StoreAccountEmailEvents.ts +1 -1
- package/src/server/model/events/{StoreLedgerEvents.ts → StoreAccountEvents.ts} +32 -2
- package/src/server/model/events/StoreAccountPhoneEvents.ts +1 -1
- package/src/server/model/events/StoreJournalEntryEvents.ts +1 -1
- package/src/server/model/events/StoreJournalEvents.ts +1 -1
- package/src/server/model/events/StoreJournalLineItemEvents.ts +1 -1
- package/src/server/model/events/VerificationTokenEvents.ts +14 -9
- package/src/server/seed/ui/seed-ui.ts +1 -1
- package/src/server/services/accounts/chart-of-accounts/ChartOfAccounts.ts +1 -1
- package/src/server/services/external-otp-in/ExternalOtpInService.ts +3 -4
- package/src/wwwroot/routes/social-mail/user/signup/post.tsx +20 -22
- package/src/wwwroot/routes/store/buy/[productID]/get.tsx +1 -1
- package/dist/server/model/events/StoreLedgerEvents.d.ts.map +0 -1
- package/dist/server/model/events/StoreLedgerEvents.js +0 -38
- package/dist/server/model/events/StoreLedgerEvents.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"post.d.ts","sourceRoot":"","sources":["../../../../../../src/wwwroot/routes/social-mail/user/signup/post.tsx"],"names":[],"mappings":"AAGA,OAAO,IAAI,MAAM,0CAA0C,CAAC;AAE5D,OAAO,iBAAiB,MAAM,kDAAkD,CAAC;AACjF,OAAO,aAAa,MAAM,iDAAiD,CAAC;AAC5E,OAAO,mBAAmB,MAAM,uDAAuD,CAAC;AACxF,OAAO,cAAc,MAAM,0DAA0D,CAAC;AAEtF,OAAO,oBAAoB,MAAM,wEAAwE,CAAC;AAG1G,OAAO,cAAc,MAAM,wDAAwD,CAAC;AACpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,iBAAiB,MAAM,2DAA2D,CAAC;AAE1F,MAAM,WAAW,OAAO;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACpC,KAAK,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAClC,KAAK,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;CAC3C;AAED;;GAEG;AAIH,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,IAAI;IAG5C,cAAc,EAAE,cAAc,CAAC;IAG/B,aAAa,EAAE,aAAa,CAAC;IAG7B,mBAAmB,EAAE,mBAAmB,CAAC;IAGzC,GAAG,EAAE,oBAAoB,CAAC;IAG1B,EAAE,EAAE,iBAAiB,CAAC;IAGtB,cAAc,EAAE,cAAc,CAAC;IAEzB,GAAG;
|
|
1
|
+
{"version":3,"file":"post.d.ts","sourceRoot":"","sources":["../../../../../../src/wwwroot/routes/social-mail/user/signup/post.tsx"],"names":[],"mappings":"AAGA,OAAO,IAAI,MAAM,0CAA0C,CAAC;AAE5D,OAAO,iBAAiB,MAAM,kDAAkD,CAAC;AACjF,OAAO,aAAa,MAAM,iDAAiD,CAAC;AAC5E,OAAO,mBAAmB,MAAM,uDAAuD,CAAC;AACxF,OAAO,cAAc,MAAM,0DAA0D,CAAC;AAEtF,OAAO,oBAAoB,MAAM,wEAAwE,CAAC;AAG1G,OAAO,cAAc,MAAM,wDAAwD,CAAC;AACpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,iBAAiB,MAAM,2DAA2D,CAAC;AAE1F,MAAM,WAAW,OAAO;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACpC,KAAK,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAClC,KAAK,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;CAC3C;AAED;;GAEG;AAIH,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,IAAI;IAG5C,cAAc,EAAE,cAAc,CAAC;IAG/B,aAAa,EAAE,aAAa,CAAC;IAG7B,mBAAmB,EAAE,mBAAmB,CAAC;IAGzC,GAAG,EAAE,oBAAoB,CAAC;IAG1B,EAAE,EAAE,iBAAiB,CAAC;IAGtB,cAAc,EAAE,cAAc,CAAC;IAEzB,GAAG;CAgKZ"}
|
|
@@ -80,24 +80,6 @@ let ExternalSignup = class ExternalSignup extends Page {
|
|
|
80
80
|
addresses.push(shippingAddress);
|
|
81
81
|
}
|
|
82
82
|
const emailAddressID = await this.emailAddressService.getId(model.emailAddress, model.name);
|
|
83
|
-
const contact = db.storeAccounts.add({
|
|
84
|
-
dateCreated,
|
|
85
|
-
storeID,
|
|
86
|
-
/** This is important as name must be unique in the ledger */
|
|
87
|
-
name: `${model.name}(${emailAddressID})`,
|
|
88
|
-
head: "Customer",
|
|
89
|
-
emails: [
|
|
90
|
-
db.storeAccountEmails.add({
|
|
91
|
-
emailAddressID
|
|
92
|
-
})
|
|
93
|
-
],
|
|
94
|
-
phones: [
|
|
95
|
-
db.storeAccountPhones.add({
|
|
96
|
-
phoneNumberE64
|
|
97
|
-
})
|
|
98
|
-
],
|
|
99
|
-
addresses
|
|
100
|
-
});
|
|
101
83
|
// create user...
|
|
102
84
|
const account = db.users.add({
|
|
103
85
|
/** This is to make customer user unique per store */
|
|
@@ -108,9 +90,6 @@ let ExternalSignup = class ExternalSignup extends Page {
|
|
|
108
90
|
multiFactor: false,
|
|
109
91
|
dateUpdated: dateCreated,
|
|
110
92
|
isExternal: true,
|
|
111
|
-
customerAccounts: [
|
|
112
|
-
contact
|
|
113
|
-
],
|
|
114
93
|
authFactors: [
|
|
115
94
|
db.userAuthFactors.add({
|
|
116
95
|
phoneNumber: phoneNumberE64,
|
|
@@ -120,6 +99,25 @@ let ExternalSignup = class ExternalSignup extends Page {
|
|
|
120
99
|
})
|
|
121
100
|
]
|
|
122
101
|
});
|
|
102
|
+
const contact = db.storeAccounts.add({
|
|
103
|
+
dateCreated,
|
|
104
|
+
user: account,
|
|
105
|
+
storeID,
|
|
106
|
+
/** This is important as name must be unique in the ledger */
|
|
107
|
+
name: `${model.name}(${emailAddressID})`,
|
|
108
|
+
head: "Customer",
|
|
109
|
+
emails: [
|
|
110
|
+
db.storeAccountEmails.add({
|
|
111
|
+
emailAddressID
|
|
112
|
+
})
|
|
113
|
+
],
|
|
114
|
+
phones: [
|
|
115
|
+
db.storeAccountPhones.add({
|
|
116
|
+
phoneNumberE64
|
|
117
|
+
})
|
|
118
|
+
],
|
|
119
|
+
addresses
|
|
120
|
+
});
|
|
123
121
|
await db.saveChanges();
|
|
124
122
|
if (billingAddress) {
|
|
125
123
|
contact.billingAddressID = billingAddress.addressID;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"post.js","sourceRoot":"","sources":["../../../../../../src/wwwroot/routes/social-mail/user/signup/post.tsx"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,iBAAiB,MAAM,+DAA+D,CAAC;AAC9F,OAAO,MAAM,MAAM,4CAA4C,CAAC;AAChE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,0CAA0C,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,wDAAwD,CAAC;AACjF,OAAO,iBAAiB,MAAM,kDAAkD,CAAC;AACjF,OAAO,aAAa,MAAM,iDAAiD,CAAC;AAC5E,OAAO,mBAAmB,MAAM,uDAAuD,CAAC;AACxF,OAAO,cAAc,MAAM,0DAA0D,CAAC;AAEtF,OAAO,oBAAoB,MAAM,wEAAwE,CAAC;AAC1G,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,cAAc,MAAM,wDAAwD,CAAC;AAmBpF;;GAEG;AAIY,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,IAAI;IAoB5C,KAAK,CAAC,GAAG;QAEL,MAAM,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC;QAEpB,EAAE,CAAC,aAAa,GAAG,KAAK,CAAC;QACzB,EAAE,CAAC,WAAW,GAAG,KAAK,CAAC;QAEvB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAe,CAAC;QAEnC,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC;QACjD,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC;QAEhD,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC/D,MAAM,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC;QAC3B,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,MAAM,IAAI,iBAAiB,CAAC,oBAAoB,CAAC,CAAC;QACtD,CAAC;QAED,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;QACxC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;YACtB,MAAM,IAAI,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;QACrD,CAAC;QAED,KAAK,CAAC,WAAW,GAAG,IAAI,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,EAAE,CAAC;QAEnE,0CAA0C;QAC1C,KAAI,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YACxD,MAAM,EAAE,cAAc,EAAG,UAAU,EAAE,GAAG,EAAE,CAAC;YAC3C,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,kBAAkB,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC;YAC7F,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;gBACf,MAAM,IAAI,iBAAiB,CAAC,gBAAgB,EAAE,EAAE,IAAI,IAAI,cAAc,gBAAgB,CAAC,CAAC;YAC5F,CAAC;QACL,CAAC;QAED,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;QAC5C,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,YAAY,EAAE,OAAO,EAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CACrF,CAAC,CAAC,YAAY,CAAC,YAAY,KAAK,CAAC,CAAC,YAAY;eAC3C,CAAC,CAAC,YAAY,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO,CAC1C;aACA,IAAI,EAAE,CAAC;QACZ,IAAI,WAAW,EAAE,CAAC;YACd,MAAM,IAAI,iBAAiB,CAAC,+BAA+B,CAAC,CAAC;QACjE,CAAC;QAED,2BAA2B;QAC3B,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,kBAAkB;aACrC,KAAK,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,CAAC,CAAC,WAAW;eAC1E,CAAC,CAAC,YAAY,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO,CAC1C,CAAC,IAAI,EAAE,CAAC;QAEb,IAAI,MAAM,EAAE,CAAC;YACT,MAAM,IAAI,iBAAiB,CAAC,qCAAqC,CAAC,CAAC;QACvE,CAAC;QAED,KAAK,CAAC,QAAQ,GAAG,UAAU,EAAE,CAAC;QAC9B,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;QACvD,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE3E,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC;QACjC,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC;QACzC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QAExB,IAAI,cAAmC,CAAC;QACxC,IAAI,eAAoC,CAAC;QACzC,MAAM,SAAS,GAAG,EAAE,CAAC;QACrB,IAAI,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;YACvB,cAAc,GAAG,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC7D,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACnC,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC;YACxB,eAAe,GAAG,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC/D,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACpC,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAE5F,MAAM,OAAO,GAAG,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"post.js","sourceRoot":"","sources":["../../../../../../src/wwwroot/routes/social-mail/user/signup/post.tsx"],"names":[],"mappings":"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"}
|
|
@@ -27,7 +27,7 @@ let default_1 = class extends Page {
|
|
|
27
27
|
if (!currency) {
|
|
28
28
|
currency = w.currency;
|
|
29
29
|
}
|
|
30
|
-
const contact = await this.db.storeAccounts.where({ userID }, (p) => (x) => x.
|
|
30
|
+
const contact = await this.db.storeAccounts.where({ userID }, (p) => (x) => x.accountID === p.userID)
|
|
31
31
|
.include((x) => x.addresses)
|
|
32
32
|
.first();
|
|
33
33
|
// todo: optimization
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../../../src/wwwroot/routes/store/buy/[productID]/get.tsx"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,MAAM,MAAM,4CAA4C,CAAC;AAEhE,OAAO,EAAE,KAAK,EAAE,MAAM,gDAAgD,CAAC;AACvE,OAAO,IAAI,MAAM,0CAA0C,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,wDAAwD,CAAC;AACjF,OAAO,iBAAiB,MAAM,kDAAkD,CAAC;AACjF,OAAO,cAAc,MAAM,wDAAwD,CAAC;AACpF,OAAO,kBAAkB,MAAM,4DAA4D,CAAC;AAI7E,gBAAA,KAAM,SAAQ,IAAI;IAc7B,KAAK,CAAC,GAAG;QAEL,uBAAuB;QACvB,kBAAkB;QAClB,uBAAuB;QAEvB,IAAI,CAAE,QAAQ,CAAE,GAAG,IAAI,CAAC,SAAkB,CAAC;QAE3C,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC;QAEpC,IAAI,MAAM,EAAE,CAAC;YAET,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC/D,MAAM,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC;YAE3B,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACZ,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;YAC1B,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,EAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../../../src/wwwroot/routes/store/buy/[productID]/get.tsx"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,MAAM,MAAM,4CAA4C,CAAC;AAEhE,OAAO,EAAE,KAAK,EAAE,MAAM,gDAAgD,CAAC;AACvE,OAAO,IAAI,MAAM,0CAA0C,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,wDAAwD,CAAC;AACjF,OAAO,iBAAiB,MAAM,kDAAkD,CAAC;AACjF,OAAO,cAAc,MAAM,wDAAwD,CAAC;AACpF,OAAO,kBAAkB,MAAM,4DAA4D,CAAC;AAI7E,gBAAA,KAAM,SAAQ,IAAI;IAc7B,KAAK,CAAC,GAAG;QAEL,uBAAuB;QACvB,kBAAkB;QAClB,uBAAuB;QAEvB,IAAI,CAAE,QAAQ,CAAE,GAAG,IAAI,CAAC,SAAkB,CAAC;QAE3C,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC;QAEpC,IAAI,MAAM,EAAE,CAAC;YAET,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC/D,MAAM,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC;YAE3B,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACZ,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;YAC1B,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,EAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,MAAM,CAAC;iBAC/F,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;iBAC3B,KAAK,EAAE,CAAC;YAEb,qBAAqB;YACrB,6DAA6D;YAC7D,6BAA6B;YAE7B,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;YAE3B,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAErH,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAEvE,MAAM,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC;gBACpC,OAAO;gBACP,OAAO,EAAE,OAAO,CAAC,SAAS;gBAC1B,WAAW,EAAE,OAAO;gBACpB,MAAM,EAAE,KAAK;gBACb,mBAAmB,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;gBAC5C,oBAAoB,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;gBAC7C,SAAS,EAAE;oBACP,IAAI,CAAC,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAC;wBAC9B,QAAQ;wBACR,MAAM,EAAE,KAAK,CAAC,WAAW;wBACzB,MAAM,EAAE,KAAK,CAAC,MAAM;wBACpB,SAAS,EAAE,KAAK,CAAC,WAAW;wBAC5B,WAAW,EAAE,KAAK,CAAC,OAAO;wBAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ;qBACrC,CAAC;iBACL;aACJ,CAAC,CAAC;YAEH,MAAM,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;YAE5B,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,mBAAmB,KAAK,CAAC,SAAS,EAAE,EAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QACtG,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC;IACnH,CAAC;CAEJ,CAAA;AAvEG;IADC,KAAK;;4CACI;AAGV;IADC,MAAM;8BACH,iBAAiB;qCAAC;AAGtB;IADC,MAAM;8BACa,kBAAkB;qDAAC;AAGvC;IADC,MAAM;8BACS,cAAc;iDAAC;AAZpB;IADd,OAAO,CAAC,SAAS;aA2EjB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@social-mail/social-mail-web-server",
|
|
3
|
-
"version": "1.5.
|
|
3
|
+
"version": "1.5.271",
|
|
4
4
|
"description": "## Phase 1",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"type": "module",
|
|
@@ -21,8 +21,8 @@
|
|
|
21
21
|
"dependencies": {
|
|
22
22
|
"@aws-sdk/client-s3": "^3.609.0",
|
|
23
23
|
"@azure/storage-blob": "^12.25.0",
|
|
24
|
-
"@entity-access/entity-access": "^1.0.
|
|
25
|
-
"@entity-access/server-pages": "^1.1.
|
|
24
|
+
"@entity-access/entity-access": "^1.0.370",
|
|
25
|
+
"@entity-access/server-pages": "^1.1.327",
|
|
26
26
|
"@ffmpeg/core-mt": "^0.12.6",
|
|
27
27
|
"@ffmpeg/ffmpeg": "^0.12.10",
|
|
28
28
|
"@ffmpeg/util": "^0.12.1",
|
|
@@ -84,7 +84,7 @@ import AccessToken from "./entities/AccessToken.js";
|
|
|
84
84
|
import AccessTokenEvents from "./events/AccessTokenEvents.js";
|
|
85
85
|
import StoreItemTagEvents from "./events/StoreItemTagEvents.js";
|
|
86
86
|
import StoreInsightEvents from "./events/StoreInsightEvents.js";
|
|
87
|
-
import StoreAccountEvents from "./events/
|
|
87
|
+
import StoreAccountEvents from "./events/StoreAccountEvents.js";
|
|
88
88
|
import StoreJournalEvents from "./events/StoreJournalEvents.js";
|
|
89
89
|
import StoreJournalEntryEvents from "./events/StoreJournalEntryEvents.js";
|
|
90
90
|
import StoreJournalLineItemEvents from "./events/StoreJournalLineItemEvents.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import CheckConstraint from "@entity-access/entity-access/dist/decorators/CheckConstraint.js";
|
|
2
2
|
import Column from "@entity-access/entity-access/dist/decorators/Column.js";
|
|
3
3
|
import Index from "@entity-access/entity-access/dist/decorators/Index.js";
|
|
4
|
-
import { RelateTo } from "@entity-access/entity-access/dist/decorators/Relate.js";
|
|
4
|
+
import { RelateTo, RelateToOne } from "@entity-access/entity-access/dist/decorators/Relate.js";
|
|
5
5
|
import Table from "@entity-access/entity-access/dist/decorators/Table.js";
|
|
6
6
|
import { StoreJournalEntry } from "./StoreJournalEntry.js";
|
|
7
7
|
import { StoreItem } from "./StoreItem.js";
|
|
@@ -55,7 +55,15 @@ import type StorePaymentGateway from "./StorePaymentGateway.js";
|
|
|
55
55
|
})
|
|
56
56
|
export class StoreAccount {
|
|
57
57
|
|
|
58
|
-
@Column({ dataType: "BigInt", key: true
|
|
58
|
+
@Column({ dataType: "BigInt", key: true})
|
|
59
|
+
@RelateToOne(User, {
|
|
60
|
+
property: (x) => x.user,
|
|
61
|
+
inverseProperty: (x) => x.storeAccount,
|
|
62
|
+
foreignKeyConstraint: {
|
|
63
|
+
name: "FC_StoreAccounts_Customer_UserID",
|
|
64
|
+
cascade: "restrict"
|
|
65
|
+
}
|
|
66
|
+
})
|
|
59
67
|
public accountID: number;
|
|
60
68
|
|
|
61
69
|
@Column({ dataType: "Char", length: 400, nullable: true })
|
|
@@ -83,17 +91,6 @@ export class StoreAccount {
|
|
|
83
91
|
})
|
|
84
92
|
public parentID: number;
|
|
85
93
|
|
|
86
|
-
@Column({ dataType: "BigInt", nullable: true })
|
|
87
|
-
@RelateTo(User, {
|
|
88
|
-
property: (x) => x.customerUser,
|
|
89
|
-
inverseProperty: (x) => x.customerAccounts,
|
|
90
|
-
foreignKeyConstraint: {
|
|
91
|
-
name: "FC_StoreAccounts_Customer_UserID",
|
|
92
|
-
cascade: "restrict"
|
|
93
|
-
}
|
|
94
|
-
})
|
|
95
|
-
public customerUserID: number;
|
|
96
|
-
|
|
97
94
|
// @Column({ dataType: "BigInt", nullable: true })
|
|
98
95
|
// @RelateTo({
|
|
99
96
|
// type: () => StoreItem,
|
|
@@ -133,7 +130,7 @@ export class StoreAccount {
|
|
|
133
130
|
item: StoreItem;
|
|
134
131
|
parent: StoreAccount;
|
|
135
132
|
|
|
136
|
-
|
|
133
|
+
user: User;
|
|
137
134
|
|
|
138
135
|
children: StoreAccount[];
|
|
139
136
|
entries: StoreJournalEntry[];
|
|
@@ -15,7 +15,7 @@ export type gatewayType = typeof gatewayTypeArray[number];
|
|
|
15
15
|
|
|
16
16
|
@Table("StorePaymentGateways")
|
|
17
17
|
@Index({
|
|
18
|
-
name: "
|
|
18
|
+
name: "IX_StorePaymentGateway_Default",
|
|
19
19
|
columns: [
|
|
20
20
|
{ name: (x) => x.isGatewayActive, descending: true},
|
|
21
21
|
{ name: (x) => x.isDefault, descending: true},
|
|
@@ -15,7 +15,7 @@ export default class StoreAccountAddressEvents extends AuthenticatedEvents<Store
|
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
return query.where(this.sessionUser, (p) => (x) =>
|
|
18
|
-
x.
|
|
18
|
+
x.accountID === p.userID
|
|
19
19
|
|| Sql.text.likeAny(x.storeAccount.store.folder.path, p.writeFileAccess)
|
|
20
20
|
);
|
|
21
21
|
}
|
|
@@ -15,7 +15,7 @@ export default class StoreAccountEmailEvents extends AuthenticatedEvents<StoreAc
|
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
return query.where(this.sessionUser, (p) => (x) =>
|
|
18
|
-
x.
|
|
18
|
+
x.accountID === p.userID
|
|
19
19
|
|| Sql.text.likeAny(x.storeAccount.store.folder.path, p.writeFileAccess)
|
|
20
20
|
);
|
|
21
21
|
}
|
|
@@ -3,12 +3,19 @@ import AuthenticatedEvents from "./AuthenticatedEvents.js";
|
|
|
3
3
|
import EntityAccessError from "@entity-access/entity-access/dist/common/EntityAccessError.js";
|
|
4
4
|
import { StoreAccount } from "../entities/StoreAccount.js";
|
|
5
5
|
import ChangeEntry from "@entity-access/entity-access/dist/model/changes/ChangeEntry.js";
|
|
6
|
-
import { ServiceProvider } from "@entity-access/entity-access/dist/di/di.js";
|
|
6
|
+
import Inject, { ServiceProvider } from "@entity-access/entity-access/dist/di/di.js";
|
|
7
7
|
import EncryptionService from "../../services/encryption/EncryptionService.js";
|
|
8
8
|
import Sql from "@entity-access/entity-access/dist/sql/Sql.js";
|
|
9
|
+
import SocialMailContext from "../SocialMailContext.js";
|
|
10
|
+
import { randomUUID } from "crypto";
|
|
11
|
+
import DateTime from "@entity-access/entity-access/dist/types/DateTime.js";
|
|
12
|
+
import CryptoService from "../../services/CryptoService.js";
|
|
9
13
|
|
|
10
14
|
export default class StoreAccountEvents extends AuthenticatedEvents<StoreAccount> {
|
|
11
15
|
|
|
16
|
+
@Inject
|
|
17
|
+
db?: SocialMailContext;
|
|
18
|
+
|
|
12
19
|
filter(query: IEntityQuery<StoreAccount>) {
|
|
13
20
|
if (!this.verify) {
|
|
14
21
|
return query;
|
|
@@ -41,8 +48,31 @@ export default class StoreAccountEvents extends AuthenticatedEvents<StoreAccount
|
|
|
41
48
|
return query;
|
|
42
49
|
}
|
|
43
50
|
|
|
44
|
-
beforeInsert(entity: StoreAccount, entry: ChangeEntry<StoreAccount>) {
|
|
51
|
+
async beforeInsert(entity: StoreAccount, entry: ChangeEntry<StoreAccount>) {
|
|
45
52
|
this.sessionUser.ensureLoggedIn();
|
|
53
|
+
|
|
54
|
+
// create a user...
|
|
55
|
+
if (!(entity.user || entity.accountID)) {
|
|
56
|
+
const dateCreated = DateTime.now;
|
|
57
|
+
|
|
58
|
+
const password = randomUUID();
|
|
59
|
+
|
|
60
|
+
const cryptoService = ServiceProvider.resolve(this, CryptoService);
|
|
61
|
+
|
|
62
|
+
const passwordSalt = cryptoService.generateSalt();
|
|
63
|
+
const passwordHash = cryptoService.hash(passwordSalt, password);
|
|
64
|
+
|
|
65
|
+
const user = await this.db.users.statements.insert({
|
|
66
|
+
userName: randomUUID(),
|
|
67
|
+
displayName: entity.name,
|
|
68
|
+
passwordSalt,
|
|
69
|
+
passwordHash,
|
|
70
|
+
multiFactor: false,
|
|
71
|
+
dateUpdated: dateCreated,
|
|
72
|
+
isExternal: true
|
|
73
|
+
});
|
|
74
|
+
entity.accountID = user.userID;
|
|
75
|
+
}
|
|
46
76
|
}
|
|
47
77
|
|
|
48
78
|
beforeUpdate(entity: StoreAccount, entry: ChangeEntry<StoreAccount>) {
|
|
@@ -15,7 +15,7 @@ export default class StoreAccountPhoneEvents extends AuthenticatedEvents<StoreAc
|
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
return query.where(this.sessionUser, (p) => (x) =>
|
|
18
|
-
x.
|
|
18
|
+
x.accountID === p.userID
|
|
19
19
|
|| Sql.text.likeAny(x.storeAccount.store.folder.path, p.writeFileAccess)
|
|
20
20
|
);
|
|
21
21
|
}
|
|
@@ -17,7 +17,7 @@ export default class StoreJournalEntryEvents extends AuthenticatedEvents<StoreJo
|
|
|
17
17
|
}
|
|
18
18
|
return query.where(sessionUser, (p) => (x) =>
|
|
19
19
|
Sql.text.likeAny(x.journal.store.folder.path, p.writeFileAccess)
|
|
20
|
-
|| x.journal.
|
|
20
|
+
|| x.journal.buyerID === p.userID
|
|
21
21
|
);
|
|
22
22
|
}
|
|
23
23
|
|
|
@@ -25,7 +25,7 @@ export default class StoreJournalEvents extends AuthenticatedEvents<StoreJournal
|
|
|
25
25
|
}
|
|
26
26
|
return query.where(sessionUser, (p) => (x) =>
|
|
27
27
|
Sql.text.likeAny(x.store.folder.path, p.writeFileAccess)
|
|
28
|
-
|| x.
|
|
28
|
+
|| x.buyerID === p.userID
|
|
29
29
|
);
|
|
30
30
|
}
|
|
31
31
|
|
|
@@ -17,7 +17,7 @@ export default class StoreJournalLineItemEvents extends AuthenticatedEvents<Stor
|
|
|
17
17
|
}
|
|
18
18
|
return query.where(sessionUser, (p) => (x) =>
|
|
19
19
|
Sql.text.likeAny(x.journal.store.folder.path, p.writeFileAccess)
|
|
20
|
-
|| x.journal.
|
|
20
|
+
|| x.journal.buyerID === p.userID
|
|
21
21
|
);
|
|
22
22
|
}
|
|
23
23
|
|
|
@@ -76,13 +76,11 @@ export default class VerificationTokenEvents extends AuthenticatedEvents<Verific
|
|
|
76
76
|
if (w) {
|
|
77
77
|
webSiteFolderID = w.folderID;
|
|
78
78
|
const user = await db.users.where({ webSiteFolderID, email: address.address }, (p) => (x) =>
|
|
79
|
-
x.
|
|
80
|
-
|
|
81
|
-
&& c.emails.some((e) =>
|
|
79
|
+
x.storeAccount.storeID === p.webSiteFolderID
|
|
80
|
+
&& x.storeAccount.emails.some((e) =>
|
|
82
81
|
e.emailAddress.emailAddress === p.email
|
|
83
82
|
)
|
|
84
83
|
)
|
|
85
|
-
)
|
|
86
84
|
.first();
|
|
87
85
|
if (user) {
|
|
88
86
|
entity.userID = user.userID;
|
|
@@ -125,16 +123,23 @@ export default class VerificationTokenEvents extends AuthenticatedEvents<Verific
|
|
|
125
123
|
|
|
126
124
|
const db = ServiceProvider.resolve(this, SocialMailContext);
|
|
127
125
|
|
|
126
|
+
const ws = ServiceProvider.resolve(this, WebSiteService);
|
|
127
|
+
const page = ServiceProvider.resolve(this, Page as any) as Page;
|
|
128
|
+
|
|
129
|
+
const w = await ws.get(page.request.hostName);
|
|
130
|
+
|
|
131
|
+
const storeID = w.folderID;
|
|
132
|
+
|
|
128
133
|
const addresses = [];
|
|
129
134
|
for(const a of await db.verificationTokenAddresses.where(entity, (p) => (x) => x.verificationID === p.verificationID).toArray()) {
|
|
130
135
|
addresses.push(a.address);
|
|
131
136
|
}
|
|
132
137
|
|
|
133
|
-
const { userID } = await db.users.where({ addresses }, (p) => (x) =>
|
|
134
|
-
x.
|
|
135
|
-
|
|
136
|
-
||
|
|
137
|
-
)
|
|
138
|
+
const { userID } = await db.users.where({ storeID, addresses }, (p) => (x) =>
|
|
139
|
+
x.storeAccount.storeID === p.storeID
|
|
140
|
+
&& x.storeAccount.emails.some((e) => Sql.in(e.emailAddress.emailAddress, p.addresses))
|
|
141
|
+
|| x.storeAccount.phones.some((e) => Sql.in(e.phoneNumberE64, p.addresses))
|
|
142
|
+
)
|
|
138
143
|
.firstOrFail();
|
|
139
144
|
|
|
140
145
|
await db.verificationTokens.statements.update({ verified: true }, { verificationID: entity.verificationID });
|
|
@@ -77,10 +77,9 @@ export default class ExternalOtpInService {
|
|
|
77
77
|
const va = await this.db.verificationTokenAddresses.statements.select({} , { verificationID });
|
|
78
78
|
if (va) {
|
|
79
79
|
const user = await this.db.users.where({ siteID: v.webSiteFolderID, phone: va.address }, (p) => (x) =>
|
|
80
|
-
x.
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
))
|
|
80
|
+
x.storeAccount.storeID === p.siteID
|
|
81
|
+
&& x.storeAccount.phones.some((e) => e.phoneNumberE64 === p.phone)
|
|
82
|
+
)
|
|
84
83
|
.first();
|
|
85
84
|
if (user) {
|
|
86
85
|
userID = user.userID;
|
|
@@ -132,25 +132,6 @@ export default class ExternalSignup extends Page {
|
|
|
132
132
|
|
|
133
133
|
const emailAddressID = await this.emailAddressService.getId(model.emailAddress, model.name);
|
|
134
134
|
|
|
135
|
-
const contact = db.storeAccounts.add({
|
|
136
|
-
dateCreated,
|
|
137
|
-
storeID,
|
|
138
|
-
/** This is important as name must be unique in the ledger */
|
|
139
|
-
name: `${model.name}(${emailAddressID})`,
|
|
140
|
-
head: "Customer",
|
|
141
|
-
emails: [
|
|
142
|
-
db.storeAccountEmails.add({
|
|
143
|
-
emailAddressID
|
|
144
|
-
})
|
|
145
|
-
],
|
|
146
|
-
phones: [
|
|
147
|
-
db.storeAccountPhones.add({
|
|
148
|
-
phoneNumberE64
|
|
149
|
-
})
|
|
150
|
-
],
|
|
151
|
-
addresses
|
|
152
|
-
});
|
|
153
|
-
|
|
154
135
|
// create user...
|
|
155
136
|
const account = db.users.add({
|
|
156
137
|
/** This is to make customer user unique per store */
|
|
@@ -161,9 +142,6 @@ export default class ExternalSignup extends Page {
|
|
|
161
142
|
multiFactor: false,
|
|
162
143
|
dateUpdated: dateCreated,
|
|
163
144
|
isExternal: true,
|
|
164
|
-
customerAccounts:[
|
|
165
|
-
contact
|
|
166
|
-
],
|
|
167
145
|
authFactors: [
|
|
168
146
|
db.userAuthFactors.add({
|
|
169
147
|
phoneNumber: phoneNumberE64,
|
|
@@ -174,6 +152,26 @@ export default class ExternalSignup extends Page {
|
|
|
174
152
|
]
|
|
175
153
|
});
|
|
176
154
|
|
|
155
|
+
const contact = db.storeAccounts.add({
|
|
156
|
+
dateCreated,
|
|
157
|
+
user: account,
|
|
158
|
+
storeID,
|
|
159
|
+
/** This is important as name must be unique in the ledger */
|
|
160
|
+
name: `${model.name}(${emailAddressID})`,
|
|
161
|
+
head: "Customer",
|
|
162
|
+
emails: [
|
|
163
|
+
db.storeAccountEmails.add({
|
|
164
|
+
emailAddressID
|
|
165
|
+
})
|
|
166
|
+
],
|
|
167
|
+
phones: [
|
|
168
|
+
db.storeAccountPhones.add({
|
|
169
|
+
phoneNumberE64
|
|
170
|
+
})
|
|
171
|
+
],
|
|
172
|
+
addresses
|
|
173
|
+
});
|
|
174
|
+
|
|
177
175
|
await db.saveChanges();
|
|
178
176
|
|
|
179
177
|
if (billingAddress) {
|
|
@@ -42,7 +42,7 @@ export default class extends Page {
|
|
|
42
42
|
currency = w.currency;
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
-
const contact = await this.db.storeAccounts.where({userID }, (p) => (x) => x.
|
|
45
|
+
const contact = await this.db.storeAccounts.where({userID }, (p) => (x) => x.accountID === p.userID)
|
|
46
46
|
.include((x) => x.addresses)
|
|
47
47
|
.first();
|
|
48
48
|
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"StoreLedgerEvents.d.ts","sourceRoot":"","sources":["../../../../src/server/model/events/StoreLedgerEvents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iEAAiE,CAAC;AAC/F,OAAO,mBAAmB,MAAM,0BAA0B,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,WAAW,MAAM,gEAAgE,CAAC;AAKzF,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,mBAAmB,CAAC,YAAY,CAAC;IAE7E,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,YAAY,CAAC;IAaxC,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,YAAY,CAAC;IAIxC,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,YAAY,CAAC,GAAG,YAAY,CAAC,YAAY,CAAC;IAWrE,aAAa,CAAC,KAAK,EAAE,YAAY,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM;IAIzE,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,WAAW,CAAC,YAAY,CAAC;IAInE,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,WAAW,CAAC,YAAY,CAAC;CAItE"}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import AuthenticatedEvents from "./AuthenticatedEvents.js";
|
|
2
|
-
import EntityAccessError from "@entity-access/entity-access/dist/common/EntityAccessError.js";
|
|
3
|
-
import Sql from "@entity-access/entity-access/dist/sql/Sql.js";
|
|
4
|
-
export default class StoreAccountEvents extends AuthenticatedEvents {
|
|
5
|
-
filter(query) {
|
|
6
|
-
if (!this.verify) {
|
|
7
|
-
return query;
|
|
8
|
-
}
|
|
9
|
-
const { sessionUser } = this;
|
|
10
|
-
if (sessionUser.isAdmin) {
|
|
11
|
-
return query;
|
|
12
|
-
}
|
|
13
|
-
return query.where(sessionUser, (p) => (x) => Sql.text.likeAny(x.store.folder.path, p.writeFileAccess));
|
|
14
|
-
}
|
|
15
|
-
modify(query) {
|
|
16
|
-
return this.filter(query);
|
|
17
|
-
}
|
|
18
|
-
delete(query) {
|
|
19
|
-
if (!this.verify) {
|
|
20
|
-
return query;
|
|
21
|
-
}
|
|
22
|
-
const { sessionUser } = this;
|
|
23
|
-
if (sessionUser.isAdmin) {
|
|
24
|
-
return query;
|
|
25
|
-
}
|
|
26
|
-
throw new EntityAccessError("Only admin can delete the store.");
|
|
27
|
-
}
|
|
28
|
-
includeFilter(query, type, key) {
|
|
29
|
-
return query;
|
|
30
|
-
}
|
|
31
|
-
beforeInsert(entity, entry) {
|
|
32
|
-
this.sessionUser.ensureLoggedIn();
|
|
33
|
-
}
|
|
34
|
-
beforeUpdate(entity, entry) {
|
|
35
|
-
this.sessionUser.ensureLoggedIn();
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
//# sourceMappingURL=StoreLedgerEvents.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"StoreLedgerEvents.js","sourceRoot":"","sources":["../../../../src/server/model/events/StoreLedgerEvents.ts"],"names":[],"mappings":"AACA,OAAO,mBAAmB,MAAM,0BAA0B,CAAC;AAC3D,OAAO,iBAAiB,MAAM,+DAA+D,CAAC;AAK9F,OAAO,GAAG,MAAM,8CAA8C,CAAC;AAE/D,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,mBAAiC;IAE7E,MAAM,CAAC,KAAiC;QACpC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;QAC7B,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CACzC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,eAAe,CAAC,CAC3D,CAAC;IACN,CAAC;IAED,MAAM,CAAC,KAAiC;QACpC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED,MAAM,CAAC,KAAiC;QACpC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;QAC7B,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,MAAM,IAAI,iBAAiB,CAAC,kCAAkC,CAAC,CAAC;IACpE,CAAC;IAED,aAAa,CAAC,KAAiC,EAAE,IAAU,EAAE,GAAY;QACrE,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,YAAY,CAAC,MAAoB,EAAE,KAAgC;QAC/D,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC;IACtC,CAAC;IAED,YAAY,CAAC,MAAoB,EAAE,KAAgC;QAC/D,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC;IACtC,CAAC;CAEJ"}
|