@social-mail/social-mail-web-server 1.7.653 → 1.7.655

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.
Files changed (23) hide show
  1. package/dist/server/model/events/VerificationTokenEvents.d.ts +4 -1
  2. package/dist/server/model/events/VerificationTokenEvents.d.ts.map +1 -1
  3. package/dist/server/model/events/VerificationTokenEvents.js +4 -0
  4. package/dist/server/model/events/VerificationTokenEvents.js.map +1 -1
  5. package/dist/server/seed/ui/seed-ui.js +1 -1
  6. package/dist/server/services/user/otp-to-user/BaseOtpToUserService.d.ts +2 -0
  7. package/dist/server/services/user/otp-to-user/BaseOtpToUserService.d.ts.map +1 -1
  8. package/dist/server/services/user/otp-to-user/BaseOtpToUserService.js.map +1 -1
  9. package/dist/server/services/user/otp-to-user/OtpToUserService.d.ts +2 -0
  10. package/dist/server/services/user/otp-to-user/OtpToUserService.d.ts.map +1 -1
  11. package/dist/server/services/user/otp-to-user/OtpToUserService.js +1 -1
  12. package/dist/server/services/user/otp-to-user/OtpToUserService.js.map +1 -1
  13. package/dist/tsconfig.tsbuildinfo +1 -1
  14. package/dist/wwwroot/routes/social-mail/user/signup/post.d.ts +4 -0
  15. package/dist/wwwroot/routes/social-mail/user/signup/post.d.ts.map +1 -1
  16. package/dist/wwwroot/routes/social-mail/user/signup/post.js +23 -1
  17. package/dist/wwwroot/routes/social-mail/user/signup/post.js.map +1 -1
  18. package/package.json +1 -1
  19. package/src/server/model/events/VerificationTokenEvents.ts +4 -0
  20. package/src/server/seed/ui/seed-ui.ts +1 -1
  21. package/src/server/services/user/otp-to-user/BaseOtpToUserService.ts +3 -1
  22. package/src/server/services/user/otp-to-user/OtpToUserService.ts +1 -1
  23. package/src/wwwroot/routes/social-mail/user/signup/post.tsx +21 -3
@@ -5,6 +5,8 @@ import CryptoService from "../../../../../server/services/CryptoService.js";
5
5
  import EmailAddressService from "../../../../../server/services/EmailAddressService.js";
6
6
  import CaptchaService from "../../../../../server/services/captcha/CaptchaService.js";
7
7
  import WelcomeMailService from "../../../../../server/services/mailboxes/WelcomeMailService.js";
