@zssz-soft/firebase-functions-shared 1.2.5 → 1.2.8

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/lib/index.d.ts CHANGED
@@ -10,4 +10,5 @@ export * from './modules/email';
10
10
  export * from './modules/storage';
11
11
  export * from './modules/user';
12
12
  export * from './modules/security';
13
+ export * from './modules/e2e';
13
14
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,UAAU,CAAC;AACzB,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,UAAU,CAAC;AACzB,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC"}
package/lib/index.js CHANGED
@@ -26,4 +26,5 @@ __exportStar(require("./modules/email"), exports);
26
26
  __exportStar(require("./modules/storage"), exports);
27
27
  __exportStar(require("./modules/user"), exports);
28
28
  __exportStar(require("./modules/security"), exports);
29
+ __exportStar(require("./modules/e2e"), exports);
29
30
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,2CAAyB;AACzB,sDAAoC;AACpC,kDAAgC;AAChC,oDAAkC;AAClC,iDAA+B;AAC/B,qDAAmC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,2CAAyB;AACzB,sDAAoC;AACpC,kDAAgC;AAChC,oDAAkC;AAClC,iDAA+B;AAC/B,qDAAmC;AACnC,gDAA8B"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * E2E Reset Cloud Function
3
+ *
4
+ * Provides functionality to reset the Firebase environment for E2E testing.
5
+ * This function clears all Firestore collections and deletes all Firebase Auth users.
6
+ *
7
+ * SECURITY: This function is protected by a secret header and should only be
8
+ * deployed to test environments.
9
+ */
10
+ import { Firestore } from 'firebase-admin/firestore';
11
+ import { AppConfig } from '../../config';
12
+ /**
13
+ * Collections to clear during E2E reset
14
+ * Based on domain models in projects/api/src/lib/domain/
15
+ */
16
+ export declare const COLLECTIONS_TO_CLEAR: readonly ["user", "role", "booking", "apartment", "document", "equipment", "app-config", "article", "audit_logs", "security"];
17
+ /**
18
+ * Result of an E2E reset operation
19
+ */
20
+ export interface E2EResetResult {
21
+ success: boolean;
22
+ message: string;
23
+ deletedDocuments: number;
24
+ deletedUsers: number;
25
+ deletedCollections: string[];
26
+ }
27
+ /**
28
+ * Delete all documents in a collection using batch operations
29
+ * Returns the number of deleted documents
30
+ */
31
+ export declare function deleteCollection(firestore: Firestore, collectionPath: string, batchSize?: number): Promise<number>;
32
+ /**
33
+ * Delete all subcollections for documents in a collection
34
+ * This handles nested data like apartment/rules and booking/workflow_history
35
+ */
36
+ export declare function deleteSubcollections(firestore: Firestore, parentCollection: string, subcollectionName: string, batchSize?: number): Promise<number>;
37
+ /**
38
+ * Delete the security/users subcollections (effective_permissions)
39
+ */
40
+ export declare function deleteSecuritySubcollections(firestore: Firestore, batchSize?: number): Promise<number>;
41
+ /**
42
+ * Delete all Firebase Auth users
43
+ * Returns the number of deleted users
44
+ */
45
+ export declare function deleteAllAuthUsers(): Promise<number>;
46
+ /**
47
+ * Core E2E reset logic - exported for testing
48
+ */
49
+ export declare function executeE2EReset(config: AppConfig): Promise<E2EResetResult>;
50
+ /**
51
+ * Factory function to create e2eReset HTTP function
52
+ *
53
+ * @param secretEnvVar - Environment variable name containing the reset secret
54
+ * Default: 'E2E_RESET_SECRET'
55
+ */
56
+ export declare function createE2EResetFunction(secretEnvVar?: string): import("firebase-functions/https").HttpsFunction;
57
+ //# sourceMappingURL=e2e-reset.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"e2e-reset.d.ts","sourceRoot":"","sources":["../../../src/modules/e2e/e2e-reset.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAgB,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAKnE,OAAO,EAAE,SAAS,EAAa,MAAM,cAAc,CAAC;AAEpD;;;GAGG;AACH,eAAO,MAAM,oBAAoB,+HAWvB,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,EAAE,CAAC;CAC9B;AASD;;;GAGG;AACH,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE,MAAM,EACtB,SAAS,SAAM,GACd,OAAO,CAAC,MAAM,CAAC,CAqBjB;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,SAAS,EAAE,SAAS,EACpB,gBAAgB,EAAE,MAAM,EACxB,iBAAiB,EAAE,MAAM,EACzB,SAAS,SAAM,GACd,OAAO,CAAC,MAAM,CAAC,CAgCjB;AAED;;GAEG;AACH,wBAAsB,4BAA4B,CAChD,SAAS,EAAE,SAAS,EACpB,SAAS,SAAM,GACd,OAAO,CAAC,MAAM,CAAC,CA0BjB;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC,CAiB1D;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,cAAc,CAAC,CAiDhF;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,YAAY,SAAqB,oDA6CvE"}
@@ -0,0 +1,234 @@
1
+ "use strict";
2
+ /**
3
+ * E2E Reset Cloud Function
4
+ *
5
+ * Provides functionality to reset the Firebase environment for E2E testing.
6
+ * This function clears all Firestore collections and deletes all Firebase Auth users.
7
+ *
8
+ * SECURITY: This function is protected by a secret header and should only be
9
+ * deployed to test environments.
10
+ */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.COLLECTIONS_TO_CLEAR = void 0;
13
+ exports.deleteCollection = deleteCollection;
14
+ exports.deleteSubcollections = deleteSubcollections;
15
+ exports.deleteSecuritySubcollections = deleteSecuritySubcollections;
16
+ exports.deleteAllAuthUsers = deleteAllAuthUsers;
17
+ exports.executeE2EReset = executeE2EReset;
18
+ exports.createE2EResetFunction = createE2EResetFunction;
19
+ const firestore_1 = require("firebase-admin/firestore");
20
+ const auth_1 = require("firebase-admin/auth");
21
+ const firebase_functions_1 = require("firebase-functions");
22
+ const https_1 = require("firebase-functions/https");
23
+ const config_1 = require("../../config");
24
+ /**
25
+ * Collections to clear during E2E reset
26
+ * Based on domain models in projects/api/src/lib/domain/
27
+ */
28
+ exports.COLLECTIONS_TO_CLEAR = [
29
+ 'user',
30
+ 'role',
31
+ 'booking',
32
+ 'apartment',
33
+ 'document',
34
+ 'equipment',
35
+ 'app-config',
36
+ 'article',
37
+ 'audit_logs',
38
+ 'security',
39
+ ];
40
+ /**
41
+ * Get Firestore instance based on config
42
+ */
43
+ function getFirestoreInstance(config) {
44
+ return config.firestoreDatabaseId ? (0, firestore_1.getFirestore)(config.firestoreDatabaseId) : (0, firestore_1.getFirestore)();
45
+ }
46
+ /**
47
+ * Delete all documents in a collection using batch operations
48
+ * Returns the number of deleted documents
49
+ */
50
+ async function deleteCollection(firestore, collectionPath, batchSize = 100) {
51
+ const collectionRef = firestore.collection(collectionPath);
52
+ let deletedCount = 0;
53
+ while (true) {
54
+ const snapshot = await collectionRef.limit(batchSize).get();
55
+ if (snapshot.empty) {
56
+ break;
57
+ }
58
+ const batch = firestore.batch();
59
+ snapshot.docs.forEach((doc) => {
60
+ batch.delete(doc.ref);
61
+ });
62
+ await batch.commit();
63
+ deletedCount += snapshot.size;
64
+ firebase_functions_1.logger.info(`Deleted ${snapshot.size} documents from ${collectionPath}`);
65
+ }
66
+ return deletedCount;
67
+ }
68
+ /**
69
+ * Delete all subcollections for documents in a collection
70
+ * This handles nested data like apartment/rules and booking/workflow_history
71
+ */
72
+ async function deleteSubcollections(firestore, parentCollection, subcollectionName, batchSize = 100) {
73
+ const parentRef = firestore.collection(parentCollection);
74
+ const parentDocs = await parentRef.listDocuments();
75
+ let totalDeleted = 0;
76
+ for (const parentDoc of parentDocs) {
77
+ const subcollectionRef = parentDoc.collection(subcollectionName);
78
+ let deletedInSubcollection = 0;
79
+ while (true) {
80
+ const snapshot = await subcollectionRef.limit(batchSize).get();
81
+ if (snapshot.empty) {
82
+ break;
83
+ }
84
+ const batch = firestore.batch();
85
+ snapshot.docs.forEach((doc) => {
86
+ batch.delete(doc.ref);
87
+ });
88
+ await batch.commit();
89
+ deletedInSubcollection += snapshot.size;
90
+ }
91
+ if (deletedInSubcollection > 0) {
92
+ firebase_functions_1.logger.info(`Deleted ${deletedInSubcollection} documents from ${parentCollection}/${parentDoc.id}/${subcollectionName}`);
93
+ totalDeleted += deletedInSubcollection;
94
+ }
95
+ }
96
+ return totalDeleted;
97
+ }
98
+ /**
99
+ * Delete the security/users subcollections (effective_permissions)
100
+ */
101
+ async function deleteSecuritySubcollections(firestore, batchSize = 100) {
102
+ const securityUsersRef = firestore.collection('security').doc('users');
103
+ const userSubcollections = await securityUsersRef.listCollections();
104
+ let totalDeleted = 0;
105
+ for (const userCollection of userSubcollections) {
106
+ while (true) {
107
+ const snapshot = await userCollection.limit(batchSize).get();
108
+ if (snapshot.empty) {
109
+ break;
110
+ }
111
+ const batch = firestore.batch();
112
+ snapshot.docs.forEach((doc) => {
113
+ batch.delete(doc.ref);
114
+ });
115
+ await batch.commit();
116
+ totalDeleted += snapshot.size;
117
+ }
118
+ }
119
+ if (totalDeleted > 0) {
120
+ firebase_functions_1.logger.info(`Deleted ${totalDeleted} effective_permissions documents`);
121
+ }
122
+ return totalDeleted;
123
+ }
124
+ /**
125
+ * Delete all Firebase Auth users
126
+ * Returns the number of deleted users
127
+ */
128
+ async function deleteAllAuthUsers() {
129
+ const auth = (0, auth_1.getAuth)();
130
+ let deletedCount = 0;
131
+ let pageToken;
132
+ do {
133
+ const listResult = await auth.listUsers(1000, pageToken);
134
+ if (listResult.users.length > 0) {
135
+ const uids = listResult.users.map((user) => user.uid);
136
+ await auth.deleteUsers(uids);
137
+ deletedCount += uids.length;
138
+ firebase_functions_1.logger.info(`Deleted ${uids.length} auth users`);
139
+ }
140
+ pageToken = listResult.pageToken;
141
+ } while (pageToken);
142
+ return deletedCount;
143
+ }
144
+ /**
145
+ * Core E2E reset logic - exported for testing
146
+ */
147
+ async function executeE2EReset(config) {
148
+ const firestore = getFirestoreInstance(config);
149
+ let totalDeletedDocs = 0;
150
+ const deletedCollections = [];
151
+ firebase_functions_1.logger.info('Starting E2E reset...');
152
+ // Delete subcollections first (before parent documents)
153
+ const subcollectionDefs = [
154
+ { parent: 'apartment', sub: 'rule' },
155
+ { parent: 'booking', sub: 'workflow_history' },
156
+ ];
157
+ for (const { parent, sub } of subcollectionDefs) {
158
+ const count = await deleteSubcollections(firestore, parent, sub);
159
+ if (count > 0) {
160
+ totalDeletedDocs += count;
161
+ deletedCollections.push(`${parent}/${sub}`);
162
+ }
163
+ }
164
+ // Delete security subcollections (effective_permissions)
165
+ const securityCount = await deleteSecuritySubcollections(firestore);
166
+ if (securityCount > 0) {
167
+ totalDeletedDocs += securityCount;
168
+ deletedCollections.push('security/users/*/effective_permissions');
169
+ }
170
+ // Delete main collections
171
+ for (const collection of exports.COLLECTIONS_TO_CLEAR) {
172
+ const count = await deleteCollection(firestore, collection);
173
+ if (count > 0) {
174
+ totalDeletedDocs += count;
175
+ deletedCollections.push(collection);
176
+ }
177
+ }
178
+ // Delete all Auth users
179
+ const deletedUsers = await deleteAllAuthUsers();
180
+ firebase_functions_1.logger.info(`E2E reset completed: ${totalDeletedDocs} documents, ${deletedUsers} users deleted`);
181
+ return {
182
+ success: true,
183
+ message: 'E2E reset completed successfully',
184
+ deletedDocuments: totalDeletedDocs,
185
+ deletedUsers,
186
+ deletedCollections,
187
+ };
188
+ }
189
+ /**
190
+ * Factory function to create e2eReset HTTP function
191
+ *
192
+ * @param secretEnvVar - Environment variable name containing the reset secret
193
+ * Default: 'E2E_RESET_SECRET'
194
+ */
195
+ function createE2EResetFunction(secretEnvVar = 'E2E_RESET_SECRET') {
196
+ const config = (0, config_1.getConfig)();
197
+ return (0, https_1.onRequest)({
198
+ region: config.region,
199
+ maxInstances: 1,
200
+ timeoutSeconds: 540, // 9 minutes for large datasets
201
+ }, async (req, res) => {
202
+ // Only allow POST requests
203
+ if (req.method !== 'POST') {
204
+ res.status(405).json({ error: 'Method not allowed. Use POST.' });
205
+ return;
206
+ }
207
+ // Verify secret header
208
+ const providedSecret = req.headers['x-e2e-reset-secret'];
209
+ const expectedSecret = process.env[secretEnvVar];
210
+ if (!expectedSecret) {
211
+ firebase_functions_1.logger.error(`E2E reset secret not configured (${secretEnvVar} environment variable)`);
212
+ res.status(500).json({ error: 'E2E reset not configured on server' });
213
+ return;
214
+ }
215
+ if (!providedSecret || providedSecret !== expectedSecret) {
216
+ firebase_functions_1.logger.warn('E2E reset attempted with invalid or missing secret');
217
+ res.status(403).json({ error: 'Invalid or missing X-E2E-Reset-Secret header' });
218
+ return;
219
+ }
220
+ try {
221
+ firebase_functions_1.logger.info('E2E reset authorized, starting reset process...');
222
+ const result = await executeE2EReset(config);
223
+ res.status(200).json(result);
224
+ }
225
+ catch (error) {
226
+ firebase_functions_1.logger.error('E2E reset failed:', error);
227
+ res.status(500).json({
228
+ success: false,
229
+ error: error instanceof Error ? error.message : 'Unknown error during E2E reset',
230
+ });
231
+ }
232
+ });
233
+ }
234
+ //# sourceMappingURL=e2e-reset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"e2e-reset.js","sourceRoot":"","sources":["../../../src/modules/e2e/e2e-reset.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * E2E Testing Module
3
+ *
4
+ * Provides Cloud Functions for E2E testing support.
5
+ * These functions should only be deployed to test environments.
6
+ */
7
+ export * from './e2e-reset';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/modules/e2e/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,aAAa,CAAC"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ /**
3
+ * E2E Testing Module
4
+ *
5
+ * Provides Cloud Functions for E2E testing support.
6
+ * These functions should only be deployed to test environments.
7
+ */
8
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ var desc = Object.getOwnPropertyDescriptor(m, k);
11
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
+ desc = { enumerable: true, get: function() { return m[k]; } };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ }) : (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ }));
19
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
20
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
+ };
22
+ Object.defineProperty(exports, "__esModule", { value: true });
23
+ __exportStar(require("./e2e-reset"), exports);
24
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modules/e2e/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,8CAA4B"}
@@ -2,4 +2,20 @@ export declare function createSendEmailFunction(): import("firebase-functions/v2
2
2
  success: boolean;
3
3
  messageId: string | undefined;
4
4
  }>, unknown>;
