From 19a57c64852fd9883c282fb1bf7e4603f7a49dd0 Mon Sep 17 00:00:00 2001
From: chris <kokosias@yahoo.gr>
Date: Wed, 2 Aug 2023 20:13:25 +0300
Subject: [PATCH] imports and start new services

---
 editors/demo/package.json                     |  3 +-
 editors/demo/src/HHMI/config/config.js        | 21 ++++---
 lerna-debug.log                               | 62 ++++++++-----------
 wax-prosemirror-services/index.js             |  9 ---
 wax-questions-service/package.json            |  1 +
 wax-questions-service/src/QuestionsService.js | 19 ++++--
 6 files changed, 57 insertions(+), 58 deletions(-)

diff --git a/editors/demo/package.json b/editors/demo/package.json
index dcc0919d6..ef2c70276 100644
--- a/editors/demo/package.json
+++ b/editors/demo/package.json
@@ -15,7 +15,8 @@
     "typeface-inter": "^1.1.13",
     "typeface-vollkorn": "^0.0.54",
     "wax-prosemirror-core": "^0.8.8",
-    "wax-prosemirror-services": "^0.8.8"
+    "wax-prosemirror-services": "^0.8.8",
+    "wax-questions-service": "^0.8.8"
   },
   "scripts": {
     "start": "react-app-rewired start",
diff --git a/editors/demo/src/HHMI/config/config.js b/editors/demo/src/HHMI/config/config.js
index 36bbd206e..38d10101d 100644
--- a/editors/demo/src/HHMI/config/config.js
+++ b/editors/demo/src/HHMI/config/config.js
@@ -19,6 +19,8 @@ import {
   // ExternalAPIContentService,
 } from 'wax-prosemirror-services';
 
+import { QuestionsService } from 'wax-questions-service';
+
 import { DefaultSchema } from 'wax-prosemirror-core';
 import invisibles, { hardBreak } from '@guardian/prosemirror-invisibles';
 const API_KEY = '';
@@ -108,18 +110,18 @@ export default {
         'Images',
         'Tables',
         // 'ExternalAPIContent',
-        // 'QuestionsDropDown',
+        'QuestionsDropDown',
         'FullScreen',
       ],
     },
-    // {
-    //   templateArea: 'fillTheGap',
-    //   toolGroups: ['FillTheGap'],
-    // },
-    // {
-    //   templateArea: 'MultipleDropDown',
-    //   toolGroups: ['MultipleDropDown'],
-    // },
+    {
+      templateArea: 'fillTheGap',
+      toolGroups: ['FillTheGap'],
+    },
+    {
+      templateArea: 'MultipleDropDown',
+      toolGroups: ['MultipleDropDown'],
+    },
   ],
   // ExternalAPIContentService: {
   //   ExternalAPIContentTransformation: ExternalAPIContentTransformation,
