From f452b46371e5bb035d5801c9315c541303bb558e Mon Sep 17 00:00:00 2001 From: chris <kokosias@yahoo.gr> Date: Mon, 28 Aug 2023 21:27:33 +0300 Subject: [PATCH] new table service --- editors/demo/config-overrides.js | 4 ++ editors/demo/package.json | 3 +- editors/demo/src/Editoria/config/config.js | 5 +-- .../demo/src/Editoria/config/configMobile.js | 3 +- editors/demo/src/HHMI/config/config.js | 2 +- editors/demo/src/OEN/config/config.js | 2 +- package.json | 1 + wax-prosemirror-core/rollup.config.js | 7 +--- wax-prosemirror-services/index.js | 3 -- wax-prosemirror-services/rollup.config.js | 4 -- wax-table-service/README.md | 1 + wax-table-service/index.js | 2 + wax-table-service/package.json | 37 +++++++++++++++++ wax-table-service/rollup.config.js | 40 +++++++++++++++++++ .../src}/EditTableService/EditTableService.js | 0 .../EditTableService/TableDropDownOptions.js | 0 .../InsertTableService/InsertTableService.js | 0 .../src}/InsertTableService/Table.js | 0 .../TableToolGroupService.js | 0 .../src}/TableToolGroupService/Tables.js | 0 .../src}/TablesService.js | 0 .../src}/components/CreateTable.js | 0 .../src}/components/InsertTableTool.js | 0 .../src}/components/TableDropDown.js | 0 .../src}/index.js | 0 .../src}/table.css | 0 .../src}/tableSrc/index.js | 2 + 27 files changed, 96 insertions(+), 20 deletions(-) create mode 100644 wax-table-service/README.md create mode 100644 wax-table-service/index.js create mode 100644 wax-table-service/package.json create mode 100644 wax-table-service/rollup.config.js rename {wax-prosemirror-services/src/TablesService => wax-table-service/src}/EditTableService/EditTableService.js (100%) rename {wax-prosemirror-services/src/TablesService => wax-table-service/src}/EditTableService/TableDropDownOptions.js (100%) rename {wax-prosemirror-services/src/TablesService => wax-table-service/src}/InsertTableService/InsertTableService.js (100%) rename {wax-prosemirror-services/src/TablesService => wax-table-service/src}/InsertTableService/Table.js (100%) rename {wax-prosemirror-services/src/TablesService => wax-table-service/src}/TableToolGroupService/TableToolGroupService.js (100%) rename {wax-prosemirror-services/src/TablesService => wax-table-service/src}/TableToolGroupService/Tables.js (100%) rename {wax-prosemirror-services/src/TablesService => wax-table-service/src}/TablesService.js (100%) rename {wax-prosemirror-services/src/TablesService => wax-table-service/src}/components/CreateTable.js (100%) rename {wax-prosemirror-services/src/TablesService => wax-table-service/src}/components/InsertTableTool.js (100%) rename {wax-prosemirror-services/src/TablesService => wax-table-service/src}/components/TableDropDown.js (100%) rename {wax-prosemirror-services/src/TablesService => wax-table-service/src}/index.js (100%) rename {wax-prosemirror-services/src/TablesService => wax-table-service/src}/table.css (100%) rename {wax-prosemirror-services/src/TablesService => wax-table-service/src}/tableSrc/index.js (99%) diff --git a/editors/demo/config-overrides.js b/editors/demo/config-overrides.js index 6bc5ae421..1b6da3878 100644 --- a/editors/demo/config-overrides.js +++ b/editors/demo/config-overrides.js @@ -15,6 +15,10 @@ module.exports = function override(config, env) { __dirname, '../../wax-questions-service/index', ), + 'wax-table-service': path.resolve( + __dirname, + '../../wax-table-service/index', + ), }, }; config.module = { diff --git a/editors/demo/package.json b/editors/demo/package.json index 3751aee52..466716b95 100644 --- a/editors/demo/package.json +++ b/editors/demo/package.json @@ -15,7 +15,8 @@ "typeface-vollkorn": "^0.0.54", "wax-prosemirror-core": "^0.8.9", "wax-prosemirror-services": "^0.8.9", - "wax-questions-service": "^0.8.9" + "wax-questions-service": "^0.8.9", + "wax-table-service": "^0.8.9" }, "scripts": { "start": "react-app-rewired start", diff --git a/editors/demo/src/Editoria/config/config.js b/editors/demo/src/Editoria/config/config.js index d24ceb1b6..a11306ffd 100644 --- a/editors/demo/src/Editoria/config/config.js +++ b/editors/demo/src/Editoria/config/config.js @@ -9,7 +9,6 @@ import { LinkService, ListsService, ListToolGroupService, - TablesService, BaseService, BaseToolGroupService, DisplayBlockLevelService, @@ -46,10 +45,10 @@ import { // YjsService, // BlockDropDownToolGroupService, // TitleToolGroupService, - tableEditing, - columnResizing, } from 'wax-prosemirror-services'; +import { TablesService, tableEditing, columnResizing } from 'wax-table-service'; + import { EditoriaSchema } from 'wax-prosemirror-core'; import invisibles, { diff --git a/editors/demo/src/Editoria/config/configMobile.js b/editors/demo/src/Editoria/config/configMobile.js index 3db3eb6c7..a87d5ec5e 100644 --- a/editors/demo/src/Editoria/config/configMobile.js +++ b/editors/demo/src/Editoria/config/configMobile.js @@ -6,7 +6,6 @@ import { LinkService, ListsService, ListToolGroupService, - TablesService, BaseService, BaseToolGroupService, DisplayBlockLevelService, @@ -34,6 +33,8 @@ import { CustomTagService, } from 'wax-prosemirror-services'; +import { TablesService, tableEditing, columnResizing } from 'wax-table-service'; + import { DefaultSchema } from 'wax-prosemirror-core'; import invisibles, { diff --git a/editors/demo/src/HHMI/config/config.js b/editors/demo/src/HHMI/config/config.js index 1ba9568d1..7fc649f31 100644 --- a/editors/demo/src/HHMI/config/config.js +++ b/editors/demo/src/HHMI/config/config.js @@ -7,7 +7,6 @@ import { LinkService, ListsService, ListToolGroupService, - TablesService, BaseService, BaseToolGroupService, DisplayTextToolGroupService, @@ -18,6 +17,7 @@ import { } from 'wax-prosemirror-services'; import { QuestionsService } from 'wax-questions-service'; +import { TablesService, tableEditing, columnResizing } from 'wax-table-service'; import { DefaultSchema } from 'wax-prosemirror-core'; import invisibles, { hardBreak } from '@guardian/prosemirror-invisibles'; diff --git a/editors/demo/src/OEN/config/config.js b/editors/demo/src/OEN/config/config.js index b2a987205..159cad884 100644 --- a/editors/demo/src/OEN/config/config.js +++ b/editors/demo/src/OEN/config/config.js @@ -9,7 +9,6 @@ import { LinkService, ListsService, ListToolGroupService, - TablesService, BaseService, BaseToolGroupService, DisplayBlockLevelService, @@ -47,6 +46,7 @@ import { OENContainersToolGroupService, OENAsideToolGroupService, } from 'wax-prosemirror-services'; +import { TablesService, tableEditing, columnResizing } from 'wax-table-service'; import { EditoriaSchema } from 'wax-prosemirror-core'; diff --git a/package.json b/package.json index 00e25850c..f728163b9 100644 --- a/package.json +++ b/package.json @@ -14,6 +14,7 @@ "wax-prosemirror-core", "wax-prosemirror-services", "wax-questions-service", + "wax-table-service", "editors/*" ], "scripts": { diff --git a/wax-prosemirror-core/rollup.config.js b/wax-prosemirror-core/rollup.config.js index 1eb417eb1..3acc3b132 100644 --- a/wax-prosemirror-core/rollup.config.js +++ b/wax-prosemirror-core/rollup.config.js @@ -30,10 +30,5 @@ export default { commonjs(), terser(), ], - external: [ - 'react-dropdown', - 'uuid', - 'prop-types', - 'wax-prosemirror-services', - ], + external: [], }; diff --git a/wax-prosemirror-services/index.js b/wax-prosemirror-services/index.js index 97c1d53df..47ca65e64 100644 --- a/wax-prosemirror-services/index.js +++ b/wax-prosemirror-services/index.js @@ -5,7 +5,6 @@ export { default as BaseService } from './src/BaseService/BaseService'; export { default as ImageService } from './src/ImageService/ImageService'; export { default as InlineAnnotationsService } from './src/InlineAnnotations/InlineAnnotationsService'; export { default as ListsService } from './src/ListsService/ListsService'; -export { default as TablesService } from './src/TablesService/TablesService'; export { default as TextBlockLevelService } from './src/TextBlockLevel/TextBlockLevelService'; export { default as DisplayBlockLevelService } from './src/DisplayBlockLevel/DisplayBlockLevelService'; export { default as NoteService } from './src/NoteService/NoteService'; @@ -61,5 +60,3 @@ export { default as TitleToolGroupService } from './src/WaxToolGroups/TitleToolG /* Plugins */ export { default as disallowPasteImagesPlugin } from './src/ImageService/plugins/disallowPasteImagesPlugin'; - -export { tableEditing, columnResizing } from './src/TablesService/tableSrc'; diff --git a/wax-prosemirror-services/rollup.config.js b/wax-prosemirror-services/rollup.config.js index f4d5cd16f..46fa70aa6 100644 --- a/wax-prosemirror-services/rollup.config.js +++ b/wax-prosemirror-services/rollup.config.js @@ -40,11 +40,7 @@ export default { 'uuid', 'react', 'react-dom', - 'react-dropdown', 'lodash', - 'prosemirror-schema-list', - 'prosemirror-model', - 'prosemirror-inputrules', '@babel/runtime/regenerator', ], }; diff --git a/wax-table-service/README.md b/wax-table-service/README.md new file mode 100644 index 000000000..b8d971e91 --- /dev/null +++ b/wax-table-service/README.md @@ -0,0 +1 @@ +## Wax table package diff --git a/wax-table-service/index.js b/wax-table-service/index.js new file mode 100644 index 000000000..556e566da --- /dev/null +++ b/wax-table-service/index.js @@ -0,0 +1,2 @@ +export { tableEditing, columnResizing } from './src/tableSrc'; +export { default as TablesService } from './src/TablesService'; diff --git a/wax-table-service/package.json b/wax-table-service/package.json new file mode 100644 index 000000000..4f51a4ae7 --- /dev/null +++ b/wax-table-service/package.json @@ -0,0 +1,37 @@ +{ + "name": "wax-table-service", + "author": "Christos Kokosias & Giannis Kopanas", + "version": "0.8.9", + "description": "Wax Table Service", + "license": "MIT", + "main": "dist/index.js", + "style": "dist/index.css", + "files": [ + "dist" + ], + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1", + "build": "BABEL_ENV=production rollup -c" + }, + "dependencies": { + "@pubsweet/ui-toolkit": "^2.3.1", + "inversify": "^5.0.1", + "lodash": "^4.17.4", + "uuid": "^7.0.3", + "prosemirror-keymap": "1.2.1", + "prosemirror-state": "1.4.2", + "prosemirror-view": "1.30.2", + "prosemirror-transform": "1.7.1", + "wax-prosemirror-core": "^0.8.9", + "wax-prosemirror-services": "^0.8.9" + }, + "devDependencies": { + "mocha": "^3.4.2", + "prosemirror-test-builder": "^1.0.1" + }, + "peerDependencies": { + "react": "^18.2.0", + "react-dom": "^18.2.0", + "styled-components": "^5.3.1" + } +} diff --git a/wax-table-service/rollup.config.js b/wax-table-service/rollup.config.js new file mode 100644 index 000000000..7db020053 --- /dev/null +++ b/wax-table-service/rollup.config.js @@ -0,0 +1,40 @@ +import babel from 'rollup-plugin-babel'; +import commonjs from '@rollup/plugin-commonjs'; +import external from 'rollup-plugin-peer-deps-external'; +import css from 'rollup-plugin-import-css'; +import { terser } from 'rollup-plugin-terser'; + +export default { + input: 'index.js', + output: [ + { + file: 'dist/index.js', + format: 'cjs', + sourcemap: false, + }, + ], + plugins: [ + css(), + external({ + includeDependencies: true, + }), + babel({ + presets: ['react-app'], + plugins: [ + [ + '@babel/plugin-transform-runtime', + { + regenerator: true, + }, + ], + ['@babel/plugin-proposal-decorators', { legacy: true }], + 'babel-plugin-parameter-decorator', + ], + exclude: 'node_modules/**', + runtimeHelpers: true, + }), + commonjs(), + terser(), + ], + external: ['uuid', 'react', 'react-dom', 'lodash', 'prosemirror-model'], +}; diff --git a/wax-prosemirror-services/src/TablesService/EditTableService/EditTableService.js b/wax-table-service/src/EditTableService/EditTableService.js similarity index 100% rename from wax-prosemirror-services/src/TablesService/EditTableService/EditTableService.js rename to wax-table-service/src/EditTableService/EditTableService.js diff --git a/wax-prosemirror-services/src/TablesService/EditTableService/TableDropDownOptions.js b/wax-table-service/src/EditTableService/TableDropDownOptions.js similarity index 100% rename from wax-prosemirror-services/src/TablesService/EditTableService/TableDropDownOptions.js rename to wax-table-service/src/EditTableService/TableDropDownOptions.js diff --git a/wax-prosemirror-services/src/TablesService/InsertTableService/InsertTableService.js b/wax-table-service/src/InsertTableService/InsertTableService.js similarity index 100% rename from wax-prosemirror-services/src/TablesService/InsertTableService/InsertTableService.js rename to wax-table-service/src/InsertTableService/InsertTableService.js diff --git a/wax-prosemirror-services/src/TablesService/InsertTableService/Table.js b/wax-table-service/src/InsertTableService/Table.js similarity index 100% rename from wax-prosemirror-services/src/TablesService/InsertTableService/Table.js rename to wax-table-service/src/InsertTableService/Table.js diff --git a/wax-prosemirror-services/src/TablesService/TableToolGroupService/TableToolGroupService.js b/wax-table-service/src/TableToolGroupService/TableToolGroupService.js similarity index 100% rename from wax-prosemirror-services/src/TablesService/TableToolGroupService/TableToolGroupService.js rename to wax-table-service/src/TableToolGroupService/TableToolGroupService.js diff --git a/wax-prosemirror-services/src/TablesService/TableToolGroupService/Tables.js b/wax-table-service/src/TableToolGroupService/Tables.js similarity index 100% rename from wax-prosemirror-services/src/TablesService/TableToolGroupService/Tables.js rename to wax-table-service/src/TableToolGroupService/Tables.js diff --git a/wax-prosemirror-services/src/TablesService/TablesService.js b/wax-table-service/src/TablesService.js similarity index 100% rename from wax-prosemirror-services/src/TablesService/TablesService.js rename to wax-table-service/src/TablesService.js diff --git a/wax-prosemirror-services/src/TablesService/components/CreateTable.js b/wax-table-service/src/components/CreateTable.js similarity index 100% rename from wax-prosemirror-services/src/TablesService/components/CreateTable.js rename to wax-table-service/src/components/CreateTable.js diff --git a/wax-prosemirror-services/src/TablesService/components/InsertTableTool.js b/wax-table-service/src/components/InsertTableTool.js similarity index 100% rename from wax-prosemirror-services/src/TablesService/components/InsertTableTool.js rename to wax-table-service/src/components/InsertTableTool.js diff --git a/wax-prosemirror-services/src/TablesService/components/TableDropDown.js b/wax-table-service/src/components/TableDropDown.js similarity index 100% rename from wax-prosemirror-services/src/TablesService/components/TableDropDown.js rename to wax-table-service/src/components/TableDropDown.js diff --git a/wax-prosemirror-services/src/TablesService/index.js b/wax-table-service/src/index.js similarity index 100% rename from wax-prosemirror-services/src/TablesService/index.js rename to wax-table-service/src/index.js diff --git a/wax-prosemirror-services/src/TablesService/table.css b/wax-table-service/src/table.css similarity index 100% rename from wax-prosemirror-services/src/TablesService/table.css rename to wax-table-service/src/table.css diff --git a/wax-prosemirror-services/src/TablesService/tableSrc/index.js b/wax-table-service/src/tableSrc/index.js similarity index 99% rename from wax-prosemirror-services/src/TablesService/tableSrc/index.js rename to wax-table-service/src/tableSrc/index.js index 71d900556..4b193e70c 100644 --- a/wax-prosemirror-services/src/TablesService/tableSrc/index.js +++ b/wax-table-service/src/tableSrc/index.js @@ -1,3 +1,5 @@ +/* eslint-disable*/ + // src/index.ts import { Plugin as Plugin2 } from 'prosemirror-state'; -- GitLab