5
+ /**
6
+ * Factory for sendWelcomeEmail Cloud Function
7
+ * Sends a welcome email to a user
8
+ */
9
+ export declare function createSendWelcomeEmailFunction(): import("firebase-functions/v2/https").CallableFunction<any, Promise<{
10
+ success: boolean;
11
+ messageId: string | undefined;
12
+ }>, unknown>;
13
+ /**
14
+ * Factory for sendPasswordResetEmail Cloud Function
15
+ * Generates a password reset link and sends it via email
16
+ */
17
+ export declare function createSendPasswordResetEmailFunction(): import("firebase-functions/v2/https").CallableFunction<any, Promise<{
18
+ success: boolean;
19
+ message: string;
20
+ }>, unknown>;
5
21
  //# sourceMappingURL=email.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"email.d.ts","sourceRoot":"","sources":["../../../src/modules/email/email.ts"],"names":[],"mappings":"AAQA,wBAAgB,uBAAuB;;;aA4FtC"}
1
+ {"version":3,"file":"email.d.ts","sourceRoot":"","sources":["../../../src/modules/email/email.ts"],"names":[],"mappings":"AAQA,wBAAgB,uBAAuB;;;aA4FtC;AAED;;;GAGG;AACH,wBAAgB,8BAA8B;;;aAuD7C;AAED;;;GAGG;AACH,wBAAgB,oCAAoC;;;aAgEnD"}
@@ -34,6 +34,8 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.createSendEmailFunction = createSendEmailFunction;
37
+ exports.createSendWelcomeEmailFunction = createSendWelcomeEmailFunction;
38
+ exports.createSendPasswordResetEmailFunction = createSendPasswordResetEmailFunction;
37
39
  const logger = __importStar(require("firebase-functions/logger"));
