From f9d7434d71b51f48bd6e7f8e9c2bc31424eccc21 Mon Sep 17 00:00:00 2001 From: BoykoAlex Date: Tue, 22 Aug 2017 13:58:53 -0400 Subject: [PATCH] Adjust some method signatures --- src/demo/app/editor.ts | 5 +-- src/demo/app/metamodel.ts | 4 +-- src/demo/app/renderer.ts | 11 ++++--- src/demo/app/text-to-graph.ts | 6 ++-- src/lib/src/editor/editor.component.ts | 42 +++++++++++------------- src/lib/src/palette/palette.component.ts | 4 +-- src/lib/src/shared/flo.common.ts | 12 +++---- 7 files changed, 43 insertions(+), 41 deletions(-) diff --git a/src/demo/app/editor.ts b/src/demo/app/editor.ts index 4904213..8b0f806 100644 --- a/src/demo/app/editor.ts +++ b/src/demo/app/editor.ts @@ -17,8 +17,9 @@ import { Flo, Constants, Properties } from 'spring-flo'; import { dia } from 'jointjs'; import { BsModalService } from 'ngx-bootstrap'; -const { PropertiesDialogComponent } = require('./properties.dialog.component'); -const joint = require('jointjs'); +import { PropertiesDialogComponent } from './properties.dialog.component'; +import * as _joint from 'jointjs'; +const joint : any = _joint; /** * @author Alex Boyko diff --git a/src/demo/app/metamodel.ts b/src/demo/app/metamodel.ts index d1c7b13..079b975 100644 --- a/src/demo/app/metamodel.ts +++ b/src/demo/app/metamodel.ts @@ -1,6 +1,6 @@ import { Flo } from 'spring-flo'; -const { convertGraphToText } = require('./graph-to-text'); -const { convertTextToGraph } = require('./text-to-graph'); +import { convertGraphToText } from './graph-to-text'; +import { convertTextToGraph } from './text-to-graph'; const metamodelData: Array = [{ name: 'http', group: 'source', description: 'Receive HTTP input', diff --git a/src/demo/app/renderer.ts b/src/demo/app/renderer.ts index d5df73f..5fa689e 100644 --- a/src/demo/app/renderer.ts +++ b/src/demo/app/renderer.ts @@ -17,9 +17,12 @@ import { Flo, Constants } from 'spring-flo'; import { dia } from 'jointjs'; -const joint = require('jointjs'); +import * as _joint from 'jointjs'; const dagre = require('dagre'); +const joint : any = _joint; + + const HANDLE_ICON_MAP = new Map() .set(Constants.REMOVE_HANDLE_TYPE, 'icons/delete.svg') .set(Constants.PROPERTIES_HANDLE_TYPE, 'icons/cog.svg'); @@ -106,14 +109,14 @@ export class Renderer implements Flo.Renderer { let nodes = graph.getElements(); - nodes.forEach(node => { + nodes.forEach((node : dia.Element) => { if (node.get('type') === joint.shapes.flo.NODE_TYPE) { g.setNode(node.id, node.get('size')); } }); let links = graph.getLinks(); - links.forEach(link => { + links.forEach((link : dia.Link) => { if (link.get('type') === joint.shapes.flo.LINK_TYPE) { let options = { minlen: 1.5 @@ -133,7 +136,7 @@ export class Renderer implements Flo.Renderer { g.nodes().forEach((v : any) => { let node : any = graph.getCell(v); if (node) { - var bbox = node.getBBox(); + let bbox = node.getBBox(); node.translate(g.node(v).x - bbox.x, g.node(v).y - bbox.y); } }); diff --git a/src/demo/app/text-to-graph.ts b/src/demo/app/text-to-graph.ts index d712ae1..9a6e8ca 100644 --- a/src/demo/app/text-to-graph.ts +++ b/src/demo/app/text-to-graph.ts @@ -99,7 +99,7 @@ class TextToGraphConverter { let sourceMagnet = Flo.findMagnetByClass(sourceView, '.output-port'); let sourceEnd : Flo.LinkEnd = { id: lastNode.id, - selector: sourceView.getSelector(sourceMagnet, null), + selector: sourceView.getSelector(sourceMagnet, undefined), }; if (sourceMagnet.getAttribute('port')) { sourceEnd.port = sourceMagnet.getAttribute('port'); @@ -108,12 +108,12 @@ class TextToGraphConverter { let targetMagnet = Flo.findMagnetByClass(targetView, '.input-port'); let targetEnd : Flo.LinkEnd = { id: newNode.id, - selector: targetView.getSelector(targetMagnet, null), + selector: targetView.getSelector(targetMagnet, undefined), }; if (targetMagnet.getAttribute('port')) { targetEnd.port = targetMagnet.getAttribute('port'); } - this.flo.createLink(sourceEnd, targetEnd, null, null); + this.flo.createLink(sourceEnd, targetEnd); } lastNode = newNode; }) diff --git a/src/lib/src/editor/editor.component.ts b/src/lib/src/editor/editor.component.ts index 670fa5d..3614c64 100644 --- a/src/lib/src/editor/editor.component.ts +++ b/src/lib/src/editor/editor.component.ts @@ -182,7 +182,7 @@ export class EditorComponent implements OnInit, OnDestroy, OnChanges { } clearGraph() { - self.selection = null; + self.selection = undefined; self.graph.clear(); if (self.metamodel && self.metamodel.load && self.editor && self.editor.setDefaultContent) { return self.metamodel.load().then(data => self.editor.setDefaultContent(this, data)); @@ -221,11 +221,11 @@ export class EditorComponent implements OnInit, OnDestroy, OnChanges { self.fitToPage(); } - createNode(metadata : Flo.ElementMetadata, props : Map, position : dia.Point) : dia.Element { + createNode(metadata : Flo.ElementMetadata, props? : Map, position? : dia.Point) : dia.Element { return self.createNode(metadata, props, position); } - createLink(source : Flo.LinkEnd, target : Flo.LinkEnd, metadata : Flo.ElementMetadata, props : Map) : dia.Link { + createLink(source : Flo.LinkEnd, target : Flo.LinkEnd, metadata? : Flo.ElementMetadata, props? : Map) : dia.Link { return self.createLink(source, target, metadata, props); } @@ -243,13 +243,11 @@ export class EditorComponent implements OnInit, OnDestroy, OnChanges { self.editor.preDelete(self.editorContext, self.selection.model); } else { if (self.selection.model instanceof joint.dia.Element) { - self.graph.getConnectedLinks(self.selection.model).forEach(function(l) { - l.remove(); - }); + self.graph.getConnectedLinks(self.selection.model).forEach((l : dia.Link) => l.remove()); } } self.selection.model.remove(); - self.selection = null; + self.selection = undefined; } } @@ -367,7 +365,7 @@ export class EditorComponent implements OnInit, OnDestroy, OnChanges { newSelection = this.paper.findViewByModel(this.graph.getCell(newSelection.model.get('parent'))); } if (newSelection && (!newSelection.model.attr('metadata') || newSelection.model.attr('metadata/metadata/unselectable'))) { - newSelection = null; + newSelection = undefined; } if (newSelection === this._selection || (!newSelection && !this._selection)) { if (this._selection /*&& propsMgr*/) { @@ -407,10 +405,10 @@ export class EditorComponent implements OnInit, OnDestroy, OnChanges { } if (value) { - this.selection = null; + this.selection = undefined; } if (this.graph) { - this.graph.getLinks().forEach((link) => { + this.graph.getLinks().forEach((link : dia.Link) => { if (value) { link.attr('.link-tools/display', 'none'); link.attr('.marker-vertices/display', 'none'); @@ -507,7 +505,7 @@ export class EditorComponent implements OnInit, OnDestroy, OnChanges { * @param dragDescriptor DnD info object. Has on info on graph node being dragged (drag source) and what it is * being dragged over at the moment (drop target) */ - setDragDescriptor(dragDescriptor : Flo.DnDDescriptor) : void { + setDragDescriptor(dragDescriptor? : Flo.DnDDescriptor) : void { if (this.highlighted === dragDescriptor) { return; } @@ -557,7 +555,7 @@ export class EditorComponent implements OnInit, OnDestroy, OnChanges { if (this.highlighted && this.editor && this.editor.handleNodeDropping) { this.editor.handleNodeDropping(this.editorContext, this.highlighted); } - this.setDragDescriptor(null); + this.setDragDescriptor(undefined); } /** @@ -681,7 +679,7 @@ export class EditorComponent implements OnInit, OnDestroy, OnChanges { let evt = event.event; if (this.paper.el === evt.target || $.contains(this.paper.el, evt.target)) { if (this.readOnlyCanvas) { - this.setDragDescriptor(null); + this.setDragDescriptor(undefined); } else { let metadata = cellview.model.attr('metadata'); let props = cellview.model.attr('props'); @@ -770,7 +768,7 @@ export class EditorComponent implements OnInit, OnDestroy, OnChanges { this.editor .validate(this.graph) .then(allMarkers => this.graph.getCells() - .forEach(cell => this.markElement(cell, allMarkers.has(cell.id) ? allMarkers.get(cell.id) : []))); + .forEach((cell : dia.Cell) => this.markElement(cell, allMarkers.has(cell.id) ? allMarkers.get(cell.id) : []))); } } @@ -793,7 +791,7 @@ export class EditorComponent implements OnInit, OnDestroy, OnChanges { let errorMessages = markers.map(m => m.message); - let errorCell = cell.getEmbeddedCells().find(e => e.attr('./kind') === Constants.ERROR_DECORATION_KIND); + let errorCell = cell.getEmbeddedCells().find((e : dia.Cell) => e.attr('./kind') === Constants.ERROR_DECORATION_KIND); if (errorCell) { if (errorMessages.length === 0) { errorCell.remove(); @@ -904,7 +902,7 @@ export class EditorComponent implements OnInit, OnDestroy, OnChanges { if (node.attr('metadata')) { node.on('change:attrs', (cell : dia.Element, attrs : any, changeData : any) => { - let propertyPath = changeData ? changeData.propertyPath : null; + let propertyPath = changeData ? changeData.propertyPath : undefined; if (propertyPath) { let propAttr = propertyPath.substr(propertyPath.indexOf('/') + 1); if (propAttr.indexOf('metadata') === 0 || @@ -973,7 +971,7 @@ export class EditorComponent implements OnInit, OnDestroy, OnChanges { link.on('change:vertices', this._resizeHandler); link.on('change:attrs', (cell : dia.Link, attrs : any, changeData : any) => { - let propertyPath = changeData ? changeData.propertyPath : null; + let propertyPath = changeData ? changeData.propertyPath : undefined; if (propertyPath) { let propAttr = propertyPath.substr(propertyPath.indexOf('/') + 1); if (propAttr.indexOf('metadata') === 0 || @@ -1023,7 +1021,7 @@ export class EditorComponent implements OnInit, OnDestroy, OnChanges { this.postValidation(); } if (this.selection && this.selection.model === element) { - this.selection = null; + this.selection = undefined; // if (propsMgr) { // propsMgr.updatePropertiesView(); // } @@ -1058,7 +1056,7 @@ export class EditorComponent implements OnInit, OnDestroy, OnChanges { ); this.paper.on('blank:pointerclick', () => { - this.selection = null; + this.selection = undefined; }); this.paper.on('scale', this._resizeHandler); @@ -1108,15 +1106,15 @@ export class EditorComponent implements OnInit, OnDestroy, OnChanges { id: cellView.model.id } if (magnet) { - linkEnd.selector = cellView.getSelector(magnet, null); + linkEnd.selector = cellView.getSelector(magnet, undefined); } if (magnet.getAttribute('port')) { linkEnd.port = magnet.getAttribute('port'); } if (magnet.getAttribute('port') === 'input') { - return this.renderer.createLink(null, linkEnd, null, null); + return this.renderer.createLink(undefined, linkEnd); } else { - return this.renderer.createLink(linkEnd, null, null, null) + return this.renderer.createLink(linkEnd, undefined); } } else { return new joint.shapes.flo.Link(); diff --git a/src/lib/src/palette/palette.component.ts b/src/lib/src/palette/palette.component.ts index fe645a2..7764b3c 100644 --- a/src/lib/src/palette/palette.component.ts +++ b/src/lib/src/palette/palette.component.ts @@ -141,9 +141,9 @@ export class Palette implements OnInit, OnDestroy, OnChanges { view: this.viewBeingDragged, event : evt }); - this.viewBeingDragged = null; + this.viewBeingDragged = undefined; } - this.clickedElement = null; + this.clickedElement = undefined; $('#palette-floater').remove(); }); diff --git a/src/lib/src/shared/flo.common.ts b/src/lib/src/shared/flo.common.ts index 94335d7..731d765 100644 --- a/src/lib/src/shared/flo.common.ts +++ b/src/lib/src/shared/flo.common.ts @@ -106,8 +106,8 @@ export namespace Flo { } export interface Renderer { - createNode?(metadata : ElementMetadata, props : Map) : dia.Element; - createLink?(source : LinkEnd, target : LinkEnd, metadata : ElementMetadata, props : Map) : dia.Link; + createNode?(metadata : ElementMetadata, props? : Map) : dia.Element; + createLink?(source : LinkEnd, target : LinkEnd, metadata? : ElementMetadata, props? : Map) : dia.Link; createHandle?(kind : string, parent : dia.Cell) : dia.Element; createDecoration?(kind : string, parent : dia.Cell) : dia.Element; initializeNewNode?(node : dia.Element, viewerDescriptor : ViewerDescriptor) : void; @@ -141,8 +141,8 @@ export namespace Flo { getMaxZoom() : number; getZoomStep() : number; fitToPage() : void; - createNode(metadata : ElementMetadata, props : Map, position : dia.Point) : dia.Element; - createLink(source : LinkEnd, target : LinkEnd, metadata : ElementMetadata, props : Map) : dia.Link; + createNode(metadata : ElementMetadata, props? : Map, position? : dia.Point) : dia.Element; + createLink(source : LinkEnd, target : LinkEnd, metadata? : ElementMetadata, props? : Map) : dia.Link; deleteSelectedNode() : void; postValidation() : void; } @@ -196,11 +196,11 @@ export namespace Flo { if (className && className.startsWith('.')) { className = className.substr(1); } - return view.$('[magnet]').toArray().find(magnet => magnet.getAttribute('class').split(/\s+/).indexOf(className) >= 0); + return view.$('[magnet]').toArray().find((magnet : HTMLElement) => magnet.getAttribute('class').split(/\s+/).indexOf(className) >= 0); } export function findMagnetByPort(view : dia.CellView, port : string) : HTMLElement { - return view.$('[magnet]').toArray().find(magnet => magnet.getAttribute('port') === port); + return view.$('[magnet]').toArray().find((magnet : HTMLElement) => magnet.getAttribute('port') === port); } /**