From 1e8b9a45e9fec0507e266d243918f2dd2c98345e Mon Sep 17 00:00:00 2001 From: Neko Ayaka Date: Mon, 29 Dec 2025 19:18:21 +0800 Subject: [PATCH] feat(stage-*): added new devtool called context flow (can be updated with more feature) --- .../src/renderer/layouts/settings.vue | 4 + .../pages/settings/system/developer.vue | 6 + apps/stage-web/src/layouts/settings.vue | 4 + .../src/pages/settings/system/developer.vue | 6 + .../src/locales/en/tamagotchi/settings.yaml | 2 + .../src/locales/es/tamagotchi/settings.yaml | 2 + .../src/locales/fr/tamagotchi/settings.yaml | 2 + .../src/locales/ja/tamagotchi/settings.yaml | 2 + .../src/locales/ko/tamagotchi/settings.yaml | 2 + .../src/locales/ru/tamagotchi/settings.yaml | 2 + .../src/locales/vi/tamagotchi/settings.yaml | 2 + .../locales/zh-Hans/tamagotchi/settings.yaml | 2 + .../locales/zh-Hant/tamagotchi/settings.yaml | 2 + .../src/pages/devtools/context-flow.vue | 682 ++++++++++++++++++ .../components/Form/SelectTab/SelectTab.vue | 7 +- 15 files changed, 723 insertions(+), 4 deletions(-) create mode 100644 packages/stage-pages/src/pages/devtools/context-flow.vue diff --git a/apps/stage-tamagotchi/src/renderer/layouts/settings.vue b/apps/stage-tamagotchi/src/renderer/layouts/settings.vue index 2101ccabc..81d49b1a2 100644 --- a/apps/stage-tamagotchi/src/renderer/layouts/settings.vue +++ b/apps/stage-tamagotchi/src/renderer/layouts/settings.vue @@ -120,6 +120,10 @@ const routeHeaderMetadataMap = computed(() => { subtitle: t('tamagotchi.settings.devtools.title'), title: t('tamagotchi.settings.devtools.pages.widgets-calling.title'), }, + '/devtools/context-flow': { + subtitle: t('tamagotchi.settings.devtools.title'), + title: t('tamagotchi.settings.devtools.pages.context-flow.title'), + }, } for (const metadata of allProvidersMetadata.value) { diff --git a/apps/stage-tamagotchi/src/renderer/pages/settings/system/developer.vue b/apps/stage-tamagotchi/src/renderer/pages/settings/system/developer.vue index 3653b8477..7ad82a6ec 100644 --- a/apps/stage-tamagotchi/src/renderer/pages/settings/system/developer.vue +++ b/apps/stage-tamagotchi/src/renderer/pages/settings/system/developer.vue @@ -35,6 +35,12 @@ const menu = computed(() => [ icon: 'i-solar:sledgehammer-bold-duotone', to: '/devtools/widgets-calling', }, + { + title: t('tamagotchi.settings.devtools.pages.context-flow.title'), + description: 'Inspect incoming context updates and outgoing chat stream events', + icon: 'i-solar:chat-square-call-bold-duotone', + to: '/devtools/context-flow', + }, { title: 'Relative Mouse', description: 'Get mouse position relative to the window', diff --git a/apps/stage-web/src/layouts/settings.vue b/apps/stage-web/src/layouts/settings.vue index 3645f1286..c4d693e8f 100644 --- a/apps/stage-web/src/layouts/settings.vue +++ b/apps/stage-web/src/layouts/settings.vue @@ -106,6 +106,10 @@ const routeHeaderMetadataMap = computed(() => { '/settings': { title: t('settings.title'), }, + '/devtools/context-flow': { + subtitle: t('tamagotchi.settings.devtools.title'), + title: t('tamagotchi.settings.devtools.pages.context-flow.title'), + }, } for (const metadata of allProvidersMetadata.value) { diff --git a/apps/stage-web/src/pages/settings/system/developer.vue b/apps/stage-web/src/pages/settings/system/developer.vue index a104e4736..f8c9750ff 100644 --- a/apps/stage-web/src/pages/settings/system/developer.vue +++ b/apps/stage-web/src/pages/settings/system/developer.vue @@ -50,6 +50,12 @@ const menu = computed(() => [ icon: 'i-solar:sledgehammer-bold-duotone', to: '/devtools/polaroid', }, + { + title: t('tamagotchi.settings.devtools.pages.context-flow.title'), + description: 'Inspect incoming context updates and outgoing chat stream events', + icon: 'i-solar:chat-square-call-bold-duotone', + to: '/devtools/context-flow', + }, { title: t('settings.pages.system.sections.section.developer.sections.section.use-magic-keys.title'), description: t('settings.pages.system.sections.section.developer.sections.section.use-magic-keys.description'), diff --git a/packages/i18n/src/locales/en/tamagotchi/settings.yaml b/packages/i18n/src/locales/en/tamagotchi/settings.yaml index 951086a33..6e5fbe1e0 100644 --- a/packages/i18n/src/locales/en/tamagotchi/settings.yaml +++ b/packages/i18n/src/locales/en/tamagotchi/settings.yaml @@ -30,5 +30,7 @@ pages: devtools: title: Developer pages: + context-flow: + title: Context Flow widgets-calling: title: Widget Calling diff --git a/packages/i18n/src/locales/es/tamagotchi/settings.yaml b/packages/i18n/src/locales/es/tamagotchi/settings.yaml index c95c6510e..6ee611d59 100644 --- a/packages/i18n/src/locales/es/tamagotchi/settings.yaml +++ b/packages/i18n/src/locales/es/tamagotchi/settings.yaml @@ -30,5 +30,7 @@ pages: devtools: title: Developer pages: + context-flow: + title: Context Flow widgets-calling: title: Widget Calling diff --git a/packages/i18n/src/locales/fr/tamagotchi/settings.yaml b/packages/i18n/src/locales/fr/tamagotchi/settings.yaml index 003addaa2..7fac21611 100644 --- a/packages/i18n/src/locales/fr/tamagotchi/settings.yaml +++ b/packages/i18n/src/locales/fr/tamagotchi/settings.yaml @@ -30,5 +30,7 @@ pages: devtools: title: Developer pages: + context-flow: + title: Context Flow widgets-calling: title: Widget Calling diff --git a/packages/i18n/src/locales/ja/tamagotchi/settings.yaml b/packages/i18n/src/locales/ja/tamagotchi/settings.yaml index 3830428e4..dde832b0b 100644 --- a/packages/i18n/src/locales/ja/tamagotchi/settings.yaml +++ b/packages/i18n/src/locales/ja/tamagotchi/settings.yaml @@ -30,5 +30,7 @@ pages: devtools: title: 開発者 pages: + context-flow: + title: Context Flow widgets-calling: title: ウィジェット呼び出し diff --git a/packages/i18n/src/locales/ko/tamagotchi/settings.yaml b/packages/i18n/src/locales/ko/tamagotchi/settings.yaml index 951086a33..6e5fbe1e0 100644 --- a/packages/i18n/src/locales/ko/tamagotchi/settings.yaml +++ b/packages/i18n/src/locales/ko/tamagotchi/settings.yaml @@ -30,5 +30,7 @@ pages: devtools: title: Developer pages: + context-flow: + title: Context Flow widgets-calling: title: Widget Calling diff --git a/packages/i18n/src/locales/ru/tamagotchi/settings.yaml b/packages/i18n/src/locales/ru/tamagotchi/settings.yaml index 6158c818c..fc992eb06 100644 --- a/packages/i18n/src/locales/ru/tamagotchi/settings.yaml +++ b/packages/i18n/src/locales/ru/tamagotchi/settings.yaml @@ -30,5 +30,7 @@ pages: devtools: title: Developer pages: + context-flow: + title: Context Flow widgets-calling: title: Widget Calling diff --git a/packages/i18n/src/locales/vi/tamagotchi/settings.yaml b/packages/i18n/src/locales/vi/tamagotchi/settings.yaml index 6ec1103dc..622ea00fc 100644 --- a/packages/i18n/src/locales/vi/tamagotchi/settings.yaml +++ b/packages/i18n/src/locales/vi/tamagotchi/settings.yaml @@ -30,5 +30,7 @@ pages: devtools: title: Developer pages: + context-flow: + title: Context Flow widgets-calling: title: Widget Calling diff --git a/packages/i18n/src/locales/zh-Hans/tamagotchi/settings.yaml b/packages/i18n/src/locales/zh-Hans/tamagotchi/settings.yaml index cefa50151..0b7da76cc 100644 --- a/packages/i18n/src/locales/zh-Hans/tamagotchi/settings.yaml +++ b/packages/i18n/src/locales/zh-Hans/tamagotchi/settings.yaml @@ -30,5 +30,7 @@ pages: devtools: title: 开发者选项 pages: + context-flow: + title: Context Flow widgets-calling: title: 挂件调用 diff --git a/packages/i18n/src/locales/zh-Hant/tamagotchi/settings.yaml b/packages/i18n/src/locales/zh-Hant/tamagotchi/settings.yaml index 2533b4352..98d9a00ac 100644 --- a/packages/i18n/src/locales/zh-Hant/tamagotchi/settings.yaml +++ b/packages/i18n/src/locales/zh-Hant/tamagotchi/settings.yaml @@ -30,5 +30,7 @@ pages: devtools: title: Developer pages: + context-flow: + title: Context Flow widgets-calling: title: Widget Calling diff --git a/packages/stage-pages/src/pages/devtools/context-flow.vue b/packages/stage-pages/src/pages/devtools/context-flow.vue new file mode 100644 index 000000000..f83630a6a --- /dev/null +++ b/packages/stage-pages/src/pages/devtools/context-flow.vue @@ -0,0 +1,682 @@ + + + + + +meta: + layout: settings + diff --git a/packages/ui/src/components/Form/SelectTab/SelectTab.vue b/packages/ui/src/components/Form/SelectTab/SelectTab.vue index 5a9802714..6ac781f43 100644 --- a/packages/ui/src/components/Form/SelectTab/SelectTab.vue +++ b/packages/ui/src/components/Form/SelectTab/SelectTab.vue @@ -48,11 +48,10 @@ const rootStyle = computed(() => ({ :aria-readonly="props.readonly" :class="[ 'select-tab', - 'relative', 'flex', 'w-full', 'items-stretch', 'rounded-xl', + 'relative', 'flex', 'w-full', 'items-stretch', 'rounded-lg', 'overflow-hidden', - 'bg-white-400/6', 'dark:bg-neutral-900/70', - 'transition-[border-color,box-shadow,opacity]', 'duration-200', 'ease-out', 'border-2', - 'border-neutral-100', 'dark:border-neutral-800', + 'bg-white-400/6', 'dark:bg-neutral-950/70', + 'transition-[border-color,box-shadow,opacity]', 'duration-200', 'ease-out', isDisabled ? ['cursor-not-allowed', 'opacity-60'] : ['shadow-[0_14px_50px_-32px_rgba(0,0,0,0.55)]', 'backdrop-blur-sm'], // before 'before:bg-primary-300/50', 'dark:before:bg-primary-400/50',