arvo-core 1.0.29 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -52,3 +52,7 @@
52
52
 
53
53
  - Added SonarCloud integration for code scanning
54
54
 
55
+ ## [1.1.0] - 2024-09-20
56
+
57
+ - Added support for Arvo orchestration subject management
58
+
package/README.md CHANGED
@@ -1,3 +1,7 @@
1
+ [![SonarCloud](https://sonarcloud.io/images/project_badges/sonarcloud-white.svg)](https://sonarcloud.io/summary/new_code?id=SaadAhmad123_arvo-core)
2
+ [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=SaadAhmad123_arvo-core&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=SaadAhmad123_arvo-core)
3
+
4
+
1
5
  # Arvo
2
6
 
3
7
  ## What is Arvo
@@ -86,3 +90,18 @@ This package is available under the MIT License. For more details, refer to the
86
90
  ## Change Logs
87
91
 
88
92
  For a detailed list of changes and updates, please refer to the [document](CHANGELOG.md) file.
93
+
94
+ ### SonarCloud Metrics
95
+
96
+ [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=SaadAhmad123_arvo-core&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=SaadAhmad123_arvo-core)
97
+ [![Bugs](https://sonarcloud.io/api/project_badges/measure?project=SaadAhmad123_arvo-core&metric=bugs)](https://sonarcloud.io/summary/new_code?id=SaadAhmad123_arvo-core)
98
+ [![Code Smells](https://sonarcloud.io/api/project_badges/measure?project=SaadAhmad123_arvo-core&metric=code_smells)](https://sonarcloud.io/summary/new_code?id=SaadAhmad123_arvo-core)
99
+ [![Coverage](https://sonarcloud.io/api/project_badges/measure?project=SaadAhmad123_arvo-core&metric=coverage)](https://sonarcloud.io/summary/new_code?id=SaadAhmad123_arvo-core)
100
+ [![Duplicated Lines (%)](https://sonarcloud.io/api/project_badges/measure?project=SaadAhmad123_arvo-core&metric=duplicated_lines_density)](https://sonarcloud.io/summary/new_code?id=SaadAhmad123_arvo-core)
101
+ [![Lines of Code](https://sonarcloud.io/api/project_badges/measure?project=SaadAhmad123_arvo-core&metric=ncloc)](https://sonarcloud.io/summary/new_code?id=SaadAhmad123_arvo-core)
102
+ [![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=SaadAhmad123_arvo-core&metric=reliability_rating)](https://sonarcloud.io/summary/new_code?id=SaadAhmad123_arvo-core)
103
+ [![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=SaadAhmad123_arvo-core&metric=security_rating)](https://sonarcloud.io/summary/new_code?id=SaadAhmad123_arvo-core)
104
+ [![Technical Debt](https://sonarcloud.io/api/project_badges/measure?project=SaadAhmad123_arvo-core&metric=sqale_index)](https://sonarcloud.io/summary/new_code?id=SaadAhmad123_arvo-core)
105
+ [![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=SaadAhmad123_arvo-core&metric=sqale_rating)](https://sonarcloud.io/summary/new_code?id=SaadAhmad123_arvo-core)
106
+ [![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=SaadAhmad123_arvo-core&metric=vulnerabilities)](https://sonarcloud.io/summary/new_code?id=SaadAhmad123_arvo-core)
107
+
@@ -12,7 +12,7 @@ export type InferArvoContract<T> = T extends IArvoContract<infer S, infer U, inf
12
12
  *
13
13
  * @template TContract - The type of the contract specification.
14
14
  *
15
- * @param contractSpec - The contract specification object.
15
+ * @param contract - The contract specification object.
16
16
  * This should include the URI, accepts, and emits properties as defined in IArvoContract.
17
17
  *
18
18
  * @returns The created ArvoContract instance.
@@ -13,7 +13,7 @@ var _1 = __importDefault(require("."));
13
13
  *
14
14
  * @template TContract - The type of the contract specification.
15
15
  *
16
- * @param contractSpec - The contract specification object.
16
+ * @param contract - The contract specification object.
17
17
  * This should include the URI, accepts, and emits properties as defined in IArvoContract.
18
18
  *
19
19
  * @returns The created ArvoContract instance.
@@ -91,7 +91,7 @@ export default class ArvoEvent<TData extends ArvoEventData = ArvoEventData, TExt
91
91
  * This field represents the intended recipient or destination of the event.
92
92
  * @returns The value of the 'to' field.
93
93
  *
94
- * @remark
94
+ * @remarks
95
95
  * This is a convenience getter for the data in `this.extensions.to` as this
96
96
  * is an ArvoEvent object which natively defines this extension on the CloudEvent
97
97
  * spec.
@@ -102,7 +102,7 @@ export default class ArvoEvent<TData extends ArvoEventData = ArvoEventData, TExt
102
102
  * This field contains access control information for the event.
103
103
  * @returns The value of the 'accesscontrol' field.
104
104
  *
105
- * @remark
105
+ * @remarks
106
106
  * This is a convenience getter for the data in `this.extensions.accesscontrol` as this
107
107
  * is an ArvoEvent object which natively defines this extension on the CloudEvent
108
108
  * spec.
@@ -113,7 +113,7 @@ export default class ArvoEvent<TData extends ArvoEventData = ArvoEventData, TExt
113
113
  * This field indicate an alternative destination for the event.
114
114
  * @returns The value of the 'redirectto' field.
115
115
  *
116
- * @remark
116
+ * @remarks
117
117
  * This is a convenience getter for the data in `this.extensions.redirectto` as this
118
118
  * is an ArvoEvent object which natively defines this extension on the CloudEvent
119
119
  * spec.
@@ -124,7 +124,7 @@ export default class ArvoEvent<TData extends ArvoEventData = ArvoEventData, TExt
124
124
  * This field contains information about the execution units associated with the event.
125
125
  * @returns The value of the 'executionunits' field.
126
126
  *
127
- * @remark
127
+ * @remarks
128
128
  * This is a convenience getter for the data in `this.extensions.executionunits` as this
129
129
  * is an ArvoEvent object which natively defines this extension on the CloudEvent
130
130
  * spec.
@@ -135,7 +135,7 @@ export default class ArvoEvent<TData extends ArvoEventData = ArvoEventData, TExt
135
135
  * This field contains the W3C Trace Context traceparent header.
136
136
  * @returns The value of the 'traceparent' field.
137
137
  *
138
- * @remark
138
+ * @remarks
139
139
  * This is a convenience getter for the data in `this.extensions.traceparent` as this
140
140
  * is an ArvoEvent object which natively defines this extension on the CloudEvent
141
141
  * spec.
@@ -146,7 +146,7 @@ export default class ArvoEvent<TData extends ArvoEventData = ArvoEventData, TExt
146
146
  * This field contains the W3C Trace Context tracestate header.
147
147
  * @returns The value of the 'tracestate' field, or undefined if not set.
148
148
  *
149
- * @remark
149
+ * @remarks
150
150
  * This is a convenience getter for the data in `this.extensions.tracestate` as this
151
151
  * is an ArvoEvent object which natively defines this extension on the CloudEvent
152
152
  * spec.
@@ -129,7 +129,7 @@ var ArvoEvent = /** @class */ (function () {
129
129
  * This field represents the intended recipient or destination of the event.
130
130
  * @returns The value of the 'to' field.
131
131
  *
132
- * @remark
132
+ * @remarks
133
133
  * This is a convenience getter for the data in `this.extensions.to` as this
134
134
  * is an ArvoEvent object which natively defines this extension on the CloudEvent
135
135
  * spec.
@@ -146,7 +146,7 @@ var ArvoEvent = /** @class */ (function () {
146
146
  * This field contains access control information for the event.
147
147
  * @returns The value of the 'accesscontrol' field.
148
148
  *
149
- * @remark
149
+ * @remarks
150
150
  * This is a convenience getter for the data in `this.extensions.accesscontrol` as this
151
151
  * is an ArvoEvent object which natively defines this extension on the CloudEvent
152
152
  * spec.
@@ -163,7 +163,7 @@ var ArvoEvent = /** @class */ (function () {
163
163
  * This field indicate an alternative destination for the event.
164
164
  * @returns The value of the 'redirectto' field.
165
165
  *
166
- * @remark
166
+ * @remarks
167
167
  * This is a convenience getter for the data in `this.extensions.redirectto` as this
168
168
  * is an ArvoEvent object which natively defines this extension on the CloudEvent
169
169
  * spec.
@@ -180,7 +180,7 @@ var ArvoEvent = /** @class */ (function () {
180
180
  * This field contains information about the execution units associated with the event.
181
181
  * @returns The value of the 'executionunits' field.
182
182
  *
183
- * @remark
183
+ * @remarks
184
184
  * This is a convenience getter for the data in `this.extensions.executionunits` as this
185
185
  * is an ArvoEvent object which natively defines this extension on the CloudEvent
186
186
  * spec.
@@ -197,7 +197,7 @@ var ArvoEvent = /** @class */ (function () {
197
197
  * This field contains the W3C Trace Context traceparent header.
198
198
  * @returns The value of the 'traceparent' field.
199
199
  *
200
- * @remark
200
+ * @remarks
201
201
  * This is a convenience getter for the data in `this.extensions.traceparent` as this
202
202
  * is an ArvoEvent object which natively defines this extension on the CloudEvent
203
203
  * spec.
@@ -214,7 +214,7 @@ var ArvoEvent = /** @class */ (function () {
214
214
  * This field contains the W3C Trace Context tracestate header.
215
215
  * @returns The value of the 'tracestate' field, or undefined if not set.
216
216
  *
217
- * @remark
217
+ * @remarks
218
218
  * This is a convenience getter for the data in `this.extensions.tracestate` as this
219
219
  * is an ArvoEvent object which natively defines this extension on the CloudEvent
220
220
  * spec.
@@ -0,0 +1,36 @@
1
+ import { ArvoOchestratorVersion, ArvoOrchestrationSubjectContent } from "./type";
2
+ /**
3
+ * Handles the creation and parsing of Arvo orchestration subjects.
4
+ */
5
+ export default class ArvoOrchestrationSubject {
6
+ /**
7
+ * Creates a new Arvo orchestration subject.
8
+ *
9
+ * @param param - Parameters for creating the subject
10
+ * @param param.orchestrator - Name of the orchestrator
11
+ * @param param.version - Version of the orchestrator
12
+ * @param param.initiator - Initiator of the orchestration
13
+ * @returns A base64 encoded string representing the orchestration subject
14
+ */
15
+ static new(param: {
16
+ orchestator: string;
17
+ version: ArvoOchestratorVersion;
18
+ initiator: string;
19
+ }): string;
20
+ /**
21
+ * Creates an Arvo orchestration subject from the provided content.
22
+ *
23
+ * @param param - The orchestration subject content
24
+ * @returns A base64 encoded string representing the orchestration subject
25
+ * @throws Error if the provided content is invalid or if compression fails
26
+ */
27
+ static create(param: ArvoOrchestrationSubjectContent): string;
28
+ /**
29
+ * Parses a base64 encoded Arvo orchestration subject string.
30
+ *
31
+ * @param subject - The base64 encoded subject string to parse
32
+ * @returns The parsed ArvoOrchestrationSubjectContent
33
+ * @throws Error if parsing or validation fails
34
+ */
35
+ static parse(subject: string): ArvoOrchestrationSubjectContent;
36
+ }
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ var schema_1 = require("./schema");
27
+ var zlib = __importStar(require("zlib"));
28
+ var utils_1 = require("../utils");
29
+ var uuid_1 = require("uuid");
30
+ /**
31
+ * Handles the creation and parsing of Arvo orchestration subjects.
32
+ */
33
+ var ArvoOrchestrationSubject = /** @class */ (function () {
34
+ function ArvoOrchestrationSubject() {
35
+ }
36
+ /**
37
+ * Creates a new Arvo orchestration subject.
38
+ *
39
+ * @param param - Parameters for creating the subject
40
+ * @param param.orchestrator - Name of the orchestrator
41
+ * @param param.version - Version of the orchestrator
42
+ * @param param.initiator - Initiator of the orchestration
43
+ * @returns A base64 encoded string representing the orchestration subject
44
+ */
45
+ ArvoOrchestrationSubject.new = function (param) {
46
+ return ArvoOrchestrationSubject.create({
47
+ orchestrator: {
48
+ name: param.orchestator,
49
+ version: param.version,
50
+ },
51
+ execution: {
52
+ id: (0, uuid_1.v4)(),
53
+ initiator: param.initiator
54
+ }
55
+ });
56
+ };
57
+ /**
58
+ * Creates an Arvo orchestration subject from the provided content.
59
+ *
60
+ * @param param - The orchestration subject content
61
+ * @returns A base64 encoded string representing the orchestration subject
62
+ * @throws Error if the provided content is invalid or if compression fails
63
+ */
64
+ ArvoOrchestrationSubject.create = function (param) {
65
+ try {
66
+ var validationResult = schema_1.ArvoOrchestrationSubjectContentSchema.safeParse(param);
67
+ if (!validationResult.success) {
68
+ throw new Error("Invalid ArvoOrchestrationContextType: ".concat(validationResult.error));
69
+ }
70
+ var jsonString = JSON.stringify(param);
71
+ var compressed = zlib.deflateSync(jsonString);
72
+ return compressed.toString('base64');
73
+ }
74
+ catch (e) {
75
+ throw new Error((0, utils_1.cleanString)("\n Error creating orchestration subject string from the provided context. \n Error -> ".concat(e.message, " \n Context -> ").concat(JSON.stringify(param, null, 2), "\n ")));
76
+ }
77
+ };
78
+ /**
79
+ * Parses a base64 encoded Arvo orchestration subject string.
80
+ *
81
+ * @param subject - The base64 encoded subject string to parse
82
+ * @returns The parsed ArvoOrchestrationSubjectContent
83
+ * @throws Error if parsing or validation fails
84
+ */
85
+ ArvoOrchestrationSubject.parse = function (subject) {
86
+ try {
87
+ var compressed = Buffer.from(subject, 'base64');
88
+ var jsonString = zlib.inflateSync(compressed).toString();
89
+ var parsed = JSON.parse(jsonString);
90
+ var validationResult = schema_1.ArvoOrchestrationSubjectContentSchema.safeParse(parsed);
91
+ if (!validationResult.success) {
92
+ throw new Error("Invalid ArvoOrchestrationContextType: ".concat(validationResult.error));
93
+ }
94
+ return parsed;
95
+ }
96
+ catch (e) {
97
+ throw new Error((0, utils_1.cleanString)("\n Error parsing orchestration subject string to the context. \n Error -> ".concat(e.message, " \n subject -> ").concat(subject, "\n ")));
98
+ }
99
+ };
100
+ return ArvoOrchestrationSubject;
101
+ }());
102
+ exports.default = ArvoOrchestrationSubject;
@@ -0,0 +1,42 @@
1
+ import { z } from "zod";
2
+ export declare const ArvoOchestratorVersionSchema: z.ZodEffects<z.ZodString, string, string>;
3
+ export declare const ArvoOrchestrationSubjectContentSchema: z.ZodObject<{
4
+ orchestrator: z.ZodObject<{
5
+ name: z.ZodEffects<z.ZodString, string, string>;
6
+ version: z.ZodEffects<z.ZodString, string, string>;
7
+ }, "strip", z.ZodTypeAny, {
8
+ name: string;
9
+ version: string;
10
+ }, {
11
+ name: string;
12
+ version: string;
13
+ }>;
14
+ execution: z.ZodObject<{
15
+ id: z.ZodEffects<z.ZodString, string, string>;
16
+ initiator: z.ZodEffects<z.ZodString, string, string>;
17
+ }, "strip", z.ZodTypeAny, {
18
+ id: string;
19
+ initiator: string;
20
+ }, {
21
+ id: string;
22
+ initiator: string;
23
+ }>;
24
+ }, "strip", z.ZodTypeAny, {
25
+ orchestrator: {
26
+ name: string;
27
+ version: string;
28
+ };
29
+ execution: {
30
+ id: string;
31
+ initiator: string;
32
+ };
33
+ }, {
34
+ orchestrator: {
35
+ name: string;
36
+ version: string;
37
+ };
38
+ execution: {
39
+ id: string;
40
+ initiator: string;
41
+ };
42
+ }>;
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ArvoOrchestrationSubjectContentSchema = exports.ArvoOchestratorVersionSchema = void 0;
4
+ var zod_1 = require("zod");
5
+ // Zod schema for ArvoOchestratorVersion
6
+ exports.ArvoOchestratorVersionSchema = zod_1.z
7
+ .string()
8
+ .regex(/^\d+\.\d+\.\d+$/, 'Invalid version format')
9
+ .refine(function (value) { return !value.includes(';'); }, 'Version must not contain semicolon')
10
+ .describe('Semantic version of the Arvo Orchestrator in the format X.Y.Z');
11
+ // Zod schema for ArvoOrchestrationSubjectContent
12
+ exports.ArvoOrchestrationSubjectContentSchema = zod_1.z.object({
13
+ orchestrator: zod_1.z.object({
14
+ name: zod_1.z
15
+ .string()
16
+ .regex(/^[a-z0-9]+(\.[a-z0-9]+)+\.[a-z0-9]+$/, 'Orchestrator name should be prefixed with a reverse-DNS name')
17
+ .refine(function (value) { return !value.includes(';'); }, 'Orchestrator name must not contain semicolon')
18
+ .describe('Name of the orchestrator'),
19
+ version: exports.ArvoOchestratorVersionSchema,
20
+ })
21
+ .describe('Information about the orchestrator'),
22
+ execution: zod_1.z.object({
23
+ id: zod_1.z
24
+ .string()
25
+ .min(1, 'ID must be a non-empty string')
26
+ .refine(function (value) { return !value.includes(';'); }, 'ID must not contain semicolon')
27
+ .describe('Unique identifier for the execution'),
28
+ initiator: zod_1.z
29
+ .string()
30
+ .regex(/^[a-z0-9]+(\.[a-z0-9]+)+\.[a-z0-9]+$/, 'Orchestration initiator should be prefixed with a reverse-DNS name')
31
+ .refine(function (value) { return !value.includes(';'); }, 'Initiator must not contain semicolon')
32
+ .describe('Entity or process that initiated the execution'),
33
+ }).describe('Details about the current execution'),
34
+ }).describe('Context information for Arvo orchestration');
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Represents the version of the Arvo Orchestrator.
3
+ *
4
+ * @remark
5
+ * The version follows the Semantic Versioning format: MAJOR.MINOR.PATCH
6
+ * **Note**: The string must not contain ';'
7
+ *
8
+ * @example
9
+ * "1.0.0", "2.3.1", "0.5.2"
10
+ */
11
+ export type ArvoOchestratorVersion = `${number}.${number}.${number}`;
12
+ /**
13
+ * Represents the content for Arvo orchestration subject.
14
+ * This type provides information about the orchestrator and the current execution.
15
+ */
16
+ export type ArvoOrchestrationSubjectContent = {
17
+ /**
18
+ * Information about the orchestrator.
19
+ */
20
+ orchestrator: {
21
+ /**
22
+ * The name of the orchestrator.
23
+ *
24
+ * @remark
25
+ * Should be prefixed with a reverse-DNS name.
26
+ * **Note**: The string must not contain ';'
27
+ *
28
+ * @example
29
+ * "com.example.myorchestrator"
30
+ */
31
+ name: string;
32
+ /**
33
+ * The version of the orchestrator.
34
+ */
35
+ version: ArvoOchestratorVersion;
36
+ };
37
+ /**
38
+ * Details about the current execution.
39
+ */
40
+ execution: {
41
+ /**
42
+ * A unique identifier for the execution.
43
+ *
44
+ * @remark
45
+ * Should be a non-empty string. The recomendation
46
+ * is to use uuid v4 to generate these ids.
47
+ * **Note**: The string must not contain ';'
48
+ *
49
+ * @example
50
+ * "abc123", "execution-2023-05-15-001"
51
+ */
52
+ id: string;
53
+ /**
54
+ * The entity or process that initiated the execution.
55
+ *
56
+ * @remark
57
+ * Should be prefixed with a reverse-DNS name.
58
+ * **Note**: The string must not contain ';'
59
+ *
60
+ * @example
61
+ * "com.example.initiator-service"
62
+ */
63
+ initiator: string;
64
+ };
65
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -7,8 +7,6 @@ export declare const ArvoCoreTracer: import("@opentelemetry/api").Tracer;
7
7
  /**
8
8
  * Logs a message to a span with additional parameters.
9
9
  * @param params - The parameters for the log message.
10
- * @param params.level - The log level of the message.
11
- * @param params.message - The main content of the log message.
12
10
  * @param span - The span to log the message to. If not provided, the active span is used.
13
11
  * If no active span is available, the message is logged to the console.
14
12
  */
@@ -24,8 +24,6 @@ exports.ArvoCoreTracer = api_1.trace.getTracer(pkg.name, pkg.version);
24
24
  /**
25
25
  * Logs a message to a span with additional parameters.
26
26
  * @param params - The parameters for the log message.
27
- * @param params.level - The log level of the message.
28
- * @param params.message - The main content of the log message.
29
27
  * @param span - The span to log the message to. If not provided, the active span is used.
30
28
  * If no active span is available, the message is logged to the console.
31
29
  */
package/dist/index.d.ts CHANGED
@@ -18,6 +18,9 @@ import OpenInference from './OpenTelemetry/OpenInference';
18
18
  import ArvoExecution from './OpenTelemetry/ArvoExecution';
19
19
  import { ArvoExecutionSpanKind } from './OpenTelemetry/ArvoExecution/types';
20
20
  import { OpenInferenceSpanKind } from './OpenTelemetry/OpenInference/types';
21
+ import ArvoOrchestrationSubject from './ArvoOrchestrationSubject';
22
+ import { ArvoOrchestrationSubjectContentSchema, ArvoOchestratorVersionSchema } from './ArvoOrchestrationSubject/schema';
23
+ import { ArvoOrchestrationSubjectContent, ArvoOchestratorVersion } from './ArvoOrchestrationSubject/type';
21
24
  /**
22
25
  * Collection of Zod schemas for validating various aspects of Arvo events.
23
26
  * @property {z.ZodObject} CloudEventContextSchema - Schema for core CloudEvent properties.
@@ -84,4 +87,4 @@ declare const ArvoEventSchemas: {
84
87
  tracestate: string | null;
85
88
  }>;
86
89
  };
87
- export { ArvoEvent, createArvoEvent, ArvoDataContentType, ArvoEventData, CloudEventExtension, ArvoEventSchemas, CloudEventContext, ArvoExtension, OpenTelemetryExtension, CreateArvoEvent, exceptionToSpan, logToSpan, OpenTelemetryHeaders, TelemetryLogLevel, OTelNull, validateURI, cleanString, ArvoContract, createArvoContract, ArvoContractValidators, ArvoContractRecord, InferArvoContract, IArvoContract, ResolveArvoContractRecord, ArvoContractLibrary, createArvoContractLibrary, ArvoEventFactory, createArvoEventFactory, ArvoErrorSchema, currentOpenTelemetryHeaders, OpenInference, OpenInferenceSpanKind, ArvoExecution, ArvoExecutionSpanKind, ArvoContractJSONSchema, };
90
+ export { ArvoEvent, createArvoEvent, ArvoDataContentType, ArvoEventData, CloudEventExtension, ArvoEventSchemas, CloudEventContext, ArvoExtension, OpenTelemetryExtension, CreateArvoEvent, exceptionToSpan, logToSpan, OpenTelemetryHeaders, TelemetryLogLevel, OTelNull, validateURI, cleanString, ArvoContract, createArvoContract, ArvoContractValidators, ArvoContractRecord, InferArvoContract, IArvoContract, ResolveArvoContractRecord, ArvoContractLibrary, createArvoContractLibrary, ArvoEventFactory, createArvoEventFactory, ArvoErrorSchema, currentOpenTelemetryHeaders, OpenInference, OpenInferenceSpanKind, ArvoExecution, ArvoExecutionSpanKind, ArvoContractJSONSchema, ArvoOrchestrationSubject, ArvoOrchestrationSubjectContentSchema, ArvoOchestratorVersionSchema, ArvoOrchestrationSubjectContent, ArvoOchestratorVersion, };
package/dist/index.js CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ArvoExecutionSpanKind = exports.ArvoExecution = exports.OpenInferenceSpanKind = exports.OpenInference = exports.currentOpenTelemetryHeaders = exports.ArvoErrorSchema = exports.createArvoEventFactory = exports.ArvoEventFactory = exports.createArvoContractLibrary = exports.ArvoContractLibrary = exports.ArvoContractValidators = exports.createArvoContract = exports.ArvoContract = exports.cleanString = exports.validateURI = exports.OTelNull = exports.logToSpan = exports.exceptionToSpan = exports.ArvoEventSchemas = exports.ArvoDataContentType = exports.createArvoEvent = exports.ArvoEvent = void 0;
6
+ exports.ArvoOchestratorVersionSchema = exports.ArvoOrchestrationSubjectContentSchema = exports.ArvoOrchestrationSubject = exports.ArvoExecutionSpanKind = exports.ArvoExecution = exports.OpenInferenceSpanKind = exports.OpenInference = exports.currentOpenTelemetryHeaders = exports.ArvoErrorSchema = exports.createArvoEventFactory = exports.ArvoEventFactory = exports.createArvoContractLibrary = exports.ArvoContractLibrary = exports.ArvoContractValidators = exports.createArvoContract = exports.ArvoContract = exports.cleanString = exports.validateURI = exports.OTelNull = exports.logToSpan = exports.exceptionToSpan = exports.ArvoEventSchemas = exports.ArvoDataContentType = exports.createArvoEvent = exports.ArvoEvent = void 0;
7
7
  var ArvoEvent_1 = __importDefault(require("./ArvoEvent"));
8
8
  exports.ArvoEvent = ArvoEvent_1.default;
9
9
  var schema_1 = require("./ArvoEvent/schema");
@@ -42,6 +42,11 @@ var types_1 = require("./OpenTelemetry/ArvoExecution/types");
42
42
  Object.defineProperty(exports, "ArvoExecutionSpanKind", { enumerable: true, get: function () { return types_1.ArvoExecutionSpanKind; } });
43
43
  var types_2 = require("./OpenTelemetry/OpenInference/types");
44
44
  Object.defineProperty(exports, "OpenInferenceSpanKind", { enumerable: true, get: function () { return types_2.OpenInferenceSpanKind; } });
45
+ var ArvoOrchestrationSubject_1 = __importDefault(require("./ArvoOrchestrationSubject"));
46
+ exports.ArvoOrchestrationSubject = ArvoOrchestrationSubject_1.default;
47
+ var schema_3 = require("./ArvoOrchestrationSubject/schema");
48
+ Object.defineProperty(exports, "ArvoOrchestrationSubjectContentSchema", { enumerable: true, get: function () { return schema_3.ArvoOrchestrationSubjectContentSchema; } });
49
+ Object.defineProperty(exports, "ArvoOchestratorVersionSchema", { enumerable: true, get: function () { return schema_3.ArvoOchestratorVersionSchema; } });
45
50
  /**
46
51
  * Collection of Zod schemas for validating various aspects of Arvo events.
47
52
  * @property {z.ZodObject} CloudEventContextSchema - Schema for core CloudEvent properties.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "arvo-core",
3
- "version": "1.0.29",
3
+ "version": "1.1.0",
4
4
  "description": "This core package contains all the core classes and components of the Arvo Event Driven System",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -41,12 +41,14 @@
41
41
  "ts-jest": "^29.2.5",
42
42
  "ts-node": "^10.9.2",
43
43
  "typedoc": "^0.26.6",
44
+ "typedoc-github-theme": "^0.1.2",
44
45
  "typedoc-plugin-zod": "^1.2.1",
45
46
  "typescript": "^5.5.4"
46
47
  },
47
48
  "dependencies": {
48
49
  "@opentelemetry/api": "^1.9.0",
49
50
  "uuid": "^10.0.0",
51
+ "zlib": "^1.0.5",
50
52
  "zod": "^3.23.8",
51
53
  "zod-to-json-schema": "^3.23.2"
52
54
  }