@performant-software/geospatial 3.1.18-beta.6 → 3.1.18-beta.7

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 (140) hide show
  1. package/dist/index.cjs189.js +1 -1
  2. package/dist/index.cjs189.js.map +1 -1
  3. package/dist/index.cjs190.js +1 -1
  4. package/dist/index.cjs190.js.map +1 -1
  5. package/dist/index.cjs191.js +1 -1
  6. package/dist/index.cjs191.js.map +1 -1
  7. package/dist/index.cjs192.js +1 -1
  8. package/dist/index.cjs192.js.map +1 -1
  9. package/dist/index.cjs193.js +1 -1
  10. package/dist/index.cjs193.js.map +1 -1
  11. package/dist/index.cjs194.js +1 -1
  12. package/dist/index.cjs194.js.map +1 -1
  13. package/dist/index.cjs195.js +1 -1
  14. package/dist/index.cjs195.js.map +1 -1
  15. package/dist/index.cjs196.js +1 -1
  16. package/dist/index.cjs196.js.map +1 -1
  17. package/dist/index.cjs197.js +1 -1
  18. package/dist/index.cjs197.js.map +1 -1
  19. package/dist/index.cjs198.js +1 -1
  20. package/dist/index.cjs198.js.map +1 -1
  21. package/dist/index.cjs199.js +1 -1
  22. package/dist/index.cjs199.js.map +1 -1
  23. package/dist/index.cjs200.js +1 -1
  24. package/dist/index.cjs200.js.map +1 -1
  25. package/dist/index.cjs201.js +1 -1
  26. package/dist/index.cjs201.js.map +1 -1
  27. package/dist/index.cjs202.js +1 -1
  28. package/dist/index.cjs202.js.map +1 -1
  29. package/dist/index.cjs203.js +1 -1
  30. package/dist/index.cjs203.js.map +1 -1
  31. package/dist/index.cjs204.js +1 -1
  32. package/dist/index.cjs204.js.map +1 -1
  33. package/dist/index.cjs215.js +1 -1
  34. package/dist/index.cjs235.js +1 -1
  35. package/dist/index.cjs244.js +1 -1
  36. package/dist/index.cjs244.js.map +1 -1
  37. package/dist/index.cjs246.js +1 -1
  38. package/dist/index.cjs246.js.map +1 -1
  39. package/dist/index.cjs248.js +1 -1
  40. package/dist/index.cjs251.js +1 -1
  41. package/dist/index.cjs252.js +1 -1
  42. package/dist/index.cjs257.js +1 -1
  43. package/dist/index.cjs262.js +1 -1
  44. package/dist/index.cjs263.js +1 -1
  45. package/dist/index.cjs265.js +1 -1
  46. package/dist/index.cjs265.js.map +1 -1
  47. package/dist/index.cjs266.js +1 -1
  48. package/dist/index.cjs266.js.map +1 -1
  49. package/dist/index.cjs268.js +1 -1
  50. package/dist/index.cjs29.js +1 -1
  51. package/dist/index.cjs32.js +1 -1
  52. package/dist/index.cjs34.js +1 -1
  53. package/dist/index.cjs35.js +1 -1
  54. package/dist/index.cjs39.js +1 -1
  55. package/dist/index.cjs69.js +1 -1
  56. package/dist/index.cjs71.js +1 -1
  57. package/dist/index.cjs77.js +743 -1
  58. package/dist/index.cjs77.js.map +1 -1
  59. package/dist/index.cjs78.js +1 -1
  60. package/dist/index.cjs78.js.map +1 -1
  61. package/dist/index.cjs79.js +1 -1
  62. package/dist/index.cjs79.js.map +1 -1
  63. package/dist/index.cjs80.js +1 -1
  64. package/dist/index.cjs80.js.map +1 -1
  65. package/dist/index.cjs81.js +1 -1
  66. package/dist/index.cjs81.js.map +1 -1
  67. package/dist/index.cjs82.js +1 -743
  68. package/dist/index.cjs82.js.map +1 -1
  69. package/dist/index.cjs84.js +1 -1
  70. package/dist/index.es189.js +146 -12
  71. package/dist/index.es189.js.map +1 -1
  72. package/dist/index.es190.js +6 -147
  73. package/dist/index.es190.js.map +1 -1
  74. package/dist/index.es191.js +5 -7
  75. package/dist/index.es191.js.map +1 -1
  76. package/dist/index.es192.js +3 -7
  77. package/dist/index.es192.js.map +1 -1
  78. package/dist/index.es193.js +1 -1
  79. package/dist/index.es193.js.map +1 -1
  80. package/dist/index.es194.js +38 -3
  81. package/dist/index.es194.js.map +1 -1
  82. package/dist/index.es195.js +3 -38
  83. package/dist/index.es195.js.map +1 -1
  84. package/dist/index.es196.js +25 -3
  85. package/dist/index.es196.js.map +1 -1
  86. package/dist/index.es197.js +2 -25
  87. package/dist/index.es197.js.map +1 -1
  88. package/dist/index.es198.js +1 -0
  89. package/dist/index.es198.js.map +1 -1
  90. package/dist/index.es199.js +0 -1
  91. package/dist/index.es199.js.map +1 -1
  92. package/dist/index.es200.js +33 -2
  93. package/dist/index.es200.js.map +1 -1
  94. package/dist/index.es201.js +13 -31
  95. package/dist/index.es201.js.map +1 -1
  96. package/dist/index.es202.js +12 -11
  97. package/dist/index.es202.js.map +1 -1
  98. package/dist/index.es203.js +8 -13
  99. package/dist/index.es203.js.map +1 -1
  100. package/dist/index.es204.js +13 -8
  101. package/dist/index.es204.js.map +1 -1
  102. package/dist/index.es215.js +1 -1
  103. package/dist/index.es235.js +1 -1
  104. package/dist/index.es244.js +8 -3
  105. package/dist/index.es244.js.map +1 -1
  106. package/dist/index.es246.js +3 -8
  107. package/dist/index.es246.js.map +1 -1
  108. package/dist/index.es248.js +1 -1
  109. package/dist/index.es251.js +1 -1
  110. package/dist/index.es252.js +1 -1
  111. package/dist/index.es257.js +2 -2
  112. package/dist/index.es262.js +1 -1
  113. package/dist/index.es263.js +1 -1
  114. package/dist/index.es265.js +2 -15
  115. package/dist/index.es265.js.map +1 -1
  116. package/dist/index.es266.js +15 -2
  117. package/dist/index.es266.js.map +1 -1
  118. package/dist/index.es268.js +2 -2
  119. package/dist/index.es29.js +2 -2
  120. package/dist/index.es32.js +2 -2
  121. package/dist/index.es34.js +2 -2
  122. package/dist/index.es35.js +2 -2
  123. package/dist/index.es39.js +1 -1
  124. package/dist/index.es69.js +1 -1
  125. package/dist/index.es71.js +6 -6
  126. package/dist/index.es77.js +21350 -104
  127. package/dist/index.es77.js.map +1 -1
  128. package/dist/index.es78.js +2 -10
  129. package/dist/index.es78.js.map +1 -1
  130. package/dist/index.es79.js +104 -1991
  131. package/dist/index.es79.js.map +1 -1
  132. package/dist/index.es80.js +10 -6
  133. package/dist/index.es80.js.map +1 -1
  134. package/dist/index.es81.js +1993 -2
  135. package/dist/index.es81.js.map +1 -1
  136. package/dist/index.es82.js +5 -21351
  137. package/dist/index.es82.js.map +1 -1
  138. package/dist/index.es83.js +2 -2
  139. package/dist/index.es84.js +1 -1
  140. package/package.json +1 -1
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index.cjs67.js"),l=require("./index.cjs189.js");function T(d,r,c,s={}){const a=l.getCoord(d),h=t.degreesToRadians(a[0]),n=t.degreesToRadians(a[1]),o=t.degreesToRadians(c),e=t.lengthToRadians(r,s.units),i=Math.asin(Math.sin(n)*Math.cos(e)+Math.cos(n)*Math.sin(e)*Math.cos(o)),M=h+Math.atan2(Math.sin(o)*Math.sin(e)*Math.cos(n),Math.cos(e)-Math.sin(n)*Math.sin(i)),g=t.radiansToDegrees(M),u=t.radiansToDegrees(i);return t.point([g,u],s.properties)}exports.destination=T;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index.cjs67.js"),l=require("./index.cjs204.js");function T(d,r,c,s={}){const a=l.getCoord(d),h=t.degreesToRadians(a[0]),n=t.degreesToRadians(a[1]),o=t.degreesToRadians(c),e=t.lengthToRadians(r,s.units),i=Math.asin(Math.sin(n)*Math.cos(e)+Math.cos(n)*Math.sin(e)*Math.cos(o)),M=h+Math.atan2(Math.sin(o)*Math.sin(e)*Math.cos(n),Math.cos(e)-Math.sin(n)*Math.sin(i)),g=t.radiansToDegrees(M),u=t.radiansToDegrees(i);return t.point([g,u],s.properties)}exports.destination=T;
2
2
  //# sourceMappingURL=index.cjs84.js.map
