Prechádzať zdrojové kódy

提交文章后台代码

Lijy 6 mesiacov pred
rodič
commit
26bdf8e2f4
74 zmenil súbory, kde vykonal 25936 pridanie a 6 odobranie
  1. 140 0
      fhKeeper/formulahousekeeper/articleBackend/package-lock.json
  2. 3 0
      fhKeeper/formulahousekeeper/articleBackend/package.json
  3. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/langs/zh_CN.js
  4. 66 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/dark/content.css
  5. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/dark/content.js
  6. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/dark/content.min.css
  7. 61 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/default/content.css
  8. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/default/content.js
  9. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/default/content.min.css
  10. 66 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/document/content.css
  11. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/document/content.js
  12. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/document/content.min.css
  13. 66 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/tinymce-5-dark/content.css
  14. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/tinymce-5-dark/content.js
  15. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/tinymce-5-dark/content.min.css
  16. 61 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/tinymce-5/content.css
  17. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/tinymce-5/content.js
  18. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/tinymce-5/content.min.css
  19. 62 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/writer/content.css
  20. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/writer/content.js
  21. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/writer/content.min.css
  22. 770 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/content.css
  23. 776 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/content.inline.css
  24. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/content.inline.js
  25. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/content.inline.min.css
  26. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/content.js
  27. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/content.min.css
  28. 4663 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/skin.css
  29. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/skin.js
  30. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/skin.min.css
  31. 30 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/skin.shadowdom.css
  32. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/skin.shadowdom.js
  33. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.css
  34. 782 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/content.css
  35. 776 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/content.inline.css
  36. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/content.inline.js
  37. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/content.inline.min.css
  38. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/content.js
  39. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/content.min.css
  40. 4660 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/skin.css
  41. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/skin.js
  42. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/skin.min.css
  43. 30 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/skin.shadowdom.css
  44. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/skin.shadowdom.js
  45. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/skin.shadowdom.min.css
  46. 770 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/content.css
  47. 776 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/content.inline.css
  48. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/content.inline.js
  49. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/content.inline.min.css
  50. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/content.js
  51. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/content.min.css
  52. 4773 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/skin.css
  53. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/skin.js
  54. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/skin.min.css
  55. 30 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.css
  56. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.js
  57. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.min.css
  58. 782 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/content.css
  59. 776 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/content.inline.css
  60. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/content.inline.js
  61. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/content.inline.min.css
  62. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/content.js
  63. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/content.min.css
  64. 4773 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/skin.css
  65. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/skin.js
  66. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/skin.min.css
  67. 30 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/skin.shadowdom.css
  68. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/skin.shadowdom.js
  69. 1 0
      fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/skin.shadowdom.min.css
  70. 143 0
      fhKeeper/formulahousekeeper/articleBackend/src/components/backend/TinymceEditor.vue
  71. 1 1
      fhKeeper/formulahousekeeper/articleBackend/src/main.js
  72. 6 0
      fhKeeper/formulahousekeeper/articleBackend/src/views/Layout.vue
  73. 5 3
      fhKeeper/formulahousekeeper/articleBackend/src/views/article/ArticleManage.vue
  74. 14 2
      fhKeeper/formulahousekeeper/articleBackend/src/views/testText/text.vue

+ 140 - 0
fhKeeper/formulahousekeeper/articleBackend/package-lock.json

@@ -9,6 +9,7 @@
       "version": "0.0.0",
       "dependencies": {
         "@rollup/plugin-inject": "^5.0.5",
+        "@tinymce/tinymce-vue": "^6.1.0",
         "@vueup/vue-quill": "^1.2.0",
         "axios": "^1.6.5",
         "element-plus": "^2.4.4",
@@ -17,6 +18,8 @@
         "quill-image-drop-module": "^1.0.3",
         "quill-image-resize": "^3.0.9",
         "quill-image-resize-module": "^3.0.0",
+        "tinymce": "^7.5.0",
+        "tinymce-vue": "^1.0.0",
         "vue": "^3.3.11",
         "vue-router": "^4.2.5"
       },
@@ -709,6 +712,20 @@
         "win32"
       ]
     },
+    "node_modules/@tinymce/tinymce-vue": {
+      "version": "6.1.0",
+      "resolved": "https://registry.npmmirror.com/@tinymce/tinymce-vue/-/tinymce-vue-6.1.0.tgz",
+      "integrity": "sha512-7JdaKMOaohuFWpjKwRmaZJbT/eNVUUYHG93R7+lUf7SUN+hSqd2spbuqZcki+tG9kaSAGd2ZmvJIsmzWDNAzpw==",
+      "peerDependencies": {
+        "tinymce": "^7.0.0 || ^6.0.0 || ^5.5.1",
+        "vue": "^3.0.0"
+      },
+      "peerDependenciesMeta": {
+        "tinymce": {
+          "optional": true
+        }
+      }
+    },
     "node_modules/@types/estree": {
       "version": "1.0.5",
       "resolved": "https://registry.npmmirror.com/@types/estree/-/estree-1.0.5.tgz",
@@ -1792,6 +1809,21 @@
         "node": "^10 || ^12 || >=14"
       }
     },
