@uselemma/tracing 4.1.0 → 4.2.0

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/README.md CHANGED
@@ -142,28 +142,27 @@ For live trace handles, `trace.end({ output })` is usually enough. Pass `duratio
142
142
 
143
143
  ## Vercel AI SDK
144
144
 
145
- Pass `vercelAI()` to the AI SDK telemetry integrations option while the call runs inside a Lemma trace. AI SDK v7 uses `telemetry`; AI SDK v6 uses `experimental_telemetry`.
145
+ Pass `vercelAI()` to the AI SDK telemetry integrations option. The integration creates and closes the Lemma trace for the AI SDK run, extracts the prompt/messages as trace input, and records model calls and tool executions as child spans. AI SDK v7 uses `telemetry`; AI SDK v6 uses `experimental_telemetry`.
146
146
 
147
147
  ```typescript
148
148
  import { generateText } from "ai";
149
- import { Lemma, vercelAI } from "@uselemma/tracing";
149
+ import { vercelAI } from "@uselemma/tracing";
150
150
 
151
- const lemma = new Lemma();
152
-
153
- const answer = await lemma.trace(
154
- { name: "support-agent", input: userMessage },
155
- async () => {
156
- const result = await generateText({
157
- model,
158
- prompt: userMessage,
159
- telemetry: {
160
- integrations: [vercelAI()],
161
- },
162
- });
151
+ const lemmaTelemetry = vercelAI({
152
+ apiKey: process.env.LEMMA_API_KEY,
153
+ projectId: process.env.LEMMA_PROJECT_ID,
154
+ });
163
155
 
164
- return result.text;
156
+ const result = await generateText({
157
+ model,
158
+ prompt: userMessage,
159
+ telemetry: {
160
+ functionId: "support-agent",
161
+ integrations: [lemmaTelemetry],
165
162
  },
166
- );
163
+ });
164
+
165
+ return result.text;
167
166
  ```
168
167
 
169
168
  For AI SDK v6, pass the same helper through `experimental_telemetry`:
@@ -173,14 +172,17 @@ await generateText({
173
172
  model,
174
173
  prompt: userMessage,
175
174
  experimental_telemetry: {
176
- integrations: [vercelAI()],
175
+ functionId: "support-agent",
176
+ integrations: [lemmaTelemetry],
177
177
  },
178
178
  });
179
179
  ```
180
180
 
181
- The integration records model calls as generations and tool executions as tool calls. Use `vercelAI({ recordInputs: false, recordOutputs: false })` to avoid sending prompts, tool inputs, tool outputs, or model output text.
181
+ Use `telemetry.functionId` / `experimental_telemetry.functionId` for the agent name, or set it on the integration with `vercelAI({ agentName: "support-agent" })`.
182
+
183
+ Use `vercelAI({ recordInputs: false, recordOutputs: false })` to avoid sending prompts, tool inputs, tool outputs, or model output text.
182
184
 
183
- When you pass a trace handle with `vercelAI({ trace })`, the integration ends it from the AI SDK terminal callback: `onEnd` in AI SDK v7 and `onFinish` in AI SDK v6. When you use the callback form of `lemma.trace()`, the callback still owns trace closure.
185
+ For advanced cases, you can still attach to an existing trace by passing `vercelAI({ trace })` or by calling AI SDK inside a `lemma.trace()` callback. When you pass a trace handle, the integration ends it from the AI SDK terminal callback: `onEnd` in AI SDK v7 and `onFinish` in AI SDK v6. When you use the callback form of `lemma.trace()`, the callback owns trace closure.
184
186
 
185
187
  ## OpenAI Agents SDK
186
188
 
@@ -1,4 +1,4 @@
1
- import { type TraceContext } from "./client";
1
+ import { Lemma, type LemmaClientOptions, type TraceContext } from "./client";
2
2
  type MaybePromise<T> = T | PromiseLike<T>;
3
3
  type VercelAIModelCallStartEvent = {
4
4
  callId: string;
@@ -23,6 +23,8 @@ type VercelAIModelCallEndEvent = {
23
23
  type VercelAIEndEvent = {
24
24
  text?: string;
25
25
  content?: ReadonlyArray<unknown>;
26
+ functionId?: string;
27
+ metadata?: Record<string, unknown>;
26
28
  };
27
29
  type VercelAIToolExecutionEndEvent = {
28
30
  callId?: string;
@@ -55,6 +57,8 @@ type VercelAIStepStartEvent = {
55
57
  stepNumber: number;
56
58
  messages?: unknown[];
57
59
  tools?: unknown;
60
+ functionId?: string;
61
+ metadata?: Record<string, unknown>;
58
62
  };
59
63
  type VercelAIStepEndEvent = {
60
64
  callId: string;
@@ -86,12 +90,16 @@ type VercelAIV6StepStartEvent = {
86
90
  model: VercelAIV6ModelInfo;
87
91
  messages?: unknown[];
88
92
  tools?: unknown;
93
+ functionId?: string;
94
+ metadata?: Record<string, unknown>;
89
95
  };
90
96
  type VercelAIV6StepFinishEvent = {
91
97
  stepNumber: number;
92
98
  model: VercelAIV6ModelInfo;
93
99
  text?: string;
94
100
  content?: ReadonlyArray<unknown>;
101
+ functionId?: string;
102
+ metadata?: Record<string, unknown>;
95
103
  usage?: {
96
104
  inputTokens?: number;
97
105
  outputTokens?: number;
@@ -99,14 +107,19 @@ type VercelAIV6StepFinishEvent = {
99
107
  };
100
108
  type VercelAIV6StartEvent = {
101
109
  model: VercelAIV6ModelInfo;
110
+ system?: string;
102
111
  prompt?: string | unknown[];
103
112
  messages?: unknown[];
104
113
  tools?: unknown;
114
+ functionId?: string;
115
+ metadata?: Record<string, unknown>;
105
116
  };
106
117
  type VercelAIV6FinishEvent = {
107
118
  model: VercelAIV6ModelInfo;
108
119
  text?: string;
109
120
  content?: ReadonlyArray<unknown>;
121
+ functionId?: string;
122
+ metadata?: Record<string, unknown>;
110
123
  totalUsage?: {
111
124
  inputTokens?: number;
112
125
  outputTokens?: number;
@@ -136,6 +149,7 @@ export type VercelAITelemetryIntegration = {
136
149
  onLanguageModelCallStart?: (event: VercelAIModelCallStartEvent) => MaybePromise<void>;
137
150
  onLanguageModelCallEnd?: (event: VercelAIModelCallEndEvent) => MaybePromise<void>;
138
151
  onToolExecutionStart?: (event: VercelAIToolExecutionStartEvent) => MaybePromise<void>;
152
+ onToolCallStart?: (event: VercelAIToolExecutionStartEvent) => MaybePromise<void>;
139
153
  onToolExecutionEnd?: (event: VercelAIToolExecutionEndEvent) => MaybePromise<void>;
140
154
  onStart?: (event: VercelAIV6StartEvent) => MaybePromise<void>;
141
155
  onStepStart?: (event: VercelAIStepStartEvent | VercelAIV6StepStartEvent) => MaybePromise<void>;
@@ -147,6 +161,12 @@ export type VercelAITelemetryIntegration = {
147
161
  };
148
162
  export type VercelAIIntegrationOptions = {
149
163
  trace?: TraceContext;
164
+ lemma?: Lemma;
165
+ apiKey?: LemmaClientOptions["apiKey"];
166
+ projectId?: LemmaClientOptions["projectId"];
167
+ baseUrl?: LemmaClientOptions["baseUrl"];
168
+ fetch?: LemmaClientOptions["fetch"];
169
+ agentName?: string;
150
170
  generationName?: string | ((event: VercelAIModelCallEndEvent | VercelAIV6StepFinishEvent | VercelAIV6FinishEvent) => string);
151
171
  toolName?: string | ((event: VercelAIToolExecutionEndEvent | VercelAIV6ToolCallFinishEvent) => string);
152
172
  metadata?: Record<string, unknown>;
@@ -1 +1 @@
1
- {"version":3,"file":"vercel-ai.d.ts","sourceRoot":"","sources":["../src/vercel-ai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vercel-ai.d.ts","sourceRoot":"","sources":["../src/vercel-ai.ts"],"names":[],"mappings":"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"}
package/dist/vercel-ai.js CHANGED
@@ -18,17 +18,6 @@ function v7StepKey(callId, stepNumber) {
18
18
  function isV7StepStart(event) {
19
19
  return "callId" in event && "provider" in event && "modelId" in event;
20
20
  }
21
- function getTrace(trace) {
22
- if (trace)
23
- return trace;
24
- try {
25
- return (0, client_1.active)();
26
- }
27
- catch {
28
- console.warn("@uselemma/tracing: vercelAI() telemetry received an event outside lemma.trace(); event ignored");
29
- return undefined;
30
- }
31
- }
32
21
  function stringifyContent(content) {
33
22
  const text = content
34
23
  .map((part) => {
@@ -74,6 +63,29 @@ function v6Input(event) {
74
63
  return event.messages;
75
64
  return "prompt" in event ? event.prompt : undefined;
76
65
  }
66
+ function traceInput(event) {
67
+ if (!event)
68
+ return undefined;
69
+ if ("messages" in event && event.messages)
70
+ return event.messages;
71
+ if ("prompt" in event)
72
+ return event.prompt;
73
+ return undefined;
74
+ }
75
+ function traceMetadata(options, event) {
76
+ return {
77
+ ...options.metadata,
78
+ ...(event && "metadata" in event ? (event.metadata ?? {}) : {}),
79
+ };
80
+ }
81
+ function traceName(options, event) {
82
+ if (options.agentName)
83
+ return options.agentName;
84
+ const functionId = event && "functionId" in event && typeof event.functionId === "string"
85
+ ? event.functionId
86
+ : undefined;
87
+ return functionId || "vercel-ai-agent";
88
+ }
77
89
  function v6InputMessages(event) {
78
90
  const input = v6Input(event);
79
91
  return Array.isArray(input) ? input : undefined;
@@ -86,6 +98,7 @@ function v6Output(event) {
86
98
  return undefined;
87
99
  }
88
100
  function vercelAI(options = {}) {
101
+ let lemma = options.lemma;
89
102
  const modelCalls = new Map();
90
103
  const v7Steps = new Map();
91
104
  const v6Steps = new Map();
@@ -93,8 +106,36 @@ function vercelAI(options = {}) {
93
106
  const generationSpanIdsByCallId = new Map();
94
107
  const generationSpanIdsByToolCallId = new Map();
95
108
  const toolExecutions = new Map();
109
+ let managedTrace;
96
110
  let recordedV6Step = false;
97
111
  let endedExplicitTrace = false;
112
+ let endedManagedTrace = false;
113
+ function getLemma() {
114
+ lemma ??= new client_1.Lemma({
115
+ apiKey: options.apiKey,
116
+ projectId: options.projectId,
117
+ baseUrl: options.baseUrl,
118
+ fetch: options.fetch,
119
+ });
120
+ return lemma;
121
+ }
122
+ function resolveTrace(event) {
123
+ if (options.trace)
124
+ return { trace: options.trace, source: "explicit" };
125
+ try {
126
+ return { trace: (0, client_1.active)(), source: "active" };
127
+ }
128
+ catch {
129
+ if (!managedTrace) {
130
+ managedTrace = getLemma().trace({
131
+ name: traceName(options, event),
132
+ input: options.recordInputs === false ? undefined : traceInput(event),
133
+ metadata: traceMetadata(options, event),
134
+ });
135
+ }
136
+ return { trace: managedTrace, source: "managed" };
137
+ }
138
+ }
98
139
  function endOutput(event) {
99
140
  if (typeof event.text === "string")
100
141
  return event.text;
@@ -102,24 +143,36 @@ function vercelAI(options = {}) {
102
143
  return stringifyContent(event.content);
103
144
  return undefined;
104
145
  }
105
- async function endExplicitTrace(event) {
106
- if (endedExplicitTrace)
107
- return;
146
+ async function endOwnedTrace(event) {
108
147
  const trace = options.trace;
109
- if (typeof trace?.end !== "function")
148
+ let ownedTrace;
149
+ if (trace && typeof trace.end === "function") {
150
+ ownedTrace = { trace: { end: trace.end.bind(trace) }, explicit: true };
151
+ }
152
+ else if (managedTrace) {
153
+ ownedTrace = { trace: managedTrace, explicit: false };
154
+ }
155
+ if (!ownedTrace)
110
156
  return;
111
- endedExplicitTrace = true;
157
+ if (ownedTrace.explicit) {
158
+ if (endedExplicitTrace)
159
+ return;
160
+ endedExplicitTrace = true;
161
+ }
162
+ else {
163
+ if (endedManagedTrace)
164
+ return;
165
+ endedManagedTrace = true;
166
+ }
112
167
  const output = endOutput(event);
113
168
  if (options.recordOutputs === false || output === undefined) {
114
- await trace.end();
169
+ await ownedTrace.trace.end();
115
170
  return;
116
171
  }
117
- await trace.end({ output });
172
+ await ownedTrace.trace.end({ output });
118
173
  }
119
174
  function recordV6Generation(event, stored) {
120
- const trace = getTrace(options.trace);
121
- if (!trace)
122
- return;
175
+ const { trace } = resolveTrace(stored?.event);
123
176
  const startedAt = stored?.startedAt ?? new Date();
124
177
  const endedAt = new Date();
125
178
  const id = crypto.randomUUID();
@@ -128,8 +181,7 @@ function vercelAI(options = {}) {
128
181
  : (options.generationName ?? "vercel-ai-generation");
129
182
  const usage = "totalUsage" in event ? event.totalUsage : event.usage;
130
183
  const output = v6Output(event);
131
- trace.recordGeneration({
132
- id,
184
+ const generation = {
133
185
  name,
134
186
  input: options.recordInputs === false
135
187
  ? undefined
@@ -151,13 +203,20 @@ function vercelAI(options = {}) {
151
203
  ? undefined
152
204
  : [{ role: "assistant", content: output }],
153
205
  llmTools: stored?.event.tools,
206
+ };
207
+ if (stored?.handle) {
208
+ stored.handle.end(generation);
209
+ generationSpanIdsByCallId.set("v6-latest", stored.handle.id);
210
+ return;
211
+ }
212
+ trace.recordGeneration({
213
+ id,
214
+ ...generation,
154
215
  });
155
216
  generationSpanIdsByCallId.set("v6-latest", id);
156
217
  }
157
218
  function startV7Generation(event) {
158
- const trace = getTrace(options.trace);
159
- if (!trace)
160
- return;
219
+ const { trace } = resolveTrace(event);
161
220
  const name = typeof options.generationName === "function"
162
221
  ? options.generationName({
163
222
  callId: event.callId,
@@ -183,6 +242,30 @@ function vercelAI(options = {}) {
183
242
  v7Steps.set(v7StepKey(event.callId, event.stepNumber), stored);
184
243
  generationSpanIdsByCallId.set(event.callId, handle.id);
185
244
  }
245
+ function startV6Generation(event) {
246
+ const { trace } = resolveTrace(event);
247
+ const startedAt = new Date();
248
+ const name = typeof options.generationName === "function"
249
+ ? options.generationName({
250
+ stepNumber: "stepNumber" in event ? event.stepNumber : 0,
251
+ model: event.model,
252
+ usage: {},
253
+ })
254
+ : (options.generationName ?? "vercel-ai-generation");
255
+ const input = v6Input(event);
256
+ const handle = trace.startGeneration({
257
+ name,
258
+ input: options.recordInputs === false ? undefined : input,
259
+ metadata: options.metadata,
260
+ model: event.model.modelId,
261
+ startedAt,
262
+ llmProvider: event.model.provider,
263
+ llmInputMessages: options.recordInputs === false ? undefined : v6InputMessages(event),
264
+ llmTools: event.tools,
265
+ });
266
+ generationSpanIdsByCallId.set("v6-latest", handle.id);
267
+ return { event, startedAt, handle };
268
+ }
186
269
  function endV7Generation(event) {
187
270
  const stored = v7Steps.get(v7StepKey(event.callId, event.stepNumber));
188
271
  v7Steps.delete(v7StepKey(event.callId, event.stepNumber));
@@ -216,9 +299,7 @@ function vercelAI(options = {}) {
216
299
  }
217
300
  return {
218
301
  onLanguageModelCallStart(event) {
219
- const trace = getTrace(options.trace);
220
- if (!trace)
221
- return;
302
+ const { trace } = resolveTrace(event);
222
303
  if (generationSpanIdsByCallId.has(event.callId)) {
223
304
  modelCalls.set(event.callId, { event, startedAt: new Date() });
224
305
  return;
@@ -270,14 +351,12 @@ function vercelAI(options = {}) {
270
351
  });
271
352
  },
272
353
  onToolExecutionStart(event) {
273
- const trace = getTrace(options.trace);
274
- if (!trace)
275
- return;
354
+ const { trace } = resolveTrace();
276
355
  const parentId = event.toolCall.toolCallId &&
277
356
  generationSpanIdsByToolCallId.get(event.toolCall.toolCallId);
278
357
  const fallbackParentId = event.callId
279
358
  ? generationSpanIdsByCallId.get(event.callId)
280
- : undefined;
359
+ : generationSpanIdsByCallId.get("v6-latest");
281
360
  const name = typeof options.toolName === "function"
282
361
  ? options.toolName({
283
362
  ...event,
@@ -297,10 +376,11 @@ function vercelAI(options = {}) {
297
376
  toolExecutions.set(event.toolCall.toolCallId, { handle, startedAt });
298
377
  }
299
378
  },
379
+ onToolCallStart(event) {
380
+ this.onToolExecutionStart?.(event);
381
+ },
300
382
  onToolExecutionEnd(event) {
301
- const trace = getTrace(options.trace);
302
- if (!trace)
303
- return;
383
+ const { trace } = resolveTrace();
304
384
  const name = typeof options.toolName === "function"
305
385
  ? options.toolName(event)
306
386
  : (options.toolName ?? event.toolCall.toolName);
@@ -324,7 +404,7 @@ function vercelAI(options = {}) {
324
404
  generationSpanIdsByToolCallId.get(event.toolCall.toolCallId);
325
405
  const fallbackParentId = event.callId
326
406
  ? generationSpanIdsByCallId.get(event.callId)
327
- : undefined;
407
+ : generationSpanIdsByCallId.get("v6-latest");
328
408
  trace.recordTool({
329
409
  name,
330
410
  parentId: parentId ?? fallbackParentId,
@@ -339,13 +419,14 @@ function vercelAI(options = {}) {
339
419
  onStart(event) {
340
420
  recordedV6Step = false;
341
421
  v6Starts.push({ event, startedAt: new Date() });
422
+ resolveTrace(event);
342
423
  },
343
424
  onStepStart(event) {
344
425
  if (isV7StepStart(event)) {
345
426
  startV7Generation(event);
346
427
  return;
347
428
  }
348
- v6Steps.set(event.stepNumber, { event, startedAt: new Date() });
429
+ v6Steps.set(event.stepNumber, startV6Generation(event));
349
430
  },
350
431
  onStepEnd(event) {
351
432
  endV7Generation(event);
@@ -360,22 +441,34 @@ function vercelAI(options = {}) {
360
441
  if (recordedV6Step) {
361
442
  v6Starts.shift();
362
443
  recordedV6Step = false;
363
- await endExplicitTrace(event);
444
+ await endOwnedTrace(event);
364
445
  return;
365
446
  }
366
447
  recordV6Generation(event, v6Starts.shift());
367
- await endExplicitTrace(event);
448
+ await endOwnedTrace(event);
368
449
  },
369
450
  async onEnd(event) {
370
- await endExplicitTrace(event);
451
+ await endOwnedTrace(event);
371
452
  },
372
453
  onToolCallFinish(event) {
373
- const trace = getTrace(options.trace);
374
- if (!trace)
375
- return;
454
+ const { trace } = resolveTrace();
376
455
  const name = typeof options.toolName === "function"
377
456
  ? options.toolName(event)
378
457
  : (options.toolName ?? event.toolCall.toolName);
458
+ const storedTool = event.toolCall.toolCallId
459
+ ? toolExecutions.get(event.toolCall.toolCallId)
460
+ : undefined;
461
+ if (event.toolCall.toolCallId) {
462
+ toolExecutions.delete(event.toolCall.toolCallId);
463
+ }
464
+ if (storedTool) {
465
+ storedTool.handle.end({
466
+ durationMs: event.durationMs,
467
+ endedAt: addMs(storedTool.startedAt, event.durationMs),
468
+ ...v6ToolOutput(event, options.recordOutputs !== false),
469
+ });
470
+ return;
471
+ }
379
472
  const parentId = event.toolCall.toolCallId &&
380
473
  generationSpanIdsByToolCallId.get(event.toolCall.toolCallId);
381
474
  trace.recordTool({
@@ -1 +1 @@
1
- {"version":3,"file":"vercel-ai.js","sourceRoot":"","sources":["../src/vercel-ai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vercel-ai.js","sourceRoot":"","sources":["../src/vercel-ai.ts"],"names":[],"mappings":";;AA0YA,4BAkdC;AA51BD,qCAOkB;AA4PlB,SAAS,KAAK,CAAC,SAAe,EAAE,UAA8B;IAC5D,OAAO,OAAO,UAAU,KAAK,QAAQ;QACnC,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC;QAC5C,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;AACjB,CAAC;AAED,SAAS,UAAU,CAAC,OAAa,EAAE,UAA8B;IAC/D,OAAO,OAAO,UAAU,KAAK,QAAQ;QACnC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC;QAC1C,CAAC,CAAC,OAAO,CAAC;AACd,CAAC;AAED,SAAS,SAAS,CAAC,MAAc,EAAE,UAAkB;IACnD,OAAO,GAAG,MAAM,IAAI,UAAU,EAAE,CAAC;AACnC,CAAC;AAED,SAAS,aAAa,CACpB,KAAwD;IAExD,OAAO,QAAQ,IAAI,KAAK,IAAI,UAAU,IAAI,KAAK,IAAI,SAAS,IAAI,KAAK,CAAC;AACxE,CAAC;AAED,SAAS,gBAAgB,CAAC,OAA+B;IACvD,MAAM,IAAI,GAAG,OAAO;SACjB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,OAAO,EAAE,CAAC;QACjD,IAAK,IAA2B,CAAC,IAAI,KAAK,MAAM;YAAE,OAAO,EAAE,CAAC;QAC5D,OAAO,MAAM,CAAE,IAA2B,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IACzD,CAAC,CAAC;SACD,IAAI,CAAC,EAAE,CAAC,CAAC;IACZ,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IACtB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,UAAU,CACjB,KAAoC,EACpC,aAAsB;IAEtB,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,YAAY;YAC3C,CAAC,CAAC,EAAE,MAAM,EAAE,OAAgB,EAAE;YAC9B,CAAC,CAAC,EAAE,CAAC;IACT,CAAC;IACD,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QAC5C,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;IAC7C,CAAC;IACD,OAAO;QACL,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,KAAK;QAC7B,MAAM,EAAE,OAAgB;KACzB,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CACnB,KAAoC,EACpC,aAAsB;IAEtB,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAgB,EAAE,CAAC;IAC3D,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAClB,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;IAClC,CAAC;IACD,OAAO;QACL,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,MAAM,EAAE,OAAgB;KACzB,CAAC;AACJ,CAAC;AAED,SAAS,OAAO,CAAC,KAAsD;IACrE,IAAI,UAAU,IAAI,KAAK,IAAI,KAAK,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC,QAAQ,CAAC;IACjE,OAAO,QAAQ,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACtD,CAAC;AAED,SAAS,UAAU,CACjB,KAI+B;IAE/B,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,IAAI,UAAU,IAAI,KAAK,IAAI,KAAK,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC,QAAQ,CAAC;IACjE,IAAI,QAAQ,IAAI,KAAK;QAAE,OAAO,KAAK,CAAC,MAAM,CAAC;IAC3C,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,aAAa,CACpB,OAAmC,EACnC,KAOoB;IAEpB,OAAO;QACL,GAAG,OAAO,CAAC,QAAQ;QACnB,GAAG,CAAC,KAAK,IAAI,UAAU,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAChE,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAChB,OAAmC,EACnC,KAOoB;IAEpB,IAAI,OAAO,CAAC,SAAS;QAAE,OAAO,OAAO,CAAC,SAAS,CAAC;IAChD,MAAM,UAAU,GACd,KAAK,IAAI,YAAY,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ;QACpE,CAAC,CAAC,KAAK,CAAC,UAAU;QAClB,CAAC,CAAC,SAAS,CAAC;IAChB,OAAO,UAAU,IAAI,iBAAiB,CAAC;AACzC,CAAC;AAED,SAAS,eAAe,CACtB,KAAsD;IAEtD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAC7B,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAClD,CAAC;AAED,SAAS,QAAQ,CAAC,KAAwD;IACxE,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC,IAAI,CAAC;IACtD,IAAI,KAAK,CAAC,OAAO;QAAE,OAAO,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC1D,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAgB,QAAQ,CACtB,UAAsC,EAAE;IAExC,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC1B,MAAM,UAAU,GAAG,IAAI,GAAG,EAA2B,CAAC;IACtD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAwB,CAAC;IAChD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAwB,CAAC;IAChD,MAAM,QAAQ,GAAmB,EAAE,CAAC;IACpC,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC5D,MAAM,6BAA6B,GAAG,IAAI,GAAG,EAAkB,CAAC;IAChE,MAAM,cAAc,GAAG,IAAI,GAAG,EAA+B,CAAC;IAC9D,IAAI,YAAqC,CAAC;IAC1C,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,IAAI,kBAAkB,GAAG,KAAK,CAAC;IAC/B,IAAI,iBAAiB,GAAG,KAAK,CAAC;IAE9B,SAAS,QAAQ;QACf,KAAK,KAAK,IAAI,cAAK,CAAC;YAClB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAC,CAAC;QACH,OAAO,KAAK,CAAC;IACf,CAAC;IAED,SAAS,YAAY,CACnB,KAI+B;QAE/B,IAAI,OAAO,CAAC,KAAK;YAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;QACvE,IAAI,CAAC;YACH,OAAO,EAAE,KAAK,EAAE,IAAA,eAAM,GAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;QAC/C,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,YAAY,GAAG,QAAQ,EAAE,CAAC,KAAK,CAAC;oBAC9B,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC;oBAC/B,KAAK,EAAE,OAAO,CAAC,YAAY,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC;oBACrE,QAAQ,EAAE,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC;iBACxC,CAAC,CAAC;YACL,CAAC;YACD,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QACpD,CAAC;IACH,CAAC;IAED,SAAS,SAAS,CAAC,KAA+C;QAChE,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC,IAAI,CAAC;QACtD,IAAI,KAAK,CAAC,OAAO;YAAE,OAAO,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC1D,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,UAAU,aAAa,CAC1B,KAA+C;QAE/C,MAAM,KAAK,GAAG,OAAO,CAAC,KAIT,CAAC;QACd,IAAI,UAKS,CAAC;QACd,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;YAC7C,UAAU,GAAG,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QACzE,CAAC;aAAM,IAAI,YAAY,EAAE,CAAC;YACxB,UAAU,GAAG,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QACxD,CAAC;QACD,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;YACxB,IAAI,kBAAkB;gBAAE,OAAO;YAC/B,kBAAkB,GAAG,IAAI,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,IAAI,iBAAiB;gBAAE,OAAO;YAC9B,iBAAiB,GAAG,IAAI,CAAC;QAC3B,CAAC;QACD,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,OAAO,CAAC,aAAa,KAAK,KAAK,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAC5D,MAAM,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YAC7B,OAAO;QACT,CAAC;QACD,MAAM,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,SAAS,kBAAkB,CACzB,KAAwD,EACxD,MAAgC;QAEhC,MAAM,EAAE,KAAK,EAAE,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAE9C,MAAM,SAAS,GAAG,MAAM,EAAE,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC;QAClD,MAAM,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;QAC3B,MAAM,EAAE,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QAC/B,MAAM,IAAI,GACR,OAAO,OAAO,CAAC,cAAc,KAAK,UAAU;YAC1C,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC;YAC/B,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,IAAI,sBAAsB,CAAC,CAAC;QACzD,MAAM,KAAK,GAAG,YAAY,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;QACrE,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAE/B,MAAM,UAAU,GAAG;YACjB,IAAI;YACJ,KAAK,EACH,OAAO,CAAC,YAAY,KAAK,KAAK;gBAC5B,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,MAAM,EAAE,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;YAC5C,MAAM,EAAE,OAAO,CAAC,aAAa,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;YAC5D,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO;YAC1B,KAAK,EAAE;gBACL,WAAW,EAAE,KAAK,EAAE,WAAW;gBAC/B,YAAY,EAAE,KAAK,EAAE,YAAY;aAClC;YACD,SAAS;YACT,OAAO;YACP,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ;YACjC,gBAAgB,EACd,OAAO,CAAC,YAAY,KAAK,KAAK,IAAI,CAAC,MAAM,EAAE,KAAK;gBAC9C,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC;YACnC,iBAAiB,EACf,OAAO,CAAC,aAAa,KAAK,KAAK,IAAI,MAAM,KAAK,SAAS;gBACrD,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;YAC9C,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK;SAC9B,CAAC;QAEF,IAAI,MAAM,EAAE,MAAM,EAAE,CAAC;YACnB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC9B,yBAAyB,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC7D,OAAO;QACT,CAAC;QAED,KAAK,CAAC,gBAAgB,CAAC;YACrB,EAAE;YACF,GAAG,UAAU;SACd,CAAC,CAAC;QACH,yBAAyB,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,SAAS,iBAAiB,CAAC,KAA6B;QACtD,MAAM,EAAE,KAAK,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QAEtC,MAAM,IAAI,GACR,OAAO,OAAO,CAAC,cAAc,KAAK,UAAU;YAC1C,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;gBACrB,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,KAAK,EAAE,EAAE;gBACT,OAAO,EAAE,EAAE;gBACX,WAAW,EAAE,EAAE;aAChB,CAAC;YACJ,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,IAAI,sBAAsB,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,KAAK,CAAC,eAAe,CAAC;YACnC,IAAI;YACJ,KAAK,EAAE,OAAO,CAAC,YAAY,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ;YAClE,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,KAAK,EAAE,KAAK,CAAC,OAAO;YACpB,SAAS;YACT,WAAW,EAAE,KAAK,CAAC,QAAQ;YAC3B,gBAAgB,EACd,OAAO,CAAC,YAAY,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ;YAC7D,QAAQ,EAAE,KAAK,CAAC,KAAK;SACtB,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC;QAC/D,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,SAAS,iBAAiB,CACxB,KAAsD;QAEtD,MAAM,EAAE,KAAK,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QACtC,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAC7B,MAAM,IAAI,GACR,OAAO,OAAO,CAAC,cAAc,KAAK,UAAU;YAC1C,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;gBACrB,UAAU,EAAE,YAAY,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBACxD,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,KAAK,EAAE,EAAE;aACV,CAAC;YACJ,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,IAAI,sBAAsB,CAAC,CAAC;QACzD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAC7B,MAAM,MAAM,GAAG,KAAK,CAAC,eAAe,CAAC;YACnC,IAAI;YACJ,KAAK,EAAE,OAAO,CAAC,YAAY,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK;YACzD,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO;YAC1B,SAAS;YACT,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ;YACjC,gBAAgB,EACd,OAAO,CAAC,YAAY,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC;YACrE,QAAQ,EAAE,KAAK,CAAC,KAAK;SACtB,CAAC,CAAC;QAEH,yBAAyB,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QACtD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IACtC,CAAC;IAED,SAAS,eAAe,CAAC,KAA2B;QAClD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;QACtE,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM;YAAE,OAAO;QAEpB,MAAM,UAAU,GACd,KAAK,CAAC,WAAW,EAAE,UAAU,IAAI,KAAK,CAAC,WAAW,EAAE,cAAc,CAAC;QACrE,MAAM,MAAM,GACV,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;YAC5B,CAAC,CAAC,KAAK,CAAC,IAAI;YACZ,CAAC,CAAC,KAAK,CAAC,OAAO;gBACb,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC;gBACjC,CAAC,CAAC,SAAS,CAAC;QAElB,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;YAC7C,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;gBACxB,6BAA6B,CAAC,GAAG,CAC/B,QAAQ,CAAC,UAAU,EACnB,MAAM,CAAC,MAAM,CAAC,EAAE,CACjB,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC;YAChB,MAAM,EAAE,OAAO,CAAC,aAAa,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;YAC5D,KAAK,EAAE;gBACL,WAAW,EAAE,KAAK,CAAC,KAAK,EAAE,WAAW;gBACrC,YAAY,EAAE,KAAK,CAAC,KAAK,EAAE,YAAY;aACxC;YACD,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO;YAC1B,UAAU;YACV,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC;YAC5C,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ;YACjC,iBAAiB,EACf,OAAO,CAAC,aAAa,KAAK,KAAK,IAAI,MAAM,KAAK,SAAS;gBACrD,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;SAC/C,CAAC,CAAC;IACL,CAAC;IAED,OAAO;QACL,wBAAwB,CAAC,KAAK;YAC5B,MAAM,EAAE,KAAK,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;YACtC,IAAI,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;gBAChD,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC/D,OAAO;YACT,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;YAC7B,MAAM,IAAI,GACR,OAAO,OAAO,CAAC,cAAc,KAAK,UAAU;gBAC1C,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;oBACrB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,KAAK,EAAE,EAAE;oBACT,OAAO,EAAE,EAAE;oBACX,WAAW,EAAE,EAAE;iBAChB,CAAC;gBACJ,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,IAAI,sBAAsB,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,KAAK,CAAC,eAAe,CAAC;gBACnC,IAAI;gBACJ,KAAK,EAAE,OAAO,CAAC,YAAY,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ;gBAClE,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,KAAK,EAAE,KAAK,CAAC,OAAO;gBACpB,SAAS;gBACT,WAAW,EAAE,KAAK,CAAC,QAAQ;gBAC3B,gBAAgB,EACd,OAAO,CAAC,YAAY,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ;gBAC7D,QAAQ,EAAE,KAAK,CAAC,KAAK;aACtB,CAAC,CAAC;YAEH,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;YAC3D,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QACzD,CAAC;QAED,sBAAsB,CAAC,KAAK;YAC1B,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC5C,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAChC,IAAI,CAAC,MAAM,EAAE,MAAM;gBAAE,OAAO;YAE5B,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC;gBAChB,MAAM,EACJ,OAAO,CAAC,aAAa,KAAK,KAAK;oBAC7B,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC;gBACrC,KAAK,EAAE;oBACL,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW;oBACpC,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,YAAY;iBACvC;gBACD,KAAK,EAAE,KAAK,CAAC,OAAO;gBACpB,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,cAAc;gBAC5C,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC,cAAc,CAAC;gBAClE,WAAW,EAAE,KAAK,CAAC,QAAQ;gBAC3B,iBAAiB,EACf,OAAO,CAAC,aAAa,KAAK,KAAK;oBAC7B,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;aACxE,CAAC,CAAC;QACL,CAAC;QAED,oBAAoB,CAAC,KAAK;YACxB,MAAM,EAAE,KAAK,EAAE,GAAG,YAAY,EAAE,CAAC;YAEjC,MAAM,QAAQ,GACZ,KAAK,CAAC,QAAQ,CAAC,UAAU;gBACzB,6BAA6B,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAC/D,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM;gBACnC,CAAC,CAAC,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC;gBAC7C,CAAC,CAAC,yBAAyB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAC/C,MAAM,IAAI,GACR,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;gBACpC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;oBACf,GAAG,KAAK;oBACR,eAAe,EAAE,SAAS;oBAC1B,UAAU,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE;iBACpC,CAAC;gBACJ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACpD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;gBAC7B,IAAI;gBACJ,QAAQ,EAAE,QAAQ,IAAI,gBAAgB;gBACtC,KAAK,EACH,OAAO,CAAC,YAAY,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK;gBACnE,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,SAAS;aACV,CAAC,CAAC;YAEH,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;gBAC9B,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;QAED,eAAe,CAAC,KAAK;YACnB,IAAI,CAAC,oBAAoB,EAAE,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC;QAED,kBAAkB,CAAC,KAAK;YACtB,MAAM,EAAE,KAAK,EAAE,GAAG,YAAY,EAAE,CAAC;YAEjC,MAAM,IAAI,GACR,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;gBACpC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;gBACzB,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACpD,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU;gBAC1C,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAC/C,CAAC,CAAC,SAAS,CAAC;YACd,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;gBAC9B,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACnD,CAAC;YAED,IAAI,UAAU,EAAE,CAAC;gBACf,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC;oBACpB,UAAU,EAAE,KAAK,CAAC,eAAe;oBACjC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,eAAe,CAAC;oBAC3D,GAAG,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,aAAa,KAAK,KAAK,CAAC;iBACtD,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,MAAM,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;YAC7D,MAAM,QAAQ,GACZ,KAAK,CAAC,QAAQ,CAAC,UAAU;gBACzB,6BAA6B,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAC/D,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM;gBACnC,CAAC,CAAC,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC;gBAC7C,CAAC,CAAC,yBAAyB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAE/C,KAAK,CAAC,UAAU,CAAC;gBACf,IAAI;gBACJ,QAAQ,EAAE,QAAQ,IAAI,gBAAgB;gBACtC,KAAK,EACH,OAAO,CAAC,YAAY,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK;gBACnE,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,UAAU,EAAE,KAAK,CAAC,eAAe;gBACjC,SAAS;gBACT,OAAO;gBACP,GAAG,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,aAAa,KAAK,KAAK,CAAC;aACtD,CAAC,CAAC;QACL,CAAC;QAED,OAAO,CAAC,KAAK;YACX,cAAc,GAAG,KAAK,CAAC;YACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;YAChD,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;QAED,WAAW,CAAC,KAAK;YACf,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBACzB,OAAO;YACT,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1D,CAAC;QAED,SAAS,CAAC,KAAK;YACb,eAAe,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC;QAED,YAAY,CAAC,KAAK;YAChB,cAAc,GAAG,IAAI,CAAC;YACtB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC7C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACjC,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACpC,CAAC;QAED,KAAK,CAAC,QAAQ,CAAC,KAAK;YAClB,IAAI,cAAc,EAAE,CAAC;gBACnB,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACjB,cAAc,GAAG,KAAK,CAAC;gBACvB,MAAM,aAAa,CAAC,KAAK,CAAC,CAAC;gBAC3B,OAAO;YACT,CAAC;YACD,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;YAC5C,MAAM,aAAa,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;QAED,KAAK,CAAC,KAAK,CAAC,KAAK;YACf,MAAM,aAAa,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;QAED,gBAAgB,CAAC,KAAK;YACpB,MAAM,EAAE,KAAK,EAAE,GAAG,YAAY,EAAE,CAAC;YAEjC,MAAM,IAAI,GACR,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;gBACpC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;gBACzB,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACpD,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU;gBAC1C,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAC/C,CAAC,CAAC,SAAS,CAAC;YACd,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;gBAC9B,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACnD,CAAC;YACD,IAAI,UAAU,EAAE,CAAC;gBACf,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC;oBACpB,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC5B,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC;oBACtD,GAAG,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,aAAa,KAAK,KAAK,CAAC;iBACxD,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,MAAM,QAAQ,GACZ,KAAK,CAAC,QAAQ,CAAC,UAAU;gBACzB,6BAA6B,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAE/D,KAAK,CAAC,UAAU,CAAC;gBACf,IAAI;gBACJ,QAAQ,EAAE,QAAQ,IAAI,yBAAyB,CAAC,GAAG,CAAC,WAAW,CAAC;gBAChE,KAAK,EACH,OAAO,CAAC,YAAY,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK;gBACnE,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,GAAG,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,aAAa,KAAK,KAAK,CAAC;aACxD,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { generateText } from "ai";
2
- import { Lemma, vercelAI } from "@uselemma/tracing";
2
+ import { vercelAI } from "@uselemma/tracing";
3
3
 
4
- const lemma = new Lemma({
4
+ const lemmaTelemetry = vercelAI({
5
5
  apiKey: process.env.LEMMA_API_KEY,
6
6
  projectId: process.env.LEMMA_PROJECT_ID,
7
7
  });
@@ -10,16 +10,12 @@ export async function runVercelAIV6(
10
10
  model: Parameters<typeof generateText>[0]["model"],
11
11
  userMessage: string,
12
12
  ) {
13
- const trace = lemma.trace({
14
- name: "support-agent",
15
- input: userMessage,
16
- });
17
-
18
13
  const result = await generateText({
19
14
  model,
20
15
  prompt: userMessage,
21
16
  experimental_telemetry: {
22
- integrations: [vercelAI({ trace })],
17
+ functionId: "support-agent",
18
+ integrations: [lemmaTelemetry],
23
19
  },
24
20
  });
25
21
 
@@ -1,7 +1,7 @@
1
1
  import { generateText } from "ai";
2
- import { Lemma, vercelAI } from "@uselemma/tracing";
2
+ import { vercelAI } from "@uselemma/tracing";
3
3
 
4
- const lemma = new Lemma({
4
+ const lemmaTelemetry = vercelAI({
5
5
  apiKey: process.env.LEMMA_API_KEY,
6
6
  projectId: process.env.LEMMA_PROJECT_ID,
7
7
  });
@@ -10,16 +10,12 @@ export async function runVercelAIV7(
10
10
  model: Parameters<typeof generateText>[0]["model"],
11
11
  userMessage: string,
12
12
  ) {
13
- const trace = lemma.trace({
14
- name: "support-agent",
15
- input: userMessage,
16
- });
17
-
18
13
  const result = await generateText({
19
14
  model,
20
15
  prompt: userMessage,
21
16
  telemetry: {
22
- integrations: [vercelAI({ trace })],
17
+ functionId: "support-agent",
18
+ integrations: [lemmaTelemetry],
23
19
  },
24
20
  });
25
21
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uselemma/tracing",
3
- "version": "4.1.0",
3
+ "version": "4.2.0",
4
4
  "description": "HTTP tracing SDK for Lemma",
5
5
  "license": "MIT",
6
6
  "author": "Lemma",