@hestia-earth/pipeline-utils 0.14.10 → 0.14.12

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,17 +1,28 @@
1
1
  import { FileProgress } from '@hestia-earth/api';
2
+ import { NodeType } from '@hestia-earth/schema';
2
3
  import { IFunctionParam } from './s3';
4
+ export interface IFileProgress {
5
+ step: FileProgress;
6
+ success: boolean;
7
+ time: {
8
+ [step in FileProgress]?: number;
9
+ };
10
+ nodesCount?: Record<NodeType, number>;
11
+ details?: any;
12
+ error?: any;
13
+ }
3
14
  export declare enum publishFunctionSuffix {
4
15
  Success = "Done",
5
16
  Error = "Error"
6
17
  }
7
18
  export declare const timeSpent: (since: Date) => number;
8
19
  export declare class HestiaError extends Error {
9
- message: any;
20
+ message: string;
10
21
  key: string;
11
22
  errors: any;
12
- constructor(message: any, key: string, errors?: any);
23
+ constructor(message: string, key: string, errors?: any);
13
24
  toString(): {
14
- message: any;
25
+ message: string;
15
26
  errors: any;
16
27
  stack: string;
17
28
  };
package/dist/progress.js CHANGED
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.defaultErrorHandler = exports.handleSuccess = exports.handleError = exports.HestiaError = exports.timeSpent = exports.publishFunctionSuffix = void 0;
4
4
  const operators_1 = require("rxjs/operators");
5
5
  const rxjs_1 = require("rxjs");
6
+ const api_1 = require("@hestia-earth/api");
6
7
  const s3_1 = require("./s3");
7
8
  const sns_1 = require("./sns");
8
9
  var publishFunctionSuffix;
@@ -28,8 +29,7 @@ class HestiaError extends Error {
28
29
  }
29
30
  }
30
31
  exports.HestiaError = HestiaError;
31
- const fileToProgress = (path) => `${path.split('.')[0]}.progress`;
32
- const uploadProgress = (step, path, Bucket, since, err, details) => (0, rxjs_1.of)(fileToProgress(path)).pipe((0, operators_1.mergeMap)(filepath => (0, s3_1.loadJSONFile)(filepath, Bucket).pipe((0, operators_1.catchError)(() => (0, rxjs_1.of)({})), (0, operators_1.mergeMap)(data => (0, s3_1.uploadJSON)(filepath, {
32
+ const uploadProgress = (step, path, Bucket, since, err, details) => (0, rxjs_1.of)((0, api_1.fileToExt)(path, api_1.HestiaExtensions.progress)).pipe((0, operators_1.mergeMap)(filepath => (0, s3_1.loadJSONFile)(filepath, Bucket).pipe((0, operators_1.catchError)(() => (0, rxjs_1.of)({})), (0, operators_1.mergeMap)(data => (0, s3_1.uploadJSON)(filepath, {
33
33
  step,
34
34
  success: !err,
35
35
  time: {
@@ -1 +1 @@
1
- {"version":3,"file":"progress.js","sourceRoot":"","sources":["../src/progress.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"progress.js","sourceRoot":"","sources":["../src/progress.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hestia-earth/pipeline-utils",
3
- "version": "0.14.10",
3
+ "version": "0.14.12",
4
4
  "description": "Utilities for running pipelines",
5
5
  "main": "dist/index.js",
6
6
  "typings": "dist/index.d.ts",
package/src/progress.ts CHANGED
@@ -1,16 +1,18 @@
1
1
  import { catchError, mergeMap } from 'rxjs/operators';
2
2
  import { of, throwError } from 'rxjs';
3
- import { FileProgress } from '@hestia-earth/api';
3
+ import { FileProgress, fileToExt, HestiaExtensions } from '@hestia-earth/api';
4
+ import { NodeType } from '@hestia-earth/schema';
4
5
 
5
6
  import { IFunctionParam, uploadJSON, bucket, loadJSONFile } from './s3';
6
7
  import { publishSnsMessage } from './sns';
7
8
 
8
- interface IFileProgress {
9
+ export interface IFileProgress {
9
10
  step: FileProgress;
10
11
  success: boolean;
11
12
  time: {
12
13
  [step in FileProgress]?: number;
13
14
  };
15
+ nodesCount?: Record<NodeType, number>;
14
16
  details?: any;
15
17
  error?: any;
16
18
  }
@@ -30,7 +32,7 @@ export class HestiaError extends Error {
30
32
  * @param errors The errors
31
33
  */
32
34
  constructor(
33
- public message,
35
+ public message: string,
34
36
  public key: string,
35
37
  public errors: any = ''
36
38
  ) {
@@ -46,10 +48,8 @@ export class HestiaError extends Error {
46
48
  }
47
49
  }
48
50
 
49
- const fileToProgress = (path: string) => `${path.split('.')[0]}.progress`;
50
-
51
51
  const uploadProgress = (step: string, path: string, Bucket: string, since?: Date, err?: HestiaError, details?: any) =>
52
- of(fileToProgress(path)).pipe(
52
+ of(fileToExt(path, HestiaExtensions.progress)).pipe(
53
53
  mergeMap(filepath =>
54
54
  loadJSONFile<Partial<IFileProgress>>(filepath, Bucket).pipe(
55
55
  catchError(() => of({} as Partial<IFileProgress>)),