gpx-builder
Advanced tools
Comparing version 4.0.3 to 4.1.0
# Change Log | ||
All notable changes to this project will be documented in this file. | ||
## v4.1.0 (2022-04-02) | ||
### Changed | ||
- [8a00cbb](https://github.com/fabulator/gpx-builder/commit/8a00cbb01f75132810a96c2012ed347317edec1a) Update dev dependencies | ||
- [f6bfce4](https://github.com/fabulator/gpx-builder/commit/f6bfce47a493e574963133999088b40d8bb4c272) Update dev dependency commitlint-config-fabulator to v3 (#121) | ||
Co-authored-by: Renovate Bot <bot@renovateapp.com> | ||
### Docs | ||
- [a4fd885](https://github.com/fabulator/gpx-builder/commit/a4fd88513b8cebd5b3b29b51949779e2d062b259) Fix typos in readme and remove unused badges | ||
## v4.0.3 (2022-01-31) | ||
@@ -5,0 +15,0 @@ ### Fixed |
@@ -5,4 +5,4 @@ 'use strict'; | ||
// @flow strict | ||
module.exports = BaseBuilder; |
@@ -1,10 +0,9 @@ | ||
import Bounds from './Bounds'; | ||
import Copyright from './Copyright'; | ||
import Link from './Link'; | ||
import Metadata from './Metadata'; | ||
import Person from './Person'; | ||
import Point from './Point'; | ||
import Route from './Route'; | ||
import Segment from './Segment'; | ||
import Track from './Track'; | ||
export { Bounds, Copyright, Track, Segment, Point, Metadata, Person, Link, Route }; | ||
export { default as Bounds } from './Bounds'; | ||
export { default as Link } from './Link'; | ||
export { default as Copyright } from './Copyright'; | ||
export { default as Person } from './Person'; | ||
export { default as Metadata } from './Metadata'; | ||
export { default as Route } from './Route'; | ||
export { default as Point } from './Point'; | ||
export { default as Track } from './Track'; | ||
export { default as Segment } from './Segment'; |
@@ -6,10 +6,10 @@ 'use strict'; | ||
var Bounds = require('./Bounds.js'); | ||
var Link = require('./Link.js'); | ||
var Copyright = require('./Copyright.js'); | ||
var Link = require('./Link.js'); | ||
var Person = require('./Person.js'); | ||
var Metadata = require('./Metadata.js'); | ||
var Person = require('./Person.js'); | ||
var Route = require('./Route.js'); | ||
var Point = require('./Point.js'); | ||
var Route = require('./Route.js'); | ||
var Track = require('./Track.js'); | ||
var Segment = require('./Segment.js'); | ||
var Track = require('./Track.js'); | ||
@@ -19,9 +19,9 @@ | ||
exports.Bounds = Bounds; | ||
exports.Link = Link; | ||
exports.Copyright = Copyright; | ||
exports.Link = Link; | ||
exports.Person = Person; | ||
exports.Metadata = Metadata; | ||
exports.Person = Person; | ||
exports.Route = Route; | ||
exports.Point = Point; | ||
exports.Route = Route; | ||
exports.Track = Track; | ||
exports.Segment = Segment; | ||
exports.Track = Track; |
@@ -7,9 +7,9 @@ import BaseBuilder from '../BaseBuilder'; | ||
Bounds: typeof import("../BaseBuilder/models").Bounds; | ||
Link: typeof import("../BaseBuilder/models").Link; | ||
Copyright: typeof import("../BaseBuilder/models").Copyright; | ||
Person: typeof import("../BaseBuilder/models").Person; | ||
Metadata: typeof import("../BaseBuilder/models").Metadata; | ||
Route: typeof import("../BaseBuilder/models").Route; | ||
Track: typeof import("../BaseBuilder/models").Track; | ||
Segment: typeof import("../BaseBuilder/models").Segment; | ||
Metadata: typeof import("../BaseBuilder/models").Metadata; | ||
Person: typeof import("../BaseBuilder/models").Person; | ||
Link: typeof import("../BaseBuilder/models").Link; | ||
Route: typeof import("../BaseBuilder/models").Route; | ||
}; | ||
@@ -16,0 +16,0 @@ /** |
@@ -7,10 +7,10 @@ import GarminBuilder from '../GarminBuilder/GarminBuilder'; | ||
Bounds: typeof import("../BaseBuilder/models").Bounds; | ||
Link: typeof import("../BaseBuilder/models").Link; | ||
Copyright: typeof import("../BaseBuilder/models").Copyright; | ||
Person: typeof import("../BaseBuilder/models").Person; | ||
Metadata: typeof import("../BaseBuilder/models").Metadata; | ||
Route: typeof import("../BaseBuilder/models").Route; | ||
Track: typeof import("../BaseBuilder/models").Track; | ||
Segment: typeof import("../BaseBuilder/models").Segment; | ||
Metadata: typeof import("../BaseBuilder/models").Metadata; | ||
Person: typeof import("../BaseBuilder/models").Person; | ||
Link: typeof import("../BaseBuilder/models").Link; | ||
Route: typeof import("../BaseBuilder/models").Route; | ||
}; | ||
} |
@@ -1,2 +0,1 @@ | ||
import XMLCreator from './XMLCreator'; | ||
export { XMLCreator }; | ||
export { default as XMLCreator } from './XMLCreator'; |
@@ -1,4 +0,1 @@ | ||
import BaseBuilder from './builder/BaseBuilder'; | ||
import GarminBuilder from './builder/GarminBuilder'; | ||
import StravaBuilder from './builder/StravaBuilder'; | ||
import { CreatorInterface } from './creators/CreatorInterface'; | ||
@@ -14,2 +11,5 @@ import { GPXBuildData } from './types'; | ||
declare function buildGPX(data: GPXBuildData, creator?: CreatorInterface): string; | ||
export { BaseBuilder, GarminBuilder, StravaBuilder, buildGPX }; | ||
export { buildGPX }; | ||
export { default as BaseBuilder } from './builder/BaseBuilder'; | ||
export { default as StravaBuilder } from './builder/StravaBuilder'; | ||
export { default as GarminBuilder } from './builder/GarminBuilder'; |
@@ -5,6 +5,6 @@ 'use strict'; | ||
var XMLCreator = require('./creators/XMLCreator.js'); | ||
var BaseBuilder = require('./builder/BaseBuilder/BaseBuilder.js'); | ||
var StravaBuilder = require('./builder/StravaBuilder/StravaBuilder.js'); | ||
var GarminBuilder = require('./builder/GarminBuilder/GarminBuilder.js'); | ||
var StravaBuilder = require('./builder/StravaBuilder/StravaBuilder.js'); | ||
var XMLCreator = require('./creators/XMLCreator.js'); | ||
@@ -24,4 +24,4 @@ /** | ||
exports.BaseBuilder = BaseBuilder; | ||
exports.StravaBuilder = StravaBuilder; | ||
exports.GarminBuilder = GarminBuilder; | ||
exports.StravaBuilder = StravaBuilder; | ||
exports.buildGPX = buildGPX; |
import BaseBuilder from './BaseBuilder.js'; | ||
export { default } from './BaseBuilder.js'; | ||
// @flow strict |
export { default as Bounds } from './Bounds.js'; | ||
export { default as Link } from './Link.js'; | ||
export { default as Copyright } from './Copyright.js'; | ||
export { default as Link } from './Link.js'; | ||
export { default as Person } from './Person.js'; | ||
export { default as Metadata } from './Metadata.js'; | ||
export { default as Person } from './Person.js'; | ||
export { default as Route } from './Route.js'; | ||
export { default as Point } from './Point.js'; | ||
export { default as Route } from './Route.js'; | ||
export { default as Track } from './Track.js'; | ||
export { default as Segment } from './Segment.js'; | ||
export { default as Track } from './Track.js'; |
@@ -0,5 +1,5 @@ | ||
import XMLCreator from './creators/XMLCreator.js'; | ||
export { default as BaseBuilder } from './builder/BaseBuilder/BaseBuilder.js'; | ||
export { default as StravaBuilder } from './builder/StravaBuilder/StravaBuilder.js'; | ||
export { default as GarminBuilder } from './builder/GarminBuilder/GarminBuilder.js'; | ||
export { default as StravaBuilder } from './builder/StravaBuilder/StravaBuilder.js'; | ||
import XMLCreator from './creators/XMLCreator.js'; | ||
@@ -6,0 +6,0 @@ /** |
{ | ||
"name": "gpx-builder", | ||
"version": "4.0.3", | ||
"version": "4.1.0", | ||
"description": "Builder of GPX files", | ||
@@ -36,14 +36,14 @@ "keywords": [ | ||
"dependencies": { | ||
"@babel/runtime": "^7.15.4", | ||
"@babel/runtime": "^7.17.8", | ||
"xmlbuilder": "^15.1.1" | ||
}, | ||
"devDependencies": { | ||
"babel-config-fabulator": "^1.2.1", | ||
"commitlint-config-fabulator": "^2.0.11", | ||
"eslint-config-fabulator": "^1.2.3", | ||
"babel-config-fabulator": "^1.4.23", | ||
"commitlint-config-fabulator": "^3.0.0", | ||
"eslint-config-fabulator": "^1.4.0", | ||
"husky": "^7.0.4", | ||
"jest-config-fabulator": "^1.1.0", | ||
"rollup-config-fabulator": "^1.1.0", | ||
"semantic-release-config-fabulator": "^3.0.3" | ||
"jest-config-fabulator": "^1.2.0", | ||
"rollup-config-fabulator": "^1.2.13", | ||
"semantic-release-config-fabulator": "^3.3.0" | ||
} | ||
} |
# GPX builder | ||
[![codecov](https://img.shields.io/npm/v/gpx-builder.svg)](https://www.npmjs.com/package/gpx-builder) [![codecov](https://codecov.io/gh/fabulator/gpx-builder/branch/master/graph/badge.svg)](https://codecov.io/gh/fabulator/gpx-builder) [![codecov](https://travis-ci.org/fabulator/gpx-builder.svg?branch=master)](https://travis-ci.org/fabulator/gpx-builder) [![Maintainability](https://api.codeclimate.com/v1/badges/7ab35417954388460660/maintainability)](https://codeclimate.com/github/fabulator/gpx-builder/maintainability) | ||
[![npm](https://img.shields.io/npm/v/gpx-builder.svg)](https://www.npmjs.com/package/gpx-builder) | ||
This library creates GPX files based on version 1.1. I recommend you to check full [documentation on topografix](http://www.topografix.com/gpx/1/1/). The library has also options to use Garmin extensions, so you can add cadence, heart rate, speed and other fitness data to your points. | ||
This library creates GPX version 1.1 files. I recommend you to check full [documentation on topografix](http://www.topografix.com/gpx/1/1/). The library has option to use Garmin extensions, so you can add cadence, heart rate, speed and other fitness data to your points. | ||
Integration for Strava allows to use some non-standard metric as power. That XML is not valid by standards, but it's the way that Strava use it. | ||
Integration for Strava allows to use some non-standard metric as power. That XML is not valid by standard, but it's the way that Strava use it. | ||
## How to use | ||
## How to use it | ||
@@ -45,6 +45,5 @@ Install: | ||
You can use Strava format that support power and distance on top of Garmin standard properties. | ||
Use Strava format that supports power and distance on top of Garmin standard properties. | ||
```typescript | ||
```javascript | ||
const { StravaBuilder } = require('gpx-builder'); | ||
@@ -64,10 +63,10 @@ const { Point } = StravaBuilder.MODELS; | ||
### How library works | ||
### How the library works | ||
Library contain two types of classes: | ||
Library contains two types of classes: | ||
- Creators - They create xml string from defined Object structure | ||
- Builders - They offer user friendly way to create data for creators | ||
- `Creators` - They create xml string from defined Object structure | ||
- `Builders` - They offer user friendly way to create data for creators | ||
Library contain three Builders: | ||
Library contains three Builders: | ||
@@ -80,2 +79,2 @@ - BaseBuilder - To create GPX 1.1 valid files. [Check all the properties you can add to GPX](https://github.com/fabulator/gpx-builder/blob/master/src/builder/BaseBuilder/BaseBuilder.ts). | ||
What you find in [type file](https://github.com/fabulator/gpx-builder/blob/master/src/types.ts) are types that are used as object for builders. Eg. you can create object based on `WayPoint` and use it directly to creator. You can also use `Point` class in builder section that has more user friendly constructor. It will convert you data to `WayPoint` type. | ||
What you find in [type file](https://github.com/fabulator/gpx-builder/blob/master/src/types.ts) are types that are used as object for builders. Eg. you can create object based on `WayPoint` and use it directly to creator. You can also use `Point` class in builder section that has more developer friendly constructor. It will convert you data to `WayPoint` type. |
@@ -1,4 +0,3 @@ | ||
// @flow strict | ||
import BaseBuilder from './BaseBuilder'; | ||
export default BaseBuilder; |
@@ -1,11 +0,9 @@ | ||
import Bounds from './Bounds'; | ||
import Copyright from './Copyright'; | ||
import Link from './Link'; | ||
import Metadata from './Metadata'; | ||
import Person from './Person'; | ||
import Point from './Point'; | ||
import Route from './Route'; | ||
import Segment from './Segment'; | ||
import Track from './Track'; | ||
export { Bounds, Copyright, Track, Segment, Point, Metadata, Person, Link, Route }; | ||
export { default as Bounds } from './Bounds'; | ||
export { default as Link } from './Link'; | ||
export { default as Copyright } from './Copyright'; | ||
export { default as Person } from './Person'; | ||
export { default as Metadata } from './Metadata'; | ||
export { default as Route } from './Route'; | ||
export { default as Point } from './Point'; | ||
export { default as Track } from './Track'; | ||
export { default as Segment } from './Segment'; |
@@ -1,3 +0,1 @@ | ||
import XMLCreator from './XMLCreator'; | ||
export { XMLCreator }; | ||
export { default as XMLCreator } from './XMLCreator'; |
@@ -1,4 +0,1 @@ | ||
import BaseBuilder from './builder/BaseBuilder'; | ||
import GarminBuilder from './builder/GarminBuilder'; | ||
import StravaBuilder from './builder/StravaBuilder'; | ||
import { XMLCreator } from './creators'; | ||
@@ -20,2 +17,6 @@ import { CreatorInterface } from './creators/CreatorInterface'; | ||
export { BaseBuilder, GarminBuilder, StravaBuilder, buildGPX }; | ||
export { buildGPX }; | ||
export { default as BaseBuilder } from './builder/BaseBuilder'; | ||
export { default as StravaBuilder } from './builder/StravaBuilder'; | ||
export { default as GarminBuilder } from './builder/GarminBuilder'; |
107312
2937
78
Updated@babel/runtime@^7.17.8