diff --git a/package.json b/package.json index dfb3648d..0a6cd91b 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "wisemapping-font-end", + "name": "wisemapping-front-end", "scripts": { "bootstrap": "lerna bootstrap", "build": "lerna run build", diff --git a/packages/mindplot/cypress/snapshots/playground.test.js/container.snap.png b/packages/mindplot/cypress/snapshots/playground.test.js/container.snap.png index 93f8968c..b0990bdd 100644 Binary files a/packages/mindplot/cypress/snapshots/playground.test.js/container.snap.png and b/packages/mindplot/cypress/snapshots/playground.test.js/container.snap.png differ diff --git a/packages/mindplot/cypress/snapshots/playground.test.js/editor.snap.png b/packages/mindplot/cypress/snapshots/playground.test.js/editor.snap.png index 39a15edf..bf50eb8c 100644 Binary files a/packages/mindplot/cypress/snapshots/playground.test.js/editor.snap.png and b/packages/mindplot/cypress/snapshots/playground.test.js/editor.snap.png differ diff --git a/packages/mindplot/cypress/snapshots/playground.test.js/layout.snap.png b/packages/mindplot/cypress/snapshots/playground.test.js/layout.snap.png index 6f0445df..dff2a26b 100644 Binary files a/packages/mindplot/cypress/snapshots/playground.test.js/layout.snap.png and b/packages/mindplot/cypress/snapshots/playground.test.js/layout.snap.png differ diff --git a/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-complex.snap.png b/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-complex.snap.png index a7826c8c..44705952 100644 Binary files a/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-complex.snap.png and b/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-complex.snap.png differ diff --git a/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-icon-sample.snap.png b/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-icon-sample.snap.png new file mode 100644 index 00000000..abbe1cc6 Binary files /dev/null and b/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-icon-sample.snap.png differ diff --git a/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-img-support.snap.png b/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-img-support.snap.png index 591270d8..02e01463 100644 Binary files a/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-img-support.snap.png and b/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-img-support.snap.png differ diff --git a/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample1.snap.png b/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample1.snap.png index 6d52fc10..6037f827 100644 Binary files a/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample1.snap.png and b/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample1.snap.png differ diff --git a/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample2.snap.png b/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample2.snap.png index 4a88354e..fd25067c 100644 Binary files a/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample2.snap.png and b/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample2.snap.png differ diff --git a/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample3.snap.png b/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample3.snap.png index 8db6f22d..e8cb6534 100644 Binary files a/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample3.snap.png and b/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample3.snap.png differ diff --git a/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample4.snap.png b/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample4.snap.png index cdd55f14..5cd8a8cf 100644 Binary files a/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample4.snap.png and b/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample4.snap.png differ diff --git a/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample5.snap.png b/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample5.snap.png index 94d9df69..99f4b871 100644 Binary files a/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample5.snap.png and b/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample5.snap.png differ diff --git a/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample6.snap.png b/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample6.snap.png index 2401e809..d86fc04f 100644 Binary files a/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample6.snap.png and b/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-sample6.snap.png differ diff --git a/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-welcome.snap.png b/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-welcome.snap.png index bdaa77d3..aac68fe6 100644 Binary files a/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-welcome.snap.png and b/packages/mindplot/cypress/snapshots/playground.test.js/viewmode-welcome.snap.png differ diff --git a/packages/mindplot/src/components/Designer.js b/packages/mindplot/src/components/Designer.js index 0f143d3b..a4d164e9 100644 --- a/packages/mindplot/src/components/Designer.js +++ b/packages/mindplot/src/components/Designer.js @@ -79,7 +79,7 @@ class Designer extends Events { // Init Screen manager.. const screenManager = new ScreenManager(divElement); - this._workspace = new Workspace(screenManager, this._model.getZoom()); + this._workspace = new Workspace(screenManager, this._model.getZoom(), !!options.readOnly); // Init layout manager ... this._eventBussDispatcher = new EventBusDispatcher(this.getModel()); diff --git a/packages/mindplot/src/components/Relationship.js b/packages/mindplot/src/components/Relationship.js index 4dc0a9b7..d810f3c1 100644 --- a/packages/mindplot/src/components/Relationship.js +++ b/packages/mindplot/src/components/Relationship.js @@ -169,7 +169,11 @@ class Relationship extends ConnectionLine { workspace.append(this._controlPointsController); this._controlPointControllerListener = this._initializeControlPointController.bind(this); - this._line2d.addEvent('click', this._controlPointControllerListener); + if (workspace.isReadOnly) { + this._line2d.setCursor('default'); + } else { + this._line2d.addEvent('click', this._controlPointControllerListener); + } this._isInWorkspace = true; workspace.append(this._startArrow); @@ -187,7 +191,9 @@ class Relationship extends ConnectionLine { removeFromWorkspace(workspace) { workspace.removeChild(this._focusShape); workspace.removeChild(this._controlPointsController); - this._line2d.removeEvent('click', this._controlPointControllerListener); + if (!workspace.isReadOnly) { + this._line2d.removeEvent('click', this._controlPointControllerListener); + } this._isInWorkspace = false; workspace.removeChild(this._startArrow); if (this._endArrow) workspace.removeChild(this._endArrow); diff --git a/packages/mindplot/src/components/Workspace.js b/packages/mindplot/src/components/Workspace.js index 340b6fed..8ab2b716 100644 --- a/packages/mindplot/src/components/Workspace.js +++ b/packages/mindplot/src/components/Workspace.js @@ -19,13 +19,14 @@ import { $assert, $defined } from '@wisemapping/core-js'; import { Workspace as Workspace2D, Toolkit } from '@wisemapping/web2d'; class Workspace { - constructor(screenManager, zoom) { + constructor(screenManager, zoom, isReadOnly) { // Create a suitable container ... $assert(screenManager, 'Div container can not be null'); $assert(zoom, 'zoom container can not be null'); this._zoom = zoom; this._screenManager = screenManager; + this._isReadOnly = isReadOnly; const divContainer = screenManager.getContainer(); this._screenWidth = parseInt(divContainer.css('width'), 10); @@ -44,6 +45,10 @@ class Workspace { this._eventsEnabled = true; } + get isReadOnly() { + return this._isReadOnly; + } + _createWorkspace() { // Initialize workspace ... const coordOriginX = -(this._screenWidth / 2); diff --git a/packages/mindplot/src/components/model/Mindmap.js b/packages/mindplot/src/components/model/Mindmap.js index 053d43ad..5de44f18 100644 --- a/packages/mindplot/src/components/model/Mindmap.js +++ b/packages/mindplot/src/components/model/Mindmap.js @@ -150,7 +150,7 @@ class Mindmap extends IMindmap { * @param relationship */ deleteRelationship(relationship) { - this._relationships = this._branches.filter((r) => r !== relationship); + this._relationships = this._relationships.filter((r) => r !== relationship); } findNodeById(id) { diff --git a/packages/web2d/cypress/snapshots/playground.test.js/Arrow.snap.png b/packages/web2d/cypress/snapshots/playground.test.js/Arrow.snap.png index fc4c8b49..be29c7f7 100644 Binary files a/packages/web2d/cypress/snapshots/playground.test.js/Arrow.snap.png and b/packages/web2d/cypress/snapshots/playground.test.js/Arrow.snap.png differ diff --git a/packages/web2d/cypress/snapshots/playground.test.js/Curved Line.snap.png b/packages/web2d/cypress/snapshots/playground.test.js/Curved Line.snap.png index 7a0840ef..544c59a6 100644 Binary files a/packages/web2d/cypress/snapshots/playground.test.js/Curved Line.snap.png and b/packages/web2d/cypress/snapshots/playground.test.js/Curved Line.snap.png differ diff --git a/packages/web2d/cypress/snapshots/playground.test.js/Events.snap.png b/packages/web2d/cypress/snapshots/playground.test.js/Events.snap.png index ff50685d..8e516e2c 100644 Binary files a/packages/web2d/cypress/snapshots/playground.test.js/Events.snap.png and b/packages/web2d/cypress/snapshots/playground.test.js/Events.snap.png differ diff --git a/packages/web2d/cypress/snapshots/playground.test.js/Font.snap.png b/packages/web2d/cypress/snapshots/playground.test.js/Font.snap.png index 555544fc..01991ef1 100644 Binary files a/packages/web2d/cypress/snapshots/playground.test.js/Font.snap.png and b/packages/web2d/cypress/snapshots/playground.test.js/Font.snap.png differ diff --git a/packages/web2d/cypress/snapshots/playground.test.js/Group.snap.png b/packages/web2d/cypress/snapshots/playground.test.js/Group.snap.png index be7e7154..809f9c4a 100644 Binary files a/packages/web2d/cypress/snapshots/playground.test.js/Group.snap.png and b/packages/web2d/cypress/snapshots/playground.test.js/Group.snap.png differ diff --git a/packages/web2d/cypress/snapshots/playground.test.js/Line.snap.png b/packages/web2d/cypress/snapshots/playground.test.js/Line.snap.png index 50f4d324..d58730c4 100644 Binary files a/packages/web2d/cypress/snapshots/playground.test.js/Line.snap.png and b/packages/web2d/cypress/snapshots/playground.test.js/Line.snap.png differ diff --git a/packages/web2d/cypress/snapshots/playground.test.js/Poly Line.snap.png b/packages/web2d/cypress/snapshots/playground.test.js/Poly Line.snap.png index 19787b4e..79d3b438 100644 Binary files a/packages/web2d/cypress/snapshots/playground.test.js/Poly Line.snap.png and b/packages/web2d/cypress/snapshots/playground.test.js/Poly Line.snap.png differ diff --git a/packages/web2d/cypress/snapshots/playground.test.js/Prototype.snap.png b/packages/web2d/cypress/snapshots/playground.test.js/Prototype.snap.png index 7663f137..998ed81c 100644 Binary files a/packages/web2d/cypress/snapshots/playground.test.js/Prototype.snap.png and b/packages/web2d/cypress/snapshots/playground.test.js/Prototype.snap.png differ diff --git a/packages/web2d/cypress/snapshots/playground.test.js/Rect.snap.png b/packages/web2d/cypress/snapshots/playground.test.js/Rect.snap.png index 1deb6e2e..4f4141ac 100644 Binary files a/packages/web2d/cypress/snapshots/playground.test.js/Rect.snap.png and b/packages/web2d/cypress/snapshots/playground.test.js/Rect.snap.png differ diff --git a/packages/web2d/cypress/snapshots/playground.test.js/Shapes.snap.png b/packages/web2d/cypress/snapshots/playground.test.js/Shapes.snap.png index e6c08f35..1737da5d 100644 Binary files a/packages/web2d/cypress/snapshots/playground.test.js/Shapes.snap.png and b/packages/web2d/cypress/snapshots/playground.test.js/Shapes.snap.png differ diff --git a/packages/web2d/cypress/snapshots/playground.test.js/Text.snap.png b/packages/web2d/cypress/snapshots/playground.test.js/Text.snap.png index 27abebf0..9974f930 100644 Binary files a/packages/web2d/cypress/snapshots/playground.test.js/Text.snap.png and b/packages/web2d/cypress/snapshots/playground.test.js/Text.snap.png differ diff --git a/packages/web2d/cypress/snapshots/playground.test.js/Workspace.snap.png b/packages/web2d/cypress/snapshots/playground.test.js/Workspace.snap.png index 0eca6425..784db25e 100644 Binary files a/packages/web2d/cypress/snapshots/playground.test.js/Workspace.snap.png and b/packages/web2d/cypress/snapshots/playground.test.js/Workspace.snap.png differ diff --git a/packages/web2d/src/components/peer/svg/ElementPeer.js b/packages/web2d/src/components/peer/svg/ElementPeer.js index 12904971..fa8759f4 100644 --- a/packages/web2d/src/components/peer/svg/ElementPeer.js +++ b/packages/web2d/src/components/peer/svg/ElementPeer.js @@ -34,6 +34,9 @@ class ElementPeer { this._size = { width: 1, height: 1 }; this._changeListeners = {}; // http://support.adobe.com/devsup/devsup.nsf/docs/50493.htm + + // __handlers stores handlers references so they can be removed afterwards + this.__handlers = new Map(); } setChildren(children) { @@ -95,12 +98,15 @@ class ElementPeer { * http://developer.mozilla.org/en/docs/addEvent */ addEvent(type, listener) { - this._native.addEventListener(type, listener); + // wrap it so it can be ~backward compatible with jQuery.trigger + const wrappedListener = (e) => listener(e, e.detail); + this.__handlers.set(listener, wrappedListener); + this._native.addEventListener(type, wrappedListener); } trigger(type, event) { // TODO: check this for correctness and for real jQuery.trigger replacement - this._native.dispatchEvent(new CustomEvent(type, event)); + this._native.dispatchEvent(new CustomEvent(type, { detail: event })); } // eslint-disable-next-line class-methods-use-this @@ -109,7 +115,8 @@ class ElementPeer { } removeEvent(type, listener) { - this._native.removeEventListener(type, listener); + this._native.removeEventListener(type, this.__handlers.get(listener)); + this.__handlers.delete(listener); } setSize(width, height) { diff --git a/packages/webapp/cypress/README.md b/packages/webapp/cypress/README.md index da6fb24d..17dec869 100644 --- a/packages/webapp/cypress/README.md +++ b/packages/webapp/cypress/README.md @@ -1,6 +1,6 @@ # Running tests with cypress. -For details on why we picked Cypress, check the following [PR](https://bitbucket.org/wisemapping/wisemapping-react/pull-requests/1) +For details on why we picked Cypress, check the following [PR](https://bitbucket.org/wisemapping/wisemapping-frontend/pull-requests/1) Check the [Cypress docs](https://docs.cypress.io/guides/overview/why-cypress.html) for more information diff --git a/packages/webapp/cypress/snapshots/maps.test.ts/maps-create.snap.png b/packages/webapp/cypress/snapshots/maps.test.ts/maps-create.snap.png index 4415fa05..fb9d4daf 100644 Binary files a/packages/webapp/cypress/snapshots/maps.test.ts/maps-create.snap.png and b/packages/webapp/cypress/snapshots/maps.test.ts/maps-create.snap.png differ diff --git a/packages/webapp/cypress/snapshots/maps.test.ts/maps.snap.png b/packages/webapp/cypress/snapshots/maps.test.ts/maps.snap.png index 822096d6..9d53dd43 100644 Binary files a/packages/webapp/cypress/snapshots/maps.test.ts/maps.snap.png and b/packages/webapp/cypress/snapshots/maps.test.ts/maps.snap.png differ