@alanszp/integrations-common 7.8.4 → 7.9.1

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/index.d.ts CHANGED
@@ -1,2 +1,4 @@
1
1
  export * from "./IntegrationExecutionResult";
2
+ export * from "./models/BaseIntegrationHistory";
3
+ export * from "./views/integrationView";
2
4
  export * from "./types";
package/dist/index.js CHANGED
@@ -11,5 +11,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
13
  __exportStar(require("./IntegrationExecutionResult"), exports);
14
+ __exportStar(require("./models/BaseIntegrationHistory"), exports);
15
+ __exportStar(require("./views/integrationView"), exports);
14
16
  __exportStar(require("./types"), exports);
15
17
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+DAA6C;AAC7C,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+DAA6C;AAC7C,kEAAgD;AAChD,0DAAwC;AACxC,0CAAwB"}
@@ -0,0 +1,10 @@
1
+ import { BaseEntityUuid } from "@alanszp/typeorm";
2
+ import { IntegrationResultStatus, IntegrationStatus } from "../types";
3
+ export declare abstract class BaseIntegrationHistory extends BaseEntityUuid {
4
+ integrationId: string;
5
+ organizationReference: string;
6
+ status: IntegrationStatus;
7
+ result: IntegrationResultStatus;
8
+ executedAt: Date;
9
+ executedBy: string;
10
+ }
@@ -0,0 +1,50 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.BaseIntegrationHistory = void 0;
13
+ const typeorm_1 = require("@alanszp/typeorm");
14
+ const types_1 = require("../types");
15
+ const class_validator_1 = require("class-validator");
16
+ const typeorm_2 = require("typeorm");
17
+ class BaseIntegrationHistory extends typeorm_1.BaseEntityUuid {
18
+ }
19
+ __decorate([
20
+ (0, typeorm_2.Column)(),
21
+ (0, class_validator_1.IsString)(),
22
+ __metadata("design:type", String)
23
+ ], BaseIntegrationHistory.prototype, "integrationId", void 0);
24
+ __decorate([
25
+ (0, typeorm_2.Column)(),
26
+ (0, class_validator_1.IsString)(),
27
+ __metadata("design:type", String)
28
+ ], BaseIntegrationHistory.prototype, "organizationReference", void 0);
29
+ __decorate([
30
+ (0, typeorm_2.Column)({ type: "enum", enum: types_1.IntegrationStatus, nullable: false }),
31
+ (0, class_validator_1.IsEnum)(types_1.IntegrationStatus),
32
+ __metadata("design:type", String)
33
+ ], BaseIntegrationHistory.prototype, "status", void 0);
34
+ __decorate([
35
+ (0, typeorm_2.Column)({ type: "jsonb" }),
36
+ (0, class_validator_1.IsNotEmpty)(),
37
+ __metadata("design:type", Object)
38
+ ], BaseIntegrationHistory.prototype, "result", void 0);
39
+ __decorate([
40
+ (0, typeorm_2.CreateDateColumn)(),
41
+ (0, class_validator_1.IsDate)(),
42
+ __metadata("design:type", Date)
43
+ ], BaseIntegrationHistory.prototype, "executedAt", void 0);
44
+ __decorate([
45
+ (0, typeorm_2.Column)(),
46
+ (0, class_validator_1.IsString)(),
47
+ __metadata("design:type", String)
48
+ ], BaseIntegrationHistory.prototype, "executedBy", void 0);
49
+ exports.BaseIntegrationHistory = BaseIntegrationHistory;
50
+ //# sourceMappingURL=BaseIntegrationHistory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseIntegrationHistory.js","sourceRoot":"","sources":["../../src/models/BaseIntegrationHistory.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8CAAkD;AAClD,oCAAsE;AACtE,qDAAuE;AACvE,qCAAmD;AAEnD,MAAsB,sBAAuB,SAAQ,wBAAc;CAwBlE;AArBC;IAFC,IAAA,gBAAM,GAAE;IACR,IAAA,0BAAQ,GAAE;;6DACkB;AAI7B;IAFC,IAAA,gBAAM,GAAE;IACR,IAAA,0BAAQ,GAAE;;qEAC0B;AAIrC;IAFC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAiB,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAClE,IAAA,wBAAM,EAAC,yBAAiB,CAAC;;sDACO;AAIjC;IAFC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IACzB,IAAA,4BAAU,GAAE;;sDAC0B;AAIvC;IAFC,IAAA,0BAAgB,GAAE;IAClB,IAAA,wBAAM,GAAE;8BACU,IAAI;0DAAC;AAIxB;IAFC,IAAA,gBAAM,GAAE;IACR,IAAA,0BAAQ,GAAE;;0DACe;AAvB5B,wDAwBC"}
package/dist/types.d.ts CHANGED
@@ -5,7 +5,8 @@ export declare enum IntegrationStatus {
5
5
  export declare enum SyncError {
6
6
  MISSING_FIELDS = "missing",
7
7
  VALIDATION = "validation",
8
- VALIDATION_SERVER = "validation_server"
8
+ VALIDATION_SERVER = "validation_server",
9
+ CREATION_DISABLED = "creation_disabled"
9
10
  }
10
11
  export declare type IntegrationResultError = {
11
12
  type: SyncError;
package/dist/types.js CHANGED
@@ -11,5 +11,6 @@ var SyncError;
11
11
  SyncError["MISSING_FIELDS"] = "missing";
12
12
  SyncError["VALIDATION"] = "validation";
13
13
  SyncError["VALIDATION_SERVER"] = "validation_server";
14
+ SyncError["CREATION_DISABLED"] = "creation_disabled";
14
15
  })(SyncError = exports.SyncError || (exports.SyncError = {}));
