/*
 * SDK Pullenti Lingvo, version 4.33, fabruary 2026. Copyright (c) 2013-2026, Pullenti. All rights reserved. 
 * Non-Commercial Freeware and Commercial Software.
 * This class is generated using the converter Unisharping (www.unisharping.ru) from Pullenti C#.NET project. 
 * The latest version of the code is available on the site www.pullenti.ru
 */


const ReferentClass = require("./../../metadata/ReferentClass");
const DecreeChangeKind = require("./../DecreeChangeKind");

class MetaDecreeChange extends ReferentClass {
    
    static initialize() {
        const DecreeChangeReferent = require("./../DecreeChangeReferent");
        MetaDecreeChange.GLOBAL_META = new MetaDecreeChange();
        MetaDecreeChange.GLOBAL_META.addFeature(DecreeChangeReferent.ATTR_OWNER, "Структурный элемент", 1, 0);
        let fi = MetaDecreeChange.GLOBAL_META.addFeature(DecreeChangeReferent.ATTR_KIND, "Тип", 1, 1);
        fi.addValue(DecreeChangeKind.APPEND.toString(), "Дополнить", null, null);
        fi.addValue(DecreeChangeKind.EXPIRE.toString(), "Утратить силу", null, null);
        fi.addValue(DecreeChangeKind.EXPIRECHANGES.toString(), "Откат изменений", null, null);
        fi.addValue(DecreeChangeKind.NEW.toString(), "В редакции", null, null);
        fi.addValue(DecreeChangeKind.EXCHANGE.toString(), "Заменить", null, null);
        fi.addValue(DecreeChangeKind.REMOVE.toString(), "Исключить", null, null);
        fi.addValue(DecreeChangeKind.CONSIDER.toString(), "Считать", null, null);
        fi.addValue(DecreeChangeKind.SUSPEND.toString(), "Приостановить", null, null);
        fi.addValue(DecreeChangeKind.CONTAINER.toString(), "Внести изменение", null, null);
        fi.addValue(DecreeChangeKind.CONFIDENTIAL.toString(), "Конфиденциально", null, null);
        fi.addValue(DecreeChangeKind.ERROR.toString(), "Ошибка", null, null);
        MetaDecreeChange.KIND_FEATURE = fi;
        MetaDecreeChange.GLOBAL_META.addFeature(DecreeChangeReferent.ATTR_CHILD, "Дочернее изменение", 0, 0);
        MetaDecreeChange.GLOBAL_META.addFeature(DecreeChangeReferent.ATTR_VALUE, "Значение", 0, 1).showAsParent = true;
        MetaDecreeChange.GLOBAL_META.addFeature(DecreeChangeReferent.ATTR_PARAM, "Параметр", 0, 1).showAsParent = true;
        MetaDecreeChange.GLOBAL_META.addFeature(DecreeChangeReferent.ATTR_LOCVALUE, "Локатор", 0, 1).showAsParent = true;
        MetaDecreeChange.GLOBAL_META.addFeature(DecreeChangeReferent.ATTR_MISC, "Разное", 0, 0);
    }
    
    get name() {
        const DecreeChangeReferent = require("./../DecreeChangeReferent");
        return DecreeChangeReferent.OBJ_TYPENAME;
    }
    
    get caption() {
        return "Изменение СЭ НПА";
    }
    
    getImageId(obj = null) {
        return MetaDecreeChange.IMAGE_ID;
    }
    
    static static_constructor() {
        MetaDecreeChange.KIND_FEATURE = null;
        MetaDecreeChange.IMAGE_ID = "decreechange";
        MetaDecreeChange.GLOBAL_META = null;
    }
}


MetaDecreeChange.static_constructor();

module.exports = MetaDecreeChange