@goatlab/node-backend 1.1.0 → 1.1.2
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/Cache.d.ts +1 -1
- package/dist/Cache.js +18 -16
- package/dist/Cache.js.map +1 -1
- package/dist/container/Container.d.ts +2 -2
- package/dist/container/Container.js +16 -8
- package/dist/container/Container.js.map +1 -1
- package/dist/container/DistributedCacheInvalidator.d.ts +1 -1
- package/dist/container/DistributedCacheInvalidator.js +8 -8
- package/dist/container/DistributedCacheInvalidator.js.map +1 -1
- package/dist/container/examples/batch-operations.example.js +25 -23
- package/dist/container/examples/batch-operations.example.js.map +1 -1
- package/dist/container/helpers.js +2 -1
- package/dist/container/helpers.js.map +1 -1
- package/dist/index.d.ts +24 -24
- package/dist/index.js +41 -41
- package/dist/index.js.map +1 -1
- package/dist/server/bootstraps/ExpressTrpcAppConfig.d.ts +1 -1
- package/dist/server/bootstraps/ExpressTrpcAppConfig.js +1 -1
- package/dist/server/bootstraps/ExpressTrpcAppConfig.js.map +1 -1
- package/dist/server/bootstraps/getExpressTrpcApp.d.ts +1 -1
- package/dist/server/bootstraps/getExpressTrpcApp.js +7 -6
- package/dist/server/bootstraps/getExpressTrpcApp.js.map +1 -1
- package/dist/server/consts.js +8 -8
- package/dist/server/consts.js.map +1 -1
- package/dist/server/context/request.context.js +0 -1
- package/dist/server/context/request.context.js.map +1 -1
- package/dist/server/context/trpc.context.d.ts +1 -1
- package/dist/server/context/trpc.context.js +2 -2
- package/dist/server/context/trpc.context.js.map +1 -1
- package/dist/server/initOpenApiDocs.d.ts +1 -1
- package/dist/server/initOpenApiDocs.js +3 -3
- package/dist/server/initOpenApiDocs.js.map +1 -1
- package/dist/server/middleware/cloudTaskDecrypt.middleware.d.ts +2 -2
- package/dist/server/middleware/cloudTaskDecrypt.middleware.js +7 -9
- package/dist/server/middleware/cloudTaskDecrypt.middleware.js.map +1 -1
- package/dist/server/middleware/error.middleware.d.ts +1 -1
- package/dist/server/middleware/error.middleware.js +13 -8
- package/dist/server/middleware/error.middleware.js.map +1 -1
- package/dist/server/middleware/handleRequest.middleware.d.ts +1 -1
- package/dist/server/middleware/handleRequest.middleware.js +3 -3
- package/dist/server/middleware/handleRequest.middleware.js.map +1 -1
- package/dist/server/middleware/logger/cloudRun.logger.d.ts +2 -2
- package/dist/server/middleware/logger/cloudRun.logger.js +15 -15
- package/dist/server/middleware/logger/cloudRun.logger.js.map +1 -1
- package/dist/server/middleware/logger/logger.service.js +2 -2
- package/dist/server/middleware/logs.middleware.d.ts +1 -1
- package/dist/server/middleware/logs.middleware.js +10 -14
- package/dist/server/middleware/logs.middleware.js.map +1 -1
- package/dist/server/middleware/memoryMonitor.example.js +13 -11
- package/dist/server/middleware/memoryMonitor.example.js.map +1 -1
- package/dist/server/middleware/memoryMonitor.middleware.d.ts +1 -1
- package/dist/server/middleware/memoryMonitor.middleware.js.map +1 -1
- package/dist/server/middleware/productionError.middleware.d.ts +2 -2
- package/dist/server/middleware/productionError.middleware.js.map +1 -1
- package/dist/server/middleware/security.middleware.d.ts +1 -1
- package/dist/server/middleware/security.middleware.js +1 -1
- package/dist/server/middleware/security.middleware.js.map +1 -1
- package/dist/server/middleware/trpcError.middleware.d.ts +1 -1
- package/dist/server/middleware/trpcError.middleware.js +8 -5
- package/dist/server/middleware/trpcError.middleware.js.map +1 -1
- package/dist/server/schemas/user.schema.js +3 -3
- package/dist/server/sentry/getSentry.d.ts +1 -1
- package/dist/server/sentry/getSentry.js +3 -3
- package/dist/server/sentry/getSentry.js.map +1 -1
- package/dist/server/sentry/sentry.service.d.ts +1 -1
- package/dist/server/sentry/sentry.service.js +11 -11
- package/dist/server/sentry/sentry.service.js.map +1 -1
- package/dist/server/services/email/email.model.js +1 -1
- package/dist/server/services/email/email.service.d.ts +3 -3
- package/dist/server/services/email/email.service.js +14 -14
- package/dist/server/services/email/email.service.js.map +1 -1
- package/dist/server/services/secrets/examples/container-preload.example.js +36 -16
- package/dist/server/services/secrets/examples/container-preload.example.js.map +1 -1
- package/dist/server/services/secrets/index.d.ts +1 -1
- package/dist/server/services/secrets/index.js.map +1 -1
- package/dist/server/services/secrets/secret.service.js +30 -19
- package/dist/server/services/secrets/secret.service.js.map +1 -1
- package/dist/server/services/sendgrid/sendgridApi.service.d.ts +1 -1
- package/dist/server/services/sendgrid/sendgridApi.service.js +14 -16
- package/dist/server/services/sendgrid/sendgridApi.service.js.map +1 -1
- package/dist/server/services/translations/template.util.js.map +1 -1
- package/dist/server/services/translations/translation.model.d.ts +2 -2
- package/dist/server/services/translations/translation.model.js +7 -1
- package/dist/server/services/translations/translation.model.js.map +1 -1
- package/dist/server/services/translations/translation.service.d.ts +5 -5
- package/dist/server/services/translations/translation.service.js +11 -9
- package/dist/server/services/translations/translation.service.js.map +1 -1
- package/dist/server/services/util/benchmarker.js +8 -8
- package/dist/server/services/util/benchmarker.js.map +1 -1
- package/dist/server/services/util/pagination.d.ts +4 -4
- package/dist/server/services/util/pagination.js +4 -4
- package/dist/server/services/util/pagination.js.map +1 -1
- package/dist/server/services/util/url.service.d.ts +4 -4
- package/dist/server/services/util/url.service.js +7 -7
- package/dist/server/services/util/url.service.js.map +1 -1
- package/dist/server/test/express.mock.js +6 -6
- package/dist/server/test/firebase.mock.js +2 -2
- package/dist/server/test/trpc.mock.d.ts +1 -1
- package/dist/server/test/trpc.mock.js +1 -1
- package/dist/server/test/trpc.mock.js.map +1 -1
- package/dist/server/trpc.d.ts +1 -1
- package/dist/server/trpc.js +10 -10
- package/dist/server/trpc.js.map +1 -1
- package/dist/test/const.js +7 -7
- package/dist/test/const.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +6 -8
|
@@ -6,17 +6,17 @@ class SendgridService {
|
|
|
6
6
|
sendgridApi = undefined;
|
|
7
7
|
shouldSendEmail = true;
|
|
8
8
|
fromEmail = 'test@example.com';
|
|
9
|
-
constructor({ token, shouldSendEmail = true, fromEmail
|
|
9
|
+
constructor({ token, shouldSendEmail = true, fromEmail }) {
|
|
10
10
|
this.sendgridApi = js_utils_1.Http.getClient({
|
|
11
11
|
prefixUrl: 'https://api.sendgrid.com/v3/',
|
|
12
12
|
headers: {
|
|
13
|
-
Authorization: `Bearer ${token}
|
|
13
|
+
Authorization: `Bearer ${token}`
|
|
14
14
|
},
|
|
15
15
|
retry: {
|
|
16
16
|
limit: 3,
|
|
17
17
|
// Sendgrid uses POST
|
|
18
|
-
methods: ['POST']
|
|
19
|
-
}
|
|
18
|
+
methods: ['POST']
|
|
19
|
+
}
|
|
20
20
|
});
|
|
21
21
|
this.shouldSendEmail = shouldSendEmail;
|
|
22
22
|
this.fromEmail = fromEmail;
|
|
@@ -29,48 +29,46 @@ class SendgridService {
|
|
|
29
29
|
isSuccess: false,
|
|
30
30
|
statusCode: 1,
|
|
31
31
|
body: {},
|
|
32
|
-
headers: {}
|
|
32
|
+
headers: {}
|
|
33
33
|
};
|
|
34
34
|
}
|
|
35
35
|
const json = {
|
|
36
36
|
personalizations: [
|
|
37
37
|
{
|
|
38
38
|
to: request.recipients,
|
|
39
|
-
bcc: request.bcc?.length ? request.bcc : undefined
|
|
40
|
-
}
|
|
39
|
+
bcc: request.bcc?.length ? request.bcc : undefined
|
|
40
|
+
}
|
|
41
41
|
],
|
|
42
42
|
subject: request.subject,
|
|
43
43
|
categories: request.categories,
|
|
44
44
|
content: [{ type: 'text/html', value: request.html }],
|
|
45
45
|
from: {
|
|
46
46
|
email: this.fromEmail,
|
|
47
|
-
name: request.fromName
|
|
47
|
+
name: request.fromName
|
|
48
48
|
},
|
|
49
49
|
reply_to: { email: request.replyTo },
|
|
50
50
|
tracking_settings: {
|
|
51
51
|
click_tracking: {
|
|
52
52
|
enable: true,
|
|
53
|
-
enable_text: true
|
|
53
|
+
enable_text: true
|
|
54
54
|
},
|
|
55
55
|
open_tracking: {
|
|
56
|
-
enable: true
|
|
57
|
-
}
|
|
56
|
+
enable: true
|
|
57
|
+
}
|
|
58
58
|
},
|
|
59
|
-
attachments: request.attachments?.length
|
|
60
|
-
? request.attachments
|
|
61
|
-
: undefined,
|
|
59
|
+
attachments: request.attachments?.length ? request.attachments : undefined
|
|
62
60
|
};
|
|
63
61
|
if (!this.sendgridApi) {
|
|
64
62
|
return {
|
|
65
63
|
isSuccess: false,
|
|
66
64
|
statusCode: 1,
|
|
67
65
|
body: {},
|
|
68
|
-
headers: {}
|
|
66
|
+
headers: {}
|
|
69
67
|
};
|
|
70
68
|
}
|
|
71
69
|
return await this.sendgridApi
|
|
72
70
|
.post('mail/send', {
|
|
73
|
-
json
|
|
71
|
+
json
|
|
74
72
|
})
|
|
75
73
|
.json();
|
|
76
74
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sendgridApi.service.js","sourceRoot":"","sources":["../../../../src/server/services/sendgrid/sendgridApi.service.ts"],"names":[],"mappings":";;;AAAA,gDAAoD;AAOpD,MAAa,eAAe;IAC1B,WAAW,GAA2B,SAAS,CAAA;IAC/C,eAAe,GAAY,IAAI,CAAA;IAC/B,SAAS,GAAW,kBAAkB,CAAA;IAEtC,YAAY,EACV,KAAK,EACL,eAAe,GAAG,IAAI,EACtB,SAAS,
|
|
1
|
+
{"version":3,"file":"sendgridApi.service.js","sourceRoot":"","sources":["../../../../src/server/services/sendgrid/sendgridApi.service.ts"],"names":[],"mappings":";;;AAAA,gDAAoD;AAOpD,MAAa,eAAe;IAC1B,WAAW,GAA2B,SAAS,CAAA;IAC/C,eAAe,GAAY,IAAI,CAAA;IAC/B,SAAS,GAAW,kBAAkB,CAAA;IAEtC,YAAY,EACV,KAAK,EACL,eAAe,GAAG,IAAI,EACtB,SAAS,EAKV;QACC,IAAI,CAAC,WAAW,GAAG,eAAI,CAAC,SAAS,CAAC;YAChC,SAAS,EAAE,8BAA8B;YACzC,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,KAAK,EAAE;aACjC;YACD,KAAK,EAAE;gBACL,KAAK,EAAE,CAAC;gBACR,qBAAqB;gBACrB,OAAO,EAAE,CAAC,MAAM,CAAC;aAClB;SACF,CAAC,CAAA;QAEF,IAAI,CAAC,eAAe,GAAG,eAAe,CAAA;QACtC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;IAED,8DAA8D;IAC9D,KAAK,CAAC,kBAAkB,CACtB,OAAiC;QAEjC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAA;YACzD,OAAO;gBACL,SAAS,EAAE,KAAK;gBAChB,UAAU,EAAE,CAAC;gBACb,IAAI,EAAE,EAAE;gBACR,OAAO,EAAE,EAAE;aACZ,CAAA;QACH,CAAC;QAED,MAAM,IAAI,GAAa;YACrB,gBAAgB,EAAE;gBAChB;oBACE,EAAE,EAAE,OAAO,CAAC,UAAU;oBACtB,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS;iBACnD;aACF;YACD,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;YACrD,IAAI,EAAE;gBACJ,KAAK,EAAE,IAAI,CAAC,SAAS;gBACrB,IAAI,EAAE,OAAO,CAAC,QAAQ;aACvB;YACD,QAAQ,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,EAAE;YACpC,iBAAiB,EAAE;gBACjB,cAAc,EAAE;oBACd,MAAM,EAAE,IAAI;oBACZ,WAAW,EAAE,IAAI;iBAClB;gBACD,aAAa,EAAE;oBACb,MAAM,EAAE,IAAI;iBACb;aACF;YACD,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;SAC3E,CAAA;QAED,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,OAAO;gBACL,SAAS,EAAE,KAAK;gBAChB,UAAU,EAAE,CAAC;gBACb,IAAI,EAAE,EAAE;gBACR,OAAO,EAAE,EAAE;aACZ,CAAA;QACH,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,WAAW;aAC1B,IAAI,CAAC,WAAW,EAAE;YACjB,IAAI;SACL,CAAC;aACD,IAAI,EAAyB,CAAA;IAClC,CAAC;CACF;AAtFD,0CAsFC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template.util.js","sourceRoot":"","sources":["../../../../src/server/services/translations/template.util.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"template.util.js","sourceRoot":"","sources":["../../../../src/server/services/translations/template.util.ts"],"names":[],"mappings":";;;AACA,gDAA2C;AAG3C,MAAM,YAAY;IAChB,YAAY,CACV,IAAY,EACZ,SAAoB,EAAE,EACtB,MAAmB,EAAE;QAErB,OAAO,kBAAO,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,CAAA;IACxC,CAAC;CACF;AAEY,QAAA,YAAY,GAAG,IAAI,YAAY,EAAE,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type
|
|
2
|
-
export declare const SUPPORTED_LANGUAGES:
|
|
1
|
+
export type Lang = 'en_us' | 'en_gb' | 'es_us' | 'es_cl' | 'es_mx';
|
|
2
|
+
export declare const SUPPORTED_LANGUAGES: Lang[];
|
|
3
3
|
export declare const LANG_DEFAULT = "en_us";
|
|
4
4
|
export declare const missingTranslationExcludeList: Set<string>;
|
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.missingTranslationExcludeList = exports.LANG_DEFAULT = exports.SUPPORTED_LANGUAGES = void 0;
|
|
4
|
-
exports.SUPPORTED_LANGUAGES = [
|
|
4
|
+
exports.SUPPORTED_LANGUAGES = [
|
|
5
|
+
'en_us',
|
|
6
|
+
'en_gb',
|
|
7
|
+
'es_us',
|
|
8
|
+
'es_cl',
|
|
9
|
+
'es_mx'
|
|
10
|
+
];
|
|
5
11
|
exports.LANG_DEFAULT = 'en_us';
|
|
6
12
|
exports.missingTranslationExcludeList = new Set([]);
|
|
7
13
|
//# sourceMappingURL=translation.model.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"translation.model.js","sourceRoot":"","sources":["../../../../src/server/services/translations/translation.model.ts"],"names":[],"mappings":";;;AAEa,QAAA,mBAAmB,GAAW,
|
|
1
|
+
{"version":3,"file":"translation.model.js","sourceRoot":"","sources":["../../../../src/server/services/translations/translation.model.ts"],"names":[],"mappings":";;;AAEa,QAAA,mBAAmB,GAAW;IACzC,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;CACR,CAAA;AACY,QAAA,YAAY,GAAG,OAAO,CAAA;AAEtB,QAAA,6BAA6B,GAAG,IAAI,GAAG,CAAS,EAAE,CAAC,CAAA"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import type { StringMap } from '@goatlab/js-utils';
|
|
2
|
-
import {
|
|
2
|
+
import { Lang } from './translation.model';
|
|
3
3
|
export interface UserLanguageOptions {
|
|
4
|
-
language:
|
|
4
|
+
language: Lang | null;
|
|
5
5
|
}
|
|
6
6
|
declare class TranslationService {
|
|
7
7
|
private initialized;
|
|
8
|
-
|
|
8
|
+
initialize(): void;
|
|
9
9
|
private loadLocaleSync;
|
|
10
|
-
getLocale(lang:
|
|
11
|
-
getLocaleMap(): Record<
|
|
10
|
+
getLocale(lang: Lang | null): StringMap;
|
|
11
|
+
getLocaleMap(): Record<Lang, StringMap>;
|
|
12
12
|
missingKey(key: string): string;
|
|
13
13
|
translate(key: string, acc: UserLanguageOptions, args?: any): string;
|
|
14
14
|
/**
|
|
@@ -3,10 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.translationService = void 0;
|
|
4
4
|
exports.tr = tr;
|
|
5
5
|
exports.trIfExists = trIfExists;
|
|
6
|
-
const pupa_1 = require("@goatlab/js-utils/dist/Strings/pupa");
|
|
7
|
-
const pupa_2 = require("@goatlab/js-utils/dist/Strings/pupa");
|
|
8
6
|
const node_fs_1 = require("node:fs");
|
|
9
7
|
const node_path_1 = require("node:path");
|
|
8
|
+
const pupa_1 = require("@goatlab/js-utils/dist/Strings/pupa");
|
|
10
9
|
const consts_1 = require("../../consts");
|
|
11
10
|
// import { templateUtil } from './template.util' // No longer needed with direct pupa usage
|
|
12
11
|
const translation_model_1 = require("./translation.model");
|
|
@@ -30,15 +29,16 @@ function compileTemplate(template) {
|
|
|
30
29
|
if (!args || Object.keys(args).length === 0) {
|
|
31
30
|
return template;
|
|
32
31
|
}
|
|
33
|
-
return (0,
|
|
32
|
+
return (0, pupa_1.pupa)(template, args);
|
|
34
33
|
};
|
|
35
34
|
}
|
|
36
35
|
class TranslationService {
|
|
37
36
|
initialized = false;
|
|
38
37
|
// Initialize service by preloading all locale files
|
|
39
38
|
initialize() {
|
|
40
|
-
if (this.initialized)
|
|
39
|
+
if (this.initialized) {
|
|
41
40
|
return;
|
|
41
|
+
}
|
|
42
42
|
// Preload all supported language files
|
|
43
43
|
const loadedLanguages = [];
|
|
44
44
|
if (translation_model_1.SUPPORTED_LANGUAGES && Array.isArray(translation_model_1.SUPPORTED_LANGUAGES)) {
|
|
@@ -75,8 +75,9 @@ class TranslationService {
|
|
|
75
75
|
}
|
|
76
76
|
// Get locale from cache (backward compatible)
|
|
77
77
|
getLocale(lang) {
|
|
78
|
-
if (!lang)
|
|
78
|
+
if (!lang) {
|
|
79
79
|
return undefined;
|
|
80
|
+
}
|
|
80
81
|
// Ensure initialization
|
|
81
82
|
if (!this.initialized) {
|
|
82
83
|
this.initialize();
|
|
@@ -138,7 +139,7 @@ class TranslationService {
|
|
|
138
139
|
// Get locale from cache directly for better performance
|
|
139
140
|
const locale = user.language ? localeCache.get(user.language) : undefined;
|
|
140
141
|
const fallbackLocale = localeCache.get(translation_model_1.LANG_DEFAULT) || this.getLocale(translation_model_1.LANG_DEFAULT);
|
|
141
|
-
const value =
|
|
142
|
+
const value = locale?.[key] ?? fallbackLocale?.[key];
|
|
142
143
|
return value && this.formatResult(key, value, args);
|
|
143
144
|
}
|
|
144
145
|
formatResult(key, text, args = {}) {
|
|
@@ -162,7 +163,7 @@ class TranslationService {
|
|
|
162
163
|
// sentryService.captureMessage(
|
|
163
164
|
// `template value missing for key=${key}, param=${err.key}`,
|
|
164
165
|
// )
|
|
165
|
-
return (0,
|
|
166
|
+
return (0, pupa_1.pupa)(text, args, { ignoreMissing: true });
|
|
166
167
|
}
|
|
167
168
|
throw err;
|
|
168
169
|
}
|
|
@@ -203,8 +204,9 @@ class TranslationService {
|
|
|
203
204
|
}
|
|
204
205
|
exports.translationService = new TranslationService();
|
|
205
206
|
// Initialize on module load to preload all locales
|
|
206
|
-
if (typeof translation_model_1.SUPPORTED_LANGUAGES !== 'undefined' &&
|
|
207
|
-
|
|
207
|
+
if (typeof translation_model_1.SUPPORTED_LANGUAGES !== 'undefined' &&
|
|
208
|
+
Array.isArray(translation_model_1.SUPPORTED_LANGUAGES)) {
|
|
209
|
+
exports.translationService.initialize();
|
|
208
210
|
}
|
|
209
211
|
// Alias
|
|
210
212
|
function tr(key, user, args = {}) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"translation.service.js","sourceRoot":"","sources":["../../../../src/server/services/translations/translation.service.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"translation.service.js","sourceRoot":"","sources":["../../../../src/server/services/translations/translation.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,32 +2,32 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.analyzeBenchmarkResults = analyzeBenchmarkResults;
|
|
4
4
|
function analyzeBenchmarkResults(results) {
|
|
5
|
-
const parseValue = (value) => parseFloat(value.split(' ± ')[0]);
|
|
5
|
+
const parseValue = (value) => Number.parseFloat(value.split(' ± ')[0]);
|
|
6
6
|
// Extract numeric values
|
|
7
|
-
const parsedResults = results.map(
|
|
7
|
+
const parsedResults = results.map(r => ({
|
|
8
8
|
name: r['Task name'],
|
|
9
9
|
latencyAvg: parseValue(r['Latency avg (ns)']),
|
|
10
10
|
latencyMed: parseValue(r['Latency med (ns)']),
|
|
11
11
|
throughputAvg: parseValue(r['Throughput avg (ops/s)']),
|
|
12
12
|
throughputMed: parseValue(r['Throughput med (ops/s)']),
|
|
13
|
-
samples: r.Samples
|
|
13
|
+
samples: r.Samples
|
|
14
14
|
}));
|
|
15
15
|
console.log({ parsedResults });
|
|
16
16
|
// Find the best performers
|
|
17
|
-
const bestLatency = Math.min(...parsedResults.map(
|
|
18
|
-
const bestThroughput = Math.max(...parsedResults.map(
|
|
17
|
+
const bestLatency = Math.min(...parsedResults.map(r => r.latencyAvg)); // Lower is better
|
|
18
|
+
const bestThroughput = Math.max(...parsedResults.map(r => r.throughputAvg)); // Higher is better
|
|
19
19
|
// Calculate improvements
|
|
20
|
-
const analysis = parsedResults.map(
|
|
20
|
+
const analysis = parsedResults.map(r => ({
|
|
21
21
|
name: r.name,
|
|
22
22
|
latencyImprovement: ((bestLatency - r.latencyAvg) / bestLatency) * 100, // Lower is better
|
|
23
|
-
throughputImprovement: ((r.throughputAvg - bestThroughput) / bestThroughput) * 100
|
|
23
|
+
throughputImprovement: ((r.throughputAvg - bestThroughput) / bestThroughput) * 100 // Higher is better
|
|
24
24
|
}));
|
|
25
25
|
// Sort results from best to worst (by latency)
|
|
26
26
|
const sortedAnalysis = analysis.sort((a, b) => b.latencyImprovement - a.latencyImprovement);
|
|
27
27
|
console.table(sortedAnalysis.map(({ name, latencyImprovement, throughputImprovement }) => ({
|
|
28
28
|
'Task Name': name,
|
|
29
29
|
'Latency Improvement (%)': latencyImprovement.toFixed(2),
|
|
30
|
-
'Throughput Improvement (%)': throughputImprovement.toFixed(2)
|
|
30
|
+
'Throughput Improvement (%)': throughputImprovement.toFixed(2)
|
|
31
31
|
})));
|
|
32
32
|
return sortedAnalysis;
|
|
33
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"benchmarker.js","sourceRoot":"","sources":["../../../../src/server/services/util/benchmarker.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"benchmarker.js","sourceRoot":"","sources":["../../../../src/server/services/util/benchmarker.ts"],"names":[],"mappings":";;AAUA,0DA4CC;AA5CD,SAAgB,uBAAuB,CAAC,OAA0B;IAChE,MAAM,UAAU,GAAG,CAAC,KAAa,EAAU,EAAE,CAC3C,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAE1C,yBAAyB;IACzB,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,EAAE,CAAC,CAAC,WAAW,CAAC;QACpB,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC;QAC7C,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC;QAC7C,aAAa,EAAE,UAAU,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC;QACtD,aAAa,EAAE,UAAU,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC;QACtD,OAAO,EAAE,CAAC,CAAC,OAAO;KACnB,CAAC,CAAC,CAAA;IAEH,OAAO,CAAC,GAAG,CAAC,EAAE,aAAa,EAAE,CAAC,CAAA;IAE9B,2BAA2B;IAC3B,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAA,CAAC,kBAAkB;IACxF,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAA,CAAC,mBAAmB;IAE/F,yBAAyB;IACzB,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACvC,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,kBAAkB,EAAE,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,WAAW,CAAC,GAAG,GAAG,EAAE,kBAAkB;QAC1F,qBAAqB,EACnB,CAAC,CAAC,CAAC,CAAC,aAAa,GAAG,cAAc,CAAC,GAAG,cAAc,CAAC,GAAG,GAAG,CAAC,mBAAmB;KAClF,CAAC,CAAC,CAAA;IAEH,+CAA+C;IAC/C,MAAM,cAAc,GAAG,QAAQ,CAAC,IAAI,CAClC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kBAAkB,GAAG,CAAC,CAAC,kBAAkB,CACtD,CAAA;IAED,OAAO,CAAC,KAAK,CACX,cAAc,CAAC,GAAG,CAChB,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,EAAE,EAAE,CAAC,CAAC;QACxD,WAAW,EAAE,IAAI;QACjB,yBAAyB,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;QACxD,4BAA4B,EAAE,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC;KAC/D,CAAC,CACH,CACF,CAAA;IAED,OAAO,cAAc,CAAA;AACvB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ZodTypeAny, z } from 'zod';
|
|
2
2
|
interface PaginationParams<T> {
|
|
3
3
|
cursor?: number | null;
|
|
4
4
|
perPage?: number;
|
|
@@ -24,7 +24,7 @@ declare class PaginationUtility {
|
|
|
24
24
|
* @param perPage The number of items per page, defaults to 10 if not provided.
|
|
25
25
|
* @returns An object with the calculated page number and skip count.
|
|
26
26
|
*/
|
|
27
|
-
calculatePaginationCursor({ cursor, perPage
|
|
27
|
+
calculatePaginationCursor({ cursor, perPage }: {
|
|
28
28
|
cursor?: number | null;
|
|
29
29
|
perPage?: number | null;
|
|
30
30
|
}): {
|
|
@@ -39,8 +39,8 @@ declare class PaginationUtility {
|
|
|
39
39
|
* @param items The array of items to paginate.
|
|
40
40
|
* @returns The paginated result including metadata.
|
|
41
41
|
*/
|
|
42
|
-
paginate<T>({ cursor, perPage, total, items
|
|
43
|
-
getNextCursor<T extends ZodTypeAny>({ limit, items, schema
|
|
42
|
+
paginate<T>({ cursor, perPage, total, items }: PaginationParams<T>): PaginationResult<T>;
|
|
43
|
+
getNextCursor<T extends ZodTypeAny>({ limit, items, schema }: {
|
|
44
44
|
limit: number;
|
|
45
45
|
items: any[];
|
|
46
46
|
schema: T;
|
|
@@ -11,7 +11,7 @@ class PaginationUtility {
|
|
|
11
11
|
* @param perPage The number of items per page, defaults to 10 if not provided.
|
|
12
12
|
* @returns An object with the calculated page number and skip count.
|
|
13
13
|
*/
|
|
14
|
-
calculatePaginationCursor({ cursor = 1, perPage = 10
|
|
14
|
+
calculatePaginationCursor({ cursor = 1, perPage = 10 }) {
|
|
15
15
|
const page = Math.max(1, cursor ?? 1);
|
|
16
16
|
const itemsPerPage = Math.max(1, perPage ?? 10);
|
|
17
17
|
const skip = (page - 1) * itemsPerPage;
|
|
@@ -25,7 +25,7 @@ class PaginationUtility {
|
|
|
25
25
|
* @param items The array of items to paginate.
|
|
26
26
|
* @returns The paginated result including metadata.
|
|
27
27
|
*/
|
|
28
|
-
paginate({ cursor = 1, perPage = 10, total, items
|
|
28
|
+
paginate({ cursor = 1, perPage = 10, total, items }) {
|
|
29
29
|
const page = Math.max(1, cursor ?? 1);
|
|
30
30
|
const itemsPerPage = Math.max(1, perPage || 10);
|
|
31
31
|
const lastPage = Math.ceil(total / itemsPerPage);
|
|
@@ -38,10 +38,10 @@ class PaginationUtility {
|
|
|
38
38
|
lastPage,
|
|
39
39
|
nextPage,
|
|
40
40
|
previousPage,
|
|
41
|
-
data: items
|
|
41
|
+
data: items
|
|
42
42
|
};
|
|
43
43
|
}
|
|
44
|
-
getNextCursor({ limit, items, schema
|
|
44
|
+
getNextCursor({ limit, items, schema }) {
|
|
45
45
|
let nextCursor;
|
|
46
46
|
if (items.length > limit) {
|
|
47
47
|
const nextItem = items.pop();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagination.js","sourceRoot":"","sources":["../../../../src/server/services/util/pagination.ts"],"names":[],"mappings":";;;AAmBA;;GAEG;AACH,MAAM,iBAAiB;IACrB;;;;;OAKG;IACH,yBAAyB,CAAC,EACxB,MAAM,GAAG,CAAC,EACV,OAAO,GAAG,EAAE,
|
|
1
|
+
{"version":3,"file":"pagination.js","sourceRoot":"","sources":["../../../../src/server/services/util/pagination.ts"],"names":[],"mappings":";;;AAmBA;;GAEG;AACH,MAAM,iBAAiB;IACrB;;;;;OAKG;IACH,yBAAyB,CAAC,EACxB,MAAM,GAAG,CAAC,EACV,OAAO,GAAG,EAAE,EAIb;QACC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC,CAAA;QACrC,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC,CAAA;QAC/C,MAAM,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,YAAY,CAAA;QAEtC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;IACvB,CAAC;IAED;;;;;;;OAOG;IACH,QAAQ,CAAI,EACV,MAAM,GAAG,CAAC,EACV,OAAO,GAAG,EAAE,EACZ,KAAK,EACL,KAAK,EACe;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC,CAAA;QACrC,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC,CAAA;QAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,YAAY,CAAC,CAAA;QAChD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QACvD,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QAEpD,OAAO;YACL,KAAK;YACL,OAAO,EAAE,YAAY;YACrB,WAAW,EAAE,IAAI;YACjB,QAAQ;YACR,QAAQ;YACR,YAAY;YACZ,IAAI,EAAE,KAAK;SACZ,CAAA;IACH,CAAC;IAED,aAAa,CAAuB,EAClC,KAAK,EACL,KAAK,EACL,MAAM,EAKP;QACC,IAAI,UAAkC,CAAA;QAEtC,IAAI,KAAK,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,EAAE,CAAA;YAE5B,IAAI,QAAQ,EAAE,CAAC;gBACb,gEAAgE;gBAChE,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAA;YAC9C,CAAC;QACH,CAAC;QAED,OAAO,UAAU,CAAA;IACnB,CAAC;CACF;AAEY,QAAA,iBAAiB,GAAG,IAAI,iBAAiB,EAAE,CAAA"}
|
|
@@ -13,7 +13,7 @@ export declare class UrlService {
|
|
|
13
13
|
baseDomain: string;
|
|
14
14
|
backendApiBaseUrl: string;
|
|
15
15
|
environment: Environment;
|
|
16
|
-
constructor({ publicBucketName, privateBucketName, baseDomain, backendApiBaseUrl, environment
|
|
16
|
+
constructor({ publicBucketName, privateBucketName, baseDomain, backendApiBaseUrl, environment }: {
|
|
17
17
|
publicBucketName: string;
|
|
18
18
|
privateBucketName: string;
|
|
19
19
|
baseDomain: string;
|
|
@@ -29,9 +29,9 @@ export declare class UrlService {
|
|
|
29
29
|
* an HTTPS endpoint to upload assets to the Firebase Emulator
|
|
30
30
|
* @returns
|
|
31
31
|
*/
|
|
32
|
-
getLocalStorageHostUrl: ({ isMobile, useIP
|
|
32
|
+
getLocalStorageHostUrl: ({ isMobile, useIP }: UrlServiceProps) => Promise<string>;
|
|
33
33
|
getPublicStorageUrl: ({ isMobile, useIP }: UrlServiceProps) => Promise<string>;
|
|
34
|
-
getPrivateStorageUrl: ({ isMobile, useIP
|
|
34
|
+
getPrivateStorageUrl: ({ isMobile, useIP }: UrlServiceProps) => Promise<string>;
|
|
35
35
|
getFrontendUrl: () => string;
|
|
36
36
|
/**
|
|
37
37
|
* Decides where to send the user back after the payment has been completed
|
|
@@ -48,7 +48,7 @@ export declare class UrlService {
|
|
|
48
48
|
* @param origin
|
|
49
49
|
* @returns
|
|
50
50
|
*/
|
|
51
|
-
getBackendRedirectURLForTransBankPayments({ origin, orderId, storeId
|
|
51
|
+
getBackendRedirectURLForTransBankPayments({ origin, orderId, storeId }: {
|
|
52
52
|
origin?: string;
|
|
53
53
|
orderId?: string;
|
|
54
54
|
storeId?: string;
|
|
@@ -9,7 +9,7 @@ class UrlService {
|
|
|
9
9
|
baseDomain;
|
|
10
10
|
backendApiBaseUrl;
|
|
11
11
|
environment;
|
|
12
|
-
constructor({ publicBucketName, privateBucketName, baseDomain, backendApiBaseUrl, environment
|
|
12
|
+
constructor({ publicBucketName, privateBucketName, baseDomain, backendApiBaseUrl, environment }) {
|
|
13
13
|
this.publicBucketName = publicBucketName;
|
|
14
14
|
this.privateBucketName = privateBucketName;
|
|
15
15
|
this.baseDomain = baseDomain;
|
|
@@ -33,7 +33,7 @@ class UrlService {
|
|
|
33
33
|
* an HTTPS endpoint to upload assets to the Firebase Emulator
|
|
34
34
|
* @returns
|
|
35
35
|
*/
|
|
36
|
-
getLocalStorageHostUrl = async ({ isMobile, useIP
|
|
36
|
+
getLocalStorageHostUrl = async ({ isMobile, useIP }) => {
|
|
37
37
|
if (isMobile || useIP) {
|
|
38
38
|
return `http://${localIpAddress}:9199`;
|
|
39
39
|
}
|
|
@@ -43,7 +43,7 @@ class UrlService {
|
|
|
43
43
|
if (this.environment === 'local') {
|
|
44
44
|
const storageServiceUrl = await this.getLocalStorageHostUrl({
|
|
45
45
|
isMobile,
|
|
46
|
-
useIP
|
|
46
|
+
useIP
|
|
47
47
|
});
|
|
48
48
|
return `${storageServiceUrl}/${this.publicBucketName}`;
|
|
49
49
|
}
|
|
@@ -52,11 +52,11 @@ class UrlService {
|
|
|
52
52
|
}
|
|
53
53
|
return `https://assets-dev.${this.baseDomain}`;
|
|
54
54
|
};
|
|
55
|
-
getPrivateStorageUrl = async ({ isMobile, useIP
|
|
55
|
+
getPrivateStorageUrl = async ({ isMobile, useIP }) => {
|
|
56
56
|
if (this.environment === 'local') {
|
|
57
57
|
const storageServiceUrl = await this.getLocalStorageHostUrl({
|
|
58
58
|
isMobile,
|
|
59
|
-
useIP
|
|
59
|
+
useIP
|
|
60
60
|
});
|
|
61
61
|
return `${storageServiceUrl}/${this.privateBucketName}`;
|
|
62
62
|
}
|
|
@@ -100,10 +100,10 @@ class UrlService {
|
|
|
100
100
|
* @param origin
|
|
101
101
|
* @returns
|
|
102
102
|
*/
|
|
103
|
-
getBackendRedirectURLForTransBankPayments({ origin, orderId, storeId
|
|
103
|
+
getBackendRedirectURLForTransBankPayments({ origin, orderId, storeId }) {
|
|
104
104
|
const redirectUrl = this.getBackendUrl({
|
|
105
105
|
useIP: true,
|
|
106
|
-
preferPublicIp: true
|
|
106
|
+
preferPublicIp: true
|
|
107
107
|
});
|
|
108
108
|
return `${redirectUrl}/payments/process?origin=${origin}&storeId=${storeId}&orderId=${orderId}`;
|
|
109
109
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"url.service.js","sourceRoot":"","sources":["../../../../src/server/services/util/url.service.ts"],"names":[],"mappings":";;;AAAA,oDAAyC;AAgBzC,MAAM,cAAc,GAAG,gBAAG,CAAC,iBAAiB,EAAE,CAAA;AAE9C,MAAa,UAAU;IACrB,gBAAgB,CAAQ;IACxB,iBAAiB,CAAQ;IACzB,UAAU,CAAQ;IAClB,iBAAiB,CAAQ;IACzB,WAAW,CAAa;IAExB,YAAY,EACV,gBAAgB,EAChB,iBAAiB,EACjB,UAAU,EACV,iBAAiB,EACjB,WAAW,
|
|
1
|
+
{"version":3,"file":"url.service.js","sourceRoot":"","sources":["../../../../src/server/services/util/url.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,11 +8,11 @@ function mockRequest(options = {}) {
|
|
|
8
8
|
const request = (0, node_mocks_http_1.createRequest)(options);
|
|
9
9
|
if (options.ip) {
|
|
10
10
|
Object.assign(request, {
|
|
11
|
-
ip: options.ip
|
|
11
|
+
ip: options.ip
|
|
12
12
|
});
|
|
13
13
|
}
|
|
14
14
|
Object.assign(request, {
|
|
15
|
-
acceptsLanguages: () => options.acceptsLanguages || []
|
|
15
|
+
acceptsLanguages: () => options.acceptsLanguages || []
|
|
16
16
|
});
|
|
17
17
|
request.log = console.log;
|
|
18
18
|
request.warn = console.log;
|
|
@@ -27,9 +27,9 @@ function defaultRequestOptions() {
|
|
|
27
27
|
Accept: 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',
|
|
28
28
|
'Accept-Encoding': 'gzip, deflate, br',
|
|
29
29
|
// Request from Iphone
|
|
30
|
-
'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 8_0 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) CriOS/39.0.2171.50 Mobile/12A365 Safari/600.1.4 (000206)'
|
|
30
|
+
'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 8_0 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) CriOS/39.0.2171.50 Mobile/12A365 Safari/600.1.4 (000206)'
|
|
31
31
|
},
|
|
32
|
-
acceptsLanguages: ['en', 'es']
|
|
32
|
+
acceptsLanguages: ['en', 'es']
|
|
33
33
|
};
|
|
34
34
|
}
|
|
35
35
|
const mockedRegisteredAccountRequest = (account, patch = {}) => {
|
|
@@ -39,10 +39,10 @@ const mockedRegisteredAccountRequest = (account, patch = {}) => {
|
|
|
39
39
|
...defOptions,
|
|
40
40
|
headers: {
|
|
41
41
|
authorization: `Bearer ${mockedToken}`,
|
|
42
|
-
...defOptions.headers
|
|
42
|
+
...defOptions.headers
|
|
43
43
|
// We can extend the headers
|
|
44
44
|
},
|
|
45
|
-
...patch
|
|
45
|
+
...patch
|
|
46
46
|
});
|
|
47
47
|
};
|
|
48
48
|
exports.mockedRegisteredAccountRequest = mockedRegisteredAccountRequest;
|
|
@@ -4,7 +4,7 @@ exports.mockFirebaseToken = exports.mockedFirebaseDecodedToken = void 0;
|
|
|
4
4
|
const mockedFirebaseDecodedToken = (mockedAccount) => {
|
|
5
5
|
const account = mockedAccount || {
|
|
6
6
|
email: 'testemail@test.com',
|
|
7
|
-
firebaseId: 'testfirebaseId'
|
|
7
|
+
firebaseId: 'testfirebaseId'
|
|
8
8
|
};
|
|
9
9
|
const payload = {
|
|
10
10
|
aud: 'someFakeAudience',
|
|
@@ -16,7 +16,7 @@ const mockedFirebaseDecodedToken = (mockedAccount) => {
|
|
|
16
16
|
iss: 'someFakeProject',
|
|
17
17
|
sub: '12312312312',
|
|
18
18
|
uid: account.firebaseId ?? 'someFakeFirebaseId',
|
|
19
|
-
firebase: true
|
|
19
|
+
firebase: true
|
|
20
20
|
};
|
|
21
21
|
return payload;
|
|
22
22
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AnyRootTypes, RouterCaller, RouterRecord } from '@trpc/server/unstable-core-do-not-import';
|
|
2
2
|
import { BasicAccount } from './mock.model';
|
|
3
|
-
export declare const mockedAuthenticatedTrpcRouter: <TRoot extends AnyRootTypes, TRecord extends RouterRecord>({ mockedAccount, createCaller
|
|
3
|
+
export declare const mockedAuthenticatedTrpcRouter: <TRoot extends AnyRootTypes, TRecord extends RouterRecord>({ mockedAccount, createCaller }: {
|
|
4
4
|
mockedAccount?: Partial<BasicAccount>;
|
|
5
5
|
createCaller: RouterCaller<TRoot, TRecord>;
|
|
6
6
|
}) => Promise<import("@trpc/server/unstable-core-do-not-import").DecorateRouterRecord<TRecord>>;
|
|
@@ -4,7 +4,7 @@ exports.mockedAuthenticatedTrpcRouter = void 0;
|
|
|
4
4
|
const request_context_1 = require("../context/request.context");
|
|
5
5
|
const express_mock_1 = require("./express.mock");
|
|
6
6
|
const firebase_mock_1 = require("./firebase.mock");
|
|
7
|
-
const mockedAuthenticatedTrpcRouter = async ({ mockedAccount, createCaller
|
|
7
|
+
const mockedAuthenticatedTrpcRouter = async ({ mockedAccount, createCaller }) => {
|
|
8
8
|
const mockedRequest = (0, express_mock_1.mockedRegisteredAccountRequest)(mockedAccount);
|
|
9
9
|
const user = (0, firebase_mock_1.mockedFirebaseDecodedToken)(mockedAccount);
|
|
10
10
|
const ctx = (0, request_context_1.requestContext)(mockedRequest, user);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trpc.mock.js","sourceRoot":"","sources":["../../../src/server/test/trpc.mock.ts"],"names":[],"mappings":";;;AAKA,gEAA2D;AAC3D,iDAA+D;AAC/D,mDAA4D;AAGrD,MAAM,6BAA6B,GAAG,KAAK,EAGhD,EACA,aAAa,EACb,YAAY,
|
|
1
|
+
{"version":3,"file":"trpc.mock.js","sourceRoot":"","sources":["../../../src/server/test/trpc.mock.ts"],"names":[],"mappings":";;;AAKA,gEAA2D;AAC3D,iDAA+D;AAC/D,mDAA4D;AAGrD,MAAM,6BAA6B,GAAG,KAAK,EAGhD,EACA,aAAa,EACb,YAAY,EAIb,EAAE,EAAE;IACH,MAAM,aAAa,GAAG,IAAA,6CAA8B,EAAC,aAAa,CAAC,CAAA;IACnE,MAAM,IAAI,GAAG,IAAA,0CAA0B,EAAC,aAAa,CAAC,CAAA;IACtD,MAAM,GAAG,GAAG,IAAA,gCAAc,EAAC,aAAa,EAAE,IAAI,CAAC,CAAA;IAE/C,OAAO,YAAY,CAAC,GAAG,CAAC,CAAA;AAC1B,CAAC,CAAA;AAfY,QAAA,6BAA6B,iCAezC"}
|
package/dist/server/trpc.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { OpenApiMeta } from 'trpc-to-openapi';
|
|
2
2
|
import type { TrpcContext } from './context/trpc.context';
|
|
3
3
|
import { DecodedUserToken } from './schemas/user.schema';
|
|
4
|
-
export declare function getTrpc<ExtendedAuthenticatedContext =
|
|
4
|
+
export declare function getTrpc<ExtendedAuthenticatedContext = Record<string, unknown>, ExtendedContext = Record<string, unknown>>(params?: {
|
|
5
5
|
extendAuthenticatedContext?: (user: DecodedUserToken) => ExtendedAuthenticatedContext;
|
|
6
6
|
extendContext?: (ctx: TrpcContext) => Promise<ExtendedContext>;
|
|
7
7
|
}): {
|
package/dist/server/trpc.js
CHANGED
|
@@ -10,8 +10,8 @@ function getTrpc(params) {
|
|
|
10
10
|
sse: {
|
|
11
11
|
maxDurationMs: 5 * 60 * 1000,
|
|
12
12
|
ping: { enabled: true, intervalMs: 3000 },
|
|
13
|
-
client: { reconnectAfterInactivityMs: 5000 }
|
|
14
|
-
}
|
|
13
|
+
client: { reconnectAfterInactivityMs: 5000 }
|
|
14
|
+
}
|
|
15
15
|
});
|
|
16
16
|
const router = t.router;
|
|
17
17
|
const extendContext = params?.extendContext ?? (() => ({}));
|
|
@@ -19,8 +19,8 @@ function getTrpc(params) {
|
|
|
19
19
|
return await next({
|
|
20
20
|
ctx: {
|
|
21
21
|
...ctx,
|
|
22
|
-
extended: await extendContext(ctx)
|
|
23
|
-
}
|
|
22
|
+
extended: await extendContext(ctx)
|
|
23
|
+
}
|
|
24
24
|
});
|
|
25
25
|
});
|
|
26
26
|
const publicEndpoint = t.procedure.use(extendedMiddleware);
|
|
@@ -45,8 +45,8 @@ function getTrpc(params) {
|
|
|
45
45
|
...ctx,
|
|
46
46
|
isLoggedIn,
|
|
47
47
|
user: ctx.user ? ctx.user : undefined,
|
|
48
|
-
authenticated: extra
|
|
49
|
-
}
|
|
48
|
+
authenticated: extra
|
|
49
|
+
}
|
|
50
50
|
});
|
|
51
51
|
});
|
|
52
52
|
const isLoggedIn = t.middleware(async ({ ctx, next }) => {
|
|
@@ -57,7 +57,7 @@ function getTrpc(params) {
|
|
|
57
57
|
tokenPurpose !== 'INTERNAL_SERVICE') {
|
|
58
58
|
throw new server_1.TRPCError({
|
|
59
59
|
code: 'UNAUTHORIZED',
|
|
60
|
-
message: "No user in the request. Make sure to include Google's JWT token"
|
|
60
|
+
message: "No user in the request. Make sure to include Google's JWT token"
|
|
61
61
|
});
|
|
62
62
|
}
|
|
63
63
|
const extra = extendAuthenticatedContext(ctx.user.decodedToken);
|
|
@@ -66,8 +66,8 @@ function getTrpc(params) {
|
|
|
66
66
|
ctx: {
|
|
67
67
|
...ctx,
|
|
68
68
|
user: ctx.user,
|
|
69
|
-
authenticated: extra
|
|
70
|
-
}
|
|
69
|
+
authenticated: extra
|
|
70
|
+
}
|
|
71
71
|
});
|
|
72
72
|
});
|
|
73
73
|
const authenticatedEndpoint = t.procedure
|
|
@@ -81,7 +81,7 @@ function getTrpc(params) {
|
|
|
81
81
|
maybeAuthenticatedEnpoint,
|
|
82
82
|
publicEndpoint,
|
|
83
83
|
router,
|
|
84
|
-
t
|
|
84
|
+
t
|
|
85
85
|
};
|
|
86
86
|
}
|
|
87
87
|
//# sourceMappingURL=trpc.js.map
|