From 155366aad5108142c13f8573baf0b29f9207e532 Mon Sep 17 00:00:00 2001 From: wangdan-fit2cloud Date: Thu, 30 Nov 2023 11:29:31 +0800 Subject: [PATCH] feat: --- ui/index.html | 8 +- ui/public/embeb.js | 66 ++++++++++++ ui/src/assets/window1.png | Bin 0 -> 25112 bytes ui/src/assets/window2.png | Bin 0 -> 11534 bytes ui/src/components/ai-dialog/index.vue | 1 - ui/src/components/dynamics-form/index.vue | 3 + ui/src/components/index.ts | 6 +- ui/src/components/markdown-renderer/index.vue | 3 + ui/src/styles/app.scss | 4 + ui/src/views/application/AppOverview.vue | 8 +- .../application/components/EmbedDialog.vue | 97 ++++++++++++++++++ 11 files changed, 188 insertions(+), 8 deletions(-) create mode 100644 ui/public/embeb.js create mode 100644 ui/src/assets/window1.png create mode 100644 ui/src/assets/window2.png create mode 100644 ui/src/views/application/components/EmbedDialog.vue diff --git a/ui/index.html b/ui/index.html index c6b14cc72..4e8168e01 100644 --- a/ui/index.html +++ b/ui/index.html @@ -1,9 +1,9 @@ - + - - - + + + %VITE_APP_TITLE% diff --git a/ui/public/embeb.js b/ui/public/embeb.js new file mode 100644 index 000000000..f8c3ea147 --- /dev/null +++ b/ui/public/embeb.js @@ -0,0 +1,66 @@ +// async function embedChatbot() { +// const t = window.difyChatbotConfig +// if (t && t.token) { +// var e = !!t.isDev +// const o = t.baseUrl || `https://${e ? 'dev.' : ''}udify.app`, +// n = ` +// +// `, +// i = ` +// +// ` +// if (!document.getElementById('dify-chatbot-bubble-button')) { +// e = document.createElement('div') +// ;(e.id = 'dify-chatbot-bubble-button'), +// (e.style.cssText = +// 'position: fixed; bottom: 1rem; right: 1rem; width: 50px; height: 50px; border-radius: 25px; background-color: #155EEF; box-shadow: rgba(0, 0, 0, 0.2) 0px 4px 8px 0px; cursor: pointer; z-index: 2147483647; transition: all 0.2s ease-in-out 0s; left: unset; transform: scale(1); :hover {transform: scale(1.1);}') +// const d = document.createElement('div') +// ;(d.style.cssText = +// 'display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; z-index: 2147483647;'), +// (d.innerHTML = n), +// e.appendChild(d), +// document.body.appendChild(e), +// e.addEventListener('click', function () { +// var e = document.getElementById('dify-chatbot-bubble-window') +// e +// ? 'none' === e.style.display +// ? ((e.style.display = 'block'), (d.innerHTML = i)) +// : ((e.style.display = 'none'), (d.innerHTML = n)) +// : (((e = document.createElement('iframe')).allow = 'fullscreen;microphone'), +// (e.title = 'dify chatbot bubble window'), +// (e.id = 'dify-chatbot-bubble-window'), +// (e.src = o + '/chatbot/' + t.token), +// (e.style.cssText = +// 'border: none; position: fixed; flex-direction: column; justify-content: space-between; box-shadow: rgba(150, 150, 150, 0.2) 0px 10px 30px 0px, rgba(150, 150, 150, 0.2) 0px 0px 0px 1px; bottom: 5rem; right: 1rem; width: 24rem; max-width: calc(100vw - 2rem); height: 40rem; max-height: calc(100vh - 6rem);border-radius: 0.75rem; display: flex; z-index: 2147483647; overflow: hidden; left: unset; background-color: #F3F4F6;'), +// document.body.appendChild(e), +// (d.innerHTML = i)) +// }) +// } +// } else console.error('difyChatbotConfig is empty or token is not provided') +// } +// document.body.onload = embedChatbot diff --git a/ui/src/assets/window1.png b/ui/src/assets/window1.png new file mode 100644 index 0000000000000000000000000000000000000000..a96b907f6ccff7b471a463f07078fd412bdb13a4 GIT binary patch literal 25112 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 LNkvXXu0mjfcM1j! literal 0 HcmV?d00001 diff --git a/ui/src/assets/window2.png b/ui/src/assets/window2.png new file mode 100644 index 0000000000000000000000000000000000000000..02d1ec97903ebefeb7b5bf4295acd59a5a4821ce GIT binary patch literal 11534 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 AiU0rr literal 0 HcmV?d00001 diff --git a/ui/src/components/ai-dialog/index.vue b/ui/src/components/ai-dialog/index.vue index 8db070a26..471331977 100644 --- a/ui/src/components/ai-dialog/index.vue +++ b/ui/src/components/ai-dialog/index.vue @@ -92,7 +92,6 @@ import { ref, nextTick, onUpdated, computed } from 'vue' import applicationApi from '@/api/application' import { ChatManage, type chatType } from '@/api/type/application' import { randomId } from '@/utils/utils' -import MarkdownRenderer from '@/components/markdown-renderer/index.vue' const props = defineProps({ data: { type: Object, diff --git a/ui/src/components/dynamics-form/index.vue b/ui/src/components/dynamics-form/index.vue index c1bb3908d..0abdd60c0 100644 --- a/ui/src/components/dynamics-form/index.vue +++ b/ui/src/components/dynamics-form/index.vue @@ -38,6 +38,9 @@ import type { FormInstance } from 'element-plus' import triggerApi from '@/api/provider' import type Result from '@/request/Result' import _ from 'lodash' + +defineOptions({ name: 'dynamicsForm' }) + const props = withDefaults( defineProps<{ // 页面渲染数据 diff --git a/ui/src/components/index.ts b/ui/src/components/index.ts index 4f1114a73..0fe5caa96 100644 --- a/ui/src/components/index.ts +++ b/ui/src/components/index.ts @@ -12,7 +12,8 @@ import AppTable from './app-table/index.vue' import ReadWrite from './read-write/index.vue' import TagEllipsis from './tag-ellipsis/index.vue' import CommonList from './common-list/index.vue' -import dynamicsForm from './dynamics-form' +import dynamicsForm from './dynamics-form/index.vue' +import MarkdownRenderer from './markdown-renderer/index.vue' export default { install(app: App) { app.component(AppIcon.name, AppIcon) @@ -28,6 +29,7 @@ export default { app.component(ReadWrite.name, ReadWrite) app.component(TagEllipsis.name, TagEllipsis) app.component(CommonList.name, CommonList) - app.use(dynamicsForm) + app.component(dynamicsForm.name, dynamicsForm) + app.component(MarkdownRenderer.name, MarkdownRenderer) } } diff --git a/ui/src/components/markdown-renderer/index.vue b/ui/src/components/markdown-renderer/index.vue index c9a462211..e2175ae91 100644 --- a/ui/src/components/markdown-renderer/index.vue +++ b/ui/src/components/markdown-renderer/index.vue @@ -12,6 +12,9 @@ import MarkdownItTasklists from 'markdown-it-task-lists' import MarkdownItSub from 'markdown-it-sub' import MarkdownItSup from 'markdown-it-sup' import MarkdownItTOC from 'markdown-it-toc-done-right' + +defineOptions({ name: 'MarkdownRenderer' }) + const markdownIt = MarkdownIt({ html: true, // 允许HTML语法 typographer: true, // 启用Typographer插件,可以更好地处理中文字符和标点符号 diff --git a/ui/src/styles/app.scss b/ui/src/styles/app.scss index 229583ea0..e4851da77 100644 --- a/ui/src/styles/app.scss +++ b/ui/src/styles/app.scss @@ -189,6 +189,10 @@ h4 { vertical-align: middle; } +.border { + border: 1px solid var(--el-border-color); +} + .border-l { border-left: 1px solid var(--el-border-color); } diff --git a/ui/src/views/application/AppOverview.vue b/ui/src/views/application/AppOverview.vue index 1714adb30..c58a496fc 100644 --- a/ui/src/views/application/AppOverview.vue +++ b/ui/src/views/application/AppOverview.vue @@ -57,21 +57,24 @@
    演示 - 嵌入第三方 + 嵌入第三方
    + +