Convert UDDF to an easy to use JS format and handle unit conversions
npm install uddf2jssh
npm install uddf2js
`
Usage
`node
const { parseUDDF } = require('uddf2js');
const fs = require('fs');
const xmlData = fs.readFileSync('mydive.uddf', 'utf8');
parseUDDF(xmlData, 'metric').then(result => {
console.log(result.unit); // 'metric'
const waypoints = result.data.uddf.profiledata.repetitiongroup[0].dive[0].samples.waypoint;
console.log(waypoints);
});
`
Unit Options
- 'si' (default): SI units (Kelvin, m^3, meters, bar)
- 'metric': Celsius, liters, meters, bar
- seconds are not converted to minutes
- 'imperial': Fahrenheit, cubic feet, feet, PSI
- seconds are converted to minutes, but if it's between 1 and 59 seconds, it will be a string like '0:ss'
API
parseUDDF(xmlData, unit)
- xmlData: String containing UDDF XML
- unit: 'si', 'metric', or 'imperial' (optional)
- Returns: Promise resolving to { unit, data }`