+    "node_modules/prettier": {
+      "version": "2.8.8",
+      "resolved": "https://registry.npmmirror.com/prettier/-/prettier-2.8.8.tgz",
+      "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==",
+      "optional": true,
+      "bin": {
+        "prettier": "bin-prettier.js"
+      },
+      "engines": {
+        "node": ">=10.13.0"
+      },
+      "funding": {
+        "url": "https://github.com/prettier/prettier?sponsor=1"
+      }
+    },
     "node_modules/proxy-from-env": {
       "version": "1.1.0",
       "resolved": "https://registry.npmmirror.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
@@ -4864,6 +4896,14 @@
         "node": ">= 0.4"
       }
     },
+    "node_modules/source-map": {
+      "version": "0.6.1",
+      "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz",
+      "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
     "node_modules/source-map-js": {
       "version": "1.0.2",
       "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz",
@@ -4872,6 +4912,48 @@
         "node": ">=0.10.0"
       }
     },
+    "node_modules/tinymce": {
+      "version": "7.5.0",
+      "resolved": "https://registry.npmmirror.com/tinymce/-/tinymce-7.5.0.tgz",
+      "integrity": "sha512-A7iuQPIfeze5rO6bvnnPwP7TiWnPA9AGr8U/9ssLwrEG+FMYPzvLPt3RT8ktVn/wPSJkVBBSLCAZX2dAHb8YEA=="
+    },
+    "node_modules/tinymce-vue": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmmirror.com/tinymce-vue/-/tinymce-vue-1.0.0.tgz",
+      "integrity": "sha512-htEc8lDGC4guQx1H5QzsNu55ynyehUKhAYdWRUqu9VfgA41x0VHqXTMoLRdo2oDlZYqJ4u5k7XqL3HtyxI7HgQ==",
+      "dependencies": {
+        "tinymce": "^4.7.3",
+        "vue": "^2.5.3"
+      }
+    },
+    "node_modules/tinymce-vue/node_modules/@vue/compiler-sfc": {
+      "version": "2.7.16",
+      "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-2.7.16.tgz",
+      "integrity": "sha512-KWhJ9k5nXuNtygPU7+t1rX6baZeqOYLEforUPjgNDBnLicfHCoi48H87Q8XyLZOrNNsmhuwKqtpDQWjEFe6Ekg==",
+      "dependencies": {
+        "@babel/parser": "^7.23.5",
+        "postcss": "^8.4.14",
+        "source-map": "^0.6.1"
+      },
+      "optionalDependencies": {
+        "prettier": "^1.18.2 || ^2.0.0"
+      }
+    },
+    "node_modules/tinymce-vue/node_modules/tinymce": {
+      "version": "4.9.11",
+      "resolved": "https://registry.npmmirror.com/tinymce/-/tinymce-4.9.11.tgz",
+      "integrity": "sha512-nkSLsax+VY5DBRjMFnHFqPwTnlLEGHCco82FwJF2JNH6W+5/ClvNC1P4uhD5lXPDNiDykSHR0XJdEh7w/ICHzA=="
+    },
+    "node_modules/tinymce-vue/node_modules/vue": {
+      "version": "2.7.16",
+      "resolved": "https://registry.npmmirror.com/vue/-/vue-2.7.16.tgz",
+      "integrity": "sha512-4gCtFXaAA3zYZdTp5s4Hl2sozuySsgz4jy1EnpBHNfpMa9dK1ZCG7viqBPCwXtmgc8nHqUsAu3G4gtmXkkY3Sw==",
+      "deprecated": "Vue 2 has reached EOL and is no longer actively maintained. See https://v2.vuejs.org/eol/ for more details.",
+      "dependencies": {
+        "@vue/compiler-sfc": "2.7.16",
+        "csstype": "^3.1.0"
+      }
+    },
     "node_modules/to-regex-range": {
       "version": "5.0.1",
       "resolved": "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz",
@@ -5347,6 +5429,12 @@
       "dev": true,
       "optional": true
     },
+    "@tinymce/tinymce-vue": {
+      "version": "6.1.0",
+      "resolved": "https://registry.npmmirror.com/@tinymce/tinymce-vue/-/tinymce-vue-6.1.0.tgz",
+      "integrity": "sha512-7JdaKMOaohuFWpjKwRmaZJbT/eNVUUYHG93R7+lUf7SUN+hSqd2spbuqZcki+tG9kaSAGd2ZmvJIsmzWDNAzpw==",
+      "requires": {}
+    },
     "@types/estree": {
       "version": "1.0.5",
       "resolved": "https://registry.npmmirror.com/@types/estree/-/estree-1.0.5.tgz",
@@ -6109,6 +6197,12 @@
         "source-map-js": "^1.0.2"
       }
     },
+    "prettier": {
+      "version": "2.8.8",
+      "resolved": "https://registry.npmmirror.com/prettier/-/prettier-2.8.8.tgz",
+      "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==",
+      "optional": true
+    },
     "proxy-from-env": {
       "version": "1.1.0",
       "resolved": "https://registry.npmmirror.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
@@ -8595,11 +8689,57 @@
         "has-property-descriptors": "^1.0.0"
       }
     },
+    "source-map": {
+      "version": "0.6.1",
+      "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz",
+      "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
+    },
     "source-map-js": {
       "version": "1.0.2",
       "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz",
       "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw=="
     },
