@campxdev/server-shared 2.0.5 → 2.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/dist/domain/entities/institution-config.entity.d.ts +42 -0
  2. package/dist/domain/entities/institution-config.entity.d.ts.map +1 -0
  3. package/dist/domain/entities/institution-config.entity.js +195 -0
  4. package/dist/domain/entities/institution-config.entity.js.map +1 -0
  5. package/dist/domain/modules/shared-domain.module.d.ts.map +1 -1
  6. package/dist/domain/modules/shared-domain.module.js +6 -0
  7. package/dist/domain/modules/shared-domain.module.js.map +1 -1
  8. package/dist/domain/mysql-repositories/mysql-institution-config.repository.d.ts +12 -0
  9. package/dist/domain/mysql-repositories/mysql-institution-config.repository.d.ts.map +1 -0
  10. package/dist/domain/mysql-repositories/mysql-institution-config.repository.js +47 -0
  11. package/dist/domain/mysql-repositories/mysql-institution-config.repository.js.map +1 -0
  12. package/dist/domain/repositories/institution-config.repository.d.ts +11 -0
  13. package/dist/domain/repositories/institution-config.repository.d.ts.map +1 -0
  14. package/dist/domain/repositories/institution-config.repository.js +7 -0
  15. package/dist/domain/repositories/institution-config.repository.js.map +1 -0
  16. package/dist/media/index.d.ts +6 -0
  17. package/dist/media/index.d.ts.map +1 -1
  18. package/dist/media/index.js +6 -0
  19. package/dist/media/index.js.map +1 -1
  20. package/dist/media/interfaces/s3-client.interfaces.d.ts +39 -0
  21. package/dist/media/interfaces/s3-client.interfaces.d.ts.map +1 -0
  22. package/dist/media/interfaces/s3-client.interfaces.js +3 -0
  23. package/dist/media/interfaces/s3-client.interfaces.js.map +1 -0
  24. package/dist/media/interfaces/sts.interfaces.d.ts +7 -0
  25. package/dist/media/interfaces/sts.interfaces.d.ts.map +1 -0
  26. package/dist/media/interfaces/sts.interfaces.js +3 -0
  27. package/dist/media/interfaces/sts.interfaces.js.map +1 -0
  28. package/dist/media/managers/aws.manager.d.ts +2 -1
  29. package/dist/media/managers/aws.manager.d.ts.map +1 -1
  30. package/dist/media/managers/aws.manager.js.map +1 -1
  31. package/dist/media/managers/media-object-manager.d.ts +13 -3
  32. package/dist/media/managers/media-object-manager.d.ts.map +1 -1
  33. package/dist/media/managers/media-object-manager.js +16 -8
  34. package/dist/media/managers/media-object-manager.js.map +1 -1
  35. package/dist/media/managers/media-records-manager.d.ts +14 -3
  36. package/dist/media/managers/media-records-manager.d.ts.map +1 -1
  37. package/dist/media/managers/media-records-manager.js +18 -9
  38. package/dist/media/managers/media-records-manager.js.map +1 -1
  39. package/dist/media/media.module.d.ts.map +1 -1
  40. package/dist/media/media.module.js +5 -2
  41. package/dist/media/media.module.js.map +1 -1
  42. package/dist/media/services/s3-client-factory.service.d.ts +13 -0
  43. package/dist/media/services/s3-client-factory.service.d.ts.map +1 -0
  44. package/dist/media/services/s3-client-factory.service.js +123 -0
  45. package/dist/media/services/s3-client-factory.service.js.map +1 -0
  46. package/dist/media/services/s3-client-store.service.d.ts +41 -0
  47. package/dist/media/services/s3-client-store.service.d.ts.map +1 -0
  48. package/dist/media/services/s3-client-store.service.js +129 -0
  49. package/dist/media/services/s3-client-store.service.js.map +1 -0
  50. package/dist/media/services/sts.service.d.ts +16 -0
  51. package/dist/media/services/sts.service.d.ts.map +1 -0
  52. package/dist/media/services/sts.service.js +69 -0
  53. package/dist/media/services/sts.service.js.map +1 -0
  54. package/dist/media/utils/simple-cache.d.ts +20 -0
  55. package/dist/media/utils/simple-cache.d.ts.map +1 -0
  56. package/dist/media/utils/simple-cache.js +80 -0
  57. package/dist/media/utils/simple-cache.js.map +1 -0
  58. package/package.json +4 -3