15
16
  //# sourceMappingURL=types.js.map
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAAA,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAC3B,wCAAmB,CAAA;IACnB,oCAAe,CAAA;AACjB,CAAC,EAHW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAG5B;AAED,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,uCAA0B,CAAA;IAC1B,sCAAyB,CAAA;IACzB,oDAAuC,CAAA;AACzC,CAAC,EAJW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAIpB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAAA,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAC3B,wCAAmB,CAAA;IACnB,oCAAe,CAAA;AACjB,CAAC,EAHW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAG5B;AAED,IAAY,SAKX;AALD,WAAY,SAAS;IACnB,uCAA0B,CAAA;IAC1B,sCAAyB,CAAA;IACzB,oDAAuC,CAAA;IACvC,oDAAuC,CAAA;AACzC,CAAC,EALW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAKpB"}
@@ -0,0 +1,4 @@
1
+ import { IntegrationExecutionResult } from "../IntegrationExecutionResult";
2
+ import { BaseIntegrationHistory } from "../models/BaseIntegrationHistory";
3
+ export declare function syncIntegrationHistoryView<IH extends BaseIntegrationHistory>(history: IH): Record<string, unknown>;
4
+ export declare function syncIntegrationResultsView(result: IntegrationExecutionResult): Record<string, unknown>;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.syncIntegrationResultsView = exports.syncIntegrationHistoryView = void 0;
4
+ function syncIntegrationHistoryView(history) {
5
+ return {
6
+ id: history.id,
7
+ status: history.status,
8
+ executedAt: history.executedAt,
9
+ executedBy: history.executedBy,
10
+ totals: history.result.totals,
11
+ details: history.result.details,
12
+ };
13
+ }
14
+ exports.syncIntegrationHistoryView = syncIntegrationHistoryView;
15
+ function syncIntegrationResultsView(result) {
16
+ const { totals, details } = result.getResults();
17
+ return {
18
+ totals,
19
+ details,
20
+ status: result.getStatus(),
21
+ context: result.getContext(),
22
+ };
23
+ }
24
+ exports.syncIntegrationResultsView = syncIntegrationResultsView;
25
+ //# sourceMappingURL=integrationView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"integrationView.js","sourceRoot":"","sources":["../../src/views/integrationView.ts"],"names":[],"mappings":";;;AAGA,SAAgB,0BAA0B,CACxC,OAAW;IAEX,OAAO;QACL,EAAE,EAAE,OAAO,CAAC,EAAE;QACd,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM;QAC7B,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO;KAChC,CAAC;AACJ,CAAC;AAXD,gEAWC;AAED,SAAgB,0BAA0B,CACxC,MAAkC;IAElC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAChD,OAAO;QACL,MAAM;QACN,OAAO;QACP,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE;QAC1B,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE;KAC7B,CAAC;AACJ,CAAC;AAVD,gEAUC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alanszp/integrations-common",
3
- "version": "7.8.4",
3
+ "version": "7.9.1",
4
4
  "description": "Common logic shared between integrations.",
