@requence/service 1.0.0-alpha.0 → 1.0.0-alpha.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/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,17 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [1.0.0-alpha.1](https://github.com/regrapes/requence/compare/@requence/service@1.0.0-alpha.0...@requence/service@1.0.0-alpha.1) (2024-12-06)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* unprivate ui package ([6911114](https://github.com/regrapes/requence/commit/6911114b616396a2ff625292e793f3240a9f0af6))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
6
17
|
# 1.0.0-alpha.0 (2024-11-18)
|
|
7
18
|
|
|
8
19
|
|
package/build/index.js
CHANGED
|
@@ -53,9 +53,6 @@ function createContextHelper(context, nodes) {
|
|
|
53
53
|
getInput() {
|
|
54
54
|
return context.input;
|
|
55
55
|
},
|
|
56
|
-
getTenantName() {
|
|
57
|
-
return context.tenant.name;
|
|
58
|
-
},
|
|
59
56
|
getMeta() {
|
|
60
57
|
return context.meta;
|
|
61
58
|
},
|
|
@@ -1091,7 +1088,7 @@ function createService(optionsOrVersion, optionalMessageHandler) {
|
|
|
1091
1088
|
}
|
|
1092
1089
|
const key = options.serviceKey ?? process.env.REQUENCE_SERVICE_KEY ?? JSON.parse(readFileSync("package.json", "utf-8")).requence?.serviceKey;
|
|
1093
1090
|
if (!key) {
|
|
1094
|
-
throw Error("No service key found");
|
|
1091
|
+
throw new Error("No service key found");
|
|
1095
1092
|
}
|
|
1096
1093
|
const parts = deobfuscate(key);
|
|
1097
1094
|
if (parts.length < 2 || parts[0] !== "service") {
|
|
@@ -1107,5 +1104,5 @@ export {
|
|
|
1107
1104
|
createService as default
|
|
1108
1105
|
};
|
|
1109
1106
|
|
|
1110
|
-
//# debugId=
|
|
1107
|
+
//# debugId=B9746B0F55303A5264756E2164756E21
|
|
1111
1108
|
//# sourceMappingURL=index.js.map
|
package/build/index.js.map
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/index.ts", "../../helpers/src/context/context.ts", "../../helpers/src/protocol/command.ts", "../../helpers/src/protocol/nodes.ts", "../../helpers/src/protocol/getNodeOutputs.ts", "../../helpers/src/protocol/createNodeMaps.ts", "../../helpers/src/protocol/getPossiblePaths.ts", "../../helpers/src/protocol/identifyNode.ts", "../../helpers/src/protocol/node.ts", "../../helpers/src/protocol/jsonSchema.ts", "../../helpers/src/protocol/update.ts", "../src/connections/createAmqpConnection.ts", "../src/helpers.ts"],
|
|
4
4
|
"sourcesContent": [
|
|
5
|
-
"import { readFileSync } from 'node:fs'\n\nimport { deobfuscate } from '@requence/helpers'\nimport { z } from 'zod'\n\nimport createAmqpConnection, {\n type Connection,\n type MessageHandler,\n} from './connections/createAmqpConnection.js'\n\nconst versionSchema = z\n .string()\n .regex(\n /^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$/,\n 'not a valid version',\n )\n\ninterface ServiceOptions<V extends string> {\n serviceKey?: string\n version: V\n prefetch?: number\n connectionTimeout?: number\n silent?: boolean\n}\n\nconst connectionOptionsSchema = z.object({\n url: z.union([\n z\n .string()\n .regex(/^amqps?:\\/\\/(.+):(.+)@(.+)$/)\n .transform((str) => new URL(str)),\n z\n .instanceof(URL)\n .refine((url) => url.protocol.match(/^amqps?:/), 'Wrong protocol'),\n ]),\n version: versionSchema,\n silent: z.boolean().optional(),\n prefetch: z.number().int().optional(),\n connectionTimeout: z.number().positive().default(3_000),\n})\n\nexport default function createService<\n V extends keyof Requence.Version | (string & {}),\n>(version: V, messageHandler: MessageHandler<V>): Connection\nexport default function createService<\n V extends keyof Requence.Version | (string & {}),\n>(options: ServiceOptions<V>, messageHandler: MessageHandler<V>): Connection\nexport default function createService<\n V extends keyof Requence.Version | (string & {}),\n>(\n optionsOrVersion: ServiceOptions<V> | string,\n optionalMessageHandler?: MessageHandler<V>,\n) {\n let options: ServiceOptions<V>\n let messageHandler: MessageHandler<V>\n if (typeof optionsOrVersion === 'string') {\n options = {\n version: optionsOrVersion as V,\n }\n messageHandler = optionalMessageHandler as MessageHandler<V>\n } else {\n options = optionsOrVersion\n messageHandler = optionalMessageHandler as MessageHandler<V>\n }\n\n const key =\n options.serviceKey ??\n process.env.REQUENCE_SERVICE_KEY ??\n JSON.parse(readFileSync('package.json', 'utf-8')).requence?.serviceKey\n\n if (!key) {\n throw Error('No service key found')\n }\n\n const parts = deobfuscate(key)\n if (parts.length < 2 || parts[0] !== 'service') {\n throw new Error('Invalid service key')\n }\n\n const connectionOptions = {\n ...options,\n url: parts[1],\n }\n\n return createAmqpConnection<V>(\n connectionOptionsSchema.parse(connectionOptions),\n messageHandler,\n )\n}\n",
|
|
6
|
-
"import { z } from 'zod'\n\nimport type { Nodes } from '../protocol/nodes.js'\n\nexport const contextSchema = z.object({\n input: z.any(),\n meta: z.any(),\n tenant: z.object({ name: z.string() }),\n data: z.record(z.string(), z.any()),\n errors: z.record(z.string(), z.string()),\n dates: z.record(z.string(), z.string().datetime()),\n})\n\nexport type Context = z.infer<typeof contextSchema>\n\nfunction isRecord(data: unknown): data is Record<string, any> {\n return typeof data === 'object' && data !== null && !Array.isArray(data)\n}\n\nconst internalKey = Symbol.for('internal') as unknown as 'internal'\n\nexport function getInternalContext(contextHelper: ContextHelper) {\n return (contextHelper as InternalContextHelper)[internalKey]\n}\n\nexport function createContextHelper(context: Context, nodes: Nodes) {\n const results = new Map(\n nodes.map((node) => [\n node.id,\n {\n node,\n executionDate:\n node.id in context.dates ? new Date(context.dates[node.id]) : null,\n data: context.data[node.id] ?? null,\n error: context.errors[node.id] ?? null,\n },\n ]),\n )\n\n const lookUpMap = new Map<string, Array<string>>()\n\n for (const node of nodes) {\n const alias =\n typeof node.meta?.mapAlias === 'string'\n ? node.meta.mapAlias\n : 'alias' in node && node.alias\n if (alias) {\n if (lookUpMap.has(alias)) {\n lookUpMap.get(alias)!.push(node.id)\n } else {\n lookUpMap.set(alias, [node.id])\n }\n }\n\n const name =\n typeof node.meta?.mapName === 'string'\n ? node.meta.mapName\n : node.type === 'service' && node.name\n if (name) {\n if (lookUpMap.has(name)) {\n lookUpMap.get(name)!.push(node.id)\n } else {\n lookUpMap.set(name, [node.id])\n }\n }\n }\n\n return {\n [internalKey]: {\n results,\n },\n getInput(): unknown {\n return context.input\n },\n
|
|
5
|
+
"import { readFileSync } from 'node:fs'\n\nimport { deobfuscate } from '@requence/helpers'\nimport { z } from 'zod'\n\nimport createAmqpConnection, {\n type Connection,\n type MessageHandler,\n} from './connections/createAmqpConnection.js'\n\nconst versionSchema = z\n .string()\n .regex(\n /^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$/,\n 'not a valid version',\n )\n\ninterface ServiceOptions<V extends string> {\n serviceKey?: string\n version: V\n prefetch?: number\n connectionTimeout?: number\n silent?: boolean\n}\n\nconst connectionOptionsSchema = z.object({\n url: z.union([\n z\n .string()\n .regex(/^amqps?:\\/\\/(.+):(.+)@(.+)$/)\n .transform((str) => new URL(str)),\n z\n .instanceof(URL)\n .refine((url) => url.protocol.match(/^amqps?:/), 'Wrong protocol'),\n ]),\n version: versionSchema,\n silent: z.boolean().optional(),\n prefetch: z.number().int().optional(),\n connectionTimeout: z.number().positive().default(3_000),\n})\n\nexport default function createService<\n V extends keyof Requence.Version | (string & {}),\n>(version: V, messageHandler: MessageHandler<V>): Connection\nexport default function createService<\n V extends keyof Requence.Version | (string & {}),\n>(options: ServiceOptions<V>, messageHandler: MessageHandler<V>): Connection\nexport default function createService<\n V extends keyof Requence.Version | (string & {}),\n>(\n optionsOrVersion: ServiceOptions<V> | string,\n optionalMessageHandler?: MessageHandler<V>,\n) {\n let options: ServiceOptions<V>\n let messageHandler: MessageHandler<V>\n if (typeof optionsOrVersion === 'string') {\n options = {\n version: optionsOrVersion as V,\n }\n messageHandler = optionalMessageHandler as MessageHandler<V>\n } else {\n options = optionsOrVersion\n messageHandler = optionalMessageHandler as MessageHandler<V>\n }\n\n const key =\n options.serviceKey ??\n process.env.REQUENCE_SERVICE_KEY ??\n JSON.parse(readFileSync('package.json', 'utf-8')).requence?.serviceKey\n\n if (!key) {\n throw new Error('No service key found')\n }\n\n const parts = deobfuscate(key)\n if (parts.length < 2 || parts[0] !== 'service') {\n throw new Error('Invalid service key')\n }\n\n const connectionOptions = {\n ...options,\n url: parts[1],\n }\n\n return createAmqpConnection<V>(\n connectionOptionsSchema.parse(connectionOptions),\n messageHandler,\n )\n}\n",
|
|
6
|
+
"import { z } from 'zod'\n\nimport type { Nodes } from '../protocol/nodes.js'\n\nexport const contextSchema = z.object({\n input: z.any(),\n meta: z.any(),\n tenant: z.object({ name: z.string() }),\n data: z.record(z.string(), z.any()),\n errors: z.record(z.string(), z.string()),\n dates: z.record(z.string(), z.string().datetime()),\n})\n\nexport type Context = z.infer<typeof contextSchema>\n\nfunction isRecord(data: unknown): data is Record<string, any> {\n return typeof data === 'object' && data !== null && !Array.isArray(data)\n}\n\nconst internalKey = Symbol.for('internal') as unknown as 'internal'\n\nexport function getInternalContext(contextHelper: ContextHelper) {\n return (contextHelper as InternalContextHelper)[internalKey]\n}\n\nexport function createContextHelper(context: Context, nodes: Nodes) {\n const results = new Map(\n nodes.map((node) => [\n node.id,\n {\n node,\n executionDate:\n node.id in context.dates ? new Date(context.dates[node.id]) : null,\n data: context.data[node.id] ?? null,\n error: context.errors[node.id] ?? null,\n },\n ]),\n )\n\n const lookUpMap = new Map<string, Array<string>>()\n\n for (const node of nodes) {\n const alias =\n typeof node.meta?.mapAlias === 'string'\n ? node.meta.mapAlias\n : 'alias' in node && node.alias\n if (alias) {\n if (lookUpMap.has(alias)) {\n lookUpMap.get(alias)!.push(node.id)\n } else {\n lookUpMap.set(alias, [node.id])\n }\n }\n\n const name =\n typeof node.meta?.mapName === 'string'\n ? node.meta.mapName\n : node.type === 'service' && node.name\n if (name) {\n if (lookUpMap.has(name)) {\n lookUpMap.get(name)!.push(node.id)\n } else {\n lookUpMap.set(name, [node.id])\n }\n }\n }\n\n return {\n [internalKey]: {\n results,\n },\n getInput(): unknown {\n return context.input\n },\n getMeta(): unknown {\n return context.meta\n },\n getData(alias?: string) {\n if (alias) {\n const nodeIds = lookUpMap.get(alias)\n if (!nodeIds) {\n return null\n }\n\n const combinedData = nodeIds\n .map((nodeId) => results.get(nodeId)?.data)\n .filter(Boolean)\n\n if (combinedData.length === 0) {\n return null\n }\n\n if (combinedData.length === 1) {\n return combinedData[0]\n }\n\n if (combinedData.every(isRecord)) {\n return combinedData.reduce((acc, data) => ({ ...acc, ...data }), {})\n }\n return combinedData\n }\n\n return Array.from(results.values())\n .filter((result) => result.executionDate && isRecord(result.data))\n .toSorted(\n (a, b) => a.executionDate!.getTime() - b.executionDate!.getTime(),\n )\n .reduce(\n (acc, result) => ({\n ...acc,\n ...result.data,\n }),\n isRecord(context.input) ? { ...context.input } : {},\n )\n },\n getError(alias: string) {\n const nodeIds = lookUpMap.get(alias)\n if (!nodeIds) {\n return null\n }\n return nodeIds\n .map((nodeId) => results.get(nodeId)?.error)\n .filter((str) => typeof str === 'string')\n .join('\\n')\n },\n }\n}\n\ntype InternalContextHelper = ReturnType<typeof createContextHelper>\nexport type ContextHelper = Omit<InternalContextHelper, typeof internalKey>\n",
|
|
7
7
|
"import { z } from 'zod'\n\nimport { nodesSchema } from './nodes.js'\n\nexport const abortSchema = z.object({\n type: z.literal('ABORT'),\n reason: z.string().optional(),\n})\n\nexport type Abort = z.infer<typeof abortSchema>\n\nexport const nodeOptionsSchema = z.object({\n maxExecutions: z.number().int().min(0).optional().default(10),\n})\n\nexport type NodeOptions = z.infer<typeof nodeOptionsSchema>\nexport type NodeOptionsInput = z.input<typeof nodeOptionsSchema>\n\nexport const createNodesSchema = z.object({\n type: z.literal('CREATE_NODES'),\n nodes: nodesSchema,\n input: z.any(),\n meta: z.any(),\n options: nodeOptionsSchema,\n})\n\nexport const commandSchema = z.union([abortSchema, createNodesSchema])\n\nexport type Command = z.infer<typeof commandSchema>\nexport type CommandInput = z.input<typeof commandSchema>\n",
|
|
8
8
|
"import { ZodError, z } from 'zod'\n\nimport createNodeMaps from './createNodeMaps.js'\nimport getNodeOutputs from './getNodeOutputs.js'\nimport getPossiblePaths from './getPossiblePaths.js'\nimport identifyNode from './identifyNode.js'\nimport { nodeSchema } from './node.js'\n\nclass NodesError extends ZodError {\n constructor(\n message: string,\n params?: Record<string, any>,\n path: Array<string | number> = [],\n ) {\n super([\n {\n code: z.ZodIssueCode.custom,\n message,\n path,\n params,\n },\n ])\n }\n}\n\nexport const nodesSchema = z\n .array(nodeSchema)\n // resolve all aliases / names\n .transform((nodes) => {\n const aliases = new Map<string, string[]>()\n const names = new Map<string, string[]>()\n let entryNode: EntryNode | null = null\n\n let firstNodeId: string | null = null\n\n for (const node of nodes) {\n if (node.type === 'entry') {\n entryNode = node\n }\n\n if ((node.type === 'service' || node.type === 'logic') && !firstNodeId) {\n firstNodeId = node.id\n }\n\n if ('alias' in node && node.alias) {\n if (!aliases.has(node.alias)) {\n aliases.set(node.alias, [])\n }\n aliases.get(node.alias)!.push(node.id)\n }\n\n if ('name' in node && node.name) {\n if (!names.has(node.name)) {\n names.set(node.name, [])\n }\n names.get(node.name)!.push(node.id)\n }\n }\n\n // assume entry with first service id\n if (!entryNode && firstNodeId) {\n nodes.unshift({\n type: 'entry',\n id: '__entry__',\n output: [{ default: true, exit: false, target: firstNodeId }],\n })\n }\n\n const resolveOutput = (identifier: string) => {\n if (aliases.get(identifier)?.length === 1) {\n return aliases.get(identifier)![0]\n }\n\n if (names.get(identifier)?.length === 1) {\n return names.get(identifier)![0]\n }\n\n return identifier\n }\n\n return nodes.map((node) => {\n node.output = node.output.map((output) =>\n 'target' in output\n ? {\n ...output,\n target: resolveOutput(output.target),\n }\n : output,\n )\n\n if ('subject' in node) {\n node.subject = resolveOutput(node.subject)\n }\n\n return node\n })\n })\n .transform((nodes) => {\n const { getInputs, getNode } = createNodeMaps(nodes)\n const nodeAliases = new Set<string>()\n const nodeIds = new Set<string>()\n const catchSubjects = new Map<string, CatchNode>()\n\n const identify = (nodeId: string) => identifyNode(nodeId, getNode)\n\n for (const node of nodes) {\n // aggregate ids aliases\n\n if (nodeIds.has(node.id)) {\n throw new NodesError('id is not unique', {\n id: node.id,\n })\n }\n nodeIds.add(node.id)\n\n // aggregate aliases\n if ('alias' in node && node.alias) {\n if (nodeAliases.has(node.alias)) {\n throw new NodesError('alias is not unique', {\n alias: node.alias,\n })\n }\n nodeAliases.add(node.alias)\n }\n\n // aggregate cache subjects\n if (node.type === 'catch') {\n if (catchSubjects.has(node.subject)) {\n throw new NodesError('only one catch node per service allowed', {\n id: node.subject,\n })\n }\n catchSubjects.set(node.subject, node)\n }\n }\n\n if (!getNode('__entry__')) {\n throw new NodesError('missing entry node')\n }\n\n if (getInputs('__exit__').length === 0) {\n throw new NodesError('no path leads to exit')\n }\n\n for (const catchNode of nodes.filter((node) => node.type === 'catch')) {\n if (!getNode(catchNode.subject)) {\n throw new NodesError('catch node has invalid subject', {\n id: catchNode.subject,\n })\n }\n }\n for (const node of nodes) {\n if (node.type === 'or') {\n const inputs = getInputs(node)\n\n if (!inputs || inputs.length < 2) {\n throw new NodesError('or nodes need at least 2 inputs')\n }\n }\n\n for (const targetNodeId of getNodeOutputs(node)) {\n if (targetNodeId !== '__exit__' && !getNode(targetNodeId)) {\n throw new NodesError('missing node', {\n id: targetNodeId,\n })\n }\n }\n }\n\n const possiblePaths = getPossiblePaths({\n getInputs,\n getNode,\n onMissingInputs: (_node, path) => {\n throw new NodesError('no path from entry to node', {\n path: path.map(identify),\n })\n },\n })\n\n // none of the possible paths includes ENTRY\n if (\n possiblePaths.every((possiblePath) => !possiblePath.includes('__entry__'))\n ) {\n throw new NodesError('no path from entry to exit')\n }\n\n for (const possiblePath of possiblePaths) {\n for (const pathSegment of possiblePath) {\n const node = pathSegment === '__exit__' ? null : getNode(pathSegment)\n if (node?.type === 'catch' && possiblePath.includes(node.subject)) {\n throw new NodesError(\n 'Unresolvable, inputs needs both catch and subject',\n {\n path: possiblePath.map(identify),\n },\n )\n }\n }\n }\n\n return nodes\n })\n\nexport type InputNodes = z.input<typeof nodesSchema>\nexport type Nodes = z.infer<typeof nodesSchema>\nexport type Node = Nodes[number]\nexport type EntryNode<N = Node> = N extends { type: 'entry' } ? N : never\nexport type ServiceNode<N = Node> = N extends { type: 'service' } ? N : never\nexport type CatchNode<N = Node> = N extends { type: 'catch' } ? N : never\nexport type OrNode<N = Node> = N extends { type: 'or' } ? N : never\nexport type LogicNode<N = Node> = N extends { type: 'logic' } ? N : never\nexport type OutputNode<N = Node> = N extends { output: any } ? N : never\n",
|
|
9
9
|
"import type { Node } from './nodes.js'\nimport type { NamedString } from './types.js'\n\nexport default function getNodeOutputs(\n node: Node,\n outputName?: NamedString<'default'>,\n): Array<NamedString<'exit'>> {\n const outputs = !outputName\n ? node.output\n : outputName === '__default__'\n ? node.output.filter((o) => o.default)\n : node.output.filter((o) => 'name' in o && o.name === outputName)\n\n const outputTargets = new Set<NamedString<'exit'>>()\n for (const output of outputs) {\n if (output.exit) {\n outputTargets.add('__exit__')\n } else {\n outputTargets.add(output.target)\n }\n }\n\n return Array.from(outputTargets)\n}\n",
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"import { clone, deobfuscate, obfuscate } from '@requence/helpers'\nimport { contextSchema } from '@requence/helpers/context'\nimport { nodesSchema } from '@requence/helpers/protocol'\nimport { connect } from 'amqp-connection-manager'\nimport type { ConfirmChannel } from 'amqplib'\nimport semver from 'semver'\nimport { z } from 'zod'\n\nimport createExtendedContextHelper, {\n AbortError,\n type ExtendendContextHelper,\n type JSONValue,\n RetryError,\n unwrapResult,\n} from '../helpers.js'\n\ntype Input<V extends keyof Requence.Version> = Requence.Version[V]['input']\ntype Configuration<V extends keyof Requence.Version> =\n Requence.Version[V]['configuration']\ntype OutputName<\n V extends keyof Requence.Version,\n K = keyof Requence.Version[V]['outputs'],\n> = K extends '__default__' ? null : K\n\ntype OutputValue<\n V extends keyof Requence.Version,\n O extends OutputName<V> | null,\n> = Requence.Version[V]['outputs'][O extends null ? '__default__' : O]\n\ninterface ServiceContextHelper<V extends keyof Requence.Version>\n extends Omit<\n ExtendendContextHelper,\n 'getData' | 'getConfiguration' | 'toOutput'\n > {\n getData: {\n (): Input<V>\n (alias?: string): unknown\n }\n getConfiguration(): Configuration<V>\n toOutput<O extends OutputName<V>>(\n name: O,\n value: OutputValue<V, O>,\n ): '__output_value__'\n}\n\ntype ReturnValue<V extends keyof Requence.Version> =\n | ReturnType<ServiceContextHelper<V>['toOutput']>\n | OutputValue<V, null>\n | '__output_value__'\n\ntype ApiOutputName<V> = V extends keyof Requence.Version\n ? OutputName<V>\n : string | null\ntype ApiOutputValue<V, O> = V extends keyof Requence.Version\n ? O extends OutputName<V>\n ? OutputValue<V, O>\n : unknown\n : unknown\n\ninterface ConnectionApi<V> {\n close(): Promise<void>\n open(): Promise<ConnectionApi<V>>\n sendToOutput<O extends ApiOutputName<V>>(\n messageKey: string,\n outputName: O,\n data: ApiOutputValue<V, O>,\n ): void\n send(messageKey: string, data: ApiOutputValue<V, null>): void\n end(messageKey: string): void\n abort(messageKey: string, error: string | Error): void\n}\n\nconst messageKeySchema = z\n .string()\n .transform((str) => deobfuscate(str))\n .pipe(z.array(z.string().uuid()).length(3))\n .transform((arr) => ({\n taskId: arr[0],\n serviceId: arr[1],\n messageId: arr[2],\n }))\n\nconst headerSchema = z\n .object({\n properties: z.object({\n correlationId: z.string().uuid(),\n headers: z.object({\n version: z.string(),\n taskId: z.string().uuid(),\n serviceId: z.string().uuid(),\n }),\n }),\n })\n .transform((msg) => ({\n version: msg.properties.headers.version,\n messageId: msg.properties.correlationId,\n taskId: msg.properties.headers.taskId,\n serviceId: msg.properties.headers.serviceId,\n }))\n\nconst payloadSchema = z\n .object({ content: z.instanceof(Buffer) })\n .transform((msg) => JSON.parse(msg.content.toString()))\n .pipe(\n z.object({\n context: contextSchema,\n meta: z.object({\n nodes: nodesSchema,\n state: z.record(z.any()),\n }),\n }),\n )\n\ntype MaybePromise<T> = T | Promise<T>\n\ninterface ConnectionOptions {\n url: URL\n version: string\n connectionTimeout: number\n prefetch?: number\n silent?: boolean\n}\n\ntype MessageHandlerContext<V> = V extends keyof Requence.Version\n ? ServiceContextHelper<V>\n : ExtendendContextHelper\ntype MessageHandlerReturnValue<V> = V extends keyof Requence.Version\n ? ReturnValue<V>\n : JSONValue\n\ntype MessageHandlerFunction<V> = (\n context: MessageHandlerContext<V>,\n) => MaybePromise<MessageHandlerReturnValue<V> | void>\n\ntype MessageHandlerGenerator<V> = (\n context: MessageHandlerContext<V>,\n) => Generator<MessageHandlerReturnValue<V>, MessageHandlerReturnValue<V>, void>\ntype MessageHandlerAsyncGenerator<V> = (\n context: MessageHandlerContext<V>,\n) => AsyncGenerator<\n MessageHandlerReturnValue<V>,\n MessageHandlerReturnValue<V>,\n void\n>\n\nexport type MessageHandler<V> =\n | MessageHandlerAsyncGenerator<V>\n | MessageHandlerGenerator<V>\n | MessageHandlerFunction<V>\n\nexport type Connection = ReturnType<typeof createConnection>\n\nfunction isMessageHandlerGenerator<V extends keyof Requence.Version>(\n handler: MessageHandler<V>,\n): handler is MessageHandlerGenerator<V> | MessageHandlerAsyncGenerator<V> {\n return (\n handler.constructor.name === 'GeneratorFunction' ||\n handler.constructor.name === 'AsyncGeneratorFunction'\n )\n}\n\nconst activeMessages = new Set<string>()\n\nexport default function createConnection<V>(\n {\n url,\n version,\n prefetch = 1,\n silent = false,\n connectionTimeout,\n }: ConnectionOptions,\n messageHandler: MessageHandler<V>,\n) {\n const queue = url.username\n const exchange = url.username\n const connection = connect(url.toString())\n\n const connectedPromise = new Promise<void>((resolve, reject) => {\n const unsubscribe = () => {\n clearTimeout(timeout)\n connection.removeListener('connect', handleConnect)\n connection.removeListener('connectFailed', handleConnectFailed)\n }\n\n const timeout = setTimeout(() => {\n handleConnectFailed({ err: 'Connection timeout' })\n }, connectionTimeout)\n\n const handleConnect = () => {\n unsubscribe()\n resolve()\n }\n\n const handleConnectFailed = ({ err }: { err: string }) => {\n unsubscribe()\n reject(new Error(err))\n }\n\n connection.addListener('connect', handleConnect)\n connection.addListener('connectFailed', handleConnectFailed)\n })\n\n const channel = connection.createChannel({\n async setup(channel: ConfirmChannel) {\n await channel.checkExchange(exchange)\n await channel.checkExchange(`${exchange}-retry`)\n await channel.checkQueue(queue)\n await channel.prefetch(prefetch)\n },\n })\n\n const publish = ({\n data,\n outputName,\n messageId,\n ...headers\n }: {\n data?: unknown\n outputName?: string | null\n messageId: string\n serviceId: string\n taskId: string\n [property: string]: any\n }) => {\n channel.publish(exchange, '', Buffer.from(JSON.stringify(data ?? null)), {\n correlationId: messageId,\n contentType: 'application/json',\n headers: {\n outputName: outputName ?? null,\n ...headers,\n },\n })\n }\n\n channel.consume(queue, async (message) => {\n // this is a error retry message, we don't need those\n if (\n message.properties.headers?.abort ||\n message.properties.headers?.exception\n ) {\n channel.nack(message, false, false)\n return\n }\n\n let removeActiveMessage = () => {}\n try {\n let deferred = false\n let deferredReason: string | null = null\n const {\n messageId,\n serviceId,\n taskId,\n version: expectedVersion,\n } = headerSchema.parse(message)\n\n activeMessages.add(messageId)\n removeActiveMessage = () => activeMessages.delete(messageId)\n\n if (!semver.satisfies(version, expectedVersion)) {\n let expirationDate: string | null =\n message.properties.headers?.['original-expiration-date'] ?? null\n\n if (!expirationDate && message.properties.expiration) {\n expirationDate = String(\n Date.now() + parseInt(message.properties.expiration),\n )\n }\n\n if (expirationDate && Date.now() > parseInt(expirationDate)) {\n channel.nack(message, false, false)\n return\n }\n\n const properties = {\n ...message.properties,\n headers: {\n ...message.properties.headers,\n 'version-mismatch': version,\n 'original-expiration-date': expirationDate,\n },\n expiration: 0,\n }\n\n channel.publish(\n `${exchange}-retry`,\n 'retry', // to other services\n message.content,\n properties,\n )\n channel.ack(message)\n\n return\n }\n\n const payload = payloadSchema.parse(message)\n\n let acked = false\n const ack = () => {\n if (!acked) {\n acked = true\n channel.ack(message)\n }\n }\n\n let immediateUpdateState: Timer\n\n const extendedContext = createExtendedContextHelper({\n serviceId,\n context: payload.context,\n nodes: payload.meta.nodes,\n taskId,\n state: payload.meta.state,\n onStateChange(newState) {\n clearImmediate(immediateUpdateState)\n immediateUpdateState = setImmediate(() => {\n publish({\n messageId,\n taskId,\n serviceId,\n data: clone(newState),\n state: true,\n })\n })\n },\n onLog(debugMethod, data) {\n publish({\n messageId,\n taskId,\n serviceId,\n data,\n debugMethod,\n debug: true,\n })\n },\n onDefer(reason) {\n deferred = true\n deferredReason = reason || null\n ack()\n return obfuscate(taskId, serviceId, messageId)\n },\n }) as unknown as MessageHandlerContext<V>\n\n if (isMessageHandlerGenerator(messageHandler)) {\n const generator = messageHandler(extendedContext)\n while (true) {\n const { value: result, done } = await generator.next()\n ack()\n\n if (deferred) {\n deferred = false\n console.warn(\n 'returning a value in a deferred message resets the deferred status',\n )\n }\n const { value, outputName } = unwrapResult(result)\n\n publish({\n messageId,\n taskId,\n serviceId,\n data: value,\n outputName,\n })\n\n if (done) {\n break\n }\n }\n } else {\n const result = await messageHandler(extendedContext)\n ack()\n const { value, outputName } = unwrapResult(result)\n if (deferred && value) {\n console.warn(\n 'returning a value in a deferred message resets the deferred status',\n )\n deferred = false\n }\n\n if (!deferred || value) {\n publish({\n messageId,\n taskId,\n serviceId,\n data: value,\n outputName,\n })\n }\n }\n\n publish({\n messageId,\n taskId,\n serviceId,\n data: deferredReason,\n deferred,\n done: !deferred,\n })\n } catch (error) {\n if (error instanceof RetryError) {\n const properties = {\n ...message.properties,\n expiration: error.delay || 1_000, // 1s\n }\n\n channel.publish(\n `${exchange}-retry`,\n 'retry', // to other services\n message.content,\n properties,\n )\n channel.ack(message)\n return\n }\n\n if (error instanceof AbortError && error.message.length > 0) {\n // requeue the message with extreme lowest expiration and lowest priority\n // so that no service will have the change to read this message\n channel.publish(\n `${exchange}-retry`,\n 'requeue', //back to operator\n error.message,\n {\n ...message.properties,\n expiration: 0,\n priority: 0,\n contentType: 'text/plain',\n headers: {\n ...message.properties.headers,\n abort: true,\n },\n },\n )\n\n channel.ack(message)\n return\n }\n\n if (error instanceof Error) {\n if (!silent) {\n console.error(`Encountered an error inside service handler:`)\n console.error(error)\n }\n\n channel.publish(\n `${exchange}-retry`,\n 'requeue', // back to operator\n message.content,\n {\n ...message.properties,\n expiration: 0,\n priority: 0,\n headers: {\n ...message.properties.headers,\n exception: true,\n 'error-message': error.message || 'error in service handler',\n },\n },\n )\n\n channel.ack(message)\n return\n }\n\n channel.nack(message, false, false)\n } finally {\n removeActiveMessage()\n }\n })\n\n const api: ConnectionApi<V> = {\n close: () => channel.close(),\n open: () => connectedPromise.then(() => api),\n\n sendToOutput(messageKey, outputName, data) {\n const { taskId, serviceId, messageId } =\n messageKeySchema.parse(messageKey)\n\n if (activeMessages.has(messageId)) {\n throw new Error(\n 'Cannot send deferred message while callback handler is still running',\n )\n }\n publish({\n messageId,\n taskId,\n serviceId,\n data,\n outputName: outputName as string | null,\n })\n },\n send(messageKey, data) {\n const { taskId, serviceId, messageId } =\n messageKeySchema.parse(messageKey)\n\n if (activeMessages.has(messageId)) {\n throw new Error(\n 'Cannot send deferred message while callback handler is still running',\n )\n }\n publish({\n messageId,\n taskId,\n serviceId,\n data,\n })\n },\n end(messageKey) {\n const { taskId, serviceId, messageId } =\n messageKeySchema.parse(messageKey)\n\n if (activeMessages.has(messageId)) {\n throw new Error(\n 'Cannot send deferred message while callback handler is still running',\n )\n }\n publish({\n messageId,\n taskId,\n serviceId,\n done: true,\n })\n },\n abort(messageKey, error) {\n const { taskId, serviceId, messageId } =\n messageKeySchema.parse(messageKey)\n\n if (activeMessages.has(messageId)) {\n throw new Error(\n 'Cannot send deferred message while callback handler is still running',\n )\n }\n channel.publish(\n `${exchange}-retry`,\n 'requeue',\n error instanceof Error ? error.message : error,\n {\n correlationId: messageId,\n expiration: 0,\n priority: 0,\n contentType: 'text/plain',\n headers: {\n taskId,\n serviceId,\n abort: true,\n },\n },\n )\n },\n }\n return api\n}\n",
|
|
17
17
|
"import { createObjectProxy } from '@requence/helpers'\nimport {\n type Context,\n createContextHelper,\n getInternalContext,\n} from '@requence/helpers/context'\nimport type { Nodes, ServiceNode } from '@requence/helpers/protocol'\n\nexport type JSONValue =\n | string\n | number\n | boolean\n | { [x: string]: JSONValue }\n | Array<JSONValue>\n | null\n\nexport class RetryError extends Error {\n constructor(public delay?: number) {\n super()\n }\n}\n\nexport class AbortError extends Error {}\n\nconst OUTPUT_VALUE = Symbol('output_value')\n\ntype OutputValue = {\n [OUTPUT_VALUE]: string | null\n value: any\n}\n\nfunction isOutputValue(value: unknown): value is OutputValue {\n return value !== null && typeof value === 'object' && OUTPUT_VALUE in value\n}\n\nexport function unwrapResult(result: unknown) {\n if (isOutputValue(result)) {\n return { value: result.value, outputName: result[OUTPUT_VALUE] }\n }\n return { value: result, outputName: null }\n}\n\nexport default function createExtendedContextHelper(options: {\n serviceId: string\n taskId: string\n context: Context\n nodes: Nodes\n state: Record<string, any>\n onLog: (method: 'log' | 'warn' | 'info' | 'error', data: any[]) => void\n onDefer: (reason?: string) => string\n onStateChange: (newObj: Record<string, unknown>) => void\n}) {\n const contextHelper = createContextHelper(options.context, options.nodes)\n const internalContext = getInternalContext(contextHelper)\n\n return Object.assign(contextHelper, {\n taskId: options.taskId,\n toOutput(name: string | null, value: unknown): OutputValue {\n return {\n [OUTPUT_VALUE]: name,\n value,\n }\n },\n defer: options.onDefer,\n\n getConfiguration(): unknown {\n const result = internalContext.results.get(options.serviceId)\n if (result?.node.type === 'service') {\n return result.node.configuration ?? null\n }\n\n return null\n },\n\n getNode() {\n return internalContext.results.get(options.serviceId)!.node as ServiceNode\n },\n\n state: createObjectProxy(options.state, options.onStateChange) as Record<\n string,\n any\n >,\n debug: {\n log(...data: any[]) {\n options.onLog('log', data)\n },\n info(...data: any[]) {\n options.onLog('info', data)\n },\n warn(...data: any[]) {\n options.onLog('warn', data)\n },\n error(...data: any[]) {\n options.onLog('error', data)\n },\n },\n retry(delay?: number) {\n throw new RetryError(delay)\n },\n abort(reason?: string) {\n throw new AbortError(reason)\n },\n })\n}\n\nexport type ExtendendContextHelper = ReturnType<\n typeof createExtendedContextHelper\n>\n"
|
|
18
18
|
],
|
|
19
|
-
"mappings": "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",
|
|
20
|
-
"debugId": "
|
|
19
|
+
"mappings": "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",
|
|
20
|
+
"debugId": "B9746B0F55303A5264756E2164756E21",
|
|
21
21
|
"names": []
|
|
22
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/helpers.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,OAAO,EAGb,MAAM,2BAA2B,CAAA;AAClC,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAEpE,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,MAAM,GACN,OAAO,GACP;IAAE,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GAC1B,KAAK,CAAC,SAAS,CAAC,GAChB,IAAI,CAAA;AAER,qBAAa,UAAW,SAAQ,KAAK;IAChB,KAAK,CAAC,EAAE,MAAM;gBAAd,KAAK,CAAC,EAAE,MAAM,YAAA;CAGlC;AAED,qBAAa,UAAW,SAAQ,KAAK;CAAG;AAExC,QAAA,MAAM,YAAY,eAAyB,CAAA;AAE3C,KAAK,WAAW,GAAG;IACjB,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,KAAK,EAAE,GAAG,CAAA;CACX,CAAA;AAMD,wBAAgB,YAAY,CAAC,MAAM,EAAE,OAAO;;;EAK3C;AAED,MAAM,CAAC,OAAO,UAAU,2BAA2B,CAAC,OAAO,EAAE;IAC3D,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,KAAK,CAAA;IACZ,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC1B,KAAK,EAAE,CAAC,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;IACvE,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,MAAM,CAAA;IACpC,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAA;CACzD
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/helpers.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,OAAO,EAGb,MAAM,2BAA2B,CAAA;AAClC,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAEpE,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,MAAM,GACN,OAAO,GACP;IAAE,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GAC1B,KAAK,CAAC,SAAS,CAAC,GAChB,IAAI,CAAA;AAER,qBAAa,UAAW,SAAQ,KAAK;IAChB,KAAK,CAAC,EAAE,MAAM;gBAAd,KAAK,CAAC,EAAE,MAAM,YAAA;CAGlC;AAED,qBAAa,UAAW,SAAQ,KAAK;CAAG;AAExC,QAAA,MAAM,YAAY,eAAyB,CAAA;AAE3C,KAAK,WAAW,GAAG;IACjB,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,KAAK,EAAE,GAAG,CAAA;CACX,CAAA;AAMD,wBAAgB,YAAY,CAAC,MAAM,EAAE,OAAO;;;EAK3C;AAED,MAAM,CAAC,OAAO,UAAU,2BAA2B,CAAC,OAAO,EAAE;IAC3D,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,KAAK,CAAA;IACZ,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC1B,KAAK,EAAE,CAAC,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;IACvE,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,MAAM,CAAA;IACpC,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAA;CACzD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAMkB,MAAM,GAAG,IAAI,SAAS,OAAO,GAAG,WAAW;qBARzC,MAAM,KAAK,MAAM;wBAgBd,OAAO;eAUsC,WAAW;WAGV,MAAM,CACtE,MAAM,EACN,GAAG,CACJ;;qBAEc,GAAG,EAAE;sBAGJ,GAAG,EAAE;sBAGL,GAAG,EAAE;uBAGJ,GAAG,EAAE;;kBAIR,MAAM;mBAGL,MAAM;EAIxB;AAED,MAAM,MAAM,sBAAsB,GAAG,UAAU,CAC7C,OAAO,2BAA2B,CACnC,CAAA"}
|