+    "tinymce": {
+      "version": "7.5.0",
+      "resolved": "https://registry.npmmirror.com/tinymce/-/tinymce-7.5.0.tgz",
+      "integrity": "sha512-A7iuQPIfeze5rO6bvnnPwP7TiWnPA9AGr8U/9ssLwrEG+FMYPzvLPt3RT8ktVn/wPSJkVBBSLCAZX2dAHb8YEA=="
+    },
+    "tinymce-vue": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmmirror.com/tinymce-vue/-/tinymce-vue-1.0.0.tgz",
+      "integrity": "sha512-htEc8lDGC4guQx1H5QzsNu55ynyehUKhAYdWRUqu9VfgA41x0VHqXTMoLRdo2oDlZYqJ4u5k7XqL3HtyxI7HgQ==",
+      "requires": {
+        "tinymce": "^4.7.3",
+        "vue": "^2.5.3"
+      },
+      "dependencies": {
+        "@vue/compiler-sfc": {
+          "version": "2.7.16",
+          "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-2.7.16.tgz",
+          "integrity": "sha512-KWhJ9k5nXuNtygPU7+t1rX6baZeqOYLEforUPjgNDBnLicfHCoi48H87Q8XyLZOrNNsmhuwKqtpDQWjEFe6Ekg==",
+          "requires": {
+            "@babel/parser": "^7.23.5",
+            "postcss": "^8.4.14",
+            "prettier": "^1.18.2 || ^2.0.0",
+            "source-map": "^0.6.1"
+          }
+        },
+        "tinymce": {
+          "version": "4.9.11",
+          "resolved": "https://registry.npmmirror.com/tinymce/-/tinymce-4.9.11.tgz",
+          "integrity": "sha512-nkSLsax+VY5DBRjMFnHFqPwTnlLEGHCco82FwJF2JNH6W+5/ClvNC1P4uhD5lXPDNiDykSHR0XJdEh7w/ICHzA=="
+        },
+        "vue": {
+          "version": "2.7.16",
+          "resolved": "https://registry.npmmirror.com/vue/-/vue-2.7.16.tgz",
+          "integrity": "sha512-4gCtFXaAA3zYZdTp5s4Hl2sozuySsgz4jy1EnpBHNfpMa9dK1ZCG7viqBPCwXtmgc8nHqUsAu3G4gtmXkkY3Sw==",
+          "requires": {
+            "@vue/compiler-sfc": "2.7.16",
+            "csstype": "^3.1.0"
+          }
+        }
+      }
+    },
     "to-regex-range": {
       "version": "5.0.1",
       "resolved": "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz",

+ 3 - 0
fhKeeper/formulahousekeeper/articleBackend/package.json

@@ -10,6 +10,7 @@
   },
   "dependencies": {
     "@rollup/plugin-inject": "^5.0.5",
+    "@tinymce/tinymce-vue": "^6.1.0",
     "@vueup/vue-quill": "^1.2.0",
     "axios": "^1.6.5",
     "element-plus": "^2.4.4",
@@ -18,6 +19,8 @@
     "quill-image-drop-module": "^1.0.3",
     "quill-image-resize": "^3.0.9",
     "quill-image-resize-module": "^3.0.0",
+    "tinymce": "^7.5.0",
+    "tinymce-vue": "^1.0.0",
     "vue": "^3.3.11",
     "vue-router": "^4.2.5"
   },

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/langs/zh_CN.js


+ 66 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/dark/content.css

@@ -0,0 +1,66 @@
+body {
+  background-color: #222f3e;
+  color: #fff;
+  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
+  line-height: 1.4;
+  margin: 1rem;
+}
+a {
+  color: #4099ff;
+}
+table {
+  border-collapse: collapse;
+}
+/* Apply a default padding if legacy cellpadding attribute is missing */
+table:not([cellpadding]) th,
+table:not([cellpadding]) td {
+  padding: 0.4rem;
+}
+/* Set default table styles if a table has a positive border attribute
+   and no inline css */
+table[border]:not([border="0"]):not([style*="border-width"]) th,
+table[border]:not([border="0"]):not([style*="border-width"]) td {
+  border-width: 1px;
+}
+/* Set default table styles if a table has a positive border attribute
+   and no inline css */
+table[border]:not([border="0"]):not([style*="border-style"]) th,
+table[border]:not([border="0"]):not([style*="border-style"]) td {
+  border-style: solid;
+}
+/* Set default table styles if a table has a positive border attribute
+   and no inline css */
+table[border]:not([border="0"]):not([style*="border-color"]) th,
+table[border]:not([border="0"]):not([style*="border-color"]) td {
+  border-color: #6d737b;
+}
+figure {
+  display: table;
+  margin: 1rem auto;
+}
+figure figcaption {
+  color: #8a8f97;
+  display: block;
+  margin-top: 0.25rem;
+  text-align: center;
+}
+hr {
+  border-color: #6d737b;
+  border-style: solid;
+  border-width: 1px 0 0 0;
+}
+code {
+  background-color: #6d737b;
+  border-radius: 3px;
+  padding: 0.1rem 0.2rem;
+}
+.mce-content-body:not([dir=rtl]) blockquote {
+  border-left: 2px solid #6d737b;
+  margin-left: 1.5rem;
+  padding-left: 1rem;
+}
+.mce-content-body[dir=rtl] blockquote {
+  border-right: 2px solid #6d737b;
+  margin-right: 1.5rem;
+  padding-right: 1rem;
+}

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/dark/content.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/dark/content.min.css


