From 16174d60a7f2a362629543bed0742f36999b04ab Mon Sep 17 00:00:00 2001 From: ajaxzheng <894103554@qq.com> Date: Fri, 13 Jun 2025 10:55:18 +0800 Subject: [PATCH 1/2] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E9=81=A5?= =?UTF-8?q?=E6=8E=A7=E5=99=A8=E9=A1=B5=E9=9D=A2=EF=BC=8C=E6=9B=B4=E6=96=B0?= =?UTF-8?q?next=E4=BE=9D=E8=B5=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- examples/sites/package.json | 3 +- examples/sites/src/App.vue | 4 +- examples/sites/src/components/MessageCard.vue | 117 ++++++ examples/sites/src/composable/utils.ts | 8 +- examples/sites/src/router.js | 6 + .../sites/src/views/comprehensive/index.vue | 2 +- examples/sites/src/views/remoter/index.vue | 63 ++++ examples/sites/src/views/remoter/sound.vue | 349 ++++++++++++++++++ 8 files changed, 543 insertions(+), 9 deletions(-) create mode 100644 examples/sites/src/components/MessageCard.vue create mode 100644 examples/sites/src/views/remoter/index.vue create mode 100644 examples/sites/src/views/remoter/sound.vue diff --git a/examples/sites/package.json b/examples/sites/package.json index 5956602b10..217832ebcd 100644 --- a/examples/sites/package.json +++ b/examples/sites/package.json @@ -27,8 +27,7 @@ "@docsearch/css": "^3.8.0", "@docsearch/js": "^3.8.0", "@docsearch/react": "npm:@docsearch/css", - "@opentiny/next": "0.1.2", - "@opentiny/next-vue": "0.0.1-alpha.1", + "@opentiny/next-vue": "0.0.1", "@opentiny/tiny-robot": "0.2.1", "@opentiny/tiny-robot-kit": "0.2.1", "@opentiny/tiny-robot-svgs": "0.2.1", diff --git a/examples/sites/src/App.vue b/examples/sites/src/App.vue index 22969fc421..add4966a0c 100644 --- a/examples/sites/src/App.vue +++ b/examples/sites/src/App.vue @@ -17,7 +17,7 @@ import { iconClose } from '@opentiny/vue-icon' import { appData } from './tools' import useTheme from './tools/useTheme' import { useNextClient } from '@opentiny/next-vue' -import { globalConversation } from './composable/utils' +import { globalConversation, $session } from './composable/utils' export default defineComponent({ name: 'AppVue', @@ -33,7 +33,7 @@ export default defineComponent({ const { sessionId } = useNextClient({ clientInfo: { name: 'tiny-vue-website', version: '1.0.0' }, - proxyOptions: { url: 'https://39.108.160.245/sse', token: '' } + proxyOptions: { url: 'https://39.108.160.245/sse', token: '', sessionId: $session.sessionId } }) watch( diff --git a/examples/sites/src/components/MessageCard.vue b/examples/sites/src/components/MessageCard.vue new file mode 100644 index 0000000000..503704abff --- /dev/null +++ b/examples/sites/src/components/MessageCard.vue @@ -0,0 +1,117 @@ + + + + + diff --git a/examples/sites/src/composable/utils.ts b/examples/sites/src/composable/utils.ts index 217bcfc3aa..82453888a2 100644 --- a/examples/sites/src/composable/utils.ts +++ b/examples/sites/src/composable/utils.ts @@ -5,16 +5,16 @@ import type { ChatMessage, ChatCompletionResponse, StreamHandler } from '@opentiny/tiny-robot-kit' import type { ChatCompletionRequest } from '@opentiny/tiny-robot-kit' -import { ref, type Ref } from 'vue' +import { ref, reactive, type Ref } from 'vue' -export { $local } from './storage' +export { $local, $session } from './storage' export const showTinyRobot = ref(true) -export const globalConversation = { +export const globalConversation = reactive({ id: '', sessionId: '' -} +}) /** * 处理SSE流式响应 * @param response fetch响应对象 diff --git a/examples/sites/src/router.js b/examples/sites/src/router.js index 9b471c4a94..c438df9d23 100644 --- a/examples/sites/src/router.js +++ b/examples/sites/src/router.js @@ -8,6 +8,7 @@ const Docs = () => import('@/views/docs/docs.vue') const Overview = () => import('@/views/overview.vue') const Features = () => import('@/views/features.vue') const Comprehensive = () => import('@/views/comprehensive/index.vue') +const Remoter = () => import('@/views/remoter/index.vue') const context = import.meta.env.VITE_CONTEXT @@ -24,6 +25,11 @@ let routes = [ component: Comprehensive, name: 'comprehensive' }, + { + path: `${context}:all?/zh-CN/:theme/remoter`, + component: Remoter, + name: 'remoter' + }, // 文档 { path: `${context}:all?/:lang/:theme/docs/:docId`, diff --git a/examples/sites/src/views/comprehensive/index.vue b/examples/sites/src/views/comprehensive/index.vue index 310d78cc59..afd40f43a2 100644 --- a/examples/sites/src/views/comprehensive/index.vue +++ b/examples/sites/src/views/comprehensive/index.vue @@ -96,7 +96,7 @@ watch( const encryptedId = CryptoJS.AES.encrypt(newVal, 'secret-session-id').toString() const secretId = encodeURIComponent(encryptedId) - sessionUrl.value = 'http://39.108.160.245?id=' + secretId + sessionUrl.value = `${location.href.replace('comprehensive', 'remoter')}?id=${secretId}` } }, { immediate: true } diff --git a/examples/sites/src/views/remoter/index.vue b/examples/sites/src/views/remoter/index.vue new file mode 100644 index 0000000000..61af1798a2 --- /dev/null +++ b/examples/sites/src/views/remoter/index.vue @@ -0,0 +1,63 @@ + + + + + diff --git a/examples/sites/src/views/remoter/sound.vue b/examples/sites/src/views/remoter/sound.vue new file mode 100644 index 0000000000..d9a7b17718 --- /dev/null +++ b/examples/sites/src/views/remoter/sound.vue @@ -0,0 +1,349 @@ + + + + + From 87888c861fde0001679895ebec3cee0fc82a5820 Mon Sep 17 00:00:00 2001 From: ajaxzheng <894103554@qq.com> Date: Fri, 13 Jun 2025 16:07:28 +0800 Subject: [PATCH 2/2] =?UTF-8?q?chore:=20=E4=BF=AE=E6=94=B9=E4=BB=A3?= =?UTF-8?q?=E7=90=86=E4=B8=BAhttps=20url?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- examples/sites/package.json | 2 +- examples/sites/src/App.vue | 2 +- .../sites/src/views/comprehensive/index.vue | 21 +++++-------------- 3 files changed, 7 insertions(+), 18 deletions(-) diff --git a/examples/sites/package.json b/examples/sites/package.json index 217832ebcd..49eebbf846 100644 --- a/examples/sites/package.json +++ b/examples/sites/package.json @@ -1,7 +1,7 @@ { "name": "@opentiny/vue-docs", "type": "module", - "version": "3.24.0", + "version": "3.24.3", "license": "MIT", "scripts": { "start": "vite", diff --git a/examples/sites/src/App.vue b/examples/sites/src/App.vue index add4966a0c..c9f43ba785 100644 --- a/examples/sites/src/App.vue +++ b/examples/sites/src/App.vue @@ -33,7 +33,7 @@ export default defineComponent({ const { sessionId } = useNextClient({ clientInfo: { name: 'tiny-vue-website', version: '1.0.0' }, - proxyOptions: { url: 'https://39.108.160.245/sse', token: '', sessionId: $session.sessionId } + proxyOptions: { url: 'https://agent.icjs.ink/sse', token: '', sessionId: $session.sessionId } }) watch( diff --git a/examples/sites/src/views/comprehensive/index.vue b/examples/sites/src/views/comprehensive/index.vue index afd40f43a2..289b88157b 100644 --- a/examples/sites/src/views/comprehensive/index.vue +++ b/examples/sites/src/views/comprehensive/index.vue @@ -96,7 +96,7 @@ watch( const encryptedId = CryptoJS.AES.encrypt(newVal, 'secret-session-id').toString() const secretId = encodeURIComponent(encryptedId) - sessionUrl.value = `${location.href.replace('comprehensive', 'remoter')}?id=${secretId}` + sessionUrl.value = `https://agent.icjs.ink?id=${secretId}` } }, { immediate: true } @@ -202,9 +202,7 @@ watch( border-radius: 12px; padding: 32px; width: 460px; - box-shadow: - 0 20px 25px -5px rgba(0, 0, 0, 0.1), - 0 10px 10px -5px rgba(0, 0, 0, 0.04); + box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); } .qr-modal-header { @@ -267,22 +265,13 @@ watch( @keyframes glow { 0% { - box-shadow: - 0 0 5px rgba(22, 119, 255, 0.2), - 0 0 10px rgba(22, 119, 255, 0.2), - 0 0 15px rgba(22, 119, 255, 0.2); + box-shadow: 0 0 5px rgba(22, 119, 255, 0.2), 0 0 10px rgba(22, 119, 255, 0.2), 0 0 15px rgba(22, 119, 255, 0.2); } 50% { - box-shadow: - 0 0 10px rgba(22, 119, 255, 0.3), - 0 0 20px rgba(22, 119, 255, 0.3), - 0 0 30px rgba(22, 119, 255, 0.3); + box-shadow: 0 0 10px rgba(22, 119, 255, 0.3), 0 0 20px rgba(22, 119, 255, 0.3), 0 0 30px rgba(22, 119, 255, 0.3); } 100% { - box-shadow: - 0 0 5px rgba(22, 119, 255, 0.2), - 0 0 10px rgba(22, 119, 255, 0.2), - 0 0 15px rgba(22, 119, 255, 0.2); + box-shadow: 0 0 5px rgba(22, 119, 255, 0.2), 0 0 10px rgba(22, 119, 255, 0.2), 0 0 15px rgba(22, 119, 255, 0.2); } }