import { DefaultLevelControl } from "./DefaultLevelControl";

/**
 * @class RootLevelControl
 * 根层级控制类
 * @extends THING.DefaultLevelControl
 * @public
 */
class RootLevelControl extends DefaultLevelControl {

    static levelCondition = '.RootObject';

    static levelName = 'root';

    constructor(options) {
        super(options);
    }

    onSetCamera(param) {
        let path = param['path'];
        if (path) {
            const finalLevel = path[path.length - 1];
            if (finalLevel.isRootObject) {
                return super.onSetCamera(param);
            }
        }


        return null;
    }

    filterObject(object) {
        return object.parents.find('tags:or(Campus)');
    }

}

export { RootLevelControl };