/*
 * 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 GoodAttrType = require("./../GoodAttrType");

class AttrMeta extends ReferentClass {
    
    constructor() {
        super();
        this.typAttr = null;
    }
    
    static initialize() {
        const GoodAttributeReferent = require("./../GoodAttributeReferent");
        AttrMeta.GLOBAL_META = new AttrMeta();
        AttrMeta.GLOBAL_META.typAttr = AttrMeta.GLOBAL_META.addFeature(GoodAttributeReferent.ATTR_TYPE, "Тип", 0, 1);
        AttrMeta.GLOBAL_META.typAttr.addValue(GoodAttrType.KEYWORD.toString(), "Ключевое слово", null, null);
        AttrMeta.GLOBAL_META.typAttr.addValue(GoodAttrType.CHARACTER.toString(), "Качеств.свойство", null, null);
        AttrMeta.GLOBAL_META.typAttr.addValue(GoodAttrType.MODEL.toString(), "Модель", null, null);
        AttrMeta.GLOBAL_META.typAttr.addValue(GoodAttrType.NUMERIC.toString(), "Колич.свойство", null, null);
        AttrMeta.GLOBAL_META.typAttr.addValue(GoodAttrType.PROPER.toString(), "Имя собственное", null, null);
        AttrMeta.GLOBAL_META.typAttr.addValue(GoodAttrType.REFERENT.toString(), "Ссылка", null, null);
        AttrMeta.GLOBAL_META.addFeature(GoodAttributeReferent.ATTR_VALUE, "Значение", 1, 0);
        AttrMeta.GLOBAL_META.addFeature(GoodAttributeReferent.ATTR_ALTVALUE, "Значание (альт.)", 0, 0);
        AttrMeta.GLOBAL_META.addFeature(GoodAttributeReferent.ATTR_UNIT, "Единица измерения", 0, 1);
        AttrMeta.GLOBAL_META.addFeature(GoodAttributeReferent.ATTR_NAME, "Название", 0, 1);
        AttrMeta.GLOBAL_META.addFeature(GoodAttributeReferent.ATTR_REF, "Ссылка", 0, 1);
    }
    
    get name() {
        const GoodAttributeReferent = require("./../GoodAttributeReferent");
        return GoodAttributeReferent.OBJ_TYPENAME;
    }
    
    get caption() {
        return "Атрибут товара";
    }
    
    getImageId(obj = null) {
        return AttrMeta.ATTR_IMAGE_ID;
    }
    
    static static_constructor() {
        AttrMeta.ATTR_IMAGE_ID = "attr";
        AttrMeta.GLOBAL_META = null;
    }
}


AttrMeta.static_constructor();

module.exports = AttrMeta