node-red-contrib-tak-registration 0.13.1 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/node_modules/@turf/along/README.md +3 -5
- package/node_modules/@turf/along/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/along/dist/cjs/index.d.cts +3 -3
- package/node_modules/@turf/along/dist/esm/index.d.ts +3 -3
- package/node_modules/@turf/along/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/along/package.json +13 -13
- package/node_modules/@turf/angle/dist/cjs/index.cjs +10 -7
- package/node_modules/@turf/angle/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/angle/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/angle/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/angle/dist/esm/index.js +10 -7
- package/node_modules/@turf/angle/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/angle/package.json +15 -15
- package/node_modules/@turf/area/dist/cjs/index.cjs +1 -2
- package/node_modules/@turf/area/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/area/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/area/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/area/dist/esm/index.js +1 -2
- package/node_modules/@turf/area/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/area/package.json +10 -10
- package/node_modules/@turf/bbox/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/bbox/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/bbox/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/bbox/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/bbox/package.json +10 -10
- package/node_modules/@turf/bbox-clip/dist/cjs/index.cjs +9 -18
- package/node_modules/@turf/bbox-clip/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/bbox-clip/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/bbox-clip/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/bbox-clip/dist/esm/index.js +9 -18
- package/node_modules/@turf/bbox-clip/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/bbox-clip/package.json +11 -11
- package/node_modules/@turf/bbox-polygon/README.md +6 -6
- package/node_modules/@turf/bbox-polygon/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/bbox-polygon/dist/cjs/index.d.cts +2 -2
- package/node_modules/@turf/bbox-polygon/dist/esm/index.d.ts +2 -2
- package/node_modules/@turf/bbox-polygon/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/bbox-polygon/package.json +9 -9
- package/node_modules/@turf/bearing/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/bearing/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/bearing/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/bearing/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/bearing/package.json +11 -11
- package/node_modules/@turf/bezier-spline/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/bezier-spline/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/bezier-spline/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/bezier-spline/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/bezier-spline/package.json +10 -10
- package/node_modules/@turf/boolean-clockwise/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/boolean-clockwise/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/boolean-clockwise/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/boolean-clockwise/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/boolean-clockwise/package.json +10 -10
- package/node_modules/@turf/boolean-concave/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/boolean-concave/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/boolean-concave/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/boolean-concave/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/boolean-concave/package.json +10 -10
- package/node_modules/@turf/boolean-contains/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/boolean-contains/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/boolean-contains/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/boolean-contains/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/boolean-contains/package.json +13 -13
- package/node_modules/@turf/boolean-crosses/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/boolean-crosses/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/boolean-crosses/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/boolean-crosses/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/boolean-crosses/package.json +13 -13
- package/node_modules/@turf/boolean-disjoint/README.md +1 -1
- package/node_modules/@turf/boolean-disjoint/dist/cjs/index.cjs +3 -3
- package/node_modules/@turf/boolean-disjoint/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/boolean-disjoint/dist/cjs/index.d.cts +3 -3
- package/node_modules/@turf/boolean-disjoint/dist/esm/index.d.ts +3 -3
- package/node_modules/@turf/boolean-disjoint/dist/esm/index.js +3 -3
- package/node_modules/@turf/boolean-disjoint/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/boolean-disjoint/package.json +13 -13
- package/node_modules/@turf/boolean-equal/dist/cjs/index.cjs +1 -2
- package/node_modules/@turf/boolean-equal/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/boolean-equal/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/boolean-equal/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/boolean-equal/dist/esm/index.js +1 -2
- package/node_modules/@turf/boolean-equal/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/boolean-equal/package.json +11 -11
- package/node_modules/@turf/boolean-intersects/dist/cjs/index.cjs +3 -3
- package/node_modules/@turf/boolean-intersects/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/boolean-intersects/dist/cjs/index.d.cts +3 -3
- package/node_modules/@turf/boolean-intersects/dist/esm/index.d.ts +3 -3
- package/node_modules/@turf/boolean-intersects/dist/esm/index.js +3 -3
- package/node_modules/@turf/boolean-intersects/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/boolean-intersects/package.json +11 -11
- package/node_modules/@turf/boolean-overlap/dist/cjs/index.cjs +3 -6
- package/node_modules/@turf/boolean-overlap/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/boolean-overlap/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/boolean-overlap/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/boolean-overlap/dist/esm/index.js +3 -6
- package/node_modules/@turf/boolean-overlap/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/boolean-overlap/package.json +13 -13
- package/node_modules/@turf/boolean-parallel/dist/cjs/index.cjs +7 -14
- package/node_modules/@turf/boolean-parallel/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/boolean-parallel/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/boolean-parallel/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/boolean-parallel/dist/esm/index.js +7 -14
- package/node_modules/@turf/boolean-parallel/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/boolean-parallel/package.json +12 -12
- package/node_modules/@turf/boolean-point-in-polygon/dist/cjs/index.cjs +2 -4
- package/node_modules/@turf/boolean-point-in-polygon/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/boolean-point-in-polygon/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/boolean-point-in-polygon/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/boolean-point-in-polygon/dist/esm/index.js +2 -4
- package/node_modules/@turf/boolean-point-in-polygon/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/boolean-point-in-polygon/package.json +10 -10
- package/node_modules/@turf/boolean-point-on-line/dist/cjs/index.cjs +10 -0
- package/node_modules/@turf/boolean-point-on-line/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/boolean-point-on-line/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/boolean-point-on-line/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/boolean-point-on-line/dist/esm/index.js +10 -0
- package/node_modules/@turf/boolean-point-on-line/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/boolean-point-on-line/package.json +10 -10
- package/node_modules/@turf/boolean-touches/dist/cjs/index.cjs +2 -4
- package/node_modules/@turf/boolean-touches/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/boolean-touches/dist/cjs/index.d.cts +2 -1
- package/node_modules/@turf/boolean-touches/dist/esm/index.d.ts +2 -1
- package/node_modules/@turf/boolean-touches/dist/esm/index.js +2 -4
- package/node_modules/@turf/boolean-touches/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/boolean-touches/package.json +12 -12
- package/node_modules/@turf/boolean-valid/dist/cjs/index.cjs +14 -28
- package/node_modules/@turf/boolean-valid/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/boolean-valid/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/boolean-valid/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/boolean-valid/dist/esm/index.js +14 -28
- package/node_modules/@turf/boolean-valid/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/boolean-valid/package.json +17 -17
- package/node_modules/@turf/boolean-within/dist/cjs/index.cjs +4 -8
- package/node_modules/@turf/boolean-within/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/boolean-within/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/boolean-within/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/boolean-within/dist/esm/index.js +4 -8
- package/node_modules/@turf/boolean-within/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/boolean-within/package.json +13 -13
- package/node_modules/@turf/buffer/dist/cjs/index.cjs +12 -24
- package/node_modules/@turf/buffer/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/buffer/dist/esm/index.js +12 -24
- package/node_modules/@turf/buffer/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/buffer/package.json +12 -12
- package/node_modules/@turf/center/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/center/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/center/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/center/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/center/package.json +12 -12
- package/node_modules/@turf/center-mean/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/center-mean/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/center-mean/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/center-mean/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/center-mean/package.json +13 -13
- package/node_modules/@turf/center-median/dist/cjs/index.cjs +5 -10
- package/node_modules/@turf/center-median/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/center-median/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/center-median/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/center-median/dist/esm/index.js +5 -10
- package/node_modules/@turf/center-median/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/center-median/package.json +17 -17
- package/node_modules/@turf/center-of-mass/dist/cjs/index.cjs +2 -4
- package/node_modules/@turf/center-of-mass/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/center-of-mass/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/center-of-mass/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/center-of-mass/dist/esm/index.js +2 -4
- package/node_modules/@turf/center-of-mass/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/center-of-mass/package.json +13 -13
- package/node_modules/@turf/centroid/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/centroid/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/centroid/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/centroid/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/centroid/package.json +10 -10
- package/node_modules/@turf/circle/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/circle/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/circle/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/circle/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/circle/package.json +11 -11
- package/node_modules/@turf/clean-coords/dist/cjs/index.cjs +4 -8
- package/node_modules/@turf/clean-coords/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/clean-coords/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/clean-coords/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/clean-coords/dist/esm/index.js +4 -8
- package/node_modules/@turf/clean-coords/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/clean-coords/package.json +11 -11
- package/node_modules/@turf/clone/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/clone/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/clone/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/clone/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/clone/package.json +10 -10
- package/node_modules/@turf/clusters/README.md +8 -2
- package/node_modules/@turf/clusters/dist/cjs/index.cjs +9 -18
- package/node_modules/@turf/clusters/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/clusters/dist/cjs/index.d.cts +9 -8
- package/node_modules/@turf/clusters/dist/esm/index.d.ts +9 -8
- package/node_modules/@turf/clusters/dist/esm/index.js +9 -18
- package/node_modules/@turf/clusters/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/clusters/package.json +10 -10
- package/node_modules/@turf/clusters-dbscan/README.md +38 -15
- package/node_modules/@turf/clusters-dbscan/dist/cjs/index.cjs +2 -4
- package/node_modules/@turf/clusters-dbscan/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/clusters-dbscan/dist/cjs/index.d.cts +16 -3
- package/node_modules/@turf/clusters-dbscan/dist/esm/index.d.ts +16 -3
- package/node_modules/@turf/clusters-dbscan/dist/esm/index.js +2 -4
- package/node_modules/@turf/clusters-dbscan/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/clusters-dbscan/package.json +14 -14
- package/node_modules/@turf/clusters-kmeans/dist/cjs/index.cjs +2 -4
- package/node_modules/@turf/clusters-kmeans/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/clusters-kmeans/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/clusters-kmeans/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/clusters-kmeans/dist/esm/index.js +2 -4
- package/node_modules/@turf/clusters-kmeans/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/clusters-kmeans/package.json +15 -15
- package/node_modules/@turf/collect/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/collect/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/collect/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/collect/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/collect/package.json +11 -11
- package/node_modules/@turf/combine/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/combine/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/combine/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/combine/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/combine/package.json +10 -10
- package/node_modules/@turf/concave/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/concave/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/concave/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/concave/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/concave/package.json +14 -14
- package/node_modules/@turf/convex/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/convex/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/convex/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/convex/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/convex/package.json +10 -10
- package/node_modules/@turf/destination/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/destination/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/destination/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/destination/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/destination/package.json +11 -11
- package/node_modules/@turf/difference/dist/cjs/index.cjs +8 -10
- package/node_modules/@turf/difference/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/difference/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/difference/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/difference/dist/esm/index.js +7 -9
- package/node_modules/@turf/difference/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/difference/package.json +11 -11
- package/node_modules/@turf/dissolve/README.md +11 -12
- package/node_modules/@turf/dissolve/dist/cjs/index.cjs +5 -6
- package/node_modules/@turf/dissolve/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/dissolve/dist/cjs/index.d.cts +3 -3
- package/node_modules/@turf/dissolve/dist/esm/index.d.ts +3 -3
- package/node_modules/@turf/dissolve/dist/esm/index.js +4 -5
- package/node_modules/@turf/dissolve/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/dissolve/package.json +13 -13
- package/node_modules/@turf/distance/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/distance/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/distance/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/distance/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/distance/package.json +10 -10
- package/node_modules/@turf/distance-weight/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/distance-weight/dist/cjs/index.d.cts +3 -1
- package/node_modules/@turf/distance-weight/dist/esm/index.d.ts +3 -1
- package/node_modules/@turf/distance-weight/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/distance-weight/package.json +12 -12
- package/node_modules/@turf/ellipse/dist/cjs/index.cjs +8 -16
- package/node_modules/@turf/ellipse/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/ellipse/dist/esm/index.js +8 -16
- package/node_modules/@turf/ellipse/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/ellipse/package.json +16 -16
- package/node_modules/@turf/envelope/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/envelope/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/envelope/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/envelope/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/envelope/package.json +11 -11
- package/node_modules/@turf/explode/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/explode/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/explode/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/explode/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/explode/package.json +10 -10
- package/node_modules/@turf/flatten/dist/cjs/index.cjs +1 -2
- package/node_modules/@turf/flatten/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/flatten/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/flatten/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/flatten/dist/esm/index.js +1 -2
- package/node_modules/@turf/flatten/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/flatten/package.json +10 -10
- package/node_modules/@turf/flip/dist/cjs/index.cjs +3 -6
- package/node_modules/@turf/flip/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/flip/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/flip/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/flip/dist/esm/index.js +3 -6
- package/node_modules/@turf/flip/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/flip/package.json +11 -11
- package/node_modules/@turf/geojson-rbush/dist/cjs/index.cjs +9 -18
- package/node_modules/@turf/geojson-rbush/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/geojson-rbush/dist/esm/index.js +9 -18
- package/node_modules/@turf/geojson-rbush/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/geojson-rbush/package.json +11 -11
- package/node_modules/@turf/great-circle/README.md +2 -1
- package/node_modules/@turf/great-circle/dist/cjs/index.cjs +7 -2
- package/node_modules/@turf/great-circle/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/great-circle/dist/esm/index.js +7 -2
- package/node_modules/@turf/great-circle/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/great-circle/package.json +9 -9
- package/node_modules/@turf/helpers/README.md +199 -154
- package/node_modules/@turf/helpers/dist/cjs/index.cjs +10 -7
- package/node_modules/@turf/helpers/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/helpers/dist/cjs/index.d.cts +149 -110
- package/node_modules/@turf/helpers/dist/esm/index.d.ts +149 -110
- package/node_modules/@turf/helpers/dist/esm/index.js +10 -7
- package/node_modules/@turf/helpers/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/helpers/package.json +8 -8
- package/node_modules/@turf/hex-grid/dist/cjs/index.cjs +2 -4
- package/node_modules/@turf/hex-grid/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/hex-grid/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/hex-grid/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/hex-grid/dist/esm/index.js +2 -4
- package/node_modules/@turf/hex-grid/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/hex-grid/package.json +14 -14
- package/node_modules/@turf/interpolate/README.md +5 -2
- package/node_modules/@turf/interpolate/dist/cjs/index.cjs +10 -15
- package/node_modules/@turf/interpolate/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/interpolate/dist/cjs/index.d.cts +3 -1
- package/node_modules/@turf/interpolate/dist/esm/index.d.ts +3 -1
- package/node_modules/@turf/interpolate/dist/esm/index.js +11 -16
- package/node_modules/@turf/interpolate/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/interpolate/package.json +18 -18
- package/node_modules/@turf/intersect/dist/cjs/index.cjs +7 -11
- package/node_modules/@turf/intersect/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/intersect/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/intersect/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/intersect/dist/esm/index.js +6 -10
- package/node_modules/@turf/intersect/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/intersect/package.json +11 -11
- package/node_modules/@turf/invariant/README.md +4 -0
- package/node_modules/@turf/invariant/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/invariant/dist/cjs/index.d.cts +6 -6
- package/node_modules/@turf/invariant/dist/esm/index.d.ts +6 -6
- package/node_modules/@turf/invariant/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/invariant/package.json +9 -9
- package/node_modules/@turf/isobands/dist/cjs/index.cjs +10 -20
- package/node_modules/@turf/isobands/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/isobands/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/isobands/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/isobands/dist/esm/index.js +10 -20
- package/node_modules/@turf/isobands/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/isobands/package.json +20 -20
- package/node_modules/@turf/isolines/dist/cjs/index.cjs +10 -20
- package/node_modules/@turf/isolines/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/isolines/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/isolines/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/isolines/dist/esm/index.js +10 -20
- package/node_modules/@turf/isolines/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/isolines/package.json +17 -17
- package/node_modules/@turf/kinks/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/kinks/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/kinks/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/kinks/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/kinks/package.json +10 -10
- package/node_modules/@turf/length/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/length/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/length/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/length/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/length/package.json +11 -11
- package/node_modules/@turf/line-arc/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/line-arc/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/line-arc/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/line-arc/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/line-arc/package.json +12 -12
- package/node_modules/@turf/line-chunk/dist/cjs/index.cjs +3 -6
- package/node_modules/@turf/line-chunk/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/line-chunk/dist/esm/index.js +3 -6
- package/node_modules/@turf/line-chunk/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/line-chunk/package.json +11 -11
- package/node_modules/@turf/line-intersect/README.md +1 -1
- package/node_modules/@turf/line-intersect/dist/cjs/index.cjs +3 -5
- package/node_modules/@turf/line-intersect/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/line-intersect/dist/cjs/index.d.cts +2 -2
- package/node_modules/@turf/line-intersect/dist/esm/index.d.ts +2 -2
- package/node_modules/@turf/line-intersect/dist/esm/index.js +3 -5
- package/node_modules/@turf/line-intersect/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/line-intersect/package.json +10 -10
- package/node_modules/@turf/line-offset/dist/cjs/index.cjs +3 -6
- package/node_modules/@turf/line-offset/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/line-offset/dist/esm/index.js +3 -6
- package/node_modules/@turf/line-offset/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/line-offset/package.json +10 -10
- package/node_modules/@turf/line-overlap/dist/cjs/index.cjs +10 -20
- package/node_modules/@turf/line-overlap/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/line-overlap/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/line-overlap/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/line-overlap/dist/esm/index.js +10 -20
- package/node_modules/@turf/line-overlap/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/line-overlap/package.json +15 -15
- package/node_modules/@turf/line-segment/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/line-segment/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/line-segment/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/line-segment/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/line-segment/package.json +11 -11
- package/node_modules/@turf/line-slice/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/line-slice/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/line-slice/package.json +10 -10
- package/node_modules/@turf/line-slice-along/dist/cjs/index.cjs +5 -10
- package/node_modules/@turf/line-slice-along/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/line-slice-along/dist/esm/index.js +5 -10
- package/node_modules/@turf/line-slice-along/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/line-slice-along/package.json +12 -12
- package/node_modules/@turf/line-split/dist/cjs/index.cjs +7 -14
- package/node_modules/@turf/line-split/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/line-split/dist/esm/index.js +7 -14
- package/node_modules/@turf/line-split/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/line-split/package.json +16 -16
- package/node_modules/@turf/line-to-polygon/dist/cjs/index.cjs +4 -8
- package/node_modules/@turf/line-to-polygon/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/line-to-polygon/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/line-to-polygon/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/line-to-polygon/dist/esm/index.js +4 -8
- package/node_modules/@turf/line-to-polygon/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/line-to-polygon/package.json +12 -12
- package/node_modules/@turf/mask/dist/cjs/index.cjs +7 -7
- package/node_modules/@turf/mask/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/mask/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/mask/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/mask/dist/esm/index.js +6 -6
- package/node_modules/@turf/mask/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/mask/package.json +11 -11
- package/node_modules/@turf/meta/README.md +145 -93
- package/node_modules/@turf/meta/dist/cjs/index.cjs +22 -44
- package/node_modules/@turf/meta/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/meta/dist/esm/index.js +22 -44
- package/node_modules/@turf/meta/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/meta/package.json +7 -7
- package/node_modules/@turf/midpoint/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/midpoint/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/midpoint/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/midpoint/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/midpoint/package.json +12 -12
- package/node_modules/@turf/moran-index/README.md +25 -47
- package/node_modules/@turf/moran-index/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/moran-index/dist/cjs/index.d.cts +16 -8
- package/node_modules/@turf/moran-index/dist/esm/index.d.ts +16 -8
- package/node_modules/@turf/moran-index/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/moran-index/package.json +11 -11
- package/node_modules/@turf/nearest-neighbor-analysis/README.md +50 -21
- package/node_modules/@turf/nearest-neighbor-analysis/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/nearest-neighbor-analysis/dist/cjs/index.d.cts +25 -6
- package/node_modules/@turf/nearest-neighbor-analysis/dist/esm/index.d.ts +25 -6
- package/node_modules/@turf/nearest-neighbor-analysis/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/nearest-neighbor-analysis/package.json +17 -17
- package/node_modules/@turf/nearest-point/dist/cjs/index.cjs +2 -4
- package/node_modules/@turf/nearest-point/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/nearest-point/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/nearest-point/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/nearest-point/dist/esm/index.js +2 -4
- package/node_modules/@turf/nearest-point/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/nearest-point/package.json +12 -12
- package/node_modules/@turf/nearest-point-on-line/README.md +9 -9
- package/node_modules/@turf/nearest-point-on-line/dist/cjs/index.cjs +97 -53
- package/node_modules/@turf/nearest-point-on-line/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/nearest-point-on-line/dist/cjs/index.d.cts +2 -2
- package/node_modules/@turf/nearest-point-on-line/dist/esm/index.d.ts +2 -2
- package/node_modules/@turf/nearest-point-on-line/dist/esm/index.js +99 -55
- package/node_modules/@turf/nearest-point-on-line/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/nearest-point-on-line/package.json +15 -18
- package/node_modules/@turf/nearest-point-to-line/README.md +1 -9
- package/node_modules/@turf/nearest-point-to-line/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/nearest-point-to-line/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/nearest-point-to-line/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/nearest-point-to-line/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/nearest-point-to-line/package.json +14 -14
- package/node_modules/@turf/planepoint/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/planepoint/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/planepoint/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/planepoint/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/planepoint/package.json +10 -10
- package/node_modules/@turf/point-grid/dist/cjs/index.cjs +2 -4
- package/node_modules/@turf/point-grid/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/point-grid/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/point-grid/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/point-grid/dist/esm/index.js +2 -4
- package/node_modules/@turf/point-grid/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/point-grid/package.json +14 -14
- package/node_modules/@turf/point-on-feature/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/point-on-feature/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/point-on-feature/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/point-on-feature/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/point-on-feature/package.json +15 -15
- package/node_modules/@turf/point-to-line-distance/README.md +10 -10
- package/node_modules/@turf/point-to-line-distance/dist/cjs/index.cjs +21 -19
- package/node_modules/@turf/point-to-line-distance/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/point-to-line-distance/dist/cjs/index.d.cts +3 -3
- package/node_modules/@turf/point-to-line-distance/dist/esm/index.d.ts +3 -3
- package/node_modules/@turf/point-to-line-distance/dist/esm/index.js +22 -20
- package/node_modules/@turf/point-to-line-distance/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/point-to-line-distance/package.json +18 -17
- package/node_modules/@turf/point-to-polygon-distance/LICENSE +20 -0
- package/node_modules/@turf/point-to-polygon-distance/README.md +61 -0
- package/node_modules/@turf/point-to-polygon-distance/dist/cjs/index.cjs +49 -0
- package/node_modules/@turf/point-to-polygon-distance/dist/cjs/index.cjs.map +1 -0
- package/node_modules/@turf/point-to-polygon-distance/dist/cjs/index.d.cts +23 -0
- package/node_modules/@turf/point-to-polygon-distance/dist/esm/index.d.ts +23 -0
- package/node_modules/@turf/point-to-polygon-distance/dist/esm/index.js +49 -0
- package/node_modules/@turf/point-to-polygon-distance/dist/esm/index.js.map +1 -0
- package/node_modules/@turf/point-to-polygon-distance/package.json +80 -0
- package/node_modules/@turf/points-within-polygon/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/points-within-polygon/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/points-within-polygon/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/points-within-polygon/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/points-within-polygon/package.json +11 -11
- package/node_modules/@turf/polygon-smooth/dist/cjs/index.cjs +1 -2
- package/node_modules/@turf/polygon-smooth/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/polygon-smooth/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/polygon-smooth/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/polygon-smooth/dist/esm/index.js +1 -2
- package/node_modules/@turf/polygon-smooth/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/polygon-smooth/package.json +10 -10
- package/node_modules/@turf/polygon-tangents/dist/cjs/index.cjs +1 -2
- package/node_modules/@turf/polygon-tangents/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/polygon-tangents/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/polygon-tangents/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/polygon-tangents/dist/esm/index.js +1 -2
- package/node_modules/@turf/polygon-tangents/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/polygon-tangents/package.json +14 -14
- package/node_modules/@turf/polygon-to-line/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/polygon-to-line/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/polygon-to-line/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/polygon-to-line/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/polygon-to-line/package.json +10 -10
- package/node_modules/@turf/polygonize/dist/cjs/index.cjs +20 -40
- package/node_modules/@turf/polygonize/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/polygonize/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/polygonize/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/polygonize/dist/esm/index.js +20 -40
- package/node_modules/@turf/polygonize/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/polygonize/package.json +13 -13
- package/node_modules/@turf/projection/README.md +2 -2
- package/node_modules/@turf/projection/dist/cjs/index.cjs +6 -12
- package/node_modules/@turf/projection/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/projection/dist/cjs/index.d.cts +2 -2
- package/node_modules/@turf/projection/dist/esm/index.d.ts +2 -2
- package/node_modules/@turf/projection/dist/esm/index.js +6 -12
- package/node_modules/@turf/projection/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/projection/package.json +12 -12
- package/node_modules/@turf/quadrat-analysis/README.md +10 -10
- package/node_modules/@turf/quadrat-analysis/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/quadrat-analysis/dist/cjs/index.d.cts +4 -4
- package/node_modules/@turf/quadrat-analysis/dist/esm/index.d.ts +4 -4
- package/node_modules/@turf/quadrat-analysis/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/quadrat-analysis/package.json +18 -18
- package/node_modules/@turf/random/README.md +27 -29
- package/node_modules/@turf/random/dist/cjs/index.cjs +1 -3
- package/node_modules/@turf/random/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/random/dist/cjs/index.d.cts +11 -11
- package/node_modules/@turf/random/dist/esm/index.d.ts +11 -11
- package/node_modules/@turf/random/dist/esm/index.js +1 -3
- package/node_modules/@turf/random/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/random/package.json +9 -9
- package/node_modules/@turf/rectangle-grid/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/rectangle-grid/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/rectangle-grid/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/rectangle-grid/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/rectangle-grid/package.json +13 -13
- package/node_modules/@turf/rewind/dist/cjs/index.cjs +3 -6
- package/node_modules/@turf/rewind/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/rewind/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/rewind/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/rewind/dist/esm/index.js +3 -6
- package/node_modules/@turf/rewind/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/rewind/package.json +13 -13
- package/node_modules/@turf/rhumb-bearing/README.md +1 -1
- package/node_modules/@turf/rhumb-bearing/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/rhumb-bearing/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/rhumb-bearing/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/rhumb-bearing/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/rhumb-bearing/package.json +11 -11
- package/node_modules/@turf/rhumb-destination/dist/cjs/index.cjs +1 -2
- package/node_modules/@turf/rhumb-destination/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/rhumb-destination/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/rhumb-destination/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/rhumb-destination/dist/esm/index.js +1 -2
- package/node_modules/@turf/rhumb-destination/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/rhumb-destination/package.json +11 -11
- package/node_modules/@turf/rhumb-distance/README.md +1 -1
- package/node_modules/@turf/rhumb-distance/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/rhumb-distance/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/rhumb-distance/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/rhumb-distance/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/rhumb-distance/package.json +11 -11
- package/node_modules/@turf/sample/README.md +2 -1
- package/node_modules/@turf/sample/dist/cjs/index.cjs +3 -6
- package/node_modules/@turf/sample/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/sample/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/sample/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/sample/dist/esm/index.js +3 -6
- package/node_modules/@turf/sample/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/sample/package.json +9 -9
- package/node_modules/@turf/sector/dist/cjs/index.cjs +4 -8
- package/node_modules/@turf/sector/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/sector/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/sector/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/sector/dist/esm/index.js +4 -8
- package/node_modules/@turf/sector/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/sector/package.json +14 -14
- package/node_modules/@turf/shortest-path/README.md +13 -19
- package/node_modules/@turf/shortest-path/dist/cjs/index.cjs +3 -6
- package/node_modules/@turf/shortest-path/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/shortest-path/dist/cjs/index.d.cts +5 -5
- package/node_modules/@turf/shortest-path/dist/esm/index.d.ts +5 -5
- package/node_modules/@turf/shortest-path/dist/esm/index.js +3 -6
- package/node_modules/@turf/shortest-path/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/shortest-path/package.json +18 -18
- package/node_modules/@turf/simplify/dist/cjs/index.cjs +8 -16
- package/node_modules/@turf/simplify/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/simplify/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/simplify/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/simplify/dist/esm/index.js +8 -16
- package/node_modules/@turf/simplify/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/simplify/package.json +13 -13
- package/node_modules/@turf/square/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/square/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/square/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/square/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/square/package.json +10 -10
- package/node_modules/@turf/square-grid/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/square-grid/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/square-grid/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/square-grid/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/square-grid/package.json +12 -12
- package/node_modules/@turf/standard-deviational-ellipse/dist/cjs/index.cjs +3 -6
- package/node_modules/@turf/standard-deviational-ellipse/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/standard-deviational-ellipse/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/standard-deviational-ellipse/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/standard-deviational-ellipse/dist/esm/index.js +3 -6
- package/node_modules/@turf/standard-deviational-ellipse/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/standard-deviational-ellipse/package.json +16 -16
- package/node_modules/@turf/tag/dist/cjs/index.cjs +1 -2
- package/node_modules/@turf/tag/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/tag/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/tag/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/tag/dist/esm/index.js +1 -2
- package/node_modules/@turf/tag/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/tag/package.json +12 -12
- package/node_modules/@turf/tesselate/dist/cjs/index.cjs +1 -2
- package/node_modules/@turf/tesselate/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/tesselate/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/tesselate/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/tesselate/dist/esm/index.js +1 -2
- package/node_modules/@turf/tesselate/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/tesselate/package.json +9 -9
- package/node_modules/@turf/tin/dist/cjs/index.cjs +13 -14
- package/node_modules/@turf/tin/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/tin/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/tin/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/tin/dist/esm/index.js +13 -14
- package/node_modules/@turf/tin/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/tin/package.json +9 -9
- package/node_modules/@turf/transform-rotate/dist/cjs/index.cjs +4 -8
- package/node_modules/@turf/transform-rotate/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/transform-rotate/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/transform-rotate/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/transform-rotate/dist/esm/index.js +4 -8
- package/node_modules/@turf/transform-rotate/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/transform-rotate/package.json +17 -17
- package/node_modules/@turf/transform-scale/dist/cjs/index.cjs +18 -12
- package/node_modules/@turf/transform-scale/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/transform-scale/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/transform-scale/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/transform-scale/dist/esm/index.js +18 -12
- package/node_modules/@turf/transform-scale/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/transform-scale/package.json +21 -21
- package/node_modules/@turf/transform-translate/dist/cjs/index.cjs +4 -8
- package/node_modules/@turf/transform-translate/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/transform-translate/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/transform-translate/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/transform-translate/dist/esm/index.js +4 -8
- package/node_modules/@turf/transform-translate/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/transform-translate/package.json +14 -14
- package/node_modules/@turf/triangle-grid/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/triangle-grid/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/triangle-grid/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/triangle-grid/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/triangle-grid/package.json +13 -13
- package/node_modules/@turf/truncate/dist/cjs/index.cjs +3 -6
- package/node_modules/@turf/truncate/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/truncate/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/truncate/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/truncate/dist/esm/index.js +3 -6
- package/node_modules/@turf/truncate/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/truncate/package.json +10 -10
- package/node_modules/@turf/turf/dist/cjs/index.cjs +3 -1
- package/node_modules/@turf/turf/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/turf/dist/cjs/index.d.cts +1 -0
- package/node_modules/@turf/turf/dist/esm/index.d.ts +1 -0
- package/node_modules/@turf/turf/dist/esm/index.js +2 -0
- package/node_modules/@turf/turf/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/turf/package.json +126 -125
- package/node_modules/@turf/turf/turf.min.js +3 -26
- package/node_modules/@turf/union/README.md +44 -24
- package/node_modules/@turf/union/dist/cjs/index.cjs +9 -12
- package/node_modules/@turf/union/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/union/dist/cjs/index.d.cts +40 -21
- package/node_modules/@turf/union/dist/esm/index.d.ts +40 -21
- package/node_modules/@turf/union/dist/esm/index.js +8 -11
- package/node_modules/@turf/union/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/union/package.json +11 -11
- package/node_modules/@turf/unkink-polygon/dist/cjs/index.cjs +14 -28
- package/node_modules/@turf/unkink-polygon/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/unkink-polygon/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/unkink-polygon/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/unkink-polygon/dist/esm/index.js +14 -28
- package/node_modules/@turf/unkink-polygon/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/unkink-polygon/package.json +13 -13
- package/node_modules/@turf/voronoi/dist/cjs/index.cjs +3 -6
- package/node_modules/@turf/voronoi/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/voronoi/dist/cjs/index.d.cts +1 -1
- package/node_modules/@turf/voronoi/dist/esm/index.d.ts +1 -1
- package/node_modules/@turf/voronoi/dist/esm/index.js +3 -6
- package/node_modules/@turf/voronoi/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/voronoi/package.json +11 -11
- package/node_modules/@types/node/README.md +1 -1
- package/node_modules/@types/node/events.d.ts +1 -1
- package/node_modules/@types/node/globals.d.ts +8 -6
- package/node_modules/@types/node/module.d.ts +10 -3
- package/node_modules/@types/node/net.d.ts +3 -0
- package/node_modules/@types/node/package.json +2 -2
- package/node_modules/@types/node/process.d.ts +35 -2
- package/node_modules/@types/node/sqlite.d.ts +30 -9
- package/node_modules/bignumber.js/CHANGELOG.md +295 -0
- package/node_modules/bignumber.js/LICENCE.md +26 -0
- package/node_modules/bignumber.js/README.md +286 -0
- package/node_modules/bignumber.js/bignumber.d.ts +1831 -0
- package/node_modules/bignumber.js/bignumber.js +2922 -0
- package/node_modules/bignumber.js/bignumber.mjs +2907 -0
- package/node_modules/bignumber.js/doc/API.html +2249 -0
- package/node_modules/bignumber.js/package.json +50 -0
- package/node_modules/long/index.d.ts +1 -456
- package/node_modules/long/package.json +1 -1
- package/node_modules/long/umd/index.d.ts +456 -1
- package/node_modules/polyclip-ts/LICENSE +21 -0
- package/node_modules/{polygon-clipping → polyclip-ts}/README.md +35 -36
- package/node_modules/polyclip-ts/dist/cjs/index.cjs +1179 -0
- package/node_modules/polyclip-ts/dist/cjs/index.cjs.map +1 -0
- package/node_modules/polyclip-ts/dist/cjs/index.d.cts +12 -0
- package/node_modules/polyclip-ts/dist/esm/index.d.ts +12 -0
- package/node_modules/polyclip-ts/dist/esm/index.js +1138 -0
- package/node_modules/polyclip-ts/dist/esm/index.js.map +1 -0
- package/node_modules/polyclip-ts/dist/polyclip-ts.umd.js +4811 -0
- package/node_modules/polyclip-ts/dist/polyclip-ts.umd.min.js +2 -0
- package/node_modules/polyclip-ts/package.json +72 -0
- package/node_modules/splaytree-ts/LICENSE +29 -0
- package/node_modules/splaytree-ts/README.md +296 -0
- package/node_modules/splaytree-ts/dist/cjs/index.cjs +714 -0
- package/node_modules/splaytree-ts/dist/cjs/index.cjs.map +1 -0
- package/node_modules/splaytree-ts/dist/cjs/index.d.cts +105 -0
- package/node_modules/splaytree-ts/dist/esm/index.d.ts +105 -0
- package/node_modules/splaytree-ts/dist/esm/index.js +688 -0
- package/node_modules/splaytree-ts/dist/esm/index.js.map +1 -0
- package/node_modules/splaytree-ts/dist/splaytree-ts.umd.js +736 -0
- package/node_modules/splaytree-ts/dist/splaytree-ts.umd.min.js +2 -0
- package/node_modules/splaytree-ts/package.json +59 -0
- package/node_modules/uuid/README.md +29 -16
- package/node_modules/uuid/dist/cjs/md5.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/native.d.ts +1 -0
- package/node_modules/uuid/dist/cjs/rng.js +1 -1
- package/node_modules/uuid/dist/cjs/sha1.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/stringify.js +2 -1
- package/node_modules/uuid/dist/cjs/v1.js +10 -1
- package/node_modules/uuid/dist/cjs/v1ToV6.js +1 -1
- package/node_modules/uuid/dist/cjs/v35.js +3 -3
- package/node_modules/uuid/dist/cjs/v4.js +7 -1
- package/node_modules/uuid/dist/cjs/v6ToV1.js +1 -1
- package/node_modules/uuid/dist/cjs/v7.js +10 -1
- package/node_modules/uuid/dist/cjs-browser/rng.js +1 -1
- package/node_modules/uuid/dist/cjs-browser/stringify.js +2 -1
- package/node_modules/uuid/dist/cjs-browser/v1.js +10 -1
- package/node_modules/uuid/dist/cjs-browser/v1ToV6.js +1 -1
- package/node_modules/uuid/dist/cjs-browser/v35.js +3 -3
- package/node_modules/uuid/dist/cjs-browser/v4.js +7 -1
- package/node_modules/uuid/dist/cjs-browser/v6ToV1.js +1 -1
- package/node_modules/uuid/dist/cjs-browser/v7.js +10 -1
- package/node_modules/uuid/dist/esm/md5.d.ts +2 -0
- package/node_modules/uuid/dist/esm/native.d.ts +1 -0
- package/node_modules/uuid/dist/esm/sha1.d.ts +2 -0
- package/node_modules/uuid/dist/esm/v1.js +8 -0
- package/node_modules/uuid/dist/esm/v4.js +7 -1
- package/node_modules/uuid/dist/esm/v7.js +8 -0
- package/node_modules/uuid/dist/esm-browser/v1.js +8 -0
- package/node_modules/uuid/dist/esm-browser/v4.js +7 -1
- package/node_modules/uuid/dist/esm-browser/v7.js +8 -0
- package/node_modules/uuid/package.json +26 -28
- package/package.json +4 -4
- package/node_modules/polygon-clipping/LICENSE.md +0 -11
- package/node_modules/polygon-clipping/dist/polygon-clipping.cjs.js +0 -1803
- package/node_modules/polygon-clipping/dist/polygon-clipping.d.ts +0 -14
- package/node_modules/polygon-clipping/dist/polygon-clipping.esm.js +0 -1532
- package/node_modules/polygon-clipping/dist/polygon-clipping.umd.js +0 -2496
- package/node_modules/polygon-clipping/dist/polygon-clipping.umd.min.js +0 -24
- package/node_modules/polygon-clipping/dist/polygon-clipping.umd.min.js.map +0 -1
- package/node_modules/polygon-clipping/node_modules/robust-predicates/LICENSE +0 -24
- package/node_modules/polygon-clipping/node_modules/robust-predicates/README.md +0 -82
- package/node_modules/polygon-clipping/node_modules/robust-predicates/esm/incircle.js +0 -765
- package/node_modules/polygon-clipping/node_modules/robust-predicates/esm/insphere.js +0 -766
- package/node_modules/polygon-clipping/node_modules/robust-predicates/esm/orient2d.js +0 -184
- package/node_modules/polygon-clipping/node_modules/robust-predicates/esm/orient3d.js +0 -462
- package/node_modules/polygon-clipping/node_modules/robust-predicates/esm/util.js +0 -138
- package/node_modules/polygon-clipping/node_modules/robust-predicates/index.d.ts +0 -49
- package/node_modules/polygon-clipping/node_modules/robust-predicates/index.js +0 -5
- package/node_modules/polygon-clipping/node_modules/robust-predicates/package.json +0 -75
- package/node_modules/polygon-clipping/node_modules/robust-predicates/umd/incircle.js +0 -908
- package/node_modules/polygon-clipping/node_modules/robust-predicates/umd/incircle.min.js +0 -1
- package/node_modules/polygon-clipping/node_modules/robust-predicates/umd/insphere.js +0 -914
- package/node_modules/polygon-clipping/node_modules/robust-predicates/umd/insphere.min.js +0 -1
- package/node_modules/polygon-clipping/node_modules/robust-predicates/umd/orient2d.js +0 -280
- package/node_modules/polygon-clipping/node_modules/robust-predicates/umd/orient2d.min.js +0 -1
- package/node_modules/polygon-clipping/node_modules/robust-predicates/umd/orient3d.js +0 -601
- package/node_modules/polygon-clipping/node_modules/robust-predicates/umd/orient3d.min.js +0 -1
- package/node_modules/polygon-clipping/node_modules/robust-predicates/umd/predicates.js +0 -2328
- package/node_modules/polygon-clipping/node_modules/robust-predicates/umd/predicates.min.js +0 -1
- package/node_modules/polygon-clipping/package.json +0 -79
- package/node_modules/splaytree/Readme.md +0 -222
- package/node_modules/splaytree/dist/splay.esm.js +0 -686
- package/node_modules/splaytree/dist/splay.esm.js.map +0 -1
- package/node_modules/splaytree/dist/splay.js +0 -694
- package/node_modules/splaytree/dist/splay.js.map +0 -1
- package/node_modules/splaytree/package.json +0 -91
- package/node_modules/splaytree/src/index.ts +0 -679
- package/node_modules/splaytree/src/node.ts +0 -15
- package/node_modules/splaytree/src/types.ts +0 -2
- package/node_modules/splaytree/typings/index.d.ts +0 -82
- package/node_modules/splaytree/typings/node.d.ts +0 -8
- package/node_modules/splaytree/typings/types.d.ts +0 -2
- package/node_modules/uuid/CHANGELOG.md +0 -335
- package/node_modules/uuid/CONTRIBUTING.md +0 -18
- package/node_modules/uuid/dist/cjs/test/parse.test.d.ts +0 -1
- package/node_modules/uuid/dist/cjs/test/parse.test.js +0 -50
- package/node_modules/uuid/dist/cjs/test/rng.test.d.ts +0 -1
- package/node_modules/uuid/dist/cjs/test/rng.test.js +0 -14
- package/node_modules/uuid/dist/cjs/test/stringify.test.d.ts +0 -1
- package/node_modules/uuid/dist/cjs/test/stringify.test.js +0 -23
- package/node_modules/uuid/dist/cjs/test/test_constants.d.ts +0 -33
- package/node_modules/uuid/dist/cjs/test/test_constants.js +0 -91
- package/node_modules/uuid/dist/cjs/test/v1.test.d.ts +0 -1
- package/node_modules/uuid/dist/cjs/test/v1.test.js +0 -127
- package/node_modules/uuid/dist/cjs/test/v35.test.d.ts +0 -1
- package/node_modules/uuid/dist/cjs/test/v35.test.js +0 -143
- package/node_modules/uuid/dist/cjs/test/v4.test.d.ts +0 -1
- package/node_modules/uuid/dist/cjs/test/v4.test.js +0 -60
- package/node_modules/uuid/dist/cjs/test/v6.test.d.ts +0 -1
- package/node_modules/uuid/dist/cjs/test/v6.test.js +0 -56
- package/node_modules/uuid/dist/cjs/test/v7.test.d.ts +0 -1
- package/node_modules/uuid/dist/cjs/test/v7.test.js +0 -194
- package/node_modules/uuid/dist/cjs/test/validate.test.d.ts +0 -1
- package/node_modules/uuid/dist/cjs/test/validate.test.js +0 -13
- package/node_modules/uuid/dist/cjs/test/version.test.d.ts +0 -1
- package/node_modules/uuid/dist/cjs/test/version.test.js +0 -20
- package/node_modules/uuid/dist/cjs-browser/test/parse.test.d.ts +0 -1
- package/node_modules/uuid/dist/cjs-browser/test/parse.test.js +0 -50
- package/node_modules/uuid/dist/cjs-browser/test/rng.test.d.ts +0 -1
- package/node_modules/uuid/dist/cjs-browser/test/rng.test.js +0 -14
- package/node_modules/uuid/dist/cjs-browser/test/stringify.test.d.ts +0 -1
- package/node_modules/uuid/dist/cjs-browser/test/stringify.test.js +0 -23
- package/node_modules/uuid/dist/cjs-browser/test/test_constants.d.ts +0 -33
- package/node_modules/uuid/dist/cjs-browser/test/test_constants.js +0 -91
- package/node_modules/uuid/dist/cjs-browser/test/v1.test.d.ts +0 -1
- package/node_modules/uuid/dist/cjs-browser/test/v1.test.js +0 -127
- package/node_modules/uuid/dist/cjs-browser/test/v35.test.d.ts +0 -1
- package/node_modules/uuid/dist/cjs-browser/test/v35.test.js +0 -143
- package/node_modules/uuid/dist/cjs-browser/test/v4.test.d.ts +0 -1
- package/node_modules/uuid/dist/cjs-browser/test/v4.test.js +0 -60
- package/node_modules/uuid/dist/cjs-browser/test/v6.test.d.ts +0 -1
- package/node_modules/uuid/dist/cjs-browser/test/v6.test.js +0 -56
- package/node_modules/uuid/dist/cjs-browser/test/v7.test.d.ts +0 -1
- package/node_modules/uuid/dist/cjs-browser/test/v7.test.js +0 -194
- package/node_modules/uuid/dist/cjs-browser/test/validate.test.d.ts +0 -1
- package/node_modules/uuid/dist/cjs-browser/test/validate.test.js +0 -13
- package/node_modules/uuid/dist/cjs-browser/test/version.test.d.ts +0 -1
- package/node_modules/uuid/dist/cjs-browser/test/version.test.js +0 -20
- package/node_modules/uuid/dist/esm/test/parse.test.d.ts +0 -1
- package/node_modules/uuid/dist/esm/test/parse.test.js +0 -48
- package/node_modules/uuid/dist/esm/test/rng.test.d.ts +0 -1
- package/node_modules/uuid/dist/esm/test/rng.test.js +0 -12
- package/node_modules/uuid/dist/esm/test/stringify.test.d.ts +0 -1
- package/node_modules/uuid/dist/esm/test/stringify.test.js +0 -21
- package/node_modules/uuid/dist/esm/test/test_constants.d.ts +0 -33
- package/node_modules/uuid/dist/esm/test/test_constants.js +0 -88
- package/node_modules/uuid/dist/esm/test/v1.test.d.ts +0 -1
- package/node_modules/uuid/dist/esm/test/v1.test.js +0 -125
- package/node_modules/uuid/dist/esm/test/v35.test.d.ts +0 -1
- package/node_modules/uuid/dist/esm/test/v35.test.js +0 -141
- package/node_modules/uuid/dist/esm/test/v4.test.d.ts +0 -1
- package/node_modules/uuid/dist/esm/test/v4.test.js +0 -58
- package/node_modules/uuid/dist/esm/test/v6.test.d.ts +0 -1
- package/node_modules/uuid/dist/esm/test/v6.test.js +0 -54
- package/node_modules/uuid/dist/esm/test/v7.test.d.ts +0 -1
- package/node_modules/uuid/dist/esm/test/v7.test.js +0 -192
- package/node_modules/uuid/dist/esm/test/validate.test.d.ts +0 -1
- package/node_modules/uuid/dist/esm/test/validate.test.js +0 -11
- package/node_modules/uuid/dist/esm/test/version.test.d.ts +0 -1
- package/node_modules/uuid/dist/esm/test/version.test.js +0 -18
- package/node_modules/uuid/dist/esm-browser/test/parse.test.d.ts +0 -1
- package/node_modules/uuid/dist/esm-browser/test/parse.test.js +0 -48
- package/node_modules/uuid/dist/esm-browser/test/rng.test.d.ts +0 -1
- package/node_modules/uuid/dist/esm-browser/test/rng.test.js +0 -12
- package/node_modules/uuid/dist/esm-browser/test/stringify.test.d.ts +0 -1
- package/node_modules/uuid/dist/esm-browser/test/stringify.test.js +0 -21
- package/node_modules/uuid/dist/esm-browser/test/test_constants.d.ts +0 -33
- package/node_modules/uuid/dist/esm-browser/test/test_constants.js +0 -88
- package/node_modules/uuid/dist/esm-browser/test/v1.test.d.ts +0 -1
- package/node_modules/uuid/dist/esm-browser/test/v1.test.js +0 -125
- package/node_modules/uuid/dist/esm-browser/test/v35.test.d.ts +0 -1
- package/node_modules/uuid/dist/esm-browser/test/v35.test.js +0 -141
- package/node_modules/uuid/dist/esm-browser/test/v4.test.d.ts +0 -1
- package/node_modules/uuid/dist/esm-browser/test/v4.test.js +0 -58
- package/node_modules/uuid/dist/esm-browser/test/v6.test.d.ts +0 -1
- package/node_modules/uuid/dist/esm-browser/test/v6.test.js +0 -54
- package/node_modules/uuid/dist/esm-browser/test/v7.test.d.ts +0 -1
- package/node_modules/uuid/dist/esm-browser/test/v7.test.js +0 -192
- package/node_modules/uuid/dist/esm-browser/test/validate.test.d.ts +0 -1
- package/node_modules/uuid/dist/esm-browser/test/validate.test.js +0 -11
- package/node_modules/uuid/dist/esm-browser/test/version.test.d.ts +0 -1
- package/node_modules/uuid/dist/esm-browser/test/version.test.js +0 -18
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../index.ts","../../lib/spline.ts"],"sourcesContent":["import { Feature, LineString, GeoJsonProperties } from \"geojson\";\nimport { lineString } from \"@turf/helpers\";\nimport { getGeom } from \"@turf/invariant\";\nimport { Spline } from \"./lib/spline.js\";\n\n/**\n * Takes a {@link LineString|line} and returns a curved version\n * by applying a [Bezier spline](http://en.wikipedia.org/wiki/B%C3%A9zier_spline)\n * algorithm.\n *\n * The bezier spline implementation is by [Leszek Rybicki](http://leszek.rybicki.cc/).\n *\n * @name bezierSpline\n * @param {Feature<LineString>} line input LineString\n * @param {Object} [options={}] Optional parameters\n * @param {Object} [options.properties={}] Translate properties to output\n * @param {number} [options.resolution=10000] time in milliseconds between points\n * @param {number} [options.sharpness=0.85] a measure of how curvy the path should be between splines\n * @returns {Feature<LineString>} curved line\n * @example\n * var line = turf.lineString([\n * [-76.091308, 18.427501],\n * [-76.695556, 18.729501],\n * [-76.552734, 19.40443],\n * [-74.61914, 19.134789],\n * [-73.652343, 20.07657],\n * [-73.157958, 20.210656]\n * ]);\n *\n * var curved = turf.bezierSpline(line);\n *\n * //addToMap\n * var addToMap = [line, curved]\n * curved.properties = { stroke: '#0F0' };\n */\nfunction bezierSpline<P extends GeoJsonProperties = GeoJsonProperties>(\n line: Feature<LineString> | LineString,\n options: {\n properties?: P;\n resolution?: number;\n sharpness?: number;\n } = {}\n): Feature<LineString, P> {\n // Optional params\n const resolution = options.resolution || 10000;\n const sharpness = options.sharpness || 0.85;\n\n const coords: [number, number][] = [];\n const points = getGeom(line).coordinates.map((pt) => {\n return { x: pt[0], y: pt[1] };\n });\n const spline = new Spline({\n duration: resolution,\n points,\n sharpness,\n });\n\n const pushCoord = (time: number) => {\n var pos = spline.pos(time);\n if (Math.floor(time / 100) % 2 === 0) {\n coords.push([pos.x, pos.y]);\n }\n };\n\n for (var i = 0; i < spline.duration; i += 10) {\n pushCoord(i);\n }\n pushCoord(spline.duration);\n\n return lineString(coords, options.properties);\n}\n\nexport { bezierSpline };\nexport default bezierSpline;\n","interface Point {\n x: number;\n y: number;\n z: number;\n}\n\n/**\n * BezierSpline\n * https://github.com/leszekr/bezier-spline-js\n *\n * @private\n * @copyright\n * Copyright (c) 2013 Leszek Rybicki\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\nclass Spline {\n public duration: number;\n public points: Point[];\n public sharpness: number;\n public centers: Point[];\n public controls: Array<[Point, Point]>;\n public stepLength: number;\n public length: number;\n public delay: number;\n public steps: number[];\n\n constructor(options?: any) {\n this.points = options.points || [];\n this.duration = options.duration || 10000;\n this.sharpness = options.sharpness || 0.85;\n this.centers = [];\n this.controls = [];\n this.stepLength = options.stepLength || 60;\n this.length = this.points.length;\n this.delay = 0;\n\n // this is to ensure compatibility with the 2d version\n for (let i = 0; i < this.length; i++) {\n this.points[i].z = this.points[i].z || 0;\n }\n for (let i = 0; i < this.length - 1; i++) {\n const p1 = this.points[i];\n const p2 = this.points[i + 1];\n this.centers.push({\n x: (p1.x + p2.x) / 2,\n y: (p1.y + p2.y) / 2,\n z: (p1.z + p2.z) / 2,\n });\n }\n this.controls.push([this.points[0], this.points[0]]);\n for (let i = 0; i < this.centers.length - 1; i++) {\n const dx =\n this.points[i + 1].x - (this.centers[i].x + this.centers[i + 1].x) / 2;\n const dy =\n this.points[i + 1].y - (this.centers[i].y + this.centers[i + 1].y) / 2;\n const dz =\n this.points[i + 1].z - (this.centers[i].y + this.centers[i + 1].z) / 2;\n this.controls.push([\n {\n x:\n (1.0 - this.sharpness) * this.points[i + 1].x +\n this.sharpness * (this.centers[i].x + dx),\n y:\n (1.0 - this.sharpness) * this.points[i + 1].y +\n this.sharpness * (this.centers[i].y + dy),\n z:\n (1.0 - this.sharpness) * this.points[i + 1].z +\n this.sharpness * (this.centers[i].z + dz),\n },\n {\n x:\n (1.0 - this.sharpness) * this.points[i + 1].x +\n this.sharpness * (this.centers[i + 1].x + dx),\n y:\n (1.0 - this.sharpness) * this.points[i + 1].y +\n this.sharpness * (this.centers[i + 1].y + dy),\n z:\n (1.0 - this.sharpness) * this.points[i + 1].z +\n this.sharpness * (this.centers[i + 1].z + dz),\n },\n ]);\n }\n this.controls.push([\n this.points[this.length - 1],\n this.points[this.length - 1],\n ]);\n this.steps = this.cacheSteps(this.stepLength);\n return this;\n }\n /**\n * Caches an array of equidistant (more or less) points on the curve.\n */\n public cacheSteps(mindist: number) {\n const steps = [];\n let laststep = this.pos(0);\n steps.push(0);\n for (let t = 0; t < this.duration; t += 10) {\n const step = this.pos(t);\n const dist = Math.sqrt(\n (step.x - laststep.x) * (step.x - laststep.x) +\n (step.y - laststep.y) * (step.y - laststep.y) +\n (step.z - laststep.z) * (step.z - laststep.z)\n );\n if (dist > mindist) {\n steps.push(t);\n laststep = step;\n }\n }\n return steps;\n }\n\n /**\n * returns angle and speed in the given point in the curve\n */\n public vector(t: number) {\n const p1 = this.pos(t + 10);\n const p2 = this.pos(t - 10);\n return {\n angle: (180 * Math.atan2(p1.y - p2.y, p1.x - p2.x)) / 3.14,\n speed: Math.sqrt(\n (p2.x - p1.x) * (p2.x - p1.x) +\n (p2.y - p1.y) * (p2.y - p1.y) +\n (p2.z - p1.z) * (p2.z - p1.z)\n ),\n };\n }\n\n /**\n * Gets the position of the point, given time.\n *\n * WARNING: The speed is not constant. The time it takes between control points is constant.\n *\n * For constant speed, use Spline.steps[i];\n */\n public pos(time: number) {\n let t = time - this.delay;\n if (t < 0) {\n t = 0;\n }\n if (t > this.duration) {\n t = this.duration - 1;\n }\n // t = t-this.delay;\n const t2 = t / this.duration;\n if (t2 >= 1) {\n return this.points[this.length - 1];\n }\n\n const n = Math.floor((this.points.length - 1) * t2);\n const t1 = (this.length - 1) * t2 - n;\n return bezier(\n t1,\n this.points[n],\n this.controls[n][1],\n this.controls[n + 1][0],\n this.points[n + 1]\n );\n }\n}\n\nfunction bezier(t: number, p1: Point, c1: Point, c2: Point, p2: Point) {\n const b = B(t);\n const pos = {\n x: p2.x * b[0] + c2.x * b[1] + c1.x * b[2] + p1.x * b[3],\n y: p2.y * b[0] + c2.y * b[1] + c1.y * b[2] + p1.y * b[3],\n z: p2.z * b[0] + c2.z * b[1] + c1.z * b[2] + p1.z * b[3],\n };\n return pos;\n}\nfunction B(t: number) {\n const t2 = t * t;\n const t3 = t2 * t;\n return [\n t3,\n 3 * t2 * (1 - t),\n 3 * t * (1 - t) * (1 - t),\n (1 - t) * (1 - t) * (1 - t),\n ];\n}\n\nexport { Spline, Point };\nexport default Spline;\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../index.ts","../../lib/spline.ts"],"sourcesContent":["import { Feature, LineString, GeoJsonProperties } from \"geojson\";\nimport { lineString } from \"@turf/helpers\";\nimport { getGeom } from \"@turf/invariant\";\nimport { Spline } from \"./lib/spline.js\";\n\n/**\n * Takes a {@link LineString|line} and returns a curved version\n * by applying a [Bezier spline](http://en.wikipedia.org/wiki/B%C3%A9zier_spline)\n * algorithm.\n *\n * The bezier spline implementation is by [Leszek Rybicki](http://leszek.rybicki.cc/).\n *\n * @function\n * @param {Feature<LineString>} line input LineString\n * @param {Object} [options={}] Optional parameters\n * @param {Object} [options.properties={}] Translate properties to output\n * @param {number} [options.resolution=10000] time in milliseconds between points\n * @param {number} [options.sharpness=0.85] a measure of how curvy the path should be between splines\n * @returns {Feature<LineString>} curved line\n * @example\n * var line = turf.lineString([\n * [-76.091308, 18.427501],\n * [-76.695556, 18.729501],\n * [-76.552734, 19.40443],\n * [-74.61914, 19.134789],\n * [-73.652343, 20.07657],\n * [-73.157958, 20.210656]\n * ]);\n *\n * var curved = turf.bezierSpline(line);\n *\n * //addToMap\n * var addToMap = [line, curved]\n * curved.properties = { stroke: '#0F0' };\n */\nfunction bezierSpline<P extends GeoJsonProperties = GeoJsonProperties>(\n line: Feature<LineString> | LineString,\n options: {\n properties?: P;\n resolution?: number;\n sharpness?: number;\n } = {}\n): Feature<LineString, P> {\n // Optional params\n const resolution = options.resolution || 10000;\n const sharpness = options.sharpness || 0.85;\n\n const coords: [number, number][] = [];\n const points = getGeom(line).coordinates.map((pt) => {\n return { x: pt[0], y: pt[1] };\n });\n const spline = new Spline({\n duration: resolution,\n points,\n sharpness,\n });\n\n const pushCoord = (time: number) => {\n var pos = spline.pos(time);\n if (Math.floor(time / 100) % 2 === 0) {\n coords.push([pos.x, pos.y]);\n }\n };\n\n for (var i = 0; i < spline.duration; i += 10) {\n pushCoord(i);\n }\n pushCoord(spline.duration);\n\n return lineString(coords, options.properties);\n}\n\nexport { bezierSpline };\nexport default bezierSpline;\n","interface Point {\n x: number;\n y: number;\n z: number;\n}\n\n/**\n * BezierSpline\n * https://github.com/leszekr/bezier-spline-js\n *\n * @private\n * @copyright\n * Copyright (c) 2013 Leszek Rybicki\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\nclass Spline {\n public duration: number;\n public points: Point[];\n public sharpness: number;\n public centers: Point[];\n public controls: Array<[Point, Point]>;\n public stepLength: number;\n public length: number;\n public delay: number;\n public steps: number[];\n\n constructor(options?: any) {\n this.points = options.points || [];\n this.duration = options.duration || 10000;\n this.sharpness = options.sharpness || 0.85;\n this.centers = [];\n this.controls = [];\n this.stepLength = options.stepLength || 60;\n this.length = this.points.length;\n this.delay = 0;\n\n // this is to ensure compatibility with the 2d version\n for (let i = 0; i < this.length; i++) {\n this.points[i].z = this.points[i].z || 0;\n }\n for (let i = 0; i < this.length - 1; i++) {\n const p1 = this.points[i];\n const p2 = this.points[i + 1];\n this.centers.push({\n x: (p1.x + p2.x) / 2,\n y: (p1.y + p2.y) / 2,\n z: (p1.z + p2.z) / 2,\n });\n }\n this.controls.push([this.points[0], this.points[0]]);\n for (let i = 0; i < this.centers.length - 1; i++) {\n const dx =\n this.points[i + 1].x - (this.centers[i].x + this.centers[i + 1].x) / 2;\n const dy =\n this.points[i + 1].y - (this.centers[i].y + this.centers[i + 1].y) / 2;\n const dz =\n this.points[i + 1].z - (this.centers[i].y + this.centers[i + 1].z) / 2;\n this.controls.push([\n {\n x:\n (1.0 - this.sharpness) * this.points[i + 1].x +\n this.sharpness * (this.centers[i].x + dx),\n y:\n (1.0 - this.sharpness) * this.points[i + 1].y +\n this.sharpness * (this.centers[i].y + dy),\n z:\n (1.0 - this.sharpness) * this.points[i + 1].z +\n this.sharpness * (this.centers[i].z + dz),\n },\n {\n x:\n (1.0 - this.sharpness) * this.points[i + 1].x +\n this.sharpness * (this.centers[i + 1].x + dx),\n y:\n (1.0 - this.sharpness) * this.points[i + 1].y +\n this.sharpness * (this.centers[i + 1].y + dy),\n z:\n (1.0 - this.sharpness) * this.points[i + 1].z +\n this.sharpness * (this.centers[i + 1].z + dz),\n },\n ]);\n }\n this.controls.push([\n this.points[this.length - 1],\n this.points[this.length - 1],\n ]);\n this.steps = this.cacheSteps(this.stepLength);\n return this;\n }\n /**\n * Caches an array of equidistant (more or less) points on the curve.\n */\n public cacheSteps(mindist: number) {\n const steps = [];\n let laststep = this.pos(0);\n steps.push(0);\n for (let t = 0; t < this.duration; t += 10) {\n const step = this.pos(t);\n const dist = Math.sqrt(\n (step.x - laststep.x) * (step.x - laststep.x) +\n (step.y - laststep.y) * (step.y - laststep.y) +\n (step.z - laststep.z) * (step.z - laststep.z)\n );\n if (dist > mindist) {\n steps.push(t);\n laststep = step;\n }\n }\n return steps;\n }\n\n /**\n * returns angle and speed in the given point in the curve\n */\n public vector(t: number) {\n const p1 = this.pos(t + 10);\n const p2 = this.pos(t - 10);\n return {\n angle: (180 * Math.atan2(p1.y - p2.y, p1.x - p2.x)) / 3.14,\n speed: Math.sqrt(\n (p2.x - p1.x) * (p2.x - p1.x) +\n (p2.y - p1.y) * (p2.y - p1.y) +\n (p2.z - p1.z) * (p2.z - p1.z)\n ),\n };\n }\n\n /**\n * Gets the position of the point, given time.\n *\n * WARNING: The speed is not constant. The time it takes between control points is constant.\n *\n * For constant speed, use Spline.steps[i];\n */\n public pos(time: number) {\n let t = time - this.delay;\n if (t < 0) {\n t = 0;\n }\n if (t > this.duration) {\n t = this.duration - 1;\n }\n // t = t-this.delay;\n const t2 = t / this.duration;\n if (t2 >= 1) {\n return this.points[this.length - 1];\n }\n\n const n = Math.floor((this.points.length - 1) * t2);\n const t1 = (this.length - 1) * t2 - n;\n return bezier(\n t1,\n this.points[n],\n this.controls[n][1],\n this.controls[n + 1][0],\n this.points[n + 1]\n );\n }\n}\n\nfunction bezier(t: number, p1: Point, c1: Point, c2: Point, p2: Point) {\n const b = B(t);\n const pos = {\n x: p2.x * b[0] + c2.x * b[1] + c1.x * b[2] + p1.x * b[3],\n y: p2.y * b[0] + c2.y * b[1] + c1.y * b[2] + p1.y * b[3],\n z: p2.z * b[0] + c2.z * b[1] + c1.z * b[2] + p1.z * b[3],\n };\n return pos;\n}\nfunction B(t: number) {\n const t2 = t * t;\n const t3 = t2 * t;\n return [\n t3,\n 3 * t2 * (1 - t),\n 3 * t * (1 - t) * (1 - t),\n (1 - t) * (1 - t) * (1 - t),\n ];\n}\n\nexport { Spline, Point };\nexport default Spline;\n"],"mappings":"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","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@turf/bezier-spline",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.2.0",
|
|
4
4
|
"description": "turf bezier-spline module",
|
|
5
5
|
"author": "Turf Authors",
|
|
6
6
|
"license": "MIT",
|
|
@@ -53,21 +53,21 @@
|
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
55
|
"@types/benchmark": "^2.1.5",
|
|
56
|
-
"@types/tape": "^4.
|
|
56
|
+
"@types/tape": "^4.13.4",
|
|
57
57
|
"benchmark": "^2.1.4",
|
|
58
58
|
"load-json-file": "^7.0.1",
|
|
59
59
|
"npm-run-all": "^4.1.5",
|
|
60
|
-
"tape": "^5.
|
|
61
|
-
"tsup": "^8.
|
|
62
|
-
"tsx": "^4.
|
|
63
|
-
"typescript": "^5.
|
|
60
|
+
"tape": "^5.9.0",
|
|
61
|
+
"tsup": "^8.3.5",
|
|
62
|
+
"tsx": "^4.19.2",
|
|
63
|
+
"typescript": "^5.5.4",
|
|
64
64
|
"write-json-file": "^5.0.0"
|
|
65
65
|
},
|
|
66
66
|
"dependencies": {
|
|
67
|
-
"@turf/helpers": "^7.
|
|
68
|
-
"@turf/invariant": "^7.
|
|
67
|
+
"@turf/helpers": "^7.2.0",
|
|
68
|
+
"@turf/invariant": "^7.2.0",
|
|
69
69
|
"@types/geojson": "^7946.0.10",
|
|
70
|
-
"tslib": "^2.
|
|
70
|
+
"tslib": "^2.8.1"
|
|
71
71
|
},
|
|
72
|
-
"gitHead": "
|
|
72
|
+
"gitHead": "7b0f0374c4668cd569f8904c71e2ae7d941be867"
|
|
73
73
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../index.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/turf/turf/packages/turf-boolean-clockwise/dist/cjs/index.cjs","../../index.ts"],"names":[],"mappings":"AAAA;ACCA,4CAA0B;AAiB1B,SAAS,gBAAA,CACP,IAAA,EACS;AACT,EAAA,MAAM,KAAA,EAAO,kCAAA,IAAc,CAAA;AAC3B,EAAA,IAAI,IAAA,EAAM,CAAA;AACV,EAAA,IAAI,EAAA,EAAI,CAAA;AACR,EAAA,IAAI,IAAA;AACJ,EAAA,IAAI,GAAA;AAEJ,EAAA,MAAA,CAAO,EAAA,EAAI,IAAA,CAAK,MAAA,EAAQ;AACtB,IAAA,KAAA,EAAO,IAAA,GAAO,IAAA,CAAK,CAAC,CAAA;AACpB,IAAA,IAAA,EAAM,IAAA,CAAK,CAAC,CAAA;AACZ,IAAA,IAAA,GAAA,CAAQ,GAAA,CAAI,CAAC,EAAA,EAAI,IAAA,CAAK,CAAC,CAAA,EAAA,EAAA,CAAM,GAAA,CAAI,CAAC,EAAA,EAAI,IAAA,CAAK,CAAC,CAAA,CAAA;AAC5C,IAAA,CAAA,EAAA;AAAA,EACF;AACA,EAAA,OAAO,IAAA,EAAM,CAAA;AACf;AAGA,IAAO,+BAAA,EAAQ,gBAAA;ADpBf;AACE;AACA;AACF,8FAAC","file":"/home/runner/work/turf/turf/packages/turf-boolean-clockwise/dist/cjs/index.cjs","sourcesContent":[null,"import { Feature, LineString, Position } from \"geojson\";\nimport { getCoords } from \"@turf/invariant\";\n\n/**\n * Takes a ring and return true or false whether or not the ring is clockwise or counter-clockwise.\n *\n * @function\n * @param {Feature<LineString>|LineString|Array<Array<number>>} line to be evaluated\n * @returns {boolean} true/false\n * @example\n * var clockwiseRing = turf.lineString([[0,0],[1,1],[1,0],[0,0]]);\n * var counterClockwiseRing = turf.lineString([[0,0],[1,0],[1,1],[0,0]]);\n *\n * turf.booleanClockwise(clockwiseRing)\n * //=true\n * turf.booleanClockwise(counterClockwiseRing)\n * //=false\n */\nfunction booleanClockwise(\n line: Feature<LineString> | LineString | Position[]\n): boolean {\n const ring = getCoords(line);\n let sum = 0;\n let i = 1;\n let prev;\n let cur;\n\n while (i < ring.length) {\n prev = cur || ring[0];\n cur = ring[i];\n sum += (cur[0] - prev[0]) * (cur[1] + prev[1]);\n i++;\n }\n return sum > 0;\n}\n\nexport { booleanClockwise };\nexport default booleanClockwise;\n"]}
|
|
@@ -3,7 +3,7 @@ import { Feature, LineString, Position } from 'geojson';
|
|
|
3
3
|
/**
|
|
4
4
|
* Takes a ring and return true or false whether or not the ring is clockwise or counter-clockwise.
|
|
5
5
|
*
|
|
6
|
-
* @
|
|
6
|
+
* @function
|
|
7
7
|
* @param {Feature<LineString>|LineString|Array<Array<number>>} line to be evaluated
|
|
8
8
|
* @returns {boolean} true/false
|
|
9
9
|
* @example
|
|
@@ -3,7 +3,7 @@ import { Feature, LineString, Position } from 'geojson';
|
|
|
3
3
|
/**
|
|
4
4
|
* Takes a ring and return true or false whether or not the ring is clockwise or counter-clockwise.
|
|
5
5
|
*
|
|
6
|
-
* @
|
|
6
|
+
* @function
|
|
7
7
|
* @param {Feature<LineString>|LineString|Array<Array<number>>} line to be evaluated
|
|
8
8
|
* @returns {boolean} true/false
|
|
9
9
|
* @example
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../index.ts"],"sourcesContent":["import { Feature, LineString, Position } from \"geojson\";\nimport { getCoords } from \"@turf/invariant\";\n\n/**\n * Takes a ring and return true or false whether or not the ring is clockwise or counter-clockwise.\n *\n * @
|
|
1
|
+
{"version":3,"sources":["../../index.ts"],"sourcesContent":["import { Feature, LineString, Position } from \"geojson\";\nimport { getCoords } from \"@turf/invariant\";\n\n/**\n * Takes a ring and return true or false whether or not the ring is clockwise or counter-clockwise.\n *\n * @function\n * @param {Feature<LineString>|LineString|Array<Array<number>>} line to be evaluated\n * @returns {boolean} true/false\n * @example\n * var clockwiseRing = turf.lineString([[0,0],[1,1],[1,0],[0,0]]);\n * var counterClockwiseRing = turf.lineString([[0,0],[1,0],[1,1],[0,0]]);\n *\n * turf.booleanClockwise(clockwiseRing)\n * //=true\n * turf.booleanClockwise(counterClockwiseRing)\n * //=false\n */\nfunction booleanClockwise(\n line: Feature<LineString> | LineString | Position[]\n): boolean {\n const ring = getCoords(line);\n let sum = 0;\n let i = 1;\n let prev;\n let cur;\n\n while (i < ring.length) {\n prev = cur || ring[0];\n cur = ring[i];\n sum += (cur[0] - prev[0]) * (cur[1] + prev[1]);\n i++;\n }\n return sum > 0;\n}\n\nexport { booleanClockwise };\nexport default booleanClockwise;\n"],"mappings":";AACA,SAAS,iBAAiB;AAiB1B,SAAS,iBACP,MACS;AACT,QAAM,OAAO,UAAU,IAAI;AAC3B,MAAI,MAAM;AACV,MAAI,IAAI;AACR,MAAI;AACJ,MAAI;AAEJ,SAAO,IAAI,KAAK,QAAQ;AACtB,WAAO,OAAO,KAAK,CAAC;AACpB,UAAM,KAAK,CAAC;AACZ,YAAQ,IAAI,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,KAAK,CAAC;AAC5C;AAAA,EACF;AACA,SAAO,MAAM;AACf;AAGA,IAAO,iCAAQ;","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@turf/boolean-clockwise",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.2.0",
|
|
4
4
|
"description": "turf boolean-clockwise module",
|
|
5
5
|
"author": "Turf Authors",
|
|
6
6
|
"contributors": [
|
|
@@ -57,21 +57,21 @@
|
|
|
57
57
|
},
|
|
58
58
|
"devDependencies": {
|
|
59
59
|
"@types/benchmark": "^2.1.5",
|
|
60
|
-
"@types/tape": "^4.
|
|
60
|
+
"@types/tape": "^4.13.4",
|
|
61
61
|
"benchmark": "^2.1.4",
|
|
62
62
|
"glob": "^10.3.10",
|
|
63
63
|
"load-json-file": "^7.0.1",
|
|
64
64
|
"npm-run-all": "^4.1.5",
|
|
65
|
-
"tape": "^5.
|
|
66
|
-
"tsup": "^8.
|
|
67
|
-
"tsx": "^4.
|
|
68
|
-
"typescript": "^5.
|
|
65
|
+
"tape": "^5.9.0",
|
|
66
|
+
"tsup": "^8.3.5",
|
|
67
|
+
"tsx": "^4.19.2",
|
|
68
|
+
"typescript": "^5.5.4"
|
|
69
69
|
},
|
|
70
70
|
"dependencies": {
|
|
71
|
-
"@turf/helpers": "^7.
|
|
72
|
-
"@turf/invariant": "^7.
|
|
71
|
+
"@turf/helpers": "^7.2.0",
|
|
72
|
+
"@turf/invariant": "^7.2.0",
|
|
73
73
|
"@types/geojson": "^7946.0.10",
|
|
74
|
-
"tslib": "^2.
|
|
74
|
+
"tslib": "^2.8.1"
|
|
75
75
|
},
|
|
76
|
-
"gitHead": "
|
|
76
|
+
"gitHead": "7b0f0374c4668cd569f8904c71e2ae7d941be867"
|
|
77
77
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../index.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/turf/turf/packages/turf-boolean-concave/dist/cjs/index.cjs","../../index.ts"],"names":[],"mappings":"AAAA;ACCA,4CAAwB;AAcxB,SAAS,cAAA,CAAe,OAAA,EAAqC;AAE3D,EAAA,MAAM,OAAA,EAAS,gCAAA,OAAe,CAAA,CAAE,WAAA;AAChC,EAAA,GAAA,CAAI,MAAA,CAAO,CAAC,CAAA,CAAE,OAAA,GAAU,CAAA,EAAG;AACzB,IAAA,OAAO,KAAA;AAAA,EACT;AAEA,EAAA,IAAI,KAAA,EAAO,KAAA;AACX,EAAA,MAAM,EAAA,EAAI,MAAA,CAAO,CAAC,CAAA,CAAE,OAAA,EAAS,CAAA;AAC7B,EAAA,IAAA,CAAA,IAAS,EAAA,EAAI,CAAA,EAAG,EAAA,EAAI,CAAA,EAAG,CAAA,EAAA,EAAK;AAC1B,IAAA,MAAM,IAAA,EAAM,MAAA,CAAO,CAAC,CAAA,CAAA,CAAG,EAAA,EAAI,CAAA,EAAA,EAAK,CAAC,CAAA,CAAE,CAAC,EAAA,EAAI,MAAA,CAAO,CAAC,CAAA,CAAA,CAAG,EAAA,EAAI,CAAA,EAAA,EAAK,CAAC,CAAA,CAAE,CAAC,CAAA;AAChE,IAAA,MAAM,IAAA,EAAM,MAAA,CAAO,CAAC,CAAA,CAAA,CAAG,EAAA,EAAI,CAAA,EAAA,EAAK,CAAC,CAAA,CAAE,CAAC,EAAA,EAAI,MAAA,CAAO,CAAC,CAAA,CAAA,CAAG,EAAA,EAAI,CAAA,EAAA,EAAK,CAAC,CAAA,CAAE,CAAC,CAAA;AAChE,IAAA,MAAM,IAAA,EAAM,MAAA,CAAO,CAAC,CAAA,CAAE,CAAC,CAAA,CAAE,CAAC,EAAA,EAAI,MAAA,CAAO,CAAC,CAAA,CAAA,CAAG,EAAA,EAAI,CAAA,EAAA,EAAK,CAAC,CAAA,CAAE,CAAC,CAAA;AACtD,IAAA,MAAM,IAAA,EAAM,MAAA,CAAO,CAAC,CAAA,CAAE,CAAC,CAAA,CAAE,CAAC,EAAA,EAAI,MAAA,CAAO,CAAC,CAAA,CAAA,CAAG,EAAA,EAAI,CAAA,EAAA,EAAK,CAAC,CAAA,CAAE,CAAC,CAAA;AACtD,IAAA,MAAM,cAAA,EAAgB,IAAA,EAAM,IAAA,EAAM,IAAA,EAAM,GAAA;AACxC,IAAA,GAAA,CAAI,EAAA,IAAM,CAAA,EAAG;AACX,MAAA,KAAA,EAAO,cAAA,EAAgB,CAAA;AAAA,IACzB,EAAA,KAAA,GAAA,CAAW,KAAA,IAAS,cAAA,EAAgB,CAAA,EAAG;AACrC,MAAA,OAAO,IAAA;AAAA,IACT;AAAA,EACF;AACA,EAAA,OAAO,KAAA;AACT;AAGA,IAAO,6BAAA,EAAQ,cAAA;ADhBf;AACE;AACA;AACF,wFAAC","file":"/home/runner/work/turf/turf/packages/turf-boolean-concave/dist/cjs/index.cjs","sourcesContent":[null,"import { Feature, Polygon } from \"geojson\";\nimport { getGeom } from \"@turf/invariant\";\n\n/**\n * Takes a polygon and return true or false as to whether it is concave or not.\n *\n * @function\n * @param {Feature<Polygon>} polygon to be evaluated\n * @returns {boolean} true/false\n * @example\n * var convexPolygon = turf.polygon([[[0,0],[0,1],[1,1],[1,0],[0,0]]]);\n *\n * turf.booleanConcave(convexPolygon)\n * //=false\n */\nfunction booleanConcave(polygon: Feature<Polygon> | Polygon) {\n // Taken from https://stackoverflow.com/a/1881201 & https://stackoverflow.com/a/25304159\n const coords = getGeom(polygon).coordinates;\n if (coords[0].length <= 4) {\n return false;\n }\n\n let sign = false;\n const n = coords[0].length - 1;\n for (let i = 0; i < n; i++) {\n const dx1 = coords[0][(i + 2) % n][0] - coords[0][(i + 1) % n][0];\n const dy1 = coords[0][(i + 2) % n][1] - coords[0][(i + 1) % n][1];\n const dx2 = coords[0][i][0] - coords[0][(i + 1) % n][0];\n const dy2 = coords[0][i][1] - coords[0][(i + 1) % n][1];\n const zcrossproduct = dx1 * dy2 - dy1 * dx2;\n if (i === 0) {\n sign = zcrossproduct > 0;\n } else if (sign !== zcrossproduct > 0) {\n return true;\n }\n }\n return false;\n}\n\nexport { booleanConcave };\nexport default booleanConcave;\n"]}
|
|
@@ -3,7 +3,7 @@ import { Feature, Polygon } from 'geojson';
|
|
|
3
3
|
/**
|
|
4
4
|
* Takes a polygon and return true or false as to whether it is concave or not.
|
|
5
5
|
*
|
|
6
|
-
* @
|
|
6
|
+
* @function
|
|
7
7
|
* @param {Feature<Polygon>} polygon to be evaluated
|
|
8
8
|
* @returns {boolean} true/false
|
|
9
9
|
* @example
|
|
@@ -3,7 +3,7 @@ import { Feature, Polygon } from 'geojson';
|
|
|
3
3
|
/**
|
|
4
4
|
* Takes a polygon and return true or false as to whether it is concave or not.
|
|
5
5
|
*
|
|
6
|
-
* @
|
|
6
|
+
* @function
|
|
7
7
|
* @param {Feature<Polygon>} polygon to be evaluated
|
|
8
8
|
* @returns {boolean} true/false
|
|
9
9
|
* @example
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../index.ts"],"sourcesContent":["import { Feature, Polygon } from \"geojson\";\nimport { getGeom } from \"@turf/invariant\";\n\n/**\n * Takes a polygon and return true or false as to whether it is concave or not.\n *\n * @
|
|
1
|
+
{"version":3,"sources":["../../index.ts"],"sourcesContent":["import { Feature, Polygon } from \"geojson\";\nimport { getGeom } from \"@turf/invariant\";\n\n/**\n * Takes a polygon and return true or false as to whether it is concave or not.\n *\n * @function\n * @param {Feature<Polygon>} polygon to be evaluated\n * @returns {boolean} true/false\n * @example\n * var convexPolygon = turf.polygon([[[0,0],[0,1],[1,1],[1,0],[0,0]]]);\n *\n * turf.booleanConcave(convexPolygon)\n * //=false\n */\nfunction booleanConcave(polygon: Feature<Polygon> | Polygon) {\n // Taken from https://stackoverflow.com/a/1881201 & https://stackoverflow.com/a/25304159\n const coords = getGeom(polygon).coordinates;\n if (coords[0].length <= 4) {\n return false;\n }\n\n let sign = false;\n const n = coords[0].length - 1;\n for (let i = 0; i < n; i++) {\n const dx1 = coords[0][(i + 2) % n][0] - coords[0][(i + 1) % n][0];\n const dy1 = coords[0][(i + 2) % n][1] - coords[0][(i + 1) % n][1];\n const dx2 = coords[0][i][0] - coords[0][(i + 1) % n][0];\n const dy2 = coords[0][i][1] - coords[0][(i + 1) % n][1];\n const zcrossproduct = dx1 * dy2 - dy1 * dx2;\n if (i === 0) {\n sign = zcrossproduct > 0;\n } else if (sign !== zcrossproduct > 0) {\n return true;\n }\n }\n return false;\n}\n\nexport { booleanConcave };\nexport default booleanConcave;\n"],"mappings":";AACA,SAAS,eAAe;AAcxB,SAAS,eAAe,SAAqC;AAE3D,QAAM,SAAS,QAAQ,OAAO,EAAE;AAChC,MAAI,OAAO,CAAC,EAAE,UAAU,GAAG;AACzB,WAAO;AAAA,EACT;AAEA,MAAI,OAAO;AACX,QAAM,IAAI,OAAO,CAAC,EAAE,SAAS;AAC7B,WAAS,IAAI,GAAG,IAAI,GAAG,KAAK;AAC1B,UAAM,MAAM,OAAO,CAAC,GAAG,IAAI,KAAK,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,GAAG,IAAI,KAAK,CAAC,EAAE,CAAC;AAChE,UAAM,MAAM,OAAO,CAAC,GAAG,IAAI,KAAK,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,GAAG,IAAI,KAAK,CAAC,EAAE,CAAC;AAChE,UAAM,MAAM,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,GAAG,IAAI,KAAK,CAAC,EAAE,CAAC;AACtD,UAAM,MAAM,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,GAAG,IAAI,KAAK,CAAC,EAAE,CAAC;AACtD,UAAM,gBAAgB,MAAM,MAAM,MAAM;AACxC,QAAI,MAAM,GAAG;AACX,aAAO,gBAAgB;AAAA,IACzB,WAAW,SAAS,gBAAgB,GAAG;AACrC,aAAO;AAAA,IACT;AAAA,EACF;AACA,SAAO;AACT;AAGA,IAAO,+BAAQ;","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@turf/boolean-concave",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.2.0",
|
|
4
4
|
"description": "turf boolean-concave module",
|
|
5
5
|
"author": "Turf Authors",
|
|
6
6
|
"contributors": [
|
|
@@ -56,21 +56,21 @@
|
|
|
56
56
|
},
|
|
57
57
|
"devDependencies": {
|
|
58
58
|
"@types/benchmark": "^2.1.5",
|
|
59
|
-
"@types/tape": "^4.
|
|
59
|
+
"@types/tape": "^4.13.4",
|
|
60
60
|
"benchmark": "^2.1.4",
|
|
61
61
|
"glob": "^10.3.10",
|
|
62
62
|
"load-json-file": "^7.0.1",
|
|
63
63
|
"npm-run-all": "^4.1.5",
|
|
64
|
-
"tape": "^5.
|
|
65
|
-
"tsup": "^8.
|
|
66
|
-
"tsx": "^4.
|
|
67
|
-
"typescript": "^5.
|
|
64
|
+
"tape": "^5.9.0",
|
|
65
|
+
"tsup": "^8.3.5",
|
|
66
|
+
"tsx": "^4.19.2",
|
|
67
|
+
"typescript": "^5.5.4"
|
|
68
68
|
},
|
|
69
69
|
"dependencies": {
|
|
70
|
-
"@turf/helpers": "^7.
|
|
71
|
-
"@turf/invariant": "^7.
|
|
70
|
+
"@turf/helpers": "^7.2.0",
|
|
71
|
+
"@turf/invariant": "^7.2.0",
|
|
72
72
|
"@types/geojson": "^7946.0.10",
|
|
73
|
-
"tslib": "^2.
|
|
73
|
+
"tslib": "^2.8.1"
|
|
74
74
|
},
|
|
75
|
-
"gitHead": "
|
|
75
|
+
"gitHead": "7b0f0374c4668cd569f8904c71e2ae7d941be867"
|
|
76
76
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../index.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n BBox,\n Feature,\n Geometry,\n LineString,\n MultiPoint,\n MultiPolygon,\n Point,\n Polygon,\n} from \"geojson\";\nimport { bbox as calcBbox } from \"@turf/bbox\";\nimport { booleanPointInPolygon } from \"@turf/boolean-point-in-polygon\";\nimport { booleanPointOnLine as isPointOnLine } from \"@turf/boolean-point-on-line\";\nimport { getGeom } from \"@turf/invariant\";\n\n/**\n * Boolean-contains returns True if the second geometry is completely contained by the first geometry.\n * The interiors of both geometries must intersect and, the interior and boundary of the secondary (geometry b)\n * must not intersect the exterior of the primary (geometry a).\n * Boolean-contains returns the exact opposite result of the `@turf/boolean-within`.\n *\n * @name booleanContains\n * @param {Geometry|Feature<any>} feature1 GeoJSON Feature or Geometry\n * @param {Geometry|Feature<any>} feature2 GeoJSON Feature or Geometry\n * @returns {boolean} true/false\n * @example\n * var line = turf.lineString([[1, 1], [1, 2], [1, 3], [1, 4]]);\n * var point = turf.point([1, 2]);\n *\n * turf.booleanContains(line, point);\n * //=true\n */\nfunction booleanContains(\n feature1: Feature<any> | Geometry,\n feature2: Feature<any> | Geometry\n) {\n const geom1 = getGeom(feature1);\n const geom2 = getGeom(feature2);\n const type1 = geom1.type;\n const type2 = geom2.type;\n const coords1 = geom1.coordinates;\n const coords2 = geom2.coordinates;\n\n switch (type1) {\n case \"Point\":\n switch (type2) {\n case \"Point\":\n return compareCoords(coords1, coords2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n case \"MultiPoint\":\n switch (type2) {\n case \"Point\":\n return isPointInMultiPoint(geom1, geom2);\n case \"MultiPoint\":\n return isMultiPointInMultiPoint(geom1, geom2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n case \"LineString\":\n switch (type2) {\n case \"Point\":\n return isPointOnLine(geom2, geom1, { ignoreEndVertices: true });\n case \"LineString\":\n return isLineOnLine(geom1, geom2);\n case \"MultiPoint\":\n return isMultiPointOnLine(geom1, geom2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n case \"Polygon\":\n switch (type2) {\n case \"Point\":\n return booleanPointInPolygon(geom2, geom1, { ignoreBoundary: true });\n case \"LineString\":\n return isLineInPoly(geom1, geom2);\n case \"Polygon\":\n return isPolyInPoly(geom1, geom2);\n case \"MultiPoint\":\n return isMultiPointInPoly(geom1, geom2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n case \"MultiPolygon\":\n switch (type2) {\n case \"Polygon\":\n return isPolygonInMultiPolygon(geom1, geom2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n default:\n throw new Error(\"feature1 \" + type1 + \" geometry not supported\");\n }\n}\n\nfunction isPolygonInMultiPolygon(multiPolygon: MultiPolygon, polygon: Polygon) {\n return multiPolygon.coordinates.some((coords) =>\n isPolyInPoly({ type: \"Polygon\", coordinates: coords }, polygon)\n );\n}\n\nfunction isPointInMultiPoint(multiPoint: MultiPoint, pt: Point) {\n let i;\n let output = false;\n for (i = 0; i < multiPoint.coordinates.length; i++) {\n if (compareCoords(multiPoint.coordinates[i], pt.coordinates)) {\n output = true;\n break;\n }\n }\n return output;\n}\n\nfunction isMultiPointInMultiPoint(\n multiPoint1: MultiPoint,\n multiPoint2: MultiPoint\n) {\n for (const coord2 of multiPoint2.coordinates) {\n let matchFound = false;\n for (const coord1 of multiPoint1.coordinates) {\n if (compareCoords(coord2, coord1)) {\n matchFound = true;\n break;\n }\n }\n if (!matchFound) {\n return false;\n }\n }\n return true;\n}\n\nfunction isMultiPointOnLine(lineString: LineString, multiPoint: MultiPoint) {\n let haveFoundInteriorPoint = false;\n for (const coord of multiPoint.coordinates) {\n if (isPointOnLine(coord, lineString, { ignoreEndVertices: true })) {\n haveFoundInteriorPoint = true;\n }\n if (!isPointOnLine(coord, lineString)) {\n return false;\n }\n }\n if (haveFoundInteriorPoint) {\n return true;\n }\n return false;\n}\n\nfunction isMultiPointInPoly(polygon: Polygon, multiPoint: MultiPoint) {\n for (const coord of multiPoint.coordinates) {\n if (!booleanPointInPolygon(coord, polygon, { ignoreBoundary: true })) {\n return false;\n }\n }\n return true;\n}\n\nfunction isLineOnLine(lineString1: LineString, lineString2: LineString) {\n let haveFoundInteriorPoint = false;\n for (const coords of lineString2.coordinates) {\n if (\n isPointOnLine({ type: \"Point\", coordinates: coords }, lineString1, {\n ignoreEndVertices: true,\n })\n ) {\n haveFoundInteriorPoint = true;\n }\n if (\n !isPointOnLine({ type: \"Point\", coordinates: coords }, lineString1, {\n ignoreEndVertices: false,\n })\n ) {\n return false;\n }\n }\n return haveFoundInteriorPoint;\n}\n\nfunction isLineInPoly(polygon: Polygon, linestring: LineString) {\n let output = false;\n let i = 0;\n\n const polyBbox = calcBbox(polygon);\n const lineBbox = calcBbox(linestring);\n if (!doBBoxOverlap(polyBbox, lineBbox)) {\n return false;\n }\n for (i; i < linestring.coordinates.length - 1; i++) {\n const midPoint = getMidpoint(\n linestring.coordinates[i],\n linestring.coordinates[i + 1]\n );\n if (\n booleanPointInPolygon({ type: \"Point\", coordinates: midPoint }, polygon, {\n ignoreBoundary: true,\n })\n ) {\n output = true;\n break;\n }\n }\n return output;\n}\n\n/**\n * Is Polygon2 in Polygon1\n * Only takes into account outer rings\n *\n * @private\n * @param {Geometry|Feature<Polygon>} feature1 Polygon1\n * @param {Geometry|Feature<Polygon>} feature2 Polygon2\n * @returns {boolean} true/false\n */\nfunction isPolyInPoly(\n feature1: Feature<Polygon> | Polygon,\n feature2: Feature<Polygon> | Polygon\n) {\n // Handle Nulls\n if (feature1.type === \"Feature\" && feature1.geometry === null) {\n return false;\n }\n if (feature2.type === \"Feature\" && feature2.geometry === null) {\n return false;\n }\n\n const poly1Bbox = calcBbox(feature1);\n const poly2Bbox = calcBbox(feature2);\n if (!doBBoxOverlap(poly1Bbox, poly2Bbox)) {\n return false;\n }\n\n const coords = getGeom(feature2).coordinates;\n for (const ring of coords) {\n for (const coord of ring) {\n if (!booleanPointInPolygon(coord, feature1)) {\n return false;\n }\n }\n }\n return true;\n}\n\nfunction doBBoxOverlap(bbox1: BBox, bbox2: BBox) {\n if (bbox1[0] > bbox2[0]) {\n return false;\n }\n if (bbox1[2] < bbox2[2]) {\n return false;\n }\n if (bbox1[1] > bbox2[1]) {\n return false;\n }\n if (bbox1[3] < bbox2[3]) {\n return false;\n }\n return true;\n}\n\n/**\n * compareCoords\n *\n * @private\n * @param {Position} pair1 point [x,y]\n * @param {Position} pair2 point [x,y]\n * @returns {boolean} true/false if coord pairs match\n */\nfunction compareCoords(pair1: number[], pair2: number[]) {\n return pair1[0] === pair2[0] && pair1[1] === pair2[1];\n}\n\nfunction getMidpoint(pair1: number[], pair2: number[]) {\n return [(pair1[0] + pair2[0]) / 2, (pair1[1] + pair2[1]) / 2];\n}\n\nexport {\n booleanContains,\n isPolygonInMultiPolygon,\n isPointInMultiPoint,\n isMultiPointInMultiPoint,\n isMultiPointOnLine,\n isMultiPointInPoly,\n isLineOnLine,\n isLineInPoly,\n isPolyInPoly,\n doBBoxOverlap,\n compareCoords,\n getMidpoint,\n};\n\nexport default booleanContains;\n"]}
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/turf/turf/packages/turf-boolean-contains/dist/cjs/index.cjs","../../index.ts"],"names":[],"mappings":"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","file":"/home/runner/work/turf/turf/packages/turf-boolean-contains/dist/cjs/index.cjs","sourcesContent":[null,"import {\n BBox,\n Feature,\n Geometry,\n LineString,\n MultiPoint,\n MultiPolygon,\n Point,\n Polygon,\n} from \"geojson\";\nimport { bbox as calcBbox } from \"@turf/bbox\";\nimport { booleanPointInPolygon } from \"@turf/boolean-point-in-polygon\";\nimport { booleanPointOnLine as isPointOnLine } from \"@turf/boolean-point-on-line\";\nimport { getGeom } from \"@turf/invariant\";\n\n/**\n * Boolean-contains returns True if the second geometry is completely contained by the first geometry.\n * The interiors of both geometries must intersect and, the interior and boundary of the secondary (geometry b)\n * must not intersect the exterior of the primary (geometry a).\n * Boolean-contains returns the exact opposite result of the `@turf/boolean-within`.\n *\n * @function\n * @param {Geometry|Feature<any>} feature1 GeoJSON Feature or Geometry\n * @param {Geometry|Feature<any>} feature2 GeoJSON Feature or Geometry\n * @returns {boolean} true/false\n * @example\n * var line = turf.lineString([[1, 1], [1, 2], [1, 3], [1, 4]]);\n * var point = turf.point([1, 2]);\n *\n * turf.booleanContains(line, point);\n * //=true\n */\nfunction booleanContains(\n feature1: Feature<any> | Geometry,\n feature2: Feature<any> | Geometry\n) {\n const geom1 = getGeom(feature1);\n const geom2 = getGeom(feature2);\n const type1 = geom1.type;\n const type2 = geom2.type;\n const coords1 = geom1.coordinates;\n const coords2 = geom2.coordinates;\n\n switch (type1) {\n case \"Point\":\n switch (type2) {\n case \"Point\":\n return compareCoords(coords1, coords2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n case \"MultiPoint\":\n switch (type2) {\n case \"Point\":\n return isPointInMultiPoint(geom1, geom2);\n case \"MultiPoint\":\n return isMultiPointInMultiPoint(geom1, geom2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n case \"LineString\":\n switch (type2) {\n case \"Point\":\n return isPointOnLine(geom2, geom1, { ignoreEndVertices: true });\n case \"LineString\":\n return isLineOnLine(geom1, geom2);\n case \"MultiPoint\":\n return isMultiPointOnLine(geom1, geom2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n case \"Polygon\":\n switch (type2) {\n case \"Point\":\n return booleanPointInPolygon(geom2, geom1, { ignoreBoundary: true });\n case \"LineString\":\n return isLineInPoly(geom1, geom2);\n case \"Polygon\":\n return isPolyInPoly(geom1, geom2);\n case \"MultiPoint\":\n return isMultiPointInPoly(geom1, geom2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n case \"MultiPolygon\":\n switch (type2) {\n case \"Polygon\":\n return isPolygonInMultiPolygon(geom1, geom2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n default:\n throw new Error(\"feature1 \" + type1 + \" geometry not supported\");\n }\n}\n\nfunction isPolygonInMultiPolygon(multiPolygon: MultiPolygon, polygon: Polygon) {\n return multiPolygon.coordinates.some((coords) =>\n isPolyInPoly({ type: \"Polygon\", coordinates: coords }, polygon)\n );\n}\n\nfunction isPointInMultiPoint(multiPoint: MultiPoint, pt: Point) {\n let i;\n let output = false;\n for (i = 0; i < multiPoint.coordinates.length; i++) {\n if (compareCoords(multiPoint.coordinates[i], pt.coordinates)) {\n output = true;\n break;\n }\n }\n return output;\n}\n\nfunction isMultiPointInMultiPoint(\n multiPoint1: MultiPoint,\n multiPoint2: MultiPoint\n) {\n for (const coord2 of multiPoint2.coordinates) {\n let matchFound = false;\n for (const coord1 of multiPoint1.coordinates) {\n if (compareCoords(coord2, coord1)) {\n matchFound = true;\n break;\n }\n }\n if (!matchFound) {\n return false;\n }\n }\n return true;\n}\n\nfunction isMultiPointOnLine(lineString: LineString, multiPoint: MultiPoint) {\n let haveFoundInteriorPoint = false;\n for (const coord of multiPoint.coordinates) {\n if (isPointOnLine(coord, lineString, { ignoreEndVertices: true })) {\n haveFoundInteriorPoint = true;\n }\n if (!isPointOnLine(coord, lineString)) {\n return false;\n }\n }\n if (haveFoundInteriorPoint) {\n return true;\n }\n return false;\n}\n\nfunction isMultiPointInPoly(polygon: Polygon, multiPoint: MultiPoint) {\n for (const coord of multiPoint.coordinates) {\n if (!booleanPointInPolygon(coord, polygon, { ignoreBoundary: true })) {\n return false;\n }\n }\n return true;\n}\n\nfunction isLineOnLine(lineString1: LineString, lineString2: LineString) {\n let haveFoundInteriorPoint = false;\n for (const coords of lineString2.coordinates) {\n if (\n isPointOnLine({ type: \"Point\", coordinates: coords }, lineString1, {\n ignoreEndVertices: true,\n })\n ) {\n haveFoundInteriorPoint = true;\n }\n if (\n !isPointOnLine({ type: \"Point\", coordinates: coords }, lineString1, {\n ignoreEndVertices: false,\n })\n ) {\n return false;\n }\n }\n return haveFoundInteriorPoint;\n}\n\nfunction isLineInPoly(polygon: Polygon, linestring: LineString) {\n let output = false;\n let i = 0;\n\n const polyBbox = calcBbox(polygon);\n const lineBbox = calcBbox(linestring);\n if (!doBBoxOverlap(polyBbox, lineBbox)) {\n return false;\n }\n for (i; i < linestring.coordinates.length - 1; i++) {\n const midPoint = getMidpoint(\n linestring.coordinates[i],\n linestring.coordinates[i + 1]\n );\n if (\n booleanPointInPolygon({ type: \"Point\", coordinates: midPoint }, polygon, {\n ignoreBoundary: true,\n })\n ) {\n output = true;\n break;\n }\n }\n return output;\n}\n\n/**\n * Is Polygon2 in Polygon1\n * Only takes into account outer rings\n *\n * @private\n * @param {Geometry|Feature<Polygon>} feature1 Polygon1\n * @param {Geometry|Feature<Polygon>} feature2 Polygon2\n * @returns {boolean} true/false\n */\nfunction isPolyInPoly(\n feature1: Feature<Polygon> | Polygon,\n feature2: Feature<Polygon> | Polygon\n) {\n // Handle Nulls\n if (feature1.type === \"Feature\" && feature1.geometry === null) {\n return false;\n }\n if (feature2.type === \"Feature\" && feature2.geometry === null) {\n return false;\n }\n\n const poly1Bbox = calcBbox(feature1);\n const poly2Bbox = calcBbox(feature2);\n if (!doBBoxOverlap(poly1Bbox, poly2Bbox)) {\n return false;\n }\n\n const coords = getGeom(feature2).coordinates;\n for (const ring of coords) {\n for (const coord of ring) {\n if (!booleanPointInPolygon(coord, feature1)) {\n return false;\n }\n }\n }\n return true;\n}\n\nfunction doBBoxOverlap(bbox1: BBox, bbox2: BBox) {\n if (bbox1[0] > bbox2[0]) {\n return false;\n }\n if (bbox1[2] < bbox2[2]) {\n return false;\n }\n if (bbox1[1] > bbox2[1]) {\n return false;\n }\n if (bbox1[3] < bbox2[3]) {\n return false;\n }\n return true;\n}\n\n/**\n * compareCoords\n *\n * @private\n * @param {Position} pair1 point [x,y]\n * @param {Position} pair2 point [x,y]\n * @returns {boolean} true/false if coord pairs match\n */\nfunction compareCoords(pair1: number[], pair2: number[]) {\n return pair1[0] === pair2[0] && pair1[1] === pair2[1];\n}\n\nfunction getMidpoint(pair1: number[], pair2: number[]) {\n return [(pair1[0] + pair2[0]) / 2, (pair1[1] + pair2[1]) / 2];\n}\n\nexport {\n booleanContains,\n isPolygonInMultiPolygon,\n isPointInMultiPoint,\n isMultiPointInMultiPoint,\n isMultiPointOnLine,\n isMultiPointInPoly,\n isLineOnLine,\n isLineInPoly,\n isPolyInPoly,\n doBBoxOverlap,\n compareCoords,\n getMidpoint,\n};\n\nexport default booleanContains;\n"]}
|
|
@@ -6,7 +6,7 @@ import { Feature, Geometry, MultiPolygon, Polygon, MultiPoint, Point, LineString
|
|
|
6
6
|
* must not intersect the exterior of the primary (geometry a).
|
|
7
7
|
* Boolean-contains returns the exact opposite result of the `@turf/boolean-within`.
|
|
8
8
|
*
|
|
9
|
-
* @
|
|
9
|
+
* @function
|
|
10
10
|
* @param {Geometry|Feature<any>} feature1 GeoJSON Feature or Geometry
|
|
11
11
|
* @param {Geometry|Feature<any>} feature2 GeoJSON Feature or Geometry
|
|
12
12
|
* @returns {boolean} true/false
|
|
@@ -6,7 +6,7 @@ import { Feature, Geometry, MultiPolygon, Polygon, MultiPoint, Point, LineString
|
|
|
6
6
|
* must not intersect the exterior of the primary (geometry a).
|
|
7
7
|
* Boolean-contains returns the exact opposite result of the `@turf/boolean-within`.
|
|
8
8
|
*
|
|
9
|
-
* @
|
|
9
|
+
* @function
|
|
10
10
|
* @param {Geometry|Feature<any>} feature1 GeoJSON Feature or Geometry
|
|
11
11
|
* @param {Geometry|Feature<any>} feature2 GeoJSON Feature or Geometry
|
|
12
12
|
* @returns {boolean} true/false
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../index.ts"],"sourcesContent":["import {\n BBox,\n Feature,\n Geometry,\n LineString,\n MultiPoint,\n MultiPolygon,\n Point,\n Polygon,\n} from \"geojson\";\nimport { bbox as calcBbox } from \"@turf/bbox\";\nimport { booleanPointInPolygon } from \"@turf/boolean-point-in-polygon\";\nimport { booleanPointOnLine as isPointOnLine } from \"@turf/boolean-point-on-line\";\nimport { getGeom } from \"@turf/invariant\";\n\n/**\n * Boolean-contains returns True if the second geometry is completely contained by the first geometry.\n * The interiors of both geometries must intersect and, the interior and boundary of the secondary (geometry b)\n * must not intersect the exterior of the primary (geometry a).\n * Boolean-contains returns the exact opposite result of the `@turf/boolean-within`.\n *\n * @name booleanContains\n * @param {Geometry|Feature<any>} feature1 GeoJSON Feature or Geometry\n * @param {Geometry|Feature<any>} feature2 GeoJSON Feature or Geometry\n * @returns {boolean} true/false\n * @example\n * var line = turf.lineString([[1, 1], [1, 2], [1, 3], [1, 4]]);\n * var point = turf.point([1, 2]);\n *\n * turf.booleanContains(line, point);\n * //=true\n */\nfunction booleanContains(\n feature1: Feature<any> | Geometry,\n feature2: Feature<any> | Geometry\n) {\n const geom1 = getGeom(feature1);\n const geom2 = getGeom(feature2);\n const type1 = geom1.type;\n const type2 = geom2.type;\n const coords1 = geom1.coordinates;\n const coords2 = geom2.coordinates;\n\n switch (type1) {\n case \"Point\":\n switch (type2) {\n case \"Point\":\n return compareCoords(coords1, coords2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n case \"MultiPoint\":\n switch (type2) {\n case \"Point\":\n return isPointInMultiPoint(geom1, geom2);\n case \"MultiPoint\":\n return isMultiPointInMultiPoint(geom1, geom2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n case \"LineString\":\n switch (type2) {\n case \"Point\":\n return isPointOnLine(geom2, geom1, { ignoreEndVertices: true });\n case \"LineString\":\n return isLineOnLine(geom1, geom2);\n case \"MultiPoint\":\n return isMultiPointOnLine(geom1, geom2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n case \"Polygon\":\n switch (type2) {\n case \"Point\":\n return booleanPointInPolygon(geom2, geom1, { ignoreBoundary: true });\n case \"LineString\":\n return isLineInPoly(geom1, geom2);\n case \"Polygon\":\n return isPolyInPoly(geom1, geom2);\n case \"MultiPoint\":\n return isMultiPointInPoly(geom1, geom2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n case \"MultiPolygon\":\n switch (type2) {\n case \"Polygon\":\n return isPolygonInMultiPolygon(geom1, geom2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n default:\n throw new Error(\"feature1 \" + type1 + \" geometry not supported\");\n }\n}\n\nfunction isPolygonInMultiPolygon(multiPolygon: MultiPolygon, polygon: Polygon) {\n return multiPolygon.coordinates.some((coords) =>\n isPolyInPoly({ type: \"Polygon\", coordinates: coords }, polygon)\n );\n}\n\nfunction isPointInMultiPoint(multiPoint: MultiPoint, pt: Point) {\n let i;\n let output = false;\n for (i = 0; i < multiPoint.coordinates.length; i++) {\n if (compareCoords(multiPoint.coordinates[i], pt.coordinates)) {\n output = true;\n break;\n }\n }\n return output;\n}\n\nfunction isMultiPointInMultiPoint(\n multiPoint1: MultiPoint,\n multiPoint2: MultiPoint\n) {\n for (const coord2 of multiPoint2.coordinates) {\n let matchFound = false;\n for (const coord1 of multiPoint1.coordinates) {\n if (compareCoords(coord2, coord1)) {\n matchFound = true;\n break;\n }\n }\n if (!matchFound) {\n return false;\n }\n }\n return true;\n}\n\nfunction isMultiPointOnLine(lineString: LineString, multiPoint: MultiPoint) {\n let haveFoundInteriorPoint = false;\n for (const coord of multiPoint.coordinates) {\n if (isPointOnLine(coord, lineString, { ignoreEndVertices: true })) {\n haveFoundInteriorPoint = true;\n }\n if (!isPointOnLine(coord, lineString)) {\n return false;\n }\n }\n if (haveFoundInteriorPoint) {\n return true;\n }\n return false;\n}\n\nfunction isMultiPointInPoly(polygon: Polygon, multiPoint: MultiPoint) {\n for (const coord of multiPoint.coordinates) {\n if (!booleanPointInPolygon(coord, polygon, { ignoreBoundary: true })) {\n return false;\n }\n }\n return true;\n}\n\nfunction isLineOnLine(lineString1: LineString, lineString2: LineString) {\n let haveFoundInteriorPoint = false;\n for (const coords of lineString2.coordinates) {\n if (\n isPointOnLine({ type: \"Point\", coordinates: coords }, lineString1, {\n ignoreEndVertices: true,\n })\n ) {\n haveFoundInteriorPoint = true;\n }\n if (\n !isPointOnLine({ type: \"Point\", coordinates: coords }, lineString1, {\n ignoreEndVertices: false,\n })\n ) {\n return false;\n }\n }\n return haveFoundInteriorPoint;\n}\n\nfunction isLineInPoly(polygon: Polygon, linestring: LineString) {\n let output = false;\n let i = 0;\n\n const polyBbox = calcBbox(polygon);\n const lineBbox = calcBbox(linestring);\n if (!doBBoxOverlap(polyBbox, lineBbox)) {\n return false;\n }\n for (i; i < linestring.coordinates.length - 1; i++) {\n const midPoint = getMidpoint(\n linestring.coordinates[i],\n linestring.coordinates[i + 1]\n );\n if (\n booleanPointInPolygon({ type: \"Point\", coordinates: midPoint }, polygon, {\n ignoreBoundary: true,\n })\n ) {\n output = true;\n break;\n }\n }\n return output;\n}\n\n/**\n * Is Polygon2 in Polygon1\n * Only takes into account outer rings\n *\n * @private\n * @param {Geometry|Feature<Polygon>} feature1 Polygon1\n * @param {Geometry|Feature<Polygon>} feature2 Polygon2\n * @returns {boolean} true/false\n */\nfunction isPolyInPoly(\n feature1: Feature<Polygon> | Polygon,\n feature2: Feature<Polygon> | Polygon\n) {\n // Handle Nulls\n if (feature1.type === \"Feature\" && feature1.geometry === null) {\n return false;\n }\n if (feature2.type === \"Feature\" && feature2.geometry === null) {\n return false;\n }\n\n const poly1Bbox = calcBbox(feature1);\n const poly2Bbox = calcBbox(feature2);\n if (!doBBoxOverlap(poly1Bbox, poly2Bbox)) {\n return false;\n }\n\n const coords = getGeom(feature2).coordinates;\n for (const ring of coords) {\n for (const coord of ring) {\n if (!booleanPointInPolygon(coord, feature1)) {\n return false;\n }\n }\n }\n return true;\n}\n\nfunction doBBoxOverlap(bbox1: BBox, bbox2: BBox) {\n if (bbox1[0] > bbox2[0]) {\n return false;\n }\n if (bbox1[2] < bbox2[2]) {\n return false;\n }\n if (bbox1[1] > bbox2[1]) {\n return false;\n }\n if (bbox1[3] < bbox2[3]) {\n return false;\n }\n return true;\n}\n\n/**\n * compareCoords\n *\n * @private\n * @param {Position} pair1 point [x,y]\n * @param {Position} pair2 point [x,y]\n * @returns {boolean} true/false if coord pairs match\n */\nfunction compareCoords(pair1: number[], pair2: number[]) {\n return pair1[0] === pair2[0] && pair1[1] === pair2[1];\n}\n\nfunction getMidpoint(pair1: number[], pair2: number[]) {\n return [(pair1[0] + pair2[0]) / 2, (pair1[1] + pair2[1]) / 2];\n}\n\nexport {\n booleanContains,\n isPolygonInMultiPolygon,\n isPointInMultiPoint,\n isMultiPointInMultiPoint,\n isMultiPointOnLine,\n isMultiPointInPoly,\n isLineOnLine,\n isLineInPoly,\n isPolyInPoly,\n doBBoxOverlap,\n compareCoords,\n getMidpoint,\n};\n\nexport default booleanContains;\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../index.ts"],"sourcesContent":["import {\n BBox,\n Feature,\n Geometry,\n LineString,\n MultiPoint,\n MultiPolygon,\n Point,\n Polygon,\n} from \"geojson\";\nimport { bbox as calcBbox } from \"@turf/bbox\";\nimport { booleanPointInPolygon } from \"@turf/boolean-point-in-polygon\";\nimport { booleanPointOnLine as isPointOnLine } from \"@turf/boolean-point-on-line\";\nimport { getGeom } from \"@turf/invariant\";\n\n/**\n * Boolean-contains returns True if the second geometry is completely contained by the first geometry.\n * The interiors of both geometries must intersect and, the interior and boundary of the secondary (geometry b)\n * must not intersect the exterior of the primary (geometry a).\n * Boolean-contains returns the exact opposite result of the `@turf/boolean-within`.\n *\n * @function\n * @param {Geometry|Feature<any>} feature1 GeoJSON Feature or Geometry\n * @param {Geometry|Feature<any>} feature2 GeoJSON Feature or Geometry\n * @returns {boolean} true/false\n * @example\n * var line = turf.lineString([[1, 1], [1, 2], [1, 3], [1, 4]]);\n * var point = turf.point([1, 2]);\n *\n * turf.booleanContains(line, point);\n * //=true\n */\nfunction booleanContains(\n feature1: Feature<any> | Geometry,\n feature2: Feature<any> | Geometry\n) {\n const geom1 = getGeom(feature1);\n const geom2 = getGeom(feature2);\n const type1 = geom1.type;\n const type2 = geom2.type;\n const coords1 = geom1.coordinates;\n const coords2 = geom2.coordinates;\n\n switch (type1) {\n case \"Point\":\n switch (type2) {\n case \"Point\":\n return compareCoords(coords1, coords2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n case \"MultiPoint\":\n switch (type2) {\n case \"Point\":\n return isPointInMultiPoint(geom1, geom2);\n case \"MultiPoint\":\n return isMultiPointInMultiPoint(geom1, geom2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n case \"LineString\":\n switch (type2) {\n case \"Point\":\n return isPointOnLine(geom2, geom1, { ignoreEndVertices: true });\n case \"LineString\":\n return isLineOnLine(geom1, geom2);\n case \"MultiPoint\":\n return isMultiPointOnLine(geom1, geom2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n case \"Polygon\":\n switch (type2) {\n case \"Point\":\n return booleanPointInPolygon(geom2, geom1, { ignoreBoundary: true });\n case \"LineString\":\n return isLineInPoly(geom1, geom2);\n case \"Polygon\":\n return isPolyInPoly(geom1, geom2);\n case \"MultiPoint\":\n return isMultiPointInPoly(geom1, geom2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n case \"MultiPolygon\":\n switch (type2) {\n case \"Polygon\":\n return isPolygonInMultiPolygon(geom1, geom2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n default:\n throw new Error(\"feature1 \" + type1 + \" geometry not supported\");\n }\n}\n\nfunction isPolygonInMultiPolygon(multiPolygon: MultiPolygon, polygon: Polygon) {\n return multiPolygon.coordinates.some((coords) =>\n isPolyInPoly({ type: \"Polygon\", coordinates: coords }, polygon)\n );\n}\n\nfunction isPointInMultiPoint(multiPoint: MultiPoint, pt: Point) {\n let i;\n let output = false;\n for (i = 0; i < multiPoint.coordinates.length; i++) {\n if (compareCoords(multiPoint.coordinates[i], pt.coordinates)) {\n output = true;\n break;\n }\n }\n return output;\n}\n\nfunction isMultiPointInMultiPoint(\n multiPoint1: MultiPoint,\n multiPoint2: MultiPoint\n) {\n for (const coord2 of multiPoint2.coordinates) {\n let matchFound = false;\n for (const coord1 of multiPoint1.coordinates) {\n if (compareCoords(coord2, coord1)) {\n matchFound = true;\n break;\n }\n }\n if (!matchFound) {\n return false;\n }\n }\n return true;\n}\n\nfunction isMultiPointOnLine(lineString: LineString, multiPoint: MultiPoint) {\n let haveFoundInteriorPoint = false;\n for (const coord of multiPoint.coordinates) {\n if (isPointOnLine(coord, lineString, { ignoreEndVertices: true })) {\n haveFoundInteriorPoint = true;\n }\n if (!isPointOnLine(coord, lineString)) {\n return false;\n }\n }\n if (haveFoundInteriorPoint) {\n return true;\n }\n return false;\n}\n\nfunction isMultiPointInPoly(polygon: Polygon, multiPoint: MultiPoint) {\n for (const coord of multiPoint.coordinates) {\n if (!booleanPointInPolygon(coord, polygon, { ignoreBoundary: true })) {\n return false;\n }\n }\n return true;\n}\n\nfunction isLineOnLine(lineString1: LineString, lineString2: LineString) {\n let haveFoundInteriorPoint = false;\n for (const coords of lineString2.coordinates) {\n if (\n isPointOnLine({ type: \"Point\", coordinates: coords }, lineString1, {\n ignoreEndVertices: true,\n })\n ) {\n haveFoundInteriorPoint = true;\n }\n if (\n !isPointOnLine({ type: \"Point\", coordinates: coords }, lineString1, {\n ignoreEndVertices: false,\n })\n ) {\n return false;\n }\n }\n return haveFoundInteriorPoint;\n}\n\nfunction isLineInPoly(polygon: Polygon, linestring: LineString) {\n let output = false;\n let i = 0;\n\n const polyBbox = calcBbox(polygon);\n const lineBbox = calcBbox(linestring);\n if (!doBBoxOverlap(polyBbox, lineBbox)) {\n return false;\n }\n for (i; i < linestring.coordinates.length - 1; i++) {\n const midPoint = getMidpoint(\n linestring.coordinates[i],\n linestring.coordinates[i + 1]\n );\n if (\n booleanPointInPolygon({ type: \"Point\", coordinates: midPoint }, polygon, {\n ignoreBoundary: true,\n })\n ) {\n output = true;\n break;\n }\n }\n return output;\n}\n\n/**\n * Is Polygon2 in Polygon1\n * Only takes into account outer rings\n *\n * @private\n * @param {Geometry|Feature<Polygon>} feature1 Polygon1\n * @param {Geometry|Feature<Polygon>} feature2 Polygon2\n * @returns {boolean} true/false\n */\nfunction isPolyInPoly(\n feature1: Feature<Polygon> | Polygon,\n feature2: Feature<Polygon> | Polygon\n) {\n // Handle Nulls\n if (feature1.type === \"Feature\" && feature1.geometry === null) {\n return false;\n }\n if (feature2.type === \"Feature\" && feature2.geometry === null) {\n return false;\n }\n\n const poly1Bbox = calcBbox(feature1);\n const poly2Bbox = calcBbox(feature2);\n if (!doBBoxOverlap(poly1Bbox, poly2Bbox)) {\n return false;\n }\n\n const coords = getGeom(feature2).coordinates;\n for (const ring of coords) {\n for (const coord of ring) {\n if (!booleanPointInPolygon(coord, feature1)) {\n return false;\n }\n }\n }\n return true;\n}\n\nfunction doBBoxOverlap(bbox1: BBox, bbox2: BBox) {\n if (bbox1[0] > bbox2[0]) {\n return false;\n }\n if (bbox1[2] < bbox2[2]) {\n return false;\n }\n if (bbox1[1] > bbox2[1]) {\n return false;\n }\n if (bbox1[3] < bbox2[3]) {\n return false;\n }\n return true;\n}\n\n/**\n * compareCoords\n *\n * @private\n * @param {Position} pair1 point [x,y]\n * @param {Position} pair2 point [x,y]\n * @returns {boolean} true/false if coord pairs match\n */\nfunction compareCoords(pair1: number[], pair2: number[]) {\n return pair1[0] === pair2[0] && pair1[1] === pair2[1];\n}\n\nfunction getMidpoint(pair1: number[], pair2: number[]) {\n return [(pair1[0] + pair2[0]) / 2, (pair1[1] + pair2[1]) / 2];\n}\n\nexport {\n booleanContains,\n isPolygonInMultiPolygon,\n isPointInMultiPoint,\n isMultiPointInMultiPoint,\n isMultiPointOnLine,\n isMultiPointInPoly,\n isLineOnLine,\n isLineInPoly,\n isPolyInPoly,\n doBBoxOverlap,\n compareCoords,\n getMidpoint,\n};\n\nexport default booleanContains;\n"],"mappings":"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","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@turf/boolean-contains",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.2.0",
|
|
4
4
|
"description": "turf boolean-contains module",
|
|
5
5
|
"author": "Turf Authors",
|
|
6
6
|
"contributors": [
|
|
@@ -56,26 +56,26 @@
|
|
|
56
56
|
},
|
|
57
57
|
"devDependencies": {
|
|
58
58
|
"@types/benchmark": "^2.1.5",
|
|
59
|
-
"@types/tape": "^4.
|
|
59
|
+
"@types/tape": "^4.13.4",
|
|
60
60
|
"benchmark": "^2.1.4",
|
|
61
61
|
"boolean-jsts": "*",
|
|
62
62
|
"boolean-shapely": "*",
|
|
63
63
|
"glob": "^10.3.10",
|
|
64
64
|
"load-json-file": "^7.0.1",
|
|
65
65
|
"npm-run-all": "^4.1.5",
|
|
66
|
-
"tape": "^5.
|
|
67
|
-
"tsup": "^8.
|
|
68
|
-
"tsx": "^4.
|
|
69
|
-
"typescript": "^5.
|
|
66
|
+
"tape": "^5.9.0",
|
|
67
|
+
"tsup": "^8.3.5",
|
|
68
|
+
"tsx": "^4.19.2",
|
|
69
|
+
"typescript": "^5.5.4"
|
|
70
70
|
},
|
|
71
71
|
"dependencies": {
|
|
72
|
-
"@turf/bbox": "^7.
|
|
73
|
-
"@turf/boolean-point-in-polygon": "^7.
|
|
74
|
-
"@turf/boolean-point-on-line": "^7.
|
|
75
|
-
"@turf/helpers": "^7.
|
|
76
|
-
"@turf/invariant": "^7.
|
|
72
|
+
"@turf/bbox": "^7.2.0",
|
|
73
|
+
"@turf/boolean-point-in-polygon": "^7.2.0",
|
|
74
|
+
"@turf/boolean-point-on-line": "^7.2.0",
|
|
75
|
+
"@turf/helpers": "^7.2.0",
|
|
76
|
+
"@turf/invariant": "^7.2.0",
|
|
77
77
|
"@types/geojson": "^7946.0.10",
|
|
78
|
-
"tslib": "^2.
|
|
78
|
+
"tslib": "^2.8.1"
|
|
79
79
|
},
|
|
80
|
-
"gitHead": "
|
|
80
|
+
"gitHead": "7b0f0374c4668cd569f8904c71e2ae7d941be867"
|
|
81
81
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../index.ts"],"names":[],"mappings":"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","sourcesContent":["import { Feature, Geometry, Polygon, LineString, MultiPoint } from \"geojson\";\nimport { lineIntersect } from \"@turf/line-intersect\";\nimport { polygonToLine } from \"@turf/polygon-to-line\";\nimport { booleanPointInPolygon } from \"@turf/boolean-point-in-polygon\";\nimport { getGeom } from \"@turf/invariant\";\nimport { point } from \"@turf/helpers\";\n\n/**\n * Boolean-Crosses returns True if the intersection results in a geometry whose dimension is one less than\n * the maximum dimension of the two source geometries and the intersection set is interior to\n * both source geometries.\n *\n * Boolean-Crosses returns t (TRUE) for only multipoint/polygon, multipoint/linestring, linestring/linestring, linestring/polygon, and linestring/multipolygon comparisons.\n * Other comparisons are not supported as they are outside the OpenGIS Simple Features spec and may give unexpected results.\n *\n * @name booleanCrosses\n * @param {Geometry|Feature<any>} feature1 GeoJSON Feature or Geometry\n * @param {Geometry|Feature<any>} feature2 GeoJSON Feature or Geometry\n * @returns {boolean} true/false\n * @example\n * var line1 = turf.lineString([[-2, 2], [4, 2]]);\n * var line2 = turf.lineString([[1, 1], [1, 2], [1, 3], [1, 4]]);\n *\n * var cross = turf.booleanCrosses(line1, line2);\n * //=true\n */\nfunction booleanCrosses(\n feature1: Feature<any> | Geometry,\n feature2: Feature<any> | Geometry\n): boolean {\n var geom1 = getGeom(feature1);\n var geom2 = getGeom(feature2);\n var type1 = geom1.type;\n var type2 = geom2.type;\n\n switch (type1) {\n case \"MultiPoint\":\n switch (type2) {\n case \"LineString\":\n return doMultiPointAndLineStringCross(geom1, geom2);\n case \"Polygon\":\n return doesMultiPointCrossPoly(geom1, geom2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n case \"LineString\":\n switch (type2) {\n case \"MultiPoint\": // An inverse operation\n return doMultiPointAndLineStringCross(geom2, geom1);\n case \"LineString\":\n return doLineStringsCross(geom1, geom2);\n case \"Polygon\":\n return doLineStringAndPolygonCross(geom1, geom2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n case \"Polygon\":\n switch (type2) {\n case \"MultiPoint\": // An inverse operation\n return doesMultiPointCrossPoly(geom2, geom1);\n case \"LineString\": // An inverse operation\n return doLineStringAndPolygonCross(geom2, geom1);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n default:\n throw new Error(\"feature1 \" + type1 + \" geometry not supported\");\n }\n}\n\nfunction doMultiPointAndLineStringCross(\n multiPoint: MultiPoint,\n lineString: LineString\n) {\n var foundIntPoint = false;\n var foundExtPoint = false;\n var pointLength = multiPoint.coordinates.length;\n var i = 0;\n while (i < pointLength && !foundIntPoint && !foundExtPoint) {\n for (var i2 = 0; i2 < lineString.coordinates.length - 1; i2++) {\n var incEndVertices = true;\n if (i2 === 0 || i2 === lineString.coordinates.length - 2) {\n incEndVertices = false;\n }\n if (\n isPointOnLineSegment(\n lineString.coordinates[i2],\n lineString.coordinates[i2 + 1],\n multiPoint.coordinates[i],\n incEndVertices\n )\n ) {\n foundIntPoint = true;\n } else {\n foundExtPoint = true;\n }\n }\n i++;\n }\n return foundIntPoint && foundExtPoint;\n}\n\nfunction doLineStringsCross(lineString1: LineString, lineString2: LineString) {\n var doLinesIntersect = lineIntersect(lineString1, lineString2);\n if (doLinesIntersect.features.length > 0) {\n for (var i = 0; i < lineString1.coordinates.length - 1; i++) {\n for (var i2 = 0; i2 < lineString2.coordinates.length - 1; i2++) {\n var incEndVertices = true;\n if (i2 === 0 || i2 === lineString2.coordinates.length - 2) {\n incEndVertices = false;\n }\n if (\n isPointOnLineSegment(\n lineString1.coordinates[i],\n lineString1.coordinates[i + 1],\n lineString2.coordinates[i2],\n incEndVertices\n )\n ) {\n return true;\n }\n }\n }\n }\n return false;\n}\n\nfunction doLineStringAndPolygonCross(lineString: LineString, polygon: Polygon) {\n const line: any = polygonToLine(polygon);\n const doLinesIntersect = lineIntersect(lineString, line);\n if (doLinesIntersect.features.length > 0) {\n return true;\n }\n return false;\n}\n\nfunction doesMultiPointCrossPoly(multiPoint: MultiPoint, polygon: Polygon) {\n var foundIntPoint = false;\n var foundExtPoint = false;\n var pointLength = multiPoint.coordinates.length;\n for (let i = 0; i < pointLength && (!foundIntPoint || !foundExtPoint); i++) {\n if (booleanPointInPolygon(point(multiPoint.coordinates[i]), polygon)) {\n foundIntPoint = true;\n } else {\n foundExtPoint = true;\n }\n }\n\n return foundExtPoint && foundIntPoint;\n}\n\n/**\n * Is a point on a line segment\n * Only takes into account outer rings\n * See http://stackoverflow.com/a/4833823/1979085\n *\n * @private\n * @param {number[]} lineSegmentStart coord pair of start of line\n * @param {number[]} lineSegmentEnd coord pair of end of line\n * @param {number[]} pt coord pair of point to check\n * @param {boolean} incEnd whether the point is allowed to fall on the line ends\n * @returns {boolean} true/false\n */\nfunction isPointOnLineSegment(\n lineSegmentStart: number[],\n lineSegmentEnd: number[],\n pt: number[],\n incEnd: boolean\n) {\n var dxc = pt[0] - lineSegmentStart[0];\n var dyc = pt[1] - lineSegmentStart[1];\n var dxl = lineSegmentEnd[0] - lineSegmentStart[0];\n var dyl = lineSegmentEnd[1] - lineSegmentStart[1];\n var cross = dxc * dyl - dyc * dxl;\n if (cross !== 0) {\n return false;\n }\n if (incEnd) {\n if (Math.abs(dxl) >= Math.abs(dyl)) {\n return dxl > 0\n ? lineSegmentStart[0] <= pt[0] && pt[0] <= lineSegmentEnd[0]\n : lineSegmentEnd[0] <= pt[0] && pt[0] <= lineSegmentStart[0];\n }\n return dyl > 0\n ? lineSegmentStart[1] <= pt[1] && pt[1] <= lineSegmentEnd[1]\n : lineSegmentEnd[1] <= pt[1] && pt[1] <= lineSegmentStart[1];\n } else {\n if (Math.abs(dxl) >= Math.abs(dyl)) {\n return dxl > 0\n ? lineSegmentStart[0] < pt[0] && pt[0] < lineSegmentEnd[0]\n : lineSegmentEnd[0] < pt[0] && pt[0] < lineSegmentStart[0];\n }\n return dyl > 0\n ? lineSegmentStart[1] < pt[1] && pt[1] < lineSegmentEnd[1]\n : lineSegmentEnd[1] < pt[1] && pt[1] < lineSegmentStart[1];\n }\n}\n\nexport { booleanCrosses };\nexport default booleanCrosses;\n"]}
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/turf/turf/packages/turf-boolean-crosses/dist/cjs/index.cjs","../../index.ts"],"names":[],"mappings":"AAAA;ACCA,qDAA8B;AAC9B,sDAA8B;AAC9B,uEAAsC;AACtC,4CAAwB;AACxB,wCAAsB;AAqBtB,SAAS,cAAA,CACP,QAAA,EACA,QAAA,EACS;AACT,EAAA,IAAI,MAAA,EAAQ,gCAAA,QAAgB,CAAA;AAC5B,EAAA,IAAI,MAAA,EAAQ,gCAAA,QAAgB,CAAA;AAC5B,EAAA,IAAI,MAAA,EAAQ,KAAA,CAAM,IAAA;AAClB,EAAA,IAAI,MAAA,EAAQ,KAAA,CAAM,IAAA;AAElB,EAAA,OAAA,CAAQ,KAAA,EAAO;AAAA,IACb,KAAK,YAAA;AACH,MAAA,OAAA,CAAQ,KAAA,EAAO;AAAA,QACb,KAAK,YAAA;AACH,UAAA,OAAO,8BAAA,CAA+B,KAAA,EAAO,KAAK,CAAA;AAAA,QACpD,KAAK,SAAA;AACH,UAAA,OAAO,uBAAA,CAAwB,KAAA,EAAO,KAAK,CAAA;AAAA,QAC7C,OAAA;AACE,UAAA,MAAM,IAAI,KAAA,CAAM,YAAA,EAAc,MAAA,EAAQ,yBAAyB,CAAA;AAAA,MACnE;AAAA,IACF,KAAK,YAAA;AACH,MAAA,OAAA,CAAQ,KAAA,EAAO;AAAA,QACb,KAAK,YAAA;AACH,UAAA,OAAO,8BAAA,CAA+B,KAAA,EAAO,KAAK,CAAA;AAAA,QACpD,KAAK,YAAA;AACH,UAAA,OAAO,kBAAA,CAAmB,KAAA,EAAO,KAAK,CAAA;AAAA,QACxC,KAAK,SAAA;AACH,UAAA,OAAO,2BAAA,CAA4B,KAAA,EAAO,KAAK,CAAA;AAAA,QACjD,OAAA;AACE,UAAA,MAAM,IAAI,KAAA,CAAM,YAAA,EAAc,MAAA,EAAQ,yBAAyB,CAAA;AAAA,MACnE;AAAA,IACF,KAAK,SAAA;AACH,MAAA,OAAA,CAAQ,KAAA,EAAO;AAAA,QACb,KAAK,YAAA;AACH,UAAA,OAAO,uBAAA,CAAwB,KAAA,EAAO,KAAK,CAAA;AAAA,QAC7C,KAAK,YAAA;AACH,UAAA,OAAO,2BAAA,CAA4B,KAAA,EAAO,KAAK,CAAA;AAAA,QACjD,OAAA;AACE,UAAA,MAAM,IAAI,KAAA,CAAM,YAAA,EAAc,MAAA,EAAQ,yBAAyB,CAAA;AAAA,MACnE;AAAA,IACF,OAAA;AACE,MAAA,MAAM,IAAI,KAAA,CAAM,YAAA,EAAc,MAAA,EAAQ,yBAAyB,CAAA;AAAA,EACnE;AACF;AAEA,SAAS,8BAAA,CACP,UAAA,EACA,UAAA,EACA;AACA,EAAA,IAAI,cAAA,EAAgB,KAAA;AACpB,EAAA,IAAI,cAAA,EAAgB,KAAA;AACpB,EAAA,IAAI,YAAA,EAAc,UAAA,CAAW,WAAA,CAAY,MAAA;AACzC,EAAA,IAAI,EAAA,EAAI,CAAA;AACR,EAAA,MAAA,CAAO,EAAA,EAAI,YAAA,GAAe,CAAC,cAAA,GAAiB,CAAC,aAAA,EAAe;AAC1D,IAAA,IAAA,CAAA,IAAS,GAAA,EAAK,CAAA,EAAG,GAAA,EAAK,UAAA,CAAW,WAAA,CAAY,OAAA,EAAS,CAAA,EAAG,EAAA,EAAA,EAAM;AAC7D,MAAA,IAAI,eAAA,EAAiB,IAAA;AACrB,MAAA,GAAA,CAAI,GAAA,IAAO,EAAA,GAAK,GAAA,IAAO,UAAA,CAAW,WAAA,CAAY,OAAA,EAAS,CAAA,EAAG;AACxD,QAAA,eAAA,EAAiB,KAAA;AAAA,MACnB;AACA,MAAA,GAAA,CACE,oBAAA;AAAA,QACE,UAAA,CAAW,WAAA,CAAY,EAAE,CAAA;AAAA,QACzB,UAAA,CAAW,WAAA,CAAY,GAAA,EAAK,CAAC,CAAA;AAAA,QAC7B,UAAA,CAAW,WAAA,CAAY,CAAC,CAAA;AAAA,QACxB;AAAA,MACF,CAAA,EACA;AACA,QAAA,cAAA,EAAgB,IAAA;AAAA,MAClB,EAAA,KAAO;AACL,QAAA,cAAA,EAAgB,IAAA;AAAA,MAClB;AAAA,IACF;AACA,IAAA,CAAA,EAAA;AAAA,EACF;AACA,EAAA,OAAO,cAAA,GAAiB,aAAA;AAC1B;AAEA,SAAS,kBAAA,CAAmB,WAAA,EAAyB,WAAA,EAAyB;AAC5E,EAAA,IAAI,iBAAA,EAAmB,0CAAA,WAAc,EAAa,WAAW,CAAA;AAC7D,EAAA,GAAA,CAAI,gBAAA,CAAiB,QAAA,CAAS,OAAA,EAAS,CAAA,EAAG;AACxC,IAAA,IAAA,CAAA,IAAS,EAAA,EAAI,CAAA,EAAG,EAAA,EAAI,WAAA,CAAY,WAAA,CAAY,OAAA,EAAS,CAAA,EAAG,CAAA,EAAA,EAAK;AAC3D,MAAA,IAAA,CAAA,IAAS,GAAA,EAAK,CAAA,EAAG,GAAA,EAAK,WAAA,CAAY,WAAA,CAAY,OAAA,EAAS,CAAA,EAAG,EAAA,EAAA,EAAM;AAC9D,QAAA,IAAI,eAAA,EAAiB,IAAA;AACrB,QAAA,GAAA,CAAI,GAAA,IAAO,EAAA,GAAK,GAAA,IAAO,WAAA,CAAY,WAAA,CAAY,OAAA,EAAS,CAAA,EAAG;AACzD,UAAA,eAAA,EAAiB,KAAA;AAAA,QACnB;AACA,QAAA,GAAA,CACE,oBAAA;AAAA,UACE,WAAA,CAAY,WAAA,CAAY,CAAC,CAAA;AAAA,UACzB,WAAA,CAAY,WAAA,CAAY,EAAA,EAAI,CAAC,CAAA;AAAA,UAC7B,WAAA,CAAY,WAAA,CAAY,EAAE,CAAA;AAAA,UAC1B;AAAA,QACF,CAAA,EACA;AACA,UAAA,OAAO,IAAA;AAAA,QACT;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACA,EAAA,OAAO,KAAA;AACT;AAEA,SAAS,2BAAA,CAA4B,UAAA,EAAwB,OAAA,EAAkB;AAC7E,EAAA,MAAM,KAAA,EAAY,0CAAA,OAAqB,CAAA;AACvC,EAAA,MAAM,iBAAA,EAAmB,0CAAA,UAAc,EAAY,IAAI,CAAA;AACvD,EAAA,GAAA,CAAI,gBAAA,CAAiB,QAAA,CAAS,OAAA,EAAS,CAAA,EAAG;AACxC,IAAA,OAAO,IAAA;AAAA,EACT;AACA,EAAA,OAAO,KAAA;AACT;AAEA,SAAS,uBAAA,CAAwB,UAAA,EAAwB,OAAA,EAAkB;AACzE,EAAA,IAAI,cAAA,EAAgB,KAAA;AACpB,EAAA,IAAI,cAAA,EAAgB,KAAA;AACpB,EAAA,IAAI,YAAA,EAAc,UAAA,CAAW,WAAA,CAAY,MAAA;AACzC,EAAA,IAAA,CAAA,IAAS,EAAA,EAAI,CAAA,EAAG,EAAA,EAAI,YAAA,GAAA,CAAgB,CAAC,cAAA,GAAiB,CAAC,aAAA,CAAA,EAAgB,CAAA,EAAA,EAAK;AAC1E,IAAA,GAAA,CAAI,0DAAA,4BAAsB,UAAM,CAAW,WAAA,CAAY,CAAC,CAAC,CAAA,EAAG,OAAO,CAAA,EAAG;AACpE,MAAA,cAAA,EAAgB,IAAA;AAAA,IAClB,EAAA,KAAO;AACL,MAAA,cAAA,EAAgB,IAAA;AAAA,IAClB;AAAA,EACF;AAEA,EAAA,OAAO,cAAA,GAAiB,aAAA;AAC1B;AAcA,SAAS,oBAAA,CACP,gBAAA,EACA,cAAA,EACA,EAAA,EACA,MAAA,EACA;AACA,EAAA,IAAI,IAAA,EAAM,EAAA,CAAG,CAAC,EAAA,EAAI,gBAAA,CAAiB,CAAC,CAAA;AACpC,EAAA,IAAI,IAAA,EAAM,EAAA,CAAG,CAAC,EAAA,EAAI,gBAAA,CAAiB,CAAC,CAAA;AACpC,EAAA,IAAI,IAAA,EAAM,cAAA,CAAe,CAAC,EAAA,EAAI,gBAAA,CAAiB,CAAC,CAAA;AAChD,EAAA,IAAI,IAAA,EAAM,cAAA,CAAe,CAAC,EAAA,EAAI,gBAAA,CAAiB,CAAC,CAAA;AAChD,EAAA,IAAI,MAAA,EAAQ,IAAA,EAAM,IAAA,EAAM,IAAA,EAAM,GAAA;AAC9B,EAAA,GAAA,CAAI,MAAA,IAAU,CAAA,EAAG;AACf,IAAA,OAAO,KAAA;AAAA,EACT;AACA,EAAA,GAAA,CAAI,MAAA,EAAQ;AACV,IAAA,GAAA,CAAI,IAAA,CAAK,GAAA,CAAI,GAAG,EAAA,GAAK,IAAA,CAAK,GAAA,CAAI,GAAG,CAAA,EAAG;AAClC,MAAA,OAAO,IAAA,EAAM,EAAA,EACT,gBAAA,CAAiB,CAAC,EAAA,GAAK,EAAA,CAAG,CAAC,EAAA,GAAK,EAAA,CAAG,CAAC,EAAA,GAAK,cAAA,CAAe,CAAC,EAAA,EACzD,cAAA,CAAe,CAAC,EAAA,GAAK,EAAA,CAAG,CAAC,EAAA,GAAK,EAAA,CAAG,CAAC,EAAA,GAAK,gBAAA,CAAiB,CAAC,CAAA;AAAA,IAC/D;AACA,IAAA,OAAO,IAAA,EAAM,EAAA,EACT,gBAAA,CAAiB,CAAC,EAAA,GAAK,EAAA,CAAG,CAAC,EAAA,GAAK,EAAA,CAAG,CAAC,EAAA,GAAK,cAAA,CAAe,CAAC,EAAA,EACzD,cAAA,CAAe,CAAC,EAAA,GAAK,EAAA,CAAG,CAAC,EAAA,GAAK,EAAA,CAAG,CAAC,EAAA,GAAK,gBAAA,CAAiB,CAAC,CAAA;AAAA,EAC/D,EAAA,KAAO;AACL,IAAA,GAAA,CAAI,IAAA,CAAK,GAAA,CAAI,GAAG,EAAA,GAAK,IAAA,CAAK,GAAA,CAAI,GAAG,CAAA,EAAG;AAClC,MAAA,OAAO,IAAA,EAAM,EAAA,EACT,gBAAA,CAAiB,CAAC,EAAA,EAAI,EAAA,CAAG,CAAC,EAAA,GAAK,EAAA,CAAG,CAAC,EAAA,EAAI,cAAA,CAAe,CAAC,EAAA,EACvD,cAAA,CAAe,CAAC,EAAA,EAAI,EAAA,CAAG,CAAC,EAAA,GAAK,EAAA,CAAG,CAAC,EAAA,EAAI,gBAAA,CAAiB,CAAC,CAAA;AAAA,IAC7D;AACA,IAAA,OAAO,IAAA,EAAM,EAAA,EACT,gBAAA,CAAiB,CAAC,EAAA,EAAI,EAAA,CAAG,CAAC,EAAA,GAAK,EAAA,CAAG,CAAC,EAAA,EAAI,cAAA,CAAe,CAAC,EAAA,EACvD,cAAA,CAAe,CAAC,EAAA,EAAI,EAAA,CAAG,CAAC,EAAA,GAAK,EAAA,CAAG,CAAC,EAAA,EAAI,gBAAA,CAAiB,CAAC,CAAA;AAAA,EAC7D;AACF;AAGA,IAAO,6BAAA,EAAQ,cAAA;AD/Df;AACE;AACA;AACF,wFAAC","file":"/home/runner/work/turf/turf/packages/turf-boolean-crosses/dist/cjs/index.cjs","sourcesContent":[null,"import { Feature, Geometry, Polygon, LineString, MultiPoint } from \"geojson\";\nimport { lineIntersect } from \"@turf/line-intersect\";\nimport { polygonToLine } from \"@turf/polygon-to-line\";\nimport { booleanPointInPolygon } from \"@turf/boolean-point-in-polygon\";\nimport { getGeom } from \"@turf/invariant\";\nimport { point } from \"@turf/helpers\";\n\n/**\n * Boolean-Crosses returns True if the intersection results in a geometry whose dimension is one less than\n * the maximum dimension of the two source geometries and the intersection set is interior to\n * both source geometries.\n *\n * Boolean-Crosses returns t (TRUE) for only multipoint/polygon, multipoint/linestring, linestring/linestring, linestring/polygon, and linestring/multipolygon comparisons.\n * Other comparisons are not supported as they are outside the OpenGIS Simple Features spec and may give unexpected results.\n *\n * @function\n * @param {Geometry|Feature<any>} feature1 GeoJSON Feature or Geometry\n * @param {Geometry|Feature<any>} feature2 GeoJSON Feature or Geometry\n * @returns {boolean} true/false\n * @example\n * var line1 = turf.lineString([[-2, 2], [4, 2]]);\n * var line2 = turf.lineString([[1, 1], [1, 2], [1, 3], [1, 4]]);\n *\n * var cross = turf.booleanCrosses(line1, line2);\n * //=true\n */\nfunction booleanCrosses(\n feature1: Feature<any> | Geometry,\n feature2: Feature<any> | Geometry\n): boolean {\n var geom1 = getGeom(feature1);\n var geom2 = getGeom(feature2);\n var type1 = geom1.type;\n var type2 = geom2.type;\n\n switch (type1) {\n case \"MultiPoint\":\n switch (type2) {\n case \"LineString\":\n return doMultiPointAndLineStringCross(geom1, geom2);\n case \"Polygon\":\n return doesMultiPointCrossPoly(geom1, geom2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n case \"LineString\":\n switch (type2) {\n case \"MultiPoint\": // An inverse operation\n return doMultiPointAndLineStringCross(geom2, geom1);\n case \"LineString\":\n return doLineStringsCross(geom1, geom2);\n case \"Polygon\":\n return doLineStringAndPolygonCross(geom1, geom2);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n case \"Polygon\":\n switch (type2) {\n case \"MultiPoint\": // An inverse operation\n return doesMultiPointCrossPoly(geom2, geom1);\n case \"LineString\": // An inverse operation\n return doLineStringAndPolygonCross(geom2, geom1);\n default:\n throw new Error(\"feature2 \" + type2 + \" geometry not supported\");\n }\n default:\n throw new Error(\"feature1 \" + type1 + \" geometry not supported\");\n }\n}\n\nfunction doMultiPointAndLineStringCross(\n multiPoint: MultiPoint,\n lineString: LineString\n) {\n var foundIntPoint = false;\n var foundExtPoint = false;\n var pointLength = multiPoint.coordinates.length;\n var i = 0;\n while (i < pointLength && !foundIntPoint && !foundExtPoint) {\n for (var i2 = 0; i2 < lineString.coordinates.length - 1; i2++) {\n var incEndVertices = true;\n if (i2 === 0 || i2 === lineString.coordinates.length - 2) {\n incEndVertices = false;\n }\n if (\n isPointOnLineSegment(\n lineString.coordinates[i2],\n lineString.coordinates[i2 + 1],\n multiPoint.coordinates[i],\n incEndVertices\n )\n ) {\n foundIntPoint = true;\n } else {\n foundExtPoint = true;\n }\n }\n i++;\n }\n return foundIntPoint && foundExtPoint;\n}\n\nfunction doLineStringsCross(lineString1: LineString, lineString2: LineString) {\n var doLinesIntersect = lineIntersect(lineString1, lineString2);\n if (doLinesIntersect.features.length > 0) {\n for (var i = 0; i < lineString1.coordinates.length - 1; i++) {\n for (var i2 = 0; i2 < lineString2.coordinates.length - 1; i2++) {\n var incEndVertices = true;\n if (i2 === 0 || i2 === lineString2.coordinates.length - 2) {\n incEndVertices = false;\n }\n if (\n isPointOnLineSegment(\n lineString1.coordinates[i],\n lineString1.coordinates[i + 1],\n lineString2.coordinates[i2],\n incEndVertices\n )\n ) {\n return true;\n }\n }\n }\n }\n return false;\n}\n\nfunction doLineStringAndPolygonCross(lineString: LineString, polygon: Polygon) {\n const line: any = polygonToLine(polygon);\n const doLinesIntersect = lineIntersect(lineString, line);\n if (doLinesIntersect.features.length > 0) {\n return true;\n }\n return false;\n}\n\nfunction doesMultiPointCrossPoly(multiPoint: MultiPoint, polygon: Polygon) {\n var foundIntPoint = false;\n var foundExtPoint = false;\n var pointLength = multiPoint.coordinates.length;\n for (let i = 0; i < pointLength && (!foundIntPoint || !foundExtPoint); i++) {\n if (booleanPointInPolygon(point(multiPoint.coordinates[i]), polygon)) {\n foundIntPoint = true;\n } else {\n foundExtPoint = true;\n }\n }\n\n return foundExtPoint && foundIntPoint;\n}\n\n/**\n * Is a point on a line segment\n * Only takes into account outer rings\n * See http://stackoverflow.com/a/4833823/1979085\n *\n * @private\n * @param {number[]} lineSegmentStart coord pair of start of line\n * @param {number[]} lineSegmentEnd coord pair of end of line\n * @param {number[]} pt coord pair of point to check\n * @param {boolean} incEnd whether the point is allowed to fall on the line ends\n * @returns {boolean} true/false\n */\nfunction isPointOnLineSegment(\n lineSegmentStart: number[],\n lineSegmentEnd: number[],\n pt: number[],\n incEnd: boolean\n) {\n var dxc = pt[0] - lineSegmentStart[0];\n var dyc = pt[1] - lineSegmentStart[1];\n var dxl = lineSegmentEnd[0] - lineSegmentStart[0];\n var dyl = lineSegmentEnd[1] - lineSegmentStart[1];\n var cross = dxc * dyl - dyc * dxl;\n if (cross !== 0) {\n return false;\n }\n if (incEnd) {\n if (Math.abs(dxl) >= Math.abs(dyl)) {\n return dxl > 0\n ? lineSegmentStart[0] <= pt[0] && pt[0] <= lineSegmentEnd[0]\n : lineSegmentEnd[0] <= pt[0] && pt[0] <= lineSegmentStart[0];\n }\n return dyl > 0\n ? lineSegmentStart[1] <= pt[1] && pt[1] <= lineSegmentEnd[1]\n : lineSegmentEnd[1] <= pt[1] && pt[1] <= lineSegmentStart[1];\n } else {\n if (Math.abs(dxl) >= Math.abs(dyl)) {\n return dxl > 0\n ? lineSegmentStart[0] < pt[0] && pt[0] < lineSegmentEnd[0]\n : lineSegmentEnd[0] < pt[0] && pt[0] < lineSegmentStart[0];\n }\n return dyl > 0\n ? lineSegmentStart[1] < pt[1] && pt[1] < lineSegmentEnd[1]\n : lineSegmentEnd[1] < pt[1] && pt[1] < lineSegmentStart[1];\n }\n}\n\nexport { booleanCrosses };\nexport default booleanCrosses;\n"]}
|
|
@@ -8,7 +8,7 @@ import { Feature, Geometry } from 'geojson';
|
|
|
8
8
|
* Boolean-Crosses returns t (TRUE) for only multipoint/polygon, multipoint/linestring, linestring/linestring, linestring/polygon, and linestring/multipolygon comparisons.
|
|
9
9
|
* Other comparisons are not supported as they are outside the OpenGIS Simple Features spec and may give unexpected results.
|
|
10
10
|
*
|
|
11
|
-
* @
|
|
11
|
+
* @function
|
|
12
12
|
* @param {Geometry|Feature<any>} feature1 GeoJSON Feature or Geometry
|
|
13
13
|
* @param {Geometry|Feature<any>} feature2 GeoJSON Feature or Geometry
|
|
14
14
|
* @returns {boolean} true/false
|
|
@@ -8,7 +8,7 @@ import { Feature, Geometry } from 'geojson';
|
|
|
8
8
|
* Boolean-Crosses returns t (TRUE) for only multipoint/polygon, multipoint/linestring, linestring/linestring, linestring/polygon, and linestring/multipolygon comparisons.
|
|
9
9
|
* Other comparisons are not supported as they are outside the OpenGIS Simple Features spec and may give unexpected results.
|
|
10
10
|
*
|
|
11
|
-
* @
|
|
11
|
+
* @function
|
|
12
12
|
* @param {Geometry|Feature<any>} feature1 GeoJSON Feature or Geometry
|
|
13
13
|
* @param {Geometry|Feature<any>} feature2 GeoJSON Feature or Geometry
|
|
14
14
|
* @returns {boolean} true/false
|