diff --git a/api-reference/authentication.mdx b/api-reference/authentication.mdx index 25fbc29..a658996 100644 --- a/api-reference/authentication.mdx +++ b/api-reference/authentication.mdx @@ -34,7 +34,7 @@ will also fail. -H 'Authorization: Bearer ' \ -H 'Content-Type: application/json' \ -d '{ - "model": "openai/gpt-4o", + "model": "openai/gpt-5.2", "messages": [{"role": "user", "content": "Hello"}] }' ``` @@ -44,7 +44,7 @@ will also fail. -u ':' \ -H 'Content-Type: application/json' \ -d '{ - "model": "openai/gpt-4o", + "model": "openai/gpt-5.2", "messages": [{"role": "user", "content": "Hello"}] }' # The colon prevents curl from asking for a password. diff --git a/api-reference/errors.mdx b/api-reference/errors.mdx index f256d49..3608db1 100644 --- a/api-reference/errors.mdx +++ b/api-reference/errors.mdx @@ -83,7 +83,7 @@ Below is a summary of the HTTP status codes that Edgee API uses. { "error": { "code": "provider_not_supported", - "message": "Provider 'anthropic' is not supported for model 'openai/gpt-4o'" + "message": "Provider 'anthropic' is not supported for model 'openai/gpt-5.2'" } } ``` @@ -162,7 +162,7 @@ Below is a summary of the HTTP status codes that Edgee API uses. { "error": { "code": "forbidden", - "message": "Model 'openai/gpt-4o' is not allowed for this API key" + "message": "Model 'openai/gpt-5.2' is not allowed for this API key" } } ``` diff --git a/api-reference/messages.mdx b/api-reference/messages.mdx index cfa89cd..1c1a807 100644 --- a/api-reference/messages.mdx +++ b/api-reference/messages.mdx @@ -49,7 +49,7 @@ See the [Authentication](/api-reference/authentication) page for more details. The model ID to use. Use Anthropic model names without provider prefix. - Examples: `claude-sonnet-4.5`, `claude-opus-4`, `claude-haiku-4` + Examples: `claude-sonnet-4-6`, `claude-opus-4-6`, `claude-haiku-4-5` diff --git a/api-reference/openapi.json b/api-reference/openapi.json index 800bd96..bd8b5ae 100644 --- a/api-reference/openapi.json +++ b/api-reference/openapi.json @@ -76,7 +76,7 @@ "id": "chatcmpl-123", "object": "chat.completion", "created": 1677652288, - "model": "openai/gpt-4o", + "model": "openai/gpt-5.2", "choices": [ { "index": 0, @@ -114,13 +114,13 @@ }, "examples": { "contentChunk": { - "value": "data: {\"id\":\"chatcmpl-123\",\"object\":\"chat.completion.chunk\",\"created\":1677652288,\"model\":\"openai/gpt-4o\",\"choices\":[{\"index\":0,\"delta\":{\"content\":\"Hello\"},\"finish_reason\":null}]}\n\n" + "value": "data: {\"id\":\"chatcmpl-123\",\"object\":\"chat.completion.chunk\",\"created\":1677652288,\"model\":\"openai/gpt-5.2\",\"choices\":[{\"index\":0,\"delta\":{\"content\":\"Hello\"},\"finish_reason\":null}]}\n\n" }, "roleChunk": { - "value": "data: {\"id\":\"chatcmpl-123\",\"object\":\"chat.completion.chunk\",\"created\":1677652288,\"model\":\"openai/gpt-4o\",\"choices\":[{\"index\":0,\"delta\":{\"role\":\"assistant\"},\"finish_reason\":null}]}\n\n" + "value": "data: {\"id\":\"chatcmpl-123\",\"object\":\"chat.completion.chunk\",\"created\":1677652288,\"model\":\"openai/gpt-5.2\",\"choices\":[{\"index\":0,\"delta\":{\"role\":\"assistant\"},\"finish_reason\":null}]}\n\n" }, "finalChunk": { - "value": "data: {\"id\":\"chatcmpl-123\",\"object\":\"chat.completion.chunk\",\"created\":1677652288,\"model\":\"openai/gpt-4o\",\"choices\":[{\"index\":0,\"delta\":{},\"finish_reason\":\"stop\"}],\"usage\":{\"prompt_tokens\":10,\"completion_tokens\":10,\"total_tokens\":20,\"input_tokens_details\":{\"cached_tokens\":0},\"output_tokens_details\":{\"reasoning_tokens\":0}}}\n\n" + "value": "data: {\"id\":\"chatcmpl-123\",\"object\":\"chat.completion.chunk\",\"created\":1677652288,\"model\":\"openai/gpt-5.2\",\"choices\":[{\"index\":0,\"delta\":{},\"finish_reason\":\"stop\"}],\"usage\":{\"prompt_tokens\":10,\"completion_tokens\":10,\"total_tokens\":20,\"input_tokens_details\":{\"cached_tokens\":0},\"output_tokens_details\":{\"reasoning_tokens\":0}}}\n\n" } } } @@ -154,7 +154,7 @@ "value": { "error": { "code": "provider_not_supported", - "message": "Provider 'anthropic' is not supported for model 'openai/gpt-4o'" + "message": "Provider 'anthropic' is not supported for model 'openai/gpt-5.2'" } } } @@ -206,7 +206,7 @@ "value": { "error": { "code": "forbidden", - "message": "Model 'openai/gpt-4o' is not allowed for this API key" + "message": "Model 'openai/gpt-5.2' is not allowed for this API key" } } } @@ -351,13 +351,13 @@ "object": "list", "data": [ { - "id": "openai/gpt-4o", + "id": "openai/gpt-5.2", "object": "model", "created": 1677610602, "owned_by": "openai" }, { - "id": "anthropic/claude-3-opus", + "id": "anthropic/claude-opus-4-6", "object": "model", "created": 1677610602, "owned_by": "anthropic" @@ -492,7 +492,7 @@ "model": { "type": "string", "description": "Optional model hint to improve tokenizer selection. When provided, the gateway uses this to choose the most appropriate tokenizer for the target model.", - "example": "openai/gpt-4o" + "example": "openai/gpt-5.2" } } }, @@ -519,8 +519,8 @@ "properties": { "model": { "type": "string", - "description": "ID of the model to use. Format: `{author_id}/{model_id}` (e.g. `openai/gpt-4o`)", - "example": "openai/gpt-4o" + "description": "ID of the model to use. Format: `{author_id}/{model_id}` (e.g. `openai/gpt-5.2`)", + "example": "openai/gpt-5.2" }, "messages": { "type": "array", @@ -782,7 +782,7 @@ "model": { "type": "string", "description": "The model used for the chat completion.", - "example": "openai/gpt-4o" + "example": "openai/gpt-5.2" }, "choices": { "type": "array", @@ -917,7 +917,7 @@ "id": { "type": "string", "description": "The model identifier, which can be referenced in the API. Format: `{author_id}/{model_id}`.", - "example": "openai/gpt-4o" + "example": "openai/gpt-5.2" }, "object": { "type": "string", @@ -969,7 +969,7 @@ "model": { "type": "string", "description": "The model used for the chat completion.", - "example": "openai/gpt-4o" + "example": "openai/gpt-5.2" }, "choices": { "type": "array", diff --git a/features/automatic-model-selection.mdx b/features/automatic-model-selection.mdx index 067f5ad..443ea76 100644 --- a/features/automatic-model-selection.mdx +++ b/features/automatic-model-selection.mdx @@ -57,7 +57,7 @@ const response = await edgee.send({ max_latency_ms: 2000, // Must respond in under 2s }); -console.log(`Model used: ${response.model}`); // e.g., "gpt-4o" +console.log(`Model used: ${response.model}`); // e.g., "gpt-5.2" console.log(`Latency: ${response.latency_ms}ms`); ``` @@ -93,12 +93,12 @@ When a provider fails, Edgee automatically retries with backup models: ```typescript const response = await edgee.send({ - model: 'gpt-4o', - fallback_models: ['claude-3.5-sonnet', 'gemini-pro'], // Backup chain + model: 'gpt-5.2', + fallback_models: ['claude-sonnet-4-6', 'gemini-pro'], // Backup chain input: 'Your prompt here', }); -// If GPT-4o is unavailable, Edgee tries Claude 3.5, then Gemini +// If GPT-5.2 is unavailable, Edgee tries Claude 3.5, then Gemini console.log(`Model used: ${response.model}`); console.log(`Fallback used: ${response.fallback_used}`); // true/false ``` @@ -138,7 +138,7 @@ Configure default routing strategies per use case: await edgee.routing.configure({ name: 'rag-qa', strategy: 'cost', - allowed_models: ['gpt-5.2', 'gpt-5.1', 'claude-3.5-sonnet'], + allowed_models: ['gpt-5.2', 'gpt-5.1', 'claude-sonnet-4-6'], quality_threshold: 0.9, }); @@ -146,7 +146,7 @@ await edgee.routing.configure({ await edgee.routing.configure({ name: 'code-gen', strategy: 'performance', - allowed_models: ['gpt-4o', 'claude-3.5-sonnet'], + allowed_models: ['gpt-5.2', 'claude-sonnet-4-6'], quality_threshold: 0.95, }); @@ -169,7 +169,7 @@ await edgee.routing.addRule({ token_count: { gt: 10000 }, // Requests over 10k tokens }, action: { - models: ['claude-3.5-sonnet'], // Use Claude for long contexts + models: ['claude-sonnet-4-6'], // Use Claude for long contexts strategy: 'cost', }, }); @@ -180,7 +180,7 @@ await edgee.routing.addRule({ metadata: { priority: 'high' }, // High-priority requests }, action: { - models: ['gpt-4o', 'claude-opus'], // Use premium models + models: ['gpt-5.2', 'claude-opus'], // Use premium models strategy: 'performance', }, }); diff --git a/features/observability.mdx b/features/observability.mdx index b4452c8..03d6a2f 100644 --- a/features/observability.mdx +++ b/features/observability.mdx @@ -12,7 +12,7 @@ Every Edgee response includes detailed token usage information for tracking and ```typescript const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: 'Your prompt here', }); @@ -29,7 +29,7 @@ if (response.compression) { ``` **Track usage by:** -- Model (GPT-4o vs Claude vs Gemini) +- Model (GPT-5.2 vs Claude vs Gemini) - Project or application - Environment (production vs staging) - User or tenant (for multi-tenant apps) @@ -53,7 +53,7 @@ Tags allow you to categorize and label requests for filtering and grouping in yo const edgee = new Edgee("your-api-key"); const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: { messages: [{ role: 'user', content: 'Hello!' }], tags: ['production', 'chat-feature', 'user-123', 'team-backend'] @@ -69,7 +69,7 @@ Tags allow you to categorize and label requests for filtering and grouping in yo edgee = Edgee("your-api-key") response = edgee.send( - model="gpt-4o", + model="gpt-5.2", input=InputObject( messages=[Message(role="user", content="Hello!")], tags=["production", "chat-feature", "user-123", "team-backend"] @@ -84,7 +84,7 @@ Tags allow you to categorize and label requests for filtering and grouping in yo client, _ := edgee.NewClient("your-api-key") - response, err := client.Send("gpt-4o", edgee.InputObject{ + response, err := client.Send("gpt-5.2", edgee.InputObject{ Messages: []edgee.Message{ {Role: "user", Content: "Hello!"}, }, @@ -107,7 +107,7 @@ Tags allow you to categorize and label requests for filtering and grouping in yo "team-backend".to_string(), ]); - let response = client.send("gpt-4o", input).await?; + let response = client.send("gpt-5.2", input).await?; ``` @@ -184,7 +184,7 @@ See exactly how much token compression is saving you on every request: ```typescript const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: 'Long prompt with lots of context...', enable_compression: true, }); diff --git a/features/token-compression.mdx b/features/token-compression.mdx index 32a1e44..230258d 100644 --- a/features/token-compression.mdx +++ b/features/token-compression.mdx @@ -78,7 +78,7 @@ Enable compression for specific requests using the SDK: ```typescript const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: { "messages": [ {"role": "user", "content": "Your prompt here"} @@ -93,7 +93,7 @@ Enable compression for specific requests using the SDK: ```python response = edgee.send( - model="gpt-4o", + model="gpt-5.2", input={ "messages": [ {"role": "user", "content": "Your prompt here"} @@ -107,7 +107,7 @@ Enable compression for specific requests using the SDK: ```go - response, err := client.Send("gpt-4o", edgee.InputObject{ + response, err := client.Send("gpt-5.2", edgee.InputObject{ Messages: []edgee.Message{ {Role: "user", Content: "Your prompt here"}, }, @@ -123,7 +123,7 @@ Enable compression for specific requests using the SDK: .with_compression(true) .with_compression_rate(0.8); // Target ratio: compressed = 80% of original (optional) - let response = client.send("gpt-4o", input).await?; + let response = client.send("gpt-5.2", input).await?; ``` @@ -215,7 +215,7 @@ const documents = [ ]; const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: `Answer the question based on these documents:\n\n${documents.join('\n\n')}\n\nQuestion: What is the main topic?`, enable_compression: true, // Enable compression for this request compression_rate: 0.8, // Target ratio (0-1): 0.8 = compressed is 80% of original @@ -246,10 +246,10 @@ Here's what token compression means for your monthly AI bill: | Use Case | Monthly Requests | Without Edgee | With Edgee (50% compression) | **Monthly Savings** | |----------|-----------------|---------------|------------------------------|---------------------| -| RAG Q&A (GPT-4o) | 100,000 @ 2,000 tokens | $3,000 | $1,500 | **$1,500** | +| RAG Q&A (GPT-5.2) | 100,000 @ 2,000 tokens | $3,000 | $1,500 | **$1,500** | | Document Analysis (Claude 3.5) | 50,000 @ 4,000 tokens | $1,800 | $900 | **$900** | | Chatbot (GPT-4o-mini) | 500,000 @ 500 tokens | $375 | $188 | **$187** | -| Multi-turn Agent (GPT-4o) | 200,000 @ 1,000 tokens | $3,000 | $1,500 | **$1,500** | +| Multi-turn Agent (GPT-5.2) | 200,000 @ 1,000 tokens | $3,000 | $1,500 | **$1,500** | Savings calculations use list pricing for GPT-4o ($5/1M input tokens), Claude 3.5 Sonnet ($3/1M input tokens), and GPT-4o-mini ($0.15/1M input tokens). Actual compression ratios vary by use case. diff --git a/integrations/anthropic-sdk.mdx b/integrations/anthropic-sdk.mdx index b4c393b..af1b3a8 100644 --- a/integrations/anthropic-sdk.mdx +++ b/integrations/anthropic-sdk.mdx @@ -313,7 +313,7 @@ With Edgee, you can access models from multiple providers using the same Anthrop # Use GPT-4 through the same client gpt_response = client.messages.create( - model="gpt-4o", + model="gpt-5.2", max_tokens=1024, messages=[{"role": "user", "content": "Hello!"}] ) @@ -345,7 +345,7 @@ With Edgee, you can access models from multiple providers using the same Anthrop // Use GPT-4 through the same client const gptResponse = await client.messages.create({ - model: 'gpt-4o', + model: 'gpt-5.2', max_tokens: 1024, messages: [{ role: 'user', content: 'Hello!' }] }); diff --git a/integrations/claude-code.mdx b/integrations/claude-code.mdx index 9cc6df8..26dce36 100644 --- a/integrations/claude-code.mdx +++ b/integrations/claude-code.mdx @@ -82,7 +82,7 @@ When using Edgee with Claude Code, you can specify which Claude model to use thr claude --model claude-sonnet-4.5 "Explain this codebase" # Use different providers through Edgee -claude --model gpt-4o "Refactor this function" +claude --model gpt-5.2 "Refactor this function" ``` ## Advanced Configuration diff --git a/integrations/langchain.mdx b/integrations/langchain.mdx index dc7ae70..1a6a909 100644 --- a/integrations/langchain.mdx +++ b/integrations/langchain.mdx @@ -125,7 +125,7 @@ import os llm = ChatOpenAI( base_url="https://api.edgee.ai/v1", api_key=os.getenv("API_KEY"), - model="gpt-4o", + model="gpt-5.2", default_headers={ "x-edgee-enable-compression": "true", "x-edgee-compression-rate": "0.8", # Target 80% compression diff --git a/integrations/openai-sdk.mdx b/integrations/openai-sdk.mdx index 80eebf3..fa5b73c 100644 --- a/integrations/openai-sdk.mdx +++ b/integrations/openai-sdk.mdx @@ -49,7 +49,7 @@ const openai = new OpenAI({ async function main() { const completion = await openai.chat.completions.create({ - model: "gpt-4o", + model: "gpt-5.2", messages: [ { role: "user", content: "What is the capital of France?" } ], @@ -72,7 +72,7 @@ client = OpenAI( ) completion = client.chat.completions.create( - model="gpt-4o", + model="gpt-5.2", messages=[ { "role": "user", @@ -101,7 +101,7 @@ const openai = new OpenAI({ }); const completion = await openai.chat.completions.create({ - model: "gpt-4o", + model: "gpt-5.2", messages: [ { role: "user", content: "Summarize this long document..." } ], @@ -123,7 +123,7 @@ client = OpenAI( ) completion = client.chat.completions.create( - model="gpt-4o", + model="gpt-5.2", messages=[ {"role": "user", "content": "Summarize this long document..."} ], @@ -163,7 +163,7 @@ const openai = new OpenAI({ // All requests will use compression with 80% target rate const completion = await openai.chat.completions.create({ - model: "gpt-4o", + model: "gpt-5.2", messages: [ { role: "user", content: "Analyze this long document..." } ], @@ -185,7 +185,7 @@ client = OpenAI( # All requests will use compression completion = client.chat.completions.create( - model="gpt-4o", + model="gpt-5.2", messages=[ {"role": "user", "content": "Analyze this long document..."} ], @@ -261,7 +261,7 @@ const openai = new OpenAI({ async function main() { const completion = await openai.chat.completions.create({ - model: "gpt-4o", + model: "gpt-5.2", messages: [ { role: "user", content: "What's the weather in Paris?" } ], @@ -307,7 +307,7 @@ client = OpenAI( ) completion = client.chat.completions.create( - model="gpt-4o", + model="gpt-5.2", messages=[ { "role": "user", @@ -360,7 +360,7 @@ const openai = new OpenAI({ async function main() { const stream = await openai.chat.completions.create({ - model: "gpt-4o", + model: "gpt-5.2", messages: [ { role: "user", content: "Tell me a short story" } ], @@ -386,7 +386,7 @@ client = OpenAI( ) stream = client.chat.completions.create( - model="gpt-4o", + model="gpt-5.2", messages=[ { "role": "user", diff --git a/introduction.mdx b/introduction.mdx index 79dc675..66967bb 100644 --- a/introduction.mdx +++ b/introduction.mdx @@ -17,7 +17,7 @@ Edgee is an **AI Gateway** that reduces LLM costs by up to 50% through intellige const edgee = new Edgee("your-api-key"); const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: 'What is the capital of France?', }); @@ -35,7 +35,7 @@ Edgee is an **AI Gateway** that reduces LLM costs by up to 50% through intellige edgee = Edgee("your-api-key") response = edgee.send( - model="gpt-4o", + model="gpt-5.2", input="What is the capital of France?" ) @@ -58,7 +58,7 @@ Edgee is an **AI Gateway** that reduces LLM costs by up to 50% through intellige func main() { client, _ := edgee.NewClient("your-api-key") - response, err := client.Send("gpt-4o", "What is the capital of France?") + response, err := client.Send("gpt-5.2", "What is the capital of France?") if err != nil { log.Fatal(err) } @@ -76,7 +76,7 @@ Edgee is an **AI Gateway** that reduces LLM costs by up to 50% through intellige use edgee::Edgee; let client = Edgee::with_api_key("your-api-key"); - let response = client.send("gpt-4o", "What is the capital of France?").await.unwrap(); + let response = client.send("gpt-5.2", "What is the capital of France?").await.unwrap(); println!("{}", response.text().unwrap_or("")); if let Some(compression) = &response.compression { diff --git a/introduction/why-edgee.mdx b/introduction/why-edgee.mdx index 5361a33..23cfdc7 100644 --- a/introduction/why-edgee.mdx +++ b/introduction/why-edgee.mdx @@ -101,7 +101,7 @@ With a single Edgee API key, you get instant access to every supported model; Op const edgee = new Edgee(); // Access any model with the same key -await edgee.send({ model: 'gpt-4o', input: 'Hello, world!' }); +await edgee.send({ model: 'gpt-5.2', input: 'Hello, world!' }); await edgee.send({ model: 'claude-sonnet-4.5', input: 'Hello, world!' }); await edgee.send({ model: 'gemini-3-pro', input: 'Hello, world!' }); ``` @@ -112,7 +112,7 @@ from edgee import Edgee edgee = Edgee() # Access any model with the same key -edgee.send(model='gpt-4o', input='Hello, world!') +edgee.send(model='gpt-5.2', input='Hello, world!') edgee.send(model='claude-sonnet-4.5', input='Hello, world!') edgee.send(model='gemini-3-pro', input='Hello, world!') ``` @@ -123,7 +123,7 @@ use edgee::Edgee; let client = Edgee::from_env()?; // Access any model with the same key -client.send("gpt-4o", "Hello, world!").await?; +client.send("gpt-5.2", "Hello, world!").await?; client.send("claude-sonnet-4.5", "Hello, world!").await?; client.send("gemini-3-pro", "Hello, world!").await?; ``` @@ -134,7 +134,7 @@ import "github.com/edgee-ai/go-sdk/edgee" client, _ := edgee.NewClient(nil) // Access any model with the same key -client.Send("gpt-4o", "Hello, world!") +client.Send("gpt-5.2", "Hello, world!") client.Send("claude-sonnet-4.5", "Hello, world!") client.Send("gemini-3-pro", "Hello, world!") ``` diff --git a/package-lock.json b/package-lock.json index e697905..db28437 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5,13 +5,13 @@ "packages": { "": { "dependencies": { - "mintlify": "^4.2.340" + "mintlify": "^4.2.392" } }, "node_modules/@alcalzone/ansi-tokenize": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/@alcalzone/ansi-tokenize/-/ansi-tokenize-0.2.4.tgz", - "integrity": "sha512-HTgrrTgZ9Jgeo6Z3oqbQ7lifOVvRR14vaDuBGPPUxk9Thm+vObaO4QfYYYWw4Zo5CWQDBEfsinFA6Gre+AqwNQ==", + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/@alcalzone/ansi-tokenize/-/ansi-tokenize-0.2.5.tgz", + "integrity": "sha512-3NX/MpTdroi0aKz134A6RC2Gb2iXVECN4QaAXnvCIxxIm3C3AVB1mkUe8NaaiyvOpDfsrqWhYtj+Q6a62RrTsw==", "license": "MIT", "dependencies": { "ansi-styles": "^6.2.1", @@ -982,18 +982,19 @@ } }, "node_modules/@mintlify/cli": { - "version": "4.0.944", - "resolved": "https://registry.npmjs.org/@mintlify/cli/-/cli-4.0.944.tgz", - "integrity": "sha512-XB0MKXnwVjcYzX9QDZL52O9USPASPyZuVVWEhofG1JOYkR+vOC9oQ90pfbKjE7A3RfJUkgWeM5RbC9jy8DKG0w==", + "version": "4.0.995", + "resolved": "https://registry.npmjs.org/@mintlify/cli/-/cli-4.0.995.tgz", + "integrity": "sha512-A4tnyadvwFFU5Jh4PT7wfYHqq0s+ZnB+YZMLssDj8zWz1GI/+ZnPGTyt9R06tIFeylvrQ3Rh81TRYu81mSyxwQ==", "license": "Elastic-2.0", "dependencies": { "@inquirer/prompts": "7.9.0", - "@mintlify/common": "1.0.721", - "@mintlify/link-rot": "3.0.881", - "@mintlify/models": "0.0.271", - "@mintlify/prebuild": "1.0.857", - "@mintlify/previewing": "4.0.914", - "@mintlify/validation": "0.1.591", + "@mintlify/common": "1.0.765", + "@mintlify/link-rot": "3.0.930", + "@mintlify/models": "0.0.279", + "@mintlify/prebuild": "1.0.902", + "@mintlify/previewing": "4.0.960", + "@mintlify/scraping": "4.0.627", + "@mintlify/validation": "0.1.616", "adm-zip": "0.5.16", "chalk": "5.2.0", "color": "4.2.3", @@ -1018,17 +1019,17 @@ } }, "node_modules/@mintlify/common": { - "version": "1.0.721", - "resolved": "https://registry.npmjs.org/@mintlify/common/-/common-1.0.721.tgz", - "integrity": "sha512-ZaRbEzuWPNm5vhqa9Qjd5S7+hJcNJF5J2giW/WDCyw0o5Q3KfAPMZqVUq5zaI5Ka4dd1va6bJuQPfTiqHAW/OA==", + "version": "1.0.765", + "resolved": "https://registry.npmjs.org/@mintlify/common/-/common-1.0.765.tgz", + "integrity": "sha512-xqDr7jyE5e+aJl5ForjxPtuwVbmvsMyFvVZnQAldsRHIVmdFW34tzsUsOzZu60b9qMbgOIcvactsFvBcB6ZGHg==", "license": "ISC", "dependencies": { "@asyncapi/parser": "3.4.0", "@asyncapi/specs": "6.8.1", "@mintlify/mdx": "^3.0.4", - "@mintlify/models": "0.0.271", + "@mintlify/models": "0.0.279", "@mintlify/openapi-parser": "^0.0.8", - "@mintlify/validation": "0.1.591", + "@mintlify/validation": "0.1.616", "@sindresorhus/slugify": "2.2.0", "@types/mdast": "4.0.4", "acorn": "8.11.2", @@ -1070,7 +1071,8 @@ "unist-util-remove-position": "5.0.0", "unist-util-visit": "5.0.0", "unist-util-visit-parents": "6.0.1", - "vfile": "6.0.3" + "vfile": "6.0.3", + "xss": "1.0.15" } }, "node_modules/@mintlify/common/node_modules/@floating-ui/react-dom": { @@ -1399,21 +1401,21 @@ } }, "node_modules/@mintlify/common/node_modules/next-mdx-remote-client": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/next-mdx-remote-client/-/next-mdx-remote-client-1.1.4.tgz", - "integrity": "sha512-psCMdO50tfoT1kAH7OGXZvhyRfiHVK6IqwjmWFV5gtLo4dnqjAgcjcLNeJ92iI26UNlKShxYrBs1GQ6UXxk97A==", + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/next-mdx-remote-client/-/next-mdx-remote-client-1.1.6.tgz", + "integrity": "sha512-O4HIpi44d6SismhfG5W78aTUfgxfbsj6FgoM4/G3o4Vtcobt0Ej439IiDPkv+IqsmtouVYG1tGAsz1DIuj9Tfg==", "license": "MPL 2.0", "dependencies": { - "@babel/code-frame": "^7.27.1", + "@babel/code-frame": "^7.29.0", "@mdx-js/mdx": "^3.1.1", "@mdx-js/react": "^3.1.1", - "remark-mdx-remove-esm": "^1.2.1", - "serialize-error": "^12.0.0", + "remark-mdx-remove-esm": "^1.2.3", + "serialize-error": "^13.0.1", "vfile": "^6.0.3", "vfile-matter": "^5.0.1" }, "engines": { - "node": ">=18.18.0" + "node": ">=20.9.0" }, "peerDependencies": { "react": ">= 18.3.0 < 19.0.0", @@ -1457,16 +1459,16 @@ } }, "node_modules/@mintlify/link-rot": { - "version": "3.0.881", - "resolved": "https://registry.npmjs.org/@mintlify/link-rot/-/link-rot-3.0.881.tgz", - "integrity": "sha512-3GFqgzWyOQKWAVEg/UY76UYKQD1kG3uMrD3SZSx/qapcWakaY/RmqR5Rp8qfSx1R61Z5xaR4KeKzcXAl8Yffxw==", + "version": "3.0.930", + "resolved": "https://registry.npmjs.org/@mintlify/link-rot/-/link-rot-3.0.930.tgz", + "integrity": "sha512-BczWfPxWtZUDMYBkvkLOrPiM78AIfmMJh9yr+rtgtb6ZbtqzNtNv1TJJlk4SYNARlLpZOV07vVwYtpj6vgfMhw==", "license": "Elastic-2.0", "dependencies": { - "@mintlify/common": "1.0.721", - "@mintlify/prebuild": "1.0.857", - "@mintlify/previewing": "4.0.914", + "@mintlify/common": "1.0.765", + "@mintlify/prebuild": "1.0.902", + "@mintlify/previewing": "4.0.960", "@mintlify/scraping": "4.0.522", - "@mintlify/validation": "0.1.591", + "@mintlify/validation": "0.1.616", "fs-extra": "11.1.0", "unist-util-visit": "4.1.2" }, @@ -1474,144 +1476,126 @@ "node": ">=18.0.0" } }, - "node_modules/@mintlify/link-rot/node_modules/@types/unist": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz", - "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==", - "license": "MIT" + "node_modules/@mintlify/link-rot/node_modules/@floating-ui/react-dom": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.7.tgz", + "integrity": "sha512-0tLRojf/1Go2JgEVm+3Frg9A3IW8bJgKgdO0BN5RkF//ufuz2joZM63Npau2ff3J6lUVYgDSNzNkR+aH3IVfjg==", + "license": "MIT", + "dependencies": { + "@floating-ui/dom": "^1.7.5" + }, + "peerDependencies": { + "react": ">=16.8.0", + "react-dom": ">=16.8.0" + } }, - "node_modules/@mintlify/link-rot/node_modules/fs-extra": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.0.tgz", - "integrity": "sha512-0rcTq621PD5jM/e0a3EJoGC/1TC5ZBCERW82LQuwfGnCa1V8w7dpYH1yNu+SLb6E5dkeCBzKEyLGlFrnr+dUyw==", + "node_modules/@mintlify/link-rot/node_modules/@mintlify/mdx": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@mintlify/mdx/-/mdx-3.0.4.tgz", + "integrity": "sha512-tJhdpnM5ReJLNJ2fuDRIEr0zgVd6id7/oAIfs26V46QlygiLsc8qx4Rz3LWIX51rUXW/cfakjj0EATxIciIw+g==", "license": "MIT", "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" + "@shikijs/transformers": "^3.11.0", + "@shikijs/twoslash": "^3.12.2", + "arktype": "^2.1.26", + "hast-util-to-string": "^3.0.1", + "mdast-util-from-markdown": "^2.0.2", + "mdast-util-gfm": "^3.1.0", + "mdast-util-mdx-jsx": "^3.2.0", + "mdast-util-to-hast": "^13.2.0", + "next-mdx-remote-client": "^1.0.3", + "rehype-katex": "^7.0.1", + "remark-gfm": "^4.0.0", + "remark-math": "^6.0.0", + "remark-smartypants": "^3.0.2", + "shiki": "^3.11.0", + "unified": "^11.0.0", + "unist-util-visit": "^5.0.0" }, - "engines": { - "node": ">=14.14" + "peerDependencies": { + "@radix-ui/react-popover": "^1.1.15", + "react": "^18.3.1", + "react-dom": "^18.3.1" } }, - "node_modules/@mintlify/link-rot/node_modules/unist-util-is": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", - "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "node_modules/@mintlify/link-rot/node_modules/@mintlify/mdx/node_modules/mdast-util-gfm": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-3.1.0.tgz", + "integrity": "sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==", "license": "MIT", "dependencies": { - "@types/unist": "^2.0.0" + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-gfm-autolink-literal": "^2.0.0", + "mdast-util-gfm-footnote": "^2.0.0", + "mdast-util-gfm-strikethrough": "^2.0.0", + "mdast-util-gfm-table": "^2.0.0", + "mdast-util-gfm-task-list-item": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/@mintlify/link-rot/node_modules/unist-util-visit": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", - "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "node_modules/@mintlify/link-rot/node_modules/@mintlify/mdx/node_modules/mdast-util-mdx-jsx": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-3.2.0.tgz", + "integrity": "sha512-lj/z8v0r6ZtsN/cGNNtemmmfoLAFZnjMbNyLzBafjzikOM+glrjNHPlf6lQDOTccj9n5b0PPihEBbhneMyGs1Q==", "license": "MIT", "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^5.1.1" + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "ccount": "^2.0.0", + "devlop": "^1.1.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "parse-entities": "^4.0.0", + "stringify-entities": "^4.0.0", + "unist-util-stringify-position": "^4.0.0", + "vfile-message": "^4.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/@mintlify/link-rot/node_modules/unist-util-visit-parents": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", - "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "node_modules/@mintlify/link-rot/node_modules/@mintlify/mdx/node_modules/unist-util-visit": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.1.0.tgz", + "integrity": "sha512-m+vIdyeCOpdr/QeQCu2EzxX/ohgS8KbnPDgFni4dQsfSCtpz8UqDyY5GjRru8PDKuYn7Fq19j1CQ+nJSsGKOzg==", "license": "MIT", "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/@mintlify/models": { - "version": "0.0.271", - "resolved": "https://registry.npmjs.org/@mintlify/models/-/models-0.0.271.tgz", - "integrity": "sha512-7SQb+/u1IS8yNh+Z39TUrJHpaynZOwZ2B3jvu1EyCmsB63dtrLP2hM1e5/qTOdosVOTBc/9kxuSipwrkUwKCCQ==", + "node_modules/@mintlify/link-rot/node_modules/@mintlify/models": { + "version": "0.0.255", + "resolved": "https://registry.npmjs.org/@mintlify/models/-/models-0.0.255.tgz", + "integrity": "sha512-LIUkfA7l7ypHAAuOW74ZJws/NwNRqlDRD/U466jarXvvSlGhJec/6J4/I+IEcBvWDnc9anLFKmnGO04jPKgAsg==", "license": "Elastic-2.0", "dependencies": { - "axios": "1.13.2", + "axios": "1.10.0", "openapi-types": "12.1.3" }, "engines": { "node": ">=18.0.0" } }, - "node_modules/@mintlify/openapi-parser": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/@mintlify/openapi-parser/-/openapi-parser-0.0.8.tgz", - "integrity": "sha512-9MBRq9lS4l4HITYCrqCL7T61MOb20q9IdU7HWhqYMNMM1jGO1nHjXasFy61yZ8V6gMZyyKQARGVoZ0ZrYN48Og==", - "license": "MIT", - "dependencies": { - "ajv": "^8.17.1", - "ajv-draft-04": "^1.0.0", - "ajv-formats": "^3.0.1", - "jsonpointer": "^5.0.1", - "leven": "^4.0.0", - "yaml": "^2.4.5" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@mintlify/openapi-parser/node_modules/ajv-formats": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz", - "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==", - "license": "MIT", - "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } - } - }, - "node_modules/@mintlify/prebuild": { - "version": "1.0.857", - "resolved": "https://registry.npmjs.org/@mintlify/prebuild/-/prebuild-1.0.857.tgz", - "integrity": "sha512-71H6xmAGFpV7ttZKuYf0KBUE9iulqiT7mYPmtGM0zFzNkAxYql2QY+GzZ1Jvf9neyoiyLBu7eZ+Tyfbjo3cd4g==", - "license": "Elastic-2.0", - "dependencies": { - "@mintlify/common": "1.0.721", - "@mintlify/openapi-parser": "^0.0.8", - "@mintlify/scraping": "4.0.582", - "@mintlify/validation": "0.1.591", - "chalk": "5.3.0", - "favicons": "7.2.0", - "front-matter": "4.0.2", - "fs-extra": "11.1.0", - "js-yaml": "4.1.0", - "openapi-types": "12.1.3", - "sharp": "0.33.5", - "sharp-ico": "0.1.5", - "unist-util-visit": "4.1.2", - "uuid": "11.1.0" - } - }, - "node_modules/@mintlify/prebuild/node_modules/@mintlify/scraping": { - "version": "4.0.582", - "resolved": "https://registry.npmjs.org/@mintlify/scraping/-/scraping-4.0.582.tgz", - "integrity": "sha512-0hA2NXXwvJVJb6eTA0xawSfa20ofCshLtKRIfiWbDfM8RSnjcGpAfZFmTq7imSp74XzbovtHljEKM5nQDFCKsA==", + "node_modules/@mintlify/link-rot/node_modules/@mintlify/scraping": { + "version": "4.0.522", + "resolved": "https://registry.npmjs.org/@mintlify/scraping/-/scraping-4.0.522.tgz", + "integrity": "sha512-PL2k52WT5S5OAgnT2K13bP7J2El6XwiVvQlrLvxDYw5KMMV+y34YVJI8ZscKb4trjitWDgyK0UTq2KN6NQgn6g==", "license": "Elastic-2.0", "dependencies": { - "@mintlify/common": "1.0.721", + "@mintlify/common": "1.0.661", "@mintlify/openapi-parser": "^0.0.8", "fs-extra": "11.1.1", "hast-util-to-mdast": "10.1.0", @@ -1627,7 +1611,7 @@ "unified": "11.0.5", "unist-util-visit": "5.0.0", "yargs": "17.7.1", - "zod": "3.24.0" + "zod": "3.21.4" }, "bin": { "mintlify-scrape": "bin/cli.js" @@ -1636,7 +1620,95 @@ "node": ">=18.0.0" } }, - "node_modules/@mintlify/prebuild/node_modules/@mintlify/scraping/node_modules/fs-extra": { + "node_modules/@mintlify/link-rot/node_modules/@mintlify/scraping/node_modules/@mintlify/common": { + "version": "1.0.661", + "resolved": "https://registry.npmjs.org/@mintlify/common/-/common-1.0.661.tgz", + "integrity": "sha512-/Hdiblzaomp+AWStQ4smhVMgesQhffzQjC9aYBnmLReNdh2Js+ccQFUaWL3TNIxwiS2esaZvsHSV/D+zyRS3hg==", + "license": "ISC", + "dependencies": { + "@asyncapi/parser": "3.4.0", + "@mintlify/mdx": "^3.0.4", + "@mintlify/models": "0.0.255", + "@mintlify/openapi-parser": "^0.0.8", + "@mintlify/validation": "0.1.555", + "@sindresorhus/slugify": "2.2.0", + "@types/mdast": "4.0.4", + "acorn": "8.11.2", + "acorn-jsx": "5.3.2", + "color-blend": "4.0.0", + "estree-util-to-js": "2.0.0", + "estree-walker": "3.0.3", + "front-matter": "4.0.2", + "hast-util-from-html": "2.0.3", + "hast-util-to-html": "9.0.4", + "hast-util-to-text": "4.0.2", + "hex-rgb": "5.0.0", + "ignore": "7.0.5", + "js-yaml": "4.1.0", + "lodash": "4.17.21", + "mdast-util-from-markdown": "2.0.2", + "mdast-util-gfm": "3.0.0", + "mdast-util-mdx": "3.0.0", + "mdast-util-mdx-jsx": "3.1.3", + "micromark-extension-gfm": "3.0.0", + "micromark-extension-mdx-jsx": "3.0.1", + "micromark-extension-mdxjs": "3.0.0", + "openapi-types": "12.1.3", + "postcss": "8.5.6", + "rehype-stringify": "10.0.1", + "remark": "15.0.1", + "remark-frontmatter": "5.0.0", + "remark-gfm": "4.0.0", + "remark-math": "6.0.0", + "remark-mdx": "3.1.0", + "remark-parse": "11.0.0", + "remark-rehype": "11.1.1", + "remark-stringify": "11.0.0", + "tailwindcss": "3.4.4", + "unified": "11.0.5", + "unist-builder": "4.0.0", + "unist-util-map": "4.0.0", + "unist-util-remove": "4.0.0", + "unist-util-remove-position": "5.0.0", + "unist-util-visit": "5.0.0", + "unist-util-visit-parents": "6.0.1", + "vfile": "6.0.3" + } + }, + "node_modules/@mintlify/link-rot/node_modules/@mintlify/scraping/node_modules/@mintlify/common/node_modules/remark-mdx": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-3.1.0.tgz", + "integrity": "sha512-Ngl/H3YXyBV9RcRNdlYsZujAmhsxwzxpDzpDEhFBVAGthS4GDgnctpDjgFl/ULx5UEDzqtW1cyBSNKqYYrqLBA==", + "license": "MIT", + "dependencies": { + "mdast-util-mdx": "^3.0.0", + "micromark-extension-mdxjs": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@mintlify/link-rot/node_modules/@mintlify/scraping/node_modules/@mintlify/validation": { + "version": "0.1.555", + "resolved": "https://registry.npmjs.org/@mintlify/validation/-/validation-0.1.555.tgz", + "integrity": "sha512-11QVUReL4N5u8wSCgZt4RN7PA0jYQoMEBZ5IrUp5pgb5ZJBOoGV/vPsQrxPPa1cxsUDAuToNhtGxRQtOav/w8w==", + "license": "Elastic-2.0", + "dependencies": { + "@mintlify/mdx": "^3.0.4", + "@mintlify/models": "0.0.255", + "arktype": "2.1.27", + "js-yaml": "4.1.0", + "lcm": "0.0.3", + "lodash": "4.17.21", + "object-hash": "3.0.0", + "openapi-types": "12.1.3", + "uuid": "11.1.0", + "zod": "3.21.4", + "zod-to-json-schema": "3.20.4" + } + }, + "node_modules/@mintlify/link-rot/node_modules/@mintlify/scraping/node_modules/fs-extra": { "version": "11.1.1", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz", "integrity": "sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==", @@ -1650,7 +1722,21 @@ "node": ">=14.14" } }, - "node_modules/@mintlify/prebuild/node_modules/@mintlify/scraping/node_modules/unist-util-visit": { + "node_modules/@mintlify/link-rot/node_modules/@mintlify/scraping/node_modules/remark-mdx": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-3.0.1.tgz", + "integrity": "sha512-3Pz3yPQ5Rht2pM5R+0J2MrGoBSrzf+tJG94N+t/ilfdh8YLyyKYtidAYwTveB20BoHAcwIopOUqhcmh2F7hGYA==", + "license": "MIT", + "dependencies": { + "mdast-util-mdx": "^3.0.0", + "micromark-extension-mdxjs": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@mintlify/link-rot/node_modules/@mintlify/scraping/node_modules/unist-util-visit": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", @@ -1665,19 +1751,234 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/@mintlify/prebuild/node_modules/chalk": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", - "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "node_modules/@mintlify/link-rot/node_modules/@radix-ui/react-arrow": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.1.7.tgz", + "integrity": "sha512-F+M1tLhO+mlQaOWspE8Wstg+z6PwxwRd8oQ8IXceWz92kfAmalTRf0EjrouQeo7QssEPfCn05B4Ihs1K9WQ/7w==", "license": "MIT", - "engines": { - "node": "^12.17.0 || ^14.13 || >=16.0.0" + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } } }, - "node_modules/@mintlify/prebuild/node_modules/fs-extra": { + "node_modules/@mintlify/link-rot/node_modules/@radix-ui/react-dismissable-layer": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.11.tgz", + "integrity": "sha512-Nqcp+t5cTB8BinFkZgXiMJniQH0PsUt2k51FUhbdfeKvc4ACcG2uQniY/8+h1Yv6Kza4Q7lD7PQV0z0oicE0Mg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-escape-keydown": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@mintlify/link-rot/node_modules/@radix-ui/react-focus-scope": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.1.7.tgz", + "integrity": "sha512-t2ODlkXBQyn7jkl6TNaw/MtVEVvIGelJDCG41Okq/KwUsJBwQ4XVZsHAVUkK4mBv3ewiAS3PGuUWuY2BoK4ZUw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@mintlify/link-rot/node_modules/@radix-ui/react-popover": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popover/-/react-popover-1.1.15.tgz", + "integrity": "sha512-kr0X2+6Yy/vJzLYJUPCZEc8SfQcf+1COFoAqauJm74umQhta9M7lNJHP7QQS3vkvcGLQUbWpMzwrXYwrYztHKA==", + "license": "MIT", + "peer": true, + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.6.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@mintlify/link-rot/node_modules/@radix-ui/react-popper": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.2.8.tgz", + "integrity": "sha512-0NJQ4LFFUuWkE7Oxf0htBKS6zLkkjBH+hM1uk7Ng705ReR8m/uelduy1DBo0PyBXPKVnBA6YBlU94MBGXrSBCw==", + "license": "MIT", + "dependencies": { + "@floating-ui/react-dom": "^2.0.0", + "@radix-ui/react-arrow": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-rect": "1.1.1", + "@radix-ui/react-use-size": "1.1.1", + "@radix-ui/rect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@mintlify/link-rot/node_modules/@radix-ui/react-portal": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.1.9.tgz", + "integrity": "sha512-bpIxvq03if6UNwXZ+HTK71JLh4APvnXntDc6XOX8UVq4XQOVl7lwok0AvIl+b8zgCw3fSaVTZMpAPPagXbKmHQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@mintlify/link-rot/node_modules/@radix-ui/react-presence": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.1.5.tgz", + "integrity": "sha512-/jfEwNDdQVBCNvjkGit4h6pMOzq8bHkopq458dPt2lMjx+eBQUohZNG9A7DtO/O5ukSbxuaNGXMjHicgwy6rQQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@mintlify/link-rot/node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@mintlify/link-rot/node_modules/axios": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.10.0.tgz", + "integrity": "sha512-/1xYAC4MP/HEG+3duIhFr4ZQXR4sQXOIe+o6sdqzeykGLx6Upp/1p8MHqhINOvGeP7xyNHe7tsiJByc4SSVUxw==", + "license": "MIT", + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/@mintlify/link-rot/node_modules/fs-extra": { "version": "11.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.0.tgz", "integrity": "sha512-0rcTq621PD5jM/e0a3EJoGC/1TC5ZBCERW82LQuwfGnCa1V8w7dpYH1yNu+SLb6E5dkeCBzKEyLGlFrnr+dUyw==", @@ -1691,7 +1992,7 @@ "node": ">=14.14" } }, - "node_modules/@mintlify/prebuild/node_modules/mdast-util-mdx-jsx": { + "node_modules/@mintlify/link-rot/node_modules/mdast-util-mdx-jsx": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-3.1.3.tgz", "integrity": "sha512-bfOjvNt+1AcbPLTFMFWY149nJz0OjmewJs3LQQ5pIyVGxP4CdOqNVJL6kTaM5c68p8q82Xv3nCyFfUnuEcH3UQ==", @@ -1715,42 +2016,86 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/@mintlify/prebuild/node_modules/remark-mdx": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-3.0.1.tgz", - "integrity": "sha512-3Pz3yPQ5Rht2pM5R+0J2MrGoBSrzf+tJG94N+t/ilfdh8YLyyKYtidAYwTveB20BoHAcwIopOUqhcmh2F7hGYA==", - "license": "MIT", + "node_modules/@mintlify/link-rot/node_modules/next-mdx-remote-client": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/next-mdx-remote-client/-/next-mdx-remote-client-1.1.6.tgz", + "integrity": "sha512-O4HIpi44d6SismhfG5W78aTUfgxfbsj6FgoM4/G3o4Vtcobt0Ej439IiDPkv+IqsmtouVYG1tGAsz1DIuj9Tfg==", + "license": "MPL 2.0", "dependencies": { - "mdast-util-mdx": "^3.0.0", - "micromark-extension-mdxjs": "^3.0.0" + "@babel/code-frame": "^7.29.0", + "@mdx-js/mdx": "^3.1.1", + "@mdx-js/react": "^3.1.1", + "remark-mdx-remove-esm": "^1.2.3", + "serialize-error": "^13.0.1", + "vfile": "^6.0.3", + "vfile-matter": "^5.0.1" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": ">=20.9.0" + }, + "peerDependencies": { + "react": ">= 18.3.0 < 19.0.0", + "react-dom": ">= 18.3.0 < 19.0.0" } }, - "node_modules/@mintlify/prebuild/node_modules/unist-util-visit": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", - "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "node_modules/@mintlify/link-rot/node_modules/react": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", + "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", "license": "MIT", + "peer": true, "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^5.1.1" + "loose-envify": "^1.1.0" }, - "funding": { - "type": "opencollective", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@mintlify/link-rot/node_modules/react-dom": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", + "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", + "license": "MIT", + "peer": true, + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.2" + }, + "peerDependencies": { + "react": "^18.3.1" + } + }, + "node_modules/@mintlify/link-rot/node_modules/scheduler": { + "version": "0.23.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", + "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "node_modules/@mintlify/link-rot/node_modules/unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "license": "MIT", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + }, + "funding": { + "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/@mintlify/prebuild/node_modules/unist-util-visit/node_modules/@types/unist": { + "node_modules/@mintlify/link-rot/node_modules/unist-util-visit/node_modules/@types/unist": { "version": "2.0.11", "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz", "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==", "license": "MIT" }, - "node_modules/@mintlify/prebuild/node_modules/unist-util-visit/node_modules/unist-util-is": { + "node_modules/@mintlify/link-rot/node_modules/unist-util-visit/node_modules/unist-util-is": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", @@ -1763,7 +2108,7 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/@mintlify/prebuild/node_modules/unist-util-visit/node_modules/unist-util-visit-parents": { + "node_modules/@mintlify/link-rot/node_modules/unist-util-visit/node_modules/unist-util-visit-parents": { "version": "5.1.3", "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", @@ -1777,53 +2122,103 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/@mintlify/prebuild/node_modules/zod": { - "version": "3.24.0", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.0.tgz", - "integrity": "sha512-Hz+wiY8yD0VLA2k/+nsg2Abez674dDGTai33SwNvMPuf9uIrBC9eFgIMQxBBbHFxVXi8W+5nX9DcAh9YNSQm/w==", + "node_modules/@mintlify/link-rot/node_modules/zod": { + "version": "3.21.4", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz", + "integrity": "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==", "license": "MIT", "funding": { "url": "https://github.com/sponsors/colinhacks" } }, - "node_modules/@mintlify/previewing": { - "version": "4.0.914", - "resolved": "https://registry.npmjs.org/@mintlify/previewing/-/previewing-4.0.914.tgz", - "integrity": "sha512-XGRodZLuDdjKfJzP4T0rs229Na/c1qR/nm6L9ENxPy5RDfInOMccRdeIH3An/uZglSv8h6q3Pt4kH8ZDy/Zh5A==", + "node_modules/@mintlify/models": { + "version": "0.0.279", + "resolved": "https://registry.npmjs.org/@mintlify/models/-/models-0.0.279.tgz", + "integrity": "sha512-59PniiwpqV0qqfxEWhNKlPIhgtE7p2v/Ysi7VwJrILCCan5j1e2zxMrP5F1CltNJhXJE92c++2feydYqg6/6xw==", "license": "Elastic-2.0", "dependencies": { - "@mintlify/common": "1.0.721", - "@mintlify/prebuild": "1.0.857", - "@mintlify/validation": "0.1.591", - "better-opn": "3.0.2", - "chalk": "5.2.0", - "chokidar": "3.5.3", - "express": "4.18.2", + "axios": "1.13.2", + "openapi-types": "12.1.3" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@mintlify/openapi-parser": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/@mintlify/openapi-parser/-/openapi-parser-0.0.8.tgz", + "integrity": "sha512-9MBRq9lS4l4HITYCrqCL7T61MOb20q9IdU7HWhqYMNMM1jGO1nHjXasFy61yZ8V6gMZyyKQARGVoZ0ZrYN48Og==", + "license": "MIT", + "dependencies": { + "ajv": "^8.17.1", + "ajv-draft-04": "^1.0.0", + "ajv-formats": "^3.0.1", + "jsonpointer": "^5.0.1", + "leven": "^4.0.0", + "yaml": "^2.4.5" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@mintlify/openapi-parser/node_modules/ajv-formats": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz", + "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==", + "license": "MIT", + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/@mintlify/prebuild": { + "version": "1.0.902", + "resolved": "https://registry.npmjs.org/@mintlify/prebuild/-/prebuild-1.0.902.tgz", + "integrity": "sha512-I7WhD+PJ07COOB9NlhiDSlm2CqXoEHCx7qpvauJIvPQu/6F/ZHQOB8c1SMValDM2P/+SaZPvdMgmr3PZysr9tQ==", + "license": "Elastic-2.0", + "dependencies": { + "@mintlify/common": "1.0.765", + "@mintlify/openapi-parser": "^0.0.8", + "@mintlify/scraping": "4.0.627", + "@mintlify/validation": "0.1.616", + "chalk": "5.3.0", + "favicons": "7.2.0", "front-matter": "4.0.2", "fs-extra": "11.1.0", - "got": "13.0.0", - "ink": "6.3.0", - "ink-spinner": "5.0.0", - "is-online": "10.0.0", "js-yaml": "4.1.0", "openapi-types": "12.1.3", - "react": "19.2.3", - "socket.io": "4.7.2", - "tar": "6.1.15", + "sharp": "0.33.5", + "sharp-ico": "0.1.5", "unist-util-visit": "4.1.2", - "yargs": "17.7.1" - }, - "engines": { - "node": ">=18.0.0" + "uuid": "11.1.0" } }, - "node_modules/@mintlify/previewing/node_modules/@types/unist": { + "node_modules/@mintlify/prebuild/node_modules/@types/unist": { "version": "2.0.11", "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz", "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==", "license": "MIT" }, - "node_modules/@mintlify/previewing/node_modules/fs-extra": { + "node_modules/@mintlify/prebuild/node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "license": "MIT", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@mintlify/prebuild/node_modules/fs-extra": { "version": "11.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.0.tgz", "integrity": "sha512-0rcTq621PD5jM/e0a3EJoGC/1TC5ZBCERW82LQuwfGnCa1V8w7dpYH1yNu+SLb6E5dkeCBzKEyLGlFrnr+dUyw==", @@ -1837,7 +2232,7 @@ "node": ">=14.14" } }, - "node_modules/@mintlify/previewing/node_modules/unist-util-is": { + "node_modules/@mintlify/prebuild/node_modules/unist-util-is": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", @@ -1850,7 +2245,7 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/@mintlify/previewing/node_modules/unist-util-visit": { + "node_modules/@mintlify/prebuild/node_modules/unist-util-visit": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", @@ -1865,7 +2260,7 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/@mintlify/previewing/node_modules/unist-util-visit-parents": { + "node_modules/@mintlify/prebuild/node_modules/unist-util-visit-parents": { "version": "5.1.3", "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", @@ -1879,448 +2274,128 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/@mintlify/scraping": { - "version": "4.0.522", - "resolved": "https://registry.npmjs.org/@mintlify/scraping/-/scraping-4.0.522.tgz", - "integrity": "sha512-PL2k52WT5S5OAgnT2K13bP7J2El6XwiVvQlrLvxDYw5KMMV+y34YVJI8ZscKb4trjitWDgyK0UTq2KN6NQgn6g==", + "node_modules/@mintlify/previewing": { + "version": "4.0.960", + "resolved": "https://registry.npmjs.org/@mintlify/previewing/-/previewing-4.0.960.tgz", + "integrity": "sha512-HillgS4ROcm1jijEiVytV457pGcKkOQvAyfc5u33DSFuk7Q0TDj9IZnU75ivm51V89j2L/TZ5KaBawOTGh8N3w==", "license": "Elastic-2.0", "dependencies": { - "@mintlify/common": "1.0.661", - "@mintlify/openapi-parser": "^0.0.8", - "fs-extra": "11.1.1", - "hast-util-to-mdast": "10.1.0", - "js-yaml": "4.1.0", - "mdast-util-mdx-jsx": "3.1.3", - "neotraverse": "0.6.18", - "puppeteer": "22.14.0", - "rehype-parse": "9.0.1", - "remark-gfm": "4.0.0", - "remark-mdx": "3.0.1", - "remark-parse": "11.0.0", - "remark-stringify": "11.0.0", - "unified": "11.0.5", - "unist-util-visit": "5.0.0", - "yargs": "17.7.1", - "zod": "3.21.4" - }, - "bin": { - "mintlify-scrape": "bin/cli.js" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/@mintlify/scraping/node_modules/@floating-ui/react-dom": { - "version": "2.1.7", - "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.7.tgz", - "integrity": "sha512-0tLRojf/1Go2JgEVm+3Frg9A3IW8bJgKgdO0BN5RkF//ufuz2joZM63Npau2ff3J6lUVYgDSNzNkR+aH3IVfjg==", - "license": "MIT", - "dependencies": { - "@floating-ui/dom": "^1.7.5" - }, - "peerDependencies": { - "react": ">=16.8.0", - "react-dom": ">=16.8.0" - } - }, - "node_modules/@mintlify/scraping/node_modules/@mintlify/common": { - "version": "1.0.661", - "resolved": "https://registry.npmjs.org/@mintlify/common/-/common-1.0.661.tgz", - "integrity": "sha512-/Hdiblzaomp+AWStQ4smhVMgesQhffzQjC9aYBnmLReNdh2Js+ccQFUaWL3TNIxwiS2esaZvsHSV/D+zyRS3hg==", - "license": "ISC", - "dependencies": { - "@asyncapi/parser": "3.4.0", - "@mintlify/mdx": "^3.0.4", - "@mintlify/models": "0.0.255", - "@mintlify/openapi-parser": "^0.0.8", - "@mintlify/validation": "0.1.555", - "@sindresorhus/slugify": "2.2.0", - "@types/mdast": "4.0.4", - "acorn": "8.11.2", - "acorn-jsx": "5.3.2", - "color-blend": "4.0.0", - "estree-util-to-js": "2.0.0", - "estree-walker": "3.0.3", + "@mintlify/common": "1.0.765", + "@mintlify/prebuild": "1.0.902", + "@mintlify/validation": "0.1.616", + "better-opn": "3.0.2", + "chalk": "5.2.0", + "chokidar": "3.5.3", + "express": "4.18.2", "front-matter": "4.0.2", - "hast-util-from-html": "2.0.3", - "hast-util-to-html": "9.0.4", - "hast-util-to-text": "4.0.2", - "hex-rgb": "5.0.0", - "ignore": "7.0.5", + "fs-extra": "11.1.0", + "got": "13.0.0", + "ink": "6.3.0", + "ink-spinner": "5.0.0", + "is-online": "10.0.0", "js-yaml": "4.1.0", - "lodash": "4.17.21", - "mdast-util-from-markdown": "2.0.2", - "mdast-util-gfm": "3.0.0", - "mdast-util-mdx": "3.0.0", - "mdast-util-mdx-jsx": "3.1.3", - "micromark-extension-gfm": "3.0.0", - "micromark-extension-mdx-jsx": "3.0.1", - "micromark-extension-mdxjs": "3.0.0", "openapi-types": "12.1.3", - "postcss": "8.5.6", - "rehype-stringify": "10.0.1", - "remark": "15.0.1", - "remark-frontmatter": "5.0.0", - "remark-gfm": "4.0.0", - "remark-math": "6.0.0", - "remark-mdx": "3.1.0", - "remark-parse": "11.0.0", - "remark-rehype": "11.1.1", - "remark-stringify": "11.0.0", - "tailwindcss": "3.4.4", - "unified": "11.0.5", - "unist-builder": "4.0.0", - "unist-util-map": "4.0.0", - "unist-util-remove": "4.0.0", - "unist-util-remove-position": "5.0.0", - "unist-util-visit": "5.0.0", - "unist-util-visit-parents": "6.0.1", - "vfile": "6.0.3" - } - }, - "node_modules/@mintlify/scraping/node_modules/@mintlify/common/node_modules/remark-mdx": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-3.1.0.tgz", - "integrity": "sha512-Ngl/H3YXyBV9RcRNdlYsZujAmhsxwzxpDzpDEhFBVAGthS4GDgnctpDjgFl/ULx5UEDzqtW1cyBSNKqYYrqLBA==", - "license": "MIT", - "dependencies": { - "mdast-util-mdx": "^3.0.0", - "micromark-extension-mdxjs": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@mintlify/scraping/node_modules/@mintlify/mdx": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@mintlify/mdx/-/mdx-3.0.4.tgz", - "integrity": "sha512-tJhdpnM5ReJLNJ2fuDRIEr0zgVd6id7/oAIfs26V46QlygiLsc8qx4Rz3LWIX51rUXW/cfakjj0EATxIciIw+g==", - "license": "MIT", - "dependencies": { - "@shikijs/transformers": "^3.11.0", - "@shikijs/twoslash": "^3.12.2", - "arktype": "^2.1.26", - "hast-util-to-string": "^3.0.1", - "mdast-util-from-markdown": "^2.0.2", - "mdast-util-gfm": "^3.1.0", - "mdast-util-mdx-jsx": "^3.2.0", - "mdast-util-to-hast": "^13.2.0", - "next-mdx-remote-client": "^1.0.3", - "rehype-katex": "^7.0.1", - "remark-gfm": "^4.0.0", - "remark-math": "^6.0.0", - "remark-smartypants": "^3.0.2", - "shiki": "^3.11.0", - "unified": "^11.0.0", - "unist-util-visit": "^5.0.0" - }, - "peerDependencies": { - "@radix-ui/react-popover": "^1.1.15", - "react": "^18.3.1", - "react-dom": "^18.3.1" - } - }, - "node_modules/@mintlify/scraping/node_modules/@mintlify/mdx/node_modules/mdast-util-gfm": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-3.1.0.tgz", - "integrity": "sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==", - "license": "MIT", - "dependencies": { - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-gfm-autolink-literal": "^2.0.0", - "mdast-util-gfm-footnote": "^2.0.0", - "mdast-util-gfm-strikethrough": "^2.0.0", - "mdast-util-gfm-table": "^2.0.0", - "mdast-util-gfm-task-list-item": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@mintlify/scraping/node_modules/@mintlify/mdx/node_modules/mdast-util-mdx-jsx": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-3.2.0.tgz", - "integrity": "sha512-lj/z8v0r6ZtsN/cGNNtemmmfoLAFZnjMbNyLzBafjzikOM+glrjNHPlf6lQDOTccj9n5b0PPihEBbhneMyGs1Q==", - "license": "MIT", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "@types/hast": "^3.0.0", - "@types/mdast": "^4.0.0", - "@types/unist": "^3.0.0", - "ccount": "^2.0.0", - "devlop": "^1.1.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0", - "parse-entities": "^4.0.0", - "stringify-entities": "^4.0.0", - "unist-util-stringify-position": "^4.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@mintlify/scraping/node_modules/@mintlify/models": { - "version": "0.0.255", - "resolved": "https://registry.npmjs.org/@mintlify/models/-/models-0.0.255.tgz", - "integrity": "sha512-LIUkfA7l7ypHAAuOW74ZJws/NwNRqlDRD/U466jarXvvSlGhJec/6J4/I+IEcBvWDnc9anLFKmnGO04jPKgAsg==", - "license": "Elastic-2.0", - "dependencies": { - "axios": "1.10.0", - "openapi-types": "12.1.3" + "react": "19.2.3", + "socket.io": "4.7.2", + "tar": "6.1.15", + "unist-util-visit": "4.1.2", + "yargs": "17.7.1" }, "engines": { "node": ">=18.0.0" } }, - "node_modules/@mintlify/scraping/node_modules/@mintlify/validation": { - "version": "0.1.555", - "resolved": "https://registry.npmjs.org/@mintlify/validation/-/validation-0.1.555.tgz", - "integrity": "sha512-11QVUReL4N5u8wSCgZt4RN7PA0jYQoMEBZ5IrUp5pgb5ZJBOoGV/vPsQrxPPa1cxsUDAuToNhtGxRQtOav/w8w==", - "license": "Elastic-2.0", - "dependencies": { - "@mintlify/mdx": "^3.0.4", - "@mintlify/models": "0.0.255", - "arktype": "2.1.27", - "js-yaml": "4.1.0", - "lcm": "0.0.3", - "lodash": "4.17.21", - "object-hash": "3.0.0", - "openapi-types": "12.1.3", - "uuid": "11.1.0", - "zod": "3.21.4", - "zod-to-json-schema": "3.20.4" - } - }, - "node_modules/@mintlify/scraping/node_modules/@radix-ui/react-arrow": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.1.7.tgz", - "integrity": "sha512-F+M1tLhO+mlQaOWspE8Wstg+z6PwxwRd8oQ8IXceWz92kfAmalTRf0EjrouQeo7QssEPfCn05B4Ihs1K9WQ/7w==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-primitive": "2.1.3" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@mintlify/scraping/node_modules/@radix-ui/react-dismissable-layer": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.11.tgz", - "integrity": "sha512-Nqcp+t5cTB8BinFkZgXiMJniQH0PsUt2k51FUhbdfeKvc4ACcG2uQniY/8+h1Yv6Kza4Q7lD7PQV0z0oicE0Mg==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-callback-ref": "1.1.1", - "@radix-ui/react-use-escape-keydown": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@mintlify/scraping/node_modules/@radix-ui/react-focus-scope": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.1.7.tgz", - "integrity": "sha512-t2ODlkXBQyn7jkl6TNaw/MtVEVvIGelJDCG41Okq/KwUsJBwQ4XVZsHAVUkK4mBv3ewiAS3PGuUWuY2BoK4ZUw==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-callback-ref": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@mintlify/scraping/node_modules/@radix-ui/react-popover": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/@radix-ui/react-popover/-/react-popover-1.1.15.tgz", - "integrity": "sha512-kr0X2+6Yy/vJzLYJUPCZEc8SfQcf+1COFoAqauJm74umQhta9M7lNJHP7QQS3vkvcGLQUbWpMzwrXYwrYztHKA==", - "license": "MIT", - "peer": true, - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-dismissable-layer": "1.1.11", - "@radix-ui/react-focus-guards": "1.1.3", - "@radix-ui/react-focus-scope": "1.1.7", - "@radix-ui/react-id": "1.1.1", - "@radix-ui/react-popper": "1.2.8", - "@radix-ui/react-portal": "1.1.9", - "@radix-ui/react-presence": "1.1.5", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-slot": "1.2.3", - "@radix-ui/react-use-controllable-state": "1.2.2", - "aria-hidden": "^1.2.4", - "react-remove-scroll": "^2.6.3" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } + "node_modules/@mintlify/previewing/node_modules/@types/unist": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz", + "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==", + "license": "MIT" }, - "node_modules/@mintlify/scraping/node_modules/@radix-ui/react-popper": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.2.8.tgz", - "integrity": "sha512-0NJQ4LFFUuWkE7Oxf0htBKS6zLkkjBH+hM1uk7Ng705ReR8m/uelduy1DBo0PyBXPKVnBA6YBlU94MBGXrSBCw==", - "license": "MIT", - "dependencies": { - "@floating-ui/react-dom": "^2.0.0", - "@radix-ui/react-arrow": "1.1.7", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-callback-ref": "1.1.1", - "@radix-ui/react-use-layout-effect": "1.1.1", - "@radix-ui/react-use-rect": "1.1.1", - "@radix-ui/react-use-size": "1.1.1", - "@radix-ui/rect": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + "node_modules/@mintlify/previewing/node_modules/fs-extra": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.0.tgz", + "integrity": "sha512-0rcTq621PD5jM/e0a3EJoGC/1TC5ZBCERW82LQuwfGnCa1V8w7dpYH1yNu+SLb6E5dkeCBzKEyLGlFrnr+dUyw==", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } + "engines": { + "node": ">=14.14" } }, - "node_modules/@mintlify/scraping/node_modules/@radix-ui/react-portal": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.1.9.tgz", - "integrity": "sha512-bpIxvq03if6UNwXZ+HTK71JLh4APvnXntDc6XOX8UVq4XQOVl7lwok0AvIl+b8zgCw3fSaVTZMpAPPagXbKmHQ==", + "node_modules/@mintlify/previewing/node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", "license": "MIT", "dependencies": { - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-layout-effect": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + "@types/unist": "^2.0.0" }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/@mintlify/scraping/node_modules/@radix-ui/react-presence": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.1.5.tgz", - "integrity": "sha512-/jfEwNDdQVBCNvjkGit4h6pMOzq8bHkopq458dPt2lMjx+eBQUohZNG9A7DtO/O5ukSbxuaNGXMjHicgwy6rQQ==", + "node_modules/@mintlify/previewing/node_modules/unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", "license": "MIT", "dependencies": { - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-use-layout-effect": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/@mintlify/scraping/node_modules/@radix-ui/react-primitive": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", - "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "node_modules/@mintlify/previewing/node_modules/unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", "license": "MIT", "dependencies": { - "@radix-ui/react-slot": "1.2.3" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/@mintlify/scraping/node_modules/axios": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.10.0.tgz", - "integrity": "sha512-/1xYAC4MP/HEG+3duIhFr4ZQXR4sQXOIe+o6sdqzeykGLx6Upp/1p8MHqhINOvGeP7xyNHe7tsiJByc4SSVUxw==", - "license": "MIT", + "node_modules/@mintlify/scraping": { + "version": "4.0.627", + "resolved": "https://registry.npmjs.org/@mintlify/scraping/-/scraping-4.0.627.tgz", + "integrity": "sha512-RrBMFfTVyNXVuB+cHbA6KTkbgOG2IKyCe+Pozki5FAP0qBXwFU35v52ynrWMUkv8VZVWrlvRK/IH70zsu+6j7A==", + "license": "Elastic-2.0", "dependencies": { - "follow-redirects": "^1.15.6", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" + "@mintlify/common": "1.0.765", + "@mintlify/openapi-parser": "^0.0.8", + "fs-extra": "11.1.1", + "hast-util-to-mdast": "10.1.0", + "js-yaml": "4.1.0", + "mdast-util-mdx-jsx": "3.1.3", + "neotraverse": "0.6.18", + "puppeteer": "22.14.0", + "rehype-parse": "9.0.1", + "remark-gfm": "4.0.0", + "remark-mdx": "3.0.1", + "remark-parse": "11.0.0", + "remark-stringify": "11.0.0", + "unified": "11.0.5", + "unist-util-visit": "5.0.0", + "yargs": "17.7.1", + "zod": "3.24.0" + }, + "bin": { + "mintlify-scrape": "bin/cli.js" + }, + "engines": { + "node": ">=18.0.0" } }, "node_modules/@mintlify/scraping/node_modules/fs-extra": { @@ -2361,55 +2436,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/@mintlify/scraping/node_modules/next-mdx-remote-client": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/next-mdx-remote-client/-/next-mdx-remote-client-1.1.4.tgz", - "integrity": "sha512-psCMdO50tfoT1kAH7OGXZvhyRfiHVK6IqwjmWFV5gtLo4dnqjAgcjcLNeJ92iI26UNlKShxYrBs1GQ6UXxk97A==", - "license": "MPL 2.0", - "dependencies": { - "@babel/code-frame": "^7.27.1", - "@mdx-js/mdx": "^3.1.1", - "@mdx-js/react": "^3.1.1", - "remark-mdx-remove-esm": "^1.2.1", - "serialize-error": "^12.0.0", - "vfile": "^6.0.3", - "vfile-matter": "^5.0.1" - }, - "engines": { - "node": ">=18.18.0" - }, - "peerDependencies": { - "react": ">= 18.3.0 < 19.0.0", - "react-dom": ">= 18.3.0 < 19.0.0" - } - }, - "node_modules/@mintlify/scraping/node_modules/react": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", - "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", - "license": "MIT", - "peer": true, - "dependencies": { - "loose-envify": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@mintlify/scraping/node_modules/react-dom": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", - "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", - "license": "MIT", - "peer": true, - "dependencies": { - "loose-envify": "^1.1.0", - "scheduler": "^0.23.2" - }, - "peerDependencies": { - "react": "^18.3.1" - } - }, "node_modules/@mintlify/scraping/node_modules/remark-mdx": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-3.0.1.tgz", @@ -2424,23 +2450,14 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/@mintlify/scraping/node_modules/scheduler": { - "version": "0.23.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", - "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.1.0" - } - }, "node_modules/@mintlify/validation": { - "version": "0.1.591", - "resolved": "https://registry.npmjs.org/@mintlify/validation/-/validation-0.1.591.tgz", - "integrity": "sha512-r4wov4ie5I5enTgr7YjDQ50mertHFuR+0s4TOfpkNvwxA6ogdLwaeu5U/gwh8ph0e5XxCkEuGfSQ6bvx1oVsNg==", + "version": "0.1.616", + "resolved": "https://registry.npmjs.org/@mintlify/validation/-/validation-0.1.616.tgz", + "integrity": "sha512-80zqvYzBKzYkdB/Xjf3jg1WX+CAthWO7UOcm18W7VeBI8zymUXkOSTTdSulIz0jYAjoSTg3e4oWgUZencJeHpg==", "license": "Elastic-2.0", "dependencies": { "@mintlify/mdx": "^3.0.4", - "@mintlify/models": "0.0.271", + "@mintlify/models": "0.0.279", "arktype": "2.1.27", "js-yaml": "4.1.0", "lcm": "0.0.3", @@ -2730,21 +2747,21 @@ } }, "node_modules/@mintlify/validation/node_modules/next-mdx-remote-client": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/next-mdx-remote-client/-/next-mdx-remote-client-1.1.4.tgz", - "integrity": "sha512-psCMdO50tfoT1kAH7OGXZvhyRfiHVK6IqwjmWFV5gtLo4dnqjAgcjcLNeJ92iI26UNlKShxYrBs1GQ6UXxk97A==", + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/next-mdx-remote-client/-/next-mdx-remote-client-1.1.6.tgz", + "integrity": "sha512-O4HIpi44d6SismhfG5W78aTUfgxfbsj6FgoM4/G3o4Vtcobt0Ej439IiDPkv+IqsmtouVYG1tGAsz1DIuj9Tfg==", "license": "MPL 2.0", "dependencies": { - "@babel/code-frame": "^7.27.1", + "@babel/code-frame": "^7.29.0", "@mdx-js/mdx": "^3.1.1", "@mdx-js/react": "^3.1.1", - "remark-mdx-remove-esm": "^1.2.1", - "serialize-error": "^12.0.0", + "remark-mdx-remove-esm": "^1.2.3", + "serialize-error": "^13.0.1", "vfile": "^6.0.3", "vfile-matter": "^5.0.1" }, "engines": { - "node": ">=18.18.0" + "node": ">=20.9.0" }, "peerDependencies": { "react": ">= 18.3.0 < 19.0.0", @@ -2787,15 +2804,6 @@ "loose-envify": "^1.1.0" } }, - "node_modules/@mintlify/validation/node_modules/zod": { - "version": "3.24.0", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.0.tgz", - "integrity": "sha512-Hz+wiY8yD0VLA2k/+nsg2Abez674dDGTai33SwNvMPuf9uIrBC9eFgIMQxBBbHFxVXi8W+5nX9DcAh9YNSQm/w==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/colinhacks" - } - }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -3145,12 +3153,12 @@ "license": "MIT" }, "node_modules/@shikijs/core": { - "version": "3.22.0", - "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-3.22.0.tgz", - "integrity": "sha512-iAlTtSDDbJiRpvgL5ugKEATDtHdUVkqgHDm/gbD2ZS9c88mx7G1zSYjjOxp5Qa0eaW0MAQosFRmJSk354PRoQA==", + "version": "3.23.0", + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-3.23.0.tgz", + "integrity": "sha512-NSWQz0riNb67xthdm5br6lAkvpDJRTgB36fxlo37ZzM2yq0PQFFzbd8psqC2XMPgCzo1fW6cVi18+ArJ44wqgA==", "license": "MIT", "dependencies": { - "@shikijs/types": "3.22.0", + "@shikijs/types": "3.23.0", "@shikijs/vscode-textmate": "^10.0.2", "@types/hast": "^3.0.4", "hast-util-to-html": "^9.0.5" @@ -3180,62 +3188,62 @@ } }, "node_modules/@shikijs/engine-javascript": { - "version": "3.22.0", - "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-3.22.0.tgz", - "integrity": "sha512-jdKhfgW9CRtj3Tor0L7+yPwdG3CgP7W+ZEqSsojrMzCjD1e0IxIbwUMDDpYlVBlC08TACg4puwFGkZfLS+56Tw==", + "version": "3.23.0", + "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-3.23.0.tgz", + "integrity": "sha512-aHt9eiGFobmWR5uqJUViySI1bHMqrAgamWE1TYSUoftkAeCCAiGawPMwM+VCadylQtF4V3VNOZ5LmfItH5f3yA==", "license": "MIT", "dependencies": { - "@shikijs/types": "3.22.0", + "@shikijs/types": "3.23.0", "@shikijs/vscode-textmate": "^10.0.2", "oniguruma-to-es": "^4.3.4" } }, "node_modules/@shikijs/engine-oniguruma": { - "version": "3.22.0", - "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-3.22.0.tgz", - "integrity": "sha512-DyXsOG0vGtNtl7ygvabHd7Mt5EY8gCNqR9Y7Lpbbd/PbJvgWrqaKzH1JW6H6qFkuUa8aCxoiYVv8/YfFljiQxA==", + "version": "3.23.0", + "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-3.23.0.tgz", + "integrity": "sha512-1nWINwKXxKKLqPibT5f4pAFLej9oZzQTsby8942OTlsJzOBZ0MWKiwzMsd+jhzu8YPCHAswGnnN1YtQfirL35g==", "license": "MIT", "dependencies": { - "@shikijs/types": "3.22.0", + "@shikijs/types": "3.23.0", "@shikijs/vscode-textmate": "^10.0.2" } }, "node_modules/@shikijs/langs": { - "version": "3.22.0", - "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-3.22.0.tgz", - "integrity": "sha512-x/42TfhWmp6H00T6uwVrdTJGKgNdFbrEdhaDwSR5fd5zhQ1Q46bHq9EO61SCEWJR0HY7z2HNDMaBZp8JRmKiIA==", + "version": "3.23.0", + "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-3.23.0.tgz", + "integrity": "sha512-2Ep4W3Re5aB1/62RSYQInK9mM3HsLeB91cHqznAJMuylqjzNVAVCMnNWRHFtcNHXsoNRayP9z1qj4Sq3nMqYXg==", "license": "MIT", "dependencies": { - "@shikijs/types": "3.22.0" + "@shikijs/types": "3.23.0" } }, "node_modules/@shikijs/themes": { - "version": "3.22.0", - "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-3.22.0.tgz", - "integrity": "sha512-o+tlOKqsr6FE4+mYJG08tfCFDS+3CG20HbldXeVoyP+cYSUxDhrFf3GPjE60U55iOkkjbpY2uC3It/eeja35/g==", + "version": "3.23.0", + "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-3.23.0.tgz", + "integrity": "sha512-5qySYa1ZgAT18HR/ypENL9cUSGOeI2x+4IvYJu4JgVJdizn6kG4ia5Q1jDEOi7gTbN4RbuYtmHh0W3eccOrjMA==", "license": "MIT", "dependencies": { - "@shikijs/types": "3.22.0" + "@shikijs/types": "3.23.0" } }, "node_modules/@shikijs/transformers": { - "version": "3.22.0", - "resolved": "https://registry.npmjs.org/@shikijs/transformers/-/transformers-3.22.0.tgz", - "integrity": "sha512-E7eRV7mwDBjueLF6852n2oYeJYxBq3NSsDk+uyruYAXONv4U8holGmIrT+mPRJQ1J1SNOH6L8G19KRzmBawrFw==", + "version": "3.23.0", + "resolved": "https://registry.npmjs.org/@shikijs/transformers/-/transformers-3.23.0.tgz", + "integrity": "sha512-F9msZVxdF+krQNSdQ4V+Ja5QemeAoTQ2jxt7nJCwhDsdF1JWS3KxIQXA3lQbyKwS3J61oHRUSv4jYWv3CkaKTQ==", "license": "MIT", "dependencies": { - "@shikijs/core": "3.22.0", - "@shikijs/types": "3.22.0" + "@shikijs/core": "3.23.0", + "@shikijs/types": "3.23.0" } }, "node_modules/@shikijs/twoslash": { - "version": "3.22.0", - "resolved": "https://registry.npmjs.org/@shikijs/twoslash/-/twoslash-3.22.0.tgz", - "integrity": "sha512-GO27UPN+kegOMQvC+4XcLt0Mttyg+n16XKjmoKjdaNZoW+sOJV7FLdv2QKauqUDws6nE3EQPD+TFHEdyyoUBDw==", + "version": "3.23.0", + "resolved": "https://registry.npmjs.org/@shikijs/twoslash/-/twoslash-3.23.0.tgz", + "integrity": "sha512-pNaLJWMA3LU7PhT8tm9OQBZ1epy0jmdgeJzntBtr1EVXLbHxGzTj3mnf9vOdcl84l96qnlJXkJ/NGXZYBpXl5g==", "license": "MIT", "dependencies": { - "@shikijs/core": "3.22.0", - "@shikijs/types": "3.22.0", + "@shikijs/core": "3.23.0", + "@shikijs/types": "3.23.0", "twoslash": "^0.3.6" }, "peerDependencies": { @@ -3243,9 +3251,9 @@ } }, "node_modules/@shikijs/types": { - "version": "3.22.0", - "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-3.22.0.tgz", - "integrity": "sha512-491iAekgKDBFE67z70Ok5a8KBMsQ2IJwOWw3us/7ffQkIBCyOQfm/aNwVMBUriP02QshIfgHCBSIYAl3u2eWjg==", + "version": "3.23.0", + "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-3.23.0.tgz", + "integrity": "sha512-3JZ5HXOZfYjsYSk0yPwBrkupyYSLpAE26Qc0HLghhZNGTZg/SKxXIIgoxOpmmeQP0RRSDJTk1/vPfw9tbw+jSQ==", "license": "MIT", "dependencies": { "@shikijs/vscode-textmate": "^10.0.2", @@ -3799,19 +3807,19 @@ } }, "node_modules/@types/node": { - "version": "25.2.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-25.2.3.tgz", - "integrity": "sha512-m0jEgYlYz+mDJZ2+F4v8D1AyQb+QzsNqRuI7xg1VQX/KlKS0qT9r1Mo16yo5F/MtifXFgaofIFsdFMox2SxIbQ==", + "version": "25.3.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-25.3.3.tgz", + "integrity": "sha512-DpzbrH7wIcBaJibpKo9nnSQL0MTRdnWttGyE5haGwK86xgMOkFLp7vEyfQPGLOJh5wNYiJ3V9PmUMDhV9u8kkQ==", "license": "MIT", "peer": true, "dependencies": { - "undici-types": "~7.16.0" + "undici-types": "~7.18.0" } }, "node_modules/@types/react": { - "version": "19.2.13", - "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.13.tgz", - "integrity": "sha512-KkiJeU6VbYbUOp5ITMIc7kBfqlYkKA5KhEHVrGMmUUMt7NeaZg65ojdPk+FtNrBAOXNVM5QM72jnADjM+XVRAQ==", + "version": "19.2.14", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.14.tgz", + "integrity": "sha512-ilcTH/UniCkMdtexkoCN0bI7pMcJDvmQFPvuPvmEaYA/NSfFTAgdUSLAoVjaRJm7+6PvcM+q1zYOwS4wTYMF9w==", "license": "MIT", "peer": true, "dependencies": { @@ -3841,12 +3849,12 @@ } }, "node_modules/@typescript/vfs": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/@typescript/vfs/-/vfs-1.6.2.tgz", - "integrity": "sha512-hoBwJwcbKHmvd2QVebiytN1aELvpk9B74B4L1mFm/XT1Q/VOYAWl2vQ9AWRFtQq8zmz6enTpfTV8WRc4ATjW/g==", + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/@typescript/vfs/-/vfs-1.6.4.tgz", + "integrity": "sha512-PJFXFS4ZJKiJ9Qiuix6Dz/OwEIqHD7Dme1UwZhTK11vR+5dqW2ACbdndWQexBzCx+CPuMe5WBYQWCsFyGlQLlQ==", "license": "MIT", "dependencies": { - "debug": "^4.1.1" + "debug": "^4.4.3" }, "peerDependencies": { "typescript": "*" @@ -3949,9 +3957,9 @@ } }, "node_modules/ajv": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", - "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.18.0.tgz", + "integrity": "sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==", "license": "MIT", "peer": true, "dependencies": { @@ -4256,9 +4264,9 @@ } }, "node_modules/b4a": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.7.3.tgz", - "integrity": "sha512-5Q2mfq2WfGuFp3uS//0s6baOJLMoVduPYVeNmDYxu5OUA1/cBfvr2RIS7vi62LdNj/urk1hfmj867I3qt6uZ7Q==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.8.0.tgz", + "integrity": "sha512-qRuSmNSkGQaHwNbM7J78Wwy+ghLEYF1zNrSeMxj4Kgw6y33O3mXcQ6Ie9fRvfU/YnxWkOchPXbaLb73TkIsfdg==", "license": "Apache-2.0", "peerDependencies": { "react-native-b4a": "*" @@ -4300,11 +4308,10 @@ } }, "node_modules/bare-fs": { - "version": "4.5.3", - "resolved": "https://registry.npmjs.org/bare-fs/-/bare-fs-4.5.3.tgz", - "integrity": "sha512-9+kwVx8QYvt3hPWnmb19tPnh38c6Nihz8Lx3t0g9+4GoIf3/fTgYwM4Z6NxgI+B9elLQA7mLE9PpqcWtOMRDiQ==", + "version": "4.5.5", + "resolved": "https://registry.npmjs.org/bare-fs/-/bare-fs-4.5.5.tgz", + "integrity": "sha512-XvwYM6VZqKoqDll8BmSww5luA5eflDzY0uEFfBJtFKe4PAAtxBjU3YIxzIBzhyaEQBy1VXEQBto4cpN5RZJw+w==", "license": "Apache-2.0", - "optional": true, "dependencies": { "bare-events": "^2.5.4", "bare-path": "^3.0.0", @@ -4325,11 +4332,10 @@ } }, "node_modules/bare-os": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/bare-os/-/bare-os-3.6.2.tgz", - "integrity": "sha512-T+V1+1srU2qYNBmJCXZkUY5vQ0B4FSlL3QDROnKQYOqeiQR8UbjNHlPa+TIbM4cuidiN9GaTaOZgSEgsvPbh5A==", + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/bare-os/-/bare-os-3.7.0.tgz", + "integrity": "sha512-64Rcwj8qlnTZU8Ps6JJEdSmxBEUGgI7g8l+lMtsJLl4IsfTcHMTfJ188u2iGV6P6YPRZrtv72B2kjn+hp+Yv3g==", "license": "Apache-2.0", - "optional": true, "engines": { "bare": ">=1.14.0" } @@ -4339,19 +4345,18 @@ "resolved": "https://registry.npmjs.org/bare-path/-/bare-path-3.0.0.tgz", "integrity": "sha512-tyfW2cQcB5NN8Saijrhqn0Zh7AnFNsnczRcuWODH0eYAXBsJ5gVxAUuNr7tsHSC6IZ77cA0SitzT+s47kot8Mw==", "license": "Apache-2.0", - "optional": true, "dependencies": { "bare-os": "^3.0.1" } }, "node_modules/bare-stream": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/bare-stream/-/bare-stream-2.7.0.tgz", - "integrity": "sha512-oyXQNicV1y8nc2aKffH+BUHFRXmx6VrPzlnaEvMhram0nPBrKcEdcyBg5r08D0i8VxngHFAiVyn1QKXpSG0B8A==", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/bare-stream/-/bare-stream-2.8.0.tgz", + "integrity": "sha512-reUN0M2sHRqCdG4lUK3Fw8w98eeUIZHL5c3H7Mbhk2yVBL+oofgaIp0ieLfD5QXwPCypBpmEEKU2WZKzbAk8GA==", "license": "Apache-2.0", - "optional": true, "dependencies": { - "streamx": "^2.21.0" + "streamx": "^2.21.0", + "teex": "^1.0.1" }, "peerDependencies": { "bare-buffer": "*", @@ -4371,7 +4376,6 @@ "resolved": "https://registry.npmjs.org/bare-url/-/bare-url-2.3.2.tgz", "integrity": "sha512-ZMq4gd9ngV5aTMa5p9+UfY0b3skwhHELaDkhEHetMdX0LRkW9kzaym4oo/Eh+Ghm0CCDuMTsRIGM/ytUc1ZYmw==", "license": "Apache-2.0", - "optional": true, "dependencies": { "bare-path": "^3.0.0" } @@ -4406,9 +4410,9 @@ } }, "node_modules/basic-ftp": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.1.0.tgz", - "integrity": "sha512-RkaJzeJKDbaDWTIPiJwubyljaEPwpVWkm9Rt5h9Nd6h7tEXTJ3VB4qxdZBioV7JO5yLUaOKwz7vDOzlncUsegw==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.2.0.tgz", + "integrity": "sha512-VoMINM2rqJwJgfdHq6RiUudKt2BV+FY5ZFezP/ypmwayk68+NzzAQy4XXLlqsGD4MCzq3DrmNFD/uUmBJuGoXw==", "license": "MIT", "engines": { "node": ">=10.0.0" @@ -5184,6 +5188,12 @@ "node": ">=4" } }, + "node_modules/cssfilter": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/cssfilter/-/cssfilter-0.0.10.tgz", + "integrity": "sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw==", + "license": "MIT" + }, "node_modules/csstype": { "version": "3.2.3", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", @@ -5847,9 +5857,9 @@ } }, "node_modules/es-toolkit": { - "version": "1.44.0", - "resolved": "https://registry.npmjs.org/es-toolkit/-/es-toolkit-1.44.0.tgz", - "integrity": "sha512-6penXeZalaV88MM3cGkFZZfOoLGWshWWfdy0tWw/RlVVyhvMaWSBTOvXNeiW3e5FwdS5ePW0LGEu17zT139ktg==", + "version": "1.45.0", + "resolved": "https://registry.npmjs.org/es-toolkit/-/es-toolkit-1.45.0.tgz", + "integrity": "sha512-RArCX+Zea16+R1jg4mH223Z8p/ivbJjIkU3oC6ld2bdUfmDxiCkFYSi9zLOR2anucWJUeH4Djnzgd0im0nD3dw==", "license": "MIT", "workspaces": [ "docs", @@ -6565,9 +6575,9 @@ } }, "node_modules/get-east-asian-width": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.4.0.tgz", - "integrity": "sha512-QZjmEOC+IT1uk6Rx0sX22V6uHWVwbdbxf1faPqJ1QhLdGgsRGCZoyaQBm/piRdJy/D2um6hM1UP7ZEeQ4EkP+Q==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.5.0.tgz", + "integrity": "sha512-CQ+bEO+Tva/qlmw24dCejulK5pMzVnUOFOijVogd3KQs07HnRIgp8TGipvCCRT06xeYEbpbgwaCxglFyiuIcmA==", "license": "MIT", "engines": { "node": ">=18" @@ -8161,9 +8171,9 @@ } }, "node_modules/jsonpath-plus": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-10.3.0.tgz", - "integrity": "sha512-8TNmfeTCk2Le33A3vRRwtuworG/L5RrgMvdjhKZxvyShO+mBu2fP50OWUjRLNtvw344DdDarFh9buFAZs5ujeA==", + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-10.4.0.tgz", + "integrity": "sha512-T92WWatJXmhBbKsgH/0hl+jxjdXrifi5IKeMY02DWggRxX0UElcbVzPlmgLTbvsPeW1PasQ6xE2Q75stkhGbsA==", "license": "MIT", "dependencies": { "@jsep-plugin/assignment": "^1.3.0", @@ -8188,9 +8198,9 @@ } }, "node_modules/katex": { - "version": "0.16.28", - "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.28.tgz", - "integrity": "sha512-YHzO7721WbmAL6Ov1uzN/l5mY5WWWhJBSW+jq4tkfZfsxmo1hu6frS0EOswvjBUnWE6NtjEs48SFn5CQESRLZg==", + "version": "0.16.33", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.33.tgz", + "integrity": "sha512-q3N5u+1sY9Bu7T4nlXoiRBXWfwSefNGoKeOwekV+gw0cAXQlz2Ww6BLcmBxVDeXBMUDQv6fK5bcNaJLxob3ZQA==", "funding": [ "https://opencollective.com/katex", "https://github.com/sponsors/katex" @@ -9558,15 +9568,14 @@ } }, "node_modules/mintlify": { - "version": "4.2.340", - "resolved": "https://registry.npmjs.org/mintlify/-/mintlify-4.2.340.tgz", - "integrity": "sha512-18MS4GF0Zlcr/vZlSuFftjQ9suX6cy9wr4p1vyGKnnYGuiKQcV7layqE4j8r57CinVX+uqjkB1MenTgDxH/iZg==", + "version": "4.2.392", + "resolved": "https://registry.npmjs.org/mintlify/-/mintlify-4.2.392.tgz", + "integrity": "sha512-S0MJRZDIJffuAa8b3UKy1aWvfvaR8IPS68G3PvrPT+bsK/kk4cpmtpqbycpD3a11ktQ/rMhGnNrsTM5PGhy6fA==", "license": "Elastic-2.0", "dependencies": { - "@mintlify/cli": "4.0.944" + "@mintlify/cli": "4.0.995" }, "bin": { - "mint": "index.js", "mintlify": "index.js" }, "engines": { @@ -9714,6 +9723,18 @@ } } }, + "node_modules/non-error": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/non-error/-/non-error-0.1.0.tgz", + "integrity": "sha512-TMB1uHiGsHRGv1uYclfhivcnf0/PdFp2pNqRxXjncaAsjYMoisaQJI+SSZCqRq+VliwRTC8tsMQfmrWjDMhkPQ==", + "license": "MIT", + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -10409,9 +10430,9 @@ } }, "node_modules/pump": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.3.tgz", - "integrity": "sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.4.tgz", + "integrity": "sha512-VS7sjc6KR7e1ukRFhQSY5LM2uBWAUPiOPa/A3mkKmiMwSmRFUITt0xuj+/lesgnCv+dPIEYlkzrcyXgquIHMcA==", "license": "MIT", "dependencies": { "end-of-stream": "^1.1.0", @@ -10962,9 +10983,9 @@ } }, "node_modules/remark-mdx-remove-esm": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/remark-mdx-remove-esm/-/remark-mdx-remove-esm-1.2.2.tgz", - "integrity": "sha512-YSaUwqiuJuD6S9XTAD6zmO4JJJZJgsRAdsl2drZO8/ssAVv0HXAg4vkSgHZAP46ORh8ERPFQrC7JWlbkwBwu1A==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/remark-mdx-remove-esm/-/remark-mdx-remove-esm-1.2.3.tgz", + "integrity": "sha512-n6r36SaE+7cno7pmshWbGzYolDVLxJm5EKuw67+q4SPQT6kelNJHyZAiFYYtOB0axh+/1xF4BC57Ec3jncAGXQ==", "license": "MIT", "dependencies": { "@types/mdast": "^4.0.4", @@ -11331,9 +11352,9 @@ "license": "MIT" }, "node_modules/sax": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.4.tgz", - "integrity": "sha512-1n3r/tGXO6b6VXMdFT54SHzT9ytu9yr7TaELowdYpMqY/Ao7EnlQGmAQ1+RatX7Tkkdm6hONI2owqNx2aZj5Sw==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.5.0.tgz", + "integrity": "sha512-21IYA3Q5cQf089Z6tgaUTr7lDAyzoTPx5HRtbhsME8Udispad8dC/+sziTNugOEx54ilvatQ9YCzl4KQLPcRHA==", "license": "BlueOak-1.0.0", "engines": { "node": ">=11.0.0" @@ -11397,15 +11418,31 @@ "license": "MIT" }, "node_modules/serialize-error": { - "version": "12.0.0", - "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-12.0.0.tgz", - "integrity": "sha512-ZYkZLAvKTKQXWuh5XpBw7CdbSzagarX39WyZ2H07CDLC5/KfsRGlIXV8d4+tfqX1M7916mRqR1QfNHSij+c9Pw==", + "version": "13.0.1", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-13.0.1.tgz", + "integrity": "sha512-bBZaRwLH9PN5HbLCjPId4dP5bNGEtumcErgOX952IsvOhVPrm3/AeK1y0UHA/QaPG701eg0yEnOKsCOC6X/kaA==", "license": "MIT", "dependencies": { - "type-fest": "^4.31.0" + "non-error": "^0.1.0", + "type-fest": "^5.4.1" }, "engines": { - "node": ">=18" + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/serialize-error/node_modules/type-fest": { + "version": "5.4.4", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.4.4.tgz", + "integrity": "sha512-JnTrzGu+zPV3aXIUhnyWJj4z/wigMsdYajGLIYakqyOW1nPllzXEJee0QQbHj+CTIQtXGlAjuK0UY+2xTyjVAw==", + "license": "(MIT OR CC0-1.0)", + "dependencies": { + "tagged-tag": "^1.0.0" + }, + "engines": { + "node": ">=20" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -11529,17 +11566,17 @@ } }, "node_modules/shiki": { - "version": "3.22.0", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-3.22.0.tgz", - "integrity": "sha512-LBnhsoYEe0Eou4e1VgJACes+O6S6QC0w71fCSp5Oya79inkwkm15gQ1UF6VtQ8j/taMDh79hAB49WUk8ALQW3g==", + "version": "3.23.0", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-3.23.0.tgz", + "integrity": "sha512-55Dj73uq9ZXL5zyeRPzHQsK7Nbyt6Y10k5s7OjuFZGMhpp4r/rsLBH0o/0fstIzX1Lep9VxefWljK/SKCzygIA==", "license": "MIT", "dependencies": { - "@shikijs/core": "3.22.0", - "@shikijs/engine-javascript": "3.22.0", - "@shikijs/engine-oniguruma": "3.22.0", - "@shikijs/langs": "3.22.0", - "@shikijs/themes": "3.22.0", - "@shikijs/types": "3.22.0", + "@shikijs/core": "3.23.0", + "@shikijs/engine-javascript": "3.23.0", + "@shikijs/engine-oniguruma": "3.23.0", + "@shikijs/langs": "3.23.0", + "@shikijs/themes": "3.23.0", + "@shikijs/types": "3.23.0", "@shikijs/vscode-textmate": "^10.0.2", "@types/hast": "^3.0.4" } @@ -11964,12 +12001,12 @@ } }, "node_modules/strip-ansi": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz", - "integrity": "sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz", + "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==", "license": "MIT", "dependencies": { - "ansi-regex": "^6.0.1" + "ansi-regex": "^6.2.2" }, "engines": { "node": ">=12" @@ -12039,6 +12076,18 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/tagged-tag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/tagged-tag/-/tagged-tag-1.0.0.tgz", + "integrity": "sha512-yEFYrVhod+hdNyx7g5Bnkkb0G6si8HJurOoOEgC8B/O0uXLHlaey/65KRv6cuWBNhBgHKAROVpc7QyYqE5gFng==", + "license": "MIT", + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/tailwindcss": { "version": "3.4.4", "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.4.tgz", @@ -12121,20 +12170,30 @@ } }, "node_modules/tar-stream": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz", - "integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==", + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.8.tgz", + "integrity": "sha512-U6QpVRyCGHva435KoNWy9PRoi2IFYCgtEhq9nmrPPpbRacPs9IH4aJ3gbrFC8dPcXvdSZ4XXfXT5Fshbp2MtlQ==", "license": "MIT", "dependencies": { "b4a": "^1.6.4", + "bare-fs": "^4.5.5", "fast-fifo": "^1.2.0", "streamx": "^2.15.0" } }, + "node_modules/teex": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/teex/-/teex-1.0.1.tgz", + "integrity": "sha512-eYE6iEI62Ni1H8oIa7KlDU6uQBtqr4Eajni3wX7rpfXD8ysFx8z0+dri+KWEPWpBsxXfxu58x/0jvTVT1ekOSg==", + "license": "MIT", + "dependencies": { + "streamx": "^2.12.5" + } + }, "node_modules/text-decoder": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.3.tgz", - "integrity": "sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.7.tgz", + "integrity": "sha512-vlLytXkeP4xvEq2otHeJfSQIRyWxo/oZGEbXrtEEF9Hnmrdly59sUbzZ/QgyWuLYHctCHxFF4tRQZNQ9k60ExQ==", "license": "Apache-2.0", "dependencies": { "b4a": "^1.6.4" @@ -12449,9 +12508,9 @@ } }, "node_modules/undici-types": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", - "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.18.2.tgz", + "integrity": "sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==", "license": "MIT" }, "node_modules/unified": { @@ -13092,6 +13151,28 @@ "node": ">=4.0" } }, + "node_modules/xss": { + "version": "1.0.15", + "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.15.tgz", + "integrity": "sha512-FVdlVVC67WOIPvfOwhoMETV72f6GbW7aOabBC3WxN/oUdoEMDyLz4OgRv5/gck2ZeNqEQu+Tb0kloovXOfpYVg==", + "license": "MIT", + "dependencies": { + "commander": "^2.20.3", + "cssfilter": "0.0.10" + }, + "bin": { + "xss": "bin/xss" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/xss/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "license": "MIT" + }, "node_modules/y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", @@ -13228,9 +13309,9 @@ "license": "MIT" }, "node_modules/zod": { - "version": "3.21.4", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz", - "integrity": "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==", + "version": "3.24.0", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.0.tgz", + "integrity": "sha512-Hz+wiY8yD0VLA2k/+nsg2Abez674dDGTai33SwNvMPuf9uIrBC9eFgIMQxBBbHFxVXi8W+5nX9DcAh9YNSQm/w==", "license": "MIT", "peer": true, "funding": { diff --git a/package.json b/package.json index e202caf..3e16d45 100644 --- a/package.json +++ b/package.json @@ -4,6 +4,6 @@ "links": "mintlify broken-links" }, "dependencies": { - "mintlify": "^4.2.340" + "mintlify": "^4.2.392" } } diff --git a/quickstart/sdk.mdx b/quickstart/sdk.mdx index bb88769..b55b7f6 100644 --- a/quickstart/sdk.mdx +++ b/quickstart/sdk.mdx @@ -39,7 +39,7 @@ icon: chevrons-right const edgee = new Edgee(process.env.EDGEE_API_KEY); const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: 'What is the capital of France?', }); @@ -54,7 +54,7 @@ icon: chevrons-right edgee = Edgee(api_key=os.environ["EDGEE_API_KEY"]) response = edgee.send( - model="gpt-4o", + model="gpt-5.2", input="What is the capital of France?" ) @@ -76,7 +76,7 @@ icon: chevrons-right client := edgee.NewClient(os.Getenv("EDGEE_API_KEY")) response, _ := client.Send(edgee.SendParams{ - Model: "gpt-4o", + Model: "gpt-5.2", Input: "What is the capital of France?", }) @@ -93,7 +93,7 @@ icon: chevrons-right let edgee = Edgee::new(api_key); let response = edgee.send(edgee::SendRequest { - model: "gpt-4o".to_string(), + model: "gpt-5.2".to_string(), input: "What is the capital of France?".to_string(), }); diff --git a/sdk/go/index.mdx b/sdk/go/index.mdx index f03ebbf..3877c9c 100644 --- a/sdk/go/index.mdx +++ b/sdk/go/index.mdx @@ -27,7 +27,7 @@ import ( func main() { client, _ := edgee.NewClient("your-api-key") - response, err := client.Send("gpt-4o", "What is the capital of France?") + response, err := client.Send("gpt-5.2", "What is the capital of France?") if err != nil { log.Fatal(err) } diff --git a/sdk/go/send.mdx b/sdk/go/send.mdx index 51d394c..88dfe67 100644 --- a/sdk/go/send.mdx +++ b/sdk/go/send.mdx @@ -11,7 +11,7 @@ The `Send()` method is used to make chat completion requests to the Edgee AI Gat | Parameter | Type | Description | |-----------|------|-------------| -| `model` | `string` | The model identifier to use (e.g., `"openai/gpt-4o"`) | +| `model` | `string` | The model identifier to use (e.g., `"openai/gpt-5.2"`) | | `input` | `any` | The input for the completion. Can be a `string`, `InputObject`, `*InputObject`, or `map[string]interface{}` | ### Input Types @@ -23,7 +23,7 @@ The `Send()` method accept multiple input types: When `input` is a string, it's automatically converted to a user message: ```go -response, err := client.Send("gpt-4o", "What is the capital of France?") +response, err := client.Send("gpt-5.2", "What is the capital of France?") if err != nil { log.Fatal(err) } @@ -57,7 +57,7 @@ input := edgee.InputObject{ }, } -response, err := client.Send("gpt-4o", input) +response, err := client.Send("gpt-5.2", input) if err != nil { log.Fatal(err) } @@ -76,7 +76,7 @@ input := edgee.InputObject{ Tags: []string{"summarization", "production", "user-123"}, } -response, err := client.Send("gpt-4o", input) +response, err := client.Send("gpt-5.2", input) ``` #### Map Input @@ -90,7 +90,7 @@ input := map[string]interface{}{ }, } -response, err := client.Send("gpt-4o", input) +response, err := client.Send("gpt-5.2", input) if err != nil { log.Fatal(err) } @@ -128,7 +128,7 @@ input := edgee.InputObject{ }, } -response, err := client.Send("gpt-4o", input) +response, err := client.Send("gpt-5.2", input) if err != nil { log.Fatal(err) } @@ -168,7 +168,7 @@ Each choice in the `Choices` array contains: **Example - Handling Multiple Choices:** ```go -response, err := client.Send("gpt-4o", "Give me a creative idea.") +response, err := client.Send("gpt-5.2", "Give me a creative idea.") if err != nil { log.Fatal(err) } @@ -205,7 +205,7 @@ Token usage information (when available): **Example - Accessing Token Usage:** ```go -response, err := client.Send("gpt-4o", "Explain quantum computing briefly.") +response, err := client.Send("gpt-5.2", "Explain quantum computing briefly.") if err != nil { log.Fatal(err) } @@ -230,7 +230,7 @@ Token compression metrics (when compression is applied): **Example - Accessing Compression Metrics:** ```go -response, err := client.Send("gpt-4o", edgee.InputObject{ +response, err := client.Send("gpt-5.2", edgee.InputObject{ Messages: []edgee.Message{ {Role: "user", Content: "Analyze this long document with lots of context..."}, }, @@ -266,7 +266,7 @@ The `SendResponse` struct provides convenience methods for easier access: **Example - Using Convenience Methods:** ```go -response, err := client.Send("gpt-4o", "Hello!") +response, err := client.Send("gpt-5.2", "Hello!") if err != nil { log.Fatal(err) } @@ -294,7 +294,7 @@ if toolCalls := response.ToolCalls(); len(toolCalls) > 0 { The `Send()` method return Go errors: ```go -response, err := client.Send("gpt-4o", "Hello!") +response, err := client.Send("gpt-5.2", "Hello!") if err != nil { // Handle errors log.Fatalf("Request failed: %v", err) diff --git a/sdk/go/stream.mdx b/sdk/go/stream.mdx index 32919f3..7b945c3 100644 --- a/sdk/go/stream.mdx +++ b/sdk/go/stream.mdx @@ -11,7 +11,7 @@ The `Stream()` method is used to make streaming chat completion requests to the | Parameter | Type | Description | |-----------|------|-------------| -| `model` | `string` | The model identifier to use (e.g., `"openai/gpt-4o"`) | +| `model` | `string` | The model identifier to use (e.g., `"openai/gpt-5.2"`) | | `input` | `any` | The input for the completion. Can be a `string`, `InputObject`, `*InputObject`, or `map[string]interface{}` | ### Input Types @@ -23,7 +23,7 @@ The `Stream()` method accepts the same input types as `Send()`: When `input` is a string, it's automatically converted to a user message: ```go -chunkChan, errChan := client.Stream("gpt-4o", "Tell me a story") +chunkChan, errChan := client.Stream("gpt-5.2", "Tell me a story") for { select { @@ -75,7 +75,7 @@ input := edgee.InputObject{ }, } -chunkChan, errChan := client.Stream("gpt-4o", input) +chunkChan, errChan := client.Stream("gpt-5.2", input) for { select { @@ -127,7 +127,7 @@ Each choice in the `Choices` array contains: **Example - Handling Multiple Choices:** ```go -chunkChan, errChan := client.Stream("gpt-4o", "Give me creative ideas") +chunkChan, errChan := client.Stream("gpt-5.2", "Give me creative ideas") for { select { @@ -171,7 +171,7 @@ The `StreamChunk` struct provides convenience methods for easier access: **Example - Using Convenience Methods:** ```go -chunkChan, errChan := client.Stream("gpt-4o", "Explain quantum computing") +chunkChan, errChan := client.Stream("gpt-5.2", "Explain quantum computing") for { select { @@ -213,7 +213,7 @@ for { **Example - Collecting Full Response:** ```go -chunkChan, errChan := client.Stream("gpt-4o", "Tell me a story") +chunkChan, errChan := client.Stream("gpt-5.2", "Tell me a story") var fullText strings.Builder for { @@ -282,7 +282,7 @@ The `Stream()` method can return errors in two ways: 2. **Stream errors**: Individual errors sent through the `errChan` channel ```go -chunkChan, errChan := client.Stream("gpt-4o", "Hello!") +chunkChan, errChan := client.Stream("gpt-5.2", "Hello!") for { select { diff --git a/sdk/go/tools.mdx b/sdk/go/tools.mdx index 215fc73..2bd839c 100644 --- a/sdk/go/tools.mdx +++ b/sdk/go/tools.mdx @@ -102,7 +102,7 @@ input := edgee.InputObject{ ToolChoice: "auto", } -response, err := client.Send("gpt-4o", input) +response, err := client.Send("gpt-5.2", input) if err != nil { log.Fatal(err) } @@ -136,7 +136,7 @@ input := edgee.InputObject{ }, } -response, err := client.Send("gpt-4o", input) +response, err := client.Send("gpt-5.2", input) // Model will always call get_weather ``` @@ -153,7 +153,7 @@ input := edgee.InputObject{ ToolChoice: "none", } -response, err := client.Send("gpt-4o", input) +response, err := client.Send("gpt-5.2", input) // Model will not call tools, even though they're available ``` @@ -250,7 +250,7 @@ func main() { ToolChoice: "auto", } - response1, err := client.Send("gpt-4o", input) + response1, err := client.Send("gpt-5.2", input) if err != nil { log.Fatal(err) } @@ -299,7 +299,7 @@ func main() { }, } - response2, err := client.Send("gpt-4o", input2) + response2, err := client.Send("gpt-5.2", input2) if err != nil { log.Fatal(err) } @@ -331,7 +331,7 @@ input := edgee.InputObject{ ToolChoice: "auto", } -response, err := client.Send("gpt-4o", input) +response, err := client.Send("gpt-5.2", input) if err != nil { log.Fatal(err) } @@ -352,7 +352,7 @@ input := edgee.InputObject{ ToolChoice: "auto", } -chunkChan, errChan := client.Stream("gpt-4o", input) +chunkChan, errChan := client.Stream("gpt-5.2", input) for { select { @@ -557,7 +557,7 @@ input2 := edgee.InputObject{ }, } -response2, err := client.Send("gpt-4o", input2) +response2, err := client.Send("gpt-5.2", input2) ``` **Example - Checking for Tool Calls:** @@ -608,7 +608,7 @@ if len(toolCalls) > 0 { }, } - response2, err := client.Send("gpt-4o", input2) + response2, err := client.Send("gpt-5.2", input2) if err != nil { log.Fatal(err) } diff --git a/sdk/index.mdx b/sdk/index.mdx index af94c45..35d52f9 100644 --- a/sdk/index.mdx +++ b/sdk/index.mdx @@ -22,7 +22,7 @@ Choose your language and get started in minutes: const edgee = new Edgee("your-api-key"); const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: 'What is the capital of France?', }); @@ -44,7 +44,7 @@ Choose your language and get started in minutes: edgee = Edgee("your-api-key") response = edgee.send( - model="gpt-4o", + model="gpt-5.2", input="What is the capital of France?" ) @@ -71,7 +71,7 @@ Choose your language and get started in minutes: func main() { client, _ := edgee.NewClient("your-api-key") - response, err := client.Send("gpt-4o", "What is the capital of France?") + response, err := client.Send("gpt-5.2", "What is the capital of France?") if err != nil { log.Fatal(err) } @@ -93,7 +93,7 @@ Choose your language and get started in minutes: use edgee::Edgee; let client = Edgee::with_api_key("your-api-key"); - let response = client.send("gpt-4o", "What is the capital of France?").await.unwrap(); + let response = client.send("gpt-5.2", "What is the capital of France?").await.unwrap(); println!("{}", response.text().unwrap_or("")); if let Some(compression) = &response.compression { diff --git a/sdk/python/index.mdx b/sdk/python/index.mdx index ac190e0..875c489 100644 --- a/sdk/python/index.mdx +++ b/sdk/python/index.mdx @@ -23,7 +23,7 @@ edgee = Edgee("your-api-key") # Send a simple request response = edgee.send( - model="gpt-4o", + model="gpt-5.2", input="What is the capital of France?" ) diff --git a/sdk/python/send.mdx b/sdk/python/send.mdx index 9e28595..fa41b89 100644 --- a/sdk/python/send.mdx +++ b/sdk/python/send.mdx @@ -11,7 +11,7 @@ The `send()` method is used to make non-streaming chat completion requests to th | Parameter | Type | Description | |-----------|------|-------------| -| `model` | `str` | The model identifier to use (e.g., `"gpt-4o"`) | +| `model` | `str` | The model identifier to use (e.g., `"gpt-5.2"`) | | `input` | `str \| InputObject \| dict` | The input for the completion. Can be a simple string or a structured `InputObject` or dictionary | | `stream` | `bool` | If `True`, returns a generator yielding `StreamChunk` objects. If `False` (default), returns a `SendResponse` object | @@ -23,7 +23,7 @@ When `input` is a string, it's automatically converted to a user message: ```python response = edgee.send( - model="gpt-4o", + model="gpt-5.2", input="What is the capital of France?" ) @@ -49,7 +49,7 @@ When `input` is an `InputObject` or dictionary, you have full control over the c ```python response = edgee.send( - model="gpt-4o", + model="gpt-5.2", input={ "messages": [ {"role": "user", "content": "What is 2+2?"} @@ -65,7 +65,7 @@ print(response.text) ```python response = edgee.send( - model="gpt-4o", + model="gpt-5.2", input={ "messages": [ {"role": "user", "content": "Summarize this article"} @@ -99,7 +99,7 @@ Each message in the `messages` array has the following structure: ```python response = edgee.send( - model="gpt-4o", + model="gpt-5.2", input={ "messages": [ {"role": "system", "content": "You are a helpful assistant."}, @@ -142,7 +142,7 @@ Each choice in the `choices` array contains: ```python response = edgee.send( - model="gpt-4o", + model="gpt-5.2", input="Give me a creative idea." ) @@ -176,7 +176,7 @@ Token usage information (when available): ```python response = edgee.send( - model="gpt-4o", + model="gpt-5.2", input="Explain quantum computing briefly." ) @@ -200,7 +200,7 @@ Token compression metrics (when compression is applied): ```python response = edgee.send( - model="gpt-4o", + model="gpt-5.2", input={ "messages": [ {"role": "user", "content": "Analyze this long document with lots of context..."} @@ -235,7 +235,7 @@ The `SendResponse` class provides convenience properties for easier access: ```python response = edgee.send( - model="gpt-4o", + model="gpt-5.2", input="Hello!" ) @@ -258,7 +258,7 @@ if response.tool_calls: You can use `send()` with `stream=True` to get streaming responses. This returns a generator yielding `StreamChunk` objects: ```python -for chunk in edgee.send("gpt-4o", "Tell me a story", stream=True): +for chunk in edgee.send("gpt-5.2", "Tell me a story", stream=True): if chunk.text: print(chunk.text, end="", flush=True) ``` @@ -272,7 +272,7 @@ The `send()` method can raise exceptions in several scenarios: ```python try: response = edgee.send( - model="gpt-4o", + model="gpt-5.2", input="Hello!" ) except RuntimeError as error: diff --git a/sdk/python/stream.mdx b/sdk/python/stream.mdx index ec7f3d6..8818934 100644 --- a/sdk/python/stream.mdx +++ b/sdk/python/stream.mdx @@ -11,7 +11,7 @@ The `stream()` method is used to make streaming chat completion requests to the | Parameter | Type | Description | |-----------|------|-------------| -| `model` | `str` | The model identifier to use (e.g., `"gpt-4o"`) | +| `model` | `str` | The model identifier to use (e.g., `"gpt-5.2"`) | | `input` | `str \| InputObject \| dict` | The input for the completion. Can be a simple string or a structured `InputObject` or dictionary | ### Input Types @@ -21,7 +21,7 @@ The `stream()` method is used to make streaming chat completion requests to the When `input` is a string, it's automatically converted to a user message: ```python -for chunk in edgee.stream("gpt-4o", "Tell me a story"): +for chunk in edgee.stream("gpt-5.2", "Tell me a story"): if chunk.text: print(chunk.text, end="", flush=True) @@ -49,7 +49,7 @@ For details about `Tool` and `ToolChoice` types, see the [Tools documentation](/ **Example - Streaming with Messages:** ```python -for chunk in edgee.stream("gpt-4o", { +for chunk in edgee.stream("gpt-5.2", { "messages": [ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "Write a poem about coding"} @@ -85,7 +85,7 @@ Each choice in the `choices` array contains: **Example - Handling Multiple Choices:** ```python -for chunk in edgee.stream("gpt-4o", "Give me creative ideas"): +for chunk in edgee.stream("gpt-5.2", "Give me creative ideas"): for choice in chunk.choices: if choice.delta.content: print(f"Choice {choice.index}: {choice.delta.content}") @@ -114,7 +114,7 @@ The `StreamChunk` class provides convenience properties for easier access: **Example - Using Convenience Properties:** ```python -for chunk in edgee.stream("gpt-4o", "Explain quantum computing"): +for chunk in edgee.stream("gpt-5.2", "Explain quantum computing"): # Content chunks if chunk.text: print(chunk.text, end="", flush=True) @@ -141,7 +141,7 @@ for chunk in edgee.stream("gpt-4o", "Explain quantum computing"): ```python full_text = "" -for chunk in edgee.stream("gpt-4o", "Tell me a story"): +for chunk in edgee.stream("gpt-5.2", "Tell me a story"): if chunk.text: full_text += chunk.text print(chunk.text, end="", flush=True) # Also display as it streams @@ -170,7 +170,7 @@ Some chunks may not contain `content`. This is normal and can happen when: Always check for `chunk.text` before using it: ```python -for chunk in edgee.stream("gpt-4o", "Hello"): +for chunk in edgee.stream("gpt-5.2", "Hello"): if chunk.text: # ✅ Good: Check before using print(chunk.text) # ❌ Bad: print(chunk.text) - may print None @@ -181,7 +181,7 @@ for chunk in edgee.stream("gpt-4o", "Hello"): You can also use the `send()` method with `stream=True` to get streaming responses: ```python -for chunk in edgee.send("gpt-4o", "Tell me a story", stream=True): +for chunk in edgee.send("gpt-5.2", "Tell me a story", stream=True): if chunk.text: print(chunk.text, end="", flush=True) ``` @@ -194,7 +194,7 @@ The `stream()` method can raise exceptions: ```python try: - for chunk in edgee.stream("gpt-4o", "Hello!"): + for chunk in edgee.stream("gpt-5.2", "Hello!"): if chunk.text: print(chunk.text, end="", flush=True) except RuntimeError as error: diff --git a/sdk/python/tools.mdx b/sdk/python/tools.mdx index d523460..addf01a 100644 --- a/sdk/python/tools.mdx +++ b/sdk/python/tools.mdx @@ -62,7 +62,7 @@ The `parameters` field uses JSON Schema format: ```python response = edgee.send( - model="gpt-4o", + model="gpt-5.2", input={ "messages": [ {"role": "user", "content": "What is the weather in Paris?"} @@ -110,7 +110,7 @@ The `tool_choice` parameter controls when and which tools the model should call: ```python response = edgee.send( - model="gpt-4o", + model="gpt-5.2", input={ "messages": [ {"role": "user", "content": "What is the weather?"} @@ -138,7 +138,7 @@ response = edgee.send( ```python response = edgee.send( - model="gpt-4o", + model="gpt-5.2", input={ "messages": [ {"role": "user", "content": "What is the weather?"} @@ -204,7 +204,7 @@ async def get_weather(location: str, unit: str = "celsius"): # Step 1: Initial request with tools response1 = edgee.send( - model="gpt-4o", + model="gpt-5.2", input={ "messages": [ {"role": "user", "content": "What is the weather in Paris and Tokyo?"} @@ -256,7 +256,7 @@ if response1.tool_calls: # Step 3: Send results back response2 = edgee.send( - model="gpt-4o", + model="gpt-5.2", input={ "messages": messages, "tools": [ @@ -289,7 +289,7 @@ You can provide multiple tools and let the model choose which ones to call: ```python response = edgee.send( - model="gpt-4o", + model="gpt-5.2", input={ "messages": [ {"role": "user", "content": "Get the weather in Paris and send an email about it"} @@ -336,7 +336,7 @@ response = edgee.send( The `stream()` method also supports tools. For details about streaming, see the [Stream Method documentation](/sdk/python/stream). ```python -for chunk in edgee.stream("gpt-4o", { +for chunk in edgee.stream("gpt-5.2", { "messages": [ {"role": "user", "content": "What is the weather in Paris?"} ], @@ -499,7 +499,7 @@ Include tools in follow-up requests so the model can call them again if needed: ```python response2 = edgee.send( - model="gpt-4o", + model="gpt-5.2", input={ "messages": [...messages_with_tool_results], "tools": [ @@ -530,7 +530,7 @@ weather_result = await get_weather(args["location"], args.get("unit")) # Send the result back response2 = edgee.send( - model="gpt-4o", + model="gpt-5.2", input={ "messages": [ {"role": "user", "content": "What is the weather in Paris?"}, diff --git a/sdk/rust/index.mdx b/sdk/rust/index.mdx index c837077..ac9eeec 100644 --- a/sdk/rust/index.mdx +++ b/sdk/rust/index.mdx @@ -19,7 +19,7 @@ cargo install edgee use edgee::Edgee; let client = Edgee::with_api_key("your-api-key"); -let response = client.send("gpt-4o", "What is the capital of France?").await.unwrap(); +let response = client.send("gpt-5.2", "What is the capital of France?").await.unwrap(); println!("{}", response.text().unwrap_or("")); // "The capital of France is Paris." diff --git a/sdk/rust/send.mdx b/sdk/rust/send.mdx index 99f7ad4..098f875 100644 --- a/sdk/rust/send.mdx +++ b/sdk/rust/send.mdx @@ -11,7 +11,7 @@ The `send()` method is used to make non-streaming chat completion requests to th | Parameter | Type | Description | |-----------|------|-------------| -| `model` | `impl Into` | The model identifier to use (e.g., `"gpt-4o"`) | +| `model` | `impl Into` | The model identifier to use (e.g., `"gpt-5.2"`) | | `input` | `impl Into` | The input for the completion. Can be a string (`&str` or `String`), `Vec`, or `InputObject` | ### Input Types @@ -23,7 +23,7 @@ The `send()` method accepts multiple input types through the `Into` trait When `input` is a string (`&str` or `String`), it's automatically converted to a user message: ```rust -let response = client.send("gpt-4o", "What is the capital of France?").await?; +let response = client.send("gpt-5.2", "What is the capital of France?").await?; // Equivalent to: input: InputObject::new(vec![Message::user("What is the capital of France?")]) println!("{}", response.text().unwrap_or("")); @@ -42,7 +42,7 @@ let messages = vec![ Message::user("What is 2+2?"), ]; -let response = client.send("gpt-4o", messages).await?; +let response = client.send("gpt-5.2", messages).await?; println!("{}", response.text().unwrap_or("")); // "2+2 equals 4." ``` @@ -69,7 +69,7 @@ let input = InputObject::new(vec![ Message::user("What is 2+2?") ]); -let response = client.send("gpt-4o", input).await?; +let response = client.send("gpt-5.2", input).await?; println!("{}", response.text().unwrap_or("")); // "2+2 equals 4." ``` @@ -87,7 +87,7 @@ let input = InputObject::new(vec![ "user-123".to_string() ]); -let response = client.send("gpt-4o", input).await?; +let response = client.send("gpt-5.2", input).await?; ``` ### Message Object @@ -123,7 +123,7 @@ let messages = vec![ Message::user("What about 3+3?"), ]; -let response = client.send("gpt-4o", messages).await?; +let response = client.send("gpt-5.2", messages).await?; println!("{}", response.text().unwrap_or("")); // "3+3 equals 6." ``` @@ -159,7 +159,7 @@ Each choice in the `choices` array contains: **Example - Handling Multiple Choices:** ```rust -let response = client.send("gpt-4o", "Give me a creative idea.").await?; +let response = client.send("gpt-5.2", "Give me a creative idea.").await?; // Process all choices for choice in &response.choices { @@ -191,7 +191,7 @@ Token usage information (when available): **Example - Accessing Token Usage:** ```rust -let response = client.send("gpt-4o", "Explain quantum computing briefly.").await?; +let response = client.send("gpt-5.2", "Explain quantum computing briefly.").await?; if let Some(usage) = &response.usage { println!("Prompt tokens: {}", usage.prompt_tokens); @@ -219,7 +219,7 @@ let input = InputObject::new(vec![ .with_enable_compression(true) .with_compression_rate(0.8); // Target 80% compression -let response = client.send("gpt-4o", input).await?; +let response = client.send("gpt-5.2", input).await?; println!("{}", response.text().unwrap_or("")); if let Some(compression) = &response.compression { @@ -247,7 +247,7 @@ The `SendResponse` struct provides convenience methods for easier access: **Example - Using Convenience Methods:** ```rust -let response = client.send("gpt-4o", "Hello!").await?; +let response = client.send("gpt-5.2", "Hello!").await?; // Instead of: response.choices[0].message.content.as_deref() if let Some(text) = response.text() { @@ -277,7 +277,7 @@ The `send()` method returns a `Result`, which can contain various ```rust use edgee::{Edgee, Error}; -match client.send("gpt-4o", "Hello!").await { +match client.send("gpt-5.2", "Hello!").await { Ok(response) => { println!("{}", response.text().unwrap_or("")); } diff --git a/sdk/rust/stream.mdx b/sdk/rust/stream.mdx index 4581761..ed15e62 100644 --- a/sdk/rust/stream.mdx +++ b/sdk/rust/stream.mdx @@ -12,7 +12,7 @@ The `stream()` method is used to make streaming chat completion requests to the | Parameter | Type | Description | |-----------|------|-------------| -| `model` | `impl Into` | The model identifier to use (e.g., `"gpt-4o"`) | +| `model` | `impl Into` | The model identifier to use (e.g., `"gpt-5.2"`) | | `input` | `impl Into` | The input for the completion. Can be a string (`&str` or `String`), `Vec`, or `InputObject` | ### Input Types @@ -26,7 +26,7 @@ When `input` is a string, it's automatically converted to a user message: ```rust use tokio_stream::StreamExt; -let mut stream = client.stream("gpt-4o", "Tell me a story").await?; +let mut stream = client.stream("gpt-5.2", "Tell me a story").await?; while let Some(result) = stream.next().await { match result { @@ -72,7 +72,7 @@ let messages = vec![ Message::user("Write a poem about coding"), ]; -let mut stream = client.stream("gpt-4o", messages).await?; +let mut stream = client.stream("gpt-5.2", messages).await?; while let Some(result) = stream.next().await { if let Ok(chunk) = result { @@ -115,7 +115,7 @@ Each choice in the `choices` array contains: ```rust use tokio_stream::StreamExt; -let mut stream = client.stream("gpt-4o", "Give me creative ideas").await?; +let mut stream = client.stream("gpt-5.2", "Give me creative ideas").await?; while let Some(result) = stream.next().await { if let Ok(chunk) = result { @@ -153,7 +153,7 @@ The `StreamChunk` struct provides convenience methods for easier access: ```rust use tokio_stream::StreamExt; -let mut stream = client.stream("gpt-4o", "Explain quantum computing").await?; +let mut stream = client.stream("gpt-5.2", "Explain quantum computing").await?; while let Some(result) = stream.next().await { match result { @@ -191,7 +191,7 @@ while let Some(result) = stream.next().await { ```rust use tokio_stream::StreamExt; -let mut stream = client.stream("gpt-4o", "Tell me a story").await?; +let mut stream = client.stream("gpt-5.2", "Tell me a story").await?; let mut full_text = String::new(); while let Some(result) = stream.next().await { @@ -232,7 +232,7 @@ Always check for `chunk.text()` before using it: ```rust use tokio_stream::StreamExt; -let mut stream = client.stream("gpt-4o", "Hello").await?; +let mut stream = client.stream("gpt-5.2", "Hello").await?; while let Some(result) = stream.next().await { if let Ok(chunk) = result { @@ -256,7 +256,7 @@ use edgee::Error; use tokio_stream::StreamExt; // Handle initial error -let mut stream = match client.stream("gpt-4o", "Hello!").await { +let mut stream = match client.stream("gpt-5.2", "Hello!").await { Ok(stream) => stream, Err(Error::Api { status, message }) => { eprintln!("API error {}: {}", status, message); diff --git a/sdk/rust/tools.mdx b/sdk/rust/tools.mdx index 46c16df..0435596 100644 --- a/sdk/rust/tools.mdx +++ b/sdk/rust/tools.mdx @@ -101,7 +101,7 @@ let input = InputObject::new(vec![ ]) .with_tools(vec![Tool::function(function)]); -let response = client.send("gpt-4o", input).await?; +let response = client.send("gpt-5.2", input).await?; ``` ## Tool Choice @@ -128,7 +128,7 @@ let input = InputObject::new(vec![ "function": {"name": "get_weather"} })); -let response = client.send("gpt-4o", input).await?; +let response = client.send("gpt-5.2", input).await?; // Model will always call get_weather ``` @@ -143,7 +143,7 @@ let input = InputObject::new(vec![ .with_tools(vec![Tool::function(function)]) .with_tool_choice(json!("none")); -let response = client.send("gpt-4o", input).await?; +let response = client.send("gpt-5.2", input).await?; // Model will not call tools, even though they're available ``` @@ -215,7 +215,7 @@ async fn main() -> Result<(), Box> { ]) .with_tools(vec![Tool::function(function)]); - let response1 = client.send("gpt-4o", input).await?; + let response1 = client.send("gpt-5.2", input).await?; // Step 2: Execute all tool calls let mut messages = vec![ @@ -268,7 +268,7 @@ async fn main() -> Result<(), Box> { let input2 = InputObject::new(messages) .with_tools(vec![Tool::function(function2)]); - let response2 = client.send("gpt-4o", input2).await?; + let response2 = client.send("gpt-5.2", input2).await?; println!("{}", response2.text().unwrap_or("")); Ok(()) @@ -297,7 +297,7 @@ let input = InputObject::new(vec![ ]) .with_tools(vec![get_weather_tool, send_email_tool]); -let response = client.send("gpt-4o", input).await?; +let response = client.send("gpt-5.2", input).await?; ``` ## Streaming with Tools @@ -312,7 +312,7 @@ let input = InputObject::new(vec![ ]) .with_tools(vec![Tool::function(function)]); -let mut stream = client.stream("gpt-4o", input).await?; +let mut stream = client.stream("gpt-5.2", input).await?; while let Some(result) = stream.next().await { match result { @@ -496,7 +496,7 @@ let input2 = InputObject::new(messages_with_tool_results) Tool::function(function) ]); -let response2 = client.send("gpt-4o", input2).await?; +let response2 = client.send("gpt-5.2", input2).await?; ``` **Example - Checking for Tool Calls:** @@ -541,7 +541,7 @@ if let Some(tool_calls) = response.tool_calls() { let input2 = InputObject::new(messages) .with_tools(vec![Tool::function(function)]); - let response2 = client.send("gpt-4o", input2).await?; + let response2 = client.send("gpt-5.2", input2).await?; println!("{}", response2.text().unwrap_or("")); // "The weather in Paris is 15°C and sunny." } diff --git a/sdk/typescript/index.mdx b/sdk/typescript/index.mdx index 4cc0256..b3d90cf 100644 --- a/sdk/typescript/index.mdx +++ b/sdk/typescript/index.mdx @@ -23,7 +23,7 @@ const edgee = new Edgee("your-api-key"); // Send a simple request const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: 'What is the capital of France?', }); diff --git a/sdk/typescript/send.mdx b/sdk/typescript/send.mdx index 40cdb90..9570648 100644 --- a/sdk/typescript/send.mdx +++ b/sdk/typescript/send.mdx @@ -13,7 +13,7 @@ The `send()` method accepts a single `SendOptions` object with the following pro | Property | Type | Description | |----------|------|---------| -| `model` | `string` | The model identifier to use (e.g., `"openai/gpt-4o"`) | +| `model` | `string` | The model identifier to use (e.g., `"openai/gpt-5.2"`) | | `input` | `string \| InputObject` | The input for the completion. Can be a simple string or a structured `InputObject` | @@ -26,7 +26,7 @@ When `input` is a string, it's automatically converted to a user message: ```typescript const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: 'What is the capital of France?' }); @@ -52,7 +52,7 @@ When `input` is an `InputObject`, you have full control over the conversation: ```typescript const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: { messages: [ { role: 'user', content: 'What is 2+2?' } @@ -68,7 +68,7 @@ console.log(response.text); ```typescript const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: { messages: [ { role: 'user', content: 'Summarize this article' } @@ -102,7 +102,7 @@ Each message in the `messages` array has the following structure: ```typescript const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: { messages: [ { role: 'system', content: 'You are a helpful assistant.' }, @@ -145,7 +145,7 @@ Each choice in the `choices` array contains: ```typescript const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: 'Give me a creative idea.' }); @@ -180,7 +180,7 @@ Token usage information (when available): ```typescript const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: 'Explain quantum computing briefly.' }); @@ -205,7 +205,7 @@ Token compression metrics (when compression is applied): ```typescript const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: { messages: [ { role: 'user', content: 'Analyze this long document with lots of context...' } @@ -241,7 +241,7 @@ The `SendResponse` class provides convenience getters for easier access: ```typescript const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: 'Hello!' }); @@ -267,7 +267,7 @@ The `send()` method can throw errors in several scenarios: ```typescript try { const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: 'Hello!' }); } catch (error) { diff --git a/sdk/typescript/stream.mdx b/sdk/typescript/stream.mdx index 5361802..bb27819 100644 --- a/sdk/typescript/stream.mdx +++ b/sdk/typescript/stream.mdx @@ -13,7 +13,7 @@ The `stream()` method accepts two arguments: | Parameter | Type | Description | |-----------|------|-------------| -| `model` | `string` | The model identifier to use (e.g., `"openai/gpt-4o"`) | +| `model` | `string` | The model identifier to use (e.g., `"openai/gpt-5.2"`) | | `input` | `string \| InputObject` | The input for the completion. Can be a simple string or a structured `InputObject` | ### Input Types @@ -23,7 +23,7 @@ The `stream()` method accepts two arguments: When `input` is a string, it's automatically converted to a user message: ```typescript -for await (const chunk of edgee.stream('gpt-4o', 'Tell me a story')) { +for await (const chunk of edgee.stream('gpt-5.2', 'Tell me a story')) { if (chunk.text) { process.stdout.write(chunk.text); } @@ -55,7 +55,7 @@ For details about `Tool` and `ToolChoice` types, see the [Tools documentation](/ **Example - Streaming with Messages:** ```typescript -for await (const chunk of edgee.stream('gpt-4o', { +for await (const chunk of edgee.stream('gpt-5.2', { messages: [ { role: 'system', content: 'You are a helpful assistant.' }, { role: 'user', content: 'Write a poem about coding' } @@ -93,7 +93,7 @@ Each choice in the `choices` array contains: **Example - Handling Multiple Choices:** ```typescript -for await (const chunk of edgee.stream('gpt-4o', 'Give me creative ideas')) { +for await (const chunk of edgee.stream('gpt-5.2', 'Give me creative ideas')) { chunk.choices.forEach((choice, index) => { if (choice.delta.content) { console.log(`Choice ${index}: ${choice.delta.content}`); @@ -125,7 +125,7 @@ The `StreamChunk` class provides convenience getters for easier access: **Example - Using Convenience Properties:** ```typescript -for await (const chunk of edgee.stream('gpt-4o', 'Explain quantum computing')) { +for await (const chunk of edgee.stream('gpt-5.2', 'Explain quantum computing')) { // Content chunks if (chunk.text) { process.stdout.write(chunk.text); @@ -156,7 +156,7 @@ for await (const chunk of edgee.stream('gpt-4o', 'Explain quantum computing')) { ```typescript let fullText = ''; -for await (const chunk of edgee.stream('gpt-4o', 'Tell me a story')) { +for await (const chunk of edgee.stream('gpt-5.2', 'Tell me a story')) { if (chunk.text) { fullText += chunk.text; process.stdout.write(chunk.text); // Also display as it streams @@ -188,7 +188,7 @@ Some chunks may not contain `content`. This is normal and can happen when: Always check for `chunk.text` before using it: ```typescript -for await (const chunk of edgee.stream('gpt-4o', 'Hello')) { +for await (const chunk of edgee.stream('gpt-5.2', 'Hello')) { if (chunk.text) { // ✅ Good: Check before using console.log(chunk.text); } @@ -202,7 +202,7 @@ The `stream()` method can throw errors: ```typescript try { - for await (const chunk of edgee.stream('gpt-4o', 'Hello!')) { + for await (const chunk of edgee.stream('gpt-5.2', 'Hello!')) { if (chunk.text) { process.stdout.write(chunk.text); } diff --git a/sdk/typescript/tools.mdx b/sdk/typescript/tools.mdx index 773c2a4..2729e79 100644 --- a/sdk/typescript/tools.mdx +++ b/sdk/typescript/tools.mdx @@ -54,7 +54,7 @@ The `parameters` field uses JSON Schema format: ```typescript const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: { messages: [ { role: 'user', content: 'What is the weather in Paris?' } @@ -111,7 +111,7 @@ type ToolChoice = ```typescript const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: { messages: [ { role: 'user', content: 'What is the weather?' } @@ -139,7 +139,7 @@ const response = await edgee.send({ ```typescript const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: { messages: [ { role: 'user', content: 'What is the weather?' } @@ -203,7 +203,7 @@ async function getWeather(location: string, unit: string = 'celsius') { // Step 1: Initial request with tools const response1 = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: { messages: [ { role: 'user', content: 'What is the weather in Paris and Tokyo?' } @@ -257,7 +257,7 @@ if (response1.toolCalls) { // Step 3: Send results back const response2 = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: { messages, tools: [ @@ -292,7 +292,7 @@ You can provide multiple tools and let the model choose: ```typescript const response = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: { messages: [ { role: 'user', content: 'Get the weather in Paris and send an email about it' } @@ -339,7 +339,7 @@ const response = await edgee.send({ The `stream()` method also supports tools. For details about streaming, see the [Stream Method documentation](/sdk/typescript/stream). ```typescript -for await (const chunk of edgee.stream('gpt-4o', { +for await (const chunk of edgee.stream('gpt-5.2', { messages: [ { role: 'user', content: 'What is the weather in Paris?' } ], @@ -486,7 +486,7 @@ Include tools in follow-up requests so the model can call them again if needed: ```typescript const response2 = await edgee.send({ - model: 'gpt-4o', + model: 'gpt-5.2', input: { messages: [...messagesWithToolResults], tools: [