@upstash/workflow 0.2.19 → 0.2.21

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/index.js CHANGED
@@ -105,7 +105,7 @@ var WORKFLOW_PROTOCOL_VERSION_HEADER = "Upstash-Workflow-Sdk-Version";
105
105
  var DEFAULT_CONTENT_TYPE = "application/json";
106
106
  var NO_CONCURRENCY = 1;
107
107
  var DEFAULT_RETRIES = 3;
108
- var VERSION = "v0.2.18";
108
+ var VERSION = "v0.2.21";
109
109
  var SDK_TELEMETRY = `@upstash/workflow@${VERSION}`;
110
110
  var TELEMETRY_HEADER_SDK = "Upstash-Telemetry-Sdk";
111
111
  var TELEMETRY_HEADER_FRAMEWORK = "Upstash-Telemetry-Framework";
@@ -156,7 +156,8 @@ var WorkflowNonRetryableError = class extends WorkflowAbort {
156
156
  var formatWorkflowError = (error) => {
157
157
  return error instanceof Error ? {
158
158
  error: error.name,
159
- message: error.message
159
+ message: error.message,
160
+ stack: error.stack
160
161
  } : {
161
162
  error: "Error",
162
163
  message: `An error occured while executing workflow: '${typeof error === "string" ? error : JSON.stringify(error)}'`
@@ -627,7 +628,15 @@ var triggerFirstInvocation = async (params) => {
627
628
  const firstInvocationParams = Array.isArray(params) ? params : [params];
628
629
  const workflowContextClient = firstInvocationParams[0].workflowContext.qstashClient;
629
630
  const invocationBatch = firstInvocationParams.map(
630
- ({ workflowContext, useJSONContent, telemetry, invokeCount, delay, notBefore }) => {
631
+ ({
632
+ workflowContext,
633
+ useJSONContent,
634
+ telemetry,
635
+ invokeCount,
636
+ delay,
637
+ notBefore,
638
+ keepTriggerConfig
639
+ }) => {
631
640
  const { headers } = getHeaders({
632
641
  initHeaderValue: "true",
633
642
  workflowConfig: {
@@ -641,7 +650,8 @@ var triggerFirstInvocation = async (params) => {
641
650
  useJSONContent: useJSONContent ?? false
642
651
  },
643
652
  invokeCount: invokeCount ?? 0,
644
- userHeaders: workflowContext.headers
653
+ userHeaders: workflowContext.headers,
654
+ keepTriggerConfig
645
655
  });
646
656
  if (workflowContext.headers.get("content-type")) {
647
657
  headers["content-type"] = workflowContext.headers.get("content-type");
@@ -1147,9 +1157,10 @@ var LazyCallStep = class _LazyCallStep extends BaseLazyStep {
1147
1157
  retryDelay;
1148
1158
  timeout;
1149
1159
  flowControl;
1160
+ stringifyBody;
1150
1161
  stepType = "Call";
1151
1162
  allowUndefinedOut = false;
1152
- constructor(stepName, url, method, body, headers, retries, retryDelay, timeout, flowControl) {
1163
+ constructor(stepName, url, method, body, headers, retries, retryDelay, timeout, flowControl, stringifyBody) {
1153
1164
  super(stepName);
1154
1165
  this.url = url;
1155
1166
  this.method = method;
@@ -1159,6 +1170,7 @@ var LazyCallStep = class _LazyCallStep extends BaseLazyStep {
1159
1170
  this.retryDelay = retryDelay;
1160
1171
  this.timeout = timeout;
1161
1172
  this.flowControl = flowControl;
1173
+ this.stringifyBody = stringifyBody;
1162
1174
  }
1163
1175
  getPlanStep(concurrent, targetStep) {
1164
1176
  return {
@@ -1268,10 +1280,22 @@ var LazyCallStep = class _LazyCallStep extends BaseLazyStep {
1268
1280
  };
1269
1281
  }
1270
1282
  async submitStep({ context, headers }) {
1283
+ let callBody;
1284
+ if (this.stringifyBody) {
1285
+ callBody = JSON.stringify(this.body);
1286
+ } else {
1287
+ if (typeof this.body === "string") {
1288
+ callBody = this.body;
1289
+ } else {
1290
+ throw new WorkflowError(
1291
+ "When stringifyBody is false, body must be a string. Please check the body type of your call step."
1292
+ );
1293
+ }
1294
+ }
1271
1295
  return await context.qstashClient.batch([
1272
1296
  {
1273
1297
  headers,
1274
- body: JSON.stringify(this.body),
1298
+ body: callBody,
1275
1299
  method: this.method,
1276
1300
  url: this.url,
1277
1301
  retries: DEFAULT_RETRIES === this.retries ? void 0 : this.retries,
@@ -1406,7 +1430,8 @@ var LazyInvokeStep = class extends BaseLazyStep {
1406
1430
  workflowRunId,
1407
1431
  retries,
1408
1432
  retryDelay,
1409
- flowControl
1433
+ flowControl,
1434
+ stringifyBody = true
1410
1435
  }) {
1411
1436
  super(stepName);
1412
1437
  this.params = {
@@ -1416,7 +1441,8 @@ var LazyInvokeStep = class extends BaseLazyStep {
1416
1441
  workflowRunId: getWorkflowRunId(workflowRunId),
1417
1442
  retries,
1418
1443
  retryDelay,
1419
- flowControl
1444
+ flowControl,
1445
+ stringifyBody
1420
1446
  };
1421
1447
  const { workflowId } = workflow;
1422
1448
  if (!workflowId) {
@@ -1469,8 +1495,20 @@ var LazyInvokeStep = class extends BaseLazyStep {
1469
1495
  invokeCount
1470
1496
  });
1471
1497
  invokerHeaders["Upstash-Workflow-Runid"] = context.workflowRunId;
1498
+ let invokeBody;
1499
+ if (this.params.stringifyBody) {
1500
+ invokeBody = JSON.stringify(this.params.body);
1501
+ } else {
1502
+ if (typeof this.params.body === "string") {
1503
+ invokeBody = this.params.body;
1504
+ } else {
1505
+ throw new WorkflowError(
1506
+ "When stringifyBody is false, body must be a string. Please check the body type of your invoke step."
1507
+ );
1508
+ }
1509
+ }
1472
1510
  const request = {
1473
- body: JSON.stringify(this.params.body),
1511
+ body: invokeBody,
1474
1512
  headers: Object.fromEntries(
1475
1513
  Object.entries(invokerHeaders).map((pairs) => [pairs[0], [pairs[1]]])
1476
1514
  ),
@@ -1550,12 +1588,14 @@ var WorkflowHeaders = class {
1550
1588
  initHeaderValue;
1551
1589
  stepInfo;
1552
1590
  headers;
1591
+ keepTriggerConfig;
1553
1592
  constructor({
1554
1593
  userHeaders,
1555
1594
  workflowConfig,
1556
1595
  invokeCount,
1557
1596
  initHeaderValue,
1558
- stepInfo
1597
+ stepInfo,
1598
+ keepTriggerConfig
1559
1599
  }) {
1560
1600
  this.userHeaders = userHeaders;
1561
1601
  this.workflowConfig = workflowConfig;
@@ -1567,6 +1607,7 @@ var WorkflowHeaders = class {
1567
1607
  workflowHeaders: {},
1568
1608
  failureHeaders: {}
1569
1609
  };
1610
+ this.keepTriggerConfig = keepTriggerConfig;
1570
1611
  }
1571
1612
  getHeaders() {
1572
1613
  this.addBaseHeaders();
@@ -1585,7 +1626,7 @@ var WorkflowHeaders = class {
1585
1626
  [WORKFLOW_INIT_HEADER]: this.initHeaderValue,
1586
1627
  [WORKFLOW_ID_HEADER]: this.workflowConfig.workflowRunId,
1587
1628
  [WORKFLOW_URL_HEADER]: this.workflowConfig.workflowUrl,
1588
- [WORKFLOW_FEATURE_HEADER]: "LazyFetch,InitialBody,WF_DetectTrigger",
1629
+ [WORKFLOW_FEATURE_HEADER]: "LazyFetch,InitialBody,WF_DetectTrigger" + (this.keepTriggerConfig ? ",WF_TriggerOnConfig" : ""),
1589
1630
  [WORKFLOW_PROTOCOL_VERSION_HEADER]: WORKFLOW_PROTOCOL_VERSION,
1590
1631
  ...this.workflowConfig.telemetry ? getTelemetryHeaders(this.workflowConfig.telemetry) : {},
1591
1632
  ...this.workflowConfig.telemetry && this.stepInfo?.lazyStep instanceof LazyCallStep && this.stepInfo.lazyStep.headers[AGENT_NAME_HEADER] ? { [TELEMETRY_HEADER_AGENT]: "true" } : {}
@@ -2878,7 +2919,8 @@ var WorkflowContext = class {
2878
2919
  settings.retries || 0,
2879
2920
  settings.retryDelay,
2880
2921
  settings.timeout,
2881
- settings.flowControl ?? settings.workflow.options.flowControl
2922
+ settings.flowControl ?? settings.workflow.options.flowControl,
2923
+ settings.stringifyBody ?? true
2882
2924
  );
2883
2925
  } else {
2884
2926
  const {
@@ -2889,7 +2931,8 @@ var WorkflowContext = class {
2889
2931
  retries = 0,
2890
2932
  retryDelay,
2891
2933
  timeout,
2892
- flowControl
2934
+ flowControl,
2935
+ stringifyBody = true
2893
2936
  } = settings;
2894
2937
  callStep = new LazyCallStep(
2895
2938
  stepName,
@@ -2900,7 +2943,8 @@ var WorkflowContext = class {
2900
2943
  retries,
2901
2944
  retryDelay,
2902
2945
  timeout,
2903
- flowControl
2946
+ flowControl,
2947
+ stringifyBody
2904
2948
  );
2905
2949
  }
2906
2950
  return await this.addStep(callStep);
@@ -3264,11 +3308,15 @@ var handleFailure = async (request, requestPayload, qstashClient, initialPayload
3264
3308
  const { status, header, body, url, sourceBody, workflowRunId } = JSON.parse(requestPayload);
3265
3309
  const decodedBody = body ? decodeBase64(body) : "{}";
3266
3310
  let errorMessage = "";
3311
+ let failStack = "";
3267
3312
  try {
3268
3313
  const errorPayload = JSON.parse(decodedBody);
3269
3314
  if (errorPayload.message) {
3270
3315
  errorMessage = errorPayload.message;
3271
3316
  }
3317
+ if (errorPayload.stack) {
3318
+ failStack = errorPayload.stack;
3319
+ }
3272
3320
  } catch {
3273
3321
  }
3274
3322
  if (!errorMessage) {
@@ -3306,7 +3354,8 @@ var handleFailure = async (request, requestPayload, qstashClient, initialPayload
3306
3354
  context: workflowContext,
3307
3355
  failStatus: status,
3308
3356
  failResponse: errorMessage,
3309
- failHeaders: header
3357
+ failHeaders: header,
3358
+ failStack
3310
3359
  });
3311
3360
  return ok({ result: "is-failure-callback", response: failureResponse });
3312
3361
  } catch (error) {
@@ -3880,7 +3929,8 @@ var Client4 = class {
3880
3929
  workflowContext: context,
3881
3930
  telemetry: { sdk: SDK_TELEMETRY },
3882
3931
  delay: option.delay,
3883
- notBefore: option.notBefore
3932
+ notBefore: option.notBefore,
3933
+ keepTriggerConfig: option.keepTriggerConfig
3884
3934
  };
3885
3935
  });
3886
3936
  const result = await triggerFirstInvocation(invocations);
package/index.mjs CHANGED
@@ -14,7 +14,7 @@ import {
14
14
  prepareFlowControl,
15
15
  serve,
16
16
  triggerFirstInvocation
17
- } from "./chunk-37XOXDLZ.mjs";
17
+ } from "./chunk-NQDNC5P4.mjs";
18
18
 
19
19
  // src/client/index.ts
20
20
  import { Client as QStashClient } from "@upstash/qstash";
@@ -266,7 +266,8 @@ var Client = class {
266
266
  workflowContext: context,
267
267
  telemetry: { sdk: SDK_TELEMETRY },
268
268
  delay: option.delay,
269
- notBefore: option.notBefore
269
+ notBefore: option.notBefore,
270
+ keepTriggerConfig: option.keepTriggerConfig
270
271
  };
271
272
  });
272
273
  const result = await triggerFirstInvocation(invocations);
package/nextjs.d.mts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { NextApiHandler, NextApiRequest, NextApiResponse } from 'next';
2
- import { R as RouteFunction, n as PublicServeOptions, x as InvokableWorkflow } from './types-B7_5AkKQ.mjs';
3
- import { s as serveManyBase } from './serve-many-CEUYWQvV.mjs';
2
+ import { R as RouteFunction, n as PublicServeOptions, y as InvokableWorkflow } from './types-Q3dM0UlR.mjs';
3
+ import { s as serveManyBase } from './serve-many-BNusWYgt.mjs';
4
4
  import '@upstash/qstash';
5
5
  import 'zod';
6
6
  import 'ai';
package/nextjs.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { NextApiHandler, NextApiRequest, NextApiResponse } from 'next';
2
- import { R as RouteFunction, n as PublicServeOptions, x as InvokableWorkflow } from './types-B7_5AkKQ.js';
3
- import { s as serveManyBase } from './serve-many-BObe3pdI.js';
2
+ import { R as RouteFunction, n as PublicServeOptions, y as InvokableWorkflow } from './types-Q3dM0UlR.js';
3
+ import { s as serveManyBase } from './serve-many-CXqQP3RI.js';
4
4
  import '@upstash/qstash';
5
5
  import 'zod';
6
6
  import 'ai';
package/nextjs.js CHANGED
@@ -95,7 +95,7 @@ var WORKFLOW_PROTOCOL_VERSION_HEADER = "Upstash-Workflow-Sdk-Version";
95
95
  var DEFAULT_CONTENT_TYPE = "application/json";
96
96
  var NO_CONCURRENCY = 1;
97
97
  var DEFAULT_RETRIES = 3;
98
- var VERSION = "v0.2.18";
98
+ var VERSION = "v0.2.21";
99
99
  var SDK_TELEMETRY = `@upstash/workflow@${VERSION}`;
100
100
  var TELEMETRY_HEADER_SDK = "Upstash-Telemetry-Sdk";
101
101
  var TELEMETRY_HEADER_FRAMEWORK = "Upstash-Telemetry-Framework";
@@ -146,7 +146,8 @@ var WorkflowNonRetryableError = class extends WorkflowAbort {
146
146
  var formatWorkflowError = (error) => {
147
147
  return error instanceof Error ? {
148
148
  error: error.name,
149
- message: error.message
149
+ message: error.message,
150
+ stack: error.stack
150
151
  } : {
151
152
  error: "Error",
152
153
  message: `An error occured while executing workflow: '${typeof error === "string" ? error : JSON.stringify(error)}'`
@@ -617,7 +618,15 @@ var triggerFirstInvocation = async (params) => {
617
618
  const firstInvocationParams = Array.isArray(params) ? params : [params];
618
619
  const workflowContextClient = firstInvocationParams[0].workflowContext.qstashClient;
619
620
  const invocationBatch = firstInvocationParams.map(
620
- ({ workflowContext, useJSONContent, telemetry, invokeCount, delay, notBefore }) => {
621
+ ({
622
+ workflowContext,
623
+ useJSONContent,
624
+ telemetry,
625
+ invokeCount,
626
+ delay,
627
+ notBefore,
628
+ keepTriggerConfig
629
+ }) => {
621
630
  const { headers } = getHeaders({
622
631
  initHeaderValue: "true",
623
632
  workflowConfig: {
@@ -631,7 +640,8 @@ var triggerFirstInvocation = async (params) => {
631
640
  useJSONContent: useJSONContent ?? false
632
641
  },
633
642
  invokeCount: invokeCount ?? 0,
634
- userHeaders: workflowContext.headers
643
+ userHeaders: workflowContext.headers,
644
+ keepTriggerConfig
635
645
  });
636
646
  if (workflowContext.headers.get("content-type")) {
637
647
  headers["content-type"] = workflowContext.headers.get("content-type");
@@ -1137,9 +1147,10 @@ var LazyCallStep = class _LazyCallStep extends BaseLazyStep {
1137
1147
  retryDelay;
1138
1148
  timeout;
1139
1149
  flowControl;
1150
+ stringifyBody;
1140
1151
  stepType = "Call";
1141
1152
  allowUndefinedOut = false;
1142
- constructor(stepName, url, method, body, headers, retries, retryDelay, timeout, flowControl) {
1153
+ constructor(stepName, url, method, body, headers, retries, retryDelay, timeout, flowControl, stringifyBody) {
1143
1154
  super(stepName);
1144
1155
  this.url = url;
1145
1156
  this.method = method;
@@ -1149,6 +1160,7 @@ var LazyCallStep = class _LazyCallStep extends BaseLazyStep {
1149
1160
  this.retryDelay = retryDelay;
1150
1161
  this.timeout = timeout;
1151
1162
  this.flowControl = flowControl;
1163
+ this.stringifyBody = stringifyBody;
1152
1164
  }
1153
1165
  getPlanStep(concurrent, targetStep) {
1154
1166
  return {
@@ -1258,10 +1270,22 @@ var LazyCallStep = class _LazyCallStep extends BaseLazyStep {
1258
1270
  };
1259
1271
  }
1260
1272
  async submitStep({ context, headers }) {
1273
+ let callBody;
1274
+ if (this.stringifyBody) {
1275
+ callBody = JSON.stringify(this.body);
1276
+ } else {
1277
+ if (typeof this.body === "string") {
1278
+ callBody = this.body;
1279
+ } else {
1280
+ throw new WorkflowError(
1281
+ "When stringifyBody is false, body must be a string. Please check the body type of your call step."
1282
+ );
1283
+ }
1284
+ }
1261
1285
  return await context.qstashClient.batch([
1262
1286
  {
1263
1287
  headers,
1264
- body: JSON.stringify(this.body),
1288
+ body: callBody,
1265
1289
  method: this.method,
1266
1290
  url: this.url,
1267
1291
  retries: DEFAULT_RETRIES === this.retries ? void 0 : this.retries,
@@ -1396,7 +1420,8 @@ var LazyInvokeStep = class extends BaseLazyStep {
1396
1420
  workflowRunId,
1397
1421
  retries,
1398
1422
  retryDelay,
1399
- flowControl
1423
+ flowControl,
1424
+ stringifyBody = true
1400
1425
  }) {
1401
1426
  super(stepName);
1402
1427
  this.params = {
@@ -1406,7 +1431,8 @@ var LazyInvokeStep = class extends BaseLazyStep {
1406
1431
  workflowRunId: getWorkflowRunId(workflowRunId),
1407
1432
  retries,
1408
1433
  retryDelay,
1409
- flowControl
1434
+ flowControl,
1435
+ stringifyBody
1410
1436
  };
1411
1437
  const { workflowId } = workflow;
1412
1438
  if (!workflowId) {
@@ -1459,8 +1485,20 @@ var LazyInvokeStep = class extends BaseLazyStep {
1459
1485
  invokeCount
1460
1486
  });
1461
1487
  invokerHeaders["Upstash-Workflow-Runid"] = context.workflowRunId;
1488
+ let invokeBody;
1489
+ if (this.params.stringifyBody) {
1490
+ invokeBody = JSON.stringify(this.params.body);
1491
+ } else {
1492
+ if (typeof this.params.body === "string") {
1493
+ invokeBody = this.params.body;
1494
+ } else {
1495
+ throw new WorkflowError(
1496
+ "When stringifyBody is false, body must be a string. Please check the body type of your invoke step."
1497
+ );
1498
+ }
1499
+ }
1462
1500
  const request = {
1463
- body: JSON.stringify(this.params.body),
1501
+ body: invokeBody,
1464
1502
  headers: Object.fromEntries(
1465
1503
  Object.entries(invokerHeaders).map((pairs) => [pairs[0], [pairs[1]]])
1466
1504
  ),
@@ -1540,12 +1578,14 @@ var WorkflowHeaders = class {
1540
1578
  initHeaderValue;
1541
1579
  stepInfo;
1542
1580
  headers;
1581
+ keepTriggerConfig;
1543
1582
  constructor({
1544
1583
  userHeaders,
1545
1584
  workflowConfig,
1546
1585
  invokeCount,
1547
1586
  initHeaderValue,
1548
- stepInfo
1587
+ stepInfo,
1588
+ keepTriggerConfig
1549
1589
  }) {
1550
1590
  this.userHeaders = userHeaders;
1551
1591
  this.workflowConfig = workflowConfig;
@@ -1557,6 +1597,7 @@ var WorkflowHeaders = class {
1557
1597
  workflowHeaders: {},
1558
1598
  failureHeaders: {}
1559
1599
  };
1600
+ this.keepTriggerConfig = keepTriggerConfig;
1560
1601
  }
1561
1602
  getHeaders() {
1562
1603
  this.addBaseHeaders();
@@ -1575,7 +1616,7 @@ var WorkflowHeaders = class {
1575
1616
  [WORKFLOW_INIT_HEADER]: this.initHeaderValue,
1576
1617
  [WORKFLOW_ID_HEADER]: this.workflowConfig.workflowRunId,
1577
1618
  [WORKFLOW_URL_HEADER]: this.workflowConfig.workflowUrl,
1578
- [WORKFLOW_FEATURE_HEADER]: "LazyFetch,InitialBody,WF_DetectTrigger",
1619
+ [WORKFLOW_FEATURE_HEADER]: "LazyFetch,InitialBody,WF_DetectTrigger" + (this.keepTriggerConfig ? ",WF_TriggerOnConfig" : ""),
1579
1620
  [WORKFLOW_PROTOCOL_VERSION_HEADER]: WORKFLOW_PROTOCOL_VERSION,
1580
1621
  ...this.workflowConfig.telemetry ? getTelemetryHeaders(this.workflowConfig.telemetry) : {},
1581
1622
  ...this.workflowConfig.telemetry && this.stepInfo?.lazyStep instanceof LazyCallStep && this.stepInfo.lazyStep.headers[AGENT_NAME_HEADER] ? { [TELEMETRY_HEADER_AGENT]: "true" } : {}
@@ -2904,7 +2945,8 @@ var WorkflowContext = class {
2904
2945
  settings.retries || 0,
2905
2946
  settings.retryDelay,
2906
2947
  settings.timeout,
2907
- settings.flowControl ?? settings.workflow.options.flowControl
2948
+ settings.flowControl ?? settings.workflow.options.flowControl,
2949
+ settings.stringifyBody ?? true
2908
2950
  );
2909
2951
  } else {
2910
2952
  const {
@@ -2915,7 +2957,8 @@ var WorkflowContext = class {
2915
2957
  retries = 0,
2916
2958
  retryDelay,
2917
2959
  timeout,
2918
- flowControl
2960
+ flowControl,
2961
+ stringifyBody = true
2919
2962
  } = settings;
2920
2963
  callStep = new LazyCallStep(
2921
2964
  stepName,
@@ -2926,7 +2969,8 @@ var WorkflowContext = class {
2926
2969
  retries,
2927
2970
  retryDelay,
2928
2971
  timeout,
2929
- flowControl
2972
+ flowControl,
2973
+ stringifyBody
2930
2974
  );
2931
2975
  }
2932
2976
  return await this.addStep(callStep);
@@ -3290,11 +3334,15 @@ var handleFailure = async (request, requestPayload, qstashClient, initialPayload
3290
3334
  const { status, header, body, url, sourceBody, workflowRunId } = JSON.parse(requestPayload);
3291
3335
  const decodedBody = body ? decodeBase64(body) : "{}";
3292
3336
  let errorMessage = "";
3337
+ let failStack = "";
3293
3338
  try {
3294
3339
  const errorPayload = JSON.parse(decodedBody);
3295
3340
  if (errorPayload.message) {
3296
3341
  errorMessage = errorPayload.message;
3297
3342
  }
3343
+ if (errorPayload.stack) {
3344
+ failStack = errorPayload.stack;
3345
+ }
3298
3346
  } catch {
3299
3347
  }
3300
3348
  if (!errorMessage) {
@@ -3332,7 +3380,8 @@ var handleFailure = async (request, requestPayload, qstashClient, initialPayload
3332
3380
  context: workflowContext,
3333
3381
  failStatus: status,
3334
3382
  failResponse: errorMessage,
3335
- failHeaders: header
3383
+ failHeaders: header,
3384
+ failStack
3336
3385
  });
3337
3386
  return ok({ result: "is-failure-callback", response: failureResponse });
3338
3387
  } catch (error) {
package/nextjs.mjs CHANGED
@@ -2,7 +2,7 @@ import {
2
2
  SDK_TELEMETRY,
3
3
  serveBase,
4
4
  serveManyBase
5
- } from "./chunk-37XOXDLZ.mjs";
5
+ } from "./chunk-NQDNC5P4.mjs";
6
6
 
7
7
  // platforms/nextjs.ts
8
8
  var appTelemetry = {
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name":"@upstash/workflow","version":"v0.2.19","description":"Durable, Reliable and Performant Serverless Functions","main":"./index.js","module":"./index.mjs","types":"./index.d.ts","files":["./*"],"exports":{".":{"import":"./index.mjs","require":"./index.js"},"./dist/nextjs":{"import":"./nextjs.mjs","require":"./nextjs.js"},"./nextjs":{"import":"./nextjs.mjs","require":"./nextjs.js"},"./h3":{"import":"./h3.mjs","require":"./h3.js"},"./svelte":{"import":"./svelte.mjs","require":"./svelte.js"},"./solidjs":{"import":"./solidjs.mjs","require":"./solidjs.js"},"./workflow":{"import":"./workflow.mjs","require":"./workflow.js"},"./hono":{"import":"./hono.mjs","require":"./hono.js"},"./cloudflare":{"import":"./cloudflare.mjs","require":"./cloudflare.js"},"./astro":{"import":"./astro.mjs","require":"./astro.js"},"./express":{"import":"./express.mjs","require":"./express.js"}},"scripts":{"build":"tsup && cp README.md ./dist/ && cp package.json ./dist/ && cp LICENSE ./dist/","test":"bun test src","fmt":"prettier --write .","lint":"tsc && eslint \"{src,platforms}/**/*.{js,ts,tsx}\" --quiet --fix","check-exports":"bun run build && cd dist && attw -P"},"repository":{"type":"git","url":"git+https://github.com/upstash/workflow-ts.git"},"keywords":["upstash","qstash","workflow","serverless"],"author":"Cahid Arda Oz","license":"MIT","bugs":{"url":"https://github.com/upstash/workflow-ts/issues"},"homepage":"https://github.com/upstash/workflow-ts#readme","devDependencies":{"@ai-sdk/anthropic":"^1.1.15","@commitlint/cli":"^19.5.0","@commitlint/config-conventional":"^19.5.0","@eslint/js":"^9.11.1","@solidjs/start":"^1.0.8","@sveltejs/kit":"^2.6.1","@types/bun":"^1.1.10","@types/express":"^5.0.3","astro":"^4.16.7","eslint":"^9.11.1","eslint-plugin-unicorn":"^55.0.0","express":"^5.1.0","globals":"^15.10.0","h3":"^1.12.0","hono":"^4.6.20","husky":"^9.1.6","next":"^14.2.14","prettier":"3.3.3","tsup":"^8.3.0","typescript":"^5.7.2","typescript-eslint":"^8.18.0"},"dependencies":{"@ai-sdk/openai":"^1.2.1","@upstash/qstash":"^2.8.2","ai":"^4.1.54","zod":"^3.24.1"},"directories":{"example":"examples"}}
1
+ {"name":"@upstash/workflow","version":"v0.2.21","description":"Durable, Reliable and Performant Serverless Functions","main":"./index.js","module":"./index.mjs","types":"./index.d.ts","files":["./*"],"exports":{".":{"import":"./index.mjs","require":"./index.js"},"./dist/nextjs":{"import":"./nextjs.mjs","require":"./nextjs.js"},"./nextjs":{"import":"./nextjs.mjs","require":"./nextjs.js"},"./h3":{"import":"./h3.mjs","require":"./h3.js"},"./svelte":{"import":"./svelte.mjs","require":"./svelte.js"},"./solidjs":{"import":"./solidjs.mjs","require":"./solidjs.js"},"./workflow":{"import":"./workflow.mjs","require":"./workflow.js"},"./hono":{"import":"./hono.mjs","require":"./hono.js"},"./cloudflare":{"import":"./cloudflare.mjs","require":"./cloudflare.js"},"./astro":{"import":"./astro.mjs","require":"./astro.js"},"./express":{"import":"./express.mjs","require":"./express.js"},"./tanstack":{"import":"./tanstack.mjs","require":"./tanstack.js"}},"scripts":{"build":"tsup && cp README.md ./dist/ && cp package.json ./dist/ && cp LICENSE ./dist/","test":"bun test src","fmt":"prettier --write .","lint":"tsc && eslint \"{src,platforms}/**/*.{js,ts,tsx}\" --quiet --fix","check-exports":"bun run build && cd dist && attw -P"},"repository":{"type":"git","url":"git+https://github.com/upstash/workflow-ts.git"},"keywords":["upstash","qstash","workflow","serverless"],"author":"Cahid Arda Oz","license":"MIT","bugs":{"url":"https://github.com/upstash/workflow-ts/issues"},"homepage":"https://github.com/upstash/workflow-ts#readme","devDependencies":{"@ai-sdk/anthropic":"^1.1.15","@commitlint/cli":"^19.5.0","@commitlint/config-conventional":"^19.5.0","@eslint/js":"^9.11.1","@solidjs/start":"^1.0.8","@sveltejs/kit":"^2.6.1","@tanstack/react-start":"^1.132.48","@types/bun":"^1.1.10","@types/express":"^5.0.3","astro":"^4.16.7","eslint":"^9.11.1","eslint-plugin-unicorn":"^55.0.0","express":"^5.1.0","globals":"^15.10.0","h3":"^1.12.0","hono":"^4.6.20","husky":"^9.1.6","next":"^14.2.14","prettier":"3.3.3","tsup":"^8.3.0","typescript":"^5.7.2","typescript-eslint":"^8.18.0"},"dependencies":{"@ai-sdk/openai":"^1.2.1","@upstash/qstash":"^2.8.2","ai":"^4.1.54","zod":"^3.24.1"},"directories":{"example":"examples"}}
@@ -1,4 +1,4 @@
1
- import { n as PublicServeOptions, R as RouteFunction, x as InvokableWorkflow } from './types-B7_5AkKQ.mjs';
1
+ import { n as PublicServeOptions, R as RouteFunction, y as InvokableWorkflow } from './types-Q3dM0UlR.mjs';
2
2
 
3
3
  type OmitOptionsInServeMany<TOptions> = Omit<TOptions, "env" | "url" | "schema" | "initialPayloadParser">;
4
4
  declare const serveManyBase: <THandler extends (...params: any[]) => any, TOptions extends OmitOptionsInServeMany<PublicServeOptions> = OmitOptionsInServeMany<PublicServeOptions>, TServeParams extends [routeFunction: RouteFunction<any, any>, options: TOptions] = [routeFunction: RouteFunction<any, any>, options: TOptions]>({ workflows, getUrl, serveMethod, options, }: {
@@ -1,4 +1,4 @@
1
- import { n as PublicServeOptions, R as RouteFunction, x as InvokableWorkflow } from './types-B7_5AkKQ.js';
1
+ import { n as PublicServeOptions, R as RouteFunction, y as InvokableWorkflow } from './types-Q3dM0UlR.js';
2
2
 
3
3
  type OmitOptionsInServeMany<TOptions> = Omit<TOptions, "env" | "url" | "schema" | "initialPayloadParser">;
4
4
  declare const serveManyBase: <THandler extends (...params: any[]) => any, TOptions extends OmitOptionsInServeMany<PublicServeOptions> = OmitOptionsInServeMany<PublicServeOptions>, TServeParams extends [routeFunction: RouteFunction<any, any>, options: TOptions] = [routeFunction: RouteFunction<any, any>, options: TOptions]>({ workflows, getUrl, serveMethod, options, }: {
package/solidjs.d.mts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { APIEvent } from '@solidjs/start/server';
2
- import { R as RouteFunction, n as PublicServeOptions } from './types-B7_5AkKQ.mjs';
2
+ import { R as RouteFunction, n as PublicServeOptions } from './types-Q3dM0UlR.mjs';
3
3
  import '@upstash/qstash';
4
4
  import 'zod';
5
5
  import 'ai';
package/solidjs.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { APIEvent } from '@solidjs/start/server';
2
- import { R as RouteFunction, n as PublicServeOptions } from './types-B7_5AkKQ.js';
2
+ import { R as RouteFunction, n as PublicServeOptions } from './types-Q3dM0UlR.js';
3
3
  import '@upstash/qstash';
4
4
  import 'zod';
5
5
  import 'ai';