@@ -132,6 +134,7 @@ export default {
   PmPlugins: [columnResizing(), tableEditing(), invisibles([hardBreak()])],
   services: [
     // new ExternalAPIContentService(),
+    new QuestionsService(),
     new ListsService(),
     new LinkService(),
     new InlineAnnotationsService(),
diff --git a/lerna-debug.log b/lerna-debug.log
index 1a872a616..893ef1faa 100644
--- a/lerna-debug.log
+++ b/lerna-debug.log
@@ -14,38 +14,30 @@
 7 silly execute attempt
 8 silly runScriptInDir build [] wax-prosemirror-core
 9 silly getExecOpts { cwd: '/home/chris/workspace/wax-prosemirror/wax-prosemirror-core' }
-10 error build Errored while running script in 'wax-prosemirror-core'
-11 error execute callback with error
-12 error Error: Command failed: yarn run build
-12 error
-12 error ./index.js → dist/index.js...
-12 error Browserslist: caniuse-lite is outdated. Please run:
-12 error npx browserslist@latest --update-db
-12 error (!) Circular dependency
-12 error index.js -> src/Wax.js -> src/Application.js -> src/config/defaultConfig.js -> src/config/defaultServices/MenuService/MenuService.js -> src/config/defaultServices/MenuService/Menu.js -> src/utilities/lib/ToolGroup.js -> src/components/ToolGroups.js -> src/components/ToolGroupComponent.js -> src/components/ui/Dropdown.js -> src/components/ui/MenuButton.js -> index.js
-12 error [!] Error: 'default' is not exported by src/components/icons/icons.js, imported by index.js
-12 error https://rollupjs.org/guide/en/#error-name-is-not-exported-by-module
-12 error index.js (47:9)
-12 error 45: export { default as Tabs } from './src/components/tabs/Tabs';
-12 error 46: export { default as MenuButton } from './src/components/ui/MenuButton';
-12 error 47: export { default as icons } from './src/components/icons/icons';
-12 error              ^
-12 error 48: export { default as Icon } from './src/components/icons/Icon';
-12 error 49: export { default as Button } from './src/components/Button';
-12 error Error: 'default' is not exported by src/components/icons/icons.js, imported by index.js
-12 error     at error (/home/chris/workspace/wax-prosemirror/node_modules/rollup/dist/shared/rollup.js:5171:30)
-12 error     at Module.error (/home/chris/workspace/wax-prosemirror/node_modules/rollup/dist/shared/rollup.js:9603:16)
-12 error     at handleMissingExport (/home/chris/workspace/wax-prosemirror/node_modules/rollup/dist/shared/rollup.js:9525:28)
-12 error     at Module.getVariableForExportName (/home/chris/workspace/wax-prosemirror/node_modules/rollup/dist/shared/rollup.js:9768:24)
-12 error     at Module.traceVariable (/home/chris/workspace/wax-prosemirror/node_modules/rollup/dist/shared/rollup.js:9983:45)
-12 error     at ModuleScope.findVariable (/home/chris/workspace/wax-prosemirror/node_modules/rollup/dist/shared/rollup.js:8549:39)
-12 error     at FunctionScope.findVariable (/home/chris/workspace/wax-prosemirror/node_modules/rollup/dist/shared/rollup.js:2795:38)
-12 error     at ChildScope.findVariable (/home/chris/workspace/wax-prosemirror/node_modules/rollup/dist/shared/rollup.js:2795:38)
-12 error     at Identifier$1.bind (/home/chris/workspace/wax-prosemirror/node_modules/rollup/dist/shared/rollup.js:4152:40)
-12 error     at MemberExpression.bind (/home/chris/workspace/wax-prosemirror/node_modules/rollup/dist/shared/rollup.js:2880:23)
-12 error
-12 error error Command failed with exit code 1.
-12 error $ BABEL_ENV=production rollup -c
-12 error info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
-12 error
-12 error     at /home/chris/workspace/wax-prosemirror/node_modules/lerna/node_modules/execa/index.js:236:11
+10 silly runScriptInDir build [] wax-prosemirror-services
+11 silly getExecOpts {
+11 silly getExecOpts   cwd: '/home/chris/workspace/wax-prosemirror/wax-prosemirror-services'
+11 silly getExecOpts }
+12 error build Errored while running script in 'wax-prosemirror-services'
+13 error execute callback with error
+14 error Error: Command failed: yarn run build
+14 error
+14 error index.js → dist/index.js...
+14 error Browserslist: caniuse-lite is outdated. Please run:
+14 error npx browserslist@latest --update-db
+14 error [!] Error: Could not resolve './src/MultipleChoiceQuestionService/MultipleChoiceQuestionService' from index.js
+14 error Error: Could not resolve './src/MultipleChoiceQuestionService/MultipleChoiceQuestionService' from index.js
+14 error     at error (/home/chris/workspace/wax-prosemirror/node_modules/rollup/dist/shared/rollup.js:5171:30)
+14 error     at ModuleLoader.handleResolveId (/home/chris/workspace/wax-prosemirror/node_modules/rollup/dist/shared/rollup.js:17864:24)
+14 error     at /home/chris/workspace/wax-prosemirror/node_modules/rollup/dist/shared/rollup.js:17856:22
+14 error     at async Promise.all (index 26)
+14 error     at ModuleLoader.fetchStaticDependencies (/home/chris/workspace/wax-prosemirror/node_modules/rollup/dist/shared/rollup.js:17854:34)
+14 error     at async Promise.all (index 0)
+14 error     at ModuleLoader.fetchModule (/home/chris/workspace/wax-prosemirror/node_modules/rollup/dist/shared/rollup.js:17831:9)
+14 error     at async Promise.all (index 0)
+14 error
+14 error error Command failed with exit code 1.
+14 error $ BABEL_ENV=production rollup -c
+14 error info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
+14 error
+14 error     at /home/chris/workspace/wax-prosemirror/node_modules/lerna/node_modules/execa/index.js:236:11
diff --git a/wax-prosemirror-services/index.js b/wax-prosemirror-services/index.js
index d2c016666..a970f2fea 100644
--- a/wax-prosemirror-services/index.js
+++ b/wax-prosemirror-services/index.js
@@ -28,15 +28,7 @@ export { default as TrackOptionsService } from './src/TrackOptionsService/TrackO
 export { default as CustomTagInlineService } from './src/CustomTagService/CustomTagInlineService/CustomTagInlineService';
 export { default as CustomTagBlockService } from './src/CustomTagService/CustomTagBlockService/CustomTagBlockService';
 export { default as CustomTagService } from './src/CustomTagService/CustomTagService';
-export { default as MultipleChoiceQuestionService } from './src/MultipleChoiceQuestionService/MultipleChoiceQuestionService';
-export { default as MultipleChoiceSingleCorrectQuestionService } from './src/MultipleChoiceQuestionService/MultipleChoiceSingleCorrectQuestionService/MultipleChoiceSingleCorrectQuestionService';
-export { default as TrueFalseQuestionService } from './src/MultipleChoiceQuestionService/TrueFalseQuestionService/TrueFalseQuestionService';
-export { default as FillTheGapQuestionService } from './src/FillTheGapQuestionService/FillTheGapQuestionService';
-export { default as EssayService } from './src/EssayService/EssayService';
-export { default as MatchingService } from './src/MatchingService/MatchingService';
 export { default as EnterService } from './src/EnterService/EnterService';
-export { default as MultipleDropDownService } from './src/MultipleDropDownService/MultipleDropDownService';
-
 export { default as OENContainersService } from './src/OENContainersService/OENContainersService';
 export { default as YjsService } from './src/YjsService/YjsService';
 export { default as ExternalAPIContentService } from './src/ExternalAPIContentService/ExternalAPIContentService';
@@ -64,7 +56,6 @@ export { default as TrackOptionsToolGroupService } from './src/WaxToolGroups/Tra
 export { default as TrackCommentOptionsToolGroupService } from './src/WaxToolGroups/TrackCommentOptionsToolGroupService/TrackCommentOptionsToolGroupService';
 export { default as CustomTagInlineToolGroupService } from './src/WaxToolGroups/CustomTagToolGroupService/CustomTagInlineToolGroupService/CustomTagInlineToolGroupService';
 export { default as CustomTagBlockToolGroupService } from './src/WaxToolGroups/CustomTagToolGroupService/CustomTagBlockToolGroupService/CustomTagBlockToolGroupService';
-export { default as QuestionsDropDownToolGroupService } from './src/WaxToolGroups/QuestionsDropDownToolGroupService/QuestionsDropDownToolGroupService';
 export { default as OENContainersToolGroupService } from './src/WaxToolGroups/OENContainersToolGroupService/OENContainersToolGroupService';
 export { default as OENLeftToolGroupService } from './src/WaxToolGroups/OENLeftToolGroupService/OENLeftToolGroupService';
 export { default as FindAndReplaceToolGroupService } from './src/WaxToolGroups/FindAndReplaceToolGroupService/FindAndReplaceToolGroupService';
diff --git a/wax-questions-service/package.json b/wax-questions-service/package.json
index 0021073a0..88443b8d0 100644
--- a/wax-questions-service/package.json
+++ b/wax-questions-service/package.json
@@ -15,6 +15,7 @@
   },
   "dependencies": {
     "@pubsweet/ui-toolkit": "^2.3.1",
+    "wax-prosemirror-core":"^0.8.8",
     "wax-prosemirror-services":"^0.8.8",
     "uuid": "^7.0.3"
   },
diff --git a/wax-questions-service/src/QuestionsService.js b/wax-questions-service/src/QuestionsService.js
index 6ea7ac472..346fc5784 100644
--- a/wax-questions-service/src/QuestionsService.js
+++ b/wax-questions-service/src/QuestionsService.js
@@ -1,11 +1,22 @@
-import { Service } from 'wax-prosemirror-services';
+import { Service } from 'wax-prosemirror-core';
+import EssayService from './EssayService/EssayService';
+import FillTheGapQuestionService from './FillTheGapQuestionService/FillTheGapQuestionService';
+import MatchingService from './MatchingService/MatchingService';
+import MultipleDropDownService from './MultipleDropDownService/MultipleDropDownService';
+import QuestionsDropDownToolGroupService from './QuestionsDropDownToolGroupService/QuestionsDropDownToolGroupService';
+import MultipleChoiceQuestionService from './MultipleChoiceQuestionService/MultipleChoiceQuestionService';
 
 class QuestionsService extends Service {
   name = 'QuestionsService';
 
-  boot() {}
-
-  register() {}
+  dependencies = [
+    new MultipleChoiceQuestionService(),
+    new EssayService(),
+    new FillTheGapQuestionService(),
+    new MatchingService(),
+    new MultipleDropDownService(),
+    new QuestionsDropDownToolGroupService(),
+  ];
 }
 
 export default QuestionsService;
-- 
GitLab