UNPKG

isoxml

Version:

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

117 lines (116 loc) 4.71 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ISO11783TaskDataFile = exports.ISO11783TaskDataFileDataTransferOriginEnum = exports.ISO11783TaskDataFileVersionMinorEnum = exports.ISO11783TaskDataFileVersionMajorEnum = void 0; const constants_1 = require("./constants"); const classRegistry_1 = require("../classRegistry"); const utils_1 = require("../utils"); var ISO11783TaskDataFileVersionMajorEnum; (function (ISO11783TaskDataFileVersionMajorEnum) { ISO11783TaskDataFileVersionMajorEnum["TheVersionOfTheSecondEditionPublishedAsAFinalDraftInternationalStandard"] = "4"; })(ISO11783TaskDataFileVersionMajorEnum || (exports.ISO11783TaskDataFileVersionMajorEnum = ISO11783TaskDataFileVersionMajorEnum = {})); var ISO11783TaskDataFileVersionMinorEnum; (function (ISO11783TaskDataFileVersionMinorEnum) { ISO11783TaskDataFileVersionMinorEnum["Value0"] = "0"; ISO11783TaskDataFileVersionMinorEnum["Value1"] = "1"; ISO11783TaskDataFileVersionMinorEnum["Value2"] = "2"; ISO11783TaskDataFileVersionMinorEnum["Value3"] = "3"; })(ISO11783TaskDataFileVersionMinorEnum || (exports.ISO11783TaskDataFileVersionMinorEnum = ISO11783TaskDataFileVersionMinorEnum = {})); var ISO11783TaskDataFileDataTransferOriginEnum; (function (ISO11783TaskDataFileDataTransferOriginEnum) { ISO11783TaskDataFileDataTransferOriginEnum["FMIS"] = "1"; ISO11783TaskDataFileDataTransferOriginEnum["MICS"] = "2"; })(ISO11783TaskDataFileDataTransferOriginEnum || (exports.ISO11783TaskDataFileDataTransferOriginEnum = ISO11783TaskDataFileDataTransferOriginEnum = {})); const ATTRIBUTES = { VersionMajor: { name: 'VersionMajor', type: 'xs:NMTOKEN', isPrimaryId: false, isOptional: false, isOnlyV4: false, }, VersionMinor: { name: 'VersionMinor', type: 'xs:NMTOKEN', isPrimaryId: false, isOptional: false, isOnlyV4: false, }, ManagementSoftwareManufacturer: { name: 'ManagementSoftwareManufacturer', type: 'xs:string', isPrimaryId: false, isOptional: false, isOnlyV4: false, }, ManagementSoftwareVersion: { name: 'ManagementSoftwareVersion', type: 'xs:string', isPrimaryId: false, isOptional: false, isOnlyV4: false, }, TaskControllerManufacturer: { name: 'TaskControllerManufacturer', type: 'xs:string', isPrimaryId: false, isOptional: true, isOnlyV4: false, }, TaskControllerVersion: { name: 'TaskControllerVersion', type: 'xs:string', isPrimaryId: false, isOptional: true, isOnlyV4: false, }, DataTransferOrigin: { name: 'DataTransferOrigin', type: 'xs:NMTOKEN', isPrimaryId: false, isOptional: false, isOnlyV4: false, }, lang: { name: 'lang', type: 'xs:language', isPrimaryId: false, isOptional: true, isOnlyV4: true, }, }; const CHILD_TAGS = { AFE: { name: 'AttachedFile', isOnlyV4: true }, BSN: { name: 'BaseStation', isOnlyV4: true }, CCT: { name: 'CodedComment', isOnlyV4: false }, CCG: { name: 'CodedCommentGroup', isOnlyV4: false }, CLD: { name: 'ColourLegend', isOnlyV4: false }, CTP: { name: 'CropType', isOnlyV4: false }, CPC: { name: 'CulturalPractice', isOnlyV4: false }, CTR: { name: 'Customer', isOnlyV4: false }, DVC: { name: 'Device', isOnlyV4: false }, FRM: { name: 'Farm', isOnlyV4: false }, OTQ: { name: 'OperationTechnique', isOnlyV4: false }, PFD: { name: 'Partfield', isOnlyV4: false }, PDT: { name: 'Product', isOnlyV4: false }, PGP: { name: 'ProductGroup', isOnlyV4: false }, TSK: { name: 'Task', isOnlyV4: false }, TCC: { name: 'TaskControllerCapabilities', isOnlyV4: true }, VPN: { name: 'ValuePresentation', isOnlyV4: false }, WKR: { name: 'Worker', isOnlyV4: false }, XFR: { name: 'ExternalFileReference', isOnlyV4: false }, }; class ISO11783TaskDataFile { constructor(attributes, isoxmlManager) { this.attributes = attributes; this.isoxmlManager = isoxmlManager; this.tag = constants_1.TAGS.ISO11783TaskDataFile; } static fromXML(xml, isoxmlManager, internalId, targetClass = ISO11783TaskDataFile) { return (0, utils_1.fromXML)(xml, isoxmlManager, targetClass, ATTRIBUTES, CHILD_TAGS, internalId); } toXML() { return (0, utils_1.toXML)(this, ATTRIBUTES, CHILD_TAGS); } } exports.ISO11783TaskDataFile = ISO11783TaskDataFile; (0, classRegistry_1.registerEntityClass)('main', constants_1.TAGS.ISO11783TaskDataFile, ISO11783TaskDataFile);