From 62bd86e43644f8303502ce4e04fbf263ee8b6e18 Mon Sep 17 00:00:00 2001 From: Tobias Klika Date: Mon, 14 Dec 2020 01:04:14 +0100 Subject: [PATCH] replace Quill.js with tiptap (based on ProseMirror) --- zero.Web.UI/App/components/forms/rte.vue | 293 +++++++----------- zero.Web.UI/Sass/Core/_forms.scss | 2 +- zero.Web.UI/app/components/all.js | 2 - zero.Web.UI/app/components/forms/quill.vue | 230 +++++++------- .../app/components/forms/rte-legacy.vue | 248 +++++++++++++++ zero.Web.UI/app/core/editor-field.ts | 11 - zero.Web.UI/app/editor/fields/quill.vue | 20 -- zero.Web.UI/package.json | 3 +- 8 files changed, 485 insertions(+), 324 deletions(-) create mode 100644 zero.Web.UI/app/components/forms/rte-legacy.vue delete mode 100644 zero.Web.UI/app/editor/fields/quill.vue diff --git a/zero.Web.UI/App/components/forms/rte.vue b/zero.Web.UI/App/components/forms/rte.vue index 128ef6b3..329cd0f5 100644 --- a/zero.Web.UI/App/components/forms/rte.vue +++ b/zero.Web.UI/App/components/forms/rte.vue @@ -1,12 +1,14 @@  @@ -14,11 +16,20 @@ \ No newline at end of file diff --git a/zero.Web.UI/Sass/Core/_forms.scss b/zero.Web.UI/Sass/Core/_forms.scss index 8062b3ff..3824c1f4 100644 --- a/zero.Web.UI/Sass/Core/_forms.scss +++ b/zero.Web.UI/Sass/Core/_forms.scss @@ -14,7 +14,7 @@ input[type="text"], input[type="color"], input[type="date"], input[type="datetime"], input[type="email"], input[type="file"], input[type="month"], input[type="number"], input[type="password"], input[type="range"], input[type="search"], input[type="tel"], input[type="time"], input[type="url"], input[type="week"], -textarea, .ui-native-select +textarea, .ui-native-select, .ui-rte-input { @extend %font; background: var(--color-input); diff --git a/zero.Web.UI/app/components/all.js b/zero.Web.UI/app/components/all.js index 3622673c..5eab97e9 100644 --- a/zero.Web.UI/app/components/all.js +++ b/zero.Web.UI/app/components/all.js @@ -14,7 +14,6 @@ import uiForm from './forms/form.vue'; import uiInputList from './forms/input-list.vue'; import uiProperty from './forms/property.vue'; import uiRte from './forms/rte.vue'; -import uiQuill from './forms/quill.vue'; import uiSearch from './forms/search.vue'; import uiTags from './forms/tags.vue'; import uiToggle from './forms/toggle.vue'; @@ -78,7 +77,6 @@ export default { uiInputList, uiProperty, uiRte, - uiQuill, uiSearch, uiTags, uiToggle, diff --git a/zero.Web.UI/app/components/forms/quill.vue b/zero.Web.UI/app/components/forms/quill.vue index 402c4398..f442fa49 100644 --- a/zero.Web.UI/app/components/forms/quill.vue +++ b/zero.Web.UI/app/components/forms/quill.vue @@ -1,19 +1,66 @@  \ No newline at end of file diff --git a/zero.Web.UI/app/components/forms/rte-legacy.vue b/zero.Web.UI/app/components/forms/rte-legacy.vue new file mode 100644 index 00000000..128ef6b3 --- /dev/null +++ b/zero.Web.UI/app/components/forms/rte-legacy.vue @@ -0,0 +1,248 @@ + + + + + + \ No newline at end of file diff --git a/zero.Web.UI/app/core/editor-field.ts b/zero.Web.UI/app/core/editor-field.ts index b640f7cd..e8b85aab 100644 --- a/zero.Web.UI/app/core/editor-field.ts +++ b/zero.Web.UI/app/core/editor-field.ts @@ -3,7 +3,6 @@ import Text from '../editor/fields/text.vue'; import Currency from '../editor/fields/currency.vue'; import Number from '../editor/fields/number.vue'; import Rte from '../editor/fields/rte.vue'; -import QuillRte from '../editor/fields/quill.vue'; import Select from '../editor/fields/select.vue'; import Textarea from '../editor/fields/textarea.vue'; import Toggle from '../editor/fields/toggle.vue'; @@ -201,16 +200,6 @@ class EditorField } - /** - * Render a rich-text editor (powered by Quill) field - * @returns {EditorField} - */ - quill() - { - return this._setComponent(QuillRte); - } - - /** * @typedef {object} EditorSelectItem * @param {object} key - Key/Id of the item diff --git a/zero.Web.UI/app/editor/fields/quill.vue b/zero.Web.UI/app/editor/fields/quill.vue deleted file mode 100644 index cb59c9a2..00000000 --- a/zero.Web.UI/app/editor/fields/quill.vue +++ /dev/null @@ -1,20 +0,0 @@ - - - - \ No newline at end of file diff --git a/zero.Web.UI/package.json b/zero.Web.UI/package.json index 37431a61..7ab8de51 100644 --- a/zero.Web.UI/package.json +++ b/zero.Web.UI/package.json @@ -11,8 +11,9 @@ "dayjs": "^1.8.26", "flatpickr": "^4.6.3", "qs": "^6.9.4", - "quill": "^1.3.7", "sortablejs": "^1.10.2", + "tiptap": "^1.30.0", + "tiptap-extensions": "^1.33.2", "underscore": "^1.10.2", "vue": "^2.6.12", "vue-router": "^3.4.8"