const BaseNode = require('../core/BaseNode');
const {COMPOSITE} = require('../constants');
/**
* Class BaseComposite
* @extends BaseNode
*/
class BaseComposite extends BaseNode {
/**
* @constructor
* @param {object} options
* @param {BaseNode[]} options.children
* @param {string} options.type - Node type (class name)
* @param {string} options.name
* @param {string} options.description
* @param {object} options.properties
*/
constructor({children = [], type = 'Composite', name, description, properties} = {}) {
super({
category: COMPOSITE,
type,
name,
description,
properties,
});
this.children = (children).slice(0);
}
}
module.exports = BaseComposite;