@performant-software/geospatial 3.1.23 → 3.1.24-beta.1

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.
Files changed (63) hide show
  1. package/dist/index.cjs13.js +1 -1
  2. package/dist/index.cjs13.js.map +1 -1
  3. package/dist/index.cjs197.js +1 -1
  4. package/dist/index.cjs220.js +1 -1
  5. package/dist/index.cjs221.js +1 -1
  6. package/dist/index.cjs222.js +1 -1
  7. package/dist/index.cjs240.js +1 -1
  8. package/dist/index.cjs248.js +1 -1
  9. package/dist/index.cjs248.js.map +1 -1
  10. package/dist/index.cjs249.js +1 -1
  11. package/dist/index.cjs249.js.map +1 -1
  12. package/dist/index.cjs257.js +1 -1
  13. package/dist/index.cjs263.js +1 -1
  14. package/dist/index.cjs264.js +1 -1
  15. package/dist/index.cjs267.js +1 -1
  16. package/dist/index.cjs270.js +1 -1
  17. package/dist/index.cjs270.js.map +1 -1
  18. package/dist/index.cjs271.js +1 -1
  19. package/dist/index.cjs271.js.map +1 -1
  20. package/dist/index.cjs273.js +1 -1
  21. package/dist/index.cjs273.js.map +1 -1
  22. package/dist/index.cjs29.js +1 -1
  23. package/dist/index.cjs32.js +1 -1
  24. package/dist/index.cjs83.js +1 -743
  25. package/dist/index.cjs83.js.map +1 -1
  26. package/dist/index.cjs84.js +1 -1
  27. package/dist/index.cjs85.js +1 -1
  28. package/dist/index.cjs85.js.map +1 -1
  29. package/dist/index.cjs86.js +743 -1
  30. package/dist/index.cjs86.js.map +1 -1
  31. package/dist/index.es13.js +77 -65
  32. package/dist/index.es13.js.map +1 -1
  33. package/dist/index.es197.js +1 -1
  34. package/dist/index.es220.js +1 -1
  35. package/dist/index.es221.js +1 -1
  36. package/dist/index.es222.js +1 -1
  37. package/dist/index.es240.js +1 -1
  38. package/dist/index.es248.js +4 -6
  39. package/dist/index.es248.js.map +1 -1
  40. package/dist/index.es249.js +6 -4
  41. package/dist/index.es249.js.map +1 -1
  42. package/dist/index.es257.js +1 -1
  43. package/dist/index.es263.js +1 -1
  44. package/dist/index.es264.js +1 -1
  45. package/dist/index.es267.js +1 -1
  46. package/dist/index.es270.js +15 -2
  47. package/dist/index.es270.js.map +1 -1
  48. package/dist/index.es271.js +69 -15
  49. package/dist/index.es271.js.map +1 -1
  50. package/dist/index.es273.js +2 -69
  51. package/dist/index.es273.js.map +1 -1
  52. package/dist/index.es29.js +2 -2
  53. package/dist/index.es32.js +2 -2
  54. package/dist/index.es83.js +1954 -21313
  55. package/dist/index.es83.js.map +1 -1
  56. package/dist/index.es84.js +6 -2
  57. package/dist/index.es84.js.map +1 -1
  58. package/dist/index.es85.js +2 -1993
  59. package/dist/index.es85.js.map +1 -1
  60. package/dist/index.es86.js +21351 -5
  61. package/dist/index.es86.js.map +1 -1
  62. package/dist/index.es87.js +2 -2
  63. package/package.json +1 -1
@@ -1,16 +1,16 @@
1
- import { WarpedMapLayer as v } from "./index.es68.js";
2
- import { bbox as f } from "./index.es69.js";
3
- import { bboxPolygon as x } from "./index.es70.js";
4
- import { bearing as A } from "./index.es71.js";
5
- import { bezierSpline as B } from "./index.es72.js";
6
- import { buffer as I } from "./index.es73.js";
7
- import { centroid as M } from "./index.es74.js";
8
- import F from "./index.es75.js";
9
- import { destination as G } from "./index.es76.js";
10
- import { distance as T } from "./index.es77.js";
11
- import { featureCollection as s, feature as d, lineString as U } from "./index.es67.js";
12
- import { midpoint as h } from "./index.es78.js";
13
- import u from "./index.es36.js";
1
+ import { WarpedMapLayer as F } from "./index.es68.js";
2
+ import { bbox as h } from "./index.es69.js";
3
+ import { bboxPolygon as M } from "./index.es70.js";
4
+ import { bearing as T } from "./index.es71.js";
5
+ import { bezierSpline as N } from "./index.es72.js";
6
+ import { buffer as U } from "./index.es73.js";
7
+ import { centroid as P } from "./index.es74.js";
8
+ import O from "./index.es75.js";
9
+ import { destination as C } from "./index.es76.js";
10
+ import { distance as W } from "./index.es77.js";
11
+ import { featureCollection as f, feature as G, lineString as x } from "./index.es67.js";
12
+ import { midpoint as w } from "./index.es78.js";
13
+ import B from "./index.es36.js";
14
14
  import "./index.es37.js";
15
15
  import "./index.es38.js";
16
16
  import "./index.es39.js";
@@ -38,86 +38,98 @@ import "./index.es60.js";
38
38
  import "./index.es61.js";
39
39
  import "./index.es62.js";
40
40
  import "./index.es63.js";