+ 61 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/default/content.css

@@ -0,0 +1,61 @@
+body {
+  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
+  line-height: 1.4;
+  margin: 1rem;
+}
+table {
+  border-collapse: collapse;
+}
+/* Apply a default padding if legacy cellpadding attribute is missing */
+table:not([cellpadding]) th,
+table:not([cellpadding]) td {
+  padding: 0.4rem;
+}
+/* Set default table styles if a table has a positive border attribute
+   and no inline css */
+table[border]:not([border="0"]):not([style*="border-width"]) th,
+table[border]:not([border="0"]):not([style*="border-width"]) td {
+  border-width: 1px;
+}
+/* Set default table styles if a table has a positive border attribute
+   and no inline css */
+table[border]:not([border="0"]):not([style*="border-style"]) th,
+table[border]:not([border="0"]):not([style*="border-style"]) td {
+  border-style: solid;
+}
+/* Set default table styles if a table has a positive border attribute
+   and no inline css */
+table[border]:not([border="0"]):not([style*="border-color"]) th,
+table[border]:not([border="0"]):not([style*="border-color"]) td {
+  border-color: #ccc;
+}
+figure {
+  display: table;
+  margin: 1rem auto;
+}
+figure figcaption {
+  color: #999;
+  display: block;
+  margin-top: 0.25rem;
+  text-align: center;
+}
+hr {
+  border-color: #ccc;
+  border-style: solid;
+  border-width: 1px 0 0 0;
+}
+code {
+  background-color: #e8e8e8;
+  border-radius: 3px;
+  padding: 0.1rem 0.2rem;
+}
+.mce-content-body:not([dir=rtl]) blockquote {
+  border-left: 2px solid #ccc;
+  margin-left: 1.5rem;
+  padding-left: 1rem;
+}
+.mce-content-body[dir=rtl] blockquote {
+  border-right: 2px solid #ccc;
+  margin-right: 1.5rem;
+  padding-right: 1rem;
+}

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/default/content.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/default/content.min.css


+ 66 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/document/content.css

@@ -0,0 +1,66 @@
+@media screen {
+  html {
+    background: #f4f4f4;
+    min-height: 100%;
+  }
+}
+body {
+  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
+}
+@media screen {
+  body {
+    background-color: #fff;
+    box-shadow: 0 0 4px rgba(0, 0, 0, 0.15);
+    box-sizing: border-box;
+    margin: 1rem auto 0;
+    max-width: 820px;
+    min-height: calc(100vh - 1rem);
+    padding: 4rem 6rem 6rem 6rem;
+  }
+}
+table {
+  border-collapse: collapse;
+}
+/* Apply a default padding if legacy cellpadding attribute is missing */
+table:not([cellpadding]) th,
+table:not([cellpadding]) td {
+  padding: 0.4rem;
+}
+/* Set default table styles if a table has a positive border attribute
+   and no inline css */
+table[border]:not([border="0"]):not([style*="border-width"]) th,
+table[border]:not([border="0"]):not([style*="border-width"]) td {
+  border-width: 1px;
+}
+/* Set default table styles if a table has a positive border attribute
+   and no inline css */
+table[border]:not([border="0"]):not([style*="border-style"]) th,
+table[border]:not([border="0"]):not([style*="border-style"]) td {
+  border-style: solid;
+}
+/* Set default table styles if a table has a positive border attribute
+   and no inline css */
+table[border]:not([border="0"]):not([style*="border-color"]) th,
+table[border]:not([border="0"]):not([style*="border-color"]) td {
+  border-color: #ccc;
+}
+figure figcaption {
+  color: #999;
+  margin-top: 0.25rem;
+  text-align: center;
+}
+hr {
+  border-color: #ccc;
+  border-style: solid;
+  border-width: 1px 0 0 0;
+}
+.mce-content-body:not([dir=rtl]) blockquote {
+  border-left: 2px solid #ccc;
+  margin-left: 1.5rem;
+  padding-left: 1rem;
+}
+.mce-content-body[dir=rtl] blockquote {
+  border-right: 2px solid #ccc;
+  margin-right: 1.5rem;
+  padding-right: 1rem;
+}

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/document/content.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/document/content.min.css


+ 66 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/tinymce-5-dark/content.css