38
40
  const https_1 = require("firebase-functions/v2/https");
39
41
  const config_1 = require("../../config");
@@ -102,4 +104,94 @@ function createSendEmailFunction() {
102
104
  }
103
105
  });
104
106
  }
107
+ /**
108
+ * Factory for sendWelcomeEmail Cloud Function
109
+ * Sends a welcome email to a user
110
+ */
111
+ function createSendWelcomeEmailFunction() {
112
+ const config = (0, config_1.getConfig)();
113
+ return (0, https_1.onCall)({ region: config.region, enforceAppCheck: config.enforceAppCheck }, async (request) => {
114
+ if (!request.auth) {
115
+ throw new https_1.HttpsError('unauthenticated', 'A felhasználónak be kell jelentkeznie az email küldéséhez.');
116
+ }
117
+ const { email, displayName, firstName, lastName, loginUrl } = request.data;
118
+ if (!email) {
119
+ throw new https_1.HttpsError('invalid-argument', 'Az email cím megadása kötelező.');
120
+ }
121
+ if (!(0, email_validator_1.validateEmail)(email)) {
122
+ throw new https_1.HttpsError('invalid-argument', 'Érvénytelen email cím.');
123
+ }
124
+ const userName = displayName || `${firstName || ''} ${lastName || ''}`.trim() || 'Felhasználó';
125
+ const link = loginUrl || config.defaultLoginUrl;
126
+ try {
127
+ const result = await email_service_1.emailService.sendWelcomeEmail(email, userName, link);
128
+ if (!result.success) {
129
+ logger.error('Welcome email sending failed:', result.error);
130
+ throw new https_1.HttpsError('internal', `Email küldése sikertelen: ${result.error}`);
131
+ }
132
+ logger.info('Welcome email sent successfully:', result.messageId);
133
+ return {
134
+ success: true,
135
+ messageId: result.messageId,
136
+ };
137
+ }
138
+ catch (error) {
139
+ logger.error('Error sending welcome email:', error);
140
+ if (error instanceof https_1.HttpsError) {
141
+ throw error;
142
+ }
143
+ throw new https_1.HttpsError('internal', 'Hiba történt az üdvözlő email küldése során.');
144
+ }
145
+ });
146
+ }
147
+ /**
148
+ * Factory for sendPasswordResetEmail Cloud Function
149
+ * Generates a password reset link and sends it via email
150
+ */
151
+ function createSendPasswordResetEmailFunction() {
152
+ const config = (0, config_1.getConfig)();
153
+ return (0, https_1.onCall)({ region: config.region, enforceAppCheck: config.enforceAppCheck }, async (request) => {
154
+ // This function can be called without auth (for password reset requests)
155
+ const { email, userName } = request.data;
156
+ if (!email) {
157
+ throw new https_1.HttpsError('invalid-argument', 'Az email cím megadása kötelező.');
158
+ }
159
+ if (!(0, email_validator_1.validateEmail)(email)) {
160
+ throw new https_1.HttpsError('invalid-argument', 'Érvénytelen email cím.');
161
+ }
162
+ try {
163
+ // Generate password reset link using Firebase Admin SDK
164
+ const { getAuth } = await Promise.resolve().then(() => __importStar(require('firebase-admin/auth')));
165
+ const auth = getAuth();
166
+ const resetLink = await auth.generatePasswordResetLink(email, {
167
+ url: config.defaultLoginUrl,
168
+ });
169
+ const result = await email_service_1.emailService.sendPasswordResetEmail(email, resetLink, userName);
170
+ if (!result.success) {
171
+ logger.error('Password reset email sending failed:', result.error);
172
+ throw new https_1.HttpsError('internal', `Email küldése sikertelen: ${result.error}`);
173
+ }
174
+ logger.info('Password reset email sent successfully:', result.messageId);
175
+ return {
176
+ success: true,
177
+ message: 'Jelszó visszaállítási email elküldve.',
178
+ };
179
+ }
180
+ catch (error) {
181
+ logger.error('Error sending password reset email:', error);
182
+ // Handle user not found error gracefully (don't reveal if user exists)
183
+ if ((error === null || error === void 0 ? void 0 : error.code) === 'auth/user-not-found') {
184
+ // Return success to prevent user enumeration
185
+ return {
186
+ success: true,
187
+ message: 'Ha a megadott email cím regisztrálva van, hamarosan megkapja a jelszó visszaállítási linket.',
188
+ };
189
+ }
190
+ if (error instanceof https_1.HttpsError) {
191
+ throw error;
192
+ }
193
+ throw new https_1.HttpsError('internal', 'Hiba történt a jelszó visszaállítási email küldése során.');
194
+ }
195
+ });
196
+ }
105
197
  //# sourceMappingURL=email.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"email.js","sourceRoot":"","sources":["../../../src/modules/email/email.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"email.js","sourceRoot":"","sources":["../../../src/modules/email/email.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"thumbnail-functions.d.ts","sourceRoot":"","sources":["../../../src/modules/storage/thumbnail-functions.ts"],"names":[],"mappings":"AAiBA,UAAU,wBAAwB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAiTD,wBAAgB,+BAA+B,mGA0O9C"}
1
+ {"version":3,"file":"thumbnail-functions.d.ts","sourceRoot":"","sources":["../../../src/modules/storage/thumbnail-functions.ts"],"names":[],"mappings":"AAiBA,UAAU,wBAAwB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAiTD,wBAAgB,+BAA+B,mGAkP9C"}
@@ -373,7 +373,10 @@ function createGenerateThumbnailFunction() {
373
373
  const [exists] = await thumb.exists();
374
374
  if (exists && !force) {
375
375
  const thumbUrl = await ensureDownloadUrl(bucket.name, thumbObjectPath);
376
- firebase_functions_1.logger.info('Thumbnail already exists, skipping', { path: objectPath, thumbPath: thumbUrl });
376
+ firebase_functions_1.logger.info('Thumbnail already exists, skipping', {
377
+ path: objectPath,
378
+ thumbPath: thumbUrl,
379
+ });
377
380
  const updated = await updateDocumentWithThumb(documentId, isHttpUrl(originalInput) ? originalInput : undefined, thumbUrl);
378
381
  const result = {
379
382
  success: true,
@@ -426,7 +429,12 @@ function createGenerateThumbnailFunction() {
426
429
  // Process image -> webp thumbnail
427
430
  outputBuffer = await sharp(processBuffer)
428
431
  .rotate()
429
- .resize({ width: maxWidth, height: maxHeight, fit: 'inside', withoutEnlargement: true })
432
+ .resize({
433
+ width: maxWidth,
434
+ height: maxHeight,
435
+ fit: 'inside',
436
+ withoutEnlargement: true,
437
+ })
430
438
  .webp({ quality: 82 })
431
439
  .toBuffer();
432
440
  }
@@ -1 +1 @@
1
- {"version":3,"file":"thumbnail-functions.js","sourceRoot":"","sources":["../../../src/modules/storage/thumbnail-functions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"thumbnail-functions.js","sourceRoot":"","sources":["../../../src/modules/storage/thumbnail-functions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * User Auth Triggers
3
+ *
4
+ * Firebase Auth triggers that automatically create/sync user documents
5
+ * when users sign up with any provider (email, Google, etc.)
6
+ */
7
+ import { beforeUserCreated, beforeUserSignedIn } from 'firebase-functions/v2/identity';
8
+ export interface UserAuthTriggersConfig {
9
+ region?: string;
10
+ defaultRoleId?: string;
11
+ firestoreDatabaseId?: string;
12
+ }
13
+ /**
14
+ * Create a factory for the beforeUserCreated trigger
15
+ * This trigger runs before a new user is created in Firebase Auth
16
+ * It can be used to validate or modify the user data
17
+ */
18
+ export declare function createBeforeUserCreatedFunction(triggerConfig?: UserAuthTriggersConfig): ReturnType<typeof beforeUserCreated>;
19
+ /**
20
+ * Create a factory for the beforeUserSignedIn trigger
21
+ * This trigger runs every time a user signs in
22
+ * We use it to ensure the user document exists in Firestore
23
+ */
24
+ export declare function createBeforeUserSignedInFunction(triggerConfig?: UserAuthTriggersConfig): ReturnType<typeof beforeUserSignedIn>;
25
+ //# sourceMappingURL=user-auth.triggers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-auth.triggers.d.ts","sourceRoot":"","sources":["../../../src/modules/user/user-auth.triggers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAKvF,MAAM,WAAW,sBAAsB;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAWD;;;;GAIG;AAEH,wBAAgB,+BAA+B,CAC7C,aAAa,GAAE,sBAA2B,GACzC,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAoBtC;AAED;;;;GAIG;AAEH,wBAAgB,gCAAgC,CAC9C,aAAa,GAAE,sBAA2B,GACzC,UAAU,CAAC,OAAO,kBAAkB,CAAC,CA0EvC"}
@@ -0,0 +1,154 @@
1
+ "use strict";
2
+ /**
3
+ * User Auth Triggers
4
+ *
5
+ * Firebase Auth triggers that automatically create/sync user documents
6
+ * when users sign up with any provider (email, Google, etc.)
7
+ */
8
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ var desc = Object.getOwnPropertyDescriptor(m, k);
11
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
+ desc = { enumerable: true, get: function() { return m[k]; } };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ }) : (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ }));
19
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
20
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
21
+ }) : function(o, v) {
22
+ o["default"] = v;
23
+ });
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.createBeforeUserCreatedFunction = createBeforeUserCreatedFunction;
43
+ exports.createBeforeUserSignedInFunction = createBeforeUserSignedInFunction;
44
+ const firestore_1 = require("firebase-admin/firestore");
45
+ const logger = __importStar(require("firebase-functions/logger"));
46
+ const identity_1 = require("firebase-functions/v2/identity");
47
+ const config_1 = require("../../config");
48
+ const user_models_1 = require("./user.models");
49
+ /**
50
+ * Get Firestore instance based on config
51
+ */
52
+ function getFirestoreInstance(config) {
53
+ return config.firestoreDatabaseId
54
+ ? (0, firestore_1.getFirestore)(config.firestoreDatabaseId)
55
+ : (0, firestore_1.getFirestore)();
56
+ }
57
+ /**
58
+ * Create a factory for the beforeUserCreated trigger
59
+ * This trigger runs before a new user is created in Firebase Auth
60
+ * It can be used to validate or modify the user data
61
+ */
62
+ // Return type is BlockingFunction from firebase-functions, using ReturnType for better compatibility
63
+ function createBeforeUserCreatedFunction(triggerConfig = {}) {
64
+ const config = (0, config_1.getConfig)();
65
+ const region = triggerConfig.region || config.region;
66
+ return (0, identity_1.beforeUserCreated)({ region }, async (event) => {
67
+ var _a;
68
+ const user = event.data;
69
+ if (!user) {
70
+ logger.warn('beforeUserCreated: No user data in event');
71
+ return;
72
+ }
73
+ logger.info('beforeUserCreated trigger fired:', {
74
+ uid: user.uid,
75
+ email: user.email,
76
+ provider: (_a = event.credential) === null || _a === void 0 ? void 0 : _a.providerId,
77
+ });
78
+ // Can add validation logic here if needed
79
+ // Return nothing to allow user creation to proceed
80
+ });
81
+ }
82
+ /**
83
+ * Create a factory for the beforeUserSignedIn trigger
84
+ * This trigger runs every time a user signs in
85
+ * We use it to ensure the user document exists in Firestore
86
+ */
87
+ // Return type is BlockingFunction from firebase-functions, using ReturnType for better compatibility
88
+ function createBeforeUserSignedInFunction(triggerConfig = {}) {
89
+ const config = (0, config_1.getConfig)();
90
+ const region = triggerConfig.region || config.region;
91
+ return (0, identity_1.beforeUserSignedIn)({ region }, async (event) => {
92
+ var _a, _b;
93
+ const user = event.data;
94
+ if (!user) {
95
+ logger.warn('beforeUserSignedIn: No user data in event');
96
+ return;
97
+ }
98
+ const providerId = ((_a = event.credential) === null || _a === void 0 ? void 0 : _a.providerId) || 'unknown';
99
+ logger.info('beforeUserSignedIn trigger fired:', {
100
+ uid: user.uid,
101
+ email: user.email,
102
+ provider: providerId,
103
+ });
104
+ // Check if user document exists in Firestore
105
+ const firestore = getFirestoreInstance(config);
106
+ const userDocRef = firestore.collection(user_models_1.USER_FEATURE_KEY).doc(user.uid);
107
+ const userDoc = await userDocRef.get();
108
+ if (!userDoc.exists) {
109
+ // Create user document for new OAuth users
110
+ logger.info('Creating user document for OAuth user:', user.uid);
111
+ const now = new Date().toISOString();
112
+ const defaultRoleId = triggerConfig.defaultRoleId || config.defaultUserRoleId;
113
+ // Parse display name into first/last name
114
+ const nameParts = (user.displayName || '').split(' ');
115
+ const firstName = nameParts[0] || '';
116
+ const lastName = nameParts.slice(1).join(' ') || '';
117
+ const userDocument = {
118
+ id: user.uid,
119
+ email: user.email || '',
120
+ displayName: user.displayName || ((_b = user.email) === null || _b === void 0 ? void 0 : _b.split('@')[0]) || 'User',
121
+ firstName,
122
+ lastName,
123
+ photoURL: user.photoURL || null,
124
+ phoneNumber: user.phoneNumber || null,
125
+ emailVerified: user.emailVerified || false,
126
+ authProvider: providerId,
127
+ roleIds: [defaultRoleId],
128
+ meta: {
129
+ createdAt: now,
130
+ updatedAt: now,
131
+ createdBy: 'auth-trigger',
132
+ updatedBy: 'auth-trigger',
133
+ },
134
+ };
135
+ await userDocRef.set(userDocument);
136
+ logger.info('User document created successfully:', user.uid);
137
+ }
138
+ else {
139
+ // Optionally update some fields for existing users
140
+ const existingData = userDoc.data();
141
+ // Update photoURL if it changed (e.g., user updated their Google profile picture)
142
+ if (user.photoURL && (existingData === null || existingData === void 0 ? void 0 : existingData.photoURL) !== user.photoURL) {
143
+ await userDocRef.update({
144
+ photoURL: user.photoURL,
145
+ 'meta.updatedAt': new Date().toISOString(),
146
+ 'meta.updatedBy': 'auth-trigger',
147
+ });
148
+ logger.info('Updated user photoURL:', user.uid);
149
+ }
150
+ }
151
+ // Return nothing to allow sign-in to proceed
152
+ });
153
+ }
154
+ //# sourceMappingURL=user-auth.triggers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-auth.triggers.js","sourceRoot":"","sources":["../../../src/modules/user/user-auth.triggers.ts"],"names":[],"mappings":"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"}
@@ -61,4 +61,30 @@ export declare function cleanupAuthUser(uid: string): Promise<void>;
61
61
  */
