diff --git a/apps/stage-tamagotchi/src/pages/settings/airi-card/components/CardDetailDialog.vue b/apps/stage-tamagotchi/src/pages/settings/airi-card/components/CardDetailDialog.vue new file mode 100644 index 000000000..dfc90e68c --- /dev/null +++ b/apps/stage-tamagotchi/src/pages/settings/airi-card/components/CardDetailDialog.vue @@ -0,0 +1,352 @@ + + + diff --git a/apps/stage-tamagotchi/src/pages/settings/airi-card/components/CardListItem.vue b/apps/stage-tamagotchi/src/pages/settings/airi-card/components/CardListItem.vue new file mode 100644 index 000000000..5f1981e30 --- /dev/null +++ b/apps/stage-tamagotchi/src/pages/settings/airi-card/components/CardListItem.vue @@ -0,0 +1,99 @@ + + + diff --git a/apps/stage-tamagotchi/src/pages/settings/airi-card/components/DeleteCardDialog.vue b/apps/stage-tamagotchi/src/pages/settings/airi-card/components/DeleteCardDialog.vue new file mode 100644 index 000000000..f2276f74e --- /dev/null +++ b/apps/stage-tamagotchi/src/pages/settings/airi-card/components/DeleteCardDialog.vue @@ -0,0 +1,73 @@ + + + diff --git a/apps/stage-tamagotchi/src/pages/settings/airi-card/index.vue b/apps/stage-tamagotchi/src/pages/settings/airi-card/index.vue new file mode 100644 index 000000000..67876e448 --- /dev/null +++ b/apps/stage-tamagotchi/src/pages/settings/airi-card/index.vue @@ -0,0 +1,339 @@ + + + + + +meta: + stageTransition: + name: slide + diff --git a/apps/stage-tamagotchi/src/pages/settings/appearance/color-presets.json b/apps/stage-tamagotchi/src/pages/settings/appearance/color-presets.json new file mode 100644 index 000000000..b659d27f2 --- /dev/null +++ b/apps/stage-tamagotchi/src/pages/settings/appearance/color-presets.json @@ -0,0 +1,8 @@ +[ + [], + ["#A5978B", "#D8CAAF", "#B8B4A7", "#C4BCB1", "#E5DED8", "#9A8F7D", "#BEB5A7", "#C9C0B6"], + ["#7A9EAF", "#B8C7CC", "#D4B79C", "#8B9D77", "#C7D5CB", "#E6D0B1", "#94A7B1", "#B4C8C3"], + ["#D9B48F", "#B5917A", "#8C7A6B", "#A17F5F", "#B98C46", "#C7A252", "#DAB300", "#D19826"], + ["#9BA7B0", "#C1CBD4", "#A5ADB6", "#8B959E", "#D4DCE4", "#7F8A94", "#B3BCC6", "#98A4AE"], + ["#E4C6D0", "#A61B29", "#5D513C", "#789262", "#1C0D1A", "#F7C242", "#62A9DD", "#8C4B3C"] +] diff --git a/apps/stage-tamagotchi/src/pages/settings/appearance/index.vue b/apps/stage-tamagotchi/src/pages/settings/appearance/index.vue new file mode 100644 index 000000000..4ea27020f --- /dev/null +++ b/apps/stage-tamagotchi/src/pages/settings/appearance/index.vue @@ -0,0 +1,347 @@ + + + + + + + +meta: + stageTransition: + name: slide + pageSpecificAvailable: true + diff --git a/apps/stage-tamagotchi/src/pages/settings/index.vue b/apps/stage-tamagotchi/src/pages/settings/index.vue index 156852552..ecf057335 100644 --- a/apps/stage-tamagotchi/src/pages/settings/index.vue +++ b/apps/stage-tamagotchi/src/pages/settings/index.vue @@ -1,221 +1,159 @@ diff --git a/apps/stage-tamagotchi/src/pages/settings/memory/index.vue b/apps/stage-tamagotchi/src/pages/settings/memory/index.vue new file mode 100644 index 000000000..bab94751e --- /dev/null +++ b/apps/stage-tamagotchi/src/pages/settings/memory/index.vue @@ -0,0 +1,49 @@ + + + diff --git a/apps/stage-tamagotchi/src/pages/settings/models/index.vue b/apps/stage-tamagotchi/src/pages/settings/models/index.vue index 5ad418260..f43798b71 100644 --- a/apps/stage-tamagotchi/src/pages/settings/models/index.vue +++ b/apps/stage-tamagotchi/src/pages/settings/models/index.vue @@ -1,6 +1,7 @@ @@ -76,4 +97,5 @@ async function extractColorsFromModel() { meta: stageTransition: name: slide + pageSpecificAvailable: true diff --git a/apps/stage-tamagotchi/src/pages/settings/modules/consciousness.vue b/apps/stage-tamagotchi/src/pages/settings/modules/consciousness.vue index fc43ef65a..e9c4df044 100644 --- a/apps/stage-tamagotchi/src/pages/settings/modules/consciousness.vue +++ b/apps/stage-tamagotchi/src/pages/settings/modules/consciousness.vue @@ -214,7 +214,7 @@ function updateCustomModelName(value: string) { -
+
diff --git a/apps/stage-tamagotchi/src/pages/settings/modules/index.vue b/apps/stage-tamagotchi/src/pages/settings/modules/index.vue index 21c46b197..e4985a249 100644 --- a/apps/stage-tamagotchi/src/pages/settings/modules/index.vue +++ b/apps/stage-tamagotchi/src/pages/settings/modules/index.vue @@ -4,6 +4,9 @@ import { computed } from 'vue' import { useI18n } from 'vue-i18n' import { useRouter } from 'vue-router' +import IconAnimation from '../../../components/IconAnimation.vue' +import { useIconAnimation } from '../../../composables/useIconAnimation' + const router = useRouter() const { t } = useI18n() @@ -28,6 +31,14 @@ const modulesList = computed(() => [ to: '/settings/modules/consciousness', configured: false, }, + { + id: 'speech', + name: t('settings.pages.modules.speech.title'), + description: t('settings.pages.modules.speech.description'), + icon: 'i-lucide:mic', + to: '/settings/modules/speech', + configured: false, + }, { id: 'hearing', name: t('settings.pages.modules.hearing.title'), @@ -36,6 +47,30 @@ const modulesList = computed(() => [ to: '', configured: false, }, + { + id: 'vision', + name: t('settings.pages.modules.vision.title'), + description: t('settings.pages.modules.vision.description'), + icon: 'i-lucide:eye', + to: '', + configured: false, + }, + { + id: 'memory-short-term', + name: t('settings.pages.modules.memory-short-term.title'), + description: t('settings.pages.modules.memory-short-term.description'), + icon: 'i-lucide:book', + to: '/settings/modules/memory-short-term', + configured: false, + }, + { + id: 'memory-long-term', + name: t('settings.pages.modules.memory-long-term.title'), + description: t('settings.pages.modules.memory-long-term.description'), + icon: 'i-lucide:book-copy', + to: '/settings/modules/memory-long-term', + configured: false, + }, { id: 'messaging-discord', name: t('settings.pages.modules.messaging-discord.title'), @@ -45,34 +80,10 @@ const modulesList = computed(() => [ configured: false, }, { - id: 'speech', - name: t('settings.pages.modules.speech.title'), - description: t('settings.pages.modules.speech.description'), - icon: 'i-lucide:mic', - to: '/settings/modules/speech', - configured: false, - }, - { - id: 'memory-short-term', - name: t('settings.pages.modules.memory-short-term.title'), - description: t('settings.pages.modules.memory-short-term.description'), - icon: 'i-lucide:book', - to: '', - configured: false, - }, - { - id: 'memory-long-term', - name: t('settings.pages.modules.memory-long-term.title'), - description: t('settings.pages.modules.memory-long-term.description'), - icon: 'i-lucide:book-copy', - to: '', - configured: false, - }, - { - id: 'vision', - name: t('settings.pages.modules.vision.title'), - description: t('settings.pages.modules.vision.description'), - icon: 'i-lucide:eye', + id: 'x', + name: t('settings.pages.modules.x.title'), + description: t('settings.pages.modules.x.description'), + icon: 'i-simple-icons:x', to: '', configured: false, }, @@ -92,15 +103,13 @@ const modulesList = computed(() => [ to: '', configured: false, }, - { - id: 'x', - name: t('settings.pages.modules.x.title'), - description: t('settings.pages.modules.x.description'), - icon: 'i-simple-icons:x', - to: '', - configured: false, - }, ]) + +const { + iconAnimationStarted, + showIconAnimation, + animationIcon, +} = useIconAnimation('i-lucide:blocks') @@ -151,4 +178,5 @@ const modulesList = computed(() => [ meta: stageTransition: name: slide + pageSpecificAvailable: true diff --git a/apps/stage-tamagotchi/src/pages/settings/modules/memory-long-term.vue b/apps/stage-tamagotchi/src/pages/settings/modules/memory-long-term.vue new file mode 100644 index 000000000..0ccec0404 --- /dev/null +++ b/apps/stage-tamagotchi/src/pages/settings/modules/memory-long-term.vue @@ -0,0 +1,33 @@ + + + diff --git a/apps/stage-tamagotchi/src/pages/settings/modules/memory-short-term.vue b/apps/stage-tamagotchi/src/pages/settings/modules/memory-short-term.vue new file mode 100644 index 000000000..0aa8cc944 --- /dev/null +++ b/apps/stage-tamagotchi/src/pages/settings/modules/memory-short-term.vue @@ -0,0 +1,33 @@ + + + diff --git a/apps/stage-tamagotchi/src/pages/settings/providers/index.vue b/apps/stage-tamagotchi/src/pages/settings/providers/index.vue index 6dad4b874..18aa02a2b 100644 --- a/apps/stage-tamagotchi/src/pages/settings/providers/index.vue +++ b/apps/stage-tamagotchi/src/pages/settings/providers/index.vue @@ -5,10 +5,18 @@ import { storeToRefs } from 'pinia' import { useI18n } from 'vue-i18n' import { useRouter } from 'vue-router' +import { useIconAnimation } from '../../../composables/useIconAnimation' + const { t } = useI18n() const router = useRouter() const providersStore = useProvidersStore() const { allProvidersMetadata } = storeToRefs(providersStore) + +const { + iconAnimationStarted, + showIconAnimation, + animationIcon, +} = useIconAnimation('i-lucide:brain') @@ -59,4 +85,5 @@ const { allProvidersMetadata } = storeToRefs(providersStore) meta: stageTransition: name: slide + pageSpecificAvailable: true diff --git a/apps/stage-tamagotchi/src/pages/settings/shortcuts/index.vue b/apps/stage-tamagotchi/src/pages/settings/shortcuts/index.vue deleted file mode 100644 index 73c452f52..000000000 --- a/apps/stage-tamagotchi/src/pages/settings/shortcuts/index.vue +++ /dev/null @@ -1,165 +0,0 @@ - - - diff --git a/apps/stage-tamagotchi/src/pages/settings/themes/index.vue b/apps/stage-tamagotchi/src/pages/settings/themes/index.vue deleted file mode 100644 index 76683f174..000000000 --- a/apps/stage-tamagotchi/src/pages/settings/themes/index.vue +++ /dev/null @@ -1,423 +0,0 @@ - - - - - - - -meta: - stageTransition: - name: slide - diff --git a/apps/stage-web/src/pages/settings/airi-card/index.vue b/apps/stage-web/src/pages/settings/airi-card/index.vue index b97064d54..564f60f9a 100644 --- a/apps/stage-web/src/pages/settings/airi-card/index.vue +++ b/apps/stage-web/src/pages/settings/airi-card/index.vue @@ -320,8 +320,15 @@ function getModuleShortName(id: string, module: 'consciousness' | 'voice') { /> -
-
+
+
diff --git a/apps/stage-web/src/pages/settings/appearance/index.vue b/apps/stage-web/src/pages/settings/appearance/index.vue index 2461b19fb..4ea27020f 100644 --- a/apps/stage-web/src/pages/settings/appearance/index.vue +++ b/apps/stage-web/src/pages/settings/appearance/index.vue @@ -48,19 +48,40 @@ watch(() => [settings.usePageSpecificTransitions, settings.disableTransitions],
-
+
{{ $t('settings.language.title') }} [settings.usePageSpecificTransitions, settings.disableTransitions],
-
+
50 100 200 300 400 500 -
+
600 700 800 @@ -114,7 +174,15 @@ watch(() => [settings.usePageSpecificTransitions, settings.disableTransitions], 950
-
+
500/5 500/10 500/20 @@ -129,12 +197,26 @@ watch(() => [settings.usePageSpecificTransitions, settings.disableTransitions],
-
+
{{ $rt(title) }} @@ -146,20 +228,40 @@ watch(() => [settings.usePageSpecificTransitions, settings.disableTransitions],
-
+
@@ -174,8 +276,15 @@ watch(() => [settings.usePageSpecificTransitions, settings.disableTransitions], position="calc(100dvw - 9.5rem), calc(100dvh - 9.5rem)" text-color="text-neutral-200/50 dark:text-neutral-600/20" /> -
-
+
+
diff --git a/apps/stage-web/src/pages/settings/index.vue b/apps/stage-web/src/pages/settings/index.vue index dd5054275..ecf057335 100644 --- a/apps/stage-web/src/pages/settings/index.vue +++ b/apps/stage-web/src/pages/settings/index.vue @@ -130,10 +130,17 @@ const settings = computed(() => [ :description="setting.description" :icon="setting.icon" :to="setting.to" - @click="(e) => handleIconItemClick(e, setting)" + @click="(e: Event) => handleIconItemClick(e, setting)" />
-
+
+
+
+
diff --git a/apps/stage-web/src/pages/settings/modules/index.vue b/apps/stage-web/src/pages/settings/modules/index.vue index 15cb32ca9..e4985a249 100644 --- a/apps/stage-web/src/pages/settings/modules/index.vue +++ b/apps/stage-web/src/pages/settings/modules/index.vue @@ -1,6 +1,5 @@