@copilotkit/aimock 1.45.0 → 1.46.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/CHANGELOG.md +24 -0
- package/README.md +7 -1
- package/dist/agui-mock.cjs +25 -25
- package/dist/agui-mock.cjs.map +1 -1
- package/dist/agui-mock.d.cts.map +1 -1
- package/dist/agui-mock.d.ts.map +1 -1
- package/dist/agui-mock.js +25 -25
- package/dist/agui-mock.js.map +1 -1
- package/dist/agui-types.d.ts.map +1 -1
- package/dist/aimock-cli.cjs +15 -1
- package/dist/aimock-cli.cjs.map +1 -1
- package/dist/aimock-cli.d.cts.map +1 -1
- package/dist/aimock-cli.d.ts.map +1 -1
- package/dist/aimock-cli.js +16 -2
- package/dist/aimock-cli.js.map +1 -1
- package/dist/api-key-auth.cjs +10 -9
- package/dist/api-key-auth.cjs.map +1 -1
- package/dist/api-key-auth.d.cts.map +1 -1
- package/dist/api-key-auth.d.ts.map +1 -1
- package/dist/api-key-auth.js +11 -10
- package/dist/api-key-auth.js.map +1 -1
- package/dist/batches.cjs +2 -4
- package/dist/batches.cjs.map +1 -1
- package/dist/batches.d.cts.map +1 -1
- package/dist/batches.d.ts.map +1 -1
- package/dist/batches.js +2 -4
- package/dist/batches.js.map +1 -1
- package/dist/bedrock-converse.cjs +61 -80
- package/dist/bedrock-converse.cjs.map +1 -1
- package/dist/bedrock-converse.d.cts.map +1 -1
- package/dist/bedrock-converse.d.ts.map +1 -1
- package/dist/bedrock-converse.js +58 -77
- package/dist/bedrock-converse.js.map +1 -1
- package/dist/bedrock.cjs +65 -97
- package/dist/bedrock.cjs.map +1 -1
- package/dist/bedrock.d.cts.map +1 -1
- package/dist/bedrock.d.ts.map +1 -1
- package/dist/bedrock.js +62 -94
- package/dist/bedrock.js.map +1 -1
- package/dist/byteplus-video.cjs +11 -10
- package/dist/byteplus-video.cjs.map +1 -1
- package/dist/byteplus-video.d.cts.map +1 -1
- package/dist/byteplus-video.d.ts.map +1 -1
- package/dist/byteplus-video.js +5 -4
- package/dist/byteplus-video.js.map +1 -1
- package/dist/chaos.cjs +5 -4
- package/dist/chaos.cjs.map +1 -1
- package/dist/chaos.d.cts.map +1 -1
- package/dist/chaos.d.ts.map +1 -1
- package/dist/chaos.js +5 -4
- package/dist/chaos.js.map +1 -1
- package/dist/cli.cjs +15 -0
- package/dist/cli.cjs.map +1 -1
- package/dist/cli.js +15 -0
- package/dist/cli.js.map +1 -1
- package/dist/cohere.cjs +49 -74
- package/dist/cohere.cjs.map +1 -1
- package/dist/cohere.d.cts.map +1 -1
- package/dist/cohere.d.ts.map +1 -1
- package/dist/cohere.js +47 -72
- package/dist/cohere.js.map +1 -1
- package/dist/config-loader.cjs +29 -1
- package/dist/config-loader.cjs.map +1 -1
- package/dist/config-loader.d.cts +7 -1
- package/dist/config-loader.d.cts.map +1 -1
- package/dist/config-loader.d.ts +7 -1
- package/dist/config-loader.d.ts.map +1 -1
- package/dist/config-loader.js +29 -2
- package/dist/config-loader.js.map +1 -1
- package/dist/count-tokens.cjs +146 -0
- package/dist/count-tokens.cjs.map +1 -0
- package/dist/count-tokens.js +146 -0
- package/dist/count-tokens.js.map +1 -0
- package/dist/elevenlabs-audio.cjs +36 -34
- package/dist/elevenlabs-audio.cjs.map +1 -1
- package/dist/elevenlabs-audio.d.cts.map +1 -1
- package/dist/elevenlabs-audio.d.ts.map +1 -1
- package/dist/elevenlabs-audio.js +33 -31
- package/dist/elevenlabs-audio.js.map +1 -1
- package/dist/elevenlabs-voice.cjs +38 -37
- package/dist/elevenlabs-voice.cjs.map +1 -1
- package/dist/elevenlabs-voice.d.cts.map +1 -1
- package/dist/elevenlabs-voice.d.ts.map +1 -1
- package/dist/elevenlabs-voice.js +33 -32
- package/dist/elevenlabs-voice.js.map +1 -1
- package/dist/embedding-request.cjs +16 -0
- package/dist/embedding-request.cjs.map +1 -0
- package/dist/embedding-request.js +14 -0
- package/dist/embedding-request.js.map +1 -0
- package/dist/embeddings.cjs +30 -20
- package/dist/embeddings.cjs.map +1 -1
- package/dist/embeddings.d.cts.map +1 -1
- package/dist/embeddings.d.ts.map +1 -1
- package/dist/embeddings.js +30 -20
- package/dist/embeddings.js.map +1 -1
- package/dist/fal-audio.cjs +45 -43
- package/dist/fal-audio.cjs.map +1 -1
- package/dist/fal-audio.d.cts.map +1 -1
- package/dist/fal-audio.d.ts.map +1 -1
- package/dist/fal-audio.js +42 -40
- package/dist/fal-audio.js.map +1 -1
- package/dist/fal.cjs +17 -15
- package/dist/fal.cjs.map +1 -1
- package/dist/fal.js +16 -14
- package/dist/fal.js.map +1 -1
- package/dist/files.cjs +2 -4
- package/dist/files.cjs.map +1 -1
- package/dist/files.d.cts.map +1 -1
- package/dist/files.d.ts.map +1 -1
- package/dist/files.js +2 -4
- package/dist/files.js.map +1 -1
- package/dist/fine-tuning.cjs +2 -4
- package/dist/fine-tuning.cjs.map +1 -1
- package/dist/fine-tuning.d.cts.map +1 -1
- package/dist/fine-tuning.d.ts.map +1 -1
- package/dist/fine-tuning.js +2 -4
- package/dist/fine-tuning.js.map +1 -1
- package/dist/fixture-loader.cjs +37 -42
- package/dist/fixture-loader.cjs.map +1 -1
- package/dist/fixture-loader.d.cts.map +1 -1
- package/dist/fixture-loader.d.ts.map +1 -1
- package/dist/fixture-loader.js +37 -42
- package/dist/fixture-loader.js.map +1 -1
- package/dist/gemini-embeddings.cjs +26 -24
- package/dist/gemini-embeddings.cjs.map +1 -1
- package/dist/gemini-embeddings.js +26 -24
- package/dist/gemini-embeddings.js.map +1 -1
- package/dist/gemini-interactions.cjs +50 -35
- package/dist/gemini-interactions.cjs.map +1 -1
- package/dist/gemini-interactions.d.cts +0 -1
- package/dist/gemini-interactions.d.cts.map +1 -1
- package/dist/gemini-interactions.d.ts +0 -1
- package/dist/gemini-interactions.d.ts.map +1 -1
- package/dist/gemini-interactions.js +49 -34
- package/dist/gemini-interactions.js.map +1 -1
- package/dist/gemini.cjs +57 -67
- package/dist/gemini.cjs.map +1 -1
- package/dist/gemini.d.cts.map +1 -1
- package/dist/gemini.d.ts.map +1 -1
- package/dist/gemini.js +56 -67
- package/dist/gemini.js.map +1 -1
- package/dist/grok-video.cjs +14 -12
- package/dist/grok-video.cjs.map +1 -1
- package/dist/grok-video.d.cts.map +1 -1
- package/dist/grok-video.d.ts.map +1 -1
- package/dist/grok-video.js +8 -6
- package/dist/grok-video.js.map +1 -1
- package/dist/helpers.cjs +11 -68
- package/dist/helpers.cjs.map +1 -1
- package/dist/helpers.d.cts.map +1 -1
- package/dist/helpers.d.ts.map +1 -1
- package/dist/helpers.js +12 -67
- package/dist/helpers.js.map +1 -1
- package/dist/images.cjs +30 -28
- package/dist/images.cjs.map +1 -1
- package/dist/images.d.cts.map +1 -1
- package/dist/images.d.ts.map +1 -1
- package/dist/images.js +27 -25
- package/dist/images.js.map +1 -1
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/journal.cjs +3 -1
- package/dist/journal.cjs.map +1 -1
- package/dist/journal.d.cts.map +1 -1
- package/dist/journal.d.ts.map +1 -1
- package/dist/journal.js +2 -1
- package/dist/journal.js.map +1 -1
- package/dist/llmock.cjs +3 -0
- package/dist/llmock.cjs.map +1 -1
- package/dist/llmock.d.cts.map +1 -1
- package/dist/llmock.d.ts.map +1 -1
- package/dist/llmock.js +3 -0
- package/dist/llmock.js.map +1 -1
- package/dist/mcp-fakes.d.cts.map +1 -1
- package/dist/mcp-handler.cjs +14 -4
- package/dist/mcp-handler.cjs.map +1 -1
- package/dist/mcp-handler.js +14 -4
- package/dist/mcp-handler.js.map +1 -1
- package/dist/mcp-recorder.cjs +2 -1
- package/dist/mcp-recorder.cjs.map +1 -1
- package/dist/mcp-recorder.js +3 -2
- package/dist/mcp-recorder.js.map +1 -1
- package/dist/messages.cjs +111 -96
- package/dist/messages.cjs.map +1 -1
- package/dist/messages.d.cts.map +1 -1
- package/dist/messages.d.ts.map +1 -1
- package/dist/messages.js +109 -95
- package/dist/messages.js.map +1 -1
- package/dist/metrics.cjs +5 -2
- package/dist/metrics.cjs.map +1 -1
- package/dist/metrics.d.cts.map +1 -1
- package/dist/metrics.d.ts.map +1 -1
- package/dist/metrics.js +6 -3
- package/dist/metrics.js.map +1 -1
- package/dist/model-utils.cjs +1 -0
- package/dist/model-utils.cjs.map +1 -1
- package/dist/model-utils.js +1 -1
- package/dist/model-utils.js.map +1 -1
- package/dist/moderation.cjs +15 -12
- package/dist/moderation.cjs.map +1 -1
- package/dist/moderation.js +14 -11
- package/dist/moderation.js.map +1 -1
- package/dist/ollama.cjs +128 -68
- package/dist/ollama.cjs.map +1 -1
- package/dist/ollama.d.cts.map +1 -1
- package/dist/ollama.d.ts.map +1 -1
- package/dist/ollama.js +124 -64
- package/dist/ollama.js.map +1 -1
- package/dist/openapi.cjs +323 -3
- package/dist/openapi.cjs.map +1 -1
- package/dist/openapi.d.cts.map +1 -1
- package/dist/openapi.d.ts.map +1 -1
- package/dist/openapi.js +324 -4
- package/dist/openapi.js.map +1 -1
- package/dist/openrouter-chat.cjs +11 -155
- package/dist/openrouter-chat.cjs.map +1 -1
- package/dist/openrouter-chat.js +11 -155
- package/dist/openrouter-chat.js.map +1 -1
- package/dist/openrouter-video.cjs +76 -71
- package/dist/openrouter-video.cjs.map +1 -1
- package/dist/openrouter-video.d.cts.map +1 -1
- package/dist/openrouter-video.d.ts.map +1 -1
- package/dist/openrouter-video.js +63 -58
- package/dist/openrouter-video.js.map +1 -1
- package/dist/recorder.cjs +176 -95
- package/dist/recorder.cjs.map +1 -1
- package/dist/recorder.d.cts.map +1 -1
- package/dist/recorder.d.ts.map +1 -1
- package/dist/recorder.js +176 -95
- package/dist/recorder.js.map +1 -1
- package/dist/rerank.cjs +13 -11
- package/dist/rerank.cjs.map +1 -1
- package/dist/rerank.js +12 -10
- package/dist/rerank.js.map +1 -1
- package/dist/response/catalog/anthropic-page.cjs +39 -0
- package/dist/response/catalog/anthropic-page.cjs.map +1 -0
- package/dist/response/catalog/anthropic-page.js +38 -0
- package/dist/response/catalog/anthropic-page.js.map +1 -0
- package/dist/response/catalog/collect.cjs +61 -0
- package/dist/response/catalog/collect.cjs.map +1 -0
- package/dist/response/catalog/collect.js +59 -0
- package/dist/response/catalog/collect.js.map +1 -0
- package/dist/response/catalog/gemini-page.cjs +25 -0
- package/dist/response/catalog/gemini-page.cjs.map +1 -0
- package/dist/response/catalog/gemini-page.js +24 -0
- package/dist/response/catalog/gemini-page.js.map +1 -0
- package/dist/response/catalog/render.cjs +182 -0
- package/dist/response/catalog/render.cjs.map +1 -0
- package/dist/response/catalog/render.js +171 -0
- package/dist/response/catalog/render.js.map +1 -0
- package/dist/response/errors.cjs +225 -0
- package/dist/response/errors.cjs.map +1 -0
- package/dist/response/errors.js +224 -0
- package/dist/response/errors.js.map +1 -0
- package/dist/response/finish.cjs +39 -0
- package/dist/response/finish.cjs.map +1 -0
- package/dist/response/finish.js +35 -0
- package/dist/response/finish.js.map +1 -0
- package/dist/response/policy.cjs +126 -0
- package/dist/response/policy.cjs.map +1 -0
- package/dist/response/policy.js +120 -0
- package/dist/response/policy.js.map +1 -0
- package/dist/response/profiles.cjs +69 -0
- package/dist/response/profiles.cjs.map +1 -0
- package/dist/response/profiles.js +65 -0
- package/dist/response/profiles.js.map +1 -0
- package/dist/response/usage/codecs/anthropic.cjs +52 -0
- package/dist/response/usage/codecs/anthropic.cjs.map +1 -0
- package/dist/response/usage/codecs/anthropic.js +50 -0
- package/dist/response/usage/codecs/anthropic.js.map +1 -0
- package/dist/response/usage/codecs/cohere.cjs +36 -0
- package/dist/response/usage/codecs/cohere.cjs.map +1 -0
- package/dist/response/usage/codecs/cohere.js +35 -0
- package/dist/response/usage/codecs/cohere.js.map +1 -0
- package/dist/response/usage/codecs/converse.cjs +16 -0
- package/dist/response/usage/codecs/converse.cjs.map +1 -0
- package/dist/response/usage/codecs/converse.js +15 -0
- package/dist/response/usage/codecs/converse.js.map +1 -0
- package/dist/response/usage/codecs/gemini.cjs +31 -0
- package/dist/response/usage/codecs/gemini.cjs.map +1 -0
- package/dist/response/usage/codecs/gemini.js +31 -0
- package/dist/response/usage/codecs/gemini.js.map +1 -0
- package/dist/response/usage/codecs/interactions.cjs +22 -0
- package/dist/response/usage/codecs/interactions.cjs.map +1 -0
- package/dist/response/usage/codecs/interactions.js +21 -0
- package/dist/response/usage/codecs/interactions.js.map +1 -0
- package/dist/response/usage/codecs/ollama.cjs +17 -0
- package/dist/response/usage/codecs/ollama.cjs.map +1 -0
- package/dist/response/usage/codecs/ollama.js +17 -0
- package/dist/response/usage/codecs/ollama.js.map +1 -0
- package/dist/response/usage/codecs/openai.cjs +52 -0
- package/dist/response/usage/codecs/openai.cjs.map +1 -0
- package/dist/response/usage/codecs/openai.js +50 -0
- package/dist/response/usage/codecs/openai.js.map +1 -0
- package/dist/response/usage/codecs/openrouter.cjs +68 -0
- package/dist/response/usage/codecs/openrouter.cjs.map +1 -0
- package/dist/response/usage/codecs/openrouter.js +67 -0
- package/dist/response/usage/codecs/openrouter.js.map +1 -0
- package/dist/response/usage/codecs/realtime.cjs +19 -0
- package/dist/response/usage/codecs/realtime.cjs.map +1 -0
- package/dist/response/usage/codecs/realtime.js +18 -0
- package/dist/response/usage/codecs/realtime.js.map +1 -0
- package/dist/response/usage/codecs/responses.cjs +21 -0
- package/dist/response/usage/codecs/responses.cjs.map +1 -0
- package/dist/response/usage/codecs/responses.js +20 -0
- package/dist/response/usage/codecs/responses.js.map +1 -0
- package/dist/response/usage/estimate.cjs +23 -0
- package/dist/response/usage/estimate.cjs.map +1 -0
- package/dist/response/usage/estimate.js +21 -0
- package/dist/response/usage/estimate.js.map +1 -0
- package/dist/response/usage/fields.cjs +72 -0
- package/dist/response/usage/fields.cjs.map +1 -0
- package/dist/response/usage/fields.js +70 -0
- package/dist/response/usage/fields.js.map +1 -0
- package/dist/response/usage/recording.cjs +52 -0
- package/dist/response/usage/recording.cjs.map +1 -0
- package/dist/response/usage/recording.js +52 -0
- package/dist/response/usage/recording.js.map +1 -0
- package/dist/responses.cjs +45 -58
- package/dist/responses.cjs.map +1 -1
- package/dist/responses.d.cts.map +1 -1
- package/dist/responses.d.ts.map +1 -1
- package/dist/responses.js +44 -57
- package/dist/responses.js.map +1 -1
- package/dist/route-registry.cjs +45 -0
- package/dist/route-registry.cjs.map +1 -1
- package/dist/route-registry.d.cts.map +1 -1
- package/dist/route-registry.d.ts.map +1 -1
- package/dist/route-registry.js +41 -1
- package/dist/route-registry.js.map +1 -1
- package/dist/router.cjs +4 -0
- package/dist/router.cjs.map +1 -1
- package/dist/router.d.cts.map +1 -1
- package/dist/router.d.ts.map +1 -1
- package/dist/router.js +3 -0
- package/dist/router.js.map +1 -1
- package/dist/search.cjs +13 -11
- package/dist/search.cjs.map +1 -1
- package/dist/search.js +12 -10
- package/dist/search.js.map +1 -1
- package/dist/server.cjs +222 -146
- package/dist/server.cjs.map +1 -1
- package/dist/server.d.cts.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +223 -147
- package/dist/server.js.map +1 -1
- package/dist/speech.cjs +20 -18
- package/dist/speech.cjs.map +1 -1
- package/dist/speech.d.cts.map +1 -1
- package/dist/speech.d.ts.map +1 -1
- package/dist/speech.js +19 -17
- package/dist/speech.js.map +1 -1
- package/dist/sse-writer.cjs +7 -0
- package/dist/sse-writer.cjs.map +1 -1
- package/dist/sse-writer.d.cts.map +1 -1
- package/dist/sse-writer.d.ts.map +1 -1
- package/dist/sse-writer.js +7 -1
- package/dist/sse-writer.js.map +1 -1
- package/dist/stream-collapse.cjs +118 -11
- package/dist/stream-collapse.cjs.map +1 -1
- package/dist/stream-collapse.d.cts +10 -9
- package/dist/stream-collapse.d.cts.map +1 -1
- package/dist/stream-collapse.d.ts +10 -9
- package/dist/stream-collapse.d.ts.map +1 -1
- package/dist/stream-collapse.js +118 -11
- package/dist/stream-collapse.js.map +1 -1
- package/dist/transcription.cjs +12 -10
- package/dist/transcription.cjs.map +1 -1
- package/dist/transcription.d.cts.map +1 -1
- package/dist/transcription.d.ts.map +1 -1
- package/dist/transcription.js +11 -9
- package/dist/transcription.js.map +1 -1
- package/dist/types.cjs.map +1 -1
- package/dist/types.d.cts +62 -3
- package/dist/types.d.cts.map +1 -1
- package/dist/types.d.ts +62 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/vector-mock.cjs +3 -8
- package/dist/vector-mock.cjs.map +1 -1
- package/dist/vector-mock.d.cts.map +1 -1
- package/dist/vector-mock.d.ts.map +1 -1
- package/dist/vector-mock.js +3 -8
- package/dist/vector-mock.js.map +1 -1
- package/dist/vector-stores.cjs +2 -4
- package/dist/vector-stores.cjs.map +1 -1
- package/dist/vector-stores.d.cts.map +1 -1
- package/dist/vector-stores.d.ts.map +1 -1
- package/dist/vector-stores.js +2 -4
- package/dist/vector-stores.js.map +1 -1
- package/dist/veo-video.cjs +16 -14
- package/dist/veo-video.cjs.map +1 -1
- package/dist/veo-video.js +10 -8
- package/dist/veo-video.js.map +1 -1
- package/dist/video.cjs +21 -19
- package/dist/video.cjs.map +1 -1
- package/dist/video.d.cts.map +1 -1
- package/dist/video.d.ts.map +1 -1
- package/dist/video.js +20 -18
- package/dist/video.js.map +1 -1
- package/dist/ws-gemini-live.cjs +11 -3
- package/dist/ws-gemini-live.cjs.map +1 -1
- package/dist/ws-gemini-live.d.cts +0 -1
- package/dist/ws-gemini-live.d.cts.map +1 -1
- package/dist/ws-gemini-live.d.ts +0 -1
- package/dist/ws-gemini-live.d.ts.map +1 -1
- package/dist/ws-gemini-live.js +10 -2
- package/dist/ws-gemini-live.js.map +1 -1
- package/dist/ws-live.cjs +6 -5
- package/dist/ws-live.cjs.map +1 -1
- package/dist/ws-live.js +5 -4
- package/dist/ws-live.js.map +1 -1
- package/dist/ws-realtime.cjs +28 -54
- package/dist/ws-realtime.cjs.map +1 -1
- package/dist/ws-realtime.d.cts.map +1 -1
- package/dist/ws-realtime.d.ts.map +1 -1
- package/dist/ws-realtime.js +25 -51
- package/dist/ws-realtime.js.map +1 -1
- package/dist/ws-responses.cjs +8 -6
- package/dist/ws-responses.cjs.map +1 -1
- package/dist/ws-responses.js +7 -5
- package/dist/ws-responses.js.map +1 -1
- package/package.json +4 -1
- package/skills/write-fixtures/SKILL.md +25 -16
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openrouter-video.d.cts","names":[],"sources":["../src/openrouter-video.ts"],"sourcesContent":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"openrouter-video.d.cts","names":[],"sources":["../src/openrouter-video.ts"],"sourcesContent":[],"mappings":";;;;;cAgFa,4BAAA;KAGR,qBAAA;AAHL,UAKU,wBAAA,CAL+B;EAGpC,IAAA,EAAA,QAAA;EAEK,KAAA,EAAA,MAAA;EAAwB,MAAA,EAGxB,qBAHwB;;WAWzB,EAAA,MAAA;EAAa;EAyBZ,qBAAA,EAAA,MAAwB;EAAA;sBAYxB,EAAA,MAAA;;EAWM,KAAA,EAhDP,aAgDO,CAAA,OAAA,CAAA;EAwBJ;;;;EAAwE,gBAAA,CAAA,EAAA,OAAA;EAoBvE;;;;;AAqNb;EAAiD,mBAAA,CAAA,EAAA,OAAA;;;;;;;;;;AAgKjD;;UAxbU,wBAAA,CAybE;MACL,EAAA,QAAK;;OAGA,EAAA,MAAA;;;;;AA8lBZ;;;;QAGY,EAlhCF,qBAkhCE;;eAEA,EAAA,MAAA;;oBAET,EAAA,MAAA;EAAO;AAkIV;;;;;OAKW,EAlpCF,OAkpCE,CAAA,OAAA,CAAA;;;;;;AAunBX;;;;;;;;;;;;;;;;;KAjvDY,kBAAA,GAAqB,2BAA2B;;;;;;;;;;;;;;cAoB/C,qBAAA;;;;;;;;;;;;oBAgBO;wBAUI;;;;;iBA2LF,2BAAA,MACf,MAAA,CAAK,sBACL,MAAA,CAAK,yCAEA,oBACD,mBACC,uCACY,MAAA,CAAK,+BACrB,wBACL;iBAuJmB,4BAAA,MACf,MAAA,CAAK,sBACL,MAAA,CAAK,wCAED,mBACC,uCACY,MAAA,CAAK,+BACrB,wBACL;;;;;;;;;;;;;;;iBA2lBmB,2BAAA,MACf,MAAA,CAAK,sBACL,MAAA,CAAK,0BACA,oBACD,mBACC,uCACY,MAAA,CAAK,0BAC1B;iBAkImB,2BAAA,MACf,MAAA,CAAK,sBACL,MAAA,CAAK,uCAEA,oBACD,mBACC,uCACY,MAAA,CAAK,+BACrB,wBACL;;;;;;;;;;;;;cAmnBU"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openrouter-video.d.ts","names":[],"sources":["../src/openrouter-video.ts"],"sourcesContent":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"openrouter-video.d.ts","names":[],"sources":["../src/openrouter-video.ts"],"sourcesContent":[],"mappings":";;;;;cAgFa,4BAAA;KAGR,qBAAA;AAHL,UAKU,wBAAA,CAL+B;EAGpC,IAAA,EAAA,QAAA;EAEK,KAAA,EAAA,MAAA;EAAwB,MAAA,EAGxB,qBAHwB;;WAWzB,EAAA,MAAA;EAAa;EAyBZ,qBAAA,EAAA,MAAwB;EAAA;sBAYxB,EAAA,MAAA;;EAWM,KAAA,EAhDP,aAgDO,CAAA,OAAA,CAAA;EAwBJ;;;;EAAwE,gBAAA,CAAA,EAAA,OAAA;EAoBvE;;;;;AAqNb;EAAiD,mBAAA,CAAA,EAAA,OAAA;;;;;;;;;;AAgKjD;;UAxbU,wBAAA,CAybE;MACL,EAAA,QAAK;;OAGA,EAAA,MAAA;;;;;AA8lBZ;;;;QAGY,EAlhCF,qBAkhCE;;eAEA,EAAA,MAAA;;oBAET,EAAA,MAAA;EAAO;AAkIV;;;;;OAKW,EAlpCF,OAkpCE,CAAA,OAAA,CAAA;;;;;;AAunBX;;;;;;;;;;;;;;;;;KAjvDY,kBAAA,GAAqB,2BAA2B;;;;;;;;;;;;;;cAoB/C,qBAAA;;;;;;;;;;;;oBAgBO;wBAUI;;;;;iBA2LF,2BAAA,MACf,MAAA,CAAK,sBACL,MAAA,CAAK,yCAEA,oBACD,mBACC,uCACY,MAAA,CAAK,+BACrB,wBACL;iBAuJmB,4BAAA,MACf,MAAA,CAAK,sBACL,MAAA,CAAK,wCAED,mBACC,uCACY,MAAA,CAAK,+BACrB,wBACL;;;;;;;;;;;;;;;iBA2lBmB,2BAAA,MACf,MAAA,CAAK,sBACL,MAAA,CAAK,0BACA,oBACD,mBACC,uCACY,MAAA,CAAK,0BAC1B;iBAkImB,2BAAA,MACf,MAAA,CAAK,sBACL,MAAA,CAAK,uCAEA,oBACD,mBACC,uCACY,MAAA,CAAK,+BACrB,wBACL;;;;;;;;;;;;;cAmnBU"}
|
package/dist/openrouter-video.js
CHANGED
|
@@ -1,15 +1,28 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { renderError } from "./response/errors.js";
|
|
2
|
+
import { resolveRequestDecisions, strictOverrideField } from "./response/policy.js";
|
|
3
|
+
import { flattenHeaders, getContext, getTestId, isErrorResponse, isVideoResponse, resolveResponse, serializeErrorResponse, strictNoMatchLogLine, strictNoMatchMessage } from "./helpers.js";
|
|
2
4
|
import { writeErrorResponse } from "./sse-writer.js";
|
|
3
5
|
import { applyChaosAsync } from "./chaos.js";
|
|
4
6
|
import { matchFixtureDiagnostic } from "./router.js";
|
|
5
7
|
import { resolveUpstreamUrl } from "./url.js";
|
|
6
8
|
import { buildFixtureMatch, clampTimeout, persistFixture, prepareEgressHeaders, removeForwardHeader, sanitizeHeaderValue } from "./recorder.js";
|
|
9
|
+
import { OPENROUTER_VIDEO_SUNSET_MODELS, collect } from "./response/catalog/collect.js";
|
|
10
|
+
import { DEFAULT_OPENROUTER_VIDEO_MODEL, renderOpenRouterVideoModels } from "./response/catalog/render.js";
|
|
7
11
|
import { resolveProgression } from "./fal.js";
|
|
8
12
|
import { DEFAULT_UPSTREAM_TIMEOUT_MS, readBodyIdle, readEnvelopeText, requestBase, testIdSuffix, upstreamTimeoutSignal } from "./video-proxy-shared.js";
|
|
9
13
|
import crypto from "node:crypto";
|
|
10
14
|
|
|
11
15
|
//#region src/openrouter-video.ts
|
|
12
|
-
|
|
16
|
+
/**
|
|
17
|
+
* Video models OpenRouter has REMOVED (deprecation policy: a removed surface
|
|
18
|
+
* never mocks success — it serves the rejection the real API serves now).
|
|
19
|
+
*
|
|
20
|
+
* openai/sora-2: gone from the live /api/v1/videos/models listing and from
|
|
21
|
+
* /api/v1/models (its /endpoints page is a 404). A live submit observed on
|
|
22
|
+
* 2026-10-10 is rejected with HTTP 400, content-type application/json, body
|
|
23
|
+
* `{"error":{"message":"Model openai/sora-2 does not exist","code":400}}` —
|
|
24
|
+
* the same rejection OpenRouter gives any unknown model id.
|
|
25
|
+
*/
|
|
13
26
|
const OPENROUTER_VIDEO_MAX_ENTRIES = 1e4;
|
|
14
27
|
const OPENROUTER_VIDEO_TTL_MS = 36e5;
|
|
15
28
|
/**
|
|
@@ -215,7 +228,7 @@ async function handleOpenRouterVideoStatus(req, res, jobId, fixtures, journal, d
|
|
|
215
228
|
return;
|
|
216
229
|
}
|
|
217
230
|
if (job.kind === "record") {
|
|
218
|
-
if (
|
|
231
|
+
if (!resolveRequestDecisions(defaults.strict, req.headers).upstream) {
|
|
219
232
|
defaults.logger.error(`STRICT: video job ${jobId} is proxied live upstream (record mode) — refusing the upstream poll`);
|
|
220
233
|
journal.add({
|
|
221
234
|
method,
|
|
@@ -228,11 +241,11 @@ async function handleOpenRouterVideoStatus(req, res, jobId, fixtures, journal, d
|
|
|
228
241
|
...strictOverrideField(defaults.strict, req.headers)
|
|
229
242
|
}
|
|
230
243
|
});
|
|
231
|
-
writeErrorResponse(res, 503,
|
|
244
|
+
writeErrorResponse(res, 503, renderError("openai", "strict-miss", {
|
|
232
245
|
message: `Strict mode: video job ${jobId} is proxied live upstream (record mode) — nothing reaches an upstream under strict mode`,
|
|
233
246
|
type: "invalid_request_error",
|
|
234
247
|
code: "no_fixture_match"
|
|
235
|
-
}
|
|
248
|
+
}).body);
|
|
236
249
|
return;
|
|
237
250
|
}
|
|
238
251
|
await proxyOpenRouterVideoRecordPoll({
|
|
@@ -373,7 +386,7 @@ async function handleOpenRouterVideoContent(req, res, jobId, journal, defaults,
|
|
|
373
386
|
const queryIdx = path.indexOf("?");
|
|
374
387
|
const indexParam = queryIdx === -1 ? null : new URLSearchParams(path.slice(queryIdx + 1)).get("index");
|
|
375
388
|
if (job.kind === "record") {
|
|
376
|
-
if (
|
|
389
|
+
if (!resolveRequestDecisions(defaults.strict, req.headers).upstream) {
|
|
377
390
|
defaults.logger.error(`STRICT: video job ${jobId} content is proxied live upstream (record mode) — refusing the upstream fetch`);
|
|
378
391
|
journal.add({
|
|
379
392
|
method,
|
|
@@ -386,11 +399,11 @@ async function handleOpenRouterVideoContent(req, res, jobId, journal, defaults,
|
|
|
386
399
|
...strictOverrideField(defaults.strict, req.headers)
|
|
387
400
|
}
|
|
388
401
|
});
|
|
389
|
-
writeErrorResponse(res, 503,
|
|
402
|
+
writeErrorResponse(res, 503, renderError("openai", "strict-miss", {
|
|
390
403
|
message: `Strict mode: video job ${jobId} is proxied live upstream (record mode) — nothing reaches an upstream under strict mode`,
|
|
391
404
|
type: "invalid_request_error",
|
|
392
405
|
code: "no_fixture_match"
|
|
393
|
-
}
|
|
406
|
+
}).body);
|
|
394
407
|
return;
|
|
395
408
|
}
|
|
396
409
|
await proxyOpenRouterVideoRecordContent({
|
|
@@ -476,10 +489,10 @@ async function proxyOpenRouterVideoRecordContent(args) {
|
|
|
476
489
|
...strictOverrideField(defaults.strict, req.headers)
|
|
477
490
|
}
|
|
478
491
|
});
|
|
479
|
-
writeErrorResponse(res, 502,
|
|
492
|
+
writeErrorResponse(res, 502, renderError("openai", "transport-failure", {
|
|
480
493
|
message: `Proxy to upstream failed: ${msg}`,
|
|
481
494
|
type: "proxy_error"
|
|
482
|
-
}
|
|
495
|
+
}).body);
|
|
483
496
|
};
|
|
484
497
|
const record = defaults.record;
|
|
485
498
|
if (!record) {
|
|
@@ -647,25 +660,6 @@ async function proxyOpenRouterVideoRecordContent(args) {
|
|
|
647
660
|
reader.cancel().catch(() => {});
|
|
648
661
|
}
|
|
649
662
|
}
|
|
650
|
-
const DEFAULT_OPENROUTER_VIDEO_MODELS = [DEFAULT_OPENROUTER_VIDEO_MODEL, "openai/sora-2"];
|
|
651
|
-
function modelEntry(id) {
|
|
652
|
-
return {
|
|
653
|
-
id,
|
|
654
|
-
name: id,
|
|
655
|
-
supported_durations: [4, 8],
|
|
656
|
-
supported_resolutions: ["720p", "1080p"],
|
|
657
|
-
supported_aspect_ratios: [
|
|
658
|
-
"16:9",
|
|
659
|
-
"9:16",
|
|
660
|
-
"1:1"
|
|
661
|
-
],
|
|
662
|
-
supported_frame_images: [],
|
|
663
|
-
supported_sizes: [],
|
|
664
|
-
generate_audio: false,
|
|
665
|
-
seed: true,
|
|
666
|
-
pricing_skus: []
|
|
667
|
-
};
|
|
668
|
-
}
|
|
669
663
|
/**
|
|
670
664
|
* Synthesizes the OpenRouter video model listing from loaded fixtures —
|
|
671
665
|
* video-endpoint fixtures with a string `match.model` (mirrors the Ollama
|
|
@@ -693,7 +687,7 @@ async function handleOpenRouterVideoModels(req, res, fixtures, journal, defaults
|
|
|
693
687
|
const record = defaults.record;
|
|
694
688
|
const upstreamBase = record?.providers.openrouter;
|
|
695
689
|
let proxyAttemptFailed = false;
|
|
696
|
-
if (upstreamBase &&
|
|
690
|
+
if (upstreamBase && resolveRequestDecisions(defaults.strict, req.headers).upstream) {
|
|
697
691
|
let relay;
|
|
698
692
|
try {
|
|
699
693
|
const target = resolveUpstreamUrl(upstreamBase, "/api/v1/videos/models");
|
|
@@ -733,14 +727,9 @@ async function handleOpenRouterVideoModels(req, res, fixtures, journal, defaults
|
|
|
733
727
|
return;
|
|
734
728
|
}
|
|
735
729
|
}
|
|
736
|
-
const
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
sawVideoFixture = true;
|
|
740
|
-
if (f.match.model && typeof f.match.model === "string") modelIds.add(f.match.model);
|
|
741
|
-
}
|
|
742
|
-
if (modelIds.size === 0 && sawVideoFixture) defaults.logger.warn("No video fixture contributes a string model — serving the default video model set");
|
|
743
|
-
const ids = modelIds.size > 0 ? [...modelIds] : DEFAULT_OPENROUTER_VIDEO_MODELS;
|
|
730
|
+
const collection = collect(fixtures, "video-active");
|
|
731
|
+
if (collection.ids.length === 0 && collection.diagnostics.sawVideoFixture) defaults.logger.warn("No video fixture contributes a string model — serving the default video model set");
|
|
732
|
+
const body = renderOpenRouterVideoModels(collection.ids);
|
|
744
733
|
if (res.destroyed || res.writableEnded) return;
|
|
745
734
|
journal.add({
|
|
746
735
|
method,
|
|
@@ -755,7 +744,7 @@ async function handleOpenRouterVideoModels(req, res, fixtures, journal, defaults
|
|
|
755
744
|
}
|
|
756
745
|
});
|
|
757
746
|
res.writeHead(200, { "Content-Type": "application/json" });
|
|
758
|
-
res.end(JSON.stringify(
|
|
747
|
+
res.end(JSON.stringify(body));
|
|
759
748
|
}
|
|
760
749
|
async function handleOpenRouterVideoCreate(req, res, raw, fixtures, journal, defaults, setCorsHeaders, jobs) {
|
|
761
750
|
setCorsHeaders(res);
|
|
@@ -776,11 +765,11 @@ async function handleOpenRouterVideoCreate(req, res, raw, fixtures, journal, def
|
|
|
776
765
|
fixture: null
|
|
777
766
|
}
|
|
778
767
|
});
|
|
779
|
-
writeErrorResponse(res, 400,
|
|
768
|
+
writeErrorResponse(res, 400, renderError("openai", "validation", {
|
|
780
769
|
message: `Malformed JSON: ${detail}`,
|
|
781
770
|
type: "invalid_request_error",
|
|
782
771
|
code: "invalid_json"
|
|
783
|
-
}
|
|
772
|
+
}).body);
|
|
784
773
|
return;
|
|
785
774
|
}
|
|
786
775
|
if (videoReq === null || typeof videoReq !== "object" || Array.isArray(videoReq)) {
|
|
@@ -794,10 +783,10 @@ async function handleOpenRouterVideoCreate(req, res, raw, fixtures, journal, def
|
|
|
794
783
|
fixture: null
|
|
795
784
|
}
|
|
796
785
|
});
|
|
797
|
-
writeErrorResponse(res, 400,
|
|
786
|
+
writeErrorResponse(res, 400, renderError("openai", "validation", {
|
|
798
787
|
message: "Request body must be a JSON object",
|
|
799
788
|
type: "invalid_request_error"
|
|
800
|
-
}
|
|
789
|
+
}).body);
|
|
801
790
|
return;
|
|
802
791
|
}
|
|
803
792
|
const parsedBody = validationJournalBody(videoReq);
|
|
@@ -812,11 +801,10 @@ async function handleOpenRouterVideoCreate(req, res, raw, fixtures, journal, def
|
|
|
812
801
|
fixture: null
|
|
813
802
|
}
|
|
814
803
|
});
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
message,
|
|
804
|
+
writeErrorResponse(res, 400, renderError("openai", "validation", {
|
|
805
|
+
message: videoReq.prompt === void 0 ? "Missing required parameter: 'prompt'" : "Invalid type for parameter: 'prompt' must be a non-empty string",
|
|
818
806
|
type: "invalid_request_error"
|
|
819
|
-
}
|
|
807
|
+
}).body);
|
|
820
808
|
return;
|
|
821
809
|
}
|
|
822
810
|
if (videoReq.model !== void 0 && (typeof videoReq.model !== "string" || !videoReq.model)) {
|
|
@@ -830,9 +818,26 @@ async function handleOpenRouterVideoCreate(req, res, raw, fixtures, journal, def
|
|
|
830
818
|
fixture: null
|
|
831
819
|
}
|
|
832
820
|
});
|
|
833
|
-
writeErrorResponse(res, 400,
|
|
821
|
+
writeErrorResponse(res, 400, renderError("openai", "validation", {
|
|
834
822
|
message: "Invalid type for parameter: 'model' must be a non-empty string",
|
|
835
823
|
type: "invalid_request_error"
|
|
824
|
+
}).body);
|
|
825
|
+
return;
|
|
826
|
+
}
|
|
827
|
+
if (videoReq.model !== void 0 && OPENROUTER_VIDEO_SUNSET_MODELS.has(videoReq.model)) {
|
|
828
|
+
journal.add({
|
|
829
|
+
method,
|
|
830
|
+
path,
|
|
831
|
+
headers: flattenHeaders(req.headers),
|
|
832
|
+
body: parsedBody,
|
|
833
|
+
response: {
|
|
834
|
+
status: 400,
|
|
835
|
+
fixture: null
|
|
836
|
+
}
|
|
837
|
+
});
|
|
838
|
+
writeErrorResponse(res, 400, JSON.stringify({ error: {
|
|
839
|
+
message: `Model ${videoReq.model} does not exist`,
|
|
840
|
+
code: 400
|
|
836
841
|
} }));
|
|
837
842
|
return;
|
|
838
843
|
}
|
|
@@ -859,9 +864,9 @@ async function handleOpenRouterVideoCreate(req, res, raw, fixtures, journal, def
|
|
|
859
864
|
path,
|
|
860
865
|
headers: flattenHeaders(req.headers),
|
|
861
866
|
body: syntheticReq
|
|
862
|
-
}, fixture ? "fixture" :
|
|
867
|
+
}, fixture ? "fixture" : resolveRequestDecisions(defaults.strict, req.headers).fixtureMiss ? "internal" : defaults.record?.providers.openrouter ? "proxy" : "internal", defaults.registry, defaults.logger)) return;
|
|
863
868
|
if (!fixture) {
|
|
864
|
-
if (
|
|
869
|
+
if (resolveRequestDecisions(defaults.strict, req.headers).fixtureMiss) {
|
|
865
870
|
const strictMessage = strictNoMatchMessage(skippedBySequenceOrTurn);
|
|
866
871
|
defaults.logger.error(strictNoMatchLogLine(method, path, skippedBySequenceOrTurn));
|
|
867
872
|
journal.add({
|
|
@@ -875,11 +880,11 @@ async function handleOpenRouterVideoCreate(req, res, raw, fixtures, journal, def
|
|
|
875
880
|
...strictOverrideField(defaults.strict, req.headers)
|
|
876
881
|
}
|
|
877
882
|
});
|
|
878
|
-
writeErrorResponse(res, 503,
|
|
883
|
+
writeErrorResponse(res, 503, renderError("openai", "strict-miss", {
|
|
879
884
|
message: strictMessage,
|
|
880
885
|
type: "invalid_request_error",
|
|
881
886
|
code: "no_fixture_match"
|
|
882
|
-
}
|
|
887
|
+
}).body);
|
|
883
888
|
return;
|
|
884
889
|
}
|
|
885
890
|
if (defaults.record) {
|
|
@@ -943,10 +948,10 @@ async function handleOpenRouterVideoCreate(req, res, raw, fixtures, journal, def
|
|
|
943
948
|
fixture
|
|
944
949
|
}
|
|
945
950
|
});
|
|
946
|
-
writeErrorResponse(res, 500,
|
|
951
|
+
writeErrorResponse(res, 500, renderError("openai", "unknown-response", {
|
|
947
952
|
message: "Fixture response is not a video type",
|
|
948
953
|
type: "server_error"
|
|
949
|
-
}
|
|
954
|
+
}).body);
|
|
950
955
|
return;
|
|
951
956
|
}
|
|
952
957
|
if (res.destroyed || res.writableEnded) return;
|
|
@@ -1017,10 +1022,10 @@ async function proxyOpenRouterVideoSubmit(args) {
|
|
|
1017
1022
|
...strictOverrideField(defaults.strict, req.headers)
|
|
1018
1023
|
}
|
|
1019
1024
|
});
|
|
1020
|
-
writeErrorResponse(res, 502,
|
|
1025
|
+
writeErrorResponse(res, 502, renderError("openai", "transport-failure", {
|
|
1021
1026
|
message: `Proxy to upstream failed: ${msg}`,
|
|
1022
1027
|
type: "proxy_error"
|
|
1023
|
-
}
|
|
1028
|
+
}).body);
|
|
1024
1029
|
return "handled";
|
|
1025
1030
|
};
|
|
1026
1031
|
let submitUrl;
|
|
@@ -1185,10 +1190,10 @@ async function proxyOpenRouterVideoRecordPoll(args) {
|
|
|
1185
1190
|
logger.error(`OpenRouter video poll proxy failed: ${msg}`);
|
|
1186
1191
|
if (res.destroyed || res.writableEnded) return;
|
|
1187
1192
|
journalProxy(502);
|
|
1188
|
-
writeErrorResponse(res, 502,
|
|
1193
|
+
writeErrorResponse(res, 502, renderError("openai", "transport-failure", {
|
|
1189
1194
|
message: `Proxy to upstream failed: ${msg}`,
|
|
1190
1195
|
type: "proxy_error"
|
|
1191
|
-
}
|
|
1196
|
+
}).body);
|
|
1192
1197
|
};
|
|
1193
1198
|
const record = defaults.record;
|
|
1194
1199
|
if (!record) {
|