@@ -0,0 +1,66 @@
+body {
+  background-color: #2f3742;
+  color: #dfe0e4;
+  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
+  line-height: 1.4;
+  margin: 1rem;
+}
+a {
+  color: #4099ff;
+}
+table {
+  border-collapse: collapse;
+}
+/* Apply a default padding if legacy cellpadding attribute is missing */
+table:not([cellpadding]) th,
+table:not([cellpadding]) td {
+  padding: 0.4rem;
+}
+/* Set default table styles if a table has a positive border attribute
+   and no inline css */
+table[border]:not([border="0"]):not([style*="border-width"]) th,
+table[border]:not([border="0"]):not([style*="border-width"]) td {
+  border-width: 1px;
+}
+/* Set default table styles if a table has a positive border attribute
+   and no inline css */
+table[border]:not([border="0"]):not([style*="border-style"]) th,
+table[border]:not([border="0"]):not([style*="border-style"]) td {
+  border-style: solid;
+}
+/* Set default table styles if a table has a positive border attribute
+   and no inline css */
+table[border]:not([border="0"]):not([style*="border-color"]) th,
+table[border]:not([border="0"]):not([style*="border-color"]) td {
+  border-color: #6d737b;
+}
+figure {
+  display: table;
+  margin: 1rem auto;
+}
+figure figcaption {
+  color: #8a8f97;
+  display: block;
+  margin-top: 0.25rem;
+  text-align: center;
+}
+hr {
+  border-color: #6d737b;
+  border-style: solid;
+  border-width: 1px 0 0 0;
+}
+code {
+  background-color: #6d737b;
+  border-radius: 3px;
+  padding: 0.1rem 0.2rem;
+}
+.mce-content-body:not([dir=rtl]) blockquote {
+  border-left: 2px solid #6d737b;
+  margin-left: 1.5rem;
+  padding-left: 1rem;
+}
+.mce-content-body[dir=rtl] blockquote {
+  border-right: 2px solid #6d737b;
+  margin-right: 1.5rem;
+  padding-right: 1rem;
+}

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/tinymce-5-dark/content.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/tinymce-5-dark/content.min.css


+ 61 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/tinymce-5/content.css

@@ -0,0 +1,61 @@
+body {
+  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
+  line-height: 1.4;
+  margin: 1rem;
+}
+table {
+  border-collapse: collapse;
+}
+/* Apply a default padding if legacy cellpadding attribute is missing */
+table:not([cellpadding]) th,
+table:not([cellpadding]) td {
+  padding: 0.4rem;
+}
+/* Set default table styles if a table has a positive border attribute
+   and no inline css */
+table[border]:not([border="0"]):not([style*="border-width"]) th,
+table[border]:not([border="0"]):not([style*="border-width"]) td {
+  border-width: 1px;
+}
+/* Set default table styles if a table has a positive border attribute
+   and no inline css */
+table[border]:not([border="0"]):not([style*="border-style"]) th,
+table[border]:not([border="0"]):not([style*="border-style"]) td {
+  border-style: solid;
+}
+/* Set default table styles if a table has a positive border attribute
+   and no inline css */
+table[border]:not([border="0"]):not([style*="border-color"]) th,
+table[border]:not([border="0"]):not([style*="border-color"]) td {
+  border-color: #ccc;
+}
+figure {
+  display: table;
+  margin: 1rem auto;
+}
+figure figcaption {
+  color: #999;
+  display: block;
+  margin-top: 0.25rem;
+  text-align: center;
+}
+hr {
+  border-color: #ccc;
+  border-style: solid;
+  border-width: 1px 0 0 0;
+}
+code {
+  background-color: #e8e8e8;
+  border-radius: 3px;
+  padding: 0.1rem 0.2rem;
+}
+.mce-content-body:not([dir=rtl]) blockquote {
+  border-left: 2px solid #ccc;
+  margin-left: 1.5rem;
+  padding-left: 1rem;
+}
+.mce-content-body[dir=rtl] blockquote {
+  border-right: 2px solid #ccc;
+  margin-right: 1.5rem;
+  padding-right: 1rem;
+}

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/tinymce-5/content.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/tinymce-5/content.min.css


+ 62 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/writer/content.css

@@ -0,0 +1,62 @@
+body {
+  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
+  line-height: 1.4;
+  margin: 1rem auto;
+  max-width: 900px;
+}
+table {
+  border-collapse: collapse;
+}
+/* Apply a default padding if legacy cellpadding attribute is missing */
+table:not([cellpadding]) th,
+table:not([cellpadding]) td {
+  padding: 0.4rem;
+}
+/* Set default table styles if a table has a positive border attribute
+   and no inline css */
+table[border]:not([border="0"]):not([style*="border-width"]) th,
+table[border]:not([border="0"]):not([style*="border-width"]) td {
+  border-width: 1px;
+}
+/* Set default table styles if a table has a positive border attribute
+   and no inline css */
+table[border]:not([border="0"]):not([style*="border-style"]) th,
+table[border]:not([border="0"]):not([style*="border-style"]) td {
+  border-style: solid;
+}
+/* Set default table styles if a table has a positive border attribute
+   and no inline css */
+table[border]:not([border="0"]):not([style*="border-color"]) th,
+table[border]:not([border="0"]):not([style*="border-color"]) td {
+  border-color: #ccc;
+}
+figure {
+  display: table;
+  margin: 1rem auto;
+}
+figure figcaption {
+  color: #999;
+  display: block;
+  margin-top: 0.25rem;
+  text-align: center;
+}
+hr {
+  border-color: #ccc;
+  border-style: solid;
+  border-width: 1px 0 0 0;
+}
+code {
+  background-color: #e8e8e8;
+  border-radius: 3px;
+  padding: 0.1rem 0.2rem;
+}
+.mce-content-body:not([dir=rtl]) blockquote {
+  border-left: 2px solid #ccc;
+  margin-left: 1.5rem;
+  padding-left: 1rem;
+}
+.mce-content-body[dir=rtl] blockquote {
+  border-right: 2px solid #ccc;
+  margin-right: 1.5rem;
+  padding-right: 1rem;
+}

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/writer/content.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/content/writer/content.min.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 770 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/content.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 776 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/content.inline.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/content.inline.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/content.inline.min.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/content.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/content.min.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 4663 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/skin.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/skin.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/skin.min.css


