@prefactor/sdk 0.1.1 → 0.1.2
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/dist/config.d.ts +2 -2
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +2 -2
- package/dist/config.js.map +1 -1
- package/dist/index.cjs +41 -6
- package/dist/index.cjs.map +4 -4
- package/dist/index.js +41 -6
- package/dist/index.js.map +4 -4
- package/dist/package.json +1 -1
- package/dist/transport/http.d.ts +4 -0
- package/dist/transport/http.d.ts.map +1 -1
- package/dist/transport/http.js +51 -4
- package/dist/transport/http.js.map +1 -1
- package/package.json +1 -1
package/dist/config.d.ts
CHANGED
|
@@ -15,9 +15,9 @@ export declare const HttpTransportConfigSchema: z.ZodObject<{
|
|
|
15
15
|
agentName: z.ZodOptional<z.ZodString>;
|
|
16
16
|
/** Optional agent description */
|
|
17
17
|
agentDescription: z.ZodOptional<z.ZodString>;
|
|
18
|
-
/** Optional agent schema for validation */
|
|
18
|
+
/** Optional agent schema for validation (full schema object) */
|
|
19
19
|
agentSchema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
20
|
-
/** Optional agent schema version */
|
|
20
|
+
/** Optional agent schema version identifier (string) */
|
|
21
21
|
agentSchemaVersion: z.ZodOptional<z.ZodString>;
|
|
22
22
|
/** Skip schema validation */
|
|
23
23
|
skipSchema: z.ZodDefault<z.ZodBoolean>;
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,yBAAyB;IACpC,uBAAuB;;IAGvB,2BAA2B;;IAG3B,gCAAgC;;IAGhC,6BAA6B;;IAG7B,0BAA0B;;IAG1B,iCAAiC;;IAGjC,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,yBAAyB;IACpC,uBAAuB;;IAGvB,2BAA2B;;IAG3B,gCAAgC;;IAGhC,6BAA6B;;IAG7B,0BAA0B;;IAG1B,iCAAiC;;IAGjC,gEAAgE;;IAGhE,wDAAwD;;IAGxD,6BAA6B;;IAG7B,sCAAsC;;IAGtC,yCAAyC;;IAGzC,uCAAuC;;IAGvC,oDAAoD;;IAGpD,oDAAoD;;IAGpD,yCAAyC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEzC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgBlC,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE;;GAEG;AACH,eAAO,MAAM,YAAY;IACvB,8CAA8C;;IAG9C,iCAAiC;;IAGjC,qCAAqC;;IAGrC,sCAAsC;;IAGtC,uCAAuC;;IAGvC,wCAAwC;;IAGxC,yEAAyE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEzE,CAAC;AAEH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAElD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAkB9D"}
|
package/dist/config.js
CHANGED
|
@@ -15,9 +15,9 @@ export const HttpTransportConfigSchema = z.object({
|
|
|
15
15
|
agentName: z.string().optional(),
|
|
16
16
|
/** Optional agent description */
|
|
17
17
|
agentDescription: z.string().optional(),
|
|
18
|
-
/** Optional agent schema for validation */
|
|
18
|
+
/** Optional agent schema for validation (full schema object) */
|
|
19
19
|
agentSchema: z.record(z.unknown()).optional(),
|
|
20
|
-
/** Optional agent schema version */
|
|
20
|
+
/** Optional agent schema version identifier (string) */
|
|
21
21
|
agentSchemaVersion: z.string().optional(),
|
|
22
22
|
/** Skip schema validation */
|
|
23
23
|
skipSchema: z.boolean().default(false),
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,uBAAuB;IACvB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IAExB,2BAA2B;IAC3B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAE3B,gCAAgC;IAChC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE9B,6BAA6B;IAC7B,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAEnC,0BAA0B;IAC1B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAEhC,iCAAiC;IACjC,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAEvC,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/index.cjs
CHANGED
|
@@ -971,6 +971,33 @@ class HttpTransport {
|
|
|
971
971
|
tags: span.tags
|
|
972
972
|
};
|
|
973
973
|
}
|
|
974
|
+
getDefaultSchema() {
|
|
975
|
+
return {
|
|
976
|
+
external_identifier: "1.0.0",
|
|
977
|
+
span_schemas: {
|
|
978
|
+
agent: {
|
|
979
|
+
type: "object",
|
|
980
|
+
properties: { type: { type: "string", const: "agent" } }
|
|
981
|
+
},
|
|
982
|
+
llm: {
|
|
983
|
+
type: "object",
|
|
984
|
+
properties: { type: { type: "string", const: "llm" } }
|
|
985
|
+
},
|
|
986
|
+
tool: {
|
|
987
|
+
type: "object",
|
|
988
|
+
properties: { type: { type: "string", const: "tool" } }
|
|
989
|
+
},
|
|
990
|
+
chain: {
|
|
991
|
+
type: "object",
|
|
992
|
+
properties: { type: { type: "string", const: "chain" } }
|
|
993
|
+
},
|
|
994
|
+
retriever: {
|
|
995
|
+
type: "object",
|
|
996
|
+
properties: { type: { type: "string", const: "retriever" } }
|
|
997
|
+
}
|
|
998
|
+
}
|
|
999
|
+
};
|
|
1000
|
+
}
|
|
974
1001
|
async ensureAgentRegistered() {
|
|
975
1002
|
if (this.agentInstanceId) {
|
|
976
1003
|
return;
|
|
@@ -986,11 +1013,19 @@ class HttpTransport {
|
|
|
986
1013
|
description: this.config.agentDescription || ""
|
|
987
1014
|
};
|
|
988
1015
|
}
|
|
989
|
-
if (this.config.
|
|
990
|
-
|
|
991
|
-
}
|
|
992
|
-
|
|
993
|
-
payload.agent_schema_version = this.config.
|
|
1016
|
+
if (this.config.skipSchema) {
|
|
1017
|
+
logger.debug("Skipping schema in registration (skipSchema=true)");
|
|
1018
|
+
} else if (this.config.agentSchema) {
|
|
1019
|
+
logger.debug("Using custom agent schema");
|
|
1020
|
+
payload.agent_schema_version = this.config.agentSchema;
|
|
1021
|
+
} else if (this.config.agentSchemaVersion) {
|
|
1022
|
+
logger.debug(`Using schema version: ${this.config.agentSchemaVersion}`);
|
|
1023
|
+
payload.agent_schema_version = {
|
|
1024
|
+
external_identifier: this.config.agentSchemaVersion
|
|
1025
|
+
};
|
|
1026
|
+
} else {
|
|
1027
|
+
logger.debug("Using default hardcoded schema (v1.0.0)");
|
|
1028
|
+
payload.agent_schema_version = this.getDefaultSchema();
|
|
994
1029
|
}
|
|
995
1030
|
try {
|
|
996
1031
|
const response = await fetch(url, {
|
|
@@ -1226,4 +1261,4 @@ process.on("beforeExit", () => {
|
|
|
1226
1261
|
});
|
|
1227
1262
|
});
|
|
1228
1263
|
|
|
1229
|
-
//# debugId=
|
|
1264
|
+
//# debugId=8476D9778A66495464756E2164756E21
|
package/dist/index.cjs.map
CHANGED
|
@@ -14,10 +14,10 @@
|
|
|
14
14
|
"/**\n * Truncate a string to a maximum length, adding an ellipsis if truncated\n *\n * @param value - The string to truncate\n * @param maxLength - Maximum length\n * @returns Truncated string\n */\nexport function truncateString(value: string, maxLength: number): string {\n if (value.length <= maxLength) {\n return value;\n }\n return value.slice(0, maxLength) + '... [truncated]';\n}\n\n/**\n * Serialize a value for JSON output, handling non-serializable types and\n * truncating long strings\n *\n * @param value - Value to serialize\n * @param maxLength - Maximum length for strings (null for no truncation)\n * @returns Serialized value\n *\n * @example\n * ```typescript\n * const serialized = serializeValue({ message: 'Hello'.repeat(1000) }, 100);\n * // Result: { message: 'HelloHelloHello... [truncated]' }\n * ```\n */\nexport function serializeValue(value: unknown, maxLength: number | null = 10000): unknown {\n // Handle primitives that don't need serialization\n if (value === null || value === undefined) {\n return value;\n }\n\n if (typeof value === 'boolean' || typeof value === 'number') {\n return value;\n }\n\n // Handle strings with truncation\n if (typeof value === 'string') {\n return maxLength !== null ? truncateString(value, maxLength) : value;\n }\n\n // Handle arrays\n if (Array.isArray(value)) {\n return value.map((item) => serializeValue(item, maxLength));\n }\n\n // Handle objects\n if (typeof value === 'object') {\n const result: Record<string, unknown> = {};\n for (const [key, val] of Object.entries(value)) {\n result[key] = serializeValue(val, maxLength);\n }\n return result;\n }\n\n // Handle other types by converting to string\n try {\n return String(value);\n } catch {\n return `<${typeof value} object>`;\n }\n}\n",
|
|
15
15
|
"import type { Transport } from './base.js';\nimport type { Span } from '../tracing/span.js';\nimport { serializeValue } from '../utils/serialization.js';\n\n/**\n * STDIO transport emits spans as newline-delimited JSON to stdout.\n *\n * This is the default transport and requires no configuration.\n * It's useful for local development and for piping span data to other tools.\n *\n * Features:\n * - Newline-delimited JSON output\n * - Promise-based write locking for ordering\n * - Graceful error handling\n *\n * @example\n * ```typescript\n * const transport = new StdioTransport();\n * const tracer = new Tracer(transport);\n * ```\n */\nexport class StdioTransport implements Transport {\n private closed = false;\n private writeLock = Promise.resolve();\n\n /**\n * Emit a span to stdout as JSON\n *\n * @param span - The span to emit\n */\n emit(span: Span): void {\n if (this.closed) {\n return;\n }\n\n // Queue write to maintain ordering\n this.writeLock = this.writeLock.then(async () => {\n try {\n const serialized = serializeValue(span);\n const json = JSON.stringify(serialized);\n await Bun.write(Bun.stdout, json + '\\n');\n } catch (error) {\n console.error('Failed to emit span to stdout:', error);\n }\n });\n }\n\n /**\n * No-op for stdio transport (not applicable)\n */\n finishSpan(): void {\n // No-op for stdio transport\n }\n\n /**\n * No-op for stdio transport (not applicable)\n */\n startAgentInstance(): void {\n // No-op for stdio transport\n }\n\n /**\n * No-op for stdio transport (not applicable)\n */\n finishAgentInstance(): void {\n // No-op for stdio transport\n }\n\n /**\n * Close the transport and wait for pending writes to complete\n *\n * @returns Promise that resolves when all writes are complete\n */\n async close(): Promise<void> {\n this.closed = true;\n await this.writeLock;\n }\n}\n",
|
|
16
16
|
"/**\n * Log levels for the SDK\n */\nenum LogLevel {\n DEBUG = 0,\n INFO = 1,\n WARN = 2,\n ERROR = 3,\n}\n\n/**\n * Logger class for the Prefactor SDK\n */\nclass Logger {\n private static level: LogLevel = LogLevel.INFO;\n\n constructor(private namespace: string) {}\n\n debug(message: string, ...args: unknown[]): void {\n if (Logger.level <= LogLevel.DEBUG) {\n console.debug(`[prefactor:${this.namespace}] ${message}`, ...args);\n }\n }\n\n info(message: string, ...args: unknown[]): void {\n if (Logger.level <= LogLevel.INFO) {\n console.info(`[prefactor:${this.namespace}] ${message}`, ...args);\n }\n }\n\n warn(message: string, ...args: unknown[]): void {\n if (Logger.level <= LogLevel.WARN) {\n console.warn(`[prefactor:${this.namespace}] ${message}`, ...args);\n }\n }\n\n error(message: string, ...args: unknown[]): void {\n if (Logger.level <= LogLevel.ERROR) {\n console.error(`[prefactor:${this.namespace}] ${message}`, ...args);\n }\n }\n\n /**\n * Set the global log level\n */\n static setLevel(level: 'debug' | 'info' | 'warn' | 'error'): void {\n const levelMap = {\n debug: LogLevel.DEBUG,\n info: LogLevel.INFO,\n warn: LogLevel.WARN,\n error: LogLevel.ERROR,\n };\n Logger.level = levelMap[level];\n }\n}\n\n/**\n * Get a logger instance for a specific namespace\n *\n * @param namespace - The namespace for this logger\n * @returns Logger instance\n */\nexport function getLogger(namespace: string): Logger {\n return new Logger(namespace);\n}\n\n/**\n * Configure logging based on environment variables\n */\nexport function configureLogging(): void {\n const level = process.env.PREFACTOR_LOG_LEVEL?.toLowerCase() as\n | 'debug'\n | 'info'\n | 'warn'\n | 'error'\n | undefined;\n\n if (level) {\n Logger.setLevel(level);\n }\n}\n",
|
|
17
|
-
"import type { Transport } from './base.js';\nimport type { HttpTransportConfig } from '../config.js';\nimport type { Span } from '../tracing/span.js';\nimport { getLogger } from '../utils/logging.js';\n\nconst logger = getLogger('http-transport');\n\n/**\n * Queue item types for background processing\n */\ninterface QueueItem {\n type: 'span' | 'finish_span' | 'start_agent' | 'finish_agent';\n data: unknown;\n}\n\n/**\n * HTTP transport sends spans to a remote API endpoint.\n *\n * Features:\n * - Queue-based async processing\n * - Exponential backoff retry logic\n * - Span ID mapping (SDK ID → backend ID)\n * - Agent instance lifecycle management\n * - Graceful shutdown with timeout\n *\n * @example\n * ```typescript\n * const transport = new HttpTransport({\n * apiUrl: 'https://api.prefactor.ai',\n * apiToken: process.env.PREFACTOR_API_TOKEN!,\n * });\n * ```\n */\nexport class HttpTransport implements Transport {\n private queue: QueueItem[] = [];\n private processing = false;\n private closed = false;\n private agentInstanceId: string | null = null;\n private spanIdMap = new Map<string, string>();\n\n constructor(private config: HttpTransportConfig) {\n this.startProcessing();\n }\n\n /**\n * Emit a span (adds to queue for async processing)\n *\n * @param span - The span to emit\n */\n emit(span: Span): void {\n if (this.closed) {\n return;\n }\n this.queue.push({ type: 'span', data: span });\n }\n\n /**\n * Finish a previously emitted span (for AGENT spans)\n *\n * @param spanId - ID of the span to finish\n * @param endTime - End time in milliseconds since Unix epoch\n */\n finishSpan(spanId: string, endTime: number): void {\n if (this.closed) {\n return;\n }\n const timestamp = new Date(endTime).toISOString();\n this.queue.push({ type: 'finish_span', data: { spanId, timestamp } });\n }\n\n /**\n * Signal the start of an agent instance execution\n */\n startAgentInstance(): void {\n if (this.closed) {\n return;\n }\n this.queue.push({ type: 'start_agent', data: null });\n }\n\n /**\n * Signal the completion of an agent instance execution\n */\n finishAgentInstance(): void {\n if (this.closed) {\n return;\n }\n this.queue.push({ type: 'finish_agent', data: null });\n }\n\n /**\n * Start background queue processing\n */\n private async startProcessing(): Promise<void> {\n this.processing = true;\n\n while (!this.closed || this.queue.length > 0) {\n if (this.queue.length === 0) {\n await new Promise((resolve) => setTimeout(resolve, 100));\n continue;\n }\n\n const item = this.queue.shift()!;\n\n try {\n // Ensure agent is registered before processing spans\n if (!this.agentInstanceId && item.type !== 'start_agent') {\n await this.ensureAgentRegistered();\n }\n\n switch (item.type) {\n case 'span':\n await this.sendSpan(item.data as Span);\n break;\n case 'finish_span':\n await this.finishSpanHttp(item.data as { spanId: string; timestamp: string });\n break;\n case 'start_agent':\n await this.startAgentInstanceHttp();\n break;\n case 'finish_agent':\n await this.finishAgentInstanceHttp();\n break;\n }\n } catch (error) {\n logger.error('Error processing queue item:', error);\n }\n }\n\n this.processing = false;\n }\n\n /**\n * Send a span to the API\n */\n private async sendSpan(span: Span, retry = 0): Promise<void> {\n const url = `${this.config.apiUrl}/api/v1/agent_spans`;\n const payload = this.transformSpanToApiFormat(span);\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${this.config.apiToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(payload),\n signal: AbortSignal.timeout(this.config.requestTimeout),\n });\n\n if (response.ok) {\n const data = await response.json() as { details?: { id?: string } };\n const backendSpanId = data?.details?.id;\n if (backendSpanId) {\n this.spanIdMap.set(span.spanId, backendSpanId);\n }\n return;\n }\n\n // Retry on server errors or rate limiting\n if ((response.status >= 500 || response.status === 429) && retry < this.config.maxRetries) {\n const delay = Math.min(\n this.config.initialRetryDelay * Math.pow(this.config.retryMultiplier, retry),\n this.config.maxRetryDelay\n );\n logger.debug(`Retrying span send after ${delay}ms (attempt ${retry + 1})`);\n await new Promise((resolve) => setTimeout(resolve, delay));\n return this.sendSpan(span, retry + 1);\n }\n\n logger.error(`Failed to send span: ${response.status} ${response.statusText}`);\n } catch (error) {\n logger.error('Error sending span:', error);\n\n // Retry on network errors\n if (retry < this.config.maxRetries) {\n const delay = Math.min(\n this.config.initialRetryDelay * Math.pow(this.config.retryMultiplier, retry),\n this.config.maxRetryDelay\n );\n await new Promise((resolve) => setTimeout(resolve, delay));\n return this.sendSpan(span, retry + 1);\n }\n }\n }\n\n /**\n * Transform span to backend API format (snake_case)\n */\n private transformSpanToApiFormat(span: Span): Record<string, unknown> {\n return {\n agent_instance_id: this.agentInstanceId,\n parent_span_id: span.parentSpanId ? (this.spanIdMap.get(span.parentSpanId) ?? null) : null,\n name: span.name,\n span_type: span.spanType,\n start_time: new Date(span.startTime).toISOString(),\n end_time: span.endTime ? new Date(span.endTime).toISOString() : null,\n status: span.status,\n inputs: span.inputs,\n outputs: span.outputs,\n token_usage: span.tokenUsage\n ? {\n prompt_tokens: span.tokenUsage.promptTokens,\n completion_tokens: span.tokenUsage.completionTokens,\n total_tokens: span.tokenUsage.totalTokens,\n }\n : null,\n error: span.error\n ? {\n error_type: span.error.errorType,\n message: span.error.message,\n stacktrace: span.error.stacktrace,\n }\n : null,\n metadata: span.metadata,\n tags: span.tags,\n };\n }\n\n /**\n * Ensure an agent instance is registered\n */\n private async ensureAgentRegistered(): Promise<void> {\n if (this.agentInstanceId) {\n return;\n }\n\n const url = `${this.config.apiUrl}/api/v1/agent_instance/register`;\n const payload: Record<string, unknown> = {};\n\n if (this.config.agentId) payload.agent_id = this.config.agentId;\n if (this.config.agentVersion) {\n payload.agent_version = {\n external_identifier: this.config.agentVersion,\n name: this.config.agentName || 'Agent',\n description: this.config.agentDescription || '',\n };\n }\n if (this.config.agentSchema && !this.config.skipSchema) {\n payload.agent_schema = this.config.agentSchema;\n }\n if (this.config.agentSchemaVersion) {\n payload.agent_schema_version = this.config.agentSchemaVersion;\n }\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${this.config.apiToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(payload),\n signal: AbortSignal.timeout(this.config.requestTimeout),\n });\n\n if (response.ok) {\n const data = await response.json() as { details?: { id?: string } };\n this.agentInstanceId = data?.details?.id ?? null;\n logger.debug(`Registered agent instance: ${this.agentInstanceId}`);\n } else {\n logger.error(`Failed to register agent: ${response.status} ${response.statusText}`);\n }\n } catch (error) {\n logger.error('Error registering agent:', error);\n }\n }\n\n /**\n * Start agent instance execution\n */\n private async startAgentInstanceHttp(): Promise<void> {\n await this.ensureAgentRegistered();\n\n if (!this.agentInstanceId) {\n logger.error('Cannot start agent instance: not registered');\n return;\n }\n\n const url = `${this.config.apiUrl}/api/v1/agent_instance/${this.agentInstanceId}/start`;\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${this.config.apiToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({}),\n signal: AbortSignal.timeout(this.config.requestTimeout),\n });\n\n if (!response.ok) {\n logger.error(`Failed to start agent instance: ${response.status} ${response.statusText}`);\n }\n } catch (error) {\n logger.error('Error starting agent instance:', error);\n }\n }\n\n /**\n * Finish agent instance execution\n */\n private async finishAgentInstanceHttp(): Promise<void> {\n if (!this.agentInstanceId) {\n logger.error('Cannot finish agent instance: not registered');\n return;\n }\n\n const url = `${this.config.apiUrl}/api/v1/agent_instance/${this.agentInstanceId}/finish`;\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${this.config.apiToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({}),\n signal: AbortSignal.timeout(this.config.requestTimeout),\n });\n\n if (!response.ok) {\n logger.error(`Failed to finish agent instance: ${response.status} ${response.statusText}`);\n }\n } catch (error) {\n logger.error('Error finishing agent instance:', error);\n }\n }\n\n /**\n * Finish a span via HTTP\n */\n private async finishSpanHttp(data: { spanId: string; timestamp: string }): Promise<void> {\n const backendSpanId = this.spanIdMap.get(data.spanId);\n if (!backendSpanId) {\n logger.warn(`Cannot finish span ${data.spanId}: backend ID not found`);\n return;\n }\n\n const url = `${this.config.apiUrl}/api/v1/agent_spans/${backendSpanId}/finish`;\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${this.config.apiToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({ end_time: data.timestamp }),\n signal: AbortSignal.timeout(this.config.requestTimeout),\n });\n\n if (!response.ok) {\n logger.error(`Failed to finish span: ${response.status} ${response.statusText}`);\n }\n } catch (error) {\n logger.error('Error finishing span:', error);\n }\n }\n\n /**\n * Close the transport and wait for queue to drain\n *\n * @returns Promise that resolves when transport is closed\n */\n async close(): Promise<void> {\n this.closed = true;\n\n // Wait for queue to drain (with timeout)\n const timeout = 10000;\n const start = Date.now();\n while (this.processing && Date.now() - start < timeout) {\n await new Promise((resolve) => setTimeout(resolve, 100));\n }\n\n if (this.processing) {\n logger.warn('Transport closed with pending queue items');\n }\n }\n}\n",
|
|
18
|
-
"import { z } from 'zod';\n\n/**\n * Configuration schema for HTTP transport\n */\nexport const HttpTransportConfigSchema = z.object({\n /** API endpoint URL */\n apiUrl: z.string().url(),\n\n /** Authentication token */\n apiToken: z.string().min(1),\n\n /** Optional agent identifier */\n agentId: z.string().optional(),\n\n /** Optional agent version */\n agentVersion: z.string().optional(),\n\n /** Optional agent name */\n agentName: z.string().optional(),\n\n /** Optional agent description */\n agentDescription: z.string().optional(),\n\n /** Optional agent schema for validation */\n agentSchema: z.record(z.unknown()).optional(),\n\n /** Optional agent schema version */\n agentSchemaVersion: z.string().optional(),\n\n /** Skip schema validation */\n skipSchema: z.boolean().default(false),\n\n /** Request timeout in milliseconds */\n requestTimeout: z.number().positive().default(30000),\n\n /** Connection timeout in milliseconds */\n connectTimeout: z.number().positive().default(10000),\n\n /** Maximum number of retry attempts */\n maxRetries: z.number().int().nonnegative().default(3),\n\n /** Initial delay between retries in milliseconds */\n initialRetryDelay: z.number().positive().default(1000),\n\n /** Maximum delay between retries in milliseconds */\n maxRetryDelay: z.number().positive().default(60000),\n\n /** Multiplier for exponential backoff */\n retryMultiplier: z.number().positive().default(2.0),\n});\n\nexport type HttpTransportConfig = z.infer<typeof HttpTransportConfigSchema>;\n\n/**\n * Partial HTTP config schema for user input (before defaults are applied)\n */\nexport const PartialHttpConfigSchema = z.object({\n apiUrl: z.string().url(),\n apiToken: z.string().min(1),\n agentId: z.string().optional(),\n agentVersion: z.string().optional(),\n agentName: z.string().optional(),\n agentDescription: z.string().optional(),\n agentSchema: z.record(z.unknown()).optional(),\n agentSchemaVersion: z.string().optional(),\n skipSchema: z.boolean().optional(),\n requestTimeout: z.number().positive().optional(),\n connectTimeout: z.number().positive().optional(),\n maxRetries: z.number().int().nonnegative().optional(),\n initialRetryDelay: z.number().positive().optional(),\n maxRetryDelay: z.number().positive().optional(),\n retryMultiplier: z.number().positive().optional(),\n});\n\nexport type PartialHttpConfig = z.infer<typeof PartialHttpConfigSchema>;\n\n/**\n * Main SDK configuration schema\n */\nexport const ConfigSchema = z.object({\n /** Transport type to use for span emission */\n transportType: z.enum(['stdio', 'http']).default('stdio'),\n\n /** Sampling rate (0.0 to 1.0) */\n sampleRate: z.number().min(0).max(1).default(1.0),\n\n /** Whether to capture span inputs */\n captureInputs: z.boolean().default(true),\n\n /** Whether to capture span outputs */\n captureOutputs: z.boolean().default(true),\n\n /** Maximum length for input strings */\n maxInputLength: z.number().int().positive().default(10000),\n\n /** Maximum length for output strings */\n maxOutputLength: z.number().int().positive().default(10000),\n\n /** HTTP transport configuration (required if transportType is 'http') */\n httpConfig: PartialHttpConfigSchema.optional(),\n});\n\nexport type Config = z.infer<typeof ConfigSchema>;\n\n/**\n * Creates a validated configuration object by merging provided options with\n * environment variables and defaults.\n *\n * @param options - Partial configuration options\n * @returns Validated configuration object\n * @throws {z.ZodError} If configuration is invalid\n *\n * @example\n * ```typescript\n * const config = createConfig({\n * transportType: 'http',\n * httpConfig: {\n * apiUrl: 'https://api.prefactor.ai',\n * apiToken: process.env.PREFACTOR_API_TOKEN!,\n * }\n * });\n * ```\n */\nexport function createConfig(options?: Partial<Config>): Config {\n const config = {\n transportType:\n options?.transportType ??\n (process.env.PREFACTOR_TRANSPORT as 'stdio' | 'http' | undefined) ??\n 'stdio',\n sampleRate: options?.sampleRate ?? parseFloat(process.env.PREFACTOR_SAMPLE_RATE ?? '1.0'),\n captureInputs: options?.captureInputs ?? process.env.PREFACTOR_CAPTURE_INPUTS !== 'false',\n captureOutputs: options?.captureOutputs ?? process.env.PREFACTOR_CAPTURE_OUTPUTS !== 'false',\n maxInputLength:\n options?.maxInputLength ?? parseInt(process.env.PREFACTOR_MAX_INPUT_LENGTH ?? '10000', 10),\n maxOutputLength:\n options?.maxOutputLength ?? parseInt(process.env.PREFACTOR_MAX_OUTPUT_LENGTH ?? '10000', 10),\n httpConfig: options?.httpConfig,\n };\n\n // Validate and return\n return ConfigSchema.parse(config);\n}\n"
|
|
17
|
+
"import type { Transport } from './base.js';\nimport type { HttpTransportConfig } from '../config.js';\nimport type { Span } from '../tracing/span.js';\nimport { getLogger } from '../utils/logging.js';\n\nconst logger = getLogger('http-transport');\n\n/**\n * Queue item types for background processing\n */\ninterface QueueItem {\n type: 'span' | 'finish_span' | 'start_agent' | 'finish_agent';\n data: unknown;\n}\n\n/**\n * HTTP transport sends spans to a remote API endpoint.\n *\n * Features:\n * - Queue-based async processing\n * - Exponential backoff retry logic\n * - Span ID mapping (SDK ID → backend ID)\n * - Agent instance lifecycle management\n * - Graceful shutdown with timeout\n *\n * @example\n * ```typescript\n * const transport = new HttpTransport({\n * apiUrl: 'https://api.prefactor.ai',\n * apiToken: process.env.PREFACTOR_API_TOKEN!,\n * });\n * ```\n */\nexport class HttpTransport implements Transport {\n private queue: QueueItem[] = [];\n private processing = false;\n private closed = false;\n private agentInstanceId: string | null = null;\n private spanIdMap = new Map<string, string>();\n\n constructor(private config: HttpTransportConfig) {\n this.startProcessing();\n }\n\n /**\n * Emit a span (adds to queue for async processing)\n *\n * @param span - The span to emit\n */\n emit(span: Span): void {\n if (this.closed) {\n return;\n }\n this.queue.push({ type: 'span', data: span });\n }\n\n /**\n * Finish a previously emitted span (for AGENT spans)\n *\n * @param spanId - ID of the span to finish\n * @param endTime - End time in milliseconds since Unix epoch\n */\n finishSpan(spanId: string, endTime: number): void {\n if (this.closed) {\n return;\n }\n const timestamp = new Date(endTime).toISOString();\n this.queue.push({ type: 'finish_span', data: { spanId, timestamp } });\n }\n\n /**\n * Signal the start of an agent instance execution\n */\n startAgentInstance(): void {\n if (this.closed) {\n return;\n }\n this.queue.push({ type: 'start_agent', data: null });\n }\n\n /**\n * Signal the completion of an agent instance execution\n */\n finishAgentInstance(): void {\n if (this.closed) {\n return;\n }\n this.queue.push({ type: 'finish_agent', data: null });\n }\n\n /**\n * Start background queue processing\n */\n private async startProcessing(): Promise<void> {\n this.processing = true;\n\n while (!this.closed || this.queue.length > 0) {\n if (this.queue.length === 0) {\n await new Promise((resolve) => setTimeout(resolve, 100));\n continue;\n }\n\n const item = this.queue.shift()!;\n\n try {\n // Ensure agent is registered before processing spans\n if (!this.agentInstanceId && item.type !== 'start_agent') {\n await this.ensureAgentRegistered();\n }\n\n switch (item.type) {\n case 'span':\n await this.sendSpan(item.data as Span);\n break;\n case 'finish_span':\n await this.finishSpanHttp(item.data as { spanId: string; timestamp: string });\n break;\n case 'start_agent':\n await this.startAgentInstanceHttp();\n break;\n case 'finish_agent':\n await this.finishAgentInstanceHttp();\n break;\n }\n } catch (error) {\n logger.error('Error processing queue item:', error);\n }\n }\n\n this.processing = false;\n }\n\n /**\n * Send a span to the API\n */\n private async sendSpan(span: Span, retry = 0): Promise<void> {\n const url = `${this.config.apiUrl}/api/v1/agent_spans`;\n const payload = this.transformSpanToApiFormat(span);\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${this.config.apiToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(payload),\n signal: AbortSignal.timeout(this.config.requestTimeout),\n });\n\n if (response.ok) {\n const data = await response.json() as { details?: { id?: string } };\n const backendSpanId = data?.details?.id;\n if (backendSpanId) {\n this.spanIdMap.set(span.spanId, backendSpanId);\n }\n return;\n }\n\n // Retry on server errors or rate limiting\n if ((response.status >= 500 || response.status === 429) && retry < this.config.maxRetries) {\n const delay = Math.min(\n this.config.initialRetryDelay * Math.pow(this.config.retryMultiplier, retry),\n this.config.maxRetryDelay\n );\n logger.debug(`Retrying span send after ${delay}ms (attempt ${retry + 1})`);\n await new Promise((resolve) => setTimeout(resolve, delay));\n return this.sendSpan(span, retry + 1);\n }\n\n logger.error(`Failed to send span: ${response.status} ${response.statusText}`);\n } catch (error) {\n logger.error('Error sending span:', error);\n\n // Retry on network errors\n if (retry < this.config.maxRetries) {\n const delay = Math.min(\n this.config.initialRetryDelay * Math.pow(this.config.retryMultiplier, retry),\n this.config.maxRetryDelay\n );\n await new Promise((resolve) => setTimeout(resolve, delay));\n return this.sendSpan(span, retry + 1);\n }\n }\n }\n\n /**\n * Transform span to backend API format (snake_case)\n */\n private transformSpanToApiFormat(span: Span): Record<string, unknown> {\n return {\n agent_instance_id: this.agentInstanceId,\n parent_span_id: span.parentSpanId ? (this.spanIdMap.get(span.parentSpanId) ?? null) : null,\n name: span.name,\n span_type: span.spanType,\n start_time: new Date(span.startTime).toISOString(),\n end_time: span.endTime ? new Date(span.endTime).toISOString() : null,\n status: span.status,\n inputs: span.inputs,\n outputs: span.outputs,\n token_usage: span.tokenUsage\n ? {\n prompt_tokens: span.tokenUsage.promptTokens,\n completion_tokens: span.tokenUsage.completionTokens,\n total_tokens: span.tokenUsage.totalTokens,\n }\n : null,\n error: span.error\n ? {\n error_type: span.error.errorType,\n message: span.error.message,\n stacktrace: span.error.stacktrace,\n }\n : null,\n metadata: span.metadata,\n tags: span.tags,\n };\n }\n\n /**\n * Get default schema (v1.0.0) with span schemas for all supported types\n */\n private getDefaultSchema(): Record<string, unknown> {\n return {\n external_identifier: '1.0.0',\n span_schemas: {\n agent: {\n type: 'object',\n properties: { type: { type: 'string', const: 'agent' } },\n },\n llm: {\n type: 'object',\n properties: { type: { type: 'string', const: 'llm' } },\n },\n tool: {\n type: 'object',\n properties: { type: { type: 'string', const: 'tool' } },\n },\n chain: {\n type: 'object',\n properties: { type: { type: 'string', const: 'chain' } },\n },\n retriever: {\n type: 'object',\n properties: { type: { type: 'string', const: 'retriever' } },\n },\n },\n };\n }\n\n /**\n * Ensure an agent instance is registered\n */\n private async ensureAgentRegistered(): Promise<void> {\n if (this.agentInstanceId) {\n return;\n }\n\n const url = `${this.config.apiUrl}/api/v1/agent_instance/register`;\n const payload: Record<string, unknown> = {};\n\n if (this.config.agentId) payload.agent_id = this.config.agentId;\n if (this.config.agentVersion) {\n payload.agent_version = {\n external_identifier: this.config.agentVersion,\n name: this.config.agentName || 'Agent',\n description: this.config.agentDescription || '',\n };\n }\n\n // Schema handling - four modes:\n // 1. skipSchema=true: No schema in payload (pre-registered on backend)\n // 2. agentSchema provided: Use full custom schema object\n // 3. agentSchemaVersion provided: Use version identifier only\n // 4. None of above: Use default v1.0.0 schema\n if (this.config.skipSchema) {\n logger.debug('Skipping schema in registration (skipSchema=true)');\n // Do not add agent_schema_version key\n } else if (this.config.agentSchema) {\n logger.debug('Using custom agent schema');\n payload.agent_schema_version = this.config.agentSchema;\n } else if (this.config.agentSchemaVersion) {\n logger.debug(`Using schema version: ${this.config.agentSchemaVersion}`);\n payload.agent_schema_version = {\n external_identifier: this.config.agentSchemaVersion,\n };\n } else {\n logger.debug('Using default hardcoded schema (v1.0.0)');\n payload.agent_schema_version = this.getDefaultSchema();\n }\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${this.config.apiToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(payload),\n signal: AbortSignal.timeout(this.config.requestTimeout),\n });\n\n if (response.ok) {\n const data = await response.json() as { details?: { id?: string } };\n this.agentInstanceId = data?.details?.id ?? null;\n logger.debug(`Registered agent instance: ${this.agentInstanceId}`);\n } else {\n logger.error(`Failed to register agent: ${response.status} ${response.statusText}`);\n }\n } catch (error) {\n logger.error('Error registering agent:', error);\n }\n }\n\n /**\n * Start agent instance execution\n */\n private async startAgentInstanceHttp(): Promise<void> {\n await this.ensureAgentRegistered();\n\n if (!this.agentInstanceId) {\n logger.error('Cannot start agent instance: not registered');\n return;\n }\n\n const url = `${this.config.apiUrl}/api/v1/agent_instance/${this.agentInstanceId}/start`;\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${this.config.apiToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({}),\n signal: AbortSignal.timeout(this.config.requestTimeout),\n });\n\n if (!response.ok) {\n logger.error(`Failed to start agent instance: ${response.status} ${response.statusText}`);\n }\n } catch (error) {\n logger.error('Error starting agent instance:', error);\n }\n }\n\n /**\n * Finish agent instance execution\n */\n private async finishAgentInstanceHttp(): Promise<void> {\n if (!this.agentInstanceId) {\n logger.error('Cannot finish agent instance: not registered');\n return;\n }\n\n const url = `${this.config.apiUrl}/api/v1/agent_instance/${this.agentInstanceId}/finish`;\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${this.config.apiToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({}),\n signal: AbortSignal.timeout(this.config.requestTimeout),\n });\n\n if (!response.ok) {\n logger.error(`Failed to finish agent instance: ${response.status} ${response.statusText}`);\n }\n } catch (error) {\n logger.error('Error finishing agent instance:', error);\n }\n }\n\n /**\n * Finish a span via HTTP\n */\n private async finishSpanHttp(data: { spanId: string; timestamp: string }): Promise<void> {\n const backendSpanId = this.spanIdMap.get(data.spanId);\n if (!backendSpanId) {\n logger.warn(`Cannot finish span ${data.spanId}: backend ID not found`);\n return;\n }\n\n const url = `${this.config.apiUrl}/api/v1/agent_spans/${backendSpanId}/finish`;\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${this.config.apiToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({ end_time: data.timestamp }),\n signal: AbortSignal.timeout(this.config.requestTimeout),\n });\n\n if (!response.ok) {\n logger.error(`Failed to finish span: ${response.status} ${response.statusText}`);\n }\n } catch (error) {\n logger.error('Error finishing span:', error);\n }\n }\n\n /**\n * Close the transport and wait for queue to drain\n *\n * @returns Promise that resolves when transport is closed\n */\n async close(): Promise<void> {\n this.closed = true;\n\n // Wait for queue to drain (with timeout)\n const timeout = 10000;\n const start = Date.now();\n while (this.processing && Date.now() - start < timeout) {\n await new Promise((resolve) => setTimeout(resolve, 100));\n }\n\n if (this.processing) {\n logger.warn('Transport closed with pending queue items');\n }\n }\n}\n",
|
|
18
|
+
"import { z } from 'zod';\n\n/**\n * Configuration schema for HTTP transport\n */\nexport const HttpTransportConfigSchema = z.object({\n /** API endpoint URL */\n apiUrl: z.string().url(),\n\n /** Authentication token */\n apiToken: z.string().min(1),\n\n /** Optional agent identifier */\n agentId: z.string().optional(),\n\n /** Optional agent version */\n agentVersion: z.string().optional(),\n\n /** Optional agent name */\n agentName: z.string().optional(),\n\n /** Optional agent description */\n agentDescription: z.string().optional(),\n\n /** Optional agent schema for validation (full schema object) */\n agentSchema: z.record(z.unknown()).optional(),\n\n /** Optional agent schema version identifier (string) */\n agentSchemaVersion: z.string().optional(),\n\n /** Skip schema validation */\n skipSchema: z.boolean().default(false),\n\n /** Request timeout in milliseconds */\n requestTimeout: z.number().positive().default(30000),\n\n /** Connection timeout in milliseconds */\n connectTimeout: z.number().positive().default(10000),\n\n /** Maximum number of retry attempts */\n maxRetries: z.number().int().nonnegative().default(3),\n\n /** Initial delay between retries in milliseconds */\n initialRetryDelay: z.number().positive().default(1000),\n\n /** Maximum delay between retries in milliseconds */\n maxRetryDelay: z.number().positive().default(60000),\n\n /** Multiplier for exponential backoff */\n retryMultiplier: z.number().positive().default(2.0),\n});\n\nexport type HttpTransportConfig = z.infer<typeof HttpTransportConfigSchema>;\n\n/**\n * Partial HTTP config schema for user input (before defaults are applied)\n */\nexport const PartialHttpConfigSchema = z.object({\n apiUrl: z.string().url(),\n apiToken: z.string().min(1),\n agentId: z.string().optional(),\n agentVersion: z.string().optional(),\n agentName: z.string().optional(),\n agentDescription: z.string().optional(),\n agentSchema: z.record(z.unknown()).optional(),\n agentSchemaVersion: z.string().optional(),\n skipSchema: z.boolean().optional(),\n requestTimeout: z.number().positive().optional(),\n connectTimeout: z.number().positive().optional(),\n maxRetries: z.number().int().nonnegative().optional(),\n initialRetryDelay: z.number().positive().optional(),\n maxRetryDelay: z.number().positive().optional(),\n retryMultiplier: z.number().positive().optional(),\n});\n\nexport type PartialHttpConfig = z.infer<typeof PartialHttpConfigSchema>;\n\n/**\n * Main SDK configuration schema\n */\nexport const ConfigSchema = z.object({\n /** Transport type to use for span emission */\n transportType: z.enum(['stdio', 'http']).default('stdio'),\n\n /** Sampling rate (0.0 to 1.0) */\n sampleRate: z.number().min(0).max(1).default(1.0),\n\n /** Whether to capture span inputs */\n captureInputs: z.boolean().default(true),\n\n /** Whether to capture span outputs */\n captureOutputs: z.boolean().default(true),\n\n /** Maximum length for input strings */\n maxInputLength: z.number().int().positive().default(10000),\n\n /** Maximum length for output strings */\n maxOutputLength: z.number().int().positive().default(10000),\n\n /** HTTP transport configuration (required if transportType is 'http') */\n httpConfig: PartialHttpConfigSchema.optional(),\n});\n\nexport type Config = z.infer<typeof ConfigSchema>;\n\n/**\n * Creates a validated configuration object by merging provided options with\n * environment variables and defaults.\n *\n * @param options - Partial configuration options\n * @returns Validated configuration object\n * @throws {z.ZodError} If configuration is invalid\n *\n * @example\n * ```typescript\n * const config = createConfig({\n * transportType: 'http',\n * httpConfig: {\n * apiUrl: 'https://api.prefactor.ai',\n * apiToken: process.env.PREFACTOR_API_TOKEN!,\n * }\n * });\n * ```\n */\nexport function createConfig(options?: Partial<Config>): Config {\n const config = {\n transportType:\n options?.transportType ??\n (process.env.PREFACTOR_TRANSPORT as 'stdio' | 'http' | undefined) ??\n 'stdio',\n sampleRate: options?.sampleRate ?? parseFloat(process.env.PREFACTOR_SAMPLE_RATE ?? '1.0'),\n captureInputs: options?.captureInputs ?? process.env.PREFACTOR_CAPTURE_INPUTS !== 'false',\n captureOutputs: options?.captureOutputs ?? process.env.PREFACTOR_CAPTURE_OUTPUTS !== 'false',\n maxInputLength:\n options?.maxInputLength ?? parseInt(process.env.PREFACTOR_MAX_INPUT_LENGTH ?? '10000', 10),\n maxOutputLength:\n options?.maxOutputLength ?? parseInt(process.env.PREFACTOR_MAX_OUTPUT_LENGTH ?? '10000', 10),\n httpConfig: options?.httpConfig,\n };\n\n // Validate and return\n return ConfigSchema.parse(config);\n}\n"
|
|
19
19
|
],
|
|
20
|
-
"mappings": "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",
|
|
21
|
-
"debugId": "
|
|
20
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EACA,OAAO,eAAe,UAAS,cAAc,EAAE,OAAO,KAAK,CAAC;AAAA,EAC5D,SAAQ,YAAiB;AAAA;AAAA,EACzB,MAAM,kBAAkB,MAAM;AAAA,IAC1B,WAAW,CAAC,MAAM,SAAS;AAAA,MACvB,MAAM,OAAO;AAAA,MACb,KAAK,OAAO;AAAA,MACZ,KAAK,OAAO;AAAA,MACZ,OAAO,eAAe,MAAM,UAAU,SAAS;AAAA;AAAA,WAE5C,IAAI,CAAC,MAAM,SAAS;AAAA,MACvB,MAAM,WAAW,MAAM;AAAA,QACnB,QAAQ;AAAA,eACC;AAAA,YACD,OAAO,wBAAwB,KAAK,UAAU,OAAO;AAAA,eACpD;AAAA,YACD,OAAO,iBAAiB,KAAK,UAAU,OAAO;AAAA,eAC7C;AAAA,YACD,OAAO,sBAAsB,KAAK,UAAU,OAAO;AAAA;AAAA,SAE5D;AAAA,MACH,OAAO,IAAI,UAAU,MAAM,OAAO;AAAA;AAAA,EAE1C;AAAA,EACA,SAAQ,YAAY;AAAA;;;;ECvBpB,OAAO,eAAe,UAAS,cAAc,EAAE,OAAO,KAAK,CAAC;AAAA,EAC5D,SAAQ,OAAO;AAAA,EACf,SAAQ,WAAW;AAAA,EACnB,SAAQ,wBAAwB;AAAA,EAChC,SAAQ,kBAAkB;AAAA,EAC1B,SAAQ,kBAAkB;AAAA,EAC1B,SAAQ,eAAe;AAAA,EACvB,SAAQ,iBAAiB;AAAA,EACzB,SAAQ,8BAA8B;AAAA,EACtC,SAAQ,SAAS;AAAA,EACjB,SAAQ,SAAS;AAAA,EACjB,SAAQ,SAAS;AAAA,EACjB,SAAQ,mBAAmB;AAAA,EAC3B,SAAQ,oBAAoB;AAAA,EAC5B,IAAM;AAAA,EACN,IAAM;AAAA,EAEN,IAAM,gBAAgB;AAAA,EACtB,IAAM,gBAAgB;AAAA,EAEtB,IAAM,eAAe;AAAA,EACrB,IAAM,aAAa;AAAA,IACf,KAAK;AAAA,IAAG,KAAK;AAAA,IAAG,KAAK;AAAA,IAAG,KAAK;AAAA,IAAG,KAAK;AAAA,IAAG,KAAK;AAAA,IAAG,KAAK;AAAA,IAAG,KAAK;AAAA,IAC7D,KAAK;AAAA,IAAG,KAAK;AAAA,IAAG,GAAK;AAAA,IAAI,GAAK;AAAA,IAAI,GAAK;AAAA,IAAI,GAAK;AAAA,IAAI,GAAK;AAAA,IAAI,GAAK;AAAA,IAClE,GAAK;AAAA,IAAI,GAAK;AAAA,IAAI,GAAK;AAAA,IAAI,GAAK;AAAA,IAAI,GAAK;AAAA,IAAI,GAAK;AAAA,IAAI,GAAK;AAAA,IAAI,GAAK;AAAA,IACpE,GAAK;AAAA,IAAI,GAAK;AAAA,IAAI,GAAK;AAAA,IAAI,GAAK;AAAA,IAAI,GAAK;AAAA,IAAI,GAAK;AAAA,IAAI,GAAK;AAAA,IAAI,GAAK;AAAA,EACxE;AAAA,EACA,SAAS,UAAU,CAAC,OAAO;AAAA,IACvB,OAAO,aAAa;AAAA;AAAA,EAExB,SAAS,UAAU,CAAC,MAAM;AAAA,IACtB,MAAM,QAAQ,WAAW,KAAK,YAAY;AAAA,IAC1C,IAAI,UAAU,WAAW;AAAA,MACrB,MAAM,IAAI,MAAM,sBAAsB,MAAM;AAAA,IAChD;AAAA,IACA,OAAO;AAAA;AAAA,EAGX,SAAS,gBAAgB,CAAC,WAAW;AAAA,IACjC,OAAO,OAAO,UAAU,SAAS,KAAK,aAAa,KAAK,aAAa;AAAA;AAAA,EAEzE,SAAS,gBAAgB,CAAC,WAAW;AAAA,IACjC,OAAO,OAAO,UAAU,SAAS,KAAK,aAAa,KAAK,aAAa;AAAA;AAAA,EAKzE,SAAS,IAAI,GAAG;AAAA,IACZ,OAAO;AAAA;AAAA,EAKX,SAAS,QAAQ,CAAC,WAAW;AAAA,IACzB,IAAI,CAAC,iBAAiB,SAAS,GAAG;AAAA,MAC9B,MAAM,IAAI,MAAM,sBAAsB,WAAW;AAAA,IACrD;AAAA,IACA,OAAO,aAAa,eAAe,SAAS,CAAC;AAAA;AAAA,EAKjD,SAAS,qBAAqB,CAAC,WAAW,WAAW;AAAA,IACjD,IAAI,CAAC,iBAAiB,SAAS,GAAG;AAAA,MAC9B,MAAM,IAAI,MAAM,sBAAsB,WAAW;AAAA,IACrD;AAAA,IACA,IAAI,CAAC,iBAAiB,SAAS,GAAG;AAAA,MAC9B,MAAM,IAAI,MAAM,sBAAsB,WAAW;AAAA,IACrD;AAAA,IACA,OAAO,aAAa,4BAA4B,WAAW,SAAS,CAAC;AAAA;AAAA,EAKzE,SAAS,eAAe,GAAG;AAAA,IACvB,OAAO,sBAAsB,WAAW,aAAa;AAAA;AAAA,EAKzD,SAAS,eAAe,CAAC,cAAc;AAAA,IACnC,OAAO,SAAS,iBAAiB,YAAY,CAAC;AAAA;AAAA,EAKlD,SAAS,YAAY,GAAG;AAAA,IACpB,OAAO,SAAS,kBAAkB,CAAC;AAAA;AAAA,EAKvC,SAAS,cAAc,CAAC,WAAW;AAAA,IAC/B,IAAI,CAAC,iBAAiB,SAAS,GAAG;AAAA,MAC9B,MAAM,IAAI,MAAM,sBAAsB,WAAW;AAAA,IACrD;AAAA,IACA,MAAM,YAAY,KAAK,IAAI;AAAA,IAC3B,OAAO,4BAA4B,WAAW,SAAS;AAAA;AAAA,EAU3D,SAAS,2BAA2B,CAAC,WAAW,WAAW;AAAA,IACvD,IAAI,CAAC,iBAAiB,SAAS,GAAG;AAAA,MAC9B,MAAM,IAAI,MAAM,sBAAsB,WAAW;AAAA,IACrD;AAAA,IACA,IAAI,CAAC,iBAAiB,SAAS,GAAG;AAAA,MAC9B,MAAM,IAAI,MAAM,sBAAsB,WAAW;AAAA,IACrD;AAAA,IACA,MAAM,SAAS,OAAO,YAAY,EAAE;AAAA,IAGpC,OAAO,KAAK,KAAK,MAAM,YAAY,aAAa,IAAI;AAAA,IACpD,OAAO,KAAK,KAAK,MAAM,YAAY,UAAW,IAAI;AAAA,IAClD,OAAO,KAAM,aAAa,KAAM;AAAA,IAChC,OAAO,KAAM,aAAa,KAAM;AAAA,IAChC,OAAO,KAAM,aAAa,IAAK;AAAA,IAC/B,OAAO,KAAK,YAAY;AAAA,IAExB,OAAO,cAAc,WAAW,CAAC;AAAA,KAEhC,GAAG,SAAS,aAAa,EAAE,EAAE,KAAK,QAAQ,EAAE;AAAA,IAC7C,OAAO;AAAA;AAAA,EAMX,SAAS,MAAM,CAAC,QAAQ;AAAA,IACpB,IAAI,OAAO,WAAW,UAAU;AAAA,MAC5B,OAAO;AAAA,IACX;AAAA,IACA,IAAI,OAAO,WAAW,IAAI;AAAA,MACtB,OAAO;AAAA,IACX;AAAA,IAEA,IAAI,OAAO,KAAK,OAAO,OAAO,KAAK,KAAK;AAAA,MACpC,OAAO;AAAA,IACX;AAAA,IAEA,MAAM,eAAe;AAAA,IACrB,OAAO,aAAa,KAAK,MAAM;AAAA;AAAA,EAMnC,SAAS,MAAM,CAAC,QAAQ;AAAA,IACpB,IAAI,CAAC,OAAO,SAAS,MAAM,KAAK,OAAO,WAAW,IAAI;AAAA,MAClD,MAAM,SAAS,UAAU,KAAK,kBAAkB,MAAM;AAAA,IAC1D;AAAA,IACA,IAAI;AAAA,MACA,MAAM,UAAU,aAAa,MAAM;AAAA,MACnC,IAAI,OAAO,OAAO,GAAG;AAAA,QACjB,OAAO;AAAA,MACX,EACK;AAAA,QACD,MAAM,SAAS,UAAU,KAAK,kBAAkB,MAAM;AAAA;AAAA,MAG9D,OAAO,OAAO;AAAA,MACV,IAAI,iBAAiB,SAAS,WAAW;AAAA,QACrC,MAAM;AAAA,MACV;AAAA,MACA,MAAM,SAAS,UAAU,KAAK,kBAAkB,MAAM;AAAA;AAAA;AAAA,EAO9D,SAAS,MAAM,CAAC,MAAM;AAAA,IAClB,IAAI,OAAO,SAAS,YAAY,KAAK,WAAW,IAAI;AAAA,MAChD,MAAM,SAAS,UAAU,KAAK,gBAAgB,IAAI;AAAA,IACtD;AAAA,IAEA,IAAI,KAAK,KAAK,OAAO,KAAK,KAAK,KAAK;AAAA,MAChC,MAAM,SAAS,UAAU,KAAK,gBAAgB,IAAI;AAAA,IACtD;AAAA,IACA,IAAI;AAAA,MACA,OAAO,aAAa,IAAI;AAAA,MAE5B,OAAO,OAAO;AAAA,MACV,IAAI,iBAAiB,SAAS,WAAW;AAAA,QACrC,MAAM;AAAA,MACV;AAAA,MACA,MAAM,SAAS,UAAU,KAAK,gBAAgB,IAAI;AAAA;AAAA;AAAA,EAO1D,SAAS,gBAAgB,CAAC,MAAM;AAAA,IAC5B,IAAI,CAAC,OAAO,IAAI,GAAG;AAAA,MACf,MAAM,SAAS,UAAU,KAAK,gBAAgB,IAAI;AAAA,IACtD;AAAA,IACA,IAAI;AAAA,MAEA,MAAM,eAAe,KAAK,UAAU,IAAI,EAAE;AAAA,MAC1C,OAAO,gBAAgB,YAAY;AAAA,MAEvC,OAAO,OAAO;AAAA,MACV,IAAI,iBAAiB,SAAS,WAAW;AAAA,QACrC,MAAM;AAAA,MACV;AAAA,MACA,MAAM,SAAS,UAAU,KAAK,gBAAgB,IAAI;AAAA;AAAA;AAAA,EAM1D,SAAS,iBAAiB,GAAG;AAAA,IACzB,MAAM,UAAU,GAAG,SAAS,aAAa,CAAC;AAAA,IAE1C,OAAO,KAAK,OAAO,KAAK;AAAA,IAExB,MAAM,YAAY,OAAO,aAAa,CAAC,IAAI;AAAA,IAC3C,OAAO;AAAA;AAAA,EAaX,SAAS,YAAY,CAAC,QAAQ;AAAA,IAE1B,IAAI,YAAY;AAAA,IAChB,SAAS,QAAQ,CAAC,OAAO;AAAA,MACrB,IAAI,QAAQ;AAAA,MACZ,SAAS,IAAI,EAAG,IAAI,OAAO,KAAK;AAAA,QAC5B,MAAM,YAAY,KAAK,MAAM,YAAY,CAAC;AAAA,QAC1C,MAAM,WAAW,IAAK,YAAY;AAAA,QAClC,MAAM,MAAO,OAAO,cAAc,WAAY;AAAA,QAC9C,QAAS,SAAS,IAAK;AAAA,QACvB;AAAA,MACJ;AAAA,MACA,OAAO;AAAA;AAAA,IAGX,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,MAAM,SAAS,CAAC;AAAA,IAEtB,SAAS,CAAC;AAAA,IAEV,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IAErB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,KAAK,SAAS,CAAC;AAAA,IACrB,MAAM,MAAM,SAAS,CAAC;AAAA,IACtB,MAAM,MAAM,SAAS,CAAC;AAAA,IACtB,MAAM,MAAM,SAAS,CAAC;AAAA,IACtB,MAAM,MAAM,SAAS,CAAC;AAAA,IACtB,MAAM,MAAM,SAAS,CAAC;AAAA,IACtB,MAAM,MAAM,SAAS,CAAC;AAAA,IACtB,MAAM,MAAM,SAAS,CAAC;AAAA,IACtB,OAAQ,WAAW,EAAE,IAAI,WAAW,EAAE,IAAI,WAAW,EAAE,IAAI,WAAW,EAAE,IAAI,WAAW,EAAE,IACrF,WAAW,EAAE,IAAI,WAAW,EAAE,IAAI,WAAW,EAAE,IAAI,WAAW,EAAE,IAAI,WAAW,GAAG,IAClF,WAAW,EAAE,IAAI,WAAW,EAAE,IAAI,WAAW,EAAE,IAAI,WAAW,EAAE,IAAI,WAAW,EAAE,IAAI,WAAW,EAAE,IAClG,WAAW,EAAE,IAAI,WAAW,EAAE,IAAI,WAAW,EAAE,IAAI,WAAW,EAAE,IAAI,WAAW,EAAE,IAAI,WAAW,EAAE,IAClG,WAAW,EAAE,IAAI,WAAW,EAAE,IAAI,WAAW,EAAE,IAAI,WAAW,GAAG,IAAI,WAAW,GAAG,IAAI,WAAW,GAAG,IACrG,WAAW,GAAG,IAAI,WAAW,GAAG,IAAI,WAAW,GAAG,IAAI,WAAW,GAAG;AAAA;AAAA,EAS5E,SAAS,YAAY,CAAC,MAAM;AAAA,IAExB,MAAM,KAAK,WAAW,KAAK,EAAE;AAAA,IAC7B,MAAM,KAAK,WAAW,KAAK,EAAE;AAAA,IAC7B,MAAM,KAAK,WAAW,KAAK,EAAE;AAAA,IAC7B,MAAM,KAAK,WAAW,KAAK,EAAE;AAAA,IAC7B,MAAM,KAAK,WAAW,KAAK,EAAE;AAAA,IAC7B,MAAM,KAAK,WAAW,KAAK,EAAE;AAAA,IAC7B,MAAM,KAAK,WAAW,KAAK,EAAE;AAAA,IAC7B,MAAM,KAAK,WAAW,KAAK,EAAE;AAAA,IAC7B,MAAM,KAAK,WAAW,KAAK,EAAE;AAAA,IAC7B,MAAM,MAAM,WAAW,KAAK,EAAE;AAAA,IAC9B,MAAM,KAAK,WAAW,KAAK,GAAG;AAAA,IAC9B,MAAM,KAAK,WAAW,KAAK,GAAG;AAAA,IAC9B,MAAM,KAAK,WAAW,KAAK,GAAG;AAAA,IAC9B,MAAM,KAAK,WAAW,KAAK,GAAG;AAAA,IAC9B,MAAM,KAAK,WAAW,KAAK,GAAG;AAAA,IAC9B,MAAM,KAAK,WAAW,KAAK,GAAG;AAAA,IAC9B,MAAM,KAAK,WAAW,KAAK,GAAG;AAAA,IAC9B,MAAM,KAAK,WAAW,KAAK,GAAG;AAAA,IAC9B,MAAM,KAAK,WAAW,KAAK,GAAG;AAAA,IAC9B,MAAM,KAAK,WAAW,KAAK,GAAG;AAAA,IAC9B,MAAM,KAAK,WAAW,KAAK,GAAG;AAAA,IAC9B,MAAM,KAAK,WAAW,KAAK,GAAG;AAAA,IAC9B,MAAM,KAAK,WAAW,KAAK,GAAG;AAAA,IAC9B,MAAM,KAAK,WAAW,KAAK,GAAG;AAAA,IAC9B,MAAM,KAAK,WAAW,KAAK,GAAG;AAAA,IAC9B,MAAM,MAAM,WAAW,KAAK,GAAG;AAAA,IAC/B,MAAM,MAAM,WAAW,KAAK,GAAG;AAAA,IAC/B,MAAM,MAAM,WAAW,KAAK,GAAG;AAAA,IAC/B,MAAM,MAAM,WAAW,KAAK,GAAG;AAAA,IAC/B,MAAM,MAAM,WAAW,KAAK,GAAG;AAAA,IAC/B,MAAM,MAAM,WAAW,KAAK,GAAG;AAAA,IAC/B,MAAM,MAAM,WAAW,KAAK,GAAG;AAAA,IAE/B,MAAM,SAAS,OAAO,MAAM,IAAI,CAAC;AAAA,IACjC,IAAI,YAAY;AAAA,IAChB,SAAS,SAAS,CAAC,OAAO,OAAO;AAAA,MAC7B,SAAS,IAAI,QAAQ,EAAG,KAAK,GAAG,KAAK;AAAA,QACjC,MAAM,YAAY,KAAK,MAAM,YAAY,CAAC;AAAA,QAC1C,MAAM,WAAW,IAAK,YAAY;AAAA,QAClC,MAAM,MAAO,SAAS,IAAK;AAAA,QAC3B,OAAO,cAAe,OAAO;AAAA,QAC7B;AAAA,MACJ;AAAA;AAAA,IAGJ,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,KAAK,CAAC;AAAA,IAEhB,UAAU,GAAG,CAAC;AAAA,IAEd,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IAEf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,IAAI,CAAC;AAAA,IACf,UAAU,KAAK,CAAC;AAAA,IAChB,UAAU,KAAK,CAAC;AAAA,IAChB,UAAU,KAAK,CAAC;AAAA,IAChB,UAAU,KAAK,CAAC;AAAA,IAChB,UAAU,KAAK,CAAC;AAAA,IAChB,UAAU,KAAK,CAAC;AAAA,IAChB,UAAU,KAAK,CAAC;AAAA,IAChB,OAAO;AAAA;AAAA,EAMX,SAAS,eAAe,CAAC,cAAc;AAAA,IACnC,IAAI,OAAO,iBAAiB,YAAY,aAAa,WAAW,GAAG;AAAA,MAC/D,MAAM,SAAS,UAAU,KAAK,qBAAqB,YAAY;AAAA,IACnE;AAAA,IACA,IAAI;AAAA,MACA,MAAM,KAAK,WAAW,aAAa,EAAE;AAAA,MACrC,MAAM,KAAK,WAAW,aAAa,EAAE;AAAA,MACrC,MAAM,KAAK,WAAW,aAAa,EAAE;AAAA,MACrC,MAAM,KAAK,WAAW,aAAa,EAAE;AAAA,MACrC,MAAM,KAAK,WAAW,aAAa,EAAE;AAAA,MACrC,MAAM,KAAK,WAAW,aAAa,EAAE;AAAA,MAGrC,MAAM,SAAS,OAAO,YAAY,CAAC;AAAA,MACnC,OAAO,KAAM,KAAK,IAAM,MAAM,IAAM,MAAM;AAAA,MAC1C,OAAO,MAAO,KAAK,OAAS,IAAM,MAAM;AAAA,MACxC,OAAO,MAAO,KAAK,MAAS,IAAM,MAAM,IAAM,MAAM;AAAA,MACpD,OAAO,MAAO,KAAK,MAAS,IAAM,MAAM;AAAA,MAExC,MAAM,YAAY,OAAO,aAAa,CAAC,IAAI;AAAA,MAC3C,OAAO;AAAA,MAEX,OAAO,OAAO;AAAA,MACV,IAAI,iBAAiB,SAAS,WAAW;AAAA,QACrC,MAAM;AAAA,MACV;AAAA,MACA,MAAM,SAAS,UAAU,KAAK,qBAAqB,YAAY;AAAA;AAAA;AAAA;;;;EChavE,OAAO,eAAe,UAAS,cAAc,EAAE,OAAO,KAAK,CAAC;AAAA,EAC5D,SAAQ,YAAY,SAAQ,oBAAoB,SAAQ,mBAAmB,SAAQ,SAAS,SAAQ,SAAS,SAAQ,SAAS,SAAQ,8BAA8B,SAAQ,iBAAiB,SAAQ,eAAe,SAAQ,kBAAkB,SAAQ,kBAAkB,SAAQ,wBAAwB,SAAQ,WAAW,SAAQ,OAAY;AAAA,EAC/U,IAAI;AAAA,EACJ,OAAO,eAAe,UAAS,QAAQ,EAAE,YAAY,MAAM,KAAK,QAAS,GAAG;AAAA,IAAE,OAAO,OAAO;AAAA,IAAQ,CAAC;AAAA,EACrG,OAAO,eAAe,UAAS,YAAY,EAAE,YAAY,MAAM,KAAK,QAAS,GAAG;AAAA,IAAE,OAAO,OAAO;AAAA,IAAY,CAAC;AAAA,EAC7G,OAAO,eAAe,UAAS,yBAAyB,EAAE,YAAY,MAAM,KAAK,QAAS,GAAG;AAAA,IAAE,OAAO,OAAO;AAAA,IAAyB,CAAC;AAAA,EACvI,OAAO,eAAe,UAAS,mBAAmB,EAAE,YAAY,MAAM,KAAK,QAAS,GAAG;AAAA,IAAE,OAAO,OAAO;AAAA,IAAmB,CAAC;AAAA,EAC3H,OAAO,eAAe,UAAS,mBAAmB,EAAE,YAAY,MAAM,KAAK,QAAS,GAAG;AAAA,IAAE,OAAO,OAAO;AAAA,IAAmB,CAAC;AAAA,EAC3H,OAAO,eAAe,UAAS,gBAAgB,EAAE,YAAY,MAAM,KAAK,QAAS,GAAG;AAAA,IAAE,OAAO,OAAO;AAAA,IAAgB,CAAC;AAAA,EACrH,OAAO,eAAe,UAAS,kBAAkB,EAAE,YAAY,MAAM,KAAK,QAAS,GAAG;AAAA,IAAE,OAAO,OAAO;AAAA,IAAkB,CAAC;AAAA,EACzH,OAAO,eAAe,UAAS,+BAA+B,EAAE,YAAY,MAAM,KAAK,QAAS,GAAG;AAAA,IAAE,OAAO,OAAO;AAAA,IAA+B,CAAC;AAAA,EACnJ,OAAO,eAAe,UAAS,UAAU,EAAE,YAAY,MAAM,KAAK,QAAS,GAAG;AAAA,IAAE,OAAO,OAAO;AAAA,IAAU,CAAC;AAAA,EACzG,OAAO,eAAe,UAAS,UAAU,EAAE,YAAY,MAAM,KAAK,QAAS,GAAG;AAAA,IAAE,OAAO,OAAO;AAAA,IAAU,CAAC;AAAA,EACzG,OAAO,eAAe,UAAS,UAAU,EAAE,YAAY,MAAM,KAAK,QAAS,GAAG;AAAA,IAAE,OAAO,OAAO;AAAA,IAAU,CAAC;AAAA,EACzG,OAAO,eAAe,UAAS,oBAAoB,EAAE,YAAY,MAAM,KAAK,QAAS,GAAG;AAAA,IAAE,OAAO,OAAO;AAAA,IAAoB,CAAC;AAAA,EAC7H,OAAO,eAAe,UAAS,qBAAqB,EAAE,YAAY,MAAM,KAAK,QAAS,GAAG;AAAA,IAAE,OAAO,OAAO;AAAA,IAAqB,CAAC;AAAA,EAC/H,IAAI;AAAA,EACJ,OAAO,eAAe,UAAS,aAAa,EAAE,YAAY,MAAM,KAAK,QAAS,GAAG;AAAA,IAAE,OAAO,SAAS;AAAA,IAAa,CAAC;AAAA;;;;;;;;;;;;;;AClBjH;;;ACAA;;;ACGO,IAAK;AAAA,CAAL,CAAK,cAAL;AAAA,EACL,qBAAQ;AAAA,EACR,mBAAM;AAAA,EACN,oBAAO;AAAA,EACP,qBAAQ;AAAA,EACR,yBAAY;AAAA,GALF;AAWL,IAAK;AAAA,CAAL,CAAK,gBAAL;AAAA,EACL,yBAAU;AAAA,EACV,yBAAU;AAAA,EACV,uBAAQ;AAAA,GAHE;;;AD0DL,MAAM,OAAO;AAAA,EASE;AAAA,EARZ;AAAA,EAQR,WAAW,CAAS,WAAsB,WAAuB;AAAA,IAA7C;AAAA,IAClB,KAAK,YAAY,aAAa,8BAAkB;AAAA;AAAA,EASlD,SAAS,CAAC,SAAiC;AAAA,IACzC,MAAM,SAAS,qBAAS,KAAK,SAAS;AAAA,IACtC,MAAM,UAAU,QAAQ,WAAW,qBAAS,KAAK,SAAS;AAAA,IAE1D,MAAM,OAAa;AAAA,MACjB;AAAA,MACA,cAAc,QAAQ,gBAAgB;AAAA,MACtC;AAAA,MACA,MAAM,QAAQ;AAAA,MACd,UAAU,QAAQ;AAAA,MAClB,WAAW,KAAK,IAAI;AAAA,MACpB,SAAS;AAAA,MACT;AAAA,MACA,QAAQ,QAAQ;AAAA,MAChB,SAAS;AAAA,MACT,YAAY;AAAA,MACZ,OAAO;AAAA,MACP,UAAU,QAAQ,YAAY,CAAC;AAAA,MAC/B,MAAM,QAAQ,QAAQ,CAAC;AAAA,IACzB;AAAA,IAIA,IAAI,QAAQ,aAAa,SAAS;AAAA,MAChC,IAAI;AAAA,QACF,KAAK,UAAU,KAAK,IAAI;AAAA,QACxB,OAAO,OAAO;AAAA,QACd,QAAQ,MAAM,8BAA8B,KAAK;AAAA;AAAA,IAErD;AAAA,IAEA,OAAO;AAAA;AAAA,EAST,OAAO,CAAC,MAAY,SAAgC;AAAA,IAClD,KAAK,UAAU,KAAK,IAAI;AAAA,IACxB,KAAK,UAAU,SAAS,WAAW;AAAA,IACnC,KAAK,aAAa,SAAS,cAAc;AAAA,IAEzC,IAAI,SAAS,OAAO;AAAA,MAClB,KAAK;AAAA,MACL,KAAK,QAAQ;AAAA,QACX,WAAW,QAAQ,MAAM,YAAY;AAAA,QACrC,SAAS,QAAQ,MAAM;AAAA,QACvB,YAAY,QAAQ,MAAM,SAAS;AAAA,MACrC;AAAA,IACF,EAAO;AAAA,MACL,KAAK;AAAA;AAAA,IAGP,IAAI;AAAA,MAGF,IAAI,KAAK,aAAa,SAAS;AAAA,QAC7B,KAAK,UAAU,WAAW,KAAK,QAAQ,KAAK,OAAO;AAAA,MACrD,EAAO;AAAA,QACL,KAAK,UAAU,KAAK,IAAI;AAAA;AAAA,MAE1B,OAAO,OAAO;AAAA,MACd,QAAQ,MAAM,+BAA+B,KAAK;AAAA;AAAA;AAAA,EAOtD,kBAAkB,GAAS;AAAA,IACzB,IAAI;AAAA,MACF,KAAK,UAAU,mBAAmB;AAAA,MAClC,OAAO,OAAO;AAAA,MACd,QAAQ,MAAM,mCAAmC,KAAK;AAAA;AAAA;AAAA,EAO1D,mBAAmB,GAAS;AAAA,IAC1B,IAAI;AAAA,MACF,KAAK,UAAU,oBAAoB;AAAA,MACnC,OAAO,OAAO;AAAA,MACd,QAAQ,MAAM,oCAAoC,KAAK;AAAA;AAAA;AAAA,OASrD,MAAK,GAAkB;AAAA,IAC3B,IAAI;AAAA,MACF,MAAM,KAAK,UAAU,MAAM;AAAA,MAC3B,OAAO,OAAO;AAAA,MACd,QAAQ,MAAM,8BAA8B,KAAK;AAAA;AAAA;AAGvD;;;AElMkC,IAAlC;AAMA,IAAM,cAAc,IAAI;AAAA;AAyBjB,MAAM,YAAY;AAAA,SAMhB,UAAU,GAAqB;AAAA,IACpC,OAAO,YAAY,SAAS;AAAA;AAAA,SAUvB,GAAM,CAAC,MAAY,IAAgB;AAAA,IACxC,OAAO,YAAY,IAAI,MAAM,EAAE;AAAA;AAAA,cAUpB,SAAW,CAAC,MAAY,IAAkC;AAAA,IACrE,OAAO,YAAY,IAAI,MAAM,EAAE;AAAA;AAAA,SAM1B,KAAK,GAAS;AAAA,IACnB,YAAY,QAAQ;AAAA;AAExB;;;ACjDO,SAAS,iBAAiB,CAAC,UAAkC;AAAA,EAClE,IAAI;AAAA,IAEF,MAAM,aAAa,UAAU,eAAe,UAAU;AAAA,IACtD,IAAI,YAAY;AAAA,MACd,OAAO;AAAA,QACL,cAAc,WAAW,iBAAiB;AAAA,QAC1C,kBAAkB,WAAW,qBAAqB;AAAA,QAClD,aAAa,WAAW,gBAAgB;AAAA,MAC1C;AAAA,IACF;AAAA,IAGA,MAAM,gBAAgB,UAAU;AAAA,IAChC,IAAI,eAAe;AAAA,MACjB,OAAO;AAAA,QACL,cAAc,cAAc,gBAAgB;AAAA,QAC5C,kBAAkB,cAAc,iBAAiB;AAAA,QACjD,aAAa,cAAc,gBAAgB;AAAA,MAC7C;AAAA,IACF;AAAA,IAGA,MAAM,mBAAmB,UAAU;AAAA,IACnC,IAAI,kBAAkB,aAAa;AAAA,MACjC,OAAO;AAAA,QACL,cAAc,iBAAiB,YAAY,iBAAiB;AAAA,QAC5D,kBAAkB,iBAAiB,YAAY,qBAAqB;AAAA,QACpE,aAAa,iBAAiB,YAAY,gBAAgB;AAAA,MAC5D;AAAA,IACF;AAAA,IAEA,OAAO;AAAA,IACP,MAAM;AAAA,IACN,OAAO;AAAA;AAAA;;;ACvBJ,MAAM,oBAAoB;AAAA,EAGX;AAAA,EAFZ,WAAwB;AAAA,EAEhC,WAAW,CAAS,QAAgB;AAAA,IAAhB;AAAA;AAAA,OAQd,YAAW,CAAC,OAA2B;AAAA,IAC3C,MAAM,aAAa,YAAY,WAAW;AAAA,IAC1C,MAAM,WAAW,OAAO,YAAY,CAAC;AAAA,IAErC,KAAK,OAAO,mBAAmB;AAAA,IAE/B,MAAM,OAAO,KAAK,OAAO,UAAU;AAAA,MACjC,MAAM;AAAA,MACN;AAAA,MACA,QAAQ,EAAE,UAAU,SAAS,MAAM,EAAE,EAAE,IAAI,CAAC,MAAe,OAAO,CAAC,CAAC,EAAE;AAAA,MACtE,cAAc,YAAY;AAAA,MAC1B,SAAS,YAAY;AAAA,IACvB,CAAC;AAAA,IAED,KAAK,WAAW;AAAA;AAAA,OASZ,WAAU,CAAC,OAA2B;AAAA,IAC1C,IAAI,CAAC,KAAK,UAAU;AAAA,MAClB;AAAA,IACF;AAAA,IAEA,MAAM,WAAW,OAAO,YAAY,CAAC;AAAA,IACrC,KAAK,OAAO,QAAQ,KAAK,UAAU;AAAA,MACjC,SAAS,EAAE,UAAU,SAAS,MAAM,EAAE,EAAE,IAAI,CAAC,MAAe,OAAO,CAAC,CAAC,EAAE;AAAA,IACzE,CAAC;AAAA,IAED,KAAK,OAAO,oBAAoB;AAAA,IAChC,YAAY,MAAM;AAAA,IAClB,KAAK,WAAW;AAAA;AAAA,OAWZ,cAAgB,CAAC,SAAc,SAA+C;AAAA,IAClF,MAAM,aAAa,YAAY,WAAW;AAAA,IAE1C,MAAM,OAAO,KAAK,OAAO,UAAU;AAAA,MACjC,MAAM,KAAK,iBAAiB,OAAO;AAAA,MACnC;AAAA,MACA,QAAQ,KAAK,mBAAmB,OAAO;AAAA,MACvC,cAAc,YAAY;AAAA,MAC1B,SAAS,YAAY;AAAA,IACvB,CAAC;AAAA,IAED,IAAI;AAAA,MAEF,MAAM,WAAW,MAAM,YAAY,SAAS,MAAM,YAAY;AAAA,QAC5D,OAAO,QAAQ,OAAO;AAAA,OACvB;AAAA,MAED,MAAM,UAAU,KAAK,oBAAoB,QAAQ;AAAA,MACjD,MAAM,aAAa,kBAAkB,QAAQ;AAAA,MAE7C,KAAK,OAAO,QAAQ,MAAM,EAAE,SAAS,YAAY,cAAc,UAAU,CAAC;AAAA,MAC1E,OAAO;AAAA,MACP,OAAO,OAAO;AAAA,MACd,KAAK,OAAO,QAAQ,MAAM,EAAE,MAAsB,CAAC;AAAA,MACnD,MAAM;AAAA;AAAA;AAAA,OAYJ,aAAe,CAAC,SAAc,SAA+C;AAAA,IACjF,MAAM,aAAa,YAAY,WAAW;AAAA,IAE1C,MAAM,OAAO,KAAK,OAAO,UAAU;AAAA,MACjC,MAAM,KAAK,gBAAgB,OAAO;AAAA,MAClC;AAAA,MACA,QAAQ,KAAK,kBAAkB,OAAO;AAAA,MACtC,cAAc,YAAY;AAAA,MAC1B,SAAS,YAAY;AAAA,IACvB,CAAC;AAAA,IAED,IAAI;AAAA,MAEF,MAAM,WAAW,MAAM,YAAY,SAAS,MAAM,YAAY;AAAA,QAC5D,OAAO,QAAQ,OAAO;AAAA,OACvB;AAAA,MAED,KAAK,OAAO,QAAQ,MAAM;AAAA,QACxB,SAAS,KAAK,mBAAmB,QAAQ;AAAA,MAC3C,CAAC;AAAA,MACD,OAAO;AAAA,MACP,OAAO,OAAO;AAAA,MACd,KAAK,OAAO,QAAQ,MAAM,EAAE,MAAsB,CAAC;AAAA,MACnD,MAAM;AAAA;AAAA;AAAA,EAQF,gBAAgB,CAAC,SAAsB;AAAA,IAC7C,OAAO,SAAS,SAAS,SAAS,aAAa;AAAA;AAAA,EAOzC,kBAAkB,CAAC,SAAuC;AAAA,IAChE,MAAM,WAAW,SAAS,YAAY,CAAC;AAAA,IACvC,OAAO,EAAE,UAAU,SAAS,MAAM,EAAE,EAAE,IAAI,CAAC,MAAe,OAAO,CAAC,CAAC,EAAE;AAAA;AAAA,EAO/D,mBAAmB,CAAC,UAAwC;AAAA,IAClE,MAAM,UAAU,UAAU,WAAW,UAAU,QAAQ;AAAA,IACvD,OAAO,EAAE,SAAS,OAAO,OAAO,EAAE;AAAA;AAAA,EAO5B,eAAe,CAAC,SAAsB;AAAA,IAC5C,OAAO,SAAS,QAAQ,SAAS,QAAQ;AAAA;AAAA,EAOnC,iBAAiB,CAAC,SAAuC;AAAA,IAC/D,OAAO,EAAE,OAAO,SAAS,SAAS,SAAS,QAAQ,CAAC,EAAE;AAAA;AAAA,EAOhD,kBAAkB,CAAC,UAAwC;AAAA,IACjE,OAAO,EAAE,QAAQ,UAAU,UAAU,SAAS;AAAA;AAElD;;;ACjMO,SAAS,cAAc,CAAC,OAAe,WAA2B;AAAA,EACvE,IAAI,MAAM,UAAU,WAAW;AAAA,IAC7B,OAAO;AAAA,EACT;AAAA,EACA,OAAO,MAAM,MAAM,GAAG,SAAS,IAAI;AAAA;AAiB9B,SAAS,cAAc,CAAC,OAAgB,YAA2B,KAAgB;AAAA,EAExF,IAAI,UAAU,QAAQ,UAAU,WAAW;AAAA,IACzC,OAAO;AAAA,EACT;AAAA,EAEA,IAAI,OAAO,UAAU,aAAa,OAAO,UAAU,UAAU;AAAA,IAC3D,OAAO;AAAA,EACT;AAAA,EAGA,IAAI,OAAO,UAAU,UAAU;AAAA,IAC7B,OAAO,cAAc,OAAO,eAAe,OAAO,SAAS,IAAI;AAAA,EACjE;AAAA,EAGA,IAAI,MAAM,QAAQ,KAAK,GAAG;AAAA,IACxB,OAAO,MAAM,IAAI,CAAC,SAAS,eAAe,MAAM,SAAS,CAAC;AAAA,EAC5D;AAAA,EAGA,IAAI,OAAO,UAAU,UAAU;AAAA,IAC7B,MAAM,SAAkC,CAAC;AAAA,IACzC,YAAY,KAAK,QAAQ,OAAO,QAAQ,KAAK,GAAG;AAAA,MAC9C,OAAO,OAAO,eAAe,KAAK,SAAS;AAAA,IAC7C;AAAA,IACA,OAAO;AAAA,EACT;AAAA,EAGA,IAAI;AAAA,IACF,OAAO,OAAO,KAAK;AAAA,IACnB,MAAM;AAAA,IACN,OAAO,IAAI,OAAO;AAAA;AAAA;;;ACxCf,MAAM,eAAoC;AAAA,EACvC,SAAS;AAAA,EACT,YAAY,QAAQ,QAAQ;AAAA,EAOpC,IAAI,CAAC,MAAkB;AAAA,IACrB,IAAI,KAAK,QAAQ;AAAA,MACf;AAAA,IACF;AAAA,IAGA,KAAK,YAAY,KAAK,UAAU,KAAK,YAAY;AAAA,MAC/C,IAAI;AAAA,QACF,MAAM,aAAa,eAAe,IAAI;AAAA,QACtC,MAAM,OAAO,KAAK,UAAU,UAAU;AAAA,QACtC,MAAM,IAAI,MAAM,IAAI,QAAQ,OAAO;AAAA,CAAI;AAAA,QACvC,OAAO,OAAO;AAAA,QACd,QAAQ,MAAM,kCAAkC,KAAK;AAAA;AAAA,KAExD;AAAA;AAAA,EAMH,UAAU,GAAS;AAAA,EAOnB,kBAAkB,GAAS;AAAA,EAO3B,mBAAmB,GAAS;AAAA,OAStB,MAAK,GAAkB;AAAA,IAC3B,KAAK,SAAS;AAAA,IACd,MAAM,KAAK;AAAA;AAEf;;;AChEA,MAAM,OAAO;AAAA,EAGS;AAAA,SAFL,QAAkB;AAAA,EAEjC,WAAW,CAAS,WAAmB;AAAA,IAAnB;AAAA;AAAA,EAEpB,KAAK,CAAC,YAAoB,MAAuB;AAAA,IAC/C,IAAI,OAAO,SAAS,eAAgB;AAAA,MAClC,QAAQ,MAAM,cAAc,KAAK,cAAc,WAAW,GAAG,IAAI;AAAA,IACnE;AAAA;AAAA,EAGF,IAAI,CAAC,YAAoB,MAAuB;AAAA,IAC9C,IAAI,OAAO,SAAS,cAAe;AAAA,MACjC,QAAQ,KAAK,cAAc,KAAK,cAAc,WAAW,GAAG,IAAI;AAAA,IAClE;AAAA;AAAA,EAGF,IAAI,CAAC,YAAoB,MAAuB;AAAA,IAC9C,IAAI,OAAO,SAAS,cAAe;AAAA,MACjC,QAAQ,KAAK,cAAc,KAAK,cAAc,WAAW,GAAG,IAAI;AAAA,IAClE;AAAA;AAAA,EAGF,KAAK,CAAC,YAAoB,MAAuB;AAAA,IAC/C,IAAI,OAAO,SAAS,eAAgB;AAAA,MAClC,QAAQ,MAAM,cAAc,KAAK,cAAc,WAAW,GAAG,IAAI;AAAA,IACnE;AAAA;AAAA,SAMK,QAAQ,CAAC,OAAkD;AAAA,IAChE,MAAM,WAAW;AAAA,MACf,OAAO;AAAA,MACP,MAAM;AAAA,MACN,MAAM;AAAA,MACN,OAAO;AAAA,IACT;AAAA,IACA,OAAO,QAAQ,SAAS;AAAA;AAE5B;AAQO,SAAS,SAAS,CAAC,WAA2B;AAAA,EACnD,OAAO,IAAI,OAAO,SAAS;AAAA;AAMtB,SAAS,gBAAgB,GAAS;AAAA,EACvC,MAAM,QAAQ,QAAQ,IAAI,qBAAqB,YAAY;AAAA,EAO3D,IAAI,OAAO;AAAA,IACT,OAAO,SAAS,KAAK;AAAA,EACvB;AAAA;;;AC1EF,IAAM,SAAS,UAAU,gBAAgB;AAAA;AA4BlC,MAAM,cAAmC;AAAA,EAO1B;AAAA,EANZ,QAAqB,CAAC;AAAA,EACtB,aAAa;AAAA,EACb,SAAS;AAAA,EACT,kBAAiC;AAAA,EACjC,YAAY,IAAI;AAAA,EAExB,WAAW,CAAS,QAA6B;AAAA,IAA7B;AAAA,IAClB,KAAK,gBAAgB;AAAA;AAAA,EAQvB,IAAI,CAAC,MAAkB;AAAA,IACrB,IAAI,KAAK,QAAQ;AAAA,MACf;AAAA,IACF;AAAA,IACA,KAAK,MAAM,KAAK,EAAE,MAAM,QAAQ,MAAM,KAAK,CAAC;AAAA;AAAA,EAS9C,UAAU,CAAC,QAAgB,SAAuB;AAAA,IAChD,IAAI,KAAK,QAAQ;AAAA,MACf;AAAA,IACF;AAAA,IACA,MAAM,YAAY,IAAI,KAAK,OAAO,EAAE,YAAY;AAAA,IAChD,KAAK,MAAM,KAAK,EAAE,MAAM,eAAe,MAAM,EAAE,QAAQ,UAAU,EAAE,CAAC;AAAA;AAAA,EAMtE,kBAAkB,GAAS;AAAA,IACzB,IAAI,KAAK,QAAQ;AAAA,MACf;AAAA,IACF;AAAA,IACA,KAAK,MAAM,KAAK,EAAE,MAAM,eAAe,MAAM,KAAK,CAAC;AAAA;AAAA,EAMrD,mBAAmB,GAAS;AAAA,IAC1B,IAAI,KAAK,QAAQ;AAAA,MACf;AAAA,IACF;AAAA,IACA,KAAK,MAAM,KAAK,EAAE,MAAM,gBAAgB,MAAM,KAAK,CAAC;AAAA;AAAA,OAMxC,gBAAe,GAAkB;AAAA,IAC7C,KAAK,aAAa;AAAA,IAElB,OAAO,CAAC,KAAK,UAAU,KAAK,MAAM,SAAS,GAAG;AAAA,MAC5C,IAAI,KAAK,MAAM,WAAW,GAAG;AAAA,QAC3B,MAAM,IAAI,QAAQ,CAAC,YAAY,WAAW,SAAS,GAAG,CAAC;AAAA,QACvD;AAAA,MACF;AAAA,MAEA,MAAM,OAAO,KAAK,MAAM,MAAM;AAAA,MAE9B,IAAI;AAAA,QAEF,IAAI,CAAC,KAAK,mBAAmB,KAAK,SAAS,eAAe;AAAA,UACxD,MAAM,KAAK,sBAAsB;AAAA,QACnC;AAAA,QAEA,QAAQ,KAAK;AAAA,eACN;AAAA,YACH,MAAM,KAAK,SAAS,KAAK,IAAY;AAAA,YACrC;AAAA,eACG;AAAA,YACH,MAAM,KAAK,eAAe,KAAK,IAA6C;AAAA,YAC5E;AAAA,eACG;AAAA,YACH,MAAM,KAAK,uBAAuB;AAAA,YAClC;AAAA,eACG;AAAA,YACH,MAAM,KAAK,wBAAwB;AAAA,YACnC;AAAA;AAAA,QAEJ,OAAO,OAAO;AAAA,QACd,OAAO,MAAM,gCAAgC,KAAK;AAAA;AAAA,IAEtD;AAAA,IAEA,KAAK,aAAa;AAAA;AAAA,OAMN,SAAQ,CAAC,MAAY,QAAQ,GAAkB;AAAA,IAC3D,MAAM,MAAM,GAAG,KAAK,OAAO;AAAA,IAC3B,MAAM,UAAU,KAAK,yBAAyB,IAAI;AAAA,IAElD,IAAI;AAAA,MACF,MAAM,WAAW,MAAM,MAAM,KAAK;AAAA,QAChC,QAAQ;AAAA,QACR,SAAS;AAAA,UACP,eAAe,UAAU,KAAK,OAAO;AAAA,UACrC,gBAAgB;AAAA,QAClB;AAAA,QACA,MAAM,KAAK,UAAU,OAAO;AAAA,QAC5B,QAAQ,YAAY,QAAQ,KAAK,OAAO,cAAc;AAAA,MACxD,CAAC;AAAA,MAED,IAAI,SAAS,IAAI;AAAA,QACf,MAAM,OAAO,MAAM,SAAS,KAAK;AAAA,QACjC,MAAM,gBAAgB,MAAM,SAAS;AAAA,QACrC,IAAI,eAAe;AAAA,UACjB,KAAK,UAAU,IAAI,KAAK,QAAQ,aAAa;AAAA,QAC/C;AAAA,QACA;AAAA,MACF;AAAA,MAGA,KAAK,SAAS,UAAU,OAAO,SAAS,WAAW,QAAQ,QAAQ,KAAK,OAAO,YAAY;AAAA,QACzF,MAAM,QAAQ,KAAK,IACjB,KAAK,OAAO,oBAAoB,KAAK,IAAI,KAAK,OAAO,iBAAiB,KAAK,GAC3E,KAAK,OAAO,aACd;AAAA,QACA,OAAO,MAAM,4BAA4B,oBAAoB,QAAQ,IAAI;AAAA,QACzE,MAAM,IAAI,QAAQ,CAAC,YAAY,WAAW,SAAS,KAAK,CAAC;AAAA,QACzD,OAAO,KAAK,SAAS,MAAM,QAAQ,CAAC;AAAA,MACtC;AAAA,MAEA,OAAO,MAAM,wBAAwB,SAAS,UAAU,SAAS,YAAY;AAAA,MAC7E,OAAO,OAAO;AAAA,MACd,OAAO,MAAM,uBAAuB,KAAK;AAAA,MAGzC,IAAI,QAAQ,KAAK,OAAO,YAAY;AAAA,QAClC,MAAM,QAAQ,KAAK,IACjB,KAAK,OAAO,oBAAoB,KAAK,IAAI,KAAK,OAAO,iBAAiB,KAAK,GAC3E,KAAK,OAAO,aACd;AAAA,QACA,MAAM,IAAI,QAAQ,CAAC,YAAY,WAAW,SAAS,KAAK,CAAC;AAAA,QACzD,OAAO,KAAK,SAAS,MAAM,QAAQ,CAAC;AAAA,MACtC;AAAA;AAAA;AAAA,EAOI,wBAAwB,CAAC,MAAqC;AAAA,IACpE,OAAO;AAAA,MACL,mBAAmB,KAAK;AAAA,MACxB,gBAAgB,KAAK,eAAgB,KAAK,UAAU,IAAI,KAAK,YAAY,KAAK,OAAQ;AAAA,MACtF,MAAM,KAAK;AAAA,MACX,WAAW,KAAK;AAAA,MAChB,YAAY,IAAI,KAAK,KAAK,SAAS,EAAE,YAAY;AAAA,MACjD,UAAU,KAAK,UAAU,IAAI,KAAK,KAAK,OAAO,EAAE,YAAY,IAAI;AAAA,MAChE,QAAQ,KAAK;AAAA,MACb,QAAQ,KAAK;AAAA,MACb,SAAS,KAAK;AAAA,MACd,aAAa,KAAK,aACd;AAAA,QACE,eAAe,KAAK,WAAW;AAAA,QAC/B,mBAAmB,KAAK,WAAW;AAAA,QACnC,cAAc,KAAK,WAAW;AAAA,MAChC,IACA;AAAA,MACJ,OAAO,KAAK,QACR;AAAA,QACE,YAAY,KAAK,MAAM;AAAA,QACvB,SAAS,KAAK,MAAM;AAAA,QACpB,YAAY,KAAK,MAAM;AAAA,MACzB,IACA;AAAA,MACJ,UAAU,KAAK;AAAA,MACf,MAAM,KAAK;AAAA,IACb;AAAA;AAAA,EAMM,gBAAgB,GAA4B;AAAA,IAClD,OAAO;AAAA,MACL,qBAAqB;AAAA,MACrB,cAAc;AAAA,QACZ,OAAO;AAAA,UACL,MAAM;AAAA,UACN,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,OAAO,QAAQ,EAAE;AAAA,QACzD;AAAA,QACA,KAAK;AAAA,UACH,MAAM;AAAA,UACN,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,OAAO,MAAM,EAAE;AAAA,QACvD;AAAA,QACA,MAAM;AAAA,UACJ,MAAM;AAAA,UACN,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,OAAO,OAAO,EAAE;AAAA,QACxD;AAAA,QACA,OAAO;AAAA,UACL,MAAM;AAAA,UACN,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,OAAO,QAAQ,EAAE;AAAA,QACzD;AAAA,QACA,WAAW;AAAA,UACT,MAAM;AAAA,UACN,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,OAAO,YAAY,EAAE;AAAA,QAC7D;AAAA,MACF;AAAA,IACF;AAAA;AAAA,OAMY,sBAAqB,GAAkB;AAAA,IACnD,IAAI,KAAK,iBAAiB;AAAA,MACxB;AAAA,IACF;AAAA,IAEA,MAAM,MAAM,GAAG,KAAK,OAAO;AAAA,IAC3B,MAAM,UAAmC,CAAC;AAAA,IAE1C,IAAI,KAAK,OAAO;AAAA,MAAS,QAAQ,WAAW,KAAK,OAAO;AAAA,IACxD,IAAI,KAAK,OAAO,cAAc;AAAA,MAC5B,QAAQ,gBAAgB;AAAA,QACtB,qBAAqB,KAAK,OAAO;AAAA,QACjC,MAAM,KAAK,OAAO,aAAa;AAAA,QAC/B,aAAa,KAAK,OAAO,oBAAoB;AAAA,MAC/C;AAAA,IACF;AAAA,IAOA,IAAI,KAAK,OAAO,YAAY;AAAA,MAC1B,OAAO,MAAM,mDAAmD;AAAA,IAElE,EAAO,SAAI,KAAK,OAAO,aAAa;AAAA,MAClC,OAAO,MAAM,2BAA2B;AAAA,MACxC,QAAQ,uBAAuB,KAAK,OAAO;AAAA,IAC7C,EAAO,SAAI,KAAK,OAAO,oBAAoB;AAAA,MACzC,OAAO,MAAM,yBAAyB,KAAK,OAAO,oBAAoB;AAAA,MACtE,QAAQ,uBAAuB;AAAA,QAC7B,qBAAqB,KAAK,OAAO;AAAA,MACnC;AAAA,IACF,EAAO;AAAA,MACL,OAAO,MAAM,yCAAyC;AAAA,MACtD,QAAQ,uBAAuB,KAAK,iBAAiB;AAAA;AAAA,IAGvD,IAAI;AAAA,MACF,MAAM,WAAW,MAAM,MAAM,KAAK;AAAA,QAChC,QAAQ;AAAA,QACR,SAAS;AAAA,UACP,eAAe,UAAU,KAAK,OAAO;AAAA,UACrC,gBAAgB;AAAA,QAClB;AAAA,QACA,MAAM,KAAK,UAAU,OAAO;AAAA,QAC5B,QAAQ,YAAY,QAAQ,KAAK,OAAO,cAAc;AAAA,MACxD,CAAC;AAAA,MAED,IAAI,SAAS,IAAI;AAAA,QACf,MAAM,OAAO,MAAM,SAAS,KAAK;AAAA,QACjC,KAAK,kBAAkB,MAAM,SAAS,MAAM;AAAA,QAC5C,OAAO,MAAM,8BAA8B,KAAK,iBAAiB;AAAA,MACnE,EAAO;AAAA,QACL,OAAO,MAAM,6BAA6B,SAAS,UAAU,SAAS,YAAY;AAAA;AAAA,MAEpF,OAAO,OAAO;AAAA,MACd,OAAO,MAAM,4BAA4B,KAAK;AAAA;AAAA;AAAA,OAOpC,uBAAsB,GAAkB;AAAA,IACpD,MAAM,KAAK,sBAAsB;AAAA,IAEjC,IAAI,CAAC,KAAK,iBAAiB;AAAA,MACzB,OAAO,MAAM,6CAA6C;AAAA,MAC1D;AAAA,IACF;AAAA,IAEA,MAAM,MAAM,GAAG,KAAK,OAAO,gCAAgC,KAAK;AAAA,IAEhE,IAAI;AAAA,MACF,MAAM,WAAW,MAAM,MAAM,KAAK;AAAA,QAChC,QAAQ;AAAA,QACR,SAAS;AAAA,UACP,eAAe,UAAU,KAAK,OAAO;AAAA,UACrC,gBAAgB;AAAA,QAClB;AAAA,QACA,MAAM,KAAK,UAAU,CAAC,CAAC;AAAA,QACvB,QAAQ,YAAY,QAAQ,KAAK,OAAO,cAAc;AAAA,MACxD,CAAC;AAAA,MAED,IAAI,CAAC,SAAS,IAAI;AAAA,QAChB,OAAO,MAAM,mCAAmC,SAAS,UAAU,SAAS,YAAY;AAAA,MAC1F;AAAA,MACA,OAAO,OAAO;AAAA,MACd,OAAO,MAAM,kCAAkC,KAAK;AAAA;AAAA;AAAA,OAO1C,wBAAuB,GAAkB;AAAA,IACrD,IAAI,CAAC,KAAK,iBAAiB;AAAA,MACzB,OAAO,MAAM,8CAA8C;AAAA,MAC3D;AAAA,IACF;AAAA,IAEA,MAAM,MAAM,GAAG,KAAK,OAAO,gCAAgC,KAAK;AAAA,IAEhE,IAAI;AAAA,MACF,MAAM,WAAW,MAAM,MAAM,KAAK;AAAA,QAChC,QAAQ;AAAA,QACR,SAAS;AAAA,UACP,eAAe,UAAU,KAAK,OAAO;AAAA,UACrC,gBAAgB;AAAA,QAClB;AAAA,QACA,MAAM,KAAK,UAAU,CAAC,CAAC;AAAA,QACvB,QAAQ,YAAY,QAAQ,KAAK,OAAO,cAAc;AAAA,MACxD,CAAC;AAAA,MAED,IAAI,CAAC,SAAS,IAAI;AAAA,QAChB,OAAO,MAAM,oCAAoC,SAAS,UAAU,SAAS,YAAY;AAAA,MAC3F;AAAA,MACA,OAAO,OAAO;AAAA,MACd,OAAO,MAAM,mCAAmC,KAAK;AAAA;AAAA;AAAA,OAO3C,eAAc,CAAC,MAA4D;AAAA,IACvF,MAAM,gBAAgB,KAAK,UAAU,IAAI,KAAK,MAAM;AAAA,IACpD,IAAI,CAAC,eAAe;AAAA,MAClB,OAAO,KAAK,sBAAsB,KAAK,8BAA8B;AAAA,MACrE;AAAA,IACF;AAAA,IAEA,MAAM,MAAM,GAAG,KAAK,OAAO,6BAA6B;AAAA,IAExD,IAAI;AAAA,MACF,MAAM,WAAW,MAAM,MAAM,KAAK;AAAA,QAChC,QAAQ;AAAA,QACR,SAAS;AAAA,UACP,eAAe,UAAU,KAAK,OAAO;AAAA,UACrC,gBAAgB;AAAA,QAClB;AAAA,QACA,MAAM,KAAK,UAAU,EAAE,UAAU,KAAK,UAAU,CAAC;AAAA,QACjD,QAAQ,YAAY,QAAQ,KAAK,OAAO,cAAc;AAAA,MACxD,CAAC;AAAA,MAED,IAAI,CAAC,SAAS,IAAI;AAAA,QAChB,OAAO,MAAM,0BAA0B,SAAS,UAAU,SAAS,YAAY;AAAA,MACjF;AAAA,MACA,OAAO,OAAO;AAAA,MACd,OAAO,MAAM,yBAAyB,KAAK;AAAA;AAAA;AAAA,OASzC,MAAK,GAAkB;AAAA,IAC3B,KAAK,SAAS;AAAA,IAGd,MAAM,UAAU;AAAA,IAChB,MAAM,QAAQ,KAAK,IAAI;AAAA,IACvB,OAAO,KAAK,cAAc,KAAK,IAAI,IAAI,QAAQ,SAAS;AAAA,MACtD,MAAM,IAAI,QAAQ,CAAC,YAAY,WAAW,SAAS,GAAG,CAAC;AAAA,IACzD;AAAA,IAEA,IAAI,KAAK,YAAY;AAAA,MACnB,OAAO,KAAK,2CAA2C;AAAA,IACzD;AAAA;AAEJ;;;AC1akB,IAAlB;AAKO,IAAM,4BAA4B,aAAE,OAAO;AAAA,EAEhD,QAAQ,aAAE,OAAO,EAAE,IAAI;AAAA,EAGvB,UAAU,aAAE,OAAO,EAAE,IAAI,CAAC;AAAA,EAG1B,SAAS,aAAE,OAAO,EAAE,SAAS;AAAA,EAG7B,cAAc,aAAE,OAAO,EAAE,SAAS;AAAA,EAGlC,WAAW,aAAE,OAAO,EAAE,SAAS;AAAA,EAG/B,kBAAkB,aAAE,OAAO,EAAE,SAAS;AAAA,EAGtC,aAAa,aAAE,OAAO,aAAE,QAAQ,CAAC,EAAE,SAAS;AAAA,EAG5C,oBAAoB,aAAE,OAAO,EAAE,SAAS;AAAA,EAGxC,YAAY,aAAE,QAAQ,EAAE,QAAQ,KAAK;AAAA,EAGrC,gBAAgB,aAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,KAAK;AAAA,EAGnD,gBAAgB,aAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,GAAK;AAAA,EAGnD,YAAY,aAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,CAAC;AAAA,EAGpD,mBAAmB,aAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,IAAI;AAAA,EAGrD,eAAe,aAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,KAAK;AAAA,EAGlD,iBAAiB,aAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAG;AACpD,CAAC;AAOM,IAAM,0BAA0B,aAAE,OAAO;AAAA,EAC9C,QAAQ,aAAE,OAAO,EAAE,IAAI;AAAA,EACvB,UAAU,aAAE,OAAO,EAAE,IAAI,CAAC;AAAA,EAC1B,SAAS,aAAE,OAAO,EAAE,SAAS;AAAA,EAC7B,cAAc,aAAE,OAAO,EAAE,SAAS;AAAA,EAClC,WAAW,aAAE,OAAO,EAAE,SAAS;AAAA,EAC/B,kBAAkB,aAAE,OAAO,EAAE,SAAS;AAAA,EACtC,aAAa,aAAE,OAAO,aAAE,QAAQ,CAAC,EAAE,SAAS;AAAA,EAC5C,oBAAoB,aAAE,OAAO,EAAE,SAAS;AAAA,EACxC,YAAY,aAAE,QAAQ,EAAE,SAAS;AAAA,EACjC,gBAAgB,aAAE,OAAO,EAAE,SAAS,EAAE,SAAS;AAAA,EAC/C,gBAAgB,aAAE,OAAO,EAAE,SAAS,EAAE,SAAS;AAAA,EAC/C,YAAY,aAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS;AAAA,EACpD,mBAAmB,aAAE,OAAO,EAAE,SAAS,EAAE,SAAS;AAAA,EAClD,eAAe,aAAE,OAAO,EAAE,SAAS,EAAE,SAAS;AAAA,EAC9C,iBAAiB,aAAE,OAAO,EAAE,SAAS,EAAE,SAAS;AAClD,CAAC;AAOM,IAAM,eAAe,aAAE,OAAO;AAAA,EAEnC,eAAe,aAAE,KAAK,CAAC,SAAS,MAAM,CAAC,EAAE,QAAQ,OAAO;AAAA,EAGxD,YAAY,aAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE,QAAQ,CAAG;AAAA,EAGhD,eAAe,aAAE,QAAQ,EAAE,QAAQ,IAAI;AAAA,EAGvC,gBAAgB,aAAE,QAAQ,EAAE,QAAQ,IAAI;AAAA,EAGxC,gBAAgB,aAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,GAAK;AAAA,EAGzD,iBAAiB,aAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,GAAK;AAAA,EAG1D,YAAY,wBAAwB,SAAS;AAC/C,CAAC;AAuBM,SAAS,YAAY,CAAC,SAAmC;AAAA,EAC9D,MAAM,SAAS;AAAA,IACb,eACE,SAAS,iBACR,QAAQ,IAAI,uBACb;AAAA,IACF,YAAY,SAAS,cAAc,WAAW,QAAQ,IAAI,yBAAyB,KAAK;AAAA,IACxF,eAAe,SAAS,iBAAiB,QAAQ,IAAI,6BAA6B;AAAA,IAClF,gBAAgB,SAAS,kBAAkB,QAAQ,IAAI,8BAA8B;AAAA,IACrF,gBACE,SAAS,kBAAkB,SAAS,QAAQ,IAAI,8BAA8B,SAAS,EAAE;AAAA,IAC3F,iBACE,SAAS,mBAAmB,SAAS,QAAQ,IAAI,+BAA+B,SAAS,EAAE;AAAA,IAC7F,YAAY,SAAS;AAAA,EACvB;AAAA,EAGA,OAAO,aAAa,MAAM,MAAM;AAAA;;;AVtIqB,IAAvD;AAEA,IAAM,UAAS,UAAU,MAAM;AAE/B,IAAI,eAA8B;AAClC,IAAI,mBAA2C;AAmCxC,SAAS,IAAI,CAAC,QAA2C;AAAA,EAC9D,iBAAiB;AAAA,EAEjB,MAAM,cAAc,aAAa,MAAM;AAAA,EACvC,QAAO,KAAK,8BAA8B,EAAE,WAAW,YAAY,cAAc,CAAC;AAAA,EAElF,IAAI,qBAAqB,MAAM;AAAA,IAC7B,OAAO;AAAA,EACT;AAAA,EAEA,IAAI;AAAA,EACJ,IAAI,YAAY,kBAAkB,SAAS;AAAA,IACzC,YAAY,IAAI;AAAA,EAClB,EAAO;AAAA,IACL,IAAI,CAAC,YAAY,YAAY;AAAA,MAC3B,MAAM,IAAI,MAAM,oEAAoE;AAAA,IACtF;AAAA,IAEA,MAAM,aAAa,0BAA0B,MAAM,YAAY,UAAU;AAAA,IACzE,YAAY,IAAI,cAAc,UAAU;AAAA;AAAA,EAI1C,IAAI;AAAA,EACJ,IAAI,YAAY,YAAY,SAAS;AAAA,IACnC,IAAI;AAAA,MACF,YAAY,8BAAiB,YAAY,WAAW,OAAO;AAAA,MAC3D,QAAO,MAAM,qCAAqC,EAAE,UAAU,CAAC;AAAA,MAC/D,OAAO,OAAO;AAAA,MACd,QAAO,KAAK,qEAAqE,EAAE,MAAM,CAAC;AAAA;AAAA,EAE9F;AAAA,EAEA,eAAe,IAAI,OAAO,WAAW,SAAS;AAAA,EAC9C,MAAM,sBAAsB,IAAI,oBAAoB,YAAY;AAAA,EAEhE,MAAM,aAAa,kCAAiB;AAAA,IAClC,MAAM;AAAA,IAEN,eAAe,OAAO,SAAc,YAAiB;AAAA,MACnD,OAAO,oBAAoB,cAAc,SAAS,OAAO;AAAA;AAAA,IAG3D,cAAc,OAAO,SAAc,YAAiB;AAAA,MAClD,OAAO,oBAAoB,aAAa,SAAS,OAAO;AAAA;AAAA,IAG1D,aAAa,OAAO,UAAe;AAAA,MACjC,MAAM,oBAAoB,YAAY,KAAK;AAAA;AAAA,IAG7C,YAAY,OAAO,UAAe;AAAA,MAChC,MAAM,oBAAoB,WAAW,KAAK;AAAA;AAAA,EAE9C,CAAC;AAAA,EAED,mBAAmB;AAAA,EACnB,OAAO;AAAA;AAsBF,SAAS,SAAS,GAAW;AAAA,EAClC,IAAI,CAAC,cAAc;AAAA,IACjB,KAAK;AAAA,EACP;AAAA,EACA,OAAO;AAAA;AAqBT,eAAsB,QAAQ,GAAkB;AAAA,EAC9C,IAAI,cAAc;AAAA,IAChB,QAAO,KAAK,6BAA6B;AAAA,IACzC,MAAM,aAAa,MAAM;AAAA,EAC3B;AAAA,EACA,eAAe;AAAA,EACf,mBAAmB;AAAA;AAIrB,QAAQ,GAAG,cAAc,MAAM;AAAA,EAC7B,SAAS,EAAE,MAAM,CAAC,UAAU;AAAA,IAC1B,QAAQ,MAAM,wCAAwC,KAAK;AAAA,GAC5D;AAAA,CACF;",
|
|
21
|
+
"debugId": "8476D9778A66495464756E2164756E21",
|
|
22
22
|
"names": []
|
|
23
23
|
}
|
package/dist/index.js
CHANGED
|
@@ -938,6 +938,33 @@ class HttpTransport {
|
|
|
938
938
|
tags: span.tags
|
|
939
939
|
};
|
|
940
940
|
}
|
|
941
|
+
getDefaultSchema() {
|
|
942
|
+
return {
|
|
943
|
+
external_identifier: "1.0.0",
|
|
944
|
+
span_schemas: {
|
|
945
|
+
agent: {
|
|
946
|
+
type: "object",
|
|
947
|
+
properties: { type: { type: "string", const: "agent" } }
|
|
948
|
+
},
|
|
949
|
+
llm: {
|
|
950
|
+
type: "object",
|
|
951
|
+
properties: { type: { type: "string", const: "llm" } }
|
|
952
|
+
},
|
|
953
|
+
tool: {
|
|
954
|
+
type: "object",
|
|
955
|
+
properties: { type: { type: "string", const: "tool" } }
|
|
956
|
+
},
|
|
957
|
+
chain: {
|
|
958
|
+
type: "object",
|
|
959
|
+
properties: { type: { type: "string", const: "chain" } }
|
|
960
|
+
},
|
|
961
|
+
retriever: {
|
|
962
|
+
type: "object",
|
|
963
|
+
properties: { type: { type: "string", const: "retriever" } }
|
|
964
|
+
}
|
|
965
|
+
}
|
|
966
|
+
};
|
|
967
|
+
}
|
|
941
968
|
async ensureAgentRegistered() {
|
|
942
969
|
if (this.agentInstanceId) {
|
|
943
970
|
return;
|
|
@@ -953,11 +980,19 @@ class HttpTransport {
|
|
|
953
980
|
description: this.config.agentDescription || ""
|
|
954
981
|
};
|
|
955
982
|
}
|
|
956
|
-
if (this.config.
|
|
957
|
-
|
|
958
|
-
}
|
|
959
|
-
|
|
960
|
-
payload.agent_schema_version = this.config.
|
|
983
|
+
if (this.config.skipSchema) {
|
|
984
|
+
logger.debug("Skipping schema in registration (skipSchema=true)");
|
|
985
|
+
} else if (this.config.agentSchema) {
|
|
986
|
+
logger.debug("Using custom agent schema");
|
|
987
|
+
payload.agent_schema_version = this.config.agentSchema;
|
|
988
|
+
} else if (this.config.agentSchemaVersion) {
|
|
989
|
+
logger.debug(`Using schema version: ${this.config.agentSchemaVersion}`);
|
|
990
|
+
payload.agent_schema_version = {
|
|
991
|
+
external_identifier: this.config.agentSchemaVersion
|
|
992
|
+
};
|
|
993
|
+
} else {
|
|
994
|
+
logger.debug("Using default hardcoded schema (v1.0.0)");
|
|
995
|
+
payload.agent_schema_version = this.getDefaultSchema();
|
|
961
996
|
}
|
|
962
997
|
try {
|
|
963
998
|
const response = await fetch(url, {
|
|
@@ -1202,4 +1237,4 @@ export {
|
|
|
1202
1237
|
PrefactorMiddleware
|
|
1203
1238
|
};
|
|
1204
1239
|
|
|
1205
|
-
//# debugId=
|
|
1240
|
+
//# debugId=515E8DA2210BA08964756E2164756E21
|
package/dist/index.js.map
CHANGED
|
@@ -14,10 +14,10 @@
|
|
|
14
14
|
"/**\n * Truncate a string to a maximum length, adding an ellipsis if truncated\n *\n * @param value - The string to truncate\n * @param maxLength - Maximum length\n * @returns Truncated string\n */\nexport function truncateString(value: string, maxLength: number): string {\n if (value.length <= maxLength) {\n return value;\n }\n return value.slice(0, maxLength) + '... [truncated]';\n}\n\n/**\n * Serialize a value for JSON output, handling non-serializable types and\n * truncating long strings\n *\n * @param value - Value to serialize\n * @param maxLength - Maximum length for strings (null for no truncation)\n * @returns Serialized value\n *\n * @example\n * ```typescript\n * const serialized = serializeValue({ message: 'Hello'.repeat(1000) }, 100);\n * // Result: { message: 'HelloHelloHello... [truncated]' }\n * ```\n */\nexport function serializeValue(value: unknown, maxLength: number | null = 10000): unknown {\n // Handle primitives that don't need serialization\n if (value === null || value === undefined) {\n return value;\n }\n\n if (typeof value === 'boolean' || typeof value === 'number') {\n return value;\n }\n\n // Handle strings with truncation\n if (typeof value === 'string') {\n return maxLength !== null ? truncateString(value, maxLength) : value;\n }\n\n // Handle arrays\n if (Array.isArray(value)) {\n return value.map((item) => serializeValue(item, maxLength));\n }\n\n // Handle objects\n if (typeof value === 'object') {\n const result: Record<string, unknown> = {};\n for (const [key, val] of Object.entries(value)) {\n result[key] = serializeValue(val, maxLength);\n }\n return result;\n }\n\n // Handle other types by converting to string\n try {\n return String(value);\n } catch {\n return `<${typeof value} object>`;\n }\n}\n",
|
|
15
15
|
"import type { Transport } from './base.js';\nimport type { Span } from '../tracing/span.js';\nimport { serializeValue } from '../utils/serialization.js';\n\n/**\n * STDIO transport emits spans as newline-delimited JSON to stdout.\n *\n * This is the default transport and requires no configuration.\n * It's useful for local development and for piping span data to other tools.\n *\n * Features:\n * - Newline-delimited JSON output\n * - Promise-based write locking for ordering\n * - Graceful error handling\n *\n * @example\n * ```typescript\n * const transport = new StdioTransport();\n * const tracer = new Tracer(transport);\n * ```\n */\nexport class StdioTransport implements Transport {\n private closed = false;\n private writeLock = Promise.resolve();\n\n /**\n * Emit a span to stdout as JSON\n *\n * @param span - The span to emit\n */\n emit(span: Span): void {\n if (this.closed) {\n return;\n }\n\n // Queue write to maintain ordering\n this.writeLock = this.writeLock.then(async () => {\n try {\n const serialized = serializeValue(span);\n const json = JSON.stringify(serialized);\n await Bun.write(Bun.stdout, json + '\\n');\n } catch (error) {\n console.error('Failed to emit span to stdout:', error);\n }\n });\n }\n\n /**\n * No-op for stdio transport (not applicable)\n */\n finishSpan(): void {\n // No-op for stdio transport\n }\n\n /**\n * No-op for stdio transport (not applicable)\n */\n startAgentInstance(): void {\n // No-op for stdio transport\n }\n\n /**\n * No-op for stdio transport (not applicable)\n */\n finishAgentInstance(): void {\n // No-op for stdio transport\n }\n\n /**\n * Close the transport and wait for pending writes to complete\n *\n * @returns Promise that resolves when all writes are complete\n */\n async close(): Promise<void> {\n this.closed = true;\n await this.writeLock;\n }\n}\n",
|
|
16
16
|
"/**\n * Log levels for the SDK\n */\nenum LogLevel {\n DEBUG = 0,\n INFO = 1,\n WARN = 2,\n ERROR = 3,\n}\n\n/**\n * Logger class for the Prefactor SDK\n */\nclass Logger {\n private static level: LogLevel = LogLevel.INFO;\n\n constructor(private namespace: string) {}\n\n debug(message: string, ...args: unknown[]): void {\n if (Logger.level <= LogLevel.DEBUG) {\n console.debug(`[prefactor:${this.namespace}] ${message}`, ...args);\n }\n }\n\n info(message: string, ...args: unknown[]): void {\n if (Logger.level <= LogLevel.INFO) {\n console.info(`[prefactor:${this.namespace}] ${message}`, ...args);\n }\n }\n\n warn(message: string, ...args: unknown[]): void {\n if (Logger.level <= LogLevel.WARN) {\n console.warn(`[prefactor:${this.namespace}] ${message}`, ...args);\n }\n }\n\n error(message: string, ...args: unknown[]): void {\n if (Logger.level <= LogLevel.ERROR) {\n console.error(`[prefactor:${this.namespace}] ${message}`, ...args);\n }\n }\n\n /**\n * Set the global log level\n */\n static setLevel(level: 'debug' | 'info' | 'warn' | 'error'): void {\n const levelMap = {\n debug: LogLevel.DEBUG,\n info: LogLevel.INFO,\n warn: LogLevel.WARN,\n error: LogLevel.ERROR,\n };\n Logger.level = levelMap[level];\n }\n}\n\n/**\n * Get a logger instance for a specific namespace\n *\n * @param namespace - The namespace for this logger\n * @returns Logger instance\n */\nexport function getLogger(namespace: string): Logger {\n return new Logger(namespace);\n}\n\n/**\n * Configure logging based on environment variables\n */\nexport function configureLogging(): void {\n const level = process.env.PREFACTOR_LOG_LEVEL?.toLowerCase() as\n | 'debug'\n | 'info'\n | 'warn'\n | 'error'\n | undefined;\n\n if (level) {\n Logger.setLevel(level);\n }\n}\n",
|
|
17
|
-
"import type { Transport } from './base.js';\nimport type { HttpTransportConfig } from '../config.js';\nimport type { Span } from '../tracing/span.js';\nimport { getLogger } from '../utils/logging.js';\n\nconst logger = getLogger('http-transport');\n\n/**\n * Queue item types for background processing\n */\ninterface QueueItem {\n type: 'span' | 'finish_span' | 'start_agent' | 'finish_agent';\n data: unknown;\n}\n\n/**\n * HTTP transport sends spans to a remote API endpoint.\n *\n * Features:\n * - Queue-based async processing\n * - Exponential backoff retry logic\n * - Span ID mapping (SDK ID → backend ID)\n * - Agent instance lifecycle management\n * - Graceful shutdown with timeout\n *\n * @example\n * ```typescript\n * const transport = new HttpTransport({\n * apiUrl: 'https://api.prefactor.ai',\n * apiToken: process.env.PREFACTOR_API_TOKEN!,\n * });\n * ```\n */\nexport class HttpTransport implements Transport {\n private queue: QueueItem[] = [];\n private processing = false;\n private closed = false;\n private agentInstanceId: string | null = null;\n private spanIdMap = new Map<string, string>();\n\n constructor(private config: HttpTransportConfig) {\n this.startProcessing();\n }\n\n /**\n * Emit a span (adds to queue for async processing)\n *\n * @param span - The span to emit\n */\n emit(span: Span): void {\n if (this.closed) {\n return;\n }\n this.queue.push({ type: 'span', data: span });\n }\n\n /**\n * Finish a previously emitted span (for AGENT spans)\n *\n * @param spanId - ID of the span to finish\n * @param endTime - End time in milliseconds since Unix epoch\n */\n finishSpan(spanId: string, endTime: number): void {\n if (this.closed) {\n return;\n }\n const timestamp = new Date(endTime).toISOString();\n this.queue.push({ type: 'finish_span', data: { spanId, timestamp } });\n }\n\n /**\n * Signal the start of an agent instance execution\n */\n startAgentInstance(): void {\n if (this.closed) {\n return;\n }\n this.queue.push({ type: 'start_agent', data: null });\n }\n\n /**\n * Signal the completion of an agent instance execution\n */\n finishAgentInstance(): void {\n if (this.closed) {\n return;\n }\n this.queue.push({ type: 'finish_agent', data: null });\n }\n\n /**\n * Start background queue processing\n */\n private async startProcessing(): Promise<void> {\n this.processing = true;\n\n while (!this.closed || this.queue.length > 0) {\n if (this.queue.length === 0) {\n await new Promise((resolve) => setTimeout(resolve, 100));\n continue;\n }\n\n const item = this.queue.shift()!;\n\n try {\n // Ensure agent is registered before processing spans\n if (!this.agentInstanceId && item.type !== 'start_agent') {\n await this.ensureAgentRegistered();\n }\n\n switch (item.type) {\n case 'span':\n await this.sendSpan(item.data as Span);\n break;\n case 'finish_span':\n await this.finishSpanHttp(item.data as { spanId: string; timestamp: string });\n break;\n case 'start_agent':\n await this.startAgentInstanceHttp();\n break;\n case 'finish_agent':\n await this.finishAgentInstanceHttp();\n break;\n }\n } catch (error) {\n logger.error('Error processing queue item:', error);\n }\n }\n\n this.processing = false;\n }\n\n /**\n * Send a span to the API\n */\n private async sendSpan(span: Span, retry = 0): Promise<void> {\n const url = `${this.config.apiUrl}/api/v1/agent_spans`;\n const payload = this.transformSpanToApiFormat(span);\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${this.config.apiToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(payload),\n signal: AbortSignal.timeout(this.config.requestTimeout),\n });\n\n if (response.ok) {\n const data = await response.json() as { details?: { id?: string } };\n const backendSpanId = data?.details?.id;\n if (backendSpanId) {\n this.spanIdMap.set(span.spanId, backendSpanId);\n }\n return;\n }\n\n // Retry on server errors or rate limiting\n if ((response.status >= 500 || response.status === 429) && retry < this.config.maxRetries) {\n const delay = Math.min(\n this.config.initialRetryDelay * Math.pow(this.config.retryMultiplier, retry),\n this.config.maxRetryDelay\n );\n logger.debug(`Retrying span send after ${delay}ms (attempt ${retry + 1})`);\n await new Promise((resolve) => setTimeout(resolve, delay));\n return this.sendSpan(span, retry + 1);\n }\n\n logger.error(`Failed to send span: ${response.status} ${response.statusText}`);\n } catch (error) {\n logger.error('Error sending span:', error);\n\n // Retry on network errors\n if (retry < this.config.maxRetries) {\n const delay = Math.min(\n this.config.initialRetryDelay * Math.pow(this.config.retryMultiplier, retry),\n this.config.maxRetryDelay\n );\n await new Promise((resolve) => setTimeout(resolve, delay));\n return this.sendSpan(span, retry + 1);\n }\n }\n }\n\n /**\n * Transform span to backend API format (snake_case)\n */\n private transformSpanToApiFormat(span: Span): Record<string, unknown> {\n return {\n agent_instance_id: this.agentInstanceId,\n parent_span_id: span.parentSpanId ? (this.spanIdMap.get(span.parentSpanId) ?? null) : null,\n name: span.name,\n span_type: span.spanType,\n start_time: new Date(span.startTime).toISOString(),\n end_time: span.endTime ? new Date(span.endTime).toISOString() : null,\n status: span.status,\n inputs: span.inputs,\n outputs: span.outputs,\n token_usage: span.tokenUsage\n ? {\n prompt_tokens: span.tokenUsage.promptTokens,\n completion_tokens: span.tokenUsage.completionTokens,\n total_tokens: span.tokenUsage.totalTokens,\n }\n : null,\n error: span.error\n ? {\n error_type: span.error.errorType,\n message: span.error.message,\n stacktrace: span.error.stacktrace,\n }\n : null,\n metadata: span.metadata,\n tags: span.tags,\n };\n }\n\n /**\n * Ensure an agent instance is registered\n */\n private async ensureAgentRegistered(): Promise<void> {\n if (this.agentInstanceId) {\n return;\n }\n\n const url = `${this.config.apiUrl}/api/v1/agent_instance/register`;\n const payload: Record<string, unknown> = {};\n\n if (this.config.agentId) payload.agent_id = this.config.agentId;\n if (this.config.agentVersion) {\n payload.agent_version = {\n external_identifier: this.config.agentVersion,\n name: this.config.agentName || 'Agent',\n description: this.config.agentDescription || '',\n };\n }\n if (this.config.agentSchema && !this.config.skipSchema) {\n payload.agent_schema = this.config.agentSchema;\n }\n if (this.config.agentSchemaVersion) {\n payload.agent_schema_version = this.config.agentSchemaVersion;\n }\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${this.config.apiToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(payload),\n signal: AbortSignal.timeout(this.config.requestTimeout),\n });\n\n if (response.ok) {\n const data = await response.json() as { details?: { id?: string } };\n this.agentInstanceId = data?.details?.id ?? null;\n logger.debug(`Registered agent instance: ${this.agentInstanceId}`);\n } else {\n logger.error(`Failed to register agent: ${response.status} ${response.statusText}`);\n }\n } catch (error) {\n logger.error('Error registering agent:', error);\n }\n }\n\n /**\n * Start agent instance execution\n */\n private async startAgentInstanceHttp(): Promise<void> {\n await this.ensureAgentRegistered();\n\n if (!this.agentInstanceId) {\n logger.error('Cannot start agent instance: not registered');\n return;\n }\n\n const url = `${this.config.apiUrl}/api/v1/agent_instance/${this.agentInstanceId}/start`;\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${this.config.apiToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({}),\n signal: AbortSignal.timeout(this.config.requestTimeout),\n });\n\n if (!response.ok) {\n logger.error(`Failed to start agent instance: ${response.status} ${response.statusText}`);\n }\n } catch (error) {\n logger.error('Error starting agent instance:', error);\n }\n }\n\n /**\n * Finish agent instance execution\n */\n private async finishAgentInstanceHttp(): Promise<void> {\n if (!this.agentInstanceId) {\n logger.error('Cannot finish agent instance: not registered');\n return;\n }\n\n const url = `${this.config.apiUrl}/api/v1/agent_instance/${this.agentInstanceId}/finish`;\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${this.config.apiToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({}),\n signal: AbortSignal.timeout(this.config.requestTimeout),\n });\n\n if (!response.ok) {\n logger.error(`Failed to finish agent instance: ${response.status} ${response.statusText}`);\n }\n } catch (error) {\n logger.error('Error finishing agent instance:', error);\n }\n }\n\n /**\n * Finish a span via HTTP\n */\n private async finishSpanHttp(data: { spanId: string; timestamp: string }): Promise<void> {\n const backendSpanId = this.spanIdMap.get(data.spanId);\n if (!backendSpanId) {\n logger.warn(`Cannot finish span ${data.spanId}: backend ID not found`);\n return;\n }\n\n const url = `${this.config.apiUrl}/api/v1/agent_spans/${backendSpanId}/finish`;\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${this.config.apiToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({ end_time: data.timestamp }),\n signal: AbortSignal.timeout(this.config.requestTimeout),\n });\n\n if (!response.ok) {\n logger.error(`Failed to finish span: ${response.status} ${response.statusText}`);\n }\n } catch (error) {\n logger.error('Error finishing span:', error);\n }\n }\n\n /**\n * Close the transport and wait for queue to drain\n *\n * @returns Promise that resolves when transport is closed\n */\n async close(): Promise<void> {\n this.closed = true;\n\n // Wait for queue to drain (with timeout)\n const timeout = 10000;\n const start = Date.now();\n while (this.processing && Date.now() - start < timeout) {\n await new Promise((resolve) => setTimeout(resolve, 100));\n }\n\n if (this.processing) {\n logger.warn('Transport closed with pending queue items');\n }\n }\n}\n",
|
|
18
|
-
"import { z } from 'zod';\n\n/**\n * Configuration schema for HTTP transport\n */\nexport const HttpTransportConfigSchema = z.object({\n /** API endpoint URL */\n apiUrl: z.string().url(),\n\n /** Authentication token */\n apiToken: z.string().min(1),\n\n /** Optional agent identifier */\n agentId: z.string().optional(),\n\n /** Optional agent version */\n agentVersion: z.string().optional(),\n\n /** Optional agent name */\n agentName: z.string().optional(),\n\n /** Optional agent description */\n agentDescription: z.string().optional(),\n\n /** Optional agent schema for validation */\n agentSchema: z.record(z.unknown()).optional(),\n\n /** Optional agent schema version */\n agentSchemaVersion: z.string().optional(),\n\n /** Skip schema validation */\n skipSchema: z.boolean().default(false),\n\n /** Request timeout in milliseconds */\n requestTimeout: z.number().positive().default(30000),\n\n /** Connection timeout in milliseconds */\n connectTimeout: z.number().positive().default(10000),\n\n /** Maximum number of retry attempts */\n maxRetries: z.number().int().nonnegative().default(3),\n\n /** Initial delay between retries in milliseconds */\n initialRetryDelay: z.number().positive().default(1000),\n\n /** Maximum delay between retries in milliseconds */\n maxRetryDelay: z.number().positive().default(60000),\n\n /** Multiplier for exponential backoff */\n retryMultiplier: z.number().positive().default(2.0),\n});\n\nexport type HttpTransportConfig = z.infer<typeof HttpTransportConfigSchema>;\n\n/**\n * Partial HTTP config schema for user input (before defaults are applied)\n */\nexport const PartialHttpConfigSchema = z.object({\n apiUrl: z.string().url(),\n apiToken: z.string().min(1),\n agentId: z.string().optional(),\n agentVersion: z.string().optional(),\n agentName: z.string().optional(),\n agentDescription: z.string().optional(),\n agentSchema: z.record(z.unknown()).optional(),\n agentSchemaVersion: z.string().optional(),\n skipSchema: z.boolean().optional(),\n requestTimeout: z.number().positive().optional(),\n connectTimeout: z.number().positive().optional(),\n maxRetries: z.number().int().nonnegative().optional(),\n initialRetryDelay: z.number().positive().optional(),\n maxRetryDelay: z.number().positive().optional(),\n retryMultiplier: z.number().positive().optional(),\n});\n\nexport type PartialHttpConfig = z.infer<typeof PartialHttpConfigSchema>;\n\n/**\n * Main SDK configuration schema\n */\nexport const ConfigSchema = z.object({\n /** Transport type to use for span emission */\n transportType: z.enum(['stdio', 'http']).default('stdio'),\n\n /** Sampling rate (0.0 to 1.0) */\n sampleRate: z.number().min(0).max(1).default(1.0),\n\n /** Whether to capture span inputs */\n captureInputs: z.boolean().default(true),\n\n /** Whether to capture span outputs */\n captureOutputs: z.boolean().default(true),\n\n /** Maximum length for input strings */\n maxInputLength: z.number().int().positive().default(10000),\n\n /** Maximum length for output strings */\n maxOutputLength: z.number().int().positive().default(10000),\n\n /** HTTP transport configuration (required if transportType is 'http') */\n httpConfig: PartialHttpConfigSchema.optional(),\n});\n\nexport type Config = z.infer<typeof ConfigSchema>;\n\n/**\n * Creates a validated configuration object by merging provided options with\n * environment variables and defaults.\n *\n * @param options - Partial configuration options\n * @returns Validated configuration object\n * @throws {z.ZodError} If configuration is invalid\n *\n * @example\n * ```typescript\n * const config = createConfig({\n * transportType: 'http',\n * httpConfig: {\n * apiUrl: 'https://api.prefactor.ai',\n * apiToken: process.env.PREFACTOR_API_TOKEN!,\n * }\n * });\n * ```\n */\nexport function createConfig(options?: Partial<Config>): Config {\n const config = {\n transportType:\n options?.transportType ??\n (process.env.PREFACTOR_TRANSPORT as 'stdio' | 'http' | undefined) ??\n 'stdio',\n sampleRate: options?.sampleRate ?? parseFloat(process.env.PREFACTOR_SAMPLE_RATE ?? '1.0'),\n captureInputs: options?.captureInputs ?? process.env.PREFACTOR_CAPTURE_INPUTS !== 'false',\n captureOutputs: options?.captureOutputs ?? process.env.PREFACTOR_CAPTURE_OUTPUTS !== 'false',\n maxInputLength:\n options?.maxInputLength ?? parseInt(process.env.PREFACTOR_MAX_INPUT_LENGTH ?? '10000', 10),\n maxOutputLength:\n options?.maxOutputLength ?? parseInt(process.env.PREFACTOR_MAX_OUTPUT_LENGTH ?? '10000', 10),\n httpConfig: options?.httpConfig,\n };\n\n // Validate and return\n return ConfigSchema.parse(config);\n}\n"
|
|
17
|
+
"import type { Transport } from './base.js';\nimport type { HttpTransportConfig } from '../config.js';\nimport type { Span } from '../tracing/span.js';\nimport { getLogger } from '../utils/logging.js';\n\nconst logger = getLogger('http-transport');\n\n/**\n * Queue item types for background processing\n */\ninterface QueueItem {\n type: 'span' | 'finish_span' | 'start_agent' | 'finish_agent';\n data: unknown;\n}\n\n/**\n * HTTP transport sends spans to a remote API endpoint.\n *\n * Features:\n * - Queue-based async processing\n * - Exponential backoff retry logic\n * - Span ID mapping (SDK ID → backend ID)\n * - Agent instance lifecycle management\n * - Graceful shutdown with timeout\n *\n * @example\n * ```typescript\n * const transport = new HttpTransport({\n * apiUrl: 'https://api.prefactor.ai',\n * apiToken: process.env.PREFACTOR_API_TOKEN!,\n * });\n * ```\n */\nexport class HttpTransport implements Transport {\n private queue: QueueItem[] = [];\n private processing = false;\n private closed = false;\n private agentInstanceId: string | null = null;\n private spanIdMap = new Map<string, string>();\n\n constructor(private config: HttpTransportConfig) {\n this.startProcessing();\n }\n\n /**\n * Emit a span (adds to queue for async processing)\n *\n * @param span - The span to emit\n */\n emit(span: Span): void {\n if (this.closed) {\n return;\n }\n this.queue.push({ type: 'span', data: span });\n }\n\n /**\n * Finish a previously emitted span (for AGENT spans)\n *\n * @param spanId - ID of the span to finish\n * @param endTime - End time in milliseconds since Unix epoch\n */\n finishSpan(spanId: string, endTime: number): void {\n if (this.closed) {\n return;\n }\n const timestamp = new Date(endTime).toISOString();\n this.queue.push({ type: 'finish_span', data: { spanId, timestamp } });\n }\n\n /**\n * Signal the start of an agent instance execution\n */\n startAgentInstance(): void {\n if (this.closed) {\n return;\n }\n this.queue.push({ type: 'start_agent', data: null });\n }\n\n /**\n * Signal the completion of an agent instance execution\n */\n finishAgentInstance(): void {\n if (this.closed) {\n return;\n }\n this.queue.push({ type: 'finish_agent', data: null });\n }\n\n /**\n * Start background queue processing\n */\n private async startProcessing(): Promise<void> {\n this.processing = true;\n\n while (!this.closed || this.queue.length > 0) {\n if (this.queue.length === 0) {\n await new Promise((resolve) => setTimeout(resolve, 100));\n continue;\n }\n\n const item = this.queue.shift()!;\n\n try {\n // Ensure agent is registered before processing spans\n if (!this.agentInstanceId && item.type !== 'start_agent') {\n await this.ensureAgentRegistered();\n }\n\n switch (item.type) {\n case 'span':\n await this.sendSpan(item.data as Span);\n break;\n case 'finish_span':\n await this.finishSpanHttp(item.data as { spanId: string; timestamp: string });\n break;\n case 'start_agent':\n await this.startAgentInstanceHttp();\n break;\n case 'finish_agent':\n await this.finishAgentInstanceHttp();\n break;\n }\n } catch (error) {\n logger.error('Error processing queue item:', error);\n }\n }\n\n this.processing = false;\n }\n\n /**\n * Send a span to the API\n */\n private async sendSpan(span: Span, retry = 0): Promise<void> {\n const url = `${this.config.apiUrl}/api/v1/agent_spans`;\n const payload = this.transformSpanToApiFormat(span);\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${this.config.apiToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(payload),\n signal: AbortSignal.timeout(this.config.requestTimeout),\n });\n\n if (response.ok) {\n const data = await response.json() as { details?: { id?: string } };\n const backendSpanId = data?.details?.id;\n if (backendSpanId) {\n this.spanIdMap.set(span.spanId, backendSpanId);\n }\n return;\n }\n\n // Retry on server errors or rate limiting\n if ((response.status >= 500 || response.status === 429) && retry < this.config.maxRetries) {\n const delay = Math.min(\n this.config.initialRetryDelay * Math.pow(this.config.retryMultiplier, retry),\n this.config.maxRetryDelay\n );\n logger.debug(`Retrying span send after ${delay}ms (attempt ${retry + 1})`);\n await new Promise((resolve) => setTimeout(resolve, delay));\n return this.sendSpan(span, retry + 1);\n }\n\n logger.error(`Failed to send span: ${response.status} ${response.statusText}`);\n } catch (error) {\n logger.error('Error sending span:', error);\n\n // Retry on network errors\n if (retry < this.config.maxRetries) {\n const delay = Math.min(\n this.config.initialRetryDelay * Math.pow(this.config.retryMultiplier, retry),\n this.config.maxRetryDelay\n );\n await new Promise((resolve) => setTimeout(resolve, delay));\n return this.sendSpan(span, retry + 1);\n }\n }\n }\n\n /**\n * Transform span to backend API format (snake_case)\n */\n private transformSpanToApiFormat(span: Span): Record<string, unknown> {\n return {\n agent_instance_id: this.agentInstanceId,\n parent_span_id: span.parentSpanId ? (this.spanIdMap.get(span.parentSpanId) ?? null) : null,\n name: span.name,\n span_type: span.spanType,\n start_time: new Date(span.startTime).toISOString(),\n end_time: span.endTime ? new Date(span.endTime).toISOString() : null,\n status: span.status,\n inputs: span.inputs,\n outputs: span.outputs,\n token_usage: span.tokenUsage\n ? {\n prompt_tokens: span.tokenUsage.promptTokens,\n completion_tokens: span.tokenUsage.completionTokens,\n total_tokens: span.tokenUsage.totalTokens,\n }\n : null,\n error: span.error\n ? {\n error_type: span.error.errorType,\n message: span.error.message,\n stacktrace: span.error.stacktrace,\n }\n : null,\n metadata: span.metadata,\n tags: span.tags,\n };\n }\n\n /**\n * Get default schema (v1.0.0) with span schemas for all supported types\n */\n private getDefaultSchema(): Record<string, unknown> {\n return {\n external_identifier: '1.0.0',\n span_schemas: {\n agent: {\n type: 'object',\n properties: { type: { type: 'string', const: 'agent' } },\n },\n llm: {\n type: 'object',\n properties: { type: { type: 'string', const: 'llm' } },\n },\n tool: {\n type: 'object',\n properties: { type: { type: 'string', const: 'tool' } },\n },\n chain: {\n type: 'object',\n properties: { type: { type: 'string', const: 'chain' } },\n },\n retriever: {\n type: 'object',\n properties: { type: { type: 'string', const: 'retriever' } },\n },\n },\n };\n }\n\n /**\n * Ensure an agent instance is registered\n */\n private async ensureAgentRegistered(): Promise<void> {\n if (this.agentInstanceId) {\n return;\n }\n\n const url = `${this.config.apiUrl}/api/v1/agent_instance/register`;\n const payload: Record<string, unknown> = {};\n\n if (this.config.agentId) payload.agent_id = this.config.agentId;\n if (this.config.agentVersion) {\n payload.agent_version = {\n external_identifier: this.config.agentVersion,\n name: this.config.agentName || 'Agent',\n description: this.config.agentDescription || '',\n };\n }\n\n // Schema handling - four modes:\n // 1. skipSchema=true: No schema in payload (pre-registered on backend)\n // 2. agentSchema provided: Use full custom schema object\n // 3. agentSchemaVersion provided: Use version identifier only\n // 4. None of above: Use default v1.0.0 schema\n if (this.config.skipSchema) {\n logger.debug('Skipping schema in registration (skipSchema=true)');\n // Do not add agent_schema_version key\n } else if (this.config.agentSchema) {\n logger.debug('Using custom agent schema');\n payload.agent_schema_version = this.config.agentSchema;\n } else if (this.config.agentSchemaVersion) {\n logger.debug(`Using schema version: ${this.config.agentSchemaVersion}`);\n payload.agent_schema_version = {\n external_identifier: this.config.agentSchemaVersion,\n };\n } else {\n logger.debug('Using default hardcoded schema (v1.0.0)');\n payload.agent_schema_version = this.getDefaultSchema();\n }\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${this.config.apiToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(payload),\n signal: AbortSignal.timeout(this.config.requestTimeout),\n });\n\n if (response.ok) {\n const data = await response.json() as { details?: { id?: string } };\n this.agentInstanceId = data?.details?.id ?? null;\n logger.debug(`Registered agent instance: ${this.agentInstanceId}`);\n } else {\n logger.error(`Failed to register agent: ${response.status} ${response.statusText}`);\n }\n } catch (error) {\n logger.error('Error registering agent:', error);\n }\n }\n\n /**\n * Start agent instance execution\n */\n private async startAgentInstanceHttp(): Promise<void> {\n await this.ensureAgentRegistered();\n\n if (!this.agentInstanceId) {\n logger.error('Cannot start agent instance: not registered');\n return;\n }\n\n const url = `${this.config.apiUrl}/api/v1/agent_instance/${this.agentInstanceId}/start`;\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${this.config.apiToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({}),\n signal: AbortSignal.timeout(this.config.requestTimeout),\n });\n\n if (!response.ok) {\n logger.error(`Failed to start agent instance: ${response.status} ${response.statusText}`);\n }\n } catch (error) {\n logger.error('Error starting agent instance:', error);\n }\n }\n\n /**\n * Finish agent instance execution\n */\n private async finishAgentInstanceHttp(): Promise<void> {\n if (!this.agentInstanceId) {\n logger.error('Cannot finish agent instance: not registered');\n return;\n }\n\n const url = `${this.config.apiUrl}/api/v1/agent_instance/${this.agentInstanceId}/finish`;\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${this.config.apiToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({}),\n signal: AbortSignal.timeout(this.config.requestTimeout),\n });\n\n if (!response.ok) {\n logger.error(`Failed to finish agent instance: ${response.status} ${response.statusText}`);\n }\n } catch (error) {\n logger.error('Error finishing agent instance:', error);\n }\n }\n\n /**\n * Finish a span via HTTP\n */\n private async finishSpanHttp(data: { spanId: string; timestamp: string }): Promise<void> {\n const backendSpanId = this.spanIdMap.get(data.spanId);\n if (!backendSpanId) {\n logger.warn(`Cannot finish span ${data.spanId}: backend ID not found`);\n return;\n }\n\n const url = `${this.config.apiUrl}/api/v1/agent_spans/${backendSpanId}/finish`;\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${this.config.apiToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({ end_time: data.timestamp }),\n signal: AbortSignal.timeout(this.config.requestTimeout),\n });\n\n if (!response.ok) {\n logger.error(`Failed to finish span: ${response.status} ${response.statusText}`);\n }\n } catch (error) {\n logger.error('Error finishing span:', error);\n }\n }\n\n /**\n * Close the transport and wait for queue to drain\n *\n * @returns Promise that resolves when transport is closed\n */\n async close(): Promise<void> {\n this.closed = true;\n\n // Wait for queue to drain (with timeout)\n const timeout = 10000;\n const start = Date.now();\n while (this.processing && Date.now() - start < timeout) {\n await new Promise((resolve) => setTimeout(resolve, 100));\n }\n\n if (this.processing) {\n logger.warn('Transport closed with pending queue items');\n }\n }\n}\n",
|
|
18
|
+
"import { z } from 'zod';\n\n/**\n * Configuration schema for HTTP transport\n */\nexport const HttpTransportConfigSchema = z.object({\n /** API endpoint URL */\n apiUrl: z.string().url(),\n\n /** Authentication token */\n apiToken: z.string().min(1),\n\n /** Optional agent identifier */\n agentId: z.string().optional(),\n\n /** Optional agent version */\n agentVersion: z.string().optional(),\n\n /** Optional agent name */\n agentName: z.string().optional(),\n\n /** Optional agent description */\n agentDescription: z.string().optional(),\n\n /** Optional agent schema for validation (full schema object) */\n agentSchema: z.record(z.unknown()).optional(),\n\n /** Optional agent schema version identifier (string) */\n agentSchemaVersion: z.string().optional(),\n\n /** Skip schema validation */\n skipSchema: z.boolean().default(false),\n\n /** Request timeout in milliseconds */\n requestTimeout: z.number().positive().default(30000),\n\n /** Connection timeout in milliseconds */\n connectTimeout: z.number().positive().default(10000),\n\n /** Maximum number of retry attempts */\n maxRetries: z.number().int().nonnegative().default(3),\n\n /** Initial delay between retries in milliseconds */\n initialRetryDelay: z.number().positive().default(1000),\n\n /** Maximum delay between retries in milliseconds */\n maxRetryDelay: z.number().positive().default(60000),\n\n /** Multiplier for exponential backoff */\n retryMultiplier: z.number().positive().default(2.0),\n});\n\nexport type HttpTransportConfig = z.infer<typeof HttpTransportConfigSchema>;\n\n/**\n * Partial HTTP config schema for user input (before defaults are applied)\n */\nexport const PartialHttpConfigSchema = z.object({\n apiUrl: z.string().url(),\n apiToken: z.string().min(1),\n agentId: z.string().optional(),\n agentVersion: z.string().optional(),\n agentName: z.string().optional(),\n agentDescription: z.string().optional(),\n agentSchema: z.record(z.unknown()).optional(),\n agentSchemaVersion: z.string().optional(),\n skipSchema: z.boolean().optional(),\n requestTimeout: z.number().positive().optional(),\n connectTimeout: z.number().positive().optional(),\n maxRetries: z.number().int().nonnegative().optional(),\n initialRetryDelay: z.number().positive().optional(),\n maxRetryDelay: z.number().positive().optional(),\n retryMultiplier: z.number().positive().optional(),\n});\n\nexport type PartialHttpConfig = z.infer<typeof PartialHttpConfigSchema>;\n\n/**\n * Main SDK configuration schema\n */\nexport const ConfigSchema = z.object({\n /** Transport type to use for span emission */\n transportType: z.enum(['stdio', 'http']).default('stdio'),\n\n /** Sampling rate (0.0 to 1.0) */\n sampleRate: z.number().min(0).max(1).default(1.0),\n\n /** Whether to capture span inputs */\n captureInputs: z.boolean().default(true),\n\n /** Whether to capture span outputs */\n captureOutputs: z.boolean().default(true),\n\n /** Maximum length for input strings */\n maxInputLength: z.number().int().positive().default(10000),\n\n /** Maximum length for output strings */\n maxOutputLength: z.number().int().positive().default(10000),\n\n /** HTTP transport configuration (required if transportType is 'http') */\n httpConfig: PartialHttpConfigSchema.optional(),\n});\n\nexport type Config = z.infer<typeof ConfigSchema>;\n\n/**\n * Creates a validated configuration object by merging provided options with\n * environment variables and defaults.\n *\n * @param options - Partial configuration options\n * @returns Validated configuration object\n * @throws {z.ZodError} If configuration is invalid\n *\n * @example\n * ```typescript\n * const config = createConfig({\n * transportType: 'http',\n * httpConfig: {\n * apiUrl: 'https://api.prefactor.ai',\n * apiToken: process.env.PREFACTOR_API_TOKEN!,\n * }\n * });\n * ```\n */\nexport function createConfig(options?: Partial<Config>): Config {\n const config = {\n transportType:\n options?.transportType ??\n (process.env.PREFACTOR_TRANSPORT as 'stdio' | 'http' | undefined) ??\n 'stdio',\n sampleRate: options?.sampleRate ?? parseFloat(process.env.PREFACTOR_SAMPLE_RATE ?? '1.0'),\n captureInputs: options?.captureInputs ?? process.env.PREFACTOR_CAPTURE_INPUTS !== 'false',\n captureOutputs: options?.captureOutputs ?? process.env.PREFACTOR_CAPTURE_OUTPUTS !== 'false',\n maxInputLength:\n options?.maxInputLength ?? parseInt(process.env.PREFACTOR_MAX_INPUT_LENGTH ?? '10000', 10),\n maxOutputLength:\n options?.maxOutputLength ?? parseInt(process.env.PREFACTOR_MAX_OUTPUT_LENGTH ?? '10000', 10),\n httpConfig: options?.httpConfig,\n };\n\n // Validate and return\n return ConfigSchema.parse(config);\n}\n"
|
|
19
19
|
],
|
|
20
|
-
"mappings": "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",
|
|
21
|
-
"debugId": "
|
|
20
|
+
"mappings": "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",
|
|
21
|
+
"debugId": "515E8DA2210BA08964756E2164756E21",
|
|
22
22
|
"names": []
|
|
23
23
|
}
|
package/dist/package.json
CHANGED
package/dist/transport/http.d.ts
CHANGED
|
@@ -60,6 +60,10 @@ export declare class HttpTransport implements Transport {
|
|
|
60
60
|
* Transform span to backend API format (snake_case)
|
|
61
61
|
*/
|
|
62
62
|
private transformSpanToApiFormat;
|
|
63
|
+
/**
|
|
64
|
+
* Get default schema (v1.0.0) with span schemas for all supported types
|
|
65
|
+
*/
|
|
66
|
+
private getDefaultSchema;
|
|
63
67
|
/**
|
|
64
68
|
* Ensure an agent instance is registered
|
|
65
69
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/transport/http.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAa/C;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,aAAc,YAAW,SAAS;IAOjC,OAAO,CAAC,MAAM;IAN1B,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,SAAS,CAA6B;gBAE1B,MAAM,EAAE,mBAAmB;IAI/C;;;;OAIG;IACH,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAOtB;;;;;OAKG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAQjD;;OAEG;IACH,kBAAkB,IAAI,IAAI;IAO1B;;OAEG;IACH,mBAAmB,IAAI,IAAI;IAO3B;;OAEG;YACW,eAAe;IAuC7B;;OAEG;YACW,QAAQ;IAmDtB;;OAEG;IACH,OAAO,CAAC,wBAAwB;IA8BhC;;OAEG;YACW,qBAAqB;
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/transport/http.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAa/C;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,aAAc,YAAW,SAAS;IAOjC,OAAO,CAAC,MAAM;IAN1B,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,SAAS,CAA6B;gBAE1B,MAAM,EAAE,mBAAmB;IAI/C;;;;OAIG;IACH,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAOtB;;;;;OAKG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAQjD;;OAEG;IACH,kBAAkB,IAAI,IAAI;IAO1B;;OAEG;IACH,mBAAmB,IAAI,IAAI;IAO3B;;OAEG;YACW,eAAe;IAuC7B;;OAEG;YACW,QAAQ;IAmDtB;;OAEG;IACH,OAAO,CAAC,wBAAwB;IA8BhC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA4BxB;;OAEG;YACW,qBAAqB;IA6DnC;;OAEG;YACW,sBAAsB;IA6BpC;;OAEG;YACW,uBAAuB;IA2BrC;;OAEG;YACW,cAAc;IA4B5B;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAc7B"}
|
package/dist/transport/http.js
CHANGED
|
@@ -183,6 +183,36 @@ export class HttpTransport {
|
|
|
183
183
|
tags: span.tags,
|
|
184
184
|
};
|
|
185
185
|
}
|
|
186
|
+
/**
|
|
187
|
+
* Get default schema (v1.0.0) with span schemas for all supported types
|
|
188
|
+
*/
|
|
189
|
+
getDefaultSchema() {
|
|
190
|
+
return {
|
|
191
|
+
external_identifier: '1.0.0',
|
|
192
|
+
span_schemas: {
|
|
193
|
+
agent: {
|
|
194
|
+
type: 'object',
|
|
195
|
+
properties: { type: { type: 'string', const: 'agent' } },
|
|
196
|
+
},
|
|
197
|
+
llm: {
|
|
198
|
+
type: 'object',
|
|
199
|
+
properties: { type: { type: 'string', const: 'llm' } },
|
|
200
|
+
},
|
|
201
|
+
tool: {
|
|
202
|
+
type: 'object',
|
|
203
|
+
properties: { type: { type: 'string', const: 'tool' } },
|
|
204
|
+
},
|
|
205
|
+
chain: {
|
|
206
|
+
type: 'object',
|
|
207
|
+
properties: { type: { type: 'string', const: 'chain' } },
|
|
208
|
+
},
|
|
209
|
+
retriever: {
|
|
210
|
+
type: 'object',
|
|
211
|
+
properties: { type: { type: 'string', const: 'retriever' } },
|
|
212
|
+
},
|
|
213
|
+
},
|
|
214
|
+
};
|
|
215
|
+
}
|
|
186
216
|
/**
|
|
187
217
|
* Ensure an agent instance is registered
|
|
188
218
|
*/
|
|
@@ -201,11 +231,28 @@ export class HttpTransport {
|
|
|
201
231
|
description: this.config.agentDescription || '',
|
|
202
232
|
};
|
|
203
233
|
}
|
|
204
|
-
|
|
205
|
-
|
|
234
|
+
// Schema handling - four modes:
|
|
235
|
+
// 1. skipSchema=true: No schema in payload (pre-registered on backend)
|
|
236
|
+
// 2. agentSchema provided: Use full custom schema object
|
|
237
|
+
// 3. agentSchemaVersion provided: Use version identifier only
|
|
238
|
+
// 4. None of above: Use default v1.0.0 schema
|
|
239
|
+
if (this.config.skipSchema) {
|
|
240
|
+
logger.debug('Skipping schema in registration (skipSchema=true)');
|
|
241
|
+
// Do not add agent_schema_version key
|
|
242
|
+
}
|
|
243
|
+
else if (this.config.agentSchema) {
|
|
244
|
+
logger.debug('Using custom agent schema');
|
|
245
|
+
payload.agent_schema_version = this.config.agentSchema;
|
|
246
|
+
}
|
|
247
|
+
else if (this.config.agentSchemaVersion) {
|
|
248
|
+
logger.debug(`Using schema version: ${this.config.agentSchemaVersion}`);
|
|
249
|
+
payload.agent_schema_version = {
|
|
250
|
+
external_identifier: this.config.agentSchemaVersion,
|
|
251
|
+
};
|
|
206
252
|
}
|
|
207
|
-
|
|
208
|
-
|
|
253
|
+
else {
|
|
254
|
+
logger.debug('Using default hardcoded schema (v1.0.0)');
|
|
255
|
+
payload.agent_schema_version = this.getDefaultSchema();
|
|
209
256
|
}
|
|
210
257
|
try {
|
|
211
258
|
const response = await fetch(url, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/transport/http.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,MAAM,MAAM,GAAG,SAAS,CAAC,gBAAgB,CAAC,CAAC;AAU3C;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,OAAO,aAAa;IAOJ;IANZ,KAAK,GAAgB,EAAE,CAAC;IACxB,UAAU,GAAG,KAAK,CAAC;IACnB,MAAM,GAAG,KAAK,CAAC;IACf,eAAe,GAAkB,IAAI,CAAC;IACtC,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE9C,YAAoB,MAA2B;QAA3B,WAAM,GAAN,MAAM,CAAqB;QAC7C,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACH,IAAI,CAAC,IAAU;QACb,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;IAED;;;;;OAKG;IACH,UAAU,CAAC,MAAc,EAAE,OAAe;QACxC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;QAClD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IACxE,CAAC;IAED;;OAEG;IACH,kBAAkB;QAChB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACH,mBAAmB;QACjB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,eAAe;QAC3B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAEvB,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7C,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC5B,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;gBACzD,SAAS;YACX,CAAC;YAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAG,CAAC;YAEjC,IAAI,CAAC;gBACH,qDAAqD;gBACrD,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;oBACzD,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBACrC,CAAC;gBAED,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;oBAClB,KAAK,MAAM;wBACT,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAY,CAAC,CAAC;wBACvC,MAAM;oBACR,KAAK,aAAa;wBAChB,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAA6C,CAAC,CAAC;wBAC9E,MAAM;oBACR,KAAK,aAAa;wBAChB,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;wBACpC,MAAM;oBACR,KAAK,cAAc;wBACjB,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;wBACrC,MAAM;gBACV,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IAC1B,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,QAAQ,CAAC,IAAU,EAAE,KAAK,GAAG,CAAC;QAC1C,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,qBAAqB,CAAC;QACvD,MAAM,OAAO,GAAG,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;QAEpD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAChC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;oBAC/C,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBAC7B,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;aACxD,CAAC,CAAC;YAEH,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAChB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAmC,CAAC;gBACpE,MAAM,aAAa,GAAG,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC;gBACxC,IAAI,aAAa,EAAE,CAAC;oBAClB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;gBACjD,CAAC;gBACD,OAAO;YACT,CAAC;YAED,0CAA0C;YAC1C,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;gBAC1F,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CACpB,IAAI,CAAC,MAAM,CAAC,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,KAAK,CAAC,EAC5E,IAAI,CAAC,MAAM,CAAC,aAAa,CAC1B,CAAC;gBACF,MAAM,CAAC,KAAK,CAAC,4BAA4B,KAAK,eAAe,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC3E,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;gBAC3D,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;YACxC,CAAC;YAED,MAAM,CAAC,KAAK,CAAC,wBAAwB,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QACjF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;YAE3C,0BAA0B;YAC1B,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;gBACnC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CACpB,IAAI,CAAC,MAAM,CAAC,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,KAAK,CAAC,EAC5E,IAAI,CAAC,MAAM,CAAC,aAAa,CAC1B,CAAC;gBACF,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;gBAC3D,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,wBAAwB,CAAC,IAAU;QACzC,OAAO;YACL,iBAAiB,EAAE,IAAI,CAAC,eAAe;YACvC,cAAc,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;YAC1F,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,SAAS,EAAE,IAAI,CAAC,QAAQ;YACxB,UAAU,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;YAClD,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI;YACpE,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,WAAW,EAAE,IAAI,CAAC,UAAU;gBAC1B,CAAC,CAAC;oBACE,aAAa,EAAE,IAAI,CAAC,UAAU,CAAC,YAAY;oBAC3C,iBAAiB,EAAE,IAAI,CAAC,UAAU,CAAC,gBAAgB;oBACnD,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,WAAW;iBAC1C;gBACH,CAAC,CAAC,IAAI;YACR,KAAK,EAAE,IAAI,CAAC,KAAK;gBACf,CAAC,CAAC;oBACE,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS;oBAChC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;oBAC3B,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU;iBAClC;gBACH,CAAC,CAAC,IAAI;YACR,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,qBAAqB;QACjC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QAED,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,iCAAiC,CAAC;QACnE,MAAM,OAAO,GAA4B,EAAE,CAAC;QAE5C,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;QAChE,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;YAC7B,OAAO,CAAC,aAAa,GAAG;gBACtB,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY;gBAC7C,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,OAAO;gBACtC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB,IAAI,EAAE;aAChD,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACvD,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QACjD,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;YACnC,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC;QAChE,CAAC;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAChC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;oBAC/C,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBAC7B,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;aACxD,CAAC,CAAC;YAEH,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAChB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAmC,CAAC;gBACpE,IAAI,CAAC,eAAe,GAAG,IAAI,EAAE,OAAO,EAAE,EAAE,IAAI,IAAI,CAAC;gBACjD,MAAM,CAAC,KAAK,CAAC,8BAA8B,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;YACrE,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,KAAK,CAAC,6BAA6B,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;YACtF,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,sBAAsB;QAClC,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAEnC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,MAAM,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;YAC5D,OAAO;QACT,CAAC;QAED,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,0BAA0B,IAAI,CAAC,eAAe,QAAQ,CAAC;QAExF,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAChC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;oBAC/C,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;gBACxB,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;aACxD,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,CAAC,KAAK,CAAC,mCAAmC,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;YAC5F,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,uBAAuB;QACnC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,MAAM,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAC7D,OAAO;QACT,CAAC;QAED,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,0BAA0B,IAAI,CAAC,eAAe,SAAS,CAAC;QAEzF,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAChC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;oBAC/C,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;gBACxB,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;aACxD,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,CAAC,KAAK,CAAC,oCAAoC,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;YAC7F,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,cAAc,CAAC,IAA2C;QACtE,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtD,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,CAAC,IAAI,CAAC,sBAAsB,IAAI,CAAC,MAAM,wBAAwB,CAAC,CAAC;YACvE,OAAO;QACT,CAAC;QAED,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,uBAAuB,aAAa,SAAS,CAAC;QAE/E,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAChC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;oBAC/C,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;gBAClD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;aACxD,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,CAAC,KAAK,CAAC,0BAA0B,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;YACnF,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QAEnB,yCAAyC;QACzC,MAAM,OAAO,GAAG,KAAK,CAAC;QACtB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,OAAO,EAAE,CAAC;YACvD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QAC3D,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,MAAM,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/transport/http.ts"],"names":[],"mappings":"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"}
|