5
5
  "main": "dist/index.js",
6
6
  "typings": "dist/index.d.ts",
@@ -28,7 +28,11 @@
28
28
  },
29
29
  "dependencies": {
30
30
  "@alanszp/errors": "^7.0.0",
31
- "lodash": "^4.17.21"
31
+ "@alanszp/logger": "^7.0.0",
32
+ "@alanszp/typeorm": "^7.0.0",
33
+ "class-validator": "^0.13.1",
34
+ "lodash": "^4.17.21",
35
+ "typeorm": "^0.2.34"
32
36
  },
33
- "gitHead": "05b1bdc19d6d3d2701c9ff40e2a2b929f5b600ff"
37
+ "gitHead": "4493dd790ffb7cc775401fe64aaac8165bdf03bc"
34
38
  }
package/src/index.ts CHANGED
@@ -1,2 +1,4 @@
1
1
  export * from "./IntegrationExecutionResult";
2
+ export * from "./models/BaseIntegrationHistory";
3
+ export * from "./views/integrationView";
2
4
  export * from "./types";
@@ -0,0 +1,30 @@
1
+ import { BaseEntityUuid } from "@alanszp/typeorm";
2
+ import { IntegrationResultStatus, IntegrationStatus } from "../types";
3
+ import { IsDate, IsEnum, IsNotEmpty, IsString } from "class-validator";
4
+ import { Column, CreateDateColumn } from "typeorm";
5
+
6
+ export abstract class BaseIntegrationHistory extends BaseEntityUuid {
7
+ @Column()
8
+ @IsString()
9
+ public integrationId: string;
10
+
11
+ @Column()
12
+ @IsString()
13
+ public organizationReference: string;
14
+
15
+ @Column({ type: "enum", enum: IntegrationStatus, nullable: false })
16
+ @IsEnum(IntegrationStatus)
17
+ public status: IntegrationStatus;
18
+
19
+ @Column({ type: "jsonb" })
20
+ @IsNotEmpty()
21
+ public result: IntegrationResultStatus;
22
+
23
+ @CreateDateColumn()
24
+ @IsDate()
25
+ public executedAt: Date;
26
+
27
+ @Column()
28
+ @IsString()
29
+ public executedBy: string;
30
+ }
package/src/types.ts CHANGED
@@ -7,6 +7,7 @@ export enum SyncError {
7
7
  MISSING_FIELDS = "missing",
8
8
  VALIDATION = "validation",
9
9
  VALIDATION_SERVER = "validation_server",
10
+ CREATION_DISABLED = "creation_disabled",
10
11
  }
11
12
 
12
13
  export type IntegrationResultError = {
@@ -0,0 +1,27 @@
1
+ import { IntegrationExecutionResult } from "../IntegrationExecutionResult";
2
+ import { BaseIntegrationHistory } from "../models/BaseIntegrationHistory";
3
+
4
+ export function syncIntegrationHistoryView<IH extends BaseIntegrationHistory>(
5
+ history: IH
6
+ ): Record<string, unknown> {
7
+ return {
8
+ id: history.id,
9
+ status: history.status,
10
+ executedAt: history.executedAt,
11
+ executedBy: history.executedBy,
12
+ totals: history.result.totals,
13
+ details: history.result.details,
14
+ };
15
+ }
16
+
17
+ export function syncIntegrationResultsView(
18
+ result: IntegrationExecutionResult
19
+ ): Record<string, unknown> {
20
+ const { totals, details } = result.getResults();
21
+ return {
22
+ totals,
23
+ details,
24
+ status: result.getStatus(),
25
+ context: result.getContext(),
26
+ };
27
+ }
package/tsconfig.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "esModuleInterop": true,
9
9
  "sourceMap": true,
10
10
  "experimentalDecorators": true,
11
-
11
+ "emitDecoratorMetadata": true,
12
12
  "alwaysStrict": true,
13
13
  "strictNullChecks": true
14
14
  },