@trigger.dev/core 0.0.0-prerelease-20241003205750 → 0.0.0-realtime-20241021152316
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commonjs/v3/apiClient/core.d.ts +1 -1
- package/dist/commonjs/v3/apiClient/core.js.map +1 -1
- package/dist/commonjs/v3/apiClient/index.d.ts +118 -90
- package/dist/commonjs/v3/apiClient/index.js +100 -4
- package/dist/commonjs/v3/apiClient/index.js.map +1 -1
- package/dist/commonjs/v3/apiClient/runStream.d.ts +50 -0
- package/dist/commonjs/v3/apiClient/runStream.js +159 -0
- package/dist/commonjs/v3/apiClient/runStream.js.map +1 -0
- package/dist/commonjs/v3/apiClient/stream.d.ts +9 -0
- package/dist/commonjs/v3/apiClient/stream.js +37 -0
- package/dist/commonjs/v3/apiClient/stream.js.map +1 -0
- package/dist/commonjs/v3/apiClient/types.d.ts +4 -0
- package/dist/commonjs/v3/apiClientManager/index.d.ts +2 -1
- package/dist/commonjs/v3/apiClientManager/index.js +18 -7
- package/dist/commonjs/v3/apiClientManager/index.js.map +1 -1
- package/dist/commonjs/v3/apiClientManager/types.d.ts +7 -0
- package/dist/commonjs/v3/apps/duration.d.ts +1 -0
- package/dist/commonjs/v3/apps/duration.js +51 -0
- package/dist/commonjs/v3/apps/duration.js.map +1 -0
- package/dist/commonjs/v3/apps/friendlyId.d.ts +1 -0
- package/dist/commonjs/v3/apps/friendlyId.js +9 -0
- package/dist/commonjs/v3/apps/friendlyId.js.map +1 -0
- package/dist/commonjs/v3/apps/index.d.ts +2 -0
- package/dist/commonjs/v3/apps/index.js +2 -0
- package/dist/commonjs/v3/apps/index.js.map +1 -1
- package/dist/commonjs/v3/errors.d.ts +18 -2
- package/dist/commonjs/v3/errors.js +154 -23
- package/dist/commonjs/v3/errors.js.map +1 -1
- package/dist/commonjs/v3/index.d.ts +3 -1
- package/dist/commonjs/v3/index.js +6 -3
- package/dist/commonjs/v3/index.js.map +1 -1
- package/dist/commonjs/v3/jwt.d.ts +10 -0
- package/dist/commonjs/v3/jwt.js +34 -0
- package/dist/commonjs/v3/jwt.js.map +1 -0
- package/dist/commonjs/v3/links.d.ts +17 -0
- package/dist/commonjs/v3/links.js +21 -0
- package/dist/commonjs/v3/links.js.map +1 -0
- package/dist/commonjs/v3/otel/index.d.ts +2 -3
- package/dist/commonjs/v3/otel/index.js +15 -21
- package/dist/commonjs/v3/otel/index.js.map +1 -1
- package/dist/commonjs/v3/otel/utils.d.ts +2 -0
- package/dist/commonjs/v3/otel/utils.js +24 -0
- package/dist/commonjs/v3/otel/utils.js.map +1 -0
- package/dist/commonjs/v3/runMetadata/index.d.ts +8 -3
- package/dist/commonjs/v3/runMetadata/index.js +79 -15
- package/dist/commonjs/v3/runMetadata/index.js.map +1 -1
- package/dist/commonjs/v3/schemas/api.d.ts +445 -316
- package/dist/commonjs/v3/schemas/api.js +34 -4
- package/dist/commonjs/v3/schemas/api.js.map +1 -1
- package/dist/commonjs/v3/schemas/build.d.ts +84 -84
- package/dist/commonjs/v3/schemas/common.d.ts +103 -119
- package/dist/commonjs/v3/schemas/common.js +8 -18
- package/dist/commonjs/v3/schemas/common.js.map +1 -1
- package/dist/commonjs/v3/schemas/messages.d.ts +2108 -2102
- package/dist/commonjs/v3/schemas/messages.js +2 -0
- package/dist/commonjs/v3/schemas/messages.js.map +1 -1
- package/dist/commonjs/v3/schemas/resources.d.ts +30 -30
- package/dist/commonjs/v3/schemas/schemas.d.ts +257 -257
- package/dist/commonjs/v3/tracer.js +2 -2
- package/dist/commonjs/v3/types/idempotencyKeys.d.ts +7 -0
- package/dist/commonjs/v3/types/idempotencyKeys.js +3 -0
- package/dist/commonjs/v3/types/idempotencyKeys.js.map +1 -0
- package/dist/commonjs/v3/types/index.d.ts +9 -63
- package/dist/commonjs/v3/types/index.js +2 -0
- package/dist/commonjs/v3/types/index.js.map +1 -1
- package/dist/commonjs/v3/types/schemas.d.ts +44 -0
- package/dist/commonjs/v3/types/schemas.js +41 -0
- package/dist/commonjs/v3/types/schemas.js.map +1 -0
- package/dist/commonjs/v3/types/tasks.d.ts +473 -0
- package/dist/commonjs/v3/types/tasks.js +42 -0
- package/dist/commonjs/v3/types/tasks.js.map +1 -0
- package/dist/commonjs/v3/utils/getEnv.d.ts +1 -0
- package/dist/commonjs/v3/utils/getEnv.js +12 -0
- package/dist/commonjs/v3/utils/getEnv.js.map +1 -1
- package/dist/commonjs/v3/utils/ioSerialization.d.ts +1 -0
- package/dist/commonjs/v3/utils/ioSerialization.js +5 -0
- package/dist/commonjs/v3/utils/ioSerialization.js.map +1 -1
- package/dist/commonjs/v3/utils/safeAsyncLocalStorage.d.ts +1 -0
- package/dist/commonjs/v3/utils/safeAsyncLocalStorage.js +3 -0
- package/dist/commonjs/v3/utils/safeAsyncLocalStorage.js.map +1 -1
- package/dist/commonjs/v3/utils/structuredLogger.d.ts +1 -0
- package/dist/commonjs/v3/utils/structuredLogger.js +10 -4
- package/dist/commonjs/v3/utils/structuredLogger.js.map +1 -1
- package/dist/commonjs/v3/workers/index.d.ts +1 -1
- package/dist/commonjs/v3/workers/index.js +2 -1
- package/dist/commonjs/v3/workers/index.js.map +1 -1
- package/dist/commonjs/v3/workers/taskExecutor.js +14 -1
- package/dist/commonjs/v3/workers/taskExecutor.js.map +1 -1
- package/dist/commonjs/v3/zodNamespace.d.ts +1 -0
- package/dist/commonjs/v3/zodNamespace.js +6 -1
- package/dist/commonjs/v3/zodNamespace.js.map +1 -1
- package/dist/commonjs/v3/zodSocket.d.ts +2 -0
- package/dist/commonjs/v3/zodSocket.js +15 -5
- package/dist/commonjs/v3/zodSocket.js.map +1 -1
- package/dist/esm/v3/apiClient/core.d.ts +1 -1
- package/dist/esm/v3/apiClient/core.js.map +1 -1
- package/dist/esm/v3/apiClient/index.d.ts +118 -90
- package/dist/esm/v3/apiClient/index.js +100 -4
- package/dist/esm/v3/apiClient/index.js.map +1 -1
- package/dist/esm/v3/apiClient/runStream.d.ts +50 -0
- package/dist/esm/v3/apiClient/runStream.js +154 -0
- package/dist/esm/v3/apiClient/runStream.js.map +1 -0
- package/dist/esm/v3/apiClient/stream.d.ts +9 -0
- package/dist/esm/v3/apiClient/stream.js +33 -0
- package/dist/esm/v3/apiClient/stream.js.map +1 -0
- package/dist/esm/v3/apiClient/types.d.ts +4 -0
- package/dist/esm/v3/apiClientManager/index.d.ts +2 -1
- package/dist/esm/v3/apiClientManager/index.js +18 -7
- package/dist/esm/v3/apiClientManager/index.js.map +1 -1
- package/dist/esm/v3/apiClientManager/types.d.ts +7 -0
- package/dist/esm/v3/apps/duration.d.ts +1 -0
- package/dist/esm/v3/apps/duration.js +48 -0
- package/dist/esm/v3/apps/duration.js.map +1 -0
- package/dist/esm/v3/apps/friendlyId.d.ts +1 -0
- package/dist/esm/v3/apps/friendlyId.js +6 -0
- package/dist/esm/v3/apps/friendlyId.js.map +1 -0
- package/dist/esm/v3/apps/index.d.ts +2 -0
- package/dist/esm/v3/apps/index.js +2 -0
- package/dist/esm/v3/apps/index.js.map +1 -1
- package/dist/esm/v3/errors.d.ts +18 -2
- package/dist/esm/v3/errors.js +149 -21
- package/dist/esm/v3/errors.js.map +1 -1
- package/dist/esm/v3/index.d.ts +3 -1
- package/dist/esm/v3/index.js +3 -1
- package/dist/esm/v3/index.js.map +1 -1
- package/dist/esm/v3/jwt.d.ts +10 -0
- package/dist/esm/v3/jwt.js +29 -0
- package/dist/esm/v3/jwt.js.map +1 -0
- package/dist/esm/v3/links.d.ts +17 -0
- package/dist/esm/v3/links.js +18 -0
- package/dist/esm/v3/links.js.map +1 -0
- package/dist/esm/v3/otel/index.d.ts +2 -3
- package/dist/esm/v3/otel/index.js +1 -20
- package/dist/esm/v3/otel/index.js.map +1 -1
- package/dist/esm/v3/otel/utils.d.ts +2 -0
- package/dist/esm/v3/otel/utils.js +21 -0
- package/dist/esm/v3/otel/utils.js.map +1 -0
- package/dist/esm/v3/runMetadata/index.d.ts +8 -3
- package/dist/esm/v3/runMetadata/index.js +79 -15
- package/dist/esm/v3/runMetadata/index.js.map +1 -1
- package/dist/esm/v3/schemas/api.d.ts +445 -316
- package/dist/esm/v3/schemas/api.js +33 -3
- package/dist/esm/v3/schemas/api.js.map +1 -1
- package/dist/esm/v3/schemas/build.d.ts +84 -84
- package/dist/esm/v3/schemas/common.d.ts +103 -119
- package/dist/esm/v3/schemas/common.js +7 -17
- package/dist/esm/v3/schemas/common.js.map +1 -1
- package/dist/esm/v3/schemas/messages.d.ts +2108 -2102
- package/dist/esm/v3/schemas/messages.js +3 -1
- package/dist/esm/v3/schemas/messages.js.map +1 -1
- package/dist/esm/v3/schemas/resources.d.ts +30 -30
- package/dist/esm/v3/schemas/schemas.d.ts +257 -257
- package/dist/esm/v3/tracer.js +1 -1
- package/dist/esm/v3/types/idempotencyKeys.d.ts +7 -0
- package/dist/esm/v3/types/idempotencyKeys.js +2 -0
- package/dist/esm/v3/types/idempotencyKeys.js.map +1 -0
- package/dist/esm/v3/types/index.d.ts +9 -63
- package/dist/esm/v3/types/index.js +2 -0
- package/dist/esm/v3/types/index.js.map +1 -1
- package/dist/esm/v3/types/schemas.d.ts +44 -0
- package/dist/esm/v3/types/schemas.js +38 -0
- package/dist/esm/v3/types/schemas.js.map +1 -0
- package/dist/esm/v3/types/tasks.d.ts +473 -0
- package/dist/esm/v3/types/tasks.js +37 -0
- package/dist/esm/v3/types/tasks.js.map +1 -0
- package/dist/esm/v3/utils/getEnv.d.ts +1 -0
- package/dist/esm/v3/utils/getEnv.js +11 -0
- package/dist/esm/v3/utils/getEnv.js.map +1 -1
- package/dist/esm/v3/utils/ioSerialization.d.ts +1 -0
- package/dist/esm/v3/utils/ioSerialization.js +4 -0
- package/dist/esm/v3/utils/ioSerialization.js.map +1 -1
- package/dist/esm/v3/utils/safeAsyncLocalStorage.d.ts +1 -0
- package/dist/esm/v3/utils/safeAsyncLocalStorage.js +3 -0
- package/dist/esm/v3/utils/safeAsyncLocalStorage.js.map +1 -1
- package/dist/esm/v3/utils/structuredLogger.d.ts +1 -0
- package/dist/esm/v3/utils/structuredLogger.js +10 -4
- package/dist/esm/v3/utils/structuredLogger.js.map +1 -1
- package/dist/esm/v3/workers/index.d.ts +1 -1
- package/dist/esm/v3/workers/index.js +1 -1
- package/dist/esm/v3/workers/index.js.map +1 -1
- package/dist/esm/v3/workers/taskExecutor.js +15 -2
- package/dist/esm/v3/workers/taskExecutor.js.map +1 -1
- package/dist/esm/v3/zodNamespace.d.ts +1 -0
- package/dist/esm/v3/zodNamespace.js +6 -1
- package/dist/esm/v3/zodNamespace.js.map +1 -1
- package/dist/esm/v3/zodSocket.d.ts +2 -0
- package/dist/esm/v3/zodSocket.js +15 -5
- package/dist/esm/v3/zodSocket.js.map +1 -1
- package/package.json +36 -1
|
@@ -2,6 +2,8 @@ import { DeserializedJson } from "../../schemas/json.js";
|
|
|
2
2
|
import { ApiRequestOptions } from "../zodfetch.js";
|
|
3
3
|
export declare class RunMetadataAPI {
|
|
4
4
|
private static _instance?;
|
|
5
|
+
private flushTimeoutId;
|
|
6
|
+
private hasChanges;
|
|
5
7
|
private constructor();
|
|
6
8
|
static getInstance(): RunMetadataAPI;
|
|
7
9
|
get store(): Record<string, DeserializedJson> | undefined;
|
|
@@ -9,7 +11,10 @@ export declare class RunMetadataAPI {
|
|
|
9
11
|
enterWithMetadata(metadata: Record<string, DeserializedJson>): void;
|
|
10
12
|
current(): Record<string, DeserializedJson> | undefined;
|
|
11
13
|
getKey(key: string): DeserializedJson | undefined;
|
|
12
|
-
setKey(key: string, value: DeserializedJson
|
|
13
|
-
deleteKey(key: string
|
|
14
|
-
update(metadata: Record<string, DeserializedJson
|
|
14
|
+
setKey(key: string, value: DeserializedJson): void;
|
|
15
|
+
deleteKey(key: string): void;
|
|
16
|
+
update(metadata: Record<string, DeserializedJson>): void;
|
|
17
|
+
flush(requestOptions?: ApiRequestOptions): Promise<void>;
|
|
18
|
+
startPeriodicFlush(intervalMs?: number): void;
|
|
19
|
+
stopPeriodicFlush(): void;
|
|
15
20
|
}
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.RunMetadataAPI = void 0;
|
|
4
|
+
const lite_1 = require("dequal/lite");
|
|
4
5
|
const apiClientManager_api_js_1 = require("../apiClientManager-api.js");
|
|
5
6
|
const task_context_api_js_1 = require("../task-context-api.js");
|
|
6
7
|
const globals_js_1 = require("../utils/globals.js");
|
|
8
|
+
const path_1 = require("@jsonhero/path");
|
|
7
9
|
const API_NAME = "run-metadata";
|
|
8
10
|
class RunMetadataAPI {
|
|
9
11
|
static _instance;
|
|
12
|
+
flushTimeoutId = null;
|
|
13
|
+
hasChanges = false;
|
|
10
14
|
constructor() { }
|
|
11
15
|
static getInstance() {
|
|
12
16
|
if (!this._instance) {
|
|
@@ -29,38 +33,98 @@ class RunMetadataAPI {
|
|
|
29
33
|
getKey(key) {
|
|
30
34
|
return this.store?.[key];
|
|
31
35
|
}
|
|
32
|
-
|
|
36
|
+
setKey(key, value) {
|
|
33
37
|
const runId = task_context_api_js_1.taskContext.ctx?.run.id;
|
|
34
38
|
if (!runId) {
|
|
35
39
|
return;
|
|
36
40
|
}
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
41
|
+
let nextStore = this.store
|
|
42
|
+
? structuredClone(this.store)
|
|
43
|
+
: undefined;
|
|
44
|
+
if (key.startsWith("$.")) {
|
|
45
|
+
const path = new path_1.JSONHeroPath(key);
|
|
46
|
+
path.set(nextStore, value);
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
nextStore = {
|
|
50
|
+
...(nextStore ?? {}),
|
|
51
|
+
[key]: value,
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
if (!nextStore) {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
if (!(0, lite_1.dequal)(this.store, nextStore)) {
|
|
58
|
+
this.hasChanges = true;
|
|
59
|
+
}
|
|
60
|
+
this.store = nextStore;
|
|
44
61
|
}
|
|
45
|
-
|
|
62
|
+
deleteKey(key) {
|
|
46
63
|
const runId = task_context_api_js_1.taskContext.ctx?.run.id;
|
|
47
64
|
if (!runId) {
|
|
48
65
|
return;
|
|
49
66
|
}
|
|
50
|
-
const apiClient = apiClientManager_api_js_1.apiClientManager.clientOrThrow();
|
|
51
67
|
const nextStore = { ...(this.store ?? {}) };
|
|
52
68
|
delete nextStore[key];
|
|
53
|
-
|
|
54
|
-
|
|
69
|
+
if (!(0, lite_1.dequal)(this.store, nextStore)) {
|
|
70
|
+
this.hasChanges = true;
|
|
71
|
+
}
|
|
72
|
+
this.store = nextStore;
|
|
73
|
+
}
|
|
74
|
+
update(metadata) {
|
|
75
|
+
const runId = task_context_api_js_1.taskContext.ctx?.run.id;
|
|
76
|
+
if (!runId) {
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
if (!(0, lite_1.dequal)(this.store, metadata)) {
|
|
80
|
+
this.hasChanges = true;
|
|
81
|
+
}
|
|
82
|
+
this.store = metadata;
|
|
55
83
|
}
|
|
56
|
-
async
|
|
84
|
+
async flush(requestOptions) {
|
|
57
85
|
const runId = task_context_api_js_1.taskContext.ctx?.run.id;
|
|
58
86
|
if (!runId) {
|
|
59
87
|
return;
|
|
60
88
|
}
|
|
89
|
+
if (!this.store) {
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
if (!this.hasChanges) {
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
61
95
|
const apiClient = apiClientManager_api_js_1.apiClientManager.clientOrThrow();
|
|
62
|
-
|
|
63
|
-
|
|
96
|
+
try {
|
|
97
|
+
this.hasChanges = false;
|
|
98
|
+
await apiClient.updateRunMetadata(runId, { metadata: this.store }, requestOptions);
|
|
99
|
+
}
|
|
100
|
+
catch (error) {
|
|
101
|
+
this.hasChanges = true;
|
|
102
|
+
throw error;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
startPeriodicFlush(intervalMs = 1000) {
|
|
106
|
+
const periodicFlush = async (intervalMs) => {
|
|
107
|
+
try {
|
|
108
|
+
await this.flush();
|
|
109
|
+
}
|
|
110
|
+
catch (error) {
|
|
111
|
+
console.error("Failed to flush metadata", error);
|
|
112
|
+
throw error;
|
|
113
|
+
}
|
|
114
|
+
finally {
|
|
115
|
+
scheduleNext();
|
|
116
|
+
}
|
|
117
|
+
};
|
|
118
|
+
const scheduleNext = () => {
|
|
119
|
+
this.flushTimeoutId = setTimeout(() => periodicFlush(intervalMs), intervalMs);
|
|
120
|
+
};
|
|
121
|
+
scheduleNext();
|
|
122
|
+
}
|
|
123
|
+
stopPeriodicFlush() {
|
|
124
|
+
if (this.flushTimeoutId) {
|
|
125
|
+
clearTimeout(this.flushTimeoutId);
|
|
126
|
+
this.flushTimeoutId = null;
|
|
127
|
+
}
|
|
64
128
|
}
|
|
65
129
|
}
|
|
66
130
|
exports.RunMetadataAPI = RunMetadataAPI;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/v3/runMetadata/index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/v3/runMetadata/index.ts"],"names":[],"mappings":"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"}
|