@upstash/workflow 1.2.0-demo-rc.1 → 1.2.1
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/README.md +1 -0
- package/astro.d.mts +2 -2
- package/astro.d.ts +2 -2
- package/astro.js +72 -69
- package/astro.mjs +1 -1
- package/{chunk-NZCQPOPR.mjs → chunk-THS5AX2D.mjs} +128 -257
- package/cloudflare.d.mts +2 -2
- package/cloudflare.d.ts +2 -2
- package/cloudflare.js +72 -69
- package/cloudflare.mjs +1 -1
- package/express.d.mts +2 -2
- package/express.d.ts +2 -2
- package/express.js +72 -69
- package/express.mjs +1 -1
- package/h3.d.mts +2 -2
- package/h3.d.ts +2 -2
- package/h3.js +76 -73
- package/h3.mjs +5 -5
- package/hono.d.mts +2 -2
- package/hono.d.ts +2 -2
- package/hono.js +73 -265
- package/hono.mjs +2 -7
- package/index.d.mts +229 -138
- package/index.d.ts +229 -138
- package/index.js +275 -454
- package/index.mjs +144 -196
- package/nextjs.d.mts +2 -2
- package/nextjs.d.ts +2 -2
- package/nextjs.js +72 -263
- package/nextjs.mjs +1 -5
- package/package.json +1 -1
- package/react-router.d.mts +38 -0
- package/react-router.d.ts +38 -0
- package/react-router.js +3881 -0
- package/react-router.mjs +45 -0
- package/{serve-many-Bi8XaOyq.d.ts → serve-many-B-fe7bh7.d.ts} +1 -1
- package/{serve-many-CppVPJrh.d.mts → serve-many-C6sa_DxN.d.mts} +1 -1
- package/solidjs.d.mts +1 -1
- package/solidjs.d.ts +1 -1
- package/solidjs.js +72 -69
- package/solidjs.mjs +1 -1
- package/svelte.d.mts +2 -2
- package/svelte.d.ts +2 -2
- package/svelte.js +72 -69
- package/svelte.mjs +1 -1
- package/tanstack.d.mts +2 -2
- package/tanstack.d.ts +2 -2
- package/tanstack.js +72 -69
- package/tanstack.mjs +1 -1
- package/{types-CUwgrpCM.d.ts → types-B2S08hRU.d.mts} +18 -3
- package/{types-CUwgrpCM.d.mts → types-B2S08hRU.d.ts} +18 -3
package/h3.js
CHANGED
|
@@ -208,8 +208,7 @@ function assertMethod(event, expected, allowHead) {
|
|
|
208
208
|
});
|
|
209
209
|
}
|
|
210
210
|
}
|
|
211
|
-
var RawBodySymbol = Symbol.for("h3RawBody");
|
|
212
|
-
var ParsedBodySymbol = Symbol.for("h3ParsedBody");
|
|
211
|
+
var RawBodySymbol = /* @__PURE__ */ Symbol.for("h3RawBody");
|
|
213
212
|
var PayloadMethods$1 = ["PATCH", "POST", "PUT", "DELETE"];
|
|
214
213
|
function readRawBody(event, encoding = "utf8") {
|
|
215
214
|
assertMethod(event, PayloadMethods$1);
|
|
@@ -259,7 +258,9 @@ function readRawBody(event, encoding = "utf8") {
|
|
|
259
258
|
});
|
|
260
259
|
return encoding ? promise2.then((buff) => buff.toString(encoding)) : promise2;
|
|
261
260
|
}
|
|
262
|
-
if (!Number.parseInt(event.node.req.headers["content-length"] || "") &&
|
|
261
|
+
if (!Number.parseInt(event.node.req.headers["content-length"] || "") && !/\bchunked\b/i.test(
|
|
262
|
+
String(event.node.req.headers["transfer-encoding"] ?? "")
|
|
263
|
+
)) {
|
|
263
264
|
return Promise.resolve(void 0);
|
|
264
265
|
}
|
|
265
266
|
const promise = event.node.req[RawBodySymbol] = new Promise(
|
|
@@ -293,7 +294,6 @@ function sanitizeStatusCode(statusCode, defaultStatusCode = 200) {
|
|
|
293
294
|
}
|
|
294
295
|
return statusCode;
|
|
295
296
|
}
|
|
296
|
-
var getSessionPromise = Symbol("getSession");
|
|
297
297
|
function defineEventHandler(handler) {
|
|
298
298
|
if (typeof handler === "function") {
|
|
299
299
|
handler.__is_handler__ = true;
|
|
@@ -435,9 +435,10 @@ function isInstanceOf(v, ctor) {
|
|
|
435
435
|
}
|
|
436
436
|
|
|
437
437
|
// src/client/utils.ts
|
|
438
|
-
var makeNotifyRequest = async (requester, eventId, eventData) => {
|
|
438
|
+
var makeNotifyRequest = async (requester, eventId, eventData, workflowRunId) => {
|
|
439
|
+
const path = workflowRunId ? ["v2", "notify", workflowRunId, eventId] : ["v2", "notify", eventId];
|
|
439
440
|
const result = await requester.request({
|
|
440
|
-
path
|
|
441
|
+
path,
|
|
441
442
|
method: "POST",
|
|
442
443
|
body: typeof eventData === "string" ? eventData : JSON.stringify(eventData)
|
|
443
444
|
});
|
|
@@ -495,6 +496,7 @@ var getSteps = async (requester, workflowRunId, messageId, dispatchDebug) => {
|
|
|
495
496
|
var WORKFLOW_ID_HEADER = "Upstash-Workflow-RunId";
|
|
496
497
|
var WORKFLOW_INIT_HEADER = "Upstash-Workflow-Init";
|
|
497
498
|
var WORKFLOW_URL_HEADER = "Upstash-Workflow-Url";
|
|
499
|
+
var WORKFLOW_CREATED_AT_HEADER = "Upstash-Workflow-CreatedAt";
|
|
498
500
|
var WORKFLOW_FAILURE_HEADER = "Upstash-Workflow-Is-Failure";
|
|
499
501
|
var WORKFLOW_FAILURE_CALLBACK_HEADER = "Upstash-Workflow-Failure-Callback";
|
|
500
502
|
var WORKFLOW_FEATURE_HEADER = "Upstash-Feature-Set";
|
|
@@ -1030,6 +1032,7 @@ var triggerFirstInvocation = async (params) => {
|
|
|
1030
1032
|
retries,
|
|
1031
1033
|
retryDelay,
|
|
1032
1034
|
flowControl,
|
|
1035
|
+
redact,
|
|
1033
1036
|
unknownSdk
|
|
1034
1037
|
}) => {
|
|
1035
1038
|
const { headers } = getHeaders({
|
|
@@ -1066,7 +1069,8 @@ var triggerFirstInvocation = async (params) => {
|
|
|
1066
1069
|
body,
|
|
1067
1070
|
url: workflowContext.url,
|
|
1068
1071
|
delay,
|
|
1069
|
-
notBefore
|
|
1072
|
+
notBefore,
|
|
1073
|
+
redact
|
|
1070
1074
|
};
|
|
1071
1075
|
}
|
|
1072
1076
|
);
|
|
@@ -1225,7 +1229,6 @@ ${atob(callbackMessage.body ?? "")}`
|
|
|
1225
1229
|
})}`
|
|
1226
1230
|
);
|
|
1227
1231
|
}
|
|
1228
|
-
const userHeaders = recreateUserHeaders(request.headers);
|
|
1229
1232
|
const { headers: requestHeaders } = getHeaders({
|
|
1230
1233
|
initHeaderValue: "false",
|
|
1231
1234
|
workflowConfig: {
|
|
@@ -1233,7 +1236,6 @@ ${atob(callbackMessage.body ?? "")}`
|
|
|
1233
1236
|
workflowUrl,
|
|
1234
1237
|
telemetry: telemetry2
|
|
1235
1238
|
},
|
|
1236
|
-
userHeaders,
|
|
1237
1239
|
invokeCount: Number(invokeCount)
|
|
1238
1240
|
});
|
|
1239
1241
|
const callResponse = {
|
|
@@ -1382,7 +1384,6 @@ var BaseLazyStep = class _BaseLazyStep {
|
|
|
1382
1384
|
useJSONContent: false,
|
|
1383
1385
|
telemetry: telemetry2
|
|
1384
1386
|
},
|
|
1385
|
-
userHeaders: context.headers,
|
|
1386
1387
|
invokeCount,
|
|
1387
1388
|
stepInfo: {
|
|
1388
1389
|
step,
|
|
@@ -1740,9 +1741,9 @@ var LazyWaitEventStep = class extends BaseLazyStep {
|
|
|
1740
1741
|
};
|
|
1741
1742
|
var LazyNotifyStep = class extends LazyFunctionStep {
|
|
1742
1743
|
stepType = "Notify";
|
|
1743
|
-
constructor(context, stepName, eventId, eventData, requester) {
|
|
1744
|
+
constructor(context, stepName, eventId, eventData, requester, workflowRunId) {
|
|
1744
1745
|
super(context, stepName, async () => {
|
|
1745
|
-
const notifyResponse = await makeNotifyRequest(requester, eventId, eventData);
|
|
1746
|
+
const notifyResponse = await makeNotifyRequest(requester, eventId, eventData, workflowRunId);
|
|
1746
1747
|
return {
|
|
1747
1748
|
eventId,
|
|
1748
1749
|
eventData,
|
|
@@ -1812,7 +1813,6 @@ var LazyInvokeStep = class extends BaseLazyStep {
|
|
|
1812
1813
|
telemetry: telemetry2,
|
|
1813
1814
|
useJSONContent: false
|
|
1814
1815
|
},
|
|
1815
|
-
userHeaders: context.headers,
|
|
1816
1816
|
invokeCount
|
|
1817
1817
|
});
|
|
1818
1818
|
context.qstashClient.http.headers?.forEach((value, key) => {
|
|
@@ -1825,6 +1825,7 @@ var LazyInvokeStep = class extends BaseLazyStep {
|
|
|
1825
1825
|
Object.entries(invokerHeaders).map((pairs) => [pairs[0], [pairs[1]]])
|
|
1826
1826
|
),
|
|
1827
1827
|
workflowRunId: context.workflowRunId,
|
|
1828
|
+
workflowRunCreatedAt: context.workflowRunCreatedAt,
|
|
1828
1829
|
workflowUrl: context.url,
|
|
1829
1830
|
step
|
|
1830
1831
|
};
|
|
@@ -1920,12 +1921,14 @@ var LazyWaitForWebhookStep = class extends LazyWaitEventStep {
|
|
|
1920
1921
|
const parsedEventData = BaseLazyStep.tryParsing(eventData);
|
|
1921
1922
|
const body = parsedEventData.body;
|
|
1922
1923
|
const parsedBody = typeof body === "string" ? decodeBase64(body) : void 0;
|
|
1924
|
+
const methodUpper = parsedEventData.method.toUpperCase();
|
|
1925
|
+
const canHaveBody = methodUpper !== "GET" && methodUpper !== "HEAD";
|
|
1923
1926
|
const request = new Request(
|
|
1924
1927
|
`${parsedEventData.proto}://${parsedEventData.host}${parsedEventData.url}`,
|
|
1925
1928
|
{
|
|
1926
1929
|
method: parsedEventData.method,
|
|
1927
1930
|
headers: parsedEventData.header,
|
|
1928
|
-
body: parsedBody
|
|
1931
|
+
body: canHaveBody ? parsedBody : void 0
|
|
1929
1932
|
}
|
|
1930
1933
|
);
|
|
1931
1934
|
return {
|
|
@@ -2059,6 +2062,9 @@ var WorkflowHeaders = class {
|
|
|
2059
2062
|
}
|
|
2060
2063
|
}
|
|
2061
2064
|
addUserHeaders() {
|
|
2065
|
+
if (!this.userHeaders) {
|
|
2066
|
+
return;
|
|
2067
|
+
}
|
|
2062
2068
|
for (const [key, value] of this.userHeaders.entries()) {
|
|
2063
2069
|
const forwardKey = `Forward-${key}`;
|
|
2064
2070
|
this.headers.workflowHeaders[forwardKey] = value;
|
|
@@ -2165,7 +2171,6 @@ var submitParallelSteps = async ({
|
|
|
2165
2171
|
workflowUrl: context.url,
|
|
2166
2172
|
telemetry: telemetry2
|
|
2167
2173
|
},
|
|
2168
|
-
userHeaders: context.headers,
|
|
2169
2174
|
invokeCount
|
|
2170
2175
|
});
|
|
2171
2176
|
return {
|
|
@@ -2418,7 +2423,7 @@ var AutoExecutor = class _AutoExecutor {
|
|
|
2418
2423
|
});
|
|
2419
2424
|
throw new WorkflowAbort(parallelStep.stepName, resultStep);
|
|
2420
2425
|
} catch (error) {
|
|
2421
|
-
if (isInstanceOf(error, WorkflowAbort) || isInstanceOf(error, import_qstash5.QstashError) && error.status === 400) {
|
|
2426
|
+
if (isInstanceOf(error, WorkflowAbort) || isInstanceOf(error, import_qstash5.QstashError) && error.status === 400 || isInstanceOf(error, import_qstash5.QstashError) && error.status === 412) {
|
|
2422
2427
|
throw error;
|
|
2423
2428
|
}
|
|
2424
2429
|
throw new WorkflowError(
|
|
@@ -2892,6 +2897,7 @@ var MiddlewareManager = class {
|
|
|
2892
2897
|
};
|
|
2893
2898
|
|
|
2894
2899
|
// src/context/context.ts
|
|
2900
|
+
var import_qstash9 = require("@upstash/qstash");
|
|
2895
2901
|
var WorkflowContext = class {
|
|
2896
2902
|
executor;
|
|
2897
2903
|
steps;
|
|
@@ -2918,6 +2924,10 @@ var WorkflowContext = class {
|
|
|
2918
2924
|
* Run id of the workflow
|
|
2919
2925
|
*/
|
|
2920
2926
|
workflowRunId;
|
|
2927
|
+
/**
|
|
2928
|
+
* Creation time of the workflow run
|
|
2929
|
+
*/
|
|
2930
|
+
workflowRunCreatedAt;
|
|
2921
2931
|
/**
|
|
2922
2932
|
* URL of the workflow
|
|
2923
2933
|
*
|
|
@@ -3009,6 +3019,7 @@ var WorkflowContext = class {
|
|
|
3009
3019
|
constructor({
|
|
3010
3020
|
qstashClient,
|
|
3011
3021
|
workflowRunId,
|
|
3022
|
+
workflowRunCreatedAt,
|
|
3012
3023
|
headers,
|
|
3013
3024
|
steps,
|
|
3014
3025
|
url,
|
|
@@ -3021,6 +3032,7 @@ var WorkflowContext = class {
|
|
|
3021
3032
|
}) {
|
|
3022
3033
|
this.qstashClient = qstashClient;
|
|
3023
3034
|
this.workflowRunId = workflowRunId;
|
|
3035
|
+
this.workflowRunCreatedAt = workflowRunCreatedAt;
|
|
3024
3036
|
this.steps = steps;
|
|
3025
3037
|
this.url = url;
|
|
3026
3038
|
this.headers = headers;
|
|
@@ -3195,14 +3207,23 @@ var WorkflowContext = class {
|
|
|
3195
3207
|
* a notifyResponse field which contains a list of `Waiter` objects, each corresponding
|
|
3196
3208
|
* to a notified workflow run.
|
|
3197
3209
|
*
|
|
3210
|
+
* Optionally, you can pass a workflowRunId to enable lookback functionality:
|
|
3211
|
+
*
|
|
3212
|
+
* ```ts
|
|
3213
|
+
* const { eventId, eventData, notifyResponse } = await context.notify(
|
|
3214
|
+
* "notify step", "event-id", "event-data", "wfr_123"
|
|
3215
|
+
* );
|
|
3216
|
+
* ```
|
|
3217
|
+
*
|
|
3198
3218
|
* @param stepName
|
|
3199
3219
|
* @param eventId event id to notify
|
|
3200
3220
|
* @param eventData event data to notify with
|
|
3221
|
+
* @param workflowRunId optional workflow run id for lookback support
|
|
3201
3222
|
* @returns notify response which has event id, event data and list of waiters which were notified
|
|
3202
3223
|
*/
|
|
3203
|
-
async notify(stepName, eventId, eventData) {
|
|
3224
|
+
async notify(stepName, eventId, eventData, workflowRunId) {
|
|
3204
3225
|
return await this.addStep(
|
|
3205
|
-
new LazyNotifyStep(this, stepName, eventId, eventData, this.qstashClient.http)
|
|
3226
|
+
new LazyNotifyStep(this, stepName, eventId, eventData, this.qstashClient.http, workflowRunId)
|
|
3206
3227
|
);
|
|
3207
3228
|
}
|
|
3208
3229
|
async invoke(stepName, settings) {
|
|
@@ -3230,7 +3251,14 @@ var WorkflowContext = class {
|
|
|
3230
3251
|
* DisabledWorkflowContext.
|
|
3231
3252
|
*/
|
|
3232
3253
|
async addStep(step) {
|
|
3233
|
-
|
|
3254
|
+
try {
|
|
3255
|
+
return await this.executor.addStep(step);
|
|
3256
|
+
} catch (error) {
|
|
3257
|
+
if (isInstanceOf(error, import_qstash9.QstashError) && error.status === 412) {
|
|
3258
|
+
throw new WorkflowNonRetryableError(error.message);
|
|
3259
|
+
}
|
|
3260
|
+
throw error;
|
|
3261
|
+
}
|
|
3234
3262
|
}
|
|
3235
3263
|
get api() {
|
|
3236
3264
|
return new WorkflowApi({
|
|
@@ -3239,23 +3267,8 @@ var WorkflowContext = class {
|
|
|
3239
3267
|
}
|
|
3240
3268
|
};
|
|
3241
3269
|
|
|
3242
|
-
// src/dev-server.ts
|
|
3243
|
-
var import_path = require("path");
|
|
3244
|
-
var DEV_QSTASH_TOKEN = "eyJVc2VySUQiOiJkZWZhdWx0VXNlciIsIlBhc3N3b3JkIjoiZGVmYXVsdFBhc3N3b3JkIn0=";
|
|
3245
|
-
var DEV_QSTASH_CURRENT_SIGNING_KEY = "sig_7kYjw48mhY7kAjqNGcy6cr29RJ6r";
|
|
3246
|
-
var DEV_QSTASH_NEXT_SIGNING_KEY = "sig_5ZB6DVzB1wjE8S6rZ7eenA8Pdnhs";
|
|
3247
|
-
function getDevCredentials(port) {
|
|
3248
|
-
return {
|
|
3249
|
-
QSTASH_URL: `http://localhost:${port}`,
|
|
3250
|
-
QSTASH_TOKEN: DEV_QSTASH_TOKEN,
|
|
3251
|
-
QSTASH_CURRENT_SIGNING_KEY: DEV_QSTASH_CURRENT_SIGNING_KEY,
|
|
3252
|
-
QSTASH_NEXT_SIGNING_KEY: DEV_QSTASH_NEXT_SIGNING_KEY
|
|
3253
|
-
};
|
|
3254
|
-
}
|
|
3255
|
-
var CACHE_DIR = (0, import_path.join)("node_modules", ".cache", "upstash");
|
|
3256
|
-
|
|
3257
3270
|
// src/serve/authorization.ts
|
|
3258
|
-
var
|
|
3271
|
+
var import_qstash10 = require("@upstash/qstash");
|
|
3259
3272
|
var DisabledWorkflowContext = class _DisabledWorkflowContext extends WorkflowContext {
|
|
3260
3273
|
static disabledMessage = "disabled-qstash-worklfow-run";
|
|
3261
3274
|
disabled = true;
|
|
@@ -3287,11 +3300,12 @@ var DisabledWorkflowContext = class _DisabledWorkflowContext extends WorkflowCon
|
|
|
3287
3300
|
*/
|
|
3288
3301
|
static async tryAuthentication(routeFunction, context) {
|
|
3289
3302
|
const disabledContext = new _DisabledWorkflowContext({
|
|
3290
|
-
qstashClient: new
|
|
3303
|
+
qstashClient: new import_qstash10.Client({
|
|
3291
3304
|
baseUrl: "disabled-client",
|
|
3292
3305
|
token: "disabled-client"
|
|
3293
3306
|
}),
|
|
3294
3307
|
workflowRunId: context.workflowRunId,
|
|
3308
|
+
workflowRunCreatedAt: context.workflowRunCreatedAt,
|
|
3295
3309
|
headers: context.headers,
|
|
3296
3310
|
steps: [],
|
|
3297
3311
|
url: context.url,
|
|
@@ -3493,7 +3507,9 @@ var handleFailure = async ({
|
|
|
3493
3507
|
return ok({ result: "failure-function-undefined" });
|
|
3494
3508
|
}
|
|
3495
3509
|
try {
|
|
3496
|
-
const { status, header, body, url, sourceBody, workflowRunId } = JSON.parse(
|
|
3510
|
+
const { status, header, body, url, sourceBody, workflowRunId, workflowCreatedAt } = JSON.parse(
|
|
3511
|
+
requestPayload
|
|
3512
|
+
);
|
|
3497
3513
|
const decodedBody = body ? decodeBase64(body) : "{}";
|
|
3498
3514
|
let errorMessage = "";
|
|
3499
3515
|
let failStack = "";
|
|
@@ -3522,6 +3538,7 @@ var handleFailure = async ({
|
|
|
3522
3538
|
telemetry: void 0,
|
|
3523
3539
|
// not going to make requests in authentication check
|
|
3524
3540
|
label: userHeaders.get(WORKFLOW_LABEL_HEADER) ?? void 0,
|
|
3541
|
+
workflowRunCreatedAt: workflowCreatedAt,
|
|
3525
3542
|
middlewareManager: void 0
|
|
3526
3543
|
});
|
|
3527
3544
|
const authCheck = await DisabledWorkflowContext.tryAuthentication(
|
|
@@ -3550,7 +3567,7 @@ var handleFailure = async ({
|
|
|
3550
3567
|
};
|
|
3551
3568
|
|
|
3552
3569
|
// src/serve/multi-region/handlers.ts
|
|
3553
|
-
var
|
|
3570
|
+
var import_qstash11 = require("@upstash/qstash");
|
|
3554
3571
|
|
|
3555
3572
|
// src/serve/multi-region/utils.ts
|
|
3556
3573
|
var VALID_REGIONS = ["EU_CENTRAL_1", "US_EAST_1"];
|
|
@@ -3615,7 +3632,7 @@ var getHandlersForRequest = (qstashHandlers, regionHeader, isFirstInvocation) =>
|
|
|
3615
3632
|
};
|
|
3616
3633
|
var createRegionalHandler = (environment, receiverConfig, region, clientOptions) => {
|
|
3617
3634
|
const clientEnv = readClientEnvironmentVariables(environment, region);
|
|
3618
|
-
const client = new
|
|
3635
|
+
const client = new import_qstash11.Client({
|
|
3619
3636
|
...clientOptions,
|
|
3620
3637
|
baseUrl: clientEnv.QSTASH_URL,
|
|
3621
3638
|
token: clientEnv.QSTASH_TOKEN
|
|
@@ -3665,7 +3682,7 @@ var getQStashHandlers = ({
|
|
|
3665
3682
|
return {
|
|
3666
3683
|
mode: "single-region",
|
|
3667
3684
|
handlers: {
|
|
3668
|
-
client: qstashClientOption && "http" in qstashClientOption ? qstashClientOption : new
|
|
3685
|
+
client: qstashClientOption && "http" in qstashClientOption ? qstashClientOption : new import_qstash11.Client({
|
|
3669
3686
|
...qstashClientOption,
|
|
3670
3687
|
baseUrl: environment.QSTASH_URL,
|
|
3671
3688
|
token: environment.QSTASH_TOKEN
|
|
@@ -3681,7 +3698,7 @@ var getReceiver = (environment, receiverConfig, region) => {
|
|
|
3681
3698
|
return void 0;
|
|
3682
3699
|
}
|
|
3683
3700
|
const receiverEnv = readReceiverEnvironmentVariables(environment, region);
|
|
3684
|
-
return receiverEnv.QSTASH_CURRENT_SIGNING_KEY && receiverEnv.QSTASH_NEXT_SIGNING_KEY ? new
|
|
3701
|
+
return receiverEnv.QSTASH_CURRENT_SIGNING_KEY && receiverEnv.QSTASH_NEXT_SIGNING_KEY ? new import_qstash11.Receiver({
|
|
3685
3702
|
currentSigningKey: receiverEnv.QSTASH_CURRENT_SIGNING_KEY,
|
|
3686
3703
|
nextSigningKey: receiverEnv.QSTASH_NEXT_SIGNING_KEY
|
|
3687
3704
|
}) : void 0;
|
|
@@ -3907,33 +3924,19 @@ var AUTH_FAIL_MESSAGE = `Failed to authenticate Workflow request. If this is une
|
|
|
3907
3924
|
|
|
3908
3925
|
// src/serve/index.ts
|
|
3909
3926
|
var serveBase = (routeFunction, telemetry2, options, internalOptions) => {
|
|
3910
|
-
const
|
|
3911
|
-
|
|
3912
|
-
|
|
3913
|
-
|
|
3914
|
-
|
|
3915
|
-
|
|
3916
|
-
|
|
3917
|
-
|
|
3918
|
-
|
|
3919
|
-
|
|
3920
|
-
|
|
3921
|
-
const
|
|
3922
|
-
options,
|
|
3923
|
-
internalOptions
|
|
3924
|
-
);
|
|
3927
|
+
const {
|
|
3928
|
+
initialPayloadParser,
|
|
3929
|
+
url,
|
|
3930
|
+
failureFunction,
|
|
3931
|
+
baseUrl,
|
|
3932
|
+
env,
|
|
3933
|
+
disableTelemetry,
|
|
3934
|
+
middlewares,
|
|
3935
|
+
internal
|
|
3936
|
+
} = processOptions(options, internalOptions);
|
|
3937
|
+
telemetry2 = disableTelemetry ? void 0 : telemetry2;
|
|
3938
|
+
const { generateResponse: responseGenerator, useJSONContent } = internal;
|
|
3925
3939
|
const handler = async (request, middlewareManager) => {
|
|
3926
|
-
const {
|
|
3927
|
-
initialPayloadParser,
|
|
3928
|
-
url,
|
|
3929
|
-
failureFunction,
|
|
3930
|
-
baseUrl,
|
|
3931
|
-
env,
|
|
3932
|
-
disableTelemetry: optDisableTelemetry,
|
|
3933
|
-
internal
|
|
3934
|
-
} = resolvedOptions;
|
|
3935
|
-
const currentTelemetry = optDisableTelemetry ? void 0 : telemetry2;
|
|
3936
|
-
const { generateResponse: responseGenerator, useJSONContent } = internal;
|
|
3937
3940
|
await middlewareManager.dispatchDebug("onInfo", {
|
|
3938
3941
|
info: `Received request for workflow execution.`
|
|
3939
3942
|
});
|
|
@@ -4013,6 +4016,7 @@ var serveBase = (routeFunction, telemetry2, options, internalOptions) => {
|
|
|
4013
4016
|
}
|
|
4014
4017
|
const invokeCount = Number(request.headers.get(WORKFLOW_INVOKE_COUNT_HEADER) ?? "0");
|
|
4015
4018
|
const label = request.headers.get(WORKFLOW_LABEL_HEADER) ?? void 0;
|
|
4019
|
+
const workflowRunCreatedAt = request.headers.get(WORKFLOW_CREATED_AT_HEADER);
|
|
4016
4020
|
const workflowContext = new WorkflowContext({
|
|
4017
4021
|
qstashClient: regionalClient,
|
|
4018
4022
|
workflowRunId,
|
|
@@ -4021,9 +4025,10 @@ var serveBase = (routeFunction, telemetry2, options, internalOptions) => {
|
|
|
4021
4025
|
steps,
|
|
4022
4026
|
url: workflowUrl,
|
|
4023
4027
|
env,
|
|
4024
|
-
telemetry:
|
|
4028
|
+
telemetry: telemetry2,
|
|
4025
4029
|
invokeCount,
|
|
4026
4030
|
label,
|
|
4031
|
+
workflowRunCreatedAt: Number(workflowRunCreatedAt),
|
|
4027
4032
|
middlewareManager
|
|
4028
4033
|
});
|
|
4029
4034
|
const authCheck = await DisabledWorkflowContext.tryAuthentication(
|
|
@@ -4047,7 +4052,7 @@ var serveBase = (routeFunction, telemetry2, options, internalOptions) => {
|
|
|
4047
4052
|
requestPayload: rawInitialPayload,
|
|
4048
4053
|
client: regionalClient,
|
|
4049
4054
|
workflowUrl,
|
|
4050
|
-
telemetry:
|
|
4055
|
+
telemetry: telemetry2,
|
|
4051
4056
|
middlewareManager
|
|
4052
4057
|
});
|
|
4053
4058
|
if (callReturnCheck.isErr()) {
|
|
@@ -4056,7 +4061,7 @@ var serveBase = (routeFunction, telemetry2, options, internalOptions) => {
|
|
|
4056
4061
|
const result = isFirstInvocation ? await triggerFirstInvocation({
|
|
4057
4062
|
workflowContext,
|
|
4058
4063
|
useJSONContent,
|
|
4059
|
-
telemetry:
|
|
4064
|
+
telemetry: telemetry2,
|
|
4060
4065
|
invokeCount,
|
|
4061
4066
|
middlewareManager,
|
|
4062
4067
|
unknownSdk
|
|
@@ -4124,9 +4129,7 @@ var serveBase = (routeFunction, telemetry2, options, internalOptions) => {
|
|
|
4124
4129
|
);
|
|
4125
4130
|
};
|
|
4126
4131
|
const safeHandler = async (request) => {
|
|
4127
|
-
const middlewareManager = new MiddlewareManager(
|
|
4128
|
-
resolvedOptions.middlewares
|
|
4129
|
-
);
|
|
4132
|
+
const middlewareManager = new MiddlewareManager(middlewares);
|
|
4130
4133
|
try {
|
|
4131
4134
|
return await handler(request, middlewareManager);
|
|
4132
4135
|
} catch (error) {
|
package/h3.mjs
CHANGED
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
SDK_TELEMETRY,
|
|
3
3
|
serveBase,
|
|
4
4
|
serveManyBase
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-THS5AX2D.mjs";
|
|
6
6
|
|
|
7
7
|
// node_modules/defu/dist/defu.mjs
|
|
8
8
|
function isPlainObject(value) {
|
|
@@ -186,8 +186,7 @@ function assertMethod(event, expected, allowHead) {
|
|
|
186
186
|
});
|
|
187
187
|
}
|
|
188
188
|
}
|
|
189
|
-
var RawBodySymbol = Symbol.for("h3RawBody");
|
|
190
|
-
var ParsedBodySymbol = Symbol.for("h3ParsedBody");
|
|
189
|
+
var RawBodySymbol = /* @__PURE__ */ Symbol.for("h3RawBody");
|
|
191
190
|
var PayloadMethods$1 = ["PATCH", "POST", "PUT", "DELETE"];
|
|
192
191
|
function readRawBody(event, encoding = "utf8") {
|
|
193
192
|
assertMethod(event, PayloadMethods$1);
|
|
@@ -237,7 +236,9 @@ function readRawBody(event, encoding = "utf8") {
|
|
|
237
236
|
});
|
|
238
237
|
return encoding ? promise2.then((buff) => buff.toString(encoding)) : promise2;
|
|
239
238
|
}
|
|
240
|
-
if (!Number.parseInt(event.node.req.headers["content-length"] || "") &&
|
|
239
|
+
if (!Number.parseInt(event.node.req.headers["content-length"] || "") && !/\bchunked\b/i.test(
|
|
240
|
+
String(event.node.req.headers["transfer-encoding"] ?? "")
|
|
241
|
+
)) {
|
|
241
242
|
return Promise.resolve(void 0);
|
|
242
243
|
}
|
|
243
244
|
const promise = event.node.req[RawBodySymbol] = new Promise(
|
|
@@ -271,7 +272,6 @@ function sanitizeStatusCode(statusCode, defaultStatusCode = 200) {
|
|
|
271
272
|
}
|
|
272
273
|
return statusCode;
|
|
273
274
|
}
|
|
274
|
-
var getSessionPromise = Symbol("getSession");
|
|
275
275
|
function defineEventHandler(handler) {
|
|
276
276
|
if (typeof handler === "function") {
|
|
277
277
|
handler.__is_handler__ = true;
|
package/hono.d.mts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Context } from 'hono';
|
|
2
|
-
import { c as RouteFunction, d as WorkflowServeOptions,
|
|
2
|
+
import { c as RouteFunction, d as WorkflowServeOptions, I as InvokableWorkflow } from './types-B2S08hRU.mjs';
|
|
3
3
|
import { Variables } from 'hono/types';
|
|
4
|
-
import { s as serveManyBase } from './serve-many-
|
|
4
|
+
import { s as serveManyBase } from './serve-many-C6sa_DxN.mjs';
|
|
5
5
|
import '@upstash/qstash';
|
|
6
6
|
import 'zod';
|
|
7
7
|
|
package/hono.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Context } from 'hono';
|
|
2
|
-
import { c as RouteFunction, d as WorkflowServeOptions,
|
|
2
|
+
import { c as RouteFunction, d as WorkflowServeOptions, I as InvokableWorkflow } from './types-B2S08hRU.js';
|
|
3
3
|
import { Variables } from 'hono/types';
|
|
4
|
-
import { s as serveManyBase } from './serve-many-
|
|
4
|
+
import { s as serveManyBase } from './serve-many-B-fe7bh7.js';
|
|
5
5
|
import '@upstash/qstash';
|
|
6
6
|
import 'zod';
|
|
7
7
|
|