- Fix ChatBubble to handle non-string content with String() wrapper - Fix API route to use generateText for non-streaming requests - Add @ai-sdk/openai-compatible for non-OpenAI providers (DeepSeek, etc.) - Use Chat Completions API instead of Responses API for compatible providers - Update ChatBubble tests and fix component exports to kebab-case - Remove stale PascalCase ChatBubble.tsx file
28 lines
1.5 KiB
Plaintext
28 lines
1.5 KiB
Plaintext
uid=3_0 RootWebArea "Test01 - Local-First Venting" url="http://localhost:3000/settings"
|
|
uid=3_1 StaticText "Offline - Saved locally"
|
|
uid=3_2 button "Open Next.js Dev Tools" expandable haspopup="menu"
|
|
uid=3_3 dialog "Add New Provider"
|
|
uid=3_4 heading "Add New Provider" level="2"
|
|
uid=3_5 StaticText "Add New Provider"
|
|
uid=3_6 StaticText "Configure your provider profile. Your API Key is stored locally in your browser."
|
|
uid=3_7 StaticText "Provider Name"
|
|
uid=3_8 textbox "Provider Name" focusable focused
|
|
uid=3_9 StaticText "A label to identify this provider (e.g., "My OpenAI Key")"
|
|
uid=3_10 StaticText "Quick Setup"
|
|
uid=3_11 button "OpenAI" description="Official OpenAI API endpoint"
|
|
uid=3_12 button "DeepSeek" description="DeepSeek AI - High performance, cost effective"
|
|
uid=3_13 button "OpenRouter" description="Unified API for multiple providers"
|
|
uid=3_14 StaticText "Base URL"
|
|
uid=3_15 textbox "Base URL" value="https://api.openai.com/v1"
|
|
uid=3_16 StaticText "API endpoint URL (e.g., https://api.openai.com/v1)"
|
|
uid=3_17 StaticText "Model Name"
|
|
uid=3_18 textbox "Model Name" value="gpt-4o"
|
|
uid=3_19 StaticText "Model identifier (e.g., gpt-4o, deepseek-chat)"
|
|
uid=3_20 StaticText "API Key"
|
|
uid=3_21 textbox "API Key"
|
|
uid=3_22 button "Show API key"
|
|
uid=3_23 StaticText "Stored locally in your browser with basic encoding. Never sent to our servers."
|
|
uid=3_24 button "Cancel"
|
|
uid=3_25 button "Save as New Provider"
|
|
uid=3_26 button "Close"
|