@@ -0,0 +1,16 @@
1
+ import { ConfigService } from '@nestjs/config';
2
+ export declare class STSService {
3
+ private readonly configService;
4
+ private readonly logger;
5
+ private readonly stsClient;
6
+ constructor(configService: ConfigService);
7
+ /**
8
+ * Assume role and return AWS credentials for S3Client
9
+ */
10
+ assumeRole(roleArn: string, sessionName?: string): Promise<{
11
+ accessKeyId: string;
12
+ secretAccessKey: string;
13
+ sessionToken: string;
14
+ }>;
15
+ }
16
+ //# sourceMappingURL=sts.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sts.service.d.ts","sourceRoot":"","sources":["../../../src/media/services/sts.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,qBACa,UAAU;IAIT,OAAO,CAAC,QAAQ,CAAC,aAAa;IAH1C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+B;IACtD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;gBAET,aAAa,EAAE,aAAa;IAczD;;OAEG;IACG,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM;;;;;CA8BvD"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var STSService_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.STSService = void 0;
14
+ const client_sts_1 = require("@aws-sdk/client-sts");
15
+ const common_1 = require("@nestjs/common");
16
+ const config_1 = require("@nestjs/config");
17
+ let STSService = STSService_1 = class STSService {
18
+ configService;
19
+ logger = new common_1.Logger(STSService_1.name);
20
+ stsClient;
21
+ constructor(configService) {
22
+ this.configService = configService;
23
+ const isLocal = process.env.NODE_ENV === 'development' || process.env.NODE_ENV === 'local';
24
+ this.logger.log(`STSService initialized with isLocal: ${isLocal}`);
25
+ this.stsClient = new client_sts_1.STSClient({
26
+ region: this.configService.get('AWS_REGION'),
27
+ ...(isLocal && {
28
+ credentials: {
29
+ accessKeyId: this.configService.get('AWS_ACCESS_KEY_ID'),
30
+ secretAccessKey: this.configService.get('AWS_SECRET_ACCESS_KEY'),
31
+ },
32
+ }),
33
+ });
34
+ }
35
+ /**
36
+ * Assume role and return AWS credentials for S3Client
37
+ */
38
+ async assumeRole(roleArn, sessionName) {
39
+ const defaultSessionName = sessionName || `campx-session-${Date.now()}`;
40
+ const roleSessionDuration = Number(this.configService.get('roleSessionDuration')) || 3600;
41
+ try {
42
+ const response = await this.stsClient.send(new client_sts_1.AssumeRoleCommand({
43
+ RoleArn: roleArn,
44
+ RoleSessionName: defaultSessionName,
45
+ DurationSeconds: roleSessionDuration,
46
+ }));
47
+ if (!response.Credentials) {
48
+ throw new Error('Failed to obtain temporary credentials from STS');
49
+ }
50
+ this.logger.log(`Successfully assumed role: ${roleArn}`);
51
+ return {
52
+ accessKeyId: response.Credentials.AccessKeyId,
53
+ secretAccessKey: response.Credentials.SecretAccessKey,
54
+ sessionToken: response.Credentials.SessionToken,
55
+ };
56
+ }
57
+ catch (error) {
58
+ const errorMessage = error instanceof Error ? error.message : 'Unknown error';
59
+ this.logger.error(`Failed to assume role ${roleArn}: ${errorMessage}`);
60
+ throw new Error(`Failed to assume role ${roleArn}: ${errorMessage}`);
61
+ }
62
+ }
63
+ };
64
+ exports.STSService = STSService;
65
+ exports.STSService = STSService = STSService_1 = __decorate([
66
+ (0, common_1.Injectable)(),
67
+ __metadata("design:paramtypes", [config_1.ConfigService])
68
+ ], STSService);
69
+ //# sourceMappingURL=sts.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sts.service.js","sourceRoot":"","sources":["../../../src/media/services/sts.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,oDAAmE;AACnE,2CAAoD;AACpD,2CAA+C;AAGxC,IAAM,UAAU,kBAAhB,MAAM,UAAU;IAIQ;IAHZ,MAAM,GAAG,IAAI,eAAM,CAAC,YAAU,CAAC,IAAI,CAAC,CAAC;IACrC,SAAS,CAAY;IAEtC,YAA6B,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;QACvD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,OAAO,CAAC;QAC3F,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,wCAAwC,OAAO,EAAE,CAAC,CAAC;QACnE,IAAI,CAAC,SAAS,GAAG,IAAI,sBAAS,CAAC;YAC7B,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC;YAC5C,GAAG,CAAC,OAAO,IAAI;gBACb,WAAW,EAAE;oBACX,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,mBAAmB,CAAC;oBACxD,eAAe,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,uBAAuB,CAAC;iBACjE;aACF,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,OAAe,EAAE,WAAoB;QACpD,MAAM,kBAAkB,GAAG,WAAW,IAAI,iBAAiB,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QACxE,MAAM,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,IAAI,IAAI,CAAC;QAE1F,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CACxC,IAAI,8BAAiB,CAAC;gBACpB,OAAO,EAAE,OAAO;gBAChB,eAAe,EAAE,kBAAkB;gBACnC,eAAe,EAAE,mBAAmB;aACrC,CAAC,CACH,CAAC;YAEF,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;YACrE,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,8BAA8B,OAAO,EAAE,CAAC,CAAC;YAEzD,OAAO;gBACL,WAAW,EAAE,QAAQ,CAAC,WAAW,CAAC,WAAY;gBAC9C,eAAe,EAAE,QAAQ,CAAC,WAAW,CAAC,eAAgB;gBACtD,YAAY,EAAE,QAAQ,CAAC,WAAW,CAAC,YAAa;aACjD,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC9E,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,OAAO,KAAK,YAAY,EAAE,CAAC,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,yBAAyB,OAAO,KAAK,YAAY,EAAE,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;CACF,CAAA;AAnDY,gCAAU;qBAAV,UAAU;IADtB,IAAA,mBAAU,GAAE;qCAKiC,sBAAa;GAJ9C,UAAU,CAmDtB"}
@@ -0,0 +1,20 @@
1
+ interface SimpleCacheOptions<T, P = any> {
2
+ defaultTtlMs?: number;
3
+ maxSize?: number;
4
+ createFn?: (key: string, params?: P) => Promise<T>;
5
+ }
6
+ export declare class SimpleCache<T, P = any> {
7
+ private readonly cache;
8
+ private readonly options;
9
+ constructor(options?: SimpleCacheOptions<T, P>);
10
+ get(key: string, params?: P): Promise<T>;
11
+ set(key: string, value: T, ttlMs?: number): void;
12
+ has(key: string): boolean;
13
+ remove(key: string): boolean;
14
+ clear(): void;
15
+ size(): number;
16
+ private evictIfNeeded;
17
+ private cleanupExpired;
18
+ }
19
+ export {};
20
+ //# sourceMappingURL=simple-cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simple-cache.d.ts","sourceRoot":"","sources":["../../../src/media/utils/simple-cache.ts"],"names":[],"mappings":"AAKA,UAAU,kBAAkB,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;CACpD;AAED,qBAAa,WAAW,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG;IACjC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoC;IAC1D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqC;gBAEjD,OAAO,GAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAM;IAQ5C,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAkB9C,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAQhD,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAYzB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAI5B,KAAK,IAAI,IAAI;IAIb,IAAI,IAAI,MAAM;IAKd,OAAO,CAAC,aAAa;IAoBrB,OAAO,CAAC,cAAc;CAQvB"}
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SimpleCache = void 0;
4
+ class SimpleCache {
5
+ cache = new Map();
6
+ options;
7
+ constructor(options = {}) {
8
+ this.options = {
9
+ defaultTtlMs: options.defaultTtlMs ?? 60 * 60 * 1000, // 1 hour default
10
+ maxSize: options.maxSize ?? 1000,
11
+ createFn: options.createFn ?? (() => Promise.reject(new Error('No create function provided'))),
12
+ };
13
+ }
14
+ async get(key, params) {
15
+ const entry = this.cache.get(key);
16
+ if (entry && Date.now() < entry.expiresAt) {
17
+ return entry.value;
18
+ }
19
+ // Remove expired entry
20
+ if (entry) {
21
+ this.cache.delete(key);
22
+ }
23
+ // Create new value using factory function
24
+ const value = await this.options.createFn(key, params);
25
+ this.set(key, value);
26
+ return value;
27
+ }
28
+ set(key, value, ttlMs) {
29
+ const actualTtl = ttlMs ?? this.options.defaultTtlMs;
30
+ const expiresAt = Date.now() + actualTtl;
31
+ this.cache.set(key, { value, expiresAt });
32
+ this.evictIfNeeded();
33
+ }
34
+ has(key) {
35
+ const entry = this.cache.get(key);
36
+ if (!entry)
37
+ return false;
38
+ if (Date.now() >= entry.expiresAt) {
39
+ this.cache.delete(key);
40
+ return false;
41
+ }
42
+ return true;
43
+ }
44
+ remove(key) {
45
+ return this.cache.delete(key);
46
+ }
47
+ clear() {
48
+ this.cache.clear();
49
+ }
50
+ size() {
51
+ this.cleanupExpired();
52
+ return this.cache.size;
53
+ }
54
+ evictIfNeeded() {
55
+ if (this.cache.size <= this.options.maxSize) {
56
+ return;
57
+ }
58
+ // Remove expired entries first
59
+ this.cleanupExpired();
60
+ // If still over limit, remove oldest entries
61
+ if (this.cache.size > this.options.maxSize) {
62
+ const entries = Array.from(this.cache.entries())
63
+ .sort(([, a], [, b]) => a.expiresAt - b.expiresAt);
64
+ const toRemove = this.cache.size - this.options.maxSize;
65
+ for (let i = 0; i < toRemove; i++) {
66
+ this.cache.delete(entries[i][0]);
67
+ }
68
+ }
69
+ }
70
+ cleanupExpired() {
71
+ const now = Date.now();
72
+ for (const [key, entry] of this.cache.entries()) {
73
+ if (now >= entry.expiresAt) {
74
+ this.cache.delete(key);
75
+ }
76
+ }
77
+ }
78
+ }
79
+ exports.SimpleCache = SimpleCache;
80
+ //# sourceMappingURL=simple-cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simple-cache.js","sourceRoot":"","sources":["../../../src/media/utils/simple-cache.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@campxdev/server-shared",
3
- "version": "2.0.5",
3
+ "version": "2.0.6",
4
4
  "description": "Campx server shared files",
5
5
  "main": "dist/index.js",
6
6
  "license": "MIT",
@@ -17,8 +17,8 @@
17
17
  "test:cov": "jest --coverage",
18
18
  "test:debug": "node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand",
19
19
  "test:e2e": "jest --config ./test/jest-e2e.json",
20
- "local": "npm run build && yalc push",
21
- "start": "npm run build && node dist/index.js"
20
+ "local": "yarn build && yalc push",
21
+ "start": "yarn build && node dist/index.js"
22
22
  },
23
23
  "dependencies": {
24
24
  "@aws-sdk/client-cloudfront": "^3.699.0",
@@ -27,6 +27,7 @@
27
27
  "@aws-sdk/client-s3": "^3.490.0",
28
28
  "@aws-sdk/client-secrets-manager": "^3.734.0",
29
29
  "@aws-sdk/client-sqs": "^3.693.0",
30
+ "@aws-sdk/client-sts": "^3.490.0",
30
31
  "@azure/msal-node": "^3.6.3",
31
32
  "@golevelup/nestjs-discovery": "^4.0.1",
32
33
  "@microsoft/microsoft-graph-client": "^3.0.7",