@privateaim/core-kit 0.8.13 → 0.8.15

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 (40) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/dist/domains/analysis-log/entity.d.ts +2 -37
  3. package/dist/domains/analysis-log/entity.d.ts.map +1 -1
  4. package/dist/domains/analysis-node/entity.d.ts +0 -1
  5. package/dist/domains/analysis-node/entity.d.ts.map +1 -1
  6. package/dist/domains/analysis-node-event/entity.d.ts +18 -0
  7. package/dist/domains/analysis-node-event/entity.d.ts.map +1 -0
  8. package/dist/domains/analysis-node-event/index.d.ts.map +1 -0
  9. package/dist/domains/analysis-node-log/entity.d.ts +4 -16
  10. package/dist/domains/analysis-node-log/entity.d.ts.map +1 -1
  11. package/dist/domains/constants.d.ts +2 -1
  12. package/dist/domains/constants.d.ts.map +1 -1
  13. package/dist/domains/event/entity.d.ts +51 -0
  14. package/dist/domains/event/entity.d.ts.map +1 -0
  15. package/dist/domains/event/index.d.ts +2 -0
  16. package/dist/domains/event/index.d.ts.map +1 -0
  17. package/dist/domains/index.d.ts +2 -1
  18. package/dist/domains/index.d.ts.map +1 -1
  19. package/dist/domains/types.d.ts +4 -2
  20. package/dist/domains/types.d.ts.map +1 -1
  21. package/dist/index.cjs +2 -1
  22. package/dist/index.cjs.map +1 -1
  23. package/dist/index.mjs +2 -1
  24. package/dist/index.mjs.map +1 -1
  25. package/package.json +5 -5
  26. package/src/domains/analysis-log/entity.ts +2 -52
  27. package/src/domains/analysis-node/entity.ts +0 -2
  28. package/src/domains/analysis-node-event/entity.ts +39 -0
  29. package/src/domains/{master-image-event-log → analysis-node-event}/index.ts +1 -0
  30. package/src/domains/analysis-node-log/entity.ts +4 -29
  31. package/src/domains/constants.ts +2 -1
  32. package/src/domains/event/entity.ts +77 -0
  33. package/src/domains/event/index.ts +8 -0
  34. package/src/domains/index.ts +2 -1
  35. package/src/domains/types.ts +4 -2
  36. package/dist/domains/master-image-event-log/entity.d.ts +0 -13
  37. package/dist/domains/master-image-event-log/entity.d.ts.map +0 -1
  38. package/dist/domains/master-image-event-log/index.d.ts.map +0 -1
  39. package/src/domains/master-image-event-log/entity.ts +0 -34
  40. /package/dist/domains/{master-image-event-log → analysis-node-event}/index.d.ts +0 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,40 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.8.15](https://github.com/PrivateAIM/hub/compare/v0.8.14...v0.8.15) (2025-07-30)
4
+
5
+
6
+ ### Features
7
+
8
+ * align analysis-logs & initital log render view ([5fd2365](https://github.com/PrivateAIM/hub/commit/5fd236552dd8489d7ab00bf6f59751824ce554fd))
9
+ * event (re-) modelling ([#1125](https://github.com/PrivateAIM/hub/issues/1125)) ([621f704](https://github.com/PrivateAIM/hub/commit/621f7041794d0bf6d530445a9c3e7c9b66a373ba))
10
+ * migrated to authup v1.0.0-beta.27 ([f96db78](https://github.com/PrivateAIM/hub/commit/f96db782a5b74e3aa8ab1ada270af770f3c92631))
11
+
12
+
13
+ ### Dependencies
14
+
15
+ * The following workspace dependencies were updated
16
+ * devDependencies
17
+ * @privateaim/kit bumped from ^0.8.14 to ^0.8.15
18
+ * peerDependencies
19
+ * @privateaim/kit bumped from ^0.8.14 to ^0.8.15
20
+
21
+ ## [0.8.14](https://github.com/PrivateAIM/hub/compare/v0.8.13...v0.8.14) (2025-07-10)
22
+
23
+
24
+ ### Features
25
+
26
+ * analysis-node-event entity, subscriber & client ([#1096](https://github.com/PrivateAIM/hub/issues/1096)) ([6351376](https://github.com/PrivateAIM/hub/commit/635137696684b181962055dff5afa66b80567e26))
27
+ * remodel analysis-node-logs ([#1092](https://github.com/PrivateAIM/hub/issues/1092)) ([4fc553d](https://github.com/PrivateAIM/hub/commit/4fc553d62fa7496b464b39d78a3942e492046eac))
28
+
29
+
30
+ ### Dependencies
31
+
32
+ * The following workspace dependencies were updated
33
+ * devDependencies
34
+ * @privateaim/kit bumped from ^0.8.13 to ^0.8.14
35
+ * peerDependencies
36
+ * @privateaim/kit bumped from ^0.8.13 to ^0.8.14
37
+
3
38
  ## [0.8.13](https://github.com/PrivateAIM/hub/compare/v0.8.12...v0.8.13) (2025-05-05)
4
39
 
5
40
 
@@ -1,43 +1,8 @@
1
1
  import type { Realm } from '@authup/core-kit';
2
+ import type { Log } from '@privateaim/kit';
2
3
  import type { Analysis } from '../analysis';
3
- export interface AnalysisLog {
4
- id: string;
5
- /**
6
- * e.g: building, routing, ...
7
- */
8
- component: string | null;
9
- /**
10
- * e.g: process, check, stop, ...
11
- */
12
- command: string | null;
13
- /**
14
- * e.g checking, checked
15
- */
16
- event: string | null;
17
- /**
18
- * is it an error log?
19
- */
20
- error: boolean;
21
- /**
22
- * e.g: trainNotBuild, entrypointNotFound, ...
23
- */
24
- error_code: string | null;
25
- /**
26
- * e.g. started, finished, failed, ...
27
- */
28
- status: string | null;
29
- /**
30
- * e.g: error_message
31
- */
32
- status_message: string | null;
33
- /**
34
- * e.g: {station_id: xxx, station_index: 0}
35
- */
36
- meta: string | null;
37
- created_at: Date;
38
- updated_at: Date;
4
+ export interface AnalysisLog extends Log {
39
5
  analysis_id: Analysis['id'];
40
- analysis: Analysis;
41
6
  realm_id: Realm['id'];
42
7
  }
43
8
  //# sourceMappingURL=entity.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/domains/analysis-log/entity.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EACR,QAAQ,EACX,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,WAAW;IACxB,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAEzB;;OAEG;IACH,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAEvB;;OAEG;IACH,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAErB;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B;;OAEG;IACH,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtB;;OAEG;IACH,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAE9B;;OAEG;IACH,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAIpB,UAAU,EAAE,IAAI,CAAC;IAEjB,UAAU,EAAE,IAAI,CAAC;IAIjB,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE5B,QAAQ,EAAE,QAAQ,CAAC;IAEnB,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;CACzB"}
1
+ {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/domains/analysis-log/entity.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EACR,QAAQ,EACX,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,WAAY,SAAQ,GAAG;IAEpC,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE5B,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;CACzB"}
@@ -7,7 +7,6 @@ export interface AnalysisNode {
7
7
  approval_status: AnalysisNodeApprovalStatus | null;
8
8
  run_status: AnalysisNodeRunStatus | null;
9
9
  comment: string;
10
- index: number;
11
10
  artifact_tag: string | null;
12
11
  artifact_digest: string | null;
13
12
  created_at: Date;
@@ -1 +1 @@
1
- {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/domains/analysis-node/entity.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,0BAA0B,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAErF,MAAM,WAAW,YAAY;IACzB,EAAE,EAAE,MAAM,CAAC;IAIX,eAAe,EAAE,0BAA0B,GAAG,IAAI,CAAC;IAInD,UAAU,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAIzC,OAAO,EAAE,MAAM,CAAC;IAEhB,KAAK,EAAE,MAAM,CAAC;IAId,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAI/B,UAAU,EAAE,IAAI,CAAC;IAEjB,UAAU,EAAE,IAAI,CAAC;IAIjB,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE5B,QAAQ,EAAE,QAAQ,CAAC;IAEnB,iBAAiB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAE/B,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAEpB,IAAI,EAAE,IAAI,CAAC;IAEX,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;CAC9B"}
1
+ {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/domains/analysis-node/entity.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,0BAA0B,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAErF,MAAM,WAAW,YAAY;IACzB,EAAE,EAAE,MAAM,CAAC;IAIX,eAAe,EAAE,0BAA0B,GAAG,IAAI,CAAC;IAInD,UAAU,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAIzC,OAAO,EAAE,MAAM,CAAC;IAIhB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAI/B,UAAU,EAAE,IAAI,CAAC;IAEjB,UAAU,EAAE,IAAI,CAAC;IAIjB,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE5B,QAAQ,EAAE,QAAQ,CAAC;IAEnB,iBAAiB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAE/B,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAEpB,IAAI,EAAE,IAAI,CAAC;IAEX,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;CAC9B"}
@@ -0,0 +1,18 @@
1
+ import type { Realm } from '@authup/core-kit';
2
+ import type { Event } from '../event';
3
+ import type { Node } from '../node';
4
+ import type { Analysis } from '../analysis';
5
+ export interface AnalysisNodeEvent {
6
+ id: string;
7
+ created_at: Date;
8
+ updated_at: Date;
9
+ event_id: Event['id'];
10
+ event: Event;
11
+ analysis_id: Analysis['id'];
12
+ analysis: Analysis;
13
+ analysis_realm_id: Realm['id'];
14
+ node_id: Node['id'];
15
+ node: Node;
16
+ node_realm_id: Realm['id'];
17
+ }
18
+ //# sourceMappingURL=entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/domains/analysis-node-event/entity.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,WAAW,iBAAiB;IAC9B,EAAE,EAAE,MAAM,CAAC;IAIX,UAAU,EAAE,IAAI,CAAC;IAEjB,UAAU,EAAE,IAAI,CAAC;IAIjB,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAEtB,KAAK,EAAE,KAAK,CAAC;IAEb,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE5B,QAAQ,EAAE,QAAQ,CAAC;IAEnB,iBAAiB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAE/B,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAEpB,IAAI,EAAE,IAAI,CAAC;IAEX,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;CAC9B"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domains/analysis-node-event/index.ts"],"names":[],"mappings":"AAOA,cAAc,UAAU,CAAC"}
@@ -1,31 +1,19 @@
1
1
  import type { Realm } from '@authup/core-kit';
2
+ import type { Log } from '@privateaim/kit';
2
3
  import type { Analysis } from '../analysis';
3
4
  import type { Node } from '../node';
4
- export interface AnalysisNodeLog {
5
- id: string;
5
+ export interface AnalysisNodeLog extends Log {
6
6
  /**
7
- * is it an error log?
7
+ * e.g: entrypointNotFound, ...
8
8
  */
9
- error: boolean;
10
- /**
11
- * e.g: trainNotBuild, entrypointNotFound, ...
12
- */
13
- error_code: string | null;
9
+ code: string | null;
14
10
  /**
15
11
  * e.g. started, finished, failed, ...
16
12
  */
17
13
  status: string | null;
18
- /**
19
- * e.g: error_message
20
- */
21
- status_message: string | null;
22
- created_at: Date;
23
- updated_at: Date;
24
14
  analysis_realm_id: Realm['id'];
25
15
  analysis_id: Analysis['id'];
26
- analysis: Analysis;
27
16
  node_id: Node['id'];
28
17
  node_realm_id: Realm['id'];
29
- node: Node;
30
18
  }
31
19
  //# sourceMappingURL=entity.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/domains/analysis-node-log/entity.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EACR,QAAQ,EACX,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAEpC,MAAM,WAAW,eAAe;IAC5B,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B;;OAEG;IACH,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtB;;OAEG;IACH,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAI9B,UAAU,EAAE,IAAI,CAAC;IAEjB,UAAU,EAAE,IAAI,CAAC;IAIjB,iBAAiB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAE/B,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE5B,QAAQ,EAAE,QAAQ,CAAC;IAInB,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAEpB,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAE3B,IAAI,EAAE,IAAI,CAAC;CACd"}
1
+ {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/domains/analysis-node-log/entity.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EACR,QAAQ,EACX,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAEpC,MAAM,WAAW,eAAgB,SAAQ,GAAG;IACxC;;OAEG;IACH,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAEpB;;OAEG;IACH,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtB,iBAAiB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAE/B,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE5B,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAEpB,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;CAC9B"}
@@ -1,6 +1,6 @@
1
1
  export declare enum DomainType {
2
2
  MASTER_IMAGE = "masterImage",
3
- MASTER_IMAGE_EVENT_LOG = "masterImageEventLog",
3
+ EVENT = "event",
4
4
  MASTER_IMAGE_GROUP = "masterImageGroup",
5
5
  PROJECT = "project",
6
6
  PROJECT_NODE = "projectNode",
@@ -12,6 +12,7 @@ export declare enum DomainType {
12
12
  ANALYSIS_BUCKET_FILE = "analysisBucketFile",
13
13
  ANALYSIS_LOG = "analysisLog",
14
14
  ANALYSIS_NODE = "analysisNode",
15
+ ANALYSIS_NODE_EVENT = "analysisNodeEvent",
15
16
  ANALYSIS_NODE_LOG = "analysisNodeLog",
16
17
  ANALYSIS_PERMISSION = "analysisPermission"
17
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/domains/constants.ts"],"names":[],"mappings":"AAOA,oBAAY,UAAU;IAClB,YAAY,gBAAgB;IAC5B,sBAAsB,wBAAwB;IAC9C,kBAAkB,qBAAqB;IACvC,OAAO,YAAY;IACnB,YAAY,gBAAgB;IAC5B,QAAQ,aAAa;IACrB,gBAAgB,oBAAoB;IACpC,IAAI,SAAS;IACb,QAAQ,aAAa;IACrB,eAAe,mBAAmB;IAClC,oBAAoB,uBAAuB;IAC3C,YAAY,gBAAgB;IAC5B,aAAa,iBAAiB;IAC9B,iBAAiB,oBAAoB;IACrC,mBAAmB,uBAAuB;CAC7C;AAED,oBAAY,aAAa;IACrB,eAAe,kBAAkB;IACjC,gBAAgB,mBAAmB;IACnC,gBAAgB,mBAAmB;IACnC,iBAAiB,oBAAoB;CACxC;AAED,oBAAY,eAAe;IACvB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,OAAO,YAAY;CACtB;AAED,oBAAY,2BAA2B;IACnC,SAAS,cAAc;IACvB,WAAW,gBAAgB;CAC9B"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/domains/constants.ts"],"names":[],"mappings":"AAOA,oBAAY,UAAU;IAClB,YAAY,gBAAgB;IAC5B,KAAK,UAAU;IACf,kBAAkB,qBAAqB;IACvC,OAAO,YAAY;IACnB,YAAY,gBAAgB;IAC5B,QAAQ,aAAa;IACrB,gBAAgB,oBAAoB;IACpC,IAAI,SAAS;IACb,QAAQ,aAAa;IACrB,eAAe,mBAAmB;IAClC,oBAAoB,uBAAuB;IAC3C,YAAY,gBAAgB;IAC5B,aAAa,iBAAiB;IAC9B,mBAAmB,sBAAsB;IACzC,iBAAiB,oBAAoB;IACrC,mBAAmB,uBAAuB;CAC7C;AAED,oBAAY,aAAa;IACrB,eAAe,kBAAkB;IACjC,gBAAgB,mBAAmB;IACnC,gBAAgB,mBAAmB;IACnC,iBAAiB,oBAAoB;CACxC;AAED,oBAAY,eAAe;IACvB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,OAAO,YAAY;CACtB;AAED,oBAAY,2BAA2B;IACnC,SAAS,cAAc;IACvB,WAAW,gBAAgB;CAC9B"}
@@ -0,0 +1,51 @@
1
+ import type { ObjectDiff } from '@privateaim/kit';
2
+ export type EventDataRequest = {
3
+ path: string;
4
+ method: string;
5
+ trace: string;
6
+ user_agent: string;
7
+ };
8
+ export type EventData = {
9
+ diff?: ObjectDiff;
10
+ request?: EventDataRequest;
11
+ };
12
+ export interface Event {
13
+ id: string;
14
+ /**
15
+ * domaine
16
+ *
17
+ * eg. analysis, node, analysisNode, ....
18
+ */
19
+ ref_type: string;
20
+ /**
21
+ * eg. uuid
22
+ */
23
+ ref_id: string | null;
24
+ /**
25
+ * component, prozess,
26
+ *
27
+ * eg. build, push, modelChanges, ...
28
+ */
29
+ scope: string;
30
+ /**
31
+ * eg. started, starting, finished, ...
32
+ */
33
+ name: string;
34
+ /**
35
+ *
36
+ * { description: { new_value: "xxx", prev_value: "yyy" }, name {}}
37
+ */
38
+ data: Record<string, any>;
39
+ /**
40
+ * default: false
41
+ */
42
+ expiring: boolean;
43
+ actor_type: string | null;
44
+ actor_id: string | null;
45
+ actor_name: string | null;
46
+ actor_ip_address: string | null;
47
+ expires_at: string | null;
48
+ created_at: string;
49
+ updated_at: string;
50
+ }
51
+ //# sourceMappingURL=entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/domains/event/entity.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,MAAM,gBAAgB,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACpB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,OAAO,CAAC,EAAE,gBAAgB,CAAA;CAC7B,CAAC;AAEF,MAAM,WAAW,KAAK;IAClB,EAAE,EAAE,MAAM,CAAC;IAEX;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtB;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE1B;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC;IAIlB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAExB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAIhC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B,UAAU,EAAE,MAAM,CAAC;IAEnB,UAAU,EAAE,MAAM,CAAC;CACtB"}
@@ -0,0 +1,2 @@
1
+ export * from './entity';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domains/event/index.ts"],"names":[],"mappings":"AAOA,cAAc,UAAU,CAAC"}
@@ -3,12 +3,13 @@ export * from './analysis-bucket';
3
3
  export * from './analysis-bucket-file';
4
4
  export * from './analysis-log';
5
5
  export * from './analysis-node';
6
+ export * from './analysis-node-event';
6
7
  export * from './analysis-node-log';
7
8
  export * from './analysis-permission';
9
+ export * from './event';
8
10
  export * from './realm';
9
11
  export * from './master-image-group';
10
12
  export * from './master-image';
11
- export * from './master-image-event-log';
12
13
  export * from './project';
13
14
  export * from './project-node';
14
15
  export * from './registry';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/domains/index.ts"],"names":[],"mappings":"AAOA,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,SAAS,CAAC;AACxB,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,0BAA0B,CAAC;AACzC,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/domains/index.ts"],"names":[],"mappings":"AAOA,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC"}
@@ -1,8 +1,9 @@
1
1
  import type { AnalysisBucket } from './analysis-bucket';
2
+ import type { AnalysisNodeEvent } from './analysis-node-event';
2
3
  import type { AnalysisNodeLog } from './analysis-node-log';
3
4
  import type { DomainSubType, DomainType } from './constants';
4
5
  import type { MasterImage } from './master-image';
5
- import type { MasterImageEventLog } from './master-image-event-log';
6
+ import type { Event } from './event';
6
7
  import type { MasterImageGroup } from './master-image-group';
7
8
  import type { Project } from './project';
8
9
  import type { ProjectNode } from './project-node';
@@ -16,7 +17,7 @@ import type { AnalysisNode } from './analysis-node';
16
17
  import type { AnalysisPermission } from './analysis-permission';
17
18
  type DomainTypeMapRaw = {
18
19
  [DomainType.MASTER_IMAGE]: MasterImage;
19
- [DomainType.MASTER_IMAGE_EVENT_LOG]: MasterImageEventLog;
20
+ [DomainType.EVENT]: Event;
20
21
  [DomainType.MASTER_IMAGE_GROUP]: MasterImageGroup;
21
22
  [DomainType.PROJECT]: Project;
22
23
  [DomainType.PROJECT_NODE]: ProjectNode;
@@ -30,6 +31,7 @@ type DomainTypeMapRaw = {
30
31
  [DomainType.ANALYSIS_BUCKET_FILE]: AnalysisBucketFile;
31
32
  [DomainType.ANALYSIS_LOG]: AnalysisLog;
32
33
  [DomainType.ANALYSIS_NODE]: AnalysisNode;
34
+ [DomainType.ANALYSIS_NODE_EVENT]: AnalysisNodeEvent;
33
35
  [DomainType.ANALYSIS_NODE_LOG]: AnalysisNodeLog;
34
36
  [DomainType.ANALYSIS_PERMISSION]: AnalysisPermission;
35
37
  [DomainSubType.ANALYSIS_NODE_IN]: AnalysisNode;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/domains/types.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,KAAK,gBAAgB,GAAG;IACpB,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,WAAW,CAAC;IACvC,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,mBAAmB,CAAC;IACzD,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,gBAAgB,CAAC;IAClD,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC9B,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,WAAW,CAAC;IACvC,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,WAAW,CAAC;IAC7C,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAAE,WAAW,CAAC;IAC9C,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAChC,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,eAAe,CAAA;IAC9C,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;IACxB,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAChC,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,cAAc,CAAC;IAC7C,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,kBAAkB,CAAC;IACtD,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,WAAW,CAAC;IACvC,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC;IACzC,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,eAAe,CAAC;IAChD,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,kBAAkB,CAAC;IACrD,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAAE,YAAY,CAAC;IAC/C,CAAC,aAAa,CAAC,iBAAiB,CAAC,EAAE,YAAY,CAAC;CACnD,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;KACvB,CAAC,IAAI,MAAM,gBAAgB,IAAI,GAAG,CAAC,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAC;CAC/D,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/domains/types.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,KAAK,gBAAgB,GAAG;IACpB,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,WAAW,CAAC;IACvC,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;IAC1B,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,gBAAgB,CAAC;IAClD,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC9B,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,WAAW,CAAC;IACvC,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,WAAW,CAAC;IAC7C,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAAE,WAAW,CAAC;IAC9C,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAChC,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,eAAe,CAAA;IAC9C,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;IACxB,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAChC,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,cAAc,CAAC;IAC7C,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,kBAAkB,CAAC;IACtD,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,WAAW,CAAC;IACvC,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC;IACzC,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,iBAAiB,CAAC;IACpD,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,eAAe,CAAC;IAChD,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,kBAAkB,CAAC;IACrD,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAAE,YAAY,CAAC;IAC/C,CAAC,aAAa,CAAC,iBAAiB,CAAC,EAAE,YAAY,CAAC;CACnD,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;KACvB,CAAC,IAAI,MAAM,gBAAgB,IAAI,GAAG,CAAC,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAC;CAC/D,CAAC"}
package/dist/index.cjs CHANGED
@@ -448,7 +448,7 @@ var NodeSocketServerEventName = /*#__PURE__*/ function(NodeSocketServerEventName
448
448
  * view the LICENSE file that was distributed with this source code.
449
449
  */ var DomainType = /*#__PURE__*/ function(DomainType) {
450
450
  DomainType["MASTER_IMAGE"] = "masterImage";
451
- DomainType["MASTER_IMAGE_EVENT_LOG"] = "masterImageEventLog";
451
+ DomainType["EVENT"] = "event";
452
452
  DomainType["MASTER_IMAGE_GROUP"] = "masterImageGroup";
453
453
  DomainType["PROJECT"] = "project";
454
454
  DomainType["PROJECT_NODE"] = "projectNode";
@@ -460,6 +460,7 @@ var NodeSocketServerEventName = /*#__PURE__*/ function(NodeSocketServerEventName
460
460
  DomainType["ANALYSIS_BUCKET_FILE"] = "analysisBucketFile";
461
461
  DomainType["ANALYSIS_LOG"] = "analysisLog";
462
462
  DomainType["ANALYSIS_NODE"] = "analysisNode";
463
+ DomainType["ANALYSIS_NODE_EVENT"] = "analysisNodeEvent";
463
464
  DomainType["ANALYSIS_NODE_LOG"] = "analysisNodeLog";
464
465
  DomainType["ANALYSIS_PERMISSION"] = "analysisPermission";
465
466
  return DomainType;
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../src/error/constants.ts","../src/error/entities/connection-string.ts","../src/domains/analysis/constants.ts","../src/domains/analysis/helpers.ts","../src/domains/analysis-bucket/constants.ts","../src/domains/analysis-bucket/utils.ts","../src/domains/analysis-node/constants.ts","../src/domains/realm/socket.ts","../src/domains/master-image/constants.ts","../src/domains/project-node/constants.ts","../src/domains/registry/constants.ts","../src/domains/registry/utils.ts","../src/domains/registry-project/constants.ts","../src/domains/registry-project/socket.ts","../src/domains/registry-project/utils.ts","../src/domains/node/constants.ts","../src/domains/service/registry/constants.ts","../src/domains/service/secret-engine/constants.ts","../src/domains/service/constants.ts","../src/domains/service/station-registry/constants.ts","../src/domains/constants.ts","../src/domains/utils.ts","../src/constants.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum ErrorCode {\n LICENSE_AGREEMENT = 'license_agreement',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport class APIConnectionStringError extends Error {\n static connectionStringMissing(serviceName?: string) {\n const parts : string[] = ['The'];\n if (typeof serviceName === 'string') {\n parts.push(serviceName);\n }\n parts.push('connection string is not specified.');\n return new this(parts.join(' '));\n }\n\n static connectionStringInvalid(serviceName?: string) {\n const parts : string[] = ['The'];\n if (typeof serviceName === 'string') {\n parts.push(serviceName);\n }\n parts.push('connection string is not valid.');\n return new this(parts.join(' '));\n }\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum AnalysisBuildStatus {\n STARTING = 'starting', // ui trigger\n STARTED = 'started', // tb trigger\n\n STOPPING = 'stopping', // ui trigger\n STOPPED = 'stopped', // tb trigger\n\n FINISHED = 'finished', // tb trigger\n FAILED = 'failed', // tb trigger\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisConfigurationStatus {\n NODES = 'nodes',\n MASTER_IMAGE = 'masterImage',\n FILES = 'files',\n FINISHED = 'finished',\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisRunStatus {\n STARTING = 'starting',\n STARTED = 'started',\n\n RUNNING = 'running',\n\n STOPPING = 'stopping',\n STOPPED = 'stopped',\n\n FINISHED = 'finished',\n FAILED = 'failed',\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisResultStatus {\n STARTED = 'started',\n\n DOWNLOADING = 'downloading',\n DOWNLOADED = 'downloaded',\n\n PROCESSING = 'extracting',\n PROCESSED = 'extracted',\n\n FINISHED = 'finished',\n FAILED = 'failed',\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisAPICommand {\n SPIN_UP = 'spinUp',\n TEAR_DOWN = 'tearDown',\n\n BUILD_START = 'buildStart',\n BUILD_STOP = 'buildStop',\n BUILD_STATUS = 'buildStatus',\n\n CONFIGURATION_LOCK = 'configurationLock',\n CONFIGURATION_UNLOCK = 'configurationUnlock',\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisContainerPath {\n CODE = '/opt/code/',\n}\n","/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { AnalysisAPICommand, AnalysisBuildStatus } from './constants';\nimport type { Analysis } from './entity';\n\ntype CanResult = {\n success: boolean,\n message: string,\n};\n\n/**\n * Check if an analysis can be build based on analysis attributes (build_status, configuration_locked, ...)\n *\n * @param entity\n * @param command\n */\nexport function isAnalysisAPICommandExecutable(\n entity: Analysis,\n command: `${AnalysisAPICommand}`,\n) : CanResult {\n const output : CanResult = {\n success: false,\n message: `The analysis command ${command} cannot be executed.`,\n };\n\n switch (command) {\n case AnalysisAPICommand.BUILD_START: {\n if (!entity.configuration_locked) {\n output.success = false;\n output.message = 'The analysis configuration must be locked before starting the build.';\n return output;\n }\n\n if (!entity.build_status) {\n output.success = true;\n return output;\n }\n\n if (\n entity.build_status === AnalysisBuildStatus.FAILED ||\n entity.build_status === AnalysisBuildStatus.STOPPED\n ) {\n output.success = true;\n return output;\n }\n\n output.message = `The current analysis build status \"${entity.build_status}\" does not allow a build start.`;\n return output;\n }\n case AnalysisAPICommand.BUILD_STOP: {\n if (!entity.configuration_locked) {\n output.message = 'The analysis configuration must be locked before stopping the build.';\n return output;\n }\n\n if (!entity.build_status) {\n output.message = 'The analysis build process has not been initialized.';\n return output;\n }\n\n if (entity.build_status === AnalysisBuildStatus.STOPPING ||\n entity.build_status === AnalysisBuildStatus.STARTED ||\n entity.build_status === AnalysisBuildStatus.STARTING\n ) {\n output.success = true;\n return output;\n }\n\n output.message = `The current analysis build status \"${entity.build_status}\" does not allow a build stop.`;\n return output;\n }\n case AnalysisAPICommand.BUILD_STATUS: {\n if (!entity.configuration_locked) {\n output.message = 'The analysis configuration must be locked before checking the build status.';\n return output;\n }\n\n if (!entity.build_status) {\n output.message = 'The analysis build process has not been initialized.';\n return output;\n }\n\n if (entity.build_status === AnalysisBuildStatus.FINISHED) {\n output.message = 'The analysis build process has already been successfully completed.';\n return output;\n }\n\n output.success = true;\n return output;\n }\n case AnalysisAPICommand.CONFIGURATION_LOCK: {\n if (entity.configuration_locked) {\n output.message = 'The analysis configuration is already locked.';\n return output;\n }\n\n if (entity.build_status) {\n output.message = 'The analysis build process has already been initialized.';\n return output;\n }\n\n // todo: unknown if one of them is an aggregator.\n if (entity.nodes < 2) {\n output.message = 'The analysis requires at least two nodes.';\n return output;\n }\n\n if (!entity.master_image_id) {\n output.message = 'A master image must be assigned to the analysis.';\n return output;\n }\n\n output.success = true;\n return output;\n }\n case AnalysisAPICommand.CONFIGURATION_UNLOCK: {\n if (!entity.configuration_locked) {\n output.message = 'The analysis configuration is already unlocked.';\n return output;\n }\n\n if (!entity.build_status) {\n output.success = true;\n return output;\n }\n\n if (\n entity.build_status === AnalysisBuildStatus.FAILED ||\n entity.build_status === AnalysisBuildStatus.STOPPED ||\n entity.build_status === AnalysisBuildStatus.STOPPING\n ) {\n output.success = true;\n return output;\n }\n\n output.message = `The current analysis build status \"${entity.build_status}\" does not allow unlocking the configuration.`;\n return output;\n }\n }\n\n return output;\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum AnalysisBucketType {\n CODE = 'CODE',\n RESULT = 'RESULT',\n TEMP = 'TEMP',\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { Analysis } from '../analysis';\nimport { AnalysisBucketType } from './constants';\n\nexport function buildAnalysisBucketName(\n type: `${AnalysisBucketType}`,\n id: Analysis['id'],\n) {\n switch (type) {\n case AnalysisBucketType.CODE: {\n return `analysis-code-files.${id}`;\n }\n case AnalysisBucketType.TEMP: {\n return `analysis-temp-files.${id}`;\n }\n case AnalysisBucketType.RESULT: {\n return `analysis-result-files.${id}`;\n }\n }\n\n throw new SyntaxError('The argument can only have any bucket type value.');\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum AnalysisNodeApprovalCommand {\n APPROVE = 'approve',\n REJECT = 'reject',\n}\n\nexport enum AnalysisNodeApprovalStatus {\n REJECTED = 'rejected',\n APPROVED = 'approved',\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisNodeRunStatus {\n STARTING = 'starting',\n STARTED = 'started',\n\n STOPPING = 'stopping',\n STOPPED = 'stopped',\n\n RUNNING = 'running',\n FINISHED = 'finished',\n\n FAILED = 'failed',\n}\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { Realm } from '@authup/core-kit';\n\nexport function buildSocketRealmNamespaceName(realmId: Realm['id']) {\n return `/resources#${realmId}`;\n}\n\nexport function parseSocketRealmNamespaceName(name: string) : string | undefined {\n return name.startsWith('/resources#') ?\n name.substring('/resources#'.length) :\n name;\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum MasterImageCommand {\n SYNC = 'sync',\n}\n\nexport enum MasterImageGroupType {\n LANGUAGE = 'language',\n DEFAULT = 'default',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum ProjectNodeApprovalCommand {\n APPROVE = 'approve',\n REJECT = 'reject',\n}\n\nexport enum ProjectNodeApprovalStatus {\n REJECTED = 'rejected',\n APPROVED = 'approved',\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport const registryRobotSecretRegex = /^(?=.*[A-Z])(?=.*[a-z])(?=.*\\d).{8,}$/;\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { Registry } from './entity';\n\nexport function buildRegistryClientConnectionStringFromRegistry(entity: Registry) {\n // todo: support other registries beside harbor and v2.0\n\n const url = `https://${entity.host}/api/v2.0/`;\n return `${entity.account_name}:${entity.account_secret}@${url}`;\n}\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum RegistryProjectType {\n DEFAULT = 'default',\n AGGREGATOR = 'aggregator',\n INCOMING = 'incoming',\n OUTGOING = 'outgoing',\n MASTER_IMAGES = 'masterImages',\n NODE = 'node',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { RegistryProject } from './entity';\n\nexport function buildSocketRegistryProjectRoomName(id?: RegistryProject['id']) {\n return `registry-projects${id ? `#${id}` : ''}`;\n}\n","/*\n * Copyright (c) 2023-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { createNanoID } from '@privateaim/kit';\n\nexport function generateRegistryProjectId() {\n return createNanoID('0123456789abcdefghijklmnopqrstuvwxyz');\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum NodeType {\n AGGREGATOR = 'aggregator',\n DEFAULT = 'default',\n}\n\nexport enum NodeSocketClientEventName {\n CONNECT = 'nodeConnect',\n DISCONNECT = 'nodeDisconnect',\n MESSAGE = 'nodeMessage',\n}\n\nexport enum NodeSocketServerEventName {\n CONNECTED = 'nodeConnected',\n DISCONNECTED = 'nodeDisconnected',\n MESSAGE = 'nodeMessage',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum RegistryAPICommand {\n SETUP = 'setup',\n CLEANUP = 'cleanup',\n DELETE = 'delete',\n\n PROJECT_LINK = 'projectLink',\n PROJECT_UNLINK = 'projectUnlink',\n}\n\n/**\n * Incoming train project name\n */\nexport const REGISTRY_INCOMING_PROJECT_NAME = 'incoming';\n\n/**\n * Outgoing train project name\n */\nexport const REGISTRY_OUTGOING_PROJECT_NAME = 'outgoing';\n\n/**\n * Master Image project name\n */\nexport const REGISTRY_MASTER_IMAGE_PROJECT_NAME = 'master';\n\n/**\n * Latest image tag\n */\nexport const REGISTRY_ARTIFACT_TAG_LATEST = 'latest';\n\n/**\n * base image tag\n */\nexport const REGISTRY_ARTIFACT_TAG_BASE = 'base';\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum SecretStorageAPICommand {\n ENGINE_CREATE = 'engineCreate',\n\n ENGINE_KEY_SAVE = 'engineKeySave',\n ENGINE_KEY_PULL = 'engineKeyPull',\n ENGINE_KEY_DROP = 'engineKeyDrop',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum ServiceID {\n // Core Service(s)\n SYSTEM = 'system',\n\n // Third Party Service(s)\n REGISTRY = 'registry',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum StationRegistryAPICommand {\n SYNC = 'sync',\n}\n","/*\n * Copyright (c) 2023-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum DomainType {\n MASTER_IMAGE = 'masterImage',\n MASTER_IMAGE_EVENT_LOG = 'masterImageEventLog',\n MASTER_IMAGE_GROUP = 'masterImageGroup',\n PROJECT = 'project',\n PROJECT_NODE = 'projectNode',\n REGISTRY = 'registry',\n REGISTRY_PROJECT = 'registryProject',\n NODE = 'node',\n ANALYSIS = 'analysis',\n ANALYSIS_BUCKET = 'analysisBucket',\n ANALYSIS_BUCKET_FILE = 'analysisBucketFile',\n ANALYSIS_LOG = 'analysisLog',\n ANALYSIS_NODE = 'analysisNode',\n ANALYSIS_NODE_LOG = 'analysisNodeLog',\n ANALYSIS_PERMISSION = 'analysisPermission',\n}\n\nexport enum DomainSubType {\n PROJECT_NODE_IN = 'projectNodeIn',\n PROJECT_NODE_OUT = 'projectNodeOut',\n ANALYSIS_NODE_IN = 'analysisNodeIn',\n ANALYSIS_NODE_OUT = 'analysisNodeOut',\n}\n\nexport enum DomainEventName {\n CREATED = 'created',\n DELETED = 'deleted',\n UPDATED = 'updated',\n}\n\nexport enum DomainEventSubscriptionName {\n SUBSCRIBE = 'subscribe',\n UNSUBSCRIBE = 'unsubscribe',\n}\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\n// todo: rename to buildEntityChannelName\nexport function buildDomainChannelName(domain: string, id?: string | number) {\n if (typeof id === 'string' || typeof id === 'number') {\n return `${domain}:${id}`;\n }\n\n return domain;\n}\n\n// todo: rename to buildEntityNamespaceName\nexport function buildDomainNamespaceName(id?: string) {\n return id ?\n `/resources:${id}` :\n '/resources';\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum EnvironmentName {\n TEST = 'test',\n DEVELOPMENT = 'development',\n PRODUCTION = 'production',\n}\n"],"names":["ErrorCode","APIConnectionStringError","Error","connectionStringMissing","serviceName","parts","push","join","connectionStringInvalid","AnalysisBuildStatus","AnalysisConfigurationStatus","AnalysisRunStatus","AnalysisResultStatus","AnalysisAPICommand","AnalysisContainerPath","isAnalysisAPICommandExecutable","entity","command","output","success","message","BUILD_START","configuration_locked","build_status","FAILED","STOPPED","BUILD_STOP","STOPPING","STARTED","STARTING","BUILD_STATUS","FINISHED","CONFIGURATION_LOCK","nodes","master_image_id","CONFIGURATION_UNLOCK","AnalysisBucketType","buildAnalysisBucketName","type","id","CODE","TEMP","RESULT","SyntaxError","AnalysisNodeApprovalCommand","AnalysisNodeApprovalStatus","AnalysisNodeRunStatus","buildSocketRealmNamespaceName","realmId","parseSocketRealmNamespaceName","name","startsWith","substring","length","MasterImageCommand","MasterImageGroupType","ProjectNodeApprovalCommand","ProjectNodeApprovalStatus","registryRobotSecretRegex","buildRegistryClientConnectionStringFromRegistry","url","host","account_name","account_secret","RegistryProjectType","buildSocketRegistryProjectRoomName","generateRegistryProjectId","createNanoID","NodeType","NodeSocketClientEventName","NodeSocketServerEventName","RegistryAPICommand","REGISTRY_INCOMING_PROJECT_NAME","REGISTRY_OUTGOING_PROJECT_NAME","REGISTRY_MASTER_IMAGE_PROJECT_NAME","REGISTRY_ARTIFACT_TAG_LATEST","REGISTRY_ARTIFACT_TAG_BASE","SecretStorageAPICommand","ServiceID","StationRegistryAPICommand","DomainType","DomainSubType","DomainEventName","DomainEventSubscriptionName","buildDomainChannelName","domain","buildDomainNamespaceName","EnvironmentName"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../src/error/constants.ts","../src/error/entities/connection-string.ts","../src/domains/analysis/constants.ts","../src/domains/analysis/helpers.ts","../src/domains/analysis-bucket/constants.ts","../src/domains/analysis-bucket/utils.ts","../src/domains/analysis-node/constants.ts","../src/domains/realm/socket.ts","../src/domains/master-image/constants.ts","../src/domains/project-node/constants.ts","../src/domains/registry/constants.ts","../src/domains/registry/utils.ts","../src/domains/registry-project/constants.ts","../src/domains/registry-project/socket.ts","../src/domains/registry-project/utils.ts","../src/domains/node/constants.ts","../src/domains/service/registry/constants.ts","../src/domains/service/secret-engine/constants.ts","../src/domains/service/constants.ts","../src/domains/service/station-registry/constants.ts","../src/domains/constants.ts","../src/domains/utils.ts","../src/constants.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum ErrorCode {\n LICENSE_AGREEMENT = 'license_agreement',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport class APIConnectionStringError extends Error {\n static connectionStringMissing(serviceName?: string) {\n const parts : string[] = ['The'];\n if (typeof serviceName === 'string') {\n parts.push(serviceName);\n }\n parts.push('connection string is not specified.');\n return new this(parts.join(' '));\n }\n\n static connectionStringInvalid(serviceName?: string) {\n const parts : string[] = ['The'];\n if (typeof serviceName === 'string') {\n parts.push(serviceName);\n }\n parts.push('connection string is not valid.');\n return new this(parts.join(' '));\n }\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum AnalysisBuildStatus {\n STARTING = 'starting', // ui trigger\n STARTED = 'started', // tb trigger\n\n STOPPING = 'stopping', // ui trigger\n STOPPED = 'stopped', // tb trigger\n\n FINISHED = 'finished', // tb trigger\n FAILED = 'failed', // tb trigger\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisConfigurationStatus {\n NODES = 'nodes',\n MASTER_IMAGE = 'masterImage',\n FILES = 'files',\n FINISHED = 'finished',\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisRunStatus {\n STARTING = 'starting',\n STARTED = 'started',\n\n RUNNING = 'running',\n\n STOPPING = 'stopping',\n STOPPED = 'stopped',\n\n FINISHED = 'finished',\n FAILED = 'failed',\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisResultStatus {\n STARTED = 'started',\n\n DOWNLOADING = 'downloading',\n DOWNLOADED = 'downloaded',\n\n PROCESSING = 'extracting',\n PROCESSED = 'extracted',\n\n FINISHED = 'finished',\n FAILED = 'failed',\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisAPICommand {\n SPIN_UP = 'spinUp',\n TEAR_DOWN = 'tearDown',\n\n BUILD_START = 'buildStart',\n BUILD_STOP = 'buildStop',\n BUILD_STATUS = 'buildStatus',\n\n CONFIGURATION_LOCK = 'configurationLock',\n CONFIGURATION_UNLOCK = 'configurationUnlock',\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisContainerPath {\n CODE = '/opt/code/',\n}\n","/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { AnalysisAPICommand, AnalysisBuildStatus } from './constants';\nimport type { Analysis } from './entity';\n\ntype CanResult = {\n success: boolean,\n message: string,\n};\n\n/**\n * Check if an analysis can be build based on analysis attributes (build_status, configuration_locked, ...)\n *\n * @param entity\n * @param command\n */\nexport function isAnalysisAPICommandExecutable(\n entity: Analysis,\n command: `${AnalysisAPICommand}`,\n) : CanResult {\n const output : CanResult = {\n success: false,\n message: `The analysis command ${command} cannot be executed.`,\n };\n\n switch (command) {\n case AnalysisAPICommand.BUILD_START: {\n if (!entity.configuration_locked) {\n output.success = false;\n output.message = 'The analysis configuration must be locked before starting the build.';\n return output;\n }\n\n if (!entity.build_status) {\n output.success = true;\n return output;\n }\n\n if (\n entity.build_status === AnalysisBuildStatus.FAILED ||\n entity.build_status === AnalysisBuildStatus.STOPPED\n ) {\n output.success = true;\n return output;\n }\n\n output.message = `The current analysis build status \"${entity.build_status}\" does not allow a build start.`;\n return output;\n }\n case AnalysisAPICommand.BUILD_STOP: {\n if (!entity.configuration_locked) {\n output.message = 'The analysis configuration must be locked before stopping the build.';\n return output;\n }\n\n if (!entity.build_status) {\n output.message = 'The analysis build process has not been initialized.';\n return output;\n }\n\n if (entity.build_status === AnalysisBuildStatus.STOPPING ||\n entity.build_status === AnalysisBuildStatus.STARTED ||\n entity.build_status === AnalysisBuildStatus.STARTING\n ) {\n output.success = true;\n return output;\n }\n\n output.message = `The current analysis build status \"${entity.build_status}\" does not allow a build stop.`;\n return output;\n }\n case AnalysisAPICommand.BUILD_STATUS: {\n if (!entity.configuration_locked) {\n output.message = 'The analysis configuration must be locked before checking the build status.';\n return output;\n }\n\n if (!entity.build_status) {\n output.message = 'The analysis build process has not been initialized.';\n return output;\n }\n\n if (entity.build_status === AnalysisBuildStatus.FINISHED) {\n output.message = 'The analysis build process has already been successfully completed.';\n return output;\n }\n\n output.success = true;\n return output;\n }\n case AnalysisAPICommand.CONFIGURATION_LOCK: {\n if (entity.configuration_locked) {\n output.message = 'The analysis configuration is already locked.';\n return output;\n }\n\n if (entity.build_status) {\n output.message = 'The analysis build process has already been initialized.';\n return output;\n }\n\n // todo: unknown if one of them is an aggregator.\n if (entity.nodes < 2) {\n output.message = 'The analysis requires at least two nodes.';\n return output;\n }\n\n if (!entity.master_image_id) {\n output.message = 'A master image must be assigned to the analysis.';\n return output;\n }\n\n output.success = true;\n return output;\n }\n case AnalysisAPICommand.CONFIGURATION_UNLOCK: {\n if (!entity.configuration_locked) {\n output.message = 'The analysis configuration is already unlocked.';\n return output;\n }\n\n if (!entity.build_status) {\n output.success = true;\n return output;\n }\n\n if (\n entity.build_status === AnalysisBuildStatus.FAILED ||\n entity.build_status === AnalysisBuildStatus.STOPPED ||\n entity.build_status === AnalysisBuildStatus.STOPPING\n ) {\n output.success = true;\n return output;\n }\n\n output.message = `The current analysis build status \"${entity.build_status}\" does not allow unlocking the configuration.`;\n return output;\n }\n }\n\n return output;\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum AnalysisBucketType {\n CODE = 'CODE',\n RESULT = 'RESULT',\n TEMP = 'TEMP',\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { Analysis } from '../analysis';\nimport { AnalysisBucketType } from './constants';\n\nexport function buildAnalysisBucketName(\n type: `${AnalysisBucketType}`,\n id: Analysis['id'],\n) {\n switch (type) {\n case AnalysisBucketType.CODE: {\n return `analysis-code-files.${id}`;\n }\n case AnalysisBucketType.TEMP: {\n return `analysis-temp-files.${id}`;\n }\n case AnalysisBucketType.RESULT: {\n return `analysis-result-files.${id}`;\n }\n }\n\n throw new SyntaxError('The argument can only have any bucket type value.');\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum AnalysisNodeApprovalCommand {\n APPROVE = 'approve',\n REJECT = 'reject',\n}\n\nexport enum AnalysisNodeApprovalStatus {\n REJECTED = 'rejected',\n APPROVED = 'approved',\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisNodeRunStatus {\n STARTING = 'starting',\n STARTED = 'started',\n\n STOPPING = 'stopping',\n STOPPED = 'stopped',\n\n RUNNING = 'running',\n FINISHED = 'finished',\n\n FAILED = 'failed',\n}\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { Realm } from '@authup/core-kit';\n\nexport function buildSocketRealmNamespaceName(realmId: Realm['id']) {\n return `/resources#${realmId}`;\n}\n\nexport function parseSocketRealmNamespaceName(name: string) : string | undefined {\n return name.startsWith('/resources#') ?\n name.substring('/resources#'.length) :\n name;\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum MasterImageCommand {\n SYNC = 'sync',\n}\n\nexport enum MasterImageGroupType {\n LANGUAGE = 'language',\n DEFAULT = 'default',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum ProjectNodeApprovalCommand {\n APPROVE = 'approve',\n REJECT = 'reject',\n}\n\nexport enum ProjectNodeApprovalStatus {\n REJECTED = 'rejected',\n APPROVED = 'approved',\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport const registryRobotSecretRegex = /^(?=.*[A-Z])(?=.*[a-z])(?=.*\\d).{8,}$/;\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { Registry } from './entity';\n\nexport function buildRegistryClientConnectionStringFromRegistry(entity: Registry) {\n // todo: support other registries beside harbor and v2.0\n\n const url = `https://${entity.host}/api/v2.0/`;\n return `${entity.account_name}:${entity.account_secret}@${url}`;\n}\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum RegistryProjectType {\n DEFAULT = 'default',\n AGGREGATOR = 'aggregator',\n INCOMING = 'incoming',\n OUTGOING = 'outgoing',\n MASTER_IMAGES = 'masterImages',\n NODE = 'node',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { RegistryProject } from './entity';\n\nexport function buildSocketRegistryProjectRoomName(id?: RegistryProject['id']) {\n return `registry-projects${id ? `#${id}` : ''}`;\n}\n","/*\n * Copyright (c) 2023-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { createNanoID } from '@privateaim/kit';\n\nexport function generateRegistryProjectId() {\n return createNanoID('0123456789abcdefghijklmnopqrstuvwxyz');\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum NodeType {\n AGGREGATOR = 'aggregator',\n DEFAULT = 'default',\n}\n\nexport enum NodeSocketClientEventName {\n CONNECT = 'nodeConnect',\n DISCONNECT = 'nodeDisconnect',\n MESSAGE = 'nodeMessage',\n}\n\nexport enum NodeSocketServerEventName {\n CONNECTED = 'nodeConnected',\n DISCONNECTED = 'nodeDisconnected',\n MESSAGE = 'nodeMessage',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum RegistryAPICommand {\n SETUP = 'setup',\n CLEANUP = 'cleanup',\n DELETE = 'delete',\n\n PROJECT_LINK = 'projectLink',\n PROJECT_UNLINK = 'projectUnlink',\n}\n\n/**\n * Incoming train project name\n */\nexport const REGISTRY_INCOMING_PROJECT_NAME = 'incoming';\n\n/**\n * Outgoing train project name\n */\nexport const REGISTRY_OUTGOING_PROJECT_NAME = 'outgoing';\n\n/**\n * Master Image project name\n */\nexport const REGISTRY_MASTER_IMAGE_PROJECT_NAME = 'master';\n\n/**\n * Latest image tag\n */\nexport const REGISTRY_ARTIFACT_TAG_LATEST = 'latest';\n\n/**\n * base image tag\n */\nexport const REGISTRY_ARTIFACT_TAG_BASE = 'base';\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum SecretStorageAPICommand {\n ENGINE_CREATE = 'engineCreate',\n\n ENGINE_KEY_SAVE = 'engineKeySave',\n ENGINE_KEY_PULL = 'engineKeyPull',\n ENGINE_KEY_DROP = 'engineKeyDrop',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum ServiceID {\n // Core Service(s)\n SYSTEM = 'system',\n\n // Third Party Service(s)\n REGISTRY = 'registry',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum StationRegistryAPICommand {\n SYNC = 'sync',\n}\n","/*\n * Copyright (c) 2023-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum DomainType {\n MASTER_IMAGE = 'masterImage',\n EVENT = 'event',\n MASTER_IMAGE_GROUP = 'masterImageGroup',\n PROJECT = 'project',\n PROJECT_NODE = 'projectNode',\n REGISTRY = 'registry',\n REGISTRY_PROJECT = 'registryProject',\n NODE = 'node',\n ANALYSIS = 'analysis',\n ANALYSIS_BUCKET = 'analysisBucket',\n ANALYSIS_BUCKET_FILE = 'analysisBucketFile',\n ANALYSIS_LOG = 'analysisLog',\n ANALYSIS_NODE = 'analysisNode',\n ANALYSIS_NODE_EVENT = 'analysisNodeEvent',\n ANALYSIS_NODE_LOG = 'analysisNodeLog',\n ANALYSIS_PERMISSION = 'analysisPermission',\n}\n\nexport enum DomainSubType {\n PROJECT_NODE_IN = 'projectNodeIn',\n PROJECT_NODE_OUT = 'projectNodeOut',\n ANALYSIS_NODE_IN = 'analysisNodeIn',\n ANALYSIS_NODE_OUT = 'analysisNodeOut',\n}\n\nexport enum DomainEventName {\n CREATED = 'created',\n DELETED = 'deleted',\n UPDATED = 'updated',\n}\n\nexport enum DomainEventSubscriptionName {\n SUBSCRIBE = 'subscribe',\n UNSUBSCRIBE = 'unsubscribe',\n}\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\n// todo: rename to buildEntityChannelName\nexport function buildDomainChannelName(domain: string, id?: string | number) {\n if (typeof id === 'string' || typeof id === 'number') {\n return `${domain}:${id}`;\n }\n\n return domain;\n}\n\n// todo: rename to buildEntityNamespaceName\nexport function buildDomainNamespaceName(id?: string) {\n return id ?\n `/resources:${id}` :\n '/resources';\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum EnvironmentName {\n TEST = 'test',\n DEVELOPMENT = 'development',\n PRODUCTION = 'production',\n}\n"],"names":["ErrorCode","APIConnectionStringError","Error","connectionStringMissing","serviceName","parts","push","join","connectionStringInvalid","AnalysisBuildStatus","AnalysisConfigurationStatus","AnalysisRunStatus","AnalysisResultStatus","AnalysisAPICommand","AnalysisContainerPath","isAnalysisAPICommandExecutable","entity","command","output","success","message","BUILD_START","configuration_locked","build_status","FAILED","STOPPED","BUILD_STOP","STOPPING","STARTED","STARTING","BUILD_STATUS","FINISHED","CONFIGURATION_LOCK","nodes","master_image_id","CONFIGURATION_UNLOCK","AnalysisBucketType","buildAnalysisBucketName","type","id","CODE","TEMP","RESULT","SyntaxError","AnalysisNodeApprovalCommand","AnalysisNodeApprovalStatus","AnalysisNodeRunStatus","buildSocketRealmNamespaceName","realmId","parseSocketRealmNamespaceName","name","startsWith","substring","length","MasterImageCommand","MasterImageGroupType","ProjectNodeApprovalCommand","ProjectNodeApprovalStatus","registryRobotSecretRegex","buildRegistryClientConnectionStringFromRegistry","url","host","account_name","account_secret","RegistryProjectType","buildSocketRegistryProjectRoomName","generateRegistryProjectId","createNanoID","NodeType","NodeSocketClientEventName","NodeSocketServerEventName","RegistryAPICommand","REGISTRY_INCOMING_PROJECT_NAME","REGISTRY_OUTGOING_PROJECT_NAME","REGISTRY_MASTER_IMAGE_PROJECT_NAME","REGISTRY_ARTIFACT_TAG_LATEST","REGISTRY_ARTIFACT_TAG_BASE","SecretStorageAPICommand","ServiceID","StationRegistryAPICommand","DomainType","DomainSubType","DomainEventName","DomainEventSubscriptionName","buildDomainChannelName","domain","buildDomainNamespaceName","EnvironmentName"],"mappings":"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"}
package/dist/index.mjs CHANGED
@@ -446,7 +446,7 @@ var NodeSocketServerEventName = /*#__PURE__*/ function(NodeSocketServerEventName
446
446
  * view the LICENSE file that was distributed with this source code.
447
447
  */ var DomainType = /*#__PURE__*/ function(DomainType) {
448
448
  DomainType["MASTER_IMAGE"] = "masterImage";
449
- DomainType["MASTER_IMAGE_EVENT_LOG"] = "masterImageEventLog";
449
+ DomainType["EVENT"] = "event";
450
450
  DomainType["MASTER_IMAGE_GROUP"] = "masterImageGroup";
451
451
  DomainType["PROJECT"] = "project";
452
452
  DomainType["PROJECT_NODE"] = "projectNode";
@@ -458,6 +458,7 @@ var NodeSocketServerEventName = /*#__PURE__*/ function(NodeSocketServerEventName
458
458
  DomainType["ANALYSIS_BUCKET_FILE"] = "analysisBucketFile";
459
459
  DomainType["ANALYSIS_LOG"] = "analysisLog";
460
460
  DomainType["ANALYSIS_NODE"] = "analysisNode";
461
+ DomainType["ANALYSIS_NODE_EVENT"] = "analysisNodeEvent";
461
462
  DomainType["ANALYSIS_NODE_LOG"] = "analysisNodeLog";
462
463
  DomainType["ANALYSIS_PERMISSION"] = "analysisPermission";
463
464
  return DomainType;
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../src/error/constants.ts","../src/error/entities/connection-string.ts","../src/domains/analysis/constants.ts","../src/domains/analysis/helpers.ts","../src/domains/analysis-bucket/constants.ts","../src/domains/analysis-bucket/utils.ts","../src/domains/analysis-node/constants.ts","../src/domains/realm/socket.ts","../src/domains/master-image/constants.ts","../src/domains/project-node/constants.ts","../src/domains/registry/constants.ts","../src/domains/registry/utils.ts","../src/domains/registry-project/constants.ts","../src/domains/registry-project/socket.ts","../src/domains/registry-project/utils.ts","../src/domains/node/constants.ts","../src/domains/service/registry/constants.ts","../src/domains/service/secret-engine/constants.ts","../src/domains/service/constants.ts","../src/domains/service/station-registry/constants.ts","../src/domains/constants.ts","../src/domains/utils.ts","../src/constants.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum ErrorCode {\n LICENSE_AGREEMENT = 'license_agreement',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport class APIConnectionStringError extends Error {\n static connectionStringMissing(serviceName?: string) {\n const parts : string[] = ['The'];\n if (typeof serviceName === 'string') {\n parts.push(serviceName);\n }\n parts.push('connection string is not specified.');\n return new this(parts.join(' '));\n }\n\n static connectionStringInvalid(serviceName?: string) {\n const parts : string[] = ['The'];\n if (typeof serviceName === 'string') {\n parts.push(serviceName);\n }\n parts.push('connection string is not valid.');\n return new this(parts.join(' '));\n }\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum AnalysisBuildStatus {\n STARTING = 'starting', // ui trigger\n STARTED = 'started', // tb trigger\n\n STOPPING = 'stopping', // ui trigger\n STOPPED = 'stopped', // tb trigger\n\n FINISHED = 'finished', // tb trigger\n FAILED = 'failed', // tb trigger\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisConfigurationStatus {\n NODES = 'nodes',\n MASTER_IMAGE = 'masterImage',\n FILES = 'files',\n FINISHED = 'finished',\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisRunStatus {\n STARTING = 'starting',\n STARTED = 'started',\n\n RUNNING = 'running',\n\n STOPPING = 'stopping',\n STOPPED = 'stopped',\n\n FINISHED = 'finished',\n FAILED = 'failed',\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisResultStatus {\n STARTED = 'started',\n\n DOWNLOADING = 'downloading',\n DOWNLOADED = 'downloaded',\n\n PROCESSING = 'extracting',\n PROCESSED = 'extracted',\n\n FINISHED = 'finished',\n FAILED = 'failed',\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisAPICommand {\n SPIN_UP = 'spinUp',\n TEAR_DOWN = 'tearDown',\n\n BUILD_START = 'buildStart',\n BUILD_STOP = 'buildStop',\n BUILD_STATUS = 'buildStatus',\n\n CONFIGURATION_LOCK = 'configurationLock',\n CONFIGURATION_UNLOCK = 'configurationUnlock',\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisContainerPath {\n CODE = '/opt/code/',\n}\n","/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { AnalysisAPICommand, AnalysisBuildStatus } from './constants';\nimport type { Analysis } from './entity';\n\ntype CanResult = {\n success: boolean,\n message: string,\n};\n\n/**\n * Check if an analysis can be build based on analysis attributes (build_status, configuration_locked, ...)\n *\n * @param entity\n * @param command\n */\nexport function isAnalysisAPICommandExecutable(\n entity: Analysis,\n command: `${AnalysisAPICommand}`,\n) : CanResult {\n const output : CanResult = {\n success: false,\n message: `The analysis command ${command} cannot be executed.`,\n };\n\n switch (command) {\n case AnalysisAPICommand.BUILD_START: {\n if (!entity.configuration_locked) {\n output.success = false;\n output.message = 'The analysis configuration must be locked before starting the build.';\n return output;\n }\n\n if (!entity.build_status) {\n output.success = true;\n return output;\n }\n\n if (\n entity.build_status === AnalysisBuildStatus.FAILED ||\n entity.build_status === AnalysisBuildStatus.STOPPED\n ) {\n output.success = true;\n return output;\n }\n\n output.message = `The current analysis build status \"${entity.build_status}\" does not allow a build start.`;\n return output;\n }\n case AnalysisAPICommand.BUILD_STOP: {\n if (!entity.configuration_locked) {\n output.message = 'The analysis configuration must be locked before stopping the build.';\n return output;\n }\n\n if (!entity.build_status) {\n output.message = 'The analysis build process has not been initialized.';\n return output;\n }\n\n if (entity.build_status === AnalysisBuildStatus.STOPPING ||\n entity.build_status === AnalysisBuildStatus.STARTED ||\n entity.build_status === AnalysisBuildStatus.STARTING\n ) {\n output.success = true;\n return output;\n }\n\n output.message = `The current analysis build status \"${entity.build_status}\" does not allow a build stop.`;\n return output;\n }\n case AnalysisAPICommand.BUILD_STATUS: {\n if (!entity.configuration_locked) {\n output.message = 'The analysis configuration must be locked before checking the build status.';\n return output;\n }\n\n if (!entity.build_status) {\n output.message = 'The analysis build process has not been initialized.';\n return output;\n }\n\n if (entity.build_status === AnalysisBuildStatus.FINISHED) {\n output.message = 'The analysis build process has already been successfully completed.';\n return output;\n }\n\n output.success = true;\n return output;\n }\n case AnalysisAPICommand.CONFIGURATION_LOCK: {\n if (entity.configuration_locked) {\n output.message = 'The analysis configuration is already locked.';\n return output;\n }\n\n if (entity.build_status) {\n output.message = 'The analysis build process has already been initialized.';\n return output;\n }\n\n // todo: unknown if one of them is an aggregator.\n if (entity.nodes < 2) {\n output.message = 'The analysis requires at least two nodes.';\n return output;\n }\n\n if (!entity.master_image_id) {\n output.message = 'A master image must be assigned to the analysis.';\n return output;\n }\n\n output.success = true;\n return output;\n }\n case AnalysisAPICommand.CONFIGURATION_UNLOCK: {\n if (!entity.configuration_locked) {\n output.message = 'The analysis configuration is already unlocked.';\n return output;\n }\n\n if (!entity.build_status) {\n output.success = true;\n return output;\n }\n\n if (\n entity.build_status === AnalysisBuildStatus.FAILED ||\n entity.build_status === AnalysisBuildStatus.STOPPED ||\n entity.build_status === AnalysisBuildStatus.STOPPING\n ) {\n output.success = true;\n return output;\n }\n\n output.message = `The current analysis build status \"${entity.build_status}\" does not allow unlocking the configuration.`;\n return output;\n }\n }\n\n return output;\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum AnalysisBucketType {\n CODE = 'CODE',\n RESULT = 'RESULT',\n TEMP = 'TEMP',\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { Analysis } from '../analysis';\nimport { AnalysisBucketType } from './constants';\n\nexport function buildAnalysisBucketName(\n type: `${AnalysisBucketType}`,\n id: Analysis['id'],\n) {\n switch (type) {\n case AnalysisBucketType.CODE: {\n return `analysis-code-files.${id}`;\n }\n case AnalysisBucketType.TEMP: {\n return `analysis-temp-files.${id}`;\n }\n case AnalysisBucketType.RESULT: {\n return `analysis-result-files.${id}`;\n }\n }\n\n throw new SyntaxError('The argument can only have any bucket type value.');\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum AnalysisNodeApprovalCommand {\n APPROVE = 'approve',\n REJECT = 'reject',\n}\n\nexport enum AnalysisNodeApprovalStatus {\n REJECTED = 'rejected',\n APPROVED = 'approved',\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisNodeRunStatus {\n STARTING = 'starting',\n STARTED = 'started',\n\n STOPPING = 'stopping',\n STOPPED = 'stopped',\n\n RUNNING = 'running',\n FINISHED = 'finished',\n\n FAILED = 'failed',\n}\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { Realm } from '@authup/core-kit';\n\nexport function buildSocketRealmNamespaceName(realmId: Realm['id']) {\n return `/resources#${realmId}`;\n}\n\nexport function parseSocketRealmNamespaceName(name: string) : string | undefined {\n return name.startsWith('/resources#') ?\n name.substring('/resources#'.length) :\n name;\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum MasterImageCommand {\n SYNC = 'sync',\n}\n\nexport enum MasterImageGroupType {\n LANGUAGE = 'language',\n DEFAULT = 'default',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum ProjectNodeApprovalCommand {\n APPROVE = 'approve',\n REJECT = 'reject',\n}\n\nexport enum ProjectNodeApprovalStatus {\n REJECTED = 'rejected',\n APPROVED = 'approved',\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport const registryRobotSecretRegex = /^(?=.*[A-Z])(?=.*[a-z])(?=.*\\d).{8,}$/;\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { Registry } from './entity';\n\nexport function buildRegistryClientConnectionStringFromRegistry(entity: Registry) {\n // todo: support other registries beside harbor and v2.0\n\n const url = `https://${entity.host}/api/v2.0/`;\n return `${entity.account_name}:${entity.account_secret}@${url}`;\n}\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum RegistryProjectType {\n DEFAULT = 'default',\n AGGREGATOR = 'aggregator',\n INCOMING = 'incoming',\n OUTGOING = 'outgoing',\n MASTER_IMAGES = 'masterImages',\n NODE = 'node',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { RegistryProject } from './entity';\n\nexport function buildSocketRegistryProjectRoomName(id?: RegistryProject['id']) {\n return `registry-projects${id ? `#${id}` : ''}`;\n}\n","/*\n * Copyright (c) 2023-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { createNanoID } from '@privateaim/kit';\n\nexport function generateRegistryProjectId() {\n return createNanoID('0123456789abcdefghijklmnopqrstuvwxyz');\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum NodeType {\n AGGREGATOR = 'aggregator',\n DEFAULT = 'default',\n}\n\nexport enum NodeSocketClientEventName {\n CONNECT = 'nodeConnect',\n DISCONNECT = 'nodeDisconnect',\n MESSAGE = 'nodeMessage',\n}\n\nexport enum NodeSocketServerEventName {\n CONNECTED = 'nodeConnected',\n DISCONNECTED = 'nodeDisconnected',\n MESSAGE = 'nodeMessage',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum RegistryAPICommand {\n SETUP = 'setup',\n CLEANUP = 'cleanup',\n DELETE = 'delete',\n\n PROJECT_LINK = 'projectLink',\n PROJECT_UNLINK = 'projectUnlink',\n}\n\n/**\n * Incoming train project name\n */\nexport const REGISTRY_INCOMING_PROJECT_NAME = 'incoming';\n\n/**\n * Outgoing train project name\n */\nexport const REGISTRY_OUTGOING_PROJECT_NAME = 'outgoing';\n\n/**\n * Master Image project name\n */\nexport const REGISTRY_MASTER_IMAGE_PROJECT_NAME = 'master';\n\n/**\n * Latest image tag\n */\nexport const REGISTRY_ARTIFACT_TAG_LATEST = 'latest';\n\n/**\n * base image tag\n */\nexport const REGISTRY_ARTIFACT_TAG_BASE = 'base';\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum SecretStorageAPICommand {\n ENGINE_CREATE = 'engineCreate',\n\n ENGINE_KEY_SAVE = 'engineKeySave',\n ENGINE_KEY_PULL = 'engineKeyPull',\n ENGINE_KEY_DROP = 'engineKeyDrop',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum ServiceID {\n // Core Service(s)\n SYSTEM = 'system',\n\n // Third Party Service(s)\n REGISTRY = 'registry',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum StationRegistryAPICommand {\n SYNC = 'sync',\n}\n","/*\n * Copyright (c) 2023-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum DomainType {\n MASTER_IMAGE = 'masterImage',\n MASTER_IMAGE_EVENT_LOG = 'masterImageEventLog',\n MASTER_IMAGE_GROUP = 'masterImageGroup',\n PROJECT = 'project',\n PROJECT_NODE = 'projectNode',\n REGISTRY = 'registry',\n REGISTRY_PROJECT = 'registryProject',\n NODE = 'node',\n ANALYSIS = 'analysis',\n ANALYSIS_BUCKET = 'analysisBucket',\n ANALYSIS_BUCKET_FILE = 'analysisBucketFile',\n ANALYSIS_LOG = 'analysisLog',\n ANALYSIS_NODE = 'analysisNode',\n ANALYSIS_NODE_LOG = 'analysisNodeLog',\n ANALYSIS_PERMISSION = 'analysisPermission',\n}\n\nexport enum DomainSubType {\n PROJECT_NODE_IN = 'projectNodeIn',\n PROJECT_NODE_OUT = 'projectNodeOut',\n ANALYSIS_NODE_IN = 'analysisNodeIn',\n ANALYSIS_NODE_OUT = 'analysisNodeOut',\n}\n\nexport enum DomainEventName {\n CREATED = 'created',\n DELETED = 'deleted',\n UPDATED = 'updated',\n}\n\nexport enum DomainEventSubscriptionName {\n SUBSCRIBE = 'subscribe',\n UNSUBSCRIBE = 'unsubscribe',\n}\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\n// todo: rename to buildEntityChannelName\nexport function buildDomainChannelName(domain: string, id?: string | number) {\n if (typeof id === 'string' || typeof id === 'number') {\n return `${domain}:${id}`;\n }\n\n return domain;\n}\n\n// todo: rename to buildEntityNamespaceName\nexport function buildDomainNamespaceName(id?: string) {\n return id ?\n `/resources:${id}` :\n '/resources';\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum EnvironmentName {\n TEST = 'test',\n DEVELOPMENT = 'development',\n PRODUCTION = 'production',\n}\n"],"names":["ErrorCode","APIConnectionStringError","Error","connectionStringMissing","serviceName","parts","push","join","connectionStringInvalid","AnalysisBuildStatus","AnalysisConfigurationStatus","AnalysisRunStatus","AnalysisResultStatus","AnalysisAPICommand","AnalysisContainerPath","isAnalysisAPICommandExecutable","entity","command","output","success","message","BUILD_START","configuration_locked","build_status","FAILED","STOPPED","BUILD_STOP","STOPPING","STARTED","STARTING","BUILD_STATUS","FINISHED","CONFIGURATION_LOCK","nodes","master_image_id","CONFIGURATION_UNLOCK","AnalysisBucketType","buildAnalysisBucketName","type","id","CODE","TEMP","RESULT","SyntaxError","AnalysisNodeApprovalCommand","AnalysisNodeApprovalStatus","AnalysisNodeRunStatus","buildSocketRealmNamespaceName","realmId","parseSocketRealmNamespaceName","name","startsWith","substring","length","MasterImageCommand","MasterImageGroupType","ProjectNodeApprovalCommand","ProjectNodeApprovalStatus","registryRobotSecretRegex","buildRegistryClientConnectionStringFromRegistry","url","host","account_name","account_secret","RegistryProjectType","buildSocketRegistryProjectRoomName","generateRegistryProjectId","createNanoID","NodeType","NodeSocketClientEventName","NodeSocketServerEventName","RegistryAPICommand","REGISTRY_INCOMING_PROJECT_NAME","REGISTRY_OUTGOING_PROJECT_NAME","REGISTRY_MASTER_IMAGE_PROJECT_NAME","REGISTRY_ARTIFACT_TAG_LATEST","REGISTRY_ARTIFACT_TAG_BASE","SecretStorageAPICommand","ServiceID","StationRegistryAPICommand","DomainType","DomainSubType","DomainEventName","DomainEventSubscriptionName","buildDomainChannelName","domain","buildDomainNamespaceName","EnvironmentName"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../src/error/constants.ts","../src/error/entities/connection-string.ts","../src/domains/analysis/constants.ts","../src/domains/analysis/helpers.ts","../src/domains/analysis-bucket/constants.ts","../src/domains/analysis-bucket/utils.ts","../src/domains/analysis-node/constants.ts","../src/domains/realm/socket.ts","../src/domains/master-image/constants.ts","../src/domains/project-node/constants.ts","../src/domains/registry/constants.ts","../src/domains/registry/utils.ts","../src/domains/registry-project/constants.ts","../src/domains/registry-project/socket.ts","../src/domains/registry-project/utils.ts","../src/domains/node/constants.ts","../src/domains/service/registry/constants.ts","../src/domains/service/secret-engine/constants.ts","../src/domains/service/constants.ts","../src/domains/service/station-registry/constants.ts","../src/domains/constants.ts","../src/domains/utils.ts","../src/constants.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum ErrorCode {\n LICENSE_AGREEMENT = 'license_agreement',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport class APIConnectionStringError extends Error {\n static connectionStringMissing(serviceName?: string) {\n const parts : string[] = ['The'];\n if (typeof serviceName === 'string') {\n parts.push(serviceName);\n }\n parts.push('connection string is not specified.');\n return new this(parts.join(' '));\n }\n\n static connectionStringInvalid(serviceName?: string) {\n const parts : string[] = ['The'];\n if (typeof serviceName === 'string') {\n parts.push(serviceName);\n }\n parts.push('connection string is not valid.');\n return new this(parts.join(' '));\n }\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum AnalysisBuildStatus {\n STARTING = 'starting', // ui trigger\n STARTED = 'started', // tb trigger\n\n STOPPING = 'stopping', // ui trigger\n STOPPED = 'stopped', // tb trigger\n\n FINISHED = 'finished', // tb trigger\n FAILED = 'failed', // tb trigger\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisConfigurationStatus {\n NODES = 'nodes',\n MASTER_IMAGE = 'masterImage',\n FILES = 'files',\n FINISHED = 'finished',\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisRunStatus {\n STARTING = 'starting',\n STARTED = 'started',\n\n RUNNING = 'running',\n\n STOPPING = 'stopping',\n STOPPED = 'stopped',\n\n FINISHED = 'finished',\n FAILED = 'failed',\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisResultStatus {\n STARTED = 'started',\n\n DOWNLOADING = 'downloading',\n DOWNLOADED = 'downloaded',\n\n PROCESSING = 'extracting',\n PROCESSED = 'extracted',\n\n FINISHED = 'finished',\n FAILED = 'failed',\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisAPICommand {\n SPIN_UP = 'spinUp',\n TEAR_DOWN = 'tearDown',\n\n BUILD_START = 'buildStart',\n BUILD_STOP = 'buildStop',\n BUILD_STATUS = 'buildStatus',\n\n CONFIGURATION_LOCK = 'configurationLock',\n CONFIGURATION_UNLOCK = 'configurationUnlock',\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisContainerPath {\n CODE = '/opt/code/',\n}\n","/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { AnalysisAPICommand, AnalysisBuildStatus } from './constants';\nimport type { Analysis } from './entity';\n\ntype CanResult = {\n success: boolean,\n message: string,\n};\n\n/**\n * Check if an analysis can be build based on analysis attributes (build_status, configuration_locked, ...)\n *\n * @param entity\n * @param command\n */\nexport function isAnalysisAPICommandExecutable(\n entity: Analysis,\n command: `${AnalysisAPICommand}`,\n) : CanResult {\n const output : CanResult = {\n success: false,\n message: `The analysis command ${command} cannot be executed.`,\n };\n\n switch (command) {\n case AnalysisAPICommand.BUILD_START: {\n if (!entity.configuration_locked) {\n output.success = false;\n output.message = 'The analysis configuration must be locked before starting the build.';\n return output;\n }\n\n if (!entity.build_status) {\n output.success = true;\n return output;\n }\n\n if (\n entity.build_status === AnalysisBuildStatus.FAILED ||\n entity.build_status === AnalysisBuildStatus.STOPPED\n ) {\n output.success = true;\n return output;\n }\n\n output.message = `The current analysis build status \"${entity.build_status}\" does not allow a build start.`;\n return output;\n }\n case AnalysisAPICommand.BUILD_STOP: {\n if (!entity.configuration_locked) {\n output.message = 'The analysis configuration must be locked before stopping the build.';\n return output;\n }\n\n if (!entity.build_status) {\n output.message = 'The analysis build process has not been initialized.';\n return output;\n }\n\n if (entity.build_status === AnalysisBuildStatus.STOPPING ||\n entity.build_status === AnalysisBuildStatus.STARTED ||\n entity.build_status === AnalysisBuildStatus.STARTING\n ) {\n output.success = true;\n return output;\n }\n\n output.message = `The current analysis build status \"${entity.build_status}\" does not allow a build stop.`;\n return output;\n }\n case AnalysisAPICommand.BUILD_STATUS: {\n if (!entity.configuration_locked) {\n output.message = 'The analysis configuration must be locked before checking the build status.';\n return output;\n }\n\n if (!entity.build_status) {\n output.message = 'The analysis build process has not been initialized.';\n return output;\n }\n\n if (entity.build_status === AnalysisBuildStatus.FINISHED) {\n output.message = 'The analysis build process has already been successfully completed.';\n return output;\n }\n\n output.success = true;\n return output;\n }\n case AnalysisAPICommand.CONFIGURATION_LOCK: {\n if (entity.configuration_locked) {\n output.message = 'The analysis configuration is already locked.';\n return output;\n }\n\n if (entity.build_status) {\n output.message = 'The analysis build process has already been initialized.';\n return output;\n }\n\n // todo: unknown if one of them is an aggregator.\n if (entity.nodes < 2) {\n output.message = 'The analysis requires at least two nodes.';\n return output;\n }\n\n if (!entity.master_image_id) {\n output.message = 'A master image must be assigned to the analysis.';\n return output;\n }\n\n output.success = true;\n return output;\n }\n case AnalysisAPICommand.CONFIGURATION_UNLOCK: {\n if (!entity.configuration_locked) {\n output.message = 'The analysis configuration is already unlocked.';\n return output;\n }\n\n if (!entity.build_status) {\n output.success = true;\n return output;\n }\n\n if (\n entity.build_status === AnalysisBuildStatus.FAILED ||\n entity.build_status === AnalysisBuildStatus.STOPPED ||\n entity.build_status === AnalysisBuildStatus.STOPPING\n ) {\n output.success = true;\n return output;\n }\n\n output.message = `The current analysis build status \"${entity.build_status}\" does not allow unlocking the configuration.`;\n return output;\n }\n }\n\n return output;\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum AnalysisBucketType {\n CODE = 'CODE',\n RESULT = 'RESULT',\n TEMP = 'TEMP',\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { Analysis } from '../analysis';\nimport { AnalysisBucketType } from './constants';\n\nexport function buildAnalysisBucketName(\n type: `${AnalysisBucketType}`,\n id: Analysis['id'],\n) {\n switch (type) {\n case AnalysisBucketType.CODE: {\n return `analysis-code-files.${id}`;\n }\n case AnalysisBucketType.TEMP: {\n return `analysis-temp-files.${id}`;\n }\n case AnalysisBucketType.RESULT: {\n return `analysis-result-files.${id}`;\n }\n }\n\n throw new SyntaxError('The argument can only have any bucket type value.');\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum AnalysisNodeApprovalCommand {\n APPROVE = 'approve',\n REJECT = 'reject',\n}\n\nexport enum AnalysisNodeApprovalStatus {\n REJECTED = 'rejected',\n APPROVED = 'approved',\n}\n\n// -------------------------------------------------------------------------\n\nexport enum AnalysisNodeRunStatus {\n STARTING = 'starting',\n STARTED = 'started',\n\n STOPPING = 'stopping',\n STOPPED = 'stopped',\n\n RUNNING = 'running',\n FINISHED = 'finished',\n\n FAILED = 'failed',\n}\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { Realm } from '@authup/core-kit';\n\nexport function buildSocketRealmNamespaceName(realmId: Realm['id']) {\n return `/resources#${realmId}`;\n}\n\nexport function parseSocketRealmNamespaceName(name: string) : string | undefined {\n return name.startsWith('/resources#') ?\n name.substring('/resources#'.length) :\n name;\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum MasterImageCommand {\n SYNC = 'sync',\n}\n\nexport enum MasterImageGroupType {\n LANGUAGE = 'language',\n DEFAULT = 'default',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum ProjectNodeApprovalCommand {\n APPROVE = 'approve',\n REJECT = 'reject',\n}\n\nexport enum ProjectNodeApprovalStatus {\n REJECTED = 'rejected',\n APPROVED = 'approved',\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport const registryRobotSecretRegex = /^(?=.*[A-Z])(?=.*[a-z])(?=.*\\d).{8,}$/;\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { Registry } from './entity';\n\nexport function buildRegistryClientConnectionStringFromRegistry(entity: Registry) {\n // todo: support other registries beside harbor and v2.0\n\n const url = `https://${entity.host}/api/v2.0/`;\n return `${entity.account_name}:${entity.account_secret}@${url}`;\n}\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum RegistryProjectType {\n DEFAULT = 'default',\n AGGREGATOR = 'aggregator',\n INCOMING = 'incoming',\n OUTGOING = 'outgoing',\n MASTER_IMAGES = 'masterImages',\n NODE = 'node',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { RegistryProject } from './entity';\n\nexport function buildSocketRegistryProjectRoomName(id?: RegistryProject['id']) {\n return `registry-projects${id ? `#${id}` : ''}`;\n}\n","/*\n * Copyright (c) 2023-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { createNanoID } from '@privateaim/kit';\n\nexport function generateRegistryProjectId() {\n return createNanoID('0123456789abcdefghijklmnopqrstuvwxyz');\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum NodeType {\n AGGREGATOR = 'aggregator',\n DEFAULT = 'default',\n}\n\nexport enum NodeSocketClientEventName {\n CONNECT = 'nodeConnect',\n DISCONNECT = 'nodeDisconnect',\n MESSAGE = 'nodeMessage',\n}\n\nexport enum NodeSocketServerEventName {\n CONNECTED = 'nodeConnected',\n DISCONNECTED = 'nodeDisconnected',\n MESSAGE = 'nodeMessage',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum RegistryAPICommand {\n SETUP = 'setup',\n CLEANUP = 'cleanup',\n DELETE = 'delete',\n\n PROJECT_LINK = 'projectLink',\n PROJECT_UNLINK = 'projectUnlink',\n}\n\n/**\n * Incoming train project name\n */\nexport const REGISTRY_INCOMING_PROJECT_NAME = 'incoming';\n\n/**\n * Outgoing train project name\n */\nexport const REGISTRY_OUTGOING_PROJECT_NAME = 'outgoing';\n\n/**\n * Master Image project name\n */\nexport const REGISTRY_MASTER_IMAGE_PROJECT_NAME = 'master';\n\n/**\n * Latest image tag\n */\nexport const REGISTRY_ARTIFACT_TAG_LATEST = 'latest';\n\n/**\n * base image tag\n */\nexport const REGISTRY_ARTIFACT_TAG_BASE = 'base';\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum SecretStorageAPICommand {\n ENGINE_CREATE = 'engineCreate',\n\n ENGINE_KEY_SAVE = 'engineKeySave',\n ENGINE_KEY_PULL = 'engineKeyPull',\n ENGINE_KEY_DROP = 'engineKeyDrop',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum ServiceID {\n // Core Service(s)\n SYSTEM = 'system',\n\n // Third Party Service(s)\n REGISTRY = 'registry',\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum StationRegistryAPICommand {\n SYNC = 'sync',\n}\n","/*\n * Copyright (c) 2023-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum DomainType {\n MASTER_IMAGE = 'masterImage',\n EVENT = 'event',\n MASTER_IMAGE_GROUP = 'masterImageGroup',\n PROJECT = 'project',\n PROJECT_NODE = 'projectNode',\n REGISTRY = 'registry',\n REGISTRY_PROJECT = 'registryProject',\n NODE = 'node',\n ANALYSIS = 'analysis',\n ANALYSIS_BUCKET = 'analysisBucket',\n ANALYSIS_BUCKET_FILE = 'analysisBucketFile',\n ANALYSIS_LOG = 'analysisLog',\n ANALYSIS_NODE = 'analysisNode',\n ANALYSIS_NODE_EVENT = 'analysisNodeEvent',\n ANALYSIS_NODE_LOG = 'analysisNodeLog',\n ANALYSIS_PERMISSION = 'analysisPermission',\n}\n\nexport enum DomainSubType {\n PROJECT_NODE_IN = 'projectNodeIn',\n PROJECT_NODE_OUT = 'projectNodeOut',\n ANALYSIS_NODE_IN = 'analysisNodeIn',\n ANALYSIS_NODE_OUT = 'analysisNodeOut',\n}\n\nexport enum DomainEventName {\n CREATED = 'created',\n DELETED = 'deleted',\n UPDATED = 'updated',\n}\n\nexport enum DomainEventSubscriptionName {\n SUBSCRIBE = 'subscribe',\n UNSUBSCRIBE = 'unsubscribe',\n}\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\n// todo: rename to buildEntityChannelName\nexport function buildDomainChannelName(domain: string, id?: string | number) {\n if (typeof id === 'string' || typeof id === 'number') {\n return `${domain}:${id}`;\n }\n\n return domain;\n}\n\n// todo: rename to buildEntityNamespaceName\nexport function buildDomainNamespaceName(id?: string) {\n return id ?\n `/resources:${id}` :\n '/resources';\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum EnvironmentName {\n TEST = 'test',\n DEVELOPMENT = 'development',\n PRODUCTION = 'production',\n}\n"],"names":["ErrorCode","APIConnectionStringError","Error","connectionStringMissing","serviceName","parts","push","join","connectionStringInvalid","AnalysisBuildStatus","AnalysisConfigurationStatus","AnalysisRunStatus","AnalysisResultStatus","AnalysisAPICommand","AnalysisContainerPath","isAnalysisAPICommandExecutable","entity","command","output","success","message","BUILD_START","configuration_locked","build_status","FAILED","STOPPED","BUILD_STOP","STOPPING","STARTED","STARTING","BUILD_STATUS","FINISHED","CONFIGURATION_LOCK","nodes","master_image_id","CONFIGURATION_UNLOCK","AnalysisBucketType","buildAnalysisBucketName","type","id","CODE","TEMP","RESULT","SyntaxError","AnalysisNodeApprovalCommand","AnalysisNodeApprovalStatus","AnalysisNodeRunStatus","buildSocketRealmNamespaceName","realmId","parseSocketRealmNamespaceName","name","startsWith","substring","length","MasterImageCommand","MasterImageGroupType","ProjectNodeApprovalCommand","ProjectNodeApprovalStatus","registryRobotSecretRegex","buildRegistryClientConnectionStringFromRegistry","url","host","account_name","account_secret","RegistryProjectType","buildSocketRegistryProjectRoomName","generateRegistryProjectId","createNanoID","NodeType","NodeSocketClientEventName","NodeSocketServerEventName","RegistryAPICommand","REGISTRY_INCOMING_PROJECT_NAME","REGISTRY_OUTGOING_PROJECT_NAME","REGISTRY_MASTER_IMAGE_PROJECT_NAME","REGISTRY_ARTIFACT_TAG_LATEST","REGISTRY_ARTIFACT_TAG_BASE","SecretStorageAPICommand","ServiceID","StationRegistryAPICommand","DomainType","DomainSubType","DomainEventName","DomainEventSubscriptionName","buildDomainChannelName","domain","buildDomainNamespaceName","EnvironmentName"],"mappings":";;AAAA;;;;;IAOO,IAAKA,SAAAA,iBAAAA,SAAAA,SAAAA,EAAAA;;AAAAA,IAAAA,OAAAA,SAAAA;AAEX,CAAA,CAAA,EAAA;;ACTD;;;;;IAOO,MAAMC,wBAAAA,SAAiCC,KAAAA,CAAAA;IAC1C,OAAOC,uBAAAA,CAAwBC,WAAoB,EAAE;AACjD,QAAA,MAAMC,KAAAA,GAAmB;AAAC,YAAA;AAAM,SAAA;QAChC,IAAI,OAAOD,gBAAgB,QAAA,EAAU;AACjCC,YAAAA,KAAAA,CAAMC,IAAI,CAACF,WAAAA,CAAAA;AACf,QAAA;AACAC,QAAAA,KAAAA,CAAMC,IAAI,CAAC,qCAAA,CAAA;AACX,QAAA,OAAO,IAAI,IAAI,CAACD,KAAAA,CAAME,IAAI,CAAC,GAAA,CAAA,CAAA;AAC/B,IAAA;IAEA,OAAOC,uBAAAA,CAAwBJ,WAAoB,EAAE;AACjD,QAAA,MAAMC,KAAAA,GAAmB;AAAC,YAAA;AAAM,SAAA;QAChC,IAAI,OAAOD,gBAAgB,QAAA,EAAU;AACjCC,YAAAA,KAAAA,CAAMC,IAAI,CAACF,WAAAA,CAAAA;AACf,QAAA;AACAC,QAAAA,KAAAA,CAAMC,IAAI,CAAC,iCAAA,CAAA;AACX,QAAA,OAAO,IAAI,IAAI,CAACD,KAAAA,CAAME,IAAI,CAAC,GAAA,CAAA,CAAA;AAC/B,IAAA;AACJ;;ACzBA;;;;;IAOO,IAAKE,mBAAAA,iBAAAA,SAAAA,mBAAAA,EAAAA;;;;;;;AAAAA,IAAAA,OAAAA,mBAAAA;AASX,CAAA,CAAA,EAAA;AAED;AAEO,IAAA,2BAAKC,iBAAAA,SAAAA,2BAAAA,EAAAA;;;;;AAAAA,IAAAA,OAAAA,2BAAAA;AAKX,CAAA,CAAA,EAAA;AAED;AAEO,IAAA,iBAAKC,iBAAAA,SAAAA,iBAAAA,EAAAA;;;;;;;;AAAAA,IAAAA,OAAAA,iBAAAA;AAWX,CAAA,CAAA,EAAA;AAED;AAEO,IAAA,oBAAKC,iBAAAA,SAAAA,oBAAAA,EAAAA;;;;;;;;AAAAA,IAAAA,OAAAA,oBAAAA;AAWX,CAAA,CAAA,EAAA;AAED;AAEO,IAAA,kBAAKC,iBAAAA,SAAAA,kBAAAA,EAAAA;;;;;;;;AAAAA,IAAAA,OAAAA,kBAAAA;AAUX,CAAA,CAAA,EAAA;AAED;AAEO,IAAA,qBAAKC,iBAAAA,SAAAA,qBAAAA,EAAAA;;AAAAA,IAAAA,OAAAA,qBAAAA;AAEX,CAAA,CAAA,EAAA;;AC5DD;;;;;AAKC,IACM,SAASC,8BAAAA,CACZC,MAAgB,EAChBC,OAAgC,EAAA;AAEhC,IAAA,MAAMC,MAAAA,GAAqB;QACvBC,OAAAA,EAAS,KAAA;AACTC,QAAAA,OAAAA,EAAS,CAAC,qBAAqB,EAAEH,OAAAA,CAAQ,oBAAoB;AACjE,KAAA;IAEA,OAAQA,OAAAA;AACJ,QAAA,KAAKJ,mBAAmBQ,WAAW;AAAE,YAAA;gBACjC,IAAI,CAACL,MAAAA,CAAOM,oBAAoB,EAAE;AAC9BJ,oBAAAA,MAAAA,CAAOC,OAAO,GAAG,KAAA;AACjBD,oBAAAA,MAAAA,CAAOE,OAAO,GAAG,sEAAA;oBACjB,OAAOF,MAAAA;AACX,gBAAA;gBAEA,IAAI,CAACF,MAAAA,CAAOO,YAAY,EAAE;AACtBL,oBAAAA,MAAAA,CAAOC,OAAO,GAAG,IAAA;oBACjB,OAAOD,MAAAA;AACX,gBAAA;gBAEA,IACIF,MAAAA,CAAOO,YAAY,KAAKd,mBAAAA,CAAoBe,MAAM,IAClDR,MAAAA,CAAOO,YAAY,KAAKd,mBAAAA,CAAoBgB,OAAO,EACrD;AACEP,oBAAAA,MAAAA,CAAOC,OAAO,GAAG,IAAA;oBACjB,OAAOD,MAAAA;AACX,gBAAA;gBAEAA,MAAAA,CAAOE,OAAO,GAAG,CAAC,mCAAmC,EAAEJ,MAAAA,CAAOO,YAAY,CAAC,+BAA+B,CAAC;gBAC3G,OAAOL,MAAAA;AACX,YAAA;AACA,QAAA,KAAKL,mBAAmBa,UAAU;AAAE,YAAA;gBAChC,IAAI,CAACV,MAAAA,CAAOM,oBAAoB,EAAE;AAC9BJ,oBAAAA,MAAAA,CAAOE,OAAO,GAAG,sEAAA;oBACjB,OAAOF,MAAAA;AACX,gBAAA;gBAEA,IAAI,CAACF,MAAAA,CAAOO,YAAY,EAAE;AACtBL,oBAAAA,MAAAA,CAAOE,OAAO,GAAG,sDAAA;oBACjB,OAAOF,MAAAA;AACX,gBAAA;AAEA,gBAAA,IAAIF,OAAOO,YAAY,KAAKd,mBAAAA,CAAoBkB,QAAQ,IACpDX,MAAAA,CAAOO,YAAY,KAAKd,mBAAAA,CAAoBmB,OAAO,IACnDZ,MAAAA,CAAOO,YAAY,KAAKd,mBAAAA,CAAoBoB,QAAQ,EACtD;AACEX,oBAAAA,MAAAA,CAAOC,OAAO,GAAG,IAAA;oBACjB,OAAOD,MAAAA;AACX,gBAAA;gBAEAA,MAAAA,CAAOE,OAAO,GAAG,CAAC,mCAAmC,EAAEJ,MAAAA,CAAOO,YAAY,CAAC,8BAA8B,CAAC;gBAC1G,OAAOL,MAAAA;AACX,YAAA;AACA,QAAA,KAAKL,mBAAmBiB,YAAY;AAAE,YAAA;gBAClC,IAAI,CAACd,MAAAA,CAAOM,oBAAoB,EAAE;AAC9BJ,oBAAAA,MAAAA,CAAOE,OAAO,GAAG,6EAAA;oBACjB,OAAOF,MAAAA;AACX,gBAAA;gBAEA,IAAI,CAACF,MAAAA,CAAOO,YAAY,EAAE;AACtBL,oBAAAA,MAAAA,CAAOE,OAAO,GAAG,sDAAA;oBACjB,OAAOF,MAAAA;AACX,gBAAA;AAEA,gBAAA,IAAIF,MAAAA,CAAOO,YAAY,KAAKd,mBAAAA,CAAoBsB,QAAQ,EAAE;AACtDb,oBAAAA,MAAAA,CAAOE,OAAO,GAAG,qEAAA;oBACjB,OAAOF,MAAAA;AACX,gBAAA;AAEAA,gBAAAA,MAAAA,CAAOC,OAAO,GAAG,IAAA;gBACjB,OAAOD,MAAAA;AACX,YAAA;AACA,QAAA,KAAKL,mBAAmBmB,kBAAkB;AAAE,YAAA;gBACxC,IAAIhB,MAAAA,CAAOM,oBAAoB,EAAE;AAC7BJ,oBAAAA,MAAAA,CAAOE,OAAO,GAAG,+CAAA;oBACjB,OAAOF,MAAAA;AACX,gBAAA;gBAEA,IAAIF,MAAAA,CAAOO,YAAY,EAAE;AACrBL,oBAAAA,MAAAA,CAAOE,OAAO,GAAG,0DAAA;oBACjB,OAAOF,MAAAA;AACX,gBAAA;;gBAGA,IAAIF,MAAAA,CAAOiB,KAAK,GAAG,CAAA,EAAG;AAClBf,oBAAAA,MAAAA,CAAOE,OAAO,GAAG,2CAAA;oBACjB,OAAOF,MAAAA;AACX,gBAAA;gBAEA,IAAI,CAACF,MAAAA,CAAOkB,eAAe,EAAE;AACzBhB,oBAAAA,MAAAA,CAAOE,OAAO,GAAG,kDAAA;oBACjB,OAAOF,MAAAA;AACX,gBAAA;AAEAA,gBAAAA,MAAAA,CAAOC,OAAO,GAAG,IAAA;gBACjB,OAAOD,MAAAA;AACX,YAAA;AACA,QAAA,KAAKL,mBAAmBsB,oBAAoB;AAAE,YAAA;gBAC1C,IAAI,CAACnB,MAAAA,CAAOM,oBAAoB,EAAE;AAC9BJ,oBAAAA,MAAAA,CAAOE,OAAO,GAAG,iDAAA;oBACjB,OAAOF,MAAAA;AACX,gBAAA;gBAEA,IAAI,CAACF,MAAAA,CAAOO,YAAY,EAAE;AACtBL,oBAAAA,MAAAA,CAAOC,OAAO,GAAG,IAAA;oBACjB,OAAOD,MAAAA;AACX,gBAAA;AAEA,gBAAA,IACIF,OAAOO,YAAY,KAAKd,mBAAAA,CAAoBe,MAAM,IAClDR,MAAAA,CAAOO,YAAY,KAAKd,mBAAAA,CAAoBgB,OAAO,IACnDT,MAAAA,CAAOO,YAAY,KAAKd,mBAAAA,CAAoBkB,QAAQ,EACtD;AACET,oBAAAA,MAAAA,CAAOC,OAAO,GAAG,IAAA;oBACjB,OAAOD,MAAAA;AACX,gBAAA;gBAEAA,MAAAA,CAAOE,OAAO,GAAG,CAAC,mCAAmC,EAAEJ,MAAAA,CAAOO,YAAY,CAAC,6CAA6C,CAAC;gBACzH,OAAOL,MAAAA;AACX,YAAA;AACJ;IAEA,OAAOA,MAAAA;AACX;;AClJA;;;;;IAOO,IAAKkB,kBAAAA,iBAAAA,SAAAA,kBAAAA,EAAAA;;;;AAAAA,IAAAA,OAAAA,kBAAAA;AAIX,CAAA,CAAA,EAAA;;ACDM,SAASC,uBAAAA,CACZC,IAA6B,EAC7BC,EAAkB,EAAA;IAElB,OAAQD,IAAAA;AACJ,QAAA,KAAKF,mBAAmBI,IAAI;AAAE,YAAA;gBAC1B,OAAO,CAAC,oBAAoB,EAAED,EAAAA,CAAAA,CAAI;AACtC,YAAA;AACA,QAAA,KAAKH,mBAAmBK,IAAI;AAAE,YAAA;gBAC1B,OAAO,CAAC,oBAAoB,EAAEF,EAAAA,CAAAA,CAAI;AACtC,YAAA;AACA,QAAA,KAAKH,mBAAmBM,MAAM;AAAE,YAAA;gBAC5B,OAAO,CAAC,sBAAsB,EAAEH,EAAAA,CAAAA,CAAI;AACxC,YAAA;AACJ;AAEA,IAAA,MAAM,IAAII,WAAAA,CAAY,mDAAA,CAAA;AAC1B;;AC3BA;;;;;IAOO,IAAKC,2BAAAA,iBAAAA,SAAAA,2BAAAA,EAAAA;;;AAAAA,IAAAA,OAAAA,2BAAAA;AAGX,CAAA,CAAA,EAAA;AAEM,IAAA,0BAAKC,iBAAAA,SAAAA,0BAAAA,EAAAA;;;AAAAA,IAAAA,OAAAA,0BAAAA;AAGX,CAAA,CAAA,EAAA;AAED;AAEO,IAAA,qBAAKC,iBAAAA,SAAAA,qBAAAA,EAAAA;;;;;;;;AAAAA,IAAAA,OAAAA,qBAAAA;AAWX,CAAA,CAAA,EAAA;;AC9BD;;;;;IASO,SAASC,6BAAAA,CAA8BC,OAAoB,EAAA;IAC9D,OAAO,CAAC,WAAW,EAAEA,OAAAA,CAAAA,CAAS;AAClC;AAEO,SAASC,8BAA8BC,IAAY,EAAA;IACtD,OAAOA,IAAAA,CAAKC,UAAU,CAAC,aAAA,CAAA,GACnBD,KAAKE,SAAS,CAAC,aAAA,CAAcC,MAAM,CAAA,GACnCH,IAAAA;AACR;;ACjBA;;;;;IAOO,IAAKI,kBAAAA,iBAAAA,SAAAA,kBAAAA,EAAAA;;AAAAA,IAAAA,OAAAA,kBAAAA;AAEX,CAAA,CAAA,EAAA;AAEM,IAAA,oBAAKC,iBAAAA,SAAAA,oBAAAA,EAAAA;;;AAAAA,IAAAA,OAAAA,oBAAAA;AAGX,CAAA,CAAA,EAAA;;ACdD;;;;;IAOO,IAAKC,0BAAAA,iBAAAA,SAAAA,0BAAAA,EAAAA;;;AAAAA,IAAAA,OAAAA,0BAAAA;AAGX,CAAA,CAAA,EAAA;AAEM,IAAA,yBAAKC,iBAAAA,SAAAA,yBAAAA,EAAAA;;;AAAAA,IAAAA,OAAAA,yBAAAA;AAGX,CAAA,CAAA,EAAA;;ACfD;;;;;IAOO,MAAMC,wBAAAA,GAA2B;;ACPxC;;;;;IASO,SAASC,+CAAAA,CAAgD3C,MAAgB,EAAA;;IAG5E,MAAM4C,GAAAA,GAAM,CAAC,QAAQ,EAAE5C,OAAO6C,IAAI,CAAC,UAAU,CAAC;IAC9C,OAAO,CAAA,EAAG7C,MAAAA,CAAO8C,YAAY,CAAC,CAAC,EAAE9C,MAAAA,CAAO+C,cAAc,CAAC,CAAC,EAAEH,GAAAA,CAAAA,CAAK;AACnE;;ACdA;;;;;IAOO,IAAKI,mBAAAA,iBAAAA,SAAAA,mBAAAA,EAAAA;;;;;;;AAAAA,IAAAA,OAAAA,mBAAAA;AAOX,CAAA,CAAA,EAAA;;ACdD;;;;;IASO,SAASC,kCAAAA,CAAmC1B,EAA0B,EAAA;IACzE,OAAO,CAAC,iBAAiB,EAAEA,EAAAA,GAAK,CAAC,CAAC,EAAEA,EAAAA,CAAAA,CAAI,GAAG,EAAA,CAAA,CAAI;AACnD;;ACFO,SAAS2B,yBAAAA,GAAAA;AACZ,IAAA,OAAOC,YAAAA,CAAa,sCAAA,CAAA;AACxB;;ACXA;;;;;IAOO,IAAKC,QAAAA,iBAAAA,SAAAA,QAAAA,EAAAA;;;AAAAA,IAAAA,OAAAA,QAAAA;AAGX,CAAA,CAAA,EAAA;AAEM,IAAA,yBAAKC,iBAAAA,SAAAA,yBAAAA,EAAAA;;;;AAAAA,IAAAA,OAAAA,yBAAAA;AAIX,CAAA,CAAA,EAAA;AAEM,IAAA,yBAAKC,iBAAAA,SAAAA,yBAAAA,EAAAA;;;;AAAAA,IAAAA,OAAAA,yBAAAA;AAIX,CAAA,CAAA,EAAA;;ACtBD;;;;;IAOO,IAAKC,kBAAAA,iBAAAA,SAAAA,kBAAAA,EAAAA;;;;;;AAAAA,IAAAA,OAAAA,kBAAAA;AAOX,CAAA,CAAA,EAAA;AAED;;IAGO,MAAMC,8BAAAA,GAAiC;AAE9C;;IAGO,MAAMC,8BAAAA,GAAiC;AAE9C;;IAGO,MAAMC,kCAAAA,GAAqC;AAElD;;IAGO,MAAMC,4BAAAA,GAA+B;AAE5C;;IAGO,MAAMC,0BAAAA,GAA6B;;ACvC1C;;;;;IAOO,IAAKC,uBAAAA,iBAAAA,SAAAA,uBAAAA,EAAAA;;;;;AAAAA,IAAAA,OAAAA,uBAAAA;AAMX,CAAA,CAAA,EAAA;;ACbD;;;;;IAOO,IAAKC,SAAAA,iBAAAA,SAAAA,SAAAA,EAAAA;;;;;AAAAA,IAAAA,OAAAA,SAAAA;AAMX,CAAA,CAAA,EAAA;;ACbD;;;;;IAOO,IAAKC,yBAAAA,iBAAAA,SAAAA,yBAAAA,EAAAA;;AAAAA,IAAAA,OAAAA,yBAAAA;AAEX,CAAA,CAAA,EAAA;;ACTD;;;;;IAOO,IAAKC,UAAAA,iBAAAA,SAAAA,UAAAA,EAAAA;;;;;;;;;;;;;;;;;AAAAA,IAAAA,OAAAA,UAAAA;AAiBX,CAAA,CAAA,EAAA;AAEM,IAAA,aAAKC,iBAAAA,SAAAA,aAAAA,EAAAA;;;;;AAAAA,IAAAA,OAAAA,aAAAA;AAKX,CAAA,CAAA,EAAA;AAEM,IAAA,eAAKC,iBAAAA,SAAAA,eAAAA,EAAAA;;;;AAAAA,IAAAA,OAAAA,eAAAA;AAIX,CAAA,CAAA,EAAA;AAEM,IAAA,2BAAKC,iBAAAA,SAAAA,2BAAAA,EAAAA;;;AAAAA,IAAAA,OAAAA,2BAAAA;AAGX,CAAA,CAAA,EAAA;;AC1CD;;;;;AAKC;AAGM,SAASC,sBAAAA,CAAuBC,MAAc,EAAE9C,EAAoB,EAAA;AACvE,IAAA,IAAI,OAAOA,EAAAA,KAAO,QAAA,IAAY,OAAOA,OAAO,QAAA,EAAU;AAClD,QAAA,OAAO,CAAA,EAAG8C,MAAAA,CAAO,CAAC,EAAE9C,EAAAA,CAAAA,CAAI;AAC5B,IAAA;IAEA,OAAO8C,MAAAA;AACX;AAEA;AACO,SAASC,yBAAyB/C,EAAW,EAAA;AAChD,IAAA,OAAOA,EAAAA,GACH,CAAC,WAAW,EAAEA,IAAI,GAClB,YAAA;AACR;;ACrBA;;;;;IAOO,IAAKgD,eAAAA,iBAAAA,SAAAA,eAAAA,EAAAA;;;;AAAAA,IAAAA,OAAAA,eAAAA;AAIX,CAAA,CAAA,EAAA;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@privateaim/core-kit",
3
- "version": "0.8.13",
3
+ "version": "0.8.15",
4
4
  "license": "Apache-2.0",
5
5
  "description": "",
6
6
  "exports": {
@@ -26,12 +26,12 @@
26
26
  "build-watch": "rimraf ./dist && tsc -p tsconfig.build.json --watch"
27
27
  },
28
28
  "devDependencies": {
29
- "@authup/core-kit": "^1.0.0-beta.26",
30
- "@privateaim/kit": "^0.8.13"
29
+ "@authup/core-kit": "^1.0.0-beta.27",
30
+ "@privateaim/kit": "^0.8.15"
31
31
  },
32
32
  "peerDependencies": {
33
- "@authup/core-kit": "^1.0.0-beta.26",
34
- "@privateaim/kit": "^0.8.13"
33
+ "@authup/core-kit": "^1.0.0-beta.27",
34
+ "@privateaim/kit": "^0.8.15"
35
35
  },
36
36
  "gitHead": "5d3b6f4ce1edf2383bdfbf66e913a08c8a3a2e40",
37
37
  "publishConfig": {
@@ -6,64 +6,14 @@
6
6
  */
7
7
 
8
8
  import type { Realm } from '@authup/core-kit';
9
+ import type { Log } from '@privateaim/kit';
9
10
  import type {
10
11
  Analysis,
11
12
  } from '../analysis';
12
13
 
13
- export interface AnalysisLog {
14
- id: string;
15
-
16
- /**
17
- * e.g: building, routing, ...
18
- */
19
- component: string | null;
20
-
21
- /**
22
- * e.g: process, check, stop, ...
23
- */
24
- command: string | null;
25
-
26
- /**
27
- * e.g checking, checked
28
- */
29
- event: string | null;
30
-
31
- /**
32
- * is it an error log?
33
- */
34
- error: boolean;
35
-
36
- /**
37
- * e.g: trainNotBuild, entrypointNotFound, ...
38
- */
39
- error_code: string | null;
40
-
41
- /**
42
- * e.g. started, finished, failed, ...
43
- */
44
- status: string | null;
45
-
46
- /**
47
- * e.g: error_message
48
- */
49
- status_message: string | null;
50
-
51
- /**
52
- * e.g: {station_id: xxx, station_index: 0}
53
- */
54
- meta: string | null;
55
-
56
- // ------------------------------------------------------------------
57
-
58
- created_at: Date;
59
-
60
- updated_at: Date;
61
-
62
- // ------------------------------------------------------------------
14
+ export interface AnalysisLog extends Log {
63
15
 
64
16
  analysis_id: Analysis['id'];
65
17
 
66
- analysis: Analysis;
67
-
68
18
  realm_id: Realm['id'];
69
19
  }
@@ -25,8 +25,6 @@ export interface AnalysisNode {
25
25
 
26
26
  comment: string;
27
27
 
28
- index: number;
29
-
30
28
  // ------------------------------------------------------------------
31
29
 
32
30
  artifact_tag: string | null;
@@ -0,0 +1,39 @@
1
+ /*
2
+ * Copyright (c) 2021-2024.
3
+ * Author Peter Placzek (tada5hi)
4
+ * For the full copyright and license information,
5
+ * view the LICENSE file that was distributed with this source code.
6
+ */
7
+
8
+ import type { Realm } from '@authup/core-kit';
9
+ import type { Event } from '../event';
10
+ import type { Node } from '../node';
11
+ import type { Analysis } from '../analysis';
12
+
13
+ export interface AnalysisNodeEvent {
14
+ id: string;
15
+
16
+ // ------------------------------------------------------------------
17
+
18
+ created_at: Date;
19
+
20
+ updated_at: Date;
21
+
22
+ // ------------------------------------------------------------------
23
+
24
+ event_id: Event['id'];
25
+
26
+ event: Event;
27
+
28
+ analysis_id: Analysis['id'];
29
+
30
+ analysis: Analysis;
31
+
32
+ analysis_realm_id: Realm['id'];
33
+
34
+ node_id: Node['id'];
35
+
36
+ node: Node;
37
+
38
+ node_realm_id: Realm['id'];
39
+ }
@@ -4,4 +4,5 @@
4
4
  * For the full copyright and license information,
5
5
  * view the LICENSE file that was distributed with this source code.
6
6
  */
7
+
7
8
  export * from './entity';
@@ -6,53 +6,28 @@
6
6
  */
7
7
 
8
8
  import type { Realm } from '@authup/core-kit';
9
+ import type { Log } from '@privateaim/kit';
9
10
  import type {
10
11
  Analysis,
11
12
  } from '../analysis';
12
13
  import type { Node } from '../node';
13
14
 
14
- export interface AnalysisNodeLog {
15
- id: string;
16
-
17
- /**
18
- * is it an error log?
19
- */
20
- error: boolean;
21
-
15
+ export interface AnalysisNodeLog extends Log {
22
16
  /**
23
- * e.g: trainNotBuild, entrypointNotFound, ...
17
+ * e.g: entrypointNotFound, ...
24
18
  */
25
- error_code: string | null;
19
+ code: string | null;
26
20
 
27
21
  /**
28
22
  * e.g. started, finished, failed, ...
29
23
  */
30
24
  status: string | null;
31
25
 
32
- /**
33
- * e.g: error_message
34
- */
35
- status_message: string | null;
36
-
37
- // ------------------------------------------------------------------
38
-
39
- created_at: Date;
40
-
41
- updated_at: Date;
42
-
43
- // ------------------------------------------------------------------
44
-
45
26
  analysis_realm_id: Realm['id'];
46
27
 
47
28
  analysis_id: Analysis['id'];
48
29
 
49
- analysis: Analysis;
50
-
51
- // ------------------------------------------------------------------
52
-
53
30
  node_id: Node['id'];
54
31
 
55
32
  node_realm_id: Realm['id'];
56
-
57
- node: Node;
58
33
  }
@@ -7,7 +7,7 @@
7
7
 
8
8
  export enum DomainType {
9
9
  MASTER_IMAGE = 'masterImage',
10
- MASTER_IMAGE_EVENT_LOG = 'masterImageEventLog',
10
+ EVENT = 'event',
11
11
  MASTER_IMAGE_GROUP = 'masterImageGroup',
12
12
  PROJECT = 'project',
13
13
  PROJECT_NODE = 'projectNode',
@@ -19,6 +19,7 @@ export enum DomainType {
19
19
  ANALYSIS_BUCKET_FILE = 'analysisBucketFile',
20
20
  ANALYSIS_LOG = 'analysisLog',
21
21
  ANALYSIS_NODE = 'analysisNode',
22
+ ANALYSIS_NODE_EVENT = 'analysisNodeEvent',
22
23
  ANALYSIS_NODE_LOG = 'analysisNodeLog',
23
24
  ANALYSIS_PERMISSION = 'analysisPermission',
24
25
  }
@@ -0,0 +1,77 @@
1
+ /*
2
+ * Copyright (c) 2025.
3
+ * Author Peter Placzek (tada5hi)
4
+ * For the full copyright and license information,
5
+ * view the LICENSE file that was distributed with this source code.
6
+ */
7
+
8
+ import type { ObjectDiff } from '@privateaim/kit';
9
+
10
+ export type EventDataRequest = {
11
+ path: string,
12
+ method: string,
13
+ trace: string,
14
+ user_agent: string,
15
+ };
16
+
17
+ export type EventData = {
18
+ diff?: ObjectDiff,
19
+ request?: EventDataRequest
20
+ };
21
+
22
+ export interface Event {
23
+ id: string;
24
+
25
+ /**
26
+ * domaine
27
+ *
28
+ * eg. analysis, node, analysisNode, ....
29
+ */
30
+ ref_type: string;
31
+
32
+ /**
33
+ * eg. uuid
34
+ */
35
+ ref_id: string | null;
36
+
37
+ /**
38
+ * component, prozess,
39
+ *
40
+ * eg. build, push, modelChanges, ...
41
+ */
42
+ scope: string;
43
+
44
+ /**
45
+ * eg. started, starting, finished, ...
46
+ */
47
+ name: string;
48
+
49
+ /**
50
+ *
51
+ * { description: { new_value: "xxx", prev_value: "yyy" }, name {}}
52
+ */
53
+ data: Record<string, any>;
54
+
55
+ /**
56
+ * default: false
57
+ */
58
+ expiring: boolean;
59
+
60
+ // ------------------------------------------------------------------
61
+
62
+ actor_type: string | null;
63
+
64
+ actor_id: string | null;
65
+
66
+ actor_name: string | null;
67
+
68
+ actor_ip_address: string | null;
69
+
70
+ // ------------------------------------------------------------------
71
+
72
+ expires_at: string | null;
73
+
74
+ created_at: string;
75
+
76
+ updated_at: string;
77
+ }
@@ -0,0 +1,8 @@
1
+ /*
2
+ * Copyright (c) 2025.
3
+ * Author Peter Placzek (tada5hi)
4
+ * For the full copyright and license information,
5
+ * view the LICENSE file that was distributed with this source code.
6
+ */
7
+
8
+ export * from './entity';
@@ -10,12 +10,13 @@ export * from './analysis-bucket';
10
10
  export * from './analysis-bucket-file';
11
11
  export * from './analysis-log';
12
12
  export * from './analysis-node';
13
+ export * from './analysis-node-event';
13
14
  export * from './analysis-node-log';
14
15
  export * from './analysis-permission';
16
+ export * from './event';
15
17
  export * from './realm';
16
18
  export * from './master-image-group';
17
19
  export * from './master-image';
18
- export * from './master-image-event-log';
19
20
  export * from './project';
20
21
  export * from './project-node';
21
22
  export * from './registry';
@@ -6,10 +6,11 @@
6
6
  */
7
7
 
8
8
  import type { AnalysisBucket } from './analysis-bucket';
9
+ import type { AnalysisNodeEvent } from './analysis-node-event';
9
10
  import type { AnalysisNodeLog } from './analysis-node-log';
10
11
  import type { DomainSubType, DomainType } from './constants';
11
12
  import type { MasterImage } from './master-image';
12
- import type { MasterImageEventLog } from './master-image-event-log';
13
+ import type { Event } from './event';
13
14
  import type { MasterImageGroup } from './master-image-group';
14
15
  import type { Project } from './project';
15
16
  import type { ProjectNode } from './project-node';
@@ -24,7 +25,7 @@ import type { AnalysisPermission } from './analysis-permission';
24
25
 
25
26
  type DomainTypeMapRaw = {
26
27
  [DomainType.MASTER_IMAGE]: MasterImage,
27
- [DomainType.MASTER_IMAGE_EVENT_LOG]: MasterImageEventLog,
28
+ [DomainType.EVENT]: Event,
28
29
  [DomainType.MASTER_IMAGE_GROUP]: MasterImageGroup,
29
30
  [DomainType.PROJECT]: Project,
30
31
  [DomainType.PROJECT_NODE]: ProjectNode,
@@ -38,6 +39,7 @@ type DomainTypeMapRaw = {
38
39
  [DomainType.ANALYSIS_BUCKET_FILE]: AnalysisBucketFile,
39
40
  [DomainType.ANALYSIS_LOG]: AnalysisLog,
40
41
  [DomainType.ANALYSIS_NODE]: AnalysisNode,
42
+ [DomainType.ANALYSIS_NODE_EVENT]: AnalysisNodeEvent,
41
43
  [DomainType.ANALYSIS_NODE_LOG]: AnalysisNodeLog,
42
44
  [DomainType.ANALYSIS_PERMISSION]: AnalysisPermission,
43
45
  [DomainSubType.ANALYSIS_NODE_IN]: AnalysisNode,
@@ -1,13 +0,0 @@
1
- import type { MasterImage } from '../master-image';
2
- export interface MasterImageEventLog {
3
- id: string;
4
- name: string;
5
- data: unknown | null;
6
- expiring: boolean;
7
- expires_at: string;
8
- master_image_id: string | null;
9
- master_image: MasterImage | null;
10
- created_at: Date;
11
- updated_at: Date;
12
- }
13
- //# sourceMappingURL=entity.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/domains/master-image-event-log/entity.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD,MAAM,WAAW,mBAAmB;IAChC,EAAE,EAAE,MAAM,CAAC;IAEX,IAAI,EAAE,MAAM,CAAC;IAEb,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IAIrB,QAAQ,EAAE,OAAO,CAAC;IAElB,UAAU,EAAE,MAAM,CAAC;IAInB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/B,YAAY,EAAE,WAAW,GAAG,IAAI,CAAC;IAIjC,UAAU,EAAE,IAAI,CAAC;IAEjB,UAAU,EAAE,IAAI,CAAC;CACpB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domains/master-image-event-log/index.ts"],"names":[],"mappings":"AAMA,cAAc,UAAU,CAAC"}
@@ -1,34 +0,0 @@
1
- /*
2
- * Copyright (c) 2021-2024.
3
- * Author Peter Placzek (tada5hi)
4
- * For the full copyright and license information,
5
- * view the LICENSE file that was distributed with this source code.
6
- */
7
-
8
- import type { MasterImage } from '../master-image';
9
-
10
- export interface MasterImageEventLog {
11
- id: string;
12
-
13
- name: string;
14
-
15
- data: unknown | null;
16
-
17
- // ------------------------------------------------------------------
18
-
19
- expiring: boolean;
20
-
21
- expires_at: string;
22
-
23
- // ------------------------------------------------------------------
24
-
25
- master_image_id: string | null;
26
-
27
- master_image: MasterImage | null;
28
-
29
- // ------------------------------------------------------------------
30
-
31
- created_at: Date;
32
-
33
- updated_at: Date;
34
- }