diff --git a/web/package.json b/web/package.json
index ca598ef..59677e0 100644
--- a/web/package.json
+++ b/web/package.json
@@ -16,6 +16,15 @@
"@kangc/v-md-editor": "^2.3.15",
"@soerenmartius/vue3-clipboard": "^0.1.2",
"@tinymce/tinymce-vue": "^5.1.1",
+ "@tiptap/extension-blockquote": "^2.11.5",
+ "@tiptap/extension-code-block": "^2.11.5",
+ "@tiptap/extension-document": "^2.11.5",
+ "@tiptap/extension-paragraph": "^2.11.5",
+ "@tiptap/extension-strike": "^2.11.5",
+ "@tiptap/extension-text": "^2.11.5",
+ "@tiptap/extension-underline": "^2.11.5",
+ "@tiptap/starter-kit": "^2.11.5",
+ "@tiptap/vue-3": "^2.11.5",
"@types/js-cookie": "^3.0.2",
"@vueuse/core": "^9.1.1",
"@vueuse/integrations": "^9.13.0",
@@ -23,7 +32,7 @@
"@wangeditor/editor-for-vue": "^5.1.10",
"aplayer": "^1.10.1",
"artplayer": "^4.6.1",
- "axios": "^1.2.0",
+ "axios": "^1.8.4",
"beautify-qrcode": "^1.0.3",
"better-scroll": "^2.4.2",
"d3": "^7.9.0",
@@ -61,6 +70,7 @@
"vue-i18n": "^9.1.9",
"vue-pdf-embed": "^1.1.4",
"vue-router": "^4.1.6",
+ "vue-virtual-scroller": "^2.0.0-beta.1",
"vue3-print-nb": "^0.1.4",
"vuedraggable": "^4.1.0",
"xlsx": "^0.18.5"
diff --git a/web/src/components/file/preview/VideoPlayer.vue b/web/src/components/file/preview/VideoPlayer.vue
index 409f44b..2b36b9e 100644
--- a/web/src/components/file/preview/VideoPlayer.vue
+++ b/web/src/components/file/preview/VideoPlayer.vue
@@ -16,10 +16,6 @@ let common = useCommon();
let route = useRoute();
// import IconPrev from '~icons/custom/prev';
// import IconNext from '~icons/custom/next';
-
-
-
-
let currentVideo = ref(null);
const openTarget = (mode) => {
diff --git a/web/src/components/textEditing/index.vue b/web/src/components/textEditing/index.vue
new file mode 100644
index 0000000..856776a
--- /dev/null
+++ b/web/src/components/textEditing/index.vue
@@ -0,0 +1,147 @@
+
+
+
{{ hexContent }}+
{{ item.content }}+