@teleporthq/teleport-plugin-next-workflows 0.43.37 → 0.43.39

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.
@@ -4,6 +4,7 @@ import { generateServerSegmentAPIRoute, generateStreamingServerSegmentAPIRoute,
4
4
  import { collectSecrets, collectSecretReferenceEnvNames } from './secret-collector';
5
5
  import { collectUsedNodeTypes, projectUsesRealtime, collectUsedRealtimeActionTypes, } from './graph-utils';
6
6
  import { nodeRegistry } from './nodes';
7
+ import { resolveHandlerEntryName } from './nodes/types';
7
8
  import { generateClientRuntimeCode, generateServerRuntimeCode, generateSharedRuntimeUtilsCode, } from './executor-generator';
8
9
  import { generateRealtimeServerHelperCode, generateRealtimeClientCode, generateRealtimeTokenRoute, generateRealtimeJoinRoute, generateRealtimeLeaveRoute, generateRealtimeMessageRoute, generateRealtimeEventRoute, generateRealtimeChannelsListRoute, generateRealtimeChannelsMembersRoute, } from './realtime-generator';
9
10
  import { generateAuthOptionsFile, generateHashPasswordFile, generateNextAuthRouteFile, generateSignupRouteFile, generateMiddlewareFile, generateSessionProviderWrapper, getDatabaseDriverDependencies, } from './auth-generator';
@@ -778,7 +779,7 @@ export class NextWorkflowProjectPlugin {
778
779
  const entries = exportNames
779
780
  .map((t, index) => {
780
781
  const source = handlers[index].trim();
781
- const entryFn = this.resolveHandlerEntryName(source, t);
782
+ const entryFn = resolveHandlerEntryName(source, t);
782
783
  return ` '${t}': (function () {\n${source}\nreturn ${entryFn};\n})()`;
783
784
  })
784
785
  .join(',\n');
@@ -789,33 +790,6 @@ ${entries}
789
790
  };
790
791
  `;
791
792
  }
792
- // Resolves the name a handler's entry function is ACTUALLY declared with in
793
- // `source`, rather than assuming it always equals the
794
- // `nodeType.replace(/-/g, '_')` convention name (see the comment above
795
- // `generateNodeHandlerFile`'s `entries` for why that assumption can break
796
- // under minification).
797
- //
798
- // Handlers composed from string-literal templates (not `fn.toString()`) are
799
- // immune to that class of breakage — a minifier never rewrites the contents
800
- // of a string literal — so the convention name is still correct for those;
801
- // this only needs to look further when it's genuinely absent from `source`.
802
- resolveHandlerEntryName(source, nodeType) {
803
- const conventionName = nodeType.replace(/-/g, '_');
804
- const conventionNameUsed = new RegExp(`(?:^|[^\\w$])${conventionName}\\s*\\(`).test(source);
805
- if (conventionNameUsed) {
806
- return conventionName;
807
- }
808
- // `source` came from `handlerToString(fn)` on a real, possibly-minified
809
- // function — its ENTIRE text is that one function's declaration, so
810
- // whatever name follows the leading `function`/`async function` keyword
811
- // is the name it was actually assigned at runtime.
812
- const leadingDeclaration = source.match(/^(?:async\s+)?function\s*([A-Za-z0-9_$]+)\s*\(/);
813
- if (leadingDeclaration) {
814
- return leadingDeclaration[1];
815
- }
816
- throw new Error(`generateNodeHandlerFile: could not resolve the entry function for workflow node type "${nodeType}" — ` +
817
- `expected a "${conventionName}" declaration or a single toString()'d function, found neither.`);
818
- }
819
793
  getDefaultRouteUrl(uidl, strategy) {
820
794
  var _a, _b, _c;
821
795
  const routeDef = (_b = (_a = uidl.root) === null || _a === void 0 ? void 0 : _a.stateDefinitions) === null || _b === void 0 ? void 0 : _b.route;
@@ -1362,8 +1336,31 @@ module.exports = __customNodeRegistry;
1362
1336
  emittedHandlerTypes.push(t);
1363
1337
  }
1364
1338
  });