@@ -1,17 +1,151 @@
1
- function e(r) {
2
- if (!r)
3
- throw new Error("coord is required");
4
- if (!Array.isArray(r)) {
5
- if (r.type === "Feature" && r.geometry !== null && r.geometry.type === "Point")
6
- return [...r.geometry.coordinates];
7
- if (r.type === "Point")
8
- return [...r.coordinates];
1
+ function b(e, o, f) {
2
+ if (e !== null)
3
+ for (var r, i, a, u, c, t, s, y = 0, l = 0, h, p = e.type, C = p === "FeatureCollection", G = p === "Feature", w = C ? e.features.length : 1, P = 0; P < w; P++) {
4
+ s = C ? e.features[P].geometry : G ? e.geometry : e, h = s ? s.type === "GeometryCollection" : !1, c = h ? s.geometries.length : 1;
5
+ for (var M = 0; M < c; M++) {
6
+ var n = 0, g = 0;
7
+ if (u = h ? s.geometries[M] : s, u !== null) {
8
+ t = u.coordinates;
9
+ var v = u.type;
10
+ switch (y = 0, v) {
11
+ case null:
12
+ break;
13
+ case "Point":
14
+ if (o(
15
+ t,
16
+ l,
17
+ P,
18
+ n,
19
+ g
20
+ ) === !1)
21
+ return !1;
22
+ l++, n++;
23
+ break;
24
+ case "LineString":
25
+ case "MultiPoint":
26
+ for (r = 0; r < t.length; r++) {
27
+ if (o(
28
+ t[r],
29
+ l,
30
+ P,
31
+ n,
32
+ g
33
+ ) === !1)
34
+ return !1;
35
+ l++, v === "MultiPoint" && n++;
36
+ }
37
+ v === "LineString" && n++;
38
+ break;
39
+ case "Polygon":
40
+ case "MultiLineString":
41
+ for (r = 0; r < t.length; r++) {
42
+ for (i = 0; i < t[r].length - y; i++) {
43
+ if (o(
44
+ t[r][i],
45
+ l,
46
+ P,
47
+ n,
48
+ g
49
+ ) === !1)
50
+ return !1;
51
+ l++;
52
+ }
53
+ v === "MultiLineString" && n++, v === "Polygon" && g++;
54
+ }
55
+ v === "Polygon" && n++;
56
+ break;
57
+ case "MultiPolygon":
58
+ for (r = 0; r < t.length; r++) {
59
+ for (g = 0, i = 0; i < t[r].length; i++) {
60
+ for (a = 0; a < t[r][i].length - y; a++) {
61
+ if (o(
62
+ t[r][i][a],
63
+ l,
64
+ P,
65
+ n,
66
+ g
67
+ ) === !1)
68
+ return !1;
69
+ l++;
70
+ }
71
+ g++;
72
+ }
73
+ n++;
74
+ }
75
+ break;
76
+ case "GeometryCollection":
77
+ for (r = 0; r < u.geometries.length; r++)
78
+ if (b(u.geometries[r], o) === !1)
79
+ return !1;
80
+ break;
81
+ default:
82
+ throw new Error("Unknown Geometry Type");
83
+ }
84
+ }
85
+ }
86
+ }
87
+ }
88
+ function S(e, o) {
89
+ if (e.type === "Feature")
90
+ o(e, 0);
91
+ else if (e.type === "FeatureCollection")
92
+ for (var f = 0; f < e.features.length && o(e.features[f], f) !== !1; f++)
93
+ ;
94
+ }
95
+ function k(e, o) {
96
+ var f, r, i, a, u, c, t, s, y, l, h = 0, p = e.type === "FeatureCollection", C = e.type === "Feature", G = p ? e.features.length : 1;
97
+ for (f = 0; f < G; f++) {
98
+ for (c = p ? e.features[f].geometry : C ? e.geometry : e, s = p ? e.features[f].properties : C ? e.properties : {}, y = p ? e.features[f].bbox : C ? e.bbox : void 0, l = p ? e.features[f].id : C ? e.id : void 0, t = c ? c.type === "GeometryCollection" : !1, u = t ? c.geometries.length : 1, i = 0; i < u; i++) {
99
+ if (a = t ? c.geometries[i] : c, a === null) {
100
+ if (o(
101
+ null,
102
+ h,
103
+ s,
104
+ y,
105
+ l
106
+ ) === !1)
107
+ return !1;
108
+ continue;
109
+ }
110
+ switch (a.type) {
111
+ case "Point":
112
+ case "LineString":
113
+ case "MultiPoint":
114
+ case "Polygon":
115
+ case "MultiLineString":
116
+ case "MultiPolygon": {
117
+ if (o(
118
+ a,
119
+ h,
120
+ s,
121
+ y,
122
+ l
123
+ ) === !1)
124
+ return !1;
125
+ break;
126
+ }
127
+ case "GeometryCollection": {
128
+ for (r = 0; r < a.geometries.length; r++)
129
+ if (o(
130
+ a.geometries[r],
131
+ h,
132
+ s,
133
+ y,
134
+ l
135
+ ) === !1)
136
+ return !1;
137
+ break;
138
+ }
139
+ default:
140
+ throw new Error("Unknown Geometry Type");
141
+ }
142
+ }
143
+ h++;
9
144
  }
10
- if (Array.isArray(r) && r.length >= 2 && !Array.isArray(r[0]) && !Array.isArray(r[1]))
11
- return [...r];
12
- throw new Error("coord must be GeoJSON Point or an Array of numbers");
13
145
  }
14
146
  export {
15
- e as getCoord
147
+ b as coordEach,
148
+ S as featureEach,
149
+ k as geomEach
16
150
  };
17
151
  //# sourceMappingURL=index.es189.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es189.js","sources":["../../../node_modules/@turf/invariant/dist/esm/index.js"],"sourcesContent":["// index.ts\nimport { isNumber } from \"@turf/helpers\";\nfunction getCoord(coord) {\n if (!coord) {\n throw new Error(\"coord is required\");\n }\n if (!Array.isArray(coord)) {\n if (coord.type === \"Feature\" && coord.geometry !== null && coord.geometry.type === \"Point\") {\n return [...coord.geometry.coordinates];\n }\n if (coord.type === \"Point\") {\n return [...coord.coordinates];\n }\n }\n if (Array.isArray(coord) && coord.length >= 2 && !Array.isArray(coord[0]) && !Array.isArray(coord[1])) {\n return [...coord];\n }\n throw new Error(\"coord must be GeoJSON Point or an Array of numbers\");\n}\nfunction getCoords(coords) {\n if (Array.isArray(coords)) {\n return coords;\n }\n if (coords.type === \"Feature\") {\n if (coords.geometry !== null) {\n return coords.geometry.coordinates;\n }\n } else {\n if (coords.coordinates) {\n return coords.coordinates;\n }\n }\n throw new Error(\n \"coords must be GeoJSON Feature, Geometry Object or an Array\"\n );\n}\nfunction containsNumber(coordinates) {\n if (coordinates.length > 1 && isNumber(coordinates[0]) && isNumber(coordinates[1])) {\n return true;\n }\n if (Array.isArray(coordinates[0]) && coordinates[0].length) {\n return containsNumber(coordinates[0]);\n }\n throw new Error(\"coordinates must only contain numbers\");\n}\nfunction geojsonType(value, type, name) {\n if (!type || !name) {\n throw new Error(\"type and name required\");\n }\n if (!value || value.type !== type) {\n throw new Error(\n \"Invalid input to \" + name + \": must be a \" + type + \", given \" + value.type\n );\n }\n}\nfunction featureOf(feature, type, name) {\n if (!feature) {\n throw new Error(\"No feature passed\");\n }\n if (!name) {\n throw new Error(\".featureOf() requires a name\");\n }\n if (!feature || feature.type !== \"Feature\" || !feature.geometry) {\n throw new Error(\n \"Invalid input to \" + name + \", Feature with geometry required\"\n );\n }\n if (!feature.geometry || feature.geometry.type !== type) {\n throw new Error(\n \"Invalid input to \" + name + \": must be a \" + type + \", given \" + feature.geometry.type\n );\n }\n}\nfunction collectionOf(featureCollection, type, name) {\n if (!featureCollection) {\n throw new Error(\"No featureCollection passed\");\n }\n if (!name) {\n throw new Error(\".collectionOf() requires a name\");\n }\n if (!featureCollection || featureCollection.type !== \"FeatureCollection\") {\n throw new Error(\n \"Invalid input to \" + name + \", FeatureCollection required\"\n );\n }\n for (const feature of featureCollection.features) {\n if (!feature || feature.type !== \"Feature\" || !feature.geometry) {\n throw new Error(\n \"Invalid input to \" + name + \", Feature with geometry required\"\n );\n }\n if (!feature.geometry || feature.geometry.type !== type) {\n throw new Error(\n \"Invalid input to \" + name + \": must be a \" + type + \", given \" + feature.geometry.type\n );\n }\n }\n}\nfunction getGeom(geojson) {\n if (geojson.type === \"Feature\") {\n return geojson.geometry;\n }\n return geojson;\n}\nfunction getType(geojson, _name) {\n if (geojson.type === \"FeatureCollection\") {\n return \"FeatureCollection\";\n }\n if (geojson.type === \"GeometryCollection\") {\n return \"GeometryCollection\";\n }\n if (geojson.type === \"Feature\" && geojson.geometry !== null) {\n return geojson.geometry.type;\n }\n return geojson.type;\n}\nexport {\n collectionOf,\n containsNumber,\n featureOf,\n geojsonType,\n getCoord,\n getCoords,\n getGeom,\n getType\n};\n//# sourceMappingURL=index.js.map"],"names":["getCoord","coord"],"mappings":"AAEA,SAASA,EAASC,GAAO;AACvB,MAAI,CAACA;AACH,UAAM,IAAI,MAAM,mBAAmB;AAErC,MAAI,CAAC,MAAM,QAAQA,CAAK,GAAG;AACzB,QAAIA,EAAM,SAAS,aAAaA,EAAM,aAAa,QAAQA,EAAM,SAAS,SAAS;AACjF,aAAO,CAAC,GAAGA,EAAM,SAAS,WAAW;AAEvC,QAAIA,EAAM,SAAS;AACjB,aAAO,CAAC,GAAGA,EAAM,WAAW;AAAA,EAEhC;AACA,MAAI,MAAM,QAAQA,CAAK,KAAKA,EAAM,UAAU,KAAK,CAAC,MAAM,QAAQA,EAAM,CAAC,CAAC,KAAK,CAAC,MAAM,QAAQA,EAAM,CAAC,CAAC;AAClG,WAAO,CAAC,GAAGA,CAAK;AAElB,QAAM,IAAI,MAAM,oDAAoD;AACtE;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es189.js","sources":["../../../node_modules/@turf/meta/dist/esm/index.js"],"sourcesContent":["// index.js\nimport { feature, point, lineString, isObject } from \"@turf/helpers\";\nfunction coordEach(geojson, callback, excludeWrapCoord) {\n if (geojson === null) return;\n var j, k, l, geometry, stopG, coords, geometryMaybeCollection, wrapShrink = 0, coordIndex = 0, isGeometryCollection, type = geojson.type, isFeatureCollection = type === \"FeatureCollection\", isFeature = type === \"Feature\", stop = isFeatureCollection ? geojson.features.length : 1;\n for (var featureIndex = 0; featureIndex < stop; featureIndex++) {\n geometryMaybeCollection = isFeatureCollection ? geojson.features[featureIndex].geometry : isFeature ? geojson.geometry : geojson;\n isGeometryCollection = geometryMaybeCollection ? geometryMaybeCollection.type === \"GeometryCollection\" : false;\n stopG = isGeometryCollection ? geometryMaybeCollection.geometries.length : 1;\n for (var geomIndex = 0; geomIndex < stopG; geomIndex++) {\n var multiFeatureIndex = 0;\n var geometryIndex = 0;\n geometry = isGeometryCollection ? geometryMaybeCollection.geometries[geomIndex] : geometryMaybeCollection;\n if (geometry === null) continue;\n coords = geometry.coordinates;\n var geomType = geometry.type;\n wrapShrink = excludeWrapCoord && (geomType === \"Polygon\" || geomType === \"MultiPolygon\") ? 1 : 0;\n switch (geomType) {\n case null:\n break;\n case \"Point\":\n if (callback(\n coords,\n coordIndex,\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n ) === false)\n return false;\n coordIndex++;\n multiFeatureIndex++;\n break;\n case \"LineString\":\n case \"MultiPoint\":\n for (j = 0; j < coords.length; j++) {\n if (callback(\n coords[j],\n coordIndex,\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n ) === false)\n return false;\n coordIndex++;\n if (geomType === \"MultiPoint\") multiFeatureIndex++;\n }\n if (geomType === \"LineString\") multiFeatureIndex++;\n break;\n case \"Polygon\":\n case \"MultiLineString\":\n for (j = 0; j < coords.length; j++) {\n for (k = 0; k < coords[j].length - wrapShrink; k++) {\n if (callback(\n coords[j][k],\n coordIndex,\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n ) === false)\n return false;\n coordIndex++;\n }\n if (geomType === \"MultiLineString\") multiFeatureIndex++;\n if (geomType === \"Polygon\") geometryIndex++;\n }\n if (geomType === \"Polygon\") multiFeatureIndex++;\n break;\n case \"MultiPolygon\":\n for (j = 0; j < coords.length; j++) {\n geometryIndex = 0;\n for (k = 0; k < coords[j].length; k++) {\n for (l = 0; l < coords[j][k].length - wrapShrink; l++) {\n if (callback(\n coords[j][k][l],\n coordIndex,\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n ) === false)\n return false;\n coordIndex++;\n }\n geometryIndex++;\n }\n multiFeatureIndex++;\n }\n break;\n case \"GeometryCollection\":\n for (j = 0; j < geometry.geometries.length; j++)\n if (coordEach(geometry.geometries[j], callback, excludeWrapCoord) === false)\n return false;\n break;\n default:\n throw new Error(\"Unknown Geometry Type\");\n }\n }\n }\n}\nfunction coordReduce(geojson, callback, initialValue, excludeWrapCoord) {\n var previousValue = initialValue;\n coordEach(\n geojson,\n function(currentCoord, coordIndex, featureIndex, multiFeatureIndex, geometryIndex) {\n if (coordIndex === 0 && initialValue === void 0)\n previousValue = currentCoord;\n else\n previousValue = callback(\n previousValue,\n currentCoord,\n coordIndex,\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n );\n },\n excludeWrapCoord\n );\n return previousValue;\n}\nfunction propEach(geojson, callback) {\n var i;\n switch (geojson.type) {\n case \"FeatureCollection\":\n for (i = 0; i < geojson.features.length; i++) {\n if (callback(geojson.features[i].properties, i) === false) break;\n }\n break;\n case \"Feature\":\n callback(geojson.properties, 0);\n break;\n }\n}\nfunction propReduce(geojson, callback, initialValue) {\n var previousValue = initialValue;\n propEach(geojson, function(currentProperties, featureIndex) {\n if (featureIndex === 0 && initialValue === void 0)\n previousValue = currentProperties;\n else\n previousValue = callback(previousValue, currentProperties, featureIndex);\n });\n return previousValue;\n}\nfunction featureEach(geojson, callback) {\n if (geojson.type === \"Feature\") {\n callback(geojson, 0);\n } else if (geojson.type === \"FeatureCollection\") {\n for (var i = 0; i < geojson.features.length; i++) {\n if (callback(geojson.features[i], i) === false) break;\n }\n }\n}\nfunction featureReduce(geojson, callback, initialValue) {\n var previousValue = initialValue;\n featureEach(geojson, function(currentFeature, featureIndex) {\n if (featureIndex === 0 && initialValue === void 0)\n previousValue = currentFeature;\n else previousValue = callback(previousValue, currentFeature, featureIndex);\n });\n return previousValue;\n}\nfunction coordAll(geojson) {\n var coords = [];\n coordEach(geojson, function(coord) {\n coords.push(coord);\n });\n return coords;\n}\nfunction geomEach(geojson, callback) {\n var i, j, g, geometry, stopG, geometryMaybeCollection, isGeometryCollection, featureProperties, featureBBox, featureId, featureIndex = 0, isFeatureCollection = geojson.type === \"FeatureCollection\", isFeature = geojson.type === \"Feature\", stop = isFeatureCollection ? geojson.features.length : 1;\n for (i = 0; i < stop; i++) {\n geometryMaybeCollection = isFeatureCollection ? geojson.features[i].geometry : isFeature ? geojson.geometry : geojson;\n featureProperties = isFeatureCollection ? geojson.features[i].properties : isFeature ? geojson.properties : {};\n featureBBox = isFeatureCollection ? geojson.features[i].bbox : isFeature ? geojson.bbox : void 0;\n featureId = isFeatureCollection ? geojson.features[i].id : isFeature ? geojson.id : void 0;\n isGeometryCollection = geometryMaybeCollection ? geometryMaybeCollection.type === \"GeometryCollection\" : false;\n stopG = isGeometryCollection ? geometryMaybeCollection.geometries.length : 1;\n for (g = 0; g < stopG; g++) {\n geometry = isGeometryCollection ? geometryMaybeCollection.geometries[g] : geometryMaybeCollection;\n if (geometry === null) {\n if (callback(\n null,\n featureIndex,\n featureProperties,\n featureBBox,\n featureId\n ) === false)\n return false;\n continue;\n }\n switch (geometry.type) {\n case \"Point\":\n case \"LineString\":\n case \"MultiPoint\":\n case \"Polygon\":\n case \"MultiLineString\":\n case \"MultiPolygon\": {\n if (callback(\n geometry,\n featureIndex,\n featureProperties,\n featureBBox,\n featureId\n ) === false)\n return false;\n break;\n }\n case \"GeometryCollection\": {\n for (j = 0; j < geometry.geometries.length; j++) {\n if (callback(\n geometry.geometries[j],\n featureIndex,\n featureProperties,\n featureBBox,\n featureId\n ) === false)\n return false;\n }\n break;\n }\n default:\n throw new Error(\"Unknown Geometry Type\");\n }\n }\n featureIndex++;\n }\n}\nfunction geomReduce(geojson, callback, initialValue) {\n var previousValue = initialValue;\n geomEach(\n geojson,\n function(currentGeometry, featureIndex, featureProperties, featureBBox, featureId) {\n if (featureIndex === 0 && initialValue === void 0)\n previousValue = currentGeometry;\n else\n previousValue = callback(\n previousValue,\n currentGeometry,\n featureIndex,\n featureProperties,\n featureBBox,\n featureId\n );\n }\n );\n return previousValue;\n}\nfunction flattenEach(geojson, callback) {\n geomEach(geojson, function(geometry, featureIndex, properties, bbox, id) {\n var type = geometry === null ? null : geometry.type;\n switch (type) {\n case null:\n case \"Point\":\n case \"LineString\":\n case \"Polygon\":\n if (callback(\n feature(geometry, properties, { bbox, id }),\n featureIndex,\n 0\n ) === false)\n return false;\n return;\n }\n var geomType;\n switch (type) {\n case \"MultiPoint\":\n geomType = \"Point\";\n break;\n case \"MultiLineString\":\n geomType = \"LineString\";\n break;\n case \"MultiPolygon\":\n geomType = \"Polygon\";\n break;\n }\n for (var multiFeatureIndex = 0; multiFeatureIndex < geometry.coordinates.length; multiFeatureIndex++) {\n var coordinate = geometry.coordinates[multiFeatureIndex];\n var geom = {\n type: geomType,\n coordinates: coordinate\n };\n if (callback(feature(geom, properties), featureIndex, multiFeatureIndex) === false)\n return false;\n }\n });\n}\nfunction flattenReduce(geojson, callback, initialValue) {\n var previousValue = initialValue;\n flattenEach(\n geojson,\n function(currentFeature, featureIndex, multiFeatureIndex) {\n if (featureIndex === 0 && multiFeatureIndex === 0 && initialValue === void 0)\n previousValue = currentFeature;\n else\n previousValue = callback(\n previousValue,\n currentFeature,\n featureIndex,\n multiFeatureIndex\n );\n }\n );\n return previousValue;\n}\nfunction segmentEach(geojson, callback) {\n flattenEach(geojson, function(feature2, featureIndex, multiFeatureIndex) {\n var segmentIndex = 0;\n if (!feature2.geometry) return;\n var type = feature2.geometry.type;\n if (type === \"Point\" || type === \"MultiPoint\") return;\n var previousCoords;\n var previousFeatureIndex = 0;\n var previousMultiIndex = 0;\n var prevGeomIndex = 0;\n if (coordEach(\n feature2,\n function(currentCoord, coordIndex, featureIndexCoord, multiPartIndexCoord, geometryIndex) {\n if (previousCoords === void 0 || featureIndex > previousFeatureIndex || multiPartIndexCoord > previousMultiIndex || geometryIndex > prevGeomIndex) {\n previousCoords = currentCoord;\n previousFeatureIndex = featureIndex;\n previousMultiIndex = multiPartIndexCoord;\n prevGeomIndex = geometryIndex;\n segmentIndex = 0;\n return;\n }\n var currentSegment = lineString(\n [previousCoords, currentCoord],\n feature2.properties\n );\n if (callback(\n currentSegment,\n featureIndex,\n multiFeatureIndex,\n geometryIndex,\n segmentIndex\n ) === false)\n return false;\n segmentIndex++;\n previousCoords = currentCoord;\n }\n ) === false)\n return false;\n });\n}\nfunction segmentReduce(geojson, callback, initialValue) {\n var previousValue = initialValue;\n var started = false;\n segmentEach(\n geojson,\n function(currentSegment, featureIndex, multiFeatureIndex, geometryIndex, segmentIndex) {\n if (started === false && initialValue === void 0)\n previousValue = currentSegment;\n else\n previousValue = callback(\n previousValue,\n currentSegment,\n featureIndex,\n multiFeatureIndex,\n geometryIndex,\n segmentIndex\n );\n started = true;\n }\n );\n return previousValue;\n}\nfunction lineEach(geojson, callback) {\n if (!geojson) throw new Error(\"geojson is required\");\n flattenEach(geojson, function(feature2, featureIndex, multiFeatureIndex) {\n if (feature2.geometry === null) return;\n var type = feature2.geometry.type;\n var coords = feature2.geometry.coordinates;\n switch (type) {\n case \"LineString\":\n if (callback(feature2, featureIndex, multiFeatureIndex, 0, 0) === false)\n return false;\n break;\n case \"Polygon\":\n for (var geometryIndex = 0; geometryIndex < coords.length; geometryIndex++) {\n if (callback(\n lineString(coords[geometryIndex], feature2.properties),\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n ) === false)\n return false;\n }\n break;\n }\n });\n}\nfunction lineReduce(geojson, callback, initialValue) {\n var previousValue = initialValue;\n lineEach(\n geojson,\n function(currentLine, featureIndex, multiFeatureIndex, geometryIndex) {\n if (featureIndex === 0 && initialValue === void 0)\n previousValue = currentLine;\n else\n previousValue = callback(\n previousValue,\n currentLine,\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n );\n }\n );\n return previousValue;\n}\nfunction findSegment(geojson, options) {\n options = options || {};\n if (!isObject(options)) throw new Error(\"options is invalid\");\n var featureIndex = options.featureIndex || 0;\n var multiFeatureIndex = options.multiFeatureIndex || 0;\n var geometryIndex = options.geometryIndex || 0;\n var segmentIndex = options.segmentIndex || 0;\n var properties = options.properties;\n var geometry;\n switch (geojson.type) {\n case \"FeatureCollection\":\n if (featureIndex < 0)\n featureIndex = geojson.features.length + featureIndex;\n properties = properties || geojson.features[featureIndex].properties;\n geometry = geojson.features[featureIndex].geometry;\n break;\n case \"Feature\":\n properties = properties || geojson.properties;\n geometry = geojson.geometry;\n break;\n case \"Point\":\n case \"MultiPoint\":\n return null;\n case \"LineString\":\n case \"Polygon\":\n case \"MultiLineString\":\n case \"MultiPolygon\":\n geometry = geojson;\n break;\n default:\n throw new Error(\"geojson is invalid\");\n }\n if (geometry === null) return null;\n var coords = geometry.coordinates;\n switch (geometry.type) {\n case \"Point\":\n case \"MultiPoint\":\n return null;\n case \"LineString\":\n if (segmentIndex < 0) segmentIndex = coords.length + segmentIndex - 1;\n return lineString(\n [coords[segmentIndex], coords[segmentIndex + 1]],\n properties,\n options\n );\n case \"Polygon\":\n if (geometryIndex < 0) geometryIndex = coords.length + geometryIndex;\n if (segmentIndex < 0)\n segmentIndex = coords[geometryIndex].length + segmentIndex - 1;\n return lineString(\n [\n coords[geometryIndex][segmentIndex],\n coords[geometryIndex][segmentIndex + 1]\n ],\n properties,\n options\n );\n case \"MultiLineString\":\n if (multiFeatureIndex < 0)\n multiFeatureIndex = coords.length + multiFeatureIndex;\n if (segmentIndex < 0)\n segmentIndex = coords[multiFeatureIndex].length + segmentIndex - 1;\n return lineString(\n [\n coords[multiFeatureIndex][segmentIndex],\n coords[multiFeatureIndex][segmentIndex + 1]\n ],\n properties,\n options\n );\n case \"MultiPolygon\":\n if (multiFeatureIndex < 0)\n multiFeatureIndex = coords.length + multiFeatureIndex;\n if (geometryIndex < 0)\n geometryIndex = coords[multiFeatureIndex].length + geometryIndex;\n if (segmentIndex < 0)\n segmentIndex = coords[multiFeatureIndex][geometryIndex].length - segmentIndex - 1;\n return lineString(\n [\n coords[multiFeatureIndex][geometryIndex][segmentIndex],\n coords[multiFeatureIndex][geometryIndex][segmentIndex + 1]\n ],\n properties,\n options\n );\n }\n throw new Error(\"geojson is invalid\");\n}\nfunction findPoint(geojson, options) {\n options = options || {};\n if (!isObject(options)) throw new Error(\"options is invalid\");\n var featureIndex = options.featureIndex || 0;\n var multiFeatureIndex = options.multiFeatureIndex || 0;\n var geometryIndex = options.geometryIndex || 0;\n var coordIndex = options.coordIndex || 0;\n var properties = options.properties;\n var geometry;\n switch (geojson.type) {\n case \"FeatureCollection\":\n if (featureIndex < 0)\n featureIndex = geojson.features.length + featureIndex;\n properties = properties || geojson.features[featureIndex].properties;\n geometry = geojson.features[featureIndex].geometry;\n break;\n case \"Feature\":\n properties = properties || geojson.properties;\n geometry = geojson.geometry;\n break;\n case \"Point\":\n case \"MultiPoint\":\n return null;\n case \"LineString\":\n case \"Polygon\":\n case \"MultiLineString\":\n case \"MultiPolygon\":\n geometry = geojson;\n break;\n default:\n throw new Error(\"geojson is invalid\");\n }\n if (geometry === null) return null;\n var coords = geometry.coordinates;\n switch (geometry.type) {\n case \"Point\":\n return point(coords, properties, options);\n case \"MultiPoint\":\n if (multiFeatureIndex < 0)\n multiFeatureIndex = coords.length + multiFeatureIndex;\n return point(coords[multiFeatureIndex], properties, options);\n case \"LineString\":\n if (coordIndex < 0) coordIndex = coords.length + coordIndex;\n return point(coords[coordIndex], properties, options);\n case \"Polygon\":\n if (geometryIndex < 0) geometryIndex = coords.length + geometryIndex;\n if (coordIndex < 0)\n coordIndex = coords[geometryIndex].length + coordIndex;\n return point(coords[geometryIndex][coordIndex], properties, options);\n case \"MultiLineString\":\n if (multiFeatureIndex < 0)\n multiFeatureIndex = coords.length + multiFeatureIndex;\n if (coordIndex < 0)\n coordIndex = coords[multiFeatureIndex].length + coordIndex;\n return point(coords[multiFeatureIndex][coordIndex], properties, options);\n case \"MultiPolygon\":\n if (multiFeatureIndex < 0)\n multiFeatureIndex = coords.length + multiFeatureIndex;\n if (geometryIndex < 0)\n geometryIndex = coords[multiFeatureIndex].length + geometryIndex;\n if (coordIndex < 0)\n coordIndex = coords[multiFeatureIndex][geometryIndex].length - coordIndex;\n return point(\n coords[multiFeatureIndex][geometryIndex][coordIndex],\n properties,\n options\n );\n }\n throw new Error(\"geojson is invalid\");\n}\nexport {\n coordAll,\n coordEach,\n coordReduce,\n featureEach,\n featureReduce,\n findPoint,\n findSegment,\n flattenEach,\n flattenReduce,\n geomEach,\n geomReduce,\n lineEach,\n lineReduce,\n propEach,\n propReduce,\n segmentEach,\n segmentReduce\n};\n//# sourceMappingURL=index.js.map"],"names":["coordEach","geojson","callback","excludeWrapCoord","j","k","l","geometry","stopG","coords","geometryMaybeCollection","wrapShrink","coordIndex","isGeometryCollection","type","isFeatureCollection","isFeature","stop","featureIndex","geomIndex","multiFeatureIndex","geometryIndex","geomType","featureEach","i","geomEach","g","featureProperties","featureBBox","featureId"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,151 +1,10 @@
1
- function b(e, o, f) {
2
- if (e !== null)
3
- for (var r, i, a, u, c, t, s, y = 0, l = 0, h, p = e.type, C = p === "FeatureCollection", G = p === "Feature", w = C ? e.features.length : 1, P = 0; P < w; P++) {
4
- s = C ? e.features[P].geometry : G ? e.geometry : e, h = s ? s.type === "GeometryCollection" : !1, c = h ? s.geometries.length : 1;
5
- for (var M = 0; M < c; M++) {
6
- var n = 0, g = 0;
7
- if (u = h ? s.geometries[M] : s, u !== null) {
8
- t = u.coordinates;
9
- var v = u.type;
10
- switch (y = 0, v) {
11
- case null:
12
- break;
13
- case "Point":
14
- if (o(
15
- t,
16
- l,
17
- P,
18
- n,
19
- g
20
- ) === !1)
21
- return !1;
22
- l++, n++;
23
- break;
24
- case "LineString":
25
- case "MultiPoint":
26
- for (r = 0; r < t.length; r++) {
27
- if (o(
28
- t[r],
29
- l,
30
- P,
31
- n,
32
- g
33
- ) === !1)
34
- return !1;
35
- l++, v === "MultiPoint" && n++;
36
- }
37
- v === "LineString" && n++;
38
- break;
39
- case "Polygon":
40
- case "MultiLineString":
41
- for (r = 0; r < t.length; r++) {
42
- for (i = 0; i < t[r].length - y; i++) {
43
- if (o(
44
- t[r][i],
45
- l,
46
- P,
47
- n,
48
- g
49
- ) === !1)
50
- return !1;
51
- l++;
52
- }
53
- v === "MultiLineString" && n++, v === "Polygon" && g++;
54
- }
55
- v === "Polygon" && n++;
56
- break;
57
- case "MultiPolygon":
58
- for (r = 0; r < t.length; r++) {
59
- for (g = 0, i = 0; i < t[r].length; i++) {
60
- for (a = 0; a < t[r][i].length - y; a++) {
61
- if (o(
62
- t[r][i][a],
63
- l,
64
- P,
65
- n,
66
- g
67
- ) === !1)
68
- return !1;
69
- l++;
70
- }
71
- g++;
72
- }
73
- n++;
74
- }
75
- break;
76
- case "GeometryCollection":
77
- for (r = 0; r < u.geometries.length; r++)
78
- if (b(u.geometries[r], o) === !1)
79
- return !1;
80
- break;
81
- default:
82
- throw new Error("Unknown Geometry Type");
83
- }
84
- }
85
- }
86
- }
87
- }
88
- function S(e, o) {
89
- if (e.type === "Feature")
90
- o(e, 0);
91
- else if (e.type === "FeatureCollection")
92
- for (var f = 0; f < e.features.length && o(e.features[f], f) !== !1; f++)
93
- ;
94
- }
95
- function k(e, o) {
96
- var f, r, i, a, u, c, t, s, y, l, h = 0, p = e.type === "FeatureCollection", C = e.type === "Feature", G = p ? e.features.length : 1;
97
- for (f = 0; f < G; f++) {
98
- for (c = p ? e.features[f].geometry : C ? e.geometry : e, s = p ? e.features[f].properties : C ? e.properties : {}, y = p ? e.features[f].bbox : C ? e.bbox : void 0, l = p ? e.features[f].id : C ? e.id : void 0, t = c ? c.type === "GeometryCollection" : !1, u = t ? c.geometries.length : 1, i = 0; i < u; i++) {
99
- if (a = t ? c.geometries[i] : c, a === null) {
100
- if (o(
101
- null,
102
- h,
103
- s,
104
- y,
105
- l
106
- ) === !1)
107
- return !1;
108
- continue;
109
- }
110
- switch (a.type) {
111
- case "Point":
112
- case "LineString":
113
- case "MultiPoint":
114
- case "Polygon":
115
- case "MultiLineString":
116
- case "MultiPolygon": {
117
- if (o(
118
- a,
119
- h,
120
- s,
121
- y,
122
- l
123
- ) === !1)
124
- return !1;
125
- break;
126
- }
127
- case "GeometryCollection": {
128
- for (r = 0; r < a.geometries.length; r++)
129
- if (o(
130
- a.geometries[r],
131
- h,
132
- s,
133
- y,
134
- l
135
- ) === !1)
136
- return !1;
137
- break;
138
- }
139
- default:
140
- throw new Error("Unknown Geometry Type");
141
- }
142
- }
143
- h++;
144
- }
1
+ import { bbox as c } from "./index.es69.js";
2
+ import { point as p } from "./index.es67.js";
3
+ function x(r, o = {}) {
4
+ const t = c(r), e = (t[0] + t[2]) / 2, n = (t[1] + t[3]) / 2;
5
+ return p([e, n], o.properties, o);
145
6
  }
146
7
  export {
147
- b as coordEach,
148
- S as featureEach,
149
- k as geomEach
8
+ x as center
150
9
  };
151
10
  //# sourceMappingURL=index.es190.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es190.js","sources":["../../../node_modules/@turf/meta/dist/esm/index.js"],"sourcesContent":["// index.js\nimport { feature, point, lineString, isObject } from \"@turf/helpers\";\nfunction coordEach(geojson, callback, excludeWrapCoord) {\n if (geojson === null) return;\n var j, k, l, geometry, stopG, coords, geometryMaybeCollection, wrapShrink = 0, coordIndex = 0, isGeometryCollection, type = geojson.type, isFeatureCollection = type === \"FeatureCollection\", isFeature = type === \"Feature\", stop = isFeatureCollection ? geojson.features.length : 1;\n for (var featureIndex = 0; featureIndex < stop; featureIndex++) {\n geometryMaybeCollection = isFeatureCollection ? geojson.features[featureIndex].geometry : isFeature ? geojson.geometry : geojson;\n isGeometryCollection = geometryMaybeCollection ? geometryMaybeCollection.type === \"GeometryCollection\" : false;\n stopG = isGeometryCollection ? geometryMaybeCollection.geometries.length : 1;\n for (var geomIndex = 0; geomIndex < stopG; geomIndex++) {\n var multiFeatureIndex = 0;\n var geometryIndex = 0;\n geometry = isGeometryCollection ? geometryMaybeCollection.geometries[geomIndex] : geometryMaybeCollection;\n if (geometry === null) continue;\n coords = geometry.coordinates;\n var geomType = geometry.type;\n wrapShrink = excludeWrapCoord && (geomType === \"Polygon\" || geomType === \"MultiPolygon\") ? 1 : 0;\n switch (geomType) {\n case null:\n break;\n case \"Point\":\n if (callback(\n coords,\n coordIndex,\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n ) === false)\n return false;\n coordIndex++;\n multiFeatureIndex++;\n break;\n case \"LineString\":\n case \"MultiPoint\":\n for (j = 0; j < coords.length; j++) {\n if (callback(\n coords[j],\n coordIndex,\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n ) === false)\n return false;\n coordIndex++;\n if (geomType === \"MultiPoint\") multiFeatureIndex++;\n }\n if (geomType === \"LineString\") multiFeatureIndex++;\n break;\n case \"Polygon\":\n case \"MultiLineString\":\n for (j = 0; j < coords.length; j++) {\n for (k = 0; k < coords[j].length - wrapShrink; k++) {\n if (callback(\n coords[j][k],\n coordIndex,\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n ) === false)\n return false;\n coordIndex++;\n }\n if (geomType === \"MultiLineString\") multiFeatureIndex++;\n if (geomType === \"Polygon\") geometryIndex++;\n }\n if (geomType === \"Polygon\") multiFeatureIndex++;\n break;\n case \"MultiPolygon\":\n for (j = 0; j < coords.length; j++) {\n geometryIndex = 0;\n for (k = 0; k < coords[j].length; k++) {\n for (l = 0; l < coords[j][k].length - wrapShrink; l++) {\n if (callback(\n coords[j][k][l],\n coordIndex,\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n ) === false)\n return false;\n coordIndex++;\n }\n geometryIndex++;\n }\n multiFeatureIndex++;\n }\n break;\n case \"GeometryCollection\":\n for (j = 0; j < geometry.geometries.length; j++)\n if (coordEach(geometry.geometries[j], callback, excludeWrapCoord) === false)\n return false;\n break;\n default:\n throw new Error(\"Unknown Geometry Type\");\n }\n }\n }\n}\nfunction coordReduce(geojson, callback, initialValue, excludeWrapCoord) {\n var previousValue = initialValue;\n coordEach(\n geojson,\n function(currentCoord, coordIndex, featureIndex, multiFeatureIndex, geometryIndex) {\n if (coordIndex === 0 && initialValue === void 0)\n previousValue = currentCoord;\n else\n previousValue = callback(\n previousValue,\n currentCoord,\n coordIndex,\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n );\n },\n excludeWrapCoord\n );\n return previousValue;\n}\nfunction propEach(geojson, callback) {\n var i;\n switch (geojson.type) {\n case \"FeatureCollection\":\n for (i = 0; i < geojson.features.length; i++) {\n if (callback(geojson.features[i].properties, i) === false) break;\n }\n break;\n case \"Feature\":\n callback(geojson.properties, 0);\n break;\n }\n}\nfunction propReduce(geojson, callback, initialValue) {\n var previousValue = initialValue;\n propEach(geojson, function(currentProperties, featureIndex) {\n if (featureIndex === 0 && initialValue === void 0)\n previousValue = currentProperties;\n else\n previousValue = callback(previousValue, currentProperties, featureIndex);\n });\n return previousValue;\n}\nfunction featureEach(geojson, callback) {\n if (geojson.type === \"Feature\") {\n callback(geojson, 0);\n } else if (geojson.type === \"FeatureCollection\") {\n for (var i = 0; i < geojson.features.length; i++) {\n if (callback(geojson.features[i], i) === false) break;\n }\n }\n}\nfunction featureReduce(geojson, callback, initialValue) {\n var previousValue = initialValue;\n featureEach(geojson, function(currentFeature, featureIndex) {\n if (featureIndex === 0 && initialValue === void 0)\n previousValue = currentFeature;\n else previousValue = callback(previousValue, currentFeature, featureIndex);\n });\n return previousValue;\n}\nfunction coordAll(geojson) {\n var coords = [];\n coordEach(geojson, function(coord) {\n coords.push(coord);\n });\n return coords;\n}\nfunction geomEach(geojson, callback) {\n var i, j, g, geometry, stopG, geometryMaybeCollection, isGeometryCollection, featureProperties, featureBBox, featureId, featureIndex = 0, isFeatureCollection = geojson.type === \"FeatureCollection\", isFeature = geojson.type === \"Feature\", stop = isFeatureCollection ? geojson.features.length : 1;\n for (i = 0; i < stop; i++) {\n geometryMaybeCollection = isFeatureCollection ? geojson.features[i].geometry : isFeature ? geojson.geometry : geojson;\n featureProperties = isFeatureCollection ? geojson.features[i].properties : isFeature ? geojson.properties : {};\n featureBBox = isFeatureCollection ? geojson.features[i].bbox : isFeature ? geojson.bbox : void 0;\n featureId = isFeatureCollection ? geojson.features[i].id : isFeature ? geojson.id : void 0;\n isGeometryCollection = geometryMaybeCollection ? geometryMaybeCollection.type === \"GeometryCollection\" : false;\n stopG = isGeometryCollection ? geometryMaybeCollection.geometries.length : 1;\n for (g = 0; g < stopG; g++) {\n geometry = isGeometryCollection ? geometryMaybeCollection.geometries[g] : geometryMaybeCollection;\n if (geometry === null) {\n if (callback(\n null,\n featureIndex,\n featureProperties,\n featureBBox,\n featureId\n ) === false)\n return false;\n continue;\n }\n switch (geometry.type) {\n case \"Point\":\n case \"LineString\":\n case \"MultiPoint\":\n case \"Polygon\":\n case \"MultiLineString\":\n case \"MultiPolygon\": {\n if (callback(\n geometry,\n featureIndex,\n featureProperties,\n featureBBox,\n featureId\n ) === false)\n return false;\n break;\n }\n case \"GeometryCollection\": {\n for (j = 0; j < geometry.geometries.length; j++) {\n if (callback(\n geometry.geometries[j],\n featureIndex,\n featureProperties,\n featureBBox,\n featureId\n ) === false)\n return false;\n }\n break;\n }\n default:\n throw new Error(\"Unknown Geometry Type\");\n }\n }\n featureIndex++;\n }\n}\nfunction geomReduce(geojson, callback, initialValue) {\n var previousValue = initialValue;\n geomEach(\n geojson,\n function(currentGeometry, featureIndex, featureProperties, featureBBox, featureId) {\n if (featureIndex === 0 && initialValue === void 0)\n previousValue = currentGeometry;\n else\n previousValue = callback(\n previousValue,\n currentGeometry,\n featureIndex,\n featureProperties,\n featureBBox,\n featureId\n );\n }\n );\n return previousValue;\n}\nfunction flattenEach(geojson, callback) {\n geomEach(geojson, function(geometry, featureIndex, properties, bbox, id) {\n var type = geometry === null ? null : geometry.type;\n switch (type) {\n case null:\n case \"Point\":\n case \"LineString\":\n case \"Polygon\":\n if (callback(\n feature(geometry, properties, { bbox, id }),\n featureIndex,\n 0\n ) === false)\n return false;\n return;\n }\n var geomType;\n switch (type) {\n case \"MultiPoint\":\n geomType = \"Point\";\n break;\n case \"MultiLineString\":\n geomType = \"LineString\";\n break;\n case \"MultiPolygon\":\n geomType = \"Polygon\";\n break;\n }\n for (var multiFeatureIndex = 0; multiFeatureIndex < geometry.coordinates.length; multiFeatureIndex++) {\n var coordinate = geometry.coordinates[multiFeatureIndex];\n var geom = {\n type: geomType,\n coordinates: coordinate\n };\n if (callback(feature(geom, properties), featureIndex, multiFeatureIndex) === false)\n return false;\n }\n });\n}\nfunction flattenReduce(geojson, callback, initialValue) {\n var previousValue = initialValue;\n flattenEach(\n geojson,\n function(currentFeature, featureIndex, multiFeatureIndex) {\n if (featureIndex === 0 && multiFeatureIndex === 0 && initialValue === void 0)\n previousValue = currentFeature;\n else\n previousValue = callback(\n previousValue,\n currentFeature,\n featureIndex,\n multiFeatureIndex\n );\n }\n );\n return previousValue;\n}\nfunction segmentEach(geojson, callback) {\n flattenEach(geojson, function(feature2, featureIndex, multiFeatureIndex) {\n var segmentIndex = 0;\n if (!feature2.geometry) return;\n var type = feature2.geometry.type;\n if (type === \"Point\" || type === \"MultiPoint\") return;\n var previousCoords;\n var previousFeatureIndex = 0;\n var previousMultiIndex = 0;\n var prevGeomIndex = 0;\n if (coordEach(\n feature2,\n function(currentCoord, coordIndex, featureIndexCoord, multiPartIndexCoord, geometryIndex) {\n if (previousCoords === void 0 || featureIndex > previousFeatureIndex || multiPartIndexCoord > previousMultiIndex || geometryIndex > prevGeomIndex) {\n previousCoords = currentCoord;\n previousFeatureIndex = featureIndex;\n previousMultiIndex = multiPartIndexCoord;\n prevGeomIndex = geometryIndex;\n segmentIndex = 0;\n return;\n }\n var currentSegment = lineString(\n [previousCoords, currentCoord],\n feature2.properties\n );\n if (callback(\n currentSegment,\n featureIndex,\n multiFeatureIndex,\n geometryIndex,\n segmentIndex\n ) === false)\n return false;\n segmentIndex++;\n previousCoords = currentCoord;\n }\n ) === false)\n return false;\n });\n}\nfunction segmentReduce(geojson, callback, initialValue) {\n var previousValue = initialValue;\n var started = false;\n segmentEach(\n geojson,\n function(currentSegment, featureIndex, multiFeatureIndex, geometryIndex, segmentIndex) {\n if (started === false && initialValue === void 0)\n previousValue = currentSegment;\n else\n previousValue = callback(\n previousValue,\n currentSegment,\n featureIndex,\n multiFeatureIndex,\n geometryIndex,\n segmentIndex\n );\n started = true;\n }\n );\n return previousValue;\n}\nfunction lineEach(geojson, callback) {\n if (!geojson) throw new Error(\"geojson is required\");\n flattenEach(geojson, function(feature2, featureIndex, multiFeatureIndex) {\n if (feature2.geometry === null) return;\n var type = feature2.geometry.type;\n var coords = feature2.geometry.coordinates;\n switch (type) {\n case \"LineString\":\n if (callback(feature2, featureIndex, multiFeatureIndex, 0, 0) === false)\n return false;\n break;\n case \"Polygon\":\n for (var geometryIndex = 0; geometryIndex < coords.length; geometryIndex++) {\n if (callback(\n lineString(coords[geometryIndex], feature2.properties),\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n ) === false)\n return false;\n }\n break;\n }\n });\n}\nfunction lineReduce(geojson, callback, initialValue) {\n var previousValue = initialValue;\n lineEach(\n geojson,\n function(currentLine, featureIndex, multiFeatureIndex, geometryIndex) {\n if (featureIndex === 0 && initialValue === void 0)\n previousValue = currentLine;\n else\n previousValue = callback(\n previousValue,\n currentLine,\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n );\n }\n );\n return previousValue;\n}\nfunction findSegment(geojson, options) {\n options = options || {};\n if (!isObject(options)) throw new Error(\"options is invalid\");\n var featureIndex = options.featureIndex || 0;\n var multiFeatureIndex = options.multiFeatureIndex || 0;\n var geometryIndex = options.geometryIndex || 0;\n var segmentIndex = options.segmentIndex || 0;\n var properties = options.properties;\n var geometry;\n switch (geojson.type) {\n case \"FeatureCollection\":\n if (featureIndex < 0)\n featureIndex = geojson.features.length + featureIndex;\n properties = properties || geojson.features[featureIndex].properties;\n geometry = geojson.features[featureIndex].geometry;\n break;\n case \"Feature\":\n properties = properties || geojson.properties;\n geometry = geojson.geometry;\n break;\n case \"Point\":\n case \"MultiPoint\":\n return null;\n case \"LineString\":\n case \"Polygon\":\n case \"MultiLineString\":\n case \"MultiPolygon\":\n geometry = geojson;\n break;\n default:\n throw new Error(\"geojson is invalid\");\n }\n if (geometry === null) return null;\n var coords = geometry.coordinates;\n switch (geometry.type) {\n case \"Point\":\n case \"MultiPoint\":\n return null;\n case \"LineString\":\n if (segmentIndex < 0) segmentIndex = coords.length + segmentIndex - 1;\n return lineString(\n [coords[segmentIndex], coords[segmentIndex + 1]],\n properties,\n options\n );\n case \"Polygon\":\n if (geometryIndex < 0) geometryIndex = coords.length + geometryIndex;\n if (segmentIndex < 0)\n segmentIndex = coords[geometryIndex].length + segmentIndex - 1;\n return lineString(\n [\n coords[geometryIndex][segmentIndex],\n coords[geometryIndex][segmentIndex + 1]\n ],\n properties,\n options\n );\n case \"MultiLineString\":\n if (multiFeatureIndex < 0)\n multiFeatureIndex = coords.length + multiFeatureIndex;\n if (segmentIndex < 0)\n segmentIndex = coords[multiFeatureIndex].length + segmentIndex - 1;\n return lineString(\n [\n coords[multiFeatureIndex][segmentIndex],\n coords[multiFeatureIndex][segmentIndex + 1]\n ],\n properties,\n options\n );\n case \"MultiPolygon\":\n if (multiFeatureIndex < 0)\n multiFeatureIndex = coords.length + multiFeatureIndex;\n if (geometryIndex < 0)\n geometryIndex = coords[multiFeatureIndex].length + geometryIndex;\n if (segmentIndex < 0)\n segmentIndex = coords[multiFeatureIndex][geometryIndex].length - segmentIndex - 1;\n return lineString(\n [\n coords[multiFeatureIndex][geometryIndex][segmentIndex],\n coords[multiFeatureIndex][geometryIndex][segmentIndex + 1]\n ],\n properties,\n options\n );\n }\n throw new Error(\"geojson is invalid\");\n}\nfunction findPoint(geojson, options) {\n options = options || {};\n if (!isObject(options)) throw new Error(\"options is invalid\");\n var featureIndex = options.featureIndex || 0;\n var multiFeatureIndex = options.multiFeatureIndex || 0;\n var geometryIndex = options.geometryIndex || 0;\n var coordIndex = options.coordIndex || 0;\n var properties = options.properties;\n var geometry;\n switch (geojson.type) {\n case \"FeatureCollection\":\n if (featureIndex < 0)\n featureIndex = geojson.features.length + featureIndex;\n properties = properties || geojson.features[featureIndex].properties;\n geometry = geojson.features[featureIndex].geometry;\n break;\n case \"Feature\":\n properties = properties || geojson.properties;\n geometry = geojson.geometry;\n break;\n case \"Point\":\n case \"MultiPoint\":\n return null;\n case \"LineString\":\n case \"Polygon\":\n case \"MultiLineString\":\n case \"MultiPolygon\":\n geometry = geojson;\n break;\n default:\n throw new Error(\"geojson is invalid\");\n }\n if (geometry === null) return null;\n var coords = geometry.coordinates;\n switch (geometry.type) {\n case \"Point\":\n return point(coords, properties, options);\n case \"MultiPoint\":\n if (multiFeatureIndex < 0)\n multiFeatureIndex = coords.length + multiFeatureIndex;\n return point(coords[multiFeatureIndex], properties, options);\n case \"LineString\":\n if (coordIndex < 0) coordIndex = coords.length + coordIndex;\n return point(coords[coordIndex], properties, options);\n case \"Polygon\":\n if (geometryIndex < 0) geometryIndex = coords.length + geometryIndex;\n if (coordIndex < 0)\n coordIndex = coords[geometryIndex].length + coordIndex;\n return point(coords[geometryIndex][coordIndex], properties, options);\n case \"MultiLineString\":\n if (multiFeatureIndex < 0)\n multiFeatureIndex = coords.length + multiFeatureIndex;\n if (coordIndex < 0)\n coordIndex = coords[multiFeatureIndex].length + coordIndex;\n return point(coords[multiFeatureIndex][coordIndex], properties, options);\n case \"MultiPolygon\":\n if (multiFeatureIndex < 0)\n multiFeatureIndex = coords.length + multiFeatureIndex;\n if (geometryIndex < 0)\n geometryIndex = coords[multiFeatureIndex].length + geometryIndex;\n if (coordIndex < 0)\n coordIndex = coords[multiFeatureIndex][geometryIndex].length - coordIndex;\n return point(\n coords[multiFeatureIndex][geometryIndex][coordIndex],\n properties,\n options\n );\n }\n throw new Error(\"geojson is invalid\");\n}\nexport {\n coordAll,\n coordEach,\n coordReduce,\n featureEach,\n featureReduce,\n findPoint,\n findSegment,\n flattenEach,\n flattenReduce,\n geomEach,\n geomReduce,\n lineEach,\n lineReduce,\n propEach,\n propReduce,\n segmentEach,\n segmentReduce\n};\n//# sourceMappingURL=index.js.map"],"names":["coordEach","geojson","callback","excludeWrapCoord","j","k","l","geometry","stopG","coords","geometryMaybeCollection","wrapShrink","coordIndex","isGeometryCollection","type","isFeatureCollection","isFeature","stop","featureIndex","geomIndex","multiFeatureIndex","geometryIndex","geomType","featureEach","i","geomEach","g","featureProperties","featureBBox","featureId"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es190.js","sources":["../node_modules/@turf/center/dist/esm/index.js"],"sourcesContent":["// index.ts\nimport { bbox } from \"@turf/bbox\";\nimport { point } from \"@turf/helpers\";\nfunction center(geojson, options = {}) {\n const ext = bbox(geojson);\n const x = (ext[0] + ext[2]) / 2;\n const y = (ext[1] + ext[3]) / 2;\n return point([x, y], options.properties, options);\n}\nvar turf_center_default = center;\nexport {\n center,\n turf_center_default as default\n};\n//# sourceMappingURL=index.js.map"],"names":["center","geojson","options","ext","bbox","x","y","point"],"mappings":";;AAGA,SAASA,EAAOC,GAASC,IAAU,IAAI;AACrC,QAAMC,IAAMC,EAAKH,CAAO,GAClBI,KAAKF,EAAI,CAAC,IAAIA,EAAI,CAAC,KAAK,GACxBG,KAAKH,EAAI,CAAC,IAAIA,EAAI,CAAC,KAAK;AAC9B,SAAOI,EAAM,CAACF,GAAGC,CAAC,GAAGJ,EAAQ,YAAYA,CAAO;AAClD;","x_google_ignoreList":[0]}
@@ -1,10 +1,8 @@
1
- import { bbox as c } from "./index.es69.js";
2
- import { point as p } from "./index.es67.js";
3
- function x(r, o = {}) {
4
- const t = c(r), e = (t[0] + t[2]) / 2, n = (t[1] + t[3]) / 2;
5
- return p([e, n], o.properties, o);
6
- }
1
+ import { getDefaultExportFromCjs as r } from "./index.es82.js";
2
+ import { __require as t } from "./index.es240.js";
3
+ var s = t();
4
+ const m = /* @__PURE__ */ r(s);
7
5
  export {
8
- x as center
6
+ m as default
9
7
  };
10
8
  //# sourceMappingURL=index.es191.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es191.js","sources":["../node_modules/@turf/center/dist/esm/index.js"],"sourcesContent":["// index.ts\nimport { bbox } from \"@turf/bbox\";\nimport { point } from \"@turf/helpers\";\nfunction center(geojson, options = {}) {\n const ext = bbox(geojson);\n const x = (ext[0] + ext[2]) / 2;\n const y = (ext[1] + ext[3]) / 2;\n return point([x, y], options.properties, options);\n}\nvar turf_center_default = center;\nexport {\n center,\n turf_center_default as default\n};\n//# sourceMappingURL=index.js.map"],"names":["center","geojson","options","ext","bbox","x","y","point"],"mappings":";;AAGA,SAASA,EAAOC,GAASC,IAAU,IAAI;AACrC,QAAMC,IAAMC,EAAKH,CAAO,GAClBI,KAAKF,EAAI,CAAC,IAAIA,EAAI,CAAC,KAAK,GACxBG,KAAKH,EAAI,CAAC,IAAIA,EAAI,CAAC,KAAK;AAC9B,SAAOI,EAAM,CAACF,GAAGC,CAAC,GAAGJ,EAAQ,YAAYA,CAAO;AAClD;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es191.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -1,8 +1,4 @@
1
- import { getDefaultExportFromCjs as r } from "./index.es80.js";
2
- import { __require as t } from "./index.es240.js";
3
- var s = t();
4
- const m = /* @__PURE__ */ r(s);
5
- export {
6
- m as default
7
- };
1
+ import r from "./index.es247.js";
2
+ r();
3
+ r();
8
4
  //# sourceMappingURL=index.es192.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es192.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
1
+ {"version":3,"file":"index.es192.js","sources":["../../../node_modules/d3-geo/src/area.js"],"sourcesContent":["import adder from \"./adder\";\nimport {atan2, cos, quarterPi, radians, sin, tau} from \"./math\";\nimport noop from \"./noop\";\nimport stream from \"./stream\";\n\nexport var areaRingSum = adder();\n\nvar areaSum = adder(),\n lambda00,\n phi00,\n lambda0,\n cosPhi0,\n sinPhi0;\n\nexport var areaStream = {\n point: noop,\n lineStart: noop,\n lineEnd: noop,\n polygonStart: function() {\n areaRingSum.reset();\n areaStream.lineStart = areaRingStart;\n areaStream.lineEnd = areaRingEnd;\n },\n polygonEnd: function() {\n var areaRing = +areaRingSum;\n areaSum.add(areaRing < 0 ? tau + areaRing : areaRing);\n this.lineStart = this.lineEnd = this.point = noop;\n },\n sphere: function() {\n areaSum.add(tau);\n }\n};\n\nfunction areaRingStart() {\n areaStream.point = areaPointFirst;\n}\n\nfunction areaRingEnd() {\n areaPoint(lambda00, phi00);\n}\n\nfunction areaPointFirst(lambda, phi) {\n areaStream.point = areaPoint;\n lambda00 = lambda, phi00 = phi;\n lambda *= radians, phi *= radians;\n lambda0 = lambda, cosPhi0 = cos(phi = phi / 2 + quarterPi), sinPhi0 = sin(phi);\n}\n\nfunction areaPoint(lambda, phi) {\n lambda *= radians, phi *= radians;\n phi = phi / 2 + quarterPi; // half the angular distance from south pole\n\n // Spherical excess E for a spherical triangle with vertices: south pole,\n // previous point, current point. Uses a formula derived from Cagnoli’s\n // theorem. See Todhunter, Spherical Trig. (1871), Sec. 103, Eq. (2).\n var dLambda = lambda - lambda0,\n sdLambda = dLambda >= 0 ? 1 : -1,\n adLambda = sdLambda * dLambda,\n cosPhi = cos(phi),\n sinPhi = sin(phi),\n k = sinPhi0 * sinPhi,\n u = cosPhi0 * cosPhi + k * cos(adLambda),\n v = k * sdLambda * sin(adLambda);\n areaRingSum.add(atan2(v, u));\n\n // Advance the previous points.\n lambda0 = lambda, cosPhi0 = cosPhi, sinPhi0 = sinPhi;\n}\n\nexport default function(object) {\n areaSum.reset();\n stream(object, areaStream);\n return areaSum * 2;\n}\n"],"names":["adder"],"mappings":";AAKyBA,EAAA;AAEXA,EAAA;","x_google_ignoreList":[0]}
@@ -1,4 +1,4 @@
1
1
  import r from "./index.es247.js";
2
- r();
2
+ import "./index.es192.js";
3
3
  r();
4
4
  //# sourceMappingURL=index.es193.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es193.js","sources":["../../../node_modules/d3-geo/src/area.js"],"sourcesContent":["import adder from \"./adder\";\nimport {atan2, cos, quarterPi, radians, sin, tau} from \"./math\";\nimport noop from \"./noop\";\nimport stream from \"./stream\";\n\nexport var areaRingSum = adder();\n\nvar areaSum = adder(),\n lambda00,\n phi00,\n lambda0,\n cosPhi0,\n sinPhi0;\n\nexport var areaStream = {\n point: noop,\n lineStart: noop,\n lineEnd: noop,\n polygonStart: function() {\n areaRingSum.reset();\n areaStream.lineStart = areaRingStart;\n areaStream.lineEnd = areaRingEnd;\n },\n polygonEnd: function() {\n var areaRing = +areaRingSum;\n areaSum.add(areaRing < 0 ? tau + areaRing : areaRing);\n this.lineStart = this.lineEnd = this.point = noop;\n },\n sphere: function() {\n areaSum.add(tau);\n }\n};\n\nfunction areaRingStart() {\n areaStream.point = areaPointFirst;\n}\n\nfunction areaRingEnd() {\n areaPoint(lambda00, phi00);\n}\n\nfunction areaPointFirst(lambda, phi) {\n areaStream.point = areaPoint;\n lambda00 = lambda, phi00 = phi;\n lambda *= radians, phi *= radians;\n lambda0 = lambda, cosPhi0 = cos(phi = phi / 2 + quarterPi), sinPhi0 = sin(phi);\n}\n\nfunction areaPoint(lambda, phi) {\n lambda *= radians, phi *= radians;\n phi = phi / 2 + quarterPi; // half the angular distance from south pole\n\n // Spherical excess E for a spherical triangle with vertices: south pole,\n // previous point, current point. Uses a formula derived from Cagnoli’s\n // theorem. See Todhunter, Spherical Trig. (1871), Sec. 103, Eq. (2).\n var dLambda = lambda - lambda0,\n sdLambda = dLambda >= 0 ? 1 : -1,\n adLambda = sdLambda * dLambda,\n cosPhi = cos(phi),\n sinPhi = sin(phi),\n k = sinPhi0 * sinPhi,\n u = cosPhi0 * cosPhi + k * cos(adLambda),\n v = k * sdLambda * sin(adLambda);\n areaRingSum.add(atan2(v, u));\n\n // Advance the previous points.\n lambda0 = lambda, cosPhi0 = cosPhi, sinPhi0 = sinPhi;\n}\n\nexport default function(object) {\n areaSum.reset();\n stream(object, areaStream);\n return areaSum * 2;\n}\n"],"names":["adder"],"mappings":";AAKyBA,EAAA;AAEXA,EAAA;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es193.js","sources":["../../../node_modules/d3-geo/src/bounds.js"],"sourcesContent":["import adder from \"./adder\";\nimport {areaStream, areaRingSum} from \"./area\";\nimport {cartesian, cartesianCross, cartesianNormalizeInPlace, spherical} from \"./cartesian\";\nimport {abs, degrees, epsilon, radians} from \"./math\";\nimport stream from \"./stream\";\n\nvar lambda0, phi0, lambda1, phi1, // bounds\n lambda2, // previous lambda-coordinate\n lambda00, phi00, // first point\n p0, // previous 3D point\n deltaSum = adder(),\n ranges,\n range;\n\nvar boundsStream = {\n point: boundsPoint,\n lineStart: boundsLineStart,\n lineEnd: boundsLineEnd,\n polygonStart: function() {\n boundsStream.point = boundsRingPoint;\n boundsStream.lineStart = boundsRingStart;\n boundsStream.lineEnd = boundsRingEnd;\n deltaSum.reset();\n areaStream.polygonStart();\n },\n polygonEnd: function() {\n areaStream.polygonEnd();\n boundsStream.point = boundsPoint;\n boundsStream.lineStart = boundsLineStart;\n boundsStream.lineEnd = boundsLineEnd;\n if (areaRingSum < 0) lambda0 = -(lambda1 = 180), phi0 = -(phi1 = 90);\n else if (deltaSum > epsilon) phi1 = 90;\n else if (deltaSum < -epsilon) phi0 = -90;\n range[0] = lambda0, range[1] = lambda1;\n }\n};\n\nfunction boundsPoint(lambda, phi) {\n ranges.push(range = [lambda0 = lambda, lambda1 = lambda]);\n if (phi < phi0) phi0 = phi;\n if (phi > phi1) phi1 = phi;\n}\n\nfunction linePoint(lambda, phi) {\n var p = cartesian([lambda * radians, phi * radians]);\n if (p0) {\n var normal = cartesianCross(p0, p),\n equatorial = [normal[1], -normal[0], 0],\n inflection = cartesianCross(equatorial, normal);\n cartesianNormalizeInPlace(inflection);\n inflection = spherical(inflection);\n var delta = lambda - lambda2,\n sign = delta > 0 ? 1 : -1,\n lambdai = inflection[0] * degrees * sign,\n phii,\n antimeridian = abs(delta) > 180;\n if (antimeridian ^ (sign * lambda2 < lambdai && lambdai < sign * lambda)) {\n phii = inflection[1] * degrees;\n if (phii > phi1) phi1 = phii;\n } else if (lambdai = (lambdai + 360) % 360 - 180, antimeridian ^ (sign * lambda2 < lambdai && lambdai < sign * lambda)) {\n phii = -inflection[1] * degrees;\n if (phii < phi0) phi0 = phii;\n } else {\n if (phi < phi0) phi0 = phi;\n if (phi > phi1) phi1 = phi;\n }\n if (antimeridian) {\n if (lambda < lambda2) {\n if (angle(lambda0, lambda) > angle(lambda0, lambda1)) lambda1 = lambda;\n } else {\n if (angle(lambda, lambda1) > angle(lambda0, lambda1)) lambda0 = lambda;\n }\n } else {\n if (lambda1 >= lambda0) {\n if (lambda < lambda0) lambda0 = lambda;\n if (lambda > lambda1) lambda1 = lambda;\n } else {\n if (lambda > lambda2) {\n if (angle(lambda0, lambda) > angle(lambda0, lambda1)) lambda1 = lambda;\n } else {\n if (angle(lambda, lambda1) > angle(lambda0, lambda1)) lambda0 = lambda;\n }\n }\n }\n } else {\n ranges.push(range = [lambda0 = lambda, lambda1 = lambda]);\n }\n if (phi < phi0) phi0 = phi;\n if (phi > phi1) phi1 = phi;\n p0 = p, lambda2 = lambda;\n}\n\nfunction boundsLineStart() {\n boundsStream.point = linePoint;\n}\n\nfunction boundsLineEnd() {\n range[0] = lambda0, range[1] = lambda1;\n boundsStream.point = boundsPoint;\n p0 = null;\n}\n\nfunction boundsRingPoint(lambda, phi) {\n if (p0) {\n var delta = lambda - lambda2;\n deltaSum.add(abs(delta) > 180 ? delta + (delta > 0 ? 360 : -360) : delta);\n } else {\n lambda00 = lambda, phi00 = phi;\n }\n areaStream.point(lambda, phi);\n linePoint(lambda, phi);\n}\n\nfunction boundsRingStart() {\n areaStream.lineStart();\n}\n\nfunction boundsRingEnd() {\n boundsRingPoint(lambda00, phi00);\n areaStream.lineEnd();\n if (abs(deltaSum) > epsilon) lambda0 = -(lambda1 = 180);\n range[0] = lambda0, range[1] = lambda1;\n p0 = null;\n}\n\n// Finds the left-right distance between two longitudes.\n// This is almost the same as (lambda1 - lambda0 + 360°) % 360°, except that we want\n// the distance between ±180° to be 360°.\nfunction angle(lambda0, lambda1) {\n return (lambda1 -= lambda0) < 0 ? lambda1 + 360 : lambda1;\n}\n\nfunction rangeCompare(a, b) {\n return a[0] - b[0];\n}\n\nfunction rangeContains(range, x) {\n return range[0] <= range[1] ? range[0] <= x && x <= range[1] : x < range[0] || range[1] < x;\n}\n\nexport default function(feature) {\n var i, n, a, b, merged, deltaMax, delta;\n\n phi1 = lambda1 = -(lambda0 = phi0 = Infinity);\n ranges = [];\n stream(feature, boundsStream);\n\n // First, sort ranges by their minimum longitudes.\n if (n = ranges.length) {\n ranges.sort(rangeCompare);\n\n // Then, merge any ranges that overlap.\n for (i = 1, a = ranges[0], merged = [a]; i < n; ++i) {\n b = ranges[i];\n if (rangeContains(a, b[0]) || rangeContains(a, b[1])) {\n if (angle(a[0], b[1]) > angle(a[0], a[1])) a[1] = b[1];\n if (angle(b[0], a[1]) > angle(a[0], a[1])) a[0] = b[0];\n } else {\n merged.push(a = b);\n }\n }\n\n // Finally, find the largest gap between the merged ranges.\n // The final bounding box will be the inverse of this gap.\n for (deltaMax = -Infinity, n = merged.length - 1, i = 0, a = merged[n]; i <= n; a = b, ++i) {\n b = merged[i];\n if ((delta = angle(a[1], b[0])) > deltaMax) deltaMax = delta, lambda0 = b[0], lambda1 = a[1];\n }\n }\n\n ranges = range = null;\n\n return lambda0 === Infinity || phi0 === Infinity\n ? [[NaN, NaN], [NaN, NaN]]\n : [[lambda0, phi0], [lambda1, phi1]];\n}\n"],"names":["adder"],"mappings":";;AAUeA,EAAA;","x_google_ignoreList":[0]}
@@ -1,4 +1,39 @@
1
- import r from "./index.es247.js";
2
- import "./index.es193.js";
3
- r();
1
+ import A from "./index.es260.js";
2
+ import { tau as p, atan2 as I, asin as P, pi as z, sin as t, cos as i } from "./index.es250.js";
3
+ function R(r, n) {
4
+ return [r > z ? r - p : r < -z ? r + p : r, n];
5
+ }
6
+ R.invert = R;
7
+ function E(r, n, o) {
8
+ return (r %= p) ? n || o ? A(j(r), q(n, o)) : j(r) : n || o ? q(n, o) : R;
9
+ }
10
+ function g(r) {
11
+ return function(n, o) {
12
+ return n += r, [n > z ? n - p : n < -z ? n + p : n, o];
13
+ };
14
+ }
15
+ function j(r) {
16
+ var n = g(r);
17
+ return n.invert = g(-r), n;
18
+ }
19
+ function q(r, n) {
20
+ var o = i(r), x = t(r), y = i(n), k = t(n);
21
+ function w(u, c) {
22
+ var f = i(c), s = i(u) * f, e = t(u) * f, v = t(c), D = v * o + s * x;
23
+ return [
24
+ I(e * y - D * k, s * o - v * x),
25
+ P(D * y + e * k)
26
+ ];
27
+ }
28
+ return w.invert = function(u, c) {
29
+ var f = i(c), s = i(u) * f, e = t(u) * f, v = t(c), D = v * y - e * k;
30
+ return [
31
+ I(e * y + v * k, s * o + D * x),
32
+ P(D * o - s * x)
33
+ ];
34
+ }, w;
35
+ }
36
+ export {
37
+ E as rotateRadians
38
+ };
4
39
  //# sourceMappingURL=index.es194.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es194.js","sources":["../../../node_modules/d3-geo/src/bounds.js"],"sourcesContent":["import adder from \"./adder\";\nimport {areaStream, areaRingSum} from \"./area\";\nimport {cartesian, cartesianCross, cartesianNormalizeInPlace, spherical} from \"./cartesian\";\nimport {abs, degrees, epsilon, radians} from \"./math\";\nimport stream from \"./stream\";\n\nvar lambda0, phi0, lambda1, phi1, // bounds\n lambda2, // previous lambda-coordinate\n lambda00, phi00, // first point\n p0, // previous 3D point\n deltaSum = adder(),\n ranges,\n range;\n\nvar boundsStream = {\n point: boundsPoint,\n lineStart: boundsLineStart,\n lineEnd: boundsLineEnd,\n polygonStart: function() {\n boundsStream.point = boundsRingPoint;\n boundsStream.lineStart = boundsRingStart;\n boundsStream.lineEnd = boundsRingEnd;\n deltaSum.reset();\n areaStream.polygonStart();\n },\n polygonEnd: function() {\n areaStream.polygonEnd();\n boundsStream.point = boundsPoint;\n boundsStream.lineStart = boundsLineStart;\n boundsStream.lineEnd = boundsLineEnd;\n if (areaRingSum < 0) lambda0 = -(lambda1 = 180), phi0 = -(phi1 = 90);\n else if (deltaSum > epsilon) phi1 = 90;\n else if (deltaSum < -epsilon) phi0 = -90;\n range[0] = lambda0, range[1] = lambda1;\n }\n};\n\nfunction boundsPoint(lambda, phi) {\n ranges.push(range = [lambda0 = lambda, lambda1 = lambda]);\n if (phi < phi0) phi0 = phi;\n if (phi > phi1) phi1 = phi;\n}\n\nfunction linePoint(lambda, phi) {\n var p = cartesian([lambda * radians, phi * radians]);\n if (p0) {\n var normal = cartesianCross(p0, p),\n equatorial = [normal[1], -normal[0], 0],\n inflection = cartesianCross(equatorial, normal);\n cartesianNormalizeInPlace(inflection);\n inflection = spherical(inflection);\n var delta = lambda - lambda2,\n sign = delta > 0 ? 1 : -1,\n lambdai = inflection[0] * degrees * sign,\n phii,\n antimeridian = abs(delta) > 180;\n if (antimeridian ^ (sign * lambda2 < lambdai && lambdai < sign * lambda)) {\n phii = inflection[1] * degrees;\n if (phii > phi1) phi1 = phii;\n } else if (lambdai = (lambdai + 360) % 360 - 180, antimeridian ^ (sign * lambda2 < lambdai && lambdai < sign * lambda)) {\n phii = -inflection[1] * degrees;\n if (phii < phi0) phi0 = phii;\n } else {\n if (phi < phi0) phi0 = phi;\n if (phi > phi1) phi1 = phi;\n }\n if (antimeridian) {\n if (lambda < lambda2) {\n if (angle(lambda0, lambda) > angle(lambda0, lambda1)) lambda1 = lambda;\n } else {\n if (angle(lambda, lambda1) > angle(lambda0, lambda1)) lambda0 = lambda;\n }\n } else {\n if (lambda1 >= lambda0) {\n if (lambda < lambda0) lambda0 = lambda;\n if (lambda > lambda1) lambda1 = lambda;\n } else {\n if (lambda > lambda2) {\n if (angle(lambda0, lambda) > angle(lambda0, lambda1)) lambda1 = lambda;\n } else {\n if (angle(lambda, lambda1) > angle(lambda0, lambda1)) lambda0 = lambda;\n }\n }\n }\n } else {\n ranges.push(range = [lambda0 = lambda, lambda1 = lambda]);\n }\n if (phi < phi0) phi0 = phi;\n if (phi > phi1) phi1 = phi;\n p0 = p, lambda2 = lambda;\n}\n\nfunction boundsLineStart() {\n boundsStream.point = linePoint;\n}\n\nfunction boundsLineEnd() {\n range[0] = lambda0, range[1] = lambda1;\n boundsStream.point = boundsPoint;\n p0 = null;\n}\n\nfunction boundsRingPoint(lambda, phi) {\n if (p0) {\n var delta = lambda - lambda2;\n deltaSum.add(abs(delta) > 180 ? delta + (delta > 0 ? 360 : -360) : delta);\n } else {\n lambda00 = lambda, phi00 = phi;\n }\n areaStream.point(lambda, phi);\n linePoint(lambda, phi);\n}\n\nfunction boundsRingStart() {\n areaStream.lineStart();\n}\n\nfunction boundsRingEnd() {\n boundsRingPoint(lambda00, phi00);\n areaStream.lineEnd();\n if (abs(deltaSum) > epsilon) lambda0 = -(lambda1 = 180);\n range[0] = lambda0, range[1] = lambda1;\n p0 = null;\n}\n\n// Finds the left-right distance between two longitudes.\n// This is almost the same as (lambda1 - lambda0 + 360°) % 360°, except that we want\n// the distance between ±180° to be 360°.\nfunction angle(lambda0, lambda1) {\n return (lambda1 -= lambda0) < 0 ? lambda1 + 360 : lambda1;\n}\n\nfunction rangeCompare(a, b) {\n return a[0] - b[0];\n}\n\nfunction rangeContains(range, x) {\n return range[0] <= range[1] ? range[0] <= x && x <= range[1] : x < range[0] || range[1] < x;\n}\n\nexport default function(feature) {\n var i, n, a, b, merged, deltaMax, delta;\n\n phi1 = lambda1 = -(lambda0 = phi0 = Infinity);\n ranges = [];\n stream(feature, boundsStream);\n\n // First, sort ranges by their minimum longitudes.\n if (n = ranges.length) {\n ranges.sort(rangeCompare);\n\n // Then, merge any ranges that overlap.\n for (i = 1, a = ranges[0], merged = [a]; i < n; ++i) {\n b = ranges[i];\n if (rangeContains(a, b[0]) || rangeContains(a, b[1])) {\n if (angle(a[0], b[1]) > angle(a[0], a[1])) a[1] = b[1];\n if (angle(b[0], a[1]) > angle(a[0], a[1])) a[0] = b[0];\n } else {\n merged.push(a = b);\n }\n }\n\n // Finally, find the largest gap between the merged ranges.\n // The final bounding box will be the inverse of this gap.\n for (deltaMax = -Infinity, n = merged.length - 1, i = 0, a = merged[n]; i <= n; a = b, ++i) {\n b = merged[i];\n if ((delta = angle(a[1], b[0])) > deltaMax) deltaMax = delta, lambda0 = b[0], lambda1 = a[1];\n }\n }\n\n ranges = range = null;\n\n return lambda0 === Infinity || phi0 === Infinity\n ? [[NaN, NaN], [NaN, NaN]]\n : [[lambda0, phi0], [lambda1, phi1]];\n}\n"],"names":["adder"],"mappings":";;AAUeA,EAAA;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es194.js","sources":["../../../node_modules/d3-geo/src/rotation.js"],"sourcesContent":["import compose from \"./compose\";\nimport {asin, atan2, cos, degrees, pi, radians, sin, tau} from \"./math\";\n\nfunction rotationIdentity(lambda, phi) {\n return [lambda > pi ? lambda - tau : lambda < -pi ? lambda + tau : lambda, phi];\n}\n\nrotationIdentity.invert = rotationIdentity;\n\nexport function rotateRadians(deltaLambda, deltaPhi, deltaGamma) {\n return (deltaLambda %= tau) ? (deltaPhi || deltaGamma ? compose(rotationLambda(deltaLambda), rotationPhiGamma(deltaPhi, deltaGamma))\n : rotationLambda(deltaLambda))\n : (deltaPhi || deltaGamma ? rotationPhiGamma(deltaPhi, deltaGamma)\n : rotationIdentity);\n}\n\nfunction forwardRotationLambda(deltaLambda) {\n return function(lambda, phi) {\n return lambda += deltaLambda, [lambda > pi ? lambda - tau : lambda < -pi ? lambda + tau : lambda, phi];\n };\n}\n\nfunction rotationLambda(deltaLambda) {\n var rotation = forwardRotationLambda(deltaLambda);\n rotation.invert = forwardRotationLambda(-deltaLambda);\n return rotation;\n}\n\nfunction rotationPhiGamma(deltaPhi, deltaGamma) {\n var cosDeltaPhi = cos(deltaPhi),\n sinDeltaPhi = sin(deltaPhi),\n cosDeltaGamma = cos(deltaGamma),\n sinDeltaGamma = sin(deltaGamma);\n\n function rotation(lambda, phi) {\n var cosPhi = cos(phi),\n x = cos(lambda) * cosPhi,\n y = sin(lambda) * cosPhi,\n z = sin(phi),\n k = z * cosDeltaPhi + x * sinDeltaPhi;\n return [\n atan2(y * cosDeltaGamma - k * sinDeltaGamma, x * cosDeltaPhi - z * sinDeltaPhi),\n asin(k * cosDeltaGamma + y * sinDeltaGamma)\n ];\n }\n\n rotation.invert = function(lambda, phi) {\n var cosPhi = cos(phi),\n x = cos(lambda) * cosPhi,\n y = sin(lambda) * cosPhi,\n z = sin(phi),\n k = z * cosDeltaGamma - y * sinDeltaGamma;\n return [\n atan2(y * cosDeltaGamma + z * sinDeltaGamma, x * cosDeltaPhi + k * sinDeltaPhi),\n asin(k * cosDeltaPhi - x * sinDeltaPhi)\n ];\n };\n\n return rotation;\n}\n\nexport default function(rotate) {\n rotate = rotateRadians(rotate[0] * radians, rotate[1] * radians, rotate.length > 2 ? rotate[2] * radians : 0);\n\n function forward(coordinates) {\n coordinates = rotate(coordinates[0] * radians, coordinates[1] * radians);\n return coordinates[0] *= degrees, coordinates[1] *= degrees, coordinates;\n }\n\n forward.invert = function(coordinates) {\n coordinates = rotate.invert(coordinates[0] * radians, coordinates[1] * radians);\n return coordinates[0] *= degrees, coordinates[1] *= degrees, coordinates;\n };\n\n return forward;\n}\n"],"names":["rotationIdentity","lambda","phi","pi","tau","rotateRadians","deltaLambda","deltaPhi","deltaGamma","compose","rotationLambda","rotationPhiGamma","forwardRotationLambda","rotation","cosDeltaPhi","cos","sinDeltaPhi","sin","cosDeltaGamma","sinDeltaGamma","cosPhi","x","y","z","k","atan2","asin"],"mappings":";;AAGA,SAASA,EAAiBC,GAAQC,GAAK;AACrC,SAAO,CAACD,IAASE,IAAKF,IAASG,IAAMH,IAAS,CAACE,IAAKF,IAASG,IAAMH,GAAQC,CAAG;AAChF;AAEAF,EAAiB,SAASA;AAEnB,SAASK,EAAcC,GAAaC,GAAUC,GAAY;AAC/D,UAAQF,KAAeF,KAAQG,KAAYC,IAAaC,EAAQC,EAAeJ,CAAW,GAAGK,EAAiBJ,GAAUC,CAAU,CAAC,IAC/HE,EAAeJ,CAAW,IACzBC,KAAYC,IAAaG,EAAiBJ,GAAUC,CAAU,IAC/DR;AACN;AAEA,SAASY,EAAsBN,GAAa;AAC1C,SAAO,SAASL,GAAQC,GAAK;AAC3B,WAAOD,KAAUK,GAAa,CAACL,IAASE,IAAKF,IAASG,IAAMH,IAAS,CAACE,IAAKF,IAASG,IAAMH,GAAQC,CAAG;AAAA,EACvG;AACF;AAEA,SAASQ,EAAeJ,GAAa;AACnC,MAAIO,IAAWD,EAAsBN,CAAW;AAChD,SAAAO,EAAS,SAASD,EAAsB,CAACN,CAAW,GAC7CO;AACT;AAEA,SAASF,EAAiBJ,GAAUC,GAAY;AAC9C,MAAIM,IAAcC,EAAIR,CAAQ,GAC1BS,IAAcC,EAAIV,CAAQ,GAC1BW,IAAgBH,EAAIP,CAAU,GAC9BW,IAAgBF,EAAIT,CAAU;AAElC,WAASK,EAASZ,GAAQC,GAAK;AAC7B,QAAIkB,IAASL,EAAIb,CAAG,GAChBmB,IAAIN,EAAId,CAAM,IAAImB,GAClBE,IAAIL,EAAIhB,CAAM,IAAImB,GAClBG,IAAIN,EAAIf,CAAG,GACXsB,IAAID,IAAIT,IAAcO,IAAIL;AAC9B,WAAO;AAAA,MACLS,EAAMH,IAAIJ,IAAgBM,IAAIL,GAAeE,IAAIP,IAAcS,IAAIP,CAAW;AAAA,MAC9EU,EAAKF,IAAIN,IAAgBI,IAAIH,CAAa;AAAA,IAAA;AAAA,EAE9C;AAEA,SAAAN,EAAS,SAAS,SAASZ,GAAQC,GAAK;AACtC,QAAIkB,IAASL,EAAIb,CAAG,GAChBmB,IAAIN,EAAId,CAAM,IAAImB,GAClBE,IAAIL,EAAIhB,CAAM,IAAImB,GAClBG,IAAIN,EAAIf,CAAG,GACXsB,IAAID,IAAIL,IAAgBI,IAAIH;AAChC,WAAO;AAAA,MACLM,EAAMH,IAAIJ,IAAgBK,IAAIJ,GAAeE,IAAIP,IAAcU,IAAIR,CAAW;AAAA,MAC9EU,EAAKF,IAAIV,IAAcO,IAAIL,CAAW;AAAA,IAAA;AAAA,EAE1C,GAEOH;AACT;","x_google_ignoreList":[0]}