62
62
  export declare function executeCreateUser(data: CreateUserData, config: AppConfig, firestore: Firestore, emailSvc: EmailService): Promise<CreateUserResponse>;
63
63
  export declare function createCreateUserWithEmailFunction(): import("firebase-functions/v2/https").CallableFunction<any, Promise<CreateUserResponse>, unknown>;
64
+ /**
65
+ * Data for createUserAndSendPasswordReset function
66
+ */
67
+ export interface CreateUserAndSendPasswordResetData {
68
+ email: string;
69
+ displayName?: string;
70
+ firstName?: string;
71
+ lastName?: string;
72
+ roleIds?: string[];
73
+ sendEmail?: boolean;
74
+ }
75
+ /**
76
+ * Response for createUserAndSendPasswordReset function
77
+ */
78
+ export interface CreateUserAndSendPasswordResetResponse {
79
+ success: boolean;
80
+ message: string;
81
+ uid?: string;
82
+ userId?: string;
83
+ emailSent?: boolean;
84
+ }
85
+ /**
86
+ * Factory for createUserAndSendPasswordReset Cloud Function
87
+ * Creates a user with a random password and sends a password reset email
88
+ */
89
+ export declare function createUserAndSendPasswordResetFunction(): import("firebase-functions/v2/https").CallableFunction<any, Promise<CreateUserAndSendPasswordResetResponse>, unknown>;
64
90
  //# sourceMappingURL=user-management.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"user-management.d.ts","sourceRoot":"","sources":["../../../src/modules/user/user-management.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAgB,MAAM,0BAA0B,CAAC;AAInE,OAAO,EAAE,SAAS,EAAa,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,YAAY,EAAgB,MAAM,wBAAwB,CAAC;AAIpE,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,cAAe,SAAQ,QAAQ;IAC9C,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI,CAOjE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,eAAe,EAAE,MAAM,GACtB,MAAM,CAER;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,cAAc,EACpB,aAAa,EAAE,MAAM,GACpB,QAAQ,GAAG;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CACtF,CA6BA;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,CAAC,CAclB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,CAa3D;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAQhE;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,cAAc,EACpB,MAAM,EAAE,SAAS,EACjB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,YAAY,GACrB,OAAO,CAAC,kBAAkB,CAAC,CA+C7B;AAED,wBAAgB,iCAAiC,sGAiBhD"}