41
- const P = -90, E = 90, N = -180, D = 180, l = (t, r) => F(t.coordinates, r, { units: "kilometers", steps: 32 }), O = (t, r) => {
41
+ const D = -90, R = 90, k = -180, z = 180, A = (t, r) => O(t.coordinates, r, { units: "kilometers", steps: 32 }), S = (t, r) => {
42
42
  if (t.geometry?.type === "FeatureCollection") {
43
- let e = [];
44
- for (const o of t.geometry.features)
45
- if (o.geometry?.type === "Point") {
46
- const { geometry: n, type: i } = l(o.geometry, r);
47
- e.push({
48
- ...o,
49
- geometry: n,
50
- type: i
43
+ let o = [];
44
+ for (const e of t.geometry.features)
45
+ if (e.geometry?.type === "Point") {
46
+ const { geometry: s, type: a } = A(e.geometry, r);
47
+ o.push({
48
+ ...e,
49
+ geometry: s,
50
+ type: a
51
51
  });
52
52
  }
53
- return s(e);
53
+ return f(o);
54
54
  } else {
55
55
  if (t.geometry?.type === "GeometryCollection")
56
- return s(t.geometry.geometries.map((e) => e.type === "Point" ? l(e, r) : d(e)));
56
+ return f(t.geometry.geometries.map((o) => o.type === "Point" ? A(o, r) : G(o)));
57
57
  if (t.geometry?.type === "Point") {
58
- const { geometry: e, type: o } = l(t.geometry, r);
58
+ const { geometry: o, type: e } = A(t.geometry, r);
59
59
  return {
60
60
  ...t,
61
- geometry: e,
62
- type: o
61
+ geometry: o,
62
+ type: e
63
63
  };
64
64
  }
65
65
  }
66
66
  return t;
67
- }, w = (t, r, e = {}) => {
68
- const o = new v(r);
69
- t.addLayer(o), e.url ? o.addGeoreferenceAnnotationByUrl(e.url) : e.manifest && o.addGeoreferenceAnnotation(e.manifest), e.opacity && o.setOpacity(e.opacity);
70
- }, S = (t, r = null) => {
71
- const e = f(t);
72
- if (!y(e))
67
+ }, X = (t, r, o = {}) => {
68
+ const e = new F(r);
69
+ t.addLayer(e), o.url ? e.addGeoreferenceAnnotationByUrl(o.url) : o.manifest && e.addGeoreferenceAnnotation(o.manifest), o.opacity && e.setOpacity(o.opacity);
70
+ }, j = (t, r = null) => {
71
+ const o = h(t);
72
+ if (!I(o))
73
73
  return null;
74
- const o = x(e);
75
- let n;
76
- return r ? n = I(o, r, { units: "miles" }) : n = o, f(n);
77
- }, X = (t, r) => t && t.removeLayer(r), k = (t, r, e, o) => {
78
- const n = {
74
+ const e = M(o);
75
+ let s;
76
+ return r ? s = U(e, r, { units: "miles" }) : s = e, h(s);
77
+ }, q = (t, r) => t && t.removeLayer(r), H = (t, r, o, e) => {
78
+ const s = {
79
79
  id: t.record_id,
80
80
  ccode: [],
81
81
  title: t.name,
82
82
  uuid: t.uuid,
83
83
  record_id: t.record_id,
84
84
  name: t.name,
85
- names: t.names?.map((m) => ({ toponym: m })),
85
+ names: t.names?.map((l) => ({ toponym: l })),
86
86
  type: t.type,
87
87
  items: [r],
88
88
  url: t.url,
89
- originalProperties: o || {}
90
- }, i = parseInt(t.record_id, 10);
91
- return d(e, n, { id: i });
92
- }, z = (t) => s(t), y = (t) => u.every(t, u.isFinite), W = (t) => {
89
+ originalProperties: e || {}
90
+ }, a = parseInt(t.record_id, 10);
91
+ return G(o, s, { id: a });
92
+ }, J = (t) => f(t), I = (t) => B.every(t, B.isFinite), K = (t) => {
93
93
  let r = !1;
94
94
  if (t) {
95
- const [e, o] = t;
96
- r = e >= P && e <= E && o >= N && o <= D;
95
+ const [o, e] = t;
96
+ r = o >= D && o <= R && e >= k && e <= z;
97
97
  }
98
98
  return r;
99
- }, j = (t, r = {}) => {
100
- const { curvature: e = -0.2 } = r, o = t.map((i) => M(i).geometry.coordinates), n = [];
101
- for (let i = 0; i < o.length - 1; i += 1) {
102
- const m = o[i], p = o[i + 1], g = T(m, p), _ = h(m, p), a = A(m, p), L = a + 90 > 180 ? a + 90 - 360 : a + 90, b = G(_, g * e, L), C = U([m, b.geometry.coordinates, p]), c = B(C);
103
- c.properties = {
104
- ...c.properties,
105
- index: i
106
- }, n.push(c);
99
+ }, Q = (t, r = {}) => {
100
+ const { curvature: o = -0.2, arrows: e = !1 } = r, s = 30, a = 0.08, l = (n) => {
101
+ const i = (n % 360 + 360) % 360;
102
+ return i > 180 ? i - 360 : i;
103
+ }, v = (n, i) => {
104
+ const m = n.geometry.coordinates, c = m[m.length - 1], g = m[m.length - 2], p = T(g, c) + 180, _ = C(c, i, l(p - s)).geometry.coordinates, b = C(c, i, l(p + s)).geometry.coordinates;
105
+ return x([_, c, b]);
106
+ }, u = t.map((n) => P(n).geometry.coordinates), y = [];
107
+ for (let n = 0; n < u.length - 1; n += 1) {
108
+ const i = u[n], m = u[n + 1], c = W(i, m), g = w(i, m), p = T(i, m), _ = p + 90 > 180 ? p + 90 - 360 : p + 90, b = C(g, c * o, _), E = x([i, b.geometry.coordinates, m]), d = N(E);
109
+ if (d.properties = {
110
+ ...d.properties,
111
+ index: n
112
+ }, y.push(d), e) {
113
+ const L = v(d, c * a);
114
+ L.properties = {
115
+ index: n,
116
+ arrow: !0
117
+ }, y.push(L);
118
+ }
107
119
  }
108
- return s(n);
109
- }, Ut = {
110
- addGeoreferenceLayer: w,
111
- toCertaintyCircle: O,
112
- getBoundingBox: S,
113
- removeLayer: X,
114
- toArcs: j,
115
- toFeature: k,
116
- toFeatureCollection: z,
117
- validateBoundingBox: y,
118
- validateCoordinates: W
120
+ return f(y);
121
+ }, Wt = {
122
+ addGeoreferenceLayer: X,
123
+ toCertaintyCircle: S,
124
+ getBoundingBox: j,
125
+ removeLayer: q,
126
+ toArcs: Q,
127
+ toFeature: H,
128
+ toFeatureCollection: J,
129
+ validateBoundingBox: I,
130
+ validateCoordinates: K
119
131
  };
120
132
  export {
121
- Ut as default
133
+ Wt as default
122
134
  };
123
135
  //# sourceMappingURL=index.es13.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es13.js","sources":["../src/utils/Map.js"],"sourcesContent":["// @flow\n\nimport { WarpedMapLayer } from '@allmaps/maplibre';\nimport {\n bbox,\n bboxPolygon,\n bearing,\n bezierSpline,\n buffer,\n centroid,\n destination,\n distance,\n feature,\n featureCollection,\n lineString,\n midpoint\n} from '@turf/turf';\nimport _ from 'underscore';\nimport circle from '@turf/circle';\n\nconst MIN_LATITUDE = -90;\nconst MAX_LATITUDE = 90;\nconst MIN_LONGITUDE = -180;\nconst MAX_LONGITUDE = 180;\n\n/**\n * Returns a GeoJSON circle feature with the given center point and radius.\n * @param point - The center point of the circle.\n * @param radius - The radius of the circle in kilometers.\n * @returns {Feature<Geometry, Properties>} - The GeoJSON circle feature.\n */\nconst buildCircle = (point, radius) => (\n circle(point.coordinates, radius, { units: 'kilometers', steps: 32 })\n);\n\nconst toCertaintyCircle = (item, radius: number) => {\n if (item.geometry?.type === 'FeatureCollection') {\n let children = [];\n\n for (const childFeature of item.geometry.features) {\n if (childFeature.geometry?.type === 'Point') {\n const { geometry, type } = buildCircle(childFeature.geometry, radius);\n children.push({\n ...childFeature,\n geometry,\n type\n });\n }\n }\n\n return featureCollection(children);\n } else if (item.geometry?.type === 'GeometryCollection') {\n return featureCollection(item.geometry.geometries.map((geometry) => geometry.type === 'Point'\n ? buildCircle(geometry, radius)\n : feature(geometry)));\n } else if (item.geometry?.type === 'Point') {\n const { geometry, type } = buildCircle(item.geometry, radius);\n return {\n ...item,\n geometry,\n type\n };\n }\n\n return item;\n};\n\n/**\n * Adds the geo-referenced image layer to the passed map.\n *\n * @param map\n * @param layerId\n * @param options\n */\nconst addGeoreferenceLayer = (map, layerId, options = {}) => {\n const warpedMapLayer = new WarpedMapLayer(layerId);\n map.addLayer(warpedMapLayer);\n\n if (options.url) {\n warpedMapLayer.addGeoreferenceAnnotationByUrl(options.url);\n } else if (options.manifest) {\n warpedMapLayer.addGeoreferenceAnnotation(options.manifest);\n }\n\n if (options.opacity) {\n warpedMapLayer.setOpacity(options.opacity);\n }\n};\n\n/**\n * Returns a bounding box for the passed geometry (with optional buffer).\n *\n * @param data\n * @param bufferDistance\n *\n * @returns {BBox}\n */\nconst getBoundingBox = (data, bufferDistance = null) => {\n // Convert the GeoJSON into a bounding box\n const box = bbox(data);\n\n if (!validateBoundingBox(box)) {\n return null;\n }\n\n // Convert the bounding box to a polygon\n const polygon = bboxPolygon(box);\n\n // Create a buffer around the polygon (if a distance is provided)\n let polygonBuffer;\n\n if (bufferDistance) {\n polygonBuffer = buffer(polygon, bufferDistance, { units: 'miles' });\n } else {\n polygonBuffer = polygon;\n }\n\n // Convert the buffer to a bounding box\n return bbox(polygonBuffer);\n};\n\n/**\n * Removes a layer from the passed map.\n *\n * @param map\n * @param layerId\n *\n * @returns {*}\n */\nconst removeLayer = (map, layerId) => map && map.removeLayer(layerId);\n\n/**\n * Wraps the passed record in a feature.\n *\n * @param record\n * @param item\n * @param geometry\n * @param originalProperties\n *\n * @returns {Feature<Geometry, {\n * id: *,\n * ccode: [],\n * title: *,\n * uuid: *,\n * record_id: *,\n * name: *,\n * names: *,\n * type: *,\n * items: [*],\n * url: *\n * }>}\n */\nconst toFeature = (record: any, item: any, geometry: any, originalProperties?: any) => {\n const properties = {\n id: record.record_id,\n ccode: [],\n title: record.name,\n uuid: record.uuid,\n record_id: record.record_id,\n name: record.name,\n names: record.names?.map((toponym: string) => ({ toponym })),\n type: record.type,\n items: [item],\n url: record.url,\n originalProperties: originalProperties || {}\n };\n\n const id = parseInt(record.record_id, 10);\n return feature(geometry, properties, { id });\n};\n\n/**\n * Returns a feature collection for the passed set of features.\n *\n * @param features\n *\n * @returns {FeatureCollection<Geometry, GeoJsonProperties>}\n */\nconst toFeatureCollection = (features: Array<any>) => featureCollection(features);\n\n/**\n * Validates that the passed bounding box contains finite coordinates.\n *\n * @param boundingBox\n *\n * @returns {*}\n */\nconst validateBoundingBox = (boundingBox: Array<number>) => _.every(boundingBox, _.isFinite);\n\n/**\n * Returns true if the passed coordinates are valid.\n *\n * @param coordinates\n *\n * @returns {boolean}\n */\nconst validateCoordinates = (coordinates) => {\n let valid = false;\n\n if (coordinates) {\n const [latitude, longitude] = coordinates;\n\n valid = latitude >= MIN_LATITUDE\n && latitude <= MAX_LATITUDE\n && longitude >= MIN_LONGITUDE\n && longitude <= MAX_LONGITUDE;\n }\n\n return valid;\n};\n\n/**\n * Returns a GeoJSON FeatureCollection of LineStrings (arcs) for the passed coordinates.\n *\n * @param features\n * @param options\n *\n * @returns {FeatureCollection<LineString, GeoJsonProperties>}\n */\nconst toArcs = (features, options = {}) => {\n const { curvature = -0.2 } = options;\n\n const coordinates = features.map(feature => centroid(feature).geometry.coordinates);\n\n const arcFeatures = [];\n\n for (let i = 0; i < coordinates.length - 1; i += 1) {\n const start = coordinates[i];\n const end = coordinates[i + 1];\n\n const d = distance(start, end);\n const m = midpoint(start, end);\n const b = bearing(start, end);\n\n const offsetBearing = b + 90 > 180 ? b + 90 - 360 : b + 90;\n const dest = destination(m, d * curvature, offsetBearing);\n\n const line = lineString([start, dest.geometry.coordinates, end]);\n const arc = bezierSpline(line);\n\n arc.properties = {\n ...arc.properties,\n index: i\n };\n\n arcFeatures.push(arc);\n }\n\n return featureCollection(arcFeatures);\n};\n\nexport default {\n addGeoreferenceLayer,\n toCertaintyCircle,\n getBoundingBox,\n removeLayer,\n toArcs,\n toFeature,\n toFeatureCollection,\n validateBoundingBox,\n validateCoordinates\n};\n"],"names":["MIN_LATITUDE","MAX_LATITUDE","MIN_LONGITUDE","MAX_LONGITUDE","buildCircle","point","radius","circle","toCertaintyCircle","item","children","childFeature","geometry","type","featureCollection","feature","addGeoreferenceLayer","map","layerId","options","warpedMapLayer","WarpedMapLayer","getBoundingBox","data","bufferDistance","box","bbox","validateBoundingBox","polygon","bboxPolygon","polygonBuffer","buffer","removeLayer","toFeature","record","originalProperties","properties","toponym","id","toFeatureCollection","features","boundingBox","_","validateCoordinates","coordinates","valid","latitude","longitude","toArcs","curvature","centroid","arcFeatures","start","end","d","distance","m","midpoint","b","bearing","offsetBearing","dest","destination","line","lineString","arc","bezierSpline","MapUtils"],"mappings":"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"}
1
+ {"version":3,"file":"index.es13.js","sources":["../src/utils/Map.js"],"sourcesContent":["// @flow\n\nimport { WarpedMapLayer } from '@allmaps/maplibre';\nimport {\n bbox,\n bboxPolygon,\n bearing,\n bezierSpline,\n buffer,\n centroid,\n destination,\n distance,\n feature,\n featureCollection,\n lineString,\n midpoint\n} from '@turf/turf';\nimport _ from 'underscore';\nimport circle from '@turf/circle';\n\nconst MIN_LATITUDE = -90;\nconst MAX_LATITUDE = 90;\nconst MIN_LONGITUDE = -180;\nconst MAX_LONGITUDE = 180;\n\n/**\n * Returns a GeoJSON circle feature with the given center point and radius.\n * @param point - The center point of the circle.\n * @param radius - The radius of the circle in kilometers.\n * @returns {Feature<Geometry, Properties>} - The GeoJSON circle feature.\n */\nconst buildCircle = (point, radius) => (\n circle(point.coordinates, radius, { units: 'kilometers', steps: 32 })\n);\n\nconst toCertaintyCircle = (item, radius: number) => {\n if (item.geometry?.type === 'FeatureCollection') {\n let children = [];\n\n for (const childFeature of item.geometry.features) {\n if (childFeature.geometry?.type === 'Point') {\n const { geometry, type } = buildCircle(childFeature.geometry, radius);\n children.push({\n ...childFeature,\n geometry,\n type\n });\n }\n }\n\n return featureCollection(children);\n } else if (item.geometry?.type === 'GeometryCollection') {\n return featureCollection(item.geometry.geometries.map((geometry) => geometry.type === 'Point'\n ? buildCircle(geometry, radius)\n : feature(geometry)));\n } else if (item.geometry?.type === 'Point') {\n const { geometry, type } = buildCircle(item.geometry, radius);\n return {\n ...item,\n geometry,\n type\n };\n }\n\n return item;\n};\n\n/**\n * Adds the geo-referenced image layer to the passed map.\n *\n * @param map\n * @param layerId\n * @param options\n */\nconst addGeoreferenceLayer = (map, layerId, options = {}) => {\n const warpedMapLayer = new WarpedMapLayer(layerId);\n map.addLayer(warpedMapLayer);\n\n if (options.url) {\n warpedMapLayer.addGeoreferenceAnnotationByUrl(options.url);\n } else if (options.manifest) {\n warpedMapLayer.addGeoreferenceAnnotation(options.manifest);\n }\n\n if (options.opacity) {\n warpedMapLayer.setOpacity(options.opacity);\n }\n};\n\n/**\n * Returns a bounding box for the passed geometry (with optional buffer).\n *\n * @param data\n * @param bufferDistance\n *\n * @returns {BBox}\n */\nconst getBoundingBox = (data, bufferDistance = null) => {\n // Convert the GeoJSON into a bounding box\n const box = bbox(data);\n\n if (!validateBoundingBox(box)) {\n return null;\n }\n\n // Convert the bounding box to a polygon\n const polygon = bboxPolygon(box);\n\n // Create a buffer around the polygon (if a distance is provided)\n let polygonBuffer;\n\n if (bufferDistance) {\n polygonBuffer = buffer(polygon, bufferDistance, { units: 'miles' });\n } else {\n polygonBuffer = polygon;\n }\n\n // Convert the buffer to a bounding box\n return bbox(polygonBuffer);\n};\n\n/**\n * Removes a layer from the passed map.\n *\n * @param map\n * @param layerId\n *\n * @returns {*}\n */\nconst removeLayer = (map, layerId) => map && map.removeLayer(layerId);\n\n/**\n * Wraps the passed record in a feature.\n *\n * @param record\n * @param item\n * @param geometry\n * @param originalProperties\n *\n * @returns {Feature<Geometry, {\n * id: *,\n * ccode: [],\n * title: *,\n * uuid: *,\n * record_id: *,\n * name: *,\n * names: *,\n * type: *,\n * items: [*],\n * url: *\n * }>}\n */\nconst toFeature = (record: any, item: any, geometry: any, originalProperties?: any) => {\n const properties = {\n id: record.record_id,\n ccode: [],\n title: record.name,\n uuid: record.uuid,\n record_id: record.record_id,\n name: record.name,\n names: record.names?.map((toponym: string) => ({ toponym })),\n type: record.type,\n items: [item],\n url: record.url,\n originalProperties: originalProperties || {}\n };\n\n const id = parseInt(record.record_id, 10);\n return feature(geometry, properties, { id });\n};\n\n/**\n * Returns a feature collection for the passed set of features.\n *\n * @param features\n *\n * @returns {FeatureCollection<Geometry, GeoJsonProperties>}\n */\nconst toFeatureCollection = (features: Array<any>) => featureCollection(features);\n\n/**\n * Validates that the passed bounding box contains finite coordinates.\n *\n * @param boundingBox\n *\n * @returns {*}\n */\nconst validateBoundingBox = (boundingBox: Array<number>) => _.every(boundingBox, _.isFinite);\n\n/**\n * Returns true if the passed coordinates are valid.\n *\n * @param coordinates\n *\n * @returns {boolean}\n */\nconst validateCoordinates = (coordinates) => {\n let valid = false;\n\n if (coordinates) {\n const [latitude, longitude] = coordinates;\n\n valid = latitude >= MIN_LATITUDE\n && latitude <= MAX_LATITUDE\n && longitude >= MIN_LONGITUDE\n && longitude <= MAX_LONGITUDE;\n }\n\n return valid;\n};\n\n/**\n * Returns a GeoJSON FeatureCollection of LineStrings (arcs) for the passed coordinates.\n *\n * @param features\n * @param options\n *\n * @returns {FeatureCollection<LineString, GeoJsonProperties>}\n */\nconst toArcs = (features, options = {}) => {\n const { curvature = -0.2, arrows = false } = options;\n\n const CARET_ANGLE = 30;\n const CARET_WING_FACTOR = 0.08;\n\n const normalizeBearing = deg => {\n const d = ((deg % 360) + 360) % 360;\n return d > 180 ? d - 360 : d;\n };\n\n const buildCaret = (arc, wingLength) => {\n const coords = arc.geometry.coordinates;\n const tip = coords[coords.length - 1];\n const behind = coords[coords.length - 2];\n const back = bearing(behind, tip) + 180;\n\n const leftWing = destination(tip, wingLength, normalizeBearing(back - CARET_ANGLE)).geometry.coordinates;\n const rightWing = destination(tip, wingLength, normalizeBearing(back + CARET_ANGLE)).geometry.coordinates;\n\n return lineString([leftWing, tip, rightWing]);\n };\n\n const coordinates = features.map(feature => centroid(feature).geometry.coordinates);\n\n const arcFeatures = [];\n\n for (let i = 0; i < coordinates.length - 1; i += 1) {\n const start = coordinates[i];\n const end = coordinates[i + 1];\n\n const d = distance(start, end);\n const m = midpoint(start, end);\n const b = bearing(start, end);\n\n const offsetBearing = b + 90 > 180 ? b + 90 - 360 : b + 90;\n const dest = destination(m, d * curvature, offsetBearing);\n\n const line = lineString([start, dest.geometry.coordinates, end]);\n const arc = bezierSpline(line);\n\n arc.properties = {\n ...arc.properties,\n index: i\n };\n\n arcFeatures.push(arc);\n\n if (arrows) {\n const caret = buildCaret(arc, d * CARET_WING_FACTOR);\n\n caret.properties = {\n index: i,\n arrow: true\n };\n\n arcFeatures.push(caret);\n }\n }\n\n return featureCollection(arcFeatures);\n};\n\nexport default {\n addGeoreferenceLayer,\n toCertaintyCircle,\n getBoundingBox,\n removeLayer,\n toArcs,\n toFeature,\n toFeatureCollection,\n validateBoundingBox,\n validateCoordinates\n};\n"],"names":["MIN_LATITUDE","MAX_LATITUDE","MIN_LONGITUDE","MAX_LONGITUDE","buildCircle","point","radius","circle","toCertaintyCircle","item","children","childFeature","geometry","type","featureCollection","feature","addGeoreferenceLayer","map","layerId","options","warpedMapLayer","WarpedMapLayer","getBoundingBox","data","bufferDistance","box","bbox","validateBoundingBox","polygon","bboxPolygon","polygonBuffer","buffer","removeLayer","toFeature","record","originalProperties","properties","toponym","id","toFeatureCollection","features","boundingBox","_","validateCoordinates","coordinates","valid","latitude","longitude","toArcs","curvature","arrows","CARET_ANGLE","CARET_WING_FACTOR","normalizeBearing","deg","d","buildCaret","arc","wingLength","coords","tip","behind","back","bearing","leftWing","destination","rightWing","lineString","centroid","arcFeatures","i","start","end","distance","m","midpoint","b","offsetBearing","dest","line","bezierSpline","caret","MapUtils"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { getDefaultExportFromCjs as r } from "./index.es86.js";
1
+ import { getDefaultExportFromCjs as r } from "./index.es84.js";
2
2
  import { __require as t } from "./index.es245.js";
3
3
  var s = t();
4
4
  const m = /* @__PURE__ */ r(s);
@@ -1,4 +1,4 @@
1
- import e from "./index.es248.js";
1
+ import e from "./index.es249.js";
2
2
  import t from "./index.es222.js";
3
3
  const f = e(t);
4
4
  export {
@@ -1,4 +1,4 @@
1
- import t from "./index.es249.js";
1
+ import t from "./index.es248.js";
2
2
  const o = t("length");
3
3
  export {
4
4
  o as default
@@ -1,4 +1,4 @@
1
- import t from "./index.es249.js";
1
+ import t from "./index.es248.js";
2
2
  const o = t("byteLength");
3
3
  export {
4
4
  o as default
@@ -1,4 +1,4 @@
1
- import e from "./index.es248.js";
1
+ import e from "./index.es249.js";
2
2
  import r from "./index.es221.js";
3
3
  const i = e(r);
4
4
  export {
@@ -1,11 +1,9 @@
1
- import { MAX_ARRAY_INDEX as o } from "./index.es37.js";
2
- function u(e) {
3
- return function(t) {
4
- var r = e(t);
5
- return typeof r == "number" && r >= 0 && r <= o;
1
+ function t(r) {
2
+ return function(n) {
3
+ return n?.[r];
6
4
  };
7
5
  }
8
6
  export {
9
- u as default
7
+ t as default
10
8
  };
11
9
  //# sourceMappingURL=index.es248.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es248.js","sources":["../node_modules/underscore/modules/_createSizePropertyCheck.js"],"sourcesContent":["import { MAX_ARRAY_INDEX } from './_setup.js';\n\n// Common internal logic for `isArrayLike` and `isBufferLike`.\nexport default function createSizePropertyCheck(getSizeProperty) {\n return function(collection) {\n var sizeProperty = getSizeProperty(collection);\n return typeof sizeProperty == 'number' && sizeProperty >= 0 && sizeProperty <= MAX_ARRAY_INDEX;\n }\n}\n"],"names":["createSizePropertyCheck","getSizeProperty","collection","sizeProperty","MAX_ARRAY_INDEX"],"mappings":";AAGA,SAAwBA,EAAwBC,GAAiB;AAC/D,SAAO,SAASC,GAAY;AAC1B,QAAIC,IAAeF,EAAgBC,CAAU;AAC7C,WAAO,OAAOC,KAAgB,YAAYA,KAAgB,KAAKA,KAAgBC;AAAA,EACjF;AACF;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es248.js","sources":["../node_modules/underscore/modules/_shallowProperty.js"],"sourcesContent":["// Internal helper to generate a function to obtain property `key` from `obj`.\nexport default function shallowProperty(key) {\n return function(obj) {\n return obj == null ? void 0 : obj[key];\n };\n}\n"],"names":["shallowProperty","key","obj"],"mappings":"AACA,SAAwBA,EAAgBC,GAAK;AAC3C,SAAO,SAASC,GAAK;AACnB,WAA8BA,IAAID,CAAG;AAAA,EACvC;AACF;","x_google_ignoreList":[0]}
@@ -1,9 +1,11 @@
1
- function t(r) {
2
- return function(n) {
3
- return n?.[r];
1
+ import { MAX_ARRAY_INDEX as o } from "./index.es37.js";
2
+ function u(e) {
3
+ return function(t) {
4
+ var r = e(t);
5
+ return typeof r == "number" && r >= 0 && r <= o;
4
6
  };
5
7
  }
6
8
  export {
7
- t as default
9
+ u as default
8
10
  };
9
11
  //# sourceMappingURL=index.es249.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es249.js","sources":["../node_modules/underscore/modules/_shallowProperty.js"],"sourcesContent":["// Internal helper to generate a function to obtain property `key` from `obj`.\nexport default function shallowProperty(key) {\n return function(obj) {\n return obj == null ? void 0 : obj[key];\n };\n}\n"],"names":["shallowProperty","key","obj"],"mappings":"AACA,SAAwBA,EAAgBC,GAAK;AAC3C,SAAO,SAASC,GAAK;AACnB,WAA8BA,IAAID,CAAG;AAAA,EACvC;AACF;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es249.js","sources":["../node_modules/underscore/modules/_createSizePropertyCheck.js"],"sourcesContent":["import { MAX_ARRAY_INDEX } from './_setup.js';\n\n// Common internal logic for `isArrayLike` and `isBufferLike`.\nexport default function createSizePropertyCheck(getSizeProperty) {\n return function(collection) {\n var sizeProperty = getSizeProperty(collection);\n return typeof sizeProperty == 'number' && sizeProperty >= 0 && sizeProperty <= MAX_ARRAY_INDEX;\n }\n}\n"],"names":["createSizePropertyCheck","getSizeProperty","collection","sizeProperty","MAX_ARRAY_INDEX"],"mappings":";AAGA,SAAwBA,EAAwBC,GAAiB;AAC/D,SAAO,SAASC,GAAY;AAC1B,QAAIC,IAAeF,EAAgBC,CAAU;AAC7C,WAAO,OAAOC,KAAgB,YAAYA,KAAgB,KAAKA,KAAgBC;AAAA,EACjF;AACF;","x_google_ignoreList":[0]}
@@ -1,4 +1,4 @@
1
- import o from "./index.es270.js";
1
+ import o from "./index.es273.js";
2
2
  function e() {
3
3
  var n = [], t;
4
4
  return {
@@ -1,4 +1,4 @@
1
- import L from "./index.es273.js";
1
+ import L from "./index.es271.js";
2
2
  import { pi as f, halfPi as A, abs as N, epsilon as l, atan as P, sin as v, cos as S } from "./index.es255.js";
3
3
  const j = L(
4
4
  function() {
@@ -2,7 +2,7 @@ import { cartesian as Q, cartesianCross as T, cartesianDot as R, cartesianScale
2
2
  import { circleStream as $ } from "./index.es253.js";
3
3
  import { pi as v, cos as F, epsilon as x, abs as G, sqrt as b } from "./index.es255.js";
4
4
  import J from "./index.es272.js";
5
- import m from "./index.es273.js";
5
+ import m from "./index.es271.js";
6
6
  function fn(S, V) {
7
7
  var A = F(S), C = A > 0, W = G(A) > x;
8
8
  function X(n, i, o, e) {
@@ -1,5 +1,5 @@
1
1
  import c from "./index.es269.js";
2
- import n from "./index.es271.js";
2
+ import n from "./index.es270.js";
3
3
  function S(l, a, r) {
4
4
  var f = a[1][0] - a[0][0], m = a[1][1] - a[0][1], i = l.clipExtent && l.clipExtent();
5
5
  l.scale(150).translate([0, 0]), i != null && l.clipExtent(null), c(r, l.stream(n));
@@ -1,6 +1,19 @@
1
- function o() {
1
+ import r from "./index.es273.js";
2
+ var o = 1 / 0, f = o, t = -o, a = t, d = {
3
+ point: u,
4
+ lineStart: r,
5
+ lineEnd: r,
6
+ polygonStart: r,
7
+ polygonEnd: r,
8
+ result: function() {
9
+ var n = [[o, f], [t, a]];
10
+ return t = a = -(f = o = 1 / 0), n;
11
+ }
12
+ };
13
+ function u(n, i) {
14
+ n < o && (o = n), n > t && (t = n), i < f && (f = i), i > a && (a = i);
2
15
  }
3
16
  export {
4
- o as default
17
+ d as default
5
18
  };
6
19
  //# sourceMappingURL=index.es270.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es270.js","sources":["../../../node_modules/d3-geo/src/noop.js"],"sourcesContent":["export default function noop() {}\n"],"names":["noop"],"mappings":"AAAA,SAAwBA,IAAO;AAAC;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es270.js","sources":["../../../node_modules/d3-geo/src/path/bounds.js"],"sourcesContent":["import noop from \"../noop\";\n\nvar x0 = Infinity,\n y0 = x0,\n x1 = -x0,\n y1 = x1;\n\nvar boundsStream = {\n point: boundsPoint,\n lineStart: noop,\n lineEnd: noop,\n polygonStart: noop,\n polygonEnd: noop,\n result: function() {\n var bounds = [[x0, y0], [x1, y1]];\n x1 = y1 = -(y0 = x0 = Infinity);\n return bounds;\n }\n};\n\nfunction boundsPoint(x, y) {\n if (x < x0) x0 = x;\n if (x > x1) x1 = x;\n if (y < y0) y0 = y;\n if (y > y1) y1 = y;\n}\n\nexport default boundsStream;\n"],"names":["x0","y0","x1","y1","boundsStream","boundsPoint","noop","bounds","x","y"],"mappings":";AAEA,IAAIA,IAAK,OACLC,IAAKD,GACLE,IAAK,CAACF,GACNG,IAAKD,GAELE,IAAe;AAAA,EACjB,OAAOC;AAAA,EACP,WAAWC;AAAA,EACX,SAASA;AAAA,EACT,cAAcA;AAAA,EACd,YAAYA;AAAA,EACZ,QAAQ,WAAW;AACjB,QAAIC,IAAS,CAAC,CAACP,GAAIC,CAAE,GAAG,CAACC,GAAIC,CAAE,CAAC;AAChC,WAAAD,IAAKC,IAAK,EAAEF,IAAKD,IAAK,QACfO;AAAA,EACT;AACF;AAEA,SAASF,EAAYG,GAAGC,GAAG;AACzB,EAAID,IAAIR,MAAIA,IAAKQ,IACbA,IAAIN,MAAIA,IAAKM,IACbC,IAAIR,MAAIA,IAAKQ,IACbA,IAAIN,MAAIA,IAAKM;AACnB;","x_google_ignoreList":[0]}
@@ -1,19 +1,73 @@
1
- import r from "./index.es270.js";
2
- var o = 1 / 0, f = o, t = -o, a = t, d = {
3
- point: u,
4
- lineStart: r,
5
- lineEnd: r,
6
- polygonStart: r,
7
- polygonEnd: r,
8
- result: function() {
9
- var n = [[o, f], [t, a]];
10
- return t = a = -(f = o = 1 / 0), n;
11
- }
12
- };
13
- function u(n, i) {
14
- n < o && (o = n), n > t && (t = n), i < f && (f = i), i > a && (a = i);
1
+ import A from "./index.es257.js";
2
+ import D from "./index.es259.js";
3
+ import { halfPi as S, epsilon as R } from "./index.es255.js";
4
+ import F from "./index.es202.js";
5
+ import "./index.es201.js";
6
+ import G from "./index.es260.js";
7
+ function T(e, p, m, v) {
8
+ return function(g, n) {
9
+ var d = p(n), j = g.invert(v[0], v[1]), h = A(), c = p(h), l = !1, a, f, u, r = {
10
+ point: y,
11
+ lineStart: x,
12
+ lineEnd: s,
13
+ polygonStart: function() {
14
+ r.point = B, r.lineStart = w, r.lineEnd = z, f = [], a = [];
15
+ },
16
+ polygonEnd: function() {
17
+ r.point = y, r.lineStart = x, r.lineEnd = s, f = G(f);
18
+ var o = F(a, j);
19
+ f.length ? (l || (n.polygonStart(), l = !0), D(f, J, o, m, n)) : o && (l || (n.polygonStart(), l = !0), n.lineStart(), m(null, null, 1, n), n.lineEnd()), l && (n.polygonEnd(), l = !1), f = a = null;
20
+ },
21
+ sphere: function() {
22
+ n.polygonStart(), n.lineStart(), m(null, null, 1, n), n.lineEnd(), n.polygonEnd();
23
+ }
24
+ };
25
+ function y(o, t) {
26
+ var i = g(o, t);
27
+ e(o = i[0], t = i[1]) && n.point(o, t);
28
+ }
29
+ function q(o, t) {
30
+ var i = g(o, t);
31
+ d.point(i[0], i[1]);
32
+ }
33
+ function x() {
34
+ r.point = q, d.lineStart();
35
+ }
36
+ function s() {
37
+ r.point = y, d.lineEnd();
38
+ }
39
+ function B(o, t) {
40
+ u.push([o, t]);
41
+ var i = g(o, t);
42
+ c.point(i[0], i[1]);
43
+ }
44
+ function w() {
45
+ c.lineStart(), u = [];
46
+ }
47
+ function z() {
48
+ B(u[0][0], u[0][1]), c.lineEnd();
49
+ var o = c.clean(), t = h.result(), i, I = t.length, P, E, C;
50
+ if (u.pop(), a.push(u), u = null, !!I) {
51
+ if (o & 1) {
52
+ if (E = t[0], (P = E.length - 1) > 0) {
53
+ for (l || (n.polygonStart(), l = !0), n.lineStart(), i = 0; i < P; ++i) n.point((C = E[i])[0], C[1]);
54
+ n.lineEnd();
55
+ }
56
+ return;
57
+ }
58
+ I > 1 && o & 2 && t.push(t.pop().concat(t.shift())), f.push(t.filter(H));
59
+ }
60
+ }
61
+ return r;
62
+ };
63
+ }
64
+ function H(e) {
65
+ return e.length > 1;
66
+ }
67
+ function J(e, p) {
68
+ return ((e = e.x)[0] < 0 ? e[1] - S - R : S - e[1]) - ((p = p.x)[0] < 0 ? p[1] - S - R : S - p[1]);
15
69
  }
16
70
  export {
17
- d as default
71
+ T as default
18
72
  };
19
73
  //# sourceMappingURL=index.es271.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es271.js","sources":["../../../node_modules/d3-geo/src/path/bounds.js"],"sourcesContent":["import noop from \"../noop\";\n\nvar x0 = Infinity,\n y0 = x0,\n x1 = -x0,\n y1 = x1;\n\nvar boundsStream = {\n point: boundsPoint,\n lineStart: noop,\n lineEnd: noop,\n polygonStart: noop,\n polygonEnd: noop,\n result: function() {\n var bounds = [[x0, y0], [x1, y1]];\n x1 = y1 = -(y0 = x0 = Infinity);\n return bounds;\n }\n};\n\nfunction boundsPoint(x, y) {\n if (x < x0) x0 = x;\n if (x > x1) x1 = x;\n if (y < y0) y0 = y;\n if (y > y1) y1 = y;\n}\n\nexport default boundsStream;\n"],"names":["x0","y0","x1","y1","boundsStream","boundsPoint","noop","bounds","x","y"],"mappings":";AAEA,IAAIA,IAAK,OACLC,IAAKD,GACLE,IAAK,CAACF,GACNG,IAAKD,GAELE,IAAe;AAAA,EACjB,OAAOC;AAAA,EACP,WAAWC;AAAA,EACX,SAASA;AAAA,EACT,cAAcA;AAAA,EACd,YAAYA;AAAA,EACZ,QAAQ,WAAW;AACjB,QAAIC,IAAS,CAAC,CAACP,GAAIC,CAAE,GAAG,CAACC,GAAIC,CAAE,CAAC;AAChC,WAAAD,IAAKC,IAAK,EAAEF,IAAKD,IAAK,QACfO;AAAA,EACT;AACF;AAEA,SAASF,EAAYG,GAAGC,GAAG;AACzB,EAAID,IAAIR,MAAIA,IAAKQ,IACbA,IAAIN,MAAIA,IAAKM,IACbC,IAAIR,MAAIA,IAAKQ,IACbA,IAAIN,MAAIA,IAAKM;AACnB;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es271.js","sources":["../../../node_modules/d3-geo/src/clip/index.js"],"sourcesContent":["import clipBuffer from \"./buffer\";\nimport clipPolygon from \"./polygon\";\nimport {epsilon, halfPi} from \"../math\";\nimport polygonContains from \"../polygonContains\";\nimport {merge} from \"d3-array\";\n\nexport default function(pointVisible, clipLine, interpolate, start) {\n return function(rotate, sink) {\n var line = clipLine(sink),\n rotatedStart = rotate.invert(start[0], start[1]),\n ringBuffer = clipBuffer(),\n ringSink = clipLine(ringBuffer),\n polygonStarted = false,\n polygon,\n segments,\n ring;\n\n var clip = {\n point: point,\n lineStart: lineStart,\n lineEnd: lineEnd,\n polygonStart: function() {\n clip.point = pointRing;\n clip.lineStart = ringStart;\n clip.lineEnd = ringEnd;\n segments = [];\n polygon = [];\n },\n polygonEnd: function() {\n clip.point = point;\n clip.lineStart = lineStart;\n clip.lineEnd = lineEnd;\n segments = merge(segments);\n var startInside = polygonContains(polygon, rotatedStart);\n if (segments.length) {\n if (!polygonStarted) sink.polygonStart(), polygonStarted = true;\n clipPolygon(segments, compareIntersection, startInside, interpolate, sink);\n } else if (startInside) {\n if (!polygonStarted) sink.polygonStart(), polygonStarted = true;\n sink.lineStart();\n interpolate(null, null, 1, sink);\n sink.lineEnd();\n }\n if (polygonStarted) sink.polygonEnd(), polygonStarted = false;\n segments = polygon = null;\n },\n sphere: function() {\n sink.polygonStart();\n sink.lineStart();\n interpolate(null, null, 1, sink);\n sink.lineEnd();\n sink.polygonEnd();\n }\n };\n\n function point(lambda, phi) {\n var point = rotate(lambda, phi);\n if (pointVisible(lambda = point[0], phi = point[1])) sink.point(lambda, phi);\n }\n\n function pointLine(lambda, phi) {\n var point = rotate(lambda, phi);\n line.point(point[0], point[1]);\n }\n\n function lineStart() {\n clip.point = pointLine;\n line.lineStart();\n }\n\n function lineEnd() {\n clip.point = point;\n line.lineEnd();\n }\n\n function pointRing(lambda, phi) {\n ring.push([lambda, phi]);\n var point = rotate(lambda, phi);\n ringSink.point(point[0], point[1]);\n }\n\n function ringStart() {\n ringSink.lineStart();\n ring = [];\n }\n\n function ringEnd() {\n pointRing(ring[0][0], ring[0][1]);\n ringSink.lineEnd();\n\n var clean = ringSink.clean(),\n ringSegments = ringBuffer.result(),\n i, n = ringSegments.length, m,\n segment,\n point;\n\n ring.pop();\n polygon.push(ring);\n ring = null;\n\n if (!n) return;\n\n // No intersections.\n if (clean & 1) {\n segment = ringSegments[0];\n if ((m = segment.length - 1) > 0) {\n if (!polygonStarted) sink.polygonStart(), polygonStarted = true;\n sink.lineStart();\n for (i = 0; i < m; ++i) sink.point((point = segment[i])[0], point[1]);\n sink.lineEnd();\n }\n return;\n }\n\n // Rejoin connected segments.\n // TODO reuse ringBuffer.rejoin()?\n if (n > 1 && clean & 2) ringSegments.push(ringSegments.pop().concat(ringSegments.shift()));\n\n segments.push(ringSegments.filter(validSegment));\n }\n\n return clip;\n };\n}\n\nfunction validSegment(segment) {\n return segment.length > 1;\n}\n\n// Intersections are sorted along the clip edge. For both antimeridian cutting\n// and circle clipping, the same comparison is used.\nfunction compareIntersection(a, b) {\n return ((a = a.x)[0] < 0 ? a[1] - halfPi - epsilon : halfPi - a[1])\n - ((b = b.x)[0] < 0 ? b[1] - halfPi - epsilon : halfPi - b[1]);\n}\n"],"names":["clip","pointVisible","clipLine","interpolate","start","rotate","sink","line","rotatedStart","ringBuffer","clipBuffer","ringSink","polygonStarted","polygon","segments","ring","point","lineStart","lineEnd","pointRing","ringStart","ringEnd","merge","startInside","polygonContains","clipPolygon","compareIntersection","lambda","phi","pointLine","clean","ringSegments","n","m","segment","validSegment","a","b","halfPi","epsilon"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,73 +1,6 @@
1
- import A from "./index.es257.js";
2
- import D from "./index.es259.js";
3
- import { halfPi as S, epsilon as R } from "./index.es255.js";
4
- import F from "./index.es202.js";
5
- import "./index.es201.js";
6
- import G from "./index.es260.js";
7
- function T(e, p, m, v) {
8
- return function(g, n) {
9
- var d = p(n), j = g.invert(v[0], v[1]), h = A(), c = p(h), l = !1, a, f, u, r = {
10
- point: y,
11
- lineStart: x,
12
- lineEnd: s,
13
- polygonStart: function() {
14
- r.point = B, r.lineStart = w, r.lineEnd = z, f = [], a = [];
15
- },
16
- polygonEnd: function() {
17
- r.point = y, r.lineStart = x, r.lineEnd = s, f = G(f);
18
- var o = F(a, j);
19
- f.length ? (l || (n.polygonStart(), l = !0), D(f, J, o, m, n)) : o && (l || (n.polygonStart(), l = !0), n.lineStart(), m(null, null, 1, n), n.lineEnd()), l && (n.polygonEnd(), l = !1), f = a = null;
20
- },
21
- sphere: function() {
22
- n.polygonStart(), n.lineStart(), m(null, null, 1, n), n.lineEnd(), n.polygonEnd();
23
- }
24
- };
25
- function y(o, t) {
26
- var i = g(o, t);
27
- e(o = i[0], t = i[1]) && n.point(o, t);
28
- }
29
- function q(o, t) {
30
- var i = g(o, t);
31
- d.point(i[0], i[1]);
32
- }
33
- function x() {
34
- r.point = q, d.lineStart();
35
- }
36
- function s() {
37
- r.point = y, d.lineEnd();
38
- }
39
- function B(o, t) {
40
- u.push([o, t]);
41
- var i = g(o, t);
42
- c.point(i[0], i[1]);
43
- }
44
- function w() {
45
- c.lineStart(), u = [];
46
- }
47
- function z() {
48
- B(u[0][0], u[0][1]), c.lineEnd();
49
- var o = c.clean(), t = h.result(), i, I = t.length, P, E, C;
50
- if (u.pop(), a.push(u), u = null, !!I) {
51
- if (o & 1) {
52
- if (E = t[0], (P = E.length - 1) > 0) {
53
- for (l || (n.polygonStart(), l = !0), n.lineStart(), i = 0; i < P; ++i) n.point((C = E[i])[0], C[1]);
54
- n.lineEnd();
55
- }
56
- return;
57
- }
58
- I > 1 && o & 2 && t.push(t.pop().concat(t.shift())), f.push(t.filter(H));
59
- }
60
- }
61
- return r;
62
- };
63
- }
64
- function H(e) {
65
- return e.length > 1;
66
- }
67
- function J(e, p) {
68
- return ((e = e.x)[0] < 0 ? e[1] - S - R : S - e[1]) - ((p = p.x)[0] < 0 ? p[1] - S - R : S - p[1]);
1
+ function o() {
69
2
  }
70
3
  export {
71
- T as default
4
+ o as default
72
5
  };
73
6
  //# sourceMappingURL=index.es273.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es273.js","sources":["../../../node_modules/d3-geo/src/clip/index.js"],"sourcesContent":["import clipBuffer from \"./buffer\";\nimport clipPolygon from \"./polygon\";\nimport {epsilon, halfPi} from \"../math\";\nimport polygonContains from \"../polygonContains\";\nimport {merge} from \"d3-array\";\n\nexport default function(pointVisible, clipLine, interpolate, start) {\n return function(rotate, sink) {\n var line = clipLine(sink),\n rotatedStart = rotate.invert(start[0], start[1]),\n ringBuffer = clipBuffer(),\n ringSink = clipLine(ringBuffer),\n polygonStarted = false,\n polygon,\n segments,\n ring;\n\n var clip = {\n point: point,\n lineStart: lineStart,\n lineEnd: lineEnd,\n polygonStart: function() {\n clip.point = pointRing;\n clip.lineStart = ringStart;\n clip.lineEnd = ringEnd;\n segments = [];\n polygon = [];\n },\n polygonEnd: function() {\n clip.point = point;\n clip.lineStart = lineStart;\n clip.lineEnd = lineEnd;\n segments = merge(segments);\n var startInside = polygonContains(polygon, rotatedStart);\n if (segments.length) {\n if (!polygonStarted) sink.polygonStart(), polygonStarted = true;\n clipPolygon(segments, compareIntersection, startInside, interpolate, sink);\n } else if (startInside) {\n if (!polygonStarted) sink.polygonStart(), polygonStarted = true;\n sink.lineStart();\n interpolate(null, null, 1, sink);\n sink.lineEnd();\n }\n if (polygonStarted) sink.polygonEnd(), polygonStarted = false;\n segments = polygon = null;\n },\n sphere: function() {\n sink.polygonStart();\n sink.lineStart();\n interpolate(null, null, 1, sink);\n sink.lineEnd();\n sink.polygonEnd();\n }\n };\n\n function point(lambda, phi) {\n var point = rotate(lambda, phi);\n if (pointVisible(lambda = point[0], phi = point[1])) sink.point(lambda, phi);\n }\n\n function pointLine(lambda, phi) {\n var point = rotate(lambda, phi);\n line.point(point[0], point[1]);\n }\n\n function lineStart() {\n clip.point = pointLine;\n line.lineStart();\n }\n\n function lineEnd() {\n clip.point = point;\n line.lineEnd();\n }\n\n function pointRing(lambda, phi) {\n ring.push([lambda, phi]);\n var point = rotate(lambda, phi);\n ringSink.point(point[0], point[1]);\n }\n\n function ringStart() {\n ringSink.lineStart();\n ring = [];\n }\n\n function ringEnd() {\n pointRing(ring[0][0], ring[0][1]);\n ringSink.lineEnd();\n\n var clean = ringSink.clean(),\n ringSegments = ringBuffer.result(),\n i, n = ringSegments.length, m,\n segment,\n point;\n\n ring.pop();\n polygon.push(ring);\n ring = null;\n\n if (!n) return;\n\n // No intersections.\n if (clean & 1) {\n segment = ringSegments[0];\n if ((m = segment.length - 1) > 0) {\n if (!polygonStarted) sink.polygonStart(), polygonStarted = true;\n sink.lineStart();\n for (i = 0; i < m; ++i) sink.point((point = segment[i])[0], point[1]);\n sink.lineEnd();\n }\n return;\n }\n\n // Rejoin connected segments.\n // TODO reuse ringBuffer.rejoin()?\n if (n > 1 && clean & 2) ringSegments.push(ringSegments.pop().concat(ringSegments.shift()));\n\n segments.push(ringSegments.filter(validSegment));\n }\n\n return clip;\n };\n}\n\nfunction validSegment(segment) {\n return segment.length > 1;\n}\n\n// Intersections are sorted along the clip edge. For both antimeridian cutting\n// and circle clipping, the same comparison is used.\nfunction compareIntersection(a, b) {\n return ((a = a.x)[0] < 0 ? a[1] - halfPi - epsilon : halfPi - a[1])\n - ((b = b.x)[0] < 0 ? b[1] - halfPi - epsilon : halfPi - b[1]);\n}\n"],"names":["clip","pointVisible","clipLine","interpolate","start","rotate","sink","line","rotatedStart","ringBuffer","clipBuffer","ringSink","polygonStarted","polygon","segments","ring","point","lineStart","lineEnd","pointRing","ringStart","ringEnd","merge","startInside","polygonContains","clipPolygon","compareIntersection","lambda","phi","pointLine","clean","ringSegments","n","m","segment","validSegment","a","b","halfPi","epsilon"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es273.js","sources":["../../../node_modules/d3-geo/src/noop.js"],"sourcesContent":["export default function noop() {}\n"],"names":["noop"],"mappings":"AAAA,SAAwBA,IAAO;AAAC;","x_google_ignoreList":[0]}
@@ -1,5 +1,5 @@
1
- import { getDefaultExportFromCjs as r } from "./index.es86.js";
2
- import { __require as o } from "./index.es85.js";
1
+ import { getDefaultExportFromCjs as r } from "./index.es84.js";
2
+ import { __require as o } from "./index.es83.js";
3
3
  var a = o();
4
4
  const p = /* @__PURE__ */ r(a);
5
5
  export {
@@ -1,5 +1,5 @@
1
- import { getDefaultExportFromCjs as f } from "./index.es86.js";
2
- import { __require as n } from "./index.es83.js";
1
+ import { getDefaultExportFromCjs as f } from "./index.es84.js";
2
+ import { __require as n } from "./index.es86.js";
3
3
  function s(t, i) {
4
4
  for (var o = 0; o < i.length; o++) {
5
5
  const e = i[o];