Silly bug that caused the extension when used with the legacy V1 AllTalk server, would cause it to skip downloading Narrator voices.
Literally changed "v2" to "v1" on line 391
No other changes.
1. Core Feature Addition:
- Added AllTalk V1/V2 server version selection
- Added RVC (Realistic Voice Conversion) support for V2
- RVC features are automatically disabled when V1 is selected
2. Code Improvements:
- Replaced custom debounce implementation with shared utils.js debounce utility
- Fixed linting issues:
- Converted HTML attribute quotes in template literals to single quotes
- Added trailing commas where required
- Fixed console.error message formatting
3. New Settings/Properties Added:
```javascript
server_version: 'v2' (default)
rvc_character_voice: 'Disabled'
rvc_character_pitch: '0'
rvc_narrator_voice: 'Disabled'
rvc_narrator_pitch: '0'
```
4. Bug Fixes/Improvements:
- Better error handling for RVC voice fetching
- Improved URL handling for V1/V2 differences in API responses
- Enhanced settings initialization and validation
5. Structural Changes:
- Added RVC-specific UI elements and controls
- Added version-specific logic for API endpoints
- Improved settings synchronization between UI and backend
**NOTE** On line 70 there is an eslint bypass:
```javascript
// HTML template literals can trigger ESLint quotes warnings when quotes are used in HTML attributes.
// Disabling quotes rule for this one line as it's a false positive with HTML template literals.
// eslint-disable-next-line quotes
let html = `<div class="at-settings-separator">AllTalk V2 Settings</div>`;
```
The reason is:
1. ESLint's quotes rule wants all strings to use single quotes
2. However, this is a template literal containing HTML, where double quotes are standard for attributes
3. I tried various solutions:
- Using single quotes: `<div class='at-settings-separator'>`
- Using double quotes: `<div class="at-settings-separator">`
- Even tried escaping quotes
But ESLint just kept flagging it as an error
AllTalk TTS initial commit from https://github.com/erew123/alltalk_tts
ST index.js is updated to have "Pass Asterisks to TTS Engine" which allows AllTalk to split text as character/narrator voices. This setting has been left disabled as standard, so wont affect other TTS engines. The setting will save along with other settings on the page (if checked).