ai-functions 2.1.1 → 2.3.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/.turbo/turbo-build.log +1 -4
- package/CHANGELOG.md +68 -1
- package/README.md +397 -157
- package/dist/ai-promise.d.ts +50 -3
- package/dist/ai-promise.d.ts.map +1 -1
- package/dist/ai-promise.js +410 -51
- package/dist/ai-promise.js.map +1 -1
- package/dist/ai-schemas.d.ts +56 -0
- package/dist/ai-schemas.d.ts.map +1 -0
- package/dist/ai-schemas.js +53 -0
- package/dist/ai-schemas.js.map +1 -0
- package/dist/ai.d.ts +16 -242
- package/dist/ai.d.ts.map +1 -1
- package/dist/ai.js +54 -837
- package/dist/ai.js.map +1 -1
- package/dist/batch/anthropic.d.ts +6 -4
- package/dist/batch/anthropic.d.ts.map +1 -1
- package/dist/batch/anthropic.js +83 -145
- package/dist/batch/anthropic.js.map +1 -1
- package/dist/batch/bedrock.d.ts +8 -30
- package/dist/batch/bedrock.d.ts.map +1 -1
- package/dist/batch/bedrock.js +155 -338
- package/dist/batch/bedrock.js.map +1 -1
- package/dist/batch/cloudflare.d.ts +8 -20
- package/dist/batch/cloudflare.d.ts.map +1 -1
- package/dist/batch/cloudflare.js +68 -189
- package/dist/batch/cloudflare.js.map +1 -1
- package/dist/batch/google.d.ts +6 -20
- package/dist/batch/google.d.ts.map +1 -1
- package/dist/batch/google.js +70 -238
- package/dist/batch/google.js.map +1 -1
- package/dist/batch/index.d.ts +4 -1
- package/dist/batch/index.d.ts.map +1 -1
- package/dist/batch/index.js +4 -1
- package/dist/batch/index.js.map +1 -1
- package/dist/batch/memory.d.ts +1 -1
- package/dist/batch/memory.d.ts.map +1 -1
- package/dist/batch/memory.js +14 -10
- package/dist/batch/memory.js.map +1 -1
- package/dist/batch/openai.d.ts +11 -14
- package/dist/batch/openai.d.ts.map +1 -1
- package/dist/batch/openai.js +52 -156
- package/dist/batch/openai.js.map +1 -1
- package/dist/batch/provider.d.ts +111 -0
- package/dist/batch/provider.d.ts.map +1 -0
- package/dist/batch/provider.js +233 -0
- package/dist/batch/provider.js.map +1 -0
- package/dist/batch-map.d.ts.map +1 -1
- package/dist/batch-map.js +23 -17
- package/dist/batch-map.js.map +1 -1
- package/dist/batch-queue.d.ts +65 -0
- package/dist/batch-queue.d.ts.map +1 -1
- package/dist/batch-queue.js +169 -14
- package/dist/batch-queue.js.map +1 -1
- package/dist/budget.d.ts +272 -0
- package/dist/budget.d.ts.map +1 -0
- package/dist/budget.js +513 -0
- package/dist/budget.js.map +1 -0
- package/dist/cache.d.ts +295 -0
- package/dist/cache.d.ts.map +1 -0
- package/dist/cache.js +433 -0
- package/dist/cache.js.map +1 -0
- package/dist/context.d.ts +42 -8
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +64 -62
- package/dist/context.js.map +1 -1
- package/dist/digital-objects-registry.d.ts +229 -0
- package/dist/digital-objects-registry.d.ts.map +1 -0
- package/dist/digital-objects-registry.js +617 -0
- package/dist/digital-objects-registry.js.map +1 -0
- package/dist/embeddings.d.ts +2 -2
- package/dist/embeddings.d.ts.map +1 -1
- package/dist/errors.d.ts +22 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +35 -0
- package/dist/errors.js.map +1 -0
- package/dist/eval/runner.d.ts +10 -1
- package/dist/eval/runner.d.ts.map +1 -1
- package/dist/eval/runner.js +41 -35
- package/dist/eval/runner.js.map +1 -1
- package/dist/eval-log/in-memory.d.ts +34 -0
- package/dist/eval-log/in-memory.d.ts.map +1 -0
- package/dist/eval-log/in-memory.js +84 -0
- package/dist/eval-log/in-memory.js.map +1 -0
- package/dist/eval-log/index.d.ts +29 -0
- package/dist/eval-log/index.d.ts.map +1 -0
- package/dist/eval-log/index.js +39 -0
- package/dist/eval-log/index.js.map +1 -0
- package/dist/eval-log/types.d.ts +101 -0
- package/dist/eval-log/types.d.ts.map +1 -0
- package/dist/eval-log/types.js +16 -0
- package/dist/eval-log/types.js.map +1 -0
- package/dist/function-registry.d.ts +116 -0
- package/dist/function-registry.d.ts.map +1 -0
- package/dist/function-registry.js +546 -0
- package/dist/function-registry.js.map +1 -0
- package/dist/generate.d.ts +9 -3
- package/dist/generate.d.ts.map +1 -1
- package/dist/generate.js +18 -22
- package/dist/generate.js.map +1 -1
- package/dist/index.d.ts +35 -20
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +89 -42
- package/dist/index.js.map +1 -1
- package/dist/logger.d.ts +118 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/logger.js +187 -0
- package/dist/logger.js.map +1 -0
- package/dist/middleware/budget.d.ts +84 -0
- package/dist/middleware/budget.d.ts.map +1 -0
- package/dist/middleware/budget.js +110 -0
- package/dist/middleware/budget.js.map +1 -0
- package/dist/middleware/cache.d.ts +103 -0
- package/dist/middleware/cache.d.ts.map +1 -0
- package/dist/middleware/cache.js +228 -0
- package/dist/middleware/cache.js.map +1 -0
- package/dist/middleware/embed-cache.d.ts +99 -0
- package/dist/middleware/embed-cache.d.ts.map +1 -0
- package/dist/middleware/embed-cache.js +128 -0
- package/dist/middleware/embed-cache.js.map +1 -0
- package/dist/middleware/index.d.ts +11 -0
- package/dist/middleware/index.d.ts.map +1 -0
- package/dist/middleware/index.js +11 -0
- package/dist/middleware/index.js.map +1 -0
- package/dist/middleware/trace.d.ts +103 -0
- package/dist/middleware/trace.d.ts.map +1 -0
- package/dist/middleware/trace.js +176 -0
- package/dist/middleware/trace.js.map +1 -0
- package/dist/primitives.d.ts +120 -1
- package/dist/primitives.d.ts.map +1 -1
- package/dist/primitives.js +398 -26
- package/dist/primitives.js.map +1 -1
- package/dist/retry.d.ts +368 -0
- package/dist/retry.d.ts.map +1 -0
- package/dist/retry.js +646 -0
- package/dist/retry.js.map +1 -0
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +2 -10
- package/dist/schema.js.map +1 -1
- package/dist/telemetry.d.ts +128 -0
- package/dist/telemetry.d.ts.map +1 -0
- package/dist/telemetry.js +285 -0
- package/dist/telemetry.js.map +1 -0
- package/dist/template.d.ts.map +1 -1
- package/dist/template.js +6 -1
- package/dist/template.js.map +1 -1
- package/dist/tool-orchestration.d.ts +453 -0
- package/dist/tool-orchestration.d.ts.map +1 -0
- package/dist/tool-orchestration.js +763 -0
- package/dist/tool-orchestration.js.map +1 -0
- package/dist/type-guards.d.ts +28 -0
- package/dist/type-guards.d.ts.map +1 -0
- package/dist/type-guards.js +29 -0
- package/dist/type-guards.js.map +1 -0
- package/dist/types.d.ts +135 -17
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +36 -1
- package/dist/types.js.map +1 -1
- package/dist/wrap-for-v3.d.ts +80 -0
- package/dist/wrap-for-v3.d.ts.map +1 -0
- package/dist/wrap-for-v3.js +89 -0
- package/dist/wrap-for-v3.js.map +1 -0
- package/examples/00-quickstart.ts +232 -0
- package/examples/01-rag-chatbot.ts +212 -0
- package/examples/02-multi-agent-research.ts +290 -0
- package/examples/03-email-classification.ts +379 -0
- package/examples/04-content-moderation.ts +400 -0
- package/examples/05-document-extraction.ts +455 -0
- package/examples/06-streaming-chat-nextjs.ts +437 -0
- package/examples/07-cloudflare-worker.ts +483 -0
- package/examples/08-batch-processing.ts +491 -0
- package/examples/09-budget-constrained.ts +527 -0
- package/examples/10-tool-orchestration.ts +565 -0
- package/examples/11-retry-resilience.ts +403 -0
- package/examples/12-caching-strategies.ts +422 -0
- package/examples/README.md +145 -0
- package/package.json +10 -6
- package/src/ai-promise.ts +528 -99
- package/src/ai-schemas.ts +122 -0
- package/src/ai.ts +69 -1153
- package/src/batch/anthropic.ts +96 -161
- package/src/batch/bedrock.ts +203 -454
- package/src/batch/cloudflare.ts +99 -282
- package/src/batch/google.ts +91 -297
- package/src/batch/index.ts +4 -1
- package/src/batch/memory.ts +15 -10
- package/src/batch/openai.ts +65 -193
- package/src/batch/provider.ts +336 -0
- package/src/batch-map.ts +29 -24
- package/src/batch-queue.ts +200 -11
- package/src/budget.ts +740 -0
- package/src/cache.ts +681 -0
- package/src/context.ts +122 -76
- package/src/digital-objects-registry.ts +750 -0
- package/src/errors.ts +37 -0
- package/src/eval/runner.ts +63 -38
- package/src/eval-log/in-memory.ts +90 -0
- package/src/eval-log/index.ts +46 -0
- package/src/eval-log/types.ts +110 -0
- package/src/function-registry.ts +671 -0
- package/src/generate.ts +33 -33
- package/src/index.ts +325 -49
- package/src/logger.ts +232 -0
- package/src/middleware/budget.ts +171 -0
- package/src/middleware/cache.ts +299 -0
- package/src/middleware/embed-cache.ts +195 -0
- package/src/middleware/index.ts +23 -0
- package/src/middleware/trace.ts +248 -0
- package/src/primitives.ts +589 -62
- package/src/retry.ts +902 -0
- package/src/schema.ts +8 -17
- package/src/telemetry.ts +403 -0
- package/src/template.ts +8 -4
- package/src/tool-orchestration.ts +1173 -0
- package/src/type-guards.ts +31 -0
- package/src/types.ts +164 -25
- package/src/wrap-for-v3.ts +105 -0
- package/test/ai-promise.test.ts +1080 -0
- package/test/ai-proxy.test.ts +1 -1
- package/test/backward-compat.test.ts +147 -0
- package/test/batch-autosubmit-errors.test.ts +610 -0
- package/test/batch-blog-posts.test.ts +87 -129
- package/test/budget-tracking.test.ts +800 -0
- package/test/cache.test.ts +712 -0
- package/test/context-isolation.test.ts +687 -0
- package/test/core-functions.test.ts +183 -579
- package/test/decide.test.ts +154 -322
- package/test/define.test.ts +211 -8
- package/test/digital-objects-registry.test.ts +760 -0
- package/test/embedding-cache-middleware.test.ts +140 -0
- package/test/evals/deterministic.eval.test.ts +376 -0
- package/test/generate-core.test.ts +140 -229
- package/test/implicit-batch.test.ts +22 -65
- package/test/json-parse-error-handling.test.ts +463 -0
- package/test/retry-policy-integration.test.ts +117 -0
- package/test/retry.test.ts +1016 -0
- package/test/schema.test.ts +55 -19
- package/test/streaming.test.ts +316 -0
- package/test/template.test.ts +1164 -0
- package/test/tool-orchestration.test.ts +1040 -0
- package/test/wrap-for-v3.test.ts +612 -0
- package/vitest.config.js +6 -0
- package/vitest.config.ts +20 -0
- package/dist/rpc/auth.d.ts +0 -69
- package/dist/rpc/auth.d.ts.map +0 -1
- package/dist/rpc/auth.js +0 -136
- package/dist/rpc/auth.js.map +0 -1
- package/dist/rpc/client.d.ts +0 -62
- package/dist/rpc/client.d.ts.map +0 -1
- package/dist/rpc/client.js +0 -103
- package/dist/rpc/client.js.map +0 -1
- package/dist/rpc/deferred.d.ts +0 -60
- package/dist/rpc/deferred.d.ts.map +0 -1
- package/dist/rpc/deferred.js +0 -96
- package/dist/rpc/deferred.js.map +0 -1
- package/dist/rpc/index.d.ts +0 -22
- package/dist/rpc/index.d.ts.map +0 -1
- package/dist/rpc/index.js +0 -38
- package/dist/rpc/index.js.map +0 -1
- package/dist/rpc/local.d.ts +0 -42
- package/dist/rpc/local.d.ts.map +0 -1
- package/dist/rpc/local.js +0 -50
- package/dist/rpc/local.js.map +0 -1
- package/dist/rpc/server.d.ts +0 -165
- package/dist/rpc/server.d.ts.map +0 -1
- package/dist/rpc/server.js +0 -405
- package/dist/rpc/server.js.map +0 -1
- package/dist/rpc/session.d.ts +0 -32
- package/dist/rpc/session.d.ts.map +0 -1
- package/dist/rpc/session.js +0 -43
- package/dist/rpc/session.js.map +0 -1
- package/dist/rpc/transport.d.ts +0 -306
- package/dist/rpc/transport.d.ts.map +0 -1
- package/dist/rpc/transport.js +0 -731
- package/dist/rpc/transport.js.map +0 -1
- package/src/batch/anthropic.js +0 -256
- package/src/batch/bedrock.js +0 -584
- package/src/batch/cloudflare.js +0 -287
- package/src/batch/google.js +0 -359
- package/src/batch/index.js +0 -30
- package/src/batch/memory.js +0 -187
- package/src/batch/openai.js +0 -402
- package/src/eval/index.js +0 -7
- package/src/eval/models.js +0 -119
- package/src/eval/runner.js +0 -147
- package/test/schema.test.js +0 -96
package/dist/primitives.js
CHANGED
|
@@ -32,6 +32,7 @@
|
|
|
32
32
|
*/
|
|
33
33
|
import { AIPromise, createAITemplateFunction, parseTemplateWithDependencies, isAIPromise, } from './ai-promise.js';
|
|
34
34
|
import { generateObject, generateText } from './generate.js';
|
|
35
|
+
import { createDefinedFunction, defineFunction, functions, generateCode, } from './function-registry.js';
|
|
35
36
|
// ============================================================================
|
|
36
37
|
// Core generate() primitive
|
|
37
38
|
// ============================================================================
|
|
@@ -70,12 +71,25 @@ export async function generate(type, prompt, options) {
|
|
|
70
71
|
}
|
|
71
72
|
// Helper functions
|
|
72
73
|
async function generateTextContent(prompt, model, options) {
|
|
73
|
-
const result = await generateText({
|
|
74
|
+
const result = await generateText({
|
|
75
|
+
model,
|
|
76
|
+
prompt,
|
|
77
|
+
...(options.system !== undefined && { system: options.system }),
|
|
78
|
+
...(options.temperature !== undefined && { temperature: options.temperature }),
|
|
79
|
+
...(options.maxTokens !== undefined && { maxTokens: options.maxTokens }),
|
|
80
|
+
});
|
|
74
81
|
return result.text;
|
|
75
82
|
}
|
|
76
83
|
async function generateJsonContent(prompt, model, schema, options) {
|
|
77
84
|
const effectiveSchema = schema || { result: 'The generated result' };
|
|
78
|
-
const result = await generateObject({
|
|
85
|
+
const result = await generateObject({
|
|
86
|
+
model,
|
|
87
|
+
schema: effectiveSchema,
|
|
88
|
+
prompt,
|
|
89
|
+
...(options.system !== undefined && { system: options.system }),
|
|
90
|
+
...(options.temperature !== undefined && { temperature: options.temperature }),
|
|
91
|
+
...(options.maxTokens !== undefined && { maxTokens: options.maxTokens }),
|
|
92
|
+
});
|
|
79
93
|
return result.object;
|
|
80
94
|
}
|
|
81
95
|
async function generateCodeContent(prompt, model, language, options) {
|
|
@@ -84,8 +98,8 @@ async function generateCodeContent(prompt, model, language, options) {
|
|
|
84
98
|
schema: { code: `The ${language} implementation code` },
|
|
85
99
|
prompt: `Generate ${language} code for: ${prompt}`,
|
|
86
100
|
system: `You are an expert ${language} developer. Generate clean, well-documented code.`,
|
|
87
|
-
temperature: options.temperature,
|
|
88
|
-
maxTokens: options.maxTokens,
|
|
101
|
+
...(options.temperature !== undefined && { temperature: options.temperature }),
|
|
102
|
+
...(options.maxTokens !== undefined && { maxTokens: options.maxTokens }),
|
|
89
103
|
});
|
|
90
104
|
return result.object.code;
|
|
91
105
|
}
|
|
@@ -95,8 +109,8 @@ async function generateListContent(prompt, model, options) {
|
|
|
95
109
|
schema: { items: ['List items'] },
|
|
96
110
|
prompt,
|
|
97
111
|
system: options.system || 'Generate a list of items based on the prompt.',
|
|
98
|
-
temperature: options.temperature,
|
|
99
|
-
maxTokens: options.maxTokens,
|
|
112
|
+
...(options.temperature !== undefined && { temperature: options.temperature }),
|
|
113
|
+
...(options.maxTokens !== undefined && { maxTokens: options.maxTokens }),
|
|
100
114
|
});
|
|
101
115
|
return result.object.items;
|
|
102
116
|
}
|
|
@@ -108,9 +122,10 @@ async function generateListsContent(prompt, model, options) {
|
|
|
108
122
|
data: 'JSON string containing the categorized lists',
|
|
109
123
|
},
|
|
110
124
|
prompt: `Generate categorized lists for: ${prompt}\n\nFirst identify appropriate category names, then provide the lists as a JSON object.`,
|
|
111
|
-
system: options.system ||
|
|
112
|
-
|
|
113
|
-
|
|
125
|
+
system: options.system ||
|
|
126
|
+
'Generate multiple categorized lists. Determine appropriate categories based on the prompt.',
|
|
127
|
+
...(options.temperature !== undefined && { temperature: options.temperature }),
|
|
128
|
+
...(options.maxTokens !== undefined && { maxTokens: options.maxTokens }),
|
|
114
129
|
});
|
|
115
130
|
const obj = result.object;
|
|
116
131
|
try {
|
|
@@ -131,7 +146,7 @@ async function generateBooleanContent(prompt, model, options) {
|
|
|
131
146
|
prompt,
|
|
132
147
|
system: options.system || 'Answer the question with true or false.',
|
|
133
148
|
temperature: options.temperature ?? 0,
|
|
134
|
-
maxTokens: options.maxTokens,
|
|
149
|
+
...(options.maxTokens !== undefined && { maxTokens: options.maxTokens }),
|
|
135
150
|
});
|
|
136
151
|
return result.object.answer === 'true';
|
|
137
152
|
}
|
|
@@ -141,24 +156,31 @@ async function generateSummaryContent(prompt, model, options) {
|
|
|
141
156
|
schema: { summary: 'A concise summary of the content' },
|
|
142
157
|
prompt: `Summarize the following:\n\n${prompt}`,
|
|
143
158
|
system: options.system || 'Create a clear, concise summary.',
|
|
144
|
-
temperature: options.temperature,
|
|
145
|
-
maxTokens: options.maxTokens,
|
|
159
|
+
...(options.temperature !== undefined && { temperature: options.temperature }),
|
|
160
|
+
...(options.maxTokens !== undefined && { maxTokens: options.maxTokens }),
|
|
146
161
|
});
|
|
147
162
|
return result.object.summary;
|
|
148
163
|
}
|
|
149
164
|
async function generateExtractContent(prompt, model, schema, options) {
|
|
150
|
-
const effectiveSchema = schema || {
|
|
165
|
+
const effectiveSchema = schema || {
|
|
166
|
+
items: ['Array of extracted items as strings - extract ALL matching items from the text'],
|
|
167
|
+
};
|
|
151
168
|
const result = await generateObject({
|
|
152
169
|
model,
|
|
153
170
|
schema: effectiveSchema,
|
|
154
|
-
prompt: `Extract from the
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
171
|
+
prompt: `Extract the following from the text below. Return ALL matching items in the items array.
|
|
172
|
+
|
|
173
|
+
Task: ${prompt}
|
|
174
|
+
|
|
175
|
+
IMPORTANT: Return the extracted items as an array. If the task asks for email addresses, return all email addresses found. If it asks for names, return all names found. Do not return an empty array if there are items to extract.`,
|
|
176
|
+
system: options.system ||
|
|
177
|
+
'You are a precise data extraction assistant. Extract exactly what is requested and return it as an array of items. Be thorough - find ALL matching items in the text.',
|
|
178
|
+
temperature: options.temperature ?? 0, // Use low temperature for extraction tasks
|
|
179
|
+
...(options.maxTokens !== undefined && { maxTokens: options.maxTokens }),
|
|
158
180
|
});
|
|
159
181
|
const obj = result.object;
|
|
160
|
-
if ('items' in obj && Array.isArray(obj
|
|
161
|
-
return obj
|
|
182
|
+
if ('items' in obj && Array.isArray(obj['items'])) {
|
|
183
|
+
return obj['items'];
|
|
162
184
|
}
|
|
163
185
|
return Object.values(obj).flat();
|
|
164
186
|
}
|
|
@@ -168,8 +190,8 @@ async function generateYamlContent(prompt, model, options) {
|
|
|
168
190
|
schema: { yaml: 'The YAML content' },
|
|
169
191
|
prompt: `Generate YAML for: ${prompt}`,
|
|
170
192
|
system: options.system || 'Generate valid YAML content.',
|
|
171
|
-
temperature: options.temperature,
|
|
172
|
-
maxTokens: options.maxTokens,
|
|
193
|
+
...(options.temperature !== undefined && { temperature: options.temperature }),
|
|
194
|
+
...(options.maxTokens !== undefined && { maxTokens: options.maxTokens }),
|
|
173
195
|
});
|
|
174
196
|
return result.object.yaml;
|
|
175
197
|
}
|
|
@@ -179,8 +201,8 @@ async function generateDiagramContent(prompt, model, format, options) {
|
|
|
179
201
|
schema: { diagram: `The ${format} diagram code` },
|
|
180
202
|
prompt: `Generate a ${format} diagram for: ${prompt}`,
|
|
181
203
|
system: options.system || `Generate ${format} diagram syntax.`,
|
|
182
|
-
temperature: options.temperature,
|
|
183
|
-
maxTokens: options.maxTokens,
|
|
204
|
+
...(options.temperature !== undefined && { temperature: options.temperature }),
|
|
205
|
+
...(options.maxTokens !== undefined && { maxTokens: options.maxTokens }),
|
|
184
206
|
});
|
|
185
207
|
return result.object.diagram;
|
|
186
208
|
}
|
|
@@ -190,8 +212,8 @@ async function generateSlidesContent(prompt, model, slideCount, options) {
|
|
|
190
212
|
schema: { slides: `Slidev/Marp markdown with ${slideCount} slides` },
|
|
191
213
|
prompt: `Generate a ${slideCount}-slide presentation about: ${prompt}`,
|
|
192
214
|
system: options.system || 'Generate markdown slides in Slidev/Marp format.',
|
|
193
|
-
temperature: options.temperature,
|
|
194
|
-
maxTokens: options.maxTokens,
|
|
215
|
+
...(options.temperature !== undefined && { temperature: options.temperature }),
|
|
216
|
+
...(options.maxTokens !== undefined && { maxTokens: options.maxTokens }),
|
|
195
217
|
});
|
|
196
218
|
return result.object.slides;
|
|
197
219
|
}
|
|
@@ -459,7 +481,7 @@ export function decide(criteriaOrStrings, ...templateArgs) {
|
|
|
459
481
|
// Override resolve to return the actual option
|
|
460
482
|
const originalResolve = promise.resolve.bind(promise);
|
|
461
483
|
promise.resolve = async () => {
|
|
462
|
-
const result = await originalResolve();
|
|
484
|
+
const result = (await originalResolve());
|
|
463
485
|
const index = typeof result.chosenIndex === 'string'
|
|
464
486
|
? parseInt(result.chosenIndex, 10)
|
|
465
487
|
: result.chosenIndex;
|
|
@@ -486,4 +508,354 @@ export const approve = createAITemplateFunction('object', {
|
|
|
486
508
|
export const review = createAITemplateFunction('object', {
|
|
487
509
|
system: 'Generate a review request.',
|
|
488
510
|
});
|
|
511
|
+
// ============================================================================
|
|
512
|
+
// Auto-Define Functions
|
|
513
|
+
//
|
|
514
|
+
// Inlined from former ai-proxy.ts. These helpers provide the auto-define
|
|
515
|
+
// convenience layer (analyze a name + example args, infer a function type and
|
|
516
|
+
// schema, register it). Property-access tracking lives entirely in
|
|
517
|
+
// ai-promise.ts; this section is a shallow dispatch over define() and
|
|
518
|
+
// generateObject().
|
|
519
|
+
// ============================================================================
|
|
520
|
+
/**
|
|
521
|
+
* Analyze a function call and determine what type of function it should be
|
|
522
|
+
*/
|
|
523
|
+
async function analyzeFunction(name, args) {
|
|
524
|
+
// Convert camelCase/snake_case to readable name
|
|
525
|
+
const readableName = name
|
|
526
|
+
.replace(/([A-Z])/g, ' $1')
|
|
527
|
+
.replace(/_/g, ' ')
|
|
528
|
+
.toLowerCase()
|
|
529
|
+
.trim();
|
|
530
|
+
const argDescriptions = Object.entries(args)
|
|
531
|
+
.map(([key, value]) => {
|
|
532
|
+
const type = Array.isArray(value) ? 'array' : typeof value;
|
|
533
|
+
return ` - ${key}: ${type} (example: ${JSON.stringify(value).slice(0, 50)})`;
|
|
534
|
+
})
|
|
535
|
+
.join('\n');
|
|
536
|
+
const result = await generateObject({
|
|
537
|
+
model: 'sonnet',
|
|
538
|
+
schema: {
|
|
539
|
+
type: 'code | generative | agentic | human',
|
|
540
|
+
reasoning: 'Why this function type is appropriate (1-2 sentences)',
|
|
541
|
+
description: 'What this function does',
|
|
542
|
+
output: 'string | object | image | video | audio',
|
|
543
|
+
returnType: 'Schema for the return type as a SimpleSchema object',
|
|
544
|
+
system: 'System prompt for the AI (if generative/agentic)',
|
|
545
|
+
promptTemplate: 'Prompt template with {{arg}} placeholders',
|
|
546
|
+
instructions: 'Instructions for agentic/human functions',
|
|
547
|
+
needsTools: 'true | false',
|
|
548
|
+
suggestedTools: ['Names of tools that might be needed'],
|
|
549
|
+
channel: 'slack | email | web | sms | custom',
|
|
550
|
+
},
|
|
551
|
+
system: `You are an expert at designing AI functions. Analyze the function name and arguments to determine the best function type.
|
|
552
|
+
|
|
553
|
+
Function Types:
|
|
554
|
+
- "code": A DETERMINISTIC algorithm with no model at run time — a pure calculation, data transformation, or rule that always produces the same output for the same input (e.g. tax math, parsing, formatting). A self-contained TypeScript body can be written for it once.
|
|
555
|
+
- "generative": For generating content (text, summaries, translations, creative writing, structured data) — needs a model on every call
|
|
556
|
+
- "agentic": For complex tasks requiring multiple steps, research, or tool use (research, planning, multi-step workflows)
|
|
557
|
+
- "human": For tasks requiring human judgment, approval, or input (approvals, reviews, decisions)
|
|
558
|
+
|
|
559
|
+
Guidelines:
|
|
560
|
+
- Most functions should be "generative" - they generate content or structured data
|
|
561
|
+
- Use "code" ONLY when the task is a deterministic algorithm expressible as a self-contained function body (no model, no external state). If it needs a model at run time, it is "generative", not "code".
|
|
562
|
+
- Use "agentic" when the task requires research, multiple steps, or external tool use
|
|
563
|
+
- Use "human" when human judgment/approval is essential`,
|
|
564
|
+
prompt: `Analyze this function call and determine how to define it:
|
|
565
|
+
|
|
566
|
+
Function Name: ${name}
|
|
567
|
+
Readable Name: ${readableName}
|
|
568
|
+
Arguments:
|
|
569
|
+
${argDescriptions || ' (no arguments)'}
|
|
570
|
+
|
|
571
|
+
Determine:
|
|
572
|
+
1. What type of function this should be
|
|
573
|
+
2. What it should return
|
|
574
|
+
3. How it should be implemented`,
|
|
575
|
+
});
|
|
576
|
+
const analysis = result.object;
|
|
577
|
+
// Build the function definition based on the analysis
|
|
578
|
+
let definition;
|
|
579
|
+
const baseDefinition = {
|
|
580
|
+
name,
|
|
581
|
+
description: analysis.description,
|
|
582
|
+
args: inferArgsSchema(args),
|
|
583
|
+
returnType: analysis.returnType,
|
|
584
|
+
};
|
|
585
|
+
switch (analysis.type) {
|
|
586
|
+
case 'code': {
|
|
587
|
+
// `Code` is deterministic — it cannot be a call-time model invocation.
|
|
588
|
+
// Author a self-contained TS body ONCE here (at define time), then carry
|
|
589
|
+
// it as an inline `code` body so every subsequent call is deterministic.
|
|
590
|
+
const authored = await generateCode({
|
|
591
|
+
name,
|
|
592
|
+
description: analysis.description,
|
|
593
|
+
args: baseDefinition.args,
|
|
594
|
+
returnType: baseDefinition.returnType,
|
|
595
|
+
language: 'typescript',
|
|
596
|
+
instructions: `${analysis.instructions ?? ''}\n\nWrite the body of a single function that receives a parameter named \`args\` (an object with the keys above) and \`return\`s the result. Do not include the function signature, imports, or surrounding declarations — only the statements that go inside the function body.`.trim(),
|
|
597
|
+
}, args);
|
|
598
|
+
definition = {
|
|
599
|
+
...baseDefinition,
|
|
600
|
+
type: 'code',
|
|
601
|
+
language: 'typescript',
|
|
602
|
+
instructions: analysis.instructions,
|
|
603
|
+
code: authored,
|
|
604
|
+
};
|
|
605
|
+
break;
|
|
606
|
+
}
|
|
607
|
+
case 'agentic':
|
|
608
|
+
definition = {
|
|
609
|
+
...baseDefinition,
|
|
610
|
+
type: 'agentic',
|
|
611
|
+
instructions: analysis.instructions || `Complete the ${readableName} task`,
|
|
612
|
+
promptTemplate: analysis.promptTemplate,
|
|
613
|
+
tools: [], // Tools would need to be provided separately
|
|
614
|
+
maxIterations: 10,
|
|
615
|
+
};
|
|
616
|
+
break;
|
|
617
|
+
case 'human':
|
|
618
|
+
definition = {
|
|
619
|
+
...baseDefinition,
|
|
620
|
+
type: 'human',
|
|
621
|
+
channel: (analysis.channel || 'web'),
|
|
622
|
+
instructions: analysis.instructions || `Please review and respond to this ${readableName} request`,
|
|
623
|
+
promptTemplate: analysis.promptTemplate,
|
|
624
|
+
};
|
|
625
|
+
break;
|
|
626
|
+
case 'generative':
|
|
627
|
+
default:
|
|
628
|
+
definition = {
|
|
629
|
+
...baseDefinition,
|
|
630
|
+
type: 'generative',
|
|
631
|
+
output: (analysis.output || 'object'),
|
|
632
|
+
system: analysis.system,
|
|
633
|
+
promptTemplate: analysis.promptTemplate || `{{${Object.keys(args)[0] || 'input'}}}`,
|
|
634
|
+
};
|
|
635
|
+
break;
|
|
636
|
+
}
|
|
637
|
+
return {
|
|
638
|
+
type: analysis.type,
|
|
639
|
+
reasoning: analysis.reasoning,
|
|
640
|
+
definition,
|
|
641
|
+
};
|
|
642
|
+
}
|
|
643
|
+
/**
|
|
644
|
+
* Infer a schema from example arguments
|
|
645
|
+
*/
|
|
646
|
+
function inferArgsSchema(args) {
|
|
647
|
+
const schema = {};
|
|
648
|
+
for (const [key, value] of Object.entries(args)) {
|
|
649
|
+
if (typeof value === 'string') {
|
|
650
|
+
schema[key] = `The ${key.replace(/([A-Z])/g, ' $1').toLowerCase()}`;
|
|
651
|
+
}
|
|
652
|
+
else if (typeof value === 'number') {
|
|
653
|
+
schema[key] = `The ${key.replace(/([A-Z])/g, ' $1').toLowerCase()} (number)`;
|
|
654
|
+
}
|
|
655
|
+
else if (typeof value === 'boolean') {
|
|
656
|
+
schema[key] = `Whether ${key.replace(/([A-Z])/g, ' $1').toLowerCase()} (boolean)`;
|
|
657
|
+
}
|
|
658
|
+
else if (Array.isArray(value)) {
|
|
659
|
+
if (value.length > 0 && typeof value[0] === 'string') {
|
|
660
|
+
schema[key] = [`List of ${key.replace(/([A-Z])/g, ' $1').toLowerCase()}`];
|
|
661
|
+
}
|
|
662
|
+
else {
|
|
663
|
+
schema[key] = [`Items for ${key.replace(/([A-Z])/g, ' $1').toLowerCase()}`];
|
|
664
|
+
}
|
|
665
|
+
}
|
|
666
|
+
else if (typeof value === 'object' && value !== null) {
|
|
667
|
+
schema[key] = inferArgsSchema(value);
|
|
668
|
+
}
|
|
669
|
+
else {
|
|
670
|
+
schema[key] = `The ${key.replace(/([A-Z])/g, ' $1').toLowerCase()}`;
|
|
671
|
+
}
|
|
672
|
+
}
|
|
673
|
+
return schema;
|
|
674
|
+
}
|
|
675
|
+
/**
|
|
676
|
+
* Auto-define a function based on its name and arguments, or define with explicit definition
|
|
677
|
+
*
|
|
678
|
+
* When called with (name, args), uses AI to analyze and determine:
|
|
679
|
+
* - What type of function it should be (code, generative, agentic, human)
|
|
680
|
+
* - What it should return
|
|
681
|
+
* - How it should be implemented
|
|
682
|
+
*
|
|
683
|
+
* When called with a FunctionDefinition, creates the function directly.
|
|
684
|
+
*
|
|
685
|
+
* @example
|
|
686
|
+
* ```ts
|
|
687
|
+
* // Auto-define from name and example args
|
|
688
|
+
* const planTrip = await define('planTrip', { destination: 'Tokyo', travelers: 2 })
|
|
689
|
+
*
|
|
690
|
+
* // Or define explicitly
|
|
691
|
+
* const summarize = define.generative({
|
|
692
|
+
* name: 'summarize',
|
|
693
|
+
* args: { text: 'Text to summarize' },
|
|
694
|
+
* output: 'string',
|
|
695
|
+
* })
|
|
696
|
+
*
|
|
697
|
+
* // Or with full definition
|
|
698
|
+
* const fn = defineFunction({
|
|
699
|
+
* type: 'generative',
|
|
700
|
+
* name: 'translate',
|
|
701
|
+
* args: { text: 'Text', lang: 'Target language' },
|
|
702
|
+
* output: 'string',
|
|
703
|
+
* })
|
|
704
|
+
* ```
|
|
705
|
+
*/
|
|
706
|
+
async function autoDefineImpl(name, args) {
|
|
707
|
+
// Check if already defined
|
|
708
|
+
const existing = functions.get(name);
|
|
709
|
+
if (existing) {
|
|
710
|
+
return existing;
|
|
711
|
+
}
|
|
712
|
+
// Analyze and define the function
|
|
713
|
+
const { definition } = await analyzeFunction(name, args);
|
|
714
|
+
// Create the defined function
|
|
715
|
+
const definedFn = createDefinedFunction(definition);
|
|
716
|
+
// Store in registry
|
|
717
|
+
functions.set(name, definedFn);
|
|
718
|
+
return definedFn;
|
|
719
|
+
}
|
|
720
|
+
/**
|
|
721
|
+
* Define functions - auto-define or use typed helpers
|
|
722
|
+
*/
|
|
723
|
+
export const define = Object.assign(autoDefineImpl, {
|
|
724
|
+
/**
|
|
725
|
+
* Define a **deterministic** code function (a handler — no LLM at call time).
|
|
726
|
+
*
|
|
727
|
+
* Supply a `handler` (canonical) or an inline `code` body. To have a model
|
|
728
|
+
* *author* code instead, use {@link generateCode} or `define.generative`.
|
|
729
|
+
*/
|
|
730
|
+
code: (definition) => {
|
|
731
|
+
const fn = defineFunction({ type: 'code', ...definition });
|
|
732
|
+
functions.set(definition.name, fn);
|
|
733
|
+
return fn;
|
|
734
|
+
},
|
|
735
|
+
/**
|
|
736
|
+
* Define a generative function
|
|
737
|
+
*/
|
|
738
|
+
generative: (definition) => {
|
|
739
|
+
const fn = defineFunction({ type: 'generative', ...definition });
|
|
740
|
+
functions.set(definition.name, fn);
|
|
741
|
+
return fn;
|
|
742
|
+
},
|
|
743
|
+
/**
|
|
744
|
+
* Define an agentic function
|
|
745
|
+
*/
|
|
746
|
+
agentic: (definition) => {
|
|
747
|
+
const fn = defineFunction({ type: 'agentic', ...definition });
|
|
748
|
+
functions.set(definition.name, fn);
|
|
749
|
+
return fn;
|
|
750
|
+
},
|
|
751
|
+
/**
|
|
752
|
+
* Define a human-in-the-loop function
|
|
753
|
+
*/
|
|
754
|
+
human: (definition) => {
|
|
755
|
+
const fn = defineFunction({ type: 'human', ...definition });
|
|
756
|
+
functions.set(definition.name, fn);
|
|
757
|
+
return fn;
|
|
758
|
+
},
|
|
759
|
+
});
|
|
760
|
+
// ============================================================================
|
|
761
|
+
// AI Proxy - Smart AI Client with Auto-Definition
|
|
762
|
+
// ============================================================================
|
|
763
|
+
/** Known built-in method names that should not be auto-defined */
|
|
764
|
+
const BUILTIN_METHODS = new Set([
|
|
765
|
+
'do',
|
|
766
|
+
'is',
|
|
767
|
+
'code',
|
|
768
|
+
'decide',
|
|
769
|
+
'diagram',
|
|
770
|
+
'generate',
|
|
771
|
+
'image',
|
|
772
|
+
'video',
|
|
773
|
+
'write',
|
|
774
|
+
'list',
|
|
775
|
+
'lists',
|
|
776
|
+
'functions',
|
|
777
|
+
'define',
|
|
778
|
+
'defineFunction',
|
|
779
|
+
'then',
|
|
780
|
+
'catch',
|
|
781
|
+
'finally',
|
|
782
|
+
]);
|
|
783
|
+
/**
|
|
784
|
+
* Create a smart AI client that auto-defines functions on first call
|
|
785
|
+
*
|
|
786
|
+
* @example
|
|
787
|
+
* ```ts
|
|
788
|
+
* const ai = createSmartAI()
|
|
789
|
+
*
|
|
790
|
+
* // First call - auto-defines the function
|
|
791
|
+
* const trip = await ai.planTrip({
|
|
792
|
+
* destination: 'Tokyo',
|
|
793
|
+
* dates: { start: '2024-03-01', end: '2024-03-10' },
|
|
794
|
+
* travelers: 2,
|
|
795
|
+
* })
|
|
796
|
+
*
|
|
797
|
+
* // Second call - uses cached definition (in-memory)
|
|
798
|
+
* const trip2 = await ai.planTrip({
|
|
799
|
+
* destination: 'Paris',
|
|
800
|
+
* dates: { start: '2024-06-01', end: '2024-06-07' },
|
|
801
|
+
* travelers: 4,
|
|
802
|
+
* })
|
|
803
|
+
*
|
|
804
|
+
* // Access registry and define
|
|
805
|
+
* console.log(ai.functions.list()) // ['planTrip']
|
|
806
|
+
* ai.define.generative({ name: 'summarize', ... })
|
|
807
|
+
* ```
|
|
808
|
+
*/
|
|
809
|
+
export function createSmartAI() {
|
|
810
|
+
const base = {
|
|
811
|
+
functions,
|
|
812
|
+
define,
|
|
813
|
+
defineFunction,
|
|
814
|
+
};
|
|
815
|
+
return new Proxy(base, {
|
|
816
|
+
get(target, prop) {
|
|
817
|
+
// Return built-in properties
|
|
818
|
+
if (prop in target) {
|
|
819
|
+
return target[prop];
|
|
820
|
+
}
|
|
821
|
+
// Skip internal properties
|
|
822
|
+
if (typeof prop === 'symbol' || prop.startsWith('_') || BUILTIN_METHODS.has(prop)) {
|
|
823
|
+
return undefined;
|
|
824
|
+
}
|
|
825
|
+
// Return a function that auto-defines and calls
|
|
826
|
+
return async (args = {}) => {
|
|
827
|
+
// Check if function is already defined
|
|
828
|
+
let fn = functions.get(prop);
|
|
829
|
+
if (!fn) {
|
|
830
|
+
// Auto-define the function
|
|
831
|
+
fn = await define(prop, args);
|
|
832
|
+
}
|
|
833
|
+
// Call the function
|
|
834
|
+
return fn.call(args);
|
|
835
|
+
};
|
|
836
|
+
},
|
|
837
|
+
});
|
|
838
|
+
}
|
|
839
|
+
/**
|
|
840
|
+
* Default AI proxy instance with auto-define capability.
|
|
841
|
+
*
|
|
842
|
+
* This is the smart proxy `aiProxy` (re-exported from index.ts as `aiProxy`).
|
|
843
|
+
* It is intentionally distinct from the `ai` template-tag primitive above —
|
|
844
|
+
* see `ai` (line ~354) for the template function used like `ai\`...\``.
|
|
845
|
+
*
|
|
846
|
+
* @example
|
|
847
|
+
* ```ts
|
|
848
|
+
* import { aiProxy } from 'ai-functions'
|
|
849
|
+
*
|
|
850
|
+
* // Auto-define and call
|
|
851
|
+
* const result = await aiProxy.summarize({ text: 'Long article...' })
|
|
852
|
+
*
|
|
853
|
+
* // Access functions registry
|
|
854
|
+
* aiProxy.functions.list()
|
|
855
|
+
*
|
|
856
|
+
* // Define explicitly
|
|
857
|
+
* aiProxy.define.generative({ name: 'translate', ... })
|
|
858
|
+
* ```
|
|
859
|
+
*/
|
|
860
|
+
export const aiProxy = createSmartAI();
|
|
489
861
|
//# sourceMappingURL=primitives.js.map
|
package/dist/primitives.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"primitives.js","sourceRoot":"","sources":["../src/primitives.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,EACL,SAAS,EACT,wBAAwB,EACxB,6BAA6B,EAC7B,WAAW,GACZ,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAyC5D,+EAA+E;AAC/E,4BAA4B;AAC5B,+EAA+E;AAE/E;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,IAAkB,EAClB,MAAc,EACd,OAAyB;IAEzB,MAAM,EAAE,KAAK,GAAG,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,IAAI,EAAE,CAAA;IAEjG,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM,CAAC;QACZ,KAAK,UAAU;YACb,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACjD,KAAK,MAAM;YACT,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QACzD,KAAK,MAAM;YACT,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,IAAI,YAAY,EAAE,IAAI,CAAC,CAAA;QAC3E,KAAK,MAAM;YACT,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACjD,KAAK,OAAO;YACV,OAAO,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QAClD,KAAK,SAAS;YACZ,OAAO,sBAAsB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACpD,KAAK,SAAS;YACZ,OAAO,sBAAsB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACpD,KAAK,SAAS;YACZ,OAAO,sBAAsB,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QAC5D,KAAK,MAAM;YACT,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACjD,KAAK,SAAS;YACZ,OAAO,sBAAsB,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,SAAS,EAAE,IAAI,CAAC,CAAA;QACzE,KAAK,QAAQ;YACX,OAAO,qBAAqB,CAAC,MAAM,EAAE,KAAK,EAAE,UAAU,IAAI,EAAE,EAAE,IAAI,CAAC,CAAA;QACrE;YACE,MAAM,IAAI,KAAK,CAAC,0BAA0B,IAAI,EAAE,CAAC,CAAA;IACrD,CAAC;AACH,CAAC;AAED,mBAAmB;AACnB,KAAK,UAAU,mBAAmB,CAAC,MAAc,EAAE,KAAa,EAAE,OAAwB;IACxF,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAA;IAC5I,OAAO,MAAM,CAAC,IAAI,CAAA;AACpB,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,MAAc,EAAE,KAAa,EAAE,MAAgC,EAAE,OAAwB;IAC1H,MAAM,eAAe,GAAG,MAAM,IAAI,EAAE,MAAM,EAAE,sBAAsB,EAAE,CAAA;IACpE,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAA;IACvK,OAAO,MAAM,CAAC,MAAM,CAAA;AACtB,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,MAAc,EAAE,KAAa,EAAE,QAAgB,EAAE,OAAwB;IAC1G,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;QAClC,KAAK;QACL,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,QAAQ,sBAAsB,EAAE;QACvD,MAAM,EAAE,YAAY,QAAQ,cAAc,MAAM,EAAE;QAClD,MAAM,EAAE,qBAAqB,QAAQ,mDAAmD;QACxF,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAC,CAAA;IACF,OAAQ,MAAM,CAAC,MAA2B,CAAC,IAAI,CAAA;AACjD,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,MAAc,EAAE,KAAa,EAAE,OAAwB;IACxF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;QAClC,KAAK;QACL,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,YAAY,CAAC,EAAE;QACjC,MAAM;QACN,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,+CAA+C;QACzE,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAC,CAAA;IACF,OAAQ,MAAM,CAAC,MAA8B,CAAC,KAAK,CAAA;AACrD,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,MAAc,EAAE,KAAa,EAAE,OAAwB;IACzF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;QAClC,KAAK;QACL,MAAM,EAAE;YACN,UAAU,EAAE,CAAC,2BAA2B,CAAC;YACzC,IAAI,EAAE,8CAA8C;SACrD;QACD,MAAM,EAAE,mCAAmC,MAAM,yFAAyF;QAC1I,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,4FAA4F;QACtH,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAC,CAAA;IACF,MAAM,GAAG,GAAG,MAAM,CAAC,MAAgD,CAAA;IACnE,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAA6B,CAAA;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,KAAK,GAA6B,EAAE,CAAA;QAC1C,KAAK,MAAM,GAAG,IAAI,GAAG,CAAC,UAAU,IAAI,EAAE,EAAE,CAAC;YACvC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAA;QACjB,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,MAAc,EAAE,KAAa,EAAE,OAAwB;IAC3F,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;QAClC,KAAK;QACL,MAAM,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE;QAClC,MAAM;QACN,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,yCAAyC;QACnE,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,CAAC;QACrC,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAC,CAAA;IACF,OAAQ,MAAM,CAAC,MAA6B,CAAC,MAAM,KAAK,MAAM,CAAA;AAChE,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,MAAc,EAAE,KAAa,EAAE,OAAwB;IAC3F,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;QAClC,KAAK;QACL,MAAM,EAAE,EAAE,OAAO,EAAE,kCAAkC,EAAE;QACvD,MAAM,EAAE,+BAA+B,MAAM,EAAE;QAC/C,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,kCAAkC;QAC5D,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAC,CAAA;IACF,OAAQ,MAAM,CAAC,MAA8B,CAAC,OAAO,CAAA;AACvD,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,MAAc,EAAE,KAAa,EAAE,MAAgC,EAAE,OAAwB;IAC7H,MAAM,eAAe,GAAG,MAAM,IAAI,EAAE,KAAK,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAA;IAChE,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;QAClC,KAAK;QACL,MAAM,EAAE,eAAe;QACvB,MAAM,EAAE,kCAAkC,MAAM,EAAE;QAClD,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,oCAAoC;QAC9D,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAC,CAAA;IACF,MAAM,GAAG,GAAG,MAAM,CAAC,MAAiC,CAAA;IACpD,IAAI,OAAO,IAAI,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/C,OAAO,GAAG,CAAC,KAAK,CAAA;IAClB,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAe,CAAA;AAC/C,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,MAAc,EAAE,KAAa,EAAE,OAAwB;IACxF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;QAClC,KAAK;QACL,MAAM,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE;QACpC,MAAM,EAAE,sBAAsB,MAAM,EAAE;QACtC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,8BAA8B;QACxD,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAC,CAAA;IACF,OAAQ,MAAM,CAAC,MAA2B,CAAC,IAAI,CAAA;AACjD,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,MAAc,EAAE,KAAa,EAAE,MAAc,EAAE,OAAwB;IAC3G,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;QAClC,KAAK;QACL,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,MAAM,eAAe,EAAE;QACjD,MAAM,EAAE,cAAc,MAAM,iBAAiB,MAAM,EAAE;QACrD,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,YAAY,MAAM,kBAAkB;QAC9D,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAC,CAAA;IACF,OAAQ,MAAM,CAAC,MAA8B,CAAC,OAAO,CAAA;AACvD,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAC,MAAc,EAAE,KAAa,EAAE,UAAkB,EAAE,OAAwB;IAC9G,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;QAClC,KAAK;QACL,MAAM,EAAE,EAAE,MAAM,EAAE,6BAA6B,UAAU,SAAS,EAAE;QACpE,MAAM,EAAE,cAAc,UAAU,8BAA8B,MAAM,EAAE;QACtE,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,iDAAiD;QAC3E,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAC,CAAA;IACF,OAAQ,MAAM,CAAC,MAA6B,CAAC,MAAM,CAAA;AACrD,CAAC;AAED,+EAA+E;AAC/E,4BAA4B;AAC5B,+EAA+E;AAE/E;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,EAAE,GAAG,wBAAwB,CAAU,QAAQ,CAAC,CAAA;AAE7D;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,wBAAwB,CAAS,MAAM,CAAC,CAAA;AAE7D;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,wBAAwB,CAAS,MAAM,EAAE;IAC3D,MAAM,EAAE,qEAAqE;CAC9E,CAAC,CAAA;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,wBAAwB,CAAW,MAAM,CAAC,CAAA;AAE9D;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,wBAAwB,CAA2B,OAAO,CAAC,CAAA;AAEhF;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,wBAAwB,CAAY,SAAS,CAAC,CAAA;AAErE;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,wBAAwB,CAAS,MAAM,EAAE;IAChE,MAAM,EAAE,kCAAkC;CAC3C,CAAC,CAAA;AAEF;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,EAAE,GAAG,wBAAwB,CAAU,SAAS,CAAC,CAAA;AAE9D;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,wBAAwB,CAAS,MAAM,EAAE;IAC9D,MAAM,EAAE,6BAA6B;CACtC,CAAC,CAAA;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,wBAAwB,CAAS,MAAM,EAAE;IAC7D,MAAM,EAAE,iDAAiD;CAC1D,CAAC,CAAA;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,wBAAwB,CAAS,MAAM,CAAC,CAAA;AAE7D;;GAEG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,wBAAwB,CAAS,MAAM,CAAC,CAAA;AAE7D,+EAA+E;AAC/E,oBAAoB;AACpB,+EAA+E;AAE/E;;;;;;;GAOG;AACH,SAAS,MAAM,CACb,eAA8C,EAC9C,GAAG,IAAe;IAElB,IAAI,MAAc,CAAA;IAClB,IAAI,YAAY,GAAsD,EAAE,CAAA;IAExE,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,KAAK,IAAI,eAAe,EAAE,CAAC;QAC/D,MAAM,MAAM,GAAG,6BAA6B,CAAC,eAAe,EAAE,GAAG,IAAI,CAAC,CAAA;QACtE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;QACtB,YAAY,GAAG,MAAM,CAAC,YAAY,CAAA;IACpC,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,eAAyB,CAAA;IACpC,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,SAAS,CAC3B,MAAM,EACN;QACE,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,OAAO,EAAE,0BAA0B;YACnC,OAAO,EAAE,CAAC,uBAAuB,CAAC;SACnC;QACD,MAAM,EAAE,gEAAgE;KACzE,CACF,CAAA;IAED,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;IAC9C,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE,CAAA;AAEvB;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,wBAAwB,CAA6D,QAAQ,EAAE;IACrH,MAAM,EAAE,wDAAwD;CACjE,CAAC,CAAA;AAEF,+EAA+E;AAC/E,gBAAgB;AAChB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,wBAAwB,CAAS,MAAM,CAAC,CAAA;AAE5D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,YAA2C,EAC3C,GAAG,IAAe;IAOlB,0EAA0E;IAC1E,kFAAkF;IAClF,OAAO;QACL,EAAE,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC;QAClB,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;QACzB,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC;QACjD,KAAK,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC;KACtB,CAAA;AACH,CAAC;AAED,+EAA+E;AAC/E,qBAAqB;AACrB,+EAA+E;AAE/E;;;;;;;GAOG;AACH,MAAM,UAAU,MAAM,CACpB,iBAAgD,EAChD,GAAG,YAAuB;IAE1B,IAAI,QAAgB,CAAA;IAEpB,IAAI,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,KAAK,IAAI,iBAAiB,EAAE,CAAC;QACnE,QAAQ,GAAG,iBAAiB,CAAC,MAAM,CACjC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,EACpD,EAAE,CACH,CAAA;IACH,CAAC;SAAM,CAAC;QACN,QAAQ,GAAG,iBAA2B,CAAA;IACxC,CAAC;IAED,OAAO,CAAI,GAAG,OAAY,EAAgB,EAAE;QAC1C,MAAM,kBAAkB,GAAG,OAAO;aAC/B,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;aAC1D,IAAI,CAAC,IAAI,CAAC,CAAA;QAEb,MAAM,OAAO,GAAG,IAAI,SAAS,CAC3B,yBAAyB,kBAAkB,wCAAwC,QAAQ,EAAE,EAC7F;YACE,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,WAAW,EAAE,oDAAoD;gBACjE,SAAS,EAAE,8CAA8C;aAC1D;SACF,CACF,CAAA;QAED,+CAA+C;QAC/C,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CACpD;QAAC,OAAe,CAAC,OAAO,GAAG,KAAK,IAAI,EAAE;YACrC,MAAM,MAAM,GAAG,MAAM,eAAe,EAAsC,CAAA;YAC1E,MAAM,KAAK,GAAG,OAAO,MAAM,CAAC,WAAW,KAAK,QAAQ;gBAClD,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC;gBAClC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAA;YACtB,OAAO,OAAO,CAAC,KAAK,GAAG,CAAC,CAAM,CAAA;QAChC,CAAC,CAAA;QAED,OAAO,OAAO,CAAA;IAChB,CAAC,CAAA;AACH,CAAC;AA2BD;;GAEG;AACH,MAAM,CAAC,MAAM,GAAG,GAAG,wBAAwB,CAAsB,QAAQ,EAAE;IACzE,MAAM,EAAE,yCAAyC;CAClD,CAAC,CAAA;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,wBAAwB,CAAqD,QAAQ,EAAE;IAC5G,MAAM,EAAE,+BAA+B;CACxC,CAAC,CAAA;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,wBAAwB,CAAyE,QAAQ,EAAE;IAC/H,MAAM,EAAE,4BAA4B;CACrC,CAAC,CAAA"}
|
|
1
|
+
{"version":3,"file":"primitives.js","sourceRoot":"","sources":["../src/primitives.ts"],"names":[],"mappings":"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"}
|