diff --git a/editors/editoria/src/MultipleChoiceQuestionService/MultipleChoiceQuestion.js b/editors/editoria/src/MultipleChoiceQuestionService/MultipleChoiceQuestion.js new file mode 100644 index 0000000000000000000000000000000000000000..a50f29656f26f6666e0581d3a29dad25d7ac2c30 --- /dev/null +++ b/editors/editoria/src/MultipleChoiceQuestionService/MultipleChoiceQuestion.js @@ -0,0 +1,27 @@ +import { injectable } from 'inversify'; +import { Tools } from 'wax-prosemirror-services'; + +@injectable() +class MultipleChoiceQuestion extends Tools { + title = 'Change to Multiple Choice'; + label = 'Multiple Choice'; + name = 'Multiple Choice'; + + get run() { + return (state, dispatch) => {}; + } + + get active() { + return state => {}; + } + + select = (state, activeViewId) => { + return true; + }; + + get enable() { + return state => {}; + } +} + +export default MultipleChoiceQuestion; diff --git a/editors/editoria/src/MultipleChoiceQuestionService/MultipleChoiceQuestionService.js b/editors/editoria/src/MultipleChoiceQuestionService/MultipleChoiceQuestionService.js new file mode 100644 index 0000000000000000000000000000000000000000..c128ee4208a83ac385824edb7248b787730d31d0 --- /dev/null +++ b/editors/editoria/src/MultipleChoiceQuestionService/MultipleChoiceQuestionService.js @@ -0,0 +1,14 @@ +import { Service } from 'wax-prosemirror-services'; +import MultipleChoiceQuestion from './MultipleChoiceQuestion'; + +class MultipleChoiceQuestionService extends Service { + boot() {} + + register() { + this.container.bind('MultipleChoiceQuestion').to(MultipleChoiceQuestion); + const createNode = this.container.get('CreateNode'); + console.log(createNode); + } +} + +export default MultipleChoiceQuestionService; diff --git a/editors/editoria/src/config/config.js b/editors/editoria/src/config/config.js index b428865c8255d5b9220b7fce7ffdb073fa759ebc..decd0aacfc66aef8845786cbe2bbcb3cebf8d06b 100644 --- a/editors/editoria/src/config/config.js +++ b/editors/editoria/src/config/config.js @@ -49,6 +49,10 @@ import { DefaultSchema } from 'wax-prosemirror-utilities'; import { WaxSelectionPlugin } from 'wax-prosemirror-plugins'; +/* Test Question Service*/ + +import MultipleChoiceQuestionService from '../MultipleChoiceQuestionService/MultipleChoiceQuestionService'; + import invisibles, { space, hardBreak, @@ -152,6 +156,7 @@ export default { }, services: [ + new MultipleChoiceQuestionService(), new CustomTagService(), new DisplayBlockLevelService(), new DisplayToolGroupService(), diff --git a/wax-prosemirror-services/index.js b/wax-prosemirror-services/index.js index da3445673aa3165ced1e469a4f416659ef9bdef8..44320d00a01be2dd3db0cf761180719b95ae47af 100644 --- a/wax-prosemirror-services/index.js +++ b/wax-prosemirror-services/index.js @@ -9,7 +9,7 @@ export { default as SchemaService } from './src/SchemaService/SchemaService'; export { default as ShortCutsService } from './src/ShortCutsService/ShortCutsService'; -export { default as Tool } from './src/lib/Tools'; +export { default as Tools } from './src/lib/Tools'; /* All Elements services