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:
Jamie Pine
2026-01-25 16:38:25 -08:00
parent 45c4c2f488
commit e7e3a0a440
87 changed files with 2421 additions and 1628 deletions
@@ -3,7 +3,6 @@
/* tslint:disable */
/* eslint-disable */
export type Body_add_profile_sample_profiles__profile_id__samples_post = {
file: Blob;
reference_text: string;
file: Blob;
reference_text: string;
};
@@ -3,7 +3,6 @@
/* tslint:disable */
/* eslint-disable */
export type Body_transcribe_audio_transcribe_post = {
file: Blob;
language?: (string | null);
file: Blob;
language?: string | null;
};
+6 -6
View File
@@ -6,10 +6,10 @@
* Request model for voice generation.
*/
export type GenerationRequest = {
profile_id: string;
text: string;
language?: string;
seed?: (number | null);
model_size?: (string | null);
profile_id: string;
text: string;
language?: string;
seed?: number | null;
model_size?: string | null;
instruct?: string | null;
};
+9 -9
View File
@@ -6,13 +6,13 @@
* Response model for voice generation.
*/
export type GenerationResponse = {
id: string;
profile_id: string;
text: string;
language: string;
audio_path: string;
duration: number;
seed: (number | null);
created_at: string;
id: string;
profile_id: string;
text: string;
language: string;
audio_path: string;
duration: number;
seed: number | null;
instruct: string | null;
created_at: string;
};
@@ -4,6 +4,5 @@
/* eslint-disable */
import type { ValidationError } from './ValidationError';
export type HTTPValidationError = {
detail?: Array<ValidationError>;
detail?: Array<ValidationError>;
};
+6 -7
View File
@@ -6,11 +6,10 @@
* Response model for health check.
*/
export type HealthResponse = {
status: string;
model_loaded: boolean;
model_downloaded?: (boolean | null);
model_size?: (string | null);
gpu_available: boolean;
vram_used_mb?: (number | null);
status: string;
model_loaded: boolean;
model_downloaded?: boolean | null;
model_size?: string | null;
gpu_available: boolean;
vram_used_mb?: number | null;
};
@@ -7,7 +7,6 @@ import type { HistoryResponse } from './HistoryResponse';
* Response model for history list.
*/
export type HistoryListResponse = {
items: Array<HistoryResponse>;
total: number;
items: Array<HistoryResponse>;
total: number;
};
+10 -10
View File
@@ -6,14 +6,14 @@
* Response model for history entry (includes profile name).
*/
export type HistoryResponse = {
id: string;
profile_id: string;
profile_name: string;
text: string;
language: string;
audio_path: string;
duration: number;
seed: (number | null);
created_at: string;
id: string;
profile_id: string;
profile_name: string;
text: string;
language: string;
audio_path: string;
duration: number;
seed: number | null;
instruct: string | null;
created_at: string;
};
@@ -6,6 +6,5 @@
* Request model for triggering model download.
*/
export type ModelDownloadRequest = {
model_name: string;
model_name: string;
};
+5 -6
View File
@@ -6,10 +6,9 @@
* Response model for model status.
*/
export type ModelStatus = {
model_name: string;
display_name: string;
downloaded: boolean;
size_mb?: (number | null);
loaded?: boolean;
model_name: string;
display_name: string;
downloaded: boolean;
size_mb?: number | null;
loaded?: boolean;
};
@@ -7,6 +7,5 @@ import type { ModelStatus } from './ModelStatus';
* Response model for model status list.
*/
export type ModelStatusListResponse = {
models: Array<ModelStatus>;
models: Array<ModelStatus>;
};
@@ -6,9 +6,8 @@
* Response model for profile sample.
*/
export type ProfileSampleResponse = {
id: string;
profile_id: string;
audio_path: string;
reference_text: string;
id: string;
profile_id: string;
audio_path: string;
reference_text: string;
};
@@ -6,7 +6,6 @@
* Response model for transcription.
*/
export type TranscriptionResponse = {
text: string;
duration: number;
text: string;
duration: number;
};
+3 -4
View File
@@ -3,8 +3,7 @@
/* tslint:disable */
/* eslint-disable */
export type ValidationError = {
loc: Array<(string | number)>;
msg: string;
type: string;
loc: Array<string | number>;
msg: string;
type: string;
};
+3 -4
View File
@@ -6,8 +6,7 @@
* Request model for creating a voice profile.
*/
export type VoiceProfileCreate = {
name: string;
description?: (string | null);
language?: string;
name: string;
description?: string | null;
language?: string;
};
@@ -6,11 +6,10 @@
* Response model for voice profile.
*/
export type VoiceProfileResponse = {
id: string;
name: string;
description: (string | null);
language: string;
created_at: string;
updated_at: string;
id: string;
name: string;
description: string | null;
language: string;
created_at: string;
updated_at: string;
};