diff --git a/apps/admin/package.json b/apps/admin/package.json index 78907d9c..2ff2b218 100644 --- a/apps/admin/package.json +++ b/apps/admin/package.json @@ -26,6 +26,7 @@ "@ant-design/icons-vue": "^7.0.1", "@config/vite": "workspace:*", "@iconify/iconify": "^3.1.1", + "@tinymce/tinymce-vue": "^5.1.1", "@vben/components": "workspace:*", "@vben/constants": "workspace:*", "@vben/demo": "workspace:*", diff --git a/apps/admin/src/pages/demo/editor/rich-text-editor.vue b/apps/admin/src/pages/demo/editor/rich-text-editor.vue new file mode 100644 index 00000000..2eea8954 --- /dev/null +++ b/apps/admin/src/pages/demo/editor/rich-text-editor.vue @@ -0,0 +1,19 @@ + + + + diff --git a/packages/demo/index.ts b/packages/demo/index.ts index 8e2de050..75b1b896 100644 --- a/packages/demo/index.ts +++ b/packages/demo/index.ts @@ -9,3 +9,4 @@ export { default as Basic } from './src/Basic/index.vue' export { default as Gaode } from './src/Charts/Gaode.vue' export { default as Baidu } from './src/Charts/Baidu.vue' export { default as Google } from './src/Charts/Google.vue' +export { default as Editor } from './src/Editor/Editor.vue' diff --git a/packages/demo/package.json b/packages/demo/package.json index ada81d8d..5cacc441 100644 --- a/packages/demo/package.json +++ b/packages/demo/package.json @@ -14,14 +14,15 @@ "license": "ISC", "dependencies": { "@amap/amap-jsapi-loader": "^1.0.1", + "@tinymce/tinymce-vue": "^5.1.1", + "@vben/hooks": "workspace:*", "@vben/request": "workspace:*", "@vben/utils": "workspace:*", "@vben/vbencomponents": "workspace:*", - "@vben/hooks": "workspace:*", "vue": "^3.3.6" }, "devDependencies": { - "@vben/types": "workspace:*", - "@amap/amap-jsapi-types": "^0.0.13" + "@amap/amap-jsapi-types": "^0.0.13", + "@vben/types": "workspace:*" } } diff --git a/packages/demo/src/Editor/Editor.vue b/packages/demo/src/Editor/Editor.vue new file mode 100644 index 00000000..893a4ce5 --- /dev/null +++ b/packages/demo/src/Editor/Editor.vue @@ -0,0 +1,104 @@ + + + + diff --git a/packages/router/src/routes/modules/demo/editor.ts b/packages/router/src/routes/modules/demo/editor.ts index e4c597a0..81769114 100644 --- a/packages/router/src/routes/modules/demo/editor.ts +++ b/packages/router/src/routes/modules/demo/editor.ts @@ -20,6 +20,14 @@ const Editor: RouteRecordItem = { title: 'monaco-editor', }, }, + { + path: 'rich-text-editor', + name: 'rich-text-editor', + component: () => import('@/pages/demo/editor/rich-text-editor.vue'), + meta: { + title: '富文本编辑器', + }, + }, ], } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 975dd6c3..464afa28 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -74,6 +74,9 @@ importers: '@iconify/iconify': specifier: ^3.1.1 version: 3.1.1 + '@tinymce/tinymce-vue': + specifier: ^5.1.1 + version: 5.1.1(vue@3.3.6) '@vben/components': specifier: workspace:* version: link:../../packages/components @@ -400,6 +403,9 @@ importers: '@amap/amap-jsapi-loader': specifier: ^1.0.1 version: 1.0.1 + '@tinymce/tinymce-vue': + specifier: ^5.1.1 + version: 5.1.1(vue@3.3.6) '@vben/hooks': specifier: workspace:* version: link:../hooks @@ -4047,6 +4053,15 @@ packages: engines: {node: '>=4'} dev: false + /@tinymce/tinymce-vue@5.1.1(vue@3.3.6): + resolution: {integrity: sha512-iO57HOWesFOhsaqjA5Ea6sDvQBmJJH3/dq00Uvg7metlct2kLF+ctRgoDsetLt6gmeZ7COPftr814/XzqnJ/dg==} + peerDependencies: + vue: ^3.0.0 + dependencies: + tinymce: 6.8.0 + vue: 3.3.6(typescript@5.2.2) + dev: false + /@tootallnate/once@2.0.0: resolution: {integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==} engines: {node: '>= 10'} @@ -12671,6 +12686,10 @@ packages: resolution: {integrity: sha512-kRwSG8Zx4tjF9ZiyH4bhaebu+EDz1BOx9hOigYHlUW4xxI/wKIUQUqo018UlU4ar6ATPBsaMrdbKZ+tmPdohFA==} dev: true + /tinymce@6.8.0: + resolution: {integrity: sha512-WSQlyfW8aPkOVMmmHmSVeA5Dq4JuUZjTB+PmePJ27oQ+ruv3Zn4KSTsvSnDUrHlqygjDvRidrCB/m5nTWCC2nA==} + dev: false + /tinypool@0.7.0: resolution: {integrity: sha512-zSYNUlYSMhJ6Zdou4cJwo/p7w5nmAH17GRfU/ui3ctvjXFErXXkruT4MWW6poDeXgCaIBlGLrfU6TbTXxyGMww==} engines: {node: '>=14.0.0'}