@carlonicora/nestjs-neo4jsonapi 6.2.0 → 6.4.0
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/bootstrap/app.module.factory.d.ts.map +1 -1
- package/dist/bootstrap/app.module.factory.js +1 -0
- package/dist/bootstrap/app.module.factory.js.map +1 -1
- package/dist/bootstrap/bootstrap.options.d.ts +20 -0
- package/dist/bootstrap/bootstrap.options.d.ts.map +1 -1
- package/dist/core/email/services/email.service.d.ts +2 -0
- package/dist/core/email/services/email.service.d.ts.map +1 -1
- package/dist/core/email/services/email.service.js +18 -8
- package/dist/core/email/services/email.service.js.map +1 -1
- package/dist/core/email/templates/en/emailAutomation.hbs +24 -0
- package/dist/foundations/auth/controllers/auth.discord.controller.d.ts +1 -1
- package/dist/foundations/auth/controllers/auth.discord.controller.d.ts.map +1 -1
- package/dist/foundations/auth/controllers/auth.discord.controller.js +6 -3
- package/dist/foundations/auth/controllers/auth.discord.controller.js.map +1 -1
- package/dist/foundations/auth/controllers/auth.google.controller.d.ts +1 -1
- package/dist/foundations/auth/controllers/auth.google.controller.d.ts.map +1 -1
- package/dist/foundations/auth/controllers/auth.google.controller.js +6 -3
- package/dist/foundations/auth/controllers/auth.google.controller.js.map +1 -1
- package/dist/foundations/auth/dtos/auth.post.register.dto.d.ts +6 -0
- package/dist/foundations/auth/dtos/auth.post.register.dto.d.ts.map +1 -1
- package/dist/foundations/auth/dtos/auth.post.register.dto.js +36 -0
- package/dist/foundations/auth/dtos/auth.post.register.dto.js.map +1 -1
- package/dist/foundations/auth/events/auth.events.d.ts +7 -0
- package/dist/foundations/auth/events/auth.events.d.ts.map +1 -0
- package/dist/foundations/auth/events/auth.events.js +6 -0
- package/dist/foundations/auth/events/auth.events.js.map +1 -0
- package/dist/foundations/auth/index.d.ts +2 -0
- package/dist/foundations/auth/index.d.ts.map +1 -1
- package/dist/foundations/auth/index.js +3 -1
- package/dist/foundations/auth/index.js.map +1 -1
- package/dist/foundations/auth/services/auth.discord.service.d.ts +6 -2
- package/dist/foundations/auth/services/auth.discord.service.d.ts.map +1 -1
- package/dist/foundations/auth/services/auth.discord.service.js +29 -5
- package/dist/foundations/auth/services/auth.discord.service.js.map +1 -1
- package/dist/foundations/auth/services/auth.google.service.d.ts +6 -2
- package/dist/foundations/auth/services/auth.google.service.d.ts.map +1 -1
- package/dist/foundations/auth/services/auth.google.service.js +29 -5
- package/dist/foundations/auth/services/auth.google.service.js.map +1 -1
- package/dist/foundations/auth/services/auth.service.d.ts +15 -1
- package/dist/foundations/auth/services/auth.service.d.ts.map +1 -1
- package/dist/foundations/auth/services/auth.service.js +58 -10
- package/dist/foundations/auth/services/auth.service.js.map +1 -1
- package/dist/foundations/auth/services/pending-registration.service.d.ts +2 -0
- package/dist/foundations/auth/services/pending-registration.service.d.ts.map +1 -1
- package/dist/foundations/auth/services/pending-registration.service.js.map +1 -1
- package/dist/foundations/email-automation/controllers/email-automation-step.controller.d.ts +22 -0
- package/dist/foundations/email-automation/controllers/email-automation-step.controller.d.ts.map +1 -0
- package/dist/foundations/email-automation/controllers/email-automation-step.controller.js +152 -0
- package/dist/foundations/email-automation/controllers/email-automation-step.controller.js.map +1 -0
- package/dist/foundations/email-automation/controllers/email-automation.controller.d.ts +29 -0
- package/dist/foundations/email-automation/controllers/email-automation.controller.d.ts.map +1 -0
- package/dist/foundations/email-automation/controllers/email-automation.controller.js +183 -0
- package/dist/foundations/email-automation/controllers/email-automation.controller.js.map +1 -0
- package/dist/foundations/email-automation/controllers/email-automation.public.controller.d.ts +20 -0
- package/dist/foundations/email-automation/controllers/email-automation.public.controller.d.ts.map +1 -0
- package/dist/foundations/email-automation/controllers/email-automation.public.controller.js +63 -0
- package/dist/foundations/email-automation/controllers/email-automation.public.controller.js.map +1 -0
- package/dist/foundations/email-automation/cron/email-automation-sender.cron.d.ts +9 -0
- package/dist/foundations/email-automation/cron/email-automation-sender.cron.d.ts.map +1 -0
- package/dist/foundations/email-automation/cron/email-automation-sender.cron.js +44 -0
- package/dist/foundations/email-automation/cron/email-automation-sender.cron.js.map +1 -0
- package/dist/foundations/email-automation/dtos/email-automation-step.dto.d.ts +8 -0
- package/dist/foundations/email-automation/dtos/email-automation-step.dto.d.ts.map +1 -0
- package/dist/foundations/email-automation/dtos/email-automation-step.dto.js +36 -0
- package/dist/foundations/email-automation/dtos/email-automation-step.dto.js.map +1 -0
- package/dist/foundations/email-automation/dtos/email-automation-step.patch.dto.d.ts +16 -0
- package/dist/foundations/email-automation/dtos/email-automation-step.patch.dto.d.ts.map +1 -0
- package/dist/foundations/email-automation/dtos/email-automation-step.patch.dto.js +72 -0
- package/dist/foundations/email-automation/dtos/email-automation-step.patch.dto.js.map +1 -0
- package/dist/foundations/email-automation/dtos/email-automation-step.post.dto.d.ts +21 -0
- package/dist/foundations/email-automation/dtos/email-automation-step.post.dto.d.ts.map +1 -0
- package/dist/foundations/email-automation/dtos/email-automation-step.post.dto.js +88 -0
- package/dist/foundations/email-automation/dtos/email-automation-step.post.dto.js.map +1 -0
- package/dist/foundations/email-automation/dtos/email-automation-unsubscribe.dto.d.ts +11 -0
- package/dist/foundations/email-automation/dtos/email-automation-unsubscribe.dto.d.ts.map +1 -0
- package/dist/foundations/email-automation/dtos/email-automation-unsubscribe.dto.js +47 -0
- package/dist/foundations/email-automation/dtos/email-automation-unsubscribe.dto.js.map +1 -0
- package/dist/foundations/email-automation/dtos/email-automation.dto.d.ts +8 -0
- package/dist/foundations/email-automation/dtos/email-automation.dto.d.ts.map +1 -0
- package/dist/foundations/email-automation/dtos/email-automation.dto.js +36 -0
- package/dist/foundations/email-automation/dtos/email-automation.dto.js.map +1 -0
- package/dist/foundations/email-automation/dtos/email-automation.patch.dto.d.ts +16 -0
- package/dist/foundations/email-automation/dtos/email-automation.patch.dto.d.ts.map +1 -0
- package/dist/foundations/email-automation/dtos/email-automation.patch.dto.js +72 -0
- package/dist/foundations/email-automation/dtos/email-automation.patch.dto.js.map +1 -0
- package/dist/foundations/email-automation/dtos/email-automation.post.dto.d.ts +16 -0
- package/dist/foundations/email-automation/dtos/email-automation.post.dto.d.ts.map +1 -0
- package/dist/foundations/email-automation/dtos/email-automation.post.dto.js +72 -0
- package/dist/foundations/email-automation/dtos/email-automation.post.dto.js.map +1 -0
- package/dist/foundations/email-automation/email-automation.module.d.ts +35 -0
- package/dist/foundations/email-automation/email-automation.module.d.ts.map +1 -0
- package/dist/foundations/email-automation/email-automation.module.js +122 -0
- package/dist/foundations/email-automation/email-automation.module.js.map +1 -0
- package/dist/foundations/email-automation/entities/email-automation-enrollment.d.ts +55 -0
- package/dist/foundations/email-automation/entities/email-automation-enrollment.d.ts.map +1 -0
- package/dist/foundations/email-automation/entities/email-automation-enrollment.js +74 -0
- package/dist/foundations/email-automation/entities/email-automation-enrollment.js.map +1 -0
- package/dist/foundations/email-automation/entities/email-automation-enrollment.meta.d.ts +3 -0
- package/dist/foundations/email-automation/entities/email-automation-enrollment.meta.d.ts.map +1 -0
- package/dist/foundations/email-automation/entities/email-automation-enrollment.meta.js +10 -0
- package/dist/foundations/email-automation/entities/email-automation-enrollment.meta.js.map +1 -0
- package/dist/foundations/email-automation/entities/email-automation-step.d.ts +32 -0
- package/dist/foundations/email-automation/entities/email-automation-step.d.ts.map +1 -0
- package/dist/foundations/email-automation/entities/email-automation-step.js +55 -0
- package/dist/foundations/email-automation/entities/email-automation-step.js.map +1 -0
- package/dist/foundations/email-automation/entities/email-automation-step.meta.d.ts +3 -0
- package/dist/foundations/email-automation/entities/email-automation-step.meta.d.ts.map +1 -0
- package/dist/foundations/email-automation/entities/email-automation-step.meta.js +10 -0
- package/dist/foundations/email-automation/entities/email-automation-step.meta.js.map +1 -0
- package/dist/foundations/email-automation/entities/email-automation-trigger.d.ts +11 -0
- package/dist/foundations/email-automation/entities/email-automation-trigger.d.ts.map +1 -0
- package/dist/foundations/email-automation/entities/email-automation-trigger.js +15 -0
- package/dist/foundations/email-automation/entities/email-automation-trigger.js.map +1 -0
- package/dist/foundations/email-automation/entities/email-automation-trigger.meta.d.ts +6 -0
- package/dist/foundations/email-automation/entities/email-automation-trigger.meta.d.ts.map +1 -0
- package/dist/foundations/email-automation/entities/email-automation-trigger.meta.js +13 -0
- package/dist/foundations/email-automation/entities/email-automation-trigger.meta.js.map +1 -0
- package/dist/foundations/email-automation/entities/email-automation.d.ts +26 -0
- package/dist/foundations/email-automation/entities/email-automation.d.ts.map +1 -0
- package/dist/foundations/email-automation/entities/email-automation.js +54 -0
- package/dist/foundations/email-automation/entities/email-automation.js.map +1 -0
- package/dist/foundations/email-automation/entities/email-automation.meta.d.ts +7 -0
- package/dist/foundations/email-automation/entities/email-automation.meta.d.ts.map +1 -0
- package/dist/foundations/email-automation/entities/email-automation.meta.js +14 -0
- package/dist/foundations/email-automation/entities/email-automation.meta.js.map +1 -0
- package/dist/foundations/email-automation/entities/email-opt-out.d.ts +9 -0
- package/dist/foundations/email-automation/entities/email-opt-out.d.ts.map +1 -0
- package/dist/foundations/email-automation/entities/email-opt-out.js +17 -0
- package/dist/foundations/email-automation/entities/email-opt-out.js.map +1 -0
- package/dist/foundations/email-automation/entities/email-opt-out.meta.d.ts +3 -0
- package/dist/foundations/email-automation/entities/email-opt-out.meta.d.ts.map +1 -0
- package/dist/foundations/email-automation/entities/email-opt-out.meta.js +10 -0
- package/dist/foundations/email-automation/entities/email-opt-out.meta.js.map +1 -0
- package/dist/foundations/email-automation/index.d.ts +32 -0
- package/dist/foundations/email-automation/index.d.ts.map +1 -0
- package/dist/foundations/email-automation/index.js +56 -0
- package/dist/foundations/email-automation/index.js.map +1 -0
- package/dist/foundations/email-automation/interfaces/email-automation.config.interface.d.ts +49 -0
- package/dist/foundations/email-automation/interfaces/email-automation.config.interface.d.ts.map +1 -0
- package/dist/foundations/email-automation/interfaces/email-automation.config.interface.js +14 -0
- package/dist/foundations/email-automation/interfaces/email-automation.config.interface.js.map +1 -0
- package/dist/foundations/email-automation/repositories/email-automation-enrollment.repository.d.ts +150 -0
- package/dist/foundations/email-automation/repositories/email-automation-enrollment.repository.d.ts.map +1 -0
- package/dist/foundations/email-automation/repositories/email-automation-enrollment.repository.js +379 -0
- package/dist/foundations/email-automation/repositories/email-automation-enrollment.repository.js.map +1 -0
- package/dist/foundations/email-automation/repositories/email-automation-step.repository.d.ts +64 -0
- package/dist/foundations/email-automation/repositories/email-automation-step.repository.d.ts.map +1 -0
- package/dist/foundations/email-automation/repositories/email-automation-step.repository.js +156 -0
- package/dist/foundations/email-automation/repositories/email-automation-step.repository.js.map +1 -0
- package/dist/foundations/email-automation/repositories/email-automation.repository.d.ts +36 -0
- package/dist/foundations/email-automation/repositories/email-automation.repository.d.ts.map +1 -0
- package/dist/foundations/email-automation/repositories/email-automation.repository.js +93 -0
- package/dist/foundations/email-automation/repositories/email-automation.repository.js.map +1 -0
- package/dist/foundations/email-automation/repositories/email-opt-out.repository.d.ts +25 -0
- package/dist/foundations/email-automation/repositories/email-opt-out.repository.d.ts.map +1 -0
- package/dist/foundations/email-automation/repositories/email-opt-out.repository.js +69 -0
- package/dist/foundations/email-automation/repositories/email-opt-out.repository.js.map +1 -0
- package/dist/foundations/email-automation/services/email-automation-renderer.service.d.ts +35 -0
- package/dist/foundations/email-automation/services/email-automation-renderer.service.d.ts.map +1 -0
- package/dist/foundations/email-automation/services/email-automation-renderer.service.js +109 -0
- package/dist/foundations/email-automation/services/email-automation-renderer.service.js.map +1 -0
- package/dist/foundations/email-automation/services/email-automation-sender.service.d.ts +31 -0
- package/dist/foundations/email-automation/services/email-automation-sender.service.d.ts.map +1 -0
- package/dist/foundations/email-automation/services/email-automation-sender.service.js +129 -0
- package/dist/foundations/email-automation/services/email-automation-sender.service.js.map +1 -0
- package/dist/foundations/email-automation/services/email-automation-step.service.d.ts +60 -0
- package/dist/foundations/email-automation/services/email-automation-step.service.d.ts.map +1 -0
- package/dist/foundations/email-automation/services/email-automation-step.service.js +101 -0
- package/dist/foundations/email-automation/services/email-automation-step.service.js.map +1 -0
- package/dist/foundations/email-automation/services/email-automation-trigger.service.d.ts +28 -0
- package/dist/foundations/email-automation/services/email-automation-trigger.service.d.ts.map +1 -0
- package/dist/foundations/email-automation/services/email-automation-trigger.service.js +125 -0
- package/dist/foundations/email-automation/services/email-automation-trigger.service.js.map +1 -0
- package/dist/foundations/email-automation/services/email-automation-unsubscribe.service.d.ts +53 -0
- package/dist/foundations/email-automation/services/email-automation-unsubscribe.service.d.ts.map +1 -0
- package/dist/foundations/email-automation/services/email-automation-unsubscribe.service.js +67 -0
- package/dist/foundations/email-automation/services/email-automation-unsubscribe.service.js.map +1 -0
- package/dist/foundations/email-automation/services/email-automation.service.d.ts +53 -0
- package/dist/foundations/email-automation/services/email-automation.service.d.ts.map +1 -0
- package/dist/foundations/email-automation/services/email-automation.service.js +90 -0
- package/dist/foundations/email-automation/services/email-automation.service.js.map +1 -0
- package/dist/foundations/email-automation/triggers/built-in.triggers.d.ts +10 -0
- package/dist/foundations/email-automation/triggers/built-in.triggers.d.ts.map +1 -0
- package/dist/foundations/email-automation/triggers/built-in.triggers.js +50 -0
- package/dist/foundations/email-automation/triggers/built-in.triggers.js.map +1 -0
- package/dist/foundations/foundations.modules.d.ts +3 -0
- package/dist/foundations/foundations.modules.d.ts.map +1 -1
- package/dist/foundations/foundations.modules.js +7 -1
- package/dist/foundations/foundations.modules.js.map +1 -1
- package/dist/foundations/index.d.ts +1 -0
- package/dist/foundations/index.d.ts.map +1 -1
- package/dist/foundations/index.js +1 -0
- package/dist/foundations/index.js.map +1 -1
- package/dist/foundations/user/entities/user.d.ts +6 -0
- package/dist/foundations/user/entities/user.d.ts.map +1 -1
- package/dist/foundations/user/entities/user.js +7 -0
- package/dist/foundations/user/entities/user.js.map +1 -1
- package/dist/foundations/user/repositories/user.repository.d.ts +9 -0
- package/dist/foundations/user/repositories/user.repository.d.ts.map +1 -1
- package/dist/foundations/user/repositories/user.repository.js +23 -0
- package/dist/foundations/user/repositories/user.repository.js.map +1 -1
- package/dist/foundations/waitlist/dtos/waitlist.post.dto.d.ts +6 -0
- package/dist/foundations/waitlist/dtos/waitlist.post.dto.d.ts.map +1 -1
- package/dist/foundations/waitlist/dtos/waitlist.post.dto.js +36 -0
- package/dist/foundations/waitlist/dtos/waitlist.post.dto.js.map +1 -1
- package/dist/foundations/waitlist/entities/waitlist.d.ts +6 -0
- package/dist/foundations/waitlist/entities/waitlist.d.ts.map +1 -1
- package/dist/foundations/waitlist/entities/waitlist.js +6 -0
- package/dist/foundations/waitlist/entities/waitlist.js.map +1 -1
- package/dist/foundations/waitlist/events/waitlist.events.d.ts +7 -0
- package/dist/foundations/waitlist/events/waitlist.events.d.ts.map +1 -0
- package/dist/foundations/waitlist/events/waitlist.events.js +6 -0
- package/dist/foundations/waitlist/events/waitlist.events.js.map +1 -0
- package/dist/foundations/waitlist/index.d.ts +4 -0
- package/dist/foundations/waitlist/index.d.ts.map +1 -1
- package/dist/foundations/waitlist/index.js +11 -1
- package/dist/foundations/waitlist/index.js.map +1 -1
- package/dist/foundations/waitlist/services/waitlist.service.d.ts +5 -2
- package/dist/foundations/waitlist/services/waitlist.service.d.ts.map +1 -1
- package/dist/foundations/waitlist/services/waitlist.service.js +33 -18
- package/dist/foundations/waitlist/services/waitlist.service.js.map +1 -1
- package/dist/foundations/waitlist/utils/signup-source.d.ts +24 -0
- package/dist/foundations/waitlist/utils/signup-source.d.ts.map +1 -0
- package/dist/foundations/waitlist/utils/signup-source.js +52 -0
- package/dist/foundations/waitlist/utils/signup-source.js.map +1 -0
- package/package.json +1 -1
|
@@ -8,6 +8,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
8
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
11
14
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
15
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
16
|
};
|
|
@@ -25,9 +28,11 @@ const auth_service_1 = require("./auth.service");
|
|
|
25
28
|
const discord_user_1 = require("../../discord-user");
|
|
26
29
|
const discord_user_repository_1 = require("../../discord-user/repositories/discord-user.repository");
|
|
27
30
|
const user_1 = require("../../user");
|
|
31
|
+
const waitlist_service_1 = require("../../waitlist/services/waitlist.service");
|
|
32
|
+
const signup_source_1 = require("../../waitlist/utils/signup-source");
|
|
28
33
|
const pending_registration_service_1 = require("./pending-registration.service");
|
|
29
34
|
let AuthDiscordService = class AuthDiscordService {
|
|
30
|
-
constructor(userRepository, discordUserRepository, discordUserService, authService, config, clsService, pendingRegistrationService) {
|
|
35
|
+
constructor(userRepository, discordUserRepository, discordUserService, authService, config, clsService, pendingRegistrationService, waitlistService) {
|
|
31
36
|
this.userRepository = userRepository;
|
|
32
37
|
this.discordUserRepository = discordUserRepository;
|
|
33
38
|
this.discordUserService = discordUserService;
|
|
@@ -35,17 +40,19 @@ let AuthDiscordService = class AuthDiscordService {
|
|
|
35
40
|
this.config = config;
|
|
36
41
|
this.clsService = clsService;
|
|
37
42
|
this.pendingRegistrationService = pendingRegistrationService;
|
|
43
|
+
this.waitlistService = waitlistService;
|
|
38
44
|
this._discordApiUrl = "https://discord.com/api/";
|
|
39
45
|
}
|
|
40
46
|
get authConfig() {
|
|
41
47
|
return this.config.get("auth");
|
|
42
48
|
}
|
|
43
|
-
generateLoginUrl(inviteCode, referralCode) {
|
|
44
|
-
// Encode invite code
|
|
49
|
+
generateLoginUrl(inviteCode, referralCode, source) {
|
|
50
|
+
// Encode invite code, referral code AND sign-up source (raw JSON string) in state parameter
|
|
45
51
|
const stateData = {
|
|
46
52
|
nonce: (0, crypto_1.randomUUID)(),
|
|
47
53
|
...(inviteCode && { invite: inviteCode }),
|
|
48
54
|
...(referralCode && { referral: referralCode }),
|
|
55
|
+
...(source && { source }),
|
|
49
56
|
};
|
|
50
57
|
const state = Buffer.from(JSON.stringify(stateData)).toString("base64url");
|
|
51
58
|
const params = new URLSearchParams({
|
|
@@ -60,7 +67,11 @@ let AuthDiscordService = class AuthDiscordService {
|
|
|
60
67
|
parseStateData(state) {
|
|
61
68
|
try {
|
|
62
69
|
const stateData = JSON.parse(Buffer.from(state, "base64url").toString());
|
|
63
|
-
return {
|
|
70
|
+
return {
|
|
71
|
+
invite: stateData.invite,
|
|
72
|
+
referral: stateData.referral,
|
|
73
|
+
source: typeof stateData.source === "string" ? stateData.source : undefined,
|
|
74
|
+
};
|
|
64
75
|
}
|
|
65
76
|
catch {
|
|
66
77
|
return undefined;
|
|
@@ -98,6 +109,15 @@ let AuthDiscordService = class AuthDiscordService {
|
|
|
98
109
|
if (registrationMode === "waitlist" && !params.inviteCode) {
|
|
99
110
|
return `${this.config.get("app").url}oauth/error?error=waitlist_required`;
|
|
100
111
|
}
|
|
112
|
+
// An invite registers only the email it was sent to. An invalid invite is
|
|
113
|
+
// left to completeOAuthRegistration, which rejects it.
|
|
114
|
+
if (registrationMode === "waitlist" && params.inviteCode && this.waitlistService) {
|
|
115
|
+
const inviteValidation = await this.waitlistService.validateInviteCode(params.inviteCode);
|
|
116
|
+
if (inviteValidation?.valid &&
|
|
117
|
+
(params.userDetails.email ?? "").trim().toLowerCase() !== (inviteValidation.email ?? "").trim().toLowerCase()) {
|
|
118
|
+
return `${this.config.get("app").url}oauth/error?error=invite_email_mismatch&invite=${encodeURIComponent(params.inviteCode)}`;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
101
121
|
// Store pending registration in Redis (include invite code AND referral code if present)
|
|
102
122
|
const pendingId = await this.pendingRegistrationService.create({
|
|
103
123
|
provider: "discord",
|
|
@@ -107,6 +127,7 @@ let AuthDiscordService = class AuthDiscordService {
|
|
|
107
127
|
avatar: params.userDetails.avatar,
|
|
108
128
|
inviteCode: params.inviteCode,
|
|
109
129
|
referralCode: params.referralCode,
|
|
130
|
+
source: (0, signup_source_1.parseSignupSourceParam)(params.source),
|
|
110
131
|
});
|
|
111
132
|
return `${this.config.get("app").url}auth/consent?pending=${pendingId}`;
|
|
112
133
|
}
|
|
@@ -144,12 +165,15 @@ let AuthDiscordService = class AuthDiscordService {
|
|
|
144
165
|
exports.AuthDiscordService = AuthDiscordService;
|
|
145
166
|
exports.AuthDiscordService = AuthDiscordService = __decorate([
|
|
146
167
|
(0, common_1.Injectable)(),
|
|
168
|
+
__param(7, (0, common_1.Optional)()),
|
|
169
|
+
__param(7, (0, common_1.Inject)(waitlist_service_1.WaitlistService)),
|
|
147
170
|
__metadata("design:paramtypes", [user_1.UserRepository,
|
|
148
171
|
discord_user_repository_1.DiscordUserRepository,
|
|
149
172
|
discord_user_1.DiscordUserService,
|
|
150
173
|
auth_service_1.AuthService,
|
|
151
174
|
config_1.ConfigService,
|
|
152
175
|
nestjs_cls_1.ClsService,
|
|
153
|
-
pending_registration_service_1.PendingRegistrationService
|
|
176
|
+
pending_registration_service_1.PendingRegistrationService,
|
|
177
|
+
waitlist_service_1.WaitlistService])
|
|
154
178
|
], AuthDiscordService);
|
|
155
179
|
//# sourceMappingURL=auth.discord.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.discord.service.js","sourceRoot":"","sources":["../../../../src/foundations/auth/services/auth.discord.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"auth.discord.service.js","sourceRoot":"","sources":["../../../../src/foundations/auth/services/auth.discord.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ import { BaseConfigInterface } from "../../../config";
|
|
|
5
5
|
import { GoogleUserRepository } from "../../google-user/repositories/google-user.repository";
|
|
6
6
|
import { googleUser } from "../../google-user/types/google.user.type";
|
|
7
7
|
import { UserRepository } from "../../user";
|
|
8
|
+
import { WaitlistService } from "../../waitlist/services/waitlist.service";
|
|
8
9
|
import { PendingRegistrationService } from "./pending-registration.service";
|
|
9
10
|
export declare class AuthGoogleService {
|
|
10
11
|
private readonly userRepository;
|
|
@@ -13,20 +14,23 @@ export declare class AuthGoogleService {
|
|
|
13
14
|
private readonly config;
|
|
14
15
|
private readonly clsService;
|
|
15
16
|
private readonly pendingRegistrationService;
|
|
16
|
-
|
|
17
|
+
private readonly waitlistService;
|
|
18
|
+
constructor(userRepository: UserRepository, googleUserRepository: GoogleUserRepository, authService: AuthService, config: ConfigService<BaseConfigInterface>, clsService: ClsService, pendingRegistrationService: PendingRegistrationService, waitlistService: WaitlistService | undefined);
|
|
17
19
|
private readonly _googleAuthUrl;
|
|
18
20
|
private readonly _googleTokenUrl;
|
|
19
21
|
private readonly _googleUserInfoUrl;
|
|
20
22
|
private get authConfig();
|
|
21
|
-
generateLoginUrl(inviteCode?: string, referralCode?: string): string;
|
|
23
|
+
generateLoginUrl(inviteCode?: string, referralCode?: string, source?: string): string;
|
|
22
24
|
parseStateData(state: string): {
|
|
23
25
|
invite?: string;
|
|
24
26
|
referral?: string;
|
|
27
|
+
source?: string;
|
|
25
28
|
} | undefined;
|
|
26
29
|
handleGoogleLogin(params: {
|
|
27
30
|
userDetails: googleUser;
|
|
28
31
|
inviteCode?: string;
|
|
29
32
|
referralCode?: string;
|
|
33
|
+
source?: string;
|
|
30
34
|
}): Promise<string>;
|
|
31
35
|
exchangeCodeForToken(code: string): Promise<string>;
|
|
32
36
|
fetchUserDetails(accessToken: string): Promise<googleUser>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.google.service.d.ts","sourceRoot":"","sources":["../../../../src/foundations/auth/services/auth.google.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAG/C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAKxC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAA+D,MAAM,iBAAiB,CAAC;AAGnH,OAAO,EAAE,oBAAoB,EAAE,MAAM,uDAAuD,CAAC;AAC7F,OAAO,EAAE,UAAU,EAAE,MAAM,0CAA0C,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAE5E,qBACa,iBAAiB;IAE1B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,0BAA0B;
|
|
1
|
+
{"version":3,"file":"auth.google.service.d.ts","sourceRoot":"","sources":["../../../../src/foundations/auth/services/auth.google.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAG/C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAKxC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAA+D,MAAM,iBAAiB,CAAC;AAGnH,OAAO,EAAE,oBAAoB,EAAE,MAAM,uDAAuD,CAAC;AAC7F,OAAO,EAAE,UAAU,EAAE,MAAM,0CAA0C,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAE3E,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAE5E,qBACa,iBAAiB;IAE1B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,0BAA0B;IAK3C,OAAO,CAAC,QAAQ,CAAC,eAAe;gBAVf,cAAc,EAAE,cAAc,EAC9B,oBAAoB,EAAE,oBAAoB,EAC1C,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,aAAa,CAAC,mBAAmB,CAAC,EAC1C,UAAU,EAAE,UAAU,EACtB,0BAA0B,EAAE,0BAA0B,EAKtD,eAAe,EAAE,eAAe,GAAG,SAAS;IAG/D,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAkD;IACjF,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAyC;IACzE,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAmD;IAEtF,OAAO,KAAK,UAAU,GAErB;IAED,gBAAgB,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM;IAsBrF,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS;IAa5F,iBAAiB,CAAC,MAAM,EAAE;QAC9B,WAAW,EAAE,UAAU,CAAC;QACxB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,MAAM,CAAC;IAoEb,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAoBnD,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;CAgBjE"}
|
|
@@ -8,6 +8,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
8
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
11
14
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
15
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
16
|
};
|
|
@@ -25,15 +28,18 @@ const nestjs_cls_1 = require("nestjs-cls");
|
|
|
25
28
|
const auth_service_1 = require("./auth.service");
|
|
26
29
|
const google_user_repository_1 = require("../../google-user/repositories/google-user.repository");
|
|
27
30
|
const user_1 = require("../../user");
|
|
31
|
+
const waitlist_service_1 = require("../../waitlist/services/waitlist.service");
|
|
32
|
+
const signup_source_1 = require("../../waitlist/utils/signup-source");
|
|
28
33
|
const pending_registration_service_1 = require("./pending-registration.service");
|
|
29
34
|
let AuthGoogleService = class AuthGoogleService {
|
|
30
|
-
constructor(userRepository, googleUserRepository, authService, config, clsService, pendingRegistrationService) {
|
|
35
|
+
constructor(userRepository, googleUserRepository, authService, config, clsService, pendingRegistrationService, waitlistService) {
|
|
31
36
|
this.userRepository = userRepository;
|
|
32
37
|
this.googleUserRepository = googleUserRepository;
|
|
33
38
|
this.authService = authService;
|
|
34
39
|
this.config = config;
|
|
35
40
|
this.clsService = clsService;
|
|
36
41
|
this.pendingRegistrationService = pendingRegistrationService;
|
|
42
|
+
this.waitlistService = waitlistService;
|
|
37
43
|
this._googleAuthUrl = "https://accounts.google.com/o/oauth2/v2/auth";
|
|
38
44
|
this._googleTokenUrl = "https://oauth2.googleapis.com/token";
|
|
39
45
|
this._googleUserInfoUrl = "https://www.googleapis.com/oauth2/v2/userinfo";
|
|
@@ -41,12 +47,13 @@ let AuthGoogleService = class AuthGoogleService {
|
|
|
41
47
|
get authConfig() {
|
|
42
48
|
return this.config.get("auth");
|
|
43
49
|
}
|
|
44
|
-
generateLoginUrl(inviteCode, referralCode) {
|
|
45
|
-
// Encode invite code
|
|
50
|
+
generateLoginUrl(inviteCode, referralCode, source) {
|
|
51
|
+
// Encode invite code, referral code AND sign-up source (raw JSON string) in state parameter
|
|
46
52
|
const stateData = {
|
|
47
53
|
nonce: (0, crypto_1.randomUUID)(),
|
|
48
54
|
...(inviteCode && { invite: inviteCode }),
|
|
49
55
|
...(referralCode && { referral: referralCode }),
|
|
56
|
+
...(source && { source }),
|
|
50
57
|
};
|
|
51
58
|
const state = Buffer.from(JSON.stringify(stateData)).toString("base64url");
|
|
52
59
|
const params = new URLSearchParams({
|
|
@@ -62,7 +69,11 @@ let AuthGoogleService = class AuthGoogleService {
|
|
|
62
69
|
parseStateData(state) {
|
|
63
70
|
try {
|
|
64
71
|
const stateData = JSON.parse(Buffer.from(state, "base64url").toString());
|
|
65
|
-
return {
|
|
72
|
+
return {
|
|
73
|
+
invite: stateData.invite,
|
|
74
|
+
referral: stateData.referral,
|
|
75
|
+
source: typeof stateData.source === "string" ? stateData.source : undefined,
|
|
76
|
+
};
|
|
66
77
|
}
|
|
67
78
|
catch {
|
|
68
79
|
return undefined;
|
|
@@ -100,6 +111,15 @@ let AuthGoogleService = class AuthGoogleService {
|
|
|
100
111
|
if (registrationMode === "waitlist" && !params.inviteCode) {
|
|
101
112
|
return `${this.config.get("app").url}oauth/error?error=waitlist_required`;
|
|
102
113
|
}
|
|
114
|
+
// An invite registers only the email it was sent to. An invalid invite is
|
|
115
|
+
// left to completeOAuthRegistration, which rejects it.
|
|
116
|
+
if (registrationMode === "waitlist" && params.inviteCode && this.waitlistService) {
|
|
117
|
+
const inviteValidation = await this.waitlistService.validateInviteCode(params.inviteCode);
|
|
118
|
+
if (inviteValidation?.valid &&
|
|
119
|
+
(params.userDetails.email ?? "").trim().toLowerCase() !== (inviteValidation.email ?? "").trim().toLowerCase()) {
|
|
120
|
+
return `${this.config.get("app").url}oauth/error?error=invite_email_mismatch&invite=${encodeURIComponent(params.inviteCode)}`;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
103
123
|
// Store pending registration in Redis (include invite code AND referral code if present)
|
|
104
124
|
const pendingId = await this.pendingRegistrationService.create({
|
|
105
125
|
provider: "google",
|
|
@@ -109,6 +129,7 @@ let AuthGoogleService = class AuthGoogleService {
|
|
|
109
129
|
avatar: params.userDetails.picture,
|
|
110
130
|
inviteCode: params.inviteCode,
|
|
111
131
|
referralCode: params.referralCode,
|
|
132
|
+
source: (0, signup_source_1.parseSignupSourceParam)(params.source),
|
|
112
133
|
});
|
|
113
134
|
return `${this.config.get("app").url}auth/consent?pending=${pendingId}`;
|
|
114
135
|
}
|
|
@@ -145,11 +166,14 @@ let AuthGoogleService = class AuthGoogleService {
|
|
|
145
166
|
exports.AuthGoogleService = AuthGoogleService;
|
|
146
167
|
exports.AuthGoogleService = AuthGoogleService = __decorate([
|
|
147
168
|
(0, common_1.Injectable)(),
|
|
169
|
+
__param(6, (0, common_1.Optional)()),
|
|
170
|
+
__param(6, (0, common_1.Inject)(waitlist_service_1.WaitlistService)),
|
|
148
171
|
__metadata("design:paramtypes", [user_1.UserRepository,
|
|
149
172
|
google_user_repository_1.GoogleUserRepository,
|
|
150
173
|
auth_service_1.AuthService,
|
|
151
174
|
config_1.ConfigService,
|
|
152
175
|
nestjs_cls_1.ClsService,
|
|
153
|
-
pending_registration_service_1.PendingRegistrationService
|
|
176
|
+
pending_registration_service_1.PendingRegistrationService,
|
|
177
|
+
waitlist_service_1.WaitlistService])
|
|
154
178
|
], AuthGoogleService);
|
|
155
179
|
//# sourceMappingURL=auth.google.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.google.service.js","sourceRoot":"","sources":["../../../../src/foundations/auth/services/auth.google.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"auth.google.service.js","sourceRoot":"","sources":["../../../../src/foundations/auth/services/auth.google.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ConfigService } from "@nestjs/config";
|
|
2
2
|
import { ModuleRef } from "@nestjs/core";
|
|
3
|
+
import { EventEmitter2 } from "@nestjs/event-emitter";
|
|
3
4
|
import { EmailService } from "../../../core/email/services/email.service";
|
|
4
5
|
import { ResponseLanguageService } from "../../user/services/response-language.service";
|
|
5
6
|
import { SecurityService } from "../../../core/security/services/security.service";
|
|
@@ -62,6 +63,7 @@ export declare class AuthService extends AbstractService<Auth, typeof AuthDescri
|
|
|
62
63
|
private readonly waitlistService;
|
|
63
64
|
private readonly twoFactorService;
|
|
64
65
|
private readonly responseLanguage;
|
|
66
|
+
private readonly eventEmitter;
|
|
65
67
|
protected readonly descriptor: import("../../..").EntityDescriptor<Auth, {
|
|
66
68
|
user: {
|
|
67
69
|
model: import("../../..").DataMeta;
|
|
@@ -72,7 +74,7 @@ export declare class AuthService extends AbstractService<Auth, typeof AuthDescri
|
|
|
72
74
|
};
|
|
73
75
|
}>;
|
|
74
76
|
private readonly logger;
|
|
75
|
-
constructor(jsonApiService: JsonApiService, authRepository: AuthRepository, userService: UserService, users: UserRepository, companyRepository: CompanyRepository, emailService: EmailService, security: SecurityService, clsService: ClsService, neo4j: Neo4jService, moduleRef: ModuleRef, configService: ConfigService<BaseConfigInterface>, pendingRegistrationService: PendingRegistrationService, discordUserService: DiscordUserService | undefined, googleUserService: GoogleUserService, trialQueueService: TrialQueueService | undefined, waitlistService: WaitlistService | undefined, twoFactorService: TwoFactorService | undefined, responseLanguage: ResponseLanguageService);
|
|
77
|
+
constructor(jsonApiService: JsonApiService, authRepository: AuthRepository, userService: UserService, users: UserRepository, companyRepository: CompanyRepository, emailService: EmailService, security: SecurityService, clsService: ClsService, neo4j: Neo4jService, moduleRef: ModuleRef, configService: ConfigService<BaseConfigInterface>, pendingRegistrationService: PendingRegistrationService, discordUserService: DiscordUserService | undefined, googleUserService: GoogleUserService, trialQueueService: TrialQueueService | undefined, waitlistService: WaitlistService | undefined, twoFactorService: TwoFactorService | undefined, responseLanguage: ResponseLanguageService, eventEmitter: EventEmitter2);
|
|
76
78
|
/**
|
|
77
79
|
* Lazily resolves the registration hook from the module container.
|
|
78
80
|
* This allows app modules loaded after AuthModule to provide the hook.
|
|
@@ -148,6 +150,18 @@ export declare class AuthService extends AbstractService<Auth, typeof AuthDescri
|
|
|
148
150
|
}): Promise<{
|
|
149
151
|
code: string;
|
|
150
152
|
}>;
|
|
153
|
+
/**
|
|
154
|
+
* An invite code registers only the email it was sent to. Case and
|
|
155
|
+
* surrounding spaces are ignored.
|
|
156
|
+
*/
|
|
157
|
+
private assertInviteEmail;
|
|
158
|
+
/**
|
|
159
|
+
* Stores the sign-up source on a new user. The waitlist entry is the earlier
|
|
160
|
+
* first touch, so when it carries any source field it wins over whatever the
|
|
161
|
+
* browser sent. Nothing is written when neither has a source. A failure is
|
|
162
|
+
* logged, never thrown: the account already exists at this point.
|
|
163
|
+
*/
|
|
164
|
+
private applySignupSource;
|
|
151
165
|
/**
|
|
152
166
|
* Send notification to all platform administrators about a new user registration.
|
|
153
167
|
* Errors are logged but not thrown to avoid blocking the activation flow.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.service.d.ts","sourceRoot":"","sources":["../../../../src/foundations/auth/services/auth.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"auth.service.d.ts","sourceRoot":"","sources":["../../../../src/foundations/auth/services/auth.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,7 @@ exports.AuthService = void 0;
|
|
|
17
17
|
const common_1 = require("@nestjs/common");
|
|
18
18
|
const config_1 = require("@nestjs/config");
|
|
19
19
|
const core_1 = require("@nestjs/core");
|
|
20
|
+
const event_emitter_1 = require("@nestjs/event-emitter");
|
|
20
21
|
const crypto_1 = require("crypto");
|
|
21
22
|
const system_roles_1 = require("../../../common/constants/system.roles");
|
|
22
23
|
const email_service_1 = require("../../../core/email/services/email.service");
|
|
@@ -38,6 +39,8 @@ const two_factor_service_1 = require("../../two-factor/services/two-factor.servi
|
|
|
38
39
|
const user_repository_1 = require("../../user/repositories/user.repository");
|
|
39
40
|
const user_service_1 = require("../../user/services/user.service");
|
|
40
41
|
const waitlist_service_1 = require("../../waitlist/services/waitlist.service");
|
|
42
|
+
const signup_source_1 = require("../../waitlist/utils/signup-source");
|
|
43
|
+
const auth_events_1 = require("../events/auth.events");
|
|
41
44
|
const registration_hook_interface_1 = require("../interfaces/registration-hook.interface");
|
|
42
45
|
const pending_registration_service_1 = require("./pending-registration.service");
|
|
43
46
|
const trial_queue_service_1 = require("./trial-queue.service");
|
|
@@ -63,7 +66,7 @@ const trial_queue_service_1 = require("./trial-queue.service");
|
|
|
63
66
|
* provider and silently injects `undefined` even when the module supplies it.
|
|
64
67
|
*/
|
|
65
68
|
let AuthService = AuthService_1 = class AuthService extends abstract_service_1.AbstractService {
|
|
66
|
-
constructor(jsonApiService, authRepository, userService, users, companyRepository, emailService, security, clsService, neo4j, moduleRef, configService, pendingRegistrationService, discordUserService, googleUserService, trialQueueService, waitlistService, twoFactorService, responseLanguage) {
|
|
69
|
+
constructor(jsonApiService, authRepository, userService, users, companyRepository, emailService, security, clsService, neo4j, moduleRef, configService, pendingRegistrationService, discordUserService, googleUserService, trialQueueService, waitlistService, twoFactorService, responseLanguage, eventEmitter) {
|
|
67
70
|
super(jsonApiService, authRepository, clsService, auth_1.AuthDescriptor.model);
|
|
68
71
|
this.authRepository = authRepository;
|
|
69
72
|
this.userService = userService;
|
|
@@ -81,6 +84,7 @@ let AuthService = AuthService_1 = class AuthService extends abstract_service_1.A
|
|
|
81
84
|
this.waitlistService = waitlistService;
|
|
82
85
|
this.twoFactorService = twoFactorService;
|
|
83
86
|
this.responseLanguage = responseLanguage;
|
|
87
|
+
this.eventEmitter = eventEmitter;
|
|
84
88
|
this.descriptor = auth_1.AuthDescriptor;
|
|
85
89
|
this.logger = new common_1.Logger(AuthService_1.name);
|
|
86
90
|
}
|
|
@@ -342,6 +346,8 @@ let AuthService = AuthService_1 = class AuthService extends abstract_service_1.A
|
|
|
342
346
|
if (!inviteValidation || !inviteValidation.valid) {
|
|
343
347
|
throw new common_1.HttpException("Invalid or expired invitation code", common_1.HttpStatus.FORBIDDEN);
|
|
344
348
|
}
|
|
349
|
+
// An invite registers only the email it was sent to
|
|
350
|
+
this.assertInviteEmail({ email: params.data.attributes.email, inviteEmail: inviteValidation.email });
|
|
345
351
|
}
|
|
346
352
|
await this.userService.expectNotExists({ email: params.data.attributes.email });
|
|
347
353
|
const company = await this.companyRepository.createByName({
|
|
@@ -382,12 +388,15 @@ let AuthService = AuthService_1 = class AuthService extends abstract_service_1.A
|
|
|
382
388
|
// After successful registration, mark waitlist entry as registered.
|
|
383
389
|
// `?.` only for the type checker: waitlist mode already threw above when the
|
|
384
390
|
// service is absent, so this call always happens when it is reached.
|
|
391
|
+
let waitlistEntry = null;
|
|
385
392
|
if (registrationMode === "waitlist" && params.data.attributes.inviteCode) {
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
393
|
+
waitlistEntry =
|
|
394
|
+
(await this.waitlistService?.markAsRegistered({
|
|
395
|
+
inviteCode: params.data.attributes.inviteCode,
|
|
396
|
+
userId: user.id,
|
|
397
|
+
})) ?? null;
|
|
390
398
|
}
|
|
399
|
+
await this.applySignupSource({ userId: user.id, waitlistEntry, browserSource: params.data.attributes });
|
|
391
400
|
// Delivery failure must not fail registration. By this point the company, the
|
|
392
401
|
// user and its membership are already committed, so throwing here reports a
|
|
393
402
|
// failure for an account that demonstrably exists — and the caller cannot
|
|
@@ -496,6 +505,8 @@ let AuthService = AuthService_1 = class AuthService extends abstract_service_1.A
|
|
|
496
505
|
}
|
|
497
506
|
// Notify platform administrators (non-blocking)
|
|
498
507
|
await this.notifyAdminsOfRegistration(user);
|
|
508
|
+
const event = { user };
|
|
509
|
+
this.eventEmitter.emit(auth_events_1.USER_ACTIVATED_EVENT, event);
|
|
499
510
|
}
|
|
500
511
|
async completeOAuthRegistration(params) {
|
|
501
512
|
// Get pending registration from Redis
|
|
@@ -526,6 +537,8 @@ let AuthService = AuthService_1 = class AuthService extends abstract_service_1.A
|
|
|
526
537
|
if (!inviteValidation || !inviteValidation.valid) {
|
|
527
538
|
throw new common_1.HttpException("Invalid or expired invitation code", common_1.HttpStatus.FORBIDDEN);
|
|
528
539
|
}
|
|
540
|
+
// Defence in depth: the provider callback already redirected on a mismatch
|
|
541
|
+
this.assertInviteEmail({ email: pending.email, inviteEmail: inviteValidation.email });
|
|
529
542
|
}
|
|
530
543
|
// Generate IDs for new user and company
|
|
531
544
|
const userId = (0, crypto_1.randomUUID)();
|
|
@@ -596,16 +609,22 @@ let AuthService = AuthService_1 = class AuthService extends abstract_service_1.A
|
|
|
596
609
|
}
|
|
597
610
|
// After successful OAuth registration, mark waitlist entry as registered.
|
|
598
611
|
// `?.` only for the type checker - see register().
|
|
612
|
+
let waitlistEntry = null;
|
|
599
613
|
if (registrationMode === "waitlist" && pending.inviteCode) {
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
614
|
+
waitlistEntry =
|
|
615
|
+
(await this.waitlistService?.markAsRegistered({
|
|
616
|
+
inviteCode: pending.inviteCode,
|
|
617
|
+
userId: userId,
|
|
618
|
+
})) ?? null;
|
|
604
619
|
}
|
|
620
|
+
await this.applySignupSource({ userId, waitlistEntry, browserSource: pending.source });
|
|
605
621
|
// Delete pending registration
|
|
606
622
|
await this.pendingRegistrationService.delete(params.pendingId);
|
|
607
623
|
// Get created user
|
|
608
624
|
const user = await this.users.findByUserId({ userId });
|
|
625
|
+
// Emitted here rather than right after the registration hook: the created user is loaded only now.
|
|
626
|
+
const event = { user };
|
|
627
|
+
this.eventEmitter.emit(auth_events_1.USER_ACTIVATED_EVENT, event);
|
|
609
628
|
// Notify platform administrators (non-blocking)
|
|
610
629
|
await this.notifyAdminsOfRegistration(user);
|
|
611
630
|
// Create auth token
|
|
@@ -617,6 +636,34 @@ let AuthService = AuthService_1 = class AuthService extends abstract_service_1.A
|
|
|
617
636
|
});
|
|
618
637
|
return { code: authCodeId };
|
|
619
638
|
}
|
|
639
|
+
/**
|
|
640
|
+
* An invite code registers only the email it was sent to. Case and
|
|
641
|
+
* surrounding spaces are ignored.
|
|
642
|
+
*/
|
|
643
|
+
assertInviteEmail(params) {
|
|
644
|
+
if ((params.email ?? "").trim().toLowerCase() !== (params.inviteEmail ?? "").trim().toLowerCase()) {
|
|
645
|
+
throw new common_1.HttpException("This invitation was sent to a different email address", common_1.HttpStatus.FORBIDDEN);
|
|
646
|
+
}
|
|
647
|
+
}
|
|
648
|
+
/**
|
|
649
|
+
* Stores the sign-up source on a new user. The waitlist entry is the earlier
|
|
650
|
+
* first touch, so when it carries any source field it wins over whatever the
|
|
651
|
+
* browser sent. Nothing is written when neither has a source. A failure is
|
|
652
|
+
* logged, never thrown: the account already exists at this point.
|
|
653
|
+
*/
|
|
654
|
+
async applySignupSource(params) {
|
|
655
|
+
const source = (0, signup_source_1.hasSignupSource)(params.waitlistEntry)
|
|
656
|
+
? (0, signup_source_1.sanitiseSignupSource)(params.waitlistEntry)
|
|
657
|
+
: (0, signup_source_1.sanitiseSignupSource)(params.browserSource);
|
|
658
|
+
if (!source)
|
|
659
|
+
return;
|
|
660
|
+
try {
|
|
661
|
+
await this.users.setSignupSource({ userId: params.userId, source });
|
|
662
|
+
}
|
|
663
|
+
catch (error) {
|
|
664
|
+
this.logger.error(`Failed to store the sign-up source for user ${params.userId}:`, error);
|
|
665
|
+
}
|
|
666
|
+
}
|
|
620
667
|
/**
|
|
621
668
|
* Send notification to all platform administrators about a new user registration.
|
|
622
669
|
* Errors are logged but not thrown to avoid blocking the activation flow.
|
|
@@ -679,6 +726,7 @@ exports.AuthService = AuthService = AuthService_1 = __decorate([
|
|
|
679
726
|
trial_queue_service_1.TrialQueueService,
|
|
680
727
|
waitlist_service_1.WaitlistService,
|
|
681
728
|
two_factor_service_1.TwoFactorService,
|
|
682
|
-
response_language_service_1.ResponseLanguageService
|
|
729
|
+
response_language_service_1.ResponseLanguageService,
|
|
730
|
+
event_emitter_1.EventEmitter2])
|
|
683
731
|
], AuthService);
|
|
684
732
|
//# sourceMappingURL=auth.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../../../src/foundations/auth/services/auth.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../../../src/foundations/auth/services/auth.service.ts"],"names":[],"mappings":"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"}
|