+ 30 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/skin.shadowdom.css

@@ -0,0 +1,30 @@
+body.tox-dialog__disable-scroll {
+  overflow: hidden;
+}
+.tox-fullscreen {
+  border: 0;
+  height: 100%;
+  margin: 0;
+  overflow: hidden;
+  overscroll-behavior: none;
+  padding: 0;
+  touch-action: pinch-zoom;
+  width: 100%;
+}
+.tox.tox-tinymce.tox-fullscreen .tox-statusbar__resize-handle {
+  display: none;
+}
+.tox.tox-tinymce.tox-fullscreen,
+.tox-shadowhost.tox-fullscreen {
+  left: 0;
+  position: fixed;
+  top: 0;
+  z-index: 1200;
+}
+.tox.tox-tinymce.tox-fullscreen {
+  background-color: transparent;
+}
+.tox-fullscreen .tox.tox-tinymce-aux,
+.tox-fullscreen ~ .tox.tox-tinymce-aux {
+  z-index: 1201;
+}

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/skin.shadowdom.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 782 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/content.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 776 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/content.inline.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/content.inline.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/content.inline.min.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/content.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/content.min.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 4660 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/skin.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/skin.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/skin.min.css


+ 30 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/skin.shadowdom.css

@@ -0,0 +1,30 @@
+body.tox-dialog__disable-scroll {
+  overflow: hidden;
+}
+.tox-fullscreen {
+  border: 0;
+  height: 100%;
+  margin: 0;
+  overflow: hidden;
+  overscroll-behavior: none;
+  padding: 0;
+  touch-action: pinch-zoom;
+  width: 100%;
+}
+.tox.tox-tinymce.tox-fullscreen .tox-statusbar__resize-handle {
+  display: none;
+}
+.tox.tox-tinymce.tox-fullscreen,
+.tox-shadowhost.tox-fullscreen {
+  left: 0;
+  position: fixed;
+  top: 0;
+  z-index: 1200;
+}
+.tox.tox-tinymce.tox-fullscreen {
+  background-color: transparent;
+}
+.tox-fullscreen .tox.tox-tinymce-aux,
+.tox-fullscreen ~ .tox.tox-tinymce-aux {
+  z-index: 1201;
+}

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/skin.shadowdom.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/oxide/skin.shadowdom.min.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 770 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/content.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 776 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/content.inline.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/content.inline.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/content.inline.min.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/content.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/content.min.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 4773 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/skin.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/skin.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/skin.min.css


+ 30 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.css

@@ -0,0 +1,30 @@
+body.tox-dialog__disable-scroll {
+  overflow: hidden;
+}
+.tox-fullscreen {
+  border: 0;
+  height: 100%;
+  margin: 0;
+  overflow: hidden;
+  overscroll-behavior: none;
+  padding: 0;
+  touch-action: pinch-zoom;
+  width: 100%;
+}
+.tox.tox-tinymce.tox-fullscreen .tox-statusbar__resize-handle {
+  display: none;
+}
+.tox.tox-tinymce.tox-fullscreen,
+.tox-shadowhost.tox-fullscreen {
+  left: 0;
+  position: fixed;
+  top: 0;
+  z-index: 1200;
+}
+.tox.tox-tinymce.tox-fullscreen {
+  background-color: transparent;
+}
+.tox-fullscreen .tox.tox-tinymce-aux,
+.tox-fullscreen ~ .tox.tox-tinymce-aux {
+  z-index: 1201;
+}

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.min.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 782 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/content.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 776 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/content.inline.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/content.inline.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/content.inline.min.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/content.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/content.min.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 4773 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/skin.css


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/skin.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/skin.min.css


+ 30 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/skin.shadowdom.css

@@ -0,0 +1,30 @@
+body.tox-dialog__disable-scroll {
+  overflow: hidden;
+}
+.tox-fullscreen {
+  border: 0;
+  height: 100%;
+  margin: 0;
+  overflow: hidden;
+  overscroll-behavior: none;
+  padding: 0;
+  touch-action: pinch-zoom;
+  width: 100%;
+}
+.tox.tox-tinymce.tox-fullscreen .tox-statusbar__resize-handle {
+  display: none;
+}
+.tox.tox-tinymce.tox-fullscreen,
+.tox-shadowhost.tox-fullscreen {
+  left: 0;
+  position: fixed;
+  top: 0;
+  z-index: 1200;
+}
+.tox.tox-tinymce.tox-fullscreen {
+  background-color: transparent;
+}
+.tox-fullscreen .tox.tox-tinymce-aux,
+.tox-fullscreen ~ .tox.tox-tinymce-aux {
+  z-index: 1201;
+}

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/skin.shadowdom.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 0
fhKeeper/formulahousekeeper/articleBackend/public/tinymce/skins/ui/tinymce-5/skin.shadowdom.min.css