1
+ {"version":3,"file":"user-management.d.ts","sourceRoot":"","sources":["../../../src/modules/user/user-management.ts"],"names":[],"mappings":"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"}
@@ -41,6 +41,7 @@ exports.handleCreateUserError = handleCreateUserError;
41
41
  exports.cleanupAuthUser = cleanupAuthUser;
42
42
  exports.executeCreateUser = executeCreateUser;
43
43
  exports.createCreateUserWithEmailFunction = createCreateUserWithEmailFunction;
44
+ exports.createUserAndSendPasswordResetFunction = createUserAndSendPasswordResetFunction;
44
45
  const auth_1 = require("firebase-admin/auth");
45
46
  const firestore_1 = require("firebase-admin/firestore");
46
47
  const logger = __importStar(require("firebase-functions/logger"));
@@ -183,4 +184,94 @@ function createCreateUserWithEmailFunction() {
183
184
  return executeCreateUser(request.data, config, firestore, email_service_1.emailService);
184
185
  });
185
186
  }
187
+ /**
188
+ * Factory for createUserAndSendPasswordReset Cloud Function
189
+ * Creates a user with a random password and sends a password reset email
190
+ */
191
+ function createUserAndSendPasswordResetFunction() {
192
+ const config = (0, config_1.getConfig)();
193
+ return (0, https_1.onCall)({ region: config.region, enforceAppCheck: config.enforceAppCheck }, async (request) => {
194
+ if (!request.auth) {
195
+ throw new https_1.HttpsError('unauthenticated', 'A felhasználónak be kell jelentkeznie.');
196
+ }
197
+ const data = request.data;
198
+ if (!data.email) {
199
+ throw new https_1.HttpsError('invalid-argument', 'Az email cím megadása kötelező.');
200
+ }
201
+ const firestore = config.firestoreDatabaseId
202
+ ? (0, firestore_1.getFirestore)(config.firestoreDatabaseId)
203
+ : (0, firestore_1.getFirestore)();
204
+ const auth = (0, auth_1.getAuth)();
205
+ let userRecord;
206
+ try {
207
+ // Generate a random temporary password
208
+ const tempPassword = Math.random().toString(36).slice(-12) + 'A1!';
209
+ const displayName = data.displayName ||
210
+ `${data.firstName || ''} ${data.lastName || ''}`.trim() ||
211
+ data.email.split('@')[0];
212
+ // Create user in Firebase Auth
213
+ userRecord = await (0, user_1.createAuthUser)(data.email, displayName, tempPassword);
214
+ logger.info('User created in Auth with UID:', userRecord.uid);
215
+ // Create user document in Firestore
216
+ const now = new Date().toISOString();
217
+ const userDoc = {
218
+ id: userRecord.uid,
219
+ email: data.email,
220
+ displayName,
221
+ firstName: data.firstName || '',
222
+ lastName: data.lastName || '',
223
+ meta: {
224
+ createdAt: now,
225
+ updatedAt: now,
226
+ createdBy: request.auth.uid,
227
+ updatedBy: request.auth.uid,
228
+ },
229
+ roleIds: data.roleIds || [config.defaultUserRoleId],
230
+ };
231
+ await firestore.collection(user_models_1.USER_FEATURE_KEY).doc(userRecord.uid).set(userDoc);
232
+ logger.info('User document created in Firestore:', userRecord.uid);
233
+ // Send password reset email if requested (default: true)
234
+ let emailSent = false;
235
+ if (data.sendEmail !== false) {
236
+ try {
237
+ const resetLink = await auth.generatePasswordResetLink(data.email, {
238
+ url: config.defaultLoginUrl,
239
+ });
240
+ const result = await email_service_1.emailService.sendPasswordResetEmail(data.email, resetLink, displayName);
241
+ emailSent = result.success;
242
+ if (emailSent) {
243
+ logger.info('Password reset email sent successfully');
244
+ }
245
+ else {
246
+ logger.warn('Failed to send password reset email:', result.error);
247
+ }
248
+ }
249
+ catch (emailError) {
250
+ logger.error('Error sending password reset email:', emailError);
251
+ }
252
+ }
253
+ return {
254
+ success: true,
255
+ message: 'Felhasználó sikeresen létrehozva.',
256
+ uid: userRecord.uid,
257
+ userId: userRecord.uid,
258
+ emailSent,
259
+ };
260
+ }
261
+ catch (error) {
262
+ logger.error('Error creating user:', error);
263
+ // Cleanup if user was created in Auth but something failed
264
+ if (userRecord) {
265
+ await cleanupAuthUser(userRecord.uid);
266
+ }
267
+ if ((error === null || error === void 0 ? void 0 : error.code) === 'auth/email-already-exists') {
268
+ throw new https_1.HttpsError('already-exists', 'Ez az email cím már használatban van.');
269
+ }
270
+ if (error instanceof https_1.HttpsError) {
271
+ throw error;
272
+ }
273
+ throw new https_1.HttpsError('internal', 'Hiba történt a felhasználó létrehozása során.');
274
+ }
275
+ });
276
+ }
186
277
  //# sourceMappingURL=user-management.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"user-management.js","sourceRoot":"","sources":["../../../src/modules/user/user-management.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user-management.js","sourceRoot":"","sources":["../../../src/modules/user/user-management.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zssz-soft/firebase-functions-shared",
3
- "version": "1.2.5",
3
+ "version": "1.2.8",
4
4
  "description": "Shared Firebase Cloud Functions modules for LodgeFlow applications",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
@@ -46,8 +46,8 @@
46
46
  "node": ">=18.0.0"
47
47
  },
48
48
  "dependencies": {
49
- "firebase-admin": "^12.0.0",
50
- "firebase-functions": "^6.6.0",
49
+ "firebase-admin": "^13.6.0",
50
+ "firebase-functions": "^7.0.2",
51
51
  "googleapis": "^165.0.0",
52
52
  "heic-convert": "^2.1.0",
53
53
  "nodemailer": "^7.0.10",
@@ -63,10 +63,6 @@
63
63
  "ts-jest": "^29.4.5",
64
64
  "typescript": "^5.0.0"
65
65
  },
66
- "peerDependencies": {
67
- "firebase-admin": "^12.0.0",
68
- "firebase-functions": "^6.6.0"
69
- },
70
66
  "publishConfig": {
71
67
  "access": "public"
72
68
  }