diff --git a/wax-prosemirror-plugins/src/AnnotationService/tools/index.js b/wax-prosemirror-plugins/src/AnnotationService/tools/index.js index 64e4415430cbd09b32e778b129ea01249a6a1c9c..26341a45b9eae7d55296c7e5f17406d0cccaf31a 100644 --- a/wax-prosemirror-plugins/src/AnnotationService/tools/index.js +++ b/wax-prosemirror-plugins/src/AnnotationService/tools/index.js @@ -1,5 +1,4 @@ export { default as Blockquote } from "./Blockquote"; export { default as SmallCaps } from "./SmallCaps"; -export { default as Underline } from "./Underline"; export { default as Table } from "./Table"; export { default as TableDropDownOptions } from "./TableDropDownOptions"; diff --git a/wax-prosemirror-plugins/src/AnnotationService/tools/Underline.js b/wax-prosemirror-plugins/src/InlineAnnotations/UnderlineService/Underline.js similarity index 100% rename from wax-prosemirror-plugins/src/AnnotationService/tools/Underline.js rename to wax-prosemirror-plugins/src/InlineAnnotations/UnderlineService/Underline.js diff --git a/wax-prosemirror-plugins/src/InlineAnnotations/UnderlineService/UnderlineService.js b/wax-prosemirror-plugins/src/InlineAnnotations/UnderlineService/UnderlineService.js new file mode 100644 index 0000000000000000000000000000000000000000..5e9fd797f3a47d8e57b5af61a3c801db0b30f47f --- /dev/null +++ b/wax-prosemirror-plugins/src/InlineAnnotations/UnderlineService/UnderlineService.js @@ -0,0 +1,18 @@ +import Service from "wax-prosemirror-core/src/services/Service"; +import { underlineMark } from "wax-prosemirror-schema"; +import Underline from "./Underline"; + +class UnderlineService extends Service { + register() { + this.container.bind("Underline").to(Underline); + + this.container + .bind("schema") + .toConstantValue({ + underline: underlineMark + }) + .whenTargetNamed("mark"); + } +} + +export default UnderlineService; diff --git a/wax-prosemirror-plugins/src/InlineAnnotations/index.js b/wax-prosemirror-plugins/src/InlineAnnotations/index.js index 25dec0ebd594e808204c289797cca7cc340ca08d..ad9036fd205681a2b6e47d5d5c645fbe5b8e3a3a 100644 --- a/wax-prosemirror-plugins/src/InlineAnnotations/index.js +++ b/wax-prosemirror-plugins/src/InlineAnnotations/index.js @@ -4,11 +4,14 @@ import EmphasisService from "./EmphasisService/EmphasisService"; import SubscriptService from "./SubscriptService/SubscriptService"; import SuperscriptService from "./SuperscriptService/SuperscriptService"; import StrikeThroughService from "./StrikeThroughService/StrikeThroughService"; +import UnderlineService from "./UnderlineService/UnderlineService"; + export default [ new CodeService(), new StrongService(), new EmphasisService(), new SubscriptService(), new SuperscriptService(), - new StrikeThroughService() + new StrikeThroughService(), + new UnderlineService() ]; diff --git a/wax-prosemirror-schema/index.js b/wax-prosemirror-schema/index.js index dea985b30a3b68ee2171999c4d1fd78602eb5963..2a5f4c3b7d0d332a422e908d2264aeaf05e498b7 100644 --- a/wax-prosemirror-schema/index.js +++ b/wax-prosemirror-schema/index.js @@ -12,6 +12,7 @@ export { default as emphasisMark } from "./src/marks/emphasisMark"; export { default as subscriptMark } from "./src/marks/subscriptMark"; export { default as superscriptMark } from "./src/marks/superscriptMark"; export { default as strikethroughMark } from "./src/marks/strikethroughMark"; +export { default as underlineMark } from "./src/marks/underlineMark"; export { default as smallcapsMark } from "./src/marks/smallcapsMark"; /* LIST OF SUPPORTED NODES diff --git a/wax-prosemirror-schema/src/editoria/marks.js b/wax-prosemirror-schema/src/editoria/marks.js index 2191cf6aa864b5c1deffd2990137f9ddaaa7b1f0..d0d989e3b64f475793836227de989656c1b8df41 100644 --- a/wax-prosemirror-schema/src/editoria/marks.js +++ b/wax-prosemirror-schema/src/editoria/marks.js @@ -3,15 +3,6 @@ const emDOM = ["em", 0], codeDOM = ["code", 0]; const marks = { - underline: { - parseDOM: [{ tag: "u" }, { style: "text-decoration:underline" }], - toDOM: () => [ - "span", - { - style: "text-decoration:underline" - } - ] - }, small_caps: { attrs: { class: { default: "small-caps" }