@versori/run 0.2.0-alpha.9 → 0.2.1-alpha.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/{script/deps/jsr.io/@std/bytes/1.0.5 → esm/deps/jsr.io/@std/bytes/1.0.6}/_types.d.ts.map +1 -1
- package/{script/deps/jsr.io/@std/bytes/1.0.5 → esm/deps/jsr.io/@std/bytes/1.0.6}/concat.d.ts +1 -1
- package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/concat.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/copy.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/fmt/{1.0.7 → 1.0.8}/colors.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/io/0.225.2/buffer.js +1 -1
- package/esm/deps/jsr.io/@std/io/0.225.2/read_all.js +1 -1
- package/esm/deps/jsr.io/@std/log/0.224.14/base_handler.d.ts +21 -0
- package/esm/deps/jsr.io/@std/log/0.224.14/base_handler.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/log/0.224.14/console_handler.js +1 -1
- package/esm/src/context/Context.d.ts +17 -24
- package/esm/src/context/Context.d.ts.map +1 -1
- package/esm/src/context/Context.js +23 -8
- package/esm/src/context/ContextProvider.d.ts +6 -4
- package/esm/src/context/ContextProvider.d.ts.map +1 -1
- package/esm/src/context/ContextProvider.js +9 -2
- package/esm/src/dsl/http/default.d.ts +2 -0
- package/esm/src/dsl/http/default.d.ts.map +1 -1
- package/esm/src/dsl/http/default.js +10 -0
- package/esm/src/dsl/http/versori/contextcredentials.d.ts +10 -0
- package/esm/src/dsl/http/versori/contextcredentials.d.ts.map +1 -0
- package/esm/src/dsl/http/versori/contextcredentials.js +1 -0
- package/esm/src/dsl/http/versori/credentials/client.d.ts +3 -0
- package/esm/src/dsl/http/versori/credentials/client.d.ts.map +1 -1
- package/esm/src/dsl/http/versori/credentials/client.js +11 -3
- package/esm/src/dsl/http/versori/credentials/credentials.d.ts +41 -2
- package/esm/src/dsl/http/versori/credentials/credentials.d.ts.map +1 -1
- package/esm/src/dsl/http/versori/credentials/credentials.js +7 -9
- package/esm/src/dsl/http/versori/credentials/v1alpha1/common_pb.d.ts +31 -0
- package/esm/src/dsl/http/versori/credentials/v1alpha1/common_pb.d.ts.map +1 -0
- package/esm/src/dsl/http/versori/credentials/v1alpha1/common_pb.js +31 -0
- package/esm/src/dsl/http/versori/credentials/v1alpha1/credential_service_pb.d.ts +84 -0
- package/esm/src/dsl/http/versori/credentials/v1alpha1/credential_service_pb.d.ts.map +1 -0
- package/esm/src/dsl/http/versori/credentials/v1alpha1/credential_service_pb.js +128 -0
- package/esm/src/dsl/http/versori/roundtripper.d.ts +14 -7
- package/esm/src/dsl/http/versori/roundtripper.d.ts.map +1 -1
- package/esm/src/dsl/http/versori/roundtripper.js +132 -72
- package/esm/src/dsl/tasks/HttpTask.d.ts +13 -4
- package/esm/src/dsl/tasks/HttpTask.d.ts.map +1 -1
- package/esm/src/dsl/tasks/HttpTask.js +42 -21
- package/esm/src/interpreter/memory/MemoryInterpreter.d.ts.map +1 -1
- package/esm/src/interpreter/memory/MemoryInterpreter.js +11 -3
- package/esm/src/interpreter/memory/compilers/schedule.d.ts.map +1 -1
- package/esm/src/interpreter/memory/compilers/schedule.js +1 -1
- package/esm/src/interpreter/memory/compilers/webhook.js +1 -1
- package/esm/src/kv/nats/NatsKeyValueProvider.d.ts +1 -0
- package/esm/src/kv/nats/NatsKeyValueProvider.d.ts.map +1 -1
- package/esm/src/observability/logging/ConsoleLogger.d.ts +1 -0
- package/esm/src/observability/logging/ConsoleLogger.d.ts.map +1 -1
- package/esm/src/observability/logging/ConsoleLogger.js +124 -30
- package/package.json +3 -2
- package/{esm/deps/jsr.io/@std/bytes/1.0.5 → script/deps/jsr.io/@std/bytes/1.0.6}/_types.d.ts.map +1 -1
- package/{esm/deps/jsr.io/@std/bytes/1.0.5 → script/deps/jsr.io/@std/bytes/1.0.6}/concat.d.ts +1 -1
- package/script/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/concat.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/copy.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/fmt/{1.0.7 → 1.0.8}/colors.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/io/0.225.2/buffer.js +1 -1
- package/script/deps/jsr.io/@std/io/0.225.2/read_all.js +1 -1
- package/script/deps/jsr.io/@std/log/0.224.14/base_handler.d.ts +21 -0
- package/script/deps/jsr.io/@std/log/0.224.14/base_handler.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/log/0.224.14/console_handler.js +1 -1
- package/script/src/context/Context.d.ts +17 -24
- package/script/src/context/Context.d.ts.map +1 -1
- package/script/src/context/Context.js +23 -8
- package/script/src/context/ContextProvider.d.ts +6 -4
- package/script/src/context/ContextProvider.d.ts.map +1 -1
- package/script/src/context/ContextProvider.js +9 -2
- package/script/src/dsl/http/default.d.ts +2 -0
- package/script/src/dsl/http/default.d.ts.map +1 -1
- package/script/src/dsl/http/default.js +10 -0
- package/script/src/dsl/http/versori/contextcredentials.d.ts +10 -0
- package/script/src/dsl/http/versori/contextcredentials.d.ts.map +1 -0
- package/script/src/dsl/http/versori/contextcredentials.js +2 -0
- package/script/src/dsl/http/versori/credentials/client.d.ts +3 -0
- package/script/src/dsl/http/versori/credentials/client.d.ts.map +1 -1
- package/script/src/dsl/http/versori/credentials/client.js +10 -0
- package/script/src/dsl/http/versori/credentials/credentials.d.ts +41 -2
- package/script/src/dsl/http/versori/credentials/credentials.d.ts.map +1 -1
- package/script/src/dsl/http/versori/credentials/credentials.js +8 -9
- package/script/src/dsl/http/versori/credentials/v1alpha1/common_pb.d.ts +31 -0
- package/script/src/dsl/http/versori/credentials/v1alpha1/common_pb.d.ts.map +1 -0
- package/script/src/dsl/http/versori/credentials/v1alpha1/common_pb.js +34 -0
- package/script/src/dsl/http/versori/credentials/v1alpha1/credential_service_pb.d.ts +84 -0
- package/script/src/dsl/http/versori/credentials/v1alpha1/credential_service_pb.d.ts.map +1 -0
- package/script/src/dsl/http/versori/credentials/v1alpha1/credential_service_pb.js +131 -0
- package/script/src/dsl/http/versori/roundtripper.d.ts +14 -7
- package/script/src/dsl/http/versori/roundtripper.d.ts.map +1 -1
- package/script/src/dsl/http/versori/roundtripper.js +137 -77
- package/script/src/dsl/tasks/HttpTask.d.ts +13 -4
- package/script/src/dsl/tasks/HttpTask.d.ts.map +1 -1
- package/script/src/dsl/tasks/HttpTask.js +42 -21
- package/script/src/interpreter/memory/MemoryInterpreter.d.ts.map +1 -1
- package/script/src/interpreter/memory/MemoryInterpreter.js +10 -2
- package/script/src/interpreter/memory/compilers/schedule.d.ts.map +1 -1
- package/script/src/interpreter/memory/compilers/schedule.js +1 -1
- package/script/src/interpreter/memory/compilers/webhook.js +1 -1
- package/script/src/kv/nats/NatsKeyValueProvider.d.ts +1 -0
- package/script/src/kv/nats/NatsKeyValueProvider.d.ts.map +1 -1
- package/script/src/observability/logging/ConsoleLogger.d.ts +1 -0
- package/script/src/observability/logging/ConsoleLogger.d.ts.map +1 -1
- package/script/src/observability/logging/ConsoleLogger.js +124 -30
- /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/_types.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/_types.js +0 -0
- /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/concat.js +0 -0
- /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/copy.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/copy.js +0 -0
- /package/esm/deps/jsr.io/@std/fmt/{1.0.7 → 1.0.8}/colors.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/fmt/{1.0.7 → 1.0.8}/colors.js +0 -0
- /package/script/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/_types.d.ts +0 -0
- /package/script/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/_types.js +0 -0
- /package/script/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/concat.js +0 -0
- /package/script/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/copy.d.ts +0 -0
- /package/script/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/copy.js +0 -0
- /package/script/deps/jsr.io/@std/fmt/{1.0.7 → 1.0.8}/colors.d.ts +0 -0
- /package/script/deps/jsr.io/@std/fmt/{1.0.7 → 1.0.8}/colors.js +0 -0
|
@@ -1,5 +1,15 @@
|
|
|
1
|
-
var
|
|
2
|
-
|
|
1
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
2
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
3
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
4
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
5
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
6
|
+
};
|
|
7
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
8
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
9
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
|
+
};
|
|
12
|
+
var _a, _HttpContextImpl_dynamicFetcher, _HttpContextImpl_staticFetcher, _HttpContextImpl_inner;
|
|
3
13
|
import { ensureTask } from '../ensureTask.js';
|
|
4
14
|
import { wrapDynamicFetcher } from '../http/types.js';
|
|
5
15
|
import { TaskType } from '../Task.js';
|
|
@@ -57,11 +67,8 @@ export class HttpTaskImpl {
|
|
|
57
67
|
}
|
|
58
68
|
}
|
|
59
69
|
_a = TaskType;
|
|
60
|
-
export class HttpContextImpl
|
|
70
|
+
export class HttpContextImpl {
|
|
61
71
|
constructor(ctx, connectionVars, staticFetcher, dynamicFetcher, pageParams) {
|
|
62
|
-
// We need to cast ctx to InternalContext to access kvp
|
|
63
|
-
const internalCtx = ctx;
|
|
64
|
-
super(ctx.log, internalCtx.kvp, ctx.executionId, ctx.startTime, ctx.data, ctx.options);
|
|
65
72
|
Object.defineProperty(this, "connectionVariables", {
|
|
66
73
|
enumerable: true,
|
|
67
74
|
configurable: true,
|
|
@@ -75,31 +82,45 @@ export class HttpContextImpl extends ContextImpl {
|
|
|
75
82
|
value: void 0
|
|
76
83
|
});
|
|
77
84
|
// ideally only one of these should be set to a value
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
value: void 0
|
|
83
|
-
});
|
|
84
|
-
Object.defineProperty(this, "staticFetcher", {
|
|
85
|
-
enumerable: true,
|
|
86
|
-
configurable: true,
|
|
87
|
-
writable: true,
|
|
88
|
-
value: void 0
|
|
89
|
-
});
|
|
85
|
+
_HttpContextImpl_dynamicFetcher.set(this, void 0);
|
|
86
|
+
_HttpContextImpl_staticFetcher.set(this, void 0);
|
|
87
|
+
_HttpContextImpl_inner.set(this, void 0);
|
|
88
|
+
__classPrivateFieldSet(this, _HttpContextImpl_inner, ctx, "f");
|
|
90
89
|
this.pageParams = pageParams;
|
|
91
90
|
this.connectionVariables = connectionVars;
|
|
92
|
-
this
|
|
93
|
-
this
|
|
91
|
+
__classPrivateFieldSet(this, _HttpContextImpl_dynamicFetcher, dynamicFetcher, "f");
|
|
92
|
+
__classPrivateFieldSet(this, _HttpContextImpl_staticFetcher, staticFetcher, "f");
|
|
93
|
+
}
|
|
94
|
+
get log() {
|
|
95
|
+
return __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").log;
|
|
96
|
+
}
|
|
97
|
+
get executionId() {
|
|
98
|
+
return __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").executionId;
|
|
99
|
+
}
|
|
100
|
+
get startTime() {
|
|
101
|
+
return __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").startTime;
|
|
102
|
+
}
|
|
103
|
+
get activation() {
|
|
104
|
+
return __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").activation;
|
|
105
|
+
}
|
|
106
|
+
get data() {
|
|
107
|
+
return __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").data;
|
|
108
|
+
}
|
|
109
|
+
openKv(scope) {
|
|
110
|
+
return __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").openKv(scope);
|
|
111
|
+
}
|
|
112
|
+
credentials() {
|
|
113
|
+
return __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").credentials();
|
|
94
114
|
}
|
|
95
115
|
get fetch() {
|
|
96
116
|
// This is maybe hard to read.
|
|
97
|
-
return this
|
|
117
|
+
return __classPrivateFieldGet(this, _HttpContextImpl_dynamicFetcher, "f") && __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").activation ? wrapDynamicFetcher(__classPrivateFieldGet(this, _HttpContextImpl_dynamicFetcher, "f"), __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").activation) : __classPrivateFieldGet(this, _HttpContextImpl_staticFetcher, "f") ?? globalThis.fetch;
|
|
98
118
|
}
|
|
99
119
|
async nextPage(nextParams) {
|
|
100
120
|
throw new Error("Method not implemented.");
|
|
101
121
|
}
|
|
102
122
|
}
|
|
123
|
+
_HttpContextImpl_dynamicFetcher = new WeakMap(), _HttpContextImpl_staticFetcher = new WeakMap(), _HttpContextImpl_inner = new WeakMap();
|
|
103
124
|
export function http(taskId, opts, fn) {
|
|
104
125
|
return new HttpTaskImpl(taskId, opts, fn);
|
|
105
126
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/memory/MemoryInterpreter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"MemoryInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/memory/MemoryInterpreter.ts"],"names":[],"mappings":"AACA,OAAgB,EAAqB,MAAM,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,EAA+B,UAAU,EAAW,YAAY,EAAE,MAAM,MAAM,CAAC;AACtF,OAAO,EAAE,eAAe,EAAuB,MAAM,kCAAkC,CAAC;AAExF,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAGhG,OAAO,EAAE,QAAQ,EAAgB,MAAM,uBAAuB,CAAC;AAI/D,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAC/D,OAAO,EAAmB,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAIpE,MAAM,MAAM,wBAAwB,GAAG;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,sBAAsB,CAAC,EAAE,OAAO,CAAC;CACpC,CAAC;AAEF,KAAK,YAAY,GAAG;IAChB,QAAQ,EAAE,UAAU,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IAC7C,KAAK,EAAE,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAC9C,oBAAoB,EAAE,eAAe,CAAC;IACtC,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,YAAY,CAAC,EAAE,YAAY,CAAC;CAC/B,CAAA;AAED,qBAAa,iBAAiB;IAOtB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAbjC,OAAO,CAAC,mBAAmB,CAA2B;IACtD,OAAO,CAAC,MAAM,CAAC,CAAS;IACxB,OAAO,CAAC,cAAc,CAAC,CAAa;IACpC,OAAO,CAAC,cAAc,CAAS;gBAGV,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,kBAAkB,EAC5B,eAAe,EAAE,eAAe,EAChC,mBAAmB,EAAE,mBAAmB,EACxC,MAAM,EAAE,MAAM,EACvB,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACxB,kBAAkB,EAAE,kBAAkB,EACtC,YAAY,EAAE,YAAY;WASlC,WAAW,CAAC,OAAO,GAAE,wBAA6B,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAwC5F,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,wBAAwB;IA8C/D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAoJtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAK9B"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
+
import xmlparser from 'express-xml-bodyparser';
|
|
1
2
|
import express from 'express';
|
|
2
3
|
import { catchError, EMPTY, mergeMap, of, tap } from 'rxjs';
|
|
3
4
|
import { ContextProviderImpl } from '../../context/ContextProvider.js';
|
|
4
5
|
import { DefaultRoundTripperFactory } from '../../dsl/http/default.js';
|
|
5
6
|
import { PlatformAPIClient } from '../../dsl/http/versori/platformapi.js';
|
|
6
|
-
import {
|
|
7
|
+
import { VersoriCredentialsFactory } from '../../dsl/http/versori/roundtripper.js';
|
|
7
8
|
import { WorkflowImpl } from '../../dsl/Workflow.js';
|
|
8
9
|
import { MemoryKeyValueProvider } from '../../kv/memory/MemoryKeyValueProvider.js';
|
|
9
10
|
import { NatsKeyValueProvider } from '../../kv/nats/NatsKeyValueProvider.js';
|
|
@@ -95,7 +96,7 @@ export class MemoryInterpreter {
|
|
|
95
96
|
const compiler = options.compiler || new ObservableCompiler();
|
|
96
97
|
const roundTripperFactory = options.skipVersoriCredentials
|
|
97
98
|
? new DefaultRoundTripperFactory()
|
|
98
|
-
:
|
|
99
|
+
: VersoriCredentialsFactory.fromEnv(log);
|
|
99
100
|
if (options.contextProvider) {
|
|
100
101
|
// no need to set up a key-value provider if options.contextProvider is already
|
|
101
102
|
// initialised.
|
|
@@ -104,7 +105,7 @@ export class MemoryInterpreter {
|
|
|
104
105
|
const kvp = await (options.skipVersoriCredentials
|
|
105
106
|
? new MemoryKeyValueProvider()
|
|
106
107
|
: NatsKeyValueProvider.fromEnv());
|
|
107
|
-
return new MemoryInterpreter(log, compiler, new ContextProviderImpl(log, kvp), roundTripperFactory, express.Router(), new Map(), PlatformAPIClient.fromEnv(), CronAPIClient.fromEnv());
|
|
108
|
+
return new MemoryInterpreter(log, compiler, new ContextProviderImpl(log, kvp, roundTripperFactory.credentials()), roundTripperFactory, express.Router(), new Map(), PlatformAPIClient.fromEnv(), CronAPIClient.fromEnv());
|
|
108
109
|
}
|
|
109
110
|
register(workflow, options) {
|
|
110
111
|
const localAbortController = new AbortController();
|
|
@@ -142,6 +143,13 @@ export class MemoryInterpreter {
|
|
|
142
143
|
const port = Deno.env.get('PORT') || 3000;
|
|
143
144
|
const app = express();
|
|
144
145
|
app.use(express.json()); // Add JSON body parser middleware
|
|
146
|
+
const xml2jsDefaults = {
|
|
147
|
+
explicitArray: false,
|
|
148
|
+
normalize: false,
|
|
149
|
+
normalizeTags: false,
|
|
150
|
+
trim: true,
|
|
151
|
+
};
|
|
152
|
+
app.use(xmlparser(xml2jsDefaults));
|
|
145
153
|
// Add health check route
|
|
146
154
|
this.router.get("/health", (_req, res) => {
|
|
147
155
|
res.json({ status: "healthy" });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schedule.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/schedule.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"schedule.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/schedule.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAEzF,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAsF7C,eAAO,MAAM,gBAAgB,EAAE,eAAe,CAAC,YAAY,EAAE,eAAe,CAG3E,CAAC"}
|
|
@@ -47,7 +47,7 @@ function compileSchedule(ctx, trigger, signal) {
|
|
|
47
47
|
res.status(200).json({ status: 'triggered' });
|
|
48
48
|
}
|
|
49
49
|
catch (error) {
|
|
50
|
-
|
|
50
|
+
ctx.log.error('execution error inside schedule', { error });
|
|
51
51
|
res.status(500).json({ error: 'Failed to trigger schedule' });
|
|
52
52
|
}
|
|
53
53
|
});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// In src/interpreter/memory/compilers/webhook.ts
|
|
2
2
|
import cors from 'cors';
|
|
3
|
-
import { Observable } from 'rxjs';
|
|
4
3
|
import { pipeline } from 'node:stream/promises';
|
|
4
|
+
import { Observable } from 'rxjs';
|
|
5
5
|
import { WebhookTrigger } from '../../../dsl/triggers/WebhookTrigger.js';
|
|
6
6
|
const DEFAULT_SYNC_ON_SUCCESS = (ctx) => new Response(JSON.stringify(ctx.data), {
|
|
7
7
|
status: 200,
|
|
@@ -19,6 +19,7 @@ export declare class NatsKeyValueProvider implements KeyValueProvider, AsyncDisp
|
|
|
19
19
|
private constructor();
|
|
20
20
|
static newInstance(opts?: Partial<NatsKeyValueProviderOptions>): Promise<NatsKeyValueProvider>;
|
|
21
21
|
static fromEnv(): Promise<NatsKeyValueProvider>;
|
|
22
|
+
[Symbol.asyncDispose](): PromiseLike<void>;
|
|
22
23
|
kv(options: KVOptions): KeyValue;
|
|
23
24
|
destroy(options: DestroyOptions): Promise<void>;
|
|
24
25
|
private subjectPrefix;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NatsKeyValueProvider.d.ts","sourceRoot":"","sources":["../../../../src/src/kv/nats/NatsKeyValueProvider.ts"],"names":[],"mappings":"AAEA,OAAO,EAA+B,UAAU,EAAE,MAAM,+DAA+D,CAAC;AACxH,OAAO,EACH,cAAc,EAEd,QAAQ,EACR,gBAAgB,EAChB,SAAS,EACZ,MAAM,gBAAgB,CAAC;AA4CxB,MAAM,MAAM,2BAA2B,GAAG;IACtC,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE;QACF,GAAG,EAAE,MAAM,CAAC;QACZ,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,GAAG,CAAC,EAAE,UAAU,CAAC;KACpB,CAAC;CACL,CAAC;AAuBF,qBAAa,oBAAqB,YAAW,gBAAgB,EAAE,eAAe;IAEtE,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI;IALzB,OAAO;WAQM,WAAW,CACpB,IAAI,GAAE,OAAO,CAAC,2BAA2B,CAAM,GAChD,OAAO,CAAC,oBAAoB,CAAC;IA0BhC,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"NatsKeyValueProvider.d.ts","sourceRoot":"","sources":["../../../../src/src/kv/nats/NatsKeyValueProvider.ts"],"names":[],"mappings":"AAEA,OAAO,EAA+B,UAAU,EAAE,MAAM,+DAA+D,CAAC;AACxH,OAAO,EACH,cAAc,EAEd,QAAQ,EACR,gBAAgB,EAChB,SAAS,EACZ,MAAM,gBAAgB,CAAC;AA4CxB,MAAM,MAAM,2BAA2B,GAAG;IACtC,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE;QACF,GAAG,EAAE,MAAM,CAAC;QACZ,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,GAAG,CAAC,EAAE,UAAU,CAAC;KACpB,CAAC;CACL,CAAC;AAuBF,qBAAa,oBAAqB,YAAW,gBAAgB,EAAE,eAAe;IAEtE,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI;IALzB,OAAO;WAQM,WAAW,CACpB,IAAI,GAAE,OAAO,CAAC,2BAA2B,CAAM,GAChD,OAAO,CAAC,oBAAoB,CAAC;IA0BhC,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAI/C,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC;IAI1C,EAAE,CAAC,OAAO,EAAE,SAAS,GAAG,QAAQ;IAqB1B,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBrD,OAAO,CAAC,aAAa;CAYxB"}
|
|
@@ -10,6 +10,7 @@ export declare class ConsoleLogger implements Logger {
|
|
|
10
10
|
constructor(level: LogLevel, fields?: Record<string, unknown>);
|
|
11
11
|
debug(message: string, fields?: Record<string, unknown>): void;
|
|
12
12
|
info(message: string, fields?: Record<string, unknown>): void;
|
|
13
|
+
error(message: string, err?: Error, fields?: Record<string, unknown>): void;
|
|
13
14
|
error(message: string, fields?: Record<string, unknown>): void;
|
|
14
15
|
child(fields: {
|
|
15
16
|
[key: string]: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConsoleLogger.d.ts","sourceRoot":"","sources":["../../../../src/src/observability/logging/ConsoleLogger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,+CAA+C,CAAC;AACrE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"ConsoleLogger.d.ts","sourceRoot":"","sources":["../../../../src/src/observability/logging/ConsoleLogger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,+CAA+C,CAAC;AACrE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAqM/C;;GAEG;AACH,qBAAa,aAAc,YAAW,MAAM;IACxC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC;IAEhB,KAAK,EAAE,QAAQ,CAAC;IAEhB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAEpB,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IAOjE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAO9D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAO7D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAC3E,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAsB9D,KAAK,CAAC,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,aAAa;IAOvD,QAAQ,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;CAGlC"}
|
|
@@ -1,39 +1,130 @@
|
|
|
1
1
|
import * as log from '../../../deps/jsr.io/@std/log/0.224.14/mod.js';
|
|
2
|
-
function
|
|
3
|
-
|
|
2
|
+
function isObjectLiteral(obj) {
|
|
3
|
+
return Object.getPrototypeOf(obj) === Object.prototype;
|
|
4
|
+
}
|
|
5
|
+
function formatError(err) {
|
|
6
|
+
if (Symbol.toPrimitive in err) {
|
|
7
|
+
const toPrimitive = err[Symbol.toPrimitive];
|
|
8
|
+
if (typeof toPrimitive === 'function') {
|
|
9
|
+
return toPrimitive();
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
const ret = {
|
|
13
|
+
error: err.message,
|
|
14
|
+
};
|
|
15
|
+
if (err.cause) {
|
|
16
|
+
if (err.cause instanceof Error) {
|
|
17
|
+
ret.cause = formatError(err.cause);
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
// potential place to Deno.inspect?
|
|
21
|
+
ret.cause = formatArg(err.cause);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
if (err.stack) {
|
|
25
|
+
ret.stacktrace = err.stack;
|
|
26
|
+
}
|
|
27
|
+
return ret;
|
|
28
|
+
}
|
|
29
|
+
// deno-lint-ignore ban-types
|
|
30
|
+
function formatFunction(fn) {
|
|
31
|
+
const str = fn.toString();
|
|
32
|
+
return {
|
|
33
|
+
[`<fn:${fn.name}>`]: str.length > 40 ? `${str.substring(0, 40)}...` : str,
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
function formatArg(arg, nested = false) {
|
|
37
|
+
switch (typeof arg) {
|
|
4
38
|
case 'object':
|
|
5
|
-
if (
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
39
|
+
if (arg === null) {
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
if (Array.isArray(arg)) {
|
|
43
|
+
return arg.map((arg) => formatArg(arg));
|
|
44
|
+
}
|
|
45
|
+
if (arg instanceof Date) {
|
|
46
|
+
return arg.toISOString();
|
|
47
|
+
}
|
|
48
|
+
if (Symbol.toPrimitive in arg) {
|
|
49
|
+
const toPrimitive = arg[Symbol.toPrimitive];
|
|
50
|
+
if (typeof toPrimitive === 'function') {
|
|
51
|
+
return toPrimitive();
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
if (arg instanceof Error) {
|
|
55
|
+
if (nested) {
|
|
56
|
+
return formatError(arg);
|
|
9
57
|
}
|
|
10
|
-
return
|
|
11
|
-
[`arg${idx}`]: obj,
|
|
12
|
-
};
|
|
58
|
+
return arg;
|
|
13
59
|
}
|
|
14
|
-
if (
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
60
|
+
if (isObjectLiteral(arg)) {
|
|
61
|
+
// object literal or directly created by `new Object()`, not subclasses of Object.
|
|
62
|
+
return Object.entries(arg).reduce((acc, [key, value]) => ({
|
|
63
|
+
...acc,
|
|
64
|
+
[key]: formatArg(value, true),
|
|
65
|
+
}), {});
|
|
18
66
|
}
|
|
19
|
-
return
|
|
67
|
+
return Deno.inspect(arg);
|
|
20
68
|
case 'undefined':
|
|
21
|
-
return
|
|
22
|
-
[`arg${idx}`]: undefined,
|
|
23
|
-
};
|
|
69
|
+
return '<undefined>';
|
|
24
70
|
case 'function':
|
|
25
|
-
return
|
|
26
|
-
[`arg${idx}`]: obj.valueOf(),
|
|
27
|
-
};
|
|
71
|
+
return formatFunction(arg);
|
|
28
72
|
default:
|
|
29
|
-
return
|
|
30
|
-
|
|
31
|
-
|
|
73
|
+
return arg;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
function formatArgs(args) {
|
|
77
|
+
if (args.length === 0) {
|
|
78
|
+
return {};
|
|
79
|
+
}
|
|
80
|
+
if (args.length === 1) {
|
|
81
|
+
const formatted = formatArg(args[0]);
|
|
82
|
+
if (formatted instanceof Error) {
|
|
83
|
+
return formatError(formatted);
|
|
84
|
+
}
|
|
85
|
+
if (typeof formatted === 'object' && formatted !== null) {
|
|
86
|
+
return formatted;
|
|
87
|
+
}
|
|
88
|
+
return {
|
|
89
|
+
arg0: formatted,
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
const errors = [];
|
|
93
|
+
const others = [];
|
|
94
|
+
for (const arg of args) {
|
|
95
|
+
const formatted = formatArgs([arg]);
|
|
96
|
+
if (arg instanceof Error) {
|
|
97
|
+
// formatted isn't an instanceof Error after `formatArgs()`, so check original `arg`.
|
|
98
|
+
errors.push(formatted);
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
others.push(formatted);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
const othersMerged = others.length === 1
|
|
105
|
+
? others[0]
|
|
106
|
+
: others.reduce((acc, value, idx) => ({
|
|
107
|
+
...acc,
|
|
108
|
+
[`arg${idx}`]: value,
|
|
109
|
+
}), {});
|
|
110
|
+
if (errors.length === 1) {
|
|
111
|
+
return {
|
|
112
|
+
...othersMerged,
|
|
113
|
+
// if there's only one error, we want to splat 'error', 'cause' and 'stacktrace' over
|
|
114
|
+
// all other merged fields.
|
|
115
|
+
...errors[0],
|
|
116
|
+
};
|
|
32
117
|
}
|
|
118
|
+
return {
|
|
119
|
+
...othersMerged,
|
|
120
|
+
// array of errors.
|
|
121
|
+
errors: errors,
|
|
122
|
+
};
|
|
33
123
|
}
|
|
34
124
|
log.setup({
|
|
35
125
|
handlers: {
|
|
36
126
|
default: new log.ConsoleHandler('DEBUG', {
|
|
127
|
+
useColors: false,
|
|
37
128
|
formatter: (record) => {
|
|
38
129
|
// log.formatters.jsonFormatter bugs me:
|
|
39
130
|
// - time is in unix milliseconds
|
|
@@ -46,12 +137,7 @@ log.setup({
|
|
|
46
137
|
time: record.datetime.toISOString(),
|
|
47
138
|
...(record.loggerName ? { name: record.loggerName } : {}),
|
|
48
139
|
msg: record.msg,
|
|
49
|
-
...(
|
|
50
|
-
? (record.args.reduce((acc, next, idx) => ({
|
|
51
|
-
...acc,
|
|
52
|
-
...(valueOfUnknown(next, idx)),
|
|
53
|
-
}), {}))
|
|
54
|
-
: {}),
|
|
140
|
+
...formatArgs(record.args),
|
|
55
141
|
});
|
|
56
142
|
}
|
|
57
143
|
catch (err) {
|
|
@@ -112,9 +198,17 @@ export class ConsoleLogger {
|
|
|
112
198
|
...fields,
|
|
113
199
|
});
|
|
114
200
|
}
|
|
115
|
-
error(message, fields) {
|
|
201
|
+
error(message, fieldsOrError, fields) {
|
|
202
|
+
if (fieldsOrError instanceof Error) {
|
|
203
|
+
this.log.error(message, fieldsOrError, {
|
|
204
|
+
...this.fields,
|
|
205
|
+
...fields,
|
|
206
|
+
});
|
|
207
|
+
return;
|
|
208
|
+
}
|
|
116
209
|
this.log.error(message, {
|
|
117
210
|
...this.fields,
|
|
211
|
+
...fieldsOrError,
|
|
118
212
|
...fields,
|
|
119
213
|
});
|
|
120
214
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@versori/run",
|
|
3
|
-
"version": "v0.2.
|
|
3
|
+
"version": "v0.2.1-alpha.0",
|
|
4
4
|
"description": "Versori Run",
|
|
5
5
|
"homepage": "https://github.com/versori/versori-run#readme",
|
|
6
6
|
"repository": {
|
|
@@ -26,9 +26,10 @@
|
|
|
26
26
|
"@bufbuild/protobuf": "^2.2.3",
|
|
27
27
|
"@connectrpc/connect": "^2.0.1",
|
|
28
28
|
"@connectrpc/connect-node": "^2.0.1",
|
|
29
|
+
"@types/express": "*",
|
|
29
30
|
"cors": "^2.8.5",
|
|
30
|
-
"cron": "3.5.0",
|
|
31
31
|
"express": "^4.18.3",
|
|
32
|
+
"express-xml-bodyparser": "^0.3.0",
|
|
32
33
|
"rxjs": "^7.8.1",
|
|
33
34
|
"tweetnacl": "1.0.3"
|
|
34
35
|
},
|
package/{esm/deps/jsr.io/@std/bytes/1.0.5 → script/deps/jsr.io/@std/bytes/1.0.6}/_types.d.ts.map
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_types.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/bytes/1.0.
|
|
1
|
+
{"version":3,"file":"_types.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/bytes/1.0.6/_types.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AAEH,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC"}
|
package/{esm/deps/jsr.io/@std/bytes/1.0.5 → script/deps/jsr.io/@std/bytes/1.0.6}/concat.d.ts
RENAMED
|
@@ -17,5 +17,5 @@ export type { Uint8Array_ };
|
|
|
17
17
|
* assertEquals(concat([a, b]), new Uint8Array([0, 1, 2, 3, 4, 5]));
|
|
18
18
|
* ```
|
|
19
19
|
*/
|
|
20
|
-
export declare function concat(buffers: Uint8Array[]): Uint8Array_;
|
|
20
|
+
export declare function concat(buffers: readonly Uint8Array[]): Uint8Array_;
|
|
21
21
|
//# sourceMappingURL=concat.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"concat.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/bytes/1.0.
|
|
1
|
+
{"version":3,"file":"concat.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/bytes/1.0.6/concat.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,YAAY,EAAE,WAAW,EAAE,CAAC;AAE5B;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,MAAM,CAAC,OAAO,EAAE,SAAS,UAAU,EAAE,GAAG,WAAW,CAalE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copy.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/bytes/1.0.
|
|
1
|
+
{"version":3,"file":"copy.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/bytes/1.0.6/copy.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,SAAI,GAAG,MAAM,CAQzE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"colors.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/fmt/1.0.
|
|
1
|
+
{"version":3,"file":"colors.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/fmt/1.0.8/colors.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
15
15
|
var _Buffer_instances, _Buffer_buf, _Buffer_off, _Buffer_tryGrowByReslice, _Buffer_reslice, _Buffer_grow;
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
exports.Buffer = void 0;
|
|
18
|
-
const copy_js_1 = require("../../bytes/1.0.
|
|
18
|
+
const copy_js_1 = require("../../bytes/1.0.6/copy.js");
|
|
19
19
|
// MIN_READ is the minimum ArrayBuffer size passed to a read call by
|
|
20
20
|
// buffer.ReadFrom. As long as the Buffer has at least MIN_READ bytes beyond
|
|
21
21
|
// what is required to hold the contents of r, readFrom() will not grow the
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.readAll = readAll;
|
|
6
6
|
exports.readAllSync = readAllSync;
|
|
7
|
-
const concat_js_1 = require("../../bytes/1.0.
|
|
7
|
+
const concat_js_1 = require("../../bytes/1.0.6/concat.js");
|
|
8
8
|
const _constants_js_1 = require("./_constants.js");
|
|
9
9
|
/**
|
|
10
10
|
* Read {@linkcode Reader} `r` until EOF (`null`) and resolve to the content as
|
|
@@ -301,5 +301,26 @@ export declare abstract class BaseHandler {
|
|
|
301
301
|
* ```
|
|
302
302
|
*/
|
|
303
303
|
destroy(): void;
|
|
304
|
+
/**
|
|
305
|
+
* Automatically disposes of the handler when instantiated with the `using`
|
|
306
|
+
* keyword by calling the {@linkcode BaseHandler.destroy} method.
|
|
307
|
+
*
|
|
308
|
+
* @example Usage
|
|
309
|
+
* ```ts
|
|
310
|
+
* import { BaseHandler } from "@std/log/base-handler";
|
|
311
|
+
* import { LogRecord } from "@std/log/logger";
|
|
312
|
+
* import { assertInstanceOf } from "@std/assert/instance-of";
|
|
313
|
+
*
|
|
314
|
+
* class MyHandler extends BaseHandler {
|
|
315
|
+
* log(msg: string) {
|
|
316
|
+
* console.log(msg);
|
|
317
|
+
* }
|
|
318
|
+
* }
|
|
319
|
+
*
|
|
320
|
+
* using handler = new MyHandler("INFO");
|
|
321
|
+
* assertInstanceOf(handler, BaseHandler);
|
|
322
|
+
* ```
|
|
323
|
+
*/
|
|
324
|
+
[Symbol.dispose](): void;
|
|
304
325
|
}
|
|
305
326
|
//# sourceMappingURL=base_handler.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base_handler.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/log/0.224.14/base_handler.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,SAAS,EACd,KAAK,QAAQ,EACd,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;AAE/C;;;;;GAKG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,SAAS,EAAE,SAAS,KAAK,MAAM,CAAC;AAIjE,2CAA2C;AAC3C,MAAM,WAAW,kBAAkB;IACjC,2CAA2C;IAC3C,SAAS,CAAC,EAAE,iBAAiB,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,8BAAsB,WAAW;;IAG/B;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,SAAS,EAAE,iBAAiB,CAAC;IAE7B;;;;;OAKG;gBAED,SAAS,EAAE,SAAS,EACpB,OAAO,CAAC,EAAE,kBAAkB;IAQ9B;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,IAAI,KAAK,IAAI,QAAQ,CAEpB;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,IAAI,KAAK,CAAC,KAAK,EAAE,QAAQ,EAGxB;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,IAAI,SAAS,IAAI,SAAS,CAEzB;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,IAAI,SAAS,CAAC,SAAS,EAAE,SAAS,EAGjC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,MAAM,CAAC,SAAS,EAAE,SAAS;IAO3B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,MAAM,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM;IAIpC;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAE/B;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,KAAK;IAEL;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,OAAO;
|
|
1
|
+
{"version":3,"file":"base_handler.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/log/0.224.14/base_handler.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,SAAS,EACd,KAAK,QAAQ,EACd,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;AAE/C;;;;;GAKG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,SAAS,EAAE,SAAS,KAAK,MAAM,CAAC;AAIjE,2CAA2C;AAC3C,MAAM,WAAW,kBAAkB;IACjC,2CAA2C;IAC3C,SAAS,CAAC,EAAE,iBAAiB,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,8BAAsB,WAAW;;IAG/B;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,SAAS,EAAE,iBAAiB,CAAC;IAE7B;;;;;OAKG;gBAED,SAAS,EAAE,SAAS,EACpB,OAAO,CAAC,EAAE,kBAAkB;IAQ9B;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,IAAI,KAAK,IAAI,QAAQ,CAEpB;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,IAAI,KAAK,CAAC,KAAK,EAAE,QAAQ,EAGxB;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,IAAI,SAAS,IAAI,SAAS,CAEzB;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,IAAI,SAAS,CAAC,SAAS,EAAE,SAAS,EAGjC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,MAAM,CAAC,SAAS,EAAE,SAAS;IAO3B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,MAAM,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM;IAIpC;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAE/B;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,KAAK;IAEL;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,OAAO;IAEP;;;;;;;;;;;;;;;;;;;OAmBG;IACH,CAAC,MAAM,CAAC,OAAO,CAAC;CAGjB"}
|
|
@@ -16,7 +16,7 @@ exports.ConsoleHandler = void 0;
|
|
|
16
16
|
// Copyright 2018-2025 the Deno authors. MIT license.
|
|
17
17
|
// This module is browser compatible.
|
|
18
18
|
const levels_js_1 = require("./levels.js");
|
|
19
|
-
const colors_js_1 = require("../../fmt/1.0.
|
|
19
|
+
const colors_js_1 = require("../../fmt/1.0.8/colors.js");
|
|
20
20
|
const base_handler_js_1 = require("./base_handler.js");
|
|
21
21
|
function applyColors(msg, level) {
|
|
22
22
|
switch (level) {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Activation } from '../dsl/http/types.js';
|
|
2
2
|
import { KeyValue, KeyValueProvider, KeyValueScope } from '../kv/KeyValue.js';
|
|
3
3
|
import { Logger } from '../observability/logging/Logger.js';
|
|
4
|
+
import { Credentials } from '../dsl/http/versori/contextcredentials.js';
|
|
4
5
|
export type OnSuccessFn = (ctx: Context<any>) => void;
|
|
5
6
|
export type OnErrorFn = (ctx: Context<any>) => void;
|
|
6
7
|
export type ContextOptions = {
|
|
@@ -9,43 +10,35 @@ export type ContextOptions = {
|
|
|
9
10
|
onError?: OnErrorFn;
|
|
10
11
|
};
|
|
11
12
|
export interface Context<D> {
|
|
12
|
-
log: Logger;
|
|
13
|
-
executionId: string;
|
|
14
|
-
startTime: Date;
|
|
13
|
+
readonly log: Logger;
|
|
14
|
+
readonly executionId: string;
|
|
15
|
+
readonly startTime: Date;
|
|
16
|
+
readonly data: D;
|
|
15
17
|
activation?: Activation;
|
|
16
|
-
data: D;
|
|
17
18
|
/**
|
|
18
19
|
* Opens a key value store for the given scope, defaulting to ':project:' if not provided.
|
|
19
20
|
* @param scope
|
|
20
21
|
*/
|
|
21
22
|
openKv(scope?: KeyValueScope): KeyValue;
|
|
23
|
+
credentials(): Credentials;
|
|
22
24
|
}
|
|
23
|
-
export
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
export declare class ContextImpl<D, Index = void> implements Context<D> {
|
|
26
|
+
#private;
|
|
27
|
+
readonly log: Logger;
|
|
28
|
+
readonly executionId: string;
|
|
29
|
+
readonly startTime: Date;
|
|
30
|
+
readonly data: D;
|
|
27
31
|
idx: Index;
|
|
28
|
-
readonly activation: Activation | undefined;
|
|
29
32
|
readonly kvp: KeyValueProvider;
|
|
30
33
|
readonly options: ContextOptions;
|
|
31
|
-
|
|
32
|
-
}
|
|
33
|
-
export declare class ContextImpl<D, Index = void> implements InternalContext<D, Index> {
|
|
34
|
-
log: Logger;
|
|
35
|
-
executionId: string;
|
|
36
|
-
startTime: Date;
|
|
37
|
-
data: D;
|
|
38
|
-
idx: Index;
|
|
39
|
-
readonly kvp: KeyValueProvider;
|
|
40
|
-
readonly options: ContextOptions;
|
|
41
|
-
constructor(log: Logger, kvp: KeyValueProvider, executionId: string, startTime: Date, data: D, options?: ContextOptions);
|
|
34
|
+
constructor(log: Logger, kvp: KeyValueProvider, creds: Credentials, executionId: string, startTime: Date, data: D, options?: ContextOptions);
|
|
42
35
|
get activation(): Activation | undefined;
|
|
43
|
-
setIndex(idx: number):
|
|
44
|
-
withActivation(activation: Activation):
|
|
45
|
-
withData<D2>(data: D2):
|
|
36
|
+
setIndex(idx: number): ContextImpl<D, number>;
|
|
37
|
+
withActivation(activation: Activation): ContextImpl<D, Index>;
|
|
38
|
+
withData<D2>(data: D2): ContextImpl<D2, Index>;
|
|
46
39
|
openKv(scope?: KeyValueScope): KeyValue;
|
|
40
|
+
credentials(): Credentials;
|
|
47
41
|
destroy(scope: KeyValueScope): Promise<void>;
|
|
48
42
|
[Symbol.toPrimitive](): Record<string, unknown>;
|
|
49
|
-
toJSON(): Record<string, unknown>;
|
|
50
43
|
}
|
|
51
44
|
//# sourceMappingURL=Context.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../../src/src/context/Context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../../src/src/context/Context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AAExE,MAAM,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;AACtD,MAAM,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;AAEpD,MAAM,MAAM,cAAc,GAAG;IACzB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,SAAS,CAAC,EAAE,WAAW,CAAC;IACxB,OAAO,CAAC,EAAE,SAAS,CAAC;CACvB,CAAC;AAEF,MAAM,WAAW,OAAO,CAAC,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IAEjB,UAAU,CAAC,EAAE,UAAU,CAAC;IAExB;;;OAGG;IACH,MAAM,CAAC,KAAK,CAAC,EAAE,aAAa,GAAG,QAAQ,CAAC;IAExC,WAAW,IAAI,WAAW,CAAC;CAC9B;AAED,qBAAa,WAAW,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI,CAAE,YAAW,OAAO,CAAC,CAAC,CAAC;;IAC3D,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IAEjB,GAAG,EAAE,KAAK,CAAC;IAEX,QAAQ,CAAC,GAAG,EAAE,gBAAgB,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;gBAI7B,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,gBAAgB,EACrB,KAAK,EAAE,WAAW,EAClB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,IAAI,EACf,IAAI,EAAE,CAAC,EACP,OAAO,GAAE,cAAmB;IAmBhC,IAAI,UAAU,IAAI,UAAU,GAAG,SAAS,CAEvC;IAED,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAAC,CAAC,EAAE,MAAM,CAAC;IAe7C,cAAc,CAAC,UAAU,EAAE,UAAU,GAAG,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC;IAoB7D,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,WAAW,CAAC,EAAE,EAAE,KAAK,CAAC;IAY9C,MAAM,CAAC,KAAK,GAAE,aAA2B,GAAG,QAAQ;IAepD,WAAW,IAAI,WAAW;IAI1B,OAAO,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAe5C,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAQlD"}
|