UNPKG

isoxml

Version:

JavaScript library to parse and generate ISOXML (ISO11783-10) files

57 lines (56 loc) 1.74 kB
import { TAGS } from './constants'; import { registerEntityClass } from '../classRegistry'; import { fromXML, toXML } from '../utils'; export var CodedCommentCodedCommentScopeEnum; (function (CodedCommentCodedCommentScopeEnum) { CodedCommentCodedCommentScopeEnum["Point"] = "1"; CodedCommentCodedCommentScopeEnum["Global"] = "2"; CodedCommentCodedCommentScopeEnum["Continuous"] = "3"; })(CodedCommentCodedCommentScopeEnum || (CodedCommentCodedCommentScopeEnum = {})); const ATTRIBUTES = { A: { name: 'CodedCommentId', type: 'xs:ID', isPrimaryId: true, isOptional: false, isOnlyV4: false, }, B: { name: 'CodedCommentDesignator', type: 'xs:string', isPrimaryId: false, isOptional: false, isOnlyV4: false, }, C: { name: 'CodedCommentScope', type: 'xs:NMTOKEN', isPrimaryId: false, isOptional: false, isOnlyV4: false, }, D: { name: 'CodedCommentGroupIdRef', type: 'xs:IDREF', isPrimaryId: false, isOptional: true, isOnlyV4: false, }, }; const CHILD_TAGS = { CCL: { name: 'CodedCommentListValue', isOnlyV4: false }, }; export class CodedComment { constructor(attributes, isoxmlManager) { this.attributes = attributes; this.isoxmlManager = isoxmlManager; this.tag = TAGS.CodedComment; } static fromXML(xml, isoxmlManager, internalId, targetClass = CodedComment) { return fromXML(xml, isoxmlManager, targetClass, ATTRIBUTES, CHILD_TAGS, internalId); } toXML() { return toXML(this, ATTRIBUTES, CHILD_TAGS); } } registerEntityClass('main', TAGS.CodedComment, CodedComment);