{ "name": "MapAll", "display": { "scale": 0.5, "arrowHeight": 15, "arrowWidth": 6, "layout": "horizontal" }, "interactions": { "Node": [{ "event": "click", "function": "test" },{ "event": "mouseenter", "function": "enter" },{ "event": "mouseleave", "function": "leave" }] }, "types": [{ "type": "InputDevices", "desc": "This is the class of all input devices", "width": 100, "height": 100, "padding": 40, "nodeData": { "SomeString": { "desc": "Text", "type": "string", "value": "Default string" }, "SomeNumber": { "desc": "Max Value", "type": "number", "validator": "NumberInRange", "value": 0 } }, "subtypes": [{ "type": "Keyboard", "view": " ", "desc": "This is a QWERTY keyboard", "constraints": { "incoming": { "range": [0,0] }, "outgoing": { "range": [0,1], "types": { "Transforms.KeysToMouse": [1,1] } } } },{ "type": "Mouse", "view": "", "desc": "This is a standard mouse", "constraints": { "incoming": { "range": [0,0] }, "outgoing": { "range": [1,1], "types": { "Transforms.AngleMouse": [0,1] } } } }] }, { "type": "Transforms", "desc": "This is the set of all input transformations", "width": 100, "height": 100, "padding": 40, "subtypes": [{ "type": "KeysToMouse", "name": "Keys To Mouse", "view": "", "desc": "This converts the arrow keys to cursor events", "constraints": { "incoming": { "range": [1,99], "types": { "InputDevices.Keyboard": [0,99], "Transforms.*": [0,1] } }, "outgoing": { "range": [0,1], "types": { "Transforms.*": [1,1] } } } },{ "type": "AngleMouse", "name": "Angle Mouse", "view": "", "desc": "This converts the arrow keys to cursor events", "constraints": { "incoming": { "range": [1,99], "types": { "InputDevices.Mouse": [0,1], "Transforms.KeysToMouse": [0,1] } }, "outgoing": { "range": [0,1], "types": { "Transforms.*": [1,1] } } } }] }] }