1339
+ // See resolveHandlerEntryName: handlers built from `handlerToString(fn)`
1340
+ // on a real function (e.g. general-if-statement) can have `fn` renamed by
1341
+ // a consumer's own minifier (nothing in the bundle calls it by name, only
1342
+ // this runtime `.toString()` read does) — so the reference below must
1343
+ // match whatever `handlers[index]` actually declares, not the
1344
+ // `t.replace(/-/g, '_')` convention name.
1345
+ //
1346
+ // Each entry is ALSO isolated in its own IIFE, rather than declaring every
1347
+ // handler as a bare sibling statement inside `useGlobalWorkflows()`. Two
1348
+ // DIFFERENT node types are minified independently (each in its own
1349
+ // source file), so their real declared names can coincidentally collide —
1350
+ // e.g. state-update-local-state and payment-cancel-plan can both
1351
+ // legitimately mangle down to the same short name. Declared as siblings
1352
+ // in one shared function body, the second declaration would silently
1353
+ // shadow the first, so BOTH map entries end up pointing at the SAME
1354
+ // (wrong-for-one-of-them) function — a silent wrong-handler-executes bug,
1355
+ // not even a crash. An IIFE per entry gives every handler its own scope,
1356
+ // exactly like generateNodeHandlerFile already does, so a same-named
1357
+ // collision between two unrelated handlers can never shadow each other.
1365
1358
  const handlerEntries = emittedHandlerTypes
1366
- .map((t) => ` '${t}': ${t.replace(/-/g, '_')}`)
1359
+ .map((t, index) => {
1360
+ const source = handlers[index].trim();
1361
+ const entryFn = resolveHandlerEntryName(source, t);
1362
+ return ` '${t}': (function () {\n${source}\nreturn ${entryFn};\n})()`;
1363
+ })
1367
1364
  .join(',\n');
1368
1365
  // NOTE: this module is pulled into the GLOBAL client bundle (every page,
1369
1366
  // via `useGlobalWorkflows()` in _app). It must use a single module system.
@@ -1380,8 +1377,6 @@ import workflowRuntime from './runtime';
1380
1377
  const executeWorkflowWithSegments = workflowRuntime.executeWorkflowWithSegments;
1381
1378
 
1382
1379
  export function useGlobalWorkflows() {
1383
- ${handlers.join('\n')}
1384
-
1385
1380
  const clientNodeHandlers = {
1386
1381
  ${handlerEntries}
1387
1382
  };
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-project-plugin.js","sourceRoot":"","sources":["../../src/workflow-project-plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-project-plugin.js","sourceRoot":"","sources":["../../src/workflow-project-plugin.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@teleporthq/teleport-plugin-next-workflows",
3
- "version": "0.43.37",
3
+ "version": "0.43.39",
4
4
  "description": "A plugin for workflow code generation in Next.js projects.",
5
5
  "author": "teleportHQ",
6
6
  "license": "MIT",
@@ -69,5 +69,5 @@
69
69
  "@teleporthq/teleport-shared": "^0.43.34",
70
70
  "@teleporthq/teleport-types": "^0.43.34"
71
71
  },
72
- "gitHead": "09ae61167b5369e546499488df286ff37eb57b1e"
72
+ "gitHead": "9fb9d5b663e48253aee9e56e8415d52864c30e34"
73
73
  }
@@ -7,18 +7,30 @@ import {
7
7
  } from '@teleporthq/teleport-types'
8
8
  import { WorkflowSegment } from './types'
9
9
  import { nodeRegistry } from './nodes'
10
+ import { resolveHandlerEntryName } from './nodes/types'
10
11
  import { AI_NODE_TYPES } from './graph-utils'
11
12
  import {
12
13
  generateGetRawBodyCode,
13
14
  generateAllSignatureVerificationCode,
14
15
  } from './webhook-signature-verification'
15
16
 
