12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- import Node from './Node.js';
- import { getValueType, getValueFromType } from './NodeUtils.js';
- class InputNode extends Node {
- constructor( value, nodeType = null ) {
- super( nodeType );
- this.isInputNode = true;
- this.value = value;
- }
- getNodeType( /*builder*/ ) {
- if ( this.nodeType === null ) {
- return getValueType( this.value );
- }
- return this.nodeType;
- }
- getInputType( builder ) {
- return this.getNodeType( builder );
- }
- serialize( data ) {
- super.serialize( data );
- data.value = this.value;
- if ( this.value && this.value.toArray ) data.value = this.value.toArray();
- data.valueType = getValueType( this.value );
- data.nodeType = this.nodeType;
- }
- deserialize( data ) {
- super.deserialize( data );
- this.nodeType = data.nodeType;
- this.value = getValueFromType( data.valueType );
- this.value = data.value;
- if ( this.value && this.value.fromArray ) this.value = this.value.fromArray( data.value );
- }
- generate( /*builder, output*/ ) {
- console.warn( 'Abstract function.' );
- }
- }
- export default InputNode;
|