@@ -71,43 +71,43 @@ The simplest way to add the widget to your website:
7171
7272### Optional Props
7373
74- | Prop | Type | Default | Description |
75- | ------------------------- | --------------------------------------------------------------------------------- | ------------------------ | --------------------------------------------------------------------------------------- |
76- | ` mode ` | ` 'voice' \| 'chat' \| 'hybrid' ` | ` 'chat' ` | Widget interaction mode |
77- | ` theme ` | ` 'light' \| 'dark' ` | ` 'light' ` | Color theme |
78- | ` position ` | ` 'bottom-right' \| 'bottom-left' \| 'top-right' \| 'top-left' \| 'bottom-center' ` | ` 'bottom-right' ` | Screen position |
79- | ` size ` | ` 'tiny' \| 'compact' \| 'full' ` | ` 'full' ` | Widget size |
80- | ` borderRadius ` | ` 'none' \| 'small' \| 'medium' \| 'large' ` | ` 'medium' ` | Corner radius style |
81- | ` apiUrl ` | ` string ` | - | Custom API endpoint for chat mode |
82- | ** Colors** | | | |
83- | ` baseBgColor ` | ` string ` | - | Main background color |
84- | ` accentColor ` | ` string ` | ` '#14B8A6' ` | Primary accent color |
85- | ` ctaButtonColor ` | ` string ` | ` '#000000' ` | CTA button background color |
86- | ` ctaButtonTextColor ` | ` string ` | ` '#FFFFFF' ` | CTA button text/icon color |
87- | ** Text Labels** | | | |
88- | ` title ` | ` string ` | ` 'Talk with AI' ` | Main widget title |
89- | ` startButtonText ` | ` string ` | ` 'Start' ` | Voice call start button text |
90- | ` endButtonText ` | ` string ` | ` 'End Call' ` | Voice call end button text |
91- | ` ctaTitle ` | ` string ` | _ (uses title)_ | Floating button main text |
92- | ` ctaSubtitle ` | ` string ` | - | Floating button subtitle text |
93- | ** Empty States** | | | |
94- | ` voiceEmptyMessage ` | ` string ` | - | Message when voice mode is empty |
95- | ` voiceActiveEmptyMessage ` | ` string ` | - | Message during active voice call |
96- | ` chatEmptyMessage ` | ` string ` | - | Message when chat is empty |
97- | ` hybridEmptyMessage ` | ` string ` | - | Message for hybrid mode |
98- | ** Chat Configuration** | | | |
99- | ` chatFirstMessage ` | ` string ` | - | Initial assistant message in chat |
100- | ` chatPlaceholder ` | ` string ` | ` 'Type your message...' ` | Chat input placeholder text |
101- | ** Voice Configuration** | | | |
102- | ` voiceShowTranscript ` | ` boolean ` | ` false ` | Show/hide voice transcript |
103- | ` voiceAutoReconnect ` | ` boolean ` | ` false ` | Auto-reconnect to an active web call (see ` voiceReconnectStorage ` for scope) |
104- | ` voiceReconnectStorage ` | ` 'session' \| 'cookies' ` | ` 'session' ` | Storage type: 'session' (same tab only) or 'cookies' (same tab across subdomains) |
105- | ` reconnectStorageKey ` | ` string ` | ` 'vapi_widget_web_call' ` | Key for storing reconnection data |
106- | ** Consent Configuration** | | | |
107- | ` consentRequired ` | ` boolean ` | ` false ` | Show consent form before first use |
108- | ` consentTitle ` | ` string ` | ` "Terms and conditions" ` | Consent form title |
109- | ` consentContent ` | ` string ` | _ (default message)_ | Terms & conditions content |
110- | ` consentStorageKey ` | ` string ` | ` "vapi_widget_consent" ` | Key for storing consent |
74+ | Prop | Type | Default | Description |
75+ | ------------------------- | --------------------------------------------------------------------------------- | ------------------------ | --------------------------------------------------------------------------------- |
76+ | ` mode ` | ` 'voice' \| 'chat' \| 'hybrid' ` | ` 'chat' ` | Widget interaction mode |
77+ | ` theme ` | ` 'light' \| 'dark' ` | ` 'light' ` | Color theme |
78+ | ` position ` | ` 'bottom-right' \| 'bottom-left' \| 'top-right' \| 'top-left' \| 'bottom-center' ` | ` 'bottom-right' ` | Screen position |
79+ | ` size ` | ` 'tiny' \| 'compact' \| 'full' ` | ` 'full' ` | Widget size |
80+ | ` borderRadius ` | ` 'none' \| 'small' \| 'medium' \| 'large' ` | ` 'medium' ` | Corner radius style |
81+ | ` apiUrl ` | ` string ` | - | Custom API endpoint for chat mode |
82+ | ** Colors** | | | |
83+ | ` baseBgColor ` | ` string ` | - | Main background color |
84+ | ` accentColor ` | ` string ` | ` '#14B8A6' ` | Primary accent color |
85+ | ` ctaButtonColor ` | ` string ` | ` '#000000' ` | CTA button background color |
86+ | ` ctaButtonTextColor ` | ` string ` | ` '#FFFFFF' ` | CTA button text/icon color |
87+ | ** Text Labels** | | | |
88+ | ` title ` | ` string ` | ` 'Talk with AI' ` | Main widget title |
89+ | ` startButtonText ` | ` string ` | ` 'Start' ` | Voice call start button text |
90+ | ` endButtonText ` | ` string ` | ` 'End Call' ` | Voice call end button text |
91+ | ` ctaTitle ` | ` string ` | _ (uses title)_ | Floating button main text |
92+ | ` ctaSubtitle ` | ` string ` | - | Floating button subtitle text |
93+ | ** Empty States** | | | |
94+ | ` voiceEmptyMessage ` | ` string ` | - | Message when voice mode is empty |
95+ | ` voiceActiveEmptyMessage ` | ` string ` | - | Message during active voice call |
96+ | ` chatEmptyMessage ` | ` string ` | - | Message when chat is empty |
97+ | ` hybridEmptyMessage ` | ` string ` | - | Message for hybrid mode |
98+ | ** Chat Configuration** | | | |
99+ | ` chatFirstMessage ` | ` string ` | - | Initial assistant message in chat |
100+ | ` chatPlaceholder ` | ` string ` | ` 'Type your message...' ` | Chat input placeholder text |
101+ | ** Voice Configuration** | | | |
102+ | ` voiceShowTranscript ` | ` boolean ` | ` false ` | Show/hide voice transcript |
103+ | ` voiceAutoReconnect ` | ` boolean ` | ` false ` | Auto-reconnect to an active web call (see ` voiceReconnectStorage ` for scope) |
104+ | ` voiceReconnectStorage ` | ` 'session' \| 'cookies' ` | ` 'session' ` | Storage type: 'session' (same tab only) or 'cookies' (same tab across subdomains) |
105+ | ` reconnectStorageKey ` | ` string ` | ` 'vapi_widget_web_call' ` | Key for storing reconnection data |
106+ | ** Consent Configuration** | | | |
107+ | ` consentRequired ` | ` boolean ` | ` false ` | Show consent form before first use |
108+ | ` consentTitle ` | ` string ` | ` "Terms and conditions" ` | Consent form title |
109+ | ` consentContent ` | ` string ` | _ (default message)_ | Terms & conditions content |
110+ | ` consentStorageKey ` | ` string ` | ` "vapi_widget_consent" ` | Key for storing consent |
111111
112112### Event Callbacks
113113
@@ -280,14 +280,14 @@ Use this approach if your environment doesn't support custom elements or for bet
280280
281281### Voice-Only with Auto-Reconnect
282282
283- ```` tsx
283+ ``` tsx
284284<VapiWidget
285285 publicKey = " pk_123"
286286 assistantId = " asst_456"
287287 mode = " voice"
288288 voiceAutoReconnect = { true }
289289/>
290- ````
290+ ```
291291
292292### Voice with Cross-Subdomain Reconnection
293293
@@ -315,7 +315,7 @@ npm install
315315
316316# Build everything
317317npm run build:all
318- ````
318+ ```
319319
320320### Development Commands
321321
0 commit comments