File: //var/www/aspa/three/addons/nodes/loaders/NodeMaterialLoader.js
import { MaterialLoader } from 'three';
import { createNodeMaterialFromType } from '../materials/Materials.js';
const superFromTypeFunction = MaterialLoader.createMaterialFromType;
MaterialLoader.createMaterialFromType = function ( type ) {
	const material = createNodeMaterialFromType( type );
	if ( material !== undefined ) {
		return material;
	}
	return superFromTypeFunction.call( this, type );
};
class NodeMaterialLoader extends MaterialLoader {
	constructor( manager ) {
		super( manager );
		this.nodes = {};
	}
	parse( json ) {
		const material = super.parse( json );
		const nodes = this.nodes;
		const inputNodes = json.inputNodes;
		for ( const property in inputNodes ) {
			const uuid = inputNodes[ property ];
			material[ property ] = nodes[ uuid ];
		}
		return material;
	}
	setNodes( value ) {
		this.nodes = value;
		return this;
	}
}
export default NodeMaterialLoader;