17
+ // Workflow/segment names, cron schedules, and webhook paths are free-form
18
+ // UIDL data — never guaranteed not to contain `*/`. Every generated route
19
+ // file opens with a `/** ... */` JSDoc header interpolating these values
20
+ // directly; an ORDINARY cron schedule like `*/5 * * * *` contains `*/` and
21
+ // would prematurely close that comment block, corrupting the rest of the
22
+ // generated file's syntax (the very first statement after the header would
23
+ // silently become live code instead of a comment, or a dangling `*` token
24
+ // breaks parsing outright). Breaking up any `*/` sequence keeps the comment
25
+ // intact; this is purely cosmetic (header text only, never evaluated).
26
+ const sanitizeForBlockComment = (value: string): string => value.replace(/\*\//g, '* /')
27
+
16
28
  export const generateServerSegmentAPIRoute = (
17
29
  segment: WorkflowSegment,
18
30
  workflowName?: string
19
31
  ): string => {
20
32
  const usedNodeTypes = new Set(segment.nodes.map((n) => n.type))
21
- const handlerCode = generateNodeHandlersForSegment(usedNodeTypes, true)
33
+ const nodeHandlersEntries = generateNodeHandlersForSegment(usedNodeTypes, true)
22
34
  const hasRateLimiter = usedNodeTypes.has('general-rate-limiter')
23
35
 
24
36
  const segmentConfig = JSON.stringify(
@@ -46,13 +58,13 @@ export const generateServerSegmentAPIRoute = (
46
58
  const header = workflowName
47
59
  ? `/**
48
60
  * Workflow Server Segment API Route
49
- * Workflow: ${workflowName}
50
- * Segment ID: ${segment.id}
61
+ * Workflow: ${sanitizeForBlockComment(workflowName)}
62
+ * Segment ID: ${sanitizeForBlockComment(segment.id)}
51
63
  */
52
64
  `
53
65
  : `/**
54
66
  * Workflow Server Segment API Route
55
- * Segment ID: ${segment.id}
67
+ * Segment ID: ${sanitizeForBlockComment(segment.id)}
56
68
  */
57
69
  `
58
70
 
@@ -64,16 +76,10 @@ export const generateServerSegmentAPIRoute = (
64
76
  const utils = require('../../../utils/workflows/server-runtime');
65
77
  const resolveConfig = utils.resolveConfig;
66
78
 
67
- ${handlerCode}
68
-
69
79
  const SEGMENT_CONFIG = ${segmentConfig};
70
80
 
71
- const nodeHandlers = {${Array.from(usedNodeTypes)
72
- .map(
73
- (nt: string) => `
74
- '${nt}': ${nt.replace(/-/g, '_')}`
75
- )
76
- .join(',')}
81
+ const nodeHandlers = {
82
+ ${nodeHandlersEntries}
77
83
  };
78
84
 
79
85
  module.exports = async function handler(req, res) {
@@ -357,7 +363,7 @@ export const generateStreamingServerSegmentAPIRoute = (
357
363
  workflowName?: string
358
364
  ): string => {
359
365
  const usedNodeTypes = new Set(segment.nodes.map((n) => n.type))
360
- const handlerCode = generateNodeHandlersForSegment(usedNodeTypes, true)
366
+ const nodeHandlersEntries = generateNodeHandlersForSegment(usedNodeTypes, true)
361
367
  const hasRateLimiter = usedNodeTypes.has('general-rate-limiter')
362
368
 
363
369
  const segmentConfig = JSON.stringify(
@@ -385,8 +391,12 @@ export const generateStreamingServerSegmentAPIRoute = (
385
391
  const aiNodeTypes = JSON.stringify(Array.from(AI_NODE_TYPES))
386
392
 
387
393
  const header = workflowName
388
- ? `/**\n * Workflow Streaming Server Segment API Route\n * Workflow: ${workflowName}\n * Segment ID: ${segment.id}\n */\n`
389
- : `/**\n * Workflow Streaming Server Segment API Route\n * Segment ID: ${segment.id}\n */\n`
394
+ ? `/**\n * Workflow Streaming Server Segment API Route\n * Workflow: ${sanitizeForBlockComment(
395
+ workflowName
396
+ )}\n * Segment ID: ${sanitizeForBlockComment(segment.id)}\n */\n`
397
+ : `/**\n * Workflow Streaming Server Segment API Route\n * Segment ID: ${sanitizeForBlockComment(
398
+ segment.id
399
+ )}\n */\n`
390
400
 
391
401
  const requestInjection = hasRateLimiter
392
402
  ? `\n context.__request = { ip: __getClientIp(req), headers: req.headers || {} };`
@@ -396,16 +406,10 @@ export const generateStreamingServerSegmentAPIRoute = (
396
406
  const utils = require('../../../utils/workflows/server-runtime');
397
407
  const resolveConfig = utils.resolveConfig;
398
408
 
399
- ${handlerCode}
400
-
401
409
  const SEGMENT_CONFIG = ${segmentConfig};
402
410
 
403
- const nodeHandlers = {${Array.from(usedNodeTypes)
404
- .map(
405
- (nt: string) => `
406
- '${nt}': ${nt.replace(/-/g, '_')}`
407
- )
408
- .join(',')}
411
+ const nodeHandlers = {
412
+ ${nodeHandlersEntries}
409
413
  };
410
414
 
411
415
  const __streamingAITypes = ${aiNodeTypes};
@@ -760,28 +764,57 @@ const generateClientOnlyServerStub = (nodeType: string): string => {
760
764
  }`
761
765
  }
762
766
 
767
+ // Returns the BODY of a `nodeHandlers = {...}` object literal — one entry per
768
+ // used node type, e.g. ` 'general-if-statement': (function () { ... })()`.
769
+ //
770
+ // Each handler is isolated in its own IIFE rather than declared as a bare
771
+ // sibling statement in a shared scope (which is what this used to do, joined
772
+ // with the outer `nodeHandlers` map built separately from a statically
773
+ // computed `nodeType.replace(/-/g, '_')` name). Two problems, both closed by
774
+ // this shape:
775
+ // 1. A handler built from `handlerToString(fn)` on a real function embeds
776
+ // `fn.toString()` — a snapshot of whatever `fn` was actually named at
777
+ // that moment. When this package is bundled/minified by a consumer
778
+ // (e.g. teleport-gui's browser packer worker), the minifier freely
779
+ // renames `fn`'s declaration, since nothing in the bundle calls it by
780
+ // name — only this runtime `.toString()` read does, which is invisible
781
+ // to the minifier. A statically computed reference name would then be
782
+ // undefined — resolveHandlerEntryName reads the name the source
783
+ // ACTUALLY declares instead.
784
+ // 2. Two DIFFERENT node types are minified independently (each in its own
785
+ // source file), so their real declared names can coincidentally
786
+ // collide — e.g. state-update-local-state and payment-cancel-plan can
787
+ // both legitimately mangle down to the same short name. Declared as
788
+ // bare siblings in one shared scope, the second declaration would
789
+ // silently shadow the first, so BOTH map entries end up pointing at the
790
+ // SAME (wrong-for-one-of-them) function — a silent wrong-handler-
791
+ // executes bug, not even a crash. An IIFE per entry gives every handler
792
+ // its own scope, so a same-named collision between two unrelated
793
+ // handlers can never shadow each other.
763
794
  const generateNodeHandlersForSegment = (usedNodeTypes: Set<string>, forServer = false): string => {
764
- const handlers: string[] = []
765
-
766
- usedNodeTypes.forEach((nodeType) => {
767
- const generator = nodeRegistry[nodeType]
768
- if (generator) {
769
- if (forServer && generator.generateServerHandler) {
770
- handlers.push(generator.generateServerHandler())
771
- } else if (forServer && generator.executionEnv === 'client') {
772
- handlers.push(generateClientOnlyServerStub(nodeType))
795
+ return Array.from(usedNodeTypes)
796
+ .map((nodeType) => {
797
+ const generator = nodeRegistry[nodeType]
798
+ let source: string
799
+ if (generator) {
800
+ if (forServer && generator.generateServerHandler) {
801
+ source = generator.generateServerHandler()
802
+ } else if (forServer && generator.executionEnv === 'client') {
803
+ source = generateClientOnlyServerStub(nodeType)
804
+ } else {
805
+ source = generator.generateHandler()
806
+ }
773
807
  } else {
774
- handlers.push(generator.generateHandler())
775
- }
776
- } else {
777
- handlers.push(`
808
+ source = `
778
809
  async function ${nodeType.replace(/-/g, '_')}(config, context) {
779
810
  throw new Error('No implementation for node type: ${nodeType}');
780
- }`)
781
- }
782
- })
783
-
784
- return handlers.join('\n')
811
+ }`
812
+ }
813
+ const trimmed = source.trim()
814
+ const entryFn = resolveHandlerEntryName(trimmed, nodeType)
815
+ return ` '${nodeType}': (function () {\n${trimmed}\nreturn ${entryFn};\n})()`
816
+ })
817
+ .join(',\n')
785
818
  }
786
819
 
787
820
  const CLIENT_ONLY_NODES = new Set([
@@ -845,7 +878,7 @@ const CLIENT_ONLY_NODES = new Set([
845
878
  export const generateCronAPIRoute = (workflow: UIDLWorkflow): string => {
846
879
  const serverNodes = workflow.nodes.filter((n: UIDLWorkflowNode) => !CLIENT_ONLY_NODES.has(n.type))
847
880
  const allNodeTypes = new Set<string>(serverNodes.map((n: UIDLWorkflowNode) => n.type))
848
- const handlerCode = generateNodeHandlersForSegment(allNodeTypes, true)
881
+ const nodeHandlersEntries = generateNodeHandlersForSegment(allNodeTypes, true)
849
882
  const hasRateLimiter = allNodeTypes.has('general-rate-limiter')
850
883
 
851
884
  const serverNodeIds = new Set<string>(serverNodes.map((n: UIDLWorkflowNode) => n.id))
@@ -875,23 +908,17 @@ export const generateCronAPIRoute = (workflow: UIDLWorkflow): string => {
875
908
 
876
909
  return `/**
877
910
  * Workflow Cron API Route
878
- * Workflow: ${workflow.name || workflow.id}
879
- * Trigger: ${workflow.trigger.config.schedule || 'cron'}
911
+ * Workflow: ${sanitizeForBlockComment(workflow.name || workflow.id)}
912
+ * Trigger: ${sanitizeForBlockComment(String(workflow.trigger.config.schedule || 'cron'))}
880
913
  */
881
914
 
882
915
  const utils = require('../../../utils/workflows/server-runtime');
883
916
  const resolveConfig = utils.resolveConfig;
884
917
 
885
- ${handlerCode}
886
-
887
918
  const WORKFLOW_CONFIG = ${workflowConfig};
888
919
 
889
- const nodeHandlers = {${Array.from(allNodeTypes)
890
- .map(
891
- (nt: string) => `
892
- '${nt}': ${nt.replace(/-/g, '_')}`
893
- )
894
- .join(',')}
920
+ const nodeHandlers = {
921
+ ${nodeHandlersEntries}
895
922
  };
896
923
 
897
924
  module.exports = async function handler(req, res) {
@@ -1246,7 +1273,7 @@ export const generateWebhookWorkflowAPIRoute = (
1246
1273
  const webhookConfig = workflow.webhookConfig as UIDLWebhookConfig
1247
1274
  const serverNodes = workflow.nodes.filter((n: UIDLWorkflowNode) => !CLIENT_ONLY_NODES.has(n.type))
1248
1275
  const allNodeTypes = new Set<string>(serverNodes.map((n: UIDLWorkflowNode) => n.type))
1249
- const handlerCode = generateNodeHandlersForSegment(allNodeTypes, true)
1276
+ const nodeHandlersEntries = generateNodeHandlersForSegment(allNodeTypes, true)
1250
1277
  const hasRateLimiter = allNodeTypes.has('general-rate-limiter')
1251
1278
 
1252
1279
  const serverNodeIds = new Set<string>(serverNodes.map((n: UIDLWorkflowNode) => n.id))
@@ -1342,9 +1369,9 @@ export const generateWebhookWorkflowAPIRoute = (
1342
1369
 
1343
1370
  return `/**
1344
1371
  * Webhook API Route
1345
- * Workflow: ${workflow.name || workflow.id}
1346
- * Path: ${webhookConfig.urlPath}
1347
- * Method: ${webhookConfig.httpMethod}
1372
+ * Workflow: ${sanitizeForBlockComment(workflow.name || workflow.id)}
1373
+ * Path: ${sanitizeForBlockComment(webhookConfig.urlPath)}
1374
+ * Method: ${sanitizeForBlockComment(webhookConfig.httpMethod)}
1348
1375
  */
1349
1376
  if (typeof globalThis.fetch === 'undefined') {
1350
1377
  globalThis.fetch = require('node-fetch');
@@ -1353,8 +1380,6 @@ if (typeof globalThis.fetch === 'undefined') {
1353
1380
  const utils = require('${relativePrefix}/utils/workflows/server-runtime');
1354
1381
  const resolveConfig = utils.resolveConfig;
1355
1382
  ${customNodesImport}
1356
- ${handlerCode}
1357
-
1358
1383
  ${getRawBodyCode}
1359
1384
 
1360
1385
  ${signatureVerificationCode}
@@ -1365,12 +1390,8 @@ const WORKFLOW_CONFIG = ${workflowConfig};
1365
1390
 
1366
1391
  var ERROR_HANDLER_NODES = ${errorHandlerNodesJson};
1367
1392
 
1368
- const nodeHandlers = {${Array.from(allNodeTypes)
1369
- .map(
1370
- (nt: string) => `
1371
- '${nt}': ${nt.replace(/-/g, '_')}`
1372
- )
1373
- .join(',')}
1393
+ const nodeHandlers = {
1394
+ ${nodeHandlersEntries}
1374
1395
  };
1375
1396
 
1376
1397
  module.exports = async function handler(req, res) {