diff --git a/packages/tinymce/package.json b/packages/tinymce/package.json
new file mode 100644
index 00000000..b4c17cc8
--- /dev/null
+++ b/packages/tinymce/package.json
@@ -0,0 +1,18 @@
+{
+ "name": "@sa/tinymce",
+ "version": "1.3.13",
+ "exports": {
+ ".": "./src/index.ts"
+ },
+ "typesVersions": {
+ "*": {
+ "*": ["./src/*"]
+ }
+ },
+ "dependencies": {
+ "tinymce": "7.8.0"
+ },
+ "devDependencies": {
+ "@tinymce/tinymce-vue": "6.1.0"
+ }
+}
diff --git a/packages/tinymce/src/index.ts b/packages/tinymce/src/index.ts
new file mode 100644
index 00000000..faec3500
--- /dev/null
+++ b/packages/tinymce/src/index.ts
@@ -0,0 +1 @@
+export { default as Tinymce } from './tinymce.vue';
diff --git a/packages/tinymce/src/tinymce.ts b/packages/tinymce/src/tinymce.ts
new file mode 100644
index 00000000..eb3964a6
--- /dev/null
+++ b/packages/tinymce/src/tinymce.ts
@@ -0,0 +1,11 @@
+// Any plugins you want to setting has to be imported
+// Detail plugins list see https://www.tinymce.com/docs/plugins/
+// Custom builds see https://www.tinymce.com/download/custom-builds/
+// colorpicker/contextmenu/textcolor plugin is now built in to the core editor, please remove it from your editor configuration
+
+// quickbars 快捷栏
+export const plugins =
+ 'preview importcss searchreplace autolink autosave save directionality code visualblocks visualchars fullscreen image link media codesample table charmap pagebreak nonbreaking anchor insertdatetime advlist lists wordcount help charmap emoticons accordion';
+
+export const toolbar =
+ 'undo redo | accordion accordionremove | blocks fontfamily fontsize | bold italic underline strikethrough | align numlist bullist | link image | table media | lineheight outdent indent| forecolor backcolor removeformat | charmap emoticons | code fullscreen preview | save print | pagebreak anchor codesample | ltr rtl';
diff --git a/packages/tinymce/src/tinymce.vue b/packages/tinymce/src/tinymce.vue
new file mode 100644
index 00000000..33e4f340
--- /dev/null
+++ b/packages/tinymce/src/tinymce.vue
@@ -0,0 +1,233 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/packages/tinymce/tsconfig.json b/packages/tinymce/tsconfig.json
new file mode 100644
index 00000000..5823ed54
--- /dev/null
+++ b/packages/tinymce/tsconfig.json
@@ -0,0 +1,20 @@
+{
+ "compilerOptions": {
+ "target": "ESNext",
+ "jsx": "preserve",
+ "lib": ["DOM", "ESNext"],
+ "baseUrl": ".",
+ "module": "ESNext",
+ "moduleResolution": "node",
+ "resolveJsonModule": true,
+ "types": ["node"],
+ "strict": true,
+ "strictNullChecks": true,
+ "noUnusedLocals": true,
+ "allowSyntheticDefaultImports": true,
+ "esModuleInterop": true,
+ "forceConsistentCasingInFileNames": true
+ },
+ "include": ["src/**/*"],
+ "exclude": ["node_modules", "dist"]
+}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index bf5527c2..ad9ff947 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -30,7 +30,7 @@ importers:
specifier: workspace:*
version: link:packages/utils
'@tinymce/tinymce-vue':
- specifier: ^6.1.0
+ specifier: 6.1.0
version: 6.1.0(tinymce@7.8.0)(vue@3.5.13(typescript@5.8.2))
'@vueuse/core':
specifier: 13.0.0
@@ -72,7 +72,7 @@ importers:
specifier: 3.0.2
version: 3.0.2
tinymce:
- specifier: ^7.8.0
+ specifier: 7.8.0
version: 7.8.0
vue:
specifier: 3.5.13
@@ -291,6 +291,16 @@ importers:
specifier: 6.0.1
version: 6.0.1
+ packages/tinymce:
+ dependencies:
+ tinymce:
+ specifier: 7.8.0
+ version: 7.8.0
+ devDependencies:
+ '@tinymce/tinymce-vue':
+ specifier: 6.1.0
+ version: 6.1.0(tinymce@7.8.0)(vue@3.5.13(typescript@5.8.2))
+
packages/uno-preset: {}
packages/utils: