From 97b33c17bd1b4e7043562a152d46864623dc48dc Mon Sep 17 00:00:00 2001 From: Neko Ayaka Date: Sun, 16 Mar 2025 12:48:55 +0800 Subject: [PATCH] feat(stage-ui|stage-tamagotchi): support xAI, DeepSeek, Fireworks AI, Novita, Together AI, Moonshot AI, Mistral --- .../providers/cloudflare-workers-ai.vue | 97 ++++ .../src/pages/settings/providers/deepseek.vue | 98 ++++ .../pages/settings/providers/elevenlabs.vue | 460 +++++++----------- .../pages/settings/providers/fireworks-ai.vue | 98 ++++ .../pages/settings/providers/mistral-ai.vue | 98 ++++ .../pages/settings/providers/moonshot-ai.vue | 98 ++++ .../pages/settings/providers/novita-ai.vue | 98 ++++ .../src/pages/settings/providers/openai.vue | 150 ++---- .../settings/providers/openrouter-ai.vue | 150 ++---- .../pages/settings/providers/together-ai.vue | 98 ++++ .../src/pages/settings/providers/xai.vue | 98 ++++ .../providers/cloudflare-workers-ai.vue | 97 ++++ .../src/pages/settings/providers/deepseek.vue | 98 ++++ .../pages/settings/providers/elevenlabs.vue | 460 +++++++----------- .../pages/settings/providers/fireworks-ai.vue | 98 ++++ .../pages/settings/providers/mistral-ai.vue | 98 ++++ .../pages/settings/providers/moonshot-ai.vue | 98 ++++ .../pages/settings/providers/novita-ai.vue | 98 ++++ .../src/pages/settings/providers/openai.vue | 150 ++---- .../settings/providers/openrouter-ai.vue | 150 ++---- .../pages/settings/providers/together-ai.vue | 98 ++++ .../src/pages/settings/providers/xai.vue | 98 ++++ packages/stage-ui/histoire.config.ts | 1 + packages/stage-ui/src/components/index.ts | 1 + .../providers/ProviderAccountIdInput.vue | 45 ++ .../providers/ProviderAdvancedSettings.vue | 38 ++ .../providers/ProviderApiKeyInput.vue | 46 ++ .../providers/ProviderBaseUrlInput.vue | 43 ++ .../providers/ProviderBasicSettings.vue | 34 ++ .../providers/ProviderCheckboxInput.vue | 37 ++ .../providers/ProviderSettingsContainer.vue | 9 + .../providers/ProviderSettingsLayout.vue | 35 ++ .../providers/ProviderSliderInput.vue | 55 +++ .../src/components/providers/index.ts | 9 + 34 files changed, 2393 insertions(+), 1046 deletions(-) create mode 100644 apps/stage-tamagotchi/src/renderer/src/pages/settings/providers/cloudflare-workers-ai.vue create mode 100644 apps/stage-tamagotchi/src/renderer/src/pages/settings/providers/deepseek.vue create mode 100644 apps/stage-tamagotchi/src/renderer/src/pages/settings/providers/fireworks-ai.vue create mode 100644 apps/stage-tamagotchi/src/renderer/src/pages/settings/providers/mistral-ai.vue create mode 100644 apps/stage-tamagotchi/src/renderer/src/pages/settings/providers/moonshot-ai.vue create mode 100644 apps/stage-tamagotchi/src/renderer/src/pages/settings/providers/novita-ai.vue create mode 100644 apps/stage-tamagotchi/src/renderer/src/pages/settings/providers/together-ai.vue create mode 100644 apps/stage-tamagotchi/src/renderer/src/pages/settings/providers/xai.vue create mode 100644 apps/stage-web/src/pages/settings/providers/cloudflare-workers-ai.vue create mode 100644 apps/stage-web/src/pages/settings/providers/deepseek.vue create mode 100644 apps/stage-web/src/pages/settings/providers/fireworks-ai.vue create mode 100644 apps/stage-web/src/pages/settings/providers/mistral-ai.vue create mode 100644 apps/stage-web/src/pages/settings/providers/moonshot-ai.vue create mode 100644 apps/stage-web/src/pages/settings/providers/novita-ai.vue create mode 100644 apps/stage-web/src/pages/settings/providers/together-ai.vue create mode 100644 apps/stage-web/src/pages/settings/providers/xai.vue create mode 100644 packages/stage-ui/src/components/providers/ProviderAccountIdInput.vue create mode 100644 packages/stage-ui/src/components/providers/ProviderAdvancedSettings.vue create mode 100644 packages/stage-ui/src/components/providers/ProviderApiKeyInput.vue create mode 100644 packages/stage-ui/src/components/providers/ProviderBaseUrlInput.vue create mode 100644 packages/stage-ui/src/components/providers/ProviderBasicSettings.vue create mode 100644 packages/stage-ui/src/components/providers/ProviderCheckboxInput.vue create mode 100644 packages/stage-ui/src/components/providers/ProviderSettingsContainer.vue create mode 100644 packages/stage-ui/src/components/providers/ProviderSettingsLayout.vue create mode 100644 packages/stage-ui/src/components/providers/ProviderSliderInput.vue create mode 100644 packages/stage-ui/src/components/providers/index.ts diff --git a/apps/stage-tamagotchi/src/renderer/src/pages/settings/providers/cloudflare-workers-ai.vue b/apps/stage-tamagotchi/src/renderer/src/pages/settings/providers/cloudflare-workers-ai.vue new file mode 100644 index 000000000..3e124095b --- /dev/null +++ b/apps/stage-tamagotchi/src/renderer/src/pages/settings/providers/cloudflare-workers-ai.vue @@ -0,0 +1,97 @@ + + + diff --git a/apps/stage-tamagotchi/src/renderer/src/pages/settings/providers/deepseek.vue b/apps/stage-tamagotchi/src/renderer/src/pages/settings/providers/deepseek.vue new file mode 100644 index 000000000..72ae850c6 --- /dev/null +++ b/apps/stage-tamagotchi/src/renderer/src/pages/settings/providers/deepseek.vue @@ -0,0 +1,98 @@ + + + diff --git a/apps/stage-tamagotchi/src/renderer/src/pages/settings/providers/elevenlabs.vue b/apps/stage-tamagotchi/src/renderer/src/pages/settings/providers/elevenlabs.vue index 73ac7c0e8..d0cda7641 100644 --- a/apps/stage-tamagotchi/src/renderer/src/pages/settings/providers/elevenlabs.vue +++ b/apps/stage-tamagotchi/src/renderer/src/pages/settings/providers/elevenlabs.vue @@ -4,10 +4,18 @@ import type { RemovableRef } from '@vueuse/core' import type { UnElevenLabsOptions } from '@xsai-ext/providers-local' import type { SpeechProviderWithExtraOptions } from '@xsai-ext/shared-providers' -import { Collapsable, Range } from '@proj-airi/stage-ui/components' +import { + ProviderAdvancedSettings, + ProviderApiKeyInput, + ProviderBaseUrlInput, + ProviderBasicSettings, + ProviderCheckboxInput, + ProviderSettingsContainer, + ProviderSettingsLayout, + ProviderSliderInput, +} from '@proj-airi/stage-ui/components' import { voiceMap } from '@proj-airi/stage-ui/constants' import { useProvidersStore, useSpeechStore } from '@proj-airi/stage-ui/stores' -import { useToggle } from '@vueuse/core' import { generateSpeech } from '@xsai/generate-speech' import { storeToRefs } from 'pinia' import { computed, onMounted, onUnmounted, ref, watch } from 'vue' @@ -115,9 +123,6 @@ const selectedLanguage = ref(speechStore.selectedLanguage) const selectedVoice = ref(speechStore.voiceName) const availableVoices = computed(() => speechStore.availableVoicesForLanguage) -const advancedVisible = ref(false) -const toggleAdvancedVisible = useToggle(advancedVisible) - onMounted(() => { providersStore.initializeProvider(providerId) @@ -239,300 +244,173 @@ function handleResetVoiceSettings() {