@happyvertical/ai 0.93.0 → 0.94.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENT.md +2 -2
- package/README.md +37 -0
- package/dist/chunks/{anthropic-ByuqC5mC.js → anthropic-CD9Ud7a5.js} +4 -4
- package/dist/chunks/{anthropic-ByuqC5mC.js.map → anthropic-CD9Ud7a5.js.map} +1 -1
- package/dist/chunks/{bedrock-BeVCmkrS.js → bedrock-Bv1qCquH.js} +3 -3
- package/dist/chunks/{bedrock-BeVCmkrS.js.map → bedrock-Bv1qCquH.js.map} +1 -1
- package/dist/chunks/{bifrost-s3K7V8oU.js → bifrost-D1io0ttr.js} +4 -4
- package/dist/chunks/{bifrost-s3K7V8oU.js.map → bifrost-D1io0ttr.js.map} +1 -1
- package/dist/chunks/{byteplus-modelark-DaF0U4n1.js → byteplus-modelark-BIEXaTWw.js} +4 -4
- package/dist/chunks/{byteplus-modelark-DaF0U4n1.js.map → byteplus-modelark-BIEXaTWw.js.map} +1 -1
- package/dist/chunks/{claude-cli-BH_C62dV.js → claude-cli-Chfnckyj.js} +3 -3
- package/dist/chunks/{claude-cli-BH_C62dV.js.map → claude-cli-Chfnckyj.js.map} +1 -1
- package/dist/chunks/{gateway-admin-B4RSBDmo.js → gateway-admin-04mvbDHC.js} +2 -2
- package/dist/chunks/{gateway-admin-B4RSBDmo.js.map → gateway-admin-04mvbDHC.js.map} +1 -1
- package/dist/chunks/{gemini-GQdugon1.js → gemini-BGwrHeGc.js} +4 -4
- package/dist/chunks/{gemini-GQdugon1.js.map → gemini-BGwrHeGc.js.map} +1 -1
- package/dist/chunks/{huggingface-DxPspM6Q.js → huggingface-mthYVbLR.js} +3 -3
- package/dist/chunks/{huggingface-DxPspM6Q.js.map → huggingface-mthYVbLR.js.map} +1 -1
- package/dist/chunks/{litellm-D8iaHaji.js → litellm-xv_7hqm_.js} +4 -4
- package/dist/chunks/{litellm-D8iaHaji.js.map → litellm-xv_7hqm_.js.map} +1 -1
- package/dist/chunks/{ollama-BrB6bjnz.js → ollama-Bedt8Agy.js} +3 -3
- package/dist/chunks/{ollama-BrB6bjnz.js.map → ollama-Bedt8Agy.js.map} +1 -1
- package/dist/chunks/{openai-compat-video-DNE1Yvp6.js → openai-compat-video-B-xVe9bW.js} +4 -4
- package/dist/chunks/{openai-compat-video-DNE1Yvp6.js.map → openai-compat-video-B-xVe9bW.js.map} +1 -1
- package/dist/chunks/{qwen-tts-CAh1upii.js → qwen-tts-D-UmiMMy.js} +2 -2
- package/dist/chunks/{qwen-tts-CAh1upii.js.map → qwen-tts-D-UmiMMy.js.map} +1 -1
- package/dist/chunks/{rate-limit-C2oPwLGI.js → rate-limit-BVW_1Tey.js} +3 -2
- package/dist/chunks/rate-limit-BVW_1Tey.js.map +1 -0
- package/dist/chunks/{safety-ClfpyKEN.js → safety-BKswBoqy.js} +9 -8
- package/dist/chunks/safety-BKswBoqy.js.map +1 -0
- package/dist/chunks/{seevio-Bbu_hTUF.js → seevio-BJRiguLc.js} +4 -4
- package/dist/chunks/{seevio-Bbu_hTUF.js.map → seevio-BJRiguLc.js.map} +1 -1
- package/dist/chunks/{src-B3ZLEBD2.js → src-DOm4LN_h.js} +23 -16
- package/dist/chunks/{src-B3ZLEBD2.js.map → src-DOm4LN_h.js.map} +1 -1
- package/dist/chunks/{types-sSecpd_N.js → types-BpnNcTU1.js} +3 -2
- package/dist/chunks/types-BpnNcTU1.js.map +1 -0
- package/dist/chunks/typesafe-qpVPDkOR.js +306 -0
- package/dist/chunks/typesafe-qpVPDkOR.js.map +1 -0
- package/dist/index.js +3 -3
- package/dist/node/factory.d.ts.map +1 -1
- package/dist/node.js +18 -4
- package/dist/node.js.map +1 -1
- package/dist/shared/factory.d.ts.map +1 -1
- package/dist/shared/providers/typesafe.d.ts +30 -0
- package/dist/shared/providers/typesafe.d.ts.map +1 -0
- package/dist/shared/rate-limit.d.ts.map +1 -1
- package/dist/shared/safety.d.ts.map +1 -1
- package/dist/shared/types.d.ts +87 -3
- package/dist/shared/types.d.ts.map +1 -1
- package/metadata.json +2 -2
- package/package.json +3 -3
- package/dist/chunks/rate-limit-C2oPwLGI.js.map +0 -1
- package/dist/chunks/safety-ClfpyKEN.js.map +0 -1
- package/dist/chunks/types-sSecpd_N.js.map +0 -1
package/dist/node.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.js","names":[],"sources":["../src/node/factory.ts"],"sourcesContent":["/**\n * Node.js-specific factory functions for creating AI provider instances\n * Includes support for environment variable detection\n */\n\nimport { loadEnvConfig, ValidationError } from '@happyvertical/utils';\nimport { getAI as getAIUniversal } from '../shared/factory';\n\nimport type {\n AIInterface,\n AIProviderType,\n AnthropicOptions,\n BedrockOptions,\n BifrostOptions,\n ByteplusModelArkOptions,\n GeminiOptions,\n GetAIOptions,\n HuggingFaceOptions,\n LiteLLMOptions,\n OllamaOptions,\n OpenAICompatVideoOptions,\n OpenAIOptions,\n SeevioOptions,\n} from '../shared/types';\nimport { AI_PROVIDER_TYPES } from '../shared/types';\n\n/**\n * Re-export the universal getAI function\n */\nexport { getAI } from '../shared/factory';\n\n/**\n * Node.js-enhanced auto-detection of AI provider based on available credentials\n * Includes support for environment variables\n *\n * Supports both HAVE_AI_* environment variables and provider-specific variables:\n * - HAVE_AI_PROVIDER / HAVE_AI_TYPE → provider type\n * - HAVE_AI_API_KEY → fallback API key\n * - LITELLM_BASE_URL / LITELLM_API_KEY / LITELLM_ADMIN_API_KEY → LiteLLM-specific gateway config\n * - BIFROST_BASE_URL / BIFROST_API_KEY / BIFROST_ADMIN_URL / BIFROST_ADMIN_USER / BIFROST_ADMIN_PASSWORD → Bifrost gateway config\n * - OLLAMA_HOST / OLLAMA_BASE_URL / OLLAMA_API_KEY → Ollama host/auth config\n * - OPENAI_API_KEY → OpenAI-specific key\n * - ANTHROPIC_API_KEY → Anthropic-specific key\n * - GEMINI_API_KEY / GOOGLE_API_KEY → Gemini-specific key\n * - HF_TOKEN → Hugging Face token\n * - AWS_* → AWS Bedrock credentials\n * - OPENAI_COMPAT_VIDEO_BASE_URL / OPENAI_COMPAT_VIDEO_API_KEY → openai-compat-video gateway config (checked last)\n * - MODELARK_API_KEY / ARK_API_KEY / MODELARK_BASE_URL → BytePlus ModelArk (Seedance) config (checked last)\n * - SEEVIO_API_KEY / SEEVIO_BASE_URL → Seevio Seedance config (checked last)\n *\n * The two video-only provider types above are intentionally checked *after*\n * every general-purpose provider: they throw `NOT_IMPLEMENTED` for chat()\n * and everything else, so their env signals must never hijack a bare\n * `getAIAuto()` call away from a general-purpose provider. Prefer explicit\n * `type: 'byteplus-modelark'` / `type: 'openai-compat-video'` / `type: 'seevio'` when you want\n * one of these on purpose.\n *\n * @param options - Configuration options that may contain provider-specific credentials\n * @returns Promise resolving to an AI provider instance\n * @throws ValidationError if no provider can be detected from the options\n */\nexport async function getAIAuto(\n options: Record<string, any> = {},\n): Promise<AIInterface> {\n // Load HAVE_AI_* environment variables first\n const config = loadEnvConfig(options, {\n packageName: 'ai',\n schema: {\n provider: 'string',\n type: 'string',\n model: 'string',\n defaultModel: 'string',\n timeout: 'number',\n maxRetries: 'number',\n apiKey: 'string',\n baseUrl: 'string',\n adminApiKey: 'string',\n adminBaseUrl: 'string',\n adminUrl: 'string',\n adminUser: 'string',\n adminUsername: 'string',\n adminPassword: 'string',\n },\n }) as GetAIOptions;\n\n // Normalize 'provider' field to 'type'\n if ('provider' in config && !config.type) {\n (config as any).type = (config as any).provider;\n }\n\n const adminConfig = config as {\n adminApiKey?: string;\n adminBaseUrl?: string;\n adminUrl?: string;\n adminUser?: string;\n adminUsername?: string;\n adminPassword?: string;\n };\n\n // Caller options always win over env: collapse alias pairs (adminUrl/adminBaseUrl\n // and adminUser/adminUsername) on the caller side first, so that an env override\n // for one alias cannot mask an explicit caller value supplied via the other.\n const callerAdminUrl = adminConfig.adminUrl || adminConfig.adminBaseUrl;\n const callerAdminUser = adminConfig.adminUser || adminConfig.adminUsername;\n\n // If type is specified (either from options or env vars), use getAI directly\n if (config.type) {\n if (config.type === 'byteplus-modelark') {\n return getAIUniversal({\n ...config,\n apiKey:\n config.apiKey ||\n process.env.MODELARK_API_KEY ||\n process.env.ARK_API_KEY,\n baseUrl: config.baseUrl || process.env.MODELARK_BASE_URL,\n } as ByteplusModelArkOptions);\n }\n\n if (config.type === 'openai-compat-video') {\n return getAIUniversal({\n ...config,\n apiKey: config.apiKey || process.env.OPENAI_COMPAT_VIDEO_API_KEY,\n baseUrl: config.baseUrl || process.env.OPENAI_COMPAT_VIDEO_BASE_URL,\n } as OpenAICompatVideoOptions);\n }\n\n if (config.type === 'seevio') {\n return getAIUniversal({\n ...config,\n apiKey: config.apiKey || process.env.SEEVIO_API_KEY,\n baseUrl: config.baseUrl || process.env.SEEVIO_BASE_URL,\n } as SeevioOptions);\n }\n\n if (config.type === 'bifrost') {\n const resolvedAdminUrl =\n callerAdminUrl ||\n process.env.BIFROST_ADMIN_URL ||\n process.env.BIFROST_ADMIN_BASE_URL;\n const resolvedAdminUser =\n callerAdminUser ||\n process.env.BIFROST_ADMIN_USER ||\n process.env.BIFROST_ADMIN_USERNAME;\n\n return getAIUniversal({\n ...config,\n baseUrl: config.baseUrl || process.env.BIFROST_BASE_URL,\n apiKey: config.apiKey || process.env.BIFROST_API_KEY,\n adminApiKey:\n adminConfig.adminApiKey || process.env.BIFROST_ADMIN_API_KEY,\n adminBaseUrl: resolvedAdminUrl,\n adminUrl: resolvedAdminUrl,\n adminUser: resolvedAdminUser,\n adminUsername: resolvedAdminUser,\n adminPassword:\n adminConfig.adminPassword || process.env.BIFROST_ADMIN_PASSWORD,\n } as BifrostOptions);\n }\n\n return getAIUniversal(config);\n }\n\n // First try universal detection with loaded config\n try {\n return await import('../shared/factory.js').then((m) =>\n m.getAIAuto(config),\n );\n } catch (_error) {\n // If universal detection fails, try Node.js-specific environment variables\n }\n\n // Auto-detect provider based on available credentials including environment variables\n const hasLiteLLMSignal = Boolean(\n process.env.LITELLM_BASE_URL || process.env.LITELLM_API_KEY,\n );\n const hasBifrostSignal = Boolean(process.env.BIFROST_BASE_URL);\n\n if (hasBifrostSignal && !config.type) {\n return getAIUniversal({\n ...config,\n type: 'bifrost',\n baseUrl: config.baseUrl || process.env.BIFROST_BASE_URL,\n apiKey: config.apiKey || process.env.BIFROST_API_KEY,\n adminApiKey: adminConfig.adminApiKey || process.env.BIFROST_ADMIN_API_KEY,\n adminBaseUrl:\n adminConfig.adminBaseUrl || process.env.BIFROST_ADMIN_BASE_URL,\n adminUrl: adminConfig.adminUrl || process.env.BIFROST_ADMIN_URL,\n adminUser:\n adminConfig.adminUser ||\n adminConfig.adminUsername ||\n process.env.BIFROST_ADMIN_USER ||\n process.env.BIFROST_ADMIN_USERNAME,\n adminPassword:\n adminConfig.adminPassword || process.env.BIFROST_ADMIN_PASSWORD,\n } as BifrostOptions);\n }\n\n if (hasLiteLLMSignal && !config.type) {\n return getAIUniversal({\n ...config,\n type: 'litellm',\n baseUrl: config.baseUrl || process.env.LITELLM_BASE_URL,\n apiKey: config.apiKey || process.env.LITELLM_API_KEY,\n adminApiKey: adminConfig.adminApiKey || process.env.LITELLM_ADMIN_API_KEY,\n adminBaseUrl:\n adminConfig.adminBaseUrl || process.env.LITELLM_ADMIN_BASE_URL,\n adminUrl: adminConfig.adminUrl || process.env.LITELLM_ADMIN_URL,\n } as LiteLLMOptions);\n }\n\n if (\n (process.env.OLLAMA_HOST ||\n process.env.OLLAMA_BASE_URL ||\n (process.env.OLLAMA_API_KEY && !process.env.OPENAI_API_KEY)) &&\n !config.type\n ) {\n return getAIUniversal({\n ...config,\n type: 'ollama',\n baseUrl:\n config.baseUrl ||\n process.env.OLLAMA_BASE_URL ||\n process.env.OLLAMA_HOST,\n apiKey: (config as any).apiKey || process.env.OLLAMA_API_KEY,\n } as OllamaOptions);\n }\n\n if ((config.apiKey || process.env.OPENAI_API_KEY) && !config.type) {\n // Default to OpenAI if apiKey is provided without explicit type\n return getAIUniversal({\n ...config,\n type: 'openai',\n apiKey: config.apiKey || process.env.OPENAI_API_KEY,\n } as OpenAIOptions);\n }\n\n if (process.env.ANTHROPIC_API_KEY) {\n return getAIUniversal({\n ...config,\n type: 'anthropic',\n apiKey: process.env.ANTHROPIC_API_KEY,\n } as AnthropicOptions);\n }\n\n if (process.env.GEMINI_API_KEY || process.env.GOOGLE_API_KEY) {\n return getAIUniversal({\n ...config,\n type: 'gemini',\n apiKey: process.env.GEMINI_API_KEY || process.env.GOOGLE_API_KEY,\n } as GeminiOptions);\n }\n\n if ((config as any).apiToken || process.env.HF_TOKEN) {\n // Hugging Face uses apiToken or HF_TOKEN\n return getAIUniversal({\n ...config,\n type: 'huggingface',\n apiToken: (config as any).apiToken || process.env.HF_TOKEN,\n } as HuggingFaceOptions);\n }\n\n if (\n ((config as any).region || process.env.AWS_DEFAULT_REGION) &&\n ((config as any).credentials || process.env.AWS_ACCESS_KEY_ID)\n ) {\n // AWS Bedrock uses region and AWS credentials (explicit or from env)\n const bedrockOptions: BedrockOptions = {\n ...config,\n type: 'bedrock',\n region: (config as any).region || process.env.AWS_DEFAULT_REGION,\n };\n\n // Add credentials if available in environment\n if (\n !(config as any).credentials &&\n process.env.AWS_ACCESS_KEY_ID &&\n process.env.AWS_SECRET_ACCESS_KEY\n ) {\n bedrockOptions.credentials = {\n accessKeyId: process.env.AWS_ACCESS_KEY_ID,\n secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY,\n };\n }\n\n return getAIUniversal(bedrockOptions);\n }\n\n // Video-only provider detection runs last, deliberately after every\n // general-purpose provider check above: these providers throw\n // NOT_IMPLEMENTED for chat() and every other non-video method, so a bare\n // getAIAuto() must never let a video-only credential (e.g. MODELARK_API_KEY\n // set alongside OPENAI_API_KEY for an unrelated pipeline step) hijack\n // selection away from a general-purpose provider. Explicit\n // `type: 'byteplus-modelark'` / `type: 'openai-compat-video'` selection is\n // the intended way to reach these providers; auto-detection is a\n // last-resort fallback for when nothing general-purpose matches.\n const hasModelArkSignal = Boolean(\n process.env.MODELARK_API_KEY ||\n process.env.ARK_API_KEY ||\n process.env.MODELARK_BASE_URL,\n );\n const hasOpenAICompatVideoSignal = Boolean(\n process.env.OPENAI_COMPAT_VIDEO_BASE_URL,\n );\n const hasSeevioSignal = Boolean(\n process.env.SEEVIO_API_KEY || process.env.SEEVIO_BASE_URL,\n );\n\n if (hasModelArkSignal && !config.type) {\n return getAIUniversal({\n ...config,\n type: 'byteplus-modelark',\n apiKey:\n config.apiKey ||\n process.env.MODELARK_API_KEY ||\n process.env.ARK_API_KEY,\n baseUrl: config.baseUrl || process.env.MODELARK_BASE_URL,\n } as ByteplusModelArkOptions);\n }\n\n if (hasOpenAICompatVideoSignal && !config.type) {\n return getAIUniversal({\n ...config,\n type: 'openai-compat-video',\n apiKey: config.apiKey || process.env.OPENAI_COMPAT_VIDEO_API_KEY,\n baseUrl: config.baseUrl || process.env.OPENAI_COMPAT_VIDEO_BASE_URL,\n } as OpenAICompatVideoOptions);\n }\n\n if (hasSeevioSignal && !config.type) {\n return getAIUniversal({\n ...config,\n type: 'seevio',\n apiKey: config.apiKey || process.env.SEEVIO_API_KEY,\n baseUrl: config.baseUrl || process.env.SEEVIO_BASE_URL,\n } as SeevioOptions);\n }\n\n throw new ValidationError(\n 'Could not auto-detect AI provider from options or environment',\n {\n hint: 'Please specify a \"type\" field in options or provide provider-specific credentials/environment variables',\n supportedTypes: [...AI_PROVIDER_TYPES] as AIProviderType[],\n providedOptions: Object.keys(config),\n checkedEnvVars: [\n 'HAVE_AI_PROVIDER',\n 'HAVE_AI_TYPE',\n 'HAVE_AI_API_KEY',\n 'LITELLM_BASE_URL',\n 'LITELLM_API_KEY',\n 'OLLAMA_HOST',\n 'OLLAMA_BASE_URL',\n 'OLLAMA_API_KEY',\n 'OPENAI_API_KEY',\n 'ANTHROPIC_API_KEY',\n 'GEMINI_API_KEY',\n 'GOOGLE_API_KEY',\n 'HF_TOKEN',\n 'AWS_ACCESS_KEY_ID',\n 'AWS_DEFAULT_REGION',\n 'OPENAI_COMPAT_VIDEO_BASE_URL',\n 'OPENAI_COMPAT_VIDEO_API_KEY',\n 'MODELARK_API_KEY',\n 'ARK_API_KEY',\n 'MODELARK_BASE_URL',\n 'SEEVIO_API_KEY',\n 'SEEVIO_BASE_URL',\n ],\n },\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"node.js","names":[],"sources":["../src/node/factory.ts"],"sourcesContent":["/**\n * Node.js-specific factory functions for creating AI provider instances\n * Includes support for environment variable detection\n */\n\nimport { loadEnvConfig, ValidationError } from '@happyvertical/utils';\nimport { getAI as getAIUniversal } from '../shared/factory';\n\nimport type {\n AIInterface,\n AIProviderType,\n AnthropicOptions,\n BedrockOptions,\n BifrostOptions,\n ByteplusModelArkOptions,\n GeminiOptions,\n GetAIOptions,\n HuggingFaceOptions,\n LiteLLMOptions,\n OllamaOptions,\n OpenAICompatVideoOptions,\n OpenAIOptions,\n SeevioOptions,\n TypeSafeOptions,\n} from '../shared/types';\nimport { AI_PROVIDER_TYPES } from '../shared/types';\n\n/**\n * Re-export the universal getAI function\n */\nexport { getAI } from '../shared/factory';\n\n/**\n * Node.js-enhanced auto-detection of AI provider based on available credentials\n * Includes support for environment variables\n *\n * Supports both HAVE_AI_* environment variables and provider-specific variables:\n * - HAVE_AI_PROVIDER / HAVE_AI_TYPE → provider type\n * - HAVE_AI_API_KEY → fallback API key\n * - LITELLM_BASE_URL / LITELLM_API_KEY / LITELLM_ADMIN_API_KEY → LiteLLM-specific gateway config\n * - BIFROST_BASE_URL / BIFROST_API_KEY / BIFROST_ADMIN_URL / BIFROST_ADMIN_USER / BIFROST_ADMIN_PASSWORD → Bifrost gateway config\n * - OLLAMA_HOST / OLLAMA_BASE_URL / OLLAMA_API_KEY → Ollama host/auth config\n * - OPENAI_API_KEY → OpenAI-specific key\n * - ANTHROPIC_API_KEY → Anthropic-specific key\n * - GEMINI_API_KEY / GOOGLE_API_KEY → Gemini-specific key\n * - HF_TOKEN → Hugging Face token\n * - AWS_* → AWS Bedrock credentials\n * - OPENAI_COMPAT_VIDEO_BASE_URL / OPENAI_COMPAT_VIDEO_API_KEY → openai-compat-video gateway config (checked last)\n * - MODELARK_API_KEY / ARK_API_KEY / MODELARK_BASE_URL → BytePlus ModelArk (Seedance) config (checked last)\n * - SEEVIO_API_KEY / SEEVIO_BASE_URL → Seevio Seedance config (checked last)\n *\n * The two video-only provider types above are intentionally checked *after*\n * every general-purpose provider: they throw `NOT_IMPLEMENTED` for chat()\n * and everything else, so their env signals must never hijack a bare\n * `getAIAuto()` call away from a general-purpose provider. Prefer explicit\n * `type: 'byteplus-modelark'` / `type: 'openai-compat-video'` / `type: 'seevio'` when you want\n * one of these on purpose.\n *\n * @param options - Configuration options that may contain provider-specific credentials\n * @returns Promise resolving to an AI provider instance\n * @throws ValidationError if no provider can be detected from the options\n */\nexport async function getAIAuto(\n options: Record<string, any> = {},\n): Promise<AIInterface> {\n // Load HAVE_AI_* environment variables first\n const config = loadEnvConfig(options, {\n packageName: 'ai',\n schema: {\n provider: 'string',\n type: 'string',\n model: 'string',\n defaultModel: 'string',\n timeout: 'number',\n maxRetries: 'number',\n apiKey: 'string',\n baseUrl: 'string',\n adminApiKey: 'string',\n adminBaseUrl: 'string',\n adminUrl: 'string',\n adminUser: 'string',\n adminUsername: 'string',\n adminPassword: 'string',\n },\n }) as GetAIOptions;\n\n // Normalize 'provider' field to 'type'\n if ('provider' in config && !config.type) {\n (config as any).type = (config as any).provider;\n }\n\n const adminConfig = config as {\n adminApiKey?: string;\n adminBaseUrl?: string;\n adminUrl?: string;\n adminUser?: string;\n adminUsername?: string;\n adminPassword?: string;\n };\n\n // Caller options always win over env: collapse alias pairs (adminUrl/adminBaseUrl\n // and adminUser/adminUsername) on the caller side first, so that an env override\n // for one alias cannot mask an explicit caller value supplied via the other.\n const callerAdminUrl = adminConfig.adminUrl || adminConfig.adminBaseUrl;\n const callerAdminUser = adminConfig.adminUser || adminConfig.adminUsername;\n\n // If type is specified (either from options or env vars), use getAI directly\n if (config.type) {\n if (config.type === 'byteplus-modelark') {\n return getAIUniversal({\n ...config,\n apiKey:\n config.apiKey ||\n process.env.MODELARK_API_KEY ||\n process.env.ARK_API_KEY,\n baseUrl: config.baseUrl || process.env.MODELARK_BASE_URL,\n } as ByteplusModelArkOptions);\n }\n\n if (config.type === 'openai-compat-video') {\n return getAIUniversal({\n ...config,\n apiKey: config.apiKey || process.env.OPENAI_COMPAT_VIDEO_API_KEY,\n baseUrl: config.baseUrl || process.env.OPENAI_COMPAT_VIDEO_BASE_URL,\n } as OpenAICompatVideoOptions);\n }\n\n if (config.type === 'seevio') {\n return getAIUniversal({\n ...config,\n apiKey: config.apiKey || process.env.SEEVIO_API_KEY,\n baseUrl: config.baseUrl || process.env.SEEVIO_BASE_URL,\n } as SeevioOptions);\n }\n\n if (config.type === 'typesafe') {\n return getAIUniversal({\n ...config,\n apiKey: config.apiKey || process.env.TYPESAFE_API_KEY,\n baseUrl: config.baseUrl || process.env.TYPESAFE_BASE_URL,\n } as TypeSafeOptions);\n }\n\n if (config.type === 'bifrost') {\n const resolvedAdminUrl =\n callerAdminUrl ||\n process.env.BIFROST_ADMIN_URL ||\n process.env.BIFROST_ADMIN_BASE_URL;\n const resolvedAdminUser =\n callerAdminUser ||\n process.env.BIFROST_ADMIN_USER ||\n process.env.BIFROST_ADMIN_USERNAME;\n\n return getAIUniversal({\n ...config,\n baseUrl: config.baseUrl || process.env.BIFROST_BASE_URL,\n apiKey: config.apiKey || process.env.BIFROST_API_KEY,\n adminApiKey:\n adminConfig.adminApiKey || process.env.BIFROST_ADMIN_API_KEY,\n adminBaseUrl: resolvedAdminUrl,\n adminUrl: resolvedAdminUrl,\n adminUser: resolvedAdminUser,\n adminUsername: resolvedAdminUser,\n adminPassword:\n adminConfig.adminPassword || process.env.BIFROST_ADMIN_PASSWORD,\n } as BifrostOptions);\n }\n\n return getAIUniversal(config);\n }\n\n // First try universal detection with loaded config\n try {\n return await import('../shared/factory.js').then((m) =>\n m.getAIAuto(config),\n );\n } catch (_error) {\n // If universal detection fails, try Node.js-specific environment variables\n }\n\n // Auto-detect provider based on available credentials including environment variables\n const hasLiteLLMSignal = Boolean(\n process.env.LITELLM_BASE_URL || process.env.LITELLM_API_KEY,\n );\n const hasBifrostSignal = Boolean(process.env.BIFROST_BASE_URL);\n\n if (hasBifrostSignal && !config.type) {\n return getAIUniversal({\n ...config,\n type: 'bifrost',\n baseUrl: config.baseUrl || process.env.BIFROST_BASE_URL,\n apiKey: config.apiKey || process.env.BIFROST_API_KEY,\n adminApiKey: adminConfig.adminApiKey || process.env.BIFROST_ADMIN_API_KEY,\n adminBaseUrl:\n adminConfig.adminBaseUrl || process.env.BIFROST_ADMIN_BASE_URL,\n adminUrl: adminConfig.adminUrl || process.env.BIFROST_ADMIN_URL,\n adminUser:\n adminConfig.adminUser ||\n adminConfig.adminUsername ||\n process.env.BIFROST_ADMIN_USER ||\n process.env.BIFROST_ADMIN_USERNAME,\n adminPassword:\n adminConfig.adminPassword || process.env.BIFROST_ADMIN_PASSWORD,\n } as BifrostOptions);\n }\n\n if (hasLiteLLMSignal && !config.type) {\n return getAIUniversal({\n ...config,\n type: 'litellm',\n baseUrl: config.baseUrl || process.env.LITELLM_BASE_URL,\n apiKey: config.apiKey || process.env.LITELLM_API_KEY,\n adminApiKey: adminConfig.adminApiKey || process.env.LITELLM_ADMIN_API_KEY,\n adminBaseUrl:\n adminConfig.adminBaseUrl || process.env.LITELLM_ADMIN_BASE_URL,\n adminUrl: adminConfig.adminUrl || process.env.LITELLM_ADMIN_URL,\n } as LiteLLMOptions);\n }\n\n if (\n (process.env.OLLAMA_HOST ||\n process.env.OLLAMA_BASE_URL ||\n (process.env.OLLAMA_API_KEY && !process.env.OPENAI_API_KEY)) &&\n !config.type\n ) {\n return getAIUniversal({\n ...config,\n type: 'ollama',\n baseUrl:\n config.baseUrl ||\n process.env.OLLAMA_BASE_URL ||\n process.env.OLLAMA_HOST,\n apiKey: (config as any).apiKey || process.env.OLLAMA_API_KEY,\n } as OllamaOptions);\n }\n\n if ((config.apiKey || process.env.OPENAI_API_KEY) && !config.type) {\n // Default to OpenAI if apiKey is provided without explicit type\n return getAIUniversal({\n ...config,\n type: 'openai',\n apiKey: config.apiKey || process.env.OPENAI_API_KEY,\n } as OpenAIOptions);\n }\n\n if (process.env.ANTHROPIC_API_KEY) {\n return getAIUniversal({\n ...config,\n type: 'anthropic',\n apiKey: process.env.ANTHROPIC_API_KEY,\n } as AnthropicOptions);\n }\n\n if (process.env.GEMINI_API_KEY || process.env.GOOGLE_API_KEY) {\n return getAIUniversal({\n ...config,\n type: 'gemini',\n apiKey: process.env.GEMINI_API_KEY || process.env.GOOGLE_API_KEY,\n } as GeminiOptions);\n }\n\n if ((config as any).apiToken || process.env.HF_TOKEN) {\n // Hugging Face uses apiToken or HF_TOKEN\n return getAIUniversal({\n ...config,\n type: 'huggingface',\n apiToken: (config as any).apiToken || process.env.HF_TOKEN,\n } as HuggingFaceOptions);\n }\n\n if (\n ((config as any).region || process.env.AWS_DEFAULT_REGION) &&\n ((config as any).credentials || process.env.AWS_ACCESS_KEY_ID)\n ) {\n // AWS Bedrock uses region and AWS credentials (explicit or from env)\n const bedrockOptions: BedrockOptions = {\n ...config,\n type: 'bedrock',\n region: (config as any).region || process.env.AWS_DEFAULT_REGION,\n };\n\n // Add credentials if available in environment\n if (\n !(config as any).credentials &&\n process.env.AWS_ACCESS_KEY_ID &&\n process.env.AWS_SECRET_ACCESS_KEY\n ) {\n bedrockOptions.credentials = {\n accessKeyId: process.env.AWS_ACCESS_KEY_ID,\n secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY,\n };\n }\n\n return getAIUniversal(bedrockOptions);\n }\n\n // Video-only provider detection runs last, deliberately after every\n // general-purpose provider check above: these providers throw\n // NOT_IMPLEMENTED for chat() and every other non-video method, so a bare\n // getAIAuto() must never let a video-only credential (e.g. MODELARK_API_KEY\n // set alongside OPENAI_API_KEY for an unrelated pipeline step) hijack\n // selection away from a general-purpose provider. Explicit\n // `type: 'byteplus-modelark'` / `type: 'openai-compat-video'` selection is\n // the intended way to reach these providers; auto-detection is a\n // last-resort fallback for when nothing general-purpose matches.\n const hasModelArkSignal = Boolean(\n process.env.MODELARK_API_KEY ||\n process.env.ARK_API_KEY ||\n process.env.MODELARK_BASE_URL,\n );\n const hasOpenAICompatVideoSignal = Boolean(\n process.env.OPENAI_COMPAT_VIDEO_BASE_URL,\n );\n const hasSeevioSignal = Boolean(\n process.env.SEEVIO_API_KEY || process.env.SEEVIO_BASE_URL,\n );\n const hasTypeSafeSignal = Boolean(\n process.env.TYPESAFE_API_KEY || process.env.TYPESAFE_BASE_URL,\n );\n\n if (hasModelArkSignal && !config.type) {\n return getAIUniversal({\n ...config,\n type: 'byteplus-modelark',\n apiKey:\n config.apiKey ||\n process.env.MODELARK_API_KEY ||\n process.env.ARK_API_KEY,\n baseUrl: config.baseUrl || process.env.MODELARK_BASE_URL,\n } as ByteplusModelArkOptions);\n }\n\n if (hasOpenAICompatVideoSignal && !config.type) {\n return getAIUniversal({\n ...config,\n type: 'openai-compat-video',\n apiKey: config.apiKey || process.env.OPENAI_COMPAT_VIDEO_API_KEY,\n baseUrl: config.baseUrl || process.env.OPENAI_COMPAT_VIDEO_BASE_URL,\n } as OpenAICompatVideoOptions);\n }\n\n if (hasSeevioSignal && !config.type) {\n return getAIUniversal({\n ...config,\n type: 'seevio',\n apiKey: config.apiKey || process.env.SEEVIO_API_KEY,\n baseUrl: config.baseUrl || process.env.SEEVIO_BASE_URL,\n } as SeevioOptions);\n }\n\n if (hasTypeSafeSignal && !config.type) {\n return getAIUniversal({\n ...config,\n type: 'typesafe',\n apiKey: config.apiKey || process.env.TYPESAFE_API_KEY,\n baseUrl: config.baseUrl || process.env.TYPESAFE_BASE_URL,\n } as TypeSafeOptions);\n }\n\n throw new ValidationError(\n 'Could not auto-detect AI provider from options or environment',\n {\n hint: 'Please specify a \"type\" field in options or provide provider-specific credentials/environment variables',\n supportedTypes: [...AI_PROVIDER_TYPES] as AIProviderType[],\n providedOptions: Object.keys(config),\n checkedEnvVars: [\n 'HAVE_AI_PROVIDER',\n 'HAVE_AI_TYPE',\n 'HAVE_AI_API_KEY',\n 'LITELLM_BASE_URL',\n 'LITELLM_API_KEY',\n 'OLLAMA_HOST',\n 'OLLAMA_BASE_URL',\n 'OLLAMA_API_KEY',\n 'OPENAI_API_KEY',\n 'ANTHROPIC_API_KEY',\n 'GEMINI_API_KEY',\n 'GOOGLE_API_KEY',\n 'HF_TOKEN',\n 'AWS_ACCESS_KEY_ID',\n 'AWS_DEFAULT_REGION',\n 'TYPESAFE_API_KEY',\n 'TYPESAFE_BASE_URL',\n 'OPENAI_COMPAT_VIDEO_BASE_URL',\n 'OPENAI_COMPAT_VIDEO_API_KEY',\n 'MODELARK_API_KEY',\n 'ARK_API_KEY',\n 'MODELARK_BASE_URL',\n 'SEEVIO_API_KEY',\n 'SEEVIO_BASE_URL',\n ],\n },\n );\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/shared/factory.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAGhD,OAAO,KAAK,EACV,WAAW,EAQX,YAAY,
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/shared/factory.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAGhD,OAAO,KAAK,EACV,WAAW,EAQX,YAAY,EASb,MAAM,SAAS,CAAC;AAyJjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,wBAAsB,KAAK,CACzB,OAAO,GAAE,YAAY,GAAG,eAAoB,GAC3C,OAAO,CAAC,WAAW,CAAC,CA0FtB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAsB,SAAS,CAC7B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC3B,OAAO,CAAC,WAAW,CAAC,CA6CtB"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { AICapabilities, AIInterface, AIMessage, AIModel, AIResponse, ChatOptions, CompletionOptions, DecisionOptions, DecisionRequest, DecisionResult, EmbeddingOptions, EmbeddingResponse, ImageDescriptionOptions, ImageEmbeddingOptions, ImageGenerationOptions, ImageGenerationResponse, MessageOptions, TTSOptions, TTSResponse, TypeSafeOptions, VideoGenerationJob, VideoGenerationOptions, VideoGenerationResult, VideoGenerationStatusResult, Voice, VoiceCloneOptions, VoiceDesignOptions, VoiceListOptions } from '../types';
|
|
2
|
+
/** A decision-only adapter for TypeSafe's System One endpoint. */
|
|
3
|
+
export declare class TypeSafeProvider implements AIInterface {
|
|
4
|
+
private readonly options;
|
|
5
|
+
constructor(options: TypeSafeOptions);
|
|
6
|
+
decide(request: DecisionRequest, options?: DecisionOptions): Promise<DecisionResult>;
|
|
7
|
+
getModels(): Promise<AIModel[]>;
|
|
8
|
+
getCapabilities(): Promise<AICapabilities>;
|
|
9
|
+
private unsupported;
|
|
10
|
+
chat(_a: AIMessage[], _b?: ChatOptions): Promise<AIResponse>;
|
|
11
|
+
complete(_a: string, _b?: CompletionOptions): Promise<AIResponse>;
|
|
12
|
+
message(_a: string, _b?: MessageOptions): Promise<string>;
|
|
13
|
+
embed(_a: string | string[], _b?: EmbeddingOptions): Promise<EmbeddingResponse>;
|
|
14
|
+
embedImage(_a: string | Buffer, _b?: ImageEmbeddingOptions): Promise<EmbeddingResponse>;
|
|
15
|
+
describeImage(_a: string | Buffer, _b?: string, _c?: ImageDescriptionOptions): Promise<string>;
|
|
16
|
+
generateImage(_a: string, _b?: ImageGenerationOptions): Promise<ImageGenerationResponse>;
|
|
17
|
+
stream(_a: AIMessage[], _b?: ChatOptions): AsyncIterable<string>;
|
|
18
|
+
countTokens(_a: string): Promise<number>;
|
|
19
|
+
submitVideoGenerationJob(_a: VideoGenerationOptions): Promise<VideoGenerationJob>;
|
|
20
|
+
getVideoGenerationJob(_a: VideoGenerationJob): Promise<VideoGenerationStatusResult>;
|
|
21
|
+
fetchVideoGenerationResult(_a: VideoGenerationJob): Promise<VideoGenerationResult>;
|
|
22
|
+
cancelVideoGenerationJob(_a: VideoGenerationJob): Promise<void>;
|
|
23
|
+
validateVideoGenerationAccess(): Promise<boolean>;
|
|
24
|
+
synthesizeSpeech(_a: string, _b?: TTSOptions): Promise<TTSResponse>;
|
|
25
|
+
streamSpeech(_a: string, _b?: TTSOptions): AsyncIterable<Buffer>;
|
|
26
|
+
cloneVoice(_a: VoiceCloneOptions): Promise<Voice>;
|
|
27
|
+
designVoice(_a: VoiceDesignOptions): Promise<Voice>;
|
|
28
|
+
getVoices(_a?: VoiceListOptions): Promise<Voice[]>;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=typesafe.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typesafe.d.ts","sourceRoot":"","sources":["../../../src/shared/providers/typesafe.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rate-limit.d.ts","sourceRoot":"","sources":["../../src/shared/rate-limit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAsB,YAAY,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAkB,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"rate-limit.d.ts","sourceRoot":"","sources":["../../src/shared/rate-limit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAsB,YAAY,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAkB,MAAM,SAAS,CAAC;AAoQlD,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAC7C,MAAM,GAAG,SAAS,CAyBpB;AAkBD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAmC3E;AAED,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,WAAW,EACvD,MAAM,EAAE,CAAC,EACT,OAAO,EAAE,YAAY,GAAG,eAAe,GACtC,CAAC,CA4CH;AAED,wBAAgB,+BAA+B,IAAI,IAAI,CAEtD;AAED,wBAAgB,6BAA6B,IAAI;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB,EAAE,MAAM,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;CACf,CAMA;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,OAAO,CAEnE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safety.d.ts","sourceRoot":"","sources":["../../src/shared/safety.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,WAAW,EACX,sBAAsB,EACvB,MAAM,SAAS,CAAC;AAGjB,eAAO,MAAM,qBAAqB,SAAU,CAAC;AAC7C,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC,eAAO,MAAM,4BAA4B,EAAE,QAAQ,CAAC,kBAAkB,CAMlE,CAAC;AAEL,MAAM,WAAW,uBAAwB,SAAQ,aAAa;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,kBAAkB,CAAC;CACtC;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,IAAI,IAAI,CAAC;IAChB,UAAU,IAAI,OAAO,CAAC;CACvB;AAiBD,wBAAgB,sBAAsB,CAAC,CAAC,SAAS,aAAa,EAC5D,OAAO,EAAE,CAAC,GACT,CAAC,GAAG,uBAAuB,CA4C7B;AAiDD,wBAAgB,oBAAoB,CAClC,CAAC,SAAS,iBAAiB,GAAG;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,WAAW,CAAC,eAAe,CAAC,CAAC;IAC7C,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,EAED,eAAe,EAAE,aAAa,EAC9B,OAAO,EAAE,CAAC,EACV,QAAQ,CAAC,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM,GACb,CAAC,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,kBAAkB,CAAA;CAAE,CA6C1D;AAED,wBAAgB,+BAA+B,CAC7C,CAAC,SAAS,sBAAsB,EAEhC,eAAe,EAAE,aAAa,EAC9B,OAAO,EAAE,CAAC,EACV,QAAQ,CAAC,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM,GACb,CAAC,GAAG;IAAE,CAAC,EAAE,MAAM,CAAA;CAAE,CAcnB;AAED,wBAAgB,sBAAsB,CACpC,eAAe,EAAE,aAAa,EAC9B,cAAc,GAAE,iBAAsB,GACrC,uBAAuB,CAiCzB;AAWD,wBAAgB,gBAAgB,CAC9B,eAAe,EAAE,aAAa,EAC9B,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,GAAG;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B,GACA,IAAI,CAUN;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,OAAO,EACd,UAAU,UAAQ,GACjB;IAAE,MAAM,EAAE,eAAe,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"safety.d.ts","sourceRoot":"","sources":["../../src/shared/safety.ts"],"names":[],"mappings":"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"}
|
package/dist/shared/types.d.ts
CHANGED
|
@@ -39,7 +39,7 @@ export interface AIRequestControls {
|
|
|
39
39
|
usageTags?: Record<string, string>;
|
|
40
40
|
}
|
|
41
41
|
/** Operations reported through {@link AIRequestEvent}. */
|
|
42
|
-
export type AIRequestOperation = 'chat' | 'complete' | 'message' | 'embed' | 'embedImage' | 'describeImage' | 'generateImage' | 'stream' | 'submitVideoGenerationJob' | 'getVideoGenerationJob' | 'fetchVideoGenerationResult' | 'cancelVideoGenerationJob';
|
|
42
|
+
export type AIRequestOperation = 'decide' | 'chat' | 'complete' | 'message' | 'embed' | 'embedImage' | 'describeImage' | 'generateImage' | 'stream' | 'submitVideoGenerationJob' | 'getVideoGenerationJob' | 'fetchVideoGenerationResult' | 'cancelVideoGenerationJob';
|
|
43
43
|
/** Terminal lifecycle state for a provider request. */
|
|
44
44
|
export type AIRequestStatus = 'succeeded' | 'failed' | 'timed_out' | 'aborted' | 'rejected';
|
|
45
45
|
/**
|
|
@@ -62,7 +62,7 @@ export interface AIRequestEvent {
|
|
|
62
62
|
/**
|
|
63
63
|
* Supported AI provider types
|
|
64
64
|
*/
|
|
65
|
-
export declare const AI_PROVIDER_TYPES: readonly ["openai", "litellm", "bifrost", "ollama", "gemini", "anthropic", "huggingface", "bedrock", "claude-cli", "qwen3-tts", "openai-compat-video", "byteplus-modelark", "seevio"];
|
|
65
|
+
export declare const AI_PROVIDER_TYPES: readonly ["openai", "litellm", "bifrost", "ollama", "gemini", "anthropic", "huggingface", "bedrock", "claude-cli", "qwen3-tts", "openai-compat-video", "byteplus-modelark", "seevio", "typesafe"];
|
|
66
66
|
/**
|
|
67
67
|
* Supported AI provider type union
|
|
68
68
|
*/
|
|
@@ -861,6 +861,12 @@ export interface AIAdminInterface {
|
|
|
861
861
|
* AI provider capabilities
|
|
862
862
|
*/
|
|
863
863
|
export interface AICapabilities {
|
|
864
|
+
/**
|
|
865
|
+
* Whether the provider supports typed, prompt-free decisions.
|
|
866
|
+
*
|
|
867
|
+
* Optional to preserve source compatibility for existing capability literals.
|
|
868
|
+
*/
|
|
869
|
+
decisions?: boolean;
|
|
864
870
|
/**
|
|
865
871
|
* Whether the provider supports chat completions
|
|
866
872
|
*/
|
|
@@ -940,6 +946,72 @@ export interface TokenUsage {
|
|
|
940
946
|
*/
|
|
941
947
|
totalTokens: number;
|
|
942
948
|
}
|
|
949
|
+
/** JSON-compatible data evaluated by a decision provider. */
|
|
950
|
+
export type DecisionValue = string | number | boolean | null | DecisionValue[] | {
|
|
951
|
+
[key: string]: DecisionValue;
|
|
952
|
+
};
|
|
953
|
+
/** A boolean predicate, expressed without provider-specific terminology. */
|
|
954
|
+
export interface PredicateDecisionQuestion {
|
|
955
|
+
type: 'predicate';
|
|
956
|
+
instructions: DecisionValue;
|
|
957
|
+
criteria?: {
|
|
958
|
+
true?: DecisionValue;
|
|
959
|
+
false?: DecisionValue;
|
|
960
|
+
};
|
|
961
|
+
}
|
|
962
|
+
/** A selection from named, unordered labels. */
|
|
963
|
+
export interface ChoiceDecisionQuestion {
|
|
964
|
+
type: 'choice';
|
|
965
|
+
instructions: DecisionValue;
|
|
966
|
+
criteria: Record<string, DecisionValue | null>;
|
|
967
|
+
}
|
|
968
|
+
/** A position on an ordered rubric. */
|
|
969
|
+
export interface ScoreDecisionQuestion {
|
|
970
|
+
type: 'score';
|
|
971
|
+
instructions: DecisionValue;
|
|
972
|
+
criteria: DecisionValue[];
|
|
973
|
+
}
|
|
974
|
+
export type DecisionQuestion = PredicateDecisionQuestion | ChoiceDecisionQuestion | ScoreDecisionQuestion;
|
|
975
|
+
/** A typed batch of independent questions evaluated against one state. */
|
|
976
|
+
export interface DecisionRequest {
|
|
977
|
+
state: DecisionValue;
|
|
978
|
+
questions: Record<string, DecisionQuestion>;
|
|
979
|
+
}
|
|
980
|
+
/** Request controls for a decision operation. Generation controls do not apply. */
|
|
981
|
+
export interface DecisionOptions extends AIRequestControls {
|
|
982
|
+
model?: string;
|
|
983
|
+
}
|
|
984
|
+
export interface PredicateDecisionAnswer {
|
|
985
|
+
type: 'predicate';
|
|
986
|
+
/** Probability that the predicate is true, bounded from zero through one. */
|
|
987
|
+
probability: number;
|
|
988
|
+
}
|
|
989
|
+
export interface ChoiceDecisionAnswer {
|
|
990
|
+
type: 'choice';
|
|
991
|
+
choice: string;
|
|
992
|
+
probabilities: Record<string, number>;
|
|
993
|
+
confidence: number;
|
|
994
|
+
}
|
|
995
|
+
export interface ScoreDecisionAnswer {
|
|
996
|
+
type: 'score';
|
|
997
|
+
score: number;
|
|
998
|
+
probabilities: Record<string, number>;
|
|
999
|
+
confidence: number;
|
|
1000
|
+
/** Ordered rubric descriptions corresponding to probability keys 0..n-1. */
|
|
1001
|
+
levels: DecisionValue[];
|
|
1002
|
+
}
|
|
1003
|
+
export type DecisionAnswer = PredicateDecisionAnswer | ChoiceDecisionAnswer | ScoreDecisionAnswer;
|
|
1004
|
+
export interface DecisionResult {
|
|
1005
|
+
/** Actual model returned by the provider. */
|
|
1006
|
+
model: string;
|
|
1007
|
+
usage?: TokenUsage;
|
|
1008
|
+
/** Provider/model provenance. Probabilities are not cross-provider calibrated. */
|
|
1009
|
+
provenance: {
|
|
1010
|
+
provider: string;
|
|
1011
|
+
model: string;
|
|
1012
|
+
};
|
|
1013
|
+
answers: Record<string, DecisionAnswer>;
|
|
1014
|
+
}
|
|
943
1015
|
/**
|
|
944
1016
|
* Usage event emitted via the `onUsage` callback after each API call.
|
|
945
1017
|
* Provides token usage, timing, and context for tracking and analytics.
|
|
@@ -1028,6 +1100,11 @@ export interface AIInterface {
|
|
|
1028
1100
|
* Optional admin surface for gateway providers that support provisioning.
|
|
1029
1101
|
*/
|
|
1030
1102
|
admin?: AIAdminInterface;
|
|
1103
|
+
/**
|
|
1104
|
+
* Evaluate provider-neutral, typed questions without using text generation.
|
|
1105
|
+
* Optional so third-party implementations remain source compatible.
|
|
1106
|
+
*/
|
|
1107
|
+
decide?(request: DecisionRequest, options?: DecisionOptions): Promise<DecisionResult>;
|
|
1031
1108
|
/**
|
|
1032
1109
|
* Generate a chat completion from a sequence of messages.
|
|
1033
1110
|
*
|
|
@@ -1758,10 +1835,17 @@ export interface SeevioOptions extends BaseAIOptions {
|
|
|
1758
1835
|
/** Maximum generated-video download size in bytes. Defaults to 200 MiB. */
|
|
1759
1836
|
maxResultBytes?: number;
|
|
1760
1837
|
}
|
|
1838
|
+
/** TypeSafe System One decision provider. `defaultModel` selects a Jev model. */
|
|
1839
|
+
export interface TypeSafeOptions extends BaseAIOptions {
|
|
1840
|
+
type: 'typesafe';
|
|
1841
|
+
apiKey?: string;
|
|
1842
|
+
/** Defaults to https://api.typesafe.ai/v1. */
|
|
1843
|
+
baseUrl?: string;
|
|
1844
|
+
}
|
|
1761
1845
|
/**
|
|
1762
1846
|
* Union type for all provider options
|
|
1763
1847
|
*/
|
|
1764
|
-
export type GetAIOptions = OpenAIOptions | LiteLLMOptions | BifrostOptions | OllamaOptions | GeminiOptions | AnthropicOptions | HuggingFaceOptions | BedrockOptions | ClaudeCliOptions | Qwen3TTSOptions | OpenAICompatVideoOptions | ByteplusModelArkOptions | SeevioOptions;
|
|
1848
|
+
export type GetAIOptions = OpenAIOptions | LiteLLMOptions | BifrostOptions | OllamaOptions | GeminiOptions | AnthropicOptions | HuggingFaceOptions | BedrockOptions | ClaudeCliOptions | Qwen3TTSOptions | OpenAICompatVideoOptions | ByteplusModelArkOptions | SeevioOptions | TypeSafeOptions;
|
|
1765
1849
|
/**
|
|
1766
1850
|
* Base error class for all AI operations.
|
|
1767
1851
|
* Provider-specific errors are mapped to subclasses for structured error handling.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/shared/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAExE;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,yDAAyD;IACzD,eAAe,EAAE,MAAM,CAAC;IAExB,uEAAuE;IACvE,kBAAkB,EAAE,MAAM,CAAC;IAE3B,oEAAoE;IACpE,mBAAmB,EAAE,MAAM,CAAC;IAE5B,oEAAoE;IACpE,UAAU,EAAE,OAAO,GAAG,OAAO,CAAC;CAC/B;AAED,2EAA2E;AAC3E,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,MAAM,GAAG,mBAAmB,CAAC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,oEAAoE;AACpE,MAAM,WAAW,iBAAiB;IAChC,mFAAmF;IACnF,MAAM,CAAC,EAAE,WAAW,CAAC;IAErB,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,2CAA2C;IAC3C,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAE/B,mEAAmE;IACnE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAED,0DAA0D;AAC1D,MAAM,MAAM,kBAAkB,GAC1B,MAAM,GACN,UAAU,GACV,SAAS,GACT,OAAO,GACP,YAAY,GACZ,eAAe,GACf,eAAe,GACf,QAAQ,GACR,0BAA0B,GAC1B,uBAAuB,GACvB,4BAA4B,GAC5B,0BAA0B,CAAC;AAE/B,uDAAuD;AACvD,MAAM,MAAM,eAAe,GACvB,WAAW,GACX,QAAQ,GACR,WAAW,GACX,SAAS,GACT,UAAU,CAAC;AAEf;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,kBAAkB,CAAC;IAC9B,MAAM,EAAE,eAAe,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,uLAcpB,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,WAAW,CAAC;IAClB,SAAS,EAAE;QACT,gDAAgD;QAChD,GAAG,EAAE,MAAM,CAAC;QACZ,wCAAwC;QACxC,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;KAClC,CAAC;CACH;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,eAAe,GAAG,gBAAgB,CAAC;AAE7D;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,EAAE,GAAG,MAAM,CAS1E;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,WAAW,SAAS;IACxB;;OAEG;IACH,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,GAAG,UAAU,GAAG,MAAM,CAAC;IAE5D;;;;;OAKG;IACH,OAAO,EAAE,MAAM,GAAG,WAAW,EAAE,CAAC;IAEhC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC;QACjB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,UAAU,CAAC;QACjB,QAAQ,EAAE;YACR,IAAI,EAAE,MAAM,CAAC;YACb,SAAS,EAAE,MAAM,CAAC;SACnB,CAAC;KACH,CAAC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,WAAW,WAAY,SAAQ,iBAAiB;IACpD;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,CAAC,CAAC,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAEzB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAEjB;;OAEG;IACH,UAAU,CAAC,EACP,MAAM,GACN,MAAM,GACN;QAAE,IAAI,EAAE,UAAU,CAAC;QAAC,QAAQ,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;IAErD;;OAEG;IACH,cAAc,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,GAAG,aAAa,CAAA;KAAE,CAAC;IAElD;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAErC;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,EAAE,mBAAmB,GAAG,KAAK,CAAC;IAE5C;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,iBAAiB;IAC1D;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,CAAC,CAAC,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAEzB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAErC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;IAEpC;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,iBAAiB;IAChE;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,iBAAiB;IAC/D;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE7B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,KAAK,CAAC;IAE3C;;;;OAIG;IACH,CAAC,CAAC,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAE5B;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,MAAM,EAAE,KAAK,CAAC;QACZ;;WAEG;QACH,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;QACtB;;WAEG;QACH,QAAQ,EAAE,MAAM,CAAC;QACjB;;WAEG;QACH,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC,CAAC;IAEH;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,cAAe,SAAQ,iBAAiB;IACvD;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;IAEvC;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC;IAEtB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAEzB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,cAAc,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,GAAG,aAAa,CAAA;KAAE,CAAC;IAElD;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAEjB;;OAEG;IACH,UAAU,CAAC,EACP,MAAM,GACN,MAAM,GACN;QAAE,IAAI,EAAE,UAAU,CAAC;QAAC,QAAQ,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;IAErD;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAErC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB;;OAEG;IACH,IAAI,EAAE,UAAU,CAAC;IAEjB;;OAEG;IACH,QAAQ,EAAE;QACR;;WAEG;QACH,IAAI,EAAE,MAAM,CAAC;QAEb;;WAEG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB;;WAEG;QACH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAClC,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,aAAa,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,YAAY,EAAE,MAAM,EAAE,CAAC;IAEvB;;OAEG;IACH,iBAAiB,EAAE,OAAO,CAAC;IAE3B;;OAEG;IACH,cAAc,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;GAMG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAEzB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;OAGG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE,aAAa,CAAC;IAEvB;;OAEG;IACH,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAE7B;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEnC;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAElB;;OAEG;IACH,eAAe,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAE1C;;OAEG;IACH,MAAM,CAAC,EAAE,aAAa,CAAC;IAEvB;;OAEG;IACH,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAE7B;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEnC;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEjC;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEtC;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAExE;;OAEG;IACH,gBAAgB,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CAC7E;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,IAAI,EAAE,OAAO,CAAC;IAEd;;OAEG;IACH,UAAU,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,UAAU,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,UAAU,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,eAAe,EAAE,OAAO,CAAC;IAEzB;;OAEG;IACH,eAAe,EAAE,OAAO,CAAC;IAEzB;;;OAGG;IACH,eAAe,EAAE,OAAO,CAAC;IAEzB;;OAEG;IACH,GAAG,EAAE,OAAO,CAAC;IAEb;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,WAAW,EAAE,OAAO,CAAC;IAErB;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,mBAAmB,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,UAAU;IACzB,+EAA+E;IAC/E,QAAQ,EAAE,MAAM,CAAC;IAEjB,wEAAwE;IACxE,KAAK,EAAE,MAAM,CAAC;IAEd,+CAA+C;IAC/C,SAAS,EAAE,kBAAkB,CAAC;IAE9B,4DAA4D;IAC5D,KAAK,CAAC,EAAE,UAAU,CAAC;IAEnB,0DAA0D;IAC1D,QAAQ,EAAE,MAAM,CAAC;IAEjB,wCAAwC;IACxC,SAAS,EAAE,IAAI,CAAC;IAEhB,2EAA2E;IAC3E,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IAEnB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,YAAY,GAAG,gBAAgB,CAAC;IAEnE;;OAEG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC;QAChB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,UAAU,CAAC;QACjB,QAAQ,EAAE;YACR,IAAI,EAAE,MAAM,CAAC;YACb,SAAS,EAAE,MAAM,CAAC;SACnB,CAAC;KACH,CAAC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,UAAU,EAAE,MAAM,EAAE,EAAE,CAAC;IAEvB;;OAEG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IAEnB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,KAAK,CAAC,EAAE,gBAAgB,CAAC;IAEzB;;;;;;;;;OASG;IACH,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAExE;;;;;;;OAOG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAE3E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEjE;;;;;;;OAOG;IACH,KAAK,CACH,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EACvB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAE9B;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,UAAU,CACR,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAE9B;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,aAAa,CACX,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnB;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,aAAa,CACX,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,sBAAsB,GAC/B,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAMpC;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,wBAAwB,CACtB,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAE/B;;;;;;;;;;;;;;OAcG;IACH,qBAAqB,CACnB,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAExC;;;;;;;;;;;;;OAaG;IACH,0BAA0B,CACxB,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAElC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACH,wBAAwB,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpE;;;;;;;;;;;;OAYG;IACH,6BAA6B,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAElD;;;;;;;OAOG;IACH,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAE5E;;;;;OAKG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE3C;;;;OAIG;IACH,SAAS,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAEhC;;;;OAIG;IACH,eAAe,IAAI,OAAO,CAAC,cAAc,CAAC,CAAC;IAM3C;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAE3E;;;;;;;;;;;;;;;;OAgBG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAExE;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAEvD;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAEzD;;;;;;;;;;;;;;;;;;OAkBG;IACH,SAAS,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;CACzD;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAE/C;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjC;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IAEtC;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;IAE5C;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEnC;;OAEG;IACH,SAAS,CAAC,EAAE,kBAAkB,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,aAAa;IAClD,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;GAKG;AACH,MAAM,WAAW,cAAe,SAAQ,aAAa;IACnD,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvC;AAED;;;;;GAKG;AACH,MAAM,WAAW,cAAe,SAAQ,aAAa;IACnD,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,aAAc,SAAQ,aAAa;IAClD,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,aAAa;IAClD,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;;;;;;;OAYG;IACH,aAAa,CAAC,EAAE,mBAAmB,CAAC;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,aAAa;IACrD,IAAI,EAAE,WAAW,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,aAAa;IACvD,IAAI,EAAE,aAAa,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,aAAa;IACnD,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE;QACZ,WAAW,EAAE,MAAM,CAAC;QACpB,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAiB,SAAQ,aAAa;IACrD,IAAI,EAAE,YAAY,CAAC;IACnB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;GAKG;AACH,MAAM,WAAW,eAAgB,SAAQ,aAAa;IACpD,IAAI,EAAE,WAAW,CAAC;IAElB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,YAAY,CAAC,EAAE,gBAAgB,GAAG,gBAAgB,CAAC;IAEnD;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;OAGG;IACH,SAAS,CAAC,EAAE,kBAAkB,CAAC;CAChC;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,wBAAyB,SAAQ,aAAa;IAC7D,IAAI,EAAE,qBAAqB,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;GAKG;AACH,MAAM,WAAW,uBAAwB,SAAQ,aAAa;IAC5D,IAAI,EAAE,mBAAmB,CAAC;IAC1B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,kBAAkB,CAAC;CAChC;AAED;;;;;GAKG;AACH,MAAM,WAAW,aAAc,SAAQ,aAAa;IAClD,sDAAsD;IACtD,IAAI,EAAE,QAAQ,CAAC;IACf,mEAAmE;IACnE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qDAAqD;IACrD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,2EAA2E;IAC3E,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GACpB,aAAa,GACb,cAAc,GACd,cAAc,GACd,aAAa,GACb,aAAa,GACb,gBAAgB,GAChB,kBAAkB,GAClB,cAAc,GACd,gBAAgB,GAChB,eAAe,GACf,wBAAwB,GACxB,uBAAuB,GACvB,aAAa,CAAC;AAElB;;;;;;;;GAQG;AACH,qBAAa,OAAQ,SAAQ,KAAK;IAGvB,IAAI,EAAE,MAAM;IACZ,QAAQ,CAAC,EAAE,MAAM;IACjB,KAAK,CAAC,EAAE,MAAM;IACd,SAAS,EAAE,OAAO;gBAJzB,OAAO,EAAE,MAAM,EACR,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,MAAM,YAAA,EACjB,KAAK,CAAC,EAAE,MAAM,YAAA,EACd,SAAS,GAAE,OAAe;CAKpC;AAED;;;;GAIG;AACH,qBAAa,mBAAoB,SAAQ,OAAO;gBAClC,QAAQ,CAAC,EAAE,MAAM;CAI9B;AAED;;;;;GAKG;AACH,qBAAa,cAAe,SAAQ,OAAO;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;gBAEf,QAAQ,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM;CAWnD;AAED;;;;;GAKG;AACH,qBAAa,kBAAmB,SAAQ,OAAO;gBACjC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;CAU7C;AAED;;;;;GAKG;AACH,qBAAa,kBAAmB,SAAQ,OAAO;gBACjC,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;CAU9C;AAED;;;;;GAKG;AACH,qBAAa,kBAAmB,SAAQ,OAAO;gBACjC,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;CAU9C;AAMD;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAC7B,QAAQ,GACR,SAAS,GACT,WAAW,GACX,QAAQ,GACR,WAAW,CAAC;AAEhB;;;GAGG;AACH,MAAM,WAAW,6BAA6B;IAC5C;;OAEG;IACH,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,+EAA+E;AAC/E,MAAM,WAAW,6BAA6B;IAC5C,iFAAiF;IACjF,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;IAClC,4CAA4C;IAC5C,GAAG,EAAE,MAAM,CAAC;IACZ,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+EAA+E;IAC/E,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,iBAAiB;IAC/D;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,eAAe,CAAC,EAAE,6BAA6B,EAAE,CAAC;IAElD;;;;;OAKG;IACH,cAAc,CAAC,EAAE,6BAA6B,EAAE,CAAC;IAEjD;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,wEAAwE;IACxE,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,2EAA2E;IAC3E,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,kFAAkF;IAClF,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,6EAA6E;IAC7E,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,mFAAmF;AACnF,MAAM,WAAW,8BAA8B;IAC7C,gFAAgF;IAChF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,MAAM,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,eAAe,CAAC;IAC/D,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;OAEG;IACH,MAAM,EAAE,qBAAqB,CAAC;IAE9B;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;;;;;;OASG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAE/B,mEAAmE;IACnE,OAAO,CAAC,EAAE,8BAA8B,CAAC;CAC1C;AAMD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;IAErC;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAE7B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;CACxC;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAE3B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;IAEvC;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;IAEvC;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/shared/types.ts"],"names":[],"mappings":"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"}
|
package/metadata.json
CHANGED
|
@@ -5,9 +5,9 @@
|
|
|
5
5
|
"index": 2,
|
|
6
6
|
"count": 32
|
|
7
7
|
},
|
|
8
|
-
"description": "Standardized AI interface supporting
|
|
8
|
+
"description": "Standardized AI interface supporting chat, embeddings, media, and TypeSafe/Jev typed decisions",
|
|
9
9
|
"provides": [
|
|
10
|
-
"Standardized AI interface supporting
|
|
10
|
+
"Standardized AI interface supporting chat, embeddings, media, and TypeSafe/Jev typed decisions"
|
|
11
11
|
],
|
|
12
12
|
"implements": [],
|
|
13
13
|
"requires": {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@happyvertical/ai",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Standardized AI interface supporting
|
|
3
|
+
"version": "0.94.1",
|
|
4
|
+
"description": "Standardized AI interface supporting chat, embeddings, media, and TypeSafe/Jev typed decisions",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
7
|
"types": "./dist/index.d.ts",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"@aws-sdk/client-bedrock-runtime": "3.1034.0",
|
|
45
45
|
"@google/genai": "1.50.1",
|
|
46
46
|
"openai": "6.34.0",
|
|
47
|
-
"@happyvertical/utils": "0.
|
|
47
|
+
"@happyvertical/utils": "0.94.1"
|
|
48
48
|
},
|
|
49
49
|
"devDependencies": {
|
|
50
50
|
"@types/node": "25.0.10",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rate-limit-C2oPwLGI.js","names":[],"sources":["../../src/shared/rate-limit.ts"],"sourcesContent":["import type { AIClientOptions } from './client';\nimport type { AIInterface, AIRateLimitOptions, GetAIOptions } from './types';\nimport { AIError, RateLimitError } from './types';\n\nconst RATE_LIMITED_METHODS = new Set<keyof AIInterface>([\n 'chat',\n 'complete',\n 'message',\n 'embed',\n 'embedImage',\n 'describeImage',\n 'generateImage',\n 'getModels',\n 'synthesizeSpeech',\n 'cloneVoice',\n 'designVoice',\n 'getVoices',\n 'submitVideoGenerationJob',\n]);\n\nconst MAX_BUDGET_COORDINATORS = 128;\nconst BUDGET_COORDINATOR_TTL_MS = 15 * 60 * 1000;\n\ninterface NormalizedRateLimitConfig {\n cooldownMs: number;\n initialDelayMs: number;\n key: string;\n maxAttempts: number;\n}\n\nclass BudgetCoordinator {\n private nextAvailableAt = 0;\n private pendingSchedules = 0;\n private tail: Promise<void> = Promise.resolve();\n private lastUsedAt = Date.now();\n\n touch(): void {\n this.lastUsedAt = Date.now();\n }\n\n schedule<T>(work: () => Promise<T>): Promise<T> {\n this.pendingSchedules += 1;\n this.touch();\n\n const run = this.tail.then(work, work);\n this.tail = run.then(\n () => undefined,\n () => undefined,\n );\n\n return run.finally(() => {\n this.pendingSchedules = Math.max(0, this.pendingSchedules - 1);\n this.touch();\n });\n }\n\n async waitUntilReady(): Promise<void> {\n this.touch();\n const delayMs = this.nextAvailableAt - Date.now();\n if (delayMs > 0) {\n await sleep(delayMs);\n }\n }\n\n delayFor(delayMs: number): void {\n this.touch();\n if (delayMs <= 0) {\n return;\n }\n\n this.nextAvailableAt = Math.max(this.nextAvailableAt, Date.now() + delayMs);\n }\n\n isEvictable(now: number): boolean {\n return this.pendingSchedules === 0 && now >= this.nextAvailableAt;\n }\n\n isExpired(now: number): boolean {\n return (\n this.isEvictable(now) &&\n now - this.lastUsedAt >= BUDGET_COORDINATOR_TTL_MS\n );\n }\n\n getLastUsedAt(): number {\n return this.lastUsedAt;\n }\n}\n\nconst budgetCoordinators = new Map<string, BudgetCoordinator>();\n\nfunction sleep(delayMs: number): Promise<void> {\n return new Promise((resolve) => {\n setTimeout(resolve, delayMs);\n });\n}\n\nfunction pruneBudgetCoordinators(): void {\n const now = Date.now();\n\n for (const [key, coordinator] of budgetCoordinators.entries()) {\n if (coordinator.isExpired(now)) {\n budgetCoordinators.delete(key);\n }\n }\n\n while (budgetCoordinators.size > MAX_BUDGET_COORDINATORS) {\n const evictableEntries = [...budgetCoordinators.entries()]\n .filter(([, coordinator]) => coordinator.isEvictable(now))\n .sort(\n ([, leftCoordinator], [, rightCoordinator]) =>\n leftCoordinator.getLastUsedAt() - rightCoordinator.getLastUsedAt(),\n );\n\n if (evictableEntries.length === 0) {\n break;\n }\n\n budgetCoordinators.delete(evictableEntries[0][0]);\n }\n}\n\nfunction getBudgetCoordinator(key: string): BudgetCoordinator {\n pruneBudgetCoordinators();\n\n let coordinator = budgetCoordinators.get(key);\n if (!coordinator) {\n coordinator = new BudgetCoordinator();\n budgetCoordinators.set(key, coordinator);\n pruneBudgetCoordinators();\n }\n\n coordinator.touch();\n return coordinator;\n}\n\nfunction hasPacingConfig(rateLimit?: AIRateLimitOptions): boolean {\n if (!rateLimit || rateLimit.enabled === false) {\n return false;\n }\n\n return (\n rateLimit.enabled === true ||\n rateLimit.key !== undefined ||\n rateLimit.cooldownMs !== undefined ||\n rateLimit.initialDelayMs !== undefined ||\n rateLimit.maxAttempts !== undefined\n );\n}\n\nfunction normalizeNonNegativeInteger(\n value: number | undefined,\n fallback: number,\n): number {\n if (typeof value !== 'number' || !Number.isFinite(value)) {\n return fallback;\n }\n\n return Math.max(0, Math.trunc(value));\n}\n\nfunction hashKey(value: string): string {\n let hash = 2166136261;\n\n for (let index = 0; index < value.length; index += 1) {\n hash ^= value.charCodeAt(index);\n hash = Math.imul(hash, 16777619);\n }\n\n return (hash >>> 0).toString(36);\n}\n\nfunction deriveBudgetKey(options: GetAIOptions | AIClientOptions): string {\n const type = (options as { type?: string }).type;\n const provider = typeof type === 'string' && type ? type : 'openai';\n\n const credentialLikeValues = [\n 'apiKey' in options ? options.apiKey : undefined,\n 'apiToken' in options ? options.apiToken : undefined,\n 'credentials' in options ? options.credentials?.accessKeyId : undefined,\n 'endpoint' in options ? options.endpoint : undefined,\n 'baseUrl' in options ? options.baseUrl : undefined,\n 'cliPath' in options ? options.cliPath : undefined,\n ];\n\n const seed = credentialLikeValues.find(\n (value): value is string => typeof value === 'string' && value.length > 0,\n );\n\n return seed ? `${provider}:${hashKey(seed)}` : `${provider}:default`;\n}\n\nfunction normalizeRateLimitConfig(\n options: GetAIOptions | AIClientOptions,\n): NormalizedRateLimitConfig | null {\n const rateLimit = 'rateLimit' in options ? options.rateLimit : undefined;\n\n if (!hasPacingConfig(rateLimit)) {\n return null;\n }\n\n return {\n cooldownMs: normalizeNonNegativeInteger(rateLimit?.cooldownMs, 0),\n initialDelayMs: normalizeNonNegativeInteger(\n rateLimit?.initialDelayMs,\n 5000,\n ),\n key: rateLimit?.key?.trim() || deriveBudgetKey(options),\n maxAttempts: Math.max(\n 1,\n normalizeNonNegativeInteger(rateLimit?.maxAttempts, 1),\n ),\n };\n}\n\nfunction getRetryDelayMs(\n error: RateLimitError,\n config: NormalizedRateLimitConfig,\n): number {\n const hintedDelayMs =\n typeof error.retryAfter === 'number' && Number.isFinite(error.retryAfter)\n ? Math.max(0, Math.ceil(error.retryAfter * 1000))\n : undefined;\n\n if (hintedDelayMs !== undefined) {\n return Math.max(config.cooldownMs, hintedDelayMs);\n }\n\n return Math.max(config.cooldownMs, config.initialDelayMs);\n}\n\nasync function invokeWithPacing<T>(\n execute: () => Promise<T>,\n coordinator: BudgetCoordinator,\n config: NormalizedRateLimitConfig,\n allowRetry = true,\n): Promise<T> {\n let attempt = 1;\n\n while (true) {\n await coordinator.waitUntilReady();\n\n try {\n const result = await execute();\n coordinator.delayFor(config.cooldownMs);\n return result;\n } catch (error) {\n if (error instanceof RateLimitError) {\n coordinator.delayFor(getRetryDelayMs(error, config));\n\n if (allowRetry && error.retryable && attempt < config.maxAttempts) {\n attempt += 1;\n continue;\n }\n }\n\n throw error;\n }\n }\n}\n\nexport function parseRetryAfterSeconds(\n retryAfter: number | string | null | undefined,\n): number | undefined {\n if (typeof retryAfter === 'number' && Number.isFinite(retryAfter)) {\n return Math.max(0, retryAfter);\n }\n\n if (typeof retryAfter !== 'string') {\n return undefined;\n }\n\n const trimmed = retryAfter.trim();\n if (!trimmed) {\n return undefined;\n }\n\n const seconds = Number.parseFloat(trimmed);\n if (!Number.isNaN(seconds)) {\n return Math.max(0, seconds);\n }\n\n const retryAt = Date.parse(trimmed);\n if (Number.isNaN(retryAt)) {\n return undefined;\n }\n\n return Math.max(0, Math.ceil((retryAt - Date.now()) / 1000));\n}\n\nfunction getHeaderValue(\n headers: unknown,\n headerName: string,\n): number | string | undefined {\n if (!headers || typeof headers !== 'object') {\n return undefined;\n }\n\n if ('get' in headers && typeof headers.get === 'function') {\n return headers.get(headerName) ?? headers.get(headerName.toLowerCase());\n }\n\n const objectHeaders = headers as Record<string, number | string | undefined>;\n return objectHeaders[headerName] ?? objectHeaders[headerName.toLowerCase()];\n}\n\nexport function extractRetryAfterSeconds(error: unknown): number | undefined {\n if (!error || typeof error !== 'object') {\n return undefined;\n }\n\n if ('retryAfter' in error) {\n const retryAfter = parseRetryAfterSeconds(\n (error as { retryAfter?: number | string | null }).retryAfter,\n );\n if (retryAfter !== undefined) {\n return retryAfter;\n }\n }\n\n if ('headers' in error) {\n const retryAfter = parseRetryAfterSeconds(\n getHeaderValue((error as { headers?: unknown }).headers, 'retry-after'),\n );\n if (retryAfter !== undefined) {\n return retryAfter;\n }\n }\n\n const message =\n 'message' in error && typeof error.message === 'string'\n ? error.message\n : '';\n\n const retryAfterMatch =\n message.match(/retry after\\s+(\\d+(?:\\.\\d+)?)\\s*s?/i) ??\n message.match(/retryDelay[^\\d]*(\\d+(?:\\.\\d+)?)s/i);\n\n return retryAfterMatch\n ? parseRetryAfterSeconds(retryAfterMatch[1])\n : undefined;\n}\n\nexport function createRateLimitedAI<T extends AIInterface>(\n client: T,\n options: GetAIOptions | AIClientOptions,\n): T {\n const config = normalizeRateLimitConfig(options);\n if (!config) {\n return client;\n }\n\n const wrappedMethods = new Map<PropertyKey, unknown>();\n // Seevio does not document idempotency for billed video-task submission.\n // Existing providers retain their established pacing-retry behavior.\n const allowSeevioSubmitRetry = options.type !== 'seevio';\n\n return new Proxy(client, {\n get(target, property, receiver) {\n const value = Reflect.get(target, property, receiver);\n\n if (typeof value !== 'function') {\n return value;\n }\n\n if (!RATE_LIMITED_METHODS.has(property as keyof AIInterface)) {\n if (!wrappedMethods.has(property)) {\n wrappedMethods.set(property, value.bind(target));\n }\n\n return wrappedMethods.get(property);\n }\n\n if (!wrappedMethods.has(property)) {\n wrappedMethods.set(property, (...args: unknown[]) => {\n const coordinator = getBudgetCoordinator(config.key);\n return coordinator.schedule(() =>\n invokeWithPacing(\n () => Reflect.apply(value, target, args) as Promise<unknown>,\n coordinator,\n config,\n property !== 'submitVideoGenerationJob' || allowSeevioSubmitRetry,\n ),\n );\n });\n }\n\n return wrappedMethods.get(property);\n },\n }) as T;\n}\n\nexport function __resetAIRateLimitStateForTests(): void {\n budgetCoordinators.clear();\n}\n\nexport function __getAIRateLimitStateForTests(): {\n count: number;\n maxBudgetCoordinators: number;\n ttlMs: number;\n} {\n return {\n count: budgetCoordinators.size,\n maxBudgetCoordinators: MAX_BUDGET_COORDINATORS,\n ttlMs: BUDGET_COORDINATOR_TTL_MS,\n };\n}\n\nexport function isRetryableAIError(error: unknown): error is AIError {\n return error instanceof AIError && error.retryable;\n}\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"safety-ClfpyKEN.js","names":[],"sources":["../../src/shared/safety.ts"],"sourcesContent":["import type {\n AIGenerationLimits,\n AIInterface,\n AIReasoningOptions,\n AIRequestControls,\n AIRequestEvent,\n AIRequestOperation,\n AIRequestStatus,\n BaseAIOptions,\n ChatOptions,\n ImageGenerationOptions,\n} from './types';\nimport { AIError } from './types';\n\nexport const DEFAULT_AI_TIMEOUT_MS = 120_000;\nexport const DEFAULT_AI_MAX_RETRIES = 0;\n\nexport const DEFAULT_AI_GENERATION_LIMITS: Readonly<AIGenerationLimits> =\n Object.freeze({\n maxOutputTokens: 4096,\n maxReasoningTokens: 1024,\n maxImagesPerRequest: 1,\n onExceeded: 'error',\n });\n\nexport interface NormalizedBaseAIOptions extends BaseAIOptions {\n timeout: number;\n maxRetries: number;\n generationLimits: AIGenerationLimits;\n}\n\nexport interface PreparedRequestControls {\n signal: AbortSignal;\n timeout: number;\n cleanup(): void;\n didTimeout(): boolean;\n}\n\nfunction positiveInteger(\n value: number | undefined,\n fallback: number,\n field: string,\n): number {\n if (value === undefined) return fallback;\n if (!Number.isFinite(value) || value <= 0) {\n throw new AIError(\n `${field} must be a positive finite number`,\n 'AI_LIMIT_INVALID',\n );\n }\n return Math.trunc(value);\n}\n\nexport function normalizeBaseAIOptions<T extends BaseAIOptions>(\n options: T,\n): T & NormalizedBaseAIOptions {\n const configuredLimits = options.generationLimits || {};\n const generationLimits: AIGenerationLimits = {\n maxOutputTokens: positiveInteger(\n configuredLimits.maxOutputTokens,\n DEFAULT_AI_GENERATION_LIMITS.maxOutputTokens,\n 'generationLimits.maxOutputTokens',\n ),\n maxReasoningTokens: positiveInteger(\n configuredLimits.maxReasoningTokens,\n DEFAULT_AI_GENERATION_LIMITS.maxReasoningTokens,\n 'generationLimits.maxReasoningTokens',\n ),\n maxImagesPerRequest: positiveInteger(\n configuredLimits.maxImagesPerRequest,\n DEFAULT_AI_GENERATION_LIMITS.maxImagesPerRequest,\n 'generationLimits.maxImagesPerRequest',\n ),\n onExceeded:\n configuredLimits.onExceeded || DEFAULT_AI_GENERATION_LIMITS.onExceeded,\n };\n\n if (!['error', 'clamp'].includes(generationLimits.onExceeded)) {\n throw new AIError(\n 'generationLimits.onExceeded must be \"error\" or \"clamp\"',\n 'AI_LIMIT_INVALID',\n );\n }\n\n return {\n ...options,\n timeout: positiveInteger(options.timeout, DEFAULT_AI_TIMEOUT_MS, 'timeout'),\n maxRetries: (() => {\n if (options.maxRetries === undefined) return DEFAULT_AI_MAX_RETRIES;\n if (!Number.isFinite(options.maxRetries) || options.maxRetries < 0) {\n throw new AIError(\n 'maxRetries must be a non-negative finite number',\n 'AI_LIMIT_INVALID',\n );\n }\n return Math.trunc(options.maxRetries);\n })(),\n generationLimits,\n };\n}\n\nfunction reasoningTokensForEffort(\n effort: AIReasoningOptions['effort'] | false | undefined,\n): number | undefined {\n switch (effort) {\n case false:\n case 'none':\n return 0;\n case 'minimal':\n return 1024;\n case 'low':\n return 2048;\n case 'medium':\n return 4096;\n case 'high':\n return 8192;\n default:\n return undefined;\n }\n}\n\nfunction enforceLimit(\n requested: number,\n limit: number,\n behavior: AIGenerationLimits['onExceeded'],\n label: string,\n provider?: string,\n model?: string,\n): number {\n if (!Number.isFinite(requested) || requested < 0) {\n throw new AIError(\n `${label} must be a non-negative finite number`,\n 'AI_LIMIT_INVALID',\n provider,\n model,\n );\n }\n const normalized = Math.trunc(requested);\n if (normalized <= limit) return normalized;\n if (behavior === 'clamp') return limit;\n throw new AIError(\n `${label} ${normalized} exceeds configured ceiling ${limit}`,\n 'AI_LIMIT_EXCEEDED',\n provider,\n model,\n );\n}\n\nexport function normalizeChatOptions<\n T extends AIRequestControls & {\n maxTokens?: number;\n thinkingLevel?: ChatOptions['thinkingLevel'];\n includeThoughts?: boolean;\n },\n>(\n providerOptions: BaseAIOptions,\n options: T,\n provider?: string,\n model?: string,\n): T & { maxTokens: number; reasoning: AIReasoningOptions } {\n const normalizedProvider = normalizeBaseAIOptions(providerOptions);\n const limits = normalizedProvider.generationLimits;\n const requestedOutput = options.maxTokens ?? limits.maxOutputTokens;\n const legacyEffort =\n options.thinkingLevel ??\n (\n providerOptions as BaseAIOptions & {\n thinkingLevel?: ChatOptions['thinkingLevel'];\n }\n ).thinkingLevel;\n const reasoningWasRequested =\n options.reasoning !== undefined ||\n legacyEffort !== undefined ||\n options.includeThoughts === true;\n const requestedReasoning = reasoningWasRequested\n ? (options.reasoning?.maxTokens ??\n reasoningTokensForEffort(options.reasoning?.effort ?? legacyEffort) ??\n limits.maxReasoningTokens)\n : 0;\n\n return {\n ...options,\n maxTokens: enforceLimit(\n requestedOutput,\n limits.maxOutputTokens,\n limits.onExceeded,\n 'maxTokens',\n provider,\n model,\n ),\n reasoning: {\n ...options.reasoning,\n maxTokens: enforceLimit(\n requestedReasoning,\n limits.maxReasoningTokens,\n limits.onExceeded,\n 'reasoning.maxTokens',\n provider,\n model,\n ),\n includeThoughts:\n options.reasoning?.includeThoughts ?? options.includeThoughts,\n },\n };\n}\n\nexport function normalizeImageGenerationOptions<\n T extends ImageGenerationOptions,\n>(\n providerOptions: BaseAIOptions,\n options: T,\n provider?: string,\n model?: string,\n): T & { n: number } {\n const normalizedProvider = normalizeBaseAIOptions(providerOptions);\n const limits = normalizedProvider.generationLimits;\n return {\n ...options,\n n: enforceLimit(\n options.n ?? 1,\n limits.maxImagesPerRequest,\n limits.onExceeded,\n 'n',\n provider,\n model,\n ),\n };\n}\n\nexport function prepareRequestControls(\n providerOptions: BaseAIOptions,\n requestOptions: AIRequestControls = {},\n): PreparedRequestControls {\n const normalized = normalizeBaseAIOptions(providerOptions);\n const timeout = positiveInteger(\n requestOptions.timeout,\n normalized.timeout,\n 'timeout',\n );\n const controller = new AbortController();\n let timedOut = false;\n\n const abortFromCaller = () => controller.abort(requestOptions.signal?.reason);\n if (requestOptions.signal?.aborted) {\n abortFromCaller();\n } else {\n requestOptions.signal?.addEventListener('abort', abortFromCaller, {\n once: true,\n });\n }\n\n const timer = setTimeout(() => {\n timedOut = true;\n controller.abort(new Error(`AI request timed out after ${timeout}ms`));\n }, timeout);\n\n return {\n signal: controller.signal,\n timeout,\n didTimeout: () => timedOut,\n cleanup: () => {\n clearTimeout(timer);\n requestOptions.signal?.removeEventListener('abort', abortFromCaller);\n },\n };\n}\n\nfunction mergeTags(\n providerOptions: BaseAIOptions,\n callTags?: Record<string, string>,\n): Record<string, string> | undefined {\n return providerOptions.usageTags || callTags\n ? { ...providerOptions.usageTags, ...callTags }\n : undefined;\n}\n\nexport function emitRequestEvent(\n providerOptions: BaseAIOptions,\n event: Omit<AIRequestEvent, 'tags'> & {\n tags?: Record<string, string>;\n },\n): void {\n if (!providerOptions.onRequest) return;\n try {\n providerOptions.onRequest({\n ...event,\n tags: mergeTags(providerOptions, event.tags),\n });\n } catch {\n // Consumer telemetry must never affect an AI request.\n }\n}\n\nexport function classifyRequestFailure(\n error: unknown,\n didTimeout = false,\n): { status: AIRequestStatus; errorCode?: string } {\n const code = error instanceof AIError ? error.code : undefined;\n if (code === 'AI_LIMIT_EXCEEDED' || code === 'AI_LIMIT_INVALID') {\n return { status: 'rejected', errorCode: code };\n }\n if (didTimeout || code === 'AI_TIMEOUT' || code === 'TIMEOUT') {\n return { status: 'timed_out', errorCode: code || 'AI_TIMEOUT' };\n }\n if (error instanceof Error && error.name === 'AbortError') {\n return { status: 'aborted', errorCode: 'ABORTED' };\n }\n if (code === 'AI_ABORTED') {\n return { status: 'aborted', errorCode: code };\n }\n return {\n status: 'failed',\n errorCode: code || (error instanceof Error ? error.name : undefined),\n };\n}\n\nexport function requestEventBase(options: {\n providerOptions: BaseAIOptions;\n provider: string;\n model: string;\n operation: AIRequestOperation;\n callOptions?: { maxTokens?: number; usageTags?: Record<string, string> };\n effectiveMaxOutputTokens?: number;\n}): Omit<AIRequestEvent, 'status' | 'duration'> & {\n tags?: Record<string, string>;\n} {\n const normalized = normalizeBaseAIOptions(options.providerOptions);\n return {\n provider: options.provider,\n model: options.model,\n operation: options.operation,\n attempts: normalized.maxRetries + 1,\n requestedMaxOutputTokens: options.callOptions?.maxTokens,\n effectiveMaxOutputTokens:\n options.operation === 'generateImage' ||\n VIDEO_GENERATION_OPERATIONS.has(options.operation)\n ? undefined\n : (options.effectiveMaxOutputTokens ??\n normalized.generationLimits.maxOutputTokens),\n tags: options.callOptions?.usageTags,\n };\n}\n\nconst OBSERVED_OPERATIONS = new Set<AIRequestOperation>([\n 'chat',\n 'complete',\n 'message',\n 'describeImage',\n 'generateImage',\n 'stream',\n 'submitVideoGenerationJob',\n 'getVideoGenerationJob',\n 'fetchVideoGenerationResult',\n 'cancelVideoGenerationJob',\n]);\n\n/**\n * `getVideoGenerationJob` / `fetchVideoGenerationResult` /\n * `cancelVideoGenerationJob` take a `VideoGenerationJob` handle as their\n * first (and only) argument rather than a chat-shaped `options` object as\n * the second argument. The handle still carries a `model` field, so\n * `callOptionsFor` reads it from the same position as `submitVideoGenerationJob`'s\n * `options` (index 0) rather than index 1.\n */\nconst VIDEO_HANDLE_OPERATIONS = new Set<AIRequestOperation>([\n 'getVideoGenerationJob',\n 'fetchVideoGenerationResult',\n 'cancelVideoGenerationJob',\n]);\n\nconst VIDEO_GENERATION_OPERATIONS = new Set<AIRequestOperation>([\n 'submitVideoGenerationJob',\n ...VIDEO_HANDLE_OPERATIONS,\n]);\n\nfunction callOptionsFor(\n operation: AIRequestOperation,\n args: unknown[],\n):\n | (AIRequestControls & {\n model?: string;\n maxTokens?: number;\n usageTags?: Record<string, string>;\n })\n | undefined {\n const index =\n operation === 'describeImage'\n ? 2\n : operation === 'submitVideoGenerationJob' ||\n VIDEO_HANDLE_OPERATIONS.has(operation)\n ? 0\n : 1;\n const value = args[index];\n return value && typeof value === 'object'\n ? (value as AIRequestControls & {\n model?: string;\n maxTokens?: number;\n usageTags?: Record<string, string>;\n })\n : undefined;\n}\n\nfunction providerName(options: BaseAIOptions): string {\n const configured = (options as BaseAIOptions & { type?: string }).type;\n return configured || 'openai';\n}\n\nfunction effectiveOutputTokens(\n operation: AIRequestOperation,\n providerOptions: BaseAIOptions,\n callOptions:\n | (AIRequestControls & {\n model?: string;\n maxTokens?: number;\n n?: number;\n })\n | undefined,\n): number | undefined {\n if (\n operation === 'generateImage' ||\n VIDEO_GENERATION_OPERATIONS.has(operation)\n ) {\n // maxTokens/reasoning concepts don't apply to video-generation jobs;\n // avoid attaching a misleading chat-shaped token ceiling to the event.\n if (operation === 'generateImage') {\n normalizeImageGenerationOptions(\n providerOptions,\n callOptions || {},\n providerName(providerOptions),\n callOptions?.model,\n );\n }\n return undefined;\n }\n\n return normalizeChatOptions(\n providerOptions,\n callOptions || {},\n providerName(providerOptions),\n callOptions?.model || providerOptions.defaultModel,\n ).maxTokens;\n}\n\n/**\n * Wrap a public provider instance with prompt-free lifecycle observation.\n * Provider adapters still enforce limits internally so direct construction is\n * protected; this wrapper adds one terminal event to the public getAI() path.\n */\nexport function createObservedAI<T extends AIInterface>(\n client: T,\n providerOptions: BaseAIOptions,\n): T {\n if (!providerOptions.onRequest) return client;\n\n return new Proxy(client, {\n get(target, property, receiver) {\n const value = Reflect.get(target, property, receiver);\n if (\n typeof property !== 'string' ||\n typeof value !== 'function' ||\n !OBSERVED_OPERATIONS.has(property as AIRequestOperation)\n ) {\n return typeof value === 'function' ? value.bind(target) : value;\n }\n\n const operation = property as AIRequestOperation;\n if (operation === 'stream') {\n return async function* (...args: unknown[]) {\n const startedAt = Date.now();\n const callOptions = callOptionsFor(operation, args);\n let base: ReturnType<typeof requestEventBase> | undefined;\n try {\n base = requestEventBase({\n providerOptions,\n provider: providerName(providerOptions),\n model:\n callOptions?.model || providerOptions.defaultModel || 'unknown',\n operation,\n callOptions,\n effectiveMaxOutputTokens: effectiveOutputTokens(\n operation,\n providerOptions,\n callOptions,\n ),\n });\n const iterable = Reflect.apply(\n value,\n target,\n args,\n ) as AsyncIterable<string>;\n for await (const chunk of iterable) yield chunk;\n emitRequestEvent(providerOptions, {\n ...base,\n status: 'succeeded',\n duration: Date.now() - startedAt,\n });\n } catch (error) {\n const failure = classifyRequestFailure(error);\n base ||= requestEventBase({\n providerOptions,\n provider: providerName(providerOptions),\n model:\n callOptions?.model || providerOptions.defaultModel || 'unknown',\n operation,\n callOptions,\n });\n emitRequestEvent(providerOptions, {\n ...base,\n ...failure,\n duration: Date.now() - startedAt,\n });\n throw error;\n }\n };\n }\n\n return async (...args: unknown[]) => {\n const startedAt = Date.now();\n const callOptions = callOptionsFor(operation, args);\n let base: ReturnType<typeof requestEventBase> | undefined;\n try {\n base = requestEventBase({\n providerOptions,\n provider: providerName(providerOptions),\n model:\n callOptions?.model || providerOptions.defaultModel || 'unknown',\n operation,\n callOptions,\n effectiveMaxOutputTokens: effectiveOutputTokens(\n operation,\n providerOptions,\n callOptions,\n ),\n });\n const result = await Reflect.apply(value, target, args);\n emitRequestEvent(providerOptions, {\n ...base,\n status: 'succeeded',\n duration: Date.now() - startedAt,\n });\n return result;\n } catch (error) {\n const failure = classifyRequestFailure(error);\n base ||= requestEventBase({\n providerOptions,\n provider: providerName(providerOptions),\n model:\n callOptions?.model || providerOptions.defaultModel || 'unknown',\n operation,\n callOptions,\n });\n emitRequestEvent(providerOptions, {\n ...base,\n ...failure,\n duration: Date.now() - startedAt,\n });\n throw error;\n }\n };\n },\n });\n}\n"],"mappings":"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"}
|