8
+ import OtpToUserService from "../../../../../server/services/user/otp-to-user/OtpToUserService.js";
9
+ import SessionSecurity from "@entity-access/server-pages/dist/services/SessionSecurity.js";
8
10
  export interface ISignup {
9
11
  userID: number;
10
12
  username: string;
@@ -21,6 +23,8 @@ export default class extends Page {
21
23
  captchaService: CaptchaService;
22
24
  cryptoService: CryptoService;
23
25
  emailAddressService: EmailAddressService;
26
+ sessionSecurity: SessionSecurity;
27
+ otpService: OtpToUserService;
24
28
  wms: WelcomeMailService;
25
29
  db: SocialMailContext;
26
30
  run(): Promise<import("@entity-access/server-pages/dist/Content.js").default>;
@@ -1 +1 @@
1
- {"version":3,"file":"post.d.ts","sourceRoot":"","sources":["../../../../../../src/wwwroot/routes/social-mail/user/signup/post.tsx"],"names":[],"mappings":"AACA,OAAO,IAAI,MAAM,0CAA0C,CAAC;AAK5D,OAAO,iBAAiB,MAAM,kDAAkD,CAAC;AACjF,OAAO,iBAAiB,MAAM,2DAA2D,CAAC;AAC1F,OAAO,aAAa,MAAM,iDAAiD,CAAC;AAC5E,OAAO,mBAAmB,MAAM,uDAAuD,CAAC;AACxF,OAAO,cAAc,MAAM,0DAA0D,CAAC;AACtF,OAAO,kBAAkB,MAAM,gEAAgE,CAAC;AAEhG,MAAM,WAAW,OAAO;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,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;CACrC;AAkBD,MAAM,CAAC,OAAO,MAAO,SAAQ,IAAI;IAG7B,cAAc,EAAE,cAAc,CAAC;IAG/B,aAAa,EAAE,aAAa,CAAC;IAG7B,mBAAmB,EAAE,mBAAmB,CAAC;IAGzC,GAAG,EAAE,kBAAkB,CAAC;IAGxB,EAAE,EAAE,iBAAiB,CAAC;IAEhB,GAAG;CAuJZ"}
1
+ {"version":3,"file":"post.d.ts","sourceRoot":"","sources":["../../../../../../src/wwwroot/routes/social-mail/user/signup/post.tsx"],"names":[],"mappings":"AACA,OAAO,IAAI,MAAM,0CAA0C,CAAC;AAK5D,OAAO,iBAAiB,MAAM,kDAAkD,CAAC;AACjF,OAAO,iBAAiB,MAAM,2DAA2D,CAAC;AAC1F,OAAO,aAAa,MAAM,iDAAiD,CAAC;AAC5E,OAAO,mBAAmB,MAAM,uDAAuD,CAAC;AACxF,OAAO,cAAc,MAAM,0DAA0D,CAAC;AACtF,OAAO,kBAAkB,MAAM,gEAAgE,CAAC;AAChG,OAAO,gBAAgB,MAAM,qEAAqE,CAAC;AACnG,OAAO,eAAe,MAAM,8DAA8D,CAAC;AAE3F,MAAM,WAAW,OAAO;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,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;CACrC;AAkBD,MAAM,CAAC,OAAO,MAAO,SAAQ,IAAI;IAG7B,cAAc,EAAE,cAAc,CAAC;IAG/B,aAAa,EAAE,aAAa,CAAC;IAG7B,mBAAmB,EAAE,mBAAmB,CAAC;IAGzC,eAAe,EAAE,eAAe,CAAC;IAGjC,UAAU,EAAE,gBAAgB,CAAC;IAG7B,GAAG,EAAE,kBAAkB,CAAC;IAGxB,EAAE,EAAE,iBAAiB,CAAC;IAEhB,GAAG;CAiKZ"}
@@ -18,6 +18,8 @@ import CryptoService from "../../../../../server/services/CryptoService.js";
18
18
  import EmailAddressService from "../../../../../server/services/EmailAddressService.js";
19
19
  import CaptchaService from "../../../../../server/services/captcha/CaptchaService.js";
20
20
  import WelcomeMailService from "../../../../../server/services/mailboxes/WelcomeMailService.js";
21
+ import OtpToUserService from "../../../../../server/services/user/otp-to-user/OtpToUserService.js";
22
+ import SessionSecurity from "@entity-access/server-pages/dist/services/SessionSecurity.js";
21
23
  const ensureUsername = (name) => {
22
24
  const json = JSON.parse(readFileSync("./content/json/bad-names.json", "utf-8"));
23
25
  if (json.reserved.includes(name)) {
@@ -58,7 +60,19 @@ let default_1 = class extends Page {
58
60
  }
59
61
  model.phoneNumber = `+${model.phoneNumber.replace(/[^0-9]/g, "")}`;
60
62
  // console.log(model);
61
- // check if phone number already exists...
63
+ if (!model.phone.verificationID) {
64
+ // generate new one...
65
+ const vp = await this.otpService.create({ phone: model.phone.phone });
66
+ model.phone.verificationID = vp.id;
67
+ const v = await db.verificationTokens.where(vp, (p) => (x) => x.verificationID === p.id).first();
68
+ // inject public key
69
+ await this.sessionSecurity.injectPublicKey(v);
70
+ model.phone.accessCode = v.accessCode;
71
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
72
+ // @ts-expect-error
73
+ model.phone.$key = v.$key;
74
+ return this.json(model);
75
+ }
62
76
  for (const v1 of [model.captcha, model.phone]) {
63
77
  const { verificationID, accessCode } = v1;
64
78
  const vr = await db.verificationTokens.statements.select({}, { verificationID, accessCode });
@@ -164,6 +178,14 @@ __decorate([
164
178
  Inject,
165
179
  __metadata("design:type", EmailAddressService)
166
180
  ], default_1.prototype, "emailAddressService", void 0);
181
+ __decorate([
182
+ Inject,
183
+ __metadata("design:type", SessionSecurity)
184
+ ], default_1.prototype, "sessionSecurity", void 0);
185
+ __decorate([
186
+ Inject,
187
+ __metadata("design:type", OtpToUserService)
188
+ ], default_1.prototype, "otpService", void 0);
167
189
  __decorate([
168
190
  Inject,
169
191
  __metadata("design:type", WelcomeMailService)
@@ -1 +1 @@
1
- {"version":3,"file":"post.js","sourceRoot":"","sources":["../../../../../../src/wwwroot/routes/social-mail/user/signup/post.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"post.js","sourceRoot":"","sources":["../../../../../../src/wwwroot/routes/social-mail/user/signup/post.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@social-mail/social-mail-web-server",
3
- "version": "1.7.653",
3
+ "version": "1.7.655",
4
4
  "description": "## Phase 1",
5
5
  "main": "index.js",
6
6
  "type": "module",
@@ -75,6 +75,10 @@ export default class VerificationTokenEvents extends AuthenticatedEvents<Verific
75
75
  }
76
76
  entity.verified = r.result;
77
77
  this.ss.injectPublicKey(entity);
78
+ return {
79
+ verificationID: entity.verificationID,
80
+ verified: entity.verified
81
+ };
78
82
  }
79
83
 
80
84
  // @ExternalQuery
@@ -5,7 +5,7 @@ export default async function seedUI(config: DBConfig) {
5
5
  await config.saveVersion(UIPackageConfig, {
6
6
  package: "@social-mail/social-mail-client",
7
7
  view: "dist/web/AppIndex",
8
- version: "1.8.165"
8
+ version: "1.8.168"
9
9
  });
10
10
 
11
11
  await config.saveVersion(WebComponentsPackageConfig, {
@@ -1,5 +1,7 @@
1
+ import VerificationToken from "../../../model/entities/VerificationToken.js";
2
+
1
3
  export default abstract class BaseOtpToUserService {
2
- abstract create({ phone }): Promise<{ id: any }>;
4
+ abstract create({ phone }): Promise<{ id: any, verification?: VerificationToken }>;
3
5
  abstract verify({ id, phone, code }): Promise<{ id: any, result: boolean }>;
4
6
  abstract resend({ id, phone }): Promise<{ id: any, resent: boolean }>;
5
7
  }
@@ -32,7 +32,7 @@ export default class OtpToUserService extends BaseOtpToUserService {
32
32
  const r = await service.create({ phone });
33
33
  v.externalID = r.id;
34
34
  await db.verificationTokens.statements.update({ externalID: r.id, attempt: v.attempt }, { verificationID: v.verificationID});
35
- return { id, accessCode: v.accessCode };
35
+ return { id, accessCode: v.accessCode, verification: v };
36
36
  }
37
37
 
38
38
  async verify({ id, code }) {
@@ -10,6 +10,8 @@ import CryptoService from "../../../../../server/services/CryptoService.js";
10
10
  import EmailAddressService from "../../../../../server/services/EmailAddressService.js";
11
11
  import CaptchaService from "../../../../../server/services/captcha/CaptchaService.js";
12
12
  import WelcomeMailService from "../../../../../server/services/mailboxes/WelcomeMailService.js";
13
+ import OtpToUserService from "../../../../../server/services/user/otp-to-user/OtpToUserService.js";
14
+ import SessionSecurity from "@entity-access/server-pages/dist/services/SessionSecurity.js";
13
15
 
14
16
  export interface ISignup {
15
17
  userID: number;
@@ -51,6 +53,12 @@ export default class extends Page {
51
53
  @Inject
52
54
  emailAddressService: EmailAddressService;
53
55
 
56
+ @Inject
57
+ sessionSecurity: SessionSecurity;
58
+
59
+ @Inject
60
+ otpService: OtpToUserService;
61
+
54
62
  @Inject
55
63
  wms: WelcomeMailService;
56
64
 
@@ -96,8 +104,19 @@ export default class extends Page {
96
104
  model.phoneNumber = `+${model.phoneNumber.replace(/[^0-9]/g, "")}`;
97
105
 
98
106
  // console.log(model);
99
-
100
- // check if phone number already exists...
107
+ if (!model.phone.verificationID) {
108
+ // generate new one...
109
+ const vp = await this.otpService.create({ phone: model.phone.phone });
110
+ model.phone.verificationID = vp.id;
111
+ const v = await db.verificationTokens.where(vp, (p) => (x) => x.verificationID === p.id).first();
112
+ // inject public key
113
+ await this.sessionSecurity.injectPublicKey(v);
114
+ model.phone.accessCode = v.accessCode;
115
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
116
+ // @ts-expect-error
117
+ model.phone.$key = v.$key;
118
+ return this.json(model);
119
+ }
101
120
 
102
121
  for(const v1 of [model.captcha, model.phone]) {
103
122
  const { verificationID , accessCode } = v1;
@@ -118,7 +137,6 @@ export default class extends Page {
118
137
  throw new EntityAccessError(`Email address already exists.`);
119
138
  }
120
139
 
121
-
122
140
  // check if phone exists...
123
141
  const exists = await db.users
124
142
  .where(model, (p) => (x) => x.uniquePhoneNumber === p.phoneNumber)