+ 143 - 0
fhKeeper/formulahousekeeper/articleBackend/src/components/backend/TinymceEditor.vue

@@ -0,0 +1,143 @@
+<template>
+  <div>
+      <Editor v-model="content" :init="myTinyInit"></Editor>
+  </div>
+</template>
+
+<script setup>
+import {computed, defineEmits, defineProps, onMounted, reactive, ref, watch} from 'vue'
+import tinymce from "tinymce/tinymce";
+import Editor from '@tinymce/tinymce-vue';
+import "tinymce/icons/default/icons";
+import "tinymce/themes/silver";
+import "tinymce/models/dom/model";
+
+//按需引入插件
+// import "tinymce/plugins/image";
+// import "tinymce/plugins/table";
+// import "tinymce/plugins/lists";
+// import "tinymce/plugins/link";
+// import "tinymce/plugins/help";
+// import "tinymce/plugins/wordcount";
+
+import 'tinymce/models/dom'; // 引入dom模块。从 Tinymce6,开始必须有此模块导入
+import 'tinymce/skins/ui/oxide/skin.css'//样式
+import 'tinymce/themes/silver'; //默认主题
+// import 'tinymce/icons/default'; //引入编辑器图标icon,不引入则不显示对应图标
+// import 'tinymce/langs/zh-Hans'; //引入编辑器语言包
+// import '/tinymce/langs/zh-CN'; //引入编辑器语言包
+// import 'tinymce/models/dom'; // 引入dom模块。从 Tinymce6,开始必须有此模块导入
+// import 'tinymce/themes/silver'; //默认主题
+// import 'tinymce/icons/default'; //引入编辑器图标icon,不引入则不显示对应图标
+import 'tinymce/plugins/advlist'; //高级列表
+import 'tinymce/plugins/anchor'; //锚点
+import 'tinymce/plugins/autolink'; //自动链接
+import 'tinymce/plugins/autoresize'; //编辑器高度自适应,注:plugins里引入此插件时,Init里设置的height将失效
+import 'tinymce/plugins/autosave'; //自动存稿
+import 'tinymce/plugins/charmap'; //特殊字符
+import 'tinymce/plugins/code'; //编辑源码
+import 'tinymce/plugins/codesample'; //代码示例
+import 'tinymce/plugins/directionality'; //文字方向
+import 'tinymce/plugins/emoticons'; //表情
+import 'tinymce/plugins/fullscreen'; //全屏
+import 'tinymce/plugins/help'; //帮助
+import 'tinymce/plugins/image'; //插入编辑图片
+import 'tinymce/plugins/importcss'; //引入css
+import 'tinymce/plugins/insertdatetime'; //插入日期时间
+import 'tinymce/plugins/link'; //超链接
+import 'tinymce/plugins/lists'; //列表插件
+import 'tinymce/plugins/media'; //插入编辑媒体
+import 'tinymce/plugins/nonbreaking'; //插入不间断空格
+import 'tinymce/plugins/pagebreak'; //插入分页符
+import 'tinymce/plugins/preview'; //预览
+import 'tinymce/plugins/quickbars'; //快速工具栏
+import 'tinymce/plugins/save'; //保存
+import 'tinymce/plugins/searchreplace'; //查找替换
+import 'tinymce/plugins/table'; //表格
+// import 'tinymce/plugins/template'; //内容模板
+import 'tinymce/plugins/visualblocks'; //显示元素范围
+import 'tinymce/plugins/visualchars'; //显示不可见字符
+import 'tinymce/plugins/wordcount'; //字数统计
+
+import axios from "axios";
+
+const props = defineProps({
+  modelValue: {
+      type: String,
+      default: ""
+  },
+  plugins: {
+      type: [String, Array],
+      // default:'lists link image table help wordcount',
+      default:'codesample preview searchreplace autolink directionality visualblocks visualchars image link template table charmap pagebreak nonbreaking anchor insertdatetime advlist lists wordcount autosave help'
+  },
+  toolbar: {
+      type: [String, Array],
+      default: `undo redo formatselect bold italic  alignjustify bullist numlist outdent indent help preview codesample code  backcolor styles directionality fontfamily fontsize searchreplace image link alignleft aligncenter alignright template table charmap pagebreak nonbreaking anchor
+  insertdatetime advlist lists wordcount autosave `,
+  }
+});
+const emit = defineEmits(['input']);
+const piniaToken = JSON.parse(localStorage.getItem('pinia-token') || '')
+const myTinyInit = reactive({
+  width: '100%',
+  height: 500,
+  branding: true,
+  menubar: true,
+  resize: true,
+  promotion: false, //Upgrade是否开启
+  branding: false, //tiny技术支持信息是否显示
+  language_url: "/tinymce/langs/zh_CN.js", // 语言包的路径,具体路径看自己的项目
+  language: "zh_CN",
+  skin_url: "/tinymce/skins/ui/oxide", //手动引入
+  content_css: '/tinymce/skins/content/default/content.css', //手动引入
+  toolbar_mode: "wrap",
+  plugins: props.plugins,
+  toolbar: props.toolbar,
+  line_height_formats: '1 1.2 1.4 1.6 2', //行高
+  font_size_formats: '12px 14px 16px 18px 20px 22px 24px 28px 32px 36px 48px 56px 72px', //字体大小
+  font_family_formats:'微软雅黑=Microsoft YaHei,Helvetica Neue,PingFang SC,sans-serif;苹果苹方=PingFang SC,Microsoft YaHei,sans-serif;宋体=simsun,serif;仿宋体=FangSong,serif;黑体=SimHei,sans-serif;Arial=arial,helvetica,sans-serif;Arial Black=arial black,avant garde;Book Antiqua=book antiqua,palatino;',
+  //图片上传方法(注意!!:要使用 promise 对象中的 resolve 返回图片路径,否则会报错)
+  images_upload_handler: (blobInfo) => new Promise((resolve, reject) => {
+      let formData = new FormData();
+      console.log(blobInfo, '<==== blobInfo')
+      formData.append('multipartFile', blobInfo.blob(), blobInfo.filename());
+      axios.post(`/api/common/uploadFile`, formData, {
+          headers: ({
+              'Content-Type': 'multipart/form-data',
+              // 'Authorization': "Bearer " + piniaToken.token
+              'Authorization': piniaToken.token
+          })
+      }).then(res => {
+          if(res.data.code == 0) {
+            resolve(`${res.data.data}`)
+          } else {
+            ElMessage.warning('上传失败')
+          }
+      }).catch(error => {
+          reject(error);
+      })
+  }),
+});
+
+
+const initContent = computed(() => {
+  return props.modelValue
+});
+
+onMounted(() => {
+  tinymce.init({});
+})
+
+const content = ref();
+watch(initContent, (newVal) => {
+  content.value = newVal;
+}, {deep: true, immediate: true});
+
+watch(content, (newVal) => {
+  emit("input", newVal);
+}, {deep: true});
+</script>
+
+<style scoped lang="scss">
+</style>

