@requence/service 1.0.0-alpha.22 → 1.0.0-alpha.24
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 +12 -0
- package/build/index.js +327 -85
- package/build/index.js.map +10 -9
- package/build/types/helpers/src/files/fileObject.d.ts +2 -2
- package/build/types/helpers/src/index.d.ts +1 -0
- package/build/types/helpers/src/index.d.ts.map +1 -1
- package/build/types/helpers/src/jsonschema/mapSchema.d.ts +1 -1
- package/build/types/helpers/src/jsonschema/mapSchema.d.ts.map +1 -1
- package/build/types/helpers/src/jsonschema/types.d.ts +2 -1
- package/build/types/helpers/src/jsonschema/types.d.ts.map +1 -1
- package/build/types/helpers/src/jsonschema/validate.d.ts.map +1 -1
- package/build/types/helpers/src/protocol/update.d.ts +56 -0
- package/build/types/helpers/src/protocol/update.d.ts.map +1 -1
- package/build/types/helpers/src/utils/mapData.d.ts +1 -0
- package/build/types/helpers/src/utils/mapData.d.ts.map +1 -1
- package/build/types/helpers/src/utils/requenceCallback.d.ts +15 -0
- package/build/types/helpers/src/utils/requenceCallback.d.ts.map +1 -0
- package/build/types/helpers/src/utils/resolveRequenceTypes.d.ts +7 -1
- package/build/types/helpers/src/utils/resolveRequenceTypes.d.ts.map +1 -1
- package/build/types/service/src/createAmqpConnection.d.ts +2 -2
- package/build/types/service/src/createAmqpConnection.d.ts.map +1 -1
- package/build/types/service/src/helpers.d.ts +48 -17
- package/build/types/service/src/helpers.d.ts.map +1 -1
- package/build/types/service/src/index.d.ts +2 -0
- package/build/types/service/src/index.d.ts.map +1 -1
- package/package.json +1 -1
package/build/index.js.map
CHANGED
|
@@ -1,22 +1,23 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../src/index.ts", "../../helpers/src/utils/createRemotePromise.ts", "../../helpers/src/utils/isRecord.ts", "../../helpers/src/utils/mapData.ts", "../../helpers/src/files/mapOutput.ts", "../../helpers/src/files/RequenceFile.ts", "../../helpers/src/files/RequenceStream.ts", "../../helpers/src/files/streamObject.ts", "../../helpers/src/files/fileObject.ts", "../../helpers/src/utils/resolveRequenceTypes.ts", "../src/createAmqpConnection.ts", "../src/helpers.ts", "../src/mapInput.ts"],
|
|
3
|
+
"sources": ["../src/index.ts", "../../helpers/src/utils/createRemotePromise.ts", "../../helpers/src/utils/isRecord.ts", "../../helpers/src/utils/mapData.ts", "../../helpers/src/utils/requenceCallback.ts", "../../helpers/src/files/mapOutput.ts", "../../helpers/src/files/RequenceFile.ts", "../../helpers/src/files/RequenceStream.ts", "../../helpers/src/files/streamObject.ts", "../../helpers/src/files/fileObject.ts", "../../helpers/src/utils/resolveRequenceTypes.ts", "../src/createAmqpConnection.ts", "../src/helpers.ts", "../src/mapInput.ts"],
|
|
4
4
|
"sourcesContent": [
|
|
5
|
-
"import fs from 'node:fs'\n\nimport { deobfuscate } from '@requence/helpers'\nimport type { AmqpConnectionManagerOptions } from 'amqp-connection-manager'\nimport { z } from 'zod/v4'\n\nimport createAmqpConnection, {\n type ConnectionApi,\n type MessageHandler,\n} from './createAmqpConnection.ts'\n\nexport { RequenceFile, RequenceStream } from '@requence/helpers/files'\n\nexport type ServiceApi<\n V extends keyof RequenceService.Version | (string & {}),\n> = ConnectionApi<V>\n\ninterface ServiceOptions<V extends string> {\n accessToken?: string\n version: V\n prefetch?: number\n connectionTimeout?: number\n silent?: boolean\n connectionOptions?: AmqpConnectionManagerOptions['connectionOptions']\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: z.string(),\n silent: z.boolean().optional(),\n prefetch: z.number().int().optional(),\n connectionTimeout: z.number().positive().default(3_000),\n connectionOptions: z.any(),\n})\n\nexport function createService<\n V extends keyof RequenceService.Version | (string & {}),\n>(version: V, messageHandler: MessageHandler<V>): ServiceApi<V>\nexport function createService<\n V extends keyof RequenceService.Version | (string & {}),\n>(options: ServiceOptions<V>, messageHandler: MessageHandler<V>): ServiceApi<V>\nexport function createService<\n V extends keyof RequenceService.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 let token =\n options.accessToken ??\n process.env.REQUENCE_SERVICE_ACCESS_TOKEN ??\n process.env.REQUENCE_ACCESS_TOKEN\n\n if (!token) {\n const pkgJson = JSON.parse(fs.readFileSync('package.json', 'utf-8'))\n token =\n pkgJson.requence?.service?.accessToken ?? pkgJson.requence?.accessToken\n }\n\n if (!token) {\n throw new Error('No service key found')\n }\n\n const parts = deobfuscate(token)\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",
|
|
5
|
+
"import fs from 'node:fs'\n\nimport { deobfuscate } from '@requence/helpers'\nimport type { AmqpConnectionManagerOptions } from 'amqp-connection-manager'\nimport { z } from 'zod/v4'\n\nimport createAmqpConnection, {\n type ConnectionApi,\n type MessageHandler,\n} from './createAmqpConnection.ts'\n\nexport { RequenceFile, RequenceStream } from '@requence/helpers/files'\nexport { createCallback } from '@requence/helpers'\nexport type RequenceCallback<T> = (arg: T) => void\n\nexport type ServiceApi<\n V extends keyof RequenceService.Version | (string & {}),\n> = ConnectionApi<V>\n\ninterface ServiceOptions<V extends string> {\n accessToken?: string\n version: V\n prefetch?: number\n connectionTimeout?: number\n silent?: boolean\n connectionOptions?: AmqpConnectionManagerOptions['connectionOptions']\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: z.string(),\n silent: z.boolean().optional(),\n prefetch: z.number().int().optional(),\n connectionTimeout: z.number().positive().default(3_000),\n connectionOptions: z.any(),\n})\n\nexport function createService<\n V extends keyof RequenceService.Version | (string & {}),\n>(version: V, messageHandler: MessageHandler<V>): ServiceApi<V>\nexport function createService<\n V extends keyof RequenceService.Version | (string & {}),\n>(options: ServiceOptions<V>, messageHandler: MessageHandler<V>): ServiceApi<V>\nexport function createService<\n V extends keyof RequenceService.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 let token =\n options.accessToken ??\n process.env.REQUENCE_SERVICE_ACCESS_TOKEN ??\n process.env.REQUENCE_ACCESS_TOKEN\n\n if (!token) {\n const pkgJson = JSON.parse(fs.readFileSync('package.json', 'utf-8'))\n token =\n pkgJson.requence?.service?.accessToken ?? pkgJson.requence?.accessToken\n }\n\n if (!token) {\n throw new Error('No service key found')\n }\n\n const parts = deobfuscate(token)\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
6
|
"export function createRemotePromise<T = void>(\n onAwait?: (\n resolve: (value: T) => void,\n reject: (error: any) => void,\n ) => void | Promise<void>,\n) {\n let resolvePromise!: (value: T | PromiseLike<T>) => void\n let rejectPromise!: (reason?: any) => void\n\n const internalPromise = new Promise<T>((resolve, reject) => {\n resolvePromise = resolve\n rejectPromise = reject\n })\n\n let isAwaited = false\n\n const wrappedPromise = new Proxy(internalPromise, {\n get(target, property: keyof PromiseLike<T>) {\n if (\n property === 'then' ||\n property === 'catch' ||\n property === 'finally'\n ) {\n if (!isAwaited && onAwait) {\n isAwaited = true\n onAwait(resolvePromise, rejectPromise)\n }\n return target[property].bind(target)\n }\n\n return target[property]\n },\n })\n\n return Object.assign(wrappedPromise, {\n resolve: resolvePromise,\n reject: rejectPromise,\n promise: wrappedPromise,\n })\n}\n\nexport type RemotePromise<T> = ReturnType<typeof createRemotePromise<T>>\n",
|
|
7
7
|
"import { z } from 'zod/v4'\n\nconst recordSchema = z.record(z.string(), z.unknown())\nexport function isRecord(data: unknown): data is Record<string, unknown> {\n return recordSchema.safeParse(data).success\n}\n",
|
|
8
|
-
"import { isRecord } from './isRecord.ts'\n\ntype DataVistor<T> = (\n data: T,\n path: Array<string | number>,\n) => Promise<any> | any\n\ninterface DataVistors {\n Null?: DataVistor<null>\n String?: DataVistor<string>\n Number?: DataVistor<number>\n Object?: DataVistor<object>\n Array?: DataVistor<Array<any>>\n Buffer?: DataVistor<Buffer>\n Symbol?: DataVistor<symbol>\n}\n\ntype HasPromiseVistor<T extends DataVistors, Then, Else> = T[keyof T] extends (\n ...args: any[]\n) => any\n ? Promise<any> extends ReturnType<T[keyof T]>\n ? Then\n : Else\n : Else\n\nfunction resolve<T>(value: T | Promise<T>, onResolve: (value: T) => void) {\n if (value instanceof Promise) {\n return Promise.resolve()\n .then(() => value)\n .then(onResolve)\n }\n return onResolve(value)\n}\n\nfunction notUndefined(value: unknown, fallback: unknown) {\n return resolve(value, (resolvedValue) =>\n typeof resolvedValue === 'undefined' ? fallback : resolvedValue,\n )\n}\n\nclass AbortMapData extends Error {}\n\nexport function mapData<\n Output,\n Input = unknown,\n V extends DataVistors = DataVistors,\n>(\n data: Input,\n visitors: V,\n): HasPromiseVistor<\n V,\n Promise<unknown extends Output ? Input : Output>,\n unknown extends Output ? Input : Output\n> {\n let aborted = false\n const traverseData = (data: any, path: Array<string | number>): any => {\n if (aborted) {\n return data\n }\n try {\n if (Array.isArray(data)) {\n return resolve(visitors.Array?.(data, path), (resolvedData) => {\n if (resolvedData) {\n return resolvedData\n }\n const items = data.map((item, index) =>\n traverseData(item, [...path, index]),\n )\n if (items.some((item) => item instanceof Promise)) {\n return Promise.all(items)\n }\n\n return items\n })\n }\n if (data === null) {\n return notUndefined(visitors.Null?.(data, path), data)\n }\n if (typeof Buffer !== 'undefined' && Buffer.isBuffer(data)) {\n return notUndefined(visitors.Buffer?.(data, path), data)\n }\n if (typeof data === 'string') {\n return notUndefined(visitors.String?.(data, path), data)\n }\n if (typeof data === 'number') {\n return notUndefined(visitors.Number?.(data, path), data)\n }\n if (typeof data === 'symbol') {\n return notUndefined(visitors.Symbol?.(data, path), data)\n }\n if (isRecord(data)) {\n return resolve(\n visitors.Object?.(structuredClone(data), path),\n (resolvedData) => {\n const nextData = resolvedData ?? data\n const entries = Object.entries(nextData).map(([key, value]) => [\n key,\n traverseData(value, [...path, key]),\n ])\n\n if (entries.some(([, value]) => value instanceof Promise)) {\n return Promise.all(\n entries.map(([key, value]) =>\n Promise.resolve()\n .then(() => value)\n .then((resolvedValue) => [key, resolvedValue]),\n ),\n ).then((entries) => Object.fromEntries(entries))\n }\n\n return Object.fromEntries(entries)\n },\n )\n }\n if (typeof data === 'object' && data) {\n return notUndefined(visitors.Object?.(data, path), data)\n }\n return data\n } catch (error) {\n if (error instanceof AbortMapData) {\n aborted = true\n return data\n }\n throw error\n }\n }\n\n return traverseData(data, [])\n}\n\nmapData.abort = () => {\n throw new AbortMapData()\n}\n",
|
|
8
|
+
"import { isRecord } from './isRecord.ts'\n\ntype DataVistor<T> = (\n data: T,\n path: Array<string | number>,\n) => Promise<any> | any\n\ninterface DataVistors {\n Null?: DataVistor<null>\n String?: DataVistor<string>\n Number?: DataVistor<number>\n Object?: DataVistor<object>\n Array?: DataVistor<Array<any>>\n Buffer?: DataVistor<Buffer>\n Function?: DataVistor<(...args: any[]) => any>\n Symbol?: DataVistor<symbol>\n}\n\ntype HasPromiseVistor<T extends DataVistors, Then, Else> = T[keyof T] extends (\n ...args: any[]\n) => any\n ? Promise<any> extends ReturnType<T[keyof T]>\n ? Then\n : Else\n : Else\n\nfunction resolve<T>(value: T | Promise<T>, onResolve: (value: T) => void) {\n if (value instanceof Promise) {\n return Promise.resolve()\n .then(() => value)\n .then(onResolve)\n }\n return onResolve(value)\n}\n\nfunction notUndefined(value: unknown, fallback: unknown) {\n return resolve(value, (resolvedValue) =>\n typeof resolvedValue === 'undefined' ? fallback : resolvedValue,\n )\n}\n\nclass AbortMapData extends Error {}\n\nexport function mapData<\n Output,\n Input = unknown,\n V extends DataVistors = DataVistors,\n>(\n data: Input,\n visitors: V,\n): HasPromiseVistor<\n V,\n Promise<unknown extends Output ? Input : Output>,\n unknown extends Output ? Input : Output\n> {\n let aborted = false\n const traverseData = (data: any, path: Array<string | number>): any => {\n if (aborted) {\n return data\n }\n try {\n if (Array.isArray(data)) {\n return resolve(visitors.Array?.(data, path), (resolvedData) => {\n if (resolvedData) {\n return resolvedData\n }\n const items = data.map((item, index) =>\n traverseData(item, [...path, index]),\n )\n if (items.some((item) => item instanceof Promise)) {\n return Promise.all(items)\n }\n\n return items\n })\n }\n if (data === null) {\n return notUndefined(visitors.Null?.(data, path), data)\n }\n if (typeof Buffer !== 'undefined' && Buffer.isBuffer(data)) {\n return notUndefined(visitors.Buffer?.(data, path), data)\n }\n if (typeof data === 'string') {\n return notUndefined(visitors.String?.(data, path), data)\n }\n if (typeof data === 'number') {\n return notUndefined(visitors.Number?.(data, path), data)\n }\n if (typeof data === 'symbol') {\n return notUndefined(visitors.Symbol?.(data, path), data)\n }\n if (typeof data === 'function') {\n return notUndefined(visitors.Function?.(data, path), data)\n }\n if (isRecord(data)) {\n return resolve(\n visitors.Object?.(structuredClone(data), path),\n (resolvedData) => {\n const nextData = resolvedData ?? data\n if (!isRecord(nextData)) {\n return nextData\n }\n const entries = Object.entries(nextData).map(([key, value]) => [\n key,\n traverseData(value, [...path, key]),\n ])\n\n if (entries.some(([, value]) => value instanceof Promise)) {\n return Promise.all(\n entries.map(([key, value]) =>\n Promise.resolve()\n .then(() => value)\n .then((resolvedValue) => [key, resolvedValue]),\n ),\n ).then((entries) => Object.fromEntries(entries))\n }\n\n return Object.fromEntries(entries)\n },\n )\n }\n if (typeof data === 'object' && data) {\n return notUndefined(visitors.Object?.(data, path), data)\n }\n return data\n } catch (error) {\n if (error instanceof AbortMapData) {\n aborted = true\n return data\n }\n throw error\n }\n }\n\n return traverseData(data, [])\n}\n\nmapData.abort = () => {\n throw new AbortMapData()\n}\n",
|
|
9
|
+
"import { z } from 'zod/v4'\n\nconst callbackObjectSchema = z.object({\n sourceId: z.string(),\n outputName: z.string().nullable(),\n propertyPath: z.array(z.union([z.string(), z.int()])),\n callbackId: z.uuid(),\n __REQUENCE_type: z.literal('RequenceCallback'),\n})\n\nexport type CallbackObject = z.infer<typeof callbackObjectSchema>\n\nexport function isCallbackObject(data: unknown): data is CallbackObject {\n return callbackObjectSchema.safeParse(data).success\n}\n\nexport function createCallback<T>(callback?: (arg: T) => void) {\n let resolvePromise!: (arg: T) => void\n const promise = new Promise<T>((resolve) => {\n resolvePromise = resolve\n })\n\n const executor = (arg: T) => {\n resolvePromise(arg)\n callback?.(arg)\n }\n\n return Object.assign(executor, {\n response() {\n return promise\n },\n })\n}\n",
|
|
9
10
|
"import {\n RequenceFile,\n RequenceStream,\n toFileObject,\n toStreamObject,\n} from './index.ts'\nimport type { TaskOptions } from '../protocol/taskOptions.ts'\nimport { mapData } from '../utils/mapData.ts'\n\nasync function upload(\n uploadUrl: string,\n body: BodyInit | null,\n signal?: AbortSignal,\n contentType?: string | null,\n) {\n const uploadResponse = await fetch(uploadUrl, {\n method: 'POST',\n signal,\n headers: contentType\n ? {\n 'Content-Type': contentType,\n }\n : {},\n body,\n })\n\n const data = await uploadResponse.json()\n if (!data || typeof data !== 'object') {\n throw new Error('invalid upload response')\n }\n\n return toFileObject(data as { size: number; mime: string; url: string })\n}\n\n/**\n * nodejs closes the stream when no data where pushed before executing fetch,\n * this way we wait for the first bytes, the executing fetch\n * All that gets obsolete once we use bun.\n */\nasync function stream(\n streamUrl: string,\n stream: ReadableStream,\n signal?: AbortSignal,\n contentType?: string | null,\n) {\n const [testStream, dataStream] = stream.tee()\n\n const reader = testStream.getReader()\n const dataPromise = reader.read().then(({ done }) => {\n if (done) {\n throw new Error('No streaming date received')\n }\n\n reader.cancel()\n })\n\n const streamResponse = await fetch(streamUrl, {\n method: 'POST',\n signal,\n headers: contentType ? { 'Content-Type': contentType } : {},\n })\n\n const data = await streamResponse.json()\n if (!data || typeof data !== 'object') {\n throw new Error('invalid stream response')\n }\n\n const { mime, url } = data as { mime: string; url: string }\n await dataPromise\n\n // don't wait\n const done = fetch(url, {\n method: 'POST',\n signal,\n duplex: 'half', // this is not typed but needed for nodejs to handle readable streams\n body: dataStream,\n } as RequestInit)\n\n return [toStreamObject({ mime, url }), done] as const\n}\n\nexport async function mapOutput(params: {\n value: unknown\n options: Pick<TaskOptions, 'uploadUrl' | 'streamUrl'>\n onFail?: (error: Error) => void\n onSkip?: () => void\n onDone?: () => void\n signal?: AbortSignal\n}) {\n const streamPromises: Array<Promise<any>> = []\n const mapped = await mapData(params.value, {\n async Object(obj) {\n if (obj instanceof Blob || obj instanceof RequenceFile) {\n // don't reupload existing files\n if (obj instanceof RequenceFile && obj.fileObject) {\n return obj.fileObject\n }\n\n if (params.options.uploadUrl) {\n try {\n if (obj instanceof Blob) {\n return await upload(\n params.options.uploadUrl,\n obj,\n params.signal,\n obj.type,\n )\n }\n\n if (obj instanceof RequenceFile) {\n return await upload(\n params.options.uploadUrl,\n await obj.blob(),\n params.signal,\n obj.mimeType,\n )\n }\n } catch (error) {\n if (!(error instanceof Error)) {\n throw error\n }\n params.onFail?.(error)\n return null\n }\n } else {\n params.onSkip?.()\n return null\n }\n }\n\n if (obj instanceof Response || obj instanceof RequenceStream) {\n if (obj instanceof RequenceStream && obj.streamObject) {\n return obj.streamObject\n }\n\n if (params.options.streamUrl) {\n try {\n if (obj instanceof Response && obj.body) {\n const [streamObject, streamPromise] = await stream(\n params.options.streamUrl,\n obj.body,\n params.signal,\n obj.headers.get('Content-Type'),\n )\n streamPromises.push(streamPromise)\n return streamObject\n }\n\n if (obj instanceof RequenceStream) {\n const [streamObject, streamPromise] = await stream(\n params.options.streamUrl,\n obj.stream(),\n params.signal,\n obj.mimeType,\n )\n streamPromises.push(streamPromise)\n return streamObject\n }\n } catch (error) {\n if (!(error instanceof Error)) {\n throw error\n }\n params.onFail?.(error)\n return null\n }\n } else {\n params.onSkip?.()\n return null\n }\n }\n },\n })\n\n Promise.allSettled(streamPromises).then(() => params.onDone?.())\n\n return mapped\n}\n",
|
|
10
11
|
"import type { FileObject } from './index.ts'\nimport type { MainMimeType, SubMimeType, ValidMimeType } from './types.ts'\n\ninterface RequenceFilePropertyBag<T> extends Omit<BlobPropertyBag, 'type'> {\n type: T\n}\n\nexport interface RequenceFileType<A, B> {\n size: number\n mimeType: string\n mainMimeType: A\n subMimeType: B\n text(): Promise<string>\n json(): Promise<unknown>\n blob(): Promise<Blob>\n arrayBuffer(): Promise<ArrayBuffer>\n}\n\nexport class RequenceFile<\n T extends `${string}/${string}` = '*/*',\n A = MainMimeType<T>,\n B = SubMimeType<T>,\n> implements RequenceFileType<A, B>\n{\n #data: Blob\n #file: FileObject | null = null\n constructor(\n blobParts: BlobPart[],\n options?: RequenceFilePropertyBag<ValidMimeType<T>>,\n ) {\n this.#data = new Blob(blobParts, options)\n }\n\n /** @internal */\n static fromFileObject<T extends `${string}/${string}`>(file: FileObject) {\n const instance = new this([], { type: 'x/x' })\n instance.#file = file\n return instance as RequenceFile<T>\n }\n\n /** @internal */\n get fileObject() {\n return this.#file\n }\n\n get size() {\n return this.#file?.size ?? this.#data.size\n }\n\n get mimeType() {\n return this.#file?.mime ?? this.#data.type\n }\n\n get mainMimeType() {\n return this.mimeType.split('/')[0] as A\n }\n\n get subMimeType() {\n return this.mimeType.split('/')[1] as B\n }\n\n async text() {\n if (this.#file) {\n return fetch(this.#file.url).then((response) => response.text())\n }\n return this.#data.text()\n }\n\n async json() {\n if (this.#file) {\n return fetch(this.#file.url).then((response) => response.json())\n }\n return JSON.parse(await this.text())\n }\n\n async blob() {\n if (this.#file) {\n return fetch(this.#file.url).then((response) => response.blob())\n }\n return this.#data\n }\n\n async arrayBuffer() {\n if (this.#file) {\n return fetch(this.#file.url).then((response) => response.arrayBuffer())\n }\n return this.#data.arrayBuffer()\n }\n\n toString() {\n return `RequenceFile<${this.mimeType}>`\n }\n\n toJSON() {\n return `RequenceFile<${this.mimeType}>`\n }\n}\n",
|
|
11
12
|
"import type { StreamObject } from './index.ts'\nimport type { MainMimeType, SubMimeType, ValidMimeType } from './types.ts'\n\nexport interface RequenceStreamType<A, B> {\n mimeType: string\n mainMimeType: A\n subMimeType: B\n stream(): ReadableStream\n}\n\ninterface RequenceStreamOptions<T> {\n type: T\n}\n\nexport class RequenceStream<\n T extends `${string}/${string}` = '*/*',\n A = MainMimeType<T>,\n B = SubMimeType<T>,\n> implements RequenceStreamType<A, B>\n{\n #data: ReadableStream\n #stream: StreamObject | null = null\n #options: RequenceStreamOptions<any>\n\n constructor(\n stream: ReadableStream,\n options: RequenceStreamOptions<ValidMimeType<T>>,\n ) {\n this.#data = stream\n this.#options = options\n }\n\n /** @internal */\n static fromStreamObject<T extends `${string}/${string}`>(\n stream: StreamObject,\n ) {\n const instance = new this(null as unknown as ReadableStream, {\n type: 'x/x',\n })\n instance.#stream = stream\n return instance as unknown as RequenceStream<T>\n }\n\n /** @internal */\n get streamObject() {\n return this.#stream\n }\n\n get mimeType() {\n return this.#stream?.mime ?? this.#options.type\n }\n\n get mainMimeType() {\n return this.mimeType.split('/')[0] as A\n }\n\n get subMimeType() {\n return this.mimeType.split('/')[1] as B\n }\n\n stream() {\n if (this.#stream) {\n const { readable, writable } = new TransformStream()\n\n fetch(this.#stream.url).then((response) =>\n response.body?.pipeTo(writable),\n )\n\n return readable\n }\n return this.#data\n }\n\n asyncIterable(): AsyncIterable<Uint8Array> {\n const reader = this.stream().getReader()\n\n return {\n [Symbol.asyncIterator]() {\n return {\n async next() {\n return reader.read() as Promise<IteratorResult<Uint8Array>>\n },\n async return() {\n reader.cancel()\n reader.releaseLock()\n return { done: true, value: null }\n },\n }\n },\n }\n }\n\n toString() {\n return `RequenceStream<${this.mimeType}>`\n }\n\n toJSON() {\n return `RequenceStream<${this.mimeType}>`\n }\n}\n",
|
|
12
13
|
"import { z } from 'zod/v4'\n\nconst streamObjectSchema = z.object({\n mime: z.string(),\n url: z.string().url(),\n __REQUENCE_type: z.literal('RequenceStream'),\n})\n\nexport type StreamObject = z.infer<typeof streamObjectSchema>\n\nexport function isStreamObject(data: unknown): data is StreamObject {\n return streamObjectSchema.safeParse(data).success\n}\n\nexport function toStreamObject(streamInfo: {\n mime: string\n url: string\n}): StreamObject {\n return {\n ...streamInfo,\n __REQUENCE_type: 'RequenceStream',\n }\n}\n",
|
|
13
|
-
"import { z } from 'zod/v4'\n\nconst fileObjectSchema = z.object({\n size: z.
|
|
14
|
-
"import { mapData } from './mapData.ts'\nimport {\n RequenceFile,\n RequenceStream,\n isFileObject,\n isStreamObject,\n} from '../files/index.ts'\n\nexport function resolveRequenceTypes(data: any) {\n return mapData(data, {\n Object(obj) {\n if (isFileObject(obj)) {\n return RequenceFile.fromFileObject(obj)\n }\n\n if (isStreamObject(obj)) {\n return RequenceStream.fromStreamObject(obj)\n }\n },\n })\n}\n",
|
|
15
|
-
"import { createRemotePromise, deobfuscate, obfuscate } from '@requence/helpers'\nimport { mapOutput } from '@requence/helpers/files'\nimport {\n type AmqpConnectionManagerOptions,\n type Options,\n connect,\n} from 'amqp-connection-manager'\nimport type { ConfirmChannel } from 'amqplib'\nimport { z } from 'zod/v4'\n\nimport createContextHelper, {\n AbortError,\n type ContextHelper,\n type JSONValue,\n RetryError,\n SkipError,\n unwrapResult,\n} from './helpers.ts'\nimport mapInput from './mapInput.ts'\n\ntype Input<V extends keyof RequenceService.Version> =\n RequenceService.Version[V]['input']\ntype Configuration<V extends keyof RequenceService.Version> =\n RequenceService.Version[V]['configuration']\ntype OutputName<\n V extends keyof RequenceService.Version,\n K = keyof RequenceService.Version[V]['outputs'],\n> = K extends '__default__' ? null : K\n\ntype OutputValue<\n V extends keyof RequenceService.Version,\n O extends OutputName<V> | null,\n> = RequenceService.Version[V]['outputs'][O extends null ? '__default__' : O]\n\ninterface ServiceContextHelper<V extends keyof RequenceService.Version>\n extends Omit<\n ContextHelper,\n 'input' | 'configuration' | 'getData' | 'getConfiguration' | 'toOutput'\n > {\n input: Input<V>\n configuration: Configuration<V>\n\n toOutput<O extends OutputName<V>>(\n name: O,\n value: OutputValue<V, O>,\n ): '__output_value__'\n}\n\ntype ReturnValue<V extends keyof RequenceService.Version> =\n | ReturnType<ServiceContextHelper<V>['toOutput']>\n | OutputValue<V, null>\n | '__output_value__'\n\ntype ApiOutputName<V> = V extends keyof RequenceService.Version\n ? OutputName<V>\n : string | null\ntype ApiOutputValue<V, O> = V extends keyof RequenceService.Version\n ? O extends OutputName<V>\n ? OutputValue<V, O>\n : unknown\n : unknown\n\ninterface ActorApi<V> {\n sendToOutput<O extends ApiOutputName<V>>(\n outputName: O,\n data: ApiOutputValue<V, O>,\n ): void\n send(data: ApiOutputValue<V, null>): void\n abort(error: string | Error): void\n}\n\nexport interface ConnectionApi<V> {\n close(): Promise<void>\n open(): Promise<ConnectionApi<V>>\n act(\n messageKey: string,\n actor: (api: ActorApi<V>) => void | Promise<void>,\n ): Promise<void>\n}\n\nconst messageKeySchema = z\n .string()\n .transform((str) => deobfuscate(str))\n .pipe(z.tuple([z.uuid(), z.uuid()]).rest(z.string()))\n .transform((arr) => ({\n taskId: arr[0],\n messageId: arr[1],\n uploadUrl: arr[2] || undefined,\n streamUrl: arr[3] || undefined,\n }))\n\nconst headerSchema = z\n .object({\n properties: z.object({\n correlationId: z.uuid(),\n headers: z.object({\n version: z.string(),\n taskId: z.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 }))\n\nconst payloadSchema = z\n .object({ content: z.instanceof(Buffer) })\n .transform((msg) => JSON.parse(msg.content.toString()))\n .pipe(\n z.object({\n input: z.unknown(),\n configuration: z.unknown(),\n options: z.object({\n uploadUrl: z.url().optional(),\n streamUrl: z.url().optional(),\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 connectionOptions?: AmqpConnectionManagerOptions['connectionOptions']\n}\n\ntype MessageHandlerContext<V> = V extends keyof RequenceService.Version\n ? ServiceContextHelper<V>\n : ContextHelper\ntype MessageHandlerReturnValue<V> = V extends keyof RequenceService.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> = V extends keyof RequenceService.Version\n ? RequenceService.Version[V]['mode'] extends 'linear'\n ? MessageHandlerFunction<V>\n :\n | MessageHandlerAsyncGenerator<V>\n | MessageHandlerGenerator<V>\n | MessageHandlerFunction<V>\n :\n | MessageHandlerAsyncGenerator<V>\n | MessageHandlerGenerator<V>\n | MessageHandlerFunction<V>\n\nfunction isMessageHandlerGenerator<V extends keyof RequenceService.Version>(\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n handler: Function,\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 }: ConnectionOptions,\n messageHandler: MessageHandler<V>,\n) {\n const queue = `${url.username}@${version}`\n const exchange = url.username\n const connection = connect(url.toString(), { connectionOptions })\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 priority,\n ...headers\n }: {\n index: number\n data?: unknown\n outputName?: string | null\n messageId: string\n taskId: string\n priority?: number\n [property: string]: any\n }) => {\n channel.publish(exchange, '', Buffer.from(JSON.stringify(data ?? null)), {\n correlationId: messageId,\n contentType: 'application/json',\n persistent: true,\n priority,\n headers: {\n outputName: outputName ?? null,\n ...headers,\n },\n })\n }\n\n channel.consume(queue, async (message) => {\n let publishIndex = 0\n const donePromises: Array<Promise<void>> = []\n let removeActiveMessage = () => {}\n\n let acked = false\n const ack = () => {\n if (!acked) {\n acked = true\n channel.ack(message)\n }\n }\n\n try {\n let deferred = false\n let deferredReason: string | null = null\n const { messageId, taskId } = headerSchema.parse(message)\n\n activeMessages.add(messageId)\n removeActiveMessage = () => activeMessages.delete(messageId)\n\n const payload = payloadSchema.parse(message)\n\n const extendedContext = createContextHelper({\n taskId,\n input: mapInput(payload.input),\n configuration: mapInput(payload.configuration),\n onLog(debugMethod, data) {\n publish({\n index: publishIndex++,\n messageId,\n taskId,\n data,\n debugMethod,\n priority: message.properties.priority,\n debug: true,\n })\n },\n onDefer(reason) {\n deferred = true\n deferredReason = reason || null\n ack()\n return obfuscate(\n taskId,\n messageId,\n payload.options.uploadUrl ?? '',\n payload.options.streamUrl ?? '',\n )\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\n const donePromise = createRemotePromise()\n donePromises.push(donePromise)\n\n const { value, outputName } = await unwrapResult(\n result,\n payload.options,\n donePromise.resolve,\n )\n\n if (!done || typeof value !== 'undefined') {\n publish({\n index: publishIndex++,\n messageId,\n taskId,\n data: value,\n priority: message.properties.priority,\n outputName,\n })\n }\n\n if (done) {\n break\n }\n }\n } else {\n const result = await messageHandler(extendedContext)\n ack()\n\n const donePromise = createRemotePromise()\n donePromises.push(donePromise)\n const { value, outputName } = await unwrapResult(\n result,\n payload.options,\n donePromise.resolve,\n )\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 index: publishIndex++,\n messageId,\n taskId,\n data: value,\n priority: message.properties.priority,\n outputName,\n })\n }\n }\n\n setImmediate(async () => {\n if (!deferred) {\n await Promise.allSettled(donePromises)\n }\n publish({\n index: publishIndex++,\n messageId,\n taskId,\n data: deferredReason,\n priority: message.properties.priority,\n deferred,\n done: !deferred,\n })\n })\n } catch (error) {\n const assertNack = (message: string) => {\n if (acked) {\n console.error(message)\n return false\n }\n return true\n }\n\n if (error instanceof SkipError) {\n if (assertNack('data already send, cannot skip')) {\n channel.nack(message)\n }\n return\n }\n if (error instanceof RetryError) {\n if (assertNack('data already send, cannot retry')) {\n const properties: Options.Publish = {\n ...message.properties,\n expiration: error.delay || 1_000, // 1s\n }\n channel.publish(\n `${exchange}-retry`,\n 'retry', // to other services\n message.content,\n properties,\n )\n ack()\n }\n }\n\n if (error instanceof AbortError && error.message.length > 0) {\n if (assertNack('data already send, cannot abort')) {\n channel.publish(\n `${exchange}-retry`,\n 'operator', //back to operator\n error.message,\n {\n ...message.properties,\n contentType: 'text/plain',\n headers: {\n ...message.properties.headers,\n index: publishIndex++,\n abort: true,\n },\n },\n )\n\n ack()\n }\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 if (!acked) {\n channel.publish(\n `${exchange}-retry`,\n 'operator', // back to operator\n message.content,\n {\n ...message.properties,\n headers: {\n ...message.properties.headers,\n exception: true,\n index: publishIndex++,\n 'error-message': error.message || 'error in service handler',\n },\n },\n )\n\n channel.ack(message)\n }\n return\n }\n\n if (!acked) {\n channel.nack(message, false, false)\n }\n } finally {\n removeActiveMessage()\n }\n })\n\n const api: ConnectionApi<V> = {\n close: async () => {\n await channel.close()\n await connection.close()\n },\n open: () => connectedPromise.then(() => api),\n\n async act(messageKey, actor) {\n let publishIndex = 0\n const { taskId, messageId, ...options } =\n messageKeySchema.parse(messageKey)\n\n const checkActiveMessage = () => {\n if (activeMessages.has(messageId)) {\n throw new Error(\n 'Cannot send deferred message while callback handler is still running',\n )\n }\n }\n\n const donePromises: Array<Promise<void>> = []\n\n await actor({\n async sendToOutput(outputName, data) {\n checkActiveMessage()\n const donePromise = createRemotePromise()\n donePromises.push(donePromise)\n publish({\n index: publishIndex++,\n messageId,\n taskId,\n data: await mapOutput({\n value: data,\n options,\n onDone: donePromise.resolve,\n }),\n outputName: outputName as string | null,\n })\n },\n async send(data) {\n checkActiveMessage()\n const donePromise = createRemotePromise()\n donePromises.push(donePromise)\n publish({\n index: publishIndex++,\n messageId,\n taskId,\n data: await mapOutput({\n value: data,\n options,\n onDone: donePromise.resolve,\n }),\n })\n },\n abort(error) {\n checkActiveMessage()\n channel.publish(\n `${exchange}-retry`,\n 'operator',\n error instanceof Error ? error.message : error,\n {\n persistent: true,\n correlationId: messageId,\n expiration: 0,\n priority: 0,\n contentType: 'text/plain',\n headers: {\n taskId,\n index: publishIndex++,\n abort: true,\n },\n },\n )\n },\n })\n\n setImmediate(async () => {\n await Promise.allSettled(donePromises)\n publish({\n index: publishIndex++,\n messageId,\n taskId,\n done: true,\n })\n })\n },\n }\n return api\n}\n",
|
|
16
|
-
"import {
|
|
14
|
+
"import { z } from 'zod/v4'\n\nconst fileObjectSchema = z.object({\n size: z.int().positive(),\n mime: z.string(),\n url: z.url(),\n __REQUENCE_type: z.literal('RequenceFile'),\n})\n\nexport type FileObject = z.infer<typeof fileObjectSchema>\n\nexport function toFileObject(fileInfo: {\n size: number\n mime: string\n url: string\n}): FileObject {\n return {\n ...fileInfo,\n __REQUENCE_type: 'RequenceFile',\n }\n}\n\nexport function isFileObject(data: unknown): data is FileObject {\n return fileObjectSchema.safeParse(data).success\n}\n",
|
|
15
|
+
"import { mapData } from './mapData.ts'\nimport { isCallbackObject } from './requenceCallback.ts'\nimport {\n RequenceFile,\n RequenceStream,\n isFileObject,\n isStreamObject,\n} from '../files/index.ts'\n\nexport function resolveRequenceTypes(\n data: any,\n onCallback: (params: {\n sourceId: string\n callbackId: string\n outputName: string | null\n propertyPath: (string | number)[]\n arg: unknown\n }) => void,\n) {\n return mapData(data, {\n Object(obj) {\n if (isFileObject(obj)) {\n return RequenceFile.fromFileObject(obj)\n }\n\n if (isStreamObject(obj)) {\n return RequenceStream.fromStreamObject(obj)\n }\n\n if (isCallbackObject(obj)) {\n return (arg: unknown) => {\n onCallback({ ...obj, arg })\n }\n }\n },\n })\n}\n",
|
|
16
|
+
"import {\n type RemotePromise,\n createRemotePromise,\n deobfuscate,\n obfuscate,\n} from '@requence/helpers'\nimport {\n type AmqpConnectionManagerOptions,\n type Options,\n connect,\n} from 'amqp-connection-manager'\nimport type { ConfirmChannel } from 'amqplib'\nimport { z } from 'zod/v4'\n\nimport createContextHelper, {\n AbortError,\n type ContextHelper,\n type JSONValue,\n RetryError,\n SkipError,\n processData,\n unwrapResult,\n} from './helpers.ts'\nimport mapInput from './mapInput.ts'\n\ntype Input<V extends keyof RequenceService.Version> =\n RequenceService.Version[V]['input']\ntype Configuration<V extends keyof RequenceService.Version> =\n RequenceService.Version[V]['configuration']\ntype OutputName<\n V extends keyof RequenceService.Version,\n K = keyof RequenceService.Version[V]['outputs'],\n> = K extends '__default__' ? null : K\n\ntype OutputValue<\n V extends keyof RequenceService.Version,\n O extends OutputName<V> | null,\n> = RequenceService.Version[V]['outputs'][O extends null ? '__default__' : O]\n\ninterface ServiceContextHelper<V extends keyof RequenceService.Version>\n extends Omit<\n ContextHelper,\n 'input' | 'configuration' | 'getData' | 'getConfiguration' | 'toOutput'\n > {\n input: Input<V>\n configuration: Configuration<V>\n\n toOutput<O extends OutputName<V>>(\n name: O,\n value: OutputValue<V, O>,\n ): '__output_value__'\n}\n\ntype ReturnValue<V extends keyof RequenceService.Version> =\n | ReturnType<ServiceContextHelper<V>['toOutput']>\n | OutputValue<V, null>\n | '__output_value__'\n\ntype ApiOutputName<V> = V extends keyof RequenceService.Version\n ? OutputName<V>\n : string | null\ntype ApiOutputValue<V, O> = V extends keyof RequenceService.Version\n ? O extends OutputName<V>\n ? OutputValue<V, O>\n : unknown\n : unknown\n\ninterface ActorApi<V> {\n sendToOutput<O extends ApiOutputName<V>>(\n outputName: O,\n data: ApiOutputValue<V, O>,\n ): void\n send(data: ApiOutputValue<V, null>): void\n abort(error: string | Error): void\n}\n\nexport interface ConnectionApi<V> {\n close(): Promise<void>\n open(): Promise<ConnectionApi<V>>\n act(\n messageKey: string,\n actor: (api: ActorApi<V>) => void | Promise<void>,\n ): Promise<void>\n}\n\nconst messageKeySchema = z\n .string()\n .transform((str) => deobfuscate(str))\n .pipe(z.tuple([z.uuid(), z.uuid()]).rest(z.string()))\n .transform((arr) => ({\n taskId: arr[0],\n messageId: arr[1],\n uploadUrl: arr[2] || undefined,\n streamUrl: arr[3] || undefined,\n }))\n\nconst headerSchema = z\n .object({\n properties: z.object({\n correlationId: z.uuid(),\n headers: z.object({\n taskId: z.uuid(),\n }),\n }),\n })\n .transform((msg) => ({\n messageId: msg.properties.correlationId,\n taskId: msg.properties.headers.taskId,\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 input: z.unknown(),\n configuration: z.unknown(),\n options: z.object({\n uploadUrl: z.url().optional(),\n streamUrl: z.url().optional(),\n }),\n }),\n )\n\nconst backchannelMessageSchema = z\n .object({\n content: z\n .instanceof(Buffer)\n .transform((content) => JSON.parse(content.toString()))\n .pipe(\n z.discriminatedUnion('type', [\n z.object({\n type: z.literal('stop'),\n }),\n z.object({\n type: z.literal('callback'),\n callbackId: z.uuid(),\n arg: z.any(),\n }),\n ]),\n ),\n properties: z.object({\n correlationId: z.string(),\n }),\n })\n .transform((message) => ({\n payload: message.content,\n messageId: message.properties.correlationId,\n }))\n\nconst abortSymbol = Symbol()\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 connectionOptions?: AmqpConnectionManagerOptions['connectionOptions']\n}\n\ntype MessageHandlerContext<V> = V extends keyof RequenceService.Version\n ? ServiceContextHelper<V>\n : ContextHelper\ntype MessageHandlerReturnValue<V> = V extends keyof RequenceService.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<\n MessageHandlerReturnValue<V>,\n MessageHandlerReturnValue<V> | void,\n void\n>\ntype MessageHandlerAsyncGenerator<V> = (\n context: MessageHandlerContext<V>,\n) => AsyncGenerator<\n MessageHandlerReturnValue<V>,\n MessageHandlerReturnValue<V> | void,\n void\n>\n\nexport type MessageHandler<V> = V extends keyof RequenceService.Version\n ? RequenceService.Version[V]['mode'] extends 'linear'\n ? MessageHandlerFunction<V>\n :\n | MessageHandlerAsyncGenerator<V>\n | MessageHandlerGenerator<V>\n | MessageHandlerFunction<V>\n :\n | MessageHandlerAsyncGenerator<V>\n | MessageHandlerGenerator<V>\n | MessageHandlerFunction<V>\n\nfunction isMessageHandlerGenerator<V extends keyof RequenceService.Version>(\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n handler: Function,\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 }: ConnectionOptions,\n messageHandler: MessageHandler<V>,\n) {\n const queue = `${url.username}@${version}`\n const exchange = url.username\n const connection = connect(url.toString(), { connectionOptions })\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 connectionId = crypto.randomUUID()\n const backchannelQueue = `${queue}-backchannel-${connectionId}`\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.assertQueue(backchannelQueue, {\n exclusive: true,\n })\n await channel.bindQueue(backchannelQueue, 'service', backchannelQueue)\n await channel.prefetch(prefetch)\n },\n })\n\n const publish = ({\n data,\n outputName,\n messageId,\n priority,\n ...headers\n }: {\n index: number\n data?: unknown\n outputName?: string | null\n messageId: string\n taskId: string\n priority?: number\n [property: string]: any\n }) => {\n channel.publish(exchange, '', Buffer.from(JSON.stringify(data ?? null)), {\n correlationId: messageId,\n contentType: 'application/json',\n persistent: true,\n priority,\n headers: {\n outputName: outputName ?? null,\n connectionId,\n ...headers,\n },\n })\n }\n\n const generatorTerminators = new Map<string, (reason: string) => void>()\n const callbacks = new Map<string, (...args: any[]) => void>()\n\n channel.consume(\n backchannelQueue,\n async (message) => {\n const result = backchannelMessageSchema.safeParse(message)\n\n if (!result.success) {\n return\n }\n\n const backchannelMessage = result.data\n\n switch (backchannelMessage.payload.type) {\n case 'stop': {\n generatorTerminators.get(backchannelMessage.messageId)?.(\n 'task stopped',\n )\n break\n }\n case 'callback': {\n callbacks.get(backchannelMessage.payload.callbackId)?.(\n backchannelMessage.payload.arg,\n )\n break\n }\n }\n },\n {\n noAck: true,\n },\n )\n\n channel.consume(queue, async (message) => {\n let publishIndex = 0\n const donePromises: Array<Promise<void>> = []\n const registeredCallbackIds = new Set<string>()\n let removeActiveMessage = () => {}\n\n let acked = false\n const ack = () => {\n if (!acked) {\n acked = true\n channel.ack(message)\n }\n }\n\n const { messageId, taskId } = headerSchema.parse(message)\n\n try {\n let deferred = false\n let deferredReason: string | null = null\n\n activeMessages.add(messageId)\n removeActiveMessage = () => activeMessages.delete(messageId)\n\n const payload = payloadSchema.parse(message)\n\n const [extendedContext, terminatePromise] = createContextHelper({\n taskId,\n input: mapInput(payload.input),\n configuration: mapInput(payload.configuration),\n onLog(debugMethod, data) {\n publish({\n index: publishIndex++,\n messageId,\n taskId,\n data,\n debugMethod,\n priority: message.properties.priority,\n debug: true,\n })\n },\n onDefer(reason) {\n deferred = true\n deferredReason = reason || null\n ack()\n return obfuscate(\n taskId,\n messageId,\n payload.options.uploadUrl ?? '',\n payload.options.streamUrl ?? '',\n )\n },\n onCallback(params) {\n publish({\n index: 0,\n taskId,\n messageId,\n data: params.arg,\n outputName: params.outputName,\n connectionId: params.sourceId,\n callbackId: params.callbackId,\n propertyPath: params.propertyPath,\n })\n },\n }) as unknown as [MessageHandlerContext<V>, RemotePromise<string>]\n\n publish({\n index: publishIndex++,\n messageId,\n taskId,\n priority: message.properties.priority,\n begin: true,\n })\n\n if (isMessageHandlerGenerator(messageHandler)) {\n const generator = messageHandler(extendedContext)\n const terminationPromise = createRemotePromise<typeof abortSymbol>()\n generatorTerminators.set(messageId, (reason) => {\n generator.return()\n terminationPromise.resolve(abortSymbol)\n terminatePromise.resolve(reason)\n ack()\n })\n\n while (true) {\n const next = await Promise.race([\n terminationPromise,\n generator.next(),\n ])\n if (next === abortSymbol) {\n break\n }\n\n const { value: result, done } = 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\n const donePromise = createRemotePromise()\n donePromises.push(donePromise)\n\n const { value, outputName } = await unwrapResult({\n result,\n options: payload.options,\n onDone: donePromise.resolve,\n onCallback: (callback) => {\n const callbackId = crypto.randomUUID()\n registeredCallbackIds.add(callbackId)\n callbacks.set(callbackId, callback)\n return {\n sourceId: connectionId,\n callbackId,\n }\n },\n })\n\n if (!done || typeof value !== 'undefined') {\n publish({\n index: publishIndex++,\n messageId,\n taskId,\n data: value,\n priority: message.properties.priority,\n outputName,\n })\n }\n\n if (done) {\n break\n }\n }\n } else {\n const result = await messageHandler(extendedContext)\n ack()\n\n const donePromise = createRemotePromise()\n donePromises.push(donePromise)\n const { value, outputName } = await unwrapResult({\n result,\n options: payload.options,\n onDone: donePromise.resolve,\n onCallback: () => {\n throw new Error('callbacks can only be used in generator functions')\n },\n })\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 index: publishIndex++,\n messageId,\n taskId,\n data: value,\n priority: message.properties.priority,\n outputName,\n })\n }\n }\n\n setImmediate(async () => {\n if (!deferred) {\n await Promise.allSettled(donePromises)\n }\n\n publish({\n index: publishIndex++,\n messageId,\n taskId,\n data: deferredReason,\n priority: message.properties.priority,\n deferred,\n done: !deferred,\n })\n })\n } catch (error) {\n const assertNack = (message: string) => {\n if (acked) {\n console.error(message)\n return false\n }\n return true\n }\n\n if (error instanceof SkipError) {\n if (assertNack('data already send, cannot skip')) {\n channel.nack(message)\n }\n return\n }\n if (error instanceof RetryError) {\n if (assertNack('data already send, cannot retry')) {\n const properties: Options.Publish = {\n ...message.properties,\n expiration: error.delay || 1_000, // 1s\n }\n channel.publish(\n `${exchange}-retry`,\n version, // to other services\n message.content,\n properties,\n )\n ack()\n }\n return\n }\n\n if (error instanceof AbortError && error.message.length > 0) {\n if (assertNack('data already send, cannot abort')) {\n channel.publish(\n `${exchange}-retry`,\n 'operator', //back to operator\n error.message,\n {\n ...message.properties,\n contentType: 'text/plain',\n headers: {\n ...message.properties.headers,\n index: publishIndex++,\n abort: true,\n },\n },\n )\n\n ack()\n }\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 if (!acked) {\n channel.publish(\n `${exchange}-retry`,\n 'operator', // back to operator\n message.content,\n {\n ...message.properties,\n headers: {\n ...message.properties.headers,\n version,\n exception: true,\n index: publishIndex++,\n 'error-message': error.message || 'error in service handler',\n },\n },\n )\n\n channel.ack(message)\n }\n return\n }\n\n if (!acked) {\n channel.nack(message, false, false)\n }\n } finally {\n generatorTerminators.delete(messageId)\n registeredCallbackIds.forEach((id) => callbacks.delete(id))\n removeActiveMessage()\n }\n })\n\n const api: ConnectionApi<V> = {\n close: async () => {\n await channel.close()\n await connection.close()\n },\n open: () => connectedPromise.then(() => api),\n\n async act(messageKey, actor) {\n let publishIndex = 0\n const { taskId, messageId, ...options } =\n messageKeySchema.parse(messageKey)\n\n const checkActiveMessage = () => {\n if (activeMessages.has(messageId)) {\n throw new Error(\n 'Cannot send deferred message while callback handler is still running',\n )\n }\n }\n\n const registeredCallbackIds = new Set<string>()\n const donePromises: Array<Promise<void>> = []\n\n await actor({\n async sendToOutput(outputName, data) {\n checkActiveMessage()\n const donePromise = createRemotePromise()\n donePromises.push(donePromise)\n publish({\n index: publishIndex++,\n messageId,\n taskId,\n data: await processData({\n outputName: outputName as string | null,\n data,\n options,\n onDone: donePromise.resolve,\n onCallback: (callback) => {\n const callbackId = crypto.randomUUID()\n registeredCallbackIds.add(callbackId)\n callbacks.set(callbackId, callback)\n\n return {\n sourceId: connectionId,\n callbackId,\n }\n },\n }),\n outputName: outputName as string | null,\n })\n },\n async send(data) {\n checkActiveMessage()\n const donePromise = createRemotePromise()\n donePromises.push(donePromise)\n publish({\n index: publishIndex++,\n messageId,\n taskId,\n data: await processData({\n outputName: null,\n data,\n options,\n onDone: donePromise.resolve,\n onCallback: (callback) => {\n const callbackId = crypto.randomUUID()\n registeredCallbackIds.add(callbackId)\n callbacks.set(callbackId, callback)\n return {\n sourceId: connectionId,\n callbackId,\n }\n },\n }),\n })\n },\n abort(error) {\n checkActiveMessage()\n channel.publish(\n `${exchange}-retry`,\n 'operator',\n error instanceof Error ? error.message : error,\n {\n persistent: true,\n correlationId: messageId,\n expiration: 0,\n priority: 0,\n contentType: 'text/plain',\n headers: {\n taskId,\n index: publishIndex++,\n abort: true,\n },\n },\n )\n },\n })\n\n setImmediate(async () => {\n await Promise.allSettled(donePromises)\n\n registeredCallbackIds.forEach((id) => callbacks.delete(id))\n\n publish({\n index: publishIndex++,\n messageId,\n taskId,\n done: true,\n })\n })\n },\n }\n return api\n}\n",
|
|
17
|
+
"import {\n createRemotePromise,\n mapData,\n resolveRequenceTypes,\n} from '@requence/helpers'\nimport { mapOutput } from '@requence/helpers/files'\nimport type { TaskOptions } 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 SkipError extends Error {}\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 processData(params: {\n data: unknown\n outputName: null | string\n options: Pick<TaskOptions, 'uploadUrl' | 'streamUrl'>\n onCallback: (callback: (...args: any[]) => void) => {\n callbackId: string\n sourceId: string\n }\n onDone: () => void\n}) {\n return mapOutput({\n value: mapData(params.data, {\n Function(data, path) {\n return {\n ...params.onCallback(data),\n outputName: params.outputName,\n propertyPath: path,\n __REQUENCE_type: 'RequenceCallback',\n }\n },\n }),\n options: params.options,\n onDone: params.onDone,\n })\n}\n\nexport async function unwrapResult(params: {\n result: unknown\n options: Pick<TaskOptions, 'uploadUrl' | 'streamUrl'>\n onCallback: (callback: (...args: any[]) => void) => {\n callbackId: string\n sourceId: string\n }\n onDone: () => void\n}) {\n if (isOutputValue(params.result)) {\n return {\n value: await processData({\n outputName: params.result[OUTPUT_VALUE],\n data: params.result.value,\n options: params.options,\n onDone: params.onDone,\n onCallback: params.onCallback,\n }),\n outputName: params.result[OUTPUT_VALUE],\n }\n }\n return {\n value: await processData({\n outputName: null,\n data: params.result,\n options: params.options,\n onDone: params.onDone,\n onCallback: params.onCallback,\n }),\n outputName: null,\n }\n}\n\nfunction isAsyncIterable<T>(\n iterable: Iterable<T> | AsyncIterable<T>,\n): iterable is AsyncIterable<T> {\n return typeof (iterable as any)[Symbol.asyncIterator] === 'function'\n}\n\nexport default function createContextHelper(options: {\n taskId: string\n input: unknown\n configuration: unknown\n onLog: (method: 'log' | 'warn' | 'info' | 'error', data: any[]) => void\n onDefer: (reason?: string) => string\n onCallback: (params: {\n sourceId: string\n callbackId: string\n outputName: string | null\n propertyPath: (string | number)[]\n arg: unknown\n }) => void\n}) {\n const terminatePromise = createRemotePromise<string>()\n\n return [\n {\n taskId: options.taskId,\n input: resolveRequenceTypes(options.input, options.onCallback),\n configuration: resolveRequenceTypes(options.configuration, () => {\n throw new Error('configuration may not have callbacks')\n }),\n\n toOutput(name: string | null, value: unknown): OutputValue {\n return {\n [OUTPUT_VALUE]: name,\n value,\n }\n },\n defer: options.onDefer,\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 skip() {\n throw new SkipError()\n },\n terminated: terminatePromise.promise,\n wrapIterable: function <T extends Iterable<any> | AsyncIterable<any>>(\n iterable: T,\n ): T {\n if (isAsyncIterable(iterable)) {\n return {\n [Symbol.asyncIterator]() {\n const iterator = iterable[Symbol.asyncIterator]()\n\n return {\n async next() {\n const result = await Promise.race([\n terminatePromise.promise,\n iterator.next(),\n ])\n if (typeof result === 'string') {\n return { done: true, value: undefined }\n }\n\n return result\n },\n }\n },\n } as T\n }\n\n return {\n [Symbol.iterator]() {\n const iterator = iterable[Symbol.iterator]()\n let terminated = false\n terminatePromise.then(() => {\n terminated = true\n })\n\n return {\n next() {\n if (terminated) {\n return { done: true, value: undefined }\n }\n const result = iterator.next()\n return result\n },\n }\n },\n } as T\n },\n },\n terminatePromise,\n ] as const\n}\n\nexport type ContextHelper = ReturnType<typeof createContextHelper>[0]\n",
|
|
17
18
|
"import { mapData } from '@requence/helpers'\nimport {\n RequenceFile,\n RequenceStream,\n isFileObject,\n isStreamObject,\n} from '@requence/helpers/files'\n\nexport default function mapInput(data: unknown): unknown {\n return mapData(data, {\n Object(obj) {\n if (isFileObject(obj)) {\n return RequenceFile.fromFileObject(obj)\n }\n if (isStreamObject(obj)) {\n return RequenceStream.fromStreamObject(obj)\n }\n },\n })\n}\n"
|
|
18
19
|
],
|
|
19
|
-
"mappings": "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",
|
|
20
|
-
"debugId": "
|
|
20
|
+
"mappings": ";;;;;;AAAA;;;ACAO,SAAS,mBAA6B,CAC3C,SAIA;AAAA,EACA,IAAI;AAAA,EACJ,IAAI;AAAA,EAEJ,MAAM,kBAAkB,IAAI,QAAW,CAAC,SAAS,WAAW;AAAA,IAC1D,iBAAiB;AAAA,IACjB,gBAAgB;AAAA,GACjB;AAAA,EAED,IAAI,YAAY;AAAA,EAEhB,MAAM,iBAAiB,IAAI,MAAM,iBAAiB;AAAA,IAChD,GAAG,CAAC,QAAQ,UAAgC;AAAA,MAC1C,IACE,aAAa,UACb,aAAa,WACb,aAAa,WACb;AAAA,QACA,KAAK,aAAa,SAAS;AAAA,UACzB,YAAY;AAAA,UACZ,QAAQ,gBAAgB,aAAa;AAAA,QACvC;AAAA,QACA,OAAO,OAAO,UAAU,KAAK,MAAM;AAAA,MACrC;AAAA,MAEA,OAAO,OAAO;AAAA;AAAA,EAElB,CAAC;AAAA,EAED,OAAO,OAAO,OAAO,gBAAgB;AAAA,IACnC,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,SAAS;AAAA,EACX,CAAC;AAAA;;;ACtCH;AAEA,IAAM,eAAe,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC;AAC9C,SAAS,QAAQ,CAAC,MAAgD;AAAA,EACvE,OAAO,aAAa,UAAU,IAAI,EAAE;AAAA;;;ACsBtC,SAAS,OAAU,CAAC,OAAuB,WAA+B;AAAA,EACxE,IAAI,iBAAiB,SAAS;AAAA,IAC5B,OAAO,QAAQ,QAAQ,EACpB,KAAK,MAAM,KAAK,EAChB,KAAK,SAAS;AAAA,EACnB;AAAA,EACA,OAAO,UAAU,KAAK;AAAA;AAGxB,SAAS,YAAY,CAAC,OAAgB,UAAmB;AAAA,EACvD,OAAO,QAAQ,OAAO,CAAC,kBACrB,OAAO,kBAAkB,cAAc,WAAW,aACpD;AAAA;AAAA;AAGF,MAAM,qBAAqB,MAAM;AAAC;AAE3B,SAAS,OAIf,CACC,MACA,UAKA;AAAA,EACA,IAAI,UAAU;AAAA,EACd,MAAM,eAAe,CAAC,OAAW,SAAsC;AAAA,IACrE,IAAI,SAAS;AAAA,MACX,OAAO;AAAA,IACT;AAAA,IACA,IAAI;AAAA,MACF,IAAI,MAAM,QAAQ,KAAI,GAAG;AAAA,QACvB,OAAO,QAAQ,SAAS,QAAQ,OAAM,IAAI,GAAG,CAAC,iBAAiB;AAAA,UAC7D,IAAI,cAAc;AAAA,YAChB,OAAO;AAAA,UACT;AAAA,UACA,MAAM,QAAQ,MAAK,IAAI,CAAC,MAAM,UAC5B,aAAa,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,CACrC;AAAA,UACA,IAAI,MAAM,KAAK,CAAC,SAAS,gBAAgB,OAAO,GAAG;AAAA,YACjD,OAAO,QAAQ,IAAI,KAAK;AAAA,UAC1B;AAAA,UAEA,OAAO;AAAA,SACR;AAAA,MACH;AAAA,MACA,IAAI,UAAS,MAAM;AAAA,QACjB,OAAO,aAAa,SAAS,OAAO,OAAM,IAAI,GAAG,KAAI;AAAA,MACvD;AAAA,MACA,IAAI,OAAO,WAAW,eAAe,OAAO,SAAS,KAAI,GAAG;AAAA,QAC1D,OAAO,aAAa,SAAS,SAAS,OAAM,IAAI,GAAG,KAAI;AAAA,MACzD;AAAA,MACA,IAAI,OAAO,UAAS,UAAU;AAAA,QAC5B,OAAO,aAAa,SAAS,SAAS,OAAM,IAAI,GAAG,KAAI;AAAA,MACzD;AAAA,MACA,IAAI,OAAO,UAAS,UAAU;AAAA,QAC5B,OAAO,aAAa,SAAS,SAAS,OAAM,IAAI,GAAG,KAAI;AAAA,MACzD;AAAA,MACA,IAAI,OAAO,UAAS,UAAU;AAAA,QAC5B,OAAO,aAAa,SAAS,SAAS,OAAM,IAAI,GAAG,KAAI;AAAA,MACzD;AAAA,MACA,IAAI,OAAO,UAAS,YAAY;AAAA,QAC9B,OAAO,aAAa,SAAS,WAAW,OAAM,IAAI,GAAG,KAAI;AAAA,MAC3D;AAAA,MACA,IAAI,SAAS,KAAI,GAAG;AAAA,QAClB,OAAO,QACL,SAAS,SAAS,gBAAgB,KAAI,GAAG,IAAI,GAC7C,CAAC,iBAAiB;AAAA,UAChB,MAAM,WAAW,gBAAgB;AAAA,UACjC,KAAK,SAAS,QAAQ,GAAG;AAAA,YACvB,OAAO;AAAA,UACT;AAAA,UACA,MAAM,UAAU,OAAO,QAAQ,QAAQ,EAAE,IAAI,EAAE,KAAK,WAAW;AAAA,YAC7D;AAAA,YACA,aAAa,OAAO,CAAC,GAAG,MAAM,GAAG,CAAC;AAAA,UACpC,CAAC;AAAA,UAED,IAAI,QAAQ,KAAK,IAAI,WAAW,iBAAiB,OAAO,GAAG;AAAA,YACzD,OAAO,QAAQ,IACb,QAAQ,IAAI,EAAE,KAAK,WACjB,QAAQ,QAAQ,EACb,KAAK,MAAM,KAAK,EAChB,KAAK,CAAC,kBAAkB,CAAC,KAAK,aAAa,CAAC,CACjD,CACF,EAAE,KAAK,CAAC,aAAY,OAAO,YAAY,QAAO,CAAC;AAAA,UACjD;AAAA,UAEA,OAAO,OAAO,YAAY,OAAO;AAAA,SAErC;AAAA,MACF;AAAA,MACA,IAAI,OAAO,UAAS,YAAY,OAAM;AAAA,QACpC,OAAO,aAAa,SAAS,SAAS,OAAM,IAAI,GAAG,KAAI;AAAA,MACzD;AAAA,MACA,OAAO;AAAA,MACP,OAAO,OAAO;AAAA,MACd,IAAI,iBAAiB,cAAc;AAAA,QACjC,UAAU;AAAA,QACV,OAAO;AAAA,MACT;AAAA,MACA,MAAM;AAAA;AAAA;AAAA,EAIV,OAAO,aAAa,MAAM,CAAC,CAAC;AAAA;AAG9B,QAAQ,QAAQ,MAAM;AAAA,EACpB,MAAM,IAAI;AAAA;;;AC1IZ,cAAS;AAET,IAAM,uBAAuB,GAAE,OAAO;AAAA,EACpC,UAAU,GAAE,OAAO;AAAA,EACnB,YAAY,GAAE,OAAO,EAAE,SAAS;AAAA,EAChC,cAAc,GAAE,MAAM,GAAE,MAAM,CAAC,GAAE,OAAO,GAAG,GAAE,IAAI,CAAC,CAAC,CAAC;AAAA,EACpD,YAAY,GAAE,KAAK;AAAA,EACnB,iBAAiB,GAAE,QAAQ,kBAAkB;AAC/C,CAAC;AAIM,SAAS,gBAAgB,CAAC,MAAuC;AAAA,EACtE,OAAO,qBAAqB,UAAU,IAAI,EAAE;AAAA;AAGvC,SAAS,cAAiB,CAAC,UAA6B;AAAA,EAC7D,IAAI;AAAA,EACJ,MAAM,UAAU,IAAI,QAAW,CAAC,aAAY;AAAA,IAC1C,iBAAiB;AAAA,GAClB;AAAA,EAED,MAAM,WAAW,CAAC,QAAW;AAAA,IAC3B,eAAe,GAAG;AAAA,IAClB,WAAW,GAAG;AAAA;AAAA,EAGhB,OAAO,OAAO,OAAO,UAAU;AAAA,IAC7B,QAAQ,GAAG;AAAA,MACT,OAAO;AAAA;AAAA,EAEX,CAAC;AAAA;;;ACtBH,eAAe,MAAM,CACnB,WACA,MACA,QACA,aACA;AAAA,EACA,MAAM,iBAAiB,MAAM,MAAM,WAAW;AAAA,IAC5C,QAAQ;AAAA,IACR;AAAA,IACA,SAAS,cACL;AAAA,MACE,gBAAgB;AAAA,IAClB,IACA,CAAC;AAAA,IACL;AAAA,EACF,CAAC;AAAA,EAED,MAAM,OAAO,MAAM,eAAe,KAAK;AAAA,EACvC,KAAK,QAAQ,OAAO,SAAS,UAAU;AAAA,IACrC,MAAM,IAAI,MAAM,yBAAyB;AAAA,EAC3C;AAAA,EAEA,OAAO,aAAa,IAAmD;AAAA;AAQzE,eAAe,MAAM,CACnB,WACA,SACA,QACA,aACA;AAAA,EACA,OAAO,YAAY,cAAc,QAAO,IAAI;AAAA,EAE5C,MAAM,SAAS,WAAW,UAAU;AAAA,EACpC,MAAM,cAAc,OAAO,KAAK,EAAE,KAAK,GAAG,kBAAW;AAAA,IACnD,IAAI,OAAM;AAAA,MACR,MAAM,IAAI,MAAM,4BAA4B;AAAA,IAC9C;AAAA,IAEA,OAAO,OAAO;AAAA,GACf;AAAA,EAED,MAAM,iBAAiB,MAAM,MAAM,WAAW;AAAA,IAC5C,QAAQ;AAAA,IACR;AAAA,IACA,SAAS,cAAc,EAAE,gBAAgB,YAAY,IAAI,CAAC;AAAA,EAC5D,CAAC;AAAA,EAED,MAAM,OAAO,MAAM,eAAe,KAAK;AAAA,EACvC,KAAK,QAAQ,OAAO,SAAS,UAAU;AAAA,IACrC,MAAM,IAAI,MAAM,yBAAyB;AAAA,EAC3C;AAAA,EAEA,QAAQ,MAAM,QAAQ;AAAA,EACtB,MAAM;AAAA,EAGN,MAAM,OAAO,MAAM,KAAK;AAAA,IACtB,QAAQ;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,IACR,MAAM;AAAA,EACR,CAAgB;AAAA,EAEhB,OAAO,CAAC,eAAe,EAAE,MAAM,IAAI,CAAC,GAAG,IAAI;AAAA;AAG7C,eAAsB,SAAS,CAAC,QAO7B;AAAA,EACD,MAAM,iBAAsC,CAAC;AAAA,EAC7C,MAAM,SAAS,MAAM,QAAQ,OAAO,OAAO;AAAA,SACnC,OAAM,CAAC,KAAK;AAAA,MAChB,IAAI,eAAe,QAAQ,eAAe,cAAc;AAAA,QAEtD,IAAI,eAAe,gBAAgB,IAAI,YAAY;AAAA,UACjD,OAAO,IAAI;AAAA,QACb;AAAA,QAEA,IAAI,OAAO,QAAQ,WAAW;AAAA,UAC5B,IAAI;AAAA,YACF,IAAI,eAAe,MAAM;AAAA,cACvB,OAAO,MAAM,OACX,OAAO,QAAQ,WACf,KACA,OAAO,QACP,IAAI,IACN;AAAA,YACF;AAAA,YAEA,IAAI,eAAe,cAAc;AAAA,cAC/B,OAAO,MAAM,OACX,OAAO,QAAQ,WACf,MAAM,IAAI,KAAK,GACf,OAAO,QACP,IAAI,QACN;AAAA,YACF;AAAA,YACA,OAAO,OAAO;AAAA,YACd,MAAM,iBAAiB,QAAQ;AAAA,cAC7B,MAAM;AAAA,YACR;AAAA,YACA,OAAO,SAAS,KAAK;AAAA,YACrB,OAAO;AAAA;AAAA,QAEX,EAAO;AAAA,UACL,OAAO,SAAS;AAAA,UAChB,OAAO;AAAA;AAAA,MAEX;AAAA,MAEA,IAAI,eAAe,YAAY,eAAe,gBAAgB;AAAA,QAC5D,IAAI,eAAe,kBAAkB,IAAI,cAAc;AAAA,UACrD,OAAO,IAAI;AAAA,QACb;AAAA,QAEA,IAAI,OAAO,QAAQ,WAAW;AAAA,UAC5B,IAAI;AAAA,YACF,IAAI,eAAe,YAAY,IAAI,MAAM;AAAA,cACvC,OAAO,cAAc,iBAAiB,MAAM,OAC1C,OAAO,QAAQ,WACf,IAAI,MACJ,OAAO,QACP,IAAI,QAAQ,IAAI,cAAc,CAChC;AAAA,cACA,eAAe,KAAK,aAAa;AAAA,cACjC,OAAO;AAAA,YACT;AAAA,YAEA,IAAI,eAAe,gBAAgB;AAAA,cACjC,OAAO,cAAc,iBAAiB,MAAM,OAC1C,OAAO,QAAQ,WACf,IAAI,OAAO,GACX,OAAO,QACP,IAAI,QACN;AAAA,cACA,eAAe,KAAK,aAAa;AAAA,cACjC,OAAO;AAAA,YACT;AAAA,YACA,OAAO,OAAO;AAAA,YACd,MAAM,iBAAiB,QAAQ;AAAA,cAC7B,MAAM;AAAA,YACR;AAAA,YACA,OAAO,SAAS,KAAK;AAAA,YACrB,OAAO;AAAA;AAAA,QAEX,EAAO;AAAA,UACL,OAAO,SAAS;AAAA,UAChB,OAAO;AAAA;AAAA,MAEX;AAAA;AAAA,EAEJ,CAAC;AAAA,EAED,QAAQ,WAAW,cAAc,EAAE,KAAK,MAAM,OAAO,SAAS,CAAC;AAAA,EAE/D,OAAO;AAAA;;;AC7JF,MAAM,aAKb;AAAA,EACE;AAAA,EACA,QAA2B;AAAA,EAC3B,WAAW,CACT,WACA,SACA;AAAA,IACA,KAAK,QAAQ,IAAI,KAAK,WAAW,OAAO;AAAA;AAAA,SAInC,cAA+C,CAAC,MAAkB;AAAA,IACvE,MAAM,WAAW,IAAI,KAAK,CAAC,GAAG,EAAE,MAAM,MAAM,CAAC;AAAA,IAC7C,SAAS,QAAQ;AAAA,IACjB,OAAO;AAAA;AAAA,MAIL,UAAU,GAAG;AAAA,IACf,OAAO,KAAK;AAAA;AAAA,MAGV,IAAI,GAAG;AAAA,IACT,OAAO,KAAK,OAAO,QAAQ,KAAK,MAAM;AAAA;AAAA,MAGpC,QAAQ,GAAG;AAAA,IACb,OAAO,KAAK,OAAO,QAAQ,KAAK,MAAM;AAAA;AAAA,MAGpC,YAAY,GAAG;AAAA,IACjB,OAAO,KAAK,SAAS,MAAM,GAAG,EAAE;AAAA;AAAA,MAG9B,WAAW,GAAG;AAAA,IAChB,OAAO,KAAK,SAAS,MAAM,GAAG,EAAE;AAAA;AAAA,OAG5B,KAAI,GAAG;AAAA,IACX,IAAI,KAAK,OAAO;AAAA,MACd,OAAO,MAAM,KAAK,MAAM,GAAG,EAAE,KAAK,CAAC,aAAa,SAAS,KAAK,CAAC;AAAA,IACjE;AAAA,IACA,OAAO,KAAK,MAAM,KAAK;AAAA;AAAA,OAGnB,KAAI,GAAG;AAAA,IACX,IAAI,KAAK,OAAO;AAAA,MACd,OAAO,MAAM,KAAK,MAAM,GAAG,EAAE,KAAK,CAAC,aAAa,SAAS,KAAK,CAAC;AAAA,IACjE;AAAA,IACA,OAAO,KAAK,MAAM,MAAM,KAAK,KAAK,CAAC;AAAA;AAAA,OAG/B,KAAI,GAAG;AAAA,IACX,IAAI,KAAK,OAAO;AAAA,MACd,OAAO,MAAM,KAAK,MAAM,GAAG,EAAE,KAAK,CAAC,aAAa,SAAS,KAAK,CAAC;AAAA,IACjE;AAAA,IACA,OAAO,KAAK;AAAA;AAAA,OAGR,YAAW,GAAG;AAAA,IAClB,IAAI,KAAK,OAAO;AAAA,MACd,OAAO,MAAM,KAAK,MAAM,GAAG,EAAE,KAAK,CAAC,aAAa,SAAS,YAAY,CAAC;AAAA,IACxE;AAAA,IACA,OAAO,KAAK,MAAM,YAAY;AAAA;AAAA,EAGhC,QAAQ,GAAG;AAAA,IACT,OAAO,gBAAgB,KAAK;AAAA;AAAA,EAG9B,MAAM,GAAG;AAAA,IACP,OAAO,gBAAgB,KAAK;AAAA;AAEhC;;;AClFO,MAAM,eAKb;AAAA,EACE;AAAA,EACA,UAA+B;AAAA,EAC/B;AAAA,EAEA,WAAW,CACT,SACA,SACA;AAAA,IACA,KAAK,QAAQ;AAAA,IACb,KAAK,WAAW;AAAA;AAAA,SAIX,gBAAiD,CACtD,SACA;AAAA,IACA,MAAM,WAAW,IAAI,KAAK,MAAmC;AAAA,MAC3D,MAAM;AAAA,IACR,CAAC;AAAA,IACD,SAAS,UAAU;AAAA,IACnB,OAAO;AAAA;AAAA,MAIL,YAAY,GAAG;AAAA,IACjB,OAAO,KAAK;AAAA;AAAA,MAGV,QAAQ,GAAG;AAAA,IACb,OAAO,KAAK,SAAS,QAAQ,KAAK,SAAS;AAAA;AAAA,MAGzC,YAAY,GAAG;AAAA,IACjB,OAAO,KAAK,SAAS,MAAM,GAAG,EAAE;AAAA;AAAA,MAG9B,WAAW,GAAG;AAAA,IAChB,OAAO,KAAK,SAAS,MAAM,GAAG,EAAE;AAAA;AAAA,EAGlC,MAAM,GAAG;AAAA,IACP,IAAI,KAAK,SAAS;AAAA,MAChB,QAAQ,UAAU,aAAa,IAAI;AAAA,MAEnC,MAAM,KAAK,QAAQ,GAAG,EAAE,KAAK,CAAC,aAC5B,SAAS,MAAM,OAAO,QAAQ,CAChC;AAAA,MAEA,OAAO;AAAA,IACT;AAAA,IACA,OAAO,KAAK;AAAA;AAAA,EAGd,aAAa,GAA8B;AAAA,IACzC,MAAM,SAAS,KAAK,OAAO,EAAE,UAAU;AAAA,IAEvC,OAAO;AAAA,OACJ,OAAO,cAAc,GAAG;AAAA,QACvB,OAAO;AAAA,eACC,KAAI,GAAG;AAAA,YACX,OAAO,OAAO,KAAK;AAAA;AAAA,eAEf,OAAM,GAAG;AAAA,YACb,OAAO,OAAO;AAAA,YACd,OAAO,YAAY;AAAA,YACnB,OAAO,EAAE,MAAM,MAAM,OAAO,KAAK;AAAA;AAAA,QAErC;AAAA;AAAA,IAEJ;AAAA;AAAA,EAGF,QAAQ,GAAG;AAAA,IACT,OAAO,kBAAkB,KAAK;AAAA;AAAA,EAGhC,MAAM,GAAG;AAAA,IACP,OAAO,kBAAkB,KAAK;AAAA;AAElC;;;ACnGA,cAAS;AAET,IAAM,qBAAqB,GAAE,OAAO;AAAA,EAClC,MAAM,GAAE,OAAO;AAAA,EACf,KAAK,GAAE,OAAO,EAAE,IAAI;AAAA,EACpB,iBAAiB,GAAE,QAAQ,gBAAgB;AAC7C,CAAC;AAIM,SAAS,cAAc,CAAC,MAAqC;AAAA,EAClE,OAAO,mBAAmB,UAAU,IAAI,EAAE;AAAA;AAGrC,SAAS,cAAc,CAAC,YAGd;AAAA,EACf,OAAO;AAAA,OACF;AAAA,IACH,iBAAiB;AAAA,EACnB;AAAA;;;ACrBF,cAAS;AAET,IAAM,mBAAmB,GAAE,OAAO;AAAA,EAChC,MAAM,GAAE,IAAI,EAAE,SAAS;AAAA,EACvB,MAAM,GAAE,OAAO;AAAA,EACf,KAAK,GAAE,IAAI;AAAA,EACX,iBAAiB,GAAE,QAAQ,cAAc;AAC3C,CAAC;AAIM,SAAS,YAAY,CAAC,UAId;AAAA,EACb,OAAO;AAAA,OACF;AAAA,IACH,iBAAiB;AAAA,EACnB;AAAA;AAGK,SAAS,YAAY,CAAC,MAAmC;AAAA,EAC9D,OAAO,iBAAiB,UAAU,IAAI,EAAE;AAAA;;;ACdnC,SAAS,oBAAoB,CAClC,MACA,YAOA;AAAA,EACA,OAAO,QAAQ,MAAM;AAAA,IACnB,MAAM,CAAC,KAAK;AAAA,MACV,IAAI,aAAa,GAAG,GAAG;AAAA,QACrB,OAAO,aAAa,eAAe,GAAG;AAAA,MACxC;AAAA,MAEA,IAAI,eAAe,GAAG,GAAG;AAAA,QACvB,OAAO,eAAe,iBAAiB,GAAG;AAAA,MAC5C;AAAA,MAEA,IAAI,iBAAiB,GAAG,GAAG;AAAA,QACzB,OAAO,CAAC,QAAiB;AAAA,UACvB,WAAW,KAAK,KAAK,IAAI,CAAC;AAAA;AAAA,MAE9B;AAAA;AAAA,EAEJ,CAAC;AAAA;;;AV/BH,cAAS;;;AWET;AAAA;AAAA;AAMA,cAAS;;;ACIF,MAAM,mBAAmB,MAAM;AAAA,EACjB;AAAA,EAAnB,WAAW,CAAQ,OAAgB;AAAA,IACjC,MAAM;AAAA,IADW;AAAA;AAGrB;AAAA;AAEO,MAAM,kBAAkB,MAAM;AAAC;AAAA;AAE/B,MAAM,mBAAmB,MAAM;AAAC;AAEvC,IAAM,eAAe,OAAO,cAAc;AAO1C,SAAS,aAAa,CAAC,OAAsC;AAAA,EAC3D,OAAO,UAAU,QAAQ,OAAO,UAAU,YAAY,gBAAgB;AAAA;AAGjE,SAAS,WAAW,CAAC,QASzB;AAAA,EACD,OAAO,UAAU;AAAA,IACf,OAAO,QAAQ,OAAO,MAAM;AAAA,MAC1B,QAAQ,CAAC,MAAM,MAAM;AAAA,QACnB,OAAO;AAAA,aACF,OAAO,WAAW,IAAI;AAAA,UACzB,YAAY,OAAO;AAAA,UACnB,cAAc;AAAA,UACd,iBAAiB;AAAA,QACnB;AAAA;AAAA,IAEJ,CAAC;AAAA,IACD,SAAS,OAAO;AAAA,IAChB,QAAQ,OAAO;AAAA,EACjB,CAAC;AAAA;AAGH,eAAsB,YAAY,CAAC,QAQhC;AAAA,EACD,IAAI,cAAc,OAAO,MAAM,GAAG;AAAA,IAChC,OAAO;AAAA,MACL,OAAO,MAAM,YAAY;AAAA,QACvB,YAAY,OAAO,OAAO;AAAA,QAC1B,MAAM,OAAO,OAAO;AAAA,QACpB,SAAS,OAAO;AAAA,QAChB,QAAQ,OAAO;AAAA,QACf,YAAY,OAAO;AAAA,MACrB,CAAC;AAAA,MACD,YAAY,OAAO,OAAO;AAAA,IAC5B;AAAA,EACF;AAAA,EACA,OAAO;AAAA,IACL,OAAO,MAAM,YAAY;AAAA,MACvB,YAAY;AAAA,MACZ,MAAM,OAAO;AAAA,MACb,SAAS,OAAO;AAAA,MAChB,QAAQ,OAAO;AAAA,MACf,YAAY,OAAO;AAAA,IACrB,CAAC;AAAA,IACD,YAAY;AAAA,EACd;AAAA;AAGF,SAAS,eAAkB,CACzB,UAC8B;AAAA,EAC9B,OAAO,OAAQ,SAAiB,OAAO,mBAAmB;AAAA;AAG5D,SAAwB,mBAAmB,CAAC,SAazC;AAAA,EACD,MAAM,mBAAmB,oBAA4B;AAAA,EAErD,OAAO;AAAA,IACL;AAAA,MACE,QAAQ,QAAQ;AAAA,MAChB,OAAO,qBAAqB,QAAQ,OAAO,QAAQ,UAAU;AAAA,MAC7D,eAAe,qBAAqB,QAAQ,eAAe,MAAM;AAAA,QAC/D,MAAM,IAAI,MAAM,sCAAsC;AAAA,OACvD;AAAA,MAED,QAAQ,CAAC,MAAqB,OAA6B;AAAA,QACzD,OAAO;AAAA,WACJ,eAAe;AAAA,UAChB;AAAA,QACF;AAAA;AAAA,MAEF,OAAO,QAAQ;AAAA,MAEf,OAAO;AAAA,QACL,GAAG,IAAI,MAAa;AAAA,UAClB,QAAQ,MAAM,OAAO,IAAI;AAAA;AAAA,QAE3B,IAAI,IAAI,MAAa;AAAA,UACnB,QAAQ,MAAM,QAAQ,IAAI;AAAA;AAAA,QAE5B,IAAI,IAAI,MAAa;AAAA,UACnB,QAAQ,MAAM,QAAQ,IAAI;AAAA;AAAA,QAE5B,KAAK,IAAI,MAAa;AAAA,UACpB,QAAQ,MAAM,SAAS,IAAI;AAAA;AAAA,MAE/B;AAAA,MACA,KAAK,CAAC,OAAgB;AAAA,QACpB,MAAM,IAAI,WAAW,KAAK;AAAA;AAAA,MAE5B,KAAK,CAAC,QAAiB;AAAA,QACrB,MAAM,IAAI,WAAW,MAAM;AAAA;AAAA,MAE7B,IAAI,GAAG;AAAA,QACL,MAAM,IAAI;AAAA;AAAA,MAEZ,YAAY,iBAAiB;AAAA,MAC7B,cAAc,QAAuD,CACnE,UACG;AAAA,QACH,IAAI,gBAAgB,QAAQ,GAAG;AAAA,UAC7B,OAAO;AAAA,aACJ,OAAO,cAAc,GAAG;AAAA,cACvB,MAAM,WAAW,SAAS,OAAO,eAAe;AAAA,cAEhD,OAAO;AAAA,qBACC,KAAI,GAAG;AAAA,kBACX,MAAM,SAAS,MAAM,QAAQ,KAAK;AAAA,oBAChC,iBAAiB;AAAA,oBACjB,SAAS,KAAK;AAAA,kBAChB,CAAC;AAAA,kBACD,IAAI,OAAO,WAAW,UAAU;AAAA,oBAC9B,OAAO,EAAE,MAAM,MAAM,OAAO,UAAU;AAAA,kBACxC;AAAA,kBAEA,OAAO;AAAA;AAAA,cAEX;AAAA;AAAA,UAEJ;AAAA,QACF;AAAA,QAEA,OAAO;AAAA,WACJ,OAAO,SAAS,GAAG;AAAA,YAClB,MAAM,WAAW,SAAS,OAAO,UAAU;AAAA,YAC3C,IAAI,aAAa;AAAA,YACjB,iBAAiB,KAAK,MAAM;AAAA,cAC1B,aAAa;AAAA,aACd;AAAA,YAED,OAAO;AAAA,cACL,IAAI,GAAG;AAAA,gBACL,IAAI,YAAY;AAAA,kBACd,OAAO,EAAE,MAAM,MAAM,OAAO,UAAU;AAAA,gBACxC;AAAA,gBACA,MAAM,SAAS,SAAS,KAAK;AAAA,gBAC7B,OAAO;AAAA;AAAA,YAEX;AAAA;AAAA,QAEJ;AAAA;AAAA,IAEJ;AAAA,IACA;AAAA,EACF;AAAA;;;ACrMF,SAAwB,QAAQ,CAAC,MAAwB;AAAA,EACvD,OAAO,QAAQ,MAAM;AAAA,IACnB,MAAM,CAAC,KAAK;AAAA,MACV,IAAI,aAAa,GAAG,GAAG;AAAA,QACrB,OAAO,aAAa,eAAe,GAAG;AAAA,MACxC;AAAA,MACA,IAAI,eAAe,GAAG,GAAG;AAAA,QACvB,OAAO,eAAe,iBAAiB,GAAG;AAAA,MAC5C;AAAA;AAAA,EAEJ,CAAC;AAAA;;;AFmEH,IAAM,mBAAmB,GACtB,OAAO,EACP,UAAU,CAAC,QAAQ,YAAY,GAAG,CAAC,EACnC,KAAK,GAAE,MAAM,CAAC,GAAE,KAAK,GAAG,GAAE,KAAK,CAAC,CAAC,EAAE,KAAK,GAAE,OAAO,CAAC,CAAC,EACnD,UAAU,CAAC,SAAS;AAAA,EACnB,QAAQ,IAAI;AAAA,EACZ,WAAW,IAAI;AAAA,EACf,WAAW,IAAI,MAAM;AAAA,EACrB,WAAW,IAAI,MAAM;AACvB,EAAE;AAEJ,IAAM,eAAe,GAClB,OAAO;AAAA,EACN,YAAY,GAAE,OAAO;AAAA,IACnB,eAAe,GAAE,KAAK;AAAA,IACtB,SAAS,GAAE,OAAO;AAAA,MAChB,QAAQ,GAAE,KAAK;AAAA,IACjB,CAAC;AAAA,EACH,CAAC;AACH,CAAC,EACA,UAAU,CAAC,SAAS;AAAA,EACnB,WAAW,IAAI,WAAW;AAAA,EAC1B,QAAQ,IAAI,WAAW,QAAQ;AACjC,EAAE;AAEJ,IAAM,gBAAgB,GACnB,OAAO,EAAE,SAAS,GAAE,WAAW,MAAM,EAAE,CAAC,EACxC,UAAU,CAAC,QAAQ,KAAK,MAAM,IAAI,QAAQ,SAAS,CAAC,CAAC,EACrD,KACC,GAAE,OAAO;AAAA,EACP,OAAO,GAAE,QAAQ;AAAA,EACjB,eAAe,GAAE,QAAQ;AAAA,EACzB,SAAS,GAAE,OAAO;AAAA,IAChB,WAAW,GAAE,IAAI,EAAE,SAAS;AAAA,IAC5B,WAAW,GAAE,IAAI,EAAE,SAAS;AAAA,EAC9B,CAAC;AACH,CAAC,CACH;AAEF,IAAM,2BAA2B,GAC9B,OAAO;AAAA,EACN,SAAS,GACN,WAAW,MAAM,EACjB,UAAU,CAAC,YAAY,KAAK,MAAM,QAAQ,SAAS,CAAC,CAAC,EACrD,KACC,GAAE,mBAAmB,QAAQ;AAAA,IAC3B,GAAE,OAAO;AAAA,MACP,MAAM,GAAE,QAAQ,MAAM;AAAA,IACxB,CAAC;AAAA,IACD,GAAE,OAAO;AAAA,MACP,MAAM,GAAE,QAAQ,UAAU;AAAA,MAC1B,YAAY,GAAE,KAAK;AAAA,MACnB,KAAK,GAAE,IAAI;AAAA,IACb,CAAC;AAAA,EACH,CAAC,CACH;AAAA,EACF,YAAY,GAAE,OAAO;AAAA,IACnB,eAAe,GAAE,OAAO;AAAA,EAC1B,CAAC;AACH,CAAC,EACA,UAAU,CAAC,aAAa;AAAA,EACvB,SAAS,QAAQ;AAAA,EACjB,WAAW,QAAQ,WAAW;AAChC,EAAE;AAEJ,IAAM,cAAc,OAAO;AAmD3B,SAAS,yBAAkE,CAEzE,SACyE;AAAA,EACzE,OACE,QAAQ,YAAY,SAAS,uBAC7B,QAAQ,YAAY,SAAS;AAAA;AAIjC,IAAM,iBAAiB,IAAI;AAE3B,SAAwB,gBAAmB;AAAA,EAEvC;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX,SAAS;AAAA,EACT;AAAA,EACA;AAAA,GAEF,gBACA;AAAA,EACA,MAAM,QAAQ,GAAG,IAAI,YAAY;AAAA,EACjC,MAAM,WAAW,IAAI;AAAA,EACrB,MAAM,aAAa,QAAQ,IAAI,SAAS,GAAG,EAAE,kBAAkB,CAAC;AAAA,EAEhE,MAAM,mBAAmB,IAAI,QAAc,CAAC,UAAS,WAAW;AAAA,IAC9D,MAAM,cAAc,MAAM;AAAA,MACxB,aAAa,OAAO;AAAA,MACpB,WAAW,eAAe,WAAW,aAAa;AAAA,MAClD,WAAW,eAAe,iBAAiB,mBAAmB;AAAA;AAAA,IAGhE,MAAM,UAAU,WAAW,MAAM;AAAA,MAC/B,oBAAoB,EAAE,KAAK,qBAAqB,CAAC;AAAA,OAChD,iBAAiB;AAAA,IAEpB,MAAM,gBAAgB,MAAM;AAAA,MAC1B,YAAY;AAAA,MACZ,SAAQ;AAAA;AAAA,IAGV,MAAM,sBAAsB,GAAG,UAA2B;AAAA,MACxD,YAAY;AAAA,MACZ,OAAO,IAAI,MAAM,GAAG,CAAC;AAAA;AAAA,IAGvB,WAAW,YAAY,WAAW,aAAa;AAAA,IAC/C,WAAW,YAAY,iBAAiB,mBAAmB;AAAA,GAC5D;AAAA,EAED,MAAM,eAAe,OAAO,WAAW;AAAA,EACvC,MAAM,mBAAmB,GAAG,qBAAqB;AAAA,EAEjD,MAAM,UAAU,WAAW,cAAc;AAAA,SACjC,MAAK,CAAC,UAAyB;AAAA,MACnC,MAAM,SAAQ,cAAc,QAAQ;AAAA,MACpC,MAAM,SAAQ,cAAc,GAAG,gBAAgB;AAAA,MAC/C,MAAM,SAAQ,WAAW,KAAK;AAAA,MAC9B,MAAM,SAAQ,YAAY,kBAAkB;AAAA,QAC1C,WAAW;AAAA,MACb,CAAC;AAAA,MACD,MAAM,SAAQ,UAAU,kBAAkB,WAAW,gBAAgB;AAAA,MACrE,MAAM,SAAQ,SAAS,QAAQ;AAAA;AAAA,EAEnC,CAAC;AAAA,EAED,MAAM,UAAU;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,OACG;AAAA,QASC;AAAA,IACJ,QAAQ,QAAQ,UAAU,IAAI,OAAO,KAAK,KAAK,UAAU,QAAQ,IAAI,CAAC,GAAG;AAAA,MACvE,eAAe;AAAA,MACf,aAAa;AAAA,MACb,YAAY;AAAA,MACZ;AAAA,MACA,SAAS;AAAA,QACP,YAAY,cAAc;AAAA,QAC1B;AAAA,WACG;AAAA,MACL;AAAA,IACF,CAAC;AAAA;AAAA,EAGH,MAAM,uBAAuB,IAAI;AAAA,EACjC,MAAM,YAAY,IAAI;AAAA,EAEtB,QAAQ,QACN,kBACA,OAAO,YAAY;AAAA,IACjB,MAAM,SAAS,yBAAyB,UAAU,OAAO;AAAA,IAEzD,KAAK,OAAO,SAAS;AAAA,MACnB;AAAA,IACF;AAAA,IAEA,MAAM,qBAAqB,OAAO;AAAA,IAElC,QAAQ,mBAAmB,QAAQ;AAAA,WAC5B,QAAQ;AAAA,QACX,qBAAqB,IAAI,mBAAmB,SAAS,IACnD,cACF;AAAA,QACA;AAAA,MACF;AAAA,WACK,YAAY;AAAA,QACf,UAAU,IAAI,mBAAmB,QAAQ,UAAU,IACjD,mBAAmB,QAAQ,GAC7B;AAAA,QACA;AAAA,MACF;AAAA;AAAA,KAGJ;AAAA,IACE,OAAO;AAAA,EACT,CACF;AAAA,EAEA,QAAQ,QAAQ,OAAO,OAAO,YAAY;AAAA,IACxC,IAAI,eAAe;AAAA,IACnB,MAAM,eAAqC,CAAC;AAAA,IAC5C,MAAM,wBAAwB,IAAI;AAAA,IAClC,IAAI,sBAAsB,MAAM;AAAA,IAEhC,IAAI,QAAQ;AAAA,IACZ,MAAM,MAAM,MAAM;AAAA,MAChB,KAAK,OAAO;AAAA,QACV,QAAQ;AAAA,QACR,QAAQ,IAAI,OAAO;AAAA,MACrB;AAAA;AAAA,IAGF,QAAQ,WAAW,WAAW,aAAa,MAAM,OAAO;AAAA,IAExD,IAAI;AAAA,MACF,IAAI,WAAW;AAAA,MACf,IAAI,iBAAgC;AAAA,MAEpC,eAAe,IAAI,SAAS;AAAA,MAC5B,sBAAsB,MAAM,eAAe,OAAO,SAAS;AAAA,MAE3D,MAAM,UAAU,cAAc,MAAM,OAAO;AAAA,MAE3C,OAAO,iBAAiB,oBAAoB,oBAAoB;AAAA,QAC9D;AAAA,QACA,OAAO,SAAS,QAAQ,KAAK;AAAA,QAC7B,eAAe,SAAS,QAAQ,aAAa;AAAA,QAC7C,KAAK,CAAC,aAAa,MAAM;AAAA,UACvB,QAAQ;AAAA,YACN,OAAO;AAAA,YACP;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA,UAAU,QAAQ,WAAW;AAAA,YAC7B,OAAO;AAAA,UACT,CAAC;AAAA;AAAA,QAEH,OAAO,CAAC,QAAQ;AAAA,UACd,WAAW;AAAA,UACX,iBAAiB,UAAU;AAAA,UAC3B,IAAI;AAAA,UACJ,OAAO,UACL,QACA,WACA,QAAQ,QAAQ,aAAa,IAC7B,QAAQ,QAAQ,aAAa,EAC/B;AAAA;AAAA,QAEF,UAAU,CAAC,QAAQ;AAAA,UACjB,QAAQ;AAAA,YACN,OAAO;AAAA,YACP;AAAA,YACA;AAAA,YACA,MAAM,OAAO;AAAA,YACb,YAAY,OAAO;AAAA,YACnB,cAAc,OAAO;AAAA,YACrB,YAAY,OAAO;AAAA,YACnB,cAAc,OAAO;AAAA,UACvB,CAAC;AAAA;AAAA,MAEL,CAAC;AAAA,MAED,QAAQ;AAAA,QACN,OAAO;AAAA,QACP;AAAA,QACA;AAAA,QACA,UAAU,QAAQ,WAAW;AAAA,QAC7B,OAAO;AAAA,MACT,CAAC;AAAA,MAED,IAAI,0BAA0B,cAAc,GAAG;AAAA,QAC7C,MAAM,YAAY,eAAe,eAAe;AAAA,QAChD,MAAM,qBAAqB,oBAAwC;AAAA,QACnE,qBAAqB,IAAI,WAAW,CAAC,WAAW;AAAA,UAC9C,UAAU,OAAO;AAAA,UACjB,mBAAmB,QAAQ,WAAW;AAAA,UACtC,iBAAiB,QAAQ,MAAM;AAAA,UAC/B,IAAI;AAAA,SACL;AAAA,QAED,OAAO,MAAM;AAAA,UACX,MAAM,OAAO,MAAM,QAAQ,KAAK;AAAA,YAC9B;AAAA,YACA,UAAU,KAAK;AAAA,UACjB,CAAC;AAAA,UACD,IAAI,SAAS,aAAa;AAAA,YACxB;AAAA,UACF;AAAA,UAEA,QAAQ,OAAO,QAAQ,SAAS;AAAA,UAChC,IAAI;AAAA,UAEJ,IAAI,UAAU;AAAA,YACZ,WAAW;AAAA,YACX,QAAQ,KACN,oEACF;AAAA,UACF;AAAA,UAEA,MAAM,cAAc,oBAAoB;AAAA,UACxC,aAAa,KAAK,WAAW;AAAA,UAE7B,QAAQ,OAAO,eAAe,MAAM,aAAa;AAAA,YAC/C;AAAA,YACA,SAAS,QAAQ;AAAA,YACjB,QAAQ,YAAY;AAAA,YACpB,YAAY,CAAC,aAAa;AAAA,cACxB,MAAM,aAAa,OAAO,WAAW;AAAA,cACrC,sBAAsB,IAAI,UAAU;AAAA,cACpC,UAAU,IAAI,YAAY,QAAQ;AAAA,cAClC,OAAO;AAAA,gBACL,UAAU;AAAA,gBACV;AAAA,cACF;AAAA;AAAA,UAEJ,CAAC;AAAA,UAED,KAAK,QAAQ,OAAO,UAAU,aAAa;AAAA,YACzC,QAAQ;AAAA,cACN,OAAO;AAAA,cACP;AAAA,cACA;AAAA,cACA,MAAM;AAAA,cACN,UAAU,QAAQ,WAAW;AAAA,cAC7B;AAAA,YACF,CAAC;AAAA,UACH;AAAA,UAEA,IAAI,MAAM;AAAA,YACR;AAAA,UACF;AAAA,QACF;AAAA,MACF,EAAO;AAAA,QACL,MAAM,SAAS,MAAM,eAAe,eAAe;AAAA,QACnD,IAAI;AAAA,QAEJ,MAAM,cAAc,oBAAoB;AAAA,QACxC,aAAa,KAAK,WAAW;AAAA,QAC7B,QAAQ,OAAO,eAAe,MAAM,aAAa;AAAA,UAC/C;AAAA,UACA,SAAS,QAAQ;AAAA,UACjB,QAAQ,YAAY;AAAA,UACpB,YAAY,MAAM;AAAA,YAChB,MAAM,IAAI,MAAM,mDAAmD;AAAA;AAAA,QAEvE,CAAC;AAAA,QACD,IAAI,YAAY,OAAO;AAAA,UACrB,QAAQ,KACN,oEACF;AAAA,UACA,WAAW;AAAA,QACb;AAAA,QAEA,KAAK,YAAY,OAAO;AAAA,UACtB,QAAQ;AAAA,YACN,OAAO;AAAA,YACP;AAAA,YACA;AAAA,YACA,MAAM;AAAA,YACN,UAAU,QAAQ,WAAW;AAAA,YAC7B;AAAA,UACF,CAAC;AAAA,QACH;AAAA;AAAA,MAGF,aAAa,YAAY;AAAA,QACvB,KAAK,UAAU;AAAA,UACb,MAAM,QAAQ,WAAW,YAAY;AAAA,QACvC;AAAA,QAEA,QAAQ;AAAA,UACN,OAAO;AAAA,UACP;AAAA,UACA;AAAA,UACA,MAAM;AAAA,UACN,UAAU,QAAQ,WAAW;AAAA,UAC7B;AAAA,UACA,OAAO;AAAA,QACT,CAAC;AAAA,OACF;AAAA,MACD,OAAO,OAAO;AAAA,MACd,MAAM,aAAa,CAAC,aAAoB;AAAA,QACtC,IAAI,OAAO;AAAA,UACT,QAAQ,MAAM,QAAO;AAAA,UACrB,OAAO;AAAA,QACT;AAAA,QACA,OAAO;AAAA;AAAA,MAGT,IAAI,iBAAiB,WAAW;AAAA,QAC9B,IAAI,WAAW,gCAAgC,GAAG;AAAA,UAChD,QAAQ,KAAK,OAAO;AAAA,QACtB;AAAA,QACA;AAAA,MACF;AAAA,MACA,IAAI,iBAAiB,YAAY;AAAA,QAC/B,IAAI,WAAW,iCAAiC,GAAG;AAAA,UACjD,MAAM,aAA8B;AAAA,eAC/B,QAAQ;AAAA,YACX,YAAY,MAAM,SAAS;AAAA,UAC7B;AAAA,UACA,QAAQ,QACN,GAAG,kBACH,SACA,QAAQ,SACR,UACF;AAAA,UACA,IAAI;AAAA,QACN;AAAA,QACA;AAAA,MACF;AAAA,MAEA,IAAI,iBAAiB,cAAc,MAAM,QAAQ,SAAS,GAAG;AAAA,QAC3D,IAAI,WAAW,iCAAiC,GAAG;AAAA,UACjD,QAAQ,QACN,GAAG,kBACH,YACA,MAAM,SACN;AAAA,eACK,QAAQ;AAAA,YACX,aAAa;AAAA,YACb,SAAS;AAAA,iBACJ,QAAQ,WAAW;AAAA,cACtB,OAAO;AAAA,cACP,OAAO;AAAA,YACT;AAAA,UACF,CACF;AAAA,UAEA,IAAI;AAAA,QACN;AAAA,QACA;AAAA,MACF;AAAA,MAEA,IAAI,iBAAiB,OAAO;AAAA,QAC1B,KAAK,QAAQ;AAAA,UACX,QAAQ,MAAM,8CAA8C;AAAA,UAC5D,QAAQ,MAAM,KAAK;AAAA,QACrB;AAAA,QAEA,KAAK,OAAO;AAAA,UACV,QAAQ,QACN,GAAG,kBACH,YACA,QAAQ,SACR;AAAA,eACK,QAAQ;AAAA,YACX,SAAS;AAAA,iBACJ,QAAQ,WAAW;AAAA,cACtB;AAAA,cACA,WAAW;AAAA,cACX,OAAO;AAAA,cACP,iBAAiB,MAAM,WAAW;AAAA,YACpC;AAAA,UACF,CACF;AAAA,UAEA,QAAQ,IAAI,OAAO;AAAA,QACrB;AAAA,QACA;AAAA,MACF;AAAA,MAEA,KAAK,OAAO;AAAA,QACV,QAAQ,KAAK,SAAS,OAAO,KAAK;AAAA,MACpC;AAAA,cACA;AAAA,MACA,qBAAqB,OAAO,SAAS;AAAA,MACrC,sBAAsB,QAAQ,CAAC,OAAO,UAAU,OAAO,EAAE,CAAC;AAAA,MAC1D,oBAAoB;AAAA;AAAA,GAEvB;AAAA,EAED,MAAM,MAAwB;AAAA,IAC5B,OAAO,YAAY;AAAA,MACjB,MAAM,QAAQ,MAAM;AAAA,MACpB,MAAM,WAAW,MAAM;AAAA;AAAA,IAEzB,MAAM,MAAM,iBAAiB,KAAK,MAAM,GAAG;AAAA,SAErC,IAAG,CAAC,YAAY,OAAO;AAAA,MAC3B,IAAI,eAAe;AAAA,MACnB,QAAQ,QAAQ,cAAc,YAC5B,iBAAiB,MAAM,UAAU;AAAA,MAEnC,MAAM,qBAAqB,MAAM;AAAA,QAC/B,IAAI,eAAe,IAAI,SAAS,GAAG;AAAA,UACjC,MAAM,IAAI,MACR,sEACF;AAAA,QACF;AAAA;AAAA,MAGF,MAAM,wBAAwB,IAAI;AAAA,MAClC,MAAM,eAAqC,CAAC;AAAA,MAE5C,MAAM,MAAM;AAAA,aACJ,aAAY,CAAC,YAAY,MAAM;AAAA,UACnC,mBAAmB;AAAA,UACnB,MAAM,cAAc,oBAAoB;AAAA,UACxC,aAAa,KAAK,WAAW;AAAA,UAC7B,QAAQ;AAAA,YACN,OAAO;AAAA,YACP;AAAA,YACA;AAAA,YACA,MAAM,MAAM,YAAY;AAAA,cACtB;AAAA,cACA;AAAA,cACA;AAAA,cACA,QAAQ,YAAY;AAAA,cACpB,YAAY,CAAC,aAAa;AAAA,gBACxB,MAAM,aAAa,OAAO,WAAW;AAAA,gBACrC,sBAAsB,IAAI,UAAU;AAAA,gBACpC,UAAU,IAAI,YAAY,QAAQ;AAAA,gBAElC,OAAO;AAAA,kBACL,UAAU;AAAA,kBACV;AAAA,gBACF;AAAA;AAAA,YAEJ,CAAC;AAAA,YACD;AAAA,UACF,CAAC;AAAA;AAAA,aAEG,KAAI,CAAC,MAAM;AAAA,UACf,mBAAmB;AAAA,UACnB,MAAM,cAAc,oBAAoB;AAAA,UACxC,aAAa,KAAK,WAAW;AAAA,UAC7B,QAAQ;AAAA,YACN,OAAO;AAAA,YACP;AAAA,YACA;AAAA,YACA,MAAM,MAAM,YAAY;AAAA,cACtB,YAAY;AAAA,cACZ;AAAA,cACA;AAAA,cACA,QAAQ,YAAY;AAAA,cACpB,YAAY,CAAC,aAAa;AAAA,gBACxB,MAAM,aAAa,OAAO,WAAW;AAAA,gBACrC,sBAAsB,IAAI,UAAU;AAAA,gBACpC,UAAU,IAAI,YAAY,QAAQ;AAAA,gBAClC,OAAO;AAAA,kBACL,UAAU;AAAA,kBACV;AAAA,gBACF;AAAA;AAAA,YAEJ,CAAC;AAAA,UACH,CAAC;AAAA;AAAA,QAEH,KAAK,CAAC,OAAO;AAAA,UACX,mBAAmB;AAAA,UACnB,QAAQ,QACN,GAAG,kBACH,YACA,iBAAiB,QAAQ,MAAM,UAAU,OACzC;AAAA,YACE,YAAY;AAAA,YACZ,eAAe;AAAA,YACf,YAAY;AAAA,YACZ,UAAU;AAAA,YACV,aAAa;AAAA,YACb,SAAS;AAAA,cACP;AAAA,cACA,OAAO;AAAA,cACP,OAAO;AAAA,YACT;AAAA,UACF,CACF;AAAA;AAAA,MAEJ,CAAC;AAAA,MAED,aAAa,YAAY;AAAA,QACvB,MAAM,QAAQ,WAAW,YAAY;AAAA,QAErC,sBAAsB,QAAQ,CAAC,OAAO,UAAU,OAAO,EAAE,CAAC;AAAA,QAE1D,QAAQ;AAAA,UACN,OAAO;AAAA,UACP;AAAA,UACA;AAAA,UACA,MAAM;AAAA,QACR,CAAC;AAAA,OACF;AAAA;AAAA,EAEL;AAAA,EACA,OAAO;AAAA;;;AXlrBT,IAAM,0BAA0B,GAAE,OAAO;AAAA,EACvC,KAAK,GAAE,MAAM;AAAA,IACX,GACG,OAAO,EACP,MAAM,6BAA6B,EACnC,UAAU,CAAC,QAAQ,IAAI,IAAI,GAAG,CAAC;AAAA,IAClC,GACG,WAAW,GAAG,EACd,OAAO,CAAC,QAAQ,IAAI,SAAS,MAAM,UAAU,GAAG,gBAAgB;AAAA,EACrE,CAAC;AAAA,EACD,SAAS,GAAE,OAAO;AAAA,EAClB,QAAQ,GAAE,QAAQ,EAAE,SAAS;AAAA,EAC7B,UAAU,GAAE,OAAO,EAAE,IAAI,EAAE,SAAS;AAAA,EACpC,mBAAmB,GAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,IAAK;AAAA,EACtD,mBAAmB,GAAE,IAAI;AAC3B,CAAC;AAQM,SAAS,aAEf,CACC,kBACA,wBACA;AAAA,EACA,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI,OAAO,qBAAqB,UAAU;AAAA,IACxC,UAAU;AAAA,MACR,SAAS;AAAA,IACX;AAAA,IACA,iBAAiB;AAAA,EACnB,EAAO;AAAA,IACL,UAAU;AAAA,IACV,iBAAiB;AAAA;AAAA,EAGnB,IAAI,QACF,QAAQ,eACR,QAAQ,IAAI,iCACZ,QAAQ,IAAI;AAAA,EAEd,KAAK,OAAO;AAAA,IACV,MAAM,UAAU,KAAK,MAAM,GAAG,aAAa,gBAAgB,OAAO,CAAC;AAAA,IACnE,QACE,QAAQ,UAAU,SAAS,eAAe,QAAQ,UAAU;AAAA,EAChE;AAAA,EAEA,KAAK,OAAO;AAAA,IACV,MAAM,IAAI,MAAM,sBAAsB;AAAA,EACxC;AAAA,EAEA,MAAM,QAAQ,YAAY,KAAK;AAAA,EAC/B,IAAI,MAAM,SAAS,KAAK,MAAM,OAAO,WAAW;AAAA,IAC9C,MAAM,IAAI,MAAM,qBAAqB;AAAA,EACvC;AAAA,EAEA,MAAM,oBAAoB;AAAA,OACrB;AAAA,IACH,KAAK,MAAM;AAAA,EACb;AAAA,EAEA,OAAO,iBACL,wBAAwB,MAAM,iBAAiB,GAC/C,cACF;AAAA;",
|
|
21
|
+
"debugId": "DB60EAB4653D0F1964756E2164756E21",
|
|
21
22
|
"names": []
|
|
22
23
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { z } from 'zod/v4';
|
|
2
2
|
declare const fileObjectSchema: z.ZodObject<{
|
|
3
|
-
size: z.
|
|
3
|
+
size: z.ZodInt;
|
|
4
4
|
mime: z.ZodString;
|
|
5
|
-
url: z.
|
|
5
|
+
url: z.ZodURL;
|
|
6
6
|
__REQUENCE_type: z.ZodLiteral<"RequenceFile">;
|
|
7
7
|
}, z.core.$strip>;
|
|
8
8
|
export type FileObject = z.infer<typeof fileObjectSchema>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../helpers/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,oCAAoC,CAAA;AAClD,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,iCAAiC,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../helpers/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,oCAAoC,CAAA;AAClD,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,6BAA6B,CAAA"}
|
|
@@ -15,6 +15,6 @@ interface Visitor {
|
|
|
15
15
|
Enum?: (schema: JSONSchema7) => JSONSchema7 | void;
|
|
16
16
|
RequenceType?: (schema: JSONSchema7) => JSONSchema7 | void;
|
|
17
17
|
}
|
|
18
|
-
export
|
|
18
|
+
export declare function mapSchema<T extends JSONSchema7Definition>(rawSchema: T, visitor: Visitor): T;
|
|
19
19
|
export {};
|
|
20
20
|
//# sourceMappingURL=mapSchema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapSchema.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/jsonschema/mapSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAExD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE7C,UAAU,OAAO;IACf,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IACpD,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IACrD,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IACrD,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IAClD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IACpD,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IACnD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IACpD,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IACnD,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IACnD,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IACnD,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IAClD,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IAClD,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;CAC3D;AAMD,
|
|
1
|
+
{"version":3,"file":"mapSchema.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/jsonschema/mapSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAExD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE7C,UAAU,OAAO;IACf,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IACpD,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IACrD,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IACrD,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IAClD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IACpD,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IACnD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IACpD,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IACnD,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IACnD,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IACnD,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IAClD,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;IAClD,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,GAAG,IAAI,CAAA;CAC3D;AAMD,wBAAgB,SAAS,CAAC,CAAC,SAAS,qBAAqB,EACvD,SAAS,EAAE,CAAC,EACZ,OAAO,EAAE,OAAO,GACf,CAAC,CAuFH"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import type { JSONSchema7, JSONSchema7TypeName } from 'json-schema';
|
|
2
2
|
declare module 'json-schema' {
|
|
3
3
|
interface JSONSchema7 {
|
|
4
|
-
requenceType?: 'file' | 'stream';
|
|
4
|
+
requenceType?: 'file' | 'stream' | 'callback';
|
|
5
|
+
arg?: JSONSchema7;
|
|
5
6
|
maxByteLength?: number;
|
|
6
7
|
instanceOf?: string;
|
|
7
8
|
accept?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/jsonschema/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAEnE,OAAO,QAAQ,aAAa,CAAC;IAC3B,UAAU,WAAW;QACnB,YAAY,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/jsonschema/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAEnE,OAAO,QAAQ,aAAa,CAAC;IAC3B,UAAU,WAAW;QACnB,YAAY,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,UAAU,CAAA;QAC7C,GAAG,CAAC,EAAE,WAAW,CAAA;QACjB,aAAa,CAAC,EAAE,MAAM,CAAA;QACtB,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,MAAM,CAAC,EAAE,MAAM,CAAA;KAChB;CACF;AAED,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/jsonschema/validate.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,GAAG,IAAI,OAAO,EAEd,KAAK,iBAAiB,EACtB,KAAK,OAAO,EACb,MAAM,KAAK,CAAA;AAEZ,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAO9C,qBAAa,eAAgB,SAAQ,KAAK;aAGtB,QAAQ,CAAC,EAAE,MAAM;gBADjC,OAAO,EAAE,MAAM,EACC,QAAQ,CAAC,EAAE,MAAM,YAAA;CAIpC;AAED,eAAO,MAAM,aAAa,EAAE,iBAQ3B,CAAA;AAED,eAAO,MAAM,qBAAqB,EAAE,iBAkBnC,CAAA;AAED,eAAO,MAAM,oBAAoB,EAAE,iBAKlC,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,iBAkB/B,CAAA;AAED,eAAO,MAAM,oBAAoB,EAAE,iBAOlC,CAAA;AAED,eAAO,MAAM,4BAA4B,EAAE,iBAmB1C,CAAA;
|
|
1
|
+
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/jsonschema/validate.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,GAAG,IAAI,OAAO,EAEd,KAAK,iBAAiB,EACtB,KAAK,OAAO,EACb,MAAM,KAAK,CAAA;AAEZ,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAO9C,qBAAa,eAAgB,SAAQ,KAAK;aAGtB,QAAQ,CAAC,EAAE,MAAM;gBADjC,OAAO,EAAE,MAAM,EACC,QAAQ,CAAC,EAAE,MAAM,YAAA;CAIpC;AAED,eAAO,MAAM,aAAa,EAAE,iBAQ3B,CAAA;AAED,eAAO,MAAM,qBAAqB,EAAE,iBAkBnC,CAAA;AAED,eAAO,MAAM,oBAAoB,EAAE,iBAKlC,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,iBAkB/B,CAAA;AAED,eAAO,MAAM,oBAAoB,EAAE,iBAOlC,CAAA;AAED,eAAO,MAAM,4BAA4B,EAAE,iBAmB1C,CAAA;AAMD,qBAAa,GAAI,SAAQ,OAAO;gBAClB,OAAO,CAAC,EAAE,OAAO,GAAG;QAAE,kBAAkB,CAAC,EAAE,OAAO,CAAA;KAAE;CAcjE;AAED,wBAAgB,QAAQ,CAAC,CAAC,SAAS,WAAW,EAAE,OAAO,EAAE;IACvD,MAAM,EAAE,CAAC,CAAA;IACT,KAAK,EAAE,OAAO,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,yBAAyB,CAAC,EAAE,OAAO,CAAA;IACnC,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B;;EAiCA"}
|
|
@@ -51,6 +51,35 @@ declare const nodeUpdateSchema: z.ZodObject<{
|
|
|
51
51
|
data: z.ZodUnknown;
|
|
52
52
|
}, z.core.$strip>;
|
|
53
53
|
export type NodeUpdate = z.infer<typeof nodeUpdateSchema>;
|
|
54
|
+
declare const nodeCallbackSchema: z.ZodObject<{
|
|
55
|
+
timestamp: z.ZodPipe<z.ZodNumber, z.ZodTransform<Date, number>>;
|
|
56
|
+
id: z.ZodUUID;
|
|
57
|
+
node: z.ZodObject<{
|
|
58
|
+
id: z.ZodUUID;
|
|
59
|
+
type: z.ZodEnum<{
|
|
60
|
+
service: "service";
|
|
61
|
+
logic: "logic";
|
|
62
|
+
or: "or";
|
|
63
|
+
reference: "reference";
|
|
64
|
+
}>;
|
|
65
|
+
alias: z.ZodOptional<z.ZodString>;
|
|
66
|
+
}, z.core.$strip>;
|
|
67
|
+
type: z.ZodLiteral<"NODE_CALLBACK">;
|
|
68
|
+
targetNode: z.ZodObject<{
|
|
69
|
+
id: z.ZodUUID;
|
|
70
|
+
type: z.ZodEnum<{
|
|
71
|
+
service: "service";
|
|
72
|
+
logic: "logic";
|
|
73
|
+
or: "or";
|
|
74
|
+
reference: "reference";
|
|
75
|
+
}>;
|
|
76
|
+
alias: z.ZodOptional<z.ZodString>;
|
|
77
|
+
}, z.core.$strip>;
|
|
78
|
+
propertyPath: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
|
|
79
|
+
output: z.ZodNullable<z.ZodString>;
|
|
80
|
+
data: z.ZodUnknown;
|
|
81
|
+
}, z.core.$strip>;
|
|
82
|
+
export type NodeCallback = z.infer<typeof nodeCallbackSchema>;
|
|
54
83
|
declare const nodeFinishedUpdateSchema: z.ZodObject<{
|
|
55
84
|
timestamp: z.ZodPipe<z.ZodNumber, z.ZodTransform<Date, number>>;
|
|
56
85
|
id: z.ZodUUID;
|
|
@@ -181,6 +210,33 @@ export declare const updateSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
181
210
|
type: z.ZodLiteral<"NODE_UPDATE">;
|
|
182
211
|
output: z.ZodNullable<z.ZodString>;
|
|
183
212
|
data: z.ZodUnknown;
|
|
213
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
214
|
+
timestamp: z.ZodPipe<z.ZodNumber, z.ZodTransform<Date, number>>;
|
|
215
|
+
id: z.ZodUUID;
|
|
216
|
+
node: z.ZodObject<{
|
|
217
|
+
id: z.ZodUUID;
|
|
218
|
+
type: z.ZodEnum<{
|
|
219
|
+
service: "service";
|
|
220
|
+
logic: "logic";
|
|
221
|
+
or: "or";
|
|
222
|
+
reference: "reference";
|
|
223
|
+
}>;
|
|
224
|
+
alias: z.ZodOptional<z.ZodString>;
|
|
225
|
+
}, z.core.$strip>;
|
|
226
|
+
type: z.ZodLiteral<"NODE_CALLBACK">;
|
|
227
|
+
targetNode: z.ZodObject<{
|
|
228
|
+
id: z.ZodUUID;
|
|
229
|
+
type: z.ZodEnum<{
|
|
230
|
+
service: "service";
|
|
231
|
+
logic: "logic";
|
|
232
|
+
or: "or";
|
|
233
|
+
reference: "reference";
|
|
234
|
+
}>;
|
|
235
|
+
alias: z.ZodOptional<z.ZodString>;
|
|
236
|
+
}, z.core.$strip>;
|
|
237
|
+
propertyPath: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
|
|
238
|
+
output: z.ZodNullable<z.ZodString>;
|
|
239
|
+
data: z.ZodUnknown;
|
|
184
240
|
}, z.core.$strip>, z.ZodObject<{
|
|
185
241
|
timestamp: z.ZodPipe<z.ZodNumber, z.ZodTransform<Date, number>>;
|
|
186
242
|
id: z.ZodUUID;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/protocol/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAkB1B,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;iBAGzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;iBAGzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;iBAIpB,CAAA;AAEF,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAEzD,QAAA,MAAM,wBAAwB;;;;;;;;;;;;;;iBAE5B,CAAA;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEzE,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;iBAIzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;iBAGzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,qBAAqB;;;;;;;;;;iBAWzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,qBAAqB;;;;;iBAGzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,wBAAwB;;;;;;iBAI5B,CAAA;AACF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAOzE,eAAO,MAAM,YAAY
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/protocol/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAkB1B,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;iBAGzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;iBAGzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;iBAIpB,CAAA;AAEF,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAEzD,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAMtB,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,QAAA,MAAM,wBAAwB;;;;;;;;;;;;;;iBAE5B,CAAA;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEzE,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;iBAIzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;iBAGzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,qBAAqB;;;;;;;;;;iBAWzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,qBAAqB;;;;;iBAGzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,wBAAwB;;;;;;iBAI5B,CAAA;AACF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAOzE,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAYvB,CAAA;AAEF,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAA"}
|
|
@@ -6,6 +6,7 @@ interface DataVistors {
|
|
|
6
6
|
Object?: DataVistor<object>;
|
|
7
7
|
Array?: DataVistor<Array<any>>;
|
|
8
8
|
Buffer?: DataVistor<Buffer>;
|
|
9
|
+
Function?: DataVistor<(...args: any[]) => any>;
|
|
9
10
|
Symbol?: DataVistor<symbol>;
|
|
10
11
|
}
|
|
11
12
|
type HasPromiseVistor<T extends DataVistors, Then, Else> = T[keyof T] extends (...args: any[]) => any ? Promise<any> extends ReturnType<T[keyof T]> ? Then : Else : Else;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapData.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/utils/mapData.ts"],"names":[],"mappings":"AAEA,KAAK,UAAU,CAAC,CAAC,IAAI,CACnB,IAAI,EAAE,CAAC,EACP,IAAI,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,KACzB,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAA;AAEvB,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAA;IACvB,MAAM,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;IAC3B,MAAM,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;IAC3B,MAAM,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;IAC3B,KAAK,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;IAC9B,MAAM,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;IAC3B,MAAM,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;CAC5B;AAED,KAAK,gBAAgB,CAAC,CAAC,SAAS,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,CAC5E,GAAG,IAAI,EAAE,GAAG,EAAE,KACX,GAAG,GACJ,OAAO,CAAC,GAAG,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GACzC,IAAI,GACJ,IAAI,GACN,IAAI,CAAA;AAmBR,wBAAgB,OAAO,CACrB,MAAM,EACN,KAAK,GAAG,OAAO,EACf,CAAC,SAAS,WAAW,GAAG,WAAW,EAEnC,IAAI,EAAE,KAAK,EACX,QAAQ,EAAE,CAAC,GACV,gBAAgB,CACjB,CAAC,EACD,OAAO,CAAC,OAAO,SAAS,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC,EAChD,OAAO,SAAS,MAAM,GAAG,KAAK,GAAG,MAAM,CACxC,
|
|
1
|
+
{"version":3,"file":"mapData.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/utils/mapData.ts"],"names":[],"mappings":"AAEA,KAAK,UAAU,CAAC,CAAC,IAAI,CACnB,IAAI,EAAE,CAAC,EACP,IAAI,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,KACzB,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAA;AAEvB,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAA;IACvB,MAAM,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;IAC3B,MAAM,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;IAC3B,MAAM,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;IAC3B,KAAK,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;IAC9B,MAAM,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;IAC3B,QAAQ,CAAC,EAAE,UAAU,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,CAAA;IAC9C,MAAM,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;CAC5B;AAED,KAAK,gBAAgB,CAAC,CAAC,SAAS,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,CAC5E,GAAG,IAAI,EAAE,GAAG,EAAE,KACX,GAAG,GACJ,OAAO,CAAC,GAAG,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GACzC,IAAI,GACJ,IAAI,GACN,IAAI,CAAA;AAmBR,wBAAgB,OAAO,CACrB,MAAM,EACN,KAAK,GAAG,OAAO,EACf,CAAC,SAAS,WAAW,GAAG,WAAW,EAEnC,IAAI,EAAE,KAAK,EACX,QAAQ,EAAE,CAAC,GACV,gBAAgB,CACjB,CAAC,EACD,OAAO,CAAC,OAAO,SAAS,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC,EAChD,OAAO,SAAS,MAAM,GAAG,KAAK,GAAG,MAAM,CACxC,CAiFA;yBA5Fe,OAAO"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { z } from 'zod/v4';
|
|
2
|
+
declare const callbackObjectSchema: z.ZodObject<{
|
|
3
|
+
sourceId: z.ZodString;
|
|
4
|
+
outputName: z.ZodNullable<z.ZodString>;
|
|
5
|
+
propertyPath: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodInt]>>;
|
|
6
|
+
callbackId: z.ZodUUID;
|
|
7
|
+
__REQUENCE_type: z.ZodLiteral<"RequenceCallback">;
|
|
8
|
+
}, z.core.$strip>;
|
|
9
|
+
export type CallbackObject = z.infer<typeof callbackObjectSchema>;
|
|
10
|
+
export declare function isCallbackObject(data: unknown): data is CallbackObject;
|
|
11
|
+
export declare function createCallback<T>(callback?: (arg: T) => void): ((arg: T) => void) & {
|
|
12
|
+
response(): Promise<T>;
|
|
13
|
+
};
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=requenceCallback.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"requenceCallback.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/utils/requenceCallback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE1B,QAAA,MAAM,oBAAoB;;;;;;iBAMxB,CAAA;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEjE,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,cAAc,CAEtE;AAED,wBAAgB,cAAc,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,UAMpC,CAAC;;EAUzB"}
|
|
@@ -1,2 +1,8 @@
|
|
|
1
|
-
export declare function resolveRequenceTypes(data: any
|
|
1
|
+
export declare function resolveRequenceTypes(data: any, onCallback: (params: {
|
|
2
|
+
sourceId: string;
|
|
3
|
+
callbackId: string;
|
|
4
|
+
outputName: string | null;
|
|
5
|
+
propertyPath: (string | number)[];
|
|
6
|
+
arg: unknown;
|
|
7
|
+
}) => void): any;
|
|
2
8
|
//# sourceMappingURL=resolveRequenceTypes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveRequenceTypes.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/utils/resolveRequenceTypes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"resolveRequenceTypes.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/utils/resolveRequenceTypes.ts"],"names":[],"mappings":"AASA,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,GAAG,EACT,UAAU,EAAE,CAAC,MAAM,EAAE;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,YAAY,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;IACjC,GAAG,EAAE,OAAO,CAAA;CACb,KAAK,IAAI,OAmBX"}
|
|
@@ -34,8 +34,8 @@ interface ConnectionOptions {
|
|
|
34
34
|
type MessageHandlerContext<V> = V extends keyof RequenceService.Version ? ServiceContextHelper<V> : ContextHelper;
|
|
35
35
|
type MessageHandlerReturnValue<V> = V extends keyof RequenceService.Version ? ReturnValue<V> : JSONValue;
|
|
36
36
|
type MessageHandlerFunction<V> = (context: MessageHandlerContext<V>) => MaybePromise<MessageHandlerReturnValue<V> | void>;
|
|
37
|
-
type MessageHandlerGenerator<V> = (context: MessageHandlerContext<V>) => Generator<MessageHandlerReturnValue<V>, MessageHandlerReturnValue<V
|
|
38
|
-
type MessageHandlerAsyncGenerator<V> = (context: MessageHandlerContext<V>) => AsyncGenerator<MessageHandlerReturnValue<V>, MessageHandlerReturnValue<V
|
|
37
|
+
type MessageHandlerGenerator<V> = (context: MessageHandlerContext<V>) => Generator<MessageHandlerReturnValue<V>, MessageHandlerReturnValue<V> | void, void>;
|
|
38
|
+
type MessageHandlerAsyncGenerator<V> = (context: MessageHandlerContext<V>) => AsyncGenerator<MessageHandlerReturnValue<V>, MessageHandlerReturnValue<V> | void, void>;
|
|
39
39
|
export type MessageHandler<V> = V extends keyof RequenceService.Version ? RequenceService.Version[V]['mode'] extends 'linear' ? MessageHandlerFunction<V> : MessageHandlerAsyncGenerator<V> | MessageHandlerGenerator<V> | MessageHandlerFunction<V> : MessageHandlerAsyncGenerator<V> | MessageHandlerGenerator<V> | MessageHandlerFunction<V>;
|
|
40
40
|
export default function createConnection<V>({ url, version, prefetch, silent, connectionTimeout, connectionOptions, }: ConnectionOptions, messageHandler: MessageHandler<V>): ConnectionApi<V>;
|
|
41
41
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createAmqpConnection.d.ts","sourceRoot":"","sources":["../../../../src/createAmqpConnection.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"createAmqpConnection.d.ts","sourceRoot":"","sources":["../../../../src/createAmqpConnection.ts"],"names":[],"mappings":"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"}
|