@qrvey/data-persistence 0.0.6-7 → 0.0.6-7.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.
@@ -16,9 +16,12 @@ const crudHelpers_1 = require("../helpers/crudHelpers");
16
16
  const crudFactory_service_1 = require("./crudFactory.service");
17
17
  class CrudService {
18
18
  constructor(crudSchema) {
19
- this.crudService = crudFactory_service_1.CrudFactory.databaseClientService(crudSchema);
20
19
  this.crudSchema = crudSchema;
21
20
  }
21
+ async getCrudServiceInstance() {
22
+ const crudService = await crudFactory_service_1.CrudFactory.databaseClientService(this.crudSchema);
23
+ return crudService;
24
+ }
22
25
  getDefaultValue(columnName) {
23
26
  const column = this.crudSchema.columns[columnName];
24
27
  return column ? column.default : undefined;
@@ -39,27 +42,27 @@ class CrudService {
39
42
  const processedData = Array.isArray(data)
40
43
  ? data.map(this.setDefaultValues.bind(this))
41
44
  : this.setDefaultValues(data);
42
- return this.crudService.create(processedData);
45
+ return this.getCrudServiceInstance().then((crudService) => crudService.create(processedData));
43
46
  }
44
47
  find(options) {
45
- return this.crudService.find(options);
48
+ return this.getCrudServiceInstance().then((crudService) => crudService.find(options));
46
49
  }
47
50
  findItem(options) {
48
- return this.crudService.findItem(options);
51
+ return this.getCrudServiceInstance().then((crudService) => crudService.findItem(options));
49
52
  }
50
53
  update(filters, data) {
51
- return this.crudService.update(filters, data, {});
54
+ return this.getCrudServiceInstance().then((crudService) => crudService.update(filters, data, {}));
52
55
  }
53
- remove(filters, options) {
54
- return this.crudService.remove(filters, options);
56
+ remove(filters, options = {}) {
57
+ return this.getCrudServiceInstance().then((crudService) => crudService.remove(filters, options));
55
58
  }
56
59
  findAll(options) {
57
60
  // eslint-disable-next-line no-unused-vars, @typescript-eslint/no-unused-vars
58
61
  const { pagination } = options, findAllOptions = __rest(options, ["pagination"]);
59
- return this.crudService.findAll(findAllOptions);
62
+ return this.getCrudServiceInstance().then((crudService) => crudService.findAll(findAllOptions));
60
63
  }
61
- findCount(options) {
62
- return this.crudService.findCount(options);
64
+ findCount(findCountOptions) {
65
+ return this.getCrudServiceInstance().then((crudService) => crudService.findCount(findCountOptions));
63
66
  }
64
67
  buildFilter(attribute, value, operator = 'EQUAL') {
65
68
  return (0, crudHelpers_1.buildFilter)(attribute, value, operator);
@@ -1 +1 @@
1
- {"version":3,"file":"crud.service.js","sourceRoot":"","sources":["../../../src/services/crud.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,uDAAuD;AACvD,wDAIgC;AAWhC,+DAAoD;AAEpD,MAAM,WAAW;IAIb,YAAY,UAA6B;QACrC,IAAI,CAAC,WAAW,GAAG,iCAAW,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;QACjE,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAEO,eAAe,CAAC,UAAkB;QACtC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACnD,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IAEO,gBAAgB,CAAC,IAAS;QAC9B,MAAM,aAAa,GAA2B,EAAE,CAAC;QACjD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAExC,KAAK,MAAM,UAAU,IAAI,OAAO,EAAE;YAC9B,MAAM,kBAAkB,GAAG,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC;YACjD,MAAM,kBAAkB,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;YAC5D,IAAI,kBAAkB,IAAI,kBAAkB,EAAE;gBAC1C,aAAa,CAAC,UAAU,CAAC,GAAG,kBAAkB,CAAC;aAClD;SACJ;QAED,uCAAY,aAAa,GAAK,IAAI,EAAG;IACzC,CAAC;IAED,MAAM,CAAC,IAAa;QAChB,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;YACrC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5C,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAClD,CAAC;IAED,IAAI,CAAC,OAAqB;QACtB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED,QAAQ,CAAC,OAAqB;QAC1B,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,CACF,OAAqC,EACrC,IAAgB;QAEhB,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,CACF,OAAmD,EACnD,OAAuB;QAEvB,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAED,OAAO,CAAC,OAAqB;QACzB,6EAA6E;QAC7E,MAAM,EAAE,UAAU,KAAwB,OAAO,EAA1B,cAAc,UAAK,OAAO,EAA3C,cAAiC,CAAU,CAAC;QAClD,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACpD,CAAC;IAED,SAAS,CAAC,OAAqB;QAC3B,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;IAED,WAAW,CAAC,SAAiB,EAAE,KAAU,EAAE,QAAQ,GAAG,OAAO;QACzD,OAAO,IAAA,yBAAW,EAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,eAAe,CAAC,SAAiB,EAAE,OAAiB;QAChD,OAAO,IAAA,6BAAe,EAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;IAED,SAAS,CAAC,MAAc,EAAE,SAAiB;QACvC,OAAO,IAAA,uBAAS,EAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACxC,CAAC;CACJ;AAED,kBAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"crud.service.js","sourceRoot":"","sources":["../../../src/services/crud.service.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,43 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  Object.defineProperty(exports, "__esModule", { value: true });
3
26
  exports.CrudFactory = void 0;
4
- const cruds_1 = require("./cruds");
5
27
  class CrudFactory {
6
- static databaseClientService(crudSchema) {
28
+ static async databaseClientService(crudSchema) {
7
29
  var _a;
8
30
  const isMultiPlatformMode = ((_a = process.env.PLATFORM_TYPE) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === 'container';
9
- if (isMultiPlatformMode)
10
- return new cruds_1.PostgreSqlCrudService(crudSchema);
11
- return new cruds_1.DynamoDbCrudService(crudSchema);
31
+ let DatabaseCrudService;
32
+ if (isMultiPlatformMode) {
33
+ const module = await Promise.resolve().then(() => __importStar(require('./cruds/postgresql/postgreSqlCrud.service')));
34
+ DatabaseCrudService = module.PostgreSqlCrudService;
35
+ }
36
+ else {
37
+ const module = await Promise.resolve().then(() => __importStar(require('./cruds/dynamodb/dynamoDbCrud.service')));
38
+ DatabaseCrudService = module.DynamoDbCrudService;
39
+ }
40
+ return new DatabaseCrudService(crudSchema);
12
41
  }
13
42
  }
14
43
  exports.CrudFactory = CrudFactory;
@@ -1 +1 @@
1
- {"version":3,"file":"crudFactory.service.js","sourceRoot":"","sources":["../../../src/services/crudFactory.service.ts"],"names":[],"mappings":";;;AAEA,mCAAqE;AACrE,MAAa,WAAW;IACpB,MAAM,CAAC,qBAAqB,CACxB,UAA6B;;QAE7B,MAAM,mBAAmB,GACrB,CAAA,MAAA,OAAO,CAAC,GAAG,CAAC,aAAa,0CAAE,WAAW,EAAE,MAAK,WAAW,CAAC;QAE7D,IAAI,mBAAmB;YACnB,OAAO,IAAI,6BAAqB,CAAI,UAAU,CAAC,CAAC;QACpD,OAAO,IAAI,2BAAmB,CAAI,UAAU,CAAC,CAAC;IAClD,CAAC;CACJ;AAXD,kCAWC"}
1
+ {"version":3,"file":"crudFactory.service.js","sourceRoot":"","sources":["../../../src/services/crudFactory.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,MAAa,WAAW;IACpB,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAC9B,UAA6B;;QAE7B,MAAM,mBAAmB,GACrB,CAAA,MAAA,OAAO,CAAC,GAAG,CAAC,aAAa,0CAAE,WAAW,EAAE,MAAK,WAAW,CAAC;QAE7D,IAAI,mBAEgB,CAAC;QAErB,IAAI,mBAAmB,EAAE;YACrB,MAAM,MAAM,GAAG,wDACX,2CAA2C,GAC9C,CAAC;YACF,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC;SACtD;aAAM;YACH,MAAM,MAAM,GAAG,wDACX,uCAAuC,GAC1C,CAAC;YACF,mBAAmB,GAAG,MAAM,CAAC,mBAAmB,CAAC;SACpD;QAED,OAAO,IAAI,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAC/C,CAAC;CACJ;AAzBD,kCAyBC"}
@@ -61,7 +61,7 @@ interface IFindResult<T> {
61
61
  }
62
62
 
63
63
  interface IRemoveOptions {
64
- filterGroups: boolean;
64
+ filterGroups?: boolean;
65
65
  }
66
66
 
67
67
  interface IUpdateOptions {
@@ -101,18 +101,18 @@ declare class CrudSchema {
101
101
  }
102
102
 
103
103
  declare class CrudService<T> {
104
- private crudService;
105
104
  private crudSchema;
106
105
  constructor(crudSchema: typeof CrudSchema);
106
+ private getCrudServiceInstance;
107
107
  private getDefaultValue;
108
108
  private setDefaultValues;
109
- create(data: T | T[]): Promise<T | ICreateMultipleResponse>;
110
- find(options: IFindOptions): Promise<IFindResult<T>>;
111
- findItem(options: IFindOptions): Promise<T | null>;
109
+ create(data: T | T[]): Promise<unknown | ICreateMultipleResponse>;
110
+ find(options: IFindOptions): Promise<IFindResult<unknown>>;
111
+ findItem(options: IFindOptions): Promise<unknown>;
112
112
  update(filters: IFilter[] | ICompositeFilter, data: Partial<T>): Promise<T | null>;
113
- remove(filters: IFilter[] | ICompositeFilter | IFilter[][], options: IRemoveOptions): Promise<void>;
114
- findAll(options: IFindOptions): Promise<IFindResult<T>>;
115
- findCount(options: IFindOptions): Promise<number>;
113
+ remove(filters: IFilter[] | ICompositeFilter | IFilter[][], options?: IRemoveOptions): Promise<void>;
114
+ findAll(options: IFindOptions): Promise<IFindResult<unknown>>;
115
+ findCount(findCountOptions: IFindOptions): Promise<number>;
116
116
  buildFilter(attribute: string, value: any, operator?: string): {
117
117
  attribute: string;
118
118
  operator: string;
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@qrvey/data-persistence",
3
3
  "types": "dist/types/index.d.ts",
4
4
  "main": "dist/cjs/index.js",
5
- "version": "0.0.6-7",
5
+ "version": "0.0.6-7.2",
6
6
  "license": "MIT",
7
7
  "exports": {
8
8
  ".": {
@@ -1,19 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./dynamodb/dynamoDbCrud.service"), exports);
18
- __exportStar(require("./postgresql/postgreSqlCrud.service"), exports);
19
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/cruds/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kEAAgD;AAChD,sEAAoD"}