@golemio/core 1.2.21-dev.663558633 → 1.2.21-dev.669576538

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.
@@ -1,4 +1,5 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="node" />
2
3
  export declare abstract class AbstractStorageService {
3
4
  abstract uploadFile(data: Buffer | string, pathPrefix: string, ext?: string, fileName?: string): Promise<void>;
4
5
  abstract deleteFile(key: string): Promise<void>;
@@ -1,4 +1,5 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="node" />
2
3
  import { ILogger } from "../../Logger";
3
4
  import { AbstractStorageService } from "./AbstractStorageService";
4
5
  export interface IAzureBlobStorageConfig {
@@ -0,0 +1,10 @@
1
+ /// <reference types="node" />
2
+ import { ILogger } from "../../Logger";
3
+ import { AbstractStorageService } from "./AbstractStorageService";
4
+ export declare class NoopStorageService extends AbstractStorageService {
5
+ private readonly log;
6
+ constructor(log: ILogger);
7
+ uploadFile(data: Buffer | string, pathPrefix: string, ext: string, fileName?: string): Promise<void>;
8
+ deleteFile(fileKey: string): Promise<void>;
9
+ getFileStream(fileKey: string): Promise<undefined>;
10
+ }
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.NoopStorageService = void 0;
13
+ const AbstractStorageService_1 = require("./AbstractStorageService");
14
+ class NoopStorageService extends AbstractStorageService_1.AbstractStorageService {
15
+ constructor(log) {
16
+ super();
17
+ this.log = log;
18
+ }
19
+ uploadFile(data, pathPrefix, ext, fileName) {
20
+ return __awaiter(this, void 0, void 0, function* () {
21
+ this.log.silly("[NoopStorageService] Storage is disabled. Skipping file upload.");
22
+ });
23
+ }
24
+ deleteFile(fileKey) {
25
+ return __awaiter(this, void 0, void 0, function* () {
26
+ this.log.silly("[NoopStorageService] Storage is disabled. Skipping file deletion.");
27
+ });
28
+ }
29
+ getFileStream(fileKey) {
30
+ return __awaiter(this, void 0, void 0, function* () {
31
+ this.log.silly("[NoopStorageService] Storage is disabled. Skipping file fetching.");
32
+ return;
33
+ });
34
+ }
35
+ }
36
+ exports.NoopStorageService = NoopStorageService;
37
+ //# sourceMappingURL=NoopStorageService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NoopStorageService.js","sourceRoot":"","sources":["../../../../src/helpers/data-access/storage/NoopStorageService.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,qEAAkE;AAElE,MAAa,kBAAmB,SAAQ,+CAAsB;IAC1D,YAA6B,GAAY;QACrC,KAAK,EAAE,CAAC;QADiB,QAAG,GAAH,GAAG,CAAS;IAEzC,CAAC;IAEY,UAAU,CAAC,IAAqB,EAAE,UAAkB,EAAE,GAAW,EAAE,QAAiB;;YAC7F,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,iEAAiE,CAAC,CAAC;QACtF,CAAC;KAAA;IAEY,UAAU,CAAC,OAAe;;YACnC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mEAAmE,CAAC,CAAC;QACxF,CAAC;KAAA;IAEY,aAAa,CAAC,OAAe;;YACtC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mEAAmE,CAAC,CAAC;YACpF,OAAO;QACX,CAAC;KAAA;CACJ;AAjBD,gDAiBC"}
@@ -8,9 +8,11 @@ export interface IStorageConfig {
8
8
  };
9
9
  }
10
10
  export declare enum StorageProvider {
11
- Azure = 0
11
+ Noop = 0,
12
+ Azure = 1
12
13
  }
13
14
  export declare class StorageServiceFactory {
15
+ private config;
14
16
  private dictionary;
15
17
  constructor(config: IStorageConfig, log: ILogger);
16
18
  getService(storageProvider: StorageProvider): AbstractStorageService | undefined;
@@ -2,22 +2,31 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.StorageServiceFactory = exports.StorageProvider = void 0;
4
4
  const AzureBlobStorageService_1 = require("./AzureBlobStorageService");
5
+ const NoopStorageService_1 = require("./NoopStorageService");
5
6
  var StorageProvider;
6
7
  (function (StorageProvider) {
7
- StorageProvider[StorageProvider["Azure"] = 0] = "Azure";
8
+ StorageProvider[StorageProvider["Noop"] = 0] = "Noop";
9
+ StorageProvider[StorageProvider["Azure"] = 1] = "Azure";
8
10
  })(StorageProvider = exports.StorageProvider || (exports.StorageProvider = {}));
9
11
  class StorageServiceFactory {
10
12
  constructor(config, log) {
13
+ this.config = config;
11
14
  this.dictionary = new Map();
12
15
  if (config.enabled) {
13
16
  this.dictionary.set(StorageProvider.Azure, new AzureBlobStorageService_1.AzureBlobStorageService(config.provider.azure, log));
14
17
  }
15
18
  else {
16
- log.silly("[StorageServiceFactory] Storage is disabled. Skipping");
19
+ log.silly("[StorageServiceFactory] Storage is disabled.");
20
+ this.dictionary.set(StorageProvider.Noop, new NoopStorageService_1.NoopStorageService(log));
17
21
  }
18
22
  }
19
23
  getService(storageProvider) {
20
- return this.dictionary.get(storageProvider);
24
+ if (this.config.enabled) {
25
+ return this.dictionary.get(storageProvider);
26
+ }
27
+ else {
28
+ return this.dictionary.get(StorageProvider.Noop);
29
+ }
21
30
  }
22
31
  }
23
32
  exports.StorageServiceFactory = StorageServiceFactory;
@@ -1 +1 @@
1
- {"version":3,"file":"StorageServiceFactory.js","sourceRoot":"","sources":["../../../../src/helpers/data-access/storage/StorageServiceFactory.ts"],"names":[],"mappings":";;;AAEA,uEAA6F;AAS7F,IAAY,eAEX;AAFD,WAAY,eAAe;IACvB,uDAAK,CAAA;AACT,CAAC,EAFW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAE1B;AAED,MAAa,qBAAqB;IAG9B,YAAY,MAAsB,EAAE,GAAY;QAC5C,IAAI,CAAC,UAAU,GAAG,IAAI,GAAG,EAAE,CAAC;QAE5B,IAAI,MAAM,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,iDAAuB,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;SACvG;aAAM;YACH,GAAG,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;SACtE;IACL,CAAC;IAEM,UAAU,CAAC,eAAgC;QAC9C,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAChD,CAAC;CACJ;AAhBD,sDAgBC"}
1
+ {"version":3,"file":"StorageServiceFactory.js","sourceRoot":"","sources":["../../../../src/helpers/data-access/storage/StorageServiceFactory.ts"],"names":[],"mappings":";;;AAEA,uEAA6F;AAC7F,6DAAqF;AASrF,IAAY,eAGX;AAHD,WAAY,eAAe;IACvB,qDAAI,CAAA;IACJ,uDAAK,CAAA;AACT,CAAC,EAHW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAG1B;AAED,MAAa,qBAAqB;IAG9B,YAAoB,MAAsB,EAAE,GAAY;QAApC,WAAM,GAAN,MAAM,CAAgB;QACtC,IAAI,CAAC,UAAU,GAAG,IAAI,GAAG,EAAE,CAAC;QAE5B,IAAI,MAAM,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,iDAAuB,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;SACvG;aAAM;YACH,GAAG,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAC1D,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,uCAAkB,CAAC,GAAG,CAAC,CAAC,CAAC;SAC1E;IACL,CAAC;IAEM,UAAU,CAAC,eAAgC;QAC9C,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;YACrB,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;SAC/C;aAAM;YACH,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;SACpD;IACL,CAAC;CACJ;AArBD,sDAqBC"}
@@ -1,4 +1,5 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="node" />
2
3
  import { EventEmitter } from "events";
3
4
  import { Request } from "express";
4
5
  declare enum LoggerEventType {
@@ -1,4 +1,5 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="node" />
2
3
  import { EventEmitter } from "events";
3
4
  declare enum LoggerEventType {
4
5
  NumberOfRecords = "number-of-records",
@@ -26,7 +26,7 @@ export declare class PostgresModel implements IModel {
26
26
  findOne: (opts: object, useTmpTable?: boolean) => Promise<any>;
27
27
  findAndCountAll: (opts: object, useTmpTable?: boolean) => Promise<any>;
28
28
  update: (data: any, opts: any, useTmpTable?: boolean) => Promise<any>;
29
- sync: <M extends Model<any, any>>(options?: SyncOptions | undefined) => Promise<M>;
29
+ sync: <M extends Model<any, any>>(options?: SyncOptions) => Promise<M>;
30
30
  private insertOnly;
31
31
  private insertOrUpdate;
32
32
  private getSequelizeModelSafely;
@@ -24,11 +24,11 @@ export declare class RedisModel implements IRedisModel {
24
24
  * @param ttlSeconds Key timeout, in seconds
25
25
  * @param expireTimestamp Unix time at which the key will expire, in milliseconds
26
26
  */
27
- set: (key: string, data: any, ttlSeconds?: number | undefined, expireTimestamp?: number | undefined) => Promise<any>;
27
+ set: (key: string, data: any, ttlSeconds?: number, expireTimestamp?: number) => Promise<any>;
28
28
  hset: (key: string, data: any) => Promise<any>;
29
29
  get: (key: string) => Promise<any>;
30
30
  hget: (key: string) => Promise<any>;
31
- delete: (key?: string | undefined) => Promise<any>;
31
+ delete: (key?: string) => Promise<any>;
32
32
  truncate: (namespace?: boolean) => Promise<number>;
33
33
  flush: () => Promise<"OK">;
34
34
  private validate;
@@ -7,4 +7,4 @@ export interface ISentryConfig {
7
7
  debug?: boolean;
8
8
  tracesSampleRate?: number;
9
9
  }
10
- export declare const initSentry: (sentryConfig: ISentryConfig, appName: string, app?: express.Application | undefined) => void;
10
+ export declare const initSentry: (sentryConfig: ISentryConfig, appName: string, app?: express.Application) => void;
@@ -64,7 +64,7 @@ export declare const parseCoordinates: (latlng: string, range: string) => Promis
64
64
  * @param removeLonLatProperties Removes lon and lat properties from GeoJSON properties. Default false.
65
65
  * @returns {IGeoJSONFeature} GeoJSON feature - object with geometry, properties, and type = "Feature"
66
66
  */
67
- export declare const buildGeojsonFeature: (item: any, lonProperty: string, latProperty: string, removeLonLatProperties?: boolean | undefined) => IGeoJSONFeature;
67
+ export declare const buildGeojsonFeature: (item: any, lonProperty: string, latProperty: string, removeLonLatProperties?: boolean) => IGeoJSONFeature;
68
68
  /**
69
69
  * Builds a GeoJSON feature from object or JSON with location specified with numbers in WGS 84
70
70
  * @param item Item to convert to GeoJSON Feature format
@@ -96,4 +96,4 @@ export declare const buildGeojsonFeatureType: <K extends string, T>(geoProp: K,
96
96
  * @param removeLonLatProperties Removes lon and lat properties from GeoJSON properties. Default false.
97
97
  * @returns {IGeoJSONFeatureCollection} GeoJSON feature collection - object with features and type = "FeatureCollection"
98
98
  */
99
- export declare const buildGeojsonFeatureCollection: (items: any, lonProperty?: string | undefined, latProperty?: string | undefined, removeLonLatProperties?: boolean | undefined) => IGeoJSONFeatureCollection;
99
+ export declare const buildGeojsonFeatureCollection: (items: any, lonProperty?: string, latProperty?: string, removeLonLatProperties?: boolean) => IGeoJSONFeatureCollection;
@@ -16,4 +16,4 @@ export declare const pagination: ((req: Request, res: Response, next: NextFuncti
16
16
  * Performs a check if limit of requested data is not exceeded, sets limit if not present
17
17
  * @param routerName name passed to the returned Error object in case of failure
18
18
  */
19
- export declare const paginationLimitMiddleware: (routerName?: string | undefined) => (req: Request, res: Response, next: NextFunction) => void;
19
+ export declare const paginationLimitMiddleware: (routerName?: string) => (req: Request, res: Response, next: NextFunction) => void;
@@ -11,5 +11,5 @@ declare class MyCacheMiddleware {
11
11
  private middleware;
12
12
  }
13
13
  declare const CacheMiddleware: MyCacheMiddleware;
14
- declare const useCacheMiddleware: (expire?: string | number | undefined) => (req: Request, res: Response, next: NextFunction) => void;
14
+ declare const useCacheMiddleware: (expire?: number | string) => (req: Request, res: Response, next: NextFunction) => void;
15
15
  export { CacheMiddleware, useCacheMiddleware };
@@ -6,7 +6,7 @@ export declare abstract class AbstractHistoryRouter extends BaseRouter {
6
6
  router: Router;
7
7
  protected model: IBaseModel;
8
8
  constructor(inModel: IBaseModel);
9
- initRoutes: (expire?: string | number | undefined) => Promise<void>;
9
+ initRoutes: (expire?: number | string) => Promise<void>;
10
10
  GetAll: (req: Request, res: Response, next: NextFunction) => Promise<void>;
11
11
  protected abstract GetIdQueryParamWithCorrectType(): Promise<ValidationChain>;
12
12
  }
@@ -18,7 +18,7 @@ export declare class GeoJsonRouter extends BaseRouter {
18
18
  * Initiates all routes. Should respond with correct data to a HTTP requests to all routes.
19
19
  * @param {number|string} expire TTL for the caching middleware
20
20
  */
21
- initRoutes: (expire?: string | number | undefined) => Promise<void>;
21
+ initRoutes: (expire?: number | string) => Promise<void>;
22
22
  GetAll: (req: Request, res: Response, next: NextFunction) => Promise<void>;
23
23
  GetOne: (req: Request, res: Response, next: NextFunction) => void;
24
24
  protected GetIdQueryParamWithCorrectType: () => Promise<ValidationChain>;
@@ -22,7 +22,32 @@
22
22
  /// <reference types="mongoose/types/validation" />
23
23
  /// <reference types="mongoose/types/virtuals" />
24
24
  /// <reference types="mongoose" />
25
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/aggregate" />
26
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/callback" />
27
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/collection" />
28
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/connection" />
29
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/cursor" />
30
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/document" />
31
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/error" />
32
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/expressions" />
33
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/helpers" />
34
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/middlewares" />
35
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/indexes" />
36
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/models" />
37
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/mongooseoptions" />
38
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/pipelinestage" />
39
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/populate" />
40
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/query" />
41
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/schemaoptions" />
42
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/schematypes" />
43
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/session" />
44
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/types" />
45
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/utility" />
46
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/validation" />
47
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/virtuals" />
48
+ /// <reference types="@golemio/validator/node_modules/mongoose" />
25
49
  /// <reference types="mongoose/types/inferschematype" />
50
+ /// <reference types="@golemio/validator/node_modules/mongoose/types/inferschematype" />
26
51
  import { ModelAttributes } from "sequelize";
27
52
  declare const forExport: {
28
53
  name: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@golemio/core",
3
- "version": "1.2.21-dev.663558633",
3
+ "version": "1.2.21-dev.669576538",
4
4
  "description": "Golemio Core Module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -61,7 +61,7 @@
61
61
  "ts-node": "^10.7.0",
62
62
  "ttypescript": "^1.5.13",
63
63
  "typedoc": "^0.22.15",
64
- "typescript": "4.6.4"
64
+ "typescript": "4.7.2"
65
65
  },
66
66
  "dependencies": {
67
67
  "@abraham/reflection": "^0.10.0",
@@ -110,7 +110,7 @@
110
110
  "luxon": "^2.3.2",
111
111
  "moment-timezone": "^0.5.26",
112
112
  "mongodb-restore-dump": "1.0.1",
113
- "mongoose": "^6.5.3",
113
+ "mongoose": "^6.6.5",
114
114
  "morgan": "^1.10.0",
115
115
  "opentelemetry-instrumentation-mongoose": "^0.27.1",
116
116
  "opentelemetry-instrumentation-sequelize": "^0.27.1",