diff --git a/wax-prosemirror-components/package.json b/wax-prosemirror-components/package.json index 0e144b1f2f636a1c51648ee1f382af8ffcd9297d..50878775a4bf21664620da28fa2ff53983c444e9 100644 --- a/wax-prosemirror-components/package.json +++ b/wax-prosemirror-components/package.json @@ -4,7 +4,7 @@ "version": "0.0.11", "description": "Wax prosemirror UI components", "license": "MIT", - "main": "dist/index.js", + "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "build": "BABEL_ENV=production rollup -c" diff --git a/wax-prosemirror-core/package.json b/wax-prosemirror-core/package.json index 482e31200da77b3168c26fce296b702305d909e8..2bc7a5ffdec27aa4fd45ec4c7b35dde377936d1f 100644 --- a/wax-prosemirror-core/package.json +++ b/wax-prosemirror-core/package.json @@ -4,7 +4,7 @@ "version": "0.0.11", "description": "Wax prosemirror core", "license": "MIT", - "main": "dist/index.js", + "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "build": "BABEL_ENV=production rollup -c" diff --git a/wax-prosemirror-layouts/package.json b/wax-prosemirror-layouts/package.json index d753bac203f052523bfe769ecf6a429c14675b3b..d32477de5d2c02bc3fec949d44476830665d4140 100644 --- a/wax-prosemirror-layouts/package.json +++ b/wax-prosemirror-layouts/package.json @@ -4,7 +4,7 @@ "version": "0.0.11", "description": "Wax prosemirror layouts", "license": "MIT", - "main": "dist/index.js", + "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "build": "BABEL_ENV=production rollup -c" diff --git a/wax-prosemirror-plugins/package.json b/wax-prosemirror-plugins/package.json index c60d16ece4aa385d5af951fc49ab1fc042030423..e57c59288f9cd52ffa80453fbd2601160759cee1 100644 --- a/wax-prosemirror-plugins/package.json +++ b/wax-prosemirror-plugins/package.json @@ -4,7 +4,7 @@ "version": "0.0.11", "description": "Wax prosemirror plugins", "license": "MIT", - "main": "dist/index.js", + "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "build": "BABEL_ENV=production rollup -c" diff --git a/wax-prosemirror-schema/index.js b/wax-prosemirror-schema/index.js index 5a1ac5c336f78b7ba1d1f1d15c0ade1292e8065e..d821cda25f31af100d0d6f5cd35b7b4acc9068fd 100644 --- a/wax-prosemirror-schema/index.js +++ b/wax-prosemirror-schema/index.js @@ -1,42 +1,43 @@ /* LIST OF SUPPORTED MARKS */ -export { default as codeMark } from "./src/marks/codeMark"; -export { default as strongMark } from "./src/marks/strongMark"; -export { default as linkMark } from "./src/marks/linkMark"; -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"; -export { default as sourceMark } from "./src/marks/sourceMark"; -export { default as commentMark } from "./src/marks/commentMark"; +export { default as codeMark } from './src/marks/codeMark'; +export { default as strongMark } from './src/marks/strongMark'; +export { default as linkMark } from './src/marks/linkMark'; +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'; +export { default as sourceMark } from './src/marks/sourceMark'; +export { default as commentMark } from './src/marks/commentMark'; /* LIST OF TRACK CHANGES MARKS */ -export { default as trackChangesMarks } from "./src/marks/trackChangesMarks"; +export { default as trackChangesMarks } from './src/marks/trackChangesMarks'; /* LIST OF SUPPORTED NODES */ -export { default as authorNode } from "./src/nodes/authorNode"; -export { default as epigraphPoetryNode } from "./src/nodes/epigraphPoetryNode"; -export { default as epigraphProseNode } from "./src/nodes/epigraphProseNode"; -export { default as sourceNoteNode } from "./src/nodes/sourceNoteNode"; -export { default as paragraphContNode } from "./src/nodes/paragraphContNode"; -export { default as extractProseNode } from "./src/nodes/extractProseNode"; -export { default as extractPoetryNode } from "./src/nodes/extractPoetryNode"; -export { default as titleNode } from "./src/nodes/titleNode"; -export { default as orderedListNode } from "./src/nodes/orderedListNode"; -export { default as bulletListNode } from "./src/nodes/bulletListNode"; -export { default as listItemNode } from "./src/nodes/listItemNode"; -export { default as subTitleNode } from "./src/nodes/subTitleNode"; -export { default as imageNode } from "./src/nodes/imageNode"; -export { default as headingNode } from "./src/nodes/headingNode"; -export { default as blockQuoteNode } from "./src/nodes/blockQuoteNode"; -export { default as footNoteNode } from "./src/nodes/footNoteNode"; +export { default as authorNode } from './src/nodes/authorNode'; +export { default as epigraphPoetryNode } from './src/nodes/epigraphPoetryNode'; +export { default as epigraphProseNode } from './src/nodes/epigraphProseNode'; +export { default as sourceNoteNode } from './src/nodes/sourceNoteNode'; +export { default as paragraphContNode } from './src/nodes/paragraphContNode'; +export { default as extractProseNode } from './src/nodes/extractProseNode'; +export { default as extractPoetryNode } from './src/nodes/extractPoetryNode'; +export { default as titleNode } from './src/nodes/titleNode'; +export { default as orderedListNode } from './src/nodes/orderedListNode'; +export { default as bulletListNode } from './src/nodes/bulletListNode'; +export { default as listItemNode } from './src/nodes/listItemNode'; +export { default as subTitleNode } from './src/nodes/subTitleNode'; +export { default as imageNode } from './src/nodes/imageNode'; +export { default as headingNode } from './src/nodes/headingNode'; +export { default as blockQuoteNode } from './src/nodes/blockQuoteNode'; +export { default as footNoteNode } from './src/nodes/footNoteNode'; +export { default as codeBlockNode } from './src/nodes/codeBlockNode'; /* LIST OF TRACK CHANGES NODES */ -export { default as trackChangesNodes } from "./src/nodes/trackChangesNodes"; +export { default as trackChangesNodes } from './src/nodes/trackChangesNodes'; diff --git a/wax-prosemirror-schema/package.json b/wax-prosemirror-schema/package.json index 7dbab31226464154cc7d7d41e58950fe534504d7..6aff35c7dd5732f3c667d040073859a10b074ee8 100644 --- a/wax-prosemirror-schema/package.json +++ b/wax-prosemirror-schema/package.json @@ -4,7 +4,7 @@ "version": "0.0.11", "description": "Wax prosemirror schema", "license": "MIT", - "main": "dist/index.js", + "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "build": "BABEL_ENV=production rollup -c" diff --git a/wax-prosemirror-schema/src/nodes/codeBlockNode.js b/wax-prosemirror-schema/src/nodes/codeBlockNode.js new file mode 100644 index 0000000000000000000000000000000000000000..18ae5b2945ae3a23a623471be12bdd23c83eb112 --- /dev/null +++ b/wax-prosemirror-schema/src/nodes/codeBlockNode.js @@ -0,0 +1,24 @@ +const codeBlock = { + content: 'text*', + group: 'block', + code: true, + defining: true, + marks: '', + attrs: { params: { default: '' } }, + parseDOM: [ + { + tag: 'pre', + preserveWhitespace: 'full', + getAttrs(dom) { + return { + params: dom.dataset.params, + }; + }, + }, + ], + toDOM(node) { + return ['pre', { 'data-params': node.attrs.params }, ['code', 0]]; + }, +}; + +export default codeBlock; diff --git a/wax-prosemirror-services/index.js b/wax-prosemirror-services/index.js index 614241f5f7efb4a7e33b13d53a363a86e5571d56..0f53929b1d35c2498e4c4506d5e45f88f227cb74 100644 --- a/wax-prosemirror-services/index.js +++ b/wax-prosemirror-services/index.js @@ -27,6 +27,7 @@ export { default as TextBlockLevelService } from './src/TextBlockLevel/TextBlock export { default as DisplayBlockLevelService } from './src/DisplayBlockLevel/DisplayBlockLevelService'; export { default as NoteService } from './src/NoteService/NoteService'; export { default as CommentsService } from './src/CommentsService/CommentsService'; +export { default as CodeBlockService } from './src/CodeBlockService/CodeBlockService'; /* ToolGroups */ @@ -38,3 +39,4 @@ export { default as TableToolGroupService } from './src/WaxToolGroups/TableToolG export { default as DisplayToolGroupService } from './src/WaxToolGroups/DisplayToolGroupService/DisplayToolGroupService'; export { default as TextToolGroupService } from './src/WaxToolGroups/TextToolGroupService/TextToolGroupService'; export { default as NoteToolGroupService } from './src/WaxToolGroups/NoteToolGroupService/NoteToolGroupService'; +export { default as CodeBlockToolGroupService } from './src/WaxToolGroups/CodeBlockToolGroupService/CodeBlockToolGroupService'; diff --git a/wax-prosemirror-services/package.json b/wax-prosemirror-services/package.json index 03e3063ae8861e2da3b23695140c496499fabb0c..14d16865144bbafbbf1d96b427b1dfd198a49d4f 100644 --- a/wax-prosemirror-services/package.json +++ b/wax-prosemirror-services/package.json @@ -4,7 +4,7 @@ "version": "0.0.11", "description": "Wax prosemirror services", "license": "MIT", - "main": "dist/index.js", + "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "build": "BABEL_ENV=production rollup -c" @@ -18,6 +18,7 @@ "wax-prosemirror-core": "^0.0.11", "wax-prosemirror-layouts": "^0.0.11", "wax-prosemirror-utilities": "^0.0.11", + "wax-prosemirror-schema": "^0.0.11", "prosemirror-commands": "^1.1.3", "prosemirror-transform": "^1.2.3", "prosemirror-keymap": "^1.1.3", diff --git a/wax-prosemirror-services/src/CodeBlockService/CodeBlockService.js b/wax-prosemirror-services/src/CodeBlockService/CodeBlockService.js new file mode 100644 index 0000000000000000000000000000000000000000..29c71105cb1e80c5ba164b2c57c7f20a36481dda --- /dev/null +++ b/wax-prosemirror-services/src/CodeBlockService/CodeBlockService.js @@ -0,0 +1,16 @@ +import { codeBlockNode } from 'wax-prosemirror-schema'; +import Service from '../Service'; +import CodeBlockTool from './CodeBlockTool'; + +export default class CodeBlockService extends Service { + boot() {} + + register() { + this.container.bind('CodeBlock').to(CodeBlockTool); + const createNode = this.container.get('CreateNode'); + + createNode({ + codeblock: codeBlockNode, + }); + } +} diff --git a/wax-prosemirror-services/src/CodeBlockService/CodeBlockTool.js b/wax-prosemirror-services/src/CodeBlockService/CodeBlockTool.js new file mode 100644 index 0000000000000000000000000000000000000000..8e7faff1bf164aedd26d261dcebe4456224e5a14 --- /dev/null +++ b/wax-prosemirror-services/src/CodeBlockService/CodeBlockTool.js @@ -0,0 +1,16 @@ +import Tools from '../lib/Tools'; +import { injectable } from 'inversify'; +import { icons } from 'wax-prosemirror-components'; +import { Fragment } from 'prosemirror-model'; + +@injectable() +class CodeBlockTool extends Tools { + title = 'Insert Code Block'; + content = icons.footnote; + + get run() {} + + get enable() {} +} + +export default CodeBlockTool; diff --git a/wax-prosemirror-services/src/WaxToolGroups/BaseToolGroupService/BaseToolGroupService.js b/wax-prosemirror-services/src/WaxToolGroups/BaseToolGroupService/BaseToolGroupService.js index 7429579fc00c5cd0f3f045f831b9c3639c3cd21e..e70cdd3c3179a4553077cf9de2bfbcc478597ed5 100644 --- a/wax-prosemirror-services/src/WaxToolGroups/BaseToolGroupService/BaseToolGroupService.js +++ b/wax-prosemirror-services/src/WaxToolGroups/BaseToolGroupService/BaseToolGroupService.js @@ -1,11 +1,9 @@ -import Service from "../../Service"; -import Base from "./Base"; +import Service from '../../Service'; +import Base from './Base'; class BaseToolGroupService extends Service { - name = "BaseToolGroupService"; - register() { - this.container.bind("Base").to(Base); + this.container.bind('Base').to(Base); } } diff --git a/wax-prosemirror-services/src/WaxToolGroups/CodeBlockToolGroupService/CodeBlock.js b/wax-prosemirror-services/src/WaxToolGroups/CodeBlockToolGroupService/CodeBlock.js new file mode 100644 index 0000000000000000000000000000000000000000..8ad99cdf3a807800578e7628d78e02ac4092e97e --- /dev/null +++ b/wax-prosemirror-services/src/WaxToolGroups/CodeBlockToolGroupService/CodeBlock.js @@ -0,0 +1,13 @@ +import { injectable, inject } from 'inversify'; +import ToolGroup from '../../lib/ToolGroup'; + +@injectable() +class CodeBlock extends ToolGroup { + tools = []; + constructor(@inject('CodeBlock') codeblock) { + super(); + this.tools = [codeblock]; + } +} + +export default CodeBlock; diff --git a/wax-prosemirror-services/src/WaxToolGroups/CodeBlockToolGroupService/CodeBlockToolGroupService.js b/wax-prosemirror-services/src/WaxToolGroups/CodeBlockToolGroupService/CodeBlockToolGroupService.js new file mode 100644 index 0000000000000000000000000000000000000000..622ad204cf3c510148b3f23047d820212ba8f759 --- /dev/null +++ b/wax-prosemirror-services/src/WaxToolGroups/CodeBlockToolGroupService/CodeBlockToolGroupService.js @@ -0,0 +1,10 @@ +import Service from '../../Service'; +import CodeBlock from './CodeBlock'; + +class CodeBlockToolGroupService extends Service { + register() { + this.container.bind('CodeBlock').to(CodeBlock); + } +} + +export default CodeBlockToolGroupService; diff --git a/wax-prosemirror-services/src/WaxToolGroups/DisplayToolGroupService/DisplayToolGroupService.js b/wax-prosemirror-services/src/WaxToolGroups/DisplayToolGroupService/DisplayToolGroupService.js index 8ffc1852e311c5ced5d0ae2003e9530ac0344f90..ae115fabac7bfe3f6e51fe8e1ce8096a71c6a08c 100644 --- a/wax-prosemirror-services/src/WaxToolGroups/DisplayToolGroupService/DisplayToolGroupService.js +++ b/wax-prosemirror-services/src/WaxToolGroups/DisplayToolGroupService/DisplayToolGroupService.js @@ -1,11 +1,9 @@ -import Service from "../../Service"; -import Display from "./Display"; +import Service from '../../Service'; +import Display from './Display'; class DisplayToolGroupService extends Service { - name = "DisplayToolGroupService"; - register() { - this.container.bind("Display").to(Display); + this.container.bind('Display').to(Display); } } diff --git a/wax-prosemirror-services/src/WaxToolGroups/ImageToolGroupService/ImageToolGroupService.js b/wax-prosemirror-services/src/WaxToolGroups/ImageToolGroupService/ImageToolGroupService.js index cd249031ac3187899b133dcbf3013786f19e3f07..36b95737d6819970a4a05790fe1c00e80c00e2cf 100644 --- a/wax-prosemirror-services/src/WaxToolGroups/ImageToolGroupService/ImageToolGroupService.js +++ b/wax-prosemirror-services/src/WaxToolGroups/ImageToolGroupService/ImageToolGroupService.js @@ -1,11 +1,9 @@ -import Service from "../../Service"; -import Images from "./Images"; +import Service from '../../Service'; +import Images from './Images'; class ImageToolGroupService extends Service { - name = "ImageToolGroupService"; - register() { - this.container.bind("Images").to(Images); + this.container.bind('Images').to(Images); } } diff --git a/wax-prosemirror-services/src/WaxToolGroups/ListToolGroupService/ListToolGroupService.js b/wax-prosemirror-services/src/WaxToolGroups/ListToolGroupService/ListToolGroupService.js index 815d423e2c4c99ebbaf4b221667e03350fb98bd2..6e32aabb0d02087400202912a8b83d283f792a8e 100644 --- a/wax-prosemirror-services/src/WaxToolGroups/ListToolGroupService/ListToolGroupService.js +++ b/wax-prosemirror-services/src/WaxToolGroups/ListToolGroupService/ListToolGroupService.js @@ -1,11 +1,9 @@ -import Service from "../../Service"; -import Lists from "./Lists"; +import Service from '../../Service'; +import Lists from './Lists'; class ListToolGroupService extends Service { - name = "ListToolGroupService"; - register() { - this.container.bind("Lists").to(Lists); + this.container.bind('Lists').to(Lists); } } diff --git a/wax-prosemirror-services/src/WaxToolGroups/NoteToolGroupService/NoteToolGroupService.js b/wax-prosemirror-services/src/WaxToolGroups/NoteToolGroupService/NoteToolGroupService.js index 15d469325ab6ef6708dfe39f6e51675fd31e58fc..8f993428b28ed09b05c155c4f998eadc5220bd99 100644 --- a/wax-prosemirror-services/src/WaxToolGroups/NoteToolGroupService/NoteToolGroupService.js +++ b/wax-prosemirror-services/src/WaxToolGroups/NoteToolGroupService/NoteToolGroupService.js @@ -1,11 +1,9 @@ -import Service from "../../Service"; -import Notes from "./Notes"; +import Service from '../../Service'; +import Notes from './Notes'; class NoteToolGroupService extends Service { - name = "NoteToolGroupService"; - register() { - this.container.bind("Notes").to(Notes); + this.container.bind('Notes').to(Notes); } } diff --git a/wax-prosemirror-services/src/WaxToolGroups/TableToolGroupService/TableToolGroupService.js b/wax-prosemirror-services/src/WaxToolGroups/TableToolGroupService/TableToolGroupService.js index 3c0b40a5275d74806cf7b27e440a70b4572202a6..457a6fbc96981ea23e9fe1b93206c913bf1dd817 100644 --- a/wax-prosemirror-services/src/WaxToolGroups/TableToolGroupService/TableToolGroupService.js +++ b/wax-prosemirror-services/src/WaxToolGroups/TableToolGroupService/TableToolGroupService.js @@ -1,11 +1,9 @@ -import Service from "../../Service"; -import Tables from "./Tables"; +import Service from '../../Service'; +import Tables from './Tables'; class TableToolGroupService extends Service { - name = "TableToolGroupService"; - register() { - this.container.bind("Tables").to(Tables); + this.container.bind('Tables').to(Tables); } } diff --git a/wax-prosemirror-services/src/WaxToolGroups/TextToolGroupService/TextToolGroupService.js b/wax-prosemirror-services/src/WaxToolGroups/TextToolGroupService/TextToolGroupService.js index 7b074f52fb8e41f12e5b7dadd29a02abc1316aa0..397d4b978b268843c95768852364b97d98631c9b 100644 --- a/wax-prosemirror-services/src/WaxToolGroups/TextToolGroupService/TextToolGroupService.js +++ b/wax-prosemirror-services/src/WaxToolGroups/TextToolGroupService/TextToolGroupService.js @@ -1,11 +1,9 @@ -import Service from "../../Service"; -import Text from "./Text"; +import Service from '../../Service'; +import Text from './Text'; class TextToolGroupService extends Service { - name = "TextToolGroupService"; - register() { - this.container.bind("Text").to(Text); + this.container.bind('Text').to(Text); } } diff --git a/wax-prosemirror-themes/package.json b/wax-prosemirror-themes/package.json index 21d4ecbf40406c3ef36b82477fc4f821356aa758..0abb1c7bd9e1e23143cb0b5c1980c9bff98c7633 100644 --- a/wax-prosemirror-themes/package.json +++ b/wax-prosemirror-themes/package.json @@ -4,7 +4,7 @@ "version": "0.0.11", "description": "Wax prosemirror themes", "license": "MIT", - "main": "dist/index.js", + "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "build": "BABEL_ENV=production rollup -c" diff --git a/wax-prosemirror-utilities/package.json b/wax-prosemirror-utilities/package.json index 52bb22f000e2c733406e39db6e08df3301b0a89e..d0439a75f68a8413fcc318370576424e8b394653 100644 --- a/wax-prosemirror-utilities/package.json +++ b/wax-prosemirror-utilities/package.json @@ -4,7 +4,7 @@ "version": "0.0.11", "description": "Wax prosemirror utilities", "license": "MIT", - "main": "dist/index.js", + "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "build": "BABEL_ENV=production rollup -c"