{"code":"import { Mdo } from \"./mdo\";\r\nvar Unit = /** @class */ (function () {\r\n    function Unit(data) {\r\n        if (data === void 0) { data = {}; }\r\n        this.mdo = new Mdo(data);\r\n        this.fullName = data.unit_full;\r\n        this.shortName = data.unit_short;\r\n        this.slug = data.slug;\r\n        if ('decimal_places' in data) {\r\n            this.decimalPlaces = data.decimal_places;\r\n        }\r\n        if ('derived_units' in data) {\r\n            this.derivedUnits = {};\r\n            for (var key in data['derived_units']) {\r\n                this.derivedUnits[key] = {};\r\n                for (var name_1 in data['derived_units'][key]) {\r\n                    this.derivedUnits[key][name_1] = new Mdo(data['derived_units'][key][name_1]);\r\n                }\r\n            }\r\n        }\r\n    }\r\n    Unit.prototype.initFromJSON = function (data) {\r\n        this.mdo = new Mdo(data);\r\n        this.fullName = data.unit_full;\r\n        this.shortName = data.unit_short;\r\n        this.slug = data.slug;\r\n        if ('decimal_places' in data) {\r\n            this.decimalPlaces = data.decimal_places;\r\n        }\r\n        if ('derived_units' in data) {\r\n            this.derivedUnits = {};\r\n            for (var key in data['derived_units']) {\r\n                this.derivedUnits[key] = {};\r\n                for (var name_2 in data['derived_units'][key]) {\r\n                    this.derivedUnits[key][name_2] = new Mdo(data['derived_units'][key][name_2]);\r\n                }\r\n            }\r\n        }\r\n    };\r\n    Unit.prototype.toJson = function () {\r\n        var obj = {\r\n            slug: this.slug,\r\n            unit_full: this.fullName,\r\n            unit_short: this.shortName,\r\n            m: this.mdo.m,\r\n            d: this.mdo.d,\r\n            o: this.mdo.o,\r\n        };\r\n        if (this.decimalPlaces !== undefined) {\r\n            obj.decimal_places = this.decimalPlaces;\r\n        }\r\n        if (this.derivedUnits !== undefined) {\r\n            obj.derived_units = {};\r\n            for (var key in this.derivedUnits) {\r\n                obj.derived_units[key] = {};\r\n                for (var name_3 in this.derivedUnits[key]) {\r\n                    obj.derived_units[key][name_3] = this.derivedUnits[key][name_3].toJson(false);\r\n                }\r\n            }\r\n        }\r\n        return obj;\r\n    };\r\n    Unit.prototype.setFromUnit = function (src) {\r\n        this.initFromJSON(src.toJson());\r\n    };\r\n    Unit.prototype.deriveUnitTypes = function () {\r\n        var keySet = [];\r\n        if (this.derivedUnits) {\r\n            for (var prop in this.derivedUnits) {\r\n                if (this.derivedUnits.hasOwnProperty(prop)) {\r\n                    keySet.push(prop);\r\n                }\r\n            }\r\n        }\r\n        return keySet;\r\n    };\r\n    Unit.prototype.deriveUnitsByType = function (type) {\r\n        var keySet = [];\r\n        if (this.derivedUnits) {\r\n            for (var prop in this.derivedUnits[type]) {\r\n                if (this.derivedUnits[type].hasOwnProperty(prop)) {\r\n                    keySet.push(prop);\r\n                }\r\n            }\r\n        }\r\n        return keySet;\r\n    };\r\n    return Unit;\r\n}());\r\nexport { Unit };\r\n//# sourceMappingURL=unit.js.map","map":{"version":3,"file":"unit.js","sourceRoot":"","sources":["../src/models/unit.ts"],"names":[],"mappings":"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"},"dts":{"name":"/Users/jheadley/Documents/GitHub/ts-iotile-cloud/models/unit.d.ts","text":"import { MdoDictionary, SerializedMDO, Mdo } from \"./mdo\";\r\nexport interface DeviceUnitTypeDictionary {\r\n    [index: string]: MdoDictionary;\r\n}\r\nexport interface SerializedUnitTypeDictionary {\r\n    [index: string]: {\r\n        [index: string]: SerializedMDO;\r\n    };\r\n}\r\nexport interface SerializedUnit {\r\n    slug: string;\r\n    unit_full: string;\r\n    unit_short: string;\r\n    m: number;\r\n    d: number;\r\n    o: number;\r\n    decimal_places?: number;\r\n    derived_units?: SerializedUnitTypeDictionary;\r\n}\r\nexport declare class Unit {\r\n    mdo: Mdo;\r\n    fullName: string;\r\n    shortName: string;\r\n    slug: string;\r\n    decimalPlaces?: number;\r\n    derivedUnits?: DeviceUnitTypeDictionary;\r\n    constructor(data?: any);\r\n    private initFromJSON;\r\n    toJson(): SerializedUnit;\r\n    setFromUnit(src: Unit): void;\r\n    deriveUnitTypes(): string[];\r\n    deriveUnitsByType(type: string): string[];\r\n}\r\n"}}
