mirror of
https://github.com/jamiepine/voicebox.git
synced 2026-10-02 16:45:15 -07:00
Update dependencies and enhance UI components for better functionality
- Added new Tauri plugins: @tauri-apps/plugin-process and @tauri-apps/plugin-updater to improve application capabilities. - Introduced UpdateStatus component to display update information in the UI. - Enhanced GenerationForm to include an optional instruct field for additional input. - Refactored various components for improved styling and responsiveness, including Sidebar, AudioPlayer, and ProfileCard. - Updated API models and schemas to accommodate new instruct parameter in generation requests and responses. - Improved documentation for autoupdater setup and usage.
This commit is contained in:
+10
-10
@@ -3,15 +3,15 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
export const $Body_add_profile_sample_profiles__profile_id__samples_post = {
|
||||
properties: {
|
||||
file: {
|
||||
type: 'binary',
|
||||
isRequired: true,
|
||||
format: 'binary',
|
||||
},
|
||||
reference_text: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
properties: {
|
||||
file: {
|
||||
type: 'binary',
|
||||
isRequired: true,
|
||||
format: 'binary',
|
||||
},
|
||||
reference_text: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
},
|
||||
} as const;
|
||||
|
||||
@@ -3,19 +3,22 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
export const $Body_transcribe_audio_transcribe_post = {
|
||||
properties: {
|
||||
file: {
|
||||
type: 'binary',
|
||||
isRequired: true,
|
||||
format: 'binary',
|
||||
},
|
||||
language: {
|
||||
type: 'any-of',
|
||||
contains: [{
|
||||
type: 'string',
|
||||
}, {
|
||||
type: 'null',
|
||||
}],
|
||||
},
|
||||
properties: {
|
||||
file: {
|
||||
type: 'binary',
|
||||
isRequired: true,
|
||||
format: 'binary',
|
||||
},
|
||||
language: {
|
||||
type: 'any-of',
|
||||
contains: [
|
||||
{
|
||||
type: 'string',
|
||||
},
|
||||
{
|
||||
type: 'null',
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
} as const;
|
||||
|
||||
@@ -3,38 +3,44 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
export const $GenerationRequest = {
|
||||
description: `Request model for voice generation.`,
|
||||
properties: {
|
||||
profile_id: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
text: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
maxLength: 5000,
|
||||
minLength: 1,
|
||||
},
|
||||
language: {
|
||||
type: 'string',
|
||||
pattern: '^(en|zh)$',
|
||||
},
|
||||
seed: {
|
||||
type: 'any-of',
|
||||
contains: [{
|
||||
type: 'number',
|
||||
}, {
|
||||
type: 'null',
|
||||
}],
|
||||
},
|
||||
model_size: {
|
||||
type: 'any-of',
|
||||
contains: [{
|
||||
type: 'string',
|
||||
pattern: '^(1\\.7B|0\\.6B)$',
|
||||
}, {
|
||||
type: 'null',
|
||||
}],
|
||||
},
|
||||
description: `Request model for voice generation.`,
|
||||
properties: {
|
||||
profile_id: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
text: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
maxLength: 5000,
|
||||
minLength: 1,
|
||||
},
|
||||
language: {
|
||||
type: 'string',
|
||||
pattern: '^(en|zh)$',
|
||||
},
|
||||
seed: {
|
||||
type: 'any-of',
|
||||
contains: [
|
||||
{
|
||||
type: 'number',
|
||||
},
|
||||
{
|
||||
type: 'null',
|
||||
},
|
||||
],
|
||||
},
|
||||
model_size: {
|
||||
type: 'any-of',
|
||||
contains: [
|
||||
{
|
||||
type: 'string',
|
||||
pattern: '^(1\\.7B|0\\.6B)$',
|
||||
},
|
||||
{
|
||||
type: 'null',
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
} as const;
|
||||
|
||||
@@ -3,45 +3,48 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
export const $GenerationResponse = {
|
||||
description: `Response model for voice generation.`,
|
||||
properties: {
|
||||
id: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
profile_id: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
text: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
language: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
audio_path: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
duration: {
|
||||
type: 'number',
|
||||
isRequired: true,
|
||||
},
|
||||
seed: {
|
||||
type: 'any-of',
|
||||
contains: [{
|
||||
type: 'number',
|
||||
}, {
|
||||
type: 'null',
|
||||
}],
|
||||
isRequired: true,
|
||||
},
|
||||
created_at: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
format: 'date-time',
|
||||
},
|
||||
description: `Response model for voice generation.`,
|
||||
properties: {
|
||||
id: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
profile_id: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
text: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
language: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
audio_path: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
duration: {
|
||||
type: 'number',
|
||||
isRequired: true,
|
||||
},
|
||||
seed: {
|
||||
type: 'any-of',
|
||||
contains: [
|
||||
{
|
||||
type: 'number',
|
||||
},
|
||||
{
|
||||
type: 'null',
|
||||
},
|
||||
],
|
||||
isRequired: true,
|
||||
},
|
||||
created_at: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
format: 'date-time',
|
||||
},
|
||||
},
|
||||
} as const;
|
||||
|
||||
@@ -3,12 +3,12 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
export const $HTTPValidationError = {
|
||||
properties: {
|
||||
detail: {
|
||||
type: 'array',
|
||||
contains: {
|
||||
type: 'ValidationError',
|
||||
},
|
||||
},
|
||||
properties: {
|
||||
detail: {
|
||||
type: 'array',
|
||||
contains: {
|
||||
type: 'ValidationError',
|
||||
},
|
||||
},
|
||||
},
|
||||
} as const;
|
||||
|
||||
@@ -3,43 +3,52 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
export const $HealthResponse = {
|
||||
description: `Response model for health check.`,
|
||||
properties: {
|
||||
status: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
model_loaded: {
|
||||
type: 'boolean',
|
||||
isRequired: true,
|
||||
},
|
||||
model_downloaded: {
|
||||
type: 'any-of',
|
||||
contains: [{
|
||||
type: 'boolean',
|
||||
}, {
|
||||
type: 'null',
|
||||
}],
|
||||
},
|
||||
model_size: {
|
||||
type: 'any-of',
|
||||
contains: [{
|
||||
type: 'string',
|
||||
}, {
|
||||
type: 'null',
|
||||
}],
|
||||
},
|
||||
gpu_available: {
|
||||
type: 'boolean',
|
||||
isRequired: true,
|
||||
},
|
||||
vram_used_mb: {
|
||||
type: 'any-of',
|
||||
contains: [{
|
||||
type: 'number',
|
||||
}, {
|
||||
type: 'null',
|
||||
}],
|
||||
},
|
||||
description: `Response model for health check.`,
|
||||
properties: {
|
||||
status: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
model_loaded: {
|
||||
type: 'boolean',
|
||||
isRequired: true,
|
||||
},
|
||||
model_downloaded: {
|
||||
type: 'any-of',
|
||||
contains: [
|
||||
{
|
||||
type: 'boolean',
|
||||
},
|
||||
{
|
||||
type: 'null',
|
||||
},
|
||||
],
|
||||
},
|
||||
model_size: {
|
||||
type: 'any-of',
|
||||
contains: [
|
||||
{
|
||||
type: 'string',
|
||||
},
|
||||
{
|
||||
type: 'null',
|
||||
},
|
||||
],
|
||||
},
|
||||
gpu_available: {
|
||||
type: 'boolean',
|
||||
isRequired: true,
|
||||
},
|
||||
vram_used_mb: {
|
||||
type: 'any-of',
|
||||
contains: [
|
||||
{
|
||||
type: 'number',
|
||||
},
|
||||
{
|
||||
type: 'null',
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
} as const;
|
||||
|
||||
@@ -3,18 +3,18 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
export const $HistoryListResponse = {
|
||||
description: `Response model for history list.`,
|
||||
properties: {
|
||||
items: {
|
||||
type: 'array',
|
||||
contains: {
|
||||
type: 'HistoryResponse',
|
||||
},
|
||||
isRequired: true,
|
||||
},
|
||||
total: {
|
||||
type: 'number',
|
||||
isRequired: true,
|
||||
},
|
||||
description: `Response model for history list.`,
|
||||
properties: {
|
||||
items: {
|
||||
type: 'array',
|
||||
contains: {
|
||||
type: 'HistoryResponse',
|
||||
},
|
||||
isRequired: true,
|
||||
},
|
||||
total: {
|
||||
type: 'number',
|
||||
isRequired: true,
|
||||
},
|
||||
},
|
||||
} as const;
|
||||
|
||||
@@ -3,49 +3,52 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
export const $HistoryResponse = {
|
||||
description: `Response model for history entry (includes profile name).`,
|
||||
properties: {
|
||||
id: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
profile_id: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
profile_name: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
text: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
language: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
audio_path: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
duration: {
|
||||
type: 'number',
|
||||
isRequired: true,
|
||||
},
|
||||
seed: {
|
||||
type: 'any-of',
|
||||
contains: [{
|
||||
type: 'number',
|
||||
}, {
|
||||
type: 'null',
|
||||
}],
|
||||
isRequired: true,
|
||||
},
|
||||
created_at: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
format: 'date-time',
|
||||
},
|
||||
description: `Response model for history entry (includes profile name).`,
|
||||
properties: {
|
||||
id: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
profile_id: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
profile_name: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
text: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
language: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
audio_path: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
duration: {
|
||||
type: 'number',
|
||||
isRequired: true,
|
||||
},
|
||||
seed: {
|
||||
type: 'any-of',
|
||||
contains: [
|
||||
{
|
||||
type: 'number',
|
||||
},
|
||||
{
|
||||
type: 'null',
|
||||
},
|
||||
],
|
||||
isRequired: true,
|
||||
},
|
||||
created_at: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
format: 'date-time',
|
||||
},
|
||||
},
|
||||
} as const;
|
||||
|
||||
@@ -3,11 +3,11 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
export const $ModelDownloadRequest = {
|
||||
description: `Request model for triggering model download.`,
|
||||
properties: {
|
||||
model_name: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
description: `Request model for triggering model download.`,
|
||||
properties: {
|
||||
model_name: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
},
|
||||
} as const;
|
||||
|
||||
@@ -3,30 +3,33 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
export const $ModelStatus = {
|
||||
description: `Response model for model status.`,
|
||||
properties: {
|
||||
model_name: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
display_name: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
downloaded: {
|
||||
type: 'boolean',
|
||||
isRequired: true,
|
||||
},
|
||||
size_mb: {
|
||||
type: 'any-of',
|
||||
contains: [{
|
||||
type: 'number',
|
||||
}, {
|
||||
type: 'null',
|
||||
}],
|
||||
},
|
||||
loaded: {
|
||||
type: 'boolean',
|
||||
},
|
||||
description: `Response model for model status.`,
|
||||
properties: {
|
||||
model_name: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
display_name: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
downloaded: {
|
||||
type: 'boolean',
|
||||
isRequired: true,
|
||||
},
|
||||
size_mb: {
|
||||
type: 'any-of',
|
||||
contains: [
|
||||
{
|
||||
type: 'number',
|
||||
},
|
||||
{
|
||||
type: 'null',
|
||||
},
|
||||
],
|
||||
},
|
||||
loaded: {
|
||||
type: 'boolean',
|
||||
},
|
||||
},
|
||||
} as const;
|
||||
|
||||
@@ -3,14 +3,14 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
export const $ModelStatusListResponse = {
|
||||
description: `Response model for model status list.`,
|
||||
properties: {
|
||||
models: {
|
||||
type: 'array',
|
||||
contains: {
|
||||
type: 'ModelStatus',
|
||||
},
|
||||
isRequired: true,
|
||||
},
|
||||
description: `Response model for model status list.`,
|
||||
properties: {
|
||||
models: {
|
||||
type: 'array',
|
||||
contains: {
|
||||
type: 'ModelStatus',
|
||||
},
|
||||
isRequired: true,
|
||||
},
|
||||
},
|
||||
} as const;
|
||||
|
||||
@@ -3,23 +3,23 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
export const $ProfileSampleResponse = {
|
||||
description: `Response model for profile sample.`,
|
||||
properties: {
|
||||
id: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
profile_id: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
audio_path: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
reference_text: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
description: `Response model for profile sample.`,
|
||||
properties: {
|
||||
id: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
profile_id: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
audio_path: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
reference_text: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
},
|
||||
} as const;
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
export const $TranscriptionResponse = {
|
||||
description: `Response model for transcription.`,
|
||||
properties: {
|
||||
text: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
duration: {
|
||||
type: 'number',
|
||||
isRequired: true,
|
||||
},
|
||||
description: `Response model for transcription.`,
|
||||
properties: {
|
||||
text: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
duration: {
|
||||
type: 'number',
|
||||
isRequired: true,
|
||||
},
|
||||
},
|
||||
} as const;
|
||||
|
||||
@@ -3,26 +3,29 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
export const $ValidationError = {
|
||||
properties: {
|
||||
loc: {
|
||||
type: 'array',
|
||||
contains: {
|
||||
type: 'any-of',
|
||||
contains: [{
|
||||
type: 'string',
|
||||
}, {
|
||||
type: 'number',
|
||||
}],
|
||||
},
|
||||
isRequired: true,
|
||||
},
|
||||
msg: {
|
||||
properties: {
|
||||
loc: {
|
||||
type: 'array',
|
||||
contains: {
|
||||
type: 'any-of',
|
||||
contains: [
|
||||
{
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
type: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
type: 'number',
|
||||
},
|
||||
],
|
||||
},
|
||||
isRequired: true,
|
||||
},
|
||||
msg: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
type: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
},
|
||||
} as const;
|
||||
|
||||
@@ -3,26 +3,29 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
export const $VoiceProfileCreate = {
|
||||
description: `Request model for creating a voice profile.`,
|
||||
properties: {
|
||||
name: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
maxLength: 100,
|
||||
minLength: 1,
|
||||
},
|
||||
description: {
|
||||
type: 'any-of',
|
||||
contains: [{
|
||||
type: 'string',
|
||||
maxLength: 500,
|
||||
}, {
|
||||
type: 'null',
|
||||
}],
|
||||
},
|
||||
language: {
|
||||
type: 'string',
|
||||
pattern: '^(en|zh)$',
|
||||
},
|
||||
description: `Request model for creating a voice profile.`,
|
||||
properties: {
|
||||
name: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
maxLength: 100,
|
||||
minLength: 1,
|
||||
},
|
||||
description: {
|
||||
type: 'any-of',
|
||||
contains: [
|
||||
{
|
||||
type: 'string',
|
||||
maxLength: 500,
|
||||
},
|
||||
{
|
||||
type: 'null',
|
||||
},
|
||||
],
|
||||
},
|
||||
language: {
|
||||
type: 'string',
|
||||
pattern: '^(en|zh)$',
|
||||
},
|
||||
},
|
||||
} as const;
|
||||
|
||||
@@ -3,38 +3,41 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
export const $VoiceProfileResponse = {
|
||||
description: `Response model for voice profile.`,
|
||||
properties: {
|
||||
id: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
name: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
description: {
|
||||
type: 'any-of',
|
||||
contains: [{
|
||||
type: 'string',
|
||||
}, {
|
||||
type: 'null',
|
||||
}],
|
||||
isRequired: true,
|
||||
},
|
||||
language: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
created_at: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
format: 'date-time',
|
||||
},
|
||||
updated_at: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
format: 'date-time',
|
||||
},
|
||||
description: `Response model for voice profile.`,
|
||||
properties: {
|
||||
id: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
name: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
description: {
|
||||
type: 'any-of',
|
||||
contains: [
|
||||
{
|
||||
type: 'string',
|
||||
},
|
||||
{
|
||||
type: 'null',
|
||||
},
|
||||
],
|
||||
isRequired: true,
|
||||
},
|
||||
language: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
},
|
||||
created_at: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
format: 'date-time',
|
||||
},
|
||||
updated_at: {
|
||||
type: 'string',
|
||||
isRequired: true,
|
||||
format: 'date-time',
|
||||
},
|
||||
},
|
||||
} as const;
|
||||
|
||||
Reference in New Issue
Block a user