+ 1 - 1
fhKeeper/formulahousekeeper/articleBackend/src/main.js

@@ -30,7 +30,7 @@ app.use(pinia)
 app.use(router)
 
 // 使用element-plus 和他的中文语言包
-app.use(ElementPlus,{locale});
+app.use(ElementPlus,{locale, zIndex: 1000});
 
 // 必须最后才能挂载,若先挂载,则 app.use 的那些配置都不生效了。
 app.mount('#app');

+ 6 - 0
fhKeeper/formulahousekeeper/articleBackend/src/views/Layout.vue

@@ -94,6 +94,12 @@ const handleCommand=(command)=>{
                     </el-icon>
                     <span>文章管理</span>
                 </el-menu-item>
+                <el-menu-item index="/textText/text">
+                    <el-icon>
+                        <Promotion />
+                    </el-icon>
+                    <span>测试文本</span>
+                </el-menu-item>
                 <el-sub-menu >
                     <template #title>
                         <el-icon>

+ 5 - 3
fhKeeper/formulahousekeeper/articleBackend/src/views/article/ArticleManage.vue

@@ -6,6 +6,7 @@ import {
 // 文章编辑器组件
 import { QuillEditor, Quill } from "@vueup/vue-quill";
 import "@vueup/vue-quill/dist/vue-quill.snow.css";
+import Editor from '@/components/backend/TinymceEditor.vue';
 // import { ImageDrop } from 'quill-image-drop-module';
 // import ImageResize from 'quill-image-resize-module';
 
@@ -324,7 +325,7 @@ const deleteArticle = async (row) => {
         <!-- 文章列表 -->
         <el-table :data="articles" style="width: 100%">
             <el-table-column label="文章标题" width="400" prop="title"></el-table-column>
-            <el-table-column label="分类" prop="categoryNames"></el-table-column>
+            <el-table-column label="标签" prop="categoryNames"></el-table-column>
             <el-table-column label="发表时间" prop="createTime"> </el-table-column>
             <el-table-column label="状态" prop="state"></el-table-column>
             <el-table-column label="操作" width="100">
@@ -388,14 +389,15 @@ const deleteArticle = async (row) => {
                 <el-form-item label="文章内容">
                     <div class="editor">
                         <!--富文本编辑器组件-->
-                        <quill-editor
+                        <!-- <quill-editor
                             theme="snow"
                             v-model:content="articleModel.content"
                             contentType="html"
                             :options="options"
                             :key="quilleditorKey"
                             >
-                        </quill-editor>
+                        </quill-editor> -->
+                        <editor v-model="articleModel.content" @input="(val)=> {articleModel.content=val}"></editor>
                     </div>
                 </el-form-item>
                 <el-form-item>

+ 14 - 2
fhKeeper/formulahousekeeper/articleBackend/src/views/testText/text.vue

@@ -1,3 +1,15 @@
 <template>
-  测试文本
-</template>
+  <div>
+     <editor v-model="notificationForm.content" @input="(val)=> {notificationForm.content=val}"></editor>
+     //@input方法需要自己定义,不然父组件可能获取不到editor的值
+      测试文本
+  </div>
+</template>
+
+<script setup>
+import {reactive} from 'vue'
+import Editor from '@/components/backend/TinymceEditor.vue';
+const notificationForm = reactive({
+   content: '',    
+})
+</script>